aboutsummaryrefslogtreecommitdiff
path: root/venv/lib/python3.8/site-packages/plotly/package_data
diff options
context:
space:
mode:
Diffstat (limited to 'venv/lib/python3.8/site-packages/plotly/package_data')
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/carshare.csv.gzbin0 -> 6215 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.csv.gzbin0 -> 1656 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.geojson.gzbin0 -> 31857 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/experiment.csv.gzbin0 -> 3154 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/gapminder.csv.gzbin0 -> 34016 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/iris.csv.gzbin0 -> 875 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/medals.csv.gzbin0 -> 110 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/stocks.csv.gzbin0 -> 5895 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/tips.csv.gzbin0 -> 1740 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/datasets/wind.csv.gzbin0 -> 424 bytes
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/plotly.min.js3879
-rw-r--r--venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js3906
12 files changed, 7785 insertions, 0 deletions
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/carshare.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/carshare.csv.gz
new file mode 100644
index 0000000..0586525
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/carshare.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.csv.gz
new file mode 100644
index 0000000..e97ee22
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.geojson.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.geojson.gz
new file mode 100644
index 0000000..3cb20e4
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/election.geojson.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/experiment.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/experiment.csv.gz
new file mode 100644
index 0000000..427e540
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/experiment.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/gapminder.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/gapminder.csv.gz
new file mode 100644
index 0000000..f673f5b
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/gapminder.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/iris.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/iris.csv.gz
new file mode 100644
index 0000000..9cb357e
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/iris.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/medals.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/medals.csv.gz
new file mode 100644
index 0000000..ae2e1dd
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/medals.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/stocks.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/stocks.csv.gz
new file mode 100644
index 0000000..4f178a4
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/stocks.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/tips.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/tips.csv.gz
new file mode 100644
index 0000000..91996d3
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/tips.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/datasets/wind.csv.gz b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/wind.csv.gz
new file mode 100644
index 0000000..53d0b2d
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/datasets/wind.csv.gz
Binary files differ
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/plotly.min.js b/venv/lib/python3.8/site-packages/plotly/package_data/plotly.min.js
new file mode 100644
index 0000000..56e81d4
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/plotly.min.js
@@ -0,0 +1,3879 @@
+/**
+* plotly.js v3.0.1
+* Copyright 2012-2025, Plotly, Inc.
+* All rights reserved.
+* Licensed under the MIT license
+*/
+(
+ function(root, factory) {
+ if (typeof module === "object" && module.exports) {
+ module.exports = factory();
+ } else {
+ root.moduleName = factory();
+ }
+} (typeof self !== "undefined" ? self : this, () => {
+"use strict";var Plotly=(()=>{var VQe=Object.create;var MS=Object.defineProperty,HQe=Object.defineProperties,GQe=Object.getOwnPropertyDescriptor,jQe=Object.getOwnPropertyDescriptors,WQe=Object.getOwnPropertyNames,XQ=Object.getOwnPropertySymbols,ZQe=Object.getPrototypeOf,KQ=Object.prototype.hasOwnProperty,XQe=Object.prototype.propertyIsEnumerable;var YQ=(e,t,r)=>t in e?MS(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,JQ=(e,t)=>{for(var r in t||(t={}))KQ.call(t,r)&&YQ(e,r,t[r]);if(XQ)for(var r of XQ(t))XQe.call(t,r)&&YQ(e,r,t[r]);return e},$Q=(e,t)=>HQe(e,jQe(t));var Ll=(e,t)=>()=>(e&&(t=e(e=0)),t);var ye=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),QQ=(e,t)=>{for(var r in t)MS(e,r,{get:t[r],enumerable:!0})},eee=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of WQe(t))!KQ.call(e,i)&&i!==r&&MS(e,i,{get:()=>t[i],enumerable:!(n=GQe(t,i))||n.enumerable});return e};var YQe=(e,t,r)=>(r=e!=null?VQe(ZQe(e)):{},eee(t||!e||!e.__esModule?MS(r,"default",{value:e,enumerable:!0}):r,e)),B1=e=>eee(MS({},"__esModule",{value:!0}),e);var e6=ye(tee=>{"use strict";tee.version="3.0.1"});var iee=ye((ree,t6)=>{(function(t,r,n){r[t]=r[t]||n(),typeof t6!="undefined"&&t6.exports&&(t6.exports=r[t])})("Promise",typeof window!="undefined"?window:ree,function(){"use strict";var t,r,n,i=Object.prototype.toString,a=typeof setImmediate!="undefined"?function(E){return setImmediate(E)}:setTimeout;try{Object.defineProperty({},"x",{}),t=function(E,k,A,L){return Object.defineProperty(E,k,{value:A,writable:!0,configurable:L!==!1})}}catch(p){t=function(k,A,L){return k[A]=L,k}}n=function(){var E,k,A;function L(_,C){this.fn=_,this.self=C,this.next=void 0}return{add:function(C,M){A=new L(C,M),k?k.next=A:E=A,k=A,A=void 0},drain:function(){var C=E;for(E=k=r=void 0;C;)C.fn.call(C.self),C=C.next}}}();function o(p,E){n.add(p,E),r||(r=a(n.drain))}function s(p){var E,k=typeof p;return p!=null&&(k=="object"||k=="function")&&(E=p.then),typeof E=="function"?E:!1}function l(){for(var p=0;p<this.chain.length;p++)u(this,this.state===1?this.chain[p].success:this.chain[p].failure,this.chain[p]);this.chain.length=0}function u(p,E,k){var A,L;try{E===!1?k.reject(p.msg):(E===!0?A=p.msg:A=E.call(void 0,p.msg),A===k.promise?k.reject(TypeError("Promise-chain cycle")):(L=s(A))?L.call(A,k.resolve,k.reject):k.resolve(A))}catch(_){k.reject(_)}}function c(p){var E,k=this;if(!k.triggered){k.triggered=!0,k.def&&(k=k.def);try{(E=s(p))?o(function(){var A=new d(k);try{E.call(p,function(){c.apply(A,arguments)},function(){f.apply(A,arguments)})}catch(L){f.call(A,L)}}):(k.msg=p,k.state=1,k.chain.length>0&&o(l,k))}catch(A){f.call(new d(k),A)}}}function f(p){var E=this;E.triggered||(E.triggered=!0,E.def&&(E=E.def),E.msg=p,E.state=2,E.chain.length>0&&o(l,E))}function h(p,E,k,A){for(var L=0;L<E.length;L++)(function(C){p.resolve(E[C]).then(function(g){k(C,g)},A)})(L)}function d(p){this.def=p,this.triggered=!1}function v(p){this.promise=p,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function x(p){if(typeof p!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var E=new v(this);this.then=function(A,L){var _={success:typeof A=="function"?A:!0,failure:typeof L=="function"?L:!1};return _.promise=new this.constructor(function(M,g){if(typeof M!="function"||typeof g!="function")throw TypeError("Not a function");_.resolve=M,_.reject=g}),E.chain.push(_),E.state!==0&&o(l,E),_.promise},this.catch=function(A){return this.then(void 0,A)};try{p.call(void 0,function(A){c.call(E,A)},function(A){f.call(E,A)})}catch(k){f.call(E,k)}}var b=t({},"constructor",x,!1);return x.prototype=b,t(b,"__NPO__",0,!1),t(x,"resolve",function(E){var k=this;return E&&typeof E=="object"&&E.__NPO__===1?E:new k(function(L,_){if(typeof L!="function"||typeof _!="function")throw TypeError("Not a function");L(E)})}),t(x,"reject",function(E){return new this(function(A,L){if(typeof A!="function"||typeof L!="function")throw TypeError("Not a function");L(E)})}),t(x,"all",function(E){var k=this;return i.call(E)!="[object Array]"?k.reject(TypeError("Not an array")):E.length===0?k.resolve([]):new k(function(L,_){if(typeof L!="function"||typeof _!="function")throw TypeError("Not a function");var C=E.length,M=Array(C),g=0;h(k,E,function(T,F){M[T]=F,++g===C&&L(M)},_)})}),t(x,"race",function(E){var k=this;return i.call(E)!="[object Array]"?k.reject(TypeError("Not an array")):new k(function(L,_){if(typeof L!="function"||typeof _!="function")throw TypeError("Not a function");h(k,E,function(M,g){L(g)},_)})}),x})});var xa=ye((qQt,r6)=>{(function(){var e={version:"3.8.2"},t=[].slice,r=function(Z){return t.call(Z)},n=self.document;function i(Z){return Z&&(Z.ownerDocument||Z.document||Z).documentElement}function a(Z){return Z&&(Z.ownerDocument&&Z.ownerDocument.defaultView||Z.document&&Z||Z.defaultView)}if(n)try{r(n.documentElement.childNodes)[0].nodeType}catch(Z){r=function(oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=oe[we];return Be}}if(Date.now||(Date.now=function(){return+new Date}),n)try{n.createElement("DIV").style.setProperty("opacity",0,"")}catch(Z){var o=this.Element.prototype,s=o.setAttribute,l=o.setAttributeNS,u=this.CSSStyleDeclaration.prototype,c=u.setProperty;o.setAttribute=function(oe,we){s.call(this,oe,we+"")},o.setAttributeNS=function(oe,we,Be){l.call(this,oe,we,Be+"")},u.setProperty=function(oe,we,Be){c.call(this,oe,we+"",Be)}}e.ascending=f;function f(Z,oe){return Z<oe?-1:Z>oe?1:Z>=oe?0:NaN}e.descending=function(Z,oe){return oe<Z?-1:oe>Z?1:oe>=Z?0:NaN},e.min=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we<Be;)if((We=Z[we])!=null&&We>=We){Ue=We;break}for(;++we<Be;)(We=Z[we])!=null&&Ue>We&&(Ue=We)}else{for(;++we<Be;)if((We=oe.call(Z,Z[we],we))!=null&&We>=We){Ue=We;break}for(;++we<Be;)(We=oe.call(Z,Z[we],we))!=null&&Ue>We&&(Ue=We)}return Ue},e.max=function(Z,oe){var we=-1,Be=Z.length,Ue,We;if(arguments.length===1){for(;++we<Be;)if((We=Z[we])!=null&&We>=We){Ue=We;break}for(;++we<Be;)(We=Z[we])!=null&&We>Ue&&(Ue=We)}else{for(;++we<Be;)if((We=oe.call(Z,Z[we],we))!=null&&We>=We){Ue=We;break}for(;++we<Be;)(We=oe.call(Z,Z[we],we))!=null&&We>Ue&&(Ue=We)}return Ue},e.extent=function(Z,oe){var we=-1,Be=Z.length,Ue,We,wt;if(arguments.length===1){for(;++we<Be;)if((We=Z[we])!=null&&We>=We){Ue=wt=We;break}for(;++we<Be;)(We=Z[we])!=null&&(Ue>We&&(Ue=We),wt<We&&(wt=We))}else{for(;++we<Be;)if((We=oe.call(Z,Z[we],we))!=null&&We>=We){Ue=wt=We;break}for(;++we<Be;)(We=oe.call(Z,Z[we],we))!=null&&(Ue>We&&(Ue=We),wt<We&&(wt=We))}return[Ue,wt]};function h(Z){return Z===null?NaN:+Z}function d(Z){return!isNaN(Z)}e.sum=function(Z,oe){var we=0,Be=Z.length,Ue,We=-1;if(arguments.length===1)for(;++We<Be;)d(Ue=+Z[We])&&(we+=Ue);else for(;++We<Be;)d(Ue=+oe.call(Z,Z[We],We))&&(we+=Ue);return we},e.mean=function(Z,oe){var we=0,Be=Z.length,Ue,We=-1,wt=Be;if(arguments.length===1)for(;++We<Be;)d(Ue=h(Z[We]))?we+=Ue:--wt;else for(;++We<Be;)d(Ue=h(oe.call(Z,Z[We],We)))?we+=Ue:--wt;if(wt)return we/wt},e.quantile=function(Z,oe){var we=(Z.length-1)*oe+1,Be=Math.floor(we),Ue=+Z[Be-1],We=we-Be;return We?Ue+We*(Z[Be]-Ue):Ue},e.median=function(Z,oe){var we=[],Be=Z.length,Ue,We=-1;if(arguments.length===1)for(;++We<Be;)d(Ue=h(Z[We]))&&we.push(Ue);else for(;++We<Be;)d(Ue=h(oe.call(Z,Z[We],We)))&&we.push(Ue);if(we.length)return e.quantile(we.sort(f),.5)},e.variance=function(Z,oe){var we=Z.length,Be=0,Ue,We,wt=0,tt=-1,zt=0;if(arguments.length===1)for(;++tt<we;)d(Ue=h(Z[tt]))&&(We=Ue-Be,Be+=We/++zt,wt+=We*(Ue-Be));else for(;++tt<we;)d(Ue=h(oe.call(Z,Z[tt],tt)))&&(We=Ue-Be,Be+=We/++zt,wt+=We*(Ue-Be));if(zt>1)return wt/(zt-1)},e.deviation=function(){var Z=e.variance.apply(this,arguments);return Z&&Math.sqrt(Z)};function v(Z){return{left:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be<Ue;){var We=Be+Ue>>>1;Z(oe[We],we)<0?Be=We+1:Ue=We}return Be},right:function(oe,we,Be,Ue){for(arguments.length<3&&(Be=0),arguments.length<4&&(Ue=oe.length);Be<Ue;){var We=Be+Ue>>>1;Z(oe[We],we)>0?Ue=We:Be=We+1}return Be}}}var x=v(f);e.bisectLeft=x.left,e.bisect=e.bisectRight=x.right,e.bisector=function(Z){return v(Z.length===1?function(oe,we){return f(Z(oe),we)}:Z)},e.shuffle=function(Z,oe,we){(Be=arguments.length)<3&&(we=Z.length,Be<2&&(oe=0));for(var Be=we-oe,Ue,We;Be;)We=Math.random()*Be--|0,Ue=Z[Be+oe],Z[Be+oe]=Z[We+oe],Z[We+oe]=Ue;return Z},e.permute=function(Z,oe){for(var we=oe.length,Be=new Array(we);we--;)Be[we]=Z[oe[we]];return Be},e.pairs=function(Z){for(var oe=0,we=Z.length-1,Be,Ue=Z[0],We=new Array(we<0?0:we);oe<we;)We[oe]=[Be=Ue,Ue=Z[++oe]];return We},e.transpose=function(Z){if(!(We=Z.length))return[];for(var oe=-1,we=e.min(Z,b),Be=new Array(we);++oe<we;)for(var Ue=-1,We,wt=Be[oe]=new Array(We);++Ue<We;)wt[Ue]=Z[Ue][oe];return Be};function b(Z){return Z.length}e.zip=function(){return e.transpose(arguments)},e.keys=function(Z){var oe=[];for(var we in Z)oe.push(we);return oe},e.values=function(Z){var oe=[];for(var we in Z)oe.push(Z[we]);return oe},e.entries=function(Z){var oe=[];for(var we in Z)oe.push({key:we,value:Z[we]});return oe},e.merge=function(Z){for(var oe=Z.length,we,Be=-1,Ue=0,We,wt;++Be<oe;)Ue+=Z[Be].length;for(We=new Array(Ue);--oe>=0;)for(wt=Z[oe],we=wt.length;--we>=0;)We[--Ue]=wt[we];return We};var p=Math.abs;e.range=function(Z,oe,we){if(arguments.length<3&&(we=1,arguments.length<2&&(oe=Z,Z=0)),(oe-Z)/we===1/0)throw new Error("infinite range");var Be=[],Ue=E(p(we)),We=-1,wt;if(Z*=Ue,oe*=Ue,we*=Ue,we<0)for(;(wt=Z+we*++We)>oe;)Be.push(wt/Ue);else for(;(wt=Z+we*++We)<oe;)Be.push(wt/Ue);return Be};function E(Z){for(var oe=1;Z*oe%1;)oe*=10;return oe}function k(Z,oe){for(var we in oe)Object.defineProperty(Z.prototype,we,{value:oe[we],enumerable:!1})}e.map=function(Z,oe){var we=new A;if(Z instanceof A)Z.forEach(function(tt,zt){we.set(tt,zt)});else if(Array.isArray(Z)){var Be=-1,Ue=Z.length,We;if(arguments.length===1)for(;++Be<Ue;)we.set(Be,Z[Be]);else for(;++Be<Ue;)we.set(oe.call(Z,We=Z[Be],Be),We)}else for(var wt in Z)we.set(wt,Z[wt]);return we};function A(){this._=Object.create(null)}var L="__proto__",_="\0";k(A,{has:g,get:function(Z){return this._[C(Z)]},set:function(Z,oe){return this._[C(Z)]=oe},remove:P,keys:T,values:function(){var Z=[];for(var oe in this._)Z.push(this._[oe]);return Z},entries:function(){var Z=[];for(var oe in this._)Z.push({key:M(oe),value:this._[oe]});return Z},size:F,empty:q,forEach:function(Z){for(var oe in this._)Z.call(this,M(oe),this._[oe])}});function C(Z){return(Z+="")===L||Z[0]===_?_+Z:Z}function M(Z){return(Z+="")[0]===_?Z.slice(1):Z}function g(Z){return C(Z)in this._}function P(Z){return(Z=C(Z))in this._&&delete this._[Z]}function T(){var Z=[];for(var oe in this._)Z.push(M(oe));return Z}function F(){var Z=0;for(var oe in this._)++Z;return Z}function q(){for(var Z in this._)return!1;return!0}e.nest=function(){var Z={},oe=[],we=[],Be,Ue;function We(tt,zt,or){if(or>=oe.length)return Ue?Ue.call(Z,zt):Be?zt.sort(Be):zt;for(var lr=-1,Dr=zt.length,Ir=oe[or++],oi,ui,qr,Kr=new A,ii;++lr<Dr;)(ii=Kr.get(oi=Ir(ui=zt[lr])))?ii.push(ui):Kr.set(oi,[ui]);return tt?(ui=tt(),qr=function(vi,ci){ui.set(vi,We(tt,ci,or))}):(ui={},qr=function(vi,ci){ui[vi]=We(tt,ci,or)}),Kr.forEach(qr),ui}function wt(tt,zt){if(zt>=oe.length)return tt;var or=[],lr=we[zt++];return tt.forEach(function(Dr,Ir){or.push({key:Dr,values:wt(Ir,zt)})}),lr?or.sort(function(Dr,Ir){return lr(Dr.key,Ir.key)}):or}return Z.map=function(tt,zt){return We(zt,tt,0)},Z.entries=function(tt){return wt(We(e.map,tt,0),0)},Z.key=function(tt){return oe.push(tt),Z},Z.sortKeys=function(tt){return we[oe.length-1]=tt,Z},Z.sortValues=function(tt){return Be=tt,Z},Z.rollup=function(tt){return Ue=tt,Z},Z},e.set=function(Z){var oe=new V;if(Z)for(var we=0,Be=Z.length;we<Be;++we)oe.add(Z[we]);return oe};function V(){this._=Object.create(null)}k(V,{has:g,add:function(Z){return this._[C(Z+="")]=!0,Z},remove:P,values:T,size:F,empty:q,forEach:function(Z){for(var oe in this._)Z.call(this,M(oe))}}),e.behavior={};function H(Z){return Z}e.rebind=function(Z,oe){for(var we=1,Be=arguments.length,Ue;++we<Be;)Z[Ue=arguments[we]]=X(Z,oe,oe[Ue]);return Z};function X(Z,oe,we){return function(){var Be=we.apply(oe,arguments);return Be===oe?Z:Be}}function G(Z,oe){if(oe in Z)return oe;oe=oe.charAt(0).toUpperCase()+oe.slice(1);for(var we=0,Be=N.length;we<Be;++we){var Ue=N[we]+oe;if(Ue in Z)return Ue}}var N=["webkit","ms","moz","Moz","o","O"];function W(){}e.dispatch=function(){for(var Z=new re,oe=-1,we=arguments.length;++oe<we;)Z[arguments[oe]]=ae(Z);return Z};function re(){}re.prototype.on=function(Z,oe){var we=Z.indexOf("."),Be="";if(we>=0&&(Be=Z.slice(we+1),Z=Z.slice(0,we)),Z)return arguments.length<2?this[Z].on(Be):this[Z].on(Be,oe);if(arguments.length===2){if(oe==null)for(Z in this)this.hasOwnProperty(Z)&&this[Z].on(Be,null);return this}};function ae(Z){var oe=[],we=new A;function Be(){for(var Ue=oe,We=-1,wt=Ue.length,tt;++We<wt;)(tt=Ue[We].on)&&tt.apply(this,arguments);return Z}return Be.on=function(Ue,We){var wt=we.get(Ue),tt;return arguments.length<2?wt&&wt.on:(wt&&(wt.on=null,oe=oe.slice(0,tt=oe.indexOf(wt)).concat(oe.slice(tt+1)),we.remove(Ue)),We&&oe.push(we.set(Ue,{on:We})),Z)},Be}e.event=null;function _e(){e.event.preventDefault()}function Me(){for(var Z=e.event,oe;oe=Z.sourceEvent;)Z=oe;return Z}function ke(Z){for(var oe=new re,we=0,Be=arguments.length;++we<Be;)oe[arguments[we]]=ae(oe);return oe.of=function(Ue,We){return function(wt){try{var tt=wt.sourceEvent=e.event;wt.target=Z,e.event=wt,oe[wt.type].apply(Ue,We)}finally{e.event=tt}}},oe}e.requote=function(Z){return Z.replace(ge,"\\$&")};var ge=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,ie={}.__proto__?function(Z,oe){Z.__proto__=oe}:function(Z,oe){for(var we in oe)Z[we]=oe[we]};function Te(Z){return ie(Z,Ce),Z}var Ee=function(Z,oe){return oe.querySelector(Z)},Ae=function(Z,oe){return oe.querySelectorAll(Z)},ze=function(Z,oe){var we=Z.matches||Z[G(Z,"matchesSelector")];return ze=function(Be,Ue){return we.call(Be,Ue)},ze(Z,oe)};typeof Sizzle=="function"&&(Ee=function(Z,oe){return Sizzle(Z,oe)[0]||null},Ae=Sizzle,ze=Sizzle.matchesSelector),e.selection=function(){return e.select(n.documentElement)};var Ce=e.selection.prototype=[];Ce.select=function(Z){var oe=[],we,Be,Ue,We;Z=me(Z);for(var wt=-1,tt=this.length;++wt<tt;){oe.push(we=[]),we.parentNode=(Ue=this[wt]).parentNode;for(var zt=-1,or=Ue.length;++zt<or;)(We=Ue[zt])?(we.push(Be=Z.call(We,We.__data__,zt,wt)),Be&&"__data__"in We&&(Be.__data__=We.__data__)):we.push(null)}return Te(oe)};function me(Z){return typeof Z=="function"?Z:function(){return Ee(Z,this)}}Ce.selectAll=function(Z){var oe=[],we,Be;Z=Re(Z);for(var Ue=-1,We=this.length;++Ue<We;)for(var wt=this[Ue],tt=-1,zt=wt.length;++tt<zt;)(Be=wt[tt])&&(oe.push(we=r(Z.call(Be,Be.__data__,tt,Ue))),we.parentNode=Be);return Te(oe)};function Re(Z){return typeof Z=="function"?Z:function(){return Ae(Z,this)}}var ce="http://www.w3.org/1999/xhtml",Ge={svg:"http://www.w3.org/2000/svg",xhtml:ce,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};e.ns={prefix:Ge,qualify:function(Z){var oe=Z.indexOf(":"),we=Z;return oe>=0&&(we=Z.slice(0,oe))!=="xmlns"&&(Z=Z.slice(oe+1)),Ge.hasOwnProperty(we)?{space:Ge[we],local:Z}:Z}},Ce.attr=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node();return Z=e.ns.qualify(Z),Z.local?we.getAttributeNS(Z.space,Z.local):we.getAttribute(Z)}for(oe in Z)this.each(nt(oe,Z[oe]));return this}return this.each(nt(Z,oe))};function nt(Z,oe){Z=e.ns.qualify(Z);function we(){this.removeAttribute(Z)}function Be(){this.removeAttributeNS(Z.space,Z.local)}function Ue(){this.setAttribute(Z,oe)}function We(){this.setAttributeNS(Z.space,Z.local,oe)}function wt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttribute(Z):this.setAttribute(Z,zt)}function tt(){var zt=oe.apply(this,arguments);zt==null?this.removeAttributeNS(Z.space,Z.local):this.setAttributeNS(Z.space,Z.local,zt)}return oe==null?Z.local?Be:we:typeof oe=="function"?Z.local?tt:wt:Z.local?We:Ue}function ct(Z){return Z.trim().replace(/\s+/g," ")}Ce.classed=function(Z,oe){if(arguments.length<2){if(typeof Z=="string"){var we=this.node(),Be=(Z=rt(Z)).length,Ue=-1;if(oe=we.classList){for(;++Ue<Be;)if(!oe.contains(Z[Ue]))return!1}else for(oe=we.getAttribute("class");++Ue<Be;)if(!qt(Z[Ue]).test(oe))return!1;return!0}for(oe in Z)this.each(ot(oe,Z[oe]));return this}return this.each(ot(Z,oe))};function qt(Z){return new RegExp("(?:^|\\s+)"+e.requote(Z)+"(?:\\s+|$)","g")}function rt(Z){return(Z+"").trim().split(/^|\s+/)}function ot(Z,oe){Z=rt(Z).map(Rt);var we=Z.length;function Be(){for(var We=-1;++We<we;)Z[We](this,oe)}function Ue(){for(var We=-1,wt=oe.apply(this,arguments);++We<we;)Z[We](this,wt)}return typeof oe=="function"?Ue:Be}function Rt(Z){var oe=qt(Z);return function(we,Be){if(Ue=we.classList)return Be?Ue.add(Z):Ue.remove(Z);var Ue=we.getAttribute("class")||"";Be?(oe.lastIndex=0,oe.test(Ue)||we.setAttribute("class",ct(Ue+" "+Z))):we.setAttribute("class",ct(Ue.replace(oe," ")))}}Ce.style=function(Z,oe,we){var Be=arguments.length;if(Be<3){if(typeof Z!="string"){Be<2&&(oe="");for(we in Z)this.each(kt(we,Z[we],oe));return this}if(Be<2){var Ue=this.node();return a(Ue).getComputedStyle(Ue,null).getPropertyValue(Z)}we=""}return this.each(kt(Z,oe,we))};function kt(Z,oe,we){function Be(){this.style.removeProperty(Z)}function Ue(){this.style.setProperty(Z,oe,we)}function We(){var wt=oe.apply(this,arguments);wt==null?this.style.removeProperty(Z):this.style.setProperty(Z,wt,we)}return oe==null?Be:typeof oe=="function"?We:Ue}Ce.property=function(Z,oe){if(arguments.length<2){if(typeof Z=="string")return this.node()[Z];for(oe in Z)this.each(Ct(oe,Z[oe]));return this}return this.each(Ct(Z,oe))};function Ct(Z,oe){function we(){delete this[Z]}function Be(){this[Z]=oe}function Ue(){var We=oe.apply(this,arguments);We==null?delete this[Z]:this[Z]=We}return oe==null?we:typeof oe=="function"?Ue:Be}Ce.text=function(Z){return arguments.length?this.each(typeof Z=="function"?function(){var oe=Z.apply(this,arguments);this.textContent=oe==null?"":oe}:Z==null?function(){this.textContent=""}:function(){this.textContent=Z}):this.node().textContent},Ce.html=function(Z){return arguments.length?this.each(typeof Z=="function"?function(){var oe=Z.apply(this,arguments);this.innerHTML=oe==null?"":oe}:Z==null?function(){this.innerHTML=""}:function(){this.innerHTML=Z}):this.node().innerHTML},Ce.append=function(Z){return Z=Yt(Z),this.select(function(){return this.appendChild(Z.apply(this,arguments))})};function Yt(Z){function oe(){var Be=this.ownerDocument,Ue=this.namespaceURI;return Ue===ce&&Be.documentElement.namespaceURI===ce?Be.createElement(Z):Be.createElementNS(Ue,Z)}function we(){return this.ownerDocument.createElementNS(Z.space,Z.local)}return typeof Z=="function"?Z:(Z=e.ns.qualify(Z)).local?we:oe}Ce.insert=function(Z,oe){return Z=Yt(Z),oe=me(oe),this.select(function(){return this.insertBefore(Z.apply(this,arguments),oe.apply(this,arguments)||null)})},Ce.remove=function(){return this.each(xr)};function xr(){var Z=this.parentNode;Z&&Z.removeChild(this)}Ce.data=function(Z,oe){var we=-1,Be=this.length,Ue,We;if(!arguments.length){for(Z=new Array(Be=(Ue=this[0]).length);++we<Be;)(We=Ue[we])&&(Z[we]=We.__data__);return Z}function wt(lr,Dr){var Ir,oi=lr.length,ui=Dr.length,qr=Math.min(oi,ui),Kr=new Array(ui),ii=new Array(ui),vi=new Array(oi),ci,Jr;if(oe){var un=new A,dn=new Array(oi),En;for(Ir=-1;++Ir<oi;)(ci=lr[Ir])&&(un.has(En=oe.call(ci,ci.__data__,Ir))?vi[Ir]=ci:un.set(En,ci),dn[Ir]=En);for(Ir=-1;++Ir<ui;)(ci=un.get(En=oe.call(Dr,Jr=Dr[Ir],Ir)))?ci!==!0&&(Kr[Ir]=ci,ci.__data__=Jr):ii[Ir]=er(Jr),un.set(En,!0);for(Ir=-1;++Ir<oi;)Ir in dn&&un.get(dn[Ir])!==!0&&(vi[Ir]=lr[Ir])}else{for(Ir=-1;++Ir<qr;)ci=lr[Ir],Jr=Dr[Ir],ci?(ci.__data__=Jr,Kr[Ir]=ci):ii[Ir]=er(Jr);for(;Ir<ui;++Ir)ii[Ir]=er(Dr[Ir]);for(;Ir<oi;++Ir)vi[Ir]=lr[Ir]}ii.update=Kr,ii.parentNode=Kr.parentNode=vi.parentNode=lr.parentNode,tt.push(ii),zt.push(Kr),or.push(vi)}var tt=Lt([]),zt=Te([]),or=Te([]);if(typeof Z=="function")for(;++we<Be;)wt(Ue=this[we],Z.call(Ue,Ue.parentNode.__data__,we));else for(;++we<Be;)wt(Ue=this[we],Z);return zt.enter=function(){return tt},zt.exit=function(){return or},zt};function er(Z){return{__data__:Z}}Ce.datum=function(Z){return arguments.length?this.property("__data__",Z):this.property("__data__")},Ce.filter=function(Z){var oe=[],we,Be,Ue;typeof Z!="function"&&(Z=Ke(Z));for(var We=0,wt=this.length;We<wt;We++){oe.push(we=[]),we.parentNode=(Be=this[We]).parentNode;for(var tt=0,zt=Be.length;tt<zt;tt++)(Ue=Be[tt])&&Z.call(Ue,Ue.__data__,tt,We)&&we.push(Ue)}return Te(oe)};function Ke(Z){return function(){return ze(this,Z)}}Ce.order=function(){for(var Z=-1,oe=this.length;++Z<oe;)for(var we=this[Z],Be=we.length-1,Ue=we[Be],We;--Be>=0;)(We=we[Be])&&(Ue&&Ue!==We.nextSibling&&Ue.parentNode.insertBefore(We,Ue),Ue=We);return this},Ce.sort=function(Z){Z=xt.apply(this,arguments);for(var oe=-1,we=this.length;++oe<we;)this[oe].sort(Z);return this.order()};function xt(Z){return arguments.length||(Z=f),function(oe,we){return oe&&we?Z(oe.__data__,we.__data__):!oe-!we}}Ce.each=function(Z){return bt(this,function(oe,we,Be){Z.call(oe,oe.__data__,we,Be)})};function bt(Z,oe){for(var we=0,Be=Z.length;we<Be;we++)for(var Ue=Z[we],We=0,wt=Ue.length,tt;We<wt;We++)(tt=Ue[We])&&oe(tt,We,we);return Z}Ce.call=function(Z){var oe=r(arguments);return Z.apply(oe[0]=this,oe),this},Ce.empty=function(){return!this.node()},Ce.node=function(){for(var Z=0,oe=this.length;Z<oe;Z++)for(var we=this[Z],Be=0,Ue=we.length;Be<Ue;Be++){var We=we[Be];if(We)return We}return null},Ce.size=function(){var Z=0;return bt(this,function(){++Z}),Z};function Lt(Z){return ie(Z,St),Z}var St=[];e.selection.enter=Lt,e.selection.enter.prototype=St,St.append=Ce.append,St.empty=Ce.empty,St.node=Ce.node,St.call=Ce.call,St.size=Ce.size,St.select=function(Z){for(var oe=[],we,Be,Ue,We,wt,tt=-1,zt=this.length;++tt<zt;){Ue=(We=this[tt]).update,oe.push(we=[]),we.parentNode=We.parentNode;for(var or=-1,lr=We.length;++or<lr;)(wt=We[or])?(we.push(Ue[or]=Be=Z.call(We.parentNode,wt.__data__,or,tt)),Be.__data__=wt.__data__):we.push(null)}return Te(oe)},St.insert=function(Z,oe){return arguments.length<2&&(oe=Et(this)),Ce.insert.call(this,Z,oe)};function Et(Z){var oe,we;return function(Be,Ue,We){var wt=Z[We].update,tt=wt.length,zt;for(We!=we&&(we=We,oe=0),Ue>=oe&&(oe=Ue+1);!(zt=wt[oe])&&++oe<tt;);return zt}}e.select=function(Z){var oe;return typeof Z=="string"?(oe=[Ee(Z,n)],oe.parentNode=n.documentElement):(oe=[Z],oe.parentNode=i(Z)),Te([oe])},e.selectAll=function(Z){var oe;return typeof Z=="string"?(oe=r(Ae(Z,n)),oe.parentNode=n.documentElement):(oe=r(Z),oe.parentNode=null),Te([oe])},Ce.on=function(Z,oe,we){var Be=arguments.length;if(Be<3){if(typeof Z!="string"){Be<2&&(oe=!1);for(we in Z)this.each(dt(we,Z[we],oe));return this}if(Be<2)return(Be=this.node()["__on"+Z])&&Be._;we=!1}return this.each(dt(Z,oe,we))};function dt(Z,oe,we){var Be="__on"+Z,Ue=Z.indexOf("."),We=$t;Ue>0&&(Z=Z.slice(0,Ue));var wt=Ht.get(Z);wt&&(Z=wt,We=fr);function tt(){var lr=this[Be];lr&&(this.removeEventListener(Z,lr,lr.$),delete this[Be])}function zt(){var lr=We(oe,r(arguments));tt.call(this),this.addEventListener(Z,this[Be]=lr,lr.$=we),lr._=oe}function or(){var lr=new RegExp("^__on([^.]+)"+e.requote(Z)+"$"),Dr;for(var Ir in this)if(Dr=Ir.match(lr)){var oi=this[Ir];this.removeEventListener(Dr[1],oi,oi.$),delete this[Ir]}}return Ue?oe?zt:tt:oe?W:or}var Ht=e.map({mouseenter:"mouseover",mouseleave:"mouseout"});n&&Ht.forEach(function(Z){"on"+Z in n&&Ht.remove(Z)});function $t(Z,oe){return function(we){var Be=e.event;e.event=we,oe[0]=this.__data__;try{Z.apply(this,oe)}finally{e.event=Be}}}function fr(Z,oe){var we=$t(Z,oe);return function(Be){var Ue=this,We=Be.relatedTarget;(!We||We!==Ue&&!(We.compareDocumentPosition(Ue)&8))&&we.call(Ue,Be)}}var _r,Br=0;function Or(Z){var oe=".dragsuppress-"+ ++Br,we="click"+oe,Be=e.select(a(Z)).on("touchmove"+oe,_e).on("dragstart"+oe,_e).on("selectstart"+oe,_e);if(_r==null&&(_r="onselectstart"in Z?!1:G(Z.style,"userSelect")),_r){var Ue=i(Z).style,We=Ue[_r];Ue[_r]="none"}return function(wt){if(Be.on(oe,null),_r&&(Ue[_r]=We),wt){var tt=function(){Be.on(we,null)};Be.on(we,function(){_e(),tt()},!0),setTimeout(tt,0)}}}e.mouse=function(Z){return ut(Z,Me())};var Nr=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function ut(Z,oe){oe.changedTouches&&(oe=oe.changedTouches[0]);var we=Z.ownerSVGElement||Z;if(we.createSVGPoint){var Be=we.createSVGPoint();if(Nr<0){var Ue=a(Z);if(Ue.scrollX||Ue.scrollY){we=e.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var We=we[0][0].getScreenCTM();Nr=!(We.f||We.e),we.remove()}}return Nr?(Be.x=oe.pageX,Be.y=oe.pageY):(Be.x=oe.clientX,Be.y=oe.clientY),Be=Be.matrixTransform(Z.getScreenCTM().inverse()),[Be.x,Be.y]}var wt=Z.getBoundingClientRect();return[oe.clientX-wt.left-Z.clientLeft,oe.clientY-wt.top-Z.clientTop]}e.touch=function(Z,oe,we){if(arguments.length<3&&(we=oe,oe=Me().changedTouches),oe){for(var Be=0,Ue=oe.length,We;Be<Ue;++Be)if((We=oe[Be]).identifier===we)return ut(Z,We)}},e.behavior.drag=function(){var Z=ke(Ue,"drag","dragstart","dragend"),oe=null,we=We(W,e.mouse,a,"mousemove","mouseup"),Be=We(Ne,e.touch,H,"touchmove","touchend");function Ue(){this.on("mousedown.drag",we).on("touchstart.drag",Be)}function We(wt,tt,zt,or,lr){return function(){var Dr=this,Ir=e.event.target.correspondingElement||e.event.target,oi=Dr.parentNode,ui=Z.of(Dr,arguments),qr=0,Kr=wt(),ii=".drag"+(Kr==null?"":"-"+Kr),vi,ci=e.select(zt(Ir)).on(or+ii,dn).on(lr+ii,En),Jr=Or(Ir),un=tt(oi,Kr);oe?(vi=oe.apply(Dr,arguments),vi=[vi.x-un[0],vi.y-un[1]]):vi=[0,0],ui({type:"dragstart"});function dn(){var Nn=tt(oi,Kr),ga,ya;Nn&&(ga=Nn[0]-un[0],ya=Nn[1]-un[1],qr|=ga|ya,un=Nn,ui({type:"drag",x:Nn[0]+vi[0],y:Nn[1]+vi[1],dx:ga,dy:ya}))}function En(){tt(oi,Kr)&&(ci.on(or+ii,null).on(lr+ii,null),Jr(qr),ui({type:"dragend"}))}}}return Ue.origin=function(wt){return arguments.length?(oe=wt,Ue):oe},e.rebind(Ue,Z,"on")};function Ne(){return e.event.changedTouches[0].identifier}e.touches=function(Z,oe){return arguments.length<2&&(oe=Me().touches),oe?r(oe).map(function(we){var Be=ut(Z,we);return Be.identifier=we.identifier,Be}):[]};var Ye=1e-6,Ve=Ye*Ye,Xe=Math.PI,ht=2*Xe,Le=ht-Ye,xe=Xe/2,Se=Xe/180,lt=180/Xe;function Gt(Z){return Z>0?1:Z<0?-1:0}function Vt(Z,oe,we){return(oe[0]-Z[0])*(we[1]-Z[1])-(oe[1]-Z[1])*(we[0]-Z[0])}function ar(Z){return Z>1?0:Z<-1?Xe:Math.acos(Z)}function Qr(Z){return Z>1?xe:Z<-1?-xe:Math.asin(Z)}function ai(Z){return((Z=Math.exp(Z))-1/Z)/2}function jr(Z){return((Z=Math.exp(Z))+1/Z)/2}function ri(Z){return((Z=Math.exp(2*Z))-1)/(Z+1)}function bi(Z){return(Z=Math.sin(Z/2))*Z}var nn=Math.SQRT2,Wi=2,Ni=4;e.interpolateZoom=function(Z,oe){var we=Z[0],Be=Z[1],Ue=Z[2],We=oe[0],wt=oe[1],tt=oe[2],zt=We-we,or=wt-Be,lr=zt*zt+or*or,Dr,Ir;if(lr<Ve)Ir=Math.log(tt/Ue)/nn,Dr=function(vi){return[we+vi*zt,Be+vi*or,Ue*Math.exp(nn*vi*Ir)]};else{var oi=Math.sqrt(lr),ui=(tt*tt-Ue*Ue+Ni*lr)/(2*Ue*Wi*oi),qr=(tt*tt-Ue*Ue-Ni*lr)/(2*tt*Wi*oi),Kr=Math.log(Math.sqrt(ui*ui+1)-ui),ii=Math.log(Math.sqrt(qr*qr+1)-qr);Ir=(ii-Kr)/nn,Dr=function(vi){var ci=vi*Ir,Jr=jr(Kr),un=Ue/(Wi*oi)*(Jr*ri(nn*ci+Kr)-ai(Kr));return[we+un*zt,Be+un*or,Ue*Jr/jr(nn*ci+Kr)]}}return Dr.duration=Ir*1e3,Dr},e.behavior.zoom=function(){var Z={x:0,y:0,k:1},oe,we,Be,Ue=[960,500],We=_n,wt=250,tt=0,zt="mousedown.zoom",or="mousemove.zoom",lr="mouseup.zoom",Dr,Ir="touchstart.zoom",oi,ui=ke(ci,"zoomstart","zoom","zoomend"),qr,Kr,ii,vi;zn||(zn="onwheel"in n?($i=function(){return-e.event.deltaY*(e.event.deltaMode?120:1)},"wheel"):"onmousewheel"in n?($i=function(){return e.event.wheelDelta},"mousewheel"):($i=function(){return-e.event.detail},"MozMousePixelScroll"));function ci(pn){pn.on(zt,io).on(zn+".zoom",_s).on("dblclick.zoom",Ns).on(Ir,Ss)}ci.event=function(pn){pn.each(function(){var za=ui.of(this,arguments),Lo=Z;Ro?e.select(this).transition().each("start.zoom",function(){Z=this.__chart__||{x:0,y:0,k:1},ya(za)}).tween("zoom:zoom",function(){var Fo=Ue[0],js=Ue[1],xl=we?we[0]:Fo/2,fu=we?we[1]:js/2,dl=e.interpolateZoom([(xl-Z.x)/Z.k,(fu-Z.y)/Z.k,Fo/Z.k],[(xl-Lo.x)/Lo.k,(fu-Lo.y)/Lo.k,Fo/Lo.k]);return function(xc){var At=dl(xc),Er=Fo/At[2];this.__chart__=Z={x:xl-At[0]*Er,y:fu-At[1]*Er,k:Er},so(za)}}).each("interrupt.zoom",function(){wa(za)}).each("end.zoom",function(){wa(za)}):(this.__chart__=Z,ya(za),so(za),wa(za))})},ci.translate=function(pn){return arguments.length?(Z={x:+pn[0],y:+pn[1],k:Z.k},ga(),ci):[Z.x,Z.y]},ci.scale=function(pn){return arguments.length?(Z={x:Z.x,y:Z.y,k:null},dn(+pn),ga(),ci):Z.k},ci.scaleExtent=function(pn){return arguments.length?(We=pn==null?_n:[+pn[0],+pn[1]],ci):We},ci.center=function(pn){return arguments.length?(Be=pn&&[+pn[0],+pn[1]],ci):Be},ci.size=function(pn){return arguments.length?(Ue=pn&&[+pn[0],+pn[1]],ci):Ue},ci.duration=function(pn){return arguments.length?(wt=+pn,ci):wt},ci.x=function(pn){return arguments.length?(Kr=pn,qr=pn.copy(),Z={x:0,y:0,k:1},ci):Kr},ci.y=function(pn){return arguments.length?(vi=pn,ii=pn.copy(),Z={x:0,y:0,k:1},ci):vi};function Jr(pn){return[(pn[0]-Z.x)/Z.k,(pn[1]-Z.y)/Z.k]}function un(pn){return[pn[0]*Z.k+Z.x,pn[1]*Z.k+Z.y]}function dn(pn){Z.k=Math.max(We[0],Math.min(We[1],pn))}function En(pn,za){za=un(za),Z.x+=pn[0]-za[0],Z.y+=pn[1]-za[1]}function Nn(pn,za,Lo,Fo){pn.__chart__={x:Z.x,y:Z.y,k:Z.k},dn(Math.pow(2,Fo)),En(we=za,Lo),pn=e.select(pn),wt>0&&(pn=pn.transition().duration(wt)),pn.call(ci.event)}function ga(){Kr&&Kr.domain(qr.range().map(function(pn){return(pn-Z.x)/Z.k}).map(qr.invert)),vi&&vi.domain(ii.range().map(function(pn){return(pn-Z.y)/Z.k}).map(ii.invert))}function ya(pn){tt++||pn({type:"zoomstart"})}function so(pn){ga(),pn({type:"zoom",scale:Z.k,translate:[Z.x,Z.y]})}function wa(pn){--tt||(pn({type:"zoomend"}),we=null)}function io(){var pn=this,za=ui.of(pn,arguments),Lo=0,Fo=e.select(a(pn)).on(or,fu).on(lr,dl),js=Jr(e.mouse(pn)),xl=Or(pn);ea.call(pn),ya(za);function fu(){Lo=1,En(e.mouse(pn),js),so(za)}function dl(){Fo.on(or,null).on(lr,null),xl(Lo),wa(za)}}function Ss(){var pn=this,za=ui.of(pn,arguments),Lo={},Fo=0,js,xl=".zoom-"+e.event.changedTouches[0].identifier,fu="touchmove"+xl,dl="touchend"+xl,xc=[],At=e.select(pn),Er=Or(pn);wi(),ya(za),At.on(zt,null).on(Ir,wi);function Wr(){var Bi=e.touches(pn);return js=Z.k,Bi.forEach(function(cn){cn.identifier in Lo&&(Lo[cn.identifier]=Jr(cn))}),Bi}function wi(){var Bi=e.event.target;e.select(Bi).on(fu,Ui).on(dl,Oi),xc.push(Bi);for(var cn=e.event.changedTouches,On=0,Bn=cn.length;On<Bn;++On)Lo[cn[On].identifier]=null;var yn=Wr(),to=Date.now();if(yn.length===1){if(to-oi<500){var Rn=yn[0];Nn(pn,Rn,Lo[Rn.identifier],Math.floor(Math.log(Z.k)/Math.LN2)+1),_e()}oi=to}else if(yn.length>1){var Rn=yn[0],Dn=yn[1],fn=Rn[0]-Dn[0],Ai=Rn[1]-Dn[1];Fo=fn*fn+Ai*Ai}}function Ui(){var Bi=e.touches(pn),cn,On,Bn,yn;ea.call(pn);for(var to=0,Rn=Bi.length;to<Rn;++to,yn=null)if(Bn=Bi[to],yn=Lo[Bn.identifier]){if(On)break;cn=Bn,On=yn}if(yn){var Dn=(Dn=Bn[0]-cn[0])*Dn+(Dn=Bn[1]-cn[1])*Dn,fn=Fo&&Math.sqrt(Dn/Fo);cn=[(cn[0]+Bn[0])/2,(cn[1]+Bn[1])/2],On=[(On[0]+yn[0])/2,(On[1]+yn[1])/2],dn(fn*js)}oi=null,En(cn,On),so(za)}function Oi(){if(e.event.touches.length){for(var Bi=e.event.changedTouches,cn=0,On=Bi.length;cn<On;++cn)delete Lo[Bi[cn].identifier];for(var Bn in Lo)return void Wr()}e.selectAll(xc).on(xl,null),At.on(zt,io).on(Ir,Ss),Er(),wa(za)}}function _s(){var pn=ui.of(this,arguments);Dr?clearTimeout(Dr):(ea.call(this),oe=Jr(we=Be||e.mouse(this)),ya(pn)),Dr=setTimeout(function(){Dr=null,wa(pn)},50),_e(),dn(Math.pow(2,$i()*.002)*Z.k),En(we,oe),so(pn)}function Ns(){var pn=e.mouse(this),za=Math.log(Z.k)/Math.LN2;Nn(this,pn,Jr(pn),e.event.shiftKey?Math.ceil(za)-1:Math.floor(za)+1)}return e.rebind(ci,ui,"on")};var _n=[0,1/0],$i,zn;e.color=Wn;function Wn(){}Wn.prototype.toString=function(){return this.rgb()+""},e.hsl=It;function It(Z,oe,we){return this instanceof It?(this.h=+Z,this.s=+oe,void(this.l=+we)):arguments.length<2?Z instanceof It?new It(Z.h,Z.s,Z.l):Ha(""+Z,oo,It):new It(Z,oe,we)}var ft=It.prototype=new Wn;ft.brighter=function(Z){return Z=Math.pow(.7,arguments.length?Z:1),new It(this.h,this.s,this.l/Z)},ft.darker=function(Z){return Z=Math.pow(.7,arguments.length?Z:1),new It(this.h,this.s,Z*this.l)},ft.rgb=function(){return jt(this.h,this.s,this.l)};function jt(Z,oe,we){var Be,Ue;Z=isNaN(Z)?0:(Z%=360)<0?Z+360:Z,oe=isNaN(oe)||oe<0?0:oe>1?1:oe,we=we<0?0:we>1?1:we,Ue=we<=.5?we*(1+oe):we+oe-we*oe,Be=2*we-Ue;function We(tt){return tt>360?tt-=360:tt<0&&(tt+=360),tt<60?Be+(Ue-Be)*tt/60:tt<180?Ue:tt<240?Be+(Ue-Be)*(240-tt)/60:Be}function wt(tt){return Math.round(We(tt)*255)}return new Fa(wt(Z+120),wt(Z),wt(Z-120))}e.hcl=Zt;function Zt(Z,oe,we){return this instanceof Zt?(this.h=+Z,this.c=+oe,void(this.l=+we)):arguments.length<2?Z instanceof Zt?new Zt(Z.h,Z.c,Z.l):Z instanceof Zr?Ki(Z.l,Z.a,Z.b):Ki((Z=xn((Z=e.rgb(Z)).r,Z.g,Z.b)).l,Z.a,Z.b):new Zt(Z,oe,we)}var yr=Zt.prototype=new Wn;yr.brighter=function(Z){return new Zt(this.h,this.c,Math.min(100,this.l+Vr*(arguments.length?Z:1)))},yr.darker=function(Z){return new Zt(this.h,this.c,Math.max(0,this.l-Vr*(arguments.length?Z:1)))},yr.rgb=function(){return Fr(this.h,this.c,this.l).rgb()};function Fr(Z,oe,we){return isNaN(Z)&&(Z=0),isNaN(oe)&&(oe=0),new Zr(we,Math.cos(Z*=Se)*oe,Math.sin(Z)*oe)}e.lab=Zr;function Zr(Z,oe,we){return this instanceof Zr?(this.l=+Z,this.a=+oe,void(this.b=+we)):arguments.length<2?Z instanceof Zr?new Zr(Z.l,Z.a,Z.b):Z instanceof Zt?Fr(Z.h,Z.c,Z.l):xn((Z=Fa(Z)).r,Z.g,Z.b):new Zr(Z,oe,we)}var Vr=18,gi=.95047,Si=1,Mi=1.08883,Pi=Zr.prototype=new Wn;Pi.brighter=function(Z){return new Zr(Math.min(100,this.l+Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.darker=function(Z){return new Zr(Math.max(0,this.l-Vr*(arguments.length?Z:1)),this.a,this.b)},Pi.rgb=function(){return Gi(this.l,this.a,this.b)};function Gi(Z,oe,we){var Be=(Z+16)/116,Ue=Be+oe/500,We=Be-we/200;return Ue=ka(Ue)*gi,Be=ka(Be)*Si,We=ka(We)*Mi,new Fa(la(3.2404542*Ue-1.5371385*Be-.4985314*We),la(-.969266*Ue+1.8760108*Be+.041556*We),la(.0556434*Ue-.2040259*Be+1.0572252*We))}function Ki(Z,oe,we){return Z>0?new Zt(Math.atan2(we,oe)*lt,Math.sqrt(oe*oe+we*we),Z):new Zt(NaN,NaN,Z)}function ka(Z){return Z>.206893034?Z*Z*Z:(Z-4/29)/7.787037}function jn(Z){return Z>.008856?Math.pow(Z,1/3):7.787037*Z+4/29}function la(Z){return Math.round(255*(Z<=.00304?12.92*Z:1.055*Math.pow(Z,1/2.4)-.055))}e.rgb=Fa;function Fa(Z,oe,we){return this instanceof Fa?(this.r=~~Z,this.g=~~oe,void(this.b=~~we)):arguments.length<2?Z instanceof Fa?new Fa(Z.r,Z.g,Z.b):Ha(""+Z,Fa,jt):new Fa(Z,oe,we)}function Ra(Z){return new Fa(Z>>16,Z>>8&255,Z&255)}function jo(Z){return Ra(Z)+""}var oa=Fa.prototype=new Wn;oa.brighter=function(Z){Z=Math.pow(.7,arguments.length?Z:1);var oe=this.r,we=this.g,Be=this.b,Ue=30;return!oe&&!we&&!Be?new Fa(Ue,Ue,Ue):(oe&&oe<Ue&&(oe=Ue),we&&we<Ue&&(we=Ue),Be&&Be<Ue&&(Be=Ue),new Fa(Math.min(255,oe/Z),Math.min(255,we/Z),Math.min(255,Be/Z)))},oa.darker=function(Z){return Z=Math.pow(.7,arguments.length?Z:1),new Fa(Z*this.r,Z*this.g,Z*this.b)},oa.hsl=function(){return oo(this.r,this.g,this.b)},oa.toString=function(){return"#"+Sn(this.r)+Sn(this.g)+Sn(this.b)};function Sn(Z){return Z<16?"0"+Math.max(0,Z).toString(16):Math.min(255,Z).toString(16)}function Ha(Z,oe,we){var Be=0,Ue=0,We=0,wt,tt,zt;if(wt=/([a-z]+)\((.*)\)/.exec(Z=Z.toLowerCase()),wt)switch(tt=wt[2].split(","),wt[1]){case"hsl":return we(parseFloat(tt[0]),parseFloat(tt[1])/100,parseFloat(tt[2])/100);case"rgb":return oe(br(tt[0]),br(tt[1]),br(tt[2]))}return(zt=Hr.get(Z))?oe(zt.r,zt.g,zt.b):(Z!=null&&Z.charAt(0)==="#"&&!isNaN(zt=parseInt(Z.slice(1),16))&&(Z.length===4?(Be=(zt&3840)>>4,Be=Be>>4|Be,Ue=zt&240,Ue=Ue>>4|Ue,We=zt&15,We=We<<4|We):Z.length===7&&(Be=(zt&16711680)>>16,Ue=(zt&65280)>>8,We=zt&255)),oe(Be,Ue,We))}function oo(Z,oe,we){var Be=Math.min(Z/=255,oe/=255,we/=255),Ue=Math.max(Z,oe,we),We=Ue-Be,wt,tt,zt=(Ue+Be)/2;return We?(tt=zt<.5?We/(Ue+Be):We/(2-Ue-Be),Z==Ue?wt=(oe-we)/We+(oe<we?6:0):oe==Ue?wt=(we-Z)/We+2:wt=(Z-oe)/We+4,wt*=60):(wt=NaN,tt=zt>0&&zt<1?0:wt),new It(wt,tt,zt)}function xn(Z,oe,we){Z=_t(Z),oe=_t(oe),we=_t(we);var Be=jn((.4124564*Z+.3575761*oe+.1804375*we)/gi),Ue=jn((.2126729*Z+.7151522*oe+.072175*we)/Si),We=jn((.0193339*Z+.119192*oe+.9503041*we)/Mi);return Zr(116*Ue-16,500*(Be-Ue),200*(Ue-We))}function _t(Z){return(Z/=255)<=.04045?Z/12.92:Math.pow((Z+.055)/1.055,2.4)}function br(Z){var oe=parseFloat(Z);return Z.charAt(Z.length-1)==="%"?Math.round(oe*2.55):oe}var Hr=e.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});Hr.forEach(function(Z,oe){Hr.set(Z,Ra(oe))});function ti(Z){return typeof Z=="function"?Z:function(){return Z}}e.functor=ti,e.xhr=zi(H);function zi(Z){return function(oe,we,Be){return arguments.length===2&&typeof we=="function"&&(Be=we,we=null),Yi(oe,we,Z,Be)}}function Yi(Z,oe,we,Be){var Ue={},We=e.dispatch("beforesend","progress","load","error"),wt={},tt=new XMLHttpRequest,zt=null;self.XDomainRequest&&!("withCredentials"in tt)&&/^(http(s)?:)?\/\//.test(Z)&&(tt=new XDomainRequest),"onload"in tt?tt.onload=tt.onerror=or:tt.onreadystatechange=function(){tt.readyState>3&&or()};function or(){var lr=tt.status,Dr;if(!lr&&hi(tt)||lr>=200&&lr<300||lr===304){try{Dr=we.call(Ue,tt)}catch(Ir){We.error.call(Ue,Ir);return}We.load.call(Ue,Dr)}else We.error.call(Ue,tt)}return tt.onprogress=function(lr){var Dr=e.event;e.event=lr;try{We.progress.call(Ue,tt)}finally{e.event=Dr}},Ue.header=function(lr,Dr){return lr=(lr+"").toLowerCase(),arguments.length<2?wt[lr]:(Dr==null?delete wt[lr]:wt[lr]=Dr+"",Ue)},Ue.mimeType=function(lr){return arguments.length?(oe=lr==null?null:lr+"",Ue):oe},Ue.responseType=function(lr){return arguments.length?(zt=lr,Ue):zt},Ue.response=function(lr){return we=lr,Ue},["get","post"].forEach(function(lr){Ue[lr]=function(){return Ue.send.apply(Ue,[lr].concat(r(arguments)))}}),Ue.send=function(lr,Dr,Ir){if(arguments.length===2&&typeof Dr=="function"&&(Ir=Dr,Dr=null),tt.open(lr,Z,!0),oe!=null&&!("accept"in wt)&&(wt.accept=oe+",*/*"),tt.setRequestHeader)for(var oi in wt)tt.setRequestHeader(oi,wt[oi]);return oe!=null&&tt.overrideMimeType&&tt.overrideMimeType(oe),zt!=null&&(tt.responseType=zt),Ir!=null&&Ue.on("error",Ir).on("load",function(ui){Ir(null,ui)}),We.beforesend.call(Ue,tt),tt.send(Dr==null?null:Dr),Ue},Ue.abort=function(){return tt.abort(),Ue},e.rebind(Ue,We,"on"),Be==null?Ue:Ue.get(an(Be))}function an(Z){return Z.length===1?function(oe,we){Z(oe==null?we:null)}:Z}function hi(Z){var oe=Z.responseType;return oe&&oe!=="text"?Z.response:Z.responseText}e.dsv=function(Z,oe){var we=new RegExp('["'+Z+`
+]`),Be=Z.charCodeAt(0);function Ue(or,lr,Dr){arguments.length<3&&(Dr=lr,lr=null);var Ir=Yi(or,oe,lr==null?We:wt(lr),Dr);return Ir.row=function(oi){return arguments.length?Ir.response((lr=oi)==null?We:wt(oi)):lr},Ir}function We(or){return Ue.parse(or.responseText)}function wt(or){return function(lr){return Ue.parse(lr.responseText,or)}}Ue.parse=function(or,lr){var Dr;return Ue.parseRows(or,function(Ir,oi){if(Dr)return Dr(Ir,oi-1);var ui=function(qr){for(var Kr={},ii=Ir.length,vi=0;vi<ii;++vi)Kr[Ir[vi]]=qr[vi];return Kr};Dr=lr?function(qr,Kr){return lr(ui(qr),Kr)}:ui})},Ue.parseRows=function(or,lr){var Dr={},Ir={},oi=[],ui=or.length,qr=0,Kr=0,ii,vi;function ci(){if(qr>=ui)return Ir;if(vi)return vi=!1,Dr;var un=qr;if(or.charCodeAt(un)===34){for(var dn=un;dn++<ui;)if(or.charCodeAt(dn)===34){if(or.charCodeAt(dn+1)!==34)break;++dn}qr=dn+2;var En=or.charCodeAt(dn+1);return En===13?(vi=!0,or.charCodeAt(dn+2)===10&&++qr):En===10&&(vi=!0),or.slice(un+1,dn).replace(/""/g,'"')}for(;qr<ui;){var En=or.charCodeAt(qr++),Nn=1;if(En===10)vi=!0;else if(En===13)vi=!0,or.charCodeAt(qr)===10&&(++qr,++Nn);else if(En!==Be)continue;return or.slice(un,qr-Nn)}return or.slice(un)}for(;(ii=ci())!==Ir;){for(var Jr=[];ii!==Dr&&ii!==Ir;)Jr.push(ii),ii=ci();lr&&(Jr=lr(Jr,Kr++))==null||oi.push(Jr)}return oi},Ue.format=function(or){if(Array.isArray(or[0]))return Ue.formatRows(or);var lr=new V,Dr=[];return or.forEach(function(Ir){for(var oi in Ir)lr.has(oi)||Dr.push(lr.add(oi))}),[Dr.map(zt).join(Z)].concat(or.map(function(Ir){return Dr.map(function(oi){return zt(Ir[oi])}).join(Z)})).join(`
+`)},Ue.formatRows=function(or){return or.map(tt).join(`
+`)};function tt(or){return or.map(zt).join(Z)}function zt(or){return we.test(or)?'"'+or.replace(/\"/g,'""')+'"':or}return Ue},e.csv=e.dsv(",","text/csv"),e.tsv=e.dsv(" ","text/tab-separated-values");var Ji,ua,Fn,Sa,go=this[G(this,"requestAnimationFrame")]||function(Z){setTimeout(Z,17)};e.timer=function(){Oo.apply(this,arguments)};function Oo(Z,oe,we){var Be=arguments.length;Be<2&&(oe=0),Be<3&&(we=Date.now());var Ue=we+oe,We={c:Z,t:Ue,n:null};return ua?ua.n=We:Ji=We,ua=We,Fn||(Sa=clearTimeout(Sa),Fn=1,go(ho)),We}function ho(){var Z=Mo(),oe=xo()-Z;oe>24?(isFinite(oe)&&(clearTimeout(Sa),Sa=setTimeout(ho,oe)),Fn=0):(Fn=1,go(ho))}e.timer.flush=function(){Mo(),xo()};function Mo(){for(var Z=Date.now(),oe=Ji;oe;)Z>=oe.t&&oe.c(Z-oe.t)&&(oe.c=null),oe=oe.n;return Z}function xo(){for(var Z,oe=Ji,we=1/0;oe;)oe.c?(oe.t<we&&(we=oe.t),oe=(Z=oe).n):oe=Z?Z.n=oe.n:Ji=oe.n;return ua=Z,we}e.round=function(Z,oe){return oe?Math.round(Z*(oe=Math.pow(10,oe)))/oe:Math.round(Z)},e.geom={};function zs(Z){return Z[0]}function ks(Z){return Z[1]}e.geom.hull=function(Z){var oe=zs,we=ks;if(arguments.length)return Be(Z);function Be(Ue){if(Ue.length<3)return[];var We=ti(oe),wt=ti(we),tt,zt=Ue.length,or=[],lr=[];for(tt=0;tt<zt;tt++)or.push([+We.call(this,Ue[tt],tt),+wt.call(this,Ue[tt],tt),tt]);for(or.sort(Xs),tt=0;tt<zt;tt++)lr.push([or[tt][0],-or[tt][1]]);var Dr=Zs(or),Ir=Zs(lr),oi=Ir[0]===Dr[0],ui=Ir[Ir.length-1]===Dr[Dr.length-1],qr=[];for(tt=Dr.length-1;tt>=0;--tt)qr.push(Ue[or[Dr[tt]][2]]);for(tt=+oi;tt<Ir.length-ui;++tt)qr.push(Ue[or[Ir[tt]][2]]);return qr}return Be.x=function(Ue){return arguments.length?(oe=Ue,Be):oe},Be.y=function(Ue){return arguments.length?(we=Ue,Be):we},Be};function Zs(Z){for(var oe=Z.length,we=[0,1],Be=2,Ue=2;Ue<oe;Ue++){for(;Be>1&&Vt(Z[we[Be-2]],Z[we[Be-1]],Z[Ue])<=0;)--Be;we[Be++]=Ue}return we.slice(0,Be)}function Xs(Z,oe){return Z[0]-oe[0]||Z[1]-oe[1]}e.geom.polygon=function(Z){return ie(Z,wl),Z};var wl=e.geom.polygon.prototype=[];wl.area=function(){for(var Z=-1,oe=this.length,we,Be=this[oe-1],Ue=0;++Z<oe;)we=Be,Be=this[Z],Ue+=we[1]*Be[0]-we[0]*Be[1];return Ue*.5},wl.centroid=function(Z){var oe=-1,we=this.length,Be=0,Ue=0,We,wt=this[we-1],tt;for(arguments.length||(Z=-1/(6*this.area()));++oe<we;)We=wt,wt=this[oe],tt=We[0]*wt[1]-wt[0]*We[1],Be+=(We[0]+wt[0])*tt,Ue+=(We[1]+wt[1])*tt;return[Be*Z,Ue*Z]},wl.clip=function(Z){for(var oe,we=Cs(Z),Be=-1,Ue=this.length-Cs(this),We,wt,tt=this[Ue-1],zt,or,lr;++Be<Ue;){for(oe=Z.slice(),Z.length=0,zt=this[Be],or=oe[(wt=oe.length-we)-1],We=-1;++We<wt;)lr=oe[We],os(lr,tt,zt)?(os(or,tt,zt)||Z.push(cl(or,lr,tt,zt)),Z.push(lr)):os(or,tt,zt)&&Z.push(cl(or,lr,tt,zt)),or=lr;we&&Z.push(Z[0]),tt=zt}return Z};function os(Z,oe,we){return(we[0]-oe[0])*(Z[1]-oe[1])<(we[1]-oe[1])*(Z[0]-oe[0])}function cl(Z,oe,we,Be){var Ue=Z[0],We=we[0],wt=oe[0]-Ue,tt=Be[0]-We,zt=Z[1],or=we[1],lr=oe[1]-zt,Dr=Be[1]-or,Ir=(tt*(zt-or)-Dr*(Ue-We))/(Dr*wt-tt*lr);return[Ue+Ir*wt,zt+Ir*lr]}function Cs(Z){var oe=Z[0],we=Z[Z.length-1];return!(oe[0]-we[0]||oe[1]-we[1])}var ml,Ys,Hs,Eo=[],fs,Ql,Hu=[];function fc(){Ls(this),this.edge=this.site=this.circle=null}function ms(Z){var oe=Eo.pop()||new fc;return oe.site=Z,oe}function on(Z){ko(Z),Hs.remove(Z),Eo.push(Z),Ls(Z)}function fa(Z){var oe=Z.circle,we=oe.x,Be=oe.cy,Ue={x:we,y:Be},We=Z.P,wt=Z.N,tt=[Z];on(Z);for(var zt=We;zt.circle&&p(we-zt.circle.x)<Ye&&p(Be-zt.circle.cy)<Ye;)We=zt.P,tt.unshift(zt),on(zt),zt=We;tt.unshift(zt),ko(zt);for(var or=wt;or.circle&&p(we-or.circle.x)<Ye&&p(Be-or.circle.cy)<Ye;)wt=or.N,tt.push(or),on(or),or=wt;tt.push(or),ko(or);var lr=tt.length,Dr;for(Dr=1;Dr<lr;++Dr)or=tt[Dr],zt=tt[Dr-1],Al(or.edge,zt.site,or.site,Ue);zt=tt[0],or=tt[lr-1],or.edge=cf(zt.site,or.site,null,Ue),Zn(zt),Zn(or)}function Qu(Z){for(var oe=Z.x,we=Z.y,Be,Ue,We,wt,tt=Hs._;tt;)if(We=Rl(tt,we)-oe,We>Ye)tt=tt.L;else if(wt=oe-vo(tt,we),wt>Ye){if(!tt.R){Be=tt;break}tt=tt.R}else{We>-Ye?(Be=tt.P,Ue=tt):wt>-Ye?(Be=tt,Ue=tt.N):Be=Ue=tt;break}var zt=ms(Z);if(Hs.insert(Be,zt),!(!Be&&!Ue)){if(Be===Ue){ko(Be),Ue=ms(Be.site),Hs.insert(zt,Ue),zt.edge=Ue.edge=cf(Be.site,zt.site),Zn(Be),Zn(Ue);return}if(!Ue){zt.edge=cf(Be.site,zt.site);return}ko(Be),ko(Ue);var or=Be.site,lr=or.x,Dr=or.y,Ir=Z.x-lr,oi=Z.y-Dr,ui=Ue.site,qr=ui.x-lr,Kr=ui.y-Dr,ii=2*(Ir*Kr-oi*qr),vi=Ir*Ir+oi*oi,ci=qr*qr+Kr*Kr,Jr={x:(Kr*vi-oi*ci)/ii+lr,y:(Ir*ci-qr*vi)/ii+Dr};Al(Ue.edge,or,ui,Jr),zt.edge=cf(or,Z,null,Jr),Ue.edge=cf(Z,ui,null,Jr),Zn(Be),Zn(Ue)}}function Rl(Z,oe){var we=Z.site,Be=we.x,Ue=we.y,We=Ue-oe;if(!We)return Be;var wt=Z.P;if(!wt)return-1/0;we=wt.site;var tt=we.x,zt=we.y,or=zt-oe;if(!or)return tt;var lr=tt-Be,Dr=1/We-1/or,Ir=lr/or;return Dr?(-Ir+Math.sqrt(Ir*Ir-2*Dr*(lr*lr/(-2*or)-zt+or/2+Ue-We/2)))/Dr+Be:(Be+tt)/2}function vo(Z,oe){var we=Z.N;if(we)return Rl(we,oe);var Be=Z.site;return Be.y===oe?Be.x:1/0}function Zl(Z){this.site=Z,this.edges=[]}Zl.prototype.prepare=function(){for(var Z=this.edges,oe=Z.length,we;oe--;)we=Z[oe].edge,(!we.b||!we.a)&&Z.splice(oe,1);return Z.sort(Xl),Z.length};function Ks(Z){for(var oe=Z[0][0],we=Z[1][0],Be=Z[0][1],Ue=Z[1][1],We,wt,tt,zt,or=Ys,lr=or.length,Dr,Ir,oi,ui,qr,Kr;lr--;)if(Dr=or[lr],!(!Dr||!Dr.prepare()))for(oi=Dr.edges,ui=oi.length,Ir=0;Ir<ui;)Kr=oi[Ir].end(),tt=Kr.x,zt=Kr.y,qr=oi[++Ir%ui].start(),We=qr.x,wt=qr.y,(p(tt-We)>Ye||p(zt-wt)>Ye)&&(oi.splice(Ir,0,new Hc(rh(Dr.site,Kr,p(tt-oe)<Ye&&Ue-zt>Ye?{x:oe,y:p(We-oe)<Ye?wt:Ue}:p(zt-Ue)<Ye&&we-tt>Ye?{x:p(wt-Ue)<Ye?We:we,y:Ue}:p(tt-we)<Ye&&zt-Be>Ye?{x:we,y:p(We-we)<Ye?wt:Be}:p(zt-Be)<Ye&&tt-oe>Ye?{x:p(wt-Be)<Ye?We:oe,y:Be}:null),Dr.site,null)),++ui)}function Xl(Z,oe){return oe.angle-Z.angle}function Ec(){Ls(this),this.x=this.y=this.arc=this.site=this.cy=null}function Zn(Z){var oe=Z.P,we=Z.N;if(!(!oe||!we)){var Be=oe.site,Ue=Z.site,We=we.site;if(Be!==We){var wt=Ue.x,tt=Ue.y,zt=Be.x-wt,or=Be.y-tt,lr=We.x-wt,Kr=We.y-tt,Dr=2*(zt*Kr-or*lr);if(!(Dr>=-Ve)){var Ir=zt*zt+or*or,oi=lr*lr+Kr*Kr,ui=(Kr*Ir-or*oi)/Dr,qr=(zt*oi-lr*Ir)/Dr,Kr=qr+tt,ii=Hu.pop()||new Ec;ii.arc=Z,ii.site=Ue,ii.x=ui+wt,ii.y=Kr+Math.sqrt(ui*ui+qr*qr),ii.cy=Kr,Z.circle=ii;for(var vi=null,ci=Ql._;ci;)if(ii.y<ci.y||ii.y===ci.y&&ii.x<=ci.x)if(ci.L)ci=ci.L;else{vi=ci.P;break}else if(ci.R)ci=ci.R;else{vi=ci;break}Ql.insert(vi,ii),vi||(fs=ii)}}}}function ko(Z){var oe=Z.circle;oe&&(oe.P||(fs=oe.N),Ql.remove(oe),Hu.push(oe),Ls(oe),Z.circle=null)}function Co(Z,oe,we,Be){return function(Ue){var We=Ue.a,wt=Ue.b,tt=We.x,zt=We.y,or=wt.x,lr=wt.y,Dr=0,Ir=1,oi=or-tt,ui=lr-zt,qr;if(qr=Z-tt,!(!oi&&qr>0)){if(qr/=oi,oi<0){if(qr<Dr)return;qr<Ir&&(Ir=qr)}else if(oi>0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}if(qr=we-tt,!(!oi&&qr<0)){if(qr/=oi,oi<0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}else if(oi>0){if(qr<Dr)return;qr<Ir&&(Ir=qr)}if(qr=oe-zt,!(!ui&&qr>0)){if(qr/=ui,ui<0){if(qr<Dr)return;qr<Ir&&(Ir=qr)}else if(ui>0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}if(qr=Be-zt,!(!ui&&qr<0)){if(qr/=ui,ui<0){if(qr>Ir)return;qr>Dr&&(Dr=qr)}else if(ui>0){if(qr<Dr)return;qr<Ir&&(Ir=qr)}return Dr>0&&(Ue.a={x:tt+Dr*oi,y:zt+Dr*ui}),Ir<1&&(Ue.b={x:tt+Ir*oi,y:zt+Ir*ui}),Ue}}}}}}function Tl(Z){for(var oe=ml,we=Co(Z[0][0],Z[0][1],Z[1][0],Z[1][1]),Be=oe.length,Ue;Be--;)Ue=oe[Be],(!uf(Ue,Z)||!we(Ue)||p(Ue.a.x-Ue.b.x)<Ye&&p(Ue.a.y-Ue.b.y)<Ye)&&(Ue.a=Ue.b=null,oe.splice(Be,1))}function uf(Z,oe){var we=Z.b;if(we)return!0;var Be=Z.a,Ue=oe[0][0],We=oe[1][0],wt=oe[0][1],tt=oe[1][1],zt=Z.l,or=Z.r,lr=zt.x,Dr=zt.y,Ir=or.x,oi=or.y,ui=(lr+Ir)/2,qr=(Dr+oi)/2,Kr,ii;if(oi===Dr){if(ui<Ue||ui>=We)return;if(lr>Ir){if(!Be)Be={x:ui,y:wt};else if(Be.y>=tt)return;we={x:ui,y:tt}}else{if(!Be)Be={x:ui,y:tt};else if(Be.y<wt)return;we={x:ui,y:wt}}}else if(Kr=(lr-Ir)/(oi-Dr),ii=qr-Kr*ui,Kr<-1||Kr>1)if(lr>Ir){if(!Be)Be={x:(wt-ii)/Kr,y:wt};else if(Be.y>=tt)return;we={x:(tt-ii)/Kr,y:tt}}else{if(!Be)Be={x:(tt-ii)/Kr,y:tt};else if(Be.y<wt)return;we={x:(wt-ii)/Kr,y:wt}}else if(Dr<oi){if(!Be)Be={x:Ue,y:Kr*Ue+ii};else if(Be.x>=We)return;we={x:We,y:Kr*We+ii}}else{if(!Be)Be={x:We,y:Kr*We+ii};else if(Be.x<Ue)return;we={x:Ue,y:Kr*Ue+ii}}return Z.a=Be,Z.b=we,!0}function So(Z,oe){this.l=Z,this.r=oe,this.a=this.b=null}function cf(Z,oe,we,Be){var Ue=new So(Z,oe);return ml.push(Ue),we&&Al(Ue,Z,oe,we),Be&&Al(Ue,oe,Z,Be),Ys[Z.i].edges.push(new Hc(Ue,Z,oe)),Ys[oe.i].edges.push(new Hc(Ue,oe,Z)),Ue}function rh(Z,oe,we){var Be=new So(Z,null);return Be.a=oe,Be.b=we,ml.push(Be),Be}function Al(Z,oe,we,Be){!Z.a&&!Z.b?(Z.a=Be,Z.l=oe,Z.r=we):Z.l===we?Z.b=Be:Z.a=Be}function Hc(Z,oe,we){var Be=Z.a,Ue=Z.b;this.edge=Z,this.site=oe,this.angle=we?Math.atan2(we.y-oe.y,we.x-oe.x):Z.l===oe?Math.atan2(Ue.x-Be.x,Be.y-Ue.y):Math.atan2(Be.x-Ue.x,Ue.y-Be.y)}Hc.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}};function eu(){this._=null}function Ls(Z){Z.U=Z.C=Z.L=Z.R=Z.P=Z.N=null}eu.prototype={insert:function(Z,oe){var we,Be,Ue;if(Z){if(oe.P=Z,oe.N=Z.N,Z.N&&(Z.N.P=oe),Z.N=oe,Z.R){for(Z=Z.R;Z.L;)Z=Z.L;Z.L=oe}else Z.R=oe;we=Z}else this._?(Z=Of(this._),oe.P=null,oe.N=Z,Z.P=Z.L=oe,we=Z):(oe.P=oe.N=null,this._=oe,we=null);for(oe.L=oe.R=null,oe.U=we,oe.C=!0,Z=oe;we&&we.C;)Be=we.U,we===Be.L?(Ue=Be.R,Ue&&Ue.C?(we.C=Ue.C=!1,Be.C=!0,Z=Be):(Z===we.R&&(mu(this,we),Z=we,we=Z.U),we.C=!1,Be.C=!0,kc(this,Be))):(Ue=Be.L,Ue&&Ue.C?(we.C=Ue.C=!1,Be.C=!0,Z=Be):(Z===we.L&&(kc(this,we),Z=we,we=Z.U),we.C=!1,Be.C=!0,mu(this,Be))),we=Z.U;this._.C=!1},remove:function(Z){Z.N&&(Z.N.P=Z.P),Z.P&&(Z.P.N=Z.N),Z.N=Z.P=null;var oe=Z.U,we,Be=Z.L,Ue=Z.R,We,wt;if(Be?Ue?We=Of(Ue):We=Be:We=Ue,oe?oe.L===Z?oe.L=We:oe.R=We:this._=We,Be&&Ue?(wt=We.C,We.C=Z.C,We.L=Be,Be.U=We,We!==Ue?(oe=We.U,We.U=Z.U,Z=We.R,oe.L=Z,We.R=Ue,Ue.U=We):(We.U=oe,oe=We,Z=We.R)):(wt=Z.C,Z=We),Z&&(Z.U=oe),!wt){if(Z&&Z.C){Z.C=!1;return}do{if(Z===this._)break;if(Z===oe.L){if(we=oe.R,we.C&&(we.C=!1,oe.C=!0,mu(this,oe),we=oe.R),we.L&&we.L.C||we.R&&we.R.C){(!we.R||!we.R.C)&&(we.L.C=!1,we.C=!0,kc(this,we),we=oe.R),we.C=oe.C,oe.C=we.R.C=!1,mu(this,oe),Z=this._;break}}else if(we=oe.L,we.C&&(we.C=!1,oe.C=!0,kc(this,oe),we=oe.L),we.L&&we.L.C||we.R&&we.R.C){(!we.L||!we.L.C)&&(we.R.C=!1,we.C=!0,mu(this,we),we=oe.L),we.C=oe.C,oe.C=we.L.C=!1,kc(this,oe),Z=this._;break}we.C=!0,Z=oe,oe=oe.U}while(!Z.C);Z&&(Z.C=!1)}}};function mu(Z,oe){var we=oe,Be=oe.R,Ue=we.U;Ue?Ue.L===we?Ue.L=Be:Ue.R=Be:Z._=Be,Be.U=Ue,we.U=Be,we.R=Be.L,we.R&&(we.R.U=we),Be.L=we}function kc(Z,oe){var we=oe,Be=oe.L,Ue=we.U;Ue?Ue.L===we?Ue.L=Be:Ue.R=Be:Z._=Be,Be.U=Ue,we.U=Be,we.L=Be.R,we.L&&(we.L.U=we),Be.R=we}function Of(Z){for(;Z.L;)Z=Z.L;return Z}function Gc(Z,oe){var we=Z.sort(vd).pop(),Be,Ue,We;for(ml=[],Ys=new Array(Z.length),Hs=new eu,Ql=new eu;;)if(We=fs,we&&(!We||we.y<We.y||we.y===We.y&&we.x<We.x))(we.x!==Be||we.y!==Ue)&&(Ys[we.i]=new Zl(we),Qu(we),Be=we.x,Ue=we.y),we=Z.pop();else if(We)fa(We.arc);else break;oe&&(Tl(oe),Ks(oe));var wt={cells:Ys,edges:ml};return Hs=Ql=ml=Ys=null,wt}function vd(Z,oe){return oe.y-Z.y||oe.x-Z.x}e.geom.voronoi=function(Z){var oe=zs,we=ks,Be=oe,Ue=we,We=Bf;if(Z)return wt(Z);function wt(zt){var or=new Array(zt.length),lr=We[0][0],Dr=We[0][1],Ir=We[1][0],oi=We[1][1];return Gc(tt(zt),We).cells.forEach(function(ui,qr){var Kr=ui.edges,ii=ui.site,vi=or[qr]=Kr.length?Kr.map(function(ci){var Jr=ci.start();return[Jr.x,Jr.y]}):ii.x>=lr&&ii.x<=Ir&&ii.y>=Dr&&ii.y<=oi?[[lr,oi],[Ir,oi],[Ir,Dr],[lr,Dr]]:[];vi.point=zt[qr]}),or}function tt(zt){return zt.map(function(or,lr){return{x:Math.round(Be(or,lr)/Ye)*Ye,y:Math.round(Ue(or,lr)/Ye)*Ye,i:lr}})}return wt.links=function(zt){return Gc(tt(zt)).edges.filter(function(or){return or.l&&or.r}).map(function(or){return{source:zt[or.l.i],target:zt[or.r.i]}})},wt.triangles=function(zt){var or=[];return Gc(tt(zt)).cells.forEach(function(lr,Dr){for(var Ir=lr.site,oi=lr.edges.sort(Xl),ui=-1,qr=oi.length,Kr,ii,vi=oi[qr-1].edge,ci=vi.l===Ir?vi.r:vi.l;++ui<qr;)Kr=vi,ii=ci,vi=oi[ui].edge,ci=vi.l===Ir?vi.r:vi.l,Dr<ii.i&&Dr<ci.i&&ss(Ir,ii,ci)<0&&or.push([zt[Dr],zt[ii.i],zt[ci.i]])}),or},wt.x=function(zt){return arguments.length?(Be=ti(oe=zt),wt):oe},wt.y=function(zt){return arguments.length?(Ue=ti(we=zt),wt):we},wt.clipExtent=function(zt){return arguments.length?(We=zt==null?Bf:zt,wt):We===Bf?null:We},wt.size=function(zt){return arguments.length?wt.clipExtent(zt&&[[0,0],zt]):We===Bf?null:We&&We[1]},wt};var Bf=[[-1e6,-1e6],[1e6,1e6]];function ss(Z,oe,we){return(Z.x-we.x)*(oe.y-Z.y)-(Z.x-oe.x)*(we.y-Z.y)}e.geom.delaunay=function(Z){return e.geom.voronoi().triangles(Z)},e.geom.quadtree=function(Z,oe,we,Be,Ue){var We=zs,wt=ks,tt;if(tt=arguments.length)return We=ff,wt=ih,tt===3&&(Ue=we,Be=oe,we=oe=0),zt(Z);function zt(or){var lr,Dr=ti(We),Ir=ti(wt),oi,ui,qr,Kr,ii,vi,ci,Jr;if(oe!=null)ii=oe,vi=we,ci=Be,Jr=Ue;else if(ci=Jr=-(ii=vi=1/0),oi=[],ui=[],Kr=or.length,tt)for(qr=0;qr<Kr;++qr)lr=or[qr],lr.x<ii&&(ii=lr.x),lr.y<vi&&(vi=lr.y),lr.x>ci&&(ci=lr.x),lr.y>Jr&&(Jr=lr.y),oi.push(lr.x),ui.push(lr.y);else for(qr=0;qr<Kr;++qr){var un=+Dr(lr=or[qr],qr),dn=+Ir(lr,qr);un<ii&&(ii=un),dn<vi&&(vi=dn),un>ci&&(ci=un),dn>Jr&&(Jr=dn),oi.push(un),ui.push(dn)}var En=ci-ii,Nn=Jr-vi;En>Nn?Jr=vi+En:ci=ii+Nn;function ga(wa,io,Ss,_s,Ns,pn,za,Lo){if(!(isNaN(Ss)||isNaN(_s)))if(wa.leaf){var Fo=wa.x,js=wa.y;if(Fo!=null)if(p(Fo-Ss)+p(js-_s)<.01)ya(wa,io,Ss,_s,Ns,pn,za,Lo);else{var xl=wa.point;wa.x=wa.y=wa.point=null,ya(wa,xl,Fo,js,Ns,pn,za,Lo),ya(wa,io,Ss,_s,Ns,pn,za,Lo)}else wa.x=Ss,wa.y=_s,wa.point=io}else ya(wa,io,Ss,_s,Ns,pn,za,Lo)}function ya(wa,io,Ss,_s,Ns,pn,za,Lo){var Fo=(Ns+za)*.5,js=(pn+Lo)*.5,xl=Ss>=Fo,fu=_s>=js,dl=fu<<1|xl;wa.leaf=!1,wa=wa.nodes[dl]||(wa.nodes[dl]=Vl()),xl?Ns=Fo:za=Fo,fu?pn=js:Lo=js,ga(wa,io,Ss,_s,Ns,pn,za,Lo)}var so=Vl();if(so.add=function(wa){ga(so,wa,+Dr(wa,++qr),+Ir(wa,qr),ii,vi,ci,Jr)},so.visit=function(wa){Js(wa,so,ii,vi,ci,Jr)},so.find=function(wa){return hc(so,wa[0],wa[1],ii,vi,ci,Jr)},qr=-1,oe==null){for(;++qr<Kr;)ga(so,or[qr],oi[qr],ui[qr],ii,vi,ci,Jr);--qr}else or.forEach(so.add);return oi=ui=or=lr=null,so}return zt.x=function(or){return arguments.length?(We=or,zt):We},zt.y=function(or){return arguments.length?(wt=or,zt):wt},zt.extent=function(or){return arguments.length?(or==null?oe=we=Be=Ue=null:(oe=+or[0][0],we=+or[0][1],Be=+or[1][0],Ue=+or[1][1]),zt):oe==null?null:[[oe,we],[Be,Ue]]},zt.size=function(or){return arguments.length?(or==null?oe=we=Be=Ue=null:(oe=we=0,Be=+or[0],Ue=+or[1]),zt):oe==null?null:[Be-oe,Ue-we]},zt};function ff(Z){return Z.x}function ih(Z){return Z.y}function Vl(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function Js(Z,oe,we,Be,Ue,We){if(!Z(oe,we,Be,Ue,We)){var wt=(we+Ue)*.5,tt=(Be+We)*.5,zt=oe.nodes;zt[0]&&Js(Z,zt[0],we,Be,wt,tt),zt[1]&&Js(Z,zt[1],wt,Be,Ue,tt),zt[2]&&Js(Z,zt[2],we,tt,wt,We),zt[3]&&Js(Z,zt[3],wt,tt,Ue,We)}}function hc(Z,oe,we,Be,Ue,We,wt){var tt=1/0,zt;return function or(lr,Dr,Ir,oi,ui){if(!(Dr>We||Ir>wt||oi<Be||ui<Ue)){if(qr=lr.point){var qr,Kr=oe-lr.x,ii=we-lr.y,vi=Kr*Kr+ii*ii;if(vi<tt){var ci=Math.sqrt(tt=vi);Be=oe-ci,Ue=we-ci,We=oe+ci,wt=we+ci,zt=qr}}for(var Jr=lr.nodes,un=(Dr+oi)*.5,dn=(Ir+ui)*.5,En=oe>=un,Nn=we>=dn,ga=Nn<<1|En,ya=ga+4;ga<ya;++ga)if(lr=Jr[ga&3])switch(ga&3){case 0:or(lr,Dr,Ir,un,dn);break;case 1:or(lr,un,Ir,oi,dn);break;case 2:or(lr,Dr,dn,un,ui);break;case 3:or(lr,un,dn,oi,ui);break}}}(Z,Be,Ue,We,wt),zt}e.interpolateRgb=Cc;function Cc(Z,oe){Z=e.rgb(Z),oe=e.rgb(oe);var we=Z.r,Be=Z.g,Ue=Z.b,We=oe.r-we,wt=oe.g-Be,tt=oe.b-Ue;return function(zt){return"#"+Sn(Math.round(we+We*zt))+Sn(Math.round(Be+wt*zt))+Sn(Math.round(Ue+tt*zt))}}e.interpolateObject=ws;function ws(Z,oe){var we={},Be={},Ue;for(Ue in Z)Ue in oe?we[Ue]=Sl(Z[Ue],oe[Ue]):Be[Ue]=Z[Ue];for(Ue in oe)Ue in Z||(Be[Ue]=oe[Ue]);return function(We){for(Ue in we)Be[Ue]=we[Ue](We);return Be}}e.interpolateNumber=$s;function $s(Z,oe){return Z=+Z,oe=+oe,function(we){return Z*(1-we)+oe*we}}e.interpolateString=hs;function hs(Z,oe){var we=Ms.lastIndex=dc.lastIndex=0,Be,Ue,We,wt=-1,tt=[],zt=[];for(Z=Z+"",oe=oe+"";(Be=Ms.exec(Z))&&(Ue=dc.exec(oe));)(We=Ue.index)>we&&(We=oe.slice(we,We),tt[wt]?tt[wt]+=We:tt[++wt]=We),(Be=Be[0])===(Ue=Ue[0])?tt[wt]?tt[wt]+=Ue:tt[++wt]=Ue:(tt[++wt]=null,zt.push({i:wt,x:$s(Be,Ue)})),we=dc.lastIndex;return we<oe.length&&(We=oe.slice(we),tt[wt]?tt[wt]+=We:tt[++wt]=We),tt.length<2?zt[0]?(oe=zt[0].x,function(or){return oe(or)+""}):function(){return oe}:(oe=zt.length,function(or){for(var lr=0,Dr;lr<oe;++lr)tt[(Dr=zt[lr]).i]=Dr.x(or);return tt.join("")})}var Ms=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,dc=new RegExp(Ms.source,"g");e.interpolate=Sl;function Sl(Z,oe){for(var we=e.interpolators.length,Be;--we>=0&&!(Be=e.interpolators[we](Z,oe)););return Be}e.interpolators=[function(Z,oe){var we=typeof oe;return(we==="string"?Hr.has(oe.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(oe)?Cc:hs:oe instanceof Wn?Cc:Array.isArray(oe)?ec:we==="object"&&isNaN(oe)?ws:$s)(Z,oe)}],e.interpolateArray=ec;function ec(Z,oe){var we=[],Be=[],Ue=Z.length,We=oe.length,wt=Math.min(Z.length,oe.length),tt;for(tt=0;tt<wt;++tt)we.push(Sl(Z[tt],oe[tt]));for(;tt<Ue;++tt)Be[tt]=Z[tt];for(;tt<We;++tt)Be[tt]=oe[tt];return function(zt){for(tt=0;tt<wt;++tt)Be[tt]=we[tt](zt);return Be}}var Ps=function(){return H},ov=e.map({linear:Ps,poly:Mh,quad:function(){return Ef},cubic:function(){return tc},sin:function(){return jc},exp:function(){return kf},circle:function(){return Ml},elastic:Yh,back:Eh,bounce:function(){return nh}}),wo=e.map({in:H,out:$o,"in-out":Ja,"out-in":function(Z){return Ja($o(Z))}});e.ease=function(Z){var oe=Z.indexOf("-"),we=oe>=0?Z.slice(0,oe):Z,Be=oe>=0?Z.slice(oe+1):"in";return we=ov.get(we)||Ps,Be=wo.get(Be)||H,Od(Be(we.apply(null,t.call(arguments,1))))};function Od(Z){return function(oe){return oe<=0?0:oe>=1?1:Z(oe)}}function $o(Z){return function(oe){return 1-Z(1-oe)}}function Ja(Z){return function(oe){return .5*(oe<.5?Z(2*oe):2-Z(2-2*oe))}}function Ef(Z){return Z*Z}function tc(Z){return Z*Z*Z}function uu(Z){if(Z<=0)return 0;if(Z>=1)return 1;var oe=Z*Z,we=oe*Z;return 4*(Z<.5?we:3*(Z-oe)+we-.75)}function Mh(Z){return function(oe){return Math.pow(oe,Z)}}function jc(Z){return 1-Math.cos(Z*xe)}function kf(Z){return Math.pow(2,10*(Z-1))}function Ml(Z){return 1-Math.sqrt(1-Z*Z)}function Yh(Z,oe){var we;return arguments.length<2&&(oe=.45),arguments.length?we=oe/ht*Math.asin(1/Z):(Z=1,we=oe/4),function(Be){return 1+Z*Math.pow(2,-10*Be)*Math.sin((Be-we)*ht/oe)}}function Eh(Z){return Z||(Z=1.70158),function(oe){return oe*oe*((Z+1)*oe-Z)}}function nh(Z){return Z<1/2.75?7.5625*Z*Z:Z<2/2.75?7.5625*(Z-=1.5/2.75)*Z+.75:Z<2.5/2.75?7.5625*(Z-=2.25/2.75)*Z+.9375:7.5625*(Z-=2.625/2.75)*Z+.984375}e.interpolateHcl=hf;function hf(Z,oe){Z=e.hcl(Z),oe=e.hcl(oe);var we=Z.h,Be=Z.c,Ue=Z.l,We=oe.h-we,wt=oe.c-Be,tt=oe.l-Ue;return isNaN(wt)&&(wt=0,Be=isNaN(Be)?oe.c:Be),isNaN(We)?(We=0,we=isNaN(we)?oe.h:we):We>180?We-=360:We<-180&&(We+=360),function(zt){return Fr(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateHsl=kh;function kh(Z,oe){Z=e.hsl(Z),oe=e.hsl(oe);var we=Z.h,Be=Z.s,Ue=Z.l,We=oe.h-we,wt=oe.s-Be,tt=oe.l-Ue;return isNaN(wt)&&(wt=0,Be=isNaN(Be)?oe.s:Be),isNaN(We)?(We=0,we=isNaN(we)?oe.h:we):We>180?We-=360:We<-180&&(We+=360),function(zt){return jt(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateLab=Kh;function Kh(Z,oe){Z=e.lab(Z),oe=e.lab(oe);var we=Z.l,Be=Z.a,Ue=Z.b,We=oe.l-we,wt=oe.a-Be,tt=oe.b-Ue;return function(zt){return Gi(we+We*zt,Be+wt*zt,Ue+tt*zt)+""}}e.interpolateRound=rc;function rc(Z,oe){return oe-=Z,function(we){return Math.round(Z+oe*we)}}e.transform=function(Z){var oe=n.createElementNS(e.ns.prefix.svg,"g");return(e.transform=function(we){if(we!=null){oe.setAttribute("transform",we);var Be=oe.transform.baseVal.consolidate()}return new ah(Be?Be.matrix:Nf)})(Z)};function ah(Z){var oe=[Z.a,Z.b],we=[Z.c,Z.d],Be=df(oe),Ue=Wc(oe,we),We=df(Cu(we,oe,-Ue))||0;oe[0]*we[1]<we[0]*oe[1]&&(oe[0]*=-1,oe[1]*=-1,Be*=-1,Ue*=-1),this.rotate=(Be?Math.atan2(oe[1],oe[0]):Math.atan2(-we[0],we[1]))*lt,this.translate=[Z.e,Z.f],this.scale=[Be,We],this.skew=We?Math.atan2(Ue,We)*lt:0}ah.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};function Wc(Z,oe){return Z[0]*oe[0]+Z[1]*oe[1]}function df(Z){var oe=Math.sqrt(Wc(Z,Z));return oe&&(Z[0]/=oe,Z[1]/=oe),oe}function Cu(Z,oe,we){return Z[0]+=we*oe[0],Z[1]+=we*oe[1],Z}var Nf={a:1,b:0,c:0,d:1,e:0,f:0};e.interpolateTransform=Cf;function Zc(Z){return Z.length?Z.pop()+",":""}function ds(Z,oe,we,Be){if(Z[0]!==oe[0]||Z[1]!==oe[1]){var Ue=we.push("translate(",null,",",null,")");Be.push({i:Ue-4,x:$s(Z[0],oe[0])},{i:Ue-2,x:$s(Z[1],oe[1])})}else(oe[0]||oe[1])&&we.push("translate("+oe+")")}function Ch(Z,oe,we,Be){Z!==oe?(Z-oe>180?oe+=360:oe-Z>180&&(Z+=360),Be.push({i:we.push(Zc(we)+"rotate(",null,")")-2,x:$s(Z,oe)})):oe&&we.push(Zc(we)+"rotate("+oe+")")}function Bd(Z,oe,we,Be){Z!==oe?Be.push({i:we.push(Zc(we)+"skewX(",null,")")-2,x:$s(Z,oe)}):oe&&we.push(Zc(we)+"skewX("+oe+")")}function Jh(Z,oe,we,Be){if(Z[0]!==oe[0]||Z[1]!==oe[1]){var Ue=we.push(Zc(we)+"scale(",null,",",null,")");Be.push({i:Ue-4,x:$s(Z[0],oe[0])},{i:Ue-2,x:$s(Z[1],oe[1])})}else(oe[0]!==1||oe[1]!==1)&&we.push(Zc(we)+"scale("+oe+")")}function Cf(Z,oe){var we=[],Be=[];return Z=e.transform(Z),oe=e.transform(oe),ds(Z.translate,oe.translate,we,Be),Ch(Z.rotate,oe.rotate,we,Be),Bd(Z.skew,oe.skew,we,Be),Jh(Z.scale,oe.scale,we,Be),Z=oe=null,function(Ue){for(var We=-1,wt=Be.length,tt;++We<wt;)we[(tt=Be[We]).i]=tt.x(Ue);return we.join("")}}function pd(Z,oe){return oe=(oe-=Z=+Z)||1/oe,function(we){return(we-Z)/oe}}function Lu(Z,oe){return oe=(oe-=Z=+Z)||1/oe,function(we){return Math.max(0,Math.min(1,(we-Z)/oe))}}e.layout={},e.layout.bundle=function(){return function(Z){for(var oe=[],we=-1,Be=Z.length;++we<Be;)oe.push($h(Z[we]));return oe}};function $h(Z){for(var oe=Z.source,we=Z.target,Be=Pu(oe,we),Ue=[oe];oe!==Be;)oe=oe.parent,Ue.push(oe);for(var We=Ue.length;we!==Be;)Ue.splice(We,0,we),we=we.parent;return Ue}function tu(Z){for(var oe=[],we=Z.parent;we!=null;)oe.push(Z),Z=we,we=we.parent;return oe.push(Z),oe}function Pu(Z,oe){if(Z===oe)return Z;for(var we=tu(Z),Be=tu(oe),Ue=we.pop(),We=Be.pop(),wt=null;Ue===We;)wt=Ue,Ue=we.pop(),We=Be.pop();return wt}e.layout.chord=function(){var Z={},oe,we,Be,Ue,We=0,wt,tt,zt;function or(){var Dr={},Ir=[],oi=e.range(Ue),ui=[],qr,Kr,ii,vi,ci;for(oe=[],we=[],qr=0,vi=-1;++vi<Ue;){for(Kr=0,ci=-1;++ci<Ue;)Kr+=Be[vi][ci];Ir.push(Kr),ui.push(e.range(Ue)),qr+=Kr}for(wt&&oi.sort(function(so,wa){return wt(Ir[so],Ir[wa])}),tt&&ui.forEach(function(so,wa){so.sort(function(io,Ss){return tt(Be[wa][io],Be[wa][Ss])})}),qr=(ht-We*Ue)/qr,Kr=0,vi=-1;++vi<Ue;){for(ii=Kr,ci=-1;++ci<Ue;){var Jr=oi[vi],un=ui[Jr][ci],dn=Be[Jr][un],En=Kr,Nn=Kr+=dn*qr;Dr[Jr+"-"+un]={index:Jr,subindex:un,startAngle:En,endAngle:Nn,value:dn}}we[Jr]={index:Jr,startAngle:ii,endAngle:Kr,value:Ir[Jr]},Kr+=We}for(vi=-1;++vi<Ue;)for(ci=vi-1;++ci<Ue;){var ga=Dr[vi+"-"+ci],ya=Dr[ci+"-"+vi];(ga.value||ya.value)&&oe.push(ga.value<ya.value?{source:ya,target:ga}:{source:ga,target:ya})}zt&&lr()}function lr(){oe.sort(function(Dr,Ir){return zt((Dr.source.value+Dr.target.value)/2,(Ir.source.value+Ir.target.value)/2)})}return Z.matrix=function(Dr){return arguments.length?(Ue=(Be=Dr)&&Be.length,oe=we=null,Z):Be},Z.padding=function(Dr){return arguments.length?(We=Dr,oe=we=null,Z):We},Z.sortGroups=function(Dr){return arguments.length?(wt=Dr,oe=we=null,Z):wt},Z.sortSubgroups=function(Dr){return arguments.length?(tt=Dr,oe=null,Z):tt},Z.sortChords=function(Dr){return arguments.length?(zt=Dr,oe&&lr(),Z):zt},Z.chords=function(){return oe||or(),oe},Z.groups=function(){return we||or(),we},Z},e.layout.force=function(){var Z={},oe=e.dispatch("start","tick","end"),we,Be=[1,1],Ue,We,wt=.9,tt=Qs,zt=Qh,or=-30,lr=gd,Dr=.1,Ir=.64,oi=[],ui=[],qr,Kr,ii;function vi(Jr){return function(un,dn,En,Nn){if(un.point!==Jr){var ga=un.cx-Jr.x,ya=un.cy-Jr.y,so=Nn-dn,wa=ga*ga+ya*ya;if(so*so/Ir<wa){if(wa<lr){var io=un.charge/wa;Jr.px-=ga*io,Jr.py-=ya*io}return!0}if(un.point&&wa&&wa<lr){var io=un.pointCharge/wa;Jr.px-=ga*io,Jr.py-=ya*io}}return!un.charge}}Z.tick=function(){if((We*=.99)<.005)return we=null,oe.end({type:"end",alpha:We=0}),!0;var Jr=oi.length,un=ui.length,dn,En,Nn,ga,ya,so,wa,io,Ss;for(En=0;En<un;++En)Nn=ui[En],ga=Nn.source,ya=Nn.target,io=ya.x-ga.x,Ss=ya.y-ga.y,(so=io*io+Ss*Ss)&&(so=We*Kr[En]*((so=Math.sqrt(so))-qr[En])/so,io*=so,Ss*=so,ya.x-=io*(wa=ga.weight+ya.weight?ga.weight/(ga.weight+ya.weight):.5),ya.y-=Ss*wa,ga.x+=io*(wa=1-wa),ga.y+=Ss*wa);if((wa=We*Dr)&&(io=Be[0]/2,Ss=Be[1]/2,En=-1,wa))for(;++En<Jr;)Nn=oi[En],Nn.x+=(io-Nn.x)*wa,Nn.y+=(Ss-Nn.y)*wa;if(or)for(yu(dn=e.geom.quadtree(oi),We,ii),En=-1;++En<Jr;)(Nn=oi[En]).fixed||dn.visit(vi(Nn));for(En=-1;++En<Jr;)Nn=oi[En],Nn.fixed?(Nn.x=Nn.px,Nn.y=Nn.py):(Nn.x-=(Nn.px-(Nn.px=Nn.x))*wt,Nn.y-=(Nn.py-(Nn.py=Nn.y))*wt);oe.tick({type:"tick",alpha:We})},Z.nodes=function(Jr){return arguments.length?(oi=Jr,Z):oi},Z.links=function(Jr){return arguments.length?(ui=Jr,Z):ui},Z.size=function(Jr){return arguments.length?(Be=Jr,Z):Be},Z.linkDistance=function(Jr){return arguments.length?(tt=typeof Jr=="function"?Jr:+Jr,Z):tt},Z.distance=Z.linkDistance,Z.linkStrength=function(Jr){return arguments.length?(zt=typeof Jr=="function"?Jr:+Jr,Z):zt},Z.friction=function(Jr){return arguments.length?(wt=+Jr,Z):wt},Z.charge=function(Jr){return arguments.length?(or=typeof Jr=="function"?Jr:+Jr,Z):or},Z.chargeDistance=function(Jr){return arguments.length?(lr=Jr*Jr,Z):Math.sqrt(lr)},Z.gravity=function(Jr){return arguments.length?(Dr=+Jr,Z):Dr},Z.theta=function(Jr){return arguments.length?(Ir=Jr*Jr,Z):Math.sqrt(Ir)},Z.alpha=function(Jr){return arguments.length?(Jr=+Jr,We?Jr>0?We=Jr:(we.c=null,we.t=NaN,we=null,oe.end({type:"end",alpha:We=0})):Jr>0&&(oe.start({type:"start",alpha:We=Jr}),we=Oo(Z.tick)),Z):We},Z.start=function(){var Jr,un=oi.length,dn=ui.length,En=Be[0],Nn=Be[1],ga,ya;for(Jr=0;Jr<un;++Jr)(ya=oi[Jr]).index=Jr,ya.weight=0;for(Jr=0;Jr<dn;++Jr)ya=ui[Jr],typeof ya.source=="number"&&(ya.source=oi[ya.source]),typeof ya.target=="number"&&(ya.target=oi[ya.target]),++ya.source.weight,++ya.target.weight;for(Jr=0;Jr<un;++Jr)ya=oi[Jr],isNaN(ya.x)&&(ya.x=so("x",En)),isNaN(ya.y)&&(ya.y=so("y",Nn)),isNaN(ya.px)&&(ya.px=ya.x),isNaN(ya.py)&&(ya.py=ya.y);if(qr=[],typeof tt=="function")for(Jr=0;Jr<dn;++Jr)qr[Jr]=+tt.call(this,ui[Jr],Jr);else for(Jr=0;Jr<dn;++Jr)qr[Jr]=tt;if(Kr=[],typeof zt=="function")for(Jr=0;Jr<dn;++Jr)Kr[Jr]=+zt.call(this,ui[Jr],Jr);else for(Jr=0;Jr<dn;++Jr)Kr[Jr]=zt;if(ii=[],typeof or=="function")for(Jr=0;Jr<un;++Jr)ii[Jr]=+or.call(this,oi[Jr],Jr);else for(Jr=0;Jr<un;++Jr)ii[Jr]=or;function so(wa,io){if(!ga){for(ga=new Array(un),Ns=0;Ns<un;++Ns)ga[Ns]=[];for(Ns=0;Ns<dn;++Ns){var Ss=ui[Ns];ga[Ss.source.index].push(Ss.target),ga[Ss.target.index].push(Ss.source)}}for(var _s=ga[Jr],Ns=-1,pn=_s.length,za;++Ns<pn;)if(!isNaN(za=_s[Ns][wa]))return za;return Math.random()*io}return Z.resume()},Z.resume=function(){return Z.alpha(.1)},Z.stop=function(){return Z.alpha(0)},Z.drag=function(){if(Ue||(Ue=e.behavior.drag().origin(H).on("dragstart.force",Lc).on("drag.force",ci).on("dragend.force",fl)),!arguments.length)return Ue;this.on("mouseover.force",Xc).on("mouseout.force",ic).call(Ue)};function ci(Jr){Jr.px=e.event.x,Jr.py=e.event.y,Z.resume()}return e.rebind(Z,oe,"on")};function Lc(Z){Z.fixed|=2}function fl(Z){Z.fixed&=-7}function Xc(Z){Z.fixed|=4,Z.px=Z.x,Z.py=Z.y}function ic(Z){Z.fixed&=-5}function yu(Z,oe,we){var Be=0,Ue=0;if(Z.charge=0,!Z.leaf)for(var We=Z.nodes,wt=We.length,tt=-1,zt;++tt<wt;)zt=We[tt],zt!=null&&(yu(zt,oe,we),Z.charge+=zt.charge,Be+=zt.charge*zt.cx,Ue+=zt.charge*zt.cy);if(Z.point){Z.leaf||(Z.point.x+=Math.random()-.5,Z.point.y+=Math.random()-.5);var or=oe*we[Z.point.index];Z.charge+=Z.pointCharge=or,Be+=or*Z.point.x,Ue+=or*Z.point.y}Z.cx=Be/Z.charge,Z.cy=Ue/Z.charge}var Qs=20,Qh=1,gd=1/0;e.layout.hierarchy=function(){var Z=Uf,oe=sv,we=Lf;function Be(Ue){var We=[Ue],wt=[],tt;for(Ue.depth=0;(tt=We.pop())!=null;)if(wt.push(tt),(or=oe.call(Be,tt,tt.depth))&&(zt=or.length)){for(var zt,or,lr;--zt>=0;)We.push(lr=or[zt]),lr.parent=tt,lr.depth=tt.depth+1;we&&(tt.value=0),tt.children=or}else we&&(tt.value=+we.call(Be,tt,tt.depth)||0),delete tt.children;return vc(Ue,function(Dr){var Ir,oi;Z&&(Ir=Dr.children)&&Ir.sort(Z),we&&(oi=Dr.parent)&&(oi.value+=Dr.value)}),wt}return Be.sort=function(Ue){return arguments.length?(Z=Ue,Be):Z},Be.children=function(Ue){return arguments.length?(oe=Ue,Be):oe},Be.value=function(Ue){return arguments.length?(we=Ue,Be):we},Be.revalue=function(Ue){return we&&(Pc(Ue,function(We){We.children&&(We.value=0)}),vc(Ue,function(We){var wt;We.children||(We.value=+we.call(Be,We,We.depth)||0),(wt=We.parent)&&(wt.value+=We.value)})),Ue},Be};function Gu(Z,oe){return e.rebind(Z,oe,"sort","children","value"),Z.nodes=Z,Z.links=Iu,Z}function Pc(Z,oe){for(var we=[Z];(Z=we.pop())!=null;)if(oe(Z),(Ue=Z.children)&&(Be=Ue.length))for(var Be,Ue;--Be>=0;)we.push(Ue[Be])}function vc(Z,oe){for(var we=[Z],Be=[];(Z=we.pop())!=null;)if(Be.push(Z),(wt=Z.children)&&(We=wt.length))for(var Ue=-1,We,wt;++Ue<We;)we.push(wt[Ue]);for(;(Z=Be.pop())!=null;)oe(Z)}function sv(Z){return Z.children}function Lf(Z){return Z.value}function Uf(Z,oe){return oe.value-Z.value}function Iu(Z){return e.merge(Z.map(function(oe){return(oe.children||[]).map(function(we){return{source:oe,target:we}})}))}e.layout.partition=function(){var Z=e.layout.hierarchy(),oe=[1,1];function we(We,wt,tt,zt){var or=We.children;if(We.x=wt,We.y=We.depth*zt,We.dx=tt,We.dy=zt,or&&(Dr=or.length)){var lr=-1,Dr,Ir,oi;for(tt=We.value?tt/We.value:0;++lr<Dr;)we(Ir=or[lr],wt,oi=Ir.value*tt,zt),wt+=oi}}function Be(We){var wt=We.children,tt=0;if(wt&&(or=wt.length))for(var zt=-1,or;++zt<or;)tt=Math.max(tt,Be(wt[zt]));return 1+tt}function Ue(We,wt){var tt=Z.call(this,We,wt);return we(tt[0],0,oe[0],oe[1]/Be(tt[0])),tt}return Ue.size=function(We){return arguments.length?(oe=We,Ue):oe},Gu(Ue,Z)},e.layout.pie=function(){var Z=Number,oe=oh,we=0,Be=ht,Ue=0;function We(wt){var tt=wt.length,zt=wt.map(function(vi,ci){return+Z.call(We,vi,ci)}),or=+(typeof we=="function"?we.apply(this,arguments):we),lr=(typeof Be=="function"?Be.apply(this,arguments):Be)-or,Dr=Math.min(Math.abs(lr)/tt,+(typeof Ue=="function"?Ue.apply(this,arguments):Ue)),Ir=Dr*(lr<0?-1:1),oi=e.sum(zt),ui=oi?(lr-tt*Ir)/oi:0,qr=e.range(tt),Kr=[],ii;return oe!=null&&qr.sort(oe===oh?function(vi,ci){return zt[ci]-zt[vi]}:function(vi,ci){return oe(wt[vi],wt[ci])}),qr.forEach(function(vi){Kr[vi]={data:wt[vi],value:ii=zt[vi],startAngle:or,endAngle:or+=ii*ui+Ir,padAngle:Dr}}),Kr}return We.value=function(wt){return arguments.length?(Z=wt,We):Z},We.sort=function(wt){return arguments.length?(oe=wt,We):oe},We.startAngle=function(wt){return arguments.length?(we=wt,We):we},We.endAngle=function(wt){return arguments.length?(Be=wt,We):Be},We.padAngle=function(wt){return arguments.length?(Ue=wt,We):Ue},We};var oh={};e.layout.stack=function(){var Z=H,oe=_u,we=xu,Be=md,Ue=ru,We=vf;function wt(tt,zt){if(!(ui=tt.length))return tt;var or=tt.map(function(vi,ci){return Z.call(wt,vi,ci)}),lr=or.map(function(vi){return vi.map(function(ci,Jr){return[Ue.call(wt,ci,Jr),We.call(wt,ci,Jr)]})}),Dr=oe.call(wt,lr,zt);or=e.permute(or,Dr),lr=e.permute(lr,Dr);var Ir=we.call(wt,lr,zt),oi=or[0].length,ui,qr,Kr,ii;for(Kr=0;Kr<oi;++Kr)for(Be.call(wt,or[0][Kr],ii=Ir[Kr],lr[0][Kr][1]),qr=1;qr<ui;++qr)Be.call(wt,or[qr][Kr],ii+=lr[qr-1][Kr][1],lr[qr][Kr][1]);return tt}return wt.values=function(tt){return arguments.length?(Z=tt,wt):Z},wt.order=function(tt){return arguments.length?(oe=typeof tt=="function"?tt:sh.get(tt)||_u,wt):oe},wt.offset=function(tt){return arguments.length?(we=typeof tt=="function"?tt:Fs.get(tt)||xu,wt):we},wt.x=function(tt){return arguments.length?(Ue=tt,wt):Ue},wt.y=function(tt){return arguments.length?(We=tt,wt):We},wt.out=function(tt){return arguments.length?(Be=tt,wt):Be},wt};function ru(Z){return Z.x}function vf(Z){return Z.y}function md(Z,oe,we){Z.y0=oe,Z.y=we}var sh=e.map({"inside-out":function(Z){var oe=Z.length,we,Be,Ue=Z.map(Lh),We=Z.map(Is),wt=e.range(oe).sort(function(Dr,Ir){return Ue[Dr]-Ue[Ir]}),tt=0,zt=0,or=[],lr=[];for(we=0;we<oe;++we)Be=wt[we],tt<zt?(tt+=We[Be],or.push(Be)):(zt+=We[Be],lr.push(Be));return lr.reverse().concat(or)},reverse:function(Z){return e.range(Z.length).reverse()},default:_u}),Fs=e.map({silhouette:function(Z){var oe=Z.length,we=Z[0].length,Be=[],Ue=0,We,wt,tt,zt=[];for(wt=0;wt<we;++wt){for(We=0,tt=0;We<oe;We++)tt+=Z[We][wt][1];tt>Ue&&(Ue=tt),Be.push(tt)}for(wt=0;wt<we;++wt)zt[wt]=(Ue-Be[wt])/2;return zt},wiggle:function(Z){var oe=Z.length,we=Z[0],Be=we.length,Ue,We,wt,tt,zt,or,lr,Dr,Ir,oi=[];for(oi[0]=Dr=Ir=0,We=1;We<Be;++We){for(Ue=0,tt=0;Ue<oe;++Ue)tt+=Z[Ue][We][1];for(Ue=0,zt=0,lr=we[We][0]-we[We-1][0];Ue<oe;++Ue){for(wt=0,or=(Z[Ue][We][1]-Z[Ue][We-1][1])/(2*lr);wt<Ue;++wt)or+=(Z[wt][We][1]-Z[wt][We-1][1])/lr;zt+=or*Z[Ue][We][1]}oi[We]=Dr-=tt?zt/tt*lr:0,Dr<Ir&&(Ir=Dr)}for(We=0;We<Be;++We)oi[We]-=Ir;return oi},expand:function(Z){var oe=Z.length,we=Z[0].length,Be=1/oe,Ue,We,wt,tt=[];for(We=0;We<we;++We){for(Ue=0,wt=0;Ue<oe;Ue++)wt+=Z[Ue][We][1];if(wt)for(Ue=0;Ue<oe;Ue++)Z[Ue][We][1]/=wt;else for(Ue=0;Ue<oe;Ue++)Z[Ue][We][1]=Be}for(We=0;We<we;++We)tt[We]=0;return tt},zero:xu});function _u(Z){return e.range(Z.length)}function xu(Z){for(var oe=-1,we=Z[0].length,Be=[];++oe<we;)Be[oe]=0;return Be}function Lh(Z){for(var oe=1,we=0,Be=Z[0][1],Ue,We=Z.length;oe<We;++oe)(Ue=Z[oe][1])>Be&&(we=oe,Be=Ue);return we}function Is(Z){return Z.reduce(Pf,0)}function Pf(Z,oe){return Z+oe[1]}e.layout.histogram=function(){var Z=!0,oe=Number,we=Vf,Be=Ic;function Ue(We,Ir){for(var tt=[],zt=We.map(oe,this),or=we.call(this,zt,Ir),lr=Be.call(this,or,zt,Ir),Dr,Ir=-1,oi=zt.length,ui=lr.length-1,qr=Z?1:1/oi,Kr;++Ir<ui;)Dr=tt[Ir]=[],Dr.dx=lr[Ir+1]-(Dr.x=lr[Ir]),Dr.y=0;if(ui>0)for(Ir=-1;++Ir<oi;)Kr=zt[Ir],Kr>=or[0]&&Kr<=or[1]&&(Dr=tt[e.bisect(lr,Kr,1,ui)-1],Dr.y+=qr,Dr.push(We[Ir]));return tt}return Ue.value=function(We){return arguments.length?(oe=We,Ue):oe},Ue.range=function(We){return arguments.length?(we=ti(We),Ue):we},Ue.bins=function(We){return arguments.length?(Be=typeof We=="number"?function(wt){return ju(wt,We)}:ti(We),Ue):Be},Ue.frequency=function(We){return arguments.length?(Z=!!We,Ue):Z},Ue};function Ic(Z,oe){return ju(Z,Math.ceil(Math.log(oe.length)/Math.LN2+1))}function ju(Z,oe){for(var we=-1,Be=+Z[0],Ue=(Z[1]-Be)/oe,We=[];++we<=oe;)We[we]=Ue*we+Be;return We}function Vf(Z){return[e.min(Z),e.max(Z)]}e.layout.pack=function(){var Z=e.layout.hierarchy().sort(pc),oe=0,we=[1,1],Be;function Ue(We,wt){var tt=Z.call(this,We,wt),zt=tt[0],or=we[0],lr=we[1],Dr=Be==null?Math.sqrt:typeof Be=="function"?Be:function(){return Be};if(zt.x=zt.y=0,vc(zt,function(oi){oi.r=+Dr(oi.value)}),vc(zt,Ih),oe){var Ir=oe*(Be?1:Math.max(2*zt.r/or,2*zt.r/lr))/2;vc(zt,function(oi){oi.r+=Ir}),vc(zt,Ih),vc(zt,function(oi){oi.r-=Ir})}return gc(zt,or/2,lr/2,Be?1:1/Math.max(2*zt.r/or,2*zt.r/lr)),tt}return Ue.size=function(We){return arguments.length?(we=We,Ue):we},Ue.radius=function(We){return arguments.length?(Be=We==null||typeof We=="function"?We:+We,Ue):Be},Ue.padding=function(We){return arguments.length?(oe=+We,Ue):oe},Gu(Ue,Z)};function pc(Z,oe){return Z.value-oe.value}function pf(Z,oe){var we=Z._pack_next;Z._pack_next=oe,oe._pack_prev=Z,oe._pack_next=we,we._pack_prev=oe}function Ph(Z,oe){Z._pack_next=oe,oe._pack_prev=Z}function Dl(Z,oe){var we=oe.x-Z.x,Be=oe.y-Z.y,Ue=Z.r+oe.r;return .999*Ue*Ue>we*we+Be*Be}function Ih(Z){if(!(oe=Z.children)||!(Ir=oe.length))return;var oe,we=1/0,Be=-1/0,Ue=1/0,We=-1/0,wt,tt,zt,or,lr,Dr,Ir;function oi(Jr){we=Math.min(Jr.x-Jr.r,we),Be=Math.max(Jr.x+Jr.r,Be),Ue=Math.min(Jr.y-Jr.r,Ue),We=Math.max(Jr.y+Jr.r,We)}if(oe.forEach(Wu),wt=oe[0],wt.x=-wt.r,wt.y=0,oi(wt),Ir>1&&(tt=oe[1],tt.x=tt.r,tt.y=0,oi(tt),Ir>2))for(zt=oe[2],hl(wt,tt,zt),oi(zt),pf(wt,zt),wt._pack_prev=zt,pf(zt,tt),tt=wt._pack_next,or=3;or<Ir;or++){hl(wt,tt,zt=oe[or]);var ui=0,qr=1,Kr=1;for(lr=tt._pack_next;lr!==tt;lr=lr._pack_next,qr++)if(Dl(lr,zt)){ui=1;break}if(ui==1)for(Dr=wt._pack_prev;Dr!==lr._pack_prev&&!Dl(Dr,zt);Dr=Dr._pack_prev,Kr++);ui?(qr<Kr||qr==Kr&&tt.r<wt.r?Ph(wt,tt=lr):Ph(wt=Dr,tt),or--):(pf(wt,zt),tt=zt,oi(zt))}var ii=(we+Be)/2,vi=(Ue+We)/2,ci=0;for(or=0;or<Ir;or++)zt=oe[or],zt.x-=ii,zt.y-=vi,ci=Math.max(ci,zt.r+Math.sqrt(zt.x*zt.x+zt.y*zt.y));Z.r=ci,oe.forEach(Rc)}function Wu(Z){Z._pack_next=Z._pack_prev=Z}function Rc(Z){delete Z._pack_next,delete Z._pack_prev}function gc(Z,oe,we,Be){var Ue=Z.children;if(Z.x=oe+=Be*Z.x,Z.y=we+=Be*Z.y,Z.r*=Be,Ue)for(var We=-1,wt=Ue.length;++We<wt;)gc(Ue[We],oe,we,Be)}function hl(Z,oe,we){var Be=Z.r+we.r,Ue=oe.x-Z.x,We=oe.y-Z.y;if(Be&&(Ue||We)){var wt=oe.r+we.r,tt=Ue*Ue+We*We;wt*=wt,Be*=Be;var zt=.5+(Be-wt)/(2*tt),or=Math.sqrt(Math.max(0,2*wt*(Be+tt)-(Be-=tt)*Be-wt*wt))/(2*tt);we.x=Z.x+zt*Ue+or*We,we.y=Z.y+zt*We-or*Ue}else we.x=Z.x+Be,we.y=Z.y}e.layout.tree=function(){var Z=e.layout.hierarchy().sort(null).value(null),oe=iu,we=[1,1],Be=null;function Ue(lr,Dr){var Ir=Z.call(this,lr,Dr),oi=Ir[0],ui=We(oi);if(vc(ui,wt),ui.parent.m=-ui.z,Pc(ui,tt),Be)Pc(oi,or);else{var qr=oi,Kr=oi,ii=oi;Pc(oi,function(un){un.x<qr.x&&(qr=un),un.x>Kr.x&&(Kr=un),un.depth>ii.depth&&(ii=un)});var vi=oe(qr,Kr)/2-qr.x,ci=we[0]/(Kr.x+oe(Kr,qr)/2+vi),Jr=we[1]/(ii.depth||1);Pc(oi,function(un){un.x=(un.x+vi)*ci,un.y=un.depth*Jr})}return Ir}function We(lr){for(var Dr={A:null,children:[lr]},Ir=[Dr],oi;(oi=Ir.pop())!=null;)for(var ui=oi.children,qr,Kr=0,ii=ui.length;Kr<ii;++Kr)Ir.push((ui[Kr]=qr={_:ui[Kr],parent:oi,children:(qr=ui[Kr].children)&&qr.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:Kr}).a=qr);return Dr.children[0]}function wt(lr){var Dr=lr.children,Ir=lr.parent.children,oi=lr.i?Ir[lr.i-1]:null;if(Dr.length){gf(lr);var ui=(Dr[0].z+Dr[Dr.length-1].z)/2;oi?(lr.z=oi.z+oe(lr._,oi._),lr.m=lr.z-ui):lr.z=ui}else oi&&(lr.z=oi.z+oe(lr._,oi._));lr.parent.A=zt(lr,oi,lr.parent.A||Ir[0])}function tt(lr){lr._.x=lr.z+lr.parent.m,lr.m+=lr.parent.m}function zt(lr,Dr,Ir){if(Dr){for(var oi=lr,ui=lr,qr=Dr,Kr=oi.parent.children[0],ii=oi.m,vi=ui.m,ci=qr.m,Jr=Kr.m,un;qr=Yc(qr),oi=mc(oi),qr&&oi;)Kr=mc(Kr),ui=Yc(ui),ui.a=lr,un=qr.z+ci-oi.z-ii+oe(qr._,oi._),un>0&&(nc(gt(qr,lr,Ir),lr,un),ii+=un,vi+=un),ci+=qr.m,ii+=oi.m,Jr+=Kr.m,vi+=ui.m;qr&&!Yc(ui)&&(ui.t=qr,ui.m+=ci-vi),oi&&!mc(Kr)&&(Kr.t=oi,Kr.m+=ii-Jr,Ir=lr)}return Ir}function or(lr){lr.x*=we[0],lr.y=lr.depth*we[1]}return Ue.separation=function(lr){return arguments.length?(oe=lr,Ue):oe},Ue.size=function(lr){return arguments.length?(Be=(we=lr)==null?or:null,Ue):Be?null:we},Ue.nodeSize=function(lr){return arguments.length?(Be=(we=lr)==null?null:or,Ue):Be?we:null},Gu(Ue,Z)};function iu(Z,oe){return Z.parent==oe.parent?1:2}function mc(Z){var oe=Z.children;return oe.length?oe[0]:Z.t}function Yc(Z){var oe=Z.children,we;return(we=oe.length)?oe[we-1]:Z.t}function nc(Z,oe,we){var Be=we/(oe.i-Z.i);oe.c-=Be,oe.s+=we,Z.c+=Be,oe.z+=we,oe.m+=we}function gf(Z){for(var oe=0,we=0,Be=Z.children,Ue=Be.length,We;--Ue>=0;)We=Be[Ue],We.z+=oe,We.m+=oe,oe+=We.s+(we+=We.c)}function gt(Z,oe,we){return Z.a.parent===oe.parent?Z.a:we}e.layout.cluster=function(){var Z=e.layout.hierarchy().sort(null).value(null),oe=iu,we=[1,1],Be=!1;function Ue(We,wt){var tt=Z.call(this,We,wt),zt=tt[0],or,lr=0;vc(zt,function(qr){var Kr=qr.children;Kr&&Kr.length?(qr.x=wr(Kr),qr.y=Bt(Kr)):(qr.x=or?lr+=oe(qr,or):0,qr.y=0,or=qr)});var Dr=vr(zt),Ir=Ur(zt),oi=Dr.x-oe(Dr,Ir)/2,ui=Ir.x+oe(Ir,Dr)/2;return vc(zt,Be?function(qr){qr.x=(qr.x-zt.x)*we[0],qr.y=(zt.y-qr.y)*we[1]}:function(qr){qr.x=(qr.x-oi)/(ui-oi)*we[0],qr.y=(1-(zt.y?qr.y/zt.y:1))*we[1]}),tt}return Ue.separation=function(We){return arguments.length?(oe=We,Ue):oe},Ue.size=function(We){return arguments.length?(Be=(we=We)==null,Ue):Be?null:we},Ue.nodeSize=function(We){return arguments.length?(Be=(we=We)!=null,Ue):Be?we:null},Gu(Ue,Z)};function Bt(Z){return 1+e.max(Z,function(oe){return oe.y})}function wr(Z){return Z.reduce(function(oe,we){return oe+we.x},0)/Z.length}function vr(Z){var oe=Z.children;return oe&&oe.length?vr(oe[0]):Z}function Ur(Z){var oe=Z.children,we;return oe&&(we=oe.length)?Ur(oe[we-1]):Z}e.layout.treemap=function(){var Z=e.layout.hierarchy(),oe=Math.round,we=[1,1],Be=null,Ue=fi,We=!1,wt,tt="squarify",zt=.5*(1+Math.sqrt(5));function or(qr,Kr){for(var ii=-1,vi=qr.length,ci,Jr;++ii<vi;)Jr=(ci=qr[ii]).value*(Kr<0?0:Kr),ci.area=isNaN(Jr)||Jr<=0?0:Jr}function lr(qr){var Kr=qr.children;if(Kr&&Kr.length){var ii=Ue(qr),vi=[],ci=Kr.slice(),Jr,un=1/0,dn,En=tt==="slice"?ii.dx:tt==="dice"?ii.dy:tt==="slice-dice"?qr.depth&1?ii.dy:ii.dx:Math.min(ii.dx,ii.dy),Nn;for(or(ci,ii.dx*ii.dy/qr.value),vi.area=0;(Nn=ci.length)>0;)vi.push(Jr=ci[Nn-1]),vi.area+=Jr.area,tt!=="squarify"||(dn=Ir(vi,En))<=un?(ci.pop(),un=dn):(vi.area-=vi.pop().area,oi(vi,En,ii,!1),En=Math.min(ii.dx,ii.dy),vi.length=vi.area=0,un=1/0);vi.length&&(oi(vi,En,ii,!0),vi.length=vi.area=0),Kr.forEach(lr)}}function Dr(qr){var Kr=qr.children;if(Kr&&Kr.length){var ii=Ue(qr),vi=Kr.slice(),ci,Jr=[];for(or(vi,ii.dx*ii.dy/qr.value),Jr.area=0;ci=vi.pop();)Jr.push(ci),Jr.area+=ci.area,ci.z!=null&&(oi(Jr,ci.z?ii.dx:ii.dy,ii,!vi.length),Jr.length=Jr.area=0);Kr.forEach(Dr)}}function Ir(qr,Kr){for(var ii=qr.area,vi,ci=0,Jr=1/0,un=-1,dn=qr.length;++un<dn;)(vi=qr[un].area)&&(vi<Jr&&(Jr=vi),vi>ci&&(ci=vi));return ii*=ii,Kr*=Kr,ii?Math.max(Kr*ci*zt/ii,ii/(Kr*Jr*zt)):1/0}function oi(qr,Kr,ii,vi){var ci=-1,Jr=qr.length,un=ii.x,dn=ii.y,En=Kr?oe(qr.area/Kr):0,Nn;if(Kr==ii.dx){for((vi||En>ii.dy)&&(En=ii.dy);++ci<Jr;)Nn=qr[ci],Nn.x=un,Nn.y=dn,Nn.dy=En,un+=Nn.dx=Math.min(ii.x+ii.dx-un,En?oe(Nn.area/En):0);Nn.z=!0,Nn.dx+=ii.x+ii.dx-un,ii.y+=En,ii.dy-=En}else{for((vi||En>ii.dx)&&(En=ii.dx);++ci<Jr;)Nn=qr[ci],Nn.x=un,Nn.y=dn,Nn.dx=En,dn+=Nn.dy=Math.min(ii.y+ii.dy-dn,En?oe(Nn.area/En):0);Nn.z=!1,Nn.dy+=ii.y+ii.dy-dn,ii.x+=En,ii.dx-=En}}function ui(qr){var Kr=wt||Z(qr),ii=Kr[0];return ii.x=ii.y=0,ii.value?(ii.dx=we[0],ii.dy=we[1]):ii.dx=ii.dy=0,wt&&Z.revalue(ii),or([ii],ii.dx*ii.dy/ii.value),(wt?Dr:lr)(ii),We&&(wt=Kr),Kr}return ui.size=function(qr){return arguments.length?(we=qr,ui):we},ui.padding=function(qr){if(!arguments.length)return Be;function Kr(ci){var Jr=qr.call(ui,ci,ci.depth);return Jr==null?fi(ci):xi(ci,typeof Jr=="number"?[Jr,Jr,Jr,Jr]:Jr)}function ii(ci){return xi(ci,qr)}var vi;return Ue=(Be=qr)==null?fi:(vi=typeof qr)=="function"?Kr:(vi==="number"&&(qr=[qr,qr,qr,qr]),ii),ui},ui.round=function(qr){return arguments.length?(oe=qr?Math.round:Number,ui):oe!=Number},ui.sticky=function(qr){return arguments.length?(We=qr,wt=null,ui):We},ui.ratio=function(qr){return arguments.length?(zt=qr,ui):zt},ui.mode=function(qr){return arguments.length?(tt=qr+"",ui):tt},Gu(ui,Z)};function fi(Z){return{x:Z.x,y:Z.y,dx:Z.dx,dy:Z.dy}}function xi(Z,oe){var we=Z.x+oe[3],Be=Z.y+oe[0],Ue=Z.dx-oe[1]-oe[3],We=Z.dy-oe[0]-oe[2];return Ue<0&&(we+=Ue/2,Ue=0),We<0&&(Be+=We/2,We=0),{x:we,y:Be,dx:Ue,dy:We}}e.random={normal:function(Z,oe){var we=arguments.length;return we<2&&(oe=1),we<1&&(Z=0),function(){var Be,Ue,We;do Be=Math.random()*2-1,Ue=Math.random()*2-1,We=Be*Be+Ue*Ue;while(!We||We>1);return Z+oe*Be*Math.sqrt(-2*Math.log(We)/We)}},logNormal:function(){var Z=e.random.normal.apply(e,arguments);return function(){return Math.exp(Z())}},bates:function(Z){var oe=e.random.irwinHall(Z);return function(){return oe()/Z}},irwinHall:function(Z){return function(){for(var oe=0,we=0;we<Z;we++)oe+=Math.random();return oe}}},e.scale={};function Fi(Z){var oe=Z[0],we=Z[Z.length-1];return oe<we?[oe,we]:[we,oe]}function Xi(Z){return Z.rangeExtent?Z.rangeExtent():Fi(Z.range())}function hn(Z,oe,we,Be){var Ue=we(Z[0],Z[1]),We=Be(oe[0],oe[1]);return function(wt){return We(Ue(wt))}}function Ti(Z,oe){var we=0,Be=Z.length-1,Ue=Z[we],We=Z[Be],wt;return We<Ue&&(wt=we,we=Be,Be=wt,wt=Ue,Ue=We,We=wt),Z[we]=oe.floor(Ue),Z[Be]=oe.ceil(We),Z}function qi(Z){return Z?{floor:function(oe){return Math.floor(oe/Z)*Z},ceil:function(oe){return Math.ceil(oe/Z)*Z}}:Ii}var Ii={floor:H,ceil:H};function mi(Z,oe,we,Be){var Ue=[],We=[],wt=0,tt=Math.min(Z.length,oe.length)-1;for(Z[tt]<Z[0]&&(Z=Z.slice().reverse(),oe=oe.slice().reverse());++wt<=tt;)Ue.push(we(Z[wt-1],Z[wt])),We.push(Be(oe[wt-1],oe[wt]));return function(zt){var or=e.bisect(Z,zt,1,tt)-1;return We[or](Ue[or](zt))}}e.scale.linear=function(){return Pn([0,1],[0,1],Sl,!1)};function Pn(Z,oe,we,Be){var Ue,We;function wt(){var zt=Math.min(Z.length,oe.length)>2?mi:hn,or=Be?Lu:pd;return Ue=zt(Z,oe,or,we),We=zt(oe,Z,or,Sl),tt}function tt(zt){return Ue(zt)}return tt.invert=function(zt){return We(zt)},tt.domain=function(zt){return arguments.length?(Z=zt.map(Number),wt()):Z},tt.range=function(zt){return arguments.length?(oe=zt,wt()):oe},tt.rangeRound=function(zt){return tt.range(zt).interpolate(rc)},tt.clamp=function(zt){return arguments.length?(Be=zt,wt()):Be},tt.interpolate=function(zt){return arguments.length?(we=zt,wt()):we},tt.ticks=function(zt){return qa(Z,zt)},tt.tickFormat=function(zt,or){return d3_scale_linearTickFormat(Z,zt,or)},tt.nice=function(zt){return Ta(Z,zt),wt()},tt.copy=function(){return Pn(Z,oe,we,Be)},wt()}function Ma(Z,oe){return e.rebind(Z,oe,"range","rangeRound","interpolate","clamp")}function Ta(Z,oe){return Ti(Z,qi(Ea(Z,oe)[2])),Ti(Z,qi(Ea(Z,oe)[2])),Z}function Ea(Z,oe){oe==null&&(oe=10);var we=Fi(Z),Be=we[1]-we[0],Ue=Math.pow(10,Math.floor(Math.log(Be/oe)/Math.LN10)),We=oe/Be*Ue;return We<=.15?Ue*=10:We<=.35?Ue*=5:We<=.75&&(Ue*=2),we[0]=Math.ceil(we[0]/Ue)*Ue,we[1]=Math.floor(we[1]/Ue)*Ue+Ue*.5,we[2]=Ue,we}function qa(Z,oe){return e.range.apply(e,Ea(Z,oe))}var Cn={s:1,g:1,p:1,r:1,e:1};function sn(Z){return-Math.floor(Math.log(Z)/Math.LN10+.01)}function Ua(Z,oe){var we=sn(oe[2]);return Z in Cn?Math.abs(we-sn(Math.max(p(oe[0]),p(oe[1]))))+ +(Z!=="e"):we-(Z==="%")*2}e.scale.log=function(){return mo(e.scale.linear().domain([0,1]),10,!0,[1,10])};function mo(Z,oe,we,Be){function Ue(tt){return(we?Math.log(tt<0?0:tt):-Math.log(tt>0?0:-tt))/Math.log(oe)}function We(tt){return we?Math.pow(oe,tt):-Math.pow(oe,-tt)}function wt(tt){return Z(Ue(tt))}return wt.invert=function(tt){return We(Z.invert(tt))},wt.domain=function(tt){return arguments.length?(we=tt[0]>=0,Z.domain((Be=tt.map(Number)).map(Ue)),wt):Be},wt.base=function(tt){return arguments.length?(oe=+tt,Z.domain(Be.map(Ue)),wt):oe},wt.nice=function(){var tt=Ti(Be.map(Ue),we?Math:Xo);return Z.domain(tt),Be=tt.map(We),wt},wt.ticks=function(){var tt=Fi(Be),zt=[],or=tt[0],lr=tt[1],Dr=Math.floor(Ue(or)),Ir=Math.ceil(Ue(lr)),oi=oe%1?2:oe;if(isFinite(Ir-Dr)){if(we){for(;Dr<Ir;Dr++)for(var ui=1;ui<oi;ui++)zt.push(We(Dr)*ui);zt.push(We(Dr))}else for(zt.push(We(Dr));Dr++<Ir;)for(var ui=oi-1;ui>0;ui--)zt.push(We(Dr)*ui);for(Dr=0;zt[Dr]<or;Dr++);for(Ir=zt.length;zt[Ir-1]>lr;Ir--);zt=zt.slice(Dr,Ir)}return zt},wt.copy=function(){return mo(Z.copy(),oe,we,Be)},Ma(wt,Z)}var Xo={floor:function(Z){return-Math.ceil(-Z)},ceil:function(Z){return-Math.floor(-Z)}};e.scale.pow=function(){return Ts(e.scale.linear(),1,[0,1])};function Ts(Z,oe,we){var Be=Qo(oe),Ue=Qo(1/oe);function We(wt){return Z(Be(wt))}return We.invert=function(wt){return Ue(Z.invert(wt))},We.domain=function(wt){return arguments.length?(Z.domain((we=wt.map(Number)).map(Be)),We):we},We.ticks=function(wt){return qa(we,wt)},We.tickFormat=function(wt,tt){return d3_scale_linearTickFormat(we,wt,tt)},We.nice=function(wt){return We.domain(Ta(we,wt))},We.exponent=function(wt){return arguments.length?(Be=Qo(oe=wt),Ue=Qo(1/oe),Z.domain(we.map(Be)),We):oe},We.copy=function(){return Ts(Z.copy(),oe,we)},Ma(We,Z)}function Qo(Z){return function(oe){return oe<0?-Math.pow(-oe,Z):Math.pow(oe,Z)}}e.scale.sqrt=function(){return e.scale.pow().exponent(.5)},e.scale.ordinal=function(){return ys([],{t:"range",a:[[]]})};function ys(Z,oe){var we,Be,Ue;function We(tt){return Be[((we.get(tt)||(oe.t==="range"?we.set(tt,Z.push(tt)):NaN))-1)%Be.length]}function wt(tt,zt){return e.range(Z.length).map(function(or){return tt+zt*or})}return We.domain=function(tt){if(!arguments.length)return Z;Z=[],we=new A;for(var zt=-1,or=tt.length,lr;++zt<or;)we.has(lr=tt[zt])||we.set(lr,Z.push(lr));return We[oe.t].apply(We,oe.a)},We.range=function(tt){return arguments.length?(Be=tt,Ue=0,oe={t:"range",a:arguments},We):Be},We.rangePoints=function(tt,zt){arguments.length<2&&(zt=0);var or=tt[0],lr=tt[1],Dr=Z.length<2?(or=(or+lr)/2,0):(lr-or)/(Z.length-1+zt);return Be=wt(or+Dr*zt/2,Dr),Ue=0,oe={t:"rangePoints",a:arguments},We},We.rangeRoundPoints=function(tt,zt){arguments.length<2&&(zt=0);var or=tt[0],lr=tt[1],Dr=Z.length<2?(or=lr=Math.round((or+lr)/2),0):(lr-or)/(Z.length-1+zt)|0;return Be=wt(or+Math.round(Dr*zt/2+(lr-or-(Z.length-1+zt)*Dr)/2),Dr),Ue=0,oe={t:"rangeRoundPoints",a:arguments},We},We.rangeBands=function(tt,zt,or){arguments.length<2&&(zt=0),arguments.length<3&&(or=zt);var lr=tt[1]<tt[0],Dr=tt[lr-0],Ir=tt[1-lr],oi=(Ir-Dr)/(Z.length-zt+2*or);return Be=wt(Dr+oi*or,oi),lr&&Be.reverse(),Ue=oi*(1-zt),oe={t:"rangeBands",a:arguments},We},We.rangeRoundBands=function(tt,zt,or){arguments.length<2&&(zt=0),arguments.length<3&&(or=zt);var lr=tt[1]<tt[0],Dr=tt[lr-0],Ir=tt[1-lr],oi=Math.floor((Ir-Dr)/(Z.length-zt+2*or));return Be=wt(Dr+Math.round((Ir-Dr-(Z.length-zt)*oi)/2),oi),lr&&Be.reverse(),Ue=Math.round(oi*(1-zt)),oe={t:"rangeRoundBands",a:arguments},We},We.rangeBand=function(){return Ue},We.rangeExtent=function(){return Fi(oe.a[0])},We.copy=function(){return ys(Z,oe)},We.domain(Z)}e.scale.category10=function(){return e.scale.ordinal().range(Bo)},e.scale.category20=function(){return e.scale.ordinal().range(yl)},e.scale.category20b=function(){return e.scale.ordinal().range(Gs)},e.scale.category20c=function(){return e.scale.ordinal().range(Rs)};var Bo=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(jo),yl=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(jo),Gs=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(jo),Rs=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(jo);e.scale.quantile=function(){return ia([],[])};function ia(Z,oe){var we;function Be(){var We=0,wt=oe.length;for(we=[];++We<wt;)we[We-1]=e.quantile(Z,We/wt);return Ue}function Ue(We){if(!isNaN(We=+We))return oe[e.bisect(we,We)]}return Ue.domain=function(We){return arguments.length?(Z=We.map(h).filter(d).sort(f),Be()):Z},Ue.range=function(We){return arguments.length?(oe=We,Be()):oe},Ue.quantiles=function(){return we},Ue.invertExtent=function(We){return We=oe.indexOf(We),We<0?[NaN,NaN]:[We>0?we[We-1]:Z[0],We<we.length?we[We]:Z[Z.length-1]]},Ue.copy=function(){return ia(Z,oe)},Be()}e.scale.quantize=function(){return Ka(0,1,[0,1])};function Ka(Z,oe,we){var Be,Ue;function We(tt){return we[Math.max(0,Math.min(Ue,Math.floor(Be*(tt-Z))))]}function wt(){return Be=we.length/(oe-Z),Ue=we.length-1,We}return We.domain=function(tt){return arguments.length?(Z=+tt[0],oe=+tt[tt.length-1],wt()):[Z,oe]},We.range=function(tt){return arguments.length?(we=tt,wt()):we},We.invertExtent=function(tt){return tt=we.indexOf(tt),tt=tt<0?NaN:tt/Be+Z,[tt,tt+1/Be]},We.copy=function(){return Ka(Z,oe,we)},wt()}e.scale.threshold=function(){return vs([.5],[0,1])};function vs(Z,oe){function we(Be){if(Be<=Be)return oe[e.bisect(Z,Be)]}return we.domain=function(Be){return arguments.length?(Z=Be,we):Z},we.range=function(Be){return arguments.length?(oe=Be,we):oe},we.invertExtent=function(Be){return Be=oe.indexOf(Be),[Z[Be-1],Z[Be]]},we.copy=function(){return vs(Z,oe)},we}e.scale.identity=function(){return Ko([0,1])};function Ko(Z){function oe(we){return+we}return oe.invert=oe,oe.domain=oe.range=function(we){return arguments.length?(Z=we.map(oe),oe):Z},oe.ticks=function(we){return qa(Z,we)},oe.tickFormat=function(we,Be){return d3_scale_linearTickFormat(Z,we,Be)},oe.copy=function(){return Ko(Z)},oe}e.svg={};function nu(){return 0}e.svg.arc=function(){var Z=ac,oe=mf,we=nu,Be=Ru,Ue=bu,We=Kc,wt=Du;function tt(){var or=Math.max(0,+Z.apply(this,arguments)),lr=Math.max(0,+oe.apply(this,arguments)),Dr=Ue.apply(this,arguments)-xe,Ir=We.apply(this,arguments)-xe,oi=Math.abs(Ir-Dr),ui=Dr>Ir?0:1;if(lr<or&&(qr=lr,lr=or,or=qr),oi>=Le)return zt(lr,ui)+(or?zt(or,1-ui):"")+"Z";var qr,Kr,ii,vi,ci=0,Jr=0,un,dn,En,Nn,ga,ya,so,wa,io=[];if((vi=(+wt.apply(this,arguments)||0)/2)&&(ii=Be===Ru?Math.sqrt(or*or+lr*lr):+Be.apply(this,arguments),ui||(Jr*=-1),lr&&(Jr=Qr(ii/lr*Math.sin(vi))),or&&(ci=Qr(ii/or*Math.sin(vi)))),lr){un=lr*Math.cos(Dr+Jr),dn=lr*Math.sin(Dr+Jr),En=lr*Math.cos(Ir-Jr),Nn=lr*Math.sin(Ir-Jr);var Ss=Math.abs(Ir-Dr-2*Jr)<=Xe?0:1;if(Jr&&Dc(un,dn,En,Nn)===ui^Ss){var _s=(Dr+Ir)/2;un=lr*Math.cos(_s),dn=lr*Math.sin(_s),En=Nn=null}}else un=dn=0;if(or){ga=or*Math.cos(Ir-ci),ya=or*Math.sin(Ir-ci),so=or*Math.cos(Dr+ci),wa=or*Math.sin(Dr+ci);var Ns=Math.abs(Dr-Ir+2*ci)<=Xe?0:1;if(ci&&Dc(ga,ya,so,wa)===1-ui^Ns){var pn=(Dr+Ir)/2;ga=or*Math.cos(pn),ya=or*Math.sin(pn),so=wa=null}}else ga=ya=0;if(oi>Ye&&(qr=Math.min(Math.abs(lr-or)/2,+we.apply(this,arguments)))>.001){Kr=or<lr^ui?0:1;var za=qr,Lo=qr;if(oi<Xe){var Fo=so==null?[ga,ya]:En==null?[un,dn]:cl([un,dn],[so,wa],[En,Nn],[ga,ya]),js=un-Fo[0],xl=dn-Fo[1],fu=En-Fo[0],dl=Nn-Fo[1],xc=1/Math.sin(Math.acos((js*fu+xl*dl)/(Math.sqrt(js*js+xl*xl)*Math.sqrt(fu*fu+dl*dl)))/2),At=Math.sqrt(Fo[0]*Fo[0]+Fo[1]*Fo[1]);Lo=Math.min(qr,(or-At)/(xc-1)),za=Math.min(qr,(lr-At)/(xc+1))}if(En!=null){var Er=Da(so==null?[ga,ya]:[so,wa],[un,dn],lr,za,ui),Wr=Da([En,Nn],[ga,ya],lr,za,ui);qr===za?io.push("M",Er[0],"A",za,",",za," 0 0,",Kr," ",Er[1],"A",lr,",",lr," 0 ",1-ui^Dc(Er[1][0],Er[1][1],Wr[1][0],Wr[1][1]),",",ui," ",Wr[1],"A",za,",",za," 0 0,",Kr," ",Wr[0]):io.push("M",Er[0],"A",za,",",za," 0 1,",Kr," ",Wr[0])}else io.push("M",un,",",dn);if(so!=null){var wi=Da([un,dn],[so,wa],or,-Lo,ui),Ui=Da([ga,ya],En==null?[un,dn]:[En,Nn],or,-Lo,ui);qr===Lo?io.push("L",Ui[0],"A",Lo,",",Lo," 0 0,",Kr," ",Ui[1],"A",or,",",or," 0 ",ui^Dc(Ui[1][0],Ui[1][1],wi[1][0],wi[1][1]),",",1-ui," ",wi[1],"A",Lo,",",Lo," 0 0,",Kr," ",wi[0]):io.push("L",Ui[0],"A",Lo,",",Lo," 0 0,",Kr," ",wi[0])}else io.push("L",ga,",",ya)}else io.push("M",un,",",dn),En!=null&&io.push("A",lr,",",lr," 0 ",Ss,",",ui," ",En,",",Nn),io.push("L",ga,",",ya),so!=null&&io.push("A",or,",",or," 0 ",Ns,",",1-ui," ",so,",",wa);return io.push("Z"),io.join("")}function zt(or,lr){return"M0,"+or+"A"+or+","+or+" 0 1,"+lr+" 0,"+-or+"A"+or+","+or+" 0 1,"+lr+" 0,"+or}return tt.innerRadius=function(or){return arguments.length?(Z=ti(or),tt):Z},tt.outerRadius=function(or){return arguments.length?(oe=ti(or),tt):oe},tt.cornerRadius=function(or){return arguments.length?(we=ti(or),tt):we},tt.padRadius=function(or){return arguments.length?(Be=or==Ru?Ru:ti(or),tt):Be},tt.startAngle=function(or){return arguments.length?(Ue=ti(or),tt):Ue},tt.endAngle=function(or){return arguments.length?(We=ti(or),tt):We},tt.padAngle=function(or){return arguments.length?(wt=ti(or),tt):wt},tt.centroid=function(){var or=(+Z.apply(this,arguments)+ +oe.apply(this,arguments))/2,lr=(+Ue.apply(this,arguments)+ +We.apply(this,arguments))/2-xe;return[Math.cos(lr)*or,Math.sin(lr)*or]},tt};var Ru="auto";function ac(Z){return Z.innerRadius}function mf(Z){return Z.outerRadius}function bu(Z){return Z.startAngle}function Kc(Z){return Z.endAngle}function Du(Z){return Z&&Z.padAngle}function Dc(Z,oe,we,Be){return(Z-we)*oe-(oe-Be)*Z>0?0:1}function Da(Z,oe,we,Be,Ue){var We=Z[0]-oe[0],wt=Z[1]-oe[1],tt=(Ue?Be:-Be)/Math.sqrt(We*We+wt*wt),zt=tt*wt,or=-tt*We,lr=Z[0]+zt,Dr=Z[1]+or,Ir=oe[0]+zt,oi=oe[1]+or,ui=(lr+Ir)/2,qr=(Dr+oi)/2,Kr=Ir-lr,ii=oi-Dr,vi=Kr*Kr+ii*ii,ci=we-Be,Jr=lr*oi-Ir*Dr,un=(ii<0?-1:1)*Math.sqrt(Math.max(0,ci*ci*vi-Jr*Jr)),dn=(Jr*ii-Kr*un)/vi,En=(-Jr*Kr-ii*un)/vi,Nn=(Jr*ii+Kr*un)/vi,ga=(-Jr*Kr+ii*un)/vi,ya=dn-ui,so=En-qr,wa=Nn-ui,io=ga-qr;return ya*ya+so*so>wa*wa+io*io&&(dn=Nn,En=ga),[[dn-zt,En-or],[dn*we/ci,En*we/ci]]}function eo(){return!0}function Jc(Z){var oe=zs,we=ks,Be=eo,Ue=_c,We=Ue.key,wt=.7;function tt(zt){var or=[],lr=[],Dr=-1,Ir=zt.length,oi,ui=ti(oe),qr=ti(we);function Kr(){or.push("M",Ue(Z(lr),wt))}for(;++Dr<Ir;)Be.call(this,oi=zt[Dr],Dr)?lr.push([+ui.call(this,oi,Dr),+qr.call(this,oi,Dr)]):lr.length&&(Kr(),lr=[]);return lr.length&&Kr(),or.length?or.join(""):null}return tt.x=function(zt){return arguments.length?(oe=zt,tt):oe},tt.y=function(zt){return arguments.length?(we=zt,tt):we},tt.defined=function(zt){return arguments.length?(Be=zt,tt):Be},tt.interpolate=function(zt){return arguments.length?(typeof zt=="function"?We=Ue=zt:We=(Ue=yc.get(zt)||_c).key,tt):We},tt.tension=function(zt){return arguments.length?(wt=zt,tt):wt},tt}e.svg.line=function(){return Jc(H)};var yc=e.map({linear:_c,"linear-closed":le,step:w,"step-before":B,"step-after":Q,basis:yt,"basis-open":Ot,"basis-closed":Nt,bundle:hr,cardinal:qe,"cardinal-open":ee,"cardinal-closed":se,monotone:Mt});yc.forEach(function(Z,oe){oe.key=Z,oe.closed=/-closed$/.test(Z)});function _c(Z){return Z.length>1?Z.join("L"):Z+"Z"}function le(Z){return Z.join("L")+"Z"}function w(Z){for(var oe=0,we=Z.length,Be=Z[0],Ue=[Be[0],",",Be[1]];++oe<we;)Ue.push("H",(Be[0]+(Be=Z[oe])[0])/2,"V",Be[1]);return we>1&&Ue.push("H",Be[0]),Ue.join("")}function B(Z){for(var oe=0,we=Z.length,Be=Z[0],Ue=[Be[0],",",Be[1]];++oe<we;)Ue.push("V",(Be=Z[oe])[1],"H",Be[0]);return Ue.join("")}function Q(Z){for(var oe=0,we=Z.length,Be=Z[0],Ue=[Be[0],",",Be[1]];++oe<we;)Ue.push("H",(Be=Z[oe])[0],"V",Be[1]);return Ue.join("")}function ee(Z,oe){return Z.length<4?_c(Z):Z[1]+je(Z.slice(1,-1),it(Z,oe))}function se(Z,oe){return Z.length<3?le(Z):Z[0]+je((Z.push(Z[0]),Z),it([Z[Z.length-2]].concat(Z,[Z[1]]),oe))}function qe(Z,oe){return Z.length<3?_c(Z):Z[0]+je(Z,it(Z,oe))}function je(Z,oe){if(oe.length<1||Z.length!=oe.length&&Z.length!=oe.length+2)return _c(Z);var we=Z.length!=oe.length,Be="",Ue=Z[0],We=Z[1],wt=oe[0],tt=wt,zt=1;if(we&&(Be+="Q"+(We[0]-wt[0]*2/3)+","+(We[1]-wt[1]*2/3)+","+We[0]+","+We[1],Ue=Z[1],zt=2),oe.length>1){tt=oe[1],We=Z[zt],zt++,Be+="C"+(Ue[0]+wt[0])+","+(Ue[1]+wt[1])+","+(We[0]-tt[0])+","+(We[1]-tt[1])+","+We[0]+","+We[1];for(var or=2;or<oe.length;or++,zt++)We=Z[zt],tt=oe[or],Be+="S"+(We[0]-tt[0])+","+(We[1]-tt[1])+","+We[0]+","+We[1]}if(we){var lr=Z[zt];Be+="Q"+(We[0]+tt[0]*2/3)+","+(We[1]+tt[1]*2/3)+","+lr[0]+","+lr[1]}return Be}function it(Z,oe){for(var we=[],Be=(1-oe)/2,Ue,We=Z[0],wt=Z[1],tt=1,zt=Z.length;++tt<zt;)Ue=We,We=wt,wt=Z[tt],we.push([Be*(wt[0]-Ue[0]),Be*(wt[1]-Ue[1])]);return we}function yt(Z){if(Z.length<3)return _c(Z);var oe=1,we=Z.length,Be=Z[0],Ue=Be[0],We=Be[1],wt=[Ue,Ue,Ue,(Be=Z[1])[0]],tt=[We,We,We,Be[1]],zt=[Ue,",",We,"L",Sr(Pe,wt),",",Sr(Pe,tt)];for(Z.push(Z[we-1]);++oe<=we;)Be=Z[oe],wt.shift(),wt.push(Be[0]),tt.shift(),tt.push(Be[1]),Oe(zt,wt,tt);return Z.pop(),zt.push("L",Be),zt.join("")}function Ot(Z){if(Z.length<4)return _c(Z);for(var oe=[],we=-1,Be=Z.length,Ue,We=[0],wt=[0];++we<3;)Ue=Z[we],We.push(Ue[0]),wt.push(Ue[1]);for(oe.push(Sr(Pe,We)+","+Sr(Pe,wt)),--we;++we<Be;)Ue=Z[we],We.shift(),We.push(Ue[0]),wt.shift(),wt.push(Ue[1]),Oe(oe,We,wt);return oe.join("")}function Nt(Z){for(var oe,we=-1,Be=Z.length,Ue=Be+4,We,wt=[],tt=[];++we<4;)We=Z[we%Be],wt.push(We[0]),tt.push(We[1]);for(oe=[Sr(Pe,wt),",",Sr(Pe,tt)],--we;++we<Ue;)We=Z[we%Be],wt.shift(),wt.push(We[0]),tt.shift(),tt.push(We[1]),Oe(oe,wt,tt);return oe.join("")}function hr(Z,oe){var we=Z.length-1;if(we)for(var Be=Z[0][0],Ue=Z[0][1],We=Z[we][0]-Be,wt=Z[we][1]-Ue,tt=-1,zt,or;++tt<=we;)zt=Z[tt],or=tt/we,zt[0]=oe*zt[0]+(1-oe)*(Be+or*We),zt[1]=oe*zt[1]+(1-oe)*(Ue+or*wt);return yt(Z)}function Sr(Z,oe){return Z[0]*oe[0]+Z[1]*oe[1]+Z[2]*oe[2]+Z[3]*oe[3]}var he=[0,2/3,1/3,0],be=[0,1/3,2/3,0],Pe=[0,1/6,2/3,1/6];function Oe(Z,oe,we){Z.push("C",Sr(he,oe),",",Sr(he,we),",",Sr(be,oe),",",Sr(be,we),",",Sr(Pe,oe),",",Sr(Pe,we))}function Je(Z,oe){return(oe[1]-Z[1])/(oe[0]-Z[0])}function He(Z){for(var oe=0,we=Z.length-1,Be=[],Ue=Z[0],We=Z[1],wt=Be[0]=Je(Ue,We);++oe<we;)Be[oe]=(wt+(wt=Je(Ue=We,We=Z[oe+1])))/2;return Be[oe]=wt,Be}function et(Z){for(var oe=[],we,Be,Ue,We,wt=He(Z),tt=-1,zt=Z.length-1;++tt<zt;)we=Je(Z[tt],Z[tt+1]),p(we)<Ye?wt[tt]=wt[tt+1]=0:(Be=wt[tt]/we,Ue=wt[tt+1]/we,We=Be*Be+Ue*Ue,We>9&&(We=we*3/Math.sqrt(We),wt[tt]=We*Be,wt[tt+1]=We*Ue));for(tt=-1;++tt<=zt;)We=(Z[Math.min(zt,tt+1)][0]-Z[Math.max(0,tt-1)][0])/(6*(1+wt[tt]*wt[tt])),oe.push([We||0,wt[tt]*We||0]);return oe}function Mt(Z){return Z.length<3?_c(Z):Z[0]+je(Z,et(Z))}e.svg.line.radial=function(){var Z=Jc(Dt);return Z.radius=Z.x,delete Z.x,Z.angle=Z.y,delete Z.y,Z};function Dt(Z){for(var oe,we=-1,Be=Z.length,Ue,We;++we<Be;)oe=Z[we],Ue=oe[0],We=oe[1]-xe,oe[0]=Ue*Math.cos(We),oe[1]=Ue*Math.sin(We);return Z}function Ut(Z){var oe=zs,we=zs,Be=0,Ue=ks,We=eo,wt=_c,tt=wt.key,zt=wt,or="L",lr=.7;function Dr(Ir){var oi=[],ui=[],qr=[],Kr=-1,ii=Ir.length,vi,ci=ti(oe),Jr=ti(Be),un=oe===we?function(){return En}:ti(we),dn=Be===Ue?function(){return Nn}:ti(Ue),En,Nn;function ga(){oi.push("M",wt(Z(qr),lr),or,zt(Z(ui.reverse()),lr),"Z")}for(;++Kr<ii;)We.call(this,vi=Ir[Kr],Kr)?(ui.push([En=+ci.call(this,vi,Kr),Nn=+Jr.call(this,vi,Kr)]),qr.push([+un.call(this,vi,Kr),+dn.call(this,vi,Kr)])):ui.length&&(ga(),ui=[],qr=[]);return ui.length&&ga(),oi.length?oi.join(""):null}return Dr.x=function(Ir){return arguments.length?(oe=we=Ir,Dr):we},Dr.x0=function(Ir){return arguments.length?(oe=Ir,Dr):oe},Dr.x1=function(Ir){return arguments.length?(we=Ir,Dr):we},Dr.y=function(Ir){return arguments.length?(Be=Ue=Ir,Dr):Ue},Dr.y0=function(Ir){return arguments.length?(Be=Ir,Dr):Be},Dr.y1=function(Ir){return arguments.length?(Ue=Ir,Dr):Ue},Dr.defined=function(Ir){return arguments.length?(We=Ir,Dr):We},Dr.interpolate=function(Ir){return arguments.length?(typeof Ir=="function"?tt=wt=Ir:tt=(wt=yc.get(Ir)||_c).key,zt=wt.reverse||wt,or=wt.closed?"M":"L",Dr):tt},Dr.tension=function(Ir){return arguments.length?(lr=Ir,Dr):lr},Dr}B.reverse=Q,Q.reverse=B,e.svg.area=function(){return Ut(H)},e.svg.area.radial=function(){var Z=Ut(Dt);return Z.radius=Z.x,delete Z.x,Z.innerRadius=Z.x0,delete Z.x0,Z.outerRadius=Z.x1,delete Z.x1,Z.angle=Z.y,delete Z.y,Z.startAngle=Z.y0,delete Z.y0,Z.endAngle=Z.y1,delete Z.y1,Z};function tr(Z){return Z.source}function mr(Z){return Z.target}e.svg.chord=function(){var Z=tr,oe=mr,we=Rr,Be=bu,Ue=Kc;function We(lr,Dr){var Ir=wt(this,Z,lr,Dr),oi=wt(this,oe,lr,Dr);return"M"+Ir.p0+zt(Ir.r,Ir.p1,Ir.a1-Ir.a0)+(tt(Ir,oi)?or(Ir.r,Ir.p1,Ir.r,Ir.p0):or(Ir.r,Ir.p1,oi.r,oi.p0)+zt(oi.r,oi.p1,oi.a1-oi.a0)+or(oi.r,oi.p1,Ir.r,Ir.p0))+"Z"}function wt(lr,Dr,Ir,oi){var ui=Dr.call(lr,Ir,oi),qr=we.call(lr,ui,oi),Kr=Be.call(lr,ui,oi)-xe,ii=Ue.call(lr,ui,oi)-xe;return{r:qr,a0:Kr,a1:ii,p0:[qr*Math.cos(Kr),qr*Math.sin(Kr)],p1:[qr*Math.cos(ii),qr*Math.sin(ii)]}}function tt(lr,Dr){return lr.a0==Dr.a0&&lr.a1==Dr.a1}function zt(lr,Dr,Ir){return"A"+lr+","+lr+" 0 "+ +(Ir>Xe)+",1 "+Dr}function or(lr,Dr,Ir,oi){return"Q 0,0 "+oi}return We.radius=function(lr){return arguments.length?(we=ti(lr),We):we},We.source=function(lr){return arguments.length?(Z=ti(lr),We):Z},We.target=function(lr){return arguments.length?(oe=ti(lr),We):oe},We.startAngle=function(lr){return arguments.length?(Be=ti(lr),We):Be},We.endAngle=function(lr){return arguments.length?(Ue=ti(lr),We):Ue},We};function Rr(Z){return Z.radius}e.svg.diagonal=function(){var Z=tr,oe=mr,we=zr;function Be(Ue,We){var wt=Z.call(this,Ue,We),tt=oe.call(this,Ue,We),zt=(wt.y+tt.y)/2,or=[wt,{x:wt.x,y:zt},{x:tt.x,y:zt},tt];return or=or.map(we),"M"+or[0]+"C"+or[1]+" "+or[2]+" "+or[3]}return Be.source=function(Ue){return arguments.length?(Z=ti(Ue),Be):Z},Be.target=function(Ue){return arguments.length?(oe=ti(Ue),Be):oe},Be.projection=function(Ue){return arguments.length?(we=Ue,Be):we},Be};function zr(Z){return[Z.x,Z.y]}e.svg.diagonal.radial=function(){var Z=e.svg.diagonal(),oe=zr,we=Z.projection;return Z.projection=function(Be){return arguments.length?we(Xr(oe=Be)):oe},Z};function Xr(Z){return function(){var oe=Z.apply(this,arguments),we=oe[0],Be=oe[1]-xe;return[we*Math.cos(Be),we*Math.sin(Be)]}}e.svg.symbol=function(){var Z=Li,oe=di;function we(Be,Ue){return(Qi.get(Z.call(this,Be,Ue))||Ci)(oe.call(this,Be,Ue))}return we.type=function(Be){return arguments.length?(Z=ti(Be),we):Z},we.size=function(Be){return arguments.length?(oe=ti(Be),we):oe},we};function di(){return 64}function Li(){return"circle"}function Ci(Z){var oe=Math.sqrt(Z/Xe);return"M0,"+oe+"A"+oe+","+oe+" 0 1,1 0,"+-oe+"A"+oe+","+oe+" 0 1,1 0,"+oe+"Z"}var Qi=e.map({circle:Ci,cross:function(Z){var oe=Math.sqrt(Z/5)/2;return"M"+-3*oe+","+-oe+"H"+-oe+"V"+-3*oe+"H"+oe+"V"+-oe+"H"+3*oe+"V"+oe+"H"+oe+"V"+3*oe+"H"+-oe+"V"+oe+"H"+-3*oe+"Z"},diamond:function(Z){var oe=Math.sqrt(Z/(2*pa)),we=oe*pa;return"M0,"+-oe+"L"+we+",0 0,"+oe+" "+-we+",0Z"},square:function(Z){var oe=Math.sqrt(Z)/2;return"M"+-oe+","+-oe+"L"+oe+","+-oe+" "+oe+","+oe+" "+-oe+","+oe+"Z"},"triangle-down":function(Z){var oe=Math.sqrt(Z/Mn),we=oe*Mn/2;return"M0,"+we+"L"+oe+","+-we+" "+-oe+","+-we+"Z"},"triangle-up":function(Z){var oe=Math.sqrt(Z/Mn),we=oe*Mn/2;return"M0,"+-we+"L"+oe+","+we+" "+-oe+","+we+"Z"}});e.svg.symbolTypes=Qi.keys();var Mn=Math.sqrt(3),pa=Math.tan(30*Se);Ce.transition=function(Z){for(var oe=Ro||++co,we=po(Z),Be=[],Ue,We,wt=Ds||{time:Date.now(),ease:uu,delay:0,duration:250},tt=-1,zt=this.length;++tt<zt;){Be.push(Ue=[]);for(var or=this[tt],lr=-1,Dr=or.length;++lr<Dr;)(We=or[lr])&&_l(We,lr,we,oe,wt),Ue.push(We)}return To(Be,we,oe)},Ce.interrupt=function(Z){return this.each(Z==null?ea:Ga(po(Z)))};var ea=Ga(po());function Ga(Z){return function(){var oe,we,Be;(oe=this[Z])&&(Be=oe[we=oe.active])&&(Be.timer.c=null,Be.timer.t=NaN,--oe.count?delete oe[we]:delete this[Z],oe.active+=.5,Be.event&&Be.event.interrupt.call(this,this.__data__,Be.index))}}function To(Z,oe,we){return ie(Z,Wa),Z.namespace=oe,Z.id=we,Z}var Wa=[],co=0,Ro,Ds;Wa.call=Ce.call,Wa.empty=Ce.empty,Wa.node=Ce.node,Wa.size=Ce.size,e.transition=function(Z,oe){return Z&&Z.transition?Ro?Z.transition(oe):Z:e.selection().transition(Z)},e.transition.prototype=Wa,Wa.select=function(Z){var oe=this.id,we=this.namespace,Be=[],Ue,We,wt;Z=me(Z);for(var tt=-1,zt=this.length;++tt<zt;){Be.push(Ue=[]);for(var or=this[tt],lr=-1,Dr=or.length;++lr<Dr;)(wt=or[lr])&&(We=Z.call(wt,wt.__data__,lr,tt))?("__data__"in wt&&(We.__data__=wt.__data__),_l(We,lr,we,oe,wt[we][oe]),Ue.push(We)):Ue.push(null)}return To(Be,we,oe)},Wa.selectAll=function(Z){var oe=this.id,we=this.namespace,Be=[],Ue,We,wt,tt,zt;Z=Re(Z);for(var or=-1,lr=this.length;++or<lr;)for(var Dr=this[or],Ir=-1,oi=Dr.length;++Ir<oi;)if(wt=Dr[Ir]){zt=wt[we][oe],We=Z.call(wt,wt.__data__,Ir,or),Be.push(Ue=[]);for(var ui=-1,qr=We.length;++ui<qr;)(tt=We[ui])&&_l(tt,ui,we,oe,zt),Ue.push(tt)}return To(Be,we,oe)},Wa.filter=function(Z){var oe=[],we,Be,Ue;typeof Z!="function"&&(Z=Ke(Z));for(var We=0,wt=this.length;We<wt;We++){oe.push(we=[]);for(var Be=this[We],tt=0,zt=Be.length;tt<zt;tt++)(Ue=Be[tt])&&Z.call(Ue,Ue.__data__,tt,We)&&we.push(Ue)}return To(oe,this.namespace,this.id)},Wa.tween=function(Z,oe){var we=this.id,Be=this.namespace;return arguments.length<2?this.node()[Be][we].tween.get(Z):bt(this,oe==null?function(Ue){Ue[Be][we].tween.remove(Z)}:function(Ue){Ue[Be][we].tween.set(Z,oe)})};function As(Z,oe,we,Be){var Ue=Z.id,We=Z.namespace;return bt(Z,typeof we=="function"?function(wt,tt,zt){wt[We][Ue].tween.set(oe,Be(we.call(wt,wt.__data__,tt,zt)))}:(we=Be(we),function(wt){wt[We][Ue].tween.set(oe,we)}))}Wa.attr=function(Z,oe){if(arguments.length<2){for(oe in Z)this.attr(oe,Z[oe]);return this}var we=Z=="transform"?Cf:Sl,Be=e.ns.qualify(Z);function Ue(){this.removeAttribute(Be)}function We(){this.removeAttributeNS(Be.space,Be.local)}function wt(zt){return zt==null?Ue:(zt+="",function(){var or=this.getAttribute(Be),lr;return or!==zt&&(lr=we(or,zt),function(Dr){this.setAttribute(Be,lr(Dr))})})}function tt(zt){return zt==null?We:(zt+="",function(){var or=this.getAttributeNS(Be.space,Be.local),lr;return or!==zt&&(lr=we(or,zt),function(Dr){this.setAttributeNS(Be.space,Be.local,lr(Dr))})})}return As(this,"attr."+Z,oe,Be.local?tt:wt)},Wa.attrTween=function(Z,oe){var we=e.ns.qualify(Z);function Be(We,wt){var tt=oe.call(this,We,wt,this.getAttribute(we));return tt&&function(zt){this.setAttribute(we,tt(zt))}}function Ue(We,wt){var tt=oe.call(this,We,wt,this.getAttributeNS(we.space,we.local));return tt&&function(zt){this.setAttributeNS(we.space,we.local,tt(zt))}}return this.tween("attr."+Z,we.local?Ue:Be)},Wa.style=function(Z,oe,we){var Be=arguments.length;if(Be<3){if(typeof Z!="string"){Be<2&&(oe="");for(we in Z)this.style(we,Z[we],oe);return this}we=""}function Ue(){this.style.removeProperty(Z)}function We(wt){return wt==null?Ue:(wt+="",function(){var tt=a(this).getComputedStyle(this,null).getPropertyValue(Z),zt;return tt!==wt&&(zt=Sl(tt,wt),function(or){this.style.setProperty(Z,zt(or),we)})})}return As(this,"style."+Z,oe,We)},Wa.styleTween=function(Z,oe,we){arguments.length<3&&(we="");function Be(Ue,We){var wt=oe.call(this,Ue,We,a(this).getComputedStyle(this,null).getPropertyValue(Z));return wt&&function(tt){this.style.setProperty(Z,wt(tt),we)}}return this.tween("style."+Z,Be)},Wa.text=function(Z){return As(this,"text",Z,yo)};function yo(Z){return Z==null&&(Z=""),function(){this.textContent=Z}}Wa.remove=function(){var Z=this.namespace;return this.each("end.transition",function(){var oe;this[Z].count<2&&(oe=this.parentNode)&&oe.removeChild(this)})},Wa.ease=function(Z){var oe=this.id,we=this.namespace;return arguments.length<1?this.node()[we][oe].ease:(typeof Z!="function"&&(Z=e.ease.apply(e,arguments)),bt(this,function(Be){Be[we][oe].ease=Z}))},Wa.delay=function(Z){var oe=this.id,we=this.namespace;return arguments.length<1?this.node()[we][oe].delay:bt(this,typeof Z=="function"?function(Be,Ue,We){Be[we][oe].delay=+Z.call(Be,Be.__data__,Ue,We)}:(Z=+Z,function(Be){Be[we][oe].delay=Z}))},Wa.duration=function(Z){var oe=this.id,we=this.namespace;return arguments.length<1?this.node()[we][oe].duration:bt(this,typeof Z=="function"?function(Be,Ue,We){Be[we][oe].duration=Math.max(1,Z.call(Be,Be.__data__,Ue,We))}:(Z=Math.max(1,Z),function(Be){Be[we][oe].duration=Z}))},Wa.each=function(Z,oe){var we=this.id,Be=this.namespace;if(arguments.length<2){var Ue=Ds,We=Ro;try{Ro=we,bt(this,function(wt,tt,zt){Ds=wt[Be][we],Z.call(wt,wt.__data__,tt,zt)})}finally{Ds=Ue,Ro=We}}else bt(this,function(wt){var tt=wt[Be][we];(tt.event||(tt.event=e.dispatch("start","end","interrupt"))).on(Z,oe)});return this},Wa.transition=function(){for(var Z=this.id,oe=++co,we=this.namespace,Be=[],Ue,We,wt,tt,zt=0,or=this.length;zt<or;zt++){Be.push(Ue=[]);for(var We=this[zt],lr=0,Dr=We.length;lr<Dr;lr++)(wt=We[lr])&&(tt=wt[we][Z],_l(wt,lr,we,oe,{time:tt.time,ease:tt.ease,delay:tt.delay+tt.duration,duration:tt.duration})),Ue.push(wt)}return To(Be,we,oe)};function po(Z){return Z==null?"__transition__":"__transition_"+Z+"__"}function _l(Z,oe,we,Be,Ue){var We=Z[we]||(Z[we]={active:0,count:0}),wt=We[Be],tt,zt,or,lr,Dr;function Ir(qr){var Kr=wt.delay;if(zt.t=Kr+tt,Kr<=qr)return oi(qr-Kr);zt.c=oi}function oi(qr){var Kr=We.active,ii=We[Kr];ii&&(ii.timer.c=null,ii.timer.t=NaN,--We.count,delete We[Kr],ii.event&&ii.event.interrupt.call(Z,Z.__data__,ii.index));for(var vi in We)if(+vi<Be){var ci=We[vi];ci.timer.c=null,ci.timer.t=NaN,--We.count,delete We[vi]}zt.c=ui,Oo(function(){return zt.c&&ui(qr||1)&&(zt.c=null,zt.t=NaN),1},0,tt),We.active=Be,wt.event&&wt.event.start.call(Z,Z.__data__,oe),Dr=[],wt.tween.forEach(function(Jr,un){(un=un.call(Z,Z.__data__,oe))&&Dr.push(un)}),lr=wt.ease,or=wt.duration}function ui(qr){for(var Kr=qr/or,ii=lr(Kr),vi=Dr.length;vi>0;)Dr[--vi].call(Z,ii);if(Kr>=1)return wt.event&&wt.event.end.call(Z,Z.__data__,oe),--We.count?delete We[Be]:delete Z[we],1}wt||(tt=Ue.time,zt=Oo(Ir,0,tt),wt=We[Be]={tween:new A,time:tt,timer:zt,delay:Ue.delay,duration:Ue.duration,ease:Ue.ease,index:oe},Ue=null,++We.count)}e.svg.axis=function(){var Z=e.scale.linear(),oe=Hl,we=6,Be=6,Ue=3,We=[10],wt=null,tt;function zt(or){or.each(function(){var lr=e.select(this),Dr=this.__chart__||Z,Ir=this.__chart__=Z.copy(),oi=wt==null?Ir.ticks?Ir.ticks.apply(Ir,We):Ir.domain():wt,ui=tt==null?Ir.tickFormat?Ir.tickFormat.apply(Ir,We):H:tt,qr=lr.selectAll(".tick").data(oi,Ir),Kr=qr.enter().insert("g",".domain").attr("class","tick").style("opacity",Ye),ii=e.transition(qr.exit()).style("opacity",Ye).remove(),vi=e.transition(qr.order()).style("opacity",1),ci=Math.max(we,0)+Ue,Jr,un=Xi(Ir),dn=lr.selectAll(".domain").data([0]),En=(dn.enter().append("path").attr("class","domain"),e.transition(dn));Kr.append("line"),Kr.append("text");var Nn=Kr.select("line"),ga=vi.select("line"),ya=qr.select("text").text(ui),so=Kr.select("text"),wa=vi.select("text"),io=oe==="top"||oe==="left"?-1:1,Ss,_s,Ns,pn;if(oe==="bottom"||oe==="top"?(Jr=cu,Ss="x",Ns="y",_s="x2",pn="y2",ya.attr("dy",io<0?"0em":".71em").style("text-anchor","middle"),En.attr("d","M"+un[0]+","+io*Be+"V0H"+un[1]+"V"+io*Be)):(Jr=el,Ss="y",Ns="x",_s="y2",pn="x2",ya.attr("dy",".32em").style("text-anchor",io<0?"end":"start"),En.attr("d","M"+io*Be+","+un[0]+"H0V"+un[1]+"H"+io*Be)),Nn.attr(pn,io*we),so.attr(Ns,io*ci),ga.attr(_s,0).attr(pn,io*we),wa.attr(Ss,0).attr(Ns,io*ci),Ir.rangeBand){var za=Ir,Lo=za.rangeBand()/2;Dr=Ir=function(Fo){return za(Fo)+Lo}}else Dr.rangeBand?Dr=Ir:ii.call(Jr,Ir,Dr);Kr.call(Jr,Dr,Ir),vi.call(Jr,Ir,Ir)})}return zt.scale=function(or){return arguments.length?(Z=or,zt):Z},zt.orient=function(or){return arguments.length?(oe=or in Zu?or+"":Hl,zt):oe},zt.ticks=function(){return arguments.length?(We=r(arguments),zt):We},zt.tickValues=function(or){return arguments.length?(wt=or,zt):wt},zt.tickFormat=function(or){return arguments.length?(tt=or,zt):tt},zt.tickSize=function(or){var lr=arguments.length;return lr?(we=+or,Be=+arguments[lr-1],zt):we},zt.innerTickSize=function(or){return arguments.length?(we=+or,zt):we},zt.outerTickSize=function(or){return arguments.length?(Be=+or,zt):Be},zt.tickPadding=function(or){return arguments.length?(Ue=+or,zt):Ue},zt.tickSubdivide=function(){return arguments.length&&zt},zt};var Hl="bottom",Zu={top:1,right:1,bottom:1,left:1};function cu(Z,oe,we){Z.attr("transform",function(Be){var Ue=oe(Be);return"translate("+(isFinite(Ue)?Ue:we(Be))+",0)"})}function el(Z,oe,we){Z.attr("transform",function(Be){var Ue=oe(Be);return"translate(0,"+(isFinite(Ue)?Ue:we(Be))+")"})}e.svg.brush=function(){var Z=ke(lr,"brushstart","brush","brushend"),oe=null,we=null,Be=[0,0],Ue=[0,0],We,wt,tt=!0,zt=!0,or=zc[0];function lr(qr){qr.each(function(){var Kr=e.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",ui).on("touchstart.brush",ui),ii=Kr.selectAll(".background").data([0]);ii.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Kr.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var vi=Kr.selectAll(".resize").data(or,H);vi.exit().remove(),vi.enter().append("g").attr("class",function(dn){return"resize "+dn}).style("cursor",function(dn){return au[dn]}).append("rect").attr("x",function(dn){return/[ew]$/.test(dn)?-3:null}).attr("y",function(dn){return/^[ns]/.test(dn)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),vi.style("display",lr.empty()?"none":null);var ci=e.transition(Kr),Jr=e.transition(ii),un;oe&&(un=Xi(oe),Jr.attr("x",un[0]).attr("width",un[1]-un[0]),Ir(ci)),we&&(un=Xi(we),Jr.attr("y",un[0]).attr("height",un[1]-un[0]),oi(ci)),Dr(ci)})}lr.event=function(qr){qr.each(function(){var Kr=Z.of(this,arguments),ii={x:Be,y:Ue,i:We,j:wt},vi=this.__chart__||ii;this.__chart__=ii,Ro?e.select(this).transition().each("start.brush",function(){We=vi.i,wt=vi.j,Be=vi.x,Ue=vi.y,Kr({type:"brushstart"})}).tween("brush:brush",function(){var ci=ec(Be,ii.x),Jr=ec(Ue,ii.y);return We=wt=null,function(un){Be=ii.x=ci(un),Ue=ii.y=Jr(un),Kr({type:"brush",mode:"resize"})}}).each("end.brush",function(){We=ii.i,wt=ii.j,Kr({type:"brush",mode:"resize"}),Kr({type:"brushend"})}):(Kr({type:"brushstart"}),Kr({type:"brush",mode:"resize"}),Kr({type:"brushend"}))})};function Dr(qr){qr.selectAll(".resize").attr("transform",function(Kr){return"translate("+Be[+/e$/.test(Kr)]+","+Ue[+/^s/.test(Kr)]+")"})}function Ir(qr){qr.select(".extent").attr("x",Be[0]),qr.selectAll(".extent,.n>rect,.s>rect").attr("width",Be[1]-Be[0])}function oi(qr){qr.select(".extent").attr("y",Ue[0]),qr.selectAll(".extent,.e>rect,.w>rect").attr("height",Ue[1]-Ue[0])}function ui(){var qr=this,Kr=e.select(e.event.target),ii=Z.of(qr,arguments),vi=e.select(qr),ci=Kr.datum(),Jr=!/^(n|s)$/.test(ci)&&oe,un=!/^(e|w)$/.test(ci)&&we,dn=Kr.classed("extent"),En=Or(qr),Nn,ga=e.mouse(qr),ya,so=e.select(a(qr)).on("keydown.brush",Ss).on("keyup.brush",_s);if(e.event.changedTouches?so.on("touchmove.brush",Ns).on("touchend.brush",za):so.on("mousemove.brush",Ns).on("mouseup.brush",za),vi.interrupt().selectAll("*").interrupt(),dn)ga[0]=Be[0]-ga[0],ga[1]=Ue[0]-ga[1];else if(ci){var wa=+/w$/.test(ci),io=+/^n/.test(ci);ya=[Be[1-wa]-ga[0],Ue[1-io]-ga[1]],ga[0]=Be[wa],ga[1]=Ue[io]}else e.event.altKey&&(Nn=ga.slice());vi.style("pointer-events","none").selectAll(".resize").style("display",null),e.select("body").style("cursor",Kr.style("cursor")),ii({type:"brushstart"}),Ns();function Ss(){e.event.keyCode==32&&(dn||(Nn=null,ga[0]-=Be[1],ga[1]-=Ue[1],dn=2),_e())}function _s(){e.event.keyCode==32&&dn==2&&(ga[0]+=Be[1],ga[1]+=Ue[1],dn=0,_e())}function Ns(){var Lo=e.mouse(qr),Fo=!1;ya&&(Lo[0]+=ya[0],Lo[1]+=ya[1]),dn||(e.event.altKey?(Nn||(Nn=[(Be[0]+Be[1])/2,(Ue[0]+Ue[1])/2]),ga[0]=Be[+(Lo[0]<Nn[0])],ga[1]=Ue[+(Lo[1]<Nn[1])]):Nn=null),Jr&&pn(Lo,oe,0)&&(Ir(vi),Fo=!0),un&&pn(Lo,we,1)&&(oi(vi),Fo=!0),Fo&&(Dr(vi),ii({type:"brush",mode:dn?"move":"resize"}))}function pn(Lo,Fo,js){var xl=Xi(Fo),fu=xl[0],dl=xl[1],xc=ga[js],At=js?Ue:Be,Er=At[1]-At[0],Wr,wi;if(dn&&(fu-=xc,dl-=Er+xc),Wr=(js?zt:tt)?Math.max(fu,Math.min(dl,Lo[js])):Lo[js],dn?wi=(Wr+=xc)+Er:(Nn&&(xc=Math.max(fu,Math.min(dl,2*Nn[js]-Wr))),xc<Wr?(wi=Wr,Wr=xc):wi=xc),At[0]!=Wr||At[1]!=wi)return js?wt=null:We=null,At[0]=Wr,At[1]=wi,!0}function za(){Ns(),vi.style("pointer-events","all").selectAll(".resize").style("display",lr.empty()?"none":null),e.select("body").style("cursor",null),so.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),En(),ii({type:"brushend"})}}return lr.x=function(qr){return arguments.length?(oe=qr,or=zc[!oe<<1|!we],lr):oe},lr.y=function(qr){return arguments.length?(we=qr,or=zc[!oe<<1|!we],lr):we},lr.clamp=function(qr){return arguments.length?(oe&&we?(tt=!!qr[0],zt=!!qr[1]):oe?tt=!!qr:we&&(zt=!!qr),lr):oe&&we?[tt,zt]:oe?tt:we?zt:null},lr.extent=function(qr){var Kr,ii,vi,ci,Jr;return arguments.length?(oe&&(Kr=qr[0],ii=qr[1],we&&(Kr=Kr[0],ii=ii[0]),We=[Kr,ii],oe.invert&&(Kr=oe(Kr),ii=oe(ii)),ii<Kr&&(Jr=Kr,Kr=ii,ii=Jr),(Kr!=Be[0]||ii!=Be[1])&&(Be=[Kr,ii])),we&&(vi=qr[0],ci=qr[1],oe&&(vi=vi[1],ci=ci[1]),wt=[vi,ci],we.invert&&(vi=we(vi),ci=we(ci)),ci<vi&&(Jr=vi,vi=ci,ci=Jr),(vi!=Ue[0]||ci!=Ue[1])&&(Ue=[vi,ci])),lr):(oe&&(We?(Kr=We[0],ii=We[1]):(Kr=Be[0],ii=Be[1],oe.invert&&(Kr=oe.invert(Kr),ii=oe.invert(ii)),ii<Kr&&(Jr=Kr,Kr=ii,ii=Jr))),we&&(wt?(vi=wt[0],ci=wt[1]):(vi=Ue[0],ci=Ue[1],we.invert&&(vi=we.invert(vi),ci=we.invert(ci)),ci<vi&&(Jr=vi,vi=ci,ci=Jr))),oe&&we?[[Kr,vi],[ii,ci]]:oe?[Kr,ii]:we&&[vi,ci])},lr.clear=function(){return lr.empty()||(Be=[0,0],Ue=[0,0],We=wt=null),lr},lr.empty=function(){return!!oe&&Be[0]==Be[1]||!!we&&Ue[0]==Ue[1]},e.rebind(lr,Z,"on")};var au={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},zc=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];e.text=zi(function(Z){return Z.responseText}),e.json=function(Z,oe){return Yi(Z,"application/json",zl,oe)};function zl(Z){return JSON.parse(Z.responseText)}e.html=function(Z,oe){return Yi(Z,"text/html",Fl,oe)};function Fl(Z){var oe=n.createRange();return oe.selectNode(n.body),oe.createContextualFragment(Z.responseText)}e.xml=zi(function(Z){return Z.responseXML}),typeof r6=="object"&&r6.exports?r6.exports=e:this.d3=e}).apply(self)});var dq=ye((i6,nee)=>{(function(e,t){typeof i6=="object"&&typeof nee!="undefined"?t(i6):(e=e||self,t(e.d3=e.d3||{}))})(i6,function(e){"use strict";var t=new Date,r=new Date;function n(Ke,xt,bt,Lt){function St(Et){return Ke(Et=arguments.length===0?new Date:new Date(+Et)),Et}return St.floor=function(Et){return Ke(Et=new Date(+Et)),Et},St.ceil=function(Et){return Ke(Et=new Date(Et-1)),xt(Et,1),Ke(Et),Et},St.round=function(Et){var dt=St(Et),Ht=St.ceil(Et);return Et-dt<Ht-Et?dt:Ht},St.offset=function(Et,dt){return xt(Et=new Date(+Et),dt==null?1:Math.floor(dt)),Et},St.range=function(Et,dt,Ht){var $t=[],fr;if(Et=St.ceil(Et),Ht=Ht==null?1:Math.floor(Ht),!(Et<dt)||!(Ht>0))return $t;do $t.push(fr=new Date(+Et)),xt(Et,Ht),Ke(Et);while(fr<Et&&Et<dt);return $t},St.filter=function(Et){return n(function(dt){if(dt>=dt)for(;Ke(dt),!Et(dt);)dt.setTime(dt-1)},function(dt,Ht){if(dt>=dt)if(Ht<0)for(;++Ht<=0;)for(;xt(dt,-1),!Et(dt););else for(;--Ht>=0;)for(;xt(dt,1),!Et(dt););})},bt&&(St.count=function(Et,dt){return t.setTime(+Et),r.setTime(+dt),Ke(t),Ke(r),Math.floor(bt(t,r))},St.every=function(Et){return Et=Math.floor(Et),!isFinite(Et)||!(Et>0)?null:Et>1?St.filter(Lt?function(dt){return Lt(dt)%Et===0}:function(dt){return St.count(0,dt)%Et===0}):St}),St}var i=n(function(){},function(Ke,xt){Ke.setTime(+Ke+xt)},function(Ke,xt){return xt-Ke});i.every=function(Ke){return Ke=Math.floor(Ke),!isFinite(Ke)||!(Ke>0)?null:Ke>1?n(function(xt){xt.setTime(Math.floor(xt/Ke)*Ke)},function(xt,bt){xt.setTime(+xt+bt*Ke)},function(xt,bt){return(bt-xt)/Ke}):i};var a=i.range,o=1e3,s=6e4,l=36e5,u=864e5,c=6048e5,f=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds())},function(Ke,xt){Ke.setTime(+Ke+xt*o)},function(Ke,xt){return(xt-Ke)/o},function(Ke){return Ke.getUTCSeconds()}),h=f.range,d=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds()-Ke.getSeconds()*o)},function(Ke,xt){Ke.setTime(+Ke+xt*s)},function(Ke,xt){return(xt-Ke)/s},function(Ke){return Ke.getMinutes()}),v=d.range,x=n(function(Ke){Ke.setTime(Ke-Ke.getMilliseconds()-Ke.getSeconds()*o-Ke.getMinutes()*s)},function(Ke,xt){Ke.setTime(+Ke+xt*l)},function(Ke,xt){return(xt-Ke)/l},function(Ke){return Ke.getHours()}),b=x.range,p=n(function(Ke){Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setDate(Ke.getDate()+xt)},function(Ke,xt){return(xt-Ke-(xt.getTimezoneOffset()-Ke.getTimezoneOffset())*s)/u},function(Ke){return Ke.getDate()-1}),E=p.range;function k(Ke){return n(function(xt){xt.setDate(xt.getDate()-(xt.getDay()+7-Ke)%7),xt.setHours(0,0,0,0)},function(xt,bt){xt.setDate(xt.getDate()+bt*7)},function(xt,bt){return(bt-xt-(bt.getTimezoneOffset()-xt.getTimezoneOffset())*s)/c})}var A=k(0),L=k(1),_=k(2),C=k(3),M=k(4),g=k(5),P=k(6),T=A.range,F=L.range,q=_.range,V=C.range,H=M.range,X=g.range,G=P.range,N=n(function(Ke){Ke.setDate(1),Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setMonth(Ke.getMonth()+xt)},function(Ke,xt){return xt.getMonth()-Ke.getMonth()+(xt.getFullYear()-Ke.getFullYear())*12},function(Ke){return Ke.getMonth()}),W=N.range,re=n(function(Ke){Ke.setMonth(0,1),Ke.setHours(0,0,0,0)},function(Ke,xt){Ke.setFullYear(Ke.getFullYear()+xt)},function(Ke,xt){return xt.getFullYear()-Ke.getFullYear()},function(Ke){return Ke.getFullYear()});re.every=function(Ke){return!isFinite(Ke=Math.floor(Ke))||!(Ke>0)?null:n(function(xt){xt.setFullYear(Math.floor(xt.getFullYear()/Ke)*Ke),xt.setMonth(0,1),xt.setHours(0,0,0,0)},function(xt,bt){xt.setFullYear(xt.getFullYear()+bt*Ke)})};var ae=re.range,_e=n(function(Ke){Ke.setUTCSeconds(0,0)},function(Ke,xt){Ke.setTime(+Ke+xt*s)},function(Ke,xt){return(xt-Ke)/s},function(Ke){return Ke.getUTCMinutes()}),Me=_e.range,ke=n(function(Ke){Ke.setUTCMinutes(0,0,0)},function(Ke,xt){Ke.setTime(+Ke+xt*l)},function(Ke,xt){return(xt-Ke)/l},function(Ke){return Ke.getUTCHours()}),ge=ke.range,ie=n(function(Ke){Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCDate(Ke.getUTCDate()+xt)},function(Ke,xt){return(xt-Ke)/u},function(Ke){return Ke.getUTCDate()-1}),Te=ie.range;function Ee(Ke){return n(function(xt){xt.setUTCDate(xt.getUTCDate()-(xt.getUTCDay()+7-Ke)%7),xt.setUTCHours(0,0,0,0)},function(xt,bt){xt.setUTCDate(xt.getUTCDate()+bt*7)},function(xt,bt){return(bt-xt)/c})}var Ae=Ee(0),ze=Ee(1),Ce=Ee(2),me=Ee(3),Re=Ee(4),ce=Ee(5),Ge=Ee(6),nt=Ae.range,ct=ze.range,qt=Ce.range,rt=me.range,ot=Re.range,Rt=ce.range,kt=Ge.range,Ct=n(function(Ke){Ke.setUTCDate(1),Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCMonth(Ke.getUTCMonth()+xt)},function(Ke,xt){return xt.getUTCMonth()-Ke.getUTCMonth()+(xt.getUTCFullYear()-Ke.getUTCFullYear())*12},function(Ke){return Ke.getUTCMonth()}),Yt=Ct.range,xr=n(function(Ke){Ke.setUTCMonth(0,1),Ke.setUTCHours(0,0,0,0)},function(Ke,xt){Ke.setUTCFullYear(Ke.getUTCFullYear()+xt)},function(Ke,xt){return xt.getUTCFullYear()-Ke.getUTCFullYear()},function(Ke){return Ke.getUTCFullYear()});xr.every=function(Ke){return!isFinite(Ke=Math.floor(Ke))||!(Ke>0)?null:n(function(xt){xt.setUTCFullYear(Math.floor(xt.getUTCFullYear()/Ke)*Ke),xt.setUTCMonth(0,1),xt.setUTCHours(0,0,0,0)},function(xt,bt){xt.setUTCFullYear(xt.getUTCFullYear()+bt*Ke)})};var er=xr.range;e.timeDay=p,e.timeDays=E,e.timeFriday=g,e.timeFridays=X,e.timeHour=x,e.timeHours=b,e.timeInterval=n,e.timeMillisecond=i,e.timeMilliseconds=a,e.timeMinute=d,e.timeMinutes=v,e.timeMonday=L,e.timeMondays=F,e.timeMonth=N,e.timeMonths=W,e.timeSaturday=P,e.timeSaturdays=G,e.timeSecond=f,e.timeSeconds=h,e.timeSunday=A,e.timeSundays=T,e.timeThursday=M,e.timeThursdays=H,e.timeTuesday=_,e.timeTuesdays=q,e.timeWednesday=C,e.timeWednesdays=V,e.timeWeek=A,e.timeWeeks=T,e.timeYear=re,e.timeYears=ae,e.utcDay=ie,e.utcDays=Te,e.utcFriday=ce,e.utcFridays=Rt,e.utcHour=ke,e.utcHours=ge,e.utcMillisecond=i,e.utcMilliseconds=a,e.utcMinute=_e,e.utcMinutes=Me,e.utcMonday=ze,e.utcMondays=ct,e.utcMonth=Ct,e.utcMonths=Yt,e.utcSaturday=Ge,e.utcSaturdays=kt,e.utcSecond=f,e.utcSeconds=h,e.utcSunday=Ae,e.utcSundays=nt,e.utcThursday=Re,e.utcThursdays=ot,e.utcTuesday=Ce,e.utcTuesdays=qt,e.utcWednesday=me,e.utcWednesdays=rt,e.utcWeek=Ae,e.utcWeeks=nt,e.utcYear=xr,e.utcYears=er,Object.defineProperty(e,"__esModule",{value:!0})})});var e3=ye((n6,aee)=>{(function(e,t){typeof n6=="object"&&typeof aee!="undefined"?t(n6,dq()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(n6,function(e,t){"use strict";function r(Ne){if(0<=Ne.y&&Ne.y<100){var Ye=new Date(-1,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L);return Ye.setFullYear(Ne.y),Ye}return new Date(Ne.y,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L)}function n(Ne){if(0<=Ne.y&&Ne.y<100){var Ye=new Date(Date.UTC(-1,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L));return Ye.setUTCFullYear(Ne.y),Ye}return new Date(Date.UTC(Ne.y,Ne.m,Ne.d,Ne.H,Ne.M,Ne.S,Ne.L))}function i(Ne,Ye,Ve){return{y:Ne,m:Ye,d:Ve,H:0,M:0,S:0,L:0}}function a(Ne){var Ye=Ne.dateTime,Ve=Ne.date,Xe=Ne.time,ht=Ne.periods,Le=Ne.days,xe=Ne.shortDays,Se=Ne.months,lt=Ne.shortMonths,Gt=h(ht),Vt=d(ht),ar=h(Le),Qr=d(Le),ai=h(xe),jr=d(xe),ri=h(Se),bi=d(Se),nn=h(lt),Wi=d(lt),Ni={a:Si,A:Mi,b:Pi,B:Gi,c:null,d:N,e:N,f:Me,H:W,I:re,j:ae,L:_e,m:ke,M:ge,p:Ki,q:ka,Q:dt,s:Ht,S:ie,u:Te,U:Ee,V:Ae,w:ze,W:Ce,x:null,X:null,y:me,Y:Re,Z:ce,"%":Et},_n={a:jn,A:la,b:Fa,B:Ra,c:null,d:Ge,e:Ge,f:ot,H:nt,I:ct,j:qt,L:rt,m:Rt,M:kt,p:jo,q:oa,Q:dt,s:Ht,S:Ct,u:Yt,U:xr,V:er,w:Ke,W:xt,x:null,X:null,y:bt,Y:Lt,Z:St,"%":Et},$i={a:jt,A:Zt,b:yr,B:Fr,c:Zr,d:M,e:M,f:V,H:P,I:P,j:g,L:q,m:C,M:T,p:ft,q:_,Q:X,s:G,S:F,u:x,U:b,V:p,w:v,W:E,x:Vr,X:gi,y:A,Y:k,Z:L,"%":H};Ni.x=zn(Ve,Ni),Ni.X=zn(Xe,Ni),Ni.c=zn(Ye,Ni),_n.x=zn(Ve,_n),_n.X=zn(Xe,_n),_n.c=zn(Ye,_n);function zn(Sn,Ha){return function(oo){var xn=[],_t=-1,br=0,Hr=Sn.length,ti,zi,Yi;for(oo instanceof Date||(oo=new Date(+oo));++_t<Hr;)Sn.charCodeAt(_t)===37&&(xn.push(Sn.slice(br,_t)),(zi=o[ti=Sn.charAt(++_t)])!=null?ti=Sn.charAt(++_t):zi=ti==="e"?" ":"0",(Yi=Ha[ti])&&(ti=Yi(oo,zi)),xn.push(ti),br=_t+1);return xn.push(Sn.slice(br,_t)),xn.join("")}}function Wn(Sn,Ha){return function(oo){var xn=i(1900,void 0,1),_t=It(xn,Sn,oo+="",0),br,Hr;if(_t!=oo.length)return null;if("Q"in xn)return new Date(xn.Q);if("s"in xn)return new Date(xn.s*1e3+("L"in xn?xn.L:0));if(Ha&&!("Z"in xn)&&(xn.Z=0),"p"in xn&&(xn.H=xn.H%12+xn.p*12),xn.m===void 0&&(xn.m="q"in xn?xn.q:0),"V"in xn){if(xn.V<1||xn.V>53)return null;"w"in xn||(xn.w=1),"Z"in xn?(br=n(i(xn.y,0,1)),Hr=br.getUTCDay(),br=Hr>4||Hr===0?t.utcMonday.ceil(br):t.utcMonday(br),br=t.utcDay.offset(br,(xn.V-1)*7),xn.y=br.getUTCFullYear(),xn.m=br.getUTCMonth(),xn.d=br.getUTCDate()+(xn.w+6)%7):(br=r(i(xn.y,0,1)),Hr=br.getDay(),br=Hr>4||Hr===0?t.timeMonday.ceil(br):t.timeMonday(br),br=t.timeDay.offset(br,(xn.V-1)*7),xn.y=br.getFullYear(),xn.m=br.getMonth(),xn.d=br.getDate()+(xn.w+6)%7)}else("W"in xn||"U"in xn)&&("w"in xn||(xn.w="u"in xn?xn.u%7:"W"in xn?1:0),Hr="Z"in xn?n(i(xn.y,0,1)).getUTCDay():r(i(xn.y,0,1)).getDay(),xn.m=0,xn.d="W"in xn?(xn.w+6)%7+xn.W*7-(Hr+5)%7:xn.w+xn.U*7-(Hr+6)%7);return"Z"in xn?(xn.H+=xn.Z/100|0,xn.M+=xn.Z%100,n(xn)):r(xn)}}function It(Sn,Ha,oo,xn){for(var _t=0,br=Ha.length,Hr=oo.length,ti,zi;_t<br;){if(xn>=Hr)return-1;if(ti=Ha.charCodeAt(_t++),ti===37){if(ti=Ha.charAt(_t++),zi=$i[ti in o?Ha.charAt(_t++):ti],!zi||(xn=zi(Sn,oo,xn))<0)return-1}else if(ti!=oo.charCodeAt(xn++))return-1}return xn}function ft(Sn,Ha,oo){var xn=Gt.exec(Ha.slice(oo));return xn?(Sn.p=Vt[xn[0].toLowerCase()],oo+xn[0].length):-1}function jt(Sn,Ha,oo){var xn=ai.exec(Ha.slice(oo));return xn?(Sn.w=jr[xn[0].toLowerCase()],oo+xn[0].length):-1}function Zt(Sn,Ha,oo){var xn=ar.exec(Ha.slice(oo));return xn?(Sn.w=Qr[xn[0].toLowerCase()],oo+xn[0].length):-1}function yr(Sn,Ha,oo){var xn=nn.exec(Ha.slice(oo));return xn?(Sn.m=Wi[xn[0].toLowerCase()],oo+xn[0].length):-1}function Fr(Sn,Ha,oo){var xn=ri.exec(Ha.slice(oo));return xn?(Sn.m=bi[xn[0].toLowerCase()],oo+xn[0].length):-1}function Zr(Sn,Ha,oo){return It(Sn,Ye,Ha,oo)}function Vr(Sn,Ha,oo){return It(Sn,Ve,Ha,oo)}function gi(Sn,Ha,oo){return It(Sn,Xe,Ha,oo)}function Si(Sn){return xe[Sn.getDay()]}function Mi(Sn){return Le[Sn.getDay()]}function Pi(Sn){return lt[Sn.getMonth()]}function Gi(Sn){return Se[Sn.getMonth()]}function Ki(Sn){return ht[+(Sn.getHours()>=12)]}function ka(Sn){return 1+~~(Sn.getMonth()/3)}function jn(Sn){return xe[Sn.getUTCDay()]}function la(Sn){return Le[Sn.getUTCDay()]}function Fa(Sn){return lt[Sn.getUTCMonth()]}function Ra(Sn){return Se[Sn.getUTCMonth()]}function jo(Sn){return ht[+(Sn.getUTCHours()>=12)]}function oa(Sn){return 1+~~(Sn.getUTCMonth()/3)}return{format:function(Sn){var Ha=zn(Sn+="",Ni);return Ha.toString=function(){return Sn},Ha},parse:function(Sn){var Ha=Wn(Sn+="",!1);return Ha.toString=function(){return Sn},Ha},utcFormat:function(Sn){var Ha=zn(Sn+="",_n);return Ha.toString=function(){return Sn},Ha},utcParse:function(Sn){var Ha=Wn(Sn+="",!0);return Ha.toString=function(){return Sn},Ha}}}var o={"-":"",_:" ",0:"0"},s=/^\s*\d+/,l=/^%/,u=/[\\^$*+?|[\]().{}]/g;function c(Ne,Ye,Ve){var Xe=Ne<0?"-":"",ht=(Xe?-Ne:Ne)+"",Le=ht.length;return Xe+(Le<Ve?new Array(Ve-Le+1).join(Ye)+ht:ht)}function f(Ne){return Ne.replace(u,"\\$&")}function h(Ne){return new RegExp("^(?:"+Ne.map(f).join("|")+")","i")}function d(Ne){for(var Ye={},Ve=-1,Xe=Ne.length;++Ve<Xe;)Ye[Ne[Ve].toLowerCase()]=Ve;return Ye}function v(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+1));return Xe?(Ne.w=+Xe[0],Ve+Xe[0].length):-1}function x(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+1));return Xe?(Ne.u=+Xe[0],Ve+Xe[0].length):-1}function b(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.U=+Xe[0],Ve+Xe[0].length):-1}function p(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.V=+Xe[0],Ve+Xe[0].length):-1}function E(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.W=+Xe[0],Ve+Xe[0].length):-1}function k(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+4));return Xe?(Ne.y=+Xe[0],Ve+Xe[0].length):-1}function A(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.y=+Xe[0]+(+Xe[0]>68?1900:2e3),Ve+Xe[0].length):-1}function L(Ne,Ye,Ve){var Xe=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ye.slice(Ve,Ve+6));return Xe?(Ne.Z=Xe[1]?0:-(Xe[2]+(Xe[3]||"00")),Ve+Xe[0].length):-1}function _(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+1));return Xe?(Ne.q=Xe[0]*3-3,Ve+Xe[0].length):-1}function C(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.m=Xe[0]-1,Ve+Xe[0].length):-1}function M(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.d=+Xe[0],Ve+Xe[0].length):-1}function g(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+3));return Xe?(Ne.m=0,Ne.d=+Xe[0],Ve+Xe[0].length):-1}function P(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.H=+Xe[0],Ve+Xe[0].length):-1}function T(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.M=+Xe[0],Ve+Xe[0].length):-1}function F(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+2));return Xe?(Ne.S=+Xe[0],Ve+Xe[0].length):-1}function q(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+3));return Xe?(Ne.L=+Xe[0],Ve+Xe[0].length):-1}function V(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve,Ve+6));return Xe?(Ne.L=Math.floor(Xe[0]/1e3),Ve+Xe[0].length):-1}function H(Ne,Ye,Ve){var Xe=l.exec(Ye.slice(Ve,Ve+1));return Xe?Ve+Xe[0].length:-1}function X(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve));return Xe?(Ne.Q=+Xe[0],Ve+Xe[0].length):-1}function G(Ne,Ye,Ve){var Xe=s.exec(Ye.slice(Ve));return Xe?(Ne.s=+Xe[0],Ve+Xe[0].length):-1}function N(Ne,Ye){return c(Ne.getDate(),Ye,2)}function W(Ne,Ye){return c(Ne.getHours(),Ye,2)}function re(Ne,Ye){return c(Ne.getHours()%12||12,Ye,2)}function ae(Ne,Ye){return c(1+t.timeDay.count(t.timeYear(Ne),Ne),Ye,3)}function _e(Ne,Ye){return c(Ne.getMilliseconds(),Ye,3)}function Me(Ne,Ye){return _e(Ne,Ye)+"000"}function ke(Ne,Ye){return c(Ne.getMonth()+1,Ye,2)}function ge(Ne,Ye){return c(Ne.getMinutes(),Ye,2)}function ie(Ne,Ye){return c(Ne.getSeconds(),Ye,2)}function Te(Ne){var Ye=Ne.getDay();return Ye===0?7:Ye}function Ee(Ne,Ye){return c(t.timeSunday.count(t.timeYear(Ne)-1,Ne),Ye,2)}function Ae(Ne,Ye){var Ve=Ne.getDay();return Ne=Ve>=4||Ve===0?t.timeThursday(Ne):t.timeThursday.ceil(Ne),c(t.timeThursday.count(t.timeYear(Ne),Ne)+(t.timeYear(Ne).getDay()===4),Ye,2)}function ze(Ne){return Ne.getDay()}function Ce(Ne,Ye){return c(t.timeMonday.count(t.timeYear(Ne)-1,Ne),Ye,2)}function me(Ne,Ye){return c(Ne.getFullYear()%100,Ye,2)}function Re(Ne,Ye){return c(Ne.getFullYear()%1e4,Ye,4)}function ce(Ne){var Ye=Ne.getTimezoneOffset();return(Ye>0?"-":(Ye*=-1,"+"))+c(Ye/60|0,"0",2)+c(Ye%60,"0",2)}function Ge(Ne,Ye){return c(Ne.getUTCDate(),Ye,2)}function nt(Ne,Ye){return c(Ne.getUTCHours(),Ye,2)}function ct(Ne,Ye){return c(Ne.getUTCHours()%12||12,Ye,2)}function qt(Ne,Ye){return c(1+t.utcDay.count(t.utcYear(Ne),Ne),Ye,3)}function rt(Ne,Ye){return c(Ne.getUTCMilliseconds(),Ye,3)}function ot(Ne,Ye){return rt(Ne,Ye)+"000"}function Rt(Ne,Ye){return c(Ne.getUTCMonth()+1,Ye,2)}function kt(Ne,Ye){return c(Ne.getUTCMinutes(),Ye,2)}function Ct(Ne,Ye){return c(Ne.getUTCSeconds(),Ye,2)}function Yt(Ne){var Ye=Ne.getUTCDay();return Ye===0?7:Ye}function xr(Ne,Ye){return c(t.utcSunday.count(t.utcYear(Ne)-1,Ne),Ye,2)}function er(Ne,Ye){var Ve=Ne.getUTCDay();return Ne=Ve>=4||Ve===0?t.utcThursday(Ne):t.utcThursday.ceil(Ne),c(t.utcThursday.count(t.utcYear(Ne),Ne)+(t.utcYear(Ne).getUTCDay()===4),Ye,2)}function Ke(Ne){return Ne.getUTCDay()}function xt(Ne,Ye){return c(t.utcMonday.count(t.utcYear(Ne)-1,Ne),Ye,2)}function bt(Ne,Ye){return c(Ne.getUTCFullYear()%100,Ye,2)}function Lt(Ne,Ye){return c(Ne.getUTCFullYear()%1e4,Ye,4)}function St(){return"+0000"}function Et(){return"%"}function dt(Ne){return+Ne}function Ht(Ne){return Math.floor(+Ne/1e3)}var $t;fr({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function fr(Ne){return $t=a(Ne),e.timeFormat=$t.format,e.timeParse=$t.parse,e.utcFormat=$t.utcFormat,e.utcParse=$t.utcParse,$t}var _r="%Y-%m-%dT%H:%M:%S.%LZ";function Br(Ne){return Ne.toISOString()}var Or=Date.prototype.toISOString?Br:e.utcFormat(_r);function Nr(Ne){var Ye=new Date(Ne);return isNaN(Ye)?null:Ye}var ut=+new Date("2000-01-01T00:00:00.000Z")?Nr:e.utcParse(_r);e.isoFormat=Or,e.isoParse=ut,e.timeFormatDefaultLocale=fr,e.timeFormatLocale=a,Object.defineProperty(e,"__esModule",{value:!0})})});var vq=ye((a6,oee)=>{(function(e,t){typeof a6=="object"&&typeof oee!="undefined"?t(a6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e.d3=e.d3||{}))})(a6,function(e){"use strict";function t(C){return Math.abs(C=Math.round(C))>=1e21?C.toLocaleString("en").replace(/,/g,""):C.toString(10)}function r(C,M){if((g=(C=M?C.toExponential(M-1):C.toExponential()).indexOf("e"))<0)return null;var g,P=C.slice(0,g);return[P.length>1?P[0]+P.slice(2):P,+C.slice(g+1)]}function n(C){return C=r(Math.abs(C)),C?C[1]:NaN}function i(C,M){return function(g,P){for(var T=g.length,F=[],q=0,V=C[0],H=0;T>0&&V>0&&(H+V+1>P&&(V=Math.max(1,P-H)),F.push(g.substring(T-=V,T+V)),!((H+=V+1)>P));)V=C[q=(q+1)%C.length];return F.reverse().join(M)}}function a(C){return function(M){return M.replace(/[0-9]/g,function(g){return C[+g]})}}var o=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function s(C){if(!(M=o.exec(C)))throw new Error("invalid format: "+C);var M;return new l({fill:M[1],align:M[2],sign:M[3],symbol:M[4],zero:M[5],width:M[6],comma:M[7],precision:M[8]&&M[8].slice(1),trim:M[9],type:M[10]})}s.prototype=l.prototype;function l(C){this.fill=C.fill===void 0?" ":C.fill+"",this.align=C.align===void 0?">":C.align+"",this.sign=C.sign===void 0?"-":C.sign+"",this.symbol=C.symbol===void 0?"":C.symbol+"",this.zero=!!C.zero,this.width=C.width===void 0?void 0:+C.width,this.comma=!!C.comma,this.precision=C.precision===void 0?void 0:+C.precision,this.trim=!!C.trim,this.type=C.type===void 0?"":C.type+""}l.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function u(C){e:for(var M=C.length,g=1,P=-1,T;g<M;++g)switch(C[g]){case".":P=T=g;break;case"0":P===0&&(P=g),T=g;break;default:if(!+C[g])break e;P>0&&(P=0);break}return P>0?C.slice(0,P)+C.slice(T+1):C}var c;function f(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1],F=T-(c=Math.max(-8,Math.min(8,Math.floor(T/3)))*3)+1,q=P.length;return F===q?P:F>q?P+new Array(F-q+1).join("0"):F>0?P.slice(0,F)+"."+P.slice(F):"0."+new Array(1-F).join("0")+r(C,Math.max(0,M+F-1))[0]}function h(C,M){var g=r(C,M);if(!g)return C+"";var P=g[0],T=g[1];return T<0?"0."+new Array(-T).join("0")+P:P.length>T+1?P.slice(0,T+1)+"."+P.slice(T+1):P+new Array(T-P.length+2).join("0")}var d={"%":function(C,M){return(C*100).toFixed(M)},b:function(C){return Math.round(C).toString(2)},c:function(C){return C+""},d:t,e:function(C,M){return C.toExponential(M)},f:function(C,M){return C.toFixed(M)},g:function(C,M){return C.toPrecision(M)},o:function(C){return Math.round(C).toString(8)},p:function(C,M){return h(C*100,M)},r:h,s:f,X:function(C){return Math.round(C).toString(16).toUpperCase()},x:function(C){return Math.round(C).toString(16)}};function v(C){return C}var x=Array.prototype.map,b=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function p(C){var M=C.grouping===void 0||C.thousands===void 0?v:i(x.call(C.grouping,Number),C.thousands+""),g=C.currency===void 0?"":C.currency[0]+"",P=C.currency===void 0?"":C.currency[1]+"",T=C.decimal===void 0?".":C.decimal+"",F=C.numerals===void 0?v:a(x.call(C.numerals,String)),q=C.percent===void 0?"%":C.percent+"",V=C.minus===void 0?"-":C.minus+"",H=C.nan===void 0?"NaN":C.nan+"";function X(N){N=s(N);var W=N.fill,re=N.align,ae=N.sign,_e=N.symbol,Me=N.zero,ke=N.width,ge=N.comma,ie=N.precision,Te=N.trim,Ee=N.type;Ee==="n"?(ge=!0,Ee="g"):d[Ee]||(ie===void 0&&(ie=12),Te=!0,Ee="g"),(Me||W==="0"&&re==="=")&&(Me=!0,W="0",re="=");var Ae=_e==="$"?g:_e==="#"&&/[boxX]/.test(Ee)?"0"+Ee.toLowerCase():"",ze=_e==="$"?P:/[%p]/.test(Ee)?q:"",Ce=d[Ee],me=/[defgprs%]/.test(Ee);ie=ie===void 0?6:/[gprs]/.test(Ee)?Math.max(1,Math.min(21,ie)):Math.max(0,Math.min(20,ie));function Re(ce){var Ge=Ae,nt=ze,ct,qt,rt;if(Ee==="c")nt=Ce(ce)+nt,ce="";else{ce=+ce;var ot=ce<0||1/ce<0;if(ce=isNaN(ce)?H:Ce(Math.abs(ce),ie),Te&&(ce=u(ce)),ot&&+ce==0&&ae!=="+"&&(ot=!1),Ge=(ot?ae==="("?ae:V:ae==="-"||ae==="("?"":ae)+Ge,nt=(Ee==="s"?b[8+c/3]:"")+nt+(ot&&ae==="("?")":""),me){for(ct=-1,qt=ce.length;++ct<qt;)if(rt=ce.charCodeAt(ct),48>rt||rt>57){nt=(rt===46?T+ce.slice(ct+1):ce.slice(ct))+nt,ce=ce.slice(0,ct);break}}}ge&&!Me&&(ce=M(ce,1/0));var Rt=Ge.length+ce.length+nt.length,kt=Rt<ke?new Array(ke-Rt+1).join(W):"";switch(ge&&Me&&(ce=M(kt+ce,kt.length?ke-nt.length:1/0),kt=""),re){case"<":ce=Ge+ce+nt+kt;break;case"=":ce=Ge+kt+ce+nt;break;case"^":ce=kt.slice(0,Rt=kt.length>>1)+Ge+ce+nt+kt.slice(Rt);break;default:ce=kt+Ge+ce+nt;break}return F(ce)}return Re.toString=function(){return N+""},Re}function G(N,W){var re=X((N=s(N),N.type="f",N)),ae=Math.max(-8,Math.min(8,Math.floor(n(W)/3)))*3,_e=Math.pow(10,-ae),Me=b[8+ae/3];return function(ke){return re(_e*ke)+Me}}return{format:X,formatPrefix:G}}var E;k({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function k(C){return E=p(C),e.format=E.format,e.formatPrefix=E.formatPrefix,E}function A(C){return Math.max(0,-n(Math.abs(C)))}function L(C,M){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(n(M)/3)))*3-n(Math.abs(C)))}function _(C,M){return C=Math.abs(C),M=Math.abs(M)-C,Math.max(0,n(M)-n(C))+1}e.FormatSpecifier=l,e.formatDefaultLocale=k,e.formatLocale=p,e.formatSpecifier=s,e.precisionFixed=A,e.precisionPrefix=L,e.precisionRound=_,Object.defineProperty(e,"__esModule",{value:!0})})});var lee=ye((OQt,see)=>{"use strict";see.exports=function(e){for(var t=e.length,r,n=0;n<t;n++)if(r=e.charCodeAt(n),(r<9||r>13)&&r!==32&&r!==133&&r!==160&&r!==5760&&r!==6158&&(r<8192||r>8205)&&r!==8232&&r!==8233&&r!==8239&&r!==8287&&r!==8288&&r!==12288&&r!==65279)return!1;return!0}});var uo=ye((BQt,uee)=>{"use strict";var KQe=lee();uee.exports=function(e){var t=typeof e;if(t==="string"){var r=e;if(e=+e,e===0&&KQe(r))return!1}else if(t!=="number")return!1;return e-e<1}});var es=ye((NQt,cee)=>{"use strict";cee.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}});var pq=ye((o6,fee)=>{(function(e,t){typeof o6=="object"&&typeof fee!="undefined"?t(o6):(e=typeof globalThis!="undefined"?globalThis:e||self,t(e["base64-arraybuffer"]={}))})(o6,function(e){"use strict";for(var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",r=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),n=0;n<t.length;n++)r[t.charCodeAt(n)]=n;var i=function(o){var s=new Uint8Array(o),l,u=s.length,c="";for(l=0;l<u;l+=3)c+=t[s[l]>>2],c+=t[(s[l]&3)<<4|s[l+1]>>4],c+=t[(s[l+1]&15)<<2|s[l+2]>>6],c+=t[s[l+2]&63];return u%3===2?c=c.substring(0,c.length-1)+"=":u%3===1&&(c=c.substring(0,c.length-2)+"=="),c},a=function(o){var s=o.length*.75,l=o.length,u,c=0,f,h,d,v;o[o.length-1]==="="&&(s--,o[o.length-2]==="="&&s--);var x=new ArrayBuffer(s),b=new Uint8Array(x);for(u=0;u<l;u+=4)f=r[o.charCodeAt(u)],h=r[o.charCodeAt(u+1)],d=r[o.charCodeAt(u+2)],v=r[o.charCodeAt(u+3)],b[c++]=f<<2|h>>4,b[c++]=(h&15)<<4|d>>2,b[c++]=(d&3)<<6|v&63;return x};e.decode=a,e.encode=i,Object.defineProperty(e,"__esModule",{value:!0})})});var gy=ye((UQt,hee)=>{"use strict";hee.exports=function(t){return window&&window.process&&window.process.versions?Object.prototype.toString.call(t)==="[object Object]":Object.prototype.toString.call(t)==="[object Object]"&&Object.getPrototypeOf(t).hasOwnProperty("hasOwnProperty")}});var vv=ye(mg=>{"use strict";var JQe=pq().decode,$Qe=gy(),gq=Array.isArray,QQe=ArrayBuffer,eet=DataView;function dee(e){return QQe.isView(e)&&!(e instanceof eet)}mg.isTypedArray=dee;function s6(e){return gq(e)||dee(e)}mg.isArrayOrTypedArray=s6;function tet(e){return!s6(e[0])}mg.isArray1D=tet;mg.ensureArray=function(e,t){return gq(e)||(e=[]),e.length=t,e};var Md={u1c:typeof Uint8ClampedArray=="undefined"?void 0:Uint8ClampedArray,i1:typeof Int8Array=="undefined"?void 0:Int8Array,u1:typeof Uint8Array=="undefined"?void 0:Uint8Array,i2:typeof Int16Array=="undefined"?void 0:Int16Array,u2:typeof Uint16Array=="undefined"?void 0:Uint16Array,i4:typeof Int32Array=="undefined"?void 0:Int32Array,u4:typeof Uint32Array=="undefined"?void 0:Uint32Array,f4:typeof Float32Array=="undefined"?void 0:Float32Array,f8:typeof Float64Array=="undefined"?void 0:Float64Array};Md.uint8c=Md.u1c;Md.uint8=Md.u1;Md.int8=Md.i1;Md.uint16=Md.u2;Md.int16=Md.i2;Md.uint32=Md.u4;Md.int32=Md.i4;Md.float32=Md.f4;Md.float64=Md.f8;function mq(e){return e.constructor===ArrayBuffer}mg.isArrayBuffer=mq;mg.decodeTypedArraySpec=function(e){var t=[],r=ret(e),n=r.dtype,i=Md[n];if(!i)throw new Error('Error in dtype: "'+n+'"');var a=i.BYTES_PER_ELEMENT,o=r.bdata;mq(o)||(o=JQe(o));var s=r.shape===void 0?[o.byteLength/a]:(""+r.shape).split(",");s.reverse();var l=s.length,u,c,f=+s[0],h=a*f,d=0;if(l===1)t=new i(o);else if(l===2)for(u=+s[1],c=0;c<u;c++)t[c]=new i(o,d,f),d+=h;else if(l===3){u=+s[1];for(var v=+s[2],x=0;x<v;x++)for(t[x]=[],c=0;c<u;c++)t[x][c]=new i(o,d,f),d+=h}else throw new Error("ndim: "+l+'is not supported with the shape:"'+r.shape+'"');return t.bdata=r.bdata,t.dtype=r.dtype,t.shape=s.reverse().join(","),e._inputArray=t,t};mg.isTypedArraySpec=function(e){return $Qe(e)&&e.hasOwnProperty("dtype")&&typeof e.dtype=="string"&&e.hasOwnProperty("bdata")&&(typeof e.bdata=="string"||mq(e.bdata))&&(e.shape===void 0||e.hasOwnProperty("shape")&&(typeof e.shape=="string"||typeof e.shape=="number"))};function ret(e){return{bdata:e.bdata,dtype:e.dtype,shape:e.shape}}mg.concat=function(){var e=[],t=!0,r=0,n,i,a,o,s,l,u,c;for(a=0;a<arguments.length;a++)o=arguments[a],l=o.length,l&&(i?e.push(o):(i=o,s=l),gq(o)?n=!1:(t=!1,r?n!==o.constructor&&(n=!1):n=o.constructor),r+=l);if(!r)return[];if(!e.length)return i;if(t)return i.concat.apply(i,e);if(n){for(u=new n(r),u.set(i),a=0;a<e.length;a++)o=e[a],u.set(o,s),s+=o.length;return u}for(u=new Array(r),c=0;c<i.length;c++)u[c]=i[c];for(a=0;a<e.length;a++){for(o=e[a],c=0;c<o.length;c++)u[s+c]=o[c];s+=c}return u};mg.maxRowLength=function(e){return vee(e,Math.max,0)};mg.minRowLength=function(e){return vee(e,Math.min,1/0)};function vee(e,t,r){if(s6(e))if(s6(e[0])){for(var n=r,i=0;i<e.length;i++)n=t(n,e[i].length);return n}else return e.length;return 0}});var ES=ye((HQt,_ee)=>{"use strict";var pee=uo(),_q=vv().isArrayOrTypedArray;_ee.exports=function(t,r){if(pee(r))r=String(r);else if(typeof r!="string"||r.substr(r.length-4)==="[-1]")throw"bad property string";var n=r.split("."),i,a,o,s;for(s=0;s<n.length;s++)if(String(n[s]).slice(0,2)==="__")throw"bad property string";for(s=0;s<n.length;){if(i=String(n[s]).match(/^([^\[\]]*)((\[\-?[0-9]*\])+)$/),i){if(i[1])n[s]=i[1];else if(s===0)n.splice(0,1);else throw"bad property string";for(a=i[2].substr(1,i[2].length-2).split("]["),o=0;o<a.length;o++)s++,n.splice(s,0,Number(a[o]))}s++}return typeof t!="object"?oet(t,r,n):{set:mee(t,n,r),get:gee(t,n),astr:r,parts:n,obj:t}};function gee(e,t){return function(r){var n=e,i,a,o,s,l;for(s=0;s<t.length-1;s++){if(i=t[s],i===-1){for(a=!0,o=[],l=0;l<n.length;l++)o[l]=gee(n[l],t.slice(s+1))(r),o[l]!==o[0]&&(a=!1);return a?o[0]:o}if(typeof i=="number"&&!_q(n)||(n=n[i],typeof n!="object"||n===null))return}if(!(typeof n!="object"||n===null)&&(o=n[t[s]],!(!r&&o===null)))return o}}var iet=/(^|\.)args\[/;function yq(e,t){return e===void 0||e===null&&!t.match(iet)}function mee(e,t,r){return function(n){var i=e,a="",o=[[e,a]],s=yq(n,r),l,u;for(u=0;u<t.length-1;u++){if(l=t[u],typeof l=="number"&&!_q(i))throw"array index but container is not an array";if(l===-1){if(s=!aet(i,t.slice(u+1),n,r),s)break;return}if(!yee(i,l,t[u+1],s))break;if(i=i[l],typeof i!="object"||i===null)throw"container is not an object";a=net(a,l),o.push([i,a])}if(s){if(u===t.length-1&&(delete i[t[u]],Array.isArray(i)&&+t[u]===i.length-1))for(;i.length&&i[i.length-1]===void 0;)i.pop()}else i[t[u]]=n}}function net(e,t){var r=t;return pee(t)?r="["+t+"]":e&&(r="."+t),e+r}function aet(e,t,r,n){var i=_q(r),a=!0,o=r,s=n.replace("-1",0),l=i?!1:yq(r,s),u=t[0],c;for(c=0;c<e.length;c++)s=n.replace("-1",c),i&&(o=r[c%r.length],l=yq(o,s)),l&&(a=!1),yee(e,c,u,l)&&mee(e[c],t,n.replace("-1",c))(o);return a}function yee(e,t,r,n){if(e[t]===void 0){if(n)return!1;typeof r=="number"?e[t]=[]:e[t]={}}return!0}function oet(e,t,r){return{set:function(){throw"bad container"},get:function(){},astr:t,parts:r,obj:e}}});var Tee=ye((GQt,wee)=>{"use strict";var t3=ES(),set=/^\w*$/,uet=0,xee=1,l6=2,bee=3,ob=4;wee.exports=function(t,r,n,i){n=n||"name",i=i||"value";var a,o,s,l={};r&&r.length?(s=t3(t,r),o=s.get()):o=t,r=r||"";var u={};if(o)for(a=0;a<o.length;a++)u[o[a][n]]=a;var c=set.test(i),f={set:function(h,d){var v=d===null?ob:uet;if(!o){if(!s||v===ob)return;o=[],s.set(o)}var x=u[h];if(x===void 0){if(v===ob)return;v=v|bee,x=o.length,u[h]=x}else d!==(c?o[x][i]:t3(o[x],i).get())&&(v=v|l6);var b=o[x]=o[x]||{};return b[n]=h,c?b[i]=d:t3(b,i).set(d),d!==null&&(v=v&~ob),l[x]=l[x]|v,f},get:function(h){if(o){var d=u[h];if(d!==void 0)return c?o[d][i]:t3(o[d],i).get()}},rename:function(h,d){var v=u[h];return v===void 0||(l[v]=l[v]|xee,u[d]=v,delete u[h],o[v][n]=d),f},remove:function(h){var d=u[h];if(d===void 0)return f;var v=o[d];if(Object.keys(v).length>2)return l[d]=l[d]|l6,f.set(h,null);if(c){for(a=d;a<o.length;a++)l[a]=l[a]|bee;for(a=d;a<o.length;a++)u[o[a][n]]--;o.splice(d,1),delete u[h]}else t3(v,i).set(null),l[d]=l[d]|l6|ob;return f},constructUpdate:function(){for(var h,d,v={},x=Object.keys(l),b=0;b<x.length;b++)d=x[b],h=r+"["+d+"]",o[d]?(l[d]&xee&&(v[h+"."+n]=o[d][n]),l[d]&l6&&(c?v[h+"."+i]=l[d]&ob?null:o[d][i]:v[h+"."+i]=l[d]&ob?null:t3(o[d],i).get())):v[h]=null;return v}};return f}});var See=ye((jQt,Aee)=>{"use strict";var cet=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,fet=/^[^\.\[\]]+$/;Aee.exports=function(e,t){for(;t;){var r=e.match(cet);if(r)e=r[1];else if(e.match(fet))e="";else throw new Error("bad relativeAttr call:"+[e,t]);if(t.charAt(0)==="^")t=t.slice(1);else break}return e&&t.charAt(0)!=="["?e+"."+t:e+t}});var u6=ye((WQt,Mee)=>{"use strict";var het=uo();Mee.exports=function(t,r){if(t>0)return Math.log(t)/Math.LN10;var n=Math.log(Math.min(r[0],r[1]))/Math.LN10;return het(n)||(n=Math.log(Math.max(r[0],r[1]))/Math.LN10-6),n}});var Cee=ye((ZQt,kee)=>{"use strict";var Eee=vv().isArrayOrTypedArray,kS=gy();kee.exports=function e(t,r){for(var n in r){var i=r[n],a=t[n];if(a!==i)if(n.charAt(0)==="_"||typeof i=="function"){if(n in t)continue;t[n]=i}else if(Eee(i)&&Eee(a)&&kS(i[0])){if(n==="customdata"||n==="ids")continue;for(var o=Math.min(i.length,a.length),s=0;s<o;s++)a[s]!==i[s]&&kS(i[s])&&kS(a[s])&&e(a[s],i[s])}else kS(i)&&kS(a)&&(e(a,i),Object.keys(a).length||delete t[n])}}});var r3=ye((XQt,Lee)=>{"use strict";function det(e,t){var r=e%t;return r<0?r+t:r}function vet(e,t){return Math.abs(e)>t/2?e-Math.round(e/t)*t:e}Lee.exports={mod:det,modHalf:vet}});var id=ye((YQt,c6)=>{(function(e){var t=/^\s+/,r=/\s+$/,n=0,i=e.round,a=e.min,o=e.max,s=e.random;function l(me,Re){if(me=me||"",Re=Re||{},me instanceof l)return me;if(!(this instanceof l))return new l(me,Re);var ce=u(me);this._originalInput=me,this._r=ce.r,this._g=ce.g,this._b=ce.b,this._a=ce.a,this._roundA=i(100*this._a)/100,this._format=Re.format||ce.format,this._gradientType=Re.gradientType,this._r<1&&(this._r=i(this._r)),this._g<1&&(this._g=i(this._g)),this._b<1&&(this._b=i(this._b)),this._ok=ce.ok,this._tc_id=n++}l.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var me=this.toRgb();return(me.r*299+me.g*587+me.b*114)/1e3},getLuminance:function(){var me=this.toRgb(),Re,ce,Ge,nt,ct,qt;return Re=me.r/255,ce=me.g/255,Ge=me.b/255,Re<=.03928?nt=Re/12.92:nt=e.pow((Re+.055)/1.055,2.4),ce<=.03928?ct=ce/12.92:ct=e.pow((ce+.055)/1.055,2.4),Ge<=.03928?qt=Ge/12.92:qt=e.pow((Ge+.055)/1.055,2.4),.2126*nt+.7152*ct+.0722*qt},setAlpha:function(me){return this._a=N(me),this._roundA=i(100*this._a)/100,this},toHsv:function(){var me=d(this._r,this._g,this._b);return{h:me.h*360,s:me.s,v:me.v,a:this._a}},toHsvString:function(){var me=d(this._r,this._g,this._b),Re=i(me.h*360),ce=i(me.s*100),Ge=i(me.v*100);return this._a==1?"hsv("+Re+", "+ce+"%, "+Ge+"%)":"hsva("+Re+", "+ce+"%, "+Ge+"%, "+this._roundA+")"},toHsl:function(){var me=f(this._r,this._g,this._b);return{h:me.h*360,s:me.s,l:me.l,a:this._a}},toHslString:function(){var me=f(this._r,this._g,this._b),Re=i(me.h*360),ce=i(me.s*100),Ge=i(me.l*100);return this._a==1?"hsl("+Re+", "+ce+"%, "+Ge+"%)":"hsla("+Re+", "+ce+"%, "+Ge+"%, "+this._roundA+")"},toHex:function(me){return x(this._r,this._g,this._b,me)},toHexString:function(me){return"#"+this.toHex(me)},toHex8:function(me){return b(this._r,this._g,this._b,this._a,me)},toHex8String:function(me){return"#"+this.toHex8(me)},toRgb:function(){return{r:i(this._r),g:i(this._g),b:i(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+i(this._r)+", "+i(this._g)+", "+i(this._b)+")":"rgba("+i(this._r)+", "+i(this._g)+", "+i(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:i(W(this._r,255)*100)+"%",g:i(W(this._g,255)*100)+"%",b:i(W(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%)":"rgba("+i(W(this._r,255)*100)+"%, "+i(W(this._g,255)*100)+"%, "+i(W(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:X[x(this._r,this._g,this._b,!0)]||!1},toFilter:function(me){var Re="#"+p(this._r,this._g,this._b,this._a),ce=Re,Ge=this._gradientType?"GradientType = 1, ":"";if(me){var nt=l(me);ce="#"+p(nt._r,nt._g,nt._b,nt._a)}return"progid:DXImageTransform.Microsoft.gradient("+Ge+"startColorstr="+Re+",endColorstr="+ce+")"},toString:function(me){var Re=!!me;me=me||this._format;var ce=!1,Ge=this._a<1&&this._a>=0,nt=!Re&&Ge&&(me==="hex"||me==="hex6"||me==="hex3"||me==="hex4"||me==="hex8"||me==="name");return nt?me==="name"&&this._a===0?this.toName():this.toRgbString():(me==="rgb"&&(ce=this.toRgbString()),me==="prgb"&&(ce=this.toPercentageRgbString()),(me==="hex"||me==="hex6")&&(ce=this.toHexString()),me==="hex3"&&(ce=this.toHexString(!0)),me==="hex4"&&(ce=this.toHex8String(!0)),me==="hex8"&&(ce=this.toHex8String()),me==="name"&&(ce=this.toName()),me==="hsl"&&(ce=this.toHslString()),me==="hsv"&&(ce=this.toHsvString()),ce||this.toHexString())},clone:function(){return l(this.toString())},_applyModification:function(me,Re){var ce=me.apply(null,[this].concat([].slice.call(Re)));return this._r=ce._r,this._g=ce._g,this._b=ce._b,this.setAlpha(ce._a),this},lighten:function(){return this._applyModification(L,arguments)},brighten:function(){return this._applyModification(_,arguments)},darken:function(){return this._applyModification(C,arguments)},desaturate:function(){return this._applyModification(E,arguments)},saturate:function(){return this._applyModification(k,arguments)},greyscale:function(){return this._applyModification(A,arguments)},spin:function(){return this._applyModification(M,arguments)},_applyCombination:function(me,Re){return me.apply(null,[this].concat([].slice.call(Re)))},analogous:function(){return this._applyCombination(q,arguments)},complement:function(){return this._applyCombination(g,arguments)},monochromatic:function(){return this._applyCombination(V,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(P,arguments)},tetrad:function(){return this._applyCombination(T,arguments)}},l.fromRatio=function(me,Re){if(typeof me=="object"){var ce={};for(var Ge in me)me.hasOwnProperty(Ge)&&(Ge==="a"?ce[Ge]=me[Ge]:ce[Ge]=ge(me[Ge]));me=ce}return l(me,Re)};function u(me){var Re={r:0,g:0,b:0},ce=1,Ge=null,nt=null,ct=null,qt=!1,rt=!1;return typeof me=="string"&&(me=ze(me)),typeof me=="object"&&(Ae(me.r)&&Ae(me.g)&&Ae(me.b)?(Re=c(me.r,me.g,me.b),qt=!0,rt=String(me.r).substr(-1)==="%"?"prgb":"rgb"):Ae(me.h)&&Ae(me.s)&&Ae(me.v)?(Ge=ge(me.s),nt=ge(me.v),Re=v(me.h,Ge,nt),qt=!0,rt="hsv"):Ae(me.h)&&Ae(me.s)&&Ae(me.l)&&(Ge=ge(me.s),ct=ge(me.l),Re=h(me.h,Ge,ct),qt=!0,rt="hsl"),me.hasOwnProperty("a")&&(ce=me.a)),ce=N(ce),{ok:qt,format:me.format||rt,r:a(255,o(Re.r,0)),g:a(255,o(Re.g,0)),b:a(255,o(Re.b,0)),a:ce}}function c(me,Re,ce){return{r:W(me,255)*255,g:W(Re,255)*255,b:W(ce,255)*255}}function f(me,Re,ce){me=W(me,255),Re=W(Re,255),ce=W(ce,255);var Ge=o(me,Re,ce),nt=a(me,Re,ce),ct,qt,rt=(Ge+nt)/2;if(Ge==nt)ct=qt=0;else{var ot=Ge-nt;switch(qt=rt>.5?ot/(2-Ge-nt):ot/(Ge+nt),Ge){case me:ct=(Re-ce)/ot+(Re<ce?6:0);break;case Re:ct=(ce-me)/ot+2;break;case ce:ct=(me-Re)/ot+4;break}ct/=6}return{h:ct,s:qt,l:rt}}function h(me,Re,ce){var Ge,nt,ct;me=W(me,360),Re=W(Re,100),ce=W(ce,100);function qt(Rt,kt,Ct){return Ct<0&&(Ct+=1),Ct>1&&(Ct-=1),Ct<1/6?Rt+(kt-Rt)*6*Ct:Ct<1/2?kt:Ct<2/3?Rt+(kt-Rt)*(2/3-Ct)*6:Rt}if(Re===0)Ge=nt=ct=ce;else{var rt=ce<.5?ce*(1+Re):ce+Re-ce*Re,ot=2*ce-rt;Ge=qt(ot,rt,me+1/3),nt=qt(ot,rt,me),ct=qt(ot,rt,me-1/3)}return{r:Ge*255,g:nt*255,b:ct*255}}function d(me,Re,ce){me=W(me,255),Re=W(Re,255),ce=W(ce,255);var Ge=o(me,Re,ce),nt=a(me,Re,ce),ct,qt,rt=Ge,ot=Ge-nt;if(qt=Ge===0?0:ot/Ge,Ge==nt)ct=0;else{switch(Ge){case me:ct=(Re-ce)/ot+(Re<ce?6:0);break;case Re:ct=(ce-me)/ot+2;break;case ce:ct=(me-Re)/ot+4;break}ct/=6}return{h:ct,s:qt,v:rt}}function v(me,Re,ce){me=W(me,360)*6,Re=W(Re,100),ce=W(ce,100);var Ge=e.floor(me),nt=me-Ge,ct=ce*(1-Re),qt=ce*(1-nt*Re),rt=ce*(1-(1-nt)*Re),ot=Ge%6,Rt=[ce,qt,ct,ct,rt,ce][ot],kt=[rt,ce,ce,qt,ct,ct][ot],Ct=[ct,ct,rt,ce,ce,qt][ot];return{r:Rt*255,g:kt*255,b:Ct*255}}function x(me,Re,ce,Ge){var nt=[ke(i(me).toString(16)),ke(i(Re).toString(16)),ke(i(ce).toString(16))];return Ge&&nt[0].charAt(0)==nt[0].charAt(1)&&nt[1].charAt(0)==nt[1].charAt(1)&&nt[2].charAt(0)==nt[2].charAt(1)?nt[0].charAt(0)+nt[1].charAt(0)+nt[2].charAt(0):nt.join("")}function b(me,Re,ce,Ge,nt){var ct=[ke(i(me).toString(16)),ke(i(Re).toString(16)),ke(i(ce).toString(16)),ke(ie(Ge))];return nt&&ct[0].charAt(0)==ct[0].charAt(1)&&ct[1].charAt(0)==ct[1].charAt(1)&&ct[2].charAt(0)==ct[2].charAt(1)&&ct[3].charAt(0)==ct[3].charAt(1)?ct[0].charAt(0)+ct[1].charAt(0)+ct[2].charAt(0)+ct[3].charAt(0):ct.join("")}function p(me,Re,ce,Ge){var nt=[ke(ie(Ge)),ke(i(me).toString(16)),ke(i(Re).toString(16)),ke(i(ce).toString(16))];return nt.join("")}l.equals=function(me,Re){return!me||!Re?!1:l(me).toRgbString()==l(Re).toRgbString()},l.random=function(){return l.fromRatio({r:s(),g:s(),b:s()})};function E(me,Re){Re=Re===0?0:Re||10;var ce=l(me).toHsl();return ce.s-=Re/100,ce.s=re(ce.s),l(ce)}function k(me,Re){Re=Re===0?0:Re||10;var ce=l(me).toHsl();return ce.s+=Re/100,ce.s=re(ce.s),l(ce)}function A(me){return l(me).desaturate(100)}function L(me,Re){Re=Re===0?0:Re||10;var ce=l(me).toHsl();return ce.l+=Re/100,ce.l=re(ce.l),l(ce)}function _(me,Re){Re=Re===0?0:Re||10;var ce=l(me).toRgb();return ce.r=o(0,a(255,ce.r-i(255*-(Re/100)))),ce.g=o(0,a(255,ce.g-i(255*-(Re/100)))),ce.b=o(0,a(255,ce.b-i(255*-(Re/100)))),l(ce)}function C(me,Re){Re=Re===0?0:Re||10;var ce=l(me).toHsl();return ce.l-=Re/100,ce.l=re(ce.l),l(ce)}function M(me,Re){var ce=l(me).toHsl(),Ge=(ce.h+Re)%360;return ce.h=Ge<0?360+Ge:Ge,l(ce)}function g(me){var Re=l(me).toHsl();return Re.h=(Re.h+180)%360,l(Re)}function P(me){var Re=l(me).toHsl(),ce=Re.h;return[l(me),l({h:(ce+120)%360,s:Re.s,l:Re.l}),l({h:(ce+240)%360,s:Re.s,l:Re.l})]}function T(me){var Re=l(me).toHsl(),ce=Re.h;return[l(me),l({h:(ce+90)%360,s:Re.s,l:Re.l}),l({h:(ce+180)%360,s:Re.s,l:Re.l}),l({h:(ce+270)%360,s:Re.s,l:Re.l})]}function F(me){var Re=l(me).toHsl(),ce=Re.h;return[l(me),l({h:(ce+72)%360,s:Re.s,l:Re.l}),l({h:(ce+216)%360,s:Re.s,l:Re.l})]}function q(me,Re,ce){Re=Re||6,ce=ce||30;var Ge=l(me).toHsl(),nt=360/ce,ct=[l(me)];for(Ge.h=(Ge.h-(nt*Re>>1)+720)%360;--Re;)Ge.h=(Ge.h+nt)%360,ct.push(l(Ge));return ct}function V(me,Re){Re=Re||6;for(var ce=l(me).toHsv(),Ge=ce.h,nt=ce.s,ct=ce.v,qt=[],rt=1/Re;Re--;)qt.push(l({h:Ge,s:nt,v:ct})),ct=(ct+rt)%1;return qt}l.mix=function(me,Re,ce){ce=ce===0?0:ce||50;var Ge=l(me).toRgb(),nt=l(Re).toRgb(),ct=ce/100,qt={r:(nt.r-Ge.r)*ct+Ge.r,g:(nt.g-Ge.g)*ct+Ge.g,b:(nt.b-Ge.b)*ct+Ge.b,a:(nt.a-Ge.a)*ct+Ge.a};return l(qt)},l.readability=function(me,Re){var ce=l(me),Ge=l(Re);return(e.max(ce.getLuminance(),Ge.getLuminance())+.05)/(e.min(ce.getLuminance(),Ge.getLuminance())+.05)},l.isReadable=function(me,Re,ce){var Ge=l.readability(me,Re),nt,ct;switch(ct=!1,nt=Ce(ce),nt.level+nt.size){case"AAsmall":case"AAAlarge":ct=Ge>=4.5;break;case"AAlarge":ct=Ge>=3;break;case"AAAsmall":ct=Ge>=7;break}return ct},l.mostReadable=function(me,Re,ce){var Ge=null,nt=0,ct,qt,rt,ot;ce=ce||{},qt=ce.includeFallbackColors,rt=ce.level,ot=ce.size;for(var Rt=0;Rt<Re.length;Rt++)ct=l.readability(me,Re[Rt]),ct>nt&&(nt=ct,Ge=l(Re[Rt]));return l.isReadable(me,Ge,{level:rt,size:ot})||!qt?Ge:(ce.includeFallbackColors=!1,l.mostReadable(me,["#fff","#000"],ce))};var H=l.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},X=l.hexNames=G(H);function G(me){var Re={};for(var ce in me)me.hasOwnProperty(ce)&&(Re[me[ce]]=ce);return Re}function N(me){return me=parseFloat(me),(isNaN(me)||me<0||me>1)&&(me=1),me}function W(me,Re){_e(me)&&(me="100%");var ce=Me(me);return me=a(Re,o(0,parseFloat(me))),ce&&(me=parseInt(me*Re,10)/100),e.abs(me-Re)<1e-6?1:me%Re/parseFloat(Re)}function re(me){return a(1,o(0,me))}function ae(me){return parseInt(me,16)}function _e(me){return typeof me=="string"&&me.indexOf(".")!=-1&&parseFloat(me)===1}function Me(me){return typeof me=="string"&&me.indexOf("%")!=-1}function ke(me){return me.length==1?"0"+me:""+me}function ge(me){return me<=1&&(me=me*100+"%"),me}function ie(me){return e.round(parseFloat(me)*255).toString(16)}function Te(me){return ae(me)/255}var Ee=function(){var me="[-\\+]?\\d+%?",Re="[-\\+]?\\d*\\.\\d+%?",ce="(?:"+Re+")|(?:"+me+")",Ge="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?",nt="[\\s|\\(]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")[,|\\s]+("+ce+")\\s*\\)?";return{CSS_UNIT:new RegExp(ce),rgb:new RegExp("rgb"+Ge),rgba:new RegExp("rgba"+nt),hsl:new RegExp("hsl"+Ge),hsla:new RegExp("hsla"+nt),hsv:new RegExp("hsv"+Ge),hsva:new RegExp("hsva"+nt),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Ae(me){return!!Ee.CSS_UNIT.exec(me)}function ze(me){me=me.replace(t,"").replace(r,"").toLowerCase();var Re=!1;if(H[me])me=H[me],Re=!0;else if(me=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ce;return(ce=Ee.rgb.exec(me))?{r:ce[1],g:ce[2],b:ce[3]}:(ce=Ee.rgba.exec(me))?{r:ce[1],g:ce[2],b:ce[3],a:ce[4]}:(ce=Ee.hsl.exec(me))?{h:ce[1],s:ce[2],l:ce[3]}:(ce=Ee.hsla.exec(me))?{h:ce[1],s:ce[2],l:ce[3],a:ce[4]}:(ce=Ee.hsv.exec(me))?{h:ce[1],s:ce[2],v:ce[3]}:(ce=Ee.hsva.exec(me))?{h:ce[1],s:ce[2],v:ce[3],a:ce[4]}:(ce=Ee.hex8.exec(me))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),a:Te(ce[4]),format:Re?"name":"hex8"}:(ce=Ee.hex6.exec(me))?{r:ae(ce[1]),g:ae(ce[2]),b:ae(ce[3]),format:Re?"name":"hex"}:(ce=Ee.hex4.exec(me))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),a:Te(ce[4]+""+ce[4]),format:Re?"name":"hex8"}:(ce=Ee.hex3.exec(me))?{r:ae(ce[1]+""+ce[1]),g:ae(ce[2]+""+ce[2]),b:ae(ce[3]+""+ce[3]),format:Re?"name":"hex"}:!1}function Ce(me){var Re,ce;return me=me||{level:"AA",size:"small"},Re=(me.level||"AA").toUpperCase(),ce=(me.size||"small").toLowerCase(),Re!=="AA"&&Re!=="AAA"&&(Re="AA"),ce!=="small"&&ce!=="large"&&(ce="small"),{level:Re,size:ce}}typeof c6!="undefined"&&c6.exports?c6.exports=l:window.tinycolor=l})(Math)});var no=ye(PS=>{"use strict";var Pee=gy(),CS=Array.isArray;function pet(e,t){var r,n;for(r=0;r<e.length;r++){if(n=e[r],n!==null&&typeof n=="object")return!1;n!==void 0&&(t[r]=n)}return!0}PS.extendFlat=function(){return LS(arguments,!1,!1,!1)};PS.extendDeep=function(){return LS(arguments,!0,!1,!1)};PS.extendDeepAll=function(){return LS(arguments,!0,!0,!1)};PS.extendDeepNoArrays=function(){return LS(arguments,!0,!1,!0)};function LS(e,t,r,n){var i=e[0],a=e.length,o,s,l,u,c,f,h;if(a===2&&CS(i)&&CS(e[1])&&i.length===0){if(h=pet(e[1],i),h)return i;i.splice(0,i.length)}for(var d=1;d<a;d++){o=e[d];for(s in o)l=i[s],u=o[s],n&&CS(u)?i[s]=u:t&&u&&(Pee(u)||(c=CS(u)))?(c?(c=!1,f=l&&CS(l)?l:[]):f=l&&Pee(l)?l:{},i[s]=LS([f,u],t,r,n)):(typeof u!="undefined"||r)&&(i[s]=u)}return i}});var Su=ye((JQt,Iee)=>{"use strict";Iee.exports=function(e){var t=e.variantValues,r=e.editType,n=e.colorEditType;n===void 0&&(n=r);var i={editType:r,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};e.noNumericWeightValues&&(i.valType="enumerated",i.values=i.extras,i.extras=void 0,i.min=void 0,i.max=void 0);var a={family:{valType:"string",noBlank:!0,strict:!0,editType:r},size:{valType:"number",min:1,editType:r},color:{valType:"color",editType:n},weight:i,style:{editType:r,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:e.noFontVariant?void 0:{editType:r,valType:"enumerated",values:t||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:e.noFontTextcase?void 0:{editType:r,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:e.noFontLineposition?void 0:{editType:r,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:e.noFontShadow?void 0:{editType:r,valType:"string",dflt:e.autoShadowDflt?"auto":"none"},editType:r};return e.autoSize&&(a.size.dflt="auto"),e.autoColor&&(a.color.dflt="auto"),e.arrayOk&&(a.family.arrayOk=!0,a.weight.arrayOk=!0,a.style.arrayOk=!0,e.noFontVariant||(a.variant.arrayOk=!0),e.noFontTextcase||(a.textcase.arrayOk=!0),e.noFontLineposition||(a.lineposition.arrayOk=!0),e.noFontShadow||(a.shadow.arrayOk=!0),a.size.arrayOk=!0,a.color.arrayOk=!0),a}});var IS=ye(($Qt,Ree)=>{"use strict";Ree.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}});var N1=ye((QQt,Fee)=>{"use strict";var Dee=IS(),zee=Su(),xq=zee({editType:"none"});xq.family.dflt=Dee.HOVERFONT;xq.size.dflt=Dee.HOVERFONTSIZE;Fee.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:xq,grouptitlefont:zee({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}});var i3=ye((eer,qee)=>{"use strict";var get=Su(),f6=N1().hoverlabel,h6=no().extendFlat;qee.exports={hoverlabel:{bgcolor:h6({},f6.bgcolor,{arrayOk:!0}),bordercolor:h6({},f6.bordercolor,{arrayOk:!0}),font:get({arrayOk:!0,editType:"none"}),align:h6({},f6.align,{arrayOk:!0}),namelength:h6({},f6.namelength,{arrayOk:!0}),editType:"none"}}});var vl=ye((ter,Oee)=>{"use strict";var met=Su(),yet=i3();Oee.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:met({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:yet.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}});var sb=ye((rer,Uee)=>{"use strict";var _et=id(),d6={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)"]]},Bee=d6.RdBu;function xet(e,t){if(t||(t=Bee),!e)return t;function r(){try{e=d6[e]||JSON.parse(e)}catch(n){e=t}}return typeof e=="string"&&(r(),typeof e=="string"&&r()),Nee(e)?e:t}function Nee(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r<e.length;r++){var n=e[r];if(n.length!==2||+n[0]<t||!_et(n[1]).isValid())return!1;t=+n[0]}return!0}function bet(e){return d6[e]!==void 0?!0:Nee(e)}Uee.exports={scales:d6,defaultScale:Bee,get:xet,isValid:bet}});var dh=ye(lb=>{"use strict";lb.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"];lb.defaultLine="#444";lb.lightLine="#eee";lb.background="#fff";lb.borderLine="#BEC8D9";lb.lightFraction=100*10/11});var va=ye((ner,Vee)=>{"use strict";var xp=id(),wet=uo(),Tet=vv().isTypedArray,nd=Vee.exports={},v6=dh();nd.defaults=v6.defaults;var Aet=nd.defaultLine=v6.defaultLine;nd.lightLine=v6.lightLine;var wq=nd.background=v6.background;nd.tinyRGB=function(e){var t=e.toRgb();return"rgb("+Math.round(t.r)+", "+Math.round(t.g)+", "+Math.round(t.b)+")"};nd.rgb=function(e){return nd.tinyRGB(xp(e))};nd.opacity=function(e){return e?xp(e).getAlpha():0};nd.addOpacity=function(e,t){var r=xp(e).toRgb();return"rgba("+Math.round(r.r)+", "+Math.round(r.g)+", "+Math.round(r.b)+", "+t+")"};nd.combine=function(e,t){var r=xp(e).toRgb();if(r.a===1)return xp(e).toRgbString();var n=xp(t||wq).toRgb(),i=n.a===1?n:{r:255*(1-n.a)+n.r*n.a,g:255*(1-n.a)+n.g*n.a,b:255*(1-n.a)+n.b*n.a},a={r:i.r*(1-r.a)+r.r*r.a,g:i.g*(1-r.a)+r.g*r.a,b:i.b*(1-r.a)+r.b*r.a};return xp(a).toRgbString()};nd.interpolate=function(e,t,r){var n=xp(e).toRgb(),i=xp(t).toRgb(),a={r:r*n.r+(1-r)*i.r,g:r*n.g+(1-r)*i.g,b:r*n.b+(1-r)*i.b};return xp(a).toRgbString()};nd.contrast=function(e,t,r){var n=xp(e);n.getAlpha()!==1&&(n=xp(nd.combine(e,wq)));var i=n.isDark()?t?n.lighten(t):wq:r?n.darken(r):Aet;return i.toString()};nd.stroke=function(e,t){var r=xp(t);e.style({stroke:nd.tinyRGB(r),"stroke-opacity":r.getAlpha()})};nd.fill=function(e,t){var r=xp(t);e.style({fill:nd.tinyRGB(r),"fill-opacity":r.getAlpha()})};nd.clean=function(e){if(!(!e||typeof e!="object")){var t=Object.keys(e),r,n,i,a;for(r=0;r<t.length;r++)if(i=t[r],a=e[i],i.substr(i.length-5)==="color")if(Array.isArray(a))for(n=0;n<a.length;n++)a[n]=bq(a[n]);else e[i]=bq(a);else if(i.substr(i.length-10)==="colorscale"&&Array.isArray(a))for(n=0;n<a.length;n++)Array.isArray(a[n])&&(a[n][1]=bq(a[n][1]));else if(Array.isArray(a)){var o=a[0];if(!Array.isArray(o)&&o&&typeof o=="object")for(n=0;n<a.length;n++)nd.clean(a[n])}else a&&typeof a=="object"&&!Tet(a)&&nd.clean(a)}};function bq(e){if(wet(e)||typeof e!="string")return e;var t=e.trim();if(t.substr(0,3)!=="rgb")return e;var r=t.match(/^rgba?\s*\(([^()]*)\)$/);if(!r)return e;var n=r[1].trim().split(/\s*[\s,]\s*/),i=t.charAt(3)==="a"&&n.length===4;if(!i&&n.length!==3)return e;for(var a=0;a<n.length;a++){if(!n[a].length||(n[a]=Number(n[a]),!(n[a]>=0)))return e;if(a===3)n[a]>1&&(n[a]=1);else if(n[a]>=1)return e}var o=Math.round(n[0]*255)+", "+Math.round(n[1]*255)+", "+Math.round(n[2]*255);return i?"rgba("+o+", "+n[3]+")":"rgb("+o+")"}});var U1=ye((aer,Hee)=>{"use strict";Hee.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}});var n3=ye(Gee=>{"use strict";Gee.counter=function(e,t,r,n){var i=(t||"")+(r?"":"$"),a=n===!1?"":"^";return e==="xy"?new RegExp(a+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+i):new RegExp(a+e+"([2-9]|[1-9][0-9]+)?"+i)}});var Xee=ye(bp=>{"use strict";var Tq=uo(),jee=id(),Wee=no().extendFlat,Met=vl(),Eet=sb(),ket=va(),Cet=U1().DESELECTDIM,a3=ES(),Zee=n3().counter,Let=r3().modHalf,dm=vv().isArrayOrTypedArray,V1=vv().isTypedArraySpec,H1=vv().decodeTypedArraySpec;bp.valObjectMeta={data_array:{coerceFunction:function(e,t,r){t.set(dm(e)?e:V1(e)?H1(e):r)}},enumerated:{coerceFunction:function(e,t,r,n){n.coerceNumber&&(e=+e),n.values.indexOf(e)===-1?t.set(r):t.set(e)},validateFunction:function(e,t){t.coerceNumber&&(e=+e);for(var r=t.values,n=0;n<r.length;n++){var i=String(r[n]);if(i.charAt(0)==="/"&&i.charAt(i.length-1)==="/"){var a=new RegExp(i.substr(1,i.length-2));if(a.test(e))return!0}else if(e===r[n])return!0}return!1}},boolean:{coerceFunction:function(e,t,r){e===!0||e===!1?t.set(e):t.set(r)}},number:{coerceFunction:function(e,t,r,n){V1(e)&&(e=H1(e)),!Tq(e)||n.min!==void 0&&e<n.min||n.max!==void 0&&e>n.max?t.set(r):t.set(+e)}},integer:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}V1(e)&&(e=H1(e)),e%1||!Tq(e)||n.min!==void 0&&e<n.min||n.max!==void 0&&e>n.max?t.set(r):t.set(+e)}},string:{coerceFunction:function(e,t,r,n){if(typeof e!="string"){var i=typeof e=="number";n.strict===!0||!i?t.set(r):t.set(String(e))}else n.noBlank&&!e?t.set(r):t.set(e)}},color:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),jee(e).isValid()?t.set(e):t.set(r)}},colorlist:{coerceFunction:function(e,t,r){function n(i){return jee(i).isValid()}!Array.isArray(e)||!e.length?t.set(r):e.every(n)?t.set(e):t.set(r)}},colorscale:{coerceFunction:function(e,t,r){t.set(Eet.get(e,r))}},angle:{coerceFunction:function(e,t,r){V1(e)&&(e=H1(e)),e==="auto"?t.set("auto"):Tq(e)?t.set(Let(+e,360)):t.set(r)}},subplotid:{coerceFunction:function(e,t,r,n){var i=n.regex||Zee(r);if(typeof e=="string"&&i.test(e)){t.set(e);return}t.set(r)},validateFunction:function(e,t){var r=t.dflt;return e===r?!0:typeof e!="string"?!1:!!Zee(r).test(e)}},flaglist:{coerceFunction:function(e,t,r,n){if((n.extras||[]).indexOf(e)!==-1){t.set(e);return}if(typeof e!="string"){t.set(r);return}for(var i=e.split("+"),a=0;a<i.length;){var o=i[a];n.flags.indexOf(o)===-1||i.indexOf(o)<a?i.splice(a,1):a++}i.length?t.set(i.join("+")):t.set(r)}},any:{coerceFunction:function(e,t,r){e===void 0?t.set(r):t.set(V1(e)?H1(e):e)}},info_array:{coerceFunction:function(e,t,r,n){function i(E,k,A){var L,_={set:function(C){L=C}};return A===void 0&&(A=k.dflt),bp.valObjectMeta[k.valType].coerceFunction(E,_,A,k),L}if(V1(e)&&(e=H1(e)),!dm(e)){t.set(r);return}var a=n.dimensions===2||n.dimensions==="1-2"&&Array.isArray(e)&&dm(e[0]),o=n.items,s=[],l=Array.isArray(o),u=l&&a&&dm(o[0]),c=a&&l&&!u,f=l&&!c?o.length:e.length,h,d,v,x,b,p;if(r=Array.isArray(r)?r:[],a)for(h=0;h<f;h++)for(s[h]=[],v=dm(e[h])?e[h]:[],c?b=o.length:l?b=o[h].length:b=v.length,d=0;d<b;d++)c?x=o[d]:l?x=o[h][d]:x=o,p=i(v[d],x,(r[h]||[])[d]),p!==void 0&&(s[h][d]=p);else for(h=0;h<f;h++)p=i(e[h],l?o[h]:o,r[h]),p!==void 0&&(s[h]=p);t.set(s)},validateFunction:function(e,t){if(!dm(e))return!1;var r=t.items,n=Array.isArray(r),i=t.dimensions===2;if(!t.freeLength&&e.length!==r.length)return!1;for(var a=0;a<e.length;a++)if(i){if(!dm(e[a])||!t.freeLength&&e[a].length!==r[a].length)return!1;for(var o=0;o<e[a].length;o++)if(!p6(e[a][o],n?r[a][o]:r))return!1}else if(!p6(e[a],n?r[a]:r))return!1;return!0}}};bp.coerce=function(e,t,r,n,i){var a=a3(r,n).get(),o=a3(e,n),s=a3(t,n),l=o.get(),u=t._template;if(l===void 0&&u&&(l=a3(u,n).get(),u=0),i===void 0&&(i=a.dflt),a.arrayOk){if(dm(l))return s.set(l),l;if(V1(l))return l=H1(l),s.set(l),l}var c=bp.valObjectMeta[a.valType].coerceFunction;c(l,s,i,a);var f=s.get();return u&&f===i&&!p6(l,a)&&(l=a3(u,n).get(),c(l,s,i,a),f=s.get()),f};bp.coerce2=function(e,t,r,n,i){var a=a3(e,n),o=bp.coerce(e,t,r,n,i),s=a.get();return s!=null?o:!1};bp.coerceFont=function(e,t,r,n){n||(n={}),r=Wee({},r),r=Wee(r,n.overrideDflt||{});var i={family:e(t+".family",r.family),size:e(t+".size",r.size),color:e(t+".color",r.color),weight:e(t+".weight",r.weight),style:e(t+".style",r.style)};if(n.noFontVariant||(i.variant=e(t+".variant",r.variant)),n.noFontLineposition||(i.lineposition=e(t+".lineposition",r.lineposition)),n.noFontTextcase||(i.textcase=e(t+".textcase",r.textcase)),!n.noFontShadow){var a=r.shadow;a==="none"&&n.autoShadowDflt&&(a="auto"),i.shadow=e(t+".shadow",a)}return i};bp.coercePattern=function(e,t,r,n){var i=e(t+".shape");if(i){e(t+".solidity"),e(t+".size");var a=e(t+".fillmode"),o=a==="overlay";if(!n){var s=e(t+".bgcolor",o?r:void 0);e(t+".fgcolor",o?ket.contrast(s):r)}e(t+".fgopacity",o?.5:1)}};bp.coerceHoverinfo=function(e,t,r){var n=t._module.attributes,i=n.hoverinfo?n:Met,a=i.hoverinfo,o;if(r._dataLength===1){var s=a.dflt==="all"?a.flags.slice():a.dflt.split("+");s.splice(s.indexOf("name"),1),o=s.join("+")}return bp.coerce(e,t,i,"hoverinfo",o)};bp.coerceSelectionMarkerOpacity=function(e,t){if(e.marker){var r=e.marker.opacity;if(r!==void 0){var n,i;!dm(r)&&!e.selected&&!e.unselected&&(n=r,i=Cet*r),t("selected.marker.opacity",n),t("unselected.marker.opacity",i)}}};function p6(e,t){var r=bp.valObjectMeta[t.valType];if(t.arrayOk&&dm(e))return!0;if(r.validateFunction)return r.validateFunction(e,t);var n={},i=n,a={set:function(o){i=o}};return r.coerceFunction(e,a,n,t),i!==n}bp.validate=p6});var ub=ye((ler,$ee)=>{"use strict";var Yee={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},Kee={};function Jee(e,t){for(var r in e){var n=e[r];n.valType?t[r]=n.dflt:(t[r]||(t[r]={}),Jee(n,t[r]))}}Jee(Yee,Kee);$ee.exports={configAttributes:Yee,dfltConfig:Kee}});var Sq=ye((uer,Qee)=>{"use strict";var Aq=xa(),Pet=uo(),RS=[];Qee.exports=function(e,t){if(RS.indexOf(e)!==-1)return;RS.push(e);var r=1e3;Pet(t)?r=t:t==="long"&&(r=3e3);var n=Aq.select("body").selectAll(".plotly-notifier").data([0]);n.enter().append("div").classed("plotly-notifier",!0);var i=n.selectAll(".notifier-note").data(RS);function a(o){o.duration(700).style("opacity",0).each("end",function(s){var l=RS.indexOf(s);l!==-1&&RS.splice(l,1),Aq.select(this).remove()})}i.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(o){var s=Aq.select(this);s.append("button").classed("notifier-close",!0).html("&times;").on("click",function(){s.transition().call(a)});for(var l=s.append("p"),u=o.split(/<br\s*\/?>/g),c=0;c<u.length;c++)c&&l.append("br"),l.append("span").text(u[c]);t==="stick"?s.transition().duration(350).style("opacity",1):s.transition().duration(700).style("opacity",1).transition().delay(r).call(a)})}});var G1=ye((cer,ete)=>{"use strict";var o3=ub().dfltConfig,Mq=Sq(),Eq=ete.exports={};Eq.log=function(){var e;if(o3.logging>1){var t=["LOG:"];for(e=0;e<arguments.length;e++)t.push(arguments[e]);console.trace.apply(console,t)}if(o3.notifyOnLogging>1){var r=[];for(e=0;e<arguments.length;e++)r.push(arguments[e]);Mq(r.join("<br>"),"long")}};Eq.warn=function(){var e;if(o3.logging>0){var t=["WARN:"];for(e=0;e<arguments.length;e++)t.push(arguments[e]);console.trace.apply(console,t)}if(o3.notifyOnLogging>0){var r=[];for(e=0;e<arguments.length;e++)r.push(arguments[e]);Mq(r.join("<br>"),"stick")}};Eq.error=function(){var e;if(o3.logging>0){var t=["ERROR:"];for(e=0;e<arguments.length;e++)t.push(arguments[e]);console.error.apply(console,t)}if(o3.notifyOnLogging>0){var r=[];for(e=0;e<arguments.length;e++)r.push(arguments[e]);Mq(r.join("<br>"),"stick")}}});var g6=ye((fer,tte)=>{"use strict";tte.exports=function(){}});var kq=ye((her,rte)=>{"use strict";rte.exports=function(t,r){if(r instanceof RegExp){for(var n=r.toString(),i=0;i<t.length;i++)if(t[i]instanceof RegExp&&t[i].toString()===n)return t;t.push(r)}else(r||r===0)&&t.indexOf(r)===-1&&t.push(r);return t}});var nte=ye((der,ite)=>{ite.exports=Iet;function Iet(){var e=new Float32Array(16);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var ote=ye((ver,ate)=>{ate.exports=Ret;function Ret(e){var t=new Float32Array(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}});var lte=ye((per,ste)=>{ste.exports=Det;function Det(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Cq=ye((ger,ute)=>{ute.exports=zet;function zet(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var fte=ye((mer,cte)=>{cte.exports=Fet;function Fet(e,t){if(e===t){var r=t[1],n=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=r,e[6]=t[9],e[7]=t[13],e[8]=n,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}});var dte=ye((yer,hte)=>{hte.exports=qet;function qet(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],x=t[13],b=t[14],p=t[15],E=r*s-n*o,k=r*l-i*o,A=r*u-a*o,L=n*l-i*s,_=n*u-a*s,C=i*u-a*l,M=c*x-f*v,g=c*b-h*v,P=c*p-d*v,T=f*b-h*x,F=f*p-d*x,q=h*p-d*b,V=E*q-k*F+A*T+L*P-_*g+C*M;return V?(V=1/V,e[0]=(s*q-l*F+u*T)*V,e[1]=(i*F-n*q-a*T)*V,e[2]=(x*C-b*_+p*L)*V,e[3]=(h*_-f*C-d*L)*V,e[4]=(l*P-o*q-u*g)*V,e[5]=(r*q-i*P+a*g)*V,e[6]=(b*A-v*C-p*k)*V,e[7]=(c*C-h*A+d*k)*V,e[8]=(o*F-s*P+u*M)*V,e[9]=(n*P-r*F-a*M)*V,e[10]=(v*_-x*A+p*E)*V,e[11]=(f*A-c*_-d*E)*V,e[12]=(s*g-o*T-l*M)*V,e[13]=(r*T-n*g+i*M)*V,e[14]=(x*k-v*L-b*E)*V,e[15]=(c*L-f*k+h*E)*V,e):null}});var pte=ye((_er,vte)=>{vte.exports=Oet;function Oet(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=t[4],s=t[5],l=t[6],u=t[7],c=t[8],f=t[9],h=t[10],d=t[11],v=t[12],x=t[13],b=t[14],p=t[15];return e[0]=s*(h*p-d*b)-f*(l*p-u*b)+x*(l*d-u*h),e[1]=-(n*(h*p-d*b)-f*(i*p-a*b)+x*(i*d-a*h)),e[2]=n*(l*p-u*b)-s*(i*p-a*b)+x*(i*u-a*l),e[3]=-(n*(l*d-u*h)-s*(i*d-a*h)+f*(i*u-a*l)),e[4]=-(o*(h*p-d*b)-c*(l*p-u*b)+v*(l*d-u*h)),e[5]=r*(h*p-d*b)-c*(i*p-a*b)+v*(i*d-a*h),e[6]=-(r*(l*p-u*b)-o*(i*p-a*b)+v*(i*u-a*l)),e[7]=r*(l*d-u*h)-o*(i*d-a*h)+c*(i*u-a*l),e[8]=o*(f*p-d*x)-c*(s*p-u*x)+v*(s*d-u*f),e[9]=-(r*(f*p-d*x)-c*(n*p-a*x)+v*(n*d-a*f)),e[10]=r*(s*p-u*x)-o*(n*p-a*x)+v*(n*u-a*s),e[11]=-(r*(s*d-u*f)-o*(n*d-a*f)+c*(n*u-a*s)),e[12]=-(o*(f*b-h*x)-c*(s*b-l*x)+v*(s*h-l*f)),e[13]=r*(f*b-h*x)-c*(n*b-i*x)+v*(n*h-i*f),e[14]=-(r*(s*b-l*x)-o*(n*b-i*x)+v*(n*l-i*s)),e[15]=r*(s*h-l*f)-o*(n*h-i*f)+c*(n*l-i*s),e}});var mte=ye((xer,gte)=>{gte.exports=Bet;function Bet(e){var t=e[0],r=e[1],n=e[2],i=e[3],a=e[4],o=e[5],s=e[6],l=e[7],u=e[8],c=e[9],f=e[10],h=e[11],d=e[12],v=e[13],x=e[14],b=e[15],p=t*o-r*a,E=t*s-n*a,k=t*l-i*a,A=r*s-n*o,L=r*l-i*o,_=n*l-i*s,C=u*v-c*d,M=u*x-f*d,g=u*b-h*d,P=c*x-f*v,T=c*b-h*v,F=f*b-h*x;return p*F-E*T+k*P+A*g-L*M+_*C}});var _te=ye((ber,yte)=>{yte.exports=Net;function Net(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=t[4],l=t[5],u=t[6],c=t[7],f=t[8],h=t[9],d=t[10],v=t[11],x=t[12],b=t[13],p=t[14],E=t[15],k=r[0],A=r[1],L=r[2],_=r[3];return e[0]=k*n+A*s+L*f+_*x,e[1]=k*i+A*l+L*h+_*b,e[2]=k*a+A*u+L*d+_*p,e[3]=k*o+A*c+L*v+_*E,k=r[4],A=r[5],L=r[6],_=r[7],e[4]=k*n+A*s+L*f+_*x,e[5]=k*i+A*l+L*h+_*b,e[6]=k*a+A*u+L*d+_*p,e[7]=k*o+A*c+L*v+_*E,k=r[8],A=r[9],L=r[10],_=r[11],e[8]=k*n+A*s+L*f+_*x,e[9]=k*i+A*l+L*h+_*b,e[10]=k*a+A*u+L*d+_*p,e[11]=k*o+A*c+L*v+_*E,k=r[12],A=r[13],L=r[14],_=r[15],e[12]=k*n+A*s+L*f+_*x,e[13]=k*i+A*l+L*h+_*b,e[14]=k*a+A*u+L*d+_*p,e[15]=k*o+A*c+L*v+_*E,e}});var bte=ye((wer,xte)=>{xte.exports=Uet;function Uet(e,t,r){var n=r[0],i=r[1],a=r[2],o,s,l,u,c,f,h,d,v,x,b,p;return t===e?(e[12]=t[0]*n+t[4]*i+t[8]*a+t[12],e[13]=t[1]*n+t[5]*i+t[9]*a+t[13],e[14]=t[2]*n+t[6]*i+t[10]*a+t[14],e[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],l=t[2],u=t[3],c=t[4],f=t[5],h=t[6],d=t[7],v=t[8],x=t[9],b=t[10],p=t[11],e[0]=o,e[1]=s,e[2]=l,e[3]=u,e[4]=c,e[5]=f,e[6]=h,e[7]=d,e[8]=v,e[9]=x,e[10]=b,e[11]=p,e[12]=o*n+c*i+v*a+t[12],e[13]=s*n+f*i+x*a+t[13],e[14]=l*n+h*i+b*a+t[14],e[15]=u*n+d*i+p*a+t[15]),e}});var Tte=ye((Ter,wte)=>{wte.exports=Vet;function Vet(e,t,r){var n=r[0],i=r[1],a=r[2];return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}});var Ste=ye((Aer,Ate)=>{Ate.exports=Het;function Het(e,t,r,n){var i=n[0],a=n[1],o=n[2],s=Math.sqrt(i*i+a*a+o*o),l,u,c,f,h,d,v,x,b,p,E,k,A,L,_,C,M,g,P,T,F,q,V,H;return Math.abs(s)<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,l=Math.sin(r),u=Math.cos(r),c=1-u,f=t[0],h=t[1],d=t[2],v=t[3],x=t[4],b=t[5],p=t[6],E=t[7],k=t[8],A=t[9],L=t[10],_=t[11],C=i*i*c+u,M=a*i*c+o*l,g=o*i*c-a*l,P=i*a*c-o*l,T=a*a*c+u,F=o*a*c+i*l,q=i*o*c+a*l,V=a*o*c-i*l,H=o*o*c+u,e[0]=f*C+x*M+k*g,e[1]=h*C+b*M+A*g,e[2]=d*C+p*M+L*g,e[3]=v*C+E*M+_*g,e[4]=f*P+x*T+k*F,e[5]=h*P+b*T+A*F,e[6]=d*P+p*T+L*F,e[7]=v*P+E*T+_*F,e[8]=f*q+x*V+k*H,e[9]=h*q+b*V+A*H,e[10]=d*q+p*V+L*H,e[11]=v*q+E*V+_*H,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}});var Ete=ye((Ser,Mte)=>{Mte.exports=Get;function Get(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[4],o=t[5],s=t[6],l=t[7],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+u*n,e[5]=o*i+c*n,e[6]=s*i+f*n,e[7]=l*i+h*n,e[8]=u*i-a*n,e[9]=c*i-o*n,e[10]=f*i-s*n,e[11]=h*i-l*n,e}});var Cte=ye((Mer,kte)=>{kte.exports=jet;function jet(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[8],c=t[9],f=t[10],h=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-u*n,e[1]=o*i-c*n,e[2]=s*i-f*n,e[3]=l*i-h*n,e[8]=a*n+u*i,e[9]=o*n+c*i,e[10]=s*n+f*i,e[11]=l*n+h*i,e}});var Pte=ye((Eer,Lte)=>{Lte.exports=Wet;function Wet(e,t,r){var n=Math.sin(r),i=Math.cos(r),a=t[0],o=t[1],s=t[2],l=t[3],u=t[4],c=t[5],f=t[6],h=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+u*n,e[1]=o*i+c*n,e[2]=s*i+f*n,e[3]=l*i+h*n,e[4]=u*i-a*n,e[5]=c*i-o*n,e[6]=f*i-s*n,e[7]=h*i-l*n,e}});var Rte=ye((ker,Ite)=>{Ite.exports=Zet;function Zet(e,t,r){var n,i,a,o=r[0],s=r[1],l=r[2],u=Math.sqrt(o*o+s*s+l*l);return Math.abs(u)<1e-6?null:(u=1/u,o*=u,s*=u,l*=u,n=Math.sin(t),i=Math.cos(t),a=1-i,e[0]=o*o*a+i,e[1]=s*o*a+l*n,e[2]=l*o*a-s*n,e[3]=0,e[4]=o*s*a-l*n,e[5]=s*s*a+i,e[6]=l*s*a+o*n,e[7]=0,e[8]=o*l*a+s*n,e[9]=s*l*a-o*n,e[10]=l*l*a+i,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}});var zte=ye((Cer,Dte)=>{Dte.exports=Xet;function Xet(e,t,r){var n=t[0],i=t[1],a=t[2],o=t[3],s=n+n,l=i+i,u=a+a,c=n*s,f=n*l,h=n*u,d=i*l,v=i*u,x=a*u,b=o*s,p=o*l,E=o*u;return e[0]=1-(d+x),e[1]=f+E,e[2]=h-p,e[3]=0,e[4]=f-E,e[5]=1-(c+x),e[6]=v+b,e[7]=0,e[8]=h+p,e[9]=v-b,e[10]=1-(c+d),e[11]=0,e[12]=r[0],e[13]=r[1],e[14]=r[2],e[15]=1,e}});var qte=ye((Ler,Fte)=>{Fte.exports=Yet;function Yet(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Bte=ye((Per,Ote)=>{Ote.exports=Ket;function Ket(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}});var Ute=ye((Ier,Nte)=>{Nte.exports=Jet;function Jet(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=n,e[6]=r,e[7]=0,e[8]=0,e[9]=-r,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Hte=ye((Rer,Vte)=>{Vte.exports=$et;function $et(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=0,e[2]=-r,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=r,e[9]=0,e[10]=n,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var jte=ye((Der,Gte)=>{Gte.exports=Qet;function Qet(e,t){var r=Math.sin(t),n=Math.cos(t);return e[0]=n,e[1]=r,e[2]=0,e[3]=0,e[4]=-r,e[5]=n,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Lq=ye((zer,Wte)=>{Wte.exports=ett;function ett(e,t){var r=t[0],n=t[1],i=t[2],a=t[3],o=r+r,s=n+n,l=i+i,u=r*o,c=n*o,f=n*s,h=i*o,d=i*s,v=i*l,x=a*o,b=a*s,p=a*l;return e[0]=1-f-v,e[1]=c+p,e[2]=h-b,e[3]=0,e[4]=c-p,e[5]=1-u-v,e[6]=d+x,e[7]=0,e[8]=h+b,e[9]=d-x,e[10]=1-u-f,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}});var Xte=ye((Fer,Zte)=>{Zte.exports=ttt;function ttt(e,t,r,n,i,a,o){var s=1/(r-t),l=1/(i-n),u=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*l,e[6]=0,e[7]=0,e[8]=(r+t)*s,e[9]=(i+n)*l,e[10]=(o+a)*u,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*u,e[15]=0,e}});var Kte=ye((qer,Yte)=>{Yte.exports=rtt;function rtt(e,t,r,n,i){var a=1/Math.tan(t/2),o=1/(n-i);return e[0]=a/r,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=(i+n)*o,e[11]=-1,e[12]=0,e[13]=0,e[14]=2*i*n*o,e[15]=0,e}});var $te=ye((Oer,Jte)=>{Jte.exports=itt;function itt(e,t,r,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),l=2/(o+s),u=2/(i+a);return e[0]=l,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=u,e[6]=0,e[7]=0,e[8]=-((o-s)*l*.5),e[9]=(i-a)*u*.5,e[10]=n/(r-n),e[11]=-1,e[12]=0,e[13]=0,e[14]=n*r/(r-n),e[15]=0,e}});var ere=ye((Ber,Qte)=>{Qte.exports=ntt;function ntt(e,t,r,n,i,a,o){var s=1/(t-r),l=1/(n-i),u=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*l,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*u,e[11]=0,e[12]=(t+r)*s,e[13]=(i+n)*l,e[14]=(o+a)*u,e[15]=1,e}});var rre=ye((Ner,tre)=>{var att=Cq();tre.exports=ott;function ott(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v=t[0],x=t[1],b=t[2],p=n[0],E=n[1],k=n[2],A=r[0],L=r[1],_=r[2];return Math.abs(v-A)<1e-6&&Math.abs(x-L)<1e-6&&Math.abs(b-_)<1e-6?att(e):(c=v-A,f=x-L,h=b-_,d=1/Math.sqrt(c*c+f*f+h*h),c*=d,f*=d,h*=d,i=E*h-k*f,a=k*c-p*h,o=p*f-E*c,d=Math.sqrt(i*i+a*a+o*o),d?(d=1/d,i*=d,a*=d,o*=d):(i=0,a=0,o=0),s=f*o-h*a,l=h*i-c*o,u=c*a-f*i,d=Math.sqrt(s*s+l*l+u*u),d?(d=1/d,s*=d,l*=d,u*=d):(s=0,l=0,u=0),e[0]=i,e[1]=s,e[2]=c,e[3]=0,e[4]=a,e[5]=l,e[6]=f,e[7]=0,e[8]=o,e[9]=u,e[10]=h,e[11]=0,e[12]=-(i*v+a*x+o*b),e[13]=-(s*v+l*x+u*b),e[14]=-(c*v+f*x+h*b),e[15]=1,e)}});var nre=ye((Uer,ire)=>{ire.exports=stt;function stt(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}});var Pq=ye((Ver,are)=>{are.exports={create:nte(),clone:ote(),copy:lte(),identity:Cq(),transpose:fte(),invert:dte(),adjoint:pte(),determinant:mte(),multiply:_te(),translate:bte(),scale:Tte(),rotate:Ste(),rotateX:Ete(),rotateY:Cte(),rotateZ:Pte(),fromRotation:Rte(),fromRotationTranslation:zte(),fromScaling:qte(),fromTranslation:Bte(),fromXRotation:Ute(),fromYRotation:Hte(),fromZRotation:jte(),fromQuat:Lq(),frustum:Xte(),perspective:Kte(),perspectiveFromFieldOfView:$te(),ortho:ere(),lookAt:rre(),str:nre()}});var m6=ye(Xf=>{"use strict";var ltt=Pq();Xf.init2dArray=function(e,t){for(var r=new Array(e),n=0;n<e;n++)r[n]=new Array(t);return r};Xf.transposeRagged=function(e){var t=0,r=e.length,n,i;for(n=0;n<r;n++)t=Math.max(t,e[n].length);var a=new Array(t);for(n=0;n<t;n++)for(a[n]=new Array(r),i=0;i<r;i++)a[n][i]=e[i][n];return a};Xf.dot=function(e,t){if(!(e.length&&t.length)||e.length!==t.length)return null;var r=e.length,n,i;if(e[0].length)for(n=new Array(r),i=0;i<r;i++)n[i]=Xf.dot(e[i],t);else if(t[0].length){var a=Xf.transposeRagged(t);for(n=new Array(a.length),i=0;i<a.length;i++)n[i]=Xf.dot(e,a[i])}else for(n=0,i=0;i<r;i++)n+=e[i]*t[i];return n};Xf.translationMatrix=function(e,t){return[[1,0,e],[0,1,t],[0,0,1]]};Xf.rotationMatrix=function(e){var t=e*Math.PI/180;return[[Math.cos(t),-Math.sin(t),0],[Math.sin(t),Math.cos(t),0],[0,0,1]]};Xf.rotationXYMatrix=function(e,t,r){return Xf.dot(Xf.dot(Xf.translationMatrix(t,r),Xf.rotationMatrix(e)),Xf.translationMatrix(-t,-r))};Xf.apply3DTransform=function(e){return function(){var t=arguments,r=arguments.length===1?t[0]:[t[0],t[1],t[2]||0];return Xf.dot(e,[r[0],r[1],r[2],1]).slice(0,3)}};Xf.apply2DTransform=function(e){return function(){var t=arguments;t.length===3&&(t=t[0]);var r=arguments.length===1?t[0]:[t[0],t[1]];return Xf.dot(e,[r[0],r[1],1]).slice(0,2)}};Xf.apply2DTransform2=function(e){var t=Xf.apply2DTransform(e);return function(r){return t(r.slice(0,2)).concat(t(r.slice(2,4)))}};Xf.convertCssMatrix=function(e){if(e){var t=e.length;if(t===16)return e;if(t===6)return[e[0],e[1],0,0,e[2],e[3],0,0,0,0,1,0,e[4],e[5],0,1]}return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]};Xf.inverseTransformMatrix=function(e){var t=[];return ltt.invert(t,e),[[t[0],t[1],t[2],t[3]],[t[4],t[5],t[6],t[7]],[t[8],t[9],t[10],t[11]],[t[12],t[13],t[14],t[15]]]}});var DS=ye((Ger,fre)=>{"use strict";var utt=xa(),ore=G1(),ctt=m6(),ftt=Pq();function htt(e){var t;if(typeof e=="string"){if(t=document.getElementById(e),t===null)throw new Error("No DOM element with id '"+e+"' exists on the page.");return t}else if(e==null)throw new Error("DOM element provided is null or undefined");return e}function dtt(e){var t=utt.select(e);return t.node()instanceof HTMLElement&&t.size()&&t.classed("js-plotly-plot")}function sre(e){var t=e&&e.parentNode;t&&t.removeChild(e)}function vtt(e,t){lre("global",e,t)}function lre(e,t,r){var n="plotly.js-style-"+e,i=document.getElementById(n);if(!(i&&i.matches(".no-inline-styles"))){i||(i=document.createElement("style"),i.setAttribute("id",n),i.appendChild(document.createTextNode("")),document.head.appendChild(i));var a=i.sheet;a?a.insertRule?a.insertRule(t+"{"+r+"}",0):a.addRule?a.addRule(t,r,0):ore.warn("addStyleRule failed"):ore.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function ptt(e){var t="plotly.js-style-"+e,r=document.getElementById(t);r&&sre(r)}function gtt(e,t,r,n,i,a){var o=n.split(":"),s=i.split(":"),l="data-btn-style-event-added";a||(a=document),a.querySelectorAll(e).forEach(function(u){u.getAttribute(l)||(u.addEventListener("mouseenter",function(){var c=this.querySelector(r);c&&(c.style[o[0]]=o[1])}),u.addEventListener("mouseleave",function(){var c=this.querySelector(r);c&&(t&&this.matches(t)?c.style[o[0]]=o[1]:c.style[s[0]]=s[1])}),u.setAttribute(l,!0))})}function mtt(e){var t=cre(e),r=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return t.forEach(function(n){var i=ure(n);if(i){var a=ctt.convertCssMatrix(i);r=ftt.multiply(r,r,a)}}),r}function ure(e){var t=window.getComputedStyle(e,null),r=t.getPropertyValue("-webkit-transform")||t.getPropertyValue("-moz-transform")||t.getPropertyValue("-ms-transform")||t.getPropertyValue("-o-transform")||t.getPropertyValue("transform");return r==="none"?null:r.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(n){return+n})}function cre(e){for(var t=[];ytt(e);)t.push(e),e=e.parentNode,typeof ShadowRoot=="function"&&e instanceof ShadowRoot&&(e=e.host);return t}function ytt(e){return e&&(e instanceof Element||e instanceof HTMLElement)}function _tt(e,t){return e&&t&&e.top===t.top&&e.left===t.left&&e.right===t.right&&e.bottom===t.bottom}fre.exports={getGraphDiv:htt,isPlotDiv:dtt,removeElement:sre,addStyleRule:vtt,addRelatedStyleRule:lre,deleteRelatedStyleRule:ptt,setStyleOnHover:gtt,getFullTransformMatrix:mtt,getElementTransformMatrix:ure,getElementAndAncestors:cre,equalDomRects:_tt}});var zS=ye((jer,hre)=>{"use strict";hre.exports={mode:{valType:"enumerated",dflt:"afterall",values:["immediate","next","afterall"]},direction:{valType:"enumerated",values:["forward","reverse"],dflt:"forward"},fromcurrent:{valType:"boolean",dflt:!1},frame:{duration:{valType:"number",min:0,dflt:500},redraw:{valType:"boolean",dflt:!0}},transition:{duration:{valType:"number",min:0,dflt:500,editType:"none"},easing:{valType:"enumerated",dflt:"cubic-in-out",values:["linear","quad","cubic","sin","exp","circle","elastic","back","bounce","linear-in","quad-in","cubic-in","sin-in","exp-in","circle-in","elastic-in","back-in","bounce-in","linear-out","quad-out","cubic-out","sin-out","exp-out","circle-out","elastic-out","back-out","bounce-out","linear-in-out","quad-in-out","cubic-in-out","sin-in-out","exp-in-out","circle-in-out","elastic-in-out","back-in-out","bounce-in-out"],editType:"none"},ordering:{valType:"enumerated",values:["layout first","traces first"],dflt:"layout first",editType:"none"}}}});var Bu=ye((Wer,_re)=>{"use strict";var vre=no().extendFlat,xtt=gy(),pre={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},gre={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},btt=pre.flags.slice().concat(["fullReplot"]),wtt=gre.flags.slice().concat("layoutReplot");_re.exports={traces:pre,layout:gre,traceFlags:function(){return dre(btt)},layoutFlags:function(){return dre(wtt)},update:function(e,t){var r=t.editType;if(r&&r!=="none")for(var n=r.split("+"),i=0;i<n.length;i++)e[n[i]]=!0},overrideAll:mre};function dre(e){for(var t={},r=0;r<e.length;r++)t[e[r]]=!1;return t}function mre(e,t,r){var n=vre({},e);for(var i in n){var a=n[i];xtt(a)&&(n[i]=yre(a,t,r,i))}return r==="from-root"&&(n.editType=t),n}function yre(e,t,r,n){if(e.valType){var i=vre({},e);if(i.editType=t,Array.isArray(e.items)){i.items=new Array(e.items.length);for(var a=0;a<e.items.length;a++)i.items[a]=yre(e.items[a],t,"from-root")}return i}else return mre(e,t,n.charAt(0)==="_"?"nested":"from-root")}});var Ed=ye(Iq=>{"use strict";Iq.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"};Iq.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}});var Rq=ye((Xer,xre)=>{"use strict";xre.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}});var Wo=ye(y6=>{"use strict";var bre=Rq(),Yer=bre.FORMAT_LINK,Ker=bre.DATE_FORMAT_LINK;function Dq(e){var t=e.description?" "+e.description:"",r=e.keys||[];if(r.length>0){for(var n=[],i=0;i<r.length;i++)n[i]="`"+r[i]+"`";t=t+"Finally, the template string has access to ",r.length===1?t=t+"variable "+n[0]:t=t+"variables "+n.slice(0,-1).join(", ")+" and "+n.slice(-1)+"."}return t}y6.hovertemplateAttrs=function(e,t){e=e||{},t=t||{};var r=Dq(t),n={valType:"string",dflt:"",editType:e.editType||"none"};return e.arrayOk!==!1&&(n.arrayOk=!0),n};y6.texttemplateAttrs=function(e,t){e=e||{},t=t||{};var r=Dq(t),n={valType:"string",dflt:"",editType:e.editType||"calc"};return e.arrayOk!==!1&&(n.arrayOk=!0),n};y6.shapeTexttemplateAttrs=function(e,t){e=e||{},t=t||{};var r=e.newshape?"new ":"",n=Dq(t),i={valType:"string",dflt:"",editType:e.editType||"arraydraw"};return i}});var b6=ye(($er,Ere)=>{"use strict";function j1(e,t){return t?t.d2l(e):e}function wre(e,t){return t?t.l2d(e):e}function Ttt(e){return e.x0}function Att(e){return e.x1}function Stt(e){return e.y0}function Mtt(e){return e.y1}function Tre(e){return e.x0shift||0}function Are(e){return e.x1shift||0}function Sre(e){return e.y0shift||0}function Mre(e){return e.y1shift||0}function _6(e,t){return j1(e.x1,t)+Are(e)-j1(e.x0,t)-Tre(e)}function x6(e,t,r){return j1(e.y1,r)+Mre(e)-j1(e.y0,r)-Sre(e)}function Ett(e,t){return Math.abs(_6(e,t))}function ktt(e,t,r){return Math.abs(x6(e,t,r))}function Ctt(e,t,r){return e.type!=="line"?void 0:Math.sqrt(Math.pow(_6(e,t),2)+Math.pow(x6(e,t,r),2))}function Ltt(e,t){return wre((j1(e.x1,t)+Are(e)+j1(e.x0,t)+Tre(e))/2,t)}function Ptt(e,t,r){return wre((j1(e.y1,r)+Mre(e)+j1(e.y0,r)+Sre(e))/2,r)}function Itt(e,t,r){return e.type!=="line"?void 0:x6(e,t,r)/_6(e,t)}Ere.exports={x0:Ttt,x1:Att,y0:Stt,y1:Mtt,slope:Itt,dx:_6,dy:x6,width:Ett,height:ktt,length:Ctt,xcenter:Ltt,ycenter:Ptt}});var Lre=ye((Qer,Cre)=>{"use strict";var Rtt=Bu().overrideAll,cb=vl(),kre=Su(),Dtt=Ed().dash,W1=no().extendFlat,ztt=Wo().shapeTexttemplateAttrs,Ftt=b6();Cre.exports=Rtt({newshape:{visible:W1({},cb.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:W1({},cb.legend,{}),legendgroup:W1({},cb.legendgroup,{}),legendgrouptitle:{text:W1({},cb.legendgrouptitle.text,{}),font:kre({})},legendrank:W1({},cb.legendrank,{}),legendwidth:W1({},cb.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:W1({},Dtt,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:W1({},cb.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:ztt({newshape:!0},{keys:Object.keys(Ftt)}),font:kre({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")});var Ire=ye((etr,Pre)=>{"use strict";var qtt=Ed().dash,Ott=no().extendFlat;Pre.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:Ott({},qtt,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}});var w6=ye((ttr,Rre)=>{"use strict";Rre.exports=function(e){var t=e.editType;return{t:{valType:"number",dflt:0,editType:t},r:{valType:"number",dflt:0,editType:t},b:{valType:"number",dflt:0,editType:t},l:{valType:"number",dflt:0,editType:t},editType:t}}});var s3=ye((rtr,qre)=>{"use strict";var zq=Su(),Btt=zS(),T6=dh(),Dre=Lre(),zre=Ire(),Ntt=w6(),Fre=no().extendFlat,A6=zq({editType:"calc"});A6.family.dflt='"Open Sans", verdana, arial, sans-serif';A6.size.dflt=12;A6.color.dflt=T6.defaultLine;qre.exports={font:A6,title:{text:{valType:"string",editType:"layoutstyle"},font:zq({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:zq({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:Fre(Ntt({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:T6.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:T6.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:T6.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:Dre.newshape,activeshape:Dre.activeshape,newselection:zre.newselection,activeselection:zre.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:Fre({},Btt.transition,{editType:"none"})}});var Ore=Ll(()=>{});var Utt={};var Bre=Ll(()=>{Ore()});var ba=ye(qs=>{"use strict";var l3=G1(),Nre=g6(),Ure=kq(),Vtt=gy(),Htt=DS().addStyleRule,Vre=no(),Gtt=vl(),jtt=s3(),Wtt=Vre.extendFlat,Fq=Vre.extendDeepAll;qs.modules={};qs.allCategories={};qs.allTypes=[];qs.subplotsRegistry={};qs.componentsRegistry={};qs.layoutArrayContainers=[];qs.layoutArrayRegexes=[];qs.traceLayoutAttributes={};qs.localeRegistry={};qs.apiMethodRegistry={};qs.collectableSubplotTypes=null;qs.register=function(t){if(qs.collectableSubplotTypes=null,t)t&&!Array.isArray(t)&&(t=[t]);else throw new Error("No argument passed to Plotly.register.");for(var r=0;r<t.length;r++){var n=t[r];if(!n)throw new Error("Invalid module was attempted to be registered!");switch(n.moduleType){case"trace":Ztt(n);break;case"transform":Ktt(n);break;case"component":Ytt(n);break;case"locale":Jtt(n);break;case"apiMethod":var i=n.name;qs.apiMethodRegistry[i]=n.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}};qs.getModule=function(e){var t=qs.modules[Wre(e)];return t?t._module:!1};qs.traceIs=function(e,t){if(e=Wre(e),e==="various")return!1;var r=qs.modules[e];return r||(e&&l3.log("Unrecognized trace type "+e+"."),r=qs.modules[Gtt.type.dflt]),!!r.categories[t]};qs.getComponentMethod=function(e,t){var r=qs.componentsRegistry[e];return r&&r[t]||Nre};qs.call=function(){var e=arguments[0],t=[].slice.call(arguments,1);return qs.apiMethodRegistry[e].apply(null,t)};function Ztt(e){var t=e.name,r=e.categories,n=e.meta;if(qs.modules[t]){l3.log("Type "+t+" already registered");return}qs.subplotsRegistry[e.basePlotModule.name]||Xtt(e.basePlotModule);for(var i={},a=0;a<r.length;a++)i[r[a]]=!0,qs.allCategories[r[a]]=!0;qs.modules[t]={_module:e,categories:i},n&&Object.keys(n).length&&(qs.modules[t].meta=n),qs.allTypes.push(t);for(var o in qs.componentsRegistry)Gre(o,t);e.layoutAttributes&&Wtt(qs.traceLayoutAttributes,e.layoutAttributes);var s=e.basePlotModule,l=s.name;if(l==="mapbox"){var u=s.constants.styleRules;for(var c in u)Htt(".js-plotly-plot .plotly .mapboxgl-"+c,u[c])}l==="map"&&(Bre(),B1(Utt)),(l==="geo"||l==="mapbox"||l==="map")&&window.PlotlyGeoAssets===void 0&&(window.PlotlyGeoAssets={topojson:{}})}function Xtt(e){var t=e.name;if(qs.subplotsRegistry[t]){l3.log("Plot type "+t+" already registered.");return}Hre(e),qs.subplotsRegistry[t]=e;for(var r in qs.componentsRegistry)jre(r,e.name)}function Ytt(e){if(typeof e.name!="string")throw new Error("Component module *name* must be a string.");var t=e.name;qs.componentsRegistry[t]=e,e.layoutAttributes&&(e.layoutAttributes._isLinkedToArray&&Ure(qs.layoutArrayContainers,t),Hre(e));for(var r in qs.modules)Gre(t,r);for(var n in qs.subplotsRegistry)jre(t,n);e.schema&&e.schema.layout&&Fq(jtt,e.schema.layout)}function Ktt(e){if(typeof e.name!="string")throw new Error("Transform module *name* must be a string.");var t="Transform module "+e.name,r=typeof e.transform=="function",n=typeof e.calcTransform=="function";if(!r&&!n)throw new Error(t+" is missing a *transform* or *calcTransform* method.");r&&n&&l3.log([t+" has both a *transform* and *calcTransform* methods.","Please note that all *transform* methods are executed","before all *calcTransform* methods."].join(" ")),Vtt(e.attributes)||l3.log(t+" registered without an *attributes* object."),typeof e.supplyDefaults!="function"&&l3.log(t+" registered without a *supplyDefaults* method.")}function Jtt(e){var t=e.name,r=t.split("-")[0],n=e.dictionary,i=e.format,a=n&&Object.keys(n).length,o=i&&Object.keys(i).length,s=qs.localeRegistry,l=s[t];if(l||(s[t]=l={}),r!==t){var u=s[r];u||(s[r]=u={}),a&&u.dictionary===l.dictionary&&(u.dictionary=n),o&&u.format===l.format&&(u.format=i)}a&&(l.dictionary=n),o&&(l.format=i)}function Hre(e){if(e.layoutAttributes){var t=e.layoutAttributes._arrayAttrRegexps;if(t)for(var r=0;r<t.length;r++)Ure(qs.layoutArrayRegexes,t[r])}}function Gre(e,t){var r=qs.componentsRegistry[e].schema;if(!(!r||!r.traces)){var n=r.traces[t];n&&Fq(qs.modules[t]._module.attributes,n)}}function jre(e,t){var r=qs.componentsRegistry[e].schema;if(!(!r||!r.subplots)){var n=qs.subplotsRegistry[t],i=n.layoutAttributes,a=n.attr==="subplot"?n.name:n.attr;Array.isArray(a)&&(a=a[0]);var o=r.subplots[a];i&&o&&Fq(i,o)}}function Wre(e){return typeof e=="object"&&(e=e.type),e}});var tie=ye(Yf=>{"use strict";var $tt=e3().timeFormat,Qre=uo(),qq=G1(),X1=r3().mod,f3=es(),_0=f3.BADNUM,wp=f3.ONEDAY,FS=f3.ONEHOUR,Z1=f3.ONEMIN,c3=f3.ONESEC,qS=f3.EPOCHJD,my=ba(),Zre=e3().utcFormat,Qtt=/^\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,ert=/^\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,Xre=new Date().getFullYear()-70;function yy(e){return e&&my.componentsRegistry.calendars&&typeof e=="string"&&e!=="gregorian"}Yf.dateTick0=function(e,t){var r=trt(e,!!t);if(t<2)return r;var n=Yf.dateTime2ms(r,e);return n+=wp*(t-1),Yf.ms2DateTime(n,0,e)};function trt(e,t){return yy(e)?t?my.getComponentMethod("calendars","CANONICAL_SUNDAY")[e]:my.getComponentMethod("calendars","CANONICAL_TICK")[e]:t?"2000-01-02":"2000-01-01"}Yf.dfltRange=function(e){return yy(e)?my.getComponentMethod("calendars","DFLTRANGE")[e]:["2000-01-01","2001-01-01"]};Yf.isJSDate=function(e){return typeof e=="object"&&e!==null&&typeof e.getTime=="function"};var M6,E6;Yf.dateTime2ms=function(e,t){if(Yf.isJSDate(e)){var r=e.getTimezoneOffset()*Z1,n=(e.getUTCMinutes()-e.getMinutes())*Z1+(e.getUTCSeconds()-e.getSeconds())*c3+(e.getUTCMilliseconds()-e.getMilliseconds());if(n){var i=3*Z1;r=r-i/2+X1(n-r+i/2,i)}return e=Number(e)-r,e>=M6&&e<=E6?e:_0}if(typeof e!="string"&&typeof e!="number")return _0;e=String(e);var a=yy(t),o=e.charAt(0);a&&(o==="G"||o==="g")&&(e=e.substr(1),t="");var s=a&&t.substr(0,7)==="chinese",l=e.match(s?ert:Qtt);if(!l)return _0;var u=l[1],c=l[3]||"1",f=Number(l[5]||1),h=Number(l[7]||0),d=Number(l[9]||0),v=Number(l[11]||0);if(a){if(u.length===2)return _0;u=Number(u);var x;try{var b=my.getComponentMethod("calendars","getCal")(t);if(s){var p=c.charAt(c.length-1)==="i";c=parseInt(c,10),x=b.newDate(u,b.toMonthIndex(u,c,p),f)}else x=b.newDate(u,Number(c),f)}catch(k){return _0}return x?(x.toJD()-qS)*wp+h*FS+d*Z1+v*c3:_0}u.length===2?u=(Number(u)+2e3-Xre)%100+Xre:u=Number(u),c-=1;var E=new Date(Date.UTC(2e3,c,f,h,d));return E.setUTCFullYear(u),E.getUTCMonth()!==c||E.getUTCDate()!==f?_0:E.getTime()+v*c3};M6=Yf.MIN_MS=Yf.dateTime2ms("-9999");E6=Yf.MAX_MS=Yf.dateTime2ms("9999-12-31 23:59:59.9999");Yf.isDateTime=function(e,t){return Yf.dateTime2ms(e,t)!==_0};function u3(e,t){return String(e+Math.pow(10,t)).substr(1)}var S6=90*wp,Yre=3*FS,Kre=5*Z1;Yf.ms2DateTime=function(e,t,r){if(typeof e!="number"||!(e>=M6&&e<=E6))return _0;t||(t=0);var n=Math.floor(X1(e+.05,1)*10),i=Math.round(e-n/10),a,o,s,l,u,c;if(yy(r)){var f=Math.floor(i/wp)+qS,h=Math.floor(X1(e,wp));try{a=my.getComponentMethod("calendars","getCal")(r).fromJD(f).formatDate("yyyy-mm-dd")}catch(d){a=Zre("G%Y-%m-%d")(new Date(i))}if(a.charAt(0)==="-")for(;a.length<11;)a="-0"+a.substr(1);else for(;a.length<10;)a="0"+a;o=t<S6?Math.floor(h/FS):0,s=t<S6?Math.floor(h%FS/Z1):0,l=t<Yre?Math.floor(h%Z1/c3):0,u=t<Kre?h%c3*10+n:0}else c=new Date(i),a=Zre("%Y-%m-%d")(c),o=t<S6?c.getUTCHours():0,s=t<S6?c.getUTCMinutes():0,l=t<Yre?c.getUTCSeconds():0,u=t<Kre?c.getUTCMilliseconds()*10+n:0;return eie(a,o,s,l,u)};Yf.ms2DateTimeLocal=function(e){if(!(e>=M6+wp&&e<=E6-wp))return _0;var t=Math.floor(X1(e+.05,1)*10),r=new Date(Math.round(e-t/10)),n=$tt("%Y-%m-%d")(r),i=r.getHours(),a=r.getMinutes(),o=r.getSeconds(),s=r.getUTCMilliseconds()*10+t;return eie(n,i,a,o,s)};function eie(e,t,r,n,i){if((t||r||n||i)&&(e+=" "+u3(t,2)+":"+u3(r,2),(n||i)&&(e+=":"+u3(n,2),i))){for(var a=4;i%10===0;)a-=1,i/=10;e+="."+u3(i,a)}return e}Yf.cleanDate=function(e,t,r){if(e===_0)return t;if(Yf.isJSDate(e)||typeof e=="number"&&isFinite(e)){if(yy(r))return qq.error("JS Dates and milliseconds are incompatible with world calendars",e),t;if(e=Yf.ms2DateTimeLocal(+e),!e&&t!==void 0)return t}else if(!Yf.isDateTime(e,r))return qq.error("unrecognized date",e),t;return e};var rrt=/%\d?f/g,irt=/%h/g,nrt={1:"1",2:"1",3:"2",4:"2"};function Jre(e,t,r,n){e=e.replace(rrt,function(a){var o=Math.min(+a.charAt(1)||6,6),s=(t/1e3%1+2).toFixed(o).substr(2).replace(/0+$/,"")||"0";return s});var i=new Date(Math.floor(t+.05));if(e=e.replace(irt,function(){return nrt[r("%q")(i)]}),yy(n))try{e=my.getComponentMethod("calendars","worldCalFmt")(e,t,n)}catch(a){return"Invalid"}return r(e)(i)}var art=[59,59.9,59.99,59.999,59.9999];function ort(e,t){var r=X1(e+.05,wp),n=u3(Math.floor(r/FS),2)+":"+u3(X1(Math.floor(r/Z1),60),2);if(t!=="M"){Qre(t)||(t=0);var i=Math.min(X1(e/c3,60),art[t]),a=(100+i).toFixed(t).substr(1);t>0&&(a=a.replace(/0+$/,"").replace(/[\.]$/,"")),n+=":"+a}return n}Yf.formatDate=function(e,t,r,n,i,a){if(i=yy(i)&&i,!t)if(r==="y")t=a.year;else if(r==="m")t=a.month;else if(r==="d")t=a.dayMonth+`
+`+a.year;else return ort(e,r)+`
+`+Jre(a.dayMonthYear,e,n,i);return Jre(t,e,n,i)};var $re=3*wp;Yf.incrementMonth=function(e,t,r){r=yy(r)&&r;var n=X1(e,wp);if(e=Math.round(e-n),r)try{var i=Math.round(e/wp)+qS,a=my.getComponentMethod("calendars","getCal")(r),o=a.fromJD(i);return t%12?a.add(o,t,"m"):a.add(o,t/12,"y"),(o.toJD()-qS)*wp+n}catch(l){qq.error("invalid ms "+e+" in calendar "+r)}var s=new Date(e+$re);return s.setUTCMonth(s.getUTCMonth()+t)+n-$re};Yf.findExactDates=function(e,t){for(var r=0,n=0,i=0,a=0,o,s,l=yy(t)&&my.getComponentMethod("calendars","getCal")(t),u=0;u<e.length;u++){if(s=e[u],!Qre(s)){a++;continue}if(!(s%wp))if(l)try{o=l.fromJD(s/wp+qS),o.day()===1?o.month()===1?r++:n++:i++}catch(f){}else o=new Date(s),o.getUTCDate()===1?o.getUTCMonth()===0?r++:n++:i++}n+=r,i+=n;var c=e.length-a;return{exactYears:r/c,exactMonths:n/c,exactDays:i/c}}});var OS=ye((ltr,rie)=>{"use strict";rie.exports=function(t){return t}});var k6=ye(_y=>{"use strict";var srt=uo(),lrt=G1(),urt=OS(),crt=es().BADNUM,Oq=1e-9;_y.findBin=function(e,t,r){if(srt(t.start))return r?Math.ceil((e-t.start)/t.size-Oq)-1:Math.floor((e-t.start)/t.size+Oq);var n=0,i=t.length,a=0,o=i>1?(t[i-1]-t[0])/(i-1):1,s,l;for(o>=0?l=r?frt:hrt:l=r?vrt:drt,e+=o*Oq*(r?-1:1)*(o>=0?1:-1);n<i&&a++<100;)s=Math.floor((n+i)/2),l(t[s],e)?n=s+1:i=s;return a>90&&lrt.log("Long binary search..."),n-1};function frt(e,t){return e<t}function hrt(e,t){return e<=t}function drt(e,t){return e>t}function vrt(e,t){return e>=t}_y.sorterAsc=function(e,t){return e-t};_y.sorterDes=function(e,t){return t-e};_y.distinctVals=function(e){var t=e.slice();t.sort(_y.sorterAsc);var r;for(r=t.length-1;r>-1&&t[r]===crt;r--);for(var n=t[r]-t[0]||1,i=n/(r||1)/1e4,a=[],o,s=0;s<=r;s++){var l=t[s],u=l-o;o===void 0?(a.push(l),o=l):u>i&&(n=Math.min(n,u),a.push(l),o=l)}return{vals:a,minDiff:n}};_y.roundUp=function(e,t,r){for(var n=0,i=t.length-1,a,o=0,s=r?0:1,l=r?1:0,u=r?Math.ceil:Math.floor;n<i&&o++<100;)a=u((n+i)/2),t[a]<=e?n=a+s:i=a-l;return t[n]};_y.sort=function(e,t){for(var r=0,n=0,i=1;i<e.length;i++){var a=t(e[i],e[i-1]);if(a<0?r=1:a>0&&(n=1),r&&n)return e.sort(t)}return n?e:e.reverse()};_y.findIndexOfMin=function(e,t){t=t||urt;for(var r=1/0,n,i=0;i<e.length;i++){var a=t(e[i]);a<r&&(r=a,n=i)}return n}});var Y1=ye((ctr,iie)=>{"use strict";iie.exports=function(t){return Object.keys(t).sort()}});var nie=ye(Kf=>{"use strict";var BS=uo(),prt=vv().isArrayOrTypedArray;Kf.aggNums=function(e,t,r,n){var i,a;if((!n||n>r.length)&&(n=r.length),BS(t)||(t=!1),prt(r[0])){for(a=new Array(n),i=0;i<n;i++)a[i]=Kf.aggNums(e,t,r[i]);r=a}for(i=0;i<n;i++)BS(t)?BS(r[i])&&(t=e(+t,+r[i])):t=r[i];return t};Kf.len=function(e){return Kf.aggNums(function(t){return t+1},0,e)};Kf.mean=function(e,t){return t||(t=Kf.len(e)),Kf.aggNums(function(r,n){return r+n},0,e)/t};Kf.geometricMean=function(e,t){return t||(t=Kf.len(e)),Math.pow(Kf.aggNums(function(r,n){return r*n},1,e),1/t)};Kf.midRange=function(e){if(!(e===void 0||e.length===0))return(Kf.aggNums(Math.max,null,e)+Kf.aggNums(Math.min,null,e))/2};Kf.variance=function(e,t,r){return t||(t=Kf.len(e)),BS(r)||(r=Kf.mean(e,t)),Kf.aggNums(function(n,i){return n+Math.pow(i-r,2)},0,e)/t};Kf.stdev=function(e,t,r){return Math.sqrt(Kf.variance(e,t,r))};Kf.median=function(e){var t=e.slice().sort();return Kf.interp(t,.5)};Kf.interp=function(e,t){if(!BS(t))throw"n should be a finite number";if(t=t*e.length-.5,t<0)return e[0];if(t>e.length-1)return e[e.length-1];var r=t%1;return r*e[Math.ceil(t)]+(1-r)*e[Math.floor(t)]}});var uie=ye((htr,lie)=>{"use strict";var aie=r3(),Bq=aie.mod,grt=aie.modHalf,NS=Math.PI,K1=2*NS;function mrt(e){return e/180*NS}function yrt(e){return e/NS*180}function Nq(e){return Math.abs(e[1]-e[0])>K1-1e-14}function oie(e,t){return grt(t-e,K1)}function _rt(e,t){return Math.abs(oie(e,t))}function sie(e,t){if(Nq(t))return!0;var r,n;t[0]<t[1]?(r=t[0],n=t[1]):(r=t[1],n=t[0]),r=Bq(r,K1),n=Bq(n,K1),r>n&&(n+=K1);var i=Bq(e,K1),a=i+K1;return i>=r&&i<=n||a>=r&&a<=n}function xrt(e,t,r,n){if(!sie(t,n))return!1;var i,a;return r[0]<r[1]?(i=r[0],a=r[1]):(i=r[1],a=r[0]),e>=i&&e<=a}function Uq(e,t,r,n,i,a,o){i=i||0,a=a||0;var s=Nq([r,n]),l,u,c,f,h;s?(l=0,u=NS,c=K1):r<n?(l=r,c=n):(l=n,c=r),e<t?(f=e,h=t):(f=t,h=e);function d(p,E){return[p*Math.cos(E)+i,a-p*Math.sin(E)]}var v=Math.abs(c-l)<=NS?0:1;function x(p,E,k){return"A"+[p,p]+" "+[0,v,k]+" "+d(p,E)}var b;return s?f===null?b="M"+d(h,l)+x(h,u,0)+x(h,c,0)+"Z":b="M"+d(f,l)+x(f,u,0)+x(f,c,0)+"ZM"+d(h,l)+x(h,u,1)+x(h,c,1)+"Z":f===null?(b="M"+d(h,l)+x(h,c,0),o&&(b+="L0,0Z")):b="M"+d(f,l)+"L"+d(h,l)+x(h,c,0)+"L"+d(f,c)+x(f,l,1)+"Z",b}function brt(e,t,r,n,i){return Uq(null,e,t,r,n,i,0)}function wrt(e,t,r,n,i){return Uq(null,e,t,r,n,i,1)}function Trt(e,t,r,n,i,a){return Uq(e,t,r,n,i,a,1)}lie.exports={deg2rad:mrt,rad2deg:yrt,angleDelta:oie,angleDist:_rt,isFullCircle:Nq,isAngleInsideSector:sie,isPtInsideSector:xrt,pathArc:brt,pathSector:wrt,pathAnnulus:Trt}});var cie=ye(fb=>{"use strict";fb.isLeftAnchor=function(t){return t.xanchor==="left"||t.xanchor==="auto"&&t.x<=1/3};fb.isCenterAnchor=function(t){return t.xanchor==="center"||t.xanchor==="auto"&&t.x>1/3&&t.x<2/3};fb.isRightAnchor=function(t){return t.xanchor==="right"||t.xanchor==="auto"&&t.x>=2/3};fb.isTopAnchor=function(t){return t.yanchor==="top"||t.yanchor==="auto"&&t.y>=2/3};fb.isMiddleAnchor=function(t){return t.yanchor==="middle"||t.yanchor==="auto"&&t.y>1/3&&t.y<2/3};fb.isBottomAnchor=function(t){return t.yanchor==="bottom"||t.yanchor==="auto"&&t.y<=1/3}});var die=ye(hb=>{"use strict";var Vq=r3().mod;hb.segmentsIntersect=hie;function hie(e,t,r,n,i,a,o,s){var l=r-e,u=i-e,c=o-i,f=n-t,h=a-t,d=s-a,v=l*d-c*f;if(v===0)return null;var x=(u*d-c*h)/v,b=(u*f-l*h)/v;return b<0||b>1||x<0||x>1?null:{x:e+l*x,y:t+f*x}}hb.segmentDistance=function(t,r,n,i,a,o,s,l){if(hie(t,r,n,i,a,o,s,l))return 0;var u=n-t,c=i-r,f=s-a,h=l-o,d=u*u+c*c,v=f*f+h*h,x=Math.min(C6(u,c,d,a-t,o-r),C6(u,c,d,s-t,l-r),C6(f,h,v,t-a,r-o),C6(f,h,v,n-a,i-o));return Math.sqrt(x)};function C6(e,t,r,n,i){var a=n*e+i*t;if(a<0)return n*n+i*i;if(a>r){var o=n-e,s=i-t;return o*o+s*s}else{var l=n*t-i*e;return l*l/r}}var L6,Hq,fie;hb.getTextLocation=function(t,r,n,i){if((t!==Hq||i!==fie)&&(L6={},Hq=t,fie=i),L6[n])return L6[n];var a=t.getPointAtLength(Vq(n-i/2,r)),o=t.getPointAtLength(Vq(n+i/2,r)),s=Math.atan((o.y-a.y)/(o.x-a.x)),l=t.getPointAtLength(Vq(n,r)),u=(l.x*4+a.x+o.x)/6,c=(l.y*4+a.y+o.y)/6,f={x:u,y:c,theta:s};return L6[n]=f,f};hb.clearLocationCache=function(){Hq=null};hb.getVisibleSegment=function(t,r,n){var i=r.left,a=r.right,o=r.top,s=r.bottom,l=0,u=t.getTotalLength(),c=u,f,h;function d(x){var b=t.getPointAtLength(x);x===0?f=b:x===u&&(h=b);var p=b.x<i?i-b.x:b.x>a?b.x-a:0,E=b.y<o?o-b.y:b.y>s?b.y-s:0;return Math.sqrt(p*p+E*E)}for(var v=d(l);v;){if(l+=v+n,l>c)return;v=d(l)}for(v=d(c);v;){if(c-=v+n,l>c)return;v=d(c)}return{min:l,max:c,len:c-l,total:u,isClosed:l===0&&c===u&&Math.abs(f.x-h.x)<.1&&Math.abs(f.y-h.y)<.1}};hb.findPointOnPath=function(t,r,n,i){i=i||{};for(var a=i.pathLength||t.getTotalLength(),o=i.tolerance||.001,s=i.iterationLimit||30,l=t.getPointAtLength(0)[n]>t.getPointAtLength(a)[n]?-1:1,u=0,c=0,f=a,h,d,v;u<s;){if(h=(c+f)/2,d=t.getPointAtLength(h),v=d[n]-r,Math.abs(v)<o)return d;l*v>0?f=h:c=h,u++}return d}});var P6=ye(US=>{"use strict";var xy={};US.throttle=function(t,r,n){var i=xy[t],a=Date.now();if(!i){for(var o in xy)xy[o].ts<a-6e4&&delete xy[o];i=xy[t]={ts:0,timer:null}}vie(i);function s(){n(),i.ts=Date.now(),i.onDone&&(i.onDone(),i.onDone=null)}if(a>i.ts+r){s();return}i.timer=setTimeout(function(){s(),i.timer=null},r)};US.done=function(e){var t=xy[e];return!t||!t.timer?Promise.resolve():new Promise(function(r){var n=t.onDone;t.onDone=function(){n&&n(),r(),t.onDone=null}})};US.clear=function(e){if(e)vie(xy[e]),delete xy[e];else for(var t in xy)US.clear(t)};function vie(e){e&&e.timer!==null&&(clearTimeout(e.timer),e.timer=null)}});var gie=ye((gtr,pie)=>{"use strict";pie.exports=function(t){t._responsiveChartHandler&&(window.removeEventListener("resize",t._responsiveChartHandler),delete t._responsiveChartHandler)}});var mie=ye((mtr,I6)=>{"use strict";I6.exports=Gq;I6.exports.isMobile=Gq;I6.exports.default=Gq;var Art=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,Srt=/CrOS/,Mrt=/android|ipad|playbook|silk/i;function Gq(e){e||(e={});let t=e.ua;if(!t&&typeof navigator!="undefined"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=Art.test(t)&&!Srt.test(t)||!!e.tablet&&Mrt.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}});var _ie=ye((ytr,yie)=>{"use strict";var Ert=uo(),krt=mie();yie.exports=function(t){var r;if(t&&t.hasOwnProperty("userAgent")?r=t.userAgent:r=Crt(),typeof r!="string")return!0;var n=krt({ua:{headers:{"user-agent":r}},tablet:!0,featureDetect:!1});if(!n)for(var i=r.split(" "),a=1;a<i.length;a++){var o=i[a];if(o.indexOf("Safari")!==-1)for(var s=a-1;s>-1;s--){var l=i[s];if(l.substr(0,8)==="Version/"){var u=l.substr(8).split(".")[0];if(Ert(u)&&(u=+u),u>=13)return!0}}}return n};function Crt(){var e;return typeof navigator!="undefined"&&(e=navigator.userAgent),e&&e.headers&&typeof e.headers["user-agent"]=="string"&&(e=e.headers["user-agent"]),e}});var bie=ye((_tr,xie)=>{"use strict";var Lrt=xa();xie.exports=function(t,r,n){var i=t.selectAll("g."+n.replace(/\s/g,".")).data(r,function(o){return o[0].trace.uid});i.exit().remove(),i.enter().append("g").attr("class",n),i.order();var a=t.classed("rangeplot")?"nodeRangePlot3":"node3";return i.each(function(o){o[0][a]=Lrt.select(this)}),i}});var Tie=ye((xtr,wie)=>{"use strict";var Prt=ba();wie.exports=function(t,r){for(var n=t._context.locale,i=0;i<2;i++){for(var a=t._context.locales,o=0;o<2;o++){var s=(a[n]||{}).dictionary;if(s){var l=s[r];if(l)return l}a=Prt.localeRegistry}var u=n.split("-")[0];if(u===n)break;n=u}return r}});var jq=ye((btr,Aie)=>{"use strict";Aie.exports=function(t){for(var r={},n=[],i=0,a=0;a<t.length;a++){var o=t[a];r[o]!==1&&(r[o]=1,n[i++]=o)}return n}});var Mie=ye((wtr,Sie)=>{"use strict";Sie.exports=function(t){for(var r=Drt(t)?Rrt:Irt,n=[],i=0;i<t.length;i++){var a=t[i];r(a)&&n.push(a)}return n};function Irt(e){return e.visible===!0}function Rrt(e){var t=e[0].trace;return t.visible===!0&&t._length!==0}function Drt(e){return Array.isArray(e)&&Array.isArray(e[0])&&e[0][0]&&e[0][0].trace}});var kie=ye((Ttr,Eie)=>{"use strict";Eie.exports=function(t,r){if(!r)return t;var n=1/Math.abs(r),i=n>1?(n*t+n*r)/n:t+r,a=String(i).length;if(a>16){var o=String(r).length,s=String(t).length;if(a>=s+o){var l=parseFloat(i).toPrecision(12);l.indexOf("e+")===-1&&(i=+l)}}return i}});var Lie=ye((Atr,Cie)=>{"use strict";var zrt=uo(),Frt=es().BADNUM,qrt=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;Cie.exports=function(t){return typeof t=="string"&&(t=t.replace(qrt,"")),zrt(t)?Number(t):Frt}});var Mr=ye((Str,Hie)=>{"use strict";var VS=xa(),Ort=e3().utcFormat,Brt=vq().format,Fie=uo(),qie=es(),Oie=qie.FP_SAFE,Nrt=-Oie,Pie=qie.BADNUM,li=Hie.exports={};li.adjustFormat=function(t){return!t||/^\d[.]\df/.test(t)||/[.]\d%/.test(t)?t:t==="0.f"?"~f":/^\d%/.test(t)?"~%":/^\ds/.test(t)?"~s":!/^[~,.0$]/.test(t)&&/[&fps]/.test(t)?"~"+t:t};var Iie={};li.warnBadFormat=function(e){var t=String(e);Iie[t]||(Iie[t]=1,li.warn('encountered bad format: "'+t+'"'))};li.noFormat=function(e){return String(e)};li.numberFormat=function(e){var t;try{t=Brt(li.adjustFormat(e))}catch(r){return li.warnBadFormat(e),li.noFormat}return t};li.nestedProperty=ES();li.keyedContainer=Tee();li.relativeAttr=See();li.isPlainObject=gy();li.toLogRange=u6();li.relinkPrivateKeys=Cee();var J1=vv();li.isArrayBuffer=J1.isArrayBuffer;li.isTypedArray=J1.isTypedArray;li.isArrayOrTypedArray=J1.isArrayOrTypedArray;li.isArray1D=J1.isArray1D;li.ensureArray=J1.ensureArray;li.concat=J1.concat;li.maxRowLength=J1.maxRowLength;li.minRowLength=J1.minRowLength;var Bie=r3();li.mod=Bie.mod;li.modHalf=Bie.modHalf;var $1=Xee();li.valObjectMeta=$1.valObjectMeta;li.coerce=$1.coerce;li.coerce2=$1.coerce2;li.coerceFont=$1.coerceFont;li.coercePattern=$1.coercePattern;li.coerceHoverinfo=$1.coerceHoverinfo;li.coerceSelectionMarkerOpacity=$1.coerceSelectionMarkerOpacity;li.validate=$1.validate;var Wp=tie();li.dateTime2ms=Wp.dateTime2ms;li.isDateTime=Wp.isDateTime;li.ms2DateTime=Wp.ms2DateTime;li.ms2DateTimeLocal=Wp.ms2DateTimeLocal;li.cleanDate=Wp.cleanDate;li.isJSDate=Wp.isJSDate;li.formatDate=Wp.formatDate;li.incrementMonth=Wp.incrementMonth;li.dateTick0=Wp.dateTick0;li.dfltRange=Wp.dfltRange;li.findExactDates=Wp.findExactDates;li.MIN_MS=Wp.MIN_MS;li.MAX_MS=Wp.MAX_MS;var db=k6();li.findBin=db.findBin;li.sorterAsc=db.sorterAsc;li.sorterDes=db.sorterDes;li.distinctVals=db.distinctVals;li.roundUp=db.roundUp;li.sort=db.sort;li.findIndexOfMin=db.findIndexOfMin;li.sortObjectKeys=Y1();var by=nie();li.aggNums=by.aggNums;li.len=by.len;li.mean=by.mean;li.geometricMean=by.geometricMean;li.median=by.median;li.midRange=by.midRange;li.variance=by.variance;li.stdev=by.stdev;li.interp=by.interp;var yg=m6();li.init2dArray=yg.init2dArray;li.transposeRagged=yg.transposeRagged;li.dot=yg.dot;li.translationMatrix=yg.translationMatrix;li.rotationMatrix=yg.rotationMatrix;li.rotationXYMatrix=yg.rotationXYMatrix;li.apply3DTransform=yg.apply3DTransform;li.apply2DTransform=yg.apply2DTransform;li.apply2DTransform2=yg.apply2DTransform2;li.convertCssMatrix=yg.convertCssMatrix;li.inverseTransformMatrix=yg.inverseTransformMatrix;var vm=uie();li.deg2rad=vm.deg2rad;li.rad2deg=vm.rad2deg;li.angleDelta=vm.angleDelta;li.angleDist=vm.angleDist;li.isFullCircle=vm.isFullCircle;li.isAngleInsideSector=vm.isAngleInsideSector;li.isPtInsideSector=vm.isPtInsideSector;li.pathArc=vm.pathArc;li.pathSector=vm.pathSector;li.pathAnnulus=vm.pathAnnulus;var d3=cie();li.isLeftAnchor=d3.isLeftAnchor;li.isCenterAnchor=d3.isCenterAnchor;li.isRightAnchor=d3.isRightAnchor;li.isTopAnchor=d3.isTopAnchor;li.isMiddleAnchor=d3.isMiddleAnchor;li.isBottomAnchor=d3.isBottomAnchor;var v3=die();li.segmentsIntersect=v3.segmentsIntersect;li.segmentDistance=v3.segmentDistance;li.getTextLocation=v3.getTextLocation;li.clearLocationCache=v3.clearLocationCache;li.getVisibleSegment=v3.getVisibleSegment;li.findPointOnPath=v3.findPointOnPath;var z6=no();li.extendFlat=z6.extendFlat;li.extendDeep=z6.extendDeep;li.extendDeepAll=z6.extendDeepAll;li.extendDeepNoArrays=z6.extendDeepNoArrays;var Wq=G1();li.log=Wq.log;li.warn=Wq.warn;li.error=Wq.error;var Urt=n3();li.counterRegex=Urt.counter;var Zq=P6();li.throttle=Zq.throttle;li.throttleDone=Zq.done;li.clearThrottle=Zq.clear;var _g=DS();li.getGraphDiv=_g.getGraphDiv;li.isPlotDiv=_g.isPlotDiv;li.removeElement=_g.removeElement;li.addStyleRule=_g.addStyleRule;li.addRelatedStyleRule=_g.addRelatedStyleRule;li.deleteRelatedStyleRule=_g.deleteRelatedStyleRule;li.setStyleOnHover=_g.setStyleOnHover;li.getFullTransformMatrix=_g.getFullTransformMatrix;li.getElementTransformMatrix=_g.getElementTransformMatrix;li.getElementAndAncestors=_g.getElementAndAncestors;li.equalDomRects=_g.equalDomRects;li.clearResponsive=gie();li.preserveDrawingBuffer=_ie();li.makeTraceGroups=bie();li._=Tie();li.notifier=Sq();li.filterUnique=jq();li.filterVisible=Mie();li.pushUnique=kq();li.increment=kie();li.cleanNumber=Lie();li.ensureNumber=function(t){return Fie(t)?(t=Number(t),t>Oie||t<Nrt?Pie:t):Pie};li.isIndex=function(e,t){return t!==void 0&&e>=t?!1:Fie(e)&&e>=0&&e%1===0};li.noop=g6();li.identity=OS();li.repeat=function(e,t){for(var r=new Array(t),n=0;n<t;n++)r[n]=e;return r};li.swapAttrs=function(e,t,r,n){r||(r="x"),n||(n="y");for(var i=0;i<t.length;i++){var a=t[i],o=li.nestedProperty(e,a.replace("?",r)),s=li.nestedProperty(e,a.replace("?",n)),l=o.get();o.set(s.get()),s.set(l)}};li.raiseToTop=function(t){t.parentNode.appendChild(t)};li.cancelTransition=function(e){return e.transition().duration(0)};li.constrain=function(e,t,r){return t>r?Math.max(r,Math.min(t,e)):Math.max(t,Math.min(r,e))};li.bBoxIntersect=function(e,t,r){return r=r||0,e.left<=t.right+r&&t.left<=e.right+r&&e.top<=t.bottom+r&&t.top<=e.bottom+r};li.simpleMap=function(e,t,r,n,i){for(var a=e.length,o=new Array(a),s=0;s<a;s++)o[s]=t(e[s],r,n,i);return o};li.randstr=function e(t,r,n,i){if(n||(n=16),r===void 0&&(r=24),r<=0)return"0";var a=Math.log(Math.pow(2,r))/Math.log(n),o="",s,l,u;for(s=2;a===1/0;s*=2)a=Math.log(Math.pow(2,r/s))/Math.log(n)*s;var c=a-Math.floor(a);for(s=0;s<Math.floor(a);s++)u=Math.floor(Math.random()*n).toString(n),o=u+o;c&&(l=Math.pow(n,c),u=Math.floor(Math.random()*l).toString(n),o=u+o);var f=parseInt(o,n);return t&&t[o]||f!==1/0&&f>=Math.pow(2,r)?i>10?(li.warn("randstr failed uniqueness"),o):e(t,r,n,(i||0)+1):o};li.OptionControl=function(e,t){e||(e={}),t||(t="opt");var r={};return r.optionList=[],r._newoption=function(n){n[t]=e,r[n.name]=n,r.optionList.push(n)},r["_"+t]=e,r};li.smooth=function(e,t){if(t=Math.round(t)||0,t<2)return e;var r=e.length,n=2*r,i=2*t-1,a=new Array(i),o=new Array(r),s,l,u,c;for(s=0;s<i;s++)a[s]=(1-Math.cos(Math.PI*(s+1)/t))/(2*t);for(s=0;s<r;s++){for(c=0,l=0;l<i;l++)u=s+l+1-t,u<-r?u-=n*Math.round(u/n):u>=n&&(u-=n*Math.floor(u/n)),u<0?u=-1-u:u>=r&&(u=n-1-u),c+=e[u]*a[l];o[s]=c}return o};li.syncOrAsync=function(e,t,r){var n,i;function a(){return li.syncOrAsync(e,t,r)}for(;e.length;)if(i=e.splice(0,1)[0],n=i(t),n&&n.then)return n.then(a);return r&&r(t)};li.stripTrailingSlash=function(e){return e.substr(-1)==="/"?e.substr(0,e.length-1):e};li.noneOrAll=function(e,t,r){if(e){var n=!1,i=!0,a,o;for(a=0;a<r.length;a++)o=e[r[a]],o!=null?n=!0:i=!1;if(n&&!i)for(a=0;a<r.length;a++)e[r[a]]=t[r[a]]}};li.mergeArray=function(e,t,r,n){var i=typeof n=="function";if(li.isArrayOrTypedArray(e))for(var a=Math.min(e.length,t.length),o=0;o<a;o++){var s=e[o];t[o][r]=i?n(s):s}};li.mergeArrayCastPositive=function(e,t,r){return li.mergeArray(e,t,r,function(n){var i=+n;return isFinite(i)&&i>0?i:0})};li.fillArray=function(e,t,r,n){if(n=n||li.identity,li.isArrayOrTypedArray(e))for(var i=0;i<t.length;i++)t[i][r]=n(e[i])};li.castOption=function(e,t,r,n){n=n||li.identity;var i=li.nestedProperty(e,r).get();return li.isArrayOrTypedArray(i)?Array.isArray(t)&&li.isArrayOrTypedArray(i[t[0]])?n(i[t[0]][t[1]]):n(i[t]):i};li.extractOption=function(e,t,r,n){if(r in e)return e[r];var i=li.nestedProperty(t,n).get();if(!Array.isArray(i))return i};function Nie(e){var t={};for(var r in e)for(var n=e[r],i=0;i<n.length;i++)t[n[i]]=+r;return t}li.tagSelected=function(e,t,r){var n=t.selectedpoints,i=t._indexToPoints,a;i&&(a=Nie(i));function o(f){return f!==void 0&&f<e.length}for(var s=0;s<n.length;s++){var l=n[s];if(li.isIndex(l)||li.isArrayOrTypedArray(l)&&li.isIndex(l[0])&&li.isIndex(l[1])){var u=a?a[l]:l,c=r?r[u]:u;o(c)&&(e[c].selected=1)}}};li.selIndices2selPoints=function(e){var t=e.selectedpoints,r=e._indexToPoints;if(r){for(var n=Nie(r),i=[],a=0;a<t.length;a++){var o=t[a];if(li.isIndex(o)){var s=n[o];li.isIndex(s)&&i.push(s)}}return i}else return t};li.getTargetArray=function(e,t){var r=t.target;if(typeof r=="string"&&r){var n=li.nestedProperty(e,r).get();return li.isArrayOrTypedArray(n)?n:!1}else if(li.isArrayOrTypedArray(r))return r;return!1};function Uie(e,t,r){var n={};typeof t!="object"&&(t={});var i=r==="pieLike"?-1:3,a=Object.keys(e),o,s,l;for(o=0;o<a.length;o++)s=a[o],l=e[s],!(s.charAt(0)==="_"||typeof l=="function")&&(s==="module"?n[s]=l:Array.isArray(l)?s==="colorscale"||i===-1?n[s]=l.slice():n[s]=l.slice(0,i):li.isTypedArray(l)?i===-1?n[s]=l.subarray():n[s]=l.subarray(0,i):l&&typeof l=="object"?n[s]=Uie(e[s],t[s],r):n[s]=l);for(a=Object.keys(t),o=0;o<a.length;o++)s=a[o],l=t[s],(typeof l!="object"||!(s in n)||typeof n[s]!="object")&&(n[s]=l);return n}li.minExtend=Uie;li.titleCase=function(e){return e.charAt(0).toUpperCase()+e.substr(1)};li.containsAny=function(e,t){for(var r=0;r<t.length;r++)if(e.indexOf(t[r])!==-1)return!0;return!1};var Vrt=/Version\/[\d\.]+.*Safari/;li.isSafari=function(){return Vrt.test(window.navigator.userAgent)};var Hrt=/iPad|iPhone|iPod/;li.isIOS=function(){return Hrt.test(window.navigator.userAgent)};var Grt=/Firefox\/(\d+)\.\d+/;li.getFirefoxVersion=function(){var e=Grt.exec(window.navigator.userAgent);if(e&&e.length===2){var t=parseInt(e[1]);if(!isNaN(t))return t}return null};li.isD3Selection=function(e){return e instanceof VS.selection};li.ensureSingle=function(e,t,r,n){var i=e.select(t+(r?"."+r:""));if(i.size())return i;var a=e.append(t);return r&&a.classed(r,!0),n&&a.call(n),a};li.ensureSingleById=function(e,t,r,n){var i=e.select(t+"#"+r);if(i.size())return i;var a=e.append(t).attr("id",r);return n&&a.call(n),a};li.objectFromPath=function(e,t){for(var r=e.split("."),n,i=n={},a=0;a<r.length;a++){var o=r[a],s=null,l=r[a].match(/(.*)\[([0-9]+)\]/);l?(o=l[1],s=l[2],n=n[o]=[],a===r.length-1?n[s]=t:n[s]={},n=n[s]):(a===r.length-1?n[o]=t:n[o]={},n=n[o])}return i};var jrt=/^([^\[\.]+)\.(.+)?/,Wrt=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;function R6(e){return e.slice(0,2)==="__"}li.expandObjectPaths=function(e){var t,r,n,i,a,o,s;if(typeof e=="object"&&!Array.isArray(e)){for(r in e)if(e.hasOwnProperty(r))if(t=r.match(jrt)){if(i=e[r],n=t[1],R6(n))continue;delete e[r],e[n]=li.extendDeepNoArrays(e[n]||{},li.objectFromPath(r,li.expandObjectPaths(i))[n])}else if(t=r.match(Wrt)){if(i=e[r],n=t[1],R6(n))continue;if(a=parseInt(t[2]),delete e[r],e[n]=e[n]||[],t[3]===".")s=t[4],o=e[n][a]=e[n][a]||{},li.extendDeepNoArrays(o,li.objectFromPath(s,li.expandObjectPaths(i)));else{if(R6(n))continue;e[n][a]=li.expandObjectPaths(i)}}else{if(R6(r))continue;e[r]=li.expandObjectPaths(e[r])}}return e};li.numSeparate=function(e,t,r){if(r||(r=!1),typeof t!="string"||t.length===0)throw new Error("Separator string required for formatting!");typeof e=="number"&&(e=String(e));var n=/(\d+)(\d{3})/,i=t.charAt(0),a=t.charAt(1),o=e.split("."),s=o[0],l=o.length>1?i+o[1]:"";if(a&&(o.length>1||s.length>4||r))for(;n.test(s);)s=s.replace(n,"$1"+a+"$2");return s+l};li.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var Vie=/^\w*$/;li.templateString=function(e,t){var r={};return e.replace(li.TEMPLATE_STRING_REGEX,function(n,i){var a;return Vie.test(i)?a=t[i]:(r[i]=r[i]||li.nestedProperty(t,i).get,a=r[i](!0)),a!==void 0?a:""})};var Zrt={max:10,count:0,name:"hovertemplate"};li.hovertemplateString=function(){return Xq.apply(Zrt,arguments)};var Xrt={max:10,count:0,name:"texttemplate"};li.texttemplateString=function(){return Xq.apply(Xrt,arguments)};var Yrt=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function Krt(e){var t=e.match(Yrt);return t?{key:t[1],op:t[2],number:Number(t[3])}:{key:e,op:null,number:null}}var Jrt={max:10,count:0,name:"texttemplate",parseMultDiv:!0};li.texttemplateStringForShapes=function(){return Xq.apply(Jrt,arguments)};var Rie=/^[:|\|]/;function Xq(e,t,r){var n=this,i=arguments;return t||(t={}),e.replace(li.TEMPLATE_STRING_REGEX,function(a,o,s){var l=o==="xother"||o==="yother",u=o==="_xother"||o==="_yother",c=o==="_xother_"||o==="_yother_",f=o==="xother_"||o==="yother_",h=l||u||f||c,d=o;(u||c)&&(d=d.substring(1)),(f||c)&&(d=d.substring(0,d.length-1));var v=null,x=null;if(n.parseMultDiv){var b=Krt(d);d=b.key,v=b.op,x=b.number}var p;if(h){if(p=t[d],p===void 0)return""}else{var E,k;for(k=3;k<i.length;k++)if(E=i[k],!!E){if(E.hasOwnProperty(d)){p=E[d];break}if(Vie.test(d)||(p=li.nestedProperty(E,d).get(!0)),p!==void 0)break}}if(p!==void 0&&(v==="*"&&(p*=x),v==="/"&&(p/=x)),p===void 0&&n)return n.count<n.max&&(li.warn("Variable '"+d+"' in "+n.name+" could not be found!"),p=a),n.count===n.max&&li.warn("Too many "+n.name+" warnings - additional warnings will be suppressed"),n.count++,a;if(s){var A;if(s[0]===":"&&(A=r?r.numberFormat:li.numberFormat,p!==""&&(p=A(s.replace(Rie,""))(p))),s[0]==="|"){A=r?r.timeFormat:Ort;var L=li.dateTime2ms(p);p=li.formatDate(L,s.replace(Rie,""),!1,A)}}else{var _=d+"Label";t.hasOwnProperty(_)&&(p=t[_])}return h&&(p="("+p+")",(u||c)&&(p=" "+p),(f||c)&&(p=p+" ")),p})}var D6=48,Die=57;li.subplotSort=function(e,t){for(var r=Math.min(e.length,t.length)+1,n=0,i=0,a=0;a<r;a++){var o=e.charCodeAt(a)||0,s=t.charCodeAt(a)||0,l=o>=D6&&o<=Die,u=s>=D6&&s<=Die;if(l&&(n=10*n+o-D6),u&&(i=10*i+s-D6),!l||!u){if(n!==i)return n-i;if(o!==s)return o-s}}return i-n};var h3=2e9;li.seedPseudoRandom=function(){h3=2e9};li.pseudoRandom=function(){var e=h3;return h3=(69069*h3+1)%4294967296,Math.abs(h3-e)<429496729?li.pseudoRandom():h3/4294967296};li.fillText=function(e,t,r){var n=Array.isArray(r)?function(o){r.push(o)}:function(o){r.text=o},i=li.extractOption(e,t,"htx","hovertext");if(li.isValidTextValue(i))return n(i);var a=li.extractOption(e,t,"tx","text");if(li.isValidTextValue(a))return n(a)};li.isValidTextValue=function(e){return e||e===0};li.formatPercent=function(e,t){t=t||0;for(var r=(Math.round(100*e*Math.pow(10,t))*Math.pow(.1,t)).toFixed(t)+"%",n=0;n<t;n++)r.indexOf(".")!==-1&&(r=r.replace("0%","%"),r=r.replace(".%","%"));return r};li.isHidden=function(e){var t=window.getComputedStyle(e).display;return!t||t==="none"};li.strTranslate=function(e,t){return e||t?"translate("+e+","+t+")":""};li.strRotate=function(e){return e?"rotate("+e+")":""};li.strScale=function(e){return e!==1?"scale("+e+")":""};li.getTextTransform=function(e){var t=e.noCenter,r=e.textX,n=e.textY,i=e.targetX,a=e.targetY,o=e.anchorX||0,s=e.anchorY||0,l=e.rotate,u=e.scale;return u?u>1&&(u=1):u=0,li.strTranslate(i-u*(r+o),a-u*(n+s))+li.strScale(u)+(l?"rotate("+l+(t?"":" "+r+" "+n)+")":"")};li.setTransormAndDisplay=function(e,t){e.attr("transform",li.getTextTransform(t)),e.style("display",t.scale?null:"none")};li.ensureUniformFontSize=function(e,t){var r=li.extendFlat({},t);return r.size=Math.max(t.size,e._fullLayout.uniformtext.minsize||0),r};li.join2=function(e,t,r){var n=e.length;return n>1?e.slice(0,-1).join(t)+r+e[n-1]:e.join(t)};li.bigFont=function(e){return Math.round(1.2*e)};var zie=li.getFirefoxVersion(),$rt=zie!==null&&zie<86;li.getPositionFromD3Event=function(){return $rt?[VS.event.layerX,VS.event.layerY]:[VS.event.offsetX,VS.event.offsetY]}});var Wie=ye(()=>{"use strict";var Qrt=Mr(),Gie={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .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:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(Yq in Gie)jie=Yq.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),Qrt.addStyleRule(jie,Gie[Yq]);var jie,Yq});var Kq=ye((ktr,Zie)=>{Zie.exports=!0});var $q=ye((Ctr,Xie)=>{"use strict";var eit=Kq(),Jq;typeof window.matchMedia=="function"?Jq=!window.matchMedia("(hover: none)").matches:Jq=eit;Xie.exports=Jq});var vb=ye((Ltr,Qq)=>{"use strict";var p3=typeof Reflect=="object"?Reflect:null,Yie=p3&&typeof p3.apply=="function"?p3.apply:function(t,r,n){return Function.prototype.apply.call(t,r,n)},F6;p3&&typeof p3.ownKeys=="function"?F6=p3.ownKeys:Object.getOwnPropertySymbols?F6=function(t){return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t))}:F6=function(t){return Object.getOwnPropertyNames(t)};function tit(e){console&&console.warn&&console.warn(e)}var Jie=Number.isNaN||function(t){return t!==t};function Tc(){Tc.init.call(this)}Qq.exports=Tc;Qq.exports.once=ait;Tc.EventEmitter=Tc;Tc.prototype._events=void 0;Tc.prototype._eventsCount=0;Tc.prototype._maxListeners=void 0;var Kie=10;function q6(e){if(typeof e!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}Object.defineProperty(Tc,"defaultMaxListeners",{enumerable:!0,get:function(){return Kie},set:function(e){if(typeof e!="number"||e<0||Jie(e))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");Kie=e}});Tc.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0};Tc.prototype.setMaxListeners=function(t){if(typeof t!="number"||t<0||Jie(t))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+t+".");return this._maxListeners=t,this};function $ie(e){return e._maxListeners===void 0?Tc.defaultMaxListeners:e._maxListeners}Tc.prototype.getMaxListeners=function(){return $ie(this)};Tc.prototype.emit=function(t){for(var r=[],n=1;n<arguments.length;n++)r.push(arguments[n]);var i=t==="error",a=this._events;if(a!==void 0)i=i&&a.error===void 0;else if(!i)return!1;if(i){var o;if(r.length>0&&(o=r[0]),o instanceof Error)throw o;var s=new Error("Unhandled error."+(o?" ("+o.message+")":""));throw s.context=o,s}var l=a[t];if(l===void 0)return!1;if(typeof l=="function")Yie(l,this,r);else for(var u=l.length,c=ine(l,u),n=0;n<u;++n)Yie(c[n],this,r);return!0};function Qie(e,t,r,n){var i,a,o;if(q6(r),a=e._events,a===void 0?(a=e._events=Object.create(null),e._eventsCount=0):(a.newListener!==void 0&&(e.emit("newListener",t,r.listener?r.listener:r),a=e._events),o=a[t]),o===void 0)o=a[t]=r,++e._eventsCount;else if(typeof o=="function"?o=a[t]=n?[r,o]:[o,r]:n?o.unshift(r):o.push(r),i=$ie(e),i>0&&o.length>i&&!o.warned){o.warned=!0;var s=new Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");s.name="MaxListenersExceededWarning",s.emitter=e,s.type=t,s.count=o.length,tit(s)}return e}Tc.prototype.addListener=function(t,r){return Qie(this,t,r,!1)};Tc.prototype.on=Tc.prototype.addListener;Tc.prototype.prependListener=function(t,r){return Qie(this,t,r,!0)};function rit(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function ene(e,t,r){var n={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},i=rit.bind(n);return i.listener=r,n.wrapFn=i,i}Tc.prototype.once=function(t,r){return q6(r),this.on(t,ene(this,t,r)),this};Tc.prototype.prependOnceListener=function(t,r){return q6(r),this.prependListener(t,ene(this,t,r)),this};Tc.prototype.removeListener=function(t,r){var n,i,a,o,s;if(q6(r),i=this._events,i===void 0)return this;if(n=i[t],n===void 0)return this;if(n===r||n.listener===r)--this._eventsCount===0?this._events=Object.create(null):(delete i[t],i.removeListener&&this.emit("removeListener",t,n.listener||r));else if(typeof n!="function"){for(a=-1,o=n.length-1;o>=0;o--)if(n[o]===r||n[o].listener===r){s=n[o].listener,a=o;break}if(a<0)return this;a===0?n.shift():iit(n,a),n.length===1&&(i[t]=n[0]),i.removeListener!==void 0&&this.emit("removeListener",t,s||r)}return this};Tc.prototype.off=Tc.prototype.removeListener;Tc.prototype.removeAllListeners=function(t){var r,n,i;if(n=this._events,n===void 0)return this;if(n.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):n[t]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete n[t]),this;if(arguments.length===0){var a=Object.keys(n),o;for(i=0;i<a.length;++i)o=a[i],o!=="removeListener"&&this.removeAllListeners(o);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(r=n[t],typeof r=="function")this.removeListener(t,r);else if(r!==void 0)for(i=r.length-1;i>=0;i--)this.removeListener(t,r[i]);return this};function tne(e,t,r){var n=e._events;if(n===void 0)return[];var i=n[t];return i===void 0?[]:typeof i=="function"?r?[i.listener||i]:[i]:r?nit(i):ine(i,i.length)}Tc.prototype.listeners=function(t){return tne(this,t,!0)};Tc.prototype.rawListeners=function(t){return tne(this,t,!1)};Tc.listenerCount=function(e,t){return typeof e.listenerCount=="function"?e.listenerCount(t):rne.call(e,t)};Tc.prototype.listenerCount=rne;function rne(e){var t=this._events;if(t!==void 0){var r=t[e];if(typeof r=="function")return 1;if(r!==void 0)return r.length}return 0}Tc.prototype.eventNames=function(){return this._eventsCount>0?F6(this._events):[]};function ine(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e[n];return r}function iit(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}function nit(e){for(var t=new Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}function ait(e,t){return new Promise(function(r,n){function i(o){e.removeListener(t,a),n(o)}function a(){typeof e.removeListener=="function"&&e.removeListener("error",i),r([].slice.call(arguments))}nne(e,t,a,{once:!0}),t!=="error"&&oit(e,i,{once:!0})})}function oit(e,t,r){typeof e.on=="function"&&nne(e,"error",t,r)}function nne(e,t,r,n){if(typeof e.on=="function")n.once?e.once(t,r):e.on(t,r);else if(typeof e.addEventListener=="function")e.addEventListener(t,function i(a){n.once&&e.removeEventListener(t,i),r(a)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e)}});var g3=ye((Ptr,ane)=>{"use strict";var eO=vb().EventEmitter,sit={init:function(e){if(e._ev instanceof eO)return e;var t=new eO,r=new eO;return e._ev=t,e._internalEv=r,e.on=t.on.bind(t),e.once=t.once.bind(t),e.removeListener=t.removeListener.bind(t),e.removeAllListeners=t.removeAllListeners.bind(t),e._internalOn=r.on.bind(r),e._internalOnce=r.once.bind(r),e._removeInternalListener=r.removeListener.bind(r),e._removeAllInternalListeners=r.removeAllListeners.bind(r),e.emit=function(n,i){t.emit(n,i),r.emit(n,i)},e},triggerHandler:function(e,t,r){var n,i=e._ev;if(!i)return;var a=i._events[t];if(!a)return;function o(l){if(l.listener){if(i.removeListener(t,l.listener),!l.fired)return l.fired=!0,l.listener.apply(i,[r])}else return l.apply(i,[r])}a=Array.isArray(a)?a:[a];var s;for(s=0;s<a.length-1;s++)o(a[s]);return n=o(a[s]),n},purge:function(e){return delete e._ev,delete e.on,delete e.once,delete e.removeListener,delete e.removeAllListeners,delete e.emit,delete e._ev,delete e._internalEv,delete e._internalOn,delete e._internalOnce,delete e._removeInternalListener,delete e._removeAllInternalListeners,e}};ane.exports=sit});var lne=ye((Itr,sne)=>{"use strict";var one=Mr(),lit=ub().dfltConfig;function uit(e,t){for(var r=[],n,i=0;i<t.length;i++)n=t[i],n===e?r[i]=n:typeof n=="object"?r[i]=Array.isArray(n)?one.extendDeep([],n):one.extendDeepAll({},n):r[i]=n;return r}var wy={};wy.add=function(e,t,r,n,i){var a,o;if(e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},o=e.undoQueue.index,e.autoplay){e.undoQueue.inSequence||(e.autoplay=!1);return}!e.undoQueue.sequence||e.undoQueue.beginSequence?(a={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},e.undoQueue.queue.splice(o,e.undoQueue.queue.length-o,a),e.undoQueue.index+=1):a=e.undoQueue.queue[o-1],e.undoQueue.beginSequence=!1,a&&(a.undo.calls.unshift(t),a.undo.args.unshift(r),a.redo.calls.push(n),a.redo.args.push(i)),e.undoQueue.queue.length>lit.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)};wy.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0};wy.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1};wy.undo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n<r.undo.calls.length;n++)wy.plotDo(t,r.undo.calls[n],r.undo.args[n]);t.undoQueue.inSequence=!1,t.autoplay=!1}};wy.redo=function(t){var r,n;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index>=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,n=0;n<r.redo.calls.length;n++)wy.plotDo(t,r.redo.calls[n],r.redo.args[n]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}};wy.plotDo=function(e,t,r){e.autoplay=!0,r=uit(e,r),t.apply(null,r)};sne.exports=wy});var tO=ye((Rtr,une)=>{"use strict";une.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}});var _3=ye(Bh=>{"use strict";var x0=ba(),HS=Mr(),B6=vl(),rO=s3(),cit=tO(),fit=zS(),hit=ub().configAttributes,cne=Bu(),xg=HS.extendDeepAll,m3=HS.isPlainObject,dit=HS.isArrayOrTypedArray,N6=HS.nestedProperty,vit=HS.valObjectMeta,iO="_isSubplotObj",U6="_isLinkedToArray",pit="_arrayAttrRegexps",hne="_deprecated",nO=[iO,U6,pit,hne];Bh.IS_SUBPLOT_OBJ=iO;Bh.IS_LINKED_TO_ARRAY=U6;Bh.DEPRECATED=hne;Bh.UNDERSCORE_ATTRS=nO;Bh.get=function(){var e={};return x0.allTypes.forEach(function(t){e[t]=mit(t)}),{defs:{valObjects:vit,metaKeys:nO.concat(["description","role","editType","impliedEdits"]),editType:{traces:cne.traces,layout:cne.layout},impliedEdits:{}},traces:e,layout:yit(),frames:_it(),animation:y3(fit),config:y3(hit)}};Bh.crawl=function(e,t,r,n){var i=r||0;n=n||"",Object.keys(e).forEach(function(a){var o=e[a];if(nO.indexOf(a)===-1){var s=(n?n+".":"")+a;t(o,a,e,i,s),!Bh.isValObject(o)&&m3(o)&&a!=="impliedEdits"&&Bh.crawl(o,t,i+1,s)}})};Bh.isValObject=function(e){return e&&e.valType!==void 0};Bh.findArrayAttributes=function(e){var t=[],r=[],n=[],i,a;function o(l,u,c,f){r=r.slice(0,f).concat([u]),n=n.slice(0,f).concat([l&&l._isLinkedToArray]);var h=l&&(l.valType==="data_array"||l.arrayOk===!0)&&!(r[f-1]==="colorbar"&&(u==="ticktext"||u==="tickvals"));h&&s(i,0,"")}function s(l,u,c){var f=l[r[u]],h=c+r[u];if(u===r.length-1)dit(f)&&t.push(a+h);else if(n[u]){if(Array.isArray(f))for(var d=0;d<f.length;d++)m3(f[d])&&s(f[d],u+1,h+"["+d+"].")}else m3(f)&&s(f,u+1,h+".")}return i=e,a="",Bh.crawl(B6,o),e._module&&e._module.attributes&&Bh.crawl(e._module.attributes,o),t};Bh.getTraceValObject=function(e,t){var r=t[0],n=1,i,a,o=e._module;if(o||(o=(x0.modules[e.type||B6.type.dflt]||{})._module),!o)return!1;if(i=o.attributes,a=i&&i[r],!a){var s=o.basePlotModule;s&&s.attributes&&(a=s.attributes[r])}return a||(a=B6[r]),dne(a,t,n)};Bh.getLayoutValObject=function(e,t){var r=git(e,t[0]);return dne(r,t,1)};function git(e,t){var r,n,i,a,o=e._basePlotModules;if(o){var s;for(r=0;r<o.length;r++){if(i=o[r],i.attrRegex&&i.attrRegex.test(t)){if(i.layoutAttrOverrides)return i.layoutAttrOverrides;!s&&i.layoutAttributes&&(s=i.layoutAttributes)}var l=i.baseLayoutAttrOverrides;if(l&&t in l)return l[t]}if(s)return s}var u=e._modules;if(u){for(r=0;r<u.length;r++)if(a=u[r].layoutAttributes,a&&t in a)return a[t]}for(n in x0.componentsRegistry){if(i=x0.componentsRegistry[n],i.name==="colorscale"&&t.indexOf("coloraxis")===0)return i.layoutAttributes[t];if(!i.schema&&t===i.name)return i.layoutAttributes}return t in rO?rO[t]:!1}function dne(e,t,r){if(!e)return!1;if(e._isLinkedToArray){if(O6(t[r]))r++;else if(r<t.length)return!1}for(;r<t.length;r++){var n=e[t[r]];if(m3(n))e=n;else break;if(r===t.length-1)break;if(e._isLinkedToArray){if(r++,!O6(t[r]))return!1}else if(e.valType==="info_array"){r++;var i=t[r];if(!O6(i))return!1;var a=e.items;if(Array.isArray(a)){if(i>=a.length)return!1;if(e.dimensions===2){if(r++,t.length===r)return e;var o=t[r];if(!O6(o))return!1;e=a[i][o]}else e=a[i]}else e=a}}return e}function O6(e){return e===Math.round(e)&&e>=0}function mit(e){var t,r;t=x0.modules[e]._module,r=t.basePlotModule;var n={};n.type=null;var i=xg({},B6),a=xg({},t.attributes);Bh.crawl(a,function(l,u,c,f,h){N6(i,h).set(void 0),l===void 0&&N6(a,h).set(void 0)}),xg(n,i),x0.traceIs(e,"noOpacity")&&delete n.opacity,x0.traceIs(e,"showLegend")||(delete n.showlegend,delete n.legendgroup),x0.traceIs(e,"noHover")&&(delete n.hoverinfo,delete n.hoverlabel),t.selectPoints||delete n.selectedpoints,xg(n,a),r.attributes&&xg(n,r.attributes),n.type=e;var o={meta:t.meta||{},categories:t.categories||{},animatable:!!t.animatable,type:e,attributes:y3(n)};if(t.layoutAttributes){var s={};xg(s,t.layoutAttributes),o.layoutAttributes=y3(s)}return t.animatable||Bh.crawl(o,function(l){Bh.isValObject(l)&&"anim"in l&&delete l.anim}),o}function yit(){var e={},t,r;xg(e,rO);for(t in x0.subplotsRegistry)if(r=x0.subplotsRegistry[t],!!r.layoutAttributes)if(Array.isArray(r.attr))for(var n=0;n<r.attr.length;n++)fne(e,r,r.attr[n]);else{var i=r.attr==="subplot"?r.name:r.attr;fne(e,r,i)}for(t in x0.componentsRegistry){r=x0.componentsRegistry[t];var a=r.schema;if(a&&(a.subplots||a.layout)){var o=a.subplots;if(o&&o.xaxis&&!o.yaxis)for(var s in o.xaxis)delete e.yaxis[s];delete e.xaxis.shift,delete e.xaxis.autoshift}else r.name==="colorscale"?xg(e,r.layoutAttributes):r.layoutAttributes&&Tit(e,r.layoutAttributes,r.name)}return{layoutAttributes:y3(e)}}function _it(){var e={frames:xg({},cit)};return y3(e),e.frames}function y3(e){return xit(e),bit(e),wit(e),e}function xit(e){function t(n){return{valType:"string",editType:"none"}}function r(n,i,a){Bh.isValObject(n)?(n.arrayOk===!0||n.valType==="data_array")&&(a[i+"src"]=t(i)):m3(n)&&(n.role="object")}Bh.crawl(e,r)}function bit(e){function t(r,n,i){if(r){var a=r[U6];a&&(delete r[U6],i[n]={items:{}},i[n].items[a]=r,i[n].role="object")}}Bh.crawl(e,t)}function wit(e){function t(r){for(var n in r)if(m3(r[n]))t(r[n]);else if(Array.isArray(r[n]))for(var i=0;i<r[n].length;i++)t(r[n][i]);else r[n]instanceof RegExp&&(r[n]=r[n].toString())}t(e)}function fne(e,t,r){var n=N6(e,r),i=xg({},t.layoutAttributes);i[iO]=!0,n.set(i)}function Tit(e,t,r){var n=N6(e,r);n.set(xg(n.get()||{},t))}});var Vs=ye(pb=>{"use strict";var x3=Mr(),Ait=vl(),Q1="templateitemname",aO={name:{valType:"string",editType:"none"}};aO[Q1]={valType:"string",editType:"calc"};pb.templatedArray=function(e,t){return t._isLinkedToArray=e,t.name=aO.name,t[Q1]=aO[Q1],t};pb.traceTemplater=function(e){var t={},r,n;for(r in e)n=e[r],Array.isArray(n)&&n.length&&(t[r]=0);function i(a){r=x3.coerce(a,{},Ait,"type");var o={type:r,_template:null};if(r in t){n=e[r];var s=t[r]%n.length;t[r]++,o._template=n[s]}return o}return{newTrace:i}};pb.newContainer=function(e,t,r){var n=e._template,i=n&&(n[t]||r&&n[r]);x3.isPlainObject(i)||(i=null);var a=e[t]={_template:i};return a};pb.arrayTemplater=function(e,t,r){var n=e._template,i=n&&n[pne(t)],a=n&&n[t];(!Array.isArray(a)||!a.length)&&(a=[]);var o={};function s(u){var c={name:u.name,_input:u},f=c[Q1]=u[Q1];if(!vne(f))return c._template=i,c;for(var h=0;h<a.length;h++){var d=a[h];if(d.name===f)return o[f]=1,c._template=d,c}return c[r]=u[r]||!1,c._template=!1,c}function l(){for(var u=[],c=0;c<a.length;c++){var f=a[c],h=f.name;if(vne(h)&&!o[h]){var d={_template:f,name:h,_input:{_templateitemname:h}};d[Q1]=f[Q1],u.push(d),o[h]=1}}return u}return{newItem:s,defaultItems:l}};function vne(e){return e&&typeof e=="string"}function pne(e){var t=e.length-1;return e.charAt(t)!=="s"&&x3.warn("bad argument to arrayDefaultKey: "+e),e.substr(0,e.length-1)+"defaults"}pb.arrayDefaultKey=pne;pb.arrayEditor=function(e,t,r){var n=(x3.nestedProperty(e,t).get()||[]).length,i=r._index,a=i>=n&&(r._input||{})._templateitemname;a&&(i=n);var o=t+"["+i+"]",s;function l(){s={},a&&(s[o]={},s[o][Q1]=a)}l();function u(d,v){s[d]=v}function c(d,v){a?x3.nestedProperty(s[o],d).set(v):s[o+"."+d]=v}function f(){var d=s;return l(),d}function h(d,v){d&&c(d,v);var x=f();for(var b in x)x3.nestedProperty(e,b).set(x[b])}return{modifyBase:u,modifyItem:c,getUpdateObj:f,applyUpdate:h}}});var ad=ye((Ftr,gne)=>{"use strict";var GS=n3().counter;gne.exports={idRegex:{x:GS("x","( domain)?"),y:GS("y","( domain)?")},attrRegex:GS("[xy]axis"),xAxisMatch:GS("xaxis"),yAxisMatch:GS("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}});var af=ye(Tp=>{"use strict";var Sit=ba(),oO=ad();Tp.id2name=function(t){if(!(typeof t!="string"||!t.match(oO.AX_ID_PATTERN))){var r=t.split(" ")[0].substr(1);return r==="1"&&(r=""),t.charAt(0)+"axis"+r}};Tp.name2id=function(t){if(t.match(oO.AX_NAME_PATTERN)){var r=t.substr(5);return r==="1"&&(r=""),t.charAt(0)+r}};Tp.cleanId=function(t,r,n){var i=/( domain)$/.test(t);if(!(typeof t!="string"||!t.match(oO.AX_ID_PATTERN))&&!(r&&t.charAt(0)!==r)&&!(i&&!n)){var a=t.split(" ")[0].substr(1).replace(/^0+/,"");return a==="1"&&(a=""),t.charAt(0)+a+(i&&n?" domain":"")}};Tp.list=function(e,t,r){var n=e._fullLayout;if(!n)return[];var i=Tp.listIds(e,t),a=new Array(i.length),o;for(o=0;o<i.length;o++){var s=i[o];a[o]=n[s.charAt(0)+"axis"+s.substr(1)]}if(!r){var l=n._subplots.gl3d||[];for(o=0;o<l.length;o++){var u=n[l[o]];t?a.push(u[t+"axis"]):a.push(u.xaxis,u.yaxis,u.zaxis)}}return a};Tp.listIds=function(e,t){var r=e._fullLayout;if(!r)return[];var n=r._subplots;return t?n[t+"axis"]:n.xaxis.concat(n.yaxis)};Tp.getFromId=function(e,t,r){var n=e._fullLayout;return t=t===void 0||typeof t!="string"?t:t.replace(" domain",""),r==="x"?t=t.replace(/y[0-9]*/,""):r==="y"&&(t=t.replace(/x[0-9]*/,"")),n[Tp.id2name(t)]};Tp.getFromTrace=function(e,t,r){var n=e._fullLayout,i=null;if(Sit.traceIs(t,"gl3d")){var a=t.scene;a.substr(0,5)==="scene"&&(i=n[a][r+"axis"])}else i=Tp.getFromId(e,t[r+"axis"]||r);return i};Tp.idSort=function(e,t){var r=e.charAt(0),n=t.charAt(0);return r!==n?r>n?1:-1:+(e.substr(1)||1)-+(t.substr(1)||1)};Tp.ref2id=function(e){return/^[xyz]/.test(e)?e.split(" ")[0]:!1};function mne(e,t){if(t&&t.length){for(var r=0;r<t.length;r++)if(t[r][e])return!0}return!1}Tp.isLinked=function(e,t){return mne(t,e._axisMatchGroups)||mne(t,e._axisConstraintGroups)}});var e_=ye((Otr,yne)=>{"use strict";function Mit(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".outline-controllers").remove()}function Eit(e){var t=e._fullLayout._zoomlayer;t&&t.selectAll(".select-outline").remove(),e._fullLayout._outlining=!1}yne.exports={clearOutlineControllers:Mit,clearOutline:Eit}});var V6=ye((Btr,_ne)=>{"use strict";_ne.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}});var kd=ye(G6=>{"use strict";var H6=ba(),Ntr=ad().SUBPLOT_PATTERN;G6.getSubplotCalcData=function(e,t,r){var n=H6.subplotsRegistry[t];if(!n)return[];for(var i=n.attr,a=[],o=0;o<e.length;o++){var s=e[o],l=s[0].trace;l[i]===r&&a.push(s)}return a};G6.getModuleCalcData=function(e,t,r){var n=[],i=[],a;if(typeof t=="string"?a=H6.getModule(t).plot:typeof t=="function"?a=t:a=t.plot,!a)return[n,e];for(var o=r,s=0;s<e.length;s++){var l=e[s],u=l[0].trace,c=u.zorder!==void 0;u.visible!==!0||u._length===0||(u._module&&u._module.plot===a&&(!c||u.zorder===o)?n.push(l):i.push(l))}return[n,i]};G6.getSubplotData=function(t,r,n){if(!H6.subplotsRegistry[r])return[];for(var i=H6.subplotsRegistry[r].attr,a=[],o,s,l,u=0;u<t.length;u++)o=t[u],o[i]===n&&a.push(o);return a}});var Tne=ye(gb=>{"use strict";var kit=ba(),b3=Mr();gb.manageCommandObserver=function(e,t,r,n){var i={},a=!0;t&&t._commandObserver&&(i=t._commandObserver),i.cache||(i.cache={}),i.lookupTable={};var o=gb.hasSimpleAPICommandBindings(e,r,i.lookupTable);if(t&&t._commandObserver){if(o)return i;if(t._commandObserver.remove)return t._commandObserver.remove(),t._commandObserver=null,i}if(o){xne(e,o,i.cache),i.check=function(){if(a){var c=xne(e,o,i.cache);return c.changed&&n&&i.lookupTable[c.value]!==void 0&&(i.disable(),Promise.resolve(n({value:c.value,type:o.type,prop:o.prop,traces:o.traces,index:i.lookupTable[c.value]})).then(i.enable,i.enable)),c.changed}};for(var s=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],l=0;l<s.length;l++)e._internalOn(s[l],i.check);i.remove=function(){for(var u=0;u<s.length;u++)e._removeInternalListener(s[u],i.check)}}else b3.log("Unable to automatically bind plot updates to API command"),i.lookupTable={},i.remove=function(){};return i.disable=function(){a=!1},i.enable=function(){a=!0},t&&(t._commandObserver=i),i};gb.hasSimpleAPICommandBindings=function(e,t,r){var n,i=t.length,a;for(n=0;n<i;n++){var o,s=t[n],l=s.method,u=s.args;if(Array.isArray(u)||(u=[]),!l)return!1;var c=gb.computeAPICommandBindings(e,l,u);if(c.length!==1)return!1;if(!a)a=c[0],Array.isArray(a.traces)&&a.traces.sort();else{if(o=c[0],o.type!==a.type||o.prop!==a.prop)return!1;if(Array.isArray(a.traces))if(Array.isArray(o.traces)){o.traces.sort();for(var f=0;f<a.traces.length;f++)if(a.traces[f]!==o.traces[f])return!1}else return!1;else if(o.prop!==a.prop)return!1}o=c[0];var h=o.value;if(Array.isArray(h))if(h.length===1)h=h[0];else return!1;r&&(r[h]=n)}return a};function xne(e,t,r){var n,i,a,o=!1;if(t.type==="data")n=e._fullData[t.traces!==null?t.traces[0]:0];else if(t.type==="layout")n=e._fullLayout;else return!1;return i=b3.nestedProperty(n,t.prop).get(),a=r[t.type]=r[t.type]||{},a.hasOwnProperty(t.prop)&&a[t.prop]!==i&&(o=!0),a[t.prop]=i,{changed:o,value:i}}gb.executeAPICommand=function(e,t,r){if(t==="skip")return Promise.resolve();var n=kit.apiMethodRegistry[t],i=[e];Array.isArray(r)||(r=[]);for(var a=0;a<r.length;a++)i.push(r[a]);return n.apply(null,i).catch(function(o){return b3.warn("API call to Plotly."+t+" rejected.",o),Promise.reject(o)})};gb.computeAPICommandBindings=function(e,t,r){var n;switch(Array.isArray(r)||(r=[]),t){case"restyle":n=wne(e,r);break;case"relayout":n=bne(e,r);break;case"update":n=wne(e,[r[0],r[2]]).concat(bne(e,[r[1]]));break;case"animate":n=Cit(e,r);break;default:n=[]}return n};function Cit(e,t){return Array.isArray(t[0])&&t[0].length===1&&["string","number"].indexOf(typeof t[0][0])!==-1?[{type:"layout",prop:"_currentFrame",value:t[0][0].toString()}]:[]}function bne(e,t){var r=[],n=t[0],i={};if(typeof n=="string")i[n]=t[1];else if(b3.isPlainObject(n))i=n;else return r;return sO(i,function(a,o,s){r.push({type:"layout",prop:a,value:s})},"",0),r}function wne(e,t){var r,n,i,a,o=[];if(n=t[0],i=t[1],r=t[2],a={},typeof n=="string")a[n]=i;else if(b3.isPlainObject(n))a=n,r===void 0&&(r=i);else return o;return r===void 0&&(r=null),sO(a,function(s,l,u){var c,f;if(Array.isArray(u)){f=u.slice();var h=Math.min(f.length,e.data.length);r&&(h=Math.min(h,r.length)),c=[];for(var d=0;d<h;d++)c[d]=r?r[d]:d}else f=u,c=r?r.slice():null;if(c===null)Array.isArray(f)&&(f=f[0]);else if(Array.isArray(c)){if(!Array.isArray(f)){var v=f;f=[];for(var x=0;x<c.length;x++)f[x]=v}f.length=Math.min(c.length,f.length)}o.push({type:"data",prop:s,traces:c,value:f})},"",0),o}function sO(e,t,r,n){Object.keys(e).forEach(function(i){var a=e[i];if(i[0]!=="_"){var o=r+(n>0?".":"")+i;b3.isPlainObject(a)?sO(a,t,o,n+1):t(o,i,a)}})}});var Xu=ye((Htr,qne)=>{"use strict";var Lne=xa(),Lit=e3().timeFormatLocale,Pit=vq().formatLocale,jS=uo(),Iit=pq(),bl=ba(),Pne=_3(),Rit=Vs(),Ca=Mr(),Ine=va(),Ane=es().BADNUM,Ap=af(),Dit=e_().clearOutline,zit=V6(),lO=zS(),Fit=tO(),qit=kd().getModuleCalcData,Sne=Ca.relinkPrivateKeys,mb=Ca._,ha=qne.exports={};Ca.extendFlat(ha,bl);ha.attributes=vl();ha.attributes.type.values=ha.allTypes;ha.fontAttrs=Su();ha.layoutAttributes=s3();var W6=Tne();ha.executeAPICommand=W6.executeAPICommand;ha.computeAPICommandBindings=W6.computeAPICommandBindings;ha.manageCommandObserver=W6.manageCommandObserver;ha.hasSimpleAPICommandBindings=W6.hasSimpleAPICommandBindings;ha.redrawText=function(e){return e=Ca.getGraphDiv(e),new Promise(function(t){setTimeout(function(){e._fullLayout&&(bl.getComponentMethod("annotations","draw")(e),bl.getComponentMethod("legend","draw")(e),bl.getComponentMethod("colorbar","draw")(e),t(ha.previousPromises(e)))},300)})};ha.resize=function(e){e=Ca.getGraphDiv(e);var t,r=new Promise(function(n,i){(!e||Ca.isHidden(e))&&i(new Error("Resize must be passed a displayed plot div element.")),e._redrawTimer&&clearTimeout(e._redrawTimer),e._resolveResize&&(t=e._resolveResize),e._resolveResize=n,e._redrawTimer=setTimeout(function(){if(!e.layout||e.layout.width&&e.layout.height||Ca.isHidden(e)){n(e);return}delete e.layout.width,delete e.layout.height;var a=e.changed;e.autoplay=!0,bl.call("relayout",e,{autosize:!0}).then(function(){e.changed=a,e._resolveResize===n&&(delete e._resolveResize,n(e))})},100)});return t&&t(r),r};ha.previousPromises=function(e){if((e._promises||[]).length)return Promise.all(e._promises).then(function(){e._promises=[]})};ha.addLinks=function(e){if(!(!e._context.showLink&&!e._context.showSources)){var t=e._fullLayout,r=Ca.ensureSingle(t._paper,"text","js-plot-link-container",function(l){l.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:Ine.defaultLine,"pointer-events":"all"}).each(function(){var u=Lne.select(this);u.append("tspan").classed("js-link-to-tool",!0),u.append("tspan").classed("js-link-spacer",!0),u.append("tspan").classed("js-sourcelinks",!0)})}),n=r.node(),i={y:t._paper.attr("height")-9};document.body.contains(n)&&n.getComputedTextLength()>=t.width-20?(i["text-anchor"]="start",i.x=5):(i["text-anchor"]="end",i.x=t._paper.attr("width")-7),r.attr(i);var a=r.select(".js-link-to-tool"),o=r.select(".js-link-spacer"),s=r.select(".js-sourcelinks");e._context.showSources&&e._context.showSources(e),e._context.showLink&&Oit(e,a),o.text(a.text()&&s.text()?" - ":"")}};function Oit(e,t){t.text("");var r=t.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(e._context.linkText+" \xBB");if(e._context.sendData)r.on("click",function(){ha.sendDataToCloud(e)});else{var n=window.location.pathname.split("/"),i=window.location.search;r.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+n[2].split(".")[0]+"/"+n[1]+i})}}ha.sendDataToCloud=function(e){var t=(window.PLOTLYENV||{}).BASE_URL||e._context.plotlyServerURL;if(t){e.emit("plotly_beforeexport");var r=Lne.select(e).append("div").attr("id","hiddenform").style("display","none"),n=r.append("form").attr({action:t+"/external",method:"post",target:"_blank"}),i=n.append("input").attr({type:"text",name:"data"});return i.node().value=ha.graphJson(e,!1,"keepdata"),n.node().submit(),r.remove(),e.emit("plotly_afterexport"),!1}};var Bit=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],Nit=["year","month","dayMonth","dayMonthYear"];ha.supplyDefaults=function(e,t){var r=t&&t.skipUpdateCalc,n=e._fullLayout||{};if(n._skipDefaults){delete n._skipDefaults;return}var i=e._fullLayout={},a=e.layout||{},o=e._fullData||[],s=e._fullData=[],l=e.data||[],u=e.calcdata||[],c=e._context||{},f;e._transitionData||ha.createTransitionData(e),i._dfltTitle={plot:mb(e,"Click to enter Plot title"),subtitle:mb(e,"Click to enter Plot subtitle"),x:mb(e,"Click to enter X axis title"),y:mb(e,"Click to enter Y axis title"),colorbar:mb(e,"Click to enter Colorscale title"),annotation:mb(e,"new text")},i._traceWord=mb(e,"trace");var h=Mne(e,Bit);if(i._mapboxAccessToken=c.mapboxAccessToken,n._initialAutoSizeIsDone){var d=n.width,v=n.height;ha.supplyLayoutGlobalDefaults(a,i,h),a.width||(i.width=d),a.height||(i.height=v),ha.sanitizeMargins(i)}else{ha.supplyLayoutGlobalDefaults(a,i,h);var x=!a.width||!a.height,b=i.autosize,p=c.autosizable,E=x&&(b||p);E?ha.plotAutoSize(e,a,i):x&&ha.sanitizeMargins(i),!b&&x&&(a.width=i.width,a.height=i.height)}i._d3locale=Hit(h,i.separators),i._extraFormat=Mne(e,Nit),i._initialAutoSizeIsDone=!0,i._dataLength=l.length,i._modules=[],i._visibleModules=[],i._basePlotModules=[];var k=i._subplots=Vit(),A=i._splomAxes={x:{},y:{}},L=i._splomSubplots={};i._splomGridDflt={},i._scatterStackOpts={},i._firstScatter={},i._alignmentOpts={},i._colorAxes={},i._requestRangeslider={},i._traceUids=Uit(o,l),ha.supplyDataDefaults(l,s,a,i);var _=Object.keys(A.x),C=Object.keys(A.y);if(_.length>1&&C.length>1){for(bl.getComponentMethod("grid","sizeDefaults")(a,i),f=0;f<_.length;f++)Ca.pushUnique(k.xaxis,_[f]);for(f=0;f<C.length;f++)Ca.pushUnique(k.yaxis,C[f]);for(var M in L)Ca.pushUnique(k.cartesian,M)}if(i._has=ha._hasPlotType.bind(i),o.length===s.length)for(f=0;f<s.length;f++)Sne(s[f],o[f]);ha.supplyLayoutModuleDefaults(a,i,s,e._transitionData);var g=i._visibleModules,P=[];for(f=0;f<g.length;f++){var T=g[f].crossTraceDefaults;T&&Ca.pushUnique(P,T)}for(f=0;f<P.length;f++)P[f](s,i);i._hasOnlyLargeSploms=i._basePlotModules.length===1&&i._basePlotModules[0].name==="splom"&&_.length>15&&C.length>15&&i.shapes.length===0&&i.images.length===0,ha.linkSubplots(s,i,o,n),ha.cleanPlot(s,i,o,n);var F=!!(n._has&&n._has("cartesian")),q=!!(i._has&&i._has("cartesian")),V=F,H=q;V&&!H?n._bgLayer.remove():H&&!V&&(i._shouldCreateBgLayer=!0),n._zoomlayer&&!e._dragging&&Dit({_fullLayout:n}),Git(s,i),Sne(i,n),bl.getComponentMethod("colorscale","crossTraceDefaults")(s,i),i._preGUI||(i._preGUI={}),i._tracePreGUI||(i._tracePreGUI={});var X=i._tracePreGUI,G={},N;for(N in X)G[N]="old";for(f=0;f<s.length;f++)N=s[f]._fullInput.uid,G[N]||(X[N]={}),G[N]="new";for(N in G)G[N]==="old"&&delete X[N];Rne(i),bl.getComponentMethod("rangeslider","makeData")(i),!r&&u.length===s.length&&ha.supplyDefaultsUpdateCalc(u,s)};ha.supplyDefaultsUpdateCalc=function(e,t){for(var r=0;r<t.length;r++){var n=t[r],i=(e[r]||[])[0];if(i&&i.trace){var a=i.trace;if(a._hasCalcTransform){var o=a._arrayAttrs,s,l,u;for(s=0;s<o.length;s++)l=o[s],u=Ca.nestedProperty(a,l).get().slice(),Ca.nestedProperty(n,l).set(u)}i.trace=n}}};function Uit(e,t){var r=t.length,n=[],i,a;for(i=0;i<e.length;i++){var o=e[i]._fullInput;o!==a&&n.push(o),a=o}var s=n.length,l=new Array(r),u={};function c(d,v){l[v]=d,u[d]=1}function f(d,v){if(d&&typeof d=="string"&&!u[d])return c(d,v),!0}for(i=0;i<r;i++){var h=t[i].uid;typeof h=="number"&&(h=String(h)),!f(h,i)&&(i<s&&f(n[i].uid,i)||c(Ca.randstr(u),i))}return l}function Vit(){var e=bl.collectableSubplotTypes,t={},r,n;if(!e){e=[];var i=bl.subplotsRegistry;for(var a in i){var o=i[a],s=o.attr;if(s&&(e.push(a),Array.isArray(s)))for(n=0;n<s.length;n++)Ca.pushUnique(e,s[n])}}for(r=0;r<e.length;r++)t[e[r]]=[];return t}function Mne(e,t){var r=e._context.locale;r||(r="en-US");var n=!1,i={};function a(f){for(var h=!0,d=0;d<t.length;d++){var v=t[d];i[v]||(f[v]?i[v]=f[v]:h=!1)}h&&(n=!0)}for(var o=0;o<2;o++){for(var s=e._context.locales,l=0;l<2;l++){var u=(s[r]||{}).format;if(u&&(a(u),n))break;s=bl.localeRegistry}var c=r.split("-")[0];if(n||c===r)break;r=c}return n||a(bl.localeRegistry.en.format),i}function Hit(e,t){return e.decimal=t.charAt(0),e.thousands=t.charAt(1),{numberFormat:function(r){try{r=Pit(e).format(Ca.adjustFormat(r))}catch(n){return Ca.warnBadFormat(r),Ca.noFormat}return r},timeFormat:Lit(e).utcFormat}}function Git(e,t){var r,n=[];t.meta&&(r=t._meta={meta:t.meta,layout:{meta:t.meta}});for(var i=0;i<e.length;i++){var a=e[i];a.meta?n[a.index]=a._meta={meta:a.meta}:t.meta&&(a._meta={meta:t.meta}),t.meta&&(a._meta.layout={meta:t.meta})}n.length&&(r||(r=t._meta={}),r.data=n)}ha.createTransitionData=function(e){e._transitionData||(e._transitionData={}),e._transitionData._frames||(e._transitionData._frames=[]),e._transitionData._frameHash||(e._transitionData._frameHash={}),e._transitionData._counter||(e._transitionData._counter=0),e._transitionData._interruptCallbacks||(e._transitionData._interruptCallbacks=[])};ha._hasPlotType=function(e){var t,r=this._basePlotModules||[];for(t=0;t<r.length;t++)if(r[t].name===e)return!0;var n=this._modules||[];for(t=0;t<n.length;t++){var i=n[t].name;if(i===e)return!0;var a=bl.modules[i];if(a&&a.categories[e])return!0}return!1};ha.cleanPlot=function(e,t,r,n){var i,a,o=n._basePlotModules||[];for(i=0;i<o.length;i++){var s=o[i];s.clean&&s.clean(e,t,r,n)}var l=n._has&&n._has("gl"),u=t._has&&t._has("gl");l&&!u&&n._glcontainer!==void 0&&(n._glcontainer.selectAll(".gl-canvas").remove(),n._glcontainer.selectAll(".no-webgl").remove(),n._glcanvas=null);var c=!!n._infolayer;e:for(i=0;i<r.length;i++){var f=r[i],h=f.uid;for(a=0;a<e.length;a++){var d=e[a];if(h===d.uid)continue e}c&&n._infolayer.select(".cb"+h).remove()}};ha.linkSubplots=function(e,t,r,n){var i,a,o=n._plots||{},s=t._plots={},l=t._subplots,u={_fullData:e,_fullLayout:t},c=l.cartesian||[];for(i=0;i<c.length;i++){var f=c[i],h=o[f],d=Ap.getFromId(u,f,"x"),v=Ap.getFromId(u,f,"y"),x;for(h?x=s[f]=h:(x=s[f]={},x.id=f),d._counterAxes.push(v._id),v._counterAxes.push(d._id),d._subplotsWith.push(f),v._subplotsWith.push(f),x.xaxis=d,x.yaxis=v,x._hasClipOnAxisFalse=!1,a=0;a<e.length;a++){var b=e[a];if(b.xaxis===x.xaxis._id&&b.yaxis===x.yaxis._id&&b.cliponaxis===!1){x._hasClipOnAxisFalse=!0;break}}}var p=Ap.list(u,null,!0),E;for(i=0;i<p.length;i++){E=p[i];var k=null;E.overlaying&&(k=Ap.getFromId(u,E.overlaying),k&&k.overlaying&&(E.overlaying=!1,k=null)),E._mainAxis=k||E,k&&(E.domain=k.domain.slice()),E._anchorAxis=E.anchor==="free"?null:Ap.getFromId(u,E.anchor)}for(i=0;i<p.length;i++)if(E=p[i],E._counterAxes.sort(Ap.idSort),E._subplotsWith.sort(Ca.subplotSort),E._mainSubplot=jit(E,t),E._counterAxes.length&&(E.spikemode&&E.spikemode.indexOf("across")!==-1||E.automargin&&E.mirror&&E.anchor!=="free"||bl.getComponentMethod("rangeslider","isVisible")(E))){var A=1,L=0;for(a=0;a<E._counterAxes.length;a++){var _=Ap.getFromId(u,E._counterAxes[a]);A=Math.min(A,_.domain[0]),L=Math.max(L,_.domain[1])}A<L&&(E._counterDomainMin=A,E._counterDomainMax=L)}};function jit(e,t){var r={_fullLayout:t},n=e._id.charAt(0)==="x",i=e._mainAxis._anchorAxis,a="",o="",s="";if(i&&(s=i._mainAxis._id,a=n?e._id+s:s+e._id),!a||!t._plots[a]){a="";for(var l=e._counterAxes,u=0;u<l.length;u++){var c=l[u],f=n?e._id+c:c+e._id;o||(o=f);var h=Ap.getFromId(r,c);if(s&&h.overlaying===s){a=f;break}}}return a||o}ha.clearExpandedTraceDefaultColors=function(e){var t,r,n;function i(o,s,l,u){r[u]=s,r.length=u+1,o.valType==="color"&&o.dflt===void 0&&t.push(r.join("."))}for(r=[],t=e._module._colorAttrs,t||(e._module._colorAttrs=t=[],Pne.crawl(e._module.attributes,i)),n=0;n<t.length;n++){var a=Ca.nestedProperty(e,"_input."+t[n]);a.get()||Ca.nestedProperty(e,t[n]).set(null)}};ha.supplyDataDefaults=function(e,t,r,n){var i=n._modules,a=n._visibleModules,o=n._basePlotModules,s=0,l=0,u,c,f;n._transformModules=[];function h(E){t.push(E);var k=E._module;k&&(Ca.pushUnique(i,k),E.visible===!0&&Ca.pushUnique(a,k),Ca.pushUnique(o,E._module.basePlotModule),s++,E._input.visible!==!1&&l++)}var d={},v=[],x=(r.template||{}).data||{},b=Rit.traceTemplater(x);for(u=0;u<e.length;u++)f=e[u],c=b.newTrace(f),c.uid=n._traceUids[u],ha.supplyTraceDefaults(f,c,l,n,u),c.index=u,c._input=f,c._fullInput=c,h(c),bl.traceIs(c,"carpetAxis")&&(d[c.carpet]=c),bl.traceIs(c,"carpetDependent")&&v.push(u);for(u=0;u<v.length;u++)if(c=t[v[u]],!!c.visible){var p=d[c.carpet];if(c._carpet=p,!p||!p.visible){c.visible=!1;continue}c.xaxis=p.xaxis,c.yaxis=p.yaxis}};ha.supplyAnimationDefaults=function(e){e=e||{};var t,r={};function n(i,a){return Ca.coerce(e||{},r,lO,i,a)}if(n("mode"),n("direction"),n("fromcurrent"),Array.isArray(e.frame))for(r.frame=[],t=0;t<e.frame.length;t++)r.frame[t]=ha.supplyAnimationFrameDefaults(e.frame[t]||{});else r.frame=ha.supplyAnimationFrameDefaults(e.frame||{});if(Array.isArray(e.transition))for(r.transition=[],t=0;t<e.transition.length;t++)r.transition[t]=ha.supplyAnimationTransitionDefaults(e.transition[t]||{});else r.transition=ha.supplyAnimationTransitionDefaults(e.transition||{});return r};ha.supplyAnimationFrameDefaults=function(e){var t={};function r(n,i){return Ca.coerce(e||{},t,lO.frame,n,i)}return r("duration"),r("redraw"),t};ha.supplyAnimationTransitionDefaults=function(e){var t={};function r(n,i){return Ca.coerce(e||{},t,lO.transition,n,i)}return r("duration"),r("easing"),t};ha.supplyFrameDefaults=function(e){var t={};function r(n,i){return Ca.coerce(e,t,Fit,n,i)}return r("group"),r("name"),r("traces"),r("baseframe"),r("data"),r("layout"),t};ha.supplyTraceDefaults=function(e,t,r,n,i){var a=n.colorway||Ine.defaults,o=a[r%a.length],s;function l(k,A){return Ca.coerce(e,t,ha.attributes,k,A)}var u=l("visible");l("type"),l("name",n._traceWord+" "+i),l("uirevision",n.uirevision);var c=ha.getModule(t);if(t._module=c,c){var f=c.basePlotModule,h=f.attr,d=f.attributes;if(h&&d){var v=n._subplots,x="";if(Array.isArray(h))for(s=0;s<h.length;s++){var b=h[s],p=Ca.coerce(e,t,d,b);v[b]&&Ca.pushUnique(v[b],p),x+=p}else x=Ca.coerce(e,t,d,h);v[f.name]&&Ca.pushUnique(v[f.name],x)}}if(u&&(l("customdata"),l("ids"),l("meta"),bl.traceIs(t,"showLegend")?(Ca.coerce(e,t,c.attributes.showlegend?c.attributes:ha.attributes,"showlegend"),l("legend"),l("legendwidth"),l("legendgroup"),l("legendgrouptitle.text"),l("legendrank"),t._dfltShowLegend=!0):t._dfltShowLegend=!1,c&&c.supplyDefaults(e,t,o,n),bl.traceIs(t,"noOpacity")||l("opacity"),bl.traceIs(t,"notLegendIsolatable")&&(t.visible=!!t.visible),bl.traceIs(t,"noHover")||(t.hovertemplate||Ca.coerceHoverinfo(e,t,n),t.type!=="parcats"&&bl.getComponentMethod("fx","supplyDefaults")(e,t,o,n)),c&&c.selectPoints)){var E=l("selectedpoints");Ca.isTypedArray(E)&&(t.selectedpoints=Array.from(E))}return t};ha.supplyLayoutGlobalDefaults=function(e,t,r){function n(f,h){return Ca.coerce(e,t,ha.layoutAttributes,f,h)}var i=e.template;Ca.isPlainObject(i)&&(t.template=i,t._template=i.layout,t._dataTemplate=i.data),n("autotypenumbers");var a=Ca.coerceFont(n,"font"),o=a.size;Ca.coerceFont(n,"title.font",a,{overrideDflt:{size:Math.round(o*1.4)}}),n("title.text",t._dfltTitle.plot),n("title.xref");var s=n("title.yref");n("title.pad.t"),n("title.pad.r"),n("title.pad.b"),n("title.pad.l");var l=n("title.automargin");n("title.x"),n("title.xanchor"),n("title.y"),n("title.yanchor"),n("title.subtitle.text",t._dfltTitle.subtitle),Ca.coerceFont(n,"title.subtitle.font",a,{overrideDflt:{size:Math.round(t.title.font.size*.7)}}),l&&(s==="paper"&&(t.title.y!==0&&(t.title.y=1),t.title.yanchor==="auto"&&(t.title.yanchor=t.title.y===0?"top":"bottom")),s==="container"&&(t.title.y==="auto"&&(t.title.y=1),t.title.yanchor==="auto"&&(t.title.yanchor=t.title.y<.5?"bottom":"top")));var u=n("uniformtext.mode");u&&n("uniformtext.minsize"),n("autosize",!(e.width&&e.height)),n("width"),n("height"),n("minreducedwidth"),n("minreducedheight"),n("margin.l"),n("margin.r"),n("margin.t"),n("margin.b"),n("margin.pad"),n("margin.autoexpand"),e.width&&e.height&&ha.sanitizeMargins(t),bl.getComponentMethod("grid","sizeDefaults")(e,t),n("paper_bgcolor"),n("separators",r.decimal+r.thousands),n("hidesources"),n("colorway"),n("datarevision");var c=n("uirevision");n("editrevision",c),n("selectionrevision",c),bl.getComponentMethod("modebar","supplyLayoutDefaults")(e,t),bl.getComponentMethod("shapes","supplyDrawNewShapeDefaults")(e,t,n),bl.getComponentMethod("selections","supplyDrawNewSelectionDefaults")(e,t,n),n("meta"),Ca.isPlainObject(e.transition)&&(n("transition.duration"),n("transition.easing"),n("transition.ordering")),bl.getComponentMethod("calendars","handleDefaults")(e,t,"calendar"),bl.getComponentMethod("fx","supplyLayoutGlobalDefaults")(e,t,n),Ca.coerce(e,t,zit,"scattermode")};function j6(e){return typeof e=="string"&&e.substr(e.length-2)==="px"&&parseFloat(e)}ha.plotAutoSize=function(t,r,n){var i=t._context||{},a=i.frameMargins,o,s,l=Ca.isPlotDiv(t);if(l&&t.emit("plotly_autosize"),i.fillFrame)o=window.innerWidth,s=window.innerHeight,document.body.style.overflow="hidden";else{var u=l?window.getComputedStyle(t):{};if(o=j6(u.width)||j6(u.maxWidth)||n.width,s=j6(u.height)||j6(u.maxHeight)||n.height,jS(a)&&a>0){var c=1-2*a;o=Math.round(c*o),s=Math.round(c*s)}}var f=ha.layoutAttributes.width.min,h=ha.layoutAttributes.height.min;o<f&&(o=f),s<h&&(s=h);var d=!r.width&&Math.abs(n.width-o)>1,v=!r.height&&Math.abs(n.height-s)>1;(v||d)&&(d&&(n.width=o),v&&(n.height=s)),t._initialAutoSize||(t._initialAutoSize={width:o,height:s}),ha.sanitizeMargins(n)};ha.supplyLayoutModuleDefaults=function(e,t,r,n){var i=bl.componentsRegistry,a=t._basePlotModules,o,s,l,u=bl.subplotsRegistry.cartesian;for(o in i)l=i[o],l.includeBasePlot&&l.includeBasePlot(e,t);a.length||a.push(u),t._has("cartesian")&&(bl.getComponentMethod("grid","contentDefaults")(e,t),u.finalizeSubplots(e,t));for(var c in t._subplots)t._subplots[c].sort(Ca.subplotSort);for(s=0;s<a.length;s++)l=a[s],l.supplyLayoutDefaults&&l.supplyLayoutDefaults(e,t,r);var f=t._modules;for(s=0;s<f.length;s++)l=f[s],l.supplyLayoutDefaults&&l.supplyLayoutDefaults(e,t,r);var h=t._transformModules;for(s=0;s<h.length;s++)l=h[s],l.supplyLayoutDefaults&&l.supplyLayoutDefaults(e,t,r,n);for(o in i)l=i[o],l.supplyLayoutDefaults&&l.supplyLayoutDefaults(e,t,r)};ha.purge=function(e){var t=e._fullLayout||{};t._glcontainer!==void 0&&(t._glcontainer.selectAll(".gl-canvas").remove(),t._glcontainer.remove(),t._glcanvas=null),t._modeBar&&t._modeBar.destroy(),e._transitionData&&(e._transitionData._interruptCallbacks&&(e._transitionData._interruptCallbacks.length=0),e._transitionData._animationRaf&&window.cancelAnimationFrame(e._transitionData._animationRaf)),Ca.clearThrottle(),Ca.clearResponsive(e),delete e.data,delete e.layout,delete e._fullData,delete e._fullLayout,delete e.calcdata,delete e.empty,delete e.fid,delete e.undoqueue,delete e.undonum,delete e.autoplay,delete e.changed,delete e._promises,delete e._redrawTimer,delete e._hmlumcount,delete e._hmpixcount,delete e._transitionData,delete e._transitioning,delete e._initialAutoSize,delete e._transitioningWithDuration,delete e._dragging,delete e._dragged,delete e._dragdata,delete e._hoverdata,delete e._snapshotInProgress,delete e._editing,delete e._mouseDownTime,delete e._legendMouseDownTime,e.removeAllListeners&&e.removeAllListeners()};ha.style=function(e){var t=e._fullLayout._visibleModules,r=[],n;for(n=0;n<t.length;n++){var i=t[n];i.style&&Ca.pushUnique(r,i.style)}for(n=0;n<r.length;n++)r[n](e)};ha.sanitizeMargins=function(e){if(!(!e||!e.margin)){var t=e.width,r=e.height,n=e.margin,i=t-(n.l+n.r),a=r-(n.t+n.b),o;i<0&&(o=(t-1)/(n.l+n.r),n.l=Math.floor(o*n.l),n.r=Math.floor(o*n.r)),a<0&&(o=(r-1)/(n.t+n.b),n.t=Math.floor(o*n.t),n.b=Math.floor(o*n.b))}};ha.clearAutoMarginIds=function(e){e._fullLayout._pushmarginIds={}};ha.allowAutoMargin=function(e,t){e._fullLayout._pushmarginIds[t]=1};function Rne(e){var t=e.margin;if(!e._size){var r=e._size={l:Math.round(t.l),r:Math.round(t.r),t:Math.round(t.t),b:Math.round(t.b),p:Math.round(t.pad)};r.w=Math.round(e.width)-r.l-r.r,r.h=Math.round(e.height)-r.t-r.b}e._pushmargin||(e._pushmargin={}),e._pushmarginIds||(e._pushmarginIds={}),e._reservedMargin||(e._reservedMargin={})}var Dne=2,zne=2;ha.autoMargin=function(e,t,r){var n=e._fullLayout,i=n.width,a=n.height,o=n.margin,s=n.minreducedwidth,l=n.minreducedheight,u=Ca.constrain(i-o.l-o.r,Dne,s),c=Ca.constrain(a-o.t-o.b,zne,l),f=Math.max(0,i-u),h=Math.max(0,a-c),d=n._pushmargin,v=n._pushmarginIds;if(o.autoexpand!==!1){if(!r)delete d[t],delete v[t];else{var x=r.pad;if(x===void 0&&(x=Math.min(12,o.l,o.r,o.t,o.b)),f){var b=(r.l+r.r)/f;b>1&&(r.l/=b,r.r/=b)}if(h){var p=(r.t+r.b)/h;p>1&&(r.t/=p,r.b/=p)}var E=r.xl!==void 0?r.xl:r.x,k=r.xr!==void 0?r.xr:r.x,A=r.yt!==void 0?r.yt:r.y,L=r.yb!==void 0?r.yb:r.y;d[t]={l:{val:E,size:r.l+x},r:{val:k,size:r.r+x},b:{val:L,size:r.b+x},t:{val:A,size:r.t+x}},v[t]=1}if(!n._replotting)return ha.doAutoMargin(e)}};function Wit(e){if("_redrawFromAutoMarginCount"in e._fullLayout)return!1;var t=Ap.list(e,"",!0);for(var r in t)if(t[r].autoshift||t[r].shift)return!0;return!1}ha.doAutoMargin=function(e){var t=e._fullLayout,r=t.width,n=t.height;t._size||(t._size={}),Rne(t);var i=t._size,a=t.margin,o={t:0,b:0,l:0,r:0},s=Ca.extendFlat({},i),l=a.l,u=a.r,c=a.t,f=a.b,h=t._pushmargin,d=t._pushmarginIds,v=t.minreducedwidth,x=t.minreducedheight;if(a.autoexpand!==!1){for(var b in h)d[b]||delete h[b];var p=e._fullLayout._reservedMargin;for(var E in p)for(var k in p[E]){var A=p[E][k];o[k]=Math.max(o[k],A)}h.base={l:{val:0,size:l},r:{val:1,size:u},t:{val:1,size:c},b:{val:0,size:f}};for(var L in o){var _=0;for(var C in h)C!=="base"&&jS(h[C][L].size)&&(_=h[C][L].size>_?h[C][L].size:_);var M=Math.max(0,a[L]-_);o[L]=Math.max(0,o[L]-M)}for(var g in h){var P=h[g].l||{},T=h[g].b||{},F=P.val,q=P.size,V=T.val,H=T.size,X=r-o.r-o.l,G=n-o.t-o.b;for(var N in h){if(jS(q)&&h[N].r){var W=h[N].r.val,re=h[N].r.size;if(W>F){var ae=(q*W+(re-X)*F)/(W-F),_e=(re*(1-F)+(q-X)*(1-W))/(W-F);ae+_e>l+u&&(l=ae,u=_e)}}if(jS(H)&&h[N].t){var Me=h[N].t.val,ke=h[N].t.size;if(Me>V){var ge=(H*Me+(ke-G)*V)/(Me-V),ie=(ke*(1-V)+(H-G)*(1-Me))/(Me-V);ge+ie>f+c&&(f=ge,c=ie)}}}}}var Te=Ca.constrain(r-a.l-a.r,Dne,v),Ee=Ca.constrain(n-a.t-a.b,zne,x),Ae=Math.max(0,r-Te),ze=Math.max(0,n-Ee);if(Ae){var Ce=(l+u)/Ae;Ce>1&&(l/=Ce,u/=Ce)}if(ze){var me=(f+c)/ze;me>1&&(f/=me,c/=me)}if(i.l=Math.round(l)+o.l,i.r=Math.round(u)+o.r,i.t=Math.round(c)+o.t,i.b=Math.round(f)+o.b,i.p=Math.round(a.pad),i.w=Math.round(r)-i.l-i.r,i.h=Math.round(n)-i.t-i.b,!t._replotting&&(ha.didMarginChange(s,i)||Wit(e))){"_redrawFromAutoMarginCount"in t?t._redrawFromAutoMarginCount++:t._redrawFromAutoMarginCount=1;var Re=3*(1+Object.keys(d).length);if(t._redrawFromAutoMarginCount<Re)return bl.call("_doPlot",e);t._size=s,Ca.warn("Too many auto-margin redraws.")}Zit(e)};function Zit(e){var t=Ap.list(e,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(r){for(var n=0;n<t.length;n++){var i=t[n][r];i&&i()}})}var Ene=["l","r","t","b","p","w","h"];ha.didMarginChange=function(e,t){for(var r=0;r<Ene.length;r++){var n=Ene[r],i=e[n],a=t[n];if(!jS(i)||Math.abs(a-i)>1)return!0}return!1};ha.graphJson=function(e,t,r,n,i,a){(i&&t&&!e._fullData||i&&!t&&!e._fullLayout)&&ha.supplyDefaults(e);var o=i?e._fullData:e.data,s=i?e._fullLayout:e.layout,l=(e._transitionData||{})._frames;function u(h,d){if(typeof h=="function")return d?"_function_":null;if(Ca.isPlainObject(h)){var v={},x;return Object.keys(h).sort().forEach(function(k){if(["_","["].indexOf(k.charAt(0))===-1){if(typeof h[k]=="function"){d&&(v[k]="_function");return}if(r==="keepdata"){if(k.substr(k.length-3)==="src")return}else if(r==="keepstream"){if(x=h[k+"src"],typeof x=="string"&&x.indexOf(":")>0&&!Ca.isPlainObject(h.stream))return}else if(r!=="keepall"&&(x=h[k+"src"],typeof x=="string"&&x.indexOf(":")>0))return;v[k]=u(h[k],d)}}),v}var b=Array.isArray(h),p=Ca.isTypedArray(h);if((b||p)&&h.dtype&&h.shape){var E=h.bdata;return u({dtype:h.dtype,shape:h.shape,bdata:Ca.isArrayBuffer(E)?Iit.encode(E):E},d)}return b?h.map(function(k){return u(k,d)}):p?Ca.simpleMap(h,Ca.identity):Ca.isJSDate(h)?Ca.ms2DateTimeLocal(+h):h}var c={data:(o||[]).map(function(h){var d=u(h);return t&&delete d.fit,d})};if(!t&&(c.layout=u(s),i)){var f=s._size;c.layout.computed={margin:{b:f.b,l:f.l,r:f.r,t:f.t}}}return l&&(c.frames=u(l)),a&&(c.config=u(e._context,!0)),n==="object"?c:JSON.stringify(c)};ha.modifyFrames=function(e,t){var r,n,i,a=e._transitionData._frames,o=e._transitionData._frameHash;for(r=0;r<t.length;r++)switch(n=t[r],n.type){case"replace":i=n.value;var s=(a[n.index]||{}).name,l=i.name;a[n.index]=o[l]=i,l!==s&&(delete o[s],o[l]=i);break;case"insert":i=n.value,o[i.name]=i,a.splice(n.index,0,i);break;case"delete":i=a[n.index],delete o[i.name],a.splice(n.index,1);break}return Promise.resolve()};ha.computeFrame=function(e,t){var r=e._transitionData._frameHash,n,i,a,o;if(!t)throw new Error("computeFrame must be given a string frame name");var s=r[t.toString()];if(!s)return!1;for(var l=[s],u=[s.name];s.baseframe&&(s=r[s.baseframe.toString()])&&u.indexOf(s.name)===-1;)l.push(s),u.push(s.name);for(var c={};s=l.pop();)if(s.layout&&(c.layout=ha.extendLayout(c.layout,s.layout)),s.data){if(c.data||(c.data=[]),i=s.traces,!i)for(i=[],n=0;n<s.data.length;n++)i[n]=n;for(c.traces||(c.traces=[]),n=0;n<s.data.length;n++)a=i[n],a!=null&&(o=c.traces.indexOf(a),o===-1&&(o=c.data.length,c.traces[o]=a),c.data[o]=ha.extendTrace(c.data[o],s.data[n]))}return c};ha.recomputeFrameHash=function(e){for(var t=e._transitionData._frameHash={},r=e._transitionData._frames,n=0;n<r.length;n++){var i=r[n];i&&i.name&&(t[i.name]=i)}};ha.extendObjectWithContainers=function(e,t,r){var n,i,a,o,s,l,u,c,f=Ca.extendDeepNoArrays({},t||{}),h=Ca.expandObjectPaths(f),d={};if(r&&r.length)for(a=0;a<r.length;a++)n=Ca.nestedProperty(h,r[a]),i=n.get(),i===void 0?Ca.nestedProperty(d,r[a]).set(null):(n.set(null),Ca.nestedProperty(d,r[a]).set(i));if(e=Ca.extendDeepNoArrays(e||{},h),r&&r.length){for(a=0;a<r.length;a++)if(s=Ca.nestedProperty(d,r[a]),u=s.get(),!!u){for(l=Ca.nestedProperty(e,r[a]),c=l.get(),Array.isArray(c)||(c=[],l.set(c)),o=0;o<u.length;o++){var v=u[o];v===null?c[o]=null:c[o]=ha.extendObjectWithContainers(c[o],v)}l.set(c)}}return e};ha.dataArrayContainers=["transforms","dimensions"];ha.layoutArrayContainers=bl.layoutArrayContainers;ha.extendTrace=function(e,t){return ha.extendObjectWithContainers(e,t,ha.dataArrayContainers)};ha.extendLayout=function(e,t){return ha.extendObjectWithContainers(e,t,ha.layoutArrayContainers)};ha.transition=function(e,t,r,n,i,a){var o={redraw:i.redraw},s={},l=[];return o.prepareFn=function(){for(var u=Array.isArray(t)?t.length:0,c=n.slice(0,u),f=0;f<c.length;f++){var h=c[f],d=e._fullData[h],v=d._module;if(v){if(v.animatable){var x=v.basePlotModule.name;s[x]||(s[x]=[]),s[x].push(h)}e.data[c[f]]=ha.extendTrace(e.data[c[f]],t[f])}}var b=Ca.expandObjectPaths(Ca.extendDeepNoArrays({},r)),p=/^[xy]axis[0-9]*$/;for(var E in b)p.test(E)&&delete b[E].range;ha.extendLayout(e.layout,b),delete e.calcdata,ha.supplyDefaults(e),ha.doCalcdata(e);var k=Ca.expandObjectPaths(r);if(k){var A=e._fullLayout._plots;for(var L in A){var _=A[L],C=_.xaxis,M=_.yaxis,g=C.range.slice(),P=M.range.slice(),T=null,F=null,q=null,V=null;Array.isArray(k[C._name+".range"])?T=k[C._name+".range"].slice():Array.isArray((k[C._name]||{}).range)&&(T=k[C._name].range.slice()),Array.isArray(k[M._name+".range"])?F=k[M._name+".range"].slice():Array.isArray((k[M._name]||{}).range)&&(F=k[M._name].range.slice()),g&&T&&(C.r2l(g[0])!==C.r2l(T[0])||C.r2l(g[1])!==C.r2l(T[1]))&&(q={xr0:g,xr1:T}),P&&F&&(M.r2l(P[0])!==M.r2l(F[0])||M.r2l(P[1])!==M.r2l(F[1]))&&(V={yr0:P,yr1:F}),(q||V)&&l.push(Ca.extendFlat({plotinfo:_},q,V))}}return Promise.resolve()},o.runFn=function(u){var c,f=e._fullLayout._basePlotModules,h=l.length,d;if(r)for(d=0;d<f.length;d++)f[d].transitionAxes&&f[d].transitionAxes(e,l,a,u);h?(c=Ca.extendFlat({},a),c.duration=0,delete s.cartesian):c=a;for(var v in s){var x=s[v],b=e._fullData[x[0]]._module;b.basePlotModule.plot(e,x,c,u)}},Fne(e,a,o)};ha.transitionFromReact=function(e,t,r,n){var i=e._fullLayout,a=i.transition,o={},s=[];return o.prepareFn=function(){var l=i._plots;o.redraw=!1,t.anim==="some"&&(o.redraw=!0),r.anim==="some"&&(o.redraw=!0);for(var u in l){var c=l[u],f=c.xaxis,h=c.yaxis,d=n[f._name].range.slice(),v=n[h._name].range.slice(),x=f.range.slice(),b=h.range.slice();f.setScale(),h.setScale();var p=null,E=null;(f.r2l(d[0])!==f.r2l(x[0])||f.r2l(d[1])!==f.r2l(x[1]))&&(p={xr0:d,xr1:x}),(h.r2l(v[0])!==h.r2l(b[0])||h.r2l(v[1])!==h.r2l(b[1]))&&(E={yr0:v,yr1:b}),(p||E)&&s.push(Ca.extendFlat({plotinfo:c},p,E))}return Promise.resolve()},o.runFn=function(l){for(var u=e._fullData,c=e._fullLayout,f=c._basePlotModules,h,d,v,x=[],b=0;b<u.length;b++)x.push(b);function p(){if(e._fullLayout)for(var k=0;k<f.length;k++)f[k].transitionAxes&&f[k].transitionAxes(e,s,h,l)}function E(){if(e._fullLayout)for(var k=0;k<f.length;k++)f[k].plot(e,v,d,l)}s.length&&t.anim?a.ordering==="traces first"?(h=Ca.extendFlat({},a,{duration:0}),v=x,d=a,setTimeout(p,a.duration),E()):(h=a,v=null,d=Ca.extendFlat({},a,{duration:0}),setTimeout(E,h.duration),p()):s.length?(h=a,p()):t.anim&&(v=x,d=a,E())},Fne(e,a,o)};function Fne(e,t,r){var n=!1;function i(f){var h=Promise.resolve();if(!f)return h;for(;f.length;)h=h.then(f.shift());return h}function a(f){if(f)for(;f.length;)f.shift()}function o(){return e.emit("plotly_transitioning",[]),new Promise(function(f){e._transitioning=!0,t.duration>0&&(e._transitioningWithDuration=!0),e._transitionData._interruptCallbacks.push(function(){n=!0}),r.redraw&&e._transitionData._interruptCallbacks.push(function(){return bl.call("redraw",e)}),e._transitionData._interruptCallbacks.push(function(){e.emit("plotly_transitioninterrupted",[])});var h=0,d=0;function v(){return h++,function(){d++,!n&&d===h&&s(f)}}r.runFn(v),setTimeout(v())})}function s(f){if(e._transitionData)return a(e._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(r.redraw)return bl.call("redraw",e)}).then(function(){e._transitioning=!1,e._transitioningWithDuration=!1,e.emit("plotly_transitioned",[])}).then(f)}function l(){if(e._transitionData)return e._transitioning=!1,i(e._transitionData._interruptCallbacks)}var u=[ha.previousPromises,l,r.prepareFn,ha.rehover,ha.reselect,o],c=Ca.syncOrAsync(u,e);return(!c||!c.then)&&(c=Promise.resolve()),c.then(function(){return e})}ha.doCalcdata=function(e,t){var r=Ap.list(e),n=e._fullData,i=e._fullLayout,a,o,s,l,u=new Array(n.length),c=(e.calcdata||[]).slice();for(e.calcdata=u,i._numBoxes=0,i._numViolins=0,i._violinScaleGroupStats={},e._hmpixcount=0,e._hmlumcount=0,i._piecolormap={},i._sunburstcolormap={},i._treemapcolormap={},i._iciclecolormap={},i._funnelareacolormap={},s=0;s<n.length;s++)if(Array.isArray(t)&&t.indexOf(s)===-1){u[s]=c[s];continue}for(s=0;s<n.length;s++)a=n[s],a._arrayAttrs=Pne.findArrayAttributes(a),a._extremes={};var f=i._subplots.polar||[];for(s=0;s<f.length;s++)r.push(i[f[s]].radialaxis,i[f[s]].angularaxis);for(var h in i._colorAxes){var d=i[h];d.cauto!==!1&&(delete d.cmin,delete d.cmax)}var v=!1;function x(E){if(a=n[E],o=a._module,a.visible===!0&&a.transforms){if(o&&o.calc){var k=o.calc(e,a);k[0]&&k[0].t&&k[0].t._scene&&delete k[0].t._scene.dirty}for(l=0;l<a.transforms.length;l++){var A=a.transforms[l];o=transformsRegistry[A.type],o&&o.calcTransform&&(a._hasCalcTransform=!0,v=!0,o.calcTransform(e,a,A))}}}function b(E,k){if(a=n[E],o=a._module,!!o.isContainer===k){var A=[];if(a.visible===!0&&a._length!==0){delete a._indexToPoints;var L=a.transforms||[];for(l=L.length-1;l>=0;l--)if(L[l].enabled){a._indexToPoints=L[l]._indexToPoints;break}o&&o.calc&&(A=o.calc(e,a))}(!Array.isArray(A)||!A[0])&&(A=[{x:Ane,y:Ane}]),A[0].t||(A[0].t={}),A[0].trace=a,u[E]=A}}for(kne(r,n,i),s=0;s<n.length;s++)b(s,!0);for(s=0;s<n.length;s++)x(s);for(v&&kne(r,n,i),s=0;s<n.length;s++)b(s,!0);for(s=0;s<n.length;s++)b(s,!1);Cne(e);var p=Yit(r,e);if(p.length){for(i._numBoxes=0,i._numViolins=0,s=0;s<p.length;s++)b(p[s],!0);for(s=0;s<p.length;s++)b(p[s],!1);Cne(e)}bl.getComponentMethod("fx","calc")(e),bl.getComponentMethod("errorbars","calc")(e)};var Xit=/(total|sum|min|max|mean|geometric mean|median) (ascending|descending)/;function Yit(e,t){var r=[],n,i,a,o,s;function l(N,W,re){var ae=W._id.charAt(0);if(N==="histogram2dcontour"){var _e=W._counterAxes[0],Me=Ap.getFromId(t,_e),ke=ae==="x"||_e==="x"&&Me.type==="category",ge=ae==="y"||_e==="y"&&Me.type==="category";return function(ie,Te){return ie===0||Te===0||ke&&ie===re[Te].length-1||ge&&Te===re.length-1?-1:(ae==="y"?Te:ie)-1}}else return function(ie,Te){return ae==="y"?Te:ie}}var u={min:function(N){return Ca.aggNums(Math.min,null,N)},max:function(N){return Ca.aggNums(Math.max,null,N)},sum:function(N){return Ca.aggNums(function(W,re){return W+re},null,N)},total:function(N){return Ca.aggNums(function(W,re){return W+re},null,N)},mean:function(N){return Ca.mean(N)},"geometric mean":function(N){return Ca.geometricMean(N)},median:function(N){return Ca.median(N)}};function c(N,W){return N[1]-W[1]}function f(N,W){return W[1]-N[1]}for(n=0;n<e.length;n++){var h=e[n];if(h.type==="category"){var d=h.categoryorder.match(Xit);if(d){var v=d[1],x=d[2],b=h._id.charAt(0),p=b==="x",E=[];for(i=0;i<h._categories.length;i++)E.push([h._categories[i],[]]);for(i=0;i<h._traceIndices.length;i++){var k=h._traceIndices[i],A=t._fullData[k];if(A.visible===!0){var L=A.type;bl.traceIs(A,"histogram")&&(delete A._xautoBinFinished,delete A._yautoBinFinished);var _=L==="splom",C=L==="scattergl",M=t.calcdata[k];for(a=0;a<M.length;a++){var g=M[a],P,T;if(_){var F=A._axesDim[h._id];if(!p){var q=A._diag[F][0];q&&(h=t._fullLayout[Ap.id2name(q)])}var V=g.trace.dimensions[F].values;for(o=0;o<V.length;o++)for(P=h._categoriesMap[V[o]],s=0;s<g.trace.dimensions.length;s++)if(s!==F){var H=g.trace.dimensions[s];E[P][1].push(H.values[o])}}else if(C){for(o=0;o<g.t.x.length;o++)p?(P=g.t.x[o],T=g.t.y[o]):(P=g.t.y[o],T=g.t.x[o]),E[P][1].push(T);g.t&&g.t._scene&&delete g.t._scene.dirty}else if(g.hasOwnProperty("z")){T=g.z;var X=l(A.type,h,T);for(o=0;o<T.length;o++)for(s=0;s<T[o].length;s++)P=X(s,o),P+1&&E[P][1].push(T[o][s])}else for(P=g.p,P===void 0&&(P=g[b]),T=g.s,T===void 0&&(T=g.v),T===void 0&&(T=p?g.y:g.x),Array.isArray(T)||(T===void 0?T=[]:T=[T]),o=0;o<T.length;o++)E[P][1].push(T[o])}}}h._categoriesValue=E;var G=[];for(i=0;i<E.length;i++)G.push([E[i][0],u[v](E[i][1])]);G.sort(x==="descending"?f:c),h._categoriesAggregatedValue=G,h._initialCategories=G.map(function(N){return N[0]}),r=r.concat(h.sortByInitialCategories())}}}return r}function kne(e,t,r){var n={};function i(l){l.clearCalc(),l.type==="multicategory"&&l.setupMultiCategory(t),n[l._id]=1}Ca.simpleMap(e,i);for(var a=r._axisMatchGroups||[],o=0;o<a.length;o++)for(var s in a[o])n[s]||i(r[Ap.id2name(s)])}function Cne(e){var t=e._fullLayout,r=t._visibleModules,n={},i,a,o;for(a=0;a<r.length;a++){var s=r[a],l=s.crossTraceCalc;if(l){var u=s.basePlotModule.name;n[u]?Ca.pushUnique(n[u],l):n[u]=[l]}}for(o in n){var c=n[o],f=t._subplots[o];if(Array.isArray(f))for(i=0;i<f.length;i++){var h=f[i],d=o==="cartesian"?t._plots[h]:t[h];for(a=0;a<c.length;a++)c[a](e,d,h)}else for(a=0;a<c.length;a++)c[a](e)}}ha.rehover=function(e){e._fullLayout._rehover&&e._fullLayout._rehover()};ha.redrag=function(e){e._fullLayout._redrag&&e._fullLayout._redrag()};ha.reselect=function(e){var t=e._fullLayout,r=(e.layout||{}).selections,n=t._previousSelections;t._previousSelections=r;var i=t._reselect||JSON.stringify(r)!==JSON.stringify(n);bl.getComponentMethod("selections","reselect")(e,i)};ha.generalUpdatePerTraceModule=function(e,t,r,n){var i=t.traceHash,a={},o;for(o=0;o<r.length;o++){var s=r[o],l=s[0].trace;l.visible&&(a[l.type]=a[l.type]||[],a[l.type].push(s))}for(var u in i)if(!a[u]){var c=i[u][0],f=c[0].trace;f.visible=!1,a[u]=[c]}for(var h in a){var d=a[h],v=d[0][0].trace._module;v.plot(e,t,Ca.filterVisible(d),n)}t.traceHash=a};ha.plotBasePlot=function(e,t,r,n,i){var a=bl.getModule(e),o=qit(t.calcdata,a)[0];a.plot(t,o,n,i)};ha.cleanBasePlot=function(e,t,r,n,i){var a=i._has&&i._has(e),o=r._has&&r._has(e);a&&!o&&i["_"+e+"layer"].selectAll("g.trace").remove()}});var Zp=ye(yb=>{"use strict";yb.xmlns="http://www.w3.org/2000/xmlns/";yb.svg="http://www.w3.org/2000/svg";yb.xlink="http://www.w3.org/1999/xlink";yb.svgAttrs={xmlns:yb.svg,"xmlns:xlink":yb.xlink}});var Nh=ye((jtr,One)=>{"use strict";One.exports={FROM_BL:{left:0,center:.5,right:1,bottom:0,middle:.5,top:1},FROM_TL:{left:0,center:.5,right:1,bottom:1,middle:.5,top:0},FROM_BR:{left:1,center:.5,right:0,bottom:0,middle:.5,top:1},LINE_SPACING:1.3,CAP_SHIFT:.7,MID_SHIFT:.35,OPPOSITE_SIDE:{left:"right",right:"left",top:"bottom",bottom:"top"}}});var Pl=ye(b0=>{"use strict";var vh=xa(),Ty=Mr(),Kit=Ty.strTranslate,uO=Zp(),Jit=Nh().LINE_SPACING,$it=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;b0.convertToTspans=function(e,t,r){var n=e.text(),i=!e.attr("data-notex")&&t&&t._context.typesetMath&&typeof MathJax!="undefined"&&n.match($it),a=vh.select(e.node().parentNode);if(a.empty())return;var o=e.attr("class")?e.attr("class").split(" ")[0]:"text";o+="-math",a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove(),e.style("display",null).attr({"data-unformatted":n,"data-math":"N"});function s(){a.empty()||(o=e.attr("class")+"-math",a.select("svg."+o).remove()),e.text("").style("white-space","pre");var l=fnt(e.node(),n);l&&e.style("pointer-events","all"),b0.positionText(e),r&&r.call(e)}return i?(t&&t._promises||[]).push(new Promise(function(l){e.style("display","none");var u=parseInt(e.node().style.fontSize,10),c={fontSize:u};rnt(i[2],c,function(f,h,d){a.selectAll("svg."+o).remove(),a.selectAll("g."+o+"-group").remove();var v=f&&f.select("svg");if(!v||!v.node()){s(),l();return}var x=a.append("g").classed(o+"-group",!0).attr({"pointer-events":"none","data-unformatted":n,"data-math":"Y"});x.node().appendChild(v.node()),h&&h.node()&&v.node().insertBefore(h.node().cloneNode(!0),v.node().firstChild);var b=d.width,p=d.height;v.attr({class:o,height:p,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var E=e.node().style.fill||"black",k=v.select("g");k.attr({fill:E,stroke:E});var A=k.node().getBoundingClientRect(),L=A.width,_=A.height;(L>b||_>p)&&(v.style("overflow","hidden"),A=v.node().getBoundingClientRect(),L=A.width,_=A.height);var C=+e.attr("x"),M=+e.attr("y"),g=u||e.node().getBoundingClientRect().height,P=-g/4;if(o[0]==="y")x.attr({transform:"rotate("+[-90,C,M]+")"+Kit(-L/2,P-_/2)});else if(o[0]==="l")M=P-_/2;else if(o[0]==="a"&&o.indexOf("atitle")!==0)C=0,M=P;else{var T=e.attr("text-anchor");C=C-L*(T==="middle"?.5:T==="end"?1:0),M=M+P-_/2}v.attr({x:C,y:M}),r&&r.call(e,x),l(x)})})):s(),e};var Qit=/(<|&lt;|&#60;)/g,ent=/(>|&gt;|&#62;)/g;function tnt(e){return e.replace(Qit,"\\lt ").replace(ent,"\\gt ")}var Bne=[["$","$"],["\\(","\\)"]];function rnt(e,t,r){var n=parseInt((MathJax.version||"").split(".")[0]);if(n!==2&&n!==3){Ty.warn("No MathJax version:",MathJax.version);return}var i,a,o,s,l=function(){return a=Ty.extendDeepAll({},MathJax.Hub.config),o=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:Bne},displayAlign:"left"})},u=function(){a=Ty.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=Bne},c=function(){if(i=MathJax.Hub.config.menuSettings.renderer,i!=="SVG")return MathJax.Hub.setRenderer("SVG")},f=function(){i=MathJax.config.startup.output,i!=="svg"&&(MathJax.config.startup.output="svg")},h=function(){var E="math-output-"+Ty.randstr({},64);s=vh.select("body").append("div").attr({id:E}).style({visibility:"hidden",position:"absolute","font-size":t.fontSize+"px"}).text(tnt(e));var k=s.node();return n===2?MathJax.Hub.Typeset(k):MathJax.typeset([k])},d=function(){var E=s.select(n===2?".MathJax_SVG":".MathJax"),k=!E.empty()&&s.select("svg").node();if(!k)Ty.log("There was an error in the tex syntax.",e),r();else{var A=k.getBoundingClientRect(),L;n===2?L=vh.select("body").select("#MathJax_SVG_glyphs"):L=E.select("defs"),r(E,L,A)}s.remove()},v=function(){if(i!=="SVG")return MathJax.Hub.setRenderer(i)},x=function(){i!=="svg"&&(MathJax.config.startup.output=i)},b=function(){return o!==void 0&&(MathJax.Hub.processSectionDelay=o),MathJax.Hub.Config(a)},p=function(){MathJax.config=a};n===2?MathJax.Hub.Queue(l,c,h,d,v,b):n===3&&(u(),f(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){h(),d(),x(),p()}))}var Hne={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},int={sub:"0.3em",sup:"-0.6em"},nnt={sub:"-0.21em",sup:"0.42em"},Nne="\u200B",Une=["http:","https:","mailto:","",void 0,":"],Gne=b0.NEWLINES=/(\r\n?|\n)/g,fO=/(<[^<>]*>)/,hO=/<(\/?)([^ >]*)(\s+(.*))?>/i,ant=/<br(\s+.*)?>/i;b0.BR_TAG_ALL=/<br(\s+.*)?>/gi;var jne=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,Wne=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,Zne=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,ont=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function _b(e,t){if(!e)return null;var r=e.match(t),n=r&&(r[3]||r[4]);return n&&Z6(n)}var snt=/(^|;)\s*color:/;b0.plainText=function(e,t){t=t||{};for(var r=t.len!==void 0&&t.len!==-1?t.len:1/0,n=t.allowedTags!==void 0?t.allowedTags:["br"],i="...",a=i.length,o=e.split(fO),s=[],l="",u=0,c=0;c<o.length;c++){var f=o[c],h=f.match(hO),d=h&&h[2].toLowerCase();if(d)n.indexOf(d)!==-1&&(s.push(f),l=d);else{var v=f.length;if(u+v<r)s.push(f),u+=v;else if(u<r){var x=r-u;l&&(l!=="br"||x<=a||v<=a)&&s.pop(),r>a?s.push(f.substr(0,x-a)+i):s.push(f.substr(0,x));break}l=""}}return s.join("")};var lnt={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},unt=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function Z6(e){return e.replace(unt,function(t,r){var n;return r.charAt(0)==="#"?n=cnt(r.charAt(1)==="x"?parseInt(r.substr(2),16):parseInt(r.substr(1),10)):n=lnt[r],n||t})}b0.convertEntities=Z6;function cnt(e){if(!(e>1114111)){var t=String.fromCodePoint;if(t)return t(e);var r=String.fromCharCode;return e<=65535?r(e):r((e>>10)+55232,e%1024+56320)}}function fnt(e,t){t=t.replace(Gne," ");var r=!1,n=[],i,a=-1;function o(){a++;var _=document.createElementNS(uO.svg,"tspan");vh.select(_).attr({class:"line",dy:a*Jit+"em"}),e.appendChild(_),i=_;var C=n;if(n=[{node:_}],C.length>1)for(var M=1;M<C.length;M++)s(C[M])}function s(_){var C=_.type,M={},g;if(C==="a"){g="a";var P=_.target,T=_.href,F=_.popup;T&&(M={"xlink:xlink:show":P==="_blank"||P.charAt(0)!=="_"?"new":"replace",target:P,"xlink:xlink:href":T},F&&(M.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+F+'");return false;'))}else g="tspan";_.style&&(M.style=_.style);var q=document.createElementNS(uO.svg,g);if(C==="sup"||C==="sub"){l(i,Nne),i.appendChild(q);var V=document.createElementNS(uO.svg,"tspan");l(V,Nne),vh.select(V).attr("dy",nnt[C]),M.dy=int[C],i.appendChild(q),i.appendChild(V)}else i.appendChild(q);vh.select(q).attr(M),i=_.node=q,n.push(_)}function l(_,C){_.appendChild(document.createTextNode(C))}function u(_){if(n.length===1){Ty.log("Ignoring unexpected end tag </"+_+">.",t);return}var C=n.pop();_!==C.type&&Ty.log("Start tag <"+C.type+"> doesnt match end tag <"+_+">. Pretending it did match.",t),i=n[n.length-1].node}var c=ant.test(t);c?o():(i=e,n=[{node:e}]);for(var f=t.split(fO),h=0;h<f.length;h++){var d=f[h],v=d.match(hO),x=v&&v[2].toLowerCase(),b=Hne[x];if(x==="br")o();else if(b===void 0)l(i,Z6(d));else if(v[1])u(x);else{var p=v[4],E={type:x},k=_b(p,jne);if(k?(k=k.replace(snt,"$1 fill:"),b&&(k+=";"+b)):b&&(k=b),k&&(E.style=k),x==="a"){r=!0;var A=_b(p,Wne);if(A){var L=Xne(A);L&&(E.href=L,E.target=_b(p,Zne)||"_blank",E.popup=_b(p,ont))}}s(E)}}return r}function Xne(e){var t=encodeURI(decodeURI(e)),r=document.createElement("a"),n=document.createElement("a");r.href=e,n.href=t;var i=r.protocol,a=n.protocol;return Une.indexOf(i)!==-1&&Une.indexOf(a)!==-1?t:""}b0.sanitizeHTML=function(t){t=t.replace(Gne," ");for(var r=document.createElement("p"),n=r,i=[],a=t.split(fO),o=0;o<a.length;o++){var s=a[o],l=s.match(hO),u=l&&l[2].toLowerCase();if(u in Hne)if(l[1])i.length&&(n=i.pop());else{var c=l[4],f=_b(c,jne),h=f?{style:f}:{};if(u==="a"){var d=_b(c,Wne);if(d){var v=Xne(d);if(v){h.href=v;var x=_b(c,Zne);x&&(h.target=x)}}}var b=document.createElement(u);n.appendChild(b),vh.select(b).attr(h),n=b,i.push(b)}else n.appendChild(document.createTextNode(Z6(s)))}var p="innerHTML";return r[p]};b0.lineCount=function(t){return t.selectAll("tspan.line").size()||1};b0.positionText=function(t,r,n){return t.each(function(){var i=vh.select(this);function a(l,u){return u===void 0?(u=i.attr(l),u===null&&(i.attr(l,0),u=0)):i.attr(l,u),u}var o=a("x",r),s=a("y",n);this.nodeName==="text"&&i.selectAll("tspan.line").attr({x:o,y:s})})};function Vne(e,t,r){var n=r.horizontalAlign,i=r.verticalAlign||"top",a=e.node().getBoundingClientRect(),o=t.node().getBoundingClientRect(),s,l,u;return i==="bottom"?l=function(){return a.bottom-s.height}:i==="middle"?l=function(){return a.top+(a.height-s.height)/2}:l=function(){return a.top},n==="right"?u=function(){return a.right-s.width}:n==="center"?u=function(){return a.left+(a.width-s.width)/2}:u=function(){return a.left},function(){s=this.node().getBoundingClientRect();var c=u()-o.left,f=l()-o.top,h=r.gd||{};if(r.gd){h._fullLayout._calcInverseTransform(h);var d=Ty.apply3DTransform(h._fullLayout._invTransform)(c,f);c=d[0],f=d[1]}return this.style({top:f+"px",left:c+"px","z-index":1e3}),this}}var cO="1px ";b0.makeTextShadow=function(e){var t=cO,r=cO,n=cO;return t+r+n+e+", -"+t+"-"+r+n+e+", "+t+"-"+r+n+e+", -"+t+r+n+e};b0.makeEditable=function(e,t){var r=t.gd,n=t.delegate,i=vh.dispatch("edit","input","cancel"),a=n||e;if(e.style({"pointer-events":n?"none":"all"}),e.size()!==1)throw new Error("boo");function o(){l(),e.style({opacity:0});var u=a.attr("class"),c;u?c="."+u.split(" ")[0]+"-math-group":c="[class*=-math-group]",c&&vh.select(e.node().parentNode).select(c).style({opacity:0})}function s(u){var c=u.node(),f=document.createRange();f.selectNodeContents(c);var h=window.getSelection();h.removeAllRanges(),h.addRange(f),c.focus()}function l(){var u=vh.select(r),c=u.select(".svg-container"),f=c.append("div"),h=e.node().style,d=parseFloat(h.fontSize||12),v=t.text;v===void 0&&(v=e.attr("data-unformatted")),f.classed("plugin-editable editable",!0).style({position:"absolute","font-family":h.fontFamily||"Arial","font-size":d,color:t.fill||h.fill||"black",opacity:1,"background-color":t.background||"transparent",outline:"#ffffff33 1px solid",margin:[-d/8+1,0,0,-1].join("px ")+"px",padding:"0","box-sizing":"border-box"}).attr({contenteditable:!0}).text(v).call(Vne(e,c,t)).on("blur",function(){r._editing=!1,e.text(this.textContent).style({opacity:1});var x=vh.select(this).attr("class"),b;x?b="."+x.split(" ")[0]+"-math-group":b="[class*=-math-group]",b&&vh.select(e.node().parentNode).select(b).style({opacity:0});var p=this.textContent;vh.select(this).transition().duration(0).remove(),vh.select(document).on("mouseup",null),i.edit.call(e,p)}).on("focus",function(){var x=this;r._editing=!0,vh.select(document).on("mouseup",function(){if(vh.event.target===x)return!1;document.activeElement===f.node()&&f.node().blur()})}).on("keyup",function(){vh.event.which===27?(r._editing=!1,e.style({opacity:1}),vh.select(this).style({opacity:0}).on("blur",function(){return!1}).transition().remove(),i.cancel.call(e,this.textContent)):(i.input.call(e,this.textContent),vh.select(this).call(Vne(e,c,t)))}).on("keydown",function(){vh.event.which===13&&this.blur()}).call(s)}return t.immediate?o():a.on("click",o),vh.rebind(e,i,"on")}});var Dv=ye((Ztr,rae)=>{"use strict";var hnt=xa(),Y6=id(),ZS=uo(),X6=Mr(),Yne=va(),dnt=sb().isValid;function vnt(e,t,r){var n=t?X6.nestedProperty(e,t).get()||{}:e,i=n[r||"color"];i&&i._inputArray&&(i=i._inputArray);var a=!1;if(X6.isArrayOrTypedArray(i)){for(var o=0;o<i.length;o++)if(ZS(i[o])){a=!0;break}}return X6.isPlainObject(n)&&(a||n.showscale===!0||ZS(n.cmin)&&ZS(n.cmax)||dnt(n.colorscale)||X6.isPlainObject(n.colorbar))}var Kne=["showscale","autocolorscale","colorscale","reversescale","colorbar"],WS=["min","max","mid","auto"];function $ne(e){var t=e._colorAx,r=t||e,n={},i,a,o;for(a=0;a<Kne.length;a++)o=Kne[a],n[o]=r[o];if(t)for(i="c",a=0;a<WS.length;a++)o=WS[a],n[o]=r["c"+o];else{var s;for(a=0;a<WS.length;a++){if(o=WS[a],s="c"+o,s in r){n[o]=r[s];continue}s="z"+o,s in r&&(n[o]=r[s])}i=s.charAt(0)}return n._sync=function(l,u){var c=WS.indexOf(l)!==-1?i+l:l;r[c]=r["_"+c]=u},n}function Qne(e){for(var t=$ne(e),r=t.min,n=t.max,i=t.reversescale?eae(t.colorscale):t.colorscale,a=i.length,o=new Array(a),s=new Array(a),l=0;l<a;l++){var u=i[l];o[l]=r+u[0]*(n-r),s[l]=u[1]}return{domain:o,range:s}}function eae(e){for(var t=e.length,r=new Array(t),n=t-1,i=0;n>=0;n--,i++){var a=e[n];r[i]=[1-a[0],a[1]]}return r}function tae(e,t){t=t||{};for(var r=e.domain,n=e.range,i=n.length,a=new Array(i),o=0;o<i;o++){var s=Y6(n[o]).toRgb();a[o]=[s.r,s.g,s.b,s.a]}var l=hnt.scale.linear().domain(r).range(a).clamp(!0),u=t.noNumericCheck,c=t.returnArray,f;return u&&c?f=l:u?f=function(h){return Jne(l(h))}:c?f=function(h){return ZS(h)?l(h):Y6(h).isValid()?h:Yne.defaultLine}:f=function(h){return ZS(h)?Jne(l(h)):Y6(h).isValid()?h:Yne.defaultLine},f.domain=l.domain,f.range=function(){return n},f}function pnt(e,t){return tae(Qne(e),t)}function Jne(e){var t={r:e[0],g:e[1],b:e[2],a:e[3]};return Y6(t).toRgbString()}rae.exports={hasColorscale:vnt,extractOpts:$ne,extractScale:Qne,flipScale:eae,makeColorScaleFunc:tae,makeColorScaleFuncFromTrace:pnt}});var Oc=ye((Xtr,aae)=>{"use strict";var iae=Rq(),gnt=iae.FORMAT_LINK,mnt=iae.DATE_FORMAT_LINK;function ynt(e,t){return{valType:"string",dflt:"",editType:"none",description:(t?dO:nae)("hover text",e)+["By default the values are formatted using "+(t?"generic number format":"`"+e+"axis.hoverformat`")+"."].join(" ")}}function dO(e,t){return["Sets the "+e+" formatting rule"+(t?"for `"+t+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+gnt+"."].join(" ")}function nae(e,t){return dO(e,t)+[" And for dates see: "+mnt+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}aae.exports={axisHoverFormat:ynt,descriptionOnlyNumbers:dO,descriptionWithDates:nae}});var Cd=ye((Ytr,wae)=>{"use strict";var oae=Su(),w3=dh(),bae=Ed().dash,pO=no().extendFlat,sae=Vs().templatedArray,lae=Oc().descriptionWithDates,_nt=es().ONEDAY,pm=ad(),xnt=pm.HOUR_PATTERN,bnt=pm.WEEKDAY_PATTERN,vO={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},wnt=pO({},vO,{values:vO.values.slice().concat(["sync"])});function uae(e){return{valType:"integer",min:0,dflt:e?5:0,editType:"ticks"}}var cae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},fae={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},hae={valType:"data_array",editType:"ticks"},dae={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function vae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=5),t}function pae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var gae={valType:"color",dflt:w3.defaultLine,editType:"ticks"},mae={valType:"color",dflt:w3.lightLine,editType:"ticks"};function yae(e){var t={valType:"number",min:0,editType:"ticks"};return e||(t.dflt=1),t}var _ae=pO({},bae,{editType:"ticks"}),xae={valType:"boolean",editType:"ticks"};wae.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:w3.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:oae({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"calc"},rangebreaks:sae("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:[bnt,xnt,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:_nt},editType:"calc"}),tickmode:wnt,nticks:uae(),tick0:cae,dtick:fae,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:hae,ticktext:{valType:"data_array",editType:"ticks"},ticks:dae,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:vae(),tickwidth:pae(),tickcolor:gae,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:pO({},bae,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:oae({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:lae("tick label")},tickformatstops:sae("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:lae("hover text")},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:w3.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:xae,gridcolor:mae,gridwidth:yae(),griddash:_ae,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:w3.defaultLine,editType:"ticks"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:w3.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",pm.idRegex.x.toString(),pm.idRegex.y.toString()],editType:"plot"},minor:{tickmode:vO,nticks:uae("minor"),tick0:cae,dtick:fae,tickvals:hae,ticks:dae,ticklen:vae("minor"),tickwidth:pae("minor"),tickcolor:gae,gridcolor:mae,gridwidth:yae("minor"),griddash:_ae,showgrid:xae,editType:"ticks"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var K6=ye((Ktr,Sae)=>{"use strict";var Ac=Cd(),Tae=Su(),Aae=no().extendFlat,Tnt=Bu().overrideAll;Sae.exports=Tnt({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:Ac.linecolor,outlinewidth:Ac.linewidth,bordercolor:Ac.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:Ac.minor.tickmode,nticks:Ac.nticks,tick0:Ac.tick0,dtick:Ac.dtick,tickvals:Ac.tickvals,ticktext:Ac.ticktext,ticks:Aae({},Ac.ticks,{dflt:""}),ticklabeloverflow:Aae({},Ac.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:Ac.ticklen,tickwidth:Ac.tickwidth,tickcolor:Ac.tickcolor,ticklabelstep:Ac.ticklabelstep,showticklabels:Ac.showticklabels,labelalias:Ac.labelalias,tickfont:Tae({}),tickangle:Ac.tickangle,tickformat:Ac.tickformat,tickformatstops:Ac.tickformatstops,tickprefix:Ac.tickprefix,showtickprefix:Ac.showtickprefix,ticksuffix:Ac.ticksuffix,showticksuffix:Ac.showticksuffix,separatethousands:Ac.separatethousands,exponentformat:Ac.exponentformat,minexponent:Ac.minexponent,showexponent:Ac.showexponent,title:{text:{valType:"string"},font:Tae({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")});var Jl=ye(($tr,Eae)=>{"use strict";var Ant=K6(),Snt=n3().counter,Mnt=Y1(),Mae=sb().scales,Jtr=Mnt(Mae);function J6(e){return"`"+e+"`"}Eae.exports=function(t,r){t=t||"",r=r||{};var n=r.cLetter||"c",i="onlyIfNumerical"in r?r.onlyIfNumerical:!!t,a="noScale"in r?r.noScale:t==="marker.line",o="showScaleDflt"in r?r.showScaleDflt:n==="z",s=typeof r.colorscaleDflt=="string"?Mae[r.colorscaleDflt]:null,l=r.editTypeOverride||"",u=t?t+".":"",c,f;"colorAttr"in r?(c=r.colorAttr,f=r.colorAttr):(c={z:"z",c:"color"}[n],f="in "+J6(u+c));var h=i?" Has an effect only if "+f+" is set to a numerical array.":"",d=n+"auto",v=n+"min",x=n+"max",b=n+"mid",p=J6(u+d),E=J6(u+v),k=J6(u+x),A=E+" and "+k,L={};L[v]=L[x]=void 0;var _={};_[d]=!1;var C={};return c==="color"&&(C.color={valType:"color",arrayOk:!0,editType:l||"style"},r.anim&&(C.color.anim=!0)),C[d]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:L},C[v]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:_},C[x]={valType:"number",dflt:null,editType:l||"plot",impliedEdits:_},C[b]={valType:"number",dflt:null,editType:"calc",impliedEdits:L},C.colorscale={valType:"colorscale",editType:"calc",dflt:s,impliedEdits:{autocolorscale:!1}},C.autocolorscale={valType:"boolean",dflt:r.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},C.reversescale={valType:"boolean",dflt:!1,editType:"plot"},a||(C.showscale={valType:"boolean",dflt:o,editType:"calc"},C.colorbar=Ant),r.noColorAxis||(C.coloraxis={valType:"subplotid",regex:Snt("coloraxis"),dflt:null,editType:"calc"}),C}});var mO=ye((Qtr,kae)=>{"use strict";var Ent=no().extendFlat,knt=Jl(),gO=sb().scales;kae.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:gO.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:gO.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:gO.RdBu,editType:"calc"}},coloraxis:Ent({_isSubplotObj:!0,editType:"calc"},knt("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}});var yO=ye((err,Cae)=>{"use strict";var Cnt=Mr();Cae.exports=function(t){return Cnt.isPlainObject(t.colorbar)}});var bO=ye(xO=>{"use strict";var _O=uo(),Lae=Mr(),Pae=es(),Lnt=Pae.ONEDAY,Pnt=Pae.ONEWEEK;xO.dtick=function(e,t){var r=t==="log",n=t==="date",i=t==="category",a=n?Lnt:1;if(!e)return a;if(_O(e))return e=Number(e),e<=0?a:i?Math.max(1,Math.round(e)):n?Math.max(.1,e):e;if(typeof e!="string"||!(n||r))return a;var o=e.charAt(0),s=e.substr(1);return s=_O(s)?Number(s):0,s<=0||!(n&&o==="M"&&s===Math.round(s)||r&&o==="L"||r&&o==="D"&&(s===1||s===2))?a:e};xO.tick0=function(e,t,r,n){if(t==="date")return Lae.cleanDate(e,Lae.dateTick0(r,n%Pnt===0?1:0));if(!(n==="D1"||n==="D2"))return _O(e)?Number(e):0}});var xb=ye((rrr,Rae)=>{"use strict";var Iae=bO(),Int=Mr().isArrayOrTypedArray,Rnt=vv().isTypedArraySpec,Dnt=vv().decodeTypedArraySpec;Rae.exports=function(t,r,n,i,a){a||(a={});var o=a.isMinor,s=o?t.minor||{}:t,l=o?r.minor:r,u=o?"minor.":"";function c(E){var k=s[E];return Rnt(k)&&(k=Dnt(k)),k!==void 0?k:(l._template||{})[E]}var f=c("tick0"),h=c("dtick"),d=c("tickvals"),v=Int(d)?"array":h?"linear":"auto",x=n(u+"tickmode",v);if(x==="auto"||x==="sync")n(u+"nticks");else if(x==="linear"){var b=l.dtick=Iae.dtick(h,i);l.tick0=Iae.tick0(f,i,r.calendar,b)}else if(i!=="multicategory"){var p=n(u+"tickvals");p===void 0?l.tickmode="auto":o||n("ticktext")}}});var T3=ye((irr,zae)=>{"use strict";var wO=Mr(),Dae=Cd();zae.exports=function(t,r,n,i){var a=i.isMinor,o=a?t.minor||{}:t,s=a?r.minor:r,l=a?Dae.minor:Dae,u=a?"minor.":"",c=wO.coerce2(o,s,l,"ticklen",a?(r.ticklen||5)*.6:void 0),f=wO.coerce2(o,s,l,"tickwidth",a?r.tickwidth||1:void 0),h=wO.coerce2(o,s,l,"tickcolor",(a?r.tickcolor:void 0)||s.color),d=n(u+"ticks",!a&&i.outerTicks||c||f||h?"outside":"");d||(delete s.ticklen,delete s.tickwidth,delete s.tickcolor)}});var TO=ye((nrr,Fae)=>{"use strict";Fae.exports=function(t){var r=["showexponent","showtickprefix","showticksuffix"],n=r.filter(function(a){return t[a]!==void 0}),i=function(a){return t[a]===t[n[0]]};if(n.every(i)||n.length===1)return t[n[0]]}});var Zd=ye((arr,qae)=>{"use strict";var $6=Mr(),znt=Vs();qae.exports=function(t,r,n){var i=n.name,a=n.inclusionAttr||"visible",o=r[i],s=$6.isArrayOrTypedArray(t[i])?t[i]:[],l=r[i]=[],u=znt.arrayTemplater(r,i,a),c,f;for(c=0;c<s.length;c++){var h=s[c];$6.isPlainObject(h)?f=u.newItem(h):(f=u.newItem({}),f[a]=!1),f._index=c,f[a]!==!1&&n.handleItemDefaults(h,f,r,n),l.push(f)}var d=u.defaultItems();for(c=0;c<d.length;c++)f=d[c],f._index=l.length,n.handleItemDefaults({},f,r,n,{}),l.push(f);if($6.isArrayOrTypedArray(o)){var v=Math.min(o.length,l.length);for(c=0;c<v;c++)$6.relinkPrivateKeys(l[c],o[c])}return l}});var t_=ye((orr,Bae)=>{"use strict";var AO=Mr(),Fnt=va().contrast,Oae=Cd(),qnt=TO(),Ont=Zd();Bae.exports=function(t,r,n,i,a){a||(a={});var o=n("labelalias");AO.isPlainObject(o)||delete r.labelalias;var s=qnt(t),l=n("showticklabels");if(l){a.noTicklabelshift||n("ticklabelshift"),a.noTicklabelstandoff||n("ticklabelstandoff");var u=a.font||{},c=r.color,f=r.ticklabelposition||"",h=f.indexOf("inside")!==-1?Fnt(a.bgColor):c&&c!==Oae.color.dflt?c:u.color;if(AO.coerceFont(n,"tickfont",u,{overrideDflt:{color:h}}),!a.noTicklabelstep&&i!=="multicategory"&&i!=="log"&&n("ticklabelstep"),!a.noAng){var d=n("tickangle");!a.noAutotickangles&&d==="auto"&&n("autotickangles")}if(i!=="category"){var v=n("tickformat");Ont(t,r,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:Bnt}),r.tickformatstops.length||delete r.tickformatstops,!a.noExp&&!v&&i!=="date"&&(n("showexponent",s),n("exponentformat"),n("minexponent"),n("separatethousands"))}}};function Bnt(e,t){function r(i,a){return AO.coerce(e,t,Oae.tickformatstops,i,a)}var n=r("enabled");n&&(r("dtickrange"),r("value"))}});var r_=ye((srr,Nae)=>{"use strict";var Nnt=TO();Nae.exports=function(t,r,n,i,a){a||(a={});var o=a.tickSuffixDflt,s=Nnt(t),l=n("tickprefix");l&&n("showtickprefix",s);var u=n("ticksuffix",o);u&&n("showticksuffix",s)}});var SO=ye((lrr,Uae)=>{"use strict";var i_=Mr(),Unt=Vs(),Vnt=xb(),Hnt=T3(),Gnt=t_(),jnt=r_(),Wnt=K6();Uae.exports=function(t,r,n){var i=Unt.newContainer(r,"colorbar"),a=t.colorbar||{};function o(T,F){return i_.coerce(a,i,Wnt,T,F)}var s=n.margin||{t:0,b:0,l:0,r:0},l=n.width-s.l-s.r,u=n.height-s.t-s.b,c=o("orientation"),f=c==="v",h=o("thicknessmode");o("thickness",h==="fraction"?30/(f?l:u):30);var d=o("lenmode");o("len",d==="fraction"?1:f?u:l);var v=o("yref"),x=o("xref"),b=v==="paper",p=x==="paper",E,k,A,L="left";f?(A="middle",L=p?"left":"right",E=p?1.02:1,k=.5):(A=b?"bottom":"top",L="center",E=.5,k=b?1.02:1),i_.coerce(a,i,{x:{valType:"number",min:p?-2:0,max:p?3:1,dflt:E}},"x"),i_.coerce(a,i,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:k}},"y"),o("xanchor",L),o("xpad"),o("yanchor",A),o("ypad"),i_.noneOrAll(a,i,["x","y"]),o("outlinecolor"),o("outlinewidth"),o("bordercolor"),o("borderwidth"),o("bgcolor");var _=i_.coerce(a,i,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:f?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");o("ticklabeloverflow",_.indexOf("inside")!==-1?"hide past domain":"hide past div"),Vnt(a,i,o,"linear");var C=n.font,M={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:C};_.indexOf("inside")!==-1&&(M.bgColor="black"),jnt(a,i,o,"linear",M),Gnt(a,i,o,"linear",M),Hnt(a,i,o,"linear",M),o("title.text",n._dfltTitle.colorbar);var g=i.showticklabels?i.tickfont:C,P=i_.extendFlat({},C,{family:g.family,size:i_.bigFont(g.size)});i_.coerceFont(o,"title.font",P),o("title.side",f?"top":"right")}});var Uh=ye((urr,Gae)=>{"use strict";var Vae=uo(),EO=Mr(),Znt=yO(),Xnt=SO(),Hae=sb().isValid,Ynt=ba().traceIs;function MO(e,t){var r=t.slice(0,t.length-1);return t?EO.nestedProperty(e,r).get()||{}:e}Gae.exports=function e(t,r,n,i,a){var o=a.prefix,s=a.cLetter,l="_module"in r,u=MO(t,o),c=MO(r,o),f=MO(r._template||{},o)||{},h=function(){return delete t.coloraxis,delete r.coloraxis,e(t,r,n,i,a)};if(l){var d=n._colorAxes||{},v=i(o+"coloraxis");if(v){var x=Ynt(r,"contour")&&EO.nestedProperty(r,"contours.coloring").get()||"heatmap",b=d[v];b?(b[2].push(h),b[0]!==x&&(b[0]=!1,EO.warn(["Ignoring coloraxis:",v,"setting","as it is linked to incompatible colorscales."].join(" ")))):d[v]=[x,r,[h]];return}}var p=u[s+"min"],E=u[s+"max"],k=Vae(p)&&Vae(E)&&p<E,A=i(o+s+"auto",!k);A?i(o+s+"mid"):(i(o+s+"min"),i(o+s+"max"));var L=u.colorscale,_=f.colorscale,C;if(L!==void 0&&(C=!Hae(L)),_!==void 0&&(C=!Hae(_)),i(o+"autocolorscale",C),i(o+"colorscale"),i(o+"reversescale"),o!=="marker.line."){var M;o&&l&&(M=Znt(u));var g=i(o+"showscale",M);g&&(o&&f&&(c._template=f),Xnt(u,c,n))}}});var Xae=ye((crr,Zae)=>{"use strict";var jae=Mr(),Knt=Vs(),Wae=mO(),Jnt=Uh();Zae.exports=function(t,r){function n(f,h){return jae.coerce(t,r,Wae,f,h)}n("colorscale.sequential"),n("colorscale.sequentialminus"),n("colorscale.diverging");var i=r._colorAxes,a,o;function s(f,h){return jae.coerce(a,o,Wae.coloraxis,f,h)}for(var l in i){var u=i[l];if(u[0])a=t[l]||{},o=Knt.newContainer(r,l,"coloraxis"),o._name=l,Jnt(a,o,r,s,{prefix:"",cLetter:"c"});else{for(var c=0;c<u[2].length;c++)u[2][c]();delete r._colorAxes[l]}}}});var Kae=ye((frr,Yae)=>{"use strict";var $nt=Mr(),Qnt=Dv().hasColorscale,eat=Dv().extractOpts;Yae.exports=function(t,r){function n(c,f){var h=c["_"+f];h!==void 0&&(c[f]=h)}function i(c,f){var h=f.container?$nt.nestedProperty(c,f.container).get():c;if(h)if(h.coloraxis)h._colorAx=r[h.coloraxis];else{var d=eat(h),v=d.auto;(v||d.min===void 0)&&n(h,f.min),(v||d.max===void 0)&&n(h,f.max),d.autocolorscale&&n(h,"colorscale")}}for(var a=0;a<t.length;a++){var o=t[a],s=o._module.colorbar;if(s)if(Array.isArray(s))for(var l=0;l<s.length;l++)i(o,s[l]);else i(o,s);Qnt(o,"marker.line")&&i(o,{container:"marker.line",min:"cmin",max:"cmax"})}for(var u in r._colorAxes)i(r[u],{min:"cmin",max:"cmax"})}});var zv=ye((hrr,$ae)=>{"use strict";var Jae=uo(),kO=Mr(),tat=Dv().extractOpts;$ae.exports=function(t,r,n){var i=t._fullLayout,a=n.vals,o=n.containerStr,s=o?kO.nestedProperty(r,o).get():r,l=tat(s),u=l.auto!==!1,c=l.min,f=l.max,h=l.mid,d=function(){return kO.aggNums(Math.min,null,a)},v=function(){return kO.aggNums(Math.max,null,a)};if(c===void 0?c=d():u&&(s._colorAx&&Jae(c)?c=Math.min(c,d()):c=d()),f===void 0?f=v():u&&(s._colorAx&&Jae(f)?f=Math.max(f,v()):f=v()),u&&h!==void 0&&(f-h>h-c?c=h-(f-h):f-h<h-c&&(f=h+(h-c))),c===f&&(c-=.5,f+=.5),l._sync("min",c),l._sync("max",f),l.autocolorscale){var x;c*f<0?x=i.colorscale.diverging:c>=0?x=i.colorscale.sequential:x=i.colorscale.sequentialminus,l._sync("colorscale",x)}}});var Mu=ye((drr,Qae)=>{"use strict";var Q6=sb(),A3=Dv();Qae.exports={moduleType:"component",name:"colorscale",attributes:Jl(),layoutAttributes:mO(),supplyLayoutDefaults:Xae(),handleDefaults:Uh(),crossTraceDefaults:Kae(),calc:zv(),scales:Q6.scales,defaultScale:Q6.defaultScale,getScale:Q6.get,isValidScale:Q6.isValid,hasColorscale:A3.hasColorscale,extractOpts:A3.extractOpts,extractScale:A3.extractScale,flipScale:A3.flipScale,makeColorScaleFunc:A3.makeColorScaleFunc,makeColorScaleFuncFromTrace:A3.makeColorScaleFuncFromTrace}});var lu=ye((vrr,toe)=>{"use strict";var eoe=Mr(),rat=vv().isTypedArraySpec;toe.exports={hasLines:function(e){return e.visible&&e.mode&&e.mode.indexOf("lines")!==-1},hasMarkers:function(e){return e.visible&&(e.mode&&e.mode.indexOf("markers")!==-1||e.type==="splom")},hasText:function(e){return e.visible&&e.mode&&e.mode.indexOf("text")!==-1},isBubble:function(e){var t=e.marker;return eoe.isPlainObject(t)&&(eoe.isArrayOrTypedArray(t.size)||rat(t.size))}}});var S3=ye((prr,roe)=>{"use strict";var iat=uo();roe.exports=function(t,r){r||(r=2);var n=t.marker,i=n.sizeref||1,a=n.sizemin||0,o=n.sizemode==="area"?function(s){return Math.sqrt(s/i)}:function(s){return s/i};return function(s){var l=o(s/r);return iat(l)&&l>0?Math.max(l,a):0}}});var rp=ye(pv=>{"use strict";var ioe=Mr();pv.getSubplot=function(e){return e.subplot||e.xaxis+e.yaxis||e.geo};pv.isTraceInSubplots=function(e,t){if(e.type==="splom"){for(var r=e.xaxes||[],n=e.yaxes||[],i=0;i<r.length;i++)for(var a=0;a<n.length;a++)if(t.indexOf(r[i]+n[a])!==-1)return!0;return!1}return t.indexOf(pv.getSubplot(e))!==-1};pv.flat=function(e,t){for(var r=new Array(e.length),n=0;n<e.length;n++)r[n]=t;return r};pv.p2c=function(e,t){for(var r=new Array(e.length),n=0;n<e.length;n++)r[n]=e[n].p2c(t);return r};pv.getDistanceFunction=function(e,t,r,n){return e==="closest"?n||pv.quadrature(t,r):e.charAt(0)==="x"?t:r};pv.getClosest=function(e,t,r){if(r.index!==!1)r.index>=0&&r.index<e.length?r.distance=0:r.index=!1;else for(var n=1/0,i=e.length,a=0;a<i;a++)n=t(e[a]),n<=r.distance&&(r.index=a,r.distance=n);return r};pv.inbox=function(e,t,r){return e*t<0||e===0?r:1/0};pv.quadrature=function(e,t){return function(r){var n=e(r),i=t(r);return Math.sqrt(n*n+i*i)}};pv.makeEventData=function(e,t,r){var n="index"in e?e.index:e.pointNumber,i={data:t._input,fullData:t,curveNumber:t.index,pointNumber:n};if(t._indexToPoints){var a=t._indexToPoints[n];a.length===1?i.pointIndex=a[0]:i.pointIndices=a}else i.pointIndex=n;return t._module.eventData?i=t._module.eventData(i,e,t,r,n):("xVal"in e?i.x=e.xVal:"x"in e&&(i.x=e.x),"yVal"in e?i.y=e.yVal:"y"in e&&(i.y=e.y),e.xa&&(i.xaxis=e.xa),e.ya&&(i.yaxis=e.ya),e.zLabelVal!==void 0&&(i.z=e.zLabelVal)),pv.appendArrayPointValue(i,t,n),i};pv.appendArrayPointValue=function(e,t,r){var n=t._arrayAttrs;if(n)for(var i=0;i<n.length;i++){var a=n[i],o=noe(a);if(e[o]===void 0){var s=ioe.nestedProperty(t,a).get(),l=aoe(s,r);l!==void 0&&(e[o]=l)}}};pv.appendArrayMultiPointValues=function(e,t,r){var n=t._arrayAttrs;if(n)for(var i=0;i<n.length;i++){var a=n[i],o=noe(a);if(e[o]===void 0){for(var s=ioe.nestedProperty(t,a).get(),l=new Array(r.length),u=0;u<r.length;u++)l[u]=aoe(s,r[u]);e[o]=l}}};var nat={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function noe(e){return nat[e]||e}function aoe(e,t){if(Array.isArray(t)){if(Array.isArray(e)&&Array.isArray(e[t[0]]))return e[t[0]][t[1]]}else return e[t]}var aat={x:!0,y:!0},oat={"x unified":!0,"y unified":!0};pv.isUnifiedHover=function(e){return typeof e!="string"?!1:!!oat[e]};pv.isXYhover=function(e){return typeof e!="string"?!1:!!aat[e]}});var XS=ye((mrr,ooe)=>{ooe.exports=lat;var CO={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},sat=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function lat(e){var t=[];return e.replace(sat,function(r,n,i){var a=n.toLowerCase();for(i=cat(i),a=="m"&&i.length>2&&(t.push([n].concat(i.splice(0,2))),a="l",n=n=="m"?"l":"L");;){if(i.length==CO[a])return i.unshift(n),t.push(i);if(i.length<CO[a])throw new Error("malformed path data");t.push([n].concat(i.splice(0,CO[a])))}}),t}var uat=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function cat(e){var t=e.match(uat);return t?t.map(Number):[]}});var doe=ye((yrr,hoe)=>{"use strict";var fat=XS(),Yn=function(e,t){return t?Math.round(e*(t=Math.pow(10,t)))/t:Math.round(e)},ts="M0,0Z",soe=Math.sqrt(2),n_=Math.sqrt(3),LO=Math.PI,PO=Math.cos,IO=Math.sin;hoe.exports={circle:{n:0,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i="M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z";return r?is(t,r,i):i}},square:{n:1,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")}},diamond:{n:2,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.3,2);return is(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"Z")}},cross:{n:3,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.4,2),i=Yn(e*1.2,2);return is(t,r,"M"+i+","+n+"H"+n+"V"+i+"H-"+n+"V"+n+"H-"+i+"V-"+n+"H-"+n+"V-"+i+"H"+n+"V-"+n+"H"+i+"Z")}},x:{n:4,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.8/soe,2),i="l"+n+","+n,a="l"+n+",-"+n,o="l-"+n+",-"+n,s="l-"+n+","+n;return is(t,r,"M0,"+n+i+a+o+a+o+s+o+s+i+s+i+"Z")}},"triangle-up":{n:5,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2/n_,2),i=Yn(e/2,2),a=Yn(e,2);return is(t,r,"M-"+n+","+i+"H"+n+"L0,-"+a+"Z")}},"triangle-down":{n:6,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2/n_,2),i=Yn(e/2,2),a=Yn(e,2);return is(t,r,"M-"+n+",-"+i+"H"+n+"L0,"+a+"Z")}},"triangle-left":{n:7,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2/n_,2),i=Yn(e/2,2),a=Yn(e,2);return is(t,r,"M"+i+",-"+n+"V"+n+"L-"+a+",0Z")}},"triangle-right":{n:8,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2/n_,2),i=Yn(e/2,2),a=Yn(e,2);return is(t,r,"M-"+i+",-"+n+"V"+n+"L"+a+",0Z")}},"triangle-ne":{n:9,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.6,2),i=Yn(e*1.2,2);return is(t,r,"M-"+i+",-"+n+"H"+n+"V"+i+"Z")}},"triangle-se":{n:10,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.6,2),i=Yn(e*1.2,2);return is(t,r,"M"+n+",-"+i+"V"+n+"H-"+i+"Z")}},"triangle-sw":{n:11,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.6,2),i=Yn(e*1.2,2);return is(t,r,"M"+i+","+n+"H-"+n+"V-"+i+"Z")}},"triangle-nw":{n:12,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.6,2),i=Yn(e*1.2,2);return is(t,r,"M-"+n+","+i+"V-"+n+"H"+i+"Z")}},pentagon:{n:13,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.951,2),i=Yn(e*.588,2),a=Yn(-e,2),o=Yn(e*-.309,2),s=Yn(e*.809,2);return is(t,r,"M"+n+","+o+"L"+i+","+s+"H-"+i+"L-"+n+","+o+"L0,"+a+"Z")}},hexagon:{n:14,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i=Yn(e/2,2),a=Yn(e*n_/2,2);return is(t,r,"M"+a+",-"+i+"V"+i+"L0,"+n+"L-"+a+","+i+"V-"+i+"L0,-"+n+"Z")}},hexagon2:{n:15,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i=Yn(e/2,2),a=Yn(e*n_/2,2);return is(t,r,"M-"+i+","+a+"H"+i+"L"+n+",0L"+i+",-"+a+"H-"+i+"L-"+n+",0Z")}},octagon:{n:16,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.924,2),i=Yn(e*.383,2);return is(t,r,"M-"+i+",-"+n+"H"+i+"L"+n+",-"+i+"V"+i+"L"+i+","+n+"H-"+i+"L-"+n+","+i+"V-"+i+"Z")}},star:{n:17,f:function(e,t,r){if(rs(t))return ts;var n=e*1.4,i=Yn(n*.225,2),a=Yn(n*.951,2),o=Yn(n*.363,2),s=Yn(n*.588,2),l=Yn(-n,2),u=Yn(n*-.309,2),c=Yn(n*.118,2),f=Yn(n*.809,2),h=Yn(n*.382,2);return is(t,r,"M"+i+","+u+"H"+a+"L"+o+","+c+"L"+s+","+f+"L0,"+h+"L-"+s+","+f+"L-"+o+","+c+"L-"+a+","+u+"H-"+i+"L0,"+l+"Z")}},hexagram:{n:18,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.66,2),i=Yn(e*.38,2),a=Yn(e*.76,2);return is(t,r,"M-"+a+",0l-"+i+",-"+n+"h"+a+"l"+i+",-"+n+"l"+i+","+n+"h"+a+"l-"+i+","+n+"l"+i+","+n+"h-"+a+"l-"+i+","+n+"l-"+i+",-"+n+"h-"+a+"Z")}},"star-triangle-up":{n:19,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*n_*.8,2),i=Yn(e*.8,2),a=Yn(e*1.6,2),o=Yn(e*4,2),s="A "+o+","+o+" 0 0 1 ";return is(t,r,"M-"+n+","+i+s+n+","+i+s+"0,-"+a+s+"-"+n+","+i+"Z")}},"star-triangle-down":{n:20,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*n_*.8,2),i=Yn(e*.8,2),a=Yn(e*1.6,2),o=Yn(e*4,2),s="A "+o+","+o+" 0 0 1 ";return is(t,r,"M"+n+",-"+i+s+"-"+n+",-"+i+s+"0,"+a+s+n+",-"+i+"Z")}},"star-square":{n:21,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.1,2),i=Yn(e*2,2),a="A "+i+","+i+" 0 0 1 ";return is(t,r,"M-"+n+",-"+n+a+"-"+n+","+n+a+n+","+n+a+n+",-"+n+a+"-"+n+",-"+n+"Z")}},"star-diamond":{n:22,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.4,2),i=Yn(e*1.9,2),a="A "+i+","+i+" 0 0 1 ";return is(t,r,"M-"+n+",0"+a+"0,"+n+a+n+",0"+a+"0,-"+n+a+"-"+n+",0Z")}},"diamond-tall":{n:23,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*.7,2),i=Yn(e*1.4,2);return is(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},"diamond-wide":{n:24,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.4,2),i=Yn(e*.7,2);return is(t,r,"M0,"+i+"L"+n+",0L0,-"+i+"L-"+n+",0Z")}},hourglass:{n:25,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M"+n+","+n+"H-"+n+"L"+n+",-"+n+"H-"+n+"Z")},noDot:!0},bowtie:{n:26,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M"+n+","+n+"V-"+n+"L-"+n+","+n+"V-"+n+"Z")},noDot:!0},"circle-cross":{n:27,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i=Yn(e/soe,2);return is(t,r,"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i+"M"+n+",0A"+n+","+n+" 0 1,1 0,-"+n+"A"+n+","+n+" 0 0,1 "+n+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n+"M"+n+","+n+"H-"+n+"V-"+n+"H"+n+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.3,2);return is(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM0,-"+n+"V"+n+"M-"+n+",0H"+n)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.3,2),i=Yn(e*.65,2);return is(t,r,"M"+n+",0L0,"+n+"L-"+n+",0L0,-"+n+"ZM-"+i+",-"+i+"L"+i+","+i+"M-"+i+","+i+"L"+i+",-"+i)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.4,2);return is(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M"+n+","+n+"L-"+n+",-"+n+"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.2,2),i=Yn(e*.85,2);return is(t,r,"M0,"+n+"V-"+n+"M"+n+",0H-"+n+"M"+i+","+i+"L-"+i+",-"+i+"M"+i+",-"+i+"L-"+i+","+i)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e/2,2),i=Yn(e,2);return is(t,r,"M"+n+","+i+"V-"+i+"M"+(n-i)+",-"+i+"V"+i+"M"+i+","+n+"H-"+i+"M-"+i+","+(n-i)+"H"+i)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.2,2),i=Yn(e*1.6,2),a=Yn(e*.8,2);return is(t,r,"M-"+n+","+a+"L0,0M"+n+","+a+"L0,0M0,-"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.2,2),i=Yn(e*1.6,2),a=Yn(e*.8,2);return is(t,r,"M-"+n+",-"+a+"L0,0M"+n+",-"+a+"L0,0M0,"+i+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.2,2),i=Yn(e*1.6,2),a=Yn(e*.8,2);return is(t,r,"M"+a+","+n+"L0,0M"+a+",-"+n+"L0,0M-"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.2,2),i=Yn(e*1.6,2),a=Yn(e*.8,2);return is(t,r,"M-"+a+","+n+"L0,0M-"+a+",-"+n+"L0,0M"+i+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.4,2);return is(t,r,"M"+n+",0H-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*1.4,2);return is(t,r,"M0,"+n+"V-"+n)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M"+n+",-"+n+"L-"+n+","+n)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2);return is(t,r,"M"+n+","+n+"L-"+n+",-"+n)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i=Yn(e*2,2);return is(t,r,"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i=Yn(e*2,2);return is(t,r,"M0,0L-"+n+",-"+i+"H"+n+"Z")},noDot:!0},"arrow-left":{n:47,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2,2),i=Yn(e,2);return is(t,r,"M0,0L"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-right":{n:48,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2,2),i=Yn(e,2);return is(t,r,"M0,0L-"+n+",-"+i+"V"+i+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i=Yn(e*2,2);return is(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+","+i+"H"+n+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e,2),i=Yn(e*2,2);return is(t,r,"M-"+n+",0H"+n+"M0,0L-"+n+",-"+i+"H"+n+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2,2),i=Yn(e,2);return is(t,r,"M0,-"+i+"V"+i+"M0,0L"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(e,t,r){if(rs(t))return ts;var n=Yn(e*2,2),i=Yn(e,2);return is(t,r,"M0,-"+i+"V"+i+"M0,0L-"+n+",-"+i+"V"+i+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(e,t,r){if(rs(t))return ts;var n=LO/2.5,i=2*e*PO(n),a=2*e*IO(n);return is(t,r,"M0,0L"+-i+","+a+"L"+i+","+a+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(e,t,r){if(rs(t))return ts;var n=LO/4,i=2*e*PO(n),a=2*e*IO(n);return is(t,r,"M0,0L"+-i+","+a+"A "+2*e+","+2*e+" 0 0 1 "+i+","+a+"Z")},backoff:.4,noDot:!0}};function rs(e){return e===null}var loe,uoe,coe,foe;function is(e,t,r){if((!e||e%360===0)&&!t)return r;if(coe===e&&foe===t&&loe===r)return uoe;coe=e,foe=t,loe=r;function n(b,p){var E=PO(b),k=IO(b),A=p[0],L=p[1]+(t||0);return[A*E-L*k,A*k+L*E]}for(var i=e/180*LO,a=0,o=0,s=fat(r),l="",u=0;u<s.length;u++){var c=s[u],f=c[0],h=a,d=o;if(f==="M"||f==="L")a=+c[1],o=+c[2];else if(f==="m"||f==="l")a+=+c[1],o+=+c[2];else if(f==="H")a=+c[1];else if(f==="h")a+=+c[1];else if(f==="V")o=+c[1];else if(f==="v")o+=+c[1];else if(f==="A"){a=+c[1],o=+c[2];var v=n(i,[+c[6],+c[7]]);c[6]=v[0],c[7]=v[1],c[3]=+c[3]+e}(f==="H"||f==="V")&&(f="L"),(f==="h"||f==="v")&&(f="l"),(f==="m"||f==="l")&&(a-=h,o-=d);var x=n(i,[a,o]);(f==="H"||f==="V")&&(f="L"),(f==="M"||f==="L"||f==="m"||f==="l")&&(c[1]=x[0],c[2]=x[1]),c[0]=f,l+=c[0]+c.slice(1).join(",")}return uoe=l,l}});var ao=ye((_rr,Roe)=>{"use strict";var od=xa(),du=Mr(),hat=du.numberFormat,Ab=uo(),OO=id(),tL=ba(),Xd=va(),dat=Mu(),KS=du.strTranslate,rL=Pl(),vat=Zp(),pat=Nh(),gat=pat.LINE_SPACING,Toe=U1().DESELECTDIM,mat=lu(),yat=S3(),_at=rp().appendArrayPointValue,na=Roe.exports={};na.font=function(e,t){var r=t.variant,n=t.style,i=t.weight,a=t.color,o=t.size,s=t.family,l=t.shadow,u=t.lineposition,c=t.textcase;s&&e.style("font-family",s),o+1&&e.style("font-size",o+"px"),a&&e.call(Xd.fill,a),i&&e.style("font-weight",i),n&&e.style("font-style",n),r&&e.style("font-variant",r),c&&e.style("text-transform",RO(bat(c))),l&&e.style("text-shadow",l==="auto"?rL.makeTextShadow(Xd.contrast(a)):RO(l)),u&&e.style("text-decoration-line",RO(wat(u)))};function RO(e){return e==="none"?void 0:e}var xat={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function bat(e){return xat[e]}function wat(e){return e.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}na.setPosition=function(e,t,r){e.attr("x",t).attr("y",r)};na.setSize=function(e,t,r){e.attr("width",t).attr("height",r)};na.setRect=function(e,t,r,n,i){e.call(na.setPosition,t,r).call(na.setSize,n,i)};na.translatePoint=function(e,t,r,n){var i=r.c2p(e.x),a=n.c2p(e.y);if(Ab(i)&&Ab(a)&&t.node())t.node().nodeName==="text"?t.attr("x",i).attr("y",a):t.attr("transform",KS(i,a));else return!1;return!0};na.translatePoints=function(e,t,r){e.each(function(n){var i=od.select(this);na.translatePoint(n,i,t,r)})};na.hideOutsideRangePoint=function(e,t,r,n,i,a){t.attr("display",r.isPtWithinRange(e,i)&&n.isPtWithinRange(e,a)?null:"none")};na.hideOutsideRangePoints=function(e,t){if(t._hasClipOnAxisFalse){var r=t.xaxis,n=t.yaxis;e.each(function(i){var a=i[0].trace,o=a.xcalendar,s=a.ycalendar,l=tL.traceIs(a,"bar-like")?".bartext":".point,.textpoint";e.selectAll(l).each(function(u){na.hideOutsideRangePoint(u,od.select(this),r,n,o,s)})})}};na.crispRound=function(e,t,r){return!t||!Ab(t)?r||0:e._context.staticPlot?t:t<1?1:Math.round(t)};na.singleLineStyle=function(e,t,r,n,i){t.style("fill","none");var a=(((e||[])[0]||{}).trace||{}).line||{},o=r||a.width||0,s=i||a.dash||"";Xd.stroke(t,n||a.color),na.dashLine(t,s,o)};na.lineGroupStyle=function(e,t,r,n){e.style("fill","none").each(function(i){var a=(((i||[])[0]||{}).trace||{}).line||{},o=t||a.width||0,s=n||a.dash||"";od.select(this).call(Xd.stroke,r||a.color).call(na.dashLine,s,o)})};na.dashLine=function(e,t,r){r=+r||0,t=na.dashStyle(t,r),e.style({"stroke-dasharray":t,"stroke-width":r+"px"})};na.dashStyle=function(e,t){t=+t||1;var r=Math.max(t,3);return e==="solid"?e="":e==="dot"?e=r+"px,"+r+"px":e==="dash"?e=3*r+"px,"+3*r+"px":e==="longdash"?e=5*r+"px,"+5*r+"px":e==="dashdot"?e=3*r+"px,"+r+"px,"+r+"px,"+r+"px":e==="longdashdot"&&(e=5*r+"px,"+2*r+"px,"+r+"px,"+2*r+"px"),e};function Aoe(e,t,r,n){var i=t.fillpattern,a=t.fillgradient,o=i&&na.getPatternAttr(i.shape,0,"");if(o){var s=na.getPatternAttr(i.bgcolor,0,null),l=na.getPatternAttr(i.fgcolor,0,null),u=i.fgopacity,c=na.getPatternAttr(i.size,0,8),f=na.getPatternAttr(i.solidity,0,.3),h=t.uid;na.pattern(e,"point",r,h,o,c,f,void 0,i.fillmode,s,l,u)}else if(a&&a.type!=="none"){var d=a.type,v="scatterfill-"+t.uid;if(n&&(v="legendfill-"+t.uid),!n&&(a.start!==void 0||a.stop!==void 0)){var x,b;d==="horizontal"?(x={x:a.start,y:0},b={x:a.stop,y:0}):d==="vertical"&&(x={x:0,y:a.start},b={x:0,y:a.stop}),x.x=t._xA.c2p(x.x===void 0?t._extremes.x.min[0].val:x.x,!0),x.y=t._yA.c2p(x.y===void 0?t._extremes.y.min[0].val:x.y,!0),b.x=t._xA.c2p(b.x===void 0?t._extremes.x.max[0].val:b.x,!0),b.y=t._yA.c2p(b.y===void 0?t._extremes.y.max[0].val:b.y,!0),e.call(Eoe,r,v,"linear",a.colorscale,"fill",x,b,!0,!1)}else d==="horizontal"&&(d=d+"reversed"),e.call(na.gradient,r,v,d,a.colorscale,"fill")}else t.fillcolor&&e.call(Xd.fill,t.fillcolor)}na.singleFillStyle=function(e,t){var r=od.select(e.node()),n=r.data(),i=((n[0]||[])[0]||{}).trace||{};Aoe(e,i,t,!1)};na.fillGroupStyle=function(e,t,r){e.style("stroke-width",0).each(function(n){var i=od.select(this);n[0].trace&&Aoe(i,n[0].trace,t,r)})};var voe=doe();na.symbolNames=[];na.symbolFuncs=[];na.symbolBackOffs=[];na.symbolNeedLines={};na.symbolNoDot={};na.symbolNoFill={};na.symbolList=[];Object.keys(voe).forEach(function(e){var t=voe[e],r=t.n;na.symbolList.push(r,String(r),e,r+100,String(r+100),e+"-open"),na.symbolNames[r]=e,na.symbolFuncs[r]=t.f,na.symbolBackOffs[r]=t.backoff||0,t.needLine&&(na.symbolNeedLines[r]=!0),t.noDot?na.symbolNoDot[r]=!0:na.symbolList.push(r+200,String(r+200),e+"-dot",r+300,String(r+300),e+"-open-dot"),t.noFill&&(na.symbolNoFill[r]=!0)});var Tat=na.symbolNames.length,Aat="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";na.symbolNumber=function(e){if(Ab(e))e=+e;else if(typeof e=="string"){var t=0;e.indexOf("-open")>0&&(t=100,e=e.replace("-open","")),e.indexOf("-dot")>0&&(t+=200,e=e.replace("-dot","")),e=na.symbolNames.indexOf(e),e>=0&&(e+=t)}return e%100>=Tat||e>=400?0:Math.floor(Math.max(e,0))};function Soe(e,t,r,n){var i=e%100;return na.symbolFuncs[i](t,r,n)+(e>=200?Aat:"")}var poe=hat("~f"),Moe={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};na.gradient=function(e,t,r,n,i,a){var o=Moe[n];return Eoe(e,t,r,o.type,i,a,o.start,o.stop,!1,o.reversed)};function Eoe(e,t,r,n,i,a,o,s,l,u){var c=i.length,f;n==="linear"?f={node:"linearGradient",attrs:{x1:o.x,y1:o.y,x2:s.x,y2:s.y,gradientUnits:l?"userSpaceOnUse":"objectBoundingBox"},reversed:u}:n==="radial"&&(f={node:"radialGradient",reversed:u});for(var h=new Array(c),d=0;d<c;d++)f.reversed?h[c-1-d]=[poe((1-i[d][0])*100),i[d][1]]:h[d]=[poe(i[d][0]*100),i[d][1]];var v=t._fullLayout,x="g"+v._uid+"-"+r,b=v._defs.select(".gradients").selectAll("#"+x).data([n+h.join(";")],du.identity);b.exit().remove(),b.enter().append(f.node).each(function(){var p=od.select(this);f.attrs&&p.attr(f.attrs),p.attr("id",x);var E=p.selectAll("stop").data(h);E.exit().remove(),E.enter().append("stop"),E.each(function(k){var A=OO(k[1]);od.select(this).attr({offset:k[0]+"%","stop-color":Xd.tinyRGB(A),"stop-opacity":A.getAlpha()})})}),e.style(a,BO(x,t)).style(a+"-opacity",null),e.classed("gradient_filled",!0)}na.pattern=function(e,t,r,n,i,a,o,s,l,u,c,f){var h=t==="legend";s&&(l==="overlay"?(u=s,c=Xd.contrast(u)):(u=void 0,c=s));var d=r._fullLayout,v="p"+d._uid+"-"+n,x,b,p=function(q,V,H,X,G){return X+(G-X)*(q-V)/(H-V)},E,k,A,L,_={},C=OO(c),M=Xd.tinyRGB(C),g=C.getAlpha(),P=f*g;switch(i){case"/":x=a*Math.sqrt(2),b=a*Math.sqrt(2),E="M-"+x/4+","+b/4+"l"+x/2+",-"+b/2+"M0,"+b+"L"+x+",0M"+x/4*3+","+b/4*5+"l"+x/2+",-"+b/2,k=o*a,L="path",_={d:E,opacity:P,stroke:M,"stroke-width":k+"px"};break;case"\\":x=a*Math.sqrt(2),b=a*Math.sqrt(2),E="M"+x/4*3+",-"+b/4+"l"+x/2+","+b/2+"M0,0L"+x+","+b+"M-"+x/4+","+b/4*3+"l"+x/2+","+b/2,k=o*a,L="path",_={d:E,opacity:P,stroke:M,"stroke-width":k+"px"};break;case"x":x=a*Math.sqrt(2),b=a*Math.sqrt(2),E="M-"+x/4+","+b/4+"l"+x/2+",-"+b/2+"M0,"+b+"L"+x+",0M"+x/4*3+","+b/4*5+"l"+x/2+",-"+b/2+"M"+x/4*3+",-"+b/4+"l"+x/2+","+b/2+"M0,0L"+x+","+b+"M-"+x/4+","+b/4*3+"l"+x/2+","+b/2,k=a-a*Math.sqrt(1-o),L="path",_={d:E,opacity:P,stroke:M,"stroke-width":k+"px"};break;case"|":x=a,b=a,L="path",E="M"+x/2+",0L"+x/2+","+b,k=o*a,L="path",_={d:E,opacity:P,stroke:M,"stroke-width":k+"px"};break;case"-":x=a,b=a,L="path",E="M0,"+b/2+"L"+x+","+b/2,k=o*a,L="path",_={d:E,opacity:P,stroke:M,"stroke-width":k+"px"};break;case"+":x=a,b=a,L="path",E="M"+x/2+",0L"+x/2+","+b+"M0,"+b/2+"L"+x+","+b/2,k=a-a*Math.sqrt(1-o),L="path",_={d:E,opacity:P,stroke:M,"stroke-width":k+"px"};break;case".":x=a,b=a,o<Math.PI/4?A=Math.sqrt(o*a*a/Math.PI):A=p(o,Math.PI/4,1,a/2,a/Math.sqrt(2)),L="circle",_={cx:x/2,cy:b/2,r:A,opacity:P,fill:M};break}var T=[i||"noSh",u||"noBg",c||"noFg",a,o].join(";"),F=d._defs.select(".patterns").selectAll("#"+v).data([T],du.identity);F.exit().remove(),F.enter().append("pattern").each(function(){var q=od.select(this);if(q.attr({id:v,width:x+"px",height:b+"px",patternUnits:"userSpaceOnUse",patternTransform:h?"scale(0.8)":""}),u){var V=OO(u),H=Xd.tinyRGB(V),X=V.getAlpha(),G=q.selectAll("rect").data([0]);G.exit().remove(),G.enter().append("rect").attr({width:x+"px",height:b+"px",fill:H,"fill-opacity":X})}var N=q.selectAll(L).data([0]);N.exit().remove(),N.enter().append(L).attr(_)}),e.style("fill",BO(v,r)).style("fill-opacity",null),e.classed("pattern_filled",!0)};na.initGradients=function(e){var t=e._fullLayout,r=du.ensureSingle(t._defs,"g","gradients");r.selectAll("linearGradient,radialGradient").remove(),od.select(e).selectAll(".gradient_filled").classed("gradient_filled",!1)};na.initPatterns=function(e){var t=e._fullLayout,r=du.ensureSingle(t._defs,"g","patterns");r.selectAll("pattern").remove(),od.select(e).selectAll(".pattern_filled").classed("pattern_filled",!1)};na.getPatternAttr=function(e,t,r){return e&&du.isArrayOrTypedArray(e)?t<e.length?e[t]:r:e};na.pointStyle=function(e,t,r,n){if(e.size()){var i=na.makePointStyleFns(t);e.each(function(a){na.singlePointStyle(a,od.select(this),t,i,r,n)})}};na.singlePointStyle=function(e,t,r,n,i,a){var o=r.marker,s=o.line;if(a&&a.i>=0&&e.i===void 0&&(e.i=a.i),t.style("opacity",n.selectedOpacityFn?n.selectedOpacityFn(e):e.mo===void 0?o.opacity:e.mo),n.ms2mrc){var l;e.ms==="various"||o.size==="various"?l=3:l=n.ms2mrc(e.ms),e.mrc=l,n.selectedSizeFn&&(l=e.mrc=n.selectedSizeFn(e));var u=na.symbolNumber(e.mx||o.symbol)||0;e.om=u%200>=100;var c=UO(e,r),f=NO(e,r);t.attr("d",Soe(u,l,c,f))}var h=!1,d,v,x;if(e.so)x=s.outlierwidth,v=s.outliercolor,d=o.outliercolor;else{var b=(s||{}).width;x=(e.mlw+1||b+1||(e.trace?(e.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in e?v=e.mlcc=n.lineScale(e.mlc):du.isArrayOrTypedArray(s.color)?v=Xd.defaultLine:v=s.color,du.isArrayOrTypedArray(o.color)&&(d=Xd.defaultLine,h=!0),"mc"in e?d=e.mcc=n.markerScale(e.mc):d=o.color||o.colors||"rgba(0,0,0,0)",n.selectedColorFn&&(d=n.selectedColorFn(e))}if(e.om)t.call(Xd.stroke,d).style({"stroke-width":(x||1)+"px",fill:"none"});else{t.style("stroke-width",(e.isBlank?0:x)+"px");var p=o.gradient,E=e.mgt;E?h=!0:E=p&&p.type,du.isArrayOrTypedArray(E)&&(E=E[0],Moe[E]||(E=0));var k=o.pattern,A=k&&na.getPatternAttr(k.shape,e.i,"");if(E&&E!=="none"){var L=e.mgc;L?h=!0:L=p.color;var _=r.uid;h&&(_+="-"+e.i),na.gradient(t,i,_,E,[[0,L],[1,d]],"fill")}else if(A){var C=!1,M=k.fgcolor;!M&&a&&a.color&&(M=a.color,C=!0);var g=na.getPatternAttr(M,e.i,a&&a.color||null),P=na.getPatternAttr(k.bgcolor,e.i,null),T=k.fgopacity,F=na.getPatternAttr(k.size,e.i,8),q=na.getPatternAttr(k.solidity,e.i,.3);C=C||e.mcc||du.isArrayOrTypedArray(k.shape)||du.isArrayOrTypedArray(k.bgcolor)||du.isArrayOrTypedArray(k.fgcolor)||du.isArrayOrTypedArray(k.size)||du.isArrayOrTypedArray(k.solidity);var V=r.uid;C&&(V+="-"+e.i),na.pattern(t,"point",i,V,A,F,q,e.mcc,k.fillmode,P,g,T)}else du.isArrayOrTypedArray(d)?Xd.fill(t,d[e.i]):Xd.fill(t,d);x&&Xd.stroke(t,v)}};na.makePointStyleFns=function(e){var t={},r=e.marker;return t.markerScale=na.tryColorscale(r,""),t.lineScale=na.tryColorscale(r,"line"),tL.traceIs(e,"symbols")&&(t.ms2mrc=mat.isBubble(e)?yat(e):function(){return(r.size||6)/2}),e.selectedpoints&&du.extendFlat(t,na.makeSelectedPointStyleFns(e)),t};na.makeSelectedPointStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.marker||{},a=r.marker||{},o=n.marker||{},s=i.opacity,l=a.opacity,u=o.opacity,c=l!==void 0,f=u!==void 0;(du.isArrayOrTypedArray(s)||c||f)&&(t.selectedOpacityFn=function(A){var L=A.mo===void 0?i.opacity:A.mo;return A.selected?c?l:L:f?u:Toe*L});var h=i.color,d=a.color,v=o.color;(d||v)&&(t.selectedColorFn=function(A){var L=A.mcc||h;return A.selected?d||L:v||L});var x=i.size,b=a.size,p=o.size,E=b!==void 0,k=p!==void 0;return tL.traceIs(e,"symbols")&&(E||k)&&(t.selectedSizeFn=function(A){var L=A.mrc||x/2;return A.selected?E?b/2:L:k?p/2:L}),t};na.makeSelectedTextStyleFns=function(e){var t={},r=e.selected||{},n=e.unselected||{},i=e.textfont||{},a=r.textfont||{},o=n.textfont||{},s=i.color,l=a.color,u=o.color;return t.selectedTextColorFn=function(c){var f=c.tc||s;return c.selected?l||f:u||(l?f:Xd.addOpacity(f,Toe))},t};na.selectedPointStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=na.makeSelectedPointStyleFns(t),n=t.marker||{},i=[];r.selectedOpacityFn&&i.push(function(a,o){a.style("opacity",r.selectedOpacityFn(o))}),r.selectedColorFn&&i.push(function(a,o){Xd.fill(a,r.selectedColorFn(o))}),r.selectedSizeFn&&i.push(function(a,o){var s=o.mx||n.symbol||0,l=r.selectedSizeFn(o);a.attr("d",Soe(na.symbolNumber(s),l,UO(o,t),NO(o,t))),o.mrc2=l}),i.length&&e.each(function(a){for(var o=od.select(this),s=0;s<i.length;s++)i[s](o,a)})}};na.tryColorscale=function(e,t){var r=t?du.nestedProperty(e,t).get():e;if(r){var n=r.color;if((r.colorscale||r._colorAx)&&du.isArrayOrTypedArray(n))return dat.makeColorScaleFuncFromTrace(r)}return du.identity};var DO={start:1,end:-1,middle:0,bottom:1,top:-1};function koe(e,t,r,n,i){var a=od.select(e.node().parentNode),o=t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle",s=t.indexOf("left")!==-1?"end":t.indexOf("right")!==-1?"start":"middle",l=n?n/.8+1:0,u=(rL.lineCount(e)-1)*gat+1,c=DO[s]*l,f=r*.75+DO[o]*l+(DO[o]-1)*u*r/2;e.attr("text-anchor",s),i||a.attr("transform",KS(c,f))}function Coe(e,t){var r=e.ts||t.textfont.size;return Ab(r)&&r>0?r:0}na.textPointStyle=function(e,t,r){if(e.size()){var n;if(t.selectedpoints){var i=na.makeSelectedTextStyleFns(t);n=i.selectedTextColorFn}var a=t.texttemplate,o=r._fullLayout;e.each(function(s){var l=od.select(this),u=a?du.extractOption(s,t,"txt","texttemplate"):du.extractOption(s,t,"tx","text");if(!u&&u!==0){l.remove();return}if(a){var c=t._module.formatLabels,f=c?c(s,t,o):{},h={};_at(h,t,s.i);var d=t._meta||{};u=du.texttemplateString(u,f,o._d3locale,h,s,d)}var v=s.tp||t.textposition,x=Coe(s,t),b=n?n(s):s.tc||t.textfont.color;l.call(na.font,{family:s.tf||t.textfont.family,weight:s.tw||t.textfont.weight,style:s.ty||t.textfont.style,variant:s.tv||t.textfont.variant,textcase:s.tC||t.textfont.textcase,lineposition:s.tE||t.textfont.lineposition,shadow:s.tS||t.textfont.shadow,size:x,color:b}).text(u).call(rL.convertToTspans,r).call(koe,v,x,s.mrc)})}};na.selectedTextStyle=function(e,t){if(!(!e.size()||!t.selectedpoints)){var r=na.makeSelectedTextStyleFns(t);e.each(function(n){var i=od.select(this),a=r.selectedTextColorFn(n),o=n.tp||t.textposition,s=Coe(n,t);Xd.fill(i,a);var l=tL.traceIs(t,"bar-like");koe(i,o,s,n.mrc2||n.mrc,l)})}};var goe=.5;na.smoothopen=function(e,t){if(e.length<3)return"M"+e.join("L");var r="M"+e[0],n=[],i;for(i=1;i<e.length-1;i++)n.push(eL(e[i-1],e[i],e[i+1],t));for(r+="Q"+n[0][0]+" "+e[1],i=2;i<e.length-1;i++)r+="C"+n[i-2][1]+" "+n[i-1][0]+" "+e[i];return r+="Q"+n[e.length-3][1]+" "+e[e.length-1],r};na.smoothclosed=function(e,t){if(e.length<3)return"M"+e.join("L")+"Z";var r="M"+e[0],n=e.length-1,i=[eL(e[n],e[0],e[1],t)],a;for(a=1;a<n;a++)i.push(eL(e[a-1],e[a],e[a+1],t));for(i.push(eL(e[n-1],e[n],e[0],t)),a=1;a<=n;a++)r+="C"+i[a-1][1]+" "+i[a][0]+" "+e[a];return r+="C"+i[n][1]+" "+i[0][0]+" "+e[0]+"Z",r};var Loe,Poe;function M3(e,t,r){return r&&(e=Ioe(e)),t?Tb(e[1]):wb(e[0])}function wb(e){var t=od.round(e,2);return Loe=t,t}function Tb(e){var t=od.round(e,2);return Poe=t,t}function eL(e,t,r,n){var i=e[0]-t[0],a=e[1]-t[1],o=r[0]-t[0],s=r[1]-t[1],l=Math.pow(i*i+a*a,goe/2),u=Math.pow(o*o+s*s,goe/2),c=(u*u*i-l*l*o)*n,f=(u*u*a-l*l*s)*n,h=3*u*(l+u),d=3*l*(l+u);return[[wb(t[0]+(h&&c/h)),Tb(t[1]+(h&&f/h))],[wb(t[0]-(d&&c/d)),Tb(t[1]-(d&&f/d))]]}var Sat={hv:function(e,t,r){return"H"+wb(t[0])+"V"+M3(t,1,r)},vh:function(e,t,r){return"V"+Tb(t[1])+"H"+M3(t,0,r)},hvh:function(e,t,r){return"H"+wb((e[0]+t[0])/2)+"V"+Tb(t[1])+"H"+M3(t,0,r)},vhv:function(e,t,r){return"V"+Tb((e[1]+t[1])/2)+"H"+wb(t[0])+"V"+M3(t,1,r)}},Mat=function(e,t,r){return"L"+M3(t,0,r)+","+M3(t,1,r)};na.steps=function(e){var t=Sat[e]||Mat;return function(r){for(var n="M"+wb(r[0][0])+","+Tb(r[0][1]),i=r.length,a=1;a<i;a++)n+=t(r[a-1],r[a],a===i-1);return n}};function Ioe(e,t){var r=e.backoff,n=e.trace,i=e.d,a=e.i;if(r&&n&&n.marker&&n.marker.angle%360===0&&n.line&&n.line.shape!=="spline"){var o=du.isArrayOrTypedArray(r),s=e,l=t?t[0]:Loe||0,u=t?t[1]:Poe||0,c=s[0],f=s[1],h=c-l,d=f-u,v=Math.atan2(d,h),x=o?r[a]:r;if(x==="auto"){var b=s.i;n.type==="scatter"&&b--;var p=s.marker,E=p.symbol;du.isArrayOrTypedArray(E)&&(E=E[b]);var k=p.size;du.isArrayOrTypedArray(k)&&(k=k[b]),x=p?na.symbolBackOffs[na.symbolNumber(E)]*k:0,x+=na.getMarkerStandoff(i[b],n)||0}var A=c-x*Math.cos(v),L=f-x*Math.sin(v);(A<=c&&A>=l||A>=c&&A<=l)&&(L<=f&&L>=u||L>=f&&L<=u)&&(e=[A,L])}return e}na.applyBackoff=Ioe;na.makeTester=function(){var e=du.ensureSingleById(od.select("body"),"svg","js-plotly-tester",function(r){r.attr(vat.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),t=du.ensureSingle(e,"path","js-reference-point",function(r){r.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});na.tester=e,na.testref=t};na.savedBBoxes={};var zO=0,Eat=1e4;na.bBox=function(e,t,r){r||(r=moe(e));var n;if(r){if(n=na.savedBBoxes[r],n)return du.extendFlat({},n)}else if(e.childNodes.length===1){var i=e.childNodes[0];if(r=moe(i),r){var a=+i.getAttribute("x")||0,o=+i.getAttribute("y")||0,s=i.getAttribute("transform");if(!s){var l=na.bBox(i,!1,r);return a&&(l.left+=a,l.right+=a),o&&(l.top+=o,l.bottom+=o),l}if(r+="~"+a+"~"+o+"~"+s,n=na.savedBBoxes[r],n)return du.extendFlat({},n)}}var u,c;t?u=e:(c=na.tester.node(),u=e.cloneNode(!0),c.appendChild(u)),od.select(u).attr("transform",null).call(rL.positionText,0,0);var f=u.getBoundingClientRect(),h=na.testref.node().getBoundingClientRect();t||c.removeChild(u);var d={height:f.height,width:f.width,left:f.left-h.left,top:f.top-h.top,right:f.right-h.left,bottom:f.bottom-h.top};return zO>=Eat&&(na.savedBBoxes={},zO=0),r&&(na.savedBBoxes[r]=d),zO++,du.extendFlat({},d)};function moe(e){var t=e.getAttribute("data-unformatted");if(t!==null)return t+e.getAttribute("data-math")+e.getAttribute("text-anchor")+e.getAttribute("style")}na.setClipUrl=function(e,t,r){e.attr("clip-path",BO(t,r))};function BO(e,t){if(!e)return null;var r=t._context,n=r._exportedPlot?"":r._baseUrl||"";return n?"url('"+n+"#"+e+"')":"url(#"+e+")"}na.getTranslate=function(e){var t=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||0,y:+i[1]||0}};na.setTranslate=function(e,t,r){var n=/(\btranslate\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||0,r=r||0,o=o.replace(n,"").trim(),o+=KS(t,r),o=o.trim(),e[a]("transform",o),o};na.getScale=function(e){var t=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,r=e.attr?"attr":"getAttribute",n=e[r]("transform")||"",i=n.replace(t,function(a,o,s){return[o,s].join(" ")}).split(" ");return{x:+i[0]||1,y:+i[1]||1}};na.setScale=function(e,t,r){var n=/(\bscale\(.*?\);?)/,i=e.attr?"attr":"getAttribute",a=e.attr?"attr":"setAttribute",o=e[i]("transform")||"";return t=t||1,r=r||1,o=o.replace(n,"").trim(),o+="scale("+t+","+r+")",o=o.trim(),e[a]("transform",o),o};var kat=/\s*sc.*/;na.setPointGroupScale=function(e,t,r){if(t=t||1,r=r||1,!!e){var n=t===1&&r===1?"":"scale("+t+","+r+")";e.each(function(){var i=(this.getAttribute("transform")||"").replace(kat,"");i+=n,i=i.trim(),this.setAttribute("transform",i)})}};var Cat=/translate\([^)]*\)\s*$/;na.setTextPointsScale=function(e,t,r){e&&e.each(function(){var n,i=od.select(this),a=i.select("text");if(a.node()){var o=parseFloat(a.attr("x")||0),s=parseFloat(a.attr("y")||0),l=(i.attr("transform")||"").match(Cat);t===1&&r===1?n=[]:n=[KS(o,s),"scale("+t+","+r+")",KS(-o,-s)],l&&n.push(l),i.attr("transform",n.join(""))}})};function NO(e,t){var r;return e&&(r=e.mf),r===void 0&&(r=t.marker&&t.marker.standoff||0),!t._geo&&!t._xA?-r:r}na.getMarkerStandoff=NO;var YS=Math.atan2,bb=Math.cos,E3=Math.sin;function yoe(e,t){var r=t[0],n=t[1];return[r*bb(e)-n*E3(e),r*E3(e)+n*bb(e)]}var _oe,xoe,boe,woe,FO,qO;function UO(e,t){var r=e.ma;r===void 0&&(r=t.marker.angle,(!r||du.isArrayOrTypedArray(r))&&(r=0));var n,i,a=t.marker.angleref;if(a==="previous"||a==="north"){if(t._geo){var o=t._geo.project(e.lonlat);n=o[0],i=o[1]}else{var s=t._xA,l=t._yA;if(s&&l)n=s.c2p(e.x),i=l.c2p(e.y);else return 90}if(t._geo){var u=e.lonlat[0],c=e.lonlat[1],f=t._geo.project([u,c+1e-5]),h=t._geo.project([u+1e-5,c]),d=YS(h[1]-i,h[0]-n),v=YS(f[1]-i,f[0]-n),x;if(a==="north")x=r/180*Math.PI;else if(a==="previous"){var b=u/180*Math.PI,p=c/180*Math.PI,E=_oe/180*Math.PI,k=xoe/180*Math.PI,A=E-b,L=bb(k)*E3(A),_=E3(k)*bb(p)-bb(k)*E3(p)*bb(A);x=-YS(L,_)-Math.PI,_oe=u,xoe=c}var C=yoe(d,[bb(x),0]),M=yoe(v,[E3(x),0]);r=YS(C[1]+M[1],C[0]+M[0])/Math.PI*180,a==="previous"&&!(qO===t.uid&&e.i===FO+1)&&(r=null)}if(a==="previous"&&!t._geo)if(qO===t.uid&&e.i===FO+1&&Ab(n)&&Ab(i)){var g=n-boe,P=i-woe,T=t.line&&t.line.shape||"",F=T.slice(T.length-1);F==="h"&&(P=0),F==="v"&&(g=0),r+=YS(P,g)/Math.PI*180+90}else r=null}return boe=n,woe=i,FO=e.i,qO=t.uid,r}na.getMarkerAngle=UO});var Mb=ye((xrr,qoe)=>{"use strict";var k3=xa(),Lat=uo(),Pat=Xu(),VO=ba(),Sb=Mr(),Doe=Sb.strTranslate,iL=ao(),nL=va(),C3=Pl(),zoe=U1(),Iat=Nh().OPPOSITE_SIDE,Foe=/ [XY][0-9]* /,HO=1.6,GO=1.6;function Rat(e,t,r){var n=e._fullLayout,i=r.propContainer,a=r.propName,o=r.placeholder,s=r.traceIndex,l=r.avoid||{},u=r.attributes,c=r.transform,f=r.containerGroup,h=1,d=i.title,v=(d&&d.text?d.text:"").trim(),x=!1,b=d&&d.font?d.font:{},p=b.family,E=b.size,k=b.color,A=b.weight,L=b.style,_=b.variant,C=b.textcase,M=b.lineposition,g=b.shadow,P=r.subtitlePropName,T=!!P,F=r.subtitlePlaceholder,q=(i.title||{}).subtitle||{text:"",font:{}},V=q.text.trim(),H=!1,X=1,G=q.font,N=G.family,W=G.size,re=G.color,ae=G.weight,_e=G.style,Me=G.variant,ke=G.textcase,ge=G.lineposition,ie=G.shadow,Te;a==="title.text"?Te="titleText":a.indexOf("axis")!==-1?Te="axisTitleText":a.indexOf("colorbar"!==-1)&&(Te="colorbarTitleText");var Ee=e._context.edits[Te];function Ae(kt,Ct){return kt===void 0||Ct===void 0?!1:kt.replace(Foe," % ")===Ct.replace(Foe," % ")}v===""?h=0:Ae(v,o)&&(Ee||(v=""),h=.2,x=!0),T&&(V===""?X=0:Ae(V,F)&&(Ee||(V=""),X=.2,H=!0)),r._meta?v=Sb.templateString(v,r._meta):n._meta&&(v=Sb.templateString(v,n._meta));var ze=v||V||Ee,Ce;f||(f=Sb.ensureSingle(n._infolayer,"g","g-"+t),Ce=n._hColorbarMoveTitle);var me=f.selectAll("text."+t).data(ze?[0]:[]);me.enter().append("text"),me.text(v).attr("class",t),me.exit().remove();var Re=null,ce=t+"-subtitle",Ge=V||Ee;if(T&&Ge&&(Re=f.selectAll("text."+ce).data(Ge?[0]:[]),Re.enter().append("text"),Re.text(V).attr("class",ce),Re.exit().remove()),!ze)return f;function nt(kt,Ct){Sb.syncOrAsync([ct,qt],{title:kt,subtitle:Ct})}function ct(kt){var Ct=kt.title,Yt=kt.subtitle,xr;!c&&Ce&&(c={}),c?(xr="",c.rotate&&(xr+="rotate("+[c.rotate,u.x,u.y]+")"),(c.offset||Ce)&&(xr+=Doe(0,(c.offset||0)-(Ce||0)))):xr=null,Ct.attr("transform",xr);function er(Et){if(Et){var dt=k3.select(Et.node().parentNode).select("."+ce);if(!dt.empty()){var Ht=Et.node().getBBox();if(Ht.height){var $t=Ht.y+Ht.height+HO*W;dt.attr("y",$t)}}}}if(Ct.style("opacity",h*nL.opacity(k)).call(iL.font,{color:nL.rgb(k),size:k3.round(E,2),family:p,weight:A,style:L,variant:_,textcase:C,shadow:g,lineposition:M}).attr(u).call(C3.convertToTspans,e,er),Yt){var Ke=f.select("."+t+"-math-group"),xt=Ct.node().getBBox(),bt=Ke.node()?Ke.node().getBBox():void 0,Lt=bt?bt.y+bt.height+HO*W:xt.y+xt.height+GO*W,St=Sb.extendFlat({},u,{y:Lt});Yt.attr("transform",xr),Yt.style("opacity",X*nL.opacity(re)).call(iL.font,{color:nL.rgb(re),size:k3.round(W,2),family:N,weight:ae,style:_e,variant:Me,textcase:ke,shadow:ie,lineposition:ge}).attr(St).call(C3.convertToTspans,e)}return Pat.previousPromises(e)}function qt(kt){var Ct=kt.title,Yt=k3.select(Ct.node().parentNode);if(l&&l.selection&&l.side&&v){Yt.attr("transform",null);var xr=Iat[l.side],er=l.side==="left"||l.side==="top"?-1:1,Ke=Lat(l.pad)?l.pad:2,xt=iL.bBox(Yt.node()),bt={t:0,b:0,l:0,r:0},Lt=e._fullLayout._reservedMargin;for(var St in Lt)for(var Et in Lt[St]){var dt=Lt[St][Et];bt[Et]=Math.max(bt[Et],dt)}var Ht={left:bt.l,top:bt.t,right:n.width-bt.r,bottom:n.height-bt.b},$t=l.maxShift||er*(Ht[l.side]-xt[l.side]),fr=0;if($t<0)fr=$t;else{var _r=l.offsetLeft||0,Br=l.offsetTop||0;xt.left-=_r,xt.right-=_r,xt.top-=Br,xt.bottom-=Br,l.selection.each(function(){var Nr=iL.bBox(this);Sb.bBoxIntersect(xt,Nr,Ke)&&(fr=Math.max(fr,er*(Nr[l.side]-xt[xr])+Ke))}),fr=Math.min($t,fr),i._titleScoot=Math.abs(fr)}if(fr>0||$t<0){var Or={left:[-fr,0],right:[fr,0],top:[0,-fr],bottom:[0,fr]}[l.side];Yt.attr("transform",Doe(Or[0],Or[1]))}}}me.call(nt,Re);function rt(kt,Ct){kt.text(Ct).on("mouseover.opacity",function(){k3.select(this).transition().duration(zoe.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){k3.select(this).transition().duration(zoe.HIDE_PLACEHOLDER).style("opacity",0)})}if(Ee&&(v?me.on(".opacity",null):(rt(me,o),x=!0),me.call(C3.makeEditable,{gd:e}).on("edit",function(kt){s!==void 0?VO.call("_guiRestyle",e,a,kt,s):VO.call("_guiRelayout",e,a,kt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(nt)}).on("input",function(kt){this.text(kt||" ").call(C3.positionText,u.x,u.y)}),T)){if(T&&!v){var ot=me.node().getBBox(),Rt=ot.y+ot.height+GO*W;Re.attr("y",Rt)}V?Re.on(".opacity",null):(rt(Re,F),H=!0),Re.call(C3.makeEditable,{gd:e}).on("edit",function(kt){VO.call("_guiRelayout",e,"title.subtitle.text",kt)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(nt)}).on("input",function(kt){this.text(kt||" ").call(C3.positionText,Re.attr("x"),Re.attr("y"))})}return me.classed("js-placeholder",x),Re&&Re.classed("js-placeholder",H),f}qoe.exports={draw:Rat,SUBTITLE_PADDING_EM:GO,SUBTITLE_PADDING_MATHJAX_EM:HO}});var ym=ye((brr,Voe)=>{"use strict";var Dat=xa(),zat=e3().utcFormat,Nu=Mr(),Fat=Nu.numberFormat,gm=uo(),a_=Nu.cleanNumber,qat=Nu.ms2DateTime,Ooe=Nu.dateTime2ms,mm=Nu.ensureNumber,Boe=Nu.isArrayOrTypedArray,o_=es(),aL=o_.FP_SAFE,bg=o_.BADNUM,Oat=o_.LOG_CLIP,Bat=o_.ONEWEEK,oL=o_.ONEDAY,sL=o_.ONEHOUR,Noe=o_.ONEMIN,Uoe=o_.ONESEC,lL=af(),fL=ad(),uL=fL.HOUR_PATTERN,cL=fL.WEEKDAY_PATTERN;function JS(e){return Math.pow(10,e)}function jO(e){return e!=null}Voe.exports=function(t,r){r=r||{};var n=t._id||"x",i=n.charAt(0);function a(A,L){if(A>0)return Math.log(A)/Math.LN10;if(A<=0&&L&&t.range&&t.range.length===2){var _=t.range[0],C=t.range[1];return .5*(_+C-2*Oat*Math.abs(_-C))}else return bg}function o(A,L,_,C){if((C||{}).msUTC&&gm(A))return+A;var M=Ooe(A,_||t.calendar);if(M===bg)if(gm(A)){A=+A;var g=Math.floor(Nu.mod(A+.05,1)*10),P=Math.round(A-g/10);M=Ooe(new Date(P))+g/10}else return bg;return M}function s(A,L,_){return qat(A,L,_||t.calendar)}function l(A){return t._categories[Math.round(A)]}function u(A){if(jO(A)){if(t._categoriesMap===void 0&&(t._categoriesMap={}),t._categoriesMap[A]!==void 0)return t._categoriesMap[A];t._categories.push(typeof A=="number"?String(A):A);var L=t._categories.length-1;return t._categoriesMap[A]=L,L}return bg}function c(A,L){for(var _=new Array(L),C=0;C<L;C++){var M=(A[0]||[])[C],g=(A[1]||[])[C];_[C]=f([M,g])}return _}function f(A){if(t._categoriesMap)return t._categoriesMap[A]}function h(A){var L=f(A);if(L!==void 0)return L;if(gm(A))return+A}function d(A){return gm(A)?+A:f(A)}function v(A,L,_){return Dat.round(_+L*A,2)}function x(A,L,_){return(A-_)/L}var b=function(L){return gm(L)?v(L,t._m,t._b):bg},p=function(A){return x(A,t._m,t._b)};if(t.rangebreaks){var E=i==="y";b=function(A){if(!gm(A))return bg;var L=t._rangebreaks.length;if(!L)return v(A,t._m,t._b);var _=E;t.range[0]>t.range[1]&&(_=!_);for(var C=_?-1:1,M=C*A,g=0,P=0;P<L;P++){var T=C*t._rangebreaks[P].min,F=C*t._rangebreaks[P].max;if(M<T)break;if(M>F)g=P+1;else{g=M<(T+F)/2?P:P+1;break}}var q=t._B[g]||0;return isFinite(q)?v(A,t._m2,q):0},p=function(A){var L=t._rangebreaks.length;if(!L)return x(A,t._m,t._b);for(var _=0,C=0;C<L&&!(A<t._rangebreaks[C].pmin);C++)A>t._rangebreaks[C].pmax&&(_=C+1);return x(A,t._m2,t._B[_])}}t.c2l=t.type==="log"?a:mm,t.l2c=t.type==="log"?JS:mm,t.l2p=b,t.p2l=p,t.c2p=t.type==="log"?function(A,L){return b(a(A,L))}:b,t.p2c=t.type==="log"?function(A){return JS(p(A))}:p,["linear","-"].indexOf(t.type)!==-1?(t.d2r=t.r2d=t.d2c=t.r2c=t.d2l=t.r2l=a_,t.c2d=t.c2r=t.l2d=t.l2r=mm,t.d2p=t.r2p=function(A){return t.l2p(a_(A))},t.p2d=t.p2r=p,t.cleanPos=mm):t.type==="log"?(t.d2r=t.d2l=function(A,L){return a(a_(A),L)},t.r2d=t.r2c=function(A){return JS(a_(A))},t.d2c=t.r2l=a_,t.c2d=t.l2r=mm,t.c2r=a,t.l2d=JS,t.d2p=function(A,L){return t.l2p(t.d2r(A,L))},t.p2d=function(A){return JS(p(A))},t.r2p=function(A){return t.l2p(a_(A))},t.p2r=p,t.cleanPos=mm):t.type==="date"?(t.d2r=t.r2d=Nu.identity,t.d2c=t.r2c=t.d2l=t.r2l=o,t.c2d=t.c2r=t.l2d=t.l2r=s,t.d2p=t.r2p=function(A,L,_){return t.l2p(o(A,0,_))},t.p2d=t.p2r=function(A,L,_){return s(p(A),L,_)},t.cleanPos=function(A){return Nu.cleanDate(A,bg,t.calendar)}):t.type==="category"?(t.d2c=t.d2l=u,t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(A){var L=d(A);return L!==void 0?L:t.fraction2r(.5)},t.l2r=t.c2r=mm,t.r2l=d,t.d2p=function(A){return t.l2p(t.r2c(A))},t.p2d=function(A){return l(p(A))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(A){return typeof A=="string"&&A!==""?A:mm(A)}):t.type==="multicategory"&&(t.r2d=t.c2d=t.l2d=l,t.d2r=t.d2l_noadd=h,t.r2c=function(A){var L=h(A);return L!==void 0?L:t.fraction2r(.5)},t.r2c_just_indices=f,t.l2r=t.c2r=mm,t.r2l=h,t.d2p=function(A){return t.l2p(t.r2c(A))},t.p2d=function(A){return l(p(A))},t.r2p=t.d2p,t.p2r=p,t.cleanPos=function(A){return Array.isArray(A)||typeof A=="string"&&A!==""?A:mm(A)},t.setupMultiCategory=function(A){var L=t._traceIndices,_,C,M=t._matchGroup;if(M&&t._categories.length===0){for(var g in M)if(g!==n){var P=r[lL.id2name(g)];L=L.concat(P._traceIndices)}}var T=[[0,{}],[0,{}]],F=[];for(_=0;_<L.length;_++){var q=A[L[_]];if(i in q){var V=q[i],H=q._length||Nu.minRowLength(V);if(Boe(V[0])&&Boe(V[1]))for(C=0;C<H;C++){var X=V[0][C],G=V[1][C];jO(X)&&jO(G)&&(F.push([X,G]),X in T[0][1]||(T[0][1][X]=T[0][0]++),G in T[1][1]||(T[1][1][G]=T[1][0]++))}}}for(F.sort(function(N,W){var re=T[0][1],ae=re[N[0]]-re[W[0]];if(ae)return ae;var _e=T[1][1];return _e[N[1]]-_e[W[1]]}),_=0;_<F.length;_++)u(F[_])}),t.fraction2r=function(A){var L=t.r2l(t.range[0]),_=t.r2l(t.range[1]);return t.l2r(L+A*(_-L))},t.r2fraction=function(A){var L=t.r2l(t.range[0]),_=t.r2l(t.range[1]);return(t.r2l(A)-L)/(_-L)},t.limitRange=function(A){var L=t.minallowed,_=t.maxallowed;if(!(L===void 0&&_===void 0)){A||(A="range");var C=Nu.nestedProperty(t,A).get(),M=Nu.simpleMap(C,t.r2l),g=M[1]<M[0];g&&M.reverse();var P=Nu.simpleMap([L,_],t.r2l);if(L!==void 0&&M[0]<P[0]&&(C[g?1:0]=L),_!==void 0&&M[1]>P[1]&&(C[g?0:1]=_),C[0]===C[1]){var T=t.l2r(L),F=t.l2r(_);if(L!==void 0){var q=T+1;_!==void 0&&(q=Math.min(q,F)),C[g?1:0]=q}if(_!==void 0){var V=F+1;L!==void 0&&(V=Math.max(V,T)),C[g?0:1]=V}}}},t.cleanRange=function(A,L){t._cleanRange(A,L),t.limitRange(A)},t._cleanRange=function(A,L){L||(L={}),A||(A="range");var _=Nu.nestedProperty(t,A).get(),C,M;if(t.type==="date"?M=Nu.dfltRange(t.calendar):i==="y"?M=fL.DFLTRANGEY:t._name==="realaxis"?M=[0,1]:M=L.dfltRange||fL.DFLTRANGEX,M=M.slice(),(t.rangemode==="tozero"||t.rangemode==="nonnegative")&&(M[0]=0),!_||_.length!==2){Nu.nestedProperty(t,A).set(M);return}var g=_[0]===null,P=_[1]===null;for(t.type==="date"&&!t.autorange&&(_[0]=Nu.cleanDate(_[0],bg,t.calendar),_[1]=Nu.cleanDate(_[1],bg,t.calendar)),C=0;C<2;C++)if(t.type==="date"){if(!Nu.isDateTime(_[C],t.calendar)){t[A]=M;break}if(t.r2l(_[0])===t.r2l(_[1])){var T=Nu.constrain(t.r2l(_[0]),Nu.MIN_MS+1e3,Nu.MAX_MS-1e3);_[0]=t.l2r(T-1e3),_[1]=t.l2r(T+1e3);break}}else{if(!gm(_[C]))if(!(g||P)&&gm(_[1-C]))_[C]=_[1-C]*(C?10:.1);else{t[A]=M;break}if(_[C]<-aL?_[C]=-aL:_[C]>aL&&(_[C]=aL),_[0]===_[1]){var F=Math.max(1,Math.abs(_[0]*1e-6));_[0]-=F,_[1]+=F}}},t.setScale=function(A){var L=r._size;if(t.overlaying){var _=lL.getFromId({_fullLayout:r},t.overlaying);t.domain=_.domain}var C=A&&t._r?"_r":"range",M=t.calendar;t.cleanRange(C);var g=t.r2l(t[C][0],M),P=t.r2l(t[C][1],M),T=i==="y";if(T?(t._offset=L.t+(1-t.domain[1])*L.h,t._length=L.h*(t.domain[1]-t.domain[0]),t._m=t._length/(g-P),t._b=-t._m*P):(t._offset=L.l+t.domain[0]*L.w,t._length=L.w*(t.domain[1]-t.domain[0]),t._m=t._length/(P-g),t._b=-t._m*g),t._rangebreaks=[],t._lBreaks=0,t._m2=0,t._B=[],t.rangebreaks){var F,q;if(t._rangebreaks=t.locateBreaks(Math.min(g,P),Math.max(g,P)),t._rangebreaks.length){for(F=0;F<t._rangebreaks.length;F++)q=t._rangebreaks[F],t._lBreaks+=Math.abs(q.max-q.min);var V=T;g>P&&(V=!V),V&&t._rangebreaks.reverse();var H=V?-1:1;for(t._m2=H*t._length/(Math.abs(P-g)-t._lBreaks),t._B.push(-t._m2*(T?P:g)),F=0;F<t._rangebreaks.length;F++)q=t._rangebreaks[F],t._B.push(t._B[t._B.length-1]-H*t._m2*(q.max-q.min));for(F=0;F<t._rangebreaks.length;F++)q=t._rangebreaks[F],q.pmin=b(q.min),q.pmax=b(q.max)}}if(!isFinite(t._m)||!isFinite(t._b)||t._length<0)throw r._replotting=!1,new Error("Something went wrong with axis scaling")},t.maskBreaks=function(A){var L=t.rangebreaks||[],_,C,M,g,P;L._cachedPatterns||(L._cachedPatterns=L.map(function(re){return re.enabled&&re.bounds?Nu.simpleMap(re.bounds,re.pattern?a_:t.d2c):null})),L._cachedValues||(L._cachedValues=L.map(function(re){return re.enabled&&re.values?Nu.simpleMap(re.values,t.d2c).sort(Nu.sorterAsc):null}));for(var T=0;T<L.length;T++){var F=L[T];if(F.enabled){if(F.bounds){var q=F.pattern;switch(_=L._cachedPatterns[T],C=_[0],M=_[1],q){case cL:P=new Date(A),g=P.getUTCDay(),C>M&&(M+=7,g<C&&(g+=7));break;case uL:P=new Date(A);var V=P.getUTCHours(),H=P.getUTCMinutes(),X=P.getUTCSeconds(),G=P.getUTCMilliseconds();g=V+(H/60+X/3600+G/36e5),C>M&&(M+=24,g<C&&(g+=24));break;case"":g=A;break}if(g>=C&&g<M)return bg}else for(var N=L._cachedValues[T],W=0;W<N.length;W++)if(C=N[W],M=C+F.dvalue,A>=C&&A<M)return bg}}return A},t.locateBreaks=function(A,L){var _,C,M,g,P=[];if(!t.rangebreaks)return P;var T=t.rangebreaks.slice().sort(function(_e,Me){return _e.pattern===cL&&Me.pattern===uL?-1:Me.pattern===cL&&_e.pattern===uL?1:0}),F=function(_e,Me){if(_e=Nu.constrain(_e,A,L),Me=Nu.constrain(Me,A,L),_e!==Me){for(var ke=!0,ge=0;ge<P.length;ge++){var ie=P[ge];_e<ie.max&&Me>=ie.min&&(_e<ie.min&&(ie.min=_e),Me>ie.max&&(ie.max=Me),ke=!1)}ke&&P.push({min:_e,max:Me})}};for(_=0;_<T.length;_++){var q=T[_];if(q.enabled)if(q.bounds){var V=A,H=L;q.pattern&&(V=Math.floor(V)),C=Nu.simpleMap(q.bounds,q.pattern?a_:t.r2l),M=C[0],g=C[1];var X=new Date(V),G,N;switch(q.pattern){case cL:N=Bat,G=((g<M?7:0)+(g-M))*oL,V+=M*oL-(X.getUTCDay()*oL+X.getUTCHours()*sL+X.getUTCMinutes()*Noe+X.getUTCSeconds()*Uoe+X.getUTCMilliseconds());break;case uL:N=oL,G=((g<M?24:0)+(g-M))*sL,V+=M*sL-(X.getUTCHours()*sL+X.getUTCMinutes()*Noe+X.getUTCSeconds()*Uoe+X.getUTCMilliseconds());break;default:V=Math.min(C[0],C[1]),H=Math.max(C[0],C[1]),N=H-V,G=N}for(var W=V;W<H;W+=N)F(W,W+G)}else for(var re=Nu.simpleMap(q.values,t.d2c),ae=0;ae<re.length;ae++)M=re[ae],g=M+q.dvalue,F(M,g)}return P.sort(function(_e,Me){return _e.min-Me.min}),P},t.makeCalcdata=function(A,L,_){var C,M,g,P,T=t.type,F=T==="date"&&A[L+"calendar"];if(L in A){if(C=A[L],P=A._length||Nu.minRowLength(C),Nu.isTypedArray(C)&&(T==="linear"||T==="log")){if(P===C.length)return C;if(C.subarray)return C.subarray(0,P)}if(T==="multicategory")return c(C,P);for(M=new Array(P),g=0;g<P;g++)M[g]=t.d2c(C[g],0,F,_)}else{var q=L+"0"in A?t.d2c(A[L+"0"],0,F):0,V=A["d"+L]?Number(A["d"+L]):1;for(C=A[{x:"y",y:"x"}[L]],P=A._length||C.length,M=new Array(P),g=0;g<P;g++)M[g]=q+g*V}if(t.rangebreaks)for(g=0;g<P;g++)M[g]=t.maskBreaks(M[g]);return M},t.isValidRange=function(A,L){return Array.isArray(A)&&A.length===2&&(L&&A[0]===null||gm(t.r2l(A[0])))&&(L&&A[1]===null||gm(t.r2l(A[1])))},t.getAutorangeDflt=function(A,L){var _=!t.isValidRange(A,"nullOk");return _&&L&&L.reverseDflt?_="reversed":A&&(A[0]===null&&A[1]===null?_=!0:A[0]===null&&A[1]!==null?_="min":A[0]!==null&&A[1]===null&&(_="max")),_},t.isReversed=function(){var A=t.autorange;return A==="reversed"||A==="min reversed"||A==="max reversed"},t.isPtWithinRange=function(A,L){var _=t.c2l(A[i],null,L),C=t.r2l(t.range[0]),M=t.r2l(t.range[1]);return C<M?C<=_&&_<=M:M<=_&&_<=C},t._emptyCategories=function(){t._categories=[],t._categoriesMap={}},t.clearCalc=function(){var A=t._matchGroup;if(A){var L=null,_=null;for(var C in A){var M=r[lL.id2name(C)];if(M._categories){L=M._categories,_=M._categoriesMap;break}}L&&_?(t._categories=L,t._categoriesMap=_):t._emptyCategories()}else t._emptyCategories();if(t._initialCategories)for(var g=0;g<t._initialCategories.length;g++)u(t._initialCategories[g])},t.sortByInitialCategories=function(){var A=[];if(t._emptyCategories(),t._initialCategories)for(var L=0;L<t._initialCategories.length;L++)u(t._initialCategories[L]);A=A.concat(t._traceIndices);var _=t._matchGroup;for(var C in _)if(n!==C){var M=r[lL.id2name(C)];M._categories=t._categories,M._categoriesMap=t._categoriesMap,A=A.concat(M._traceIndices)}return A};var k=r._d3locale;t.type==="date"&&(t._dateFormat=k?k.timeFormat:zat,t._extraFormat=r._extraFormat),t._separators=r.separators,t._numFormat=k?k.numberFormat:Fat,delete t._minDtick,delete t._forceTick0}});var L3=ye((wrr,Woe)=>{"use strict";var Hoe=uo(),WO=Mr(),Nat=es().BADNUM,hL=WO.isArrayOrTypedArray,Uat=WO.isDateTime,Vat=WO.cleanNumber,Goe=Math.round;Woe.exports=function(t,r,n){var i=t,a=n.noMultiCategory;if(hL(i)&&!i.length)return"-";if(!a&&Zat(i))return"multicategory";if(a&&Array.isArray(i[0])){for(var o=[],s=0;s<i.length;s++)if(hL(i[s]))for(var l=0;l<i[s].length;l++)o.push(i[s][l]);i=o}if(jat(i,r))return"date";var u=n.autotypenumbers!=="strict";return Wat(i,u)?"category":Gat(i,u)?"linear":"-"};function Hat(e,t){return t?Hoe(e):typeof e=="number"}function Gat(e,t){for(var r=e.length,n=0;n<r;n++)if(Hat(e[n],t))return!0;return!1}function jat(e,t){for(var r=e.length,n=joe(r),i=0,a=0,o={},s=0;s<r;s+=n){var l=Goe(s),u=e[l],c=String(u);o[c]||(o[c]=1,Uat(u,t)&&i++,Hoe(u)&&a++)}return i>a*2}function joe(e){return Math.max(1,(e-1)/1e3)}function Wat(e,t){for(var r=e.length,n=joe(r),i=0,a=0,o={},s=0;s<r;s+=n){var l=Goe(s),u=e[l],c=String(u);if(!o[c]){o[c]=1;var f=typeof u;f==="boolean"?a++:(t?Vat(u)!==Nat:f==="number")?i++:f==="string"&&a++}}return a>i*2}function Zat(e){return hL(e[0])&&hL(e[1])}});var wg=ye((Trr,ese)=>{"use strict";var Xat=xa(),Koe=uo(),s_=Mr(),dL=es().FP_SAFE,Yat=ba(),Kat=ao(),Joe=af(),Jat=Joe.getFromId,$at=Joe.isLinked;ese.exports={applyAutorangeOptions:Qoe,getAutoRange:ZO,makePadFn:XO,doAutoRange:eot,findExtremes:tot,concatExtremes:JO};function ZO(e,t){var r,n,i=[],a=e._fullLayout,o=XO(a,t,0),s=XO(a,t,1),l=JO(e,t),u=l.min,c=l.max;if(u.length===0||c.length===0)return s_.simpleMap(t.range,t.r2l);var f=u[0].val,h=c[0].val;for(r=1;r<u.length&&f===h;r++)f=Math.min(f,u[r].val);for(r=1;r<c.length&&f===h;r++)h=Math.max(h,c[r].val);var d=t.autorange,v=d==="reversed"||d==="min reversed"||d==="max reversed";if(!v&&t.range){var x=s_.simpleMap(t.range,t.r2l);v=x[1]<x[0]}t.autorange==="reversed"&&(t.autorange=!0);var b=t.rangemode,p=b==="tozero",E=b==="nonnegative",k=t._length,A=k/10,L=0,_,C,M,g,P,T;for(r=0;r<u.length;r++)for(_=u[r],n=0;n<c.length;n++)C=c[n],T=C.val-_.val-Zoe(t,_.val,C.val),T>0&&(P=k-o(_)-s(C),P>A?T/P>L&&(M=_,g=C,L=T/P):T/k>L&&(M={val:_.val,nopad:1},g={val:C.val,nopad:1},L=T/k));function F(G,N){return Math.max(G,s(N))}if(f===h){var q=f-1,V=f+1;if(p)if(f===0)i=[0,1];else{var H=(f>0?c:u).reduce(F,0),X=f/(1-Math.min(.5,H/k));i=f>0?[0,X]:[X,0]}else E?i=[Math.max(0,q),Math.max(1,V)]:i=[q,V]}else p?(M.val>=0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:0,nopad:1})):E&&(M.val-L*o(M)<0&&(M={val:0,nopad:1}),g.val<=0&&(g={val:1,nopad:1})),L=(g.val-M.val-Zoe(t,_.val,C.val))/(k-o(M)-s(g)),i=[M.val-L*o(M),g.val+L*s(g)];return i=Qoe(i,t),t.limitRange&&t.limitRange(),v&&i.reverse(),s_.simpleMap(i,t.l2r||Number)}function Zoe(e,t,r){var n=0;if(e.rangebreaks)for(var i=e.locateBreaks(t,r),a=0;a<i.length;a++){var o=i[a];n+=o.max-o.min}return n}function XO(e,t,r){var n=.05*t._length,i=t._anchorAxis||{};if((t.ticklabelposition||"").indexOf("inside")!==-1||(i.ticklabelposition||"").indexOf("inside")!==-1){var a=t.isReversed();if(!a){var o=s_.simpleMap(t.range,t.r2l);a=o[1]<o[0]}a&&(r=!r)}var s=0;return $at(e,t._id)||(s=Qat(e,t,r)),n=Math.max(s,n),t.constrain==="domain"&&t._inputDomain&&(n*=(t._inputDomain[1]-t._inputDomain[0])/(t.domain[1]-t.domain[0])),function(u){return u.nopad?0:u.pad+(u.extrapad?n:s)}}var Xoe=3;function Qat(e,t,r){var n=0,i=t._id.charAt(0)==="x";for(var a in e._plots){var o=e._plots[a];if(!(t._id!==o.xaxis._id&&t._id!==o.yaxis._id)){var s=(i?o.yaxis:o.xaxis)||{};if((s.ticklabelposition||"").indexOf("inside")!==-1&&(!r&&(s.side==="left"||s.side==="bottom")||r&&(s.side==="top"||s.side==="right"))){if(s._vals){var l=s_.deg2rad(s._tickAngles[s._id+"tick"]||0),u=Math.abs(Math.cos(l)),c=Math.abs(Math.sin(l));if(!s._vals[0].bb){var f=s._id+"tick",h=s._selections[f];h.each(function(E){var k=Xat.select(this),A=k.select(".text-math-group");A.empty()&&(E.bb=Kat.bBox(k.node()))})}for(var d=0;d<s._vals.length;d++){var v=s._vals[d],x=v.bb;if(x){var b=2*Xoe+x.width,p=2*Xoe+x.height;n=Math.max(n,i?Math.max(b*u,p*c):Math.max(p*u,b*c))}}}s.ticks==="inside"&&s.ticklabelposition==="inside"&&(n+=s.ticklen||0)}}}return n}function JO(e,t,r){var n=t._id,i=e._fullData,a=e._fullLayout,o=[],s=[],l,u,c;function f(b,p){for(l=0;l<p.length;l++){var E=b[p[l]],k=(E._extremes||{})[n];if(E.visible===!0&&k){for(u=0;u<k.min.length;u++)c=k.min[u],YO(o,c.val,c.pad,{extrapad:c.extrapad});for(u=0;u<k.max.length;u++)c=k.max[u],KO(s,c.val,c.pad,{extrapad:c.extrapad})}}}if(f(i,t._traceIndices),f(a.annotations||[],t._annIndices||[]),f(a.shapes||[],t._shapeIndices||[]),t._matchGroup&&!r){for(var h in t._matchGroup)if(h!==t._id){var d=Jat(e,h),v=JO(e,d,!0),x=t._length/d._length;for(u=0;u<v.min.length;u++)c=v.min[u],YO(o,c.val,c.pad*x,{extrapad:c.extrapad});for(u=0;u<v.max.length;u++)c=v.max[u],KO(s,c.val,c.pad*x,{extrapad:c.extrapad})}}return{min:o,max:s}}function eot(e,t,r){if(t.setScale(),t.autorange){t.range=r?r.slice():ZO(e,t),t._r=t.range.slice(),t._rl=s_.simpleMap(t._r,t.r2l);var n=t._input,i={};i[t._attr+".range"]=t.range,i[t._attr+".autorange"]=t.autorange,Yat.call("_storeDirectGUIEdit",e.layout,e._fullLayout._preGUI,i),n.range=t.range.slice(),n.autorange=t.autorange}var a=t._anchorAxis;if(a&&a.rangeslider){var o=a.rangeslider[t._name];o&&o.rangemode==="auto"&&(o.range=ZO(e,t)),a._input.rangeslider[t._name]=s_.extendFlat({},o)}}function tot(e,t,r){r||(r={}),e._m||e.setScale();var n=[],i=[],a=t.length,o=r.padded||!1,s=r.tozero&&(e.type==="linear"||e.type==="-"),l=e.type==="log",u=!1,c=r.vpadLinearized||!1,f,h,d,v,x,b,p,E,k;function A(F){if(Array.isArray(F))return u=!0,function(V){return Math.max(Number(F[V]||0),0)};var q=Math.max(Number(F||0),0);return function(){return q}}var L=A((e._m>0?r.ppadplus:r.ppadminus)||r.ppad||0),_=A((e._m>0?r.ppadminus:r.ppadplus)||r.ppad||0),C=A(r.vpadplus||r.vpad),M=A(r.vpadminus||r.vpad);if(!u){if(E=1/0,k=-1/0,l)for(f=0;f<a;f++)h=t[f],h<E&&h>0&&(E=h),h>k&&h<dL&&(k=h);else for(f=0;f<a;f++)h=t[f],h<E&&h>-dL&&(E=h),h>k&&h<dL&&(k=h);t=[E,k],a=2}var g={tozero:s,extrapad:o};function P(F){d=t[F],Koe(d)&&(b=L(F),p=_(F),c?(v=e.c2l(d)-M(F),x=e.c2l(d)+C(F)):(E=d-M(F),k=d+C(F),l&&E<k/10&&(E=k/10),v=e.c2l(E),x=e.c2l(k)),s&&(v=Math.min(0,v),x=Math.max(0,x)),Yoe(v)&&YO(n,v,p,g),Yoe(x)&&KO(i,x,b,g))}var T=Math.min(6,a);for(f=0;f<T;f++)P(f);for(f=a-1;f>=T;f--)P(f);return{min:n,max:i,opts:r}}function YO(e,t,r,n){$oe(e,t,r,n,rot)}function KO(e,t,r,n){$oe(e,t,r,n,iot)}function $oe(e,t,r,n,i){for(var a=n.tozero,o=n.extrapad,s=!0,l=0;l<e.length&&s;l++){var u=e[l];if(i(u.val,t)&&u.pad>=r&&(u.extrapad||!o)){s=!1;break}else i(t,u.val)&&u.pad<=r&&(o||!u.extrapad)&&(e.splice(l,1),l--)}if(s){var c=a&&t===0;e.push({val:t,pad:c?0:r,extrapad:c?!1:o})}}function Yoe(e){return Koe(e)&&Math.abs(e)<dL}function rot(e,t){return e<=t}function iot(e,t){return e>=t}function not(e,t){var r=t.autorangeoptions;return r&&r.minallowed!==void 0&&vL(t,r.minallowed,r.maxallowed)?r.minallowed:r&&r.clipmin!==void 0&&vL(t,r.clipmin,r.clipmax)?Math.max(e,t.d2l(r.clipmin)):e}function aot(e,t){var r=t.autorangeoptions;return r&&r.maxallowed!==void 0&&vL(t,r.minallowed,r.maxallowed)?r.maxallowed:r&&r.clipmax!==void 0&&vL(t,r.clipmin,r.clipmax)?Math.min(e,t.d2l(r.clipmax)):e}function vL(e,t,r){return t!==void 0&&r!==void 0?(t=e.d2l(t),r=e.d2l(r),t<r):!0}function Qoe(e,t){if(!t||!t.autorangeoptions)return e;var r=e[0],n=e[1],i=t.autorangeoptions.include;if(i!==void 0){var a=t.d2l(r),o=t.d2l(n);s_.isArrayOrTypedArray(i)||(i=[i]);for(var s=0;s<i.length;s++){var l=t.d2l(i[s]);a>=l&&(a=l,r=l),o<=l&&(o=l,n=l)}}return r=not(r,t),n=aot(n,t),[r,n]}});var Qa=ye((Arr,wse)=>{"use strict";var w0=xa(),ph=uo(),P3=Xu(),QS=ba(),Vo=Mr(),I3=Vo.strTranslate,Eb=Pl(),oot=Mb(),eM=va(),Xp=ao(),sot=Cd(),tse=bO(),Yd=es(),lot=Yd.ONEMAXYEAR,mL=Yd.ONEAVGYEAR,yL=Yd.ONEMINYEAR,uot=Yd.ONEMAXQUARTER,tB=Yd.ONEAVGQUARTER,_L=Yd.ONEMINQUARTER,cot=Yd.ONEMAXMONTH,R3=Yd.ONEAVGMONTH,xL=Yd.ONEMINMONTH,Yp=Yd.ONEWEEK,Fv=Yd.ONEDAY,l_=Fv/2,xm=Yd.ONEHOUR,tM=Yd.ONEMIN,bL=Yd.ONESEC,fot=Yd.ONEMILLI,hot=Yd.ONEMICROSEC,kb=Yd.MINUS_SIGN,AL=Yd.BADNUM,rB={K:"zeroline"},iB={K:"gridline",L:"path"},nB={K:"minor-gridline",L:"path"},hse={K:"tick",L:"path"},rse={K:"tick",L:"text"},ise={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},SL=Nh(),$S=SL.MID_SHIFT,Cb=SL.CAP_SHIFT,rM=SL.LINE_SPACING,dot=SL.OPPOSITE_SIDE,wL=3,kn=wse.exports={};kn.setConvert=ym();var vot=L3(),Ay=af(),pot=Ay.idSort,got=Ay.isLinked;kn.id2name=Ay.id2name;kn.name2id=Ay.name2id;kn.cleanId=Ay.cleanId;kn.list=Ay.list;kn.listIds=Ay.listIds;kn.getFromId=Ay.getFromId;kn.getFromTrace=Ay.getFromTrace;var dse=wg();kn.getAutoRange=dse.getAutoRange;kn.findExtremes=dse.findExtremes;var mot=1e-4;function lB(e){var t=(e[1]-e[0])*mot;return[e[0]-t,e[1]+t]}kn.coerceRef=function(e,t,r,n,i,a){var o=n.charAt(n.length-1),s=r._fullLayout._subplots[o+"axis"],l=n+"ref",u={};return i||(i=s[0]||(typeof a=="string"?a:a[0])),a||(a=i),s=s.concat(s.map(function(c){return c+" domain"})),u[l]={valType:"enumerated",values:s.concat(a?typeof a=="string"?[a]:a:[]),dflt:i},Vo.coerce(e,t,u,l)};kn.getRefType=function(e){return e===void 0?e:e==="paper"?"paper":e==="pixel"?"pixel":/( domain)$/.test(e)?"domain":"range"};kn.coercePosition=function(e,t,r,n,i,a){var o,s,l=kn.getRefType(n);if(l!=="range")o=Vo.ensureNumber,s=r(i,a);else{var u=kn.getFromId(t,n);a=u.fraction2r(a),s=r(i,a),o=u.cleanPos}e[i]=o(s)};kn.cleanPosition=function(e,t,r){var n=r==="paper"||r==="pixel"?Vo.ensureNumber:kn.getFromId(t,r).cleanPos;return n(e)};kn.redrawComponents=function(e,t){t=t||kn.listIds(e);var r=e._fullLayout;function n(i,a,o,s){for(var l=QS.getComponentMethod(i,a),u={},c=0;c<t.length;c++)for(var f=r[kn.id2name(t[c])],h=f[o],d=0;d<h.length;d++){var v=h[d];if(!u[v]&&(l(e,v),u[v]=1,s))return}}n("annotations","drawOne","_annIndices"),n("shapes","drawOne","_shapeIndices"),n("images","draw","_imgIndices",!0),n("selections","drawOne","_selectionIndices")};var yot=kn.getDataConversions=function(e,t,r,n){var i,a=r==="x"||r==="y"||r==="z"?r:n;if(Vo.isArrayOrTypedArray(a)){if(i={type:vot(n,void 0,{autotypenumbers:e._fullLayout.autotypenumbers}),_categories:[]},kn.setConvert(i),i.type==="category")for(var o=0;o<n.length;o++)i.d2c(n[o])}else i=kn.getFromTrace(e,t,a);return i?{d2c:i.d2c,c2d:i.c2d}:a==="ids"?{d2c:ase,c2d:ase}:{d2c:nse,c2d:nse}};function nse(e){return+e}function ase(e){return String(e)}kn.getDataToCoordFunc=function(e,t,r,n){return yot(e,t,r,n).d2c};kn.counterLetter=function(e){var t=e.charAt(0);if(t==="x")return"y";if(t==="y")return"x"};kn.minDtick=function(e,t,r,n){["log","category","multicategory"].indexOf(e.type)!==-1||!n?e._minDtick=0:e._minDtick===void 0?(e._minDtick=t,e._forceTick0=r):e._minDtick&&((e._minDtick/t+1e-6)%1<2e-6&&((r-e._forceTick0)/t%1+1.000001)%1<2e-6?(e._minDtick=t,e._forceTick0=r):((t/e._minDtick+1e-6)%1>2e-6||((r-e._forceTick0)/e._minDtick%1+1.000001)%1>2e-6)&&(e._minDtick=0))};kn.saveRangeInitial=function(e,t){for(var r=kn.list(e,"",!0),n=!1,i=0;i<r.length;i++){var a=r[i],o=a._rangeInitial0===void 0&&a._rangeInitial1===void 0,s=o||a.range[0]!==a._rangeInitial0||a.range[1]!==a._rangeInitial1,l=a.autorange;(o&&l!==!0||t&&s)&&(a._rangeInitial0=l==="min"||l==="max reversed"?void 0:a.range[0],a._rangeInitial1=l==="max"||l==="min reversed"?void 0:a.range[1],a._autorangeInitial=l,n=!0)}return n};kn.saveShowSpikeInitial=function(e,t){for(var r=kn.list(e,"",!0),n=!1,i="on",a=0;a<r.length;a++){var o=r[a],s=o._showSpikeInitial===void 0,l=s||o.showspikes!==o._showspikes;(s||t&&l)&&(o._showSpikeInitial=o.showspikes,n=!0),i==="on"&&!o.showspikes&&(i="off")}return e._fullLayout._cartesianSpikesEnabled=i,n};kn.autoBin=function(e,t,r,n,i,a){var o=Vo.aggNums(Math.min,null,e),s=Vo.aggNums(Math.max,null,e);if(t.type==="category"||t.type==="multicategory")return{start:o-.5,end:s+.5,size:Math.max(1,Math.round(a)||1),_dataSpan:s-o};i||(i=t.calendar);var l;if(t.type==="log"?l={type:"linear",range:[o,s]}:l={type:t.type,range:Vo.simpleMap([o,s],t.c2r,0,i),calendar:i},kn.setConvert(l),a=a&&tse.dtick(a,l.type),a)l.dtick=a,l.tick0=tse.tick0(void 0,l.type,i);else{var u;if(r)u=(s-o)/r;else{var c=Vo.distinctVals(e),f=Math.pow(10,Math.floor(Math.log(c.minDiff)/Math.LN10)),h=f*Vo.roundUp(c.minDiff/f,[.9,1.9,4.9,9.9],!0);u=Math.max(h,2*Vo.stdev(e)/Math.pow(e.length,n?.25:.4)),ph(u)||(u=1)}kn.autoTicks(l,u)}var d=l.dtick,v=kn.tickIncrement(kn.tickFirst(l),d,"reverse",i),x,b;if(typeof d=="number")v=_ot(v,e,l,o,s),b=1+Math.floor((s-v)/d),x=v+b*d;else for(l.dtick.charAt(0)==="M"&&(v=xot(v,e,d,o,i)),x=v,b=0;x<=s;)x=kn.tickIncrement(x,d,!1,i),b++;return{start:t.c2r(v,0,i),end:t.c2r(x,0,i),size:d,_dataSpan:s-o}};function _ot(e,t,r,n,i){var a=0,o=0,s=0,l=0;function u(d){return(1+(d-e)*100/r.dtick)%100<2}for(var c=0;c<t.length;c++)t[c]%1===0?s++:ph(t[c])||l++,u(t[c])&&a++,u(t[c]+r.dtick/2)&&o++;var f=t.length-l;if(s===f&&r.type!=="date")r.dtick<1?e=n-.5*r.dtick:(e-=.5,e+r.dtick<n&&(e+=r.dtick));else if(o<f*.1&&(a>f*.3||u(n)||u(i))){var h=r.dtick/2;e+=e+h<n?h:-h}return e}function xot(e,t,r,n,i){var a=Vo.findExactDates(t,i),o=.8;if(a.exactDays>o){var s=Number(r.substr(1));a.exactYears>o&&s%12===0?e=kn.tickIncrement(e,"M6","reverse")+Fv*1.5:a.exactMonths>o?e=kn.tickIncrement(e,"M1","reverse")+Fv*15.5:e-=l_;var l=kn.tickIncrement(e,r);if(l<=n)return l}return e}kn.prepMinorTicks=function(e,t,r){if(!t.minor.dtick){delete e.dtick;var n=t.dtick&&ph(t._tmin),i;if(n){var a=kn.tickIncrement(t._tmin,t.dtick,!0);i=[t._tmin,a*.99+t._tmin*.01]}else{var o=Vo.simpleMap(t.range,t.r2l);i=[o[0],.8*o[0]+.2*o[1]]}if(e.range=Vo.simpleMap(i,t.l2r),e._isMinor=!0,kn.prepTicks(e,r),n){var s=ph(t.dtick),l=ph(e.dtick),u=s?t.dtick:+t.dtick.substring(1),c=l?e.dtick:+e.dtick.substring(1);s&&l?$O(u,c)?u===2*Yp&&c===2*Fv&&(e.dtick=Yp):u===2*Yp&&c===3*Fv?e.dtick=Yp:u===Yp&&!(t._input.minor||{}).nticks?e.dtick=Fv:ose(u/c,2.5)?e.dtick=u/2:e.dtick=u:String(t.dtick).charAt(0)==="M"?l?e.dtick="M1":$O(u,c)?u>=12&&c===2&&(e.dtick="M3"):e.dtick=t.dtick:String(e.dtick).charAt(0)==="L"?String(t.dtick).charAt(0)==="L"?$O(u,c)||(e.dtick=ose(u/c,2.5)?t.dtick/2:t.dtick):e.dtick="D1":e.dtick==="D2"&&+t.dtick>1&&(e.dtick=1)}e.range=t.range}t.minor._tick0Init===void 0&&(e.tick0=t.tick0)};function $O(e,t){return Math.abs((e/t+.5)%1-.5)<.001}function ose(e,t){return Math.abs(e/t-1)<.001}kn.prepTicks=function(e,t){var r=Vo.simpleMap(e.range,e.r2l,void 0,void 0,t);if(e.tickmode==="auto"||!e.dtick){var n=e.nticks,i;n||(e.type==="category"||e.type==="multicategory"?(i=e.tickfont?Vo.bigFont(e.tickfont.size||12):15,n=e._length/i):(i=e._id.charAt(0)==="y"?40:80,n=Vo.constrain(e._length/i,4,9)+1),e._name==="radialaxis"&&(n*=2)),e.minor&&e.minor.tickmode!=="array"||e.tickmode==="array"&&(n*=100),e._roughDTick=Math.abs(r[1]-r[0])/n,kn.autoTicks(e,e._roughDTick),e._minDtick>0&&e.dtick<e._minDtick*2&&(e.dtick=e._minDtick,e.tick0=e.l2r(e._forceTick0))}e.ticklabelmode==="period"&&bot(e),e.tick0||(e.tick0=e.type==="date"?"2000-01-01":0),e.type==="date"&&e.dtick<.1&&(e.dtick=.1),mse(e)};function QO(e){return+e.substring(1)}function bot(e){var t;function r(){return!(ph(e.dtick)||e.dtick.charAt(0)!=="M")}var n=r(),i=kn.getTickFormat(e);if(i){var a=e._dtickInit!==e.dtick;/%[fLQsSMX]/.test(i)||(/%[HI]/.test(i)?(t=xm,a&&!n&&e.dtick<xm&&(e.dtick=xm)):/%p/.test(i)?(t=l_,a&&!n&&e.dtick<l_&&(e.dtick=l_)):/%[Aadejuwx]/.test(i)?(t=Fv,a&&!n&&e.dtick<Fv&&(e.dtick=Fv)):/%[UVW]/.test(i)?(t=Yp,a&&!n&&e.dtick<Yp&&(e.dtick=Yp)):/%[Bbm]/.test(i)?(t=R3,a&&(n?QO(e.dtick)<1:e.dtick<xL)&&(e.dtick="M1")):/%[q]/.test(i)?(t=tB,a&&(n?QO(e.dtick)<3:e.dtick<_L)&&(e.dtick="M3")):/%[Yy]/.test(i)&&(t=mL,a&&(n?QO(e.dtick)<12:e.dtick<yL)&&(e.dtick="M12")))}n=r(),n&&e.tick0===e._dowTick0&&(e.tick0=e._rawTick0),e._definedDelta=t}function wot(e,t,r){for(var n=0;n<e.length;n++){var i=e[n].value,a=n,o=n+1;n<e.length-1?(a=n,o=n+1):n>0?(a=n-1,o=n):(a=n,o=n);var s=e[a].value,l=e[o].value,u=Math.abs(l-s),c=r||u,f=0;c>=yL?u>=yL&&u<=lot?f=u:f=mL:r===tB&&c>=_L?u>=_L&&u<=uot?f=u:f=tB:c>=xL?u>=xL&&u<=cot?f=u:f=R3:r===Yp&&c>=Yp?f=Yp:c>=Fv?f=Fv:r===l_&&c>=l_?f=l_:r===xm&&c>=xm&&(f=xm);var h;f>=u&&(f=u,h=!0);var d=i+f;if(t.rangebreaks&&f>0){for(var v=84,x=0,b=0;b<v;b++){var p=(b+.5)/v;t.maskBreaks(i*(1-p)+p*d)!==AL&&x++}f*=x/v,f||(e[n].drop=!0),h&&u>Yp&&(f=u)}(f>0||n===0)&&(e[n].periodX=i+f/2)}}kn.calcTicks=function(t,r){for(var n=t.type,i=t.calendar,a=t.ticklabelstep,o=t.ticklabelmode==="period",s=t.range[0]>t.range[1],l=!t.ticklabelindex||Vo.isArrayOrTypedArray(t.ticklabelindex)?t.ticklabelindex:[t.ticklabelindex],u=Vo.simpleMap(t.range,t.r2l,void 0,void 0,r),c=u[1]<u[0],f=Math.min(u[0],u[1]),h=Math.max(u[0],u[1]),d=Math.max(1e3,t._length||0),v=[],x=[],b=[],p=[],E=[],k=t.minor&&(t.minor.ticks||t.minor.showgrid),A=1;A>=(k?0:1);A--){var L=!A;A?(t._dtickInit=t.dtick,t._tick0Init=t.tick0):(t.minor._dtickInit=t.minor.dtick,t.minor._tick0Init=t.minor.tick0);var _=A?t:Vo.extendFlat({},t,t.minor);if(L?kn.prepMinorTicks(_,t,r):kn.prepTicks(_,r),_.tickmode==="array"){A?(b=[],v=sse(t,!L)):(p=[],x=sse(t,!L));continue}if(_.tickmode==="sync"){b=[],v=Tot(t);continue}var C=lB(u),M=C[0],g=C[1],P=ph(_.dtick),T=n==="log"&&!(P||_.dtick.charAt(0)==="L"),F=kn.tickFirst(_,r);if(A){if(t._tmin=F,F<M!==c)break;(n==="category"||n==="multicategory")&&(g=c?Math.max(-.5,g):Math.min(t._categories.length-.5,g))}var q=null,V=F,H;if(A){var X;P?X=t.dtick:n==="date"?typeof t.dtick=="string"&&t.dtick.charAt(0)==="M"&&(X=R3*t.dtick.substring(1)):X=t._roughDTick,H=Math.round((t.r2l(V)-t.r2l(t.tick0))/X)-1}var G=_.dtick;for(_.rangebreaks&&_._tick0Init!==_.tick0&&(V=eB(V,t),c||(V=kn.tickIncrement(V,G,!c,i))),A&&o&&(V=kn.tickIncrement(V,G,!c,i),H--);c?V>=g:V<=g;V=kn.tickIncrement(V,G,c,i)){if(A&&H++,_.rangebreaks&&!c){if(V<M)continue;if(_.maskBreaks(V)===AL&&eB(V,_)>=h)break}if(b.length>d||V===q)break;q=V;var N={value:V};A?(T&&V!==(V|0)&&(N.simpleLabel=!0),a>1&&H%a&&(N.skipLabel=!0),b.push(N)):(N.minor=!0,p.push(N))}}if(!p||p.length<2)l=!1;else{var W=(p[1].value-p[0].value)*(s?-1:1);Zot(W,t.tickformat)||(l=!1)}if(!l)E=b;else{var re=b.concat(p);o&&b.length&&(re=re.slice(1)),re=re.sort(function(Rt,kt){return Rt.value-kt.value}).filter(function(Rt,kt,Ct){return kt===0||Rt.value!==Ct[kt-1].value});var ae=re.map(function(Rt,kt){return Rt.minor===void 0&&!Rt.skipLabel?kt:null}).filter(function(Rt){return Rt!==null});ae.forEach(function(Rt){l.map(function(kt){var Ct=Rt+kt;Ct>=0&&Ct<re.length&&Vo.pushUnique(E,re[Ct])})})}if(k){var _e=t.minor.ticks==="inside"&&t.ticks==="outside"||t.minor.ticks==="outside"&&t.ticks==="inside";if(!_e){for(var Me=b.map(function(Rt){return Rt.value}),ke=[],ge=0;ge<p.length;ge++){var ie=p[ge],Te=ie.value;if(Me.indexOf(Te)===-1){for(var Ee=!1,Ae=0;!Ee&&Ae<b.length;Ae++)1e7+b[Ae].value===1e7+Te&&(Ee=!0);Ee||ke.push(ie)}}p=ke}}o&&wot(E,t,t._definedDelta);var ze;if(t.rangebreaks){var Ce=t._id.charAt(0)==="y",me=1;t.tickmode==="auto"&&(me=t.tickfont?t.tickfont.size:12);var Re=NaN;for(ze=b.length-1;ze>-1;ze--){if(b[ze].drop){b.splice(ze,1);continue}b[ze].value=eB(b[ze].value,t);var ce=t.c2p(b[ze].value);(Ce?Re>ce-me:Re<ce+me)?b.splice(c?ze+1:ze,1):Re=ce}}fB(t)&&Math.abs(u[1]-u[0])===360&&b.pop(),t._tmax=(b[b.length-1]||{}).value,t._prevDateHead="",t._inCalcTicks=!0;var Ge,nt=function(Rt){Rt.text="",t._prevDateHead=Ge};b=b.concat(p);function ct(Rt,kt){var Ct=kn.tickText(Rt,kt.value,!1,kt.simpleLabel),Yt=kt.periodX;return Yt!==void 0&&(Ct.periodX=Yt,(Yt>h||Yt<f)&&(Yt>h&&(Ct.periodX=h),Yt<f&&(Ct.periodX=f),nt(Ct))),Ct}var qt;for(ze=0;ze<b.length;ze++){var rt=b[ze].minor,ot=b[ze].value;rt?(l&&E.indexOf(b[ze])!==-1?qt=ct(t,b[ze]):qt={x:ot},qt.minor=!0,x.push(qt)):(Ge=t._prevDateHead,qt=ct(t,b[ze]),(b[ze].skipLabel||l&&E.indexOf(b[ze])===-1)&&nt(qt),v.push(qt))}return v=v.concat(x),t._inCalcTicks=!1,o&&v.length&&(v[0].noTick=!0),v};function vse(e,t){return e.rangebreaks&&(t=t.filter(function(r){return e.maskBreaks(r.x)!==AL})),t}function Tot(e){var t=e._mainAxis,r=[];if(t._vals){for(var n=0;n<t._vals.length;n++)if(!t._vals[n].noTick){var i=t.l2p(t._vals[n].x),a=e.p2l(i),o=kn.tickText(e,a);t._vals[n].minor&&(o.minor=!0,o.text=""),r.push(o)}}return r=vse(e,r),r}function sse(e,t){var r=Vo.simpleMap(e.range,e.r2l),n=lB(r),i=Math.min(n[0],n[1]),a=Math.max(n[0],n[1]),o=e.type==="category"?e.d2l_noadd:e.d2l;e.type==="log"&&String(e.dtick).charAt(0)!=="L"&&(e.dtick="L"+Math.pow(10,Math.floor(Math.min(e.range[0],e.range[1]))-1));for(var s=[],l=0;l<=1;l++)if(!(t!==void 0&&(t&&l||t===!1&&!l))&&!(l&&!e.minor)){var u=l?e.minor.tickvals:e.tickvals,c=l?[]:e.ticktext;if(u){Vo.isArrayOrTypedArray(c)||(c=[]);for(var f=0;f<u.length;f++){var h=o(u[f]);if(h>i&&h<a){var d=kn.tickText(e,h,!1,String(c[f]));l&&(d.minor=!0,d.text=""),s.push(d)}}}}return s=vse(e,s),s}var pL=[2,5,10],lse=[1,2,3,6,12],use=[1,2,5,10,15,30],Aot=[1,2,3,7,14],pse=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],gse=[-.301,0,.301,.699,1],Sot=[15,30,45,90,180];function _m(e,t,r){return t*Vo.roundUp(e/t,r)}kn.autoTicks=function(e,t,r){var n;function i(f){return Math.pow(f,Math.floor(Math.log(t)/Math.LN10))}if(e.type==="date"){e.tick0=Vo.dateTick0(e.calendar,0);var a=2*t;if(a>mL)t/=mL,n=i(10),e.dtick="M"+12*_m(t,n,pL);else if(a>R3)t/=R3,e.dtick="M"+_m(t,1,lse);else if(a>Fv){if(e.dtick=_m(t,Fv,e._hasDayOfWeekBreaks?[1,2,7,14]:Aot),!r){var o=kn.getTickFormat(e),s=e.ticklabelmode==="period";s&&(e._rawTick0=e.tick0),/%[uVW]/.test(o)?e.tick0=Vo.dateTick0(e.calendar,2):e.tick0=Vo.dateTick0(e.calendar,1),s&&(e._dowTick0=e.tick0)}}else a>xm?e.dtick=_m(t,xm,lse):a>tM?e.dtick=_m(t,tM,use):a>bL?e.dtick=_m(t,bL,use):(n=i(10),e.dtick=_m(t,n,pL))}else if(e.type==="log"){e.tick0=0;var l=Vo.simpleMap(e.range,e.r2l);if(e._isMinor&&(t*=1.5),t>.7)e.dtick=Math.ceil(t);else if(Math.abs(l[1]-l[0])<1){var u=1.5*Math.abs((l[1]-l[0])/t);t=Math.abs(Math.pow(10,l[1])-Math.pow(10,l[0]))/u,n=i(10),e.dtick="L"+_m(t,n,pL)}else e.dtick=t>.3?"D2":"D1"}else e.type==="category"||e.type==="multicategory"?(e.tick0=0,e.dtick=Math.ceil(Math.max(t,1))):fB(e)?(e.tick0=0,n=1,e.dtick=_m(t,n,Sot)):(e.tick0=0,n=i(10),e.dtick=_m(t,n,pL));if(e.dtick===0&&(e.dtick=1),!ph(e.dtick)&&typeof e.dtick!="string"){var c=e.dtick;throw e.dtick=1,"ax.dtick error: "+String(c)}};function mse(e){var t=e.dtick;if(e._tickexponent=0,!ph(t)&&typeof t!="string"&&(t=1),(e.type==="category"||e.type==="multicategory")&&(e._tickround=null),e.type==="date"){var r=e.r2l(e.tick0),n=e.l2r(r).replace(/(^-|i)/g,""),i=n.length;if(String(t).charAt(0)==="M")i>10||n.substr(5)!=="01-01"?e._tickround="d":e._tickround=+t.substr(1)%12===0?"y":"m";else if(t>=Fv&&i<=10||t>=Fv*15)e._tickround="d";else if(t>=tM&&i<=16||t>=xm)e._tickround="M";else if(t>=bL&&i<=19||t>=tM)e._tickround="S";else{var a=e.l2r(r+t).replace(/^-/,"").length;e._tickround=Math.max(i,a)-20,e._tickround<0&&(e._tickround=4)}}else if(ph(t)||t.charAt(0)==="L"){var o=e.range.map(e.r2d||Number);ph(t)||(t=Number(t.substr(1))),e._tickround=2-Math.floor(Math.log(t)/Math.LN10+.01);var s=Math.max(Math.abs(o[0]),Math.abs(o[1])),l=Math.floor(Math.log(s)/Math.LN10+.01),u=e.minexponent===void 0?3:e.minexponent;Math.abs(l)>u&&(TL(e.exponentformat)&&!uB(l)?e._tickexponent=3*Math.round((l-1)/3):e._tickexponent=l)}else e._tickround=null}kn.tickIncrement=function(e,t,r,n){var i=r?-1:1;if(ph(t))return Vo.increment(e,i*t);var a=t.charAt(0),o=i*Number(t.substr(1));if(a==="M")return Vo.incrementMonth(e,o,n);if(a==="L")return Math.log(Math.pow(10,e)+o)/Math.LN10;if(a==="D"){var s=t==="D2"?gse:pse,l=e+i*.01,u=Vo.roundUp(Vo.mod(l,1),s,r);return Math.floor(l)+Math.log(w0.round(Math.pow(10,u),1))/Math.LN10}throw"unrecognized dtick "+String(t)};kn.tickFirst=function(e,t){var r=e.r2l||Number,n=Vo.simpleMap(e.range,r,void 0,void 0,t),i=n[1]<n[0],a=i?Math.floor:Math.ceil,o=lB(n)[0],s=e.dtick,l=r(e.tick0);if(ph(s)){var u=a((o-l)/s)*s+l;return(e.type==="category"||e.type==="multicategory")&&(u=Vo.constrain(u,0,e._categories.length-1)),u}var c=s.charAt(0),f=Number(s.substr(1));if(c==="M"){for(var h=0,d=l,v,x,b;h<10;){if(v=kn.tickIncrement(d,s,i,e.calendar),(v-o)*(d-o)<=0)return i?Math.min(d,v):Math.max(d,v);x=(o-(d+v)/2)/(v-d),b=c+(Math.abs(Math.round(x))||1)*f,d=kn.tickIncrement(d,b,x<0?!i:i,e.calendar),h++}return Vo.error("tickFirst did not converge",e),d}else{if(c==="L")return Math.log(a((Math.pow(10,o)-l)/f)*f+l)/Math.LN10;if(c==="D"){var p=s==="D2"?gse:pse,E=Vo.roundUp(Vo.mod(o,1),p,i);return Math.floor(o)+Math.log(w0.round(Math.pow(10,E),1))/Math.LN10}else throw"unrecognized dtick "+String(s)}};kn.tickText=function(e,t,r,n){var i=yse(e,t),a=e.tickmode==="array",o=r||a,s=e.type,l=s==="category"?e.d2l_noadd:e.d2l,u,c=function(b){var p=e.l2p(b);return p>=0&&p<=e._length?b:null};if(a&&Vo.isArrayOrTypedArray(e.ticktext)){var f=Vo.simpleMap(e.range,e.r2l),h=(Math.abs(f[1]-f[0])-(e._lBreaks||0))/1e4;for(u=0;u<e.ticktext.length&&!(Math.abs(t-l(e.tickvals[u]))<h);u++);if(u<e.ticktext.length)return i.text=String(e.ticktext[u]),i.xbnd=[c(i.x-.5),c(i.x+e.dtick-.5)],i}function d(b){if(b===void 0)return!0;if(r)return b==="none";var p={first:e._tmin,last:e._tmax}[b];return b!=="all"&&t!==p}var v=r?"never":e.exponentformat!=="none"&&d(e.showexponent)?"hide":"";if(s==="date"?Mot(e,i,r,o):s==="log"?Eot(e,i,r,o,v):s==="category"?kot(e,i):s==="multicategory"?Cot(e,i,r):fB(e)?Pot(e,i,r,o,v):Lot(e,i,r,o,v),n||(e.tickprefix&&!d(e.showtickprefix)&&(i.text=e.tickprefix+i.text),e.ticksuffix&&!d(e.showticksuffix)&&(i.text+=e.ticksuffix)),e.labelalias&&e.labelalias.hasOwnProperty(i.text)){var x=e.labelalias[i.text];typeof x=="string"&&(i.text=x)}return(e.tickson==="boundaries"||e.showdividers)&&(i.xbnd=[c(i.x-.5),c(i.x+e.dtick-.5)]),i};kn.hoverLabelText=function(e,t,r){r&&(e=Vo.extendFlat({},e,{hoverformat:r}));var n=Vo.isArrayOrTypedArray(t)?t[0]:t,i=Vo.isArrayOrTypedArray(t)?t[1]:void 0;if(i!==void 0&&i!==n)return kn.hoverLabelText(e,n,r)+" - "+kn.hoverLabelText(e,i,r);var a=e.type==="log"&&n<=0,o=kn.tickText(e,e.c2l(a?-n:n),"hover").text;return a?n===0?"0":kb+o:o};function yse(e,t,r){var n=e.tickfont||{};return{x:t,dx:0,dy:0,text:r||"",fontSize:n.size,font:n.family,fontWeight:n.weight,fontStyle:n.style,fontVariant:n.variant,fontTextcase:n.textcase,fontLineposition:n.lineposition,fontShadow:n.shadow,fontColor:n.color}}function Mot(e,t,r,n){var i=e._tickround,a=r&&e.hoverformat||kn.getTickFormat(e);n=!a&&n,n&&(ph(i)?i=4:i={y:"m",m:"d",d:"M",M:"S",S:4}[i]);var o=Vo.formatDate(t.x,a,i,e._dateFormat,e.calendar,e._extraFormat),s,l=o.indexOf(`
+`);if(l!==-1&&(s=o.substr(l+1),o=o.substr(0,l)),n&&(s!==void 0&&(o==="00:00:00"||o==="00:00")?(o=s,s=""):o.length===8&&(o=o.replace(/:00$/,""))),s)if(r)i==="d"?o+=", "+s:o=s+(o?", "+o:"");else if(!e._inCalcTicks||e._prevDateHead!==s)e._prevDateHead=s,o+="<br>"+s;else{var u=nM(e),c=e._trueSide||e.side;(!u&&c==="top"||u&&c==="bottom")&&(o+="<br> ")}t.text=o}function Eot(e,t,r,n,i){var a=e.dtick,o=t.x,s=e.tickformat,l=typeof a=="string"&&a.charAt(0);if(i==="never"&&(i=""),n&&l!=="L"&&(a="L3",l="L"),s||l==="L")t.text=iM(Math.pow(10,o),e,i,n);else if(ph(a)||l==="D"&&Vo.mod(o+.01,1)<.1){var u=Math.round(o),c=Math.abs(u),f=e.exponentformat;f==="power"||TL(f)&&uB(u)?(u===0?t.text=1:u===1?t.text="10":t.text="10<sup>"+(u>1?"":kb)+c+"</sup>",t.fontSize*=1.25):(f==="e"||f==="E")&&c>2?t.text="1"+f+(u>0?"+":kb)+c:(t.text=iM(Math.pow(10,o),e,"","fakehover"),a==="D1"&&e._id.charAt(0)==="y"&&(t.dy-=t.fontSize/6))}else if(l==="D")t.text=String(Math.round(Math.pow(10,Vo.mod(o,1)))),t.fontSize*=.75;else throw"unrecognized dtick "+String(a);if(e.dtick==="D1"){var h=String(t.text).charAt(0);(h==="0"||h==="1")&&(e._id.charAt(0)==="y"?t.dx-=t.fontSize/4:(t.dy+=t.fontSize/2,t.dx+=(e.range[1]>e.range[0]?1:-1)*t.fontSize*(o<0?.5:.25)))}}function kot(e,t){var r=e._categories[Math.round(t.x)];r===void 0&&(r=""),t.text=String(r)}function Cot(e,t,r){var n=Math.round(t.x),i=e._categories[n]||[],a=i[1]===void 0?"":String(i[1]),o=i[0]===void 0?"":String(i[0]);r?t.text=o+" - "+a:(t.text=a,t.text2=o)}function Lot(e,t,r,n,i){i==="never"?i="":e.showexponent==="all"&&Math.abs(t.x/e.dtick)<1e-6&&(i="hide"),t.text=iM(t.x,e,i,n)}function Pot(e,t,r,n,i){if(e.thetaunit==="radians"&&!r){var a=t.x/180;if(a===0)t.text="0";else{var o=Iot(a);if(o[1]>=100)t.text=iM(Vo.deg2rad(t.x),e,i,n);else{var s=t.x<0;o[1]===1?o[0]===1?t.text="\u03C0":t.text=o[0]+"\u03C0":t.text=["<sup>",o[0],"</sup>","\u2044","<sub>",o[1],"</sub>","\u03C0"].join(""),s&&(t.text=kb+t.text)}}}else t.text=iM(t.x,e,i,n)}function Iot(e){function t(s,l){return Math.abs(s-l)<=1e-6}function r(s,l){return t(l,0)?s:r(l,s%l)}function n(s){for(var l=1;!t(Math.round(s*l)/l,s);)l*=10;return l}var i=n(e),a=e*i,o=Math.abs(r(a,i));return[Math.round(a/o),Math.round(i/o)]}var Rot=["f","p","n","\u03BC","m","","k","M","G","T"];function TL(e){return e==="SI"||e==="B"}function uB(e){return e>14||e<-15}function iM(e,t,r,n){var i=e<0,a=t._tickround,o=r||t.exponentformat||"B",s=t._tickexponent,l=kn.getTickFormat(t),u=t.separatethousands;if(n){var c={exponentformat:o,minexponent:t.minexponent,dtick:t.showexponent==="none"?t.dtick:ph(e)&&Math.abs(e)||1,range:t.showexponent==="none"?t.range.map(t.r2d):[0,e||1]};mse(c),a=(Number(c._tickround)||0)+4,s=c._tickexponent,t.hoverformat&&(l=t.hoverformat)}if(l)return t._numFormat(l)(e).replace(/-/g,kb);var f=Math.pow(10,-a)/2;if(o==="none"&&(s=0),e=Math.abs(e),e<f)e="0",i=!1;else{if(e+=f,s&&(e*=Math.pow(10,-s),a+=s),a===0)e=String(Math.floor(e));else if(a<0){e=String(Math.round(e)),e=e.substr(0,e.length+a);for(var h=a;h<0;h++)e+="0"}else{e=String(e);var d=e.indexOf(".")+1;d&&(e=e.substr(0,d+a).replace(/\.?0+$/,""))}e=Vo.numSeparate(e,t._separators,u)}if(s&&o!=="hide"){TL(o)&&uB(s)&&(o="power");var v;s<0?v=kb+-s:o!=="power"?v="+"+s:v=String(s),o==="e"||o==="E"?e+=o+v:o==="power"?e+="\xD710<sup>"+v+"</sup>":o==="B"&&s===9?e+="B":TL(o)&&(e+=Rot[s/3+5])}return i?kb+e:e}kn.getTickFormat=function(e){var t;function r(l){return typeof l!="string"?l:Number(l.replace("M",""))*R3}function n(l,u){var c=["L","D"];if(typeof l==typeof u){if(typeof l=="number")return l-u;var f=c.indexOf(l.charAt(0)),h=c.indexOf(u.charAt(0));return f===h?Number(l.replace(/(L|D)/g,""))-Number(u.replace(/(L|D)/g,"")):f-h}else return typeof l=="number"?1:-1}function i(l,u,c){var f=c||function(v){return v},h=u[0],d=u[1];return(!h&&typeof h!="number"||f(h)<=f(l))&&(!d&&typeof d!="number"||f(d)>=f(l))}function a(l,u){var c=u[0]===null,f=u[1]===null,h=n(l,u[0])>=0,d=n(l,u[1])<=0;return(c||h)&&(f||d)}var o,s;if(e.tickformatstops&&e.tickformatstops.length>0)switch(e.type){case"date":case"linear":{for(t=0;t<e.tickformatstops.length;t++)if(s=e.tickformatstops[t],s.enabled&&i(e.dtick,s.dtickrange,r)){o=s;break}break}case"log":{for(t=0;t<e.tickformatstops.length;t++)if(s=e.tickformatstops[t],s.enabled&&a(e.dtick,s.dtickrange)){o=s;break}break}default:}return o?o.value:e.tickformat};kn.getSubplots=function(e,t){var r=e._fullLayout._subplots,n=r.cartesian.concat(r.gl2d||[]),i=t?kn.findSubplotsWithAxis(n,t):n;return i.sort(function(a,o){var s=a.substr(1).split("y"),l=o.substr(1).split("y");return s[0]===l[0]?+s[1]-+l[1]:+s[0]-+l[0]}),i};kn.findSubplotsWithAxis=function(e,t){for(var r=new RegExp(t._id.charAt(0)==="x"?"^"+t._id+"y":t._id+"$"),n=[],i=0;i<e.length;i++){var a=e[i];r.test(a)&&n.push(a)}return n};kn.makeClipPaths=function(e){var t=e._fullLayout;if(!t._hasOnlyLargeSploms){var r={_offset:0,_length:t.width,_id:""},n={_offset:0,_length:t.height,_id:""},i=kn.list(e,"x",!0),a=kn.list(e,"y",!0),o=[],s,l;for(s=0;s<i.length;s++)for(o.push({x:i[s],y:n}),l=0;l<a.length;l++)s===0&&o.push({x:r,y:a[l]}),o.push({x:i[s],y:a[l]});var u=t._clips.selectAll(".axesclip").data(o,function(c){return c.x._id+c.y._id});u.enter().append("clipPath").classed("axesclip",!0).attr("id",function(c){return"clip"+t._uid+c.x._id+c.y._id}).append("rect"),u.exit().remove(),u.each(function(c){w0.select(this).select("rect").attr({x:c.x._offset||0,y:c.y._offset||0,width:c.x._length||1,height:c.y._length||1})})}};kn.draw=function(e,t,r){var n=e._fullLayout;t==="redraw"&&n._paper.selectAll("g.subplot").each(function(l){var u=l[0],c=n._plots[u];if(c){var f=c.xaxis,h=c.yaxis;c.xaxislayer.selectAll("."+f._id+"tick").remove(),c.yaxislayer.selectAll("."+h._id+"tick").remove(),c.xaxislayer.selectAll("."+f._id+"tick2").remove(),c.yaxislayer.selectAll("."+h._id+"tick2").remove(),c.xaxislayer.selectAll("."+f._id+"divider").remove(),c.yaxislayer.selectAll("."+h._id+"divider").remove(),c.minorGridlayer&&c.minorGridlayer.selectAll("path").remove(),c.gridlayer&&c.gridlayer.selectAll("path").remove(),c.zerolinelayer&&c.zerolinelayer.selectAll("path").remove(),n._infolayer.select(".g-"+f._id+"title").remove(),n._infolayer.select(".g-"+h._id+"title").remove()}});var i=!t||t==="redraw"?kn.listIds(e):t,a=kn.list(e),o=a.filter(function(l){return l.autoshift}).map(function(l){return l.overlaying});i.map(function(l){var u=kn.getFromId(e,l);if(u.tickmode==="sync"&&u.overlaying){var c=i.findIndex(function(f){return f===u.overlaying});c>=0&&i.unshift(i.splice(c,1).shift())}});var s={false:{left:0,right:0}};return Vo.syncOrAsync(i.map(function(l){return function(){if(l){var u=kn.getFromId(e,l);r||(r={}),r.axShifts=s,r.overlayingShiftedAx=o;var c=kn.drawOne(e,u,r);return u._shiftPusher&&sB(u,u._fullDepth||0,s,!0),u._r=u.range.slice(),u._rl=Vo.simpleMap(u._r,u.r2l),c}}}))};kn.drawOne=function(e,t,r){r=r||{};var n=r.axShifts||{},i=r.overlayingShiftedAx||[],a,o,s;t.setScale();var l=e._fullLayout,u=t._id,c=u.charAt(0),f=kn.counterLetter(u),h=l._plots[t._mainSubplot];if(!h)return;if(t._shiftPusher=t.autoshift||i.indexOf(t._id)!==-1||i.indexOf(t.overlaying)!==-1,t._shiftPusher&t.anchor==="free"){var d=t.linewidth/2||0;t.ticks==="inside"&&(d+=t.ticklen),sB(t,d,n,!0),sB(t,t.shift||0,n,!1)}(r.skipTitle!==!0||t._shift===void 0)&&(t._shift=Wot(t,n));var v=h[c+"axislayer"],x=t._mainLinePosition,b=x+=t._shift,p=t._mainMirrorPosition,E=t._vals=kn.calcTicks(t),k=[t.mirror,b,p].join("_");for(a=0;a<E.length;a++)E[a].axInfo=k;t._selections={},t._tickAngles&&(t._prevTickAngles=t._tickAngles),t._tickAngles={},t._depth=null;var A={};function L(rt){var ot=u+(rt||"tick");return A[ot]||(A[ot]=qot(t,ot,b)),A[ot]}if(t.visible){var _=kn.makeTransTickFn(t),C=kn.makeTransTickLabelFn(t),M,g,P=t.ticks==="inside",T=t.ticks==="outside";if(t.tickson==="boundaries"){var F=Dot(t,E);g=kn.clipEnds(t,F),M=P?g:F}else g=kn.clipEnds(t,E),M=P&&t.ticklabelmode!=="period"?g:E;var q=t._gridVals=g,V=Fot(t,E);if(!l._hasOnlyLargeSploms){var H=t._subplotsWith,X={};for(a=0;a<H.length;a++){o=H[a],s=l._plots[o];var G=s[f+"axis"],N=G._mainAxis._id;if(!X[N]){X[N]=1;var W=c==="x"?"M0,"+G._offset+"v"+G._length:"M"+G._offset+",0h"+G._length;kn.drawGrid(e,t,{vals:q,counterAxis:G,layer:s.gridlayer.select("."+u),minorLayer:s.minorGridlayer.select("."+u),path:W,transFn:_}),kn.drawZeroLine(e,t,{counterAxis:G,layer:s.zerolinelayer,path:W,transFn:_})}}}var re,ae=kn.getTickSigns(t),_e=kn.getTickSigns(t,"minor");if(t.ticks||t.minor&&t.minor.ticks){var Me=kn.makeTickPath(t,b,ae[2]),ke=kn.makeTickPath(t,b,_e[2],{minor:!0}),ge,ie,Te,Ee;if(t._anchorAxis&&t.mirror&&t.mirror!==!0?(ge=kn.makeTickPath(t,p,ae[3]),ie=kn.makeTickPath(t,p,_e[3],{minor:!0}),Te=Me+ge,Ee=ke+ie):(ge="",ie="",Te=Me,Ee=ke),t.showdividers&&T&&t.tickson==="boundaries"){var Ae={};for(a=0;a<V.length;a++)Ae[V[a].x]=1;re=function(rt){return Ae[rt.x]?ge:Te}}else re=function(rt){return rt.minor?Ee:Te}}if(kn.drawTicks(e,t,{vals:M,layer:v,path:re,transFn:_}),t.mirror==="allticks"){var ze=Object.keys(t._linepositions||{});for(a=0;a<ze.length;a++){o=ze[a],s=l._plots[o];var Ce=t._linepositions[o]||[],me=Ce[0],Re=Ce[1],ce=Ce[2],Ge=kn.makeTickPath(t,me,ce?ae[0]:_e[0],{minor:ce})+kn.makeTickPath(t,Re,ce?ae[1]:_e[1],{minor:ce});kn.drawTicks(e,t,{vals:M,layer:s[c+"axislayer"],path:Ge,transFn:_})}}var nt=[];if(nt.push(function(){return kn.drawLabels(e,t,{vals:E,layer:v,plotinfo:s,transFn:C,labelFns:kn.makeLabelFns(t,b)})}),t.type==="multicategory"){var ct={x:2,y:10}[c];nt.push(function(){var rt={x:"height",y:"width"}[c],ot=L()[rt]+ct+(t._tickAngles[u+"tick"]?t.tickfont.size*rM:0);return kn.drawLabels(e,t,{vals:zot(t,E),layer:v,cls:u+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:_,labelFns:kn.makeLabelFns(t,b+ot*ae[4])})}),nt.push(function(){return t._depth=ae[4]*(L("tick2")[t.side]-b),Bot(e,t,{vals:V,layer:v,path:kn.makeTickPath(t,b,ae[4],{len:t._depth}),transFn:_})})}else t.title.hasOwnProperty("standoff")&&nt.push(function(){t._depth=ae[4]*(L()[t.side]-b)});var qt=QS.getComponentMethod("rangeslider","isVisible")(t);return!r.skipTitle&&!(qt&&t.side==="bottom")&&nt.push(function(){return Not(e,t)}),nt.push(function(){var rt=t.side.charAt(0),ot=dot[t.side].charAt(0),Rt=kn.getPxPosition(e,t),kt=T?t.ticklen:0,Ct,Yt,xr,er;(t.automargin||qt||t._shiftPusher)&&(t.type==="multicategory"?Ct=L("tick2"):(Ct=L(),c==="x"&&rt==="b"&&(t._depth=Math.max(Ct.width>0?Ct.bottom-Rt:0,kt))));var Ke=0,xt=0;if(t._shiftPusher&&(Ke=Math.max(kt,Ct.height>0?rt==="l"?Rt-Ct.left:Ct.right-Rt:0),t.title.text!==l._dfltTitle[c]&&(xt=(t._titleStandoff||0)+(t._titleScoot||0),rt==="l"&&(xt+=fse(t))),t._fullDepth=Math.max(Ke,xt)),t.automargin){Yt={x:0,y:0,r:0,l:0,t:0,b:0};var bt=[0,1],Lt=typeof t._shift=="number"?t._shift:0;if(c==="x"){if(rt==="b"?Yt[rt]=t._depth:(Yt[rt]=t._depth=Math.max(Ct.width>0?Rt-Ct.top:0,kt),bt.reverse()),Ct.width>0){var St=Ct.right-(t._offset+t._length);St>0&&(Yt.xr=1,Yt.r=St);var Et=t._offset-Ct.left;Et>0&&(Yt.xl=0,Yt.l=Et)}}else if(rt==="l"?(t._depth=Math.max(Ct.height>0?Rt-Ct.left:0,kt),Yt[rt]=t._depth-Lt):(t._depth=Math.max(Ct.height>0?Ct.right-Rt:0,kt),Yt[rt]=t._depth+Lt,bt.reverse()),Ct.height>0){var dt=Ct.bottom-(t._offset+t._length);dt>0&&(Yt.yb=0,Yt.b=dt);var Ht=t._offset-Ct.top;Ht>0&&(Yt.yt=1,Yt.t=Ht)}Yt[f]=t.anchor==="free"?t.position:t._anchorAxis.domain[bt[0]],t.title.text!==l._dfltTitle[c]&&(Yt[rt]+=fse(t)+(t.title.standoff||0)),t.mirror&&t.anchor!=="free"&&(xr={x:0,y:0,r:0,l:0,t:0,b:0},xr[ot]=t.linewidth,t.mirror&&t.mirror!==!0&&(xr[ot]+=kt),t.mirror===!0||t.mirror==="ticks"?xr[f]=t._anchorAxis.domain[bt[1]]:(t.mirror==="all"||t.mirror==="allticks")&&(xr[f]=[t._counterDomainMin,t._counterDomainMax][bt[1]]))}qt&&(er=QS.getComponentMethod("rangeslider","autoMarginOpts")(e,t)),typeof t.automargin=="string"&&(cse(Yt,t.automargin),cse(xr,t.automargin)),P3.autoMargin(e,cB(t),Yt),P3.autoMargin(e,xse(t),xr),P3.autoMargin(e,bse(t),er)}),Vo.syncOrAsync(nt)}};function cse(e,t){if(e){var r=Object.keys(ise).reduce(function(n,i){return t.indexOf(i)!==-1&&ise[i].forEach(function(a){n[a]=1}),n},{});Object.keys(e).forEach(function(n){r[n]||(n.length===1?e[n]=0:delete e[n])})}}function Dot(e,t){var r=[],n,i=function(a,o){var s=a.xbnd[o];s!==null&&r.push(Vo.extendFlat({},a,{x:s}))};if(t.length){for(n=0;n<t.length;n++)i(t[n],0);i(t[n-1],1)}return r}function zot(e,t){for(var r=[],n={},i=0;i<t.length;i++){var a=t[i];n[a.text2]?n[a.text2].push(a.x):n[a.text2]=[a.x]}for(var o in n)r.push(yse(e,Vo.interp(n[o],.5),o));return r}function Fot(e,t){var r=[],n,i,a=t.length&&t[t.length-1].x<t[0].x,o=function(l,u){var c=l.xbnd[u];c!==null&&r.push(Vo.extendFlat({},l,{x:c}))};if(e.showdividers&&t.length){for(n=0;n<t.length;n++){var s=t[n];s.text2!==i&&o(s,a?1:0),i=s.text2}o(t[n-1],a?0:1)}return r}function qot(e,t,r){var n,i,a,o;if(e._selections[t].size())n=1/0,i=-1/0,a=1/0,o=-1/0,e._selections[t].each(function(){var l=oB(this),u=Xp.bBox(l.node().parentNode);n=Math.min(n,u.top),i=Math.max(i,u.bottom),a=Math.min(a,u.left),o=Math.max(o,u.right)});else{var s=kn.makeLabelFns(e,r);n=i=s.yFn({dx:0,dy:0,fontSize:0}),a=o=s.xFn({dx:0,dy:0,fontSize:0})}return{top:n,bottom:i,left:a,right:o,height:i-n,width:o-a}}kn.getTickSigns=function(e,t){var r=e._id.charAt(0),n={x:"top",y:"right"}[r],i=e.side===n?1:-1,a=[-1,1,i,-i],o=t?(e.minor||{}).ticks:e.ticks;return o!=="inside"==(r==="x")&&(a=a.map(function(s){return-s})),e.side&&a.push({l:-1,t:-1,r:1,b:1}[e.side.charAt(0)]),a};kn.makeTransTickFn=function(e){return e._id.charAt(0)==="x"?function(t){return I3(e._offset+e.l2p(t.x),0)}:function(t){return I3(0,e._offset+e.l2p(t.x))}};kn.makeTransTickLabelFn=function(e){var t=Oot(e),r=e.ticklabelshift||0,n=e.ticklabelstandoff||0,i=t[0],a=t[1],o=e.range[0]>e.range[1],s=e.ticklabelposition&&e.ticklabelposition.indexOf("inside")!==-1,l=!s;if(r){var u=o?-1:1;r=r*u}if(n){var c=e.side,f=s&&(c==="top"||c==="left")||l&&(c==="bottom"||c==="right")?1:-1;n=n*f}return e._id.charAt(0)==="x"?function(h){return I3(i+e._offset+e.l2p(aB(h))+r,a+n)}:function(h){return I3(a+n,i+e._offset+e.l2p(aB(h))+r)}};function aB(e){return e.periodX!==void 0?e.periodX:e.x}function Oot(e){var t=e.ticklabelposition||"",r=function(d){return t.indexOf(d)!==-1},n=r("top"),i=r("left"),a=r("right"),o=r("bottom"),s=r("inside"),l=o||i||n||a;if(!l&&!s)return[0,0];var u=e.side,c=l?(e.tickwidth||0)/2:0,f=wL,h=e.tickfont?e.tickfont.size:12;return(o||n)&&(c+=h*Cb,f+=(e.linewidth||0)/2),(i||a)&&(c+=(e.linewidth||0)/2,f+=wL),s&&u==="top"&&(f-=h*(1-Cb)),(i||n)&&(c=-c),(u==="bottom"||u==="right")&&(f=-f),[l?c:0,s?f:0]}kn.makeTickPath=function(e,t,r,n){n||(n={});var i=n.minor;if(i&&!e.minor)return"";var a=n.len!==void 0?n.len:i?e.minor.ticklen:e.ticklen,o=e._id.charAt(0),s=(e.linewidth||1)/2;return o==="x"?"M0,"+(t+s*r)+"v"+a*r:"M"+(t+s*r)+",0h"+a*r};kn.makeLabelFns=function(e,t,r){var n=e.ticklabelposition||"",i=function(F){return n.indexOf(F)!==-1},a=i("top"),o=i("left"),s=i("right"),l=i("bottom"),u=l||o||a||s,c=i("inside"),f=n==="inside"&&e.ticks==="inside"||!c&&e.ticks==="outside"&&e.tickson!=="boundaries",h=0,d=0,v=f?e.ticklen:0;if(c?v*=-1:u&&(v=0),f&&(h+=v,r)){var x=Vo.deg2rad(r);h=v*Math.cos(x)+1,d=v*Math.sin(x)}e.showticklabels&&(f||e.showline)&&(h+=.2*e.tickfont.size),h+=(e.linewidth||1)/2*(c?-1:1);var b={labelStandoff:h,labelShift:d},p,E,k,A,L=0,_=e.side,C=e._id.charAt(0),M=e.tickangle,g;if(C==="x")g=!c&&_==="bottom"||c&&_==="top",A=g?1:-1,c&&(A*=-1),p=d*A,E=t+h*A,k=g?1:-.2,Math.abs(M)===90&&(c?k+=$S:M===-90&&_==="bottom"?k=Cb:M===90&&_==="top"?k=$S:k=.5,L=$S/2*(M/90)),b.xFn=function(F){return F.dx+p+L*F.fontSize},b.yFn=function(F){return F.dy+E+F.fontSize*k},b.anchorFn=function(F,q){if(u){if(o)return"end";if(s)return"start"}return!ph(q)||q===0||q===180?"middle":q*A<0!==c?"end":"start"},b.heightFn=function(F,q,V){return q<-60||q>60?-.5*V:e.side==="top"!==c?-V:0};else if(C==="y"){if(g=!c&&_==="left"||c&&_==="right",A=g?1:-1,c&&(A*=-1),p=h,E=d*A,k=0,!c&&Math.abs(M)===90&&(M===-90&&_==="left"||M===90&&_==="right"?k=Cb:k=.5),c){var P=ph(M)?+M:0;if(P!==0){var T=Vo.deg2rad(P);L=Math.abs(Math.sin(T))*Cb*A,k=0}}b.xFn=function(F){return F.dx+t-(p+F.fontSize*k)*A+L*F.fontSize},b.yFn=function(F){return F.dy+E+F.fontSize*$S},b.anchorFn=function(F,q){return ph(q)&&Math.abs(q)===90?"middle":g?"end":"start"},b.heightFn=function(F,q,V){return e.side==="right"&&(q*=-1),q<-30?-V:q<30?-.5*V:0}}return b};function ML(e){return[e.text,e.x,e.axInfo,e.font,e.fontSize,e.fontColor].join("_")}kn.drawTicks=function(e,t,r){r=r||{};var n=t._id+"tick",i=[].concat(t.minor&&t.minor.ticks?r.vals.filter(function(o){return o.minor&&!o.noTick}):[]).concat(t.ticks?r.vals.filter(function(o){return!o.minor&&!o.noTick}):[]),a=r.layer.selectAll("path."+n).data(i,ML);a.exit().remove(),a.enter().append("path").classed(n,1).classed("ticks",1).classed("crisp",r.crisp!==!1).each(function(o){return eM.stroke(w0.select(this),o.minor?t.minor.tickcolor:t.tickcolor)}).style("stroke-width",function(o){return Xp.crispRound(e,o.minor?t.minor.tickwidth:t.tickwidth,1)+"px"}).attr("d",r.path).style("display",null),EL(t,[hse]),a.attr("transform",r.transFn)};kn.drawGrid=function(e,t,r){if(r=r||{},t.tickmode!=="sync"){var n=t._id+"grid",i=t.minor&&t.minor.showgrid,a=i?r.vals.filter(function(p){return p.minor}):[],o=t.showgrid?r.vals.filter(function(p){return!p.minor}):[],s=r.counterAxis;if(s&&kn.shouldShowZeroLine(e,t,s))for(var l=t.tickmode==="array",u=0;u<o.length;u++){var c=o[u].x;if(l?!c:Math.abs(c)<t.dtick/100)if(o=o.slice(0,u).concat(o.slice(u+1)),l)u--;else break}t._gw=Xp.crispRound(e,t.gridwidth,1);for(var f=i?Xp.crispRound(e,t.minor.gridwidth,1):0,h=r.layer,d=r.minorLayer,v=1;v>=0;v--){var x=v?h:d;if(x){var b=x.selectAll("path."+n).data(v?o:a,ML);b.exit().remove(),b.enter().append("path").classed(n,1).classed("crisp",r.crisp!==!1),b.attr("transform",r.transFn).attr("d",r.path).each(function(p){return eM.stroke(w0.select(this),p.minor?t.minor.gridcolor:t.gridcolor||"#ddd")}).style("stroke-dasharray",function(p){return Xp.dashStyle(p.minor?t.minor.griddash:t.griddash,p.minor?t.minor.gridwidth:t.gridwidth)}).style("stroke-width",function(p){return(p.minor?f:t._gw)+"px"}).style("display",null),typeof r.path=="function"&&b.attr("d",r.path)}}EL(t,[iB,nB])}};kn.drawZeroLine=function(e,t,r){r=r||r;var n=t._id+"zl",i=kn.shouldShowZeroLine(e,t,r.counterAxis),a=r.layer.selectAll("path."+n).data(i?[{x:0,id:t._id}]:[]);a.exit().remove(),a.enter().append("path").classed(n,1).classed("zl",1).classed("crisp",r.crisp!==!1).each(function(){r.layer.selectAll("path").sort(function(o,s){return pot(o.id,s.id)})}),a.attr("transform",r.transFn).attr("d",r.path).call(eM.stroke,t.zerolinecolor||eM.defaultLine).style("stroke-width",Xp.crispRound(e,t.zerolinewidth,t._gw||1)+"px").style("display",null),EL(t,[rB])};kn.drawLabels=function(e,t,r){r=r||{};var n=e._fullLayout,i=t._id,a=r.cls||i+"tick",o=r.vals.filter(function(N){return N.text}),s=r.labelFns,l=r.secondary?0:t.tickangle,u=(t._prevTickAngles||{})[a],c=r.layer.selectAll("g."+a).data(t.showticklabels?o:[],ML),f=[];c.enter().append("g").classed(a,1).append("text").attr("text-anchor","middle").each(function(N){var W=w0.select(this),re=e._promises.length;W.call(Eb.positionText,s.xFn(N),s.yFn(N)).call(Xp.font,{family:N.font,size:N.fontSize,color:N.fontColor,weight:N.fontWeight,style:N.fontStyle,variant:N.fontVariant,textcase:N.fontTextcase,lineposition:N.fontLineposition,shadow:N.fontShadow}).text(N.text).call(Eb.convertToTspans,e),e._promises[re]?f.push(e._promises.pop().then(function(){h(W,l)})):h(W,l)}),EL(t,[rse]),c.exit().remove(),r.repositionOnUpdate&&c.each(function(N){w0.select(this).select("text").call(Eb.positionText,s.xFn(N),s.yFn(N))});function h(N,W){N.each(function(re){var ae=w0.select(this),_e=ae.select(".text-math-group"),Me=s.anchorFn(re,W),ke=r.transFn.call(ae.node(),re)+(ph(W)&&+W!=0?" rotate("+W+","+s.xFn(re)+","+(s.yFn(re)-re.fontSize/2)+")":""),ge=Eb.lineCount(ae),ie=rM*re.fontSize,Te=s.heightFn(re,ph(W)?+W:0,(ge-1)*ie);if(Te&&(ke+=I3(0,Te)),_e.empty()){var Ee=ae.select("text");Ee.attr({transform:ke,"text-anchor":Me}),Ee.style("opacity",1),t._adjustTickLabelsOverflow&&t._adjustTickLabelsOverflow()}else{var Ae=Xp.bBox(_e.node()).width,ze=Ae*{end:-.5,start:.5}[Me];_e.attr("transform",ke+I3(ze,0))}})}t._adjustTickLabelsOverflow=function(){var N=t.ticklabeloverflow;if(!(!N||N==="allow")){var W=N.indexOf("hide")!==-1,re=t._id.charAt(0)==="x",ae=0,_e=re?e._fullLayout.width:e._fullLayout.height;if(N.indexOf("domain")!==-1){var Me=Vo.simpleMap(t.range,t.r2l);ae=t.l2p(Me[0])+t._offset,_e=t.l2p(Me[1])+t._offset}var ke=Math.min(ae,_e),ge=Math.max(ae,_e),ie=t.side,Te=1/0,Ee=-1/0;c.each(function(me){var Re=w0.select(this),ce=Re.select(".text-math-group");if(ce.empty()){var Ge=Xp.bBox(Re.node()),nt=0;re?(Ge.right>ge||Ge.left<ke)&&(nt=1):(Ge.bottom>ge||Ge.top+(t.tickangle?0:me.fontSize/4)<ke)&&(nt=1);var ct=Re.select("text");nt?W&&ct.style("opacity",0):(ct.style("opacity",1),ie==="bottom"||ie==="right"?Te=Math.min(Te,re?Ge.top:Ge.left):Te=-1/0,ie==="top"||ie==="left"?Ee=Math.max(Ee,re?Ge.bottom:Ge.right):Ee=1/0)}});for(var Ae in n._plots){var ze=n._plots[Ae];if(!(t._id!==ze.xaxis._id&&t._id!==ze.yaxis._id)){var Ce=re?ze.yaxis:ze.xaxis;Ce&&(Ce["_visibleLabelMin_"+t._id]=Te,Ce["_visibleLabelMax_"+t._id]=Ee)}}}},t._hideCounterAxisInsideTickLabels=function(N){var W=t._id.charAt(0)==="x",re=[];for(var ae in n._plots){var _e=n._plots[ae];t._id!==_e.xaxis._id&&t._id!==_e.yaxis._id||re.push(W?_e.yaxis:_e.xaxis)}re.forEach(function(Me,ke){Me&&nM(Me)&&(N||[rB,nB,iB,hse,rse]).forEach(function(ge){var ie=ge.K==="tick"&&ge.L==="text"&&t.ticklabelmode==="period",Te=n._plots[t._mainSubplot],Ee;ge.K===rB.K?Ee=Te.zerolinelayer.selectAll("."+t._id+"zl"):ge.K===nB.K?Ee=Te.minorGridlayer.selectAll("."+t._id):ge.K===iB.K?Ee=Te.gridlayer.selectAll("."+t._id):Ee=Te[t._id.charAt(0)+"axislayer"],Ee.each(function(){var Ae=w0.select(this);ge.L&&(Ae=Ae.selectAll(ge.L)),Ae.each(function(ze){var Ce=t.l2p(ie?aB(ze):ze.x)+t._offset,me=w0.select(this);Ce<t["_visibleLabelMax_"+Me._id]&&Ce>t["_visibleLabelMin_"+Me._id]?me.style("display","none"):ge.K==="tick"&&!ke&&me.style("display",null)})})})})},h(c,u+1?u:l);function d(){return f.length&&Promise.all(f)}var v=null;function x(){if(h(c,l),o.length&&t.autotickangles&&(t.type!=="log"||String(t.dtick).charAt(0)!=="D")){v=t.autotickangles[0];var N=0,W=[],re,ae=1;c.each(function(Ct){N=Math.max(N,Ct.fontSize);var Yt=t.l2p(Ct.x),xr=oB(this),er=Xp.bBox(xr.node());ae=Math.max(ae,Eb.lineCount(xr)),W.push({top:0,bottom:10,height:10,left:Yt-er.width/2,right:Yt+er.width/2+2,width:er.width+2})});var _e=(t.tickson==="boundaries"||t.showdividers)&&!r.secondary,Me=o.length,ke=Math.abs((o[Me-1].x-o[0].x)*t._m)/(Me-1),ge=_e?ke/2:ke,ie=_e?t.ticklen:N*1.25*ae,Te=Math.sqrt(Math.pow(ge,2)+Math.pow(ie,2)),Ee=ge/Te,Ae=t.autotickangles.map(function(Ct){return Ct*Math.PI/180}),ze=Ae.find(function(Ct){return Math.abs(Math.cos(Ct))<=Ee});ze===void 0&&(ze=Ae.reduce(function(Ct,Yt){return Math.abs(Math.cos(Ct))<Math.abs(Math.cos(Yt))?Ct:Yt},Ae[0]));var Ce=ze*(180/Math.PI);if(_e){var me=2;for(t.ticks&&(me+=t.tickwidth/2),re=0;re<W.length;re++){var Re=o[re].xbnd,ce=W[re];if(Re[0]!==null&&ce.left-t.l2p(Re[0])<me||Re[1]!==null&&t.l2p(Re[1])-ce.right<me){v=Ce;break}}}else{var Ge=t.ticklabelposition||"",nt=function(Ct){return Ge.indexOf(Ct)!==-1},ct=nt("top"),qt=nt("left"),rt=nt("right"),ot=nt("bottom"),Rt=ot||qt||ct||rt,kt=Rt?(t.tickwidth||0)+2*wL:0;for(re=0;re<W.length-1;re++)if(Vo.bBoxIntersect(W[re],W[re+1],kt)){v=Ce;break}}v&&h(c,v)}}t._selections&&(t._selections[a]=c);var b=[d];t.automargin&&n._redrawFromAutoMarginCount&&u===90?(v=u,b.push(function(){h(c,u)})):b.push(x),t._tickAngles&&b.push(function(){t._tickAngles[a]=v===null?ph(l)?l:0:v});var p=function(){var N=0,W=0;return c.each(function(re,ae){var _e=oB(this),Me=_e.select(".text-math-group");if(Me.empty()){var ke;t._vals[ae]&&(ke=t._vals[ae].bb||Xp.bBox(_e.node()),t._vals[ae].bb=ke),N=Math.max(N,ke.width),W=Math.max(W,ke.height)}}),{labelsMaxW:N,labelsMaxH:W}},E=t._anchorAxis;if(E&&(E.autorange||E.insiderange)&&nM(t)&&!got(n,t._id)&&(n._insideTickLabelsUpdaterange||(n._insideTickLabelsUpdaterange={}),E.autorange&&(n._insideTickLabelsUpdaterange[E._name+".autorange"]=E.autorange,b.push(p)),E.insiderange)){var k=p(),A=t._id.charAt(0)==="y"?k.labelsMaxW:k.labelsMaxH;A+=2*wL,t.ticklabelposition==="inside"&&(A+=t.ticklen||0);var L=t.side==="right"||t.side==="top"?1:-1,_=L===1?1:0,C=L===1?0:1,M=[];M[C]=E.range[C];var g=E.range,P=E.r2p(g[_]),T=E.r2p(g[C]),F=n._insideTickLabelsUpdaterange[E._name+".range"];if(F){var q=E.r2p(F[_]),V=E.r2p(F[C]),H=L*(t._id.charAt(0)==="y"?1:-1);H*P<H*q&&(P=q,M[_]=g[_]=F[_]),H*T>H*V&&(T=V,M[C]=g[C]=F[C])}var X=Math.abs(T-P);X-A>0?(X-=A,A*=1+A/X):A=0,t._id.charAt(0)!=="y"&&(A=-A),M[_]=E.p2r(E.r2p(g[_])+L*A),E.autorange==="min"||E.autorange==="max reversed"?(M[0]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0):(E.autorange==="max"||E.autorange==="min reversed")&&(M[1]=null,E._rangeInitial0=void 0,E._rangeInitial1=void 0),n._insideTickLabelsUpdaterange[E._name+".range"]=M}var G=Vo.syncOrAsync(b);return G&&G.then&&e._promises.push(G),G};function Bot(e,t,r){var n=t._id+"divider",i=r.vals,a=r.layer.selectAll("path."+n).data(i,ML);a.exit().remove(),a.enter().insert("path",":first-child").classed(n,1).classed("crisp",1).call(eM.stroke,t.dividercolor).style("stroke-width",Xp.crispRound(e,t.dividerwidth,1)+"px"),a.attr("transform",r.transFn).attr("d",r.path)}kn.getPxPosition=function(e,t){var r=e._fullLayout._size,n=t._id.charAt(0),i=t.side,a;if(t.anchor!=="free"?a=t._anchorAxis:n==="x"?a={_offset:r.t+(1-(t.position||0))*r.h,_length:0}:n==="y"&&(a={_offset:r.l+(t.position||0)*r.w+t._shift,_length:0}),i==="top"||i==="left")return a._offset;if(i==="bottom"||i==="right")return a._offset+a._length};function fse(e){var t=e.title.font.size,r=(e.title.text.match(Eb.BR_TAG_ALL)||[]).length;return e.title.hasOwnProperty("standoff")?t*(Cb+r*rM):r?t*(r+1)*rM:t}function Not(e,t){var r=e._fullLayout,n=t._id,i=n.charAt(0),a=t.title.font.size,o,s=(t.title.text.match(Eb.BR_TAG_ALL)||[]).length;if(t.title.hasOwnProperty("standoff"))t.side==="bottom"||t.side==="right"?o=t._depth+t.title.standoff+a*Cb:(t.side==="top"||t.side==="left")&&(o=t._depth+t.title.standoff+a*($S+s*rM));else{var l=nM(t);if(t.type==="multicategory")o=t._depth;else{var u=1.5*a;l&&(u=.5*a,t.ticks==="outside"&&(u+=t.ticklen)),o=10+u+(t.linewidth?t.linewidth-1:0)}l||(i==="x"?o+=t.side==="top"?a*(t.showticklabels?1:0):a*(t.showticklabels?1.5:.5):o+=t.side==="right"?a*(t.showticklabels?1:.5):a*(t.showticklabels?.5:0))}var c=kn.getPxPosition(e,t),f,h,d;i==="x"?(h=t._offset+t._length/2,d=t.side==="top"?c-o:c+o):(d=t._offset+t._length/2,h=t.side==="right"?c+o:c-o,f={rotate:"-90",offset:0});var v;if(t.type!=="multicategory"){var x=t._selections[t._id+"tick"];if(v={selection:x,side:t.side},x&&x.node()&&x.node().parentNode){var b=Xp.getTranslate(x.node().parentNode);v.offsetLeft=b.x,v.offsetTop=b.y}t.title.hasOwnProperty("standoff")&&(v.pad=0)}return t._titleStandoff=o,oot.draw(e,n+"title",{propContainer:t,propName:t._name+".title.text",placeholder:r._dfltTitle[i],avoid:v,transform:f,attributes:{x:h,y:d,"text-anchor":"middle"}})}kn.shouldShowZeroLine=function(e,t,r){var n=Vo.simpleMap(t.range,t.r2l);return n[0]*n[1]<=0&&t.zeroline&&(t.type==="linear"||t.type==="-")&&!(t.rangebreaks&&t.maskBreaks(0)===AL)&&(_se(t,0)||!Uot(e,t,r,n)||Vot(e,t))};kn.clipEnds=function(e,t){return t.filter(function(r){return _se(e,r.x)})};function _se(e,t){var r=e.l2p(t);return r>1&&r<e._length-1}function Uot(e,t,r,n){var i=r._mainAxis;if(!i)return;var a=e._fullLayout,o=t._id.charAt(0),s=kn.counterLetter(t._id),l=t._offset+(Math.abs(n[0])<Math.abs(n[1])==(o==="x")?0:t._length);function u(v){if(!v.showline||!v.linewidth)return!1;var x=Math.max((v.linewidth+t.zerolinewidth)/2,1);function b(k){return typeof k=="number"&&Math.abs(k-l)<x}if(b(v._mainLinePosition)||b(v._mainMirrorPosition))return!0;var p=v._linepositions||{};for(var E in p)if(b(p[E][0])||b(p[E][1]))return!0}var c=a._plots[r._mainSubplot];if(!(c.mainplotinfo||c).overlays.length)return u(r,l);for(var f=kn.list(e,s),h=0;h<f.length;h++){var d=f[h];if(d._mainAxis===i&&u(d,l))return!0}}function Vot(e,t){for(var r=e._fullData,n=t._mainSubplot,i=t._id.charAt(0),a=0;a<r.length;a++){var o=r[a];if(o.visible===!0&&o.xaxis+o.yaxis===n&&(QS.traceIs(o,"bar-like")&&o.orientation==={x:"h",y:"v"}[i]||o.fill&&o.fill.charAt(o.fill.length-1)===i))return!0}return!1}function oB(e){var t=w0.select(e),r=t.select(".text-math-group");return r.empty()?t.select("text"):r}kn.allowAutoMargin=function(e){for(var t=kn.list(e,"",!0),r=0;r<t.length;r++){var n=t[r];n.automargin&&(P3.allowAutoMargin(e,cB(n)),n.mirror&&P3.allowAutoMargin(e,xse(n))),QS.getComponentMethod("rangeslider","isVisible")(n)&&P3.allowAutoMargin(e,bse(n))}};function cB(e){return e._id+".automargin"}function xse(e){return cB(e)+".mirror"}function bse(e){return e._id+".rangeslider"}kn.swap=function(e,t){for(var r=Hot(e,t),n=0;n<r.length;n++)Got(e,r[n].x,r[n].y)};function Hot(e,t){var r=[],n,i;for(n=0;n<t.length;n++){var a=[],o=e._fullData[t[n]].xaxis,s=e._fullData[t[n]].yaxis;if(!(!o||!s)){for(i=0;i<r.length;i++)(r[i].x.indexOf(o)!==-1||r[i].y.indexOf(s)!==-1)&&a.push(i);if(!a.length){r.push({x:[o],y:[s]});continue}var l=r[a[0]],u;if(a.length>1)for(i=1;i<a.length;i++)u=r[a[i]],gL(l.x,u.x),gL(l.y,u.y);gL(l.x,[o]),gL(l.y,[s])}}return r}function gL(e,t){for(var r=0;r<t.length;r++)e.indexOf(t[r])===-1&&e.push(t[r])}function Got(e,t,r){var n=[],i=[],a=e.layout,o,s;for(o=0;o<t.length;o++)n.push(kn.getFromId(e,t[o]));for(o=0;o<r.length;o++)i.push(kn.getFromId(e,r[o]));var l=Object.keys(sot),u=["anchor","domain","overlaying","position","side","tickangle","editType"],c=["linear","log"];for(o=0;o<l.length;o++){var f=l[o],h=n[0][f],d=i[0][f],v=!0,x=!1,b=!1;if(!(f.charAt(0)==="_"||typeof h=="function"||u.indexOf(f)!==-1)){for(s=1;s<n.length&&v;s++){var p=n[s][f];f==="type"&&c.indexOf(h)!==-1&&c.indexOf(p)!==-1&&h!==p?x=!0:p!==h&&(v=!1)}for(s=1;s<i.length&&v;s++){var E=i[s][f];f==="type"&&c.indexOf(d)!==-1&&c.indexOf(E)!==-1&&d!==E?b=!0:i[s][f]!==d&&(v=!1)}v&&(x&&(a[n[0]._name].type="linear"),b&&(a[i[0]._name].type="linear"),jot(a,f,n,i,e._fullLayout._dfltTitle))}}for(o=0;o<e._fullLayout.annotations.length;o++){var k=e._fullLayout.annotations[o];t.indexOf(k.xref)!==-1&&r.indexOf(k.yref)!==-1&&Vo.swapAttrs(a.annotations[o],["?"])}}function jot(e,t,r,n,i){var a=Vo.nestedProperty,o=a(e[r[0]._name],t).get(),s=a(e[n[0]._name],t).get(),l;for(t==="title"&&(o&&o.text===i.x&&(o.text=i.y),s&&s.text===i.y&&(s.text=i.x)),l=0;l<r.length;l++)a(e,r[l]._name+"."+t).set(s);for(l=0;l<n.length;l++)a(e,n[l]._name+"."+t).set(o)}function fB(e){return e._id==="angularaxis"}function eB(e,t){for(var r=t._rangebreaks.length,n=0;n<r;n++){var i=t._rangebreaks[n];if(e>=i.min&&e<i.max)return i.max}return e}function nM(e){return(e.ticklabelposition||"").indexOf("inside")!==-1}function EL(e,t){nM(e._anchorAxis||{})&&e._hideCounterAxisInsideTickLabels&&e._hideCounterAxisInsideTickLabels(t)}function sB(e,t,r,n){var i=e.anchor!=="free"&&(e.overlaying===void 0||e.overlaying===!1)?e._id:e.overlaying,a;n?a=e.side==="right"?t:-t:a=t,i in r||(r[i]={}),e.side in r[i]||(r[i][e.side]=0),r[i][e.side]+=a}function Wot(e,t){return e.autoshift?t[e.overlaying][e.side]:e.shift||0}function Zot(e,t){return/%f/.test(t)?e>=hot:/%L/.test(t)?e>=fot:/%[SX]/.test(t)?e>=bL:/%M/.test(t)?e>=tM:/%[HI]/.test(t)?e>=xm:/%p/.test(t)?e>=l_:/%[Aadejuwx]/.test(t)?e>=Fv:/%[UVW]/.test(t)?e>=Yp:/%[Bbm]/.test(t)?e>=xL:/%[q]/.test(t)?e>=_L:/%[Yy]/.test(t)?e>=yL:!0}});var hB=ye((Srr,Tse)=>{"use strict";Tse.exports=function(t,r,n){var i,a;if(n){var o=r==="reversed"||r==="min reversed"||r==="max reversed";i=n[o?1:0],a=n[o?0:1]}var s=t("autorangeoptions.minallowed",a===null?i:void 0),l=t("autorangeoptions.maxallowed",i===null?a:void 0);s===void 0&&t("autorangeoptions.clipmin"),l===void 0&&t("autorangeoptions.clipmax"),t("autorangeoptions.include")}});var dB=ye((Mrr,Ase)=>{"use strict";var Xot=hB();Ase.exports=function(t,r,n,i){var a=r._template||{},o=r.type||a.type||"-";n("minallowed"),n("maxallowed");var s=n("range");if(!s){var l;!i.noInsiderange&&o!=="log"&&(l=n("insiderange"),l&&(l[0]===null||l[1]===null)&&(r.insiderange=!1,l=void 0),l&&(s=n("range",l)))}var u=r.getAutorangeDflt(s,i),c=n("autorange",u),f;s&&(s[0]===null&&s[1]===null||(s[0]===null||s[1]===null)&&(c==="reversed"||c===!0)||s[0]!==null&&(c==="min"||c==="max reversed")||s[1]!==null&&(c==="max"||c==="min reversed"))&&(s=void 0,delete r.range,r.autorange=!0,f=!0),f||(u=r.getAutorangeDflt(s,i),c=n("autorange",u)),c&&(Xot(n,c,s),(o==="linear"||o==="-")&&n("rangemode")),r.cleanRange()}});var Mse=ye((Err,Sse)=>{var Yot={left:0,top:0};Sse.exports=Kot;function Kot(e,t,r){t=t||e.currentTarget||e.srcElement,Array.isArray(r)||(r=[0,0]);var n=e.clientX||0,i=e.clientY||0,a=Jot(t);return r[0]=n-a.left,r[1]=i-a.top,r}function Jot(e){return e===window||e===document||e===document.body?Yot:e.getBoundingClientRect()}});var kL=ye((krr,Ese)=>{"use strict";var $ot=Kq();function Qot(){var e=!1;try{var t=Object.defineProperty({},"passive",{get:function(){e=!0}});window.addEventListener("test",null,t),window.removeEventListener("test",null,t)}catch(r){e=!1}return e}Ese.exports=$ot&&Qot()});var Cse=ye((Crr,kse)=>{"use strict";kse.exports=function(t,r,n,i,a){var o=(t-n)/(i-n),s=o+r/(i-n),l=(o+s)/2;return a==="left"||a==="bottom"?o:a==="center"||a==="middle"?l:a==="right"||a==="top"?s:o<2/3-l?o:s>4/3-l?s:l}});var Ise=ye((Lrr,Pse)=>{"use strict";var Lse=Mr(),est=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];Pse.exports=function(t,r,n,i){return n==="left"?t=0:n==="center"?t=1:n==="right"?t=2:t=Lse.constrain(Math.floor(t*3),0,2),i==="bottom"?r=0:i==="middle"?r=1:i==="top"?r=2:r=Lse.constrain(Math.floor(r*3),0,2),est[r][t]}});var Dse=ye((Prr,Rse)=>{"use strict";var tst=g3(),rst=P6(),ist=DS().getGraphDiv,nst=IS(),vB=Rse.exports={};vB.wrapped=function(e,t,r){e=ist(e),e._fullLayout&&rst.clear(e._fullLayout._uid+nst.HOVERID),vB.raw(e,t,r)};vB.raw=function(t,r){var n=t._fullLayout,i=t._hoverdata;r||(r={}),!(r.target&&!t._dragged&&tst.triggerHandler(t,"plotly_beforehover",r)===!1)&&(n._hoverlayer.selectAll("g").remove(),n._hoverlayer.selectAll("line").remove(),n._hoverlayer.selectAll("circle").remove(),t._hoverdata=void 0,r.target&&i&&t.emit("plotly_unhover",{event:r,points:i}))}});var gv=ye((Irr,Ose)=>{"use strict";var ast=Mse(),pB=$q(),ost=kL(),sst=Mr().removeElement,lst=ad(),Lb=Ose.exports={};Lb.align=Cse();Lb.getCursor=Ise();var Fse=Dse();Lb.unhover=Fse.wrapped;Lb.unhoverRaw=Fse.raw;Lb.init=function(t){var r=t.gd,n=1,i=r._context.doubleClickDelay,a=t.element,o,s,l,u,c,f,h,d;r._mouseDownTime||(r._mouseDownTime=0),a.style.pointerEvents="all",a.onmousedown=b,ost?(a._ontouchstart&&a.removeEventListener("touchstart",a._ontouchstart),a._ontouchstart=b,a.addEventListener("touchstart",b,{passive:!1})):a.ontouchstart=b;function v(k,A,L){return Math.abs(k)<L&&(k=0),Math.abs(A)<L&&(A=0),[k,A]}var x=t.clampFn||v;function b(k){r._dragged=!1,r._dragging=!0;var A=zse(k);o=A[0],s=A[1],h=k.target,f=k,d=k.buttons===2||k.ctrlKey,typeof k.clientX=="undefined"&&typeof k.clientY=="undefined"&&(k.clientX=o,k.clientY=s),l=new Date().getTime(),l-r._mouseDownTime<i?n+=1:(n=1,r._mouseDownTime=l),t.prepFn&&t.prepFn(k,o,s),pB&&!d?(c=qse(),c.style.cursor=window.getComputedStyle(a).cursor):pB||(c=document,u=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(a).cursor),document.addEventListener("mouseup",E),document.addEventListener("touchend",E),t.dragmode!==!1&&(k.preventDefault(),document.addEventListener("mousemove",p),document.addEventListener("touchmove",p,{passive:!1}))}function p(k){k.preventDefault();var A=zse(k),L=t.minDrag||lst.MINDRAG,_=x(A[0]-o,A[1]-s,L),C=_[0],M=_[1];(C||M)&&(r._dragged=!0,Lb.unhover(r,k)),r._dragged&&t.moveFn&&!d&&(r._dragdata={element:a,dx:C,dy:M},t.moveFn(C,M))}function E(k){if(delete r._dragdata,t.dragmode!==!1&&(k.preventDefault(),document.removeEventListener("mousemove",p),document.removeEventListener("touchmove",p)),document.removeEventListener("mouseup",E),document.removeEventListener("touchend",E),pB?sst(c):u&&(c.documentElement.style.cursor=u,u=null),!r._dragging){r._dragged=!1;return}if(r._dragging=!1,new Date().getTime()-r._mouseDownTime>i&&(n=Math.max(n-1,1)),r._dragged)t.doneFn&&t.doneFn();else{var A;f.target===h?A=f:(A={target:h,srcElement:h,toElement:h},Object.keys(f).concat(Object.keys(f.__proto__)).forEach(L=>{var _=f[L];!A[L]&&typeof _!="function"&&(A[L]=_)})),t.clickFn&&t.clickFn(n,A),d||h.dispatchEvent(new MouseEvent("click",k))}r._dragging=!1,r._dragged=!1}};function qse(){var e=document.createElement("div");e.className="dragcover";var t=e.style;return t.position="fixed",t.left=0,t.right=0,t.top=0,t.bottom=0,t.zIndex=999999999,t.background="none",document.body.appendChild(e),e}Lb.coverSlip=qse;function zse(e){return ast(e.changedTouches?e.changedTouches[0]:e,document.body)}});var Tg=ye((Rrr,Bse)=>{"use strict";Bse.exports=function(t,r){(t.attr("class")||"").split(" ").forEach(function(n){n.indexOf("cursor-")===0&&t.classed(n,!1)}),r&&t.classed("cursor-"+r,!0)}});var Vse=ye((Drr,Use)=>{"use strict";var gB=Tg(),aM="data-savedcursor",Nse="!!";Use.exports=function(t,r){var n=t.attr(aM);if(r){if(!n){for(var i=(t.attr("class")||"").split(" "),a=0;a<i.length;a++){var o=i[a];o.indexOf("cursor-")===0&&t.attr(aM,o.substr(7)).classed(o,!1)}t.attr(aM)||t.attr(aM,Nse)}gB(t,r)}else n&&(t.attr(aM,null),n===Nse?gB(t):gB(t,n))}});var yB=ye((zrr,Hse)=>{"use strict";var mB=Su(),ust=dh();Hse.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:ust.defaultLine,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:mB({editType:"legend"}),grouptitlefont:mB({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:mB({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}});var LL=ye(CL=>{"use strict";CL.isGrouped=function(t){return(t.traceorder||"").indexOf("grouped")!==-1};CL.isVertical=function(t){return t.orientation!=="h"};CL.isReversed=function(t){return(t.traceorder||"").indexOf("reversed")!==-1}});var bB=ye((qrr,Gse)=>{"use strict";var _B=ba(),Kp=Mr(),cst=Vs(),fst=vl(),hst=yB(),dst=s3(),xB=LL();function vst(e,t,r,n){var i=t[e]||{},a=cst.newContainer(r,e);function o(G,N){return Kp.coerce(i,a,hst,G,N)}var s=Kp.coerceFont(o,"font",r.font);o("bgcolor",r.paper_bgcolor),o("bordercolor");var l=o("visible");if(l){for(var u,c=function(G,N){var W=u._input,re=u;return Kp.coerce(W,re,fst,G,N)},f=r.font||{},h=Kp.coerceFont(o,"grouptitlefont",f,{overrideDflt:{size:Math.round(f.size*1.1)}}),d=0,v=!1,x="normal",b=(r.shapes||[]).filter(function(G){return G.showlegend}),p=n.concat(b).filter(function(G){return e===(G.legend||"legend")}),E=0;E<p.length;E++)if(u=p[E],!!u.visible){var k=u._isShape;(u.showlegend||u._dfltShowLegend&&!(u._module&&u._module.attributes&&u._module.attributes.showlegend&&u._module.attributes.showlegend.dflt===!1))&&(d++,u.showlegend&&(v=!0,(!k&&_B.traceIs(u,"pie-like")||u._input.showlegend===!0)&&d++),Kp.coerceFont(c,"legendgrouptitle.font",h)),(!k&&_B.traceIs(u,"bar")&&r.barmode==="stack"||["tonextx","tonexty"].indexOf(u.fill)!==-1)&&(x=xB.isGrouped({traceorder:x})?"grouped+reversed":"reversed"),u.legendgroup!==void 0&&u.legendgroup!==""&&(x=xB.isReversed({traceorder:x})?"reversed+grouped":"grouped")}var A=Kp.coerce(t,r,dst,"showlegend",v&&d>(e==="legend"?1:0));if(A===!1&&(r[e]=void 0),!(A===!1&&!i.uirevision)&&(o("uirevision",r.uirevision),A!==!1)){o("borderwidth");var L=o("orientation"),_=o("yref"),C=o("xref"),M=L==="h",g=_==="paper",P=C==="paper",T,F,q,V="left";M?(T=0,_B.getComponentMethod("rangeslider","isVisible")(t.xaxis)?g?(F=1.1,q="bottom"):(F=1,q="top"):g?(F=-.1,q="top"):(F=0,q="bottom")):(F=1,q="auto",P?T=1.02:(T=1,V="right")),Kp.coerce(i,a,{x:{valType:"number",editType:"legend",min:P?-2:0,max:P?3:1,dflt:T}},"x"),Kp.coerce(i,a,{y:{valType:"number",editType:"legend",min:g?-2:0,max:g?3:1,dflt:F}},"y"),o("traceorder",x),xB.isGrouped(r[e])&&o("tracegroupgap"),o("entrywidth"),o("entrywidthmode"),o("indentation"),o("itemsizing"),o("itemwidth"),o("itemclick"),o("itemdoubleclick"),o("groupclick"),o("xanchor",V),o("yanchor",q),o("valign"),Kp.noneOrAll(i,a,["x","y"]);var H=o("title.text");if(H){o("title.side",M?"left":"top");var X=Kp.extendFlat({},s,{size:Kp.bigFont(s.size)});Kp.coerceFont(o,"title.font",X)}}}}Gse.exports=function(t,r,n){var i,a=n.slice(),o=r.shapes;if(o)for(i=0;i<o.length;i++){var s=o[i];if(s.showlegend){var l={_input:s._input,visible:s.visible,showlegend:s.showlegend,legend:s.legend};a.push(l)}}var u=["legend"];for(i=0;i<a.length;i++)Kp.pushUnique(u,a[i].legend);for(r._legends=[],i=0;i<u.length;i++){var c=u[i];vst(c,t,r,a),r[c]&&r[c].visible&&(r[c]._id=c),r._legends.push(c)}}});var Wse=ye((Orr,jse)=>{"use strict";var D3=ba(),TB=Mr(),pst=TB.pushUnique,wB=!0;jse.exports=function(t,r,n){var i=r._fullLayout;if(r._dragged||r._editing)return;var a=i.legend.itemclick,o=i.legend.itemdoubleclick,s=i.legend.groupclick;n===1&&a==="toggle"&&o==="toggleothers"&&wB&&r.data&&r._context.showTips&&TB.notifier(TB._(r,"Double-click on legend to isolate one trace"),"long"),wB=!1;var l;if(n===1?l=a:n===2&&(l=o),!l)return;var u=s==="togglegroup",c=i.hiddenlabels?i.hiddenlabels.slice():[],f=t.data()[0][0];if(f.groupTitle&&f.noClick)return;var h=r._fullData,d=(i.shapes||[]).filter(function(Rt){return Rt.showlegend}),v=h.concat(d),x=f.trace;x._isShape&&(x=x._fullInput);var b=x.legendgroup,p,E,k,A,L,_,C={},M=[],g=[],P=[];function T(Rt,kt){var Ct=M.indexOf(Rt),Yt=C.visible;return Yt||(Yt=C.visible=[]),M.indexOf(Rt)===-1&&(M.push(Rt),Ct=M.length-1),Yt[Ct]=kt,Ct}var F=(i.shapes||[]).map(function(Rt){return Rt._input}),q=!1;function V(Rt,kt){F[Rt].visible=kt,q=!0}function H(Rt,kt){if(!(f.groupTitle&&!u)){var Ct=Rt._fullInput||Rt,Yt=Ct._isShape,xr=Ct.index;xr===void 0&&(xr=Ct._index);var er=Ct.visible===!1?!1:kt;Yt?V(xr,er):T(xr,er)}}var X=x.legend,G=x._fullInput,N=G&&G._isShape;if(!N&&D3.traceIs(x,"pie-like")){var W=f.label,re=c.indexOf(W);if(l==="toggle")re===-1?c.push(W):c.splice(re,1);else if(l==="toggleothers"){var ae=re!==-1,_e=[];for(p=0;p<r.calcdata.length;p++){var Me=r.calcdata[p];for(E=0;E<Me.length;E++){var ke=Me[E],ge=ke.label;X===Me[0].trace.legend&&W!==ge&&(c.indexOf(ge)===-1&&(ae=!0),pst(c,ge),_e.push(ge))}}if(!ae)for(var ie=0;ie<_e.length;ie++){var Te=c.indexOf(_e[ie]);Te!==-1&&c.splice(Te,1)}}D3.call("_guiRelayout",r,"hiddenlabels",c)}else{var Ee=b&&b.length,Ae=[],ze;if(Ee)for(p=0;p<v.length;p++)ze=v[p],ze.visible&&ze.legendgroup===b&&Ae.push(p);if(l==="toggle"){var Ce;switch(x.visible){case!0:Ce="legendonly";break;case!1:Ce=!1;break;case"legendonly":Ce=!0;break}if(Ee)if(u)for(p=0;p<v.length;p++){var me=v[p];me.visible!==!1&&me.legendgroup===b&&H(me,Ce)}else H(x,Ce);else H(x,Ce)}else if(l==="toggleothers"){var Re,ce,Ge,nt,ct,qt=!0;for(p=0;p<v.length;p++)if(ct=v[p],Re=ct===x,Ge=ct.showlegend!==!0,!(Re||Ge)&&(ce=Ee&&ct.legendgroup===b,!ce&&ct.legend===X&&ct.visible===!0&&!D3.traceIs(ct,"notLegendIsolatable"))){qt=!1;break}for(p=0;p<v.length;p++)if(ct=v[p],!(ct.visible===!1||ct.legend!==X)&&!D3.traceIs(ct,"notLegendIsolatable"))switch(x.visible){case"legendonly":H(ct,!0);break;case!0:nt=qt?!0:"legendonly",Re=ct===x,Ge=ct.showlegend!==!0&&!ct.legendgroup,ce=Re||Ee&&ct.legendgroup===b,H(ct,ce||Ge?!0:nt);break}}for(p=0;p<g.length;p++)if(k=g[p],!!k){var rt=k.constructUpdate(),ot=Object.keys(rt);for(E=0;E<ot.length;E++)A=ot[E],_=C[A]=C[A]||[],_[P[p]]=rt[A]}for(L=Object.keys(C),p=0;p<L.length;p++)for(A=L[p],E=0;E<M.length;E++)C[A].hasOwnProperty(E)||(C[A][E]=void 0);q?D3.call("_guiUpdate",r,C,{shapes:F},M):D3.call("_guiRestyle",r,C,M)}}});var AB=ye((Brr,Zse)=>{"use strict";Zse.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}});var Kse=ye((Nrr,Yse)=>{"use strict";var Xse=ba(),SB=LL();Yse.exports=function(t,r,n){var i=r._inHover,a=SB.isGrouped(r),o=SB.isReversed(r),s={},l=[],u=!1,c={},f=0,h=0,d,v;function x(G,N,W){if(r.visible!==!1&&!(n&&G!==r._id))if(N===""||!SB.isGrouped(r)){var re="~~i"+f;l.push(re),s[re]=[W],f++}else l.indexOf(N)===-1?(l.push(N),u=!0,s[N]=[W]):s[N].push(W)}for(d=0;d<t.length;d++){var b=t[d],p=b[0],E=p.trace,k=E.legend,A=E.legendgroup;if(!(!i&&(!E.visible||!E.showlegend)))if(Xse.traceIs(E,"pie-like"))for(c[A]||(c[A]={}),v=0;v<b.length;v++){var L=b[v].label;c[A][L]||(x(k,A,{label:L,color:b[v].color,i:b[v].i,trace:E,pts:b[v].pts}),c[A][L]=!0,h=Math.max(h,(L||"").length))}else x(k,A,p),h=Math.max(h,(E.name||"").length)}if(!l.length)return[];var _=!u||!a,C=[];for(d=0;d<l.length;d++){var M=s[l[d]];_?C.push(M[0]):C.push(M)}for(_&&(C=[C]),d=0;d<C.length;d++){var g=1/0;for(v=0;v<C[d].length;v++){var P=C[d][v].trace.legendrank;g>P&&(g=P)}C[d][0]._groupMinRank=g,C[d][0]._preGroupSort=d}var T=function(G,N){return G[0]._groupMinRank-N[0]._groupMinRank||G[0]._preGroupSort-N[0]._preGroupSort},F=function(G,N){return G.trace.legendrank-N.trace.legendrank||G._preSort-N._preSort};for(C.forEach(function(G,N){G[0]._preGroupSort=N}),C.sort(T),d=0;d<C.length;d++){C[d].forEach(function(G,N){G._preSort=N}),C[d].sort(F);var q=C[d][0].trace,V=null;for(v=0;v<C[d].length;v++){var H=C[d][v].trace.legendgrouptitle;if(H&&H.text){V=H,i&&(H.font=r._groupTitleFont);break}}if(o&&C[d].reverse(),V){var X=!1;for(v=0;v<C[d].length;v++)if(Xse.traceIs(C[d][v].trace,"pie-like")){X=!0;break}C[d].unshift({i:-1,groupTitle:V,noClick:X,trace:{showlegend:q.showlegend,legendgroup:q.legendgroup,visible:r.groupclick==="toggleitem"?!0:q.visible}})}for(v=0;v<C[d].length;v++)C[d][v]=[C[d][v]]}return r._lgroupsLength=C.length,r._maxNameLength=h,C}});var u_=ye(Pb=>{"use strict";var PL=Mr();function Jse(e){return e.indexOf("e")!==-1?e.replace(/[.]?0+e/,"e"):e.indexOf(".")!==-1?e.replace(/[.]?0+$/,""):e}Pb.formatPiePercent=function(t,r){var n=Jse((t*100).toPrecision(3));return PL.numSeparate(n,r)+"%"};Pb.formatPieValue=function(t,r){var n=Jse(t.toPrecision(10));return PL.numSeparate(n,r)};Pb.getFirstFilled=function(t,r){if(PL.isArrayOrTypedArray(t))for(var n=0;n<r.length;n++){var i=t[r[n]];if(i||i===0||i==="")return i}};Pb.castOption=function(t,r){if(PL.isArrayOrTypedArray(t))return Pb.getFirstFilled(t,r);if(t)return t};Pb.getRotationAngle=function(e){return(e==="auto"?0:e)*Math.PI/180}});var Qse=ye((Vrr,$se)=>{"use strict";var gst=ao(),mst=va();$se.exports=function(t,r,n,i){var a=n.marker.pattern;a&&a.shape?gst.pointStyle(t,n,i,r):mst.fill(t,r.color)}});var z3=ye((Hrr,rle)=>{"use strict";var ele=va(),tle=u_().castOption,yst=Qse();rle.exports=function(t,r,n,i){var a=n.marker.line,o=tle(a.color,r.pts)||ele.defaultLine,s=tle(a.width,r.pts)||0;t.call(yst,r,n,i).style("stroke-width",s).call(ele.stroke,o)}});var CB=ye((Grr,lle)=>{"use strict";var qv=xa(),MB=ba(),mv=Mr(),ile=mv.strTranslate,ip=ao(),T0=va(),EB=Dv().extractOpts,IL=lu(),_st=z3(),xst=u_().castOption,bst=AB(),nle=12,ale=5,Ib=2,wst=10,F3=5;lle.exports=function(t,r,n){var i=r._fullLayout;n||(n=i.legend);var a=n.itemsizing==="constant",o=n.itemwidth,s=(o+bst.itemGap*2)/2,l=ile(s,0),u=function(C,M,g,P){var T;if(C+1)T=C;else if(M&&M.width>0)T=M.width;else return 0;return a?P:Math.min(T,g)};t.each(function(C){var M=qv.select(this),g=mv.ensureSingle(M,"g","layers");g.style("opacity",C[0].trace.opacity);var P=n.indentation,T=n.valign,F=C[0].lineHeight,q=C[0].height;if(T==="middle"&&P===0||!F||!q)g.attr("transform",null);else{var V={top:1,bottom:-1}[T],H=V*(.5*(F-q+3))||0,X=n.indentation;g.attr("transform",ile(X,H))}var G=g.selectAll("g.legendfill").data([C]);G.enter().append("g").classed("legendfill",!0);var N=g.selectAll("g.legendlines").data([C]);N.enter().append("g").classed("legendlines",!0);var W=g.selectAll("g.legendsymbols").data([C]);W.enter().append("g").classed("legendsymbols",!0),W.selectAll("g.legendpoints").data([C]).enter().append("g").classed("legendpoints",!0)}).each(_).each(h).each(v).each(d).each(b).each(A).each(k).each(c).each(f).each(p).each(E);function c(C){var M=ole(C),g=M.showFill,P=M.showLine,T=M.showGradientLine,F=M.showGradientFill,q=M.anyFill,V=M.anyLine,H=C[0],X=H.trace,G,N,W=EB(X),re=W.colorscale,ae=W.reversescale,_e=function(Ae){if(Ae.size())if(g)ip.fillGroupStyle(Ae,r,!0);else{var ze="legendfill-"+X.uid;ip.gradient(Ae,r,ze,kB(ae),re,"fill")}},Me=function(Ae){if(Ae.size()){var ze="legendline-"+X.uid;ip.lineGroupStyle(Ae),ip.gradient(Ae,r,ze,kB(ae),re,"stroke")}},ke=IL.hasMarkers(X)||!q?"M5,0":V?"M5,-2":"M5,-3",ge=qv.select(this),ie=ge.select(".legendfill").selectAll("path").data(g||F?[C]:[]);if(ie.enter().append("path").classed("js-fill",!0),ie.exit().remove(),ie.attr("d",ke+"h"+o+"v6h-"+o+"z").call(_e),P||T){var Te=u(void 0,X.line,wst,ale);N=mv.minExtend(X,{line:{width:Te}}),G=[mv.minExtend(H,{trace:N})]}var Ee=ge.select(".legendlines").selectAll("path").data(P||T?[G]:[]);Ee.enter().append("path").classed("js-line",!0),Ee.exit().remove(),Ee.attr("d",ke+(T?"l"+o+",0.0001":"h"+o)).call(P?ip.lineGroupStyle:Me)}function f(C){var M=ole(C),g=M.anyFill,P=M.anyLine,T=M.showLine,F=M.showMarker,q=C[0],V=q.trace,H=!F&&!P&&!g&&IL.hasText(V),X,G;function N(ie,Te,Ee,Ae){var ze=mv.nestedProperty(V,ie).get(),Ce=mv.isArrayOrTypedArray(ze)&&Te?Te(ze):ze;if(a&&Ce&&Ae!==void 0&&(Ce=Ae),Ee){if(Ce<Ee[0])return Ee[0];if(Ce>Ee[1])return Ee[1]}return Ce}function W(ie){return q._distinct&&q.index&&ie[q.index]?ie[q.index]:ie[0]}if(F||H||T){var re={},ae={};if(F){re.mc=N("marker.color",W),re.mx=N("marker.symbol",W),re.mo=N("marker.opacity",mv.mean,[.2,1]),re.mlc=N("marker.line.color",W),re.mlw=N("marker.line.width",mv.mean,[0,5],Ib),ae.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var _e=N("marker.size",mv.mean,[2,16],nle);re.ms=_e,ae.marker.size=_e}T&&(ae.line={width:N("line.width",W,[0,10],ale)}),H&&(re.tx="Aa",re.tp=N("textposition",W),re.ts=10,re.tc=N("textfont.color",W),re.tf=N("textfont.family",W),re.tw=N("textfont.weight",W),re.ty=N("textfont.style",W),re.tv=N("textfont.variant",W),re.tC=N("textfont.textcase",W),re.tE=N("textfont.lineposition",W),re.tS=N("textfont.shadow",W)),X=[mv.minExtend(q,re)],G=mv.minExtend(V,ae),G.selectedpoints=null,G.texttemplate=null}var Me=qv.select(this).select("g.legendpoints"),ke=Me.selectAll("path.scatterpts").data(F?X:[]);ke.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",l),ke.exit().remove(),ke.call(ip.pointStyle,G,r),F&&(X[0].mrc=3);var ge=Me.selectAll("g.pointtext").data(H?X:[]);ge.enter().append("g").classed("pointtext",!0).append("text").attr("transform",l),ge.exit().remove(),ge.selectAll("text").call(ip.textPointStyle,G,r)}function h(C){var M=C[0].trace,g=M.type==="waterfall";if(C[0]._distinct&&g){var P=C[0].trace[C[0].dir].marker;return C[0].mc=P.color,C[0].mlw=P.line.width,C[0].mlc=P.line.color,x(C,this,"waterfall")}var T=[];M.visible&&g&&(T=C[0].hasTotals?[["increasing","M-6,-6V6H0Z"],["totals","M6,6H0L-6,-6H-0Z"],["decreasing","M6,6V-6H0Z"]]:[["increasing","M-6,-6V6H6Z"],["decreasing","M6,6V-6H-6Z"]]);var F=qv.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(T);F.enter().append("path").classed("legendwaterfall",!0).attr("transform",l).style("stroke-miterlimit",1),F.exit().remove(),F.each(function(q){var V=qv.select(this),H=M[q[0]].marker,X=u(void 0,H.line,F3,Ib);V.attr("d",q[1]).style("stroke-width",X+"px").call(T0.fill,H.color),X&&V.call(T0.stroke,H.line.color)})}function d(C){x(C,this)}function v(C){x(C,this,"funnel")}function x(C,M,g){var P=C[0].trace,T=P.marker||{},F=T.line||{},q=T.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",V=g?P.visible&&P.type===g:MB.traceIs(P,"bar"),H=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(V?[C]:[]);H.enter().append("path").classed("legend"+g,!0).attr("d",q).attr("transform",l),H.exit().remove(),H.each(function(X){var G=qv.select(this),N=X[0],W=u(N.mlw,T.line,F3,Ib);G.style("stroke-width",W+"px");var re=N.mcc;if(!n._inHover&&"mc"in N){var ae=EB(T),_e=ae.mid;_e===void 0&&(_e=(ae.max+ae.min)/2),re=ip.tryColorscale(T,"")(_e)}var Me=re||N.mc||T.color,ke=T.pattern,ge=ke&&ip.getPatternAttr(ke.shape,0,"");if(ge){var ie=ip.getPatternAttr(ke.bgcolor,0,null),Te=ip.getPatternAttr(ke.fgcolor,0,null),Ee=ke.fgopacity,Ae=sle(ke.size,8,10),ze=sle(ke.solidity,.5,1),Ce="legend-"+P.uid;G.call(ip.pattern,"legend",r,Ce,ge,Ae,ze,re,ke.fillmode,ie,Te,Ee)}else G.call(T0.fill,Me);W&&T0.stroke(G,N.mlc||F.color)})}function b(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendbox").data(M.visible&&MB.traceIs(M,"box-violin")?[C]:[]);g.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),g.exit().remove(),g.each(function(){var P=qv.select(this);if((M.boxpoints==="all"||M.points==="all")&&T0.opacity(M.fillcolor)===0&&T0.opacity((M.line||{}).color)===0){var T=mv.minExtend(M,{marker:{size:a?nle:mv.constrain(M.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});g.call(ip.pointStyle,T,r)}else{var F=u(void 0,M.line,F3,Ib);P.style("stroke-width",F+"px").call(T0.fill,M.fillcolor),F&&T0.stroke(P,M.line.color)}})}function p(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendcandle").data(M.visible&&M.type==="candlestick"?[C,C]:[]);g.enter().append("path").classed("legendcandle",!0).attr("d",function(P,T){return T?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var F=qv.select(this),q=M[T?"increasing":"decreasing"],V=u(void 0,q.line,F3,Ib);F.style("stroke-width",V+"px").call(T0.fill,q.fillcolor),V&&T0.stroke(F,q.line.color)})}function E(C){var M=C[0].trace,g=qv.select(this).select("g.legendpoints").selectAll("path.legendohlc").data(M.visible&&M.type==="ohlc"?[C,C]:[]);g.enter().append("path").classed("legendohlc",!0).attr("d",function(P,T){return T?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",l).style("stroke-miterlimit",1),g.exit().remove(),g.each(function(P,T){var F=qv.select(this),q=M[T?"increasing":"decreasing"],V=u(void 0,q.line,F3,Ib);F.style("fill","none").call(ip.dashLine,q.line.dash,V),V&&T0.stroke(F,q.line.color)})}function k(C){L(C,this,"pie")}function A(C){L(C,this,"funnelarea")}function L(C,M,g){var P=C[0],T=P.trace,F=g?T.visible&&T.type===g:MB.traceIs(T,g),q=qv.select(M).select("g.legendpoints").selectAll("path.legend"+g).data(F?[C]:[]);if(q.enter().append("path").classed("legend"+g,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",l),q.exit().remove(),q.size()){var V=T.marker||{},H=u(xst(V.line.width,P.pts),V.line,F3,Ib),X="pieLike",G=mv.minExtend(T,{marker:{line:{width:H}}},X),N=mv.minExtend(P,{trace:G},X);_st(q,N,G,r)}}function _(C){var M=C[0].trace,g,P=[];if(M.visible)switch(M.type){case"histogram2d":case"heatmap":P=[["M-15,-2V4H15V-2Z"]],g=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":P=[["M-6,-6V6H6V-6Z"]],g=!0;break;case"densitymapbox":case"densitymap":P=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],g="radial";break;case"cone":P=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],g=!1;break;case"streamtube":P=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],g=!1;break;case"surface":P=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],g=!0;break;case"mesh3d":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!1;break;case"volume":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],g=!0;break;case"isosurface":P=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],g=!1;break}var T=qv.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(P);T.enter().append("path").classed("legend3dandfriends",!0).attr("transform",l).style("stroke-miterlimit",1),T.exit().remove(),T.each(function(F,q){var V=qv.select(this),H=EB(M),X=H.colorscale,G=H.reversescale,N=function(_e){if(_e.size()){var Me="legendfill-"+M.uid;ip.gradient(_e,r,Me,kB(G,g==="radial"),X,"fill")}},W;if(X){if(!g){var ae=X.length;W=q===0?X[G?ae-1:0][1]:q===1?X[G?0:ae-1][1]:X[Math.floor((ae-1)/2)][1]}}else{var re=M.vertexcolor||M.facecolor||M.color;W=mv.isArrayOrTypedArray(re)?re[q]||re[0]:re}V.attr("d",F[0]),W?V.call(T0.fill,W):V.call(N)})}};function kB(e,t){var r=t?"radial":"horizontal";return r+(e?"":"reversed")}function ole(e){var t=e[0].trace,r=t.contours,n=IL.hasLines(t),i=IL.hasMarkers(t),a=t.visible&&t.fill&&t.fill!=="none",o=!1,s=!1;if(r){var l=r.coloring;l==="lines"?o=!0:n=l==="none"||l==="heatmap"||r.showlines,r.type==="constraint"?a=r._operation!=="=":(l==="fill"||l==="heatmap")&&(s=!0)}return{showMarker:i,showLine:n,showFill:a,showGradientLine:o,showGradientFill:s,anyLine:n||o,anyFill:a||s}}function sle(e,t,r){return e&&mv.isArrayOrTypedArray(e)?t:e>r?r:e}});var RB=ye((jrr,yle)=>{"use strict";var Sp=xa(),gh=Mr(),PB=Xu(),B3=ba(),ule=g3(),LB=gv(),mh=ao(),DL=va(),Rb=Pl(),cle=Wse(),Vh=AB(),IB=Nh(),gle=IB.LINE_SPACING,O3=IB.FROM_TL,fle=IB.FROM_BR,hle=Kse(),Tst=CB(),dle=LL(),q3=1,Ast=/^legend[0-9]*$/;yle.exports=function(t,r){if(r)vle(t,r);else{var n=t._fullLayout,i=n._legends,a=n._infolayer.selectAll('[class^="legend"]');a.each(function(){var u=Sp.select(this),c=u.attr("class"),f=c.split(" ")[0];f.match(Ast)&&i.indexOf(f)===-1&&u.remove()});for(var o=0;o<i.length;o++){var s=i[o],l=t._fullLayout[s];vle(t,l)}}};function Sst(e,t,r){if(!(t.title.side!=="top center"&&t.title.side!=="top right")){var n=t.title.font,i=n.size*gle,a=0,o=e.node(),s=mh.bBox(o).width;t.title.side==="top center"?a=.5*(t._width-2*r-2*Vh.titlePad-s):t.title.side==="top right"&&(a=t._width-2*r-2*Vh.titlePad-s),Rb.positionText(e,r+Vh.titlePad+a,r+i)}}function vle(e,t){var r=t||{},n=e._fullLayout,i=OL(r),a,o,s=r._inHover;if(s?(o=r.layer,a="hover"):(o=n._infolayer,a=i),!!o){a+=n._uid,e._legendMouseDownTime||(e._legendMouseDownTime=0);var l;if(s){if(!r.entries)return;l=hle(r.entries,r)}else{for(var u=(e.calcdata||[]).slice(),c=n.shapes,f=0;f<c.length;f++){var h=c[f];if(h.showlegend){var d={_isShape:!0,_fullInput:h,index:h._index,name:h.name||h.label.text||"shape "+h._index,legend:h.legend,legendgroup:h.legendgroup,legendgrouptitle:h.legendgrouptitle,legendrank:h.legendrank,legendwidth:h.legendwidth,showlegend:h.showlegend,visible:h.visible,opacity:h.opacity,mode:h.type==="line"?"lines":"markers",line:h.line,marker:{line:h.line,color:h.fillcolor,size:12,symbol:h.type==="rect"?"square":h.type==="circle"?"circle":"hexagon2"}};u.push([{trace:d}])}}l=n.showlegend&&hle(u,r,n._legends.length>1)}var v=n.hiddenlabels||[];if(!s&&(!n.showlegend||!l.length))return o.selectAll("."+i).remove(),n._topdefs.select("#"+a).remove(),PB.autoMargin(e,i);var x=gh.ensureSingle(o,"g",i,function(M){s||M.attr("pointer-events","all")}),b=gh.ensureSingleById(n._topdefs,"clipPath",a,function(M){M.append("rect")}),p=gh.ensureSingle(x,"rect","bg",function(M){M.attr("shape-rendering","crispEdges")});p.call(DL.stroke,r.bordercolor).call(DL.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px");var E=gh.ensureSingle(x,"g","scrollbox"),k=r.title;r._titleWidth=0,r._titleHeight=0;var A;k.text?(A=gh.ensureSingle(E,"text",i+"titletext"),A.attr("text-anchor","start").call(mh.font,k.font).text(k.text),zL(A,E,e,r,q3)):E.selectAll("."+i+"titletext").remove();var L=gh.ensureSingle(x,"rect","scrollbar",function(M){M.attr(Vh.scrollBarEnterAttrs).call(DL.fill,Vh.scrollBarColor)}),_=E.selectAll("g.groups").data(l);_.enter().append("g").attr("class","groups"),_.exit().remove();var C=_.selectAll("g.traces").data(gh.identity);C.enter().append("g").attr("class","traces"),C.exit().remove(),C.style("opacity",function(M){var g=M[0].trace;return B3.traceIs(g,"pie-like")?v.indexOf(M[0].label)!==-1?.5:1:g.visible==="legendonly"?.5:1}).each(function(){Sp.select(this).call(Mst,e,r)}).call(Tst,e,r).each(function(){s||Sp.select(this).call(Est,e,i)}),gh.syncOrAsync([PB.previousPromises,function(){return Lst(e,_,C,r)},function(){var M=n._size,g=r.borderwidth,P=r.xref==="paper",T=r.yref==="paper";if(k.text&&Sst(A,r,g),!s){var F,q;P?F=M.l+M.w*r.x-O3[FL(r)]*r._width:F=n.width*r.x-O3[FL(r)]*r._width,T?q=M.t+M.h*(1-r.y)-O3[qL(r)]*r._effHeight:q=n.height*(1-r.y)-O3[qL(r)]*r._effHeight;var V=Pst(e,i,F,q);if(V)return;if(n.margin.autoexpand){var H=F,X=q;F=P?gh.constrain(F,0,n.width-r._width):H,q=T?gh.constrain(q,0,n.height-r._effHeight):X,F!==H&&gh.log("Constrain "+i+".x to make legend fit inside graph"),q!==X&&gh.log("Constrain "+i+".y to make legend fit inside graph")}mh.setTranslate(x,F,q)}if(L.on(".drag",null),x.on("wheel",null),s||r._height<=r._maxHeight||e._context.staticPlot){var G=r._effHeight;s&&(G=r._height),p.attr({width:r._width-g,height:G-g,x:g/2,y:g/2}),mh.setTranslate(E,0,0),b.select("rect").attr({width:r._width-2*g,height:G-2*g,x:g,y:g}),mh.setClipUrl(E,a,e),mh.setRect(L,0,0,0,0),delete r._scrollY}else{var N=Math.max(Vh.scrollBarMinHeight,r._effHeight*r._effHeight/r._height),W=r._effHeight-N-2*Vh.scrollBarMargin,re=r._height-r._effHeight,ae=W/re,_e=Math.min(r._scrollY||0,re);p.attr({width:r._width-2*g+Vh.scrollBarWidth+Vh.scrollBarMargin,height:r._effHeight-g,x:g/2,y:g/2}),b.select("rect").attr({width:r._width-2*g+Vh.scrollBarWidth+Vh.scrollBarMargin,height:r._effHeight-2*g,x:g,y:g+_e}),mh.setClipUrl(E,a,e),ze(_e,N,ae),x.on("wheel",function(){_e=gh.constrain(r._scrollY+Sp.event.deltaY/W*re,0,re),ze(_e,N,ae),_e!==0&&_e!==re&&Sp.event.preventDefault()});var Me,ke,ge,ie=function(Ge,nt,ct){var qt=(ct-nt)/ae+Ge;return gh.constrain(qt,0,re)},Te=function(Ge,nt,ct){var qt=(nt-ct)/ae+Ge;return gh.constrain(qt,0,re)},Ee=Sp.behavior.drag().on("dragstart",function(){var Ge=Sp.event.sourceEvent;Ge.type==="touchstart"?Me=Ge.changedTouches[0].clientY:Me=Ge.clientY,ge=_e}).on("drag",function(){var Ge=Sp.event.sourceEvent;Ge.buttons===2||Ge.ctrlKey||(Ge.type==="touchmove"?ke=Ge.changedTouches[0].clientY:ke=Ge.clientY,_e=ie(ge,Me,ke),ze(_e,N,ae))});L.call(Ee);var Ae=Sp.behavior.drag().on("dragstart",function(){var Ge=Sp.event.sourceEvent;Ge.type==="touchstart"&&(Me=Ge.changedTouches[0].clientY,ge=_e)}).on("drag",function(){var Ge=Sp.event.sourceEvent;Ge.type==="touchmove"&&(ke=Ge.changedTouches[0].clientY,_e=Te(ge,Me,ke),ze(_e,N,ae))});E.call(Ae)}function ze(Ge,nt,ct){r._scrollY=e._fullLayout[i]._scrollY=Ge,mh.setTranslate(E,0,-Ge),mh.setRect(L,r._width,Vh.scrollBarMargin+Ge*ct,Vh.scrollBarWidth,nt),b.select("rect").attr("y",g+Ge)}if(e._context.edits.legendPosition){var Ce,me,Re,ce;x.classed("cursor-move",!0),LB.init({element:x.node(),gd:e,prepFn:function(Ge){if(Ge.target!==L.node()){var nt=mh.getTranslate(x);Re=nt.x,ce=nt.y}},moveFn:function(Ge,nt){if(Re!==void 0&&ce!==void 0){var ct=Re+Ge,qt=ce+nt;mh.setTranslate(x,ct,qt),Ce=LB.align(ct,r._width,M.l,M.l+M.w,r.xanchor),me=LB.align(qt+r._height,-r._height,M.t+M.h,M.t,r.yanchor)}},doneFn:function(){if(Ce!==void 0&&me!==void 0){var Ge={};Ge[i+".x"]=Ce,Ge[i+".y"]=me,B3.call("_guiRelayout",e,Ge)}},clickFn:function(Ge,nt){var ct=o.selectAll("g.traces").filter(function(){var qt=this.getBoundingClientRect();return nt.clientX>=qt.left&&nt.clientX<=qt.right&&nt.clientY>=qt.top&&nt.clientY<=qt.bottom});ct.size()>0&&mle(e,x,ct,Ge,nt)}})}}],e)}}function RL(e,t,r){var n=e[0],i=n.width,a=t.entrywidthmode,o=n.trace.legendwidth||t.entrywidth;return a==="fraction"?t._maxWidth*o:r+(o||i)}function mle(e,t,r,n,i){var a=r.data()[0][0].trace,o={event:i,node:r.node(),curveNumber:a.index,expandedIndex:a.index,data:e.data,layout:e.layout,frames:e._transitionData._frames,config:e._context,fullData:e._fullData,fullLayout:e._fullLayout};a._group&&(o.group=a._group),B3.traceIs(a,"pie-like")&&(o.label=r.datum()[0].label);var s=ule.triggerHandler(e,"plotly_legendclick",o);if(n===1){if(s===!1)return;t._clickTimeout=setTimeout(function(){e._fullLayout&&cle(r,e,n)},e._context.doubleClickDelay)}else if(n===2){t._clickTimeout&&clearTimeout(t._clickTimeout),e._legendMouseDownTime=0;var l=ule.triggerHandler(e,"plotly_legenddoubleclick",o);l!==!1&&s!==!1&&cle(r,e,n)}}function Mst(e,t,r){var n=OL(r),i=e.data()[0][0],a=i.trace,o=B3.traceIs(a,"pie-like"),s=!r._inHover&&t._context.edits.legendText&&!o,l=r._maxNameLength,u,c;i.groupTitle?(u=i.groupTitle.text,c=i.groupTitle.font):(c=r.font,r.entries?u=i.text:(u=o?i.label:a.name,a._meta&&(u=gh.templateString(u,a._meta))));var f=gh.ensureSingle(e,"text",n+"text");f.attr("text-anchor","start").call(mh.font,c).text(s?ple(u,l):u);var h=r.indentation+r.itemwidth+Vh.itemGap*2;Rb.positionText(f,h,0),s?f.call(Rb.makeEditable,{gd:t,text:u}).call(zL,e,t,r).on("edit",function(d){this.text(ple(d,l)).call(zL,e,t,r);var v=i.trace._fullInput||{},x={};return x.name=d,v._isShape?B3.call("_guiRelayout",t,"shapes["+a.index+"].name",x.name):B3.call("_guiRestyle",t,x,a.index)}):zL(f,e,t,r)}function ple(e,t){var r=Math.max(4,t);if(e&&e.trim().length>=r/2)return e;e=e||"";for(var n=r-e.length;n>0;n--)e+=" ";return e}function Est(e,t,r){var n=t._context.doubleClickDelay,i,a=1,o=gh.ensureSingle(e,"rect",r+"toggle",function(s){t._context.staticPlot||s.style("cursor","pointer").attr("pointer-events","all"),s.call(DL.fill,"rgba(0,0,0,0)")});t._context.staticPlot||(o.on("mousedown",function(){i=new Date().getTime(),i-t._legendMouseDownTime<n?a+=1:(a=1,t._legendMouseDownTime=i)}),o.on("mouseup",function(){if(!(t._dragged||t._editing)){var s=t._fullLayout[r];new Date().getTime()-t._legendMouseDownTime>n&&(a=Math.max(a-1,1)),mle(t,s,e,a,Sp.event)}}))}function zL(e,t,r,n,i){n._inHover&&e.attr("data-notex",!0),Rb.convertToTspans(e,r,function(){kst(t,r,n,i)})}function kst(e,t,r,n){var i=e.data()[0][0];if(!r._inHover&&i&&!i.trace.showlegend){e.remove();return}var a=e.select("g[class*=math-group]"),o=a.node(),s=OL(r);r||(r=t._fullLayout[s]);var l=r.borderwidth,u;n===q3?u=r.title.font:i.groupTitle?u=i.groupTitle.font:u=r.font;var c=u.size*gle,f,h;if(o){var d=mh.bBox(o);f=d.height,h=d.width,n===q3?mh.setTranslate(a,l,l+f*.75):mh.setTranslate(a,0,f*.25)}else{var v="."+s+(n===q3?"title":"")+"text",x=e.select(v),b=Rb.lineCount(x),p=x.node();if(f=c*b,h=p?mh.bBox(p).width:0,n===q3)r.title.side==="left"&&(h+=Vh.itemGap*2),Rb.positionText(x,l+Vh.titlePad,l+c);else{var E=Vh.itemGap*2+r.indentation+r.itemwidth;i.groupTitle&&(E=Vh.itemGap,h-=r.indentation+r.itemwidth),Rb.positionText(x,E,-c*((b-1)/2-.3))}}n===q3?(r._titleWidth=h,r._titleHeight=f):(i.lineHeight=c,i.height=Math.max(f,16)+3,i.width=h)}function Cst(e){var t=0,r=0,n=e.title.side;return n&&(n.indexOf("left")!==-1&&(t=e._titleWidth),n.indexOf("top")!==-1&&(r=e._titleHeight)),[t,r]}function Lst(e,t,r,n){var i=e._fullLayout,a=OL(n);n||(n=i[a]);var o=i._size,s=dle.isVertical(n),l=dle.isGrouped(n),u=n.entrywidthmode==="fraction",c=n.borderwidth,f=2*c,h=Vh.itemGap,d=n.indentation+n.itemwidth+h*2,v=2*(c+h),x=qL(n),b=n.y<0||n.y===0&&x==="top",p=n.y>1||n.y===1&&x==="bottom",E=n.tracegroupgap,k={};n._maxHeight=Math.max(b||p?i.height/2:o.h,30);var A=0;n._width=0,n._height=0;var L=Cst(n);if(s)r.each(function(ge){var ie=ge[0].height;mh.setTranslate(this,c+L[0],c+L[1]+n._height+ie/2+h),n._height+=ie,n._width=Math.max(n._width,ge[0].width)}),A=d+n._width,n._width+=h+d+f,n._height+=v,l&&(t.each(function(ge,ie){mh.setTranslate(this,0,ie*n.tracegroupgap)}),n._height+=(n._lgroupsLength-1)*n.tracegroupgap);else{var _=FL(n),C=n.x<0||n.x===0&&_==="right",M=n.x>1||n.x===1&&_==="left",g=p||b,P=i.width/2;n._maxWidth=Math.max(C?g&&_==="left"?o.l+o.w:P:M?g&&_==="right"?o.r+o.w:P:o.w,2*d);var T=0,F=0;r.each(function(ge){var ie=RL(ge,n,d);T=Math.max(T,ie),F+=ie}),A=null;var q=0;if(l){var V=0,H=0,X=0;t.each(function(){var ge=0,ie=0;Sp.select(this).selectAll("g.traces").each(function(Ee){var Ae=RL(Ee,n,d),ze=Ee[0].height;mh.setTranslate(this,L[0],L[1]+c+h+ze/2+ie),ie+=ze,ge=Math.max(ge,Ae),k[Ee[0].trace.legendgroup]=ge});var Te=ge+h;H>0&&Te+c+H>n._maxWidth?(q=Math.max(q,H),H=0,X+=V+E,V=ie):V=Math.max(V,ie),mh.setTranslate(this,H,X),H+=Te}),n._width=Math.max(q,H)+c,n._height=X+V+v}else{var G=r.size(),N=F+f+(G-1)*h<n._maxWidth,W=0,re=0,ae=0,_e=0;r.each(function(ge){var ie=ge[0].height,Te=RL(ge,n,d,l),Ee=N?Te:T;u||(Ee+=h),Ee+c+re-h>=n._maxWidth&&(q=Math.max(q,_e),re=0,ae+=W,n._height+=W,W=0),mh.setTranslate(this,L[0]+c+re,L[1]+c+ae+ie/2+h),_e=re+Te+h,re+=Ee,W=Math.max(W,ie)}),N?(n._width=re+f,n._height=W+v):(n._width=Math.max(q,_e)+f,n._height+=W+v)}}n._width=Math.ceil(Math.max(n._width+L[0],n._titleWidth+2*(c+Vh.titlePad))),n._height=Math.ceil(Math.max(n._height+L[1],n._titleHeight+2*(c+Vh.itemGap))),n._effHeight=Math.min(n._height,n._maxHeight);var Me=e._context.edits,ke=Me.legendText||Me.legendPosition;r.each(function(ge){var ie=Sp.select(this).select("."+a+"toggle"),Te=ge[0].height,Ee=ge[0].trace.legendgroup,Ae=RL(ge,n,d);l&&Ee!==""&&(Ae=k[Ee]);var ze=ke?d:A||Ae;!s&&!u&&(ze+=h/2),mh.setRect(ie,0,-Te/2,ze,Te)})}function Pst(e,t,r,n){var i=e._fullLayout,a=i[t],o=FL(a),s=qL(a),l=a.xref==="paper",u=a.yref==="paper";e._fullLayout._reservedMargin[t]={};var c=a.y<.5?"b":"t",f=a.x<.5?"l":"r",h={r:i.width-r,l:r+a._width,b:i.height-n,t:n+a._effHeight};if(l&&u)return PB.autoMargin(e,t,{x:a.x,y:a.y,l:a._width*O3[o],r:a._width*fle[o],b:a._effHeight*fle[s],t:a._effHeight*O3[s]});l?e._fullLayout._reservedMargin[t][c]=h[c]:u||a.orientation==="v"?e._fullLayout._reservedMargin[t][f]=h[f]:e._fullLayout._reservedMargin[t][c]=h[c]}function FL(e){return gh.isRightAnchor(e)?"right":gh.isCenterAnchor(e)?"center":"left"}function qL(e){return gh.isBottomAnchor(e)?"bottom":gh.isMiddleAnchor(e)?"middle":"top"}function OL(e){return e._id||"legend"}});var qB=ye(FB=>{"use strict";var Db=xa(),Sy=uo(),_le=id(),Rf=Mr(),Ist=Rf.pushUnique,DB=Rf.strTranslate,Rst=Rf.strRotate,Dst=g3(),A0=Pl(),zst=Vse(),bm=ao(),sd=va(),BL=gv(),wm=Qa(),Fst=ad().zindexSeparator,U3=ba(),Ag=rp(),zb=IS(),qst=bB(),Ost=RB(),Ele=zb.YANGLE,zB=Math.PI*Ele/180,Bst=1/Math.sin(zB),Nst=Math.cos(zB),Ust=Math.sin(zB),Bc=zb.HOVERARROWSIZE,Us=zb.HOVERTEXTPAD,xle={box:!0,ohlc:!0,violin:!0,candlestick:!0},Vst={scatter:!0,scattergl:!0,splom:!0};function ble(e,t){return e.distance-t.distance}FB.hover=function(t,r,n,i){t=Rf.getGraphDiv(t);var a=r.target;Rf.throttle(t._fullLayout._uid+zb.HOVERID,zb.HOVERMINTIME,function(){Hst(t,r,n,i,a)})};FB.loneHover=function(t,r){var n=!0;Array.isArray(t)||(n=!1,t=[t]);var i=r.gd,a=Ile(i),o=Rle(i),s=t.map(function(b){var p=b._x0||b.x0||b.x||0,E=b._x1||b.x1||b.x||0,k=b._y0||b.y0||b.y||0,A=b._y1||b.y1||b.y||0,L=b.eventData;if(L){var _=Math.min(p,E),C=Math.max(p,E),M=Math.min(k,A),g=Math.max(k,A),P=b.trace;if(U3.traceIs(P,"gl3d")){var T=i._fullLayout[P.scene]._scene.container,F=T.offsetLeft,q=T.offsetTop;_+=F,C+=F,M+=q,g+=q}L.bbox={x0:_+o,x1:C+o,y0:M+a,y1:g+a},r.inOut_bbox&&r.inOut_bbox.push(L.bbox)}else L=!1;return{color:b.color||sd.defaultLine,x0:b.x0||b.x||0,x1:b.x1||b.x||0,y0:b.y0||b.y||0,y1:b.y1||b.y||0,xLabel:b.xLabel,yLabel:b.yLabel,zLabel:b.zLabel,text:b.text,name:b.name,idealAlign:b.idealAlign,borderColor:b.borderColor,fontFamily:b.fontFamily,fontSize:b.fontSize,fontColor:b.fontColor,fontWeight:b.fontWeight,fontStyle:b.fontStyle,fontVariant:b.fontVariant,nameLength:b.nameLength,textAlign:b.textAlign,trace:b.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:b.hovertemplate||!1,hovertemplateLabels:b.hovertemplateLabels||!1,eventData:L}}),l=!1,u=Cle(s,{gd:i,hovermode:"closest",rotateLabels:l,bgColor:r.bgColor||sd.background,container:Db.select(r.container),outerContainer:r.outerContainer||r.container}),c=u.hoverLabels,f=5,h=0,d=0;c.sort(function(b,p){return b.y0-p.y0}).each(function(b,p){var E=b.y0-b.by/2;E-f<h?b.offset=h-E+f:b.offset=0,h=E+b.by+b.offset,p===r.anchorIndex&&(d=b.offset)}).each(function(b){b.offset-=d});var v=i._fullLayout._invScaleX,x=i._fullLayout._invScaleY;return Ple(c,l,v,x),n?c:c.node()};function Hst(e,t,r,n,i){r||(r="xy"),typeof r=="string"&&(r=r.split(Fst)[0]);var a=Array.isArray(r)?r:[r],o,s=e._fullLayout,l=s.hoversubplots,u=s._plots||[],c=u[r],f=s._has("cartesian"),h=t.hovermode||s.hovermode,d=(h||"").charAt(0)==="x",v=(h||"").charAt(0)==="y",x,b;if(f&&(d||v)&&l==="axis"){for(var p=a.length,E=0;E<p;E++)if(o=a[E],u[o]){x=wm.getFromId(e,o,"x"),b=wm.getFromId(e,o,"y");var k=(d?x:b)._subplotsWith;if(k&&k.length)for(var A=0;A<k.length;A++)Ist(a,k[A])}}if(c&&l!=="single"){var L=c.overlays.map(function(Ni){return Ni.id});a=a.concat(L)}for(var _=a.length,C=new Array(_),M=new Array(_),g=!1,P=0;P<_;P++)if(o=a[P],u[o])g=!0,C[P]=u[o].xaxis,M[P]=u[o].yaxis;else if(s[o]&&s[o]._subplot){var T=s[o]._subplot;C[P]=T.xaxis,M[P]=T.yaxis}else{Rf.warn("Unrecognized subplot: "+o);return}if(h&&!g&&(h="closest"),["x","y","closest","x unified","y unified"].indexOf(h)===-1||!e.calcdata||e.querySelector(".zoombox")||e._dragging)return BL.unhoverRaw(e,t);var F=s.hoverdistance;F===-1&&(F=1/0);var q=s.spikedistance;q===-1&&(q=1/0);var V=[],H=[],X,G,N,W,re,ae,_e,Me,ke,ge,ie,Te,Ee,Ae={hLinePoint:null,vLinePoint:null},ze=!1;if(Array.isArray(t))for(h="array",N=0;N<t.length;N++)re=e.calcdata[t[N].curveNumber||0],re&&(ae=re[0].trace,re[0].trace.hoverinfo!=="skip"&&(H.push(re),ae.orientation==="h"&&(ze=!0)));else{var Ce=e.calcdata.slice();for(Ce.sort(function(Ni,_n){var $i=Ni[0].trace.zorder||0,zn=_n[0].trace.zorder||0;return $i-zn}),W=0;W<Ce.length;W++)re=Ce[W],ae=re[0].trace,ae.hoverinfo!=="skip"&&Ag.isTraceInSubplots(ae,a)&&(H.push(re),ae.orientation==="h"&&(ze=!0));var me=!i,Re,ce;if(me)"xpx"in t?Re=t.xpx:Re=C[0]._length/2,"ypx"in t?ce=t.ypx:ce=M[0]._length/2;else{if(Dst.triggerHandler(e,"plotly_beforehover",t)===!1)return;var Ge=i.getBoundingClientRect();Re=t.clientX-Ge.left,ce=t.clientY-Ge.top,s._calcInverseTransform(e);var nt=Rf.apply3DTransform(s._invTransform)(Re,ce);if(Re=nt[0],ce=nt[1],Re<0||Re>C[0]._length||ce<0||ce>M[0]._length)return BL.unhoverRaw(e,t)}if(t.pointerX=Re+C[0]._offset,t.pointerY=ce+M[0]._offset,"xval"in t?X=Ag.flat(a,t.xval):X=Ag.p2c(C,Re),"yval"in t?G=Ag.flat(a,t.yval):G=Ag.p2c(M,ce),!Sy(X[0])||!Sy(G[0]))return Rf.warn("Fx.hover failed",t,e),BL.unhoverRaw(e,t)}var ct=1/0;function qt(Ni,_n){for(W=0;W<H.length;W++)if(re=H[W],!(!re||!re[0]||!re[0].trace)&&(ae=re[0].trace,!(ae.visible!==!0||ae._length===0)&&["carpet","contourcarpet"].indexOf(ae._module.name)===-1)){if(ke=h,Ag.isUnifiedHover(ke)&&(ke=ke.charAt(0)),ae.type==="splom"?(Me=0,_e=a[Me]):(_e=Ag.getSubplot(ae),Me=a.indexOf(_e)),Te={cd:re,trace:ae,xa:C[Me],ya:M[Me],maxHoverDistance:F,maxSpikeDistance:q,index:!1,distance:Math.min(ct,F),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:sd.defaultLine,name:ae.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},s[_e]&&(Te.subplot=s[_e]._subplot),s._splomScenes&&s._splomScenes[ae.uid]&&(Te.scene=s._splomScenes[ae.uid]),ke==="array"){var $i=t[W];"pointNumber"in $i?(Te.index=$i.pointNumber,ke="closest"):(ke="","xval"in $i&&(ge=$i.xval,ke="x"),"yval"in $i&&(ie=$i.yval,ke=ke?"closest":"y"))}else Ni!==void 0&&_n!==void 0?(ge=Ni,ie=_n):(ge=X[Me],ie=G[Me]);if(Ee=V.length,F!==0)if(ae._module&&ae._module.hoverPoints){var zn=ae._module.hoverPoints(Te,ge,ie,ke,{finiteRange:!0,hoverLayer:s._hoverlayer,hoversubplots:l,gd:e});if(zn)for(var Wn,It=0;It<zn.length;It++)Wn=zn[It],Sy(Wn.x0)&&Sy(Wn.y0)&&V.push(Zst(Wn,h))}else Rf.log("Unrecognized trace type in hover:",ae);if(h==="closest"&&V.length>Ee&&(V.splice(0,Ee),ct=V[0].distance),f&&q!==0&&V.length===0){Te.distance=q,Te.index=!1;var ft=ae._module.hoverPoints(Te,ge,ie,"closest",{hoverLayer:s._hoverlayer});if(ft&&(ft=ft.filter(function(Vr){return Vr.spikeDistance<=q})),ft&&ft.length){var jt,Zt=ft.filter(function(Vr){return Vr.xa.showspikes&&Vr.xa.spikesnap!=="hovered data"});if(Zt.length){var yr=Zt[0];Sy(yr.x0)&&Sy(yr.y0)&&(jt=ot(yr),(!Ae.vLinePoint||Ae.vLinePoint.spikeDistance>jt.spikeDistance)&&(Ae.vLinePoint=jt))}var Fr=ft.filter(function(Vr){return Vr.ya.showspikes&&Vr.ya.spikesnap!=="hovered data"});if(Fr.length){var Zr=Fr[0];Sy(Zr.x0)&&Sy(Zr.y0)&&(jt=ot(Zr),(!Ae.hLinePoint||Ae.hLinePoint.spikeDistance>jt.spikeDistance)&&(Ae.hLinePoint=jt))}}}}}qt();function rt(Ni,_n,$i){for(var zn=null,Wn=1/0,It,ft=0;ft<Ni.length;ft++)x&&x._id!==Ni[ft].xa._id||b&&b._id!==Ni[ft].ya._id||(It=Ni[ft].spikeDistance,$i&&ft===0&&(It=-1/0),It<=Wn&&It<=_n&&(zn=Ni[ft],Wn=It));return zn}function ot(Ni){return Ni?{xa:Ni.xa,ya:Ni.ya,x:Ni.xSpike!==void 0?Ni.xSpike:(Ni.x0+Ni.x1)/2,y:Ni.ySpike!==void 0?Ni.ySpike:(Ni.y0+Ni.y1)/2,distance:Ni.distance,spikeDistance:Ni.spikeDistance,curveNumber:Ni.trace.index,color:Ni.color,pointNumber:Ni.index}:null}var Rt={fullLayout:s,container:s._hoverlayer,event:t},kt=e._spikepoints,Ct={vLinePoint:Ae.vLinePoint,hLinePoint:Ae.hLinePoint};e._spikepoints=Ct;var Yt=function(){var Ni=V.filter(function($i){return x&&x._id===$i.xa._id&&b&&b._id===$i.ya._id}),_n=V.filter(function($i){return!(x&&x._id===$i.xa._id&&b&&b._id===$i.ya._id)});Ni.sort(ble),_n.sort(ble),V=Ni.concat(_n),V=Yst(V,h)};Yt();var xr=h.charAt(0),er=(xr==="x"||xr==="y")&&V[0]&&Vst[V[0].trace.type];if(f&&q!==0&&V.length!==0){var Ke=V.filter(function(Ni){return Ni.ya.showspikes}),xt=rt(Ke,q,er);Ae.hLinePoint=ot(xt);var bt=V.filter(function(Ni){return Ni.xa.showspikes}),Lt=rt(bt,q,er);Ae.vLinePoint=ot(Lt)}if(V.length===0){var St=BL.unhoverRaw(e,t);return f&&(Ae.hLinePoint!==null||Ae.vLinePoint!==null)&&Ale(kt)&&Tle(e,Ae,Rt),St}if(f&&Ale(kt)&&Tle(e,Ae,Rt),Ag.isXYhover(ke)&&V[0].length!==0&&V[0].trace.type!=="splom"){var Et=V[0];xle[Et.trace.type]?V=V.filter(function(Ni){return Ni.trace.index===Et.trace.index}):V=[Et];var dt=V.length,Ht=Mle("x",Et,s),$t=Mle("y",Et,s);qt(Ht,$t);var fr=[],_r={},Br=0,Or=function(Ni){var _n=xle[Ni.trace.type]?kle(Ni):Ni.trace.index;if(!_r[_n])Br++,_r[_n]=Br,fr.push(Ni);else{var $i=_r[_n]-1,zn=fr[$i];$i>0&&Math.abs(Ni.distance)<Math.abs(zn.distance)&&(fr[$i]=Ni)}},Nr;for(Nr=0;Nr<dt;Nr++)Or(V[Nr]);for(Nr=V.length-1;Nr>dt-1;Nr--)Or(V[Nr]);V=fr,Yt()}var ut=e._hoverdata,Ne=[],Ye=Ile(e),Ve=Rle(e);for(N=0;N<V.length;N++){var Xe=V[N],ht=Ag.makeEventData(Xe,Xe.trace,Xe.cd);if(Xe.hovertemplate!==!1){var Le=!1;Xe.cd[Xe.index]&&Xe.cd[Xe.index].ht&&(Le=Xe.cd[Xe.index].ht),Xe.hovertemplate=Le||Xe.trace.hovertemplate||!1}if(Xe.xa&&Xe.ya){var xe=Xe.x0+Xe.xa._offset,Se=Xe.x1+Xe.xa._offset,lt=Xe.y0+Xe.ya._offset,Gt=Xe.y1+Xe.ya._offset,Vt=Math.min(xe,Se),ar=Math.max(xe,Se),Qr=Math.min(lt,Gt),ai=Math.max(lt,Gt);ht.bbox={x0:Vt+Ve,x1:ar+Ve,y0:Qr+Ye,y1:ai+Ye}}Xe.eventData=[ht],Ne.push(ht)}e._hoverdata=Ne;var jr=h==="y"&&(H.length>1||V.length>1)||h==="closest"&&ze&&V.length>1,ri=sd.combine(s.plot_bgcolor||sd.background,s.paper_bgcolor),bi=Cle(V,{gd:e,hovermode:h,rotateLabels:jr,bgColor:ri,container:s._hoverlayer,outerContainer:s._paper.node(),commonLabelOpts:s.hoverlabel,hoverdistance:s.hoverdistance}),nn=bi.hoverLabels;if(Ag.isUnifiedHover(h)||(jst(nn,jr,s,bi.commonLabelBoundingBox),Ple(nn,jr,s._invScaleX,s._invScaleY)),i&&i.tagName){var Wi=U3.getComponentMethod("annotations","hasClickToShow")(e,Ne);zst(Db.select(i),Wi?"pointer":"")}!i||n||!Xst(e,t,ut)||(ut&&e.emit("plotly_unhover",{event:t,points:ut}),e.emit("plotly_hover",{event:t,points:e._hoverdata,xaxes:C,yaxes:M,xvals:X,yvals:G}))}function kle(e){return[e.trace.index,e.index,e.x0,e.y0,e.name,e.attr,e.xa?e.xa._id:"",e.ya?e.ya._id:""].join(",")}var Gst=/<extra>([\s\S]*)<\/extra>/;function Cle(e,t){var r=t.gd,n=r._fullLayout,i=t.hovermode,a=t.rotateLabels,o=t.bgColor,s=t.container,l=t.outerContainer,u=t.commonLabelOpts||{};if(e.length===0)return[[]];var c=t.fontFamily||zb.HOVERFONT,f=t.fontSize||zb.HOVERFONTSIZE,h=t.fontWeight||n.font.weight,d=t.fontStyle||n.font.style,v=t.fontVariant||n.font.variant,x=t.fontTextcase||n.font.textcase,b=t.fontLineposition||n.font.lineposition,p=t.fontShadow||n.font.shadow,E=e[0],k=E.xa,A=E.ya,L=i.charAt(0),_=L+"Label",C=E[_];if(C===void 0&&k.type==="multicategory")for(var M=0;M<e.length&&(C=e[M][_],C===void 0);M++);var g=N3(r,l),P=g.top,T=g.width,F=g.height,q=C!==void 0&&E.distance<=t.hoverdistance&&(i==="x"||i==="y");if(q){var V=!0,H,X;for(H=0;H<e.length;H++)if(V&&e[H].zLabel===void 0&&(V=!1),X=e[H].hoverinfo||e[H].trace.hoverinfo,X){var G=Array.isArray(X)?X:X.split("+");if(G.indexOf("all")===-1&&G.indexOf(i)===-1){q=!1;break}}V&&(q=!1)}var N=s.selectAll("g.axistext").data(q?[0]:[]);N.enter().append("g").classed("axistext",!0),N.exit().remove();var W={minX:0,maxX:0,minY:0,maxY:0};if(N.each(function(){var bt=Db.select(this),Lt=Rf.ensureSingle(bt,"path","",function(Vt){Vt.style({"stroke-width":"1px"})}),St=Rf.ensureSingle(bt,"text","",function(Vt){Vt.attr("data-notex",1)}),Et=u.bgcolor||sd.defaultLine,dt=u.bordercolor||sd.contrast(Et),Ht=sd.contrast(Et),$t=u.font,fr={weight:$t.weight||h,style:$t.style||d,variant:$t.variant||v,textcase:$t.textcase||x,lineposition:$t.lineposition||b,shadow:$t.shadow||p,family:$t.family||c,size:$t.size||f,color:$t.color||Ht};Lt.style({fill:Et,stroke:dt}),St.text(C).call(bm.font,fr).call(A0.positionText,0,0).call(A0.convertToTspans,r),bt.attr("transform","");var _r=N3(r,St.node()),Br,Or;if(i==="x"){var Nr=k.side==="top"?"-":"";St.attr("text-anchor","middle").call(A0.positionText,0,k.side==="top"?P-_r.bottom-Bc-Us:P-_r.top+Bc+Us),Br=k._offset+(E.x0+E.x1)/2,Or=A._offset+(k.side==="top"?0:A._length);var ut=_r.width/2+Us,Ne=Br;Br<ut?Ne=ut:Br>n.width-ut&&(Ne=n.width-ut),Lt.attr("d","M"+(Br-Ne)+",0L"+(Br-Ne+Bc)+","+Nr+Bc+"H"+ut+"v"+Nr+(Us*2+_r.height)+"H"+-ut+"V"+Nr+Bc+"H"+(Br-Ne-Bc)+"Z"),Br=Ne,W.minX=Br-ut,W.maxX=Br+ut,k.side==="top"?(W.minY=Or-(Us*2+_r.height),W.maxY=Or-Us):(W.minY=Or+Us,W.maxY=Or+(Us*2+_r.height))}else{var Ye,Ve,Xe;A.side==="right"?(Ye="start",Ve=1,Xe="",Br=k._offset+k._length):(Ye="end",Ve=-1,Xe="-",Br=k._offset),Or=A._offset+(E.y0+E.y1)/2,St.attr("text-anchor",Ye),Lt.attr("d","M0,0L"+Xe+Bc+","+Bc+"V"+(Us+_r.height/2)+"h"+Xe+(Us*2+_r.width)+"V-"+(Us+_r.height/2)+"H"+Xe+Bc+"V-"+Bc+"Z"),W.minY=Or-(Us+_r.height/2),W.maxY=Or+(Us+_r.height/2),A.side==="right"?(W.minX=Br+Bc,W.maxX=Br+Bc+(Us*2+_r.width)):(W.minX=Br-Bc-(Us*2+_r.width),W.maxX=Br-Bc);var ht=_r.height/2,Le=P-_r.top-ht,xe="clip"+n._uid+"commonlabel"+A._id,Se;if(Br<_r.width+2*Us+Bc){Se="M-"+(Bc+Us)+"-"+ht+"h-"+(_r.width-Us)+"V"+ht+"h"+(_r.width-Us)+"Z";var lt=_r.width-Br+Us;A0.positionText(St,lt,Le),Ye==="end"&&St.selectAll("tspan").each(function(){var Vt=Db.select(this),ar=bm.tester.append("text").text(Vt.text()).call(bm.font,fr),Qr=N3(r,ar.node());Math.round(Qr.width)<Math.round(_r.width)&&Vt.attr("x",lt-Qr.width),ar.remove()})}else A0.positionText(St,Ve*(Us+Bc),Le),Se=null;var Gt=n._topclips.selectAll("#"+xe).data(Se?[0]:[]);Gt.enter().append("clipPath").attr("id",xe).append("path"),Gt.exit().remove(),Gt.select("path").attr("d",Se),bm.setClipUrl(St,Se?xe:null,r)}bt.attr("transform",DB(Br,Or))}),Ag.isUnifiedHover(i)){s.selectAll("g.hovertext").remove();var re=e.filter(function(bt){return bt.hoverinfo!=="none"});if(re.length===0)return[];var ae=n.hoverlabel,_e=ae.font,Me={showlegend:!0,legend:{title:{text:C,font:_e},font:_e,bgcolor:ae.bgcolor,bordercolor:ae.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:n.legend?n.legend.traceorder:void 0,orientation:"v"}},ke={font:_e};qst(Me,ke,r._fullData);var ge=ke.legend;ge.entries=[];for(var ie=0;ie<re.length;ie++){var Te=re[ie];if(Te.hoverinfo!=="none"){var Ee=wle(Te,!0,i,n,C),Ae=Ee[0],ze=Ee[1];Te.name=ze,ze!==""?Te.text=ze+" : "+Ae:Te.text=Ae;var Ce=Te.cd[Te.index];Ce&&(Ce.mc&&(Te.mc=Ce.mc),Ce.mcc&&(Te.mc=Ce.mcc),Ce.mlc&&(Te.mlc=Ce.mlc),Ce.mlcc&&(Te.mlc=Ce.mlcc),Ce.mlw&&(Te.mlw=Ce.mlw),Ce.mrc&&(Te.mrc=Ce.mrc),Ce.dir&&(Te.dir=Ce.dir)),Te._distinct=!0,ge.entries.push([Te])}}ge.entries.sort(function(bt,Lt){return bt[0].trace.index-Lt[0].trace.index}),ge.layer=s,ge._inHover=!0,ge._groupTitleFont=ae.grouptitlefont,Ost(r,ge);var me=s.select("g.legend"),Re=N3(r,me.node()),ce=Re.width+2*Us,Ge=Re.height+2*Us,nt=re[0],ct=(nt.x0+nt.x1)/2,qt=(nt.y0+nt.y1)/2,rt=!(U3.traceIs(nt.trace,"bar-like")||U3.traceIs(nt.trace,"box-violin")),ot,Rt;L==="y"?rt?(Rt=qt-Us,ot=qt+Us):(Rt=Math.min.apply(null,re.map(function(bt){return Math.min(bt.y0,bt.y1)})),ot=Math.max.apply(null,re.map(function(bt){return Math.max(bt.y0,bt.y1)}))):Rt=ot=Rf.mean(re.map(function(bt){return(bt.y0+bt.y1)/2}))-Ge/2;var kt,Ct;L==="x"?rt?(kt=ct+Us,Ct=ct-Us):(kt=Math.max.apply(null,re.map(function(bt){return Math.max(bt.x0,bt.x1)})),Ct=Math.min.apply(null,re.map(function(bt){return Math.min(bt.x0,bt.x1)}))):kt=Ct=Rf.mean(re.map(function(bt){return(bt.x0+bt.x1)/2}))-ce/2;var Yt=k._offset,xr=A._offset;ot+=xr,kt+=Yt,Ct+=Yt-ce,Rt+=xr-Ge;var er,Ke;return kt+ce<T&&kt>=0?er=kt:Ct+ce<T&&Ct>=0?er=Ct:Yt+ce<T?er=Yt:kt-ct<ct-Ct+ce?er=T-ce:er=0,er+=Us,ot+Ge<F&&ot>=0?Ke=ot:Rt+Ge<F&&Rt>=0?Ke=Rt:xr+Ge<F?Ke=xr:ot-qt<qt-Rt+Ge?Ke=F-Ge:Ke=0,Ke+=Us,me.attr("transform",DB(er-1,Ke-1)),me}var xt=s.selectAll("g.hovertext").data(e,function(bt){return kle(bt)});return xt.enter().append("g").classed("hovertext",!0).each(function(){var bt=Db.select(this);bt.append("rect").call(sd.fill,sd.addOpacity(o,.8)),bt.append("text").classed("name",!0),bt.append("path").style("stroke-width","1px"),bt.append("text").classed("nums",!0).call(bm.font,{weight:h,style:d,variant:v,textcase:x,lineposition:b,shadow:p,family:c,size:f})}),xt.exit().remove(),xt.each(function(bt){var Lt=Db.select(this).attr("transform",""),St=bt.color;Array.isArray(St)&&(St=St[bt.eventData[0].pointNumber]);var Et=bt.bgcolor||St,dt=sd.combine(sd.opacity(Et)?Et:sd.defaultLine,o),Ht=sd.combine(sd.opacity(St)?St:sd.defaultLine,o),$t=bt.borderColor||sd.contrast(dt),fr=wle(bt,q,i,n,C,Lt),_r=fr[0],Br=fr[1],Or=Lt.select("text.nums").call(bm.font,{family:bt.fontFamily||c,size:bt.fontSize||f,color:bt.fontColor||$t,weight:bt.fontWeight||h,style:bt.fontStyle||d,variant:bt.fontVariant||v,textcase:bt.fontTextcase||x,lineposition:bt.fontLineposition||b,shadow:bt.fontShadow||p}).text(_r).attr("data-notex",1).call(A0.positionText,0,0).call(A0.convertToTspans,r),Nr=Lt.select("text.name"),ut=0,Ne=0;if(Br&&Br!==_r){Nr.call(bm.font,{family:bt.fontFamily||c,size:bt.fontSize||f,color:Ht,weight:bt.fontWeight||h,style:bt.fontStyle||d,variant:bt.fontVariant||v,textcase:bt.fontTextcase||x,lineposition:bt.fontLineposition||b,shadow:bt.fontShadow||p}).text(Br).attr("data-notex",1).call(A0.positionText,0,0).call(A0.convertToTspans,r);var Ye=N3(r,Nr.node());ut=Ye.width+2*Us,Ne=Ye.height+2*Us}else Nr.remove(),Lt.select("rect").remove();Lt.select("path").style({fill:dt,stroke:$t});var Ve=bt.xa._offset+(bt.x0+bt.x1)/2,Xe=bt.ya._offset+(bt.y0+bt.y1)/2,ht=Math.abs(bt.x1-bt.x0),Le=Math.abs(bt.y1-bt.y0),xe=N3(r,Or.node()),Se=xe.width/n._invScaleX,lt=xe.height/n._invScaleY;bt.ty0=(P-xe.top)/n._invScaleY,bt.bx=Se+2*Us,bt.by=Math.max(lt+2*Us,Ne),bt.anchor="start",bt.txwidth=Se,bt.tx2width=ut,bt.offset=0;var Gt=(Se+Bc+Us+ut)*n._invScaleX,Vt,ar;if(a)bt.pos=Ve,Vt=Xe+Le/2+Gt<=F,ar=Xe-Le/2-Gt>=0,(bt.idealAlign==="top"||!Vt)&&ar?(Xe-=Le/2,bt.anchor="end"):Vt?(Xe+=Le/2,bt.anchor="start"):bt.anchor="middle",bt.crossPos=Xe;else{if(bt.pos=Xe,Vt=Ve+ht/2+Gt<=T,ar=Ve-ht/2-Gt>=0,(bt.idealAlign==="left"||!Vt)&&ar)Ve-=ht/2,bt.anchor="end";else if(Vt)Ve+=ht/2,bt.anchor="start";else{bt.anchor="middle";var Qr=Gt/2,ai=Ve+Qr-T,jr=Ve-Qr;ai>0&&(Ve-=ai),jr<0&&(Ve+=-jr)}bt.crossPos=Ve}Or.attr("text-anchor",bt.anchor),ut&&Nr.attr("text-anchor",bt.anchor),Lt.attr("transform",DB(Ve,Xe)+(a?Rst(Ele):""))}),{hoverLabels:xt,commonLabelBoundingBox:W}}function wle(e,t,r,n,i,a){var o="",s="";e.nameOverride!==void 0&&(e.name=e.nameOverride),e.name&&(e.trace._meta&&(e.name=Rf.templateString(e.name,e.trace._meta)),o=Sle(e.name,e.nameLength));var l=r.charAt(0),u=l==="x"?"y":"x";e.zLabel!==void 0?(e.xLabel!==void 0&&(s+="x: "+e.xLabel+"<br>"),e.yLabel!==void 0&&(s+="y: "+e.yLabel+"<br>"),e.trace.type!=="choropleth"&&e.trace.type!=="choroplethmapbox"&&e.trace.type!=="choroplethmap"&&(s+=(s?"z: ":"")+e.zLabel)):t&&e[l+"Label"]===i?s=e[u+"Label"]||"":e.xLabel===void 0?e.yLabel!==void 0&&e.trace.type!=="scattercarpet"&&(s=e.yLabel):e.yLabel===void 0?s=e.xLabel:s="("+e.xLabel+", "+e.yLabel+")",(e.text||e.text===0)&&!Array.isArray(e.text)&&(s+=(s?"<br>":"")+e.text),e.extraText!==void 0&&(s+=(s?"<br>":"")+e.extraText),a&&s===""&&!e.hovertemplate&&(o===""&&a.remove(),s=o);var c=e.hovertemplate||!1;if(c){var f=e.hovertemplateLabels||e;e[l+"Label"]!==i&&(f[l+"other"]=f[l+"Val"],f[l+"otherLabel"]=f[l+"Label"]),s=Rf.hovertemplateString(c,f,n._d3locale,e.eventData[0]||{},e.trace._meta),s=s.replace(Gst,function(h,d){return o=Sle(d,e.nameLength),""})}return[s,o]}function jst(e,t,r,n){var i=t?"xa":"ya",a=t?"ya":"xa",o=0,s=1,l=e.size(),u=new Array(l),c=0,f=n.minX,h=n.maxX,d=n.minY,v=n.maxY,x=function(X){return X*r._invScaleX},b=function(X){return X*r._invScaleY};e.each(function(X){var G=X[i],N=X[a],W=G._id.charAt(0)==="x",re=G.range;c===0&&re&&re[0]>re[1]!==W&&(s=-1);var ae=0,_e=W?r.width:r.height;if(r.hovermode==="x"||r.hovermode==="y"){var Me=Lle(X,t),ke=X.anchor,ge=ke==="end"?-1:1,ie,Te;if(ke==="middle")ie=X.crossPos+(W?b(Me.y-X.by/2):x(X.bx/2+X.tx2width/2)),Te=ie+(W?b(X.by):x(X.bx));else if(W)ie=X.crossPos+b(Bc+Me.y)-b(X.by/2-Bc),Te=ie+b(X.by);else{var Ee=x(ge*Bc+Me.x),Ae=Ee+x(ge*X.bx);ie=X.crossPos+Math.min(Ee,Ae),Te=X.crossPos+Math.max(Ee,Ae)}W?d!==void 0&&v!==void 0&&Math.min(Te,v)-Math.max(ie,d)>1&&(N.side==="left"?(ae=N._mainLinePosition,_e=r.width):_e=N._mainLinePosition):f!==void 0&&h!==void 0&&Math.min(Te,h)-Math.max(ie,f)>1&&(N.side==="top"?(ae=N._mainLinePosition,_e=r.height):_e=N._mainLinePosition)}u[c++]=[{datum:X,traceIndex:X.trace.index,dp:0,pos:X.pos,posref:X.posref,size:X.by*(W?Bst:1)/2,pmin:ae,pmax:_e}]}),u.sort(function(X,G){return X[0].posref-G[0].posref||s*(G[0].traceIndex-X[0].traceIndex)});var p,E,k,A,L,_,C;function M(X){var G=X[0],N=X[X.length-1];if(E=G.pmin-G.pos-G.dp+G.size,k=N.pos+N.dp+N.size-G.pmax,E>.01){for(L=X.length-1;L>=0;L--)X[L].dp+=E;p=!1}if(!(k<.01)){if(E<-.01){for(L=X.length-1;L>=0;L--)X[L].dp-=k;p=!1}if(p){var W=0;for(A=0;A<X.length;A++)_=X[A],_.pos+_.dp+_.size>G.pmax&&W++;for(A=X.length-1;A>=0&&!(W<=0);A--)_=X[A],_.pos>G.pmax-1&&(_.del=!0,W--);for(A=0;A<X.length&&!(W<=0);A++)if(_=X[A],_.pos<G.pmin+1)for(_.del=!0,W--,k=_.size*2,L=X.length-1;L>=0;L--)X[L].dp-=k;for(A=X.length-1;A>=0&&!(W<=0);A--)_=X[A],_.pos+_.dp+_.size>G.pmax&&(_.del=!0,W--)}}}for(;!p&&o<=l;){for(o++,p=!0,A=0;A<u.length-1;){var g=u[A],P=u[A+1],T=g[g.length-1],F=P[0];if(E=T.pos+T.dp+T.size-F.pos-F.dp+F.size,E>.01){for(L=P.length-1;L>=0;L--)P[L].dp+=E;for(g.push.apply(g,P),u.splice(A+1,1),C=0,L=g.length-1;L>=0;L--)C+=g[L].dp;for(k=C/g.length,L=g.length-1;L>=0;L--)g[L].dp-=k;p=!1}else A++}u.forEach(M)}for(A=u.length-1;A>=0;A--){var q=u[A];for(L=q.length-1;L>=0;L--){var V=q[L],H=V.datum;H.offset=V.dp,H.del=V.del}}}function Lle(e,t){var r=0,n=e.offset;return t&&(n*=-Ust,r=e.offset*Nst),{x:r,y:n}}function Wst(e){var t={start:1,end:-1,middle:0}[e.anchor],r=t*(Bc+Us),n=r+t*(e.txwidth+Us),i=e.anchor==="middle";return i&&(r-=e.tx2width/2,n+=e.txwidth/2+Us),{alignShift:t,textShiftX:r,text2ShiftX:n}}function Ple(e,t,r,n){var i=function(o){return o*r},a=function(o){return o*n};e.each(function(o){var s=Db.select(this);if(o.del)return s.remove();var l=s.select("text.nums"),u=o.anchor,c=u==="end"?-1:1,f=Wst(o),h=Lle(o,t),d=h.x,v=h.y,x=u==="middle";s.select("path").attr("d",x?"M-"+i(o.bx/2+o.tx2width/2)+","+a(v-o.by/2)+"h"+i(o.bx)+"v"+a(o.by)+"h-"+i(o.bx)+"Z":"M0,0L"+i(c*Bc+d)+","+a(Bc+v)+"v"+a(o.by/2-Bc)+"h"+i(c*o.bx)+"v-"+a(o.by)+"H"+i(c*Bc+d)+"V"+a(v-Bc)+"Z");var b=d+f.textShiftX,p=v+o.ty0-o.by/2+Us,E=o.textAlign||"auto";E!=="auto"&&(E==="left"&&u!=="start"?(l.attr("text-anchor","start"),b=x?-o.bx/2-o.tx2width/2+Us:-o.bx-Us):E==="right"&&u!=="end"&&(l.attr("text-anchor","end"),b=x?o.bx/2-o.tx2width/2-Us:o.bx+Us)),l.call(A0.positionText,i(b),a(p)),o.tx2width&&(s.select("text.name").call(A0.positionText,i(f.text2ShiftX+f.alignShift*Us+d),a(v+o.ty0-o.by/2+Us)),s.select("rect").call(bm.setRect,i(f.text2ShiftX+(f.alignShift-1)*o.tx2width/2+d),a(v-o.by/2-1),i(o.tx2width),a(o.by+2)))})}function Zst(e,t){var r=e.index,n=e.trace||{},i=e.cd[0],a=e.cd[r]||{};function o(h){return h||Sy(h)&&h===0}var s=Array.isArray(r)?function(h,d){var v=Rf.castOption(i,r,h);return o(v)?v:Rf.extractOption({},n,"",d)}:function(h,d){return Rf.extractOption(a,n,h,d)};function l(h,d,v){var x=s(d,v);o(x)&&(e[h]=x)}if(l("hoverinfo","hi","hoverinfo"),l("bgcolor","hbg","hoverlabel.bgcolor"),l("borderColor","hbc","hoverlabel.bordercolor"),l("fontFamily","htf","hoverlabel.font.family"),l("fontSize","hts","hoverlabel.font.size"),l("fontColor","htc","hoverlabel.font.color"),l("fontWeight","htw","hoverlabel.font.weight"),l("fontStyle","hty","hoverlabel.font.style"),l("fontVariant","htv","hoverlabel.font.variant"),l("nameLength","hnl","hoverlabel.namelength"),l("textAlign","hta","hoverlabel.align"),e.posref=t==="y"||t==="closest"&&n.orientation==="h"?e.xa._offset+(e.x0+e.x1)/2:e.ya._offset+(e.y0+e.y1)/2,e.x0=Rf.constrain(e.x0,0,e.xa._length),e.x1=Rf.constrain(e.x1,0,e.xa._length),e.y0=Rf.constrain(e.y0,0,e.ya._length),e.y1=Rf.constrain(e.y1,0,e.ya._length),e.xLabelVal!==void 0&&(e.xLabel="xLabel"in e?e.xLabel:wm.hoverLabelText(e.xa,e.xLabelVal,n.xhoverformat),e.xVal=e.xa.c2d(e.xLabelVal)),e.yLabelVal!==void 0&&(e.yLabel="yLabel"in e?e.yLabel:wm.hoverLabelText(e.ya,e.yLabelVal,n.yhoverformat),e.yVal=e.ya.c2d(e.yLabelVal)),e.zLabelVal!==void 0&&e.zLabel===void 0&&(e.zLabel=String(e.zLabelVal)),!isNaN(e.xerr)&&!(e.xa.type==="log"&&e.xerr<=0)){var u=wm.tickText(e.xa,e.xa.c2l(e.xerr),"hover").text;e.xerrneg!==void 0?e.xLabel+=" +"+u+" / -"+wm.tickText(e.xa,e.xa.c2l(e.xerrneg),"hover").text:e.xLabel+=" \xB1 "+u,t==="x"&&(e.distance+=1)}if(!isNaN(e.yerr)&&!(e.ya.type==="log"&&e.yerr<=0)){var c=wm.tickText(e.ya,e.ya.c2l(e.yerr),"hover").text;e.yerrneg!==void 0?e.yLabel+=" +"+c+" / -"+wm.tickText(e.ya,e.ya.c2l(e.yerrneg),"hover").text:e.yLabel+=" \xB1 "+c,t==="y"&&(e.distance+=1)}var f=e.hoverinfo||e.trace.hoverinfo;return f&&f!=="all"&&(f=Array.isArray(f)?f:f.split("+"),f.indexOf("x")===-1&&(e.xLabel=void 0),f.indexOf("y")===-1&&(e.yLabel=void 0),f.indexOf("z")===-1&&(e.zLabel=void 0),f.indexOf("text")===-1&&(e.text=void 0),f.indexOf("name")===-1&&(e.name=void 0)),e}function Tle(e,t,r){var n=r.container,i=r.fullLayout,a=i._size,o=r.event,s=!!t.hLinePoint,l=!!t.vLinePoint,u,c;if(n.selectAll(".spikeline").remove(),!!(l||s)){var f=sd.combine(i.plot_bgcolor,i.paper_bgcolor);if(s){var h=t.hLinePoint,d,v;u=h&&h.xa,c=h&&h.ya;var x=c.spikesnap;x==="cursor"?(d=o.pointerX,v=o.pointerY):(d=u._offset+h.x,v=c._offset+h.y);var b=_le.readability(h.color,f)<1.5?sd.contrast(f):h.color,p=c.spikemode,E=c.spikethickness,k=c.spikecolor||b,A=wm.getPxPosition(e,c),L,_;if(p.indexOf("toaxis")!==-1||p.indexOf("across")!==-1){if(p.indexOf("toaxis")!==-1&&(L=A,_=d),p.indexOf("across")!==-1){var C=c._counterDomainMin,M=c._counterDomainMax;c.anchor==="free"&&(C=Math.min(C,c.position),M=Math.max(M,c.position)),L=a.l+C*a.w,_=a.l+M*a.w}n.insert("line",":first-child").attr({x1:L,x2:_,y1:v,y2:v,"stroke-width":E,stroke:k,"stroke-dasharray":bm.dashStyle(c.spikedash,E)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:L,x2:_,y1:v,y2:v,"stroke-width":E+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}p.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:A+(c.side!=="right"?E:-E),cy:v,r:E,fill:k}).classed("spikeline",!0)}if(l){var g=t.vLinePoint,P,T;u=g&&g.xa,c=g&&g.ya;var F=u.spikesnap;F==="cursor"?(P=o.pointerX,T=o.pointerY):(P=u._offset+g.x,T=c._offset+g.y);var q=_le.readability(g.color,f)<1.5?sd.contrast(f):g.color,V=u.spikemode,H=u.spikethickness,X=u.spikecolor||q,G=wm.getPxPosition(e,u),N,W;if(V.indexOf("toaxis")!==-1||V.indexOf("across")!==-1){if(V.indexOf("toaxis")!==-1&&(N=G,W=T),V.indexOf("across")!==-1){var re=u._counterDomainMin,ae=u._counterDomainMax;u.anchor==="free"&&(re=Math.min(re,u.position),ae=Math.max(ae,u.position)),N=a.t+(1-ae)*a.h,W=a.t+(1-re)*a.h}n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:W,"stroke-width":H,stroke:X,"stroke-dasharray":bm.dashStyle(u.spikedash,H)}).classed("spikeline",!0).classed("crisp",!0),n.insert("line",":first-child").attr({x1:P,x2:P,y1:N,y2:W,"stroke-width":H+2,stroke:f}).classed("spikeline",!0).classed("crisp",!0)}V.indexOf("marker")!==-1&&n.insert("circle",":first-child").attr({cx:P,cy:G-(u.side!=="top"?H:-H),r:H,fill:X}).classed("spikeline",!0)}}}function Xst(e,t,r){if(!r||r.length!==e._hoverdata.length)return!0;for(var n=r.length-1;n>=0;n--){var i=r[n],a=e._hoverdata[n];if(i.curveNumber!==a.curveNumber||String(i.pointNumber)!==String(a.pointNumber)||String(i.pointNumbers)!==String(a.pointNumbers))return!0}return!1}function Ale(e,t){return!t||t.vLinePoint!==e._spikepoints.vLinePoint||t.hLinePoint!==e._spikepoints.hLinePoint}function Sle(e,t){return A0.plainText(e||"",{len:t,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function Yst(e,t){for(var r=t.charAt(0),n=[],i=[],a=[],o=0;o<e.length;o++){var s=e[o];U3.traceIs(s.trace,"bar-like")||U3.traceIs(s.trace,"box-violin")?a.push(s):s.trace[r+"period"]?i.push(s):n.push(s)}return n.concat(i).concat(a)}function Mle(e,t,r){var n=t[e+"a"],i=t[e+"Val"],a=t.cd[0];if(n.type==="category"||n.type==="multicategory")i=n._categoriesMap[i];else if(n.type==="date"){var o=t.trace[e+"periodalignment"];if(o){var s=t.cd[t.index],l=s[e+"Start"];l===void 0&&(l=s[e]);var u=s[e+"End"];u===void 0&&(u=s[e]);var c=u-l;o==="end"?i+=c:o==="middle"&&(i+=c/2)}i=n.d2c(i)}return a&&a.t&&a.t.posLetter===n._id&&(r.boxmode==="group"||r.violinmode==="group")&&(i+=a.t.dPos),i}function Ile(e){return e.offsetTop+e.clientTop}function Rle(e){return e.offsetLeft+e.clientLeft}function N3(e,t){var r=e._fullLayout,n=t.getBoundingClientRect(),i=n.left,a=n.top,o=i+n.width,s=a+n.height,l=Rf.apply3DTransform(r._invTransform)(i,a),u=Rf.apply3DTransform(r._invTransform)(o,s),c=l[0],f=l[1],h=u[0],d=u[1];return{x:c,y:f,width:h-c,height:d-f,top:Math.min(f,d),left:Math.min(c,h),right:Math.max(c,h),bottom:Math.max(f,d)}}});var oM=ye((Zrr,Dle)=>{"use strict";var Kst=Mr(),Jst=va(),$st=rp().isUnifiedHover;Dle.exports=function(t,r,n,i){i=i||{};var a=r.legend;function o(s){i.font[s]||(i.font[s]=a?r.legend.font[s]:r.font[s])}r&&$st(r.hovermode)&&(i.font||(i.font={}),o("size"),o("family"),o("color"),o("weight"),o("style"),o("variant"),a?(i.bgcolor||(i.bgcolor=Jst.combine(r.legend.bgcolor,r.paper_bgcolor)),i.bordercolor||(i.bordercolor=r.legend.bordercolor)):i.bgcolor||(i.bgcolor=r.paper_bgcolor)),n("hoverlabel.bgcolor",i.bgcolor),n("hoverlabel.bordercolor",i.bordercolor),n("hoverlabel.namelength",i.namelength),Kst.coerceFont(n,"hoverlabel.font",i.font),n("hoverlabel.align",i.align)}});var Fle=ye((Xrr,zle)=>{"use strict";var Qst=Mr(),elt=oM(),tlt=N1();zle.exports=function(t,r){function n(i,a){return Qst.coerce(t,r,tlt,i,a)}elt(t,r,n)}});var Ble=ye((Yrr,Ole)=>{"use strict";var qle=Mr(),rlt=i3(),ilt=oM();Ole.exports=function(t,r,n,i){function a(s,l){return qle.coerce(t,r,rlt,s,l)}var o=qle.extendFlat({},i.hoverlabel);r.hovertemplate&&(o.namelength=-1),ilt(t,r,a,o)}});var OB=ye((Krr,Nle)=>{"use strict";var nlt=Mr(),alt=N1();Nle.exports=function(t,r){function n(i,a){return r[i]!==void 0?r[i]:nlt.coerce(t,r,alt,i,a)}return n("clickmode"),n("hoversubplots"),n("hovermode")}});var Hle=ye((Jrr,Vle)=>{"use strict";var Ule=Mr(),olt=N1(),slt=OB(),llt=oM();Vle.exports=function(t,r){function n(c,f){return Ule.coerce(t,r,olt,c,f)}var i=slt(t,r);i&&(n("hoverdistance"),n("spikedistance"));var a=n("dragmode");a==="select"&&n("selectdirection");var o=r._has("mapbox"),s=r._has("map"),l=r._has("geo"),u=r._basePlotModules.length;r.dragmode==="zoom"&&((o||s||l)&&u===1||(o||s)&&l&&u===2)&&(r.dragmode="pan"),llt(t,r,n),Ule.coerceFont(n,"hoverlabel.grouptitlefont",r.hoverlabel.font)}});var Wle=ye(($rr,jle)=>{"use strict";var BB=Mr(),Gle=ba();jle.exports=function(t){var r=t.calcdata,n=t._fullLayout;function i(u){return function(c){return BB.coerceHoverinfo({hoverinfo:c},{_module:u._module},n)}}for(var a=0;a<r.length;a++){var o=r[a],s=o[0].trace;if(!Gle.traceIs(s,"pie-like")){var l=Gle.traceIs(s,"2dMap")?ult:BB.fillArray;l(s.hoverinfo,o,"hi",i(s)),s.hovertemplate&&l(s.hovertemplate,o,"ht"),s.hoverlabel&&(l(s.hoverlabel.bgcolor,o,"hbg"),l(s.hoverlabel.bordercolor,o,"hbc"),l(s.hoverlabel.font.size,o,"hts"),l(s.hoverlabel.font.color,o,"htc"),l(s.hoverlabel.font.family,o,"htf"),l(s.hoverlabel.font.weight,o,"htw"),l(s.hoverlabel.font.style,o,"hty"),l(s.hoverlabel.font.variant,o,"htv"),l(s.hoverlabel.namelength,o,"hnl"),l(s.hoverlabel.align,o,"hta"))}}};function ult(e,t,r,n){n=n||BB.identity,Array.isArray(e)&&(t[0][r]=n(e))}});var Xle=ye((Qrr,Zle)=>{"use strict";var clt=ba(),flt=qB().hover;Zle.exports=function(t,r,n){var i=clt.getComponentMethod("annotations","onClick")(t,t._hoverdata);n!==void 0&&flt(t,r,n,!0);function a(){t.emit("plotly_click",{points:t._hoverdata,event:r})}t._hoverdata&&r&&r.target&&(i&&i.then?i.then(a):a(),r.stopImmediatePropagation&&r.stopImmediatePropagation())}});var Nc=ye((eir,Jle)=>{"use strict";var hlt=xa(),NL=Mr(),dlt=gv(),sM=rp(),Yle=N1(),Kle=qB();Jle.exports={moduleType:"component",name:"fx",constants:IS(),schema:{layout:Yle},attributes:i3(),layoutAttributes:Yle,supplyLayoutGlobalDefaults:Fle(),supplyDefaults:Ble(),supplyLayoutDefaults:Hle(),calc:Wle(),getDistanceFunction:sM.getDistanceFunction,getClosest:sM.getClosest,inbox:sM.inbox,quadrature:sM.quadrature,appendArrayPointValue:sM.appendArrayPointValue,castHoverOption:plt,castHoverinfo:glt,hover:Kle.hover,unhover:dlt.unhover,loneHover:Kle.loneHover,loneUnhover:vlt,click:Xle()};function vlt(e){var t=NL.isD3Selection(e)?e:hlt.select(e);t.selectAll("g.hovertext").remove(),t.selectAll(".spikeline").remove()}function plt(e,t,r){return NL.castOption(e,t,"hoverlabel."+r)}function glt(e,t,r){function n(i){return NL.coerceHoverinfo({hoverinfo:i},{_module:e._module},t)}return NL.castOption(e,r,"hoverinfo",n)}});var Sg=ye(My=>{"use strict";My.selectMode=function(e){return e==="lasso"||e==="select"};My.drawMode=function(e){return e==="drawclosedpath"||e==="drawopenpath"||e==="drawline"||e==="drawrect"||e==="drawcircle"};My.openMode=function(e){return e==="drawline"||e==="drawopenpath"};My.rectMode=function(e){return e==="select"||e==="drawline"||e==="drawrect"||e==="drawcircle"};My.freeMode=function(e){return e==="lasso"||e==="drawclosedpath"||e==="drawopenpath"};My.selectingOrDrawing=function(e){return My.freeMode(e)||My.rectMode(e)}});var lM=ye((rir,$le)=>{"use strict";$le.exports=function(t){var r=t._fullLayout;r._glcanvas&&r._glcanvas.size()&&r._glcanvas.each(function(n){n.regl&&n.regl.clear({color:!0,depth:!0})})}});var UL=ye((iir,Qle)=>{"use strict";Qle.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'>"," <title>plotly-logomark</title>"," <g id='symbol'>"," <rect fill='#000' x='0' y='0' width='132' height='132' rx='18' ry='18'/>"," <circle fill='#9EF' cx='102' cy='30' r='6'/>"," <circle fill='#BAC' cx='78' cy='30' r='6'/>"," <circle fill='#BAC' cx='78' cy='54' r='6'/>"," <circle fill='#D69' cx='54' cy='30' r='6'/>"," <circle fill='#F26' cx='30' cy='30' r='6'/>"," <circle fill='#F26' cx='30' cy='54' r='6'/>"," <path fill='#FFF' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/>"," <path fill='#FFF' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/>"," <path fill='#FFF' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/>"," <path fill='#FFF' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/>"," </g>","</svg>"].join("")}}});var HL=ye((nir,eue)=>{"use strict";var VL=32;eue.exports={CIRCLE_SIDES:VL,i000:0,i090:VL/4,i180:VL/2,i270:VL/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}});var GL=ye((air,rue)=>{"use strict";var mlt=Mr().strTranslate;function tue(e,t){switch(e.type){case"log":return e.p2d(t);case"date":return e.p2r(t,0,e.calendar);default:return e.p2r(t)}}function ylt(e,t){switch(e.type){case"log":return e.d2p(t);case"date":return e.r2p(t,0,e.calendar);default:return e.r2p(t)}}function _lt(e){var t=e._id.charAt(0)==="y"?1:0;return function(r){return tue(e,r[t])}}function xlt(e){return mlt(e.xaxis._offset,e.yaxis._offset)}rue.exports={p2r:tue,r2p:ylt,axValue:_lt,getTransform:xlt}});var c_=ye(Ey=>{"use strict";var blt=XS(),aue=HL(),V3=aue.CIRCLE_SIDES,NB=aue.SQRT2,oue=GL(),iue=oue.p2r,nue=oue.r2p,wlt=[0,3,4,5,6,1,2],Tlt=[0,3,4,1,2];Ey.writePaths=function(e){var t=e.length;if(!t)return"M0,0Z";for(var r="",n=0;n<t;n++)for(var i=e[n].length,a=0;a<i;a++){var o=e[n][a][0];if(o==="Z")r+="Z";else for(var s=e[n][a].length,l=0;l<s;l++){var u=l;o==="Q"||o==="S"?u=Tlt[l]:o==="C"&&(u=wlt[l]),r+=e[n][a][u],l>0&&l<s-1&&(r+=",")}}return r};Ey.readPaths=function(e,t,r,n){var i=blt(e),a=[],o=-1,s=function(){o++,a[o]=[]},l,u=0,c=0,f,h,d=function(){f=u,h=c};d();for(var v=0;v<i.length;v++){var x=[],b,p,E,k,A=i[v][0],L=A;switch(A){case"M":s(),u=+i[v][1],c=+i[v][2],x.push([L,u,c]),d();break;case"Q":case"S":b=+i[v][1],E=+i[v][2],u=+i[v][3],c=+i[v][4],x.push([L,u,c,b,E]);break;case"C":b=+i[v][1],E=+i[v][2],p=+i[v][3],k=+i[v][4],u=+i[v][5],c=+i[v][6],x.push([L,u,c,b,E,p,k]);break;case"T":case"L":u=+i[v][1],c=+i[v][2],x.push([L,u,c]);break;case"H":L="L",u=+i[v][1],x.push([L,u,c]);break;case"V":L="L",c=+i[v][1],x.push([L,u,c]);break;case"A":L="L";var _=+i[v][1],C=+i[v][2];+i[v][4]||(_=-_,C=-C);var M=u-_,g=c;for(l=1;l<=V3/2;l++){var P=2*Math.PI*l/V3;x.push([L,M+_*Math.cos(P),g+C*Math.sin(P)])}break;case"Z":(u!==f||c!==h)&&(u=f,c=h,x.push([L,u,c]));break}for(var T=(r||{}).domain,F=t._fullLayout._size,q=r&&r.xsizemode==="pixel",V=r&&r.ysizemode==="pixel",H=n===!1,X=0;X<x.length;X++){for(l=0;l+2<7;l+=2){var G=x[X][l+1],N=x[X][l+2];G===void 0||N===void 0||(u=G,c=N,r&&(r.xaxis&&r.xaxis.p2r?(H&&(G-=r.xaxis._offset),q?G=nue(r.xaxis,r.xanchor)+G:G=iue(r.xaxis,G)):(H&&(G-=F.l),T?G=T.x[0]+G/F.w:G=G/F.w),r.yaxis&&r.yaxis.p2r?(H&&(N-=r.yaxis._offset),V?N=nue(r.yaxis,r.yanchor)-N:N=iue(r.yaxis,N)):(H&&(N-=F.t),T?N=T.y[1]-N/F.h:N=1-N/F.h)),x[X][l+1]=G,x[X][l+2]=N)}a[o].push(x[X].slice())}}return a};function uM(e,t){return Math.abs(e-t)<=1e-6}function jL(e,t){var r=t[1]-e[1],n=t[2]-e[2];return Math.sqrt(r*r+n*n)}Ey.pointsOnRectangle=function(e){var t=e.length;if(t!==5)return!1;for(var r=1;r<3;r++){var n=e[0][r]-e[1][r],i=e[3][r]-e[2][r];if(!uM(n,i))return!1;var a=e[0][r]-e[3][r],o=e[1][r]-e[2][r];if(!uM(a,o))return!1}return!uM(e[0][1],e[1][1])&&!uM(e[0][1],e[3][1])?!1:!!(jL(e[0],e[1])*jL(e[0],e[3]))};Ey.pointsOnEllipse=function(e){var t=e.length;if(t!==V3+1)return!1;t=V3;for(var r=0;r<t;r++){var n=(t*2-r)%t,i=(t/2+n)%t,a=(t/2+r)%t;if(!uM(jL(e[r],e[a]),jL(e[n],e[i])))return!1}return!0};Ey.handleEllipse=function(e,t,r){if(!e)return[t,r];var n=Ey.ellipseOver({x0:t[0],y0:t[1],x1:r[0],y1:r[1]}),i=(n.x1+n.x0)/2,a=(n.y1+n.y0)/2,o=(n.x1-n.x0)/2,s=(n.y1-n.y0)/2;o||(o=s=s/NB),s||(s=o=o/NB);for(var l=[],u=0;u<V3;u++){var c=u*2*Math.PI/V3;l.push([i+o*Math.cos(c),a+s*Math.sin(c)])}return l};Ey.ellipseOver=function(e){var t=e.x0,r=e.y0,n=e.x1,i=e.y1,a=n-t,o=i-r;t-=a,r-=o;var s=(t+n)/2,l=(r+i)/2,u=NB;return a*=u,o*=u,{x0:s-a,y0:l-o,x1:s+a,y1:l+o}};Ey.fixDatesForPaths=function(e,t,r){var n=t.type==="date",i=r.type==="date";if(!n&&!i)return e;for(var a=0;a<e.length;a++)for(var o=0;o<e[a].length;o++)for(var s=0;s+2<e[a][o].length;s+=2)n&&(e[a][o][s+1]=e[a][o][s+1].replace(" ","_")),i&&(e[a][o][s+2]=e[a][o][s+2].replace(" ","_"));return e}});var XL=ye((sir,vue)=>{"use strict";var fue=Sg(),Alt=fue.drawMode,Slt=fue.openMode,H3=HL(),sue=H3.i000,lue=H3.i090,uue=H3.i180,cue=H3.i270,Mlt=H3.cos45,Elt=H3.sin45,hue=GL(),WL=hue.p2r,f_=hue.r2p,klt=e_(),Clt=klt.clearOutline,ZL=c_(),Llt=ZL.readPaths,Plt=ZL.writePaths,Ilt=ZL.ellipseOver,Rlt=ZL.fixDatesForPaths;function Dlt(e,t){if(e.length){var r=e[0][0];if(r){var n=t.gd,i=t.isActiveShape,a=t.dragmode,o=(n.layout||{}).shapes||[];if(!Alt(a)&&i!==void 0){var s=n._fullLayout._activeShapeIndex;if(s<o.length)switch(n._fullLayout.shapes[s].type){case"rect":a="drawrect";break;case"circle":a="drawcircle";break;case"line":a="drawline";break;case"path":var l=o[s].path||"";l[l.length-1]==="Z"?a="drawclosedpath":a="drawopenpath";break}}var u=due(e,t,a);Clt(n);for(var c=t.editHelpers,f=(c||{}).modifyItem,h=[],d=0;d<o.length;d++){var v=n._fullLayout.shapes[d];if(h[d]=v._input,i!==void 0&&d===n._fullLayout._activeShapeIndex){var x=u;switch(v.type){case"line":case"rect":case"circle":f("x0",x.x0-(v.x0shift||0)),f("x1",x.x1-(v.x1shift||0)),f("y0",x.y0-(v.y0shift||0)),f("y1",x.y1-(v.y1shift||0));break;case"path":f("path",x.path);break}}}return i===void 0?(h.push(u),h):c?c.getUpdateObj():{}}}}function due(e,t,r){var n=e[0][0],i=t.gd,a=n.getAttribute("d"),o=i._fullLayout.newshape,s=t.plotinfo,l=t.isActiveShape,u=s.xaxis,c=s.yaxis,f=!!s.domain||!s.xaxis,h=!!s.domain||!s.yaxis,d=Slt(r),v=Llt(a,i,s,l),x={editable:!0,visible:o.visible,name:o.name,showlegend:o.showlegend,legend:o.legend,legendwidth:o.legendwidth,legendgroup:o.legendgroup,legendgrouptitle:{text:o.legendgrouptitle.text,font:o.legendgrouptitle.font},legendrank:o.legendrank,label:o.label,xref:f?"paper":u._id,yref:h?"paper":c._id,layer:o.layer,opacity:o.opacity,line:{color:o.line.color,width:o.line.width,dash:o.line.dash}};d||(x.fillcolor=o.fillcolor,x.fillrule=o.fillrule);var b;if(v.length===1&&(b=v[0]),b&&b.length===5&&r==="drawrect")x.type="rect",x.x0=b[0][1],x.y0=b[0][2],x.x1=b[2][1],x.y1=b[2][2];else if(b&&r==="drawline")x.type="line",x.x0=b[0][1],x.y0=b[0][2],x.x1=b[1][1],x.y1=b[1][2];else if(b&&r==="drawcircle"){x.type="circle";var p=b[sue][1],E=b[lue][1],k=b[uue][1],A=b[cue][1],L=b[sue][2],_=b[lue][2],C=b[uue][2],M=b[cue][2],g=s.xaxis&&(s.xaxis.type==="date"||s.xaxis.type==="log"),P=s.yaxis&&(s.yaxis.type==="date"||s.yaxis.type==="log");g&&(p=f_(s.xaxis,p),E=f_(s.xaxis,E),k=f_(s.xaxis,k),A=f_(s.xaxis,A)),P&&(L=f_(s.yaxis,L),_=f_(s.yaxis,_),C=f_(s.yaxis,C),M=f_(s.yaxis,M));var T=(E+A)/2,F=(L+C)/2,q=(A-E+k-p)/2,V=(M-_+C-L)/2,H=Ilt({x0:T,y0:F,x1:T+q*Mlt,y1:F+V*Elt});g&&(H.x0=WL(s.xaxis,H.x0),H.x1=WL(s.xaxis,H.x1)),P&&(H.y0=WL(s.yaxis,H.y0),H.y1=WL(s.yaxis,H.y1)),x.x0=H.x0,x.y0=H.y0,x.x1=H.x1,x.y1=H.y1}else x.type="path",u&&c&&Rlt(v,u,c),x.path=Plt(v),b=null;return x}vue.exports={newShapes:Dlt,createShapeObj:due}});var VB=ye((lir,pue)=>{"use strict";var zlt=Sg(),Flt=zlt.selectMode,qlt=e_(),Olt=qlt.clearOutline,UB=c_(),Blt=UB.readPaths,Nlt=UB.writePaths,Ult=UB.fixDatesForPaths;pue.exports=function(t,r){if(t.length){var n=t[0][0];if(n){var i=n.getAttribute("d"),a=r.gd,o=a._fullLayout.newselection,s=r.plotinfo,l=s.xaxis,u=s.yaxis,c=r.isActiveSelection,f=r.dragmode,h=(a.layout||{}).selections||[];if(!Flt(f)&&c!==void 0){var d=a._fullLayout._activeSelectionIndex;if(d<h.length)switch(a._fullLayout.selections[d].type){case"rect":f="select";break;case"path":f="lasso";break}}var v=Blt(i,a,s,c),x={xref:l._id,yref:u._id,opacity:o.opacity,line:{color:o.line.color,width:o.line.width,dash:o.line.dash}},b;v.length===1&&(b=v[0]),b&&b.length===5&&f==="select"?(x.type="rect",x.x0=b[0][1],x.y0=b[0][2],x.x1=b[2][1],x.y1=b[2][2]):(x.type="path",l&&u&&Ult(v,l,u),x.path=Nlt(v),b=null),Olt(a);for(var p=r.editHelpers,E=(p||{}).modifyItem,k=[],A=0;A<h.length;A++){var L=a._fullLayout.selections[A];if(!L){k[A]=L;continue}if(k[A]=L._input,c!==void 0&&A===a._fullLayout._activeSelectionIndex){var _=x;switch(L.type){case"rect":E("x0",_.x0),E("x1",_.x1),E("y0",_.y0),E("y1",_.y1);break;case"path":E("path",_.path);break}}}return c===void 0?(k.push(x),k):p?p.getUpdateObj():{}}}}});var cM=ye((uir,gue)=>{"use strict";gue.exports={segmentRE:/[MLHVQCTSZ][^MLHVQCTSZ]*/g,paramRE:/[^\s,]+/g,paramIsX:{M:{0:!0,drawn:0},L:{0:!0,drawn:0},H:{0:!0,drawn:0},V:{},Q:{0:!0,2:!0,drawn:2},C:{0:!0,2:!0,4:!0,drawn:4},T:{0:!0,drawn:0},S:{0:!0,2:!0,drawn:2},Z:{}},paramIsY:{M:{1:!0,drawn:1},L:{1:!0,drawn:1},H:{},V:{0:!0,drawn:0},Q:{1:!0,3:!0,drawn:3},C:{1:!0,3:!0,5:!0,drawn:5},T:{1:!0,drawn:1},S:{1:!0,3:!0,drawn:5},Z:{}},numParams:{M:2,L:2,H:1,V:1,Q:4,C:6,T:2,S:4,Z:0}}});var h_=ye(Ld=>{"use strict";var Fb=cM(),mue=Mr(),YL=Qa();Ld.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}};Ld.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}};Ld.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}};Ld.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}};Ld.extractPathCoords=function(e,t,r){var n=[],i=e.match(Fb.segmentRE);return i.forEach(function(a){var o=t[a.charAt(0)].drawn;if(o!==void 0){var s=a.substr(1).match(Fb.paramRE);if(!(!s||s.length<o)){var l=s[o],u=r?l:mue.cleanNumber(l);n.push(u)}}}),n};Ld.getDataToPixel=function(e,t,r,n,i){var a=e._fullLayout._size,o;if(t)if(i==="domain")o=function(l){return t._length*(n?1-l:l)+t._offset};else{var s=Ld.shapePositionToRange(t);o=function(l){var u=fM(t,r);return t._offset+t.r2p(s(l,!0))+u},t.type==="date"&&(o=Ld.decodeDate(o))}else n?o=function(l){return a.t+a.h*(1-l)}:o=function(l){return a.l+a.w*l};return o};Ld.getPixelToData=function(e,t,r,n){var i=e._fullLayout._size,a;if(t)if(n==="domain")a=function(s){var l=(s-t._offset)/t._length;return r?1-l:l};else{var o=Ld.rangeToShapePosition(t);a=function(s){return o(t.p2r(s-t._offset))}}else r?a=function(s){return 1-(s-i.t)/i.h}:a=function(s){return(s-i.l)/i.w};return a};Ld.roundPositionForSharpStrokeRendering=function(e,t){var r=Math.round(t%2)===1,n=Math.round(e);return r?n+.5:n};Ld.makeShapesOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.shapes[t]||{},n=e._fullLayout._plots[r.xref+r.yref],i=!!n;return i?n._hadPlotinfo=!0:(n={},r.xref&&r.xref!=="paper"&&(n.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&r.yref!=="paper"&&(n.yaxis=e._fullLayout[r.yref+"axis"])),n.xsizemode=r.xsizemode,n.ysizemode=r.ysizemode,n.xanchor=r.xanchor,n.yanchor=r.yanchor,{options:r,plotinfo:n}};Ld.makeSelectionsOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.selections[t]||{},n=e._fullLayout._plots[r.xref+r.yref],i=!!n;return i?n._hadPlotinfo=!0:(n={},r.xref&&(n.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&(n.yaxis=e._fullLayout[r.yref+"axis"])),{options:r,plotinfo:n}};Ld.getPathString=function(e,t){var r=t.type,n=YL.getRefType(t.xref),i=YL.getRefType(t.yref),a=YL.getFromId(e,t.xref),o=YL.getFromId(e,t.yref),s=e._fullLayout._size,l,u,c,f,h=fM(a,t.x0shift),d=fM(a,t.x1shift),v=fM(o,t.y0shift),x=fM(o,t.y1shift),b,p,E,k;if(a?n==="domain"?u=function(q){return a._offset+a._length*q}:(l=Ld.shapePositionToRange(a),u=function(q){return a._offset+a.r2p(l(q,!0))}):u=function(q){return s.l+s.w*q},o?i==="domain"?f=function(q){return o._offset+o._length*(1-q)}:(c=Ld.shapePositionToRange(o),f=function(q){return o._offset+o.r2p(c(q,!0))}):f=function(q){return s.t+s.h*(1-q)},r==="path")return a&&a.type==="date"&&(u=Ld.decodeDate(u)),o&&o.type==="date"&&(f=Ld.decodeDate(f)),Vlt(t,u,f);if(t.xsizemode==="pixel"){var A=u(t.xanchor);b=A+t.x0+h,p=A+t.x1+d}else b=u(t.x0)+h,p=u(t.x1)+d;if(t.ysizemode==="pixel"){var L=f(t.yanchor);E=L-t.y0+v,k=L-t.y1+x}else E=f(t.y0)+v,k=f(t.y1)+x;if(r==="line")return"M"+b+","+E+"L"+p+","+k;if(r==="rect")return"M"+b+","+E+"H"+p+"V"+k+"H"+b+"Z";var _=(b+p)/2,C=(E+k)/2,M=Math.abs(_-b),g=Math.abs(C-E),P="A"+M+","+g,T=_+M+","+C,F=_+","+(C-g);return"M"+T+P+" 0 1,1 "+F+P+" 0 0,1 "+T+"Z"};function Vlt(e,t,r){var n=e.path,i=e.xsizemode,a=e.ysizemode,o=e.xanchor,s=e.yanchor;return n.replace(Fb.segmentRE,function(l){var u=0,c=l.charAt(0),f=Fb.paramIsX[c],h=Fb.paramIsY[c],d=Fb.numParams[c],v=l.substr(1).replace(Fb.paramRE,function(x){return f[u]?i==="pixel"?x=t(o)+Number(x):x=t(x):h[u]&&(a==="pixel"?x=r(s)-Number(x):x=r(x)),u++,u>d&&(x="X"),x});return u>d&&(v=v.replace(/[\s,]*X.*/,""),mue.log("Ignoring extra params in segment "+l)),c+v})}function fM(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}});var GB=ye((fir,bue)=>{"use strict";var Hlt=Mr(),G3=Qa(),yue=Pl(),_ue=ao(),Glt=c_().readPaths,HB=h_(),jlt=HB.getPathString,xue=b6(),Wlt=Nh().FROM_TL;bue.exports=function(t,r,n,i){if(i.selectAll(".shape-label").remove(),!!(n.label.text||n.label.texttemplate)){var a;if(n.label.texttemplate){var o={};if(n.type!=="path"){var s=G3.getFromId(t,n.xref),l=G3.getFromId(t,n.yref);for(var u in xue){var c=xue[u](n,s,l);c!==void 0&&(o[u]=c)}}a=Hlt.texttemplateStringForShapes(n.label.texttemplate,{},t._fullLayout._d3locale,o)}else a=n.label.text;var f={"data-index":r},h=n.label.font,d={"data-notex":1},v=i.append("g").attr(f).classed("shape-label",!0),x=v.append("text").attr(d).classed("shape-label-text",!0).text(a),b,p,E,k;if(n.path){var A=jlt(t,n),L=Glt(A,t);b=1/0,E=1/0,p=-1/0,k=-1/0;for(var _=0;_<L.length;_++)for(var C=0;C<L[_].length;C++)for(var M=L[_][C],g=1;g<M.length;g+=2){var P=M[g],T=M[g+1];b=Math.min(b,P),p=Math.max(p,P),E=Math.min(E,T),k=Math.max(k,T)}}else{var F=G3.getFromId(t,n.xref),q=n.x0shift,V=n.x1shift,H=G3.getRefType(n.xref),X=G3.getFromId(t,n.yref),G=n.y0shift,N=n.y1shift,W=G3.getRefType(n.yref),re=function(Ee,Ae){var ze=HB.getDataToPixel(t,F,Ae,!1,H);return ze(Ee)},ae=function(Ee,Ae){var ze=HB.getDataToPixel(t,X,Ae,!0,W);return ze(Ee)};b=re(n.x0,q),p=re(n.x1,V),E=ae(n.y0,G),k=ae(n.y1,N)}var _e=n.label.textangle;_e==="auto"&&(n.type==="line"?_e=Zlt(b,E,p,k):_e=0),x.call(function(Ee){return Ee.call(_ue.font,h).attr({}),yue.convertToTspans(Ee,t),Ee});var Me=_ue.bBox(x.node()),ke=Xlt(b,E,p,k,n,_e,Me),ge=ke.textx,ie=ke.texty,Te=ke.xanchor;x.attr({"text-anchor":{left:"start",center:"middle",right:"end"}[Te],y:ie,x:ge,transform:"rotate("+_e+","+ge+","+ie+")"}).call(yue.positionText,ge,ie)}};function Zlt(e,t,r,n){var i,a;return a=Math.abs(r-e),r>=e?i=t-n:i=n-t,-180/Math.PI*Math.atan2(i,a)}function Xlt(e,t,r,n,i,a,o){var s=i.label.textposition,l=i.label.textangle,u=i.label.padding,c=i.type,f=Math.PI/180*a,h=Math.sin(f),d=Math.cos(f),v=i.label.xanchor,x=i.label.yanchor,b,p,E,k;if(c==="line"){s==="start"?(b=e,p=t):s==="end"?(b=r,p=n):(b=(e+r)/2,p=(t+n)/2),v==="auto"&&(s==="start"?l==="auto"?r>e?v="left":r<e?v="right":v="center":r>e?v="right":r<e?v="left":v="center":s==="end"?l==="auto"?r>e?v="right":r<e?v="left":v="center":r>e?v="left":r<e?v="right":v="center":v="center");var A={left:1,center:0,right:-1},L={bottom:-1,middle:0,top:1};if(l==="auto"){var _=L[x];E=-u*h*_,k=u*d*_}else{var C=A[v],M=L[x];E=u*C,k=u*M}b=b+E,p=p+k}else E=u+3,s.indexOf("right")!==-1?(b=Math.max(e,r)-E,v==="auto"&&(v="right")):s.indexOf("left")!==-1?(b=Math.min(e,r)+E,v==="auto"&&(v="left")):(b=(e+r)/2,v==="auto"&&(v="center")),s.indexOf("top")!==-1?p=Math.min(t,n):s.indexOf("bottom")!==-1?p=Math.max(t,n):p=(t+n)/2,k=u,x==="bottom"?p=p-k:x==="top"&&(p=p+k);var g=Wlt[x],P=i.label.font.size,T=o.height,F=(T*g-P)*h,q=-(T*g-P)*d;return{textx:b+F,texty:p+q,xanchor:v}}});var $L=ye((hir,Cue)=>{"use strict";var Ylt=Mr(),Klt=Ylt.strTranslate,wue=gv(),Sue=Sg(),Jlt=Sue.drawMode,Mue=Sue.selectMode,Eue=ba(),Tue=va(),JL=HL(),$lt=JL.i000,Qlt=JL.i090,eut=JL.i180,tut=JL.i270,rut=e_(),kue=rut.clearOutlineControllers,WB=c_(),KL=WB.pointsOnRectangle,jB=WB.pointsOnEllipse,iut=WB.writePaths,nut=XL().newShapes,aut=XL().createShapeObj,out=VB(),sut=GB();Cue.exports=function e(t,r,n,i){i||(i=0);var a=n.gd;function o(){e(t,r,n,i++),(jB(t[0])||n.hasText)&&s({redrawing:!0})}function s(G){var N={};n.isActiveShape!==void 0&&(n.isActiveShape=!1,N=nut(r,n)),n.isActiveSelection!==void 0&&(n.isActiveSelection=!1,N=out(r,n),a._fullLayout._reselect=!0),Object.keys(N).length&&Eue.call((G||{}).redrawing?"relayout":"_guiRelayout",a,N)}var l=a._fullLayout,u=l._zoomlayer,c=n.dragmode,f=Jlt(c),h=Mue(c);(f||h)&&(a._fullLayout._outlining=!0),kue(a),r.attr("d",iut(t));var d,v,x,b,p;if(!i&&(n.isActiveShape||n.isActiveSelection)){p=lut([],t);var E=u.append("g").attr("class","outline-controllers");P(E),X()}if(f&&n.hasText){var k=u.select(".label-temp"),A=aut(r,n,n.dragmode);sut(a,"label-temp",A,k)}function L(G){x=+G.srcElement.getAttribute("data-i"),b=+G.srcElement.getAttribute("data-j"),d[x][b].moveFn=_}function _(G,N){if(t.length){var W=p[x][b][1],re=p[x][b][2],ae=t[x],_e=ae.length;if(KL(ae)){var Me=G,ke=N;if(n.isActiveSelection){var ge=Aue(ae,b);ge[1]===ae[b][1]?ke=0:Me=0}for(var ie=0;ie<_e;ie++)if(ie!==b){var Te=ae[ie];Te[1]===ae[b][1]&&(Te[1]=W+Me),Te[2]===ae[b][2]&&(Te[2]=re+ke)}if(ae[b][1]=W+Me,ae[b][2]=re+ke,!KL(ae))for(var Ee=0;Ee<_e;Ee++)for(var Ae=0;Ae<ae[Ee].length;Ae++)ae[Ee][Ae]=p[x][Ee][Ae]}else ae[b][1]=W+G,ae[b][2]=re+N;o()}}function C(){s()}function M(){if(t.length&&t[x]&&t[x].length){for(var G=[],N=0;N<t[x].length;N++)N!==b&&G.push(t[x][N]);G.length>1&&!(G.length===2&&G[1][0]==="Z")&&(b===0&&(G[0][0]="M"),t[x]=G,o(),s())}}function g(G,N){if(G===2){x=+N.srcElement.getAttribute("data-i"),b=+N.srcElement.getAttribute("data-j");var W=t[x];!KL(W)&&!jB(W)&&M()}}function P(G){d=[];for(var N=0;N<t.length;N++){var W=t[N],re=KL(W),ae=!re&&jB(W);d[N]=[];for(var _e=W.length,Me=0;Me<_e;Me++)if(W[Me][0]!=="Z"&&!(ae&&Me!==$lt&&Me!==Qlt&&Me!==eut&&Me!==tut)){var ke=re&&n.isActiveSelection,ge;ke&&(ge=Aue(W,Me));var ie=W[Me][1],Te=W[Me][2],Ee=G.append(ke?"rect":"circle").attr("data-i",N).attr("data-j",Me).style({fill:Tue.background,stroke:Tue.defaultLine,"stroke-width":1,"shape-rendering":"crispEdges"});if(ke){var Ae=ge[1]-ie,ze=ge[2]-Te,Ce=ze?5:Math.max(Math.min(25,Math.abs(Ae)-5),5),me=Ae?5:Math.max(Math.min(25,Math.abs(ze)-5),5);Ee.classed(ze?"cursor-ew-resize":"cursor-ns-resize",!0).attr("width",Ce).attr("height",me).attr("x",ie-Ce/2).attr("y",Te-me/2).attr("transform",Klt(Ae/2,ze/2))}else Ee.classed("cursor-grab",!0).attr("r",5).attr("cx",ie).attr("cy",Te);d[N][Me]={element:Ee.node(),gd:a,prepFn:L,doneFn:C,clickFn:g},wue.init(d[N][Me])}}}function T(G,N){if(t.length)for(var W=0;W<t.length;W++)for(var re=0;re<t[W].length;re++)for(var ae=0;ae+2<t[W][re].length;ae+=2)t[W][re][ae+1]=p[W][re][ae+1]+G,t[W][re][ae+2]=p[W][re][ae+2]+N}function F(G,N){T(G,N),o()}function q(G){x=+G.srcElement.getAttribute("data-i"),x||(x=0),v[x].moveFn=F}function V(){s()}function H(G){G===2&&uut(a)}function X(){if(v=[],!!t.length){var G=0;v[G]={element:r[0][0],gd:a,prepFn:q,doneFn:V,clickFn:H},wue.init(v[G])}}};function lut(e,t){for(var r=0;r<t.length;r++){var n=t[r];e[r]=[];for(var i=0;i<n.length;i++){e[r][i]=[];for(var a=0;a<n[i].length;a++)e[r][i][a]=n[i][a]}}return e}function Aue(e,t){var r=e[t][1],n=e[t][2],i=e.length,a,o,s;return a=(t+1)%i,o=e[a][1],s=e[a][2],o===r&&s===n&&(a=(t+2)%i,o=e[a][1],s=e[a][2]),[a,o,s]}function uut(e){if(Mue(e._fullLayout.dragmode)){kue(e);var t=e._fullLayout._activeSelectionIndex,r=(e.layout||{}).selections||[];if(t<r.length){for(var n=[],i=0;i<r.length;i++)i!==t&&n.push(r[i]);delete e._fullLayout._activeSelectionIndex;var a=e._fullLayout.selections[t];e._fullLayout._deselect={xref:a.xref,yref:a.yref},Eue.call("_guiRelayout",e,{selections:n})}}}});var rP=ye((dir,Bue)=>{"use strict";var cut=xa(),zue=ba(),Lue=Mr(),j3=Qa(),fut=c_().readPaths,hut=$L(),eP=GB(),Fue=e_().clearOutlineControllers,ZB=va(),YB=ao(),dut=Vs().arrayEditor,Pue=gv(),Iue=Tg(),qb=cM(),Mp=h_(),XB=Mp.getPathString;Bue.exports={draw:KB,drawOne:que,eraseActiveShape:gut,drawLabel:eP};function KB(e){var t=e._fullLayout;t._shapeUpperLayer.selectAll("path").remove(),t._shapeLowerLayer.selectAll("path").remove(),t._shapeUpperLayer.selectAll("text").remove(),t._shapeLowerLayer.selectAll("text").remove();for(var r in t._plots){var n=t._plots[r].shapelayer;n&&(n.selectAll("path").remove(),n.selectAll("text").remove())}for(var i=0;i<t.shapes.length;i++)t.shapes[i].visible===!0&&que(e,i)}function QL(e){return!!e._fullLayout._outlining}function tP(e){return!e._context.edits.shapePosition}function que(e,t){e._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+t+'"]').remove();var r=Mp.makeShapesOptionsAndPlotinfo(e,t),n=r.options,i=r.plotinfo;if(!n._input||n.visible!==!0)return;if(n.layer==="above")o(e._fullLayout._shapeUpperLayer);else if(n.xref==="paper"||n.yref==="paper")o(e._fullLayout._shapeLowerLayer);else if(n.layer==="between")o(i.shapelayerBetween);else if(i._hadPlotinfo){var a=i.mainplotinfo||i;o(a.shapelayer)}else o(e._fullLayout._shapeLowerLayer);function o(s){var l=XB(e,n),u={"data-index":t,"fill-rule":n.fillrule,d:l},c=n.opacity,f=n.fillcolor,h=n.line.width?n.line.color:"rgba(0,0,0,0)",d=n.line.width,v=n.line.dash;!d&&n.editable===!0&&(d=5,v="solid");var x=l[l.length-1]!=="Z",b=tP(e)&&n.editable&&e._fullLayout._activeShapeIndex===t;b&&(f=x?"rgba(0,0,0,0)":e._fullLayout.activeshape.fillcolor,c=e._fullLayout.activeshape.opacity);var p=s.append("g").classed("shape-group",!0).attr({"data-index":t}),E=p.append("path").attr(u).style("opacity",c).call(ZB.stroke,h).call(ZB.fill,f).call(YB.dashLine,v,d);Oue(p,e,n),eP(e,t,n,p);var k;if((b||e._context.edits.shapePosition)&&(k=dut(e.layout,"shapes",n)),b){E.style({cursor:"move"});var A={element:E.node(),plotinfo:i,gd:e,editHelpers:k,hasText:n.label.text||n.label.texttemplate,isActiveShape:!0},L=fut(l,e);hut(L,E,A)}else e._context.edits.shapePosition?vut(e,E,n,t,s,k):n.editable===!0&&E.style("pointer-events",x||ZB.opacity(f)*c<=.5?"stroke":"all");E.node().addEventListener("click",function(){return put(e,E)})}}function Oue(e,t,r){var n=(r.xref+r.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");YB.setClipUrl(e,n?"clip"+t._fullLayout._uid+n:null,t)}function vut(e,t,r,n,i,a){var o=10,s=10,l=r.xsizemode==="pixel",u=r.ysizemode==="pixel",c=r.type==="line",f=r.type==="path",h=a.modifyItem,d,v,x,b,p,E,k,A,L,_,C,M,g,P,T,F=cut.select(t.node().parentNode),q=j3.getFromId(e,r.xref),V=j3.getRefType(r.xref),H=j3.getFromId(e,r.yref),X=j3.getRefType(r.yref),G=r.x0shift,N=r.x1shift,W=r.y0shift,re=r.y1shift,ae=function(rt,ot){var Rt=Mp.getDataToPixel(e,q,ot,!1,V);return Rt(rt)},_e=function(rt,ot){var Rt=Mp.getDataToPixel(e,H,ot,!0,X);return Rt(rt)},Me=Mp.getPixelToData(e,q,!1,V),ke=Mp.getPixelToData(e,H,!0,X),ge=Ee(),ie={element:ge.node(),gd:e,prepFn:Ce,doneFn:me,clickFn:Re},Te;Pue.init(ie),ge.node().onmousemove=ze;function Ee(){return c?Ae():t}function Ae(){var rt=10,ot=Math.max(r.line.width,rt),Rt=i.append("g").attr("data-index",n).attr("drag-helper",!0);Rt.append("path").attr("d",t.attr("d")).style({cursor:"move","stroke-width":ot,"stroke-opacity":"0"});var kt={"fill-opacity":"0"},Ct=Math.max(ot/2,rt);return Rt.append("circle").attr({"data-line-point":"start-point",cx:l?ae(r.xanchor)+r.x0:ae(r.x0,G),cy:u?_e(r.yanchor)-r.y0:_e(r.y0,W),r:Ct}).style(kt).classed("cursor-grab",!0),Rt.append("circle").attr({"data-line-point":"end-point",cx:l?ae(r.xanchor)+r.x1:ae(r.x1,N),cy:u?_e(r.yanchor)-r.y1:_e(r.y1,re),r:Ct}).style(kt).classed("cursor-grab",!0),Rt}function ze(rt){if(QL(e)){Te=null;return}if(c)rt.target.tagName==="path"?Te="move":Te=rt.target.attributes["data-line-point"].value==="start-point"?"resize-over-start-point":"resize-over-end-point";else{var ot=ie.element.getBoundingClientRect(),Rt=ot.right-ot.left,kt=ot.bottom-ot.top,Ct=rt.clientX-ot.left,Yt=rt.clientY-ot.top,xr=!f&&Rt>o&&kt>s&&!rt.shiftKey?Pue.getCursor(Ct/Rt,1-Yt/kt):"move";Iue(t,xr),Te=xr.split("-")[0]}}function Ce(rt){QL(e)||(l&&(p=ae(r.xanchor)),u&&(E=_e(r.yanchor)),r.type==="path"?T=r.path:(d=l?r.x0:ae(r.x0),v=u?r.y0:_e(r.y0),x=l?r.x1:ae(r.x1),b=u?r.y1:_e(r.y1)),d<x?(L=d,g="x0",_=x,P="x1"):(L=x,g="x1",_=d,P="x0"),!u&&v<b||u&&v>b?(k=v,C="y0",A=b,M="y1"):(k=b,C="y1",A=v,M="y0"),ze(rt),nt(i,r),qt(t,r,e),ie.moveFn=Te==="move"?ce:Ge,ie.altKey=rt.altKey)}function me(){QL(e)||(Iue(t),ct(i),Oue(t,e,r),zue.call("_guiRelayout",e,a.getUpdateObj()))}function Re(){QL(e)||ct(i)}function ce(rt,ot){if(r.type==="path"){var Rt=function(Yt){return Yt},kt=Rt,Ct=Rt;l?h("xanchor",r.xanchor=Me(p+rt)):(kt=function(xr){return Me(ae(xr)+rt)},q&&q.type==="date"&&(kt=Mp.encodeDate(kt))),u?h("yanchor",r.yanchor=ke(E+ot)):(Ct=function(xr){return ke(_e(xr)+ot)},H&&H.type==="date"&&(Ct=Mp.encodeDate(Ct))),h("path",r.path=Rue(T,kt,Ct))}else l?h("xanchor",r.xanchor=Me(p+rt)):(h("x0",r.x0=Me(d+rt)),h("x1",r.x1=Me(x+rt))),u?h("yanchor",r.yanchor=ke(E+ot)):(h("y0",r.y0=ke(v+ot)),h("y1",r.y1=ke(b+ot)));t.attr("d",XB(e,r)),nt(i,r),eP(e,n,r,F)}function Ge(rt,ot){if(f){var Rt=function(_r){return _r},kt=Rt,Ct=Rt;l?h("xanchor",r.xanchor=Me(p+rt)):(kt=function(Br){return Me(ae(Br)+rt)},q&&q.type==="date"&&(kt=Mp.encodeDate(kt))),u?h("yanchor",r.yanchor=ke(E+ot)):(Ct=function(Br){return ke(_e(Br)+ot)},H&&H.type==="date"&&(Ct=Mp.encodeDate(Ct))),h("path",r.path=Rue(T,kt,Ct))}else if(c){if(Te==="resize-over-start-point"){var Yt=d+rt,xr=u?v-ot:v+ot;h("x0",r.x0=l?Yt:Me(Yt)),h("y0",r.y0=u?xr:ke(xr))}else if(Te==="resize-over-end-point"){var er=x+rt,Ke=u?b-ot:b+ot;h("x1",r.x1=l?er:Me(er)),h("y1",r.y1=u?Ke:ke(Ke))}}else{var xt=function(_r){return Te.indexOf(_r)!==-1},bt=xt("n"),Lt=xt("s"),St=xt("w"),Et=xt("e"),dt=bt?k+ot:k,Ht=Lt?A+ot:A,$t=St?L+rt:L,fr=Et?_+rt:_;u&&(bt&&(dt=k-ot),Lt&&(Ht=A-ot)),(!u&&Ht-dt>s||u&&dt-Ht>s)&&(h(C,r[C]=u?dt:ke(dt)),h(M,r[M]=u?Ht:ke(Ht))),fr-$t>o&&(h(g,r[g]=l?$t:Me($t)),h(P,r[P]=l?fr:Me(fr)))}t.attr("d",XB(e,r)),nt(i,r),eP(e,n,r,F)}function nt(rt,ot){(l||u)&&Rt();function Rt(){var kt=ot.type!=="path",Ct=rt.selectAll(".visual-cue").data([0]),Yt=1;Ct.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":Yt}).classed("visual-cue",!0);var xr=ae(l?ot.xanchor:Lue.midRange(kt?[ot.x0,ot.x1]:Mp.extractPathCoords(ot.path,qb.paramIsX))),er=_e(u?ot.yanchor:Lue.midRange(kt?[ot.y0,ot.y1]:Mp.extractPathCoords(ot.path,qb.paramIsY)));if(xr=Mp.roundPositionForSharpStrokeRendering(xr,Yt),er=Mp.roundPositionForSharpStrokeRendering(er,Yt),l&&u){var Ke="M"+(xr-1-Yt)+","+(er-1-Yt)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Ct.attr("d",Ke)}else if(l){var xt="M"+(xr-1-Yt)+","+(er-9-Yt)+"v18 h2 v-18 Z";Ct.attr("d",xt)}else{var bt="M"+(xr-9-Yt)+","+(er-1-Yt)+"h18 v2 h-18 Z";Ct.attr("d",bt)}}}function ct(rt){rt.selectAll(".visual-cue").remove()}function qt(rt,ot,Rt){var kt=ot.xref,Ct=ot.yref,Yt=j3.getFromId(Rt,kt),xr=j3.getFromId(Rt,Ct),er="";kt!=="paper"&&!Yt.autorange&&(er+=kt),Ct!=="paper"&&!xr.autorange&&(er+=Ct),YB.setClipUrl(rt,er?"clip"+Rt._fullLayout._uid+er:null,Rt)}}function Rue(e,t,r){return e.replace(qb.segmentRE,function(n){var i=0,a=n.charAt(0),o=qb.paramIsX[a],s=qb.paramIsY[a],l=qb.numParams[a],u=n.substr(1).replace(qb.paramRE,function(c){return i>=l||(o[i]?c=t(c):s[i]&&(c=r(c)),i++),c});return a+u})}function put(e,t){if(tP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeShapeIndex){Due(e);return}e._fullLayout._activeShapeIndex=n,e._fullLayout._deactivateShape=Due,KB(e)}}}function Due(e){if(tP(e)){var t=e._fullLayout._activeShapeIndex;t>=0&&(Fue(e),delete e._fullLayout._activeShapeIndex,KB(e))}}function gut(e){if(tP(e)){Fue(e);var t=e._fullLayout._activeShapeIndex,r=(e.layout||{}).shapes||[];if(t<r.length){for(var n=[],i=0;i<r.length;i++)i!==t&&n.push(r[i]);return delete e._fullLayout._activeShapeIndex,zue.call("_guiRelayout",e,{shapes:n})}}}});var QB=ye((vir,Xue)=>{"use strict";var S0=ba(),Nue=Xu(),Uue=af(),al=UL(),mut=rP().eraseActiveShape,iP=Mr(),Os=iP._,ol=Xue.exports={};ol.toImage={name:"toImage",title:function(e){var t=e._context.toImageButtonOptions||{},r=t.format||"png";return r==="png"?Os(e,"Download plot as a png"):Os(e,"Download plot")},icon:al.camera,click:function(e){var t=e._context.toImageButtonOptions,r={format:t.format||"png"};iP.notifier(Os(e,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(n){n in t&&(r[n]=t[n])}),S0.call("downloadImage",e,r).then(function(n){iP.notifier(Os(e,"Snapshot succeeded")+" - "+n,"long")}).catch(function(){iP.notifier(Os(e,"Sorry, there was a problem downloading your snapshot!"),"long")})}};ol.sendDataToCloud={name:"sendDataToCloud",title:function(e){return Os(e,"Edit in Chart Studio")},icon:al.disk,click:function(e){Nue.sendDataToCloud(e)}};ol.editInChartStudio={name:"editInChartStudio",title:function(e){return Os(e,"Edit in Chart Studio")},icon:al.pencil,click:function(e){Nue.sendDataToCloud(e)}};ol.zoom2d={name:"zoom2d",_cat:"zoom",title:function(e){return Os(e,"Zoom")},attr:"dragmode",val:"zoom",icon:al.zoombox,click:Ov};ol.pan2d={name:"pan2d",_cat:"pan",title:function(e){return Os(e,"Pan")},attr:"dragmode",val:"pan",icon:al.pan,click:Ov};ol.select2d={name:"select2d",_cat:"select",title:function(e){return Os(e,"Box Select")},attr:"dragmode",val:"select",icon:al.selectbox,click:Ov};ol.lasso2d={name:"lasso2d",_cat:"lasso",title:function(e){return Os(e,"Lasso Select")},attr:"dragmode",val:"lasso",icon:al.lasso,click:Ov};ol.drawclosedpath={name:"drawclosedpath",title:function(e){return Os(e,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:al.drawclosedpath,click:Ov};ol.drawopenpath={name:"drawopenpath",title:function(e){return Os(e,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:al.drawopenpath,click:Ov};ol.drawline={name:"drawline",title:function(e){return Os(e,"Draw line")},attr:"dragmode",val:"drawline",icon:al.drawline,click:Ov};ol.drawrect={name:"drawrect",title:function(e){return Os(e,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:al.drawrect,click:Ov};ol.drawcircle={name:"drawcircle",title:function(e){return Os(e,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:al.drawcircle,click:Ov};ol.eraseshape={name:"eraseshape",title:function(e){return Os(e,"Erase active shape")},icon:al.eraseshape,click:mut};ol.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(e){return Os(e,"Zoom in")},attr:"zoom",val:"in",icon:al.zoom_plus,click:Ov};ol.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(e){return Os(e,"Zoom out")},attr:"zoom",val:"out",icon:al.zoom_minus,click:Ov};ol.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(e){return Os(e,"Autoscale")},attr:"zoom",val:"auto",icon:al.autoscale,click:Ov};ol.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(e){return Os(e,"Reset axes")},attr:"zoom",val:"reset",icon:al.home,click:Ov};ol.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(e){return Os(e,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:al.tooltip_basic,gravity:"ne",click:Ov};ol.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(e){return Os(e,"Compare data on hover")},attr:"hovermode",val:function(e){return e._fullLayout._isHoriz?"y":"x"},icon:al.tooltip_compare,gravity:"ne",click:Ov};function Ov(e,t){var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o={},s=Uue.list(e,null,!0),l=a._cartesianSpikesEnabled,u,c;if(n==="zoom"){var f=i==="in"?.5:2,h=(1+f)/2,d=(1-f)/2,v;for(c=0;c<s.length;c++)if(u=s[c],!u.fixedrange)if(v=u._name,i==="auto")o[v+".autorange"]=!0;else if(i==="reset")u._rangeInitial0===void 0&&u._rangeInitial1===void 0?o[v+".autorange"]=!0:u._rangeInitial0===void 0?(o[v+".autorange"]=u._autorangeInitial,o[v+".range"]=[null,u._rangeInitial1]):u._rangeInitial1===void 0?(o[v+".range"]=[u._rangeInitial0,null],o[v+".autorange"]=u._autorangeInitial):o[v+".range"]=[u._rangeInitial0,u._rangeInitial1],u._showSpikeInitial!==void 0&&(o[v+".showspikes"]=u._showSpikeInitial,l==="on"&&!u._showSpikeInitial&&(l="off"));else{var x=[u.r2l(u.range[0]),u.r2l(u.range[1])],b=[h*x[0]+d*x[1],h*x[1]+d*x[0]];o[v+".range[0]"]=u.l2r(b[0]),o[v+".range[1]"]=u.l2r(b[1])}}else n==="hovermode"&&(i==="x"||i==="y")&&(i=a._isHoriz?"y":"x",r.setAttribute("data-val",i)),o[n]=i;a._cartesianSpikesEnabled=l,S0.call("_guiRelayout",e,o)}ol.zoom3d={name:"zoom3d",_cat:"zoom",title:function(e){return Os(e,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:al.zoombox,click:nP};ol.pan3d={name:"pan3d",_cat:"pan",title:function(e){return Os(e,"Pan")},attr:"scene.dragmode",val:"pan",icon:al.pan,click:nP};ol.orbitRotation={name:"orbitRotation",title:function(e){return Os(e,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:al["3d_rotate"],click:nP};ol.tableRotation={name:"tableRotation",title:function(e){return Os(e,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:al["z-axis"],click:nP};function nP(e,t){for(var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout._subplots.gl3d||[],o={},s=n.split("."),l=0;l<a.length;l++)o[a[l]+"."+s[1]]=i;var u=i==="pan"?i:"zoom";o.dragmode=u,S0.call("_guiRelayout",e,o)}ol.resetCameraDefault3d={name:"resetCameraDefault3d",_cat:"resetCameraDefault",title:function(e){return Os(e,"Reset camera to default")},attr:"resetDefault",icon:al.home,click:JB};ol.resetCameraLastSave3d={name:"resetCameraLastSave3d",_cat:"resetCameraLastSave",title:function(e){return Os(e,"Reset camera to last save")},attr:"resetLastSave",icon:al.movie,click:JB};function JB(e,t){for(var r=t.currentTarget,n=r.getAttribute("data-attr"),i=n==="resetLastSave",a=n==="resetDefault",o=e._fullLayout,s=o._subplots.gl3d||[],l={},u=0;u<s.length;u++){var c=s[u],f=c+".camera",h=c+".aspectratio",d=c+".aspectmode",v=o[c]._scene,x;i?(l[f+".up"]=v.viewInitial.up,l[f+".eye"]=v.viewInitial.eye,l[f+".center"]=v.viewInitial.center,x=!0):a&&(l[f+".up"]=null,l[f+".eye"]=null,l[f+".center"]=null,x=!0),x&&(l[h+".x"]=v.viewInitial.aspectratio.x,l[h+".y"]=v.viewInitial.aspectratio.y,l[h+".z"]=v.viewInitial.aspectratio.z,l[d]=v.viewInitial.aspectmode)}S0.call("_guiRelayout",e,l)}ol.hoverClosest3d={name:"hoverClosest3d",_cat:"hoverclosest",title:function(e){return Os(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:al.tooltip_basic,gravity:"ne",click:yut};function Vue(e,t){var r=t.currentTarget,n=r._previousVal,i=e._fullLayout,a=i._subplots.gl3d||[],o=["xaxis","yaxis","zaxis"],s={},l={};if(n)l=n,r._previousVal=null;else{for(var u=0;u<a.length;u++){var c=a[u],f=i[c],h=c+".hovermode";s[h]=f.hovermode,l[h]=!1;for(var d=0;d<3;d++){var v=o[d],x=c+"."+v+".showspikes";l[x]=!1,s[x]=f[v].showspikes}}r._previousVal=s}return l}function yut(e,t){var r=Vue(e,t);S0.call("_guiRelayout",e,r)}ol.zoomInGeo={name:"zoomInGeo",_cat:"zoomin",title:function(e){return Os(e,"Zoom in")},attr:"zoom",val:"in",icon:al.zoom_plus,click:$B};ol.zoomOutGeo={name:"zoomOutGeo",_cat:"zoomout",title:function(e){return Os(e,"Zoom out")},attr:"zoom",val:"out",icon:al.zoom_minus,click:$B};ol.resetGeo={name:"resetGeo",_cat:"reset",title:function(e){return Os(e,"Reset")},attr:"reset",val:null,icon:al.autoscale,click:$B};ol.hoverClosestGeo={name:"hoverClosestGeo",_cat:"hoverclosest",title:function(e){return Os(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:al.tooltip_basic,gravity:"ne",click:Gue};function $B(e,t){for(var r=t.currentTarget,n=r.getAttribute("data-attr"),i=r.getAttribute("data-val")||!0,a=e._fullLayout,o=a._subplots.geo||[],s=0;s<o.length;s++){var l=o[s],u=a[l];if(n==="zoom"){var c=u.projection.scale,f=i==="in"?2*c:.5*c;S0.call("_guiRelayout",e,l+".projection.scale",f)}}n==="reset"&&W3(e,"geo")}ol.hoverClosestPie={name:"hoverClosestPie",_cat:"hoverclosest",title:function(e){return Os(e,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:al.tooltip_basic,gravity:"ne",click:Gue};function Hue(e){var t=e._fullLayout;return t.hovermode?!1:t._has("cartesian")?t._isHoriz?"y":"x":"closest"}function Gue(e){var t=Hue(e);S0.call("_guiRelayout",e,"hovermode",t)}ol.resetViewSankey={name:"resetSankeyGroup",title:function(e){return Os(e,"Reset view")},icon:al.home,click:function(e){for(var t={"node.groups":[],"node.x":[],"node.y":[]},r=0;r<e._fullData.length;r++){var n=e._fullData[r]._viewInitial;t["node.groups"].push(n.node.groups.slice()),t["node.x"].push(n.node.x.slice()),t["node.y"].push(n.node.y.slice())}S0.call("restyle",e,t)}};ol.toggleHover={name:"toggleHover",title:function(e){return Os(e,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:al.tooltip_basic,gravity:"ne",click:function(e,t){var r=Vue(e,t);r.hovermode=Hue(e),S0.call("_guiRelayout",e,r)}};ol.resetViews={name:"resetViews",title:function(e){return Os(e,"Reset views")},icon:al.home,click:function(e,t){var r=t.currentTarget;r.setAttribute("data-attr","zoom"),r.setAttribute("data-val","reset"),Ov(e,t),r.setAttribute("data-attr","resetLastSave"),JB(e,t),W3(e,"geo"),W3(e,"mapbox"),W3(e,"map")}};ol.toggleSpikelines={name:"toggleSpikelines",title:function(e){return Os(e,"Toggle Spike Lines")},icon:al.spikeline,attr:"_cartesianSpikesEnabled",val:"on",click:function(e){var t=e._fullLayout,r=t._cartesianSpikesEnabled;t._cartesianSpikesEnabled=r==="on"?"off":"on",S0.call("_guiRelayout",e,_ut(e))}};function _ut(e){for(var t=e._fullLayout,r=t._cartesianSpikesEnabled==="on",n=Uue.list(e,null,!0),i={},a=0;a<n.length;a++){var o=n[a];i[o._name+".showspikes"]=r?!0:o._showSpikeInitial}return i}ol.resetViewMapbox={name:"resetViewMapbox",_cat:"resetView",title:function(e){return Os(e,"Reset view")},attr:"reset",icon:al.home,click:function(e){W3(e,"mapbox")}};ol.resetViewMap={name:"resetViewMap",_cat:"resetView",title:function(e){return Os(e,"Reset view")},attr:"reset",icon:al.home,click:function(e){W3(e,"map")}};ol.zoomInMapbox={name:"zoomInMapbox",_cat:"zoomin",title:function(e){return Os(e,"Zoom in")},attr:"zoom",val:"in",icon:al.zoom_plus,click:jue};ol.zoomInMap={name:"zoomInMap",_cat:"zoomin",title:function(e){return Os(e,"Zoom in")},attr:"zoom",val:"in",icon:al.zoom_plus,click:Wue};ol.zoomOutMapbox={name:"zoomOutMapbox",_cat:"zoomout",title:function(e){return Os(e,"Zoom out")},attr:"zoom",val:"out",icon:al.zoom_minus,click:jue};ol.zoomOutMap={name:"zoomOutMap",_cat:"zoomout",title:function(e){return Os(e,"Zoom out")},attr:"zoom",val:"out",icon:al.zoom_minus,click:Wue};function jue(e,t){Zue(e,t,"mapbox")}function Wue(e,t){Zue(e,t,"map")}function Zue(e,t,r){for(var n=t.currentTarget,i=n.getAttribute("data-val"),a=e._fullLayout,o=a._subplots[r]||[],s=1.05,l={},u=0;u<o.length;u++){var c=o[u],f=a[c].zoom,h=i==="in"?s*f:f/s;l[c+".zoom"]=h}S0.call("_guiRelayout",e,l)}function W3(e,t){for(var r=e._fullLayout,n=r._subplots[t]||[],i={},a=0;a<n.length;a++)for(var o=n[a],s=r[o]._subplot,l=s.viewInitial,u=Object.keys(l),c=0;c<u.length;c++){var f=u[c];i[o+"."+f]=l[f]}S0.call("_guiRelayout",e,i)}});var eN=ye((pir,$ue)=>{"use strict";var Yue=QB(),xut=Object.keys(Yue),Kue=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],Jue=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(Kue),Z3=[],but=function(e){if(Jue.indexOf(e._cat||e.name)===-1){var t=e.name,r=(e._cat||e.name).toLowerCase();Z3.indexOf(t)===-1&&Z3.push(t),Z3.indexOf(r)===-1&&Z3.push(r)}};xut.forEach(function(e){but(Yue[e])});Z3.sort();$ue.exports={DRAW_MODES:Kue,backButtons:Jue,foreButtons:Z3}});var tN=ye((mir,Que)=>{"use strict";var gir=eN();Que.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}});var tce=ye((yir,ece)=>{"use strict";var wut=Mr(),hM=va(),Tut=Vs(),Aut=tN();ece.exports=function(t,r){var n=t.modebar||{},i=Tut.newContainer(r,"modebar");function a(s,l){return wut.coerce(n,i,Aut,s,l)}a("orientation"),a("bgcolor",hM.addOpacity(r.paper_bgcolor,.5));var o=hM.contrast(hM.rgb(r.modebar.bgcolor));a("color",hM.addOpacity(o,.3)),a("activecolor",hM.addOpacity(o,.7)),a("uirevision",r.uirevision),a("add"),a("remove")}});var ace=ye((_ir,nce)=>{"use strict";var rN=xa(),Sut=uo(),aP=Mr(),rce=UL(),Mut=e6().version,Eut=new DOMParser;function ice(e){this.container=e.container,this.element=document.createElement("div"),this.update(e.graphInfo,e.buttons),this.container.appendChild(this.element)}var Tm=ice.prototype;Tm.update=function(e,t){this.graphInfo=e;var r=this.graphInfo._context,n=this.graphInfo._fullLayout,i="modebar-"+n._uid;this.element.setAttribute("id",i),this._uid=i,this.element.className="modebar",r.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),n.modebar.orientation==="v"&&(this.element.className+=" vertical",t=t.reverse());var a=n.modebar,o="#"+i+" .modebar-group";document.querySelectorAll(o).forEach(function(f){f.style.backgroundColor=a.bgcolor});var s=!this.hasButtons(t),l=this.hasLogo!==r.displaylogo,u=this.locale!==r.locale;if(this.locale=r.locale,(s||l||u)&&(this.removeAllButtons(),this.updateButtons(t),r.watermark||r.displaylogo)){var c=this.getLogo();r.watermark&&(c.className=c.className+" watermark"),n.modebar.orientation==="v"?this.element.insertBefore(c,this.element.childNodes[0]):this.element.appendChild(c),this.hasLogo=!0}this.updateActiveButton(),aP.setStyleOnHover("#"+i+" .modebar-btn",".active",".icon path","fill: "+a.activecolor,"fill: "+a.color,this.element)};Tm.updateButtons=function(e){var t=this;this.buttons=e,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(r){var n=t.createGroup();r.forEach(function(i){var a=i.name;if(!a)throw new Error("must provide button 'name' in button config");if(t.buttonsNames.indexOf(a)!==-1)throw new Error("button name '"+a+"' is taken");t.buttonsNames.push(a);var o=t.createButton(i);t.buttonElements.push(o),n.appendChild(o)}),t.element.appendChild(n)})};Tm.createGroup=function(){var e=document.createElement("div");e.className="modebar-group";var t=this.graphInfo._fullLayout.modebar;return e.style.backgroundColor=t.bgcolor,e};Tm.createButton=function(e){var t=this,r=document.createElement("a");r.setAttribute("rel","tooltip"),r.className="modebar-btn";var n=e.title;n===void 0?n=e.name:typeof n=="function"&&(n=n(this.graphInfo)),(n||n===0)&&r.setAttribute("data-title",n),e.attr!==void 0&&r.setAttribute("data-attr",e.attr);var i=e.val;i!==void 0&&(typeof i=="function"&&(i=i(this.graphInfo)),r.setAttribute("data-val",i));var a=e.click;if(typeof a!="function")throw new Error("must provide button 'click' function in button config");r.addEventListener("click",function(s){e.click(t.graphInfo,s),t.updateActiveButton(s.currentTarget)}),r.setAttribute("data-toggle",e.toggle||!1),e.toggle&&rN.select(r).classed("active",!0);var o=e.icon;return typeof o=="function"?r.appendChild(o()):r.appendChild(this.createIcon(o||rce.question)),r.setAttribute("data-gravity",e.gravity||"n"),r};Tm.createIcon=function(e){var t=Sut(e.height)?Number(e.height):e.ascent-e.descent,r="http://www.w3.org/2000/svg",n;if(e.path){n=document.createElementNS(r,"svg"),n.setAttribute("viewBox",[0,0,e.width,t].join(" ")),n.setAttribute("class","icon");var i=document.createElementNS(r,"path");i.setAttribute("d",e.path),e.transform?i.setAttribute("transform",e.transform):e.ascent!==void 0&&i.setAttribute("transform","matrix(1 0 0 -1 0 "+e.ascent+")"),n.appendChild(i)}if(e.svg){var a=Eut.parseFromString(e.svg,"application/xml");n=a.childNodes[0]}return n.setAttribute("height","1em"),n.setAttribute("width","1em"),n};Tm.updateActiveButton=function(e){var t=this.graphInfo._fullLayout,r=e!==void 0?e.getAttribute("data-attr"):null;this.buttonElements.forEach(function(n){var i=n.getAttribute("data-val")||!0,a=n.getAttribute("data-attr"),o=n.getAttribute("data-toggle")==="true",s=rN.select(n),l=function(f,h){var d=t.modebar,v=f.querySelector(".icon path");v&&(h||f.matches(":hover")?v.style.fill=d.activecolor:v.style.fill=d.color)};if(o){if(a===r){var u=!s.classed("active");s.classed("active",u),l(n,u)}}else{var c=a===null?a:aP.nestedProperty(t,a).get();s.classed("active",c===i),l(n,c===i)}})};Tm.hasButtons=function(e){var t=this.buttons;if(!t||e.length!==t.length)return!1;for(var r=0;r<e.length;++r){if(e[r].length!==t[r].length)return!1;for(var n=0;n<e[r].length;n++)if(e[r][n].name!==t[r][n].name)return!1}return!0};function kut(e){return e+" (v"+Mut+")"}Tm.getLogo=function(){var e=this.createGroup(),t=document.createElement("a");return t.href="https://plotly.com/",t.target="_blank",t.setAttribute("data-title",kut(aP._(this.graphInfo,"Produced with Plotly.js"))),t.className="modebar-btn plotlyjsicon modebar-btn--logo",t.appendChild(this.createIcon(rce.newplotlylogo)),e.appendChild(t),e};Tm.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1};Tm.destroy=function(){aP.removeElement(this.container.querySelector(".modebar"))};function Cut(e,t){var r=e._fullLayout,n=new ice({graphInfo:e,container:r._modebardiv.node(),buttons:t});return r._privateplot&&rN.select(n.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),n}nce.exports=Cut});var lce=ye((xir,sce)=>{"use strict";var Lut=af(),oce=lu(),iN=ba(),Put=rp().isUnifiedHover,Iut=ace(),oP=QB(),Rut=eN().DRAW_MODES,Dut=Mr().extendDeep;sce.exports=function(t){var r=t._fullLayout,n=t._context,i=r._modeBar;if(!n.displayModeBar&&!n.watermark){i&&(i.destroy(),delete r._modeBar);return}if(!Array.isArray(n.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(n.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var a=n.modeBarButtons,o;Array.isArray(a)&&a.length?o=Nut(a):!n.displayModeBar&&n.watermark?o=[]:o=zut(t),i?i.update(t,o):r._modeBar=Iut(t,o)};function zut(e){var t=e._fullLayout,r=e._fullData,n=e._context;function i(N,W){if(typeof W=="string"){if(W.toLowerCase()===N.toLowerCase())return!0}else{var re=W.name,ae=W._cat||W.name;if(re===N||ae===N.toLowerCase())return!0}return!1}var a=t.modebar.add;typeof a=="string"&&(a=[a]);var o=t.modebar.remove;typeof o=="string"&&(o=[o]);var s=n.modeBarButtonsToAdd.concat(a.filter(function(N){for(var W=0;W<n.modeBarButtonsToRemove.length;W++)if(i(N,n.modeBarButtonsToRemove[W]))return!1;return!0})),l=n.modeBarButtonsToRemove.concat(o.filter(function(N){for(var W=0;W<n.modeBarButtonsToAdd.length;W++)if(i(N,n.modeBarButtonsToAdd[W]))return!1;return!0})),u=t._has("cartesian"),c=t._has("gl3d"),f=t._has("geo"),h=t._has("pie"),d=t._has("funnelarea"),v=t._has("ternary"),x=t._has("mapbox"),b=t._has("map"),p=t._has("polar"),E=t._has("smith"),k=t._has("sankey"),A=Fut(t),L=Put(t.hovermode),_=[];function C(N){if(N.length){for(var W=[],re=0;re<N.length;re++){for(var ae=N[re],_e=oP[ae],Me=_e.name.toLowerCase(),ke=(_e._cat||_e.name).toLowerCase(),ge=!1,ie=0;ie<l.length;ie++){var Te=l[ie].toLowerCase();if(Te===Me||Te===ke){ge=!0;break}}ge||W.push(oP[ae])}_.push(W)}}var M=["toImage"];n.showEditInChartStudio?M.push("editInChartStudio"):n.showSendToCloud&&M.push("sendDataToCloud"),C(M);var g=[],P=[],T=[],F=[];(u||h||d||v)+f+c+x+b+p+E>1?(P=["toggleHover"],T=["resetViews"]):f?(g=["zoomInGeo","zoomOutGeo"],P=["hoverClosestGeo"],T=["resetGeo"]):c?(P=["hoverClosest3d"],T=["resetCameraDefault3d","resetCameraLastSave3d"]):x?(g=["zoomInMapbox","zoomOutMapbox"],P=["toggleHover"],T=["resetViewMapbox"]):b?(g=["zoomInMap","zoomOutMap"],P=["toggleHover"],T=["resetViewMap"]):h?P=["hoverClosestPie"]:k?(P=["hoverClosestCartesian","hoverCompareCartesian"],T=["resetViewSankey"]):P=["toggleHover"],u&&P.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(Out(r)||L)&&(P=[]),u&&!A&&(g=["zoomIn2d","zoomOut2d","autoScale2d"],T[0]!=="resetViews"&&(T=["resetScale2d"])),c?F=["zoom3d","pan3d","orbitRotation","tableRotation"]:u&&!A||v?F=["zoom2d","pan2d"]:x||b||f?F=["pan2d"]:p&&(F=["zoom2d"]),qut(r)&&F.push("select2d","lasso2d");var q=[],V=function(N){q.indexOf(N)===-1&&P.indexOf(N)!==-1&&q.push(N)};if(Array.isArray(s)){for(var H=[],X=0;X<s.length;X++){var G=s[X];typeof G=="string"?(G=G.toLowerCase(),Rut.indexOf(G)!==-1?(t._has("mapbox")||t._has("map")||t._has("cartesian"))&&F.push(G):G==="togglespikelines"?V("toggleSpikelines"):G==="togglehover"?V("toggleHover"):G==="hovercompare"?V("hoverCompareCartesian"):G==="hoverclosest"?(V("hoverClosestCartesian"),V("hoverClosestGeo"),V("hoverClosest3d"),V("hoverClosestPie")):G==="v1hovermode"&&(V("hoverClosestCartesian"),V("hoverCompareCartesian"),V("hoverClosestGeo"),V("hoverClosest3d"),V("hoverClosestPie"))):H.push(G)}s=H}return C(F),C(g.concat(T)),C(q),But(_,s)}function Fut(e){for(var t=Lut.list({_fullLayout:e},null,!0),r=0;r<t.length;r++)if(!t[r].fixedrange)return!1;return!0}function qut(e){for(var t=!1,r=0;r<e.length&&!t;r++){var n=e[r];!n._module||!n._module.selectPoints||(iN.traceIs(n,"scatter-like")?(oce.hasMarkers(n)||oce.hasText(n))&&(t=!0):iN.traceIs(n,"box-violin")?(n.boxpoints==="all"||n.points==="all")&&(t=!0):t=!0)}return t}function Out(e){for(var t=0;t<e.length;t++)if(!iN.traceIs(e[t],"noHover"))return!1;return!0}function But(e,t){if(t.length)if(Array.isArray(t[0]))for(var r=0;r<t.length;r++)e.push(t[r]);else e.push(t);return e}function Nut(e){for(var t=Dut([],e),r=0;r<t.length;r++)for(var n=t[r],i=0;i<n.length;i++){var a=n[i];if(typeof a=="string")if(oP[a]!==void 0)t[r][i]=oP[a];else throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "))}return t}});var nN=ye((bir,uce)=>{"use strict";uce.exports={moduleType:"component",name:"modebar",layoutAttributes:tN(),supplyLayoutDefaults:tce(),manage:lce()}});var aN=ye((wir,cce)=>{"use strict";var Uut=Nh().FROM_BL;cce.exports=function(t,r,n){n===void 0&&(n=Uut[t.constraintoward||"center"]);var i=[t.r2l(t.range[0]),t.r2l(t.range[1])],a=i[0]+(i[1]-i[0])*n;t.range=t._input.range=[t.l2r(a+(i[0]-a)*r),t.l2r(a+(i[1]-a)*r)],t.setScale()}});var Bb=ye(dM=>{"use strict";var Ob=Mr(),oN=wg(),Mg=af().id2name,Vut=Cd(),fce=aN(),Hut=ym(),Gut=es().ALMOST_EQUAL,jut=Nh().FROM_BL;dM.handleDefaults=function(e,t,r){var n=r.axIds,i=r.axHasImage,a=t._axisConstraintGroups=[],o=t._axisMatchGroups=[],s,l,u,c,f,h,d,v;for(s=0;s<n.length;s++)c=Mg(n[s]),f=e[c],h=t[c],Wut(f,h,{axIds:n,layoutOut:t,hasImage:i[c]});function x(M,g){for(s=0;s<M.length;s++){l=M[s];for(u in l)t[Mg(u)][g]=l}}for(x(o,"_matchGroup"),s=0;s<a.length;s++){l=a[s];for(u in l)if(h=t[Mg(u)],h.fixedrange){for(var b in l){var p=Mg(b);(e[p]||{}).fixedrange===!1&&Ob.warn("fixedrange was specified as false for axis "+p+" but was overridden because another axis in its constraint group has fixedrange true"),t[p].fixedrange=!0}break}}for(s=0;s<a.length;){l=a[s];for(u in l){h=t[Mg(u)],h._matchGroup&&Object.keys(h._matchGroup).length===Object.keys(l).length&&(a.splice(s,1),s--);break}s++}x(a,"_constraintGroup");var E=["constrain","range","autorange","rangemode","rangebreaks","categoryorder","categoryarray"],k=!1,A=!1;function L(){v=h[d],d==="rangebreaks"&&(A=h._hasDayOfWeekBreaks)}for(s=0;s<o.length;s++){l=o[s];for(var _=0;_<E.length;_++){d=E[_],v=null;var C;for(u in l)if(c=Mg(u),f=e[c],h=t[c],d in h){if(!h.matches&&(C=h,d in f)){L();break}v===null&&d in f&&L()}if(d==="range"&&v&&f.range&&f.range.length===2&&f.range[0]!==null&&f.range[1]!==null&&(k=!0),d==="autorange"&&v===null&&k&&(v=!1),v===null&&d in C&&(v=C[d]),v!==null)for(u in l)h=t[Mg(u)],h[d]=d==="range"?v.slice():v,d==="rangebreaks"&&(h._hasDayOfWeekBreaks=A,Hut(h,t))}}};function Wut(e,t,r){var n=r.axIds,i=r.layoutOut,a=r.hasImage,o=i._axisConstraintGroups,s=i._axisMatchGroups,l=t._id,u=l.charAt(0),c=((i._splomAxes||{})[u]||{})[l]||{},f=t._id,h=f.charAt(0)==="x";t._matchGroup=null,t._constraintGroup=null;function d(F,q){return Ob.coerce(e,t,Vut,F,q)}d("constrain",a?"domain":"range"),Ob.coerce(e,t,{constraintoward:{valType:"enumerated",values:h?["left","center","right"]:["bottom","middle","top"],dflt:h?"center":"middle"}},"constraintoward");var v=t.type,x,b,p=[];for(x=0;x<n.length;x++)if(b=n[x],b!==f){var E=i[Mg(b)];E.type===v&&p.push(b)}var k=vce(o,f);if(k){var A=[];for(x=0;x<p.length;x++)b=p[x],k[b]||A.push(b);p=A}var L=p.length,_,C;L&&(e.matches||c.matches)&&(_=Ob.coerce(e,t,{matches:{valType:"enumerated",values:p,dflt:p.indexOf(c.matches)!==-1?c.matches:void 0}},"matches"));var M=a&&!h?t.anchor:void 0;if(L&&!_&&(e.scaleanchor||M)&&(C=Ob.coerce(e,t,{scaleanchor:{valType:"enumerated",values:p.concat([!1])}},"scaleanchor",M)),_){t._matchGroup=sN(s,f,_,1);var g=i[Mg(_)],P=hce(i,t)/hce(i,g);h!==(_.charAt(0)==="x")&&(P=(h?"x":"y")+P),sN(o,f,_,P)}else e.matches&&n.indexOf(e.matches)!==-1&&Ob.warn("ignored "+t._name+'.matches: "'+e.matches+'" to avoid an infinite loop');if(C){var T=d("scaleratio");T||(T=t.scaleratio=1),sN(o,f,C,T)}else e.scaleanchor&&n.indexOf(e.scaleanchor)!==-1&&Ob.warn("ignored "+t._name+'.scaleanchor: "'+e.scaleanchor+'" to avoid either an infinite loop and possibly inconsistent scaleratios, or because this axis declares a *matches* constraint.')}function hce(e,t){var r=t.domain;return r||(r=e[Mg(t.overlaying)].domain),r[1]-r[0]}function vce(e,t){for(var r=0;r<e.length;r++)if(e[r][t])return e[r];return null}function sN(e,t,r,n){var i,a,o,s,l,u=vce(e,t);u===null?(u={},u[t]=1,l=e.length,e.push(u)):l=e.indexOf(u);var c=Object.keys(u);for(i=0;i<e.length;i++)if(o=e[i],i!==l&&o[r]){var f=o[r];for(a=0;a<c.length;a++)s=c[a],o[s]=lN(f,lN(n,u[s]));e.splice(l,1);return}if(n!==1)for(a=0;a<c.length;a++){var h=c[a];u[h]=lN(n,u[h])}u[r]=1}function lN(e,t){var r="",n="",i,a;typeof e=="string"&&(r=e.match(/^[xy]*/)[0],i=r.length,e=+e.substr(i)),typeof t=="string"&&(n=t.match(/^[xy]*/)[0],a=n.length,t=+t.substr(a));var o=e*t;return!i&&!a?o:!i||!a||r.charAt(0)===n.charAt(0)?r+n+e*t:i===a?o:(i>a?r.substr(a):n.substr(i))+o}function Zut(e,t){for(var r=t._size,n=r.h/r.w,i={},a=Object.keys(e),o=0;o<a.length;o++){var s=a[o],l=e[s];if(typeof l=="string"){var u=l.match(/^[xy]*/)[0],c=u.length;l=+l.substr(c);for(var f=u.charAt(0)==="y"?n:1/n,h=0;h<c;h++)l*=f}i[s]=l}return i}dM.enforce=function(t){var r=t._fullLayout,n=r._axisConstraintGroups||[],i,a,o,s,l,u,c,f;for(i=0;i<n.length;i++){o=Zut(n[i],r);var h=Object.keys(o),d=1/0,v=0,x=1/0,b={},p={},E=!1;for(a=0;a<h.length;a++)s=h[a],p[s]=l=r[Mg(s)],l._inputDomain?l.domain=l._inputDomain.slice():l._inputDomain=l.domain.slice(),l._inputRange||(l._inputRange=l.range.slice()),l.setScale(),b[s]=u=Math.abs(l._m)/o[s],d=Math.min(d,u),(l.constrain==="domain"||!l._constraintShrinkable)&&(x=Math.min(x,u)),delete l._constraintShrinkable,v=Math.max(v,u),l.constrain==="domain"&&(E=!0);if(!(d>Gut*v&&!E)){for(a=0;a<h.length;a++)if(s=h[a],u=b[s],l=p[s],c=l.constrain,u!==x||c==="domain")if(f=u/x,c==="range")fce(l,f);else{var k=l._inputDomain,A=(l.domain[1]-l.domain[0])/(k[1]-k[0]),L=(l.r2l(l.range[1])-l.r2l(l.range[0]))/(l.r2l(l._inputRange[1])-l.r2l(l._inputRange[0]));if(f/=A,f*L<1){l.domain=l._input.domain=k.slice(),fce(l,f);continue}if(L<1&&(l.range=l._input.range=l._inputRange.slice(),f*=L),l.autorange){var _=l.r2l(l.range[0]),C=l.r2l(l.range[1]),M=(_+C)/2,g=M,P=M,T=Math.abs(C-M),F=M-T*f*1.0001,q=M+T*f*1.0001,V=oN.makePadFn(r,l,0),H=oN.makePadFn(r,l,1);dce(l,f);var X=Math.abs(l._m),G=oN.concatExtremes(t,l),N=G.min,W=G.max,re,ae;for(ae=0;ae<N.length;ae++)re=N[ae].val-V(N[ae])/X,re>F&&re<g&&(g=re);for(ae=0;ae<W.length;ae++)re=W[ae].val+H(W[ae])/X,re<q&&re>P&&(P=re);var _e=(P-g)/(2*T);f/=_e,g=l.l2r(g),P=l.l2r(P),l.range=l._input.range=_<C?[g,P]:[P,g]}dce(l,f)}}}};dM.getAxisGroup=function(t,r){for(var n=t._axisMatchGroups,i=0;i<n.length;i++){var a=n[i];if(a[r])return"g"+i}return r};dM.clean=function(t,r){if(r._inputDomain){for(var n=!1,i=r._id,a=t._fullLayout._axisConstraintGroups,o=0;o<a.length;o++)if(a[o][i]){n=!0;break}(!n||r.constrain!=="domain")&&(r._input.domain=r.domain=r._inputDomain,delete r._inputDomain)}};function dce(e,t){var r=e._inputDomain,n=jut[e.constraintoward],i=r[0]+(r[1]-r[0])*n;e.domain=e._input.domain=[i+(r[0]-i)/t,i+(r[1]-i)/t],e.setScale()}});var gM=ye(ld=>{"use strict";var lP=xa(),Bv=ba(),Jp=Xu(),M0=Mr(),uN=Pl(),cN=lM(),vM=va(),X3=ao(),pce=Mb(),xce=nN(),pM=Qa(),ky=Nh(),bce=Bb(),Xut=bce.enforce,Yut=bce.clean,gce=wg().doAutoRange,wce="start",Kut="middle",Tce="end",Jut=ad().zindexSeparator;ld.layoutStyles=function(e){return M0.syncOrAsync([Jp.doAutoMargin,Qut],e)};function $ut(e,t,r){for(var n=0;n<r.length;n++){var i=r[n][0],a=r[n][1];if(!(i[0]>=e[1]||i[1]<=e[0])&&a[0]<t[1]&&a[1]>t[0])return!0}return!1}function Qut(e){var t=e._fullLayout,r=t._size,n=r.p,i=pM.list(e,"",!0),a,o,s,l,u,c;if(t._paperdiv.style({width:e._context.responsive&&t.autosize&&!e._context._hasZeroWidth&&!e.layout.width?"100%":t.width+"px",height:e._context.responsive&&t.autosize&&!e._context._hasZeroHeight&&!e.layout.height?"100%":t.height+"px"}).selectAll(".main-svg").call(X3.setSize,t.width,t.height),e._context.setBackground(e,t.paper_bgcolor),ld.drawMainTitle(e),xce.manage(e),!t._has("cartesian"))return Jp.previousPromises(e);function f(Ce,me,Re){var ce=Ce._lw/2;if(Ce._id.charAt(0)==="x"){if(me){if(Re==="top")return me._offset-n-ce}else return r.t+r.h*(1-(Ce.position||0))+ce%1;return me._offset+me._length+n+ce}if(me){if(Re==="right")return me._offset+me._length+n+ce}else return r.l+r.w*(Ce.position||0)+ce%1;return me._offset-n-ce}for(a=0;a<i.length;a++){l=i[a];var h=l._anchorAxis;l._linepositions={},l._lw=X3.crispRound(e,l.linewidth,1),l._mainLinePosition=f(l,h,l.side),l._mainMirrorPosition=l.mirror&&h?f(l,h,ky.OPPOSITE_SIDE[l.side]):null}var d=[],v=[],x=[],b=vM.opacity(t.paper_bgcolor)===1&&vM.opacity(t.plot_bgcolor)===1&&t.paper_bgcolor===t.plot_bgcolor;for(o in t._plots)if(s=t._plots[o],s.mainplot)s.bg&&s.bg.remove(),s.bg=void 0;else{var p=s.xaxis.domain,E=s.yaxis.domain,k=s.plotgroup;if($ut(p,E,x)&&o.indexOf(Jut)===-1){var A=k.node(),L=s.bg=M0.ensureSingle(k,"rect","bg");A.insertBefore(L.node(),A.childNodes[0]),v.push(o)}else k.select("rect.bg").remove(),x.push([p,E]),b||(d.push(o),v.push(o))}var _=t._bgLayer.selectAll(".bg").data(d);for(_.enter().append("rect").classed("bg",!0),_.exit().remove(),_.each(function(Ce){t._plots[Ce].bg=lP.select(this)}),a=0;a<v.length;a++)s=t._plots[v[a]],u=s.xaxis,c=s.yaxis,s.bg&&u._offset!==void 0&&c._offset!==void 0&&s.bg.call(X3.setRect,u._offset-n,c._offset-n,u._length+2*n,c._length+2*n).call(vM.fill,t.plot_bgcolor).style("stroke-width",0);if(!t._hasOnlyLargeSploms)for(o in t._plots){s=t._plots[o],u=s.xaxis,c=s.yaxis;var C=s.clipId="clip"+t._uid+o+"plot",M=M0.ensureSingleById(t._clips,"clipPath",C,function(Ce){Ce.classed("plotclip",!0).append("rect")});s.clipRect=M.select("rect").attr({width:u._length,height:c._length}),X3.setTranslate(s.plot,u._offset,c._offset);var g,P;s._hasClipOnAxisFalse?(g=null,P=C):(g=C,P=null),X3.setClipUrl(s.plot,g,e),s.layerClipId=P}var T,F,q,V,H,X,G,N,W,re,ae,_e,Me;function ke(Ce){return"M"+T+","+Ce+"H"+F}function ge(Ce){return"M"+u._offset+","+Ce+"h"+u._length}function ie(Ce){return"M"+Ce+","+N+"V"+G}function Te(Ce){return c._shift!==void 0&&(Ce+=c._shift),"M"+Ce+","+c._offset+"v"+c._length}function Ee(Ce,me,Re){if(!Ce.showline||o!==Ce._mainSubplot)return"";if(!Ce._anchorAxis)return Re(Ce._mainLinePosition);var ce=me(Ce._mainLinePosition);return Ce.mirror&&(ce+=me(Ce._mainMirrorPosition)),ce}for(o in t._plots){s=t._plots[o],u=s.xaxis,c=s.yaxis;var Ae="M0,0";mce(u,o)&&(H=sP(u,"left",c,i),T=u._offset-(H?n+H:0),X=sP(u,"right",c,i),F=u._offset+u._length+(X?n+X:0),q=f(u,c,"bottom"),V=f(u,c,"top"),Me=!u._anchorAxis||o!==u._mainSubplot,Me&&(u.mirror==="allticks"||u.mirror==="all")&&(u._linepositions[o]=[q,V]),Ae=Ee(u,ke,ge),Me&&u.showline&&(u.mirror==="all"||u.mirror==="allticks")&&(Ae+=ke(q)+ke(V)),s.xlines.style("stroke-width",u._lw+"px").call(vM.stroke,u.showline?u.linecolor:"rgba(0,0,0,0)")),s.xlines.attr("d",Ae);var ze="M0,0";mce(c,o)&&(ae=sP(c,"bottom",u,i),G=c._offset+c._length+(ae?n:0),_e=sP(c,"top",u,i),N=c._offset-(_e?n:0),W=f(c,u,"left"),re=f(c,u,"right"),Me=!c._anchorAxis||o!==c._mainSubplot,Me&&(c.mirror==="allticks"||c.mirror==="all")&&(c._linepositions[o]=[W,re]),ze=Ee(c,ie,Te),Me&&c.showline&&(c.mirror==="all"||c.mirror==="allticks")&&(ze+=ie(W)+ie(re)),s.ylines.style("stroke-width",c._lw+"px").call(vM.stroke,c.showline?c.linecolor:"rgba(0,0,0,0)")),s.ylines.attr("d",ze)}return pM.makeClipPaths(e),Jp.previousPromises(e)}function mce(e,t){return(e.ticks||e.showline)&&(t===e._mainSubplot||e.mirror==="all"||e.mirror==="allticks")}function yce(e,t,r){if(!r.showline||!r._lw)return!1;if(r.mirror==="all"||r.mirror==="allticks")return!0;var n=r._anchorAxis;if(!n)return!1;var i=ky.FROM_BL[t];return r.side===t?n.domain[i]===e.domain[i]:r.mirror&&n.domain[1-i]===e.domain[1-i]}function sP(e,t,r,n){if(yce(e,t,r))return r._lw;for(var i=0;i<n.length;i++){var a=n[i];if(a._mainAxis===r._mainAxis&&yce(e,t,a))return a._lw}return 0}ld.drawMainTitle=function(e){var t=e._fullLayout.title,r=e._fullLayout,n=oct(r),i=sct(r),a=act(r,i),o=nct(r,n);if(pce.draw(e,"gtitle",{propContainer:r,propName:"title.text",subtitlePropName:"title.subtitle.text",placeholder:r._dfltTitle.plot,subtitlePlaceholder:r._dfltTitle.subtitle,attributes:{x:o,y:a,"text-anchor":n,dy:i}}),t.text&&t.automargin){var s=lP.selectAll(".gtitle"),l=X3.bBox(lP.selectAll(".g-gtitle").node()).height,u=rct(e,t,l);if(u>0){ict(e,a,u,l),s.attr({x:o,y:a,"text-anchor":n,dy:_ce(t.yanchor)}).call(uN.positionText,o,a);var c=(t.text.match(uN.BR_TAG_ALL)||[]).length;if(c){var f=ky.LINE_SPACING*c+ky.MID_SHIFT;t.y===0&&(f=-f),s.selectAll(".line").each(function(){var b=+this.getAttribute("dy").slice(0,-2)-f+"em";this.setAttribute("dy",b)})}var h=lP.selectAll(".gtitle-subtitle");if(h.node()){var d=s.node().getBBox(),v=d.y+d.height,x=v+pce.SUBTITLE_PADDING_EM*t.subtitle.font.size;h.attr({x:o,y:x,"text-anchor":n,dy:_ce(t.yanchor)}).call(uN.positionText,o,x)}}}};function ect(e,t,r,n,i){var a=t.yref==="paper"?e._fullLayout._size.h:e._fullLayout.height,o=M0.isTopAnchor(t)?n:n-i,s=r==="b"?a-o:o;return M0.isTopAnchor(t)&&r==="t"||M0.isBottomAnchor(t)&&r==="b"?!1:s<i}function tct(e,t,r,n,i){var a=0;return r==="middle"&&(a+=i/2),e==="t"?(r==="top"&&(a+=i),a+=n-t*n):(r==="bottom"&&(a+=i),a+=t*n),a}function rct(e,t,r){var n=t.y,i=t.yanchor,a=n>.5?"t":"b",o=e._fullLayout.margin[a],s=0;return t.yref==="paper"?s=r+t.pad.t+t.pad.b:t.yref==="container"&&(s=tct(a,n,i,e._fullLayout.height,r)+t.pad.t+t.pad.b),s>o?s:0}function ict(e,t,r,n){var i="title.automargin",a=e._fullLayout.title,o=a.y>.5?"t":"b",s={x:a.x,y:a.y,t:0,b:0},l={};a.yref==="paper"&&ect(e,a,o,t,n)?s[o]=r:a.yref==="container"&&(l[o]=r,e._fullLayout._reservedMargin[i]=l),Jp.allowAutoMargin(e,i),Jp.autoMargin(e,i,s)}function nct(e,t){var r=e.title,n=e._size,i=0;switch(t===wce?i=r.pad.l:t===Tce&&(i=-r.pad.r),r.xref){case"paper":return n.l+n.w*r.x+i;case"container":default:return e.width*r.x+i}}function act(e,t){var r=e.title,n=e._size,i=0;if(t==="0em"||!t?i=-r.pad.b:t===ky.CAP_SHIFT+"em"&&(i=r.pad.t),r.y==="auto")return n.t/2;switch(r.yref){case"paper":return n.t+n.h-n.h*r.y+i;case"container":default:return e.height-e.height*r.y+i}}function _ce(e){return e==="top"?ky.CAP_SHIFT+.3+"em":e==="bottom"?"-0.3em":ky.MID_SHIFT+"em"}function oct(e){var t=e.title,r=Kut;return M0.isRightAnchor(t)?r=Tce:M0.isLeftAnchor(t)&&(r=wce),r}function sct(e){var t=e.title,r="0em";return M0.isTopAnchor(t)?r=ky.CAP_SHIFT+"em":M0.isMiddleAnchor(t)&&(r=ky.MID_SHIFT+"em"),r}ld.doTraceStyle=function(e){var t=e.calcdata,r=[],n;for(n=0;n<t.length;n++){var i=t[n],a=i[0]||{},o=a.trace||{},s=o._module||{},l=s.arraysToCalcdata;l&&l(i,o);var u=s.editStyle;u&&r.push({fn:u,cd0:a})}if(r.length){for(n=0;n<r.length;n++){var c=r[n];c.fn(e,c.cd0)}cN(e),ld.redrawReglTraces(e)}return Jp.style(e),Bv.getComponentMethod("legend","draw")(e),Jp.previousPromises(e)};ld.doColorBars=function(e){return Bv.getComponentMethod("colorbar","draw")(e),Jp.previousPromises(e)};ld.layoutReplot=function(e){var t=e.layout;return e.layout=void 0,Bv.call("_doPlot",e,"",t)};ld.doLegend=function(e){return Bv.getComponentMethod("legend","draw")(e),Jp.previousPromises(e)};ld.doTicksRelayout=function(e){return pM.draw(e,"redraw"),e._fullLayout._hasOnlyLargeSploms&&(Bv.subplotsRegistry.splom.updateGrid(e),cN(e),ld.redrawReglTraces(e)),ld.drawMainTitle(e),Jp.previousPromises(e)};ld.doModeBar=function(e){var t=e._fullLayout;xce.manage(e);for(var r=0;r<t._basePlotModules.length;r++){var n=t._basePlotModules[r].updateFx;n&&n(e)}return Jp.previousPromises(e)};ld.doCamera=function(e){for(var t=e._fullLayout,r=t._subplots.gl3d,n=0;n<r.length;n++){var i=t[r[n]],a=i._scene;a.setViewport(i)}};ld.drawData=function(e){var t=e._fullLayout;cN(e);for(var r=t._basePlotModules,n=0;n<r.length;n++)r[n].plot(e);return ld.redrawReglTraces(e),Jp.style(e),Bv.getComponentMethod("selections","draw")(e),Bv.getComponentMethod("shapes","draw")(e),Bv.getComponentMethod("annotations","draw")(e),Bv.getComponentMethod("images","draw")(e),t._replotting=!1,Jp.previousPromises(e)};ld.redrawReglTraces=function(e){var t=e._fullLayout;if(t._has("regl")){var r=e._fullData,n=[],i=[],a,o;for(t._hasOnlyLargeSploms&&t._splomGrid.draw(),a=0;a<r.length;a++){var s=r[a];s.visible===!0&&s._length!==0&&(s.type==="splom"?t._splomScenes[s.uid].draw():s.type==="scattergl"?M0.pushUnique(n,s.xaxis+s.yaxis):s.type==="scatterpolargl"&&M0.pushUnique(i,s.subplot))}for(a=0;a<n.length;a++)o=t._plots[n[a]],o._scene&&o._scene.draw();for(a=0;a<i.length;a++)o=t[i[a]]._subplot,o._scene&&o._scene.draw()}};ld.doAutoRangeAndConstraints=function(e){for(var t=pM.list(e,"",!0),r,n={},i=0;i<t.length;i++)if(r=t[i],!n[r._id]){n[r._id]=1,Yut(e,r),gce(e,r);var a=r._matchGroup;if(a)for(var o in a){var s=pM.getFromId(e,o);gce(e,s,r.range),n[o]=1}}Xut(e)};ld.finalDraw=function(e){Bv.getComponentMethod("rangeslider","draw")(e),Bv.getComponentMethod("rangeselector","draw")(e)};ld.drawMarginPushers=function(e){Bv.getComponentMethod("legend","draw")(e),Bv.getComponentMethod("rangeselector","draw")(e),Bv.getComponentMethod("sliders","draw")(e),Bv.getComponentMethod("updatemenus","draw")(e),Bv.getComponentMethod("colorbar","draw")(e)}});var dN=ye((Sir,kce)=>{"use strict";var lct=c_().readPaths,uct=$L(),Ace=e_().clearOutlineControllers,fN=va(),Sce=ao(),cct=Vs().arrayEditor,Mce=h_(),fct=Mce.getPathString;kce.exports={draw:uP,drawOne:Ece,activateLastSelection:vct};function uP(e){var t=e._fullLayout;Ace(e),t._selectionLayer.selectAll("path").remove();for(var r in t._plots){var n=t._plots[r].selectionLayer;n&&n.selectAll("path").remove()}for(var i=0;i<t.selections.length;i++)Ece(e,i)}function cP(e){return e._context.editSelection}function Ece(e,t){e._fullLayout._paperdiv.selectAll('.selectionlayer [data-index="'+t+'"]').remove();var r=Mce.makeSelectionsOptionsAndPlotinfo(e,t),n=r.options,i=r.plotinfo;if(!n._input)return;a(e._fullLayout._selectionLayer);function a(o){var s=fct(e,n),l={"data-index":t,"fill-rule":"evenodd",d:s},u=n.opacity,c="rgba(0,0,0,0)",f=n.line.color||fN.contrast(e._fullLayout.plot_bgcolor),h=n.line.width,d=n.line.dash;h||(h=5,d="solid");var v=cP(e)&&e._fullLayout._activeSelectionIndex===t;v&&(c=e._fullLayout.activeselection.fillcolor,u=e._fullLayout.activeselection.opacity);for(var x=[],b=1;b>=0;b--){var p=o.append("path").attr(l).style("opacity",b?.1:u).call(fN.stroke,f).call(fN.fill,c).call(Sce.dashLine,b?"solid":d,b?4+h:h);if(hct(p,e,n),v){var E=cct(e.layout,"selections",n);p.style({cursor:"move"});var k={element:p.node(),plotinfo:i,gd:e,editHelpers:E,isActiveSelection:!0},A=lct(s,e);uct(A,p,k)}else p.style("pointer-events",b?"all":"none");x[b]=p}var L=x[0],_=x[1];_.node().addEventListener("click",function(){return dct(e,L)})}}function hct(e,t,r){var n=r.xref+r.yref;Sce.setClipUrl(e,"clip"+t._fullLayout._uid+n,t)}function dct(e,t){if(cP(e)){var r=t.node(),n=+r.getAttribute("data-index");if(n>=0){if(n===e._fullLayout._activeSelectionIndex){hN(e);return}e._fullLayout._activeSelectionIndex=n,e._fullLayout._deactivateSelection=hN,uP(e)}}}function vct(e){if(cP(e)){var t=e._fullLayout.selections.length-1;e._fullLayout._activeSelectionIndex=t,e._fullLayout._deactivateSelection=hN,uP(e)}}function hN(e){if(cP(e)){var t=e._fullLayout._activeSelectionIndex;t>=0&&(Ace(e),delete e._fullLayout._activeSelectionIndex,uP(e))}}});var Lce=ye((Mir,Cce)=>{function pct(){var e,t=0,r=!1;function n(i,a){return e.list.push({type:i,data:a?JSON.parse(JSON.stringify(a)):void 0}),e}return e={list:[],segmentId:function(){return t++},checkIntersection:function(i,a){return n("check",{seg1:i,seg2:a})},segmentChop:function(i,a){return n("div_seg",{seg:i,pt:a}),n("chop",{seg:i,pt:a})},statusRemove:function(i){return n("pop_seg",{seg:i})},segmentUpdate:function(i){return n("seg_update",{seg:i})},segmentNew:function(i,a){return n("new_seg",{seg:i,primary:a})},segmentRemove:function(i){return n("rem_seg",{seg:i})},tempStatus:function(i,a,o){return n("temp_status",{seg:i,above:a,below:o})},rewind:function(i){return n("rewind",{seg:i})},status:function(i,a,o){return n("status",{seg:i,above:a,below:o})},vert:function(i){return i===r?e:(r=i,n("vert",{x:i}))},log:function(i){return typeof i!="string"&&(i=JSON.stringify(i,!1," ")),n("log",{txt:i})},reset:function(){return n("reset")},selected:function(i){return n("selected",{segs:i})},chainStart:function(i){return n("chain_start",{seg:i})},chainRemoveHead:function(i,a){return n("chain_rem_head",{index:i,pt:a})},chainRemoveTail:function(i,a){return n("chain_rem_tail",{index:i,pt:a})},chainNew:function(i,a){return n("chain_new",{pt1:i,pt2:a})},chainMatch:function(i){return n("chain_match",{index:i})},chainClose:function(i){return n("chain_close",{index:i})},chainAddHead:function(i,a){return n("chain_add_head",{index:i,pt:a})},chainAddTail:function(i,a){return n("chain_add_tail",{index:i,pt:a})},chainConnect:function(i,a){return n("chain_con",{index1:i,index2:a})},chainReverse:function(i){return n("chain_rev",{index:i})},chainJoin:function(i,a){return n("chain_join",{index1:i,index2:a})},done:function(){return n("done")}},e}Cce.exports=pct});var Ice=ye((Eir,Pce)=>{function gct(e){typeof e!="number"&&(e=1e-10);var t={epsilon:function(r){return typeof r=="number"&&(e=r),e},pointAboveOrOnLine:function(r,n,i){var a=n[0],o=n[1],s=i[0],l=i[1],u=r[0],c=r[1];return(s-a)*(c-o)-(l-o)*(u-a)>=-e},pointBetween:function(r,n,i){var a=r[1]-n[1],o=i[0]-n[0],s=r[0]-n[0],l=i[1]-n[1],u=s*o+a*l;if(u<e)return!1;var c=o*o+l*l;return!(u-c>-e)},pointsSameX:function(r,n){return Math.abs(r[0]-n[0])<e},pointsSameY:function(r,n){return Math.abs(r[1]-n[1])<e},pointsSame:function(r,n){return t.pointsSameX(r,n)&&t.pointsSameY(r,n)},pointsCompare:function(r,n){return t.pointsSameX(r,n)?t.pointsSameY(r,n)?0:r[1]<n[1]?-1:1:r[0]<n[0]?-1:1},pointsCollinear:function(r,n,i){var a=r[0]-n[0],o=r[1]-n[1],s=n[0]-i[0],l=n[1]-i[1];return Math.abs(a*l-s*o)<e},linesIntersect:function(r,n,i,a){var o=n[0]-r[0],s=n[1]-r[1],l=a[0]-i[0],u=a[1]-i[1],c=o*u-s*l;if(Math.abs(c)<e)return!1;var f=r[0]-i[0],h=r[1]-i[1],d=(l*h-u*f)/c,v=(o*h-s*f)/c,x={alongA:0,alongB:0,pt:[r[0]+d*o,r[1]+d*s]};return d<=-e?x.alongA=-2:d<e?x.alongA=-1:d-1<=-e?x.alongA=0:d-1<e?x.alongA=1:x.alongA=2,v<=-e?x.alongB=-2:v<e?x.alongB=-1:v-1<=-e?x.alongB=0:v-1<e?x.alongB=1:x.alongB=2,x},pointInsideRegion:function(r,n){for(var i=r[0],a=r[1],o=n[n.length-1][0],s=n[n.length-1][1],l=!1,u=0;u<n.length;u++){var c=n[u][0],f=n[u][1];f-a>e!=s-a>e&&(o-c)*(a-f)/(s-f)+c-i>e&&(l=!l),o=c,s=f}return l}};return t}Pce.exports=gct});var Dce=ye((kir,Rce)=>{var mct={create:function(){var e={root:{root:!0,next:null},exists:function(t){return!(t===null||t===e.root)},isEmpty:function(){return e.root.next===null},getHead:function(){return e.root.next},insertBefore:function(t,r){for(var n=e.root,i=e.root.next;i!==null;){if(r(i)){t.prev=i.prev,t.next=i,i.prev.next=t,i.prev=t;return}n=i,i=i.next}n.next=t,t.prev=n,t.next=null},findTransition:function(t){for(var r=e.root,n=e.root.next;n!==null&&!t(n);)r=n,n=n.next;return{before:r===e.root?null:r,after:n,insert:function(i){return i.prev=r,i.next=n,r.next=i,n!==null&&(n.prev=i),i}}}};return e},node:function(e){return e.prev=null,e.next=null,e.remove=function(){e.prev.next=e.next,e.next&&(e.next.prev=e.prev),e.prev=null,e.next=null},e}};Rce.exports=mct});var Fce=ye((Cir,zce)=>{var mM=Dce();function yct(e,t,r){function n(v,x){return{id:r?r.segmentId():-1,start:v,end:x,myFill:{above:null,below:null},otherFill:null}}function i(v,x,b){return{id:r?r.segmentId():-1,start:v,end:x,myFill:{above:b.myFill.above,below:b.myFill.below},otherFill:null}}var a=mM.create();function o(v,x,b,p,E,k){var A=t.pointsCompare(x,E);return A!==0?A:t.pointsSame(b,k)?0:v!==p?v?1:-1:t.pointAboveOrOnLine(b,p?E:k,p?k:E)?1:-1}function s(v,x){a.insertBefore(v,function(b){var p=o(v.isStart,v.pt,x,b.isStart,b.pt,b.other.pt);return p<0})}function l(v,x){var b=mM.node({isStart:!0,pt:v.start,seg:v,primary:x,other:null,status:null});return s(b,v.end),b}function u(v,x,b){var p=mM.node({isStart:!1,pt:x.end,seg:x,primary:b,other:v,status:null});v.other=p,s(p,v.pt)}function c(v,x){var b=l(v,x);return u(b,v,x),b}function f(v,x){r&&r.segmentChop(v.seg,x),v.other.remove(),v.seg.end=x,v.other.pt=x,s(v.other,v.pt)}function h(v,x){var b=i(x,v.seg.end,v.seg);return f(v,x),c(b,v.primary)}function d(v,x){var b=mM.create();function p(H,X){var G=H.seg.start,N=H.seg.end,W=X.seg.start,re=X.seg.end;return t.pointsCollinear(G,W,re)?t.pointsCollinear(N,W,re)||t.pointAboveOrOnLine(N,W,re)?1:-1:t.pointAboveOrOnLine(G,W,re)?1:-1}function E(H){return b.findTransition(function(X){var G=p(H,X.ev);return G>0})}function k(H,X){var G=H.seg,N=X.seg,W=G.start,re=G.end,ae=N.start,_e=N.end;r&&r.checkIntersection(G,N);var Me=t.linesIntersect(W,re,ae,_e);if(Me===!1){if(!t.pointsCollinear(W,re,ae)||t.pointsSame(W,_e)||t.pointsSame(re,ae))return!1;var ke=t.pointsSame(W,ae),ge=t.pointsSame(re,_e);if(ke&&ge)return X;var ie=!ke&&t.pointBetween(W,ae,_e),Te=!ge&&t.pointBetween(re,ae,_e);if(ke)return Te?h(X,re):h(H,_e),X;ie&&(ge||(Te?h(X,re):h(H,_e)),h(X,W))}else Me.alongA===0&&(Me.alongB===-1?h(H,ae):Me.alongB===0?h(H,Me.pt):Me.alongB===1&&h(H,_e)),Me.alongB===0&&(Me.alongA===-1?h(X,W):Me.alongA===0?h(X,Me.pt):Me.alongA===1&&h(X,re));return!1}for(var A=[];!a.isEmpty();){var L=a.getHead();if(r&&r.vert(L.pt[0]),L.isStart){let H=function(){if(C){var X=k(L,C);if(X)return X}return M?k(L,M):!1};var V=H;r&&r.segmentNew(L.seg,L.primary);var _=E(L),C=_.before?_.before.ev:null,M=_.after?_.after.ev:null;r&&r.tempStatus(L.seg,C?C.seg:!1,M?M.seg:!1);var g=H();if(g){if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,P&&(g.seg.myFill.above=!g.seg.myFill.above)}else g.seg.otherFill=L.seg.myFill;r&&r.segmentUpdate(g.seg),L.other.remove(),L.remove()}if(a.getHead()!==L){r&&r.rewind(L.seg);continue}if(e){var P;L.seg.myFill.below===null?P=!0:P=L.seg.myFill.above!==L.seg.myFill.below,M?L.seg.myFill.below=M.seg.myFill.above:L.seg.myFill.below=v,P?L.seg.myFill.above=!L.seg.myFill.below:L.seg.myFill.above=L.seg.myFill.below}else if(L.seg.otherFill===null){var T;M?L.primary===M.primary?T=M.seg.otherFill.above:T=M.seg.myFill.above:T=L.primary?x:v,L.seg.otherFill={above:T,below:T}}r&&r.status(L.seg,C?C.seg:!1,M?M.seg:!1),L.other.status=_.insert(mM.node({ev:L}))}else{var F=L.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(b.exists(F.prev)&&b.exists(F.next)&&k(F.prev.ev,F.next.ev),r&&r.statusRemove(F.ev.seg),F.remove(),!L.primary){var q=L.seg.myFill;L.seg.myFill=L.seg.otherFill,L.seg.otherFill=q}A.push(L.seg)}a.getHead().remove()}return r&&r.done(),A}return e?{addRegion:function(v){for(var x,b=v[v.length-1],p=0;p<v.length;p++){x=b,b=v[p];var E=t.pointsCompare(x,b);E!==0&&c(n(E<0?x:b,E<0?b:x),!0)}},calculate:function(v){return d(v,!1)}}:{calculate:function(v,x,b,p){return v.forEach(function(E){c(i(E.start,E.end,E),!0)}),b.forEach(function(E){c(i(E.start,E.end,E),!1)}),d(x,p)}}}zce.exports=yct});var Oce=ye((Lir,qce)=>{function _ct(e,t,r){var n=[],i=[];return e.forEach(function(a){var o=a.start,s=a.end;if(t.pointsSame(o,s)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}r&&r.chainStart(a);var l={index:0,matches_head:!1,matches_pt1:!1},u={index:0,matches_head:!1,matches_pt1:!1},c=l;function f(V,H,X){return c.index=V,c.matches_head=H,c.matches_pt1=X,c===l?(c=u,!1):(c=null,!0)}for(var h=0;h<n.length;h++){var d=n[h],v=d[0],x=d[1],b=d[d.length-1],p=d[d.length-2];if(t.pointsSame(v,o)){if(f(h,!0,!0))break}else if(t.pointsSame(v,s)){if(f(h,!0,!1))break}else if(t.pointsSame(b,o)){if(f(h,!1,!0))break}else if(t.pointsSame(b,s)&&f(h,!1,!1))break}if(c===l){n.push([o,s]),r&&r.chainNew(o,s);return}if(c===u){r&&r.chainMatch(l.index);var E=l.index,k=l.matches_pt1?s:o,A=l.matches_head,d=n[E],L=A?d[0]:d[d.length-1],_=A?d[1]:d[d.length-2],C=A?d[d.length-1]:d[0],M=A?d[d.length-2]:d[1];if(t.pointsCollinear(_,L,k)&&(A?(r&&r.chainRemoveHead(l.index,k),d.shift()):(r&&r.chainRemoveTail(l.index,k),d.pop()),L=_),t.pointsSame(C,k)){n.splice(E,1),t.pointsCollinear(M,C,L)&&(A?(r&&r.chainRemoveTail(l.index,L),d.pop()):(r&&r.chainRemoveHead(l.index,L),d.shift())),r&&r.chainClose(l.index),i.push(d);return}A?(r&&r.chainAddHead(l.index,k),d.unshift(k)):(r&&r.chainAddTail(l.index,k),d.push(k));return}function g(V){r&&r.chainReverse(V),n[V].reverse()}function P(V,H){var X=n[V],G=n[H],N=X[X.length-1],W=X[X.length-2],re=G[0],ae=G[1];t.pointsCollinear(W,N,re)&&(r&&r.chainRemoveTail(V,N),X.pop(),N=W),t.pointsCollinear(N,re,ae)&&(r&&r.chainRemoveHead(H,re),G.shift()),r&&r.chainJoin(V,H),n[V]=X.concat(G),n.splice(H,1)}var T=l.index,F=u.index;r&&r.chainConnect(T,F);var q=n[T].length<n[F].length;l.matches_head?u.matches_head?q?(g(T),P(T,F)):(g(F),P(F,T)):P(F,T):u.matches_head?P(T,F):q?(g(T),P(F,T)):(g(F),P(T,F))}),i}qce.exports=_ct});var Nce=ye((Pir,Bce)=>{function yM(e,t,r){var n=[];return e.forEach(function(i){var a=(i.myFill.above?8:0)+(i.myFill.below?4:0)+(i.otherFill&&i.otherFill.above?2:0)+(i.otherFill&&i.otherFill.below?1:0);t[a]!==0&&n.push({id:r?r.segmentId():-1,start:i.start,end:i.end,myFill:{above:t[a]===1,below:t[a]===2},otherFill:null})}),r&&r.selected(n),n}var xct={union:function(e,t){return yM(e,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],t)},intersect:function(e,t){return yM(e,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],t)},difference:function(e,t){return yM(e,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],t)},differenceRev:function(e,t){return yM(e,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],t)},xor:function(e,t){return yM(e,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],t)}};Bce.exports=xct});var Vce=ye((Iir,Uce)=>{var bct={toPolygon:function(e,t){function r(a){if(a.length<=0)return e.segments({inverted:!1,regions:[]});function o(u){var c=u.slice(0,u.length-1);return e.segments({inverted:!1,regions:[c]})}for(var s=o(a[0]),l=1;l<a.length;l++)s=e.selectDifference(e.combine(s,o(a[l])));return s}if(t.type==="Polygon")return e.polygon(r(t.coordinates));if(t.type==="MultiPolygon"){for(var n=e.segments({inverted:!1,regions:[]}),i=0;i<t.coordinates.length;i++)n=e.selectUnion(e.combine(n,r(t.coordinates[i])));return e.polygon(n)}throw new Error("PolyBool: Cannot convert GeoJSON object to PolyBool polygon")},fromPolygon:function(e,t,r){r=e.polygon(e.segments(r));function n(d,v){return t.pointInsideRegion([(d[0][0]+d[1][0])*.5,(d[0][1]+d[1][1])*.5],v)}function i(d){return{region:d,children:[]}}var a=i(null);function o(d,v){for(var x=0;x<d.children.length;x++){var b=d.children[x];if(n(v,b.region)){o(b,v);return}}for(var p=i(v),x=0;x<d.children.length;x++){var b=d.children[x];n(b.region,v)&&(p.children.push(b),d.children.splice(x,1),x--)}d.children.push(p)}for(var s=0;s<r.regions.length;s++){var l=r.regions[s];l.length<3||o(a,l)}function u(d,v){for(var x=0,b=d[d.length-1][0],p=d[d.length-1][1],E=[],k=0;k<d.length;k++){var A=d[k][0],L=d[k][1];E.push([A,L]),x+=L*b-A*p,b=A,p=L}var _=x<0;return _!==v&&E.reverse(),E.push([E[0][0],E[0][1]]),E}var c=[];function f(d){var v=[u(d.region,!1)];c.push(v);for(var x=0;x<d.children.length;x++)v.push(h(d.children[x]))}function h(d){for(var v=0;v<d.children.length;v++)f(d.children[v]);return u(d.region,!0)}for(var s=0;s<a.children.length;s++)f(a.children[s]);return c.length<=0?{type:"Polygon",coordinates:[]}:c.length==1?{type:"Polygon",coordinates:c[0]}:{type:"MultiPolygon",coordinates:c}}};Uce.exports=bct});var Wce=ye((Rir,jce)=>{var wct=Lce(),Tct=Ice(),Hce=Fce(),Act=Oce(),_M=Nce(),Gce=Vce(),E0=!1,xM=Tct(),Ep;Ep={buildLog:function(e){return e===!0?E0=wct():e===!1&&(E0=!1),E0===!1?!1:E0.list},epsilon:function(e){return xM.epsilon(e)},segments:function(e){var t=Hce(!0,xM,E0);return e.regions.forEach(t.addRegion),{segments:t.calculate(e.inverted),inverted:e.inverted}},combine:function(e,t){var r=Hce(!1,xM,E0);return{combined:r.calculate(e.segments,e.inverted,t.segments,t.inverted),inverted1:e.inverted,inverted2:t.inverted}},selectUnion:function(e){return{segments:_M.union(e.combined,E0),inverted:e.inverted1||e.inverted2}},selectIntersect:function(e){return{segments:_M.intersect(e.combined,E0),inverted:e.inverted1&&e.inverted2}},selectDifference:function(e){return{segments:_M.difference(e.combined,E0),inverted:e.inverted1&&!e.inverted2}},selectDifferenceRev:function(e){return{segments:_M.differenceRev(e.combined,E0),inverted:!e.inverted1&&e.inverted2}},selectXor:function(e){return{segments:_M.xor(e.combined,E0),inverted:e.inverted1!==e.inverted2}},polygon:function(e){return{regions:Act(e.segments,xM,E0),inverted:e.inverted}},polygonFromGeoJSON:function(e){return Gce.toPolygon(Ep,e)},polygonToGeoJSON:function(e){return Gce.fromPolygon(Ep,xM,e)},union:function(e,t){return bM(e,t,Ep.selectUnion)},intersect:function(e,t){return bM(e,t,Ep.selectIntersect)},difference:function(e,t){return bM(e,t,Ep.selectDifference)},differenceRev:function(e,t){return bM(e,t,Ep.selectDifferenceRev)},xor:function(e,t){return bM(e,t,Ep.selectXor)}};function bM(e,t,r){var n=Ep.segments(e),i=Ep.segments(t),a=Ep.combine(n,i),o=r(a);return Ep.polygon(o)}typeof window=="object"&&(window.PolyBool=Ep);jce.exports=Ep});var Xce=ye((Dir,Zce)=>{Zce.exports=function(t,r,n,i){var a=t[0],o=t[1],s=!1;n===void 0&&(n=0),i===void 0&&(i=r.length);for(var l=i-n,u=0,c=l-1;u<l;c=u++){var f=r[u+n][0],h=r[u+n][1],d=r[c+n][0],v=r[c+n][1],x=h>o!=v>o&&a<(d-f)*(o-h)/(v-h)+f;x&&(s=!s)}return s}});var wM=ye((zir,Yce)=>{"use strict";var vN=m6().dot,fP=es().BADNUM,hP=Yce.exports={};hP.tester=function(t){var r=t.slice(),n=r[0][0],i=n,a=r[0][1],o=a,s;for((r[r.length-1][0]!==r[0][0]||r[r.length-1][1]!==r[0][1])&&r.push(r[0]),s=1;s<r.length;s++)n=Math.min(n,r[s][0]),i=Math.max(i,r[s][0]),a=Math.min(a,r[s][1]),o=Math.max(o,r[s][1]);var l=!1,u;r.length===5&&(r[0][0]===r[1][0]?r[2][0]===r[3][0]&&r[0][1]===r[3][1]&&r[1][1]===r[2][1]&&(l=!0,u=function(v){return v[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]&&(l=!0,u=function(v){return v[1]===r[0][1]}));function c(v,x){var b=v[0],p=v[1];return!(b===fP||b<n||b>i||p===fP||p<a||p>o||x&&u(v))}function f(v,x){var b=v[0],p=v[1];if(b===fP||b<n||b>i||p===fP||p<a||p>o)return!1;var E=r.length,k=r[0][0],A=r[0][1],L=0,_,C,M,g,P;for(_=1;_<E;_++)if(C=k,M=A,k=r[_][0],A=r[_][1],g=Math.min(C,k),!(b<g||b>Math.max(C,k)||p>Math.max(M,A)))if(p<Math.min(M,A))b!==g&&L++;else{if(k===C?P=p:P=M+(b-C)*(A-M)/(k-C),p===P)return!(_===1&&x);p<=P&&b!==g&&L++}return L%2===1}var h=!0,d=r[0];for(s=1;s<r.length;s++)if(d[0]!==r[s][0]||d[1]!==r[s][1]){h=!1;break}return{xmin:n,xmax:i,ymin:a,ymax:o,pts:r,contains:l?c:f,isRect:l,degenerate:h}};hP.isSegmentBent=function(t,r,n,i){var a=t[r],o=[t[n][0]-a[0],t[n][1]-a[1]],s=vN(o,o),l=Math.sqrt(s),u=[-o[1]/l,o[0]/l],c,f,h;for(c=r+1;c<n;c++)if(f=[t[c][0]-a[0],t[c][1]-a[1]],h=vN(f,o),h<0||h>s||Math.abs(vN(f,u))>i)return!0;return!1};hP.filter=function(t,r){var n=[t[0]],i=0,a=0;function o(l){t.push(l);var u=n.length,c=i;n.splice(a+1);for(var f=c+1;f<t.length;f++)(f===t.length-1||hP.isSegmentBent(t,c,f+1,r))&&(n.push(t[f]),n.length<u-2&&(i=f,a=n.length-1),c=f)}if(t.length>1){var s=t.pop();o(s)}return{addPt:o,raw:t,filtered:n}}});var Jce=ye((Fir,Kce)=>{"use strict";Kce.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}});var _fe=ye((qir,yfe)=>{"use strict";var $ce=Wce(),Sct=Xce(),SM=ba(),Mct=ao().dashStyle,TM=va(),Ect=Nc(),kct=rp().makeEventData,LM=Sg(),Cct=LM.freeMode,Lct=LM.rectMode,MM=LM.drawMode,yN=LM.openMode,_N=LM.selectMode,Qce=h_(),efe=cM(),afe=$L(),ofe=e_().clearOutline,sfe=c_(),pN=sfe.handleEllipse,Pct=sfe.readPaths,Ict=XL().newShapes,Rct=VB(),Dct=dN().activateLastSelection,vP=Mr(),zct=vP.sorterAsc,lfe=wM(),AM=P6(),k0=af().getFromId,Fct=lM(),qct=gM().redrawReglTraces,pP=Jce(),Am=pP.MINSELECT,Oct=lfe.filter,xN=lfe.tester,bN=GL(),tfe=bN.p2r,Bct=bN.axValue,Nct=bN.getTransform;function wN(e){return e.subplot!==void 0}function Uct(e,t,r,n,i){var a=!wN(n),o=Cct(i),s=Lct(i),l=yN(i),u=MM(i),c=_N(i),f=i==="drawline",h=i==="drawcircle",d=f||h,v=n.gd,x=v._fullLayout,b=c&&x.newselection.mode==="immediate"&&a,p=x._zoomlayer,E=n.element.getBoundingClientRect(),k=n.plotinfo,A=Nct(k),L=t-E.left,_=r-E.top;x._calcInverseTransform(v);var C=vP.apply3DTransform(x._invTransform)(L,_);L=C[0],_=C[1];var M=x._invScaleX,g=x._invScaleY,P=L,T=_,F="M"+L+","+_,q=n.xaxes[0],V=n.yaxes[0],H=q._length,X=V._length,G=e.altKey&&!(MM(i)&&l),N,W,re,ae,_e,Me,ke;cfe(e,v,n),o&&(N=Oct([[L,_]],pP.BENDPX));var ge=p.selectAll("path.select-outline-"+k.id).data([1]),ie=u?x.newshape:x.newselection;u&&(n.hasText=ie.label.text||ie.label.texttemplate);var Te=u&&!l?ie.fillcolor:"rgba(0,0,0,0)",Ee=ie.line.color||(a?TM.contrast(v._fullLayout.plot_bgcolor):"#7f7f7f");ge.enter().append("path").attr("class","select-outline select-outline-"+k.id).style({opacity:u?ie.opacity/2:1,"stroke-dasharray":Mct(ie.line.dash,ie.line.width),"stroke-width":ie.line.width+"px","shape-rendering":"crispEdges"}).call(TM.stroke,Ee).call(TM.fill,Te).attr("fill-rule","evenodd").classed("cursor-move",!!u).attr("transform",A).attr("d",F+"Z");var Ae=p.append("path").attr("class","zoombox-corners").style({fill:TM.background,stroke:TM.defaultLine,"stroke-width":1}).attr("transform",A).attr("d","M0,0Z");if(u&&n.hasText){var ze=p.select(".label-temp");ze.empty()&&(ze=p.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var Ce=x._uid+pP.SELECTID,me=[],Re=gP(v,n.xaxes,n.yaxes,n.subplot);b&&!e.shiftKey&&(n._clearSubplotSelections=function(){if(a){var Ge=q._id,nt=V._id;pfe(v,Ge,nt,Re);for(var ct=(v.layout||{}).selections||[],qt=[],rt=!1,ot=0;ot<ct.length;ot++){var Rt=x.selections[ot];!Rt||Rt.xref!==Ge||Rt.yref!==nt?qt.push(ct[ot]):rt=!0}rt&&(v._fullLayout._noEmitSelectedAtStart=!0,SM.call("_guiRelayout",v,{selections:qt}))}});var ce=tft(n);n.moveFn=function(Ge,nt){n._clearSubplotSelections&&(n._clearSubplotSelections(),n._clearSubplotSelections=void 0),P=Math.max(0,Math.min(H,M*Ge+L)),T=Math.max(0,Math.min(X,g*nt+_));var ct=Math.abs(P-L),qt=Math.abs(T-_);if(s){var rt,ot,Rt;if(c){var kt=x.selectdirection;switch(kt==="any"?qt<Math.min(ct*.6,Am)?rt="h":ct<Math.min(qt*.6,Am)?rt="v":rt="d":rt=kt,rt){case"h":ot=h?X/2:0,Rt=X;break;case"v":ot=h?H/2:0,Rt=H;break}}if(u)switch(x.newshape.drawdirection){case"vertical":rt="h",ot=h?X/2:0,Rt=X;break;case"horizontal":rt="v",ot=h?H/2:0,Rt=H;break;case"ortho":ct<qt?(rt="h",ot=_,Rt=T):(rt="v",ot=L,Rt=P);break;default:rt="d"}rt==="h"?(ae=d?pN(h,[P,ot],[P,Rt]):[[L,ot],[L,Rt],[P,Rt],[P,ot]],ae.xmin=d?P:Math.min(L,P),ae.xmax=d?P:Math.max(L,P),ae.ymin=Math.min(ot,Rt),ae.ymax=Math.max(ot,Rt),Ae.attr("d","M"+ae.xmin+","+(_-Am)+"h-4v"+2*Am+"h4ZM"+(ae.xmax-1)+","+(_-Am)+"h4v"+2*Am+"h-4Z")):rt==="v"?(ae=d?pN(h,[ot,T],[Rt,T]):[[ot,_],[ot,T],[Rt,T],[Rt,_]],ae.xmin=Math.min(ot,Rt),ae.xmax=Math.max(ot,Rt),ae.ymin=d?T:Math.min(_,T),ae.ymax=d?T:Math.max(_,T),Ae.attr("d","M"+(L-Am)+","+ae.ymin+"v-4h"+2*Am+"v4ZM"+(L-Am)+","+(ae.ymax-1)+"v4h"+2*Am+"v-4Z")):rt==="d"&&(ae=d?pN(h,[L,_],[P,T]):[[L,_],[L,T],[P,T],[P,_]],ae.xmin=Math.min(L,P),ae.xmax=Math.max(L,P),ae.ymin=Math.min(_,T),ae.ymax=Math.max(_,T),Ae.attr("d","M0,0Z"))}else o&&(N.addPt([P,T]),ae=N.filtered);if(n.selectionDefs&&n.selectionDefs.length?(re=ffe(n.mergedPolygons,ae,G),ae.subtract=G,W=TN(n.selectionDefs.concat([ae]))):(re=[ae],W=xN(ae)),afe(dfe(re,l),ge,n),c){var Ct=mN(v,!1),Yt=Ct.eventData?Ct.eventData.points.slice():[];Ct=mN(v,!1,W,Re,n),W=Ct.selectionTesters,ke=Ct.eventData;var xr;N?xr=N.filtered:xr=gfe(re),AM.throttle(Ce,pP.SELECTDELAY,function(){me=vfe(W,Re);for(var er=me.slice(),Ke=0;Ke<Yt.length;Ke++){for(var xt=Yt[Ke],bt=!1,Lt=0;Lt<er.length;Lt++)if(er[Lt].curveNumber===xt.curveNumber&&er[Lt].pointNumber===xt.pointNumber){bt=!0;break}bt||er.push(xt)}er.length&&(ke||(ke={}),ke.points=er),ce(ke,xr),rft(v,ke)})}},n.clickFn=function(Ge,nt){if(Ae.remove(),v._fullLayout._activeShapeIndex>=0){v._fullLayout._deactivateShape(v);return}if(!u){var ct=x.clickmode;AM.done(Ce).then(function(){if(AM.clear(Ce),Ge===2){for(ge.remove(),_e=0;_e<Re.length;_e++)Me=Re[_e],Me._module.selectPoints(Me,!1);if(kM(v,Re),EM(n),SN(v),Re.length){var qt=Re[0].xaxis,rt=Re[0].yaxis;if(qt&&rt){for(var ot=[],Rt=v._fullLayout.selections,kt=0;kt<Rt.length;kt++){var Ct=Rt[kt];Ct&&(Ct.xref!==qt._id||Ct.yref!==rt._id)&&ot.push(Ct)}ot.length<Rt.length&&(v._fullLayout._noEmitSelectedAtStart=!0,SM.call("_guiRelayout",v,{selections:ot}))}}}else ct.indexOf("select")>-1&&ufe(nt,v,n.xaxes,n.yaxes,n.subplot,n,ge),ct==="event"&&CM(v,void 0);Ect.click(v,nt,k.id)}).catch(vP.error)}},n.doneFn=function(){Ae.remove(),AM.done(Ce).then(function(){AM.clear(Ce),!b&&ae&&n.selectionDefs&&(ae.subtract=G,n.selectionDefs.push(ae),n.mergedPolygons.length=0,[].push.apply(n.mergedPolygons,re)),(b||u)&&EM(n,b),n.doneFnCompleted&&n.doneFnCompleted(me),c&&CM(v,ke)}).catch(vP.error)}}function ufe(e,t,r,n,i,a,o){var s=t._hoverdata,l=t._fullLayout,u=l.clickmode,c=u.indexOf("event")>-1,f=[],h,d,v,x,b,p,E,k,A,L;if(Wct(s)){cfe(e,t,a),h=gP(t,r,n,i);var _=Zct(s,h),C=_.pointNumbers.length>0;if(C?Xct(h,_):Yct(h)&&(E=ife(_))){for(o&&o.remove(),L=0;L<h.length;L++)d=h[L],d._module.selectPoints(d,!1);kM(t,h),EM(a),c&&SN(t)}else{k=e.shiftKey&&(E!==void 0?E:ife(_)),v=Vct(_.pointNumber,_.searchInfo,k);var M=a.selectionDefs.concat([v]);for(x=TN(M,x),L=0;L<h.length;L++)if(b=h[L]._module.selectPoints(h[L],x),p=hfe(b,h[L]),f.length)for(var g=0;g<p.length;g++)f.push(p[g]);else f=p;if(A={points:f},kM(t,h,A),v&&a&&a.selectionDefs.push(v),o){var P=a.mergedPolygons,T=yN(a.dragmode);afe(dfe(P,T),o,a)}c&&CM(t,A)}}}function Vct(e,t,r){return{pointNumber:e,searchInfo:t,subtract:!!r}}function gN(e){return"pointNumber"in e&&"searchInfo"in e}function Hct(e){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(t,r,n,i){var a=e.searchInfo.cd[0].trace.index,o=i.cd[0].trace.index;return o===a&&n===e.pointNumber},isRect:!1,degenerate:!1,subtract:!!e.subtract}}function TN(e){if(!e.length)return;for(var t=[],r=gN(e[0])?0:e[0][0][0],n=r,i=gN(e[0])?0:e[0][0][1],a=i,o=0;o<e.length;o++)if(gN(e[o]))t.push(Hct(e[o]));else{var s=xN(e[o]);s.subtract=!!e[o].subtract,t.push(s),r=Math.min(r,s.xmin),n=Math.max(n,s.xmax),i=Math.min(i,s.ymin),a=Math.max(a,s.ymax)}function l(u,c,f,h){for(var d=!1,v=0;v<t.length;v++)t[v].contains(u,c,f,h)&&(d=!t[v].subtract);return d}return{xmin:r,xmax:n,ymin:i,ymax:a,pts:[],contains:l,isRect:!1,degenerate:!1}}function cfe(e,t,r){var n=t._fullLayout,i=r.plotinfo,a=r.dragmode,o=n._lastSelectedSubplot&&n._lastSelectedSubplot===i.id,s=(e.shiftKey||e.altKey)&&!(MM(a)&&yN(a));o&&s&&i.selection&&i.selection.selectionDefs&&!r.selectionDefs?(r.selectionDefs=i.selection.selectionDefs,r.mergedPolygons=i.selection.mergedPolygons):(!s||!i.selection)&&EM(r),o||(ofe(t),n._lastSelectedSubplot=i.id)}function Gct(e){return e._fullLayout._activeShapeIndex>=0}function jct(e){return e._fullLayout._activeSelectionIndex>=0}function EM(e,t){var r=e.dragmode,n=e.plotinfo,i=e.gd;Gct(i)&&i._fullLayout._deactivateShape(i),jct(i)&&i._fullLayout._deactivateSelection(i);var a=i._fullLayout,o=a._zoomlayer,s=MM(r),l=_N(r);if(s||l){var u=o.selectAll(".select-outline-"+n.id);if(u&&i._fullLayout._outlining){var c;s&&(c=Ict(u,e)),c&&SM.call("_guiRelayout",i,{shapes:c});var f;l&&!wN(e)&&(f=Rct(u,e)),f&&(i._fullLayout._noEmitSelectedAtStart=!0,SM.call("_guiRelayout",i,{selections:f}).then(function(){t&&Dct(i)})),i._fullLayout._outlining=!1}}n.selection={},n.selection.selectionDefs=e.selectionDefs=[],n.selection.mergedPolygons=e.mergedPolygons=[]}function rfe(e){return e._id}function gP(e,t,r,n){if(!e.calcdata)return[];var i=[],a=t.map(rfe),o=r.map(rfe),s,l,u;for(u=0;u<e.calcdata.length;u++)if(s=e.calcdata[u],l=s[0].trace,!(l.visible!==!0||!l._module||!l._module.selectPoints))if(wN({subplot:n})&&(l.subplot===n||l.geo===n))i.push(dP(l._module,s,t[0],r[0]));else if(l.type==="splom"){if(l._xaxes[a[0]]&&l._yaxes[o[0]]){var c=dP(l._module,s,t[0],r[0]);c.scene=e._fullLayout._splomScenes[l.uid],i.push(c)}}else if(l.type==="sankey"){var f=dP(l._module,s,t[0],r[0]);i.push(f)}else{if(a.indexOf(l.xaxis)===-1&&(!l._xA||!l._xA.overlaying)||o.indexOf(l.yaxis)===-1&&(!l._yA||!l._yA.overlaying))continue;i.push(dP(l._module,s,k0(e,l.xaxis),k0(e,l.yaxis)))}return i}function dP(e,t,r,n){return{_module:e,cd:t,xaxis:r,yaxis:n}}function Wct(e){return e&&Array.isArray(e)&&e[0].hoverOnBox!==!0}function Zct(e,t){var r=e[0],n=-1,i=[],a,o;for(o=0;o<t.length;o++)if(a=t[o],r.fullData.index===a.cd[0].trace.index){if(r.hoverOnBox===!0)break;r.pointNumber!==void 0?n=r.pointNumber:r.binNumber!==void 0&&(n=r.binNumber,i=r.pointNumbers);break}return{pointNumber:n,pointNumbers:i,searchInfo:a}}function ife(e){var t=e.searchInfo.cd[0].trace,r=e.pointNumber,n=e.pointNumbers,i=n.length>0,a=i?n[0]:r;return t.selectedpoints?t.selectedpoints.indexOf(a)>-1:!1}function Xct(e,t){var r=[],n,i,a,o;for(o=0;o<e.length;o++)n=e[o],n.cd[0].trace.selectedpoints&&n.cd[0].trace.selectedpoints.length>0&&r.push(n);if(r.length===1&&(a=r[0]===t.searchInfo,a&&(i=t.searchInfo.cd[0].trace,i.selectedpoints.length===t.pointNumbers.length))){for(o=0;o<t.pointNumbers.length;o++)if(i.selectedpoints.indexOf(t.pointNumbers[o])<0)return!1;return!0}return!1}function Yct(e){var t=0,r,n,i;for(i=0;i<e.length;i++)if(r=e[i],n=r.cd[0].trace,n.selectedpoints&&(n.selectedpoints.length>1||(t+=n.selectedpoints.length,t>1)))return!1;return t===1}function kM(e,t,r){var n;for(n=0;n<t.length;n++){var i=t[n].cd[0].trace._fullInput,a=e._fullLayout._tracePreGUI[i.uid]||{};a.selectedpoints===void 0&&(a.selectedpoints=i._input.selectedpoints||null)}var o;if(r){var s=r.points||[];for(n=0;n<t.length;n++)o=t[n].cd[0].trace,o._input.selectedpoints=o._fullInput.selectedpoints=[],o._fullInput!==o&&(o.selectedpoints=[]);for(var l=0;l<s.length;l++){var u=s[l],c=u.data,f=u.fullData,h=u.pointIndex,d=u.pointIndices;d?([].push.apply(c.selectedpoints,d),o._fullInput!==o&&[].push.apply(f.selectedpoints,d)):(c.selectedpoints.push(h),o._fullInput!==o&&f.selectedpoints.push(h))}}else for(n=0;n<t.length;n++)o=t[n].cd[0].trace,delete o.selectedpoints,delete o._input.selectedpoints,o._fullInput!==o&&delete o._fullInput.selectedpoints;Kct(e,t)}function Kct(e,t){for(var r=!1,n=0;n<t.length;n++){var i=t[n],a=i.cd;SM.traceIs(a[0].trace,"regl")&&(r=!0);var o=i._module,s=o.styleOnSelect||o.style;s&&(s(e,a,a[0].node3),a[0].nodeRangePlot3&&s(e,a,a[0].nodeRangePlot3))}r&&(Fct(e),qct(e))}function ffe(e,t,r){for(var n=r?$ce.difference:$ce.union,i=n({regions:e},{regions:[t]}),a=i.regions.reverse(),o=0;o<a.length;o++){var s=a[o];s.subtract=AN(s,a.slice(0,o))}return a}function hfe(e,t){if(Array.isArray(e))for(var r=t.cd,n=t.cd[0].trace,i=0;i<e.length;i++)e[i]=kct(e[i],n,r);return e}function dfe(e,t){for(var r=[],n=0;n<e.length;n++){r[n]=[];for(var i=0;i<e[n].length;i++){r[n][i]=[],r[n][i][0]=i?"L":"M";for(var a=0;a<e[n][i].length;a++)r[n][i].push(e[n][i][a])}t||r[n].push(["Z",r[n][0][1],r[n][0][2]])}return r}function vfe(e,t){for(var r=[],n,i=[],a,o=0;o<t.length;o++){var s=t[o];a=s._module.selectPoints(s,e),i.push(a),n=hfe(a,s),r=r.concat(n)}return r}function mN(e,t,r,n,i){var a=!!n,o,s,l;i&&(o=i.plotinfo,s=i.xaxes[0]._id,l=i.yaxes[0]._id);var u=[],c=[],f=nfe(e),h=e._fullLayout;if(o){var d=h._zoomlayer,v=h.dragmode,x=MM(v),b=_N(v);if(x||b){var p=k0(e,s,"x"),E=k0(e,l,"y");if(p&&E){var k=d.selectAll(".select-outline-"+o.id);if(k&&e._fullLayout._outlining&&k.length){for(var A=k[0][0],L=A.getAttribute("d"),_=Pct(L,e,o),C=[],M=0;M<_.length;M++){for(var g=_[M],P=[],T=0;T<g.length;T++)P.push([d_(p,g[T][1]),d_(E,g[T][2])]);P.xref=s,P.yref=l,P.subtract=AN(P,C),C.push(P)}f=f.concat(C)}}}}var F=s&&l?[s+l]:h._subplots.cartesian;Jct(e);for(var q={},V=0;V<F.length;V++){var H=F[V],X=H.indexOf("y"),G=H.slice(0,X),N=H.slice(X),W=s&&l?r:void 0;if(W=Qct(f,G,N,W),W){var re=n;if(!a){var ae=k0(e,G,"x"),_e=k0(e,N,"y");re=gP(e,[ae],[_e],H);for(var Me=0;Me<re.length;Me++){var ke=re[Me],ge=ke.cd[0],ie=ge.trace;if(ke._module.name==="scattergl"&&!ge.t.xpx){var Te=ie.x,Ee=ie.y,Ae=ie._length;ge.t.xpx=[],ge.t.ypx=[];for(var ze=0;ze<Ae;ze++)ge.t.xpx[ze]=ae.c2p(Te[ze]),ge.t.ypx[ze]=_e.c2p(Ee[ze])}ke._module.name==="splom"&&(q[ie.uid]||(q[ie.uid]=!0))}}var Ce=vfe(W,re);u=u.concat(Ce),c=c.concat(re)}}var me={points:u};kM(e,c,me);var Re=h.clickmode,ce=Re.indexOf("event")>-1&&t;if(!o&&t){var Ge=nfe(e,!0);if(Ge.length){var nt=Ge[0].xref,ct=Ge[0].yref;if(nt&&ct){var qt=gfe(Ge),rt=mfe([k0(e,nt,"x"),k0(e,ct,"y")]);rt(me,qt)}}e._fullLayout._noEmitSelectedAtStart?e._fullLayout._noEmitSelectedAtStart=!1:ce&&CM(e,me),h._reselect=!1}if(!o&&h._deselect){var ot=h._deselect;s=ot.xref,l=ot.yref,$ct(s,l,c)||pfe(e,s,l,n),ce&&(me.points.length?CM(e,me):SN(e)),h._deselect=!1}return{eventData:me,selectionTesters:r}}function Jct(e){var t=e.calcdata;if(t)for(var r=0;r<t.length;r++){var n=t[r][0],i=n.trace,a=e._fullLayout._splomScenes;if(a){var o=a[i.uid];o&&(o.selectBatch=[])}}}function $ct(e,t,r){for(var n=0;n<r.length;n++){var i=r[n];if(i.xaxis&&i.xaxis._id===e&&i.yaxis&&i.yaxis._id===t)return!0}return!1}function pfe(e,t,r,n){n=gP(e,[k0(e,t,"x")],[k0(e,r,"y")],t+r);for(var i=0;i<n.length;i++){var a=n[i];a._module.selectPoints(a,!1)}kM(e,n)}function Qct(e,t,r,n){for(var i,a=0;a<e.length;a++){var o=e[a];if(!(t!==o.xref||r!==o.yref))if(i){var s=!!o.subtract;i=ffe(i,o,s),n=TN(i)}else i=[o],n=xN(o)}return n}function nfe(e,t){for(var r=[],n=e._fullLayout,i=n.selections,a=i.length,o=0;o<a;o++)if(!(t&&o!==n._activeSelectionIndex)){var s=i[o];if(s){var l=s.xref,u=s.yref,c=k0(e,l,"x"),f=k0(e,u,"y"),h,d,v,x,b;if(s.type==="rect"){b=[];var p=d_(c,s.x0),E=d_(c,s.x1),k=d_(f,s.y0),A=d_(f,s.y1);b=[[p,k],[p,A],[E,A],[E,k]],h=Math.min(p,E),d=Math.max(p,E),v=Math.min(k,A),x=Math.max(k,A),b.xmin=h,b.xmax=d,b.ymin=v,b.ymax=x,b.xref=l,b.yref=u,b.subtract=!1,b.isRect=!0,r.push(b)}else if(s.type==="path")for(var L=s.path.split("Z"),_=[],C=0;C<L.length;C++){var M=L[C];if(M){M+="Z";var g=Qce.extractPathCoords(M,efe.paramIsX,"raw"),P=Qce.extractPathCoords(M,efe.paramIsY,"raw");h=1/0,d=-1/0,v=1/0,x=-1/0,b=[];for(var T=0;T<g.length;T++){var F=d_(c,g[T]),q=d_(f,P[T]);b.push([F,q]),h=Math.min(F,h),d=Math.max(F,d),v=Math.min(q,v),x=Math.max(q,x)}b.xmin=h,b.xmax=d,b.ymin=v,b.ymax=x,b.xref=l,b.yref=u,b.subtract=AN(b,_),_.push(b),r.push(b)}}}}return r}function AN(e,t){for(var r=!1,n=0;n<t.length;n++)for(var i=t[n],a=0;a<e.length;a++)if(Sct(e[a],i)){r=!r;break}return r}function d_(e,t){return e.type==="date"&&(t=t.replace("_"," ")),e.type==="log"?e.c2p(t):e.r2p(t,null,e.calendar)}function gfe(e){for(var t=e.length,r=[],n=0;n<t;n++){var i=e[n];r=r.concat(i),r=r.concat([i[0]])}return eft(r)}function eft(e){return e.isRect=e.length===5&&e[0][0]===e[4][0]&&e[0][1]===e[4][1]&&e[0][0]===e[1][0]&&e[2][0]===e[3][0]&&e[0][1]===e[3][1]&&e[1][1]===e[2][1]||e[0][1]===e[1][1]&&e[2][1]===e[3][1]&&e[0][0]===e[3][0]&&e[1][0]===e[2][0],e.isRect&&(e.xmin=Math.min(e[0][0],e[2][0]),e.xmax=Math.max(e[0][0],e[2][0]),e.ymin=Math.min(e[0][1],e[2][1]),e.ymax=Math.max(e[0][1],e[2][1])),e}function mfe(e){return function(t,r){for(var n,i,a=0;a<e.length;a++){var o=e[a],s=o._id,l=s.charAt(0);if(r.isRect){n||(n={});var u=r[l+"min"],c=r[l+"max"];u!==void 0&&c!==void 0&&(n[s]=[tfe(o,u),tfe(o,c)].sort(zct))}else i||(i={}),i[s]=r.map(Bct(o))}n&&(t.range=n),i&&(t.lassoPoints=i)}}function tft(e){var t=e.plotinfo;return t.fillRangeItems||mfe(e.xaxes.concat(e.yaxes))}function rft(e,t){e.emit("plotly_selecting",t)}function CM(e,t){t&&(t.selections=(e.layout||{}).selections||[]),e.emit("plotly_selected",t)}function SN(e){e.emit("plotly_deselect",null)}yfe.exports={reselect:mN,prepSelect:Uct,clearOutline:ofe,clearSelectionsCache:EM,selectOnClick:ufe}});var MN=ye((Oir,xfe)=>{"use strict";xfe.exports=[{path:"",backoff:0},{path:"M-2.4,-3V3L0.6,0Z",backoff:.6},{path:"M-3.7,-2.5V2.5L1.3,0Z",backoff:1.3},{path:"M-4.45,-3L-1.65,-0.2V0.2L-4.45,3L1.55,0Z",backoff:1.55},{path:"M-2.2,-2.2L-0.2,-0.2V0.2L-2.2,2.2L-1.4,3L1.6,0L-1.4,-3Z",backoff:1.6},{path:"M-4.4,-2.1L-0.6,-0.2V0.2L-4.4,2.1L-4,3L2,0L-4,-3Z",backoff:2},{path:"M2,0A2,2 0 1,1 0,-2A2,2 0 0,1 2,0Z",backoff:0,noRotate:!0},{path:"M2,2V-2H-2V2Z",backoff:0,noRotate:!0}]});var PM=ye((Bir,bfe)=>{"use strict";bfe.exports={axisRefDescription:function(e,t,r){return["If set to a",e,"axis id (e.g. *"+e+"* or","*"+e+"2*), the `"+e+"` position refers to a",e,"coordinate. If set to *paper*, the `"+e+"`","position refers to the distance from the",t,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",t,"("+r+"). If set to a",e,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",t,"of the domain of that axis: e.g.,","*"+e+"2 domain* refers to the domain of the second",e," axis and a",e,"position of 0.5 refers to the","point between the",t,"and the",r,"of the domain of the","second",e,"axis."].join(" ")}}});var Nb=ye((Uir,Afe)=>{"use strict";var wfe=MN(),Tfe=Su(),mP=ad(),ift=Vs().templatedArray,Nir=PM();Afe.exports=ift("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:Tfe({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:wfe.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:wfe.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",mP.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",mP.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",mP.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",mP.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:Tfe({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})});var Sm=ye((Vir,Sfe)=>{"use strict";Sfe.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}});var Eg=ye((Hir,Mfe)=>{"use strict";Mfe.exports=function(t){return{valType:"color",editType:"style",anim:!0}}});var Uc=ye((Gir,Ife)=>{"use strict";var Efe=Oc().axisHoverFormat,nft=Wo().texttemplateAttrs,aft=Wo().hovertemplateAttrs,kfe=Jl(),oft=Su(),sft=Ed().dash,lft=Ed().pattern,uft=ao(),cft=Sm(),yP=no().extendFlat,fft=Eg();function Cfe(e){return{valType:"any",dflt:0,editType:"calc"}}function Lfe(e){return{valType:"any",editType:"calc"}}function Pfe(e){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}Ife.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:Cfe("x"),yperiod:Cfe("y"),xperiod0:Lfe("x0"),yperiod0:Lfe("y0"),xperiodalignment:Pfe("x"),yperiodalignment:Pfe("y"),xhoverformat:Efe("x"),yhoverformat:Efe("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:nft({},{}),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:aft({},{keys:cft.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:yP({},sft,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:fft(!0),fillgradient:yP({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:lft,marker:yP({symbol:{valType:"enumerated",values:uft.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:yP({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},kfe("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"},kfe("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:oft({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}});var EN=ye((Wir,zfe)=>{"use strict";var Rfe=Nb(),Dfe=Uc().line,hft=Ed().dash,_P=no().extendFlat,dft=Bu().overrideAll,vft=Vs().templatedArray,jir=PM();zfe.exports=dft(vft("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:_P({},Rfe.xref,{}),yref:_P({},Rfe.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:Dfe.color,width:_P({},Dfe.width,{min:1,dflt:1}),dash:_P({},hft,{dflt:"dot"})}}),"arraydraw","from-root")});var Bfe=ye((Zir,Ofe)=>{"use strict";var Ffe=Mr(),xP=Qa(),pft=Zd(),gft=EN(),qfe=h_();Ofe.exports=function(t,r){pft(t,r,{name:"selections",handleItemDefaults:mft});for(var n=r.selections,i=0;i<n.length;i++){var a=n[i];a&&a.path===void 0&&(a.x0===void 0||a.x1===void 0||a.y0===void 0||a.y1===void 0)&&(r.selections[i]=null)}};function mft(e,t,r){function n(_,C){return Ffe.coerce(e,t,gft,_,C)}var i=n("path"),a=i?"path":"rect",o=n("type",a),s=o!=="path";s&&delete t.path,n("opacity"),n("line.color"),n("line.width"),n("line.dash");for(var l=["x","y"],u=0;u<2;u++){var c=l[u],f={_fullLayout:r},h,d,v,x=xP.coerceRef(e,t,f,c);if(h=xP.getFromId(f,x),h._selectionIndices.push(t._index),v=qfe.rangeToShapePosition(h),d=qfe.shapePositionToRange(h),s){var b=c+"0",p=c+"1",E=e[b],k=e[p];e[b]=d(e[b],!0),e[p]=d(e[p],!0),xP.coercePosition(t,f,n,x,b),xP.coercePosition(t,f,n,x,p);var A=t[b],L=t[p];A!==void 0&&L!==void 0&&(t[b]=v(A),t[p]=v(L),e[b]=E,e[p]=k)}}s&&Ffe.noneOrAll(e,t,["x0","x1","y0","y1"])}});var Ufe=ye((Xir,Nfe)=>{"use strict";Nfe.exports=function(t,r,n){n("newselection.mode");var i=n("newselection.line.width");i&&(n("newselection.line.color"),n("newselection.line.dash")),n("activeselection.fillcolor"),n("activeselection.opacity")}});var IM=ye((Yir,Gfe)=>{"use strict";var yft=ba(),Vfe=Mr(),Hfe=af();Gfe.exports=function(t){return function(n,i){var a=n[t];if(Array.isArray(a))for(var o=yft.subplotsRegistry.cartesian,s=o.idRegex,l=i._subplots,u=l.xaxis,c=l.yaxis,f=l.cartesian,h=i._has("cartesian"),d=0;d<a.length;d++){var v=a[d];if(Vfe.isPlainObject(v)){var x=Hfe.cleanId(v.xref,"x",!1),b=Hfe.cleanId(v.yref,"y",!1),p=s.x.test(x),E=s.y.test(b);if(p||E){h||Vfe.pushUnique(i._basePlotModules,o);var k=!1;p&&u.indexOf(x)===-1&&(u.push(x),k=!0),E&&c.indexOf(b)===-1&&(c.push(b),k=!0),k&&p&&E&&f.push(x+b)}}}}}});var wf=ye((Kir,Wfe)=>{"use strict";var jfe=dN(),RM=_fe();Wfe.exports={moduleType:"component",name:"selections",layoutAttributes:EN(),supplyLayoutDefaults:Bfe(),supplyDrawNewSelectionDefaults:Ufe(),includeBasePlot:IM()("selections"),draw:jfe.draw,drawOne:jfe.drawOne,reselect:RM.reselect,prepSelect:RM.prepSelect,clearOutline:RM.clearOutline,clearSelectionsCache:RM.clearSelectionsCache,selectOnClick:RM.selectOnClick}});var DN=ye((Jir,hhe)=>{"use strict";var IN=xa(),C0=Mr(),Zfe=C0.numberFormat,_ft=id(),xft=kL(),bP=ba(),rhe=C0.strTranslate,bft=Pl(),Xfe=va(),v_=ao(),wft=Nc(),Yfe=Qa(),Tft=Tg(),Aft=gv(),ihe=Sg(),wP=ihe.selectingOrDrawing,Sft=ihe.freeMode,Mft=Nh().FROM_TL,Eft=lM(),kft=gM().redrawReglTraces,Cft=Xu(),CN=af().getFromId,Lft=wf().prepSelect,Pft=wf().clearOutline,Ift=wf().selectOnClick,kN=aN(),RN=ad(),Kfe=RN.MINDRAG,np=RN.MINZOOM,Jfe=!0;function Rft(e,t,r,n,i,a,o,s){var l=e._fullLayout._zoomlayer,u=o+s==="nsew",c=(o+s).length===1,f,h,d,v,x,b,p,E,k,A,L,_,C,M,g,P,T,F,q,V,H,X,G;r+=t.yaxis._shift;function N(){if(f=t.xaxis,h=t.yaxis,k=f._length,A=h._length,p=f._offset,E=h._offset,d={},d[f._id]=f,v={},v[h._id]=h,o&&s)for(var Et=t.overlays,dt=0;dt<Et.length;dt++){var Ht=Et[dt].xaxis;d[Ht._id]=Ht;var $t=Et[dt].yaxis;v[$t._id]=$t}x=the(d),b=the(v),C=$fe(x,s),M=$fe(b,o),g=!M&&!C,_=ehe(e,e._fullLayout._axisMatchGroups,d,v),L=ehe(e,e._fullLayout._axisConstraintGroups,d,v,_);var fr=L.isSubplotConstrained||_.isSubplotConstrained;P=s||fr,T=o||fr;var _r=e._fullLayout;F=_r._has("scattergl"),q=_r._has("splom"),V=_r._has("svg")}N();var W=Fft(M+C,e._fullLayout.dragmode,u),re=ahe(t,o+s+"drag",W,r,n,i,a);if(g&&!u)return re.onmousedown=null,re.style.pointerEvents="none",re;var ae={element:re,gd:e,plotinfo:t};ae.prepFn=function(Et,dt,Ht){var $t=ae.dragmode,fr=e._fullLayout.dragmode;fr!==$t&&(ae.dragmode=fr),N(),X=e._fullLayout._invScaleX,G=e._fullLayout._invScaleY,g||(u?Et.shiftKey?fr==="pan"?fr="zoom":wP(fr)||(fr="pan"):Et.ctrlKey&&(fr="pan"):fr="pan"),Sft(fr)?ae.minDrag=1:ae.minDrag=void 0,wP(fr)?(ae.xaxes=x,ae.yaxes=b,Lft(Et,dt,Ht,ae,fr)):(ae.clickFn=Me,wP($t)&&_e(),g||(fr==="zoom"?(ae.moveFn=Ge,ae.doneFn=ct,ae.minDrag=1,ce(Et,dt,Ht)):fr==="pan"&&(ae.moveFn=Ct,ae.doneFn=Ke))),e._fullLayout._redrag=function(){var _r=e._dragdata;if(_r&&_r.element===re){var Br=e._fullLayout.dragmode;wP(Br)||(N(),xt([0,0,k,A]),ae.moveFn(_r.dx,_r.dy))}}};function _e(){ae.plotinfo.selection=!1,Pft(e)}function Me(Et,dt){var Ht=ae.gd;if(Ht._fullLayout._activeShapeIndex>=0){Ht._fullLayout._deactivateShape(Ht);return}var $t=Ht._fullLayout.clickmode;if(PN(Ht),Et===2&&!c&&er(),u)$t.indexOf("select")>-1&&Ift(dt,Ht,x,b,t.id,ae),$t.indexOf("event")>-1&&wft.click(Ht,dt,t.id);else if(Et===1&&c){var fr=o?h:f,_r=o==="s"||s==="w"?0:1,Br=fr._name+".range["+_r+"]",Or=Dft(fr,_r),Nr="left",ut="middle";if(fr.fixedrange)return;o?(ut=o==="n"?"top":"bottom",fr.side==="right"&&(Nr="right")):s==="e"&&(Nr="right"),Ht._context.showAxisRangeEntryBoxes&&IN.select(re).call(bft.makeEditable,{gd:Ht,immediate:!0,background:Ht._fullLayout.paper_bgcolor,text:String(Or),fill:fr.tickfont?fr.tickfont.color:"#444",horizontalAlign:Nr,verticalAlign:ut}).on("edit",function(Ne){var Ye=fr.d2r(Ne);Ye!==void 0&&bP.call("_guiRelayout",Ht,Br,Ye)})}}Aft.init(ae);var ke,ge,ie,Te,Ee,Ae,ze,Ce,me,Re;function ce(Et,dt,Ht){var $t=re.getBoundingClientRect();ke=dt-$t.left,ge=Ht-$t.top,e._fullLayout._calcInverseTransform(e);var fr=C0.apply3DTransform(e._fullLayout._invTransform)(ke,ge);ke=fr[0],ge=fr[1],ie={l:ke,r:ke,w:0,t:ge,b:ge,h:0},Te=e._hmpixcount?e._hmlumcount/e._hmpixcount:_ft(e._fullLayout.plot_bgcolor).getLuminance(),Ee="M0,0H"+k+"V"+A+"H0V0",Ae=!1,ze="xy",Re=!1,Ce=ohe(l,Te,p,E,Ee),me=she(l,p,E)}function Ge(Et,dt){if(e._transitioningWithDuration)return!1;var Ht=Math.max(0,Math.min(k,X*Et+ke)),$t=Math.max(0,Math.min(A,G*dt+ge)),fr=Math.abs(Ht-ke),_r=Math.abs($t-ge);ie.l=Math.min(ke,Ht),ie.r=Math.max(ke,Ht),ie.t=Math.min(ge,$t),ie.b=Math.max(ge,$t);function Br(){ze="",ie.r=ie.l,ie.t=ie.b,me.attr("d","M0,0Z")}if(L.isSubplotConstrained)fr>np||_r>np?(ze="xy",fr/k>_r/A?(_r=fr*A/k,ge>$t?ie.t=ge-_r:ie.b=ge+_r):(fr=_r*k/A,ke>Ht?ie.l=ke-fr:ie.r=ke+fr),me.attr("d",TP(ie))):Br();else if(_.isSubplotConstrained)if(fr>np||_r>np){ze="xy";var Or=Math.min(ie.l/k,(A-ie.b)/A),Nr=Math.max(ie.r/k,(A-ie.t)/A);ie.l=Or*k,ie.r=Nr*k,ie.b=(1-Or)*A,ie.t=(1-Nr)*A,me.attr("d",TP(ie))}else Br();else!M||_r<Math.min(Math.max(fr*.6,Kfe),np)?fr<Kfe||!C?Br():(ie.t=0,ie.b=A,ze="x",me.attr("d",qft(ie,ge))):!C||fr<Math.min(_r*.6,np)?(ie.l=0,ie.r=k,ze="y",me.attr("d",Oft(ie,ke))):(ze="xy",me.attr("d",TP(ie)));ie.w=ie.r-ie.l,ie.h=ie.b-ie.t,ze&&(Re=!0),e._dragged=Re,lhe(Ce,me,ie,Ee,Ae,Te),nt(),e.emit("plotly_relayouting",H),Ae=!0}function nt(){H={},(ze==="xy"||ze==="x")&&(LN(x,ie.l/k,ie.r/k,H,L.xaxes),Yt("x",H)),(ze==="xy"||ze==="y")&&(LN(b,(A-ie.b)/A,(A-ie.t)/A,H,L.yaxes),Yt("y",H))}function ct(){nt(),PN(e),Ke(),che(e)}var qt=[0,0,k,A],rt=null,ot=RN.REDRAWDELAY,Rt=t.mainplot?e._fullLayout._plots[t.mainplot]:t;function kt(Et){if(!e._context._scrollZoom.cartesian&&!e._fullLayout._enablescrollzoom)return;if(_e(),e._transitioningWithDuration){Et.preventDefault(),Et.stopPropagation();return}N(),clearTimeout(rt);var dt=-Et.deltaY;if(isFinite(dt)||(dt=Et.wheelDelta/10),!isFinite(dt)){C0.log("Did not find wheel motion attributes: ",Et);return}var Ht=Math.exp(-Math.min(Math.max(dt,-20),20)/200),$t=Rt.draglayer.select(".nsewdrag").node().getBoundingClientRect(),fr=(Et.clientX-$t.left)/$t.width,_r=($t.bottom-Et.clientY)/$t.height,Br;function Or(Nr,ut,Ne){if(Nr.fixedrange)return;var Ye=C0.simpleMap(Nr.range,Nr.r2l),Ve=Ye[0]+(Ye[1]-Ye[0])*ut;function Xe(ht){return Nr.l2r(Ve+(ht-Ve)*Ne)}Nr.range=Ye.map(Xe)}if(P){for(s||(fr=.5),Br=0;Br<x.length;Br++)Or(x[Br],fr,Ht);Yt("x"),qt[2]*=Ht,qt[0]+=qt[2]*fr*(1/Ht-1)}if(T){for(o||(_r=.5),Br=0;Br<b.length;Br++)Or(b[Br],_r,Ht);Yt("y"),qt[3]*=Ht,qt[1]+=qt[3]*(1-_r)*(1/Ht-1)}xt(qt),xr(),e.emit("plotly_relayouting",H),rt=setTimeout(function(){e._fullLayout&&(qt=[0,0,k,A],Ke())},ot),Et.preventDefault()}o.length*s.length!==1&&fhe(re,kt);function Ct(Et,dt){if(Et=Et*X,dt=dt*G,e._transitioningWithDuration)return;if(e._fullLayout._replotting=!0,C==="ew"||M==="ns"){var Ht=C?-Et:0,$t=M?-dt:0;if(_.isSubplotConstrained){if(C&&M){var fr=(Et/k-dt/A)/2;Et=fr*k,dt=-fr*A,Ht=-Et,$t=-dt}M?Ht=-$t*k/A:$t=-Ht*A/k}C&&(Qfe(x,Et),Yt("x")),M&&(Qfe(b,dt),Yt("y")),xt([Ht,$t,k,A]),xr(),e.emit("plotly_relayouting",H);return}function _r(Xe,ht,Le){for(var xe=1-ht,Se,lt,Gt=0;Gt<Xe.length;Gt++){var Vt=Xe[Gt];if(!Vt.fixedrange){Se=Vt,lt=Vt._rl[xe]+(Vt._rl[ht]-Vt._rl[xe])/zft(Le/Vt._length);var ar=Vt.l2r(lt);ar!==!1&&ar!==void 0&&(Vt.range[ht]=ar)}}return Se._length*(Se._rl[ht]-lt)/(Se._rl[ht]-Se._rl[xe])}var Br=C==="w"==(M==="n")?1:-1;if(C&&M&&(L.isSubplotConstrained||_.isSubplotConstrained)){var Or=(Et/k+Br*dt/A)/2;Et=Or*k,dt=Br*Or*A}var Nr,ut;if(C==="w"?Et=_r(x,0,Et):C==="e"?Et=_r(x,1,-Et):C||(Et=0),M==="n"?dt=_r(b,1,dt):M==="s"?dt=_r(b,0,-dt):M||(dt=0),Nr=C==="w"?Et:0,ut=M==="n"?dt:0,L.isSubplotConstrained&&!_.isSubplotConstrained||_.isSubplotConstrained&&C&&M&&Br>0){var Ne;if(_.isSubplotConstrained||!C&&M.length===1){for(Ne=0;Ne<x.length;Ne++)x[Ne].range=x[Ne]._r.slice(),kN(x[Ne],1-dt/A);Et=dt*k/A,Nr=Et/2}if(_.isSubplotConstrained||!M&&C.length===1){for(Ne=0;Ne<b.length;Ne++)b[Ne].range=b[Ne]._r.slice(),kN(b[Ne],1-Et/k);dt=Et*A/k,ut=dt/2}}(!_.isSubplotConstrained||!M)&&Yt("x"),(!_.isSubplotConstrained||!C)&&Yt("y");var Ye=k-Et,Ve=A-dt;_.isSubplotConstrained&&!(C&&M)&&(C?(ut=Nr?0:Et*A/k,Ve=Ye*A/k):(Nr=ut?0:dt*k/A,Ye=Ve*k/A)),xt([Nr,ut,Ye,Ve]),xr(),e.emit("plotly_relayouting",H)}function Yt(Et,dt){for(var Ht=_.isSubplotConstrained?{x:b,y:x}[Et]:_[Et+"axes"],$t=_.isSubplotConstrained?{x,y:b}[Et]:[],fr=0;fr<Ht.length;fr++){var _r=Ht[fr],Br=_r._id,Or=_.xLinks[Br]||_.yLinks[Br],Nr=$t[0]||d[Or]||v[Or];Nr&&(dt?(dt[_r._name+".range[0]"]=dt[Nr._name+".range[0]"],dt[_r._name+".range[1]"]=dt[Nr._name+".range[1]"]):_r.range=Nr.range.slice())}}function xr(){var Et=[],dt;function Ht(Br){for(dt=0;dt<Br.length;dt++)Br[dt].fixedrange||Et.push(Br[dt]._id)}function $t(Br,Or){for(dt=0;dt<Br.length;dt++){var Nr=Br[dt],ut=Nr[Or];!Nr.fixedrange&&ut.tickmode==="sync"&&Et.push(ut._id)}}for(P&&(Ht(x),Ht(L.xaxes),Ht(_.xaxes),$t(t.overlays,"xaxis")),T&&(Ht(b),Ht(L.yaxes),Ht(_.yaxes),$t(t.overlays,"yaxis")),H={},dt=0;dt<Et.length;dt++){var fr=Et[dt],_r=CN(e,fr);Yfe.drawOne(e,_r,{skipTitle:!0}),H[_r._name+".range[0]"]=_r.range[0],H[_r._name+".range[1]"]=_r.range[1]}Yfe.redrawComponents(e,Et)}function er(){if(!e._transitioningWithDuration){var Et=e._context.doubleClick,dt=[];C&&(dt=dt.concat(x)),M&&(dt=dt.concat(b)),_.xaxes&&(dt=dt.concat(_.xaxes)),_.yaxes&&(dt=dt.concat(_.yaxes));var Ht={},$t,fr;if(Et==="reset+autosize")for(Et="autosize",fr=0;fr<dt.length;fr++){$t=dt[fr];var _r=$t._rangeInitial0,Br=$t._rangeInitial1,Or=_r!==void 0||Br!==void 0;if(Or&&(_r!==void 0&&_r!==$t.range[0]||Br!==void 0&&Br!==$t.range[1])||!Or&&$t.autorange!==!0){Et="reset";break}}if(Et==="autosize")for(fr=0;fr<dt.length;fr++)$t=dt[fr],$t.fixedrange||(Ht[$t._name+".autorange"]=!0);else if(Et==="reset"){for((C||L.isSubplotConstrained)&&(dt=dt.concat(L.xaxes)),M&&!L.isSubplotConstrained&&(dt=dt.concat(L.yaxes)),L.isSubplotConstrained&&(C?M||(dt=dt.concat(b)):dt=dt.concat(x)),fr=0;fr<dt.length;fr++)if($t=dt[fr],!$t.fixedrange){var Nr=$t._name,ut=$t._autorangeInitial;$t._rangeInitial0===void 0&&$t._rangeInitial1===void 0?Ht[Nr+".autorange"]=!0:$t._rangeInitial0===void 0?(Ht[Nr+".autorange"]=ut,Ht[Nr+".range"]=[null,$t._rangeInitial1]):$t._rangeInitial1===void 0?(Ht[Nr+".range"]=[$t._rangeInitial0,null],Ht[Nr+".autorange"]=ut):Ht[Nr+".range"]=[$t._rangeInitial0,$t._rangeInitial1]}}e.emit("plotly_doubleclick",null),bP.call("_guiRelayout",e,Ht)}}function Ke(){xt([0,0,k,A]),C0.syncOrAsync([Cft.previousPromises,function(){e._fullLayout._replotting=!1,bP.call("_guiRelayout",e,H)}],e)}function xt(Et){var dt=e._fullLayout,Ht=dt._plots,$t=dt._subplots.cartesian,fr,_r,Br,Or;if(q&&bP.subplotsRegistry.splom.drag(e),F){for(fr=0;fr<$t.length;fr++)if(_r=Ht[$t[fr]],Br=_r.xaxis,Or=_r.yaxis,_r._scene){Br.limitRange&&Br.limitRange(),Or.limitRange&&Or.limitRange();var Nr=C0.simpleMap(Br.range,Br.r2l),ut=C0.simpleMap(Or.range,Or.r2l);_r._scene.update({range:[Nr[0],ut[0],Nr[1],ut[1]]})}}if((q||F)&&(Eft(e),kft(e)),V){var Ne=Et[2]/f._length,Ye=Et[3]/h._length;for(fr=0;fr<$t.length;fr++){_r=Ht[$t[fr]],Br=_r.xaxis,Or=_r.yaxis;var Ve=(P||_.isSubplotConstrained)&&!Br.fixedrange&&d[Br._id],Xe=(T||_.isSubplotConstrained)&&!Or.fixedrange&&v[Or._id],ht,Le,xe,Se;if(Ve?(ht=Ne,xe=s||_.isSubplotConstrained?Et[0]:St(Br,ht)):_.xaHash[Br._id]?(ht=Ne,xe=Et[0]*Br._length/f._length):_.yaHash[Br._id]?(ht=Ye,xe=M==="ns"?-Et[1]*Br._length/h._length:St(Br,ht,{n:"top",s:"bottom"}[M])):(ht=bt(Br,Ne,Ye),xe=Lt(Br,ht)),ht>1&&(Br.maxallowed!==void 0&&P===(Br.range[0]<Br.range[1]?"e":"w")||Br.minallowed!==void 0&&P===(Br.range[0]<Br.range[1]?"w":"e"))&&(ht=1,xe=0),Xe?(Le=Ye,Se=o||_.isSubplotConstrained?Et[1]:St(Or,Le)):_.yaHash[Or._id]?(Le=Ye,Se=Et[1]*Or._length/h._length):_.xaHash[Or._id]?(Le=Ne,Se=C==="ew"?-Et[0]*Or._length/f._length:St(Or,Le,{e:"right",w:"left"}[C])):(Le=bt(Or,Ne,Ye),Se=Lt(Or,Le)),Le>1&&(Or.maxallowed!==void 0&&T===(Or.range[0]<Or.range[1]?"n":"s")||Or.minallowed!==void 0&&T===(Or.range[0]<Or.range[1]?"s":"n"))&&(Le=1,Se=0),!(!ht&&!Le)){ht||(ht=1),Le||(Le=1);var lt=Br._offset-xe/ht,Gt=Or._offset-Se/Le;_r.clipRect.call(v_.setTranslate,xe,Se).call(v_.setScale,ht,Le),_r.plot.call(v_.setTranslate,lt,Gt).call(v_.setScale,1/ht,1/Le),(ht!==_r.xScaleFactor||Le!==_r.yScaleFactor)&&(v_.setPointGroupScale(_r.zoomScalePts,ht,Le),v_.setTextPointsScale(_r.zoomScaleTxt,ht,Le)),v_.hideOutsideRangePoints(_r.clipOnAxisFalseTraces,_r),_r.xScaleFactor=ht,_r.yScaleFactor=Le}}}}function bt(Et,dt,Ht){return Et.fixedrange?0:P&&L.xaHash[Et._id]?dt:T&&(L.isSubplotConstrained?L.xaHash:L.yaHash)[Et._id]?Ht:0}function Lt(Et,dt){return dt?(Et.range=Et._r.slice(),kN(Et,dt),St(Et,dt)):0}function St(Et,dt,Ht){return Et._length*(1-dt)*Mft[Ht||Et.constraintoward||"middle"]}return re}function nhe(e,t,r,n){var i=C0.ensureSingle(e.draglayer,t,r,function(a){a.classed("drag",!0).style({fill:"transparent","stroke-width":0}).attr("data-subplot",e.id)});return i.call(Tft,n),i.node()}function ahe(e,t,r,n,i,a,o){var s=nhe(e,"rect",t,r);return IN.select(s).call(v_.setRect,n,i,a,o),s}function $fe(e,t){for(var r=0;r<e.length;r++)if(!e[r].fixedrange)return t;return""}function Dft(e,t){var r=e.range[t],n=Math.abs(r-e.range[1-t]),i;return e.type==="date"?r:e.type==="log"?(i=Math.ceil(Math.max(0,-Math.log(n)/Math.LN10))+3,Zfe("."+i+"g")(Math.pow(10,r))):(i=Math.floor(Math.log(Math.abs(r))/Math.LN10)-Math.floor(Math.log(n)/Math.LN10)+4,Zfe("."+String(i)+"g")(r))}function LN(e,t,r,n,i){for(var a=0;a<e.length;a++){var o=e[a];if(!o.fixedrange)if(o.rangebreaks){var s=o._id.charAt(0)==="y",l=s?1-t:t,u=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(u*o._length))}else{var c=o._rl[0],f=o._rl[1]-c;n[o._name+".range[0]"]=o.l2r(c+f*t),n[o._name+".range[1]"]=o.l2r(c+f*r)}}if(i&&i.length){var h=(t+(1-r))/2;LN(i,h,1-h,n,[])}}function Qfe(e,t){for(var r=0;r<e.length;r++){var n=e[r];if(!n.fixedrange){if(n.rangebreaks){var i=0,a=n._length,o=n.p2l(i+t)-n.p2l(i),s=n.p2l(a+t)-n.p2l(a),l=(o+s)/2;n.range=[n.l2r(n._rl[0]-l),n.l2r(n._rl[1]-l)]}else n.range=[n.l2r(n._rl[0]-t/n._m),n.l2r(n._rl[1]-t/n._m)];n.limitRange&&n.limitRange()}}}function zft(e){return 1-(e>=0?Math.min(e,.9):1/(1/Math.max(e,-.3)+3.222))}function Fft(e,t,r){return e?e==="nsew"?r?"":t==="pan"?"move":"crosshair":e.toLowerCase()+"-resize":"pointer"}function ohe(e,t,r,n,i){return e.append("path").attr("class","zoombox").style({fill:t>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",rhe(r,n)).attr("d",i+"Z")}function she(e,t,r){return e.append("path").attr("class","zoombox-corners").style({fill:Xfe.background,stroke:Xfe.defaultLine,"stroke-width":1,opacity:0}).attr("transform",rhe(t,r)).attr("d","M0,0Z")}function lhe(e,t,r,n,i,a){e.attr("d",n+"M"+r.l+","+r.t+"v"+r.h+"h"+r.w+"v-"+r.h+"h-"+r.w+"Z"),uhe(e,t,i,a)}function uhe(e,t,r,n){r||(e.transition().style("fill",n>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),t.transition().style("opacity",1).duration(200))}function PN(e){IN.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function che(e){Jfe&&e.data&&e._context.showTips&&(C0.notifier(C0._(e,"Double-click to zoom back out"),"long"),Jfe=!1)}function qft(e,t){return"M"+(e.l-.5)+","+(t-np-.5)+"h-3v"+(2*np+1)+"h3ZM"+(e.r+.5)+","+(t-np-.5)+"h3v"+(2*np+1)+"h-3Z"}function Oft(e,t){return"M"+(t-np-.5)+","+(e.t-.5)+"v-3h"+(2*np+1)+"v3ZM"+(t-np-.5)+","+(e.b+.5)+"v3h"+(2*np+1)+"v-3Z"}function TP(e){var t=Math.floor(Math.min(e.b-e.t,e.r-e.l,np)/2);return"M"+(e.l-3.5)+","+(e.t-.5+t)+"h3v"+-t+"h"+t+"v-3h-"+(t+3)+"ZM"+(e.r+3.5)+","+(e.t-.5+t)+"h-3v"+-t+"h"+-t+"v-3h"+(t+3)+"ZM"+(e.r+3.5)+","+(e.b+.5-t)+"h-3v"+t+"h"+-t+"v3h"+(t+3)+"ZM"+(e.l-3.5)+","+(e.b+.5-t)+"h3v"+t+"h"+t+"v3h-"+(t+3)+"Z"}function ehe(e,t,r,n,i){for(var a=!1,o={},s={},l,u,c,f,h=(i||{}).xaHash,d=(i||{}).yaHash,v=0;v<t.length;v++){var x=t[v];for(l in r)if(x[l]){for(c in x)!(i&&(h[c]||d[c]))&&!(c.charAt(0)==="x"?r:n)[c]&&(o[c]=l);for(u in n)!(i&&(h[u]||d[u]))&&x[u]&&(a=!0)}for(u in n)if(x[u])for(f in x)!(i&&(h[f]||d[f]))&&!(f.charAt(0)==="x"?r:n)[f]&&(s[f]=u)}a&&(C0.extendFlat(o,s),s={});var b={},p=[];for(c in o){var E=CN(e,c);p.push(E),b[E._id]=E}var k={},A=[];for(f in s){var L=CN(e,f);A.push(L),k[L._id]=L}return{xaHash:b,yaHash:k,xaxes:p,yaxes:A,xLinks:o,yLinks:s,isSubplotConstrained:a}}function fhe(e,t){if(!xft)e.onwheel!==void 0?e.onwheel=t:e.onmousewheel!==void 0?e.onmousewheel=t:e.isAddedWheelEvent||(e.isAddedWheelEvent=!0,e.addEventListener("wheel",t,{passive:!1}));else{var r=e.onwheel!==void 0?"wheel":"mousewheel";e._onwheel&&e.removeEventListener(r,e._onwheel),e._onwheel=t,e.addEventListener(r,t,{passive:!1})}}function the(e){var t=[];for(var r in e)t.push(e[r]);return t}hhe.exports={makeDragBox:Rft,makeDragger:nhe,makeRectDragger:ahe,makeZoombox:ohe,makeCorners:she,updateZoombox:lhe,xyCorners:TP,transitionZoombox:uhe,removeZoombox:PN,showDoubleClickNotifier:che,attachWheelEventHandler:fhe}});var zN=ye(SP=>{"use strict";var Bft=xa(),AP=Nc(),Nft=gv(),Uft=Tg(),kg=DN().makeDragBox,ud=ad().DRAGGERSIZE;SP.initInteractions=function(t){var r=t._fullLayout;if(t._context.staticPlot){Bft.select(t).selectAll(".drag").remove();return}if(!(!r._has("cartesian")&&!r._has("splom"))){var n=Object.keys(r._plots||{}).sort(function(a,o){if((r._plots[a].mainplot&&!0)===(r._plots[o].mainplot&&!0)){var s=a.split("y"),l=o.split("y");return s[0]===l[0]?Number(s[1]||1)-Number(l[1]||1):Number(s[0]||1)-Number(l[0]||1)}return r._plots[a].mainplot?1:-1});n.forEach(function(a){var o=r._plots[a],s=o.xaxis,l=o.yaxis;if(!o.mainplot){var u=kg(t,o,s._offset,l._offset,s._length,l._length,"ns","ew");u.onmousemove=function(h){t._fullLayout._rehover=function(){t._fullLayout._hoversubplot===a&&t._fullLayout._plots[a]&&AP.hover(t,h,a)},AP.hover(t,h,a),t._fullLayout._lasthover=u,t._fullLayout._hoversubplot=a},u.onmouseout=function(h){t._dragging||(t._fullLayout._hoversubplot=null,Nft.unhover(t,h))},t._context.showAxisDragHandles&&(kg(t,o,s._offset-ud,l._offset-ud,ud,ud,"n","w"),kg(t,o,s._offset+s._length,l._offset-ud,ud,ud,"n","e"),kg(t,o,s._offset-ud,l._offset+l._length,ud,ud,"s","w"),kg(t,o,s._offset+s._length,l._offset+l._length,ud,ud,"s","e"))}if(t._context.showAxisDragHandles){if(a===s._mainSubplot){var c=s._mainLinePosition;s.side==="top"&&(c-=ud),kg(t,o,s._offset+s._length*.1,c,s._length*.8,ud,"","ew"),kg(t,o,s._offset,c,s._length*.1,ud,"","w"),kg(t,o,s._offset+s._length*.9,c,s._length*.1,ud,"","e")}if(a===l._mainSubplot){var f=l._mainLinePosition;l.side!=="right"&&(f-=ud),kg(t,o,f,l._offset+l._length*.1,ud,l._length*.8,"ns",""),kg(t,o,f,l._offset+l._length*.9,ud,l._length*.1,"s",""),kg(t,o,f,l._offset,ud,l._length*.1,"n","")}}});var i=r._hoverlayer.node();i.onmousemove=function(a){a.target=t._fullLayout._lasthover,AP.hover(t,a,r._hoversubplot)},i.onclick=function(a){a.target=t._fullLayout._lasthover,AP.click(t,a)},i.onmousedown=function(a){t._fullLayout._lasthover.onmousedown(a)},SP.updateFx(t)}};SP.updateFx=function(e){var t=e._fullLayout,r=t.dragmode==="pan"?"move":"crosshair";Uft(t._draggers,r)}});var phe=ye((Qir,vhe)=>{"use strict";var dhe=ba();vhe.exports=function(t){for(var r=dhe.layoutArrayContainers,n=dhe.layoutArrayRegexes,i=t.split("[")[0],a,o,s=0;s<n.length;s++)if(o=t.match(n[s]),o&&o.index===0){a=o[0];break}if(a||(a=r[r.indexOf(i)]),!a)return!1;var l=t.substr(a.length);return l?(o=l.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/),o?{array:a,index:Number(o[1]),property:o[3]||""}:!1):{array:a,index:"",property:""}}});var mhe=ye(zM=>{"use strict";var Vft=gy(),FN=g6(),DM=G1(),Hft=k6().sorterAsc,qN=ba();zM.containerArrayMatch=phe();var Gft=zM.isAddVal=function(t){return t==="add"||Vft(t)},ghe=zM.isRemoveVal=function(t){return t===null||t==="remove"};zM.applyContainerArrayChanges=function(t,r,n,i,a){var o=r.astr,s=qN.getComponentMethod(o,"supplyLayoutDefaults"),l=qN.getComponentMethod(o,"draw"),u=qN.getComponentMethod(o,"drawOne"),c=i.replot||i.recalc||s===FN||l===FN,f=t.layout,h=t._fullLayout;if(n[""]){Object.keys(n).length>1&&DM.warn("Full array edits are incompatible with other edits",o);var d=n[""][""];if(ghe(d))r.set(null);else if(Array.isArray(d))r.set(d);else return DM.warn("Unrecognized full array edit value",o,d),!0;return c?!1:(s(f,h),l(t),!0)}var v=Object.keys(n).map(Number).sort(Hft),x=r.get(),b=x||[],p=a(h,o).get(),E=[],k=-1,A=b.length,L,_,C,M,g,P,T,F;for(L=0;L<v.length;L++){if(C=v[L],M=n[C],g=Object.keys(M),P=M[""],T=Gft(P),C<0||C>b.length-(T?0:1)){DM.warn("index out of range",o,C);continue}if(P!==void 0)g.length>1&&DM.warn("Insertion & removal are incompatible with edits to the same index.",o,C),ghe(P)?E.push(C):T?(P==="add"&&(P={}),b.splice(C,0,P),p&&p.splice(C,0,{})):DM.warn("Unrecognized full object edit value",o,C,P),k===-1&&(k=C);else for(_=0;_<g.length;_++)F=o+"["+C+"].",a(b[C],g[_],F).set(M[g[_]])}for(L=E.length-1;L>=0;L--)b.splice(E[L],1),p&&p.splice(E[L],1);if(b.length?x||r.set(b):r.set(null),c)return!1;if(s(f,h),u!==FN){var q;if(k===-1)q=v;else{for(A=Math.max(b.length,A),q=[],L=0;L<v.length&&(C=v[L],!(C>=k));L++)q.push(C);for(L=k;L<A;L++)q.push(L)}for(L=0;L<q.length;L++)u(t,q[L])}else l(t);return!0}});var She=ye(Cg=>{"use strict";var bhe=uo(),tnr=Lq(),whe=ba(),kp=Mr(),FM=Xu(),The=af(),Ahe=va(),qM=The.cleanId,jft=The.getFromTrace,ON=whe.traceIs;Cg.clearPromiseQueue=function(e){Array.isArray(e._promises)&&e._promises.length>0&&kp.log("Clearing previous rejected promises from queue."),e._promises=[]};Cg.cleanLayout=function(e){var t,r;e||(e={}),e.xaxis1&&(e.xaxis||(e.xaxis=e.xaxis1),delete e.xaxis1),e.yaxis1&&(e.yaxis||(e.yaxis=e.yaxis1),delete e.yaxis1),e.scene1&&(e.scene||(e.scene=e.scene1),delete e.scene1);var n=(FM.subplotsRegistry.cartesian||{}).attrRegex,i=(FM.subplotsRegistry.polar||{}).attrRegex,a=(FM.subplotsRegistry.ternary||{}).attrRegex,o=(FM.subplotsRegistry.gl3d||{}).attrRegex,s=Object.keys(e);for(t=0;t<s.length;t++){var l=s[t];if(n&&n.test(l)){var u=e[l];u.anchor&&u.anchor!=="free"&&(u.anchor=qM(u.anchor)),u.overlaying&&(u.overlaying=qM(u.overlaying)),u.type||(u.isdate?u.type="date":u.islog?u.type="log":u.isdate===!1&&u.islog===!1&&(u.type="linear")),(u.autorange==="withzero"||u.autorange==="tozero")&&(u.autorange=!0,u.rangemode="tozero"),u.insiderange&&delete u.range,delete u.islog,delete u.isdate,delete u.categories,MP(u,"domain")&&delete u.domain}}var c=Array.isArray(e.annotations)?e.annotations.length:0;for(t=0;t<c;t++){var f=e.annotations[t];kp.isPlainObject(f)&&(Y3(f,"xref"),Y3(f,"yref"))}var h=Array.isArray(e.shapes)?e.shapes.length:0;for(t=0;t<h;t++){var d=e.shapes[t];kp.isPlainObject(d)&&(Y3(d,"xref"),Y3(d,"yref"))}var v=Array.isArray(e.images)?e.images.length:0;for(t=0;t<v;t++){var x=e.images[t];kp.isPlainObject(x)&&(Y3(x,"xref"),Y3(x,"yref"))}var b=e.legend;return b&&(b.x>3?(b.x=1.02,b.xanchor="left"):b.x<-2&&(b.x=-.02,b.xanchor="right"),b.y>3?(b.y=1.02,b.yanchor="bottom"):b.y<-2&&(b.y=-.02,b.yanchor="top")),e.dragmode==="rotate"&&(e.dragmode="orbit"),Ahe.clean(e),e.template&&e.template.layout&&Cg.cleanLayout(e.template.layout),e};function Y3(e,t){var r=e[t],n=t.charAt(0);r&&r!=="paper"&&(e[t]=qM(r,n,!0))}Cg.cleanData=function(e){for(var t=0;t<e.length;t++){var r=e[t],n;if(r.type==="histogramy"&&"xbins"in r&&!("ybins"in r)&&(r.ybins=r.xbins,delete r.xbins),r.type==="histogramy"&&Cg.swapXYData(r),(r.type==="histogramx"||r.type==="histogramy")&&(r.type="histogram"),"scl"in r&&!("colorscale"in r)&&(r.colorscale=r.scl,delete r.scl),"reversescl"in r&&!("reversescale"in r)&&(r.reversescale=r.reversescl,delete r.reversescl),r.xaxis&&(r.xaxis=qM(r.xaxis,"x")),r.yaxis&&(r.yaxis=qM(r.yaxis,"y")),ON(r,"gl3d")&&r.scene&&(r.scene=FM.subplotsRegistry.gl3d.cleanId(r.scene)),!ON(r,"pie-like")&&!ON(r,"bar-like"))if(Array.isArray(r.textposition))for(n=0;n<r.textposition.length;n++)r.textposition[n]=_he(r.textposition[n]);else r.textposition&&(r.textposition=_he(r.textposition));var i=whe.getModule(r);if(i&&i.colorbar){var a=i.colorbar.container,o=a?r[a]:r;o&&o.colorscale&&(o.colorscale==="YIGnBu"&&(o.colorscale="YlGnBu"),o.colorscale==="YIOrRd"&&(o.colorscale="YlOrRd"))}if(r.type==="surface"&&kp.isPlainObject(r.contours)){var s=["x","y","z"];for(n=0;n<s.length;n++){var l=r.contours[s[n]];kp.isPlainObject(l)&&(l.highlightColor&&(l.highlightcolor=l.highlightColor,delete l.highlightColor),l.highlightWidth&&(l.highlightwidth=l.highlightWidth,delete l.highlightWidth))}}if(r.type==="candlestick"||r.type==="ohlc"){var u=(r.increasing||{}).showlegend!==!1,c=(r.decreasing||{}).showlegend!==!1,f=yhe(r.increasing),h=yhe(r.decreasing);if(f!==!1&&h!==!1){var d=Wft(f,h,u,c);d&&(r.name=d)}else(f||h)&&!r.name&&(r.name=f||h)}MP(r,"line")&&delete r.line,"marker"in r&&(MP(r.marker,"line")&&delete r.marker.line,MP(r,"marker")&&delete r.marker),Ahe.clean(r),r.autobinx&&(delete r.autobinx,delete r.xbins),r.autobiny&&(delete r.autobiny,delete r.ybins)}};function yhe(e){if(!kp.isPlainObject(e))return!1;var t=e.name;return delete e.name,delete e.showlegend,(typeof t=="string"||typeof t=="number")&&String(t)}function Wft(e,t,r,n){if(r&&!n)return e;if(n&&!r||!e.trim())return t;if(!t.trim())return e;var i=Math.min(e.length,t.length),a;for(a=0;a<i&&e.charAt(a)===t.charAt(a);a++);var o=e.substr(0,a);return o.trim()}function _he(e){var t="middle",r="center";return typeof e=="string"&&(e.indexOf("top")!==-1?t="top":e.indexOf("bottom")!==-1&&(t="bottom"),e.indexOf("left")!==-1?r="left":e.indexOf("right")!==-1&&(r="right")),t+" "+r}function MP(e,t){return t in e&&typeof e[t]=="object"&&Object.keys(e[t]).length===0}Cg.swapXYData=function(e){var t;if(kp.swapAttrs(e,["?","?0","d?","?bins","nbins?","autobin?","?src","error_?"]),Array.isArray(e.z)&&Array.isArray(e.z[0])&&(e.transpose?delete e.transpose:e.transpose=!0),e.error_x&&e.error_y){var r=e.error_y,n="copy_ystyle"in r?r.copy_ystyle:!(r.color||r.thickness||r.width);kp.swapAttrs(e,["error_?.copy_ystyle"]),n&&kp.swapAttrs(e,["error_?.color","error_?.thickness","error_?.width"])}if(typeof e.hoverinfo=="string"){var i=e.hoverinfo.split("+");for(t=0;t<i.length;t++)i[t]==="x"?i[t]="y":i[t]==="y"&&(i[t]="x");e.hoverinfo=i.join("+")}};Cg.coerceTraceIndices=function(e,t){if(bhe(t))return[t];if(!Array.isArray(t)||!t.length)return e.data.map(function(i,a){return a});if(Array.isArray(t)){for(var r=[],n=0;n<t.length;n++)kp.isIndex(t[n],e.data.length)?r.push(t[n]):kp.warn("trace index (",t[n],") is not a number or is out of bounds");return r}return t};Cg.manageArrayContainers=function(e,t,r){var n=e.obj,i=e.parts,a=i.length,o=i[a-1],s=bhe(o);if(s&&t===null){var l=i.slice(0,a-1).join("."),u=kp.nestedProperty(n,l).get();u.splice(o,1)}else s&&e.get()===void 0&&e.get()===void 0&&(r[e.astr]=null),e.set(t)};var Zft=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function xhe(e){var t=e.search(Zft);if(t>0)return e.substr(0,t)}Cg.hasParent=function(e,t){for(var r=xhe(t);r;){if(r in e)return!0;r=xhe(r)}return!1};var Xft=["x","y","z"];Cg.clearAxisTypes=function(e,t,r){for(var n=0;n<t.length;n++)for(var i=e._fullData[n],a=0;a<3;a++){var o=jft(e,i,Xft[a]);if(o&&o.type!=="log"){var s=o._name,l=o._id.substr(1);if(l.substr(0,5)==="scene"){if(r[l]!==void 0)continue;s=l+"."+s}var u=s+".type";r[s]===void 0&&r[u]===void 0&&kp.nestedProperty(e.layout,u).set(null)}}}});var OP=ye(pl=>{"use strict";var CP=xa(),Yft=uo(),Kft=$q(),sa=Mr(),Yu=sa.nestedProperty,UN=g3(),ap=lne(),L0=ba(),FP=_3(),Ho=Xu(),Nv=Qa(),Jft=dB(),$ft=Cd(),BN=ao(),Qft=va(),eht=zN().initInteractions,tht=Zp(),rht=wf().clearOutline,Lhe=ub().dfltConfig,EP=mhe(),yh=She(),$l=gM(),p_=Bu(),iht=ad().AX_NAME_PATTERN,NN=0,Mhe=5;function nht(e,t,r,n){var i;if(e=sa.getGraphDiv(e),UN.init(e),sa.isPlainObject(t)){var a=t;t=a.data,r=a.layout,n=a.config,i=a.frames}var o=UN.triggerHandler(e,"plotly_beforeplot",[t,r,n]);if(o===!1)return Promise.reject();!t&&!r&&!sa.isPlotDiv(e)&&sa.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",e);function s(){if(i)return pl.addFrames(e,i)}Ihe(e,n),r||(r={}),CP.select(e).classed("js-plotly-plot",!0),BN.makeTester(),Array.isArray(e._promises)||(e._promises=[]);var l=(e.data||[]).length===0&&Array.isArray(t);Array.isArray(t)&&(yh.cleanData(t),l?e.data=t:e.data.push.apply(e.data,t),e.empty=!1),(!e.layout||l)&&(e.layout=yh.cleanLayout(r)),Ho.supplyDefaults(e);var u=e._fullLayout,c=u._has("cartesian");u._replotting=!0,(l||u._shouldCreateBgLayer)&&(Eht(e),u._shouldCreateBgLayer&&delete u._shouldCreateBgLayer),BN.initGradients(e),BN.initPatterns(e),l&&Nv.saveShowSpikeInitial(e);var f=!e.calcdata||e.calcdata.length!==(e._fullData||[]).length;f&&Ho.doCalcdata(e);for(var h=0;h<e.calcdata.length;h++)e.calcdata[h][0].trace=e._fullData[h];e._context.responsive?e._responsiveChartHandler||(e._responsiveChartHandler=function(){sa.isHidden(e)||Ho.resize(e)},window.addEventListener("resize",e._responsiveChartHandler)):sa.clearResponsive(e);var d=sa.extendFlat({},u._size),v=0;function x(){for(var C=u._basePlotModules,M=0;M<C.length;M++)C[M].drawFramework&&C[M].drawFramework(e);!u._glcanvas&&u._has("gl")&&(u._glcanvas=u._glcontainer.selectAll(".gl-canvas").data([{key:"contextLayer",context:!0,pick:!1},{key:"focusLayer",context:!1,pick:!1},{key:"pickLayer",context:!1,pick:!0}],function(F){return F.key}),u._glcanvas.enter().append("canvas").attr("class",function(F){return"gl-canvas gl-canvas-"+F.key.replace("Layer","")}).style({position:"absolute",top:0,left:0,overflow:"visible","pointer-events":"none"}));var g=e._context.plotGlPixelRatio;if(u._glcanvas){u._glcanvas.attr("width",u.width*g).attr("height",u.height*g).style("width",u.width+"px").style("height",u.height+"px");var P=u._glcanvas.data()[0].regl;if(P&&(Math.floor(u.width*g)!==P._gl.drawingBufferWidth||Math.floor(u.height*g)!==P._gl.drawingBufferHeight)){var T="WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.";if(v)sa.error(T);else return sa.log(T+" Clearing graph and plotting again."),Ho.cleanPlot([],{},e._fullData,u),Ho.supplyDefaults(e),u=e._fullLayout,Ho.doCalcdata(e),v++,x()}}return u.modebar.orientation==="h"?u._modebardiv.style("height",null).style("width","100%"):u._modebardiv.style("width",null).style("height",u.height+"px"),Ho.previousPromises(e)}function b(){if(Ho.clearAutoMarginIds(e),$l.drawMarginPushers(e),Nv.allowAutoMargin(e),e._fullLayout.title.text&&e._fullLayout.title.automargin&&Ho.allowAutoMargin(e,"title.automargin"),u._has("pie"))for(var C=e._fullData,M=0;M<C.length;M++){var g=C[M];g.type==="pie"&&g.automargin&&Ho.allowAutoMargin(e,"pie."+g.uid+".automargin")}return Ho.doAutoMargin(e),Ho.previousPromises(e)}function p(){if(Ho.didMarginChange(d,u._size))return sa.syncOrAsync([b,$l.layoutStyles],e)}function E(){if(!f){k();return}return sa.syncOrAsync([L0.getComponentMethod("shapes","calcAutorange"),L0.getComponentMethod("annotations","calcAutorange"),k],e)}function k(){e._transitioning||($l.doAutoRangeAndConstraints(e),l&&Nv.saveRangeInitial(e),L0.getComponentMethod("rangeslider","calcAutorange")(e))}function A(){return Nv.draw(e,l?"":"redraw")}var L=[Ho.previousPromises,s,x,b,p];c&&L.push(E),L.push($l.layoutStyles),c&&L.push(A,function(M){var g=M._fullLayout._insideTickLabelsUpdaterange;if(g)return M._fullLayout._insideTickLabelsUpdaterange=void 0,OM(M,g).then(function(){Nv.saveRangeInitial(M,!0)})}),L.push($l.drawData,$l.finalDraw,eht,Ho.addLinks,Ho.rehover,Ho.redrag,Ho.reselect,Ho.doAutoMargin,Ho.previousPromises);var _=sa.syncOrAsync(L,e);return(!_||!_.then)&&(_=Promise.resolve()),_.then(function(){return BM(e),e})}function BM(e){var t=e._fullLayout;t._redrawFromAutoMarginCount?t._redrawFromAutoMarginCount--:e.emit("plotly_afterplot")}function aht(e){return sa.extendFlat(Lhe,e)}function Phe(e,t){try{e._fullLayout._paper.style("background",t)}catch(r){sa.error(r)}}function oht(e,t){var r=Qft.combine(t,"white");Phe(e,r)}function Ihe(e,t){if(!e._context){e._context=sa.extendDeep({},Lhe);var r=CP.select("base");e._context._baseUrl=r.size()&&r.attr("href")?window.location.href.split("#")[0]:""}var n=e._context,i,a,o;if(t){for(a=Object.keys(t),i=0;i<a.length;i++)o=a[i],!(o==="editable"||o==="edits")&&o in n&&(o==="setBackground"&&t[o]==="opaque"?n[o]=oht:n[o]=t[o]);var s=t.editable;if(s!==void 0)for(n.editable=s,a=Object.keys(n.edits),i=0;i<a.length;i++)n.edits[a[i]]=s;if(t.edits)for(a=Object.keys(t.edits),i=0;i<a.length;i++)o=a[i],o in n.edits&&(n.edits[o]=t.edits[o]);n._exportedPlot=t._exportedPlot}n.staticPlot&&(n.editable=!1,n.edits={},n.autosizable=!1,n.scrollZoom=!1,n.doubleClick=!1,n.showTips=!1,n.showLink=!1,n.displayModeBar=!1),n.displayModeBar==="hover"&&!Kft&&(n.displayModeBar=!0),(n.setBackground==="transparent"||typeof n.setBackground!="function")&&(n.setBackground=Phe),n._hasZeroHeight=n._hasZeroHeight||e.clientHeight===0,n._hasZeroWidth=n._hasZeroWidth||e.clientWidth===0;var l=n.scrollZoom,u=n._scrollZoom={};if(l===!0)u.cartesian=1,u.gl3d=1,u.geo=1,u.mapbox=1,u.map=1;else if(typeof l=="string"){var c=l.split("+");for(i=0;i<c.length;i++)u[c[i]]=1}else l!==!1&&(u.gl3d=1,u.geo=1,u.mapbox=1,u.map=1)}function sht(e){if(e=sa.getGraphDiv(e),!sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e);return yh.cleanData(e.data),yh.cleanLayout(e.layout),e.calcdata=void 0,pl._doPlot(e).then(function(){return e.emit("plotly_redraw"),e})}function lht(e,t,r,n){return e=sa.getGraphDiv(e),Ho.cleanPlot([],{},e._fullData||[],e._fullLayout||{}),Ho.purge(e),pl._doPlot(e,t,r,n)}function LP(e,t){var r=t+1,n=[],i,a;for(i=0;i<e.length;i++)a=e[i],a<0?n.push(r+a):n.push(a);return n}function PP(e,t,r){var n,i;for(n=0;n<t.length;n++){if(i=t[n],i!==parseInt(i,10))throw new Error("all values in "+r+" must be integers");if(i>=e.data.length||i<-e.data.length)throw new Error(r+" must be valid indices for gd.data.");if(t.indexOf(i,n+1)>-1||i>=0&&t.indexOf(-e.data.length+i)>-1||i<0&&t.indexOf(e.data.length+i)>-1)throw new Error("each index in "+r+" must be unique.")}}function Rhe(e,t,r){if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("currentIndices is a required argument.");if(Array.isArray(t)||(t=[t]),PP(e,t,"currentIndices"),typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&PP(e,r,"newIndices"),typeof r!="undefined"&&t.length!==r.length)throw new Error("current and new indices must be of equal length.")}function uht(e,t,r){var n,i;if(!Array.isArray(e.data))throw new Error("gd.data must be an array.");if(typeof t=="undefined")throw new Error("traces must be defined.");for(Array.isArray(t)||(t=[t]),n=0;n<t.length;n++)if(i=t[n],typeof i!="object"||Array.isArray(i)||i===null)throw new Error("all values in traces array must be non-array objects");if(typeof r!="undefined"&&!Array.isArray(r)&&(r=[r]),typeof r!="undefined"&&r.length!==t.length)throw new Error("if indices is specified, traces.length must equal indices.length")}function cht(e,t,r,n){var i=sa.isPlainObject(n);if(!Array.isArray(e.data))throw new Error("gd.data must be an array");if(!sa.isPlainObject(t))throw new Error("update must be a key:value object");if(typeof r=="undefined")throw new Error("indices must be an integer or array of integers");PP(e,r,"indices");for(var a in t){if(!Array.isArray(t[a])||t[a].length!==r.length)throw new Error("attribute "+a+" must be an array of length equal to indices array length");if(i&&(!(a in n)||!Array.isArray(n[a])||n[a].length!==t[a].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")}}function fht(e,t,r,n){var i=sa.isPlainObject(n),a=[],o,s,l,u,c;Array.isArray(r)||(r=[r]),r=LP(r,e.data.length-1);for(var f in t)for(var h=0;h<r.length;h++){if(o=e.data[r[h]],l=Yu(o,f),s=l.get(),u=t[f][h],!sa.isArrayOrTypedArray(u))throw new Error("attribute: "+f+" index: "+h+" must be an array");if(!sa.isArrayOrTypedArray(s))throw new Error("cannot extend missing or non-array attribute: "+f);if(s.constructor!==u.constructor)throw new Error("cannot extend array with an array of a different type: "+f);c=i?n[f][h]:n,Yft(c)||(c=-1),a.push({prop:l,target:s,insert:u,maxp:Math.floor(c)})}return a}function Dhe(e,t,r,n,i){cht(e,t,r,n);for(var a=fht(e,t,r,n),o={},s={},l=0;l<a.length;l++){var u=a[l].prop,c=a[l].maxp,f=i(a[l].target,a[l].insert,c);u.set(f[0]),Array.isArray(o[u.astr])||(o[u.astr]=[]),o[u.astr].push(f[1]),Array.isArray(s[u.astr])||(s[u.astr]=[]),s[u.astr].push(a[l].target.length)}return{update:o,maxPoints:s}}function zhe(e,t){var r=new e.constructor(e.length+t.length);return r.set(e),r.set(t,e.length),r}function Fhe(e,t,r,n){e=sa.getGraphDiv(e);function i(l,u,c){var f,h;if(sa.isTypedArray(l))if(c<0){var d=new l.constructor(0),v=zhe(l,u);c<0?(f=v,h=d):(f=d,h=v)}else if(f=new l.constructor(c),h=new l.constructor(l.length+u.length-c),c===u.length)f.set(u),h.set(l);else if(c<u.length){var x=u.length-c;f.set(u.subarray(x)),h.set(l),h.set(u.subarray(0,x),l.length)}else{var b=c-u.length,p=l.length-b;f.set(l.subarray(p)),f.set(u,b),h.set(l.subarray(0,p))}else f=l.concat(u),h=c>=0&&c<f.length?f.splice(0,f.length-c):[];return[f,h]}var a=Dhe(e,t,r,n,i),o=pl.redraw(e),s=[e,a.update,r,a.maxPoints];return ap.add(e,pl.prependTraces,s,Fhe,arguments),o}function qhe(e,t,r,n){e=sa.getGraphDiv(e);function i(l,u,c){var f,h;if(sa.isTypedArray(l))if(c<=0){var d=new l.constructor(0),v=zhe(u,l);c<0?(f=v,h=d):(f=d,h=v)}else if(f=new l.constructor(c),h=new l.constructor(l.length+u.length-c),c===u.length)f.set(u),h.set(l);else if(c<u.length){var x=u.length-c;f.set(u.subarray(0,x)),h.set(u.subarray(x)),h.set(l,x)}else{var b=c-u.length;f.set(u),f.set(l.subarray(0,b),u.length),h.set(l.subarray(b))}else f=u.concat(l),h=c>=0&&c<f.length?f.splice(c,f.length):[];return[f,h]}var a=Dhe(e,t,r,n,i),o=pl.redraw(e),s=[e,a.update,r,a.maxPoints];return ap.add(e,pl.extendTraces,s,qhe,arguments),o}function Ohe(e,t,r){e=sa.getGraphDiv(e);var n=[],i=pl.deleteTraces,a=Ohe,o=[e,n],s=[e,t],l,u;for(uht(e,t,r),Array.isArray(t)||(t=[t]),t=t.map(function(c){return sa.extendFlat({},c)}),yh.cleanData(t),l=0;l<t.length;l++)e.data.push(t[l]);for(l=0;l<t.length;l++)n.push(-t.length+l);if(typeof r=="undefined")return u=pl.redraw(e),ap.add(e,i,o,a,s),u;Array.isArray(r)||(r=[r]);try{Rhe(e,n,r)}catch(c){throw e.data.splice(e.data.length-t.length,t.length),c}return ap.startSequence(e),ap.add(e,i,o,a,s),u=pl.moveTraces(e,n,r),ap.stopSequence(e),u}function Bhe(e,t){e=sa.getGraphDiv(e);var r=[],n=pl.addTraces,i=Bhe,a=[e,r,t],o=[e,t],s,l;if(typeof t=="undefined")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(t)||(t=[t]),PP(e,t,"indices"),t=LP(t,e.data.length-1),t.sort(sa.sorterDes),s=0;s<t.length;s+=1)l=e.data.splice(t[s],1)[0],r.push(l);var u=pl.redraw(e);return ap.add(e,n,a,i,o),u}function VN(e,t,r){e=sa.getGraphDiv(e);var n=[],i=[],a=VN,o=VN,s=[e,r,t],l=[e,t,r],u;if(Rhe(e,t,r),t=Array.isArray(t)?t:[t],typeof r=="undefined")for(r=[],u=0;u<t.length;u++)r.push(-t.length+u);for(r=Array.isArray(r)?r:[r],t=LP(t,e.data.length-1),r=LP(r,e.data.length-1),u=0;u<e.data.length;u++)t.indexOf(u)===-1&&n.push(e.data[u]);for(u=0;u<t.length;u++)i.push({newIndex:r[u],trace:e.data[t[u]]});for(i.sort(function(f,h){return f.newIndex-h.newIndex}),u=0;u<i.length;u+=1)n.splice(i[u].newIndex,0,i[u].trace);e.data=n;var c=pl.redraw(e);return ap.add(e,a,s,o,l),c}function IP(e,t,r,n){e=sa.getGraphDiv(e),yh.clearPromiseQueue(e);var i={};if(typeof t=="string")i[t]=r;else if(sa.isPlainObject(t))i=sa.extendFlat({},t),n===void 0&&(n=r);else return sa.warn("Restyle fail.",t,r,n),Promise.reject();Object.keys(i).length&&(e.changed=!0);var a=yh.coerceTraceIndices(e,n),o=Nhe(e,i,a),s=o.flags;s.calc&&(e.calcdata=void 0),s.clearAxisTypes&&yh.clearAxisTypes(e,a,{});var l=[];s.fullReplot?l.push(pl._doPlot):(l.push(Ho.previousPromises),Ho.supplyDefaults(e),s.markerSize&&(Ho.doCalcdata(e),qP(l)),s.style&&l.push($l.doTraceStyle),s.colorbars&&l.push($l.doColorBars),l.push(BM)),l.push(Ho.rehover,Ho.redrag,Ho.reselect),ap.add(e,IP,[e,o.undoit,o.traces],IP,[e,o.redoit,o.traces]);var u=sa.syncOrAsync(l,e);return(!u||!u.then)&&(u=Promise.resolve()),u.then(function(){return e.emit("plotly_restyle",o.eventData),e})}function Cy(e){return e===void 0?null:e}function kP(e,t){return t?function(r,n,i){var a=Yu(r,n),o=a.set;return a.set=function(s){var l=(i||"")+n;RP(l,a.get(),s,e),o(s)},a}:Yu}function RP(e,t,r,n){if(Array.isArray(t)||Array.isArray(r))for(var i=Array.isArray(t)?t:[],a=Array.isArray(r)?r:[],o=Math.max(i.length,a.length),s=0;s<o;s++)RP(e+"["+s+"]",i[s],a[s],n);else if(sa.isPlainObject(t)||sa.isPlainObject(r)){var l=sa.isPlainObject(t)?t:{},u=sa.isPlainObject(r)?r:{},c=sa.extendFlat({},l,u);for(var f in c)RP(e+"."+f,l[f],u[f],n)}else n[e]===void 0&&(n[e]=Cy(t))}function hht(e,t,r){for(var n in r){var i=Yu(e,n);RP(n,i.get(),r[n],t)}}function Nhe(e,t,r){var n=e._fullLayout,i=e._fullData,a=e.data,o=n._guiEditing,s=kP(n._preGUI,o),l=sa.extendDeepAll({},t),u,c=p_.traceFlags(),f={},h={},d;function v(){return r.map(function(){})}function x(me){var Re=Nv.id2name(me);d.indexOf(Re)===-1&&d.push(Re)}function b(me){return"LAYOUT"+me+".autorange"}function p(me){return"LAYOUT"+me+".range"}function E(me){for(var Re=me;Re<i.length;Re++)if(i[Re]._input===a[me])return i[Re]}function k(me,Re,ce){if(Array.isArray(me)){me.forEach(function(qt){k(qt,Re,ce)});return}if(!(me in t||yh.hasParent(t,me))){var Ge;if(me.substr(0,6)==="LAYOUT")Ge=s(e.layout,me.replace("LAYOUT",""));else{var nt=r[ce],ct=n._tracePreGUI[E(nt)._fullInput.uid];Ge=kP(ct,o)(a[nt],me)}me in h||(h[me]=v()),h[me][ce]===void 0&&(h[me][ce]=Cy(Ge.get())),Re!==void 0&&Ge.set(Re)}}function A(me){return function(Re){return i[Re][me]}}function L(me){return function(Re,ce){return Re===!1?i[r[ce]][me]:null}}for(var _ in t){if(yh.hasParent(t,_))throw new Error("cannot set "+_+" and a parent attribute simultaneously");var C=t[_],M,g,P,T,F,q;if((_==="autobinx"||_==="autobiny")&&(_=_.charAt(_.length-1)+"bins",Array.isArray(C)?C=C.map(L(_)):C===!1?C=r.map(A(_)):C=null),f[_]=C,_.substr(0,6)==="LAYOUT"){P=s(e.layout,_.replace("LAYOUT","")),h[_]=[Cy(P.get())],P.set(Array.isArray(C)?C[0]:C),c.calc=!0;continue}for(h[_]=v(),u=0;u<r.length;u++){M=a[r[u]],g=E(r[u]);var V=n._tracePreGUI[g._fullInput.uid];if(P=kP(V,o)(M,_),T=P.get(),F=Array.isArray(C)?C[u%C.length]:C,F!==void 0){var H=P.parts[P.parts.length-1],X=_.substr(0,_.length-H.length-1),G=X?X+".":"",N=X?Yu(g,X).get():g;if(q=FP.getTraceValObject(g,P.parts),q&&q.impliedEdits&&F!==null)for(var W in q.impliedEdits)k(sa.relativeAttr(_,W),q.impliedEdits[W],u);else if((H==="thicknessmode"||H==="lenmode")&&T!==F&&(F==="fraction"||F==="pixels")&&N){var re=n._size,ae=N.orient,_e=ae==="top"||ae==="bottom";if(H==="thicknessmode"){var Me=_e?re.h:re.w;k(G+"thickness",N.thickness*(F==="fraction"?1/Me:Me),u)}else{var ke=_e?re.w:re.h;k(G+"len",N.len*(F==="fraction"?1/ke:ke),u)}}else if(_==="type"&&(F==="pie"!=(T==="pie")||F==="funnelarea"!=(T==="funnelarea"))){var ge="x",ie="y";(F==="bar"||T==="bar")&&M.orientation==="h"&&(ge="y",ie="x"),sa.swapAttrs(M,["?","?src"],"labels",ge),sa.swapAttrs(M,["d?","?0"],"label",ge),sa.swapAttrs(M,["?","?src"],"values",ie),T==="pie"||T==="funnelarea"?(Yu(M,"marker.color").set(Yu(M,"marker.colors").get()),n._pielayer.selectAll("g.trace").remove()):L0.traceIs(M,"cartesian")&&Yu(M,"marker.colors").set(Yu(M,"marker.color").get())}h[_][u]=Cy(T);var Te=["swapxy","swapxyaxes","orientation","orientationaxes"];if(Te.indexOf(_)!==-1){if(_==="orientation"){P.set(F);var Ee=M.x&&!M.y?"h":"v";if((P.get()||Ee)===g.orientation)continue}else _==="orientationaxes"&&(M.orientation={v:"h",h:"v"}[g.orientation]);yh.swapXYData(M),c.calc=c.clearAxisTypes=!0}else Ho.dataArrayContainers.indexOf(P.parts[0])!==-1?(yh.manageArrayContainers(P,F,h),c.calc=!0):(q?q.arrayOk&&!L0.traceIs(g,"regl")&&(sa.isArrayOrTypedArray(F)||sa.isArrayOrTypedArray(T))?c.calc=!0:p_.update(c,q):c.calc=!0,P.set(F))}}if(["swapxyaxes","orientationaxes"].indexOf(_)!==-1&&Nv.swap(e,r),_==="orientationaxes"){var Ae=Yu(e.layout,"hovermode"),ze=Ae.get();ze==="x"?Ae.set("y"):ze==="y"?Ae.set("x"):ze==="x unified"?Ae.set("y unified"):ze==="y unified"&&Ae.set("x unified")}if(["orientation","type"].indexOf(_)!==-1){for(d=[],u=0;u<r.length;u++){var Ce=a[r[u]];L0.traceIs(Ce,"cartesian")&&(x(Ce.xaxis||"x"),x(Ce.yaxis||"y"))}k(d.map(b),!0,0),k(d.map(p),[0,1],0)}}return(c.calc||c.plot)&&(c.fullReplot=!0),{flags:c,undoit:h,redoit:f,traces:r,eventData:sa.extendDeepNoArrays([],[l,r])}}function OM(e,t,r){e=sa.getGraphDiv(e),yh.clearPromiseQueue(e);var n={};if(typeof t=="string")n[t]=r;else if(sa.isPlainObject(t))n=sa.extendFlat({},t);else return sa.warn("Relayout fail.",t,r),Promise.reject();Object.keys(n).length&&(e.changed=!0);var i=Ghe(e,n),a=i.flags;a.calc&&(e.calcdata=void 0);var o=[Ho.previousPromises];a.layoutReplot?o.push($l.layoutReplot):Object.keys(n).length&&(Uhe(e,a,i)||Ho.supplyDefaults(e),a.legend&&o.push($l.doLegend),a.layoutstyle&&o.push($l.layoutStyles),a.axrange&&qP(o,i.rangesAltered),a.ticks&&o.push($l.doTicksRelayout),a.modebar&&o.push($l.doModeBar),a.camera&&o.push($l.doCamera),a.colorbars&&o.push($l.doColorBars),o.push(BM)),o.push(Ho.rehover,Ho.redrag,Ho.reselect),ap.add(e,OM,[e,i.undoit],OM,[e,i.redoit]);var s=sa.syncOrAsync(o,e);return(!s||!s.then)&&(s=Promise.resolve(e)),s.then(function(){return e.emit("plotly_relayout",i.eventData),e})}function Uhe(e,t,r){var n=e._fullLayout;if(!t.axrange)return!1;for(var i in t)if(i!=="axrange"&&t[i])return!1;var a,o,s=function(d,v){return sa.coerce(a,o,$ft,d,v)},l={};for(var u in r.rangesAltered){var c=Nv.id2name(u);if(a=e.layout[c],o=n[c],Jft(a,o,s,l),o._matchGroup){for(var f in o._matchGroup)if(f!==u){var h=n[Nv.id2name(f)];h.autorange=o.autorange,h.range=o.range.slice(),h._input.range=o.range.slice()}}}return!0}function qP(e,t){var r=t?function(n){var i=[],a=!0;for(var o in t){var s=Nv.getFromId(n,o);if(i.push(o),(s.ticklabelposition||"").indexOf("inside")!==-1&&s._anchorAxis&&i.push(s._anchorAxis._id),s._matchGroup)for(var l in s._matchGroup)t[l]||i.push(l)}return Nv.draw(n,i,{skipTitle:a})}:function(n){return Nv.draw(n,"redraw")};e.push(rht,$l.doAutoRangeAndConstraints,r,$l.drawData,$l.finalDraw)}var Vhe=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,Hhe=/^[xyz]axis[0-9]*\.autorange$/,dht=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function Ghe(e,t){var r=e.layout,n=e._fullLayout,i=n._guiEditing,a=kP(n._preGUI,i),o=Object.keys(t),s=Nv.list(e),l=sa.extendDeepAll({},t),u={},c,f,h;for(o=Object.keys(t),f=0;f<o.length;f++)if(o[f].indexOf("allaxes")===0){for(h=0;h<s.length;h++){var d=s[h]._id.substr(1),v=d.indexOf("scene")!==-1?d+".":"",x=o[f].replace("allaxes",v+s[h]._name);t[x]||(t[x]=t[o[f]])}delete t[o[f]]}var b=p_.layoutFlags(),p={},E={};function k(ct,qt){if(Array.isArray(ct)){ct.forEach(function(ot){k(ot,qt)});return}if(!(ct in t||yh.hasParent(t,ct))){var rt=a(r,ct);ct in E||(E[ct]=Cy(rt.get())),qt!==void 0&&rt.set(qt)}}var A={},L;function _(ct){var qt=Nv.name2id(ct.split(".")[0]);return A[qt]=1,qt}for(var C in t){if(yh.hasParent(t,C))throw new Error("cannot set "+C+" and a parent attribute simultaneously");for(var M=a(r,C),g=t[C],P=M.parts.length,T=P-1;T>0&&typeof M.parts[T]!="string";)T--;var F=M.parts[T],q=M.parts[T-1]+"."+F,V=M.parts.slice(0,T).join("."),H=Yu(e.layout,V).get(),X=Yu(n,V).get(),G=M.get();if(g!==void 0){p[C]=g,E[C]=F==="reverse"?g:Cy(G);var N=FP.getLayoutValObject(n,M.parts);if(N&&N.impliedEdits&&g!==null)for(var W in N.impliedEdits)k(sa.relativeAttr(C,W),N.impliedEdits[W]);if(["width","height"].indexOf(C)!==-1)if(g){k("autosize",null);var re=C==="height"?"width":"height";k(re,n[re])}else n[C]=e._initialAutoSize[C];else if(C==="autosize")k("width",g?null:n.width),k("height",g?null:n.height);else if(q.match(Vhe))_(q),Yu(n,V+"._inputRange").set(null);else if(q.match(Hhe)){_(q),Yu(n,V+"._inputRange").set(null);var ae=Yu(n,V).get();ae._inputDomain&&(ae._input.domain=ae._inputDomain.slice())}else q.match(dht)&&Yu(n,V+"._inputDomain").set(null);if(F==="type"){L=H;var _e=X.type==="linear"&&g==="log",Me=X.type==="log"&&g==="linear";if(_e||Me){if(!L||!L.range)k(V+".autorange",!0);else if(X.autorange)_e&&(L.range=L.range[1]>L.range[0]?[1,2]:[2,1]);else{var ke=L.range[0],ge=L.range[1];_e?(ke<=0&&ge<=0&&k(V+".autorange",!0),ke<=0?ke=ge/1e6:ge<=0&&(ge=ke/1e6),k(V+".range[0]",Math.log(ke)/Math.LN10),k(V+".range[1]",Math.log(ge)/Math.LN10)):(k(V+".range[0]",Math.pow(10,ke)),k(V+".range[1]",Math.pow(10,ge)))}Array.isArray(n._subplots.polar)&&n._subplots.polar.length&&n[M.parts[0]]&&M.parts[1]==="radialaxis"&&delete n[M.parts[0]]._subplot.viewInitial["radialaxis.range"],L0.getComponentMethod("annotations","convertCoords")(e,X,g,k),L0.getComponentMethod("images","convertCoords")(e,X,g,k)}else k(V+".autorange",!0),k(V+".range",null);Yu(n,V+"._inputRange").set(null)}else if(F.match(iht)){var ie=Yu(n,C).get(),Te=(g||{}).type;(!Te||Te==="-")&&(Te="linear"),L0.getComponentMethod("annotations","convertCoords")(e,ie,Te,k),L0.getComponentMethod("images","convertCoords")(e,ie,Te,k)}var Ee=EP.containerArrayMatch(C);if(Ee){c=Ee.array,f=Ee.index;var Ae=Ee.property,ze=N||{editType:"calc"};f!==""&&Ae===""&&(EP.isAddVal(g)?E[C]=null:EP.isRemoveVal(g)?E[C]=(Yu(r,c).get()||[])[f]:sa.warn("unrecognized full object value",t)),p_.update(b,ze),u[c]||(u[c]={});var Ce=u[c][f];Ce||(Ce=u[c][f]={}),Ce[Ae]=g,delete t[C]}else F==="reverse"?(H.range?H.range.reverse():(k(V+".autorange",!0),H.range=[1,0]),X.autorange?b.calc=!0:b.plot=!0):(C==="dragmode"&&(g===!1&&G!==!1||g!==!1&&G===!1)||n._has("scatter-like")&&n._has("regl")&&C==="dragmode"&&(g==="lasso"||g==="select")&&!(G==="lasso"||G==="select")?b.plot=!0:N?p_.update(b,N):b.calc=!0,M.set(g))}}for(c in u){var me=EP.applyContainerArrayChanges(e,a(r,c),u[c],b,a);me||(b.plot=!0)}for(var Re in A){L=Nv.getFromId(e,Re);var ce=L&&L._constraintGroup;if(ce){b.calc=!0;for(var Ge in ce)A[Ge]||(Nv.getFromId(e,Ge)._constraintShrinkable=!0)}}(jhe(e)||t.height||t.width)&&(b.plot=!0);var nt=n.shapes;for(f=0;f<nt.length;f++)if(nt[f].showlegend){b.calc=!0;break}return(b.plot||b.calc)&&(b.layoutReplot=!0),{flags:b,rangesAltered:A,undoit:E,redoit:p,eventData:l}}function jhe(e){var t=e._fullLayout,r=t.width,n=t.height;return e.layout.autosize&&Ho.plotAutoSize(e,e.layout,t),t.width!==r||t.height!==n}function DP(e,t,r,n){e=sa.getGraphDiv(e),yh.clearPromiseQueue(e),sa.isPlainObject(t)||(t={}),sa.isPlainObject(r)||(r={}),Object.keys(t).length&&(e.changed=!0),Object.keys(r).length&&(e.changed=!0);var i=yh.coerceTraceIndices(e,n),a=Nhe(e,sa.extendFlat({},t),i),o=a.flags,s=Ghe(e,sa.extendFlat({},r)),l=s.flags;(o.calc||l.calc)&&(e.calcdata=void 0),o.clearAxisTypes&&yh.clearAxisTypes(e,i,r);var u=[];l.layoutReplot?u.push($l.layoutReplot):o.fullReplot?u.push(pl._doPlot):(u.push(Ho.previousPromises),Uhe(e,l,s)||Ho.supplyDefaults(e),o.style&&u.push($l.doTraceStyle),(o.colorbars||l.colorbars)&&u.push($l.doColorBars),l.legend&&u.push($l.doLegend),l.layoutstyle&&u.push($l.layoutStyles),l.axrange&&qP(u,s.rangesAltered),l.ticks&&u.push($l.doTicksRelayout),l.modebar&&u.push($l.doModeBar),l.camera&&u.push($l.doCamera),u.push(BM)),u.push(Ho.rehover,Ho.redrag,Ho.reselect),ap.add(e,DP,[e,a.undoit,s.undoit,a.traces],DP,[e,a.redoit,s.redoit,a.traces]);var c=sa.syncOrAsync(u,e);return(!c||!c.then)&&(c=Promise.resolve(e)),c.then(function(){return e.emit("plotly_update",{data:a.eventData,layout:s.eventData}),e})}function GN(e){return function(r){r._fullLayout._guiEditing=!0;var n=e.apply(null,arguments);return r._fullLayout._guiEditing=!1,n}}var vht=[{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:/^(map\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^legend\.(x|y)$/,attr:"editrevision"},{pattern:/^(shapes|annotations)/,attr:"editrevision"},{pattern:/^title\.text$/,attr:"editrevision"}],pht=[{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 Ehe(e,t){for(var r=0;r<t.length;r++){var n=t[r],i=e.match(n.pattern);if(i){var a=i[1]||"";return{head:a,tail:e.substr(a.length+1),attr:n.attr}}}}function khe(e,t){var r=Yu(t,e).get();if(r!==void 0)return r;var n=e.split(".");for(n.pop();n.length>1;)if(n.pop(),r=Yu(t,n.join(".")+".uirevision").get(),r!==void 0)return r;return t.uirevision}function ght(e,t){for(var r=0;r<t.length;r++)if(t[r]._fullInput.uid===e)return r;return-1}function mht(e,t,r){for(var n=0;n<t.length;n++)if(t[n].uid===e)return n;return!t[r]||t[r].uid?-1:r}function Che(e,t){var r=sa.isPlainObject(e),n=Array.isArray(e);return r||n?(r&&sa.isPlainObject(t)||n&&Array.isArray(t))&&JSON.stringify(e)===JSON.stringify(t):e===t}function yht(e,t,r,n){var i=n._preGUI,a,o,s,l,u,c,f,h,d,v,x=[],b={},p={};for(a in i){if(u=Ehe(a,vht),u){if(d=u.head,v=u.tail,o=u.attr||d+".uirevision",s=Yu(n,o).get(),l=s&&khe(o,t),l&&l===s){if(c=i[a],c===null&&(c=void 0),f=Yu(t,a),h=f.get(),Che(h,c)){h===void 0&&v==="autorange"&&x.push(d),f.set(Cy(Yu(n,a).get()));continue}else if(v==="autorange"||v.substr(0,6)==="range["){var E=i[d+".range[0]"],k=i[d+".range[1]"],A=i[d+".autorange"];if(A||A===null&&E===null&&k===null){if(!(d in b)){var L=Yu(t,d).get();b[d]=L&&(L.autorange||L.autorange!==!1&&(!L.range||L.range.length!==2))}if(b[d]){f.set(Cy(Yu(n,a).get()));continue}}}}}else sa.warn("unrecognized GUI edit: "+a);delete i[a],u&&u.tail.substr(0,6)==="range["&&(p[u.head]=1)}for(var _=0;_<x.length;_++){var C=x[_];if(p[C]){var M=Yu(t,C).get();M&&delete M.autorange}}var g=n._tracePreGUI;for(var P in g){var T=g[P],F=null,q;for(a in T){if(!F){var V=ght(P,r);if(V<0){delete g[P];break}var H=r[V];q=H._fullInput;var X=mht(P,e,q.index);if(X<0){delete g[P];break}F=e[X]}if(u=Ehe(a,pht),u){if(u.attr?(s=Yu(n,u.attr).get(),l=s&&khe(u.attr,t)):(s=q.uirevision,l=F.uirevision,l===void 0&&(l=t.uirevision)),l&&l===s&&(c=T[a],c===null&&(c=void 0),f=Yu(F,a),h=f.get(),Che(h,c))){f.set(Cy(Yu(q,a).get()));continue}}else sa.warn("unrecognized GUI edit: "+a+" in trace uid "+P);delete T[a]}}}function _ht(e,t,r,n){var i,a;function o(){return pl.addFrames(e,i)}e=sa.getGraphDiv(e),yh.clearPromiseQueue(e);var s=e._fullData,l=e._fullLayout;if(!sa.isPlotDiv(e)||!s||!l)a=pl.newPlot(e,t,r,n);else{if(sa.isPlainObject(t)){var u=t;t=u.data,r=u.layout,n=u.config,i=u.frames}var c=!1;if(n){var f=sa.extendDeep({},e._context);e._context=void 0,Ihe(e,n),c=HN(f,e._context)}e.data=t||[],yh.cleanData(e.data),e.layout=r||{},yh.cleanLayout(e.layout),yht(e.data,e.layout,s,l),Ho.supplyDefaults(e,{skipUpdateCalc:!0});var h=e._fullData,d=e._fullLayout,v=d.datarevision===void 0,x=d.transition,b=bht(e,l,d,v,x),p=b.newDataRevision,E=xht(e,s,h,v,x,p);if(jhe(e)&&(b.layoutReplot=!0),E.calc||b.calc){e.calcdata=void 0;for(var k=Object.getOwnPropertyNames(d),A=0;A<k.length;A++){var L=k[A],_=L.substring(0,5);if(_==="xaxis"||_==="yaxis"){var C=d[L]._emptyCategories;C&&C()}}}else Ho.supplyDefaultsUpdateCalc(e.calcdata,h);var M=[];if(i&&(e._transitionData={},Ho.createTransitionData(e),M.push(o)),d.transition&&!c&&(E.anim||b.anim))b.ticks&&M.push($l.doTicksRelayout),Ho.doCalcdata(e),$l.doAutoRangeAndConstraints(e),M.push(function(){return Ho.transitionFromReact(e,E,b,l)});else if(E.fullReplot||b.layoutReplot||c)e._fullLayout._skipDefaults=!0,M.push(pl._doPlot);else{for(var g in b.arrays){var P=b.arrays[g];if(P.length){var T=L0.getComponentMethod(g,"drawOne");if(T!==sa.noop)for(var F=0;F<P.length;F++)T(e,P[F]);else{var q=L0.getComponentMethod(g,"draw");if(q===sa.noop)throw new Error("cannot draw components: "+g);q(e)}}}M.push(Ho.previousPromises),E.style&&M.push($l.doTraceStyle),(E.colorbars||b.colorbars)&&M.push($l.doColorBars),b.legend&&M.push($l.doLegend),b.layoutstyle&&M.push($l.layoutStyles),b.axrange&&qP(M),b.ticks&&M.push($l.doTicksRelayout),b.modebar&&M.push($l.doModeBar),b.camera&&M.push($l.doCamera),M.push(BM)}M.push(Ho.rehover,Ho.redrag,Ho.reselect),a=sa.syncOrAsync(M,e),(!a||!a.then)&&(a=Promise.resolve(e))}return a.then(function(){return e.emit("plotly_react",{data:t,layout:r}),e})}function xht(e,t,r,n,i,a){var o=t.length===r.length;if(!i&&!o)return{fullReplot:!0,calc:!0};var s=p_.traceFlags();s.arrays={},s.nChanges=0,s.nChangesAnim=0;var l,u;function c(d){var v=FP.getTraceValObject(u,d);return!u._module.animatable&&v.anim&&(v.anim=!1),v}var f={getValObject:c,flags:s,immutable:n,transition:i,newDataRevision:a,gd:e},h={};for(l=0;l<t.length;l++)if(r[l]){if(u=r[l]._fullInput,h[u.uid])continue;h[u.uid]=1,zP(t[l]._fullInput,u,[],f)}return(s.calc||s.plot)&&(s.fullReplot=!0),i&&s.nChanges&&s.nChangesAnim&&(s.anim=s.nChanges===s.nChangesAnim&&o?"all":"some"),s}function bht(e,t,r,n,i){var a=p_.layoutFlags();a.arrays={},a.rangesAltered={},a.nChanges=0,a.nChangesAnim=0;function o(h){return FP.getLayoutValObject(r,h)}for(var s in r)if(!(!s.startsWith("xaxis")&&!s.startsWith("yaxis"))&&t[s]){var l=r[s].domain,u=t[s].domain,c=t[s]._inputDomain;t[s]._inputDomain&&(l[0]===c[0]&&l[1]===c[1]?r[s].domain=t[s].domain:(l[0]!==u[0]||l[1]!==u[1])&&(r[s]._inputDomain=null))}var f={getValObject:o,flags:a,immutable:n,transition:i,gd:e};return zP(t,r,[],f),(a.plot||a.calc)&&(a.layoutReplot=!0),i&&a.nChanges&&a.nChangesAnim&&(a.anim=a.nChanges===a.nChangesAnim?"all":"some"),a}function zP(e,t,r,n){var i,a,o,s=n.getValObject,l=n.flags,u=n.immutable,c=n.inArray,f=n.arrayIndex;function h(){var V=i.editType;if(c&&V.indexOf("arraydraw")!==-1){sa.pushUnique(l.arrays[c],f);return}p_.update(l,i),V!=="none"&&l.nChanges++,n.transition&&i.anim&&l.nChangesAnim++,(Vhe.test(o)||Hhe.test(o))&&(l.rangesAltered[r[0]]=1),a==="datarevision"&&(l.newDataRevision=1)}function d(V){return V.valType==="data_array"||V.arrayOk}for(a in e){if(l.calc&&!n.transition)return;var v=e[a],x=t[a],b=r.concat(a);if(o=b.join("."),!(a.charAt(0)==="_"||typeof v=="function"||v===x)){if((a==="tick0"||a==="dtick")&&r[0]!=="geo"){var p=t.tickmode;if(p==="auto"||p==="array"||!p)continue}if(!(a==="range"&&t.autorange)&&!((a==="zmin"||a==="zmax")&&t.type==="contourcarpet")&&(i=s(b),!!i&&!(i._compareAsJSON&&JSON.stringify(v)===JSON.stringify(x)))){var E=i.valType,k,A=d(i),L=Array.isArray(v),_=Array.isArray(x);if(L&&_){var C="_input_"+a,M=e[C],g=t[C];if(Array.isArray(M)&&M===g)continue}if(x===void 0)A&&L?l.calc=!0:h();else if(i._isLinkedToArray){var P=[],T=!1;c||(l.arrays[a]=P);var F=Math.min(v.length,x.length),q=Math.max(v.length,x.length);if(F!==q)if(i.editType==="arraydraw")T=!0;else{h();continue}for(k=0;k<F;k++)zP(v[k],x[k],b.concat(k),sa.extendFlat({inArray:a,arrayIndex:k},n));if(T)for(k=F;k<q;k++)P.push(k)}else!E&&sa.isPlainObject(v)?zP(v,x,b,n):A?L&&_?(u&&(l.calc=!0),(u||n.newDataRevision)&&h()):L!==_?l.calc=!0:h():L&&_?(v.length!==x.length||String(v)!==String(x))&&h():h()}}}for(a in t)if(!(a in e||a.charAt(0)==="_"||typeof t[a]=="function"))if(i=s(r.concat(a)),d(i)&&Array.isArray(t[a])){l.calc=!0;return}else h()}function HN(e,t){var r;for(r in e)if(r.charAt(0)!=="_"){var n=e[r],i=t[r];if(n!==i)if(sa.isPlainObject(n)&&sa.isPlainObject(i)){if(HN(n,i))return!0}else if(Array.isArray(n)&&Array.isArray(i)){if(n.length!==i.length)return!0;for(var a=0;a<n.length;a++)if(n[a]!==i[a])if(sa.isPlainObject(n[a])&&sa.isPlainObject(i[a])){if(HN(n[a],i[a]))return!0}else return!0}else return!0}}function wht(e,t,r){if(e=sa.getGraphDiv(e),!sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/");var n=e._transitionData;n._frameQueue||(n._frameQueue=[]),r=Ho.supplyAnimationDefaults(r);var i=r.transition,a=r.frame;n._frameWaitingCnt===void 0&&(n._frameWaitingCnt=0);function o(u){return Array.isArray(i)?u>=i.length?i[0]:i[u]:i}function s(u){return Array.isArray(a)?u>=a.length?a[0]:a[u]:a}function l(u,c){var f=0;return function(){if(u&&++f===c)return u()}}return new Promise(function(u,c){function f(){if(n._frameQueue.length!==0){for(;n._frameQueue.length;){var F=n._frameQueue.pop();F.onInterrupt&&F.onInterrupt()}e.emit("plotly_animationinterrupted",[])}}function h(F){if(F.length!==0){for(var q=0;q<F.length;q++){var V;F[q].type==="byname"?V=Ho.computeFrame(e,F[q].name):V=F[q].data;var H=s(q),X=o(q);X.duration=Math.min(X.duration,H.duration);var G={frame:V,name:F[q].name,frameOpts:H,transitionOpts:X};q===F.length-1&&(G.onComplete=l(u,2),G.onInterrupt=c),n._frameQueue.push(G)}r.mode==="immediate"&&(n._lastFrameAt=-1/0),n._animationRaf||x()}}function d(){e.emit("plotly_animated"),window.cancelAnimationFrame(n._animationRaf),n._animationRaf=null}function v(){n._currentFrame&&n._currentFrame.onComplete&&n._currentFrame.onComplete();var F=n._currentFrame=n._frameQueue.shift();if(F){var q=F.name?F.name.toString():null;e._fullLayout._currentFrame=q,n._lastFrameAt=Date.now(),n._timeToNext=F.frameOpts.duration,Ho.transition(e,F.frame.data,F.frame.layout,yh.coerceTraceIndices(e,F.frame.traces),F.frameOpts,F.transitionOpts).then(function(){F.onComplete&&F.onComplete()}),e.emit("plotly_animatingframe",{name:q,frame:F.frame,animation:{frame:F.frameOpts,transition:F.transitionOpts}})}else d()}function x(){e.emit("plotly_animating"),n._lastFrameAt=-1/0,n._timeToNext=0,n._runningTransitions=0,n._currentFrame=null;var F=function(){n._animationRaf=window.requestAnimationFrame(F),Date.now()-n._lastFrameAt>n._timeToNext&&v()};F()}var b=0;function p(F){return Array.isArray(i)?b>=i.length?F.transitionOpts=i[b]:F.transitionOpts=i[0]:F.transitionOpts=i,b++,F}var E,k,A=[],L=t==null,_=Array.isArray(t),C=!L&&!_&&sa.isPlainObject(t);if(C)A.push({type:"object",data:p(sa.extendFlat({},t))});else if(L||["string","number"].indexOf(typeof t)!==-1)for(E=0;E<n._frames.length;E++)k=n._frames[E],k&&(L||String(k.group)===String(t))&&A.push({type:"byname",name:String(k.name),data:p({name:k.name})});else if(_)for(E=0;E<t.length;E++){var M=t[E];["number","string"].indexOf(typeof M)!==-1?(M=String(M),A.push({type:"byname",name:M,data:p({name:M})})):sa.isPlainObject(M)&&A.push({type:"object",data:p(sa.extendFlat({},M))})}for(E=0;E<A.length;E++)if(k=A[E],k.type==="byname"&&!n._frameHash[k.data.name]){sa.warn('animate failure: frame not found: "'+k.data.name+'"'),c();return}["next","immediate"].indexOf(r.mode)!==-1&&f(),r.direction==="reverse"&&A.reverse();var g=e._fullLayout._currentFrame;if(g&&r.fromcurrent){var P=-1;for(E=0;E<A.length;E++)if(k=A[E],k.type==="byname"&&k.name===g){P=E;break}if(P>0&&P<A.length-1){var T=[];for(E=0;E<A.length;E++)k=A[E],(A[E].type!=="byname"||E>P)&&T.push(k);A=T}}A.length>0?h(A):(e.emit("plotly_animated"),u())})}function Tht(e,t,r){if(e=sa.getGraphDiv(e),t==null)return Promise.resolve();if(!sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var n,i,a,o,s=e._transitionData._frames,l=e._transitionData._frameHash;if(!Array.isArray(t))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+t);var u=s.length+t.length*2,c=[],f={};for(n=t.length-1;n>=0;n--)if(sa.isPlainObject(t[n])){var h=t[n].name,d=(l[h]||f[h]||{}).name,v=t[n].name,x=l[d]||f[d];d&&v&&typeof v=="number"&&x&&NN<Mhe&&(NN++,sa.warn('addFrames: overwriting frame "'+(l[d]||f[d]).name+'" with a frame whose name of type "number" also equates to "'+d+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),NN===Mhe&&sa.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.")),f[h]={name:h},c.push({frame:Ho.supplyFrameDefaults(t[n]),index:r&&r[n]!==void 0&&r[n]!==null?r[n]:u+n})}c.sort(function(C,M){return C.index>M.index?-1:C.index<M.index?1:0});var b=[],p=[],E=s.length;for(n=c.length-1;n>=0;n--){if(i=c[n].frame,typeof i.name=="number"&&sa.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!i.name)for(;l[i.name="frame "+e._transitionData._counter++];);if(l[i.name]){for(a=0;a<s.length&&(s[a]||{}).name!==i.name;a++);b.push({type:"replace",index:a,value:i}),p.unshift({type:"replace",index:a,value:s[a]})}else o=Math.max(0,Math.min(c[n].index,E)),b.push({type:"insert",index:o,value:i}),p.unshift({type:"delete",index:o}),E++}var k=Ho.modifyFrames,A=Ho.modifyFrames,L=[e,p],_=[e,b];return ap&&ap.add(e,k,L,A,_),Ho.modifyFrames(e,b)}function Aht(e,t){if(e=sa.getGraphDiv(e),!sa.isPlotDiv(e))throw new Error("This element is not a Plotly plot: "+e);var r,n,i=e._transitionData._frames,a=[],o=[];if(!t)for(t=[],r=0;r<i.length;r++)t.push(r);for(t=t.slice(),t.sort(),r=t.length-1;r>=0;r--)n=t[r],a.push({type:"delete",index:n}),o.unshift({type:"insert",index:n,value:i[n]});var s=Ho.modifyFrames,l=Ho.modifyFrames,u=[e,o],c=[e,a];return ap&&ap.add(e,s,u,l,c),Ho.modifyFrames(e,a)}function Sht(e){e=sa.getGraphDiv(e);var t=e._fullLayout||{},r=e._fullData||[];return Ho.cleanPlot([],{},r,t),Ho.purge(e),UN.purge(e),t._container&&t._container.remove(),delete e._context,e}function Mht(e){var t=e._fullLayout,r=e.getBoundingClientRect();if(!sa.equalDomRects(r,t._lastBBox)){var n=t._invTransform=sa.inverseTransformMatrix(sa.getFullTransformMatrix(e));t._invScaleX=Math.sqrt(n[0][0]*n[0][0]+n[0][1]*n[0][1]+n[0][2]*n[0][2]),t._invScaleY=Math.sqrt(n[1][0]*n[1][0]+n[1][1]*n[1][1]+n[1][2]*n[1][2]),t._lastBBox=r}}function Eht(e){var t=CP.select(e),r=e._fullLayout;if(r._calcInverseTransform=Mht,r._calcInverseTransform(e),r._container=t.selectAll(".plot-container").data([0]),r._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),r._paperdiv=r._container.selectAll(".svg-container").data([0]),r._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),r._glcontainer=r._paperdiv.selectAll(".gl-container").data([{}]),r._glcontainer.enter().append("div").classed("gl-container",!0),r._paperdiv.selectAll(".main-svg").remove(),r._paperdiv.select(".modebar-container").remove(),r._paper=r._paperdiv.insert("svg",":first-child").classed("main-svg",!0),r._toppaper=r._paperdiv.append("svg").classed("main-svg",!0),r._modebardiv=r._paperdiv.append("div"),delete r._modeBar,r._hoverpaper=r._paperdiv.append("svg").classed("main-svg",!0),!r._uid){var n={};CP.selectAll("defs").each(function(){this.id&&(n[this.id.split("-")[1]]=1)}),r._uid=sa.randstr(n)}r._paperdiv.selectAll(".main-svg").attr(tht.svgAttrs),r._defs=r._paper.append("defs").attr("id","defs-"+r._uid),r._clips=r._defs.append("g").classed("clips",!0),r._topdefs=r._toppaper.append("defs").attr("id","topdefs-"+r._uid),r._topclips=r._topdefs.append("g").classed("clips",!0),r._bgLayer=r._paper.append("g").classed("bglayer",!0),r._draggers=r._paper.append("g").classed("draglayer",!0);var i=r._paper.append("g").classed("layer-below",!0);r._imageLowerLayer=i.append("g").classed("imagelayer",!0),r._shapeLowerLayer=i.append("g").classed("shapelayer",!0),r._cartesianlayer=r._paper.append("g").classed("cartesianlayer",!0),r._polarlayer=r._paper.append("g").classed("polarlayer",!0),r._smithlayer=r._paper.append("g").classed("smithlayer",!0),r._ternarylayer=r._paper.append("g").classed("ternarylayer",!0),r._geolayer=r._paper.append("g").classed("geolayer",!0),r._funnelarealayer=r._paper.append("g").classed("funnelarealayer",!0),r._pielayer=r._paper.append("g").classed("pielayer",!0),r._iciclelayer=r._paper.append("g").classed("iciclelayer",!0),r._treemaplayer=r._paper.append("g").classed("treemaplayer",!0),r._sunburstlayer=r._paper.append("g").classed("sunburstlayer",!0),r._indicatorlayer=r._toppaper.append("g").classed("indicatorlayer",!0),r._glimages=r._paper.append("g").classed("glimages",!0);var a=r._toppaper.append("g").classed("layer-above",!0);r._imageUpperLayer=a.append("g").classed("imagelayer",!0),r._shapeUpperLayer=a.append("g").classed("shapelayer",!0),r._selectionLayer=r._toppaper.append("g").classed("selectionlayer",!0),r._infolayer=r._toppaper.append("g").classed("infolayer",!0),r._menulayer=r._toppaper.append("g").classed("menulayer",!0),r._zoomlayer=r._toppaper.append("g").classed("zoomlayer",!0),r._hoverlayer=r._hoverpaper.append("g").classed("hoverlayer",!0),r._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),e.emit("plotly_framework")}pl.animate=wht;pl.addFrames=Tht;pl.deleteFrames=Aht;pl.addTraces=Ohe;pl.deleteTraces=Bhe;pl.extendTraces=Fhe;pl.moveTraces=VN;pl.prependTraces=qhe;pl.newPlot=lht;pl._doPlot=nht;pl.purge=Sht;pl.react=_ht;pl.redraw=sht;pl.relayout=OM;pl.restyle=IP;pl.setPlotConfig=aht;pl.update=DP;pl._guiRelayout=GN(OM);pl._guiRestyle=GN(IP);pl._guiUpdate=GN(DP);pl._storeDirectGUIEdit=hht});var Ly=ye(Mm=>{"use strict";var kht=ba();Mm.getDelay=function(e){return e._has&&(e._has("gl3d")||e._has("mapbox")||e._has("map"))?500:0};Mm.getRedrawFunc=function(e){return function(){kht.getComponentMethod("colorbar","draw")(e)}};Mm.encodeSVG=function(e){return"data:image/svg+xml,"+encodeURIComponent(e)};Mm.encodeJSON=function(e){return"data:application/json,"+encodeURIComponent(e)};var Whe=window.URL||window.webkitURL;Mm.createObjectURL=function(e){return Whe.createObjectURL(e)};Mm.revokeObjectURL=function(e){return Whe.revokeObjectURL(e)};Mm.createBlob=function(e,t){if(t==="svg")return new window.Blob([e],{type:"image/svg+xml;charset=utf-8"});if(t==="full-json")return new window.Blob([e],{type:"application/json;charset=utf-8"});var r=Cht(window.atob(e));return new window.Blob([r],{type:"image/"+t})};Mm.octetStream=function(e){document.location.href="data:application/octet-stream"+e};function Cht(e){for(var t=e.length,r=new ArrayBuffer(t),n=new Uint8Array(r),i=0;i<t;i++)n[i]=e.charCodeAt(i);return r}Mm.IMAGE_URL_PREFIX=/^data:image\/\w+;base64,/});var BP=ye((snr,Zhe)=>{"use strict";var WN=xa(),anr=Mr(),Lht=ao(),Pht=va(),onr=Zp(),jN=/"/g,NM="TOBESTRIPPED",Iht=new RegExp('("'+NM+")|("+NM+'")',"g");function Rht(e){var t=WN.select("body").append("div").style({display:"none"}).html(""),r=e.replace(/(&[^;]*;)/gi,function(n){return n==="&lt;"?"&#60;":n==="&rt;"?"&#62;":n.indexOf("<")!==-1||n.indexOf(">")!==-1?"":t.html(n).text()});return t.remove(),r}function Dht(e){return e.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&amp;")}Zhe.exports=function(t,r,n){var i=t._fullLayout,a=i._paper,o=i._toppaper,s=i.width,l=i.height,u;a.insert("rect",":first-child").call(Lht.setRect,0,0,s,l).call(Pht.fill,i.paper_bgcolor);var c=i._basePlotModules||[];for(u=0;u<c.length;u++){var f=c[u];f.toSVG&&f.toSVG(t)}if(o){var h=o.node().childNodes,d=Array.prototype.slice.call(h);for(u=0;u<d.length;u++){var v=d[u];v.childNodes.length&&a.node().appendChild(v)}}i._draggers&&i._draggers.remove(),a.node().style.background="",a.selectAll("text").attr({"data-unformatted":null,"data-math":null}).each(function(){var b=WN.select(this);if(this.style.visibility==="hidden"||this.style.display==="none"){b.remove();return}else b.style({visibility:null,display:null});var p=this.style.fontFamily;p&&p.indexOf('"')!==-1&&b.style("font-family",p.replace(jN,NM));var E=this.style.fontWeight;E&&(E==="normal"||E==="400")&&b.style("font-weight",void 0);var k=this.style.fontStyle;k&&k==="normal"&&b.style("font-style",void 0);var A=this.style.fontVariant;A&&A==="normal"&&b.style("font-variant",void 0)}),a.selectAll(".gradient_filled,.pattern_filled").each(function(){var b=WN.select(this),p=this.style.fill;p&&p.indexOf("url(")!==-1&&b.style("fill",p.replace(jN,NM));var E=this.style.stroke;E&&E.indexOf("url(")!==-1&&b.style("stroke",E.replace(jN,NM))}),(r==="pdf"||r==="eps")&&a.selectAll("#MathJax_SVG_glyphs path").attr("stroke-width",0),r==="svg"&&n&&(a.attr("width",n*s),a.attr("height",n*l),a.attr("viewBox","0 0 "+s+" "+l));var x=new window.XMLSerializer().serializeToString(a.node());return x=Rht(x),x=Dht(x),x=x.replace(Iht,"'"),x}});var NP=ye((lnr,Xhe)=>{"use strict";var zht=Mr(),Fht=vb().EventEmitter,UM=Ly();function qht(e){var t=e.emitter||new Fht,r=new Promise(function(n,i){var a=window.Image,o=e.svg,s=e.format||"png",l=e.canvas,u=e.scale||1,c=e.width||300,f=e.height||150,h=u*c,d=u*f,v=l.getContext("2d",{willReadFrequently:!0}),x=new a,b,p;s==="svg"||zht.isSafari()?p=UM.encodeSVG(o):(b=UM.createBlob(o,"svg"),p=UM.createObjectURL(b)),l.width=h,l.height=d,x.onload=function(){var E;switch(b=null,UM.revokeObjectURL(p),s!=="svg"&&v.drawImage(x,0,0,h,d),s){case"jpeg":E=l.toDataURL("image/jpeg");break;case"png":E=l.toDataURL("image/png");break;case"webp":E=l.toDataURL("image/webp");break;case"svg":E=p;break;default:var k="Image format is not jpeg, png, svg or webp.";if(i(new Error(k)),!e.promise)return t.emit("error",k)}n(E),e.promise||t.emit("success",E)},x.onerror=function(E){if(b=null,UM.revokeObjectURL(p),i(E),!e.promise)return t.emit("error",E)},x.src=p});return e.promise?r:t}Xhe.exports=qht});var XN=ye((unr,Jhe)=>{"use strict";var Yhe=uo(),Khe=OP(),Oht=Xu(),Em=Mr(),VM=Ly(),Bht=BP(),Nht=NP(),Uht=e6().version,ZN={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function Vht(e,t){t=t||{};var r,n,i,a;Em.isPlainObject(e)?(r=e.data||[],n=e.layout||{},i=e.config||{},a={}):(e=Em.getGraphDiv(e),r=Em.extendDeep([],e.data),n=Em.extendDeep({},e.layout),i=e._context,a=e._fullLayout||{});function o(_){return!(_ in t)||Em.validate(t[_],ZN[_])}if(!o("width")&&t.width!==null||!o("height")&&t.height!==null)throw new Error("Height and width should be pixel values.");if(!o("format"))throw new Error("Export format is not "+Em.join2(ZN.format.values,", "," or ")+".");var s={};function l(_,C){return Em.coerce(t,s,ZN,_,C)}var u=l("format"),c=l("width"),f=l("height"),h=l("scale"),d=l("setBackground"),v=l("imageDataOnly"),x=document.createElement("div");x.style.position="absolute",x.style.left="-5000px",document.body.appendChild(x);var b=Em.extendFlat({},n);c?b.width=c:t.width===null&&Yhe(a.width)&&(b.width=a.width),f?b.height=f:t.height===null&&Yhe(a.height)&&(b.height=a.height);var p=Em.extendFlat({},i,{_exportedPlot:!0,staticPlot:!0,setBackground:d}),E=VM.getRedrawFunc(x);function k(){return new Promise(function(_){setTimeout(_,VM.getDelay(x._fullLayout))})}function A(){return new Promise(function(_,C){var M=Bht(x,u,h),g=x._fullLayout.width,P=x._fullLayout.height;function T(){Khe.purge(x),document.body.removeChild(x)}if(u==="full-json"){var F=Oht.graphJson(x,!1,"keepdata","object",!0,!0);return F.version=Uht,F=JSON.stringify(F),T(),_(v?F:VM.encodeJSON(F))}if(T(),u==="svg")return _(v?M:VM.encodeSVG(M));var q=document.createElement("canvas");q.id=Em.randstr(),Nht({format:u,width:g,height:P,scale:h,canvas:q,svg:M,promise:!0}).then(_).catch(C)})}function L(_){return v?_.replace(VM.IMAGE_URL_PREFIX,""):_}return new Promise(function(_,C){Khe.newPlot(x,r,b,p).then(E).then(k).then(A).then(function(M){_(L(M))}).catch(function(M){C(M)})})}Jhe.exports=Vht});var tde=ye((cnr,ede)=>{"use strict";var P0=Mr(),Hht=Xu(),Ght=_3(),jht=ub().dfltConfig,Lg=P0.isPlainObject,Vb=Array.isArray,$he=P0.isArrayOrTypedArray;ede.exports=function(t,r){t===void 0&&(t=[]),r===void 0&&(r={});var n=Ght.get(),i=[],a={_context:P0.extendFlat({},jht)},o,s;Vb(t)?(a.data=P0.extendDeep([],t),o=t):(a.data=[],o=[],i.push(cd("array","data"))),Lg(r)?(a.layout=P0.extendDeep({},r),s=r):(a.layout={},s={},arguments.length>1&&i.push(cd("object","layout"))),Hht.supplyDefaults(a);for(var l=a._fullData,u=o.length,c=0;c<u;c++){var f=o[c],h=["data",c];if(!Lg(f)){i.push(cd("object",h));continue}var d=l[c],v=d.type,x=n.traces[v].attributes;x.type={valType:"enumerated",values:[v]},d.visible===!1&&f.visible!==!1&&i.push(cd("invisible",h)),UP(f,d,x,i,h)}var b=a._fullLayout,p=Wht(n,l);return UP(s,b,p,i,"layout"),i.length===0?void 0:i};function UP(e,t,r,n,i,a){a=a||[];for(var o=Object.keys(e),s=0;s<o.length;s++){var l=o[s],u=a.slice();u.push(l);var c=e[l],f=t[l],h=Yht(r,l),d=(h||{}).valType,v=d==="info_array",x=d==="colorscale",b=(h||{}).items;if(!Xht(r,l))n.push(cd("schema",i,u));else if(Lg(c)&&Lg(f)&&d!=="any")UP(c,f,h,n,i,u);else if(v&&Vb(c)){c.length>f.length&&n.push(cd("unused",i,u.concat(f.length)));var p=f.length,E=Array.isArray(b);E&&(p=Math.min(p,b.length));var k,A,L,_,C;if(h.dimensions===2)for(A=0;A<p;A++)if(Vb(c[A])){c[A].length>f[A].length&&n.push(cd("unused",i,u.concat(A,f[A].length)));var M=f[A].length;for(k=0;k<(E?Math.min(M,b[A].length):M);k++)L=E?b[A][k]:b,_=c[A][k],C=f[A][k],P0.validate(_,L)?C!==_&&C!==+_&&n.push(cd("dynamic",i,u.concat(A,k),_,C)):n.push(cd("value",i,u.concat(A,k),_))}else n.push(cd("array",i,u.concat(A),c[A]));else for(A=0;A<p;A++)L=E?b[A]:b,_=c[A],C=f[A],P0.validate(_,L)?C!==_&&C!==+_&&n.push(cd("dynamic",i,u.concat(A),_,C)):n.push(cd("value",i,u.concat(A),_))}else if(h.items&&!v&&Vb(c)){var g=b[Object.keys(b)[0]],P=[],T,F;for(T=0;T<f.length;T++){var q=f[T]._index||T;if(F=u.slice(),F.push(q),Lg(c[q])&&Lg(f[T])){P.push(q);var V=c[q],H=f[T];Lg(V)&&V.visible!==!1&&H.visible===!1?n.push(cd("invisible",i,F)):UP(V,H,g,n,i,F)}}for(T=0;T<c.length;T++)F=u.slice(),F.push(T),Lg(c[T])?P.indexOf(T)===-1&&n.push(cd("unused",i,F)):n.push(cd("object",i,F,c[T]))}else!Lg(c)&&Lg(f)?n.push(cd("object",i,u,c)):!$he(c)&&$he(f)&&!v&&!x?n.push(cd("array",i,u,c)):l in t?P0.validate(c,h)?h.valType==="enumerated"&&(h.coerceNumber&&c!==+f||c!==f)&&n.push(cd("dynamic",i,u,c,f)):n.push(cd("value",i,u,c)):n.push(cd("unused",i,u,c))}return n}function Wht(e,t){for(var r=e.layout.layoutAttributes,n=0;n<t.length;n++){var i=t[n],a=e.traces[i.type],o=a.layoutAttributes;o&&(i.subplot?P0.extendFlat(r[a.attributes.subplot.dflt],o):P0.extendFlat(r,o))}return r}var Zht={object:function(e,t){var r;return e==="layout"&&t===""?r="The layout argument":e[0]==="data"&&t===""?r="Trace "+e[1]+" in the data argument":r=Ub(e)+"key "+t,r+" must be linked to an object container"},array:function(e,t){var r;return e==="data"?r="The data argument":r=Ub(e)+"key "+t,r+" must be linked to an array container"},schema:function(e,t){return Ub(e)+"key "+t+" is not part of the schema"},unused:function(e,t,r){var n=Lg(r)?"container":"key";return Ub(e)+n+" "+t+" did not get coerced"},dynamic:function(e,t,r,n){return[Ub(e)+"key",t,"(set to '"+r+"')","got reset to","'"+n+"'","during defaults."].join(" ")},invisible:function(e,t){return(t?Ub(e)+"item "+t:"Trace "+e[1])+" got defaulted to be not visible"},value:function(e,t,r){return[Ub(e)+"key "+t,"is set to an invalid value ("+r+")"].join(" ")}};function Ub(e){return Vb(e)?"In data trace "+e[1]+", ":"In "+e+", "}function cd(e,t,r,n,i){r=r||"";var a,o;Vb(t)?(a=t[0],o=t[1]):(a=t,o=null);var s=Jht(r),l=Zht[e](t,s,n,i);return P0.log(l),{code:e,container:a,trace:o,path:r,astr:s,msg:l}}function Xht(e,t){var r=Qhe(t),n=r.keyMinusId,i=r.id;return n in e&&e[n]._isSubplotObj&&i?!0:t in e}function Yht(e,t){if(t in e)return e[t];var r=Qhe(t);return e[r.keyMinusId]}var Kht=P0.counterRegex("([a-z]+)");function Qhe(e){var t=e.match(Kht);return{keyMinusId:t&&t[1],id:t&&t[2]}}function Jht(e){if(!Vb(e))return String(e);for(var t="",r=0;r<e.length;r++){var n=e[r];typeof n=="number"?t=t.substr(0,t.length-1)+"["+n+"]":t+=n,r<e.length-1&&(t+=".")}return t}});var ide=ye((fnr,rde)=>{"use strict";var $ht=Mr(),VP=Ly();function Qht(e,t,r){var n=document.createElement("a"),i="download"in n,a=new Promise(function(o,s){var l,u;if(i)return l=VP.createBlob(e,r),u=VP.createObjectURL(l),n.href=u,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),VP.revokeObjectURL(u),l=null,o(t);if($ht.isSafari()){var c=r==="svg"?",":";base64,";return VP.octetStream(c+encodeURIComponent(e)),o(t)}s(new Error("download error"))});return a}rde.exports=Qht});var YN=ye((dnr,ade)=>{"use strict";var nde=Mr(),edt=XN(),tdt=ide(),hnr=Ly();function rdt(e,t){var r;return nde.isPlainObject(e)||(r=nde.getGraphDiv(e)),t=t||{},t.format=t.format||"png",t.width=t.width||null,t.height=t.height||null,t.imageDataOnly=!0,new Promise(function(n,i){r&&r._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),r&&(r._snapshotInProgress=!0);var a=edt(e,t),o=t.filename||e.fn||"newplot";o+="."+t.format.replace("-","."),a.then(function(s){return r&&(r._snapshotInProgress=!1),tdt(s,o,t.format)}).then(function(s){n(s)}).catch(function(s){r&&(r._snapshotInProgress=!1),i(s)})})}ade.exports=rdt});var cde=ye(KN=>{"use strict";var Cp=Mr(),Lp=Cp.isPlainObject,ode=_3(),sde=Xu(),idt=vl(),lde=Vs(),ude=ub().dfltConfig;KN.makeTemplate=function(e){e=Cp.isPlainObject(e)?e:Cp.getGraphDiv(e),e=Cp.extendDeep({_context:ude},{data:e.data,layout:e.layout}),sde.supplyDefaults(e);var t=e.data||[],r=e.layout||{};r._basePlotModules=e._fullLayout._basePlotModules,r._modules=e._fullLayout._modules;var n={data:{},layout:{}};t.forEach(function(d){var v={};HM(d,v,adt.bind(null,d));var x=Cp.coerce(d,{},idt,"type"),b=n.data[x];b||(b=n.data[x]=[]),b.push(v)}),HM(r,n.layout,ndt.bind(null,r)),delete n.layout.template;var i=r.template;if(Lp(i)){var a=i.layout,o,s,l,u,c,f;Lp(a)&&HP(a,n.layout);var h=i.data;if(Lp(h)){for(s in n.data)if(l=h[s],Array.isArray(l)){for(c=n.data[s],f=c.length,u=l.length,o=0;o<f;o++)HP(l[o%u],c[o]);for(o=f;o<u;o++)c.push(Cp.extendDeep({},l[o]))}for(s in h)s in n.data||(n.data[s]=Cp.extendDeep([],h[s]))}}return n};function HP(e,t){e=Cp.extendDeep({},e);var r=Object.keys(e).sort(),n,i;function a(c,f,h){if(Lp(f)&&Lp(c))HP(c,f);else if(Array.isArray(f)&&Array.isArray(c)){var d=lde.arrayTemplater({_template:e},h);for(i=0;i<f.length;i++){var v=f[i],x=d.newItem(v)._template;x&&HP(x,v)}var b=d.defaultItems();for(i=0;i<b.length;i++)f.push(b[i]._template);for(i=0;i<f.length;i++)delete f[i].templateitemname}}for(n=0;n<r.length;n++){var o=r[n],s=e[o];if(o in t?a(s,t[o],o):t[o]=s,GP(o)===o)for(var l in t){var u=GP(l);l!==u&&u===o&&!(l in e)&&a(s,t[l],o)}}}function GP(e){return e.replace(/[0-9]+$/,"")}function HM(e,t,r,n,i){var a=i&&r(i);for(var o in e){var s=e[o],l=I0(e,o,n),u=I0(e,o,i),c=r(u);if(!c){var f=GP(o);f!==o&&(u=I0(e,f,i),c=r(u))}if(!(a&&a===c)&&!(!c||c._noTemplating||c.valType==="data_array"||c.arrayOk&&Array.isArray(s)))if(!c.valType&&Lp(s))HM(s,t,r,l,u);else if(c._isLinkedToArray&&Array.isArray(s))for(var h=!1,d=0,v={},x=0;x<s.length;x++){var b=s[x];if(Lp(b)){var p=b.name;if(p)v[p]||(HM(b,t,r,I0(s,d,l),I0(s,d,u)),d++,v[p]=1);else if(!h){var E=lde.arrayDefaultKey(o),k=I0(e,E,n),A=I0(s,d,l);HM(b,t,r,A,I0(s,d,u));var L=Cp.nestedProperty(t,A),_=Cp.nestedProperty(t,k);_.set(L.get()),L.set(null),h=!0}}}else{var C=Cp.nestedProperty(t,l);C.set(s)}}}function ndt(e,t){return ode.getLayoutValObject(e,Cp.nestedProperty({},t).parts)}function adt(e,t){return ode.getTraceValObject(e,Cp.nestedProperty({},t).parts)}function I0(e,t,r){var n;return r?Array.isArray(e)?n=r+"["+t+"]":n=r+"."+t:n=t,n}KN.validateTemplate=function(e,t){var r=Cp.extendDeep({},{_context:ude,data:e.data,layout:e.layout}),n=r.layout||{};Lp(t)||(t=n.template||{});var i=t.layout,a=t.data,o=[];r.layout=n,r.layout.template=t,sde.supplyDefaults(r);var s=r._fullLayout,l=r._fullData,u={};function c(k,A){for(var L in k)if(L.charAt(0)!=="_"&&Lp(k[L])){var _=GP(L),C=[],M;for(M=0;M<A.length;M++)C.push(I0(k,L,A[M])),_!==L&&C.push(I0(k,_,A[M]));for(M=0;M<C.length;M++)u[C[M]]=1;c(k[L],C)}}function f(k,A){for(var L in k)if(L.indexOf("defaults")===-1&&Lp(k[L])){var _=I0(k,L,A);u[_]?f(k[L],_):o.push({code:"unused",path:_})}}if(Lp(i)?(c(s,["layout"]),f(i,"layout")):o.push({code:"layout"}),!Lp(a))o.push({code:"data"});else{for(var h={},d,v=0;v<l.length;v++){var x=l[v];d=x.type,h[d]=(h[d]||0)+1,x._fullInput._template||o.push({code:"missing",index:x.index,traceType:d})}for(d in a){var b=a[d].length,p=h[d]||0;b>p?o.push({code:"unused",traceType:d,templateCount:b,dataCount:p}):p>b&&o.push({code:"reused",traceType:d,templateCount:b,dataCount:p})}}function E(k,A){for(var L in k)if(L.charAt(0)!=="_"){var _=k[L],C=I0(k,L,A);Lp(_)?(Array.isArray(k)&&_._template===!1&&_.templateitemname&&o.push({code:"missing",path:C,templateitemname:_.templateitemname}),E(_,C)):Array.isArray(_)&&odt(_)&&E(_,C)}}if(E({data:l,layout:s},""),o.length)return o.map(sdt)};function odt(e){for(var t=0;t<e.length;t++)if(Lp(e[t]))return!0}function sdt(e){var t;switch(e.code){case"data":t="The template has no key data.";break;case"layout":t="The template has no key layout.";break;case"missing":e.path?t="There are no templates for item "+e.path+" with name "+e.templateitemname:t="There are no templates for trace "+e.index+", of type "+e.traceType+".";break;case"unused":e.path?t="The template item at "+e.path+" was not used in constructing the plot.":e.dataCount?t="Some of the templates of type "+e.traceType+" were not used. The template has "+e.templateCount+" traces, the data only has "+e.dataCount+" of this type.":t="The template has "+e.templateCount+" traces of type "+e.traceType+" but there are none in the data.";break;case"reused":t="Some of the templates of type "+e.traceType+" were used more than once. The template has "+e.templateCount+" traces, the data has "+e.dataCount+" of this type.";break}return e.msg=t,e}});var hde=ye(Sc=>{"use strict";var Hh=OP();Sc._doPlot=Hh._doPlot;Sc.newPlot=Hh.newPlot;Sc.restyle=Hh.restyle;Sc.relayout=Hh.relayout;Sc.redraw=Hh.redraw;Sc.update=Hh.update;Sc._guiRestyle=Hh._guiRestyle;Sc._guiRelayout=Hh._guiRelayout;Sc._guiUpdate=Hh._guiUpdate;Sc._storeDirectGUIEdit=Hh._storeDirectGUIEdit;Sc.react=Hh.react;Sc.extendTraces=Hh.extendTraces;Sc.prependTraces=Hh.prependTraces;Sc.addTraces=Hh.addTraces;Sc.deleteTraces=Hh.deleteTraces;Sc.moveTraces=Hh.moveTraces;Sc.purge=Hh.purge;Sc.addFrames=Hh.addFrames;Sc.deleteFrames=Hh.deleteFrames;Sc.animate=Hh.animate;Sc.setPlotConfig=Hh.setPlotConfig;var ldt=DS().getGraphDiv,udt=rP().eraseActiveShape;Sc.deleteActiveShape=function(e){return udt(ldt(e))};Sc.toImage=XN();Sc.validate=tde();Sc.downloadImage=YN();var fde=cde();Sc.makeTemplate=fde.makeTemplate;Sc.validateTemplate=fde.validateTemplate});var K3=ye((gnr,dde)=>{"use strict";var JN=Mr(),cdt=ba();dde.exports=function(t,r,n,i){var a=i("x"),o=i("y"),s,l=cdt.getComponentMethod("calendars","handleTraceDefaults");if(l(t,r,["x","y"],n),a){var u=JN.minRowLength(a);o?s=Math.min(u,JN.minRowLength(o)):(s=u,i("y0"),i("dy"))}else{if(!o)return 0;s=JN.minRowLength(o),i("x0"),i("dx")}return r._length=s,s}});var Pg=ye((mnr,gde)=>{"use strict";var vde=Mr().dateTick0,fdt=es(),hdt=fdt.ONEWEEK;function pde(e,t){return e%hdt===0?vde(t,1):vde(t,0)}gde.exports=function(t,r,n,i,a){if(a||(a={x:!0,y:!0}),a.x){var o=i("xperiod");o&&(i("xperiod0",pde(o,r.xcalendar)),i("xperiodalignment"))}if(a.y){var s=i("yperiod");s&&(i("yperiod0",pde(s,r.ycalendar)),i("yperiodalignment"))}}});var _de=ye((ynr,yde)=>{"use strict";var mde=["orientation","groupnorm","stackgaps"];yde.exports=function(t,r,n,i){var a=n._scatterStackOpts,o=i("stackgroup");if(o){var s=r.xaxis+r.yaxis,l=a[s];l||(l=a[s]={});var u=l[o],c=!1;u?u.traces.push(r):(u=l[o]={traceIndices:[],traces:[r]},c=!0);for(var f={orientation:r.x&&!r.y?"h":"v"},h=0;h<mde.length;h++){var d=mde[h],v=d+"Found";if(!u[v]){var x=t[d]!==void 0,b=d==="orientation";if((x||c)&&(u[d]=i(d,f[d]),b&&(u.fillDflt=u[d]==="h"?"tonextx":"tonexty"),x&&(u[v]=!0,!c&&(delete u.traces[0][d],b))))for(var p=0;p<u.traces.length-1;p++){var E=u.traces[p];E._input.fill!==E.fill&&(E.fill=u.fillDflt)}}}return u}}});var $p=ye((_nr,Tde)=>{"use strict";var xde=va(),bde=Dv().hasColorscale,wde=Uh(),ddt=lu();Tde.exports=function(t,r,n,i,a,o){var s=ddt.isBubble(t),l=(t.line||{}).color,u;if(o=o||{},l&&(n=l),a("marker.symbol"),a("marker.opacity",s?.7:1),a("marker.size"),o.noAngle||(a("marker.angle"),o.noAngleRef||a("marker.angleref"),o.noStandOff||a("marker.standoff")),a("marker.color",n),bde(t,"marker")&&wde(t,r,i,a,{prefix:"marker.",cLetter:"c"}),o.noSelect||(a("selected.marker.color"),a("unselected.marker.color"),a("selected.marker.size"),a("unselected.marker.size")),o.noLine||(l&&!Array.isArray(l)&&r.marker.color!==l?u=l:s?u=xde.background:u=xde.defaultLine,a("marker.line.color",u),bde(t,"marker.line")&&wde(t,r,i,a,{prefix:"marker.line.",cLetter:"c"}),a("marker.line.width",s?1:0)),s&&(a("marker.sizeref"),a("marker.sizemin"),a("marker.sizemode")),o.gradient){var c=a("marker.gradient.type");c!=="none"&&a("marker.gradient.color")}}});var R0=ye((xnr,Ade)=>{"use strict";var vdt=Mr().isArrayOrTypedArray,pdt=Dv().hasColorscale,gdt=Uh();Ade.exports=function(t,r,n,i,a,o){o||(o={});var s=(t.marker||{}).color;if(s&&s._inputArray&&(s=s._inputArray),a("line.color",n),pdt(t,"line"))gdt(t,r,i,a,{prefix:"line.",cLetter:"c"});else{var l=(vdt(s)?!1:s)||n;a("line.color",l)}a("line.width"),o.noDash||a("line.dash"),o.backoff&&a("line.backoff")}});var J3=ye((bnr,Sde)=>{"use strict";Sde.exports=function(t,r,n){var i=n("line.shape");i==="spline"&&n("line.smoothing")}});var D0=ye((wnr,Mde)=>{"use strict";var mdt=Mr();Mde.exports=function(e,t,r,n,i){i=i||{},n("textposition"),mdt.coerceFont(n,"textfont",i.font||r.font,i),i.noSelect||(n("selected.textfont.color"),n("unselected.textfont.color"))}});var Ig=ye((Tnr,kde)=>{"use strict";var jP=va(),Ede=Mr().isArrayOrTypedArray;function ydt(e){for(var t=jP.interpolate(e[0][1],e[1][1],.5),r=2;r<e.length;r++){var n=jP.interpolate(e[r-1][1],e[r][1],.5);t=jP.interpolate(t,n,e[r-1][0]/e[r][0])}return t}kde.exports=function(t,r,n,i,a){a||(a={});var o=!1;if(r.marker){var s=r.marker.color,l=(r.marker.line||{}).color;s&&!Ede(s)?o=s:l&&!Ede(l)&&(o=l)}var u;if(a.moduleHasFillgradient){var c=i("fillgradient.type");if(c!=="none"){i("fillgradient.start"),i("fillgradient.stop");var f=i("fillgradient.colorscale");f&&(u=ydt(f))}}i("fillcolor",jP.addOpacity((r.line||{}).color||o||u||n,.5))}});var Ide=ye((Anr,Pde)=>{"use strict";var Cde=Mr(),_dt=ba(),xdt=Uc(),bdt=Sm(),$3=lu(),wdt=K3(),Tdt=Pg(),Adt=_de(),Sdt=$p(),Mdt=R0(),Lde=J3(),Edt=D0(),kdt=Ig(),Cdt=Mr().coercePattern;Pde.exports=function(t,r,n,i){function a(d,v){return Cde.coerce(t,r,xdt,d,v)}var o=wdt(t,r,i,a);if(o||(r.visible=!1),!!r.visible){Tdt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("zorder");var s=Adt(t,r,i,a);i.scattermode==="group"&&r.orientation===void 0&&a("orientation","v");var l=!s&&o<bdt.PTS_LINESONLY?"lines+markers":"lines";a("text"),a("hovertext"),a("mode",l),$3.hasMarkers(r)&&Sdt(t,r,n,i,a,{gradient:!0}),$3.hasLines(r)&&(Mdt(t,r,n,i,a,{backoff:!0}),Lde(t,r,a),a("connectgaps"),a("line.simplify")),$3.hasText(r)&&(a("texttemplate"),Edt(t,r,i,a));var u=[];($3.hasMarkers(r)||$3.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),u.push("points")),a("fill",s?s.fillDflt:"none"),r.fill!=="none"&&(kdt(t,r,n,a,{moduleHasFillgradient:!0}),$3.hasLines(r)||Lde(t,r,a),Cdt(a,"fillpattern",r.fillcolor,!1));var c=(r.line||{}).color,f=(r.marker||{}).color;(r.fill==="tonext"||r.fill==="toself")&&u.push("fills"),a("hoveron",u.join("+")||"points"),r.hoveron!=="fills"&&a("hovertemplate");var h=_dt.getComponentMethod("errorbars","supplyDefaults");h(t,r,c||f||n,{axis:"y"}),h(t,r,c||f||n,{axis:"x",inherit:"y"}),Cde.coerceSelectionMarkerOpacity(r,a)}}});var Hb=ye((Snr,Rde)=>{"use strict";var Ldt=Bb().getAxisGroup;Rde.exports=function(t,r,n,i,a){var o=r.orientation,s=r[{v:"x",h:"y"}[o]+"axis"],l=Ldt(n,s)+o,u=n._alignmentOpts||{},c=i("alignmentgroup"),f=u[l];f||(f=u[l]={});var h=f[c];h?h.traces.push(r):h=f[c]={traces:[r],alignmentIndex:Object.keys(f).length,offsetGroups:{}};var d=i("offsetgroup")||"",v=h.offsetGroups,x=v[d];r._offsetIndex=0,(a!=="group"||d)&&(x||(x=v[d]={offsetIndex:Object.keys(v).length}),r._offsetIndex=x.offsetIndex)}});var $N=ye((Mnr,Dde)=>{"use strict";var Pdt=Mr(),Idt=Hb(),Rdt=Uc();Dde.exports=function(t,r){var n,i,a,o=r.scattermode;function s(h){return Pdt.coerce(i._input,i,Rdt,h)}if(r.scattermode==="group")for(a=0;a<t.length;a++)i=t[a],i.type==="scatter"&&(n=i._input,Idt(n,i,r,s,o));for(a=0;a<t.length;a++){var l=t[a];if(l.type==="scatter"){var u=l.fill;if(!(u==="none"||u==="toself")&&(l.opacity=void 0,u==="tonexty"||u==="tonextx"))for(var c=a-1;c>=0;c--){var f=t[c];if(f.type==="scatter"&&f.xaxis===l.xaxis&&f.yaxis===l.yaxis){f.opacity=void 0;break}}}}}});var Fde=ye((Enr,zde)=>{"use strict";var Ddt=Mr(),zdt=V6();zde.exports=function(e,t){function r(i,a){return Ddt.coerce(e,t,zdt,i,a)}var n=t.barmode==="group";t.scattermode==="group"&&r("scattergap",n?t.bargap:.2)}});var Rg=ye((knr,Ode)=>{"use strict";var Fdt=uo(),qde=Mr(),qdt=qde.dateTime2ms,WP=qde.incrementMonth,Odt=es(),Bdt=Odt.ONEAVGMONTH;Ode.exports=function(t,r,n,i){if(r.type!=="date")return{vals:i};var a=t[n+"periodalignment"];if(!a)return{vals:i};var o=t[n+"period"],s;if(Fdt(o)){if(o=+o,o<=0)return{vals:i}}else if(typeof o=="string"&&o.charAt(0)==="M"){var l=+o.substring(1);if(l>0&&Math.round(l)===l)s=l;else return{vals:i}}for(var u=r.calendar,c=a==="start",f=a==="end",h=t[n+"period0"],d=qdt(h,u)||0,v=[],x=[],b=[],p=i.length,E=0;E<p;E++){var k=i[E],A,L,_;if(s){for(A=Math.round((k-d)/(s*Bdt)),_=WP(d,s*A,u);_>k;)_=WP(_,-s,u);for(;_<=k;)_=WP(_,s,u);L=WP(_,-s,u)}else{for(A=Math.round((k-d)/o),_=d+A*o;_>k;)_-=o;for(;_<=k;)_+=o;L=_-o}v[E]=c?L:f?_:(L+_)/2,x[E]=L,b[E]=_}return{vals:v,starts:x,ends:b}}});var z0=ye((Cnr,Nde)=>{"use strict";var QN=Dv().hasColorscale,eU=zv(),Bde=lu();Nde.exports=function(t,r){Bde.hasLines(r)&&QN(r,"line")&&eU(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),Bde.hasMarkers(r)&&(QN(r,"marker")&&eU(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),QN(r,"marker.line")&&eU(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}});var km=ye((Lnr,Ude)=>{"use strict";var Df=Mr();Ude.exports=function(t,r){for(var n=0;n<t.length;n++)t[n].i=n;Df.mergeArray(r.text,t,"tx"),Df.mergeArray(r.texttemplate,t,"txt"),Df.mergeArray(r.hovertext,t,"htx"),Df.mergeArray(r.customdata,t,"data"),Df.mergeArray(r.textposition,t,"tp"),r.textfont&&(Df.mergeArrayCastPositive(r.textfont.size,t,"ts"),Df.mergeArray(r.textfont.color,t,"tc"),Df.mergeArray(r.textfont.family,t,"tf"),Df.mergeArray(r.textfont.weight,t,"tw"),Df.mergeArray(r.textfont.style,t,"ty"),Df.mergeArray(r.textfont.variant,t,"tv"),Df.mergeArray(r.textfont.textcase,t,"tC"),Df.mergeArray(r.textfont.lineposition,t,"tE"),Df.mergeArray(r.textfont.shadow,t,"tS"));var i=r.marker;if(i){Df.mergeArrayCastPositive(i.size,t,"ms"),Df.mergeArrayCastPositive(i.opacity,t,"mo"),Df.mergeArray(i.symbol,t,"mx"),Df.mergeArray(i.angle,t,"ma"),Df.mergeArray(i.standoff,t,"mf"),Df.mergeArray(i.color,t,"mc");var a=i.line;i.line&&(Df.mergeArray(a.color,t,"mlc"),Df.mergeArrayCastPositive(a.width,t,"mlw"));var o=i.gradient;o&&o.type!=="none"&&(Df.mergeArray(o.type,t,"mgt"),Df.mergeArray(o.color,t,"mgc"))}}});var F0=ye((Pnr,Hde)=>{"use strict";var Vde=Mr();Hde.exports=function(t,r){Vde.isArrayOrTypedArray(r.selectedpoints)&&Vde.tagSelected(t,r)}});var q0=ye((Inr,Kde)=>{"use strict";var Gde=uo(),rU=Mr(),GM=Qa(),jde=Rg(),tU=es().BADNUM,iU=lu(),Ndt=z0(),Udt=km(),Vdt=F0();function Hdt(e,t){var r=e._fullLayout,n=t._xA=GM.getFromId(e,t.xaxis||"x","x"),i=t._yA=GM.getFromId(e,t.yaxis||"y","y"),a=n.makeCalcdata(t,"x"),o=i.makeCalcdata(t,"y"),s=jde(t,n,"x",a),l=jde(t,i,"y",o),u=s.vals,c=l.vals,f=t._length,h=new Array(f),d=t.ids,v=nU(t,r,n,i),x=!1,b,p,E,k,A,L;Xde(r,t);var _="x",C="y",M;if(v)rU.pushUnique(v.traceIndices,t.index),b=v.orientation==="v",b?(C="s",M="x"):(_="s",M="y"),A=v.stackgaps==="interpolate";else{var g=Zde(t,f);Wde(e,t,n,i,u,c,g)}var P=!!t.xperiodalignment,T=!!t.yperiodalignment;for(p=0;p<f;p++){var F=h[p]={},q=Gde(u[p]),V=Gde(c[p]);q&&V?(F[_]=u[p],F[C]=c[p],P&&(F.orig_x=a[p],F.xEnd=s.ends[p],F.xStart=s.starts[p]),T&&(F.orig_y=o[p],F.yEnd=l.ends[p],F.yStart=l.starts[p])):v&&(b?q:V)?(F[M]=b?u[p]:c[p],F.gap=!0,A?(F.s=tU,x=!0):F.s=0):F[_]=F[C]=tU,d&&(F.id=String(d[p]))}if(Udt(h,t),Ndt(e,t),Vdt(h,t),v){for(p=0;p<h.length;)h[p][M]===tU?h.splice(p,1):p++;if(rU.sort(h,function(N,W){return N[M]-W[M]||N.i-W.i}),x){for(p=0;p<h.length-1&&h[p].gap;)p++;for(L=h[p].s,L||(L=h[p].s=0),E=0;E<p;E++)h[E].s=L;for(k=h.length-1;k>p&&h[k].gap;)k--;for(L=h[k].s,E=h.length-1;E>k;E--)h[E].s=L;for(;p<k;)if(p++,h[p].gap){for(E=p+1;h[E].gap;)E++;for(var H=h[p-1][M],X=h[p-1].s,G=(h[E].s-X)/(h[E][M]-H);p<E;)h[p].s=X+(h[p][M]-H)*G,p++}}}return h}function Wde(e,t,r,n,i,a,o){var s=t._length,l=e._fullLayout,u=r._id,c=n._id,f=l._firstScatter[Yde(t)]===t.uid,h=(nU(t,l,r,n)||{}).orientation,d=t.fill;r._minDtick=0,n._minDtick=0;var v={padded:!0},x={padded:!0};o&&(v.ppad=x.ppad=o);var b=s<2||i[0]!==i[s-1]||a[0]!==a[s-1];b&&(d==="tozerox"||d==="tonextx"&&(f||h==="h"))?v.tozero=!0:!(t.error_y||{}).visible&&(d==="tonexty"||d==="tozeroy"||!iU.hasMarkers(t)&&!iU.hasText(t))&&(v.padded=!1,v.ppad=0),b&&(d==="tozeroy"||d==="tonexty"&&(f||h==="v"))?x.tozero=!0:(d==="tonextx"||d==="tozerox")&&(x.padded=!1),u&&(t._extremes[u]=GM.findExtremes(r,i,v)),c&&(t._extremes[c]=GM.findExtremes(n,a,x))}function Zde(e,t){if(iU.hasMarkers(e)){var r=e.marker,n=1.6*(e.marker.sizeref||1),i;if(e.marker.sizemode==="area"?i=function(u){return Math.max(Math.sqrt((u||0)/n),3)}:i=function(u){return Math.max((u||0)/n,3)},rU.isArrayOrTypedArray(r.size)){var a={type:"linear"};GM.setConvert(a);for(var o=a.makeCalcdata(e.marker,"size"),s=new Array(t),l=0;l<t;l++)s[l]=i(o[l]);return s}else return i(r.size)}}function Xde(e,t){var r=Yde(t),n=e._firstScatter;n[r]||(n[r]=t.uid)}function Yde(e){var t=e.stackgroup;return e.xaxis+e.yaxis+e.type+(t?"-"+t:"")}function nU(e,t,r,n){var i=e.stackgroup;if(i){var a=t._scatterStackOpts[r._id+n._id][i],o=a.orientation==="v"?n:r;if(o.type==="linear"||o.type==="log")return a}}Kde.exports={calc:Hdt,calcMarkerSize:Zde,calcAxisExpansion:Wde,setFirstScatter:Xde,getStackOpts:nU}});var $de=ye((Rnr,Jde)=>{"use strict";Jde.exports=ZP;var Gdt=Mr().distinctVals;function ZP(e,t){this.traces=e,this.sepNegVal=t.sepNegVal,this.overlapNoMerge=t.overlapNoMerge;for(var r=1/0,n=t.posAxis._id.charAt(0),i=[],a=0;a<e.length;a++){for(var o=e[a],s=0;s<o.length;s++){var l=o[s],u=l.p;u===void 0&&(u=l[n]),u!==void 0&&i.push(u)}o[0]&&o[0].width1&&(r=Math.min(o[0].width1,r))}this.positions=i;var c=Gdt(i);this.distinctPositions=c.vals,c.vals.length===1&&r!==1/0?this.minDiff=r:this.minDiff=Math.min(c.minDiff,r);var f=(t.posAxis||{}).type;(f==="category"||f==="multicategory")&&(this.minDiff=1),this.binWidth=this.minDiff,this.bins={}}ZP.prototype.put=function(t,r,n){var i=this.getLabel(t,r,n),a=this.bins[i]||0;return this.bins[i]=a+n,a};ZP.prototype.get=function(t,r,n){var i=this.getLabel(t,r,n);return this.bins[i]||0};ZP.prototype.getLabel=function(t,r,n){var i=n<0&&this.sepNegVal?"v":"^",a=this.overlapNoMerge?t:Math.round(t/this.binWidth);return i+a+"g"+r}});var Gb=ye((Dnr,rve)=>{"use strict";var O0=uo(),g_=Mr().isArrayOrTypedArray,Q3=es().BADNUM,jdt=ba(),jM=Qa(),Wdt=Bb().getAxisGroup,XP=$de();function Zdt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;u<a.length;u++){var c=a[u];if(c.visible===!0&&jdt.traceIs(c,"bar")&&c.xaxis===r._id&&c.yaxis===n._id&&(c.orientation==="h"?s.push(o[u]):l.push(o[u]),c._computePh))for(var f=e.calcdata[u],h=0;h<f.length;h++)typeof f[h].ph0=="function"&&(f[h].ph0=f[h].ph0()),typeof f[h].ph1=="function"&&(f[h].ph1=f[h].ph1())}var d={xCat:r.type==="category"||r.type==="multicategory",yCat:n.type==="category"||n.type==="multicategory",mode:i.barmode,norm:i.barnorm,gap:i.bargap,groupgap:i.bargroupgap};oU(e,r,n,l,d),oU(e,n,r,s,d)}function oU(e,t,r,n,i){if(n.length){var a,o,s,l,u;switch(Kdt(r,n),i.mode){case"overlay":aU(e,t,r,n,i);break;case"group":for(a=[],o=[],s=0;s<n.length;s++)l=n[s],u=l[0].trace,u.offset===void 0?o.push(l):a.push(l);o.length&&Jdt(e,t,r,o,i),a.length&&aU(e,t,r,a,i);break;case"stack":case"relative":for(a=[],o=[],s=0;s<n.length;s++)l=n[s],u=l[0].trace,u.base===void 0?o.push(l):a.push(l);Ydt(o),o.length&&$dt(e,t,r,o,i),a.length&&aU(e,t,r,a,i);break}Xdt(n),nvt(n,t)}}function Xdt(e){var t,r,n,i,a,o,s;for(t=0;t<e.length;t++)r=e[t],n=r[0].trace,i=r[0].t,i.cornerradiusvalue===void 0&&(a=n.marker?n.marker.cornerradius:void 0,a!==void 0&&(o=O0(a)?+a:+a.slice(0,-1),s=O0(a)?"px":"%",i.cornerradiusvalue=o,i.cornerradiusform=s))}function Ydt(e){if(!(e.length<2)){var t,r,n,i,a,o,s;for(t=0;t<e.length&&(r=e[t],n=r[0].trace,a=n.marker?n.marker.cornerradius:void 0,a===void 0);t++);if(a!==void 0)for(o=O0(a)?+a:+a.slice(0,-1),s=O0(a)?"px":"%",t=0;t<e.length;t++)r=e[t],i=r[0].t,i.cornerradiusvalue=o,i.cornerradiusform=s}}function Kdt(e,t){var r,n;for(r=0;r<t.length;r++){var i=t[r],a=i[0].trace,o=a.type==="funnel"?a._base:a.base,s,l=a.orientation==="h"?a.xcalendar:a.ycalendar,u=e.type==="category"||e.type==="multicategory"?function(){return null}:e.d2c;if(g_(o)){for(n=0;n<Math.min(o.length,i.length);n++)s=u(o[n],0,l),O0(s)?(i[n].b=+s,i[n].hasB=1):i[n].b=0;for(;n<i.length;n++)i[n].b=0}else{s=u(o,0,l);var c=O0(s);for(s=c?s:0,n=0;n<i.length;n++)i[n].b=s,c&&(i[n].hasB=1)}}}function aU(e,t,r,n,i){for(var a=0;a<n.length;a++){var o=n[a],s=new XP([o],{posAxis:t,sepNegVal:!1,overlapNoMerge:!i.norm});sU(e,t,s,i),i.norm?(tve(s),lU(r,s,i)):eve(r,s)}}function Jdt(e,t,r,n,i){var a=new XP(n,{posAxis:t,sepNegVal:!1,overlapNoMerge:!i.norm});sU(e,t,a,i),rvt(a,t),i.norm?(tve(a),lU(r,a,i)):eve(r,a)}function $dt(e,t,r,n,i){var a=new XP(n,{posAxis:t,sepNegVal:i.mode==="relative",overlapNoMerge:!(i.norm||i.mode==="stack"||i.mode==="relative")});sU(e,t,a,i),tvt(r,a,i);for(var o=0;o<n.length;o++)for(var s=n[o],l=s[0].t.offsetindex,u=0;u<s.length;u++){var c=s[u];if(c.s!==Q3){var f=c.b+c.s===a.get(c.p,l,c.s);f&&(c._outmost=!0)}}i.norm&&lU(r,a,i)}function sU(e,t,r,n){var i=e._fullLayout,a=r.positions,o=r.distinctPositions,s=r.minDiff,l=r.traces,u=l.length,c=a.length!==o.length,f=s*(1-n.gap),h,d,v,x;if(t._id==="angularaxis")h=f,d=h*(1-(n.groupgap||0)),v=-d/2;else{var b=Wdt(i,t._id)+l[0][0].trace.orientation;x=i._alignmentOpts[b]||{}}for(var p=0;p<u;p++){var E=l[p],k=E[0].trace;if(t._id!=="angularaxis"){var A=x[k.alignmentgroup]||{},L=Object.keys(A.offsetGroups||{}).length;L?h=f/L:h=c?f/u:f,d=h*(1-(n.groupgap||0)),L?v=((2*k._offsetIndex+1-L)*h-d)/2:v=c?((2*p+1-u)*h-d)/2:-d/2}var _=E[0].t;_.barwidth=d,_.offsetindex=k._offsetIndex||0,_.poffset=v,_.bargroupwidth=f,_.bardelta=s}r.binWidth=l[0][0].t.barwidth/100,Qdt(r),evt(t,r),t._id==="angularaxis"?Qde(t,r):Qde(t,r,c)}function Qdt(e){var t=e.traces,r,n;for(r=0;r<t.length;r++){var i=t[r],a=i[0],o=a.trace,s=a.t,l=o._offset||o.offset,u=s.poffset,c;if(g_(l)){for(c=Array.prototype.slice.call(l,0,i.length),n=0;n<c.length;n++)O0(c[n])||(c[n]=u);for(n=c.length;n<i.length;n++)c.push(u);s.poffset=c}else l!==void 0&&(s.poffset=l);var f=o._width||o.width,h=s.barwidth;if(g_(f)){var d=Array.prototype.slice.call(f,0,i.length);for(n=0;n<d.length;n++)O0(d[n])||(d[n]=h);for(n=d.length;n<i.length;n++)d.push(h);if(s.barwidth=d,l===void 0){for(c=[],n=0;n<i.length;n++)c.push(u+(h-d[n])/2);s.poffset=c}}else f!==void 0&&(s.barwidth=f,l===void 0&&(s.poffset=u+(h-f)/2))}}function evt(e,t){for(var r=t.traces,n=eT(e),i=0;i<r.length;i++)for(var a=r[i],o=a[0].t,s=o.poffset,l=g_(s),u=o.barwidth,c=g_(u),f=0;f<a.length;f++){var h=a[f],d=h.w=c?u[f]:u;h.p===void 0&&(h.p=h[n],h["orig_"+n]=h[n]);var v=(l?s[f]:s)+d/2;h[n]=h.p+v}}function Qde(e,t,r){var n=t.traces,i=t.minDiff,a=i/2;jM.minDtick(e,t.minDiff,t.distinctPositions[0],r);for(var o=0;o<n.length;o++){var s=n[o],l=s[0],u=l.trace,c=[],f,h,d,v;for(v=0;v<s.length;v++)f=s[v],h=f.p-a,d=f.p+a,c.push(h,d);if(u.width||u.offset){var x=l.t,b=x.poffset,p=x.barwidth,E=g_(b),k=g_(p);for(v=0;v<s.length;v++){f=s[v];var A=E?b[v]:b,L=k?p[v]:p;h=f.p+A,d=h+L,c.push(h,d)}}u._extremes[e._id]=jM.findExtremes(e,c,{padded:!1})}}function eve(e,t){for(var r=t.traces,n=eT(e),i=0;i<r.length;i++){for(var a=r[i],o=a[0].trace,s=o.type==="scatter",l=o.orientation==="v",u=[],c=!1,f=0;f<a.length;f++){var h=a[f],d=s?0:h.b,v=s?l?h.y:h.x:d+h.s;h[n]=v,u.push(v),h.hasB&&u.push(d),(!h.hasB||!h.b)&&(c=!0)}o._extremes[e._id]=jM.findExtremes(e,u,{tozero:c,padded:!0})}}function tvt(e,t,r){var n=eT(e),i=t.traces,a,o,s,l,u,c,f;for(l=0;l<i.length;l++)if(a=i[l],o=a[0].trace,o.type==="funnel")for(f=a[0].t.offsetindex,u=0;u<a.length;u++)c=a[u],c.s!==Q3&&t.put(c.p,f,-.5*c.s);for(l=0;l<i.length;l++){a=i[l],o=a[0].trace,s=o.type==="funnel",f=o.type==="barpolar"?0:a[0].t.offsetindex;var h=[];for(u=0;u<a.length;u++)if(c=a[u],c.s!==Q3){var d;s?d=c.s:d=c.s+c.b;var v=t.put(c.p,f,d),x=v+d;c.b=v,c[n]=x,r.norm||(h.push(x),c.hasB&&h.push(v))}r.norm||(o._extremes[e._id]=jM.findExtremes(e,h,{tozero:!0,padded:!0}))}}function tve(e){for(var t=e.traces,r=0;r<t.length;r++)for(var n=t[r],i=n[0].t.offsetindex,a=0;a<n.length;a++){var o=n[a];o.s!==Q3&&e.put(o.p,i,o.b+o.s)}}function rvt(e,t){for(var r=e.traces,n=0;n<r.length;n++){var i=r[n],a=i[0].trace,o=i[0].t.offsetindex;if(a.base===void 0)for(var s=new XP([i],{posAxis:t,sepNegVal:!0,overlapNoMerge:!0}),l=0;l<i.length;l++){var u=i[l];if(u.p!==Q3){var c=s.put(u.p,o,u.b+u.s);c&&(u.b=c)}}}}function lU(e,t,r){var n=t.traces,i=eT(e),a=r.norm==="fraction"?1:100,o=a/1e9,s=e.l2c(e.c2l(0)),l=r.mode==="stack"?a:s;function u(_){return O0(e.c2l(_))&&(_<s-o||_>l+o||!O0(s))}for(var c=0;c<n.length;c++){for(var f=n[c],h=f[0].t.offsetindex,d=f[0].trace,v=[],x=!1,b=!1,p=0;p<f.length;p++){var E=f[p];if(E.s!==Q3){var k=Math.abs(a/t.get(E.p,h,E.s));E.b*=k,E.s*=k;var A=E.b,L=A+E.s;E[i]=L,v.push(L),b=b||u(L),E.hasB&&(v.push(A),b=b||u(A)),(!E.hasB||!E.b)&&(x=!0)}}d._extremes[e._id]=jM.findExtremes(e,v,{tozero:x,padded:b})}}function ivt(e,t,r,n){for(var i=eT(n),a=0;a<e.length;a++)for(var o=e[a],s=0;s<o.length;s++){var l=o[s],u=l[i];l._sMin=t[u],l._sMax=r[u]}}function nvt(e,t){var r=eT(t),n={},i,a,o,s=1/0,l=-1/0;for(i=0;i<e.length;i++)for(o=e[i],a=0;a<o.length;a++){var u=o[a].p;O0(u)&&(s=Math.min(s,u),l=Math.max(l,u))}var c=1e4/(l-s),f=n.round=function(M){return String(Math.round(c*(M-s)))},h={},d={},v=e.some(function(M){var g=M[0].trace;return"marker"in g&&g.marker.cornerradius});for(i=0;i<e.length;i++){o=e[i],o[0].t.extents=n;var x=o[0].t.poffset,b=g_(x);for(a=0;a<o.length;a++){var p=o[a],E=p[r]-p.w/2;if(O0(E)){var k=p[r]+p.w/2,A=f(p.p);n[A]?n[A]=[Math.min(E,n[A][0]),Math.max(k,n[A][1])]:n[A]=[E,k]}if(p.p0=p.p+(b?x[a]:x),p.p1=p.p0+p.w,p.s0=p.b,p.s1=p.s0+p.s,v){var L=Math.min(p.s0,p.s1)||0,_=Math.max(p.s0,p.s1)||0,C=p[r];h[C]=C in h?Math.min(h[C],L):L,d[C]=C in d?Math.max(d[C],_):_}}}v&&ivt(e,h,d,t)}function eT(e){return e._id.charAt(0)}rve.exports={crossTraceCalc:Zdt,setGroupPositions:oU}});var ove=ye((znr,ave)=>{"use strict";var ive=q0(),nve=Gb().setGroupPositions;function avt(e,t){for(var r=t.xaxis,n=t.yaxis,i=e._fullLayout,a=e._fullData,o=e.calcdata,s=[],l=[],u=0;u<a.length;u++){var c=a[u];c.visible===!0&&c.type==="scatter"&&c.xaxis===r._id&&c.yaxis===n._id&&(c.orientation==="h"?s.push(o[u]):c.orientation==="v"&&l.push(o[u]))}var f={mode:i.scattermode,gap:i.scattergap};nve(e,r,n,l,f),nve(e,n,r,s,f)}ave.exports=function(t,r){t._fullLayout.scattermode==="group"&&avt(t,r);var n=r.xaxis,i=r.yaxis,a=n._id+i._id,o=t._fullLayout._scatterStackOpts[a];if(o){var s=t.calcdata,l,u,c,f,h,d,v,x,b,p,E,k,A,L,_;for(var C in o){p=o[C];var M=p.traceIndices;if(M.length){for(E=p.stackgaps==="interpolate",k=p.groupnorm,p.orientation==="v"?(A="x",L="y"):(A="y",L="x"),_=new Array(M.length),l=0;l<_.length;l++)_[l]=!1;d=s[M[0]];var g=new Array(d.length);for(l=0;l<d.length;l++)g[l]=d[l][A];for(l=1;l<M.length;l++){for(h=s[M[l]],u=c=0;u<h.length;u++){for(v=h[u][A];v>g[c]&&c<g.length;c++)uU(h,u,g[c],l,_,E,A),u++;if(v!==g[c]){for(f=0;f<l;f++)uU(s[M[f]],c,v,f,_,E,A);g.splice(c,0,v)}c++}for(;c<g.length;c++)uU(h,u,g[c],l,_,E,A),u++}var P=g.length;for(u=0;u<d.length;u++){for(x=d[u][L]=d[u].s,l=1;l<M.length;l++)h=s[M[l]],h[0].trace._rawLength=h[0].trace._length,h[0].trace._length=P,x+=h[u].s,h[u][L]=x;if(k)for(b=(k==="fraction"?x:x/100)||1,l=0;l<M.length;l++){var T=s[M[l]][u];T[L]/=b,T.sNorm=T.s/b}}for(l=0;l<M.length;l++){h=s[M[l]];var F=h[0].trace,q=ive.calcMarkerSize(F,F._rawLength),V=Array.isArray(q);if(q&&_[l]||V){var H=q;for(q=new Array(P),u=0;u<P;u++)q[u]=h[u].gap?0:V?H[h[u].i]:H}var X=new Array(P),G=new Array(P);for(u=0;u<P;u++)X[u]=h[u].x,G[u]=h[u].y;ive.calcAxisExpansion(t,F,n,i,X,G,q),h[0].t.orientation=p.orientation}}}}};function uU(e,t,r,n,i,a,o){i[n]=!0;var s={i:null,gap:!0,s:0};if(s[o]=r,e.splice(t,0,s),t&&r===e[t-1][o]){var l=e[t-1];s.s=l.s,s.i=l.i,s.gap=l.gap}else a&&(s.s=ovt(e,t,r,o));t||(e[0].t=e[1].t,e[0].trace=e[1].trace,delete e[1].t,delete e[1].trace)}function ovt(e,t,r,n){var i=e[t-1],a=e[t+1];return a?i?i.s+(a.s-i.s)*(r-i[n])/(a[n]-i[n]):a.s:i.s}});var fU=ye((Fnr,hve)=>{"use strict";var svt=ao(),cve=es(),WM=cve.BADNUM,fve=cve.LOG_CLIP,sve=fve+.5,lve=fve-.5,YP=Mr(),lvt=YP.segmentsIntersect,uve=YP.constrain,cU=Sm();hve.exports=function(t,r){var n=r.trace||{},i=r.xaxis,a=r.yaxis,o=i.type==="log",s=a.type==="log",l=i._length,u=a._length,c=r.backoff,f=n.marker,h=r.connectGaps,d=r.baseTolerance,v=r.shape,x=v==="linear",b=n.fill&&n.fill!=="none",p=[],E=cU.minTolerance,k=t.length,A=new Array(k),L=0,_,C,M,g,P,T,F,q,V,H,X,G,N,W,re,ae;function _e(ut){var Ne=t[ut];if(!Ne)return!1;var Ye=r.linearized?i.l2p(Ne.x):i.c2p(Ne.x),Ve=r.linearized?a.l2p(Ne.y):a.c2p(Ne.y);if(Ye===WM){if(o&&(Ye=i.c2p(Ne.x,!0)),Ye===WM)return!1;s&&Ve===WM&&(Ye*=Math.abs(i._m*u*(i._m>0?sve:lve)/(a._m*l*(a._m>0?sve:lve)))),Ye*=1e3}if(Ve===WM){if(s&&(Ve=a.c2p(Ne.y,!0)),Ve===WM)return!1;Ve*=1e3}return[Ye,Ve]}function Me(ut,Ne,Ye,Ve){var Xe=Ye-ut,ht=Ve-Ne,Le=.5-ut,xe=.5-Ne,Se=Xe*Xe+ht*ht,lt=Xe*Le+ht*xe;if(lt>0&&lt<Se){var Gt=Le*ht-xe*Xe;if(Gt*Gt<Se)return!0}}var ke,ge;function ie(ut,Ne){var Ye=ut[0]/l,Ve=ut[1]/u,Xe=Math.max(0,-Ye,Ye-1,-Ve,Ve-1);return Xe&&ke!==void 0&&Me(Ye,Ve,ke,ge)&&(Xe=0),Xe&&Ne&&Me(Ye,Ve,Ne[0]/l,Ne[1]/u)&&(Xe=0),(1+cU.toleranceGrowth*Xe)*d}function Te(ut,Ne){var Ye=ut[0]-Ne[0],Ve=ut[1]-Ne[1];return Math.sqrt(Ye*Ye+Ve*Ve)}var Ee=cU.maxScreensAway,Ae=-l*Ee,ze=l*(1+Ee),Ce=-u*Ee,me=u*(1+Ee),Re=[[Ae,Ce,ze,Ce],[ze,Ce,ze,me],[ze,me,Ae,me],[Ae,me,Ae,Ce]],ce,Ge,nt,ct,qt,rt;function ot(ut,Ne){for(var Ye=[],Ve=0,Xe=0;Xe<4;Xe++){var ht=Re[Xe],Le=lvt(ut[0],ut[1],Ne[0],Ne[1],ht[0],ht[1],ht[2],ht[3]);Le&&(!Ve||Math.abs(Le.x-Ye[0][0])>1||Math.abs(Le.y-Ye[0][1])>1)&&(Le=[Le.x,Le.y],Ve&&Te(Le,ut)<Te(Ye[0],ut)?Ye.unshift(Le):Ye.push(Le),Ve++)}return Ye}function Rt(ut){if(ut[0]<Ae||ut[0]>ze||ut[1]<Ce||ut[1]>me)return[uve(ut[0],Ae,ze),uve(ut[1],Ce,me)]}function kt(ut,Ne){if(ut[0]===Ne[0]&&(ut[0]===Ae||ut[0]===ze)||ut[1]===Ne[1]&&(ut[1]===Ce||ut[1]===me))return!0}function Ct(ut,Ne){var Ye=[],Ve=Rt(ut),Xe=Rt(Ne);return Ve&&Xe&&kt(Ve,Xe)||(Ve&&Ye.push(Ve),Xe&&Ye.push(Xe)),Ye}function Yt(ut,Ne,Ye){return function(Ve,Xe){var ht=Rt(Ve),Le=Rt(Xe),xe=[];if(ht&&Le&&kt(ht,Le))return xe;ht&&xe.push(ht),Le&&xe.push(Le);var Se=2*YP.constrain((Ve[ut]+Xe[ut])/2,Ne,Ye)-((ht||Ve)[ut]+(Le||Xe)[ut]);if(Se){var lt;ht&&Le?lt=Se>0==ht[ut]>Le[ut]?ht:Le:lt=ht||Le,lt[ut]+=Se}return xe}}var xr;v==="linear"||v==="spline"?xr=ot:v==="hv"||v==="vh"?xr=Ct:v==="hvh"?xr=Yt(0,Ae,ze):v==="vhv"&&(xr=Yt(1,Ce,me));function er(ut,Ne){var Ye=Ne[0]-ut[0],Ve=(Ne[1]-ut[1])/Ye,Xe=(ut[1]*Ne[0]-Ne[1]*ut[0])/Ye;return Xe>0?[Ve>0?Ae:ze,me]:[Ve>0?ze:Ae,Ce]}function Ke(ut){var Ne=ut[0],Ye=ut[1],Ve=Ne===A[L-1][0],Xe=Ye===A[L-1][1];if(!(Ve&&Xe))if(L>1){var ht=Ne===A[L-2][0],Le=Ye===A[L-2][1];Ve&&(Ne===Ae||Ne===ze)&&ht?Le?L--:A[L-1]=ut:Xe&&(Ye===Ce||Ye===me)&&Le?ht?L--:A[L-1]=ut:A[L++]=ut}else A[L++]=ut}function xt(ut){A[L-1][0]!==ut[0]&&A[L-1][1]!==ut[1]&&Ke([nt,ct]),Ke(ut),qt=null,nt=ct=0}var bt=YP.isArrayOrTypedArray(f);function Lt(ut){if(ut&&c&&(ut.i=_,ut.d=t,ut.trace=n,ut.marker=bt?f[ut.i]:f,ut.backoff=c),ke=ut[0]/l,ge=ut[1]/u,ce=ut[0]<Ae?Ae:ut[0]>ze?ze:0,Ge=ut[1]<Ce?Ce:ut[1]>me?me:0,ce||Ge){if(!L)A[L++]=[ce||ut[0],Ge||ut[1]];else if(qt){var Ne=xr(qt,ut);Ne.length>1&&(xt(Ne[0]),A[L++]=Ne[1])}else rt=xr(A[L-1],ut)[0],A[L++]=rt;var Ye=A[L-1];ce&&Ge&&(Ye[0]!==ce||Ye[1]!==Ge)?(qt&&(nt!==ce&&ct!==Ge?Ke(nt&&ct?er(qt,ut):[nt||ce,ct||Ge]):nt&&ct&&Ke([nt,ct])),Ke([ce,Ge])):nt-ce&&ct-Ge&&Ke([ce||nt,Ge||ct]),qt=ut,nt=ce,ct=Ge}else qt&&xt(xr(qt,ut)[0]),A[L++]=ut}for(_=0;_<k;_++)if(C=_e(_),!!C){for(L=0,qt=null,Lt(C),_++;_<k;_++){if(g=_e(_),!g){if(h)continue;break}if(!x||!r.simplify){Lt(g);continue}var St=_e(_+1);if(H=Te(g,C),!(!(b&&(L===0||L===k-1))&&H<ie(g,St)*E)){for(q=[(g[0]-C[0])/H,(g[1]-C[1])/H],P=C,X=H,G=W=re=0,F=!1,M=g,_++;_<t.length;_++){if(T=St,St=_e(_+1),!T){if(h)continue;break}if(V=[T[0]-C[0],T[1]-C[1]],ae=V[0]*q[1]-V[1]*q[0],W=Math.min(W,ae),re=Math.max(re,ae),re-W>ie(T,St))break;M=T,N=V[0]*q[0]+V[1]*q[1],N>X?(X=N,g=T,F=!1):N<G&&(G=N,P=T,F=!0)}if(F?(Lt(g),M!==P&&Lt(P)):(P!==C&&Lt(P),M!==g&&Lt(g)),Lt(M),_>=t.length||!T)break;Lt(T),C=T}}qt&&Ke([nt||qt[0],ct||qt[1]]),p.push(A.slice(0,L))}var Et=v.slice(v.length-1);if(c&&Et!=="h"&&Et!=="v"){for(var dt=!1,Ht=-1,$t=[],fr=0;fr<p.length;fr++)for(var _r=0;_r<p[fr].length-1;_r++){var Br=p[fr][_r],Or=p[fr][_r+1],Nr=svt.applyBackoff(Or,Br);(Nr[0]!==Or[0]||Nr[1]!==Or[1])&&(dt=!0),$t[Ht+1]||(Ht++,$t[Ht]=[Br,[Nr[0],Nr[1]]])}return dt?$t:p}return p}});var hU=ye((qnr,vve)=>{"use strict";var dve={tonextx:1,tonexty:1,tonext:1};vve.exports=function(t,r,n){var i,a,o,s,l,u={},c=!1,f=-1,h=0,d=-1;for(a=0;a<n.length;a++)i=n[a][0].trace,o=i.stackgroup||"",o?o in u?l=u[o]:(l=u[o]=h,h++):i.fill in dve&&d>=0?l=d:(l=d=h,h++),l<f&&(c=!0),i._groupIndex=f=l;var v=n.slice();c&&v.sort(function(b,p){var E=b[0].trace,k=p[0].trace;return E._groupIndex-k._groupIndex||E.index-k.index});var x={};for(a=0;a<v.length;a++)i=v[a][0].trace,o=i.stackgroup||"",i.visible===!0?(i._nexttrace=null,i.fill in dve&&(s=x[o],i._prevtrace=s||null,s&&(s._nexttrace=i)),i._ownfill=i.fill&&(i.fill.substr(0,6)==="tozero"||i.fill==="toself"||i.fill.substr(0,2)==="to"&&!i._prevtrace),x[o]=i):i._prevtrace=i._nexttrace=i._ownfill=null;return v}});var iT=ye((Onr,mve)=>{"use strict";var Dg=xa(),uvt=ba(),ZM=Mr(),tT=ZM.ensureSingle,gve=ZM.identity,zf=ao(),rT=lu(),cvt=fU(),fvt=hU(),KP=wM().tester;mve.exports=function(t,r,n,i,a,o){var s,l,u=!a,c=!!a&&a.duration>0,f=fvt(t,r,n);if(s=i.selectAll("g.trace").data(f,function(d){return d[0].trace.uid}),s.enter().append("g").attr("class",function(d){return"trace scatter trace"+d[0].trace.uid}).style("stroke-miterlimit",2),s.order(),hvt(t,s,r),c){o&&(l=o());var h=Dg.transition().duration(a.duration).ease(a.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});h.each(function(){i.selectAll("g.trace").each(function(d,v){pve(t,v,r,d,f,this,a)})})}else s.each(function(d,v){pve(t,v,r,d,f,this,a)});u&&s.exit().remove(),i.selectAll("path:not([d])").remove()};function hvt(e,t,r){t.each(function(n){var i=tT(Dg.select(this),"g","fills");zf.setClipUrl(i,r.layerClipId,e);var a=n[0].trace,o=[];a._ownfill&&o.push("_ownFill"),a._nexttrace&&o.push("_nextFill");var s=i.selectAll("g").data(o,gve);s.enter().append("g"),s.exit().each(function(l){a[l]=null}).remove(),s.order().each(function(l){a[l]=tT(Dg.select(this),"path","js-fill")})})}function pve(e,t,r,n,i,a,o){var s=e._context.staticPlot,l;dvt(e,t,r,n,i);var u=!!o&&o.duration>0;function c(Yt){return u?Yt.transition():Yt}var f=r.xaxis,h=r.yaxis,d=n[0].trace,v=d.line,x=Dg.select(a),b=tT(x,"g","errorbars"),p=tT(x,"g","lines"),E=tT(x,"g","points"),k=tT(x,"g","text");if(uvt.getComponentMethod("errorbars","plot")(e,b,r,o),d.visible!==!0)return;c(x).style("opacity",d.opacity);var A,L,_=d.fill.charAt(d.fill.length-1);_!=="x"&&_!=="y"&&(_="");var C,M;_==="y"?(C=1,M=h.c2p(0,!0)):_==="x"&&(C=0,M=f.c2p(0,!0)),n[0][r.isRangePlot?"nodeRangePlot3":"node3"]=x;var g="",P=[],T=d._prevtrace,F=null,q=null;T&&(g=T._prevRevpath||"",L=T._nextFill,P=T._ownPolygons,F=T._fillsegments,q=T._fillElement);var V,H,X="",G="",N,W,re,ae,_e,Me,ke=[];d._polygons=[];var ge=[],ie=[],Te=ZM.noop;if(A=d._ownFill,rT.hasLines(d)||d.fill!=="none"){L&&L.datum(n),["hv","vh","hvh","vhv"].indexOf(v.shape)!==-1?(N=zf.steps(v.shape),W=zf.steps(v.shape.split("").reverse().join(""))):v.shape==="spline"?N=W=function(Yt){var xr=Yt[Yt.length-1];return Yt.length>1&&Yt[0][0]===xr[0]&&Yt[0][1]===xr[1]?zf.smoothclosed(Yt.slice(1),v.smoothing):zf.smoothopen(Yt,v.smoothing)}:N=W=function(Yt){return"M"+Yt.join("L")},re=function(Yt){return W(Yt.reverse())},ie=cvt(n,{xaxis:f,yaxis:h,trace:d,connectGaps:d.connectgaps,baseTolerance:Math.max(v.width||1,3)/4,shape:v.shape,backoff:v.backoff,simplify:v.simplify,fill:d.fill}),ge=new Array(ie.length);var Ee=0;for(l=0;l<ie.length;l++){var Ae,ze=ie[l];!Ae||!_?(Ae=ze.slice(),ge[Ee]=Ae,Ee++):Ae.push.apply(Ae,ze)}d._fillElement=null,d._fillExclusionElement=q,d._fillsegments=ge.slice(0,Ee),ge=d._fillsegments,ie.length&&(ae=ie[0][0].slice(),_e=ie[ie.length-1],Me=_e[_e.length-1].slice()),Te=function(Yt){return function(xr){if(V=N(xr),H=re(xr),X?_?(X+="L"+V.substr(1),G=H+("L"+G.substr(1))):(X+="Z"+V,G=H+"Z"+G):(X=V,G=H),rT.hasLines(d)){var er=Dg.select(this);if(er.datum(n),Yt)c(er.style("opacity",0).attr("d",V).call(zf.lineGroupStyle)).style("opacity",1);else{var Ke=c(er);Ke.attr("d",V),zf.singleLineStyle(n,Ke)}}}}}var Ce=p.selectAll(".js-line").data(ie);c(Ce.exit()).style("opacity",0).remove(),Ce.each(Te(!1)),Ce.enter().append("path").classed("js-line",!0).style("vector-effect",s?"none":"non-scaling-stroke").call(zf.lineGroupStyle).each(Te(!0)),zf.setClipUrl(Ce,r.layerClipId,e);function me(Yt){c(Yt).attr("d","M0,0Z")}var Re=function(){var Yt=new Array(ge.length);for(l=0;l<ge.length;l++)Yt[l]=KP(ge[l]);return Yt},ce=function(Yt){var xr,er;if(!Yt||Yt.length===0)for(xr=new Array(ge.length),er=0;er<ge.length;er++){var Ke=ge[er][0].slice(),xt=ge[er][ge[er].length-1].slice();Ke[C]=xt[C]=M;var bt=[xt,Ke],Lt=bt.concat(ge[er]);xr[er]=KP(Lt)}else{for(xr=new Array(Yt.length-1+ge.length),er=0;er<Yt.length-1;er++)xr[er]=KP(Yt[er]);var St=Yt[Yt.length-1].slice();for(St.reverse(),er=0;er<ge.length;er++)xr[Yt.length-1+er]=KP(ge[er].concat(St))}return xr};ie.length?(A?(A.datum(n),ae&&Me&&(_?(ae[C]=Me[C]=M,c(A).attr("d","M"+Me+"L"+ae+"L"+X.substr(1)).call(zf.singleFillStyle,e),ke=ce(null)):(c(A).attr("d",X+"Z").call(zf.singleFillStyle,e),ke=Re())),d._polygons=ke,d._fillElement=A):L&&(d.fill.substr(0,6)==="tonext"&&X&&g?(d.fill==="tonext"?(c(L).attr("d",X+"Z"+g+"Z").call(zf.singleFillStyle,e),ke=Re(),d._polygons=ke.concat(P)):(c(L).attr("d",X+"L"+g.substr(1)+"Z").call(zf.singleFillStyle,e),ke=ce(F),d._polygons=ke),d._fillElement=L):me(L)),d._prevRevpath=G):(A?me(A):L&&me(L),d._prevRevpath=null),d._ownPolygons=ke;function Ge(Yt){return Yt.filter(function(xr){return!xr.gap&&xr.vis})}function nt(Yt){return Yt.filter(function(xr){return xr.vis})}function ct(Yt){return Yt.filter(function(xr){return!xr.gap})}function qt(Yt){return Yt.id}function rt(Yt){if(Yt.ids)return qt}function ot(){return!1}function Rt(Yt,xr,er){var Ke,xt,bt,Lt=er[0].trace,St=rT.hasMarkers(Lt),Et=rT.hasText(Lt),dt=rt(Lt),Ht=ot,$t=ot;if(St||Et){var fr=gve,_r=Lt.stackgroup,Br=_r&&e._fullLayout._scatterStackOpts[f._id+h._id][_r].stackgaps==="infer zero";Lt.marker.maxdisplayed||Lt._needsCull?fr=Br?nt:Ge:_r&&!Br&&(fr=ct),St&&(Ht=fr),Et&&($t=fr)}xt=Yt.selectAll("path.point"),Ke=xt.data(Ht,dt);var Or=Ke.enter().append("path").classed("point",!0);u&&Or.call(zf.pointStyle,Lt,e).call(zf.translatePoints,f,h).style("opacity",0).transition().style("opacity",1),Ke.order();var Nr;St&&(Nr=zf.makePointStyleFns(Lt)),Ke.each(function(ut){var Ne=Dg.select(this),Ye=c(Ne);bt=zf.translatePoint(ut,Ye,f,h),bt?(zf.singlePointStyle(ut,Ye,Lt,Nr,e),r.layerClipId&&zf.hideOutsideRangePoint(ut,Ye,f,h,Lt.xcalendar,Lt.ycalendar),Lt.customdata&&Ne.classed("plotly-customdata",ut.data!==null&&ut.data!==void 0)):Ye.remove()}),u?Ke.exit().transition().style("opacity",0).remove():Ke.exit().remove(),xt=xr.selectAll("g"),Ke=xt.data($t,dt),Ke.enter().append("g").classed("textpoint",!0).append("text"),Ke.order(),Ke.each(function(ut){var Ne=Dg.select(this),Ye=c(Ne.select("text"));bt=zf.translatePoint(ut,Ye,f,h),bt?r.layerClipId&&zf.hideOutsideRangePoint(ut,Ne,f,h,Lt.xcalendar,Lt.ycalendar):Ne.remove()}),Ke.selectAll("text").call(zf.textPointStyle,Lt,e).each(function(ut){var Ne=f.c2p(ut.x),Ye=h.c2p(ut.y);Dg.select(this).selectAll("tspan.line").each(function(){c(Dg.select(this)).attr({x:Ne,y:Ye})})}),Ke.exit().remove()}E.datum(n),k.datum(n),Rt(E,k,n);var kt=d.cliponaxis===!1,Ct=kt?null:r.layerClipId;zf.setClipUrl(E,Ct,e),zf.setClipUrl(k,Ct,e)}function dvt(e,t,r,n,i){var a=r.xaxis,o=r.yaxis,s=Dg.extent(ZM.simpleMap(a.range,a.r2c)),l=Dg.extent(ZM.simpleMap(o.range,o.r2c)),u=n[0].trace;if(rT.hasMarkers(u)){var c=u.marker.maxdisplayed;if(c!==0){var f=n.filter(function(x){return x.x>=s[0]&&x.x<=s[1]&&x.y>=l[0]&&x.y<=l[1]}),h=Math.ceil(f.length/c),d=0;i.forEach(function(x,b){var p=x[0].trace;rT.hasMarkers(p)&&p.marker.maxdisplayed>0&&b<t&&d++});var v=Math.round(d*h/3+Math.floor(d/3)*h/7.1);n.forEach(function(x){delete x.vis}),f.forEach(function(x,b){Math.round((b+v)%h)===0&&(x.vis=!0)})}}}});var Kd=ye((Bnr,yve)=>{"use strict";yve.exports={container:"marker",min:"cmin",max:"cmax"}});var $P=ye((Nnr,_ve)=>{"use strict";var JP=Qa();_ve.exports=function(t,r,n){var i={},a={_fullLayout:n},o=JP.getFromTrace(a,r,"x"),s=JP.getFromTrace(a,r,"y"),l=t.orig_x;l===void 0&&(l=t.x);var u=t.orig_y;return u===void 0&&(u=t.y),i.xLabel=JP.tickText(o,o.c2l(l),!0).text,i.yLabel=JP.tickText(s,s.c2l(u),!0).text,i}});var op=ye((Unr,xve)=>{"use strict";var dU=xa(),nT=ao(),vvt=ba();function pvt(e){var t=dU.select(e).selectAll("g.trace.scatter");t.style("opacity",function(r){return r[0].trace.opacity}),t.selectAll("g.points").each(function(r){var n=dU.select(this),i=r.trace||r[0].trace;vU(n,i,e)}),t.selectAll("g.text").each(function(r){var n=dU.select(this),i=r.trace||r[0].trace;pU(n,i,e)}),t.selectAll("g.trace path.js-line").call(nT.lineGroupStyle),t.selectAll("g.trace path.js-fill").call(nT.fillGroupStyle,e,!1),vvt.getComponentMethod("errorbars","style")(t)}function vU(e,t,r){nT.pointStyle(e.selectAll("path.point"),t,r)}function pU(e,t,r){nT.textPointStyle(e.selectAll("text"),t,r)}function gvt(e,t,r){var n=t[0].trace;n.selectedpoints?(nT.selectedPointStyle(r.selectAll("path.point"),n),nT.selectedTextStyle(r.selectAll("text"),n)):(vU(r,n,e),pU(r,n,e))}xve.exports={style:pvt,stylePoints:vU,styleText:pU,styleOnSelect:gvt}});var oT=ye((Vnr,bve)=>{"use strict";var aT=va(),mvt=lu();bve.exports=function(t,r){var n,i;if(t.mode==="lines")return n=t.line.color,n&&aT.opacity(n)?n:t.fillcolor;if(t.mode==="none")return t.fill?t.fillcolor:"";var a=r.mcc||(t.marker||{}).color,o=r.mlcc||((t.marker||{}).line||{}).color;return i=a&&aT.opacity(a)?a:o&&aT.opacity(o)&&(r.mlw||((t.marker||{}).line||{}).width)?o:"",i?aT.opacity(i)<.3?aT.addOpacity(i,.3):i:(n=(t.line||{}).color,n&&aT.opacity(n)&&mvt.hasLines(t)&&t.line.width?n:t.fillcolor)}});var sT=ye((Hnr,Tve)=>{"use strict";var QP=Mr(),wve=Nc(),yvt=ba(),_vt=oT(),gU=va(),xvt=QP.fillText;Tve.exports=function(t,r,n,i){var a=t.cd,o=a[0].trace,s=t.xa,l=t.ya,u=s.c2p(r),c=l.c2p(n),f=[u,c],h=o.hoveron||"",d=o.mode.indexOf("markers")!==-1?3:.5,v=!!o.xperiodalignment,x=!!o.yperiodalignment;if(h.indexOf("points")!==-1){var b=function(G){if(v){var N=s.c2p(G.xStart),W=s.c2p(G.xEnd);return u>=Math.min(N,W)&&u<=Math.max(N,W)?0:1/0}var re=Math.max(3,G.mrc||0),ae=1-1/re,_e=Math.abs(s.c2p(G.x)-u);return _e<re?ae*_e/re:_e-re+ae},p=function(G){if(x){var N=l.c2p(G.yStart),W=l.c2p(G.yEnd);return c>=Math.min(N,W)&&c<=Math.max(N,W)?0:1/0}var re=Math.max(3,G.mrc||0),ae=1-1/re,_e=Math.abs(l.c2p(G.y)-c);return _e<re?ae*_e/re:_e-re+ae},E=function(G){var N=Math.max(d,G.mrc||0),W=s.c2p(G.x)-u,re=l.c2p(G.y)-c;return Math.max(Math.sqrt(W*W+re*re)-N,1-d/N)},k=wve.getDistanceFunction(i,b,p,E);if(wve.getClosest(a,k,t),t.index!==!1){var A=a[t.index],L=s.c2p(A.x,!0),_=l.c2p(A.y,!0),C=A.mrc||1;t.index=A.i;var M=a[0].t.orientation,g=M&&(A.sNorm||A.s),P=M==="h"?g:A.orig_x!==void 0?A.orig_x:A.x,T=M==="v"?g:A.orig_y!==void 0?A.orig_y:A.y;return QP.extendFlat(t,{color:_vt(o,A),x0:L-C,x1:L+C,xLabelVal:P,y0:_-C,y1:_+C,yLabelVal:T,spikeDistance:E(A),hovertemplate:o.hovertemplate}),xvt(A,o,t),yvt.getComponentMethod("errorbars","hoverInfo")(A,o,t),[t]}}function F(G){if(!G)return!1;var N=G.node();try{var W=new DOMPoint(f[0],f[1]);return N.isPointInFill(W)}catch(ae){var re=N.ownerSVGElement.createSVGPoint();return re.x=f[0],re.y=f[1],N.isPointInFill(re)}}function q(G){var N,W=[],re=1/0,ae=-1/0,_e=1/0,Me=-1/0,ke;for(N=0;N<G.length;N++){var ge=G[N];ge.contains(f)&&(W.push(ge),_e=Math.min(_e,ge.ymin),Me=Math.max(Me,ge.ymax))}if(W.length===0)return null;_e=Math.max(_e,0),Me=Math.min(Me,l._length),ke=(_e+Me)/2;var ie,Te,Ee,Ae,ze,Ce,me;for(N=0;N<W.length;N++)for(Te=W[N].pts,ie=1;ie<Te.length;ie++)Ce=Te[ie-1][1],me=Te[ie][1],Ce>ke!=me>=ke&&(Ae=Te[ie-1][0],ze=Te[ie][0],me-Ce&&(Ee=Ae+(ze-Ae)*(ke-Ce)/(me-Ce),re=Math.min(re,Ee),ae=Math.max(ae,Ee)));return re=Math.max(re,0),ae=Math.min(ae,s._length),{x0:re,x1:ae,y0:ke,y1:ke}}if(h.indexOf("fills")!==-1&&o._fillElement){var V=F(o._fillElement)&&!F(o._fillExclusionElement);if(V){var H=q(o._polygons);H===null&&(H={x0:f[0],x1:f[0],y0:f[1],y1:f[1]});var X=gU.defaultLine;return gU.opacity(o.fillcolor)?X=o.fillcolor:gU.opacity((o.line||{}).color)&&(X=o.line.color),QP.extendFlat(t,{distance:t.maxHoverDistance,x0:H.x0,x1:H.x1,y0:H.y0,y1:H.y1,color:X,hovertemplate:!1}),delete t.index,o.text&&!QP.isArrayOrTypedArray(o.text)?t.text=String(o.text):t.text=o.name,[t]}}}});var lT=ye((Gnr,Sve)=>{"use strict";var Ave=lu();Sve.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h=!Ave.hasMarkers(s)&&!Ave.hasText(s);if(h)return[];if(r===!1)for(l=0;l<n.length;l++)n[l].selected=0;else for(l=0;l<n.length;l++)u=n[l],c=i.c2p(u.x),f=a.c2p(u.y),u.i!==null&&r.contains([c,f],!1,l,t)?(o.push({pointNumber:u.i,x:i.c2d(u.x),y:a.c2d(u.y)}),u.selected=1):u.selected=0;return o}});var Eve=ye((jnr,Mve)=>{"use strict";Mve.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}});var yU=ye((Wnr,Lve)=>{"use strict";var XM=ba().traceIs,mU=L3();Lve.exports=function(t,r,n,i){n("autotypenumbers",i.autotypenumbersDflt);var a=n("type",(i.splomStash||{}).type);a==="-"&&(bvt(r,i.data),r.type==="-"?r.type="linear":t.type=r.type)};function bvt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i;r.indexOf("scene")!==-1&&(r=n);var a=wvt(t,r,n);if(a){if(a.type==="histogram"&&n==={v:"y",h:"x"}[a.orientation||"v"]){e.type="linear";return}var o=n+"calendar",s=a[o],l={noMultiCategory:!XM(a,"cartesian")||XM(a,"noMultiCategory")};if(a.type==="box"&&a._hasPreCompStats&&n==={h:"x",v:"y"}[a.orientation||"v"]&&(l.noMultiCategory=!0),l.autotypenumbers=e.autotypenumbers,Cve(a,n)){var u=kve(a),c=[];for(i=0;i<t.length;i++){var f=t[i];!XM(f,"box-violin")||(f[n+"axis"]||n)!==r||(f[u]!==void 0?c.push(f[u][0]):f.name!==void 0?c.push(f.name):c.push("text"),f[o]!==s&&(s=void 0))}e.type=mU(c,s,l)}else if(a.type==="splom"){var h=a.dimensions,d=h[a._axesDim[r]];d.visible&&(e.type=mU(d.values,s,l))}else e.type=mU(a[n]||[a[n+"0"]],s,l)}}}function wvt(e,t,r){for(var n=0;n<e.length;n++){var i=e[n];if(i.type==="splom"&&i._length>0&&(i["_"+r+"axes"]||{})[t])return i;if((i[r+"axis"]||r)===t){if(Cve(i,r))return i;if((i[r]||[]).length||i[r+"0"])return i}}}function kve(e){return{v:"x",h:"y"}[e.orientation||"v"]}function Cve(e,t){var r=kve(e),n=XM(e,"box-violin"),i=XM(e._fullInput||{},"candlestick");return n&&!i&&t===r&&e[r]===void 0&&e[r+"0"]===void 0}});var eI=ye((Znr,Pve)=>{"use strict";var Tvt=vv().isTypedArraySpec;function Avt(e,t){var r=t.dataAttr||e._id.charAt(0),n={},i,a,o;if(t.axData)i=t.axData;else for(i=[],a=0;a<t.data.length;a++){var s=t.data[a];s[r+"axis"]===e._id&&i.push(s)}for(a=0;a<i.length;a++){var l=i[a][r];for(o=0;o<l.length;o++){var u=l[o];u!=null&&(n[u]=1)}}return Object.keys(n)}Pve.exports=function(t,r,n,i){if(r.type==="category"){var a=t.categoryarray,o=Array.isArray(a)&&a.length>0||Tvt(a),s;o&&(s="array");var l=n("categoryorder",s),u;l==="array"&&(u=n("categoryarray")),!o&&l==="array"&&(l=r.categoryorder="trace"),l==="trace"?r._initialCategories=[]:l==="array"?r._initialCategories=u.slice():(u=Avt(r,i).sort(),l==="category ascending"?r._initialCategories=u:l==="category descending"&&(r._initialCategories=u.reverse()))}}});var YM=ye((Xnr,Rve)=>{"use strict";var Ive=id().mix,Svt=dh(),Mvt=Mr();Rve.exports=function(t,r,n,i){i=i||{};var a=i.dfltColor;function o(C,M){return Mvt.coerce2(t,r,i.attributes,C,M)}var s=o("linecolor",a),l=o("linewidth"),u=n("showline",i.showLine||!!s||!!l);u||(delete r.linecolor,delete r.linewidth);var c=Ive(a,i.bgColor,i.blend||Svt.lightFraction).toRgbString(),f=o("gridcolor",c),h=o("gridwidth"),d=o("griddash"),v=n("showgrid",i.showGrid||!!f||!!h||!!d);if(v||(delete r.gridcolor,delete r.gridwidth,delete r.griddash),i.hasMinor){var x=Ive(r.gridcolor,i.bgColor,67).toRgbString(),b=o("minor.gridcolor",x),p=o("minor.gridwidth",r.gridwidth||1),E=o("minor.griddash",r.griddash||"solid"),k=n("minor.showgrid",!!b||!!p||!!E);k||(delete r.minor.gridcolor,delete r.minor.gridwidth,delete r.minor.griddash)}if(!i.noZeroLine){var A=o("zerolinecolor",a),L=o("zerolinewidth"),_=n("zeroline",i.showGrid||!!A||!!L);_||(delete r.zerolinecolor,delete r.zerolinewidth)}}});var JM=ye((Ynr,Bve)=>{"use strict";var Dve=uo(),Evt=ba(),KM=Mr(),kvt=Vs(),Cvt=Zd(),_U=Cd(),zve=xb(),Fve=T3(),Lvt=t_(),Pvt=r_(),Ivt=eI(),Rvt=YM(),Dvt=dB(),qve=ym(),tI=ad().WEEKDAY_PATTERN,zvt=ad().HOUR_PATTERN;Bve.exports=function(t,r,n,i,a){var o=i.letter,s=i.font||{},l=i.splomStash||{},u=n("visible",!i.visibleDflt),c=r._template||{},f=r.type||c.type||"-",h;if(f==="date"){var d=Evt.getComponentMethod("calendars","handleDefaults");d(t,r,"calendar",i.calendar),i.noTicklabelmode||(h=n("ticklabelmode"))}!i.noTicklabelindex&&(f==="date"||f==="linear")&&n("ticklabelindex");var v="";(!i.noTicklabelposition||f==="multicategory")&&(v=KM.coerce(t,r,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:h==="period"?["outside","inside"]:o==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),i.noTicklabeloverflow||n("ticklabeloverflow",v.indexOf("inside")!==-1?"hide past domain":f==="category"||f==="multicategory"?"allow":"hide past div"),qve(r,a),Dvt(t,r,n,i),Ivt(t,r,n,i),f!=="category"&&!i.noHover&&n("hoverformat");var x=n("color"),b=x!==_U.color.dflt?x:s.color,p=l.label||a._dfltTitle[o];if(Pvt(t,r,n,f,i),!u)return r;n("title.text",p),KM.coerceFont(n,"title.font",s,{overrideDflt:{size:KM.bigFont(s.size),color:b}}),zve(t,r,n,f);var E=i.hasMinor;if(E&&(kvt.newContainer(r,"minor"),zve(t,r,n,f,{isMinor:!0})),Lvt(t,r,n,f,i),Fve(t,r,n,i),E){var k=i.isMinor;i.isMinor=!0,Fve(t,r,n,i),i.isMinor=k}Rvt(t,r,n,{dfltColor:x,bgColor:i.bgColor,showGrid:i.showGrid,hasMinor:E,attributes:_U}),E&&!r.minor.ticks&&!r.minor.showgrid&&delete r.minor,(r.showline||r.ticks)&&n("mirror");var A=f==="multicategory";if(!i.noTickson&&(f==="category"||A)&&(r.ticks||r.showgrid)){var L;A&&(L="boundaries");var _=n("tickson",L);_==="boundaries"&&delete r.ticklabelposition}if(A){var C=n("showdividers");C&&(n("dividercolor"),n("dividerwidth"))}if(f==="date")if(Cvt(t,r,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:Fvt}),!r.rangebreaks.length)delete r.rangebreaks;else{for(var M=0;M<r.rangebreaks.length;M++)if(r.rangebreaks[M].pattern===tI){r._hasDayOfWeekBreaks=!0;break}if(qve(r,a),a._has("scattergl")||a._has("splom"))for(var g=0;g<i.data.length;g++){var P=i.data[g];(P.type==="scattergl"||P.type==="splom")&&(P.visible=!1,KM.warn(P.type+" traces do not work on axes with rangebreaks. Setting trace "+P.index+" to `visible: false`."))}}return r};function Fvt(e,t,r){function n(h,d){return KM.coerce(e,t,_U.rangebreaks,h,d)}var i=n("enabled");if(i){var a=n("bounds");if(a&&a.length>=2){var o="",s,l;if(a.length===2){for(s=0;s<2;s++)if(l=Ove(a[s]),l){o=tI;break}}var u=n("pattern",o);if(u===tI)for(s=0;s<2;s++)l=Ove(a[s]),l&&(t.bounds[s]=a[s]=l-1);if(u)for(s=0;s<2;s++)switch(l=a[s],u){case tI:if(!Dve(l)){t.enabled=!1;return}if(l=+l,l!==Math.floor(l)||l<0||l>=7){t.enabled=!1;return}t.bounds[s]=a[s]=l;break;case zvt:if(!Dve(l)){t.enabled=!1;return}if(l=+l,l<0||l>24){t.enabled=!1;return}t.bounds[s]=a[s]=l;break}if(r.autorange===!1){var c=r.range;if(c[0]<c[1]){if(a[0]<c[0]&&a[1]>c[1]){t.enabled=!1;return}}else if(a[0]>c[0]&&a[1]<c[1]){t.enabled=!1;return}}}else{var f=n("values");if(f&&f.length)n("dvalue");else{t.enabled=!1;return}}}}var qvt={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function Ove(e){if(typeof e=="string")return qvt[e.substr(0,3).toLowerCase()]}});var iI=ye((Knr,Nve)=>{"use strict";var Ovt=uo(),rI=Mr();Nve.exports=function(t,r,n,i){var a=i.counterAxes||[],o=i.overlayableAxes||[],s=i.letter,l=i.grid,u=i.overlayingDomain,c,f,h,d,v,x;l&&(f=l._domains[s][l._axisMap[r._id]],c=l._anchors[r._id],f&&(h=l[s+"side"].split(" ")[0],d=l.domain[s][h==="right"||h==="top"?1:0])),f=f||[0,1],c=c||(Ovt(t.position)?"free":a[0]||"free"),h=h||(s==="x"?"bottom":"left"),d=d||0,v=0,x=!1;var b=rI.coerce(t,r,{anchor:{valType:"enumerated",values:["free"].concat(a),dflt:c}},"anchor"),p=rI.coerce(t,r,{side:{valType:"enumerated",values:s==="x"?["bottom","top"]:["left","right"],dflt:h}},"side");if(b==="free"){if(s==="y"){var E=n("autoshift");E&&(d=p==="left"?u[0]:u[1],x=r.automargin?r.automargin:!0,v=p==="left"?-3:3),n("shift",v)}n("position",d)}n("automargin",x);var k=!1;if(o.length&&(k=rI.coerce(t,r,{overlaying:{valType:"enumerated",values:[!1].concat(o),dflt:!1}},"overlaying")),!k){var A=n("domain",f);A[0]>A[1]-1/4096&&(r.domain=f),rI.noneOrAll(t.domain,r.domain,f),r.tickmode==="sync"&&(r.tickmode="auto")}return n("layer"),r}});var Yve=ye((Jnr,Xve)=>{"use strict";var jb=Mr(),Uve=va(),Bvt=rp().isUnifiedHover,Nvt=OB(),Vve=Vs(),Uvt=s3(),Hve=Cd(),Vvt=yU(),Gve=JM(),Hvt=Bb(),jve=iI(),bU=af(),Cm=bU.id2name,Wve=bU.name2id,Gvt=ad().AX_ID_PATTERN,Zve=ba(),nI=Zve.traceIs,xU=Zve.getComponentMethod;function aI(e,t,r){Array.isArray(e[t])?e[t].push(r):e[t]=[r]}Xve.exports=function(t,r,n){var i=r.autotypenumbers,a={},o={},s={},l={},u={},c={},f={},h={},d={},v={},x,b;for(x=0;x<n.length;x++){var p=n[x];if(nI(p,"cartesian")){var E;if(p.xaxis)E=Cm(p.xaxis),aI(a,E,p);else if(p.xaxes)for(b=0;b<p.xaxes.length;b++)aI(a,Cm(p.xaxes[b]),p);var k;if(p.yaxis)k=Cm(p.yaxis),aI(a,k,p);else if(p.yaxes)for(b=0;b<p.yaxes.length;b++)aI(a,Cm(p.yaxes[b]),p);if(p.type==="funnel"?p.orientation==="h"?(E&&(o[E]=!0),k&&(f[k]=!0)):k&&(s[k]=!0):p.type==="image"?(k&&(h[k]=!0),E&&(h[E]=!0)):(k&&(u[k]=!0,c[k]=!0),(!nI(p,"carpet")||p.type==="carpet"&&!p._cheater)&&E&&(l[E]=!0)),p.type==="carpet"&&p._cheater&&E&&(o[E]=!0),nI(p,"2dMap")&&(d[E]=!0,d[k]=!0),nI(p,"oriented")){var A=p.orientation==="h"?k:E;v[A]=!0}}}var L=r._subplots,_=L.xaxis,C=L.yaxis,M=jb.simpleMap(_,Cm),g=jb.simpleMap(C,Cm),P=M.concat(g),T=Uve.background;_.length&&C.length&&(T=jb.coerce(t,r,Uvt,"plot_bgcolor"));var F=Uve.combine(T,r.paper_bgcolor),q,V,H,X,G;function N(){var xt=a[q]||[];G._traceIndices=xt.map(function(bt){return bt.index}),G._annIndices=[],G._shapeIndices=[],G._selectionIndices=[],G._imgIndices=[],G._subplotsWith=[],G._counterAxes=[],G._name=G._attr=q,G._id=V}function W(xt,bt){return jb.coerce(X,G,Hve,xt,bt)}function re(xt,bt){return jb.coerce2(X,G,Hve,xt,bt)}function ae(xt){return xt==="x"?C:_}function _e(xt,bt){for(var Lt=xt==="x"?M:g,St=[],Et=0;Et<Lt.length;Et++){var dt=Lt[Et];dt!==bt&&!(t[dt]||{}).overlaying&&St.push(Wve(dt))}return St}var Me={x:ae("x"),y:ae("y")},ke=Me.x.concat(Me.y),ge={},ie=[];function Te(){var xt=X.matches;Gvt.test(xt)&&ke.indexOf(xt)===-1&&(ge[xt]=X.type,ie=Object.keys(ge))}var Ee=Nvt(t,r),Ae=Bvt(Ee);for(x=0;x<P.length;x++){q=P[x],V=Wve(q),H=q.charAt(0),jb.isPlainObject(t[q])||(t[q]={}),X=t[q],G=Vve.newContainer(r,q,H+"axis"),N();var ze=H==="x"&&!l[q]&&o[q]||H==="y"&&!u[q]&&s[q],Ce=H==="y"&&(!c[q]&&f[q]||h[q]),me={hasMinor:!0,letter:H,font:r.font,outerTicks:d[q],showGrid:!v[q],data:a[q]||[],bgColor:F,calendar:r.calendar,automargin:!0,visibleDflt:ze,reverseDflt:Ce,autotypenumbersDflt:i,splomStash:((r._splomAxes||{})[H]||{})[V],noAutotickangles:H==="y"};W("uirevision",r.uirevision),Vvt(X,G,W,me),Gve(X,G,W,me,r);var Re=Ae&&H===Ee.charAt(0),ce=re("spikecolor",Ae?G.color:void 0),Ge=re("spikethickness",Ae?1.5:void 0),nt=re("spikedash",Ae?"dot":void 0),ct=re("spikemode",Ae?"across":void 0),qt=re("spikesnap"),rt=W("showspikes",!!Re||!!ce||!!Ge||!!nt||!!ct||!!qt);rt||(delete G.spikecolor,delete G.spikethickness,delete G.spikedash,delete G.spikemode,delete G.spikesnap);var ot=Cm(X.overlaying),Rt=[0,1];if(r[ot]!==void 0){var kt=Cm(r[ot].anchor);r[kt]!==void 0&&(Rt=r[kt].domain)}jve(X,G,W,{letter:H,counterAxes:Me[H],overlayableAxes:_e(H,q),grid:r.grid,overlayingDomain:Rt}),W("title.standoff"),Te(),G._input=X}for(x=0;x<ie.length;){V=ie[x++],q=Cm(V),H=q.charAt(0),jb.isPlainObject(t[q])||(t[q]={}),X=t[q],G=Vve.newContainer(r,q,H+"axis"),N();var Ct={letter:H,font:r.font,outerTicks:d[q],showGrid:!v[q],data:[],bgColor:F,calendar:r.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,autotypenumbersDflt:i,splomStash:((r._splomAxes||{})[H]||{})[V]};W("uirevision",r.uirevision),G.type=ge[V]||"linear",Gve(X,G,W,Ct,r),jve(X,G,W,{letter:H,counterAxes:Me[H],overlayableAxes:_e(H,q),grid:r.grid}),W("fixedrange"),Te(),G._input=X}var Yt=xU("rangeslider","handleDefaults"),xr=xU("rangeselector","handleDefaults");for(x=0;x<M.length;x++)q=M[x],X=t[q],G=r[q],Yt(t,r,q),G.type==="date"&&xr(X,G,r,g,G.calendar),W("fixedrange");for(x=0;x<g.length;x++){q=g[x],X=t[q],G=r[q];var er=r[Cm(G.anchor)],Ke=xU("rangeslider","isVisible")(er);W("fixedrange",Ke)}Hvt.handleDefaults(t,r,{axIds:ke.concat(ie).sort(bU.idSort),axHasImage:h})}});var $ve=ye(($nr,Jve)=>{"use strict";var jvt=xa(),Kve=ba(),oI=Mr(),Qp=ao(),sI=Qa();Jve.exports=function(t,r,n,i){var a=t._fullLayout;if(r.length===0){sI.redrawComponents(t);return}function o(b){var p=b.xaxis,E=b.yaxis;a._defs.select("#"+b.clipId+"> rect").call(Qp.setTranslate,0,0).call(Qp.setScale,1,1),b.plot.call(Qp.setTranslate,p._offset,E._offset).call(Qp.setScale,1,1);var k=b.plot.selectAll(".scatterlayer .trace");k.selectAll(".point").call(Qp.setPointGroupScale,1,1),k.selectAll(".textpoint").call(Qp.setTextPointsScale,1,1),k.call(Qp.hideOutsideRangePoints,b)}function s(b,p){var E=b.plotinfo,k=E.xaxis,A=E.yaxis,L=k._length,_=A._length,C=!!b.xr1,M=!!b.yr1,g=[];if(C){var P=oI.simpleMap(b.xr0,k.r2l),T=oI.simpleMap(b.xr1,k.r2l),F=P[1]-P[0],q=T[1]-T[0];g[0]=(P[0]*(1-p)+p*T[0]-P[0])/(P[1]-P[0])*L,g[2]=L*(1-p+p*q/F),k.range[0]=k.l2r(P[0]*(1-p)+p*T[0]),k.range[1]=k.l2r(P[1]*(1-p)+p*T[1])}else g[0]=0,g[2]=L;if(M){var V=oI.simpleMap(b.yr0,A.r2l),H=oI.simpleMap(b.yr1,A.r2l),X=V[1]-V[0],G=H[1]-H[0];g[1]=(V[1]*(1-p)+p*H[1]-V[1])/(V[0]-V[1])*_,g[3]=_*(1-p+p*G/X),A.range[0]=k.l2r(V[0]*(1-p)+p*H[0]),A.range[1]=A.l2r(V[1]*(1-p)+p*H[1])}else g[1]=0,g[3]=_;sI.drawOne(t,k,{skipTitle:!0}),sI.drawOne(t,A,{skipTitle:!0}),sI.redrawComponents(t,[k._id,A._id]);var N=C?L/g[2]:1,W=M?_/g[3]:1,re=C?g[0]:0,ae=M?g[1]:0,_e=C?g[0]/g[2]*L:0,Me=M?g[1]/g[3]*_:0,ke=k._offset-_e,ge=A._offset-Me;E.clipRect.call(Qp.setTranslate,re,ae).call(Qp.setScale,1/N,1/W),E.plot.call(Qp.setTranslate,ke,ge).call(Qp.setScale,N,W),Qp.setPointGroupScale(E.zoomScalePts,1/N,1/W),Qp.setTextPointsScale(E.zoomScaleTxt,1/N,1/W)}var l;i&&(l=i());function u(){for(var b={},p=0;p<r.length;p++){var E=r[p],k=E.plotinfo.xaxis,A=E.plotinfo.yaxis;E.xr1&&(b[k._name+".range"]=E.xr1.slice()),E.yr1&&(b[A._name+".range"]=E.yr1.slice())}return l&&l(),Kve.call("relayout",t,b).then(function(){for(var L=0;L<r.length;L++)o(r[L].plotinfo)})}function c(){for(var b={},p=0;p<r.length;p++){var E=r[p],k=E.plotinfo.xaxis,A=E.plotinfo.yaxis;E.xr0&&(b[k._name+".range"]=E.xr0.slice()),E.yr0&&(b[A._name+".range"]=E.yr0.slice())}return Kve.call("relayout",t,b).then(function(){for(var L=0;L<r.length;L++)o(r[L].plotinfo)})}var f,h,d,v=jvt.ease(n.easing);t._transitionData._interruptCallbacks.push(function(){return window.cancelAnimationFrame(d),d=null,c()});function x(){h=Date.now();for(var b=Math.min(1,(h-f)/n.duration),p=v(b),E=0;E<r.length;E++)s(r[E],p);h-f>n.duration?(u(),d=window.cancelAnimationFrame(x)):d=window.requestAnimationFrame(x)}return f=Date.now(),d=window.requestAnimationFrame(x),Promise.resolve()}});var Jf=ye(yv=>{"use strict";var uI=xa(),Qve=ba(),Wb=Mr(),Wvt=Xu(),Zvt=ao(),epe=kd().getModuleCalcData,m_=af(),zg=ad(),Xvt=Zp(),ql=Wb.ensureSingle;function lI(e,t,r){return Wb.ensureSingle(e,t,r,function(n){n.datum(r)})}var Zb=zg.zindexSeparator;yv.name="cartesian";yv.attr=["xaxis","yaxis"];yv.idRoot=["x","y"];yv.idRegex=zg.idRegex;yv.attrRegex=zg.attrRegex;yv.attributes=Eve();yv.layoutAttributes=Cd();yv.supplyLayoutDefaults=Yve();yv.transitionAxes=$ve();yv.finalizeSubplots=function(e,t){var r=t._subplots,n=r.xaxis,i=r.yaxis,a=r.cartesian,o=a,s={},l={},u,c,f;for(u=0;u<o.length;u++){var h=o[u].split("y");s[h[0]]=1,l["y"+h[1]]=1}for(u=0;u<n.length;u++)c=n[u],s[c]||(f=(e[m_.id2name(c)]||{}).anchor,zg.idRegex.y.test(f)||(f="y"),a.push(c+f),o.push(c+f),l[f]||(l[f]=1,Wb.pushUnique(i,f)));for(u=0;u<i.length;u++)f=i[u],l[f]||(c=(e[m_.id2name(f)]||{}).anchor,zg.idRegex.x.test(c)||(c="x"),a.push(c+f),o.push(c+f),s[c]||(s[c]=1,Wb.pushUnique(n,c)));if(!o.length){c="",f="";for(var d in e)if(zg.attrRegex.test(d)){var v=d.charAt(0);v==="x"?(!c||+d.substr(5)<+c.substr(5))&&(c=d):(!f||+d.substr(5)<+f.substr(5))&&(f=d)}c=c?m_.name2id(c):"x",f=f?m_.name2id(f):"y",n.push(c),i.push(f),a.push(c+f)}};yv.plot=function(e,t,r,n){var i=e._fullLayout,a=i._subplots.cartesian,o=e.calcdata,s;if(!Array.isArray(t))for(t=[],s=0;s<o.length;s++)t.push(s);for(var l=i._zindices,u=0;u<l.length;u++){var c=l[u];for(s=0;s<a.length;s++){var f=a[s],h=i._plots[f];if(u>0){var d=h.id;if(d.indexOf(Zb)!==-1)continue;d+=Zb+(u+1),h=Wb.extendFlat({},h,{id:d,plot:i._cartesianlayer.selectAll(".subplot").select("."+d)})}for(var v=[],x,b=0;b<o.length;b++){var p=o[b],E=p[0].trace;c===(E.zorder||0)&&E.xaxis+E.yaxis===f&&((t.indexOf(E.index)!==-1||E.carpet)&&(x&&x[0].trace.xaxis+x[0].trace.yaxis===f&&["tonextx","tonexty","tonext"].indexOf(E.fill)!==-1&&v.indexOf(x)===-1&&v.push(x),v.push(p)),x=p)}tpe(e,h,v,r,n)}}};function tpe(e,t,r,n,i){for(var a=zg.traceLayerClasses,o=e._fullLayout,s=o._zindices,l=o._modules,u,c,f,h=[],d=[],v=0;v<s.length;v++)for(var x=s[v],b=0;b<l.length;b++){u=l[b];var p=u.name,E=Qve.modules[p].categories;if(E.svg){var k=u.layerName||p+"layer",A=k+(v?Number(v)+1:""),L=u.plot;c=epe(r,L,x),f=c[0],r=c[1],f.length&&h.push({i:a.indexOf(k),zindex:v,className:A,plotMethod:L,cdModule:f}),E.zoomScale&&d.push("."+A)}}h.sort(function(M,g){return(M.zindex||0)-(g.zindex||0)||M.i-g.i});var _=t.plot.selectAll("g.mlayer").data(h,function(M){return M.className});if(_.enter().append("g").attr("class",function(M){return M.className}).classed("mlayer",!0).classed("rangeplot",t.isRangePlot),_.exit().remove(),_.order(),_.each(function(M){var g=uI.select(this),P=M.className;M.plotMethod(e,t,M.cdModule,g,n,i),zg.clipOnAxisFalseQuery.indexOf("."+P)===-1&&Zvt.setClipUrl(g,t.layerClipId,e)}),o._has("scattergl")&&(u=Qve.getModule("scattergl"),f=epe(r,u)[0],u.plot(e,t,f)),!e._context.staticPlot&&(t._hasClipOnAxisFalse&&(t.clipOnAxisFalseTraces=t.plot.selectAll(zg.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),d.length)){var C=t.plot.selectAll(d.join(",")).selectAll(".trace");t.zoomScalePts=C.selectAll("path.point"),t.zoomScaleTxt=C.selectAll(".textpoint")}}yv.clean=function(e,t,r,n){var i=n._plots||{},a=t._plots||{},o=n._subplots||{},s,l,u;if(n._hasOnlyLargeSploms&&!t._hasOnlyLargeSploms)for(u in i)s=i[u],s.plotgroup&&s.plotgroup.remove();var c=n._has&&n._has("gl"),f=t._has&&t._has("gl");if(c&&!f)for(u in i)s=i[u],s._scene&&s._scene.destroy();if(o.xaxis&&o.yaxis){var h=m_.listIds({_fullLayout:n});for(l=0;l<h.length;l++){var d=h[l];t[m_.id2name(d)]||n._infolayer.selectAll(".g-"+d+"title").remove()}}var v=n._has&&n._has("cartesian"),x=t._has&&t._has("cartesian");if(v&&!x)ipe(n._cartesianlayer.selectAll(".subplot"),n),n._defs.selectAll(".axesclip").remove(),delete n._axisConstraintGroups,delete n._axisMatchGroups;else if(o.cartesian)for(l=0;l<o.cartesian.length;l++){var b=o.cartesian[l];if(b.indexOf(Zb)===-1&&!a[b]){var p="."+b+",."+b+"-x,."+b+"-y";n._cartesianlayer.selectAll(p).remove(),npe(b,n)}}};yv.drawFramework=function(e){var t=e._fullLayout,r=e.calcdata,n,i={};for(n=0;n<r.length;n++){var a=r[n][0],o=a.trace,s=o.zorder||0;i[s]||(i[s]=[]),i[s].push(a)}var l=Object.keys(i).map(Number).sort(Wb.sorterAsc);l.length||(l=[0]),t._zindices=l;var u=Yvt(e),c=u.length,f=[];for(n=0;n<c;n++)f[n]=u[n].slice();for(var h=1;h<l.length;h++){var d=[];for(n=0;n<c;n++)d[n]=u[n].slice(),d[n][0]+=Zb+(h+1);f=f.concat(d)}var v=t._cartesianlayer.selectAll(".subplot").data(f,String);v.enter().append("g").attr("class",function(x){return"subplot "+x[0]}),v.order(),v.exit().call(ipe,t),v.each(function(x){var b=x[0],p=b.indexOf(Zb),E=p!==-1,k=E?b.slice(0,p):b,A=t._plots[b];A||(A=Wb.extendFlat({},t._plots[k]),A&&(A.id=b,t._plots[b]=A,t._subplots.cartesian.push(b))),A&&(A.plotgroup=uI.select(this),rpe(e,A),E||(A.draglayer=ql(t._draggers,"g",b)))})};yv.rangePlot=function(e,t,r){rpe(e,t),tpe(e,t,r),Wvt.style(e)};function Yvt(e){var t=e._fullLayout,r=t._zindices.length,n=t._subplots.cartesian,i=n.length,a,o,s,l,u,c,f=[],h=[];for(a=0;a<i;a++){s=n[a],l=t._plots[s],u=l.xaxis,c=l.yaxis;var d=u._mainAxis,v=c._mainAxis,x=d._id+v._id,b=t._plots[x];l.overlays=[],x!==s&&b?(l.mainplot=x,l.mainplotinfo=b,h.push(s)):(l.mainplot=void 0,l.mainplotinfo=void 0,f.push(s))}for(a=0;a<h.length;a++)s=h[a],l=t._plots[s],l.mainplotinfo.overlays.push(l);var p=f.concat(h),E=[];for(a=0;a<i;a++){s=p[a],l=t._plots[s],u=l.xaxis,c=l.yaxis;for(var k=[],A=1;A<=r;A++){var L="";for(A>1&&(L+=Zb+A),k.push(s+L),o=0;o<l.overlays.length;o++)k.push(l.overlays[o].id+L)}k=k.concat([u.layer,c.layer,u.overlaying||"",c.overlaying||""]),E.push(k)}return E}function rpe(e,t){var r=e._fullLayout,n=t.plotgroup,i=t.id,a=i.indexOf(Zb),o=a!==-1,s=zg.layerValue2layerClass[t.xaxis.layer],l=zg.layerValue2layerClass[t.yaxis.layer],u=r._hasOnlyLargeSploms,c=r._zindices.length>1,f=t.mainplotinfo;if(!t.mainplot||c)if(u)t.xlines=ql(n,"path","xlines-above"),t.ylines=ql(n,"path","ylines-above"),t.xaxislayer=ql(n,"g","xaxislayer-above"),t.yaxislayer=ql(n,"g","yaxislayer-above");else{if(!o){var h=ql(n,"g","layer-subplot");t.shapelayer=ql(h,"g","shapelayer"),t.imagelayer=ql(h,"g","imagelayer"),f&&c?(t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer):(t.minorGridlayer=ql(n,"g","minor-gridlayer"),t.gridlayer=ql(n,"g","gridlayer"),t.zerolinelayer=ql(n,"g","zerolinelayer"));var d=ql(n,"g","layer-between");t.shapelayerBetween=ql(d,"g","shapelayer"),t.imagelayerBetween=ql(d,"g","imagelayer"),ql(n,"path","xlines-below"),ql(n,"path","ylines-below"),t.overlinesBelow=ql(n,"g","overlines-below"),ql(n,"g","xaxislayer-below"),ql(n,"g","yaxislayer-below"),t.overaxesBelow=ql(n,"g","overaxes-below")}t.overplot=ql(n,"g","overplot"),t.plot=ql(t.overplot,"g",i),o||(t.xlines=ql(n,"path","xlines-above"),t.ylines=ql(n,"path","ylines-above"),t.overlinesAbove=ql(n,"g","overlines-above"),ql(n,"g","xaxislayer-above"),ql(n,"g","yaxislayer-above"),t.overaxesAbove=ql(n,"g","overaxes-above"),t.xlines=n.select(".xlines-"+s),t.ylines=n.select(".ylines-"+l),t.xaxislayer=n.select(".xaxislayer-"+s),t.yaxislayer=n.select(".yaxislayer-"+l))}else{var v=f.plotgroup,x=i+"-x",b=i+"-y";t.minorGridlayer=f.minorGridlayer,t.gridlayer=f.gridlayer,t.zerolinelayer=f.zerolinelayer,ql(f.overlinesBelow,"path",x),ql(f.overlinesBelow,"path",b),ql(f.overaxesBelow,"g",x),ql(f.overaxesBelow,"g",b),t.plot=ql(f.overplot,"g",i),ql(f.overlinesAbove,"path",x),ql(f.overlinesAbove,"path",b),ql(f.overaxesAbove,"g",x),ql(f.overaxesAbove,"g",b),t.xlines=v.select(".overlines-"+s).select("."+x),t.ylines=v.select(".overlines-"+l).select("."+b),t.xaxislayer=v.select(".overaxes-"+s).select("."+x),t.yaxislayer=v.select(".overaxes-"+l).select("."+b)}o||(u||(lI(t.minorGridlayer,"g",t.xaxis._id),lI(t.minorGridlayer,"g",t.yaxis._id),t.minorGridlayer.selectAll("g").map(function(p){return p[0]}).sort(m_.idSort),lI(t.gridlayer,"g",t.xaxis._id),lI(t.gridlayer,"g",t.yaxis._id),t.gridlayer.selectAll("g").map(function(p){return p[0]}).sort(m_.idSort)),t.xlines.style("fill","none").classed("crisp",!0),t.ylines.style("fill","none").classed("crisp",!0))}function ipe(e,t){if(e){var r={};e.each(function(l){var u=l[0],c=uI.select(this);c.remove(),npe(u,t),r[u]=!0});for(var n in t._plots)for(var i=t._plots[n],a=i.overlays||[],o=0;o<a.length;o++){var s=a[o];r[s.id]&&s.plot.selectAll(".trace").remove()}}}function npe(e,t){t._draggers.selectAll("g."+e).remove(),t._defs.select("#clip"+t._uid+e+"plot").remove()}yv.toSVG=function(e){var t=e._fullLayout._glimages,r=uI.select(e).selectAll(".svg-container"),n=r.filter(function(a,o){return o===r.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function i(){var a=this,o=a.toDataURL("image/png"),s=t.append("svg:image");s.attr({xmlns:Xvt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i)};yv.updateFx=zN().updateFx});var ope=ye((ear,ape)=>{"use strict";var cI=lu();ape.exports={hasLines:cI.hasLines,hasMarkers:cI.hasMarkers,hasText:cI.hasText,isBubble:cI.isBubble,attributes:Uc(),layoutAttributes:V6(),supplyDefaults:Ide(),crossTraceDefaults:$N(),supplyLayoutDefaults:Fde(),calc:q0().calc,crossTraceCalc:ove(),arraysToCalcdata:km(),plot:iT(),colorbar:Kd(),formatLabels:$P(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:sT(),selectPoints:lT(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Jf(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}});var upe=ye((tar,lpe)=>{"use strict";var Kvt=xa(),Jvt=va(),spe=MN(),wU=Mr(),$vt=wU.strScale,Qvt=wU.strRotate,ept=wU.strTranslate;lpe.exports=function(t,r,n){var i=t.node(),a=spe[n.arrowhead||0],o=spe[n.startarrowhead||0],s=(n.arrowwidth||1)*(n.arrowsize||1),l=(n.arrowwidth||1)*(n.startarrowsize||1),u=r.indexOf("start")>=0,c=r.indexOf("end")>=0,f=a.backoff*s+n.standoff,h=o.backoff*l+n.startstandoff,d,v,x,b;if(i.nodeName==="line"){d={x:+t.attr("x1"),y:+t.attr("y1")},v={x:+t.attr("x2"),y:+t.attr("y2")};var p=d.x-v.x,E=d.y-v.y;if(x=Math.atan2(E,p),b=x+Math.PI,f&&h&&f+h>Math.sqrt(p*p+E*E)){V();return}if(f){if(f*f>p*p+E*E){V();return}var k=f*Math.cos(x),A=f*Math.sin(x);v.x+=k,v.y+=A,t.attr({x2:v.x,y2:v.y})}if(h){if(h*h>p*p+E*E){V();return}var L=h*Math.cos(x),_=h*Math.sin(x);d.x-=L,d.y-=_,t.attr({x1:d.x,y1:d.y})}}else if(i.nodeName==="path"){var C=i.getTotalLength(),M="";if(C<f+h){V();return}var g=i.getPointAtLength(0),P=i.getPointAtLength(.1);x=Math.atan2(g.y-P.y,g.x-P.x),d=i.getPointAtLength(Math.min(h,C)),M="0px,"+h+"px,";var T=i.getPointAtLength(C),F=i.getPointAtLength(C-.1);b=Math.atan2(T.y-F.y,T.x-F.x),v=i.getPointAtLength(Math.max(0,C-f));var q=M?h+f:f;M+=C-q+"px,"+C+"px",t.style("stroke-dasharray",M)}function V(){t.style("stroke-dasharray","0px,100px")}function H(X,G,N,W){X.path&&(X.noRotate&&(N=0),Kvt.select(i.parentNode).append("path").attr({class:t.attr("class"),d:X.path,transform:ept(G.x,G.y)+Qvt(N*180/Math.PI)+$vt(W)}).style({fill:Jvt.rgb(n.arrowcolor),"stroke-width":0}))}u&&H(o,d,x,l),c&&H(a,v,b,s)}});var fI=ye((rar,vpe)=>{"use strict";var cpe=xa(),TU=ba(),tpt=Xu(),__=Mr(),AU=__.strTranslate,QM=Qa(),Xb=va(),Py=ao(),fpe=Nc(),SU=Pl(),MU=Tg(),$M=gv(),rpt=Vs().arrayEditor,ipt=upe();vpe.exports={draw:npt,drawOne:hpe,drawRaw:dpe};function npt(e){var t=e._fullLayout;t._infolayer.selectAll(".annotation").remove();for(var r=0;r<t.annotations.length;r++)t.annotations[r].visible&&hpe(e,r);return tpt.previousPromises(e)}function hpe(e,t){var r=e._fullLayout,n=r.annotations[t]||{},i=QM.getFromId(e,n.xref),a=QM.getFromId(e,n.yref);i&&i.setScale(),a&&a.setScale(),dpe(e,n,t,!1,i,a)}function y_(e,t,r,n,i){var a=i[r],o=i[r+"ref"],s=r.indexOf("y")!==-1,l=QM.getRefType(o)==="domain",u=s?n.h:n.w;return e?l?a+(s?-t:t)/e._length:e.p2r(e.r2p(a)+t):a+(s?-t:t)/u}function dpe(e,t,r,n,i,a){var o=e._fullLayout,s=e._fullLayout._size,l=e._context.edits,u,c;n?(u="annotation-"+n,c=n+".annotations"):(u="annotation",c="annotations");var f=rpt(e.layout,c,t),h=f.modifyBase,d=f.modifyItem,v=f.getUpdateObj;o._infolayer.selectAll("."+u+'[data-index="'+r+'"]').remove();var x="clip"+o._uid+"_ann"+r;if(!t._input||t.visible===!1){cpe.selectAll("#"+x).remove();return}var b={x:{},y:{}},p=+t.textangle||0,E=o._infolayer.append("g").classed(u,!0).attr("data-index",String(r)).style("opacity",t.opacity),k=E.append("g").classed("annotation-text-g",!0),A=l[t.showarrow?"annotationTail":"annotationPosition"],L=t.captureevents||l.annotationText||A;function _(W){var re={index:r,annotation:t._input,fullAnnotation:t,event:W};return n&&(re.subplotId=n),re}var C=k.append("g").style("pointer-events",L?"all":null).call(MU,"pointer").on("click",function(){e._dragging=!1,e.emit("plotly_clickannotation",_(cpe.event))});t.hovertext&&C.on("mouseover",function(){var W=t.hoverlabel,re=W.font,ae=this.getBoundingClientRect(),_e=e.getBoundingClientRect();fpe.loneHover({x0:ae.left-_e.left,x1:ae.right-_e.left,y:(ae.top+ae.bottom)/2-_e.top,text:t.hovertext,color:W.bgcolor,borderColor:W.bordercolor,fontFamily:re.family,fontSize:re.size,fontColor:re.color,fontWeight:re.weight,fontStyle:re.style,fontVariant:re.variant,fontShadow:re.fontShadow,fontLineposition:re.fontLineposition,fontTextcase:re.fontTextcase},{container:o._hoverlayer.node(),outerContainer:o._paper.node(),gd:e})}).on("mouseout",function(){fpe.loneUnhover(o._hoverlayer.node())});var M=t.borderwidth,g=t.borderpad,P=M+g,T=C.append("rect").attr("class","bg").style("stroke-width",M+"px").call(Xb.stroke,t.bordercolor).call(Xb.fill,t.bgcolor),F=t.width||t.height,q=o._topclips.selectAll("#"+x).data(F?[0]:[]);q.enter().append("clipPath").classed("annclip",!0).attr("id",x).append("rect"),q.exit().remove();var V=t.font,H=o._meta?__.templateString(t.text,o._meta):t.text,X=C.append("text").classed("annotation-text",!0).text(H);function G(W){return W.call(Py.font,V).attr({"text-anchor":{left:"start",right:"end"}[t.align]||"middle"}),SU.convertToTspans(W,e,N),W}function N(){var W=X.selectAll("a");if(W.size()===1&&W.text()===X.text()){var re=C.insert("a",":first-child").attr({"xlink:xlink:href":W.attr("xlink:href"),"xlink:xlink:show":W.attr("xlink:show")}).style({cursor:"pointer"});re.node().appendChild(T.node())}var ae=C.select(".annotation-text-math-group"),_e=!ae.empty(),Me=Py.bBox((_e?ae:X).node()),ke=Me.width,ge=Me.height,ie=t.width||ke,Te=t.height||ge,Ee=Math.round(ie+2*P),Ae=Math.round(Te+2*P);function ze(Ve,Xe){return Xe==="auto"&&(Ve<1/3?Xe="left":Ve>2/3?Xe="right":Xe="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Xe]}for(var Ce=!1,me=["x","y"],Re=0;Re<me.length;Re++){var ce=me[Re],Ge=t[ce+"ref"]||ce,nt=t["a"+ce+"ref"],ct={x:i,y:a}[ce],qt=(p+(ce==="x"?0:-90))*Math.PI/180,rt=Ee*Math.cos(qt),ot=Ae*Math.sin(qt),Rt=Math.abs(rt)+Math.abs(ot),kt=t[ce+"anchor"],Ct=t[ce+"shift"]*(ce==="x"?1:-1),Yt=b[ce],xr,er,Ke,xt,bt,Lt=QM.getRefType(Ge);if(ct&&Lt!=="domain"){var St=ct.r2fraction(t[ce]);(St<0||St>1)&&(nt===Ge?(St=ct.r2fraction(t["a"+ce]),(St<0||St>1)&&(Ce=!0)):Ce=!0),xr=ct._offset+ct.r2p(t[ce]),xt=.5}else{var Et=Lt==="domain";ce==="x"?(Ke=t[ce],xr=Et?ct._offset+ct._length*Ke:xr=s.l+s.w*Ke):(Ke=1-t[ce],xr=Et?ct._offset+ct._length*Ke:xr=s.t+s.h*Ke),xt=t.showarrow?.5:Ke}if(t.showarrow){Yt.head=xr;var dt=t["a"+ce];if(bt=rt*ze(.5,t.xanchor)-ot*ze(.5,t.yanchor),nt===Ge){var Ht=QM.getRefType(nt);Ht==="domain"?(ce==="y"&&(dt=1-dt),Yt.tail=ct._offset+ct._length*dt):Ht==="paper"?ce==="y"?(dt=1-dt,Yt.tail=s.t+s.h*dt):Yt.tail=s.l+s.w*dt:Yt.tail=ct._offset+ct.r2p(dt),er=bt}else Yt.tail=xr+dt,er=bt+dt;Yt.text=Yt.tail+bt;var $t=o[ce==="x"?"width":"height"];if(Ge==="paper"&&(Yt.head=__.constrain(Yt.head,1,$t-1)),nt==="pixel"){var fr=-Math.max(Yt.tail-3,Yt.text),_r=Math.min(Yt.tail+3,Yt.text)-$t;fr>0?(Yt.tail+=fr,Yt.text+=fr):_r>0&&(Yt.tail-=_r,Yt.text-=_r)}Yt.tail+=Ct,Yt.head+=Ct}else bt=Rt*ze(xt,kt),er=bt,Yt.text=xr+bt;Yt.text+=Ct,bt+=Ct,er+=Ct,t["_"+ce+"padplus"]=Rt/2+er,t["_"+ce+"padminus"]=Rt/2-er,t["_"+ce+"size"]=Rt,t["_"+ce+"shift"]=bt}if(Ce){C.remove();return}var Br=0,Or=0;if(t.align!=="left"&&(Br=(ie-ke)*(t.align==="center"?.5:1)),t.valign!=="top"&&(Or=(Te-ge)*(t.valign==="middle"?.5:1)),_e)ae.select("svg").attr({x:P+Br-1,y:P+Or}).call(Py.setClipUrl,F?x:null,e);else{var Nr=P+Or-Me.top,ut=P+Br-Me.left;X.call(SU.positionText,ut,Nr).call(Py.setClipUrl,F?x:null,e)}q.select("rect").call(Py.setRect,P,P,ie,Te),T.call(Py.setRect,M/2,M/2,Ee-M,Ae-M),C.call(Py.setTranslate,Math.round(b.x.text-Ee/2),Math.round(b.y.text-Ae/2)),k.attr({transform:"rotate("+p+","+b.x.text+","+b.y.text+")"});var Ne=function(Ve,Xe){E.selectAll(".annotation-arrow-g").remove();var ht=b.x.head,Le=b.y.head,xe=b.x.tail+Ve,Se=b.y.tail+Xe,lt=b.x.text+Ve,Gt=b.y.text+Xe,Vt=__.rotationXYMatrix(p,lt,Gt),ar=__.apply2DTransform(Vt),Qr=__.apply2DTransform2(Vt),ai=+T.attr("width"),jr=+T.attr("height"),ri=lt-.5*ai,bi=ri+ai,nn=Gt-.5*jr,Wi=nn+jr,Ni=[[ri,nn,ri,Wi],[ri,Wi,bi,Wi],[bi,Wi,bi,nn],[bi,nn,ri,nn]].map(Qr);if(!Ni.reduce(function(Vr,gi){return Vr^!!__.segmentsIntersect(ht,Le,ht+1e6,Le+1e6,gi[0],gi[1],gi[2],gi[3])},!1)){Ni.forEach(function(Vr){var gi=__.segmentsIntersect(xe,Se,ht,Le,Vr[0],Vr[1],Vr[2],Vr[3]);gi&&(xe=gi.x,Se=gi.y)});var _n=t.arrowwidth,$i=t.arrowcolor,zn=t.arrowside,Wn=E.append("g").style({opacity:Xb.opacity($i)}).classed("annotation-arrow-g",!0),It=Wn.append("path").attr("d","M"+xe+","+Se+"L"+ht+","+Le).style("stroke-width",_n+"px").call(Xb.stroke,Xb.rgb($i));if(ipt(It,zn,t),l.annotationPosition&&It.node().parentNode&&!n){var ft=ht,jt=Le;if(t.standoff){var Zt=Math.sqrt(Math.pow(ht-xe,2)+Math.pow(Le-Se,2));ft+=t.standoff*(xe-ht)/Zt,jt+=t.standoff*(Se-Le)/Zt}var yr=Wn.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(xe-ft)+","+(Se-jt),transform:AU(ft,jt)}).style("stroke-width",_n+6+"px").call(Xb.stroke,"rgba(0,0,0,0)").call(Xb.fill,"rgba(0,0,0,0)"),Fr,Zr;$M.init({element:yr.node(),gd:e,prepFn:function(){var Vr=Py.getTranslate(C);Fr=Vr.x,Zr=Vr.y,i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0)},moveFn:function(Vr,gi){var Si=ar(Fr,Zr),Mi=Si[0]+Vr,Pi=Si[1]+gi;C.call(Py.setTranslate,Mi,Pi),d("x",y_(i,Vr,"x",s,t)),d("y",y_(a,gi,"y",s,t)),t.axref===t.xref&&d("ax",y_(i,Vr,"ax",s,t)),t.ayref===t.yref&&d("ay",y_(a,gi,"ay",s,t)),Wn.attr("transform",AU(Vr,gi)),k.attr({transform:"rotate("+p+","+Mi+","+Pi+")"})},doneFn:function(){TU.call("_guiRelayout",e,v());var Vr=document.querySelector(".js-notes-box-panel");Vr&&Vr.redraw(Vr.selectedObj)}})}}};if(t.showarrow&&Ne(0,0),A){var Ye;$M.init({element:C.node(),gd:e,prepFn:function(){Ye=k.attr("transform")},moveFn:function(Ve,Xe){var ht="pointer";if(t.showarrow)t.axref===t.xref?d("ax",y_(i,Ve,"ax",s,t)):d("ax",t.ax+Ve),t.ayref===t.yref?d("ay",y_(a,Xe,"ay",s.w,t)):d("ay",t.ay+Xe),Ne(Ve,Xe);else{if(n)return;var Le,xe;if(i)Le=y_(i,Ve,"x",s,t);else{var Se=t._xsize/s.w,lt=t.x+(t._xshift-t.xshift)/s.w-Se/2;Le=$M.align(lt+Ve/s.w,Se,0,1,t.xanchor)}if(a)xe=y_(a,Xe,"y",s,t);else{var Gt=t._ysize/s.h,Vt=t.y-(t._yshift+t.yshift)/s.h-Gt/2;xe=$M.align(Vt-Xe/s.h,Gt,0,1,t.yanchor)}d("x",Le),d("y",xe),(!i||!a)&&(ht=$M.getCursor(i?.5:Le,a?.5:xe,t.xanchor,t.yanchor))}k.attr({transform:AU(Ve,Xe)+Ye}),MU(C,ht)},clickFn:function(Ve,Xe){t.captureevents&&e.emit("plotly_clickannotation",_(Xe))},doneFn:function(){MU(C),TU.call("_guiRelayout",e,v());var Ve=document.querySelector(".js-notes-box-panel");Ve&&Ve.redraw(Ve.selectedObj)}})}}l.annotationText?X.call(SU.makeEditable,{delegate:C,gd:e}).call(G).on("edit",function(W){t.text=W,this.call(G),d("text",W),i&&i.autorange&&h(i._name+".autorange",!0),a&&a.autorange&&h(a._name+".autorange",!0),TU.call("_guiRelayout",e,v())}):X.call(G)}});var xpe=ye((iar,_pe)=>{"use strict";var ppe=Mr(),apt=ba(),gpe=Vs().arrayEditor;_pe.exports={hasClickToShow:opt,onClick:spt};function opt(e,t){var r=ype(e,t);return r.on.length>0||r.explicitOff.length>0}function spt(e,t){var r=ype(e,t),n=r.on,i=r.off.concat(r.explicitOff),a={},o=e._fullLayout.annotations,s,l;if(n.length||i.length){for(s=0;s<n.length;s++)l=gpe(e.layout,"annotations",o[n[s]]),l.modifyItem("visible",!0),ppe.extendFlat(a,l.getUpdateObj());for(s=0;s<i.length;s++)l=gpe(e.layout,"annotations",o[i[s]]),l.modifyItem("visible",!1),ppe.extendFlat(a,l.getUpdateObj());return apt.call("update",e,{},a)}}function ype(e,t){var r=e._fullLayout.annotations,n=[],i=[],a=[],o=(t||[]).length,s,l,u,c,f,h,d,v;for(s=0;s<r.length;s++)if(u=r[s],c=u.clicktoshow,c){for(l=0;l<o;l++)if(f=t[l],h=f.xaxis,d=f.yaxis,h._id===u.xref&&d._id===u.yref&&h.d2r(f.x)===mpe(u._xclick,h)&&d.d2r(f.y)===mpe(u._yclick,d)){u.visible?c==="onout"?v=i:v=a:v=n,v.push(s);break}l===o&&u.visible&&c==="onout"&&i.push(s)}return{on:n,off:i,explicitOff:a}}function mpe(e,t){return t.type==="log"?t.l2r(e):t.d2r(e)}});var kU=ye((nar,bpe)=>{"use strict";var EU=Mr(),uT=va();bpe.exports=function(t,r,n,i){i("opacity");var a=i("bgcolor"),o=i("bordercolor"),s=uT.opacity(o);i("borderpad");var l=i("borderwidth"),u=i("showarrow");i("text",u?" ":n._dfltTitle.annotation),i("textangle"),EU.coerceFont(i,"font",n.font),i("width"),i("align");var c=i("height");if(c&&i("valign"),u){var f=i("arrowside"),h,d;f.indexOf("end")!==-1&&(h=i("arrowhead"),d=i("arrowsize")),f.indexOf("start")!==-1&&(i("startarrowhead",h),i("startarrowsize",d)),i("arrowcolor",s?r.bordercolor:uT.defaultLine),i("arrowwidth",(s&&l||1)*2),i("standoff"),i("startstandoff")}var v=i("hovertext"),x=n.hoverlabel||{};if(v){var b=i("hoverlabel.bgcolor",x.bgcolor||(uT.opacity(a)?uT.rgb(a):uT.defaultLine)),p=i("hoverlabel.bordercolor",x.bordercolor||uT.contrast(b)),E=EU.extendFlat({},x.font);E.color||(E.color=p),EU.coerceFont(i,"hoverlabel.font",E)}i("captureevents",!!v)}});var Tpe=ye((aar,wpe)=>{"use strict";var CU=Mr(),Yb=Qa(),lpt=Zd(),upt=kU(),cpt=Nb();wpe.exports=function(t,r){lpt(t,r,{name:"annotations",handleItemDefaults:fpt})};function fpt(e,t,r){function n(k,A){return CU.coerce(e,t,cpt,k,A)}var i=n("visible"),a=n("clicktoshow");if(i||a){upt(e,t,r,n);for(var o=t.showarrow,s=["x","y"],l=[-10,-30],u={_fullLayout:r},c=0;c<2;c++){var f=s[c],h=Yb.coerceRef(e,t,u,f,"","paper");if(h!=="paper"){var d=Yb.getFromId(u,h);d._annIndices.push(t._index)}if(Yb.coercePosition(t,u,n,h,f,.5),o){var v="a"+f,x=Yb.coerceRef(e,t,u,v,"pixel",["pixel","paper"]);x!=="pixel"&&x!==h&&(x=t[v]="pixel");var b=x==="pixel"?l[c]:.4;Yb.coercePosition(t,u,n,x,v,b)}n(f+"anchor"),n(f+"shift")}if(CU.noneOrAll(e,t,["x","y"]),o&&CU.noneOrAll(e,t,["ax","ay"]),a){var p=n("xclick"),E=n("yclick");t._xclick=p===void 0?t.x:Yb.cleanPosition(p,u,t.xref),t._yclick=E===void 0?t.y:Yb.cleanPosition(E,u,t.yref)}}}});var Mpe=ye((oar,Spe)=>{"use strict";var LU=Mr(),Kb=Qa(),hpt=fI().draw;Spe.exports=function(t){var r=t._fullLayout,n=LU.filterVisible(r.annotations);if(n.length&&t._fullData.length)return LU.syncOrAsync([hpt,dpt],t)};function dpt(e){var t=e._fullLayout;LU.filterVisible(t.annotations).forEach(function(r){var n=Kb.getFromId(e,r.xref),i=Kb.getFromId(e,r.yref),a=Kb.getRefType(r.xref),o=Kb.getRefType(r.yref);r._extremes={},a==="range"&&Ape(r,n),o==="range"&&Ape(r,i)})}function Ape(e,t){var r=t._id,n=r.charAt(0),i=e[n],a=e["a"+n],o=e[n+"ref"],s=e["a"+n+"ref"],l=e["_"+n+"padplus"],u=e["_"+n+"padminus"],c={x:1,y:-1}[n]*e[n+"shift"],f=3*e.arrowsize*e.arrowwidth||0,h=f+c,d=f-c,v=3*e.startarrowsize*e.arrowwidth||0,x=v+c,b=v-c,p;if(s===o){var E=Kb.findExtremes(t,[t.r2c(i)],{ppadplus:h,ppadminus:d}),k=Kb.findExtremes(t,[t.r2c(a)],{ppadplus:Math.max(l,x),ppadminus:Math.max(u,b)});p={min:[E.min[0],k.min[0]],max:[E.max[0],k.max[0]]}}else x=a?x+a:x,b=a?b-a:b,p=Kb.findExtremes(t,[t.r2c(i)],{ppadplus:Math.max(l,h,x),ppadminus:Math.max(u,d,b)});e._extremes[r]=p}});var kpe=ye((sar,Epe)=>{"use strict";var vpt=uo(),ppt=u6();Epe.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(!(a||o))return;var s=t._fullLayout.annotations,l=r._id.charAt(0),u,c;function f(d){var v=u[d],x=null;a?x=ppt(v,r.range):x=Math.pow(10,v),vpt(x)||(x=null),i(c+d,x)}for(var h=0;h<s.length;h++)u=s[h],c="annotations["+h+"].",u[l+"ref"]===r._id&&f(l),u["a"+l+"ref"]===r._id&&f("a"+l)}});var Ppe=ye((lar,Lpe)=>{"use strict";var PU=fI(),Cpe=xpe();Lpe.exports={moduleType:"component",name:"annotations",layoutAttributes:Nb(),supplyLayoutDefaults:Tpe(),includeBasePlot:IM()("annotations"),calcAutorange:Mpe(),draw:PU.draw,drawOne:PU.drawOne,drawRaw:PU.drawRaw,hasClickToShow:Cpe.hasClickToShow,onClick:Cpe.onClick,convertCoords:kpe()}});var hI=ye((uar,Ipe)=>{"use strict";var Ku=Nb(),gpt=Bu().overrideAll,mpt=Vs().templatedArray;Ipe.exports=gpt(mpt("annotation",{visible:Ku.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:Ku.xanchor,xshift:Ku.xshift,yanchor:Ku.yanchor,yshift:Ku.yshift,text:Ku.text,textangle:Ku.textangle,font:Ku.font,width:Ku.width,height:Ku.height,opacity:Ku.opacity,align:Ku.align,valign:Ku.valign,bgcolor:Ku.bgcolor,bordercolor:Ku.bordercolor,borderpad:Ku.borderpad,borderwidth:Ku.borderwidth,showarrow:Ku.showarrow,arrowcolor:Ku.arrowcolor,arrowhead:Ku.arrowhead,startarrowhead:Ku.startarrowhead,arrowside:Ku.arrowside,arrowsize:Ku.arrowsize,startarrowsize:Ku.startarrowsize,arrowwidth:Ku.arrowwidth,standoff:Ku.standoff,startstandoff:Ku.startstandoff,hovertext:Ku.hovertext,hoverlabel:Ku.hoverlabel,captureevents:Ku.captureevents}),"calc","from-root")});var Dpe=ye((car,Rpe)=>{"use strict";var IU=Mr(),ypt=Qa(),_pt=Zd(),xpt=kU(),bpt=hI();Rpe.exports=function(t,r,n){_pt(t,r,{name:"annotations",handleItemDefaults:wpt,fullLayout:n.fullLayout})};function wpt(e,t,r,n){function i(s,l){return IU.coerce(e,t,bpt,s,l)}function a(s){var l=s+"axis",u={_fullLayout:{}};return u._fullLayout[l]=r[l],ypt.coercePosition(t,u,i,s,s,.5)}var o=i("visible");o&&(xpt(e,t,n.fullLayout,i),a("x"),a("y"),a("z"),IU.noneOrAll(e,t,["x","y","z"]),t.xref="x",t.yref="y",t.zref="z",i("xanchor"),i("yanchor"),i("xshift"),i("yshift"),t.showarrow&&(t.axref="pixel",t.ayref="pixel",i("ax",-10),i("ay",-30),IU.noneOrAll(e,t,["ax","ay"])))}});var Ope=ye((far,qpe)=>{"use strict";var zpe=Mr(),Fpe=Qa();qpe.exports=function(t){for(var r=t.fullSceneLayout,n=r.annotations,i=0;i<n.length;i++)Tpt(n[i],t);t.fullLayout._infolayer.selectAll(".annotation-"+t.id).remove()};function Tpt(e,t){var r=t.fullSceneLayout,n=r.domain,i=t.fullLayout._size,a={pdata:null,type:"linear",autorange:!1,range:[-1/0,1/0]};e._xa={},zpe.extendFlat(e._xa,a),Fpe.setConvert(e._xa),e._xa._offset=i.l+n.x[0]*i.w,e._xa.l2p=function(){return .5*(1+e._pdata[0]/e._pdata[3])*i.w*(n.x[1]-n.x[0])},e._ya={},zpe.extendFlat(e._ya,a),Fpe.setConvert(e._ya),e._ya._offset=i.t+(1-n.y[1])*i.h,e._ya.l2p=function(){return .5*(1-e._pdata[1]/e._pdata[3])*i.h*(n.y[1]-n.y[0])}}});var DU=ye((har,Bpe)=>{"use strict";function RU(e,t){var r=[0,0,0,0],n,i;for(n=0;n<4;++n)for(i=0;i<4;++i)r[i]+=e[4*n+i]*t[n];return r}function Apt(e,t){var r=RU(e.projection,RU(e.view,RU(e.model,[t[0],t[1],t[2],1])));return r}Bpe.exports=Apt});var Upe=ye((dar,Npe)=>{"use strict";var Spt=fI().drawRaw,Mpt=DU(),Ept=["x","y","z"];Npe.exports=function(t){for(var r=t.fullSceneLayout,n=t.dataScale,i=r.annotations,a=0;a<i.length;a++){for(var o=i[a],s=!1,l=0;l<3;l++){var u=Ept[l],c=o[u],f=r[u+"axis"],h=f.r2fraction(c);if(h<0||h>1){s=!0;break}}s?t.fullLayout._infolayer.select(".annotation-"+t.id+'[data-index="'+a+'"]').remove():(o._pdata=Mpt(t.glplot.cameraParams,[r.xaxis.r2l(o.x)*n[0],r.yaxis.r2l(o.y)*n[1],r.zaxis.r2l(o.z)*n[2]]),Spt(t.graphDiv,o,a,t.id,o._xa,o._ya))}}});var Gpe=ye((par,Hpe)=>{"use strict";var kpt=ba(),Vpe=Mr();Hpe.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:hI()}}},layoutAttributes:hI(),handleDefaults:Dpe(),includeBasePlot:Cpt,convert:Ope(),draw:Upe()};function Cpt(e,t){var r=kpt.subplotsRegistry.gl3d;if(r)for(var n=r.attrRegex,i=Object.keys(e),a=0;a<i.length;a++){var o=i[a];n.test(o)&&(e[o].annotations||[]).length&&(Vpe.pushUnique(t._basePlotModules,r),Vpe.pushUnique(t._subplots.gl3d,o))}}});var zU=ye((mar,Xpe)=>{"use strict";var jpe=Nb(),Wpe=Su(),Zpe=Uc().line,Lpt=Ed().dash,Fg=no().extendFlat,Ppt=Vs().templatedArray,gar=PM(),cT=vl(),Ipt=Wo().shapeTexttemplateAttrs,Rpt=b6();Xpe.exports=Ppt("shape",{visible:Fg({},cT.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:Fg({},cT.legend,{editType:"calc+arraydraw"}),legendgroup:Fg({},cT.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:Fg({},cT.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:Wpe({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:Fg({},cT.legendrank,{editType:"calc+arraydraw"}),legendwidth:Fg({},cT.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:Fg({},jpe.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:Fg({},jpe.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:Fg({},Zpe.color,{editType:"arraydraw"}),width:Fg({},Zpe.width,{editType:"calc+arraydraw"}),dash:Fg({},Lpt,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:Ipt({},{keys:Object.keys(Rpt)}),font:Wpe({editType:"calc+arraydraw",colorEditType:"arraydraw"}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})});var Jpe=ye((yar,Kpe)=>{"use strict";var e4=Mr(),fT=Qa(),Dpt=Zd(),zpt=zU(),Ype=h_();Kpe.exports=function(t,r){Dpt(t,r,{name:"shapes",handleItemDefaults:qpt})};function Fpt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}function qpt(e,t,r){function n(W,re){return e4.coerce(e,t,zpt,W,re)}t._isShape=!0;var i=n("visible");if(i){var a=n("showlegend");a&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),e4.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var o=n("path"),s=o?"path":"rect",l=n("type",s),u=l!=="path";u&&delete t.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var c=n("line.width");c&&(n("line.color"),n("line.dash"));for(var f=n("xsizemode"),h=n("ysizemode"),d=["x","y"],v=0;v<2;v++){var x=d[v],b=x+"anchor",p=x==="x"?f:h,E={_fullLayout:r},k,A,L,_=fT.coerceRef(e,t,E,x,void 0,"paper"),C=fT.getRefType(_);if(C==="range"?(k=fT.getFromId(E,_),k._shapeIndices.push(t._index),L=Ype.rangeToShapePosition(k),A=Ype.shapePositionToRange(k),(k.type==="category"||k.type==="multicategory")&&(n(x+"0shift"),n(x+"1shift"))):A=L=e4.identity,u){var M=.25,g=.75,P=x+"0",T=x+"1",F=e[P],q=e[T];e[P]=A(e[P],!0),e[T]=A(e[T],!0),p==="pixel"?(n(P,0),n(T,10)):(fT.coercePosition(t,E,n,_,P,M),fT.coercePosition(t,E,n,_,T,g)),t[P]=L(t[P]),t[T]=L(t[T]),e[P]=F,e[T]=q}if(p==="pixel"){var V=e[b];e[b]=A(e[b],!0),fT.coercePosition(t,E,n,_,b,.25),t[b]=L(t[b]),e[b]=V}}u&&e4.noneOrAll(e,t,["x0","x1","y0","y1"]);var H=l==="line",X,G;if(u&&(X=n("label.texttemplate")),X||(G=n("label.text")),G||X){n("label.textangle");var N=n("label.textposition",H?"middle":"middle center");n("label.xanchor"),n("label.yanchor",Fpt(H,N)),n("label.padding"),e4.coerceFont(n,"label.font",r.font)}}}});var e0e=ye((_ar,Qpe)=>{"use strict";var Opt=va(),$pe=Mr();function Bpt(e,t){return e?"bottom":t.indexOf("top")!==-1?"top":t.indexOf("bottom")!==-1?"bottom":"middle"}Qpe.exports=function(t,r,n){n("newshape.visible"),n("newshape.name"),n("newshape.showlegend"),n("newshape.legend"),n("newshape.legendwidth"),n("newshape.legendgroup"),n("newshape.legendgrouptitle.text"),$pe.coerceFont(n,"newshape.legendgrouptitle.font"),n("newshape.legendrank"),n("newshape.drawdirection"),n("newshape.layer"),n("newshape.fillcolor"),n("newshape.fillrule"),n("newshape.opacity");var i=n("newshape.line.width");if(i){var a=(t||{}).plot_bgcolor||"#FFF";n("newshape.line.color",Opt.contrast(a)),n("newshape.line.dash")}var o=t.dragmode==="drawline",s=n("newshape.label.text"),l=n("newshape.label.texttemplate");if(s||l){n("newshape.label.textangle");var u=n("newshape.label.textposition",o?"middle":"middle center");n("newshape.label.xanchor"),n("newshape.label.yanchor",Bpt(o,u)),n("newshape.label.padding"),$pe.coerceFont(n,"newshape.label.font",r.font)}n("activeshape.fillcolor"),n("activeshape.opacity")}});var a0e=ye((xar,n0e)=>{"use strict";var FU=Mr(),hT=Qa(),dT=cM(),r0e=h_();n0e.exports=function(t){var r=t._fullLayout,n=FU.filterVisible(r.shapes);if(!(!n.length||!t._fullData.length))for(var i=0;i<n.length;i++){var a=n[i];a._extremes={};var o,s,l=hT.getRefType(a.xref),u=hT.getRefType(a.yref);a.xref!=="paper"&&l!=="domain"&&(o=hT.getFromId(t,a.xref),s=t0e(o,a,dT.paramIsX),s&&(a._extremes[o._id]=hT.findExtremes(o,s,Npt(a)))),a.yref!=="paper"&&u!=="domain"&&(o=hT.getFromId(t,a.yref),s=t0e(o,a,dT.paramIsY),s&&(a._extremes[o._id]=hT.findExtremes(o,s,Upt(a))))}};function Npt(e){return i0e(e.line.width,e.xsizemode,e.x0,e.x1,e.path,!1)}function Upt(e){return i0e(e.line.width,e.ysizemode,e.y0,e.y1,e.path,!0)}function i0e(e,t,r,n,i,a){var o=e/2,s=a;if(t==="pixel"){var l=i?r0e.extractPathCoords(i,a?dT.paramIsY:dT.paramIsX):[r,n],u=FU.aggNums(Math.max,null,l),c=FU.aggNums(Math.min,null,l),f=c<0?Math.abs(c)+o:o,h=u>0?u+o:o;return{ppad:o,ppadplus:s?f:h,ppadminus:s?h:f}}else return{ppad:o}}function t0e(e,t,r){var n=e._id.charAt(0)==="x"?"x":"y",i=e.type==="category"||e.type==="multicategory",a,o,s=0,l=0,u=i?e.r2c:e.d2c,c=t[n+"sizemode"]==="scaled";if(c?(a=t[n+"0"],o=t[n+"1"],i&&(s=t[n+"0shift"],l=t[n+"1shift"])):(a=t[n+"anchor"],o=t[n+"anchor"]),a!==void 0)return[u(a)+s,u(o)+l];if(t.path){var f=1/0,h=-1/0,d=t.path.match(dT.segmentRE),v,x,b,p,E;for(e.type==="date"&&(u=r0e.decodeDate(u)),v=0;v<d.length;v++)x=d[v],b=r[x.charAt(0)].drawn,b!==void 0&&(p=d[v].substr(1).match(dT.paramRE),!(!p||p.length<b)&&(E=u(p[b]),E<f&&(f=E),E>h&&(h=E)));if(h>=f)return[f,h]}}});var l0e=ye((bar,s0e)=>{"use strict";var o0e=rP();s0e.exports={moduleType:"component",name:"shapes",layoutAttributes:zU(),supplyLayoutDefaults:Jpe(),supplyDrawNewShapeDefaults:e0e(),includeBasePlot:IM()("shapes"),calcAutorange:a0e(),draw:o0e.draw,drawOne:o0e.drawOne}});var qU=ye((Tar,c0e)=>{"use strict";var u0e=ad(),Vpt=Vs().templatedArray,war=PM();c0e.exports=Vpt("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",u0e.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",u0e.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})});var h0e=ye((Aar,f0e)=>{"use strict";var Hpt=Mr(),OU=Qa(),Gpt=Zd(),jpt=qU(),Wpt="images";f0e.exports=function(t,r){var n={name:Wpt,handleItemDefaults:Zpt};Gpt(t,r,n)};function Zpt(e,t,r){function n(h,d){return Hpt.coerce(e,t,jpt,h,d)}var i=n("source"),a=n("visible",!!i);if(!a)return t;n("layer"),n("xanchor"),n("yanchor"),n("sizex"),n("sizey"),n("sizing"),n("opacity");for(var o={_fullLayout:r},s=["x","y"],l=0;l<2;l++){var u=s[l],c=OU.coerceRef(e,t,o,u,"paper",void 0);if(c!=="paper"){var f=OU.getFromId(o,c);f._imgIndices.push(t._index)}OU.coercePosition(t,o,n,c,u,0)}return t}});var g0e=ye((Sar,p0e)=>{"use strict";var d0e=xa(),Xpt=ao(),vT=Qa(),v0e=af(),Ypt=Zp();p0e.exports=function(t){var r=t._fullLayout,n=[],i={},a=[],o,s;for(s=0;s<r.images.length;s++){var l=r.images[s];if(l.visible)if(l.layer==="below"&&l.xref!=="paper"&&l.yref!=="paper"){o=v0e.ref2id(l.xref)+v0e.ref2id(l.yref);var u=r._plots[o];if(!u){a.push(l);continue}u.mainplot&&(o=u.mainplot.id),i[o]||(i[o]=[]),i[o].push(l)}else l.layer==="above"?n.push(l):a.push(l)}var c={x:{left:{sizing:"xMin",offset:0},center:{sizing:"xMid",offset:-1/2},right:{sizing:"xMax",offset:-1}},y:{top:{sizing:"YMin",offset:0},middle:{sizing:"YMid",offset:-1/2},bottom:{sizing:"YMax",offset:-1}}};function f(A){var L=d0e.select(this);if(this._imgSrc!==A.source)if(L.attr("xmlns",Ypt.svg),!t._context.staticPlot||A.source&&A.source.slice(0,5)==="data:")L.attr("xlink:href",A.source),this._imgSrc=A.source;else{var _=new Promise(function(C){var M=new Image;this.img=M,M.setAttribute("crossOrigin","anonymous"),M.onerror=g,M.onload=function(){var P=document.createElement("canvas");P.width=this.width,P.height=this.height;var T=P.getContext("2d",{willReadFrequently:!0});T.drawImage(this,0,0);var F=P.toDataURL("image/png");L.attr("xlink:href",F),C()},L.on("error",g),M.src=A.source,this._imgSrc=A.source;function g(){L.remove(),C()}}.bind(this));t._promises.push(_)}}function h(A){var L=d0e.select(this),_=vT.getFromId(t,A.xref),C=vT.getFromId(t,A.yref),M=vT.getRefType(A.xref)==="domain",g=vT.getRefType(A.yref)==="domain",P=r._size,T,F;_!==void 0?T=typeof A.xref=="string"&&M?_._length*A.sizex:Math.abs(_.l2p(A.sizex)-_.l2p(0)):T=A.sizex*P.w,C!==void 0?F=typeof A.yref=="string"&&g?C._length*A.sizey:Math.abs(C.l2p(A.sizey)-C.l2p(0)):F=A.sizey*P.h;var q=T*c.x[A.xanchor].offset,V=F*c.y[A.yanchor].offset,H=c.x[A.xanchor].sizing+c.y[A.yanchor].sizing,X,G;switch(_!==void 0?X=typeof A.xref=="string"&&M?_._length*A.x+_._offset:_.r2p(A.x)+_._offset:X=A.x*P.w+P.l,X+=q,C!==void 0?G=typeof A.yref=="string"&&g?C._length*(1-A.y)+C._offset:C.r2p(A.y)+C._offset:G=P.h-A.y*P.h+P.t,G+=V,A.sizing){case"fill":H+=" slice";break;case"stretch":H="none";break}L.attr({x:X,y:G,width:T,height:F,preserveAspectRatio:H,opacity:A.opacity});var N=_&&vT.getRefType(A.xref)!=="domain"?_._id:"",W=C&&vT.getRefType(A.yref)!=="domain"?C._id:"",re=N+W;Xpt.setClipUrl(L,re?"clip"+r._uid+re:null,t)}function d(A){return[A.xref,A.x,A.sizex,A.yref,A.y,A.sizey].join("_")}function v(A,L){return A._index-L._index}var x=r._imageLowerLayer.selectAll("image").data(a,d),b=r._imageUpperLayer.selectAll("image").data(n,d);x.enter().append("image"),b.enter().append("image"),x.exit().remove(),b.exit().remove(),x.each(function(A){f.bind(this)(A),h.bind(this)(A)}),b.each(function(A){f.bind(this)(A),h.bind(this)(A)}),x.sort(v),b.sort(v);var p=Object.keys(r._plots);for(s=0;s<p.length;s++){o=p[s];var E=r._plots[o];if(E.imagelayer){var k=E.imagelayer.selectAll("image").data(i[o]||[],d);k.enter().append("image"),k.exit().remove(),k.each(function(A){f.bind(this)(A),h.bind(this)(A)}),k.sort(v)}}}});var _0e=ye((Mar,y0e)=>{"use strict";var m0e=uo(),Kpt=u6();y0e.exports=function(t,r,n,i){r=r||{};var a=n==="log"&&r.type==="linear",o=n==="linear"&&r.type==="log";if(a||o){for(var s=t._fullLayout.images,l=r._id.charAt(0),u,c,f=0;f<s.length;f++)if(u=s[f],c="images["+f+"].",u[l+"ref"]===r._id){var h=u[l],d=u["size"+l],v=null,x=null;if(a){v=Kpt(h,r.range);var b=d/Math.pow(10,v)/2;x=2*Math.log(b+Math.sqrt(1+b*b))/Math.LN10}else v=Math.pow(10,h),x=v*(Math.pow(10,d/2)-Math.pow(10,-d/2));m0e(v)?m0e(x)||(x=null):(v=null,x=null),i(c+l,v),i(c+"size"+l,x)}}}});var b0e=ye((Ear,x0e)=>{"use strict";x0e.exports={moduleType:"component",name:"images",layoutAttributes:qU(),supplyLayoutDefaults:h0e(),includeBasePlot:IM()("images"),draw:g0e(),convertCoords:_0e()}});var dI=ye((kar,w0e)=>{"use strict";w0e.exports={name:"updatemenus",containerClassName:"updatemenu-container",headerGroupClassName:"updatemenu-header-group",headerClassName:"updatemenu-header",headerArrowClassName:"updatemenu-header-arrow",dropdownButtonGroupClassName:"updatemenu-dropdown-button-group",dropdownButtonClassName:"updatemenu-dropdown-button",buttonClassName:"updatemenu-button",itemRectClassName:"updatemenu-item-rect",itemTextClassName:"updatemenu-item-text",menuIndexAttrName:"updatemenu-active-index",autoMarginIdRoot:"updatemenu-",blankHeaderOpts:{label:" "},minWidth:30,minHeight:30,textPadX:24,arrowPadX:16,rx:2,ry:2,textOffsetX:12,textOffsetY:3,arrowOffsetX:4,gapButtonHeader:5,gapButton:2,activeColor:"#F4FAFF",hoverColor:"#F4FAFF",arrowSymbol:{left:"\u25C4",right:"\u25BA",up:"\u25B2",down:"\u25BC"}}});var BU=ye((Car,A0e)=>{"use strict";var Jpt=Su(),$pt=dh(),Qpt=no().extendFlat,e0t=Bu().overrideAll,t0t=w6(),T0e=Vs().templatedArray,r0t=T0e("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}});A0e.exports=e0t(T0e("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:r0t,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:Qpt(t0t({editType:"arraydraw"}),{}),font:Jpt({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:$pt.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")});var k0e=ye((Lar,E0e)=>{"use strict";var vI=Mr(),S0e=Zd(),M0e=BU(),i0t=dI(),n0t=i0t.name,a0t=M0e.buttons;E0e.exports=function(t,r){var n={name:n0t,handleItemDefaults:o0t};S0e(t,r,n)};function o0t(e,t,r){function n(o,s){return vI.coerce(e,t,M0e,o,s)}var i=S0e(e,t,{name:"buttons",handleItemDefaults:s0t}),a=n("visible",i.length>0);a&&(n("active"),n("direction"),n("type"),n("showactive"),n("x"),n("y"),vI.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),vI.coerceFont(n,"font",r.font),n("bgcolor",r.paper_bgcolor),n("bordercolor"),n("borderwidth"))}function s0t(e,t){function r(i,a){return vI.coerce(e,t,a0t,i,a)}var n=r("visible",e.method==="skip"||Array.isArray(e.args));n&&(r("method"),r("args"),r("args2"),r("label"),r("execute"))}});var P0e=ye((Par,L0e)=>{"use strict";L0e.exports=of;var qg=xa(),C0e=va(),pT=ao(),pI=Mr();function of(e,t,r){this.gd=e,this.container=t,this.id=r,this.position=null,this.translateX=null,this.translateY=null,this.hbar=null,this.vbar=null,this.bg=this.container.selectAll("rect.scrollbox-bg").data([0]),this.bg.exit().on(".drag",null).on("wheel",null).remove(),this.bg.enter().append("rect").classed("scrollbox-bg",!0).style("pointer-events","all").attr({opacity:0,x:0,y:0,width:0,height:0})}of.barWidth=2;of.barLength=20;of.barRadius=2;of.barPad=1;of.barColor="#808BA4";of.prototype.enable=function(t,r,n){var i=this.gd._fullLayout,a=i.width,o=i.height;this.position=t;var s=this.position.l,l=this.position.w,u=this.position.t,c=this.position.h,f=this.position.direction,h=f==="down",d=f==="left",v=f==="right",x=f==="up",b=l,p=c,E,k,A,L;!h&&!d&&!v&&!x&&(this.position.direction="down",h=!0);var _=h||x;_?(E=s,k=E+b,h?(A=u,L=Math.min(A+p,o),p=L-A):(L=u+p,A=Math.max(L-p,0),p=L-A)):(A=u,L=A+p,d?(k=s+b,E=Math.max(k-b,0),b=k-E):(E=s,k=Math.min(E+b,a),b=k-E)),this._box={l:E,t:A,w:b,h:p};var C=l>b,M=of.barLength+2*of.barPad,g=of.barWidth+2*of.barPad,P=s,T=u+c;T+g>o&&(T=o-g);var F=this.container.selectAll("rect.scrollbar-horizontal").data(C?[0]:[]);F.exit().on(".drag",null).remove(),F.enter().append("rect").classed("scrollbar-horizontal",!0).call(C0e.fill,of.barColor),C?(this.hbar=F.attr({rx:of.barRadius,ry:of.barRadius,x:P,y:T,width:M,height:g}),this._hbarXMin=P+M/2,this._hbarTranslateMax=b-M):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var q=c>p,V=of.barWidth+2*of.barPad,H=of.barLength+2*of.barPad,X=s+l,G=u;X+V>a&&(X=a-V);var N=this.container.selectAll("rect.scrollbar-vertical").data(q?[0]:[]);N.exit().on(".drag",null).remove(),N.enter().append("rect").classed("scrollbar-vertical",!0).call(C0e.fill,of.barColor),q?(this.vbar=N.attr({rx:of.barRadius,ry:of.barRadius,x:X,y:G,width:V,height:H}),this._vbarYMin=G+H/2,this._vbarTranslateMax=p-H):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var W=this.id,re=E-.5,ae=q?k+V+.5:k+.5,_e=A-.5,Me=C?L+g+.5:L+.5,ke=i._topdefs.selectAll("#"+W).data(C||q?[0]:[]);if(ke.exit().remove(),ke.enter().append("clipPath").attr("id",W).append("rect"),C||q?(this._clipRect=ke.select("rect").attr({x:Math.floor(re),y:Math.floor(_e),width:Math.ceil(ae)-Math.floor(re),height:Math.ceil(Me)-Math.floor(_e)}),this.container.call(pT.setClipUrl,W,this.gd),this.bg.attr({x:s,y:u,width:l,height:c})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(pT.setClipUrl,null),delete this._clipRect),C||q){var ge=qg.behavior.drag().on("dragstart",function(){qg.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(ge);var ie=qg.behavior.drag().on("dragstart",function(){qg.event.sourceEvent.preventDefault(),qg.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));C&&this.hbar.on(".drag",null).call(ie),q&&this.vbar.on(".drag",null).call(ie)}this.setTranslate(r,n)};of.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(pT.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)};of.prototype._onBoxDrag=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t-=qg.event.dx),this.vbar&&(r-=qg.event.dy),this.setTranslate(t,r)};of.prototype._onBoxWheel=function(){var t=this.translateX,r=this.translateY;this.hbar&&(t+=qg.event.deltaY),this.vbar&&(r+=qg.event.deltaY),this.setTranslate(t,r)};of.prototype._onBarDrag=function(){var t=this.translateX,r=this.translateY;if(this.hbar){var n=t+this._hbarXMin,i=n+this._hbarTranslateMax,a=pI.constrain(qg.event.x,n,i),o=(a-n)/(i-n),s=this.position.w-this._box.w;t=o*s}if(this.vbar){var l=r+this._vbarYMin,u=l+this._vbarTranslateMax,c=pI.constrain(qg.event.y,l,u),f=(c-l)/(u-l),h=this.position.h-this._box.h;r=f*h}this.setTranslate(t,r)};of.prototype.setTranslate=function(t,r){var n=this.position.w-this._box.w,i=this.position.h-this._box.h;if(t=pI.constrain(t||0,0,n),r=pI.constrain(r||0,0,i),this.translateX=t,this.translateY=r,this.container.call(pT.setTranslate,this._box.l-this.position.l-t,this._box.t-this.position.t-r),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+t-.5),y:Math.floor(this.position.t+r-.5)}),this.hbar){var a=t/n;this.hbar.call(pT.setTranslate,t+a*this._hbarTranslateMax,r)}if(this.vbar){var o=r/i;this.vbar.call(pT.setTranslate,t,r+o*this._vbarTranslateMax)}}});var U0e=ye((Iar,N0e)=>{"use strict";var gT=xa(),t4=Xu(),r4=va(),mT=ao(),e0=Mr(),gI=Pl(),l0t=Vs().arrayEditor,R0e=Nh().LINE_SPACING,Go=dI(),u0t=P0e();N0e.exports=function(t){var r=t._fullLayout,n=e0.filterVisible(r[Go.name]);function i(h){t4.autoMargin(t,O0e(h))}var a=r._menulayer.selectAll("g."+Go.containerClassName).data(n.length>0?[0]:[]);if(a.enter().append("g").classed(Go.containerClassName,!0).style("cursor","pointer"),a.exit().each(function(){gT.select(this).selectAll("g."+Go.headerGroupClassName).each(i)}).remove(),n.length!==0){var o=a.selectAll("g."+Go.headerGroupClassName).data(n,c0t);o.enter().append("g").classed(Go.headerGroupClassName,!0);for(var s=e0.ensureSingle(a,"g",Go.dropdownButtonGroupClassName,function(h){h.style("pointer-events","all")}),l=0;l<n.length;l++){var u=n[l];g0t(t,u)}var c="updatemenus"+r._uid,f=new u0t(t,s,c);o.enter().size()&&(s.node().parentNode.appendChild(s.node()),s.call(UU)),o.exit().each(function(h){s.call(UU),i(h)}).remove(),o.each(function(h){var d=gT.select(this),v=h.type==="dropdown"?s:null;t4.manageCommandObserver(t,h,h.buttons,function(x){NU(t,h,h.buttons[x.index],d,v,f,x.index,!0)}),h.type==="dropdown"?(z0e(t,d,s,f,h),D0e(s,h)&&i4(t,d,s,f,h)):i4(t,d,null,null,h)})}};function c0t(e){return e._index}function f0t(e){return+e.attr(Go.menuIndexAttrName)==-1}function D0e(e,t){return+e.attr(Go.menuIndexAttrName)===t._index}function NU(e,t,r,n,i,a,o,s){t.active=o,l0t(e.layout,Go.name,t).applyUpdate("active",o),t.type==="buttons"?i4(e,n,null,null,t):t.type==="dropdown"&&(i.attr(Go.menuIndexAttrName,"-1"),z0e(e,n,i,a,t),s||i4(e,n,i,a,t))}function z0e(e,t,r,n,i){var a=e0.ensureSingle(t,"g",Go.headerClassName,function(h){h.style("pointer-events","all")}),o=i._dims,s=i.active,l=i.buttons[s]||Go.blankHeaderOpts,u={y:i.pad.t,yPad:0,x:i.pad.l,xPad:0,index:0},c={width:o.headerWidth,height:o.headerHeight};a.call(VU,i,l,e).call(B0e,i,u,c);var f=e0.ensureSingle(t,"text",Go.headerArrowClassName,function(h){h.attr("text-anchor","end").call(mT.font,i.font).text(Go.arrowSymbol[i.direction])});f.attr({x:o.headerWidth-Go.arrowOffsetX+i.pad.l,y:o.headerHeight/2+Go.textOffsetY+i.pad.t}),a.on("click",function(){r.call(UU,String(D0e(r,i)?-1:i._index)),i4(e,t,r,n,i)}),a.on("mouseover",function(){a.call(F0e)}),a.on("mouseout",function(){a.call(q0e,i)}),mT.setTranslate(t,o.lx,o.ly)}function i4(e,t,r,n,i){r||(r=t,r.attr("pointer-events","all"));var a=!f0t(r)||i.type==="buttons"?i.buttons:[],o=i.type==="dropdown"?Go.dropdownButtonClassName:Go.buttonClassName,s=r.selectAll("g."+o).data(e0.filterVisible(a)),l=s.enter().append("g").classed(o,!0),u=s.exit();i.type==="dropdown"?(l.attr("opacity","0").transition().attr("opacity","1"),u.transition().attr("opacity","0").remove()):u.remove();var c=0,f=0,h=i._dims,d=["up","down"].indexOf(i.direction)!==-1;i.type==="dropdown"&&(d?f=h.headerHeight+Go.gapButtonHeader:c=h.headerWidth+Go.gapButtonHeader),i.type==="dropdown"&&i.direction==="up"&&(f=-Go.gapButtonHeader+Go.gapButton-h.openHeight),i.type==="dropdown"&&i.direction==="left"&&(c=-Go.gapButtonHeader+Go.gapButton-h.openWidth);var v={x:h.lx+c+i.pad.l,y:h.ly+f+i.pad.t,yPad:Go.gapButton,xPad:Go.gapButton,index:0},x={l:v.x+i.borderwidth,t:v.y+i.borderwidth};s.each(function(b,p){var E=gT.select(this);E.call(VU,i,b,e).call(B0e,i,v),E.on("click",function(){gT.event.defaultPrevented||(b.execute&&(b.args2&&i.active===p?(NU(e,i,b,t,r,n,-1),t4.executeAPICommand(e,b.method,b.args2)):(NU(e,i,b,t,r,n,p),t4.executeAPICommand(e,b.method,b.args))),e.emit("plotly_buttonclicked",{menu:i,button:b,active:i.active}))}),E.on("mouseover",function(){E.call(F0e)}),E.on("mouseout",function(){E.call(q0e,i),s.call(I0e,i)})}),s.call(I0e,i),d?(x.w=Math.max(h.openWidth,h.headerWidth),x.h=v.y-x.t):(x.w=v.x-x.l,x.h=Math.max(h.openHeight,h.headerHeight)),x.direction=i.direction,n&&(s.size()?h0t(e,t,r,n,i,x):d0t(n))}function h0t(e,t,r,n,i,a){var o=i.direction,s=o==="up"||o==="down",l=i._dims,u=i.active,c,f,h;if(s)for(f=0,h=0;h<u;h++)f+=l.heights[h]+Go.gapButton;else for(c=0,h=0;h<u;h++)c+=l.widths[h]+Go.gapButton;n.enable(a,c,f),n.hbar&&n.hbar.attr("opacity","0").transition().attr("opacity","1"),n.vbar&&n.vbar.attr("opacity","0").transition().attr("opacity","1")}function d0t(e){var t=!!e.hbar,r=!!e.vbar;t&&e.hbar.transition().attr("opacity","0").each("end",function(){t=!1,r||e.disable()}),r&&e.vbar.transition().attr("opacity","0").each("end",function(){r=!1,t||e.disable()})}function VU(e,t,r,n){e.call(v0t,t).call(p0t,t,r,n)}function v0t(e,t){var r=e0.ensureSingle(e,"rect",Go.itemRectClassName,function(n){n.attr({rx:Go.rx,ry:Go.ry,"shape-rendering":"crispEdges"})});r.call(r4.stroke,t.bordercolor).call(r4.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px")}function p0t(e,t,r,n){var i=e0.ensureSingle(e,"text",Go.itemTextClassName,function(s){s.attr({"text-anchor":"start","data-notex":1})}),a=r.label,o=n._fullLayout._meta;o&&(a=e0.templateString(a,o)),i.call(mT.font,t.font).text(a).call(gI.convertToTspans,n)}function I0e(e,t){var r=t.active;e.each(function(n,i){var a=gT.select(this);i===r&&t.showactive&&a.select("rect."+Go.itemRectClassName).call(r4.fill,Go.activeColor)})}function F0e(e){e.select("rect."+Go.itemRectClassName).call(r4.fill,Go.hoverColor)}function q0e(e,t){e.select("rect."+Go.itemRectClassName).call(r4.fill,t.bgcolor)}function g0t(e,t){var r=t._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},n=mT.tester.selectAll("g."+Go.dropdownButtonClassName).data(e0.filterVisible(t.buttons));n.enter().append("g").classed(Go.dropdownButtonClassName,!0);var i=["up","down"].indexOf(t.direction)!==-1;n.each(function(c,f){var h=gT.select(this);h.call(VU,t,c,e);var d=h.select("."+Go.itemTextClassName),v=d.node()&&mT.bBox(d.node()).width,x=Math.max(v+Go.textPadX,Go.minWidth),b=t.font.size*R0e,p=gI.lineCount(d),E=Math.max(b*p,Go.minHeight)+Go.textOffsetY;E=Math.ceil(E),x=Math.ceil(x),r.widths[f]=x,r.heights[f]=E,r.height1=Math.max(r.height1,E),r.width1=Math.max(r.width1,x),i?(r.totalWidth=Math.max(r.totalWidth,x),r.openWidth=r.totalWidth,r.totalHeight+=E+Go.gapButton,r.openHeight+=E+Go.gapButton):(r.totalWidth+=x+Go.gapButton,r.openWidth+=x+Go.gapButton,r.totalHeight=Math.max(r.totalHeight,E),r.openHeight=r.totalHeight)}),i?r.totalHeight-=Go.gapButton:r.totalWidth-=Go.gapButton,r.headerWidth=r.width1+Go.arrowPadX,r.headerHeight=r.height1,t.type==="dropdown"&&(i?(r.width1+=Go.arrowPadX,r.totalHeight=r.height1):r.totalWidth=r.width1,r.totalWidth+=Go.arrowPadX),n.remove();var a=r.totalWidth+t.pad.l+t.pad.r,o=r.totalHeight+t.pad.t+t.pad.b,s=e._fullLayout._size;r.lx=s.l+s.w*t.x,r.ly=s.t+s.h*(1-t.y);var l="left";e0.isRightAnchor(t)&&(r.lx-=a,l="right"),e0.isCenterAnchor(t)&&(r.lx-=a/2,l="center");var u="top";e0.isBottomAnchor(t)&&(r.ly-=o,u="bottom"),e0.isMiddleAnchor(t)&&(r.ly-=o/2,u="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),t4.autoMargin(e,O0e(t),{x:t.x,y:t.y,l:a*({right:1,center:.5}[l]||0),r:a*({left:1,center:.5}[l]||0),b:o*({top:1,middle:.5}[u]||0),t:o*({bottom:1,middle:.5}[u]||0)})}function O0e(e){return Go.autoMarginIdRoot+e._index}function B0e(e,t,r,n){n=n||{};var i=e.select("."+Go.itemRectClassName),a=e.select("."+Go.itemTextClassName),o=t.borderwidth,s=r.index,l=t._dims;mT.setTranslate(e,o+r.x,o+r.y);var u=["up","down"].indexOf(t.direction)!==-1,c=n.height||(u?l.heights[s]:l.height1);i.attr({x:0,y:0,width:n.width||(u?l.width1:l.widths[s]),height:c});var f=t.font.size*R0e,h=gI.lineCount(a),d=(h-1)*f/2;gI.positionText(a,Go.textOffsetX,c/2-d+Go.textOffsetY),u?r.y+=l.heights[s]+r.yPad:r.x+=l.widths[s]+r.xPad,r.index++}function UU(e,t){e.attr(Go.menuIndexAttrName,t||"-1").selectAll("g."+Go.dropdownButtonClassName).remove()}});var H0e=ye((Rar,V0e)=>{"use strict";var m0t=dI();V0e.exports={moduleType:"component",name:m0t.name,layoutAttributes:BU(),supplyLayoutDefaults:k0e(),draw:U0e()}});var n4=ye((Dar,G0e)=>{"use strict";G0e.exports={name:"sliders",containerClassName:"slider-container",groupClassName:"slider-group",inputAreaClass:"slider-input-area",railRectClass:"slider-rail-rect",railTouchRectClass:"slider-rail-touch-rect",gripRectClass:"slider-grip-rect",tickRectClass:"slider-tick-rect",inputProxyClass:"slider-input-proxy",labelsClass:"slider-labels",labelGroupClass:"slider-label-group",labelClass:"slider-label",currentValueClass:"slider-current-value",railHeight:5,menuIndexAttrName:"slider-active-index",autoMarginIdRoot:"slider-",minWidth:30,minHeight:30,textPadX:40,arrowOffsetX:4,railRadius:2,railWidth:5,railBorder:4,railBorderWidth:1,railBorderColor:"#bec8d9",railBgColor:"#f8fafc",railInset:8,stepInset:10,gripRadius:10,gripWidth:20,gripHeight:20,gripBorder:20,gripBorderWidth:1,gripBorderColor:"#bec8d9",gripBgColor:"#f6f8fa",gripBgActiveColor:"#dbdde0",labelPadding:8,labelOffset:0,tickWidth:1,tickColor:"#333",tickOffset:25,tickLength:7,minorTickOffset:25,minorTickColor:"#333",minorTickLength:4,currentValuePadding:8,currentValueInset:0}});var HU=ye((zar,Z0e)=>{"use strict";var j0e=Su(),y0t=w6(),_0t=no().extendDeepAll,x0t=Bu().overrideAll,b0t=zS(),W0e=Vs().templatedArray,Jb=n4(),w0t=W0e("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}});Z0e.exports=x0t(W0e("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:w0t,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:_0t(y0t({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:b0t.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:j0e({})},font:j0e({}),activebgcolor:{valType:"color",dflt:Jb.gripBgActiveColor},bgcolor:{valType:"color",dflt:Jb.railBgColor},bordercolor:{valType:"color",dflt:Jb.railBorderColor},borderwidth:{valType:"number",min:0,dflt:Jb.railBorderWidth},ticklen:{valType:"number",min:0,dflt:Jb.tickLength},tickcolor:{valType:"color",dflt:Jb.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:Jb.minorTickLength}}),"arraydraw","from-root")});var J0e=ye((Far,K0e)=>{"use strict";var yT=Mr(),X0e=Zd(),Y0e=HU(),T0t=n4(),A0t=T0t.name,S0t=Y0e.steps;K0e.exports=function(t,r){X0e(t,r,{name:A0t,handleItemDefaults:M0t})};function M0t(e,t,r){function n(f,h){return yT.coerce(e,t,Y0e,f,h)}for(var i=X0e(e,t,{name:"steps",handleItemDefaults:E0t}),a=0,o=0;o<i.length;o++)i[o].visible&&a++;var s;if(a<2?s=t.visible=!1:s=n("visible"),!!s){t._stepCount=a;var l=t._visibleSteps=yT.filterVisible(i),u=n("active");(i[u]||{}).visible||(t.active=l[0]._index),n("x"),n("y"),yT.noneOrAll(e,t,["x","y"]),n("xanchor"),n("yanchor"),n("len"),n("lenmode"),n("pad.t"),n("pad.r"),n("pad.b"),n("pad.l"),yT.coerceFont(n,"font",r.font);var c=n("currentvalue.visible");c&&(n("currentvalue.xanchor"),n("currentvalue.prefix"),n("currentvalue.suffix"),n("currentvalue.offset"),yT.coerceFont(n,"currentvalue.font",t.font)),n("transition.duration"),n("transition.easing"),n("bgcolor"),n("activebgcolor"),n("bordercolor"),n("borderwidth"),n("ticklen"),n("tickwidth"),n("tickcolor"),n("minorticklen")}}function E0t(e,t){function r(a,o){return yT.coerce(e,t,S0t,a,o)}var n;if(e.method!=="skip"&&!Array.isArray(e.args)?n=t.visible=!1:n=r("visible"),n){r("method"),r("args");var i=r("label","step-"+t._index);r("value",i),r("execute")}}});var sge=ye((qar,oge)=>{"use strict";var Og=xa(),mI=Xu(),x_=va(),Bg=ao(),t0=Mr(),k0t=t0.strTranslate,a4=Pl(),C0t=Vs().arrayEditor,gs=n4(),WU=Nh(),ege=WU.LINE_SPACING,GU=WU.FROM_TL,jU=WU.FROM_BR;oge.exports=function(t){var r=t._context.staticPlot,n=t._fullLayout,i=L0t(n,t),a=n._infolayer.selectAll("g."+gs.containerClassName).data(i.length>0?[0]:[]);a.enter().append("g").classed(gs.containerClassName,!0).style("cursor",r?null:"ew-resize");function o(c){c._commandObserver&&(c._commandObserver.remove(),delete c._commandObserver),mI.autoMargin(t,tge(c))}if(a.exit().each(function(){Og.select(this).selectAll("g."+gs.groupClassName).each(o)}).remove(),i.length!==0){var s=a.selectAll("g."+gs.groupClassName).data(i,P0t);s.enter().append("g").classed(gs.groupClassName,!0),s.exit().each(o).remove();for(var l=0;l<i.length;l++){var u=i[l];I0t(t,u)}s.each(function(c){var f=Og.select(this);q0t(c),mI.manageCommandObserver(t,c,c._visibleSteps,function(h){var d=f.data()[0];d.active!==h.index&&(d._dragging||ige(t,f,d,h.index,!1,!0))}),R0t(t,Og.select(this),c)})}};function tge(e){return gs.autoMarginIdRoot+e._index}function L0t(e,t){for(var r=e[gs.name],n=[],i=0;i<r.length;i++){var a=r[i];a.visible&&(a._gd=t,n.push(a))}return n}function P0t(e){return e._index}function I0t(e,t){var r=Bg.tester.selectAll("g."+gs.labelGroupClass).data(t._visibleSteps);r.enter().append("g").classed(gs.labelGroupClass,!0);var n=0,i=0;r.each(function(v){var x=Og.select(this),b=rge(x,{step:v},t),p=b.node();if(p){var E=Bg.bBox(p);i=Math.max(i,E.height),n=Math.max(n,E.width)}}),r.remove();var a=t._dims={};a.inputAreaWidth=Math.max(gs.railWidth,gs.gripHeight);var o=e._fullLayout._size;a.lx=o.l+o.w*t.x,a.ly=o.t+o.h*(1-t.y),t.lenmode==="fraction"?a.outerLength=Math.round(o.w*t.len):a.outerLength=t.len,a.inputAreaStart=0,a.inputAreaLength=Math.round(a.outerLength-t.pad.l-t.pad.r);var s=a.inputAreaLength-2*gs.stepInset,l=s/(t._stepCount-1),u=n+gs.labelPadding;if(a.labelStride=Math.max(1,Math.ceil(u/l)),a.labelHeight=i,a.currentValueMaxWidth=0,a.currentValueHeight=0,a.currentValueTotalHeight=0,a.currentValueMaxLines=1,t.currentvalue.visible){var c=Bg.tester.append("g");r.each(function(v){var x=yI(c,t,v.label),b=x.node()&&Bg.bBox(x.node())||{width:0,height:0},p=a4.lineCount(x);a.currentValueMaxWidth=Math.max(a.currentValueMaxWidth,Math.ceil(b.width)),a.currentValueHeight=Math.max(a.currentValueHeight,Math.ceil(b.height)),a.currentValueMaxLines=Math.max(a.currentValueMaxLines,p)}),a.currentValueTotalHeight=a.currentValueHeight+t.currentvalue.offset,c.remove()}a.height=a.currentValueTotalHeight+gs.tickOffset+t.ticklen+gs.labelOffset+a.labelHeight+t.pad.t+t.pad.b;var f="left";t0.isRightAnchor(t)&&(a.lx-=a.outerLength,f="right"),t0.isCenterAnchor(t)&&(a.lx-=a.outerLength/2,f="center");var h="top";t0.isBottomAnchor(t)&&(a.ly-=a.height,h="bottom"),t0.isMiddleAnchor(t)&&(a.ly-=a.height/2,h="middle"),a.outerLength=Math.ceil(a.outerLength),a.height=Math.ceil(a.height),a.lx=Math.round(a.lx),a.ly=Math.round(a.ly);var d={y:t.y,b:a.height*jU[h],t:a.height*GU[h]};t.lenmode==="fraction"?(d.l=0,d.xl=t.x-t.len*GU[f],d.r=0,d.xr=t.x+t.len*jU[f]):(d.x=t.x,d.l=a.outerLength*GU[f],d.r=a.outerLength*jU[f]),mI.autoMargin(e,tge(t),d)}function R0t(e,t,r){(r.steps[r.active]||{}).visible||(r.active=r._visibleSteps[0]._index),t.call(yI,r).call(B0t,r).call(z0t,r).call(F0t,r).call(O0t,e,r).call(D0t,e,r);var n=r._dims;Bg.setTranslate(t,n.lx+r.pad.l,n.ly+r.pad.t),t.call(age,r,!1),t.call(yI,r)}function yI(e,t,r){if(t.currentvalue.visible){var n=t._dims,i,a;switch(t.currentvalue.xanchor){case"right":i=n.inputAreaLength-gs.currentValueInset-n.currentValueMaxWidth,a="left";break;case"center":i=n.inputAreaLength*.5,a="middle";break;default:i=gs.currentValueInset,a="left"}var o=t0.ensureSingle(e,"text",gs.labelClass,function(h){h.attr({"text-anchor":a,"data-notex":1})}),s=t.currentvalue.prefix?t.currentvalue.prefix:"";if(typeof r=="string")s+=r;else{var l=t.steps[t.active].label,u=t._gd._fullLayout._meta;u&&(l=t0.templateString(l,u)),s+=l}t.currentvalue.suffix&&(s+=t.currentvalue.suffix),o.call(Bg.font,t.currentvalue.font).text(s).call(a4.convertToTspans,t._gd);var c=a4.lineCount(o),f=(n.currentValueMaxLines+1-c)*t.currentvalue.font.size*ege;return a4.positionText(o,i,f),o}}function D0t(e,t,r){var n=t0.ensureSingle(e,"rect",gs.gripRectClass,function(i){i.call(nge,t,e,r).style("pointer-events","all")});n.attr({width:gs.gripWidth,height:gs.gripHeight,rx:gs.gripRadius,ry:gs.gripRadius}).call(x_.stroke,r.bordercolor).call(x_.fill,r.bgcolor).style("stroke-width",r.borderwidth+"px")}function rge(e,t,r){var n=t0.ensureSingle(e,"text",gs.labelClass,function(o){o.attr({"text-anchor":"middle","data-notex":1})}),i=t.step.label,a=r._gd._fullLayout._meta;return a&&(i=t0.templateString(i,a)),n.call(Bg.font,r.font).text(i).call(a4.convertToTspans,r._gd),n}function z0t(e,t){var r=t0.ensureSingle(e,"g",gs.labelsClass),n=t._dims,i=r.selectAll("g."+gs.labelGroupClass).data(n.labelSteps);i.enter().append("g").classed(gs.labelGroupClass,!0),i.exit().remove(),i.each(function(a){var o=Og.select(this);o.call(rge,a,t),Bg.setTranslate(o,ZU(t,a.fraction),gs.tickOffset+t.ticklen+t.font.size*ege+gs.labelOffset+n.currentValueTotalHeight)})}function $0e(e,t,r,n,i){var a=Math.round(n*(r._stepCount-1)),o=r._visibleSteps[a]._index;o!==r.active&&ige(e,t,r,o,!0,i)}function ige(e,t,r,n,i,a){var o=r.active;r.active=n,C0t(e.layout,gs.name,r).applyUpdate("active",n);var s=r.steps[r.active];t.call(age,r,a),t.call(yI,r),e.emit("plotly_sliderchange",{slider:r,step:r.steps[r.active],interaction:i,previousActive:o}),s&&s.method&&i&&(t._nextMethod?(t._nextMethod.step=s,t._nextMethod.doCallback=i,t._nextMethod.doTransition=a):(t._nextMethod={step:s,doCallback:i,doTransition:a},t._nextMethodRaf=window.requestAnimationFrame(function(){var l=t._nextMethod.step;l.method&&(l.execute&&mI.executeAPICommand(e,l.method,l.args),t._nextMethod=null,t._nextMethodRaf=null)})))}function nge(e,t,r){if(t._context.staticPlot)return;var n=r.node(),i=Og.select(t);function a(){return r.data()[0]}function o(){var s=a();t.emit("plotly_sliderstart",{slider:s});var l=r.select("."+gs.gripRectClass);Og.event.stopPropagation(),Og.event.preventDefault(),l.call(x_.fill,s.activebgcolor);var u=Q0e(s,Og.mouse(n)[0]);$0e(t,r,s,u,!0),s._dragging=!0;function c(){var h=a(),d=Q0e(h,Og.mouse(n)[0]);$0e(t,r,h,d,!1)}i.on("mousemove",c),i.on("touchmove",c);function f(){var h=a();h._dragging=!1,l.call(x_.fill,h.bgcolor),i.on("mouseup",null),i.on("mousemove",null),i.on("touchend",null),i.on("touchmove",null),t.emit("plotly_sliderend",{slider:h,step:h.steps[h.active]})}i.on("mouseup",f),i.on("touchend",f)}e.on("mousedown",o),e.on("touchstart",o)}function F0t(e,t){var r=e.selectAll("rect."+gs.tickRectClass).data(t._visibleSteps),n=t._dims;r.enter().append("rect").classed(gs.tickRectClass,!0),r.exit().remove(),r.attr({width:t.tickwidth+"px","shape-rendering":"crispEdges"}),r.each(function(i,a){var o=a%n.labelStride===0,s=Og.select(this);s.attr({height:o?t.ticklen:t.minorticklen}).call(x_.fill,t.tickcolor),Bg.setTranslate(s,ZU(t,a/(t._stepCount-1))-.5*t.tickwidth,(o?gs.tickOffset:gs.minorTickOffset)+n.currentValueTotalHeight)})}function q0t(e){var t=e._dims;t.labelSteps=[];for(var r=e._stepCount,n=0;n<r;n+=t.labelStride)t.labelSteps.push({fraction:n/(r-1),step:e._visibleSteps[n]})}function age(e,t,r){for(var n=e.select("rect."+gs.gripRectClass),i=0,a=0;a<t._stepCount;a++)if(t._visibleSteps[a]._index===t.active){i=a;break}var o=ZU(t,i/(t._stepCount-1));if(!t._invokingCommand){var s=n;r&&t.transition.duration>0&&(s=s.transition().duration(t.transition.duration).ease(t.transition.easing)),s.attr("transform",k0t(o-gs.gripWidth*.5,t._dims.currentValueTotalHeight))}}function ZU(e,t){var r=e._dims;return r.inputAreaStart+gs.stepInset+(r.inputAreaLength-2*gs.stepInset)*Math.min(1,Math.max(0,t))}function Q0e(e,t){var r=e._dims;return Math.min(1,Math.max(0,(t-gs.stepInset-r.inputAreaStart)/(r.inputAreaLength-2*gs.stepInset-2*r.inputAreaStart)))}function O0t(e,t,r){var n=r._dims,i=t0.ensureSingle(e,"rect",gs.railTouchRectClass,function(a){a.call(nge,t,e,r).style("pointer-events","all")});i.attr({width:n.inputAreaLength,height:Math.max(n.inputAreaWidth,gs.tickOffset+r.ticklen+n.labelHeight)}).call(x_.fill,r.bgcolor).attr("opacity",0),Bg.setTranslate(i,0,n.currentValueTotalHeight)}function B0t(e,t){var r=t._dims,n=r.inputAreaLength-gs.railInset*2,i=t0.ensureSingle(e,"rect",gs.railRectClass);i.attr({width:n,height:gs.railWidth,rx:gs.railRadius,ry:gs.railRadius,"shape-rendering":"crispEdges"}).call(x_.stroke,t.bordercolor).call(x_.fill,t.bgcolor).style("stroke-width",t.borderwidth+"px"),Bg.setTranslate(i,gs.railInset,(r.inputAreaWidth-gs.railWidth)*.5+r.currentValueTotalHeight)}});var uge=ye((Oar,lge)=>{"use strict";var N0t=n4();lge.exports={moduleType:"component",name:N0t.name,layoutAttributes:HU(),supplyLayoutDefaults:J0e(),draw:sge()}});var _I=ye((Bar,fge)=>{"use strict";var cge=dh();fge.exports={bgcolor:{valType:"color",dflt:cge.background,editType:"plot"},bordercolor:{valType:"color",dflt:cge.defaultLine,editType:"plot"},borderwidth:{valType:"integer",dflt:0,min:0,editType:"plot"},autorange:{valType:"boolean",dflt:!0,editType:"calc",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},range:{valType:"info_array",items:[{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"calc",impliedEdits:{"^autorange":!1}}],editType:"calc",impliedEdits:{autorange:!1}},thickness:{valType:"number",dflt:.15,min:0,max:1,editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"calc"},editType:"calc"}});var XU=ye((Nar,hge)=>{"use strict";hge.exports={_isSubplotObj:!0,rangemode:{valType:"enumerated",values:["auto","fixed","match"],dflt:"match",editType:"calc"},range:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},editType:"calc"}});var xI=ye((Uar,dge)=>{"use strict";dge.exports={name:"rangeslider",containerClassName:"rangeslider-container",bgClassName:"rangeslider-bg",rangePlotClassName:"rangeslider-rangeplot",maskMinClassName:"rangeslider-mask-min",maskMaxClassName:"rangeslider-mask-max",slideBoxClassName:"rangeslider-slidebox",grabberMinClassName:"rangeslider-grabber-min",grabAreaMinClassName:"rangeslider-grabarea-min",handleMinClassName:"rangeslider-handle-min",grabberMaxClassName:"rangeslider-grabber-max",grabAreaMaxClassName:"rangeslider-grabarea-max",handleMaxClassName:"rangeslider-handle-max",maskMinOppAxisClassName:"rangeslider-mask-min-opp-axis",maskMaxOppAxisClassName:"rangeslider-mask-max-opp-axis",maskColor:"rgba(0,0,0,0.4)",maskOppAxisColor:"rgba(0,0,0,0.2)",slideBoxFill:"transparent",slideBoxCursor:"ew-resize",grabAreaFill:"transparent",grabAreaCursor:"col-resize",grabAreaWidth:10,handleWidth:4,handleRadius:1,handleStrokeWidth:1,extraPad:15}});var gge=ye(wI=>{"use strict";var U0t=af(),V0t=Pl(),vge=xI(),H0t=Nh().LINE_SPACING,bI=vge.name;function pge(e){var t=e&&e[bI];return t&&t.visible}wI.isVisible=pge;wI.makeData=function(e){for(var t=U0t.list({_fullLayout:e},"x",!0),r=e.margin,n=[],i=0;i<t.length;i++){var a=t[i];if(pge(a)){n.push(a);var o=a[bI];o._id=bI+a._id,o._height=(e.height-r.b-r.t)*o.thickness,o._offsetShift=Math.floor(o.borderwidth/2)}}e._rangeSliderData=n};wI.autoMarginOpts=function(e,t){var r=e._fullLayout,n=t[bI],i=t._id.charAt(0),a=0,o=0;if(t.side==="bottom"&&(a=t._depth,t.title.text!==r._dfltTitle[i])){o=1.5*t.title.font.size+10+n._offsetShift;var s=(t.title.text.match(V0t.BR_TAG_ALL)||[]).length;o+=s*t.title.font.size*H0t}return{x:0,y:t._counterDomainMin,l:0,r:0,t:0,b:n._height+a+Math.max(r.margin.b,o),pad:vge.extraPad+n._offsetShift*2}}});var xge=ye((Har,_ge)=>{"use strict";var TI=Mr(),mge=Vs(),yge=af(),G0t=_I(),j0t=XU();_ge.exports=function(t,r,n){var i=t[n],a=r[n];if(!(i.rangeslider||r._requestRangeslider[a._id]))return;TI.isPlainObject(i.rangeslider)||(i.rangeslider={});var o=i.rangeslider,s=mge.newContainer(a,"rangeslider");function l(L,_){return TI.coerce(o,s,G0t,L,_)}var u,c;function f(L,_){return TI.coerce(u,c,j0t,L,_)}var h=l("visible");if(h){l("bgcolor",r.plot_bgcolor),l("bordercolor"),l("borderwidth"),l("thickness"),l("autorange",!a.isValidRange(o.range)),l("range");var d=r._subplots;if(d)for(var v=d.cartesian.filter(function(L){return L.substr(0,L.indexOf("y"))===yge.name2id(n)}).map(function(L){return L.substr(L.indexOf("y"),L.length)}),x=TI.simpleMap(v,yge.id2name),b=0;b<x.length;b++){var p=x[b];u=o[p]||{},c=mge.newContainer(s,p,"yaxis");var E=r[p],k;u.range&&E.isValidRange(u.range)&&(k="fixed");var A=f("rangemode",k);A!=="match"&&f("range",E.range.slice())}s._input=o}}});var wge=ye((Gar,bge)=>{"use strict";var W0t=af().list,Z0t=wg().getAutoRange,X0t=xI();bge.exports=function(t){for(var r=W0t(t,"x",!0),n=0;n<r.length;n++){var i=r[n],a=i[X0t.name];a&&a.visible&&a.autorange&&(a._input.autorange=!0,a._input.range=a.range=Z0t(t,i))}}});var Mge=ye((jar,Sge)=>{"use strict";var AI=xa(),Y0t=ba(),K0t=Xu(),Ff=Mr(),SI=Ff.strTranslate,Age=ao(),b_=va(),J0t=Mb(),$0t=Jf(),YU=af(),Q0t=gv(),egt=Tg(),Bs=xI();Sge.exports=function(e){for(var t=e._fullLayout,r=t._rangeSliderData,n=0;n<r.length;n++){var i=r[n][Bs.name];i._clipId=i._id+"-"+t._uid}function a(s){return s._name}var o=t._infolayer.selectAll("g."+Bs.containerClassName).data(r,a);o.exit().each(function(s){var l=s[Bs.name];t._topdefs.select("#"+l._clipId).remove()}).remove(),r.length!==0&&(o.enter().append("g").classed(Bs.containerClassName,!0).attr("pointer-events","all"),o.each(function(s){var l=AI.select(this),u=s[Bs.name],c=t[YU.id2name(s.anchor)],f=u[YU.id2name(s.anchor)];if(u.range){var h=Ff.simpleMap(u.range,s.r2l),d=Ff.simpleMap(s.range,s.r2l),v;d[0]<d[1]?v=[Math.min(h[0],d[0]),Math.max(h[1],d[1])]:v=[Math.max(h[0],d[0]),Math.min(h[1],d[1])],u.range=u._input.range=Ff.simpleMap(v,s.l2r)}s.cleanRange("rangeslider.range");var x=t._size,b=s.domain;u._width=x.w*(b[1]-b[0]);var p=Math.round(x.l+x.w*b[0]),E=Math.round(x.t+x.h*(1-s._counterDomainMin)+(s.side==="bottom"?s._depth:0)+u._offsetShift+Bs.extraPad);l.attr("transform",SI(p,E)),u._rl=Ff.simpleMap(u.range,s.r2l);var k=u._rl[0],A=u._rl[1],L=A-k;if(u.p2d=function(H){return H/u._width*L+k},u.d2p=function(H){return(H-k)/L*u._width},s.rangebreaks){var _=s.locateBreaks(k,A);if(_.length){var C,M,g=0;for(C=0;C<_.length;C++)M=_[C],g+=M.max-M.min;var P=u._width/(A-k-g),T=[-P*k];for(C=0;C<_.length;C++)M=_[C],T.push(T[T.length-1]-P*(M.max-M.min));for(u.d2p=function(H){for(var X=T[0],G=0;G<_.length;G++){var N=_[G];if(H>=N.max)X=T[G+1];else if(H<N.min)break}return X+P*H},C=0;C<_.length;C++)M=_[C],M.pmin=u.d2p(M.min),M.pmax=u.d2p(M.max);u.p2d=function(H){for(var X=T[0],G=0;G<_.length;G++){var N=_[G];if(H>=N.pmax)X=T[G+1];else if(H<N.pmin)break}return(H-X)/P}}}if(f.rangemode!=="match"){var F=c.r2l(f.range[0]),q=c.r2l(f.range[1]),V=q-F;u.d2pOppAxis=function(H){return(H-F)/V*u._height}}l.call(ngt,e,s,u).call(agt,e,s,u).call(ogt,e,s,u).call(lgt,e,s,u,f).call(ugt,e,s,u).call(cgt,e,s,u),tgt(l,e,s,u),igt(l,e,s,u,c,f),s.side==="bottom"&&J0t.draw(e,s._id+"title",{propContainer:s,propName:s._name+".title",placeholder:t._dfltTitle.x,attributes:{x:s._offset+s._length/2,y:E+u._height+u._offsetShift+10+1.5*s.title.font.size,"text-anchor":"middle"}})}))};function Tge(e){return typeof e.clientX=="number"?e.clientX:e.touches&&e.touches.length>0?e.touches[0].clientX:0}function tgt(e,t,r,n){if(t._context.staticPlot)return;var i=e.select("rect."+Bs.slideBoxClassName).node(),a=e.select("rect."+Bs.grabAreaMinClassName).node(),o=e.select("rect."+Bs.grabAreaMaxClassName).node();function s(){var l=AI.event,u=l.target,c=Tge(l),f=c-e.node().getBoundingClientRect().left,h=n.d2p(r._rl[0]),d=n.d2p(r._rl[1]),v=Q0t.coverSlip();this.addEventListener("touchmove",x),this.addEventListener("touchend",b),v.addEventListener("mousemove",x),v.addEventListener("mouseup",b);function x(p){var E=Tge(p),k=+E-c,A,L,_;switch(u){case i:if(_="ew-resize",h+k>r._length||d+k<0)return;A=h+k,L=d+k;break;case a:if(_="col-resize",h+k>r._length)return;A=h+k,L=d;break;case o:if(_="col-resize",d+k<0)return;A=h,L=d+k;break;default:_="ew-resize",A=f,L=f+k;break}if(L<A){var C=L;L=A,A=C}n._pixelMin=A,n._pixelMax=L,egt(AI.select(v),_),rgt(e,t,r,n)}function b(){v.removeEventListener("mousemove",x),v.removeEventListener("mouseup",b),this.removeEventListener("touchmove",x),this.removeEventListener("touchend",b),Ff.removeElement(v)}}e.on("mousedown",s),e.on("touchstart",s)}function rgt(e,t,r,n){function i(s){return r.l2r(Ff.constrain(s,n._rl[0],n._rl[1]))}var a=i(n.p2d(n._pixelMin)),o=i(n.p2d(n._pixelMax));window.requestAnimationFrame(function(){Y0t.call("_guiRelayout",t,r._name+".range",[a,o])})}function igt(e,t,r,n,i,a){var o=Bs.handleWidth/2;function s(p){return Ff.constrain(p,0,n._width)}function l(p){return Ff.constrain(p,0,n._height)}function u(p){return Ff.constrain(p,-o,n._width+o)}var c=s(n.d2p(r._rl[0])),f=s(n.d2p(r._rl[1]));if(e.select("rect."+Bs.slideBoxClassName).attr("x",c).attr("width",f-c),e.select("rect."+Bs.maskMinClassName).attr("width",c),e.select("rect."+Bs.maskMaxClassName).attr("x",f).attr("width",n._width-f),a.rangemode!=="match"){var h=n._height-l(n.d2pOppAxis(i._rl[1])),d=n._height-l(n.d2pOppAxis(i._rl[0]));e.select("rect."+Bs.maskMinOppAxisClassName).attr("x",c).attr("height",h).attr("width",f-c),e.select("rect."+Bs.maskMaxOppAxisClassName).attr("x",c).attr("y",d).attr("height",n._height-d).attr("width",f-c),e.select("rect."+Bs.slideBoxClassName).attr("y",h).attr("height",d-h)}var v=.5,x=Math.round(u(c-o))-v,b=Math.round(u(f-o))+v;e.select("g."+Bs.grabberMinClassName).attr("transform",SI(x,v)),e.select("g."+Bs.grabberMaxClassName).attr("transform",SI(b,v))}function ngt(e,t,r,n){var i=Ff.ensureSingle(e,"rect",Bs.bgClassName,function(l){l.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),a=n.borderwidth%2===0?n.borderwidth:n.borderwidth-1,o=-n._offsetShift,s=Age.crispRound(t,n.borderwidth);i.attr({width:n._width+a,height:n._height+a,transform:SI(o,o),"stroke-width":s}).call(b_.stroke,n.bordercolor).call(b_.fill,n.bgcolor)}function agt(e,t,r,n){var i=t._fullLayout,a=Ff.ensureSingleById(i._topdefs,"clipPath",n._clipId,function(o){o.append("rect").attr({x:0,y:0})});a.select("rect").attr({width:n._width,height:n._height})}function ogt(e,t,r,n){var i=t.calcdata,a=e.selectAll("g."+Bs.rangePlotClassName).data(r._subplotsWith,Ff.identity);a.enter().append("g").attr("class",function(s){return Bs.rangePlotClassName+" "+s}).call(Age.setClipUrl,n._clipId,t),a.order(),a.exit().remove();var o;a.each(function(s,l){var u=AI.select(this),c=l===0,f=YU.getFromId(t,s,"y"),h=f._name,d=n[h],v={data:[],layout:{xaxis:{type:r.type,domain:[0,1],range:n.range.slice(),calendar:r.calendar},width:n._width,height:n._height,margin:{t:0,b:0,l:0,r:0}},_context:t._context};r.rangebreaks&&(v.layout.xaxis.rangebreaks=r.rangebreaks),v.layout[h]={type:f.type,domain:[0,1],range:d.rangemode!=="match"?d.range.slice():f.range.slice(),calendar:f.calendar},f.rangebreaks&&(v.layout[h].rangebreaks=f.rangebreaks),K0t.supplyDefaults(v);var x=v._fullLayout.xaxis,b=v._fullLayout[h];x.clearCalc(),x.setScale(),b.clearCalc(),b.setScale();var p={id:s,plotgroup:u,xaxis:x,yaxis:b,isRangePlot:!0};c?o=p:(p.mainplot="xy",p.mainplotinfo=o),$0t.rangePlot(t,p,sgt(i,s))})}function sgt(e,t){for(var r=[],n=0;n<e.length;n++){var i=e[n],a=i[0].trace;a.xaxis+a.yaxis===t&&r.push(i)}return r}function lgt(e,t,r,n,i){var a=Ff.ensureSingle(e,"rect",Bs.maskMinClassName,function(u){u.attr({x:0,y:0,"shape-rendering":"crispEdges"})});a.attr("height",n._height).call(b_.fill,Bs.maskColor);var o=Ff.ensureSingle(e,"rect",Bs.maskMaxClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});if(o.attr("height",n._height).call(b_.fill,Bs.maskColor),i.rangemode!=="match"){var s=Ff.ensureSingle(e,"rect",Bs.maskMinOppAxisClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});s.attr("width",n._width).call(b_.fill,Bs.maskOppAxisColor);var l=Ff.ensureSingle(e,"rect",Bs.maskMaxOppAxisClassName,function(u){u.attr({y:0,"shape-rendering":"crispEdges"})});l.attr("width",n._width).style("border-top",Bs.maskOppBorder).call(b_.fill,Bs.maskOppAxisColor)}}function ugt(e,t,r,n){if(!t._context.staticPlot){var i=Ff.ensureSingle(e,"rect",Bs.slideBoxClassName,function(a){a.attr({y:0,cursor:Bs.slideBoxCursor,"shape-rendering":"crispEdges"})});i.attr({height:n._height,fill:Bs.slideBoxFill})}}function cgt(e,t,r,n){var i=Ff.ensureSingle(e,"g",Bs.grabberMinClassName),a=Ff.ensureSingle(e,"g",Bs.grabberMaxClassName),o={x:0,width:Bs.handleWidth,rx:Bs.handleRadius,fill:b_.background,stroke:b_.defaultLine,"stroke-width":Bs.handleStrokeWidth,"shape-rendering":"crispEdges"},s={y:Math.round(n._height/4),height:Math.round(n._height/2)},l=Ff.ensureSingle(i,"rect",Bs.handleMinClassName,function(d){d.attr(o)});l.attr(s);var u=Ff.ensureSingle(a,"rect",Bs.handleMaxClassName,function(d){d.attr(o)});u.attr(s);var c={width:Bs.grabAreaWidth,x:0,y:0,fill:Bs.grabAreaFill,cursor:t._context.staticPlot?void 0:Bs.grabAreaCursor},f=Ff.ensureSingle(i,"rect",Bs.grabAreaMinClassName,function(d){d.attr(c)});f.attr("height",n._height);var h=Ff.ensureSingle(a,"rect",Bs.grabAreaMaxClassName,function(d){d.attr(c)});h.attr("height",n._height)}});var kge=ye((War,Ege)=>{"use strict";var fgt=Mr(),hgt=_I(),dgt=XU(),KU=gge();Ege.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:fgt.extendFlat({},hgt,{yaxis:dgt})}}},layoutAttributes:_I(),handleDefaults:xge(),calcAutorange:wge(),draw:Mge(),isVisible:KU.isVisible,makeData:KU.makeData,autoMarginOpts:KU.autoMarginOpts}});var MI=ye((Zar,Lge)=>{"use strict";var vgt=Su(),Cge=dh(),pgt=Vs().templatedArray,ggt=pgt("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"});Lge.exports={visible:{valType:"boolean",editType:"plot"},buttons:ggt,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:vgt({editType:"plot"}),bgcolor:{valType:"color",dflt:Cge.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:Cge.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}});var JU=ye((Xar,Pge)=>{"use strict";Pge.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}});var Dge=ye((Yar,Rge)=>{"use strict";var EI=Mr(),mgt=va(),ygt=Vs(),_gt=Zd(),Ige=MI(),$U=JU();Rge.exports=function(t,r,n,i,a){var o=t.rangeselector||{},s=ygt.newContainer(r,"rangeselector");function l(d,v){return EI.coerce(o,s,Ige,d,v)}var u=_gt(o,s,{name:"buttons",handleItemDefaults:xgt,calendar:a}),c=l("visible",u.length>0);if(c){var f=bgt(r,n,i);l("x",f[0]),l("y",f[1]),EI.noneOrAll(t,r,["x","y"]),l("xanchor"),l("yanchor"),EI.coerceFont(l,"font",n.font);var h=l("bgcolor");l("activecolor",mgt.contrast(h,$U.lightAmount,$U.darkAmount)),l("bordercolor"),l("borderwidth")}};function xgt(e,t,r,n){var i=n.calendar;function a(l,u){return EI.coerce(e,t,Ige.buttons,l,u)}var o=a("visible");if(o){var s=a("step");s!=="all"&&(i&&i!=="gregorian"&&(s==="month"||s==="year")?t.stepmode="backward":a("stepmode"),a("count")),a("label")}}function bgt(e,t,r){for(var n=r.filter(function(s){return t[s].anchor===e._id}),i=0,a=0;a<n.length;a++){var o=t[n[a]].domain;o&&(i=Math.max(o[1],i))}return[e.domain[0],i+$U.yPad]}});var Fge=ye((Kar,zge)=>{"use strict";var wgt=dq(),Tgt=Mr().titleCase;zge.exports=function(t,r){var n=t._name,i={};if(r.step==="all")i[n+".autorange"]=!0;else{var a=Agt(t,r);i[n+".range[0]"]=a[0],i[n+".range[1]"]=a[1]}return i};function Agt(e,t){var r=e.range,n=new Date(e.r2l(r[1])),i=t.step,a=wgt["utc"+Tgt(i)],o=t.count,s;switch(t.stepmode){case"backward":s=e.l2r(+a.offset(n,-o));break;case"todate":var l=a.offset(n,-o);s=e.l2r(+a.ceil(l));break}var u=r[1];return[s,u]}});var Gge=ye((Jar,Hge)=>{"use strict";var CI=xa(),Sgt=ba(),Mgt=Xu(),qge=va(),Vge=ao(),Iy=Mr(),Oge=Iy.strTranslate,kI=Pl(),Egt=af(),tV=Nh(),Bge=tV.LINE_SPACING,Nge=tV.FROM_TL,Uge=tV.FROM_BR,eV=JU(),kgt=Fge();Hge.exports=function(t){var r=t._fullLayout,n=r._infolayer.selectAll(".rangeselector").data(Cgt(t),Lgt);n.enter().append("g").classed("rangeselector",!0),n.exit().remove(),n.style({cursor:"pointer","pointer-events":"all"}),n.each(function(i){var a=CI.select(this),o=i,s=o.rangeselector,l=a.selectAll("g.button").data(Iy.filterVisible(s.buttons));l.enter().append("g").classed("button",!0),l.exit().remove(),l.each(function(u){var c=CI.select(this),f=kgt(o,u);u._isActive=Pgt(o,u,f),c.call(QU,s,u),c.call(Rgt,s,u,t),c.on("click",function(){t._dragged||Sgt.call("_guiRelayout",t,f)}),c.on("mouseover",function(){u._isHovered=!0,c.call(QU,s,u)}),c.on("mouseout",function(){u._isHovered=!1,c.call(QU,s,u)})}),zgt(t,l,s,o._name,a)})};function Cgt(e){for(var t=Egt.list(e,"x",!0),r=[],n=0;n<t.length;n++){var i=t[n];i.rangeselector&&i.rangeselector.visible&&r.push(i)}return r}function Lgt(e){return e._id}function Pgt(e,t,r){if(t.step==="all")return e.autorange===!0;var n=Object.keys(r);return e.range[0]===r[n[0]]&&e.range[1]===r[n[1]]}function QU(e,t,r){var n=Iy.ensureSingle(e,"rect","selector-rect",function(i){i.attr("shape-rendering","crispEdges")});n.attr({rx:eV.rx,ry:eV.ry}),n.call(qge.stroke,t.bordercolor).call(qge.fill,Igt(t,r)).style("stroke-width",t.borderwidth+"px")}function Igt(e,t){return t._isActive||t._isHovered?e.activecolor:e.bgcolor}function Rgt(e,t,r,n){function i(o){kI.convertToTspans(o,n)}var a=Iy.ensureSingle(e,"text","selector-text",function(o){o.attr("text-anchor","middle")});a.call(Vge.font,t.font).text(Dgt(r,n._fullLayout._meta)).call(i)}function Dgt(e,t){return e.label?t?Iy.templateString(e.label,t):e.label:e.step==="all"?"all":e.count+e.step.charAt(0)}function zgt(e,t,r,n,i){var a=0,o=0,s=r.borderwidth;t.each(function(){var d=CI.select(this),v=d.select(".selector-text"),x=r.font.size*Bge,b=Math.max(x*kI.lineCount(v),16)+3;o=Math.max(o,b)}),t.each(function(){var d=CI.select(this),v=d.select(".selector-rect"),x=d.select(".selector-text"),b=x.node()&&Vge.bBox(x.node()).width,p=r.font.size*Bge,E=kI.lineCount(x),k=Math.max(b+10,eV.minButtonWidth);d.attr("transform",Oge(s+a,s)),v.attr({x:0,y:0,width:k,height:o}),kI.positionText(x,k/2,o/2-(E-1)*p/2+3),a+=k+5});var l=e._fullLayout._size,u=l.l+l.w*r.x,c=l.t+l.h*(1-r.y),f="left";Iy.isRightAnchor(r)&&(u-=a,f="right"),Iy.isCenterAnchor(r)&&(u-=a/2,f="center");var h="top";Iy.isBottomAnchor(r)&&(c-=o,h="bottom"),Iy.isMiddleAnchor(r)&&(c-=o/2,h="middle"),a=Math.ceil(a),o=Math.ceil(o),u=Math.round(u),c=Math.round(c),Mgt.autoMargin(e,n+"-range-selector",{x:r.x,y:r.y,l:a*Nge[f],r:a*Uge[f],b:o*Uge[h],t:o*Nge[h]}),i.attr("transform",Oge(u,c))}});var Wge=ye(($ar,jge)=>{"use strict";jge.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:MI()}}},layoutAttributes:MI(),handleDefaults:Dge(),draw:Gge()}});var Ju=ye(rV=>{"use strict";var Zge=no().extendFlat;rV.attributes=function(e,t){e=e||{},t=t||{};var r={valType:"info_array",editType:e.editType,items:[{valType:"number",min:0,max:1,editType:e.editType},{valType:"number",min:0,max:1,editType:e.editType}],dflt:[0,1]},n=e.name?e.name+" ":"",i=e.trace?"trace ":"subplot ",a=t.description?" "+t.description:"",o={x:Zge({},r,{}),y:Zge({},r,{}),editType:e.editType};return e.noGridCell||(o.row={valType:"integer",min:0,dflt:0,editType:e.editType},o.column={valType:"integer",min:0,dflt:0,editType:e.editType}),o};rV.defaults=function(e,t,r,n){var i=n&&n.x||[0,1],a=n&&n.y||[0,1],o=t.grid;if(o){var s=r("domain.column");s!==void 0&&(s<o.columns?i=o._domains.x[s]:delete e.domain.column);var l=r("domain.row");l!==void 0&&(l<o.rows?a=o._domains.y[l]:delete e.domain.row)}var u=r("domain.x",i),c=r("domain.y",a);u[0]<u[1]||(e.domain.x=i.slice()),c[0]<c[1]||(e.domain.y=a.slice())}});var nV=ye((eor,Jge)=>{"use strict";var Fgt=Mr(),qgt=n3().counter,Ogt=Ju().attributes,Xge=ad().idRegex,Bgt=Vs(),iV={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:[qgt("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[Xge.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[Xge.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:Ogt({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 LI(e,t,r){var n=t[r+"axes"],i=Object.keys((e._splomAxes||{})[r]||{});if(Array.isArray(n))return n;if(i.length)return i}function Ngt(e,t){var r=e.grid||{},n=LI(t,r,"x"),i=LI(t,r,"y");if(!e.grid&&!n&&!i)return;var a=Array.isArray(r.subplots)&&Array.isArray(r.subplots[0]),o=Array.isArray(n),s=Array.isArray(i),l=o&&n!==r.xaxes&&s&&i!==r.yaxes,u,c;a?(u=r.subplots.length,c=r.subplots[0].length):(s&&(u=i.length),o&&(c=n.length));var f=Bgt.newContainer(t,"grid");function h(_,C){return Fgt.coerce(r,f,iV,_,C)}var d=h("rows",u),v=h("columns",c);if(!(d*v>1)){delete t.grid;return}if(!a&&!o&&!s){var x=h("pattern")==="independent";x&&(a=!0)}f._hasSubplotGrid=a;var b=h("roworder"),p=b==="top to bottom",E=a?.2:.1,k=a?.3:.1,A,L;l&&t._splomGridDflt&&(A=t._splomGridDflt.xside,L=t._splomGridDflt.yside),f._domains={x:Yge("x",h,E,A,v),y:Yge("y",h,k,L,d,p)}}function Yge(e,t,r,n,i,a){var o=t(e+"gap",r),s=t("domain."+e);t(e+"side",n);for(var l=new Array(i),u=s[0],c=(s[1]-u)/(i-o),f=c*(1-o),h=0;h<i;h++){var d=u+c*h;l[a?i-1-h:h]=[d,d+f]}return l}function Ugt(e,t){var r=t.grid;if(!(!r||!r._domains)){var n=e.grid||{},i=t._subplots,a=r._hasSubplotGrid,o=r.rows,s=r.columns,l=r.pattern==="independent",u,c,f,h,d,v,x,b=r._axisMap={};if(a){var p=n.subplots||[];v=r.subplots=new Array(o);var E=1;for(u=0;u<o;u++){var k=v[u]=new Array(s),A=p[u]||[];for(c=0;c<s;c++)if(l?(d=E===1?"xy":"x"+E+"y"+E,E++):d=A[c],k[c]="",i.cartesian.indexOf(d)!==-1){if(x=d.indexOf("y"),f=d.slice(0,x),h=d.slice(x),b[f]!==void 0&&b[f]!==c||b[h]!==void 0&&b[h]!==u)continue;k[c]=d,b[f]=c,b[h]=u}}}else{var L=LI(t,n,"x"),_=LI(t,n,"y");r.xaxes=Kge(L,i.xaxis,s,b,"x"),r.yaxes=Kge(_,i.yaxis,o,b,"y")}var C=r._anchors={},M=r.roworder==="top to bottom";for(var g in b){var P=g.charAt(0),T=r[P+"side"],F,q,V;if(T.length<8)C[g]="free";else if(P==="x"){if(T.charAt(0)==="t"===M?(F=0,q=1,V=o):(F=o-1,q=-1,V=-1),a){var H=b[g];for(u=F;u!==V;u+=q)if(d=v[u][H],!!d&&(x=d.indexOf("y"),d.slice(0,x)===g)){C[g]=d.slice(x);break}}else for(u=F;u!==V;u+=q)if(h=r.yaxes[u],i.cartesian.indexOf(g+h)!==-1){C[g]=h;break}}else if(T.charAt(0)==="l"?(F=0,q=1,V=s):(F=s-1,q=-1,V=-1),a){var X=b[g];for(u=F;u!==V;u+=q)if(d=v[X][u],!!d&&(x=d.indexOf("y"),d.slice(x)===g)){C[g]=d.slice(0,x);break}}else for(u=F;u!==V;u+=q)if(f=r.xaxes[u],i.cartesian.indexOf(f+g)!==-1){C[g]=f;break}}}}function Kge(e,t,r,n,i){var a=new Array(r),o;function s(l,u){t.indexOf(u)!==-1&&n[u]===void 0?(a[l]=u,n[u]=l):a[l]=""}if(Array.isArray(e))for(o=0;o<r;o++)s(o,e[o]);else for(s(0,i),o=1;o<r;o++)s(o,i+(o+1));return a}Jge.exports={moduleType:"component",name:"grid",schema:{layout:{grid:iV}},layoutAttributes:iV,sizeDefaults:Ngt,contentDefaults:Ugt}});var aV=ye((tor,$ge)=>{"use strict";$ge.exports={visible:{valType:"boolean",editType:"calc"},type:{valType:"enumerated",values:["percent","constant","sqrt","data"],editType:"calc"},symmetric:{valType:"boolean",editType:"calc"},array:{valType:"data_array",editType:"calc"},arrayminus:{valType:"data_array",editType:"calc"},value:{valType:"number",min:0,dflt:10,editType:"calc"},valueminus:{valType:"number",min:0,dflt:10,editType:"calc"},traceref:{valType:"integer",min:0,dflt:0,editType:"style"},tracerefminus:{valType:"integer",min:0,dflt:0,editType:"style"},copy_ystyle:{valType:"boolean",editType:"plot"},copy_zstyle:{valType:"boolean",editType:"style"},color:{valType:"color",editType:"style"},thickness:{valType:"number",min:0,dflt:2,editType:"style"},width:{valType:"number",min:0,editType:"plot"},editType:"calc"}});var tme=ye((ror,eme)=>{"use strict";var Qge=uo(),Vgt=ba(),Hgt=Mr(),Ggt=Vs(),jgt=aV();eme.exports=function(e,t,r,n){var i="error_"+n.axis,a=Ggt.newContainer(t,i),o=e[i]||{};function s(v,x){return Hgt.coerce(o,a,jgt,v,x)}var l=o.array!==void 0||o.value!==void 0||o.type==="sqrt",u=s("visible",l);if(u!==!1){var c=s("type","array"in o?"data":"percent"),f=!0;c!=="sqrt"&&(f=s("symmetric",!((c==="data"?"arrayminus":"valueminus")in o))),c==="data"?(s("array"),s("traceref"),f||(s("arrayminus"),s("tracerefminus"))):(c==="percent"||c==="constant")&&(s("value"),f||s("valueminus"));var h="copy_"+n.inherit+"style";if(n.inherit){var d=t["error_"+n.inherit];(d||{}).visible&&s(h,!(o.color||Qge(o.thickness)||Qge(o.width)))}(!n.inherit||!a[h])&&(s("color",r),s("thickness"),s("width",Vgt.traceIs(t,"gl3d")?0:4))}}});var oV=ye((ior,ime)=>{"use strict";ime.exports=function(t){var r=t.type,n=t.symmetric;if(r==="data"){var i=t.array||[];if(n)return function(u,c){var f=+i[c];return[f,f]};var a=t.arrayminus||[];return function(u,c){var f=+i[c],h=+a[c];return!isNaN(f)||!isNaN(h)?[h||0,f||0]:[NaN,NaN]}}else{var o=rme(r,t.value),s=rme(r,t.valueminus);return n||t.valueminus===void 0?function(u){var c=o(u);return[c,c]}:function(u){return[s(u),o(u)]}}};function rme(e,t){if(e==="percent")return function(r){return Math.abs(r*t/100)};if(e==="constant")return function(){return Math.abs(t)};if(e==="sqrt")return function(r){return Math.sqrt(Math.abs(r))}}});var ome=ye((nor,ame)=>{"use strict";var sV=uo(),Wgt=ba(),lV=Qa(),Zgt=Mr(),Xgt=oV();ame.exports=function(t){for(var r=t.calcdata,n=0;n<r.length;n++){var i=r[n],a=i[0].trace;if(a.visible===!0&&Wgt.traceIs(a,"errorBarsOK")){var o=lV.getFromId(t,a.xaxis),s=lV.getFromId(t,a.yaxis);nme(i,a,o,"x"),nme(i,a,s,"y")}}};function nme(e,t,r,n){var i=t["error_"+n]||{},a=i.visible&&["linear","log"].indexOf(r.type)!==-1,o=[];if(a){for(var s=Xgt(i),l=0;l<e.length;l++){var u=e[l],c=u.i;if(c===void 0)c=l;else if(c===null)continue;var f=u[n];if(sV(r.c2l(f))){var h=s(f,c);if(sV(h[0])&&sV(h[1])){var d=u[n+"s"]=f-h[0],v=u[n+"h"]=f+h[1];o.push(d,v)}}}var x=r._id,b=t._extremes[x],p=lV.findExtremes(r,o,Zgt.extendFlat({tozero:b.opts.tozero},{padded:!0}));b.min=b.min.concat(p.min),b.max=b.max.concat(p.max)}}});var ume=ye((aor,lme)=>{"use strict";var sme=xa(),w_=uo(),Ygt=ao(),Kgt=lu();lme.exports=function(t,r,n,i){var a,o=n.xaxis,s=n.yaxis,l=i&&i.duration>0,u=t._context.staticPlot;r.each(function(c){var f=c[0].trace,h=f.error_x||{},d=f.error_y||{},v;f.ids&&(v=function(E){return E.id});var x=Kgt.hasMarkers(f)&&f.marker.maxdisplayed>0;!d.visible&&!h.visible&&(c=[]);var b=sme.select(this).selectAll("g.errorbar").data(c,v);if(b.exit().remove(),!!c.length){h.visible||b.selectAll("path.xerror").remove(),d.visible||b.selectAll("path.yerror").remove(),b.style("opacity",1);var p=b.enter().append("g").classed("errorbar",!0);l&&p.style("opacity",0).transition().duration(i.duration).style("opacity",1),Ygt.setClipUrl(b,n.layerClipId,t),b.each(function(E){var k=sme.select(this),A=Jgt(E,o,s);if(!(x&&!E.vis)){var L,_=k.select("path.yerror");if(d.visible&&w_(A.x)&&w_(A.yh)&&w_(A.ys)){var C=d.width;L="M"+(A.x-C)+","+A.yh+"h"+2*C+"m-"+C+",0V"+A.ys,A.noYS||(L+="m-"+C+",0h"+2*C),a=!_.size(),a?_=k.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("yerror",!0):l&&(_=_.transition().duration(i.duration).ease(i.easing)),_.attr("d",L)}else _.remove();var M=k.select("path.xerror");if(h.visible&&w_(A.y)&&w_(A.xh)&&w_(A.xs)){var g=(h.copy_ystyle?d:h).width;L="M"+A.xh+","+(A.y-g)+"v"+2*g+"m0,-"+g+"H"+A.xs,A.noXS||(L+="m0,-"+g+"v"+2*g),a=!M.size(),a?M=k.append("path").style("vector-effect",u?"none":"non-scaling-stroke").classed("xerror",!0):l&&(M=M.transition().duration(i.duration).ease(i.easing)),M.attr("d",L)}else M.remove()}})}})};function Jgt(e,t,r){var n={x:t.c2p(e.x),y:r.c2p(e.y)};return e.yh!==void 0&&(n.yh=r.c2p(e.yh),n.ys=r.c2p(e.ys),w_(n.ys)||(n.noYS=!0,n.ys=r.c2p(e.ys,!0))),e.xh!==void 0&&(n.xh=t.c2p(e.xh),n.xs=t.c2p(e.xs),w_(n.xs)||(n.noXS=!0,n.xs=t.c2p(e.xs,!0))),n}});var hme=ye((oor,fme)=>{"use strict";var $gt=xa(),cme=va();fme.exports=function(t){t.each(function(r){var n=r[0].trace,i=n.error_y||{},a=n.error_x||{},o=$gt.select(this);o.selectAll("path.yerror").style("stroke-width",i.thickness+"px").call(cme.stroke,i.color),a.copy_ystyle&&(a=i),o.selectAll("path.xerror").style("stroke-width",a.thickness+"px").call(cme.stroke,a.color)})}});var pme=ye((sor,vme)=>{"use strict";var o4=Mr(),dme=Bu().overrideAll,s4=aV(),$b={error_x:o4.extendFlat({},s4),error_y:o4.extendFlat({},s4)};delete $b.error_x.copy_zstyle;delete $b.error_y.copy_zstyle;delete $b.error_y.copy_ystyle;var l4={error_x:o4.extendFlat({},s4),error_y:o4.extendFlat({},s4),error_z:o4.extendFlat({},s4)};delete l4.error_x.copy_ystyle;delete l4.error_y.copy_ystyle;delete l4.error_z.copy_ystyle;delete l4.error_z.copy_zstyle;vme.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:$b,bar:$b,histogram:$b,scatter3d:dme(l4,"calc","nested"),scattergl:dme($b,"calc","nested")}},supplyDefaults:tme(),calc:ome(),makeComputeError:oV(),plot:ume(),style:hme(),hoverInfo:Qgt};function Qgt(e,t,r){(t.error_y||{}).visible&&(r.yerr=e.yh-e.y,t.error_y.symmetric||(r.yerrneg=e.y-e.ys)),(t.error_x||{}).visible&&(r.xerr=e.xh-e.x,t.error_x.symmetric||(r.xerrneg=e.x-e.xs))}});var mme=ye((lor,gme)=>{"use strict";gme.exports={cn:{colorbar:"colorbar",cbbg:"cbbg",cbfill:"cbfill",cbfills:"cbfills",cbline:"cbline",cblines:"cblines",cbaxis:"cbaxis",cbtitleunshift:"cbtitleunshift",cbtitle:"cbtitle",cboutline:"cboutline",crisp:"crisp",jsPlaceholder:"js-placeholder"}}});var Ame=ye((uor,Tme)=>{"use strict";var T_=xa(),uV=id(),II=Xu(),yme=ba(),Ry=Qa(),PI=gv(),B0=Mr(),Ug=B0.strTranslate,wme=no().extendFlat,cV=Tg(),Ng=ao(),fV=va(),emt=Mb(),tmt=Pl(),rmt=Dv().flipScale,imt=JM(),nmt=iI(),amt=Cd(),hV=Nh(),_me=hV.LINE_SPACING,xme=hV.FROM_TL,bme=hV.FROM_BR,Vc=mme().cn;function omt(e){var t=e._fullLayout,r=t._infolayer.selectAll("g."+Vc.colorbar).data(smt(e),function(n){return n._id});r.enter().append("g").attr("class",function(n){return n._id}).classed(Vc.colorbar,!0),r.each(function(n){var i=T_.select(this);B0.ensureSingle(i,"rect",Vc.cbbg),B0.ensureSingle(i,"g",Vc.cbfills),B0.ensureSingle(i,"g",Vc.cblines),B0.ensureSingle(i,"g",Vc.cbaxis,function(o){o.classed(Vc.crisp,!0)}),B0.ensureSingle(i,"g",Vc.cbtitleunshift,function(o){o.append("g").classed(Vc.cbtitle,!0)}),B0.ensureSingle(i,"rect",Vc.cboutline);var a=lmt(i,n,e);a&&a.then&&(e._promises||[]).push(a),e._context.edits.colorbarPosition&&umt(i,n,e)}),r.exit().each(function(n){II.autoMargin(e,n._id)}).remove(),r.order()}function smt(e){var t=e._fullLayout,r=e.calcdata,n=[],i,a,o,s;function l(k){return wme(k,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function u(){typeof s.calc=="function"?s.calc(e,o,i):(i._fillgradient=a.reversescale?rmt(a.colorscale):a.colorscale,i._zrange=[a[s.min],a[s.max]])}for(var c=0;c<r.length;c++){var f=r[c];if(o=f[0].trace,!!o._module){var h=o._module.colorbar;if(o.visible===!0&&h)for(var d=Array.isArray(h),v=d?h:[h],x=0;x<v.length;x++){s=v[x];var b=s.container;a=b?o[b]:o,a&&a.showscale&&(i=l(a.colorbar),i._id="cb"+o.uid+(d&&b?"-"+b:""),i._traceIndex=o.index,i._propPrefix=(b?b+".":"")+"colorbar.",i._meta=o._meta,u(),n.push(i))}}}for(var p in t._colorAxes)if(a=t[p],a.showscale){var E=t._colorAxes[p];i=l(a.colorbar),i._id="cb"+p,i._propPrefix=p+".colorbar.",i._meta=t._meta,s={min:"cmin",max:"cmax"},E[0]!=="heatmap"&&(o=E[1],s.calc=o._module.colorbar.calc),u(),n.push(i)}return n}function lmt(e,t,r){var n=t.orientation==="v",i=t.len,a=t.lenmode,o=t.thickness,s=t.thicknessmode,l=t.outlinewidth,u=t.borderwidth,c=t.bgcolor,f=t.xanchor,h=t.yanchor,d=t.xpad,v=t.ypad,x=t.x,b=n?t.y:1-t.y,p=t.yref==="paper",E=t.xref==="paper",k=r._fullLayout,A=k._size,L=t._fillcolor,_=t._line,C=t.title,M=C.side,g=t._zrange||T_.extent((typeof L=="function"?L:_.color).domain()),P=typeof _.color=="function"?_.color:function(){return _.color},T=typeof L=="function"?L:function(){return L},F=t._levels,q=cmt(r,t,g),V=q.fill,H=q.line,X=Math.round(o*(s==="fraction"?n?A.w:A.h:1)),G=X/(n?A.w:A.h),N=Math.round(i*(a==="fraction"?n?A.h:A.w:1)),W=N/(n?A.h:A.w),re=E?A.w:r._fullLayout.width,ae=p?A.h:r._fullLayout.height,_e=Math.round(n?x*re+d:b*ae+v),Me={center:.5,right:1}[f]||0,ke={top:1,middle:.5}[h]||0,ge=n?x-Me*G:b-ke*G,ie=n?b-ke*W:x-Me*W,Te=Math.round(n?ae*(1-ie):re*ie);t._lenFrac=W,t._thickFrac=G,t._uFrac=ge,t._vFrac=ie;var Ee=t._axis=fmt(r,t,g);Ee.position=G+(n?x+d/A.w:b+v/A.h);var Ae=["top","bottom"].indexOf(M)!==-1;if(n&&Ae&&(Ee.title.side=M,Ee.titlex=x+d/A.w,Ee.titley=ie+(C.side==="top"?W-v/A.h:v/A.h)),!n&&!Ae&&(Ee.title.side=M,Ee.titley=b+v/A.h,Ee.titlex=ie+d/A.w),_.color&&t.tickmode==="auto"){Ee.tickmode="linear",Ee.tick0=F.start;var ze=F.size,Ce=B0.constrain(N/50,4,15)+1,me=(g[1]-g[0])/((t.nticks||Ce)*ze);if(me>1){var Re=Math.pow(10,Math.floor(Math.log(me)/Math.LN10));ze*=Re*B0.roundUp(me/Re,[2,5,10]),(Math.abs(F.start)/F.size+1e-6)%1<2e-6&&(Ee.tick0=0)}Ee.dtick=ze}Ee.domain=n?[ie+v/A.h,ie+W-v/A.h]:[ie+d/A.w,ie+W-d/A.w],Ee.setScale(),e.attr("transform",Ug(Math.round(A.l),Math.round(A.t)));var ce=e.select("."+Vc.cbtitleunshift).attr("transform",Ug(-Math.round(A.l),-Math.round(A.t))),Ge=Ee.ticklabelposition,nt=Ee.title.font.size,ct=e.select("."+Vc.cbaxis),qt,rt=0,ot=0;function Rt(er,Ke){var xt={propContainer:Ee,propName:t._propPrefix+"title",traceIndex:t._traceIndex,_meta:t._meta,placeholder:k._dfltTitle.colorbar,containerGroup:e.select("."+Vc.cbtitle)},bt=er.charAt(0)==="h"?er.substr(1):"h"+er;e.selectAll("."+bt+",."+bt+"-math-group").remove(),emt.draw(r,er,wme(xt,Ke||{}))}function kt(){if(n&&Ae||!n&&!Ae){var er,Ke;M==="top"&&(er=d+A.l+re*x,Ke=v+A.t+ae*(1-ie-W)+3+nt*.75),M==="bottom"&&(er=d+A.l+re*x,Ke=v+A.t+ae*(1-ie)-3-nt*.25),M==="right"&&(Ke=v+A.t+ae*b+3+nt*.75,er=d+A.l+re*ie),Rt(Ee._id+"title",{attributes:{x:er,y:Ke,"text-anchor":n?"start":"middle"}})}}function Ct(){if(n&&!Ae||!n&&Ae){var er=Ee.position||0,Ke=Ee._offset+Ee._length/2,xt,bt;if(M==="right")bt=Ke,xt=A.l+re*er+10+nt*(Ee.showticklabels?1:.5);else if(xt=Ke,M==="bottom"&&(bt=A.t+ae*er+10+(Ge.indexOf("inside")===-1?Ee.tickfont.size:0)+(Ee.ticks!=="intside"&&t.ticklen||0)),M==="top"){var Lt=C.text.split("<br>").length;bt=A.t+ae*er+10-X-_me*nt*Lt}Rt((n?"h":"v")+Ee._id+"title",{avoid:{selection:T_.select(r).selectAll("g."+Ee._id+"tick"),side:M,offsetTop:n?0:A.t,offsetLeft:n?A.l:0,maxShift:n?k.width:k.height},attributes:{x:xt,y:bt,"text-anchor":"middle"},transform:{rotate:n?-90:0,offset:0}})}}function Yt(){if(!n&&!Ae||n&&Ae){var er=e.select("."+Vc.cbtitle),Ke=er.select("text"),xt=[-l/2,l/2],bt=er.select(".h"+Ee._id+"title-math-group").node(),Lt=15.6;Ke.node()&&(Lt=parseInt(Ke.node().style.fontSize,10)*_me);var St;if(bt?(St=Ng.bBox(bt),ot=St.width,rt=St.height,rt>Lt&&(xt[1]-=(rt-Lt)/2)):Ke.node()&&!Ke.classed(Vc.jsPlaceholder)&&(St=Ng.bBox(Ke.node()),ot=St.width,rt=St.height),n){if(rt){if(rt+=5,M==="top")Ee.domain[1]-=rt/A.h,xt[1]*=-1;else{Ee.domain[0]+=rt/A.h;var Et=tmt.lineCount(Ke);xt[1]+=(1-Et)*Lt}er.attr("transform",Ug(xt[0],xt[1])),Ee.setScale()}}else ot&&(M==="right"&&(Ee.domain[0]+=(ot+nt/2)/A.w),er.attr("transform",Ug(xt[0],xt[1])),Ee.setScale())}e.selectAll("."+Vc.cbfills+",."+Vc.cblines).attr("transform",n?Ug(0,Math.round(A.h*(1-Ee.domain[1]))):Ug(Math.round(A.w*Ee.domain[0]),0)),ct.attr("transform",n?Ug(0,Math.round(-A.t)):Ug(Math.round(-A.l),0));var dt=e.select("."+Vc.cbfills).selectAll("rect."+Vc.cbfill).attr("style","").data(V);dt.enter().append("rect").classed(Vc.cbfill,!0).attr("style",""),dt.exit().remove();var Ht=g.map(Ee.c2p).map(Math.round).sort(function(Or,Nr){return Or-Nr});dt.each(function(Or,Nr){var ut=[Nr===0?g[0]:(V[Nr]+V[Nr-1])/2,Nr===V.length-1?g[1]:(V[Nr]+V[Nr+1])/2].map(Ee.c2p).map(Math.round);n&&(ut[1]=B0.constrain(ut[1]+(ut[1]>ut[0])?1:-1,Ht[0],Ht[1]));var Ne=T_.select(this).attr(n?"x":"y",_e).attr(n?"y":"x",T_.min(ut)).attr(n?"width":"height",Math.max(X,2)).attr(n?"height":"width",Math.max(T_.max(ut)-T_.min(ut),2));if(t._fillgradient)Ng.gradient(Ne,r,t._id,n?"vertical":"horizontalreversed",t._fillgradient,"fill");else{var Ye=T(Or).replace("e-","");Ne.attr("fill",uV(Ye).toHexString())}});var $t=e.select("."+Vc.cblines).selectAll("path."+Vc.cbline).data(_.color&&_.width?H:[]);$t.enter().append("path").classed(Vc.cbline,!0),$t.exit().remove(),$t.each(function(Or){var Nr=_e,ut=Math.round(Ee.c2p(Or))+_.width/2%1;T_.select(this).attr("d","M"+(n?Nr+","+ut:ut+","+Nr)+(n?"h":"v")+X).call(Ng.lineGroupStyle,_.width,P(Or),_.dash)}),ct.selectAll("g."+Ee._id+"tick,path").remove();var fr=_e+X+(l||0)/2-(t.ticks==="outside"?1:0),_r=Ry.calcTicks(Ee),Br=Ry.getTickSigns(Ee)[2];return Ry.drawTicks(r,Ee,{vals:Ee.ticks==="inside"?Ry.clipEnds(Ee,_r):_r,layer:ct,path:Ry.makeTickPath(Ee,fr,Br),transFn:Ry.makeTransTickFn(Ee)}),Ry.drawLabels(r,Ee,{vals:_r,layer:ct,transFn:Ry.makeTransTickLabelFn(Ee),labelFns:Ry.makeLabelFns(Ee,fr)})}function xr(){var er,Ke=X+l/2;Ge.indexOf("inside")===-1&&(er=Ng.bBox(ct.node()),Ke+=n?er.width:er.height),qt=ce.select("text");var xt=0,bt=n&&M==="top",Lt=!n&&M==="right",St=0;if(qt.node()&&!qt.classed(Vc.jsPlaceholder)){var Et,dt=ce.select(".h"+Ee._id+"title-math-group").node();dt&&(n&&Ae||!n&&!Ae)?(er=Ng.bBox(dt),xt=er.width,Et=er.height):(er=Ng.bBox(ce.node()),xt=er.right-A.l-(n?_e:Te),Et=er.bottom-A.t-(n?Te:_e),!n&&M==="top"&&(Ke+=er.height,St=er.height)),Lt&&(qt.attr("transform",Ug(xt/2+nt/2,0)),xt*=2),Ke=Math.max(Ke,n?xt:Et)}var Ht=(n?d:v)*2+Ke+u+l/2,$t=0;!n&&C.text&&h==="bottom"&&b<=0&&($t=Ht/2,Ht+=$t,St+=$t),k._hColorbarMoveTitle=$t,k._hColorbarMoveCBTitle=St;var fr=u+l,_r=(n?_e:Te)-fr/2-(n?d:0),Br=(n?Te:_e)-(n?N:v+St-$t);e.select("."+Vc.cbbg).attr("x",_r).attr("y",Br).attr(n?"width":"height",Math.max(Ht-$t,2)).attr(n?"height":"width",Math.max(N+fr,2)).call(fV.fill,c).call(fV.stroke,t.bordercolor).style("stroke-width",u);var Or=Lt?Math.max(xt-10,0):0;e.selectAll("."+Vc.cboutline).attr("x",(n?_e:Te+d)+Or).attr("y",(n?Te+v-N:_e)+(bt?rt:0)).attr(n?"width":"height",Math.max(X,2)).attr(n?"height":"width",Math.max(N-(n?2*v+rt:2*d+Or),2)).call(fV.stroke,t.outlinecolor).style({fill:"none","stroke-width":l});var Nr=n?Me*Ht:0,ut=n?0:(1-ke)*Ht-St;if(Nr=E?A.l-Nr:-Nr,ut=p?A.t-ut:-ut,e.attr("transform",Ug(Nr,ut)),!n&&(u||uV(c).getAlpha()&&!uV.equals(k.paper_bgcolor,c))){var Ne=ct.selectAll("text"),Ye=Ne[0].length,Ve=e.select("."+Vc.cbbg).node(),Xe=Ng.bBox(Ve),ht=Ng.getTranslate(e),Le=2;Ne.each(function(ri,bi){var nn=0,Wi=Ye-1;if(bi===nn||bi===Wi){var Ni=Ng.bBox(this),_n=Ng.getTranslate(this),$i;if(bi===Wi){var zn=Ni.right+_n.x,Wn=Xe.right+ht.x+Te-u-Le+x;$i=Wn-zn,$i>0&&($i=0)}else if(bi===nn){var It=Ni.left+_n.x,ft=Xe.left+ht.x+Te+u+Le;$i=ft-It,$i<0&&($i=0)}$i&&(Ye<3?this.setAttribute("transform","translate("+$i+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var xe={},Se=xme[f],lt=bme[f],Gt=xme[h],Vt=bme[h],ar=Ht-X;n?(a==="pixels"?(xe.y=b,xe.t=N*Gt,xe.b=N*Vt):(xe.t=xe.b=0,xe.yt=b+i*Gt,xe.yb=b-i*Vt),s==="pixels"?(xe.x=x,xe.l=Ht*Se,xe.r=Ht*lt):(xe.l=ar*Se,xe.r=ar*lt,xe.xl=x-o*Se,xe.xr=x+o*lt)):(a==="pixels"?(xe.x=x,xe.l=N*Se,xe.r=N*lt):(xe.l=xe.r=0,xe.xl=x+i*Se,xe.xr=x-i*lt),s==="pixels"?(xe.y=1-b,xe.t=Ht*Gt,xe.b=Ht*Vt):(xe.t=ar*Gt,xe.b=ar*Vt,xe.yt=b-o*Gt,xe.yb=b+o*Vt));var Qr=t.y<.5?"b":"t",ai=t.x<.5?"l":"r";r._fullLayout._reservedMargin[t._id]={};var jr={r:k.width-_r-Nr,l:_r+xe.r,b:k.height-Br-ut,t:Br+xe.b};E&&p?II.autoMargin(r,t._id,xe):E?r._fullLayout._reservedMargin[t._id][Qr]=jr[Qr]:p||n?r._fullLayout._reservedMargin[t._id][ai]=jr[ai]:r._fullLayout._reservedMargin[t._id][Qr]=jr[Qr]}return B0.syncOrAsync([II.previousPromises,kt,Yt,Ct,II.previousPromises,xr],r)}function umt(e,t,r){var n=t.orientation==="v",i=r._fullLayout,a=i._size,o,s,l;PI.init({element:e.node(),gd:r,prepFn:function(){o=e.attr("transform"),cV(e)},moveFn:function(u,c){e.attr("transform",o+Ug(u,c)),s=PI.align((n?t._uFrac:t._vFrac)+u/a.w,n?t._thickFrac:t._lenFrac,0,1,t.xanchor),l=PI.align((n?t._vFrac:1-t._uFrac)-c/a.h,n?t._lenFrac:t._thickFrac,0,1,t.yanchor);var f=PI.getCursor(s,l,t.xanchor,t.yanchor);cV(e,f)},doneFn:function(){if(cV(e),s!==void 0&&l!==void 0){var u={};u[t._propPrefix+"x"]=s,u[t._propPrefix+"y"]=l,t._traceIndex!==void 0?yme.call("_guiRestyle",r,u,t._traceIndex):yme.call("_guiRelayout",r,u)}}})}function cmt(e,t,r){var n=t._levels,i=[],a=[],o,s,l=n.end+n.size/100,u=n.size,c=1.001*r[0]-.001*r[1],f=1.001*r[1]-.001*r[0];for(s=0;s<1e5&&(o=n.start+s*u,!(u>0?o>=l:o<=l));s++)o>c&&o<f&&i.push(o);if(t._fillgradient)a=[0];else if(typeof t._fillcolor=="function"){var h=t._filllevels;if(h)for(l=h.end+h.size/100,u=h.size,s=0;s<1e5&&(o=h.start+s*u,!(u>0?o>=l:o<=l));s++)o>r[0]&&o<r[1]&&a.push(o);else a=i.map(function(d){return d-n.size/2}),a.push(a[a.length-1]+n.size)}else t._fillcolor&&typeof t._fillcolor=="string"&&(a=[0]);return n.size<0&&(i.reverse(),a.reverse()),{line:i,fill:a}}function fmt(e,t,r){var n=e._fullLayout,i=t.orientation==="v",a={type:"linear",range:r,tickmode:t.tickmode,nticks:t.nticks,tick0:t.tick0,dtick:t.dtick,tickvals:t.tickvals,ticktext:t.ticktext,ticks:t.ticks,ticklen:t.ticklen,tickwidth:t.tickwidth,tickcolor:t.tickcolor,showticklabels:t.showticklabels,labelalias:t.labelalias,ticklabelposition:t.ticklabelposition,ticklabeloverflow:t.ticklabeloverflow,ticklabelstep:t.ticklabelstep,tickfont:t.tickfont,tickangle:t.tickangle,tickformat:t.tickformat,exponentformat:t.exponentformat,minexponent:t.minexponent,separatethousands:t.separatethousands,showexponent:t.showexponent,showtickprefix:t.showtickprefix,tickprefix:t.tickprefix,showticksuffix:t.showticksuffix,ticksuffix:t.ticksuffix,title:t.title,showline:!0,anchor:"free",side:i?"right":"bottom",position:1},o=i?"y":"x",s={type:"linear",_id:o+t._id},l={letter:o,font:n.font,noAutotickangles:o==="y",noHover:!0,noTickson:!0,noTicklabelmode:!0,noInsideRange:!0,calendar:n.calendar};function u(c,f){return B0.coerce(a,s,amt,c,f)}return imt(a,s,u,l,n),nmt(a,s,u,l),s}Tme.exports={draw:omt}});var Mme=ye((cor,Sme)=>{"use strict";Sme.exports={moduleType:"component",name:"colorbar",attributes:K6(),supplyDefaults:SO(),draw:Ame().draw,hasColorbar:yO()}});var kme=ye((hor,Eme)=>{"use strict";Eme.exports={moduleType:"component",name:"legend",layoutAttributes:yB(),supplyLayoutDefaults:bB(),draw:RB(),style:CB()}});var Lme=ye((dor,Cme)=>{"use strict";Cme.exports={moduleType:"locale",name:"en",dictionary:{"Click to enter Colorscale title":"Click to enter Colourscale title"},format:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],periods:["AM","PM"],dateTime:"%a %b %e %X %Y",date:"%d/%m/%Y",time:"%H:%M:%S",decimal:".",thousands:",",grouping:[3],currency:["$",""],year:"%Y",month:"%b %Y",dayMonth:"%b %-d",dayMonthYear:"%b %-d, %Y"}}});var Ime=ye((vor,Pme)=>{"use strict";Pme.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}});var vV=ye((por,Fme)=>{"use strict";var hmt=ba(),zme=Mr(),dV=zme.extendFlat,Rme=zme.extendDeep;function Dme(e){var t;switch(e){case"themes__thumb":t={autosize:!0,width:150,height:150,title:{text:""},showlegend:!1,margin:{l:5,r:5,t:5,b:5,pad:0},annotations:[]};break;case"thumbnail":t={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:t={}}return t}function dmt(e){var t=["xaxis","yaxis","zaxis"];return t.indexOf(e.slice(0,5))>-1}Fme.exports=function(t,r){var n,i=t.data,a=t.layout,o=Rme([],i),s=Rme({},a,Dme(r.tileClass)),l=t._context||{};if(r.width&&(s.width=r.width),r.height&&(s.height=r.height),r.tileClass==="thumbnail"||r.tileClass==="themes__thumb"){s.annotations=[];var u=Object.keys(s);for(n=0;n<u.length;n++)dmt(u[n])&&(s[u[n]].title={text:""});for(n=0;n<o.length;n++){var c=o[n];c.showscale=!1,c.marker&&(c.marker.showscale=!1),hmt.traceIs(c,"pie-like")&&(c.textposition="none")}}if(Array.isArray(r.annotations))for(n=0;n<r.annotations.length;n++)s.annotations.push(r.annotations[n]);var f=Object.keys(s).filter(function(b){return b.match(/^scene\d*$/)});if(f.length){var h={};for(r.tileClass==="thumbnail"&&(h={title:{text:""},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),n=0;n<f.length;n++){var d=s[f[n]];d.xaxis||(d.xaxis={}),d.yaxis||(d.yaxis={}),d.zaxis||(d.zaxis={}),dV(d.xaxis,h),dV(d.yaxis,h),dV(d.zaxis,h),d._scene=null}}var v=document.createElement("div");r.tileClass&&(v.className=r.tileClass);var x={gd:v,td:v,layout:s,data:o,config:{staticPlot:r.staticPlot===void 0?!0:r.staticPlot,plotGlPixelRatio:r.plotGlPixelRatio===void 0?2:r.plotGlPixelRatio,displaylogo:r.displaylogo||!1,showLink:r.showLink||!1,showTips:r.showTips||!1,mapboxAccessToken:l.mapboxAccessToken}};return r.setBackground!=="transparent"&&(x.config.setBackground=r.setBackground||"opaque"),x.gd.defaultLayout=Dme(r.tileClass),x}});var Bme=ye((gor,Ome)=>{"use strict";var vmt=vb().EventEmitter,pmt=ba(),gmt=Mr(),qme=Ly(),mmt=vV(),ymt=BP(),_mt=NP();function xmt(e,t){var r=new vmt,n=mmt(e,{format:"png"}),i=n.gd;i.style.position="absolute",i.style.left="-5000px",document.body.appendChild(i);function a(){var s=qme.getDelay(i._fullLayout);setTimeout(function(){var l=ymt(i),u=document.createElement("canvas");u.id=gmt.randstr(),r=_mt({format:t.format,width:i._fullLayout.width,height:i._fullLayout.height,canvas:u,emitter:r,svg:l}),r.clean=function(){i&&document.body.removeChild(i)}},s)}var o=qme.getRedrawFunc(i);return pmt.call("_doPlot",i,n.data,n.layout,n.config).then(o).then(a).catch(function(s){r.emit("error",s)}),r}Ome.exports=xmt});var Vme=ye((mor,Ume)=>{"use strict";var Nme=Ly(),bmt={getDelay:Nme.getDelay,getRedrawFunc:Nme.getRedrawFunc,clone:vV(),toSVG:BP(),svgToImg:NP(),toImage:Bme(),downloadImage:YN()};Ume.exports=bmt});var Gme=ye(Dy=>{"use strict";Dy.version=e6().version;iee();Wie();var wmt=ba(),u4=Dy.register=wmt.register,gV=hde(),Hme=Object.keys(gV);for(RI=0;RI<Hme.length;RI++)_T=Hme[RI],_T.charAt(0)!=="_"&&(Dy[_T]=gV[_T]),u4({moduleType:"apiMethod",name:_T,fn:gV[_T]});var _T,RI;u4(ope());u4([Ppe(),Gpe(),wf(),l0e(),b0e(),H0e(),uge(),kge(),Wge(),nV(),pme(),Mu(),Mme(),kme(),Nc(),nN()]);u4([Lme(),Ime()]);window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(u4(window.PlotlyLocales),delete window.PlotlyLocales);Dy.Icons=UL();var DI=Nc(),pV=Xu();Dy.Plots={resize:pV.resize,graphJson:pV.graphJson,sendDataToCloud:pV.sendDataToCloud};Dy.Fx={hover:DI.hover,unhover:DI.unhover,loneHover:DI.loneHover,loneUnhover:DI.loneUnhover};Dy.Snapshot=Vme();Dy.PlotSchema=_3()});var Wme=ye((_or,jme)=>{"use strict";jme.exports=Gme()});var Qb=ye((xor,Zme)=>{"use strict";Zme.exports={TEXTPAD:3,eventDataKeys:["value","label"]}});var Lm=ye((bor,Jme)=>{"use strict";var Tf=Uc(),Xme=Oc().axisHoverFormat,Tmt=Wo().hovertemplateAttrs,Amt=Wo().texttemplateAttrs,Kme=Jl(),Smt=Su(),Yme=Qb(),Mmt=Ed().pattern,e2=no().extendFlat,mV=Smt({editType:"calc",arrayOk:!0,colorEditType:"style"}),Emt=Tf.marker,kmt=Emt.line,Cmt=e2({},kmt.width,{dflt:0}),Lmt=e2({width:Cmt,editType:"calc"},Kme("marker.line")),Pmt=e2({line:Lmt,editType:"calc"},Kme("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:Mmt,cornerradius:{valType:"any",editType:"calc"}});Jme.exports={x:Tf.x,x0:Tf.x0,dx:Tf.dx,y:Tf.y,y0:Tf.y0,dy:Tf.dy,xperiod:Tf.xperiod,yperiod:Tf.yperiod,xperiod0:Tf.xperiod0,yperiod0:Tf.yperiod0,xperiodalignment:Tf.xperiodalignment,yperiodalignment:Tf.yperiodalignment,xhoverformat:Xme("x"),yhoverformat:Xme("y"),text:Tf.text,texttemplate:Amt({editType:"plot"},{keys:Yme.eventDataKeys}),hovertext:Tf.hovertext,hovertemplate:Tmt({},{keys:Yme.eventDataKeys}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:e2({},mV,{}),insidetextfont:e2({},mV,{}),outsidetextfont:e2({},mV,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:e2({},Tf.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:Pmt,offsetgroup:Tf.offsetgroup,alignmentgroup:Tf.alignmentgroup,selected:{marker:{opacity:Tf.selected.marker.opacity,color:Tf.selected.marker.color,editType:"style"},textfont:Tf.selected.textfont,editType:"style"},unselected:{marker:{opacity:Tf.unselected.marker.opacity,color:Tf.unselected.marker.color,editType:"style"},textfont:Tf.unselected.textfont,editType:"style"},zorder:Tf.zorder}});var zI=ye((wor,$me)=>{"use strict";$me.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}});var FI=ye((Tor,tye)=>{"use strict";var Imt=va(),Qme=Dv().hasColorscale,eye=Uh(),Rmt=Mr().coercePattern;tye.exports=function(t,r,n,i,a){var o=n("marker.color",i),s=Qme(t,"marker");s&&eye(t,r,a,n,{prefix:"marker.",cLetter:"c"}),n("marker.line.color",Imt.defaultLine),Qme(t,"marker.line")&&eye(t,r,a,n,{prefix:"marker.line.",cLetter:"c"}),n("marker.line.width"),n("marker.opacity"),Rmt(n,"marker.pattern",o,s),n("selected.marker.color"),n("unselected.marker.color")}});var r0=ye((Aor,sye)=>{"use strict";var rye=uo(),xT=Mr(),iye=va(),Dmt=ba(),zmt=K3(),Fmt=Pg(),qmt=FI(),Omt=Hb(),nye=Lm(),qI=xT.coerceFont;function Bmt(e,t,r,n){function i(u,c){return xT.coerce(e,t,nye,u,c)}var a=zmt(e,t,n,i);if(!a){t.visible=!1;return}Fmt(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("zorder"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate");var o=i("textposition");oye(e,t,n,i,o,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),qmt(e,t,i,r,n);var s=(t.marker.line||{}).color,l=Dmt.getComponentMethod("errorbars","supplyDefaults");l(e,t,s||iye.defaultLine,{axis:"y"}),l(e,t,s||iye.defaultLine,{axis:"x",inherit:"y"}),xT.coerceSelectionMarkerOpacity(t,i)}function Nmt(e,t){var r,n;function i(s,l){return xT.coerce(n._input,n,nye,s,l)}for(var a=0;a<e.length;a++)if(n=e[a],n.type==="bar"){r=n._input;var o=i("marker.cornerradius",t.barcornerradius);n.marker&&(n.marker.cornerradius=aye(o)),Omt(r,n,t,i,t.barmode)}}function aye(e){if(rye(e)){if(e=+e,e>=0)return e}else if(typeof e=="string"&&(e=e.trim(),e.slice(-1)==="%"&&rye(e.slice(0,-1))&&(e=+e.slice(0,-1),e>=0)))return e+"%"}function oye(e,t,r,n,i,a){a=a||{};var o=a.moduleHasSelected!==!1,s=a.moduleHasUnselected!==!1,l=a.moduleHasConstrain!==!1,u=a.moduleHasCliponaxis!==!1,c=a.moduleHasTextangle!==!1,f=a.moduleHasInsideanchor!==!1,h=!!a.hasPathbar,d=Array.isArray(i)||i==="auto",v=d||i==="inside",x=d||i==="outside";if(v||x){var b=qI(n,"textfont",r.font),p=xT.extendFlat({},b),E=e.textfont&&e.textfont.color,k=!E;if(k&&delete p.color,qI(n,"insidetextfont",p),h){var A=xT.extendFlat({},b);k&&delete A.color,qI(n,"pathbar.textfont",A)}x&&qI(n,"outsidetextfont",b),o&&n("selected.textfont.color"),s&&n("unselected.textfont.color"),l&&n("constraintext"),u&&n("cliponaxis"),c&&n("textangle"),n("texttemplate")}v&&f&&n("insidetextanchor")}sye.exports={supplyDefaults:Bmt,crossTraceDefaults:Nmt,handleText:oye,validateCornerradius:aye}});var yV=ye((Sor,lye)=>{"use strict";var Umt=ba(),Vmt=Qa(),Hmt=Mr(),Gmt=zI(),jmt=r0().validateCornerradius;lye.exports=function(e,t,r){function n(x,b){return Hmt.coerce(e,t,Gmt,x,b)}for(var i=!1,a=!1,o=!1,s={},l=n("barmode"),u=l==="group",c=0;c<r.length;c++){var f=r[c];if(Umt.traceIs(f,"bar")&&f.visible)i=!0;else continue;var h=f.xaxis+f.yaxis;if(u?(s[h]&&(o=!0),s[h]=!0):(h+=f._input.offsetgroup,s.length>0&&!s[h]&&(o=!0),s[h]=!0),f.visible&&f.type==="histogram"){var d=Vmt.getFromId({_fullLayout:t},f[f.orientation==="v"?"xaxis":"yaxis"]);d.type!=="category"&&(a=!0)}}if(!i){delete t.barmode;return}l!=="overlay"&&n("barnorm"),n("bargap",a&&!o?0:.2),n("bargroupgap");var v=n("barcornerradius");t.barcornerradius=jmt(v)}});var c4=ye((Mor,uye)=>{"use strict";var bT=Mr();uye.exports=function(t,r){for(var n=0;n<t.length;n++)t[n].i=n;bT.mergeArray(r.text,t,"tx"),bT.mergeArray(r.hovertext,t,"htx");var i=r.marker;if(i){bT.mergeArray(i.opacity,t,"mo",!0),bT.mergeArray(i.color,t,"mc");var a=i.line;a&&(bT.mergeArray(a.color,t,"mlc"),bT.mergeArrayCastPositive(a.width,t,"mlw"))}}});var pye=ye((Eor,vye)=>{"use strict";var cye=Qa(),fye=Rg(),hye=Dv().hasColorscale,dye=zv(),Wmt=c4(),Zmt=F0();vye.exports=function(t,r){var n=cye.getFromId(t,r.xaxis||"x"),i=cye.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f={msUTC:!!(r.base||r.base===0)};r.orientation==="h"?(a=n.makeCalcdata(r,"x",f),s=i.makeCalcdata(r,"y"),l=fye(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y",f),s=n.makeCalcdata(r,"x"),l=fye(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var h=Math.min(o.length,a.length),d=new Array(h),v=0;v<h;v++)d[v]={p:o[v],s:a[v]},u&&(d[v].orig_p=s[v],d[v][c+"End"]=l.ends[v],d[v][c+"Start"]=l.starts[v]),r.ids&&(d[v].id=String(r.ids[v]));return hye(r,"marker")&&dye(t,r,{vals:r.marker.color,containerStr:"marker",cLetter:"c"}),hye(r,"marker.line")&&dye(t,r,{vals:r.marker.line.color,containerStr:"marker.line",cLetter:"c"}),Wmt(d,r),Zmt(d,r),d}});var _v=ye((kor,mye)=>{"use strict";var Xmt=xa(),Ymt=Mr();function Kmt(e,t,r){var n=e._fullLayout,i=n["_"+r+"Text_minsize"];if(i){var a=n.uniformtext.mode==="hide",o;switch(r){case"funnelarea":case"pie":case"sunburst":o="g.slice";break;case"treemap":case"icicle":o="g.slice, g.pathbar";break;default:o="g.points > g.point"}t.selectAll(o).each(function(s){var l=s.transform;if(l){l.scale=a&&l.hide?0:i/l.fontSize;var u=Xmt.select(this).select("text");Ymt.setTransormAndDisplay(u,l)}})}}function Jmt(e,t,r){if(r.uniformtext.mode){var n=gye(e),i=r.uniformtext.minsize,a=t.scale*t.fontSize;t.hide=a<i,r[n]=r[n]||1/0,t.hide||(r[n]=Math.min(r[n],Math.max(a,i)))}}function $mt(e,t){var r=gye(e);t[r]=void 0}function gye(e){return"_"+e+"Text_minsize"}mye.exports={recordMinTextSize:Jmt,clearMinTextSize:$mt,resizeText:Kmt}});var OI=ye(t2=>{"use strict";var Qmt=uo(),eyt=id(),yye=Mr().isArrayOrTypedArray;t2.coerceString=function(e,t,r){if(typeof t=="string"){if(t||!e.noBlank)return t}else if((typeof t=="number"||t===!0)&&!e.strict)return String(t);return r!==void 0?r:e.dflt};t2.coerceNumber=function(e,t,r){if(Qmt(t)){t=+t;var n=e.min,i=e.max,a=n!==void 0&&t<n||i!==void 0&&t>i;if(!a)return t}return r!==void 0?r:e.dflt};t2.coerceColor=function(e,t,r){return eyt(t).isValid()?t:r!==void 0?r:e.dflt};t2.coerceEnumerated=function(e,t,r){return e.coerceNumber&&(t=+t),e.values.indexOf(t)!==-1?t:r!==void 0?r:e.dflt};t2.getValue=function(e,t){var r;return yye(e)?t<e.length&&(r=e[t]):r=e,r};t2.getLineWidth=function(e,t){var r=0<t.mlw?t.mlw:yye(e.marker.line.width)?0:e.marker.line.width;return r}});var N0=ye((Lor,Cye)=>{"use strict";var f4=xa(),tyt=va(),h4=ao(),_ye=Mr(),xye=ba(),bye=_v().resizeText,_V=Lm(),ryt=_V.textfont,iyt=_V.insidetextfont,nyt=_V.outsidetextfont,Jd=OI();function ayt(e){var t=f4.select(e).selectAll('g[class^="barlayer"]').selectAll("g.trace");bye(e,t,"bar");var r=t.size(),n=e._fullLayout;t.style("opacity",function(i){return i[0].trace.opacity}).each(function(i){(n.barmode==="stack"&&r>1||n.bargap===0&&n.bargroupgap===0&&!i[0].trace.marker.line.width)&&f4.select(this).attr("shape-rendering","crispEdges")}),t.selectAll("g.points").each(function(i){var a=f4.select(this),o=i[0].trace;wye(a,o,e)}),xye.getComponentMethod("errorbars","style")(t)}function wye(e,t,r){h4.pointStyle(e.selectAll("path"),t,r),Tye(e,t,r)}function Tye(e,t,r){e.selectAll("text").each(function(n){var i=f4.select(this),a=_ye.ensureUniformFontSize(r,Aye(i,n,t,r));h4.font(i,a)})}function oyt(e,t,r){var n=t[0].trace;n.selectedpoints?syt(r,n,e):(wye(r,n,e),xye.getComponentMethod("errorbars","style")(r))}function syt(e,t,r){h4.selectedPointStyle(e.selectAll("path"),t),lyt(e.selectAll("text"),t,r)}function lyt(e,t,r){e.each(function(n){var i=f4.select(this),a;if(n.selected){a=_ye.ensureUniformFontSize(r,Aye(i,n,t,r));var o=t.selected.textfont&&t.selected.textfont.color;o&&(a.color=o),h4.font(i,a)}else h4.selectedTextStyle(i,t)})}function Aye(e,t,r,n){var i=n._fullLayout.font,a=r.textfont;if(e.classed("bartext-inside")){var o=kye(t,r);a=Mye(r,t.i,i,o)}else e.classed("bartext-outside")&&(a=Eye(r,t.i,i));return a}function Sye(e,t,r){return xV(ryt,e.textfont,t,r)}function Mye(e,t,r,n){var i=Sye(e,t,r),a=e._input.textfont===void 0||e._input.textfont.color===void 0||Array.isArray(e.textfont.color)&&e.textfont.color[t]===void 0;return a&&(i={color:tyt.contrast(n),family:i.family,size:i.size,weight:i.weight,style:i.style,variant:i.variant,textcase:i.textcase,lineposition:i.lineposition,shadow:i.shadow}),xV(iyt,e.insidetextfont,t,i)}function Eye(e,t,r){var n=Sye(e,t,r);return xV(nyt,e.outsidetextfont,t,n)}function xV(e,t,r,n){t=t||{};var i=Jd.getValue(t.family,r),a=Jd.getValue(t.size,r),o=Jd.getValue(t.color,r),s=Jd.getValue(t.weight,r),l=Jd.getValue(t.style,r),u=Jd.getValue(t.variant,r),c=Jd.getValue(t.textcase,r),f=Jd.getValue(t.lineposition,r),h=Jd.getValue(t.shadow,r);return{family:Jd.coerceString(e.family,i,n.family),size:Jd.coerceNumber(e.size,a,n.size),color:Jd.coerceColor(e.color,o,n.color),weight:Jd.coerceString(e.weight,s,n.weight),style:Jd.coerceString(e.style,l,n.style),variant:Jd.coerceString(e.variant,u,n.variant),textcase:Jd.coerceString(e.variant,c,n.textcase),lineposition:Jd.coerceString(e.variant,f,n.lineposition),shadow:Jd.coerceString(e.variant,h,n.shadow)}}function kye(e,t){return t.type==="waterfall"?t[e.dir].marker.color:e.mcc||e.mc||t.marker.color}Cye.exports={style:ayt,styleTextPoints:Tye,styleOnSelect:oyt,getInsideTextFont:Mye,getOutsideTextFont:Eye,getBarColor:kye,resizeText:bye}});var i2=ye((Por,qye)=>{"use strict";var BI=xa(),NI=uo(),Pd=Mr(),uyt=Pl(),cyt=va(),A_=ao(),fyt=ba(),UI=Qa().tickText,Lye=_v(),hyt=Lye.recordMinTextSize,dyt=Lye.clearMinTextSize,bV=N0(),wT=OI(),vyt=Qb(),Pye=Lm(),pyt=Pye.text,gyt=Pye.textposition,myt=rp().appendArrayPointValue,Uv=vyt.TEXTPAD;function yyt(e){return e.id}function _yt(e){if(e.ids)return yyt}function wV(e){return(e>0)-(e<0)}function Pm(e,t){return e<t?1:-1}function xyt(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),n?[i,a]:[a,i]}function Iye(e,t,r,n){if(!t.uniformtext.mode&&Rye(r)){var i;return n&&(i=n()),e.transition().duration(r.duration).ease(r.easing).each("end",function(){i&&i()}).each("interrupt",function(){i&&i()})}else return e}function Rye(e){return e&&e.duration>0}function byt(e,t,r,n,i,a){var o=t.xaxis,s=t.yaxis,l=e._fullLayout,u=e._context.staticPlot;i||(i={mode:l.barmode,norm:l.barmode,gap:l.bargap,groupgap:l.bargroupgap},dyt("bar",l));var c=Pd.makeTraceGroups(n,r,"trace bars").each(function(f){var h=BI.select(this),d=f[0].trace,v=f[0].t,x=d.type==="waterfall",b=d.type==="funnel",p=d.type==="histogram",E=d.type==="bar",k=E||b,A=0;x&&d.connector.visible&&d.connector.mode==="between"&&(A=d.connector.line.width/2);var L=d.orientation==="h",_=Rye(i),C=Pd.ensureSingle(h,"g","points"),M=_yt(d),g=C.selectAll("g.point").data(Pd.identity,M);g.enter().append("g").classed("point",!0),g.exit().remove(),g.each(function(T,F){var q=BI.select(this),V=xyt(T,o,s,L),H=V[0][0],X=V[0][1],G=V[1][0],N=V[1][1],W=(L?X-H:N-G)===0;W&&k&&wT.getLineWidth(d,T)&&(W=!1),W||(W=!NI(H)||!NI(X)||!NI(G)||!NI(N)),T.isBlank=W,W&&(L?X=H:N=G),A&&!W&&(L?(H-=Pm(H,X)*A,X+=Pm(H,X)*A):(G-=Pm(G,N)*A,N+=Pm(G,N)*A));var re,ae;if(d.type==="waterfall"){if(!W){var _e=d[T.dir].marker;re=_e.line.width,ae=_e.color}}else re=wT.getLineWidth(d,T),ae=T.mc||d.marker.color;function Me(Ke){var xt=BI.round(re/2%1,2);return i.gap===0&&i.groupgap===0?BI.round(Math.round(Ke)-xt,2):Ke}function ke(Ke,xt,bt){return bt&&Ke===xt?Ke:Math.abs(Ke-xt)>=2?Me(Ke):Ke>xt?Math.ceil(Ke):Math.floor(Ke)}var ge=cyt.opacity(ae),ie=ge<1||re>.01?Me:ke;e._context.staticPlot||(H=ie(H,X,L),X=ie(X,H,L),G=ie(G,N,!L),N=ie(N,G,!L));var Te=L?o.c2p:s.c2p,Ee;T.s0>0?Ee=T._sMax:T.s0<0?Ee=T._sMin:Ee=T.s1>0?T._sMax:T._sMin;function Ae(Ke,xt){if(!Ke)return 0;var bt=Math.abs(L?N-G:X-H),Lt=Math.abs(L?X-H:N-G),St=ie(Math.abs(Te(Ee,!0)-Te(0,!0))),Et=T.hasB?Math.min(bt/2,Lt/2):Math.min(bt/2,St),dt;if(xt==="%"){var Ht=Math.min(50,Ke);dt=bt*(Ht/100)}else dt=Ke;return ie(Math.max(Math.min(dt,Et),0))}var ze=E||p?Ae(v.cornerradiusvalue,v.cornerradiusform):0,Ce,me,Re="M"+H+","+G+"V"+N+"H"+X+"V"+G+"Z",ce=0;if(ze&&T.s){var Ge=wV(T.s0)===0||wV(T.s)===wV(T.s0)?T.s1:T.s0;if(ce=ie(T.hasB?0:Math.abs(Te(Ee,!0)-Te(Ge,!0))),ce<ze){var nt=Pm(H,X),ct=Pm(G,N),qt=nt===-ct?1:0;if(L)if(T.hasB)Ce="M"+(H+ze*nt)+","+G+"A "+ze+","+ze+" 0 0 "+qt+" "+H+","+(G+ze*ct)+"V"+(N-ze*ct)+"A "+ze+","+ze+" 0 0 "+qt+" "+(H+ze*nt)+","+N+"H"+(X-ze*nt)+"A "+ze+","+ze+" 0 0 "+qt+" "+X+","+(N-ze*ct)+"V"+(G+ze*ct)+"A "+ze+","+ze+" 0 0 "+qt+" "+(X-ze*nt)+","+G+"Z";else{me=Math.abs(X-H)+ce;var rt=me<ze?ze-Math.sqrt(me*(2*ze-me)):0,ot=ce>0?Math.sqrt(ce*(2*ze-ce)):0,Rt=nt>0?Math.max:Math.min;Ce="M"+H+","+G+"V"+(N-rt*ct)+"H"+Rt(X-(ze-ce)*nt,H)+"A "+ze+","+ze+" 0 0 "+qt+" "+X+","+(N-ze*ct-ot)+"V"+(G+ze*ct+ot)+"A "+ze+","+ze+" 0 0 "+qt+" "+Rt(X-(ze-ce)*nt,H)+","+(G+rt*ct)+"Z"}else if(T.hasB)Ce="M"+(H+ze*nt)+","+G+"A "+ze+","+ze+" 0 0 "+qt+" "+H+","+(G+ze*ct)+"V"+(N-ze*ct)+"A "+ze+","+ze+" 0 0 "+qt+" "+(H+ze*nt)+","+N+"H"+(X-ze*nt)+"A "+ze+","+ze+" 0 0 "+qt+" "+X+","+(N-ze*ct)+"V"+(G+ze*ct)+"A "+ze+","+ze+" 0 0 "+qt+" "+(X-ze*nt)+","+G+"Z";else{me=Math.abs(N-G)+ce;var kt=me<ze?ze-Math.sqrt(me*(2*ze-me)):0,Ct=ce>0?Math.sqrt(ce*(2*ze-ce)):0,Yt=ct>0?Math.max:Math.min;Ce="M"+(H+kt*nt)+","+G+"V"+Yt(N-(ze-ce)*ct,G)+"A "+ze+","+ze+" 0 0 "+qt+" "+(H+ze*nt-Ct)+","+N+"H"+(X-ze*nt+Ct)+"A "+ze+","+ze+" 0 0 "+qt+" "+(X-kt*nt)+","+Yt(N-(ze-ce)*ct,G)+"V"+G+"Z"}}else Ce=Re}else Ce=Re;var xr=Iye(Pd.ensureSingle(q,"path"),l,i,a);if(xr.style("vector-effect",u?"none":"non-scaling-stroke").attr("d",isNaN((X-H)*(N-G))||W&&e._context.staticPlot?"M0,0Z":Ce).call(A_.setClipUrl,t.layerClipId,e),!l.uniformtext.mode&&_){var er=A_.makePointStyleFns(d);A_.singlePointStyle(T,xr,d,er,e)}wyt(e,t,q,f,F,H,X,G,N,ze,ce,i,a),t.layerClipId&&A_.hideOutsideRangePoint(T,q.select("text"),o,s,d.xcalendar,d.ycalendar)});var P=d.cliponaxis===!1;A_.setClipUrl(h,P?null:t.layerClipId,e)});fyt.getComponentMethod("errorbars","plot")(e,c,t,i)}function wyt(e,t,r,n,i,a,o,s,l,u,c,f,h){var d=t.xaxis,v=t.yaxis,x=e._fullLayout,b;function p(me,Re,ce){var Ge=Pd.ensureSingle(me,"text").text(Re).attr({class:"bartext bartext-"+b,"text-anchor":"middle","data-notex":1}).call(A_.font,ce).call(uyt.convertToTspans,e);return Ge}var E=n[0].trace,k=E.orientation==="h",A=Syt(x,n,i,d,v);b=Myt(E,i);var L=f.mode==="stack"||f.mode==="relative",_=n[i],C=!L||_._outmost,M=_.hasB,g=u&&u-c>Uv;if(!A||b==="none"||(_.isBlank||a===o||s===l)&&(b==="auto"||b==="inside")){r.select("text").remove();return}var P=x.font,T=bV.getBarColor(n[i],E),F=bV.getInsideTextFont(E,i,P,T),q=bV.getOutsideTextFont(E,i,P),V=E.insidetextanchor||"end",H=r.datum();k?d.type==="log"&&H.s0<=0&&(d.range[0]<d.range[1]?a=0:a=d._length):v.type==="log"&&H.s0<=0&&(v.range[0]<v.range[1]?s=v._length:s=0);var X=Math.abs(o-a),G=Math.abs(l-s),N=X-2*Uv,W=G-2*Uv,re,ae,_e,Me,ke;if(b==="outside"&&!C&&!_.hasB&&(b="inside"),b==="auto")if(C){b="inside",ke=Pd.ensureUniformFontSize(e,F),re=p(r,A,ke),ae=A_.bBox(re.node()),_e=ae.width,Me=ae.height;var ge=_e>0&&Me>0,ie;g?M?ie=r2(N-2*u,W,_e,Me,k)||r2(N,W-2*u,_e,Me,k):k?ie=r2(N-(u-c),W,_e,Me,k)||r2(N,W-2*(u-c),_e,Me,k):ie=r2(N,W-(u-c),_e,Me,k)||r2(N-2*(u-c),W,_e,Me,k):ie=r2(N,W,_e,Me,k),ge&&ie?b="inside":(b="outside",re.remove(),re=null)}else b="inside";if(!re){ke=Pd.ensureUniformFontSize(e,b==="outside"?q:F),re=p(r,A,ke);var Te=re.attr("transform");if(re.attr("transform",""),ae=A_.bBox(re.node()),_e=ae.width,Me=ae.height,re.attr("transform",Te),_e<=0||Me<=0){re.remove();return}}var Ee=E.textangle,Ae,ze;b==="outside"?(ze=E.constraintext==="both"||E.constraintext==="outside",Ae=Ayt(a,o,s,l,ae,{isHorizontal:k,constrained:ze,angle:Ee})):(ze=E.constraintext==="both"||E.constraintext==="inside",Ae=Fye(a,o,s,l,ae,{isHorizontal:k,constrained:ze,angle:Ee,anchor:V,hasB:M,r:u,overhead:c})),Ae.fontSize=ke.size,hyt(E.type==="histogram"?"bar":E.type,Ae,x),_.transform=Ae;var Ce=Iye(re,x,f,h);Pd.setTransormAndDisplay(Ce,Ae)}function r2(e,t,r,n,i){if(e<0||t<0)return!1;var a=r<=e&&n<=t,o=r<=t&&n<=e,s=i?e>=r*(t/n):t>=n*(e/r);return a||o||s}function Dye(e){return e==="auto"?0:e}function zye(e,t){var r=Math.PI/180*t,n=Math.abs(Math.sin(r)),i=Math.abs(Math.cos(r));return{x:e.width*i+e.height*n,y:e.width*n+e.height*i}}function Fye(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=a.anchor,c=u==="end",f=u==="start",h=a.leftToRight||0,d=(h+1)/2,v=1-d,x=a.hasB,b=a.r,p=a.overhead,E=i.width,k=i.height,A=Math.abs(t-e),L=Math.abs(n-r),_=A>2*Uv&&L>2*Uv?Uv:0;A-=2*_,L-=2*_;var C=Dye(l);l==="auto"&&!(E<=A&&k<=L)&&(E>A||k>L)&&(!(E>L||k>A)||E<k!=A<L)&&(C+=90);var M=zye(i,C),g,P;if(b&&b-p>Uv){var T=Tyt(e,t,r,n,M,b,p,o,x);g=T.scale,P=T.pad}else g=1,s&&(g=Math.min(1,A/M.x,L/M.y)),P=0;var F=i.left*v+i.right*d,q=(i.top+i.bottom)/2,V=(e+Uv)*v+(t-Uv)*d,H=(r+n)/2,X=0,G=0;if(f||c){var N=(o?M.x:M.y)/2;b&&(c||x)&&(_+=P);var W=o?Pm(e,t):Pm(r,n);o?f?(V=e+W*_,X=-W*N):(V=t-W*_,X=W*N):f?(H=r+W*_,G=-W*N):(H=n-W*_,G=W*N)}return{textX:F,textY:q,targetX:V,targetY:H,anchorX:X,anchorY:G,scale:g,rotate:C}}function Tyt(e,t,r,n,i,a,o,s,l){var u=Math.max(0,Math.abs(t-e)-2*Uv),c=Math.max(0,Math.abs(n-r)-2*Uv),f=a-Uv,h=o?f-Math.sqrt(f*f-(f-o)*(f-o)):f,d=l?f*2:s?f-o:2*h,v=l?f*2:s?2*h:f-o,x,b,p,E,k;return i.y/i.x>=c/(u-d)?E=c/i.y:i.y/i.x<=(c-v)/u?E=u/i.x:!l&&s?(x=i.x*i.x+i.y*i.y/4,b=-2*i.x*(u-f)-i.y*(c/2-f),p=(u-f)*(u-f)+(c/2-f)*(c/2-f)-f*f,E=(-b+Math.sqrt(b*b-4*x*p))/(2*x)):l?(x=(i.x*i.x+i.y*i.y)/4,b=-i.x*(u/2-f)-i.y*(c/2-f),p=(u/2-f)*(u/2-f)+(c/2-f)*(c/2-f)-f*f,E=(-b+Math.sqrt(b*b-4*x*p))/(2*x)):(x=i.x*i.x/4+i.y*i.y,b=-i.x*(u/2-f)-2*i.y*(c-f),p=(u/2-f)*(u/2-f)+(c-f)*(c-f)-f*f,E=(-b+Math.sqrt(b*b-4*x*p))/(2*x)),E=Math.min(1,E),s?k=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(c-i.y*E)/2)*(f-(c-i.y*E)/2)))-o):k=Math.max(0,f-Math.sqrt(Math.max(0,f*f-(f-(u-i.x*E)/2)*(f-(u-i.x*E)/2)))-o),{scale:E,pad:k}}function Ayt(e,t,r,n,i,a){var o=!!a.isHorizontal,s=!!a.constrained,l=a.angle||0,u=i.width,c=i.height,f=Math.abs(t-e),h=Math.abs(n-r),d;o?d=h>2*Uv?Uv:0:d=f>2*Uv?Uv:0;var v=1;s&&(v=o?Math.min(1,h/c):Math.min(1,f/u));var x=Dye(l),b=zye(i,x),p=(o?b.x:b.y)/2,E=(i.left+i.right)/2,k=(i.top+i.bottom)/2,A=(e+t)/2,L=(r+n)/2,_=0,C=0,M=o?Pm(t,e):Pm(r,n);return o?(A=t-M*d,_=M*p):(L=n+M*d,C=-M*p),{textX:E,textY:k,targetX:A,targetY:L,anchorX:_,anchorY:C,scale:v,rotate:x}}function Syt(e,t,r,n,i){var a=t[0].trace,o=a.texttemplate,s;return o?s=Eyt(e,t,r,n,i):a.textinfo?s=kyt(t,r,n,i):s=wT.getValue(a.text,r),wT.coerceString(pyt,s)}function Myt(e,t){var r=wT.getValue(e.textposition,t);return wT.coerceEnumerated(gyt,r)}function Eyt(e,t,r,n,i){var a=t[0].trace,o=Pd.castOption(a,r,"texttemplate");if(!o)return"";var s=a.type==="histogram",l=a.type==="waterfall",u=a.type==="funnel",c=a.orientation==="h",f,h,d,v;c?(f="y",h=i,d="x",v=n):(f="x",h=n,d="y",v=i);function x(_){return UI(h,h.c2l(_),!0).text}function b(_){return UI(v,v.c2l(_),!0).text}var p=t[r],E={};E.label=p.p,E.labelLabel=E[f+"Label"]=x(p.p);var k=Pd.castOption(a,p.i,"text");(k===0||k)&&(E.text=k),E.value=p.s,E.valueLabel=E[d+"Label"]=b(p.s);var A={};myt(A,a,p.i),(s||A.x===void 0)&&(A.x=c?E.value:E.label),(s||A.y===void 0)&&(A.y=c?E.label:E.value),(s||A.xLabel===void 0)&&(A.xLabel=c?E.valueLabel:E.labelLabel),(s||A.yLabel===void 0)&&(A.yLabel=c?E.labelLabel:E.valueLabel),l&&(E.delta=+p.rawS||p.s,E.deltaLabel=b(E.delta),E.final=p.v,E.finalLabel=b(E.final),E.initial=E.final-E.delta,E.initialLabel=b(E.initial)),u&&(E.value=p.s,E.valueLabel=b(E.value),E.percentInitial=p.begR,E.percentInitialLabel=Pd.formatPercent(p.begR),E.percentPrevious=p.difR,E.percentPreviousLabel=Pd.formatPercent(p.difR),E.percentTotal=p.sumR,E.percenTotalLabel=Pd.formatPercent(p.sumR));var L=Pd.castOption(a,p.i,"customdata");return L&&(E.customdata=L),Pd.texttemplateString(o,E,e._d3locale,A,E,a._meta||{})}function kyt(e,t,r,n){var i=e[0].trace,a=i.orientation==="h",o=i.type==="waterfall",s=i.type==="funnel";function l(L){var _=a?n:r;return UI(_,L,!0).text}function u(L){var _=a?r:n;return UI(_,+L,!0).text}var c=i.textinfo,f=e[t],h=c.split("+"),d=[],v,x=function(L){return h.indexOf(L)!==-1};if(x("label")&&d.push(l(e[t].p)),x("text")&&(v=Pd.castOption(i,f.i,"text"),(v===0||v)&&d.push(v)),o){var b=+f.rawS||f.s,p=f.v,E=p-b;x("initial")&&d.push(u(E)),x("delta")&&d.push(u(b)),x("final")&&d.push(u(p))}if(s){x("value")&&d.push(u(f.s));var k=0;x("percent initial")&&k++,x("percent previous")&&k++,x("percent total")&&k++;var A=k>1;x("percent initial")&&(v=Pd.formatPercent(f.begR),A&&(v+=" of initial"),d.push(v)),x("percent previous")&&(v=Pd.formatPercent(f.difR),A&&(v+=" of previous"),d.push(v)),x("percent total")&&(v=Pd.formatPercent(f.sumR),A&&(v+=" of total"),d.push(v))}return d.join("<br>")}qye.exports={plot:byt,toMoveInsideBar:Fye}});var TT=ye((Ior,Uye)=>{"use strict";var d4=Nc(),Cyt=ba(),Oye=va(),Lyt=Mr().fillText,Pyt=OI().getLineWidth,TV=Qa().hoverLabelText,Iyt=es().BADNUM;function Ryt(e,t,r,n,i){var a=Bye(e,t,r,n,i);if(a){var o=a.cd,s=o[0].trace,l=o[a.index];return a.color=Nye(s,l),Cyt.getComponentMethod("errorbars","hoverInfo")(l,s,a),[a]}}function Bye(e,t,r,n,i){var a=e.cd,o=a[0].trace,s=a[0].t,l=n==="closest",u=o.type==="waterfall",c=e.maxHoverDistance,f=e.maxSpikeDistance,h,d,v,x,b,p,E;o.orientation==="h"?(h=r,d=t,v="y",x="x",b=H,p=F):(h=t,d=r,v="x",x="y",p=H,b=F);var k=o[v+"period"],A=l||k;function L(ie){return C(ie,-1)}function _(ie){return C(ie,1)}function C(ie,Te){var Ee=ie.w;return ie[v]+Te*Ee/2}function M(ie){return ie[v+"End"]-ie[v+"Start"]}var g=l?L:k?function(ie){return ie.p-M(ie)/2}:function(ie){return Math.min(L(ie),ie.p-s.bardelta/2)},P=l?_:k?function(ie){return ie.p+M(ie)/2}:function(ie){return Math.max(_(ie),ie.p+s.bardelta/2)};function T(ie,Te,Ee){return i.finiteRange&&(Ee=0),d4.inbox(ie-h,Te-h,Ee+Math.min(1,Math.abs(Te-ie)/E)-1)}function F(ie){return T(g(ie),P(ie),c)}function q(ie){return T(L(ie),_(ie),f)}function V(ie){var Te=ie[x];if(u){var Ee=Math.abs(ie.rawS)||0;d>0?Te+=Ee:d<0&&(Te-=Ee)}return Te}function H(ie){var Te=d,Ee=ie.b,Ae=V(ie);return d4.inbox(Ee-Te,Ae-Te,c+(Ae-Te)/(Ae-Ee)-1)}function X(ie){var Te=d,Ee=ie.b,Ae=V(ie);return d4.inbox(Ee-Te,Ae-Te,f+(Ae-Te)/(Ae-Ee)-1)}var G=e[v+"a"],N=e[x+"a"];E=Math.abs(G.r2c(G.range[1])-G.r2c(G.range[0]));function W(ie){return(b(ie)+p(ie))/2}var re=d4.getDistanceFunction(n,b,p,W);if(d4.getClosest(a,re,e),e.index!==!1&&a[e.index].p!==Iyt){A||(g=function(ie){return Math.min(L(ie),ie.p-s.bargroupwidth/2)},P=function(ie){return Math.max(_(ie),ie.p+s.bargroupwidth/2)});var ae=e.index,_e=a[ae],Me=o.base?_e.b+_e.s:_e.s;e[x+"0"]=e[x+"1"]=N.c2p(_e[x],!0),e[x+"LabelVal"]=Me;var ke=s.extents[s.extents.round(_e.p)];e[v+"0"]=G.c2p(l?g(_e):ke[0],!0),e[v+"1"]=G.c2p(l?P(_e):ke[1],!0);var ge=_e.orig_p!==void 0;return e[v+"LabelVal"]=ge?_e.orig_p:_e.p,e.labelLabel=TV(G,e[v+"LabelVal"],o[v+"hoverformat"]),e.valueLabel=TV(N,e[x+"LabelVal"],o[x+"hoverformat"]),e.baseLabel=TV(N,_e.b,o[x+"hoverformat"]),e.spikeDistance=(X(_e)+q(_e))/2,e[v+"Spike"]=G.c2p(_e.p,!0),Lyt(_e,o,e),e.hovertemplate=o.hovertemplate,e}}function Nye(e,t){var r=t.mcc||e.marker.color,n=t.mlcc||e.marker.line.color,i=Pyt(e,t);if(Oye.opacity(r))return r;if(Oye.opacity(n)&&i)return n}Uye.exports={hoverPoints:Ryt,hoverOnBars:Bye,getTraceColor:Nye}});var Hye=ye((Ror,Vye)=>{"use strict";Vye.exports=function(t,r,n){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),n.orientation==="h"?(t.label=t.y,t.value=t.x):(t.label=t.x,t.value=t.y),t}});var AT=ye((Dor,Gye)=>{"use strict";Gye.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=n[0].trace,s=o.type==="funnel",l=o.orientation==="h",u=[],c;if(r===!1)for(c=0;c<n.length;c++)n[c].selected=0;else for(c=0;c<n.length;c++){var f=n[c],h="ct"in f?f.ct:Dyt(f,i,a,l,s);r.contains(h,!1,c,t)?(u.push({pointNumber:c,x:i.c2d(f.x),y:a.c2d(f.y)}),f.selected=1):f.selected=0}return u};function Dyt(e,t,r,n,i){var a=t.c2p(n?e.s0:e.p0,!0),o=t.c2p(n?e.s1:e.p1,!0),s=r.c2p(n?e.p0:e.s0,!0),l=r.c2p(n?e.p1:e.s1,!0);return i?[(a+o)/2,(s+l)/2]:n?[o,(s+l)/2]:[(a+o)/2,l]}});var Wye=ye((zor,jye)=>{"use strict";jye.exports={attributes:Lm(),layoutAttributes:zI(),supplyDefaults:r0().supplyDefaults,crossTraceDefaults:r0().crossTraceDefaults,supplyLayoutDefaults:yV(),calc:pye(),crossTraceCalc:Gb().crossTraceCalc,colorbar:Kd(),arraysToCalcdata:c4(),plot:i2().plot,style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:TT().hoverPoints,eventData:Hye(),selectPoints:AT(),moduleType:"trace",name:"bar",basePlotModule:Jf(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}});var Xye=ye((For,Zye)=>{"use strict";Zye.exports=Wye()});var v4=ye((qor,$ye)=>{"use strict";var zyt=Eg(),U0=Uc(),Yye=Lm(),Fyt=dh(),Kye=Oc().axisHoverFormat,qyt=Wo().hovertemplateAttrs,zy=no().extendFlat,ST=U0.marker,Jye=ST.line;$ye.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:U0.xperiod,yperiod:U0.yperiod,xperiod0:U0.xperiod0,yperiod0:U0.yperiod0,xperiodalignment:U0.xperiodalignment,yperiodalignment:U0.yperiodalignment,xhoverformat:Kye("x"),yhoverformat:Kye("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:zy({},ST.symbol,{arrayOk:!1,editType:"plot"}),opacity:zy({},ST.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:zy({},ST.angle,{arrayOk:!1,editType:"calc"}),size:zy({},ST.size,{arrayOk:!1,editType:"calc"}),color:zy({},ST.color,{arrayOk:!1,editType:"style"}),line:{color:zy({},Jye.color,{arrayOk:!1,dflt:Fyt.defaultLine,editType:"style"}),width:zy({},Jye.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:zyt(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:Yye.offsetgroup,alignmentgroup:Yye.alignmentgroup,selected:{marker:U0.selected.marker,editType:"style"},unselected:{marker:U0.unselected.marker,editType:"style"},text:zy({},U0.text,{}),hovertext:zy({},U0.hovertext,{}),hovertemplate:qyt({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:U0.zorder}});var p4=ye((Oor,Qye)=>{"use strict";Qye.exports={boxmode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},boxgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"},boxgroupgap:{valType:"number",min:0,max:1,dflt:.3,editType:"calc"}}});var m4=ye((Bor,i1e)=>{"use strict";var V0=Mr(),Oyt=ba(),Byt=va(),Nyt=Pg(),Uyt=Hb(),e1e=L3(),g4=v4();function Vyt(e,t,r,n){function i(v,x){return V0.coerce(e,t,g4,v,x)}if(t1e(e,t,i,n),t.visible!==!1){Nyt(e,t,n,i),i("xhoverformat"),i("yhoverformat");var a=t._hasPreCompStats;a&&(i("lowerfence"),i("upperfence")),i("line.color",(e.marker||{}).color||r),i("line.width"),i("fillcolor",Byt.addOpacity(t.line.color,.5));var o=!1;if(a){var s=i("mean"),l=i("sd");s&&s.length&&(o=!0,l&&l.length&&(o="sd"))}i("whiskerwidth");var u=i("sizemode"),c;u==="quartiles"&&(c=i("boxmean",o)),i("showwhiskers",u==="quartiles"),(u==="sd"||c==="sd")&&i("sdmultiple"),i("width"),i("quartilemethod");var f=!1;if(a){var h=i("notchspan");h&&h.length&&(f=!0)}else V0.validate(e.notchwidth,g4.notchwidth)&&(f=!0);var d=i("notched",f);d&&i("notchwidth"),r1e(e,t,i,{prefix:"box"}),i("zorder")}}function t1e(e,t,r,n){function i(P){var T=0;return P&&P.length&&(T+=1,V0.isArrayOrTypedArray(P[0])&&P[0].length&&(T+=1)),T}function a(P){return V0.validate(e[P],g4[P])}var o=r("y"),s=r("x"),l;if(t.type==="box"){var u=r("q1"),c=r("median"),f=r("q3");t._hasPreCompStats=u&&u.length&&c&&c.length&&f&&f.length,l=Math.min(V0.minRowLength(u),V0.minRowLength(c),V0.minRowLength(f))}var h=i(o),d=i(s),v=h&&V0.minRowLength(o),x=d&&V0.minRowLength(s),b=n.calendar,p={autotypenumbers:n.autotypenumbers},E,k;if(t._hasPreCompStats)switch(String(d)+String(h)){case"00":var A=a("x0")||a("dx"),L=a("y0")||a("dy");L&&!A?E="h":E="v",k=l;break;case"10":E="v",k=Math.min(l,x);break;case"20":E="h",k=Math.min(l,s.length);break;case"01":E="h",k=Math.min(l,v);break;case"02":E="v",k=Math.min(l,o.length);break;case"12":E="v",k=Math.min(l,x,o.length);break;case"21":E="h",k=Math.min(l,s.length,v);break;case"11":k=0;break;case"22":var _=!1,C;for(C=0;C<s.length;C++)if(e1e(s[C],b,p)==="category"){_=!0;break}if(_)E="v",k=Math.min(l,x,o.length);else{for(C=0;C<o.length;C++)if(e1e(o[C],b,p)==="category"){_=!0;break}_?(E="h",k=Math.min(l,s.length,v)):(E="v",k=Math.min(l,x,o.length))}break}else h>0?(E="v",d>0?k=Math.min(x,v):k=Math.min(v)):d>0?(E="h",k=Math.min(x)):k=0;if(!k){t.visible=!1;return}t._length=k;var M=r("orientation",E);t._hasPreCompStats?M==="v"&&d===0?(r("x0",0),r("dx",1)):M==="h"&&h===0&&(r("y0",0),r("dy",1)):M==="v"&&d===0?r("x0"):M==="h"&&h===0&&r("y0");var g=Oyt.getComponentMethod("calendars","handleTraceDefaults");g(e,t,["x","y"],n)}function r1e(e,t,r,n){var i=n.prefix,a=V0.coerce2(e,t,g4,"marker.outliercolor"),o=r("marker.line.outliercolor"),s="outliers";t._hasPreCompStats?s="all":(a||o)&&(s="suspectedoutliers");var l=r(i+"points",s);l?(r("jitter",l==="all"?.3:0),r("pointpos",l==="all"?-1.5:0),r("marker.symbol"),r("marker.opacity"),r("marker.size"),r("marker.angle"),r("marker.color",t.line.color),r("marker.line.color"),r("marker.line.width"),l==="suspectedoutliers"&&(r("marker.line.outliercolor",t.marker.color),r("marker.line.outlierwidth")),r("selected.marker.color"),r("unselected.marker.color"),r("selected.marker.size"),r("unselected.marker.size"),r("text"),r("hovertext")):delete t.marker;var u=r("hoveron");(u==="all"||u.indexOf("points")!==-1)&&r("hovertemplate"),V0.coerceSelectionMarkerOpacity(t,r)}function Hyt(e,t){var r,n;function i(l){return V0.coerce(n._input,n,g4,l)}for(var a=0;a<e.length;a++){n=e[a];var o=n.type;if(o==="box"||o==="violin"){r=n._input;var s=t[o+"mode"];s==="group"&&Uyt(r,n,t,i,s)}}}i1e.exports={supplyDefaults:Vyt,crossTraceDefaults:Hyt,handleSampleDefaults:t1e,handlePointsDefaults:r1e}});var VI=ye((Nor,a1e)=>{"use strict";var Gyt=ba(),jyt=Mr(),Wyt=p4();function n1e(e,t,r,n,i){for(var a=i+"Layout",o=!1,s=0;s<r.length;s++){var l=r[s];if(Gyt.traceIs(l,a)){o=!0;break}}o&&(n(i+"mode"),n(i+"gap"),n(i+"groupgap"))}function Zyt(e,t,r){function n(i,a){return jyt.coerce(e,t,Wyt,i,a)}n1e(e,t,r,n,"box")}a1e.exports={supplyLayoutDefaults:Zyt,_supply:n1e}});var MV=ye((Uor,v1e)=>{"use strict";var SV=uo(),HI=Qa(),Xyt=Rg(),$f=Mr(),i0=es().BADNUM,Fy=$f._;v1e.exports=function(t,r){var n=t._fullLayout,i=HI.getFromId(t,r.xaxis||"x"),a=HI.getFromId(t,r.yaxis||"y"),o=[],s=r.type==="violin"?"_numViolins":"_numBoxes",l,u,c,f,h,d,v;r.orientation==="h"?(c=i,f="x",h=a,d="y",v=!!r.yperiodalignment):(c=a,f="y",h=i,d="x",v=!!r.xperiodalignment);var x=Yyt(r,d,h,n[s]),b=x[0],p=x[1],E=$f.distinctVals(b,h),k=E.vals,A=E.minDiff/2,L,_,C,M,g,P,T=(r.boxpoints||r.points)==="all"?$f.identity:function(qt){return qt.v<L.lf||qt.v>L.uf};if(r._hasPreCompStats){var F=r[f],q=function(qt){return c.d2c((r[qt]||[])[l])},V=1/0,H=-1/0;for(l=0;l<r._length;l++){var X=b[l];if(SV(X)){if(L={},L.pos=L[d]=X,v&&p&&(L.orig_p=p[l]),L.q1=q("q1"),L.med=q("median"),L.q3=q("q3"),_=[],F&&$f.isArrayOrTypedArray(F[l]))for(u=0;u<F[l].length;u++)P=c.d2c(F[l][u]),P!==i0&&(g={v:P,i:[l,u]},o1e(g,r,[l,u]),_.push(g));if(L.pts=_.sort(s1e),C=L[f]=_.map(l1e),M=C.length,L.med!==i0&&L.q1!==i0&&L.q3!==i0&&L.med>=L.q1&&L.q3>=L.med){var G=q("lowerfence");L.lf=G!==i0&&G<=L.q1?G:u1e(L,C,M);var N=q("upperfence");L.uf=N!==i0&&N>=L.q3?N:c1e(L,C,M);var W=q("mean");L.mean=W!==i0?W:M?$f.mean(C,M):(L.q1+L.q3)/2;var re=q("sd");L.sd=W!==i0&&re>=0?re:M?$f.stdev(C,M,L.mean):L.q3-L.q1,L.lo=f1e(L),L.uo=h1e(L);var ae=q("notchspan");ae=ae!==i0&&ae>0?ae:d1e(L,M),L.ln=L.med-ae,L.un=L.med+ae;var _e=L.lf,Me=L.uf;r.boxpoints&&C.length&&(_e=Math.min(_e,C[0]),Me=Math.max(Me,C[M-1])),r.notched&&(_e=Math.min(_e,L.ln),Me=Math.max(Me,L.un)),L.min=_e,L.max=Me}else{$f.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+L.q1,"median = "+L.med,"q3 = "+L.q3].join(`
+`));var ke;L.med!==i0?ke=L.med:L.q1!==i0?L.q3!==i0?ke=(L.q1+L.q3)/2:ke=L.q1:L.q3!==i0?ke=L.q3:ke=0,L.med=ke,L.q1=L.q3=ke,L.lf=L.uf=ke,L.mean=L.sd=ke,L.ln=L.un=ke,L.min=L.max=ke}V=Math.min(V,L.min),H=Math.max(H,L.max),L.pts2=_.filter(T),o.push(L)}}r._extremes[c._id]=HI.findExtremes(c,[V,H],{padded:!0})}else{var ge=c.makeCalcdata(r,f),ie=Kyt(k,A),Te=k.length,Ee=Jyt(Te);for(l=0;l<r._length;l++)if(P=ge[l],!!SV(P)){var Ae=$f.findBin(b[l],ie);Ae>=0&&Ae<Te&&(g={v:P,i:l},o1e(g,r,l),Ee[Ae].push(g))}var ze=1/0,Ce=-1/0,me=r.quartilemethod,Re=me==="exclusive",ce=me==="inclusive";for(l=0;l<Te;l++)if(Ee[l].length>0){if(L={},L.pos=L[d]=k[l],_=L.pts=Ee[l].sort(s1e),C=L[f]=_.map(l1e),M=C.length,L.min=C[0],L.max=C[M-1],L.mean=$f.mean(C,M),L.sd=$f.stdev(C,M,L.mean)*r.sdmultiple,L.med=$f.interp(C,.5),M%2&&(Re||ce)){var Ge,nt;Re?(Ge=C.slice(0,M/2),nt=C.slice(M/2+1)):ce&&(Ge=C.slice(0,M/2+1),nt=C.slice(M/2)),L.q1=$f.interp(Ge,.5),L.q3=$f.interp(nt,.5)}else L.q1=$f.interp(C,.25),L.q3=$f.interp(C,.75);L.lf=u1e(L,C,M),L.uf=c1e(L,C,M),L.lo=f1e(L),L.uo=h1e(L);var ct=d1e(L,M);L.ln=L.med-ct,L.un=L.med+ct,ze=Math.min(ze,L.ln),Ce=Math.max(Ce,L.un),L.pts2=_.filter(T),o.push(L)}r.notched&&$f.isTypedArray(ge)&&(ge=Array.from(ge)),r._extremes[c._id]=HI.findExtremes(c,r.notched?ge.concat([ze,Ce]):ge,{padded:!0})}return $yt(o,r),o.length>0?(o[0].t={num:n[s],dPos:A,posLetter:d,valLetter:f,labels:{med:Fy(t,"median:"),min:Fy(t,"min:"),q1:Fy(t,"q1:"),q3:Fy(t,"q3:"),max:Fy(t,"max:"),mean:r.boxmean==="sd"||r.sizemode==="sd"?Fy(t,"mean \xB1 \u03C3:").replace("\u03C3",r.sdmultiple===1?"\u03C3":r.sdmultiple+"\u03C3"):Fy(t,"mean:"),lf:Fy(t,"lower fence:"),uf:Fy(t,"upper fence:")}},n[s]++,o):[{t:{empty:!0}}]};function Yyt(e,t,r,n){var i=t in e,a=t+"0"in e,o="d"+t in e;if(i||a&&o){var s=r.makeCalcdata(e,t),l=Xyt(e,r,t,s).vals;return[l,s]}var u;a?u=e[t+"0"]:"name"in e&&(r.type==="category"||SV(e.name)&&["linear","log"].indexOf(r.type)!==-1||$f.isDateTime(e.name)&&r.type==="date")?u=e.name:u=n;for(var c=r.type==="multicategory"?r.r2c_just_indices(u):r.d2c(u,0,e[t+"calendar"]),f=e._length,h=new Array(f),d=0;d<f;d++)h[d]=c;return[h]}function Kyt(e,t){for(var r=e.length,n=new Array(r+1),i=0;i<r;i++)n[i]=e[i]-t;return n[r]=e[r-1]+t,n}function Jyt(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=[];return t}var AV={text:"tx",hovertext:"htx"};function o1e(e,t,r){for(var n in AV)$f.isArrayOrTypedArray(t[n])&&(Array.isArray(r)?$f.isArrayOrTypedArray(t[n][r[0]])&&(e[AV[n]]=t[n][r[0]][r[1]]):e[AV[n]]=t[n][r])}function $yt(e,t){if($f.isArrayOrTypedArray(t.selectedpoints))for(var r=0;r<e.length;r++){for(var n=e[r].pts||[],i={},a=0;a<n.length;a++)i[n[a].i]=a;$f.tagSelected(n,t,i)}}function s1e(e,t){return e.v-t.v}function l1e(e){return e.v}function u1e(e,t,r){return r===0?e.q1:Math.min(e.q1,t[Math.min($f.findBin(2.5*e.q1-1.5*e.q3,t,!0)+1,r-1)])}function c1e(e,t,r){return r===0?e.q3:Math.max(e.q3,t[Math.max($f.findBin(2.5*e.q3-1.5*e.q1,t),0)])}function f1e(e){return 4*e.q1-3*e.q3}function h1e(e){return 4*e.q3-3*e.q1}function d1e(e,t){return t===0?0:1.57*(e.q3-e.q1)/Math.sqrt(t)}});var GI=ye((Vor,y1e)=>{"use strict";var p1e=Qa(),Qyt=Mr(),e1t=Bb().getAxisGroup,g1e=["v","h"];function t1t(e,t){for(var r=e.calcdata,n=t.xaxis,i=t.yaxis,a=0;a<g1e.length;a++){for(var o=g1e[a],s=o==="h"?i:n,l=[],u=0;u<r.length;u++){var c=r[u],f=c[0].t,h=c[0].trace;h.visible===!0&&(h.type==="box"||h.type==="candlestick")&&!f.empty&&(h.orientation||"v")===o&&h.xaxis===n._id&&h.yaxis===i._id&&l.push(u)}m1e("box",e,l,s)}}function m1e(e,t,r,n){var i=t.calcdata,a=t._fullLayout,o=n._id,s=o.charAt(0),l,u,c,f=[],h=0;for(l=0;l<r.length;l++)for(c=i[r[l]],u=0;u<c.length;u++)f.push(n.c2l(c[u].pos,!0)),h+=(c[u].pts2||[]).length;if(f.length){var d=Qyt.distinctVals(f);(n.type==="category"||n.type==="multicategory")&&(d.minDiff=1);var v=d.minDiff/2;p1e.minDtick(n,d.minDiff,d.vals[0],!0);var x=e==="violin"?"_numViolins":"_numBoxes",b=a[x],p=a[e+"mode"]==="group"&&b>1,E=1-a[e+"gap"],k=1-a[e+"groupgap"];for(l=0;l<r.length;l++){c=i[r[l]];var A=c[0].trace,L=c[0].t,_=A.width,C=A.side,M,g,P,T;if(_)M=g=T=_/2,P=0;else if(M=v,p){var F=e1t(a,n._id)+A.orientation,q=a._alignmentOpts[F]||{},V=q[A.alignmentgroup]||{},H=Object.keys(V.offsetGroups||{}).length,X=H||b,G=H?A._offsetIndex:L.num;g=M*E*k/X,P=2*M*(-.5+(G+.5)/X)*E,T=M*E/X}else g=M*E*k,P=0,T=M;L.dPos=M,L.bPos=P,L.bdPos=g,L.wHover=T;var N,W,re=P+g,ae,_e,Me,ke,ge,ie,Te=!!_,Ee=(A.boxpoints||A.points)&&h>0;if(C==="positive"?(N=M*(_?1:.5),ae=re,W=ae=P):C==="negative"?(N=ae=P,W=M*(_?1:.5),_e=re):(N=W=M,ae=_e=re),Ee){var Ae=A.pointpos,ze=A.jitter,Ce=A.marker.size/2,me=0;Ae+ze>=0&&(me=re*(Ae+ze),me>N?(Te=!0,ge=Ce,Me=me):me>ae&&(ge=Ce,Me=N)),me<=N&&(Me=N);var Re=0;Ae-ze<=0&&(Re=-re*(Ae-ze),Re>W?(Te=!0,ie=Ce,ke=Re):Re>_e&&(ie=Ce,ke=W)),Re<=W&&(ke=W)}else Me=N,ke=W;var ce=new Array(c.length);for(u=0;u<c.length;u++)ce[u]=c[u].pos;A._extremes[o]=p1e.findExtremes(n,ce,{padded:Te,vpadminus:ke,vpadplus:Me,vpadLinearized:!0,ppadminus:{x:ie,y:ge}[s],ppadplus:{x:ge,y:ie}[s]})}}}y1e.exports={crossTraceCalc:t1t,setPositionOffset:m1e}});var jI=ye((Hor,T1e)=>{"use strict";var MT=xa(),n2=Mr(),r1t=ao(),_1e=5,i1t=.01;function n1t(e,t,r,n){var i=e._context.staticPlot,a=t.xaxis,o=t.yaxis;n2.makeTraceGroups(n,r,"trace boxes").each(function(s){var l=MT.select(this),u=s[0],c=u.t,f=u.trace;if(c.wdPos=c.bdPos*f.whiskerwidth,f.visible!==!0||c.empty){l.remove();return}var h,d;f.orientation==="h"?(h=o,d=a):(h=a,d=o),x1e(l,{pos:h,val:d},f,c,i),b1e(l,{x:a,y:o},f,c),w1e(l,{pos:h,val:d},f,c)})}function x1e(e,t,r,n,i){var a=r.orientation==="h",o=t.val,s=t.pos,l=!!s.rangebreaks,u=n.bPos,c=n.wdPos||0,f=n.bPosPxOffset||0,h=r.whiskerwidth||0,d=r.showwhiskers!==!1,v=r.notched||!1,x=v?1-2*r.notchwidth:1,b,p;Array.isArray(n.bdPos)?(b=n.bdPos[0],p=n.bdPos[1]):(b=n.bdPos,p=n.bdPos);var E=e.selectAll("path.box").data(r.type!=="violin"||r.box.visible?n2.identity:[]);E.enter().append("path").style("vector-effect",i?"none":"non-scaling-stroke").attr("class","box"),E.exit().remove(),E.each(function(k){if(k.empty)return MT.select(this).attr("d","M0,0Z");var A=s.c2l(k.pos+u,!0),L=s.l2p(A-b)+f,_=s.l2p(A+p)+f,C=l?(L+_)/2:s.l2p(A)+f,M=r.whiskerwidth,g=l?L*M+(1-M)*C:s.l2p(A-c)+f,P=l?_*M+(1-M)*C:s.l2p(A+c)+f,T=s.l2p(A-b*x)+f,F=s.l2p(A+p*x)+f,q=r.sizemode==="sd",V=o.c2p(q?k.mean-k.sd:k.q1,!0),H=q?o.c2p(k.mean+k.sd,!0):o.c2p(k.q3,!0),X=n2.constrain(q?o.c2p(k.mean,!0):o.c2p(k.med,!0),Math.min(V,H)+1,Math.max(V,H)-1),G=k.lf===void 0||r.boxpoints===!1||q,N=o.c2p(G?k.min:k.lf,!0),W=o.c2p(G?k.max:k.uf,!0),re=o.c2p(k.ln,!0),ae=o.c2p(k.un,!0);a?MT.select(this).attr("d","M"+X+","+T+"V"+F+"M"+V+","+L+"V"+_+(v?"H"+re+"L"+X+","+F+"L"+ae+","+_:"")+"H"+H+"V"+L+(v?"H"+ae+"L"+X+","+T+"L"+re+","+L:"")+"Z"+(d?"M"+V+","+C+"H"+N+"M"+H+","+C+"H"+W+(h===0?"":"M"+N+","+g+"V"+P+"M"+W+","+g+"V"+P):"")):MT.select(this).attr("d","M"+T+","+X+"H"+F+"M"+L+","+V+"H"+_+(v?"V"+re+"L"+F+","+X+"L"+_+","+ae:"")+"V"+H+"H"+L+(v?"V"+ae+"L"+T+","+X+"L"+L+","+re:"")+"Z"+(d?"M"+C+","+V+"V"+N+"M"+C+","+H+"V"+W+(h===0?"":"M"+g+","+N+"H"+P+"M"+g+","+W+"H"+P):""))})}function b1e(e,t,r,n){var i=t.x,a=t.y,o=n.bdPos,s=n.bPos,l=r.boxpoints||r.points;n2.seedPseudoRandom();var u=function(h){return h.forEach(function(d){d.t=n,d.trace=r}),h},c=e.selectAll("g.points").data(l?u:[]);c.enter().append("g").attr("class","points"),c.exit().remove();var f=c.selectAll("path").data(function(h){var d,v=h.pts2,x=Math.max((h.max-h.min)/10,h.q3-h.q1),b=x*1e-9,p=x*i1t,E=[],k=0,A;if(r.jitter){if(x===0)for(k=1,E=new Array(v.length),d=0;d<v.length;d++)E[d]=1;else for(d=0;d<v.length;d++){var L=Math.max(0,d-_1e),_=v[L].v,C=Math.min(v.length-1,d+_1e),M=v[C].v;l!=="all"&&(v[d].v<h.lf?M=Math.min(M,h.lf):_=Math.max(_,h.uf));var g=Math.sqrt(p*(C-L)/(M-_+b))||0;g=n2.constrain(Math.abs(g),0,1),E.push(g),k=Math.max(g,k)}A=r.jitter*2/(k||1)}for(d=0;d<v.length;d++){var P=v[d],T=P.v,F=r.jitter?A*E[d]*(n2.pseudoRandom()-.5):0,q=h.pos+s+o*(r.pointpos+F);r.orientation==="h"?(P.y=q,P.x=T):(P.x=q,P.y=T),l==="suspectedoutliers"&&T<h.uo&&T>h.lo&&(P.so=!0)}return v});f.enter().append("path").classed("point",!0),f.exit().remove(),f.call(r1t.translatePoints,i,a)}function w1e(e,t,r,n){var i=t.val,a=t.pos,o=!!a.rangebreaks,s=n.bPos,l=n.bPosPxOffset||0,u=r.boxmean||(r.meanline||{}).visible,c,f;Array.isArray(n.bdPos)?(c=n.bdPos[0],f=n.bdPos[1]):(c=n.bdPos,f=n.bdPos);var h=e.selectAll("path.mean").data(r.type==="box"&&r.boxmean||r.type==="violin"&&r.box.visible&&r.meanline.visible?n2.identity:[]);h.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),h.exit().remove(),h.each(function(d){var v=a.c2l(d.pos+s,!0),x=a.l2p(v-c)+l,b=a.l2p(v+f)+l,p=o?(x+b)/2:a.l2p(v)+l,E=i.c2p(d.mean,!0),k=i.c2p(d.mean-d.sd,!0),A=i.c2p(d.mean+d.sd,!0);r.orientation==="h"?MT.select(this).attr("d","M"+E+","+x+"V"+b+(u==="sd"?"m0,0L"+k+","+p+"L"+E+","+x+"L"+A+","+p+"Z":"")):MT.select(this).attr("d","M"+x+","+E+"H"+b+(u==="sd"?"m0,0L"+p+","+k+"L"+x+","+E+"L"+p+","+A+"Z":""))})}T1e.exports={plot:n1t,plotBoxAndWhiskers:x1e,plotPoints:b1e,plotBoxMean:w1e}});var WI=ye((Gor,A1e)=>{"use strict";var EV=xa(),kV=va(),CV=ao();function a1t(e,t,r){var n=r||EV.select(e).selectAll("g.trace.boxes");n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=EV.select(this),o=i[0].trace,s=o.line.width;function l(f,h,d,v){f.style("stroke-width",h+"px").call(kV.stroke,d).call(kV.fill,v)}var u=a.selectAll("path.box");if(o.type==="candlestick")u.each(function(f){if(!f.empty){var h=EV.select(this),d=o[f.dir];l(h,d.line.width,d.line.color,d.fillcolor),h.style("opacity",o.selectedpoints&&!f.selected?.3:1)}});else{l(u,s,o.line.color,o.fillcolor),a.selectAll("path.mean").style({"stroke-width":s,"stroke-dasharray":2*s+"px,"+s+"px"}).call(kV.stroke,o.line.color);var c=a.selectAll("path.point");CV.pointStyle(c,o,e)}})}function o1t(e,t,r){var n=t[0].trace,i=r.selectAll("path.point");n.selectedpoints?CV.selectedPointStyle(i,n):CV.pointStyle(i,n,e)}A1e.exports={style:a1t,styleOnSelect:o1t}});var PV=ye((jor,k1e)=>{"use strict";var s1t=Qa(),LV=Mr(),S_=Nc(),S1e=va(),l1t=LV.fillText;function u1t(e,t,r,n){var i=e.cd,a=i[0].trace,o=a.hoveron,s=[],l;return o.indexOf("boxes")!==-1&&(s=s.concat(M1e(e,t,r,n))),o.indexOf("points")!==-1&&(l=E1e(e,t,r)),n==="closest"?l?[l]:s:(l&&s.push(l),s)}function M1e(e,t,r,n){var i=e.cd,a=e.xa,o=e.ya,s=i[0].trace,l=i[0].t,u=s.type==="violin",c,f,h,d,v,x,b,p,E,k,A,L=l.bdPos,_,C,M=l.wHover,g=function(Ce){return h.c2l(Ce.pos)+l.bPos-h.c2l(x)};u&&s.side!=="both"?(s.side==="positive"&&(E=function(Ce){var me=g(Ce);return S_.inbox(me,me+M,k)},_=L,C=0),s.side==="negative"&&(E=function(Ce){var me=g(Ce);return S_.inbox(me-M,me,k)},_=0,C=L)):(E=function(Ce){var me=g(Ce);return S_.inbox(me-M,me+M,k)},_=C=L);var P;u?P=function(Ce){return S_.inbox(Ce.span[0]-v,Ce.span[1]-v,k)}:P=function(Ce){return S_.inbox(Ce.min-v,Ce.max-v,k)},s.orientation==="h"?(v=t,x=r,b=P,p=E,c="y",h=o,f="x",d=a):(v=r,x=t,b=E,p=P,c="x",h=a,f="y",d=o);var T=Math.min(1,L/Math.abs(h.r2c(h.range[1])-h.r2c(h.range[0])));k=e.maxHoverDistance-T,A=e.maxSpikeDistance-T;function F(Ce){return(b(Ce)+p(Ce))/2}var q=S_.getDistanceFunction(n,b,p,F);if(S_.getClosest(i,q,e),e.index===!1)return[];var V=i[e.index],H=s.line.color,X=(s.marker||{}).color;S1e.opacity(H)&&s.line.width?e.color=H:S1e.opacity(X)&&s.boxpoints?e.color=X:e.color=s.fillcolor,e[c+"0"]=h.c2p(V.pos+l.bPos-C,!0),e[c+"1"]=h.c2p(V.pos+l.bPos+_,!0),e[c+"LabelVal"]=V.orig_p!==void 0?V.orig_p:V.pos;var G=c+"Spike";e.spikeDistance=F(V)*A/k,e[G]=h.c2p(V.pos,!0);var N=s.boxmean||s.sizemode==="sd"||(s.meanline||{}).visible,W=s.boxpoints||s.points,re=W&&N?["max","uf","q3","med","mean","q1","lf","min"]:W&&!N?["max","uf","q3","med","q1","lf","min"]:!W&&N?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],ae=d.range[1]<d.range[0];s.orientation===(ae?"v":"h")&&re.reverse();for(var _e=e.spikeDistance,Me=e[G],ke=[],ge=0;ge<re.length;ge++){var ie=re[ge];if(ie in V){var Te=V[ie],Ee=d.c2p(Te,!0),Ae=LV.extendFlat({},e);Ae.attr=ie,Ae[f+"0"]=Ae[f+"1"]=Ee,Ae[f+"LabelVal"]=Te,Ae[f+"Label"]=(l.labels?l.labels[ie]+" ":"")+s1t.hoverLabelText(d,Te,s[f+"hoverformat"]),Ae.hoverOnBox=!0,ie==="mean"&&"sd"in V&&(s.boxmean==="sd"||s.sizemode==="sd")&&(Ae[f+"err"]=V.sd),Ae.hovertemplate=!1,ke.push(Ae)}}e.name="",e.spikeDistance=void 0,e[G]=void 0;for(var ze=0;ze<ke.length;ze++)ke[ze].attr!=="med"?(ke[ze].name="",ke[ze].spikeDistance=void 0,ke[ze][G]=void 0):(ke[ze].spikeDistance=_e,ke[ze][G]=Me);return ke}function E1e(e,t,r){for(var n=e.cd,i=e.xa,a=e.ya,o=n[0].trace,s=i.c2p(t),l=a.c2p(r),u,c=function(P){var T=Math.max(3,P.mrc||0);return Math.max(Math.abs(i.c2p(P.x)-s)-T,1-3/T)},f=function(P){var T=Math.max(3,P.mrc||0);return Math.max(Math.abs(a.c2p(P.y)-l)-T,1-3/T)},h=S_.quadrature(c,f),d=!1,v,x,b=0;b<n.length;b++){v=n[b];for(var p=0;p<(v.pts||[]).length;p++){x=v.pts[p];var E=h(x);E<=e.distance&&(e.distance=E,d=[b,p])}}if(!d)return!1;v=n[d[0]],x=v.pts[d[1]];var k=i.c2p(x.x,!0),A=a.c2p(x.y,!0),L=x.mrc||1;u=LV.extendFlat({},e,{index:x.i,color:(o.marker||{}).color,name:o.name,x0:k-L,x1:k+L,y0:A-L,y1:A+L,spikeDistance:e.distance,hovertemplate:o.hovertemplate});var _=v.orig_p,C=_!==void 0?_:v.pos,M;o.orientation==="h"?(M=a,u.xLabelVal=x.x,u.yLabelVal=C):(M=i,u.xLabelVal=C,u.yLabelVal=x.y);var g=M._id.charAt(0);return u[g+"Spike"]=M.c2p(v.pos,!0),l1t(x,o,u),u}k1e.exports={hoverPoints:u1t,hoverOnBoxes:M1e,hoverOnPoints:E1e}});var L1e=ye((Wor,C1e)=>{"use strict";C1e.exports=function(t,r){return r.hoverOnBox&&(t.hoverOnBox=r.hoverOnBox),"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var IV=ye((Zor,P1e)=>{"use strict";P1e.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l;if(r===!1)for(s=0;s<n.length;s++)for(l=0;l<(n[s].pts||[]).length;l++)n[s].pts[l].selected=0;else for(s=0;s<n.length;s++)for(l=0;l<(n[s].pts||[]).length;l++){var u=n[s].pts[l],c=i.c2p(u.x),f=a.c2p(u.y);r.contains([c,f],null,u.i,t)?(o.push({pointNumber:u.i,x:i.c2d(u.x),y:a.c2d(u.y)}),u.selected=1):u.selected=0}return o}});var R1e=ye((Xor,I1e)=>{"use strict";I1e.exports={attributes:v4(),layoutAttributes:p4(),supplyDefaults:m4().supplyDefaults,crossTraceDefaults:m4().crossTraceDefaults,supplyLayoutDefaults:VI().supplyLayoutDefaults,calc:MV(),crossTraceCalc:GI().crossTraceCalc,plot:jI().plot,style:WI().style,styleOnSelect:WI().styleOnSelect,hoverPoints:PV().hoverPoints,eventData:L1e(),selectPoints:IV(),moduleType:"trace",name:"box",basePlotModule:Jf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}});var z1e=ye((Yor,D1e)=>{"use strict";D1e.exports=R1e()});var ET=ye((Kor,F1e)=>{"use strict";var n0=Uc(),c1t=vl(),f1t=Su(),RV=Oc().axisHoverFormat,h1t=Wo().hovertemplateAttrs,d1t=Wo().texttemplateAttrs,v1t=Jl(),Pp=no().extendFlat;F1e.exports=Pp({z:{valType:"data_array",editType:"calc"},x:Pp({},n0.x,{impliedEdits:{xtype:"array"}}),x0:Pp({},n0.x0,{impliedEdits:{xtype:"scaled"}}),dx:Pp({},n0.dx,{impliedEdits:{xtype:"scaled"}}),y:Pp({},n0.y,{impliedEdits:{ytype:"array"}}),y0:Pp({},n0.y0,{impliedEdits:{ytype:"scaled"}}),dy:Pp({},n0.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:Pp({},n0.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:Pp({},n0.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:Pp({},n0.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:Pp({},n0.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:Pp({},n0.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:Pp({},n0.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:RV("x"),yhoverformat:RV("y"),zhoverformat:RV("z",1),hovertemplate:h1t(),texttemplate:d1t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:f1t({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:Pp({},c1t.showlegend,{dflt:!1}),zorder:n0.zorder},v1t("",{cLetter:"z",autoColorDflt:!1}))});var XI=ye((Jor,O1e)=>{"use strict";var p1t=uo(),ZI=Mr(),g1t=ba();O1e.exports=function(t,r,n,i,a,o){var s=n("z");a=a||"x",o=o||"y";var l,u;if(s===void 0||!s.length)return 0;if(ZI.isArray1D(s)){l=n(a),u=n(o);var c=ZI.minRowLength(l),f=ZI.minRowLength(u);if(c===0||f===0)return 0;r._length=Math.min(c,f,s.length)}else{if(l=q1e(a,n),u=q1e(o,n),!m1t(s))return 0;n("transpose"),r._length=null}var h=g1t.getComponentMethod("calendars","handleTraceDefaults");return h(t,r,[a,o],i),!0};function q1e(e,t){var r=t(e),n=r?t(e+"type","array"):"scaled";return n==="scaled"&&(t(e+"0"),t("d"+e)),r}function m1t(e){for(var t=!0,r=!1,n=!1,i,a=0;a<e.length;a++){if(i=e[a],!ZI.isArrayOrTypedArray(i)){t=!1;break}i.length>0&&(r=!0);for(var o=0;o<i.length;o++)if(p1t(i[o])){n=!0;break}}return t&&r&&n}});var y4=ye(($or,N1e)=>{"use strict";var B1e=Mr();N1e.exports=function(t,r){t("texttemplate");var n=B1e.extendFlat({},r.font,{color:"auto",size:"auto"});B1e.coerceFont(t,"textfont",n)}});var DV=ye((Qor,U1e)=>{"use strict";U1e.exports=function(t,r,n){var i=n("zsmooth");i===!1&&(n("xgap"),n("ygap")),n("zhoverformat")}});var G1e=ye((esr,H1e)=>{"use strict";var V1e=Mr(),y1t=XI(),_1t=y4(),x1t=Pg(),b1t=DV(),w1t=Uh(),T1t=ET();H1e.exports=function(t,r,n,i){function a(s,l){return V1e.coerce(t,r,T1t,s,l)}var o=y1t(t,r,a,i);if(!o){r.visible=!1;return}x1t(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hovertemplate"),_1t(a,i),b1t(t,r,a,i),a("hoverongaps"),a("connectgaps",V1e.isArray1D(r.z)&&r.zsmooth!==!1),w1t(t,r,i,a,{prefix:"",cLetter:"z"}),a("zorder")}});var zV=ye((tsr,j1e)=>{"use strict";var kT=uo();j1e.exports={count:function(e,t,r){return r[e]++,1},sum:function(e,t,r,n){var i=n[t];return kT(i)?(i=Number(i),r[e]+=i,i):0},avg:function(e,t,r,n,i){var a=n[t];return kT(a)&&(a=Number(a),r[e]+=a,i[e]++),0},min:function(e,t,r,n){var i=n[t];if(kT(i))if(i=Number(i),kT(r[e])){if(r[e]>i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0},max:function(e,t,r,n){var i=n[t];if(kT(i))if(i=Number(i),kT(r[e])){if(r[e]<i){var a=i-r[e];return r[e]=i,a}}else return r[e]=i,i;return 0}}});var FV=ye((rsr,W1e)=>{"use strict";W1e.exports={percent:function(e,t){for(var r=e.length,n=100/t,i=0;i<r;i++)e[i]*=n},probability:function(e,t){for(var r=e.length,n=0;n<r;n++)e[n]/=t},density:function(e,t,r,n){var i=e.length;n=n||1;for(var a=0;a<i;a++)e[a]*=r[a]*n},"probability density":function(e,t,r,n){var i=e.length;n&&(t/=n);for(var a=0;a<i;a++)e[a]*=r[a]/t}}});var qV=ye((isr,Z1e)=>{"use strict";Z1e.exports=function(t,r){for(var n=t.length,i=0,a=0;a<n;a++)r[a]?(t[a]/=r[a],i+=t[a]):t[a]=null;return i}});var OV=ye((nsr,t_e)=>{"use strict";var CT=es(),a2=CT.ONEAVGYEAR,X1e=CT.ONEAVGMONTH,KI=CT.ONEDAY,Y1e=CT.ONEHOUR,K1e=CT.ONEMIN,J1e=CT.ONESEC,$1e=Qa().tickIncrement;t_e.exports=function(t,r,n,i,a){var o=-1.1*r,s=-.1*r,l=t-s,u=n[0],c=n[1],f=Math.min(YI(u+s,u+l,i,a),YI(c+s,c+l,i,a)),h=Math.min(YI(u+o,u+s,i,a),YI(c+o,c+s,i,a)),d,v;if(f>h&&h<Math.abs(c-u)/4e3?(d=f,v=!1):(d=Math.min(f,h),v=!0),i.type==="date"&&d>KI){var x=d===a2?1:6,b=d===a2?"M12":"M1";return function(p,E){var k=i.c2d(p,a2,a),A=k.indexOf("-",x);A>0&&(k=k.substr(0,A));var L=i.d2c(k,0,a);if(L<p){var _=$1e(L,b,!1,a);(L+_)/2<p+t&&(L=_)}return E&&v?$1e(L,b,!0,a):L}}return function(p,E){var k=d*Math.round(p/d);return k+d/10<p&&k+d*.9<p+t&&(k+=d),E&&v&&(k-=d),k}};function YI(e,t,r,n){if(e*t<=0)return 1/0;for(var i=Math.abs(t-e),a=r.type==="date",o=Q1e(i,a),s=0;s<10;s++){var l=Q1e(o*80,a);if(o===l)break;if(A1t(l,e,t,a,r,n))o=l;else break}return o}function Q1e(e,t){return t&&e>J1e?e>KI?e>a2*1.1?a2:e>X1e*1.1?X1e:KI:e>Y1e?Y1e:e>K1e?K1e:J1e:Math.pow(10,Math.floor(Math.log(e)/Math.LN10))}function A1t(e,t,r,n,i,a){if(n&&e>KI){var o=e_e(t,i,a),s=e_e(r,i,a),l=e===a2?0:1;return o[l]!==s[l]}return Math.floor(r/e)-Math.floor(t/e)>.1}function e_e(e,t,r){var n=t.c2d(e,a2,r).split("-");return n[0]===""&&(n.unshift(),n[0]="-"+n[0]),n}});var UV=ye((asr,n_e)=>{"use strict";var BV=uo(),Vv=Mr(),r_e=ba(),H0=Qa(),S1t=c4(),i_e=zV(),M1t=FV(),E1t=qV(),k1t=OV();function C1t(e,t){var r=[],n=[],i=t.orientation==="h",a=H0.getFromId(e,i?t.yaxis:t.xaxis),o=i?"y":"x",s={x:"y",y:"x"}[o],l=t[o+"calendar"],u=t.cumulative,c,f=NV(e,t,a,o),h=f[0],d=f[1],v=typeof h.size=="string",x=[],b=v?x:h,p=[],E=[],k=[],A=0,L=t.histnorm,_=t.histfunc,C=L.indexOf("density")!==-1,M,g,P;u.enabled&&C&&(L=L.replace(/ ?density$/,""),C=!1);var T=_==="max"||_==="min",F=T?null:0,q=i_e.count,V=M1t[L],H=!1,X=function(me){return a.r2c(me,0,l)},G;for(Vv.isArrayOrTypedArray(t[s])&&_!=="count"&&(G=t[s],H=_==="avg",q=i_e[_]),c=X(h.start),g=X(h.end)+(c-H0.tickIncrement(c,h.size,!1,l))/1e6;c<g&&r.length<1e6&&(M=H0.tickIncrement(c,h.size,!1,l),r.push((c+M)/2),n.push(F),k.push([]),x.push(c),C&&p.push(1/(M-c)),H&&E.push(0),!(M<=c));)c=M;x.push(c),!v&&a.type==="date"&&(b={start:X(b.start),end:X(b.end),size:b.size}),e._fullLayout._roundFnOpts||(e._fullLayout._roundFnOpts={});var N=t["_"+o+"bingroup"],W={leftGap:1/0,rightGap:1/0};N&&(e._fullLayout._roundFnOpts[N]||(e._fullLayout._roundFnOpts[N]=W),W=e._fullLayout._roundFnOpts[N]);var re=n.length,ae=!0,_e=W.leftGap,Me=W.rightGap,ke={};for(c=0;c<d.length;c++){var ge=d[c];P=Vv.findBin(ge,b),P>=0&&P<re&&(A+=q(P,c,n,G,E),ae&&k[P].length&&ge!==d[k[P][0]]&&(ae=!1),k[P].push(c),ke[c]=P,_e=Math.min(_e,ge-x[P]),Me=Math.min(Me,x[P+1]-ge))}W.leftGap=_e,W.rightGap=Me;var ie;ae||(ie=function(me,Re){return function(){var ce=e._fullLayout._roundFnOpts[N];return k1t(ce.leftGap,ce.rightGap,x,a,l)(me,Re)}}),H&&(A=E1t(n,E)),V&&V(n,A,p),u.enabled&&I1t(n,u.direction,u.currentbin);var Te=Math.min(r.length,n.length),Ee=[],Ae=0,ze=Te-1;for(c=0;c<Te;c++)if(n[c]){Ae=c;break}for(c=Te-1;c>=Ae;c--)if(n[c]){ze=c;break}for(c=Ae;c<=ze;c++)if(BV(r[c])&&BV(n[c])){var Ce={p:r[c],s:n[c],b:0};u.enabled||(Ce.pts=k[c],ae?Ce.ph0=Ce.ph1=k[c].length?d[k[c][0]]:r[c]:(t._computePh=!0,Ce.ph0=ie(x[c]),Ce.ph1=ie(x[c+1],!0))),Ee.push(Ce)}return Ee.length===1&&(Ee[0].width1=H0.tickIncrement(Ee[0].p,h.size,!1,l)-Ee[0].p),S1t(Ee,t),Vv.isArrayOrTypedArray(t.selectedpoints)&&Vv.tagSelected(Ee,t,ke),Ee}function NV(e,t,r,n,i){var a=n+"bins",o=e._fullLayout,s=t["_"+n+"bingroup"],l=o._histogramBinOpts[s],u=o.barmode==="overlay",c,f,h,d,v,x,b,p=function(ge){return r.r2c(ge,0,d)},E=function(ge){return r.c2r(ge,0,d)},k=r.type==="date"?function(ge){return ge||ge===0?Vv.cleanDate(ge,null,d):null}:function(ge){return BV(ge)?Number(ge):null};function A(ge,ie,Te){ie[ge+"Found"]?(ie[ge]=k(ie[ge]),ie[ge]===null&&(ie[ge]=Te[ge])):(x[ge]=ie[ge]=Te[ge],Vv.nestedProperty(f[0],a+"."+ge).set(Te[ge]))}if(t["_"+n+"autoBinFinished"])delete t["_"+n+"autoBinFinished"];else{f=l.traces;var L=[],_=!0,C=!1,M=!1;for(c=0;c<f.length;c++)if(h=f[c],h.visible){var g=l.dirs[c];v=h["_"+g+"pos0"]=r.makeCalcdata(h,g),L=Vv.concat(L,v),delete h["_"+n+"autoBinFinished"],t.visible===!0&&(_?_=!1:(delete h._autoBin,h["_"+n+"autoBinFinished"]=1),r_e.traceIs(h,"2dMap")&&(C=!0),h.type==="histogram2dcontour"&&(M=!0))}d=f[0][n+"calendar"];var P=H0.autoBin(L,r,l.nbins,C,d,l.sizeFound&&l.size),T=f[0]._autoBin={};if(x=T[l.dirs[0]]={},M&&(l.size||(P.start=E(H0.tickIncrement(p(P.start),P.size,!0,d))),l.end===void 0&&(P.end=E(H0.tickIncrement(p(P.end),P.size,!1,d)))),u&&!r_e.traceIs(t,"2dMap")&&P._dataSpan===0&&r.type!=="category"&&r.type!=="multicategory"&&t.bingroup===""&&typeof t.xbins=="undefined"){if(i)return[P,v,!0];P=L1t(e,t,r,n,a)}b=h.cumulative||{},b.enabled&&b.currentbin!=="include"&&(b.direction==="decreasing"?P.start=E(H0.tickIncrement(p(P.start),P.size,!0,d)):P.end=E(H0.tickIncrement(p(P.end),P.size,!1,d))),l.size=P.size,l.sizeFound||(x.size=P.size,Vv.nestedProperty(f[0],a+".size").set(P.size)),A("start",l,P),A("end",l,P)}v=t["_"+n+"pos0"],delete t["_"+n+"pos0"];var F=t._input[a]||{},q=Vv.extendFlat({},l),V=l.start,H=r.r2l(F.start),X=H!==void 0;if((l.startFound||X)&&H!==r.r2l(V)){var G=X?H:Vv.aggNums(Math.min,null,v),N={type:r.type==="category"||r.type==="multicategory"?"linear":r.type,r2l:r.r2l,dtick:l.size,tick0:V,calendar:d,range:[G,H0.tickIncrement(G,l.size,!1,d)].map(r.l2r)},W=H0.tickFirst(N);W>r.r2l(G)&&(W=H0.tickIncrement(W,l.size,!0,d)),q.start=r.l2r(W),X||Vv.nestedProperty(t,a+".start").set(q.start)}var re=l.end,ae=r.r2l(F.end),_e=ae!==void 0;if((l.endFound||_e)&&ae!==r.r2l(re)){var Me=_e?ae:Vv.aggNums(Math.max,null,v);q.end=r.l2r(Me),_e||Vv.nestedProperty(t,a+".start").set(q.end)}var ke="autobin"+n;return t._input[ke]===!1&&(t._input[a]=Vv.extendFlat({},t[a]||{}),delete t._input[ke],delete t[ke]),[q,v]}function L1t(e,t,r,n,i){var a=e._fullLayout,o=P1t(e,t),s=!1,l=1/0,u=[t],c,f,h;for(c=0;c<o.length;c++)if(f=o[c],f===t)s=!0;else if(!s)h=a._histogramBinOpts[f["_"+n+"bingroup"]],l=Math.min(l,h.size||f[i].size);else{var d=NV(e,f,r,n,!0),v=d[0],x=d[2];f["_"+n+"autoBinFinished"]=1,f["_"+n+"pos0"]=d[1],x?u.push(f):l=Math.min(l,v.size)}var b=new Array(u.length);for(c=0;c<u.length;c++)for(var p=u[c]["_"+n+"pos0"],E=0;E<p.length;E++)if(p[E]!==void 0){b[c]=p[E];break}for(isFinite(l)||(l=Vv.distinctVals(b).minDiff),c=0;c<u.length;c++){f=u[c];var k=f[n+"calendar"],A={start:r.c2r(b[c]-l/2,0,k),end:r.c2r(b[c]+l/2,0,k),size:l};f._input[i]=f[i]=A,h=a._histogramBinOpts[f["_"+n+"bingroup"]],h&&Vv.extendFlat(h,A)}return t[i]}function P1t(e,t){for(var r=t.xaxis,n=t.yaxis,i=t.orientation,a=[],o=e._fullData,s=0;s<o.length;s++){var l=o[s];l.type==="histogram"&&l.visible===!0&&l.orientation===i&&l.xaxis===r&&l.yaxis===n&&a.push(l)}return a}function I1t(e,t,r){var n,i,a;function o(l){a=e[l],e[l]/=2}function s(l){i=e[l],e[l]=a+i/2,a+=i}if(r==="half")if(t==="increasing")for(o(0),n=1;n<e.length;n++)s(n);else for(o(e.length-1),n=e.length-2;n>=0;n--)s(n);else if(t==="increasing"){for(n=1;n<e.length;n++)e[n]+=e[n-1];r==="exclude"&&(e.unshift(0),e.pop())}else{for(n=e.length-2;n>=0;n--)e[n]+=e[n+1];r==="exclude"&&(e.push(0),e.shift())}}n_e.exports={calc:C1t,calcAllAutoBins:NV}});var h_e=ye((osr,f_e)=>{"use strict";var a_e=Mr(),LT=Qa(),o_e=zV(),R1t=FV(),D1t=qV(),z1t=OV(),s_e=UV().calcAllAutoBins;f_e.exports=function(t,r){var n=LT.getFromId(t,r.xaxis),i=LT.getFromId(t,r.yaxis),a=r.xcalendar,o=r.ycalendar,s=function(Et){return n.r2c(Et,0,a)},l=function(Et){return i.r2c(Et,0,o)},u=function(Et){return n.c2r(Et,0,a)},c=function(Et){return i.c2r(Et,0,o)},f,h,d,v,x=s_e(t,r,n,"x"),b=x[0],p=x[1],E=s_e(t,r,i,"y"),k=E[0],A=E[1],L=r._length;p.length>L&&p.splice(L,p.length-L),A.length>L&&A.splice(L,A.length-L);var _=[],C=[],M=[],g=typeof b.size=="string",P=typeof k.size=="string",T=[],F=[],q=g?T:b,V=P?F:k,H=0,X=[],G=[],N=r.histnorm,W=r.histfunc,re=N.indexOf("density")!==-1,ae=W==="max"||W==="min",_e=ae?null:0,Me=o_e.count,ke=R1t[N],ge=!1,ie=[],Te=[],Ee="z"in r?r.z:"marker"in r&&Array.isArray(r.marker.color)?r.marker.color:"";Ee&&W!=="count"&&(ge=W==="avg",Me=o_e[W]);var Ae=b.size,ze=s(b.start),Ce=s(b.end)+(ze-LT.tickIncrement(ze,Ae,!1,a))/1e6;for(f=ze;f<Ce;f=LT.tickIncrement(f,Ae,!1,a))C.push(_e),T.push(f),ge&&M.push(0);T.push(f);var me=C.length,Re=(f-ze)/me,ce=u(ze+Re/2),Ge=k.size,nt=l(k.start),ct=l(k.end)+(nt-LT.tickIncrement(nt,Ge,!1,o))/1e6;for(f=nt;f<ct;f=LT.tickIncrement(f,Ge,!1,o)){_.push(C.slice()),F.push(f);var qt=new Array(me);for(h=0;h<me;h++)qt[h]=[];G.push(qt),ge&&X.push(M.slice())}F.push(f);var rt=_.length,ot=(f-nt)/rt,Rt=c(nt+ot/2);re&&(ie=l_e(C.length,q,Re,g),Te=l_e(_.length,V,ot,P)),!g&&n.type==="date"&&(q=u_e(s,q)),!P&&i.type==="date"&&(V=u_e(l,V));var kt=!0,Ct=!0,Yt=new Array(me),xr=new Array(rt),er=1/0,Ke=1/0,xt=1/0,bt=1/0;for(f=0;f<L;f++){var Lt=p[f],St=A[f];d=a_e.findBin(Lt,q),v=a_e.findBin(St,V),d>=0&&d<me&&v>=0&&v<rt&&(H+=Me(d,f,_[v],Ee,X[v]),G[v][d].push(f),kt&&(Yt[d]===void 0?Yt[d]=Lt:Yt[d]!==Lt&&(kt=!1)),Ct&&(xr[v]===void 0?xr[v]=St:xr[v]!==St&&(Ct=!1)),er=Math.min(er,Lt-T[d]),Ke=Math.min(Ke,T[d+1]-Lt),xt=Math.min(xt,St-F[v]),bt=Math.min(bt,F[v+1]-St))}if(ge)for(v=0;v<rt;v++)H+=D1t(_[v],X[v]);if(ke)for(v=0;v<rt;v++)ke(_[v],H,ie,Te[v]);return{x:p,xRanges:c_e(T,kt&&Yt,er,Ke,n,a),x0:ce,dx:Re,y:A,yRanges:c_e(F,Ct&&xr,xt,bt,i,o),y0:Rt,dy:ot,z:_,pts:G}};function l_e(e,t,r,n){var i=new Array(e),a;if(n)for(a=0;a<e;a++)i[a]=1/(t[a+1]-t[a]);else{var o=1/r;for(a=0;a<e;a++)i[a]=o}return i}function u_e(e,t){return{start:e(t.start),end:e(t.end),size:t.size}}function c_e(e,t,r,n,i,a){var o,s=e.length-1,l=new Array(s),u=z1t(r,n,e,i,a);for(o=0;o<s;o++){var c=(t||[])[o];l[o]=c===void 0?[u(e[o]),u(e[o+1],!0)]:[c,c]}return l}});var JI=ye((ssr,p_e)=>{"use strict";var Im=Mr(),d_e=es().BADNUM,v_e=Rg();p_e.exports=function(t,r,n,i,a,o){var s=t._length,l=r.makeCalcdata(t,i),u=n.makeCalcdata(t,a);l=v_e(t,r,i,l).vals,u=v_e(t,n,a,u).vals;var c=t.text,f=c!==void 0&&Im.isArray1D(c),h=t.hovertext,d=h!==void 0&&Im.isArray1D(h),v,x,b=Im.distinctVals(l),p=b.vals,E=Im.distinctVals(u),k=E.vals,A=[],L,_,C=k.length,M=p.length;for(v=0;v<o.length;v++)A[v]=Im.init2dArray(C,M);f&&(L=Im.init2dArray(C,M)),d&&(_=Im.init2dArray(C,M));var g=Im.init2dArray(C,M);for(v=0;v<s;v++)if(l[v]!==d_e&&u[v]!==d_e){var P=Im.findBin(l[v]+b.minDiff/2,p),T=Im.findBin(u[v]+E.minDiff/2,k);for(x=0;x<o.length;x++){var F=o[x],q=t[F],V=A[x];V[T][P]=q[v],g[T][P]=v}f&&(L[T][P]=c[v]),d&&(_[T][P]=h[v])}for(t["_"+i]=p,t["_"+a]=k,x=0;x<o.length;x++)t["_"+o[x]]=A[x];f&&(t._text=L),d&&(t._hovertext=_),r&&r.type==="category"&&(t["_"+i+"CategoryMap"]=p.map(function(H){return r._categories[H]})),n&&n.type==="category"&&(t["_"+a+"CategoryMap"]=k.map(function(H){return n._categories[H]})),t._after2before=g}});var QI=ye((lsr,g_e)=>{"use strict";var F1t=uo(),q1t=Mr(),$I=es().BADNUM;g_e.exports=function(t,r,n,i){var a,o,s,l,u,c;function f(p){if(F1t(p))return+p}if(r&&r.transpose){for(a=0,u=0;u<t.length;u++)a=Math.max(a,t[u].length);if(a===0)return!1;s=function(p){return p.length},l=function(p,E,k){return(p[k]||[])[E]}}else a=t.length,s=function(p,E){return p[E].length},l=function(p,E,k){return(p[E]||[])[k]};var h=function(p,E,k){return E===$I||k===$I?$I:l(p,E,k)};function d(p){if(r&&r.type!=="carpet"&&r.type!=="contourcarpet"&&p&&p.type==="category"&&r["_"+p._id.charAt(0)].length){var E=p._id.charAt(0),k={},A=r["_"+E+"CategoryMap"]||r[E];for(u=0;u<A.length;u++)k[A[u]]=u;return function(L){var _=k[p._categories[L]];return _+1?_:$I}}else return q1t.identity}var v=d(n),x=d(i);i&&i.type==="category"&&(a=i._categories.length);var b=new Array(a);for(u=0;u<a;u++)for(n&&n.type==="category"?o=n._categories.length:o=s(t,u),b[u]=new Array(o),c=0;c<o;c++)b[u][c]=f(h(t,x(u),v(c)));return b}});var e8=ye((usr,__e)=>{"use strict";var O1t=Mr(),m_e=.01,B1t=[[-1,0],[1,0],[0,-1],[0,1]];function N1t(e){return .5-.25*Math.min(1,e*.5)}__e.exports=function(t,r){var n=1,i;for(y_e(t,r),i=0;i<r.length&&!(r[i][2]<4);i++);for(r=r.slice(i),i=0;i<100&&n>m_e;i++)n=y_e(t,r,N1t(n));return n>m_e&&O1t.log("interp2d didn't converge quickly",n),t};function y_e(e,t,r){var n=0,i,a,o,s,l,u,c,f,h,d,v,x,b;for(s=0;s<t.length;s++){for(i=t[s],a=i[0],o=i[1],v=e[a][o],d=0,h=0,l=0;l<4;l++)u=B1t[l],c=e[a+u[0]],c&&(f=c[o+u[1]],f!==void 0&&(d===0?x=b=f:(x=Math.min(x,f),b=Math.max(b,f)),h++,d+=f));if(h===0)throw"iterateInterp2d order is wrong: no defined neighbors";e[a][o]=d/h,v===void 0?h<4&&(n=1):(e[a][o]=(1+r)*e[a][o]-r*v,b>x&&(n=Math.max(n,Math.abs(e[a][o]-v)/(b-x))))}return n}});var t8=ye((csr,x_e)=>{"use strict";var U1t=Mr().maxRowLength;x_e.exports=function(t){var r=[],n={},i=[],a=t[0],o=[],s=[0,0,0],l=U1t(t),u,c,f,h,d,v,x,b;for(c=0;c<t.length;c++)for(u=o,o=a,a=t[c+1]||[],f=0;f<l;f++)o[f]===void 0&&(v=(o[f-1]!==void 0?1:0)+(o[f+1]!==void 0?1:0)+(u[f]!==void 0?1:0)+(a[f]!==void 0?1:0),v?(c===0&&v++,f===0&&v++,c===t.length-1&&v++,f===o.length-1&&v++,v<4&&(n[[c,f]]=[c,f,v]),r.push([c,f,v])):i.push([c,f]));for(;i.length;){for(x={},b=!1,d=i.length-1;d>=0;d--)h=i[d],c=h[0],f=h[1],v=((n[[c-1,f]]||s)[2]+(n[[c+1,f]]||s)[2]+(n[[c,f-1]]||s)[2]+(n[[c,f+1]]||s)[2])/20,v&&(x[h]=[c,f,v],i.splice(d,1),b=!0);if(!b)throw"findEmpties iterated with no new neighbors";for(h in x)n[h]=x[h],r.push(x[h])}return r.sort(function(p,E){return E[2]-p[2]})}});var VV=ye((fsr,T_e)=>{"use strict";var b_e=ba(),w_e=Mr().isArrayOrTypedArray;T_e.exports=function(t,r,n,i,a,o){var s=[],l=b_e.traceIs(t,"contour"),u=b_e.traceIs(t,"histogram"),c,f,h,d=w_e(r)&&r.length>1;if(d&&!u&&o.type!=="category"){var v=r.length;if(v<=a){if(l)s=Array.from(r).slice(0,a);else if(a===1)o.type==="log"?s=[.5*r[0],2*r[0]]:s=[r[0]-.5,r[0]+.5];else if(o.type==="log"){for(s=[Math.pow(r[0],1.5)/Math.pow(r[1],.5)],h=1;h<v;h++)s.push(Math.sqrt(r[h-1]*r[h]));s.push(Math.pow(r[v-1],1.5)/Math.pow(r[v-2],.5))}else{for(s=[1.5*r[0]-.5*r[1]],h=1;h<v;h++)s.push((r[h-1]+r[h])*.5);s.push(1.5*r[v-1]-.5*r[v-2])}if(v<a){var x=s[s.length-1],b;if(o.type==="log")for(b=x/s[s.length-2],h=v;h<a;h++)x*=b,s.push(x);else for(b=x-s[s.length-2],h=v;h<a;h++)x+=b,s.push(x)}}else return l?r.slice(0,a):r.slice(0,a+1)}else{var p=t[o._id.charAt(0)+"calendar"];if(u)c=o.r2c(n,0,p);else if(w_e(r)&&r.length===1)c=r[0];else if(n===void 0)c=0;else{var E=o.type==="log"?o.d2c:o.r2c;c=E(n,0,p)}for(f=i||1,h=l?0:-.5;h<a;h++)s.push(c+f*h)}return s}});var n8=ye((hsr,E_e)=>{"use strict";var A_e=ba(),HV=Mr(),r8=Qa(),S_e=Rg(),V1t=h_e(),H1t=zv(),G1t=JI(),j1t=QI(),W1t=e8(),Z1t=t8(),i8=VV(),GV=es().BADNUM;E_e.exports=function(t,r){var n=r8.getFromId(t,r.xaxis||"x"),i=r8.getFromId(t,r.yaxis||"y"),a=A_e.traceIs(r,"contour"),o=A_e.traceIs(r,"histogram"),s=a?"best":r.zsmooth,l,u,c,f,h,d,v,x,b,p,E;if(n._minDtick=0,i._minDtick=0,o)E=V1t(t,r),f=E.orig_x,l=E.x,u=E.x0,c=E.dx,x=E.orig_y,h=E.y,d=E.y0,v=E.dy,b=E.z;else{var k=r.z;HV.isArray1D(k)?(G1t(r,n,i,"x","y",["z"]),l=r._x,h=r._y,k=r._z):(f=r.x?n.makeCalcdata(r,"x"):[],x=r.y?i.makeCalcdata(r,"y"):[],l=S_e(r,n,"x",f).vals,h=S_e(r,i,"y",x).vals,r._x=l,r._y=h),u=r.x0,c=r.dx,d=r.y0,v=r.dy,b=j1t(k,r,n,i)}(n.rangebreaks||i.rangebreaks)&&(b=X1t(l,h,b),o||(l=M_e(l),h=M_e(h),r._x=l,r._y=h)),!o&&(a||r.connectgaps)&&(r._emptypoints=Z1t(b),W1t(b,r._emptypoints));function A(q){s=r._input.zsmooth=r.zsmooth=!1,HV.warn('cannot use zsmooth: "fast": '+q)}function L(q){if(q.length>1){var V=(q[q.length-1]-q[0])/(q.length-1),H=Math.abs(V/100);for(p=0;p<q.length-1;p++)if(Math.abs(q[p+1]-q[p]-V)>H)return!1}return!0}r._islinear=!1,n.type==="log"||i.type==="log"?s==="fast"&&A("log axis found"):L(l)?L(h)?r._islinear=!0:s==="fast"&&A("y scale is not linear"):s==="fast"&&A("x scale is not linear");var _=HV.maxRowLength(b),C=r.xtype==="scaled"?"":l,M=i8(r,C,u,c,_,n),g=r.ytype==="scaled"?"":h,P=i8(r,g,d,v,b.length,i);r._extremes[n._id]=r8.findExtremes(n,M),r._extremes[i._id]=r8.findExtremes(i,P);var T={x:M,y:P,z:b,text:r._text||r.text,hovertext:r._hovertext||r.hovertext};if(r.xperiodalignment&&f&&(T.orig_x=f),r.yperiodalignment&&x&&(T.orig_y=x),C&&C.length===M.length-1&&(T.xCenter=C),g&&g.length===P.length-1&&(T.yCenter=g),o&&(T.xRanges=E.xRanges,T.yRanges=E.yRanges,T.pts=E.pts),a||H1t(t,r,{vals:b,cLetter:"z"}),a&&r.contours&&r.contours.coloring==="heatmap"){var F={type:r.type==="contour"?"heatmap":"histogram2d",xcalendar:r.xcalendar,ycalendar:r.ycalendar};T.xfill=i8(F,C,u,c,_,n),T.yfill=i8(F,g,d,v,b.length,i)}return[T]};function M_e(e){for(var t=[],r=e.length,n=0;n<r;n++){var i=e[n];i!==GV&&t.push(i)}return t}function X1t(e,t,r){for(var n=[],i=-1,a=0;a<r.length;a++)if(t[a]!==GV){i++,n[i]=[];for(var o=0;o<r[a].length;o++)e[o]!==GV&&n[i].push(r[a][o])}return n}});var o8=ye(a8=>{"use strict";a8.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]];a8.STYLE=a8.CSS_DECLARATIONS.map(function(e){return e.join(": ")+"; "}).join("")});var jV=ye((vsr,L_e)=>{"use strict";var k_e=o8(),Y1t=ao(),C_e=Mr(),PT=null;function K1t(){if(PT!==null)return PT;PT=!1;var e=C_e.isSafari()||C_e.isIOS();if(window.navigator.userAgent&&!e){var t=Array.from(k_e.CSS_DECLARATIONS).reverse(),r=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof r=="function")PT=t.some(function(o){return r.apply(null,o)});else{var n=Y1t.tester.append("image").attr("style",k_e.STYLE),i=window.getComputedStyle(n.node()),a=i.imageRendering;PT=t.some(function(o){var s=o[1];return a===s||a===s.toLowerCase()}),n.remove()}}return PT}L_e.exports=K1t});var s8=ye((psr,B_e)=>{"use strict";var P_e=xa(),J1t=id(),$1t=ba(),Q1t=ao(),e_t=Qa(),G0=Mr(),I_e=Pl(),t_t=$P(),r_t=va(),i_t=Mu().extractOpts,n_t=Mu().makeColorScaleFuncFromTrace,a_t=Zp(),o_t=Nh(),WV=o_t.LINE_SPACING,s_t=jV(),l_t=o8().STYLE,q_e="heatmap-label";function O_e(e){return e.selectAll("g."+q_e)}function R_e(e){O_e(e).remove()}B_e.exports=function(e,t,r,n){var i=t.xaxis,a=t.yaxis;G0.makeTraceGroups(n,r,"hm").each(function(o){var s=P_e.select(this),l=o[0],u=l.trace,c=u.xgap||0,f=u.ygap||0,h=l.z,d=l.x,v=l.y,x=l.xCenter,b=l.yCenter,p=$1t.traceIs(u,"contour"),E=p?"best":u.zsmooth,k=h.length,A=G0.maxRowLength(h),L=!1,_=!1,C,M,g,P,T,F,q,V;for(F=0;C===void 0&&F<d.length-1;)C=i.c2p(d[F]),F++;for(F=d.length-1;M===void 0&&F>0;)M=i.c2p(d[F]),F--;for(M<C&&(g=M,M=C,C=g,L=!0),F=0;P===void 0&&F<v.length-1;)P=a.c2p(v[F]),F++;for(F=v.length-1;T===void 0&&F>0;)T=a.c2p(v[F]),F--;T<P&&(g=P,P=T,T=g,_=!0),p&&(x=d,b=v,d=l.xfill,v=l.yfill);var H="default";if(E?H=E==="best"?"smooth":"fast":u._islinear&&c===0&&f===0&&s_t()&&(H="fast"),H!=="fast"){var X=E==="best"?0:.5;C=Math.max(-X*i._length,C),M=Math.min((1+X)*i._length,M),P=Math.max(-X*a._length,P),T=Math.min((1+X)*a._length,T)}var G=Math.round(M-C),N=Math.round(T-P),W=C>=i._length||M<=0||P>=a._length||T<=0;if(W){var re=s.selectAll("image").data([]);re.exit().remove(),R_e(s);return}var ae,_e;H==="fast"?(ae=A,_e=k):(ae=G,_e=N);var Me=document.createElement("canvas");Me.width=ae,Me.height=_e;var ke=Me.getContext("2d",{willReadFrequently:!0}),ge=n_t(u,{noNumericCheck:!0,returnArray:!0}),ie,Te;H==="fast"?(ie=L?function(Pi){return A-1-Pi}:G0.identity,Te=_?function(Pi){return k-1-Pi}:G0.identity):(ie=function(Pi){return G0.constrain(Math.round(i.c2p(d[Pi])-C),0,G)},Te=function(Pi){return G0.constrain(Math.round(a.c2p(v[Pi])-P),0,N)});var Ee=Te(0),Ae=[Ee,Ee],ze=L?0:1,Ce=_?0:1,me=0,Re=0,ce=0,Ge=0,nt,ct,qt,rt,ot;function Rt(Pi,Gi){if(Pi!==void 0){var Ki=ge(Pi);return Ki[0]=Math.round(Ki[0]),Ki[1]=Math.round(Ki[1]),Ki[2]=Math.round(Ki[2]),me+=Gi,Re+=Ki[0]*Gi,ce+=Ki[1]*Gi,Ge+=Ki[2]*Gi,Ki}return[0,0,0,0]}function kt(Pi,Gi,Ki,ka){var jn=Pi[Ki.bin0];if(jn===void 0)return Rt(void 0,1);var la=Pi[Ki.bin1],Fa=Gi[Ki.bin0],Ra=Gi[Ki.bin1],jo=la-jn||0,oa=Fa-jn||0,Sn;return la===void 0?Ra===void 0?Sn=0:Fa===void 0?Sn=2*(Ra-jn):Sn=(2*Ra-Fa-jn)*2/3:Ra===void 0?Fa===void 0?Sn=0:Sn=(2*jn-la-Fa)*2/3:Fa===void 0?Sn=(2*Ra-la-jn)*2/3:Sn=Ra+jn-la-Fa,Rt(jn+Ki.frac*jo+ka.frac*(oa+Ki.frac*Sn))}if(H!=="default"){var Ct=0,Yt;try{Yt=new Uint8Array(ae*_e*4)}catch(Pi){Yt=new Array(ae*_e*4)}if(H==="smooth"){var xr=x||d,er=b||v,Ke=new Array(xr.length),xt=new Array(er.length),bt=new Array(G),Lt=x?z_e:D_e,St=b?z_e:D_e,Et,dt,Ht;for(F=0;F<xr.length;F++)Ke[F]=Math.round(i.c2p(xr[F])-C);for(F=0;F<er.length;F++)xt[F]=Math.round(a.c2p(er[F])-P);for(F=0;F<G;F++)bt[F]=Lt(F,Ke);for(q=0;q<N;q++)for(Et=St(q,xt),dt=h[Et.bin0],Ht=h[Et.bin1],F=0;F<G;F++,Ct+=4)ot=kt(dt,Ht,bt[F],Et),F_e(Yt,Ct,ot)}else for(q=0;q<k;q++)for(rt=h[q],Ae=Te(q),F=0;F<A;F++)ot=Rt(rt[F],1),Ct=(Ae*A+ie(F))*4,F_e(Yt,Ct,ot);var $t=ke.createImageData(ae,_e);try{$t.data.set(Yt)}catch(Pi){var fr=$t.data,_r=fr.length;for(q=0;q<_r;q++)fr[q]=Yt[q]}ke.putImageData($t,0,0)}else{var Br=Math.floor(c/2),Or=Math.floor(f/2);for(q=0;q<k;q++)if(rt=h[q],Ae.reverse(),Ae[Ce]=Te(q+1),!(Ae[0]===Ae[1]||Ae[0]===void 0||Ae[1]===void 0))for(ct=ie(0),nt=[ct,ct],F=0;F<A;F++)nt.reverse(),nt[ze]=ie(F+1),!(nt[0]===nt[1]||nt[0]===void 0||nt[1]===void 0)&&(qt=rt[F],ot=Rt(qt,(nt[1]-nt[0])*(Ae[1]-Ae[0])),ke.fillStyle="rgba("+ot.join(",")+")",ke.fillRect(nt[0]+Br,Ae[0]+Or,nt[1]-nt[0]-c,Ae[1]-Ae[0]-f))}Re=Math.round(Re/me),ce=Math.round(ce/me),Ge=Math.round(Ge/me);var Nr=J1t("rgb("+Re+","+ce+","+Ge+")");e._hmpixcount=(e._hmpixcount||0)+me,e._hmlumcount=(e._hmlumcount||0)+me*Nr.getLuminance();var ut=s.selectAll("image").data(o);ut.enter().append("svg:image").attr({xmlns:a_t.svg,preserveAspectRatio:"none"}),ut.attr({height:N,width:G,x:C,y:P,"xlink:href":Me.toDataURL("image/png")}),H==="fast"&&!E&&ut.attr("style",l_t),R_e(s);var Ne=u.texttemplate;if(Ne){var Ye=i_t(u),Ve={type:"linear",range:[Ye.min,Ye.max],_separators:i._separators,_numFormat:i._numFormat},Xe=u.type==="histogram2dcontour",ht=u.type==="contour",Le=ht?1:0,xe=ht?k-1:k,Se=ht?1:0,lt=ht?A-1:A,Gt=[];for(F=Le;F<xe;F++){var Vt;if(ht)Vt=l.y[F];else if(Xe){if(F===0||F===k-1)continue;Vt=l.y[F]}else if(l.yCenter)Vt=l.yCenter[F];else{if(F+1===k&&l.y[F+1]===void 0)continue;Vt=(l.y[F]+l.y[F+1])/2}var ar=Math.round(a.c2p(Vt));if(!(0>ar||ar>a._length))for(q=Se;q<lt;q++){var Qr;if(ht)Qr=l.x[q];else if(Xe){if(q===0||q===A-1)continue;Qr=l.x[q]}else if(l.xCenter)Qr=l.xCenter[q];else{if(q+1===A&&l.x[q+1]===void 0)continue;Qr=(l.x[q]+l.x[q+1])/2}var ai=Math.round(i.c2p(Qr));if(!(0>ai||ai>i._length)){var jr=t_t({x:Qr,y:Vt},u,e._fullLayout);jr.x=Qr,jr.y=Vt;var ri=l.z[F][q];ri===void 0?(jr.z="",jr.zLabel=""):(jr.z=ri,jr.zLabel=e_t.tickText(Ve,ri,"hover").text);var bi=l.text&&l.text[F]&&l.text[F][q];(bi===void 0||bi===!1)&&(bi=""),jr.text=bi;var nn=G0.texttemplateString(Ne,jr,e._fullLayout._d3locale,jr,u._meta||{});if(nn){var Wi=nn.split("<br>"),Ni=Wi.length,_n=0;for(V=0;V<Ni;V++)_n=Math.max(_n,Wi[V].length);Gt.push({l:Ni,c:_n,t:nn,x:ai,y:ar,z:ri})}}}}var $i=u.textfont,zn=$i.size,Wn=e._fullLayout.font.size;if(!zn||zn==="auto"){var It=1/0,ft=1/0,jt=0,Zt=0;for(V=0;V<Gt.length;V++){var yr=Gt[V];if(jt=Math.max(jt,yr.l),Zt=Math.max(Zt,yr.c),V<Gt.length-1){var Fr=Gt[V+1],Zr=Math.abs(Fr.x-yr.x),Vr=Math.abs(Fr.y-yr.y);Zr&&(It=Math.min(It,Zr)),Vr&&(ft=Math.min(ft,Vr))}}!isFinite(It)||!isFinite(ft)?zn=Wn:(It-=c,ft-=f,It/=Zt,ft/=jt,It/=WV/2,ft/=WV,zn=Math.min(Math.floor(It),Math.floor(ft),Wn))}if(zn<=0||!isFinite(zn))return;var gi=function(Pi){return Pi.x},Si=function(Pi){return Pi.y-zn*(Pi.l*WV/2-1)},Mi=O_e(s).data(Gt);Mi.enter().append("g").classed(q_e,1).append("text").attr("text-anchor","middle").each(function(Pi){var Gi=P_e.select(this),Ki=$i.color;(!Ki||Ki==="auto")&&(Ki=r_t.contrast(Pi.z===void 0?e._fullLayout.plot_bgcolor:"rgba("+ge(Pi.z).join()+")")),Gi.attr("data-notex",1).call(I_e.positionText,gi(Pi),Si(Pi)).call(Q1t.font,{family:$i.family,size:zn,color:Ki,weight:$i.weight,style:$i.style,variant:$i.variant,textcase:$i.textcase,lineposition:$i.lineposition,shadow:$i.shadow}).text(Pi.t).call(I_e.convertToTspans,e)})}})};function D_e(e,t){var r=t.length-2,n=G0.constrain(G0.findBin(e,t),0,r),i=t[n],a=t[n+1],o=G0.constrain(n+(e-i)/(a-i)-.5,0,r),s=Math.round(o),l=Math.abs(o-s);return!o||o===r||!l?{bin0:s,bin1:s,frac:0}:{bin0:s,frac:l,bin1:Math.round(s+l/(o-s))}}function z_e(e,t){var r=t.length-1,n=G0.constrain(G0.findBin(e,t),0,r),i=t[n],a=t[n+1],o=(e-i)/(a-i)||0;return o<=0?{bin0:n,bin1:n,frac:0}:o<.5?{bin0:n,bin1:n+1,frac:o}:{bin0:n+1,bin1:n,frac:1-o}}function F_e(e,t,r){e[t]=r[0],e[t+1]=r[1],e[t+2]=r[2],e[t+3]=Math.round(r[3]*255)}});var M_=ye((gsr,N_e)=>{"use strict";N_e.exports={min:"zmin",max:"zmax"}});var l8=ye((msr,U_e)=>{"use strict";var u_t=xa();U_e.exports=function(t){u_t.select(t).selectAll(".hm image").style("opacity",function(r){return r.trace.opacity})}});var c8=ye((ysr,H_e)=>{"use strict";var V_e=Nc(),_4=Mr(),u8=_4.isArrayOrTypedArray,c_t=Qa(),f_t=Mu().extractOpts;H_e.exports=function(t,r,n,i,a){a||(a={});var o=a.isContour,s=t.cd[0],l=s.trace,u=t.xa,c=t.ya,f=s.x,h=s.y,d=s.z,v=s.xCenter,x=s.yCenter,b=s.zmask,p=l.zhoverformat,E=f,k=h,A,L,_,C;if(t.index!==!1){try{_=Math.round(t.index[1]),C=Math.round(t.index[0])}catch(re){_4.error("Error hovering on heatmap, pointNumber must be [row,col], found:",t.index);return}if(_<0||_>=d[0].length||C<0||C>d.length)return}else{if(V_e.inbox(r-f[0],r-f[f.length-1],0)>0||V_e.inbox(n-h[0],n-h[h.length-1],0)>0)return;if(o){var M;for(E=[2*f[0]-f[1]],M=1;M<f.length;M++)E.push((f[M]+f[M-1])/2);for(E.push([2*f[f.length-1]-f[f.length-2]]),k=[2*h[0]-h[1]],M=1;M<h.length;M++)k.push((h[M]+h[M-1])/2);k.push([2*h[h.length-1]-h[h.length-2]])}_=Math.max(0,Math.min(E.length-2,_4.findBin(r,E))),C=Math.max(0,Math.min(k.length-2,_4.findBin(n,k)))}var g=u.c2p(f[_]),P=u.c2p(f[_+1]),T=c.c2p(h[C]),F=c.c2p(h[C+1]),q,V;o?(q=s.orig_x||f,V=s.orig_y||h,P=g,A=q[_],F=T,L=V[C]):(q=s.orig_x||v||f,V=s.orig_y||x||h,A=v?q[_]:(q[_]+q[_+1])/2,L=x?V[C]:(V[C]+V[C+1])/2,u&&u.type==="category"&&(A=f[_]),c&&c.type==="category"&&(L=h[C]),l.zsmooth&&(g=P=u.c2p(A),T=F=c.c2p(L)));var H=d[C][_];if(b&&!b[C][_]&&(H=void 0),!(H===void 0&&!l.hoverongaps)){var X;u8(s.hovertext)&&u8(s.hovertext[C])?X=s.hovertext[C][_]:u8(s.text)&&u8(s.text[C])&&(X=s.text[C][_]);var G=f_t(l),N={type:"linear",range:[G.min,G.max],hoverformat:p,_separators:u._separators,_numFormat:u._numFormat},W=c_t.tickText(N,H,"hover").text;return[_4.extendFlat(t,{index:l._after2before?l._after2before[C][_]:[C,_],distance:t.maxHoverDistance,spikeDistance:t.maxSpikeDistance,x0:g,x1:P,y0:T,y1:F,xLabelVal:A,yLabelVal:L,zLabelVal:H,zLabel:W,text:X})]}}});var j_e=ye((_sr,G_e)=>{"use strict";G_e.exports={attributes:ET(),supplyDefaults:G1e(),calc:n8(),plot:s8(),colorbar:M_(),style:l8(),hoverPoints:c8(),moduleType:"trace",name:"heatmap",basePlotModule:Jf(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}});var Z_e=ye((xsr,W_e)=>{"use strict";W_e.exports=j_e()});var ZV=ye((bsr,X_e)=>{"use strict";X_e.exports=function(t,r){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}});var K_e=ye((wsr,Y_e)=>{"use strict";Y_e.exports={eventDataKeys:["binNumber"]}});var f8=ye((Tsr,Q_e)=>{"use strict";var Ip=Lm(),J_e=Oc().axisHoverFormat,h_t=Wo().hovertemplateAttrs,d_t=Wo().texttemplateAttrs,XV=Su(),$_e=ZV(),v_t=K_e(),YV=no().extendFlat;Q_e.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:J_e("x"),yhoverformat:J_e("y"),text:YV({},Ip.text,{}),hovertext:YV({},Ip.hovertext,{}),orientation:Ip.orientation,histfunc:{valType:"enumerated",values:["count","sum","avg","min","max"],dflt:"count",editType:"calc"},histnorm:{valType:"enumerated",values:["","percent","probability","density","probability density"],dflt:"",editType:"calc"},cumulative:{enabled:{valType:"boolean",dflt:!1,editType:"calc"},direction:{valType:"enumerated",values:["increasing","decreasing"],dflt:"increasing",editType:"calc"},currentbin:{valType:"enumerated",values:["include","exclude","half"],dflt:"include",editType:"calc"},editType:"calc"},nbinsx:{valType:"integer",min:0,dflt:0,editType:"calc"},xbins:$_e("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:$_e("y",!0),autobinx:{valType:"boolean",dflt:null,editType:"calc"},autobiny:{valType:"boolean",dflt:null,editType:"calc"},bingroup:{valType:"string",dflt:"",editType:"calc"},hovertemplate:h_t({},{keys:v_t.eventDataKeys}),texttemplate:d_t({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),textposition:YV({},Ip.textposition,{arrayOk:!1}),textfont:XV({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:XV({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:XV({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:Ip.insidetextanchor,textangle:Ip.textangle,cliponaxis:Ip.cliponaxis,constraintext:Ip.constraintext,marker:Ip.marker,offsetgroup:Ip.offsetgroup,alignmentgroup:Ip.alignmentgroup,selected:Ip.selected,unselected:Ip.unselected,zorder:Ip.zorder}});var ixe=ye((Asr,rxe)=>{"use strict";var exe=ba(),x4=Mr(),txe=va(),p_t=r0().handleText,g_t=FI(),m_t=f8();rxe.exports=function(t,r,n,i){function a(E,k){return x4.coerce(t,r,m_t,E,k)}var o=a("x"),s=a("y"),l=a("cumulative.enabled");l&&(a("cumulative.direction"),a("cumulative.currentbin")),a("text");var u=a("textposition");p_t(t,r,i,a,u,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat");var c=a("orientation",s&&!o?"h":"v"),f=c==="v"?"x":"y",h=c==="v"?"y":"x",d=o&&s?Math.min(x4.minRowLength(o)&&x4.minRowLength(s)):x4.minRowLength(r[f]||[]);if(!d){r.visible=!1;return}r._length=d;var v=exe.getComponentMethod("calendars","handleTraceDefaults");v(t,r,["x","y"],i);var x=r[h];x&&a("histfunc"),a("histnorm"),a("autobin"+f),g_t(t,r,a,n,i),x4.coerceSelectionMarkerOpacity(r,a);var b=(r.marker.line||{}).color,p=exe.getComponentMethod("errorbars","supplyDefaults");p(t,r,b||txe.defaultLine,{axis:"y"}),p(t,r,b||txe.defaultLine,{axis:"x",inherit:"y"}),a("zorder")}});var d8=ye((Ssr,oxe)=>{"use strict";var b4=Mr(),y_t=af(),h8=ba().traceIs,__t=Hb(),x_t=r0().validateCornerradius,nxe=b4.nestedProperty,KV=Bb().getAxisGroup,axe=[{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"}],b_t=["x","y"];oxe.exports=function(t,r){var n=r._histogramBinOpts={},i=[],a={},o=[],s,l,u,c,f,h,d;function v(H,X){return b4.coerce(s._input,s,s._module.attributes,H,X)}function x(H){return H.orientation==="v"?"x":"y"}function b(H,X){var G=y_t.getFromTrace({_fullLayout:r},H,X);return G.type}function p(H,X,G){var N=H.uid+"__"+G;X||(X=N);var W=b(H,G),re=H[G+"calendar"]||"",ae=n[X],_e=!0;ae&&(W===ae.axType&&re===ae.calendar?(_e=!1,ae.traces.push(H),ae.dirs.push(G)):(X=N,W!==ae.axType&&b4.warn(["Attempted to group the bins of trace",H.index,"set on a","type:"+W,"axis","with bins on","type:"+ae.axType,"axis."].join(" ")),re!==ae.calendar&&b4.warn(["Attempted to group the bins of trace",H.index,"set with a",re,"calendar","with bins",ae.calendar?"on a "+ae.calendar+" calendar":"w/o a set calendar"].join(" ")))),_e&&(n[X]={traces:[H],dirs:[G],axType:W,calendar:H[G+"calendar"]||""}),H["_"+G+"bingroup"]=X}for(f=0;f<t.length;f++)if(s=t[f],h8(s,"histogram")){if(i.push(s),delete s._xautoBinFinished,delete s._yautoBinFinished,s.type==="histogram"){var E=v("marker.cornerradius",r.barcornerradius);s.marker&&(s.marker.cornerradius=x_t(E))}h8(s,"2dMap")||__t(s._input,s,r,v,r.barmode)}var k=r._alignmentOpts||{};for(f=0;f<i.length;f++){if(s=i[f],u="",!h8(s,"2dMap")){if(c=x(s),r.barmode==="group"&&s.alignmentgroup){var A=s[c+"axis"],L=KV(r,A)+s.orientation;(k[L]||{})[s.alignmentgroup]&&(u=L)}!u&&r.barmode!=="overlay"&&(u=KV(r,s.xaxis)+KV(r,s.yaxis)+x(s))}u?(a[u]||(a[u]=[]),a[u].push(s)):o.push(s)}for(u in a){if(l=a[u],l.length===1){o.push(l[0]);continue}var _=!1;for(l.length&&(s=l[0],_=v("bingroup")),u=_||u,f=0;f<l.length;f++){s=l[f];var C=s._input.bingroup;C&&C!==u&&b4.warn(["Trace",s.index,"must match","within bingroup",u+".","Ignoring its bingroup:",C,"setting."].join(" ")),s.bingroup=u,p(s,u,x(s))}}for(f=0;f<o.length;f++){s=o[f];var M=v("bingroup");if(h8(s,"2dMap"))for(d=0;d<2;d++){c=b_t[d];var g=v(c+"bingroup",M?M+"__"+c:null);p(s,g,c)}else p(s,M,x(s))}for(u in n){var P=n[u];for(l=P.traces,h=0;h<axe.length;h++){var T=axe[h],F=T.name,q,V;if(!(F==="nbins"&&P.sizeFound)){for(f=0;f<l.length;f++){if(s=l[f],c=P.dirs[f],q=T.aStr[c],nxe(s._input,q).get()!==void 0){P[F]=v(q),P[F+"Found"]=!0;break}V=(s._autoBin||{})[c]||{},V[F]&&nxe(s,q).set(V[F])}if(F==="start"||F==="end")for(;f<l.length;f++)s=l[f],s["_"+c+"bingroup"]&&(V=(s._autoBin||{})[c]||{},v(q,V[F]));F==="nbins"&&!P.sizeFound&&!P.nbinsFound&&(s=l[0],P[F]=v(q))}}}}});var lxe=ye((Msr,sxe)=>{"use strict";var w_t=TT().hoverPoints,T_t=Qa().hoverLabelText;sxe.exports=function(t,r,n,i,a){var o=w_t(t,r,n,i,a);if(o){t=o[0];var s=t.cd[t.index],l=t.cd[0].trace;if(!l.cumulative.enabled){var u=l.orientation==="h"?"y":"x";t[u+"Label"]=T_t(t[u+"a"],[s.ph0,s.ph1],l[u+"hoverformat"])}return o}}});var JV=ye((Esr,uxe)=>{"use strict";uxe.exports=function(t,r,n,i,a){if(t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"zLabelVal"in r&&(t.z=r.zLabelVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),!(n.cumulative||{}).enabled){var o=Array.isArray(a)?i[0].pts[a[0]][a[1]]:i[a].pts;t.pointNumbers=o,t.binNumber=t.pointNumber,delete t.pointNumber,delete t.pointIndex;var s;if(n._indexToPoints){s=[];for(var l=0;l<o.length;l++)s=s.concat(n._indexToPoints[o[l]])}else s=o;t.pointIndices=s}return t}});var fxe=ye((ksr,cxe)=>{"use strict";cxe.exports={attributes:f8(),layoutAttributes:zI(),supplyDefaults:ixe(),crossTraceDefaults:d8(),supplyLayoutDefaults:yV(),calc:UV().calc,crossTraceCalc:Gb().crossTraceCalc,plot:i2().plot,layerName:"barlayer",style:N0().style,styleOnSelect:N0().styleOnSelect,colorbar:Kd(),hoverPoints:lxe(),selectPoints:AT(),eventData:JV(),moduleType:"trace",name:"histogram",basePlotModule:Jf(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}});var dxe=ye((Csr,hxe)=>{"use strict";hxe.exports=fxe()});var p8=ye((Lsr,pxe)=>{"use strict";var Vg=f8(),vxe=ZV(),v8=ET(),A_t=vl(),$V=Oc().axisHoverFormat,S_t=Wo().hovertemplateAttrs,M_t=Wo().texttemplateAttrs,E_t=Jl(),w4=no().extendFlat;pxe.exports=w4({x:Vg.x,y:Vg.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:Vg.histnorm,histfunc:Vg.histfunc,nbinsx:Vg.nbinsx,xbins:vxe("x"),nbinsy:Vg.nbinsy,ybins:vxe("y"),autobinx:Vg.autobinx,autobiny:Vg.autobiny,bingroup:w4({},Vg.bingroup,{}),xbingroup:w4({},Vg.bingroup,{}),ybingroup:w4({},Vg.bingroup,{}),xgap:v8.xgap,ygap:v8.ygap,zsmooth:v8.zsmooth,xhoverformat:$V("x"),yhoverformat:$V("y"),zhoverformat:$V("z",1),hovertemplate:S_t({},{keys:"z"}),texttemplate:M_t({arrayOk:!1,editType:"plot"},{keys:"z"}),textfont:v8.textfont,showlegend:w4({},A_t.showlegend,{dflt:!1})},E_t("",{cLetter:"z",autoColorDflt:!1}))});var QV=ye((Psr,mxe)=>{"use strict";var k_t=ba(),gxe=Mr();mxe.exports=function(t,r,n,i){var a=n("x"),o=n("y"),s=gxe.minRowLength(a),l=gxe.minRowLength(o);if(!s||!l){r.visible=!1;return}r._length=Math.min(s,l);var u=k_t.getComponentMethod("calendars","handleTraceDefaults");u(t,r,["x","y"],i);var c=n("z")||n("marker.color");c&&n("histfunc"),n("histnorm"),n("autobinx"),n("autobiny")}});var _xe=ye((Isr,yxe)=>{"use strict";var C_t=Mr(),L_t=QV(),P_t=DV(),I_t=Uh(),R_t=y4(),D_t=p8();yxe.exports=function(t,r,n,i){function a(o,s){return C_t.coerce(t,r,D_t,o,s)}L_t(t,r,a,i),r.visible!==!1&&(P_t(t,r,a,i),I_t(t,r,i,a,{prefix:"",cLetter:"z"}),a("hovertemplate"),R_t(a,i),a("xhoverformat"),a("yhoverformat"))}});var wxe=ye((Rsr,bxe)=>{"use strict";var z_t=c8(),xxe=Qa().hoverLabelText;bxe.exports=function(t,r,n,i,a){var o=z_t(t,r,n,i,a);if(o){t=o[0];var s=t.index,l=s[0],u=s[1],c=t.cd[0],f=c.trace,h=c.xRanges[u],d=c.yRanges[l];return t.xLabel=xxe(t.xa,[h[0],h[1]],f.xhoverformat),t.yLabel=xxe(t.ya,[d[0],d[1]],f.yhoverformat),o}}});var Axe=ye((Dsr,Txe)=>{"use strict";Txe.exports={attributes:p8(),supplyDefaults:_xe(),crossTraceDefaults:d8(),calc:n8(),plot:s8(),layerName:"heatmaplayer",colorbar:M_(),style:l8(),hoverPoints:wxe(),eventData:JV(),moduleType:"trace",name:"histogram2d",basePlotModule:Jf(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}});var Mxe=ye((zsr,Sxe)=>{"use strict";Sxe.exports=Axe()});var g8=ye((Fsr,Exe)=>{"use strict";Exe.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}});var T4=ye((qsr,Pxe)=>{"use strict";var Gh=ET(),m8=Uc(),Cxe=Oc(),eH=Cxe.axisHoverFormat,F_t=Cxe.descriptionOnlyNumbers,q_t=Jl(),O_t=Ed().dash,B_t=Su(),IT=no().extendFlat,Lxe=g8(),N_t=Lxe.COMPARISON_OPS2,U_t=Lxe.INTERVAL_OPS,kxe=m8.line;Pxe.exports=IT({z:Gh.z,x:Gh.x,x0:Gh.x0,dx:Gh.dx,y:Gh.y,y0:Gh.y0,dy:Gh.dy,xperiod:Gh.xperiod,yperiod:Gh.yperiod,xperiod0:m8.xperiod0,yperiod0:m8.yperiod0,xperiodalignment:Gh.xperiodalignment,yperiodalignment:Gh.yperiodalignment,text:Gh.text,hovertext:Gh.hovertext,transpose:Gh.transpose,xtype:Gh.xtype,ytype:Gh.ytype,xhoverformat:eH("x"),yhoverformat:eH("y"),zhoverformat:eH("z",1),hovertemplate:Gh.hovertemplate,texttemplate:IT({},Gh.texttemplate,{}),textfont:IT({},Gh.textfont,{}),hoverongaps:Gh.hoverongaps,connectgaps:IT({},Gh.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:B_t({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:F_t("contour label")},operation:{valType:"enumerated",values:[].concat(N_t).concat(U_t),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:IT({},kxe.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:O_t,smoothing:IT({},kxe.smoothing,{}),editType:"plot"},zorder:m8.zorder},q_t("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))});var rH=ye((Osr,Rxe)=>{"use strict";var Hv=p8(),qy=T4(),V_t=Jl(),tH=Oc().axisHoverFormat,Ixe=no().extendFlat;Rxe.exports=Ixe({x:Hv.x,y:Hv.y,z:Hv.z,marker:Hv.marker,histnorm:Hv.histnorm,histfunc:Hv.histfunc,nbinsx:Hv.nbinsx,xbins:Hv.xbins,nbinsy:Hv.nbinsy,ybins:Hv.ybins,autobinx:Hv.autobinx,autobiny:Hv.autobiny,bingroup:Hv.bingroup,xbingroup:Hv.xbingroup,ybingroup:Hv.ybingroup,autocontour:qy.autocontour,ncontours:qy.ncontours,contours:qy.contours,line:{color:qy.line.color,width:Ixe({},qy.line.width,{dflt:.5}),dash:qy.line.dash,smoothing:qy.line.smoothing,editType:"plot"},xhoverformat:tH("x"),yhoverformat:tH("y"),zhoverformat:tH("z",1),hovertemplate:Hv.hovertemplate,texttemplate:qy.texttemplate,textfont:qy.textfont},V_t("",{cLetter:"z",editTypeOverride:"calc"}))});var y8=ye((Bsr,Dxe)=>{"use strict";Dxe.exports=function(t,r,n,i){var a=i("contours.start"),o=i("contours.end"),s=a===!1||o===!1,l=n("contours.size"),u;s?u=r.autocontour=!0:u=n("autocontour",!1),(u||!l)&&n("ncontours")}});var iH=ye((Nsr,zxe)=>{"use strict";var H_t=Mr();zxe.exports=function(t,r,n,i){i||(i={});var a=t("contours.showlabels");if(a){var o=r.font;H_t.coerceFont(t,"contours.labelfont",o,{overrideDflt:{color:n}}),t("contours.labelformat")}i.hasHover!==!1&&t("zhoverformat")}});var _8=ye((Usr,Fxe)=>{"use strict";var G_t=Uh(),j_t=iH();Fxe.exports=function(t,r,n,i,a){var o=n("contours.coloring"),s,l="";o==="fill"&&(s=n("contours.showlines")),s!==!1&&(o!=="lines"&&(l=n("line.color","#000")),n("line.width",.5),n("line.dash")),o!=="none"&&(t.showlegend!==!0&&(r.showlegend=!1),r._dfltShowLegend=!1,G_t(t,r,i,n,{prefix:"",cLetter:"z"})),n("line.smoothing"),j_t(n,i,l,a)}});var Nxe=ye((Vsr,Bxe)=>{"use strict";var qxe=Mr(),W_t=QV(),Z_t=y8(),X_t=_8(),Y_t=y4(),Oxe=rH();Bxe.exports=function(t,r,n,i){function a(s,l){return qxe.coerce(t,r,Oxe,s,l)}function o(s){return qxe.coerce2(t,r,Oxe,s)}W_t(t,r,a,i),r.visible!==!1&&(Z_t(t,r,a,o),X_t(t,r,a,i),a("xhoverformat"),a("yhoverformat"),a("hovertemplate"),r.contours&&r.contours.coloring==="heatmap"&&Y_t(a,i))}});var oH=ye((Hsr,Vxe)=>{"use strict";var aH=Qa(),nH=Mr();Vxe.exports=function(t,r){var n=t.contours;if(t.autocontour){var i=t.zmin,a=t.zmax;(t.zauto||i===void 0)&&(i=nH.aggNums(Math.min,null,r)),(t.zauto||a===void 0)&&(a=nH.aggNums(Math.max,null,r));var o=Uxe(i,a,t.ncontours);n.size=o.dtick,n.start=aH.tickFirst(o),o.range.reverse(),n.end=aH.tickFirst(o),n.start===i&&(n.start+=n.size),n.end===a&&(n.end-=n.size),n.start>n.end&&(n.start=n.end=(n.start+n.end)/2),t._input.contours||(t._input.contours={}),nH.extendFlat(t._input.contours,{start:n.start,end:n.end,size:n.size}),t._input.autocontour=!0}else if(n.type!=="constraint"){var s=n.start,l=n.end,u=t._input.contours;if(s>l&&(n.start=u.start=l,l=n.end=u.end=s,s=n.start),!(n.size>0)){var c;s===l?c=1:c=Uxe(s,l,t.ncontours).dtick,u.size=n.size=c}}};function Uxe(e,t,r){var n={type:"linear",range:[e,t]};return aH.autoTicks(n,(t-e)/(r||15)),n}});var A4=ye((Gsr,Hxe)=>{"use strict";Hxe.exports=function(t){return t.end+t.size/1e6}});var sH=ye((jsr,jxe)=>{"use strict";var Gxe=Mu(),K_t=n8(),J_t=oH(),$_t=A4();jxe.exports=function(t,r){var n=K_t(t,r),i=n[0].z;J_t(r,i);var a=r.contours,o=Gxe.extractOpts(r),s;if(a.coloring==="heatmap"&&o.auto&&r.autocontour===!1){var l=a.start,u=$_t(a),c=a.size||1,f=Math.floor((u-l)/c)+1;isFinite(c)||(c=1,f=1);var h=l-c/2,d=h+f*c;s=[h,d]}else s=i;return Gxe.calc(t,r,{vals:s,cLetter:"z"}),n}});var S4=ye((Wsr,Wxe)=>{"use strict";Wxe.exports={BOTTOMSTART:[1,9,13,104,713],TOPSTART:[4,6,7,104,713],LEFTSTART:[8,12,14,208,1114],RIGHTSTART:[2,3,11,208,1114],NEWDELTA:[null,[-1,0],[0,-1],[-1,0],[1,0],null,[0,-1],[-1,0],[0,1],[0,1],null,[0,1],[1,0],[1,0],[0,-1]],CHOOSESADDLE:{104:[4,1],208:[2,8],713:[7,13],1114:[11,14]},SADDLEREMAINDER:{1:4,2:8,4:1,7:13,8:2,11:14,13:7,14:11},LABELDISTANCE:2,LABELINCREASE:10,LABELMIN:3,LABELMAX:10,LABELOPTIMIZER:{EDGECOST:1,ANGLECOST:1,NEIGHBORCOST:5,SAMELEVELFACTOR:10,SAMELEVELDISTANCE:5,MAXCOST:100,INITIALSEARCHPOINTS:10,ITERATIONS:5}}});var lH=ye((Zsr,Zxe)=>{"use strict";var x8=S4();Zxe.exports=function(t){var r=t[0].z,n=r.length,i=r[0].length,a=n===2||i===2,o,s,l,u,c,f,h,d,v;for(s=0;s<n-1;s++)for(u=[],s===0&&(u=u.concat(x8.BOTTOMSTART)),s===n-2&&(u=u.concat(x8.TOPSTART)),o=0;o<i-1;o++)for(l=u.slice(),o===0&&(l=l.concat(x8.LEFTSTART)),o===i-2&&(l=l.concat(x8.RIGHTSTART)),c=o+","+s,f=[[r[s][o],r[s][o+1]],[r[s+1][o],r[s+1][o+1]]],v=0;v<t.length;v++)d=t[v],h=Q_t(d.level,f),h&&(d.crossings[c]=h,l.indexOf(h)!==-1&&(d.starts.push([o,s]),a&&l.indexOf(h,l.indexOf(h)+1)!==-1&&d.starts.push([o,s])))};function Q_t(e,t){var r=(t[0][0]>e?0:1)+(t[0][1]>e?0:2)+(t[1][1]>e?0:4)+(t[1][0]>e?0:8);if(r===5||r===10){var n=(t[0][0]+t[0][1]+t[1][0]+t[1][1])/4;return e>n?r===5?713:1114:r===5?104:208}return r===15?0:r}});var uH=ye((Xsr,Kxe)=>{"use strict";var b8=Mr(),RT=S4();Kxe.exports=function(t,r,n){var i,a,o,s,l;for(r=r||.01,n=n||.01,o=0;o<t.length;o++){for(s=t[o],l=0;l<s.starts.length;l++)a=s.starts[l],Xxe(s,a,"edge",r,n);for(i=0;Object.keys(s.crossings).length&&i<1e4;)i++,a=Object.keys(s.crossings)[0].split(",").map(Number),Xxe(s,a,void 0,r,n);i===1e4&&b8.log("Infinite loop in contour?")}};function M4(e,t,r,n){return Math.abs(e[0]-t[0])<r&&Math.abs(e[1]-t[1])<n}function ext(e,t){var r=e[2]-t[2],n=e[3]-t[3];return Math.sqrt(r*r+n*n)}function Xxe(e,t,r,n,i){var a=t.join(","),o=e.crossings[a],s=txt(o,r,t),l=[Yxe(e,t,[-s[0],-s[1]])],u=e.z.length,c=e.z[0].length,f=t.slice(),h=s.slice(),d;for(d=0;d<1e4;d++){if(o>20?(o=RT.CHOOSESADDLE[o][(s[0]||s[1])<0?0:1],e.crossings[a]=RT.SADDLEREMAINDER[o]):delete e.crossings[a],s=RT.NEWDELTA[o],!s){b8.log("Found bad marching index:",o,t,e.level);break}l.push(Yxe(e,t,s)),t[0]+=s[0],t[1]+=s[1],a=t.join(","),M4(l[l.length-1],l[l.length-2],n,i)&&l.pop();var v=s[0]&&(t[0]<0||t[0]>c-2)||s[1]&&(t[1]<0||t[1]>u-2),x=t[0]===f[0]&&t[1]===f[1]&&s[0]===h[0]&&s[1]===h[1];if(x||r&&v)break;o=e.crossings[a]}d===1e4&&b8.log("Infinite loop in contour?");var b=M4(l[0],l[l.length-1],n,i),p=0,E=.2*e.smoothing,k=[],A=0,L,_,C,M,g,P,T,F,q,V,H;for(d=1;d<l.length;d++)T=ext(l[d],l[d-1]),p+=T,k.push(T);var X=p/k.length*E;function G(re){return l[re%l.length]}for(d=l.length-2;d>=A;d--)if(L=k[d],L<X){for(C=0,_=d-1;_>=A&&L+k[_]<X;_--)L+=k[_];if(b&&d===l.length-2)for(C=0;C<_&&L+k[C]<X;C++)L+=k[C];g=d-_+C+1,P=Math.floor((d+_+C+2)/2),!b&&d===l.length-2?M=l[l.length-1]:!b&&_===-1?M=l[0]:g%2?M=G(P):M=[(G(P)[0]+G(P+1)[0])/2,(G(P)[1]+G(P+1)[1])/2],l.splice(_+1,d-_+1,M),d=_+1,C&&(A=C),b&&(d===l.length-2?l[C]=l[l.length-1]:d===0&&(l[l.length-1]=l[0]))}for(l.splice(0,A),d=0;d<l.length;d++)l[d].length=2;if(!(l.length<2))if(b)l.pop(),e.paths.push(l);else{r||b8.log("Unclosed interior contour?",e.level,f.join(","),l.join("L"));var N=!1;for(F=0;F<e.edgepaths.length;F++)if(V=e.edgepaths[F],!N&&M4(V[0],l[l.length-1],n,i)){l.pop(),N=!0;var W=!1;for(q=0;q<e.edgepaths.length;q++)if(H=e.edgepaths[q],M4(H[H.length-1],l[0],n,i)){W=!0,l.shift(),e.edgepaths.splice(F,1),q===F?e.paths.push(l.concat(H)):(q>F&&q--,e.edgepaths[q]=H.concat(l,V));break}W||(e.edgepaths[F]=l.concat(V))}for(F=0;F<e.edgepaths.length&&!N;F++)V=e.edgepaths[F],M4(V[V.length-1],l[0],n,i)&&(l.shift(),e.edgepaths[F]=V.concat(l),N=!0);N||e.edgepaths.push(l)}}function txt(e,t,r){var n=0,i=0;return e>20&&t?e===208||e===1114?n=r[0]===0?1:-1:i=r[1]===0?1:-1:RT.BOTTOMSTART.indexOf(e)!==-1?i=1:RT.LEFTSTART.indexOf(e)!==-1?n=1:RT.TOPSTART.indexOf(e)!==-1?i=-1:n=-1,[n,i]}function Yxe(e,t,r){var n=t[0]+Math.max(r[0],0),i=t[1]+Math.max(r[1],0),a=e.z[i][n],o=e.xaxis,s=e.yaxis;if(r[1]){var l=(e.level-a)/(e.z[i][n+1]-a),u=(l!==1?(1-l)*o.c2l(e.x[n]):0)+(l!==0?l*o.c2l(e.x[n+1]):0);return[o.c2p(o.l2c(u),!0),s.c2p(e.y[i],!0),n+l,i]}else{var c=(e.level-a)/(e.z[i+1][n]-a),f=(c!==1?(1-c)*s.c2l(e.y[i]):0)+(c!==0?c*s.c2l(e.y[i+1]):0);return[o.c2p(e.x[n],!0),s.c2p(s.l2c(f),!0),n,i+c]}}});var ebe=ye((Ysr,Qxe)=>{"use strict";var cH=g8(),rxt=uo();Qxe.exports={"[]":Jxe("[]"),"][":Jxe("]["),">":fH(">"),"<":fH("<"),"=":fH("=")};function $xe(e,t){var r=Array.isArray(t),n;function i(a){return rxt(a)?+a:null}return cH.COMPARISON_OPS2.indexOf(e)!==-1?n=i(r?t[0]:t):cH.INTERVAL_OPS.indexOf(e)!==-1?n=r?[i(t[0]),i(t[1])]:[i(t),i(t)]:cH.SET_OPS.indexOf(e)!==-1&&(n=r?t.map(i):[i(t)]),n}function Jxe(e){return function(t){t=$xe(e,t);var r=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:r,end:n,size:n-r}}}function fH(e){return function(t){return t=$xe(e,t),{start:t,end:1/0,size:1/0}}}});var hH=ye((Ksr,rbe)=>{"use strict";var tbe=Mr(),ixt=ebe(),nxt=A4();rbe.exports=function(t,r,n){for(var i=t.type==="constraint"?ixt[t._operation](t.value):t,a=i.size,o=[],s=nxt(i),l=n.trace._carpetTrace,u=l?{xaxis:l.aaxis,yaxis:l.baxis,x:n.a,y:n.b}:{xaxis:r.xaxis,yaxis:r.yaxis,x:n.x,y:n.y},c=i.start;c<s;c+=a)if(o.push(tbe.extendFlat({level:c,crossings:{},starts:[],edgepaths:[],paths:[],z:n.z,smoothing:n.trace.line.smoothing},u)),o.length>1e3){tbe.warn("Too many contours, clipping at 1000",t);break}return o}});var dH=ye((Jsr,nbe)=>{"use strict";var DT=Mr();nbe.exports=function(e,t){var r,n,i,a=function(l){return l.reverse()},o=function(l){return l};switch(t){case"=":case"<":return e;case">":for(e.length!==1&&DT.warn("Contour data invalid for the specified inequality operation."),n=e[0],r=0;r<n.edgepaths.length;r++)n.edgepaths[r]=a(n.edgepaths[r]);for(r=0;r<n.paths.length;r++)n.paths[r]=a(n.paths[r]);for(r=0;r<n.starts.length;r++)n.starts[r]=a(n.starts[r]);return e;case"][":var s=a;a=o,o=s;case"[]":for(e.length!==2&&DT.warn("Contour data invalid for the specified inequality range operation."),n=ibe(e[0]),i=ibe(e[1]),r=0;r<n.edgepaths.length;r++)n.edgepaths[r]=a(n.edgepaths[r]);for(r=0;r<n.paths.length;r++)n.paths[r]=a(n.paths[r]);for(r=0;r<n.starts.length;r++)n.starts[r]=a(n.starts[r]);for(;i.edgepaths.length;)n.edgepaths.push(o(i.edgepaths.shift()));for(;i.paths.length;)n.paths.push(o(i.paths.shift()));for(;i.starts.length;)n.starts.push(o(i.starts.shift()));return[n]}};function ibe(e){return DT.extendFlat({},e,{edgepaths:DT.extendDeep([],e.edgepaths),paths:DT.extendDeep([],e.paths),starts:DT.extendDeep([],e.starts)})}});var vH=ye(($sr,abe)=>{"use strict";abe.exports=function(e,t){var r=e[0],n=r.z,i;switch(t.type){case"levels":var a=Math.min(n[0][0],n[0][1]);for(i=0;i<e.length;i++){var o=e[i];o.prefixBoundary=!o.edgepaths.length&&(a>o.level||o.starts.length&&a===o.level)}break;case"constraint":if(r.prefixBoundary=!1,r.edgepaths.length)return;var s=r.x.length,l=r.y.length,u=-1/0,c=1/0;for(i=0;i<l;i++)c=Math.min(c,n[i][0]),c=Math.min(c,n[i][s-1]),u=Math.max(u,n[i][0]),u=Math.max(u,n[i][s-1]);for(i=1;i<s-1;i++)c=Math.min(c,n[0][i]),c=Math.min(c,n[l-1][i]),u=Math.max(u,n[0][i]),u=Math.max(u,n[l-1][i]);var f=t.value,h,d;switch(t._operation){case">":f>u&&(r.prefixBoundary=!0);break;case"<":(f<c||r.starts.length&&f===c)&&(r.prefixBoundary=!0);break;case"[]":h=Math.min(f[0],f[1]),d=Math.max(f[0],f[1]),(d<c||h>u||r.starts.length&&d===c)&&(r.prefixBoundary=!0);break;case"][":h=Math.min(f[0],f[1]),d=Math.max(f[0],f[1]),h<c&&d>u&&(r.prefixBoundary=!0);break}break}}});var w8=ye(Gv=>{"use strict";var k4=xa(),Id=Mr(),Oy=ao(),axt=Mu(),lbe=Pl(),obe=Qa(),sbe=ym(),oxt=s8(),ube=lH(),cbe=uH(),sxt=hH(),lxt=dH(),fbe=vH(),E4=S4(),Rm=E4.LABELOPTIMIZER;Gv.plot=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;Id.makeTraceGroups(i,n,"contour").each(function(s){var l=k4.select(this),u=s[0],c=u.trace,f=u.x,h=u.y,d=c.contours,v=sxt(d,r,u),x=Id.ensureSingle(l,"g","heatmapcoloring"),b=[];d.coloring==="heatmap"&&(b=[s]),oxt(t,r,b,x),ube(v),cbe(v);var p=a.c2p(f[0],!0),E=a.c2p(f[f.length-1],!0),k=o.c2p(h[0],!0),A=o.c2p(h[h.length-1],!0),L=[[p,A],[E,A],[E,k],[p,k]],_=v;d.type==="constraint"&&(_=lxt(v,d._operation)),uxt(l,L,d),cxt(l,_,L,d),fxt(l,v,t,u,d),dxt(l,r,t,u,L)})};function uxt(e,t,r){var n=Id.ensureSingle(e,"g","contourbg"),i=n.selectAll("path").data(r.coloring==="fill"?[0]:[]);i.enter().append("path"),i.exit().remove(),i.attr("d","M"+t.join("L")+"Z").style("stroke","none")}function cxt(e,t,r,n){var i=n.coloring==="fill"||n.type==="constraint"&&n._operation!=="=",a="M"+r.join("L")+"Z";i&&fbe(t,n);var o=Id.ensureSingle(e,"g","contourfill"),s=o.selectAll("path").data(i?t:[]);s.enter().append("path"),s.exit().remove(),s.each(function(l){var u=(l.prefixBoundary?a:"")+hbe(l,r);u?k4.select(this).attr("d",u).style("stroke","none"):k4.select(this).remove()})}function hbe(e,t){var r="",n=0,i=e.edgepaths.map(function(p,E){return E}),a=!0,o,s,l,u,c,f;function h(p){return Math.abs(p[1]-t[0][1])<.01}function d(p){return Math.abs(p[1]-t[2][1])<.01}function v(p){return Math.abs(p[0]-t[0][0])<.01}function x(p){return Math.abs(p[0]-t[2][0])<.01}for(;i.length;){for(f=Oy.smoothopen(e.edgepaths[n],e.smoothing),r+=a?f:f.replace(/^M/,"L"),i.splice(i.indexOf(n),1),o=e.edgepaths[n][e.edgepaths[n].length-1],u=-1,l=0;l<4;l++){if(!o){Id.log("Missing end?",n,e);break}for(h(o)&&!x(o)?s=t[1]:v(o)?s=t[0]:d(o)?s=t[3]:x(o)&&(s=t[2]),c=0;c<e.edgepaths.length;c++){var b=e.edgepaths[c][0];Math.abs(o[0]-s[0])<.01?Math.abs(o[0]-b[0])<.01&&(b[1]-o[1])*(s[1]-b[1])>=0&&(s=b,u=c):Math.abs(o[1]-s[1])<.01?Math.abs(o[1]-b[1])<.01&&(b[0]-o[0])*(s[0]-b[0])>=0&&(s=b,u=c):Id.log("endpt to newendpt is not vert. or horz.",o,s,b)}if(o=s,u>=0)break;r+="L"+s}if(u===e.edgepaths.length){Id.log("unclosed perimeter path");break}n=u,a=i.indexOf(n)===-1,a&&(n=i[0],r+="Z")}for(n=0;n<e.paths.length;n++)r+=Oy.smoothclosed(e.paths[n],e.smoothing);return r}function fxt(e,t,r,n,i){var a=r._context.staticPlot,o=Id.ensureSingle(e,"g","contourlines"),s=i.showlines!==!1,l=i.showlabels,u=s&&l,c=Gv.createLines(o,s||l,t,a),f=Gv.createLineClip(o,u,r,n.trace.uid),h=e.selectAll("g.contourlabels").data(l?[0]:[]);if(h.exit().remove(),h.enter().append("g").classed("contourlabels",!0),l){var d=[],v=[];Id.clearLocationCache();var x=Gv.labelFormatter(r,n),b=Oy.tester.append("text").attr("data-notex",1).call(Oy.font,i.labelfont),p=t[0].xaxis,E=t[0].yaxis,k=p._length,A=E._length,L=p.range,_=E.range,C=Id.aggNums(Math.min,null,n.x),M=Id.aggNums(Math.max,null,n.x),g=Id.aggNums(Math.min,null,n.y),P=Id.aggNums(Math.max,null,n.y),T=Math.max(p.c2p(C,!0),0),F=Math.min(p.c2p(M,!0),k),q=Math.max(E.c2p(P,!0),0),V=Math.min(E.c2p(g,!0),A),H={};L[0]<L[1]?(H.left=T,H.right=F):(H.left=F,H.right=T),_[0]<_[1]?(H.top=q,H.bottom=V):(H.top=V,H.bottom=q),H.middle=(H.top+H.bottom)/2,H.center=(H.left+H.right)/2,d.push([[H.left,H.top],[H.right,H.top],[H.right,H.bottom],[H.left,H.bottom]]);var X=Math.sqrt(k*k+A*A),G=E4.LABELDISTANCE*X/Math.max(1,t.length/E4.LABELINCREASE);c.each(function(N){var W=Gv.calcTextOpts(N.level,x,b,r);k4.select(this).selectAll("path").each(function(){var re=this,ae=Id.getVisibleSegment(re,H,W.height/2);if(ae&&!(ae.len<(W.width+W.height)*E4.LABELMIN))for(var _e=Math.min(Math.ceil(ae.len/G),E4.LABELMAX),Me=0;Me<_e;Me++){var ke=Gv.findBestTextLocation(re,ae,W,v,H);if(!ke)break;Gv.addLabelData(ke,W,v,d)}})}),b.remove(),Gv.drawLabels(h,v,r,f,u?d:null)}l&&!s&&c.remove()}Gv.createLines=function(e,t,r,n){var i=r[0].smoothing,a=e.selectAll("g.contourlevel").data(t?r:[]);if(a.exit().remove(),a.enter().append("g").classed("contourlevel",!0),t){var o=a.selectAll("path.openline").data(function(l){return l.pedgepaths||l.edgepaths});o.exit().remove(),o.enter().append("path").classed("openline",!0),o.attr("d",function(l){return Oy.smoothopen(l,i)}).style("stroke-miterlimit",1).style("vector-effect",n?"none":"non-scaling-stroke");var s=a.selectAll("path.closedline").data(function(l){return l.ppaths||l.paths});s.exit().remove(),s.enter().append("path").classed("closedline",!0),s.attr("d",function(l){return Oy.smoothclosed(l,i)}).style("stroke-miterlimit",1).style("vector-effect",n?"none":"non-scaling-stroke")}return a};Gv.createLineClip=function(e,t,r,n){var i=r._fullLayout._clips,a=t?"clipline"+n:null,o=i.selectAll("#"+a).data(t?[0]:[]);return o.exit().remove(),o.enter().append("clipPath").classed("contourlineclip",!0).attr("id",a),Oy.setClipUrl(e,a,r),o};Gv.labelFormatter=function(e,t){var r=e._fullLayout,n=t.trace,i=n.contours,a={type:"linear",_id:"ycontour",showexponent:"all",exponentformat:"B"};if(i.labelformat)a.tickformat=i.labelformat,sbe(a,r);else{var o=axt.extractOpts(n);if(o&&o.colorbar&&o.colorbar._axis)a=o.colorbar._axis;else{if(i.type==="constraint"){var s=i.value;Id.isArrayOrTypedArray(s)?a.range=[s[0],s[s.length-1]]:a.range=[s,s]}else a.range=[i.start,i.end],a.nticks=(i.end-i.start)/i.size;a.range[0]===a.range[1]&&(a.range[1]+=a.range[0]||1),a.nticks||(a.nticks=1e3),sbe(a,r),obe.prepTicks(a),a._tmin=null,a._tmax=null}}return function(l){return obe.tickText(a,l).text}};Gv.calcTextOpts=function(e,t,r,n){var i=t(e);r.text(i).call(lbe.convertToTspans,n);var a=r.node(),o=Oy.bBox(a,!0);return{text:i,width:o.width,height:o.height,fontSize:+a.style["font-size"].replace("px",""),level:e,dy:(o.top+o.bottom)/2}};Gv.findBestTextLocation=function(e,t,r,n,i){var a=r.width,o,s,l,u,c;t.isClosed?(s=t.len/Rm.INITIALSEARCHPOINTS,o=t.min+s/2,l=t.max):(s=(t.len-a)/(Rm.INITIALSEARCHPOINTS+1),o=t.min+s+a/2,l=t.max-(s+a)/2);for(var f=1/0,h=0;h<Rm.ITERATIONS;h++){for(var d=o;d<l;d+=s){var v=Id.getTextLocation(e,t.total,d,a),x=hxt(v,r,n,i);x<f&&(f=x,c=v,u=d)}if(f>Rm.MAXCOST*2)break;h&&(s/=2),o=u-s/2,l=o+s*1.5}if(f<=Rm.MAXCOST)return c};function hxt(e,t,r,n){var i=t.width/2,a=t.height/2,o=e.x,s=e.y,l=e.theta,u=Math.cos(l)*i,c=Math.sin(l)*i,f=(o>n.center?n.right-o:o-n.left)/(u+Math.abs(Math.sin(l)*a)),h=(s>n.middle?n.bottom-s:s-n.top)/(Math.abs(c)+Math.cos(l)*a);if(f<1||h<1)return 1/0;var d=Rm.EDGECOST*(1/(f-1)+1/(h-1));d+=Rm.ANGLECOST*l*l;for(var v=o-u,x=s-c,b=o+u,p=s+c,E=0;E<r.length;E++){var k=r[E],A=Math.cos(k.theta)*k.width/2,L=Math.sin(k.theta)*k.width/2,_=Id.segmentDistance(v,x,b,p,k.x-A,k.y-L,k.x+A,k.y+L)*2/(t.height+k.height),C=k.level===t.level,M=C?Rm.SAMELEVELDISTANCE:1;if(_<=M)return 1/0;var g=Rm.NEIGHBORCOST*(C?Rm.SAMELEVELFACTOR:1);d+=g/(_-M)}return d}Gv.addLabelData=function(e,t,r,n){var i=t.fontSize,a=t.width+i/3,o=Math.max(0,t.height-i/3),s=e.x,l=e.y,u=e.theta,c=Math.sin(u),f=Math.cos(u),h=function(v,x){return[s+v*f-x*c,l+v*c+x*f]},d=[h(-a/2,-o/2),h(-a/2,o/2),h(a/2,o/2),h(a/2,-o/2)];r.push({text:t.text,x:s,y:l,dy:t.dy,theta:u,level:t.level,width:a,height:o}),n.push(d)};Gv.drawLabels=function(e,t,r,n,i){var a=e.selectAll("text").data(t,function(u){return u.text+","+u.x+","+u.y+","+u.theta});if(a.exit().remove(),a.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each(function(u){var c=u.x+Math.sin(u.theta)*u.dy,f=u.y-Math.cos(u.theta)*u.dy;k4.select(this).text(u.text).attr({x:c,y:f,transform:"rotate("+180*u.theta/Math.PI+" "+c+" "+f+")"}).call(lbe.convertToTspans,r)}),i){for(var o="",s=0;s<i.length;s++)o+="M"+i[s].join("L")+"Z";var l=Id.ensureSingle(n,"path","");l.attr("d",o)}};function dxt(e,t,r,n,i){var a=n.trace,o=r._fullLayout._clips,s="clip"+a.uid,l=o.selectAll("#"+s).data(a.connectgaps?[]:[0]);if(l.enter().append("clipPath").classed("contourclip",!0).attr("id",s),l.exit().remove(),a.connectgaps===!1){var u={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:t.xaxis,yaxis:t.yaxis,x:n.x,y:n.y,z:vxt(n),smoothing:0};ube([u]),cbe([u]),fbe([u],{type:"levels"});var c=Id.ensureSingle(l,"path","");c.attr("d",(u.prefixBoundary?"M"+i.join("L")+"Z":"")+hbe(u,i))}else s=null;Oy.setClipUrl(e,s,r)}function vxt(e){var t=e.trace._emptypoints,r=[],n=e.z.length,i=e.z[0].length,a,o=[],s;for(a=0;a<i;a++)o.push(1);for(a=0;a<n;a++)r.push(o.slice());for(a=0;a<t.length;a++)s=t[a],r[s[0]][s[1]]=0;return e.zmask=r,r}});var gH=ye((elr,dbe)=>{"use strict";var pxt=xa(),pH=Mu(),gxt=A4();dbe.exports=function(t){var r=t.contours,n=r.start,i=gxt(r),a=r.size||1,o=Math.floor((i-n)/a)+1,s=r.coloring==="lines"?0:1,l=pH.extractOpts(t);isFinite(a)||(a=1,o=1);var u=l.reversescale?pH.flipScale(l.colorscale):l.colorscale,c=u.length,f=new Array(c),h=new Array(c),d,v,x=l.min,b=l.max;if(r.coloring==="heatmap"){for(v=0;v<c;v++)d=u[v],f[v]=d[0]*(b-x)+x,h[v]=d[1];var p=pxt.extent([x,b,r.start,r.start+a*(o-1)]),E=p[x<b?0:1],k=p[x<b?1:0];E!==x&&(f.splice(0,0,E),h.splice(0,0,h[0])),k!==b&&(f.push(k),h.push(h[h.length-1]))}else{var A=t._input&&typeof t._input.zmin=="number"&&typeof t._input.zmax=="number";for(A&&(n<=x||i>=b)&&(n<=x&&(n=x),i>=b&&(i=b),o=Math.floor((i-n)/a)+1,s=0),v=0;v<c;v++)d=u[v],f[v]=(d[0]*(o+s-1)-s/2)*a+n,h[v]=d[1];(A||t.autocontour)&&(f[0]>x&&(f.unshift(x),h.unshift(h[0])),f[f.length-1]<b&&(f.push(b),h.push(h[h.length-1])))}return pH.makeColorScaleFunc({domain:f,range:h},{noNumericCheck:!0})}});var A8=ye((tlr,pbe)=>{"use strict";var T8=xa(),vbe=ao(),mxt=l8(),yxt=gH();pbe.exports=function(t){var r=T8.select(t).selectAll("g.contour");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=T8.select(this),a=n[0].trace,o=a.contours,s=a.line,l=o.size||1,u=o.start,c=o.type==="constraint",f=!c&&o.coloring==="lines",h=!c&&o.coloring==="fill",d=f||h?yxt(a):null;i.selectAll("g.contourlevel").each(function(b){T8.select(this).selectAll("path").call(vbe.lineGroupStyle,s.width,f?d(b.level):s.color,s.dash)});var v=o.labelfont;if(i.selectAll("g.contourlabels text").each(function(b){vbe.font(T8.select(this),{weight:v.weight,style:v.style,variant:v.variant,textcase:v.textcase,lineposition:v.lineposition,shadow:v.shadow,family:v.family,size:v.size,color:v.color||(f?d(b.level):s.color)})}),c)i.selectAll("g.contourfill path").style("fill",a.fillcolor);else if(h){var x;i.selectAll("g.contourfill path").style("fill",function(b){return x===void 0&&(x=b.level),d(b.level+.5*l)}),x===void 0&&(x=u),i.selectAll("g.contourbg path").style("fill",d(x-.5*l))}}),mxt(t)}});var S8=ye((rlr,mbe)=>{"use strict";var gbe=Mu(),_xt=gH(),xxt=A4();function bxt(e,t,r){var n=t.contours,i=t.line,a=n.size||1,o=n.coloring,s=_xt(t,{isColorbar:!0});if(o==="heatmap"){var l=gbe.extractOpts(t);r._fillgradient=l.reversescale?gbe.flipScale(l.colorscale):l.colorscale,r._zrange=[l.min,l.max]}else o==="fill"&&(r._fillcolor=s);r._line={color:o==="lines"?s:i.color,width:n.showlines!==!1?i.width:0,dash:i.dash},r._levels={start:n.start,end:xxt(n),size:a}}mbe.exports={min:"zmin",max:"zmax",calc:bxt}});var mH=ye((ilr,ybe)=>{"use strict";var M8=va(),wxt=c8();ybe.exports=function(t,r,n,i,a){a||(a={}),a.isContour=!0;var o=wxt(t,r,n,i,a);return o&&o.forEach(function(s){var l=s.trace;l.contours.type==="constraint"&&(l.fillcolor&&M8.opacity(l.fillcolor)?s.color=M8.addOpacity(l.fillcolor,1):l.contours.showlines&&M8.opacity(l.line.color)&&(s.color=M8.addOpacity(l.line.color,1)))}),o}});var xbe=ye((nlr,_be)=>{"use strict";_be.exports={attributes:rH(),supplyDefaults:Nxe(),crossTraceDefaults:d8(),calc:sH(),plot:w8().plot,layerName:"contourlayer",style:A8(),colorbar:S8(),hoverPoints:mH(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Jf(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}});var wbe=ye((alr,bbe)=>{"use strict";bbe.exports=xbe()});var yH=ye((olr,kbe)=>{"use strict";var Tbe=uo(),Txt=iH(),Mbe=va(),Abe=Mbe.addOpacity,Axt=Mbe.opacity,Ebe=g8(),Sbe=Mr().isArrayOrTypedArray,Sxt=Ebe.CONSTRAINT_REDUCTION,Mxt=Ebe.COMPARISON_OPS2;kbe.exports=function(t,r,n,i,a,o){var s=r.contours,l,u,c,f=n("contours.operation");if(s._operation=Sxt[f],Ext(n,s),f==="="?l=s.showlines=!0:(l=n("contours.showlines"),c=n("fillcolor",Abe((t.line||{}).color||a,.5))),l){var h=c&&Axt(c)?Abe(r.fillcolor,1):a;u=n("line.color",h),n("line.width",2),n("line.dash")}n("line.smoothing"),Txt(n,i,u,o)};function Ext(e,t){var r;Mxt.indexOf(t.operation)===-1?(e("contours.value",[0,1]),Sbe(t.value)?t.value.length>2?t.value=t.value.slice(2):t.length===0?t.value=[0,1]:t.length<2?(r=parseFloat(t.value[0]),t.value=[r,r+1]):t.value=[parseFloat(t.value[0]),parseFloat(t.value[1])]:Tbe(t.value)&&(r=parseFloat(t.value),t.value=[r,r+1])):(e("contours.value",0),Tbe(t.value)||(Sbe(t.value)?t.value=parseFloat(t.value[0]):t.value=0))}});var Pbe=ye((slr,Lbe)=>{"use strict";var _H=Mr(),kxt=XI(),Cxt=Pg(),Lxt=yH(),Pxt=y8(),Ixt=_8(),Rxt=y4(),Cbe=T4();Lbe.exports=function(t,r,n,i){function a(u,c){return _H.coerce(t,r,Cbe,u,c)}function o(u){return _H.coerce2(t,r,Cbe,u)}var s=kxt(t,r,a,i);if(!s){r.visible=!1;return}Cxt(t,r,i,a),a("xhoverformat"),a("yhoverformat"),a("text"),a("hovertext"),a("hoverongaps"),a("hovertemplate");var l=a("contours.type")==="constraint";a("connectgaps",_H.isArray1D(r.z)),l?Lxt(t,r,a,i,n):(Pxt(t,r,a,o),Ixt(t,r,a,i)),r.contours&&r.contours.coloring==="heatmap"&&Rxt(a,i),a("zorder")}});var Rbe=ye((llr,Ibe)=>{"use strict";Ibe.exports={attributes:T4(),supplyDefaults:Pbe(),calc:sH(),plot:w8().plot,style:A8(),colorbar:S8(),hoverPoints:mH(),moduleType:"trace",name:"contour",basePlotModule:Jf(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}});var zbe=ye((ulr,Dbe)=>{"use strict";Dbe.exports=Rbe()});var xH=ye((clr,qbe)=>{"use strict";var Dxt=Wo().hovertemplateAttrs,zxt=Wo().texttemplateAttrs,Fxt=Eg(),a0=Uc(),qxt=vl(),Fbe=Jl(),Oxt=Ed().dash,E_=no().extendFlat,j0=a0.marker,C4=a0.line,Bxt=j0.line;qbe.exports={a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},c:{valType:"data_array",editType:"calc"},sum:{valType:"number",dflt:0,min:0,editType:"calc"},mode:E_({},a0.mode,{dflt:"markers"}),text:E_({},a0.text,{}),texttemplate:zxt({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:E_({},a0.hovertext,{}),line:{color:C4.color,width:C4.width,dash:Oxt,backoff:C4.backoff,shape:E_({},C4.shape,{values:["linear","spline"]}),smoothing:C4.smoothing,editType:"calc"},connectgaps:a0.connectgaps,cliponaxis:a0.cliponaxis,fill:E_({},a0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:Fxt(),marker:E_({symbol:j0.symbol,opacity:j0.opacity,angle:j0.angle,angleref:j0.angleref,standoff:j0.standoff,maxdisplayed:j0.maxdisplayed,size:j0.size,sizeref:j0.sizeref,sizemin:j0.sizemin,sizemode:j0.sizemode,line:E_({width:Bxt.width,editType:"calc"},Fbe("marker.line")),gradient:j0.gradient,editType:"calc"},Fbe("marker")),textfont:a0.textfont,textposition:a0.textposition,selected:a0.selected,unselected:a0.unselected,hoverinfo:E_({},qxt.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:a0.hoveron,hovertemplate:Dxt()}});var Ube=ye((flr,Nbe)=>{"use strict";var Obe=Mr(),Nxt=Sm(),zT=lu(),Uxt=$p(),Vxt=R0(),Bbe=J3(),Hxt=D0(),Gxt=Ig(),jxt=xH();Nbe.exports=function(t,r,n,i){function a(h,d){return Obe.coerce(t,r,jxt,h,d)}var o=a("a"),s=a("b"),l=a("c"),u;if(o?(u=o.length,s?(u=Math.min(u,s.length),l&&(u=Math.min(u,l.length))):l?u=Math.min(u,l.length):u=0):s&&l&&(u=Math.min(s.length,l.length)),!u){r.visible=!1;return}r._length=u,a("sum"),a("text"),a("hovertext"),r.hoveron!=="fills"&&a("hovertemplate");var c=u<Nxt.PTS_LINESONLY?"lines+markers":"lines";a("mode",c),zT.hasMarkers(r)&&Uxt(t,r,n,i,a,{gradient:!0}),zT.hasLines(r)&&(Vxt(t,r,n,i,a,{backoff:!0}),Bbe(t,r,a),a("connectgaps")),zT.hasText(r)&&(a("texttemplate"),Hxt(t,r,i,a));var f=[];(zT.hasMarkers(r)||zT.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),f.push("points")),a("fill"),r.fill!=="none"&&(Gxt(t,r,n,a),zT.hasLines(r)||Bbe(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&f.push("fills"),a("hoveron",f.join("+")||"points"),Obe.coerceSelectionMarkerOpacity(r,a)}});var Hbe=ye((hlr,Vbe)=>{"use strict";var bH=Qa();Vbe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.aLabel=bH.tickText(a.aaxis,t.a,!0).text,i.bLabel=bH.tickText(a.baxis,t.b,!0).text,i.cLabel=bH.tickText(a.caxis,t.c,!0).text,i}});var Zbe=ye((dlr,Wbe)=>{"use strict";var wH=uo(),Wxt=z0(),Zxt=km(),Xxt=F0(),Yxt=q0().calcMarkerSize,Gbe=["a","b","c"],jbe={a:["b","c"],b:["a","c"],c:["a","b"]};Wbe.exports=function(t,r){var n=t._fullLayout[r.subplot],i=n.sum,a=r.sum||i,o={a:r.a,b:r.b,c:r.c},s=r.ids,l,u,c,f,h,d;for(l=0;l<Gbe.length;l++)if(c=Gbe[l],!o[c]){for(h=o[jbe[c][0]],d=o[jbe[c][1]],f=new Array(h.length),u=0;u<h.length;u++)f[u]=a-h[u]-d[u];o[c]=f}var v=r._length,x=new Array(v),b,p,E,k,A,L;for(l=0;l<v;l++)b=o.a[l],p=o.b[l],E=o.c[l],wH(b)&&wH(p)&&wH(E)?(b=+b,p=+p,E=+E,k=i/(b+p+E),k!==1&&(b*=k,p*=k,E*=k),L=b,A=E-p,x[l]={x:A,y:L,a:b,b:p,c:E},s&&(x[l].id=s[l])):x[l]={x:!1,y:!1};return Yxt(r,v),Wxt(t,r),Zxt(x,r),Xxt(x,r),x}});var Ybe=ye((vlr,Xbe)=>{"use strict";var Kxt=iT();Xbe.exports=function(t,r,n){var i=r.plotContainer;i.select(".scatterlayer").selectAll("*").remove();for(var a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:i,layerClipId:r._hasClipOnAxisFalse?r.clipIdRelative:null},l=r.layers.frontplot.select("g.scatterlayer"),u=0;u<n.length;u++){var c=n[u];c.length&&(c[0].trace._xA=a,c[0].trace._yA=o)}Kxt(t,s,n,l)}});var Jbe=ye((plr,Kbe)=>{"use strict";var Jxt=sT();Kbe.exports=function(t,r,n,i){var a=Jxt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index],h=o.trace,d=o.subplot;o.a=f.a,o.b=f.b,o.c=f.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var v={};v[h.subplot]={_subplot:d};var x=h._module.formatLabels(f,h,v);o.aLabel=x.aLabel,o.bLabel=x.bLabel,o.cLabel=x.cLabel;var b=f.hi||h.hoverinfo,p=[];function E(A,L){p.push(A._hovertitle+": "+L)}if(!h.hovertemplate){var k=b.split("+");k.indexOf("all")!==-1&&(k=["a","b","c"]),k.indexOf("a")!==-1&&E(d.aaxis,o.aLabel),k.indexOf("b")!==-1&&E(d.baxis,o.bLabel),k.indexOf("c")!==-1&&E(d.caxis,o.cLabel)}return o.extraText=p.join("<br>"),o.hovertemplate=h.hovertemplate,a}});var Qbe=ye((glr,$be)=>{"use strict";$be.exports=function(t,r,n,i,a){if(r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),i[a]){var o=i[a];t.a=o.a,t.b=o.b,t.c=o.c}else t.a=r.a,t.b=r.b,t.c=r.c;return t}});var c2e=ye((mlr,u2e)=>{"use strict";var a2e=xa(),$xt=id(),TH=ba(),By=Mr(),Dm=By.strTranslate,E8=By._,qT=va(),k8=ao(),L4=ym(),AH=no().extendFlat,Qxt=Xu(),k_=Qa(),e2e=gv(),t2e=Nc(),o2e=Sg(),r2e=o2e.freeMode,ebt=o2e.rectMode,SH=Mb(),tbt=wf().prepSelect,rbt=wf().selectOnClick,ibt=wf().clearOutline,nbt=wf().clearSelectionsCache,s2e=ad();function l2e(e,t){this.id=e.id,this.graphDiv=e.graphDiv,this.init(t),this.makeFramework(t),this.updateFx(t),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}u2e.exports=l2e;var zm=l2e.prototype;zm.init=function(e){this.container=e._ternarylayer,this.defs=e._defs,this.layoutId=e._uid,this.traceHash={},this.layers={}};zm.plot=function(e,t){var r=this,n=t[r.id],i=t._size;r._hasClipOnAxisFalse=!1;for(var a=0;a<e.length;a++){var o=e[a][0].trace;if(o.cliponaxis===!1){r._hasClipOnAxisFalse=!0;break}}r.updateLayers(n),r.adjustLayout(n,i),Qxt.generalUpdatePerTraceModule(r.graphDiv,r,e,n),r.layers.plotbg.select("path").call(qT.fill,n.bgcolor)};zm.makeFramework=function(e){var t=this,r=t.graphDiv,n=e[t.id],i=t.clipId="clip"+t.layoutId+t.id,a=t.clipIdRelative="clip-relative"+t.layoutId+t.id;t.clipDef=By.ensureSingleById(e._clips,"clipPath",i,function(o){o.append("path").attr("d","M0,0Z")}),t.clipDefRelative=By.ensureSingleById(e._clips,"clipPath",a,function(o){o.append("path").attr("d","M0,0Z")}),t.plotContainer=By.ensureSingle(t.container,"g",t.id),t.updateLayers(n),k8.setClipUrl(t.layers.backplot,i,r),k8.setClipUrl(t.layers.grids,i,r)};zm.updateFx=function(e){e._ternarylayer.selectAll("g.toplevel").style("cursor",e.dragmode==="pan"?"move":"crosshair")};zm.updateLayers=function(e){var t=this,r=t.layers,n=["draglayer","plotbg","backplot","grids"];e.aaxis.layer==="below traces"&&n.push("aaxis","aline"),e.baxis.layer==="below traces"&&n.push("baxis","bline"),e.caxis.layer==="below traces"&&n.push("caxis","cline"),n.push("frontplot"),e.aaxis.layer==="above traces"&&n.push("aaxis","aline"),e.baxis.layer==="above traces"&&n.push("baxis","bline"),e.caxis.layer==="above traces"&&n.push("caxis","cline");var i=t.plotContainer.selectAll("g.toplevel").data(n,String),a=["agrid","bgrid","cgrid"];i.enter().append("g").attr("class",function(o){return"toplevel "+o}).each(function(o){var s=a2e.select(this);r[o]=s,o==="frontplot"?s.append("g").classed("scatterlayer",!0):o==="backplot"?s.append("g").classed("maplayer",!0):o==="plotbg"?s.append("path").attr("d","M0,0Z"):o==="aline"||o==="bline"||o==="cline"?s.append("path"):o==="grids"&&a.forEach(function(l){r[l]=s.append("g").classed("grid "+l,!0)})}),i.order()};var FT=Math.sqrt(4/3);zm.adjustLayout=function(e,t){var r=this,n=e.domain,i=(n.x[0]+n.x[1])/2,a=(n.y[0]+n.y[1])/2,o=n.x[1]-n.x[0],s=n.y[1]-n.y[0],l=o*t.w,u=s*t.h,c=e.sum,f=e.aaxis.min,h=e.baxis.min,d=e.caxis.min,v,x,b,p,E,k;l>FT*u?(p=u,b=p*FT):(b=l,p=b/FT),E=o*b/l,k=s*p/u,v=t.l+t.w*i-b/2,x=t.t+t.h*(1-a)-p/2,r.x0=v,r.y0=x,r.w=b,r.h=p,r.sum=c,r.xaxis={type:"linear",range:[f+2*d-c,c-f-2*h],domain:[i-E/2,i+E/2],_id:"x"},L4(r.xaxis,r.graphDiv._fullLayout),r.xaxis.setScale(),r.xaxis.isPtWithinRange=function(V){return V.a>=r.aaxis.range[0]&&V.a<=r.aaxis.range[1]&&V.b>=r.baxis.range[1]&&V.b<=r.baxis.range[0]&&V.c>=r.caxis.range[1]&&V.c<=r.caxis.range[0]},r.yaxis={type:"linear",range:[f,c-h-d],domain:[a-k/2,a+k/2],_id:"y"},L4(r.yaxis,r.graphDiv._fullLayout),r.yaxis.setScale(),r.yaxis.isPtWithinRange=function(){return!0};var A=r.yaxis.domain[0],L=r.aaxis=AH({},e.aaxis,{range:[f,c-h-d],side:"left",tickangle:(+e.aaxis.tickangle||0)-30,domain:[A,A+k*FT],anchor:"free",position:0,_id:"y",_length:b});L4(L,r.graphDiv._fullLayout),L.setScale();var _=r.baxis=AH({},e.baxis,{range:[c-f-d,h],side:"bottom",domain:r.xaxis.domain,anchor:"free",position:0,_id:"x",_length:b});L4(_,r.graphDiv._fullLayout),_.setScale();var C=r.caxis=AH({},e.caxis,{range:[c-f-h,d],side:"right",tickangle:(+e.caxis.tickangle||0)+30,domain:[A,A+k*FT],anchor:"free",position:0,_id:"y",_length:b});L4(C,r.graphDiv._fullLayout),C.setScale();var M="M"+v+","+(x+p)+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDef.select("path").attr("d",M),r.layers.plotbg.select("path").attr("d",M);var g="M0,"+p+"h"+b+"l-"+b/2+",-"+p+"Z";r.clipDefRelative.select("path").attr("d",g);var P=Dm(v,x);r.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",P),r.clipDefRelative.select("path").attr("transform",null);var T=Dm(v-_._offset,x+p);r.layers.baxis.attr("transform",T),r.layers.bgrid.attr("transform",T);var F=Dm(v+b/2,x)+"rotate(30)"+Dm(0,-L._offset);r.layers.aaxis.attr("transform",F),r.layers.agrid.attr("transform",F);var q=Dm(v+b/2,x)+"rotate(-30)"+Dm(0,-C._offset);r.layers.caxis.attr("transform",q),r.layers.cgrid.attr("transform",q),r.drawAxes(!0),r.layers.aline.select("path").attr("d",L.showline?"M"+v+","+(x+p)+"l"+b/2+",-"+p:"M0,0").call(qT.stroke,L.linecolor||"#000").style("stroke-width",(L.linewidth||0)+"px"),r.layers.bline.select("path").attr("d",_.showline?"M"+v+","+(x+p)+"h"+b:"M0,0").call(qT.stroke,_.linecolor||"#000").style("stroke-width",(_.linewidth||0)+"px"),r.layers.cline.select("path").attr("d",C.showline?"M"+(v+b/2)+","+x+"l"+b/2+","+p:"M0,0").call(qT.stroke,C.linecolor||"#000").style("stroke-width",(C.linewidth||0)+"px"),r.graphDiv._context.staticPlot||r.initInteractions(),k8.setClipUrl(r.layers.frontplot,r._hasClipOnAxisFalse?null:r.clipId,r.graphDiv)};zm.drawAxes=function(e){var t=this,r=t.graphDiv,n=t.id.substr(7)+"title",i=t.layers,a=t.aaxis,o=t.baxis,s=t.caxis;if(t.drawAx(a),t.drawAx(o),t.drawAx(s),e){var l=Math.max(a.showticklabels?a.tickfont.size/2:0,(s.showticklabels?s.tickfont.size*.75:0)+(s.ticks==="outside"?s.ticklen*.87:0)),u=(o.showticklabels?o.tickfont.size:0)+(o.ticks==="outside"?o.ticklen:0)+3;i["a-title"]=SH.draw(r,"a"+n,{propContainer:a,propName:t.id+".aaxis.title",placeholder:E8(r,"Click to enter Component A title"),attributes:{x:t.x0+t.w/2,y:t.y0-a.title.font.size/3-l,"text-anchor":"middle"}}),i["b-title"]=SH.draw(r,"b"+n,{propContainer:o,propName:t.id+".baxis.title",placeholder:E8(r,"Click to enter Component B title"),attributes:{x:t.x0-u,y:t.y0+t.h+o.title.font.size*.83+u,"text-anchor":"middle"}}),i["c-title"]=SH.draw(r,"c"+n,{propContainer:s,propName:t.id+".caxis.title",placeholder:E8(r,"Click to enter Component C title"),attributes:{x:t.x0+t.w+u,y:t.y0+t.h+s.title.font.size*.83+u,"text-anchor":"middle"}})}};zm.drawAx=function(e){var t=this,r=t.graphDiv,n=e._name,i=n.charAt(0),a=e._id,o=t.layers[n],s=30,l=i+"tickLayout",u=abt(e);t[l]!==u&&(o.selectAll("."+a+"tick").remove(),t[l]=u),e.setScale();var c=k_.calcTicks(e),f=k_.clipEnds(e,c),h=k_.makeTransTickFn(e),d=k_.getTickSigns(e)[2],v=By.deg2rad(s),x=d*(e.linewidth||1)/2,b=d*e.ticklen,p=t.w,E=t.h,k=i==="b"?"M0,"+x+"l"+Math.sin(v)*b+","+Math.cos(v)*b:"M"+x+",0l"+Math.cos(v)*b+","+-Math.sin(v)*b,A={a:"M0,0l"+E+",-"+p/2,b:"M0,0l-"+p/2+",-"+E,c:"M0,0l-"+E+","+p/2}[i];k_.drawTicks(r,e,{vals:e.ticks==="inside"?f:c,layer:o,path:k,transFn:h,crisp:!1}),k_.drawGrid(r,e,{vals:f,layer:t.layers[i+"grid"],path:A,transFn:h,crisp:!1}),k_.drawLabels(r,e,{vals:c,layer:o,transFn:h,labelFns:k_.makeLabelFns(e,0,s)})};function abt(e){return e.ticks+String(e.ticklen)+String(e.showticklabels)}var fd=s2e.MINZOOM/2+.87,obt="m-0.87,.5h"+fd+"v3h-"+(fd+5.2)+"l"+(fd/2+2.6)+",-"+(fd*.87+4.5)+"l2.6,1.5l-"+fd/2+","+fd*.87+"Z",sbt="m0.87,.5h-"+fd+"v3h"+(fd+5.2)+"l-"+(fd/2+2.6)+",-"+(fd*.87+4.5)+"l-2.6,1.5l"+fd/2+","+fd*.87+"Z",lbt="m0,1l"+fd/2+","+fd*.87+"l2.6,-1.5l-"+(fd/2+2.6)+",-"+(fd*.87+4.5)+"l-"+(fd/2+2.6)+","+(fd*.87+4.5)+"l2.6,1.5l"+fd/2+",-"+fd*.87+"Z",ubt="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",i2e=!0;zm.clearOutline=function(){nbt(this.dragOptions),ibt(this.dragOptions.gd)};zm.initInteractions=function(){var e=this,t=e.layers.plotbg.select("path").node(),r=e.graphDiv,n=r._fullLayout._zoomlayer,i,a;this.dragOptions={element:t,gd:r,plotinfo:{id:e.id,domain:r._fullLayout[e.id].domain,xaxis:e.xaxis,yaxis:e.yaxis},subplot:e.id,prepFn:function(T,F,q){e.dragOptions.xaxes=[e.xaxis],e.dragOptions.yaxes=[e.yaxis],i=r._fullLayout._invScaleX,a=r._fullLayout._invScaleY;var V=e.dragOptions.dragmode=r._fullLayout.dragmode;r2e(V)?e.dragOptions.minDrag=1:e.dragOptions.minDrag=void 0,V==="zoom"?(e.dragOptions.moveFn=_,e.dragOptions.clickFn=p,e.dragOptions.doneFn=C,E(T,F,q)):V==="pan"?(e.dragOptions.moveFn=g,e.dragOptions.clickFn=p,e.dragOptions.doneFn=P,M(),e.clearOutline(r)):(ebt(V)||r2e(V))&&tbt(T,F,q,e.dragOptions,V)}};var o,s,l,u,c,f,h,d,v,x;function b(T){var F={};return F[e.id+".aaxis.min"]=T.a,F[e.id+".baxis.min"]=T.b,F[e.id+".caxis.min"]=T.c,F}function p(T,F){var q=r._fullLayout.clickmode;n2e(r),T===2&&(r.emit("plotly_doubleclick",null),TH.call("_guiRelayout",r,b({a:0,b:0,c:0}))),q.indexOf("select")>-1&&T===1&&rbt(F,r,[e.xaxis],[e.yaxis],e.id,e.dragOptions),q.indexOf("event")>-1&&t2e.click(r,F,e.id)}function E(T,F,q){var V=t.getBoundingClientRect();o=F-V.left,s=q-V.top,r._fullLayout._calcInverseTransform(r);var H=r._fullLayout._invTransform,X=By.apply3DTransform(H)(o,s);o=X[0],s=X[1],l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l,u=e.aaxis.range[1]-l.a,f=$xt(e.graphDiv._fullLayout[e.id].bgcolor).getLuminance(),h="M0,"+e.h+"L"+e.w/2+", 0L"+e.w+","+e.h+"Z",d=!1,v=n.append("path").attr("class","zoombox").attr("transform",Dm(e.x0,e.y0)).style({fill:f>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",h),x=n.append("path").attr("class","zoombox-corners").attr("transform",Dm(e.x0,e.y0)).style({fill:qT.background,stroke:qT.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),e.clearOutline(r)}function k(T,F){return 1-F/e.h}function A(T,F){return 1-(T+(e.h-F)/Math.sqrt(3))/e.w}function L(T,F){return(T-(e.h-F)/Math.sqrt(3))/e.w}function _(T,F){var q=o+T*i,V=s+F*a,H=Math.max(0,Math.min(1,k(o,s),k(q,V))),X=Math.max(0,Math.min(1,A(o,s),A(q,V))),G=Math.max(0,Math.min(1,L(o,s),L(q,V))),N=(H/2+G)*e.w,W=(1-H/2-X)*e.w,re=(N+W)/2,ae=W-N,_e=(1-H)*e.h,Me=_e-ae/FT;ae<s2e.MINZOOM?(c=l,v.attr("d",h),x.attr("d","M0,0Z")):(c={a:l.a+H*u,b:l.b+X*u,c:l.c+G*u},v.attr("d",h+"M"+N+","+_e+"H"+W+"L"+re+","+Me+"L"+N+","+_e+"Z"),x.attr("d","M"+o+","+s+ubt+"M"+N+","+_e+obt+"M"+W+","+_e+sbt+"M"+re+","+Me+lbt)),d||(v.transition().style("fill",f>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),x.transition().style("opacity",1).duration(200),d=!0),r.emit("plotly_relayouting",b(c))}function C(){n2e(r),c!==l&&(TH.call("_guiRelayout",r,b(c)),i2e&&r.data&&r._context.showTips&&(By.notifier(E8(r,"Double-click to zoom back out"),"long"),i2e=!1))}function M(){l={a:e.aaxis.range[0],b:e.baxis.range[1],c:e.caxis.range[1]},c=l}function g(T,F){var q=T/e.xaxis._m,V=F/e.yaxis._m;c={a:l.a-V,b:l.b+(q+V)/2,c:l.c-(q-V)/2};var H=[c.a,c.b,c.c].sort(By.sorterAsc),X={a:H.indexOf(c.a),b:H.indexOf(c.b),c:H.indexOf(c.c)};H[0]<0&&(H[1]+H[0]/2<0?(H[2]+=H[0]+H[1],H[0]=H[1]=0):(H[2]+=H[0]/2,H[1]+=H[0]/2,H[0]=0),c={a:H[X.a],b:H[X.b],c:H[X.c]},F=(l.a-c.a)*e.yaxis._m,T=(l.c-c.c-l.b+c.b)*e.xaxis._m);var G=Dm(e.x0+T,e.y0+F);e.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",G);var N=Dm(-T,-F);e.clipDefRelative.select("path").attr("transform",N),e.aaxis.range=[c.a,e.sum-c.b-c.c],e.baxis.range=[e.sum-c.a-c.c,c.b],e.caxis.range=[e.sum-c.a-c.b,c.c],e.drawAxes(!1),e._hasClipOnAxisFalse&&e.plotContainer.select(".scatterlayer").selectAll(".trace").call(k8.hideOutsideRangePoints,e),r.emit("plotly_relayouting",b(c))}function P(){TH.call("_guiRelayout",r,b(c))}t.onmousemove=function(T){t2e.hover(r,T,e.id),r._fullLayout._lasthover=t,r._fullLayout._hoversubplot=e.id},t.onmouseout=function(T){r._dragging||e2e.unhover(r,T)},e2e.init(this.dragOptions)};function n2e(e){a2e.select(e).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}});var kH=ye((ylr,f2e)=>{"use strict";var cbt=dh(),fbt=Ju().attributes,Ol=Cd(),hbt=Bu().overrideAll,MH=no().extendFlat,EH={title:{text:Ol.title.text,font:Ol.title.font},color:Ol.color,tickmode:Ol.minor.tickmode,nticks:MH({},Ol.nticks,{dflt:6,min:1}),tick0:Ol.tick0,dtick:Ol.dtick,tickvals:Ol.tickvals,ticktext:Ol.ticktext,ticks:Ol.ticks,ticklen:Ol.ticklen,tickwidth:Ol.tickwidth,tickcolor:Ol.tickcolor,ticklabelstep:Ol.ticklabelstep,showticklabels:Ol.showticklabels,labelalias:Ol.labelalias,showtickprefix:Ol.showtickprefix,tickprefix:Ol.tickprefix,showticksuffix:Ol.showticksuffix,ticksuffix:Ol.ticksuffix,showexponent:Ol.showexponent,exponentformat:Ol.exponentformat,minexponent:Ol.minexponent,separatethousands:Ol.separatethousands,tickfont:Ol.tickfont,tickangle:Ol.tickangle,tickformat:Ol.tickformat,tickformatstops:Ol.tickformatstops,hoverformat:Ol.hoverformat,showline:MH({},Ol.showline,{dflt:!0}),linecolor:Ol.linecolor,linewidth:Ol.linewidth,showgrid:MH({},Ol.showgrid,{dflt:!0}),gridcolor:Ol.gridcolor,gridwidth:Ol.gridwidth,griddash:Ol.griddash,layer:Ol.layer,min:{valType:"number",dflt:0,min:0}},C8=f2e.exports=hbt({domain:fbt({name:"ternary"}),bgcolor:{valType:"color",dflt:cbt.background},sum:{valType:"number",dflt:1,min:0},aaxis:EH,baxis:EH,caxis:EH},"plot","from-root");C8.uirevision={valType:"any",editType:"none"};C8.aaxis.uirevision=C8.baxis.uirevision=C8.caxis.uirevision={valType:"any",editType:"none"}});var C_=ye((_lr,h2e)=>{"use strict";var dbt=Mr(),vbt=Vs(),pbt=Ju().defaults;h2e.exports=function(t,r,n,i){var a=i.type,o=i.attributes,s=i.handleDefaults,l=i.partition||"x",u=r._subplots[a],c=u.length,f=c&&u[0].replace(/\d+$/,""),h,d;function v(E,k){return dbt.coerce(h,d,o,E,k)}for(var x=0;x<c;x++){var b=u[x];t[b]?h=t[b]:h=t[b]={},d=vbt.newContainer(r,b,f),i.noUirevision||v("uirevision",r.uirevision);var p={};p[l]=[x/c,(x+1)/c],pbt(d,r,v,p),i.id=b,s(h,d,v,i)}}});var g2e=ye((xlr,p2e)=>{"use strict";var gbt=va(),mbt=Vs(),L8=Mr(),ybt=C_(),_bt=t_(),xbt=r_(),bbt=T3(),wbt=xb(),Tbt=YM(),v2e=kH(),d2e=["aaxis","baxis","caxis"];p2e.exports=function(t,r,n){ybt(t,r,n,{type:"ternary",attributes:v2e,handleDefaults:Abt,font:r.font,paper_bgcolor:r.paper_bgcolor})};function Abt(e,t,r,n){var i=r("bgcolor"),a=r("sum");n.bgColor=gbt.combine(i,n.paper_bgcolor);for(var o,s,l,u=0;u<d2e.length;u++)o=d2e[u],s=e[o]||{},l=mbt.newContainer(t,o),l._name=o,Sbt(s,l,n,t);var c=t.aaxis,f=t.baxis,h=t.caxis;c.min+f.min+h.min>=a&&(c.min=0,f.min=0,h.min=0,e.aaxis&&delete e.aaxis.min,e.baxis&&delete e.baxis.min,e.caxis&&delete e.caxis.min)}function Sbt(e,t,r,n){var i=v2e[t._name];function a(d,v){return L8.coerce(e,t,i,d,v)}a("uirevision",n.uirevision),t.type="linear";var o=a("color"),s=o!==i.color.dflt?o:r.font.color,l=t._name,u=l.charAt(0).toUpperCase(),c="Component "+u,f=a("title.text",c);t._hovertitle=f===c?f:u,L8.coerceFont(a,"title.font",r.font,{overrideDflt:{size:L8.bigFont(r.font.size),color:s}}),a("min"),wbt(e,t,a,"linear"),xbt(e,t,a,"linear"),_bt(e,t,a,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),bbt(e,t,a,{outerTicks:!0});var h=a("showticklabels");h&&(L8.coerceFont(a,"tickfont",r.font,{overrideDflt:{color:s}}),a("tickangle"),a("tickformat")),Tbt(e,t,a,{dfltColor:o,bgColor:r.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i}),a("hoverformat"),a("layer")}});var m2e=ye(W0=>{"use strict";var Mbt=c2e(),Ebt=kd().getSubplotCalcData,kbt=Mr().counterRegex,OT="ternary";W0.name=OT;var Cbt=W0.attr="subplot";W0.idRoot=OT;W0.idRegex=W0.attrRegex=kbt(OT);var Lbt=W0.attributes={};Lbt[Cbt]={valType:"subplotid",dflt:"ternary",editType:"calc"};W0.layoutAttributes=kH();W0.supplyLayoutDefaults=g2e();W0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[OT],a=0;a<i.length;a++){var o=i[a],s=Ebt(n,OT,o),l=r[o]._subplot;l||(l=new Mbt({id:o,graphDiv:t,container:r._ternarylayer.node()},r),r[o]._subplot=l),l.plot(s,r,t._promises)}};W0.clean=function(e,t,r,n){for(var i=n._subplots[OT]||[],a=0;a<i.length;a++){var o=i[a],s=n[o]._subplot;!t[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())}};W0.updateFx=function(e){var t=e._fullLayout;t._ternarylayer.selectAll("g.toplevel").style("cursor",t.dragmode==="pan"?"move":"crosshair")}});var _2e=ye((wlr,y2e)=>{"use strict";y2e.exports={attributes:xH(),supplyDefaults:Ube(),colorbar:Kd(),formatLabels:Hbe(),calc:Zbe(),plot:Ybe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:Jbe(),selectPoints:lT(),eventData:Qbe(),moduleType:"trace",name:"scatterternary",basePlotModule:m2e(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}});var b2e=ye((Tlr,x2e)=>{"use strict";x2e.exports=_2e()});var CH=ye((Alr,T2e)=>{"use strict";var jh=v4(),BT=no().extendFlat,w2e=Oc().axisHoverFormat;T2e.exports={y:jh.y,x:jh.x,x0:jh.x0,y0:jh.y0,xhoverformat:w2e("x"),yhoverformat:w2e("y"),name:BT({},jh.name,{}),orientation:BT({},jh.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:jh.fillcolor,points:BT({},jh.boxpoints,{}),jitter:BT({},jh.jitter,{}),pointpos:BT({},jh.pointpos,{}),width:BT({},jh.width,{}),marker:jh.marker,text:jh.text,hovertext:jh.hovertext,hovertemplate:jh.hovertemplate,quartilemethod:jh.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:jh.offsetgroup,alignmentgroup:jh.alignmentgroup,selected:jh.selected,unselected:jh.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:jh.zorder}});var IH=ye((Slr,A2e)=>{"use strict";var LH=p4(),PH=Mr().extendFlat;A2e.exports={violinmode:PH({},LH.boxmode,{}),violingap:PH({},LH.boxgap,{}),violingroupgap:PH({},LH.boxgroupgap,{})}});var C2e=ye((Mlr,k2e)=>{"use strict";var S2e=Mr(),Pbt=va(),M2e=m4(),E2e=CH();k2e.exports=function(t,r,n,i){function a(L,_){return S2e.coerce(t,r,E2e,L,_)}function o(L,_){return S2e.coerce2(t,r,E2e,L,_)}if(M2e.handleSampleDefaults(t,r,a,i),r.visible!==!1){a("bandwidth"),a("side");var s=a("width");s||(a("scalegroup",r.name),a("scalemode"));var l=a("span"),u;Array.isArray(l)&&(u="manual"),a("spanmode",u);var c=a("line.color",(t.marker||{}).color||n),f=a("line.width"),h=a("fillcolor",Pbt.addOpacity(r.line.color,.5));M2e.handlePointsDefaults(t,r,a,{prefix:""});var d=o("box.width"),v=o("box.fillcolor",h),x=o("box.line.color",c),b=o("box.line.width",f),p=a("box.visible",!!(d||v||x||b));p||(r.box={visible:!1});var E=o("meanline.color",c),k=o("meanline.width",f),A=a("meanline.visible",!!(E||k));A||(r.meanline={visible:!1}),a("quartilemethod"),a("zorder")}}});var P2e=ye((Elr,L2e)=>{"use strict";var Ibt=Mr(),Rbt=IH(),Dbt=VI();L2e.exports=function(t,r,n){function i(a,o){return Ibt.coerce(t,r,Rbt,a,o)}Dbt._supply(t,r,n,i,"violin")}});var P8=ye(o2=>{"use strict";var zbt=Mr(),Fbt={gaussian:function(e){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*e*e)}};o2.makeKDE=function(e,t,r){var n=r.length,i=Fbt.gaussian,a=e.bandwidth,o=1/(n*a);return function(s){for(var l=0,u=0;u<n;u++)l+=i((s-r[u])/a);return o*l}};o2.getPositionOnKdePath=function(e,t,r){var n,i;t.orientation==="h"?(n="y",i="x"):(n="x",i="y");var a=zbt.findPointOnPath(e.path,r,i,{pathLength:e.pathLength}),o=e.posCenterPx,s=a[n],l=t.side==="both"?2*o-s:o;return[s,l]};o2.getKdeValue=function(e,t,r){var n=e.pts.map(o2.extractVal),i=o2.makeKDE(e,t,n);return i(r)/e.posDensityScale};o2.extractVal=function(e){return e.v}});var D2e=ye((Clr,R2e)=>{"use strict";var RH=Mr(),DH=Qa(),qbt=MV(),I2e=P8(),Obt=es().BADNUM;R2e.exports=function(t,r){var n=qbt(t,r);if(n[0].t.empty)return n;for(var i=t._fullLayout,a=DH.getFromId(t,r[r.orientation==="h"?"xaxis":"yaxis"]),o=1/0,s=-1/0,l=0,u=0,c=0;c<n.length;c++){var f=n[c],h=f.pts.map(I2e.extractVal),d=f.bandwidth=Nbt(r,f,h),v=f.span=Ubt(r,f,a,d);if(f.min===f.max&&d===0)v=f.span=[f.min,f.max],f.density=[{v:1,t:v[0]}],f.bandwidth=d,l=Math.max(l,1);else{var x=v[1]-v[0],b=Math.ceil(x/(d/3)),p=x/b;if(!isFinite(p)||!isFinite(b))return RH.error("Something went wrong with computing the violin span"),n[0].t.empty=!0,n;var E=I2e.makeKDE(f,r,h);f.density=new Array(b);for(var k=0,A=v[0];A<v[1]+p/2;k++,A+=p){var L=E(A);f.density[k]={v:L,t:A},l=Math.max(l,L)}}u=Math.max(u,h.length),o=Math.min(o,v[0]),s=Math.max(s,v[1])}var _=DH.findExtremes(a,[o,s],{padded:!0});if(r._extremes[a._id]=_,r.width)n[0].t.maxKDE=l;else{var C=i._violinScaleGroupStats,M=r.scalegroup,g=C[M];g?(g.maxKDE=Math.max(g.maxKDE,l),g.maxCount=Math.max(g.maxCount,u)):C[M]={maxKDE:l,maxCount:u}}return n[0].t.labels.kde=RH._(t,"kde:"),n};function Bbt(e,t,r){var n=Math.min(t,r/1.349);return 1.059*n*Math.pow(e,-.2)}function Nbt(e,t,r){var n=t.max-t.min;if(!n)return e.bandwidth?e.bandwidth:0;if(e.bandwidth)return Math.max(e.bandwidth,n/1e4);var i=r.length,a=RH.stdev(r,i-1,t.mean);return Math.max(Bbt(i,a,t.q3-t.q1),n/100)}function Ubt(e,t,r,n){var i=e.spanmode,a=e.span||[],o=[t.min,t.max],s=[t.min-2*n,t.max+2*n],l;function u(f){var h=a[f],d=r.type==="multicategory"?r.r2c(h):r.d2c(h,0,e[t.valLetter+"calendar"]);return d===Obt?s[f]:d}i==="soft"?l=s:i==="hard"?l=o:l=[u(0),u(1)];var c={type:"linear",range:l};return DH.setConvert(c),c.cleanRange(),l}});var q2e=ye((Llr,F2e)=>{"use strict";var Vbt=GI().setPositionOffset,z2e=["v","h"];F2e.exports=function(t,r){for(var n=t.calcdata,i=r.xaxis,a=r.yaxis,o=0;o<z2e.length;o++){for(var s=z2e[o],l=s==="h"?a:i,u=[],c=0;c<n.length;c++){var f=n[c],h=f[0].t,d=f[0].trace;d.visible===!0&&d.type==="violin"&&!h.empty&&d.orientation===s&&d.xaxis===i._id&&d.yaxis===a._id&&u.push(c)}Vbt("violin",t,u,l)}}});var B2e=ye((Plr,O2e)=>{"use strict";var zH=xa(),FH=Mr(),Hbt=ao(),qH=jI(),Gbt=fU(),jbt=P8();O2e.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=r.xaxis,l=r.yaxis;function u(c,f){var h=Gbt(c,{xaxis:s,yaxis:l,trace:f,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return Hbt.smoothopen(h[0],1)}FH.makeTraceGroups(i,n,"trace violins").each(function(c){var f=zH.select(this),h=c[0],d=h.t,v=h.trace;if(v.visible!==!0||d.empty){f.remove();return}var x=d.bPos,b=d.bdPos,p=r[d.valLetter+"axis"],E=r[d.posLetter+"axis"],k=v.side==="both",A=k||v.side==="positive",L=k||v.side==="negative",_=f.selectAll("path.violin").data(FH.identity);_.enter().append("path").style("vector-effect",a?"none":"non-scaling-stroke").attr("class","violin"),_.exit().remove(),_.each(function(V){var H=zH.select(this),X=V.density,G=X.length,N=E.c2l(V.pos+x,!0),W=E.l2p(N),re;if(v.width)re=d.maxKDE/b;else{var ae=o._violinScaleGroupStats[v.scalegroup];re=v.scalemode==="count"?ae.maxKDE/b*(ae.maxCount/V.pts.length):ae.maxKDE/b}var _e,Me,ke,ge,ie,Te,Ee;if(A){for(Te=new Array(G),ge=0;ge<G;ge++)Ee=Te[ge]={},Ee[d.posLetter]=N+X[ge].v/re,Ee[d.valLetter]=p.c2l(X[ge].t,!0);_e=u(Te,v)}if(L){for(Te=new Array(G),ie=0,ge=G-1;ie<G;ie++,ge--)Ee=Te[ie]={},Ee[d.posLetter]=N-X[ge].v/re,Ee[d.valLetter]=p.c2l(X[ge].t,!0);Me=u(Te,v)}if(k)ke=_e+"L"+Me.substr(1)+"Z";else{var Ae=[W,p.c2p(X[0].t)],ze=[W,p.c2p(X[G-1].t)];v.orientation==="h"&&(Ae.reverse(),ze.reverse()),A?ke="M"+Ae+"L"+_e.substr(1)+"L"+ze:ke="M"+ze+"L"+Me.substr(1)+"L"+Ae}H.attr("d",ke),V.posCenterPx=W,V.posDensityScale=re*b,V.path=H.node(),V.pathLength=V.path.getTotalLength()/(k?2:1)});var C=v.box,M=C.width,g=(C.line||{}).width,P,T;k?(P=b*M,T=0):A?(P=[0,b*M/2],T=g*{x:1,y:-1}[d.posLetter]):(P=[b*M/2,0],T=g*{x:-1,y:1}[d.posLetter]),qH.plotBoxAndWhiskers(f,{pos:E,val:p},v,{bPos:x,bdPos:P,bPosPxOffset:T}),qH.plotBoxMean(f,{pos:E,val:p},v,{bPos:x,bdPos:P,bPosPxOffset:T});var F;!v.box.visible&&v.meanline.visible&&(F=FH.identity);var q=f.selectAll("path.meanline").data(F||[]);q.enter().append("path").attr("class","meanline").style("fill","none").style("vector-effect",a?"none":"non-scaling-stroke"),q.exit().remove(),q.each(function(V){var H=p.c2p(V.mean,!0),X=jbt.getPositionOnKdePath(V,v,H);zH.select(this).attr("d",v.orientation==="h"?"M"+H+","+X[0]+"V"+X[1]:"M"+X[0]+","+H+"H"+X[1])}),qH.plotPoints(f,{x:s,y:l},v,d)})}});var V2e=ye((Ilr,U2e)=>{"use strict";var N2e=xa(),NT=va(),Wbt=op().stylePoints;U2e.exports=function(t){var r=N2e.select(t).selectAll("g.trace.violins");r.style("opacity",function(n){return n[0].trace.opacity}),r.each(function(n){var i=n[0].trace,a=N2e.select(this),o=i.box||{},s=o.line||{},l=i.meanline||{},u=l.width;a.selectAll("path.violin").style("stroke-width",i.line.width+"px").call(NT.stroke,i.line.color).call(NT.fill,i.fillcolor),a.selectAll("path.box").style("stroke-width",s.width+"px").call(NT.stroke,s.color).call(NT.fill,o.fillcolor);var c={"stroke-width":u+"px","stroke-dasharray":2*u+"px,"+u+"px"};a.selectAll("path.mean").style(c).call(NT.stroke,l.color),a.selectAll("path.meanline").style(c).call(NT.stroke,l.color),Wbt(a,i,t)})}});var W2e=ye((Rlr,j2e)=>{"use strict";var Zbt=va(),OH=Mr(),Xbt=Qa(),H2e=PV(),G2e=P8();j2e.exports=function(t,r,n,i,a){a||(a={});var o=a.hoverLayer,s=t.cd,l=s[0].trace,u=l.hoveron,c=u.indexOf("violins")!==-1,f=u.indexOf("kde")!==-1,h=[],d,v;if(c||f){var x=H2e.hoverOnBoxes(t,r,n,i);if(f&&x.length>0){var b=t.xa,p=t.ya,E,k,A,L,_;l.orientation==="h"?(_=r,E="y",A=p,k="x",L=b):(_=n,E="x",A=b,k="y",L=p);var C=s[t.index];if(_>=C.span[0]&&_<=C.span[1]){var M=OH.extendFlat({},t),g=L.c2p(_,!0),P=G2e.getKdeValue(C,l,_),T=G2e.getPositionOnKdePath(C,l,g),F=A._offset,q=A._length;M[E+"0"]=T[0],M[E+"1"]=T[1],M[k+"0"]=M[k+"1"]=g,M[k+"Label"]=k+": "+Xbt.hoverLabelText(L,_,l[k+"hoverformat"])+", "+s[0].t.labels.kde+" "+P.toFixed(3);for(var V=0,H=0;H<x.length;H++)if(x[H].attr==="med"){V=H;break}M.spikeDistance=x[V].spikeDistance;var X=E+"Spike";M[X]=x[V][X],x[V].spikeDistance=void 0,x[V][X]=void 0,M.hovertemplate=!1,h.push(M),v={},v[E+"1"]=OH.constrain(F+T[0],F,F+q),v[E+"2"]=OH.constrain(F+T[1],F,F+q),v[k+"1"]=v[k+"2"]=L._offset+g}}c&&(h=h.concat(x))}u.indexOf("points")!==-1&&(d=H2e.hoverOnPoints(t,r,n));var G=o.selectAll(".violinline-"+l.uid).data(v?[0]:[]);return G.enter().append("line").classed("violinline-"+l.uid,!0).attr("stroke-width",1.5),G.exit().remove(),G.attr(v).call(Zbt.stroke,t.color),i==="closest"?d?[d]:h:(d&&h.push(d),h)}});var X2e=ye((Dlr,Z2e)=>{"use strict";Z2e.exports={attributes:CH(),layoutAttributes:IH(),supplyDefaults:C2e(),crossTraceDefaults:m4().crossTraceDefaults,supplyLayoutDefaults:P2e(),calc:D2e(),crossTraceCalc:q2e(),plot:B2e(),style:V2e(),styleOnSelect:op().styleOnSelect,hoverPoints:W2e(),selectPoints:IV(),moduleType:"trace",name:"violin",basePlotModule:Jf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}});var K2e=ye((zlr,Y2e)=>{"use strict";Y2e.exports=X2e()});var $2e=ye((Flr,J2e)=>{"use strict";J2e.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}});var NH=ye((qlr,twe)=>{"use strict";var lc=Lm(),BH=Uc().line,Ybt=vl(),Q2e=Oc().axisHoverFormat,Kbt=Wo().hovertemplateAttrs,Jbt=Wo().texttemplateAttrs,ewe=$2e(),Ny=no().extendFlat,$bt=va();twe.exports={x:lc.x,x0:lc.x0,dx:lc.dx,y:lc.y,y0:lc.y0,dy:lc.dy,xperiod:lc.xperiod,yperiod:lc.yperiod,xperiod0:lc.xperiod0,yperiod0:lc.yperiod0,xperiodalignment:lc.xperiodalignment,yperiodalignment:lc.yperiodalignment,xhoverformat:Q2e("x"),yhoverformat:Q2e("y"),hovertext:lc.hovertext,hovertemplate:Kbt({},{keys:ewe.eventDataKeys}),hoverinfo:Ny({},Ybt.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:Jbt({editType:"plot"},{keys:ewe.eventDataKeys.concat(["label","value"])}),text:lc.text,textposition:lc.textposition,insidetextanchor:Ny({},lc.insidetextanchor,{dflt:"middle"}),textangle:Ny({},lc.textangle,{dflt:0}),textfont:lc.textfont,insidetextfont:lc.insidetextfont,outsidetextfont:lc.outsidetextfont,constraintext:lc.constraintext,cliponaxis:lc.cliponaxis,orientation:Ny({},lc.orientation,{}),offset:Ny({},lc.offset,{arrayOk:!1}),width:Ny({},lc.width,{arrayOk:!1}),marker:Qbt(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:Ny({},BH.color,{dflt:$bt.defaultLine}),width:Ny({},BH.width,{dflt:0,editType:"plot"}),dash:BH.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:lc.offsetgroup,alignmentgroup:lc.alignmentgroup,zorder:lc.zorder};function Qbt(){var e=Ny({},lc.marker);return delete e.pattern,delete e.cornerradius,e}});var UH=ye((Olr,rwe)=>{"use strict";rwe.exports={funnelmode:{valType:"enumerated",values:["stack","group","overlay"],dflt:"stack",editType:"calc"},funnelgap:{valType:"number",min:0,max:1,editType:"calc"},funnelgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var HH=ye((Blr,nwe)=>{"use strict";var I8=Mr(),e2t=Hb(),t2t=r0().handleText,r2t=K3(),i2t=Pg(),iwe=NH(),VH=va();function n2t(e,t,r,n){function i(f,h){return I8.coerce(e,t,iwe,f,h)}var a=r2t(e,t,n,i);if(!a){t.visible=!1;return}i2t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("orientation",t.y&&!t.x?"v":"h"),i("offset"),i("width");var o=i("text");i("hovertext"),i("hovertemplate");var s=i("textposition");t2t(e,t,n,i,s,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&!t.texttemplate&&i("textinfo",I8.isArrayOrTypedArray(o)?"text+value":"value");var l=i("marker.color",r);i("marker.line.color",VH.defaultLine),i("marker.line.width");var u=i("connector.visible");if(u){i("connector.fillcolor",a2t(l));var c=i("connector.line.width");c&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function a2t(e){var t=I8.isArrayOrTypedArray(e)?"#000":e;return VH.addOpacity(t,.5*VH.opacity(t))}function o2t(e,t){var r,n;function i(o){return I8.coerce(n._input,n,iwe,o)}for(var a=0;a<e.length;a++)n=e[a],n.type==="funnel"&&(r=n._input,e2t(r,n,t,i,t.funnelmode))}nwe.exports={supplyDefaults:n2t,crossTraceDefaults:o2t}});var owe=ye((Nlr,awe)=>{"use strict";var s2t=Mr(),l2t=UH();awe.exports=function(e,t,r){var n=!1;function i(s,l){return s2t.coerce(e,t,l2t,s,l)}for(var a=0;a<r.length;a++){var o=r[a];if(o.visible&&o.type==="funnel"){n=!0;break}}n&&(i("funnelmode"),i("funnelgap",.2),i("funnelgroupgap"))}});var lwe=ye((Ulr,swe)=>{"use strict";var UT=Mr();swe.exports=function(t,r){for(var n=0;n<t.length;n++)t[n].i=n;UT.mergeArray(r.text,t,"tx"),UT.mergeArray(r.hovertext,t,"htx");var i=r.marker;if(i){UT.mergeArray(i.opacity,t,"mo"),UT.mergeArray(i.color,t,"mc");var a=i.line;a&&(UT.mergeArray(a.color,t,"mlc"),UT.mergeArrayCastPositive(a.width,t,"mlw"))}}});var hwe=ye((Vlr,fwe)=>{"use strict";var uwe=Qa(),cwe=Rg(),u2t=lwe(),c2t=F0(),P4=es().BADNUM;fwe.exports=function(t,r){var n=uwe.getFromId(t,r.xaxis||"x"),i=uwe.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c,f,h;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=cwe(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=cwe(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;var d=Math.min(o.length,a.length),v=new Array(d);for(r._base=[],f=0;f<d;f++){a[f]<0&&(a[f]=P4);var x=!1;a[f]!==P4&&f+1<d&&a[f+1]!==P4&&(x=!0),h=v[f]={p:o[f],s:a[f],cNext:x},r._base[f]=-.5*h.s,u&&(v[f].orig_p=s[f],v[f][c+"End"]=l.ends[f],v[f][c+"Start"]=l.starts[f]),r.ids&&(h.id=String(r.ids[f])),f===0&&(v[0].vTotal=0),v[0].vTotal+=GH(h.s),h.begR=GH(h.s)/GH(v[0].s)}var b;for(f=0;f<d;f++)h=v[f],h.s!==P4&&(h.sumR=h.s/v[0].vTotal,h.difR=b!==void 0?h.s/b:1,b=h.s);return u2t(v,r),c2t(v,r),v};function GH(e){return e===P4?0:e}});var pwe=ye((Hlr,vwe)=>{"use strict";var dwe=Gb().setGroupPositions;vwe.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h<i.length;h++){var d=i[h],v=d.orientation==="h";d.visible===!0&&d.xaxis===o._id&&d.yaxis===s._id&&d.type==="funnel"&&(f=a[h],v?c.push(f):u.push(f),l.push(f))}var x={mode:n.funnelmode,norm:n.funnelnorm,gap:n.funnelgap,groupgap:n.funnelgroupgap};for(dwe(t,o,s,u,x),dwe(t,s,o,c,x),h=0;h<l.length;h++){f=l[h];for(var b=0;b<f.length;b++)b+1<f.length&&(f[b].nextP0=f[b+1].p0,f[b].nextS0=f[b+1].s0,f[b].nextP1=f[b+1].p1,f[b].nextS1=f[b+1].s1)}}});var _we=ye((Glr,ywe)=>{"use strict";var R8=xa(),P_=Mr(),gwe=ao(),L_=es().BADNUM,f2t=i2(),h2t=_v().clearMinTextSize;ywe.exports=function(t,r,n,i){var a=t._fullLayout;h2t("funnel",a),d2t(t,r,n,i),v2t(t,r,n,i),f2t.plot(t,r,n,i,{mode:a.funnelmode,norm:a.funnelmode,gap:a.funnelgap,groupgap:a.funnelgroupgap})};function d2t(e,t,r,n){var i=t.xaxis,a=t.yaxis;P_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=R8.select(this),l=o[0].trace,u=P_.ensureSingle(s,"g","regions");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.region").data(P_.identity);f.enter().append("g").classed("region",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var x=mwe(d,i,a,c),b=x[0],p=x[1],E="";b[0]!==L_&&p[0]!==L_&&b[1]!==L_&&p[1]!==L_&&b[2]!==L_&&p[2]!==L_&&b[3]!==L_&&p[3]!==L_&&(c?E+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2]+"H"+b[3]+"L"+b[1]+","+p[1]+"Z":E+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3]+"V"+p[2]+"L"+b[1]+","+p[0]+"Z"),E===""&&(E="M0,0Z"),P_.ensureSingle(R8.select(this),"path").attr("d",E).call(gwe.setClipUrl,t.layerClipId,e)}})})}function v2t(e,t,r,n){var i=t.xaxis,a=t.yaxis;P_.makeTraceGroups(n,r,"trace bars").each(function(o){var s=R8.select(this),l=o[0].trace,u=P_.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){u.remove();return}var c=l.orientation==="h",f=u.selectAll("g.line").data(P_.identity);f.enter().append("g").classed("line",!0),f.exit().remove();var h=f.size();f.each(function(d,v){if(!(v!==h-1&&!d.cNext)){var x=mwe(d,i,a,c),b=x[0],p=x[1],E="";b[3]!==void 0&&p[3]!==void 0&&(c?(E+="M"+b[0]+","+p[1]+"L"+b[2]+","+p[2],E+="M"+b[1]+","+p[1]+"L"+b[3]+","+p[2]):(E+="M"+b[1]+","+p[1]+"L"+b[2]+","+p[3],E+="M"+b[1]+","+p[0]+"L"+b[2]+","+p[2])),E===""&&(E="M0,0Z"),P_.ensureSingle(R8.select(this),"path").attr("d",E).call(gwe.setClipUrl,t.layerClipId,e)}})})}function mwe(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),i[3]=o.c2p(e.nextS1,!0),a[3]=s.c2p(e.nextP1,!0),n?[i,a]:[a,i]}});var wwe=ye((jlr,bwe)=>{"use strict";var I4=xa(),xwe=ao(),jH=va(),p2t=U1().DESELECTDIM,g2t=N0(),m2t=_v().resizeText,y2t=g2t.styleTextPoints;function _2t(e,t,r){var n=r||I4.select(e).selectAll('g[class^="funnellayer"]').selectAll("g.trace");m2t(e,n,"funnel"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=I4.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o.marker;I4.select(this).call(jH.fill,s.mc||l.color).call(jH.stroke,s.mlc||l.line.color).call(xwe.dashLine,l.line.dash,s.mlw||l.line.width).style("opacity",o.selectedpoints&&!s.selected?p2t:1)}}),y2t(a,o,e),a.selectAll(".regions").each(function(){I4.select(this).selectAll("path").style("stroke-width",0).call(jH.fill,o.connector.fillcolor)}),a.selectAll(".lines").each(function(){var s=o.connector.line;xwe.lineGroupStyle(I4.select(this).selectAll("path"),s.width,s.color,s.dash)})})}bwe.exports={style:_2t}});var Swe=ye((Wlr,Awe)=>{"use strict";var Twe=va().opacity,x2t=TT().hoverOnBars,WH=Mr().formatPercent;Awe.exports=function(t,r,n,i,a){var o=x2t(t,r,n,i,a);if(o){var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=o.index,f=s[c],h=u?"x":"y";o[h+"LabelVal"]=f.s,o.percentInitial=f.begR,o.percentInitialLabel=WH(f.begR,1),o.percentPrevious=f.difR,o.percentPreviousLabel=WH(f.difR,1),o.percentTotal=f.sumR,o.percentTotalLabel=WH(f.sumR,1);var d=f.hi||l.hoverinfo,v=[];if(d&&d!=="none"&&d!=="skip"){var x=d==="all",b=d.split("+"),p=function(E){return x||b.indexOf(E)!==-1};p("percent initial")&&v.push(o.percentInitialLabel+" of initial"),p("percent previous")&&v.push(o.percentPreviousLabel+" of previous"),p("percent total")&&v.push(o.percentTotalLabel+" of total")}return o.extraText=v.join("<br>"),o.color=b2t(l,f),[o]}};function b2t(e,t){var r=e.marker,n=t.mc||r.color,i=t.mlc||r.line.color,a=t.mlw||r.line.width;if(Twe(n))return n;if(Twe(i)&&a)return i}});var Ewe=ye((Zlr,Mwe)=>{"use strict";Mwe.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"percentInitial"in r&&(t.percentInitial=r.percentInitial),"percentPrevious"in r&&(t.percentPrevious=r.percentPrevious),"percentTotal"in r&&(t.percentTotal=r.percentTotal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var Cwe=ye((Xlr,kwe)=>{"use strict";kwe.exports={attributes:NH(),layoutAttributes:UH(),supplyDefaults:HH().supplyDefaults,crossTraceDefaults:HH().crossTraceDefaults,supplyLayoutDefaults:owe(),calc:hwe(),crossTraceCalc:pwe(),plot:_we(),style:wwe().style,hoverPoints:Swe(),eventData:Ewe(),selectPoints:AT(),moduleType:"trace",name:"funnel",basePlotModule:Jf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var Pwe=ye((Ylr,Lwe)=>{"use strict";Lwe.exports=Cwe()});var Rwe=ye((Klr,Iwe)=>{"use strict";Iwe.exports={eventDataKeys:["initial","delta","final"]}});var YH=ye((Jlr,Fwe)=>{"use strict";var Uu=Lm(),ZH=Uc().line,w2t=vl(),Dwe=Oc().axisHoverFormat,T2t=Wo().hovertemplateAttrs,A2t=Wo().texttemplateAttrs,zwe=Rwe(),VT=no().extendFlat,S2t=va();function XH(e){return{marker:{color:VT({},Uu.marker.color,{arrayOk:!1,editType:"style"}),line:{color:VT({},Uu.marker.line.color,{arrayOk:!1,editType:"style"}),width:VT({},Uu.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}Fwe.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:Uu.x,x0:Uu.x0,dx:Uu.dx,y:Uu.y,y0:Uu.y0,dy:Uu.dy,xperiod:Uu.xperiod,yperiod:Uu.yperiod,xperiod0:Uu.xperiod0,yperiod0:Uu.yperiod0,xperiodalignment:Uu.xperiodalignment,yperiodalignment:Uu.yperiodalignment,xhoverformat:Dwe("x"),yhoverformat:Dwe("y"),hovertext:Uu.hovertext,hovertemplate:T2t({},{keys:zwe.eventDataKeys}),hoverinfo:VT({},w2t.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:A2t({editType:"plot"},{keys:zwe.eventDataKeys.concat(["label"])}),text:Uu.text,textposition:Uu.textposition,insidetextanchor:Uu.insidetextanchor,textangle:Uu.textangle,textfont:Uu.textfont,insidetextfont:Uu.insidetextfont,outsidetextfont:Uu.outsidetextfont,constraintext:Uu.constraintext,cliponaxis:Uu.cliponaxis,orientation:Uu.orientation,offset:Uu.offset,width:Uu.width,increasing:XH("increasing"),decreasing:XH("decreasing"),totals:XH("intermediate sums and total"),connector:{line:{color:VT({},ZH.color,{dflt:S2t.defaultLine}),width:VT({},ZH.width,{editType:"plot"}),dash:ZH.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:Uu.offsetgroup,alignmentgroup:Uu.alignmentgroup,zorder:Uu.zorder}});var KH=ye(($lr,qwe)=>{"use strict";qwe.exports={waterfallmode:{valType:"enumerated",values:["group","overlay"],dflt:"group",editType:"calc"},waterfallgap:{valType:"number",min:0,max:1,editType:"calc"},waterfallgroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"}}});var HT=ye((Qlr,Owe)=>{"use strict";Owe.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}});var $H=ye((eur,Vwe)=>{"use strict";var Bwe=Mr(),M2t=Hb(),E2t=r0().handleText,k2t=K3(),C2t=Pg(),Nwe=YH(),L2t=va(),Uwe=HT(),P2t=Uwe.INCREASING.COLOR,I2t=Uwe.DECREASING.COLOR,R2t="#4499FF";function JH(e,t,r){e(t+".marker.color",r),e(t+".marker.line.color",L2t.defaultLine),e(t+".marker.line.width")}function D2t(e,t,r,n){function i(u,c){return Bwe.coerce(e,t,Nwe,u,c)}var a=k2t(e,t,n,i);if(!a){t.visible=!1;return}C2t(e,t,n,i),i("xhoverformat"),i("yhoverformat"),i("measure"),i("orientation",t.x&&!t.y?"h":"v"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate");var o=i("textposition");E2t(e,t,n,i,o,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),t.textposition!=="none"&&(i("texttemplate"),t.texttemplate||i("textinfo")),JH(i,"increasing",P2t),JH(i,"decreasing",I2t),JH(i,"totals",R2t);var s=i("connector.visible");if(s){i("connector.mode");var l=i("connector.line.width");l&&(i("connector.line.color"),i("connector.line.dash"))}i("zorder")}function z2t(e,t){var r,n;function i(o){return Bwe.coerce(n._input,n,Nwe,o)}if(t.waterfallmode==="group")for(var a=0;a<e.length;a++)n=e[a],r=n._input,M2t(r,n,t,i,t.waterfallmode)}Vwe.exports={supplyDefaults:D2t,crossTraceDefaults:z2t}});var Gwe=ye((tur,Hwe)=>{"use strict";var F2t=Mr(),q2t=KH();Hwe.exports=function(e,t,r){var n=!1;function i(s,l){return F2t.coerce(e,t,q2t,s,l)}for(var a=0;a<r.length;a++){var o=r[a];if(o.visible&&o.type==="waterfall"){n=!0;break}}n&&(i("waterfallmode"),i("waterfallgap",.2),i("waterfallgroupgap"))}});var Kwe=ye((rur,Ywe)=>{"use strict";var jwe=Qa(),Wwe=Rg(),Zwe=Mr().mergeArray,O2t=F0(),Xwe=es().BADNUM;function QH(e){return e==="a"||e==="absolute"}function eG(e){return e==="t"||e==="total"}Ywe.exports=function(t,r){var n=jwe.getFromId(t,r.xaxis||"x"),i=jwe.getFromId(t,r.yaxis||"y"),a,o,s,l,u,c;r.orientation==="h"?(a=n.makeCalcdata(r,"x"),s=i.makeCalcdata(r,"y"),l=Wwe(r,i,"y",s),u=!!r.yperiodalignment,c="y"):(a=i.makeCalcdata(r,"y"),s=n.makeCalcdata(r,"x"),l=Wwe(r,n,"x",s),u=!!r.xperiodalignment,c="x"),o=l.vals;for(var f=Math.min(o.length,a.length),h=new Array(f),d=0,v,x=!1,b=0;b<f;b++){var p=a[b]||0,E=!1;(a[b]!==Xwe||eG(r.measure[b])||QH(r.measure[b]))&&b+1<f&&(a[b+1]!==Xwe||eG(r.measure[b+1])||QH(r.measure[b+1]))&&(E=!0);var k=h[b]={i:b,p:o[b],s:p,rawS:p,cNext:E};QH(r.measure[b])?(d=k.s,k.isSum=!0,k.dir="totals",k.s=d):eG(r.measure[b])?(k.isSum=!0,k.dir="totals",k.s=d):(k.isSum=!1,k.dir=k.rawS<0?"decreasing":"increasing",v=k.s,k.s=d+v,d+=v),k.dir==="totals"&&(x=!0),u&&(h[b].orig_p=s[b],h[b][c+"End"]=l.ends[b],h[b][c+"Start"]=l.starts[b]),r.ids&&(k.id=String(r.ids[b])),k.v=(r.base||0)+d}return h.length&&(h[0].hasTotals=x),Zwe(r.text,h,"tx"),Zwe(r.hovertext,h,"htx"),O2t(h,r),h}});var Qwe=ye((iur,$we)=>{"use strict";var Jwe=Gb().setGroupPositions;$we.exports=function(t,r){var n=t._fullLayout,i=t._fullData,a=t.calcdata,o=r.xaxis,s=r.yaxis,l=[],u=[],c=[],f,h;for(h=0;h<i.length;h++){var d=i[h];d.visible===!0&&d.xaxis===o._id&&d.yaxis===s._id&&d.type==="waterfall"&&(f=a[h],d.orientation==="h"?c.push(f):u.push(f),l.push(f))}var v={mode:n.waterfallmode,norm:n.waterfallnorm,gap:n.waterfallgap,groupgap:n.waterfallgroupgap};for(Jwe(t,o,s,u,v),Jwe(t,s,o,c,v),h=0;h<l.length;h++){f=l[h];for(var x=0;x<f.length;x++){var b=f[x];b.isSum===!1&&(b.s0+=x===0?0:f[x-1].s),x+1<f.length&&(f[x].nextP0=f[x+1].p0,f[x].nextS0=f[x+1].s0)}}}});var r3e=ye((nur,t3e)=>{"use strict";var e3e=xa(),D8=Mr(),B2t=ao(),GT=es().BADNUM,N2t=i2(),U2t=_v().clearMinTextSize;t3e.exports=function(t,r,n,i){var a=t._fullLayout;U2t("waterfall",a),N2t.plot(t,r,n,i,{mode:a.waterfallmode,norm:a.waterfallmode,gap:a.waterfallgap,groupgap:a.waterfallgroupgap}),V2t(t,r,n,i)};function V2t(e,t,r,n){var i=t.xaxis,a=t.yaxis;D8.makeTraceGroups(n,r,"trace bars").each(function(o){var s=e3e.select(this),l=o[0].trace,u=D8.ensureSingle(s,"g","lines");if(!l.connector||!l.connector.visible){u.remove();return}var c=l.orientation==="h",f=l.connector.mode,h=u.selectAll("g.line").data(D8.identity);h.enter().append("g").classed("line",!0),h.exit().remove();var d=h.size();h.each(function(v,x){if(!(x!==d-1&&!v.cNext)){var b=H2t(v,i,a,c),p=b[0],E=b[1],k="";p[0]!==GT&&E[0]!==GT&&p[1]!==GT&&E[1]!==GT&&(f==="spanning"&&!v.isSum&&x>0&&(c?k+="M"+p[0]+","+E[1]+"V"+E[0]:k+="M"+p[1]+","+E[0]+"H"+p[0]),f!=="between"&&(v.isSum||x<d-1)&&(c?k+="M"+p[1]+","+E[0]+"V"+E[1]:k+="M"+p[0]+","+E[1]+"H"+p[1]),p[2]!==GT&&E[2]!==GT&&(c?k+="M"+p[1]+","+E[1]+"V"+E[2]:k+="M"+p[1]+","+E[1]+"H"+p[2])),k===""&&(k="M0,0Z"),D8.ensureSingle(e3e.select(this),"path").attr("d",k).call(B2t.setClipUrl,t.layerClipId,e)}})})}function H2t(e,t,r,n){var i=[],a=[],o=n?t:r,s=n?r:t;return i[0]=o.c2p(e.s0,!0),a[0]=s.c2p(e.p0,!0),i[1]=o.c2p(e.s1,!0),a[1]=s.c2p(e.p1,!0),i[2]=o.c2p(e.nextS0,!0),a[2]=s.c2p(e.nextP0,!0),n?[i,a]:[a,i]}});var o3e=ye((aur,a3e)=>{"use strict";var z8=xa(),i3e=ao(),n3e=va(),G2t=U1().DESELECTDIM,j2t=N0(),W2t=_v().resizeText,Z2t=j2t.styleTextPoints;function X2t(e,t,r){var n=r||z8.select(e).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");W2t(e,n,"waterfall"),n.style("opacity",function(i){return i[0].trace.opacity}),n.each(function(i){var a=z8.select(this),o=i[0].trace;a.selectAll(".point > path").each(function(s){if(!s.isBlank){var l=o[s.dir].marker;z8.select(this).call(n3e.fill,l.color).call(n3e.stroke,l.line.color).call(i3e.dashLine,l.line.dash,l.line.width).style("opacity",o.selectedpoints&&!s.selected?G2t:1)}}),Z2t(a,o,e),a.selectAll(".lines").each(function(){var s=o.connector.line;i3e.lineGroupStyle(z8.select(this).selectAll("path"),s.width,s.color,s.dash)})})}a3e.exports={style:X2t}});var f3e=ye((our,c3e)=>{"use strict";var Y2t=Qa().hoverLabelText,s3e=va().opacity,K2t=TT().hoverOnBars,l3e=HT(),u3e={increasing:l3e.INCREASING.SYMBOL,decreasing:l3e.DECREASING.SYMBOL};c3e.exports=function(t,r,n,i,a){var o=K2t(t,r,n,i,a);if(!o)return;var s=o.cd,l=s[0].trace,u=l.orientation==="h",c=u?"x":"y",f=u?t.xa:t.ya;function h(_){return Y2t(f,_,l[c+"hoverformat"])}var d=o.index,v=s[d],x=v.isSum?v.b+v.s:v.rawS;o.initial=v.b+v.s-x,o.delta=x,o.final=o.initial+o.delta;var b=h(Math.abs(o.delta));o.deltaLabel=x<0?"("+b+")":b,o.finalLabel=h(o.final),o.initialLabel=h(o.initial);var p=v.hi||l.hoverinfo,E=[];if(p&&p!=="none"&&p!=="skip"){var k=p==="all",A=p.split("+"),L=function(_){return k||A.indexOf(_)!==-1};v.isSum||(L("final")&&(u?!L("x"):!L("y"))&&E.push(o.finalLabel),L("delta")&&(x<0?E.push(o.deltaLabel+" "+u3e.decreasing):E.push(o.deltaLabel+" "+u3e.increasing)),L("initial")&&E.push("Initial: "+o.initialLabel))}return E.length&&(o.extraText=E.join("<br>")),o.color=J2t(l,v),[o]};function J2t(e,t){var r=e[t.dir].marker,n=r.color,i=r.line.color,a=r.line.width;if(s3e(n))return n;if(s3e(i)&&a)return i}});var d3e=ye((sur,h3e)=>{"use strict";h3e.exports=function(t,r){return t.x="xVal"in r?r.xVal:r.x,t.y="yVal"in r?r.yVal:r.y,"initial"in r&&(t.initial=r.initial),"delta"in r&&(t.delta=r.delta),"final"in r&&(t.final=r.final),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t}});var p3e=ye((lur,v3e)=>{"use strict";v3e.exports={attributes:YH(),layoutAttributes:KH(),supplyDefaults:$H().supplyDefaults,crossTraceDefaults:$H().crossTraceDefaults,supplyLayoutDefaults:Gwe(),calc:Kwe(),crossTraceCalc:Qwe(),plot:r3e(),style:o3e().style,hoverPoints:f3e(),eventData:d3e(),selectPoints:AT(),moduleType:"trace",name:"waterfall",basePlotModule:Jf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}});var m3e=ye((uur,g3e)=>{"use strict";g3e.exports=p3e()});var jT=ye((cur,y3e)=>{"use strict";y3e.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(e){return e.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(e){return e.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(e){var t=e.slice(0,3);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(e){var t=e.slice(0,4);return t[1]=t[1]+"%",t[2]=t[2]+"%",t},suffix:["\xB0","%","%",""]}}}});var tG=ye((fur,x3e)=>{"use strict";var $2t=vl(),Q2t=Uc().zorder,ewt=Wo().hovertemplateAttrs,_3e=no().extendFlat,twt=jT().colormodel,D4=["rgb","rgba","rgba256","hsl","hsla"],rwt=[],iwt=[];for(WT=0;WT<D4.length;WT++)R4=twt[D4[WT]],rwt.push("For the `"+D4[WT]+"` colormodel, it is ["+(R4.zminDflt||R4.min).join(", ")+"]."),iwt.push("For the `"+D4[WT]+"` colormodel, it is ["+(R4.zmaxDflt||R4.max).join(", ")+"].");var R4,WT;x3e.exports=_3e({source:{valType:"string",editType:"calc"},z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:D4,editType:"calc"},zsmooth:{valType:"enumerated",values:["fast",!1],dflt:!1,editType:"plot"},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:_3e({},$2t.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:ewt({},{keys:["z","color","colormodel"]}),zorder:Q2t})});var T3e=ye((hur,w3e)=>{"use strict";var nwt=Mr(),awt=tG(),b3e=jT(),owt=Ly().IMAGE_URL_PREFIX;w3e.exports=function(t,r){function n(o,s){return nwt.coerce(t,r,awt,o,s)}n("source"),r.source&&!r.source.match(owt)&&delete r.source,r._hasSource=!!r.source;var i=n("z");if(r._hasZ=!(i===void 0||!i.length||!i[0]||!i[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}n("x0"),n("y0"),n("dx"),n("dy");var a;r._hasZ?(n("colormodel","rgb"),a=b3e.colormodel[r.colormodel],n("zmin",a.zminDflt||a.min),n("zmax",a.zmaxDflt||a.max)):r._hasSource&&(r.colormodel="rgba256",a=b3e.colormodel[r.colormodel],r.zmin=a.zminDflt,r.zmax=a.zmaxDflt),n("zsmooth"),n("text"),n("hovertext"),n("hovertemplate"),r._length=null,n("zorder")}});var Uy=ye((dur,rG)=>{typeof Object.create=="function"?rG.exports=function(t,r){r&&(t.super_=r,t.prototype=Object.create(r.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}))}:rG.exports=function(t,r){if(r){t.super_=r;var n=function(){};n.prototype=r.prototype,t.prototype=new n,t.prototype.constructor=t}}});var iG=ye((vur,A3e)=>{A3e.exports=vb().EventEmitter});var E3e=ye(F8=>{"use strict";F8.byteLength=lwt;F8.toByteArray=cwt;F8.fromByteArray=dwt;var Fm=[],Z0=[],swt=typeof Uint8Array!="undefined"?Uint8Array:Array,nG="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(s2=0,S3e=nG.length;s2<S3e;++s2)Fm[s2]=nG[s2],Z0[nG.charCodeAt(s2)]=s2;var s2,S3e;Z0[45]=62;Z0[95]=63;function M3e(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var n=r===t?0:4-r%4;return[r,n]}function lwt(e){var t=M3e(e),r=t[0],n=t[1];return(r+n)*3/4-n}function uwt(e,t,r){return(t+r)*3/4-r}function cwt(e){var t,r=M3e(e),n=r[0],i=r[1],a=new swt(uwt(e,n,i)),o=0,s=i>0?n-4:n,l;for(l=0;l<s;l+=4)t=Z0[e.charCodeAt(l)]<<18|Z0[e.charCodeAt(l+1)]<<12|Z0[e.charCodeAt(l+2)]<<6|Z0[e.charCodeAt(l+3)],a[o++]=t>>16&255,a[o++]=t>>8&255,a[o++]=t&255;return i===2&&(t=Z0[e.charCodeAt(l)]<<2|Z0[e.charCodeAt(l+1)]>>4,a[o++]=t&255),i===1&&(t=Z0[e.charCodeAt(l)]<<10|Z0[e.charCodeAt(l+1)]<<4|Z0[e.charCodeAt(l+2)]>>2,a[o++]=t>>8&255,a[o++]=t&255),a}function fwt(e){return Fm[e>>18&63]+Fm[e>>12&63]+Fm[e>>6&63]+Fm[e&63]}function hwt(e,t,r){for(var n,i=[],a=t;a<r;a+=3)n=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(e[a+2]&255),i.push(fwt(n));return i.join("")}function dwt(e){for(var t,r=e.length,n=r%3,i=[],a=16383,o=0,s=r-n;o<s;o+=a)i.push(hwt(e,o,o+a>s?s:o+a));return n===1?(t=e[r-1],i.push(Fm[t>>2]+Fm[t<<4&63]+"==")):n===2&&(t=(e[r-2]<<8)+e[r-1],i.push(Fm[t>>10]+Fm[t>>4&63]+Fm[t<<2&63]+"=")),i.join("")}});var k3e=ye(aG=>{aG.read=function(e,t,r,n,i){var a,o,s=i*8-n-1,l=(1<<s)-1,u=l>>1,c=-7,f=r?i-1:0,h=r?-1:1,d=e[t+f];for(f+=h,a=d&(1<<-c)-1,d>>=-c,c+=s;c>0;a=a*256+e[t+f],f+=h,c-=8);for(o=a&(1<<-c)-1,a>>=-c,c+=n;c>0;o=o*256+e[t+f],f+=h,c-=8);if(a===0)a=1-u;else{if(a===l)return o?NaN:(d?-1:1)*(1/0);o=o+Math.pow(2,n),a=a-u}return(d?-1:1)*o*Math.pow(2,a-n)};aG.write=function(e,t,r,n,i,a){var o,s,l,u=a*8-i-1,c=(1<<u)-1,f=c>>1,h=i===23?Math.pow(2,-24)-Math.pow(2,-77):0,d=n?0:a-1,v=n?1:-1,x=t<0||t===0&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,o=c):(o=Math.floor(Math.log(t)/Math.LN2),t*(l=Math.pow(2,-o))<1&&(o--,l*=2),o+f>=1?t+=h/l:t+=h*Math.pow(2,1-f),t*l>=2&&(o++,l/=2),o+f>=c?(s=0,o=c):o+f>=1?(s=(t*l-1)*Math.pow(2,i),o=o+f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),o=0));i>=8;e[r+d]=s&255,d+=v,s/=256,i-=8);for(o=o<<i|s,u+=i;u>0;e[r+d]=o&255,d+=v,o/=256,u-=8);e[r+d-v]|=x*128}});var u2=ye(KT=>{"use strict";var oG=E3e(),XT=k3e(),C3e=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;KT.Buffer=In;KT.SlowBuffer=_wt;KT.INSPECT_MAX_BYTES=50;var q8=2147483647;KT.kMaxLength=q8;In.TYPED_ARRAY_SUPPORT=vwt();!In.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function vwt(){try{let e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),e.foo()===42}catch(e){return!1}}Object.defineProperty(In.prototype,"parent",{enumerable:!0,get:function(){if(In.isBuffer(this))return this.buffer}});Object.defineProperty(In.prototype,"offset",{enumerable:!0,get:function(){if(In.isBuffer(this))return this.byteOffset}});function Vy(e){if(e>q8)throw new RangeError('The value "'+e+'" is invalid for option "size"');let t=new Uint8Array(e);return Object.setPrototypeOf(t,In.prototype),t}function In(e,t,r){if(typeof e=="number"){if(typeof t=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return cG(e)}return R3e(e,t,r)}In.poolSize=8192;function R3e(e,t,r){if(typeof e=="string")return gwt(e,t);if(ArrayBuffer.isView(e))return mwt(e);if(e==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(qm(e,ArrayBuffer)||e&&qm(e.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(qm(e,SharedArrayBuffer)||e&&qm(e.buffer,SharedArrayBuffer)))return lG(e,t,r);if(typeof e=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let n=e.valueOf&&e.valueOf();if(n!=null&&n!==e)return In.from(n,t,r);let i=ywt(e);if(i)return i;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof e[Symbol.toPrimitive]=="function")return In.from(e[Symbol.toPrimitive]("string"),t,r);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}In.from=function(e,t,r){return R3e(e,t,r)};Object.setPrototypeOf(In.prototype,Uint8Array.prototype);Object.setPrototypeOf(In,Uint8Array);function D3e(e){if(typeof e!="number")throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function pwt(e,t,r){return D3e(e),e<=0?Vy(e):t!==void 0?typeof r=="string"?Vy(e).fill(t,r):Vy(e).fill(t):Vy(e)}In.alloc=function(e,t,r){return pwt(e,t,r)};function cG(e){return D3e(e),Vy(e<0?0:fG(e)|0)}In.allocUnsafe=function(e){return cG(e)};In.allocUnsafeSlow=function(e){return cG(e)};function gwt(e,t){if((typeof t!="string"||t==="")&&(t="utf8"),!In.isEncoding(t))throw new TypeError("Unknown encoding: "+t);let r=z3e(e,t)|0,n=Vy(r),i=n.write(e,t);return i!==r&&(n=n.slice(0,i)),n}function sG(e){let t=e.length<0?0:fG(e.length)|0,r=Vy(t);for(let n=0;n<t;n+=1)r[n]=e[n]&255;return r}function mwt(e){if(qm(e,Uint8Array)){let t=new Uint8Array(e);return lG(t.buffer,t.byteOffset,t.byteLength)}return sG(e)}function lG(e,t,r){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(r||0))throw new RangeError('"length" is outside of buffer bounds');let n;return t===void 0&&r===void 0?n=new Uint8Array(e):r===void 0?n=new Uint8Array(e,t):n=new Uint8Array(e,t,r),Object.setPrototypeOf(n,In.prototype),n}function ywt(e){if(In.isBuffer(e)){let t=fG(e.length)|0,r=Vy(t);return r.length===0||e.copy(r,0,0,t),r}if(e.length!==void 0)return typeof e.length!="number"||dG(e.length)?Vy(0):sG(e);if(e.type==="Buffer"&&Array.isArray(e.data))return sG(e.data)}function fG(e){if(e>=q8)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+q8.toString(16)+" bytes");return e|0}function _wt(e){return+e!=e&&(e=0),In.alloc(+e)}In.isBuffer=function(t){return t!=null&&t._isBuffer===!0&&t!==In.prototype};In.compare=function(t,r){if(qm(t,Uint8Array)&&(t=In.from(t,t.offset,t.byteLength)),qm(r,Uint8Array)&&(r=In.from(r,r.offset,r.byteLength)),!In.isBuffer(t)||!In.isBuffer(r))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===r)return 0;let n=t.length,i=r.length;for(let a=0,o=Math.min(n,i);a<o;++a)if(t[a]!==r[a]){n=t[a],i=r[a];break}return n<i?-1:i<n?1:0};In.isEncoding=function(t){switch(String(t).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}};In.concat=function(t,r){if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(t.length===0)return In.alloc(0);let n;if(r===void 0)for(r=0,n=0;n<t.length;++n)r+=t[n].length;let i=In.allocUnsafe(r),a=0;for(n=0;n<t.length;++n){let o=t[n];if(qm(o,Uint8Array))a+o.length>i.length?(In.isBuffer(o)||(o=In.from(o)),o.copy(i,a)):Uint8Array.prototype.set.call(i,o,a);else if(In.isBuffer(o))o.copy(i,a);else throw new TypeError('"list" argument must be an Array of Buffers');a+=o.length}return i};function z3e(e,t){if(In.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||qm(e,ArrayBuffer))return e.byteLength;if(typeof e!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);let r=e.length,n=arguments.length>2&&arguments[2]===!0;if(!n&&r===0)return 0;let i=!1;for(;;)switch(t){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return uG(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return r*2;case"hex":return r>>>1;case"base64":return G3e(e).length;default:if(i)return n?-1:uG(e).length;t=(""+t).toLowerCase(),i=!0}}In.byteLength=z3e;function xwt(e,t,r){let n=!1;if((t===void 0||t<0)&&(t=0),t>this.length||((r===void 0||r>this.length)&&(r=this.length),r<=0)||(r>>>=0,t>>>=0,r<=t))return"";for(e||(e="utf8");;)switch(e){case"hex":return Lwt(this,t,r);case"utf8":case"utf-8":return q3e(this,t,r);case"ascii":return kwt(this,t,r);case"latin1":case"binary":return Cwt(this,t,r);case"base64":return Mwt(this,t,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Pwt(this,t,r);default:if(n)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),n=!0}}In.prototype._isBuffer=!0;function l2(e,t,r){let n=e[t];e[t]=e[r],e[r]=n}In.prototype.swap16=function(){let t=this.length;if(t%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let r=0;r<t;r+=2)l2(this,r,r+1);return this};In.prototype.swap32=function(){let t=this.length;if(t%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let r=0;r<t;r+=4)l2(this,r,r+3),l2(this,r+1,r+2);return this};In.prototype.swap64=function(){let t=this.length;if(t%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let r=0;r<t;r+=8)l2(this,r,r+7),l2(this,r+1,r+6),l2(this,r+2,r+5),l2(this,r+3,r+4);return this};In.prototype.toString=function(){let t=this.length;return t===0?"":arguments.length===0?q3e(this,0,t):xwt.apply(this,arguments)};In.prototype.toLocaleString=In.prototype.toString;In.prototype.equals=function(t){if(!In.isBuffer(t))throw new TypeError("Argument must be a Buffer");return this===t?!0:In.compare(this,t)===0};In.prototype.inspect=function(){let t="",r=KT.INSPECT_MAX_BYTES;return t=this.toString("hex",0,r).replace(/(.{2})/g,"$1 ").trim(),this.length>r&&(t+=" ... "),"<Buffer "+t+">"};C3e&&(In.prototype[C3e]=In.prototype.inspect);In.prototype.compare=function(t,r,n,i,a){if(qm(t,Uint8Array)&&(t=In.from(t,t.offset,t.byteLength)),!In.isBuffer(t))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof t);if(r===void 0&&(r=0),n===void 0&&(n=t?t.length:0),i===void 0&&(i=0),a===void 0&&(a=this.length),r<0||n>t.length||i<0||a>this.length)throw new RangeError("out of range index");if(i>=a&&r>=n)return 0;if(i>=a)return-1;if(r>=n)return 1;if(r>>>=0,n>>>=0,i>>>=0,a>>>=0,this===t)return 0;let o=a-i,s=n-r,l=Math.min(o,s),u=this.slice(i,a),c=t.slice(r,n);for(let f=0;f<l;++f)if(u[f]!==c[f]){o=u[f],s=c[f];break}return o<s?-1:s<o?1:0};function F3e(e,t,r,n,i){if(e.length===0)return-1;if(typeof r=="string"?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),r=+r,dG(r)&&(r=i?0:e.length-1),r<0&&(r=e.length+r),r>=e.length){if(i)return-1;r=e.length-1}else if(r<0)if(i)r=0;else return-1;if(typeof t=="string"&&(t=In.from(t,n)),In.isBuffer(t))return t.length===0?-1:L3e(e,t,r,n,i);if(typeof t=="number")return t=t&255,typeof Uint8Array.prototype.indexOf=="function"?i?Uint8Array.prototype.indexOf.call(e,t,r):Uint8Array.prototype.lastIndexOf.call(e,t,r):L3e(e,[t],r,n,i);throw new TypeError("val must be string, number or Buffer")}function L3e(e,t,r,n,i){let a=1,o=e.length,s=t.length;if(n!==void 0&&(n=String(n).toLowerCase(),n==="ucs2"||n==="ucs-2"||n==="utf16le"||n==="utf-16le")){if(e.length<2||t.length<2)return-1;a=2,o/=2,s/=2,r/=2}function l(c,f){return a===1?c[f]:c.readUInt16BE(f*a)}let u;if(i){let c=-1;for(u=r;u<o;u++)if(l(e,u)===l(t,c===-1?0:u-c)){if(c===-1&&(c=u),u-c+1===s)return c*a}else c!==-1&&(u-=u-c),c=-1}else for(r+s>o&&(r=o-s),u=r;u>=0;u--){let c=!0;for(let f=0;f<s;f++)if(l(e,u+f)!==l(t,f)){c=!1;break}if(c)return u}return-1}In.prototype.includes=function(t,r,n){return this.indexOf(t,r,n)!==-1};In.prototype.indexOf=function(t,r,n){return F3e(this,t,r,n,!0)};In.prototype.lastIndexOf=function(t,r,n){return F3e(this,t,r,n,!1)};function bwt(e,t,r,n){r=Number(r)||0;let i=e.length-r;n?(n=Number(n),n>i&&(n=i)):n=i;let a=t.length;n>a/2&&(n=a/2);let o;for(o=0;o<n;++o){let s=parseInt(t.substr(o*2,2),16);if(dG(s))return o;e[r+o]=s}return o}function wwt(e,t,r,n){return O8(uG(t,e.length-r),e,r,n)}function Twt(e,t,r,n){return O8(zwt(t),e,r,n)}function Awt(e,t,r,n){return O8(G3e(t),e,r,n)}function Swt(e,t,r,n){return O8(Fwt(t,e.length-r),e,r,n)}In.prototype.write=function(t,r,n,i){if(r===void 0)i="utf8",n=this.length,r=0;else if(n===void 0&&typeof r=="string")i=r,n=this.length,r=0;else if(isFinite(r))r=r>>>0,isFinite(n)?(n=n>>>0,i===void 0&&(i="utf8")):(i=n,n=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let a=this.length-r;if((n===void 0||n>a)&&(n=a),t.length>0&&(n<0||r<0)||r>this.length)throw new RangeError("Attempt to write outside buffer bounds");i||(i="utf8");let o=!1;for(;;)switch(i){case"hex":return bwt(this,t,r,n);case"utf8":case"utf-8":return wwt(this,t,r,n);case"ascii":case"latin1":case"binary":return Twt(this,t,r,n);case"base64":return Awt(this,t,r,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Swt(this,t,r,n);default:if(o)throw new TypeError("Unknown encoding: "+i);i=(""+i).toLowerCase(),o=!0}};In.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Mwt(e,t,r){return t===0&&r===e.length?oG.fromByteArray(e):oG.fromByteArray(e.slice(t,r))}function q3e(e,t,r){r=Math.min(e.length,r);let n=[],i=t;for(;i<r;){let a=e[i],o=null,s=a>239?4:a>223?3:a>191?2:1;if(i+s<=r){let l,u,c,f;switch(s){case 1:a<128&&(o=a);break;case 2:l=e[i+1],(l&192)===128&&(f=(a&31)<<6|l&63,f>127&&(o=f));break;case 3:l=e[i+1],u=e[i+2],(l&192)===128&&(u&192)===128&&(f=(a&15)<<12|(l&63)<<6|u&63,f>2047&&(f<55296||f>57343)&&(o=f));break;case 4:l=e[i+1],u=e[i+2],c=e[i+3],(l&192)===128&&(u&192)===128&&(c&192)===128&&(f=(a&15)<<18|(l&63)<<12|(u&63)<<6|c&63,f>65535&&f<1114112&&(o=f))}}o===null?(o=65533,s=1):o>65535&&(o-=65536,n.push(o>>>10&1023|55296),o=56320|o&1023),n.push(o),i+=s}return Ewt(n)}var P3e=4096;function Ewt(e){let t=e.length;if(t<=P3e)return String.fromCharCode.apply(String,e);let r="",n=0;for(;n<t;)r+=String.fromCharCode.apply(String,e.slice(n,n+=P3e));return r}function kwt(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;i<r;++i)n+=String.fromCharCode(e[i]&127);return n}function Cwt(e,t,r){let n="";r=Math.min(e.length,r);for(let i=t;i<r;++i)n+=String.fromCharCode(e[i]);return n}function Lwt(e,t,r){let n=e.length;(!t||t<0)&&(t=0),(!r||r<0||r>n)&&(r=n);let i="";for(let a=t;a<r;++a)i+=qwt[e[a]];return i}function Pwt(e,t,r){let n=e.slice(t,r),i="";for(let a=0;a<n.length-1;a+=2)i+=String.fromCharCode(n[a]+n[a+1]*256);return i}In.prototype.slice=function(t,r){let n=this.length;t=~~t,r=r===void 0?n:~~r,t<0?(t+=n,t<0&&(t=0)):t>n&&(t=n),r<0?(r+=n,r<0&&(r=0)):r>n&&(r=n),r<t&&(r=t);let i=this.subarray(t,r);return Object.setPrototypeOf(i,In.prototype),i};function $d(e,t,r){if(e%1!==0||e<0)throw new RangeError("offset is not uint");if(e+t>r)throw new RangeError("Trying to access beyond buffer length")}In.prototype.readUintLE=In.prototype.readUIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||$d(t,r,this.length);let i=this[t],a=1,o=0;for(;++o<r&&(a*=256);)i+=this[t+o]*a;return i};In.prototype.readUintBE=In.prototype.readUIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||$d(t,r,this.length);let i=this[t+--r],a=1;for(;r>0&&(a*=256);)i+=this[t+--r]*a;return i};In.prototype.readUint8=In.prototype.readUInt8=function(t,r){return t=t>>>0,r||$d(t,1,this.length),this[t]};In.prototype.readUint16LE=In.prototype.readUInt16LE=function(t,r){return t=t>>>0,r||$d(t,2,this.length),this[t]|this[t+1]<<8};In.prototype.readUint16BE=In.prototype.readUInt16BE=function(t,r){return t=t>>>0,r||$d(t,2,this.length),this[t]<<8|this[t+1]};In.prototype.readUint32LE=In.prototype.readUInt32LE=function(t,r){return t=t>>>0,r||$d(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+this[t+3]*16777216};In.prototype.readUint32BE=In.prototype.readUInt32BE=function(t,r){return t=t>>>0,r||$d(t,4,this.length),this[t]*16777216+(this[t+1]<<16|this[t+2]<<8|this[t+3])};In.prototype.readBigUInt64LE=I_(function(t){t=t>>>0,YT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&z4(t,this.length-8);let i=r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24,a=this[++t]+this[++t]*2**8+this[++t]*2**16+n*2**24;return BigInt(i)+(BigInt(a)<<BigInt(32))});In.prototype.readBigUInt64BE=I_(function(t){t=t>>>0,YT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&z4(t,this.length-8);let i=r*2**24+this[++t]*2**16+this[++t]*2**8+this[++t],a=this[++t]*2**24+this[++t]*2**16+this[++t]*2**8+n;return(BigInt(i)<<BigInt(32))+BigInt(a)});In.prototype.readIntLE=function(t,r,n){t=t>>>0,r=r>>>0,n||$d(t,r,this.length);let i=this[t],a=1,o=0;for(;++o<r&&(a*=256);)i+=this[t+o]*a;return a*=128,i>=a&&(i-=Math.pow(2,8*r)),i};In.prototype.readIntBE=function(t,r,n){t=t>>>0,r=r>>>0,n||$d(t,r,this.length);let i=r,a=1,o=this[t+--i];for(;i>0&&(a*=256);)o+=this[t+--i]*a;return a*=128,o>=a&&(o-=Math.pow(2,8*r)),o};In.prototype.readInt8=function(t,r){return t=t>>>0,r||$d(t,1,this.length),this[t]&128?(255-this[t]+1)*-1:this[t]};In.prototype.readInt16LE=function(t,r){t=t>>>0,r||$d(t,2,this.length);let n=this[t]|this[t+1]<<8;return n&32768?n|4294901760:n};In.prototype.readInt16BE=function(t,r){t=t>>>0,r||$d(t,2,this.length);let n=this[t+1]|this[t]<<8;return n&32768?n|4294901760:n};In.prototype.readInt32LE=function(t,r){return t=t>>>0,r||$d(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24};In.prototype.readInt32BE=function(t,r){return t=t>>>0,r||$d(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]};In.prototype.readBigInt64LE=I_(function(t){t=t>>>0,YT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&z4(t,this.length-8);let i=this[t+4]+this[t+5]*2**8+this[t+6]*2**16+(n<<24);return(BigInt(i)<<BigInt(32))+BigInt(r+this[++t]*2**8+this[++t]*2**16+this[++t]*2**24)});In.prototype.readBigInt64BE=I_(function(t){t=t>>>0,YT(t,"offset");let r=this[t],n=this[t+7];(r===void 0||n===void 0)&&z4(t,this.length-8);let i=(r<<24)+this[++t]*2**16+this[++t]*2**8+this[++t];return(BigInt(i)<<BigInt(32))+BigInt(this[++t]*2**24+this[++t]*2**16+this[++t]*2**8+n)});In.prototype.readFloatLE=function(t,r){return t=t>>>0,r||$d(t,4,this.length),XT.read(this,t,!0,23,4)};In.prototype.readFloatBE=function(t,r){return t=t>>>0,r||$d(t,4,this.length),XT.read(this,t,!1,23,4)};In.prototype.readDoubleLE=function(t,r){return t=t>>>0,r||$d(t,8,this.length),XT.read(this,t,!0,52,8)};In.prototype.readDoubleBE=function(t,r){return t=t>>>0,r||$d(t,8,this.length),XT.read(this,t,!1,52,8)};function Rp(e,t,r,n,i,a){if(!In.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||t<a)throw new RangeError('"value" argument is out of bounds');if(r+n>e.length)throw new RangeError("Index out of range")}In.prototype.writeUintLE=In.prototype.writeUIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=1,o=0;for(this[r]=t&255;++o<n&&(a*=256);)this[r+o]=t/a&255;return r+n};In.prototype.writeUintBE=In.prototype.writeUIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,n=n>>>0,!i){let s=Math.pow(2,8*n)-1;Rp(this,t,r,n,s,0)}let a=n-1,o=1;for(this[r+a]=t&255;--a>=0&&(o*=256);)this[r+a]=t/o&255;return r+n};In.prototype.writeUint8=In.prototype.writeUInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,255,0),this[r]=t&255,r+1};In.prototype.writeUint16LE=In.prototype.writeUInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t&255,this[r+1]=t>>>8,r+2};In.prototype.writeUint16BE=In.prototype.writeUInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,65535,0),this[r]=t>>>8,this[r+1]=t&255,r+2};In.prototype.writeUint32LE=In.prototype.writeUInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r+3]=t>>>24,this[r+2]=t>>>16,this[r+1]=t>>>8,this[r]=t&255,r+4};In.prototype.writeUint32BE=In.prototype.writeUInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,4294967295,0),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};function O3e(e,t,r,n,i){H3e(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a,a=a>>8,e[r++]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,o=o>>8,e[r++]=o,r}function B3e(e,t,r,n,i){H3e(t,n,i,e,r,7);let a=Number(t&BigInt(4294967295));e[r+7]=a,a=a>>8,e[r+6]=a,a=a>>8,e[r+5]=a,a=a>>8,e[r+4]=a;let o=Number(t>>BigInt(32)&BigInt(4294967295));return e[r+3]=o,o=o>>8,e[r+2]=o,o=o>>8,e[r+1]=o,o=o>>8,e[r]=o,r+8}In.prototype.writeBigUInt64LE=I_(function(t,r=0){return O3e(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});In.prototype.writeBigUInt64BE=I_(function(t,r=0){return B3e(this,t,r,BigInt(0),BigInt("0xffffffffffffffff"))});In.prototype.writeIntLE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=0,o=1,s=0;for(this[r]=t&255;++a<n&&(o*=256);)t<0&&s===0&&this[r+a-1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};In.prototype.writeIntBE=function(t,r,n,i){if(t=+t,r=r>>>0,!i){let l=Math.pow(2,8*n-1);Rp(this,t,r,n,l-1,-l)}let a=n-1,o=1,s=0;for(this[r+a]=t&255;--a>=0&&(o*=256);)t<0&&s===0&&this[r+a+1]!==0&&(s=1),this[r+a]=(t/o>>0)-s&255;return r+n};In.prototype.writeInt8=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,1,127,-128),t<0&&(t=255+t+1),this[r]=t&255,r+1};In.prototype.writeInt16LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t&255,this[r+1]=t>>>8,r+2};In.prototype.writeInt16BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,2,32767,-32768),this[r]=t>>>8,this[r+1]=t&255,r+2};In.prototype.writeInt32LE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),this[r]=t&255,this[r+1]=t>>>8,this[r+2]=t>>>16,this[r+3]=t>>>24,r+4};In.prototype.writeInt32BE=function(t,r,n){return t=+t,r=r>>>0,n||Rp(this,t,r,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[r]=t>>>24,this[r+1]=t>>>16,this[r+2]=t>>>8,this[r+3]=t&255,r+4};In.prototype.writeBigInt64LE=I_(function(t,r=0){return O3e(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});In.prototype.writeBigInt64BE=I_(function(t,r=0){return B3e(this,t,r,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function N3e(e,t,r,n,i,a){if(r+n>e.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function U3e(e,t,r,n,i){return t=+t,r=r>>>0,i||N3e(e,t,r,4,34028234663852886e22,-34028234663852886e22),XT.write(e,t,r,n,23,4),r+4}In.prototype.writeFloatLE=function(t,r,n){return U3e(this,t,r,!0,n)};In.prototype.writeFloatBE=function(t,r,n){return U3e(this,t,r,!1,n)};function V3e(e,t,r,n,i){return t=+t,r=r>>>0,i||N3e(e,t,r,8,17976931348623157e292,-17976931348623157e292),XT.write(e,t,r,n,52,8),r+8}In.prototype.writeDoubleLE=function(t,r,n){return V3e(this,t,r,!0,n)};In.prototype.writeDoubleBE=function(t,r,n){return V3e(this,t,r,!1,n)};In.prototype.copy=function(t,r,n,i){if(!In.isBuffer(t))throw new TypeError("argument should be a Buffer");if(n||(n=0),!i&&i!==0&&(i=this.length),r>=t.length&&(r=t.length),r||(r=0),i>0&&i<n&&(i=n),i===n||t.length===0||this.length===0)return 0;if(r<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(i<0)throw new RangeError("sourceEnd out of bounds");i>this.length&&(i=this.length),t.length-r<i-n&&(i=t.length-r+n);let a=i-n;return this===t&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(r,n,i):Uint8Array.prototype.set.call(t,this.subarray(n,i),r),a};In.prototype.fill=function(t,r,n,i){if(typeof t=="string"){if(typeof r=="string"?(i=r,r=0,n=this.length):typeof n=="string"&&(i=n,n=this.length),i!==void 0&&typeof i!="string")throw new TypeError("encoding must be a string");if(typeof i=="string"&&!In.isEncoding(i))throw new TypeError("Unknown encoding: "+i);if(t.length===1){let o=t.charCodeAt(0);(i==="utf8"&&o<128||i==="latin1")&&(t=o)}}else typeof t=="number"?t=t&255:typeof t=="boolean"&&(t=Number(t));if(r<0||this.length<r||this.length<n)throw new RangeError("Out of range index");if(n<=r)return this;r=r>>>0,n=n===void 0?this.length:n>>>0,t||(t=0);let a;if(typeof t=="number")for(a=r;a<n;++a)this[a]=t;else{let o=In.isBuffer(t)?t:In.from(t,i),s=o.length;if(s===0)throw new TypeError('The value "'+t+'" is invalid for argument "value"');for(a=0;a<n-r;++a)this[a+r]=o[a%s]}return this};var ZT={};function hG(e,t,r){ZT[e]=class extends r{constructor(){super(),Object.defineProperty(this,"message",{value:t.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${e}]`,this.stack,delete this.name}get code(){return e}set code(i){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:i,writable:!0})}toString(){return`${this.name} [${e}]: ${this.message}`}}}hG("ERR_BUFFER_OUT_OF_BOUNDS",function(e){return e?`${e} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError);hG("ERR_INVALID_ARG_TYPE",function(e,t){return`The "${e}" argument must be of type number. Received type ${typeof t}`},TypeError);hG("ERR_OUT_OF_RANGE",function(e,t,r){let n=`The value of "${e}" is out of range.`,i=r;return Number.isInteger(r)&&Math.abs(r)>2**32?i=I3e(String(r)):typeof r=="bigint"&&(i=String(r),(r>BigInt(2)**BigInt(32)||r<-(BigInt(2)**BigInt(32)))&&(i=I3e(i)),i+="n"),n+=` It must be ${t}. Received ${i}`,n},RangeError);function I3e(e){let t="",r=e.length,n=e[0]==="-"?1:0;for(;r>=n+4;r-=3)t=`_${e.slice(r-3,r)}${t}`;return`${e.slice(0,r)}${t}`}function Iwt(e,t,r){YT(t,"offset"),(e[t]===void 0||e[t+r]===void 0)&&z4(t,e.length-(r+1))}function H3e(e,t,r,n,i,a){if(e>r||e<t){let o=typeof t=="bigint"?"n":"",s;throw a>3?t===0||t===BigInt(0)?s=`>= 0${o} and < 2${o} ** ${(a+1)*8}${o}`:s=`>= -(2${o} ** ${(a+1)*8-1}${o}) and < 2 ** ${(a+1)*8-1}${o}`:s=`>= ${t}${o} and <= ${r}${o}`,new ZT.ERR_OUT_OF_RANGE("value",s,e)}Iwt(n,i,a)}function YT(e,t){if(typeof e!="number")throw new ZT.ERR_INVALID_ARG_TYPE(t,"number",e)}function z4(e,t,r){throw Math.floor(e)!==e?(YT(e,r),new ZT.ERR_OUT_OF_RANGE(r||"offset","an integer",e)):t<0?new ZT.ERR_BUFFER_OUT_OF_BOUNDS:new ZT.ERR_OUT_OF_RANGE(r||"offset",`>= ${r?1:0} and <= ${t}`,e)}var Rwt=/[^+/0-9A-Za-z-_]/g;function Dwt(e){if(e=e.split("=")[0],e=e.trim().replace(Rwt,""),e.length<2)return"";for(;e.length%4!==0;)e=e+"=";return e}function uG(e,t){t=t||1/0;let r,n=e.length,i=null,a=[];for(let o=0;o<n;++o){if(r=e.charCodeAt(o),r>55295&&r<57344){if(!i){if(r>56319){(t-=3)>-1&&a.push(239,191,189);continue}else if(o+1===n){(t-=3)>-1&&a.push(239,191,189);continue}i=r;continue}if(r<56320){(t-=3)>-1&&a.push(239,191,189),i=r;continue}r=(i-55296<<10|r-56320)+65536}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,r<128){if((t-=1)<0)break;a.push(r)}else if(r<2048){if((t-=2)<0)break;a.push(r>>6|192,r&63|128)}else if(r<65536){if((t-=3)<0)break;a.push(r>>12|224,r>>6&63|128,r&63|128)}else if(r<1114112){if((t-=4)<0)break;a.push(r>>18|240,r>>12&63|128,r>>6&63|128,r&63|128)}else throw new Error("Invalid code point")}return a}function zwt(e){let t=[];for(let r=0;r<e.length;++r)t.push(e.charCodeAt(r)&255);return t}function Fwt(e,t){let r,n,i,a=[];for(let o=0;o<e.length&&!((t-=2)<0);++o)r=e.charCodeAt(o),n=r>>8,i=r%256,a.push(i),a.push(n);return a}function G3e(e){return oG.toByteArray(Dwt(e))}function O8(e,t,r,n){let i;for(i=0;i<n&&!(i+r>=t.length||i>=e.length);++i)t[i+r]=e[i];return i}function qm(e,t){return e instanceof t||e!=null&&e.constructor!=null&&e.constructor.name!=null&&e.constructor.name===t.name}function dG(e){return e!==e}var qwt=function(){let e="0123456789abcdef",t=new Array(256);for(let r=0;r<16;++r){let n=r*16;for(let i=0;i<16;++i)t[n+i]=e[r]+e[i]}return t}();function I_(e){return typeof BigInt=="undefined"?Owt:e}function Owt(){throw new Error("BigInt not supported")}});var B8=ye((_ur,j3e)=>{"use strict";j3e.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var t={},r=Symbol("test"),n=Object(r);if(typeof r=="string"||Object.prototype.toString.call(r)!=="[object Symbol]"||Object.prototype.toString.call(n)!=="[object Symbol]")return!1;var i=42;t[r]=i;for(r in t)return!1;if(typeof Object.keys=="function"&&Object.keys(t).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(t).length!==0)return!1;var a=Object.getOwnPropertySymbols(t);if(a.length!==1||a[0]!==r||!Object.prototype.propertyIsEnumerable.call(t,r))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var o=Object.getOwnPropertyDescriptor(t,r);if(o.value!==i||o.enumerable!==!0)return!1}return!0}});var F4=ye((xur,W3e)=>{"use strict";var Bwt=B8();W3e.exports=function(){return Bwt()&&!!Symbol.toStringTag}});var X3e=ye((bur,Z3e)=>{"use strict";Z3e.exports=Error});var K3e=ye((wur,Y3e)=>{"use strict";Y3e.exports=EvalError});var $3e=ye((Tur,J3e)=>{"use strict";J3e.exports=RangeError});var eTe=ye((Aur,Q3e)=>{"use strict";Q3e.exports=ReferenceError});var vG=ye((Sur,tTe)=>{"use strict";tTe.exports=SyntaxError});var q4=ye((Mur,rTe)=>{"use strict";rTe.exports=TypeError});var nTe=ye((Eur,iTe)=>{"use strict";iTe.exports=URIError});var sTe=ye((kur,oTe)=>{"use strict";var aTe=typeof Symbol!="undefined"&&Symbol,Nwt=B8();oTe.exports=function(){return typeof aTe!="function"||typeof Symbol!="function"||typeof aTe("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:Nwt()}});var cTe=ye((Cur,uTe)=>{"use strict";var lTe={foo:{}},Uwt=Object;uTe.exports=function(){return{__proto__:lTe}.foo===lTe.foo&&!({__proto__:null}instanceof Uwt)}});var dTe=ye((Lur,hTe)=>{"use strict";var Vwt="Function.prototype.bind called on incompatible ",Hwt=Object.prototype.toString,Gwt=Math.max,jwt="[object Function]",fTe=function(t,r){for(var n=[],i=0;i<t.length;i+=1)n[i]=t[i];for(var a=0;a<r.length;a+=1)n[a+t.length]=r[a];return n},Wwt=function(t,r){for(var n=[],i=r||0,a=0;i<t.length;i+=1,a+=1)n[a]=t[i];return n},Zwt=function(e,t){for(var r="",n=0;n<e.length;n+=1)r+=e[n],n+1<e.length&&(r+=t);return r};hTe.exports=function(t){var r=this;if(typeof r!="function"||Hwt.apply(r)!==jwt)throw new TypeError(Vwt+r);for(var n=Wwt(arguments,1),i,a=function(){if(this instanceof i){var c=r.apply(this,fTe(n,arguments));return Object(c)===c?c:this}return r.apply(t,fTe(n,arguments))},o=Gwt(0,r.length-n.length),s=[],l=0;l<o;l++)s[l]="$"+l;if(i=Function("binder","return function ("+Zwt(s,",")+"){ return binder.apply(this,arguments); }")(a),r.prototype){var u=function(){};u.prototype=r.prototype,i.prototype=new u,u.prototype=null}return i}});var N8=ye((Pur,vTe)=>{"use strict";var Xwt=dTe();vTe.exports=Function.prototype.bind||Xwt});var gTe=ye((Iur,pTe)=>{"use strict";var Ywt=Function.prototype.call,Kwt=Object.prototype.hasOwnProperty,Jwt=N8();pTe.exports=Jwt.call(Ywt,Kwt)});var t5=ye((Rur,bTe)=>{"use strict";var jl,$wt=X3e(),Qwt=K3e(),e3t=$3e(),t3t=eTe(),e5=vG(),QT=q4(),r3t=nTe(),xTe=Function,pG=function(e){try{return xTe('"use strict"; return ('+e+").constructor;")()}catch(t){}},c2=Object.getOwnPropertyDescriptor;if(c2)try{c2({},"")}catch(e){c2=null}var gG=function(){throw new QT},i3t=c2?function(){try{return arguments.callee,gG}catch(e){try{return c2(arguments,"callee").get}catch(t){return gG}}}():gG,JT=sTe()(),n3t=cTe()(),Qd=Object.getPrototypeOf||(n3t?function(e){return e.__proto__}:null),$T={},a3t=typeof Uint8Array=="undefined"||!Qd?jl:Qd(Uint8Array),f2={__proto__:null,"%AggregateError%":typeof AggregateError=="undefined"?jl:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer=="undefined"?jl:ArrayBuffer,"%ArrayIteratorPrototype%":JT&&Qd?Qd([][Symbol.iterator]()):jl,"%AsyncFromSyncIteratorPrototype%":jl,"%AsyncFunction%":$T,"%AsyncGenerator%":$T,"%AsyncGeneratorFunction%":$T,"%AsyncIteratorPrototype%":$T,"%Atomics%":typeof Atomics=="undefined"?jl:Atomics,"%BigInt%":typeof BigInt=="undefined"?jl:BigInt,"%BigInt64Array%":typeof BigInt64Array=="undefined"?jl:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array=="undefined"?jl:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView=="undefined"?jl:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":$wt,"%eval%":eval,"%EvalError%":Qwt,"%Float32Array%":typeof Float32Array=="undefined"?jl:Float32Array,"%Float64Array%":typeof Float64Array=="undefined"?jl:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry=="undefined"?jl:FinalizationRegistry,"%Function%":xTe,"%GeneratorFunction%":$T,"%Int8Array%":typeof Int8Array=="undefined"?jl:Int8Array,"%Int16Array%":typeof Int16Array=="undefined"?jl:Int16Array,"%Int32Array%":typeof Int32Array=="undefined"?jl:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":JT&&Qd?Qd(Qd([][Symbol.iterator]())):jl,"%JSON%":typeof JSON=="object"?JSON:jl,"%Map%":typeof Map=="undefined"?jl:Map,"%MapIteratorPrototype%":typeof Map=="undefined"||!JT||!Qd?jl:Qd(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise=="undefined"?jl:Promise,"%Proxy%":typeof Proxy=="undefined"?jl:Proxy,"%RangeError%":e3t,"%ReferenceError%":t3t,"%Reflect%":typeof Reflect=="undefined"?jl:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set=="undefined"?jl:Set,"%SetIteratorPrototype%":typeof Set=="undefined"||!JT||!Qd?jl:Qd(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer=="undefined"?jl:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":JT&&Qd?Qd(""[Symbol.iterator]()):jl,"%Symbol%":JT?Symbol:jl,"%SyntaxError%":e5,"%ThrowTypeError%":i3t,"%TypedArray%":a3t,"%TypeError%":QT,"%Uint8Array%":typeof Uint8Array=="undefined"?jl:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray=="undefined"?jl:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array=="undefined"?jl:Uint16Array,"%Uint32Array%":typeof Uint32Array=="undefined"?jl:Uint32Array,"%URIError%":r3t,"%WeakMap%":typeof WeakMap=="undefined"?jl:WeakMap,"%WeakRef%":typeof WeakRef=="undefined"?jl:WeakRef,"%WeakSet%":typeof WeakSet=="undefined"?jl:WeakSet};if(Qd)try{null.error}catch(e){mTe=Qd(Qd(e)),f2["%Error.prototype%"]=mTe}var mTe,o3t=function e(t){var r;if(t==="%AsyncFunction%")r=pG("async function () {}");else if(t==="%GeneratorFunction%")r=pG("function* () {}");else if(t==="%AsyncGeneratorFunction%")r=pG("async function* () {}");else if(t==="%AsyncGenerator%"){var n=e("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if(t==="%AsyncIteratorPrototype%"){var i=e("%AsyncGenerator%");i&&Qd&&(r=Qd(i.prototype))}return f2[t]=r,r},yTe={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},O4=N8(),U8=gTe(),s3t=O4.call(Function.call,Array.prototype.concat),l3t=O4.call(Function.apply,Array.prototype.splice),_Te=O4.call(Function.call,String.prototype.replace),V8=O4.call(Function.call,String.prototype.slice),u3t=O4.call(Function.call,RegExp.prototype.exec),c3t=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,f3t=/\\(\\)?/g,h3t=function(t){var r=V8(t,0,1),n=V8(t,-1);if(r==="%"&&n!=="%")throw new e5("invalid intrinsic syntax, expected closing `%`");if(n==="%"&&r!=="%")throw new e5("invalid intrinsic syntax, expected opening `%`");var i=[];return _Te(t,c3t,function(a,o,s,l){i[i.length]=s?_Te(l,f3t,"$1"):o||a}),i},d3t=function(t,r){var n=t,i;if(U8(yTe,n)&&(i=yTe[n],n="%"+i[0]+"%"),U8(f2,n)){var a=f2[n];if(a===$T&&(a=o3t(n)),typeof a=="undefined"&&!r)throw new QT("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:i,name:n,value:a}}throw new e5("intrinsic "+t+" does not exist!")};bTe.exports=function(t,r){if(typeof t!="string"||t.length===0)throw new QT("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof r!="boolean")throw new QT('"allowMissing" argument must be a boolean');if(u3t(/^%?[^%]*%?$/,t)===null)throw new e5("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=h3t(t),i=n.length>0?n[0]:"",a=d3t("%"+i+"%",r),o=a.name,s=a.value,l=!1,u=a.alias;u&&(i=u[0],l3t(n,s3t([0,1],u)));for(var c=1,f=!0;c<n.length;c+=1){var h=n[c],d=V8(h,0,1),v=V8(h,-1);if((d==='"'||d==="'"||d==="`"||v==='"'||v==="'"||v==="`")&&d!==v)throw new e5("property names with quotes must have matching quotes");if((h==="constructor"||!f)&&(l=!0),i+="."+h,o="%"+i+"%",U8(f2,o))s=f2[o];else if(s!=null){if(!(h in s)){if(!r)throw new QT("base intrinsic for "+t+" exists, but the property is not available.");return}if(c2&&c+1>=n.length){var x=c2(s,h);f=!!x,f&&"get"in x&&!("originalValue"in x.get)?s=x.get:s=s[h]}else f=U8(s,h),s=s[h];f&&!l&&(f2[o]=s)}}return s}});var G8=ye((Dur,wTe)=>{"use strict";var v3t=t5(),H8=v3t("%Object.defineProperty%",!0)||!1;if(H8)try{H8({},"a",{value:1})}catch(e){H8=!1}wTe.exports=H8});var B4=ye((zur,TTe)=>{"use strict";var p3t=t5(),j8=p3t("%Object.getOwnPropertyDescriptor%",!0);if(j8)try{j8([],"length")}catch(e){j8=null}TTe.exports=j8});var ETe=ye((Fur,MTe)=>{"use strict";var ATe=G8(),g3t=vG(),r5=q4(),STe=B4();MTe.exports=function(t,r,n){if(!t||typeof t!="object"&&typeof t!="function")throw new r5("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new r5("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new r5("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new r5("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new r5("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new r5("`loose`, if provided, must be a boolean");var i=arguments.length>3?arguments[3]:null,a=arguments.length>4?arguments[4]:null,o=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,l=!!STe&&STe(t,r);if(ATe)ATe(t,r,{configurable:o===null&&l?l.configurable:!o,enumerable:i===null&&l?l.enumerable:!i,value:n,writable:a===null&&l?l.writable:!a});else if(s||!i&&!a&&!o)t[r]=n;else throw new g3t("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}});var yG=ye((qur,CTe)=>{"use strict";var mG=G8(),kTe=function(){return!!mG};kTe.hasArrayLengthDefineBug=function(){if(!mG)return null;try{return mG([],"length",{value:1}).length!==1}catch(t){return!0}};CTe.exports=kTe});var DTe=ye((Our,RTe)=>{"use strict";var m3t=t5(),LTe=ETe(),y3t=yG()(),PTe=B4(),ITe=q4(),_3t=m3t("%Math.floor%");RTe.exports=function(t,r){if(typeof t!="function")throw new ITe("`fn` is not a function");if(typeof r!="number"||r<0||r>4294967295||_3t(r)!==r)throw new ITe("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],i=!0,a=!0;if("length"in t&&PTe){var o=PTe(t,"length");o&&!o.configurable&&(i=!1),o&&!o.writable&&(a=!1)}return(i||a||!n)&&(y3t?LTe(t,"length",r,!0,!0):LTe(t,"length",r)),t}});var N4=ye((Bur,W8)=>{"use strict";var _G=N8(),Z8=t5(),x3t=DTe(),b3t=q4(),qTe=Z8("%Function.prototype.apply%"),OTe=Z8("%Function.prototype.call%"),BTe=Z8("%Reflect.apply%",!0)||_G.call(OTe,qTe),zTe=G8(),w3t=Z8("%Math.max%");W8.exports=function(t){if(typeof t!="function")throw new b3t("a function is required");var r=BTe(_G,OTe,arguments);return x3t(r,1+w3t(0,t.length-(arguments.length-1)),!0)};var FTe=function(){return BTe(_G,qTe,arguments)};zTe?zTe(W8.exports,"apply",{value:FTe}):W8.exports.apply=FTe});var i5=ye((Nur,VTe)=>{"use strict";var NTe=t5(),UTe=N4(),T3t=UTe(NTe("String.prototype.indexOf"));VTe.exports=function(t,r){var n=NTe(t,!!r);return typeof n=="function"&&T3t(t,".prototype.")>-1?UTe(n):n}});var jTe=ye((Uur,GTe)=>{"use strict";var A3t=F4()(),S3t=i5(),xG=S3t("Object.prototype.toString"),X8=function(t){return A3t&&t&&typeof t=="object"&&Symbol.toStringTag in t?!1:xG(t)==="[object Arguments]"},HTe=function(t){return X8(t)?!0:t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&xG(t)!=="[object Array]"&&xG(t.callee)==="[object Function]"},M3t=function(){return X8(arguments)}();X8.isLegacyArguments=HTe;GTe.exports=M3t?X8:HTe});var XTe=ye((Vur,ZTe)=>{"use strict";var E3t=Object.prototype.toString,k3t=Function.prototype.toString,C3t=/^\s*(?:function)?\*/,WTe=F4()(),bG=Object.getPrototypeOf,L3t=function(){if(!WTe)return!1;try{return Function("return function*() {}")()}catch(e){}},wG;ZTe.exports=function(t){if(typeof t!="function")return!1;if(C3t.test(k3t.call(t)))return!0;if(!WTe){var r=E3t.call(t);return r==="[object GeneratorFunction]"}if(!bG)return!1;if(typeof wG=="undefined"){var n=L3t();wG=n?bG(n):!1}return bG(t)===wG}});var $Te=ye((Hur,JTe)=>{"use strict";var KTe=Function.prototype.toString,n5=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,AG,Y8;if(typeof n5=="function"&&typeof Object.defineProperty=="function")try{AG=Object.defineProperty({},"length",{get:function(){throw Y8}}),Y8={},n5(function(){throw 42},null,AG)}catch(e){e!==Y8&&(n5=null)}else n5=null;var P3t=/^\s*class\b/,SG=function(t){try{var r=KTe.call(t);return P3t.test(r)}catch(n){return!1}},TG=function(t){try{return SG(t)?!1:(KTe.call(t),!0)}catch(r){return!1}},K8=Object.prototype.toString,I3t="[object Object]",R3t="[object Function]",D3t="[object GeneratorFunction]",z3t="[object HTMLAllCollection]",F3t="[object HTML document.all class]",q3t="[object HTMLCollection]",O3t=typeof Symbol=="function"&&!!Symbol.toStringTag,B3t=!(0 in[,]),MG=function(){return!1};typeof document=="object"&&(YTe=document.all,K8.call(YTe)===K8.call(document.all)&&(MG=function(t){if((B3t||!t)&&(typeof t=="undefined"||typeof t=="object"))try{var r=K8.call(t);return(r===z3t||r===F3t||r===q3t||r===I3t)&&t("")==null}catch(n){}return!1}));var YTe;JTe.exports=n5?function(t){if(MG(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;try{n5(t,null,AG)}catch(r){if(r!==Y8)return!1}return!SG(t)&&TG(t)}:function(t){if(MG(t))return!0;if(!t||typeof t!="function"&&typeof t!="object")return!1;if(O3t)return TG(t);if(SG(t))return!1;var r=K8.call(t);return r!==R3t&&r!==D3t&&!/^\[object HTML/.test(r)?!1:TG(t)}});var EG=ye((Gur,e5e)=>{"use strict";var N3t=$Te(),U3t=Object.prototype.toString,QTe=Object.prototype.hasOwnProperty,V3t=function(t,r,n){for(var i=0,a=t.length;i<a;i++)QTe.call(t,i)&&(n==null?r(t[i],i,t):r.call(n,t[i],i,t))},H3t=function(t,r,n){for(var i=0,a=t.length;i<a;i++)n==null?r(t.charAt(i),i,t):r.call(n,t.charAt(i),i,t)},G3t=function(t,r,n){for(var i in t)QTe.call(t,i)&&(n==null?r(t[i],i,t):r.call(n,t[i],i,t))},j3t=function(t,r,n){if(!N3t(r))throw new TypeError("iterator must be a function");var i;arguments.length>=3&&(i=n),U3t.call(t)==="[object Array]"?V3t(t,r,i):typeof t=="string"?H3t(t,r,i):G3t(t,r,i)};e5e.exports=j3t});var CG=ye((jur,t5e)=>{"use strict";var kG=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],W3t=typeof globalThis=="undefined"?window:globalThis;t5e.exports=function(){for(var t=[],r=0;r<kG.length;r++)typeof W3t[kG[r]]=="function"&&(t[t.length]=kG[r]);return t}});var o5e=ye((Wur,a5e)=>{"use strict";var $8=EG(),Z3t=CG(),r5e=N4(),IG=i5(),J8=B4(),X3t=IG("Object.prototype.toString"),n5e=F4()(),i5e=typeof globalThis=="undefined"?window:globalThis,PG=Z3t(),RG=IG("String.prototype.slice"),LG=Object.getPrototypeOf,Y3t=IG("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n<t.length;n+=1)if(t[n]===r)return n;return-1},Q8={__proto__:null};n5e&&J8&&LG?$8(PG,function(e){var t=new i5e[e];if(Symbol.toStringTag in t){var r=LG(t),n=J8(r,Symbol.toStringTag);if(!n){var i=LG(r);n=J8(i,Symbol.toStringTag)}Q8["$"+e]=r5e(n.get)}}):$8(PG,function(e){var t=new i5e[e],r=t.slice||t.set;r&&(Q8["$"+e]=r5e(r))});var K3t=function(t){var r=!1;return $8(Q8,function(n,i){if(!r)try{"$"+n(t)===i&&(r=RG(i,1))}catch(a){}}),r},J3t=function(t){var r=!1;return $8(Q8,function(n,i){if(!r)try{n(t),r=RG(i,1)}catch(a){}}),r};a5e.exports=function(t){if(!t||typeof t!="object")return!1;if(!n5e){var r=RG(X3t(t),8,-1);return Y3t(PG,r)>-1?r:r!=="Object"?!1:J3t(t)}return J8?K3t(t):null}});var h5e=ye((Zur,f5e)=>{"use strict";var s5e=EG(),$3t=CG(),zG=i5(),Q3t=zG("Object.prototype.toString"),l5e=F4()(),eR=B4(),eTt=typeof globalThis=="undefined"?window:globalThis,u5e=$3t(),tTt=zG("Array.prototype.indexOf",!0)||function(t,r){for(var n=0;n<t.length;n+=1)if(t[n]===r)return n;return-1},rTt=zG("String.prototype.slice"),c5e={},DG=Object.getPrototypeOf;l5e&&eR&&DG&&s5e(u5e,function(e){var t=new eTt[e];if(Symbol.toStringTag in t){var r=DG(t),n=eR(r,Symbol.toStringTag);if(!n){var i=DG(r);n=eR(i,Symbol.toStringTag)}c5e[e]=n.get}});var iTt=function(t){var r=!1;return s5e(c5e,function(n,i){if(!r)try{r=n.call(t)===i}catch(a){}}),r};f5e.exports=function(t){if(!t||typeof t!="object")return!1;if(!l5e||!(Symbol.toStringTag in t)){var r=rTt(Q3t(t),8,-1);return tTt(u5e,r)>-1}return eR?iTt(t):!1}});var OG=ye(Bl=>{"use strict";var nTt=jTe(),aTt=XTe(),Hg=o5e(),d5e=h5e();function a5(e){return e.call.bind(e)}var v5e=typeof BigInt!="undefined",p5e=typeof Symbol!="undefined",X0=a5(Object.prototype.toString),oTt=a5(Number.prototype.valueOf),sTt=a5(String.prototype.valueOf),lTt=a5(Boolean.prototype.valueOf);v5e&&(g5e=a5(BigInt.prototype.valueOf));var g5e;p5e&&(m5e=a5(Symbol.prototype.valueOf));var m5e;function V4(e,t){if(typeof e!="object")return!1;try{return t(e),!0}catch(r){return!1}}Bl.isArgumentsObject=nTt;Bl.isGeneratorFunction=aTt;Bl.isTypedArray=d5e;function uTt(e){return typeof Promise!="undefined"&&e instanceof Promise||e!==null&&typeof e=="object"&&typeof e.then=="function"&&typeof e.catch=="function"}Bl.isPromise=uTt;function cTt(e){return typeof ArrayBuffer!="undefined"&&ArrayBuffer.isView?ArrayBuffer.isView(e):d5e(e)||_5e(e)}Bl.isArrayBufferView=cTt;function fTt(e){return Hg(e)==="Uint8Array"}Bl.isUint8Array=fTt;function hTt(e){return Hg(e)==="Uint8ClampedArray"}Bl.isUint8ClampedArray=hTt;function dTt(e){return Hg(e)==="Uint16Array"}Bl.isUint16Array=dTt;function vTt(e){return Hg(e)==="Uint32Array"}Bl.isUint32Array=vTt;function pTt(e){return Hg(e)==="Int8Array"}Bl.isInt8Array=pTt;function gTt(e){return Hg(e)==="Int16Array"}Bl.isInt16Array=gTt;function mTt(e){return Hg(e)==="Int32Array"}Bl.isInt32Array=mTt;function yTt(e){return Hg(e)==="Float32Array"}Bl.isFloat32Array=yTt;function _Tt(e){return Hg(e)==="Float64Array"}Bl.isFloat64Array=_Tt;function xTt(e){return Hg(e)==="BigInt64Array"}Bl.isBigInt64Array=xTt;function bTt(e){return Hg(e)==="BigUint64Array"}Bl.isBigUint64Array=bTt;function tR(e){return X0(e)==="[object Map]"}tR.working=typeof Map!="undefined"&&tR(new Map);function wTt(e){return typeof Map=="undefined"?!1:tR.working?tR(e):e instanceof Map}Bl.isMap=wTt;function rR(e){return X0(e)==="[object Set]"}rR.working=typeof Set!="undefined"&&rR(new Set);function TTt(e){return typeof Set=="undefined"?!1:rR.working?rR(e):e instanceof Set}Bl.isSet=TTt;function iR(e){return X0(e)==="[object WeakMap]"}iR.working=typeof WeakMap!="undefined"&&iR(new WeakMap);function ATt(e){return typeof WeakMap=="undefined"?!1:iR.working?iR(e):e instanceof WeakMap}Bl.isWeakMap=ATt;function qG(e){return X0(e)==="[object WeakSet]"}qG.working=typeof WeakSet!="undefined"&&qG(new WeakSet);function STt(e){return qG(e)}Bl.isWeakSet=STt;function nR(e){return X0(e)==="[object ArrayBuffer]"}nR.working=typeof ArrayBuffer!="undefined"&&nR(new ArrayBuffer);function y5e(e){return typeof ArrayBuffer=="undefined"?!1:nR.working?nR(e):e instanceof ArrayBuffer}Bl.isArrayBuffer=y5e;function aR(e){return X0(e)==="[object DataView]"}aR.working=typeof ArrayBuffer!="undefined"&&typeof DataView!="undefined"&&aR(new DataView(new ArrayBuffer(1),0,1));function _5e(e){return typeof DataView=="undefined"?!1:aR.working?aR(e):e instanceof DataView}Bl.isDataView=_5e;var FG=typeof SharedArrayBuffer!="undefined"?SharedArrayBuffer:void 0;function U4(e){return X0(e)==="[object SharedArrayBuffer]"}function x5e(e){return typeof FG=="undefined"?!1:(typeof U4.working=="undefined"&&(U4.working=U4(new FG)),U4.working?U4(e):e instanceof FG)}Bl.isSharedArrayBuffer=x5e;function MTt(e){return X0(e)==="[object AsyncFunction]"}Bl.isAsyncFunction=MTt;function ETt(e){return X0(e)==="[object Map Iterator]"}Bl.isMapIterator=ETt;function kTt(e){return X0(e)==="[object Set Iterator]"}Bl.isSetIterator=kTt;function CTt(e){return X0(e)==="[object Generator]"}Bl.isGeneratorObject=CTt;function LTt(e){return X0(e)==="[object WebAssembly.Module]"}Bl.isWebAssemblyCompiledModule=LTt;function b5e(e){return V4(e,oTt)}Bl.isNumberObject=b5e;function w5e(e){return V4(e,sTt)}Bl.isStringObject=w5e;function T5e(e){return V4(e,lTt)}Bl.isBooleanObject=T5e;function A5e(e){return v5e&&V4(e,g5e)}Bl.isBigIntObject=A5e;function S5e(e){return p5e&&V4(e,m5e)}Bl.isSymbolObject=S5e;function PTt(e){return b5e(e)||w5e(e)||T5e(e)||A5e(e)||S5e(e)}Bl.isBoxedPrimitive=PTt;function ITt(e){return typeof Uint8Array!="undefined"&&(y5e(e)||x5e(e))}Bl.isAnyArrayBuffer=ITt;["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(e){Object.defineProperty(Bl,e,{enumerable:!1,value:function(){throw new Error(e+" is not supported in userland")}})})});var BG=ye((Yur,M5e)=>{M5e.exports=function(t){return t&&typeof t=="object"&&typeof t.copy=="function"&&typeof t.fill=="function"&&typeof t.readUInt8=="function"}});var jG=ye(Nl=>{var E5e=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i<r.length;i++)n[r[i]]=Object.getOwnPropertyDescriptor(t,r[i]);return n},RTt=/%[sdj%]/g;Nl.format=function(e){if(!hR(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(R_(arguments[r]));return t.join(" ")}for(var r=1,n=arguments,i=n.length,a=String(e).replace(RTt,function(s){if(s==="%%")return"%";if(r>=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(l){return"[Circular]"}default:return s}}),o=n[r];r<i;o=n[++r])fR(o)||!o5(o)?a+=" "+o:a+=" "+R_(o);return a};Nl.deprecate=function(e,t){if(typeof process!="undefined"&&process.noDeprecation===!0)return e;if(typeof process=="undefined")return function(){return Nl.deprecate(e,t).apply(this,arguments)};var r=!1;function n(){if(!r){if(process.throwDeprecation)throw new Error(t);process.traceDeprecation?console.trace(t):console.error(t),r=!0}return e.apply(this,arguments)}return n};var oR={},k5e=/^$/;sR="false",sR=sR.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),k5e=new RegExp("^"+sR+"$","i");var sR;Nl.debuglog=function(e){if(e=e.toUpperCase(),!oR[e])if(k5e.test(e)){var t=process.pid;oR[e]=function(){var r=Nl.format.apply(Nl,arguments);console.error("%s %d: %s",e,t,r)}}else oR[e]=function(){};return oR[e]};function R_(e,t){var r={seen:[],stylize:zTt};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),HG(t)?r.showHidden=t:t&&Nl._extend(r,t),d2(r.showHidden)&&(r.showHidden=!1),d2(r.depth)&&(r.depth=2),d2(r.colors)&&(r.colors=!1),d2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=DTt),uR(r,e,r.depth)}Nl.inspect=R_;R_.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]};R_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function DTt(e,t){var r=R_.styles[t];return r?"\x1B["+R_.colors[r][0]+"m"+e+"\x1B["+R_.colors[r][1]+"m":e}function zTt(e,t){return e}function FTt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function uR(e,t,r){if(e.customInspect&&t&&lR(t.inspect)&&t.inspect!==Nl.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return hR(n)||(n=uR(e,n,r)),n}var i=qTt(e,t);if(i)return i;var a=Object.keys(t),o=FTt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),G4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return NG(t);if(a.length===0){if(lR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if(H4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(cR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(G4(t))return NG(t)}var l="",u=!1,c=["{","}"];if(C5e(t)&&(u=!0,c=["[","]"]),lR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if(H4(t)&&(l=" "+RegExp.prototype.toString.call(t)),cR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),G4(t)&&(l=" "+NG(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return H4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=OTt(e,t,r,o,a):h=a.map(function(d){return VG(e,t,r,o,d,u)}),e.seen.pop(),BTt(h,l,c)}function qTt(e,t){if(d2(t))return e.stylize("undefined","undefined");if(hR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(L5e(t))return e.stylize(""+t,"number");if(HG(t))return e.stylize(""+t,"boolean");if(fR(t))return e.stylize("null","null")}function NG(e){return"["+Error.prototype.toString.call(e)+"]"}function OTt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o<s;++o)P5e(t,String(o))?a.push(VG(e,t,r,n,String(o),!0)):a.push("");return i.forEach(function(l){l.match(/^\d+$/)||a.push(VG(e,t,r,n,l,!0))}),a}function VG(e,t,r,n,i,a){var o,s,l;if(l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]},l.get?l.set?s=e.stylize("[Getter/Setter]","special"):s=e.stylize("[Getter]","special"):l.set&&(s=e.stylize("[Setter]","special")),P5e(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(fR(r)?s=uR(e,l.value,null):s=uR(e,l.value,r-1),s.indexOf(`
+`)>-1&&(a?s=s.split(`
+`).map(function(u){return" "+u}).join(`
+`).slice(2):s=`
+`+s.split(`
+`).map(function(u){return" "+u}).join(`
+`))):s=e.stylize("[Circular]","special")),d2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function BTt(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(`
+`)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+`
+ `)+" "+e.join(`,
+ `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}Nl.types=OG();function C5e(e){return Array.isArray(e)}Nl.isArray=C5e;function HG(e){return typeof e=="boolean"}Nl.isBoolean=HG;function fR(e){return e===null}Nl.isNull=fR;function NTt(e){return e==null}Nl.isNullOrUndefined=NTt;function L5e(e){return typeof e=="number"}Nl.isNumber=L5e;function hR(e){return typeof e=="string"}Nl.isString=hR;function UTt(e){return typeof e=="symbol"}Nl.isSymbol=UTt;function d2(e){return e===void 0}Nl.isUndefined=d2;function H4(e){return o5(e)&&GG(e)==="[object RegExp]"}Nl.isRegExp=H4;Nl.types.isRegExp=H4;function o5(e){return typeof e=="object"&&e!==null}Nl.isObject=o5;function cR(e){return o5(e)&&GG(e)==="[object Date]"}Nl.isDate=cR;Nl.types.isDate=cR;function G4(e){return o5(e)&&(GG(e)==="[object Error]"||e instanceof Error)}Nl.isError=G4;Nl.types.isNativeError=G4;function lR(e){return typeof e=="function"}Nl.isFunction=lR;function VTt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}Nl.isPrimitive=VTt;Nl.isBuffer=BG();function GG(e){return Object.prototype.toString.call(e)}function UG(e){return e<10?"0"+e.toString(10):e.toString(10)}var HTt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function GTt(){var e=new Date,t=[UG(e.getHours()),UG(e.getMinutes()),UG(e.getSeconds())].join(":");return[e.getDate(),HTt[e.getMonth()],t].join(" ")}Nl.log=function(){console.log("%s - %s",GTt(),Nl.format.apply(Nl,arguments))};Nl.inherits=Uy();Nl._extend=function(e,t){if(!t||!o5(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function P5e(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var h2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;Nl.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(h2&&t[h2]){var r=t[h2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,h2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(l,u){n=l,i=u}),o=[],s=0;s<arguments.length;s++)o.push(arguments[s]);o.push(function(l,u){l?i(l):n(u)});try{t.apply(this,o)}catch(l){i(l)}return a}return Object.setPrototypeOf(r,Object.getPrototypeOf(t)),h2&&Object.defineProperty(r,h2,{value:r,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(r,E5e(t))};Nl.promisify.custom=h2;function jTt(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}function WTt(e){if(typeof e!="function")throw new TypeError('The "original" argument must be of type Function');function t(){for(var r=[],n=0;n<arguments.length;n++)r.push(arguments[n]);var i=r.pop();if(typeof i!="function")throw new TypeError("The last argument must be of type Function");var a=this,o=function(){return i.apply(a,arguments)};e.apply(this,r).then(function(s){process.nextTick(o.bind(null,null,s))},function(s){process.nextTick(jTt.bind(null,s,o))})}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,E5e(e)),t}Nl.callbackify=WTt});var z5e=ye((Jur,D5e)=>{"use strict";function I5e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function ZTt(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?I5e(Object(r),!0).forEach(function(n){XTt(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):I5e(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function XTt(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function YTt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function R5e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function KTt(e,t,r){return t&&R5e(e.prototype,t),r&&R5e(e,r),e}var JTt=u2(),dR=JTt.Buffer,$Tt=jG(),WG=$Tt.inspect,QTt=WG&&WG.custom||"inspect";function e5t(e,t,r){dR.prototype.copy.call(e,t,r)}D5e.exports=function(){function e(){YTt(this,e),this.head=null,this.tail=null,this.length=0}return KTt(e,[{key:"push",value:function(r){var n={data:r,next:null};this.length>0?this.tail.next=n:this.head=n,this.tail=n,++this.length}},{key:"unshift",value:function(r){var n={data:r,next:this.head};this.length===0&&(this.tail=n),this.head=n,++this.length}},{key:"shift",value:function(){if(this.length!==0){var r=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,r}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(r){if(this.length===0)return"";for(var n=this.head,i=""+n.data;n=n.next;)i+=r+n.data;return i}},{key:"concat",value:function(r){if(this.length===0)return dR.alloc(0);for(var n=dR.allocUnsafe(r>>>0),i=this.head,a=0;i;)e5t(i.data,n,a),a+=i.data.length,i=i.next;return n}},{key:"consume",value:function(r,n){var i;return r<this.head.data.length?(i=this.head.data.slice(0,r),this.head.data=this.head.data.slice(r)):r===this.head.data.length?i=this.shift():i=n?this._getString(r):this._getBuffer(r),i}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(r){var n=this.head,i=1,a=n.data;for(r-=a.length;n=n.next;){var o=n.data,s=r>o.length?o.length:r;if(s===o.length?a+=o:a+=o.slice(0,r),r-=s,r===0){s===o.length?(++i,n.next?this.head=n.next:this.head=this.tail=null):(this.head=n,n.data=o.slice(s));break}++i}return this.length-=i,a}},{key:"_getBuffer",value:function(r){var n=dR.allocUnsafe(r),i=this.head,a=1;for(i.data.copy(n),r-=i.data.length;i=i.next;){var o=i.data,s=r>o.length?o.length:r;if(o.copy(n,n.length-r,0,s),r-=s,r===0){s===o.length?(++a,i.next?this.head=i.next:this.head=this.tail=null):(this.head=i,i.data=o.slice(s));break}++a}return this.length-=a,n}},{key:QTt,value:function(r,n){return WG(this,ZTt({},n,{depth:0,customInspect:!1}))}}]),e}()});var XG=ye(($ur,q5e)=>{"use strict";function t5t(e,t){var r=this,n=this._readableState&&this._readableState.destroyed,i=this._writableState&&this._writableState.destroyed;return n||i?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(ZG,this,e)):process.nextTick(ZG,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,function(a){!t&&a?r._writableState?r._writableState.errorEmitted?process.nextTick(vR,r):(r._writableState.errorEmitted=!0,process.nextTick(F5e,r,a)):process.nextTick(F5e,r,a):t?(process.nextTick(vR,r),t(a)):process.nextTick(vR,r)}),this)}function F5e(e,t){ZG(e,t),vR(e)}function vR(e){e._writableState&&!e._writableState.emitClose||e._readableState&&!e._readableState.emitClose||e.emit("close")}function r5t(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function ZG(e,t){e.emit("error",t)}function i5t(e,t){var r=e._readableState,n=e._writableState;r&&r.autoDestroy||n&&n.autoDestroy?e.destroy(t):e.emit("error",t)}q5e.exports={destroy:t5t,undestroy:r5t,errorOrDestroy:i5t}});var v2=ye((Qur,N5e)=>{"use strict";function n5t(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}var B5e={};function Y0(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){n5t(o,a);function o(s,l,u){return a.call(this,n(s,l,u))||this}return o}(r);i.prototype.name=r.name,i.prototype.code=e,B5e[e]=i}function O5e(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function a5t(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function o5t(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function s5t(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}Y0("ERR_INVALID_OPT_VALUE",function(e,t){return'The value "'+t+'" is invalid for option "'+e+'"'},TypeError);Y0("ERR_INVALID_ARG_TYPE",function(e,t,r){var n;typeof t=="string"&&a5t(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(o5t(e," argument"))i="The ".concat(e," ").concat(n," ").concat(O5e(t,"type"));else{var a=s5t(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(O5e(t,"type"))}return i+=". Received type ".concat(typeof r),i},TypeError);Y0("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF");Y0("ERR_METHOD_NOT_IMPLEMENTED",function(e){return"The "+e+" method is not implemented"});Y0("ERR_STREAM_PREMATURE_CLOSE","Premature close");Y0("ERR_STREAM_DESTROYED",function(e){return"Cannot call "+e+" after a stream was destroyed"});Y0("ERR_MULTIPLE_CALLBACK","Callback called multiple times");Y0("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable");Y0("ERR_STREAM_WRITE_AFTER_END","write after end");Y0("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError);Y0("ERR_UNKNOWN_ENCODING",function(e){return"Unknown encoding: "+e},TypeError);Y0("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event");N5e.exports.codes=B5e});var YG=ye((ecr,U5e)=>{"use strict";var l5t=v2().codes.ERR_INVALID_OPT_VALUE;function u5t(e,t,r){return e.highWaterMark!=null?e.highWaterMark:t?e[r]:null}function c5t(e,t,r,n){var i=u5t(t,n,r);if(i!=null){if(!(isFinite(i)&&Math.floor(i)===i)||i<0){var a=n?r:"highWaterMark";throw new l5t(a,i)}return Math.floor(i)}return e.objectMode?16:16*1024}U5e.exports={getHighWaterMark:c5t}});var H5e=ye((tcr,V5e)=>{V5e.exports=f5t;function f5t(e,t){if(KG("noDeprecation"))return e;var r=!1;function n(){if(!r){if(KG("throwDeprecation"))throw new Error(t);KG("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}return n}function KG(e){try{if(!window.localStorage)return!1}catch(r){return!1}var t=window.localStorage[e];return t==null?!1:String(t).toLowerCase()==="true"}});var QG=ye((rcr,Y5e)=>{"use strict";Y5e.exports=_h;function j5e(e){var t=this;this.next=null,this.entry=null,this.finish=function(){O5t(t,e)}}var s5;_h.WritableState=W4;var h5t={deprecate:H5e()},W5e=iG(),gR=u2().Buffer,d5t=window.Uint8Array||function(){};function v5t(e){return gR.from(e)}function p5t(e){return gR.isBuffer(e)||e instanceof d5t}var $G=XG(),g5t=YG(),m5t=g5t.getHighWaterMark,D_=v2().codes,y5t=D_.ERR_INVALID_ARG_TYPE,_5t=D_.ERR_METHOD_NOT_IMPLEMENTED,x5t=D_.ERR_MULTIPLE_CALLBACK,b5t=D_.ERR_STREAM_CANNOT_PIPE,w5t=D_.ERR_STREAM_DESTROYED,T5t=D_.ERR_STREAM_NULL_VALUES,A5t=D_.ERR_STREAM_WRITE_AFTER_END,S5t=D_.ERR_UNKNOWN_ENCODING,l5=$G.errorOrDestroy;Uy()(_h,W5e);function M5t(){}function W4(e,t,r){s5=s5||p2(),e=e||{},typeof r!="boolean"&&(r=t instanceof s5),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.writableObjectMode),this.highWaterMark=m5t(this,e,"writableHighWaterMark",r),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var n=e.decodeStrings===!1;this.decodeStrings=!n,this.defaultEncoding=e.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(i){R5t(t,i)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new j5e(this)}W4.prototype.getBuffer=function(){for(var t=this.bufferedRequest,r=[];t;)r.push(t),t=t.next;return r};(function(){try{Object.defineProperty(W4.prototype,"buffer",{get:h5t.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}})();var pR;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(pR=Function.prototype[Symbol.hasInstance],Object.defineProperty(_h,Symbol.hasInstance,{value:function(t){return pR.call(this,t)?!0:this!==_h?!1:t&&t._writableState instanceof W4}})):pR=function(t){return t instanceof this};function _h(e){s5=s5||p2();var t=this instanceof s5;if(!t&&!pR.call(_h,this))return new _h(e);this._writableState=new W4(e,this,t),this.writable=!0,e&&(typeof e.write=="function"&&(this._write=e.write),typeof e.writev=="function"&&(this._writev=e.writev),typeof e.destroy=="function"&&(this._destroy=e.destroy),typeof e.final=="function"&&(this._final=e.final)),W5e.call(this)}_h.prototype.pipe=function(){l5(this,new b5t)};function E5t(e,t){var r=new A5t;l5(e,r),process.nextTick(t,r)}function k5t(e,t,r,n){var i;return r===null?i=new T5t:typeof r!="string"&&!t.objectMode&&(i=new y5t("chunk",["string","Buffer"],r)),i?(l5(e,i),process.nextTick(n,i),!1):!0}_h.prototype.write=function(e,t,r){var n=this._writableState,i=!1,a=!n.objectMode&&p5t(e);return a&&!gR.isBuffer(e)&&(e=v5t(e)),typeof t=="function"&&(r=t,t=null),a?t="buffer":t||(t=n.defaultEncoding),typeof r!="function"&&(r=M5t),n.ending?E5t(this,r):(a||k5t(this,n,e,r))&&(n.pendingcb++,i=L5t(this,n,a,e,t,r)),i};_h.prototype.cork=function(){this._writableState.corked++};_h.prototype.uncork=function(){var e=this._writableState;e.corked&&(e.corked--,!e.writing&&!e.corked&&!e.bufferProcessing&&e.bufferedRequest&&Z5e(this,e))};_h.prototype.setDefaultEncoding=function(t){if(typeof t=="string"&&(t=t.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((t+"").toLowerCase())>-1))throw new S5t(t);return this._writableState.defaultEncoding=t,this};Object.defineProperty(_h.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function C5t(e,t,r){return!e.objectMode&&e.decodeStrings!==!1&&typeof t=="string"&&(t=gR.from(t,r)),t}Object.defineProperty(_h.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function L5t(e,t,r,n,i,a){if(!r){var o=C5t(t,n,i);n!==o&&(r=!0,i="buffer",n=o)}var s=t.objectMode?1:n.length;t.length+=s;var l=t.length<t.highWaterMark;if(l||(t.needDrain=!0),t.writing||t.corked){var u=t.lastBufferedRequest;t.lastBufferedRequest={chunk:n,encoding:i,isBuf:r,callback:a,next:null},u?u.next=t.lastBufferedRequest:t.bufferedRequest=t.lastBufferedRequest,t.bufferedRequestCount+=1}else JG(e,t,!1,s,n,i,a);return l}function JG(e,t,r,n,i,a,o){t.writelen=n,t.writecb=o,t.writing=!0,t.sync=!0,t.destroyed?t.onwrite(new w5t("write")):r?e._writev(i,t.onwrite):e._write(i,a,t.onwrite),t.sync=!1}function P5t(e,t,r,n,i){--t.pendingcb,r?(process.nextTick(i,n),process.nextTick(j4,e,t),e._writableState.errorEmitted=!0,l5(e,n)):(i(n),e._writableState.errorEmitted=!0,l5(e,n),j4(e,t))}function I5t(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}function R5t(e,t){var r=e._writableState,n=r.sync,i=r.writecb;if(typeof i!="function")throw new x5t;if(I5t(r),t)P5t(e,r,n,t,i);else{var a=X5e(r)||e.destroyed;!a&&!r.corked&&!r.bufferProcessing&&r.bufferedRequest&&Z5e(e,r),n?process.nextTick(G5e,e,r,a,i):G5e(e,r,a,i)}}function G5e(e,t,r,n){r||D5t(e,t),t.pendingcb--,n(),j4(e,t)}function D5t(e,t){t.length===0&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}function Z5e(e,t){t.bufferProcessing=!0;var r=t.bufferedRequest;if(e._writev&&r&&r.next){var n=t.bufferedRequestCount,i=new Array(n),a=t.corkedRequestsFree;a.entry=r;for(var o=0,s=!0;r;)i[o]=r,r.isBuf||(s=!1),r=r.next,o+=1;i.allBuffers=s,JG(e,t,!0,t.length,i,"",a.finish),t.pendingcb++,t.lastBufferedRequest=null,a.next?(t.corkedRequestsFree=a.next,a.next=null):t.corkedRequestsFree=new j5e(t),t.bufferedRequestCount=0}else{for(;r;){var l=r.chunk,u=r.encoding,c=r.callback,f=t.objectMode?1:l.length;if(JG(e,t,!1,f,l,u,c),r=r.next,t.bufferedRequestCount--,t.writing)break}r===null&&(t.lastBufferedRequest=null)}t.bufferedRequest=r,t.bufferProcessing=!1}_h.prototype._write=function(e,t,r){r(new _5t("_write()"))};_h.prototype._writev=null;_h.prototype.end=function(e,t,r){var n=this._writableState;return typeof e=="function"?(r=e,e=null,t=null):typeof t=="function"&&(r=t,t=null),e!=null&&this.write(e,t),n.corked&&(n.corked=1,this.uncork()),n.ending||q5t(this,n,r),this};Object.defineProperty(_h.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function X5e(e){return e.ending&&e.length===0&&e.bufferedRequest===null&&!e.finished&&!e.writing}function z5t(e,t){e._final(function(r){t.pendingcb--,r&&l5(e,r),t.prefinished=!0,e.emit("prefinish"),j4(e,t)})}function F5t(e,t){!t.prefinished&&!t.finalCalled&&(typeof e._final=="function"&&!t.destroyed?(t.pendingcb++,t.finalCalled=!0,process.nextTick(z5t,e,t)):(t.prefinished=!0,e.emit("prefinish")))}function j4(e,t){var r=X5e(t);if(r&&(F5t(e,t),t.pendingcb===0&&(t.finished=!0,e.emit("finish"),t.autoDestroy))){var n=e._readableState;(!n||n.autoDestroy&&n.endEmitted)&&e.destroy()}return r}function q5t(e,t,r){t.ending=!0,j4(e,t),r&&(t.finished?process.nextTick(r):e.once("finish",r)),t.ended=!0,e.writable=!1}function O5t(e,t,r){var n=e.entry;for(e.entry=null;n;){var i=n.callback;t.pendingcb--,i(r),n=n.next}t.corkedRequestsFree.next=e}Object.defineProperty(_h.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function(t){this._writableState&&(this._writableState.destroyed=t)}});_h.prototype.destroy=$G.destroy;_h.prototype._undestroy=$G.undestroy;_h.prototype._destroy=function(e,t){t(e)}});var p2=ye((icr,J5e)=>{"use strict";var B5t=Object.keys||function(e){var t=[];for(var r in e)t.push(r);return t};J5e.exports=Om;var K5e=rj(),tj=QG();Uy()(Om,K5e);for(ej=B5t(tj.prototype),mR=0;mR<ej.length;mR++)yR=ej[mR],Om.prototype[yR]||(Om.prototype[yR]=tj.prototype[yR]);var ej,yR,mR;function Om(e){if(!(this instanceof Om))return new Om(e);K5e.call(this,e),tj.call(this,e),this.allowHalfOpen=!0,e&&(e.readable===!1&&(this.readable=!1),e.writable===!1&&(this.writable=!1),e.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once("end",N5t)))}Object.defineProperty(Om.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});Object.defineProperty(Om.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});Object.defineProperty(Om.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function N5t(){this._writableState.ended||process.nextTick(U5t,this)}function U5t(e){e.end()}Object.defineProperty(Om.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(t){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=t,this._writableState.destroyed=t)}})});var eAe=ye((ij,Q5e)=>{var _R=u2(),Bm=_R.Buffer;function $5e(e,t){for(var r in e)t[r]=e[r]}Bm.from&&Bm.alloc&&Bm.allocUnsafe&&Bm.allocUnsafeSlow?Q5e.exports=_R:($5e(_R,ij),ij.Buffer=g2);function g2(e,t,r){return Bm(e,t,r)}g2.prototype=Object.create(Bm.prototype);$5e(Bm,g2);g2.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return Bm(e,t,r)};g2.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var n=Bm(e);return t!==void 0?typeof r=="string"?n.fill(t,r):n.fill(t):n.fill(0),n};g2.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return Bm(e)};g2.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return _R.SlowBuffer(e)}});var oj=ye(rAe=>{"use strict";var aj=eAe().Buffer,tAe=aj.isEncoding||function(e){switch(e=""+e,e&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function V5t(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}function H5t(e){var t=V5t(e);if(typeof t!="string"&&(aj.isEncoding===tAe||!tAe(e)))throw new Error("Unknown encoding: "+e);return t||e}rAe.StringDecoder=Z4;function Z4(e){this.encoding=H5t(e);var t;switch(this.encoding){case"utf16le":this.text=Y5t,this.end=K5t,t=4;break;case"utf8":this.fillLast=W5t,t=4;break;case"base64":this.text=J5t,this.end=$5t,t=3;break;default:this.write=Q5t,this.end=eAt;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=aj.allocUnsafe(t)}Z4.prototype.write=function(e){if(e.length===0)return"";var t,r;if(this.lastNeed){if(t=this.fillLast(e),t===void 0)return"";r=this.lastNeed,this.lastNeed=0}else r=0;return r<e.length?t?t+this.text(e,r):this.text(e,r):t||""};Z4.prototype.end=X5t;Z4.prototype.text=Z5t;Z4.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length};function nj(e){return e<=127?0:e>>5===6?2:e>>4===14?3:e>>3===30?4:e>>6===2?-1:-2}function G5t(e,t,r){var n=t.length-1;if(n<r)return 0;var i=nj(t[n]);return i>=0?(i>0&&(e.lastNeed=i-1),i):--n<r||i===-2?0:(i=nj(t[n]),i>=0?(i>0&&(e.lastNeed=i-2),i):--n<r||i===-2?0:(i=nj(t[n]),i>=0?(i>0&&(i===2?i=0:e.lastNeed=i-3),i):0))}function j5t(e,t,r){if((t[0]&192)!==128)return e.lastNeed=0,"\uFFFD";if(e.lastNeed>1&&t.length>1){if((t[1]&192)!==128)return e.lastNeed=1,"\uFFFD";if(e.lastNeed>2&&t.length>2&&(t[2]&192)!==128)return e.lastNeed=2,"\uFFFD"}}function W5t(e){var t=this.lastTotal-this.lastNeed,r=j5t(this,e,t);if(r!==void 0)return r;if(this.lastNeed<=e.length)return e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,t,0,e.length),this.lastNeed-=e.length}function Z5t(e,t){var r=G5t(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=r;var n=e.length-(r-this.lastNeed);return e.copy(this.lastChar,0,n),e.toString("utf8",t,n)}function X5t(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+"\uFFFD":t}function Y5t(e,t){if((e.length-t)%2===0){var r=e.toString("utf16le",t);if(r){var n=r.charCodeAt(r.length-1);if(n>=55296&&n<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],r.slice(0,-1)}return r}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function K5t(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var r=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,r)}return t}function J5t(e,t){var r=(e.length-t)%3;return r===0?e.toString("base64",t):(this.lastNeed=3-r,this.lastTotal=3,r===1?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-r))}function $5t(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function Q5t(e){return e.toString(this.encoding)}function eAt(e){return e&&e.length?this.write(e):""}});var xR=ye((acr,aAe)=>{"use strict";var iAe=v2().codes.ERR_STREAM_PREMATURE_CLOSE;function tAt(e){var t=!1;return function(){if(!t){t=!0;for(var r=arguments.length,n=new Array(r),i=0;i<r;i++)n[i]=arguments[i];e.apply(this,n)}}}function rAt(){}function iAt(e){return e.setHeader&&typeof e.abort=="function"}function nAe(e,t,r){if(typeof t=="function")return nAe(e,null,t);t||(t={}),r=tAt(r||rAt);var n=t.readable||t.readable!==!1&&e.readable,i=t.writable||t.writable!==!1&&e.writable,a=function(){e.writable||s()},o=e._writableState&&e._writableState.finished,s=function(){i=!1,o=!0,n||r.call(e)},l=e._readableState&&e._readableState.endEmitted,u=function(){n=!1,l=!0,i||r.call(e)},c=function(v){r.call(e,v)},f=function(){var v;if(n&&!l)return(!e._readableState||!e._readableState.ended)&&(v=new iAe),r.call(e,v);if(i&&!o)return(!e._writableState||!e._writableState.ended)&&(v=new iAe),r.call(e,v)},h=function(){e.req.on("finish",s)};return iAt(e)?(e.on("complete",s),e.on("abort",f),e.req?h():e.on("request",h)):i&&!e._writableState&&(e.on("end",a),e.on("close",a)),e.on("end",u),e.on("finish",s),t.error!==!1&&e.on("error",c),e.on("close",f),function(){e.removeListener("complete",s),e.removeListener("abort",f),e.removeListener("request",h),e.req&&e.req.removeListener("finish",s),e.removeListener("end",a),e.removeListener("close",a),e.removeListener("finish",s),e.removeListener("end",u),e.removeListener("error",c),e.removeListener("close",f)}}aAe.exports=nAe});var sAe=ye((ocr,oAe)=>{"use strict";var bR;function z_(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var nAt=xR(),F_=Symbol("lastResolve"),m2=Symbol("lastReject"),X4=Symbol("error"),wR=Symbol("ended"),y2=Symbol("lastPromise"),sj=Symbol("handlePromise"),_2=Symbol("stream");function q_(e,t){return{value:e,done:t}}function aAt(e){var t=e[F_];if(t!==null){var r=e[_2].read();r!==null&&(e[y2]=null,e[F_]=null,e[m2]=null,t(q_(r,!1)))}}function oAt(e){process.nextTick(aAt,e)}function sAt(e,t){return function(r,n){e.then(function(){if(t[wR]){r(q_(void 0,!0));return}t[sj](r,n)},n)}}var lAt=Object.getPrototypeOf(function(){}),uAt=Object.setPrototypeOf((bR={get stream(){return this[_2]},next:function(){var t=this,r=this[X4];if(r!==null)return Promise.reject(r);if(this[wR])return Promise.resolve(q_(void 0,!0));if(this[_2].destroyed)return new Promise(function(o,s){process.nextTick(function(){t[X4]?s(t[X4]):o(q_(void 0,!0))})});var n=this[y2],i;if(n)i=new Promise(sAt(n,this));else{var a=this[_2].read();if(a!==null)return Promise.resolve(q_(a,!1));i=new Promise(this[sj])}return this[y2]=i,i}},z_(bR,Symbol.asyncIterator,function(){return this}),z_(bR,"return",function(){var t=this;return new Promise(function(r,n){t[_2].destroy(null,function(i){if(i){n(i);return}r(q_(void 0,!0))})})}),bR),lAt),cAt=function(t){var r,n=Object.create(uAt,(r={},z_(r,_2,{value:t,writable:!0}),z_(r,F_,{value:null,writable:!0}),z_(r,m2,{value:null,writable:!0}),z_(r,X4,{value:null,writable:!0}),z_(r,wR,{value:t._readableState.endEmitted,writable:!0}),z_(r,sj,{value:function(a,o){var s=n[_2].read();s?(n[y2]=null,n[F_]=null,n[m2]=null,a(q_(s,!1))):(n[F_]=a,n[m2]=o)},writable:!0}),r));return n[y2]=null,nAt(t,function(i){if(i&&i.code!=="ERR_STREAM_PREMATURE_CLOSE"){var a=n[m2];a!==null&&(n[y2]=null,n[F_]=null,n[m2]=null,a(i)),n[X4]=i;return}var o=n[F_];o!==null&&(n[y2]=null,n[F_]=null,n[m2]=null,o(q_(void 0,!0))),n[wR]=!0}),t.on("readable",oAt.bind(null,n)),n};oAe.exports=cAt});var uAe=ye((scr,lAe)=>{lAe.exports=function(){throw new Error("Readable.from is not available in the browser")}});var rj=ye((ucr,_Ae)=>{"use strict";_Ae.exports=vu;var u5;vu.ReadableState=dAe;var lcr=vb().EventEmitter,hAe=function(t,r){return t.listeners(r).length},K4=iG(),TR=u2().Buffer,fAt=window.Uint8Array||function(){};function hAt(e){return TR.from(e)}function dAt(e){return TR.isBuffer(e)||e instanceof fAt}var lj=jG(),Il;lj&&lj.debuglog?Il=lj.debuglog("stream"):Il=function(){};var vAt=z5e(),pj=XG(),pAt=YG(),gAt=pAt.getHighWaterMark,AR=v2().codes,mAt=AR.ERR_INVALID_ARG_TYPE,yAt=AR.ERR_STREAM_PUSH_AFTER_EOF,_At=AR.ERR_METHOD_NOT_IMPLEMENTED,xAt=AR.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,c5,uj,cj;Uy()(vu,K4);var Y4=pj.errorOrDestroy,fj=["error","close","destroy","pause","resume"];function bAt(e,t,r){if(typeof e.prependListener=="function")return e.prependListener(t,r);!e._events||!e._events[t]?e.on(t,r):Array.isArray(e._events[t])?e._events[t].unshift(r):e._events[t]=[r,e._events[t]]}function dAe(e,t,r){u5=u5||p2(),e=e||{},typeof r!="boolean"&&(r=t instanceof u5),this.objectMode=!!e.objectMode,r&&(this.objectMode=this.objectMode||!!e.readableObjectMode),this.highWaterMark=gAt(this,e,"readableHighWaterMark",r),this.buffer=new vAt,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=e.emitClose!==!1,this.autoDestroy=!!e.autoDestroy,this.destroyed=!1,this.defaultEncoding=e.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,e.encoding&&(c5||(c5=oj().StringDecoder),this.decoder=new c5(e.encoding),this.encoding=e.encoding)}function vu(e){if(u5=u5||p2(),!(this instanceof vu))return new vu(e);var t=this instanceof u5;this._readableState=new dAe(e,this,t),this.readable=!0,e&&(typeof e.read=="function"&&(this._read=e.read),typeof e.destroy=="function"&&(this._destroy=e.destroy)),K4.call(this)}Object.defineProperty(vu.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(t){this._readableState&&(this._readableState.destroyed=t)}});vu.prototype.destroy=pj.destroy;vu.prototype._undestroy=pj.undestroy;vu.prototype._destroy=function(e,t){t(e)};vu.prototype.push=function(e,t){var r=this._readableState,n;return r.objectMode?n=!0:typeof e=="string"&&(t=t||r.defaultEncoding,t!==r.encoding&&(e=TR.from(e,t),t=""),n=!0),vAe(this,e,t,!1,n)};vu.prototype.unshift=function(e){return vAe(this,e,null,!0,!1)};function vAe(e,t,r,n,i){Il("readableAddChunk",t);var a=e._readableState;if(t===null)a.reading=!1,AAt(e,a);else{var o;if(i||(o=wAt(a,t)),o)Y4(e,o);else if(a.objectMode||t&&t.length>0)if(typeof t!="string"&&!a.objectMode&&Object.getPrototypeOf(t)!==TR.prototype&&(t=hAt(t)),n)a.endEmitted?Y4(e,new xAt):hj(e,a,t,!0);else if(a.ended)Y4(e,new yAt);else{if(a.destroyed)return!1;a.reading=!1,a.decoder&&!r?(t=a.decoder.write(t),a.objectMode||t.length!==0?hj(e,a,t,!1):vj(e,a)):hj(e,a,t,!1)}else n||(a.reading=!1,vj(e,a))}return!a.ended&&(a.length<a.highWaterMark||a.length===0)}function hj(e,t,r,n){t.flowing&&t.length===0&&!t.sync?(t.awaitDrain=0,e.emit("data",r)):(t.length+=t.objectMode?1:r.length,n?t.buffer.unshift(r):t.buffer.push(r),t.needReadable&&SR(e)),vj(e,t)}function wAt(e,t){var r;return!dAt(t)&&typeof t!="string"&&t!==void 0&&!e.objectMode&&(r=new mAt("chunk",["string","Buffer","Uint8Array"],t)),r}vu.prototype.isPaused=function(){return this._readableState.flowing===!1};vu.prototype.setEncoding=function(e){c5||(c5=oj().StringDecoder);var t=new c5(e);this._readableState.decoder=t,this._readableState.encoding=this._readableState.decoder.encoding;for(var r=this._readableState.buffer.head,n="";r!==null;)n+=t.write(r.data),r=r.next;return this._readableState.buffer.clear(),n!==""&&this._readableState.buffer.push(n),this._readableState.length=n.length,this};var cAe=1073741824;function TAt(e){return e>=cAe?e=cAe:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}function fAe(e,t){return e<=0||t.length===0&&t.ended?0:t.objectMode?1:e!==e?t.flowing&&t.length?t.buffer.head.data.length:t.length:(e>t.highWaterMark&&(t.highWaterMark=TAt(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}vu.prototype.read=function(e){Il("read",e),e=parseInt(e,10);var t=this._readableState,r=e;if(e!==0&&(t.emittedReadable=!1),e===0&&t.needReadable&&((t.highWaterMark!==0?t.length>=t.highWaterMark:t.length>0)||t.ended))return Il("read: emitReadable",t.length,t.ended),t.length===0&&t.ended?dj(this):SR(this),null;if(e=fAe(e,t),e===0&&t.ended)return t.length===0&&dj(this),null;var n=t.needReadable;Il("need readable",n),(t.length===0||t.length-e<t.highWaterMark)&&(n=!0,Il("length less than watermark",n)),t.ended||t.reading?(n=!1,Il("reading or ended",n)):n&&(Il("do read"),t.reading=!0,t.sync=!0,t.length===0&&(t.needReadable=!0),this._read(t.highWaterMark),t.sync=!1,t.reading||(e=fAe(r,t)));var i;return e>0?i=mAe(e,t):i=null,i===null?(t.needReadable=t.length<=t.highWaterMark,e=0):(t.length-=e,t.awaitDrain=0),t.length===0&&(t.ended||(t.needReadable=!0),r!==e&&t.ended&&dj(this)),i!==null&&this.emit("data",i),i};function AAt(e,t){if(Il("onEofChunk"),!t.ended){if(t.decoder){var r=t.decoder.end();r&&r.length&&(t.buffer.push(r),t.length+=t.objectMode?1:r.length)}t.ended=!0,t.sync?SR(e):(t.needReadable=!1,t.emittedReadable||(t.emittedReadable=!0,pAe(e)))}}function SR(e){var t=e._readableState;Il("emitReadable",t.needReadable,t.emittedReadable),t.needReadable=!1,t.emittedReadable||(Il("emitReadable",t.flowing),t.emittedReadable=!0,process.nextTick(pAe,e))}function pAe(e){var t=e._readableState;Il("emitReadable_",t.destroyed,t.length,t.ended),!t.destroyed&&(t.length||t.ended)&&(e.emit("readable"),t.emittedReadable=!1),t.needReadable=!t.flowing&&!t.ended&&t.length<=t.highWaterMark,gj(e)}function vj(e,t){t.readingMore||(t.readingMore=!0,process.nextTick(SAt,e,t))}function SAt(e,t){for(;!t.reading&&!t.ended&&(t.length<t.highWaterMark||t.flowing&&t.length===0);){var r=t.length;if(Il("maybeReadMore read 0"),e.read(0),r===t.length)break}t.readingMore=!1}vu.prototype._read=function(e){Y4(this,new _At("_read()"))};vu.prototype.pipe=function(e,t){var r=this,n=this._readableState;switch(n.pipesCount){case 0:n.pipes=e;break;case 1:n.pipes=[n.pipes,e];break;default:n.pipes.push(e);break}n.pipesCount+=1,Il("pipe count=%d opts=%j",n.pipesCount,t);var i=(!t||t.end!==!1)&&e!==process.stdout&&e!==process.stderr,a=i?s:x;n.endEmitted?process.nextTick(a):r.once("end",a),e.on("unpipe",o);function o(b,p){Il("onunpipe"),b===r&&p&&p.hasUnpiped===!1&&(p.hasUnpiped=!0,c())}function s(){Il("onend"),e.end()}var l=MAt(r);e.on("drain",l);var u=!1;function c(){Il("cleanup"),e.removeListener("close",d),e.removeListener("finish",v),e.removeListener("drain",l),e.removeListener("error",h),e.removeListener("unpipe",o),r.removeListener("end",s),r.removeListener("end",x),r.removeListener("data",f),u=!0,n.awaitDrain&&(!e._writableState||e._writableState.needDrain)&&l()}r.on("data",f);function f(b){Il("ondata");var p=e.write(b);Il("dest.write",p),p===!1&&((n.pipesCount===1&&n.pipes===e||n.pipesCount>1&&yAe(n.pipes,e)!==-1)&&!u&&(Il("false write response, pause",n.awaitDrain),n.awaitDrain++),r.pause())}function h(b){Il("onerror",b),x(),e.removeListener("error",h),hAe(e,"error")===0&&Y4(e,b)}bAt(e,"error",h);function d(){e.removeListener("finish",v),x()}e.once("close",d);function v(){Il("onfinish"),e.removeListener("close",d),x()}e.once("finish",v);function x(){Il("unpipe"),r.unpipe(e)}return e.emit("pipe",r),n.flowing||(Il("pipe resume"),r.resume()),e};function MAt(e){return function(){var r=e._readableState;Il("pipeOnDrain",r.awaitDrain),r.awaitDrain&&r.awaitDrain--,r.awaitDrain===0&&hAe(e,"data")&&(r.flowing=!0,gj(e))}}vu.prototype.unpipe=function(e){var t=this._readableState,r={hasUnpiped:!1};if(t.pipesCount===0)return this;if(t.pipesCount===1)return e&&e!==t.pipes?this:(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,r),this);if(!e){var n=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var a=0;a<i;a++)n[a].emit("unpipe",this,{hasUnpiped:!1});return this}var o=yAe(t.pipes,e);return o===-1?this:(t.pipes.splice(o,1),t.pipesCount-=1,t.pipesCount===1&&(t.pipes=t.pipes[0]),e.emit("unpipe",this,r),this)};vu.prototype.on=function(e,t){var r=K4.prototype.on.call(this,e,t),n=this._readableState;return e==="data"?(n.readableListening=this.listenerCount("readable")>0,n.flowing!==!1&&this.resume()):e==="readable"&&!n.endEmitted&&!n.readableListening&&(n.readableListening=n.needReadable=!0,n.flowing=!1,n.emittedReadable=!1,Il("on readable",n.length,n.reading),n.length?SR(this):n.reading||process.nextTick(EAt,this)),r};vu.prototype.addListener=vu.prototype.on;vu.prototype.removeListener=function(e,t){var r=K4.prototype.removeListener.call(this,e,t);return e==="readable"&&process.nextTick(gAe,this),r};vu.prototype.removeAllListeners=function(e){var t=K4.prototype.removeAllListeners.apply(this,arguments);return(e==="readable"||e===void 0)&&process.nextTick(gAe,this),t};function gAe(e){var t=e._readableState;t.readableListening=e.listenerCount("readable")>0,t.resumeScheduled&&!t.paused?t.flowing=!0:e.listenerCount("data")>0&&e.resume()}function EAt(e){Il("readable nexttick read 0"),e.read(0)}vu.prototype.resume=function(){var e=this._readableState;return e.flowing||(Il("resume"),e.flowing=!e.readableListening,kAt(this,e)),e.paused=!1,this};function kAt(e,t){t.resumeScheduled||(t.resumeScheduled=!0,process.nextTick(CAt,e,t))}function CAt(e,t){Il("resume",t.reading),t.reading||e.read(0),t.resumeScheduled=!1,e.emit("resume"),gj(e),t.flowing&&!t.reading&&e.read(0)}vu.prototype.pause=function(){return Il("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(Il("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function gj(e){var t=e._readableState;for(Il("flow",t.flowing);t.flowing&&e.read()!==null;);}vu.prototype.wrap=function(e){var t=this,r=this._readableState,n=!1;e.on("end",function(){if(Il("wrapped end"),r.decoder&&!r.ended){var o=r.decoder.end();o&&o.length&&t.push(o)}t.push(null)}),e.on("data",function(o){if(Il("wrapped data"),r.decoder&&(o=r.decoder.write(o)),!(r.objectMode&&o==null)&&!(!r.objectMode&&(!o||!o.length))){var s=t.push(o);s||(n=!0,e.pause())}});for(var i in e)this[i]===void 0&&typeof e[i]=="function"&&(this[i]=function(s){return function(){return e[s].apply(e,arguments)}}(i));for(var a=0;a<fj.length;a++)e.on(fj[a],this.emit.bind(this,fj[a]));return this._read=function(o){Il("wrapped _read",o),n&&(n=!1,e.resume())},this};typeof Symbol=="function"&&(vu.prototype[Symbol.asyncIterator]=function(){return uj===void 0&&(uj=sAe()),uj(this)});Object.defineProperty(vu.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}});Object.defineProperty(vu.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}});Object.defineProperty(vu.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(t){this._readableState&&(this._readableState.flowing=t)}});vu._fromList=mAe;Object.defineProperty(vu.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function mAe(e,t){if(t.length===0)return null;var r;return t.objectMode?r=t.buffer.shift():!e||e>=t.length?(t.decoder?r=t.buffer.join(""):t.buffer.length===1?r=t.buffer.first():r=t.buffer.concat(t.length),t.buffer.clear()):r=t.buffer.consume(e,t.decoder),r}function dj(e){var t=e._readableState;Il("endReadable",t.endEmitted),t.endEmitted||(t.ended=!0,process.nextTick(LAt,t,e))}function LAt(e,t){if(Il("endReadableNT",e.endEmitted,e.length),!e.endEmitted&&e.length===0&&(e.endEmitted=!0,t.readable=!1,t.emit("end"),e.autoDestroy)){var r=t._writableState;(!r||r.autoDestroy&&r.finished)&&t.destroy()}}typeof Symbol=="function"&&(vu.from=function(e,t){return cj===void 0&&(cj=uAe()),cj(vu,e,t)});function yAe(e,t){for(var r=0,n=e.length;r<n;r++)if(e[r]===t)return r;return-1}});var mj=ye((ccr,bAe)=>{"use strict";bAe.exports=Hy;var MR=v2().codes,PAt=MR.ERR_METHOD_NOT_IMPLEMENTED,IAt=MR.ERR_MULTIPLE_CALLBACK,RAt=MR.ERR_TRANSFORM_ALREADY_TRANSFORMING,DAt=MR.ERR_TRANSFORM_WITH_LENGTH_0,ER=p2();Uy()(Hy,ER);function zAt(e,t){var r=this._transformState;r.transforming=!1;var n=r.writecb;if(n===null)return this.emit("error",new IAt);r.writechunk=null,r.writecb=null,t!=null&&this.push(t),n(e);var i=this._readableState;i.reading=!1,(i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}function Hy(e){if(!(this instanceof Hy))return new Hy(e);ER.call(this,e),this._transformState={afterTransform:zAt.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,e&&(typeof e.transform=="function"&&(this._transform=e.transform),typeof e.flush=="function"&&(this._flush=e.flush)),this.on("prefinish",FAt)}function FAt(){var e=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(t,r){xAe(e,t,r)}):xAe(this,null,null)}Hy.prototype.push=function(e,t){return this._transformState.needTransform=!1,ER.prototype.push.call(this,e,t)};Hy.prototype._transform=function(e,t,r){r(new PAt("_transform()"))};Hy.prototype._write=function(e,t,r){var n=this._transformState;if(n.writecb=r,n.writechunk=e,n.writeencoding=t,!n.transforming){var i=this._readableState;(n.needTransform||i.needReadable||i.length<i.highWaterMark)&&this._read(i.highWaterMark)}};Hy.prototype._read=function(e){var t=this._transformState;t.writechunk!==null&&!t.transforming?(t.transforming=!0,this._transform(t.writechunk,t.writeencoding,t.afterTransform)):t.needTransform=!0};Hy.prototype._destroy=function(e,t){ER.prototype._destroy.call(this,e,function(r){t(r)})};function xAe(e,t,r){if(t)return e.emit("error",t);if(r!=null&&e.push(r),e._writableState.length)throw new DAt;if(e._transformState.transforming)throw new RAt;return e.push(null)}});var AAe=ye((fcr,TAe)=>{"use strict";TAe.exports=J4;var wAe=mj();Uy()(J4,wAe);function J4(e){if(!(this instanceof J4))return new J4(e);wAe.call(this,e)}J4.prototype._transform=function(e,t,r){r(null,e)}});var CAe=ye((hcr,kAe)=>{"use strict";var yj;function qAt(e){var t=!1;return function(){t||(t=!0,e.apply(void 0,arguments))}}var EAe=v2().codes,OAt=EAe.ERR_MISSING_ARGS,BAt=EAe.ERR_STREAM_DESTROYED;function SAe(e){if(e)throw e}function NAt(e){return e.setHeader&&typeof e.abort=="function"}function UAt(e,t,r,n){n=qAt(n);var i=!1;e.on("close",function(){i=!0}),yj===void 0&&(yj=xR()),yj(e,{readable:t,writable:r},function(o){if(o)return n(o);i=!0,n()});var a=!1;return function(o){if(!i&&!a){if(a=!0,NAt(e))return e.abort();if(typeof e.destroy=="function")return e.destroy();n(o||new BAt("pipe"))}}}function MAe(e){e()}function VAt(e,t){return e.pipe(t)}function HAt(e){return!e.length||typeof e[e.length-1]!="function"?SAe:e.pop()}function GAt(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];var n=HAt(t);if(Array.isArray(t[0])&&(t=t[0]),t.length<2)throw new OAt("streams");var i,a=t.map(function(o,s){var l=s<t.length-1,u=s>0;return UAt(o,l,u,function(c){i||(i=c),c&&a.forEach(MAe),!l&&(a.forEach(MAe),n(i))})});return t.reduce(VAt)}kAe.exports=GAt});var PAe=ye((dcr,LAe)=>{LAe.exports=K0;var _j=vb().EventEmitter,jAt=Uy();jAt(K0,_j);K0.Readable=rj();K0.Writable=QG();K0.Duplex=p2();K0.Transform=mj();K0.PassThrough=AAe();K0.finished=xR();K0.pipeline=CAe();K0.Stream=K0;function K0(){_j.call(this)}K0.prototype.pipe=function(e,t){var r=this;function n(c){e.writable&&e.write(c)===!1&&r.pause&&r.pause()}r.on("data",n);function i(){r.readable&&r.resume&&r.resume()}e.on("drain",i),!e._isStdio&&(!t||t.end!==!1)&&(r.on("end",o),r.on("close",s));var a=!1;function o(){a||(a=!0,e.end())}function s(){a||(a=!0,typeof e.destroy=="function"&&e.destroy())}function l(c){if(u(),_j.listenerCount(this,"error")===0)throw c}r.on("error",l),e.on("error",l);function u(){r.removeListener("data",n),e.removeListener("drain",i),r.removeListener("end",o),r.removeListener("close",s),r.removeListener("error",l),e.removeListener("error",l),r.removeListener("end",u),r.removeListener("close",u),e.removeListener("close",u)}return r.on("end",u),r.on("close",u),e.on("close",u),e.emit("pipe",r),e}});var h5=ye(Ul=>{var IAe=Object.getOwnPropertyDescriptors||function(t){for(var r=Object.keys(t),n={},i=0;i<r.length;i++)n[r[i]]=Object.getOwnPropertyDescriptor(t,r[i]);return n},WAt=/%[sdj%]/g;Ul.format=function(e){if(!DR(e)){for(var t=[],r=0;r<arguments.length;r++)t.push(O_(arguments[r]));return t.join(" ")}for(var r=1,n=arguments,i=n.length,a=String(e).replace(WAt,function(s){if(s==="%%")return"%";if(r>=i)return s;switch(s){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(l){return"[Circular]"}default:return s}}),o=n[r];r<i;o=n[++r])RR(o)||!f5(o)?a+=" "+o:a+=" "+O_(o);return a};Ul.deprecate=function(e,t){if(typeof process!="undefined"&&process.noDeprecation===!0)return e;if(typeof process=="undefined")return function(){return Ul.deprecate(e,t).apply(this,arguments)};var r=!1;function n(){if(!r){if(process.throwDeprecation)throw new Error(t);process.traceDeprecation?console.trace(t):console.error(t),r=!0}return e.apply(this,arguments)}return n};var kR={},RAe=/^$/;CR="false",CR=CR.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),RAe=new RegExp("^"+CR+"$","i");var CR;Ul.debuglog=function(e){if(e=e.toUpperCase(),!kR[e])if(RAe.test(e)){var t=process.pid;kR[e]=function(){var r=Ul.format.apply(Ul,arguments);console.error("%s %d: %s",e,t,r)}}else kR[e]=function(){};return kR[e]};function O_(e,t){var r={seen:[],stylize:XAt};return arguments.length>=3&&(r.depth=arguments[2]),arguments.length>=4&&(r.colors=arguments[3]),Tj(t)?r.showHidden=t:t&&Ul._extend(r,t),b2(r.showHidden)&&(r.showHidden=!1),b2(r.depth)&&(r.depth=2),b2(r.colors)&&(r.colors=!1),b2(r.customInspect)&&(r.customInspect=!0),r.colors&&(r.stylize=ZAt),PR(r,e,r.depth)}Ul.inspect=O_;O_.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]};O_.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function ZAt(e,t){var r=O_.styles[t];return r?"\x1B["+O_.colors[r][0]+"m"+e+"\x1B["+O_.colors[r][1]+"m":e}function XAt(e,t){return e}function YAt(e){var t={};return e.forEach(function(r,n){t[r]=!0}),t}function PR(e,t,r){if(e.customInspect&&t&&LR(t.inspect)&&t.inspect!==Ul.inspect&&!(t.constructor&&t.constructor.prototype===t)){var n=t.inspect(r,e);return DR(n)||(n=PR(e,n,r)),n}var i=KAt(e,t);if(i)return i;var a=Object.keys(t),o=YAt(a);if(e.showHidden&&(a=Object.getOwnPropertyNames(t)),Q4(t)&&(a.indexOf("message")>=0||a.indexOf("description")>=0))return xj(t);if(a.length===0){if(LR(t)){var s=t.name?": "+t.name:"";return e.stylize("[Function"+s+"]","special")}if($4(t))return e.stylize(RegExp.prototype.toString.call(t),"regexp");if(IR(t))return e.stylize(Date.prototype.toString.call(t),"date");if(Q4(t))return xj(t)}var l="",u=!1,c=["{","}"];if(DAe(t)&&(u=!0,c=["[","]"]),LR(t)){var f=t.name?": "+t.name:"";l=" [Function"+f+"]"}if($4(t)&&(l=" "+RegExp.prototype.toString.call(t)),IR(t)&&(l=" "+Date.prototype.toUTCString.call(t)),Q4(t)&&(l=" "+xj(t)),a.length===0&&(!u||t.length==0))return c[0]+l+c[1];if(r<0)return $4(t)?e.stylize(RegExp.prototype.toString.call(t),"regexp"):e.stylize("[Object]","special");e.seen.push(t);var h;return u?h=JAt(e,t,r,o,a):h=a.map(function(d){return wj(e,t,r,o,d,u)}),e.seen.pop(),$At(h,l,c)}function KAt(e,t){if(b2(t))return e.stylize("undefined","undefined");if(DR(t)){var r="'"+JSON.stringify(t).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return e.stylize(r,"string")}if(zAe(t))return e.stylize(""+t,"number");if(Tj(t))return e.stylize(""+t,"boolean");if(RR(t))return e.stylize("null","null")}function xj(e){return"["+Error.prototype.toString.call(e)+"]"}function JAt(e,t,r,n,i){for(var a=[],o=0,s=t.length;o<s;++o)FAe(t,String(o))?a.push(wj(e,t,r,n,String(o),!0)):a.push("");return i.forEach(function(l){l.match(/^\d+$/)||a.push(wj(e,t,r,n,l,!0))}),a}function wj(e,t,r,n,i,a){var o,s,l;if(l=Object.getOwnPropertyDescriptor(t,i)||{value:t[i]},l.get?l.set?s=e.stylize("[Getter/Setter]","special"):s=e.stylize("[Getter]","special"):l.set&&(s=e.stylize("[Setter]","special")),FAe(n,i)||(o="["+i+"]"),s||(e.seen.indexOf(l.value)<0?(RR(r)?s=PR(e,l.value,null):s=PR(e,l.value,r-1),s.indexOf(`
+`)>-1&&(a?s=s.split(`
+`).map(function(u){return" "+u}).join(`
+`).slice(2):s=`
+`+s.split(`
+`).map(function(u){return" "+u}).join(`
+`))):s=e.stylize("[Circular]","special")),b2(o)){if(a&&i.match(/^\d+$/))return s;o=JSON.stringify(""+i),o.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(o=o.slice(1,-1),o=e.stylize(o,"name")):(o=o.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),o=e.stylize(o,"string"))}return o+": "+s}function $At(e,t,r){var n=0,i=e.reduce(function(a,o){return n++,o.indexOf(`
+`)>=0&&n++,a+o.replace(/\u001b\[\d\d?m/g,"").length+1},0);return i>60?r[0]+(t===""?"":t+`
+ `)+" "+e.join(`,
+ `)+" "+r[1]:r[0]+t+" "+e.join(", ")+" "+r[1]}Ul.types=OG();function DAe(e){return Array.isArray(e)}Ul.isArray=DAe;function Tj(e){return typeof e=="boolean"}Ul.isBoolean=Tj;function RR(e){return e===null}Ul.isNull=RR;function QAt(e){return e==null}Ul.isNullOrUndefined=QAt;function zAe(e){return typeof e=="number"}Ul.isNumber=zAe;function DR(e){return typeof e=="string"}Ul.isString=DR;function eSt(e){return typeof e=="symbol"}Ul.isSymbol=eSt;function b2(e){return e===void 0}Ul.isUndefined=b2;function $4(e){return f5(e)&&Aj(e)==="[object RegExp]"}Ul.isRegExp=$4;Ul.types.isRegExp=$4;function f5(e){return typeof e=="object"&&e!==null}Ul.isObject=f5;function IR(e){return f5(e)&&Aj(e)==="[object Date]"}Ul.isDate=IR;Ul.types.isDate=IR;function Q4(e){return f5(e)&&(Aj(e)==="[object Error]"||e instanceof Error)}Ul.isError=Q4;Ul.types.isNativeError=Q4;function LR(e){return typeof e=="function"}Ul.isFunction=LR;function tSt(e){return e===null||typeof e=="boolean"||typeof e=="number"||typeof e=="string"||typeof e=="symbol"||typeof e=="undefined"}Ul.isPrimitive=tSt;Ul.isBuffer=BG();function Aj(e){return Object.prototype.toString.call(e)}function bj(e){return e<10?"0"+e.toString(10):e.toString(10)}var rSt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function iSt(){var e=new Date,t=[bj(e.getHours()),bj(e.getMinutes()),bj(e.getSeconds())].join(":");return[e.getDate(),rSt[e.getMonth()],t].join(" ")}Ul.log=function(){console.log("%s - %s",iSt(),Ul.format.apply(Ul,arguments))};Ul.inherits=Uy();Ul._extend=function(e,t){if(!t||!f5(t))return e;for(var r=Object.keys(t),n=r.length;n--;)e[r[n]]=t[r[n]];return e};function FAe(e,t){return Object.prototype.hasOwnProperty.call(e,t)}var x2=typeof Symbol!="undefined"?Symbol("util.promisify.custom"):void 0;Ul.promisify=function(t){if(typeof t!="function")throw new TypeError('The "original" argument must be of type Function');if(x2&&t[x2]){var r=t[x2];if(typeof r!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(r,x2,{value:r,enumerable:!1,writable:!1,configurable:!0}),r}function r(){for(var n,i,a=new Promise(function(l,u){n=l,i=u}),o=[],s=0;s<arguments.length;s++)o.push(arguments[s]);o.push(function(l,u){l?i(l):n(u)});try{t.apply(this,o)}catch(l){i(l)}return a}return Object.setPrototypeOf(r,Object.getPrototypeOf(t)),x2&&Object.defineProperty(r,x2,{value:r,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(r,IAe(t))};Ul.promisify.custom=x2;function nSt(e,t){if(!e){var r=new Error("Promise was rejected with a falsy value");r.reason=e,e=r}return t(e)}function aSt(e){if(typeof e!="function")throw new TypeError('The "original" argument must be of type Function');function t(){for(var r=[],n=0;n<arguments.length;n++)r.push(arguments[n]);var i=r.pop();if(typeof i!="function")throw new TypeError("The last argument must be of type Function");var a=this,o=function(){return i.apply(a,arguments)};e.apply(this,r).then(function(s){process.nextTick(o.bind(null,null,s))},function(s){process.nextTick(nSt.bind(null,s,o))})}return Object.setPrototypeOf(t,Object.getPrototypeOf(e)),Object.defineProperties(t,IAe(e)),t}Ul.callbackify=aSt});var Ej=ye((pcr,NAe)=>{"use strict";function B_(e){"@babel/helpers - typeof";return B_=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},B_(e)}function qAe(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,sSt(n.key),n)}}function oSt(e,t,r){return t&&qAe(e.prototype,t),r&&qAe(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function sSt(e){var t=lSt(e,"string");return B_(t)==="symbol"?t:String(t)}function lSt(e,t){if(B_(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(B_(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function uSt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function cSt(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Mj(e,t)}function Mj(e,t){return Mj=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},Mj(e,t)}function fSt(e){var t=vSt();return function(){var n=zR(e),i;if(t){var a=zR(this).constructor;i=Reflect.construct(n,arguments,a)}else i=n.apply(this,arguments);return hSt(this,i)}}function hSt(e,t){if(t&&(B_(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return dSt(e)}function dSt(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function vSt(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function zR(e){return zR=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},zR(e)}var BAe={},d5,Sj;function eE(e,t,r){r||(r=Error);function n(a,o,s){return typeof t=="string"?t:t(a,o,s)}var i=function(a){cSt(s,a);var o=fSt(s);function s(l,u,c){var f;return uSt(this,s),f=o.call(this,n(l,u,c)),f.code=e,f}return oSt(s)}(r);BAe[e]=i}function OAe(e,t){if(Array.isArray(e)){var r=e.length;return e=e.map(function(n){return String(n)}),r>2?"one of ".concat(t," ").concat(e.slice(0,r-1).join(", "),", or ")+e[r-1]:r===2?"one of ".concat(t," ").concat(e[0]," or ").concat(e[1]):"of ".concat(t," ").concat(e[0])}else return"of ".concat(t," ").concat(String(e))}function pSt(e,t,r){return e.substr(!r||r<0?0:+r,t.length)===t}function gSt(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function mSt(e,t,r){return typeof r!="number"&&(r=0),r+t.length>e.length?!1:e.indexOf(t,r)!==-1}eE("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError);eE("ERR_INVALID_ARG_TYPE",function(e,t,r){d5===void 0&&(d5=tE()),d5(typeof e=="string","'name' must be a string");var n;typeof t=="string"&&pSt(t,"not ")?(n="must not be",t=t.replace(/^not /,"")):n="must be";var i;if(gSt(e," argument"))i="The ".concat(e," ").concat(n," ").concat(OAe(t,"type"));else{var a=mSt(e,".")?"property":"argument";i='The "'.concat(e,'" ').concat(a," ").concat(n," ").concat(OAe(t,"type"))}return i+=". Received type ".concat(B_(r)),i},TypeError);eE("ERR_INVALID_ARG_VALUE",function(e,t){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";Sj===void 0&&(Sj=h5());var n=Sj.inspect(t);return n.length>128&&(n="".concat(n.slice(0,128),"...")),"The argument '".concat(e,"' ").concat(r,". Received ").concat(n)},TypeError,RangeError);eE("ERR_INVALID_RETURN_VALUE",function(e,t,r){var n;return r&&r.constructor&&r.constructor.name?n="instance of ".concat(r.constructor.name):n="type ".concat(B_(r)),"Expected ".concat(e,' to be returned from the "').concat(t,'"')+" function but got ".concat(n,".")},TypeError);eE("ERR_MISSING_ARGS",function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];d5===void 0&&(d5=tE()),d5(t.length>0,"At least one arg needs to be specified");var n="The ",i=t.length;switch(t=t.map(function(a){return'"'.concat(a,'"')}),i){case 1:n+="".concat(t[0]," argument");break;case 2:n+="".concat(t[0]," and ").concat(t[1]," arguments");break;default:n+=t.slice(0,i-1).join(", "),n+=", and ".concat(t[i-1]," arguments");break}return"".concat(n," must be specified")},TypeError);NAe.exports.codes=BAe});var KAe=ye((gcr,YAe)=>{"use strict";function UAe(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(e,i).enumerable})),r.push.apply(r,n)}return r}function VAe(e){for(var t=1;t<arguments.length;t++){var r=arguments[t]!=null?arguments[t]:{};t%2?UAe(Object(r),!0).forEach(function(n){ySt(e,n,r[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):UAe(Object(r)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(r,n))})}return e}function ySt(e,t,r){return t=WAe(t),t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _St(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function HAe(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,WAe(n.key),n)}}function xSt(e,t,r){return t&&HAe(e.prototype,t),r&&HAe(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function WAe(e){var t=bSt(e,"string");return Dp(t)==="symbol"?t:String(t)}function bSt(e,t){if(Dp(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(Dp(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function wSt(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&aE(e,t)}function TSt(e){var t=XAe();return function(){var n=oE(e),i;if(t){var a=oE(this).constructor;i=Reflect.construct(n,arguments,a)}else i=n.apply(this,arguments);return ZAe(this,i)}}function ZAe(e,t){if(t&&(Dp(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return kj(e)}function kj(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function Cj(e){var t=typeof Map=="function"?new Map:void 0;return Cj=function(n){if(n===null||!ASt(n))return n;if(typeof n!="function")throw new TypeError("Super expression must either be null or a function");if(typeof t!="undefined"){if(t.has(n))return t.get(n);t.set(n,i)}function i(){return FR(n,arguments,oE(this).constructor)}return i.prototype=Object.create(n.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),aE(i,n)},Cj(e)}function FR(e,t,r){return XAe()?FR=Reflect.construct.bind():FR=function(i,a,o){var s=[null];s.push.apply(s,a);var l=Function.bind.apply(i,s),u=new l;return o&&aE(u,o.prototype),u},FR.apply(null,arguments)}function XAe(){if(typeof Reflect=="undefined"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function ASt(e){return Function.toString.call(e).indexOf("[native code]")!==-1}function aE(e,t){return aE=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,i){return n.__proto__=i,n},aE(e,t)}function oE(e){return oE=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(r){return r.__proto__||Object.getPrototypeOf(r)},oE(e)}function Dp(e){"@babel/helpers - typeof";return Dp=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Dp(e)}var SSt=h5(),Lj=SSt.inspect,MSt=Ej(),ESt=MSt.codes.ERR_INVALID_ARG_TYPE;function GAe(e,t,r){return(r===void 0||r>e.length)&&(r=e.length),e.substring(r-t.length,r)===t}function kSt(e,t){if(t=Math.floor(t),e.length==0||t==0)return"";var r=e.length*t;for(t=Math.floor(Math.log(t)/Math.log(2));t;)e+=e,t--;return e+=e.substring(0,r-e.length),e}var Gg="",rE="",iE="",xv="",w2={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},CSt=10;function jAe(e){var t=Object.keys(e),r=Object.create(Object.getPrototypeOf(e));return t.forEach(function(n){r[n]=e[n]}),Object.defineProperty(r,"message",{value:e.message}),r}function nE(e){return Lj(e,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function LSt(e,t,r){var n="",i="",a=0,o="",s=!1,l=nE(e),u=l.split(`
+`),c=nE(t).split(`
+`),f=0,h="";if(r==="strictEqual"&&Dp(e)==="object"&&Dp(t)==="object"&&e!==null&&t!==null&&(r="strictEqualObject"),u.length===1&&c.length===1&&u[0]!==c[0]){var d=u[0].length+c[0].length;if(d<=CSt){if((Dp(e)!=="object"||e===null)&&(Dp(t)!=="object"||t===null)&&(e!==0||t!==0))return"".concat(w2[r],`
+
+`)+"".concat(u[0]," !== ").concat(c[0],`
+`)}else if(r!=="strictEqualObject"){var v=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(d<v){for(;u[0][f]===c[0][f];)f++;f>2&&(h=`
+ `.concat(kSt(" ",f),"^"),f=0)}}}for(var x=u[u.length-1],b=c[c.length-1];x===b&&(f++<2?o=`
+ `.concat(x).concat(o):n=x,u.pop(),c.pop(),!(u.length===0||c.length===0));)x=u[u.length-1],b=c[c.length-1];var p=Math.max(u.length,c.length);if(p===0){var E=l.split(`
+`);if(E.length>30)for(E[26]="".concat(Gg,"...").concat(xv);E.length>27;)E.pop();return"".concat(w2.notIdentical,`
+
+`).concat(E.join(`
+`),`
+`)}f>3&&(o=`
+`.concat(Gg,"...").concat(xv).concat(o),s=!0),n!==""&&(o=`
+ `.concat(n).concat(o),n="");var k=0,A=w2[r]+`
+`.concat(rE,"+ actual").concat(xv," ").concat(iE,"- expected").concat(xv),L=" ".concat(Gg,"...").concat(xv," Lines skipped");for(f=0;f<p;f++){var _=f-a;if(u.length<f+1)_>1&&f>2&&(_>4?(i+=`
+`.concat(Gg,"...").concat(xv),s=!0):_>3&&(i+=`
+ `.concat(c[f-2]),k++),i+=`
+ `.concat(c[f-1]),k++),a=f,n+=`
+`.concat(iE,"-").concat(xv," ").concat(c[f]),k++;else if(c.length<f+1)_>1&&f>2&&(_>4?(i+=`
+`.concat(Gg,"...").concat(xv),s=!0):_>3&&(i+=`
+ `.concat(u[f-2]),k++),i+=`
+ `.concat(u[f-1]),k++),a=f,i+=`
+`.concat(rE,"+").concat(xv," ").concat(u[f]),k++;else{var C=c[f],M=u[f],g=M!==C&&(!GAe(M,",")||M.slice(0,-1)!==C);g&&GAe(C,",")&&C.slice(0,-1)===M&&(g=!1,M+=","),g?(_>1&&f>2&&(_>4?(i+=`
+`.concat(Gg,"...").concat(xv),s=!0):_>3&&(i+=`
+ `.concat(u[f-2]),k++),i+=`
+ `.concat(u[f-1]),k++),a=f,i+=`
+`.concat(rE,"+").concat(xv," ").concat(M),n+=`
+`.concat(iE,"-").concat(xv," ").concat(C),k+=2):(i+=n,n="",(_===1||f===0)&&(i+=`
+ `.concat(M),k++))}if(k>20&&f<p-2)return"".concat(A).concat(L,`
+`).concat(i,`
+`).concat(Gg,"...").concat(xv).concat(n,`
+`)+"".concat(Gg,"...").concat(xv)}return"".concat(A).concat(s?L:"",`
+`).concat(i).concat(n).concat(o).concat(h)}var PSt=function(e,t){wSt(n,e);var r=TSt(n);function n(i){var a;if(_St(this,n),Dp(i)!=="object"||i===null)throw new ESt("options","Object",i);var o=i.message,s=i.operator,l=i.stackStartFn,u=i.actual,c=i.expected,f=Error.stackTraceLimit;if(Error.stackTraceLimit=0,o!=null)a=r.call(this,String(o));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(Gg="\x1B[34m",rE="\x1B[32m",xv="\x1B[39m",iE="\x1B[31m"):(Gg="",rE="",xv="",iE="")),Dp(u)==="object"&&u!==null&&Dp(c)==="object"&&c!==null&&"stack"in u&&u instanceof Error&&"stack"in c&&c instanceof Error&&(u=jAe(u),c=jAe(c)),s==="deepStrictEqual"||s==="strictEqual")a=r.call(this,LSt(u,c,s));else if(s==="notDeepStrictEqual"||s==="notStrictEqual"){var h=w2[s],d=nE(u).split(`
+`);if(s==="notStrictEqual"&&Dp(u)==="object"&&u!==null&&(h=w2.notStrictEqualObject),d.length>30)for(d[26]="".concat(Gg,"...").concat(xv);d.length>27;)d.pop();d.length===1?a=r.call(this,"".concat(h," ").concat(d[0])):a=r.call(this,"".concat(h,`
+
+`).concat(d.join(`
+`),`
+`))}else{var v=nE(u),x="",b=w2[s];s==="notDeepEqual"||s==="notEqual"?(v="".concat(w2[s],`
+
+`).concat(v),v.length>1024&&(v="".concat(v.slice(0,1021),"..."))):(x="".concat(nE(c)),v.length>512&&(v="".concat(v.slice(0,509),"...")),x.length>512&&(x="".concat(x.slice(0,509),"...")),s==="deepEqual"||s==="equal"?v="".concat(b,`
+
+`).concat(v,`
+
+should equal
+
+`):x=" ".concat(s," ").concat(x)),a=r.call(this,"".concat(v).concat(x))}return Error.stackTraceLimit=f,a.generatedMessage=!o,Object.defineProperty(kj(a),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),a.code="ERR_ASSERTION",a.actual=u,a.expected=c,a.operator=s,Error.captureStackTrace&&Error.captureStackTrace(kj(a),l),a.stack,a.name="AssertionError",ZAe(a)}return xSt(n,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:t,value:function(a,o){return Lj(this,VAe(VAe({},o),{},{customInspect:!1,depth:0}))}}]),n}(Cj(Error),Lj.custom);YAe.exports=PSt});var Pj=ye((mcr,$Ae)=>{"use strict";var JAe=Object.prototype.toString;$Ae.exports=function(t){var r=JAe.call(t),n=r==="[object Arguments]";return n||(n=r!=="[object Array]"&&t!==null&&typeof t=="object"&&typeof t.length=="number"&&t.length>=0&&JAe.call(t.callee)==="[object Function]"),n}});var sSe=ye((ycr,oSe)=>{"use strict";var aSe;Object.keys||(sE=Object.prototype.hasOwnProperty,Ij=Object.prototype.toString,QAe=Pj(),Rj=Object.prototype.propertyIsEnumerable,eSe=!Rj.call({toString:null},"toString"),tSe=Rj.call(function(){},"prototype"),lE=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],qR=function(e){var t=e.constructor;return t&&t.prototype===e},rSe={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},iSe=function(){if(typeof window=="undefined")return!1;for(var e in window)try{if(!rSe["$"+e]&&sE.call(window,e)&&window[e]!==null&&typeof window[e]=="object")try{qR(window[e])}catch(t){return!0}}catch(t){return!0}return!1}(),nSe=function(e){if(typeof window=="undefined"||!iSe)return qR(e);try{return qR(e)}catch(t){return!1}},aSe=function(t){var r=t!==null&&typeof t=="object",n=Ij.call(t)==="[object Function]",i=QAe(t),a=r&&Ij.call(t)==="[object String]",o=[];if(!r&&!n&&!i)throw new TypeError("Object.keys called on a non-object");var s=tSe&&n;if(a&&t.length>0&&!sE.call(t,0))for(var l=0;l<t.length;++l)o.push(String(l));if(i&&t.length>0)for(var u=0;u<t.length;++u)o.push(String(u));else for(var c in t)!(s&&c==="prototype")&&sE.call(t,c)&&o.push(String(c));if(eSe)for(var f=nSe(t),h=0;h<lE.length;++h)!(f&&lE[h]==="constructor")&&sE.call(t,lE[h])&&o.push(lE[h]);return o});var sE,Ij,QAe,Rj,eSe,tSe,lE,qR,rSe,iSe,nSe;oSe.exports=aSe});var Dj=ye((_cr,cSe)=>{"use strict";var ISt=Array.prototype.slice,RSt=Pj(),lSe=Object.keys,OR=lSe?function(t){return lSe(t)}:sSe(),uSe=Object.keys;OR.shim=function(){if(Object.keys){var t=function(){var r=Object.keys(arguments);return r&&r.length===arguments.length}(1,2);t||(Object.keys=function(n){return RSt(n)?uSe(ISt.call(n)):uSe(n)})}else Object.keys=OR;return Object.keys||OR};cSe.exports=OR});var gSe=ye((xcr,pSe)=>{"use strict";var DSt=Dj(),dSe=B8()(),vSe=i5(),fSe=Object,zSt=vSe("Array.prototype.push"),hSe=vSe("Object.prototype.propertyIsEnumerable"),FSt=dSe?Object.getOwnPropertySymbols:null;pSe.exports=function(t,r){if(t==null)throw new TypeError("target must be an object");var n=fSe(t);if(arguments.length===1)return n;for(var i=1;i<arguments.length;++i){var a=fSe(arguments[i]),o=DSt(a),s=dSe&&(Object.getOwnPropertySymbols||FSt);if(s)for(var l=s(a),u=0;u<l.length;++u){var c=l[u];hSe(a,c)&&zSt(o,c)}for(var f=0;f<o.length;++f){var h=o[f];if(hSe(a,h)){var d=a[h];n[h]=d}}}return n}});var ySe=ye((bcr,mSe)=>{"use strict";var zj=gSe(),qSt=function(){if(!Object.assign)return!1;for(var e="abcdefghijklmnopqrst",t=e.split(""),r={},n=0;n<t.length;++n)r[t[n]]=t[n];var i=Object.assign({},r),a="";for(var o in i)a+=o;return e!==a},OSt=function(){if(!Object.assign||!Object.preventExtensions)return!1;var e=Object.preventExtensions({1:2});try{Object.assign(e,"xy")}catch(t){return e[1]==="y"}return!1};mSe.exports=function(){return!Object.assign||qSt()||OSt()?zj:Object.assign}});var Fj=ye((wcr,xSe)=>{"use strict";var _Se=function(e){return e!==e};xSe.exports=function(t,r){return t===0&&r===0?1/t===1/r:!!(t===r||_Se(t)&&_Se(r))}});var BR=ye((Tcr,bSe)=>{"use strict";var BSt=Fj();bSe.exports=function(){return typeof Object.is=="function"?Object.is:BSt}});var uE=ye((Acr,SSe)=>{"use strict";var NSt=Dj(),USt=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",VSt=Object.prototype.toString,HSt=Array.prototype.concat,wSe=Object.defineProperty,GSt=function(e){return typeof e=="function"&&VSt.call(e)==="[object Function]"},jSt=yG()(),TSe=wSe&&jSt,WSt=function(e,t,r,n){if(t in e){if(n===!0){if(e[t]===r)return}else if(!GSt(n)||!n())return}TSe?wSe(e,t,{configurable:!0,enumerable:!1,value:r,writable:!0}):e[t]=r},ASe=function(e,t){var r=arguments.length>2?arguments[2]:{},n=NSt(t);USt&&(n=HSt.call(n,Object.getOwnPropertySymbols(t)));for(var i=0;i<n.length;i+=1)WSt(e,n[i],t[n[i]],r[n[i]])};ASe.supportsDescriptors=!!TSe;SSe.exports=ASe});var ESe=ye((Scr,MSe)=>{"use strict";var ZSt=BR(),XSt=uE();MSe.exports=function(){var t=ZSt();return XSt(Object,{is:t},{is:function(){return Object.is!==t}}),t}});var PSe=ye((Mcr,LSe)=>{"use strict";var YSt=uE(),KSt=N4(),JSt=Fj(),kSe=BR(),$St=ESe(),CSe=KSt(kSe(),Object);YSt(CSe,{getPolyfill:kSe,implementation:JSt,shim:$St});LSe.exports=CSe});var qj=ye((Ecr,ISe)=>{"use strict";ISe.exports=function(t){return t!==t}});var Oj=ye((kcr,RSe)=>{"use strict";var QSt=qj();RSe.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:QSt}});var zSe=ye((Ccr,DSe)=>{"use strict";var eMt=uE(),tMt=Oj();DSe.exports=function(){var t=tMt();return eMt(Number,{isNaN:t},{isNaN:function(){return Number.isNaN!==t}}),t}});var BSe=ye((Lcr,OSe)=>{"use strict";var rMt=N4(),iMt=uE(),nMt=qj(),FSe=Oj(),aMt=zSe(),qSe=rMt(FSe(),Number);iMt(qSe,{getPolyfill:FSe,implementation:nMt,shim:aMt});OSe.exports=qSe});var aMe=ye((Pcr,nMe)=>{"use strict";function NSe(e,t){return uMt(e)||lMt(e,t)||sMt(e,t)||oMt()}function oMt(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function sMt(e,t){if(e){if(typeof e=="string")return USe(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return USe(e,t)}}function USe(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function lMt(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,i,a,o,s=[],l=!0,u=!1;try{if(a=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(c){u=!0,i=c}finally{try{if(!l&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return s}}function uMt(e){if(Array.isArray(e))return e}function J0(e){"@babel/helpers - typeof";return J0=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},J0(e)}var cMt=/a/g.flags!==void 0,WR=function(t){var r=[];return t.forEach(function(n){return r.push(n)}),r},VSe=function(t){var r=[];return t.forEach(function(n,i){return r.push([i,n])}),r},QSe=Object.is?Object.is:PSe(),GR=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},Bj=Number.isNaN?Number.isNaN:BSe();function Uj(e){return e.call.bind(e)}var fE=Uj(Object.prototype.hasOwnProperty),jR=Uj(Object.prototype.propertyIsEnumerable),HSe=Uj(Object.prototype.toString),sp=h5().types,fMt=sp.isAnyArrayBuffer,hMt=sp.isArrayBufferView,GSe=sp.isDate,NR=sp.isMap,jSe=sp.isRegExp,UR=sp.isSet,dMt=sp.isNativeError,vMt=sp.isBoxedPrimitive,WSe=sp.isNumberObject,ZSe=sp.isStringObject,XSe=sp.isBooleanObject,YSe=sp.isBigIntObject,pMt=sp.isSymbolObject,gMt=sp.isFloat32Array,mMt=sp.isFloat64Array;function yMt(e){if(e.length===0||e.length>10)return!0;for(var t=0;t<e.length;t++){var r=e.charCodeAt(t);if(r<48||r>57)return!0}return e.length===10&&e>=Math.pow(2,32)}function VR(e){return Object.keys(e).filter(yMt).concat(GR(e).filter(Object.prototype.propertyIsEnumerable.bind(e)))}function eMe(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,a=Math.min(r,n);i<a;++i)if(e[i]!==t[i]){r=e[i],n=t[i];break}return r<n?-1:n<r?1:0}var HR=void 0,_Mt=!0,xMt=!1,Nj=0,Vj=1,tMe=2,rMe=3;function bMt(e,t){return cMt?e.source===t.source&&e.flags===t.flags:RegExp.prototype.toString.call(e)===RegExp.prototype.toString.call(t)}function wMt(e,t){if(e.byteLength!==t.byteLength)return!1;for(var r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0}function TMt(e,t){return e.byteLength!==t.byteLength?!1:eMe(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))===0}function AMt(e,t){return e.byteLength===t.byteLength&&eMe(new Uint8Array(e),new Uint8Array(t))===0}function SMt(e,t){return WSe(e)?WSe(t)&&QSe(Number.prototype.valueOf.call(e),Number.prototype.valueOf.call(t)):ZSe(e)?ZSe(t)&&String.prototype.valueOf.call(e)===String.prototype.valueOf.call(t):XSe(e)?XSe(t)&&Boolean.prototype.valueOf.call(e)===Boolean.prototype.valueOf.call(t):YSe(e)?YSe(t)&&BigInt.prototype.valueOf.call(e)===BigInt.prototype.valueOf.call(t):pMt(t)&&Symbol.prototype.valueOf.call(e)===Symbol.prototype.valueOf.call(t)}function $0(e,t,r,n){if(e===t)return e!==0?!0:r?QSe(e,t):!0;if(r){if(J0(e)!=="object")return typeof e=="number"&&Bj(e)&&Bj(t);if(J0(t)!=="object"||e===null||t===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(t))return!1}else{if(e===null||J0(e)!=="object")return t===null||J0(t)!=="object"?e==t:!1;if(t===null||J0(t)!=="object")return!1}var i=HSe(e),a=HSe(t);if(i!==a)return!1;if(Array.isArray(e)){if(e.length!==t.length)return!1;var o=VR(e,HR),s=VR(t,HR);return o.length!==s.length?!1:cE(e,t,r,n,Vj,o)}if(i==="[object Object]"&&(!NR(e)&&NR(t)||!UR(e)&&UR(t)))return!1;if(GSe(e)){if(!GSe(t)||Date.prototype.getTime.call(e)!==Date.prototype.getTime.call(t))return!1}else if(jSe(e)){if(!jSe(t)||!bMt(e,t))return!1}else if(dMt(e)||e instanceof Error){if(e.message!==t.message||e.name!==t.name)return!1}else if(hMt(e)){if(!r&&(gMt(e)||mMt(e))){if(!wMt(e,t))return!1}else if(!TMt(e,t))return!1;var l=VR(e,HR),u=VR(t,HR);return l.length!==u.length?!1:cE(e,t,r,n,Nj,l)}else{if(UR(e))return!UR(t)||e.size!==t.size?!1:cE(e,t,r,n,tMe);if(NR(e))return!NR(t)||e.size!==t.size?!1:cE(e,t,r,n,rMe);if(fMt(e)){if(!AMt(e,t))return!1}else if(vMt(e)&&!SMt(e,t))return!1}return cE(e,t,r,n,Nj)}function KSe(e,t){return t.filter(function(r){return jR(e,r)})}function cE(e,t,r,n,i,a){if(arguments.length===5){a=Object.keys(e);var o=Object.keys(t);if(a.length!==o.length)return!1}for(var s=0;s<a.length;s++)if(!fE(t,a[s]))return!1;if(r&&arguments.length===5){var l=GR(e);if(l.length!==0){var u=0;for(s=0;s<l.length;s++){var c=l[s];if(jR(e,c)){if(!jR(t,c))return!1;a.push(c),u++}else if(jR(t,c))return!1}var f=GR(t);if(l.length!==f.length&&KSe(t,f).length!==u)return!1}else{var h=GR(t);if(h.length!==0&&KSe(t,h).length!==0)return!1}}if(a.length===0&&(i===Nj||i===Vj&&e.length===0||e.size===0))return!0;if(n===void 0)n={val1:new Map,val2:new Map,position:0};else{var d=n.val1.get(e);if(d!==void 0){var v=n.val2.get(t);if(v!==void 0)return d===v}n.position++}n.val1.set(e,n.position),n.val2.set(t,n.position);var x=LMt(e,t,r,a,n,i);return n.val1.delete(e),n.val2.delete(t),x}function JSe(e,t,r,n){for(var i=WR(e),a=0;a<i.length;a++){var o=i[a];if($0(t,o,r,n))return e.delete(o),!0}return!1}function iMe(e){switch(J0(e)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":e=+e;case"number":if(Bj(e))return!1}return!0}function MMt(e,t,r){var n=iMe(r);return n!=null?n:t.has(n)&&!e.has(n)}function EMt(e,t,r,n,i){var a=iMe(r);if(a!=null)return a;var o=t.get(a);return o===void 0&&!t.has(a)||!$0(n,o,!1,i)?!1:!e.has(a)&&$0(n,o,!1,i)}function kMt(e,t,r,n){for(var i=null,a=WR(e),o=0;o<a.length;o++){var s=a[o];if(J0(s)==="object"&&s!==null)i===null&&(i=new Set),i.add(s);else if(!t.has(s)){if(r||!MMt(e,t,s))return!1;i===null&&(i=new Set),i.add(s)}}if(i!==null){for(var l=WR(t),u=0;u<l.length;u++){var c=l[u];if(J0(c)==="object"&&c!==null){if(!JSe(i,c,r,n))return!1}else if(!r&&!e.has(c)&&!JSe(i,c,r,n))return!1}return i.size===0}return!0}function $Se(e,t,r,n,i,a){for(var o=WR(e),s=0;s<o.length;s++){var l=o[s];if($0(r,l,i,a)&&$0(n,t.get(l),i,a))return e.delete(l),!0}return!1}function CMt(e,t,r,n){for(var i=null,a=VSe(e),o=0;o<a.length;o++){var s=NSe(a[o],2),l=s[0],u=s[1];if(J0(l)==="object"&&l!==null)i===null&&(i=new Set),i.add(l);else{var c=t.get(l);if(c===void 0&&!t.has(l)||!$0(u,c,r,n)){if(r||!EMt(e,t,l,u,n))return!1;i===null&&(i=new Set),i.add(l)}}}if(i!==null){for(var f=VSe(t),h=0;h<f.length;h++){var d=NSe(f[h],2),v=d[0],x=d[1];if(J0(v)==="object"&&v!==null){if(!$Se(i,e,v,x,r,n))return!1}else if(!r&&(!e.has(v)||!$0(e.get(v),x,!1,n))&&!$Se(i,e,v,x,!1,n))return!1}return i.size===0}return!0}function LMt(e,t,r,n,i,a){var o=0;if(a===tMe){if(!kMt(e,t,r,i))return!1}else if(a===rMe){if(!CMt(e,t,r,i))return!1}else if(a===Vj)for(;o<e.length;o++)if(fE(e,o)){if(!fE(t,o)||!$0(e[o],t[o],r,i))return!1}else{if(fE(t,o))return!1;for(var s=Object.keys(e);o<s.length;o++){var l=s[o];if(!fE(t,l)||!$0(e[l],t[l],r,i))return!1}return s.length===Object.keys(t).length}for(o=0;o<n.length;o++){var u=n[o];if(!$0(e[u],t[u],r,i))return!1}return!0}function PMt(e,t){return $0(e,t,xMt)}function IMt(e,t){return $0(e,t,_Mt)}nMe.exports={isDeepEqual:PMt,isDeepStrictEqual:IMt}});var tE=ye((Icr,TMe)=>{"use strict";function jg(e){"@babel/helpers - typeof";return jg=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},jg(e)}function oMe(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,DMt(n.key),n)}}function RMt(e,t,r){return t&&oMe(e.prototype,t),r&&oMe(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function DMt(e){var t=zMt(e,"string");return jg(t)==="symbol"?t:String(t)}function zMt(e,t){if(jg(e)!=="object"||e===null)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var n=r.call(e,t||"default");if(jg(n)!=="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function FMt(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}var qMt=Ej(),hE=qMt.codes,sMe=hE.ERR_AMBIGUOUS_ARGUMENT,v5=hE.ERR_INVALID_ARG_TYPE,OMt=hE.ERR_INVALID_ARG_VALUE,BMt=hE.ERR_INVALID_RETURN_VALUE,U_=hE.ERR_MISSING_ARGS,V_=KAe(),NMt=h5(),ZR=NMt.inspect,fMe=h5().types,UMt=fMe.isPromise,XR=fMe.isRegExp,VMt=ySe()(),hMe=BR()(),YR=i5()("RegExp.prototype.test"),N_,KR;function dE(){var e=aMe();N_=e.isDeepEqual,KR=e.isDeepStrictEqual}var lMe=!1,sf=TMe.exports=Hj,JR={};function Wg(e){throw e.message instanceof Error?e.message:new V_(e)}function dMe(e,t,r,n,i){var a=arguments.length,o;if(a===0)o="Failed";else if(a===1)r=e,e=void 0;else{if(lMe===!1){lMe=!0;var s=process.emitWarning?process.emitWarning:console.warn.bind(console);s("assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.","DeprecationWarning","DEP0094")}a===2&&(n="!=")}if(r instanceof Error)throw r;var l={actual:e,expected:t,operator:n===void 0?"fail":n,stackStartFn:i||dMe};r!==void 0&&(l.message=r);var u=new V_(l);throw o&&(u.message=o,u.generatedMessage=!0),u}sf.fail=dMe;sf.AssertionError=V_;function vMe(e,t,r,n){if(!r){var i=!1;if(t===0)i=!0,n="No value argument passed to `assert.ok()`";else if(n instanceof Error)throw n;var a=new V_({actual:r,expected:!0,message:n,operator:"==",stackStartFn:e});throw a.generatedMessage=i,a}}function Hj(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];vMe.apply(void 0,[Hj,t.length].concat(t))}sf.ok=Hj;sf.equal=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");t!=r&&Wg({actual:t,expected:r,message:n,operator:"==",stackStartFn:e})};sf.notEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");t==r&&Wg({actual:t,expected:r,message:n,operator:"!=",stackStartFn:e})};sf.deepEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&dE(),N_(t,r)||Wg({actual:t,expected:r,message:n,operator:"deepEqual",stackStartFn:e})};sf.notDeepEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&dE(),N_(t,r)&&Wg({actual:t,expected:r,message:n,operator:"notDeepEqual",stackStartFn:e})};sf.deepStrictEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&dE(),KR(t,r)||Wg({actual:t,expected:r,message:n,operator:"deepStrictEqual",stackStartFn:e})};sf.notDeepStrictEqual=pMe;function pMe(e,t,r){if(arguments.length<2)throw new U_("actual","expected");N_===void 0&&dE(),KR(e,t)&&Wg({actual:e,expected:t,message:r,operator:"notDeepStrictEqual",stackStartFn:pMe})}sf.strictEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");hMe(t,r)||Wg({actual:t,expected:r,message:n,operator:"strictEqual",stackStartFn:e})};sf.notStrictEqual=function e(t,r,n){if(arguments.length<2)throw new U_("actual","expected");hMe(t,r)&&Wg({actual:t,expected:r,message:n,operator:"notStrictEqual",stackStartFn:e})};var uMe=RMt(function e(t,r,n){var i=this;FMt(this,e),r.forEach(function(a){a in t&&(n!==void 0&&typeof n[a]=="string"&&XR(t[a])&&YR(t[a],n[a])?i[a]=n[a]:i[a]=t[a])})});function HMt(e,t,r,n,i,a){if(!(r in e)||!KR(e[r],t[r])){if(!n){var o=new uMe(e,i),s=new uMe(t,i,e),l=new V_({actual:o,expected:s,operator:"deepStrictEqual",stackStartFn:a});throw l.actual=e,l.expected=t,l.operator=a.name,l}Wg({actual:e,expected:t,message:n,operator:a.name,stackStartFn:a})}}function gMe(e,t,r,n){if(typeof t!="function"){if(XR(t))return YR(t,e);if(arguments.length===2)throw new v5("expected",["Function","RegExp"],t);if(jg(e)!=="object"||e===null){var i=new V_({actual:e,expected:t,message:r,operator:"deepStrictEqual",stackStartFn:n});throw i.operator=n.name,i}var a=Object.keys(t);if(t instanceof Error)a.push("name","message");else if(a.length===0)throw new OMt("error",t,"may not be an empty object");return N_===void 0&&dE(),a.forEach(function(o){typeof e[o]=="string"&&XR(t[o])&&YR(t[o],e[o])||HMt(e,t,o,r,a,n)}),!0}return t.prototype!==void 0&&e instanceof t?!0:Error.isPrototypeOf(t)?!1:t.call({},e)===!0}function mMe(e){if(typeof e!="function")throw new v5("fn","Function",e);try{e()}catch(t){return t}return JR}function cMe(e){return UMt(e)||e!==null&&jg(e)==="object"&&typeof e.then=="function"&&typeof e.catch=="function"}function yMe(e){return Promise.resolve().then(function(){var t;if(typeof e=="function"){if(t=e(),!cMe(t))throw new BMt("instance of Promise","promiseFn",t)}else if(cMe(e))t=e;else throw new v5("promiseFn",["Function","Promise"],e);return Promise.resolve().then(function(){return t}).then(function(){return JR}).catch(function(r){return r})})}function _Me(e,t,r,n){if(typeof r=="string"){if(arguments.length===4)throw new v5("error",["Object","Error","Function","RegExp"],r);if(jg(t)==="object"&&t!==null){if(t.message===r)throw new sMe("error/message",'The error message "'.concat(t.message,'" is identical to the message.'))}else if(t===r)throw new sMe("error/message",'The error "'.concat(t,'" is identical to the message.'));n=r,r=void 0}else if(r!=null&&jg(r)!=="object"&&typeof r!="function")throw new v5("error",["Object","Error","Function","RegExp"],r);if(t===JR){var i="";r&&r.name&&(i+=" (".concat(r.name,")")),i+=n?": ".concat(n):".";var a=e.name==="rejects"?"rejection":"exception";Wg({actual:void 0,expected:r,operator:e.name,message:"Missing expected ".concat(a).concat(i),stackStartFn:e})}if(r&&!gMe(t,r,n,e))throw t}function xMe(e,t,r,n){if(t!==JR){if(typeof r=="string"&&(n=r,r=void 0),!r||gMe(t,r)){var i=n?": ".concat(n):".",a=e.name==="doesNotReject"?"rejection":"exception";Wg({actual:t,expected:r,operator:e.name,message:"Got unwanted ".concat(a).concat(i,`
+`)+'Actual message: "'.concat(t&&t.message,'"'),stackStartFn:e})}throw t}}sf.throws=function e(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];_Me.apply(void 0,[e,mMe(t)].concat(n))};sf.rejects=function e(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return yMe(t).then(function(a){return _Me.apply(void 0,[e,a].concat(n))})};sf.doesNotThrow=function e(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];xMe.apply(void 0,[e,mMe(t)].concat(n))};sf.doesNotReject=function e(t){for(var r=arguments.length,n=new Array(r>1?r-1:0),i=1;i<r;i++)n[i-1]=arguments[i];return yMe(t).then(function(a){return xMe.apply(void 0,[e,a].concat(n))})};sf.ifError=function e(t){if(t!=null){var r="ifError got unwanted exception: ";jg(t)==="object"&&typeof t.message=="string"?t.message.length===0&&t.constructor?r+=t.constructor.name:r+=t.message:r+=ZR(t);var n=new V_({actual:t,expected:null,operator:"ifError",message:r,stackStartFn:e}),i=t.stack;if(typeof i=="string"){var a=i.split(`
+`);a.shift();for(var o=n.stack.split(`
+`),s=0;s<a.length;s++){var l=o.indexOf(a[s]);if(l!==-1){o=o.slice(0,l);break}}n.stack="".concat(o.join(`
+`),`
+`).concat(a.join(`
+`))}throw n}};function bMe(e,t,r,n,i){if(!XR(t))throw new v5("regexp","RegExp",t);var a=i==="match";if(typeof e!="string"||YR(t,e)!==a){if(r instanceof Error)throw r;var o=!r;r=r||(typeof e!="string"?'The "string" argument must be of type string. Received type '+"".concat(jg(e)," (").concat(ZR(e),")"):(a?"The input did not match the regular expression ":"The input was expected to not match the regular expression ")+"".concat(ZR(t),`. Input:
+
+`).concat(ZR(e),`
+`));var s=new V_({actual:e,expected:t,message:r,operator:i,stackStartFn:n});throw s.generatedMessage=o,s}}sf.match=function e(t,r,n){bMe(t,r,n,e,"match")};sf.doesNotMatch=function e(t,r,n){bMe(t,r,n,e,"doesNotMatch")};function wMe(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];vMe.apply(void 0,[wMe,t.length].concat(t))}sf.strict=VMt(wMe,sf,{equal:sf.strictEqual,deepEqual:sf.deepStrictEqual,notEqual:sf.notStrictEqual,notDeepEqual:sf.notDeepStrictEqual});sf.strict.strict=sf.strict});var SMe=ye((Rcr,AMe)=>{var vE=1e3,pE=vE*60,gE=pE*60,mE=gE*24,GMt=mE*365.25;AMe.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0)return jMt(e);if(r==="number"&&isNaN(e)===!1)return t.long?ZMt(e):WMt(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function jMt(e){if(e=String(e),!(e.length>100)){var t=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(t){var r=parseFloat(t[1]),n=(t[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*GMt;case"days":case"day":case"d":return r*mE;case"hours":case"hour":case"hrs":case"hr":case"h":return r*gE;case"minutes":case"minute":case"mins":case"min":case"m":return r*pE;case"seconds":case"second":case"secs":case"sec":case"s":return r*vE;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function WMt(e){return e>=mE?Math.round(e/mE)+"d":e>=gE?Math.round(e/gE)+"h":e>=pE?Math.round(e/pE)+"m":e>=vE?Math.round(e/vE)+"s":e+"ms"}function ZMt(e){return $R(e,mE,"day")||$R(e,gE,"hour")||$R(e,pE,"minute")||$R(e,vE,"second")||e+" ms"}function $R(e,t,r){if(!(e<t))return e<t*1.5?Math.floor(e/t)+" "+r:Math.ceil(e/t)+" "+r+"s"}});var EMe=ye(($u,MMe)=>{$u=MMe.exports=jj.debug=jj.default=jj;$u.coerce=$Mt;$u.disable=KMt;$u.enable=YMt;$u.enabled=JMt;$u.humanize=SMe();$u.names=[];$u.skips=[];$u.formatters={};var Gj;function XMt(e){var t=0,r;for(r in e)t=(t<<5)-t+e.charCodeAt(r),t|=0;return $u.colors[Math.abs(t)%$u.colors.length]}function jj(e){function t(){if(t.enabled){var r=t,n=+new Date,i=n-(Gj||n);r.diff=i,r.prev=Gj,r.curr=n,Gj=n;for(var a=new Array(arguments.length),o=0;o<a.length;o++)a[o]=arguments[o];a[0]=$u.coerce(a[0]),typeof a[0]!="string"&&a.unshift("%O");var s=0;a[0]=a[0].replace(/%([a-zA-Z%])/g,function(u,c){if(u==="%%")return u;s++;var f=$u.formatters[c];if(typeof f=="function"){var h=a[s];u=f.call(r,h),a.splice(s,1),s--}return u}),$u.formatArgs.call(r,a);var l=t.log||$u.log||console.log.bind(console);l.apply(r,a)}}return t.namespace=e,t.enabled=$u.enabled(e),t.useColors=$u.useColors(),t.color=XMt(e),typeof $u.init=="function"&&$u.init(t),t}function YMt(e){$u.save(e),$u.names=[],$u.skips=[];for(var t=(typeof e=="string"?e:"").split(/[\s,]+/),r=t.length,n=0;n<r;n++)t[n]&&(e=t[n].replace(/\*/g,".*?"),e[0]==="-"?$u.skips.push(new RegExp("^"+e.substr(1)+"$")):$u.names.push(new RegExp("^"+e+"$")))}function KMt(){$u.enable("")}function JMt(e){var t,r;for(t=0,r=$u.skips.length;t<r;t++)if($u.skips[t].test(e))return!1;for(t=0,r=$u.names.length;t<r;t++)if($u.names[t].test(e))return!0;return!1}function $Mt(e){return e instanceof Error?e.stack||e.message:e}});var LMe=ye((lp,CMe)=>{lp=CMe.exports=EMe();lp.log=t4t;lp.formatArgs=e4t;lp.save=r4t;lp.load=kMe;lp.useColors=QMt;lp.storage=typeof chrome!="undefined"&&typeof chrome.storage!="undefined"?chrome.storage.local:i4t();lp.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function QMt(){return typeof window!="undefined"&&window.process&&window.process.type==="renderer"?!0:typeof document!="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}lp.formatters.j=function(e){try{return JSON.stringify(e)}catch(t){return"[UnexpectedJSONParseError]: "+t.message}};function e4t(e){var t=this.useColors;if(e[0]=(t?"%c":"")+this.namespace+(t?" %c":" ")+e[0]+(t?"%c ":" ")+"+"+lp.humanize(this.diff),!!t){var r="color: "+this.color;e.splice(1,0,r,"color: inherit");var n=0,i=0;e[0].replace(/%[a-zA-Z%]/g,function(a){a!=="%%"&&(n++,a==="%c"&&(i=n))}),e.splice(i,0,r)}}function t4t(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function r4t(e){try{e==null?lp.storage.removeItem("debug"):lp.storage.debug=e}catch(t){}}function kMe(){var e;try{e=lp.storage.debug}catch(t){}return!e&&typeof process!="undefined"&&"env"in process&&(e=process.env.DEBUG),e}lp.enable(kMe());function i4t(){try{return window.localStorage}catch(e){}}});var OMe=ye((Dcr,qMe)=>{var p5=tE(),H_=LMe()("stream-parser");qMe.exports=a4t;var IMe=-1,QR=0,n4t=1,RMe=2;function a4t(e){var t=e&&typeof e._transform=="function",r=e&&typeof e._write=="function";if(!t&&!r)throw new Error("must pass a Writable or Transform stream in");H_("extending Parser into stream"),e._bytes=o4t,e._skipBytes=s4t,t&&(e._passthrough=l4t),t?e._transform=c4t:e._write=u4t}function yE(e){H_("initializing parser stream"),e._parserBytesLeft=0,e._parserBuffers=[],e._parserBuffered=0,e._parserState=IMe,e._parserCallback=null,typeof e.push=="function"&&(e._parserOutput=e.push.bind(e)),e._parserInit=!0}function o4t(e,t){p5(!this._parserCallback,'there is already a "callback" set!'),p5(isFinite(e)&&e>0,'can only buffer a finite number of bytes > 0, got "'+e+'"'),this._parserInit||yE(this),H_("buffering %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=QR}function s4t(e,t){p5(!this._parserCallback,'there is already a "callback" set!'),p5(e>0,'can only skip > 0 bytes, got "'+e+'"'),this._parserInit||yE(this),H_("skipping %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=n4t}function l4t(e,t){p5(!this._parserCallback,'There is already a "callback" set!'),p5(e>0,'can only pass through > 0 bytes, got "'+e+'"'),this._parserInit||yE(this),H_("passing through %o bytes",e),this._parserBytesLeft=e,this._parserCallback=t,this._parserState=RMe}function u4t(e,t,r){this._parserInit||yE(this),H_("write(%o bytes)",e.length),typeof t=="function"&&(r=t),zMe(this,e,null,r)}function c4t(e,t,r){this._parserInit||yE(this),H_("transform(%o bytes)",e.length),typeof t!="function"&&(t=this._parserOutput),zMe(this,e,t,r)}function DMe(e,t,r,n){return e._parserBytesLeft<=0?n(new Error("got data but not currently parsing anything")):t.length<=e._parserBytesLeft?function(){return PMe(e,t,r,n)}:function(){var i=t.slice(0,e._parserBytesLeft);return PMe(e,i,r,function(a){if(a)return n(a);if(t.length>i.length)return function(){return DMe(e,t.slice(i.length),r,n)}})}}function PMe(e,t,r,n){if(e._parserBytesLeft-=t.length,H_("%o bytes left for stream piece",e._parserBytesLeft),e._parserState===QR?(e._parserBuffers.push(t),e._parserBuffered+=t.length):e._parserState===RMe&&r(t),e._parserBytesLeft===0){var i=e._parserCallback;if(i&&e._parserState===QR&&e._parserBuffers.length>1&&(t=Buffer.concat(e._parserBuffers,e._parserBuffered)),e._parserState!==QR&&(t=null),e._parserCallback=null,e._parserBuffered=0,e._parserState=IMe,e._parserBuffers.splice(0),i){var a=[];t&&a.push(t),r&&a.push(r);var o=i.length>a.length;o&&a.push(FMe(n));var s=i.apply(e,a);if(!o||n===s)return n}}else return n}var zMe=FMe(DMe);function FMe(e){return function(){for(var t=e.apply(this,arguments);typeof t=="function";)t=t();return t}}});var Eu=ye(Gy=>{"use strict";var BMe=PAe().Transform,f4t=OMe();function _E(){BMe.call(this,{readableObjectMode:!0})}_E.prototype=Object.create(BMe.prototype);_E.prototype.constructor=_E;f4t(_E.prototype);Gy.ParserStream=_E;Gy.sliceEq=function(e,t,r){for(var n=t,i=0;i<r.length;)if(e[n++]!==r[i++])return!1;return!0};Gy.str2arr=function(e,t){var r=[],n=0;if(t&&t==="hex")for(;n<e.length;)r.push(parseInt(e.slice(n,n+2),16)),n+=2;else for(;n<e.length;n++)r.push(e.charCodeAt(n)&255);return r};Gy.readUInt16LE=function(e,t){return e[t]|e[t+1]<<8};Gy.readUInt16BE=function(e,t){return e[t+1]|e[t]<<8};Gy.readUInt32LE=function(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]*16777216};Gy.readUInt32BE=function(e,t){return e[t+3]|e[t+2]<<8|e[t+1]<<16|e[t]*16777216};function eD(e,t,r){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||"",this.name=this.constructor.name,this.message=e,t&&(this.code=t),r&&(this.statusCode=r)}eD.prototype=Object.create(Error.prototype);eD.prototype.constructor=eD;Gy.ProbeError=eD});var NMe=ye((Fcr,tD)=>{"use strict";var g5=Eu().readUInt16BE,Zj=Eu().readUInt32BE;function xE(e,t){if(e.length<4+t)return null;var r=Zj(e,t);return e.length<r+t||r<8?null:{boxtype:String.fromCharCode.apply(null,e.slice(t+4,t+8)),data:e.slice(t+8,t+r),end:t+r}}tD.exports.unbox=xE;function h4t(e,t){for(var r=0;;){var n=xE(e,r);if(!n)break;switch(n.boxtype){case"ispe":t.sizes.push({width:Zj(n.data,4),height:Zj(n.data,8)});break;case"irot":t.transforms.push({type:"irot",value:n.data[0]&3});break;case"imir":t.transforms.push({type:"imir",value:n.data[0]&1});break}r=n.end}}function Wj(e,t,r){for(var n=0,i=0;i<r;i++)n=n*256+(e[t+i]||0);return n}function d4t(e,t){for(var r=e[4]>>4&15,n=e[4]&15,i=e[5]>>4&15,a=g5(e,6),o=8,s=0;s<a;s++){var l=g5(e,o);o+=2;var u=g5(e,o);o+=2;var c=Wj(e,o,i);o+=i;var f=g5(e,o);if(o+=2,u===0&&f===1){var h=Wj(e,o,r),d=Wj(e,o+r,n);t.item_loc[l]={length:d,offset:h+c}}o+=f*(r+n)}}function v4t(e,t){for(var r=g5(e,4),n=6,i=0;i<r;i++){var a=xE(e,n);if(!a)break;if(a.boxtype==="infe"){for(var o=g5(a.data,4),s="",l=8;l<a.data.length&&a.data[l];l++)s+=String.fromCharCode(a.data[l]);t.item_inf[s]=o}n=a.end}}function p4t(e,t){for(var r=0;;){var n=xE(e,r);if(!n)break;n.boxtype==="ipco"&&h4t(n.data,t),r=n.end}}function g4t(e,t){for(var r=4;;){var n=xE(e,r);if(!n)break;n.boxtype==="iprp"&&p4t(n.data,t),n.boxtype==="iloc"&&d4t(n.data,t),n.boxtype==="iinf"&&v4t(n.data,t),r=n.end}}function m4t(e){var t=e.reduce(function(i,a){return i.width>a.width||i.width===a.width&&i.height>a.height?i:a}),r=e.reduce(function(i,a){return i.height>a.height||i.height===a.height&&i.width>a.width?i:a}),n;return t.width>r.height||t.width===r.height&&t.height>r.width?n=t:n=r,n}tD.exports.readSizeFromMeta=function(e){var t={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(g4t(e,t),!!t.sizes.length){var r=m4t(t.sizes),n=1;t.transforms.forEach(function(a){var o={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},s={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(a.type==="imir"&&(a.value===0?n=s[n]:(n=s[n],n=o[n],n=o[n])),a.type==="irot")for(var l=0;l<a.value;l++)n=o[n]});var i=null;return t.item_inf.Exif&&(i=t.item_loc[t.item_inf.Exif]),{width:r.width,height:r.height,orientation:t.transforms.length?n:null,variants:t.sizes,exif_location:i}}};tD.exports.getMimeType=function(e){var t=String.fromCharCode.apply(null,e.slice(0,4)),r={};r[t]=!0;for(var n=8;n<e.length;n+=4)r[String.fromCharCode.apply(null,e.slice(n,n+4))]=!0;if(!(!r.mif1&&!r.msf1&&!r.miaf))return t==="avif"||t==="avis"||t==="avio"?{type:"avif",mime:"image/avif"}:t==="heic"||t==="heix"?{type:"heic",mime:"image/heic"}:t==="hevc"||t==="hevx"?{type:"heic",mime:"image/heic-sequence"}:r.avif||r.avis?{type:"avif",mime:"image/avif"}:r.heic||r.heix||r.hevc||r.hevx||r.heis?r.msf1?{type:"heif",mime:"image/heif-sequence"}:{type:"heif",mime:"image/heif"}:{type:"avif",mime:"image/avif"}}});var iD=ye((qcr,Xj)=>{"use strict";function rD(e,t){var r=new Error(e);return r.code=t,r}function y4t(e){try{return decodeURIComponent(escape(e))}catch(t){return e}}function jy(e,t,r){this.input=e.subarray(t,r),this.start=t;var n=String.fromCharCode.apply(null,this.input.subarray(0,4));if(n!=="II*\0"&&n!=="MM\0*")throw rD("invalid TIFF signature","EBADDATA");this.big_endian=n[0]==="M"}jy.prototype.each=function(e){this.aborted=!1;var t=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:t}];this.ifds_to_read.length>0&&!this.aborted;){var r=this.ifds_to_read.shift();r.offset&&this.scan_ifd(r.id,r.offset,e)}};jy.prototype.read_uint16=function(e){var t=this.input;if(e+2>t.length)throw rD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*256+t[e+1]:t[e]+t[e+1]*256};jy.prototype.read_uint32=function(e){var t=this.input;if(e+4>t.length)throw rD("unexpected EOF","EBADDATA");return this.big_endian?t[e]*16777216+t[e+1]*65536+t[e+2]*256+t[e+3]:t[e]+t[e+1]*256+t[e+2]*65536+t[e+3]*16777216};jy.prototype.is_subifd_link=function(e,t){return e===0&&t===34665||e===0&&t===34853||e===34665&&t===40965};jy.prototype.exif_format_length=function(e){switch(e){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}};jy.prototype.exif_format_read=function(e,t){var r;switch(e){case 1:case 2:return r=this.input[t],r;case 6:return r=this.input[t],r|(r&128)*33554430;case 3:return r=this.read_uint16(t),r;case 8:return r=this.read_uint16(t),r|(r&32768)*131070;case 4:return r=this.read_uint32(t),r;case 9:return r=this.read_uint32(t),r|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}};jy.prototype.scan_ifd=function(e,t,r){var n=this.read_uint16(t);t+=2;for(var i=0;i<n;i++){var a=this.read_uint16(t),o=this.read_uint16(t+2),s=this.read_uint32(t+4),l=this.exif_format_length(o),u=s*l,c=u<=4?t+8:this.read_uint32(t+8),f=!1;if(c+u>this.input.length)throw rD("unexpected EOF","EBADDATA");for(var h=[],d=c,v=0;v<s;v++,d+=l){var x=this.exif_format_read(o,d);if(x===null){h=null;break}h.push(x)}Array.isArray(h)&&o===2&&(h=y4t(String.fromCharCode.apply(null,h)),h&&h[h.length-1]==="\0"&&(h=h.slice(0,-1))),this.is_subifd_link(e,a)&&Array.isArray(h)&&Number.isInteger(h[0])&&h[0]>0&&(this.ifds_to_read.push({id:a,offset:h[0]}),f=!0);var b={is_big_endian:this.big_endian,ifd:e,tag:a,format:o,count:s,entry_offset:t+this.start,data_length:u,data_offset:c+this.start,value:h,is_subifd_link:f};if(r(b)===!1){this.aborted=!0;return}t+=12}e===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(t)})};Xj.exports.ExifParser=jy;Xj.exports.get_orientation=function(e){var t=0;try{return new jy(e,0,e.length).each(function(r){if(r.ifd===0&&r.tag===274&&Array.isArray(r.value))return t=r.value[0],!1}),t}catch(r){return-1}}});var VMe=ye((Ocr,UMe)=>{"use strict";var _4t=Eu().str2arr,x4t=Eu().sliceEq,b4t=Eu().readUInt32BE,nD=NMe(),w4t=iD(),T4t=_4t("ftyp");UMe.exports=function(e){if(x4t(e,4,T4t)){var t=nD.unbox(e,0);if(t){var r=nD.getMimeType(t.data);if(r){for(var n,i=t.end;;){var a=nD.unbox(e,i);if(!a)break;if(i=a.end,a.boxtype==="mdat")return;if(a.boxtype==="meta"){n=a.data;break}}if(n){var o=nD.readSizeFromMeta(n);if(o){var s={width:o.width,height:o.height,type:r.type,mime:r.mime,wUnits:"px",hUnits:"px"};if(o.variants.length>1&&(s.variants=o.variants),o.orientation&&(s.orientation=o.orientation),o.exif_location&&o.exif_location.offset+o.exif_location.length<=e.length){var l=b4t(e,o.exif_location.offset),u=e.slice(o.exif_location.offset+l+4,o.exif_location.offset+o.exif_location.length),c=w4t.get_orientation(u);c>0&&(s.orientation=c)}return s}}}}}}});var jMe=ye((Bcr,GMe)=>{"use strict";var A4t=Eu().str2arr,S4t=Eu().sliceEq,HMe=Eu().readUInt16LE,M4t=A4t("BM");GMe.exports=function(e){if(!(e.length<26)&&S4t(e,0,M4t))return{width:HMe(e,18),height:HMe(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}});var KMe=ye((Ncr,YMe)=>{"use strict";var XMe=Eu().str2arr,WMe=Eu().sliceEq,ZMe=Eu().readUInt16LE,E4t=XMe("GIF87a"),k4t=XMe("GIF89a");YMe.exports=function(e){if(!(e.length<10)&&!(!WMe(e,0,E4t)&&!WMe(e,0,k4t)))return{width:ZMe(e,6),height:ZMe(e,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}});var QMe=ye((Ucr,$Me)=>{"use strict";var Yj=Eu().readUInt16LE,C4t=0,L4t=1,JMe=16;$Me.exports=function(e){var t=Yj(e,0),r=Yj(e,2),n=Yj(e,4);if(!(t!==C4t||r!==L4t||!n)){for(var i=[],a={width:0,height:0},o=0;o<n;o++){var s=e[6+JMe*o]||256,l=e[6+JMe*o+1]||256,u={width:s,height:l};i.push(u),(s>a.width||l>a.height)&&(a=u)}return{width:a.width,height:a.height,variants:i,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}});var t4e=ye((Vcr,e4e)=>{"use strict";var Kj=Eu().readUInt16BE,P4t=Eu().str2arr,I4t=Eu().sliceEq,R4t=iD(),D4t=P4t("Exif\0\0");e4e.exports=function(e){if(!(e.length<2)&&!(e[0]!==255||e[1]!==216||e[2]!==255))for(var t=2;;){for(;;){if(e.length-t<2)return;if(e[t++]===255)break}for(var r=e[t++],n;r===255;)r=e[t++];if(208<=r&&r<=217||r===1)n=0;else if(192<=r&&r<=254){if(e.length-t<2)return;n=Kj(e,t)-2,t+=2}else return;if(r===217||r===218)return;var i;if(r===225&&n>=10&&I4t(e,t,D4t)&&(i=R4t.get_orientation(e.slice(t+6,t+n))),n>=5&&192<=r&&r<=207&&r!==196&&r!==200&&r!==204){if(e.length-t<n)return;var a={width:Kj(e,t+3),height:Kj(e,t+1),type:"jpg",mime:"image/jpeg",wUnits:"px",hUnits:"px"};return i>0&&(a.orientation=i),a}t+=n}}});var o4e=ye((Hcr,a4e)=>{"use strict";var n4e=Eu().str2arr,r4e=Eu().sliceEq,i4e=Eu().readUInt32BE,z4t=n4e(`\x89PNG\r
+
+`),F4t=n4e("IHDR");a4e.exports=function(e){if(!(e.length<24)&&r4e(e,0,z4t)&&r4e(e,12,F4t))return{width:i4e(e,16),height:i4e(e,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}});var u4e=ye((Gcr,l4e)=>{"use strict";var q4t=Eu().str2arr,O4t=Eu().sliceEq,s4e=Eu().readUInt32BE,B4t=q4t("8BPS\0");l4e.exports=function(e){if(!(e.length<22)&&O4t(e,0,B4t))return{width:s4e(e,18),height:s4e(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}});var h4e=ye((jcr,f4e)=>{"use strict";function N4t(e){return e===32||e===9||e===13||e===10}function m5(e){return typeof e=="number"&&isFinite(e)&&e>0}function U4t(e){var t=0,r=e.length;for(e[0]===239&&e[1]===187&&e[2]===191&&(t=3);t<r&&N4t(e[t]);)t++;return t===r?!1:e[t]===60}var V4t=/<[-_.:a-zA-Z0-9][^>]*>/,H4t=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,G4t=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,j4t=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,W4t=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,c4e=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function Z4t(e){var t=e.match(G4t),r=e.match(j4t),n=e.match(W4t);return{width:t&&(t[1]||t[2]),height:r&&(r[1]||r[2]),viewbox:n&&(n[1]||n[2])}}function Nm(e){return c4e.test(e)?e.match(c4e)[0]:"px"}f4e.exports=function(e){if(U4t(e)){for(var t="",r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);var n=(t.match(V4t)||[""])[0];if(H4t.test(n)){var i=Z4t(n),a=parseFloat(i.width),o=parseFloat(i.height);if(i.width&&i.height)return!m5(a)||!m5(o)?void 0:{width:a,height:o,type:"svg",mime:"image/svg+xml",wUnits:Nm(i.width),hUnits:Nm(i.height)};var s=(i.viewbox||"").split(" "),l={width:s[2],height:s[3]},u=parseFloat(l.width),c=parseFloat(l.height);if(!(!m5(u)||!m5(c))&&Nm(l.width)===Nm(l.height)){var f=u/c;return i.width?m5(a)?{width:a,height:a/f,type:"svg",mime:"image/svg+xml",wUnits:Nm(i.width),hUnits:Nm(i.width)}:void 0:i.height?m5(o)?{width:o*f,height:o,type:"svg",mime:"image/svg+xml",wUnits:Nm(i.height),hUnits:Nm(i.height)}:void 0:{width:u,height:c,type:"svg",mime:"image/svg+xml",wUnits:Nm(l.width),hUnits:Nm(l.height)}}}}}});var m4e=ye((Wcr,g4e)=>{"use strict";var p4e=Eu().str2arr,d4e=Eu().sliceEq,X4t=Eu().readUInt16LE,Y4t=Eu().readUInt16BE,K4t=Eu().readUInt32LE,J4t=Eu().readUInt32BE,$4t=p4e("II*\0"),Q4t=p4e("MM\0*");function aD(e,t,r){return r?Y4t(e,t):X4t(e,t)}function Jj(e,t,r){return r?J4t(e,t):K4t(e,t)}function v4e(e,t,r){var n=aD(e,t+2,r),i=Jj(e,t+4,r);return i!==1||n!==3&&n!==4?null:n===3?aD(e,t+8,r):Jj(e,t+8,r)}g4e.exports=function(e){if(!(e.length<8)&&!(!d4e(e,0,$4t)&&!d4e(e,0,Q4t))){var t=e[0]===77,r=Jj(e,4,t)-8;if(!(r<0)){var n=r+8;if(!(e.length-n<2)){var i=aD(e,n+0,t)*12;if(!(i<=0)&&(n+=2,!(e.length-n<i))){var a,o,s,l;for(a=0;a<i;a+=12)l=aD(e,n+a,t),l===256?o=v4e(e,n+a,t):l===257&&(s=v4e(e,n+a,t));if(o&&s)return{width:o,height:s,type:"tiff",mime:"image/tiff",wUnits:"px",hUnits:"px"}}}}}}});var w4e=ye((Zcr,b4e)=>{"use strict";var x4e=Eu().str2arr,y4e=Eu().sliceEq,_4e=Eu().readUInt16LE,$j=Eu().readUInt32LE,eEt=iD(),tEt=x4e("RIFF"),rEt=x4e("WEBP");function iEt(e,t){if(!(e[t+3]!==157||e[t+4]!==1||e[t+5]!==42))return{width:_4e(e,t+6)&16383,height:_4e(e,t+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function nEt(e,t){if(e[t]===47){var r=$j(e,t+1);return{width:(r&16383)+1,height:(r>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function aEt(e,t){return{width:(e[t+6]<<16|e[t+5]<<8|e[t+4])+1,height:(e[t+9]<<t|e[t+8]<<8|e[t+7])+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}b4e.exports=function(e){if(!(e.length<16)&&!(!y4e(e,0,tEt)&&!y4e(e,8,rEt))){var t=12,r=null,n=0,i=$j(e,4)+8;if(!(i>e.length)){for(;t+8<i;){if(e[t]===0){t++;continue}var a=String.fromCharCode.apply(null,e.slice(t,t+4)),o=$j(e,t+4);a==="VP8 "&&o>=10?r=r||iEt(e,t+8):a==="VP8L"&&o>=9?r=r||nEt(e,t+8):a==="VP8X"&&o>=10?r=r||aEt(e,t+8):a==="EXIF"&&(n=eEt.get_orientation(e.slice(t+8,t+8+o)),t=1/0),t+=8+o}if(r)return n>0&&(r.orientation=n),r}}}});var A4e=ye((Xcr,T4e)=>{"use strict";T4e.exports={avif:VMe(),bmp:jMe(),gif:KMe(),ico:QMe(),jpeg:t4e(),png:o4e(),psd:u4e(),svg:h4e(),tiff:m4e(),webp:w4e()}});var S4e=ye((Ycr,eW)=>{"use strict";var Qj=A4e();function oEt(e){for(var t=Object.keys(Qj),r=0;r<t.length;r++){var n=Qj[t[r]](e);if(n)return n}return null}eW.exports=function(t){return oEt(t)};eW.exports.parsers=Qj});var E4e=ye(M4e=>{"use strict";var sEt=S4e(),lEt=Ly().IMAGE_URL_PREFIX,uEt=u2().Buffer;M4e.getImageSize=function(e){var t=e.replace(lEt,""),r=new uEt(t,"base64");return sEt(r)}});var L4e=ye((Jcr,C4e)=>{"use strict";var k4e=Mr(),cEt=jT(),fEt=uo(),oD=Qa(),hEt=Mr().maxRowLength,dEt=E4e().getImageSize;C4e.exports=function(t,r){var n,i;if(r._hasZ)n=r.z.length,i=hEt(r.z);else if(r._hasSource){var a=dEt(r.source);n=a.height,i=a.width}var o=oD.getFromId(t,r.xaxis||"x"),s=oD.getFromId(t,r.yaxis||"y"),l=o.d2c(r.x0)-r.dx/2,u=s.d2c(r.y0)-r.dy/2,c,f=[l,l+i*r.dx],h=[u,u+n*r.dy];if(o&&o.type==="log")for(c=0;c<i;c++)f.push(l+c*r.dx);if(s&&s.type==="log")for(c=0;c<n;c++)h.push(u+c*r.dy);r._extremes[o._id]=oD.findExtremes(o,f),r._extremes[s._id]=oD.findExtremes(s,h),r._scaler=gEt(r);var d={x0:l,y0:u,z:r.z,w:i,h:n};return[d]};function vEt(e,t,r,n){return function(i){return k4e.constrain((i-e)*t,r,n)}}function pEt(e,t){return function(r){return k4e.constrain(r,e,t)}}function gEt(e){var t=cEt.colormodel[e.colormodel],r=t.colormodel||e.colormodel,n=r.length;e._sArray=[];for(var i=0;i<n;i++)t.min[i]!==e.zmin[i]||t.max[i]!==e.zmax[i]?e._sArray.push(vEt(e.zmin[i],(t.max[i]-t.min[i])/(e.zmax[i]-e.zmin[i]),t.min[i],t.max[i])):e._sArray.push(pEt(t.min[i],t.max[i]));return function(a){for(var o=a.slice(0,n),s=0;s<n;s++){var l=o[s];if(!fEt(l))return!1;o[s]=e._sArray[s](l)}return o}}});var R4e=ye(($cr,I4e)=>{"use strict";var mEt=xa(),T2=Mr(),P4e=T2.strTranslate,yEt=Zp(),_Et=jT(),xEt=jV(),bEt=o8().STYLE;I4e.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis,s=!t._context._exportedPlot&&xEt();T2.makeTraceGroups(i,n,"im").each(function(l){var u=mEt.select(this),c=l[0],f=c.trace,h=(f.zsmooth==="fast"||f.zsmooth===!1&&s)&&!f._hasZ&&f._hasSource&&a.type==="linear"&&o.type==="linear";f._realImage=h;var d=c.z,v=c.x0,x=c.y0,b=c.w,p=c.h,E=f.dx,k=f.dy,A,L,_,C,M,g;for(g=0;A===void 0&&g<b;)A=a.c2p(v+g*E),g++;for(g=b;L===void 0&&g>0;)L=a.c2p(v+g*E),g--;for(g=0;C===void 0&&g<p;)C=o.c2p(x+g*k),g++;for(g=p;M===void 0&&g>0;)M=o.c2p(x+g*k),g--;if(L<A&&(_=L,L=A,A=_),M<C&&(_=C,C=M,M=_),!h){var P=.5;A=Math.max(-P*a._length,A),L=Math.min((1+P)*a._length,L),C=Math.max(-P*o._length,C),M=Math.min((1+P)*o._length,M)}var T=Math.round(L-A),F=Math.round(M-C),q=T<=0||F<=0;if(q){var V=u.selectAll("image").data([]);V.exit().remove();return}function H(ge){var ie=document.createElement("canvas");ie.width=T,ie.height=F;var Te=ie.getContext("2d",{willReadFrequently:!0}),Ee=function(rt){return T2.constrain(Math.round(a.c2p(v+rt*E)-A),0,T)},Ae=function(rt){return T2.constrain(Math.round(o.c2p(x+rt*k)-C),0,F)},ze=_Et.colormodel[f.colormodel],Ce=ze.colormodel||f.colormodel,me=ze.fmt,Re;for(g=0;g<c.w;g++){var ce=Ee(g),Ge=Ee(g+1);if(!(Ge===ce||isNaN(Ge)||isNaN(ce)))for(var nt=0;nt<c.h;nt++){var ct=Ae(nt),qt=Ae(nt+1);qt===ct||isNaN(qt)||isNaN(ct)||!ge(g,nt)||(Re=f._scaler(ge(g,nt)),Re?Te.fillStyle=Ce+"("+me(Re).join(",")+")":Te.fillStyle="rgba(0,0,0,0)",Te.fillRect(ce,ct,Ge-ce,qt-ct))}}return ie}var X=u.selectAll("image").data([l]);X.enter().append("svg:image").attr({xmlns:yEt.svg,preserveAspectRatio:"none"}),X.exit().remove();var G=f.zsmooth===!1?bEt:"";if(h){var N=T2.simpleMap(a.range,a.r2l),W=T2.simpleMap(o.range,o.r2l),re=N[1]<N[0],ae=W[1]>W[0];if(re||ae){var _e=A+T/2,Me=C+F/2;G+="transform:"+P4e(_e+"px",Me+"px")+"scale("+(re?-1:1)+","+(ae?-1:1)+")"+P4e(-_e+"px",-Me+"px")+";"}}X.attr("style",G);var ke=new Promise(function(ge){if(f._hasZ)ge();else if(f._hasSource)if(f._canvas&&f._canvas.el.width===b&&f._canvas.el.height===p&&f._canvas.source===f.source)ge();else{var ie=document.createElement("canvas");ie.width=b,ie.height=p;var Te=ie.getContext("2d",{willReadFrequently:!0});f._image=f._image||new Image;var Ee=f._image;Ee.onload=function(){Te.drawImage(Ee,0,0),f._canvas={el:ie,source:f.source},ge()},Ee.setAttribute("src",f.source)}}).then(function(){var ge,ie;if(f._hasZ)ie=H(function(Ae,ze){var Ce=d[ze][Ae];return T2.isTypedArray(Ce)&&(Ce=Array.from(Ce)),Ce}),ge=ie.toDataURL("image/png");else if(f._hasSource)if(h)ge=f.source;else{var Te=f._canvas.el.getContext("2d",{willReadFrequently:!0}),Ee=Te.getImageData(0,0,b,p).data;ie=H(function(Ae,ze){var Ce=4*(ze*b+Ae);return[Ee[Ce],Ee[Ce+1],Ee[Ce+2],Ee[Ce+3]]}),ge=ie.toDataURL("image/png")}X.attr({"xlink:href":ge,height:F,width:T,x:A,y:C})});t._promises.push(ke)})}});var z4e=ye((Qcr,D4e)=>{"use strict";var wEt=xa();D4e.exports=function(t){wEt.select(t).selectAll(".im image").style("opacity",function(r){return r[0].trace.opacity})}});var B4e=ye((efr,O4e)=>{"use strict";var F4e=Nc(),q4e=Mr(),sD=q4e.isArrayOrTypedArray,TEt=jT();O4e.exports=function(t,r,n){var i=t.cd[0],a=i.trace,o=t.xa,s=t.ya;if(!(F4e.inbox(r-i.x0,r-(i.x0+i.w*a.dx),0)>0||F4e.inbox(n-i.y0,n-(i.y0+i.h*a.dy),0)>0)){var l=Math.floor((r-i.x0)/a.dx),u=Math.floor(Math.abs(n-i.y0)/a.dy),c;if(a._hasZ?c=i.z[u][l]:a._hasSource&&(c=a._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(l,u,1,1).data),!!c){var f=i.hi||a.hoverinfo,h;if(f){var d=f.split("+");d.indexOf("all")!==-1&&(d=["color"]),d.indexOf("color")!==-1&&(h=!0)}var v=TEt.colormodel[a.colormodel],x=v.colormodel||a.colormodel,b=x.length,p=a._scaler(c),E=v.suffix,k=[];(a.hovertemplate||h)&&(k.push("["+[p[0]+E[0],p[1]+E[1],p[2]+E[2]].join(", ")),b===4&&k.push(", "+p[3]+E[3]),k.push("]"),k=k.join(""),t.extraText=x.toUpperCase()+": "+k);var A;sD(a.hovertext)&&sD(a.hovertext[u])?A=a.hovertext[u][l]:sD(a.text)&&sD(a.text[u])&&(A=a.text[u][l]);var L=s.c2p(i.y0+(u+.5)*a.dy),_=i.x0+(l+.5)*a.dx,C=i.y0+(u+.5)*a.dy,M="["+c.slice(0,a.colormodel.length).join(", ")+"]";return[q4e.extendFlat(t,{index:[u,l],x0:o.c2p(i.x0+l*a.dx),x1:o.c2p(i.x0+(l+1)*a.dx),y0:L,y1:L,color:p,xVal:_,xLabelVal:_,yVal:C,yLabelVal:C,zLabelVal:M,text:A,hovertemplateLabels:{zLabel:M,colorLabel:k,"color[0]Label":p[0]+E[0],"color[1]Label":p[1]+E[1],"color[2]Label":p[2]+E[2],"color[3]Label":p[3]+E[3]}})]}}}});var U4e=ye((tfr,N4e)=>{"use strict";N4e.exports=function(t,r){return"xVal"in r&&(t.x=r.xVal),"yVal"in r&&(t.y=r.yVal),r.xa&&(t.xaxis=r.xa),r.ya&&(t.yaxis=r.ya),t.color=r.color,t.colormodel=r.trace.colormodel,t.z||(t.z=r.color),t}});var H4e=ye((rfr,V4e)=>{"use strict";V4e.exports={attributes:tG(),supplyDefaults:T3e(),calc:L4e(),plot:R4e(),style:z4e(),hoverPoints:B4e(),eventData:U4e(),moduleType:"trace",name:"image",basePlotModule:Jf(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}});var j4e=ye((ifr,G4e)=>{"use strict";G4e.exports=H4e()});var A2=ye((nfr,W4e)=>{"use strict";var AEt=vl(),SEt=Ju().attributes,MEt=Su(),EEt=dh(),kEt=Wo().hovertemplateAttrs,CEt=Wo().texttemplateAttrs,bE=no().extendFlat,LEt=Ed().pattern,lD=MEt({editType:"plot",arrayOk:!0,colorEditType:"plot"});W4e.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:EEt.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:LEt,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:bE({},AEt.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:kEt({},{keys:["label","color","value","percent","text"]}),texttemplate:CEt({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:bE({},lD,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:bE({},lD,{}),outsidetextfont:bE({},lD,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:bE({},lD,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:SEt({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}});var S2=ye((afr,Y4e)=>{"use strict";var PEt=uo(),wE=Mr(),IEt=A2(),REt=Ju().defaults,DEt=r0().handleText,zEt=Mr().coercePattern;function Z4e(e,t){var r=wE.isArrayOrTypedArray(e),n=wE.isArrayOrTypedArray(t),i=Math.min(r?e.length:1/0,n?t.length:1/0);if(isFinite(i)||(i=0),i&&n){for(var a,o=0;o<i;o++){var s=t[o];if(PEt(s)&&s>0){a=!0;break}}a||(i=0)}return{hasLabels:r,hasValues:n,len:i}}function X4e(e,t,r,n,i){var a=n("marker.line.width");a&&n("marker.line.color",i?void 0:r.paper_bgcolor);var o=n("marker.colors");zEt(n,"marker.pattern",o),e.marker&&!t.marker.pattern.fgcolor&&(t.marker.pattern.fgcolor=e.marker.colors),t.marker.pattern.bgcolor||(t.marker.pattern.bgcolor=r.paper_bgcolor)}function FEt(e,t,r,n){function i(E,k){return wE.coerce(e,t,IEt,E,k)}var a=i("labels"),o=i("values"),s=Z4e(a,o),l=s.len;if(t._hasLabels=s.hasLabels,t._hasValues=s.hasValues,!t._hasLabels&&t._hasValues&&(i("label0"),i("dlabel")),!l){t.visible=!1;return}t._length=l,X4e(e,t,n,i,!0),i("scalegroup");var u=i("text"),c=i("texttemplate"),f;if(c||(f=i("textinfo",wE.isArrayOrTypedArray(u)?"text+percent":"percent")),i("hovertext"),i("hovertemplate"),c||f&&f!=="none"){var h=i("textposition");DEt(e,t,n,i,h,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var d=Array.isArray(h)||h==="auto",v=d||h==="outside";v&&i("automargin"),(h==="inside"||h==="auto"||Array.isArray(h))&&i("insidetextorientation")}else f==="none"&&i("textposition","none");REt(t,n,i);var x=i("hole"),b=i("title.text");if(b){var p=i("title.position",x?"middle center":"top center");!x&&p==="middle center"&&(t.title.position="top center"),wE.coerceFont(i,"title.font",n.font)}i("sort"),i("direction"),i("rotation"),i("pull")}Y4e.exports={handleLabelsAndValues:Z4e,handleMarkerDefaults:X4e,supplyDefaults:FEt}});var uD=ye((ofr,K4e)=>{"use strict";K4e.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var $4e=ye((sfr,J4e)=>{"use strict";var qEt=Mr(),OEt=uD();J4e.exports=function(t,r){function n(i,a){return qEt.coerce(t,r,OEt,i,a)}n("hiddenlabels"),n("piecolorway",r.colorway),n("extendpiecolors")}});var y5=ye((lfr,tEe)=>{"use strict";var BEt=uo(),tW=id(),NEt=va(),UEt={};function VEt(e,t){var r=[],n=e._fullLayout,i=n.hiddenlabels||[],a=t.labels,o=t.marker.colors||[],s=t.values,l=t._length,u=t._hasValues&&l,c,f;if(t.dlabel)for(a=new Array(l),c=0;c<l;c++)a[c]=String(t.label0+c*t.dlabel);var h={},d=Q4e(n["_"+t.type+"colormap"]),v=0,x=!1;for(c=0;c<l;c++){var b,p,E;if(u){if(b=s[c],!BEt(b))continue;b=+b}else b=1;p=a[c],(p===void 0||p==="")&&(p=c),p=String(p);var k=h[p];k===void 0?(h[p]=r.length,E=i.indexOf(p)!==-1,E||(v+=b),r.push({v:b,label:p,color:d(o[c],p),i:c,pts:[c],hidden:E})):(x=!0,f=r[k],f.v+=b,f.pts.push(c),f.hidden||(v+=b),f.color===!1&&o[c]&&(f.color=d(o[c],p)))}r=r.filter(function(L){return L.v>=0});var A=t.type==="funnelarea"?x:t.sort;return A&&r.sort(function(L,_){return _.v-L.v}),r[0]&&(r[0].vTotal=v),r}function Q4e(e){return function(r,n){return!r||(r=tW(r),!r.isValid())?!1:(r=NEt.addOpacity(r,r.getAlpha()),e[n]||(e[n]=r),r)}}function HEt(e,t){var r=(t||{}).type;r||(r="pie");var n=e._fullLayout,i=e.calcdata,a=n[r+"colorway"],o=n["_"+r+"colormap"];n["extend"+r+"colors"]&&(a=eEe(a,UEt));for(var s=0,l=0;l<i.length;l++){var u=i[l],c=u[0].trace.type;if(c===r)for(var f=0;f<u.length;f++){var h=u[f];h.color===!1&&(o[h.label]?h.color=o[h.label]:(o[h.label]=h.color=a[s%a.length],s++))}}}function eEe(e,t){var r,n=JSON.stringify(e),i=t[n];if(!i){for(i=e.slice(),r=0;r<e.length;r++)i.push(tW(e[r]).lighten(20).toHexString());for(r=0;r<e.length;r++)i.push(tW(e[r]).darken(20).toHexString());t[n]=i}return i}tEe.exports={calc:VEt,crossTraceCalc:HEt,makePullColorFn:Q4e,generateExtendedColors:eEe}});var iEe=ye((ufr,rEe)=>{"use strict";var GEt=rp().appendArrayMultiPointValues;rEe.exports=function(t,r){var n={curveNumber:r.index,pointNumbers:t.pts,data:r._input,fullData:r,label:t.label,color:t.color,value:t.v,percent:t.percent,text:t.text,bbox:t.bbox,v:t.v};return t.pts.length===1&&(n.pointNumber=n.i=t.pts[0]),GEt(n,r,t.pts),r.type==="funnelarea"&&(delete n.v,delete n.i),n}});var dD=ye((cfr,AEe)=>{"use strict";var zp=xa(),jEt=Xu(),cD=Nc(),uEe=va(),Wy=ao(),ev=Mr(),WEt=ev.strScale,nEe=ev.strTranslate,rW=Pl(),cEe=_v(),ZEt=cEe.recordMinTextSize,XEt=cEe.clearMinTextSize,fEe=Qb().TEXTPAD,Zo=u_(),fD=iEe(),aEe=Mr().isValidTextValue;function YEt(e,t){var r=e._context.staticPlot,n=e._fullLayout,i=n._size;XEt("pie",n),vEe(t,e),bEe(t,i);var a=ev.makeTraceGroups(n._pielayer,t,"trace").each(function(o){var s=zp.select(this),l=o[0],u=l.trace;nkt(o),s.attr("stroke-linejoin","round"),s.each(function(){var c=zp.select(this).selectAll("g.slice").data(o);c.enter().append("g").classed("slice",!0),c.exit().remove();var f=[[[],[]],[[],[]]],h=!1;c.each(function(A,L){if(A.hidden){zp.select(this).selectAll("path,g").remove();return}A.pointNumber=A.i,A.curveNumber=u.index,f[A.pxmid[1]<0?0:1][A.pxmid[0]<0?0:1].push(A);var _=l.cx,C=l.cy,M=zp.select(this),g=M.selectAll("path.surface").data([A]);if(g.enter().append("path").classed("surface",!0).style({"pointer-events":r?"none":"all"}),M.call(hEe,e,o),u.pull){var P=+Zo.castOption(u.pull,A.pts)||0;P>0&&(_+=P*A.pxmid[0],C+=P*A.pxmid[1])}A.cxFinal=_,A.cyFinal=C;function T(N,W,re,ae){var _e=ae*(W[0]-N[0]),Me=ae*(W[1]-N[1]);return"a"+ae*l.r+","+ae*l.r+" 0 "+A.largeArc+(re?" 1 ":" 0 ")+_e+","+Me}var F=u.hole;if(A.v===l.vTotal){var q="M"+(_+A.px0[0])+","+(C+A.px0[1])+T(A.px0,A.pxmid,!0,1)+T(A.pxmid,A.px0,!0,1)+"Z";F?g.attr("d","M"+(_+F*A.px0[0])+","+(C+F*A.px0[1])+T(A.px0,A.pxmid,!1,F)+T(A.pxmid,A.px0,!1,F)+"Z"+q):g.attr("d",q)}else{var V=T(A.px0,A.px1,!0,1);if(F){var H=1-F;g.attr("d","M"+(_+F*A.px1[0])+","+(C+F*A.px1[1])+T(A.px1,A.px0,!1,F)+"l"+H*A.px0[0]+","+H*A.px0[1]+V+"Z")}else g.attr("d","M"+_+","+C+"l"+A.px0[0]+","+A.px0[1]+V+"Z")}wEe(e,A,l);var X=Zo.castOption(u.textposition,A.pts),G=M.selectAll("g.slicetext").data(A.text&&X!=="none"?[0]:[]);G.enter().append("g").classed("slicetext",!0),G.exit().remove(),G.each(function(){var N=ev.ensureSingle(zp.select(this),"text","",function(ie){ie.attr("data-notex",1)}),W=ev.ensureUniformFontSize(e,X==="outside"?JEt(u,A,n.font):dEe(u,A,n.font));N.text(A.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(Wy.font,W).call(rW.convertToTspans,e);var re=Wy.bBox(N.node()),ae;if(X==="outside")ae=lEe(re,A);else if(ae=pEe(re,A,l),X==="auto"&&ae.scale<1){var _e=ev.ensureUniformFontSize(e,u.outsidetextfont);N.call(Wy.font,_e),re=Wy.bBox(N.node()),ae=lEe(re,A)}var Me=ae.textPosAngle,ke=Me===void 0?A.pxmid:hD(l.r,Me);if(ae.targetX=_+ke[0]*ae.rCenter+(ae.x||0),ae.targetY=C+ke[1]*ae.rCenter+(ae.y||0),TEe(ae,re),ae.outside){var ge=ae.targetY;A.yLabelMin=ge-re.height/2,A.yLabelMid=ge,A.yLabelMax=ge+re.height/2,A.labelExtraX=0,A.labelExtraY=0,h=!0}ae.fontSize=W.size,ZEt(u.type,ae,n),o[L].transform=ae,ev.setTransormAndDisplay(N,ae)})});var d=zp.select(this).selectAll("g.titletext").data(u.title.text?[0]:[]);if(d.enter().append("g").classed("titletext",!0),d.exit().remove(),d.each(function(){var A=ev.ensureSingle(zp.select(this),"text","",function(C){C.attr("data-notex",1)}),L=u.title.text;u._meta&&(L=ev.templateString(L,u._meta)),A.text(L).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(Wy.font,u.title.font).call(rW.convertToTspans,e);var _;u.title.position==="middle center"?_=ekt(l):_=_Ee(l,i),A.attr("transform",nEe(_.x,_.y)+WEt(Math.min(1,_.scale))+nEe(_.tx,_.ty))}),h&&rkt(f,u),KEt(c,u),h&&u.automargin){var v=Wy.bBox(s.node()),x=u.domain,b=i.w*(x.x[1]-x.x[0]),p=i.h*(x.y[1]-x.y[0]),E=(.5*b-l.r)/i.w,k=(.5*p-l.r)/i.h;jEt.autoMargin(e,"pie."+u.uid+".automargin",{xl:x.x[0]-E,xr:x.x[1]+E,yb:x.y[0]-k,yt:x.y[1]+k,l:Math.max(l.cx-l.r-v.left,0),r:Math.max(v.right-(l.cx+l.r),0),b:Math.max(v.bottom-(l.cy+l.r),0),t:Math.max(l.cy-l.r-v.top,0),pad:5})}})});setTimeout(function(){a.selectAll("tspan").each(function(){var o=zp.select(this);o.attr("dy")&&o.attr("dy",o.attr("dy"))})},0)}function KEt(e,t){e.each(function(r){var n=zp.select(this);if(!r.labelExtraX&&!r.labelExtraY){n.select("path.textline").remove();return}var i=n.select("g.slicetext text");r.transform.targetX+=r.labelExtraX,r.transform.targetY+=r.labelExtraY,ev.setTransormAndDisplay(i,r.transform);var a=r.cxFinal+r.pxmid[0],o=r.cyFinal+r.pxmid[1],s="M"+a+","+o,l=(r.yLabelMax-r.yLabelMin)*(r.pxmid[0]<0?-1:1)/4;if(r.labelExtraX){var u=r.labelExtraX*r.pxmid[1]/r.pxmid[0],c=r.yLabelMid+r.labelExtraY-(r.cyFinal+r.pxmid[1]);Math.abs(u)>Math.abs(c)?s+="l"+c*r.pxmid[0]/r.pxmid[1]+","+c+"H"+(a+r.labelExtraX+l):s+="l"+r.labelExtraX+","+u+"v"+(c-u)+"h"+l}else s+="V"+(r.yLabelMid+r.labelExtraY)+"h"+l;ev.ensureSingle(n,"path","textline").call(uEe.stroke,t.outsidetextfont.color).attr({"stroke-width":Math.min(2,t.outsidetextfont.size/8),d:s,fill:"none"})})}function hEe(e,t,r){var n=r[0],i=n.cx,a=n.cy,o=n.trace,s=o.type==="funnelarea";"_hasHoverLabel"in o||(o._hasHoverLabel=!1),"_hasHoverEvent"in o||(o._hasHoverEvent=!1),e.on("mouseover",function(l){var u=t._fullLayout,c=t._fullData[o.index];if(!(t._dragging||u.hovermode===!1)){var f=c.hoverinfo;if(Array.isArray(f)&&(f=cD.castHoverinfo({hoverinfo:[Zo.castOption(f,l.pts)],_module:o._module},u,0)),f==="all"&&(f="label+text+value+percent+name"),c.hovertemplate||f!=="none"&&f!=="skip"&&f){var h=l.rInscribed||0,d=i+l.pxmid[0]*(1-h),v=a+l.pxmid[1]*(1-h),x=u.separators,b=[];if(f&&f.indexOf("label")!==-1&&b.push(l.label),l.text=Zo.castOption(c.hovertext||c.text,l.pts),f&&f.indexOf("text")!==-1){var p=l.text;ev.isValidTextValue(p)&&b.push(p)}l.value=l.v,l.valueLabel=Zo.formatPieValue(l.v,x),f&&f.indexOf("value")!==-1&&b.push(l.valueLabel),l.percent=l.v/n.vTotal,l.percentLabel=Zo.formatPiePercent(l.percent,x),f&&f.indexOf("percent")!==-1&&b.push(l.percentLabel);var E=c.hoverlabel,k=E.font,A=[];cD.loneHover({trace:o,x0:d-h*n.r,x1:d+h*n.r,y:v,_x0:s?i+l.TL[0]:d-h*n.r,_x1:s?i+l.TR[0]:d+h*n.r,_y0:s?a+l.TL[1]:v-h*n.r,_y1:s?a+l.BL[1]:v+h*n.r,text:b.join("<br>"),name:c.hovertemplate||f.indexOf("name")!==-1?c.name:void 0,idealAlign:l.pxmid[0]<0?"left":"right",color:Zo.castOption(E.bgcolor,l.pts)||l.color,borderColor:Zo.castOption(E.bordercolor,l.pts),fontFamily:Zo.castOption(k.family,l.pts),fontSize:Zo.castOption(k.size,l.pts),fontColor:Zo.castOption(k.color,l.pts),nameLength:Zo.castOption(E.namelength,l.pts),textAlign:Zo.castOption(E.align,l.pts),hovertemplate:Zo.castOption(c.hovertemplate,l.pts),hovertemplateLabels:l,eventData:[fD(l,c)]},{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:t,inOut_bbox:A}),l.bbox=A[0],o._hasHoverLabel=!0}o._hasHoverEvent=!0,t.emit("plotly_hover",{points:[fD(l,c)],event:zp.event})}}),e.on("mouseout",function(l){var u=t._fullLayout,c=t._fullData[o.index],f=zp.select(this).datum();o._hasHoverEvent&&(l.originalEvent=zp.event,t.emit("plotly_unhover",{points:[fD(f,c)],event:zp.event}),o._hasHoverEvent=!1),o._hasHoverLabel&&(cD.loneUnhover(u._hoverlayer.node()),o._hasHoverLabel=!1)}),e.on("click",function(l){var u=t._fullLayout,c=t._fullData[o.index];t._dragging||u.hovermode===!1||(t._hoverdata=[fD(l,c)],cD.click(t,zp.event))})}function JEt(e,t,r){var n=Zo.castOption(e.outsidetextfont.color,t.pts)||Zo.castOption(e.textfont.color,t.pts)||r.color,i=Zo.castOption(e.outsidetextfont.family,t.pts)||Zo.castOption(e.textfont.family,t.pts)||r.family,a=Zo.castOption(e.outsidetextfont.size,t.pts)||Zo.castOption(e.textfont.size,t.pts)||r.size,o=Zo.castOption(e.outsidetextfont.weight,t.pts)||Zo.castOption(e.textfont.weight,t.pts)||r.weight,s=Zo.castOption(e.outsidetextfont.style,t.pts)||Zo.castOption(e.textfont.style,t.pts)||r.style,l=Zo.castOption(e.outsidetextfont.variant,t.pts)||Zo.castOption(e.textfont.variant,t.pts)||r.variant,u=Zo.castOption(e.outsidetextfont.textcase,t.pts)||Zo.castOption(e.textfont.textcase,t.pts)||r.textcase,c=Zo.castOption(e.outsidetextfont.lineposition,t.pts)||Zo.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=Zo.castOption(e.outsidetextfont.shadow,t.pts)||Zo.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n,family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function dEe(e,t,r){var n=Zo.castOption(e.insidetextfont.color,t.pts);!n&&e._input.textfont&&(n=Zo.castOption(e._input.textfont.color,t.pts));var i=Zo.castOption(e.insidetextfont.family,t.pts)||Zo.castOption(e.textfont.family,t.pts)||r.family,a=Zo.castOption(e.insidetextfont.size,t.pts)||Zo.castOption(e.textfont.size,t.pts)||r.size,o=Zo.castOption(e.insidetextfont.weight,t.pts)||Zo.castOption(e.textfont.weight,t.pts)||r.weight,s=Zo.castOption(e.insidetextfont.style,t.pts)||Zo.castOption(e.textfont.style,t.pts)||r.style,l=Zo.castOption(e.insidetextfont.variant,t.pts)||Zo.castOption(e.textfont.variant,t.pts)||r.variant,u=Zo.castOption(e.insidetextfont.textcase,t.pts)||Zo.castOption(e.textfont.textcase,t.pts)||r.textcase,c=Zo.castOption(e.insidetextfont.lineposition,t.pts)||Zo.castOption(e.textfont.lineposition,t.pts)||r.lineposition,f=Zo.castOption(e.insidetextfont.shadow,t.pts)||Zo.castOption(e.textfont.shadow,t.pts)||r.shadow;return{color:n||uEe.contrast(t.color),family:i,size:a,weight:o,style:s,variant:l,textcase:u,lineposition:c,shadow:f}}function vEe(e,t){for(var r,n,i=0;i<e.length;i++)if(r=e[i][0],n=r.trace,n.title.text){var a=n.title.text;n._meta&&(a=ev.templateString(a,n._meta));var o=Wy.tester.append("text").attr("data-notex",1).text(a).call(Wy.font,n.title.font).call(rW.convertToTspans,t),s=Wy.bBox(o.node(),!0);r.titleBox={width:s.width,height:s.height},o.remove()}}function pEe(e,t,r){var n=r.r||t.rpx1,i=t.rInscribed,a=t.startangle===t.stopangle;if(a)return{rCenter:1-i,scale:0,rotate:0,textPosAngle:0};var o=t.ring,s=o===1&&Math.abs(t.startangle-t.stopangle)===Math.PI*2,l=t.halfangle,u=t.midangle,c=r.trace.insidetextorientation,f=c==="horizontal",h=c==="tangential",d=c==="radial",v=c==="auto",x=[],b;if(!v){var p=function(M,g){if($Et(t,M)){var P=Math.abs(M-t.startangle),T=Math.abs(M-t.stopangle),F=P<T?P:T;g==="tan"?b=sEe(e,n,o,F,0):b=oEe(e,n,o,F,Math.PI/2),b.textPosAngle=M,x.push(b)}},E;if(f||h){for(E=4;E>=-4;E-=2)p(Math.PI*E,"tan");for(E=4;E>=-4;E-=2)p(Math.PI*(E+1),"tan")}if(f||d){for(E=4;E>=-4;E-=2)p(Math.PI*(E+1.5),"rad");for(E=4;E>=-4;E-=2)p(Math.PI*(E+.5),"rad")}}if(s||v||f){var k=Math.sqrt(e.width*e.width+e.height*e.height);if(b={scale:i*n*2/k,rCenter:1-i,rotate:0},b.textPosAngle=(t.startangle+t.stopangle)/2,b.scale>=1)return b;x.push(b)}(v||d)&&(b=oEe(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,x.push(b)),(v||h)&&(b=sEe(e,n,o,l,u),b.textPosAngle=(t.startangle+t.stopangle)/2,x.push(b));for(var A=0,L=0,_=0;_<x.length;_++){var C=x[_].scale;if(L<C&&(L=C,A=_),!v&&L>=1)break}return x[A]}function $Et(e,t){var r=e.startangle,n=e.stopangle;return r>t&&t>n||r<t&&t<n}function oEe(e,t,r,n,i){t=Math.max(0,t-2*fEe);var a=e.width/e.height,o=yEe(a,n,t,r);return{scale:o*2/e.height,rCenter:gEe(a,o/t),rotate:mEe(i)}}function sEe(e,t,r,n,i){t=Math.max(0,t-2*fEe);var a=e.height/e.width,o=yEe(a,n,t,r);return{scale:o*2/e.width,rCenter:gEe(a,o/t),rotate:mEe(i+Math.PI/2)}}function gEe(e,t){return Math.cos(t)-e*t}function mEe(e){return(180/Math.PI*e+720)%180-90}function yEe(e,t,r,n){var i=e+1/(2*Math.tan(t));return r*Math.min(1/(Math.sqrt(i*i+.5)+i),n/(Math.sqrt(e*e+n/2)+e))}function QEt(e,t){return e.v===t.vTotal&&!t.trace.hole?1:Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2)}function lEe(e,t){var r=t.pxmid[0],n=t.pxmid[1],i=e.width/2,a=e.height/2;return r<0&&(i*=-1),n<0&&(a*=-1),{scale:1,rCenter:1,rotate:0,x:i+Math.abs(a)*(i>0?1:-1)/2,y:a/(1+r*r/(n*n)),outside:!0}}function ekt(e){var t=Math.sqrt(e.titleBox.width*e.titleBox.width+e.titleBox.height*e.titleBox.height);return{x:e.cx,y:e.cy,scale:e.trace.hole*e.r*2/t,tx:0,ty:-e.titleBox.height/2+e.trace.title.font.size}}function _Ee(e,t){var r=1,n=1,i,a=e.trace,o={x:e.cx,y:e.cy},s={tx:0,ty:0};s.ty+=a.title.font.size,i=xEe(a),a.title.position.indexOf("top")!==-1?(o.y-=(1+i)*e.r,s.ty-=e.titleBox.height):a.title.position.indexOf("bottom")!==-1&&(o.y+=(1+i)*e.r);var l=tkt(e.r,e.trace.aspectratio),u=t.w*(a.domain.x[1]-a.domain.x[0])/2;return a.title.position.indexOf("left")!==-1?(u=u+l,o.x-=(1+i)*l,s.tx+=e.titleBox.width/2):a.title.position.indexOf("center")!==-1?u*=2:a.title.position.indexOf("right")!==-1&&(u=u+l,o.x+=(1+i)*l,s.tx-=e.titleBox.width/2),r=u/e.titleBox.width,n=iW(e,t)/e.titleBox.height,{x:o.x,y:o.y,scale:Math.min(r,n),tx:s.tx,ty:s.ty}}function tkt(e,t){return e/(t===void 0?1:t)}function iW(e,t){var r=e.trace,n=t.h*(r.domain.y[1]-r.domain.y[0]);return Math.min(e.titleBox.height,n/2)}function xEe(e){var t=e.pull;if(!t)return 0;var r;if(ev.isArrayOrTypedArray(t))for(t=0,r=0;r<e.pull.length;r++)e.pull[r]>t&&(t=e.pull[r]);return t}function rkt(e,t){var r,n,i,a,o,s,l,u,c,f,h,d,v;function x(k,A){return k.pxmid[1]-A.pxmid[1]}function b(k,A){return A.pxmid[1]-k.pxmid[1]}function p(k,A){A||(A={});var L=A.labelExtraY+(n?A.yLabelMax:A.yLabelMin),_=n?k.yLabelMin:k.yLabelMax,C=n?k.yLabelMax:k.yLabelMin,M=k.cyFinal+o(k.px0[1],k.px1[1]),g=L-_,P,T,F,q,V,H;if(g*l>0&&(k.labelExtraY=g),!!ev.isArrayOrTypedArray(t.pull))for(T=0;T<f.length;T++)F=f[T],!(F===k||(Zo.castOption(t.pull,k.pts)||0)>=(Zo.castOption(t.pull,F.pts)||0))&&((k.pxmid[1]-F.pxmid[1])*l>0?(q=F.cyFinal+o(F.px0[1],F.px1[1]),g=q-_-k.labelExtraY,g*l>0&&(k.labelExtraY+=g)):(C+k.labelExtraY-M)*l>0&&(P=3*s*Math.abs(T-f.indexOf(k)),V=F.cxFinal+a(F.px0[0],F.px1[0]),H=V+P-(k.cxFinal+k.pxmid[0])-k.labelExtraX,H*s>0&&(k.labelExtraX+=H)))}for(n=0;n<2;n++)for(i=n?x:b,o=n?Math.max:Math.min,l=n?1:-1,r=0;r<2;r++){for(a=r?Math.max:Math.min,s=r?1:-1,u=e[n][r],u.sort(i),c=e[1-n][r],f=c.concat(u),d=[],h=0;h<u.length;h++)u[h].yLabelMid!==void 0&&d.push(u[h]);for(v=!1,h=0;n&&h<c.length;h++)if(c[h].yLabelMid!==void 0){v=c[h];break}for(h=0;h<d.length;h++){var E=h&&d[h-1];v&&!h&&(E=v),p(d[h],E)}}}function bEe(e,t){for(var r=[],n=0;n<e.length;n++){var i=e[n][0],a=i.trace,o=a.domain,s=t.w*(o.x[1]-o.x[0]),l=t.h*(o.y[1]-o.y[0]);a.title.text&&a.title.position!=="middle center"&&(l-=iW(i,t));var u=s/2,c=l/2;a.type==="funnelarea"&&!a.scalegroup&&(c/=a.aspectratio),i.r=Math.min(u,c)/(1+xEe(a)),i.cx=t.l+t.w*(a.domain.x[1]+a.domain.x[0])/2,i.cy=t.t+t.h*(1-a.domain.y[0])-l/2,a.title.text&&a.title.position.indexOf("bottom")!==-1&&(i.cy-=iW(i,t)),a.scalegroup&&r.indexOf(a.scalegroup)===-1&&r.push(a.scalegroup)}ikt(e,r)}function ikt(e,t){for(var r,n,i,a=0;a<t.length;a++){var o=1/0,s=t[a];for(n=0;n<e.length;n++)if(r=e[n][0],i=r.trace,i.scalegroup===s){var l;if(i.type==="pie")l=r.r*r.r;else if(i.type==="funnelarea"){var u,c;i.aspectratio>1?(u=r.r,c=u/i.aspectratio):(c=r.r,u=c*i.aspectratio),u*=(1+i.baseratio)/2,l=u*c}o=Math.min(o,l/r.vTotal)}for(n=0;n<e.length;n++)if(r=e[n][0],i=r.trace,i.scalegroup===s){var f=o*r.vTotal;i.type==="funnelarea"&&(f/=(1+i.baseratio)/2,f/=i.aspectratio),r.r=Math.sqrt(f)}}}function nkt(e){var t=e[0],r=t.r,n=t.trace,i=Zo.getRotationAngle(n.rotation),a=2*Math.PI/t.vTotal,o="px0",s="px1",l,u,c;if(n.direction==="counterclockwise"){for(l=0;l<e.length&&e[l].hidden;l++);if(l===e.length)return;i+=a*e[l].v,a*=-1,o="px1",s="px0"}for(c=hD(r,i),l=0;l<e.length;l++)u=e[l],!u.hidden&&(u[o]=c,u.startangle=i,i+=a*u.v/2,u.pxmid=hD(r,i),u.midangle=i,i+=a*u.v/2,c=hD(r,i),u.stopangle=i,u[s]=c,u.largeArc=u.v>t.vTotal/2?1:0,u.halfangle=Math.PI*Math.min(u.v/t.vTotal,.5),u.ring=1-n.hole,u.rInscribed=QEt(u,t))}function hD(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}function wEe(e,t,r){var n=e._fullLayout,i=r.trace,a=i.texttemplate,o=i.textinfo;if(!a&&o&&o!=="none"){var s=o.split("+"),l=function(A){return s.indexOf(A)!==-1},u=l("label"),c=l("text"),f=l("value"),h=l("percent"),d=n.separators,v;if(v=u?[t.label]:[],c){var x=Zo.getFirstFilled(i.text,t.pts);aEe(x)&&v.push(x)}f&&v.push(Zo.formatPieValue(t.v,d)),h&&v.push(Zo.formatPiePercent(t.v/r.vTotal,d)),t.text=v.join("<br>")}function b(A){return{label:A.label,value:A.v,valueLabel:Zo.formatPieValue(A.v,n.separators),percent:A.v/r.vTotal,percentLabel:Zo.formatPiePercent(A.v/r.vTotal,n.separators),color:A.color,text:A.text,customdata:ev.castOption(i,A.i,"customdata")}}if(a){var p=ev.castOption(i,t.i,"texttemplate");if(!p)t.text="";else{var E=b(t),k=Zo.getFirstFilled(i.text,t.pts);(aEe(k)||k==="")&&(E.text=k),t.text=ev.texttemplateString(p,E,e._fullLayout._d3locale,E,i._meta||{})}}}function TEe(e,t){var r=e.rotate*Math.PI/180,n=Math.cos(r),i=Math.sin(r),a=(t.left+t.right)/2,o=(t.top+t.bottom)/2;e.textX=a*n-o*i,e.textY=a*i+o*n,e.noCenter=!0}AEe.exports={plot:YEt,formatSliceLabel:wEe,transformInsideText:pEe,determineInsideTextFont:dEe,positionTitleOutside:_Ee,prerenderTitles:vEe,layoutAreas:bEe,attachFxHandlers:hEe,computeTransform:TEe}});var EEe=ye((ffr,MEe)=>{"use strict";var SEe=xa(),akt=z3(),okt=_v().resizeText;MEe.exports=function(t){var r=t._fullLayout._pielayer.selectAll(".trace");okt(t,r,"pie"),r.each(function(n){var i=n[0],a=i.trace,o=SEe.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){SEe.select(this).call(akt,s,a,t)})})}});var CEe=ye(_5=>{"use strict";var kEe=Xu();_5.name="pie";_5.plot=function(e,t,r,n){kEe.plotBasePlot(_5.name,e,t,r,n)};_5.clean=function(e,t,r,n){kEe.cleanBasePlot(_5.name,e,t,r,n)}});var PEe=ye((dfr,LEe)=>{"use strict";LEe.exports={attributes:A2(),supplyDefaults:S2().supplyDefaults,supplyLayoutDefaults:$4e(),layoutAttributes:uD(),calc:y5().calc,crossTraceCalc:y5().crossTraceCalc,plot:dD().plot,style:EEe(),styleOne:z3(),moduleType:"trace",name:"pie",basePlotModule:CEe(),categories:["pie-like","pie","showLegend"],meta:{}}});var REe=ye((vfr,IEe)=>{"use strict";IEe.exports=PEe()});var zEe=ye(x5=>{"use strict";var DEe=Xu();x5.name="sunburst";x5.plot=function(e,t,r,n){DEe.plotBasePlot(x5.name,e,t,r,n)};x5.clean=function(e,t,r,n){DEe.cleanBasePlot(x5.name,e,t,r,n)}});var nW=ye((gfr,FEe)=>{"use strict";FEe.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}});var AE=ye((mfr,OEe)=>{"use strict";var skt=vl(),lkt=Wo().hovertemplateAttrs,ukt=Wo().texttemplateAttrs,ckt=Jl(),fkt=Ju().attributes,Zy=A2(),qEe=nW(),TE=no().extendFlat,hkt=Ed().pattern;OEe.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:TE({colors:{valType:"data_array",editType:"calc"},line:{color:TE({},Zy.marker.line.color,{dflt:null}),width:TE({},Zy.marker.line.width,{dflt:1}),editType:"calc"},pattern:hkt,editType:"calc"},ckt("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:Zy.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:ukt({editType:"plot"},{keys:qEe.eventDataKeys.concat(["label","value"])}),hovertext:Zy.hovertext,hoverinfo:TE({},skt.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:lkt({},{keys:qEe.eventDataKeys}),textfont:Zy.textfont,insidetextorientation:Zy.insidetextorientation,insidetextfont:Zy.insidetextfont,outsidetextfont:TE({},Zy.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:Zy.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:fkt({name:"sunburst",trace:!0,editType:"calc"})}});var aW=ye((yfr,BEe)=>{"use strict";BEe.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var HEe=ye((_fr,VEe)=>{"use strict";var NEe=Mr(),dkt=AE(),vkt=Ju().defaults,pkt=r0().handleText,gkt=S2().handleMarkerDefaults,UEe=Mu(),mkt=UEe.hasColorscale,ykt=UEe.handleDefaults;VEe.exports=function(t,r,n,i){function a(h,d){return NEe.coerce(t,r,dkt,h,d)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),gkt(t,r,i,a);var u=r._hasColorscale=mkt(t,"marker","colors")||(t.marker||{}).coloraxis;u&&ykt(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",u?1:.7);var c=a("text");a("texttemplate"),r.texttemplate||a("textinfo",NEe.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate");var f="auto";pkt(t,r,i,a,f,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("insidetextorientation"),a("sort"),a("rotation"),a("root.color"),vkt(r,i,a),r._length=null}});var jEe=ye((xfr,GEe)=>{"use strict";var _kt=Mr(),xkt=aW();GEe.exports=function(t,r){function n(i,a){return _kt.coerce(t,r,xkt,i,a)}n("sunburstcolorway",r.colorway),n("extendsunburstcolors")}});var SE=ye((vD,WEe)=>{(function(e,t){typeof vD=="object"&&typeof WEe!="undefined"?t(vD):(e=e||self,t(e.d3=e.d3||{}))})(vD,function(e){"use strict";function t(Ve,Xe){return Ve.parent===Xe.parent?1:2}function r(Ve){return Ve.reduce(n,0)/Ve.length}function n(Ve,Xe){return Ve+Xe.x}function i(Ve){return 1+Ve.reduce(a,0)}function a(Ve,Xe){return Math.max(Ve,Xe.y)}function o(Ve){for(var Xe;Xe=Ve.children;)Ve=Xe[0];return Ve}function s(Ve){for(var Xe;Xe=Ve.children;)Ve=Xe[Xe.length-1];return Ve}function l(){var Ve=t,Xe=1,ht=1,Le=!1;function xe(Se){var lt,Gt=0;Se.eachAfter(function(jr){var ri=jr.children;ri?(jr.x=r(ri),jr.y=i(ri)):(jr.x=lt?Gt+=Ve(jr,lt):0,jr.y=0,lt=jr)});var Vt=o(Se),ar=s(Se),Qr=Vt.x-Ve(Vt,ar)/2,ai=ar.x+Ve(ar,Vt)/2;return Se.eachAfter(Le?function(jr){jr.x=(jr.x-Se.x)*Xe,jr.y=(Se.y-jr.y)*ht}:function(jr){jr.x=(jr.x-Qr)/(ai-Qr)*Xe,jr.y=(1-(Se.y?jr.y/Se.y:1))*ht})}return xe.separation=function(Se){return arguments.length?(Ve=Se,xe):Ve},xe.size=function(Se){return arguments.length?(Le=!1,Xe=+Se[0],ht=+Se[1],xe):Le?null:[Xe,ht]},xe.nodeSize=function(Se){return arguments.length?(Le=!0,Xe=+Se[0],ht=+Se[1],xe):Le?[Xe,ht]:null},xe}function u(Ve){var Xe=0,ht=Ve.children,Le=ht&&ht.length;if(!Le)Xe=1;else for(;--Le>=0;)Xe+=ht[Le].value;Ve.value=Xe}function c(){return this.eachAfter(u)}function f(Ve){var Xe=this,ht,Le=[Xe],xe,Se,lt;do for(ht=Le.reverse(),Le=[];Xe=ht.pop();)if(Ve(Xe),xe=Xe.children,xe)for(Se=0,lt=xe.length;Se<lt;++Se)Le.push(xe[Se]);while(Le.length);return this}function h(Ve){for(var Xe=this,ht=[Xe],Le,xe;Xe=ht.pop();)if(Ve(Xe),Le=Xe.children,Le)for(xe=Le.length-1;xe>=0;--xe)ht.push(Le[xe]);return this}function d(Ve){for(var Xe=this,ht=[Xe],Le=[],xe,Se,lt;Xe=ht.pop();)if(Le.push(Xe),xe=Xe.children,xe)for(Se=0,lt=xe.length;Se<lt;++Se)ht.push(xe[Se]);for(;Xe=Le.pop();)Ve(Xe);return this}function v(Ve){return this.eachAfter(function(Xe){for(var ht=+Ve(Xe.data)||0,Le=Xe.children,xe=Le&&Le.length;--xe>=0;)ht+=Le[xe].value;Xe.value=ht})}function x(Ve){return this.eachBefore(function(Xe){Xe.children&&Xe.children.sort(Ve)})}function b(Ve){for(var Xe=this,ht=p(Xe,Ve),Le=[Xe];Xe!==ht;)Xe=Xe.parent,Le.push(Xe);for(var xe=Le.length;Ve!==ht;)Le.splice(xe,0,Ve),Ve=Ve.parent;return Le}function p(Ve,Xe){if(Ve===Xe)return Ve;var ht=Ve.ancestors(),Le=Xe.ancestors(),xe=null;for(Ve=ht.pop(),Xe=Le.pop();Ve===Xe;)xe=Ve,Ve=ht.pop(),Xe=Le.pop();return xe}function E(){for(var Ve=this,Xe=[Ve];Ve=Ve.parent;)Xe.push(Ve);return Xe}function k(){var Ve=[];return this.each(function(Xe){Ve.push(Xe)}),Ve}function A(){var Ve=[];return this.eachBefore(function(Xe){Xe.children||Ve.push(Xe)}),Ve}function L(){var Ve=this,Xe=[];return Ve.each(function(ht){ht!==Ve&&Xe.push({source:ht.parent,target:ht})}),Xe}function _(Ve,Xe){var ht=new T(Ve),Le=+Ve.value&&(ht.value=Ve.value),xe,Se=[ht],lt,Gt,Vt,ar;for(Xe==null&&(Xe=M);xe=Se.pop();)if(Le&&(xe.value=+xe.data.value),(Gt=Xe(xe.data))&&(ar=Gt.length))for(xe.children=new Array(ar),Vt=ar-1;Vt>=0;--Vt)Se.push(lt=xe.children[Vt]=new T(Gt[Vt])),lt.parent=xe,lt.depth=xe.depth+1;return ht.eachBefore(P)}function C(){return _(this).eachBefore(g)}function M(Ve){return Ve.children}function g(Ve){Ve.data=Ve.data.data}function P(Ve){var Xe=0;do Ve.height=Xe;while((Ve=Ve.parent)&&Ve.height<++Xe)}function T(Ve){this.data=Ve,this.depth=this.height=0,this.parent=null}T.prototype=_.prototype={constructor:T,count:c,each:f,eachAfter:d,eachBefore:h,sum:v,sort:x,path:b,ancestors:E,descendants:k,leaves:A,links:L,copy:C};var F=Array.prototype.slice;function q(Ve){for(var Xe=Ve.length,ht,Le;Xe;)Le=Math.random()*Xe--|0,ht=Ve[Xe],Ve[Xe]=Ve[Le],Ve[Le]=ht;return Ve}function V(Ve){for(var Xe=0,ht=(Ve=q(F.call(Ve))).length,Le=[],xe,Se;Xe<ht;)xe=Ve[Xe],Se&&G(Se,xe)?++Xe:(Se=W(Le=H(Le,xe)),Xe=0);return Se}function H(Ve,Xe){var ht,Le;if(N(Xe,Ve))return[Xe];for(ht=0;ht<Ve.length;++ht)if(X(Xe,Ve[ht])&&N(ae(Ve[ht],Xe),Ve))return[Ve[ht],Xe];for(ht=0;ht<Ve.length-1;++ht)for(Le=ht+1;Le<Ve.length;++Le)if(X(ae(Ve[ht],Ve[Le]),Xe)&&X(ae(Ve[ht],Xe),Ve[Le])&&X(ae(Ve[Le],Xe),Ve[ht])&&N(_e(Ve[ht],Ve[Le],Xe),Ve))return[Ve[ht],Ve[Le],Xe];throw new Error}function X(Ve,Xe){var ht=Ve.r-Xe.r,Le=Xe.x-Ve.x,xe=Xe.y-Ve.y;return ht<0||ht*ht<Le*Le+xe*xe}function G(Ve,Xe){var ht=Ve.r-Xe.r+1e-6,Le=Xe.x-Ve.x,xe=Xe.y-Ve.y;return ht>0&&ht*ht>Le*Le+xe*xe}function N(Ve,Xe){for(var ht=0;ht<Xe.length;++ht)if(!G(Ve,Xe[ht]))return!1;return!0}function W(Ve){switch(Ve.length){case 1:return re(Ve[0]);case 2:return ae(Ve[0],Ve[1]);case 3:return _e(Ve[0],Ve[1],Ve[2])}}function re(Ve){return{x:Ve.x,y:Ve.y,r:Ve.r}}function ae(Ve,Xe){var ht=Ve.x,Le=Ve.y,xe=Ve.r,Se=Xe.x,lt=Xe.y,Gt=Xe.r,Vt=Se-ht,ar=lt-Le,Qr=Gt-xe,ai=Math.sqrt(Vt*Vt+ar*ar);return{x:(ht+Se+Vt/ai*Qr)/2,y:(Le+lt+ar/ai*Qr)/2,r:(ai+xe+Gt)/2}}function _e(Ve,Xe,ht){var Le=Ve.x,xe=Ve.y,Se=Ve.r,lt=Xe.x,Gt=Xe.y,Vt=Xe.r,ar=ht.x,Qr=ht.y,ai=ht.r,jr=Le-lt,ri=Le-ar,bi=xe-Gt,nn=xe-Qr,Wi=Vt-Se,Ni=ai-Se,_n=Le*Le+xe*xe-Se*Se,$i=_n-lt*lt-Gt*Gt+Vt*Vt,zn=_n-ar*ar-Qr*Qr+ai*ai,Wn=ri*bi-jr*nn,It=(bi*zn-nn*$i)/(Wn*2)-Le,ft=(nn*Wi-bi*Ni)/Wn,jt=(ri*$i-jr*zn)/(Wn*2)-xe,Zt=(jr*Ni-ri*Wi)/Wn,yr=ft*ft+Zt*Zt-1,Fr=2*(Se+It*ft+jt*Zt),Zr=It*It+jt*jt-Se*Se,Vr=-(yr?(Fr+Math.sqrt(Fr*Fr-4*yr*Zr))/(2*yr):Zr/Fr);return{x:Le+It+ft*Vr,y:xe+jt+Zt*Vr,r:Vr}}function Me(Ve,Xe,ht){var Le=Ve.x-Xe.x,xe,Se,lt=Ve.y-Xe.y,Gt,Vt,ar=Le*Le+lt*lt;ar?(Se=Xe.r+ht.r,Se*=Se,Vt=Ve.r+ht.r,Vt*=Vt,Se>Vt?(xe=(ar+Vt-Se)/(2*ar),Gt=Math.sqrt(Math.max(0,Vt/ar-xe*xe)),ht.x=Ve.x-xe*Le-Gt*lt,ht.y=Ve.y-xe*lt+Gt*Le):(xe=(ar+Se-Vt)/(2*ar),Gt=Math.sqrt(Math.max(0,Se/ar-xe*xe)),ht.x=Xe.x+xe*Le-Gt*lt,ht.y=Xe.y+xe*lt+Gt*Le)):(ht.x=Xe.x+ht.r,ht.y=Xe.y)}function ke(Ve,Xe){var ht=Ve.r+Xe.r-1e-6,Le=Xe.x-Ve.x,xe=Xe.y-Ve.y;return ht>0&&ht*ht>Le*Le+xe*xe}function ge(Ve){var Xe=Ve._,ht=Ve.next._,Le=Xe.r+ht.r,xe=(Xe.x*ht.r+ht.x*Xe.r)/Le,Se=(Xe.y*ht.r+ht.y*Xe.r)/Le;return xe*xe+Se*Se}function ie(Ve){this._=Ve,this.next=null,this.previous=null}function Te(Ve){if(!(xe=Ve.length))return 0;var Xe,ht,Le,xe,Se,lt,Gt,Vt,ar,Qr,ai;if(Xe=Ve[0],Xe.x=0,Xe.y=0,!(xe>1))return Xe.r;if(ht=Ve[1],Xe.x=-ht.r,ht.x=Xe.r,ht.y=0,!(xe>2))return Xe.r+ht.r;Me(ht,Xe,Le=Ve[2]),Xe=new ie(Xe),ht=new ie(ht),Le=new ie(Le),Xe.next=Le.previous=ht,ht.next=Xe.previous=Le,Le.next=ht.previous=Xe;e:for(Gt=3;Gt<xe;++Gt){Me(Xe._,ht._,Le=Ve[Gt]),Le=new ie(Le),Vt=ht.next,ar=Xe.previous,Qr=ht._.r,ai=Xe._.r;do if(Qr<=ai){if(ke(Vt._,Le._)){ht=Vt,Xe.next=ht,ht.previous=Xe,--Gt;continue e}Qr+=Vt._.r,Vt=Vt.next}else{if(ke(ar._,Le._)){Xe=ar,Xe.next=ht,ht.previous=Xe,--Gt;continue e}ai+=ar._.r,ar=ar.previous}while(Vt!==ar.next);for(Le.previous=Xe,Le.next=ht,Xe.next=ht.previous=ht=Le,Se=ge(Xe);(Le=Le.next)!==ht;)(lt=ge(Le))<Se&&(Xe=Le,Se=lt);ht=Xe.next}for(Xe=[ht._],Le=ht;(Le=Le.next)!==ht;)Xe.push(Le._);for(Le=V(Xe),Gt=0;Gt<xe;++Gt)Xe=Ve[Gt],Xe.x-=Le.x,Xe.y-=Le.y;return Le.r}function Ee(Ve){return Te(Ve),Ve}function Ae(Ve){return Ve==null?null:ze(Ve)}function ze(Ve){if(typeof Ve!="function")throw new Error;return Ve}function Ce(){return 0}function me(Ve){return function(){return Ve}}function Re(Ve){return Math.sqrt(Ve.value)}function ce(){var Ve=null,Xe=1,ht=1,Le=Ce;function xe(Se){return Se.x=Xe/2,Se.y=ht/2,Ve?Se.eachBefore(Ge(Ve)).eachAfter(nt(Le,.5)).eachBefore(ct(1)):Se.eachBefore(Ge(Re)).eachAfter(nt(Ce,1)).eachAfter(nt(Le,Se.r/Math.min(Xe,ht))).eachBefore(ct(Math.min(Xe,ht)/(2*Se.r))),Se}return xe.radius=function(Se){return arguments.length?(Ve=Ae(Se),xe):Ve},xe.size=function(Se){return arguments.length?(Xe=+Se[0],ht=+Se[1],xe):[Xe,ht]},xe.padding=function(Se){return arguments.length?(Le=typeof Se=="function"?Se:me(+Se),xe):Le},xe}function Ge(Ve){return function(Xe){Xe.children||(Xe.r=Math.max(0,+Ve(Xe)||0))}}function nt(Ve,Xe){return function(ht){if(Le=ht.children){var Le,xe,Se=Le.length,lt=Ve(ht)*Xe||0,Gt;if(lt)for(xe=0;xe<Se;++xe)Le[xe].r+=lt;if(Gt=Te(Le),lt)for(xe=0;xe<Se;++xe)Le[xe].r-=lt;ht.r=Gt+lt}}}function ct(Ve){return function(Xe){var ht=Xe.parent;Xe.r*=Ve,ht&&(Xe.x=ht.x+Ve*Xe.x,Xe.y=ht.y+Ve*Xe.y)}}function qt(Ve){Ve.x0=Math.round(Ve.x0),Ve.y0=Math.round(Ve.y0),Ve.x1=Math.round(Ve.x1),Ve.y1=Math.round(Ve.y1)}function rt(Ve,Xe,ht,Le,xe){for(var Se=Ve.children,lt,Gt=-1,Vt=Se.length,ar=Ve.value&&(Le-Xe)/Ve.value;++Gt<Vt;)lt=Se[Gt],lt.y0=ht,lt.y1=xe,lt.x0=Xe,lt.x1=Xe+=lt.value*ar}function ot(){var Ve=1,Xe=1,ht=0,Le=!1;function xe(lt){var Gt=lt.height+1;return lt.x0=lt.y0=ht,lt.x1=Ve,lt.y1=Xe/Gt,lt.eachBefore(Se(Xe,Gt)),Le&&lt.eachBefore(qt),lt}function Se(lt,Gt){return function(Vt){Vt.children&&rt(Vt,Vt.x0,lt*(Vt.depth+1)/Gt,Vt.x1,lt*(Vt.depth+2)/Gt);var ar=Vt.x0,Qr=Vt.y0,ai=Vt.x1-ht,jr=Vt.y1-ht;ai<ar&&(ar=ai=(ar+ai)/2),jr<Qr&&(Qr=jr=(Qr+jr)/2),Vt.x0=ar,Vt.y0=Qr,Vt.x1=ai,Vt.y1=jr}}return xe.round=function(lt){return arguments.length?(Le=!!lt,xe):Le},xe.size=function(lt){return arguments.length?(Ve=+lt[0],Xe=+lt[1],xe):[Ve,Xe]},xe.padding=function(lt){return arguments.length?(ht=+lt,xe):ht},xe}var Rt="$",kt={depth:-1},Ct={};function Yt(Ve){return Ve.id}function xr(Ve){return Ve.parentId}function er(){var Ve=Yt,Xe=xr;function ht(Le){var xe,Se,lt=Le.length,Gt,Vt,ar,Qr=new Array(lt),ai,jr,ri={};for(Se=0;Se<lt;++Se)xe=Le[Se],ar=Qr[Se]=new T(xe),(ai=Ve(xe,Se,Le))!=null&&(ai+="")&&(jr=Rt+(ar.id=ai),ri[jr]=jr in ri?Ct:ar);for(Se=0;Se<lt;++Se)if(ar=Qr[Se],ai=Xe(Le[Se],Se,Le),ai==null||!(ai+="")){if(Gt)throw new Error("multiple roots");Gt=ar}else{if(Vt=ri[Rt+ai],!Vt)throw new Error("missing: "+ai);if(Vt===Ct)throw new Error("ambiguous: "+ai);Vt.children?Vt.children.push(ar):Vt.children=[ar],ar.parent=Vt}if(!Gt)throw new Error("no root");if(Gt.parent=kt,Gt.eachBefore(function(bi){bi.depth=bi.parent.depth+1,--lt}).eachBefore(P),Gt.parent=null,lt>0)throw new Error("cycle");return Gt}return ht.id=function(Le){return arguments.length?(Ve=ze(Le),ht):Ve},ht.parentId=function(Le){return arguments.length?(Xe=ze(Le),ht):Xe},ht}function Ke(Ve,Xe){return Ve.parent===Xe.parent?1:2}function xt(Ve){var Xe=Ve.children;return Xe?Xe[0]:Ve.t}function bt(Ve){var Xe=Ve.children;return Xe?Xe[Xe.length-1]:Ve.t}function Lt(Ve,Xe,ht){var Le=ht/(Xe.i-Ve.i);Xe.c-=Le,Xe.s+=ht,Ve.c+=Le,Xe.z+=ht,Xe.m+=ht}function St(Ve){for(var Xe=0,ht=0,Le=Ve.children,xe=Le.length,Se;--xe>=0;)Se=Le[xe],Se.z+=Xe,Se.m+=Xe,Xe+=Se.s+(ht+=Se.c)}function Et(Ve,Xe,ht){return Ve.a.parent===Xe.parent?Ve.a:ht}function dt(Ve,Xe){this._=Ve,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Xe}dt.prototype=Object.create(T.prototype);function Ht(Ve){for(var Xe=new dt(Ve,0),ht,Le=[Xe],xe,Se,lt,Gt;ht=Le.pop();)if(Se=ht._.children)for(ht.children=new Array(Gt=Se.length),lt=Gt-1;lt>=0;--lt)Le.push(xe=ht.children[lt]=new dt(Se[lt],lt)),xe.parent=ht;return(Xe.parent=new dt(null,0)).children=[Xe],Xe}function $t(){var Ve=Ke,Xe=1,ht=1,Le=null;function xe(ar){var Qr=Ht(ar);if(Qr.eachAfter(Se),Qr.parent.m=-Qr.z,Qr.eachBefore(lt),Le)ar.eachBefore(Vt);else{var ai=ar,jr=ar,ri=ar;ar.eachBefore(function(_n){_n.x<ai.x&&(ai=_n),_n.x>jr.x&&(jr=_n),_n.depth>ri.depth&&(ri=_n)});var bi=ai===jr?1:Ve(ai,jr)/2,nn=bi-ai.x,Wi=Xe/(jr.x+bi+nn),Ni=ht/(ri.depth||1);ar.eachBefore(function(_n){_n.x=(_n.x+nn)*Wi,_n.y=_n.depth*Ni})}return ar}function Se(ar){var Qr=ar.children,ai=ar.parent.children,jr=ar.i?ai[ar.i-1]:null;if(Qr){St(ar);var ri=(Qr[0].z+Qr[Qr.length-1].z)/2;jr?(ar.z=jr.z+Ve(ar._,jr._),ar.m=ar.z-ri):ar.z=ri}else jr&&(ar.z=jr.z+Ve(ar._,jr._));ar.parent.A=Gt(ar,jr,ar.parent.A||ai[0])}function lt(ar){ar._.x=ar.z+ar.parent.m,ar.m+=ar.parent.m}function Gt(ar,Qr,ai){if(Qr){for(var jr=ar,ri=ar,bi=Qr,nn=jr.parent.children[0],Wi=jr.m,Ni=ri.m,_n=bi.m,$i=nn.m,zn;bi=bt(bi),jr=xt(jr),bi&&jr;)nn=xt(nn),ri=bt(ri),ri.a=ar,zn=bi.z+_n-jr.z-Wi+Ve(bi._,jr._),zn>0&&(Lt(Et(bi,ar,ai),ar,zn),Wi+=zn,Ni+=zn),_n+=bi.m,Wi+=jr.m,$i+=nn.m,Ni+=ri.m;bi&&!bt(ri)&&(ri.t=bi,ri.m+=_n-Ni),jr&&!xt(nn)&&(nn.t=jr,nn.m+=Wi-$i,ai=ar)}return ai}function Vt(ar){ar.x*=Xe,ar.y=ar.depth*ht}return xe.separation=function(ar){return arguments.length?(Ve=ar,xe):Ve},xe.size=function(ar){return arguments.length?(Le=!1,Xe=+ar[0],ht=+ar[1],xe):Le?null:[Xe,ht]},xe.nodeSize=function(ar){return arguments.length?(Le=!0,Xe=+ar[0],ht=+ar[1],xe):Le?[Xe,ht]:null},xe}function fr(Ve,Xe,ht,Le,xe){for(var Se=Ve.children,lt,Gt=-1,Vt=Se.length,ar=Ve.value&&(xe-ht)/Ve.value;++Gt<Vt;)lt=Se[Gt],lt.x0=Xe,lt.x1=Le,lt.y0=ht,lt.y1=ht+=lt.value*ar}var _r=(1+Math.sqrt(5))/2;function Br(Ve,Xe,ht,Le,xe,Se){for(var lt=[],Gt=Xe.children,Vt,ar,Qr=0,ai=0,jr=Gt.length,ri,bi,nn=Xe.value,Wi,Ni,_n,$i,zn,Wn,It;Qr<jr;){ri=xe-ht,bi=Se-Le;do Wi=Gt[ai++].value;while(!Wi&&ai<jr);for(Ni=_n=Wi,Wn=Math.max(bi/ri,ri/bi)/(nn*Ve),It=Wi*Wi*Wn,zn=Math.max(_n/It,It/Ni);ai<jr;++ai){if(Wi+=ar=Gt[ai].value,ar<Ni&&(Ni=ar),ar>_n&&(_n=ar),It=Wi*Wi*Wn,$i=Math.max(_n/It,It/Ni),$i>zn){Wi-=ar;break}zn=$i}lt.push(Vt={value:Wi,dice:ri<bi,children:Gt.slice(Qr,ai)}),Vt.dice?rt(Vt,ht,Le,xe,nn?Le+=bi*Wi/nn:Se):fr(Vt,ht,Le,nn?ht+=ri*Wi/nn:xe,Se),nn-=Wi,Qr=ai}return lt}var Or=function Ve(Xe){function ht(Le,xe,Se,lt,Gt){Br(Xe,Le,xe,Se,lt,Gt)}return ht.ratio=function(Le){return Ve((Le=+Le)>1?Le:1)},ht}(_r);function Nr(){var Ve=Or,Xe=!1,ht=1,Le=1,xe=[0],Se=Ce,lt=Ce,Gt=Ce,Vt=Ce,ar=Ce;function Qr(jr){return jr.x0=jr.y0=0,jr.x1=ht,jr.y1=Le,jr.eachBefore(ai),xe=[0],Xe&&jr.eachBefore(qt),jr}function ai(jr){var ri=xe[jr.depth],bi=jr.x0+ri,nn=jr.y0+ri,Wi=jr.x1-ri,Ni=jr.y1-ri;Wi<bi&&(bi=Wi=(bi+Wi)/2),Ni<nn&&(nn=Ni=(nn+Ni)/2),jr.x0=bi,jr.y0=nn,jr.x1=Wi,jr.y1=Ni,jr.children&&(ri=xe[jr.depth+1]=Se(jr)/2,bi+=ar(jr)-ri,nn+=lt(jr)-ri,Wi-=Gt(jr)-ri,Ni-=Vt(jr)-ri,Wi<bi&&(bi=Wi=(bi+Wi)/2),Ni<nn&&(nn=Ni=(nn+Ni)/2),Ve(jr,bi,nn,Wi,Ni))}return Qr.round=function(jr){return arguments.length?(Xe=!!jr,Qr):Xe},Qr.size=function(jr){return arguments.length?(ht=+jr[0],Le=+jr[1],Qr):[ht,Le]},Qr.tile=function(jr){return arguments.length?(Ve=ze(jr),Qr):Ve},Qr.padding=function(jr){return arguments.length?Qr.paddingInner(jr).paddingOuter(jr):Qr.paddingInner()},Qr.paddingInner=function(jr){return arguments.length?(Se=typeof jr=="function"?jr:me(+jr),Qr):Se},Qr.paddingOuter=function(jr){return arguments.length?Qr.paddingTop(jr).paddingRight(jr).paddingBottom(jr).paddingLeft(jr):Qr.paddingTop()},Qr.paddingTop=function(jr){return arguments.length?(lt=typeof jr=="function"?jr:me(+jr),Qr):lt},Qr.paddingRight=function(jr){return arguments.length?(Gt=typeof jr=="function"?jr:me(+jr),Qr):Gt},Qr.paddingBottom=function(jr){return arguments.length?(Vt=typeof jr=="function"?jr:me(+jr),Qr):Vt},Qr.paddingLeft=function(jr){return arguments.length?(ar=typeof jr=="function"?jr:me(+jr),Qr):ar},Qr}function ut(Ve,Xe,ht,Le,xe){var Se=Ve.children,lt,Gt=Se.length,Vt,ar=new Array(Gt+1);for(ar[0]=Vt=lt=0;lt<Gt;++lt)ar[lt+1]=Vt+=Se[lt].value;Qr(0,Gt,Ve.value,Xe,ht,Le,xe);function Qr(ai,jr,ri,bi,nn,Wi,Ni){if(ai>=jr-1){var _n=Se[ai];_n.x0=bi,_n.y0=nn,_n.x1=Wi,_n.y1=Ni;return}for(var $i=ar[ai],zn=ri/2+$i,Wn=ai+1,It=jr-1;Wn<It;){var ft=Wn+It>>>1;ar[ft]<zn?Wn=ft+1:It=ft}zn-ar[Wn-1]<ar[Wn]-zn&&ai+1<Wn&&--Wn;var jt=ar[Wn]-$i,Zt=ri-jt;if(Wi-bi>Ni-nn){var yr=(bi*Zt+Wi*jt)/ri;Qr(ai,Wn,jt,bi,nn,yr,Ni),Qr(Wn,jr,Zt,yr,nn,Wi,Ni)}else{var Fr=(nn*Zt+Ni*jt)/ri;Qr(ai,Wn,jt,bi,nn,Wi,Fr),Qr(Wn,jr,Zt,bi,Fr,Wi,Ni)}}}function Ne(Ve,Xe,ht,Le,xe){(Ve.depth&1?fr:rt)(Ve,Xe,ht,Le,xe)}var Ye=function Ve(Xe){function ht(Le,xe,Se,lt,Gt){if((Vt=Le._squarify)&&Vt.ratio===Xe)for(var Vt,ar,Qr,ai,jr=-1,ri,bi=Vt.length,nn=Le.value;++jr<bi;){for(ar=Vt[jr],Qr=ar.children,ai=ar.value=0,ri=Qr.length;ai<ri;++ai)ar.value+=Qr[ai].value;ar.dice?rt(ar,xe,Se,lt,Se+=(Gt-Se)*ar.value/nn):fr(ar,xe,Se,xe+=(lt-xe)*ar.value/nn,Gt),nn-=ar.value}else Le._squarify=Vt=Br(Xe,Le,xe,Se,lt,Gt),Vt.ratio=Xe}return ht.ratio=function(Le){return Ve((Le=+Le)>1?Le:1)},ht}(_r);e.cluster=l,e.hierarchy=_,e.pack=ce,e.packEnclose=V,e.packSiblings=Ee,e.partition=ot,e.stratify=er,e.tree=$t,e.treemap=Nr,e.treemapBinary=ut,e.treemapDice=rt,e.treemapResquarify=Ye,e.treemapSlice=fr,e.treemapSliceDice=Ne,e.treemapSquarify=Or,Object.defineProperty(e,"__esModule",{value:!0})})});var EE=ye(ME=>{"use strict";var ZEe=SE(),bkt=uo(),b5=Mr(),wkt=Mu().makeColorScaleFuncFromTrace,Tkt=y5().makePullColorFn,Akt=y5().generateExtendedColors,Skt=Mu().calc,Mkt=es().ALMOST_EQUAL,Ekt={},kkt={},Ckt={};ME.calc=function(e,t){var r=e._fullLayout,n=t.ids,i=b5.isArrayOrTypedArray(n),a=t.labels,o=t.parents,s=t.values,l=b5.isArrayOrTypedArray(s),u=[],c={},f={},h=function(G,N){c[G]?c[G].push(N):c[G]=[N],f[N]=1},d=function(G){return G||typeof G=="number"},v=function(G){return!l||bkt(s[G])&&s[G]>=0},x,b,p;i?(x=Math.min(n.length,o.length),b=function(G){return d(n[G])&&v(G)},p=function(G){return String(n[G])}):(x=Math.min(a.length,o.length),b=function(G){return d(a[G])&&v(G)},p=function(G){return String(a[G])}),l&&(x=Math.min(x,s.length));for(var E=0;E<x;E++)if(b(E)){var k=p(E),A=d(o[E])?String(o[E]):"",L={i:E,id:k,pid:A,label:d(a[E])?String(a[E]):""};l&&(L.v=+s[E]),u.push(L),h(A,k)}if(c[""]){if(c[""].length>1){for(var M=b5.randstr(),g=0;g<u.length;g++)u[g].pid===""&&(u[g].pid=M);u.unshift({hasMultipleRoots:!0,id:M,pid:"",label:""})}}else{var _=[],C;for(C in c)f[C]||_.push(C);if(_.length===1)C=_[0],u.unshift({hasImpliedRoot:!0,id:C,pid:"",label:C});else return b5.warn(["Multiple implied roots, cannot build",t.type,"hierarchy of",t.name+".","These roots include:",_.join(", ")].join(" "))}var P;try{P=ZEe.stratify().id(function(G){return G.id}).parentId(function(G){return G.pid})(u)}catch(G){return b5.warn(["Failed to build",t.type,"hierarchy of",t.name+".","Error:",G.message].join(" "))}var T=ZEe.hierarchy(P),F=!1;if(l)switch(t.branchvalues){case"remainder":T.sum(function(G){return G.data.v});break;case"total":T.each(function(G){var N=G.data.data,W=N.v;if(G.children){var re=G.children.reduce(function(ae,_e){return ae+_e.data.data.v},0);if((N.hasImpliedRoot||N.hasMultipleRoots)&&(W=re),W<re*Mkt)return F=!0,b5.warn(["Total value for node",G.data.data.id,"of",t.name,"is smaller than the sum of its children.",`
+parent value =`,W,`
+children sum =`,re].join(" "))}G.value=W});break}else XEe(T,t,{branches:t.count.indexOf("branches")!==-1,leaves:t.count.indexOf("leaves")!==-1});if(!F){t.sort&&T.sort(function(G,N){return N.value-G.value});var q,V,H=t.marker.colors||[],X=!!H.length;return t._hasColorscale?(X||(H=l?t.values:t._values),Skt(e,t,{vals:H,containerStr:"marker",cLetter:"c"}),V=wkt(t.marker)):q=Tkt(r["_"+t.type+"colormap"]),T.each(function(G){var N=G.data.data;N.color=t._hasColorscale?V(H[N.i]):q(H[N.i],N.id)}),u[0].hierarchy=T,u}};ME._runCrossTraceCalc=function(e,t){var r=t._fullLayout,n=t.calcdata,i=r[e+"colorway"],a=r["_"+e+"colormap"];r["extend"+e+"colors"]&&(i=Akt(i,e==="icicle"?Ckt:e==="treemap"?kkt:Ekt));var o=0,s;function l(h){var d=h.data.data,v=d.id;d.color===!1&&(a[v]?d.color=a[v]:h.parent?h.parent.parent?d.color=h.parent.data.data.color:(a[v]=d.color=i[o%i.length],o++):d.color=s)}for(var u=0;u<n.length;u++){var c=n[u],f=c[0];f.trace.type===e&&f.hierarchy&&(s=f.trace.root.color,f.hierarchy.each(l))}};ME.crossTraceCalc=function(e){return ME._runCrossTraceCalc("sunburst",e)};function XEe(e,t,r){var n=0,i=e.children;if(i){for(var a=i.length,o=0;o<a;o++)n+=XEe(i[o],t,r);r.branches&&n++}else r.leaves&&n++;return e.value=e.data.data.value=n,t._values||(t._values=[]),t._values[e.data.data.i]=n,n}});function Xy(e,t,r){e.prototype=t.prototype=r,r.constructor=e}function G_(e,t){var r=Object.create(e.prototype);for(var n in t)r[n]=t[n];return r}var pD=Ll(()=>{});function Vm(){}function KEe(){return this.rgb().formatHex()}function qkt(){return this.rgb().formatHex8()}function Okt(){return ike(this).formatHsl()}function JEe(){return this.rgb().formatRgb()}function W_(e){var t,r;return e=(e+"").trim().toLowerCase(),(t=Lkt.exec(e))?(r=t[1].length,t=parseInt(t[1],16),r===6?$Ee(t):r===3?new hd(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):r===8?gD(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):r===4?gD(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Pkt.exec(e))?new hd(t[1],t[2],t[3],1):(t=Ikt.exec(e))?new hd(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Rkt.exec(e))?gD(t[1],t[2],t[3],t[4]):(t=Dkt.exec(e))?gD(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=zkt.exec(e))?tke(t[1],t[2]/100,t[3]/100,1):(t=Fkt.exec(e))?tke(t[1],t[2]/100,t[3]/100,t[4]):YEe.hasOwnProperty(e)?$Ee(YEe[e]):e==="transparent"?new hd(NaN,NaN,NaN,0):null}function $Ee(e){return new hd(e>>16&255,e>>8&255,e&255,1)}function gD(e,t,r,n){return n<=0&&(e=t=r=NaN),new hd(e,t,r,n)}function CE(e){return e instanceof Vm||(e=W_(e)),e?(e=e.rgb(),new hd(e.r,e.g,e.b,e.opacity)):new hd}function T5(e,t,r,n){return arguments.length===1?CE(e):new hd(e,t,r,n==null?1:n)}function hd(e,t,r,n){this.r=+e,this.g=+t,this.b=+r,this.opacity=+n}function QEe(){return`#${M2(this.r)}${M2(this.g)}${M2(this.b)}`}function Bkt(){return`#${M2(this.r)}${M2(this.g)}${M2(this.b)}${M2((isNaN(this.opacity)?1:this.opacity)*255)}`}function eke(){let e=yD(this.opacity);return`${e===1?"rgb(":"rgba("}${E2(this.r)}, ${E2(this.g)}, ${E2(this.b)}${e===1?")":`, ${e})`}`}function yD(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function E2(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function M2(e){return e=E2(e),(e<16?"0":"")+e.toString(16)}function tke(e,t,r,n){return n<=0?e=t=r=NaN:r<=0||r>=1?e=t=NaN:t<=0&&(e=NaN),new Zg(e,t,r,n)}function ike(e){if(e instanceof Zg)return new Zg(e.h,e.s,e.l,e.opacity);if(e instanceof Vm||(e=W_(e)),!e)return new Zg;if(e instanceof Zg)return e;e=e.rgb();var t=e.r/255,r=e.g/255,n=e.b/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=NaN,s=a-i,l=(a+i)/2;return s?(t===a?o=(r-n)/s+(r<n)*6:r===a?o=(n-t)/s+2:o=(t-r)/s+4,s/=l<.5?a+i:2-a-i,o*=60):s=l>0&&l<1?0:o,new Zg(o,s,l,e.opacity)}function LE(e,t,r,n){return arguments.length===1?ike(e):new Zg(e,t,r,n==null?1:n)}function Zg(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}function rke(e){return e=(e||0)%360,e<0?e+360:e}function mD(e){return Math.max(0,Math.min(1,e||0))}function oW(e,t,r){return(e<60?t+(r-t)*e/60:e<180?r:e<240?t+(r-t)*(240-e)/60:t)*255}var j_,k2,w5,kE,Um,Lkt,Pkt,Ikt,Rkt,Dkt,zkt,Fkt,YEe,_D=Ll(()=>{pD();j_=.7,k2=1/j_,w5="\\s*([+-]?\\d+)\\s*",kE="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Um="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Lkt=/^#([0-9a-f]{3,8})$/,Pkt=new RegExp(`^rgb\\(${w5},${w5},${w5}\\)$`),Ikt=new RegExp(`^rgb\\(${Um},${Um},${Um}\\)$`),Rkt=new RegExp(`^rgba\\(${w5},${w5},${w5},${kE}\\)$`),Dkt=new RegExp(`^rgba\\(${Um},${Um},${Um},${kE}\\)$`),zkt=new RegExp(`^hsl\\(${kE},${Um},${Um}\\)$`),Fkt=new RegExp(`^hsla\\(${kE},${Um},${Um},${kE}\\)$`),YEe={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};Xy(Vm,W_,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:KEe,formatHex:KEe,formatHex8:qkt,formatHsl:Okt,formatRgb:JEe,toString:JEe});Xy(hd,T5,G_(Vm,{brighter(e){return e=e==null?k2:Math.pow(k2,e),new hd(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?j_:Math.pow(j_,e),new hd(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new hd(E2(this.r),E2(this.g),E2(this.b),yD(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:QEe,formatHex:QEe,formatHex8:Bkt,formatRgb:eke,toString:eke}));Xy(Zg,LE,G_(Vm,{brighter(e){return e=e==null?k2:Math.pow(k2,e),new Zg(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?j_:Math.pow(j_,e),new Zg(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,r=this.l,n=r+(r<.5?r:1-r)*t,i=2*r-n;return new hd(oW(e>=240?e-240:e+120,i,n),oW(e,i,n),oW(e<120?e+240:e-120,i,n),this.opacity)},clamp(){return new Zg(rke(this.h),mD(this.s),mD(this.l),yD(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=yD(this.opacity);return`${e===1?"hsl(":"hsla("}${rke(this.h)}, ${mD(this.s)*100}%, ${mD(this.l)*100}%${e===1?")":`, ${e})`}`}}))});var xD,bD,sW=Ll(()=>{xD=Math.PI/180,bD=180/Math.PI});function uke(e){if(e instanceof Hm)return new Hm(e.l,e.a,e.b,e.opacity);if(e instanceof Yy)return cke(e);e instanceof hd||(e=CE(e));var t=fW(e.r),r=fW(e.g),n=fW(e.b),i=lW((.2225045*t+.7168786*r+.0606169*n)/ake),a,o;return t===r&&r===n?a=o=i:(a=lW((.4360747*t+.3850649*r+.1430804*n)/nke),o=lW((.0139322*t+.0971045*r+.7141733*n)/oke)),new Hm(116*i-16,500*(a-i),200*(i-o),e.opacity)}function S5(e,t,r,n){return arguments.length===1?uke(e):new Hm(e,t,r,n==null?1:n)}function Hm(e,t,r,n){this.l=+e,this.a=+t,this.b=+r,this.opacity=+n}function lW(e){return e>Nkt?Math.pow(e,1/3):e/lke+ske}function uW(e){return e>A5?e*e*e:lke*(e-ske)}function cW(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function fW(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function Ukt(e){if(e instanceof Yy)return new Yy(e.h,e.c,e.l,e.opacity);if(e instanceof Hm||(e=uke(e)),e.a===0&&e.b===0)return new Yy(NaN,0<e.l&&e.l<100?0:NaN,e.l,e.opacity);var t=Math.atan2(e.b,e.a)*bD;return new Yy(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function PE(e,t,r,n){return arguments.length===1?Ukt(e):new Yy(e,t,r,n==null?1:n)}function Yy(e,t,r,n){this.h=+e,this.c=+t,this.l=+r,this.opacity=+n}function cke(e){if(isNaN(e.h))return new Hm(e.l,0,0,e.opacity);var t=e.h*xD;return new Hm(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}var wD,nke,ake,oke,ske,A5,lke,Nkt,fke=Ll(()=>{pD();_D();sW();wD=18,nke=.96422,ake=1,oke=.82521,ske=4/29,A5=6/29,lke=3*A5*A5,Nkt=A5*A5*A5;Xy(Hm,S5,G_(Vm,{brighter(e){return new Hm(this.l+wD*(e==null?1:e),this.a,this.b,this.opacity)},darker(e){return new Hm(this.l-wD*(e==null?1:e),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,r=isNaN(this.b)?e:e-this.b/200;return t=nke*uW(t),e=ake*uW(e),r=oke*uW(r),new hd(cW(3.1338561*t-1.6168667*e-.4906146*r),cW(-.9787684*t+1.9161415*e+.033454*r),cW(.0719453*t-.2289914*e+1.4052427*r),this.opacity)}}));Xy(Yy,PE,G_(Vm,{brighter(e){return new Yy(this.h,this.c,this.l+wD*(e==null?1:e),this.opacity)},darker(e){return new Yy(this.h,this.c,this.l-wD*(e==null?1:e),this.opacity)},rgb(){return cke(this).rgb()}}))});function Vkt(e){if(e instanceof C2)return new C2(e.h,e.s,e.l,e.opacity);e instanceof hd||(e=CE(e));var t=e.r/255,r=e.g/255,n=e.b/255,i=(vke*n+hke*t-dke*r)/(vke+hke-dke),a=n-i,o=(IE*(r-i)-dW*a)/TD,s=Math.sqrt(o*o+a*a)/(IE*i*(1-i)),l=s?Math.atan2(o,a)*bD-120:NaN;return new C2(l<0?l+360:l,s,i,e.opacity)}function M5(e,t,r,n){return arguments.length===1?Vkt(e):new C2(e,t,r,n==null?1:n)}function C2(e,t,r,n){this.h=+e,this.s=+t,this.l=+r,this.opacity=+n}var pke,hW,dW,TD,IE,hke,dke,vke,gke=Ll(()=>{pD();_D();sW();pke=-.14861,hW=1.78277,dW=-.29227,TD=-.90649,IE=1.97294,hke=IE*TD,dke=IE*hW,vke=hW*dW-TD*pke;Xy(C2,M5,G_(Vm,{brighter(e){return e=e==null?k2:Math.pow(k2,e),new C2(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?j_:Math.pow(j_,e),new C2(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*xD,t=+this.l,r=isNaN(this.s)?0:this.s*t*(1-t),n=Math.cos(e),i=Math.sin(e);return new hd(255*(t+r*(pke*n+hW*i)),255*(t+r*(dW*n+TD*i)),255*(t+r*(IE*n)),this.opacity)}}))});var L2=Ll(()=>{_D();fke();gke()});function vW(e,t,r,n,i){var a=e*e,o=a*e;return((1-3*e+3*a-o)*t+(4-6*a+3*o)*r+(1+3*e+3*a-3*o)*n+o*i)/6}function AD(e){var t=e.length-1;return function(r){var n=r<=0?r=0:r>=1?(r=1,t-1):Math.floor(r*t),i=e[n],a=e[n+1],o=n>0?e[n-1]:2*i-a,s=n<t-1?e[n+2]:2*a-i;return vW((r-n/t)*t,o,i,a,s)}}var SD=Ll(()=>{});function MD(e){var t=e.length;return function(r){var n=Math.floor(((r%=1)<0?++r:r)*t),i=e[(n+t-1)%t],a=e[n%t],o=e[(n+1)%t],s=e[(n+2)%t];return vW((r-n/t)*t,i,a,o,s)}}var pW=Ll(()=>{SD()});var E5,gW=Ll(()=>{E5=e=>()=>e});function mke(e,t){return function(r){return e+r*t}}function Hkt(e,t,r){return e=Math.pow(e,r),t=Math.pow(t,r)-e,r=1/r,function(n){return Math.pow(e+n*t,r)}}function Z_(e,t){var r=t-e;return r?mke(e,r>180||r<-180?r-360*Math.round(r/360):r):E5(isNaN(e)?t:e)}function yke(e){return(e=+e)==1?qf:function(t,r){return r-t?Hkt(t,r,e):E5(isNaN(t)?r:t)}}function qf(e,t){var r=t-e;return r?mke(e,r):E5(isNaN(e)?t:e)}var P2=Ll(()=>{gW()});function _ke(e){return function(t){var r=t.length,n=new Array(r),i=new Array(r),a=new Array(r),o,s;for(o=0;o<r;++o)s=T5(t[o]),n[o]=s.r||0,i[o]=s.g||0,a[o]=s.b||0;return n=e(n),i=e(i),a=e(a),s.opacity=1,function(l){return s.r=n(l),s.g=i(l),s.b=a(l),s+""}}}var RE,xke,bke,mW=Ll(()=>{L2();SD();pW();P2();RE=function e(t){var r=yke(t);function n(i,a){var o=r((i=T5(i)).r,(a=T5(a)).r),s=r(i.g,a.g),l=r(i.b,a.b),u=qf(i.opacity,a.opacity);return function(c){return i.r=o(c),i.g=s(c),i.b=l(c),i.opacity=u(c),i+""}}return n.gamma=e,n}(1);xke=_ke(AD),bke=_ke(MD)});function k5(e,t){t||(t=[]);var r=e?Math.min(t.length,e.length):0,n=t.slice(),i;return function(a){for(i=0;i<r;++i)n[i]=e[i]*(1-a)+t[i]*a;return n}}function ED(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}var kD=Ll(()=>{});function wke(e,t){return(ED(t)?k5:yW)(e,t)}function yW(e,t){var r=t?t.length:0,n=e?Math.min(r,e.length):0,i=new Array(n),a=new Array(r),o;for(o=0;o<n;++o)i[o]=X_(e[o],t[o]);for(;o<r;++o)a[o]=t[o];return function(s){for(o=0;o<n;++o)a[o]=i[o](s);return a}}var _W=Ll(()=>{DE();kD()});function CD(e,t){var r=new Date;return e=+e,t=+t,function(n){return r.setTime(e*(1-n)+t*n),r}}var xW=Ll(()=>{});function Fp(e,t){return e=+e,t=+t,function(r){return e*(1-r)+t*r}}var zE=Ll(()=>{});function LD(e,t){var r={},n={},i;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(i in t)i in e?r[i]=X_(e[i],t[i]):n[i]=t[i];return function(a){for(i in r)n[i]=r[i](a);return n}}var bW=Ll(()=>{DE()});function Gkt(e){return function(){return e}}function jkt(e){return function(t){return e(t)+""}}function PD(e,t){var r=TW.lastIndex=wW.lastIndex=0,n,i,a,o=-1,s=[],l=[];for(e=e+"",t=t+"";(n=TW.exec(e))&&(i=wW.exec(t));)(a=i.index)>r&&(a=t.slice(r,a),s[o]?s[o]+=a:s[++o]=a),(n=n[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,l.push({i:o,x:Fp(n,i)})),r=wW.lastIndex;return r<t.length&&(a=t.slice(r),s[o]?s[o]+=a:s[++o]=a),s.length<2?l[0]?jkt(l[0].x):Gkt(t):(t=l.length,function(u){for(var c=0,f;c<t;++c)s[(f=l[c]).i]=f.x(u);return s.join("")})}var TW,wW,AW=Ll(()=>{zE();TW=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,wW=new RegExp(TW.source,"g")});function X_(e,t){var r=typeof t,n;return t==null||r==="boolean"?E5(t):(r==="number"?Fp:r==="string"?(n=W_(t))?(t=n,RE):PD:t instanceof W_?RE:t instanceof Date?CD:ED(t)?k5:Array.isArray(t)?yW:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?LD:Fp)(e,t)}var DE=Ll(()=>{L2();mW();_W();xW();zE();bW();AW();gW();kD()});function Tke(e){var t=e.length;return function(r){return e[Math.max(0,Math.min(t-1,Math.floor(r*t)))]}}var Ake=Ll(()=>{});function Ske(e,t){var r=Z_(+e,+t);return function(n){var i=r(n);return i-360*Math.floor(i/360)}}var Mke=Ll(()=>{P2()});function Eke(e,t){return e=+e,t=+t,function(r){return Math.round(e*(1-r)+t*r)}}var kke=Ll(()=>{});function SW(e,t,r,n,i,a){var o,s,l;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(l=e*r+t*n)&&(r-=e*l,n-=t*l),(s=Math.sqrt(r*r+n*n))&&(r/=s,n/=s,l/=s),e*n<t*r&&(e=-e,t=-t,l=-l,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Cke,skewX:Math.atan(l)*Cke,scaleX:o,scaleY:s}}var Cke,ID,Lke=Ll(()=>{Cke=180/Math.PI,ID={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}});function Pke(e){let t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?ID:SW(t.a,t.b,t.c,t.d,t.e,t.f)}function Ike(e){return e==null?ID:(RD||(RD=document.createElementNS("http://www.w3.org/2000/svg","g")),RD.setAttribute("transform",e),(e=RD.transform.baseVal.consolidate())?(e=e.matrix,SW(e.a,e.b,e.c,e.d,e.e,e.f)):ID)}var RD,Rke=Ll(()=>{Lke()});function Dke(e,t,r,n){function i(u){return u.length?u.pop()+" ":""}function a(u,c,f,h,d,v){if(u!==f||c!==h){var x=d.push("translate(",null,t,null,r);v.push({i:x-4,x:Fp(u,f)},{i:x-2,x:Fp(c,h)})}else(f||h)&&d.push("translate("+f+t+h+r)}function o(u,c,f,h){u!==c?(u-c>180?c+=360:c-u>180&&(u+=360),h.push({i:f.push(i(f)+"rotate(",null,n)-2,x:Fp(u,c)})):c&&f.push(i(f)+"rotate("+c+n)}function s(u,c,f,h){u!==c?h.push({i:f.push(i(f)+"skewX(",null,n)-2,x:Fp(u,c)}):c&&f.push(i(f)+"skewX("+c+n)}function l(u,c,f,h,d,v){if(u!==f||c!==h){var x=d.push(i(d)+"scale(",null,",",null,")");v.push({i:x-4,x:Fp(u,f)},{i:x-2,x:Fp(c,h)})}else(f!==1||h!==1)&&d.push(i(d)+"scale("+f+","+h+")")}return function(u,c){var f=[],h=[];return u=e(u),c=e(c),a(u.translateX,u.translateY,c.translateX,c.translateY,f,h),o(u.rotate,c.rotate,f,h),s(u.skewX,c.skewX,f,h),l(u.scaleX,u.scaleY,c.scaleX,c.scaleY,f,h),u=c=null,function(d){for(var v=-1,x=h.length,b;++v<x;)f[(b=h[v]).i]=b.x(d);return f.join("")}}}var zke,Fke,qke=Ll(()=>{zE();Rke();zke=Dke(Pke,"px, ","px)","deg)"),Fke=Dke(Ike,", ",")",")")});function Oke(e){return((e=Math.exp(e))+1/e)/2}function Zkt(e){return((e=Math.exp(e))-1/e)/2}function Xkt(e){return((e=Math.exp(2*e))-1)/(e+1)}var Wkt,Bke,Nke=Ll(()=>{Wkt=1e-12;Bke=function e(t,r,n){function i(a,o){var s=a[0],l=a[1],u=a[2],c=o[0],f=o[1],h=o[2],d=c-s,v=f-l,x=d*d+v*v,b,p;if(x<Wkt)p=Math.log(h/u)/t,b=function(C){return[s+C*d,l+C*v,u*Math.exp(t*C*p)]};else{var E=Math.sqrt(x),k=(h*h-u*u+n*x)/(2*u*r*E),A=(h*h-u*u-n*x)/(2*h*r*E),L=Math.log(Math.sqrt(k*k+1)-k),_=Math.log(Math.sqrt(A*A+1)-A);p=(_-L)/t,b=function(C){var M=C*p,g=Oke(L),P=u/(r*E)*(g*Xkt(t*M+L)-Zkt(L));return[s+P*d,l+P*v,u*g/Oke(t*M+L)]}}return b.duration=p*1e3*t/Math.SQRT2,b}return i.rho=function(a){var o=Math.max(.001,+a),s=o*o,l=s*s;return e(o,s,l)},i}(Math.SQRT2,2,4)});function Uke(e){return function(t,r){var n=e((t=LE(t)).h,(r=LE(r)).h),i=qf(t.s,r.s),a=qf(t.l,r.l),o=qf(t.opacity,r.opacity);return function(s){return t.h=n(s),t.s=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var Vke,Hke,Gke=Ll(()=>{L2();P2();Vke=Uke(Z_),Hke=Uke(qf)});function MW(e,t){var r=qf((e=S5(e)).l,(t=S5(t)).l),n=qf(e.a,t.a),i=qf(e.b,t.b),a=qf(e.opacity,t.opacity);return function(o){return e.l=r(o),e.a=n(o),e.b=i(o),e.opacity=a(o),e+""}}var jke=Ll(()=>{L2();P2()});function Wke(e){return function(t,r){var n=e((t=PE(t)).h,(r=PE(r)).h),i=qf(t.c,r.c),a=qf(t.l,r.l),o=qf(t.opacity,r.opacity);return function(s){return t.h=n(s),t.c=i(s),t.l=a(s),t.opacity=o(s),t+""}}}var Zke,Xke,Yke=Ll(()=>{L2();P2();Zke=Wke(Z_),Xke=Wke(qf)});function Kke(e){return function t(r){r=+r;function n(i,a){var o=e((i=M5(i)).h,(a=M5(a)).h),s=qf(i.s,a.s),l=qf(i.l,a.l),u=qf(i.opacity,a.opacity);return function(c){return i.h=o(c),i.s=s(c),i.l=l(Math.pow(c,r)),i.opacity=u(c),i+""}}return n.gamma=t,n}(1)}var Jke,$ke,Qke=Ll(()=>{L2();P2();Jke=Kke(Z_),$ke=Kke(qf)});function EW(e,t){t===void 0&&(t=e,e=X_);for(var r=0,n=t.length-1,i=t[0],a=new Array(n<0?0:n);r<n;)a[r]=e(i,i=t[++r]);return function(o){var s=Math.max(0,Math.min(n-1,Math.floor(o*=n)));return a[s](o-s)}}var eCe=Ll(()=>{DE()});function tCe(e,t){for(var r=new Array(t),n=0;n<t;++n)r[n]=e(n/(t-1));return r}var rCe=Ll(()=>{});var I2={};QQ(I2,{interpolate:()=>X_,interpolateArray:()=>wke,interpolateBasis:()=>AD,interpolateBasisClosed:()=>MD,interpolateCubehelix:()=>Jke,interpolateCubehelixLong:()=>$ke,interpolateDate:()=>CD,interpolateDiscrete:()=>Tke,interpolateHcl:()=>Zke,interpolateHclLong:()=>Xke,interpolateHsl:()=>Vke,interpolateHslLong:()=>Hke,interpolateHue:()=>Ske,interpolateLab:()=>MW,interpolateNumber:()=>Fp,interpolateNumberArray:()=>k5,interpolateObject:()=>LD,interpolateRgb:()=>RE,interpolateRgbBasis:()=>xke,interpolateRgbBasisClosed:()=>bke,interpolateRound:()=>Eke,interpolateString:()=>PD,interpolateTransformCss:()=>zke,interpolateTransformSvg:()=>Fke,interpolateZoom:()=>Bke,piecewise:()=>EW,quantize:()=>tCe});var R2=Ll(()=>{DE();_W();SD();pW();xW();Ake();Mke();zE();kD();bW();kke();AW();qke();Nke();mW();Gke();jke();Yke();Qke();eCe();rCe()});var DD=ye((cdr,iCe)=>{"use strict";var Ykt=ao(),Kkt=va();iCe.exports=function(t,r,n,i,a){var o=r.data.data,s=o.i,l=a||o.color;if(s>=0){r.i=o.i;var u=n.marker;u.pattern?(!u.colors||!u.pattern.shape)&&(u.color=l,r.color=l):(u.color=l,r.color=l),Ykt.pointStyle(t,n,i,r)}else Kkt.fill(t,l)}});var kW=ye((fdr,lCe)=>{"use strict";var nCe=xa(),aCe=va(),oCe=Mr(),Jkt=_v().resizeText,$kt=DD();function Qkt(e){var t=e._fullLayout._sunburstlayer.selectAll(".trace");Jkt(e,t,"sunburst"),t.each(function(r){var n=nCe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){nCe.select(this).call(sCe,o,a,e)})})}function sCe(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=oCe.castOption(r,o,"marker.line.color")||aCe.defaultLine,l=oCe.castOption(r,o,"marker.line.width")||0;e.call($kt,t,r,n).style("stroke-width",l).call(aCe.stroke,s).style("opacity",a?r.leaf.opacity:null)}lCe.exports={style:Qkt,styleOne:sCe}});var Ky=ye(bs=>{"use strict";var D2=Mr(),eCt=va(),tCt=Tg(),uCe=u_();bs.findEntryWithLevel=function(e,t){var r;return t&&e.eachAfter(function(n){if(bs.getPtId(n)===t)return r=n.copy()}),r||e};bs.findEntryWithChild=function(e,t){var r;return e.eachAfter(function(n){for(var i=n.children||[],a=0;a<i.length;a++){var o=i[a];if(bs.getPtId(o)===t)return r=n.copy()}}),r||e};bs.isEntry=function(e){return!e.parent};bs.isLeaf=function(e){return!e.children};bs.getPtId=function(e){return e.data.data.id};bs.getPtLabel=function(e){return e.data.data.label};bs.getValue=function(e){return e.value};bs.isHierarchyRoot=function(e){return cCe(e)===""};bs.setSliceCursor=function(e,t,r){var n=r.isTransitioning;if(!n){var i=e.datum();n=r.hideOnRoot&&bs.isHierarchyRoot(i)||r.hideOnLeaves&&bs.isLeaf(i)}tCt(e,n?null:"pointer")};function rCt(e,t,r){return{color:bs.getOutsideTextFontKey("color",e,t,r),family:bs.getOutsideTextFontKey("family",e,t,r),size:bs.getOutsideTextFontKey("size",e,t,r),weight:bs.getOutsideTextFontKey("weight",e,t,r),style:bs.getOutsideTextFontKey("style",e,t,r),variant:bs.getOutsideTextFontKey("variant",e,t,r),textcase:bs.getOutsideTextFontKey("textcase",e,t,r),lineposition:bs.getOutsideTextFontKey("lineposition",e,t,r),shadow:bs.getOutsideTextFontKey("shadow",e,t,r)}}function iCt(e,t,r,n){var i=(n||{}).onPathbar,a=t.data.data,o=a.i,s=D2.castOption(e,o,(i?"pathbar.textfont":"insidetextfont")+".color");return!s&&e._input.textfont&&(s=D2.castOption(e._input,o,"textfont.color")),{color:s||eCt.contrast(a.color),family:bs.getInsideTextFontKey("family",e,t,r,n),size:bs.getInsideTextFontKey("size",e,t,r,n),weight:bs.getInsideTextFontKey("weight",e,t,r,n),style:bs.getInsideTextFontKey("style",e,t,r,n),variant:bs.getInsideTextFontKey("variant",e,t,r,n),textcase:bs.getInsideTextFontKey("textcase",e,t,r,n),lineposition:bs.getInsideTextFontKey("lineposition",e,t,r,n),shadow:bs.getInsideTextFontKey("shadow",e,t,r,n)}}bs.getInsideTextFontKey=function(e,t,r,n,i){var a=(i||{}).onPathbar,o=a?"pathbar.textfont":"insidetextfont",s=r.data.data.i;return D2.castOption(t,s,o+"."+e)||D2.castOption(t,s,"textfont."+e)||n.size};bs.getOutsideTextFontKey=function(e,t,r,n){var i=r.data.data.i;return D2.castOption(t,i,"outsidetextfont."+e)||D2.castOption(t,i,"textfont."+e)||n.size};bs.isOutsideText=function(e,t){return!e._hasColorscale&&bs.isHierarchyRoot(t)};bs.determineTextFont=function(e,t,r,n){return bs.isOutsideText(e,t)?rCt(e,t,r):iCt(e,t,r,n)};bs.hasTransition=function(e){return!!(e&&e.duration>0)};bs.getMaxDepth=function(e){return e.maxdepth>=0?e.maxdepth:1/0};bs.isHeader=function(e,t){return!(bs.isLeaf(e)||e.depth===t._maxDepth-1)};function cCe(e){return e.data.data.pid}bs.getParent=function(e,t){return bs.findEntryWithLevel(e,cCe(t))};bs.listPath=function(e,t){var r=e.parent;if(!r)return[];var n=t?[r.data[t]]:[r];return bs.listPath(r,t).concat(n)};bs.getPath=function(e){return bs.listPath(e,"label").join("/")+"/"};bs.formatValue=uCe.formatPieValue;bs.formatPercent=function(e,t){var r=D2.formatPercent(e,0);return r==="0%"&&(r=uCe.formatPiePercent(e,t)),r}});var OE=ye((ddr,dCe)=>{"use strict";var C5=xa(),fCe=ba(),nCt=rp().appendArrayPointValue,FE=Nc(),hCe=Mr(),aCt=g3(),Wh=Ky(),oCt=u_(),sCt=oCt.formatPieValue;dCe.exports=function(t,r,n,i,a){var o=i[0],s=o.trace,l=o.hierarchy,u=s.type==="sunburst",c=s.type==="treemap"||s.type==="icicle";"_hasHoverLabel"in s||(s._hasHoverLabel=!1),"_hasHoverEvent"in s||(s._hasHoverEvent=!1);var f=function(v){var x=n._fullLayout;if(!(n._dragging||x.hovermode===!1)){var b=n._fullData[s.index],p=v.data.data,E=p.i,k=Wh.isHierarchyRoot(v),A=Wh.getParent(l,v),L=Wh.getValue(v),_=function(Me){return hCe.castOption(b,E,Me)},C=_("hovertemplate"),M=FE.castHoverinfo(b,x,E),g=x.separators,P;if(C||M&&M!=="none"&&M!=="skip"){var T,F;u&&(T=o.cx+v.pxmid[0]*(1-v.rInscribed),F=o.cy+v.pxmid[1]*(1-v.rInscribed)),c&&(T=v._hoverX,F=v._hoverY);var q={},V=[],H=[],X=function(Me){return V.indexOf(Me)!==-1};M&&(V=M==="all"?b._module.attributes.hoverinfo.flags:M.split("+")),q.label=p.label,X("label")&&q.label&&H.push(q.label),p.hasOwnProperty("v")&&(q.value=p.v,q.valueLabel=sCt(q.value,g),X("value")&&H.push(q.valueLabel)),q.currentPath=v.currentPath=Wh.getPath(v.data),X("current path")&&!k&&H.push(q.currentPath);var G,N=[],W=function(){N.indexOf(G)===-1&&(H.push(G),N.push(G))};q.percentParent=v.percentParent=L/Wh.getValue(A),q.parent=v.parentString=Wh.getPtLabel(A),X("percent parent")&&(G=Wh.formatPercent(q.percentParent,g)+" of "+q.parent,W()),q.percentEntry=v.percentEntry=L/Wh.getValue(r),q.entry=v.entry=Wh.getPtLabel(r),X("percent entry")&&!k&&!v.onPathbar&&(G=Wh.formatPercent(q.percentEntry,g)+" of "+q.entry,W()),q.percentRoot=v.percentRoot=L/Wh.getValue(l),q.root=v.root=Wh.getPtLabel(l),X("percent root")&&!k&&(G=Wh.formatPercent(q.percentRoot,g)+" of "+q.root,W()),q.text=_("hovertext")||_("text"),X("text")&&(G=q.text,hCe.isValidTextValue(G)&&H.push(G)),P=[qE(v,b,a.eventDataKeys)];var re={trace:b,y:F,_x0:v._x0,_x1:v._x1,_y0:v._y0,_y1:v._y1,text:H.join("<br>"),name:C||X("name")?b.name:void 0,color:_("hoverlabel.bgcolor")||p.color,borderColor:_("hoverlabel.bordercolor"),fontFamily:_("hoverlabel.font.family"),fontSize:_("hoverlabel.font.size"),fontColor:_("hoverlabel.font.color"),fontWeight:_("hoverlabel.font.weight"),fontStyle:_("hoverlabel.font.style"),fontVariant:_("hoverlabel.font.variant"),nameLength:_("hoverlabel.namelength"),textAlign:_("hoverlabel.align"),hovertemplate:C,hovertemplateLabels:q,eventData:P};u&&(re.x0=T-v.rInscribed*v.rpx1,re.x1=T+v.rInscribed*v.rpx1,re.idealAlign=v.pxmid[0]<0?"left":"right"),c&&(re.x=T,re.idealAlign=T<0?"left":"right");var ae=[];FE.loneHover(re,{container:x._hoverlayer.node(),outerContainer:x._paper.node(),gd:n,inOut_bbox:ae}),P[0].bbox=ae[0],s._hasHoverLabel=!0}if(c){var _e=t.select("path.surface");a.styleOne(_e,v,b,n,{hovered:!0})}s._hasHoverEvent=!0,n.emit("plotly_hover",{points:P||[qE(v,b,a.eventDataKeys)],event:C5.event})}},h=function(v){var x=n._fullLayout,b=n._fullData[s.index],p=C5.select(this).datum();if(s._hasHoverEvent&&(v.originalEvent=C5.event,n.emit("plotly_unhover",{points:[qE(p,b,a.eventDataKeys)],event:C5.event}),s._hasHoverEvent=!1),s._hasHoverLabel&&(FE.loneUnhover(x._hoverlayer.node()),s._hasHoverLabel=!1),c){var E=t.select("path.surface");a.styleOne(E,p,b,n,{hovered:!1})}},d=function(v){var x=n._fullLayout,b=n._fullData[s.index],p=u&&(Wh.isHierarchyRoot(v)||Wh.isLeaf(v)),E=Wh.getPtId(v),k=Wh.isEntry(v)?Wh.findEntryWithChild(l,E):Wh.findEntryWithLevel(l,E),A=Wh.getPtId(k),L={points:[qE(v,b,a.eventDataKeys)],event:C5.event};p||(L.nextLevel=A);var _=aCt.triggerHandler(n,"plotly_"+s.type+"click",L);if(_!==!1&&x.hovermode&&(n._hoverdata=[qE(v,b,a.eventDataKeys)],FE.click(n,C5.event)),!p&&_!==!1&&!n._dragging&&!n._transitioning){fCe.call("_storeDirectGUIEdit",b,x._tracePreGUI[b.uid],{level:b.level});var C={data:[{level:A}],traces:[s.index]},M={frame:{redraw:!1,duration:a.transitionTime},transition:{duration:a.transitionTime,easing:a.transitionEasing},mode:"immediate",fromcurrent:!0};FE.loneUnhover(x._hoverlayer.node()),fCe.call("animate",n,C,M)}};t.on("mouseover",f),t.on("mouseout",h),t.on("click",d)};function qE(e,t,r){for(var n=e.data.data,i={curveNumber:t.index,pointNumber:n.i,data:t._input,fullData:t},a=0;a<r.length;a++){var o=r[a];o in e&&(i[o]=e[o])}return"parentString"in e&&!Wh.isHierarchyRoot(e)&&(i.parent=e.parentString),nCt(i,t,n.i),i}});var FD=ye(zD=>{"use strict";var BE=xa(),lCt=SE(),Xg=(R2(),B1(I2)).interpolate,vCe=ao(),bv=Mr(),uCt=Pl(),yCe=_v(),pCe=yCe.recordMinTextSize,cCt=yCe.clearMinTextSize,_Ce=dD(),fCt=u_().getRotationAngle,hCt=_Ce.computeTransform,dCt=_Ce.transformInsideText,vCt=kW().styleOne,pCt=N0().resizeText,gCt=OE(),CW=nW(),sl=Ky();zD.plot=function(e,t,r,n){var i=e._fullLayout,a=i._sunburstlayer,o,s,l=!r,u=!i.uniformtext.mode&&sl.hasTransition(r);if(cCt("sunburst",i),o=a.selectAll("g.trace.sunburst").data(t,function(f){return f[0].trace.uid}),o.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),o.order(),u){n&&(s=n());var c=BE.transition().duration(r.duration).ease(r.easing).each("end",function(){s&&s()}).each("interrupt",function(){s&&s()});c.each(function(){a.selectAll("g.trace").each(function(f){gCe(e,f,this,r)})})}else o.each(function(f){gCe(e,f,this,r)}),i.uniformtext.mode&&pCt(e,i._sunburstlayer.selectAll(".trace"),"sunburst");l&&o.exit().remove()};function gCe(e,t,r,n){var i=e._context.staticPlot,a=e._fullLayout,o=!a.uniformtext.mode&&sl.hasTransition(n),s=BE.select(r),l=s.selectAll("g.slice"),u=t[0],c=u.trace,f=u.hierarchy,h=sl.findEntryWithLevel(f,c.level),d=sl.getMaxDepth(c),v=a._size,x=c.domain,b=v.w*(x.x[1]-x.x[0]),p=v.h*(x.y[1]-x.y[0]),E=.5*Math.min(b,p),k=u.cx=v.l+v.w*(x.x[1]+x.x[0])/2,A=u.cy=v.t+v.h*(1-x.y[0])-p/2;if(!h)return l.remove();var L=null,_={};o&&l.each(function(ge){_[sl.getPtId(ge)]={rpx0:ge.rpx0,rpx1:ge.rpx1,x0:ge.x0,x1:ge.x1,transform:ge.transform},!L&&sl.isEntry(ge)&&(L=ge)});var C=mCt(h).descendants(),M=h.height+1,g=0,P=d;u.hasMultipleRoots&&sl.isHierarchyRoot(h)&&(C=C.slice(1),M-=1,g=1,P+=1),C=C.filter(function(ge){return ge.y1<=P});var T=fCt(c.rotation);T&&C.forEach(function(ge){ge.x0+=T,ge.x1+=T});var F=Math.min(M,d),q=function(ge){return(ge-g)/F*E},V=function(ge,ie){return[ge*Math.cos(ie),-ge*Math.sin(ie)]},H=function(ge){return bv.pathAnnulus(ge.rpx0,ge.rpx1,ge.x0,ge.x1,k,A)},X=function(ge){return k+mCe(ge)[0]*(ge.transform.rCenter||0)+(ge.transform.x||0)},G=function(ge){return A+mCe(ge)[1]*(ge.transform.rCenter||0)+(ge.transform.y||0)};l=l.data(C,sl.getPtId),l.enter().append("g").classed("slice",!0),o?l.exit().transition().each(function(){var ge=BE.select(this),ie=ge.select("path.surface");ie.transition().attrTween("d",function(Ee){var Ae=ae(Ee);return function(ze){return H(Ae(ze))}});var Te=ge.select("g.slicetext");Te.attr("opacity",0)}).remove():l.exit().remove(),l.order();var N=null;if(o&&L){var W=sl.getPtId(L);l.each(function(ge){N===null&&sl.getPtId(ge)===W&&(N=ge.x1)})}var re=l;o&&(re=re.transition().each("end",function(){var ge=BE.select(this);sl.setSliceCursor(ge,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),re.each(function(ge){var ie=BE.select(this),Te=bv.ensureSingle(ie,"path","surface",function(Re){Re.style("pointer-events",i?"none":"all")});ge.rpx0=q(ge.y0),ge.rpx1=q(ge.y1),ge.xmid=(ge.x0+ge.x1)/2,ge.pxmid=V(ge.rpx1,ge.xmid),ge.midangle=-(ge.xmid-Math.PI/2),ge.startangle=-(ge.x0-Math.PI/2),ge.stopangle=-(ge.x1-Math.PI/2),ge.halfangle=.5*Math.min(bv.angleDelta(ge.x0,ge.x1)||Math.PI,Math.PI),ge.ring=1-ge.rpx0/ge.rpx1,ge.rInscribed=yCt(ge,c),o?Te.transition().attrTween("d",function(Re){var ce=_e(Re);return function(Ge){return H(ce(Ge))}}):Te.attr("d",H),ie.call(gCt,h,e,t,{eventDataKeys:CW.eventDataKeys,transitionTime:CW.CLICK_TRANSITION_TIME,transitionEasing:CW.CLICK_TRANSITION_EASING}).call(sl.setSliceCursor,e,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:e._transitioning}),Te.call(vCt,ge,c,e);var Ee=bv.ensureSingle(ie,"g","slicetext"),Ae=bv.ensureSingle(Ee,"text","",function(Re){Re.attr("data-notex",1)}),ze=bv.ensureUniformFontSize(e,sl.determineTextFont(c,ge,a.font));Ae.text(zD.formatSliceLabel(ge,h,c,t,a)).classed("slicetext",!0).attr("text-anchor","middle").call(vCe.font,ze).call(uCt.convertToTspans,e);var Ce=vCe.bBox(Ae.node());ge.transform=dCt(Ce,ge,u),ge.transform.targetX=X(ge),ge.transform.targetY=G(ge);var me=function(Re,ce){var Ge=Re.transform;return hCt(Ge,ce),Ge.fontSize=ze.size,pCe(c.type,Ge,a),bv.getTextTransform(Ge)};o?Ae.transition().attrTween("transform",function(Re){var ce=Me(Re);return function(Ge){return me(ce(Ge),Ce)}}):Ae.attr("transform",me(ge,Ce))});function ae(ge){var ie=sl.getPtId(ge),Te=_[ie],Ee=_[sl.getPtId(h)],Ae;if(Ee){var ze=(ge.x1>Ee.x1?2*Math.PI:0)+T;Ae=ge.rpx1<Ee.rpx1?{x0:ge.x0,x1:ge.x1,rpx0:0,rpx1:0}:{x0:ze,x1:ze,rpx0:ge.rpx0,rpx1:ge.rpx1}}else{var Ce,me=sl.getPtId(ge.parent);l.each(function(ct){if(sl.getPtId(ct)===me)return Ce=ct});var Re=Ce.children,ce;Re.forEach(function(ct,qt){if(sl.getPtId(ct)===ie)return ce=qt});var Ge=Re.length,nt=Xg(Ce.x0,Ce.x1);Ae={rpx0:E,rpx1:E,x0:nt(ce/Ge),x1:nt((ce+1)/Ge)}}return Xg(Te,Ae)}function _e(ge){var ie=_[sl.getPtId(ge)],Te,Ee={x0:ge.x0,x1:ge.x1,rpx0:ge.rpx0,rpx1:ge.rpx1};if(ie)Te=ie;else if(L)if(ge.parent)if(N){var Ae=(ge.x1>N?2*Math.PI:0)+T;Te={x0:Ae,x1:Ae}}else Te={rpx0:E,rpx1:E},bv.extendFlat(Te,ke(ge));else Te={rpx0:0,rpx1:0};else Te={x0:T,x1:T};return Xg(Te,Ee)}function Me(ge){var ie=_[sl.getPtId(ge)],Te,Ee=ge.transform;if(ie)Te=ie;else if(Te={rpx1:ge.rpx1,transform:{textPosAngle:Ee.textPosAngle,scale:0,rotate:Ee.rotate,rCenter:Ee.rCenter,x:Ee.x,y:Ee.y}},L)if(ge.parent)if(N){var Ae=ge.x1>N?2*Math.PI:0;Te.x0=Te.x1=Ae}else bv.extendFlat(Te,ke(ge));else Te.x0=Te.x1=T;else Te.x0=Te.x1=T;var ze=Xg(Te.transform.textPosAngle,ge.transform.textPosAngle),Ce=Xg(Te.rpx1,ge.rpx1),me=Xg(Te.x0,ge.x0),Re=Xg(Te.x1,ge.x1),ce=Xg(Te.transform.scale,Ee.scale),Ge=Xg(Te.transform.rotate,Ee.rotate),nt=Ee.rCenter===0?3:Te.transform.rCenter===0?1/3:1,ct=Xg(Te.transform.rCenter,Ee.rCenter),qt=function(rt){return ct(Math.pow(rt,nt))};return function(rt){var ot=Ce(rt),Rt=me(rt),kt=Re(rt),Ct=qt(rt),Yt=V(ot,(Rt+kt)/2),xr=ze(rt),er={pxmid:Yt,rpx1:ot,transform:{textPosAngle:xr,rCenter:Ct,x:Ee.x,y:Ee.y}};return pCe(c.type,Ee,a),{transform:{targetX:X(er),targetY:G(er),scale:ce(rt),rotate:Ge(rt),rCenter:Ct}}}}function ke(ge){var ie=ge.parent,Te=_[sl.getPtId(ie)],Ee={};if(Te){var Ae=ie.children,ze=Ae.indexOf(ge),Ce=Ae.length,me=Xg(Te.x0,Te.x1);Ee.x0=me(ze/Ce),Ee.x1=me(ze/Ce)}else Ee.x0=Ee.x1=0;return Ee}}function mCt(e){return lCt.partition().size([2*Math.PI,e.height+1])(e)}zD.formatSliceLabel=function(e,t,r,n,i){var a=r.texttemplate,o=r.textinfo;if(!a&&(!o||o==="none"))return"";var s=i.separators,l=n[0],u=e.data.data,c=l.hierarchy,f=sl.isHierarchyRoot(e),h=sl.getParent(c,e),d=sl.getValue(e);if(!a){var v=o.split("+"),x=function(g){return v.indexOf(g)!==-1},b=[],p;if(x("label")&&u.label&&b.push(u.label),u.hasOwnProperty("v")&&x("value")&&b.push(sl.formatValue(u.v,s)),!f){x("current path")&&b.push(sl.getPath(e.data));var E=0;x("percent parent")&&E++,x("percent entry")&&E++,x("percent root")&&E++;var k=E>1;if(E){var A,L=function(g){p=sl.formatPercent(A,s),k&&(p+=" of "+g),b.push(p)};x("percent parent")&&!f&&(A=d/sl.getValue(h),L("parent")),x("percent entry")&&(A=d/sl.getValue(t),L("entry")),x("percent root")&&(A=d/sl.getValue(c),L("root"))}}return x("text")&&(p=bv.castOption(r,u.i,"text"),bv.isValidTextValue(p)&&b.push(p)),b.join("<br>")}var _=bv.castOption(r,u.i,"texttemplate");if(!_)return"";var C={};u.label&&(C.label=u.label),u.hasOwnProperty("v")&&(C.value=u.v,C.valueLabel=sl.formatValue(u.v,s)),C.currentPath=sl.getPath(e.data),f||(C.percentParent=d/sl.getValue(h),C.percentParentLabel=sl.formatPercent(C.percentParent,s),C.parent=sl.getPtLabel(h)),C.percentEntry=d/sl.getValue(t),C.percentEntryLabel=sl.formatPercent(C.percentEntry,s),C.entry=sl.getPtLabel(t),C.percentRoot=d/sl.getValue(c),C.percentRootLabel=sl.formatPercent(C.percentRoot,s),C.root=sl.getPtLabel(c),u.hasOwnProperty("color")&&(C.color=u.color);var M=bv.castOption(r,u.i,"text");return(bv.isValidTextValue(M)||M==="")&&(C.text=M),C.customdata=bv.castOption(r,u.i,"customdata"),bv.texttemplateString(_,C,i._d3locale,C,r._meta||{})};function yCt(e){return e.rpx0===0&&bv.isFullCircle([e.x0,e.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(e.halfangle)),e.ring/2))}function mCe(e){return _Ct(e.rpx1,e.transform.textPosAngle)}function _Ct(e,t){return[e*Math.sin(t),-e*Math.cos(t)]}});var bCe=ye((pdr,xCe)=>{"use strict";xCe.exports={moduleType:"trace",name:"sunburst",basePlotModule:zEe(),categories:[],animatable:!0,attributes:AE(),layoutAttributes:aW(),supplyDefaults:HEe(),supplyLayoutDefaults:jEe(),calc:EE().calc,crossTraceCalc:EE().crossTraceCalc,plot:FD().plot,style:kW().style,colorbar:Kd(),meta:{}}});var TCe=ye((gdr,wCe)=>{"use strict";wCe.exports=bCe()});var SCe=ye(L5=>{"use strict";var ACe=Xu();L5.name="treemap";L5.plot=function(e,t,r,n){ACe.plotBasePlot(L5.name,e,t,r,n)};L5.clean=function(e,t,r,n){ACe.cleanBasePlot(L5.name,e,t,r,n)}});var z2=ye((ydr,MCe)=>{"use strict";MCe.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}});var qD=ye((_dr,kCe)=>{"use strict";var xCt=Wo().hovertemplateAttrs,bCt=Wo().texttemplateAttrs,wCt=Jl(),TCt=Ju().attributes,F2=A2(),Q0=AE(),ECe=z2(),LW=no().extendFlat,ACt=Ed().pattern;kCe.exports={labels:Q0.labels,parents:Q0.parents,values:Q0.values,branchvalues:Q0.branchvalues,count:Q0.count,level:Q0.level,maxdepth:Q0.maxdepth,tiling:{packing:{valType:"enumerated",values:["squarify","binary","dice","slice","slice-dice","dice-slice"],dflt:"squarify",editType:"plot"},squarifyratio:{valType:"number",min:1,dflt:1,editType:"plot"},flip:{valType:"flaglist",flags:["x","y"],dflt:"",editType:"plot"},pad:{valType:"number",min:0,dflt:3,editType:"plot"},editType:"calc"},marker:LW({pad:{t:{valType:"number",min:0,editType:"plot"},l:{valType:"number",min:0,editType:"plot"},r:{valType:"number",min:0,editType:"plot"},b:{valType:"number",min:0,editType:"plot"},editType:"calc"},colors:Q0.marker.colors,pattern:ACt,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:Q0.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},wCt("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:LW({},F2.textfont,{}),editType:"calc"},text:F2.text,textinfo:Q0.textinfo,texttemplate:bCt({editType:"plot"},{keys:ECe.eventDataKeys.concat(["label","value"])}),hovertext:F2.hovertext,hoverinfo:Q0.hoverinfo,hovertemplate:xCt({},{keys:ECe.eventDataKeys}),textfont:F2.textfont,insidetextfont:F2.insidetextfont,outsidetextfont:LW({},F2.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:F2.sort,root:Q0.root,domain:TCt({name:"treemap",trace:!0,editType:"calc"})}});var PW=ye((xdr,CCe)=>{"use strict";CCe.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var RCe=ye((bdr,ICe)=>{"use strict";var LCe=Mr(),SCt=qD(),MCt=va(),ECt=Ju().defaults,kCt=r0().handleText,CCt=Qb().TEXTPAD,LCt=S2().handleMarkerDefaults,PCe=Mu(),PCt=PCe.hasColorscale,ICt=PCe.handleDefaults;ICe.exports=function(t,r,n,i){function a(b,p){return LCe.coerce(t,r,SCt,b,p)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth");var u=a("tiling.packing");u==="squarify"&&a("tiling.squarifyratio"),a("tiling.flip"),a("tiling.pad");var c=a("text");a("texttemplate"),r.texttemplate||a("textinfo",LCe.isArrayOrTypedArray(c)?"text+label":"label"),a("hovertext"),a("hovertemplate");var f=a("pathbar.visible"),h="auto";kCt(t,r,i,a,h,{hasPathbar:f,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition");var d=r.textposition.indexOf("bottom")!==-1;LCt(t,r,i,a);var v=r._hasColorscale=PCt(t,"marker","colors")||(t.marker||{}).coloraxis;v?ICt(t,r,i,a,{prefix:"marker.",cLetter:"c"}):a("marker.depthfade",!(r.marker.colors||[]).length);var x=r.textfont.size*2;a("marker.pad.t",d?x/4:x),a("marker.pad.l",x/4),a("marker.pad.r",x/4),a("marker.pad.b",d?x:x/4),a("marker.cornerradius"),r._hovered={marker:{line:{width:2,color:MCt.contrast(i.paper_bgcolor)}}},f&&(a("pathbar.thickness",r.pathbar.textfont.size+2*CCt),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),ECt(r,i,a),r._length=null}});var zCe=ye((wdr,DCe)=>{"use strict";var RCt=Mr(),DCt=PW();DCe.exports=function(t,r){function n(i,a){return RCt.coerce(t,r,DCt,i,a)}n("treemapcolorway",r.colorway),n("extendtreemapcolors")}});var RW=ye(IW=>{"use strict";var FCe=EE();IW.calc=function(e,t){return FCe.calc(e,t)};IW.crossTraceCalc=function(e){return FCe._runCrossTraceCalc("treemap",e)}});var DW=ye((Adr,qCe)=>{"use strict";qCe.exports=function e(t,r,n){var i;n.swapXY&&(i=t.x0,t.x0=t.y0,t.y0=i,i=t.x1,t.x1=t.y1,t.y1=i),n.flipX&&(i=t.x0,t.x0=r[0]-t.x1,t.x1=r[0]-i),n.flipY&&(i=t.y0,t.y0=r[1]-t.y1,t.y1=r[1]-i);var a=t.children;if(a)for(var o=0;o<a.length;o++)e(a[o],r,n)}});var zW=ye((Sdr,OCe)=>{"use strict";var P5=SE(),zCt=DW();OCe.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.packing==="dice-slice",s=n.pad[a?"bottom":"top"],l=n.pad[i?"right":"left"],u=n.pad[i?"left":"right"],c=n.pad[a?"top":"bottom"],f;o&&(f=l,l=s,s=f,f=u,u=c,c=f);var h=P5.treemap().tile(FCt(n.packing,n.squarifyratio)).paddingInner(n.pad.inner).paddingLeft(l).paddingRight(u).paddingTop(s).paddingBottom(c).size(o?[r[1],r[0]]:r)(t);return(o||i||a)&&zCt(h,r,{swapXY:o,flipX:i,flipY:a}),h};function FCt(e,t){switch(e){case"squarify":return P5.treemapSquarify.ratio(t);case"binary":return P5.treemapBinary;case"dice":return P5.treemapDice;case"slice":return P5.treemapSlice;default:return P5.treemapSliceDice}}});var OD=ye((Mdr,VCe)=>{"use strict";var BCe=xa(),I5=va(),NCe=Mr(),FW=Ky(),qCt=_v().resizeText,OCt=DD();function BCt(e){var t=e._fullLayout._treemaplayer.selectAll(".trace");qCt(e,t,"treemap"),t.each(function(r){var n=BCe.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){BCe.select(this).call(UCe,o,a,e,{hovered:!1})})})}function UCe(e,t,r,n,i){var a=(i||{}).hovered,o=t.data.data,s=o.i,l,u,c=o.color,f=FW.isHierarchyRoot(t),h=1;if(a)l=r._hovered.marker.line.color,u=r._hovered.marker.line.width;else if(f&&c===r.root.color)h=100,l="rgba(0,0,0,0)",u=0;else if(l=NCe.castOption(r,s,"marker.line.color")||I5.defaultLine,u=NCe.castOption(r,s,"marker.line.width")||0,!r._hasColorscale&&!t.onPathbar){var d=r.marker.depthfade;if(d){var v=I5.combine(I5.addOpacity(r._backgroundColor,.75),c),x;if(d===!0){var b=FW.getMaxDepth(r);isFinite(b)?FW.isLeaf(t)?x=0:x=r._maxVisibleLayers-(t.data.depth-r._entryDepth):x=t.data.height+1}else x=t.data.depth-r._entryDepth,r._atRootLevel||x++;if(x>0)for(var p=0;p<x;p++){var E=.5*p/x;c=I5.combine(I5.addOpacity(v,E),c)}}}e.call(OCt,t,r,n,c).style("stroke-width",u).call(I5.stroke,l).style("opacity",h)}VCe.exports={style:BCt,styleOne:UCe}});var ZCe=ye((Edr,WCe)=>{"use strict";var HCe=xa(),BD=Mr(),GCe=ao(),NCt=Pl(),UCt=zW(),jCe=OD().styleOne,qW=z2(),R5=Ky(),VCt=OE(),OW=!0;WCe.exports=function(t,r,n,i,a){var o=a.barDifY,s=a.width,l=a.height,u=a.viewX,c=a.viewY,f=a.pathSlice,h=a.toMoveInsideSlice,d=a.strTransform,v=a.hasTransition,x=a.handleSlicesExit,b=a.makeUpdateSliceInterpolator,p=a.makeUpdateTextInterpolator,E={},k=t._context.staticPlot,A=t._fullLayout,L=r[0],_=L.trace,C=L.hierarchy,M=s/_._entryDepth,g=R5.listPath(n.data,"id"),P=UCt(C.copy(),[s,l],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();P=P.filter(function(F){var q=g.indexOf(F.data.id);return q===-1?!1:(F.x0=M*q,F.x1=M*(q+1),F.y0=o,F.y1=o+l,F.onPathbar=!0,!0)}),P.reverse(),i=i.data(P,R5.getPtId),i.enter().append("g").classed("pathbar",!0),x(i,OW,E,[s,l],f),i.order();var T=i;v&&(T=T.transition().each("end",function(){var F=HCe.select(this);R5.setSliceCursor(F,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),T.each(function(F){F._x0=u(F.x0),F._x1=u(F.x1),F._y0=c(F.y0),F._y1=c(F.y1),F._hoverX=u(F.x1-Math.min(s,l)/2),F._hoverY=c(F.y1-l/2);var q=HCe.select(this),V=BD.ensureSingle(q,"path","surface",function(N){N.style("pointer-events",k?"none":"all")});v?V.transition().attrTween("d",function(N){var W=b(N,OW,E,[s,l]);return function(re){return f(W(re))}}):V.attr("d",f),q.call(VCt,n,t,r,{styleOne:jCe,eventDataKeys:qW.eventDataKeys,transitionTime:qW.CLICK_TRANSITION_TIME,transitionEasing:qW.CLICK_TRANSITION_EASING}).call(R5.setSliceCursor,t,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:t._transitioning}),V.call(jCe,F,_,t,{hovered:!1}),F._text=(R5.getPtLabel(F)||"").split("<br>").join(" ")||"";var H=BD.ensureSingle(q,"g","slicetext"),X=BD.ensureSingle(H,"text","",function(N){N.attr("data-notex",1)}),G=BD.ensureUniformFontSize(t,R5.determineTextFont(_,F,A.font,{onPathbar:!0}));X.text(F._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(GCe.font,G).call(NCt.convertToTspans,t),F.textBB=GCe.bBox(X.node()),F.transform=h(F,{fontSize:G.size,onPathbar:!0}),F.transform.fontSize=G.size,v?X.transition().attrTween("transform",function(N){var W=p(N,OW,E,[s,l]);return function(re){return d(W(re))}}):X.attr("transform",d(F))})}});var JCe=ye((kdr,KCe)=>{"use strict";var XCe=xa(),BW=(R2(),B1(I2)).interpolate,Y_=Ky(),NE=Mr(),YCe=Qb().TEXTPAD,HCt=i2(),GCt=HCt.toMoveInsideBar,jCt=_v(),NW=jCt.recordMinTextSize,WCt=z2(),ZCt=ZCe();function q2(e){return Y_.isHierarchyRoot(e)?"":Y_.getPtId(e)}KCe.exports=function(t,r,n,i,a){var o=t._fullLayout,s=r[0],l=s.trace,u=l.type,c=u==="icicle",f=s.hierarchy,h=Y_.findEntryWithLevel(f,l.level),d=XCe.select(n),v=d.selectAll("g.pathbar"),x=d.selectAll("g.slice");if(!h){v.remove(),x.remove();return}var b=Y_.isHierarchyRoot(h),p=!o.uniformtext.mode&&Y_.hasTransition(i),E=Y_.getMaxDepth(l),k=function(Ke){return Ke.data.depth-h.data.depth<E},A=o._size,L=l.domain,_=A.w*(L.x[1]-L.x[0]),C=A.h*(L.y[1]-L.y[0]),M=_,g=l.pathbar.thickness,P=l.marker.line.width+WCt.gapWithPathbar,T=l.pathbar.visible?l.pathbar.side.indexOf("bottom")>-1?C+P:-(g+P):0,F={x0:M,x1:M,y0:T,y1:T+g},q=function(Ke,xt,bt){var Lt=l.tiling.pad,St=function($t){return $t-Lt<=xt.x0},Et=function($t){return $t+Lt>=xt.x1},dt=function($t){return $t-Lt<=xt.y0},Ht=function($t){return $t+Lt>=xt.y1};return Ke.x0===xt.x0&&Ke.x1===xt.x1&&Ke.y0===xt.y0&&Ke.y1===xt.y1?{x0:Ke.x0,x1:Ke.x1,y0:Ke.y0,y1:Ke.y1}:{x0:St(Ke.x0-Lt)?0:Et(Ke.x0-Lt)?bt[0]:Ke.x0,x1:St(Ke.x1+Lt)?0:Et(Ke.x1+Lt)?bt[0]:Ke.x1,y0:dt(Ke.y0-Lt)?0:Ht(Ke.y0-Lt)?bt[1]:Ke.y0,y1:dt(Ke.y1+Lt)?0:Ht(Ke.y1+Lt)?bt[1]:Ke.y1}},V=null,H={},X={},G=null,N=function(Ke,xt){return xt?H[q2(Ke)]:X[q2(Ke)]},W=function(Ke,xt,bt,Lt){if(xt)return H[q2(f)]||F;var St=X[l.level]||bt;return k(Ke)?q(Ke,St,Lt):{}};s.hasMultipleRoots&&b&&E++,l._maxDepth=E,l._backgroundColor=o.paper_bgcolor,l._entryDepth=h.data.depth,l._atRootLevel=b;var re=-_/2+A.l+A.w*(L.x[1]+L.x[0])/2,ae=-C/2+A.t+A.h*(1-(L.y[1]+L.y[0])/2),_e=function(Ke){return re+Ke},Me=function(Ke){return ae+Ke},ke=Me(0),ge=_e(0),ie=function(Ke){return ge+Ke},Te=function(Ke){return ke+Ke};function Ee(Ke,xt){return Ke+","+xt}var Ae=ie(0),ze=function(Ke){Ke.x=Math.max(Ae,Ke.x)},Ce=l.pathbar.edgeshape,me=function(Ke){var xt=ie(Math.max(Math.min(Ke.x0,Ke.x0),0)),bt=ie(Math.min(Math.max(Ke.x1,Ke.x1),M)),Lt=Te(Ke.y0),St=Te(Ke.y1),Et=g/2,dt={},Ht={};dt.x=xt,Ht.x=bt,dt.y=Ht.y=(Lt+St)/2;var $t={x:xt,y:Lt},fr={x:bt,y:Lt},_r={x:bt,y:St},Br={x:xt,y:St};return Ce===">"?($t.x-=Et,fr.x-=Et,_r.x-=Et,Br.x-=Et):Ce==="/"?(_r.x-=Et,Br.x-=Et,dt.x-=Et/2,Ht.x-=Et/2):Ce==="\\"?($t.x-=Et,fr.x-=Et,dt.x-=Et/2,Ht.x-=Et/2):Ce==="<"&&(dt.x-=Et,Ht.x-=Et),ze($t),ze(Br),ze(dt),ze(fr),ze(_r),ze(Ht),"M"+Ee($t.x,$t.y)+"L"+Ee(fr.x,fr.y)+"L"+Ee(Ht.x,Ht.y)+"L"+Ee(_r.x,_r.y)+"L"+Ee(Br.x,Br.y)+"L"+Ee(dt.x,dt.y)+"Z"},Re=l[c?"tiling":"marker"].pad,ce=function(Ke){return l.textposition.indexOf(Ke)!==-1},Ge=ce("top"),nt=ce("left"),ct=ce("right"),qt=ce("bottom"),rt=function(Ke){var xt=_e(Ke.x0),bt=_e(Ke.x1),Lt=Me(Ke.y0),St=Me(Ke.y1),Et=bt-xt,dt=St-Lt;if(!Et||!dt)return"";var Ht=l.marker.cornerradius||0,$t=Math.min(Ht,Et/2,dt/2);$t&&Ke.data&&Ke.data.data&&Ke.data.data.label&&(Ge&&($t=Math.min($t,Re.t)),nt&&($t=Math.min($t,Re.l)),ct&&($t=Math.min($t,Re.r)),qt&&($t=Math.min($t,Re.b)));var fr=function(_r,Br){return $t?"a"+Ee($t,$t)+" 0 0 1 "+Ee(_r,Br):""};return"M"+Ee(xt,Lt+$t)+fr($t,-$t)+"L"+Ee(bt-$t,Lt)+fr($t,$t)+"L"+Ee(bt,St-$t)+fr(-$t,$t)+"L"+Ee(xt+$t,St)+fr(-$t,-$t)+"Z"},ot=function(Ke,xt){var bt=Ke.x0,Lt=Ke.x1,St=Ke.y0,Et=Ke.y1,dt=Ke.textBB,Ht=Ge||xt.isHeader&&!qt,$t=Ht?"start":qt?"end":"middle",fr=ce("right"),_r=ce("left")||xt.onPathbar,Br=_r?-1:fr?1:0;if(xt.isHeader){if(bt+=(c?Re:Re.l)-YCe,Lt-=(c?Re:Re.r)-YCe,bt>=Lt){var Or=(bt+Lt)/2;bt=Or,Lt=Or}var Nr;qt?(Nr=Et-(c?Re:Re.b),St<Nr&&Nr<Et&&(St=Nr)):(Nr=St+(c?Re:Re.t),St<Nr&&Nr<Et&&(Et=Nr))}var ut=GCt(bt,Lt,St,Et,dt,{isHorizontal:!1,constrained:!0,angle:0,anchor:$t,leftToRight:Br});return ut.fontSize=xt.fontSize,ut.targetX=_e(ut.targetX),ut.targetY=Me(ut.targetY),isNaN(ut.targetX)||isNaN(ut.targetY)?{}:(bt!==Lt&&St!==Et&&NW(l.type,ut,o),{scale:ut.scale,rotate:ut.rotate,textX:ut.textX,textY:ut.textY,anchorX:ut.anchorX,anchorY:ut.anchorY,targetX:ut.targetX,targetY:ut.targetY})},Rt=function(Ke,xt){for(var bt,Lt=0,St=Ke;!bt&&Lt<E;)Lt++,St=St.parent,St?bt=N(St,xt):Lt=E;return bt||{}},kt=function(Ke,xt,bt,Lt){var St=N(Ke,xt),Et;if(xt)Et=F;else{var dt=N(h,xt);dt?Et=q(Ke,dt,Lt):Et={}}return BW(St,Et)},Ct=function(Ke,xt,bt,Lt,St){var Et=N(Ke,xt),dt;if(Et)dt=Et;else if(xt)dt=F;else if(V)if(Ke.parent){var Ht=G||bt;Ht&&!xt?dt=q(Ke,Ht,Lt):(dt={},NE.extendFlat(dt,Rt(Ke,xt)))}else dt=NE.extendFlat({},Ke),c&&(St.orientation==="h"?St.flipX?dt.x0=Ke.x1:dt.x1=0:St.flipY?dt.y0=Ke.y1:dt.y1=0);else dt={};return BW(dt,{x0:Ke.x0,x1:Ke.x1,y0:Ke.y0,y1:Ke.y1})},Yt=function(Ke,xt,bt,Lt){var St=N(Ke,xt),Et={},dt=W(Ke,xt,bt,Lt);NE.extendFlat(Et,{transform:ot({x0:dt.x0,x1:dt.x1,y0:dt.y0,y1:dt.y1,textBB:Ke.textBB,_text:Ke._text},{isHeader:Y_.isHeader(Ke,l)})}),St?Et=St:Ke.parent&&NE.extendFlat(Et,Rt(Ke,xt));var Ht=Ke.transform;return Ke.x0!==Ke.x1&&Ke.y0!==Ke.y1&&NW(l.type,Ht,o),BW(Et,{transform:{scale:Ht.scale,rotate:Ht.rotate,textX:Ht.textX,textY:Ht.textY,anchorX:Ht.anchorX,anchorY:Ht.anchorY,targetX:Ht.targetX,targetY:Ht.targetY}})},xr=function(Ke,xt,bt,Lt,St){var Et=Lt[0],dt=Lt[1];p?Ke.exit().transition().each(function(){var Ht=XCe.select(this),$t=Ht.select("path.surface");$t.transition().attrTween("d",function(_r){var Br=kt(_r,xt,bt,[Et,dt]);return function(Or){return St(Br(Or))}});var fr=Ht.select("g.slicetext");fr.attr("opacity",0)}).remove():Ke.exit().remove()},er=function(Ke){var xt=Ke.transform;return Ke.x0!==Ke.x1&&Ke.y0!==Ke.y1&&NW(l.type,xt,o),NE.getTextTransform({textX:xt.textX,textY:xt.textY,anchorX:xt.anchorX,anchorY:xt.anchorY,targetX:xt.targetX,targetY:xt.targetY,scale:xt.scale,rotate:xt.rotate})};p&&(v.each(function(Ke){H[q2(Ke)]={x0:Ke.x0,x1:Ke.x1,y0:Ke.y0,y1:Ke.y1},Ke.transform&&(H[q2(Ke)].transform={textX:Ke.transform.textX,textY:Ke.transform.textY,anchorX:Ke.transform.anchorX,anchorY:Ke.transform.anchorY,targetX:Ke.transform.targetX,targetY:Ke.transform.targetY,scale:Ke.transform.scale,rotate:Ke.transform.rotate})}),x.each(function(Ke){X[q2(Ke)]={x0:Ke.x0,x1:Ke.x1,y0:Ke.y0,y1:Ke.y1},Ke.transform&&(X[q2(Ke)].transform={textX:Ke.transform.textX,textY:Ke.transform.textY,anchorX:Ke.transform.anchorX,anchorY:Ke.transform.anchorY,targetX:Ke.transform.targetX,targetY:Ke.transform.targetY,scale:Ke.transform.scale,rotate:Ke.transform.rotate}),!V&&Y_.isEntry(Ke)&&(V=Ke)})),G=a(t,r,h,x,{width:_,height:C,viewX:_e,viewY:Me,pathSlice:rt,toMoveInsideSlice:ot,prevEntry:V,makeUpdateSliceInterpolator:Ct,makeUpdateTextInterpolator:Yt,handleSlicesExit:xr,hasTransition:p,strTransform:er}),l.pathbar.visible?ZCt(t,r,h,v,{barDifY:T,width:M,height:g,viewX:ie,viewY:Te,pathSlice:me,toMoveInsideSlice:ot,makeUpdateSliceInterpolator:Ct,makeUpdateTextInterpolator:Yt,handleSlicesExit:xr,hasTransition:p,strTransform:er}):v.remove()}});var UW=ye((Cdr,QCe)=>{"use strict";var XCt=xa(),YCt=Ky(),KCt=_v(),JCt=KCt.clearMinTextSize,$Ct=N0().resizeText,$Ce=JCe();QCe.exports=function(t,r,n,i,a){var o=a.type,s=a.drawDescendants,l=t._fullLayout,u=l["_"+o+"layer"],c,f,h=!n;if(JCt(o,l),c=u.selectAll("g.trace."+o).data(r,function(v){return v[0].trace.uid}),c.enter().append("g").classed("trace",!0).classed(o,!0),c.order(),!l.uniformtext.mode&&YCt.hasTransition(n)){i&&(f=i());var d=XCt.transition().duration(n.duration).ease(n.easing).each("end",function(){f&&f()}).each("interrupt",function(){f&&f()});d.each(function(){u.selectAll("g.trace").each(function(v){$Ce(t,v,this,n,s)})})}else c.each(function(v){$Ce(t,v,this,n,s)}),l.uniformtext.mode&&$Ct(t,u.selectAll(".trace"),o);h&&c.exit().remove()}});var n6e=ye((Ldr,i6e)=>{"use strict";var e6e=xa(),ND=Mr(),t6e=ao(),QCt=Pl(),e6t=zW(),r6e=OD().styleOne,VW=z2(),K_=Ky(),t6t=OE(),r6t=FD().formatSliceLabel,HW=!1;i6e.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,x=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,E={},k=t._context.staticPlot,A=t._fullLayout,L=r[0],_=L.trace,C=_.textposition.indexOf("left")!==-1,M=_.textposition.indexOf("right")!==-1,g=_.textposition.indexOf("bottom")!==-1,P=!g&&!_.marker.pad.t||g&&!_.marker.pad.b,T=e6t(n,[o,s],{packing:_.tiling.packing,squarifyratio:_.tiling.squarifyratio,flipX:_.tiling.flip.indexOf("x")>-1,flipY:_.tiling.flip.indexOf("y")>-1,pad:{inner:_.tiling.pad,top:_.marker.pad.t,left:_.marker.pad.l,right:_.marker.pad.r,bottom:_.marker.pad.b}}),F=T.descendants(),q=1/0,V=-1/0;F.forEach(function(W){var re=W.depth;re>=_._maxDepth?(W.x0=W.x1=(W.x0+W.x1)/2,W.y0=W.y1=(W.y0+W.y1)/2):(q=Math.min(q,re),V=Math.max(V,re))}),i=i.data(F,K_.getPtId),_._maxVisibleLayers=isFinite(V)?V-q+1:0,i.enter().append("g").classed("slice",!0),v(i,HW,E,[o,s],c),i.order();var H=null;if(d&&p){var X=K_.getPtId(p);i.each(function(W){H===null&&K_.getPtId(W)===X&&(H={x0:W.x0,x1:W.x1,y0:W.y0,y1:W.y1})})}var G=function(){return H||{x0:0,x1:o,y0:0,y1:s}},N=i;return d&&(N=N.transition().each("end",function(){var W=e6e.select(this);K_.setSliceCursor(W,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),N.each(function(W){var re=K_.isHeader(W,_);W._x0=l(W.x0),W._x1=l(W.x1),W._y0=u(W.y0),W._y1=u(W.y1),W._hoverX=l(W.x1-_.marker.pad.r),W._hoverY=u(g?W.y1-_.marker.pad.b/2:W.y0+_.marker.pad.t/2);var ae=e6e.select(this),_e=ND.ensureSingle(ae,"path","surface",function(Ee){Ee.style("pointer-events",k?"none":"all")});d?_e.transition().attrTween("d",function(Ee){var Ae=x(Ee,HW,G(),[o,s]);return function(ze){return c(Ae(ze))}}):_e.attr("d",c),ae.call(t6t,n,t,r,{styleOne:r6e,eventDataKeys:VW.eventDataKeys,transitionTime:VW.CLICK_TRANSITION_TIME,transitionEasing:VW.CLICK_TRANSITION_EASING}).call(K_.setSliceCursor,t,{isTransitioning:t._transitioning}),_e.call(r6e,W,_,t,{hovered:!1}),W.x0===W.x1||W.y0===W.y1?W._text="":re?W._text=P?"":K_.getPtLabel(W)||"":W._text=r6t(W,n,_,r,A)||"";var Me=ND.ensureSingle(ae,"g","slicetext"),ke=ND.ensureSingle(Me,"text","",function(Ee){Ee.attr("data-notex",1)}),ge=ND.ensureUniformFontSize(t,K_.determineTextFont(_,W,A.font)),ie=W._text||" ",Te=re&&ie.indexOf("<br>")===-1;ke.text(ie).classed("slicetext",!0).attr("text-anchor",M?"end":C||Te?"start":"middle").call(t6e.font,ge).call(QCt.convertToTspans,t),W.textBB=t6e.bBox(ke.node()),W.transform=f(W,{fontSize:ge.size,isHeader:re}),W.transform.fontSize=ge.size,d?ke.transition().attrTween("transform",function(Ee){var Ae=b(Ee,HW,G(),[o,s]);return function(ze){return h(Ae(ze))}}):ke.attr("transform",h(W))}),H}});var o6e=ye((Pdr,a6e)=>{"use strict";var i6t=UW(),n6t=n6e();a6e.exports=function(t,r,n,i){return i6t(t,r,n,i,{type:"treemap",drawDescendants:n6t})}});var l6e=ye((Idr,s6e)=>{"use strict";s6e.exports={moduleType:"trace",name:"treemap",basePlotModule:SCe(),categories:[],animatable:!0,attributes:qD(),layoutAttributes:PW(),supplyDefaults:RCe(),supplyLayoutDefaults:zCe(),calc:RW().calc,crossTraceCalc:RW().crossTraceCalc,plot:o6e(),style:OD().style,colorbar:Kd(),meta:{}}});var c6e=ye((Rdr,u6e)=>{"use strict";u6e.exports=l6e()});var h6e=ye(D5=>{"use strict";var f6e=Xu();D5.name="icicle";D5.plot=function(e,t,r,n){f6e.plotBasePlot(D5.name,e,t,r,n)};D5.clean=function(e,t,r,n){f6e.cleanBasePlot(D5.name,e,t,r,n)}});var GW=ye((zdr,v6e)=>{"use strict";var a6t=Wo().hovertemplateAttrs,o6t=Wo().texttemplateAttrs,s6t=Jl(),l6t=Ju().attributes,UE=A2(),o0=AE(),UD=qD(),d6e=z2(),u6t=no().extendFlat,c6t=Ed().pattern;v6e.exports={labels:o0.labels,parents:o0.parents,values:o0.values,branchvalues:o0.branchvalues,count:o0.count,level:o0.level,maxdepth:o0.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:UD.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:u6t({colors:o0.marker.colors,line:o0.marker.line,pattern:c6t,editType:"calc"},s6t("marker",{colorAttr:"colors",anim:!1})),leaf:o0.leaf,pathbar:UD.pathbar,text:UE.text,textinfo:o0.textinfo,texttemplate:o6t({editType:"plot"},{keys:d6e.eventDataKeys.concat(["label","value"])}),hovertext:UE.hovertext,hoverinfo:o0.hoverinfo,hovertemplate:a6t({},{keys:d6e.eventDataKeys}),textfont:UE.textfont,insidetextfont:UE.insidetextfont,outsidetextfont:UD.outsidetextfont,textposition:UD.textposition,sort:UE.sort,root:o0.root,domain:l6t({name:"icicle",trace:!0,editType:"calc"})}});var jW=ye((Fdr,p6e)=>{"use strict";p6e.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var _6e=ye((qdr,y6e)=>{"use strict";var g6e=Mr(),f6t=GW(),h6t=va(),d6t=Ju().defaults,v6t=r0().handleText,p6t=Qb().TEXTPAD,g6t=S2().handleMarkerDefaults,m6e=Mu(),m6t=m6e.hasColorscale,y6t=m6e.handleDefaults;y6e.exports=function(t,r,n,i){function a(d,v){return g6e.coerce(t,r,f6t,d,v)}var o=a("labels"),s=a("parents");if(!o||!o.length||!s||!s.length){r.visible=!1;return}var l=a("values");l&&l.length?a("branchvalues"):a("count"),a("level"),a("maxdepth"),a("tiling.orientation"),a("tiling.flip"),a("tiling.pad");var u=a("text");a("texttemplate"),r.texttemplate||a("textinfo",g6e.isArrayOrTypedArray(u)?"text+label":"label"),a("hovertext"),a("hovertemplate");var c=a("pathbar.visible"),f="auto";v6t(t,r,i,a,f,{hasPathbar:c,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),a("textposition"),g6t(t,r,i,a);var h=r._hasColorscale=m6t(t,"marker","colors")||(t.marker||{}).coloraxis;h&&y6t(t,r,i,a,{prefix:"marker.",cLetter:"c"}),a("leaf.opacity",h?1:.7),r._hovered={marker:{line:{width:2,color:h6t.contrast(i.paper_bgcolor)}}},c&&(a("pathbar.thickness",r.pathbar.textfont.size+2*p6t),a("pathbar.side"),a("pathbar.edgeshape")),a("sort"),a("root.color"),d6t(r,i,a),r._length=null}});var b6e=ye((Odr,x6e)=>{"use strict";var _6t=Mr(),x6t=jW();x6e.exports=function(t,r){function n(i,a){return _6t.coerce(t,r,x6t,i,a)}n("iciclecolorway",r.colorway),n("extendiciclecolors")}});var ZW=ye(WW=>{"use strict";var w6e=EE();WW.calc=function(e,t){return w6e.calc(e,t)};WW.crossTraceCalc=function(e){return w6e._runCrossTraceCalc("icicle",e)}});var A6e=ye((Ndr,T6e)=>{"use strict";var b6t=SE(),w6t=DW();T6e.exports=function(t,r,n){var i=n.flipX,a=n.flipY,o=n.orientation==="h",s=n.maxDepth,l=r[0],u=r[1];s&&(l=(t.height+1)*r[0]/Math.min(t.height+1,s),u=(t.height+1)*r[1]/Math.min(t.height+1,s));var c=b6t.partition().padding(n.pad.inner).size(o?[r[1],l]:[r[0],u])(t);return(o||i||a)&&w6t(c,r,{swapXY:o,flipX:i,flipY:a}),c}});var XW=ye((Udr,C6e)=>{"use strict";var S6e=xa(),M6e=va(),E6e=Mr(),T6t=_v().resizeText,A6t=DD();function S6t(e){var t=e._fullLayout._iciclelayer.selectAll(".trace");T6t(e,t,"icicle"),t.each(function(r){var n=S6e.select(this),i=r[0],a=i.trace;n.style("opacity",a.opacity),n.selectAll("path.surface").each(function(o){S6e.select(this).call(k6e,o,a,e)})})}function k6e(e,t,r,n){var i=t.data.data,a=!t.children,o=i.i,s=E6e.castOption(r,o,"marker.line.color")||M6e.defaultLine,l=E6e.castOption(r,o,"marker.line.width")||0;e.call(A6t,t,r,n).style("stroke-width",l).call(M6e.stroke,s).style("opacity",a?r.leaf.opacity:null)}C6e.exports={style:S6t,styleOne:k6e}});var D6e=ye((Vdr,R6e)=>{"use strict";var L6e=xa(),VD=Mr(),P6e=ao(),M6t=Pl(),E6t=A6e(),I6e=XW().styleOne,YW=z2(),z5=Ky(),k6t=OE(),C6t=FD().formatSliceLabel,KW=!1;R6e.exports=function(t,r,n,i,a){var o=a.width,s=a.height,l=a.viewX,u=a.viewY,c=a.pathSlice,f=a.toMoveInsideSlice,h=a.strTransform,d=a.hasTransition,v=a.handleSlicesExit,x=a.makeUpdateSliceInterpolator,b=a.makeUpdateTextInterpolator,p=a.prevEntry,E={},k=t._context.staticPlot,A=t._fullLayout,L=r[0],_=L.trace,C=_.textposition.indexOf("left")!==-1,M=_.textposition.indexOf("right")!==-1,g=_.textposition.indexOf("bottom")!==-1,P=E6t(n,[o,s],{flipX:_.tiling.flip.indexOf("x")>-1,flipY:_.tiling.flip.indexOf("y")>-1,orientation:_.tiling.orientation,pad:{inner:_.tiling.pad},maxDepth:_._maxDepth}),T=P.descendants(),F=1/0,q=-1/0;T.forEach(function(N){var W=N.depth;W>=_._maxDepth?(N.x0=N.x1=(N.x0+N.x1)/2,N.y0=N.y1=(N.y0+N.y1)/2):(F=Math.min(F,W),q=Math.max(q,W))}),i=i.data(T,z5.getPtId),_._maxVisibleLayers=isFinite(q)?q-F+1:0,i.enter().append("g").classed("slice",!0),v(i,KW,E,[o,s],c),i.order();var V=null;if(d&&p){var H=z5.getPtId(p);i.each(function(N){V===null&&z5.getPtId(N)===H&&(V={x0:N.x0,x1:N.x1,y0:N.y0,y1:N.y1})})}var X=function(){return V||{x0:0,x1:o,y0:0,y1:s}},G=i;return d&&(G=G.transition().each("end",function(){var N=L6e.select(this);z5.setSliceCursor(N,t,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),G.each(function(N){N._x0=l(N.x0),N._x1=l(N.x1),N._y0=u(N.y0),N._y1=u(N.y1),N._hoverX=l(N.x1-_.tiling.pad),N._hoverY=u(g?N.y1-_.tiling.pad/2:N.y0+_.tiling.pad/2);var W=L6e.select(this),re=VD.ensureSingle(W,"path","surface",function(ke){ke.style("pointer-events",k?"none":"all")});d?re.transition().attrTween("d",function(ke){var ge=x(ke,KW,X(),[o,s],{orientation:_.tiling.orientation,flipX:_.tiling.flip.indexOf("x")>-1,flipY:_.tiling.flip.indexOf("y")>-1});return function(ie){return c(ge(ie))}}):re.attr("d",c),W.call(k6t,n,t,r,{styleOne:I6e,eventDataKeys:YW.eventDataKeys,transitionTime:YW.CLICK_TRANSITION_TIME,transitionEasing:YW.CLICK_TRANSITION_EASING}).call(z5.setSliceCursor,t,{isTransitioning:t._transitioning}),re.call(I6e,N,_,t,{hovered:!1}),N.x0===N.x1||N.y0===N.y1?N._text="":N._text=C6t(N,n,_,r,A)||"";var ae=VD.ensureSingle(W,"g","slicetext"),_e=VD.ensureSingle(ae,"text","",function(ke){ke.attr("data-notex",1)}),Me=VD.ensureUniformFontSize(t,z5.determineTextFont(_,N,A.font));_e.text(N._text||" ").classed("slicetext",!0).attr("text-anchor",M?"end":C?"start":"middle").call(P6e.font,Me).call(M6t.convertToTspans,t),N.textBB=P6e.bBox(_e.node()),N.transform=f(N,{fontSize:Me.size}),N.transform.fontSize=Me.size,d?_e.transition().attrTween("transform",function(ke){var ge=b(ke,KW,X(),[o,s]);return function(ie){return h(ge(ie))}}):_e.attr("transform",h(N))}),V}});var F6e=ye((Hdr,z6e)=>{"use strict";var L6t=UW(),P6t=D6e();z6e.exports=function(t,r,n,i){return L6t(t,r,n,i,{type:"icicle",drawDescendants:P6t})}});var O6e=ye((Gdr,q6e)=>{"use strict";q6e.exports={moduleType:"trace",name:"icicle",basePlotModule:h6e(),categories:[],animatable:!0,attributes:GW(),layoutAttributes:jW(),supplyDefaults:_6e(),supplyLayoutDefaults:b6e(),calc:ZW().calc,crossTraceCalc:ZW().crossTraceCalc,plot:F6e(),style:XW().style,colorbar:Kd(),meta:{}}});var N6e=ye((jdr,B6e)=>{"use strict";B6e.exports=O6e()});var V6e=ye(F5=>{"use strict";var U6e=Xu();F5.name="funnelarea";F5.plot=function(e,t,r,n){U6e.plotBasePlot(F5.name,e,t,r,n)};F5.clean=function(e,t,r,n){U6e.cleanBasePlot(F5.name,e,t,r,n)}});var JW=ye((Zdr,H6e)=>{"use strict";var tv=A2(),I6t=vl(),R6t=Ju().attributes,D6t=Wo().hovertemplateAttrs,z6t=Wo().texttemplateAttrs,O2=no().extendFlat;H6e.exports={labels:tv.labels,label0:tv.label0,dlabel:tv.dlabel,values:tv.values,marker:{colors:tv.marker.colors,line:{color:O2({},tv.marker.line.color,{dflt:null}),width:O2({},tv.marker.line.width,{dflt:1}),editType:"calc"},pattern:tv.marker.pattern,editType:"calc"},text:tv.text,hovertext:tv.hovertext,scalegroup:O2({},tv.scalegroup,{}),textinfo:O2({},tv.textinfo,{flags:["label","text","value","percent"]}),texttemplate:z6t({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:O2({},I6t.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:D6t({},{keys:["label","color","value","text","percent"]}),textposition:O2({},tv.textposition,{values:["inside","none"],dflt:"inside"}),textfont:tv.textfont,insidetextfont:tv.insidetextfont,title:{text:tv.title.text,font:tv.title.font,position:O2({},tv.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:R6t({name:"funnelarea",trace:!0,editType:"calc"}),aspectratio:{valType:"number",min:0,dflt:1,editType:"plot"},baseratio:{valType:"number",min:0,max:1,dflt:.333,editType:"plot"}}});var $W=ye((Xdr,G6e)=>{"use strict";var F6t=uD().hiddenlabels;G6e.exports={hiddenlabels:F6t,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}});var Z6e=ye((Ydr,W6e)=>{"use strict";var j6e=Mr(),q6t=JW(),O6t=Ju().defaults,B6t=r0().handleText,N6t=S2().handleLabelsAndValues,U6t=S2().handleMarkerDefaults;W6e.exports=function(t,r,n,i){function a(x,b){return j6e.coerce(t,r,q6t,x,b)}var o=a("labels"),s=a("values"),l=N6t(o,s),u=l.len;if(r._hasLabels=l.hasLabels,r._hasValues=l.hasValues,!r._hasLabels&&r._hasValues&&(a("label0"),a("dlabel")),!u){r.visible=!1;return}r._length=u,U6t(t,r,i,a),a("scalegroup");var c=a("text"),f=a("texttemplate"),h;if(f||(h=a("textinfo",Array.isArray(c)?"text+percent":"percent")),a("hovertext"),a("hovertemplate"),f||h&&h!=="none"){var d=a("textposition");B6t(t,r,i,a,d,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else h==="none"&&a("textposition","none");O6t(r,i,a);var v=a("title.text");v&&(a("title.position"),j6e.coerceFont(a,"title.font",i.font)),a("aspectratio"),a("baseratio")}});var Y6e=ye((Kdr,X6e)=>{"use strict";var V6t=Mr(),H6t=$W();X6e.exports=function(t,r){function n(i,a){return V6t.coerce(t,r,H6t,i,a)}n("hiddenlabels"),n("funnelareacolorway",r.colorway),n("extendfunnelareacolors")}});var QW=ye((Jdr,J6e)=>{"use strict";var K6e=y5();function G6t(e,t){return K6e.calc(e,t)}function j6t(e){K6e.crossTraceCalc(e,{type:"funnelarea"})}J6e.exports={calc:G6t,crossTraceCalc:j6t}});var rLe=ye(($dr,tLe)=>{"use strict";var B2=xa(),eZ=ao(),J_=Mr(),W6t=J_.strScale,$6e=J_.strTranslate,Q6e=Pl(),Z6t=i2(),X6t=Z6t.toMoveInsideBar,eLe=_v(),Y6t=eLe.recordMinTextSize,K6t=eLe.clearMinTextSize,J6t=u_(),q5=dD(),$6t=q5.attachFxHandlers,Q6t=q5.determineInsideTextFont,eLt=q5.layoutAreas,tLt=q5.prerenderTitles,rLt=q5.positionTitleOutside,iLt=q5.formatSliceLabel;tLe.exports=function(t,r){var n=t._context.staticPlot,i=t._fullLayout;K6t("funnelarea",i),tLt(r,t),eLt(r,i._size),J_.makeTraceGroups(i._funnelarealayer,r,"trace").each(function(a){var o=B2.select(this),s=a[0],l=s.trace;aLt(a),o.each(function(){var u=B2.select(this).selectAll("g.slice").data(a);u.enter().append("g").classed("slice",!0),u.exit().remove(),u.each(function(f,h){if(f.hidden){B2.select(this).selectAll("path,g").remove();return}f.pointNumber=f.i,f.curveNumber=l.index;var d=s.cx,v=s.cy,x=B2.select(this),b=x.selectAll("path.surface").data([f]);b.enter().append("path").classed("surface",!0).style({"pointer-events":n?"none":"all"}),x.call($6t,t,a);var p="M"+(d+f.TR[0])+","+(v+f.TR[1])+tZ(f.TR,f.BR)+tZ(f.BR,f.BL)+tZ(f.BL,f.TL)+"Z";b.attr("d",p),iLt(t,f,s);var E=J6t.castOption(l.textposition,f.pts),k=x.selectAll("g.slicetext").data(f.text&&E!=="none"?[0]:[]);k.enter().append("g").classed("slicetext",!0),k.exit().remove(),k.each(function(){var A=J_.ensureSingle(B2.select(this),"text","",function(F){F.attr("data-notex",1)}),L=J_.ensureUniformFontSize(t,Q6t(l,f,i.font));A.text(f.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(eZ.font,L).call(Q6e.convertToTspans,t);var _=eZ.bBox(A.node()),C,M,g,P=Math.min(f.BL[1],f.BR[1])+v,T=Math.max(f.TL[1],f.TR[1])+v;M=Math.max(f.TL[0],f.BL[0])+d,g=Math.min(f.TR[0],f.BR[0])+d,C=X6t(M,g,P,T,_,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),C.fontSize=L.size,Y6t(l.type,C,i),a[h].transform=C,J_.setTransormAndDisplay(A,C)})});var c=B2.select(this).selectAll("g.titletext").data(l.title.text?[0]:[]);c.enter().append("g").classed("titletext",!0),c.exit().remove(),c.each(function(){var f=J_.ensureSingle(B2.select(this),"text","",function(v){v.attr("data-notex",1)}),h=l.title.text;l._meta&&(h=J_.templateString(h,l._meta)),f.text(h).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(eZ.font,l.title.font).call(Q6e.convertToTspans,t);var d=rLt(s,i._size);f.attr("transform",$6e(d.x,d.y)+W6t(Math.min(1,d.scale))+$6e(d.tx,d.ty))})})})};function tZ(e,t){var r=t[0]-e[0],n=t[1]-e[1];return"l"+r+","+n}function nLt(e,t){return[.5*(e[0]+t[0]),.5*(e[1]+t[1])]}function aLt(e){if(!e.length)return;var t=e[0],r=t.trace,n=r.aspectratio,i=r.baseratio;i>.999&&(i=.999);var a=Math.pow(i,2),o=t.vTotal,s=o*a/(1-a),l=o,u=s/o;function c(){var q=Math.sqrt(u);return{x:q,y:-q}}function f(){var q=c();return[q.x,q.y]}var h,d=[];d.push(f());var v,x;for(v=e.length-1;v>-1;v--)if(x=e[v],!x.hidden){var b=x.v/l;u+=b,d.push(f())}var p=1/0,E=-1/0;for(v=0;v<d.length;v++)h=d[v],p=Math.min(p,h[1]),E=Math.max(E,h[1]);for(v=0;v<d.length;v++)d[v][1]-=(E+p)/2;var k=d[d.length-1][0],A=t.r,L=(E-p)/2,_=A/k,C=A/L*n;for(t.r=C*L,v=0;v<d.length;v++)d[v][0]*=_,d[v][1]*=C;h=d[0];var M=[-h[0],h[1]],g=[h[0],h[1]],P=0;for(v=e.length-1;v>-1;v--)if(x=e[v],!x.hidden){P+=1;var T=d[P][0],F=d[P][1];x.TL=[-T,F],x.TR=[T,F],x.BL=M,x.BR=g,x.pxmid=nLt(x.TR,x.BR),M=x.TL,g=x.TR}}});var aLe=ye((Qdr,nLe)=>{"use strict";var iLe=xa(),oLt=z3(),sLt=_v().resizeText;nLe.exports=function(t){var r=t._fullLayout._funnelarealayer.selectAll(".trace");sLt(t,r,"funnelarea"),r.each(function(n){var i=n[0],a=i.trace,o=iLe.select(this);o.style({opacity:a.opacity}),o.selectAll("path.surface").each(function(s){iLe.select(this).call(oLt,s,a,t)})})}});var sLe=ye((evr,oLe)=>{"use strict";oLe.exports={moduleType:"trace",name:"funnelarea",basePlotModule:V6e(),categories:["pie-like","funnelarea","showLegend"],attributes:JW(),layoutAttributes:$W(),supplyDefaults:Z6e(),supplyLayoutDefaults:Y6e(),calc:QW().calc,crossTraceCalc:QW().crossTraceCalc,plot:rLe(),style:aLe(),styleOne:z3(),meta:{}}});var uLe=ye((tvr,lLe)=>{"use strict";lLe.exports=sLe()});var Rd=ye((rvr,cLe)=>{(function(){var e={1964:function(i,a,o){i.exports={alpha_shape:o(3502),convex_hull:o(7352),delaunay_triangulate:o(7642),gl_cone3d:o(6405),gl_error3d:o(9165),gl_line3d:o(5714),gl_mesh3d:o(7201),gl_plot3d:o(4100),gl_scatter3d:o(8418),gl_streamtube3d:o(7815),gl_surface3d:o(9499),ndarray:o(9618),ndarray_linear_interpolate:o(4317)}},4793:function(i,a,o){"use strict";var s;function l(Le,xe){if(!(Le instanceof xe))throw new TypeError("Cannot call a class as a function")}function u(Le,xe){for(var Se=0;Se<xe.length;Se++){var lt=xe[Se];lt.enumerable=lt.enumerable||!1,lt.configurable=!0,"value"in lt&&(lt.writable=!0),Object.defineProperty(Le,f(lt.key),lt)}}function c(Le,xe,Se){return xe&&u(Le.prototype,xe),Se&&u(Le,Se),Object.defineProperty(Le,"prototype",{writable:!1}),Le}function f(Le){var xe=h(Le,"string");return A(xe)=="symbol"?xe:xe+""}function h(Le,xe){if(A(Le)!="object"||!Le)return Le;var Se=Le[Symbol.toPrimitive];if(Se!==void 0){var lt=Se.call(Le,xe||"default");if(A(lt)!="object")return lt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(xe==="string"?String:Number)(Le)}function d(Le,xe,Se){return xe=p(xe),v(Le,b()?Reflect.construct(xe,Se||[],p(Le).constructor):xe.apply(Le,Se))}function v(Le,xe){if(xe&&(A(xe)=="object"||typeof xe=="function"))return xe;if(xe!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return x(Le)}function x(Le){if(Le===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return Le}function b(){try{var Le=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(xe){}return(b=function(){return!!Le})()}function p(Le){return p=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(xe){return xe.__proto__||Object.getPrototypeOf(xe)},p(Le)}function E(Le,xe){if(typeof xe!="function"&&xe!==null)throw new TypeError("Super expression must either be null or a function");Le.prototype=Object.create(xe&&xe.prototype,{constructor:{value:Le,writable:!0,configurable:!0}}),Object.defineProperty(Le,"prototype",{writable:!1}),xe&&k(Le,xe)}function k(Le,xe){return k=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Se,lt){return Se.__proto__=lt,Se},k(Le,xe)}function A(Le){"@babel/helpers - typeof";return A=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(xe){return typeof xe}:function(xe){return xe&&typeof Symbol=="function"&&xe.constructor===Symbol&&xe!==Symbol.prototype?"symbol":typeof xe},A(Le)}var L=o(7507),_=o(3778),C=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;a.hp=T,s=_e,a.IS=50;var M=2147483647;s=M,T.TYPED_ARRAY_SUPPORT=g(),!T.TYPED_ARRAY_SUPPORT&&typeof console!="undefined"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function g(){try{var Le=new Uint8Array(1),xe={foo:function(){return 42}};return Object.setPrototypeOf(xe,Uint8Array.prototype),Object.setPrototypeOf(Le,xe),Le.foo()===42}catch(Se){return!1}}Object.defineProperty(T.prototype,"parent",{enumerable:!0,get:function(){if(T.isBuffer(this))return this.buffer}}),Object.defineProperty(T.prototype,"offset",{enumerable:!0,get:function(){if(T.isBuffer(this))return this.byteOffset}});function P(Le){if(Le>M)throw new RangeError('The value "'+Le+'" is invalid for option "size"');var xe=new Uint8Array(Le);return Object.setPrototypeOf(xe,T.prototype),xe}function T(Le,xe,Se){if(typeof Le=="number"){if(typeof xe=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return H(Le)}return F(Le,xe,Se)}T.poolSize=8192;function F(Le,xe,Se){if(typeof Le=="string")return X(Le,xe);if(ArrayBuffer.isView(Le))return N(Le);if(Le==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(Le));if(Ne(Le,ArrayBuffer)||Le&&Ne(Le.buffer,ArrayBuffer)||typeof SharedArrayBuffer!="undefined"&&(Ne(Le,SharedArrayBuffer)||Le&&Ne(Le.buffer,SharedArrayBuffer)))return W(Le,xe,Se);if(typeof Le=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var lt=Le.valueOf&&Le.valueOf();if(lt!=null&&lt!==Le)return T.from(lt,xe,Se);var Gt=re(Le);if(Gt)return Gt;if(typeof Symbol!="undefined"&&Symbol.toPrimitive!=null&&typeof Le[Symbol.toPrimitive]=="function")return T.from(Le[Symbol.toPrimitive]("string"),xe,Se);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+A(Le))}T.from=function(Le,xe,Se){return F(Le,xe,Se)},Object.setPrototypeOf(T.prototype,Uint8Array.prototype),Object.setPrototypeOf(T,Uint8Array);function q(Le){if(typeof Le!="number")throw new TypeError('"size" argument must be of type number');if(Le<0)throw new RangeError('The value "'+Le+'" is invalid for option "size"')}function V(Le,xe,Se){return q(Le),Le<=0?P(Le):xe!==void 0?typeof Se=="string"?P(Le).fill(xe,Se):P(Le).fill(xe):P(Le)}T.alloc=function(Le,xe,Se){return V(Le,xe,Se)};function H(Le){return q(Le),P(Le<0?0:ae(Le)|0)}T.allocUnsafe=function(Le){return H(Le)},T.allocUnsafeSlow=function(Le){return H(Le)};function X(Le,xe){if((typeof xe!="string"||xe==="")&&(xe="utf8"),!T.isEncoding(xe))throw new TypeError("Unknown encoding: "+xe);var Se=Me(Le,xe)|0,lt=P(Se),Gt=lt.write(Le,xe);return Gt!==Se&&(lt=lt.slice(0,Gt)),lt}function G(Le){for(var xe=Le.length<0?0:ae(Le.length)|0,Se=P(xe),lt=0;lt<xe;lt+=1)Se[lt]=Le[lt]&255;return Se}function N(Le){if(Ne(Le,Uint8Array)){var xe=new Uint8Array(Le);return W(xe.buffer,xe.byteOffset,xe.byteLength)}return G(Le)}function W(Le,xe,Se){if(xe<0||Le.byteLength<xe)throw new RangeError('"offset" is outside of buffer bounds');if(Le.byteLength<xe+(Se||0))throw new RangeError('"length" is outside of buffer bounds');var lt;return xe===void 0&&Se===void 0?lt=new Uint8Array(Le):Se===void 0?lt=new Uint8Array(Le,xe):lt=new Uint8Array(Le,xe,Se),Object.setPrototypeOf(lt,T.prototype),lt}function re(Le){if(T.isBuffer(Le)){var xe=ae(Le.length)|0,Se=P(xe);return Se.length===0||Le.copy(Se,0,0,xe),Se}if(Le.length!==void 0)return typeof Le.length!="number"||Ye(Le.length)?P(0):G(Le);if(Le.type==="Buffer"&&Array.isArray(Le.data))return G(Le.data)}function ae(Le){if(Le>=M)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+M.toString(16)+" bytes");return Le|0}function _e(Le){return+Le!=Le&&(Le=0),T.alloc(+Le)}T.isBuffer=function(xe){return xe!=null&&xe._isBuffer===!0&&xe!==T.prototype},T.compare=function(xe,Se){if(Ne(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),Ne(Se,Uint8Array)&&(Se=T.from(Se,Se.offset,Se.byteLength)),!T.isBuffer(xe)||!T.isBuffer(Se))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(xe===Se)return 0;for(var lt=xe.length,Gt=Se.length,Vt=0,ar=Math.min(lt,Gt);Vt<ar;++Vt)if(xe[Vt]!==Se[Vt]){lt=xe[Vt],Gt=Se[Vt];break}return lt<Gt?-1:Gt<lt?1:0},T.isEncoding=function(xe){switch(String(xe).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},T.concat=function(xe,Se){if(!Array.isArray(xe))throw new TypeError('"list" argument must be an Array of Buffers');if(xe.length===0)return T.alloc(0);var lt;if(Se===void 0)for(Se=0,lt=0;lt<xe.length;++lt)Se+=xe[lt].length;var Gt=T.allocUnsafe(Se),Vt=0;for(lt=0;lt<xe.length;++lt){var ar=xe[lt];if(Ne(ar,Uint8Array))Vt+ar.length>Gt.length?(T.isBuffer(ar)||(ar=T.from(ar)),ar.copy(Gt,Vt)):Uint8Array.prototype.set.call(Gt,ar,Vt);else if(T.isBuffer(ar))ar.copy(Gt,Vt);else throw new TypeError('"list" argument must be an Array of Buffers');Vt+=ar.length}return Gt};function Me(Le,xe){if(T.isBuffer(Le))return Le.length;if(ArrayBuffer.isView(Le)||Ne(Le,ArrayBuffer))return Le.byteLength;if(typeof Le!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+A(Le));var Se=Le.length,lt=arguments.length>2&&arguments[2]===!0;if(!lt&&Se===0)return 0;for(var Gt=!1;;)switch(xe){case"ascii":case"latin1":case"binary":return Se;case"utf8":case"utf-8":return _r(Le).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Se*2;case"hex":return Se>>>1;case"base64":return Nr(Le).length;default:if(Gt)return lt?-1:_r(Le).length;xe=(""+xe).toLowerCase(),Gt=!0}}T.byteLength=Me;function ke(Le,xe,Se){var lt=!1;if((xe===void 0||xe<0)&&(xe=0),xe>this.length||((Se===void 0||Se>this.length)&&(Se=this.length),Se<=0)||(Se>>>=0,xe>>>=0,Se<=xe))return"";for(Le||(Le="utf8");;)switch(Le){case"hex":return rt(this,xe,Se);case"utf8":case"utf-8":return ce(this,xe,Se);case"ascii":return ct(this,xe,Se);case"latin1":case"binary":return qt(this,xe,Se);case"base64":return Re(this,xe,Se);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ot(this,xe,Se);default:if(lt)throw new TypeError("Unknown encoding: "+Le);Le=(Le+"").toLowerCase(),lt=!0}}T.prototype._isBuffer=!0;function ge(Le,xe,Se){var lt=Le[xe];Le[xe]=Le[Se],Le[Se]=lt}T.prototype.swap16=function(){var xe=this.length;if(xe%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Se=0;Se<xe;Se+=2)ge(this,Se,Se+1);return this},T.prototype.swap32=function(){var xe=this.length;if(xe%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var Se=0;Se<xe;Se+=4)ge(this,Se,Se+3),ge(this,Se+1,Se+2);return this},T.prototype.swap64=function(){var xe=this.length;if(xe%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var Se=0;Se<xe;Se+=8)ge(this,Se,Se+7),ge(this,Se+1,Se+6),ge(this,Se+2,Se+5),ge(this,Se+3,Se+4);return this},T.prototype.toString=function(){var xe=this.length;return xe===0?"":arguments.length===0?ce(this,0,xe):ke.apply(this,arguments)},T.prototype.toLocaleString=T.prototype.toString,T.prototype.equals=function(xe){if(!T.isBuffer(xe))throw new TypeError("Argument must be a Buffer");return this===xe?!0:T.compare(this,xe)===0},T.prototype.inspect=function(){var xe="",Se=a.IS;return xe=this.toString("hex",0,Se).replace(/(.{2})/g,"$1 ").trim(),this.length>Se&&(xe+=" ... "),"<Buffer "+xe+">"},C&&(T.prototype[C]=T.prototype.inspect),T.prototype.compare=function(xe,Se,lt,Gt,Vt){if(Ne(xe,Uint8Array)&&(xe=T.from(xe,xe.offset,xe.byteLength)),!T.isBuffer(xe))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+A(xe));if(Se===void 0&&(Se=0),lt===void 0&&(lt=xe?xe.length:0),Gt===void 0&&(Gt=0),Vt===void 0&&(Vt=this.length),Se<0||lt>xe.length||Gt<0||Vt>this.length)throw new RangeError("out of range index");if(Gt>=Vt&&Se>=lt)return 0;if(Gt>=Vt)return-1;if(Se>=lt)return 1;if(Se>>>=0,lt>>>=0,Gt>>>=0,Vt>>>=0,this===xe)return 0;for(var ar=Vt-Gt,Qr=lt-Se,ai=Math.min(ar,Qr),jr=this.slice(Gt,Vt),ri=xe.slice(Se,lt),bi=0;bi<ai;++bi)if(jr[bi]!==ri[bi]){ar=jr[bi],Qr=ri[bi];break}return ar<Qr?-1:Qr<ar?1:0};function ie(Le,xe,Se,lt,Gt){if(Le.length===0)return-1;if(typeof Se=="string"?(lt=Se,Se=0):Se>2147483647?Se=2147483647:Se<-2147483648&&(Se=-2147483648),Se=+Se,Ye(Se)&&(Se=Gt?0:Le.length-1),Se<0&&(Se=Le.length+Se),Se>=Le.length){if(Gt)return-1;Se=Le.length-1}else if(Se<0)if(Gt)Se=0;else return-1;if(typeof xe=="string"&&(xe=T.from(xe,lt)),T.isBuffer(xe))return xe.length===0?-1:Te(Le,xe,Se,lt,Gt);if(typeof xe=="number")return xe=xe&255,typeof Uint8Array.prototype.indexOf=="function"?Gt?Uint8Array.prototype.indexOf.call(Le,xe,Se):Uint8Array.prototype.lastIndexOf.call(Le,xe,Se):Te(Le,[xe],Se,lt,Gt);throw new TypeError("val must be string, number or Buffer")}function Te(Le,xe,Se,lt,Gt){var Vt=1,ar=Le.length,Qr=xe.length;if(lt!==void 0&&(lt=String(lt).toLowerCase(),lt==="ucs2"||lt==="ucs-2"||lt==="utf16le"||lt==="utf-16le")){if(Le.length<2||xe.length<2)return-1;Vt=2,ar/=2,Qr/=2,Se/=2}function ai(Wi,Ni){return Vt===1?Wi[Ni]:Wi.readUInt16BE(Ni*Vt)}var jr;if(Gt){var ri=-1;for(jr=Se;jr<ar;jr++)if(ai(Le,jr)===ai(xe,ri===-1?0:jr-ri)){if(ri===-1&&(ri=jr),jr-ri+1===Qr)return ri*Vt}else ri!==-1&&(jr-=jr-ri),ri=-1}else for(Se+Qr>ar&&(Se=ar-Qr),jr=Se;jr>=0;jr--){for(var bi=!0,nn=0;nn<Qr;nn++)if(ai(Le,jr+nn)!==ai(xe,nn)){bi=!1;break}if(bi)return jr}return-1}T.prototype.includes=function(xe,Se,lt){return this.indexOf(xe,Se,lt)!==-1},T.prototype.indexOf=function(xe,Se,lt){return ie(this,xe,Se,lt,!0)},T.prototype.lastIndexOf=function(xe,Se,lt){return ie(this,xe,Se,lt,!1)};function Ee(Le,xe,Se,lt){Se=Number(Se)||0;var Gt=Le.length-Se;lt?(lt=Number(lt),lt>Gt&&(lt=Gt)):lt=Gt;var Vt=xe.length;lt>Vt/2&&(lt=Vt/2);var ar;for(ar=0;ar<lt;++ar){var Qr=parseInt(xe.substr(ar*2,2),16);if(Ye(Qr))return ar;Le[Se+ar]=Qr}return ar}function Ae(Le,xe,Se,lt){return ut(_r(xe,Le.length-Se),Le,Se,lt)}function ze(Le,xe,Se,lt){return ut(Br(xe),Le,Se,lt)}function Ce(Le,xe,Se,lt){return ut(Nr(xe),Le,Se,lt)}function me(Le,xe,Se,lt){return ut(Or(xe,Le.length-Se),Le,Se,lt)}T.prototype.write=function(xe,Se,lt,Gt){if(Se===void 0)Gt="utf8",lt=this.length,Se=0;else if(lt===void 0&&typeof Se=="string")Gt=Se,lt=this.length,Se=0;else if(isFinite(Se))Se=Se>>>0,isFinite(lt)?(lt=lt>>>0,Gt===void 0&&(Gt="utf8")):(Gt=lt,lt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var Vt=this.length-Se;if((lt===void 0||lt>Vt)&&(lt=Vt),xe.length>0&&(lt<0||Se<0)||Se>this.length)throw new RangeError("Attempt to write outside buffer bounds");Gt||(Gt="utf8");for(var ar=!1;;)switch(Gt){case"hex":return Ee(this,xe,Se,lt);case"utf8":case"utf-8":return Ae(this,xe,Se,lt);case"ascii":case"latin1":case"binary":return ze(this,xe,Se,lt);case"base64":return Ce(this,xe,Se,lt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return me(this,xe,Se,lt);default:if(ar)throw new TypeError("Unknown encoding: "+Gt);Gt=(""+Gt).toLowerCase(),ar=!0}},T.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function Re(Le,xe,Se){return xe===0&&Se===Le.length?L.fromByteArray(Le):L.fromByteArray(Le.slice(xe,Se))}function ce(Le,xe,Se){Se=Math.min(Le.length,Se);for(var lt=[],Gt=xe;Gt<Se;){var Vt=Le[Gt],ar=null,Qr=Vt>239?4:Vt>223?3:Vt>191?2:1;if(Gt+Qr<=Se){var ai=void 0,jr=void 0,ri=void 0,bi=void 0;switch(Qr){case 1:Vt<128&&(ar=Vt);break;case 2:ai=Le[Gt+1],(ai&192)===128&&(bi=(Vt&31)<<6|ai&63,bi>127&&(ar=bi));break;case 3:ai=Le[Gt+1],jr=Le[Gt+2],(ai&192)===128&&(jr&192)===128&&(bi=(Vt&15)<<12|(ai&63)<<6|jr&63,bi>2047&&(bi<55296||bi>57343)&&(ar=bi));break;case 4:ai=Le[Gt+1],jr=Le[Gt+2],ri=Le[Gt+3],(ai&192)===128&&(jr&192)===128&&(ri&192)===128&&(bi=(Vt&15)<<18|(ai&63)<<12|(jr&63)<<6|ri&63,bi>65535&&bi<1114112&&(ar=bi))}}ar===null?(ar=65533,Qr=1):ar>65535&&(ar-=65536,lt.push(ar>>>10&1023|55296),ar=56320|ar&1023),lt.push(ar),Gt+=Qr}return nt(lt)}var Ge=4096;function nt(Le){var xe=Le.length;if(xe<=Ge)return String.fromCharCode.apply(String,Le);for(var Se="",lt=0;lt<xe;)Se+=String.fromCharCode.apply(String,Le.slice(lt,lt+=Ge));return Se}function ct(Le,xe,Se){var lt="";Se=Math.min(Le.length,Se);for(var Gt=xe;Gt<Se;++Gt)lt+=String.fromCharCode(Le[Gt]&127);return lt}function qt(Le,xe,Se){var lt="";Se=Math.min(Le.length,Se);for(var Gt=xe;Gt<Se;++Gt)lt+=String.fromCharCode(Le[Gt]);return lt}function rt(Le,xe,Se){var lt=Le.length;(!xe||xe<0)&&(xe=0),(!Se||Se<0||Se>lt)&&(Se=lt);for(var Gt="",Vt=xe;Vt<Se;++Vt)Gt+=Ve[Le[Vt]];return Gt}function ot(Le,xe,Se){for(var lt=Le.slice(xe,Se),Gt="",Vt=0;Vt<lt.length-1;Vt+=2)Gt+=String.fromCharCode(lt[Vt]+lt[Vt+1]*256);return Gt}T.prototype.slice=function(xe,Se){var lt=this.length;xe=~~xe,Se=Se===void 0?lt:~~Se,xe<0?(xe+=lt,xe<0&&(xe=0)):xe>lt&&(xe=lt),Se<0?(Se+=lt,Se<0&&(Se=0)):Se>lt&&(Se=lt),Se<xe&&(Se=xe);var Gt=this.subarray(xe,Se);return Object.setPrototypeOf(Gt,T.prototype),Gt};function Rt(Le,xe,Se){if(Le%1!==0||Le<0)throw new RangeError("offset is not uint");if(Le+xe>Se)throw new RangeError("Trying to access beyond buffer length")}T.prototype.readUintLE=T.prototype.readUIntLE=function(xe,Se,lt){xe=xe>>>0,Se=Se>>>0,lt||Rt(xe,Se,this.length);for(var Gt=this[xe],Vt=1,ar=0;++ar<Se&&(Vt*=256);)Gt+=this[xe+ar]*Vt;return Gt},T.prototype.readUintBE=T.prototype.readUIntBE=function(xe,Se,lt){xe=xe>>>0,Se=Se>>>0,lt||Rt(xe,Se,this.length);for(var Gt=this[xe+--Se],Vt=1;Se>0&&(Vt*=256);)Gt+=this[xe+--Se]*Vt;return Gt},T.prototype.readUint8=T.prototype.readUInt8=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,1,this.length),this[xe]},T.prototype.readUint16LE=T.prototype.readUInt16LE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,2,this.length),this[xe]|this[xe+1]<<8},T.prototype.readUint16BE=T.prototype.readUInt16BE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,2,this.length),this[xe]<<8|this[xe+1]},T.prototype.readUint32LE=T.prototype.readUInt32LE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,4,this.length),(this[xe]|this[xe+1]<<8|this[xe+2]<<16)+this[xe+3]*16777216},T.prototype.readUint32BE=T.prototype.readUInt32BE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,4,this.length),this[xe]*16777216+(this[xe+1]<<16|this[xe+2]<<8|this[xe+3])},T.prototype.readBigUInt64LE=Xe(function(xe){xe=xe>>>0,dt(xe,"offset");var Se=this[xe],lt=this[xe+7];(Se===void 0||lt===void 0)&&Ht(xe,this.length-8);var Gt=Se+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24),Vt=this[++xe]+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+lt*Math.pow(2,24);return BigInt(Gt)+(BigInt(Vt)<<BigInt(32))}),T.prototype.readBigUInt64BE=Xe(function(xe){xe=xe>>>0,dt(xe,"offset");var Se=this[xe],lt=this[xe+7];(Se===void 0||lt===void 0)&&Ht(xe,this.length-8);var Gt=Se*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe],Vt=this[++xe]*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+lt;return(BigInt(Gt)<<BigInt(32))+BigInt(Vt)}),T.prototype.readIntLE=function(xe,Se,lt){xe=xe>>>0,Se=Se>>>0,lt||Rt(xe,Se,this.length);for(var Gt=this[xe],Vt=1,ar=0;++ar<Se&&(Vt*=256);)Gt+=this[xe+ar]*Vt;return Vt*=128,Gt>=Vt&&(Gt-=Math.pow(2,8*Se)),Gt},T.prototype.readIntBE=function(xe,Se,lt){xe=xe>>>0,Se=Se>>>0,lt||Rt(xe,Se,this.length);for(var Gt=Se,Vt=1,ar=this[xe+--Gt];Gt>0&&(Vt*=256);)ar+=this[xe+--Gt]*Vt;return Vt*=128,ar>=Vt&&(ar-=Math.pow(2,8*Se)),ar},T.prototype.readInt8=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,1,this.length),this[xe]&128?(255-this[xe]+1)*-1:this[xe]},T.prototype.readInt16LE=function(xe,Se){xe=xe>>>0,Se||Rt(xe,2,this.length);var lt=this[xe]|this[xe+1]<<8;return lt&32768?lt|4294901760:lt},T.prototype.readInt16BE=function(xe,Se){xe=xe>>>0,Se||Rt(xe,2,this.length);var lt=this[xe+1]|this[xe]<<8;return lt&32768?lt|4294901760:lt},T.prototype.readInt32LE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,4,this.length),this[xe]|this[xe+1]<<8|this[xe+2]<<16|this[xe+3]<<24},T.prototype.readInt32BE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,4,this.length),this[xe]<<24|this[xe+1]<<16|this[xe+2]<<8|this[xe+3]},T.prototype.readBigInt64LE=Xe(function(xe){xe=xe>>>0,dt(xe,"offset");var Se=this[xe],lt=this[xe+7];(Se===void 0||lt===void 0)&&Ht(xe,this.length-8);var Gt=this[xe+4]+this[xe+5]*Math.pow(2,8)+this[xe+6]*Math.pow(2,16)+(lt<<24);return(BigInt(Gt)<<BigInt(32))+BigInt(Se+this[++xe]*Math.pow(2,8)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,24))}),T.prototype.readBigInt64BE=Xe(function(xe){xe=xe>>>0,dt(xe,"offset");var Se=this[xe],lt=this[xe+7];(Se===void 0||lt===void 0)&&Ht(xe,this.length-8);var Gt=(Se<<24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+this[++xe];return(BigInt(Gt)<<BigInt(32))+BigInt(this[++xe]*Math.pow(2,24)+this[++xe]*Math.pow(2,16)+this[++xe]*Math.pow(2,8)+lt)}),T.prototype.readFloatLE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,4,this.length),_.read(this,xe,!0,23,4)},T.prototype.readFloatBE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,4,this.length),_.read(this,xe,!1,23,4)},T.prototype.readDoubleLE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,8,this.length),_.read(this,xe,!0,52,8)},T.prototype.readDoubleBE=function(xe,Se){return xe=xe>>>0,Se||Rt(xe,8,this.length),_.read(this,xe,!1,52,8)};function kt(Le,xe,Se,lt,Gt,Vt){if(!T.isBuffer(Le))throw new TypeError('"buffer" argument must be a Buffer instance');if(xe>Gt||xe<Vt)throw new RangeError('"value" argument is out of bounds');if(Se+lt>Le.length)throw new RangeError("Index out of range")}T.prototype.writeUintLE=T.prototype.writeUIntLE=function(xe,Se,lt,Gt){if(xe=+xe,Se=Se>>>0,lt=lt>>>0,!Gt){var Vt=Math.pow(2,8*lt)-1;kt(this,xe,Se,lt,Vt,0)}var ar=1,Qr=0;for(this[Se]=xe&255;++Qr<lt&&(ar*=256);)this[Se+Qr]=xe/ar&255;return Se+lt},T.prototype.writeUintBE=T.prototype.writeUIntBE=function(xe,Se,lt,Gt){if(xe=+xe,Se=Se>>>0,lt=lt>>>0,!Gt){var Vt=Math.pow(2,8*lt)-1;kt(this,xe,Se,lt,Vt,0)}var ar=lt-1,Qr=1;for(this[Se+ar]=xe&255;--ar>=0&&(Qr*=256);)this[Se+ar]=xe/Qr&255;return Se+lt},T.prototype.writeUint8=T.prototype.writeUInt8=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,1,255,0),this[Se]=xe&255,Se+1},T.prototype.writeUint16LE=T.prototype.writeUInt16LE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,2,65535,0),this[Se]=xe&255,this[Se+1]=xe>>>8,Se+2},T.prototype.writeUint16BE=T.prototype.writeUInt16BE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,2,65535,0),this[Se]=xe>>>8,this[Se+1]=xe&255,Se+2},T.prototype.writeUint32LE=T.prototype.writeUInt32LE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,4,4294967295,0),this[Se+3]=xe>>>24,this[Se+2]=xe>>>16,this[Se+1]=xe>>>8,this[Se]=xe&255,Se+4},T.prototype.writeUint32BE=T.prototype.writeUInt32BE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,4,4294967295,0),this[Se]=xe>>>24,this[Se+1]=xe>>>16,this[Se+2]=xe>>>8,this[Se+3]=xe&255,Se+4};function Ct(Le,xe,Se,lt,Gt){Et(xe,lt,Gt,Le,Se,7);var Vt=Number(xe&BigInt(4294967295));Le[Se++]=Vt,Vt=Vt>>8,Le[Se++]=Vt,Vt=Vt>>8,Le[Se++]=Vt,Vt=Vt>>8,Le[Se++]=Vt;var ar=Number(xe>>BigInt(32)&BigInt(4294967295));return Le[Se++]=ar,ar=ar>>8,Le[Se++]=ar,ar=ar>>8,Le[Se++]=ar,ar=ar>>8,Le[Se++]=ar,Se}function Yt(Le,xe,Se,lt,Gt){Et(xe,lt,Gt,Le,Se,7);var Vt=Number(xe&BigInt(4294967295));Le[Se+7]=Vt,Vt=Vt>>8,Le[Se+6]=Vt,Vt=Vt>>8,Le[Se+5]=Vt,Vt=Vt>>8,Le[Se+4]=Vt;var ar=Number(xe>>BigInt(32)&BigInt(4294967295));return Le[Se+3]=ar,ar=ar>>8,Le[Se+2]=ar,ar=ar>>8,Le[Se+1]=ar,ar=ar>>8,Le[Se]=ar,Se+8}T.prototype.writeBigUInt64LE=Xe(function(xe){var Se=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Ct(this,xe,Se,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeBigUInt64BE=Xe(function(xe){var Se=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Yt(this,xe,Se,BigInt(0),BigInt("0xffffffffffffffff"))}),T.prototype.writeIntLE=function(xe,Se,lt,Gt){if(xe=+xe,Se=Se>>>0,!Gt){var Vt=Math.pow(2,8*lt-1);kt(this,xe,Se,lt,Vt-1,-Vt)}var ar=0,Qr=1,ai=0;for(this[Se]=xe&255;++ar<lt&&(Qr*=256);)xe<0&&ai===0&&this[Se+ar-1]!==0&&(ai=1),this[Se+ar]=(xe/Qr>>0)-ai&255;return Se+lt},T.prototype.writeIntBE=function(xe,Se,lt,Gt){if(xe=+xe,Se=Se>>>0,!Gt){var Vt=Math.pow(2,8*lt-1);kt(this,xe,Se,lt,Vt-1,-Vt)}var ar=lt-1,Qr=1,ai=0;for(this[Se+ar]=xe&255;--ar>=0&&(Qr*=256);)xe<0&&ai===0&&this[Se+ar+1]!==0&&(ai=1),this[Se+ar]=(xe/Qr>>0)-ai&255;return Se+lt},T.prototype.writeInt8=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,1,127,-128),xe<0&&(xe=255+xe+1),this[Se]=xe&255,Se+1},T.prototype.writeInt16LE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,2,32767,-32768),this[Se]=xe&255,this[Se+1]=xe>>>8,Se+2},T.prototype.writeInt16BE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,2,32767,-32768),this[Se]=xe>>>8,this[Se+1]=xe&255,Se+2},T.prototype.writeInt32LE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,4,2147483647,-2147483648),this[Se]=xe&255,this[Se+1]=xe>>>8,this[Se+2]=xe>>>16,this[Se+3]=xe>>>24,Se+4},T.prototype.writeInt32BE=function(xe,Se,lt){return xe=+xe,Se=Se>>>0,lt||kt(this,xe,Se,4,2147483647,-2147483648),xe<0&&(xe=4294967295+xe+1),this[Se]=xe>>>24,this[Se+1]=xe>>>16,this[Se+2]=xe>>>8,this[Se+3]=xe&255,Se+4},T.prototype.writeBigInt64LE=Xe(function(xe){var Se=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Ct(this,xe,Se,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),T.prototype.writeBigInt64BE=Xe(function(xe){var Se=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Yt(this,xe,Se,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function xr(Le,xe,Se,lt,Gt,Vt){if(Se+lt>Le.length)throw new RangeError("Index out of range");if(Se<0)throw new RangeError("Index out of range")}function er(Le,xe,Se,lt,Gt){return xe=+xe,Se=Se>>>0,Gt||xr(Le,xe,Se,4,34028234663852886e22,-34028234663852886e22),_.write(Le,xe,Se,lt,23,4),Se+4}T.prototype.writeFloatLE=function(xe,Se,lt){return er(this,xe,Se,!0,lt)},T.prototype.writeFloatBE=function(xe,Se,lt){return er(this,xe,Se,!1,lt)};function Ke(Le,xe,Se,lt,Gt){return xe=+xe,Se=Se>>>0,Gt||xr(Le,xe,Se,8,17976931348623157e292,-17976931348623157e292),_.write(Le,xe,Se,lt,52,8),Se+8}T.prototype.writeDoubleLE=function(xe,Se,lt){return Ke(this,xe,Se,!0,lt)},T.prototype.writeDoubleBE=function(xe,Se,lt){return Ke(this,xe,Se,!1,lt)},T.prototype.copy=function(xe,Se,lt,Gt){if(!T.isBuffer(xe))throw new TypeError("argument should be a Buffer");if(lt||(lt=0),!Gt&&Gt!==0&&(Gt=this.length),Se>=xe.length&&(Se=xe.length),Se||(Se=0),Gt>0&&Gt<lt&&(Gt=lt),Gt===lt||xe.length===0||this.length===0)return 0;if(Se<0)throw new RangeError("targetStart out of bounds");if(lt<0||lt>=this.length)throw new RangeError("Index out of range");if(Gt<0)throw new RangeError("sourceEnd out of bounds");Gt>this.length&&(Gt=this.length),xe.length-Se<Gt-lt&&(Gt=xe.length-Se+lt);var Vt=Gt-lt;return this===xe&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(Se,lt,Gt):Uint8Array.prototype.set.call(xe,this.subarray(lt,Gt),Se),Vt},T.prototype.fill=function(xe,Se,lt,Gt){if(typeof xe=="string"){if(typeof Se=="string"?(Gt=Se,Se=0,lt=this.length):typeof lt=="string"&&(Gt=lt,lt=this.length),Gt!==void 0&&typeof Gt!="string")throw new TypeError("encoding must be a string");if(typeof Gt=="string"&&!T.isEncoding(Gt))throw new TypeError("Unknown encoding: "+Gt);if(xe.length===1){var Vt=xe.charCodeAt(0);(Gt==="utf8"&&Vt<128||Gt==="latin1")&&(xe=Vt)}}else typeof xe=="number"?xe=xe&255:typeof xe=="boolean"&&(xe=Number(xe));if(Se<0||this.length<Se||this.length<lt)throw new RangeError("Out of range index");if(lt<=Se)return this;Se=Se>>>0,lt=lt===void 0?this.length:lt>>>0,xe||(xe=0);var ar;if(typeof xe=="number")for(ar=Se;ar<lt;++ar)this[ar]=xe;else{var Qr=T.isBuffer(xe)?xe:T.from(xe,Gt),ai=Qr.length;if(ai===0)throw new TypeError('The value "'+xe+'" is invalid for argument "value"');for(ar=0;ar<lt-Se;++ar)this[ar+Se]=Qr[ar%ai]}return this};var xt={};function bt(Le,xe,Se){xt[Le]=function(lt){function Gt(){var Vt;return l(this,Gt),Vt=d(this,Gt),Object.defineProperty(Vt,"message",{value:xe.apply(Vt,arguments),writable:!0,configurable:!0}),Vt.name="".concat(Vt.name," [").concat(Le,"]"),Vt.stack,delete Vt.name,Vt}return E(Gt,lt),c(Gt,[{key:"code",get:function(){return Le},set:function(ar){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:ar,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(Le,"]: ").concat(this.message)}}])}(Se)}bt("ERR_BUFFER_OUT_OF_BOUNDS",function(Le){return Le?"".concat(Le," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),bt("ERR_INVALID_ARG_TYPE",function(Le,xe){return'The "'.concat(Le,'" argument must be of type number. Received type ').concat(A(xe))},TypeError),bt("ERR_OUT_OF_RANGE",function(Le,xe,Se){var lt='The value of "'.concat(Le,'" is out of range.'),Gt=Se;return Number.isInteger(Se)&&Math.abs(Se)>Math.pow(2,32)?Gt=Lt(String(Se)):typeof Se=="bigint"&&(Gt=String(Se),(Se>Math.pow(BigInt(2),BigInt(32))||Se<-Math.pow(BigInt(2),BigInt(32)))&&(Gt=Lt(Gt)),Gt+="n"),lt+=" It must be ".concat(xe,". Received ").concat(Gt),lt},RangeError);function Lt(Le){for(var xe="",Se=Le.length,lt=Le[0]==="-"?1:0;Se>=lt+4;Se-=3)xe="_".concat(Le.slice(Se-3,Se)).concat(xe);return"".concat(Le.slice(0,Se)).concat(xe)}function St(Le,xe,Se){dt(xe,"offset"),(Le[xe]===void 0||Le[xe+Se]===void 0)&&Ht(xe,Le.length-(Se+1))}function Et(Le,xe,Se,lt,Gt,Vt){if(Le>Se||Le<xe){var ar=typeof xe=="bigint"?"n":"",Qr;throw Vt>3?xe===0||xe===BigInt(0)?Qr=">= 0".concat(ar," and < 2").concat(ar," ** ").concat((Vt+1)*8).concat(ar):Qr=">= -(2".concat(ar," ** ").concat((Vt+1)*8-1).concat(ar,") and < 2 ** ")+"".concat((Vt+1)*8-1).concat(ar):Qr=">= ".concat(xe).concat(ar," and <= ").concat(Se).concat(ar),new xt.ERR_OUT_OF_RANGE("value",Qr,Le)}St(lt,Gt,Vt)}function dt(Le,xe){if(typeof Le!="number")throw new xt.ERR_INVALID_ARG_TYPE(xe,"number",Le)}function Ht(Le,xe,Se){throw Math.floor(Le)!==Le?(dt(Le,Se),new xt.ERR_OUT_OF_RANGE(Se||"offset","an integer",Le)):xe<0?new xt.ERR_BUFFER_OUT_OF_BOUNDS:new xt.ERR_OUT_OF_RANGE(Se||"offset",">= ".concat(Se?1:0," and <= ").concat(xe),Le)}var $t=/[^+/0-9A-Za-z-_]/g;function fr(Le){if(Le=Le.split("=")[0],Le=Le.trim().replace($t,""),Le.length<2)return"";for(;Le.length%4!==0;)Le=Le+"=";return Le}function _r(Le,xe){xe=xe||1/0;for(var Se,lt=Le.length,Gt=null,Vt=[],ar=0;ar<lt;++ar){if(Se=Le.charCodeAt(ar),Se>55295&&Se<57344){if(!Gt){if(Se>56319){(xe-=3)>-1&&Vt.push(239,191,189);continue}else if(ar+1===lt){(xe-=3)>-1&&Vt.push(239,191,189);continue}Gt=Se;continue}if(Se<56320){(xe-=3)>-1&&Vt.push(239,191,189),Gt=Se;continue}Se=(Gt-55296<<10|Se-56320)+65536}else Gt&&(xe-=3)>-1&&Vt.push(239,191,189);if(Gt=null,Se<128){if((xe-=1)<0)break;Vt.push(Se)}else if(Se<2048){if((xe-=2)<0)break;Vt.push(Se>>6|192,Se&63|128)}else if(Se<65536){if((xe-=3)<0)break;Vt.push(Se>>12|224,Se>>6&63|128,Se&63|128)}else if(Se<1114112){if((xe-=4)<0)break;Vt.push(Se>>18|240,Se>>12&63|128,Se>>6&63|128,Se&63|128)}else throw new Error("Invalid code point")}return Vt}function Br(Le){for(var xe=[],Se=0;Se<Le.length;++Se)xe.push(Le.charCodeAt(Se)&255);return xe}function Or(Le,xe){for(var Se,lt,Gt,Vt=[],ar=0;ar<Le.length&&!((xe-=2)<0);++ar)Se=Le.charCodeAt(ar),lt=Se>>8,Gt=Se%256,Vt.push(Gt),Vt.push(lt);return Vt}function Nr(Le){return L.toByteArray(fr(Le))}function ut(Le,xe,Se,lt){var Gt;for(Gt=0;Gt<lt&&!(Gt+Se>=xe.length||Gt>=Le.length);++Gt)xe[Gt+Se]=Le[Gt];return Gt}function Ne(Le,xe){return Le instanceof xe||Le!=null&&Le.constructor!=null&&Le.constructor.name!=null&&Le.constructor.name===xe.name}function Ye(Le){return Le!==Le}var Ve=function(){for(var Le="0123456789abcdef",xe=new Array(256),Se=0;Se<16;++Se)for(var lt=Se*16,Gt=0;Gt<16;++Gt)xe[lt+Gt]=Le[Se]+Le[Gt];return xe}();function Xe(Le){return typeof BigInt=="undefined"?ht:Le}function ht(){throw new Error("BigInt not supported")}},9216:function(i){"use strict";i.exports=l,i.exports.isMobile=l,i.exports.default=l;var a=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,o=/CrOS/,s=/android|ipad|playbook|silk/i;function l(u){u||(u={});var c=u.ua;if(!c&&typeof navigator!="undefined"&&(c=navigator.userAgent),c&&c.headers&&typeof c.headers["user-agent"]=="string"&&(c=c.headers["user-agent"]),typeof c!="string")return!1;var f=a.test(c)&&!o.test(c)||!!u.tablet&&s.test(c);return!f&&u.tablet&&u.featureDetect&&navigator&&navigator.maxTouchPoints>1&&c.indexOf("Macintosh")!==-1&&c.indexOf("Safari")!==-1&&(f=!0),f}},6296:function(i,a,o){"use strict";i.exports=h;var s=o(7261),l=o(9977),u=o(1811);function c(d,v){this._controllerNames=Object.keys(d),this._controllerList=this._controllerNames.map(function(x){return d[x]}),this._mode=v,this._active=d[v],this._active||(this._mode="turntable",this._active=d.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 f=c.prototype;f.flush=function(d){for(var v=this._controllerList,x=0;x<v.length;++x)v[x].flush(d)},f.idle=function(d){for(var v=this._controllerList,x=0;x<v.length;++x)v[x].idle(d)},f.lookAt=function(d,v,x,b){for(var p=this._controllerList,E=0;E<p.length;++E)p[E].lookAt(d,v,x,b)},f.rotate=function(d,v,x,b){for(var p=this._controllerList,E=0;E<p.length;++E)p[E].rotate(d,v,x,b)},f.pan=function(d,v,x,b){for(var p=this._controllerList,E=0;E<p.length;++E)p[E].pan(d,v,x,b)},f.translate=function(d,v,x,b){for(var p=this._controllerList,E=0;E<p.length;++E)p[E].translate(d,v,x,b)},f.setMatrix=function(d,v){for(var x=this._controllerList,b=0;b<x.length;++b)x[b].setMatrix(d,v)},f.setDistanceLimits=function(d,v){for(var x=this._controllerList,b=0;b<x.length;++b)x[b].setDistanceLimits(d,v)},f.setDistance=function(d,v){for(var x=this._controllerList,b=0;b<x.length;++b)x[b].setDistance(d,v)},f.recalcMatrix=function(d){this._active.recalcMatrix(d)},f.getDistance=function(d){return this._active.getDistance(d)},f.getDistanceLimits=function(d){return this._active.getDistanceLimits(d)},f.lastT=function(){return this._active.lastT()},f.setMode=function(d){if(d!==this._mode){var v=this._controllerNames.indexOf(d);if(!(v<0)){var x=this._active,b=this._controllerList[v],p=Math.max(x.lastT(),b.lastT());x.recalcMatrix(p),b.setMatrix(p,x.computedMatrix),this._active=b,this._mode=d,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}}},f.getMode=function(){return this._mode};function h(d){d=d||{};var v=d.eye||[0,0,1],x=d.center||[0,0,0],b=d.up||[0,1,0],p=d.distanceLimits||[0,1/0],E=d.mode||"turntable",k=s(),A=l(),L=u();return k.setDistanceLimits(p[0],p[1]),k.lookAt(0,v,x,b),A.setDistanceLimits(p[0],p[1]),A.lookAt(0,v,x,b),L.setDistanceLimits(p[0],p[1]),L.lookAt(0,v,x,b),new c({turntable:k,orbit:A,matrix:L},E)}},7169:function(i,a,o){"use strict";var s=typeof WeakMap=="undefined"?o(1538):WeakMap,l=o(2762),u=o(8116),c=new s;function f(h){var d=c.get(h),v=d&&(d._triangleBuffer.handle||d._triangleBuffer.buffer);if(!v||!h.isBuffer(v)){var x=l(h,new Float32Array([-1,-1,-1,4,4,-1]));d=u(h,[{buffer:x,type:h.FLOAT,size:2}]),d._triangleBuffer=x,c.set(h,d)}d.bind(),h.drawArrays(h.TRIANGLES,0,3),d.unbind()}i.exports=f},1085:function(i,a,o){var s=o(1371);i.exports=l;function l(u,c,f){c=typeof c=="number"?c:1,f=f||": ";var h=u.split(/\r?\n/),d=String(h.length+c-1).length;return h.map(function(v,x){var b=x+c,p=String(b).length,E=s(b,d-p);return E+f+v}).join(`
+`)}},3952:function(i,a,o){"use strict";i.exports=u;var s=o(3250);function l(c,f){for(var h=new Array(f+1),d=0;d<c.length;++d)h[d]=c[d];for(var d=0;d<=c.length;++d){for(var v=c.length;v<=f;++v){for(var x=new Array(f),b=0;b<f;++b)x[b]=Math.pow(v+1-d,b);h[v]=x}var p=s.apply(void 0,h);if(p)return!0}return!1}function u(c){var f=c.length;if(f===0)return[];if(f===1)return[0];for(var h=c[0].length,d=[c[0]],v=[0],x=1;x<f;++x){if(d.push(c[x]),!l(d,h)){d.pop();continue}if(v.push(x),v.length===h+1)return v}return v}},5995:function(i,a,o){"use strict";i.exports=u;var s=o(7642),l=o(6037);function u(c,f){return s(f).filter(function(h){for(var d=new Array(h.length),v=0;v<h.length;++v)d[v]=f[h[v]];return l(d)*c<1})}},3502:function(i,a,o){i.exports=u;var s=o(5995),l=o(9127);function u(c,f){return l(s(c,f))}},6468:function(i){i.exports=function(o){return atob(o)}},2642:function(i,a,o){"use strict";i.exports=u;var s=o(727);function l(c){for(var f=0,h=0;h<c.length;++h)f+=c[h];return f}function u(c,f){for(var h=f.length,d=new Array(h+1),v=0;v<h;++v){for(var x=new Array(h+1),b=0;b<=h;++b)x[b]=c[b][v];d[v]=x}d[h]=new Array(h+1);for(var v=0;v<=h;++v)d[h][v]=1;for(var p=new Array(h+1),v=0;v<h;++v)p[v]=f[v];p[h]=1;var E=s(d,p),k=l(E[h+1]);k===0&&(k=1);for(var A=new Array(h+1),v=0;v<=h;++v)A[v]=l(E[v])/k;return A}},7507:function(i,a){"use strict";a.byteLength=d,a.toByteArray=x,a.fromByteArray=E;for(var o=[],s=[],l=typeof Uint8Array!="undefined"?Uint8Array:Array,u="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",c=0,f=u.length;c<f;++c)o[c]=u[c],s[u.charCodeAt(c)]=c;s[45]=62,s[95]=63;function h(k){var A=k.length;if(A%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var L=k.indexOf("=");L===-1&&(L=A);var _=L===A?0:4-L%4;return[L,_]}function d(k){var A=h(k),L=A[0],_=A[1];return(L+_)*3/4-_}function v(k,A,L){return(A+L)*3/4-L}function x(k){var A,L=h(k),_=L[0],C=L[1],M=new l(v(k,_,C)),g=0,P=C>0?_-4:_,T;for(T=0;T<P;T+=4)A=s[k.charCodeAt(T)]<<18|s[k.charCodeAt(T+1)]<<12|s[k.charCodeAt(T+2)]<<6|s[k.charCodeAt(T+3)],M[g++]=A>>16&255,M[g++]=A>>8&255,M[g++]=A&255;return C===2&&(A=s[k.charCodeAt(T)]<<2|s[k.charCodeAt(T+1)]>>4,M[g++]=A&255),C===1&&(A=s[k.charCodeAt(T)]<<10|s[k.charCodeAt(T+1)]<<4|s[k.charCodeAt(T+2)]>>2,M[g++]=A>>8&255,M[g++]=A&255),M}function b(k){return o[k>>18&63]+o[k>>12&63]+o[k>>6&63]+o[k&63]}function p(k,A,L){for(var _,C=[],M=A;M<L;M+=3)_=(k[M]<<16&16711680)+(k[M+1]<<8&65280)+(k[M+2]&255),C.push(b(_));return C.join("")}function E(k){for(var A,L=k.length,_=L%3,C=[],M=16383,g=0,P=L-_;g<P;g+=M)C.push(p(k,g,g+M>P?P:g+M));return _===1?(A=k[L-1],C.push(o[A>>2]+o[A<<4&63]+"==")):_===2&&(A=(k[L-2]<<8)+k[L-1],C.push(o[A>>10]+o[A>>4&63]+o[A<<2&63]+"=")),C.join("")}},3865:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]).add(c[0].mul(u[1])),u[1].mul(c[1]))}},1318:function(i){"use strict";i.exports=a;function a(o,s){return o[0].mul(s[1]).cmp(s[0].mul(o[1]))}},8697:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]),u[1].mul(c[0]))}},7842:function(i,a,o){"use strict";var s=o(6330),l=o(1533),u=o(2651),c=o(6768),f=o(869),h=o(8697);i.exports=d;function d(v,x){if(s(v))return x?h(v,d(x)):[v[0].clone(),v[1].clone()];var b=0,p,E;if(l(v))p=v.clone();else if(typeof v=="string")p=c(v);else{if(v===0)return[u(0),u(1)];if(v===Math.floor(v))p=u(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),b-=256;p=u(v)}}if(s(x))p.mul(x[1]),E=x[0].clone();else if(l(x))E=x.clone();else if(typeof x=="string")E=c(x);else if(!x)E=u(1);else if(x===Math.floor(x))E=u(x);else{for(;x!==Math.floor(x);)x=x*Math.pow(2,256),b+=256;E=u(x)}return b>0?p=p.ushln(b):b<0&&(E=E.ushln(-b)),f(p,E)}},6330:function(i,a,o){"use strict";var s=o(1533);i.exports=l;function l(u){return Array.isArray(u)&&u.length===2&&s(u[0])&&s(u[1])}},5716:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return u.cmp(new s(0))}},1369:function(i,a,o){"use strict";var s=o(5716);i.exports=l;function l(u){var c=u.length,f=u.words,h=0;if(c===1)h=f[0];else if(c===2)h=f[0]+f[1]*67108864;else for(var d=0;d<c;d++){var v=f[d];h+=v*Math.pow(67108864,d)}return s(u)*h}},4025:function(i,a,o){"use strict";var s=o(2361),l=o(8828).countTrailingZeros;i.exports=u;function u(c){var f=l(s.lo(c));if(f<32)return f;var h=l(s.hi(c));return h>20?52:h+32}},1533:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return u&&typeof u=="object"&&!!u.words}},2651:function(i,a,o){"use strict";var s=o(6859),l=o(2361);i.exports=u;function u(c){var f=l.exponent(c);return f<52?new s(c):new s(c*Math.pow(2,52-f)).ushln(f-52)}},869:function(i,a,o){"use strict";var s=o(2651),l=o(5716);i.exports=u;function u(c,f){var h=l(c),d=l(f);if(h===0)return[s(0),s(1)];if(d===0)return[s(0),s(0)];d<0&&(c=c.neg(),f=f.neg());var v=c.gcd(f);return v.cmpn(1)?[c.div(v),f.div(v)]:[c,f]}},6768:function(i,a,o){"use strict";var s=o(6859);i.exports=l;function l(u){return new s(u)}},6504:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[0]),u[1].mul(c[1]))}},7721:function(i,a,o){"use strict";var s=o(5716);i.exports=l;function l(u){return s(u[0])*s(u[1])}},5572:function(i,a,o){"use strict";var s=o(869);i.exports=l;function l(u,c){return s(u[0].mul(c[1]).sub(u[1].mul(c[0])),u[1].mul(c[1]))}},946:function(i,a,o){"use strict";var s=o(1369),l=o(4025);i.exports=u;function u(c){var f=c[0],h=c[1];if(f.cmpn(0)===0)return 0;var d=f.abs().divmod(h.abs()),v=d.div,x=s(v),b=d.mod,p=f.negative!==h.negative?-1:1;if(b.cmpn(0)===0)return p*x;if(x){var E=l(x)+4,k=s(b.ushln(E).divRound(h));return p*(x+k*Math.pow(2,-E))}else{var A=h.bitLength()-b.bitLength()+53,k=s(b.ushln(A).divRound(h));return A<1023?p*k*Math.pow(2,-A):(k*=Math.pow(2,-1023),p*k*Math.pow(2,1023-A))}}},2478:function(i){"use strict";function a(f,h,d,v,x){for(var b=x+1;v<=x;){var p=v+x>>>1,E=f[p],k=d!==void 0?d(E,h):E-h;k>=0?(b=p,x=p-1):v=p+1}return b}function o(f,h,d,v,x){for(var b=x+1;v<=x;){var p=v+x>>>1,E=f[p],k=d!==void 0?d(E,h):E-h;k>0?(b=p,x=p-1):v=p+1}return b}function s(f,h,d,v,x){for(var b=v-1;v<=x;){var p=v+x>>>1,E=f[p],k=d!==void 0?d(E,h):E-h;k<0?(b=p,v=p+1):x=p-1}return b}function l(f,h,d,v,x){for(var b=v-1;v<=x;){var p=v+x>>>1,E=f[p],k=d!==void 0?d(E,h):E-h;k<=0?(b=p,v=p+1):x=p-1}return b}function u(f,h,d,v,x){for(;v<=x;){var b=v+x>>>1,p=f[b],E=d!==void 0?d(p,h):p-h;if(E===0)return b;E<=0?v=b+1:x=b-1}return-1}function c(f,h,d,v,x,b){return typeof d=="function"?b(f,h,d,v===void 0?0:v|0,x===void 0?f.length-1:x|0):b(f,h,void 0,d===void 0?0:d|0,v===void 0?f.length-1:v|0)}i.exports={ge:function(f,h,d,v,x){return c(f,h,d,v,x,a)},gt:function(f,h,d,v,x){return c(f,h,d,v,x,o)},lt:function(f,h,d,v,x){return c(f,h,d,v,x,s)},le:function(f,h,d,v,x){return c(f,h,d,v,x,l)},eq:function(f,h,d,v,x){return c(f,h,d,v,x,u)}}},8828:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<<o-1,a.sign=function(u){return(u>0)-(u<0)},a.abs=function(u){var c=u>>o-1;return(u^c)-c},a.min=function(u,c){return c^(u^c)&-(u<c)},a.max=function(u,c){return u^(u^c)&-(u<c)},a.isPow2=function(u){return!(u&u-1)&&!!u},a.log2=function(u){var c,f;return c=(u>65535)<<4,u>>>=c,f=(u>255)<<3,u>>>=f,c|=f,f=(u>15)<<2,u>>>=f,c|=f,f=(u>3)<<1,u>>>=f,c|=f,c|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var c=32;return u&=-u,u&&c--,u&65535&&(c-=16),u&16711935&&(c-=8),u&252645135&&(c-=4),u&858993459&&(c-=2),u&1431655765&&(c-=1),c}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var c=0;c<256;++c){var f=c,h=c,d=7;for(f>>>=1;f;f>>>=1)h<<=1,h|=f&1,--d;u[c]=h<<d&255}})(l),a.reverse=function(u){return l[u&255]<<24|l[u>>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,c){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,c&=65535,c=(c|c<<8)&16711935,c=(c|c<<4)&252645135,c=(c|c<<2)&858993459,c=(c|c<<1)&1431655765,u|c<<1},a.deinterleave2=function(u,c){return u=u>>>c&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,c,f){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|=c<<1,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|f<<2},a.deinterleave3=function(u,c){return u=u>>>c&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var c=u|u-1;return c+1|(~c&-~c)-1>>>s(u)+1}},6859:function(i,a,o){i=o.nmd(i),function(s,l){"use strict";function u(G,N){if(!G)throw new Error(N||"Assertion failed")}function c(G,N){G.super_=N;var W=function(){};W.prototype=N.prototype,G.prototype=new W,G.prototype.constructor=G}function f(G,N,W){if(f.isBN(G))return G;this.negative=0,this.words=null,this.length=0,this.red=null,G!==null&&((N==="le"||N==="be")&&(W=N,N=10),this._init(G||0,N||10,W||"be"))}typeof s=="object"?s.exports=f:l.BN=f,f.BN=f,f.wordSize=26;var h;try{typeof window!="undefined"&&typeof window.Buffer!="undefined"?h=window.Buffer:h=o(7790).Buffer}catch(G){}f.isBN=function(N){return N instanceof f?!0:N!==null&&typeof N=="object"&&N.constructor.wordSize===f.wordSize&&Array.isArray(N.words)},f.max=function(N,W){return N.cmp(W)>0?N:W},f.min=function(N,W){return N.cmp(W)<0?N:W},f.prototype._init=function(N,W,re){if(typeof N=="number")return this._initNumber(N,W,re);if(typeof N=="object")return this._initArray(N,W,re);W==="hex"&&(W=16),u(W===(W|0)&&W>=2&&W<=36),N=N.toString().replace(/\s+/g,"");var ae=0;N[0]==="-"&&(ae++,this.negative=1),ae<N.length&&(W===16?this._parseHex(N,ae,re):(this._parseBase(N,W,ae),re==="le"&&this._initArray(this.toArray(),W,re)))},f.prototype._initNumber=function(N,W,re){N<0&&(this.negative=1,N=-N),N<67108864?(this.words=[N&67108863],this.length=1):N<4503599627370496?(this.words=[N&67108863,N/67108864&67108863],this.length=2):(u(N<9007199254740992),this.words=[N&67108863,N/67108864&67108863,1],this.length=3),re==="le"&&this._initArray(this.toArray(),W,re)},f.prototype._initArray=function(N,W,re){if(u(typeof N.length=="number"),N.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(N.length/3),this.words=new Array(this.length);for(var ae=0;ae<this.length;ae++)this.words[ae]=0;var _e,Me,ke=0;if(re==="be")for(ae=N.length-1,_e=0;ae>=0;ae-=3)Me=N[ae]|N[ae-1]<<8|N[ae-2]<<16,this.words[_e]|=Me<<ke&67108863,this.words[_e+1]=Me>>>26-ke&67108863,ke+=24,ke>=26&&(ke-=26,_e++);else if(re==="le")for(ae=0,_e=0;ae<N.length;ae+=3)Me=N[ae]|N[ae+1]<<8|N[ae+2]<<16,this.words[_e]|=Me<<ke&67108863,this.words[_e+1]=Me>>>26-ke&67108863,ke+=24,ke>=26&&(ke-=26,_e++);return this.strip()};function d(G,N){var W=G.charCodeAt(N);return W>=65&&W<=70?W-55:W>=97&&W<=102?W-87:W-48&15}function v(G,N,W){var re=d(G,W);return W-1>=N&&(re|=d(G,W-1)<<4),re}f.prototype._parseHex=function(N,W,re){this.length=Math.ceil((N.length-W)/6),this.words=new Array(this.length);for(var ae=0;ae<this.length;ae++)this.words[ae]=0;var _e=0,Me=0,ke;if(re==="be")for(ae=N.length-1;ae>=W;ae-=2)ke=v(N,W,ae)<<_e,this.words[Me]|=ke&67108863,_e>=18?(_e-=18,Me+=1,this.words[Me]|=ke>>>26):_e+=8;else{var ge=N.length-W;for(ae=ge%2===0?W+1:W;ae<N.length;ae+=2)ke=v(N,W,ae)<<_e,this.words[Me]|=ke&67108863,_e>=18?(_e-=18,Me+=1,this.words[Me]|=ke>>>26):_e+=8}this.strip()};function x(G,N,W,re){for(var ae=0,_e=Math.min(G.length,W),Me=N;Me<_e;Me++){var ke=G.charCodeAt(Me)-48;ae*=re,ke>=49?ae+=ke-49+10:ke>=17?ae+=ke-17+10:ae+=ke}return ae}f.prototype._parseBase=function(N,W,re){this.words=[0],this.length=1;for(var ae=0,_e=1;_e<=67108863;_e*=W)ae++;ae--,_e=_e/W|0;for(var Me=N.length-re,ke=Me%ae,ge=Math.min(Me,Me-ke)+re,ie=0,Te=re;Te<ge;Te+=ae)ie=x(N,Te,Te+ae,W),this.imuln(_e),this.words[0]+ie<67108864?this.words[0]+=ie:this._iaddn(ie);if(ke!==0){var Ee=1;for(ie=x(N,Te,N.length,W),Te=0;Te<ke;Te++)Ee*=W;this.imuln(Ee),this.words[0]+ie<67108864?this.words[0]+=ie:this._iaddn(ie)}this.strip()},f.prototype.copy=function(N){N.words=new Array(this.length);for(var W=0;W<this.length;W++)N.words[W]=this.words[W];N.length=this.length,N.negative=this.negative,N.red=this.red},f.prototype.clone=function(){var N=new f(null);return this.copy(N),N},f.prototype._expand=function(N){for(;this.length<N;)this.words[this.length++]=0;return this},f.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},f.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},f.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var b=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],p=[0,0,25,16,12,11,10,9,8,8,7,7,7,7,6,6,6,6,6,6,6,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5],E=[0,0,33554432,43046721,16777216,48828125,60466176,40353607,16777216,43046721,1e7,19487171,35831808,62748517,7529536,11390625,16777216,24137569,34012224,47045881,64e6,4084101,5153632,6436343,7962624,9765625,11881376,14348907,17210368,20511149,243e5,28629151,33554432,39135393,45435424,52521875,60466176];f.prototype.toString=function(N,W){N=N||10,W=W|0||1;var re;if(N===16||N==="hex"){re="";for(var ae=0,_e=0,Me=0;Me<this.length;Me++){var ke=this.words[Me],ge=((ke<<ae|_e)&16777215).toString(16);_e=ke>>>24-ae&16777215,_e!==0||Me!==this.length-1?re=b[6-ge.length]+ge+re:re=ge+re,ae+=2,ae>=26&&(ae-=26,Me--)}for(_e!==0&&(re=_e.toString(16)+re);re.length%W!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}if(N===(N|0)&&N>=2&&N<=36){var ie=p[N],Te=E[N];re="";var Ee=this.clone();for(Ee.negative=0;!Ee.isZero();){var Ae=Ee.modn(Te).toString(N);Ee=Ee.idivn(Te),Ee.isZero()?re=Ae+re:re=b[ie-Ae.length]+Ae+re}for(this.isZero()&&(re="0"+re);re.length%W!==0;)re="0"+re;return this.negative!==0&&(re="-"+re),re}u(!1,"Base should be between 2 and 36")},f.prototype.toNumber=function(){var N=this.words[0];return this.length===2?N+=this.words[1]*67108864:this.length===3&&this.words[2]===1?N+=4503599627370496+this.words[1]*67108864:this.length>2&&u(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-N:N},f.prototype.toJSON=function(){return this.toString(16)},f.prototype.toBuffer=function(N,W){return u(typeof h!="undefined"),this.toArrayLike(h,N,W)},f.prototype.toArray=function(N,W){return this.toArrayLike(Array,N,W)},f.prototype.toArrayLike=function(N,W,re){var ae=this.byteLength(),_e=re||Math.max(1,ae);u(ae<=_e,"byte array longer than desired length"),u(_e>0,"Requested array length <= 0"),this.strip();var Me=W==="le",ke=new N(_e),ge,ie,Te=this.clone();if(Me){for(ie=0;!Te.isZero();ie++)ge=Te.andln(255),Te.iushrn(8),ke[ie]=ge;for(;ie<_e;ie++)ke[ie]=0}else{for(ie=0;ie<_e-ae;ie++)ke[ie]=0;for(ie=0;!Te.isZero();ie++)ge=Te.andln(255),Te.iushrn(8),ke[_e-ie-1]=ge}return ke},Math.clz32?f.prototype._countBits=function(N){return 32-Math.clz32(N)}:f.prototype._countBits=function(N){var W=N,re=0;return W>=4096&&(re+=13,W>>>=13),W>=64&&(re+=7,W>>>=7),W>=8&&(re+=4,W>>>=4),W>=2&&(re+=2,W>>>=2),re+W},f.prototype._zeroBits=function(N){if(N===0)return 26;var W=N,re=0;return W&8191||(re+=13,W>>>=13),W&127||(re+=7,W>>>=7),W&15||(re+=4,W>>>=4),W&3||(re+=2,W>>>=2),W&1||re++,re},f.prototype.bitLength=function(){var N=this.words[this.length-1],W=this._countBits(N);return(this.length-1)*26+W};function k(G){for(var N=new Array(G.bitLength()),W=0;W<N.length;W++){var re=W/26|0,ae=W%26;N[W]=(G.words[re]&1<<ae)>>>ae}return N}f.prototype.zeroBits=function(){if(this.isZero())return 0;for(var N=0,W=0;W<this.length;W++){var re=this._zeroBits(this.words[W]);if(N+=re,re!==26)break}return N},f.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},f.prototype.toTwos=function(N){return this.negative!==0?this.abs().inotn(N).iaddn(1):this.clone()},f.prototype.fromTwos=function(N){return this.testn(N-1)?this.notn(N).iaddn(1).ineg():this.clone()},f.prototype.isNeg=function(){return this.negative!==0},f.prototype.neg=function(){return this.clone().ineg()},f.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},f.prototype.iuor=function(N){for(;this.length<N.length;)this.words[this.length++]=0;for(var W=0;W<N.length;W++)this.words[W]=this.words[W]|N.words[W];return this.strip()},f.prototype.ior=function(N){return u((this.negative|N.negative)===0),this.iuor(N)},f.prototype.or=function(N){return this.length>N.length?this.clone().ior(N):N.clone().ior(this)},f.prototype.uor=function(N){return this.length>N.length?this.clone().iuor(N):N.clone().iuor(this)},f.prototype.iuand=function(N){var W;this.length>N.length?W=N:W=this;for(var re=0;re<W.length;re++)this.words[re]=this.words[re]&N.words[re];return this.length=W.length,this.strip()},f.prototype.iand=function(N){return u((this.negative|N.negative)===0),this.iuand(N)},f.prototype.and=function(N){return this.length>N.length?this.clone().iand(N):N.clone().iand(this)},f.prototype.uand=function(N){return this.length>N.length?this.clone().iuand(N):N.clone().iuand(this)},f.prototype.iuxor=function(N){var W,re;this.length>N.length?(W=this,re=N):(W=N,re=this);for(var ae=0;ae<re.length;ae++)this.words[ae]=W.words[ae]^re.words[ae];if(this!==W)for(;ae<W.length;ae++)this.words[ae]=W.words[ae];return this.length=W.length,this.strip()},f.prototype.ixor=function(N){return u((this.negative|N.negative)===0),this.iuxor(N)},f.prototype.xor=function(N){return this.length>N.length?this.clone().ixor(N):N.clone().ixor(this)},f.prototype.uxor=function(N){return this.length>N.length?this.clone().iuxor(N):N.clone().iuxor(this)},f.prototype.inotn=function(N){u(typeof N=="number"&&N>=0);var W=Math.ceil(N/26)|0,re=N%26;this._expand(W),re>0&&W--;for(var ae=0;ae<W;ae++)this.words[ae]=~this.words[ae]&67108863;return re>0&&(this.words[ae]=~this.words[ae]&67108863>>26-re),this.strip()},f.prototype.notn=function(N){return this.clone().inotn(N)},f.prototype.setn=function(N,W){u(typeof N=="number"&&N>=0);var re=N/26|0,ae=N%26;return this._expand(re+1),W?this.words[re]=this.words[re]|1<<ae:this.words[re]=this.words[re]&~(1<<ae),this.strip()},f.prototype.iadd=function(N){var W;if(this.negative!==0&&N.negative===0)return this.negative=0,W=this.isub(N),this.negative^=1,this._normSign();if(this.negative===0&&N.negative!==0)return N.negative=0,W=this.isub(N),N.negative=1,W._normSign();var re,ae;this.length>N.length?(re=this,ae=N):(re=N,ae=this);for(var _e=0,Me=0;Me<ae.length;Me++)W=(re.words[Me]|0)+(ae.words[Me]|0)+_e,this.words[Me]=W&67108863,_e=W>>>26;for(;_e!==0&&Me<re.length;Me++)W=(re.words[Me]|0)+_e,this.words[Me]=W&67108863,_e=W>>>26;if(this.length=re.length,_e!==0)this.words[this.length]=_e,this.length++;else if(re!==this)for(;Me<re.length;Me++)this.words[Me]=re.words[Me];return this},f.prototype.add=function(N){var W;return N.negative!==0&&this.negative===0?(N.negative=0,W=this.sub(N),N.negative^=1,W):N.negative===0&&this.negative!==0?(this.negative=0,W=N.sub(this),this.negative=1,W):this.length>N.length?this.clone().iadd(N):N.clone().iadd(this)},f.prototype.isub=function(N){if(N.negative!==0){N.negative=0;var W=this.iadd(N);return N.negative=1,W._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(N),this.negative=1,this._normSign();var re=this.cmp(N);if(re===0)return this.negative=0,this.length=1,this.words[0]=0,this;var ae,_e;re>0?(ae=this,_e=N):(ae=N,_e=this);for(var Me=0,ke=0;ke<_e.length;ke++)W=(ae.words[ke]|0)-(_e.words[ke]|0)+Me,Me=W>>26,this.words[ke]=W&67108863;for(;Me!==0&&ke<ae.length;ke++)W=(ae.words[ke]|0)+Me,Me=W>>26,this.words[ke]=W&67108863;if(Me===0&&ke<ae.length&&ae!==this)for(;ke<ae.length;ke++)this.words[ke]=ae.words[ke];return this.length=Math.max(this.length,ke),ae!==this&&(this.negative=1),this.strip()},f.prototype.sub=function(N){return this.clone().isub(N)};function A(G,N,W){W.negative=N.negative^G.negative;var re=G.length+N.length|0;W.length=re,re=re-1|0;var ae=G.words[0]|0,_e=N.words[0]|0,Me=ae*_e,ke=Me&67108863,ge=Me/67108864|0;W.words[0]=ke;for(var ie=1;ie<re;ie++){for(var Te=ge>>>26,Ee=ge&67108863,Ae=Math.min(ie,N.length-1),ze=Math.max(0,ie-G.length+1);ze<=Ae;ze++){var Ce=ie-ze|0;ae=G.words[Ce]|0,_e=N.words[ze]|0,Me=ae*_e+Ee,Te+=Me/67108864|0,Ee=Me&67108863}W.words[ie]=Ee|0,ge=Te|0}return ge!==0?W.words[ie]=ge|0:W.length--,W.strip()}var L=function(N,W,re){var ae=N.words,_e=W.words,Me=re.words,ke=0,ge,ie,Te,Ee=ae[0]|0,Ae=Ee&8191,ze=Ee>>>13,Ce=ae[1]|0,me=Ce&8191,Re=Ce>>>13,ce=ae[2]|0,Ge=ce&8191,nt=ce>>>13,ct=ae[3]|0,qt=ct&8191,rt=ct>>>13,ot=ae[4]|0,Rt=ot&8191,kt=ot>>>13,Ct=ae[5]|0,Yt=Ct&8191,xr=Ct>>>13,er=ae[6]|0,Ke=er&8191,xt=er>>>13,bt=ae[7]|0,Lt=bt&8191,St=bt>>>13,Et=ae[8]|0,dt=Et&8191,Ht=Et>>>13,$t=ae[9]|0,fr=$t&8191,_r=$t>>>13,Br=_e[0]|0,Or=Br&8191,Nr=Br>>>13,ut=_e[1]|0,Ne=ut&8191,Ye=ut>>>13,Ve=_e[2]|0,Xe=Ve&8191,ht=Ve>>>13,Le=_e[3]|0,xe=Le&8191,Se=Le>>>13,lt=_e[4]|0,Gt=lt&8191,Vt=lt>>>13,ar=_e[5]|0,Qr=ar&8191,ai=ar>>>13,jr=_e[6]|0,ri=jr&8191,bi=jr>>>13,nn=_e[7]|0,Wi=nn&8191,Ni=nn>>>13,_n=_e[8]|0,$i=_n&8191,zn=_n>>>13,Wn=_e[9]|0,It=Wn&8191,ft=Wn>>>13;re.negative=N.negative^W.negative,re.length=19,ge=Math.imul(Ae,Or),ie=Math.imul(Ae,Nr),ie=ie+Math.imul(ze,Or)|0,Te=Math.imul(ze,Nr);var jt=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(jt>>>26)|0,jt&=67108863,ge=Math.imul(me,Or),ie=Math.imul(me,Nr),ie=ie+Math.imul(Re,Or)|0,Te=Math.imul(Re,Nr),ge=ge+Math.imul(Ae,Ne)|0,ie=ie+Math.imul(Ae,Ye)|0,ie=ie+Math.imul(ze,Ne)|0,Te=Te+Math.imul(ze,Ye)|0;var Zt=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Zt>>>26)|0,Zt&=67108863,ge=Math.imul(Ge,Or),ie=Math.imul(Ge,Nr),ie=ie+Math.imul(nt,Or)|0,Te=Math.imul(nt,Nr),ge=ge+Math.imul(me,Ne)|0,ie=ie+Math.imul(me,Ye)|0,ie=ie+Math.imul(Re,Ne)|0,Te=Te+Math.imul(Re,Ye)|0,ge=ge+Math.imul(Ae,Xe)|0,ie=ie+Math.imul(Ae,ht)|0,ie=ie+Math.imul(ze,Xe)|0,Te=Te+Math.imul(ze,ht)|0;var yr=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(yr>>>26)|0,yr&=67108863,ge=Math.imul(qt,Or),ie=Math.imul(qt,Nr),ie=ie+Math.imul(rt,Or)|0,Te=Math.imul(rt,Nr),ge=ge+Math.imul(Ge,Ne)|0,ie=ie+Math.imul(Ge,Ye)|0,ie=ie+Math.imul(nt,Ne)|0,Te=Te+Math.imul(nt,Ye)|0,ge=ge+Math.imul(me,Xe)|0,ie=ie+Math.imul(me,ht)|0,ie=ie+Math.imul(Re,Xe)|0,Te=Te+Math.imul(Re,ht)|0,ge=ge+Math.imul(Ae,xe)|0,ie=ie+Math.imul(Ae,Se)|0,ie=ie+Math.imul(ze,xe)|0,Te=Te+Math.imul(ze,Se)|0;var Fr=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Fr>>>26)|0,Fr&=67108863,ge=Math.imul(Rt,Or),ie=Math.imul(Rt,Nr),ie=ie+Math.imul(kt,Or)|0,Te=Math.imul(kt,Nr),ge=ge+Math.imul(qt,Ne)|0,ie=ie+Math.imul(qt,Ye)|0,ie=ie+Math.imul(rt,Ne)|0,Te=Te+Math.imul(rt,Ye)|0,ge=ge+Math.imul(Ge,Xe)|0,ie=ie+Math.imul(Ge,ht)|0,ie=ie+Math.imul(nt,Xe)|0,Te=Te+Math.imul(nt,ht)|0,ge=ge+Math.imul(me,xe)|0,ie=ie+Math.imul(me,Se)|0,ie=ie+Math.imul(Re,xe)|0,Te=Te+Math.imul(Re,Se)|0,ge=ge+Math.imul(Ae,Gt)|0,ie=ie+Math.imul(Ae,Vt)|0,ie=ie+Math.imul(ze,Gt)|0,Te=Te+Math.imul(ze,Vt)|0;var Zr=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,ge=Math.imul(Yt,Or),ie=Math.imul(Yt,Nr),ie=ie+Math.imul(xr,Or)|0,Te=Math.imul(xr,Nr),ge=ge+Math.imul(Rt,Ne)|0,ie=ie+Math.imul(Rt,Ye)|0,ie=ie+Math.imul(kt,Ne)|0,Te=Te+Math.imul(kt,Ye)|0,ge=ge+Math.imul(qt,Xe)|0,ie=ie+Math.imul(qt,ht)|0,ie=ie+Math.imul(rt,Xe)|0,Te=Te+Math.imul(rt,ht)|0,ge=ge+Math.imul(Ge,xe)|0,ie=ie+Math.imul(Ge,Se)|0,ie=ie+Math.imul(nt,xe)|0,Te=Te+Math.imul(nt,Se)|0,ge=ge+Math.imul(me,Gt)|0,ie=ie+Math.imul(me,Vt)|0,ie=ie+Math.imul(Re,Gt)|0,Te=Te+Math.imul(Re,Vt)|0,ge=ge+Math.imul(Ae,Qr)|0,ie=ie+Math.imul(Ae,ai)|0,ie=ie+Math.imul(ze,Qr)|0,Te=Te+Math.imul(ze,ai)|0;var Vr=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Vr>>>26)|0,Vr&=67108863,ge=Math.imul(Ke,Or),ie=Math.imul(Ke,Nr),ie=ie+Math.imul(xt,Or)|0,Te=Math.imul(xt,Nr),ge=ge+Math.imul(Yt,Ne)|0,ie=ie+Math.imul(Yt,Ye)|0,ie=ie+Math.imul(xr,Ne)|0,Te=Te+Math.imul(xr,Ye)|0,ge=ge+Math.imul(Rt,Xe)|0,ie=ie+Math.imul(Rt,ht)|0,ie=ie+Math.imul(kt,Xe)|0,Te=Te+Math.imul(kt,ht)|0,ge=ge+Math.imul(qt,xe)|0,ie=ie+Math.imul(qt,Se)|0,ie=ie+Math.imul(rt,xe)|0,Te=Te+Math.imul(rt,Se)|0,ge=ge+Math.imul(Ge,Gt)|0,ie=ie+Math.imul(Ge,Vt)|0,ie=ie+Math.imul(nt,Gt)|0,Te=Te+Math.imul(nt,Vt)|0,ge=ge+Math.imul(me,Qr)|0,ie=ie+Math.imul(me,ai)|0,ie=ie+Math.imul(Re,Qr)|0,Te=Te+Math.imul(Re,ai)|0,ge=ge+Math.imul(Ae,ri)|0,ie=ie+Math.imul(Ae,bi)|0,ie=ie+Math.imul(ze,ri)|0,Te=Te+Math.imul(ze,bi)|0;var gi=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(gi>>>26)|0,gi&=67108863,ge=Math.imul(Lt,Or),ie=Math.imul(Lt,Nr),ie=ie+Math.imul(St,Or)|0,Te=Math.imul(St,Nr),ge=ge+Math.imul(Ke,Ne)|0,ie=ie+Math.imul(Ke,Ye)|0,ie=ie+Math.imul(xt,Ne)|0,Te=Te+Math.imul(xt,Ye)|0,ge=ge+Math.imul(Yt,Xe)|0,ie=ie+Math.imul(Yt,ht)|0,ie=ie+Math.imul(xr,Xe)|0,Te=Te+Math.imul(xr,ht)|0,ge=ge+Math.imul(Rt,xe)|0,ie=ie+Math.imul(Rt,Se)|0,ie=ie+Math.imul(kt,xe)|0,Te=Te+Math.imul(kt,Se)|0,ge=ge+Math.imul(qt,Gt)|0,ie=ie+Math.imul(qt,Vt)|0,ie=ie+Math.imul(rt,Gt)|0,Te=Te+Math.imul(rt,Vt)|0,ge=ge+Math.imul(Ge,Qr)|0,ie=ie+Math.imul(Ge,ai)|0,ie=ie+Math.imul(nt,Qr)|0,Te=Te+Math.imul(nt,ai)|0,ge=ge+Math.imul(me,ri)|0,ie=ie+Math.imul(me,bi)|0,ie=ie+Math.imul(Re,ri)|0,Te=Te+Math.imul(Re,bi)|0,ge=ge+Math.imul(Ae,Wi)|0,ie=ie+Math.imul(Ae,Ni)|0,ie=ie+Math.imul(ze,Wi)|0,Te=Te+Math.imul(ze,Ni)|0;var Si=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Si>>>26)|0,Si&=67108863,ge=Math.imul(dt,Or),ie=Math.imul(dt,Nr),ie=ie+Math.imul(Ht,Or)|0,Te=Math.imul(Ht,Nr),ge=ge+Math.imul(Lt,Ne)|0,ie=ie+Math.imul(Lt,Ye)|0,ie=ie+Math.imul(St,Ne)|0,Te=Te+Math.imul(St,Ye)|0,ge=ge+Math.imul(Ke,Xe)|0,ie=ie+Math.imul(Ke,ht)|0,ie=ie+Math.imul(xt,Xe)|0,Te=Te+Math.imul(xt,ht)|0,ge=ge+Math.imul(Yt,xe)|0,ie=ie+Math.imul(Yt,Se)|0,ie=ie+Math.imul(xr,xe)|0,Te=Te+Math.imul(xr,Se)|0,ge=ge+Math.imul(Rt,Gt)|0,ie=ie+Math.imul(Rt,Vt)|0,ie=ie+Math.imul(kt,Gt)|0,Te=Te+Math.imul(kt,Vt)|0,ge=ge+Math.imul(qt,Qr)|0,ie=ie+Math.imul(qt,ai)|0,ie=ie+Math.imul(rt,Qr)|0,Te=Te+Math.imul(rt,ai)|0,ge=ge+Math.imul(Ge,ri)|0,ie=ie+Math.imul(Ge,bi)|0,ie=ie+Math.imul(nt,ri)|0,Te=Te+Math.imul(nt,bi)|0,ge=ge+Math.imul(me,Wi)|0,ie=ie+Math.imul(me,Ni)|0,ie=ie+Math.imul(Re,Wi)|0,Te=Te+Math.imul(Re,Ni)|0,ge=ge+Math.imul(Ae,$i)|0,ie=ie+Math.imul(Ae,zn)|0,ie=ie+Math.imul(ze,$i)|0,Te=Te+Math.imul(ze,zn)|0;var Mi=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Mi>>>26)|0,Mi&=67108863,ge=Math.imul(fr,Or),ie=Math.imul(fr,Nr),ie=ie+Math.imul(_r,Or)|0,Te=Math.imul(_r,Nr),ge=ge+Math.imul(dt,Ne)|0,ie=ie+Math.imul(dt,Ye)|0,ie=ie+Math.imul(Ht,Ne)|0,Te=Te+Math.imul(Ht,Ye)|0,ge=ge+Math.imul(Lt,Xe)|0,ie=ie+Math.imul(Lt,ht)|0,ie=ie+Math.imul(St,Xe)|0,Te=Te+Math.imul(St,ht)|0,ge=ge+Math.imul(Ke,xe)|0,ie=ie+Math.imul(Ke,Se)|0,ie=ie+Math.imul(xt,xe)|0,Te=Te+Math.imul(xt,Se)|0,ge=ge+Math.imul(Yt,Gt)|0,ie=ie+Math.imul(Yt,Vt)|0,ie=ie+Math.imul(xr,Gt)|0,Te=Te+Math.imul(xr,Vt)|0,ge=ge+Math.imul(Rt,Qr)|0,ie=ie+Math.imul(Rt,ai)|0,ie=ie+Math.imul(kt,Qr)|0,Te=Te+Math.imul(kt,ai)|0,ge=ge+Math.imul(qt,ri)|0,ie=ie+Math.imul(qt,bi)|0,ie=ie+Math.imul(rt,ri)|0,Te=Te+Math.imul(rt,bi)|0,ge=ge+Math.imul(Ge,Wi)|0,ie=ie+Math.imul(Ge,Ni)|0,ie=ie+Math.imul(nt,Wi)|0,Te=Te+Math.imul(nt,Ni)|0,ge=ge+Math.imul(me,$i)|0,ie=ie+Math.imul(me,zn)|0,ie=ie+Math.imul(Re,$i)|0,Te=Te+Math.imul(Re,zn)|0,ge=ge+Math.imul(Ae,It)|0,ie=ie+Math.imul(Ae,ft)|0,ie=ie+Math.imul(ze,It)|0,Te=Te+Math.imul(ze,ft)|0;var Pi=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Pi>>>26)|0,Pi&=67108863,ge=Math.imul(fr,Ne),ie=Math.imul(fr,Ye),ie=ie+Math.imul(_r,Ne)|0,Te=Math.imul(_r,Ye),ge=ge+Math.imul(dt,Xe)|0,ie=ie+Math.imul(dt,ht)|0,ie=ie+Math.imul(Ht,Xe)|0,Te=Te+Math.imul(Ht,ht)|0,ge=ge+Math.imul(Lt,xe)|0,ie=ie+Math.imul(Lt,Se)|0,ie=ie+Math.imul(St,xe)|0,Te=Te+Math.imul(St,Se)|0,ge=ge+Math.imul(Ke,Gt)|0,ie=ie+Math.imul(Ke,Vt)|0,ie=ie+Math.imul(xt,Gt)|0,Te=Te+Math.imul(xt,Vt)|0,ge=ge+Math.imul(Yt,Qr)|0,ie=ie+Math.imul(Yt,ai)|0,ie=ie+Math.imul(xr,Qr)|0,Te=Te+Math.imul(xr,ai)|0,ge=ge+Math.imul(Rt,ri)|0,ie=ie+Math.imul(Rt,bi)|0,ie=ie+Math.imul(kt,ri)|0,Te=Te+Math.imul(kt,bi)|0,ge=ge+Math.imul(qt,Wi)|0,ie=ie+Math.imul(qt,Ni)|0,ie=ie+Math.imul(rt,Wi)|0,Te=Te+Math.imul(rt,Ni)|0,ge=ge+Math.imul(Ge,$i)|0,ie=ie+Math.imul(Ge,zn)|0,ie=ie+Math.imul(nt,$i)|0,Te=Te+Math.imul(nt,zn)|0,ge=ge+Math.imul(me,It)|0,ie=ie+Math.imul(me,ft)|0,ie=ie+Math.imul(Re,It)|0,Te=Te+Math.imul(Re,ft)|0;var Gi=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Gi>>>26)|0,Gi&=67108863,ge=Math.imul(fr,Xe),ie=Math.imul(fr,ht),ie=ie+Math.imul(_r,Xe)|0,Te=Math.imul(_r,ht),ge=ge+Math.imul(dt,xe)|0,ie=ie+Math.imul(dt,Se)|0,ie=ie+Math.imul(Ht,xe)|0,Te=Te+Math.imul(Ht,Se)|0,ge=ge+Math.imul(Lt,Gt)|0,ie=ie+Math.imul(Lt,Vt)|0,ie=ie+Math.imul(St,Gt)|0,Te=Te+Math.imul(St,Vt)|0,ge=ge+Math.imul(Ke,Qr)|0,ie=ie+Math.imul(Ke,ai)|0,ie=ie+Math.imul(xt,Qr)|0,Te=Te+Math.imul(xt,ai)|0,ge=ge+Math.imul(Yt,ri)|0,ie=ie+Math.imul(Yt,bi)|0,ie=ie+Math.imul(xr,ri)|0,Te=Te+Math.imul(xr,bi)|0,ge=ge+Math.imul(Rt,Wi)|0,ie=ie+Math.imul(Rt,Ni)|0,ie=ie+Math.imul(kt,Wi)|0,Te=Te+Math.imul(kt,Ni)|0,ge=ge+Math.imul(qt,$i)|0,ie=ie+Math.imul(qt,zn)|0,ie=ie+Math.imul(rt,$i)|0,Te=Te+Math.imul(rt,zn)|0,ge=ge+Math.imul(Ge,It)|0,ie=ie+Math.imul(Ge,ft)|0,ie=ie+Math.imul(nt,It)|0,Te=Te+Math.imul(nt,ft)|0;var Ki=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Ki>>>26)|0,Ki&=67108863,ge=Math.imul(fr,xe),ie=Math.imul(fr,Se),ie=ie+Math.imul(_r,xe)|0,Te=Math.imul(_r,Se),ge=ge+Math.imul(dt,Gt)|0,ie=ie+Math.imul(dt,Vt)|0,ie=ie+Math.imul(Ht,Gt)|0,Te=Te+Math.imul(Ht,Vt)|0,ge=ge+Math.imul(Lt,Qr)|0,ie=ie+Math.imul(Lt,ai)|0,ie=ie+Math.imul(St,Qr)|0,Te=Te+Math.imul(St,ai)|0,ge=ge+Math.imul(Ke,ri)|0,ie=ie+Math.imul(Ke,bi)|0,ie=ie+Math.imul(xt,ri)|0,Te=Te+Math.imul(xt,bi)|0,ge=ge+Math.imul(Yt,Wi)|0,ie=ie+Math.imul(Yt,Ni)|0,ie=ie+Math.imul(xr,Wi)|0,Te=Te+Math.imul(xr,Ni)|0,ge=ge+Math.imul(Rt,$i)|0,ie=ie+Math.imul(Rt,zn)|0,ie=ie+Math.imul(kt,$i)|0,Te=Te+Math.imul(kt,zn)|0,ge=ge+Math.imul(qt,It)|0,ie=ie+Math.imul(qt,ft)|0,ie=ie+Math.imul(rt,It)|0,Te=Te+Math.imul(rt,ft)|0;var ka=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(ka>>>26)|0,ka&=67108863,ge=Math.imul(fr,Gt),ie=Math.imul(fr,Vt),ie=ie+Math.imul(_r,Gt)|0,Te=Math.imul(_r,Vt),ge=ge+Math.imul(dt,Qr)|0,ie=ie+Math.imul(dt,ai)|0,ie=ie+Math.imul(Ht,Qr)|0,Te=Te+Math.imul(Ht,ai)|0,ge=ge+Math.imul(Lt,ri)|0,ie=ie+Math.imul(Lt,bi)|0,ie=ie+Math.imul(St,ri)|0,Te=Te+Math.imul(St,bi)|0,ge=ge+Math.imul(Ke,Wi)|0,ie=ie+Math.imul(Ke,Ni)|0,ie=ie+Math.imul(xt,Wi)|0,Te=Te+Math.imul(xt,Ni)|0,ge=ge+Math.imul(Yt,$i)|0,ie=ie+Math.imul(Yt,zn)|0,ie=ie+Math.imul(xr,$i)|0,Te=Te+Math.imul(xr,zn)|0,ge=ge+Math.imul(Rt,It)|0,ie=ie+Math.imul(Rt,ft)|0,ie=ie+Math.imul(kt,It)|0,Te=Te+Math.imul(kt,ft)|0;var jn=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(jn>>>26)|0,jn&=67108863,ge=Math.imul(fr,Qr),ie=Math.imul(fr,ai),ie=ie+Math.imul(_r,Qr)|0,Te=Math.imul(_r,ai),ge=ge+Math.imul(dt,ri)|0,ie=ie+Math.imul(dt,bi)|0,ie=ie+Math.imul(Ht,ri)|0,Te=Te+Math.imul(Ht,bi)|0,ge=ge+Math.imul(Lt,Wi)|0,ie=ie+Math.imul(Lt,Ni)|0,ie=ie+Math.imul(St,Wi)|0,Te=Te+Math.imul(St,Ni)|0,ge=ge+Math.imul(Ke,$i)|0,ie=ie+Math.imul(Ke,zn)|0,ie=ie+Math.imul(xt,$i)|0,Te=Te+Math.imul(xt,zn)|0,ge=ge+Math.imul(Yt,It)|0,ie=ie+Math.imul(Yt,ft)|0,ie=ie+Math.imul(xr,It)|0,Te=Te+Math.imul(xr,ft)|0;var la=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(la>>>26)|0,la&=67108863,ge=Math.imul(fr,ri),ie=Math.imul(fr,bi),ie=ie+Math.imul(_r,ri)|0,Te=Math.imul(_r,bi),ge=ge+Math.imul(dt,Wi)|0,ie=ie+Math.imul(dt,Ni)|0,ie=ie+Math.imul(Ht,Wi)|0,Te=Te+Math.imul(Ht,Ni)|0,ge=ge+Math.imul(Lt,$i)|0,ie=ie+Math.imul(Lt,zn)|0,ie=ie+Math.imul(St,$i)|0,Te=Te+Math.imul(St,zn)|0,ge=ge+Math.imul(Ke,It)|0,ie=ie+Math.imul(Ke,ft)|0,ie=ie+Math.imul(xt,It)|0,Te=Te+Math.imul(xt,ft)|0;var Fa=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,ge=Math.imul(fr,Wi),ie=Math.imul(fr,Ni),ie=ie+Math.imul(_r,Wi)|0,Te=Math.imul(_r,Ni),ge=ge+Math.imul(dt,$i)|0,ie=ie+Math.imul(dt,zn)|0,ie=ie+Math.imul(Ht,$i)|0,Te=Te+Math.imul(Ht,zn)|0,ge=ge+Math.imul(Lt,It)|0,ie=ie+Math.imul(Lt,ft)|0,ie=ie+Math.imul(St,It)|0,Te=Te+Math.imul(St,ft)|0;var Ra=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(Ra>>>26)|0,Ra&=67108863,ge=Math.imul(fr,$i),ie=Math.imul(fr,zn),ie=ie+Math.imul(_r,$i)|0,Te=Math.imul(_r,zn),ge=ge+Math.imul(dt,It)|0,ie=ie+Math.imul(dt,ft)|0,ie=ie+Math.imul(Ht,It)|0,Te=Te+Math.imul(Ht,ft)|0;var jo=(ke+ge|0)+((ie&8191)<<13)|0;ke=(Te+(ie>>>13)|0)+(jo>>>26)|0,jo&=67108863,ge=Math.imul(fr,It),ie=Math.imul(fr,ft),ie=ie+Math.imul(_r,It)|0,Te=Math.imul(_r,ft);var oa=(ke+ge|0)+((ie&8191)<<13)|0;return ke=(Te+(ie>>>13)|0)+(oa>>>26)|0,oa&=67108863,Me[0]=jt,Me[1]=Zt,Me[2]=yr,Me[3]=Fr,Me[4]=Zr,Me[5]=Vr,Me[6]=gi,Me[7]=Si,Me[8]=Mi,Me[9]=Pi,Me[10]=Gi,Me[11]=Ki,Me[12]=ka,Me[13]=jn,Me[14]=la,Me[15]=Fa,Me[16]=Ra,Me[17]=jo,Me[18]=oa,ke!==0&&(Me[19]=ke,re.length++),re};Math.imul||(L=A);function _(G,N,W){W.negative=N.negative^G.negative,W.length=G.length+N.length;for(var re=0,ae=0,_e=0;_e<W.length-1;_e++){var Me=ae;ae=0;for(var ke=re&67108863,ge=Math.min(_e,N.length-1),ie=Math.max(0,_e-G.length+1);ie<=ge;ie++){var Te=_e-ie,Ee=G.words[Te]|0,Ae=N.words[ie]|0,ze=Ee*Ae,Ce=ze&67108863;Me=Me+(ze/67108864|0)|0,Ce=Ce+ke|0,ke=Ce&67108863,Me=Me+(Ce>>>26)|0,ae+=Me>>>26,Me&=67108863}W.words[_e]=ke,re=Me,Me=ae}return re!==0?W.words[_e]=re:W.length--,W.strip()}function C(G,N,W){var re=new M;return re.mulp(G,N,W)}f.prototype.mulTo=function(N,W){var re,ae=this.length+N.length;return this.length===10&&N.length===10?re=L(this,N,W):ae<63?re=A(this,N,W):ae<1024?re=_(this,N,W):re=C(this,N,W),re};function M(G,N){this.x=G,this.y=N}M.prototype.makeRBT=function(N){for(var W=new Array(N),re=f.prototype._countBits(N)-1,ae=0;ae<N;ae++)W[ae]=this.revBin(ae,re,N);return W},M.prototype.revBin=function(N,W,re){if(N===0||N===re-1)return N;for(var ae=0,_e=0;_e<W;_e++)ae|=(N&1)<<W-_e-1,N>>=1;return ae},M.prototype.permute=function(N,W,re,ae,_e,Me){for(var ke=0;ke<Me;ke++)ae[ke]=W[N[ke]],_e[ke]=re[N[ke]]},M.prototype.transform=function(N,W,re,ae,_e,Me){this.permute(Me,N,W,re,ae,_e);for(var ke=1;ke<_e;ke<<=1)for(var ge=ke<<1,ie=Math.cos(2*Math.PI/ge),Te=Math.sin(2*Math.PI/ge),Ee=0;Ee<_e;Ee+=ge)for(var Ae=ie,ze=Te,Ce=0;Ce<ke;Ce++){var me=re[Ee+Ce],Re=ae[Ee+Ce],ce=re[Ee+Ce+ke],Ge=ae[Ee+Ce+ke],nt=Ae*ce-ze*Ge;Ge=Ae*Ge+ze*ce,ce=nt,re[Ee+Ce]=me+ce,ae[Ee+Ce]=Re+Ge,re[Ee+Ce+ke]=me-ce,ae[Ee+Ce+ke]=Re-Ge,Ce!==ge&&(nt=ie*Ae-Te*ze,ze=ie*ze+Te*Ae,Ae=nt)}},M.prototype.guessLen13b=function(N,W){var re=Math.max(W,N)|1,ae=re&1,_e=0;for(re=re/2|0;re;re=re>>>1)_e++;return 1<<_e+1+ae},M.prototype.conjugate=function(N,W,re){if(!(re<=1))for(var ae=0;ae<re/2;ae++){var _e=N[ae];N[ae]=N[re-ae-1],N[re-ae-1]=_e,_e=W[ae],W[ae]=-W[re-ae-1],W[re-ae-1]=-_e}},M.prototype.normalize13b=function(N,W){for(var re=0,ae=0;ae<W/2;ae++){var _e=Math.round(N[2*ae+1]/W)*8192+Math.round(N[2*ae]/W)+re;N[ae]=_e&67108863,_e<67108864?re=0:re=_e/67108864|0}return N},M.prototype.convert13b=function(N,W,re,ae){for(var _e=0,Me=0;Me<W;Me++)_e=_e+(N[Me]|0),re[2*Me]=_e&8191,_e=_e>>>13,re[2*Me+1]=_e&8191,_e=_e>>>13;for(Me=2*W;Me<ae;++Me)re[Me]=0;u(_e===0),u((_e&-8192)===0)},M.prototype.stub=function(N){for(var W=new Array(N),re=0;re<N;re++)W[re]=0;return W},M.prototype.mulp=function(N,W,re){var ae=2*this.guessLen13b(N.length,W.length),_e=this.makeRBT(ae),Me=this.stub(ae),ke=new Array(ae),ge=new Array(ae),ie=new Array(ae),Te=new Array(ae),Ee=new Array(ae),Ae=new Array(ae),ze=re.words;ze.length=ae,this.convert13b(N.words,N.length,ke,ae),this.convert13b(W.words,W.length,Te,ae),this.transform(ke,Me,ge,ie,ae,_e),this.transform(Te,Me,Ee,Ae,ae,_e);for(var Ce=0;Ce<ae;Ce++){var me=ge[Ce]*Ee[Ce]-ie[Ce]*Ae[Ce];ie[Ce]=ge[Ce]*Ae[Ce]+ie[Ce]*Ee[Ce],ge[Ce]=me}return this.conjugate(ge,ie,ae),this.transform(ge,ie,ze,Me,ae,_e),this.conjugate(ze,Me,ae),this.normalize13b(ze,ae),re.negative=N.negative^W.negative,re.length=N.length+W.length,re.strip()},f.prototype.mul=function(N){var W=new f(null);return W.words=new Array(this.length+N.length),this.mulTo(N,W)},f.prototype.mulf=function(N){var W=new f(null);return W.words=new Array(this.length+N.length),C(this,N,W)},f.prototype.imul=function(N){return this.clone().mulTo(N,this)},f.prototype.imuln=function(N){u(typeof N=="number"),u(N<67108864);for(var W=0,re=0;re<this.length;re++){var ae=(this.words[re]|0)*N,_e=(ae&67108863)+(W&67108863);W>>=26,W+=ae/67108864|0,W+=_e>>>26,this.words[re]=_e&67108863}return W!==0&&(this.words[re]=W,this.length++),this},f.prototype.muln=function(N){return this.clone().imuln(N)},f.prototype.sqr=function(){return this.mul(this)},f.prototype.isqr=function(){return this.imul(this.clone())},f.prototype.pow=function(N){var W=k(N);if(W.length===0)return new f(1);for(var re=this,ae=0;ae<W.length&&W[ae]===0;ae++,re=re.sqr());if(++ae<W.length)for(var _e=re.sqr();ae<W.length;ae++,_e=_e.sqr())W[ae]!==0&&(re=re.mul(_e));return re},f.prototype.iushln=function(N){u(typeof N=="number"&&N>=0);var W=N%26,re=(N-W)/26,ae=67108863>>>26-W<<26-W,_e;if(W!==0){var Me=0;for(_e=0;_e<this.length;_e++){var ke=this.words[_e]&ae,ge=(this.words[_e]|0)-ke<<W;this.words[_e]=ge|Me,Me=ke>>>26-W}Me&&(this.words[_e]=Me,this.length++)}if(re!==0){for(_e=this.length-1;_e>=0;_e--)this.words[_e+re]=this.words[_e];for(_e=0;_e<re;_e++)this.words[_e]=0;this.length+=re}return this.strip()},f.prototype.ishln=function(N){return u(this.negative===0),this.iushln(N)},f.prototype.iushrn=function(N,W,re){u(typeof N=="number"&&N>=0);var ae;W?ae=(W-W%26)/26:ae=0;var _e=N%26,Me=Math.min((N-_e)/26,this.length),ke=67108863^67108863>>>_e<<_e,ge=re;if(ae-=Me,ae=Math.max(0,ae),ge){for(var ie=0;ie<Me;ie++)ge.words[ie]=this.words[ie];ge.length=Me}if(Me!==0)if(this.length>Me)for(this.length-=Me,ie=0;ie<this.length;ie++)this.words[ie]=this.words[ie+Me];else this.words[0]=0,this.length=1;var Te=0;for(ie=this.length-1;ie>=0&&(Te!==0||ie>=ae);ie--){var Ee=this.words[ie]|0;this.words[ie]=Te<<26-_e|Ee>>>_e,Te=Ee&ke}return ge&&Te!==0&&(ge.words[ge.length++]=Te),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},f.prototype.ishrn=function(N,W,re){return u(this.negative===0),this.iushrn(N,W,re)},f.prototype.shln=function(N){return this.clone().ishln(N)},f.prototype.ushln=function(N){return this.clone().iushln(N)},f.prototype.shrn=function(N){return this.clone().ishrn(N)},f.prototype.ushrn=function(N){return this.clone().iushrn(N)},f.prototype.testn=function(N){u(typeof N=="number"&&N>=0);var W=N%26,re=(N-W)/26,ae=1<<W;if(this.length<=re)return!1;var _e=this.words[re];return!!(_e&ae)},f.prototype.imaskn=function(N){u(typeof N=="number"&&N>=0);var W=N%26,re=(N-W)/26;if(u(this.negative===0,"imaskn works only with positive numbers"),this.length<=re)return this;if(W!==0&&re++,this.length=Math.min(re,this.length),W!==0){var ae=67108863^67108863>>>W<<W;this.words[this.length-1]&=ae}return this.strip()},f.prototype.maskn=function(N){return this.clone().imaskn(N)},f.prototype.iaddn=function(N){return u(typeof N=="number"),u(N<67108864),N<0?this.isubn(-N):this.negative!==0?this.length===1&&(this.words[0]|0)<N?(this.words[0]=N-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(N),this.negative=1,this):this._iaddn(N)},f.prototype._iaddn=function(N){this.words[0]+=N;for(var W=0;W<this.length&&this.words[W]>=67108864;W++)this.words[W]-=67108864,W===this.length-1?this.words[W+1]=1:this.words[W+1]++;return this.length=Math.max(this.length,W+1),this},f.prototype.isubn=function(N){if(u(typeof N=="number"),u(N<67108864),N<0)return this.iaddn(-N);if(this.negative!==0)return this.negative=0,this.iaddn(N),this.negative=1,this;if(this.words[0]-=N,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var W=0;W<this.length&&this.words[W]<0;W++)this.words[W]+=67108864,this.words[W+1]-=1;return this.strip()},f.prototype.addn=function(N){return this.clone().iaddn(N)},f.prototype.subn=function(N){return this.clone().isubn(N)},f.prototype.iabs=function(){return this.negative=0,this},f.prototype.abs=function(){return this.clone().iabs()},f.prototype._ishlnsubmul=function(N,W,re){var ae=N.length+re,_e;this._expand(ae);var Me,ke=0;for(_e=0;_e<N.length;_e++){Me=(this.words[_e+re]|0)+ke;var ge=(N.words[_e]|0)*W;Me-=ge&67108863,ke=(Me>>26)-(ge/67108864|0),this.words[_e+re]=Me&67108863}for(;_e<this.length-re;_e++)Me=(this.words[_e+re]|0)+ke,ke=Me>>26,this.words[_e+re]=Me&67108863;if(ke===0)return this.strip();for(u(ke===-1),ke=0,_e=0;_e<this.length;_e++)Me=-(this.words[_e]|0)+ke,ke=Me>>26,this.words[_e]=Me&67108863;return this.negative=1,this.strip()},f.prototype._wordDiv=function(N,W){var re=this.length-N.length,ae=this.clone(),_e=N,Me=_e.words[_e.length-1]|0,ke=this._countBits(Me);re=26-ke,re!==0&&(_e=_e.ushln(re),ae.iushln(re),Me=_e.words[_e.length-1]|0);var ge=ae.length-_e.length,ie;if(W!=="mod"){ie=new f(null),ie.length=ge+1,ie.words=new Array(ie.length);for(var Te=0;Te<ie.length;Te++)ie.words[Te]=0}var Ee=ae.clone()._ishlnsubmul(_e,1,ge);Ee.negative===0&&(ae=Ee,ie&&(ie.words[ge]=1));for(var Ae=ge-1;Ae>=0;Ae--){var ze=(ae.words[_e.length+Ae]|0)*67108864+(ae.words[_e.length+Ae-1]|0);for(ze=Math.min(ze/Me|0,67108863),ae._ishlnsubmul(_e,ze,Ae);ae.negative!==0;)ze--,ae.negative=0,ae._ishlnsubmul(_e,1,Ae),ae.isZero()||(ae.negative^=1);ie&&(ie.words[Ae]=ze)}return ie&&ie.strip(),ae.strip(),W!=="div"&&re!==0&&ae.iushrn(re),{div:ie||null,mod:ae}},f.prototype.divmod=function(N,W,re){if(u(!N.isZero()),this.isZero())return{div:new f(0),mod:new f(0)};var ae,_e,Me;return this.negative!==0&&N.negative===0?(Me=this.neg().divmod(N,W),W!=="mod"&&(ae=Me.div.neg()),W!=="div"&&(_e=Me.mod.neg(),re&&_e.negative!==0&&_e.iadd(N)),{div:ae,mod:_e}):this.negative===0&&N.negative!==0?(Me=this.divmod(N.neg(),W),W!=="mod"&&(ae=Me.div.neg()),{div:ae,mod:Me.mod}):this.negative&N.negative?(Me=this.neg().divmod(N.neg(),W),W!=="div"&&(_e=Me.mod.neg(),re&&_e.negative!==0&&_e.isub(N)),{div:Me.div,mod:_e}):N.length>this.length||this.cmp(N)<0?{div:new f(0),mod:this}:N.length===1?W==="div"?{div:this.divn(N.words[0]),mod:null}:W==="mod"?{div:null,mod:new f(this.modn(N.words[0]))}:{div:this.divn(N.words[0]),mod:new f(this.modn(N.words[0]))}:this._wordDiv(N,W)},f.prototype.div=function(N){return this.divmod(N,"div",!1).div},f.prototype.mod=function(N){return this.divmod(N,"mod",!1).mod},f.prototype.umod=function(N){return this.divmod(N,"mod",!0).mod},f.prototype.divRound=function(N){var W=this.divmod(N);if(W.mod.isZero())return W.div;var re=W.div.negative!==0?W.mod.isub(N):W.mod,ae=N.ushrn(1),_e=N.andln(1),Me=re.cmp(ae);return Me<0||_e===1&&Me===0?W.div:W.div.negative!==0?W.div.isubn(1):W.div.iaddn(1)},f.prototype.modn=function(N){u(N<=67108863);for(var W=(1<<26)%N,re=0,ae=this.length-1;ae>=0;ae--)re=(W*re+(this.words[ae]|0))%N;return re},f.prototype.idivn=function(N){u(N<=67108863);for(var W=0,re=this.length-1;re>=0;re--){var ae=(this.words[re]|0)+W*67108864;this.words[re]=ae/N|0,W=ae%N}return this.strip()},f.prototype.divn=function(N){return this.clone().idivn(N)},f.prototype.egcd=function(N){u(N.negative===0),u(!N.isZero());var W=this,re=N.clone();W.negative!==0?W=W.umod(N):W=W.clone();for(var ae=new f(1),_e=new f(0),Me=new f(0),ke=new f(1),ge=0;W.isEven()&&re.isEven();)W.iushrn(1),re.iushrn(1),++ge;for(var ie=re.clone(),Te=W.clone();!W.isZero();){for(var Ee=0,Ae=1;!(W.words[0]&Ae)&&Ee<26;++Ee,Ae<<=1);if(Ee>0)for(W.iushrn(Ee);Ee-- >0;)(ae.isOdd()||_e.isOdd())&&(ae.iadd(ie),_e.isub(Te)),ae.iushrn(1),_e.iushrn(1);for(var ze=0,Ce=1;!(re.words[0]&Ce)&&ze<26;++ze,Ce<<=1);if(ze>0)for(re.iushrn(ze);ze-- >0;)(Me.isOdd()||ke.isOdd())&&(Me.iadd(ie),ke.isub(Te)),Me.iushrn(1),ke.iushrn(1);W.cmp(re)>=0?(W.isub(re),ae.isub(Me),_e.isub(ke)):(re.isub(W),Me.isub(ae),ke.isub(_e))}return{a:Me,b:ke,gcd:re.iushln(ge)}},f.prototype._invmp=function(N){u(N.negative===0),u(!N.isZero());var W=this,re=N.clone();W.negative!==0?W=W.umod(N):W=W.clone();for(var ae=new f(1),_e=new f(0),Me=re.clone();W.cmpn(1)>0&&re.cmpn(1)>0;){for(var ke=0,ge=1;!(W.words[0]&ge)&&ke<26;++ke,ge<<=1);if(ke>0)for(W.iushrn(ke);ke-- >0;)ae.isOdd()&&ae.iadd(Me),ae.iushrn(1);for(var ie=0,Te=1;!(re.words[0]&Te)&&ie<26;++ie,Te<<=1);if(ie>0)for(re.iushrn(ie);ie-- >0;)_e.isOdd()&&_e.iadd(Me),_e.iushrn(1);W.cmp(re)>=0?(W.isub(re),ae.isub(_e)):(re.isub(W),_e.isub(ae))}var Ee;return W.cmpn(1)===0?Ee=ae:Ee=_e,Ee.cmpn(0)<0&&Ee.iadd(N),Ee},f.prototype.gcd=function(N){if(this.isZero())return N.abs();if(N.isZero())return this.abs();var W=this.clone(),re=N.clone();W.negative=0,re.negative=0;for(var ae=0;W.isEven()&&re.isEven();ae++)W.iushrn(1),re.iushrn(1);do{for(;W.isEven();)W.iushrn(1);for(;re.isEven();)re.iushrn(1);var _e=W.cmp(re);if(_e<0){var Me=W;W=re,re=Me}else if(_e===0||re.cmpn(1)===0)break;W.isub(re)}while(!0);return re.iushln(ae)},f.prototype.invm=function(N){return this.egcd(N).a.umod(N)},f.prototype.isEven=function(){return(this.words[0]&1)===0},f.prototype.isOdd=function(){return(this.words[0]&1)===1},f.prototype.andln=function(N){return this.words[0]&N},f.prototype.bincn=function(N){u(typeof N=="number");var W=N%26,re=(N-W)/26,ae=1<<W;if(this.length<=re)return this._expand(re+1),this.words[re]|=ae,this;for(var _e=ae,Me=re;_e!==0&&Me<this.length;Me++){var ke=this.words[Me]|0;ke+=_e,_e=ke>>>26,ke&=67108863,this.words[Me]=ke}return _e!==0&&(this.words[Me]=_e,this.length++),this},f.prototype.isZero=function(){return this.length===1&&this.words[0]===0},f.prototype.cmpn=function(N){var W=N<0;if(this.negative!==0&&!W)return-1;if(this.negative===0&&W)return 1;this.strip();var re;if(this.length>1)re=1;else{W&&(N=-N),u(N<=67108863,"Number is too big");var ae=this.words[0]|0;re=ae===N?0:ae<N?-1:1}return this.negative!==0?-re|0:re},f.prototype.cmp=function(N){if(this.negative!==0&&N.negative===0)return-1;if(this.negative===0&&N.negative!==0)return 1;var W=this.ucmp(N);return this.negative!==0?-W|0:W},f.prototype.ucmp=function(N){if(this.length>N.length)return 1;if(this.length<N.length)return-1;for(var W=0,re=this.length-1;re>=0;re--){var ae=this.words[re]|0,_e=N.words[re]|0;if(ae!==_e){ae<_e?W=-1:ae>_e&&(W=1);break}}return W},f.prototype.gtn=function(N){return this.cmpn(N)===1},f.prototype.gt=function(N){return this.cmp(N)===1},f.prototype.gten=function(N){return this.cmpn(N)>=0},f.prototype.gte=function(N){return this.cmp(N)>=0},f.prototype.ltn=function(N){return this.cmpn(N)===-1},f.prototype.lt=function(N){return this.cmp(N)===-1},f.prototype.lten=function(N){return this.cmpn(N)<=0},f.prototype.lte=function(N){return this.cmp(N)<=0},f.prototype.eqn=function(N){return this.cmpn(N)===0},f.prototype.eq=function(N){return this.cmp(N)===0},f.red=function(N){return new H(N)},f.prototype.toRed=function(N){return u(!this.red,"Already a number in reduction context"),u(this.negative===0,"red works only with positives"),N.convertTo(this)._forceRed(N)},f.prototype.fromRed=function(){return u(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},f.prototype._forceRed=function(N){return this.red=N,this},f.prototype.forceRed=function(N){return u(!this.red,"Already a number in reduction context"),this._forceRed(N)},f.prototype.redAdd=function(N){return u(this.red,"redAdd works only with red numbers"),this.red.add(this,N)},f.prototype.redIAdd=function(N){return u(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,N)},f.prototype.redSub=function(N){return u(this.red,"redSub works only with red numbers"),this.red.sub(this,N)},f.prototype.redISub=function(N){return u(this.red,"redISub works only with red numbers"),this.red.isub(this,N)},f.prototype.redShl=function(N){return u(this.red,"redShl works only with red numbers"),this.red.shl(this,N)},f.prototype.redMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.mul(this,N)},f.prototype.redIMul=function(N){return u(this.red,"redMul works only with red numbers"),this.red._verify2(this,N),this.red.imul(this,N)},f.prototype.redSqr=function(){return u(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},f.prototype.redISqr=function(){return u(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},f.prototype.redSqrt=function(){return u(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},f.prototype.redInvm=function(){return u(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},f.prototype.redNeg=function(){return u(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},f.prototype.redPow=function(N){return u(this.red&&!N.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,N)};var g={k256:null,p224:null,p192:null,p25519:null};function P(G,N){this.name=G,this.p=new f(N,16),this.n=this.p.bitLength(),this.k=new f(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}P.prototype._tmp=function(){var N=new f(null);return N.words=new Array(Math.ceil(this.n/13)),N},P.prototype.ireduce=function(N){var W=N,re;do this.split(W,this.tmp),W=this.imulK(W),W=W.iadd(this.tmp),re=W.bitLength();while(re>this.n);var ae=re<this.n?-1:W.ucmp(this.p);return ae===0?(W.words[0]=0,W.length=1):ae>0?W.isub(this.p):W.strip!==void 0?W.strip():W._strip(),W},P.prototype.split=function(N,W){N.iushrn(this.n,0,W)},P.prototype.imulK=function(N){return N.imul(this.k)};function T(){P.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}c(T,P),T.prototype.split=function(N,W){for(var re=4194303,ae=Math.min(N.length,9),_e=0;_e<ae;_e++)W.words[_e]=N.words[_e];if(W.length=ae,N.length<=9){N.words[0]=0,N.length=1;return}var Me=N.words[9];for(W.words[W.length++]=Me&re,_e=10;_e<N.length;_e++){var ke=N.words[_e]|0;N.words[_e-10]=(ke&re)<<4|Me>>>22,Me=ke}Me>>>=22,N.words[_e-10]=Me,Me===0&&N.length>10?N.length-=10:N.length-=9},T.prototype.imulK=function(N){N.words[N.length]=0,N.words[N.length+1]=0,N.length+=2;for(var W=0,re=0;re<N.length;re++){var ae=N.words[re]|0;W+=ae*977,N.words[re]=W&67108863,W=ae*64+(W/67108864|0)}return N.words[N.length-1]===0&&(N.length--,N.words[N.length-1]===0&&N.length--),N};function F(){P.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}c(F,P);function q(){P.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}c(q,P);function V(){P.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}c(V,P),V.prototype.imulK=function(N){for(var W=0,re=0;re<N.length;re++){var ae=(N.words[re]|0)*19+W,_e=ae&67108863;ae>>>=26,N.words[re]=_e,W=ae}return W!==0&&(N.words[N.length++]=W),N},f._prime=function(N){if(g[N])return g[N];var W;if(N==="k256")W=new T;else if(N==="p224")W=new F;else if(N==="p192")W=new q;else if(N==="p25519")W=new V;else throw new Error("Unknown prime "+N);return g[N]=W,W};function H(G){if(typeof G=="string"){var N=f._prime(G);this.m=N.p,this.prime=N}else u(G.gtn(1),"modulus must be greater than 1"),this.m=G,this.prime=null}H.prototype._verify1=function(N){u(N.negative===0,"red works only with positives"),u(N.red,"red works only with red numbers")},H.prototype._verify2=function(N,W){u((N.negative|W.negative)===0,"red works only with positives"),u(N.red&&N.red===W.red,"red works only with red numbers")},H.prototype.imod=function(N){return this.prime?this.prime.ireduce(N)._forceRed(this):N.umod(this.m)._forceRed(this)},H.prototype.neg=function(N){return N.isZero()?N.clone():this.m.sub(N)._forceRed(this)},H.prototype.add=function(N,W){this._verify2(N,W);var re=N.add(W);return re.cmp(this.m)>=0&&re.isub(this.m),re._forceRed(this)},H.prototype.iadd=function(N,W){this._verify2(N,W);var re=N.iadd(W);return re.cmp(this.m)>=0&&re.isub(this.m),re},H.prototype.sub=function(N,W){this._verify2(N,W);var re=N.sub(W);return re.cmpn(0)<0&&re.iadd(this.m),re._forceRed(this)},H.prototype.isub=function(N,W){this._verify2(N,W);var re=N.isub(W);return re.cmpn(0)<0&&re.iadd(this.m),re},H.prototype.shl=function(N,W){return this._verify1(N),this.imod(N.ushln(W))},H.prototype.imul=function(N,W){return this._verify2(N,W),this.imod(N.imul(W))},H.prototype.mul=function(N,W){return this._verify2(N,W),this.imod(N.mul(W))},H.prototype.isqr=function(N){return this.imul(N,N.clone())},H.prototype.sqr=function(N){return this.mul(N,N)},H.prototype.sqrt=function(N){if(N.isZero())return N.clone();var W=this.m.andln(3);if(u(W%2===1),W===3){var re=this.m.add(new f(1)).iushrn(2);return this.pow(N,re)}for(var ae=this.m.subn(1),_e=0;!ae.isZero()&&ae.andln(1)===0;)_e++,ae.iushrn(1);u(!ae.isZero());var Me=new f(1).toRed(this),ke=Me.redNeg(),ge=this.m.subn(1).iushrn(1),ie=this.m.bitLength();for(ie=new f(2*ie*ie).toRed(this);this.pow(ie,ge).cmp(ke)!==0;)ie.redIAdd(ke);for(var Te=this.pow(ie,ae),Ee=this.pow(N,ae.addn(1).iushrn(1)),Ae=this.pow(N,ae),ze=_e;Ae.cmp(Me)!==0;){for(var Ce=Ae,me=0;Ce.cmp(Me)!==0;me++)Ce=Ce.redSqr();u(me<ze);var Re=this.pow(Te,new f(1).iushln(ze-me-1));Ee=Ee.redMul(Re),Te=Re.redSqr(),Ae=Ae.redMul(Te),ze=me}return Ee},H.prototype.invm=function(N){var W=N._invmp(this.m);return W.negative!==0?(W.negative=0,this.imod(W).redNeg()):this.imod(W)},H.prototype.pow=function(N,W){if(W.isZero())return new f(1).toRed(this);if(W.cmpn(1)===0)return N.clone();var re=4,ae=new Array(1<<re);ae[0]=new f(1).toRed(this),ae[1]=N;for(var _e=2;_e<ae.length;_e++)ae[_e]=this.mul(ae[_e-1],N);var Me=ae[0],ke=0,ge=0,ie=W.bitLength()%26;for(ie===0&&(ie=26),_e=W.length-1;_e>=0;_e--){for(var Te=W.words[_e],Ee=ie-1;Ee>=0;Ee--){var Ae=Te>>Ee&1;if(Me!==ae[0]&&(Me=this.sqr(Me)),Ae===0&&ke===0){ge=0;continue}ke<<=1,ke|=Ae,ge++,!(ge!==re&&(_e!==0||Ee!==0))&&(Me=this.mul(Me,ae[ke]),ge=0,ke=0)}ie=26}return Me},H.prototype.convertTo=function(N){var W=N.umod(this.m);return W===N?W.clone():W},H.prototype.convertFrom=function(N){var W=N.clone();return W.red=null,W},f.mont=function(N){return new X(N)};function X(G){H.call(this,G),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new f(1).iushln(this.shift),this.r2=this.imod(this.r.sqr()),this.rinv=this.r._invmp(this.m),this.minv=this.rinv.mul(this.r).isubn(1).div(this.m),this.minv=this.minv.umod(this.r),this.minv=this.r.sub(this.minv)}c(X,H),X.prototype.convertTo=function(N){return this.imod(N.ushln(this.shift))},X.prototype.convertFrom=function(N){var W=this.imod(N.mul(this.rinv));return W.red=null,W},X.prototype.imul=function(N,W){if(N.isZero()||W.isZero())return N.words[0]=0,N.length=1,N;var re=N.imul(W),ae=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=re.isub(ae).iushrn(this.shift),Me=_e;return _e.cmp(this.m)>=0?Me=_e.isub(this.m):_e.cmpn(0)<0&&(Me=_e.iadd(this.m)),Me._forceRed(this)},X.prototype.mul=function(N,W){if(N.isZero()||W.isZero())return new f(0)._forceRed(this);var re=N.mul(W),ae=re.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),_e=re.isub(ae).iushrn(this.shift),Me=_e;return _e.cmp(this.m)>=0?Me=_e.isub(this.m):_e.cmpn(0)<0&&(Me=_e.iadd(this.m)),Me._forceRed(this)},X.prototype.invm=function(N){var W=this.imod(N._invmp(this.m).mul(this.r2));return W._forceRed(this)}}(i,this)},6204:function(i){"use strict";i.exports=a;function a(o){var s,l,u,c=o.length,f=0;for(s=0;s<c;++s)f+=o[s].length;var h=new Array(f),d=0;for(s=0;s<c;++s){var v=o[s],x=v.length;for(l=0;l<x;++l){var b=h[d++]=new Array(x-1),p=0;for(u=0;u<x;++u)u!==l&&(b[p++]=v[u]);if(l&1){var E=b[1];b[1]=b[0],b[0]=E}}}return h}},6867:function(i,a,o){"use strict";i.exports=p;var s=o(1888),l=o(855),u=o(7150);function c(E,k){for(var A=0;A<E;++A)if(!(k[A]<=k[A+E]))return!0;return!1}function f(E,k,A,L){for(var _=0,C=0,M=0,g=E.length;M<g;++M){var P=E[M];if(!c(k,P)){for(var T=0;T<2*k;++T)A[_++]=P[T];L[C++]=M}}return C}function h(E,k,A,L){var _=E.length,C=k.length;if(!(_<=0||C<=0)){var M=E[0].length>>>1;if(!(M<=0)){var g,P=s.mallocDouble(2*M*_),T=s.mallocInt32(_);if(_=f(E,M,P,T),_>0){if(M===1&&L)l.init(_),g=l.sweepComplete(M,A,0,_,P,T,0,_,P,T);else{var F=s.mallocDouble(2*M*C),q=s.mallocInt32(C);C=f(k,M,F,q),C>0&&(l.init(_+C),M===1?g=l.sweepBipartite(M,A,0,_,P,T,0,C,F,q):g=u(M,A,L,_,P,T,C,F,q),s.free(F),s.free(q))}s.free(P),s.free(T)}return g}}}var d;function v(E,k){d.push([E,k])}function x(E){return d=[],h(E,E,v,!0),d}function b(E,k){return d=[],h(E,k,v,!1),d}function p(E,k,A){switch(arguments.length){case 1:return x(E);case 2:return typeof k=="function"?h(E,E,k,!0):b(E,k);case 3:return h(E,k,A,!1);default:throw new Error("box-intersect: Invalid arguments")}}},2455:function(i,a){"use strict";function o(){function u(h,d,v,x,b,p,E,k,A,L,_){for(var C=2*h,M=x,g=C*x;M<b;++M,g+=C){var P=p[d+g],T=p[d+g+h],F=E[M];e:for(var q=k,V=C*k;q<A;++q,V+=C){var H=L[d+V],X=L[d+V+h],G=_[q];if(!(X<P||T<H)){for(var N=d+1;N<h;++N){var W=p[N+g],re=p[N+h+g],ae=L[N+V],_e=L[N+h+V];if(re<ae||_e<W)continue e}var Me=v(F,G);if(Me!==void 0)return Me}}}}function c(h,d,v,x,b,p,E,k,A,L,_){for(var C=2*h,M=k,g=C*k;M<A;++M,g+=C){var P=L[d+g],T=L[d+g+h],F=_[M];e:for(var q=x,V=C*x;q<b;++q,V+=C){var H=p[d+V],X=p[d+V+h],G=E[q];if(!(T<H||X<P)){for(var N=d+1;N<h;++N){var W=p[N+V],re=p[N+h+V],ae=L[N+g],_e=L[N+h+g];if(re<ae||_e<W)continue e}var Me=v(G,F);if(Me!==void 0)return Me}}}}function f(h,d,v,x,b,p,E,k,A,L,_){return b-x>A-k?u(h,d,v,x,b,p,E,k,A,L,_):c(h,d,v,x,b,p,E,k,A,L,_)}return f}function s(){function u(v,x,b,p,E,k,A,L,_,C,M){for(var g=2*v,P=p,T=g*p;P<E;++P,T+=g){var F=k[x+T],q=k[x+T+v],V=A[P];e:for(var H=L,X=g*L;H<_;++H,X+=g){var G=C[x+X],N=M[H];if(!(G<=F||q<G)){for(var W=x+1;W<v;++W){var re=k[W+T],ae=k[W+v+T],_e=C[W+X],Me=C[W+v+X];if(ae<_e||Me<re)continue e}var ke=b(N,V);if(ke!==void 0)return ke}}}}function c(v,x,b,p,E,k,A,L,_,C,M){for(var g=2*v,P=p,T=g*p;P<E;++P,T+=g){var F=k[x+T],q=k[x+T+v],V=A[P];e:for(var H=L,X=g*L;H<_;++H,X+=g){var G=C[x+X],N=M[H];if(!(G<F||q<G)){for(var W=x+1;W<v;++W){var re=k[W+T],ae=k[W+v+T],_e=C[W+X],Me=C[W+v+X];if(ae<_e||Me<re)continue e}var ke=b(V,N);if(ke!==void 0)return ke}}}}function f(v,x,b,p,E,k,A,L,_,C,M){for(var g=2*v,P=L,T=g*L;P<_;++P,T+=g){var F=C[x+T],q=M[P];e:for(var V=p,H=g*p;V<E;++V,H+=g){var X=k[x+H],G=k[x+H+v],N=A[V];if(!(F<=X||G<F)){for(var W=x+1;W<v;++W){var re=k[W+H],ae=k[W+v+H],_e=C[W+T],Me=C[W+v+T];if(ae<_e||Me<re)continue e}var ke=b(q,N);if(ke!==void 0)return ke}}}}function h(v,x,b,p,E,k,A,L,_,C,M){for(var g=2*v,P=L,T=g*L;P<_;++P,T+=g){var F=C[x+T],q=M[P];e:for(var V=p,H=g*p;V<E;++V,H+=g){var X=k[x+H],G=k[x+H+v],N=A[V];if(!(F<X||G<F)){for(var W=x+1;W<v;++W){var re=k[W+H],ae=k[W+v+H],_e=C[W+T],Me=C[W+v+T];if(ae<_e||Me<re)continue e}var ke=b(N,q);if(ke!==void 0)return ke}}}}function d(v,x,b,p,E,k,A,L,_,C,M,g){return k-E>C-_?p?u(v,x,b,E,k,A,L,_,C,M,g):c(v,x,b,E,k,A,L,_,C,M,g):p?f(v,x,b,E,k,A,L,_,C,M,g):h(v,x,b,E,k,A,L,_,C,M,g)}return d}function l(u){return u?o():s()}a.partial=l(!1),a.full=l(!0)},7150:function(i,a,o){"use strict";i.exports=G;var s=o(1888),l=o(8828),u=o(2455),c=u.partial,f=u.full,h=o(855),d=o(3545),v=o(8105),x=128,b=1<<22,p=1<<22,E=v("!(lo>=p0)&&!(p1>=hi)"),k=v("lo===p0"),A=v("lo<p0"),L=v("hi<=p0"),_=v("lo<=p0&&p0<=hi"),C=v("lo<p0&&p0<=hi"),M=6,g=2,P=1024,T=s.mallocInt32(P),F=s.mallocDouble(P);function q(N,W){var re=8*l.log2(W+1)*(N+1)|0,ae=l.nextPow2(M*re);T.length<ae&&(s.free(T),T=s.mallocInt32(ae));var _e=l.nextPow2(g*re);F.length<_e&&(s.free(F),F=s.mallocDouble(_e))}function V(N,W,re,ae,_e,Me,ke,ge,ie){var Te=M*N;T[Te]=W,T[Te+1]=re,T[Te+2]=ae,T[Te+3]=_e,T[Te+4]=Me,T[Te+5]=ke;var Ee=g*N;F[Ee]=ge,F[Ee+1]=ie}function H(N,W,re,ae,_e,Me,ke,ge,ie,Te,Ee){var Ae=2*N,ze=ie*Ae,Ce=Te[ze+W];e:for(var me=_e,Re=_e*Ae;me<Me;++me,Re+=Ae){var ce=ke[Re+W],Ge=ke[Re+W+N];if(!(Ce<ce||Ge<Ce)&&!(ae&&Ce===ce)){for(var nt=ge[me],ct=W+1;ct<N;++ct){var ce=ke[Re+ct],Ge=ke[Re+ct+N],qt=Te[ze+ct],rt=Te[ze+ct+N];if(Ge<qt||rt<ce)continue e}var ot;if(ae?ot=re(Ee,nt):ot=re(nt,Ee),ot!==void 0)return ot}}}function X(N,W,re,ae,_e,Me,ke,ge,ie,Te){var Ee=2*N,Ae=ge*Ee,ze=ie[Ae+W];e:for(var Ce=ae,me=ae*Ee;Ce<_e;++Ce,me+=Ee){var Re=ke[Ce];if(Re!==Te){var ce=Me[me+W],Ge=Me[me+W+N];if(!(ze<ce||Ge<ze)){for(var nt=W+1;nt<N;++nt){var ce=Me[me+nt],Ge=Me[me+nt+N],ct=ie[Ae+nt],qt=ie[Ae+nt+N];if(Ge<ct||qt<ce)continue e}var rt=re(Re,Te);if(rt!==void 0)return rt}}}}function G(N,W,re,ae,_e,Me,ke,ge,ie){q(N,ae+ke);var Te=0,Ee=2*N,Ae;for(V(Te++,0,0,ae,0,ke,re?16:0,-1/0,1/0),re||V(Te++,0,0,ke,0,ae,1,-1/0,1/0);Te>0;){Te-=1;var ze=Te*M,Ce=T[ze],me=T[ze+1],Re=T[ze+2],ce=T[ze+3],Ge=T[ze+4],nt=T[ze+5],ct=Te*g,qt=F[ct],rt=F[ct+1],ot=nt&1,Rt=!!(nt&16),kt=_e,Ct=Me,Yt=ge,xr=ie;if(ot&&(kt=ge,Ct=ie,Yt=_e,xr=Me),!(nt&2&&(Re=A(N,Ce,me,Re,kt,Ct,rt),me>=Re))&&!(nt&4&&(me=L(N,Ce,me,Re,kt,Ct,qt),me>=Re))){var er=Re-me,Ke=Ge-ce;if(Rt){if(N*er*(er+Ke)<p){if(Ae=h.scanComplete(N,Ce,W,me,Re,kt,Ct,ce,Ge,Yt,xr),Ae!==void 0)return Ae;continue}}else if(N*Math.min(er,Ke)<x){if(Ae=c(N,Ce,W,ot,me,Re,kt,Ct,ce,Ge,Yt,xr),Ae!==void 0)return Ae;continue}else if(N*er*Ke<b){if(Ae=h.scanBipartite(N,Ce,W,ot,me,Re,kt,Ct,ce,Ge,Yt,xr),Ae!==void 0)return Ae;continue}var xt=E(N,Ce,me,Re,kt,Ct,qt,rt);if(me<xt)if(N*(xt-me)<x){if(Ae=f(N,Ce+1,W,me,xt,kt,Ct,ce,Ge,Yt,xr),Ae!==void 0)return Ae}else if(Ce===N-2){if(ot?Ae=h.sweepBipartite(N,W,ce,Ge,Yt,xr,me,xt,kt,Ct):Ae=h.sweepBipartite(N,W,me,xt,kt,Ct,ce,Ge,Yt,xr),Ae!==void 0)return Ae}else V(Te++,Ce+1,me,xt,ce,Ge,ot,-1/0,1/0),V(Te++,Ce+1,ce,Ge,me,xt,ot^1,-1/0,1/0);if(xt<Re){var bt=d(N,Ce,ce,Ge,Yt,xr),Lt=Yt[Ee*bt+Ce],St=k(N,Ce,bt,Ge,Yt,xr,Lt);if(St<Ge&&V(Te++,Ce,xt,Re,St,Ge,(ot|4)+(Rt?16:0),Lt,rt),ce<bt&&V(Te++,Ce,xt,Re,ce,bt,(ot|2)+(Rt?16:0),qt,Lt),bt+1===St){if(Rt?Ae=X(N,Ce,W,xt,Re,kt,Ct,bt,Yt,xr[bt]):Ae=H(N,Ce,W,ot,xt,Re,kt,Ct,bt,Yt,xr[bt]),Ae!==void 0)return Ae}else if(bt<St){var Et;if(Rt){if(Et=_(N,Ce,xt,Re,kt,Ct,Lt),xt<Et){var dt=k(N,Ce,xt,Et,kt,Ct,Lt);if(Ce===N-2){if(xt<dt&&(Ae=h.sweepComplete(N,W,xt,dt,kt,Ct,bt,St,Yt,xr),Ae!==void 0)||dt<Et&&(Ae=h.sweepBipartite(N,W,dt,Et,kt,Ct,bt,St,Yt,xr),Ae!==void 0))return Ae}else xt<dt&&V(Te++,Ce+1,xt,dt,bt,St,16,-1/0,1/0),dt<Et&&(V(Te++,Ce+1,dt,Et,bt,St,0,-1/0,1/0),V(Te++,Ce+1,bt,St,dt,Et,1,-1/0,1/0))}}else ot?Et=C(N,Ce,xt,Re,kt,Ct,Lt):Et=_(N,Ce,xt,Re,kt,Ct,Lt),xt<Et&&(Ce===N-2?ot?Ae=h.sweepBipartite(N,W,bt,St,Yt,xr,xt,Et,kt,Ct):Ae=h.sweepBipartite(N,W,xt,Et,kt,Ct,bt,St,Yt,xr):(V(Te++,Ce+1,xt,Et,bt,St,ot,-1/0,1/0),V(Te++,Ce+1,bt,St,xt,Et,ot^1,-1/0,1/0)))}}}}}},3545:function(i,a,o){"use strict";i.exports=f;var s=o(8105),l=s("lo<p0"),u=8;function c(h,d,v,x,b,p){for(var E=2*h,k=E*(v+1)+d,A=v+1;A<x;++A,k+=E)for(var L=b[k],_=A,C=E*(A-1);_>v&&b[C+d]>L;--_,C-=E){for(var M=C,g=C+E,P=0;P<E;++P,++M,++g){var T=b[M];b[M]=b[g],b[g]=T}var F=p[_];p[_]=p[_-1],p[_-1]=F}}function f(h,d,v,x,b,p){if(x<=v+1)return v;for(var E=v,k=x,A=x+v>>>1,L=2*h,_=A,C=b[L*A+d];E<k;){if(k-E<u){c(h,d,E,k,b,p),C=b[L*A+d];break}var M=k-E,g=Math.random()*M+E|0,P=b[L*g+d],T=Math.random()*M+E|0,F=b[L*T+d],q=Math.random()*M+E|0,V=b[L*q+d];P<=F?V>=F?(_=T,C=F):P>=V?(_=g,C=P):(_=q,C=V):F>=V?(_=T,C=F):V>=P?(_=g,C=P):(_=q,C=V);for(var G=L*(k-1),N=L*_,H=0;H<L;++H,++G,++N){var X=b[G];b[G]=b[N],b[N]=X}var W=p[k-1];p[k-1]=p[_],p[_]=W,_=l(h,d,E,k-1,b,p,C);for(var G=L*(k-1),N=L*_,H=0;H<L;++H,++G,++N){var X=b[G];b[G]=b[N],b[N]=X}var W=p[k-1];if(p[k-1]=p[_],p[_]=W,A<_){for(k=_-1;E<k&&b[L*(k-1)+d]===C;)k-=1;k+=1}else if(_<A)for(E=_+1;E<k&&b[L*E+d]===C;)E+=1;else break}return l(h,d,v,A,b,p,b[L*A+d])}},8105:function(i){"use strict";i.exports=o;var a={"lo===p0":s,"lo<p0":l,"lo<=p0":u,"hi<=p0":c,"lo<p0&&p0<=hi":h,"lo<=p0&&p0<=hi":f,"!(lo>=p0)&&!(p1>=hi)":d};function o(v){return a[v]}function s(v,x,b,p,E,k,A){for(var L=2*v,_=L*b,C=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var F=E[_+g];if(F===A)if(M===T)M+=1,C+=L;else{for(var q=0;L>q;++q){var V=E[_+q];E[_+q]=E[C],E[C++]=V}var H=k[T];k[T]=k[M],k[M++]=H}}return M}function l(v,x,b,p,E,k,A){for(var L=2*v,_=L*b,C=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var F=E[_+g];if(F<A)if(M===T)M+=1,C+=L;else{for(var q=0;L>q;++q){var V=E[_+q];E[_+q]=E[C],E[C++]=V}var H=k[T];k[T]=k[M],k[M++]=H}}return M}function u(v,x,b,p,E,k,A){for(var L=2*v,_=L*b,C=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var F=E[_+P];if(F<=A)if(M===T)M+=1,C+=L;else{for(var q=0;L>q;++q){var V=E[_+q];E[_+q]=E[C],E[C++]=V}var H=k[T];k[T]=k[M],k[M++]=H}}return M}function c(v,x,b,p,E,k,A){for(var L=2*v,_=L*b,C=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var F=E[_+P];if(F<=A)if(M===T)M+=1,C+=L;else{for(var q=0;L>q;++q){var V=E[_+q];E[_+q]=E[C],E[C++]=V}var H=k[T];k[T]=k[M],k[M++]=H}}return M}function f(v,x,b,p,E,k,A){for(var L=2*v,_=L*b,C=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var F=E[_+g],q=E[_+P];if(F<=A&&A<=q)if(M===T)M+=1,C+=L;else{for(var V=0;L>V;++V){var H=E[_+V];E[_+V]=E[C],E[C++]=H}var X=k[T];k[T]=k[M],k[M++]=X}}return M}function h(v,x,b,p,E,k,A){for(var L=2*v,_=L*b,C=_,M=b,g=x,P=v+x,T=b;p>T;++T,_+=L){var F=E[_+g],q=E[_+P];if(F<A&&A<=q)if(M===T)M+=1,C+=L;else{for(var V=0;L>V;++V){var H=E[_+V];E[_+V]=E[C],E[C++]=H}var X=k[T];k[T]=k[M],k[M++]=X}}return M}function d(v,x,b,p,E,k,A,L){for(var _=2*v,C=_*b,M=C,g=b,P=x,T=v+x,F=b;p>F;++F,C+=_){var q=E[C+P],V=E[C+T];if(!(q>=A)&&!(L>=V))if(g===F)g+=1,M+=_;else{for(var H=0;_>H;++H){var X=E[C+H];E[C+H]=E[M],E[M++]=X}var G=k[F];k[F]=k[g],k[g++]=G}}return g}},4192:function(i){"use strict";i.exports=o;var a=32;function o(x,b){b<=4*a?s(0,b-1,x):v(0,b-1,x)}function s(x,b,p){for(var E=2*(x+1),k=x+1;k<=b;++k){for(var A=p[E++],L=p[E++],_=k,C=E-2;_-- >x;){var M=p[C-2],g=p[C-1];if(M<A)break;if(M===A&&g<L)break;p[C]=M,p[C+1]=g,C-=2}p[C]=A,p[C+1]=L}}function l(x,b,p){x*=2,b*=2;var E=p[x],k=p[x+1];p[x]=p[b],p[x+1]=p[b+1],p[b]=E,p[b+1]=k}function u(x,b,p){x*=2,b*=2,p[x]=p[b],p[x+1]=p[b+1]}function c(x,b,p,E){x*=2,b*=2,p*=2;var k=E[x],A=E[x+1];E[x]=E[b],E[x+1]=E[b+1],E[b]=E[p],E[b+1]=E[p+1],E[p]=k,E[p+1]=A}function f(x,b,p,E,k){x*=2,b*=2,k[x]=k[b],k[b]=p,k[x+1]=k[b+1],k[b+1]=E}function h(x,b,p){x*=2,b*=2;var E=p[x],k=p[b];return E<k?!1:E===k?p[x+1]>p[b+1]:!0}function d(x,b,p,E){x*=2;var k=E[x];return k<b?!0:k===b?E[x+1]<p:!1}function v(x,b,p){var E=(b-x+1)/6|0,k=x+E,A=b-E,L=x+b>>1,_=L-E,C=L+E,M=k,g=_,P=L,T=C,F=A,q=x+1,V=b-1,H=0;h(M,g,p)&&(H=M,M=g,g=H),h(T,F,p)&&(H=T,T=F,F=H),h(M,P,p)&&(H=M,M=P,P=H),h(g,P,p)&&(H=g,g=P,P=H),h(M,T,p)&&(H=M,M=T,T=H),h(P,T,p)&&(H=P,P=T,T=H),h(g,F,p)&&(H=g,g=F,F=H),h(g,P,p)&&(H=g,g=P,P=H),h(T,F,p)&&(H=T,T=F,F=H);for(var X=p[2*g],G=p[2*g+1],N=p[2*T],W=p[2*T+1],re=2*M,ae=2*P,_e=2*F,Me=2*k,ke=2*L,ge=2*A,ie=0;ie<2;++ie){var Te=p[re+ie],Ee=p[ae+ie],Ae=p[_e+ie];p[Me+ie]=Te,p[ke+ie]=Ee,p[ge+ie]=Ae}u(_,x,p),u(C,b,p);for(var ze=q;ze<=V;++ze)if(d(ze,X,G,p))ze!==q&&l(ze,q,p),++q;else if(!d(ze,N,W,p))for(;;)if(d(V,N,W,p)){d(V,X,G,p)?(c(ze,q,V,p),++q,--V):(l(ze,V,p),--V);break}else{if(--V<ze)break;continue}f(x,q-1,X,G,p),f(b,V+1,N,W,p),q-2-x<=a?s(x,q-2,p):v(x,q-2,p),b-(V+2)<=a?s(V+2,b,p):v(V+2,b,p),V-q<=a?s(q,V,p):v(q,V,p)}},855:function(i,a,o){"use strict";i.exports={init:k,sweepBipartite:_,sweepComplete:C,scanBipartite:M,scanComplete:g};var s=o(1888),l=o(8828),u=o(4192),c=1<<28,f=1024,h=s.mallocInt32(f),d=s.mallocInt32(f),v=s.mallocInt32(f),x=s.mallocInt32(f),b=s.mallocInt32(f),p=s.mallocInt32(f),E=s.mallocDouble(f*8);function k(P){var T=l.nextPow2(P);h.length<T&&(s.free(h),h=s.mallocInt32(T)),d.length<T&&(s.free(d),d=s.mallocInt32(T)),v.length<T&&(s.free(v),v=s.mallocInt32(T)),x.length<T&&(s.free(x),x=s.mallocInt32(T)),b.length<T&&(s.free(b),b=s.mallocInt32(T)),p.length<T&&(s.free(p),p=s.mallocInt32(T));var F=8*T;E.length<F&&(s.free(E),E=s.mallocDouble(F))}function A(P,T,F,q){var V=T[q],H=P[F-1];P[V]=H,T[H]=V}function L(P,T,F,q){P[F]=q,T[q]=F}function _(P,T,F,q,V,H,X,G,N,W){for(var re=0,ae=2*P,_e=P-1,Me=ae-1,ke=F;ke<q;++ke){var ge=H[ke],ie=ae*ke;E[re++]=V[ie+_e],E[re++]=-(ge+1),E[re++]=V[ie+Me],E[re++]=ge}for(var ke=X;ke<G;++ke){var ge=W[ke]+c,Te=ae*ke;E[re++]=N[Te+_e],E[re++]=-ge,E[re++]=N[Te+Me],E[re++]=ge}var Ee=re>>>1;u(E,Ee);for(var Ae=0,ze=0,ke=0;ke<Ee;++ke){var Ce=E[2*ke+1]|0;if(Ce>=c)Ce=Ce-c|0,A(v,x,ze--,Ce);else if(Ce>=0)A(h,d,Ae--,Ce);else if(Ce<=-c){Ce=-Ce-c|0;for(var me=0;me<Ae;++me){var Re=T(h[me],Ce);if(Re!==void 0)return Re}L(v,x,ze++,Ce)}else{Ce=-Ce-1|0;for(var me=0;me<ze;++me){var Re=T(Ce,v[me]);if(Re!==void 0)return Re}L(h,d,Ae++,Ce)}}}function C(P,T,F,q,V,H,X,G,N,W){for(var re=0,ae=2*P,_e=P-1,Me=ae-1,ke=F;ke<q;++ke){var ge=H[ke]+1<<1,ie=ae*ke;E[re++]=V[ie+_e],E[re++]=-ge,E[re++]=V[ie+Me],E[re++]=ge}for(var ke=X;ke<G;++ke){var ge=W[ke]+1<<1,Te=ae*ke;E[re++]=N[Te+_e],E[re++]=-ge|1,E[re++]=N[Te+Me],E[re++]=ge|1}var Ee=re>>>1;u(E,Ee);for(var Ae=0,ze=0,Ce=0,ke=0;ke<Ee;++ke){var me=E[2*ke+1]|0,Re=me&1;if(ke<Ee-1&&me>>1===E[2*ke+3]>>1&&(Re=2,ke+=1),me<0){for(var ce=-(me>>1)-1,Ge=0;Ge<Ce;++Ge){var nt=T(b[Ge],ce);if(nt!==void 0)return nt}if(Re!==0)for(var Ge=0;Ge<Ae;++Ge){var nt=T(h[Ge],ce);if(nt!==void 0)return nt}if(Re!==1)for(var Ge=0;Ge<ze;++Ge){var nt=T(v[Ge],ce);if(nt!==void 0)return nt}Re===0?L(h,d,Ae++,ce):Re===1?L(v,x,ze++,ce):Re===2&&L(b,p,Ce++,ce)}else{var ce=(me>>1)-1;Re===0?A(h,d,Ae--,ce):Re===1?A(v,x,ze--,ce):Re===2&&A(b,p,Ce--,ce)}}}function M(P,T,F,q,V,H,X,G,N,W,re,ae){var _e=0,Me=2*P,ke=T,ge=T+P,ie=1,Te=1;q?Te=c:ie=c;for(var Ee=V;Ee<H;++Ee){var Ae=Ee+ie,ze=Me*Ee;E[_e++]=X[ze+ke],E[_e++]=-Ae,E[_e++]=X[ze+ge],E[_e++]=Ae}for(var Ee=N;Ee<W;++Ee){var Ae=Ee+Te,Ce=Me*Ee;E[_e++]=re[Ce+ke],E[_e++]=-Ae}var me=_e>>>1;u(E,me);for(var Re=0,Ee=0;Ee<me;++Ee){var ce=E[2*Ee+1]|0;if(ce<0){var Ae=-ce,Ge=!1;if(Ae>=c?(Ge=!q,Ae-=c):(Ge=!!q,Ae-=1),Ge)L(h,d,Re++,Ae);else{var nt=ae[Ae],ct=Me*Ae,qt=re[ct+T+1],rt=re[ct+T+1+P];e:for(var ot=0;ot<Re;++ot){var Rt=h[ot],kt=Me*Rt;if(!(rt<X[kt+T+1]||X[kt+T+1+P]<qt)){for(var Ct=T+2;Ct<P;++Ct)if(re[ct+Ct+P]<X[kt+Ct]||X[kt+Ct+P]<re[ct+Ct])continue e;var Yt=G[Rt],xr;if(q?xr=F(nt,Yt):xr=F(Yt,nt),xr!==void 0)return xr}}}}else A(h,d,Re--,ce-ie)}}function g(P,T,F,q,V,H,X,G,N,W,re){for(var ae=0,_e=2*P,Me=T,ke=T+P,ge=q;ge<V;++ge){var ie=ge+c,Te=_e*ge;E[ae++]=H[Te+Me],E[ae++]=-ie,E[ae++]=H[Te+ke],E[ae++]=ie}for(var ge=G;ge<N;++ge){var ie=ge+1,Ee=_e*ge;E[ae++]=W[Ee+Me],E[ae++]=-ie}var Ae=ae>>>1;u(E,Ae);for(var ze=0,ge=0;ge<Ae;++ge){var Ce=E[2*ge+1]|0;if(Ce<0){var ie=-Ce;if(ie>=c)h[ze++]=ie-c;else{ie-=1;var me=re[ie],Re=_e*ie,ce=W[Re+T+1],Ge=W[Re+T+1+P];e:for(var nt=0;nt<ze;++nt){var ct=h[nt],qt=X[ct];if(qt===me)break;var rt=_e*ct;if(!(Ge<H[rt+T+1]||H[rt+T+1+P]<ce)){for(var ot=T+2;ot<P;++ot)if(W[Re+ot+P]<H[rt+ot]||H[rt+ot+P]<W[Re+ot])continue e;var Rt=F(qt,me);if(Rt!==void 0)return Rt}}}}else{for(var ie=Ce-c,nt=ze-1;nt>=0;--nt)if(h[nt]===ie){for(var ot=nt+1;ot<ze;++ot)h[ot-1]=h[ot];break}--ze}}}},2538:function(i,a,o){"use strict";var s=o(8902),l=o(5542),u=o(2272),c=o(5023);i.exports=x;function f(b){return[Math.min(b[0],b[1]),Math.max(b[0],b[1])]}function h(b,p){return b[0]-p[0]||b[1]-p[1]}function d(b){return b.map(f).sort(h)}function v(b,p,E){return p in b?b[p]:E}function x(b,p,E){Array.isArray(p)?(E=E||{},p=p||[]):(E=p||{},p=[]);var k=!!v(E,"delaunay",!0),A=!!v(E,"interior",!0),L=!!v(E,"exterior",!0),_=!!v(E,"infinity",!1);if(!A&&!L||b.length===0)return[];var C=s(b,p);if(k||A!==L||_){for(var M=l(b.length,d(p)),g=0;g<C.length;++g){var P=C[g];M.addTriangle(P[0],P[1],P[2])}return k&&u(b,M),L?A?_?c(M,0,_):M.cells():c(M,1,_):c(M,-1)}else return C}},2272:function(i,a,o){"use strict";var s=o(2646)[4],l=o(2478);i.exports=c;function u(f,h,d,v,x,b){var p=h.opposite(v,x);if(!(p<0)){if(x<v){var E=v;v=x,x=E,E=b,b=p,p=E}h.isConstraint(v,x)||s(f[v],f[x],f[b],f[p])<0&&d.push(v,x)}}function c(f,h){for(var d=[],v=f.length,x=h.stars,b=0;b<v;++b)for(var p=x[b],E=1;E<p.length;E+=2){var k=p[E];if(!(k<b)&&!h.isConstraint(b,k)){for(var A=p[E-1],L=-1,_=1;_<p.length;_+=2)if(p[_-1]===k){L=p[_];break}L<0||s(f[b],f[k],f[A],f[L])<0&&d.push(b,k)}}for(;d.length>0;){for(var k=d.pop(),b=d.pop(),A=-1,L=-1,p=x[b],C=1;C<p.length;C+=2){var M=p[C-1],g=p[C];M===k?L=g:g===k&&(A=M)}A<0||L<0||s(f[b],f[k],f[A],f[L])>=0||(h.flip(b,k),u(f,h,d,A,b,L),u(f,h,d,b,L,A),u(f,h,d,L,k,A),u(f,h,d,k,A,L))}}},5023:function(i,a,o){"use strict";var s=o(2478);i.exports=d;function l(v,x,b,p,E,k,A){this.cells=v,this.neighbor=x,this.flags=p,this.constraint=b,this.active=E,this.next=k,this.boundary=A}var u=l.prototype;function c(v,x){return v[0]-x[0]||v[1]-x[1]||v[2]-x[2]}u.locate=function(){var v=[0,0,0];return function(x,b,p){var E=x,k=b,A=p;return b<p?b<x&&(E=b,k=p,A=x):p<x&&(E=p,k=x,A=b),E<0?-1:(v[0]=E,v[1]=k,v[2]=A,s.eq(this.cells,v,c))}}();function f(v,x){for(var b=v.cells(),p=b.length,E=0;E<p;++E){var k=b[E],A=k[0],L=k[1],_=k[2];L<_?L<A&&(k[0]=L,k[1]=_,k[2]=A):_<A&&(k[0]=_,k[1]=A,k[2]=L)}b.sort(c);for(var C=new Array(p),E=0;E<C.length;++E)C[E]=0;var M=[],g=[],P=new Array(3*p),T=new Array(3*p),F=null;x&&(F=[]);for(var q=new l(b,P,T,C,M,g,F),E=0;E<p;++E)for(var k=b[E],V=0;V<3;++V){var A=k[V],L=k[(V+1)%3],H=P[3*E+V]=q.locate(L,A,v.opposite(L,A)),X=T[3*E+V]=v.isConstraint(A,L);H<0&&(X?g.push(E):(M.push(E),C[E]=1),x&&F.push([L,A,-1]))}return q}function h(v,x,b){for(var p=0,E=0;E<v.length;++E)x[E]===b&&(v[p++]=v[E]);return v.length=p,v}function d(v,x,b){var p=f(v,b);if(x===0)return b?p.cells.concat(p.boundary):p.cells;for(var E=1,k=p.active,A=p.next,L=p.flags,_=p.cells,C=p.constraint,M=p.neighbor;k.length>0||A.length>0;){for(;k.length>0;){var g=k.pop();if(L[g]!==-E){L[g]=E;for(var P=_[g],T=0;T<3;++T){var F=M[3*g+T];F>=0&&L[F]===0&&(C[3*g+T]?A.push(F):(k.push(F),L[F]=E))}}}var q=A;A=k,k=q,A.length=0,E=-E}var V=h(_,L,x);return b?V.concat(p.boundary):V}},8902:function(i,a,o){"use strict";var s=o(2478),l=o(3250)[3],u=0,c=1,f=2;i.exports=A;function h(L,_,C,M,g){this.a=L,this.b=_,this.idx=C,this.lowerIds=M,this.upperIds=g}function d(L,_,C,M){this.a=L,this.b=_,this.type=C,this.idx=M}function v(L,_){var C=L.a[0]-_.a[0]||L.a[1]-_.a[1]||L.type-_.type;return C||L.type!==u&&(C=l(L.a,L.b,_.b),C)?C:L.idx-_.idx}function x(L,_){return l(L.a,L.b,_)}function b(L,_,C,M,g){for(var P=s.lt(_,M,x),T=s.gt(_,M,x),F=P;F<T;++F){for(var q=_[F],V=q.lowerIds,X=V.length;X>1&&l(C[V[X-2]],C[V[X-1]],M)>0;)L.push([V[X-1],V[X-2],g]),X-=1;V.length=X,V.push(g);for(var H=q.upperIds,X=H.length;X>1&&l(C[H[X-2]],C[H[X-1]],M)<0;)L.push([H[X-2],H[X-1],g]),X-=1;H.length=X,H.push(g)}}function p(L,_){var C;return L.a[0]<_.a[0]?C=l(L.a,L.b,_.a):C=l(_.b,_.a,L.a),C||(_.b[0]<L.b[0]?C=l(L.a,L.b,_.b):C=l(_.b,_.a,L.b),C||L.idx-_.idx)}function E(L,_,C){var M=s.le(L,C,p),g=L[M],P=g.upperIds,T=P[P.length-1];g.upperIds=[T],L.splice(M+1,0,new h(C.a,C.b,C.idx,[T],P))}function k(L,_,C){var M=C.a;C.a=C.b,C.b=M;var g=s.eq(L,C,p),P=L[g],T=L[g-1];T.upperIds=P.upperIds,L.splice(g,1)}function A(L,_){for(var C=L.length,M=_.length,g=[],P=0;P<C;++P)g.push(new d(L[P],null,u,P));for(var P=0;P<M;++P){var T=_[P],F=L[T[0]],q=L[T[1]];F[0]<q[0]?g.push(new d(F,q,f,P),new d(q,F,c,P)):F[0]>q[0]&&g.push(new d(q,F,f,P),new d(F,q,c,P))}g.sort(v);for(var V=g[0].a[0]-(1+Math.abs(g[0].a[0]))*Math.pow(2,-52),H=[new h([V,1],[V,0],-1,[],[],[],[])],X=[],P=0,G=g.length;P<G;++P){var N=g[P],W=N.type;W===u?b(X,H,L,N.a,N.idx):W===f?E(H,L,N):k(H,L,N)}return X}},5542:function(i,a,o){"use strict";var s=o(2478);i.exports=f;function l(h,d){this.stars=h,this.edges=d}var u=l.prototype;function c(h,d,v){for(var x=1,b=h.length;x<b;x+=2)if(h[x-1]===d&&h[x]===v){h[x-1]=h[b-2],h[x]=h[b-1],h.length=b-2;return}}u.isConstraint=function(){var h=[0,0];function d(v,x){return v[0]-x[0]||v[1]-x[1]}return function(v,x){return h[0]=Math.min(v,x),h[1]=Math.max(v,x),s.eq(this.edges,h,d)>=0}}(),u.removeTriangle=function(h,d,v){var x=this.stars;c(x[h],d,v),c(x[d],v,h),c(x[v],h,d)},u.addTriangle=function(h,d,v){var x=this.stars;x[h].push(d,v),x[d].push(v,h),x[v].push(h,d)},u.opposite=function(h,d){for(var v=this.stars[d],x=1,b=v.length;x<b;x+=2)if(v[x]===h)return v[x-1];return-1},u.flip=function(h,d){var v=this.opposite(h,d),x=this.opposite(d,h);this.removeTriangle(h,d,v),this.removeTriangle(d,h,x),this.addTriangle(h,x,v),this.addTriangle(d,v,x)},u.edges=function(){for(var h=this.stars,d=[],v=0,x=h.length;v<x;++v)for(var b=h[v],p=0,E=b.length;p<E;p+=2)d.push([b[p],b[p+1]]);return d},u.cells=function(){for(var h=this.stars,d=[],v=0,x=h.length;v<x;++v)for(var b=h[v],p=0,E=b.length;p<E;p+=2){var k=b[p],A=b[p+1];v<Math.min(k,A)&&d.push([v,k,A])}return d};function f(h,d){for(var v=new Array(h),x=0;x<h;++x)v[x]=[];return new l(v,d)}},2419:function(i){"use strict";i.exports=a;function a(o){for(var s=1,l=1;l<o.length;++l)for(var u=0;u<l;++u)if(o[l]<o[u])s=-s;else if(o[u]===o[l])return 0;return s}},3628:function(i,a,o){"use strict";var s=o(1338),l=o(727);function u(h,d){for(var v=0,x=h.length,b=0;b<x;++b)v+=h[b]*d[b];return v}function c(h){var d=h.length;if(d===0)return[];var v=h[0].length,x=s([h.length+1,h.length+1],1),b=s([h.length+1],1);x[d][d]=0;for(var p=0;p<d;++p){for(var E=0;E<=p;++E)x[E][p]=x[p][E]=2*u(h[p],h[E]);b[p]=u(h[p],h[p])}for(var k=l(x,b),A=0,L=k[d+1],p=0;p<L.length;++p)A+=L[p];for(var _=new Array(d),p=0;p<d;++p){for(var L=k[p],C=0,E=0;E<L.length;++E)C+=L[E];_[p]=C/A}return _}function f(h){if(h.length===0)return[];for(var d=h[0].length,v=s([d]),x=c(h),b=0;b<h.length;++b)for(var p=0;p<d;++p)v[p]+=h[b][p]*x[b];return v}f.barycenetric=c,i.exports=f},6037:function(i,a,o){i.exports=l;var s=o(3628);function l(u){for(var c=s(u),f=0,h=0;h<u.length;++h)for(var d=u[h],v=0;v<c.length;++v)f+=Math.pow(d[v]-c[v],2);return Math.sqrt(f/u.length)}},332:function(i,a,o){"use strict";i.exports=F;var s=o(1755),l=o(6867),u=o(1125),c=o(7842),f=o(1318),h=o(946),d=o(5838),v=o(1278),x=o(3637);function b(q){var V=h(q);return[v(V,-1/0),v(V,1/0)]}function p(q,V){for(var H=new Array(V.length),X=0;X<V.length;++X){var G=V[X],N=q[G[0]],W=q[G[1]];H[X]=[v(Math.min(N[0],W[0]),-1/0),v(Math.min(N[1],W[1]),-1/0),v(Math.max(N[0],W[0]),1/0),v(Math.max(N[1],W[1]),1/0)]}return H}function E(q){for(var V=new Array(q.length),H=0;H<q.length;++H){var X=q[H];V[H]=[v(X[0],-1/0),v(X[1],-1/0),v(X[0],1/0),v(X[1],1/0)]}return V}function k(q,V,H){var X=[];return l(H,function(G,N){var W=V[G],re=V[N];if(!(W[0]===re[0]||W[0]===re[1]||W[1]===re[0]||W[1]===re[1])){var ae=q[W[0]],_e=q[W[1]],Me=q[re[0]],ke=q[re[1]];u(ae,_e,Me,ke)&&X.push([G,N])}}),X}function A(q,V,H,X){var G=[];return l(H,X,function(N,W){var re=V[N];if(!(re[0]===W||re[1]===W)){var ae=q[W],_e=q[re[0]],Me=q[re[1]];u(_e,Me,ae,ae)&&G.push([N,W])}}),G}function L(q,V,H,X,G){var N,W,re=q.map(function(ct){return[c(ct[0]),c(ct[1])]});for(N=0;N<H.length;++N){var ae=H[N];W=ae[0];var _e=ae[1],Me=V[W],ke=V[_e],ge=x(d(q[Me[0]]),d(q[Me[1]]),d(q[ke[0]]),d(q[ke[1]]));if(ge){var ie=q.length;q.push([h(ge[0]),h(ge[1])]),re.push(ge),X.push([W,ie],[_e,ie])}}for(X.sort(function(ct,qt){if(ct[0]!==qt[0])return ct[0]-qt[0];var rt=re[ct[1]],ot=re[qt[1]];return f(rt[0],ot[0])||f(rt[1],ot[1])}),N=X.length-1;N>=0;--N){var Te=X[N];W=Te[0];var Ee=V[W],Ae=Ee[0],ze=Ee[1],Ce=q[Ae],me=q[ze];if((Ce[0]-me[0]||Ce[1]-me[1])<0){var Re=Ae;Ae=ze,ze=Re}Ee[0]=Ae;var ce=Ee[1]=Te[1],Ge;for(G&&(Ge=Ee[2]);N>0&&X[N-1][0]===W;){var Te=X[--N],nt=Te[1];G?V.push([ce,nt,Ge]):V.push([ce,nt]),ce=nt}G?V.push([ce,ze,Ge]):V.push([ce,ze])}return re}function _(q,V,H){for(var X=V.length,G=new s(X),N=[],W=0;W<V.length;++W){var re=V[W],ae=b(re[0]),_e=b(re[1]);N.push([v(ae[0],-1/0),v(_e[0],-1/0),v(ae[1],1/0),v(_e[1],1/0)])}l(N,function(Te,Ee){G.link(Te,Ee)});for(var Me=!0,ke=new Array(X),W=0;W<X;++W){var ge=G.find(W);ge!==W&&(Me=!1,q[ge]=[Math.min(q[W][0],q[ge][0]),Math.min(q[W][1],q[ge][1])])}if(Me)return null;for(var ie=0,W=0;W<X;++W){var ge=G.find(W);ge===W?(ke[W]=ie,q[ie++]=q[W]):ke[W]=-1}q.length=ie;for(var W=0;W<X;++W)ke[W]<0&&(ke[W]=ke[G.find(W)]);return ke}function C(q,V){return q[0]-V[0]||q[1]-V[1]}function M(q,V){var H=q[0]-V[0]||q[1]-V[1];return H||(q[2]<V[2]?-1:q[2]>V[2]?1:0)}function g(q,V,H){if(q.length!==0){if(V)for(var X=0;X<q.length;++X){var G=q[X],N=V[G[0]],W=V[G[1]];G[0]=Math.min(N,W),G[1]=Math.max(N,W)}else for(var X=0;X<q.length;++X){var G=q[X],N=G[0],W=G[1];G[0]=Math.min(N,W),G[1]=Math.max(N,W)}H?q.sort(M):q.sort(C);for(var re=1,X=1;X<q.length;++X){var ae=q[X-1],_e=q[X];_e[0]===ae[0]&&_e[1]===ae[1]&&(!H||_e[2]===ae[2])||(q[re++]=_e)}q.length=re}}function P(q,V,H){var X=_(q,[],E(q));return g(V,X,H),!!X}function T(q,V,H){var X=p(q,V),G=k(q,V,X),N=E(q),W=A(q,V,X,N),re=L(q,V,G,W,H),ae=_(q,re,N);return g(V,ae,H),ae?!0:G.length>0||W.length>0}function F(q,V,H){var X;if(H){X=V;for(var G=new Array(V.length),N=0;N<V.length;++N){var W=V[N];G[N]=[W[0],W[1],H[N]]}V=G}for(var re=P(q,V,!!H);T(q,V,!!H);)re=!0;if(H&&re){X.length=0,H.length=0;for(var N=0;N<V.length;++N){var W=V[N];X.push([W[0],W[1]]),H.push(W[2])}}return re}},3637:function(i,a,o){"use strict";i.exports=x;var s=o(6504),l=o(8697),u=o(5572),c=o(7721),f=o(544),h=o(2653),d=o(8987);function v(b,p){return u(s(b[0],p[1]),s(b[1],p[0]))}function x(b,p,E,k){var A=f(p,b),L=f(k,E),_=v(A,L);if(c(_)===0)return null;var C=f(b,E),M=v(L,C),g=l(M,_),P=d(A,g),T=h(b,P);return T}},3642:function(i){i.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]}],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]}]}},6729:function(i,a,o){"use strict";var s=o(3642),l=o(395);i.exports=u;function u(d){var v,x,b,p,E,k,A,L,g,_,C;if(d||(d={}),L=(d.nshades||72)-1,A=d.format||"hex",k=d.colormap,k||(k="jet"),typeof k=="string"){if(k=k.toLowerCase(),!s[k])throw Error(k+" not a supported colorscale");E=s[k]}else if(Array.isArray(k))E=k.slice();else throw Error("unsupported colormap option",k);if(E.length>L+1)throw new Error(k+" map requires nshades to be at least size "+E.length);Array.isArray(d.alpha)?d.alpha.length!==2?_=[1,1]:_=d.alpha.slice():typeof d.alpha=="number"?_=[d.alpha,d.alpha]:_=[1,1],v=E.map(function(F){return Math.round(F.index*L)}),_[0]=Math.min(Math.max(_[0],0),1),_[1]=Math.min(Math.max(_[1],0),1);var M=E.map(function(F,q){var V=E[q].index,H=E[q].rgb.slice();return H.length===4&&H[3]>=0&&H[3]<=1||(H[3]=_[0]+(_[1]-_[0])*V),H}),g=[];for(C=0;C<v.length-1;++C){p=v[C+1]-v[C],x=M[C],b=M[C+1];for(var P=0;P<p;P++){var T=P/p;g.push([Math.round(l(x[0],b[0],T)),Math.round(l(x[1],b[1],T)),Math.round(l(x[2],b[2],T)),l(x[3],b[3],T)])}}return g.push(E[E.length-1].rgb.concat(_[1])),A==="hex"?g=g.map(f):A==="rgbaString"?g=g.map(h):A==="float"&&(g=g.map(c)),g}function c(d){return[d[0]/255,d[1]/255,d[2]/255,d[3]]}function f(d){for(var v,x="#",b=0;b<3;++b)v=d[b],v=v.toString(16),x+=("00"+v).substr(v.length);return x}function h(d){return"rgba("+d.join(",")+")"}},3140:function(i,a,o){"use strict";i.exports=d;var s=o(3250),l=o(8572),u=o(9362),c=o(5382),f=o(8210);function h(v,x,b){var p=u(v[0],-x[0]),E=u(v[1],-x[1]),k=u(b[0],-x[0]),A=u(b[1],-x[1]),L=f(c(p,k),c(E,A));return L[L.length-1]>=0}function d(v,x,b,p){var E=s(x,b,p);if(E===0){var k=l(s(v,x,b)),A=l(s(v,x,p));if(k===A){if(k===0){var L=h(v,x,b),_=h(v,x,p);return L===_?0:L?1:-1}return 0}else{if(A===0)return k>0||h(v,x,p)?-1:1;if(k===0)return A>0||h(v,x,b)?1:-1}return l(A-k)}var C=s(v,x,b);if(C>0)return E>0&&s(v,x,p)>0?1:-1;if(C<0)return E>0||s(v,x,p)>0?1:-1;var M=s(v,x,p);return M>0||h(v,x,b)?1:-1}},8572:function(i){"use strict";i.exports=function(o){return o<0?-1:o>0?1:0}},8507:function(i){i.exports=s;var a=Math.min;function o(l,u){return l-u}function s(l,u){var c=l.length,f=l.length-u.length;if(f)return f;switch(c){case 0:return 0;case 1:return l[0]-u[0];case 2:return l[0]+l[1]-u[0]-u[1]||a(l[0],l[1])-a(u[0],u[1]);case 3:var h=l[0]+l[1],d=u[0]+u[1];if(f=h+l[2]-(d+u[2]),f)return f;var v=a(l[0],l[1]),x=a(u[0],u[1]);return a(v,l[2])-a(x,u[2])||a(v+l[2],h)-a(x+u[2],d);case 4:var b=l[0],p=l[1],E=l[2],k=l[3],A=u[0],L=u[1],_=u[2],C=u[3];return b+p+E+k-(A+L+_+C)||a(b,p,E,k)-a(A,L,_,C,A)||a(b+p,b+E,b+k,p+E,p+k,E+k)-a(A+L,A+_,A+C,L+_,L+C,_+C)||a(b+p+E,b+p+k,b+E+k,p+E+k)-a(A+L+_,A+L+C,A+_+C,L+_+C);default:for(var M=l.slice().sort(o),g=u.slice().sort(o),P=0;P<c;++P)if(f=M[P]-g[P],f)return f;return 0}}},3788:function(i,a,o){"use strict";var s=o(8507),l=o(2419);i.exports=u;function u(c,f){return s(c,f)||l(c)-l(f)}},7352:function(i,a,o){"use strict";var s=o(5721),l=o(4750),u=o(2690);i.exports=c;function c(f){var h=f.length;if(h===0)return[];if(h===1)return[[0]];var d=f[0].length;return d===0?[]:d===1?s(f):d===2?l(f):u(f,d)}},5721:function(i){"use strict";i.exports=a;function a(o){for(var s=0,l=0,u=1;u<o.length;++u)o[u][0]<o[s][0]&&(s=u),o[u][0]>o[l][0]&&(l=u);return s<l?[[s],[l]]:s>l?[[l],[s]]:[[s]]}},4750:function(i,a,o){"use strict";i.exports=l;var s=o(3090);function l(u){var c=s(u),f=c.length;if(f<=2)return[];for(var h=new Array(f),d=c[f-1],v=0;v<f;++v){var x=c[v];h[v]=[d,x],d=x}return h}},2690:function(i,a,o){"use strict";i.exports=f;var s=o(8954),l=o(3952);function u(h,d){for(var v=h.length,x=new Array(v),b=0;b<d.length;++b)x[b]=h[d[b]];for(var p=d.length,b=0;b<v;++b)d.indexOf(b)<0&&(x[p++]=h[b]);return x}function c(h,d){for(var v=h.length,x=d.length,b=0;b<v;++b)for(var p=h[b],E=0;E<p.length;++E){var k=p[E];if(k<x)p[E]=d[k];else{k=k-x;for(var A=0;A<x;++A)k>=d[A]&&(k+=1);p[E]=k}}return h}function f(h,d){try{return s(h,!0)}catch(p){var v=l(h);if(v.length<=d)return[];var x=u(h,v),b=s(x,!0);return c(b,v)}}},4769:function(i){"use strict";function a(s,l,u,c,f,h){var d=6*f*f-6*f,v=3*f*f-4*f+1,x=-6*f*f+6*f,b=3*f*f-2*f;if(s.length){h||(h=new Array(s.length));for(var p=s.length-1;p>=0;--p)h[p]=d*s[p]+v*l[p]+x*u[p]+b*c[p];return h}return d*s+v*l+x*u[p]+b*c}function o(s,l,u,c,f,h){var d=f-1,v=f*f,x=d*d,b=(1+2*f)*x,p=f*x,E=v*(3-2*f),k=v*d;if(s.length){h||(h=new Array(s.length));for(var A=s.length-1;A>=0;--A)h[A]=b*s[A]+p*l[A]+E*u[A]+k*c[A];return h}return b*s+p*l+E*u+k*c}i.exports=o,i.exports.derivative=a},7642:function(i,a,o){"use strict";var s=o(8954),l=o(1682);i.exports=h;function u(d,v){this.point=d,this.index=v}function c(d,v){for(var x=d.point,b=v.point,p=x.length,E=0;E<p;++E){var k=b[E]-x[E];if(k)return k}return 0}function f(d,v,x){if(d===1)return x?[[-1,0]]:[];var b=v.map(function(L,_){return[L[0],_]});b.sort(function(L,_){return L[0]-_[0]});for(var p=new Array(d-1),E=1;E<d;++E){var k=b[E-1],A=b[E];p[E-1]=[k[1],A[1]]}return x&&p.push([-1,p[0][1]],[p[d-1][1],-1]),p}function h(d,v){var x=d.length;if(x===0)return[];var b=d[0].length;if(b<1)return[];if(b===1)return f(x,d,v);for(var p=new Array(x),E=1,k=0;k<x;++k){for(var A=d[k],L=new Array(b+1),_=0,C=0;C<b;++C){var M=A[C];L[C]=M,_+=M*M}L[b]=_,p[k]=new u(L,k),E=Math.max(_,E)}l(p,c),x=p.length;for(var g=new Array(x+b+1),P=new Array(x+b+1),T=(b+1)*(b+1)*E,F=new Array(b+1),k=0;k<=b;++k)F[k]=0;F[b]=T,g[0]=F.slice(),P[0]=-1;for(var k=0;k<=b;++k){var L=F.slice();L[k]=1,g[k+1]=L,P[k+1]=-1}for(var k=0;k<x;++k){var q=p[k];g[k+b+1]=q.point,P[k+b+1]=q.index}var V=s(g,!1);if(v?V=V.filter(function(H){for(var X=0,G=0;G<=b;++G){var N=P[H[G]];if(N<0&&++X>=2)return!1;H[G]=N}return!0}):V=V.filter(function(H){for(var X=0;X<=b;++X){var G=P[H[X]];if(G<0)return!1;H[X]=G}return!0}),b&1)for(var k=0;k<V.length;++k){var q=V[k],L=q[0];q[0]=q[1],q[1]=L}return V}},2361:function(i){var a=!1;if(typeof Float64Array!="undefined"){var o=new Float64Array(1),s=new Uint32Array(o.buffer);if(o[0]=1,a=!0,s[1]===1072693248){let E=function(L,_){return s[0]=L,s[1]=_,o[0]},k=function(L){return o[0]=L,s[0]},A=function(L){return o[0]=L,s[1]};var u=E,c=k,f=A;i.exports=function(_){return o[0]=_,[s[0],s[1]]},i.exports.pack=E,i.exports.lo=k,i.exports.hi=A}else if(s[0]===1072693248){let E=function(L,_){return s[1]=L,s[0]=_,o[0]},k=function(L){return o[0]=L,s[1]},A=function(L){return o[0]=L,s[0]};var h=E,d=k,v=A;i.exports=function(_){return o[0]=_,[s[1],s[0]]},i.exports.pack=E,i.exports.lo=k,i.exports.hi=A}else a=!1}if(!a){let E=function(L,_){return l.writeUInt32LE(L,0,!0),l.writeUInt32LE(_,4,!0),l.readDoubleLE(0,!0)},k=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(0,!0)},A=function(L){return l.writeDoubleLE(L,0,!0),l.readUInt32LE(4,!0)};var x=E,b=k,p=A,l=new Buffer(8);i.exports=function(_){return l.writeDoubleLE(_,0,!0),[l.readUInt32LE(0,!0),l.readUInt32LE(4,!0)]},i.exports.pack=E,i.exports.lo=k,i.exports.hi=A}i.exports.sign=function(E){return i.exports.hi(E)>>>31},i.exports.exponent=function(E){var k=i.exports.hi(E);return(k<<1>>>21)-1023},i.exports.fraction=function(E){var k=i.exports.lo(E),A=i.exports.hi(E),L=A&(1<<20)-1;return A&2146435072&&(L+=1048576),[k,L]},i.exports.denormalized=function(E){var k=i.exports.hi(E);return!(k&2146435072)}},1338:function(i){"use strict";function a(l,u,c){var f=l[c]|0;if(f<=0)return[];var h=new Array(f),d;if(c===l.length-1)for(d=0;d<f;++d)h[d]=u;else for(d=0;d<f;++d)h[d]=a(l,u,c+1);return h}function o(l,u){var c,f;for(c=new Array(l),f=0;f<l;++f)c[f]=u;return c}function s(l,u){switch(typeof u=="undefined"&&(u=0),typeof l){case"number":if(l>0)return o(l|0,u);break;case"object":if(typeof l.length=="number")return a(l,u,0);break}return[]}i.exports=s},3134:function(i,a,o){"use strict";i.exports=l;var s=o(1682);function l(u,c){var f=u.length;if(typeof c!="number"){c=0;for(var h=0;h<f;++h){var d=u[h];c=Math.max(c,d[0],d[1])}c=(c|0)+1}c=c|0;for(var v=new Array(c),h=0;h<c;++h)v[h]=[];for(var h=0;h<f;++h){var d=u[h];v[d[0]].push(d[1]),v[d[1]].push(d[0])}for(var x=0;x<c;++x)s(v[x],function(b,p){return b-p});return v}},5033:function(i){"use strict";i.exports=a;function a(o,s,l){var u=s||0,c=l||1;return[[o[12]+o[0],o[13]+o[1],o[14]+o[2],o[15]+o[3]],[o[12]-o[0],o[13]-o[1],o[14]-o[2],o[15]-o[3]],[o[12]+o[4],o[13]+o[5],o[14]+o[6],o[15]+o[7]],[o[12]-o[4],o[13]-o[5],o[14]-o[6],o[15]-o[7]],[u*o[12]+o[8],u*o[13]+o[9],u*o[14]+o[10],u*o[15]+o[11]],[c*o[12]-o[8],c*o[13]-o[9],c*o[14]-o[10],c*o[15]-o[11]]]}},9215:function(i,a,o){"use strict";i.exports=d;var s=o(4769),l=o(2478);function u(v,x,b){return Math.min(x,Math.max(v,b))}function c(v,x,b){this.dimension=v.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var p=0;p<this.dimension;++p)this.bounds[0][p]=-1/0,this.bounds[1][p]=1/0;this._state=v.slice().reverse(),this._velocity=x.slice().reverse(),this._time=[b],this._scratch=[v.slice(),v.slice(),v.slice(),v.slice(),v.slice()]}var f=c.prototype;f.flush=function(v){var x=l.gt(this._time,v)-1;x<=0||(this._time.splice(0,x),this._state.splice(0,x*this.dimension),this._velocity.splice(0,x*this.dimension))},f.curve=function(v){var x=this._time,b=x.length,p=l.le(x,v),E=this._scratch[0],k=this._state,A=this._velocity,L=this.dimension,_=this.bounds;if(p<0)for(var C=L-1,M=0;M<L;++M,--C)E[M]=k[C];else if(p>=b-1)for(var C=k.length-1,g=v-x[b-1],M=0;M<L;++M,--C)E[M]=k[C]+g*A[C];else{for(var C=L*(p+1)-1,P=x[p],T=x[p+1],F=T-P||1,q=this._scratch[1],V=this._scratch[2],H=this._scratch[3],X=this._scratch[4],G=!0,M=0;M<L;++M,--C)q[M]=k[C],H[M]=A[C]*F,V[M]=k[C+L],X[M]=A[C+L]*F,G=G&&q[M]===V[M]&&H[M]===X[M]&&H[M]===0;if(G)for(var M=0;M<L;++M)E[M]=q[M];else s(q,H,V,X,(v-P)/F,E)}for(var N=_[0],W=_[1],M=0;M<L;++M)E[M]=u(N[M],W[M],E[M]);return E},f.dcurve=function(v){var x=this._time,b=x.length,p=l.le(x,v),E=this._scratch[0],k=this._state,A=this._velocity,L=this.dimension;if(p>=b-1)for(var _=k.length-1,C=v-x[b-1],M=0;M<L;++M,--_)E[M]=A[_];else{for(var _=L*(p+1)-1,g=x[p],P=x[p+1],T=P-g||1,F=this._scratch[1],q=this._scratch[2],V=this._scratch[3],H=this._scratch[4],X=!0,M=0;M<L;++M,--_)F[M]=k[_],V[M]=A[_]*T,q[M]=k[_+L],H[M]=A[_+L]*T,X=X&&F[M]===q[M]&&V[M]===H[M]&&V[M]===0;if(X)for(var M=0;M<L;++M)E[M]=0;else{s.derivative(F,V,q,H,(v-g)/T,E);for(var M=0;M<L;++M)E[M]/=T}}return E},f.lastT=function(){var v=this._time;return v[v.length-1]},f.stable=function(){for(var v=this._velocity,x=v.length,b=this.dimension-1;b>=0;--b)if(v[--x])return!1;return!0},f.jump=function(v){var x=this.lastT(),b=this.dimension;if(!(v<x||arguments.length!==b+1)){var p=this._state,E=this._velocity,k=p.length-this.dimension,A=this.bounds,L=A[0],_=A[1];this._time.push(x,v);for(var C=0;C<2;++C)for(var M=0;M<b;++M)p.push(p[k++]),E.push(0);this._time.push(v);for(var M=b;M>0;--M)p.push(u(L[M-1],_[M-1],arguments[M])),E.push(0)}},f.push=function(v){var x=this.lastT(),b=this.dimension;if(!(v<x||arguments.length!==b+1)){var p=this._state,E=this._velocity,k=p.length-this.dimension,A=v-x,L=this.bounds,_=L[0],C=L[1],M=A>1e-6?1/A:0;this._time.push(v);for(var g=b;g>0;--g){var P=u(_[g-1],C[g-1],arguments[g]);p.push(P),E.push((P-p[k++])*M)}}},f.set=function(v){var x=this.dimension;if(!(v<this.lastT()||arguments.length!==x+1)){var b=this._state,p=this._velocity,E=this.bounds,k=E[0],A=E[1];this._time.push(v);for(var L=x;L>0;--L)b.push(u(k[L-1],A[L-1],arguments[L])),p.push(0)}},f.move=function(v){var x=this.lastT(),b=this.dimension;if(!(v<=x||arguments.length!==b+1)){var p=this._state,E=this._velocity,k=p.length-this.dimension,A=this.bounds,L=A[0],_=A[1],C=v-x,M=C>1e-6?1/C:0;this._time.push(v);for(var g=b;g>0;--g){var P=arguments[g];p.push(u(L[g-1],_[g-1],p[k++]+P)),E.push(P*M)}}},f.idle=function(v){var x=this.lastT();if(!(v<x)){var b=this.dimension,p=this._state,E=this._velocity,k=p.length-b,A=this.bounds,L=A[0],_=A[1],C=v-x;this._time.push(v);for(var M=b-1;M>=0;--M)p.push(u(L[M],_[M],p[k]+C*E[k])),E.push(0),k+=1}};function h(v){for(var x=new Array(v),b=0;b<v;++b)x[b]=0;return x}function d(v,x,b){switch(arguments.length){case 0:return new c([0],[0],0);case 1:if(typeof v=="number"){var p=h(v);return new c(p,p,0)}else return new c(v,h(v.length),0);case 2:if(typeof x=="number"){var p=h(v.length);return new c(v,p,+x)}else b=0;case 3:if(v.length!==x.length)throw new Error("state and velocity lengths must match");return new c(v,x,b)}}},3840:function(i){"use strict";i.exports=L;var a=0,o=1;function s(_,C,M,g,P,T){this._color=_,this.key=C,this.value=M,this.left=g,this.right=P,this._count=T}function l(_){return new s(_._color,_.key,_.value,_.left,_.right,_._count)}function u(_,C){return new s(_,C.key,C.value,C.left,C.right,C._count)}function c(_){_._count=1+(_.left?_.left._count:0)+(_.right?_.right._count:0)}function f(_,C){this._compare=_,this.root=C}var h=f.prototype;Object.defineProperty(h,"keys",{get:function(){var _=[];return this.forEach(function(C,M){_.push(C)}),_}}),Object.defineProperty(h,"values",{get:function(){var _=[];return this.forEach(function(C,M){_.push(M)}),_}}),Object.defineProperty(h,"length",{get:function(){return this.root?this.root._count:0}}),h.insert=function(_,C){for(var M=this._compare,g=this.root,P=[],T=[];g;){var F=M(_,g.key);P.push(g),T.push(F),F<=0?g=g.left:g=g.right}P.push(new s(a,_,C,null,null,1));for(var q=P.length-2;q>=0;--q){var g=P[q];T[q]<=0?P[q]=new s(g._color,g.key,g.value,P[q+1],g.right,g._count+1):P[q]=new s(g._color,g.key,g.value,g.left,P[q+1],g._count+1)}for(var q=P.length-1;q>1;--q){var V=P[q-1],g=P[q];if(V._color===o||g._color===o)break;var H=P[q-2];if(H.left===V)if(V.left===g){var X=H.right;if(X&&X._color===a)V._color=o,H.right=u(o,X),H._color=a,q-=1;else{if(H._color=a,H.left=V.right,V._color=o,V.right=H,P[q-2]=V,P[q-1]=g,c(H),c(V),q>=3){var G=P[q-3];G.left===H?G.left=V:G.right=V}break}}else{var X=H.right;if(X&&X._color===a)V._color=o,H.right=u(o,X),H._color=a,q-=1;else{if(V.right=g.left,H._color=a,H.left=g.right,g._color=o,g.left=V,g.right=H,P[q-2]=g,P[q-1]=V,c(H),c(V),c(g),q>=3){var G=P[q-3];G.left===H?G.left=g:G.right=g}break}}else if(V.right===g){var X=H.left;if(X&&X._color===a)V._color=o,H.left=u(o,X),H._color=a,q-=1;else{if(H._color=a,H.right=V.left,V._color=o,V.left=H,P[q-2]=V,P[q-1]=g,c(H),c(V),q>=3){var G=P[q-3];G.right===H?G.right=V:G.left=V}break}}else{var X=H.left;if(X&&X._color===a)V._color=o,H.left=u(o,X),H._color=a,q-=1;else{if(V.left=g.right,H._color=a,H.right=g.left,g._color=o,g.right=V,g.left=H,P[q-2]=g,P[q-1]=V,c(H),c(V),c(g),q>=3){var G=P[q-3];G.right===H?G.right=g:G.left=g}break}}}return P[0]._color=o,new f(M,P[0])};function d(_,C){if(C.left){var M=d(_,C.left);if(M)return M}var M=_(C.key,C.value);if(M)return M;if(C.right)return d(_,C.right)}function v(_,C,M,g){var P=C(_,g.key);if(P<=0){if(g.left){var T=v(_,C,M,g.left);if(T)return T}var T=M(g.key,g.value);if(T)return T}if(g.right)return v(_,C,M,g.right)}function x(_,C,M,g,P){var T=M(_,P.key),F=M(C,P.key),q;if(T<=0&&(P.left&&(q=x(_,C,M,g,P.left),q)||F>0&&(q=g(P.key,P.value),q)))return q;if(F>0&&P.right)return x(_,C,M,g,P.right)}h.forEach=function(C,M,g){if(this.root)switch(arguments.length){case 1:return d(C,this.root);case 2:return v(M,this._compare,C,this.root);case 3:return this._compare(M,g)>=0?void 0:x(M,g,this._compare,C,this.root)}},Object.defineProperty(h,"begin",{get:function(){for(var _=[],C=this.root;C;)_.push(C),C=C.left;return new b(this,_)}}),Object.defineProperty(h,"end",{get:function(){for(var _=[],C=this.root;C;)_.push(C),C=C.right;return new b(this,_)}}),h.at=function(_){if(_<0)return new b(this,[]);for(var C=this.root,M=[];;){if(M.push(C),C.left){if(_<C.left._count){C=C.left;continue}_-=C.left._count}if(!_)return new b(this,M);if(_-=1,C.right){if(_>=C.right._count)break;C=C.right}else break}return new b(this,[])},h.ge=function(_){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(_,M.key);g.push(M),T<=0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.gt=function(_){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(_,M.key);g.push(M),T<0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.lt=function(_){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(_,M.key);g.push(M),T>0&&(P=g.length),T<=0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.le=function(_){for(var C=this._compare,M=this.root,g=[],P=0;M;){var T=C(_,M.key);g.push(M),T>=0&&(P=g.length),T<0?M=M.left:M=M.right}return g.length=P,new b(this,g)},h.find=function(_){for(var C=this._compare,M=this.root,g=[];M;){var P=C(_,M.key);if(g.push(M),P===0)return new b(this,g);P<=0?M=M.left:M=M.right}return new b(this,[])},h.remove=function(_){var C=this.find(_);return C?C.remove():this},h.get=function(_){for(var C=this._compare,M=this.root;M;){var g=C(_,M.key);if(g===0)return M.value;g<=0?M=M.left:M=M.right}};function b(_,C){this.tree=_,this._stack=C}var p=b.prototype;Object.defineProperty(p,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(p,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),p.clone=function(){return new b(this.tree,this._stack.slice())};function E(_,C){_.key=C.key,_.value=C.value,_.left=C.left,_.right=C.right,_._color=C._color,_._count=C._count}function k(_){for(var C,M,g,P,T=_.length-1;T>=0;--T){if(C=_[T],T===0){C._color=o;return}if(M=_[T-1],M.left===C){if(g=M.right,g.right&&g.right._color===a){if(g=M.right=l(g),P=g.right=l(g.right),M.right=g.left,g.left=M,g.right=P,g._color=M._color,C._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var F=_[T-2];F.left===M?F.left=g:F.right=g}_[T-1]=g;return}else if(g.left&&g.left._color===a){if(g=M.right=l(g),P=g.left=l(g.left),M.right=P.left,g.left=P.right,P.left=M,P.right=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var F=_[T-2];F.left===M?F.left=P:F.right=P}_[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.right=u(a,g);return}else{M.right=u(a,g);continue}else{if(g=l(g),M.right=g.left,g.left=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var F=_[T-2];F.left===M?F.left=g:F.right=g}_[T-1]=g,_[T]=M,T+1<_.length?_[T+1]=C:_.push(C),T=T+2}}else{if(g=M.left,g.left&&g.left._color===a){if(g=M.left=l(g),P=g.left=l(g.left),M.left=g.right,g.right=M,g.left=P,g._color=M._color,C._color=o,M._color=o,P._color=o,c(M),c(g),T>1){var F=_[T-2];F.right===M?F.right=g:F.left=g}_[T-1]=g;return}else if(g.right&&g.right._color===a){if(g=M.left=l(g),P=g.right=l(g.right),M.left=P.right,g.right=P.left,P.right=M,P.left=g,P._color=M._color,M._color=o,g._color=o,C._color=o,c(M),c(g),c(P),T>1){var F=_[T-2];F.right===M?F.right=P:F.left=P}_[T-1]=P;return}if(g._color===o)if(M._color===a){M._color=o,M.left=u(a,g);return}else{M.left=u(a,g);continue}else{if(g=l(g),M.left=g.right,g.right=M,g._color=M._color,M._color=a,c(M),c(g),T>1){var F=_[T-2];F.right===M?F.right=g:F.left=g}_[T-1]=g,_[T]=M,T+1<_.length?_[T+1]=C:_.push(C),T=T+2}}}}p.remove=function(){var _=this._stack;if(_.length===0)return this.tree;var C=new Array(_.length),M=_[_.length-1];C[C.length-1]=new s(M._color,M.key,M.value,M.left,M.right,M._count);for(var g=_.length-2;g>=0;--g){var M=_[g];M.left===_[g+1]?C[g]=new s(M._color,M.key,M.value,C[g+1],M.right,M._count):C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count)}if(M=C[C.length-1],M.left&&M.right){var P=C.length;for(M=M.left;M.right;)C.push(M),M=M.right;var T=C[P-1];C.push(new s(M._color,T.key,T.value,M.left,M.right,M._count)),C[P-1].key=M.key,C[P-1].value=M.value;for(var g=C.length-2;g>=P;--g)M=C[g],C[g]=new s(M._color,M.key,M.value,M.left,C[g+1],M._count);C[P-1].left=C[P]}if(M=C[C.length-1],M._color===a){var F=C[C.length-2];F.left===M?F.left=null:F.right===M&&(F.right=null),C.pop();for(var g=0;g<C.length;++g)C[g]._count--;return new f(this.tree._compare,C[0])}else if(M.left||M.right){M.left?E(M,M.left):M.right&&E(M,M.right),M._color=o;for(var g=0;g<C.length-1;++g)C[g]._count--;return new f(this.tree._compare,C[0])}else{if(C.length===1)return new f(this.tree._compare,null);for(var g=0;g<C.length;++g)C[g]._count--;var q=C[C.length-2];k(C),q.left===M?q.left=null:q.right=null}return new f(this.tree._compare,C[0])},Object.defineProperty(p,"key",{get:function(){if(this._stack.length>0)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 _=0,C=this._stack;if(C.length===0){var M=this.tree.root;return M?M._count:0}else C[C.length-1].left&&(_=C[C.length-1].left._count);for(var g=C.length-2;g>=0;--g)C[g+1]===C[g].right&&(++_,C[g].left&&(_+=C[g].left._count));return _},enumerable:!0}),p.next=function(){var _=this._stack;if(_.length!==0){var C=_[_.length-1];if(C.right)for(C=C.right;C;)_.push(C),C=C.left;else for(_.pop();_.length>0&&_[_.length-1].right===C;)C=_[_.length-1],_.pop()}},Object.defineProperty(p,"hasNext",{get:function(){var _=this._stack;if(_.length===0)return!1;if(_[_.length-1].right)return!0;for(var C=_.length-1;C>0;--C)if(_[C-1].left===_[C])return!0;return!1}}),p.update=function(_){var C=this._stack;if(C.length===0)throw new Error("Can't update empty node!");var M=new Array(C.length),g=C[C.length-1];M[M.length-1]=new s(g._color,g.key,_,g.left,g.right,g._count);for(var P=C.length-2;P>=0;--P)g=C[P],g.left===C[P+1]?M[P]=new s(g._color,g.key,g.value,M[P+1],g.right,g._count):M[P]=new s(g._color,g.key,g.value,g.left,M[P+1],g._count);return new f(this.tree._compare,M[0])},p.prev=function(){var _=this._stack;if(_.length!==0){var C=_[_.length-1];if(C.left)for(C=C.left;C;)_.push(C),C=C.right;else for(_.pop();_.length>0&&_[_.length-1].left===C;)C=_[_.length-1],_.pop()}},Object.defineProperty(p,"hasPrev",{get:function(){var _=this._stack;if(_.length===0)return!1;if(_[_.length-1].left)return!0;for(var C=_.length-1;C>0;--C)if(_[C-1].right===_[C])return!0;return!1}});function A(_,C){return _<C?-1:_>C?1:0}function L(_){return new f(_||A,null)}},3837:function(i,a,o){"use strict";i.exports=q;var s=o(4935),l=o(501),u=o(5304),c=o(6429),f=o(6444),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),d=ArrayBuffer,v=DataView;function x(V){return d.isView(V)&&!(V instanceof v)}function b(V){return Array.isArray(V)||x(V)}function p(V,H){return V[0]=H[0],V[1]=H[1],V[2]=H[2],V}function E(V){this.gl=V,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=u(V)}var k=E.prototype;k.update=function(V){V=V||{};function H(Ae,ze,Ce){if(Ce in V){var me=V[Ce],Re=this[Ce],ce;(Ae?b(me)&&b(me[0]):b(me))?this[Ce]=ce=[ze(me[0]),ze(me[1]),ze(me[2])]:this[Ce]=ce=[ze(me),ze(me),ze(me)];for(var Ge=0;Ge<3;++Ge)if(ce[Ge]!==Re[Ge])return!0}return!1}var X=H.bind(this,!1,Number),G=H.bind(this,!1,Boolean),N=H.bind(this,!1,String),W=H.bind(this,!0,function(Ae){if(b(Ae)){if(Ae.length===3)return[+Ae[0],+Ae[1],+Ae[2],1];if(Ae.length===4)return[+Ae[0],+Ae[1],+Ae[2],+Ae[3]]}return[0,0,0,1]}),re,ae=!1,_e=!1;if("bounds"in V)for(var Me=V.bounds,ke=0;ke<2;++ke)for(var ge=0;ge<3;++ge)Me[ke][ge]!==this.bounds[ke][ge]&&(_e=!0),this.bounds[ke][ge]=Me[ke][ge];if("ticks"in V){re=V.ticks,ae=!0,this.autoTicks=!1;for(var ke=0;ke<3;++ke)this.tickSpacing[ke]=0}else X("tickSpacing")&&(this.autoTicks=!0,_e=!0);if(this._firstInit&&("ticks"in V||"tickSpacing"in V||(this.autoTicks=!0),_e=!0,ae=!0,this._firstInit=!1),_e&&this.autoTicks&&(re=f.create(this.bounds,this.tickSpacing),ae=!0),ae){for(var ke=0;ke<3;++ke)re[ke].sort(function(ze,Ce){return ze.x-Ce.x});f.equal(re,this.ticks)?ae=!1:this.ticks=re}G("tickEnable"),N("tickFont")&&(ae=!0),N("tickFontStyle")&&(ae=!0),N("tickFontWeight")&&(ae=!0),N("tickFontVariant")&&(ae=!0),X("tickSize"),X("tickAngle"),X("tickPad"),W("tickColor");var ie=N("labels");N("labelFont")&&(ie=!0),N("labelFontStyle")&&(ie=!0),N("labelFontWeight")&&(ie=!0),N("labelFontVariant")&&(ie=!0),G("labelEnable"),X("labelSize"),X("labelPad"),W("labelColor"),G("lineEnable"),G("lineMirror"),X("lineWidth"),W("lineColor"),G("lineTickEnable"),G("lineTickMirror"),X("lineTickLength"),X("lineTickWidth"),W("lineTickColor"),G("gridEnable"),X("gridWidth"),W("gridColor"),G("zeroEnable"),W("zeroLineColor"),X("zeroLineWidth"),G("backgroundEnable"),W("backgroundColor");var Te=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],Ee=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(ie||ae)&&this._text.update(this.bounds,this.labels,Te,this.ticks,Ee):this._text=s(this.gl,this.bounds,this.labels,Te,this.ticks,Ee),this._lines&&ae&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=l(this.gl,this.bounds,this.ticks))};function A(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var L=[new A,new A,new A];function _(V,H,X,G,N){for(var W=V.primalOffset,re=V.primalMinor,ae=V.mirrorOffset,_e=V.mirrorMinor,Me=G[H],ke=0;ke<3;++ke)if(H!==ke){var ge=W,ie=ae,Te=re,Ee=_e;Me&1<<ke&&(ge=ae,ie=W,Te=_e,Ee=re),ge[ke]=X[0][ke],ie[ke]=X[1][ke],N[ke]>0?(Te[ke]=-1,Ee[ke]=0):(Te[ke]=0,Ee[ke]=1)}}var C=[0,0,0],M={model:h,view:h,projection:h,_ortho:!1};k.isOpaque=function(){return!0},k.isTransparent=function(){return!1},k.drawTransparent=function(V){};var g=0,P=[0,0,0],T=[0,0,0],F=[0,0,0];k.draw=function(V){V=V||M;for(var Ce=this.gl,H=V.model||h,X=V.view||h,G=V.projection||h,N=this.bounds,W=V._ortho||!1,re=c(H,X,G,N,W),ae=re.cubeEdges,_e=re.axis,Me=X[12],ke=X[13],ge=X[14],ie=X[15],Te=W?2:1,Ee=Te*this.pixelRatio*(G[3]*Me+G[7]*ke+G[11]*ge+G[15]*ie)/Ce.drawingBufferHeight,Ae=0;Ae<3;++Ae)this.lastCubeProps.cubeEdges[Ae]=ae[Ae],this.lastCubeProps.axis[Ae]=_e[Ae];for(var ze=L,Ae=0;Ae<3;++Ae)_(L[Ae],Ae,this.bounds,ae,_e);for(var Ce=this.gl,me=C,Ae=0;Ae<3;++Ae)this.backgroundEnable[Ae]?me[Ae]=_e[Ae]:me[Ae]=0;this._background.draw(H,X,G,N,me,this.backgroundColor),this._lines.bind(H,X,G,this);for(var Ae=0;Ae<3;++Ae){var Re=[0,0,0];_e[Ae]>0?Re[Ae]=N[1][Ae]:Re[Ae]=N[0][Ae];for(var ce=0;ce<2;++ce){var Ge=(Ae+1+ce)%3,nt=(Ae+1+(ce^1))%3;this.gridEnable[Ge]&&this._lines.drawGrid(Ge,nt,this.bounds,Re,this.gridColor[Ge],this.gridWidth[Ge]*this.pixelRatio)}for(var ce=0;ce<2;++ce){var Ge=(Ae+1+ce)%3,nt=(Ae+1+(ce^1))%3;this.zeroEnable[nt]&&Math.min(N[0][nt],N[1][nt])<=0&&Math.max(N[0][nt],N[1][nt])>=0&&this._lines.drawZero(Ge,nt,this.bounds,Re,this.zeroLineColor[nt],this.zeroLineWidth[nt]*this.pixelRatio)}}for(var Ae=0;Ae<3;++Ae){this.lineEnable[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,ze[Ae].primalOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio),this.lineMirror[Ae]&&this._lines.drawAxisLine(Ae,this.bounds,ze[Ae].mirrorOffset,this.lineColor[Ae],this.lineWidth[Ae]*this.pixelRatio);for(var ct=p(P,ze[Ae].primalMinor),qt=p(T,ze[Ae].mirrorMinor),rt=this.lineTickLength,ce=0;ce<3;++ce){var ot=Ee/H[5*ce];ct[ce]*=rt[ce]*ot,qt[ce]*=rt[ce]*ot}this.lineTickEnable[Ae]&&this._lines.drawAxisTicks(Ae,ze[Ae].primalOffset,ct,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio),this.lineTickMirror[Ae]&&this._lines.drawAxisTicks(Ae,ze[Ae].mirrorOffset,qt,this.lineTickColor[Ae],this.lineTickWidth[Ae]*this.pixelRatio)}this._lines.unbind(),this._text.bind(H,X,G,this.pixelRatio);var Rt,kt=.5,Ct,Yt;function xr(St){Yt=[0,0,0],Yt[St]=1}function er(St,Et,dt){var Ht=(St+1)%3,$t=(St+2)%3,fr=Et[Ht],_r=Et[$t],Br=dt[Ht],Or=dt[$t];if(fr>0&&Or>0){xr(Ht);return}else if(fr>0&&Or<0){xr(Ht);return}else if(fr<0&&Or>0){xr(Ht);return}else if(fr<0&&Or<0){xr(Ht);return}else if(_r>0&&Br>0){xr($t);return}else if(_r>0&&Br<0){xr($t);return}else if(_r<0&&Br>0){xr($t);return}else if(_r<0&&Br<0){xr($t);return}}for(var Ae=0;Ae<3;++Ae){for(var Ke=ze[Ae].primalMinor,xt=ze[Ae].mirrorMinor,bt=p(F,ze[Ae].primalOffset),ce=0;ce<3;++ce)this.lineTickEnable[Ae]&&(bt[ce]+=Ee*Ke[ce]*Math.max(this.lineTickLength[ce],0)/H[5*ce]);var Lt=[0,0,0];if(Lt[Ae]=1,this.tickEnable[Ae]){this.tickAngle[Ae]===-3600?(this.tickAngle[Ae]=0,this.tickAlign[Ae]="auto"):this.tickAlign[Ae]=-1,Ct=1,Rt=[this.tickAlign[Ae],kt,Ct],Rt[0]==="auto"?Rt[0]=g:Rt[0]=parseInt(""+Rt[0]),Yt=[0,0,0],er(Ae,Ke,xt);for(var ce=0;ce<3;++ce)bt[ce]+=Ee*Ke[ce]*this.tickPad[ce]/H[5*ce];this._text.drawTicks(Ae,this.tickSize[Ae],this.tickAngle[Ae],bt,this.tickColor[Ae],Lt,Yt,Rt)}if(this.labelEnable[Ae]){Ct=0,Yt=[0,0,0],this.labels[Ae].length>4&&(xr(Ae),Ct=1),Rt=[this.labelAlign[Ae],kt,Ct],Rt[0]==="auto"?Rt[0]=g:Rt[0]=parseInt(""+Rt[0]);for(var ce=0;ce<3;++ce)bt[ce]+=Ee*Ke[ce]*this.labelPad[ce]/H[5*ce];bt[Ae]+=.5*(N[0][Ae]+N[1][Ae]),this._text.drawLabel(Ae,this.labelSize[Ae],this.labelAngle[Ae],bt,this.labelColor[Ae],[0,0,0],Yt,Rt)}}this._text.unbind()},k.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function q(V,H){var X=new E(V);return X.update(H),X}},5304:function(i,a,o){"use strict";i.exports=h;var s=o(2762),l=o(8116),u=o(1879).bg;function c(d,v,x,b){this.gl=d,this.buffer=v,this.vao=x,this.shader=b}var f=c.prototype;f.draw=function(d,v,x,b,p,E){for(var k=!1,A=0;A<3;++A)k=k||p[A];if(k){var L=this.gl;L.enable(L.POLYGON_OFFSET_FILL),L.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:d,view:v,projection:x,bounds:b,enable:p,colors:E},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),L.disable(L.POLYGON_OFFSET_FILL)}},f.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function h(d){for(var v=[],x=[],b=0,p=0;p<3;++p)for(var E=(p+1)%3,k=(p+2)%3,A=[0,0,0],L=[0,0,0],_=-1;_<=1;_+=2){x.push(b,b+2,b+1,b+1,b+2,b+3),A[p]=_,L[p]=_;for(var C=-1;C<=1;C+=2){A[E]=C;for(var M=-1;M<=1;M+=2)A[k]=M,v.push(A[0],A[1],A[2],L[0],L[1],L[2]),b+=1}var g=E;E=k,k=g}var P=s(d,new Float32Array(v)),T=s(d,new Uint16Array(x),d.ELEMENT_ARRAY_BUFFER),F=l(d,[{buffer:P,type:d.FLOAT,size:3,offset:0,stride:24},{buffer:P,type:d.FLOAT,size:3,offset:12,stride:24}],T),q=u(d);return q.attributes.position.location=0,q.attributes.normal.location=1,new c(d,P,F,q)}},6429:function(i,a,o){"use strict";i.exports=_;var s=o(8828),l=o(6760),u=o(5202),c=o(3250),f=new Array(16),h=new Array(8),d=new Array(8),v=new Array(3),x=[0,0,0];(function(){for(var C=0;C<8;++C)h[C]=[1,1,1,1],d[C]=[1,1,1]})();function b(C,M,g){for(var P=0;P<4;++P){C[P]=g[12+P];for(var T=0;T<3;++T)C[P]+=M[T]*g[4*T+P]}}var p=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function E(C){for(var M=0;M<p.length;++M)if(C=u.positive(C,p[M]),C.length<3)return 0;for(var g=C[0],P=g[0]/g[3],T=g[1]/g[3],F=0,M=1;M+1<C.length;++M){var q=C[M],V=C[M+1],H=q[0]/q[3],X=q[1]/q[3],G=V[0]/V[3],N=V[1]/V[3],W=H-P,re=X-T,ae=G-P,_e=N-T;F+=Math.abs(W*_e-re*ae)}return F}var k=[1,1,1],A=[0,0,0],L={cubeEdges:k,axis:A};function _(C,M,g,P,T){l(f,M,C),l(f,g,f);for(var F=0,q=0;q<2;++q){v[2]=P[q][2];for(var V=0;V<2;++V){v[1]=P[V][1];for(var H=0;H<2;++H)v[0]=P[H][0],b(h[F],v,f),F+=1}}for(var X=-1,q=0;q<8;++q){for(var G=h[q][3],N=0;N<3;++N)d[q][N]=h[q][N]/G;T&&(d[q][2]*=-1),G<0&&(X<0||d[q][2]<d[X][2])&&(X=q)}if(X<0){X=0;for(var W=0;W<3;++W){for(var re=(W+2)%3,ae=(W+1)%3,_e=-1,Me=-1,ke=0;ke<2;++ke){var ge=ke<<W,ie=ge+(ke<<re)+(1-ke<<ae),Te=ge+(1-ke<<re)+(ke<<ae);c(d[ge],d[ie],d[Te],x)<0||(ke?_e=1:Me=1)}if(_e<0||Me<0){Me>_e&&(X|=1<<W);continue}for(var ke=0;ke<2;++ke){var ge=ke<<W,ie=ge+(ke<<re)+(1-ke<<ae),Te=ge+(1-ke<<re)+(ke<<ae),Ee=E([h[ge],h[ie],h[Te],h[ge+(1<<re)+(1<<ae)]]);ke?_e=Ee:Me=Ee}if(Me>_e){X|=1<<W;continue}}}for(var Ae=7^X,ze=-1,q=0;q<8;++q)q===X||q===Ae||(ze<0||d[ze][1]>d[q][1])&&(ze=q);for(var Ce=-1,q=0;q<3;++q){var me=ze^1<<q;if(!(me===X||me===Ae)){Ce<0&&(Ce=me);var ae=d[me];ae[0]<d[Ce][0]&&(Ce=me)}}for(var Re=-1,q=0;q<3;++q){var me=ze^1<<q;if(!(me===X||me===Ae||me===Ce)){Re<0&&(Re=me);var ae=d[me];ae[0]>d[Re][0]&&(Re=me)}}var ce=k;ce[0]=ce[1]=ce[2]=0,ce[s.log2(Ce^ze)]=ze&Ce,ce[s.log2(ze^Re)]=ze&Re;var Ge=Re^7;Ge===X||Ge===Ae?(Ge=Ce^7,ce[s.log2(Re^Ge)]=Ge&Re):ce[s.log2(Ce^Ge)]=Ge&Ce;for(var nt=A,ct=X,W=0;W<3;++W)ct&1<<W?nt[W]=-1:nt[W]=1;return L}},501:function(i,a,o){"use strict";i.exports=k;var s=o(2762),l=o(8116),u=o(1879).n,c=[0,0,0],f=[0,0,0],h=[0,0,0],d=[0,0,0],v=[1,1];function x(A){return A[0]=A[1]=A[2]=0,A}function b(A,L){return A[0]=L[0],A[1]=L[1],A[2]=L[2],A}function p(A,L,_,C,M,g,P,T){this.gl=A,this.vertBuffer=L,this.vao=_,this.shader=C,this.tickCount=M,this.tickOffset=g,this.gridCount=P,this.gridOffset=T}var E=p.prototype;E.bind=function(A,L,_){this.shader.bind(),this.shader.uniforms.model=A,this.shader.uniforms.view=L,this.shader.uniforms.projection=_,v[0]=this.gl.drawingBufferWidth,v[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=v,this.vao.bind()},E.unbind=function(){this.vao.unbind()},E.drawAxisLine=function(A,L,_,C,M){var g=x(f);this.shader.uniforms.majorAxis=f,g[A]=L[1][A]-L[0][A],this.shader.uniforms.minorAxis=g;var P=b(d,_);P[A]+=L[0][A],this.shader.uniforms.offset=P,this.shader.uniforms.lineWidth=M,this.shader.uniforms.color=C;var T=x(h);T[(A+2)%3]=1,this.shader.uniforms.screenAxis=T,this.vao.draw(this.gl.TRIANGLES,6);var T=x(h);T[(A+1)%3]=1,this.shader.uniforms.screenAxis=T,this.vao.draw(this.gl.TRIANGLES,6)},E.drawAxisTicks=function(A,L,_,C,M){if(this.tickCount[A]){var g=x(c);g[A]=1,this.shader.uniforms.majorAxis=g,this.shader.uniforms.offset=L,this.shader.uniforms.minorAxis=_,this.shader.uniforms.color=C,this.shader.uniforms.lineWidth=M;var P=x(h);P[A]=1,this.shader.uniforms.screenAxis=P,this.vao.draw(this.gl.TRIANGLES,this.tickCount[A],this.tickOffset[A])}},E.drawGrid=function(A,L,_,C,M,g){if(this.gridCount[A]){var P=x(f);P[L]=_[1][L]-_[0][L],this.shader.uniforms.minorAxis=P;var T=b(d,C);T[L]+=_[0][L],this.shader.uniforms.offset=T;var F=x(c);F[A]=1,this.shader.uniforms.majorAxis=F;var q=x(h);q[A]=1,this.shader.uniforms.screenAxis=q,this.shader.uniforms.lineWidth=g,this.shader.uniforms.color=M,this.vao.draw(this.gl.TRIANGLES,this.gridCount[A],this.gridOffset[A])}},E.drawZero=function(A,L,_,C,M,g){var P=x(f);this.shader.uniforms.majorAxis=P,P[A]=_[1][A]-_[0][A],this.shader.uniforms.minorAxis=P;var T=b(d,C);T[A]+=_[0][A],this.shader.uniforms.offset=T;var F=x(h);F[L]=1,this.shader.uniforms.screenAxis=F,this.shader.uniforms.lineWidth=g,this.shader.uniforms.color=M,this.vao.draw(this.gl.TRIANGLES,6)},E.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()};function k(A,L,_){var C=[],M=[0,0,0],g=[0,0,0],P=[0,0,0],T=[0,0,0];C.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var F=0;F<3;++F){for(var H=C.length/3|0,q=0;q<_[F].length;++q){var V=+_[F][q].x;C.push(V,0,1,V,1,1,V,0,-1,V,0,-1,V,1,1,V,1,-1)}var G=C.length/3|0;M[F]=H,g[F]=G-H;for(var H=C.length/3|0,X=0;X<_[F].length;++X){var V=+_[F][X].x;C.push(V,0,1,V,1,1,V,0,-1,V,0,-1,V,1,1,V,1,-1)}var G=C.length/3|0;P[F]=H,T[F]=G-H}var N=s(A,new Float32Array(C)),W=l(A,[{buffer:N,type:A.FLOAT,size:3,stride:0,offset:0}]),re=u(A);return re.attributes.position.location=0,new p(A,N,W,re,g,M,T,P)}},1879:function(i,a,o){"use strict";var s=o(3236),l=o(9405),u=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+uniform vec3 offset, majorAxis, minorAxis, screenAxis;
+uniform float lineWidth;
+uniform vec2 screenShape;
+
+vec3 project(vec3 p) {
+ vec4 pp = projection * (view * (model * vec4(p, 1.0)));
+ return pp.xyz / max(pp.w, 0.0001);
+}
+
+void main() {
+ vec3 major = position.x * majorAxis;
+ vec3 minor = position.y * minorAxis;
+
+ vec3 vPosition = major + minor + offset;
+ vec3 pPosition = project(vPosition);
+ vec3 offset = project(vPosition + screenAxis * position.z);
+
+ vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;
+
+ gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);
+}
+`]),c=s([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 color;
+void main() {
+ gl_FragColor = color;
+}`]);a.n=function(x){return l(x,u,c,null,[{name:"position",type:"vec3"}])};var f=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+uniform vec3 offset, axis, alignDir, alignOpt;
+uniform float scale, angle, pixelScale;
+uniform vec2 resolution;
+
+vec3 project(vec3 p) {
+ vec4 pp = projection * (view * (model * vec4(p, 1.0)));
+ return pp.xyz / max(pp.w, 0.0001);
+}
+
+float computeViewAngle(vec3 a, vec3 b) {
+ vec3 A = project(a);
+ vec3 B = project(b);
+
+ return atan(
+ (B.y - A.y) * resolution.y,
+ (B.x - A.x) * resolution.x
+ );
+}
+
+const float PI = 3.141592;
+const float TWO_PI = 2.0 * PI;
+const float HALF_PI = 0.5 * PI;
+const float ONE_AND_HALF_PI = 1.5 * PI;
+
+int option = int(floor(alignOpt.x + 0.001));
+float hv_ratio = alignOpt.y;
+bool enableAlign = (alignOpt.z != 0.0);
+
+float mod_angle(float a) {
+ return mod(a, PI);
+}
+
+float positive_angle(float a) {
+ return mod_angle((a < 0.0) ?
+ a + TWO_PI :
+ a
+ );
+}
+
+float look_upwards(float a) {
+ float b = positive_angle(a);
+ return ((b > HALF_PI) && (b <= ONE_AND_HALF_PI)) ?
+ b - PI :
+ b;
+}
+
+float look_horizontal_or_vertical(float a, float ratio) {
+ // ratio controls the ratio between being horizontal to (vertical + horizontal)
+ // if ratio is set to 0.5 then it is 50%, 50%.
+ // when using a higher ratio e.g. 0.75 the result would
+ // likely be more horizontal than vertical.
+
+ float b = positive_angle(a);
+
+ return
+ (b < ( ratio) * HALF_PI) ? 0.0 :
+ (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :
+ (b < (2.0 + ratio) * HALF_PI) ? 0.0 :
+ (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :
+ 0.0;
+}
+
+float roundTo(float a, float b) {
+ return float(b * floor((a + 0.5 * b) / b));
+}
+
+float look_round_n_directions(float a, int n) {
+ float b = positive_angle(a);
+ float div = TWO_PI / float(n);
+ float c = roundTo(b, div);
+ return look_upwards(c);
+}
+
+float applyAlignOption(float rawAngle, float delta) {
+ return
+ (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions
+ (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical
+ (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis
+ (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards
+ (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal
+ rawAngle; // otherwise return back raw input angle
+}
+
+bool isAxisTitle = (axis.x == 0.0) &&
+ (axis.y == 0.0) &&
+ (axis.z == 0.0);
+
+void main() {
+ //Compute world offset
+ float axisDistance = position.z;
+ vec3 dataPosition = axisDistance * axis + offset;
+
+ float beta = angle; // i.e. user defined attributes for each tick
+
+ float axisAngle;
+ float clipAngle;
+ float flip;
+
+ if (enableAlign) {
+ axisAngle = (isAxisTitle) ? HALF_PI :
+ computeViewAngle(dataPosition, dataPosition + axis);
+ clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);
+
+ axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;
+ clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;
+
+ flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),
+ vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;
+
+ beta += applyAlignOption(clipAngle, flip * PI);
+ }
+
+ //Compute plane offset
+ vec2 planeCoord = position.xy * pixelScale;
+
+ mat2 planeXform = scale * mat2(
+ cos(beta), sin(beta),
+ -sin(beta), cos(beta)
+ );
+
+ vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;
+
+ //Compute clip position
+ vec3 clipPosition = project(dataPosition);
+
+ //Apply text offset in clip coordinates
+ clipPosition += vec3(viewOffset, 0.0);
+
+ //Done
+ gl_Position = vec4(clipPosition, 1.0);
+}
+`]),h=s([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 color;
+void main() {
+ gl_FragColor = color;
+}`]);a.Q=function(x){return l(x,f,h,null,[{name:"position",type:"vec3"}])};var d=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec3 normal;
+
+uniform mat4 model, view, projection;
+uniform vec3 enable;
+uniform vec3 bounds[2];
+
+varying vec3 colorChannel;
+
+void main() {
+
+ vec3 signAxis = sign(bounds[1] - bounds[0]);
+
+ vec3 realNormal = signAxis * normal;
+
+ if(dot(realNormal, enable) > 0.0) {
+ vec3 minRange = min(bounds[0], bounds[1]);
+ vec3 maxRange = max(bounds[0], bounds[1]);
+ vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));
+ gl_Position = projection * (view * (model * vec4(nPosition, 1.0)));
+ } else {
+ gl_Position = vec4(0,0,0,0);
+ }
+
+ colorChannel = abs(realNormal);
+}
+`]),v=s([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 colors[3];
+
+varying vec3 colorChannel;
+
+void main() {
+ gl_FragColor = colorChannel.x * colors[0] +
+ colorChannel.y * colors[1] +
+ colorChannel.z * colors[2];
+}`]);a.bg=function(x){return l(x,d,v,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(i,a,o){"use strict";i.exports=E;var s=o(2762),l=o(8116),u=o(4359),c=o(1879).Q,f=window||process.global||{},h=f.__TEXT_CACHE||{};f.__TEXT_CACHE={};var d=3;function v(k,A,L,_){this.gl=k,this.shader=A,this.buffer=L,this.vao=_,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var x=v.prototype,b=[0,0];x.bind=function(k,A,L,_){this.vao.bind(),this.shader.bind();var C=this.shader.uniforms;C.model=k,C.view=A,C.projection=L,C.pixelScale=_,b[0]=this.gl.drawingBufferWidth,b[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=b},x.unbind=function(){this.vao.unbind()},x.update=function(k,A,L,_,C){var M=[];function g(W,re,ae,_e,Me,ke){var ge=[ae.style,ae.weight,ae.variant,ae.family].join("_"),ie=h[ge];ie||(ie=h[ge]={});var Te=ie[re];Te||(Te=ie[re]=p(re,{triangles:!0,font:ae.family,fontStyle:ae.style,fontWeight:ae.weight,fontVariant:ae.variant,textAlign:"center",textBaseline:"middle",lineSpacing:Me,styletags:ke}));for(var Ee=(_e||12)/12,Ae=Te.positions,ze=Te.cells,Ce=0,me=ze.length;Ce<me;++Ce)for(var Re=ze[Ce],ce=2;ce>=0;--ce){var Ge=Ae[Re[ce]];M.push(Ee*Ge[0],-Ee*Ge[1],W)}}for(var P=[0,0,0],T=[0,0,0],F=[0,0,0],q=[0,0,0],V=1.25,H={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},X=0;X<3;++X){F[X]=M.length/d|0,g(.5*(k[0][X]+k[1][X]),A[X],L[X],12,V,H),q[X]=(M.length/d|0)-F[X],P[X]=M.length/d|0;for(var G=0;G<_[X].length;++G)if(_[X][G].text){var N={family:_[X][G].font||C[X].family,style:C[X].fontStyle||C[X].style,weight:C[X].fontWeight||C[X].weight,variant:C[X].fontVariant||C[X].variant};g(_[X][G].x,_[X][G].text,N,_[X][G].fontSize||12,V,H)}T[X]=(M.length/d|0)-P[X]}this.buffer.update(M),this.tickOffset=P,this.tickCount=T,this.labelOffset=F,this.labelCount=q},x.drawTicks=function(k,A,L,_,C,M,g,P){this.tickCount[k]&&(this.shader.uniforms.axis=M,this.shader.uniforms.color=C,this.shader.uniforms.angle=L,this.shader.uniforms.scale=A,this.shader.uniforms.offset=_,this.shader.uniforms.alignDir=g,this.shader.uniforms.alignOpt=P,this.vao.draw(this.gl.TRIANGLES,this.tickCount[k],this.tickOffset[k]))},x.drawLabel=function(k,A,L,_,C,M,g,P){this.labelCount[k]&&(this.shader.uniforms.axis=M,this.shader.uniforms.color=C,this.shader.uniforms.angle=L,this.shader.uniforms.scale=A,this.shader.uniforms.offset=_,this.shader.uniforms.alignDir=g,this.shader.uniforms.alignOpt=P,this.vao.draw(this.gl.TRIANGLES,this.labelCount[k],this.labelOffset[k]))},x.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()};function p(k,A){try{return u(k,A)}catch(L){return console.warn('error vectorizing text:"'+k+'" error:',L),{cells:[],positions:[]}}}function E(k,A,L,_,C,M){var g=s(k),P=l(k,[{buffer:g,size:3}]),T=c(k);T.attributes.position.location=0;var F=new v(k,T,g,P);return F.update(A,L,_,C,M),F}},6444:function(i,a){"use strict";a.create=s,a.equal=l;function o(u,c){var f=u+"",h=f.indexOf("."),d=0;h>=0&&(d=f.length-h-1);var v=Math.pow(10,d),x=Math.round(u*c*v),b=x+"";if(b.indexOf("e")>=0)return b;var p=x/v,E=x%v;x<0?(p=-Math.ceil(p)|0,E=-E|0):(p=Math.floor(p)|0,E=E|0);var k=""+p;if(x<0&&(k="-"+k),d){for(var A=""+E;A.length<d;)A="0"+A;return k+"."+A}else return k}function s(u,c){for(var f=[],h=0;h<3;++h){for(var d=[],v=.5*(u[0][h]+u[1][h]),x=0;x*c[h]<=u[1][h];++x)d.push({x:x*c[h],text:o(c[h],x)});for(var x=-1;x*c[h]>=u[0][h];--x)d.push({x:x*c[h],text:o(c[h],x)});f.push(d)}return f}function l(u,c){for(var f=0;f<3;++f){if(u[f].length!==c[f].length)return!1;for(var h=0;h<u[f].length;++h){var d=u[f][h],v=c[f][h];if(d.x!==v.x||d.text!==v.text||d.font!==v.font||d.fontColor!==v.fontColor||d.fontSize!==v.fontSize||d.dx!==v.dx||d.dy!==v.dy)return!1}}return!0}},5445:function(i,a,o){"use strict";i.exports=L;var s=o(5033),l=o(5202),u=o(6429),c=o(6760),f=o(5665),h=o(5352),d=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),v=new Float32Array(16);function x(_,C,M){this.lo=_,this.hi=C,this.pixelsPerDataUnit=M}var b=[0,0,0,1],p=[0,0,0,1];function E(_,C,M,g,P){for(var T=0;T<3;++T){for(var F=b,q=p,V=0;V<3;++V)q[V]=F[V]=M[V];q[3]=F[3]=1,q[T]+=1,h(q,q,C),q[3]<0&&(_[T]=1/0),F[T]-=1,h(F,F,C),F[3]<0&&(_[T]=1/0);var H=(F[0]/F[3]-q[0]/q[3])*g,X=(F[1]/F[3]-q[1]/q[3])*P;_[T]=.25*Math.sqrt(H*H+X*X)}return _}var k=[new x(1/0,-1/0,1/0),new x(1/0,-1/0,1/0),new x(1/0,-1/0,1/0)],A=[0,0,0];function L(_,C,M,g,X){var T=C.model||d,F=C.view||d,q=C.projection||d,V=C._ortho||!1,H=_.bounds,X=X||u(T,F,q,H,V),G=X.axis;c(v,F,T),c(v,q,v);for(var N=k,W=0;W<3;++W)N[W].lo=1/0,N[W].hi=-1/0,N[W].pixelsPerDataUnit=1/0;var re=s(f(v,v));f(v,v);for(var ae=0;ae<3;++ae){var _e=(ae+1)%3,Me=(ae+2)%3,ke=A;e:for(var W=0;W<2;++W){var ge=[];if(G[ae]<0!=!!W){ke[ae]=H[W][ae];for(var ie=0;ie<2;++ie){ke[_e]=H[ie^W][_e];for(var Te=0;Te<2;++Te)ke[Me]=H[Te^ie^W][Me],ge.push(ke.slice())}for(var Ee=V?5:4,ie=Ee;ie===Ee;++ie){if(ge.length===0)continue e;ge=l.positive(ge,re[ie])}for(var ie=0;ie<ge.length;++ie)for(var Me=ge[ie],Ae=E(A,v,Me,M,g),Te=0;Te<3;++Te)N[Te].lo=Math.min(N[Te].lo,Me[Te]),N[Te].hi=Math.max(N[Te].hi,Me[Te]),Te!==ae&&(N[Te].pixelsPerDataUnit=Math.min(N[Te].pixelsPerDataUnit,Math.abs(Ae[Te])))}}}return N}},2762:function(i,a,o){"use strict";var s=o(1888),l=o(5298),u=o(9618),c=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function f(p,E,k,A,L){this.gl=p,this.type=E,this.handle=k,this.length=A,this.usage=L}var h=f.prototype;h.bind=function(){this.gl.bindBuffer(this.type,this.handle)},h.unbind=function(){this.gl.bindBuffer(this.type,null)},h.dispose=function(){this.gl.deleteBuffer(this.handle)};function d(p,E,k,A,L,_){var C=L.length*L.BYTES_PER_ELEMENT;if(_<0)return p.bufferData(E,L,A),C;if(C+_>k)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return p.bufferSubData(E,_,L),k}function v(p,E){for(var k=s.malloc(p.length,E),A=p.length,L=0;L<A;++L)k[L]=p[L];return k}function x(p,E){for(var k=1,A=E.length-1;A>=0;--A){if(E[A]!==k)return!1;k*=p[A]}return!0}h.update=function(p,E){if(typeof E!="number"&&(E=-1),this.bind(),typeof p=="object"&&typeof p.shape!="undefined"){var k=p.dtype;if(c.indexOf(k)<0&&(k="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var A=gl.getExtension("OES_element_index_uint");A&&k!=="uint16"?k="uint32":k="uint16"}if(k===p.dtype&&x(p.shape,p.stride))p.offset===0&&p.data.length===p.shape[0]?this.length=d(this.gl,this.type,this.length,this.usage,p.data,E):this.length=d(this.gl,this.type,this.length,this.usage,p.data.subarray(p.offset,p.shape[0]),E);else{var L=s.malloc(p.size,k),_=u(L,p.shape);l.assign(_,p),E<0?this.length=d(this.gl,this.type,this.length,this.usage,L,E):this.length=d(this.gl,this.type,this.length,this.usage,L.subarray(0,p.size),E),s.free(L)}}else if(Array.isArray(p)){var C;this.type===this.gl.ELEMENT_ARRAY_BUFFER?C=v(p,"uint16"):C=v(p,"float32"),E<0?this.length=d(this.gl,this.type,this.length,this.usage,C,E):this.length=d(this.gl,this.type,this.length,this.usage,C.subarray(0,p.length),E),s.free(C)}else if(typeof p=="object"&&typeof p.length=="number")this.length=d(this.gl,this.type,this.length,this.usage,p,E);else if(typeof p=="number"||p===void 0){if(E>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");p=p|0,p<=0&&(p=1),this.gl.bufferData(this.type,p|0,this.usage),this.length=p}else throw new Error("gl-buffer: Invalid data type")};function b(p,E,k,A){if(k=k||p.ARRAY_BUFFER,A=A||p.DYNAMIC_DRAW,k!==p.ARRAY_BUFFER&&k!==p.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(A!==p.DYNAMIC_DRAW&&A!==p.STATIC_DRAW&&A!==p.STREAM_DRAW)throw new Error("gl-buffer: Invalid usage for buffer, must be either gl.DYNAMIC_DRAW, gl.STATIC_DRAW or gl.STREAM_DRAW");var L=p.createBuffer(),_=new f(p,k,L,0,A);return _.update(E),_}i.exports=b},6405:function(i,a,o){"use strict";var s=o(2931);i.exports=function(u,c){var f=u.positions,h=u.vectors,d={positions:[],vertexIntensity:[],vertexIntensityBounds:u.vertexIntensityBounds,vectors:[],cells:[],coneOffset:u.coneOffset,colormap:u.colormap};if(u.positions.length===0)return c&&(c[0]=[0,0,0],c[1]=[0,0,0]),d;for(var v=0,x=1/0,b=-1/0,p=1/0,E=-1/0,k=1/0,A=-1/0,L=null,_=null,C=[],M=1/0,g=!1,P=u.coneSizemode==="raw",T=0;T<f.length;T++){var F=f[T];x=Math.min(F[0],x),b=Math.max(F[0],b),p=Math.min(F[1],p),E=Math.max(F[1],E),k=Math.min(F[2],k),A=Math.max(F[2],A);var q=h[T];if(s.length(q)>v&&(v=s.length(q)),T&&!P){var V=2*s.distance(L,F)/(s.length(_)+s.length(q));V?(M=Math.min(M,V),g=!1):g=!0}g||(L=F,_=q),C.push(q)}var H=[x,p,k],X=[b,E,A];c&&(c[0]=H,c[1]=X),v===0&&(v=1);var G=1/v;isFinite(M)||(M=1),d.vectorScale=M;var N=u.coneSize||(P?1:.5);u.absoluteConeSize&&(N=u.absoluteConeSize*G),d.coneScale=N;for(var T=0,W=0;T<f.length;T++)for(var F=f[T],re=F[0],ae=F[1],_e=F[2],Me=C[T],ke=s.length(Me)*G,ge=0,ie=8;ge<ie;ge++){d.positions.push([re,ae,_e,W++]),d.positions.push([re,ae,_e,W++]),d.positions.push([re,ae,_e,W++]),d.positions.push([re,ae,_e,W++]),d.positions.push([re,ae,_e,W++]),d.positions.push([re,ae,_e,W++]),d.vectors.push(Me),d.vectors.push(Me),d.vectors.push(Me),d.vectors.push(Me),d.vectors.push(Me),d.vectors.push(Me),d.vertexIntensity.push(ke,ke,ke),d.vertexIntensity.push(ke,ke,ke);var Te=d.positions.length;d.cells.push([Te-6,Te-5,Te-4],[Te-3,Te-2,Te-1])}return d};var l=o(614);i.exports.createMesh=o(9060),i.exports.createConeMesh=function(u,c){return i.exports.createMesh(u,c,{shaders:l,traceType:"cone"})}},9060:function(i,a,o){"use strict";var s=o(9405),l=o(2762),u=o(8116),c=o(7766),f=o(6760),h=o(7608),d=o(9618),v=o(6729),x=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function b(C,M,g,P,T,F,q,V,H,X,G){this.gl=C,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=M,this.dirty=!0,this.triShader=g,this.pickShader=P,this.trianglePositions=T,this.triangleVectors=F,this.triangleColors=V,this.triangleUVs=H,this.triangleIds=q,this.triangleVAO=X,this.triangleCount=0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.traceType=G,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=x,this._view=x,this._projection=x,this._resolution=[1,1]}var p=b.prototype;p.isOpaque=function(){return this.opacity>=1},p.isTransparent=function(){return this.opacity<1},p.pickSlots=1,p.setPickBase=function(C){this.pickId=C};function E(C){for(var M=v({colormap:C,nshades:256,format:"rgba"}),g=new Uint8Array(256*4),P=0;P<256;++P){for(var T=M[P],F=0;F<3;++F)g[4*P+F]=T[F];g[4*P+3]=T[3]*255}return d(g,[256,256,4],[4,0,1])}function k(C){for(var M=C.length,g=new Array(M),P=0;P<M;++P)g[P]=C[P][2];return g}p.update=function(C){C=C||{};var M=this.gl;this.dirty=!0,"lightPosition"in C&&(this.lightPosition=C.lightPosition),"opacity"in C&&(this.opacity=C.opacity),"ambient"in C&&(this.ambientLight=C.ambient),"diffuse"in C&&(this.diffuseLight=C.diffuse),"specular"in C&&(this.specularLight=C.specular),"roughness"in C&&(this.roughness=C.roughness),"fresnel"in C&&(this.fresnel=C.fresnel),C.tubeScale!==void 0&&(this.tubeScale=C.tubeScale),C.vectorScale!==void 0&&(this.vectorScale=C.vectorScale),C.coneScale!==void 0&&(this.coneScale=C.coneScale),C.coneOffset!==void 0&&(this.coneOffset=C.coneOffset),C.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=M.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=M.LINEAR,this.texture.setPixels(E(C.colormap)),this.texture.generateMipmap());var g=C.cells,P=C.positions,T=C.vectors;if(!(!P||!g||!T)){var F=[],q=[],V=[],H=[],X=[];this.cells=g,this.positions=P,this.vectors=T;var G=C.meshColor||[1,1,1,1],N=C.vertexIntensity,W=1/0,re=-1/0;if(N)if(C.vertexIntensityBounds)W=+C.vertexIntensityBounds[0],re=+C.vertexIntensityBounds[1];else for(var ae=0;ae<N.length;++ae){var _e=N[ae];W=Math.min(W,_e),re=Math.max(re,_e)}else for(var ae=0;ae<P.length;++ae){var _e=P[ae][2];W=Math.min(W,_e),re=Math.max(re,_e)}N?this.intensity=N:this.intensity=k(P),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var ae=0;ae<P.length;++ae)for(var Me=P[ae],ke=0;ke<3;++ke)isNaN(Me[ke])||!isFinite(Me[ke])||(this.bounds[0][ke]=Math.min(this.bounds[0][ke],Me[ke]),this.bounds[1][ke]=Math.max(this.bounds[1][ke],Me[ke]));var ge=0;e:for(var ae=0;ae<g.length;++ae){var ie=g[ae];switch(ie.length){case 3:for(var ke=0;ke<3;++ke)for(var Te=ie[ke],Me=P[Te],Ee=0;Ee<3;++Ee)if(isNaN(Me[Ee])||!isFinite(Me[Ee]))continue e;for(var ke=0;ke<3;++ke){var Te=ie[2-ke],Me=P[Te];F.push(Me[0],Me[1],Me[2],Me[3]);var Ae=T[Te];q.push(Ae[0],Ae[1],Ae[2],Ae[3]||0);var ze=G;ze.length===3?V.push(ze[0],ze[1],ze[2],1):V.push(ze[0],ze[1],ze[2],ze[3]);var Ce;N?Ce=[(N[Te]-W)/(re-W),0]:Ce=[(Me[2]-W)/(re-W),0],H.push(Ce[0],Ce[1]),X.push(ae)}ge+=1;break;default:break}}this.triangleCount=ge,this.trianglePositions.update(F),this.triangleVectors.update(q),this.triangleColors.update(V),this.triangleUVs.update(H),this.triangleIds.update(new Uint32Array(X))}},p.drawTransparent=p.draw=function(C){C=C||{};for(var M=this.gl,g=C.model||x,P=C.view||x,T=C.projection||x,F=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],q=0;q<3;++q)F[0][q]=Math.max(F[0][q],this.clipBounds[0][q]),F[1][q]=Math.min(F[1][q],this.clipBounds[1][q]);var V={model:g,view:P,projection:T,inverseModel:x.slice(),clipBounds:F,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,texture:0};V.inverseModel=h(V.inverseModel,V.model),M.disable(M.CULL_FACE),this.texture.bind(0);var H=new Array(16);f(H,V.view,V.model),f(H,V.projection,H),h(H,H);for(var q=0;q<3;++q)V.eyePosition[q]=H[12+q]/H[15];for(var X=H[15],q=0;q<3;++q)X+=this.lightPosition[q]*H[4*q+3];for(var q=0;q<3;++q){for(var G=H[12+q],N=0;N<3;++N)G+=H[4*N+q]*this.lightPosition[N];V.lightPosition[q]=G/X}if(this.triangleCount>0){var W=this.triShader;W.bind(),W.uniforms=V,this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},p.drawPick=function(C){C=C||{};for(var M=this.gl,g=C.model||x,P=C.view||x,T=C.projection||x,F=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],q=0;q<3;++q)F[0][q]=Math.max(F[0][q],this.clipBounds[0][q]),F[1][q]=Math.min(F[1][q],this.clipBounds[1][q]);this._model=[].slice.call(g),this._view=[].slice.call(P),this._projection=[].slice.call(T),this._resolution=[M.drawingBufferWidth,M.drawingBufferHeight];var V={model:g,view:P,projection:T,clipBounds:F,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},H=this.pickShader;H.bind(),H.uniforms=V,this.triangleCount>0&&(this.triangleVAO.bind(),M.drawArrays(M.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},p.pick=function(C){if(!C||C.id!==this.pickId)return null;var M=C.value[0]+256*C.value[1]+65536*C.value[2],g=this.cells[M],P=this.positions[g[1]].slice(0,3),T={position:P,dataCoordinate:P,index:Math.floor(g[1]/48)};return this.traceType==="cone"?T.index=Math.floor(g[1]/48):this.traceType==="streamtube"&&(T.intensity=this.intensity[g[1]],T.velocity=this.vectors[g[1]].slice(0,3),T.divergence=this.vectors[g[1]][3],T.index=M),T},p.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function A(C,M){var g=s(C,M.meshShader.vertex,M.meshShader.fragment,null,M.meshShader.attributes);return g.attributes.position.location=0,g.attributes.color.location=2,g.attributes.uv.location=3,g.attributes.vector.location=4,g}function L(C,M){var g=s(C,M.pickShader.vertex,M.pickShader.fragment,null,M.pickShader.attributes);return g.attributes.position.location=0,g.attributes.id.location=1,g.attributes.vector.location=4,g}function _(C,M,g){var P=g.shaders;arguments.length===1&&(M=C,C=M.gl);var T=A(C,P),F=L(C,P),q=c(C,d(new Uint8Array([255,255,255,255]),[1,1,4]));q.generateMipmap(),q.minFilter=C.LINEAR_MIPMAP_LINEAR,q.magFilter=C.LINEAR;var V=l(C),H=l(C),X=l(C),G=l(C),N=l(C),W=u(C,[{buffer:V,type:C.FLOAT,size:4},{buffer:N,type:C.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:X,type:C.FLOAT,size:4},{buffer:G,type:C.FLOAT,size:2},{buffer:H,type:C.FLOAT,size:4}]),re=new b(C,q,T,F,V,H,N,X,G,W,g.traceType||"cone");return re.update(M),re}i.exports=_},614:function(i,a,o){var s=o(3236),l=s([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the cone vertex and normal at the given index.
+//
+// The returned vertex is for a cone with its top at origin and height of 1.0,
+// pointing in the direction of the vector attribute.
+//
+// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
+// These vertices are used to make up the triangles of the cone by the following:
+// segment + 0 top vertex
+// segment + 1 perimeter vertex a+1
+// segment + 2 perimeter vertex a
+// segment + 3 center base vertex
+// segment + 4 perimeter vertex a
+// segment + 5 perimeter vertex a+1
+// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
+// To go from index to segment, floor(index / 6)
+// To go from segment to angle, 2*pi * (segment/segmentCount)
+// To go from index to segment index, index - (segment*6)
+//
+vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {
+
+ const float segmentCount = 8.0;
+
+ float index = rawIndex - floor(rawIndex /
+ (segmentCount * 6.0)) *
+ (segmentCount * 6.0);
+
+ float segment = floor(0.001 + index/6.0);
+ float segmentIndex = index - (segment*6.0);
+
+ normal = -normalize(d);
+
+ if (segmentIndex > 2.99 && segmentIndex < 3.01) {
+ return mix(vec3(0.0), -d, coneOffset);
+ }
+
+ float nextAngle = (
+ (segmentIndex > 0.99 && segmentIndex < 1.01) ||
+ (segmentIndex > 4.99 && segmentIndex < 5.01)
+ ) ? 1.0 : 0.0;
+ float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);
+
+ vec3 v1 = mix(d, vec3(0.0), coneOffset);
+ vec3 v2 = v1 - d;
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d)*0.25;
+ vec3 y = v * sin(angle) * length(d)*0.25;
+ vec3 v3 = v2 + x + y;
+ if (segmentIndex < 3.0) {
+ vec3 tx = u * sin(angle);
+ vec3 ty = v * -cos(angle);
+ vec3 tangent = tx + ty;
+ normal = normalize(cross(v3 - v1, tangent));
+ }
+
+ if (segmentIndex == 0.0) {
+ return mix(d, vec3(0.0), coneOffset);
+ }
+ return v3;
+}
+
+attribute vec3 vector;
+attribute vec4 color, position;
+attribute vec2 uv;
+
+uniform float vectorScale, coneScale, coneOffset;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 eyePosition, lightPosition;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ // Scale the vector magnitude to stay constant with
+ // model & view changes.
+ vec3 normal;
+ vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);
+ vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * conePosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ // vec4 m_position = model * vec4(conePosition, 1.0);
+ vec4 t_position = view * conePosition;
+ gl_Position = projection * t_position;
+
+ f_color = color;
+ f_data = conePosition.xyz;
+ f_position = position.xyz;
+ f_uv = uv;
+}
+`]),u=s([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform sampler2D texture;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = f_color * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * opacity;
+}
+`]),c=s([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the cone vertex and normal at the given index.
+//
+// The returned vertex is for a cone with its top at origin and height of 1.0,
+// pointing in the direction of the vector attribute.
+//
+// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
+// These vertices are used to make up the triangles of the cone by the following:
+// segment + 0 top vertex
+// segment + 1 perimeter vertex a+1
+// segment + 2 perimeter vertex a
+// segment + 3 center base vertex
+// segment + 4 perimeter vertex a
+// segment + 5 perimeter vertex a+1
+// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
+// To go from index to segment, floor(index / 6)
+// To go from segment to angle, 2*pi * (segment/segmentCount)
+// To go from index to segment index, index - (segment*6)
+//
+vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {
+
+ const float segmentCount = 8.0;
+
+ float index = rawIndex - floor(rawIndex /
+ (segmentCount * 6.0)) *
+ (segmentCount * 6.0);
+
+ float segment = floor(0.001 + index/6.0);
+ float segmentIndex = index - (segment*6.0);
+
+ normal = -normalize(d);
+
+ if (segmentIndex > 2.99 && segmentIndex < 3.01) {
+ return mix(vec3(0.0), -d, coneOffset);
+ }
+
+ float nextAngle = (
+ (segmentIndex > 0.99 && segmentIndex < 1.01) ||
+ (segmentIndex > 4.99 && segmentIndex < 5.01)
+ ) ? 1.0 : 0.0;
+ float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);
+
+ vec3 v1 = mix(d, vec3(0.0), coneOffset);
+ vec3 v2 = v1 - d;
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d)*0.25;
+ vec3 y = v * sin(angle) * length(d)*0.25;
+ vec3 v3 = v2 + x + y;
+ if (segmentIndex < 3.0) {
+ vec3 tx = u * sin(angle);
+ vec3 ty = v * -cos(angle);
+ vec3 tangent = tx + ty;
+ normal = normalize(cross(v3 - v1, tangent));
+ }
+
+ if (segmentIndex == 0.0) {
+ return mix(d, vec3(0.0), coneOffset);
+ }
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform float vectorScale, coneScale, coneOffset;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ vec3 normal;
+ vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);
+ vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+ gl_Position = projection * (view * conePosition);
+ f_id = id;
+ f_position = position.xyz;
+}
+`]),f=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]);a.meshShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},a.pickShader={vertex:c,fragment:f,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(i){i.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"}},5171:function(i,a,o){var s=o(737);i.exports=function(u){return s[u]}},9165:function(i,a,o){"use strict";i.exports=b;var s=o(2762),l=o(8116),u=o(3436),c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,E,k,A){this.gl=p,this.shader=A,this.buffer=E,this.vao=k,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var h=f.prototype;h.isOpaque=function(){return!this.hasAlpha},h.isTransparent=function(){return this.hasAlpha},h.drawTransparent=h.draw=function(p){var E=this.gl,k=this.shader.uniforms;this.shader.bind();var A=k.view=p.view||c,L=k.projection=p.projection||c;k.model=p.model||c,k.clipBounds=this.clipBounds,k.opacity=this.opacity;var _=A[12],C=A[13],M=A[14],g=A[15],P=p._ortho||!1,T=P?2:1,F=T*this.pixelRatio*(L[3]*_+L[7]*C+L[11]*M+L[15]*g)/E.drawingBufferHeight;this.vao.bind();for(var q=0;q<3;++q)E.lineWidth(this.lineWidth[q]*this.pixelRatio),k.capSize=this.capSize[q]*F,this.lineCount[q]&&E.drawArrays(E.LINES,this.lineOffset[q],this.lineCount[q]);this.vao.unbind()};function d(p,E){for(var k=0;k<3;++k)p[0][k]=Math.min(p[0][k],E[k]),p[1][k]=Math.max(p[1][k],E[k])}var v=function(){for(var p=new Array(3),E=0;E<3;++E){for(var k=[],A=1;A<=2;++A)for(var L=-1;L<=1;L+=2){var _=(A+E)%3,C=[0,0,0];C[_]=L,k.push(C)}p[E]=k}return p}();function x(p,E,k,A){for(var L=v[A],_=0;_<L.length;++_){var C=L[_];p.push(E[0],E[1],E[2],k[0],k[1],k[2],k[3],C[0],C[1],C[2])}return L.length}h.update=function(p){p=p||{},"lineWidth"in p&&(this.lineWidth=p.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),"capSize"in p&&(this.capSize=p.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,"opacity"in p&&(this.opacity=+p.opacity,this.opacity<1&&(this.hasAlpha=!0));var E=p.color||[[0,0,0],[0,0,0],[0,0,0]],k=p.position,A=p.error;if(Array.isArray(E[0])||(E=[E,E,E]),k&&A){var L=[],_=k.length,C=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var M=0;M<3;++M){this.lineOffset[M]=C;e:for(var g=0;g<_;++g){for(var P=k[g],T=0;T<3;++T)if(isNaN(P[T])||!isFinite(P[T]))continue e;var F=A[g],q=E[M];if(Array.isArray(q[0])&&(q=E[g]),q.length===3?q=[q[0],q[1],q[2],1]:q.length===4&&(q=[q[0],q[1],q[2],q[3]],!this.hasAlpha&&q[3]<1&&(this.hasAlpha=!0)),!(isNaN(F[0][M])||isNaN(F[1][M]))){if(F[0][M]<0){var V=P.slice();V[M]+=F[0][M],L.push(P[0],P[1],P[2],q[0],q[1],q[2],q[3],0,0,0,V[0],V[1],V[2],q[0],q[1],q[2],q[3],0,0,0),d(this.bounds,V),C+=2+x(L,V,q,M)}if(F[1][M]>0){var V=P.slice();V[M]+=F[1][M],L.push(P[0],P[1],P[2],q[0],q[1],q[2],q[3],0,0,0,V[0],V[1],V[2],q[0],q[1],q[2],q[3],0,0,0),d(this.bounds,V),C+=2+x(L,V,q,M)}}}this.lineCount[M]=C-this.lineOffset[M]}this.buffer.update(L)}},h.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function b(p){var E=p.gl,k=s(E),A=l(E,[{buffer:k,type:E.FLOAT,size:3,offset:0,stride:40},{buffer:k,type:E.FLOAT,size:4,offset:12,stride:40},{buffer:k,type:E.FLOAT,size:3,offset:28,stride:40}]),L=u(E);L.attributes.position.location=0,L.attributes.color.location=1,L.attributes.offset.location=2;var _=new f(E,k,A,L);return _.update(p),_}},3436:function(i,a,o){"use strict";var s=o(3236),l=o(9405),u=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, offset;
+attribute vec4 color;
+uniform mat4 model, view, projection;
+uniform float capSize;
+varying vec4 fragColor;
+varying vec3 fragPosition;
+
+void main() {
+ vec4 worldPosition = model * vec4(position, 1.0);
+ worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);
+ gl_Position = projection * (view * worldPosition);
+ fragColor = color;
+ fragPosition = position;
+}`]),c=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float opacity;
+varying vec3 fragPosition;
+varying vec4 fragColor;
+
+void main() {
+ if (
+ outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||
+ fragColor.a * opacity == 0.
+ ) discard;
+
+ gl_FragColor = opacity * fragColor;
+}`]);i.exports=function(f){return l(f,u,c,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(i,a,o){"use strict";var s=o(7766);i.exports=C;var l=null,u,c,f,h;function d(M){var g=M.getParameter(M.FRAMEBUFFER_BINDING),P=M.getParameter(M.RENDERBUFFER_BINDING),T=M.getParameter(M.TEXTURE_BINDING_2D);return[g,P,T]}function v(M,g){M.bindFramebuffer(M.FRAMEBUFFER,g[0]),M.bindRenderbuffer(M.RENDERBUFFER,g[1]),M.bindTexture(M.TEXTURE_2D,g[2])}function x(M,g){var P=M.getParameter(g.MAX_COLOR_ATTACHMENTS_WEBGL);l=new Array(P+1);for(var T=0;T<=P;++T){for(var F=new Array(P),q=0;q<T;++q)F[q]=M.COLOR_ATTACHMENT0+q;for(var q=T;q<P;++q)F[q]=M.NONE;l[T]=F}}function b(M){switch(M){case u:throw new Error("gl-fbo: Framebuffer unsupported");case c:throw new Error("gl-fbo: Framebuffer incomplete attachment");case f:throw new Error("gl-fbo: Framebuffer incomplete dimensions");case h:throw new Error("gl-fbo: Framebuffer incomplete missing attachment");default:throw new Error("gl-fbo: Framebuffer failed for unspecified reason")}}function p(M,g,P,T,F,q){if(!T)return null;var V=s(M,g,P,F,T);return V.magFilter=M.NEAREST,V.minFilter=M.NEAREST,V.mipSamples=1,V.bind(),M.framebufferTexture2D(M.FRAMEBUFFER,q,M.TEXTURE_2D,V.handle,0),V}function E(M,g,P,T,F){var q=M.createRenderbuffer();return M.bindRenderbuffer(M.RENDERBUFFER,q),M.renderbufferStorage(M.RENDERBUFFER,T,g,P),M.framebufferRenderbuffer(M.FRAMEBUFFER,F,M.RENDERBUFFER,q),q}function k(M){var g=d(M.gl),P=M.gl,T=M.handle=P.createFramebuffer(),F=M._shape[0],q=M._shape[1],V=M.color.length,H=M._ext,X=M._useStencil,G=M._useDepth,N=M._colorType;P.bindFramebuffer(P.FRAMEBUFFER,T);for(var W=0;W<V;++W)M.color[W]=p(P,F,q,N,P.RGBA,P.COLOR_ATTACHMENT0+W);V===0?(M._color_rb=E(P,F,q,P.RGBA4,P.COLOR_ATTACHMENT0),H&&H.drawBuffersWEBGL(l[0])):V>1&&H.drawBuffersWEBGL(l[V]);var re=P.getExtension("WEBGL_depth_texture");re?X?M.depth=p(P,F,q,re.UNSIGNED_INT_24_8_WEBGL,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):G&&(M.depth=p(P,F,q,P.UNSIGNED_SHORT,P.DEPTH_COMPONENT,P.DEPTH_ATTACHMENT)):G&&X?M._depth_rb=E(P,F,q,P.DEPTH_STENCIL,P.DEPTH_STENCIL_ATTACHMENT):G?M._depth_rb=E(P,F,q,P.DEPTH_COMPONENT16,P.DEPTH_ATTACHMENT):X&&(M._depth_rb=E(P,F,q,P.STENCIL_INDEX,P.STENCIL_ATTACHMENT));var ae=P.checkFramebufferStatus(P.FRAMEBUFFER);if(ae!==P.FRAMEBUFFER_COMPLETE){M._destroyed=!0,P.bindFramebuffer(P.FRAMEBUFFER,null),P.deleteFramebuffer(M.handle),M.handle=null,M.depth&&(M.depth.dispose(),M.depth=null),M._depth_rb&&(P.deleteRenderbuffer(M._depth_rb),M._depth_rb=null);for(var W=0;W<M.color.length;++W)M.color[W].dispose(),M.color[W]=null;M._color_rb&&(P.deleteRenderbuffer(M._color_rb),M._color_rb=null),v(P,g),b(ae)}v(P,g)}function A(M,g,P,T,F,q,V,H){this.gl=M,this._shape=[g|0,P|0],this._destroyed=!1,this._ext=H,this.color=new Array(F);for(var X=0;X<F;++X)this.color[X]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=T,this._useDepth=q,this._useStencil=V;var G=this,N=[g|0,P|0];Object.defineProperties(N,{0:{get:function(){return G._shape[0]},set:function(W){return G.width=W}},1:{get:function(){return G._shape[1]},set:function(W){return G.height=W}}}),this._shapeVector=N,k(this)}var L=A.prototype;function _(M,g,P){if(M._destroyed)throw new Error("gl-fbo: Can't resize destroyed FBO");if(!(M._shape[0]===g&&M._shape[1]===P)){var T=M.gl,F=T.getParameter(T.MAX_RENDERBUFFER_SIZE);if(g<0||g>F||P<0||P>F)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");M._shape[0]=g,M._shape[1]=P;for(var q=d(T),V=0;V<M.color.length;++V)M.color[V].shape=M._shape;M._color_rb&&(T.bindRenderbuffer(T.RENDERBUFFER,M._color_rb),T.renderbufferStorage(T.RENDERBUFFER,T.RGBA4,M._shape[0],M._shape[1])),M.depth&&(M.depth.shape=M._shape),M._depth_rb&&(T.bindRenderbuffer(T.RENDERBUFFER,M._depth_rb),M._useDepth&&M._useStencil?T.renderbufferStorage(T.RENDERBUFFER,T.DEPTH_STENCIL,M._shape[0],M._shape[1]):M._useDepth?T.renderbufferStorage(T.RENDERBUFFER,T.DEPTH_COMPONENT16,M._shape[0],M._shape[1]):M._useStencil&&T.renderbufferStorage(T.RENDERBUFFER,T.STENCIL_INDEX,M._shape[0],M._shape[1])),T.bindFramebuffer(T.FRAMEBUFFER,M.handle);var H=T.checkFramebufferStatus(T.FRAMEBUFFER);H!==T.FRAMEBUFFER_COMPLETE&&(M.dispose(),v(T,q),b(H)),v(T,q)}}Object.defineProperties(L,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(M){if(Array.isArray(M)||(M=[M|0,M|0]),M.length!==2)throw new Error("gl-fbo: Shape vector must be length 2");var g=M[0]|0,P=M[1]|0;return _(this,g,P),[g,P]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(M){return M=M|0,_(this,M,this._shape[1]),M},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(M){return M=M|0,_(this,this._shape[0],M),M},enumerable:!1}}),L.bind=function(){if(!this._destroyed){var M=this.gl;M.bindFramebuffer(M.FRAMEBUFFER,this.handle),M.viewport(0,0,this._shape[0],this._shape[1])}},L.dispose=function(){if(!this._destroyed){this._destroyed=!0;var M=this.gl;M.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(M.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var g=0;g<this.color.length;++g)this.color[g].dispose(),this.color[g]=null;this._color_rb&&(M.deleteRenderbuffer(this._color_rb),this._color_rb=null)}};function C(M,g,P,T){u||(u=M.FRAMEBUFFER_UNSUPPORTED,c=M.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,f=M.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,h=M.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var F=M.getExtension("WEBGL_draw_buffers");if(!l&&F&&x(M,F),Array.isArray(g)&&(T=P,P=g[1]|0,g=g[0]|0),typeof g!="number")throw new Error("gl-fbo: Missing shape parameter");var q=M.getParameter(M.MAX_RENDERBUFFER_SIZE);if(g<0||g>q||P<0||P>q)throw new Error("gl-fbo: Parameters are too large for FBO");T=T||{};var V=1;if("color"in T){if(V=Math.max(T.color|0,0),V<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(V>1)if(F){if(V>M.getParameter(F.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+V+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var H=M.UNSIGNED_BYTE,X=M.getExtension("OES_texture_float");if(T.float&&V>0){if(!X)throw new Error("gl-fbo: Context does not support floating point textures");H=M.FLOAT}else T.preferFloat&&V>0&&X&&(H=M.FLOAT);var G=!0;"depth"in T&&(G=!!T.depth);var N=!1;return"stencil"in T&&(N=!!T.stencil),new A(M,g,P,H,V,G,N,F)}},2992:function(i,a,o){var s=o(3387).sprintf,l=o(5171),u=o(1848),c=o(1085);i.exports=f;function f(h,d,v){"use strict";var x=u(d)||"of unknown name (see npm glsl-shader-name)",b="unknown type";v!==void 0&&(b=v===l.FRAGMENT_SHADER?"fragment":"vertex");for(var p=s(`Error compiling %s shader %s:
+`,b,x),E=s("%s%s",p,h),k=h.split(`
+`),A={},L=0;L<k.length;L++){var _=k[L];if(!(_===""||_==="\0")){var C=parseInt(_.split(":")[2]);if(isNaN(C))throw new Error(s("Could not parse error: %s",_));A[C]=_}}for(var M=c(d).split(`
+`),L=0;L<M.length;L++)if(!(!A[L+3]&&!A[L+2]&&!A[L+1])){var g=M[L];if(p+=g+`
+`,A[L+1]){var P=A[L+1];P=P.substr(P.split(":",3).join(":").length+1).trim(),p+=s(`^^^ %s
+
+`,P)}}return{long:p.trim(),short:E.trim()}}},7319:function(i,a,o){var s=o(3236),l=o(9405),u=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, nextPosition;
+attribute float arcLength, lineWidth;
+attribute vec4 color;
+
+uniform vec2 screenShape;
+uniform float pixelRatio;
+uniform mat4 model, view, projection;
+
+varying vec4 fragColor;
+varying vec3 worldPosition;
+varying float pixelArcLength;
+
+vec4 project(vec3 p) {
+ return projection * (view * (model * vec4(p, 1.0)));
+}
+
+void main() {
+ vec4 startPoint = project(position);
+ vec4 endPoint = project(nextPosition);
+
+ vec2 A = startPoint.xy / startPoint.w;
+ vec2 B = endPoint.xy / endPoint.w;
+
+ float clipAngle = atan(
+ (B.y - A.y) * screenShape.y,
+ (B.x - A.x) * screenShape.x
+ );
+
+ vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(
+ sin(clipAngle),
+ -cos(clipAngle)
+ ) / screenShape;
+
+ gl_Position = vec4(startPoint.xy + startPoint.w * offset, startPoint.zw);
+
+ worldPosition = position;
+ pixelArcLength = arcLength;
+ fragColor = color;
+}
+`]),c=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform sampler2D dashTexture;
+uniform float dashScale;
+uniform float opacity;
+
+varying vec3 worldPosition;
+varying float pixelArcLength;
+varying vec4 fragColor;
+
+void main() {
+ if (
+ outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||
+ fragColor.a * opacity == 0.
+ ) discard;
+
+ float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;
+ if(dashWeight < 0.5) {
+ discard;
+ }
+ gl_FragColor = fragColor * opacity;
+}
+`]),f=s([`precision highp float;
+#define GLSLIFY 1
+
+#define FLOAT_MAX 1.70141184e38
+#define FLOAT_MIN 1.17549435e-38
+
+// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl
+vec4 packFloat(float v) {
+ float av = abs(v);
+
+ //Handle special cases
+ if(av < FLOAT_MIN) {
+ return vec4(0.0, 0.0, 0.0, 0.0);
+ } else if(v > FLOAT_MAX) {
+ return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;
+ } else if(v < -FLOAT_MAX) {
+ return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;
+ }
+
+ vec4 c = vec4(0,0,0,0);
+
+ //Compute exponent and mantissa
+ float e = floor(log2(av));
+ float m = av * pow(2.0, -e) - 1.0;
+
+ //Unpack mantissa
+ c[1] = floor(128.0 * m);
+ m -= c[1] / 128.0;
+ c[2] = floor(32768.0 * m);
+ m -= c[2] / 32768.0;
+ c[3] = floor(8388608.0 * m);
+
+ //Unpack exponent
+ float ebias = e + 127.0;
+ c[0] = floor(ebias / 2.0);
+ ebias -= c[0] * 2.0;
+ c[1] += floor(ebias) * 128.0;
+
+ //Unpack sign bit
+ c[0] += 128.0 * step(0.0, -v);
+
+ //Scale back to range
+ return c / 255.0;
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform float pickId;
+uniform vec3 clipBounds[2];
+
+varying vec3 worldPosition;
+varying float pixelArcLength;
+varying vec4 fragColor;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;
+
+ gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);
+}`]),h=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];a.createShader=function(d){return l(d,u,c,null,h)},a.createPickShader=function(d){return l(d,u,f,null,h)}},5714:function(i,a,o){"use strict";i.exports=M;var s=o(2762),l=o(8116),u=o(7766),c=new Uint8Array(4),f=new Float32Array(c.buffer);function h(g,P,T,F){return c[0]=F,c[1]=T,c[2]=P,c[3]=g,f[0]}var d=o(2478),v=o(9618),x=o(7319),b=x.createShader,p=x.createPickShader,E=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function k(g,P){for(var T=0,F=0;F<3;++F){var q=g[F]-P[F];T+=q*q}return Math.sqrt(T)}function A(g){for(var P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],T=0;T<3;++T)P[0][T]=Math.max(g[0][T],P[0][T]),P[1][T]=Math.min(g[1][T],P[1][T]);return P}function L(g,P,T,F){this.arcLength=g,this.position=P,this.index=T,this.dataCoordinate=F}function _(g,P,T,F,q,V){this.gl=g,this.shader=P,this.pickShader=T,this.buffer=F,this.vao=q,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=V,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var C=_.prototype;C.isTransparent=function(){return this.hasAlpha},C.isOpaque=function(){return!this.hasAlpha},C.pickSlots=1,C.setPickBase=function(g){this.pickId=g},C.drawTransparent=C.draw=function(g){if(this.vertexCount){var P=this.gl,T=this.shader,F=this.vao;T.bind(),T.uniforms={model:g.model||E,view:g.view||E,projection:g.projection||E,clipBounds:A(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[P.drawingBufferWidth,P.drawingBufferHeight],pixelRatio:this.pixelRatio},F.bind(),F.draw(P.TRIANGLE_STRIP,this.vertexCount),F.unbind()}},C.drawPick=function(g){if(this.vertexCount){var P=this.gl,T=this.pickShader,F=this.vao;T.bind(),T.uniforms={model:g.model||E,view:g.view||E,projection:g.projection||E,pickId:this.pickId,clipBounds:A(this.clipBounds),screenShape:[P.drawingBufferWidth,P.drawingBufferHeight],pixelRatio:this.pixelRatio},F.bind(),F.draw(P.TRIANGLE_STRIP,this.vertexCount),F.unbind()}},C.update=function(g){var P,T;this.dirty=!0;var F=!!g.connectGaps;"dashScale"in g&&(this.dashScale=g.dashScale),this.hasAlpha=!1,"opacity"in g&&(this.opacity=+g.opacity,this.opacity<1&&(this.hasAlpha=!0));var q=[],V=[],H=[],X=0,G=0,N=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],W=g.position||g.positions;if(W){var re=g.color||g.colors||[0,0,0,1],ae=g.lineWidth||1,_e=!1;e:for(P=1;P<W.length;++P){var Me=W[P-1],ke=W[P];for(V.push(X),H.push(Me.slice()),T=0;T<3;++T){if(isNaN(Me[T])||isNaN(ke[T])||!isFinite(Me[T])||!isFinite(ke[T])){if(!F&&q.length>0){for(var ge=0;ge<24;++ge)q.push(q[q.length-12]);G+=2,_e=!0}continue e}N[0][T]=Math.min(N[0][T],Me[T],ke[T]),N[1][T]=Math.max(N[1][T],Me[T],ke[T])}var ie,Te;Array.isArray(re[0])?(ie=re.length>P-1?re[P-1]:re.length>0?re[re.length-1]:[0,0,0,1],Te=re.length>P?re[P]:re.length>0?re[re.length-1]:[0,0,0,1]):ie=Te=re,ie.length===3&&(ie=[ie[0],ie[1],ie[2],1]),Te.length===3&&(Te=[Te[0],Te[1],Te[2],1]),!this.hasAlpha&&ie[3]<1&&(this.hasAlpha=!0);var Ee;Array.isArray(ae)?Ee=ae.length>P-1?ae[P-1]:ae.length>0?ae[ae.length-1]:[0,0,0,1]:Ee=ae;var Ae=X;if(X+=k(Me,ke),_e){for(T=0;T<2;++T)q.push(Me[0],Me[1],Me[2],ke[0],ke[1],ke[2],Ae,Ee,ie[0],ie[1],ie[2],ie[3]);G+=2,_e=!1}q.push(Me[0],Me[1],Me[2],ke[0],ke[1],ke[2],Ae,Ee,ie[0],ie[1],ie[2],ie[3],Me[0],Me[1],Me[2],ke[0],ke[1],ke[2],Ae,-Ee,ie[0],ie[1],ie[2],ie[3],ke[0],ke[1],ke[2],Me[0],Me[1],Me[2],X,-Ee,Te[0],Te[1],Te[2],Te[3],ke[0],ke[1],ke[2],Me[0],Me[1],Me[2],X,Ee,Te[0],Te[1],Te[2],Te[3]),G+=4}}if(this.buffer.update(q),V.push(X),H.push(W[W.length-1].slice()),this.bounds=N,this.vertexCount=G,this.points=H,this.arcLength=V,"dashes"in g){var ze=g.dashes,Ce=ze.slice();for(Ce.unshift(0),P=1;P<Ce.length;++P)Ce[P]=Ce[P-1]+Ce[P];var me=v(new Array(256*4),[256,1,4]);for(P=0;P<256;++P){for(T=0;T<4;++T)me.set(P,0,T,0);d.le(Ce,Ce[Ce.length-1]*P/255)&1?me.set(P,0,0,0):me.set(P,0,0,255)}this.texture.setPixels(me)}},C.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},C.pick=function(g){if(!g||g.id!==this.pickId)return null;var P=h(g.value[0],g.value[1],g.value[2],0),T=d.le(this.arcLength,P);if(T<0)return null;if(T===this.arcLength.length-1)return new L(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),T);for(var F=this.points[T],q=this.points[Math.min(T+1,this.points.length-1)],V=(P-this.arcLength[T])/(this.arcLength[T+1]-this.arcLength[T]),H=1-V,X=[0,0,0],G=0;G<3;++G)X[G]=H*F[G]+V*q[G];var N=Math.min(V<.5?T:T+1,this.points.length-1);return new L(P,X,N,this.points[N])};function M(g){var P=g.gl||g.scene&&g.scene.gl,T=b(P);T.attributes.position.location=0,T.attributes.nextPosition.location=1,T.attributes.arcLength.location=2,T.attributes.lineWidth.location=3,T.attributes.color.location=4;var F=p(P);F.attributes.position.location=0,F.attributes.nextPosition.location=1,F.attributes.arcLength.location=2,F.attributes.lineWidth.location=3,F.attributes.color.location=4;for(var q=s(P),V=l(P,[{buffer:q,size:3,offset:0,stride:48},{buffer:q,size:3,offset:12,stride:48},{buffer:q,size:1,offset:24,stride:48},{buffer:q,size:1,offset:28,stride:48},{buffer:q,size:4,offset:32,stride:48}]),H=v(new Array(256*4),[256,1,4]),X=0;X<1024;++X)H.data[X]=255;var G=u(P,H);G.wrap=P.REPEAT;var N=new _(P,T,F,q,V,G);return N.update(g),N}},1903:function(i){i.exports=a;function a(o){var s=new Float32Array(16);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s[4]=o[4],s[5]=o[5],s[6]=o[6],s[7]=o[7],s[8]=o[8],s[9]=o[9],s[10]=o[10],s[11]=o[11],s[12]=o[12],s[13]=o[13],s[14]=o[14],s[15]=o[15],s}},6864:function(i){i.exports=a;function a(){var o=new Float32Array(16);return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},9921:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2],c=o[3],f=o[4],h=o[5],d=o[6],v=o[7],x=o[8],b=o[9],p=o[10],E=o[11],k=o[12],A=o[13],L=o[14],_=o[15],C=s*h-l*f,M=s*d-u*f,g=s*v-c*f,P=l*d-u*h,T=l*v-c*h,F=u*v-c*d,q=x*A-b*k,V=x*L-p*k,H=x*_-E*k,X=b*L-p*A,G=b*_-E*A,N=p*_-E*L;return C*N-M*G+g*X+P*H-T*V+F*q}},7399:function(i){i.exports=a;function a(o,s){var l=s[0],u=s[1],c=s[2],f=s[3],h=l+l,d=u+u,v=c+c,x=l*h,b=u*h,p=u*d,E=c*h,k=c*d,A=c*v,L=f*h,_=f*d,C=f*v;return o[0]=1-p-A,o[1]=b+C,o[2]=E-_,o[3]=0,o[4]=b-C,o[5]=1-x-A,o[6]=k+L,o[7]=0,o[8]=E+_,o[9]=k-L,o[10]=1-x-p,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},6743:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=s[3],d=u+u,v=c+c,x=f+f,b=u*d,p=u*v,E=u*x,k=c*v,A=c*x,L=f*x,_=h*d,C=h*v,M=h*x;return o[0]=1-(k+L),o[1]=p+M,o[2]=E-C,o[3]=0,o[4]=p-M,o[5]=1-(b+L),o[6]=A+_,o[7]=0,o[8]=E+C,o[9]=A-_,o[10]=1-(b+k),o[11]=0,o[12]=l[0],o[13]=l[1],o[14]=l[2],o[15]=1,o}},7894:function(i){i.exports=a;function a(o){return o[0]=1,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=1,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=1,o[11]=0,o[12]=0,o[13]=0,o[14]=0,o[15]=1,o}},7608:function(i){i.exports=a;function a(o,s){var l=s[0],u=s[1],c=s[2],f=s[3],h=s[4],d=s[5],v=s[6],x=s[7],b=s[8],p=s[9],E=s[10],k=s[11],A=s[12],L=s[13],_=s[14],C=s[15],M=l*d-u*h,g=l*v-c*h,P=l*x-f*h,T=u*v-c*d,F=u*x-f*d,q=c*x-f*v,V=b*L-p*A,H=b*_-E*A,X=b*C-k*A,G=p*_-E*L,N=p*C-k*L,W=E*C-k*_,re=M*W-g*N+P*G+T*X-F*H+q*V;return re?(re=1/re,o[0]=(d*W-v*N+x*G)*re,o[1]=(c*N-u*W-f*G)*re,o[2]=(L*q-_*F+C*T)*re,o[3]=(E*F-p*q-k*T)*re,o[4]=(v*X-h*W-x*H)*re,o[5]=(l*W-c*X+f*H)*re,o[6]=(_*P-A*q-C*g)*re,o[7]=(b*q-E*P+k*g)*re,o[8]=(h*N-d*X+x*V)*re,o[9]=(u*X-l*N-f*V)*re,o[10]=(A*F-L*P+C*M)*re,o[11]=(p*P-b*F-k*M)*re,o[12]=(d*H-h*G-v*V)*re,o[13]=(l*G-u*H+c*V)*re,o[14]=(L*g-A*T-_*M)*re,o[15]=(b*T-p*g+E*M)*re,o):null}},6582:function(i,a,o){var s=o(7894);i.exports=l;function l(u,c,f,h){var d,v,x,b,p,E,k,A,L,_,C=c[0],M=c[1],g=c[2],P=h[0],T=h[1],F=h[2],q=f[0],V=f[1],H=f[2];return Math.abs(C-q)<1e-6&&Math.abs(M-V)<1e-6&&Math.abs(g-H)<1e-6?s(u):(k=C-q,A=M-V,L=g-H,_=1/Math.sqrt(k*k+A*A+L*L),k*=_,A*=_,L*=_,d=T*L-F*A,v=F*k-P*L,x=P*A-T*k,_=Math.sqrt(d*d+v*v+x*x),_?(_=1/_,d*=_,v*=_,x*=_):(d=0,v=0,x=0),b=A*x-L*v,p=L*d-k*x,E=k*v-A*d,_=Math.sqrt(b*b+p*p+E*E),_?(_=1/_,b*=_,p*=_,E*=_):(b=0,p=0,E=0),u[0]=d,u[1]=b,u[2]=k,u[3]=0,u[4]=v,u[5]=p,u[6]=A,u[7]=0,u[8]=x,u[9]=E,u[10]=L,u[11]=0,u[12]=-(d*C+v*M+x*g),u[13]=-(b*C+p*M+E*g),u[14]=-(k*C+A*M+L*g),u[15]=1,u)}},6760:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=s[3],d=s[4],v=s[5],x=s[6],b=s[7],p=s[8],E=s[9],k=s[10],A=s[11],L=s[12],_=s[13],C=s[14],M=s[15],g=l[0],P=l[1],T=l[2],F=l[3];return o[0]=g*u+P*d+T*p+F*L,o[1]=g*c+P*v+T*E+F*_,o[2]=g*f+P*x+T*k+F*C,o[3]=g*h+P*b+T*A+F*M,g=l[4],P=l[5],T=l[6],F=l[7],o[4]=g*u+P*d+T*p+F*L,o[5]=g*c+P*v+T*E+F*_,o[6]=g*f+P*x+T*k+F*C,o[7]=g*h+P*b+T*A+F*M,g=l[8],P=l[9],T=l[10],F=l[11],o[8]=g*u+P*d+T*p+F*L,o[9]=g*c+P*v+T*E+F*_,o[10]=g*f+P*x+T*k+F*C,o[11]=g*h+P*b+T*A+F*M,g=l[12],P=l[13],T=l[14],F=l[15],o[12]=g*u+P*d+T*p+F*L,o[13]=g*c+P*v+T*E+F*_,o[14]=g*f+P*x+T*k+F*C,o[15]=g*h+P*b+T*A+F*M,o}},4040:function(i){i.exports=a;function a(o,s,l,u,c,f,h){var d=1/(s-l),v=1/(u-c),x=1/(f-h);return o[0]=-2*d,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=-2*v,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=2*x,o[11]=0,o[12]=(s+l)*d,o[13]=(c+u)*v,o[14]=(h+f)*x,o[15]=1,o}},4772:function(i){i.exports=a;function a(o,s,l,u,c){var f=1/Math.tan(s/2),h=1/(u-c);return o[0]=f/l,o[1]=0,o[2]=0,o[3]=0,o[4]=0,o[5]=f,o[6]=0,o[7]=0,o[8]=0,o[9]=0,o[10]=(c+u)*h,o[11]=-1,o[12]=0,o[13]=0,o[14]=2*c*u*h,o[15]=0,o}},6079:function(i){i.exports=a;function a(o,s,l,u){var c=u[0],f=u[1],h=u[2],d=Math.sqrt(c*c+f*f+h*h),v,x,b,p,E,k,A,L,_,C,M,g,P,T,F,q,V,H,X,G,N,W,re,ae;return Math.abs(d)<1e-6?null:(d=1/d,c*=d,f*=d,h*=d,v=Math.sin(l),x=Math.cos(l),b=1-x,p=s[0],E=s[1],k=s[2],A=s[3],L=s[4],_=s[5],C=s[6],M=s[7],g=s[8],P=s[9],T=s[10],F=s[11],q=c*c*b+x,V=f*c*b+h*v,H=h*c*b-f*v,X=c*f*b-h*v,G=f*f*b+x,N=h*f*b+c*v,W=c*h*b+f*v,re=f*h*b-c*v,ae=h*h*b+x,o[0]=p*q+L*V+g*H,o[1]=E*q+_*V+P*H,o[2]=k*q+C*V+T*H,o[3]=A*q+M*V+F*H,o[4]=p*X+L*G+g*N,o[5]=E*X+_*G+P*N,o[6]=k*X+C*G+T*N,o[7]=A*X+M*G+F*N,o[8]=p*W+L*re+g*ae,o[9]=E*W+_*re+P*ae,o[10]=k*W+C*re+T*ae,o[11]=A*W+M*re+F*ae,s!==o&&(o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o)}},5567:function(i){i.exports=a;function a(o,s,l){var u=Math.sin(l),c=Math.cos(l),f=s[4],h=s[5],d=s[6],v=s[7],x=s[8],b=s[9],p=s[10],E=s[11];return s!==o&&(o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[4]=f*c+x*u,o[5]=h*c+b*u,o[6]=d*c+p*u,o[7]=v*c+E*u,o[8]=x*c-f*u,o[9]=b*c-h*u,o[10]=p*c-d*u,o[11]=E*c-v*u,o}},2408:function(i){i.exports=a;function a(o,s,l){var u=Math.sin(l),c=Math.cos(l),f=s[0],h=s[1],d=s[2],v=s[3],x=s[8],b=s[9],p=s[10],E=s[11];return s!==o&&(o[4]=s[4],o[5]=s[5],o[6]=s[6],o[7]=s[7],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[0]=f*c-x*u,o[1]=h*c-b*u,o[2]=d*c-p*u,o[3]=v*c-E*u,o[8]=f*u+x*c,o[9]=h*u+b*c,o[10]=d*u+p*c,o[11]=v*u+E*c,o}},7089:function(i){i.exports=a;function a(o,s,l){var u=Math.sin(l),c=Math.cos(l),f=s[0],h=s[1],d=s[2],v=s[3],x=s[4],b=s[5],p=s[6],E=s[7];return s!==o&&(o[8]=s[8],o[9]=s[9],o[10]=s[10],o[11]=s[11],o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15]),o[0]=f*c+x*u,o[1]=h*c+b*u,o[2]=d*c+p*u,o[3]=v*c+E*u,o[4]=x*c-f*u,o[5]=b*c-h*u,o[6]=p*c-d*u,o[7]=E*c-v*u,o}},2504:function(i){i.exports=a;function a(o,s,l){var u=l[0],c=l[1],f=l[2];return o[0]=s[0]*u,o[1]=s[1]*u,o[2]=s[2]*u,o[3]=s[3]*u,o[4]=s[4]*c,o[5]=s[5]*c,o[6]=s[6]*c,o[7]=s[7]*c,o[8]=s[8]*f,o[9]=s[9]*f,o[10]=s[10]*f,o[11]=s[11]*f,o[12]=s[12],o[13]=s[13],o[14]=s[14],o[15]=s[15],o}},7656:function(i){i.exports=a;function a(o,s,l){var u=l[0],c=l[1],f=l[2],h,d,v,x,b,p,E,k,A,L,_,C;return s===o?(o[12]=s[0]*u+s[4]*c+s[8]*f+s[12],o[13]=s[1]*u+s[5]*c+s[9]*f+s[13],o[14]=s[2]*u+s[6]*c+s[10]*f+s[14],o[15]=s[3]*u+s[7]*c+s[11]*f+s[15]):(h=s[0],d=s[1],v=s[2],x=s[3],b=s[4],p=s[5],E=s[6],k=s[7],A=s[8],L=s[9],_=s[10],C=s[11],o[0]=h,o[1]=d,o[2]=v,o[3]=x,o[4]=b,o[5]=p,o[6]=E,o[7]=k,o[8]=A,o[9]=L,o[10]=_,o[11]=C,o[12]=h*u+b*c+A*f+s[12],o[13]=d*u+p*c+L*f+s[13],o[14]=v*u+E*c+_*f+s[14],o[15]=x*u+k*c+C*f+s[15]),o}},5665:function(i){i.exports=a;function a(o,s){if(o===s){var l=s[1],u=s[2],c=s[3],f=s[6],h=s[7],d=s[11];o[1]=s[4],o[2]=s[8],o[3]=s[12],o[4]=l,o[6]=s[9],o[7]=s[13],o[8]=u,o[9]=f,o[11]=s[14],o[12]=c,o[13]=h,o[14]=d}else o[0]=s[0],o[1]=s[4],o[2]=s[8],o[3]=s[12],o[4]=s[1],o[5]=s[5],o[6]=s[9],o[7]=s[13],o[8]=s[2],o[9]=s[6],o[10]=s[10],o[11]=s[14],o[12]=s[3],o[13]=s[7],o[14]=s[11],o[15]=s[15];return o}},7626:function(i,a,o){"use strict";var s=o(2642),l=o(9346);i.exports=d;function u(v,x){for(var b=[0,0,0,0],p=0;p<4;++p)for(var E=0;E<4;++E)b[E]+=v[4*p+E]*x[p];return b}function c(v,x,b,p,E){for(var k=u(p,u(b,u(x,[v[0],v[1],v[2],1]))),A=0;A<3;++A)k[A]/=k[3];return[.5*E[0]*(1+k[0]),.5*E[1]*(1-k[1])]}function f(v,x){if(v.length===2){for(var b=0,p=0,E=0;E<2;++E)b+=Math.pow(x[E]-v[0][E],2),p+=Math.pow(x[E]-v[1][E],2);return b=Math.sqrt(b),p=Math.sqrt(p),b+p<1e-6?[1,0]:[p/(b+p),b/(p+b)]}else if(v.length===3){var k=[0,0];return l(v[0],v[1],v[2],x,k),s(v,k)}return[]}function h(v,x){for(var b=[0,0,0],p=0;p<v.length;++p)for(var E=v[p],k=x[p],A=0;A<3;++A)b[A]+=k*E[A];return b}function d(v,x,b,p,E,k){if(v.length===1)return[0,v[0].slice()];for(var A=new Array(v.length),L=0;L<v.length;++L)A[L]=c(v[L],b,p,E,k);for(var _=0,C=1/0,L=0;L<A.length;++L){for(var M=0,g=0;g<2;++g)M+=Math.pow(A[L][g]-x[g],2);M<C&&(C=M,_=L)}for(var P=f(A,x),T=0,L=0;L<3;++L){if(P[L]<-.001||P[L]>1.0001)return null;T+=P[L]}return Math.abs(T-1)>.001?null:[_,h(v,P),P]}},840:function(i,a,o){var s=o(3236),l=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, normal;
+attribute vec4 color;
+attribute vec2 uv;
+
+uniform mat4 model
+ , view
+ , projection
+ , inverseModel;
+uniform vec3 eyePosition
+ , lightPosition;
+
+varying vec3 f_normal
+ , f_lightDirection
+ , f_eyeDirection
+ , f_data;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+vec4 project(vec3 p) {
+ return projection * (view * (model * vec4(p, 1.0)));
+}
+
+void main() {
+ gl_Position = project(position);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * vec4(position , 1.0);
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ f_color = color;
+ f_data = position;
+ f_uv = uv;
+}
+`]),u=s([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness
+ , fresnel
+ , kambient
+ , kdiffuse
+ , kspecular;
+uniform sampler2D texture;
+
+varying vec3 f_normal
+ , f_lightDirection
+ , f_eyeDirection
+ , f_data;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (f_color.a == 0.0 ||
+ outOfRange(clipBounds[0], clipBounds[1], f_data)
+ ) discard;
+
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d
+
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * f_color.a;
+}
+`]),c=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 uv;
+
+uniform mat4 model, view, projection;
+
+varying vec4 f_color;
+varying vec3 f_data;
+varying vec2 f_uv;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ f_color = color;
+ f_data = position;
+ f_uv = uv;
+}`]),f=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform sampler2D texture;
+uniform float opacity;
+
+varying vec4 f_color;
+varying vec3 f_data;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;
+
+ gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
+}`]),h=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 uv;
+attribute float pointSize;
+
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);
+ } else {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ }
+ gl_PointSize = pointSize;
+ f_color = color;
+ f_uv = uv;
+}`]),d=s([`precision highp float;
+#define GLSLIFY 1
+
+uniform sampler2D texture;
+uniform float opacity;
+
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);
+ if(dot(pointR, pointR) > 0.25) {
+ discard;
+ }
+ gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
+}`]),v=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ f_id = id;
+ f_position = position;
+}`]),x=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]),b=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute float pointSize;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0.0, 0.0, 0.0, 0.0);
+ } else {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ gl_PointSize = pointSize;
+ }
+ f_id = id;
+ f_position = position;
+}`]),p=s([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+}`]),E=s([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec3 contourColor;
+
+void main() {
+ gl_FragColor = vec4(contourColor, 1.0);
+}
+`]);a.meshShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},a.wireShader={vertex:c,fragment:f,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},a.pointShader={vertex:h,fragment:d,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},a.pickShader={vertex:v,fragment:x,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},a.pointPickShader={vertex:b,fragment:x,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},a.contourShader={vertex:p,fragment:E,attributes:[{name:"position",type:"vec3"}]}},7201:function(i,a,o){"use strict";var s=1e-6,l=1e-6,u=o(9405),c=o(2762),f=o(8116),h=o(7766),d=o(8406),v=o(6760),x=o(7608),b=o(9618),p=o(6729),E=o(7765),k=o(1888),A=o(840),L=o(7626),_=A.meshShader,C=A.wireShader,M=A.pointShader,g=A.pickShader,P=A.pointPickShader,T=A.contourShader,F=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function q(ge,ie,Te,Ee,Ae,ze,Ce,me,Re,ce,Ge,nt,ct,qt,rt,ot,Rt,kt,Ct,Yt,xr,er,Ke,xt,bt,Lt,St){this.gl=ge,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=ie,this.dirty=!0,this.triShader=Te,this.lineShader=Ee,this.pointShader=Ae,this.pickShader=ze,this.pointPickShader=Ce,this.contourShader=me,this.trianglePositions=Re,this.triangleColors=Ge,this.triangleNormals=ct,this.triangleUVs=nt,this.triangleIds=ce,this.triangleVAO=qt,this.triangleCount=0,this.lineWidth=1,this.edgePositions=rt,this.edgeColors=Rt,this.edgeUVs=kt,this.edgeIds=ot,this.edgeVAO=Ct,this.edgeCount=0,this.pointPositions=Yt,this.pointColors=er,this.pointUVs=Ke,this.pointSizes=xt,this.pointIds=xr,this.pointVAO=bt,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=Lt,this.contourVAO=St,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.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=F,this._view=F,this._projection=F,this._resolution=[1,1]}var V=q.prototype;V.isOpaque=function(){return!this.hasAlpha},V.isTransparent=function(){return this.hasAlpha},V.pickSlots=1,V.setPickBase=function(ge){this.pickId=ge};function H(ge,ie){if(!ie||!ie.length)return 1;for(var Te=0;Te<ie.length;++Te){if(ie.length<2)return 1;if(ie[Te][0]===ge)return ie[Te][1];if(ie[Te][0]>ge&&Te>0){var Ee=(ie[Te][0]-ge)/(ie[Te][0]-ie[Te-1][0]);return ie[Te][1]*(1-Ee)+Ee*ie[Te-1][1]}}return 1}function X(ge,ie){for(var Te=p({colormap:ge,nshades:256,format:"rgba"}),Ee=new Uint8Array(256*4),Ae=0;Ae<256;++Ae){for(var ze=Te[Ae],Ce=0;Ce<3;++Ce)Ee[4*Ae+Ce]=ze[Ce];ie?Ee[4*Ae+3]=255*H(Ae/255,ie):Ee[4*Ae+3]=255*ze[3]}return b(Ee,[256,256,4],[4,0,1])}function G(ge){for(var ie=ge.length,Te=new Array(ie),Ee=0;Ee<ie;++Ee)Te[Ee]=ge[Ee][2];return Te}V.highlight=function(ge){if(!ge||!this.contourEnable){this.contourCount=0;return}for(var ie=E(this.cells,this.intensity,ge.intensity),Te=ie.cells,Ee=ie.vertexIds,Ae=ie.vertexWeights,ze=Te.length,Ce=k.mallocFloat32(2*3*ze),me=0,Re=0;Re<ze;++Re)for(var ce=Te[Re],Ge=0;Ge<2;++Ge){var nt=ce[0];ce.length===2&&(nt=ce[Ge]);for(var ct=Ee[nt][0],qt=Ee[nt][1],rt=Ae[nt],ot=1-rt,Rt=this.positions[ct],kt=this.positions[qt],Ct=0;Ct<3;++Ct)Ce[me++]=rt*Rt[Ct]+ot*kt[Ct]}this.contourCount=me/3|0,this.contourPositions.update(Ce.subarray(0,me)),k.free(Ce)},V.update=function(ge){ge=ge||{};var ie=this.gl;this.dirty=!0,"contourEnable"in ge&&(this.contourEnable=ge.contourEnable),"contourColor"in ge&&(this.contourColor=ge.contourColor),"lineWidth"in ge&&(this.lineWidth=ge.lineWidth),"lightPosition"in ge&&(this.lightPosition=ge.lightPosition),this.hasAlpha=!1,"opacity"in ge&&(this.opacity=ge.opacity,this.opacity<1&&(this.hasAlpha=!0)),"opacityscale"in ge&&(this.opacityscale=ge.opacityscale,this.hasAlpha=!0),"ambient"in ge&&(this.ambientLight=ge.ambient),"diffuse"in ge&&(this.diffuseLight=ge.diffuse),"specular"in ge&&(this.specularLight=ge.specular),"roughness"in ge&&(this.roughness=ge.roughness),"fresnel"in ge&&(this.fresnel=ge.fresnel),ge.texture?(this.texture.dispose(),this.texture=h(ie,ge.texture)):ge.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=ie.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=ie.LINEAR,this.texture.setPixels(X(ge.colormap,this.opacityscale)),this.texture.generateMipmap());var Te=ge.cells,Ee=ge.positions;if(!(!Ee||!Te)){var Ae=[],ze=[],Ce=[],me=[],Re=[],ce=[],Ge=[],nt=[],ct=[],qt=[],rt=[],ot=[],Rt=[],kt=[];this.cells=Te,this.positions=Ee;var Ct=ge.vertexNormals,Yt=ge.cellNormals,xr=ge.vertexNormalsEpsilon===void 0?s:ge.vertexNormalsEpsilon,er=ge.faceNormalsEpsilon===void 0?l:ge.faceNormalsEpsilon;ge.useFacetNormals&&!Yt&&(Yt=d.faceNormals(Te,Ee,er)),!Yt&&!Ct&&(Ct=d.vertexNormals(Te,Ee,xr));var Ke=ge.vertexColors,xt=ge.cellColors,bt=ge.meshColor||[1,1,1,1],Lt=ge.vertexUVs,St=ge.vertexIntensity,Et=ge.cellUVs,dt=ge.cellIntensity,Ht=1/0,$t=-1/0;if(!Lt&&!Et)if(St)if(ge.vertexIntensityBounds)Ht=+ge.vertexIntensityBounds[0],$t=+ge.vertexIntensityBounds[1];else for(var fr=0;fr<St.length;++fr){var _r=St[fr];Ht=Math.min(Ht,_r),$t=Math.max($t,_r)}else if(dt)if(ge.cellIntensityBounds)Ht=+ge.cellIntensityBounds[0],$t=+ge.cellIntensityBounds[1];else for(var fr=0;fr<dt.length;++fr){var _r=dt[fr];Ht=Math.min(Ht,_r),$t=Math.max($t,_r)}else for(var fr=0;fr<Ee.length;++fr){var _r=Ee[fr][2];Ht=Math.min(Ht,_r),$t=Math.max($t,_r)}St?this.intensity=St:dt?this.intensity=dt:this.intensity=G(Ee),this.pickVertex=!(dt||xt);var Br=ge.pointSizes,Or=ge.pointSize||1;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var fr=0;fr<Ee.length;++fr)for(var Nr=Ee[fr],ut=0;ut<3;++ut)isNaN(Nr[ut])||!isFinite(Nr[ut])||(this.bounds[0][ut]=Math.min(this.bounds[0][ut],Nr[ut]),this.bounds[1][ut]=Math.max(this.bounds[1][ut],Nr[ut]));var Ne=0,Ye=0,Ve=0;e:for(var fr=0;fr<Te.length;++fr){var Xe=Te[fr];switch(Xe.length){case 1:for(var ht=Xe[0],Nr=Ee[ht],ut=0;ut<3;++ut)if(isNaN(Nr[ut])||!isFinite(Nr[ut]))continue e;qt.push(Nr[0],Nr[1],Nr[2]);var Le;Ke?Le=Ke[ht]:xt?Le=xt[fr]:Le=bt,this.opacityscale&&St?ze.push(Le[0],Le[1],Le[2],this.opacity*H((St[ht]-Ht)/($t-Ht),this.opacityscale)):Le.length===3?rt.push(Le[0],Le[1],Le[2],this.opacity):(rt.push(Le[0],Le[1],Le[2],Le[3]*this.opacity),Le[3]<1&&(this.hasAlpha=!0));var xe;Lt?xe=Lt[ht]:St?xe=[(St[ht]-Ht)/($t-Ht),0]:Et?xe=Et[fr]:dt?xe=[(dt[fr]-Ht)/($t-Ht),0]:xe=[(Nr[2]-Ht)/($t-Ht),0],ot.push(xe[0],xe[1]),Br?Rt.push(Br[ht]):Rt.push(Or),kt.push(fr),Ve+=1;break;case 2:for(var ut=0;ut<2;++ut)for(var ht=Xe[ut],Nr=Ee[ht],Se=0;Se<3;++Se)if(isNaN(Nr[Se])||!isFinite(Nr[Se]))continue e;for(var ut=0;ut<2;++ut){var ht=Xe[ut],Nr=Ee[ht];ce.push(Nr[0],Nr[1],Nr[2]);var Le;Ke?Le=Ke[ht]:xt?Le=xt[fr]:Le=bt,this.opacityscale&&St?ze.push(Le[0],Le[1],Le[2],this.opacity*H((St[ht]-Ht)/($t-Ht),this.opacityscale)):Le.length===3?Ge.push(Le[0],Le[1],Le[2],this.opacity):(Ge.push(Le[0],Le[1],Le[2],Le[3]*this.opacity),Le[3]<1&&(this.hasAlpha=!0));var xe;Lt?xe=Lt[ht]:St?xe=[(St[ht]-Ht)/($t-Ht),0]:Et?xe=Et[fr]:dt?xe=[(dt[fr]-Ht)/($t-Ht),0]:xe=[(Nr[2]-Ht)/($t-Ht),0],nt.push(xe[0],xe[1]),ct.push(fr)}Ye+=1;break;case 3:for(var ut=0;ut<3;++ut)for(var ht=Xe[ut],Nr=Ee[ht],Se=0;Se<3;++Se)if(isNaN(Nr[Se])||!isFinite(Nr[Se]))continue e;for(var ut=0;ut<3;++ut){var ht=Xe[2-ut],Nr=Ee[ht];Ae.push(Nr[0],Nr[1],Nr[2]);var Le;Ke?Le=Ke[ht]:xt?Le=xt[fr]:Le=bt,Le?this.opacityscale&&St?ze.push(Le[0],Le[1],Le[2],this.opacity*H((St[ht]-Ht)/($t-Ht),this.opacityscale)):Le.length===3?ze.push(Le[0],Le[1],Le[2],this.opacity):(ze.push(Le[0],Le[1],Le[2],Le[3]*this.opacity),Le[3]<1&&(this.hasAlpha=!0)):ze.push(.5,.5,.5,1);var xe;Lt?xe=Lt[ht]:St?xe=[(St[ht]-Ht)/($t-Ht),0]:Et?xe=Et[fr]:dt?xe=[(dt[fr]-Ht)/($t-Ht),0]:xe=[(Nr[2]-Ht)/($t-Ht),0],me.push(xe[0],xe[1]);var lt;Ct?lt=Ct[ht]:lt=Yt[fr],Ce.push(lt[0],lt[1],lt[2]),Re.push(fr)}Ne+=1;break;default:break}}this.pointCount=Ve,this.edgeCount=Ye,this.triangleCount=Ne,this.pointPositions.update(qt),this.pointColors.update(rt),this.pointUVs.update(ot),this.pointSizes.update(Rt),this.pointIds.update(new Uint32Array(kt)),this.edgePositions.update(ce),this.edgeColors.update(Ge),this.edgeUVs.update(nt),this.edgeIds.update(new Uint32Array(ct)),this.trianglePositions.update(Ae),this.triangleColors.update(ze),this.triangleUVs.update(me),this.triangleNormals.update(Ce),this.triangleIds.update(new Uint32Array(Re))}},V.drawTransparent=V.draw=function(ge){ge=ge||{};for(var ie=this.gl,Te=ge.model||F,Ee=ge.view||F,Ae=ge.projection||F,ze=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Ce=0;Ce<3;++Ce)ze[0][Ce]=Math.max(ze[0][Ce],this.clipBounds[0][Ce]),ze[1][Ce]=Math.min(ze[1][Ce],this.clipBounds[1][Ce]);var me={model:Te,view:Ee,projection:Ae,inverseModel:F.slice(),clipBounds:ze,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],contourColor:this.contourColor,texture:0};me.inverseModel=x(me.inverseModel,me.model),ie.disable(ie.CULL_FACE),this.texture.bind(0);var Re=new Array(16);v(Re,me.view,me.model),v(Re,me.projection,Re),x(Re,Re);for(var Ce=0;Ce<3;++Ce)me.eyePosition[Ce]=Re[12+Ce]/Re[15];for(var ce=Re[15],Ce=0;Ce<3;++Ce)ce+=this.lightPosition[Ce]*Re[4*Ce+3];for(var Ce=0;Ce<3;++Ce){for(var Ge=Re[12+Ce],nt=0;nt<3;++nt)Ge+=Re[4*nt+Ce]*this.lightPosition[nt];me.lightPosition[Ce]=Ge/ce}if(this.triangleCount>0){var ct=this.triShader;ct.bind(),ct.uniforms=me,this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var ct=this.lineShader;ct.bind(),ct.uniforms=me,this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var ct=this.pointShader;ct.bind(),ct.uniforms=me,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var ct=this.contourShader;ct.bind(),ct.uniforms=me,this.contourVAO.bind(),ie.drawArrays(ie.LINES,0,this.contourCount),this.contourVAO.unbind()}},V.drawPick=function(ge){ge=ge||{};for(var ie=this.gl,Te=ge.model||F,Ee=ge.view||F,Ae=ge.projection||F,ze=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],Ce=0;Ce<3;++Ce)ze[0][Ce]=Math.max(ze[0][Ce],this.clipBounds[0][Ce]),ze[1][Ce]=Math.min(ze[1][Ce],this.clipBounds[1][Ce]);this._model=[].slice.call(Te),this._view=[].slice.call(Ee),this._projection=[].slice.call(Ae),this._resolution=[ie.drawingBufferWidth,ie.drawingBufferHeight];var me={model:Te,view:Ee,projection:Ae,clipBounds:ze,pickId:this.pickId/255},Re=this.pickShader;if(Re.bind(),Re.uniforms=me,this.triangleCount>0&&(this.triangleVAO.bind(),ie.drawArrays(ie.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),ie.lineWidth(this.lineWidth*this.pixelRatio),ie.drawArrays(ie.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var Re=this.pointPickShader;Re.bind(),Re.uniforms=me,this.pointVAO.bind(),ie.drawArrays(ie.POINTS,0,this.pointCount),this.pointVAO.unbind()}},V.pick=function(ge){if(!ge||ge.id!==this.pickId)return null;for(var ie=ge.value[0]+256*ge.value[1]+65536*ge.value[2],Te=this.cells[ie],Ee=this.positions,Ae=new Array(Te.length),ze=0;ze<Te.length;++ze)Ae[ze]=Ee[Te[ze]];var Ce=ge.coord[0],me=ge.coord[1];if(!this.pickVertex){var Re=this.positions[Te[0]],ce=this.positions[Te[1]],Ge=this.positions[Te[2]],nt=[(Re[0]+ce[0]+Ge[0])/3,(Re[1]+ce[1]+Ge[1])/3,(Re[2]+ce[2]+Ge[2])/3];return{_cellCenter:!0,position:[Ce,me],index:ie,cell:Te,cellId:ie,intensity:this.intensity[ie],dataCoordinate:nt}}var ct=L(Ae,[Ce*this.pixelRatio,this._resolution[1]-me*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!ct)return null;for(var qt=ct[2],rt=0,ze=0;ze<Te.length;++ze)rt+=qt[ze]*this.intensity[Te[ze]];return{position:ct[1],index:Te[ct[0]],cell:Te,cellId:ie,intensity:rt,dataCoordinate:this.positions[Te[ct[0]]]}},V.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()};function N(ge){var ie=u(ge,_.vertex,_.fragment);return ie.attributes.position.location=0,ie.attributes.color.location=2,ie.attributes.uv.location=3,ie.attributes.normal.location=4,ie}function W(ge){var ie=u(ge,C.vertex,C.fragment);return ie.attributes.position.location=0,ie.attributes.color.location=2,ie.attributes.uv.location=3,ie}function re(ge){var ie=u(ge,M.vertex,M.fragment);return ie.attributes.position.location=0,ie.attributes.color.location=2,ie.attributes.uv.location=3,ie.attributes.pointSize.location=4,ie}function ae(ge){var ie=u(ge,g.vertex,g.fragment);return ie.attributes.position.location=0,ie.attributes.id.location=1,ie}function _e(ge){var ie=u(ge,P.vertex,P.fragment);return ie.attributes.position.location=0,ie.attributes.id.location=1,ie.attributes.pointSize.location=4,ie}function Me(ge){var ie=u(ge,T.vertex,T.fragment);return ie.attributes.position.location=0,ie}function ke(ge,ie){arguments.length===1&&(ie=ge,ge=ie.gl);var Te=ge.getExtension("OES_standard_derivatives")||ge.getExtension("MOZ_OES_standard_derivatives")||ge.getExtension("WEBKIT_OES_standard_derivatives");if(!Te)throw new Error("derivatives not supported");var Ee=N(ge),Ae=W(ge),ze=re(ge),Ce=ae(ge),me=_e(ge),Re=Me(ge),ce=h(ge,b(new Uint8Array([255,255,255,255]),[1,1,4]));ce.generateMipmap(),ce.minFilter=ge.LINEAR_MIPMAP_LINEAR,ce.magFilter=ge.LINEAR;var Ge=c(ge),nt=c(ge),ct=c(ge),qt=c(ge),rt=c(ge),ot=f(ge,[{buffer:Ge,type:ge.FLOAT,size:3},{buffer:rt,type:ge.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:nt,type:ge.FLOAT,size:4},{buffer:ct,type:ge.FLOAT,size:2},{buffer:qt,type:ge.FLOAT,size:3}]),Rt=c(ge),kt=c(ge),Ct=c(ge),Yt=c(ge),xr=f(ge,[{buffer:Rt,type:ge.FLOAT,size:3},{buffer:Yt,type:ge.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:kt,type:ge.FLOAT,size:4},{buffer:Ct,type:ge.FLOAT,size:2}]),er=c(ge),Ke=c(ge),xt=c(ge),bt=c(ge),Lt=c(ge),St=f(ge,[{buffer:er,type:ge.FLOAT,size:3},{buffer:Lt,type:ge.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:Ke,type:ge.FLOAT,size:4},{buffer:xt,type:ge.FLOAT,size:2},{buffer:bt,type:ge.FLOAT,size:1}]),Et=c(ge),dt=f(ge,[{buffer:Et,type:ge.FLOAT,size:3}]),Ht=new q(ge,ce,Ee,Ae,ze,Ce,me,Re,Ge,rt,nt,ct,qt,ot,Rt,Yt,kt,Ct,xr,er,Lt,Ke,xt,bt,St,Et,dt);return Ht.update(ie),Ht}i.exports=ke},4437:function(i,a,o){"use strict";i.exports=d;var s=o(3025),l=o(6296),u=o(351),c=o(8512),f=o(24),h=o(7520);function d(v,x){v=v||document.body,x=x||{};var b=[.01,1/0];"distanceLimits"in x&&(b[0]=x.distanceLimits[0],b[1]=x.distanceLimits[1]),"zoomMin"in x&&(b[0]=x.zoomMin),"zoomMax"in x&&(b[1]=x.zoomMax);var p=l({center:x.center||[0,0,0],up:x.up||[0,1,0],eye:x.eye||[0,0,10],mode:x.mode||"orbit",distanceLimits:b}),E=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],k=0,A=v.clientWidth,L=v.clientHeight,_={keyBindingMode:"rotate",enableWheel:!0,view:p,element:v,delay:x.delay||16,rotateSpeed:x.rotateSpeed||1,zoomSpeed:x.zoomSpeed||1,translateSpeed:x.translateSpeed||1,flipX:!!x.flipX,flipY:!!x.flipY,modes:p.modes,_ortho:x._ortho||x.projection&&x.projection.type==="orthographic"||!1,tick:function(){var C=s(),M=this.delay,g=C-2*M;p.idle(C-M),p.recalcMatrix(g),p.flush(C-(100+M*2));for(var P=!0,T=p.computedMatrix,F=0;F<16;++F)P=P&&E[F]===T[F],E[F]=T[F];var q=v.clientWidth===A&&v.clientHeight===L;return A=v.clientWidth,L=v.clientHeight,P?!q:(k=Math.exp(p.computedRadius[0]),!0)},lookAt:function(C,M,g){p.lookAt(p.lastT(),C,M,g)},rotate:function(C,M,g){p.rotate(p.lastT(),C,M,g)},pan:function(C,M,g){p.pan(p.lastT(),C,M,g)},translate:function(C,M,g){p.translate(p.lastT(),C,M,g)}};return Object.defineProperties(_,{matrix:{get:function(){return p.computedMatrix},set:function(C){return p.setMatrix(p.lastT(),C),p.computedMatrix},enumerable:!0},mode:{get:function(){return p.getMode()},set:function(C){var M=p.computedUp.slice(),g=p.computedEye.slice(),P=p.computedCenter.slice();if(p.setMode(C),C==="turntable"){var T=s();p._active.lookAt(T,g,P,M),p._active.lookAt(T+500,g,P,[0,0,1]),p._active.flush(T)}return p.getMode()},enumerable:!0},center:{get:function(){return p.computedCenter},set:function(C){return p.lookAt(p.lastT(),null,C),p.computedCenter},enumerable:!0},eye:{get:function(){return p.computedEye},set:function(C){return p.lookAt(p.lastT(),C),p.computedEye},enumerable:!0},up:{get:function(){return p.computedUp},set:function(C){return p.lookAt(p.lastT(),null,null,C),p.computedUp},enumerable:!0},distance:{get:function(){return k},set:function(C){return p.setDistance(p.lastT(),C),C},enumerable:!0},distanceLimits:{get:function(){return p.getDistanceLimits(b)},set:function(C){return p.setDistanceLimits(C),C},enumerable:!0}}),v.addEventListener("contextmenu",function(C){return C.preventDefault(),!1}),_._lastX=-1,_._lastY=-1,_._lastMods={shift:!1,control:!1,alt:!1,meta:!1},_.enableMouseListeners=function(){_.mouseListener=u(v,C),v.addEventListener("touchstart",function(M){var g=f(M.changedTouches[0],v);C(0,g[0],g[1],_._lastMods),C(1,g[0],g[1],_._lastMods)},h?{passive:!0}:!1),v.addEventListener("touchmove",function(M){var g=f(M.changedTouches[0],v);C(1,g[0],g[1],_._lastMods),M.preventDefault()},h?{passive:!1}:!1),v.addEventListener("touchend",function(M){C(0,_._lastX,_._lastY,_._lastMods)},h?{passive:!0}:!1);function C(M,g,P,T){var F=_.keyBindingMode;if(F!==!1){var q=F==="rotate",V=F==="pan",H=F==="zoom",X=!!T.control,G=!!T.alt,N=!!T.shift,W=!!(M&1),re=!!(M&2),ae=!!(M&4),_e=1/v.clientHeight,Me=_e*(g-_._lastX),ke=_e*(P-_._lastY),ge=_.flipX?1:-1,ie=_.flipY?1:-1,Te=Math.PI*_.rotateSpeed,Ee=s();if(_._lastX!==-1&&_._lastY!==-1&&((q&&W&&!X&&!G&&!N||W&&!X&&!G&&N)&&p.rotate(Ee,ge*Te*Me,-ie*Te*ke,0),(V&&W&&!X&&!G&&!N||re||W&&X&&!G&&!N)&&p.pan(Ee,-_.translateSpeed*Me*k,_.translateSpeed*ke*k,0),H&&W&&!X&&!G&&!N||ae||W&&!X&&G&&!N)){var Ae=-_.zoomSpeed*ke/window.innerHeight*(Ee-p.lastT())*100;p.pan(Ee,0,0,k*(Math.exp(Ae)-1))}return _._lastX=g,_._lastY=P,_._lastMods=T,!0}}_.wheelListener=c(v,function(M,g){if(_.keyBindingMode!==!1&&_.enableWheel){var P=_.flipX?1:-1,T=_.flipY?1:-1,F=s();if(Math.abs(M)>Math.abs(g))p.rotate(F,0,0,-M*P*Math.PI*_.rotateSpeed/window.innerWidth);else if(!_._ortho){var q=-_.zoomSpeed*T*g/window.innerHeight*(F-p.lastT())/20;p.pan(F,0,0,k*(Math.exp(q)-1))}}},!0)},_.enableMouseListeners(),_}},799:function(i,a,o){var s=o(3236),l=o(9405),u=s([`precision mediump float;
+#define GLSLIFY 1
+attribute vec2 position;
+varying vec2 uv;
+void main() {
+ uv = position;
+ gl_Position = vec4(position, 0, 1);
+}`]),c=s([`precision mediump float;
+#define GLSLIFY 1
+
+uniform sampler2D accumBuffer;
+varying vec2 uv;
+
+void main() {
+ vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));
+ gl_FragColor = min(vec4(1,1,1,1), accum);
+}`]);i.exports=function(f){return l(f,u,c,null,[{name:"position",type:"vec2"}])}},4100:function(i,a,o){"use strict";var s=o(4437),l=o(3837),u=o(5445),c=o(4449),f=o(3589),h=o(2260),d=o(7169),v=o(351),x=o(4772),b=o(4040),p=o(799),E=o(9216)({tablet:!0,featureDetect:!0});i.exports={createScene:C,createCamera:s};function k(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function A(g,P){var T=null;try{T=g.getContext("webgl",P),T||(T=g.getContext("experimental-webgl",P))}catch(F){return null}return T}function L(g){var P=Math.round(Math.log(Math.abs(g))/Math.log(10));if(P<0){var T=Math.round(Math.pow(10,-P));return Math.ceil(g*T)/T}else if(P>0){var T=Math.round(Math.pow(10,P));return Math.ceil(g/T)*T}return Math.ceil(g)}function _(g){return typeof g=="boolean"?g:!0}function C(g){g=g||{},g.camera=g.camera||{};var P=g.canvas;if(!P)if(P=document.createElement("canvas"),g.container){var T=g.container;T.appendChild(P)}else document.body.appendChild(P);var F=g.gl;if(F||(g.glOptions&&(E=!!g.glOptions.preserveDrawingBuffer),F=A(P,g.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:E})),!F)throw new Error("webgl not supported");var q=g.bounds||[[-10,-10,-10],[10,10,10]],V=new k,H=h(F,F.drawingBufferWidth,F.drawingBufferHeight,{preferFloat:!E}),X=p(F),G=g.cameraObject&&g.cameraObject._ortho===!0||g.camera.projection&&g.camera.projection.type==="orthographic"||!1,N={eye:g.camera.eye||[2,0,0],center:g.camera.center||[0,0,0],up:g.camera.up||[0,1,0],zoomMin:g.camera.zoomMax||.1,zoomMax:g.camera.zoomMin||100,mode:g.camera.mode||"turntable",_ortho:G},W=g.axes||{},re=l(F,W);re.enable=!W.disable;var ae=g.spikes||{},_e=c(F,ae),Me=[],ke=[],ge=[],ie=[],Te=!0,Ce=!0,Ee=new Array(16),Ae=new Array(16),ze={view:null,projection:Ee,model:Ae,_ortho:!1},Ce=!0,me=[F.drawingBufferWidth,F.drawingBufferHeight],Re=g.cameraObject||s(P,N),ce={gl:F,contextLost:!1,pixelRatio:g.pixelRatio||1,canvas:P,selection:V,camera:Re,axes:re,axesPixels:null,spikes:_e,bounds:q,objects:Me,shape:me,aspect:g.aspectRatio||[1,1,1],pickRadius:g.pickRadius||10,zNear:g.zNear||.01,zFar:g.zFar||1e3,fovy:g.fovy||Math.PI/4,clearColor:g.clearColor||[0,0,0,0],autoResize:_(g.autoResize),autoBounds:_(g.autoBounds),autoScale:!!g.autoScale,autoCenter:_(g.autoCenter),clipToBounds:_(g.clipToBounds),snapToData:!!g.snapToData,onselect:g.onselect||null,onrender:g.onrender||null,onclick:g.onclick||null,cameraParams:ze,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(Yt){this.aspect[0]=Yt.x,this.aspect[1]=Yt.y,this.aspect[2]=Yt.z,Ce=!0},setBounds:function(Yt,xr){this.bounds[0][Yt]=xr.min,this.bounds[1][Yt]=xr.max},setClearColor:function(Yt){this.clearColor=Yt},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)}},Ge=[F.drawingBufferWidth/ce.pixelRatio|0,F.drawingBufferHeight/ce.pixelRatio|0];function nt(){if(!ce._stopped&&ce.autoResize){var Yt=P.parentNode,xr=1,er=1;Yt&&Yt!==document.body?(xr=Yt.clientWidth,er=Yt.clientHeight):(xr=window.innerWidth,er=window.innerHeight);var Ke=Math.ceil(xr*ce.pixelRatio)|0,xt=Math.ceil(er*ce.pixelRatio)|0;if(Ke!==P.width||xt!==P.height){P.width=Ke,P.height=xt;var bt=P.style;bt.position=bt.position||"absolute",bt.left="0px",bt.top="0px",bt.width=xr+"px",bt.height=er+"px",Te=!0}}}ce.autoResize&&nt(),window.addEventListener("resize",nt);function ct(){for(var Yt=Me.length,xr=ie.length,er=0;er<xr;++er)ge[er]=0;e:for(var er=0;er<Yt;++er){var Ke=Me[er],xt=Ke.pickSlots;if(!xt){ke[er]=-1;continue}for(var bt=0;bt<xr;++bt)if(ge[bt]+xt<255){ke[er]=bt,Ke.setPickBase(ge[bt]+1),ge[bt]+=xt;continue e}var Lt=f(F,me);ke[er]=xr,ie.push(Lt),ge.push(xt),Ke.setPickBase(1),xr+=1}for(;xr>0&&ge[xr-1]===0;)ge.pop(),ie.pop().dispose()}ce.update=function(Yt){ce._stopped||(Yt=Yt||{},Te=!0,Ce=!0)},ce.add=function(Yt){ce._stopped||(Yt.axes=re,Me.push(Yt),ke.push(-1),Te=!0,Ce=!0,ct())},ce.remove=function(Yt){if(!ce._stopped){var xr=Me.indexOf(Yt);xr<0||(Me.splice(xr,1),ke.pop(),Te=!0,Ce=!0,ct())}},ce.dispose=function(){if(!ce._stopped&&(ce._stopped=!0,window.removeEventListener("resize",nt),P.removeEventListener("webglcontextlost",qt),ce.mouseListener.enabled=!1,!ce.contextLost)){re.dispose(),_e.dispose();for(var Yt=0;Yt<Me.length;++Yt)Me[Yt].dispose();H.dispose();for(var Yt=0;Yt<ie.length;++Yt)ie[Yt].dispose();X.dispose(),F=null,re=null,_e=null,Me=[]}},ce._mouseRotating=!1,ce._prevButtons=0,ce.enableMouseListeners=function(){ce.mouseListener=v(P,function(Yt,xr,er){if(!ce._stopped){var Ke=ie.length,xt=Me.length,bt=V.object;V.distance=1/0,V.mouse[0]=xr,V.mouse[1]=er,V.object=null,V.screen=null,V.dataCoordinate=V.dataPosition=null;var Lt=!1;if(Yt&&ce._prevButtons)ce._mouseRotating=!0;else{ce._mouseRotating&&(Ce=!0),ce._mouseRotating=!1;for(var St=0;St<Ke;++St){var Et=ie[St].query(xr,Ge[1]-er-1,ce.pickRadius);if(Et){if(Et.distance>V.distance)continue;for(var dt=0;dt<xt;++dt){var Ht=Me[dt];if(ke[dt]===St){var $t=Ht.pick(Et);$t&&(V.buttons=Yt,V.screen=Et.coord,V.distance=Et.distance,V.object=Ht,V.index=$t.distance,V.dataPosition=$t.position,V.dataCoordinate=$t.dataCoordinate,V.data=$t,Lt=!0)}}}}}bt&&bt!==V.object&&(bt.highlight&&bt.highlight(null),Te=!0),V.object&&(V.object.highlight&&V.object.highlight(V.data),Te=!0),Lt=Lt||V.object!==bt,Lt&&ce.onselect&&ce.onselect(V),Yt&1&&!(ce._prevButtons&1)&&ce.onclick&&ce.onclick(V),ce._prevButtons=Yt}})};function qt(){if(ce.contextLost)return!0;F.isContextLost()&&(ce.contextLost=!0,ce.mouseListener.enabled=!1,ce.selection.object=null,ce.oncontextloss&&ce.oncontextloss())}P.addEventListener("webglcontextlost",qt);function rt(){if(!qt()){F.colorMask(!0,!0,!0,!0),F.depthMask(!0),F.disable(F.BLEND),F.enable(F.DEPTH_TEST),F.depthFunc(F.LEQUAL);for(var Yt=Me.length,xr=ie.length,er=0;er<xr;++er){var Ke=ie[er];Ke.shape=Ge,Ke.begin();for(var xt=0;xt<Yt;++xt)if(ke[xt]===er){var bt=Me[xt];bt.drawPick&&(bt.pixelRatio=1,bt.drawPick(ze))}Ke.end()}}}var ot=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],Rt=[ot[0].slice(),ot[1].slice()];function kt(){if(!qt()){nt();var Yt=ce.camera.tick();ze.view=ce.camera.matrix,Te=Te||Yt,Ce=Ce||Yt,re.pixelRatio=ce.pixelRatio,_e.pixelRatio=ce.pixelRatio;var xr=Me.length,er=ot[0],Ke=ot[1];er[0]=er[1]=er[2]=1/0,Ke[0]=Ke[1]=Ke[2]=-1/0;for(var xt=0;xt<xr;++xt){var bt=Me[xt];bt.pixelRatio=ce.pixelRatio,bt.axes=ce.axes,Te=Te||!!bt.dirty,Ce=Ce||!!bt.dirty;var Lt=bt.bounds;if(Lt)for(var St=Lt[0],Et=Lt[1],dt=0;dt<3;++dt)er[dt]=Math.min(er[dt],St[dt]),Ke[dt]=Math.max(Ke[dt],Et[dt])}var Ht=ce.bounds;if(ce.autoBounds)for(var dt=0;dt<3;++dt){if(Ke[dt]<er[dt])er[dt]=-1,Ke[dt]=1;else{er[dt]===Ke[dt]&&(er[dt]-=1,Ke[dt]+=1);var $t=.05*(Ke[dt]-er[dt]);er[dt]=er[dt]-$t,Ke[dt]=Ke[dt]+$t}Ht[0][dt]=er[dt],Ht[1][dt]=Ke[dt]}for(var fr=!1,dt=0;dt<3;++dt)fr=fr||Rt[0][dt]!==Ht[0][dt]||Rt[1][dt]!==Ht[1][dt],Rt[0][dt]=Ht[0][dt],Rt[1][dt]=Ht[1][dt];if(Ce=Ce||fr,Te=Te||fr,!!Te){if(fr){for(var _r=[0,0,0],xt=0;xt<3;++xt)_r[xt]=L((Ht[1][xt]-Ht[0][xt])/10);re.autoTicks?re.update({bounds:Ht,tickSpacing:_r}):re.update({bounds:Ht})}var Br=F.drawingBufferWidth,Or=F.drawingBufferHeight;me[0]=Br,me[1]=Or,Ge[0]=Math.max(Br/ce.pixelRatio,1)|0,Ge[1]=Math.max(Or/ce.pixelRatio,1)|0,M(ce,G);for(var xt=0;xt<xr;++xt){var bt=Me[xt];bt.axesBounds=Ht,ce.clipToBounds&&(bt.clipBounds=Ht)}V.object&&(ce.snapToData?_e.position=V.dataCoordinate:_e.position=V.dataPosition,_e.bounds=Ht),Ce&&(Ce=!1,rt()),ce.axesPixels=u(ce.axes,ze,Br,Or),ce.onrender&&ce.onrender(),F.bindFramebuffer(F.FRAMEBUFFER,null),F.viewport(0,0,Br,Or),ce.clearRGBA(),F.depthMask(!0),F.colorMask(!0,!0,!0,!0),F.enable(F.DEPTH_TEST),F.depthFunc(F.LEQUAL),F.disable(F.BLEND),F.disable(F.CULL_FACE);var Nr=!1;re.enable&&(Nr=Nr||re.isTransparent(),re.draw(ze)),_e.axes=re,V.object&&_e.draw(ze),F.disable(F.CULL_FACE);for(var xt=0;xt<xr;++xt){var bt=Me[xt];bt.axes=re,bt.pixelRatio=ce.pixelRatio,bt.isOpaque&&bt.isOpaque()&&bt.draw(ze),bt.isTransparent&&bt.isTransparent()&&(Nr=!0)}if(Nr){H.shape=me,H.bind(),F.clear(F.DEPTH_BUFFER_BIT),F.colorMask(!1,!1,!1,!1),F.depthMask(!0),F.depthFunc(F.LESS),re.enable&&re.isTransparent()&&re.drawTransparent(ze);for(var xt=0;xt<xr;++xt){var bt=Me[xt];bt.isOpaque&&bt.isOpaque()&&bt.draw(ze)}F.enable(F.BLEND),F.blendEquation(F.FUNC_ADD),F.blendFunc(F.ONE,F.ONE_MINUS_SRC_ALPHA),F.colorMask(!0,!0,!0,!0),F.depthMask(!1),F.clearColor(0,0,0,0),F.clear(F.COLOR_BUFFER_BIT),re.isTransparent()&&re.drawTransparent(ze);for(var xt=0;xt<xr;++xt){var bt=Me[xt];bt.isTransparent&&bt.isTransparent()&&bt.drawTransparent(ze)}F.bindFramebuffer(F.FRAMEBUFFER,null),F.blendFunc(F.ONE,F.ONE_MINUS_SRC_ALPHA),F.disable(F.DEPTH_TEST),X.bind(),H.color[0].bind(0),X.uniforms.accumBuffer=0,d(F),F.disable(F.BLEND)}Te=!1;for(var xt=0;xt<xr;++xt)Me[xt].dirty=!1}}}function Ct(){ce._stopped||ce.contextLost||(kt(),requestAnimationFrame(Ct))}return ce.enableMouseListeners(),Ct(),ce.redraw=function(){ce._stopped||(Te=!0,kt())},ce}function M(g,P){var T=g.bounds,F=g.cameraParams,q=F.projection,V=F.model,H=g.gl.drawingBufferWidth,X=g.gl.drawingBufferHeight,G=g.zNear,N=g.zFar,W=g.fovy,re=H/X;P?(b(q,-re,re,-1,1,G,N),F._ortho=!0):(x(q,W,re,G,N),F._ortho=!1);for(var ae=0;ae<16;++ae)V[ae]=0;V[15]=1;for(var _e=0,ae=0;ae<3;++ae)_e=Math.max(_e,T[1][ae]-T[0][ae]);for(var ae=0;ae<3;++ae)g.autoScale?V[5*ae]=g.aspect[ae]/(T[1][ae]-T[0][ae]):V[5*ae]=1/_e,g.autoCenter&&(V[12+ae]=-V[5*ae]*.5*(T[0][ae]+T[1][ae]))}},783:function(i){i.exports=a;function a(o,s,l,u){var c=s[0],f=s[1],h=s[2],d=s[3],v=l[0],x=l[1],b=l[2],p=l[3],E,k,A,L,_;return k=c*v+f*x+h*b+d*p,k<0&&(k=-k,v=-v,x=-x,b=-b,p=-p),1-k>1e-6?(E=Math.acos(k),A=Math.sin(E),L=Math.sin((1-u)*E)/A,_=Math.sin(u*E)/A):(L=1-u,_=u),o[0]=L*c+_*v,o[1]=L*f+_*x,o[2]=L*h+_*b,o[3]=L*d+_*p,o}},5964:function(i){"use strict";i.exports=function(a){return!a&&a!==0?"":a.toString()}},9366:function(i,a,o){"use strict";var s=o(4359);i.exports=u;var l={};function u(c,f,h){var d=[f.style,f.weight,f.variant,f.family].join("_"),v=l[d];if(v||(v=l[d]={}),c in v)return v[c];var x={textAlign:"center",textBaseline:"middle",lineHeight:1,font:f.family,fontStyle:f.style,fontWeight:f.weight,fontVariant:f.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}};x.triangles=!0;var b=s(c,x);x.triangles=!1;var p=s(c,x),E,k;if(h&&h!==1){for(E=0;E<b.positions.length;++E)for(k=0;k<b.positions[E].length;++k)b.positions[E][k]/=h;for(E=0;E<p.positions.length;++E)for(k=0;k<p.positions[E].length;++k)p.positions[E][k]/=h}var A=[[1/0,1/0],[-1/0,-1/0]],L=p.positions.length;for(E=0;E<L;++E){var _=p.positions[E];for(k=0;k<2;++k)A[0][k]=Math.min(A[0][k],_[k]),A[1][k]=Math.max(A[1][k],_[k])}return v[c]=[b,p,A]}},1283:function(i,a,o){var s=o(9405),l=o(3236),u=l([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform vec4 highlightId;
+uniform float highlightScale;
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float scale = 1.0;
+ if(distance(highlightId, id) < 0.0001) {
+ scale = highlightScale;
+ }
+
+ vec4 worldPosition = model * vec4(position, 1);
+ vec4 viewPosition = view * worldPosition;
+ viewPosition = viewPosition / viewPosition.w;
+ vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));
+
+ gl_Position = clipPosition;
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = position;
+ }
+}`]),c=l([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform vec2 screenSize;
+uniform vec3 clipBounds[2];
+uniform float highlightScale, pixelRatio;
+uniform vec4 highlightId;
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float scale = pixelRatio;
+ if(distance(highlightId.bgr, id.bgr) < 0.001) {
+ scale *= highlightScale;
+ }
+
+ vec4 worldPosition = model * vec4(position, 1.0);
+ vec4 viewPosition = view * worldPosition;
+ vec4 clipPosition = projection * viewPosition;
+ clipPosition /= clipPosition.w;
+
+ gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = position;
+ }
+}`]),f=l([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform float highlightScale;
+uniform vec4 highlightId;
+uniform vec3 axes[2];
+uniform mat4 model, view, projection;
+uniform vec2 screenSize;
+uniform vec3 clipBounds[2];
+uniform float scale, pixelRatio;
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float lscale = pixelRatio * scale;
+ if(distance(highlightId, id) < 0.0001) {
+ lscale *= highlightScale;
+ }
+
+ vec4 clipCenter = projection * (view * (model * vec4(position, 1)));
+ vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;
+ vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1)));
+
+ gl_Position = clipPosition;
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = dataPosition;
+ }
+}
+`]),h=l([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 fragClipBounds[2];
+uniform float opacity;
+
+varying vec4 interpColor;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (
+ outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||
+ interpColor.a * opacity == 0.
+ ) discard;
+ gl_FragColor = interpColor * opacity;
+}
+`]),d=l([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 fragClipBounds[2];
+uniform float pickGroup;
+
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;
+
+ gl_FragColor = vec4(pickGroup, pickId.bgr);
+}`]),v=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],x={vertex:u,fragment:h,attributes:v},b={vertex:c,fragment:h,attributes:v},p={vertex:f,fragment:h,attributes:v},E={vertex:u,fragment:d,attributes:v},k={vertex:c,fragment:d,attributes:v},A={vertex:f,fragment:d,attributes:v};function L(_,C){var M=s(_,C),g=M.attributes;return g.position.location=0,g.color.location=1,g.glyph.location=2,g.id.location=3,M}a.createPerspective=function(_){return L(_,x)},a.createOrtho=function(_){return L(_,b)},a.createProject=function(_){return L(_,p)},a.createPickPerspective=function(_){return L(_,E)},a.createPickOrtho=function(_){return L(_,k)},a.createPickProject=function(_){return L(_,A)}},8418:function(i,a,o){"use strict";var s=o(5219),l=o(2762),u=o(8116),c=o(1888),f=o(6760),h=o(1283),d=o(9366),v=o(5964),x=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],b=ArrayBuffer,p=DataView;function E(Ae){return b.isView(Ae)&&!(Ae instanceof p)}function k(Ae){return Array.isArray(Ae)||E(Ae)}i.exports=Ee;function A(Ae,ze){var Ce=Ae[0],me=Ae[1],Re=Ae[2],ce=Ae[3];return Ae[0]=ze[0]*Ce+ze[4]*me+ze[8]*Re+ze[12]*ce,Ae[1]=ze[1]*Ce+ze[5]*me+ze[9]*Re+ze[13]*ce,Ae[2]=ze[2]*Ce+ze[6]*me+ze[10]*Re+ze[14]*ce,Ae[3]=ze[3]*Ce+ze[7]*me+ze[11]*Re+ze[15]*ce,Ae}function L(Ae,ze,Ce,me){return A(me,me,Ce),A(me,me,ze),A(me,me,Ae)}function _(Ae,ze){this.index=Ae,this.dataCoordinate=this.position=ze}function C(Ae){return Ae===!0||Ae>1?1:Ae}function M(Ae,ze,Ce,me,Re,ce,Ge,nt,ct,qt,rt,ot){this.gl=Ae,this.pixelRatio=1,this.shader=ze,this.orthoShader=Ce,this.projectShader=me,this.pointBuffer=Re,this.colorBuffer=ce,this.glyphBuffer=Ge,this.idBuffer=nt,this.vao=ct,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=qt,this.pickOrthoShader=rt,this.pickProjectShader=ot,this.points=[],this._selectResult=new _(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var g=M.prototype;g.pickSlots=1,g.setPickBase=function(Ae){this.pickId=Ae},g.isTransparent=function(){if(this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&this.projectHasAlpha)return!0;return!1},g.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Ae=0;Ae<3;++Ae)if(this.axesProject[Ae]&&!this.projectHasAlpha)return!0;return!1};var P=[0,0],T=[0,0,0],F=[0,0,0],q=[0,0,0,1],V=[0,0,0,1],H=x.slice(),X=[0,0,0],G=[[0,0,0],[0,0,0]];function N(Ae){return Ae[0]=Ae[1]=Ae[2]=0,Ae}function W(Ae,ze){return Ae[0]=ze[0],Ae[1]=ze[1],Ae[2]=ze[2],Ae[3]=1,Ae}function re(Ae,ze,Ce,me){return Ae[0]=ze[0],Ae[1]=ze[1],Ae[2]=ze[2],Ae[Ce]=me,Ae}function ae(Ae){for(var ze=G,Ce=0;Ce<2;++Ce)for(var me=0;me<3;++me)ze[Ce][me]=Math.max(Math.min(Ae[Ce][me],1e8),-1e8);return ze}function _e(Ae,ze,Ce,me){var Re=ze.axesProject,ce=ze.gl,Ge=Ae.uniforms,nt=Ce.model||x,ct=Ce.view||x,qt=Ce.projection||x,rt=ze.axesBounds,ot=ae(ze.clipBounds),Rt;ze.axes&&ze.axes.lastCubeProps?Rt=ze.axes.lastCubeProps.axis:Rt=[1,1,1],P[0]=2/ce.drawingBufferWidth,P[1]=2/ce.drawingBufferHeight,Ae.bind(),Ge.view=ct,Ge.projection=qt,Ge.screenSize=P,Ge.highlightId=ze.highlightId,Ge.highlightScale=ze.highlightScale,Ge.clipBounds=ot,Ge.pickGroup=ze.pickId/255,Ge.pixelRatio=me;for(var kt=0;kt<3;++kt)if(Re[kt]){Ge.scale=ze.projectScale[kt],Ge.opacity=ze.projectOpacity[kt];for(var Ct=H,Yt=0;Yt<16;++Yt)Ct[Yt]=0;for(var Yt=0;Yt<4;++Yt)Ct[5*Yt]=1;Ct[5*kt]=0,Rt[kt]<0?Ct[12+kt]=rt[0][kt]:Ct[12+kt]=rt[1][kt],f(Ct,nt,Ct),Ge.model=Ct;var xr=(kt+1)%3,er=(kt+2)%3,Ke=N(T),xt=N(F);Ke[xr]=1,xt[er]=1;var bt=L(qt,ct,nt,W(q,Ke)),Lt=L(qt,ct,nt,W(V,xt));if(Math.abs(bt[1])>Math.abs(Lt[1])){var St=bt;bt=Lt,Lt=St,St=Ke,Ke=xt,xt=St;var Et=xr;xr=er,er=Et}bt[0]<0&&(Ke[xr]=-1),Lt[1]>0&&(xt[er]=-1);for(var dt=0,Ht=0,Yt=0;Yt<4;++Yt)dt+=Math.pow(nt[4*xr+Yt],2),Ht+=Math.pow(nt[4*er+Yt],2);Ke[xr]/=Math.sqrt(dt),xt[er]/=Math.sqrt(Ht),Ge.axes[0]=Ke,Ge.axes[1]=xt,Ge.fragClipBounds[0]=re(X,ot[0],kt,-1e8),Ge.fragClipBounds[1]=re(X,ot[1],kt,1e8),ze.vao.bind(),ze.vao.draw(ce.TRIANGLES,ze.vertexCount),ze.lineWidth>0&&(ce.lineWidth(ze.lineWidth*me),ze.vao.draw(ce.LINES,ze.lineVertexCount,ze.vertexCount)),ze.vao.unbind()}}var Me=[-1e8,-1e8,-1e8],ke=[1e8,1e8,1e8],ge=[Me,ke];function ie(Ae,ze,Ce,me,Re,ce,Ge){var nt=Ce.gl;if((ce===Ce.projectHasAlpha||Ge)&&_e(ze,Ce,me,Re),ce===Ce.hasAlpha||Ge){Ae.bind();var ct=Ae.uniforms;ct.model=me.model||x,ct.view=me.view||x,ct.projection=me.projection||x,P[0]=2/nt.drawingBufferWidth,P[1]=2/nt.drawingBufferHeight,ct.screenSize=P,ct.highlightId=Ce.highlightId,ct.highlightScale=Ce.highlightScale,ct.fragClipBounds=ge,ct.clipBounds=Ce.axes.bounds,ct.opacity=Ce.opacity,ct.pickGroup=Ce.pickId/255,ct.pixelRatio=Re,Ce.vao.bind(),Ce.vao.draw(nt.TRIANGLES,Ce.vertexCount),Ce.lineWidth>0&&(nt.lineWidth(Ce.lineWidth*Re),Ce.vao.draw(nt.LINES,Ce.lineVertexCount,Ce.vertexCount)),Ce.vao.unbind()}}g.draw=function(Ae){var ze=this.useOrtho?this.orthoShader:this.shader;ie(ze,this.projectShader,this,Ae,this.pixelRatio,!1,!1)},g.drawTransparent=function(Ae){var ze=this.useOrtho?this.orthoShader:this.shader;ie(ze,this.projectShader,this,Ae,this.pixelRatio,!0,!1)},g.drawPick=function(Ae){var ze=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;ie(ze,this.pickProjectShader,this,Ae,1,!0,!0)},g.pick=function(Ae){if(!Ae||Ae.id!==this.pickId)return null;var ze=Ae.value[2]+(Ae.value[1]<<8)+(Ae.value[0]<<16);if(ze>=this.pointCount||ze<0)return null;var Ce=this.points[ze],me=this._selectResult;me.index=ze;for(var Re=0;Re<3;++Re)me.position[Re]=me.dataCoordinate[Re]=Ce[Re];return me},g.highlight=function(Ae){if(!Ae)this.highlightId=[1,1,1,1];else{var ze=Ae.index,Ce=ze&255,me=ze>>8&255,Re=ze>>16&255;this.highlightId=[Ce/255,me/255,Re/255,0]}};function Te(Ae,ze,Ce,me){var Re;k(Ae)?ze<Ae.length?Re=Ae[ze]:Re=void 0:Re=Ae,Re=v(Re);var ce=!0;s(Re)&&(Re="\u25BC",ce=!1),Ce||(Ce={});var Ge=Ce.family;k(Ge)&&(Ge=Ge[ze]),Ge||(Ge="normal");var nt=Ce.weight;k(nt)&&(nt=nt[ze]),nt||(nt="normal");var ct=Ce.style;k(ct)&&(ct=ct[ze]),ct||(ct="normal");var qt=Ce.variant;k(qt)&&(qt=qt[ze]),qt||(qt="normal");var rt=d(Re,{family:Ge,weight:nt,style:ct,variant:qt},me),rt=d(Re,Ce,me);return{mesh:rt[0],lines:rt[1],bounds:rt[2],visible:ce}}g.update=function(Ae){if(Ae=Ae||{},"perspective"in Ae&&(this.useOrtho=!Ae.perspective),"orthographic"in Ae&&(this.useOrtho=!!Ae.orthographic),"lineWidth"in Ae&&(this.lineWidth=Ae.lineWidth),"project"in Ae)if(k(Ae.project))this.axesProject=Ae.project;else{var ze=!!Ae.project;this.axesProject=[ze,ze,ze]}if("projectScale"in Ae)if(k(Ae.projectScale))this.projectScale=Ae.projectScale.slice();else{var Ce=+Ae.projectScale;this.projectScale=[Ce,Ce,Ce]}if(this.projectHasAlpha=!1,"projectOpacity"in Ae){if(k(Ae.projectOpacity))this.projectOpacity=Ae.projectOpacity.slice();else{var Ce=+Ae.projectOpacity;this.projectOpacity=[Ce,Ce,Ce]}for(var me=0;me<3;++me)this.projectOpacity[me]=C(this.projectOpacity[me]),this.projectOpacity[me]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in Ae&&(this.opacity=C(Ae.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var Re=Ae.position,ce={family:Ae.font||"normal",style:Ae.fontStyle||"normal",weight:Ae.fontWeight||"normal",variant:Ae.fontVariant||"normal"},Ge=Ae.alignment||[0,0],nt,ct;if(Ge.length===2)nt=Ge[0],ct=Ge[1];else{nt=[],ct=[];for(var me=0;me<Ge.length;++me)nt[me]=Ge[me][0],ct[me]=Ge[me][1]}var qt=[1/0,1/0,1/0],rt=[-1/0,-1/0,-1/0],ot=Ae.glyph,Rt=Ae.color,kt=Ae.size,Ct=Ae.angle,Yt=Ae.lineColor,xr=-1,er=0,Ke=0,xt=0;if(Re.length){xt=Re.length;e:for(var me=0;me<xt;++me){for(var bt=Re[me],Lt=0;Lt<3;++Lt)if(isNaN(bt[Lt])||!isFinite(bt[Lt]))continue e;var St=Te(ot,me,ce,this.pixelRatio),Et=St.mesh,dt=St.lines,Ht=St.bounds;er+=Et.cells.length*3,Ke+=dt.edges.length*2}}var $t=er+Ke,fr=c.mallocFloat(3*$t),_r=c.mallocFloat(4*$t),Br=c.mallocFloat(2*$t),Or=c.mallocUint32($t);if($t>0){var Nr=0,ut=er,Ne=[0,0,0,1],Ye=[0,0,0,1],Ve=k(Rt)&&k(Rt[0]),Xe=k(Yt)&&k(Yt[0]);e:for(var me=0;me<xt;++me){xr+=1;for(var bt=Re[me],Lt=0;Lt<3;++Lt){if(isNaN(bt[Lt])||!isFinite(bt[Lt]))continue e;rt[Lt]=Math.max(rt[Lt],bt[Lt]),qt[Lt]=Math.min(qt[Lt],bt[Lt])}var St=Te(ot,me,ce,this.pixelRatio),Et=St.mesh,dt=St.lines,Ht=St.bounds,ht=St.visible;if(!ht)Ne=[1,1,1,0];else if(k(Rt)){var Le;if(Ve?me<Rt.length?Le=Rt[me]:Le=[0,0,0,0]:Le=Rt,Le.length===3){for(var Lt=0;Lt<3;++Lt)Ne[Lt]=Le[Lt];Ne[3]=1}else if(Le.length===4){for(var Lt=0;Lt<4;++Lt)Ne[Lt]=Le[Lt];!this.hasAlpha&&Le[3]<1&&(this.hasAlpha=!0)}}else Ne[0]=Ne[1]=Ne[2]=0,Ne[3]=1;if(!ht)Ye=[1,1,1,0];else if(k(Yt)){var Le;if(Xe?me<Yt.length?Le=Yt[me]:Le=[0,0,0,0]:Le=Yt,Le.length===3){for(var Lt=0;Lt<3;++Lt)Ye[Lt]=Le[Lt];Ye[Lt]=1}else if(Le.length===4){for(var Lt=0;Lt<4;++Lt)Ye[Lt]=Le[Lt];!this.hasAlpha&&Le[3]<1&&(this.hasAlpha=!0)}}else Ye[0]=Ye[1]=Ye[2]=0,Ye[3]=1;var xe=.5;ht?k(kt)?me<kt.length?xe=+kt[me]:xe=12:kt?xe=+kt:this.useOrtho&&(xe=12):xe=0;var Se=0;k(Ct)?me<Ct.length?Se=+Ct[me]:Se=0:Ct&&(Se=+Ct);for(var lt=Math.cos(Se),Gt=Math.sin(Se),bt=Re[me],Lt=0;Lt<3;++Lt)rt[Lt]=Math.max(rt[Lt],bt[Lt]),qt[Lt]=Math.min(qt[Lt],bt[Lt]);var Vt=nt,ar=ct,Vt=0;k(nt)?me<nt.length?Vt=nt[me]:Vt=0:nt&&(Vt=nt);var ar=0;k(ct)?me<ct.length?ar=ct[me]:ar=0:ct&&(ar=ct),Vt*=Vt>0?1-Ht[0][0]:Vt<0?1+Ht[1][0]:1,ar*=ar>0?1-Ht[0][1]:ar<0?1+Ht[1][1]:1;for(var Qr=[Vt,ar],nn=Et.cells||[],Wi=Et.positions||[],Lt=0;Lt<nn.length;++Lt)for(var ai=nn[Lt],jr=0;jr<3;++jr){for(var ri=0;ri<3;++ri)fr[3*Nr+ri]=bt[ri];for(var ri=0;ri<4;++ri)_r[4*Nr+ri]=Ne[ri];Or[Nr]=xr;var bi=Wi[ai[jr]];Br[2*Nr]=xe*(lt*bi[0]-Gt*bi[1]+Qr[0]),Br[2*Nr+1]=xe*(Gt*bi[0]+lt*bi[1]+Qr[1]),Nr+=1}for(var nn=dt.edges,Wi=dt.positions,Lt=0;Lt<nn.length;++Lt)for(var ai=nn[Lt],jr=0;jr<2;++jr){for(var ri=0;ri<3;++ri)fr[3*ut+ri]=bt[ri];for(var ri=0;ri<4;++ri)_r[4*ut+ri]=Ye[ri];Or[ut]=xr;var bi=Wi[ai[jr]];Br[2*ut]=xe*(lt*bi[0]-Gt*bi[1]+Qr[0]),Br[2*ut+1]=xe*(Gt*bi[0]+lt*bi[1]+Qr[1]),ut+=1}}}this.bounds=[qt,rt],this.points=Re,this.pointCount=Re.length,this.vertexCount=er,this.lineVertexCount=Ke,this.pointBuffer.update(fr),this.colorBuffer.update(_r),this.glyphBuffer.update(Br),this.idBuffer.update(Or),c.free(fr),c.free(_r),c.free(Br),c.free(Or)},g.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()};function Ee(Ae){var ze=Ae.gl,Ce=h.createPerspective(ze),me=h.createOrtho(ze),Re=h.createProject(ze),ce=h.createPickPerspective(ze),Ge=h.createPickOrtho(ze),nt=h.createPickProject(ze),ct=l(ze),qt=l(ze),rt=l(ze),ot=l(ze),Rt=u(ze,[{buffer:ct,size:3,type:ze.FLOAT},{buffer:qt,size:4,type:ze.FLOAT},{buffer:rt,size:2,type:ze.FLOAT},{buffer:ot,size:4,type:ze.UNSIGNED_BYTE,normalized:!0}]),kt=new M(ze,Ce,me,Re,ct,qt,rt,ot,Rt,ce,Ge,nt);return kt.update(Ae),kt}},3589:function(i,a,o){"use strict";i.exports=x;var s=o(2260),l=o(1888),u=o(9618),c=o(8828).nextPow2,f=function(b,p,E){for(var k=1e8,A=-1,L=-1,_=b.shape[0],C=b.shape[1],M=0;M<_;M++)for(var g=0;g<C;g++){var P=b.get(M,g,0),T=b.get(M,g,1),F=b.get(M,g,2),q=b.get(M,g,3);if(P<255||T<255||F<255||q<255){var V=p-M,H=E-g,X=V*V+H*H;X<k&&(k=X,A=M,L=g)}}return[A,L,k]};function h(b,p,E,k,A){this.coord=[b,p],this.id=E,this.value=k,this.distance=A}function d(b,p,E){this.gl=b,this.fbo=p,this.buffer=E,this._readTimeout=null;var k=this;this._readCallback=function(){k.gl&&(p.bind(),b.readPixels(0,0,p.shape[0],p.shape[1],b.RGBA,b.UNSIGNED_BYTE,k.buffer),k._readTimeout=null)}}var v=d.prototype;Object.defineProperty(v,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(b){if(this.gl){this.fbo.shape=b;var p=this.fbo.shape[0],E=this.fbo.shape[1];if(E*p*4>this.buffer.length){l.free(this.buffer);for(var k=this.buffer=l.mallocUint8(c(E*p*4)),A=0;A<E*p*4;++A)k[A]=255}return b}}}),v.begin=function(){var b=this.gl,p=this.shape;b&&(this.fbo.bind(),b.clearColor(1,1,1,1),b.clear(b.COLOR_BUFFER_BIT|b.DEPTH_BUFFER_BIT))},v.end=function(){var b=this.gl;b&&(b.bindFramebuffer(b.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},v.query=function(b,p,E){if(!this.gl)return null;var k=this.fbo.shape.slice();b=b|0,p=p|0,typeof E!="number"&&(E=1);var A=Math.min(Math.max(b-E,0),k[0])|0,L=Math.min(Math.max(b+E,0),k[0])|0,_=Math.min(Math.max(p-E,0),k[1])|0,C=Math.min(Math.max(p+E,0),k[1])|0;if(L<=A||C<=_)return null;var M=[L-A,C-_],g=u(this.buffer,[M[0],M[1],4],[4,k[0]*4,1],4*(A+k[0]*_)),P=f(g.hi(M[0],M[1],1),E,E),T=P[0],F=P[1];if(T<0||Math.pow(this.radius,2)<P[2])return null;var q=g.get(T,F,0),V=g.get(T,F,1),H=g.get(T,F,2),X=g.get(T,F,3);return new h(T+A|0,F+_|0,q,[V,H,X],Math.sqrt(P[2]))},v.dispose=function(){this.gl&&(this.fbo.dispose(),l.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))};function x(b,p){var E=p[0],k=p[1],A={},L=s(b,E,k,A),_=l.mallocUint8(E*k*4);return new d(b,L,_)}},9405:function(i,a,o){"use strict";var s=o(3327),l=o(8731),u=o(216),c=o(5091),f=o(2145),h=o(8866);function d(p){this.gl=p,this.gl.lastAttribCount=0,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}var v=d.prototype;v.bind=function(){this.program||this._relink();var p,E=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),k=this.gl.lastAttribCount;if(E>k)for(p=k;p<E;p++)this.gl.enableVertexAttribArray(p);else if(k>E)for(p=E;p<k;p++)this.gl.disableVertexAttribArray(p);this.gl.lastAttribCount=E,this.gl.useProgram(this.program)},v.dispose=function(){for(var p=this.gl.lastAttribCount,E=0;E<p;E++)this.gl.disableVertexAttribArray(E);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null};function x(p,E){return p.name<E.name?-1:1}v.update=function(p,E,k,A){if(!E||arguments.length===1){var L=p;p=L.vertex,E=L.fragment,k=L.uniforms,A=L.attributes}var _=this,C=_.gl,M=_._vref;_._vref=c.shader(C,C.VERTEX_SHADER,p),M&&M.dispose(),_.vertShader=_._vref.shader;var g=this._fref;if(_._fref=c.shader(C,C.FRAGMENT_SHADER,E),g&&g.dispose(),_.fragShader=_._fref.shader,!k||!A){var P=C.createProgram();if(C.attachShader(P,_.fragShader),C.attachShader(P,_.vertShader),C.linkProgram(P),!C.getProgramParameter(P,C.LINK_STATUS)){var T=C.getProgramInfoLog(P);throw new h(T,"Error linking program:"+T)}k=k||f.uniforms(C,P),A=A||f.attributes(C,P),C.deleteProgram(P)}A=A.slice(),A.sort(x);var F=[],q=[],V=[],H;for(H=0;H<A.length;++H){var X=A[H];if(X.type.indexOf("mat")>=0){for(var G=X.type.charAt(X.type.length-1)|0,N=new Array(G),W=0;W<G;++W)N[W]=V.length,q.push(X.name+"["+W+"]"),typeof X.location=="number"?V.push(X.location+W):Array.isArray(X.location)&&X.location.length===G&&typeof X.location[W]=="number"?V.push(X.location[W]|0):V.push(-1);F.push({name:X.name,type:X.type,locations:N})}else F.push({name:X.name,type:X.type,locations:[V.length]}),q.push(X.name),typeof X.location=="number"?V.push(X.location|0):V.push(-1)}var re=0;for(H=0;H<V.length;++H)if(V[H]<0){for(;V.indexOf(re)>=0;)re+=1;V[H]=re}var ae=new Array(k.length);function _e(){_.program=c.program(C,_._vref,_._fref,q,V);for(var Me=0;Me<k.length;++Me)ae[Me]=C.getUniformLocation(_.program,k[Me].name)}_e(),_._relink=_e,_.types={uniforms:u(k),attributes:u(A)},_.attributes=l(C,_,F,V),Object.defineProperty(_,"uniforms",s(C,_,k,ae))};function b(p,E,k,A,L){var _=new d(p);return _.update(E,k,A,L),_}i.exports=b},8866:function(i){function a(o,s,l){this.shortMessage=s||"",this.longMessage=l||"",this.rawError=o||"",this.message="gl-shader: "+(s||o||"")+(l?`
+`+l:""),this.stack=new Error().stack}a.prototype=new Error,a.prototype.name="GLError",a.prototype.constructor=a,i.exports=a},8731:function(i,a,o){"use strict";i.exports=d;var s=o(8866);function l(v,x,b,p,E,k){this._gl=v,this._wrapper=x,this._index=b,this._locations=p,this._dimension=E,this._constFunc=k}var u=l.prototype;u.pointer=function(x,b,p,E){var k=this,A=k._gl,L=k._locations[k._index];A.vertexAttribPointer(L,k._dimension,x||A.FLOAT,!!b,p||0,E||0),A.enableVertexAttribArray(L)},u.set=function(v,x,b,p){return this._constFunc(this._locations[this._index],v,x,b,p)},Object.defineProperty(u,"location",{get:function(){return this._locations[this._index]},set:function(v){return v!==this._locations[this._index]&&(this._locations[this._index]=v|0,this._wrapper.program=null),v|0}});var c=[function(v,x,b){return b.length===void 0?v.vertexAttrib1f(x,b):v.vertexAttrib1fv(x,b)},function(v,x,b,p){return b.length===void 0?v.vertexAttrib2f(x,b,p):v.vertexAttrib2fv(x,b)},function(v,x,b,p,E){return b.length===void 0?v.vertexAttrib3f(x,b,p,E):v.vertexAttrib3fv(x,b)},function(v,x,b,p,E,k){return b.length===void 0?v.vertexAttrib4f(x,b,p,E,k):v.vertexAttrib4fv(x,b)}];function f(v,x,b,p,E,k,A){var L=c[E],_=new l(v,x,b,p,E,L);Object.defineProperty(k,A,{set:function(C){return v.disableVertexAttribArray(p[b]),L(v,p[b],C),C},get:function(){return _},enumerable:!0})}function h(v,x,b,p,E,k,A){for(var L=new Array(E),_=new Array(E),C=0;C<E;++C)f(v,x,b[C],p,E,L,C),_[C]=L[C];Object.defineProperty(L,"location",{set:function(P){if(Array.isArray(P))for(var T=0;T<E;++T)_[T].location=P[T];else for(var T=0;T<E;++T)_[T].location=P+T;return P},get:function(){for(var P=new Array(E),T=0;T<E;++T)P[T]=p[b[T]];return P},enumerable:!0}),L.pointer=function(P,T,F,q){P=P||v.FLOAT,T=!!T,F=F||E*E,q=q||0;for(var V=0;V<E;++V){var H=p[b[V]];v.vertexAttribPointer(H,E,P,T,F,q+V*E),v.enableVertexAttribArray(H)}};var M=new Array(E),g=v["vertexAttrib"+E+"fv"];Object.defineProperty(k,A,{set:function(P){for(var T=0;T<E;++T){var F=p[b[T]];if(v.disableVertexAttribArray(F),Array.isArray(P[0]))g.call(v,F,P[T]);else{for(var q=0;q<E;++q)M[q]=P[E*T+q];g.call(v,F,M)}}return P},get:function(){return L},enumerable:!0})}function d(v,x,b,p){for(var E={},k=0,A=b.length;k<A;++k){var L=b[k],_=L.name,C=L.type,M=L.locations;switch(C){case"bool":case"int":case"float":f(v,x,M[0],p,1,E,_);break;default:if(C.indexOf("vec")>=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+_+": "+C);f(v,x,M[0],p,g,E,_)}else if(C.indexOf("mat")>=0){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new s("","Invalid data type for attribute "+_+": "+C);h(v,x,M,p,g,E,_)}else throw new s("","Unknown data type for attribute "+_+": "+C);break}}return E}},3327:function(i,a,o){"use strict";var s=o(216),l=o(8866);i.exports=f;function u(h){return function(){return h}}function c(h,d){for(var v=new Array(h),x=0;x<h;++x)v[x]=d;return v}function f(h,d,v,x){function b(C){return function(M,g,P){return M.getUniform(g.program,P[C])}}function p(C){return function(g){for(var P=E("",C),T=0;T<P.length;++T){var F=P[T],q=F[0],V=F[1];if(x[V]){var H=g;if(typeof q=="string"&&(q.indexOf(".")===0||q.indexOf("[")===0)){var X=q;if(q.indexOf(".")===0&&(X=q.slice(1)),X.indexOf("]")===X.length-1){var G=X.indexOf("["),N=X.slice(0,G),W=X.slice(G+1,X.length-1);H=N?g[N][W]:g[W]}else H=g[X]}var re=v[V].type,ae;switch(re){case"bool":case"int":case"sampler2D":case"samplerCube":h.uniform1i(x[V],H);break;case"float":h.uniform1f(x[V],H);break;default:var _e=re.indexOf("vec");if(0<=_e&&_e<=1&&re.length===4+_e){if(ae=re.charCodeAt(re.length-1)-48,ae<2||ae>4)throw new l("","Invalid data type");switch(re.charAt(0)){case"b":case"i":h["uniform"+ae+"iv"](x[V],H);break;case"v":h["uniform"+ae+"fv"](x[V],H);break;default:throw new l("","Unrecognized data type for vector "+name+": "+re)}}else if(re.indexOf("mat")===0&&re.length===4){if(ae=re.charCodeAt(re.length-1)-48,ae<2||ae>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+re);h["uniformMatrix"+ae+"fv"](x[V],!1,H);break}else throw new l("","Unknown uniform data type for "+name+": "+re)}}}}}function E(C,M){if(typeof M!="object")return[[C,M]];var g=[];for(var P in M){var T=M[P],F=C;parseInt(P)+""===P?F+="["+P+"]":F+="."+P,typeof T=="object"?g.push.apply(g,E(F,T)):g.push([F,T])}return g}function k(C){switch(C){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var M=C.indexOf("vec");if(0<=M&&M<=1&&C.length===4+M){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid data type");return C.charAt(0)==="b"?c(g,!1):c(g,0)}else if(C.indexOf("mat")===0&&C.length===4){var g=C.charCodeAt(C.length-1)-48;if(g<2||g>4)throw new l("","Invalid uniform dimension type for matrix "+name+": "+C);return c(g*g,0)}else throw new l("","Unknown uniform data type for "+name+": "+C)}}function A(C,M,g){if(typeof g=="object"){var P=L(g);Object.defineProperty(C,M,{get:u(P),set:p(g),enumerable:!0,configurable:!1})}else x[g]?Object.defineProperty(C,M,{get:b(g),set:p(g),enumerable:!0,configurable:!1}):C[M]=k(v[g].type)}function L(C){var M;if(Array.isArray(C)){M=new Array(C.length);for(var g=0;g<C.length;++g)A(M,g,C[g])}else{M={};for(var P in C)A(M,P,C[P])}return M}var _=s(v,!0);return{get:u(L(_)),set:p(_),enumerable:!0,configurable:!0}}},216:function(i){"use strict";i.exports=a;function a(o,s){for(var l={},u=0;u<o.length;++u)for(var c=o[u].name,f=c.split("."),h=l,d=0;d<f.length;++d){var v=f[d].split("[");if(v.length>1){v[0]in h||(h[v[0]]=[]),h=h[v[0]];for(var x=1;x<v.length;++x){var b=parseInt(v[x]);x<v.length-1||d<f.length-1?(b in h||(x<v.length-1?h[b]=[]:h[b]={}),h=h[b]):s?h[b]=u:h[b]=o[u].type}}else d<f.length-1?(v[0]in h||(h[v[0]]={}),h=h[v[0]]):s?h[v[0]]=u:h[v[0]]=o[u].type}return l}},2145:function(i,a){"use strict";a.uniforms=u,a.attributes=c;var o={FLOAT:"float",FLOAT_VEC2:"vec2",FLOAT_VEC3:"vec3",FLOAT_VEC4:"vec4",INT:"int",INT_VEC2:"ivec2",INT_VEC3:"ivec3",INT_VEC4:"ivec4",BOOL:"bool",BOOL_VEC2:"bvec2",BOOL_VEC3:"bvec3",BOOL_VEC4:"bvec4",FLOAT_MAT2:"mat2",FLOAT_MAT3:"mat3",FLOAT_MAT4:"mat4",SAMPLER_2D:"sampler2D",SAMPLER_CUBE:"samplerCube"},s=null;function l(f,h){if(!s){var d=Object.keys(o);s={};for(var v=0;v<d.length;++v){var x=d[v];s[f[x]]=o[x]}}return s[h]}function u(f,h){for(var d=f.getProgramParameter(h,f.ACTIVE_UNIFORMS),v=[],x=0;x<d;++x){var b=f.getActiveUniform(h,x);if(b){var p=l(f,b.type);if(b.size>1)for(var E=0;E<b.size;++E)v.push({name:b.name.replace("[0]","["+E+"]"),type:p});else v.push({name:b.name,type:p})}}return v}function c(f,h){for(var d=f.getProgramParameter(h,f.ACTIVE_ATTRIBUTES),v=[],x=0;x<d;++x){var b=f.getActiveAttrib(h,x);b&&v.push({name:b.name,type:l(f,b.type)})}return v}},5091:function(i,a,o){"use strict";a.shader=E,a.program=k;var s=o(8866),l=o(2992),u=typeof WeakMap=="undefined"?o(606):WeakMap,c=new u,f=0;function h(A,L,_,C,M,g,P){this.id=A,this.src=L,this.type=_,this.shader=C,this.count=g,this.programs=[],this.cache=P}h.prototype.dispose=function(){if(--this.count===0){for(var A=this.cache,L=A.gl,_=this.programs,C=0,M=_.length;C<M;++C){var g=A.programs[_[C]];g&&(delete A.programs[C],L.deleteProgram(g))}L.deleteShader(this.shader),delete A.shaders[this.type===L.FRAGMENT_SHADER|0][this.src]}};function d(A){this.gl=A,this.shaders=[{},{}],this.programs={}}var v=d.prototype;function x(A,L,_){var C=A.createShader(L);if(A.shaderSource(C,_),A.compileShader(C),!A.getShaderParameter(C,A.COMPILE_STATUS)){var M=A.getShaderInfoLog(C);try{var g=l(M,_,L)}catch(P){throw console.warn("Failed to format compiler error: "+P),new s(M,`Error compiling shader:
+`+M)}throw new s(M,g.short,g.long)}return C}v.getShaderReference=function(A,L){var _=this.gl,C=this.shaders[A===_.FRAGMENT_SHADER|0],M=C[L];if(!M||!_.isShader(M.shader)){var g=x(_,A,L);M=C[L]=new h(f++,L,A,g,[],1,this)}else M.count+=1;return M};function b(A,L,_,C,M){var g=A.createProgram();A.attachShader(g,L),A.attachShader(g,_);for(var P=0;P<C.length;++P)A.bindAttribLocation(g,M[P],C[P]);if(A.linkProgram(g),!A.getProgramParameter(g,A.LINK_STATUS)){var T=A.getProgramInfoLog(g);throw new s(T,"Error linking program: "+T)}return g}v.getProgram=function(A,L,_,C){var M=[A.id,L.id,_.join(":"),C.join(":")].join("@"),g=this.programs[M];return(!g||!this.gl.isProgram(g))&&(this.programs[M]=g=b(this.gl,A.shader,L.shader,_,C),A.programs.push(M),L.programs.push(M)),g};function p(A){var L=c.get(A);return L||(L=new d(A),c.set(A,L)),L}function E(A,L,_){return p(A).getShaderReference(L,_)}function k(A,L,_,C,M){return p(A).getProgram(L,_,C,M)}},1493:function(i,a,o){"use strict";var s=o(3236),l=o(9405),u=s([`precision mediump float;
+#define GLSLIFY 1
+
+attribute vec3 position, color;
+attribute float weight;
+
+uniform mat4 model, view, projection;
+uniform vec3 coordinates[3];
+uniform vec4 colors[3];
+uniform vec2 screenShape;
+uniform float lineWidth;
+
+varying vec4 fragColor;
+
+void main() {
+ vec3 vertexPosition = mix(coordinates[0],
+ mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));
+
+ vec4 clipPos = projection * (view * (model * vec4(vertexPosition, 1.0)));
+ vec2 clipOffset = (projection * (view * (model * vec4(color, 0.0)))).xy;
+ vec2 delta = weight * clipOffset * screenShape;
+ vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;
+
+ gl_Position = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);
+ fragColor = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];
+}
+`]),c=s([`precision mediump float;
+#define GLSLIFY 1
+
+varying vec4 fragColor;
+
+void main() {
+ gl_FragColor = fragColor;
+}`]);i.exports=function(f){return l(f,u,c,null,[{name:"position",type:"vec3"},{name:"color",type:"vec3"},{name:"weight",type:"float"}])}},4449:function(i,a,o){"use strict";var s=o(2762),l=o(8116),u=o(1493);i.exports=b;var c=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function f(p,E,k,A){this.gl=p,this.buffer=E,this.vao=k,this.shader=A,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var h=f.prototype,d=[0,0,0],v=[0,0,0],x=[0,0];h.isTransparent=function(){return!1},h.drawTransparent=function(p){},h.draw=function(p){var E=this.gl,k=this.vao,A=this.shader;k.bind(),A.bind();var L=p.model||c,_=p.view||c,C=p.projection||c,M;this.axes&&(M=this.axes.lastCubeProps.axis);for(var g=d,P=v,T=0;T<3;++T)M&&M[T]<0?(g[T]=this.bounds[0][T],P[T]=this.bounds[1][T]):(g[T]=this.bounds[1][T],P[T]=this.bounds[0][T]);x[0]=E.drawingBufferWidth,x[1]=E.drawingBufferHeight,A.uniforms.model=L,A.uniforms.view=_,A.uniforms.projection=C,A.uniforms.coordinates=[this.position,g,P],A.uniforms.colors=this.colors,A.uniforms.screenShape=x;for(var T=0;T<3;++T)A.uniforms.lineWidth=this.lineWidth[T]*this.pixelRatio,this.enabled[T]&&(k.draw(E.TRIANGLES,6,6*T),this.drawSides[T]&&k.draw(E.TRIANGLES,12,18+12*T));k.unbind()},h.update=function(p){p&&("bounds"in p&&(this.bounds=p.bounds),"position"in p&&(this.position=p.position),"lineWidth"in p&&(this.lineWidth=p.lineWidth),"colors"in p&&(this.colors=p.colors),"enabled"in p&&(this.enabled=p.enabled),"drawSides"in p&&(this.drawSides=p.drawSides))},h.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function b(p,E){var k=[];function A(g,P,T,F,q,V){var H=[g,P,T,0,0,0,1];H[F+3]=1,H[F]=q,k.push.apply(k,H),H[6]=-1,k.push.apply(k,H),H[F]=V,k.push.apply(k,H),k.push.apply(k,H),H[6]=1,k.push.apply(k,H),H[F]=q,k.push.apply(k,H)}A(0,0,0,0,0,1),A(0,0,0,1,0,1),A(0,0,0,2,0,1),A(1,0,0,1,-1,1),A(1,0,0,2,-1,1),A(0,1,0,0,-1,1),A(0,1,0,2,-1,1),A(0,0,1,0,-1,1),A(0,0,1,1,-1,1);var L=s(p,k),_=l(p,[{type:p.FLOAT,buffer:L,size:3,offset:0,stride:28},{type:p.FLOAT,buffer:L,size:3,offset:12,stride:28},{type:p.FLOAT,buffer:L,size:1,offset:24,stride:28}]),C=u(p);C.attributes.position.location=0,C.attributes.color.location=1,C.attributes.weight.location=2;var M=new f(p,L,_,C);return M.update(E),M}},6740:function(i,a,o){var s=o(3236),l=s([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the tube vertex and normal at the given index.
+//
+// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
+//
+// Each tube segment is made up of a ring of vertices.
+// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
+// The indexes of tube segments run from 0 to 8.
+//
+vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
+ float segmentCount = 8.0;
+
+ float angle = 2.0 * 3.14159 * (index / segmentCount);
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d);
+ vec3 y = v * sin(angle) * length(d);
+ vec3 v3 = x + y;
+
+ normal = normalize(v3);
+
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 color, position;
+attribute vec2 uv;
+
+uniform float vectorScale, tubeScale;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 eyePosition, lightPosition;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ // Scale the vector magnitude to stay constant with
+ // model & view changes.
+ vec3 normal;
+ vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
+ vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * tubePosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ // vec4 m_position = model * vec4(tubePosition, 1.0);
+ vec4 t_position = view * tubePosition;
+ gl_Position = projection * t_position;
+
+ f_color = color;
+ f_data = tubePosition.xyz;
+ f_position = position.xyz;
+ f_uv = uv;
+}
+`]),u=s([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform sampler2D texture;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = f_color * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * opacity;
+}
+`]),c=s([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the tube vertex and normal at the given index.
+//
+// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
+//
+// Each tube segment is made up of a ring of vertices.
+// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
+// The indexes of tube segments run from 0 to 8.
+//
+vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
+ float segmentCount = 8.0;
+
+ float angle = 2.0 * 3.14159 * (index / segmentCount);
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d);
+ vec3 y = v * sin(angle) * length(d);
+ vec3 v3 = x + y;
+
+ normal = normalize(v3);
+
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform float tubeScale;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ vec3 normal;
+ vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
+ vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ gl_Position = projection * (view * tubePosition);
+ f_id = id;
+ f_position = position.xyz;
+}
+`]),f=s([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]);a.meshShader={vertex:l,fragment:u,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},a.pickShader={vertex:c,fragment:f,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(i,a,o){"use strict";var s=o(2931),l=o(9970),u=["xyz","xzy","yxz","yzx","zxy","zyx"],c=function(A,L,_,C){for(var M=A.points,g=A.velocities,P=A.divergences,T=[],F=[],q=[],V=[],H=[],X=[],G=0,N=0,W=l.create(),re=l.create(),ae=8,_e=0;_e<M.length;_e++){var Me=M[_e],ke=g[_e],ge=P[_e];L===0&&(ge=_*.05),N=s.length(ke)/C,W=l.create(),s.copy(W,ke),W[3]=ge;for(var ie=0;ie<ae;ie++)H[ie]=[Me[0],Me[1],Me[2],ie];if(V.length>0)for(var ie=0;ie<ae;ie++){var Te=(ie+1)%ae;T.push(V[ie],H[ie],H[Te],H[Te],V[Te],V[ie]),q.push(re,W,W,W,re,re),X.push(G,N,N,N,G,G);var Ee=T.length;F.push([Ee-6,Ee-5,Ee-4],[Ee-3,Ee-2,Ee-1])}var Ae=V;V=H,H=Ae;var ze=re;re=W,W=ze;var Ce=G;G=N,N=Ce}return{positions:T,cells:F,vectors:q,vertexIntensity:X}},f=function(A,L,_,C){for(var M=0,g=0;g<A.length;g++)for(var P=A[g].velocities,T=0;T<P.length;T++)M=Math.max(M,s.length(P[T]));for(var F=A.map(function(_e){return c(_e,_,C,M)}),q=[],V=[],H=[],X=[],g=0;g<F.length;g++){var G=F[g],N=q.length;q=q.concat(G.positions),H=H.concat(G.vectors),X=X.concat(G.vertexIntensity);for(var T=0;T<G.cells.length;T++){var W=G.cells[T],re=[];V.push(re);for(var ae=0;ae<W.length;ae++)re.push(W[ae]+N)}}return{positions:q,cells:V,vectors:H,vertexIntensity:X,colormap:L}},h=function(A,L){var _=A.length,C;for(C=0;C<_;C++){var M=A[C];if(M===L)return C;if(M>L)return C-1}return C},d=function(A,L,_){return A<L?L:A>_?_:A},v=function(A,L,_){var C=L.vectors,M=L.meshgrid,g=A[0],P=A[1],T=A[2],F=M[0].length,q=M[1].length,V=M[2].length,H=h(M[0],g),X=h(M[1],P),G=h(M[2],T),N=H+1,W=X+1,re=G+1;if(H=d(H,0,F-1),N=d(N,0,F-1),X=d(X,0,q-1),W=d(W,0,q-1),G=d(G,0,V-1),re=d(re,0,V-1),H<0||X<0||G<0||N>F-1||W>q-1||re>V-1)return s.create();var ae=M[0][H],_e=M[0][N],Me=M[1][X],ke=M[1][W],ge=M[2][G],ie=M[2][re],Te=(g-ae)/(_e-ae),Ee=(P-Me)/(ke-Me),Ae=(T-ge)/(ie-ge);isFinite(Te)||(Te=.5),isFinite(Ee)||(Ee=.5),isFinite(Ae)||(Ae=.5);var ze,Ce,me,Re,ce,Ge;switch(_.reversedX&&(H=F-1-H,N=F-1-N),_.reversedY&&(X=q-1-X,W=q-1-W),_.reversedZ&&(G=V-1-G,re=V-1-re),_.filled){case 5:ce=G,Ge=re,me=X*V,Re=W*V,ze=H*V*q,Ce=N*V*q;break;case 4:ce=G,Ge=re,ze=H*V,Ce=N*V,me=X*V*F,Re=W*V*F;break;case 3:me=X,Re=W,ce=G*q,Ge=re*q,ze=H*q*V,Ce=N*q*V;break;case 2:me=X,Re=W,ze=H*q,Ce=N*q,ce=G*q*F,Ge=re*q*F;break;case 1:ze=H,Ce=N,ce=G*F,Ge=re*F,me=X*F*V,Re=W*F*V;break;default:ze=H,Ce=N,me=X*F,Re=W*F,ce=G*F*q,Ge=re*F*q;break}var nt=C[ze+me+ce],ct=C[ze+me+Ge],qt=C[ze+Re+ce],rt=C[ze+Re+Ge],ot=C[Ce+me+ce],Rt=C[Ce+me+Ge],kt=C[Ce+Re+ce],Ct=C[Ce+Re+Ge],Yt=s.create(),xr=s.create(),er=s.create(),Ke=s.create();s.lerp(Yt,nt,ot,Te),s.lerp(xr,ct,Rt,Te),s.lerp(er,qt,kt,Te),s.lerp(Ke,rt,Ct,Te);var xt=s.create(),bt=s.create();s.lerp(xt,Yt,er,Ee),s.lerp(bt,xr,Ke,Ee);var Lt=s.create();return s.lerp(Lt,xt,bt,Ae),Lt},x=function(A,L){var _=L[0],C=L[1],M=L[2];return A[0]=_<0?-_:_,A[1]=C<0?-C:C,A[2]=M<0?-M:M,A},b=function(A){var L=1/0;A.sort(function(g,P){return g-P});for(var _=A.length,C=1;C<_;C++){var M=Math.abs(A[C]-A[C-1]);M<L&&(L=M)}return L},p=function(A){for(var L=[],_=[],C=[],M={},g={},P={},T=A.length,F=0;F<T;F++){var q=A[F],V=q[0],H=q[1],X=q[2];M[V]||(L.push(V),M[V]=!0),g[H]||(_.push(H),g[H]=!0),P[X]||(C.push(X),P[X]=!0)}var G=b(L),N=b(_),W=b(C),re=Math.min(G,N,W);return isFinite(re)?re:1};i.exports=function(A,L){var _=A.startingPositions,C=A.maxLength||1e3,M=A.tubeSize||1,g=A.absoluteTubeSize,P=A.gridFill||"+x+y+z",T={};P.indexOf("-x")!==-1&&(T.reversedX=!0),P.indexOf("-y")!==-1&&(T.reversedY=!0),P.indexOf("-z")!==-1&&(T.reversedZ=!0),T.filled=u.indexOf(P.replace(/-/g,"").replace(/\+/g,""));var F=A.getVelocity||function(Rt){return v(Rt,A,T)},q=A.getDivergence||function(Rt,kt){var Ct=s.create(),Yt=1e-4;s.add(Ct,Rt,[Yt,0,0]);var xr=F(Ct);s.subtract(xr,xr,kt),s.scale(xr,xr,1/Yt),s.add(Ct,Rt,[0,Yt,0]);var er=F(Ct);s.subtract(er,er,kt),s.scale(er,er,1/Yt),s.add(Ct,Rt,[0,0,Yt]);var Ke=F(Ct);return s.subtract(Ke,Ke,kt),s.scale(Ke,Ke,1/Yt),s.add(Ct,xr,er),s.add(Ct,Ct,Ke),Ct},V=[],H=L[0][0],X=L[0][1],G=L[0][2],N=L[1][0],W=L[1][1],re=L[1][2],ae=function(Rt){var kt=Rt[0],Ct=Rt[1],Yt=Rt[2];return!(kt<H||kt>N||Ct<X||Ct>W||Yt<G||Yt>re)},_e=s.distance(L[0],L[1]),Me=10*_e/C,ke=Me*Me,ge=1,ie=0,Te=_.length;Te>1&&(ge=p(_));for(var Ee=0;Ee<Te;Ee++){var Ae=s.create();s.copy(Ae,_[Ee]);var ze=[Ae],Ce=[],me=F(Ae),Re=Ae;Ce.push(me);var ce=[],Ge=q(Ae,me),nt=s.length(Ge);isFinite(nt)&&nt>ie&&(ie=nt),ce.push(nt),V.push({points:ze,velocities:Ce,divergences:ce});for(var ct=0;ct<C*100&&ze.length<C&&ae(Ae);){ct++;var qt=s.clone(me),rt=s.squaredLength(qt);if(rt===0)break;if(rt>ke&&s.scale(qt,qt,Me/Math.sqrt(rt)),s.add(qt,qt,Ae),me=F(qt),s.squaredDistance(Re,qt)-ke>-1e-4*ke){ze.push(qt),Re=qt,Ce.push(me);var Ge=q(qt,me),nt=s.length(Ge);isFinite(nt)&&nt>ie&&(ie=nt),ce.push(nt)}Ae=qt}}var ot=f(V,A.colormap,ie,ge);return g?ot.tubeScale=g:(ie===0&&(ie=1),ot.tubeScale=M*.5*ge/ie),ot};var E=o(6740),k=o(6405).createMesh;i.exports.createTubeMesh=function(A,L){return k(A,L,{shaders:E,traceType:"streamtube"})}},990:function(i,a,o){var s=o(9405),l=o(3236),u=l([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec4 uv;
+attribute vec3 f;
+attribute vec3 normal;
+
+uniform vec3 objectOffset;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 lightPosition, eyePosition;
+uniform sampler2D colormap;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ vec3 localCoordinate = vec3(uv.zw, f.x);
+ worldCoordinate = objectOffset + localCoordinate;
+ mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
+ vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 1.0);
+ vec4 clipPosition = projection * (view * worldPosition);
+ gl_Position = clipPosition;
+ kill = f.y;
+ value = f.z;
+ planeCoordinate = uv.xy;
+
+ vColor = texture2D(colormap, vec2(value, value));
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * worldPosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ lightDirection = lightPosition - cameraCoordinate.xyz;
+ eyeDirection = eyePosition - cameraCoordinate.xyz;
+ surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);
+}
+`]),c=l([`precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float beckmannSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness) {
+ return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 lowerBound, upperBound;
+uniform float contourTint;
+uniform vec4 contourColor;
+uniform sampler2D colormap;
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform float vertexColor;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ if (
+ kill > 0.0 ||
+ vColor.a == 0.0 ||
+ outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)
+ ) discard;
+
+ vec3 N = normalize(surfaceNormal);
+ vec3 V = normalize(eyeDirection);
+ vec3 L = normalize(lightDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = max(beckmannSpecular(L, V, N, roughness), 0.);
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ //decide how to interpolate color \u2014 in vertex or in fragment
+ vec4 surfaceColor =
+ step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +
+ step(.5, vertexColor) * vColor;
+
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;
+}
+`]),f=l([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec4 uv;
+attribute float f;
+
+uniform vec3 objectOffset;
+uniform mat3 permutation;
+uniform mat4 model, view, projection;
+uniform float height, zOffset;
+uniform sampler2D colormap;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ vec3 dataCoordinate = permutation * vec3(uv.xy, height);
+ worldCoordinate = objectOffset + dataCoordinate;
+ mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
+ vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0);
+
+ vec4 clipPosition = projection * (view * worldPosition);
+ clipPosition.z += zOffset;
+
+ gl_Position = clipPosition;
+ value = f + objectOffset.z;
+ kill = -1.0;
+ planeCoordinate = uv.zw;
+
+ vColor = texture2D(colormap, vec2(value, value));
+
+ //Don't do lighting for contours
+ surfaceNormal = vec3(1,0,0);
+ eyeDirection = vec3(0,1,0);
+ lightDirection = vec3(0,0,1);
+}
+`]),h=l([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec2 shape;
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 surfaceNormal;
+
+vec2 splitFloat(float v) {
+ float vh = 255.0 * v;
+ float upper = floor(vh);
+ float lower = fract(vh);
+ return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);
+}
+
+void main() {
+ if ((kill > 0.0) ||
+ (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;
+
+ vec2 ux = splitFloat(planeCoordinate.x / shape.x);
+ vec2 uy = splitFloat(planeCoordinate.y / shape.y);
+ gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));
+}
+`]);a.createShader=function(d){var v=s(d,u,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},a.createPickShader=function(d){var v=s(d,u,h,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},a.createContourShader=function(d){var v=s(d,f,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v},a.createPickContourShader=function(d){var v=s(d,f,h,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v}},9499:function(i,a,o){"use strict";i.exports=ze;var s=o(8828),l=o(2762),u=o(8116),c=o(7766),f=o(1888),h=o(6729),d=o(5298),v=o(9994),x=o(9618),b=o(3711),p=o(6760),E=o(7608),k=o(2478),A=o(6199),L=o(990),_=L.createShader,C=L.createContourShader,M=L.createPickShader,g=L.createPickContourShader,P=4*10,T=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],F=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],q=[[0,0,0,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(){for(var Ce=0;Ce<3;++Ce){var me=q[Ce],Re=(Ce+1)%3,ce=(Ce+2)%3;me[Re+0]=1,me[ce+3]=1,me[Ce+6]=1}})();function V(Ce,me,Re,ce,Ge){this.position=Ce,this.index=me,this.uv=Re,this.level=ce,this.dataCoordinate=Ge}var H=256;function X(Ce,me,Re,ce,Ge,nt,ct,qt,rt,ot,Rt,kt,Ct,Yt,xr){this.gl=Ce,this.shape=me,this.bounds=Re,this.objectOffset=xr,this.intensityBounds=[],this._shader=ce,this._pickShader=Ge,this._coordinateBuffer=nt,this._vao=ct,this._colorMap=qt,this._contourShader=rt,this._contourPickShader=ot,this._contourBuffer=Rt,this._contourVAO=kt,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new V([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=Ct,this._dynamicVAO=Yt,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=[x(f.mallocFloat(1024),[0,0]),x(f.mallocFloat(1024),[0,0]),x(f.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.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 G=X.prototype;G.genColormap=function(Ce,me){var Re=!1,ce=v([h({colormap:Ce,nshades:H,format:"rgba"}).map(function(Ge,nt){var ct=me?N(nt/255,me):Ge[3];return ct<1&&(Re=!0),[Ge[0],Ge[1],Ge[2],255*ct]})]);return d.divseq(ce,255),this.hasAlphaScale=Re,ce},G.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},G.isOpaque=function(){return!this.isTransparent()},G.pickSlots=1,G.setPickBase=function(Ce){this.pickId=Ce};function N(Ce,me){if(!me||!me.length)return 1;for(var Re=0;Re<me.length;++Re){if(me.length<2)return 1;if(me[Re][0]===Ce)return me[Re][1];if(me[Re][0]>Ce&&Re>0){var ce=(me[Re][0]-Ce)/(me[Re][0]-me[Re-1][0]);return me[Re][1]*(1-ce)+ce*me[Re-1][1]}}return 1}var W=[0,0,0],re={showSurface:!1,showContour:!1,projections:[T.slice(),T.slice(),T.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function ae(Ce,me){var Re,ce,Ge,nt=me.axes&&me.axes.lastCubeProps.axis||W,ct=me.showSurface,qt=me.showContour;for(Re=0;Re<3;++Re)for(ct=ct||me.surfaceProject[Re],ce=0;ce<3;++ce)qt=qt||me.contourProject[Re][ce];for(Re=0;Re<3;++Re){var rt=re.projections[Re];for(ce=0;ce<16;++ce)rt[ce]=0;for(ce=0;ce<4;++ce)rt[5*ce]=1;rt[5*Re]=0,rt[12+Re]=me.axesBounds[+(nt[Re]>0)][Re],p(rt,Ce.model,rt);var ot=re.clipBounds[Re];for(Ge=0;Ge<2;++Ge)for(ce=0;ce<3;++ce)ot[Ge][ce]=Ce.clipBounds[Ge][ce];ot[0][Re]=-1e8,ot[1][Re]=1e8}return re.showSurface=ct,re.showContour=qt,re}var _e={model:T,view:T,projection:T,inverseModel:T.slice(),lowerBound:[0,0,0],upperBound:[0,0,0],colorMap:0,clipBounds:[[0,0,0],[0,0,0]],height:0,contourTint:0,contourColor:[0,0,0,1],permutation:[1,0,0,0,1,0,0,0,1],zOffset:-1e-4,objectOffset:[0,0,0],kambient:1,kdiffuse:1,kspecular:1,lightPosition:[1e3,1e3,1e3],eyePosition:[0,0,0],roughness:1,fresnel:1,opacity:1,vertexColor:0},Me=T.slice(),ke=[1,0,0,0,1,0,0,0,1];function ge(Ce,me){Ce=Ce||{};var Re=this.gl;Re.disable(Re.CULL_FACE),this._colorMap.bind(0);var ce=_e;ce.model=Ce.model||T,ce.view=Ce.view||T,ce.projection=Ce.projection||T,ce.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ce.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ce.objectOffset=this.objectOffset,ce.contourColor=this.contourColor[0],ce.inverseModel=E(ce.inverseModel,ce.model);for(var Ge=0;Ge<2;++Ge)for(var nt=ce.clipBounds[Ge],ct=0;ct<3;++ct)nt[ct]=Math.min(Math.max(this.clipBounds[Ge][ct],-1e8),1e8);ce.kambient=this.ambientLight,ce.kdiffuse=this.diffuseLight,ce.kspecular=this.specularLight,ce.roughness=this.roughness,ce.fresnel=this.fresnel,ce.opacity=this.opacity,ce.height=0,ce.permutation=ke,ce.vertexColor=this.vertexColor;var qt=Me;for(p(qt,ce.view,ce.model),p(qt,ce.projection,qt),E(qt,qt),Ge=0;Ge<3;++Ge)ce.eyePosition[Ge]=qt[12+Ge]/qt[15];var rt=qt[15];for(Ge=0;Ge<3;++Ge)rt+=this.lightPosition[Ge]*qt[4*Ge+3];for(Ge=0;Ge<3;++Ge){var ot=qt[12+Ge];for(ct=0;ct<3;++ct)ot+=qt[4*ct+Ge]*this.lightPosition[ct];ce.lightPosition[Ge]=ot/rt}var Rt=ae(ce,this);if(Rt.showSurface){for(this._shader.bind(),this._shader.uniforms=ce,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(Re.TRIANGLES,this._vertexCount),Ge=0;Ge<3;++Ge)!this.surfaceProject[Ge]||!this.vertexCount||(this._shader.uniforms.model=Rt.projections[Ge],this._shader.uniforms.clipBounds=Rt.clipBounds[Ge],this._vao.draw(Re.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Rt.showContour){var kt=this._contourShader;ce.kambient=1,ce.kdiffuse=0,ce.kspecular=0,ce.opacity=1,kt.bind(),kt.uniforms=ce;var Ct=this._contourVAO;for(Ct.bind(),Ge=0;Ge<3;++Ge)for(kt.uniforms.permutation=q[Ge],Re.lineWidth(this.contourWidth[Ge]*this.pixelRatio),ct=0;ct<this.contourLevels[Ge].length;++ct)ct===this.highlightLevel[Ge]?(kt.uniforms.contourColor=this.highlightColor[Ge],kt.uniforms.contourTint=this.highlightTint[Ge]):(ct===0||ct-1===this.highlightLevel[Ge])&&(kt.uniforms.contourColor=this.contourColor[Ge],kt.uniforms.contourTint=this.contourTint[Ge]),this._contourCounts[Ge][ct]&&(kt.uniforms.height=this.contourLevels[Ge][ct],Ct.draw(Re.LINES,this._contourCounts[Ge][ct],this._contourOffsets[Ge][ct]));for(Ge=0;Ge<3;++Ge)for(kt.uniforms.model=Rt.projections[Ge],kt.uniforms.clipBounds=Rt.clipBounds[Ge],ct=0;ct<3;++ct)if(this.contourProject[Ge][ct]){kt.uniforms.permutation=q[ct],Re.lineWidth(this.contourWidth[ct]*this.pixelRatio);for(var Yt=0;Yt<this.contourLevels[ct].length;++Yt)Yt===this.highlightLevel[ct]?(kt.uniforms.contourColor=this.highlightColor[ct],kt.uniforms.contourTint=this.highlightTint[ct]):(Yt===0||Yt-1===this.highlightLevel[ct])&&(kt.uniforms.contourColor=this.contourColor[ct],kt.uniforms.contourTint=this.contourTint[ct]),this._contourCounts[ct][Yt]&&(kt.uniforms.height=this.contourLevels[ct][Yt],Ct.draw(Re.LINES,this._contourCounts[ct][Yt],this._contourOffsets[ct][Yt]))}for(Ct.unbind(),Ct=this._dynamicVAO,Ct.bind(),Ge=0;Ge<3;++Ge)if(this._dynamicCounts[Ge]!==0)for(kt.uniforms.model=ce.model,kt.uniforms.clipBounds=ce.clipBounds,kt.uniforms.permutation=q[Ge],Re.lineWidth(this.dynamicWidth[Ge]*this.pixelRatio),kt.uniforms.contourColor=this.dynamicColor[Ge],kt.uniforms.contourTint=this.dynamicTint[Ge],kt.uniforms.height=this.dynamicLevel[Ge],Ct.draw(Re.LINES,this._dynamicCounts[Ge],this._dynamicOffsets[Ge]),ct=0;ct<3;++ct)this.contourProject[ct][Ge]&&(kt.uniforms.model=Rt.projections[ct],kt.uniforms.clipBounds=Rt.clipBounds[ct],Ct.draw(Re.LINES,this._dynamicCounts[Ge],this._dynamicOffsets[Ge]));Ct.unbind()}}G.draw=function(Ce){return ge.call(this,Ce,!1)},G.drawTransparent=function(Ce){return ge.call(this,Ce,!0)};var ie={model:T,view:T,projection:T,inverseModel:T,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,objectOffset:[0,0,0],permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};G.drawPick=function(Ce){Ce=Ce||{};var me=this.gl;me.disable(me.CULL_FACE);var Re=ie;Re.model=Ce.model||T,Re.view=Ce.view||T,Re.projection=Ce.projection||T,Re.shape=this._field[2].shape,Re.pickId=this.pickId/255,Re.lowerBound=this.bounds[0],Re.upperBound=this.bounds[1],Re.objectOffset=this.objectOffset,Re.permutation=ke;for(var ce=0;ce<2;++ce)for(var Ge=Re.clipBounds[ce],nt=0;nt<3;++nt)Ge[nt]=Math.min(Math.max(this.clipBounds[ce][nt],-1e8),1e8);var ct=ae(Re,this);if(ct.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=Re,this._vao.bind(),this._vao.draw(me.TRIANGLES,this._vertexCount),ce=0;ce<3;++ce)this.surfaceProject[ce]&&(this._pickShader.uniforms.model=ct.projections[ce],this._pickShader.uniforms.clipBounds=ct.clipBounds[ce],this._vao.draw(me.TRIANGLES,this._vertexCount));this._vao.unbind()}if(ct.showContour){var qt=this._contourPickShader;qt.bind(),qt.uniforms=Re;var rt=this._contourVAO;for(rt.bind(),nt=0;nt<3;++nt)for(me.lineWidth(this.contourWidth[nt]*this.pixelRatio),qt.uniforms.permutation=q[nt],ce=0;ce<this.contourLevels[nt].length;++ce)this._contourCounts[nt][ce]&&(qt.uniforms.height=this.contourLevels[nt][ce],rt.draw(me.LINES,this._contourCounts[nt][ce],this._contourOffsets[nt][ce]));for(ce=0;ce<3;++ce)for(qt.uniforms.model=ct.projections[ce],qt.uniforms.clipBounds=ct.clipBounds[ce],nt=0;nt<3;++nt)if(this.contourProject[ce][nt]){qt.uniforms.permutation=q[nt],me.lineWidth(this.contourWidth[nt]*this.pixelRatio);for(var ot=0;ot<this.contourLevels[nt].length;++ot)this._contourCounts[nt][ot]&&(qt.uniforms.height=this.contourLevels[nt][ot],rt.draw(me.LINES,this._contourCounts[nt][ot],this._contourOffsets[nt][ot]))}rt.unbind()}},G.pick=function(Ce){if(!Ce||Ce.id!==this.pickId)return null;var me=this._field[2].shape,Re=this._pickResult,ce=me[0]*(Ce.value[0]+(Ce.value[2]>>4)/16)/255,Ge=Math.floor(ce),nt=ce-Ge,ct=me[1]*(Ce.value[1]+(Ce.value[2]&15)/16)/255,qt=Math.floor(ct),rt=ct-qt;Ge+=1,qt+=1;var ot=Re.position;ot[0]=ot[1]=ot[2]=0;for(var Rt=0;Rt<2;++Rt)for(var kt=Rt?nt:1-nt,Ct=0;Ct<2;++Ct)for(var Yt=Ct?rt:1-rt,xr=Ge+Rt,er=qt+Ct,Ke=kt*Yt,xt=0;xt<3;++xt)ot[xt]+=this._field[xt].get(xr,er)*Ke;for(var bt=this._pickResult.level,Lt=0;Lt<3;++Lt)if(bt[Lt]=k.le(this.contourLevels[Lt],ot[Lt]),bt[Lt]<0)this.contourLevels[Lt].length>0&&(bt[Lt]=0);else if(bt[Lt]<this.contourLevels[Lt].length-1){var St=this.contourLevels[Lt][bt[Lt]],Et=this.contourLevels[Lt][bt[Lt]+1];Math.abs(St-ot[Lt])>Math.abs(Et-ot[Lt])&&(bt[Lt]+=1)}for(Re.index[0]=nt<.5?Ge:Ge+1,Re.index[1]=rt<.5?qt:qt+1,Re.uv[0]=ce/me[0],Re.uv[1]=ct/me[1],xt=0;xt<3;++xt)Re.dataCoordinate[xt]=this._field[xt].get(Re.index[0],Re.index[1]);return Re},G.padField=function(Ce,me){var Re=me.shape.slice(),ce=Ce.shape.slice();d.assign(Ce.lo(1,1).hi(Re[0],Re[1]),me),d.assign(Ce.lo(1).hi(Re[0],1),me.hi(Re[0],1)),d.assign(Ce.lo(1,ce[1]-1).hi(Re[0],1),me.lo(0,Re[1]-1).hi(Re[0],1)),d.assign(Ce.lo(0,1).hi(1,Re[1]),me.hi(1)),d.assign(Ce.lo(ce[0]-1,1).hi(1,Re[1]),me.lo(Re[0]-1)),Ce.set(0,0,me.get(0,0)),Ce.set(0,ce[1]-1,me.get(0,Re[1]-1)),Ce.set(ce[0]-1,0,me.get(Re[0]-1,0)),Ce.set(ce[0]-1,ce[1]-1,me.get(Re[0]-1,Re[1]-1))};function Te(Ce,me){return Array.isArray(Ce)?[me(Ce[0]),me(Ce[1]),me(Ce[2])]:[me(Ce),me(Ce),me(Ce)]}function Ee(Ce){return Array.isArray(Ce)?Ce.length===3?[Ce[0],Ce[1],Ce[2],1]:[Ce[0],Ce[1],Ce[2],Ce[3]]:[0,0,0,1]}function Ae(Ce){if(Array.isArray(Ce)){if(Array.isArray(Ce))return[Ee(Ce[0]),Ee(Ce[1]),Ee(Ce[2])];var me=Ee(Ce);return[me.slice(),me.slice(),me.slice()]}}G.update=function(Ce){Ce=Ce||{},this.objectOffset=Ce.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in Ce&&(this.contourWidth=Te(Ce.contourWidth,Number)),"showContour"in Ce&&(this.showContour=Te(Ce.showContour,Boolean)),"showSurface"in Ce&&(this.showSurface=!!Ce.showSurface),"contourTint"in Ce&&(this.contourTint=Te(Ce.contourTint,Boolean)),"contourColor"in Ce&&(this.contourColor=Ae(Ce.contourColor)),"contourProject"in Ce&&(this.contourProject=Te(Ce.contourProject,function(Gi){return Te(Gi,Boolean)})),"surfaceProject"in Ce&&(this.surfaceProject=Ce.surfaceProject),"dynamicColor"in Ce&&(this.dynamicColor=Ae(Ce.dynamicColor)),"dynamicTint"in Ce&&(this.dynamicTint=Te(Ce.dynamicTint,Number)),"dynamicWidth"in Ce&&(this.dynamicWidth=Te(Ce.dynamicWidth,Number)),"opacity"in Ce&&(this.opacity=Ce.opacity),"opacityscale"in Ce&&(this.opacityscale=Ce.opacityscale),"colorBounds"in Ce&&(this.colorBounds=Ce.colorBounds),"vertexColor"in Ce&&(this.vertexColor=Ce.vertexColor?1:0),"colormap"in Ce&&this._colorMap.setPixels(this.genColormap(Ce.colormap,this.opacityscale));var me=Ce.field||Ce.coords&&Ce.coords[2]||null,Re=!1;if(me||(this._field[2].shape[0]||this._field[2].shape[2]?me=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):me=this._field[2].hi(0,0)),"field"in Ce||"coords"in Ce){var ce=(me.shape[0]+2)*(me.shape[1]+2);ce>this._field[2].data.length&&(f.freeFloat(this._field[2].data),this._field[2].data=f.mallocFloat(s.nextPow2(ce))),this._field[2]=x(this._field[2].data,[me.shape[0]+2,me.shape[1]+2]),this.padField(this._field[2],me),this.shape=me.shape.slice();for(var Ge=this.shape,nt=0;nt<2;++nt)this._field[2].size>this._field[nt].data.length&&(f.freeFloat(this._field[nt].data),this._field[nt].data=f.mallocFloat(this._field[2].size)),this._field[nt]=x(this._field[nt].data,[Ge[0]+2,Ge[1]+2]);if(Ce.coords){var ct=Ce.coords;if(!Array.isArray(ct)||ct.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(nt=0;nt<2;++nt){var qt=ct[nt];for(Ct=0;Ct<2;++Ct)if(qt.shape[Ct]!==Ge[Ct])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[nt],qt)}}else if(Ce.ticks){var rt=Ce.ticks;if(!Array.isArray(rt)||rt.length!==2)throw new Error("gl-surface: invalid ticks");for(nt=0;nt<2;++nt){var ot=rt[nt];if((Array.isArray(ot)||ot.length)&&(ot=x(ot)),ot.shape[0]!==Ge[nt])throw new Error("gl-surface: invalid tick length");var Rt=x(ot.data,Ge);Rt.stride[nt]=ot.stride[0],Rt.stride[nt^1]=0,this.padField(this._field[nt],Rt)}}else{for(nt=0;nt<2;++nt){var kt=[0,0];kt[nt]=1,this._field[nt]=x(this._field[nt].data,[Ge[0]+2,Ge[1]+2],kt,0)}this._field[0].set(0,0,0);for(var Ct=0;Ct<Ge[0];++Ct)this._field[0].set(Ct+1,0,Ct);for(this._field[0].set(Ge[0]+1,0,Ge[0]-1),this._field[1].set(0,0,0),Ct=0;Ct<Ge[1];++Ct)this._field[1].set(0,Ct+1,Ct);this._field[1].set(0,Ge[1]+1,Ge[1]-1)}var Yt=this._field,xr=x(f.mallocFloat(Yt[2].size*3*2),[3,Ge[0]+2,Ge[1]+2,2]);for(nt=0;nt<3;++nt)A(xr.pick(nt),Yt[nt],"mirror");var er=x(f.mallocFloat(Yt[2].size*3),[Ge[0]+2,Ge[1]+2,3]);for(nt=0;nt<Ge[0]+2;++nt)for(Ct=0;Ct<Ge[1]+2;++Ct){var Ke=xr.get(0,nt,Ct,0),xt=xr.get(0,nt,Ct,1),bt=xr.get(1,nt,Ct,0),Lt=xr.get(1,nt,Ct,1),St=xr.get(2,nt,Ct,0),Et=xr.get(2,nt,Ct,1),dt=bt*Et-Lt*St,Ht=St*xt-Et*Ke,$t=Ke*Lt-xt*bt,fr=Math.sqrt(dt*dt+Ht*Ht+$t*$t);fr<1e-8?(fr=Math.max(Math.abs(dt),Math.abs(Ht),Math.abs($t)),fr<1e-8?($t=1,Ht=dt=0,fr=1):fr=1/fr):fr=1/Math.sqrt(fr),er.set(nt,Ct,0,dt*fr),er.set(nt,Ct,1,Ht*fr),er.set(nt,Ct,2,$t*fr)}f.free(xr.data);var _r=[1/0,1/0,1/0],Br=[-1/0,-1/0,-1/0],Or=1/0,Nr=-1/0,ut=(Ge[0]-1)*(Ge[1]-1)*6,Ne=f.mallocFloat(s.nextPow2(10*ut)),Ye=0,Ve=0;for(nt=0;nt<Ge[0]-1;++nt)e:for(Ct=0;Ct<Ge[1]-1;++Ct){for(var Xe=0;Xe<2;++Xe)for(var ht=0;ht<2;++ht)for(var Le=0;Le<3;++Le){var xe=this._field[Le].get(1+nt+Xe,1+Ct+ht);if(isNaN(xe)||!isFinite(xe))continue e}for(Le=0;Le<6;++Le){var Se=nt+F[Le][0],lt=Ct+F[Le][1],Gt=this._field[0].get(Se+1,lt+1),Vt=this._field[1].get(Se+1,lt+1);xe=this._field[2].get(Se+1,lt+1),dt=er.get(Se+1,lt+1,0),Ht=er.get(Se+1,lt+1,1),$t=er.get(Se+1,lt+1,2),Ce.intensity&&(ar=Ce.intensity.get(Se,lt));var ar=Ce.intensity?Ce.intensity.get(Se,lt):xe+this.objectOffset[2];Ne[Ye++]=Se,Ne[Ye++]=lt,Ne[Ye++]=Gt,Ne[Ye++]=Vt,Ne[Ye++]=xe,Ne[Ye++]=0,Ne[Ye++]=ar,Ne[Ye++]=dt,Ne[Ye++]=Ht,Ne[Ye++]=$t,_r[0]=Math.min(_r[0],Gt+this.objectOffset[0]),_r[1]=Math.min(_r[1],Vt+this.objectOffset[1]),_r[2]=Math.min(_r[2],xe+this.objectOffset[2]),Or=Math.min(Or,ar),Br[0]=Math.max(Br[0],Gt+this.objectOffset[0]),Br[1]=Math.max(Br[1],Vt+this.objectOffset[1]),Br[2]=Math.max(Br[2],xe+this.objectOffset[2]),Nr=Math.max(Nr,ar),Ve+=1}}for(Ce.intensityBounds&&(Or=+Ce.intensityBounds[0],Nr=+Ce.intensityBounds[1]),nt=6;nt<Ye;nt+=10)Ne[nt]=(Ne[nt]-Or)/(Nr-Or);this._vertexCount=Ve,this._coordinateBuffer.update(Ne.subarray(0,Ye)),f.freeFloat(Ne),f.free(er.data),this.bounds=[_r,Br],this.intensity=Ce.intensity||this._field[2],(this.intensityBounds[0]!==Or||this.intensityBounds[1]!==Nr)&&(Re=!0),this.intensityBounds=[Or,Nr]}if("levels"in Ce){var Qr=Ce.levels;for(Array.isArray(Qr[0])?Qr=Qr.slice():Qr=[[],[],Qr],nt=0;nt<3;++nt)Qr[nt]=Qr[nt].slice(),Qr[nt].sort(function(Gi,Ki){return Gi-Ki});for(nt=0;nt<3;++nt)for(Ct=0;Ct<Qr[nt].length;++Ct)Qr[nt][Ct]-=this.objectOffset[nt];e:for(nt=0;nt<3;++nt){if(Qr[nt].length!==this.contourLevels[nt].length){Re=!0;break}for(Ct=0;Ct<Qr[nt].length;++Ct)if(Qr[nt][Ct]!==this.contourLevels[nt][Ct]){Re=!0;break e}}this.contourLevels=Qr}if(Re){Yt=this._field,Ge=this.shape;for(var ai=[],jr=0;jr<3;++jr){var ri=this.contourLevels[jr],bi=[],nn=[],Wi=[0,0,0];for(nt=0;nt<ri.length;++nt){var Ni=b(this._field[jr],ri[nt]);bi.push(ai.length/5|0),Ve=0;e:for(Ct=0;Ct<Ni.cells.length;++Ct){var _n=Ni.cells[Ct];for(Le=0;Le<2;++Le){var $i=Ni.positions[_n[Le]],zn=$i[0],Wn=Math.floor(zn)|0,It=zn-Wn,ft=$i[1],jt=Math.floor(ft)|0,Zt=ft-jt,yr=!1;t:for(var Fr=0;Fr<3;++Fr){Wi[Fr]=0;var Zr=(jr+Fr+1)%3;for(Xe=0;Xe<2;++Xe){var Vr=Xe?It:1-It;for(Se=Math.min(Math.max(Wn+Xe,0),Ge[0])|0,ht=0;ht<2;++ht){var gi=ht?Zt:1-Zt;if(lt=Math.min(Math.max(jt+ht,0),Ge[1])|0,Fr<2?xe=this._field[Zr].get(Se,lt):xe=(this.intensity.get(Se,lt)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(xe)||isNaN(xe)){yr=!0;break t}var Si=Vr*gi;Wi[Fr]+=Si*xe}}}if(!yr)ai.push(Wi[0],Wi[1],$i[0],$i[1],Wi[2]),Ve+=1;else{if(Le>0){for(var Mi=0;Mi<5;++Mi)ai.pop();Ve-=1}continue e}}}nn.push(Ve)}this._contourOffsets[jr]=bi,this._contourCounts[jr]=nn}var Pi=f.mallocFloat(ai.length);for(nt=0;nt<ai.length;++nt)Pi[nt]=ai[nt];this._contourBuffer.update(Pi),f.freeFloat(Pi)}},G.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 Ce=0;Ce<3;++Ce)f.freeFloat(this._field[Ce].data)},G.highlight=function(Ce){var me;if(!Ce){this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],this.highlightLevel=[-1,-1,-1];return}for(me=0;me<3;++me)this.enableHighlight[me]?this.highlightLevel[me]=Ce.level[me]:this.highlightLevel[me]=-1;var Re;for(this.snapToData?Re=Ce.dataCoordinate:Re=Ce.position,me=0;me<3;++me)Re[me]-=this.objectOffset[me];if(!((!this.enableDynamic[0]||Re[0]===this.dynamicLevel[0])&&(!this.enableDynamic[1]||Re[1]===this.dynamicLevel[1])&&(!this.enableDynamic[2]||Re[2]===this.dynamicLevel[2]))){for(var ce=0,Ge=this.shape,nt=f.mallocFloat(12*Ge[0]*Ge[1]),ct=0;ct<3;++ct){if(!this.enableDynamic[ct]){this.dynamicLevel[ct]=NaN,this._dynamicCounts[ct]=0;continue}this.dynamicLevel[ct]=Re[ct];var qt=(ct+1)%3,rt=(ct+2)%3,ot=this._field[ct],Rt=this._field[qt],kt=this._field[rt],Ct=b(ot,Re[ct]),Yt=Ct.cells,xr=Ct.positions;for(this._dynamicOffsets[ct]=ce,me=0;me<Yt.length;++me)for(var er=Yt[me],Ke=0;Ke<2;++Ke){var xt=xr[er[Ke]],bt=+xt[0],Lt=bt|0,St=Math.min(Lt+1,Ge[0])|0,Et=bt-Lt,dt=1-Et,Ht=+xt[1],$t=Ht|0,fr=Math.min($t+1,Ge[1])|0,_r=Ht-$t,Br=1-_r,Or=dt*Br,Nr=dt*_r,ut=Et*Br,Ne=Et*_r,Ye=Or*Rt.get(Lt,$t)+Nr*Rt.get(Lt,fr)+ut*Rt.get(St,$t)+Ne*Rt.get(St,fr),Ve=Or*kt.get(Lt,$t)+Nr*kt.get(Lt,fr)+ut*kt.get(St,$t)+Ne*kt.get(St,fr);if(isNaN(Ye)||isNaN(Ve)){Ke&&(ce-=1);break}nt[2*ce+0]=Ye,nt[2*ce+1]=Ve,ce+=1}this._dynamicCounts[ct]=ce-this._dynamicOffsets[ct]}this._dynamicBuffer.update(nt.subarray(0,2*ce)),f.freeFloat(nt)}};function ze(Ce){var me=Ce.gl,Re=_(me),ce=M(me),Ge=C(me),nt=g(me),ct=l(me),qt=u(me,[{buffer:ct,size:4,stride:P,offset:0},{buffer:ct,size:3,stride:P,offset:16},{buffer:ct,size:3,stride:P,offset:28}]),rt=l(me),ot=u(me,[{buffer:rt,size:4,stride:20,offset:0},{buffer:rt,size:1,stride:20,offset:16}]),Rt=l(me),kt=u(me,[{buffer:Rt,size:2,type:me.FLOAT}]),Ct=c(me,1,H,me.RGBA,me.UNSIGNED_BYTE);Ct.minFilter=me.LINEAR,Ct.magFilter=me.LINEAR;var Yt=new X(me,[0,0],[[0,0,0],[0,0,0]],Re,ce,ct,qt,Ct,Ge,nt,rt,ot,Rt,kt,[0,0,0]),xr={levels:[[],[],[]]};for(var er in Ce)xr[er]=Ce[er];return xr.colormap=xr.colormap||"jet",Yt.update(xr),Yt}},7766:function(i,a,o){"use strict";var s=o(9618),l=o(5298),u=o(1888);i.exports=g;var c=null,f=null,h=null;function d(P){c=[P.LINEAR,P.NEAREST_MIPMAP_LINEAR,P.LINEAR_MIPMAP_NEAREST,P.LINEAR_MIPMAP_NEAREST],f=[P.NEAREST,P.LINEAR,P.NEAREST_MIPMAP_NEAREST,P.NEAREST_MIPMAP_LINEAR,P.LINEAR_MIPMAP_NEAREST,P.LINEAR_MIPMAP_LINEAR],h=[P.REPEAT,P.CLAMP_TO_EDGE,P.MIRRORED_REPEAT]}function v(P){return typeof HTMLCanvasElement!="undefined"&&P instanceof HTMLCanvasElement||typeof HTMLImageElement!="undefined"&&P instanceof HTMLImageElement||typeof HTMLVideoElement!="undefined"&&P instanceof HTMLVideoElement||typeof ImageData!="undefined"&&P instanceof ImageData}var x=function(P,T){l.muls(P,T,255)};function b(P,T,F){var q=P.gl,V=q.getParameter(q.MAX_TEXTURE_SIZE);if(T<0||T>V||F<0||F>V)throw new Error("gl-texture2d: Invalid texture size");return P._shape=[T,F],P.bind(),q.texImage2D(q.TEXTURE_2D,0,P.format,T,F,0,P.format,P.type,null),P._mipLevels=[0],P}function p(P,T,F,q,V,H){this.gl=P,this.handle=T,this.format=V,this.type=H,this._shape=[F,q],this._mipLevels=[0],this._magFilter=P.NEAREST,this._minFilter=P.NEAREST,this._wrapS=P.CLAMP_TO_EDGE,this._wrapT=P.CLAMP_TO_EDGE,this._anisoSamples=1;var X=this,G=[this._wrapS,this._wrapT];Object.defineProperties(G,[{get:function(){return X._wrapS},set:function(W){return X.wrapS=W}},{get:function(){return X._wrapT},set:function(W){return X.wrapT=W}}]),this._wrapVector=G;var N=[this._shape[0],this._shape[1]];Object.defineProperties(N,[{get:function(){return X._shape[0]},set:function(W){return X.width=W}},{get:function(){return X._shape[1]},set:function(W){return X.height=W}}]),this._shapeVector=N}var E=p.prototype;Object.defineProperties(E,{minFilter:{get:function(){return this._minFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MIN_FILTER,P),this._minFilter=P}},magFilter:{get:function(){return this._magFilter},set:function(P){this.bind();var T=this.gl;if(this.type===T.FLOAT&&c.indexOf(P)>=0&&(T.getExtension("OES_texture_float_linear")||(P=T.NEAREST)),f.indexOf(P)<0)throw new Error("gl-texture2d: Unknown filter mode "+P);return T.texParameteri(T.TEXTURE_2D,T.TEXTURE_MAG_FILTER,P),this._magFilter=P}},mipSamples:{get:function(){return this._anisoSamples},set:function(P){var T=this._anisoSamples;if(this._anisoSamples=Math.max(P,1)|0,T!==this._anisoSamples){var F=this.gl.getExtension("EXT_texture_filter_anisotropic");F&&this.gl.texParameterf(this.gl.TEXTURE_2D,F.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,P),this._wrapS=P}},wrapT:{get:function(){return this._wrapT},set:function(P){if(this.bind(),h.indexOf(P)<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,P),this._wrapT=P}},wrap:{get:function(){return this._wrapVector},set:function(P){if(Array.isArray(P)||(P=[P,P]),P.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var T=0;T<2;++T)if(h.indexOf(P[T])<0)throw new Error("gl-texture2d: Unknown wrap mode "+P);this._wrapS=P[0],this._wrapT=P[1];var F=this.gl;return this.bind(),F.texParameteri(F.TEXTURE_2D,F.TEXTURE_WRAP_S,this._wrapS),F.texParameteri(F.TEXTURE_2D,F.TEXTURE_WRAP_T,this._wrapT),P}},shape:{get:function(){return this._shapeVector},set:function(P){if(!Array.isArray(P))P=[P|0,P|0];else if(P.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return b(this,P[0]|0,P[1]|0),[P[0]|0,P[1]|0]}},width:{get:function(){return this._shape[0]},set:function(P){return P=P|0,b(this,P,this._shape[1]),P}},height:{get:function(){return this._shape[1]},set:function(P){return P=P|0,b(this,this._shape[0],P),P}}}),E.bind=function(P){var T=this.gl;return P!==void 0&&T.activeTexture(T.TEXTURE0+(P|0)),T.bindTexture(T.TEXTURE_2D,this.handle),P!==void 0?P|0:T.getParameter(T.ACTIVE_TEXTURE)-T.TEXTURE0},E.dispose=function(){this.gl.deleteTexture(this.handle)},E.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var P=Math.min(this._shape[0],this._shape[1]),T=0;P>0;++T,P>>>=1)this._mipLevels.indexOf(T)<0&&this._mipLevels.push(T)},E.setPixels=function(P,T,F,q){var V=this.gl;this.bind(),Array.isArray(T)?(q=F,F=T[1]|0,T=T[0]|0):(T=T||0,F=F||0),q=q||0;var H=v(P)?P:P.raw;if(H){var X=this._mipLevels.indexOf(q)<0;X?(V.texImage2D(V.TEXTURE_2D,0,this.format,this.format,this.type,H),this._mipLevels.push(q)):V.texSubImage2D(V.TEXTURE_2D,q,T,F,this.format,this.type,H)}else if(P.shape&&P.stride&&P.data){if(P.shape.length<2||T+P.shape[1]>this._shape[1]>>>q||F+P.shape[0]>this._shape[0]>>>q||T<0||F<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");A(V,T,F,q,this.format,this.type,this._mipLevels,P)}else throw new Error("gl-texture2d: Unsupported data type")};function k(P,T){return P.length===3?T[2]===1&&T[1]===P[0]*P[2]&&T[0]===P[2]:T[0]===1&&T[1]===P[0]}function A(P,T,F,q,V,H,X,G){var N=G.dtype,W=G.shape.slice();if(W.length<2||W.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var re=0,ae=0,_e=k(W,G.stride.slice());N==="float32"?re=P.FLOAT:N==="float64"?(re=P.FLOAT,_e=!1,N="float32"):N==="uint8"?re=P.UNSIGNED_BYTE:(re=P.UNSIGNED_BYTE,_e=!1,N="uint8");var Me=1;if(W.length===2)ae=P.LUMINANCE,W=[W[0],W[1],1],G=s(G.data,W,[G.stride[0],G.stride[1],1],G.offset);else if(W.length===3){if(W[2]===1)ae=P.ALPHA;else if(W[2]===2)ae=P.LUMINANCE_ALPHA;else if(W[2]===3)ae=P.RGB;else if(W[2]===4)ae=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");Me=W[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((ae===P.LUMINANCE||ae===P.ALPHA)&&(V===P.LUMINANCE||V===P.ALPHA)&&(ae=V),ae!==V)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var ke=G.size,ge=X.indexOf(q)<0;if(ge&&X.push(q),re===H&&_e)G.offset===0&&G.data.length===ke?ge?P.texImage2D(P.TEXTURE_2D,q,V,W[0],W[1],0,V,H,G.data):P.texSubImage2D(P.TEXTURE_2D,q,T,F,W[0],W[1],V,H,G.data):ge?P.texImage2D(P.TEXTURE_2D,q,V,W[0],W[1],0,V,H,G.data.subarray(G.offset,G.offset+ke)):P.texSubImage2D(P.TEXTURE_2D,q,T,F,W[0],W[1],V,H,G.data.subarray(G.offset,G.offset+ke));else{var ie;H===P.FLOAT?ie=u.mallocFloat32(ke):ie=u.mallocUint8(ke);var Te=s(ie,W,[W[2],W[2]*W[0],1]);re===P.FLOAT&&H===P.UNSIGNED_BYTE?x(Te,G):l.assign(Te,G),ge?P.texImage2D(P.TEXTURE_2D,q,V,W[0],W[1],0,V,H,ie.subarray(0,ke)):P.texSubImage2D(P.TEXTURE_2D,q,T,F,W[0],W[1],V,H,ie.subarray(0,ke)),H===P.FLOAT?u.freeFloat32(ie):u.freeUint8(ie)}}function L(P){var T=P.createTexture();return P.bindTexture(P.TEXTURE_2D,T),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MIN_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_MAG_FILTER,P.NEAREST),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,P.CLAMP_TO_EDGE),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,P.CLAMP_TO_EDGE),T}function _(P,T,F,q,V){var H=P.getParameter(P.MAX_TEXTURE_SIZE);if(T<0||T>H||F<0||F>H)throw new Error("gl-texture2d: Invalid texture shape");if(V===P.FLOAT&&!P.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var X=L(P);return P.texImage2D(P.TEXTURE_2D,0,q,T,F,0,q,V,null),new p(P,X,T,F,q,V)}function C(P,T,F,q,V,H){var X=L(P);return P.texImage2D(P.TEXTURE_2D,0,V,V,H,T),new p(P,X,F,q,V,H)}function M(P,T){var F=T.dtype,q=T.shape.slice(),V=P.getParameter(P.MAX_TEXTURE_SIZE);if(q[0]<0||q[0]>V||q[1]<0||q[1]>V)throw new Error("gl-texture2d: Invalid texture size");var H=k(q,T.stride.slice()),X=0;F==="float32"?X=P.FLOAT:F==="float64"?(X=P.FLOAT,H=!1,F="float32"):F==="uint8"?X=P.UNSIGNED_BYTE:(X=P.UNSIGNED_BYTE,H=!1,F="uint8");var G=0;if(q.length===2)G=P.LUMINANCE,q=[q[0],q[1],1],T=s(T.data,q,[T.stride[0],T.stride[1],1],T.offset);else if(q.length===3)if(q[2]===1)G=P.ALPHA;else if(q[2]===2)G=P.LUMINANCE_ALPHA;else if(q[2]===3)G=P.RGB;else if(q[2]===4)G=P.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");X===P.FLOAT&&!P.getExtension("OES_texture_float")&&(X=P.UNSIGNED_BYTE,H=!1);var N,W,re=T.size;if(H)T.offset===0&&T.data.length===re?N=T.data:N=T.data.subarray(T.offset,T.offset+re);else{var ae=[q[2],q[2]*q[0],1];W=u.malloc(re,F);var _e=s(W,q,ae,0);(F==="float32"||F==="float64")&&X===P.UNSIGNED_BYTE?x(_e,T):l.assign(_e,T),N=W.subarray(0,re)}var Me=L(P);return P.texImage2D(P.TEXTURE_2D,0,G,q[0],q[1],0,G,X,N),H||u.free(W),new p(P,Me,q[0],q[1],G,X)}function g(P){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(c||d(P),typeof arguments[1]=="number")return _(P,arguments[1],arguments[2],arguments[3]||P.RGBA,arguments[4]||P.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return _(P,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var T=arguments[1],F=v(T)?T:T.raw;if(F)return C(P,F,T.width|0,T.height|0,arguments[2]||P.RGBA,arguments[3]||P.UNSIGNED_BYTE);if(T.shape&&T.data&&T.stride)return M(P,T)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},1433:function(i){"use strict";function a(o,s,l){s?s.bind():o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,null);var u=o.getParameter(o.MAX_VERTEX_ATTRIBS)|0;if(l){if(l.length>u)throw new Error("gl-vao: Too many vertex attributes");for(var c=0;c<l.length;++c){var f=l[c];if(f.buffer){var h=f.buffer,d=f.size||4,v=f.type||o.FLOAT,x=!!f.normalized,b=f.stride||0,p=f.offset||0;h.bind(),o.enableVertexAttribArray(c),o.vertexAttribPointer(c,d,v,x,b,p)}else{if(typeof f=="number")o.vertexAttrib1f(c,f);else if(f.length===1)o.vertexAttrib1f(c,f[0]);else if(f.length===2)o.vertexAttrib2f(c,f[0],f[1]);else if(f.length===3)o.vertexAttrib3f(c,f[0],f[1],f[2]);else if(f.length===4)o.vertexAttrib4f(c,f[0],f[1],f[2],f[3]);else throw new Error("gl-vao: Invalid vertex attribute");o.disableVertexAttribArray(c)}}for(;c<u;++c)o.disableVertexAttribArray(c)}else{o.bindBuffer(o.ARRAY_BUFFER,null);for(var c=0;c<u;++c)o.disableVertexAttribArray(c)}}i.exports=a},870:function(i,a,o){"use strict";var s=o(1433);function l(c){this.gl=c,this._elements=null,this._attributes=null,this._elementsType=c.UNSIGNED_SHORT}l.prototype.bind=function(){s(this.gl,this._elements,this._attributes)},l.prototype.update=function(c,f,h){this._elements=f,this._attributes=c,this._elementsType=h||this.gl.UNSIGNED_SHORT},l.prototype.dispose=function(){},l.prototype.unbind=function(){},l.prototype.draw=function(c,f,h){h=h||0;var d=this.gl;this._elements?d.drawElements(c,f,this._elementsType,h):d.drawArrays(c,h,f)};function u(c){return new l(c)}i.exports=u},7518:function(i,a,o){"use strict";var s=o(1433);function l(f,h,d,v,x,b){this.location=f,this.dimension=h,this.a=d,this.b=v,this.c=x,this.d=b}l.prototype.bind=function(f){switch(this.dimension){case 1:f.vertexAttrib1f(this.location,this.a);break;case 2:f.vertexAttrib2f(this.location,this.a,this.b);break;case 3:f.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:f.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function u(f,h,d){this.gl=f,this._ext=h,this.handle=d,this._attribs=[],this._useElements=!1,this._elementsType=f.UNSIGNED_SHORT}u.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var f=0;f<this._attribs.length;++f)this._attribs[f].bind(this.gl)},u.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},u.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},u.prototype.update=function(f,h,d){if(this.bind(),s(this.gl,h,f),this.unbind(),this._attribs.length=0,f)for(var v=0;v<f.length;++v){var x=f[v];typeof x=="number"?this._attribs.push(new l(v,1,x)):Array.isArray(x)&&this._attribs.push(new l(v,x.length,x[0],x[1],x[2],x[3]))}this._useElements=!!h,this._elementsType=d||this.gl.UNSIGNED_SHORT},u.prototype.draw=function(f,h,d){d=d||0;var v=this.gl;this._useElements?v.drawElements(f,h,this._elementsType,d):v.drawArrays(f,d,h)};function c(f,h){return new u(f,h,h.createVertexArrayOES())}i.exports=c},8116:function(i,a,o){"use strict";var s=o(7518),l=o(870);function u(f){this.bindVertexArrayOES=f.bindVertexArray.bind(f),this.createVertexArrayOES=f.createVertexArray.bind(f),this.deleteVertexArrayOES=f.deleteVertexArray.bind(f)}function c(f,h,d,v){var x=f.createVertexArray?new u(f):f.getExtension("OES_vertex_array_object"),b;return x?b=s(f,x):b=l(f),b.update(h,d,v),b}i.exports=c},5632:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]+l[0],o[1]=s[1]+l[1],o[2]=s[2]+l[2],o}},8192:function(i,a,o){i.exports=c;var s=o(2825),l=o(3536),u=o(244);function c(f,h){var d=s(f[0],f[1],f[2]),v=s(h[0],h[1],h[2]);l(d,d),l(v,v);var x=u(d,v);return x>1?0:Math.acos(x)}},9226:function(i){i.exports=a;function a(o,s){return o[0]=Math.ceil(s[0]),o[1]=Math.ceil(s[1]),o[2]=Math.ceil(s[2]),o}},3126:function(i){i.exports=a;function a(o){var s=new Float32Array(3);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s}},3990:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o}},1091:function(i){i.exports=a;function a(){var o=new Float32Array(3);return o[0]=0,o[1]=0,o[2]=0,o}},5911:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2];return o[0]=c*v-f*d,o[1]=f*h-u*v,o[2]=u*d-c*h,o}},5455:function(i,a,o){i.exports=o(7056)},7056:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2];return Math.sqrt(l*l+u*u+c*c)}},4008:function(i,a,o){i.exports=o(6690)},6690:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]/l[0],o[1]=s[1]/l[1],o[2]=s[2]/l[2],o}},244:function(i){i.exports=a;function a(o,s){return o[0]*s[0]+o[1]*s[1]+o[2]*s[2]}},2613:function(i){i.exports=1e-6},9922:function(i,a,o){i.exports=l;var s=o(2613);function l(u,c){var f=u[0],h=u[1],d=u[2],v=c[0],x=c[1],b=c[2];return Math.abs(f-v)<=s*Math.max(1,Math.abs(f),Math.abs(v))&&Math.abs(h-x)<=s*Math.max(1,Math.abs(h),Math.abs(x))&&Math.abs(d-b)<=s*Math.max(1,Math.abs(d),Math.abs(b))}},9265:function(i){i.exports=a;function a(o,s){return o[0]===s[0]&&o[1]===s[1]&&o[2]===s[2]}},2681:function(i){i.exports=a;function a(o,s){return o[0]=Math.floor(s[0]),o[1]=Math.floor(s[1]),o[2]=Math.floor(s[2]),o}},5137:function(i,a,o){i.exports=l;var s=o(1091)();function l(u,c,f,h,d,v){var x,b;for(c||(c=3),f||(f=0),h?b=Math.min(h*c+f,u.length):b=u.length,x=f;x<b;x+=c)s[0]=u[x],s[1]=u[x+1],s[2]=u[x+2],d(s,s,v),u[x]=s[0],u[x+1]=s[1],u[x+2]=s[2];return u}},2825:function(i){i.exports=a;function a(o,s,l){var u=new Float32Array(3);return u[0]=o,u[1]=s,u[2]=l,u}},2931:function(i,a,o){i.exports={EPSILON:o(2613),create:o(1091),clone:o(3126),angle:o(8192),fromValues:o(2825),copy:o(3990),set:o(1463),equals:o(9922),exactEquals:o(9265),add:o(5632),subtract:o(6843),sub:o(2229),multiply:o(5847),mul:o(4505),divide:o(6690),div:o(4008),min:o(8107),max:o(7417),floor:o(2681),ceil:o(9226),round:o(2447),scale:o(6621),scaleAndAdd:o(8489),distance:o(7056),dist:o(5455),squaredDistance:o(2953),sqrDist:o(6141),length:o(1387),len:o(868),squaredLength:o(3066),sqrLen:o(5486),negate:o(5093),inverse:o(811),normalize:o(3536),dot:o(244),cross:o(5911),lerp:o(6658),random:o(7636),transformMat4:o(5673),transformMat3:o(492),transformQuat:o(264),rotateX:o(6894),rotateY:o(109),rotateZ:o(8692),forEach:o(5137)}},811:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o}},868:function(i,a,o){i.exports=o(1387)},1387:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2];return Math.sqrt(s*s+l*l+u*u)}},6658:function(i){i.exports=a;function a(o,s,l,u){var c=s[0],f=s[1],h=s[2];return o[0]=c+u*(l[0]-c),o[1]=f+u*(l[1]-f),o[2]=h+u*(l[2]-h),o}},7417:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.max(s[0],l[0]),o[1]=Math.max(s[1],l[1]),o[2]=Math.max(s[2],l[2]),o}},8107:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o}},4505:function(i,a,o){i.exports=o(5847)},5847:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l[0],o[1]=s[1]*l[1],o[2]=s[2]*l[2],o}},5093:function(i){i.exports=a;function a(o,s){return o[0]=-s[0],o[1]=-s[1],o[2]=-s[2],o}},3536:function(i){i.exports=a;function a(o,s){var l=s[0],u=s[1],c=s[2],f=l*l+u*u+c*c;return f>0&&(f=1/Math.sqrt(f),o[0]=s[0]*f,o[1]=s[1]*f,o[2]=s[2]*f),o}},7636:function(i){i.exports=a;function a(o,s){s=s||1;var l=Math.random()*2*Math.PI,u=Math.random()*2-1,c=Math.sqrt(1-u*u)*s;return o[0]=Math.cos(l)*c,o[1]=Math.sin(l)*c,o[2]=u*s,o}},6894:function(i){i.exports=a;function a(o,s,l,u){var c=l[1],f=l[2],h=s[1]-c,d=s[2]-f,v=Math.sin(u),x=Math.cos(u);return o[0]=s[0],o[1]=c+h*x-d*v,o[2]=f+h*v+d*x,o}},109:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[2],h=s[0]-c,d=s[2]-f,v=Math.sin(u),x=Math.cos(u);return o[0]=c+d*v+h*x,o[1]=s[1],o[2]=f+d*x-h*v,o}},8692:function(i){i.exports=a;function a(o,s,l,u){var c=l[0],f=l[1],h=s[0]-c,d=s[1]-f,v=Math.sin(u),x=Math.cos(u);return o[0]=c+h*x-d*v,o[1]=f+h*v+d*x,o[2]=s[2],o}},2447:function(i){i.exports=a;function a(o,s){return o[0]=Math.round(s[0]),o[1]=Math.round(s[1]),o[2]=Math.round(s[2]),o}},6621:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o}},8489:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s[0]+l[0]*u,o[1]=s[1]+l[1]*u,o[2]=s[2]+l[2]*u,o}},1463:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s,o[1]=l,o[2]=u,o}},6141:function(i,a,o){i.exports=o(2953)},5486:function(i,a,o){i.exports=o(3066)},2953:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2];return l*l+u*u+c*c}},3066:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2];return s*s+l*l+u*u}},2229:function(i,a,o){i.exports=o(6843)},6843:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]-l[0],o[1]=s[1]-l[1],o[2]=s[2]-l[2],o}},492:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2];return o[0]=u*l[0]+c*l[3]+f*l[6],o[1]=u*l[1]+c*l[4]+f*l[7],o[2]=u*l[2]+c*l[5]+f*l[8],o}},5673:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[3]*u+l[7]*c+l[11]*f+l[15];return h=h||1,o[0]=(l[0]*u+l[4]*c+l[8]*f+l[12])/h,o[1]=(l[1]*u+l[5]*c+l[9]*f+l[13])/h,o[2]=(l[2]*u+l[6]*c+l[10]*f+l[14])/h,o}},264:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2],x=l[3],b=x*u+d*f-v*c,p=x*c+v*u-h*f,E=x*f+h*c-d*u,k=-h*u-d*c-v*f;return o[0]=b*x+k*-h+p*-v-E*-d,o[1]=p*x+k*-d+E*-h-b*-v,o[2]=E*x+k*-v+b*-d-p*-h,o}},4361:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]+l[0],o[1]=s[1]+l[1],o[2]=s[2]+l[2],o[3]=s[3]+l[3],o}},2335:function(i){i.exports=a;function a(o){var s=new Float32Array(4);return s[0]=o[0],s[1]=o[1],s[2]=o[2],s[3]=o[3],s}},2933:function(i){i.exports=a;function a(o,s){return o[0]=s[0],o[1]=s[1],o[2]=s[2],o[3]=s[3],o}},7536:function(i){i.exports=a;function a(){var o=new Float32Array(4);return o[0]=0,o[1]=0,o[2]=0,o[3]=0,o}},4691:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2],f=s[3]-o[3];return Math.sqrt(l*l+u*u+c*c+f*f)}},1373:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]/l[0],o[1]=s[1]/l[1],o[2]=s[2]/l[2],o[3]=s[3]/l[3],o}},3750:function(i){i.exports=a;function a(o,s){return o[0]*s[0]+o[1]*s[1]+o[2]*s[2]+o[3]*s[3]}},3390:function(i){i.exports=a;function a(o,s,l,u){var c=new Float32Array(4);return c[0]=o,c[1]=s,c[2]=l,c[3]=u,c}},9970:function(i,a,o){i.exports={create:o(7536),clone:o(2335),fromValues:o(3390),copy:o(2933),set:o(4578),add:o(4361),subtract:o(6860),multiply:o(3576),divide:o(1373),min:o(2334),max:o(160),scale:o(9288),scaleAndAdd:o(4844),distance:o(4691),squaredDistance:o(7960),length:o(6808),squaredLength:o(483),negate:o(1498),inverse:o(4494),normalize:o(5177),dot:o(3750),lerp:o(2573),random:o(9131),transformMat4:o(5352),transformQuat:o(4041)}},4494:function(i){i.exports=a;function a(o,s){return o[0]=1/s[0],o[1]=1/s[1],o[2]=1/s[2],o[3]=1/s[3],o}},6808:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2],c=o[3];return Math.sqrt(s*s+l*l+u*u+c*c)}},2573:function(i){i.exports=a;function a(o,s,l,u){var c=s[0],f=s[1],h=s[2],d=s[3];return o[0]=c+u*(l[0]-c),o[1]=f+u*(l[1]-f),o[2]=h+u*(l[2]-h),o[3]=d+u*(l[3]-d),o}},160:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.max(s[0],l[0]),o[1]=Math.max(s[1],l[1]),o[2]=Math.max(s[2],l[2]),o[3]=Math.max(s[3],l[3]),o}},2334:function(i){i.exports=a;function a(o,s,l){return o[0]=Math.min(s[0],l[0]),o[1]=Math.min(s[1],l[1]),o[2]=Math.min(s[2],l[2]),o[3]=Math.min(s[3],l[3]),o}},3576:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l[0],o[1]=s[1]*l[1],o[2]=s[2]*l[2],o[3]=s[3]*l[3],o}},1498:function(i){i.exports=a;function a(o,s){return o[0]=-s[0],o[1]=-s[1],o[2]=-s[2],o[3]=-s[3],o}},5177:function(i){i.exports=a;function a(o,s){var l=s[0],u=s[1],c=s[2],f=s[3],h=l*l+u*u+c*c+f*f;return h>0&&(h=1/Math.sqrt(h),o[0]=l*h,o[1]=u*h,o[2]=c*h,o[3]=f*h),o}},9131:function(i,a,o){var s=o(5177),l=o(9288);i.exports=u;function u(c,f){return f=f||1,c[0]=Math.random(),c[1]=Math.random(),c[2]=Math.random(),c[3]=Math.random(),s(c,c),l(c,c,f),c}},9288:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]*l,o[1]=s[1]*l,o[2]=s[2]*l,o[3]=s[3]*l,o}},4844:function(i){i.exports=a;function a(o,s,l,u){return o[0]=s[0]+l[0]*u,o[1]=s[1]+l[1]*u,o[2]=s[2]+l[2]*u,o[3]=s[3]+l[3]*u,o}},4578:function(i){i.exports=a;function a(o,s,l,u,c){return o[0]=s,o[1]=l,o[2]=u,o[3]=c,o}},7960:function(i){i.exports=a;function a(o,s){var l=s[0]-o[0],u=s[1]-o[1],c=s[2]-o[2],f=s[3]-o[3];return l*l+u*u+c*c+f*f}},483:function(i){i.exports=a;function a(o){var s=o[0],l=o[1],u=o[2],c=o[3];return s*s+l*l+u*u+c*c}},6860:function(i){i.exports=a;function a(o,s,l){return o[0]=s[0]-l[0],o[1]=s[1]-l[1],o[2]=s[2]-l[2],o[3]=s[3]-l[3],o}},5352:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=s[3];return o[0]=l[0]*u+l[4]*c+l[8]*f+l[12]*h,o[1]=l[1]*u+l[5]*c+l[9]*f+l[13]*h,o[2]=l[2]*u+l[6]*c+l[10]*f+l[14]*h,o[3]=l[3]*u+l[7]*c+l[11]*f+l[15]*h,o}},4041:function(i){i.exports=a;function a(o,s,l){var u=s[0],c=s[1],f=s[2],h=l[0],d=l[1],v=l[2],x=l[3],b=x*u+d*f-v*c,p=x*c+v*u-h*f,E=x*f+h*c-d*u,k=-h*u-d*c-v*f;return o[0]=b*x+k*-h+p*-v-E*-d,o[1]=p*x+k*-d+E*-h-b*-v,o[2]=E*x+k*-v+b*-d-p*-h,o[3]=s[3],o}},1848:function(i,a,o){var s=o(4905),l=o(6468);i.exports=u;function u(c){for(var f=Array.isArray(c)?c:s(c),h=0;h<f.length;h++){var d=f[h];if(d.type==="preprocessor"){var v=d.data.match(/\#define\s+SHADER_NAME(_B64)?\s+(.+)$/);if(v&&v[2]){var x=v[1],b=v[2];return(x?l(b):b).trim()}}}}},5874:function(i,a,o){i.exports=T;var s=o(620),l=o(7827),u=o(6852),c=o(7932),f=o(3508),h=999,d=9999,v=0,x=1,b=2,p=3,E=4,k=5,A=6,L=7,_=8,C=9,M=10,g=11,P=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"];function T(F){var q=0,V=0,H=h,X,G,N=[],W=[],re=0,ae=0,_e=1,Me=0,ke=0,ge=!1,ie=!1,Te="",Ee;F=F||{};var Ae=u,ze=s;F.version==="300 es"&&(Ae=f,ze=c);for(var Ce={},me={},q=0;q<Ae.length;q++)Ce[Ae[q]]=!0;for(var q=0;q<ze.length;q++)me[ze[q]]=!0;return function(Ke){return W=[],Ke!==null?ce(Ke):Ge()};function Re(Ke){Ke.length&&W.push({type:P[H],data:Ke,position:ke,line:_e,column:Me})}function ce(Ke){q=0,Ke.toString&&(Ke=Ke.toString()),Te+=Ke.replace(/\r\n/g,`
+`),Ee=Te.length;for(var xt;X=Te[q],q<Ee;){switch(xt=q,H){case v:q=ot();break;case x:q=rt();break;case b:q=qt();break;case p:q=Rt();break;case E:q=Yt();break;case g:q=Ct();break;case k:q=xr();break;case d:q=er();break;case C:q=ct();break;case h:q=nt();break}if(xt!==q)switch(Te[xt]){case`
+`:Me=0,++_e;break;default:++Me;break}}return V+=q,Te=Te.slice(q),W}function Ge(Ke){return N.length&&Re(N.join("")),H=M,Re("(eof)"),W}function nt(){return N=N.length?[]:N,G==="/"&&X==="*"?(ke=V+q-1,H=v,G=X,q+1):G==="/"&&X==="/"?(ke=V+q-1,H=x,G=X,q+1):X==="#"?(H=b,ke=V+q,q):/\s/.test(X)?(H=C,ke=V+q,q):(ge=/\d/.test(X),ie=/[^\w_]/.test(X),ke=V+q,H=ge?E:ie?p:d,q)}function ct(){return/[^\s]/g.test(X)?(Re(N.join("")),H=h,q):(N.push(X),G=X,q+1)}function qt(){return(X==="\r"||X===`
+`)&&G!=="\\"?(Re(N.join("")),H=h,q):(N.push(X),G=X,q+1)}function rt(){return qt()}function ot(){return X==="/"&&G==="*"?(N.push(X),Re(N.join("")),H=h,q+1):(N.push(X),G=X,q+1)}function Rt(){if(G==="."&&/\d/.test(X))return H=k,q;if(G==="/"&&X==="*")return H=v,q;if(G==="/"&&X==="/")return H=x,q;if(X==="."&&N.length){for(;kt(N););return H=k,q}if(X===";"||X===")"||X==="("){if(N.length)for(;kt(N););return Re(X),H=h,q+1}var Ke=N.length===2&&X!=="=";if(/[\w_\d\s]/.test(X)||Ke){for(;kt(N););return H=h,q}return N.push(X),G=X,q+1}function kt(Ke){var xt=0,bt,Lt;do{if(bt=l.indexOf(Ke.slice(0,Ke.length+xt).join("")),Lt=l[bt],bt===-1){if(xt--+Ke.length>0)continue;Lt=Ke.slice(0,1).join("")}return Re(Lt),ke+=Lt.length,N=N.slice(Lt.length),N.length}while(!0)}function Ct(){return/[^a-fA-F0-9]/.test(X)?(Re(N.join("")),H=h,q):(N.push(X),G=X,q+1)}function Yt(){return X==="."||/[eE]/.test(X)?(N.push(X),H=k,G=X,q+1):X==="x"&&N.length===1&&N[0]==="0"?(H=g,N.push(X),G=X,q+1):/[^\d]/.test(X)?(Re(N.join("")),H=h,q):(N.push(X),G=X,q+1)}function xr(){return X==="f"&&(N.push(X),G=X,q+=1),/[eE]/.test(X)||(X==="-"||X==="+")&&/[eE]/.test(G)?(N.push(X),G=X,q+1):/[^\d]/.test(X)?(Re(N.join("")),H=h,q):(N.push(X),G=X,q+1)}function er(){if(/[^\d\w_]/.test(X)){var Ke=N.join("");return me[Ke]?H=_:Ce[Ke]?H=L:H=A,Re(N.join("")),H=h,q}return N.push(X),G=X,q+1}}},3508:function(i,a,o){var s=o(6852);s=s.slice().filter(function(l){return!/^(gl\_|texture)/.test(l)}),i.exports=s.concat(["gl_VertexID","gl_InstanceID","gl_Position","gl_PointSize","gl_FragCoord","gl_FrontFacing","gl_FragDepth","gl_PointCoord","gl_MaxVertexAttribs","gl_MaxVertexUniformVectors","gl_MaxVertexOutputVectors","gl_MaxFragmentInputVectors","gl_MaxVertexTextureImageUnits","gl_MaxCombinedTextureImageUnits","gl_MaxTextureImageUnits","gl_MaxFragmentUniformVectors","gl_MaxDrawBuffers","gl_MinProgramTexelOffset","gl_MaxProgramTexelOffset","gl_DepthRangeParameters","gl_DepthRange","trunc","round","roundEven","isnan","isinf","floatBitsToInt","floatBitsToUint","intBitsToFloat","uintBitsToFloat","packSnorm2x16","unpackSnorm2x16","packUnorm2x16","unpackUnorm2x16","packHalf2x16","unpackHalf2x16","outerProduct","transpose","determinant","inverse","texture","textureSize","textureProj","textureLod","textureOffset","texelFetch","texelFetchOffset","textureProjOffset","textureLodOffset","textureProjLod","textureProjLodOffset","textureGrad","textureGradOffset","textureProjGrad","textureProjGradOffset"])},6852:function(i){i.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"]},7932:function(i,a,o){var s=o(620);i.exports=s.slice().concat(["layout","centroid","smooth","case","mat2x2","mat2x3","mat2x4","mat3x2","mat3x3","mat3x4","mat4x2","mat4x3","mat4x4","uvec2","uvec3","uvec4","samplerCubeShadow","sampler2DArray","sampler2DArrayShadow","isampler2D","isampler3D","isamplerCube","isampler2DArray","usampler2D","usampler3D","usamplerCube","usampler2DArray","coherent","restrict","readonly","writeonly","resource","atomic_uint","noperspective","patch","sample","subroutine","common","partition","active","filter","image1D","image2D","image3D","imageCube","iimage1D","iimage2D","iimage3D","iimageCube","uimage1D","uimage2D","uimage3D","uimageCube","image1DArray","image2DArray","iimage1DArray","iimage2DArray","uimage1DArray","uimage2DArray","image1DShadow","image2DShadow","image1DArrayShadow","image2DArrayShadow","imageBuffer","iimageBuffer","uimageBuffer","sampler1DArray","sampler1DArrayShadow","isampler1D","isampler1DArray","usampler1D","usampler1DArray","isampler2DRect","usampler2DRect","samplerBuffer","isamplerBuffer","usamplerBuffer","sampler2DMS","isampler2DMS","usampler2DMS","sampler2DMSArray","isampler2DMSArray","usampler2DMSArray"])},620:function(i){i.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"]},7827:function(i){i.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(i,a,o){var s=o(5874);i.exports=l;function l(u,c){var f=s(c),h=[];return h=h.concat(f(u)),h=h.concat(f(null)),h}},3236:function(i){i.exports=function(a){typeof a=="string"&&(a=[a]);for(var o=[].slice.call(arguments,1),s=[],l=0;l<a.length-1;l++)s.push(a[l],o[l]||"");return s.push(a[l]),s.join("")}},7520:function(i,a,o){"use strict";var s=o(9507);function l(){var u=!1;try{var c=Object.defineProperty({},"passive",{get:function(){u=!0}});window.addEventListener("test",null,c),window.removeEventListener("test",null,c)}catch(f){u=!1}return u}i.exports=s&&l()},3778:function(i,a){a.read=function(o,s,l,u,c){var f,h,d=c*8-u-1,v=(1<<d)-1,x=v>>1,b=-7,p=l?c-1:0,E=l?-1:1,k=o[s+p];for(p+=E,f=k&(1<<-b)-1,k>>=-b,b+=d;b>0;f=f*256+o[s+p],p+=E,b-=8);for(h=f&(1<<-b)-1,f>>=-b,b+=u;b>0;h=h*256+o[s+p],p+=E,b-=8);if(f===0)f=1-x;else{if(f===v)return h?NaN:(k?-1:1)*(1/0);h=h+Math.pow(2,u),f=f-x}return(k?-1:1)*h*Math.pow(2,f-u)},a.write=function(o,s,l,u,c,f){var h,d,v,x=f*8-c-1,b=(1<<x)-1,p=b>>1,E=c===23?Math.pow(2,-24)-Math.pow(2,-77):0,k=u?0:f-1,A=u?1:-1,L=s<0||s===0&&1/s<0?1:0;for(s=Math.abs(s),isNaN(s)||s===1/0?(d=isNaN(s)?1:0,h=b):(h=Math.floor(Math.log(s)/Math.LN2),s*(v=Math.pow(2,-h))<1&&(h--,v*=2),h+p>=1?s+=E/v:s+=E*Math.pow(2,1-p),s*v>=2&&(h++,v/=2),h+p>=b?(d=0,h=b):h+p>=1?(d=(s*v-1)*Math.pow(2,c),h=h+p):(d=s*Math.pow(2,p-1)*Math.pow(2,c),h=0));c>=8;o[l+k]=d&255,k+=A,d/=256,c-=8);for(h=h<<c|d,x+=c;x>0;o[l+k]=h&255,k+=A,h/=256,x-=8);o[l+k-A]|=L*128}},8954:function(i,a,o){"use strict";i.exports=p;var s=o(3250),l=o(6803).Fw;function u(E,k,A){this.vertices=E,this.adjacent=k,this.boundary=A,this.lastVisited=-1}u.prototype.flip=function(){var E=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=E;var k=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=k};function c(E,k,A){this.vertices=E,this.cell=k,this.index=A}function f(E,k){return l(E.vertices,k.vertices)}function h(E){return function(){var k=this.tuple;return E.apply(this,k)}}function d(E){var k=s[E+1];return k||(k=s),h(k)}var v=[];function x(E,k,A){this.dimension=E,this.vertices=k,this.simplices=A,this.interior=A.filter(function(C){return!C.boundary}),this.tuple=new Array(E+1);for(var L=0;L<=E;++L)this.tuple[L]=this.vertices[L];var _=v[E];_||(_=v[E]=d(E)),this.orient=_}var b=x.prototype;b.handleBoundaryDegeneracy=function(E,k){var A=this.dimension,L=this.vertices.length-1,_=this.tuple,C=this.vertices,M=[E];for(E.lastVisited=-L;M.length>0;){E=M.pop();for(var g=E.adjacent,P=0;P<=A;++P){var T=g[P];if(!(!T.boundary||T.lastVisited<=-L)){for(var F=T.vertices,q=0;q<=A;++q){var V=F[q];V<0?_[q]=k:_[q]=C[V]}var H=this.orient();if(H>0)return T;T.lastVisited=-L,H===0&&M.push(T)}}}return null},b.walk=function(E,k){var A=this.vertices.length-1,L=this.dimension,_=this.vertices,C=this.tuple,M=k?this.interior.length*Math.random()|0:this.interior.length-1,g=this.interior[M];e:for(;!g.boundary;){for(var P=g.vertices,T=g.adjacent,F=0;F<=L;++F)C[F]=_[P[F]];g.lastVisited=A;for(var F=0;F<=L;++F){var q=T[F];if(!(q.lastVisited>=A)){var V=C[F];C[F]=E;var H=this.orient();if(C[F]=V,H<0){g=q;continue e}else q.boundary?q.lastVisited=-A:q.lastVisited=A}}return}return g},b.addPeaks=function(E,k){var A=this.vertices.length-1,L=this.dimension,_=this.vertices,C=this.tuple,M=this.interior,g=this.simplices,P=[k];k.lastVisited=A,k.vertices[k.vertices.indexOf(-1)]=A,k.boundary=!1,M.push(k);for(var T=[];P.length>0;){var k=P.pop(),F=k.vertices,q=k.adjacent,V=F.indexOf(A);if(!(V<0)){for(var H=0;H<=L;++H)if(H!==V){var X=q[H];if(!(!X.boundary||X.lastVisited>=A)){var G=X.vertices;if(X.lastVisited!==-A){for(var N=0,W=0;W<=L;++W)G[W]<0?(N=W,C[W]=E):C[W]=_[G[W]];var re=this.orient();if(re>0){G[N]=A,X.boundary=!1,M.push(X),P.push(X),X.lastVisited=A;continue}else X.lastVisited=-A}var ae=X.adjacent,_e=F.slice(),Me=q.slice(),ke=new u(_e,Me,!0);g.push(ke);var ge=ae.indexOf(k);if(!(ge<0)){ae[ge]=ke,Me[V]=X,_e[H]=-1,Me[H]=k,q[H]=ke,ke.flip();for(var W=0;W<=L;++W){var ie=_e[W];if(!(ie<0||ie===A)){for(var Te=new Array(L-1),Ee=0,Ae=0;Ae<=L;++Ae){var ze=_e[Ae];ze<0||Ae===W||(Te[Ee++]=ze)}T.push(new c(Te,ke,W))}}}}}}}T.sort(f);for(var H=0;H+1<T.length;H+=2){var Ce=T[H],me=T[H+1],Re=Ce.index,ce=me.index;Re<0||ce<0||(Ce.cell.adjacent[Ce.index]=me.cell,me.cell.adjacent[me.index]=Ce.cell)}},b.insert=function(E,k){var A=this.vertices;A.push(E);var L=this.walk(E,k);if(L){for(var _=this.dimension,C=this.tuple,M=0;M<=_;++M){var g=L.vertices[M];g<0?C[M]=E:C[M]=A[g]}var P=this.orient(C);P<0||P===0&&(L=this.handleBoundaryDegeneracy(L,E),!L)||this.addPeaks(E,L)}},b.boundary=function(){for(var E=this.dimension,k=[],A=this.simplices,L=A.length,_=0;_<L;++_){var C=A[_];if(C.boundary){for(var M=new Array(E),g=C.vertices,P=0,T=0,F=0;F<=E;++F)g[F]>=0?M[P++]=g[F]:T=F&1;if(T===(E&1)){var q=M[0];M[0]=M[1],M[1]=q}k.push(M)}}return k};function p(E,k){var A=E.length;if(A===0)throw new Error("Must have at least d+1 points");var L=E[0].length;if(A<=L)throw new Error("Must input at least d+1 points");var _=E.slice(0,L+1),C=s.apply(void 0,_);if(C===0)throw new Error("Input not in general position");for(var M=new Array(L+1),g=0;g<=L;++g)M[g]=g;C<0&&(M[0]=1,M[1]=0);for(var P=new u(M,new Array(L+1),!1),T=P.adjacent,F=new Array(L+2),g=0;g<=L;++g){for(var q=M.slice(),V=0;V<=L;++V)V===g&&(q[V]=-1);var H=q[0];q[0]=q[1],q[1]=H;var X=new u(q,new Array(L+1),!0);T[g]=X,F[g]=X}F[L+1]=P;for(var g=0;g<=L;++g)for(var q=T[g].vertices,G=T[g].adjacent,V=0;V<=L;++V){var N=q[V];if(N<0){G[V]=P;continue}for(var W=0;W<=L;++W)T[W].vertices.indexOf(N)<0&&(G[V]=T[W])}for(var re=new x(L,_,F),ae=!!k,g=L+1;g<A;++g)re.insert(E[g],ae);return re.boundary()}},3352:function(i,a,o){"use strict";var s=o(2478),l=0,u=1,c=2;i.exports=P;function f(T,F,q,V,H){this.mid=T,this.left=F,this.right=q,this.leftPoints=V,this.rightPoints=H,this.count=(F?F.count:0)+(q?q.count:0)+V.length}var h=f.prototype;function d(T,F){T.mid=F.mid,T.left=F.left,T.right=F.right,T.leftPoints=F.leftPoints,T.rightPoints=F.rightPoints,T.count=F.count}function v(T,F){var q=C(F);T.mid=q.mid,T.left=q.left,T.right=q.right,T.leftPoints=q.leftPoints,T.rightPoints=q.rightPoints,T.count=q.count}function x(T,F){var q=T.intervals([]);q.push(F),v(T,q)}function b(T,F){var q=T.intervals([]),V=q.indexOf(F);return V<0?l:(q.splice(V,1),v(T,q),u)}h.intervals=function(T){return T.push.apply(T,this.leftPoints),this.left&&this.left.intervals(T),this.right&&this.right.intervals(T),T},h.insert=function(T){var F=this.count-this.leftPoints.length;if(this.count+=1,T[1]<this.mid)this.left?4*(this.left.count+1)>3*(F+1)?x(this,T):this.left.insert(T):this.left=C([T]);else if(T[0]>this.mid)this.right?4*(this.right.count+1)>3*(F+1)?x(this,T):this.right.insert(T):this.right=C([T]);else{var q=s.ge(this.leftPoints,T,L),V=s.ge(this.rightPoints,T,_);this.leftPoints.splice(q,0,T),this.rightPoints.splice(V,0,T)}},h.remove=function(T){var F=this.count-this.leftPoints;if(T[1]<this.mid){if(!this.left)return l;var q=this.right?this.right.count:0;if(4*q>3*(F-1))return b(this,T);var V=this.left.remove(T);return V===c?(this.left=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else if(T[0]>this.mid){if(!this.right)return l;var H=this.left?this.left.count:0;if(4*H>3*(F-1))return b(this,T);var V=this.right.remove(T);return V===c?(this.right=null,this.count-=1,u):(V===u&&(this.count-=1),V)}else{if(this.count===1)return this.leftPoints[0]===T?c:l;if(this.leftPoints.length===1&&this.leftPoints[0]===T){if(this.left&&this.right){for(var X=this,G=this.left;G.right;)X=G,G=G.right;if(X===this)G.right=this.right;else{var N=this.left,V=this.right;X.count-=G.count,X.right=G.left,G.left=N,G.right=V}d(this,G),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?d(this,this.left):d(this,this.right);return u}for(var N=s.ge(this.leftPoints,T,L);N<this.leftPoints.length&&this.leftPoints[N][0]===T[0];++N)if(this.leftPoints[N]===T){this.count-=1,this.leftPoints.splice(N,1);for(var V=s.ge(this.rightPoints,T,_);V<this.rightPoints.length&&this.rightPoints[V][1]===T[1];++V)if(this.rightPoints[V]===T)return this.rightPoints.splice(V,1),u}return l}};function p(T,F,q){for(var V=0;V<T.length&&T[V][0]<=F;++V){var H=q(T[V]);if(H)return H}}function E(T,F,q){for(var V=T.length-1;V>=0&&T[V][1]>=F;--V){var H=q(T[V]);if(H)return H}}function k(T,F){for(var q=0;q<T.length;++q){var V=F(T[q]);if(V)return V}}h.queryPoint=function(T,F){if(T<this.mid){if(this.left){var q=this.left.queryPoint(T,F);if(q)return q}return p(this.leftPoints,T,F)}else if(T>this.mid){if(this.right){var q=this.right.queryPoint(T,F);if(q)return q}return E(this.rightPoints,T,F)}else return k(this.leftPoints,F)},h.queryInterval=function(T,F,q){if(T<this.mid&&this.left){var V=this.left.queryInterval(T,F,q);if(V)return V}if(F>this.mid&&this.right){var V=this.right.queryInterval(T,F,q);if(V)return V}return F<this.mid?p(this.leftPoints,F,q):T>this.mid?E(this.rightPoints,T,q):k(this.leftPoints,q)};function A(T,F){return T-F}function L(T,F){var q=T[0]-F[0];return q||T[1]-F[1]}function _(T,F){var q=T[1]-F[1];return q||T[0]-F[0]}function C(T){if(T.length===0)return null;for(var F=[],q=0;q<T.length;++q)F.push(T[q][0],T[q][1]);F.sort(A);for(var V=F[F.length>>1],H=[],X=[],G=[],q=0;q<T.length;++q){var N=T[q];N[1]<V?H.push(N):V<N[0]?X.push(N):G.push(N)}var W=G,re=G.slice();return W.sort(L),re.sort(_),new f(V,C(H),C(X),W,re)}function M(T){this.root=T}var g=M.prototype;g.insert=function(T){this.root?this.root.insert(T):this.root=new f(T[0],null,null,[T],[T])},g.remove=function(T){if(this.root){var F=this.root.remove(T);return F===c&&(this.root=null),F!==l}return!1},g.queryPoint=function(T,F){if(this.root)return this.root.queryPoint(T,F)},g.queryInterval=function(T,F,q){if(T<=F&&this.root)return this.root.queryInterval(T,F,q)},Object.defineProperty(g,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(g,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});function P(T){return!T||T.length===0?new M(null):new M(C(T))}},9507:function(i){i.exports=!0},7163:function(i){i.exports=function(s){return s!=null&&(a(s)||o(s)||!!s._isBuffer)};function a(s){return!!s.constructor&&typeof s.constructor.isBuffer=="function"&&s.constructor.isBuffer(s)}function o(s){return typeof s.readFloatLE=="function"&&typeof s.slice=="function"&&a(s.slice(0,0))}},5219:function(i){"use strict";i.exports=function(a){for(var o=a.length,s,l=0;l<o;l++)if(s=a.charCodeAt(l),(s<9||s>13)&&s!==32&&s!==133&&s!==160&&s!==5760&&s!==6158&&(s<8192||s>8205)&&s!==8232&&s!==8233&&s!==8239&&s!==8287&&s!==8288&&s!==12288&&s!==65279)return!1;return!0}},395:function(i){function a(o,s,l){return o*(1-l)+s*l}i.exports=a},2652:function(i,a,o){var s=o(4335),l=o(6864),u=o(1903),c=o(9921),f=o(7608),h=o(5665),d={length:o(1387),normalize:o(3536),dot:o(244),cross:o(5911)},v=l(),x=l(),b=[0,0,0,0],p=[[0,0,0],[0,0,0],[0,0,0]],E=[0,0,0];i.exports=function(C,M,g,P,T,F){if(M||(M=[0,0,0]),g||(g=[0,0,0]),P||(P=[0,0,0]),T||(T=[0,0,0,1]),F||(F=[0,0,0,1]),!s(v,C)||(u(x,v),x[3]=0,x[7]=0,x[11]=0,x[15]=1,Math.abs(c(x)<1e-8)))return!1;var q=v[3],V=v[7],H=v[11],X=v[12],G=v[13],N=v[14],W=v[15];if(q!==0||V!==0||H!==0){b[0]=q,b[1]=V,b[2]=H,b[3]=W;var re=f(x,x);if(!re)return!1;h(x,x),k(T,b,x)}else T[0]=T[1]=T[2]=0,T[3]=1;if(M[0]=X,M[1]=G,M[2]=N,A(p,v),g[0]=d.length(p[0]),d.normalize(p[0],p[0]),P[0]=d.dot(p[0],p[1]),L(p[1],p[1],p[0],1,-P[0]),g[1]=d.length(p[1]),d.normalize(p[1],p[1]),P[0]/=g[1],P[1]=d.dot(p[0],p[2]),L(p[2],p[2],p[0],1,-P[1]),P[2]=d.dot(p[1],p[2]),L(p[2],p[2],p[1],1,-P[2]),g[2]=d.length(p[2]),d.normalize(p[2],p[2]),P[1]/=g[2],P[2]/=g[2],d.cross(E,p[1],p[2]),d.dot(p[0],E)<0)for(var ae=0;ae<3;ae++)g[ae]*=-1,p[ae][0]*=-1,p[ae][1]*=-1,p[ae][2]*=-1;return F[0]=.5*Math.sqrt(Math.max(1+p[0][0]-p[1][1]-p[2][2],0)),F[1]=.5*Math.sqrt(Math.max(1-p[0][0]+p[1][1]-p[2][2],0)),F[2]=.5*Math.sqrt(Math.max(1-p[0][0]-p[1][1]+p[2][2],0)),F[3]=.5*Math.sqrt(Math.max(1+p[0][0]+p[1][1]+p[2][2],0)),p[2][1]>p[1][2]&&(F[0]=-F[0]),p[0][2]>p[2][0]&&(F[1]=-F[1]),p[1][0]>p[0][1]&&(F[2]=-F[2]),!0};function k(_,C,M){var g=C[0],P=C[1],T=C[2],F=C[3];return _[0]=M[0]*g+M[4]*P+M[8]*T+M[12]*F,_[1]=M[1]*g+M[5]*P+M[9]*T+M[13]*F,_[2]=M[2]*g+M[6]*P+M[10]*T+M[14]*F,_[3]=M[3]*g+M[7]*P+M[11]*T+M[15]*F,_}function A(_,C){_[0][0]=C[0],_[0][1]=C[1],_[0][2]=C[2],_[1][0]=C[4],_[1][1]=C[5],_[1][2]=C[6],_[2][0]=C[8],_[2][1]=C[9],_[2][2]=C[10]}function L(_,C,M,g,P){_[0]=C[0]*g+M[0]*P,_[1]=C[1]*g+M[1]*P,_[2]=C[2]*g+M[2]*P}},4335:function(i){i.exports=function(o,s){var l=s[15];if(l===0)return!1;for(var u=1/l,c=0;c<16;c++)o[c]=s[c]*u;return!0}},7442:function(i,a,o){var s=o(6658),l=o(7182),u=o(2652),c=o(9921),f=o(8648),h=b(),d=b(),v=b();i.exports=x;function x(k,A,L,_){if(c(A)===0||c(L)===0)return!1;var C=u(A,h.translate,h.scale,h.skew,h.perspective,h.quaternion),M=u(L,d.translate,d.scale,d.skew,d.perspective,d.quaternion);return!C||!M?!1:(s(v.translate,h.translate,d.translate,_),s(v.skew,h.skew,d.skew,_),s(v.scale,h.scale,d.scale,_),s(v.perspective,h.perspective,d.perspective,_),f(v.quaternion,h.quaternion,d.quaternion,_),l(k,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function b(){return{translate:p(),scale:p(1),skew:p(),perspective:E(),quaternion:E()}}function p(k){return[k||0,k||0,k||0]}function E(){return[0,0,0,1]}},7182:function(i,a,o){var s={identity:o(7894),translate:o(7656),multiply:o(6760),create:o(6864),scale:o(2504),fromRotationTranslation:o(6743)},l=s.create(),u=s.create();i.exports=function(f,h,d,v,x,b){return s.identity(f),s.fromRotationTranslation(f,b,h),f[3]=x[0],f[7]=x[1],f[11]=x[2],f[15]=x[3],s.identity(u),v[2]!==0&&(u[9]=v[2],s.multiply(f,f,u)),v[1]!==0&&(u[9]=0,u[8]=v[1],s.multiply(f,f,u)),v[0]!==0&&(u[8]=0,u[4]=v[0],s.multiply(f,f,u)),s.scale(f,f,d),f}},1811:function(i,a,o){"use strict";var s=o(2478),l=o(7442),u=o(7608),c=o(5567),f=o(2408),h=o(7089),d=o(6582),v=o(7656),x=o(2504),b=o(3536),p=[0,0,0];i.exports=L;function E(_){this._components=_.slice(),this._time=[0],this.prevMatrix=_.slice(),this.nextMatrix=_.slice(),this.computedMatrix=_.slice(),this.computedInverse=_.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]}var k=E.prototype;k.recalcMatrix=function(_){var C=this._time,M=s.le(C,_),g=this.computedMatrix;if(!(M<0)){var P=this._components;if(M===C.length-1)for(var T=16*M,F=0;F<16;++F)g[F]=P[T++];else{for(var q=C[M+1]-C[M],T=16*M,V=this.prevMatrix,H=!0,F=0;F<16;++F)V[F]=P[T++];for(var X=this.nextMatrix,F=0;F<16;++F)X[F]=P[T++],H=H&&V[F]===X[F];if(q<1e-6||H)for(var F=0;F<16;++F)g[F]=V[F];else l(g,V,X,(_-C[M])/q)}var G=this.computedUp;G[0]=g[1],G[1]=g[5],G[2]=g[9],b(G,G);var N=this.computedInverse;u(N,g);var W=this.computedEye,re=N[15];W[0]=N[12]/re,W[1]=N[13]/re,W[2]=N[14]/re;for(var ae=this.computedCenter,_e=Math.exp(this.computedRadius[0]),F=0;F<3;++F)ae[F]=W[F]-g[2+4*F]*_e}},k.idle=function(_){if(!(_<this.lastT())){for(var C=this._components,M=C.length-16,g=0;g<16;++g)C.push(C[M++]);this._time.push(_)}},k.flush=function(_){var C=s.gt(this._time,_)-2;C<0||(this._time.splice(0,C),this._components.splice(0,16*C))},k.lastT=function(){return this._time[this._time.length-1]},k.lookAt=function(_,C,M,g){this.recalcMatrix(_),C=C||this.computedEye,M=M||p,g=g||this.computedUp,this.setMatrix(_,d(this.computedMatrix,C,M,g));for(var P=0,T=0;T<3;++T)P+=Math.pow(M[T]-C[T],2);P=Math.log(Math.sqrt(P)),this.computedRadius[0]=P},k.rotate=function(_,C,M,g){this.recalcMatrix(_);var P=this.computedInverse;C&&f(P,P,C),M&&c(P,P,M),g&&h(P,P,g),this.setMatrix(_,u(this.computedMatrix,P))};var A=[0,0,0];k.pan=function(_,C,M,g){A[0]=-(C||0),A[1]=-(M||0),A[2]=-(g||0),this.recalcMatrix(_);var P=this.computedInverse;v(P,P,A),this.setMatrix(_,u(P,P))},k.translate=function(_,C,M,g){A[0]=C||0,A[1]=M||0,A[2]=g||0,this.recalcMatrix(_);var P=this.computedMatrix;v(P,P,A),this.setMatrix(_,P)},k.setMatrix=function(_,C){if(!(_<this.lastT())){this._time.push(_);for(var M=0;M<16;++M)this._components.push(C[M])}},k.setDistance=function(_,C){this.computedRadius[0]=C},k.setDistanceLimits=function(_,C){var M=this._limits;M[0]=_,M[1]=C},k.getDistanceLimits=function(_){var C=this._limits;return _?(_[0]=C[0],_[1]=C[1],_):C};function L(_){_=_||{};var C=_.matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return new E(C)}},3090:function(i,a,o){"use strict";i.exports=l;var s=o(3250)[3];function l(u){var c=u.length;if(c<3){for(var E=new Array(c),f=0;f<c;++f)E[f]=f;return c===2&&u[0][0]===u[1][0]&&u[0][1]===u[1][1]?[0]:E}for(var h=new Array(c),f=0;f<c;++f)h[f]=f;h.sort(function(_,C){var M=u[_][0]-u[C][0];return M||u[_][1]-u[C][1]});for(var d=[h[0],h[1]],v=[h[0],h[1]],f=2;f<c;++f){for(var x=h[f],b=u[x],p=d.length;p>1&&s(u[d[p-2]],u[d[p-1]],b)<=0;)p-=1,d.pop();for(d.push(x),p=v.length;p>1&&s(u[v[p-2]],u[v[p-1]],b)>=0;)p-=1,v.pop();v.push(x)}for(var E=new Array(v.length+d.length-2),k=0,f=0,A=d.length;f<A;++f)E[k++]=d[f];for(var L=v.length-2;L>0;--L)E[k++]=v[L];return E}},351:function(i,a,o){"use strict";i.exports=l;var s=o(4687);function l(u,c){c||(c=u,u=window);var f=0,h=0,d=0,v={shift:!1,alt:!1,control:!1,meta:!1},x=!1;function b(T){var F=!1;return"altKey"in T&&(F=F||T.altKey!==v.alt,v.alt=!!T.altKey),"shiftKey"in T&&(F=F||T.shiftKey!==v.shift,v.shift=!!T.shiftKey),"ctrlKey"in T&&(F=F||T.ctrlKey!==v.control,v.control=!!T.ctrlKey),"metaKey"in T&&(F=F||T.metaKey!==v.meta,v.meta=!!T.metaKey),F}function p(T,F){var q=s.x(F),V=s.y(F);"buttons"in F&&(T=F.buttons|0),(T!==f||q!==h||V!==d||b(F))&&(f=T|0,h=q||0,d=V||0,c&&c(f,h,d,v))}function E(T){p(0,T)}function k(){(f||h||d||v.shift||v.alt||v.meta||v.control)&&(h=d=0,f=0,v.shift=v.alt=v.control=v.meta=!1,c&&c(0,0,0,v))}function A(T){b(T)&&c&&c(f,h,d,v)}function L(T){s.buttons(T)===0?p(0,T):p(f,T)}function _(T){p(f|s.buttons(T),T)}function C(T){p(f&~s.buttons(T),T)}function M(){x||(x=!0,u.addEventListener("mousemove",L),u.addEventListener("mousedown",_),u.addEventListener("mouseup",C),u.addEventListener("mouseleave",E),u.addEventListener("mouseenter",E),u.addEventListener("mouseout",E),u.addEventListener("mouseover",E),u.addEventListener("blur",k),u.addEventListener("keyup",A),u.addEventListener("keydown",A),u.addEventListener("keypress",A),u!==window&&(window.addEventListener("blur",k),window.addEventListener("keyup",A),window.addEventListener("keydown",A),window.addEventListener("keypress",A)))}function g(){x&&(x=!1,u.removeEventListener("mousemove",L),u.removeEventListener("mousedown",_),u.removeEventListener("mouseup",C),u.removeEventListener("mouseleave",E),u.removeEventListener("mouseenter",E),u.removeEventListener("mouseout",E),u.removeEventListener("mouseover",E),u.removeEventListener("blur",k),u.removeEventListener("keyup",A),u.removeEventListener("keydown",A),u.removeEventListener("keypress",A),u!==window&&(window.removeEventListener("blur",k),window.removeEventListener("keyup",A),window.removeEventListener("keydown",A),window.removeEventListener("keypress",A)))}M();var P={element:u};return Object.defineProperties(P,{enabled:{get:function(){return x},set:function(T){T?M():g()},enumerable:!0},buttons:{get:function(){return f},enumerable:!0},x:{get:function(){return h},enumerable:!0},y:{get:function(){return d},enumerable:!0},mods:{get:function(){return v},enumerable:!0}}),P}},24:function(i){var a={left:0,top:0};i.exports=o;function o(l,u,c){u=u||l.currentTarget||l.srcElement,Array.isArray(c)||(c=[0,0]);var f=l.clientX||0,h=l.clientY||0,d=s(u);return c[0]=f-d.left,c[1]=h-d.top,c}function s(l){return l===window||l===document||l===document.body?a:l.getBoundingClientRect()}},4687:function(i,a){"use strict";function o(c){if(typeof c=="object"){if("buttons"in c)return c.buttons;if("which"in c){var f=c.which;if(f===2)return 4;if(f===3)return 2;if(f>0)return 1<<f-1}else if("button"in c){var f=c.button;if(f===1)return 4;if(f===2)return 2;if(f>=0)return 1<<f}}return 0}a.buttons=o;function s(c){return c.target||c.srcElement||window}a.element=s;function l(c){if(typeof c=="object"){if("offsetX"in c)return c.offsetX;var f=s(c),h=f.getBoundingClientRect();return c.clientX-h.left}return 0}a.x=l;function u(c){if(typeof c=="object"){if("offsetY"in c)return c.offsetY;var f=s(c),h=f.getBoundingClientRect();return c.clientY-h.top}return 0}a.y=u},8512:function(i,a,o){"use strict";var s=o(665);i.exports=l;function l(u,c,f){typeof u=="function"&&(f=!!c,c=u,u=window);var h=s("ex",u),d=function(v){f&&v.preventDefault();var x=v.deltaX||0,b=v.deltaY||0,p=v.deltaZ||0,E=v.deltaMode,k=1;switch(E){case 1:k=h;break;case 2:k=window.innerHeight;break}if(x*=k,b*=k,p*=k,x||b||p)return c(x,b,p,v)};return u.addEventListener("wheel",d),d}},2640:function(i,a,o){"use strict";var s=o(1888);i.exports=c;var l={"false,0,1":function(h,d,v,x,b){return function(E,k,A,L){var _=E.shape[0]|0,C=E.shape[1]|0,M=E.data,g=E.offset|0,P=E.stride[0]|0,T=E.stride[1]|0,F=g,q,V=-P|0,H=0,X=-T|0,G=0,N=-P-T|0,W=0,re=P|0,ae=T-P*_|0,_e=0,Me=0,ke=0,ge=2*_|0,ie=x(ge),Te=x(ge),Ee=0,Ae=0,ze=-1,Ce=-1,me=0,Re=-_|0,ce=_|0,Ge=0,nt=-_-1|0,ct=_-1|0,qt=0,rt=0,ot=0;for(_e=0;_e<_;++_e)ie[Ee++]=v(M[F],k,A,L),F+=re;if(F+=ae,C>0){if(Me=1,ie[Ee++]=v(M[F],k,A,L),F+=re,_>0)for(_e=1,q=M[F],Ae=ie[Ee]=v(q,k,A,L),me=ie[Ee+ze],Ge=ie[Ee+Re],qt=ie[Ee+nt],(Ae!==me||Ae!==Ge||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,me,Ge,qt,k,A,L),rt=Te[Ee]=ke++),Ee+=1,F+=re,_e=2;_e<_;++_e)q=M[F],Ae=ie[Ee]=v(q,k,A,L),me=ie[Ee+ze],Ge=ie[Ee+Re],qt=ie[Ee+nt],(Ae!==me||Ae!==Ge||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,me,Ge,qt,k,A,L),rt=Te[Ee]=ke++,qt!==me&&d(Te[Ee+ze],rt,W,H,qt,me,k,A,L)),Ee+=1,F+=re;for(F+=ae,Ee=0,ot=ze,ze=Ce,Ce=ot,ot=Re,Re=ce,ce=ot,ot=nt,nt=ct,ct=ot,Me=2;Me<C;++Me){if(ie[Ee++]=v(M[F],k,A,L),F+=re,_>0)for(_e=1,q=M[F],Ae=ie[Ee]=v(q,k,A,L),me=ie[Ee+ze],Ge=ie[Ee+Re],qt=ie[Ee+nt],(Ae!==me||Ae!==Ge||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,me,Ge,qt,k,A,L),rt=Te[Ee]=ke++,qt!==Ge&&d(Te[Ee+Re],rt,G,W,Ge,qt,k,A,L)),Ee+=1,F+=re,_e=2;_e<_;++_e)q=M[F],Ae=ie[Ee]=v(q,k,A,L),me=ie[Ee+ze],Ge=ie[Ee+Re],qt=ie[Ee+nt],(Ae!==me||Ae!==Ge||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,me,Ge,qt,k,A,L),rt=Te[Ee]=ke++,qt!==Ge&&d(Te[Ee+Re],rt,G,W,Ge,qt,k,A,L),qt!==me&&d(Te[Ee+ze],rt,W,H,qt,me,k,A,L)),Ee+=1,F+=re;Me&1&&(Ee=0),ot=ze,ze=Ce,Ce=ot,ot=Re,Re=ce,ce=ot,ot=nt,nt=ct,ct=ot,F+=ae}}b(Te),b(ie)}},"false,1,0":function(h,d,v,x,b){return function(E,k,A,L){var _=E.shape[0]|0,C=E.shape[1]|0,M=E.data,g=E.offset|0,P=E.stride[0]|0,T=E.stride[1]|0,F=g,q,V=-P|0,H=0,X=-T|0,G=0,N=-P-T|0,W=0,re=T|0,ae=P-T*C|0,_e=0,Me=0,ke=0,ge=2*C|0,ie=x(ge),Te=x(ge),Ee=0,Ae=0,ze=-1,Ce=-1,me=0,Re=-C|0,ce=C|0,Ge=0,nt=-C-1|0,ct=C-1|0,qt=0,rt=0,ot=0;for(Me=0;Me<C;++Me)ie[Ee++]=v(M[F],k,A,L),F+=re;if(F+=ae,_>0){if(_e=1,ie[Ee++]=v(M[F],k,A,L),F+=re,C>0)for(Me=1,q=M[F],Ae=ie[Ee]=v(q,k,A,L),Ge=ie[Ee+Re],me=ie[Ee+ze],qt=ie[Ee+nt],(Ae!==Ge||Ae!==me||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,Ge,me,qt,k,A,L),rt=Te[Ee]=ke++),Ee+=1,F+=re,Me=2;Me<C;++Me)q=M[F],Ae=ie[Ee]=v(q,k,A,L),Ge=ie[Ee+Re],me=ie[Ee+ze],qt=ie[Ee+nt],(Ae!==Ge||Ae!==me||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,Ge,me,qt,k,A,L),rt=Te[Ee]=ke++,qt!==me&&d(Te[Ee+ze],rt,G,W,me,qt,k,A,L)),Ee+=1,F+=re;for(F+=ae,Ee=0,ot=Re,Re=ce,ce=ot,ot=ze,ze=Ce,Ce=ot,ot=nt,nt=ct,ct=ot,_e=2;_e<_;++_e){if(ie[Ee++]=v(M[F],k,A,L),F+=re,C>0)for(Me=1,q=M[F],Ae=ie[Ee]=v(q,k,A,L),Ge=ie[Ee+Re],me=ie[Ee+ze],qt=ie[Ee+nt],(Ae!==Ge||Ae!==me||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,Ge,me,qt,k,A,L),rt=Te[Ee]=ke++,qt!==Ge&&d(Te[Ee+Re],rt,W,H,qt,Ge,k,A,L)),Ee+=1,F+=re,Me=2;Me<C;++Me)q=M[F],Ae=ie[Ee]=v(q,k,A,L),Ge=ie[Ee+Re],me=ie[Ee+ze],qt=ie[Ee+nt],(Ae!==Ge||Ae!==me||Ae!==qt)&&(H=M[F+V],G=M[F+X],W=M[F+N],h(_e,Me,q,H,G,W,Ae,Ge,me,qt,k,A,L),rt=Te[Ee]=ke++,qt!==me&&d(Te[Ee+ze],rt,G,W,me,qt,k,A,L),qt!==Ge&&d(Te[Ee+Re],rt,W,H,qt,Ge,k,A,L)),Ee+=1,F+=re;_e&1&&(Ee=0),ot=Re,Re=ce,ce=ot,ot=ze,ze=Ce,Ce=ot,ot=nt,nt=ct,ct=ot,F+=ae}}b(Te),b(ie)}}};function u(f,h,d,v,x,b){var p=[b,x].join(","),E=l[p];return E(f,h,d,s.mallocUint32,s.freeUint32)}function c(f){function h(k){throw new Error("ndarray-extract-contour: "+k)}typeof f!="object"&&h("Must specify arguments");var d=f.order;Array.isArray(d)||h("Must specify order");var v=f.arrayArguments||1;v<1&&h("Must have at least one array argument");var x=f.scalarArguments||0;x<0&&h("Scalar arg count must be > 0"),typeof f.vertex!="function"&&h("Must specify vertex creation function"),typeof f.cell!="function"&&h("Must specify cell creation function"),typeof f.phase!="function"&&h("Must specify phase function");for(var b=f.getters||[],p=new Array(v),E=0;E<v;++E)b.indexOf(E)>=0?p[E]=!0:p[E]=!1;return u(f.vertex,f.cell,f.phase,x,d,p)}},6199:function(i,a,o){"use strict";var s=o(1338),l={zero:function(L,_,C,M){var g=L[0],P=C[0];M|=0;var T=0,F=P;for(T=0;T<g;++T)_[M]=0,M+=F},fdTemplate1:function(L,_,C,M,g,P,T){var F=L[0],q=C[0],V=P[0],H=-1*q,X=q;M|=0,T|=0;var G=0,N=q,W=V;for(G=0;G<F;++G)g[T]=.5*(_[M+H]-_[M+X]),M+=N,T+=W},fdTemplate2:function(L,_,C,M,g,P,T,F,q,V){var H=L[0],X=L[1],G=C[0],N=C[1],W=P[0],re=P[1],ae=q[0],_e=q[1],Me=-1*G,ke=G,ge=-1*N,ie=N;M|=0,T|=0,V|=0;var Te=0,Ee=0,Ae=N,ze=G-X*N,Ce=re,me=W-X*re,Re=_e,ce=ae-X*_e;for(Ee=0;Ee<H;++Ee){for(Te=0;Te<X;++Te)g[T]=.5*(_[M+Me]-_[M+ke]),F[V]=.5*(_[M+ge]-_[M+ie]),M+=Ae,T+=Ce,V+=Re;M+=ze,T+=me,V+=ce}}},u={cdiff:function(L){var _={};return function(M,g,P){var T=M.dtype,F=M.order,q=g.dtype,V=g.order,H=P.dtype,X=P.order,G=[T,F.join(),q,V.join(),H,X.join()].join(),N=_[G];return N||(_[G]=N=L([T,F,q,V,H,X])),N(M.shape.slice(0),M.data,M.stride,M.offset|0,g.data,g.stride,g.offset|0,P.data,P.stride,P.offset|0)}},zero:function(L){var _={};return function(M){var g=M.dtype,P=M.order,T=[g,P.join()].join(),F=_[T];return F||(_[T]=F=L([g,P])),F(M.shape.slice(0),M.data,M.stride,M.offset|0)}},fdTemplate1:function(L){var _={};return function(M,g){var P=M.dtype,T=M.order,F=g.dtype,q=g.order,V=[P,T.join(),F,q.join()].join(),H=_[V];return H||(_[V]=H=L([P,T,F,q])),H(M.shape.slice(0),M.data,M.stride,M.offset|0,g.data,g.stride,g.offset|0)}},fdTemplate2:function(L){var _={};return function(M,g,P){var T=M.dtype,F=M.order,q=g.dtype,V=g.order,H=P.dtype,X=P.order,G=[T,F.join(),q,V.join(),H,X.join()].join(),N=_[G];return N||(_[G]=N=L([T,F,q,V,H,X])),N(M.shape.slice(0),M.data,M.stride,M.offset|0,g.data,g.stride,g.offset|0,P.data,P.stride,P.offset|0)}}};function c(L){var _=u[L.funcName];return _(f.bind(void 0,L))}function f(L){return l[L.funcName]}function h(L){return c({funcName:L.funcName})}var d={},v={},x={body:"",args:[],thisVars:[],localVars:[]},b=h({funcName:"cdiff"}),p=h({funcName:"zero"});function E(L){return L in d?d[L]:d[L]=h({funcName:"fdTemplate"+L})}function k(L,_,C,M){return function(g,P){var T=P.shape.slice();return T[0]>2&&T[1]>2&&M(P.pick(-1,-1).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,0).lo(1,1).hi(T[0]-2,T[1]-2),g.pick(-1,-1,1).lo(1,1).hi(T[0]-2,T[1]-2)),T[1]>2&&(C(P.pick(0,-1).lo(1).hi(T[1]-2),g.pick(0,-1,1).lo(1).hi(T[1]-2)),_(g.pick(0,-1,0).lo(1).hi(T[1]-2))),T[1]>2&&(C(P.pick(T[0]-1,-1).lo(1).hi(T[1]-2),g.pick(T[0]-1,-1,1).lo(1).hi(T[1]-2)),_(g.pick(T[0]-1,-1,0).lo(1).hi(T[1]-2))),T[0]>2&&(C(P.pick(-1,0).lo(1).hi(T[0]-2),g.pick(-1,0,0).lo(1).hi(T[0]-2)),_(g.pick(-1,0,1).lo(1).hi(T[0]-2))),T[0]>2&&(C(P.pick(-1,T[1]-1).lo(1).hi(T[0]-2),g.pick(-1,T[1]-1,0).lo(1).hi(T[0]-2)),_(g.pick(-1,T[1]-1,1).lo(1).hi(T[0]-2))),g.set(0,0,0,0),g.set(0,0,1,0),g.set(T[0]-1,0,0,0),g.set(T[0]-1,0,1,0),g.set(0,T[1]-1,0,0),g.set(0,T[1]-1,1,0),g.set(T[0]-1,T[1]-1,0,0),g.set(T[0]-1,T[1]-1,1,0),g}}function A(L){var _=L.join(),T=v[_];if(T)return T;for(var C=L.length,M=[b,p],g=1;g<=C;++g)M.push(E(g));var P=k,T=P.apply(void 0,M);return v[_]=T,T}i.exports=function(_,C,M){if(Array.isArray(M)||(typeof M=="string"?M=s(C.dimension,M):M=s(C.dimension,"clamp")),C.size===0)return _;if(C.dimension===0)return _.set(0),_;var g=A(M);return g(_,C)}},4317:function(i){"use strict";function a(c,f){var h=Math.floor(f),d=f-h,v=0<=h&&h<c.shape[0],x=0<=h+1&&h+1<c.shape[0],b=v?+c.get(h):0,p=x?+c.get(h+1):0;return(1-d)*b+d*p}function o(c,f,h){var d=Math.floor(f),v=f-d,x=0<=d&&d<c.shape[0],b=0<=d+1&&d+1<c.shape[0],p=Math.floor(h),E=h-p,k=0<=p&&p<c.shape[1],A=0<=p+1&&p+1<c.shape[1],L=x&&k?c.get(d,p):0,_=x&&A?c.get(d,p+1):0,C=b&&k?c.get(d+1,p):0,M=b&&A?c.get(d+1,p+1):0;return(1-E)*((1-v)*L+v*C)+E*((1-v)*_+v*M)}function s(c,f,h,d){var v=Math.floor(f),x=f-v,b=0<=v&&v<c.shape[0],p=0<=v+1&&v+1<c.shape[0],E=Math.floor(h),k=h-E,A=0<=E&&E<c.shape[1],L=0<=E+1&&E+1<c.shape[1],_=Math.floor(d),C=d-_,M=0<=_&&_<c.shape[2],g=0<=_+1&&_+1<c.shape[2],P=b&&A&&M?c.get(v,E,_):0,T=b&&L&&M?c.get(v,E+1,_):0,F=p&&A&&M?c.get(v+1,E,_):0,q=p&&L&&M?c.get(v+1,E+1,_):0,V=b&&A&&g?c.get(v,E,_+1):0,H=b&&L&&g?c.get(v,E+1,_+1):0,X=p&&A&&g?c.get(v+1,E,_+1):0,G=p&&L&&g?c.get(v+1,E+1,_+1):0;return(1-C)*((1-k)*((1-x)*P+x*F)+k*((1-x)*T+x*q))+C*((1-k)*((1-x)*V+x*X)+k*((1-x)*H+x*G))}function l(c){var f=c.shape.length|0,h=new Array(f),d=new Array(f),v=new Array(f),x=new Array(f),b,p;for(b=0;b<f;++b)p=+arguments[b+1],h[b]=Math.floor(p),d[b]=p-h[b],v[b]=0<=h[b]&&h[b]<c.shape[b],x[b]=0<=h[b]+1&&h[b]+1<c.shape[b];var E=0,k,A,L;e:for(b=0;b<1<<f;++b){for(A=1,L=c.offset,k=0;k<f;++k)if(b&1<<k){if(!x[k])continue e;A*=d[k],L+=c.stride[k]*(h[k]+1)}else{if(!v[k])continue e;A*=1-d[k],L+=c.stride[k]*h[k]}E+=A*c.data[L]}return E}function u(c,f,h,d){switch(c.shape.length){case 0:return 0;case 1:return a(c,f);case 2:return o(c,f,h);case 3:return s(c,f,h,d);default:return l.apply(void 0,arguments)}}i.exports=u,i.exports.d1=a,i.exports.d2=o,i.exports.d3=s},5298:function(i,a){"use strict";var o={"float64,2,1,0":function(){return function(v,x,b,p,E){var k=v[0],A=v[1],L=v[2],_=b[0],C=b[1],M=b[2];p|=0;var g=0,P=0,T=0,F=M,q=C-L*M,V=_-A*C;for(T=0;T<k;++T){for(P=0;P<A;++P){for(g=0;g<L;++g)x[p]/=E,p+=F;p+=q}p+=V}}},"uint8,2,0,1,float64,2,1,0":function(){return function(v,x,b,p,E,k,A,L){var _=v[0],C=v[1],M=v[2],g=b[0],P=b[1],T=b[2],F=k[0],q=k[1],V=k[2];p|=0,A|=0;for(var H=p,X=A,G=v[0]|0;G>0;){G<64?(_=G,G=0):(_=64,G-=64);for(var N=v[1]|0;N>0;){N<64?(C=N,N=0):(C=64,N-=64),p=H+G*g+N*P,A=X+G*F+N*q;var W=0,re=0,ae=0,_e=T,Me=g-M*T,ke=P-_*g,ge=V,ie=F-M*V,Te=q-_*F;for(ae=0;ae<C;++ae){for(re=0;re<_;++re){for(W=0;W<M;++W)x[p]=E[A]*L,p+=_e,A+=ge;p+=Me,A+=ie}p+=ke,A+=Te}}}}},"float32,1,0,float32,1,0":function(){return function(v,x,b,p,E,k,A){var L=v[0],_=v[1],C=b[0],M=b[1],g=k[0],P=k[1];p|=0,A|=0;var T=0,F=0,q=M,V=C-_*M,H=P,X=g-_*P;for(F=0;F<L;++F){for(T=0;T<_;++T)x[p]=E[A],p+=q,A+=H;p+=V,A+=X}}},"float32,1,0,float32,0,1":function(){return function(v,x,b,p,E,k,A){var L=v[0],_=v[1],C=b[0],M=b[1],g=k[0],P=k[1];p|=0,A|=0;for(var T=p,F=A,q=v[1]|0;q>0;){q<64?(_=q,q=0):(_=64,q-=64);for(var V=v[0]|0;V>0;){V<64?(L=V,V=0):(L=64,V-=64),p=T+q*M+V*C,A=F+q*P+V*g;var H=0,X=0,G=M,N=C-_*M,W=P,re=g-_*P;for(X=0;X<L;++X){for(H=0;H<_;++H)x[p]=E[A],p+=G,A+=W;p+=N,A+=re}}}}},"uint8,2,0,1,uint8,1,2,0":function(){return function(v,x,b,p,E,k,A){var L=v[0],_=v[1],C=v[2],M=b[0],g=b[1],P=b[2],T=k[0],F=k[1],q=k[2];p|=0,A|=0;for(var V=p,H=A,X=v[2]|0;X>0;){X<64?(C=X,X=0):(C=64,X-=64);for(var G=v[0]|0;G>0;){G<64?(L=G,G=0):(L=64,G-=64);for(var N=v[1]|0;N>0;){N<64?(_=N,N=0):(_=64,N-=64),p=V+X*P+G*M+N*g,A=H+X*q+G*T+N*F;var W=0,re=0,ae=0,_e=P,Me=M-C*P,ke=g-L*M,ge=q,ie=T-C*q,Te=F-L*T;for(ae=0;ae<_;++ae){for(re=0;re<L;++re){for(W=0;W<C;++W)x[p]=E[A],p+=_e,A+=ge;p+=Me,A+=ie}p+=ke,A+=Te}}}}}},"uint8,2,0,1,array,2,0,1":function(){return function(v,x,b,p,E,k,A){var L=v[0],_=v[1],C=v[2],M=b[0],g=b[1],P=b[2],T=k[0],F=k[1],q=k[2];p|=0,A|=0;var V=0,H=0,X=0,G=P,N=M-C*P,W=g-L*M,re=q,ae=T-C*q,_e=F-L*T;for(X=0;X<_;++X){for(H=0;H<L;++H){for(V=0;V<C;++V)x[p]=E[A],p+=G,A+=re;p+=N,A+=ae}p+=W,A+=_e}}}};function s(d,v){var x=v.join(","),b=o[x];return b()}var l=s,u={mul:function(d){var v={};return function(b,p,E){var k=b.dtype,A=b.order,L=p.dtype,_=p.order,C=E.dtype,M=E.order,g=[k,A.join(),L,_.join(),C,M.join()].join(),P=v[g];return P||(v[g]=P=d([k,A,L,_,C,M])),P(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,E.data,E.stride,E.offset|0)}},muls:function(d){var v={};return function(b,p,E){var k=b.dtype,A=b.order,L=p.dtype,_=p.order,C=[k,A.join(),L,_.join()].join(),M=v[C];return M||(v[C]=M=d([k,A,L,_])),M(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,E)}},mulseq:function(d){var v={};return function(b,p){var E=b.dtype,k=b.order,A=[E,k.join()].join(),L=v[A];return L||(v[A]=L=d([E,k])),L(b.shape.slice(0),b.data,b.stride,b.offset|0,p)}},div:function(d){var v={};return function(b,p,E){var k=b.dtype,A=b.order,L=p.dtype,_=p.order,C=E.dtype,M=E.order,g=[k,A.join(),L,_.join(),C,M.join()].join(),P=v[g];return P||(v[g]=P=d([k,A,L,_,C,M])),P(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,E.data,E.stride,E.offset|0)}},divs:function(d){var v={};return function(b,p,E){var k=b.dtype,A=b.order,L=p.dtype,_=p.order,C=[k,A.join(),L,_.join()].join(),M=v[C];return M||(v[C]=M=d([k,A,L,_])),M(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0,E)}},divseq:function(d){var v={};return function(b,p){var E=b.dtype,k=b.order,A=[E,k.join()].join(),L=v[A];return L||(v[A]=L=d([E,k])),L(b.shape.slice(0),b.data,b.stride,b.offset|0,p)}},assign:function(d){var v={};return function(b,p){var E=b.dtype,k=b.order,A=p.dtype,L=p.order,_=[E,k.join(),A,L.join()].join(),C=v[_];return C||(v[_]=C=d([E,k,A,L])),C(b.shape.slice(0),b.data,b.stride,b.offset|0,p.data,p.stride,p.offset|0)}}};function c(d){var v=u[d.funcName];return v(l.bind(void 0,d))}function f(d){return c({funcName:d.funcName})}var h={mul:"*",div:"/"};(function(){for(var d in h)a[d]=f({funcName:d}),a[d+"s"]=f({funcName:d+"s"}),a[d+"seq"]=f({funcName:d+"seq"})})(),a.assign=f({funcName:"assign"})},9994:function(i,a,o){"use strict";var s=o(9618),l=o(8277);i.exports=function(c,f){for(var h=[],d=c,v=1;Array.isArray(d);)h.push(d.length),v*=d.length,d=d[0];return h.length===0?s():(f||(f=s(new Float64Array(v),h)),l(f,c),f)}},8277:function(i){"use strict";function a(){return function(f,h,d,v,x){var b=f[0],p=f[1],E=f[2],k=d[0],A=d[1],L=d[2],_=[0,0,0];v|=0;var C=0,M=0,g=0,P=L,T=A-E*L,F=k-p*A;for(g=0;g<b;++g){for(M=0;M<p;++M){for(C=0;C<E;++C){{var q=x,V;for(V=0;V<_.length-1;++V)q=q[_[V]];h[v]=q[_[_.length-1]]}v+=P,++_[2]}v+=T,_[2]-=E,++_[1]}v+=F,_[1]-=p,++_[0]}}}function o(){return a()}var s=o;function l(f){var h={};return function(v,x){var b=v.dtype,p=v.order,E=[b,p.join()].join(),k=h[E];return k||(h[E]=k=f([b,p])),k(v.shape.slice(0),v.data,v.stride,v.offset|0,x)}}function u(f){return l(s.bind(void 0,f))}function c(f){return u({funcName:f.funcName})}i.exports=c({funcName:"convert"})},7640:function(i,a,o){"use strict";var s=o(1888);function l(x){switch(x){case"uint32":return[s.mallocUint32,s.freeUint32];default:return null}}var u={"uint32,1,0":function(x,b){return function(E,k,A,L,_,C,M,g,P,T,F){var q,V,H,X=E*_+L,G,N=x(g),W,re,ae,_e;for(q=E+1;q<=k;++q){for(V=q,X+=_,H=X,W=0,re=X,G=0;G<g;++G)N[W++]=A[re],re+=P;e:for(;V-- >E;){W=0,re=H-_;t:for(G=0;G<g;++G){if(ae=A[re],_e=N[W],ae<_e)break e;if(ae>_e)break t;re+=T,W+=F}for(W=H,re=H-_,G=0;G<g;++G)A[W]=A[re],W+=P,re+=P;H-=_}for(W=H,re=0,G=0;G<g;++G)A[W]=N[re++],W+=P}b(N)}}};function c(x,b){var p=l(b),E=[b,x].join(","),k=u[E];return p?k(p[0],p[1]):k()}var f={"uint32,1,0":function(x,b,p){return function E(k,A,L,_,C,M,g,P,T,F,q){var V=(A-k+1)/6|0,H=k+V,X=A-V,G=k+A>>1,N=G-V,W=G+V,re=H,ae=N,_e=G,Me=W,ke=X,ge=k+1,ie=A-1,Te=!0,Ee,Ae,ze,Ce,me,Re,ce,Ge,nt,ct=0,qt=0,rt=0,ot,Rt,kt,Ct,Yt,xr,er,Ke,xt,bt,Lt,St,Et,dt,Ht,$t,fr=P,_r=b(fr),Br=b(fr);Rt=C*re,kt=C*ae,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=re,re=ae,ae=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*Me,kt=C*ke,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=Me,Me=ke,ke=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*re,kt=C*_e,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=re,re=_e,_e=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*ae,kt=C*_e,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=ae,ae=_e,_e=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*re,kt=C*Me,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=re,re=Me,Me=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*_e,kt=C*Me,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=_e,_e=Me,Me=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*ae,kt=C*ke,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=ae,ae=ke,ke=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*ae,kt=C*_e,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=ae,ae=_e,_e=Ae;break e}if(rt<0)break e;$t+=F}Rt=C*Me,kt=C*ke,$t=_;e:for(ot=0;ot<P;++ot){if(ce=Rt+$t,Ge=kt+$t,rt=L[ce]-L[Ge],rt>0){Ae=Me,Me=ke,ke=Ae;break e}if(rt<0)break e;$t+=F}for(Rt=C*re,kt=C*ae,Ct=C*_e,Yt=C*Me,xr=C*ke,er=C*H,Ke=C*G,xt=C*X,Ht=0,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,nt=Ct+$t,bt=Yt+$t,Lt=xr+$t,St=er+$t,Et=Ke+$t,dt=xt+$t,_r[Ht]=L[Ge],Br[Ht]=L[bt],Te=Te&&_r[Ht]===Br[Ht],ze=L[ce],Ce=L[nt],me=L[Lt],L[St]=ze,L[Et]=Ce,L[dt]=me,++Ht,$t+=T;for(Rt=C*N,kt=C*k,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,L[ce]=L[Ge],$t+=T;for(Rt=C*W,kt=C*A,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,L[ce]=L[Ge],$t+=T;if(Te)for(Re=ge;Re<=ie;++Re){ce=_+Re*C,Ht=0;e:for(ot=0;ot<P;++ot){if(rt=L[ce]-_r[Ht],rt!==0)break e;Ht+=q,ce+=F}if(rt!==0)if(rt<0){if(Re!==ge)for(Rt=C*Re,kt=C*ge,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=Ee,$t+=T;++ge}else for(;;){ce=_+ie*C,Ht=0;e:for(ot=0;ot<P;++ot){if(rt=L[ce]-_r[Ht],rt!==0)break e;Ht+=q,ce+=F}if(rt>0)ie--;else if(rt<0){for(Rt=C*Re,kt=C*ge,Ct=C*ie,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,nt=Ct+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=L[nt],L[nt]=Ee,$t+=T;++ge,--ie;break}else{for(Rt=C*Re,kt=C*ie,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=Ee,$t+=T;--ie;break}}}else for(Re=ge;Re<=ie;++Re){ce=_+Re*C,Ht=0;e:for(ot=0;ot<P;++ot){if(ct=L[ce]-_r[Ht],ct!==0)break e;Ht+=q,ce+=F}if(ct<0){if(Re!==ge)for(Rt=C*Re,kt=C*ge,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=Ee,$t+=T;++ge}else{ce=_+Re*C,Ht=0;e:for(ot=0;ot<P;++ot){if(qt=L[ce]-Br[Ht],qt!==0)break e;Ht+=q,ce+=F}if(qt>0)for(;;){ce=_+ie*C,Ht=0;e:for(ot=0;ot<P;++ot){if(rt=L[ce]-Br[Ht],rt!==0)break e;Ht+=q,ce+=F}if(rt>0){if(--ie<Re)break;continue}else{ce=_+ie*C,Ht=0;e:for(ot=0;ot<P;++ot){if(rt=L[ce]-_r[Ht],rt!==0)break e;Ht+=q,ce+=F}if(rt<0){for(Rt=C*Re,kt=C*ge,Ct=C*ie,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,nt=Ct+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=L[nt],L[nt]=Ee,$t+=T;++ge,--ie}else{for(Rt=C*Re,kt=C*ie,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=Ee,$t+=T;--ie}break}}}}for(Rt=C*k,kt=C*(ge-1),Ht=0,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,L[ce]=L[Ge],L[Ge]=_r[Ht],++Ht,$t+=T;for(Rt=C*A,kt=C*(ie+1),Ht=0,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,L[ce]=L[Ge],L[Ge]=Br[Ht],++Ht,$t+=T;if(ge-2-k<=32?x(k,ge-2,L,_,C,M,g,P,T,F,q):E(k,ge-2,L,_,C,M,g,P,T,F,q),A-(ie+2)<=32?x(ie+2,A,L,_,C,M,g,P,T,F,q):E(ie+2,A,L,_,C,M,g,P,T,F,q),Te){p(_r),p(Br);return}if(ge<H&&ie>X){e:for(;;){for(ce=_+ge*C,Ht=0,$t=_,ot=0;ot<P;++ot){if(L[ce]!==_r[Ht])break e;++Ht,ce+=T}++ge}e:for(;;){for(ce=_+ie*C,Ht=0,$t=_,ot=0;ot<P;++ot){if(L[ce]!==Br[Ht])break e;++Ht,ce+=T}--ie}for(Re=ge;Re<=ie;++Re){ce=_+Re*C,Ht=0;e:for(ot=0;ot<P;++ot){if(ct=L[ce]-_r[Ht],ct!==0)break e;Ht+=q,ce+=F}if(ct===0){if(Re!==ge)for(Rt=C*Re,kt=C*ge,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=Ee,$t+=T;++ge}else{ce=_+Re*C,Ht=0;e:for(ot=0;ot<P;++ot){if(qt=L[ce]-Br[Ht],qt!==0)break e;Ht+=q,ce+=F}if(qt===0)for(;;){ce=_+ie*C,Ht=0;e:for(ot=0;ot<P;++ot){if(rt=L[ce]-Br[Ht],rt!==0)break e;Ht+=q,ce+=F}if(rt===0){if(--ie<Re)break;continue}else{ce=_+ie*C,Ht=0;e:for(ot=0;ot<P;++ot){if(rt=L[ce]-_r[Ht],rt!==0)break e;Ht+=q,ce+=F}if(rt<0){for(Rt=C*Re,kt=C*ge,Ct=C*ie,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,nt=Ct+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=L[nt],L[nt]=Ee,$t+=T;++ge,--ie}else{for(Rt=C*Re,kt=C*ie,$t=_,ot=0;ot<P;++ot)ce=Rt+$t,Ge=kt+$t,Ee=L[ce],L[ce]=L[Ge],L[Ge]=Ee,$t+=T;--ie}break}}}}}p(_r),p(Br),ie-ge<=32?x(ge,ie,L,_,C,M,g,P,T,F,q):E(ge,ie,L,_,C,M,g,P,T,F,q)}}};function h(x,b,p){var E=l(b),k=[b,x].join(","),A=f[k];return x.length>1&&E?A(p,E[0],E[1]):A(p)}var d={"uint32,1,0":function(x,b){return function(p){var E=p.data,k=p.offset|0,A=p.shape,L=p.stride,_=L[0]|0,C=A[0]|0,M=L[1]|0,g=A[1]|0,P=M,T=M,F=1;C<=32?x(0,C-1,E,k,_,M,C,g,P,T,F):b(0,C-1,E,k,_,M,C,g,P,T,F)}}};function v(x,b){var p=[b,x].join(","),E=d[p],k=c(x,b),A=h(x,b,k);return E(k,A)}i.exports=v},446:function(i,a,o){"use strict";var s=o(7640),l={};function u(c){var f=c.order,h=c.dtype,d=[f,h],v=d.join(":"),x=l[v];return x||(l[v]=x=s(f,h)),x(c),c}i.exports=u},9618:function(i,a,o){var s=o(7163),l=typeof Float64Array!="undefined";function u(b,p){return b[0]-p[0]}function c(){var b=this.stride,p=new Array(b.length),E;for(E=0;E<p.length;++E)p[E]=[Math.abs(b[E]),E];p.sort(u);var k=new Array(p.length);for(E=0;E<k.length;++E)k[E]=p[E][1];return k}var f={T:function(b){function p(k){this.data=k}var E=p.prototype;return E.dtype=b,E.index=function(){return-1},E.size=0,E.dimension=-1,E.shape=E.stride=E.order=[],E.lo=E.hi=E.transpose=E.step=function(){return new p(this.data)},E.get=E.set=function(){},E.pick=function(){return null},function(A){return new p(A)}},0:function(b,p){function E(A,L){this.data=A,this.offset=L}var k=E.prototype;return k.dtype=b,k.index=function(){return this.offset},k.dimension=0,k.size=1,k.shape=k.stride=k.order=[],k.lo=k.hi=k.transpose=k.step=function(){return new E(this.data,this.offset)},k.pick=function(){return p(this.data)},k.valueOf=k.get=function(){return b==="generic"?this.data.get(this.offset):this.data[this.offset]},k.set=function(L){return b==="generic"?this.data.set(this.offset,L):this.data[this.offset]=L},function(L,_,C,M){return new E(L,M)}},1:function(b,p,E){function k(L,_,C,M){this.data=L,this.shape=[_],this.stride=[C],this.offset=M|0}var A=k.prototype;return A.dtype=b,A.dimension=1,Object.defineProperty(A,"size",{get:function(){return this.shape[0]}}),A.order=[0],A.set=function(_,C){return b==="generic"?this.data.set(this.offset+this.stride[0]*_,C):this.data[this.offset+this.stride[0]*_]=C},A.get=function(_){return b==="generic"?this.data.get(this.offset+this.stride[0]*_):this.data[this.offset+this.stride[0]*_]},A.index=function(_){return this.offset+this.stride[0]*_},A.hi=function(_){return new k(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,this.stride[0],this.offset)},A.lo=function(_){var C=this.offset,M=0,g=this.shape[0],P=this.stride[0];return typeof _=="number"&&_>=0&&(M=_|0,C+=P*M,g-=M),new k(this.data,g,P,C)},A.step=function(_){var C=this.shape[0],M=this.stride[0],g=this.offset,P=0,T=Math.ceil;return typeof _=="number"&&(P=_|0,P<0?(g+=M*(C-1),C=T(-C/P)):C=T(C/P),M*=P),new k(this.data,C,M,g)},A.transpose=function(_){_=_===void 0?0:_|0;var C=this.shape,M=this.stride;return new k(this.data,C[_],M[_],this.offset)},A.pick=function(_){var C=[],M=[],g=this.offset;typeof _=="number"&&_>=0?g=g+this.stride[0]*_|0:(C.push(this.shape[0]),M.push(this.stride[0]));var P=p[C.length+1];return P(this.data,C,M,g)},function(_,C,M,g){return new k(_,C[0],M[0],g)}},2:function(b,p,E){function k(L,_,C,M,g,P){this.data=L,this.shape=[_,C],this.stride=[M,g],this.offset=P|0}var A=k.prototype;return A.dtype=b,A.dimension=2,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(A,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),A.set=function(_,C,M){return b==="generic"?this.data.set(this.offset+this.stride[0]*_+this.stride[1]*C,M):this.data[this.offset+this.stride[0]*_+this.stride[1]*C]=M},A.get=function(_,C){return b==="generic"?this.data.get(this.offset+this.stride[0]*_+this.stride[1]*C):this.data[this.offset+this.stride[0]*_+this.stride[1]*C]},A.index=function(_,C){return this.offset+this.stride[0]*_+this.stride[1]*C},A.hi=function(_,C){return new k(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,typeof C!="number"||C<0?this.shape[1]:C|0,this.stride[0],this.stride[1],this.offset)},A.lo=function(_,C){var M=this.offset,g=0,P=this.shape[0],T=this.shape[1],F=this.stride[0],q=this.stride[1];return typeof _=="number"&&_>=0&&(g=_|0,M+=F*g,P-=g),typeof C=="number"&&C>=0&&(g=C|0,M+=q*g,T-=g),new k(this.data,P,T,F,q,M)},A.step=function(_,C){var M=this.shape[0],g=this.shape[1],P=this.stride[0],T=this.stride[1],F=this.offset,q=0,V=Math.ceil;return typeof _=="number"&&(q=_|0,q<0?(F+=P*(M-1),M=V(-M/q)):M=V(M/q),P*=q),typeof C=="number"&&(q=C|0,q<0?(F+=T*(g-1),g=V(-g/q)):g=V(g/q),T*=q),new k(this.data,M,g,P,T,F)},A.transpose=function(_,C){_=_===void 0?0:_|0,C=C===void 0?1:C|0;var M=this.shape,g=this.stride;return new k(this.data,M[_],M[C],g[_],g[C],this.offset)},A.pick=function(_,C){var M=[],g=[],P=this.offset;typeof _=="number"&&_>=0?P=P+this.stride[0]*_|0:(M.push(this.shape[0]),g.push(this.stride[0])),typeof C=="number"&&C>=0?P=P+this.stride[1]*C|0:(M.push(this.shape[1]),g.push(this.stride[1]));var T=p[M.length+1];return T(this.data,M,g,P)},function(_,C,M,g){return new k(_,C[0],C[1],M[0],M[1],g)}},3:function(b,p,E){function k(L,_,C,M,g,P,T,F){this.data=L,this.shape=[_,C,M],this.stride=[g,P,T],this.offset=F|0}var A=k.prototype;return A.dtype=b,A.dimension=3,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(A,"order",{get:function(){var _=Math.abs(this.stride[0]),C=Math.abs(this.stride[1]),M=Math.abs(this.stride[2]);return _>C?C>M?[2,1,0]:_>M?[1,2,0]:[1,0,2]:_>M?[2,0,1]:M>C?[0,1,2]:[0,2,1]}}),A.set=function(_,C,M,g){return b==="generic"?this.data.set(this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M,g):this.data[this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M]=g},A.get=function(_,C,M){return b==="generic"?this.data.get(this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M):this.data[this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M]},A.index=function(_,C,M){return this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M},A.hi=function(_,C,M){return new k(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},A.lo=function(_,C,M){var g=this.offset,P=0,T=this.shape[0],F=this.shape[1],q=this.shape[2],V=this.stride[0],H=this.stride[1],X=this.stride[2];return typeof _=="number"&&_>=0&&(P=_|0,g+=V*P,T-=P),typeof C=="number"&&C>=0&&(P=C|0,g+=H*P,F-=P),typeof M=="number"&&M>=0&&(P=M|0,g+=X*P,q-=P),new k(this.data,T,F,q,V,H,X,g)},A.step=function(_,C,M){var g=this.shape[0],P=this.shape[1],T=this.shape[2],F=this.stride[0],q=this.stride[1],V=this.stride[2],H=this.offset,X=0,G=Math.ceil;return typeof _=="number"&&(X=_|0,X<0?(H+=F*(g-1),g=G(-g/X)):g=G(g/X),F*=X),typeof C=="number"&&(X=C|0,X<0?(H+=q*(P-1),P=G(-P/X)):P=G(P/X),q*=X),typeof M=="number"&&(X=M|0,X<0?(H+=V*(T-1),T=G(-T/X)):T=G(T/X),V*=X),new k(this.data,g,P,T,F,q,V,H)},A.transpose=function(_,C,M){_=_===void 0?0:_|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0;var g=this.shape,P=this.stride;return new k(this.data,g[_],g[C],g[M],P[_],P[C],P[M],this.offset)},A.pick=function(_,C,M){var g=[],P=[],T=this.offset;typeof _=="number"&&_>=0?T=T+this.stride[0]*_|0:(g.push(this.shape[0]),P.push(this.stride[0])),typeof C=="number"&&C>=0?T=T+this.stride[1]*C|0:(g.push(this.shape[1]),P.push(this.stride[1])),typeof M=="number"&&M>=0?T=T+this.stride[2]*M|0:(g.push(this.shape[2]),P.push(this.stride[2]));var F=p[g.length+1];return F(this.data,g,P,T)},function(_,C,M,g){return new k(_,C[0],C[1],C[2],M[0],M[1],M[2],g)}},4:function(b,p,E){function k(L,_,C,M,g,P,T,F,q,V){this.data=L,this.shape=[_,C,M,g],this.stride=[P,T,F,q],this.offset=V|0}var A=k.prototype;return A.dtype=b,A.dimension=4,Object.defineProperty(A,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(A,"order",{get:E}),A.set=function(_,C,M,g,P){return b==="generic"?this.data.set(this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g,P):this.data[this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]=P},A.get=function(_,C,M,g){return b==="generic"?this.data.get(this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g):this.data[this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g]},A.index=function(_,C,M,g){return this.offset+this.stride[0]*_+this.stride[1]*C+this.stride[2]*M+this.stride[3]*g},A.hi=function(_,C,M,g){return new k(this.data,typeof _!="number"||_<0?this.shape[0]:_|0,typeof C!="number"||C<0?this.shape[1]:C|0,typeof M!="number"||M<0?this.shape[2]:M|0,typeof g!="number"||g<0?this.shape[3]:g|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},A.lo=function(_,C,M,g){var P=this.offset,T=0,F=this.shape[0],q=this.shape[1],V=this.shape[2],H=this.shape[3],X=this.stride[0],G=this.stride[1],N=this.stride[2],W=this.stride[3];return typeof _=="number"&&_>=0&&(T=_|0,P+=X*T,F-=T),typeof C=="number"&&C>=0&&(T=C|0,P+=G*T,q-=T),typeof M=="number"&&M>=0&&(T=M|0,P+=N*T,V-=T),typeof g=="number"&&g>=0&&(T=g|0,P+=W*T,H-=T),new k(this.data,F,q,V,H,X,G,N,W,P)},A.step=function(_,C,M,g){var P=this.shape[0],T=this.shape[1],F=this.shape[2],q=this.shape[3],V=this.stride[0],H=this.stride[1],X=this.stride[2],G=this.stride[3],N=this.offset,W=0,re=Math.ceil;return typeof _=="number"&&(W=_|0,W<0?(N+=V*(P-1),P=re(-P/W)):P=re(P/W),V*=W),typeof C=="number"&&(W=C|0,W<0?(N+=H*(T-1),T=re(-T/W)):T=re(T/W),H*=W),typeof M=="number"&&(W=M|0,W<0?(N+=X*(F-1),F=re(-F/W)):F=re(F/W),X*=W),typeof g=="number"&&(W=g|0,W<0?(N+=G*(q-1),q=re(-q/W)):q=re(q/W),G*=W),new k(this.data,P,T,F,q,V,H,X,G,N)},A.transpose=function(_,C,M,g){_=_===void 0?0:_|0,C=C===void 0?1:C|0,M=M===void 0?2:M|0,g=g===void 0?3:g|0;var P=this.shape,T=this.stride;return new k(this.data,P[_],P[C],P[M],P[g],T[_],T[C],T[M],T[g],this.offset)},A.pick=function(_,C,M,g){var P=[],T=[],F=this.offset;typeof _=="number"&&_>=0?F=F+this.stride[0]*_|0:(P.push(this.shape[0]),T.push(this.stride[0])),typeof C=="number"&&C>=0?F=F+this.stride[1]*C|0:(P.push(this.shape[1]),T.push(this.stride[1])),typeof M=="number"&&M>=0?F=F+this.stride[2]*M|0:(P.push(this.shape[2]),T.push(this.stride[2])),typeof g=="number"&&g>=0?F=F+this.stride[3]*g|0:(P.push(this.shape[3]),T.push(this.stride[3]));var q=p[P.length+1];return q(this.data,P,T,F)},function(_,C,M,g){return new k(_,C[0],C[1],C[2],C[3],M[0],M[1],M[2],M[3],g)}},5:function(p,E,k){function A(_,C,M,g,P,T,F,q,V,H,X,G){this.data=_,this.shape=[C,M,g,P,T],this.stride=[F,q,V,H,X],this.offset=G|0}var L=A.prototype;return L.dtype=p,L.dimension=5,Object.defineProperty(L,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(L,"order",{get:k}),L.set=function(C,M,g,P,T,F){return p==="generic"?this.data.set(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T,F):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]=F},L.get=function(C,M,g,P,T){return p==="generic"?this.data.get(this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T):this.data[this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T]},L.index=function(C,M,g,P,T){return this.offset+this.stride[0]*C+this.stride[1]*M+this.stride[2]*g+this.stride[3]*P+this.stride[4]*T},L.hi=function(C,M,g,P,T){return new A(this.data,typeof C!="number"||C<0?this.shape[0]:C|0,typeof M!="number"||M<0?this.shape[1]:M|0,typeof g!="number"||g<0?this.shape[2]:g|0,typeof P!="number"||P<0?this.shape[3]:P|0,typeof T!="number"||T<0?this.shape[4]:T|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},L.lo=function(C,M,g,P,T){var F=this.offset,q=0,V=this.shape[0],H=this.shape[1],X=this.shape[2],G=this.shape[3],N=this.shape[4],W=this.stride[0],re=this.stride[1],ae=this.stride[2],_e=this.stride[3],Me=this.stride[4];return typeof C=="number"&&C>=0&&(q=C|0,F+=W*q,V-=q),typeof M=="number"&&M>=0&&(q=M|0,F+=re*q,H-=q),typeof g=="number"&&g>=0&&(q=g|0,F+=ae*q,X-=q),typeof P=="number"&&P>=0&&(q=P|0,F+=_e*q,G-=q),typeof T=="number"&&T>=0&&(q=T|0,F+=Me*q,N-=q),new A(this.data,V,H,X,G,N,W,re,ae,_e,Me,F)},L.step=function(C,M,g,P,T){var F=this.shape[0],q=this.shape[1],V=this.shape[2],H=this.shape[3],X=this.shape[4],G=this.stride[0],N=this.stride[1],W=this.stride[2],re=this.stride[3],ae=this.stride[4],_e=this.offset,Me=0,ke=Math.ceil;return typeof C=="number"&&(Me=C|0,Me<0?(_e+=G*(F-1),F=ke(-F/Me)):F=ke(F/Me),G*=Me),typeof M=="number"&&(Me=M|0,Me<0?(_e+=N*(q-1),q=ke(-q/Me)):q=ke(q/Me),N*=Me),typeof g=="number"&&(Me=g|0,Me<0?(_e+=W*(V-1),V=ke(-V/Me)):V=ke(V/Me),W*=Me),typeof P=="number"&&(Me=P|0,Me<0?(_e+=re*(H-1),H=ke(-H/Me)):H=ke(H/Me),re*=Me),typeof T=="number"&&(Me=T|0,Me<0?(_e+=ae*(X-1),X=ke(-X/Me)):X=ke(X/Me),ae*=Me),new A(this.data,F,q,V,H,X,G,N,W,re,ae,_e)},L.transpose=function(C,M,g,P,T){C=C===void 0?0:C|0,M=M===void 0?1:M|0,g=g===void 0?2:g|0,P=P===void 0?3:P|0,T=T===void 0?4:T|0;var F=this.shape,q=this.stride;return new A(this.data,F[C],F[M],F[g],F[P],F[T],q[C],q[M],q[g],q[P],q[T],this.offset)},L.pick=function(C,M,g,P,T){var F=[],q=[],V=this.offset;typeof C=="number"&&C>=0?V=V+this.stride[0]*C|0:(F.push(this.shape[0]),q.push(this.stride[0])),typeof M=="number"&&M>=0?V=V+this.stride[1]*M|0:(F.push(this.shape[1]),q.push(this.stride[1])),typeof g=="number"&&g>=0?V=V+this.stride[2]*g|0:(F.push(this.shape[2]),q.push(this.stride[2])),typeof P=="number"&&P>=0?V=V+this.stride[3]*P|0:(F.push(this.shape[3]),q.push(this.stride[3])),typeof T=="number"&&T>=0?V=V+this.stride[4]*T|0:(F.push(this.shape[4]),q.push(this.stride[4]));var H=E[F.length+1];return H(this.data,F,q,V)},function(C,M,g,P){return new A(C,M[0],M[1],M[2],M[3],M[4],g[0],g[1],g[2],g[3],g[4],P)}}};function h(b,p){var E=p===-1?"T":String(p),k=f[E];return p===-1?k(b):p===0?k(b,v[b][0]):k(b,v[b],c)}function d(b){if(s(b))return"buffer";if(l)switch(Object.prototype.toString.call(b)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(b)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function x(b,p,E,k){if(b===void 0){var g=v.array[0];return g([])}else typeof b=="number"&&(b=[b]);p===void 0&&(p=[b.length]);var A=p.length;if(E===void 0){E=new Array(A);for(var L=A-1,_=1;L>=0;--L)E[L]=_,_*=p[L]}if(k===void 0){k=0;for(var L=0;L<A;++L)E[L]<0&&(k-=(p[L]-1)*E[L])}for(var C=d(b),M=v[C];M.length<=A+1;)M.push(h(C,M.length-1));var g=M[A+1];return g(b,p,E,k)}i.exports=x},1278:function(i,a,o){"use strict";var s=o(2361),l=Math.pow(2,-1074),u=-1>>>0;i.exports=c;function c(f,h){if(isNaN(f)||isNaN(h))return NaN;if(f===h)return f;if(f===0)return h<0?-l:l;var d=s.hi(f),v=s.lo(f);return h>f==f>0?v===u?(d+=1,v=0):v+=1:v===0?(v=u,d-=1):v-=1,s.pack(v,d)}},8406:function(i,a){var o=1e-6,s=1e-6;a.vertexNormals=function(l,u,c){for(var f=u.length,h=new Array(f),d=c===void 0?o:c,v=0;v<f;++v)h[v]=[0,0,0];for(var v=0;v<l.length;++v)for(var x=l[v],b=0,p=x[x.length-1],E=x[0],k=0;k<x.length;++k){b=p,p=E,E=x[(k+1)%x.length];for(var A=u[b],L=u[p],_=u[E],C=new Array(3),M=0,g=new Array(3),P=0,T=0;T<3;++T)C[T]=A[T]-L[T],M+=C[T]*C[T],g[T]=_[T]-L[T],P+=g[T]*g[T];if(M*P>d)for(var F=h[p],q=1/Math.sqrt(M*P),T=0;T<3;++T){var V=(T+1)%3,H=(T+2)%3;F[T]+=q*(g[V]*C[H]-g[H]*C[V])}}for(var v=0;v<f;++v){for(var F=h[v],X=0,T=0;T<3;++T)X+=F[T]*F[T];if(X>d)for(var q=1/Math.sqrt(X),T=0;T<3;++T)F[T]*=q;else for(var T=0;T<3;++T)F[T]=0}return h},a.faceNormals=function(l,u,c){for(var f=l.length,h=new Array(f),d=c===void 0?s:c,v=0;v<f;++v){for(var x=l[v],b=new Array(3),p=0;p<3;++p)b[p]=u[x[p]];for(var E=new Array(3),k=new Array(3),p=0;p<3;++p)E[p]=b[1][p]-b[0][p],k[p]=b[2][p]-b[0][p];for(var A=new Array(3),L=0,p=0;p<3;++p){var _=(p+1)%3,C=(p+2)%3;A[p]=E[_]*k[C]-E[C]*k[_],L+=A[p]*A[p]}L>d?L=1/Math.sqrt(L):L=0;for(var p=0;p<3;++p)A[p]*=L;h[v]=A}return h}},4081:function(i){"use strict";i.exports=a;function a(o,s,l,u,c,f,h,d,v,x){var b=s+f+x;if(p>0){var p=Math.sqrt(b+1);o[0]=.5*(h-v)/p,o[1]=.5*(d-u)/p,o[2]=.5*(l-f)/p,o[3]=.5*p}else{var E=Math.max(s,f,x),p=Math.sqrt(2*E-b+1);s>=E?(o[0]=.5*p,o[1]=.5*(c+l)/p,o[2]=.5*(d+u)/p,o[3]=.5*(h-v)/p):f>=E?(o[0]=.5*(l+c)/p,o[1]=.5*p,o[2]=.5*(v+h)/p,o[3]=.5*(d-u)/p):(o[0]=.5*(u+d)/p,o[1]=.5*(h+v)/p,o[2]=.5*p,o[3]=.5*(l-c)/p)}return o}},9977:function(i,a,o){"use strict";i.exports=p;var s=o(9215),l=o(6582),u=o(7399),c=o(7608),f=o(4081);function h(E,k,A){return Math.sqrt(Math.pow(E,2)+Math.pow(k,2)+Math.pow(A,2))}function d(E,k,A,L){return Math.sqrt(Math.pow(E,2)+Math.pow(k,2)+Math.pow(A,2)+Math.pow(L,2))}function v(E,k){var A=k[0],L=k[1],_=k[2],C=k[3],M=d(A,L,_,C);M>1e-6?(E[0]=A/M,E[1]=L/M,E[2]=_/M,E[3]=C/M):(E[0]=E[1]=E[2]=0,E[3]=1)}function x(E,k,A){this.radius=s([A]),this.center=s(k),this.rotation=s(E),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var b=x.prototype;b.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},b.recalcMatrix=function(E){this.radius.curve(E),this.center.curve(E),this.rotation.curve(E);var k=this.computedRotation;v(k,k);var A=this.computedMatrix;u(A,k);var L=this.computedCenter,_=this.computedEye,C=this.computedUp,M=Math.exp(this.computedRadius[0]);_[0]=L[0]+M*A[2],_[1]=L[1]+M*A[6],_[2]=L[2]+M*A[10],C[0]=A[1],C[1]=A[5],C[2]=A[9];for(var g=0;g<3;++g){for(var P=0,T=0;T<3;++T)P+=A[g+4*T]*_[T];A[12+g]=-P}},b.getMatrix=function(E,k){this.recalcMatrix(E);var A=this.computedMatrix;if(k){for(var L=0;L<16;++L)k[L]=A[L];return k}return A},b.idle=function(E){this.center.idle(E),this.radius.idle(E),this.rotation.idle(E)},b.flush=function(E){this.center.flush(E),this.radius.flush(E),this.rotation.flush(E)},b.pan=function(E,k,A,L){k=k||0,A=A||0,L=L||0,this.recalcMatrix(E);var _=this.computedMatrix,C=_[1],M=_[5],g=_[9],P=h(C,M,g);C/=P,M/=P,g/=P;var T=_[0],F=_[4],q=_[8],V=T*C+F*M+q*g;T-=C*V,F-=M*V,q-=g*V;var H=h(T,F,q);T/=H,F/=H,q/=H;var X=_[2],G=_[6],N=_[10],W=X*C+G*M+N*g,re=X*T+G*F+N*q;X-=W*C+re*T,G-=W*M+re*F,N-=W*g+re*q;var ae=h(X,G,N);X/=ae,G/=ae,N/=ae;var _e=T*k+C*A,Me=F*k+M*A,ke=q*k+g*A;this.center.move(E,_e,Me,ke);var ge=Math.exp(this.computedRadius[0]);ge=Math.max(1e-4,ge+L),this.radius.set(E,Math.log(ge))},b.rotate=function(E,k,A,L){this.recalcMatrix(E),k=k||0,A=A||0;var _=this.computedMatrix,C=_[0],M=_[4],g=_[8],P=_[1],T=_[5],F=_[9],q=_[2],V=_[6],H=_[10],X=k*C+A*P,G=k*M+A*T,N=k*g+A*F,W=-(V*N-H*G),re=-(H*X-q*N),ae=-(q*G-V*X),_e=Math.sqrt(Math.max(0,1-Math.pow(W,2)-Math.pow(re,2)-Math.pow(ae,2))),Me=d(W,re,ae,_e);Me>1e-6?(W/=Me,re/=Me,ae/=Me,_e/=Me):(W=re=ae=0,_e=1);var ke=this.computedRotation,ge=ke[0],ie=ke[1],Te=ke[2],Ee=ke[3],Ae=ge*_e+Ee*W+ie*ae-Te*re,ze=ie*_e+Ee*re+Te*W-ge*ae,Ce=Te*_e+Ee*ae+ge*re-ie*W,me=Ee*_e-ge*W-ie*re-Te*ae;if(L){W=q,re=V,ae=H;var Re=Math.sin(L)/h(W,re,ae);W*=Re,re*=Re,ae*=Re,_e=Math.cos(k),Ae=Ae*_e+me*W+ze*ae-Ce*re,ze=ze*_e+me*re+Ce*W-Ae*ae,Ce=Ce*_e+me*ae+Ae*re-ze*W,me=me*_e-Ae*W-ze*re-Ce*ae}var ce=d(Ae,ze,Ce,me);ce>1e-6?(Ae/=ce,ze/=ce,Ce/=ce,me/=ce):(Ae=ze=Ce=0,me=1),this.rotation.set(E,Ae,ze,Ce,me)},b.lookAt=function(E,k,A,L){this.recalcMatrix(E),A=A||this.computedCenter,k=k||this.computedEye,L=L||this.computedUp;var _=this.computedMatrix;l(_,k,A,L);var C=this.computedRotation;f(C,_[0],_[1],_[2],_[4],_[5],_[6],_[8],_[9],_[10]),v(C,C),this.rotation.set(E,C[0],C[1],C[2],C[3]);for(var M=0,g=0;g<3;++g)M+=Math.pow(A[g]-k[g],2);this.radius.set(E,.5*Math.log(Math.max(M,1e-6))),this.center.set(E,A[0],A[1],A[2])},b.translate=function(E,k,A,L){this.center.move(E,k||0,A||0,L||0)},b.setMatrix=function(E,k){var A=this.computedRotation;f(A,k[0],k[1],k[2],k[4],k[5],k[6],k[8],k[9],k[10]),v(A,A),this.rotation.set(E,A[0],A[1],A[2],A[3]);var L=this.computedMatrix;c(L,k);var _=L[15];if(Math.abs(_)>1e-6){var C=L[12]/_,M=L[13]/_,g=L[14]/_;this.recalcMatrix(E);var P=Math.exp(this.computedRadius[0]);this.center.set(E,C-L[2]*P,M-L[6]*P,g-L[10]*P),this.radius.idle(E)}else this.center.idle(E),this.radius.idle(E)},b.setDistance=function(E,k){k>0&&this.radius.set(E,Math.log(k))},b.setDistanceLimits=function(E,k){E>0?E=Math.log(E):E=-1/0,k>0?k=Math.log(k):k=1/0,k=Math.max(k,E),this.radius.bounds[0][0]=E,this.radius.bounds[1][0]=k},b.getDistanceLimits=function(E){var k=this.radius.bounds;return E?(E[0]=Math.exp(k[0][0]),E[1]=Math.exp(k[1][0]),E):[Math.exp(k[0][0]),Math.exp(k[1][0])]},b.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},b.fromJSON=function(E){var k=this.lastT(),A=E.center;A&&this.center.set(k,A[0],A[1],A[2]);var L=E.rotation;L&&this.rotation.set(k,L[0],L[1],L[2],L[3]);var _=E.distance;_&&_>0&&this.radius.set(k,Math.log(_)),this.setDistanceLimits(E.zoomMin,E.zoomMax)};function p(E){E=E||{};var k=E.center||[0,0,0],A=E.rotation||[0,0,0,1],L=E.radius||1;k=[].slice.call(k,0,3),A=[].slice.call(A,0,4),v(A,A);var _=new x(A,k,Math.log(L));return _.setDistanceLimits(E.zoomMin,E.zoomMax),("eye"in E||"up"in E)&&_.lookAt(0,E.eye,E.center,E.up),_}},1371:function(i,a,o){"use strict";var s=o(3233);i.exports=function(u,c,f){return f=typeof f!="undefined"?f+"":" ",s(f,c)+u}},3202:function(i){i.exports=function(o,s){s||(s=[0,""]),o=String(o);var l=parseFloat(o,10);return s[0]=l,s[1]=o.match(/[\d.\-\+]*\s*(.*)/)[1]||"",s}},3088:function(i,a,o){"use strict";i.exports=l;var s=o(3140);function l(u,c){for(var f=c.length|0,h=u.length,d=[new Array(f),new Array(f)],v=0;v<f;++v)d[0][v]=[],d[1][v]=[];for(var v=0;v<h;++v){var x=u[v];d[0][x[0]].push(x),d[1][x[1]].push(x)}for(var b=[],v=0;v<f;++v)d[0][v].length+d[1][v].length===0&&b.push([v]);function p(g,P){var T=d[P][g[P]];T.splice(T.indexOf(g),1)}function E(g,P,T){for(var F,q,V,H=0;H<2;++H)if(d[H][P].length>0){F=d[H][P][0],V=H;break}q=F[V^1];for(var X=0;X<2;++X)for(var G=d[X][P],N=0;N<G.length;++N){var W=G[N],re=W[X^1],ae=s(c[g],c[P],c[q],c[re]);ae>0&&(F=W,q=re,V=X)}return T||F&&p(F,V),q}function k(g,P){var T=d[P][g][0],F=[g];p(T,P);for(var q=T[P^1],V=P;;){for(;q!==g;)F.push(q),q=E(F[F.length-2],q,!1);if(d[0][g].length+d[1][g].length===0)break;var H=F[F.length-1],X=g,G=F[1],N=E(H,X,!0);if(s(c[H],c[X],c[G],c[N])<0)break;F.push(g),q=E(H,X)}return F}function A(g,P){return P[1]===P[P.length-1]}for(var v=0;v<f;++v)for(var L=0;L<2;++L){for(var _=[];d[L][v].length>0;){var C=d[0][v].length,M=k(v,L);A(_,M)?_.push.apply(_,M):(_.length>0&&b.push(_),_=M)}_.length>0&&b.push(_)}return b}},5609:function(i,a,o){"use strict";i.exports=l;var s=o(3134);function l(u,c){for(var f=s(u,c.length),h=new Array(c.length),d=new Array(c.length),v=[],x=0;x<c.length;++x){var b=f[x].length;d[x]=b,h[x]=!0,b<=1&&v.push(x)}for(;v.length>0;){var p=v.pop();h[p]=!1;for(var E=f[p],x=0;x<E.length;++x){var k=E[x];--d[k]===0&&v.push(k)}}for(var A=new Array(c.length),L=[],x=0;x<c.length;++x)if(h[x]){var p=L.length;A[x]=p,L.push(c[x])}else A[x]=-1;for(var _=[],x=0;x<u.length;++x){var C=u[x];h[C[0]]&&h[C[1]]&&_.push([A[C[0]],A[C[1]]])}return[_,L]}},2095:function(i,a,o){"use strict";i.exports=b;var s=o(3134),l=o(3088),u=o(5085),c=o(5250),f=o(8210),h=o(1682),d=o(5609);function v(p,E){for(var k=new Array(p),A=0;A<p;++A)k[A]=E;return k}function x(p){for(var E=new Array(p),k=0;k<p;++k)E[k]=[];return E}function b(p,E){var Re=d(p,E);p=Re[0],E=Re[1];for(var k=E.length,A=p.length,L=s(p,E.length),_=0;_<k;++_)if(L[_].length%2===1)throw new Error("planar-graph-to-polyline: graph must be manifold");var C=l(p,E);function M(ot){for(var Rt=ot.length,kt=[0],Ct=0;Ct<Rt;++Ct){var Yt=E[ot[Ct]],xr=E[ot[(Ct+1)%Rt]],er=c(-Yt[0],Yt[1]),Ke=c(-Yt[0],xr[1]),xt=c(xr[0],Yt[1]),bt=c(xr[0],xr[1]);kt=f(kt,f(f(er,Ke),f(xt,bt)))}return kt[kt.length-1]>0}C=C.filter(M);for(var g=C.length,P=new Array(g),T=new Array(g),_=0;_<g;++_){P[_]=_;var F=new Array(g),q=C[_].map(function(Rt){return E[Rt]}),V=u([q]),H=0;e:for(var X=0;X<g;++X)if(F[X]=0,_!==X){for(var G=C[X],N=G.length,W=0;W<N;++W){var re=V(E[G[W]]);if(re!==0){re<0&&(F[X]=1,H+=1);continue e}}F[X]=1,H+=1}T[_]=[H,_,F]}T.sort(function(ot,Rt){return Rt[0]-ot[0]});for(var _=0;_<g;++_)for(var F=T[_],ae=F[1],_e=F[2],X=0;X<g;++X)_e[X]&&(P[X]=ae);for(var Me=x(g),_=0;_<g;++_)Me[_].push(P[_]),Me[P[_]].push(_);for(var ke={},ge=v(k,!1),_=0;_<g;++_)for(var G=C[_],N=G.length,X=0;X<N;++X){var ie=G[X],Te=G[(X+1)%N],Ee=Math.min(ie,Te)+":"+Math.max(ie,Te);if(Ee in ke){var Ae=ke[Ee];Me[Ae].push(_),Me[_].push(Ae),ge[ie]=ge[Te]=!0}else ke[Ee]=_}function ze(ot){for(var Rt=ot.length,kt=0;kt<Rt;++kt)if(!ge[ot[kt]])return!1;return!0}for(var Ce=[],me=v(g,-1),_=0;_<g;++_)P[_]===_&&!ze(C[_])?(Ce.push(_),me[_]=0):me[_]=-1;for(var Re=[];Ce.length>0;){var ce=Ce.pop(),Ge=Me[ce];h(Ge,function(ot,Rt){return ot-Rt});var nt=Ge.length,ct=me[ce],qt;if(ct===0){var G=C[ce];qt=[G]}for(var _=0;_<nt;++_){var rt=Ge[_];if(!(me[rt]>=0)&&(me[rt]=ct^1,Ce.push(rt),ct===0)){var G=C[rt];ze(G)||(G.reverse(),qt.push(G))}}ct===0&&Re.push(qt)}return Re}},5085:function(i,a,o){i.exports=E;var s=o(3250)[3],l=o(4209),u=o(3352),c=o(2478);function f(){return!0}function h(k){return function(A,L){var _=k[A];return _?!!_.queryPoint(L,f):!1}}function d(k){for(var A={},L=0;L<k.length;++L){var _=k[L],C=_[0][0],M=_[0][1],g=_[1][1],P=[Math.min(M,g),Math.max(M,g)];C in A?A[C].push(P):A[C]=[P]}for(var T={},F=Object.keys(A),L=0;L<F.length;++L){var q=A[F[L]];T[F[L]]=u(q)}return h(T)}function v(k,A){return function(L){var _=c.le(A,L[0]);if(_<0)return 1;var C=k[_];if(!C)if(_>0&&A[_]===L[0])C=k[_-1];else return 1;for(var M=1;C;){var g=C.key,P=s(L,g[0],g[1]);if(g[0][0]<g[1][0])if(P<0)C=C.left;else if(P>0)M=-1,C=C.right;else return 0;else if(P>0)C=C.left;else if(P<0)M=1,C=C.right;else return 0}return M}}function x(k){return 1}function b(k){return function(L){return k(L[0],L[1])?0:1}}function p(k,A){return function(_){return k(_[0],_[1])?0:A(_)}}function E(k){for(var A=k.length,L=[],_=[],C=0,M=0;M<A;++M)for(var g=k[M],P=g.length,T=P-1,F=0;F<P;T=F++){var q=g[T],V=g[F];q[0]===V[0]?_.push([q,V]):L.push([q,V])}if(L.length===0)return _.length===0?x:b(d(_));var H=l(L),X=v(H.slabs,H.coordinates);return _.length===0?X:p(d(_),X)}},9346:function(i){"use strict";var a=new Float64Array(4),o=new Float64Array(4),s=new Float64Array(4);function l(u,c,f,h,d){a.length<h.length&&(a=new Float64Array(h.length),o=new Float64Array(h.length),s=new Float64Array(h.length));for(var v=0;v<h.length;++v)a[v]=u[v]-h[v],o[v]=c[v]-u[v],s[v]=f[v]-u[v];for(var x=0,b=0,p=0,E=0,k=0,A=0,v=0;v<h.length;++v){var L=o[v],_=s[v],C=a[v];x+=L*L,b+=L*_,p+=_*_,E+=C*L,k+=C*_,A+=C*C}var M=Math.abs(x*p-b*b),g=b*k-p*E,P=b*E-x*k,T;if(g+P<=M)if(g<0)P<0&&E<0?(P=0,-E>=x?(g=1,T=x+2*E+A):(g=-E/x,T=E*g+A)):(g=0,k>=0?(P=0,T=A):-k>=p?(P=1,T=p+2*k+A):(P=-k/p,T=k*P+A));else if(P<0)P=0,E>=0?(g=0,T=A):-E>=x?(g=1,T=x+2*E+A):(g=-E/x,T=E*g+A);else{var F=1/M;g*=F,P*=F,T=g*(x*g+b*P+2*E)+P*(b*g+p*P+2*k)+A}else{var q,V,H,X;g<0?(q=b+E,V=p+k,V>q?(H=V-q,X=x-2*b+p,H>=X?(g=1,P=0,T=x+2*E+A):(g=H/X,P=1-g,T=g*(x*g+b*P+2*E)+P*(b*g+p*P+2*k)+A)):(g=0,V<=0?(P=1,T=p+2*k+A):k>=0?(P=0,T=A):(P=-k/p,T=k*P+A))):P<0?(q=b+k,V=x+E,V>q?(H=V-q,X=x-2*b+p,H>=X?(P=1,g=0,T=p+2*k+A):(P=H/X,g=1-P,T=g*(x*g+b*P+2*E)+P*(b*g+p*P+2*k)+A)):(P=0,V<=0?(g=1,T=x+2*E+A):E>=0?(g=0,T=A):(g=-E/x,T=E*g+A))):(H=p+k-b-E,H<=0?(g=0,P=1,T=p+2*k+A):(X=x-2*b+p,H>=X?(g=1,P=0,T=x+2*E+A):(g=H/X,P=1-g,T=g*(x*g+b*P+2*E)+P*(b*g+p*P+2*k)+A)))}for(var G=1-g-P,v=0;v<h.length;++v)d[v]=G*u[v]+g*c[v]+P*f[v];return T<0?0:T}i.exports=l},8648:function(i,a,o){i.exports=o(783)},2653:function(i,a,o){"use strict";var s=o(3865);i.exports=l;function l(u,c){for(var f=u.length,h=new Array(f),d=0;d<f;++d)h[d]=s(u[d],c[d]);return h}},5838:function(i,a,o){"use strict";i.exports=l;var s=o(7842);function l(u){for(var c=new Array(u.length),f=0;f<u.length;++f)c[f]=s(u[f]);return c}},8987:function(i,a,o){"use strict";var s=o(7842),l=o(6504);i.exports=u;function u(c,f){for(var h=s(f),d=c.length,v=new Array(d),x=0;x<d;++x)v[x]=l(c[x],h);return v}},544:function(i,a,o){"use strict";var s=o(5572);i.exports=l;function l(u,c){for(var f=u.length,h=new Array(f),d=0;d<f;++d)h[d]=s(u[d],c[d]);return h}},5771:function(i,a,o){"use strict";var s=o(8507),l=o(3788),u=o(2419);i.exports=c;function c(f){f.sort(l);for(var h=f.length,d=0,v=0;v<h;++v){var x=f[v],b=u(x);if(b!==0){if(d>0){var p=f[d-1];if(s(x,p)===0&&u(p)!==b){d-=1;continue}}f[d++]=x}}return f.length=d,f}},3233:function(i){"use strict";var a="",o;i.exports=s;function s(l,u){if(typeof l!="string")throw new TypeError("expected a string");if(u===1)return l;if(u===2)return l+l;var c=l.length*u;if(o!==l||typeof o=="undefined")o=l,a="";else if(a.length>=c)return a.substr(0,c);for(;c>a.length&&u>1;)u&1&&(a+=l),u>>=1,l+=l;return a+=l,a=a.substr(0,c),a}},3025:function(i,a,o){i.exports=o.g.performance&&o.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(i){"use strict";i.exports=a;function a(o){for(var s=o.length,l=o[o.length-1],u=s,c=s-2;c>=0;--c){var f=l,h=o[c];l=f+h;var d=l-f,v=h-d;v&&(o[--u]=l,l=v)}for(var x=0,c=u;c<s;++c){var f=o[c],h=l;l=f+h;var d=l-f,v=h-d;v&&(o[x++]=v)}return o[x++]=l,o.length=x,o}},2962:function(i,a,o){"use strict";var s=o(5250),l=o(8210),u=o(3012),c=o(7004),f=6;function h(A,L,_,C){return function(g){return C(A(_(g[0][0],g[1][1]),_(-g[0][1],g[1][0])))}}function d(A,L,_,C){return function(g){return C(A(L(A(_(g[1][1],g[2][2]),_(-g[1][2],g[2][1])),g[0][0]),A(L(A(_(g[1][0],g[2][2]),_(-g[1][2],g[2][0])),-g[0][1]),L(A(_(g[1][0],g[2][1]),_(-g[1][1],g[2][0])),g[0][2]))))}}function v(A,L,_,C){return function(g){return C(A(A(L(A(L(A(_(g[2][2],g[3][3]),_(-g[2][3],g[3][2])),g[1][1]),A(L(A(_(g[2][1],g[3][3]),_(-g[2][3],g[3][1])),-g[1][2]),L(A(_(g[2][1],g[3][2]),_(-g[2][2],g[3][1])),g[1][3]))),g[0][0]),L(A(L(A(_(g[2][2],g[3][3]),_(-g[2][3],g[3][2])),g[1][0]),A(L(A(_(g[2][0],g[3][3]),_(-g[2][3],g[3][0])),-g[1][2]),L(A(_(g[2][0],g[3][2]),_(-g[2][2],g[3][0])),g[1][3]))),-g[0][1])),A(L(A(L(A(_(g[2][1],g[3][3]),_(-g[2][3],g[3][1])),g[1][0]),A(L(A(_(g[2][0],g[3][3]),_(-g[2][3],g[3][0])),-g[1][1]),L(A(_(g[2][0],g[3][1]),_(-g[2][1],g[3][0])),g[1][3]))),g[0][2]),L(A(L(A(_(g[2][1],g[3][2]),_(-g[2][2],g[3][1])),g[1][0]),A(L(A(_(g[2][0],g[3][2]),_(-g[2][2],g[3][0])),-g[1][1]),L(A(_(g[2][0],g[3][1]),_(-g[2][1],g[3][0])),g[1][2]))),-g[0][3]))))}}function x(A,L,_,C){return function(g){return C(A(A(L(A(A(L(A(L(A(_(g[3][3],g[4][4]),_(-g[3][4],g[4][3])),g[2][2]),A(L(A(_(g[3][2],g[4][4]),_(-g[3][4],g[4][2])),-g[2][3]),L(A(_(g[3][2],g[4][3]),_(-g[3][3],g[4][2])),g[2][4]))),g[1][1]),L(A(L(A(_(g[3][3],g[4][4]),_(-g[3][4],g[4][3])),g[2][1]),A(L(A(_(g[3][1],g[4][4]),_(-g[3][4],g[4][1])),-g[2][3]),L(A(_(g[3][1],g[4][3]),_(-g[3][3],g[4][1])),g[2][4]))),-g[1][2])),A(L(A(L(A(_(g[3][2],g[4][4]),_(-g[3][4],g[4][2])),g[2][1]),A(L(A(_(g[3][1],g[4][4]),_(-g[3][4],g[4][1])),-g[2][2]),L(A(_(g[3][1],g[4][2]),_(-g[3][2],g[4][1])),g[2][4]))),g[1][3]),L(A(L(A(_(g[3][2],g[4][3]),_(-g[3][3],g[4][2])),g[2][1]),A(L(A(_(g[3][1],g[4][3]),_(-g[3][3],g[4][1])),-g[2][2]),L(A(_(g[3][1],g[4][2]),_(-g[3][2],g[4][1])),g[2][3]))),-g[1][4]))),g[0][0]),L(A(A(L(A(L(A(_(g[3][3],g[4][4]),_(-g[3][4],g[4][3])),g[2][2]),A(L(A(_(g[3][2],g[4][4]),_(-g[3][4],g[4][2])),-g[2][3]),L(A(_(g[3][2],g[4][3]),_(-g[3][3],g[4][2])),g[2][4]))),g[1][0]),L(A(L(A(_(g[3][3],g[4][4]),_(-g[3][4],g[4][3])),g[2][0]),A(L(A(_(g[3][0],g[4][4]),_(-g[3][4],g[4][0])),-g[2][3]),L(A(_(g[3][0],g[4][3]),_(-g[3][3],g[4][0])),g[2][4]))),-g[1][2])),A(L(A(L(A(_(g[3][2],g[4][4]),_(-g[3][4],g[4][2])),g[2][0]),A(L(A(_(g[3][0],g[4][4]),_(-g[3][4],g[4][0])),-g[2][2]),L(A(_(g[3][0],g[4][2]),_(-g[3][2],g[4][0])),g[2][4]))),g[1][3]),L(A(L(A(_(g[3][2],g[4][3]),_(-g[3][3],g[4][2])),g[2][0]),A(L(A(_(g[3][0],g[4][3]),_(-g[3][3],g[4][0])),-g[2][2]),L(A(_(g[3][0],g[4][2]),_(-g[3][2],g[4][0])),g[2][3]))),-g[1][4]))),-g[0][1])),A(L(A(A(L(A(L(A(_(g[3][3],g[4][4]),_(-g[3][4],g[4][3])),g[2][1]),A(L(A(_(g[3][1],g[4][4]),_(-g[3][4],g[4][1])),-g[2][3]),L(A(_(g[3][1],g[4][3]),_(-g[3][3],g[4][1])),g[2][4]))),g[1][0]),L(A(L(A(_(g[3][3],g[4][4]),_(-g[3][4],g[4][3])),g[2][0]),A(L(A(_(g[3][0],g[4][4]),_(-g[3][4],g[4][0])),-g[2][3]),L(A(_(g[3][0],g[4][3]),_(-g[3][3],g[4][0])),g[2][4]))),-g[1][1])),A(L(A(L(A(_(g[3][1],g[4][4]),_(-g[3][4],g[4][1])),g[2][0]),A(L(A(_(g[3][0],g[4][4]),_(-g[3][4],g[4][0])),-g[2][1]),L(A(_(g[3][0],g[4][1]),_(-g[3][1],g[4][0])),g[2][4]))),g[1][3]),L(A(L(A(_(g[3][1],g[4][3]),_(-g[3][3],g[4][1])),g[2][0]),A(L(A(_(g[3][0],g[4][3]),_(-g[3][3],g[4][0])),-g[2][1]),L(A(_(g[3][0],g[4][1]),_(-g[3][1],g[4][0])),g[2][3]))),-g[1][4]))),g[0][2]),A(L(A(A(L(A(L(A(_(g[3][2],g[4][4]),_(-g[3][4],g[4][2])),g[2][1]),A(L(A(_(g[3][1],g[4][4]),_(-g[3][4],g[4][1])),-g[2][2]),L(A(_(g[3][1],g[4][2]),_(-g[3][2],g[4][1])),g[2][4]))),g[1][0]),L(A(L(A(_(g[3][2],g[4][4]),_(-g[3][4],g[4][2])),g[2][0]),A(L(A(_(g[3][0],g[4][4]),_(-g[3][4],g[4][0])),-g[2][2]),L(A(_(g[3][0],g[4][2]),_(-g[3][2],g[4][0])),g[2][4]))),-g[1][1])),A(L(A(L(A(_(g[3][1],g[4][4]),_(-g[3][4],g[4][1])),g[2][0]),A(L(A(_(g[3][0],g[4][4]),_(-g[3][4],g[4][0])),-g[2][1]),L(A(_(g[3][0],g[4][1]),_(-g[3][1],g[4][0])),g[2][4]))),g[1][2]),L(A(L(A(_(g[3][1],g[4][2]),_(-g[3][2],g[4][1])),g[2][0]),A(L(A(_(g[3][0],g[4][2]),_(-g[3][2],g[4][0])),-g[2][1]),L(A(_(g[3][0],g[4][1]),_(-g[3][1],g[4][0])),g[2][2]))),-g[1][4]))),-g[0][3]),L(A(A(L(A(L(A(_(g[3][2],g[4][3]),_(-g[3][3],g[4][2])),g[2][1]),A(L(A(_(g[3][1],g[4][3]),_(-g[3][3],g[4][1])),-g[2][2]),L(A(_(g[3][1],g[4][2]),_(-g[3][2],g[4][1])),g[2][3]))),g[1][0]),L(A(L(A(_(g[3][2],g[4][3]),_(-g[3][3],g[4][2])),g[2][0]),A(L(A(_(g[3][0],g[4][3]),_(-g[3][3],g[4][0])),-g[2][2]),L(A(_(g[3][0],g[4][2]),_(-g[3][2],g[4][0])),g[2][3]))),-g[1][1])),A(L(A(L(A(_(g[3][1],g[4][3]),_(-g[3][3],g[4][1])),g[2][0]),A(L(A(_(g[3][0],g[4][3]),_(-g[3][3],g[4][0])),-g[2][1]),L(A(_(g[3][0],g[4][1]),_(-g[3][1],g[4][0])),g[2][3]))),g[1][2]),L(A(L(A(_(g[3][1],g[4][2]),_(-g[3][2],g[4][1])),g[2][0]),A(L(A(_(g[3][0],g[4][2]),_(-g[3][2],g[4][0])),-g[2][1]),L(A(_(g[3][0],g[4][1]),_(-g[3][1],g[4][0])),g[2][2]))),-g[1][3]))),g[0][4])))))}}function b(A){var L=A===2?h:A===3?d:A===4?v:A===5?x:void 0;return L(l,u,s,c)}var p=[function(){return[0]},function(L){return[L[0][0]]}];function E(A,L,_,C,M,g,P,T){return function(q){switch(q.length){case 0:return A(q);case 1:return L(q);case 2:return _(q);case 3:return C(q);case 4:return M(q);case 5:return g(q)}var V=P[q.length];return V||(V=P[q.length]=T(q.length)),V(q)}}function k(){for(;p.length<f;)p.push(b(p.length));i.exports=E.apply(void 0,p.concat([p,b]));for(var A=0;A<p.length;++A)i.exports[A]=p[A]}k()},1944:function(i,a,o){"use strict";var s=o(5250),l=o(8210);i.exports=u;function u(c,f){for(var h=s(c[0],f[0]),d=1;d<c.length;++d)h=l(h,s(c[d],f[d]));return h}},2646:function(i,a,o){"use strict";var s=o(5250),l=o(8210),u=o(8545),c=o(3012),f=6;function h(M){var g=M===3?b:M===4?p:M===5?E:k;return g(l,u,s,c)}function d(){return 0}function v(){return 0}function x(){return 0}function b(M,g,P,T){function F(q,V,H){var X=P(q[0],q[0]),G=T(X,V[0]),N=T(X,H[0]),W=P(V[0],V[0]),re=T(W,q[0]),ae=T(W,H[0]),_e=P(H[0],H[0]),Me=T(_e,q[0]),ke=T(_e,V[0]),ge=M(g(ke,ae),g(re,G)),ie=g(Me,N),Te=g(ge,ie);return Te[Te.length-1]}return F}function p(M,g,P,T){function F(q,V,H,X){var G=M(P(q[0],q[0]),P(q[1],q[1])),N=T(G,V[0]),W=T(G,H[0]),re=T(G,X[0]),ae=M(P(V[0],V[0]),P(V[1],V[1])),_e=T(ae,q[0]),Me=T(ae,H[0]),ke=T(ae,X[0]),ge=M(P(H[0],H[0]),P(H[1],H[1])),ie=T(ge,q[0]),Te=T(ge,V[0]),Ee=T(ge,X[0]),Ae=M(P(X[0],X[0]),P(X[1],X[1])),ze=T(Ae,q[0]),Ce=T(Ae,V[0]),me=T(Ae,H[0]),Re=M(M(T(g(me,Ee),V[1]),M(T(g(Ce,ke),-H[1]),T(g(Te,Me),X[1]))),M(T(g(Ce,ke),q[1]),M(T(g(ze,re),-V[1]),T(g(_e,N),X[1])))),ce=M(M(T(g(me,Ee),q[1]),M(T(g(ze,re),-H[1]),T(g(ie,W),X[1]))),M(T(g(Te,Me),q[1]),M(T(g(ie,W),-V[1]),T(g(_e,N),H[1])))),Ge=g(Re,ce);return Ge[Ge.length-1]}return F}function E(M,g,P,T){function F(q,V,H,X,G){var N=M(P(q[0],q[0]),M(P(q[1],q[1]),P(q[2],q[2]))),W=T(N,V[0]),re=T(N,H[0]),ae=T(N,X[0]),_e=T(N,G[0]),Me=M(P(V[0],V[0]),M(P(V[1],V[1]),P(V[2],V[2]))),ke=T(Me,q[0]),ge=T(Me,H[0]),ie=T(Me,X[0]),Te=T(Me,G[0]),Ee=M(P(H[0],H[0]),M(P(H[1],H[1]),P(H[2],H[2]))),Ae=T(Ee,q[0]),ze=T(Ee,V[0]),Ce=T(Ee,X[0]),me=T(Ee,G[0]),Re=M(P(X[0],X[0]),M(P(X[1],X[1]),P(X[2],X[2]))),ce=T(Re,q[0]),Ge=T(Re,V[0]),nt=T(Re,H[0]),ct=T(Re,G[0]),qt=M(P(G[0],G[0]),M(P(G[1],G[1]),P(G[2],G[2]))),rt=T(qt,q[0]),ot=T(qt,V[0]),Rt=T(qt,H[0]),kt=T(qt,X[0]),Ct=M(M(M(T(M(T(g(kt,ct),H[1]),M(T(g(Rt,me),-X[1]),T(g(nt,Ce),G[1]))),V[2]),M(T(M(T(g(kt,ct),V[1]),M(T(g(ot,Te),-X[1]),T(g(Ge,ie),G[1]))),-H[2]),T(M(T(g(Rt,me),V[1]),M(T(g(ot,Te),-H[1]),T(g(ze,ge),G[1]))),X[2]))),M(T(M(T(g(nt,Ce),V[1]),M(T(g(Ge,ie),-H[1]),T(g(ze,ge),X[1]))),-G[2]),M(T(M(T(g(kt,ct),V[1]),M(T(g(ot,Te),-X[1]),T(g(Ge,ie),G[1]))),q[2]),T(M(T(g(kt,ct),q[1]),M(T(g(rt,_e),-X[1]),T(g(ce,ae),G[1]))),-V[2])))),M(M(T(M(T(g(ot,Te),q[1]),M(T(g(rt,_e),-V[1]),T(g(ke,W),G[1]))),X[2]),M(T(M(T(g(Ge,ie),q[1]),M(T(g(ce,ae),-V[1]),T(g(ke,W),X[1]))),-G[2]),T(M(T(g(nt,Ce),V[1]),M(T(g(Ge,ie),-H[1]),T(g(ze,ge),X[1]))),q[2]))),M(T(M(T(g(nt,Ce),q[1]),M(T(g(ce,ae),-H[1]),T(g(Ae,re),X[1]))),-V[2]),M(T(M(T(g(Ge,ie),q[1]),M(T(g(ce,ae),-V[1]),T(g(ke,W),X[1]))),H[2]),T(M(T(g(ze,ge),q[1]),M(T(g(Ae,re),-V[1]),T(g(ke,W),H[1]))),-X[2]))))),Yt=M(M(M(T(M(T(g(kt,ct),H[1]),M(T(g(Rt,me),-X[1]),T(g(nt,Ce),G[1]))),q[2]),T(M(T(g(kt,ct),q[1]),M(T(g(rt,_e),-X[1]),T(g(ce,ae),G[1]))),-H[2])),M(T(M(T(g(Rt,me),q[1]),M(T(g(rt,_e),-H[1]),T(g(Ae,re),G[1]))),X[2]),T(M(T(g(nt,Ce),q[1]),M(T(g(ce,ae),-H[1]),T(g(Ae,re),X[1]))),-G[2]))),M(M(T(M(T(g(Rt,me),V[1]),M(T(g(ot,Te),-H[1]),T(g(ze,ge),G[1]))),q[2]),T(M(T(g(Rt,me),q[1]),M(T(g(rt,_e),-H[1]),T(g(Ae,re),G[1]))),-V[2])),M(T(M(T(g(ot,Te),q[1]),M(T(g(rt,_e),-V[1]),T(g(ke,W),G[1]))),H[2]),T(M(T(g(ze,ge),q[1]),M(T(g(Ae,re),-V[1]),T(g(ke,W),H[1]))),-G[2])))),xr=g(Ct,Yt);return xr[xr.length-1]}return F}function k(M,g,P,T){function F(q,V,H,X,G,N){var W=M(M(P(q[0],q[0]),P(q[1],q[1])),M(P(q[2],q[2]),P(q[3],q[3]))),re=T(W,V[0]),ae=T(W,H[0]),_e=T(W,X[0]),Me=T(W,G[0]),ke=T(W,N[0]),ge=M(M(P(V[0],V[0]),P(V[1],V[1])),M(P(V[2],V[2]),P(V[3],V[3]))),ie=T(ge,q[0]),Te=T(ge,H[0]),Ee=T(ge,X[0]),Ae=T(ge,G[0]),ze=T(ge,N[0]),Ce=M(M(P(H[0],H[0]),P(H[1],H[1])),M(P(H[2],H[2]),P(H[3],H[3]))),me=T(Ce,q[0]),Re=T(Ce,V[0]),ce=T(Ce,X[0]),Ge=T(Ce,G[0]),nt=T(Ce,N[0]),ct=M(M(P(X[0],X[0]),P(X[1],X[1])),M(P(X[2],X[2]),P(X[3],X[3]))),qt=T(ct,q[0]),rt=T(ct,V[0]),ot=T(ct,H[0]),Rt=T(ct,G[0]),kt=T(ct,N[0]),Ct=M(M(P(G[0],G[0]),P(G[1],G[1])),M(P(G[2],G[2]),P(G[3],G[3]))),Yt=T(Ct,q[0]),xr=T(Ct,V[0]),er=T(Ct,H[0]),Ke=T(Ct,X[0]),xt=T(Ct,N[0]),bt=M(M(P(N[0],N[0]),P(N[1],N[1])),M(P(N[2],N[2]),P(N[3],N[3]))),Lt=T(bt,q[0]),St=T(bt,V[0]),Et=T(bt,H[0]),dt=T(bt,X[0]),Ht=T(bt,G[0]),$t=M(M(M(T(M(M(T(M(T(g(Ht,xt),X[1]),M(T(g(dt,kt),-G[1]),T(g(Ke,Rt),N[1]))),H[2]),T(M(T(g(Ht,xt),H[1]),M(T(g(Et,nt),-G[1]),T(g(er,Ge),N[1]))),-X[2])),M(T(M(T(g(dt,kt),H[1]),M(T(g(Et,nt),-X[1]),T(g(ot,ce),N[1]))),G[2]),T(M(T(g(Ke,Rt),H[1]),M(T(g(er,Ge),-X[1]),T(g(ot,ce),G[1]))),-N[2]))),V[3]),M(T(M(M(T(M(T(g(Ht,xt),X[1]),M(T(g(dt,kt),-G[1]),T(g(Ke,Rt),N[1]))),V[2]),T(M(T(g(Ht,xt),V[1]),M(T(g(St,ze),-G[1]),T(g(xr,Ae),N[1]))),-X[2])),M(T(M(T(g(dt,kt),V[1]),M(T(g(St,ze),-X[1]),T(g(rt,Ee),N[1]))),G[2]),T(M(T(g(Ke,Rt),V[1]),M(T(g(xr,Ae),-X[1]),T(g(rt,Ee),G[1]))),-N[2]))),-H[3]),T(M(M(T(M(T(g(Ht,xt),H[1]),M(T(g(Et,nt),-G[1]),T(g(er,Ge),N[1]))),V[2]),T(M(T(g(Ht,xt),V[1]),M(T(g(St,ze),-G[1]),T(g(xr,Ae),N[1]))),-H[2])),M(T(M(T(g(Et,nt),V[1]),M(T(g(St,ze),-H[1]),T(g(Re,Te),N[1]))),G[2]),T(M(T(g(er,Ge),V[1]),M(T(g(xr,Ae),-H[1]),T(g(Re,Te),G[1]))),-N[2]))),X[3]))),M(M(T(M(M(T(M(T(g(dt,kt),H[1]),M(T(g(Et,nt),-X[1]),T(g(ot,ce),N[1]))),V[2]),T(M(T(g(dt,kt),V[1]),M(T(g(St,ze),-X[1]),T(g(rt,Ee),N[1]))),-H[2])),M(T(M(T(g(Et,nt),V[1]),M(T(g(St,ze),-H[1]),T(g(Re,Te),N[1]))),X[2]),T(M(T(g(ot,ce),V[1]),M(T(g(rt,Ee),-H[1]),T(g(Re,Te),X[1]))),-N[2]))),-G[3]),T(M(M(T(M(T(g(Ke,Rt),H[1]),M(T(g(er,Ge),-X[1]),T(g(ot,ce),G[1]))),V[2]),T(M(T(g(Ke,Rt),V[1]),M(T(g(xr,Ae),-X[1]),T(g(rt,Ee),G[1]))),-H[2])),M(T(M(T(g(er,Ge),V[1]),M(T(g(xr,Ae),-H[1]),T(g(Re,Te),G[1]))),X[2]),T(M(T(g(ot,ce),V[1]),M(T(g(rt,Ee),-H[1]),T(g(Re,Te),X[1]))),-G[2]))),N[3])),M(T(M(M(T(M(T(g(Ht,xt),X[1]),M(T(g(dt,kt),-G[1]),T(g(Ke,Rt),N[1]))),V[2]),T(M(T(g(Ht,xt),V[1]),M(T(g(St,ze),-G[1]),T(g(xr,Ae),N[1]))),-X[2])),M(T(M(T(g(dt,kt),V[1]),M(T(g(St,ze),-X[1]),T(g(rt,Ee),N[1]))),G[2]),T(M(T(g(Ke,Rt),V[1]),M(T(g(xr,Ae),-X[1]),T(g(rt,Ee),G[1]))),-N[2]))),q[3]),T(M(M(T(M(T(g(Ht,xt),X[1]),M(T(g(dt,kt),-G[1]),T(g(Ke,Rt),N[1]))),q[2]),T(M(T(g(Ht,xt),q[1]),M(T(g(Lt,ke),-G[1]),T(g(Yt,Me),N[1]))),-X[2])),M(T(M(T(g(dt,kt),q[1]),M(T(g(Lt,ke),-X[1]),T(g(qt,_e),N[1]))),G[2]),T(M(T(g(Ke,Rt),q[1]),M(T(g(Yt,Me),-X[1]),T(g(qt,_e),G[1]))),-N[2]))),-V[3])))),M(M(M(T(M(M(T(M(T(g(Ht,xt),V[1]),M(T(g(St,ze),-G[1]),T(g(xr,Ae),N[1]))),q[2]),T(M(T(g(Ht,xt),q[1]),M(T(g(Lt,ke),-G[1]),T(g(Yt,Me),N[1]))),-V[2])),M(T(M(T(g(St,ze),q[1]),M(T(g(Lt,ke),-V[1]),T(g(ie,re),N[1]))),G[2]),T(M(T(g(xr,Ae),q[1]),M(T(g(Yt,Me),-V[1]),T(g(ie,re),G[1]))),-N[2]))),X[3]),T(M(M(T(M(T(g(dt,kt),V[1]),M(T(g(St,ze),-X[1]),T(g(rt,Ee),N[1]))),q[2]),T(M(T(g(dt,kt),q[1]),M(T(g(Lt,ke),-X[1]),T(g(qt,_e),N[1]))),-V[2])),M(T(M(T(g(St,ze),q[1]),M(T(g(Lt,ke),-V[1]),T(g(ie,re),N[1]))),X[2]),T(M(T(g(rt,Ee),q[1]),M(T(g(qt,_e),-V[1]),T(g(ie,re),X[1]))),-N[2]))),-G[3])),M(T(M(M(T(M(T(g(Ke,Rt),V[1]),M(T(g(xr,Ae),-X[1]),T(g(rt,Ee),G[1]))),q[2]),T(M(T(g(Ke,Rt),q[1]),M(T(g(Yt,Me),-X[1]),T(g(qt,_e),G[1]))),-V[2])),M(T(M(T(g(xr,Ae),q[1]),M(T(g(Yt,Me),-V[1]),T(g(ie,re),G[1]))),X[2]),T(M(T(g(rt,Ee),q[1]),M(T(g(qt,_e),-V[1]),T(g(ie,re),X[1]))),-G[2]))),N[3]),T(M(M(T(M(T(g(dt,kt),H[1]),M(T(g(Et,nt),-X[1]),T(g(ot,ce),N[1]))),V[2]),T(M(T(g(dt,kt),V[1]),M(T(g(St,ze),-X[1]),T(g(rt,Ee),N[1]))),-H[2])),M(T(M(T(g(Et,nt),V[1]),M(T(g(St,ze),-H[1]),T(g(Re,Te),N[1]))),X[2]),T(M(T(g(ot,ce),V[1]),M(T(g(rt,Ee),-H[1]),T(g(Re,Te),X[1]))),-N[2]))),q[3]))),M(M(T(M(M(T(M(T(g(dt,kt),H[1]),M(T(g(Et,nt),-X[1]),T(g(ot,ce),N[1]))),q[2]),T(M(T(g(dt,kt),q[1]),M(T(g(Lt,ke),-X[1]),T(g(qt,_e),N[1]))),-H[2])),M(T(M(T(g(Et,nt),q[1]),M(T(g(Lt,ke),-H[1]),T(g(me,ae),N[1]))),X[2]),T(M(T(g(ot,ce),q[1]),M(T(g(qt,_e),-H[1]),T(g(me,ae),X[1]))),-N[2]))),-V[3]),T(M(M(T(M(T(g(dt,kt),V[1]),M(T(g(St,ze),-X[1]),T(g(rt,Ee),N[1]))),q[2]),T(M(T(g(dt,kt),q[1]),M(T(g(Lt,ke),-X[1]),T(g(qt,_e),N[1]))),-V[2])),M(T(M(T(g(St,ze),q[1]),M(T(g(Lt,ke),-V[1]),T(g(ie,re),N[1]))),X[2]),T(M(T(g(rt,Ee),q[1]),M(T(g(qt,_e),-V[1]),T(g(ie,re),X[1]))),-N[2]))),H[3])),M(T(M(M(T(M(T(g(Et,nt),V[1]),M(T(g(St,ze),-H[1]),T(g(Re,Te),N[1]))),q[2]),T(M(T(g(Et,nt),q[1]),M(T(g(Lt,ke),-H[1]),T(g(me,ae),N[1]))),-V[2])),M(T(M(T(g(St,ze),q[1]),M(T(g(Lt,ke),-V[1]),T(g(ie,re),N[1]))),H[2]),T(M(T(g(Re,Te),q[1]),M(T(g(me,ae),-V[1]),T(g(ie,re),H[1]))),-N[2]))),-X[3]),T(M(M(T(M(T(g(ot,ce),V[1]),M(T(g(rt,Ee),-H[1]),T(g(Re,Te),X[1]))),q[2]),T(M(T(g(ot,ce),q[1]),M(T(g(qt,_e),-H[1]),T(g(me,ae),X[1]))),-V[2])),M(T(M(T(g(rt,Ee),q[1]),M(T(g(qt,_e),-V[1]),T(g(ie,re),X[1]))),H[2]),T(M(T(g(Re,Te),q[1]),M(T(g(me,ae),-V[1]),T(g(ie,re),H[1]))),-X[2]))),N[3]))))),fr=M(M(M(T(M(M(T(M(T(g(Ht,xt),X[1]),M(T(g(dt,kt),-G[1]),T(g(Ke,Rt),N[1]))),H[2]),T(M(T(g(Ht,xt),H[1]),M(T(g(Et,nt),-G[1]),T(g(er,Ge),N[1]))),-X[2])),M(T(M(T(g(dt,kt),H[1]),M(T(g(Et,nt),-X[1]),T(g(ot,ce),N[1]))),G[2]),T(M(T(g(Ke,Rt),H[1]),M(T(g(er,Ge),-X[1]),T(g(ot,ce),G[1]))),-N[2]))),q[3]),M(T(M(M(T(M(T(g(Ht,xt),X[1]),M(T(g(dt,kt),-G[1]),T(g(Ke,Rt),N[1]))),q[2]),T(M(T(g(Ht,xt),q[1]),M(T(g(Lt,ke),-G[1]),T(g(Yt,Me),N[1]))),-X[2])),M(T(M(T(g(dt,kt),q[1]),M(T(g(Lt,ke),-X[1]),T(g(qt,_e),N[1]))),G[2]),T(M(T(g(Ke,Rt),q[1]),M(T(g(Yt,Me),-X[1]),T(g(qt,_e),G[1]))),-N[2]))),-H[3]),T(M(M(T(M(T(g(Ht,xt),H[1]),M(T(g(Et,nt),-G[1]),T(g(er,Ge),N[1]))),q[2]),T(M(T(g(Ht,xt),q[1]),M(T(g(Lt,ke),-G[1]),T(g(Yt,Me),N[1]))),-H[2])),M(T(M(T(g(Et,nt),q[1]),M(T(g(Lt,ke),-H[1]),T(g(me,ae),N[1]))),G[2]),T(M(T(g(er,Ge),q[1]),M(T(g(Yt,Me),-H[1]),T(g(me,ae),G[1]))),-N[2]))),X[3]))),M(M(T(M(M(T(M(T(g(dt,kt),H[1]),M(T(g(Et,nt),-X[1]),T(g(ot,ce),N[1]))),q[2]),T(M(T(g(dt,kt),q[1]),M(T(g(Lt,ke),-X[1]),T(g(qt,_e),N[1]))),-H[2])),M(T(M(T(g(Et,nt),q[1]),M(T(g(Lt,ke),-H[1]),T(g(me,ae),N[1]))),X[2]),T(M(T(g(ot,ce),q[1]),M(T(g(qt,_e),-H[1]),T(g(me,ae),X[1]))),-N[2]))),-G[3]),T(M(M(T(M(T(g(Ke,Rt),H[1]),M(T(g(er,Ge),-X[1]),T(g(ot,ce),G[1]))),q[2]),T(M(T(g(Ke,Rt),q[1]),M(T(g(Yt,Me),-X[1]),T(g(qt,_e),G[1]))),-H[2])),M(T(M(T(g(er,Ge),q[1]),M(T(g(Yt,Me),-H[1]),T(g(me,ae),G[1]))),X[2]),T(M(T(g(ot,ce),q[1]),M(T(g(qt,_e),-H[1]),T(g(me,ae),X[1]))),-G[2]))),N[3])),M(T(M(M(T(M(T(g(Ht,xt),H[1]),M(T(g(Et,nt),-G[1]),T(g(er,Ge),N[1]))),V[2]),T(M(T(g(Ht,xt),V[1]),M(T(g(St,ze),-G[1]),T(g(xr,Ae),N[1]))),-H[2])),M(T(M(T(g(Et,nt),V[1]),M(T(g(St,ze),-H[1]),T(g(Re,Te),N[1]))),G[2]),T(M(T(g(er,Ge),V[1]),M(T(g(xr,Ae),-H[1]),T(g(Re,Te),G[1]))),-N[2]))),q[3]),T(M(M(T(M(T(g(Ht,xt),H[1]),M(T(g(Et,nt),-G[1]),T(g(er,Ge),N[1]))),q[2]),T(M(T(g(Ht,xt),q[1]),M(T(g(Lt,ke),-G[1]),T(g(Yt,Me),N[1]))),-H[2])),M(T(M(T(g(Et,nt),q[1]),M(T(g(Lt,ke),-H[1]),T(g(me,ae),N[1]))),G[2]),T(M(T(g(er,Ge),q[1]),M(T(g(Yt,Me),-H[1]),T(g(me,ae),G[1]))),-N[2]))),-V[3])))),M(M(M(T(M(M(T(M(T(g(Ht,xt),V[1]),M(T(g(St,ze),-G[1]),T(g(xr,Ae),N[1]))),q[2]),T(M(T(g(Ht,xt),q[1]),M(T(g(Lt,ke),-G[1]),T(g(Yt,Me),N[1]))),-V[2])),M(T(M(T(g(St,ze),q[1]),M(T(g(Lt,ke),-V[1]),T(g(ie,re),N[1]))),G[2]),T(M(T(g(xr,Ae),q[1]),M(T(g(Yt,Me),-V[1]),T(g(ie,re),G[1]))),-N[2]))),H[3]),T(M(M(T(M(T(g(Et,nt),V[1]),M(T(g(St,ze),-H[1]),T(g(Re,Te),N[1]))),q[2]),T(M(T(g(Et,nt),q[1]),M(T(g(Lt,ke),-H[1]),T(g(me,ae),N[1]))),-V[2])),M(T(M(T(g(St,ze),q[1]),M(T(g(Lt,ke),-V[1]),T(g(ie,re),N[1]))),H[2]),T(M(T(g(Re,Te),q[1]),M(T(g(me,ae),-V[1]),T(g(ie,re),H[1]))),-N[2]))),-G[3])),M(T(M(M(T(M(T(g(er,Ge),V[1]),M(T(g(xr,Ae),-H[1]),T(g(Re,Te),G[1]))),q[2]),T(M(T(g(er,Ge),q[1]),M(T(g(Yt,Me),-H[1]),T(g(me,ae),G[1]))),-V[2])),M(T(M(T(g(xr,Ae),q[1]),M(T(g(Yt,Me),-V[1]),T(g(ie,re),G[1]))),H[2]),T(M(T(g(Re,Te),q[1]),M(T(g(me,ae),-V[1]),T(g(ie,re),H[1]))),-G[2]))),N[3]),T(M(M(T(M(T(g(Ke,Rt),H[1]),M(T(g(er,Ge),-X[1]),T(g(ot,ce),G[1]))),V[2]),T(M(T(g(Ke,Rt),V[1]),M(T(g(xr,Ae),-X[1]),T(g(rt,Ee),G[1]))),-H[2])),M(T(M(T(g(er,Ge),V[1]),M(T(g(xr,Ae),-H[1]),T(g(Re,Te),G[1]))),X[2]),T(M(T(g(ot,ce),V[1]),M(T(g(rt,Ee),-H[1]),T(g(Re,Te),X[1]))),-G[2]))),q[3]))),M(M(T(M(M(T(M(T(g(Ke,Rt),H[1]),M(T(g(er,Ge),-X[1]),T(g(ot,ce),G[1]))),q[2]),T(M(T(g(Ke,Rt),q[1]),M(T(g(Yt,Me),-X[1]),T(g(qt,_e),G[1]))),-H[2])),M(T(M(T(g(er,Ge),q[1]),M(T(g(Yt,Me),-H[1]),T(g(me,ae),G[1]))),X[2]),T(M(T(g(ot,ce),q[1]),M(T(g(qt,_e),-H[1]),T(g(me,ae),X[1]))),-G[2]))),-V[3]),T(M(M(T(M(T(g(Ke,Rt),V[1]),M(T(g(xr,Ae),-X[1]),T(g(rt,Ee),G[1]))),q[2]),T(M(T(g(Ke,Rt),q[1]),M(T(g(Yt,Me),-X[1]),T(g(qt,_e),G[1]))),-V[2])),M(T(M(T(g(xr,Ae),q[1]),M(T(g(Yt,Me),-V[1]),T(g(ie,re),G[1]))),X[2]),T(M(T(g(rt,Ee),q[1]),M(T(g(qt,_e),-V[1]),T(g(ie,re),X[1]))),-G[2]))),H[3])),M(T(M(M(T(M(T(g(er,Ge),V[1]),M(T(g(xr,Ae),-H[1]),T(g(Re,Te),G[1]))),q[2]),T(M(T(g(er,Ge),q[1]),M(T(g(Yt,Me),-H[1]),T(g(me,ae),G[1]))),-V[2])),M(T(M(T(g(xr,Ae),q[1]),M(T(g(Yt,Me),-V[1]),T(g(ie,re),G[1]))),H[2]),T(M(T(g(Re,Te),q[1]),M(T(g(me,ae),-V[1]),T(g(ie,re),H[1]))),-G[2]))),-X[3]),T(M(M(T(M(T(g(ot,ce),V[1]),M(T(g(rt,Ee),-H[1]),T(g(Re,Te),X[1]))),q[2]),T(M(T(g(ot,ce),q[1]),M(T(g(qt,_e),-H[1]),T(g(me,ae),X[1]))),-V[2])),M(T(M(T(g(rt,Ee),q[1]),M(T(g(qt,_e),-V[1]),T(g(ie,re),X[1]))),H[2]),T(M(T(g(Re,Te),q[1]),M(T(g(me,ae),-V[1]),T(g(ie,re),H[1]))),-X[2]))),G[3]))))),_r=g($t,fr);return _r[_r.length-1]}return F}var A=[d,v,x];function L(M){var g=A[M.length];return g||(g=A[M.length]=h(M.length)),g.apply(void 0,M)}function _(M,g,P,T,F,q,V,H){function X(G,N,W,re,ae,_e){switch(arguments.length){case 0:case 1:return 0;case 2:return T(G,N);case 3:return F(G,N,W);case 4:return q(G,N,W,re);case 5:return V(G,N,W,re,ae);case 6:return H(G,N,W,re,ae,_e)}for(var Me=new Array(arguments.length),ke=0;ke<arguments.length;++ke)Me[ke]=arguments[ke];return M(Me)}return X}function C(){for(;A.length<=f;)A.push(h(A.length));i.exports=_.apply(void 0,[L].concat(A));for(var M=0;M<=f;++M)i.exports[M]=A[M]}C()},727:function(i,a,o){"use strict";var s=o(2962),l=6;function u(A){var L=A===2?h:A===3?d:A===4?v:A===5?x:b;return A<6?L(s[A]):L(s)}function c(){return[[0]]}function f(A,L){return[[L[0]],[A[0][0]]]}function h(A){return function(_,C){return[A([[+C[0],+_[0][1]],[+C[1],+_[1][1]]]),A([[+_[0][0],+C[0]],[+_[1][0],+C[1]]]),A(_)]}}function d(A){return function(_,C){return[A([[+C[0],+_[0][1],+_[0][2]],[+C[1],+_[1][1],+_[1][2]],[+C[2],+_[2][1],+_[2][2]]]),A([[+_[0][0],+C[0],+_[0][2]],[+_[1][0],+C[1],+_[1][2]],[+_[2][0],+C[2],+_[2][2]]]),A([[+_[0][0],+_[0][1],+C[0]],[+_[1][0],+_[1][1],+C[1]],[+_[2][0],+_[2][1],+C[2]]]),A(_)]}}function v(A){return function(_,C){return[A([[+C[0],+_[0][1],+_[0][2],+_[0][3]],[+C[1],+_[1][1],+_[1][2],+_[1][3]],[+C[2],+_[2][1],+_[2][2],+_[2][3]],[+C[3],+_[3][1],+_[3][2],+_[3][3]]]),A([[+_[0][0],+C[0],+_[0][2],+_[0][3]],[+_[1][0],+C[1],+_[1][2],+_[1][3]],[+_[2][0],+C[2],+_[2][2],+_[2][3]],[+_[3][0],+C[3],+_[3][2],+_[3][3]]]),A([[+_[0][0],+_[0][1],+C[0],+_[0][3]],[+_[1][0],+_[1][1],+C[1],+_[1][3]],[+_[2][0],+_[2][1],+C[2],+_[2][3]],[+_[3][0],+_[3][1],+C[3],+_[3][3]]]),A([[+_[0][0],+_[0][1],+_[0][2],+C[0]],[+_[1][0],+_[1][1],+_[1][2],+C[1]],[+_[2][0],+_[2][1],+_[2][2],+C[2]],[+_[3][0],+_[3][1],+_[3][2],+C[3]]]),A(_)]}}function x(A){return function(_,C){return[A([[+C[0],+_[0][1],+_[0][2],+_[0][3],+_[0][4]],[+C[1],+_[1][1],+_[1][2],+_[1][3],+_[1][4]],[+C[2],+_[2][1],+_[2][2],+_[2][3],+_[2][4]],[+C[3],+_[3][1],+_[3][2],+_[3][3],+_[3][4]],[+C[4],+_[4][1],+_[4][2],+_[4][3],+_[4][4]]]),A([[+_[0][0],+C[0],+_[0][2],+_[0][3],+_[0][4]],[+_[1][0],+C[1],+_[1][2],+_[1][3],+_[1][4]],[+_[2][0],+C[2],+_[2][2],+_[2][3],+_[2][4]],[+_[3][0],+C[3],+_[3][2],+_[3][3],+_[3][4]],[+_[4][0],+C[4],+_[4][2],+_[4][3],+_[4][4]]]),A([[+_[0][0],+_[0][1],+C[0],+_[0][3],+_[0][4]],[+_[1][0],+_[1][1],+C[1],+_[1][3],+_[1][4]],[+_[2][0],+_[2][1],+C[2],+_[2][3],+_[2][4]],[+_[3][0],+_[3][1],+C[3],+_[3][3],+_[3][4]],[+_[4][0],+_[4][1],+C[4],+_[4][3],+_[4][4]]]),A([[+_[0][0],+_[0][1],+_[0][2],+C[0],+_[0][4]],[+_[1][0],+_[1][1],+_[1][2],+C[1],+_[1][4]],[+_[2][0],+_[2][1],+_[2][2],+C[2],+_[2][4]],[+_[3][0],+_[3][1],+_[3][2],+C[3],+_[3][4]],[+_[4][0],+_[4][1],+_[4][2],+C[4],+_[4][4]]]),A([[+_[0][0],+_[0][1],+_[0][2],+_[0][3],+C[0]],[+_[1][0],+_[1][1],+_[1][2],+_[1][3],+C[1]],[+_[2][0],+_[2][1],+_[2][2],+_[2][3],+C[2]],[+_[3][0],+_[3][1],+_[3][2],+_[3][3],+C[3]],[+_[4][0],+_[4][1],+_[4][2],+_[4][3],+C[4]]]),A(_)]}}function b(A){return function(_,C){return[A([[+C[0],+_[0][1],+_[0][2],+_[0][3],+_[0][4],+_[0][5]],[+C[1],+_[1][1],+_[1][2],+_[1][3],+_[1][4],+_[1][5]],[+C[2],+_[2][1],+_[2][2],+_[2][3],+_[2][4],+_[2][5]],[+C[3],+_[3][1],+_[3][2],+_[3][3],+_[3][4],+_[3][5]],[+C[4],+_[4][1],+_[4][2],+_[4][3],+_[4][4],+_[4][5]],[+C[5],+_[5][1],+_[5][2],+_[5][3],+_[5][4],+_[5][5]]]),A([[+_[0][0],+C[0],+_[0][2],+_[0][3],+_[0][4],+_[0][5]],[+_[1][0],+C[1],+_[1][2],+_[1][3],+_[1][4],+_[1][5]],[+_[2][0],+C[2],+_[2][2],+_[2][3],+_[2][4],+_[2][5]],[+_[3][0],+C[3],+_[3][2],+_[3][3],+_[3][4],+_[3][5]],[+_[4][0],+C[4],+_[4][2],+_[4][3],+_[4][4],+_[4][5]],[+_[5][0],+C[5],+_[5][2],+_[5][3],+_[5][4],+_[5][5]]]),A([[+_[0][0],+_[0][1],+C[0],+_[0][3],+_[0][4],+_[0][5]],[+_[1][0],+_[1][1],+C[1],+_[1][3],+_[1][4],+_[1][5]],[+_[2][0],+_[2][1],+C[2],+_[2][3],+_[2][4],+_[2][5]],[+_[3][0],+_[3][1],+C[3],+_[3][3],+_[3][4],+_[3][5]],[+_[4][0],+_[4][1],+C[4],+_[4][3],+_[4][4],+_[4][5]],[+_[5][0],+_[5][1],+C[5],+_[5][3],+_[5][4],+_[5][5]]]),A([[+_[0][0],+_[0][1],+_[0][2],+C[0],+_[0][4],+_[0][5]],[+_[1][0],+_[1][1],+_[1][2],+C[1],+_[1][4],+_[1][5]],[+_[2][0],+_[2][1],+_[2][2],+C[2],+_[2][4],+_[2][5]],[+_[3][0],+_[3][1],+_[3][2],+C[3],+_[3][4],+_[3][5]],[+_[4][0],+_[4][1],+_[4][2],+C[4],+_[4][4],+_[4][5]],[+_[5][0],+_[5][1],+_[5][2],+C[5],+_[5][4],+_[5][5]]]),A([[+_[0][0],+_[0][1],+_[0][2],+_[0][3],+C[0],+_[0][5]],[+_[1][0],+_[1][1],+_[1][2],+_[1][3],+C[1],+_[1][5]],[+_[2][0],+_[2][1],+_[2][2],+_[2][3],+C[2],+_[2][5]],[+_[3][0],+_[3][1],+_[3][2],+_[3][3],+C[3],+_[3][5]],[+_[4][0],+_[4][1],+_[4][2],+_[4][3],+C[4],+_[4][5]],[+_[5][0],+_[5][1],+_[5][2],+_[5][3],+C[5],+_[5][5]]]),A([[+_[0][0],+_[0][1],+_[0][2],+_[0][3],+_[0][4],+C[0]],[+_[1][0],+_[1][1],+_[1][2],+_[1][3],+_[1][4],+C[1]],[+_[2][0],+_[2][1],+_[2][2],+_[2][3],+_[2][4],+C[2]],[+_[3][0],+_[3][1],+_[3][2],+_[3][3],+_[3][4],+C[3]],[+_[4][0],+_[4][1],+_[4][2],+_[4][3],+_[4][4],+C[4]],[+_[5][0],+_[5][1],+_[5][2],+_[5][3],+_[5][4],+C[5]]]),A(_)]}}var p=[c,f];function E(A,L,_,C,M,g,P,T){return function(q,V){switch(q.length){case 0:return A(q,V);case 1:return L(q,V);case 2:return _(q,V);case 3:return C(q,V);case 4:return M(q,V);case 5:return g(q,V)}var H=P[q.length];return H||(H=P[q.length]=T(q.length)),H(q,V)}}function k(){for(;p.length<l;)p.push(u(p.length));i.exports=E.apply(void 0,p.concat([p,u]));for(var A=0;A<l;++A)i.exports[A]=p[A]}k()},3250:function(i,a,o){"use strict";var s=o(5250),l=o(8210),u=o(3012),c=o(8545),f=5,h=11102230246251565e-32,d=(3+16*h)*h,v=(7+56*h)*h;function x(g,P,T,F){return function(V,H,X){var G=g(g(P(H[1],X[0]),P(-X[1],H[0])),g(P(V[1],H[0]),P(-H[1],V[0]))),N=g(P(V[1],X[0]),P(-X[1],V[0])),W=F(G,N);return W[W.length-1]}}function b(g,P,T,F){return function(V,H,X,G){var N=g(g(T(g(P(X[1],G[0]),P(-G[1],X[0])),H[2]),g(T(g(P(H[1],G[0]),P(-G[1],H[0])),-X[2]),T(g(P(H[1],X[0]),P(-X[1],H[0])),G[2]))),g(T(g(P(H[1],G[0]),P(-G[1],H[0])),V[2]),g(T(g(P(V[1],G[0]),P(-G[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),G[2])))),W=g(g(T(g(P(X[1],G[0]),P(-G[1],X[0])),V[2]),g(T(g(P(V[1],G[0]),P(-G[1],V[0])),-X[2]),T(g(P(V[1],X[0]),P(-X[1],V[0])),G[2]))),g(T(g(P(H[1],X[0]),P(-X[1],H[0])),V[2]),g(T(g(P(V[1],X[0]),P(-X[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),X[2])))),re=F(N,W);return re[re.length-1]}}function p(g,P,T,F){return function(V,H,X,G,N){var W=g(g(g(T(g(T(g(P(G[1],N[0]),P(-N[1],G[0])),X[2]),g(T(g(P(X[1],N[0]),P(-N[1],X[0])),-G[2]),T(g(P(X[1],G[0]),P(-G[1],X[0])),N[2]))),H[3]),g(T(g(T(g(P(G[1],N[0]),P(-N[1],G[0])),H[2]),g(T(g(P(H[1],N[0]),P(-N[1],H[0])),-G[2]),T(g(P(H[1],G[0]),P(-G[1],H[0])),N[2]))),-X[3]),T(g(T(g(P(X[1],N[0]),P(-N[1],X[0])),H[2]),g(T(g(P(H[1],N[0]),P(-N[1],H[0])),-X[2]),T(g(P(H[1],X[0]),P(-X[1],H[0])),N[2]))),G[3]))),g(T(g(T(g(P(X[1],G[0]),P(-G[1],X[0])),H[2]),g(T(g(P(H[1],G[0]),P(-G[1],H[0])),-X[2]),T(g(P(H[1],X[0]),P(-X[1],H[0])),G[2]))),-N[3]),g(T(g(T(g(P(G[1],N[0]),P(-N[1],G[0])),H[2]),g(T(g(P(H[1],N[0]),P(-N[1],H[0])),-G[2]),T(g(P(H[1],G[0]),P(-G[1],H[0])),N[2]))),V[3]),T(g(T(g(P(G[1],N[0]),P(-N[1],G[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),N[2]))),-H[3])))),g(g(T(g(T(g(P(H[1],N[0]),P(-N[1],H[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),N[2]))),G[3]),g(T(g(T(g(P(H[1],G[0]),P(-G[1],H[0])),V[2]),g(T(g(P(V[1],G[0]),P(-G[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),G[2]))),-N[3]),T(g(T(g(P(X[1],G[0]),P(-G[1],X[0])),H[2]),g(T(g(P(H[1],G[0]),P(-G[1],H[0])),-X[2]),T(g(P(H[1],X[0]),P(-X[1],H[0])),G[2]))),V[3]))),g(T(g(T(g(P(X[1],G[0]),P(-G[1],X[0])),V[2]),g(T(g(P(V[1],G[0]),P(-G[1],V[0])),-X[2]),T(g(P(V[1],X[0]),P(-X[1],V[0])),G[2]))),-H[3]),g(T(g(T(g(P(H[1],G[0]),P(-G[1],H[0])),V[2]),g(T(g(P(V[1],G[0]),P(-G[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),G[2]))),X[3]),T(g(T(g(P(H[1],X[0]),P(-X[1],H[0])),V[2]),g(T(g(P(V[1],X[0]),P(-X[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),X[2]))),-G[3]))))),re=g(g(g(T(g(T(g(P(G[1],N[0]),P(-N[1],G[0])),X[2]),g(T(g(P(X[1],N[0]),P(-N[1],X[0])),-G[2]),T(g(P(X[1],G[0]),P(-G[1],X[0])),N[2]))),V[3]),T(g(T(g(P(G[1],N[0]),P(-N[1],G[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-G[2]),T(g(P(V[1],G[0]),P(-G[1],V[0])),N[2]))),-X[3])),g(T(g(T(g(P(X[1],N[0]),P(-N[1],X[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-X[2]),T(g(P(V[1],X[0]),P(-X[1],V[0])),N[2]))),G[3]),T(g(T(g(P(X[1],G[0]),P(-G[1],X[0])),V[2]),g(T(g(P(V[1],G[0]),P(-G[1],V[0])),-X[2]),T(g(P(V[1],X[0]),P(-X[1],V[0])),G[2]))),-N[3]))),g(g(T(g(T(g(P(X[1],N[0]),P(-N[1],X[0])),H[2]),g(T(g(P(H[1],N[0]),P(-N[1],H[0])),-X[2]),T(g(P(H[1],X[0]),P(-X[1],H[0])),N[2]))),V[3]),T(g(T(g(P(X[1],N[0]),P(-N[1],X[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-X[2]),T(g(P(V[1],X[0]),P(-X[1],V[0])),N[2]))),-H[3])),g(T(g(T(g(P(H[1],N[0]),P(-N[1],H[0])),V[2]),g(T(g(P(V[1],N[0]),P(-N[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),N[2]))),X[3]),T(g(T(g(P(H[1],X[0]),P(-X[1],H[0])),V[2]),g(T(g(P(V[1],X[0]),P(-X[1],V[0])),-H[2]),T(g(P(V[1],H[0]),P(-H[1],V[0])),X[2]))),-N[3])))),ae=F(W,re);return ae[ae.length-1]}}function E(g){var P=g===3?x:g===4?b:p;return P(l,s,u,c)}var k=E(3),A=E(4),L=[function(){return 0},function(){return 0},function(P,T){return T[0]-P[0]},function(P,T,F){var q=(P[1]-F[1])*(T[0]-F[0]),V=(P[0]-F[0])*(T[1]-F[1]),H=q-V,X;if(q>0){if(V<=0)return H;X=q+V}else if(q<0){if(V>=0)return H;X=-(q+V)}else return H;var G=d*X;return H>=G||H<=-G?H:k(P,T,F)},function(P,T,F,q){var V=P[0]-q[0],H=T[0]-q[0],X=F[0]-q[0],G=P[1]-q[1],N=T[1]-q[1],W=F[1]-q[1],re=P[2]-q[2],ae=T[2]-q[2],_e=F[2]-q[2],Me=H*W,ke=X*N,ge=X*G,ie=V*W,Te=V*N,Ee=H*G,Ae=re*(Me-ke)+ae*(ge-ie)+_e*(Te-Ee),ze=(Math.abs(Me)+Math.abs(ke))*Math.abs(re)+(Math.abs(ge)+Math.abs(ie))*Math.abs(ae)+(Math.abs(Te)+Math.abs(Ee))*Math.abs(_e),Ce=v*ze;return Ae>Ce||-Ae>Ce?Ae:A(P,T,F,q)}];function _(g){var P=L[g.length];return P||(P=L[g.length]=E(g.length)),P.apply(void 0,g)}function C(g,P,T,F,q,V,H){return function(G,N,W,re,ae){switch(arguments.length){case 0:case 1:return 0;case 2:return F(G,N);case 3:return q(G,N,W);case 4:return V(G,N,W,re);case 5:return H(G,N,W,re,ae)}for(var _e=new Array(arguments.length),Me=0;Me<arguments.length;++Me)_e[Me]=arguments[Me];return g(_e)}}function M(){for(;L.length<=f;)L.push(E(L.length));i.exports=C.apply(void 0,[_].concat(L));for(var g=0;g<=f;++g)i.exports[g]=L[g]}M()},5382:function(i,a,o){"use strict";var s=o(8210),l=o(3012);i.exports=u;function u(c,f){if(c.length===1)return l(f,c[0]);if(f.length===1)return l(c,f[0]);if(c.length===0||f.length===0)return[0];var h=[0];if(c.length<f.length)for(var d=0;d<c.length;++d)h=s(h,l(f,c[d]));else for(var d=0;d<f.length;++d)h=s(h,l(c,f[d]));return h}},3012:function(i,a,o){"use strict";var s=o(5250),l=o(9362);i.exports=u;function u(c,f){var h=c.length;if(h===1){var d=s(c[0],f);return d[0]?d:[d[1]]}var v=new Array(2*h),x=[.1,.1],b=[.1,.1],p=0;s(c[0],f,x),x[0]&&(v[p++]=x[0]);for(var E=1;E<h;++E){s(c[E],f,b);var k=x[1];l(k,b[0],x),x[0]&&(v[p++]=x[0]);var A=b[1],L=x[1],_=A+L,C=_-A,M=L-C;x[1]=_,M&&(v[p++]=M)}return x[1]&&(v[p++]=x[1]),p===0&&(v[p++]=0),v.length=p,v}},1125:function(i,a,o){"use strict";i.exports=u;var s=o(3250)[3];function l(c,f,h,d){for(var v=0;v<2;++v){var x=c[v],b=f[v],p=Math.min(x,b),E=Math.max(x,b),k=h[v],A=d[v],L=Math.min(k,A),_=Math.max(k,A);if(_<p||E<L)return!1}return!0}function u(c,f,h,d){var v=s(c,h,d),x=s(f,h,d);if(v>0&&x>0||v<0&&x<0)return!1;var b=s(h,c,f),p=s(d,c,f);return b>0&&p>0||b<0&&p<0?!1:v===0&&x===0&&b===0&&p===0?l(c,f,h,d):!0}},8545:function(i){"use strict";i.exports=o;function a(s,l){var u=s+l,c=u-s,f=u-c,h=l-c,d=s-f,v=d+h;return v?[v,u]:[u]}function o(s,l){var u=s.length|0,c=l.length|0;if(u===1&&c===1)return a(s[0],-l[0]);var f=u+c,h=new Array(f),d=0,v=0,x=0,b=Math.abs,p=s[v],E=b(p),k=-l[x],A=b(k),L,_;E<A?(_=p,v+=1,v<u&&(p=s[v],E=b(p))):(_=k,x+=1,x<c&&(k=-l[x],A=b(k))),v<u&&E<A||x>=c?(L=p,v+=1,v<u&&(p=s[v],E=b(p))):(L=k,x+=1,x<c&&(k=-l[x],A=b(k)));for(var C=L+_,M=C-L,g=_-M,P=g,T=C,F,q,V,H,X;v<u&&x<c;)E<A?(L=p,v+=1,v<u&&(p=s[v],E=b(p))):(L=k,x+=1,x<c&&(k=-l[x],A=b(k))),_=P,C=L+_,M=C-L,g=_-M,g&&(h[d++]=g),F=T+C,q=F-T,V=F-q,H=C-q,X=T-V,P=X+H,T=F;for(;v<u;)L=p,_=P,C=L+_,M=C-L,g=_-M,g&&(h[d++]=g),F=T+C,q=F-T,V=F-q,H=C-q,X=T-V,P=X+H,T=F,v+=1,v<u&&(p=s[v]);for(;x<c;)L=k,_=P,C=L+_,M=C-L,g=_-M,g&&(h[d++]=g),F=T+C,q=F-T,V=F-q,H=C-q,X=T-V,P=X+H,T=F,x+=1,x<c&&(k=-l[x]);return P&&(h[d++]=P),T&&(h[d++]=T),d||(h[d++]=0),h.length=d,h}},8210:function(i){"use strict";i.exports=o;function a(s,l){var u=s+l,c=u-s,f=u-c,h=l-c,d=s-f,v=d+h;return v?[v,u]:[u]}function o(s,l){var u=s.length|0,c=l.length|0;if(u===1&&c===1)return a(s[0],l[0]);var f=u+c,h=new Array(f),d=0,v=0,x=0,b=Math.abs,p=s[v],E=b(p),k=l[x],A=b(k),L,_;E<A?(_=p,v+=1,v<u&&(p=s[v],E=b(p))):(_=k,x+=1,x<c&&(k=l[x],A=b(k))),v<u&&E<A||x>=c?(L=p,v+=1,v<u&&(p=s[v],E=b(p))):(L=k,x+=1,x<c&&(k=l[x],A=b(k)));for(var C=L+_,M=C-L,g=_-M,P=g,T=C,F,q,V,H,X;v<u&&x<c;)E<A?(L=p,v+=1,v<u&&(p=s[v],E=b(p))):(L=k,x+=1,x<c&&(k=l[x],A=b(k))),_=P,C=L+_,M=C-L,g=_-M,g&&(h[d++]=g),F=T+C,q=F-T,V=F-q,H=C-q,X=T-V,P=X+H,T=F;for(;v<u;)L=p,_=P,C=L+_,M=C-L,g=_-M,g&&(h[d++]=g),F=T+C,q=F-T,V=F-q,H=C-q,X=T-V,P=X+H,T=F,v+=1,v<u&&(p=s[v]);for(;x<c;)L=k,_=P,C=L+_,M=C-L,g=_-M,g&&(h[d++]=g),F=T+C,q=F-T,V=F-q,H=C-q,X=T-V,P=X+H,T=F,x+=1,x<c&&(k=l[x]);return P&&(h[d++]=P),T&&(h[d++]=T),d||(h[d++]=0),h.length=d,h}},9127:function(i,a,o){"use strict";i.exports=u;var s=o(6204),l=o(5771);function u(c){return l(s(c))}},7765:function(i,a,o){"use strict";i.exports=p;var s=o(9618),l=o(1888),u=o(446),c=o(1570);function f(E){for(var k=E.length,A=0,L=0;L<k;++L)A=Math.max(A,E[L].length)|0;return A-1}function h(E,k){for(var A=E.length,L=l.mallocUint8(A),_=0;_<A;++_)L[_]=E[_]<k|0;return L}function d(E,k){for(var A=E.length,L=k*(k+1)/2*A|0,_=l.mallocUint32(L*2),C=0,M=0;M<A;++M)for(var g=E[M],k=g.length,P=0;P<k;++P)for(var T=0;T<P;++T){var F=g[T],q=g[P];_[C++]=Math.min(F,q)|0,_[C++]=Math.max(F,q)|0}var V=C/2|0;u(s(_,[V,2]));for(var H=2,M=2;M<C;M+=2)_[M-2]===_[M]&&_[M-1]===_[M+1]||(_[H++]=_[M],_[H++]=_[M+1]);return s(_,[H/2|0,2])}function v(E,k,A,L){for(var _=E.data,C=E.shape[0],M=l.mallocDouble(C),g=0,P=0;P<C;++P){var T=_[2*P],F=_[2*P+1];if(A[T]!==A[F]){var q=k[T],V=k[F];_[2*g]=T,_[2*g+1]=F,M[g++]=(V-L)/(V-q)}}return E.shape[0]=g,s(M,[g])}function x(E,k){var A=l.mallocInt32(k*2),L=E.shape[0],_=E.data;A[0]=0;for(var C=0,M=0;M<L;++M){var g=_[2*M];if(g!==C){for(A[2*C+1]=M;++C<g;)A[2*C]=M,A[2*C+1]=M;A[2*C]=M}}for(A[2*C+1]=L;++C<k;)A[2*C]=A[2*C+1]=L;return A}function b(E){for(var k=E.shape[0]|0,A=E.data,L=new Array(k),_=0;_<k;++_)L[_]=[A[2*_],A[2*_+1]];return L}function p(E,k,A,L){A=A||0,typeof L=="undefined"&&(L=f(E));var _=E.length;if(_===0||L<1)return{cells:[],vertexIds:[],vertexWeights:[]};var C=h(k,+A),M=d(E,L),g=v(M,k,C,+A),P=x(M,k.length|0),T=c(L)(E,M.data,P,C),F=b(M),q=[].slice.call(g.data,0,g.shape[0]);return l.free(C),l.free(M.data),l.free(g.data),l.free(P),{cells:T,vertexIds:F,vertexWeights:q}}},1570:function(i){"use strict";i.exports=o;var a=[function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,x=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var E=b+p>>1,k=f[2*E+1];if(k===x)return E;x<k?p=E:b=E+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b)var p=c[b],E=p.length;return x}return u},function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,x=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var E=b+p>>1,k=f[2*E+1];if(k===x)return E;x<k?p=E:b=E+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b){var p=c[b],E=p.length;if(E===2){var k=(d[p[0]]<<0)+(d[p[1]]<<1);if(k===0||k===3)continue;switch(k){case 0:break;case 1:x.push([l(h,f,p[0],p[1])]);break;case 2:x.push([l(h,f,p[1],p[0])]);break;case 3:break}}}return x}return u},function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,x=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var E=b+p>>1,k=f[2*E+1];if(k===x)return E;x<k?p=E:b=E+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b){var p=c[b],E=p.length;if(E===3){var k=(d[p[0]]<<0)+(d[p[1]]<<1)+(d[p[2]]<<2);if(k===0||k===7)continue;switch(k){case 0:break;case 1:x.push([l(h,f,p[0],p[2]),l(h,f,p[0],p[1])]);break;case 2:x.push([l(h,f,p[1],p[0]),l(h,f,p[1],p[2])]);break;case 3:x.push([l(h,f,p[0],p[2]),l(h,f,p[1],p[2])]);break;case 4:x.push([l(h,f,p[2],p[1]),l(h,f,p[2],p[0])]);break;case 5:x.push([l(h,f,p[2],p[1]),l(h,f,p[0],p[1])]);break;case 6:x.push([l(h,f,p[1],p[0]),l(h,f,p[2],p[0])]);break;case 7:break}}else if(E===2){var k=(d[p[0]]<<0)+(d[p[1]]<<1);if(k===0||k===3)continue;switch(k){case 0:break;case 1:x.push([l(h,f,p[0],p[1])]);break;case 2:x.push([l(h,f,p[1],p[0])]);break;case 3:break}}}return x}return u},function(){function l(c,f,h,d){for(var v=Math.min(h,d)|0,x=Math.max(h,d)|0,b=c[2*v],p=c[2*v+1];b<p;){var E=b+p>>1,k=f[2*E+1];if(k===x)return E;x<k?p=E:b=E+1}return b}function u(c,f,h,d){for(var v=c.length,x=[],b=0;b<v;++b){var p=c[b],E=p.length;if(E===4){var k=(d[p[0]]<<0)+(d[p[1]]<<1)+(d[p[2]]<<2)+(d[p[3]]<<3);if(k===0||k===15)continue;switch(k){case 0:break;case 1:x.push([l(h,f,p[0],p[1]),l(h,f,p[0],p[2]),l(h,f,p[0],p[3])]);break;case 2:x.push([l(h,f,p[1],p[2]),l(h,f,p[1],p[0]),l(h,f,p[1],p[3])]);break;case 3:x.push([l(h,f,p[1],p[2]),l(h,f,p[0],p[2]),l(h,f,p[0],p[3])],[l(h,f,p[1],p[3]),l(h,f,p[1],p[2]),l(h,f,p[0],p[3])]);break;case 4:x.push([l(h,f,p[2],p[0]),l(h,f,p[2],p[1]),l(h,f,p[2],p[3])]);break;case 5:x.push([l(h,f,p[0],p[1]),l(h,f,p[2],p[1]),l(h,f,p[0],p[3])],[l(h,f,p[2],p[1]),l(h,f,p[2],p[3]),l(h,f,p[0],p[3])]);break;case 6:x.push([l(h,f,p[2],p[0]),l(h,f,p[1],p[0]),l(h,f,p[1],p[3])],[l(h,f,p[2],p[3]),l(h,f,p[2],p[0]),l(h,f,p[1],p[3])]);break;case 7:x.push([l(h,f,p[0],p[3]),l(h,f,p[1],p[3]),l(h,f,p[2],p[3])]);break;case 8:x.push([l(h,f,p[3],p[1]),l(h,f,p[3],p[0]),l(h,f,p[3],p[2])]);break;case 9:x.push([l(h,f,p[3],p[1]),l(h,f,p[0],p[1]),l(h,f,p[0],p[2])],[l(h,f,p[3],p[2]),l(h,f,p[3],p[1]),l(h,f,p[0],p[2])]);break;case 10:x.push([l(h,f,p[1],p[0]),l(h,f,p[3],p[0]),l(h,f,p[1],p[2])],[l(h,f,p[3],p[0]),l(h,f,p[3],p[2]),l(h,f,p[1],p[2])]);break;case 11:x.push([l(h,f,p[1],p[2]),l(h,f,p[0],p[2]),l(h,f,p[3],p[2])]);break;case 12:x.push([l(h,f,p[3],p[0]),l(h,f,p[2],p[0]),l(h,f,p[2],p[1])],[l(h,f,p[3],p[1]),l(h,f,p[3],p[0]),l(h,f,p[2],p[1])]);break;case 13:x.push([l(h,f,p[0],p[1]),l(h,f,p[2],p[1]),l(h,f,p[3],p[1])]);break;case 14:x.push([l(h,f,p[2],p[0]),l(h,f,p[1],p[0]),l(h,f,p[3],p[0])]);break;case 15:break}}else if(E===3){var k=(d[p[0]]<<0)+(d[p[1]]<<1)+(d[p[2]]<<2);if(k===0||k===7)continue;switch(k){case 0:break;case 1:x.push([l(h,f,p[0],p[2]),l(h,f,p[0],p[1])]);break;case 2:x.push([l(h,f,p[1],p[0]),l(h,f,p[1],p[2])]);break;case 3:x.push([l(h,f,p[0],p[2]),l(h,f,p[1],p[2])]);break;case 4:x.push([l(h,f,p[2],p[1]),l(h,f,p[2],p[0])]);break;case 5:x.push([l(h,f,p[2],p[1]),l(h,f,p[0],p[1])]);break;case 6:x.push([l(h,f,p[1],p[0]),l(h,f,p[2],p[0])]);break;case 7:break}}else if(E===2){var k=(d[p[0]]<<0)+(d[p[1]]<<1);if(k===0||k===3)continue;switch(k){case 0:break;case 1:x.push([l(h,f,p[0],p[1])]);break;case 2:x.push([l(h,f,p[1],p[0])]);break;case 3:break}}}return x}return u}];function o(s){return a[s]()}},6803:function(i,a,o){"use strict";var s,l=o(8828),u=o(1755);function c(P){for(var T=0,F=Math.max,q=0,V=P.length;q<V;++q)T=F(T,P[q].length);return T-1}s=c;function f(P){for(var T=-1,F=Math.max,q=0,V=P.length;q<V;++q)for(var H=P[q],X=0,G=H.length;X<G;++X)T=F(T,H[X]);return T+1}s=f;function h(P){for(var T=new Array(P.length),F=0,q=P.length;F<q;++F)T[F]=P[F].slice(0);return T}s=h;function d(P,T){var F=P.length,q=P.length-T.length,V=Math.min;if(q)return q;switch(F){case 0:return 0;case 1:return P[0]-T[0];case 2:var W=P[0]+P[1]-T[0]-T[1];return W||V(P[0],P[1])-V(T[0],T[1]);case 3:var H=P[0]+P[1],X=T[0]+T[1];if(W=H+P[2]-(X+T[2]),W)return W;var G=V(P[0],P[1]),N=V(T[0],T[1]),W=V(G,P[2])-V(N,T[2]);return W||V(G+P[2],H)-V(N+T[2],X);default:var re=P.slice(0);re.sort();var ae=T.slice(0);ae.sort();for(var _e=0;_e<F;++_e)if(q=re[_e]-ae[_e],q)return q;return 0}}a.Fw=d;function v(P,T){return d(P[0],T[0])}function x(P,T){if(T){for(var F=P.length,q=new Array(F),V=0;V<F;++V)q[V]=[P[V],T[V]];q.sort(v);for(var V=0;V<F;++V)P[V]=q[V][0],T[V]=q[V][1];return P}else return P.sort(d),P}s=x;function b(P){if(P.length===0)return[];for(var T=1,F=P.length,q=1;q<F;++q){var V=P[q];if(d(V,P[q-1])){if(q===T){T++;continue}P[T++]=V}}return P.length=T,P}s=b;function p(P,T){for(var F=0,q=P.length-1,V=-1;F<=q;){var H=F+q>>1,X=d(P[H],T);X<=0?(X===0&&(V=H),F=H+1):X>0&&(q=H-1)}return V}s=p;function E(P,T){for(var F=new Array(P.length),q=0,V=F.length;q<V;++q)F[q]=[];for(var H=[],q=0,X=T.length;q<X;++q)for(var G=T[q],N=G.length,W=1,re=1<<N;W<re;++W){H.length=l.popCount(W);for(var ae=0,_e=0;_e<N;++_e)W&1<<_e&&(H[ae++]=G[_e]);var Me=p(P,H);if(!(Me<0))for(;F[Me++].push(q),!(Me>=P.length||d(P[Me],H)!==0););}return F}s=E;function k(P,T){if(!T)return E(b(L(P,0)),P,0);for(var F=new Array(T),q=0;q<T;++q)F[q]=[];for(var q=0,V=P.length;q<V;++q)for(var H=P[q],X=0,G=H.length;X<G;++X)F[H[X]].push(q);return F}s=k;function A(P){for(var T=[],F=0,q=P.length;F<q;++F)for(var V=P[F],H=V.length|0,X=1,G=1<<H;X<G;++X){for(var N=[],W=0;W<H;++W)X>>>W&1&&N.push(V[W]);T.push(N)}return x(T)}s=A;function L(P,T){if(T<0)return[];for(var F=[],q=(1<<T+1)-1,V=0;V<P.length;++V)for(var H=P[V],X=q;X<1<<H.length;X=l.nextCombination(X)){for(var G=new Array(T+1),N=0,W=0;W<H.length;++W)X&1<<W&&(G[N++]=H[W]);F.push(G)}return x(F)}s=L;function _(P){for(var T=[],F=0,q=P.length;F<q;++F)for(var V=P[F],H=0,X=V.length;H<X;++H){for(var G=new Array(V.length-1),N=0,W=0;N<X;++N)N!==H&&(G[W++]=V[N]);T.push(G)}return x(T)}s=_;function C(P,T){for(var F=new u(T),q=0;q<P.length;++q)for(var V=P[q],H=0;H<V.length;++H)for(var X=H+1;X<V.length;++X)F.link(V[H],V[X]);for(var G=[],N=F.ranks,q=0;q<N.length;++q)N[q]=-1;for(var q=0;q<P.length;++q){var W=F.find(P[q][0]);N[W]<0?(N[W]=G.length,G.push([P[q].slice(0)])):G[N[W]].push(P[q].slice(0))}return G}function M(P){for(var T=b(x(L(P,0))),F=new u(T.length),q=0;q<P.length;++q)for(var V=P[q],H=0;H<V.length;++H)for(var X=p(T,[V[H]]),G=H+1;G<V.length;++G)F.link(X,p(T,[V[G]]));for(var N=[],W=F.ranks,q=0;q<W.length;++q)W[q]=-1;for(var q=0;q<P.length;++q){var re=F.find(p(T,[P[q][0]]));W[re]<0?(W[re]=N.length,N.push([P[q].slice(0)])):N[W[re]].push(P[q].slice(0))}return N}function g(P,T){return T?C(P,T):M(P)}s=g},3105:function(i,a){"use strict";"use restrict";var o=32;a.INT_BITS=o,a.INT_MAX=2147483647,a.INT_MIN=-1<<o-1,a.sign=function(u){return(u>0)-(u<0)},a.abs=function(u){var c=u>>o-1;return(u^c)-c},a.min=function(u,c){return c^(u^c)&-(u<c)},a.max=function(u,c){return u^(u^c)&-(u<c)},a.isPow2=function(u){return!(u&u-1)&&!!u},a.log2=function(u){var c,f;return c=(u>65535)<<4,u>>>=c,f=(u>255)<<3,u>>>=f,c|=f,f=(u>15)<<2,u>>>=f,c|=f,f=(u>3)<<1,u>>>=f,c|=f,c|u>>1},a.log10=function(u){return u>=1e9?9:u>=1e8?8:u>=1e7?7:u>=1e6?6:u>=1e5?5:u>=1e4?4:u>=1e3?3:u>=100?2:u>=10?1:0},a.popCount=function(u){return u=u-(u>>>1&1431655765),u=(u&858993459)+(u>>>2&858993459),(u+(u>>>4)&252645135)*16843009>>>24};function s(u){var c=32;return u&=-u,u&&c--,u&65535&&(c-=16),u&16711935&&(c-=8),u&252645135&&(c-=4),u&858993459&&(c-=2),u&1431655765&&(c-=1),c}a.countTrailingZeros=s,a.nextPow2=function(u){return u+=u===0,--u,u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u+1},a.prevPow2=function(u){return u|=u>>>1,u|=u>>>2,u|=u>>>4,u|=u>>>8,u|=u>>>16,u-(u>>>1)},a.parity=function(u){return u^=u>>>16,u^=u>>>8,u^=u>>>4,u&=15,27030>>>u&1};var l=new Array(256);(function(u){for(var c=0;c<256;++c){var f=c,h=c,d=7;for(f>>>=1;f;f>>>=1)h<<=1,h|=f&1,--d;u[c]=h<<d&255}})(l),a.reverse=function(u){return l[u&255]<<24|l[u>>>8&255]<<16|l[u>>>16&255]<<8|l[u>>>24&255]},a.interleave2=function(u,c){return u&=65535,u=(u|u<<8)&16711935,u=(u|u<<4)&252645135,u=(u|u<<2)&858993459,u=(u|u<<1)&1431655765,c&=65535,c=(c|c<<8)&16711935,c=(c|c<<4)&252645135,c=(c|c<<2)&858993459,c=(c|c<<1)&1431655765,u|c<<1},a.deinterleave2=function(u,c){return u=u>>>c&1431655765,u=(u|u>>>1)&858993459,u=(u|u>>>2)&252645135,u=(u|u>>>4)&16711935,u=(u|u>>>16)&65535,u<<16>>16},a.interleave3=function(u,c,f){return u&=1023,u=(u|u<<16)&4278190335,u=(u|u<<8)&251719695,u=(u|u<<4)&3272356035,u=(u|u<<2)&1227133513,c&=1023,c=(c|c<<16)&4278190335,c=(c|c<<8)&251719695,c=(c|c<<4)&3272356035,c=(c|c<<2)&1227133513,u|=c<<1,f&=1023,f=(f|f<<16)&4278190335,f=(f|f<<8)&251719695,f=(f|f<<4)&3272356035,f=(f|f<<2)&1227133513,u|f<<2},a.deinterleave3=function(u,c){return u=u>>>c&1227133513,u=(u|u>>>2)&3272356035,u=(u|u>>>4)&251719695,u=(u|u>>>8)&4278190335,u=(u|u>>>16)&1023,u<<22>>22},a.nextCombination=function(u){var c=u|u-1;return c+1|(~c&-~c)-1>>>s(u)+1}},2014:function(i,a,o){"use strict";"use restrict";var s=o(3105),l=o(4623);function u(g){for(var P=0,T=Math.max,F=0,q=g.length;F<q;++F)P=T(P,g[F].length);return P-1}a.dimension=u;function c(g){for(var P=-1,T=Math.max,F=0,q=g.length;F<q;++F)for(var V=g[F],H=0,X=V.length;H<X;++H)P=T(P,V[H]);return P+1}a.countVertices=c;function f(g){for(var P=new Array(g.length),T=0,F=g.length;T<F;++T)P[T]=g[T].slice(0);return P}a.cloneCells=f;function h(g,P){var T=g.length,F=g.length-P.length,q=Math.min;if(F)return F;switch(T){case 0:return 0;case 1:return g[0]-P[0];case 2:var N=g[0]+g[1]-P[0]-P[1];return N||q(g[0],g[1])-q(P[0],P[1]);case 3:var V=g[0]+g[1],H=P[0]+P[1];if(N=V+g[2]-(H+P[2]),N)return N;var X=q(g[0],g[1]),G=q(P[0],P[1]),N=q(X,g[2])-q(G,P[2]);return N||q(X+g[2],V)-q(G+P[2],H);default:var W=g.slice(0);W.sort();var re=P.slice(0);re.sort();for(var ae=0;ae<T;++ae)if(F=W[ae]-re[ae],F)return F;return 0}}a.compareCells=h;function d(g,P){return h(g[0],P[0])}function v(g,P){if(P){for(var T=g.length,F=new Array(T),q=0;q<T;++q)F[q]=[g[q],P[q]];F.sort(d);for(var q=0;q<T;++q)g[q]=F[q][0],P[q]=F[q][1];return g}else return g.sort(h),g}a.normalize=v;function x(g){if(g.length===0)return[];for(var P=1,T=g.length,F=1;F<T;++F){var q=g[F];if(h(q,g[F-1])){if(F===P){P++;continue}g[P++]=q}}return g.length=P,g}a.unique=x;function b(g,P){for(var T=0,F=g.length-1,q=-1;T<=F;){var V=T+F>>1,H=h(g[V],P);H<=0?(H===0&&(q=V),T=V+1):H>0&&(F=V-1)}return q}a.findCell=b;function p(g,P){for(var T=new Array(g.length),F=0,q=T.length;F<q;++F)T[F]=[];for(var V=[],F=0,H=P.length;F<H;++F)for(var X=P[F],G=X.length,N=1,W=1<<G;N<W;++N){V.length=s.popCount(N);for(var re=0,ae=0;ae<G;++ae)N&1<<ae&&(V[re++]=X[ae]);var _e=b(g,V);if(!(_e<0))for(;T[_e++].push(F),!(_e>=g.length||h(g[_e],V)!==0););}return T}a.incidence=p;function E(g,P){if(!P)return p(x(A(g,0)),g,0);for(var T=new Array(P),F=0;F<P;++F)T[F]=[];for(var F=0,q=g.length;F<q;++F)for(var V=g[F],H=0,X=V.length;H<X;++H)T[V[H]].push(F);return T}a.dual=E;function k(g){for(var P=[],T=0,F=g.length;T<F;++T)for(var q=g[T],V=q.length|0,H=1,X=1<<V;H<X;++H){for(var G=[],N=0;N<V;++N)H>>>N&1&&G.push(q[N]);P.push(G)}return v(P)}a.explode=k;function A(g,P){if(P<0)return[];for(var T=[],F=(1<<P+1)-1,q=0;q<g.length;++q)for(var V=g[q],H=F;H<1<<V.length;H=s.nextCombination(H)){for(var X=new Array(P+1),G=0,N=0;N<V.length;++N)H&1<<N&&(X[G++]=V[N]);T.push(X)}return v(T)}a.skeleton=A;function L(g){for(var P=[],T=0,F=g.length;T<F;++T)for(var q=g[T],V=0,H=q.length;V<H;++V){for(var X=new Array(q.length-1),G=0,N=0;G<H;++G)G!==V&&(X[N++]=q[G]);P.push(X)}return v(P)}a.boundary=L;function _(g,P){for(var T=new l(P),F=0;F<g.length;++F)for(var q=g[F],V=0;V<q.length;++V)for(var H=V+1;H<q.length;++H)T.link(q[V],q[H]);for(var X=[],G=T.ranks,F=0;F<G.length;++F)G[F]=-1;for(var F=0;F<g.length;++F){var N=T.find(g[F][0]);G[N]<0?(G[N]=X.length,X.push([g[F].slice(0)])):X[G[N]].push(g[F].slice(0))}return X}function C(g){for(var P=x(v(A(g,0))),T=new l(P.length),F=0;F<g.length;++F)for(var q=g[F],V=0;V<q.length;++V)for(var H=b(P,[q[V]]),X=V+1;X<q.length;++X)T.link(H,b(P,[q[X]]));for(var G=[],N=T.ranks,F=0;F<N.length;++F)N[F]=-1;for(var F=0;F<g.length;++F){var W=T.find(b(P,[g[F][0]]));N[W]<0?(N[W]=G.length,G.push([g[F].slice(0)])):G[N[W]].push(g[F].slice(0))}return G}function M(g,P){return P?_(g,P):C(g)}a.connectedComponents=M},4623:function(i){"use strict";"use restrict";i.exports=a;function a(o){this.roots=new Array(o),this.ranks=new Array(o);for(var s=0;s<o;++s)this.roots[s]=s,this.ranks[s]=0}a.prototype.length=function(){return this.roots.length},a.prototype.makeSet=function(){var o=this.roots.length;return this.roots.push(o),this.ranks.push(0),o},a.prototype.find=function(o){for(var s=this.roots;s[o]!==o;){var l=s[o];s[o]=s[l],o=l}return o},a.prototype.link=function(o,s){var l=this.find(o),u=this.find(s);if(l!==u){var c=this.ranks,f=this.roots,h=c[l],d=c[u];h<d?f[l]=u:d<h?f[u]=l:(f[u]=l,++c[l])}}},5878:function(i,a,o){"use strict";i.exports=c;var s=o(3250),l=o(2014);function u(f,h,d){var v=Math.abs(s(f,h,d)),x=Math.sqrt(Math.pow(h[0]-d[0],2)+Math.pow(h[1]-d[1],2));return v/x}function c(f,h,d){for(var v=h.length,x=f.length,b=new Array(v),p=new Array(v),E=new Array(v),k=new Array(v),A=0;A<v;++A)b[A]=p[A]=-1,E[A]=1/0,k[A]=!1;for(var A=0;A<x;++A){var L=f[A];if(L.length!==2)throw new Error("Input must be a graph");var _=L[1],C=L[0];p[C]!==-1?p[C]=-2:p[C]=_,b[_]!==-1?b[_]=-2:b[_]=C}function M(ie){if(k[ie])return 1/0;var Te=b[ie],Ee=p[ie];return Te<0||Ee<0?1/0:u(h[ie],h[Te],h[Ee])}function g(ie,Te){var Ee=G[ie],Ae=G[Te];G[ie]=Ae,G[Te]=Ee,N[Ee]=Te,N[Ae]=ie}function P(ie){return E[G[ie]]}function T(ie){return ie&1?ie-1>>1:(ie>>1)-1}function F(ie){for(var Te=P(ie);;){var Ee=Te,Ae=2*ie+1,ze=2*(ie+1),Ce=ie;if(Ae<re){var me=P(Ae);me<Ee&&(Ce=Ae,Ee=me)}if(ze<re){var Re=P(ze);Re<Ee&&(Ce=ze)}if(Ce===ie)return ie;g(ie,Ce),ie=Ce}}function q(ie){for(var Te=P(ie);ie>0;){var Ee=T(ie);if(Ee>=0){var Ae=P(Ee);if(Te<Ae){g(ie,Ee),ie=Ee;continue}}return ie}}function V(){if(re>0){var ie=G[0];return g(0,re-1),re-=1,F(0),ie}return-1}function H(ie,Te){var Ee=G[ie];return E[Ee]===Te?ie:(E[Ee]=-1/0,q(ie),V(),E[Ee]=Te,re+=1,q(re-1))}function X(ie){if(!k[ie]){k[ie]=!0;var Te=b[ie],Ee=p[ie];b[Ee]>=0&&(b[Ee]=Te),p[Te]>=0&&(p[Te]=Ee),N[Te]>=0&&H(N[Te],M(Te)),N[Ee]>=0&&H(N[Ee],M(Ee))}}for(var G=[],N=new Array(v),A=0;A<v;++A){var W=E[A]=M(A);W<1/0?(N[A]=G.length,G.push(A)):N[A]=-1}for(var re=G.length,A=re>>1;A>=0;--A)F(A);for(;;){var ae=V();if(ae<0||E[ae]>d)break;X(ae)}for(var _e=[],A=0;A<v;++A)k[A]||(N[A]=_e.length,_e.push(h[A].slice()));var Me=_e.length;function ke(ie,Te){if(ie[Te]<0)return Te;var Ee=Te,Ae=Te;do{var ze=ie[Ae];if(!k[Ae]||ze<0||ze===Ae||(Ae=ze,ze=ie[Ae],!k[Ae]||ze<0||ze===Ae))break;Ae=ze,Ee=ie[Ee]}while(Ee!==Ae);for(var Ce=Te;Ce!==Ae;Ce=ie[Ce])ie[Ce]=Ae;return Ae}var ge=[];return f.forEach(function(ie){var Te=ke(b,ie[0]),Ee=ke(p,ie[1]);if(Te>=0&&Ee>=0&&Te!==Ee){var Ae=N[Te],ze=N[Ee];Ae!==ze&&ge.push([Ae,ze])}}),l.unique(l.normalize(ge)),{positions:_e,edges:ge}}},1303:function(i,a,o){"use strict";i.exports=u;var s=o(3250);function l(c,f){var h,d;if(f[0][0]<f[1][0])h=f[0],d=f[1];else if(f[0][0]>f[1][0])h=f[1],d=f[0];else{var v=Math.min(c[0][1],c[1][1]),x=Math.max(c[0][1],c[1][1]),b=Math.min(f[0][1],f[1][1]),p=Math.max(f[0][1],f[1][1]);return x<b?x-b:v>p?v-p:x-p}var E,k;c[0][1]<c[1][1]?(E=c[0],k=c[1]):(E=c[1],k=c[0]);var A=s(d,h,E);return A||(A=s(d,h,k),A)?A:k-d}function u(c,f){var h,d;if(f[0][0]<f[1][0])h=f[0],d=f[1];else if(f[0][0]>f[1][0])h=f[1],d=f[0];else return l(f,c);var v,x;if(c[0][0]<c[1][0])v=c[0],x=c[1];else if(c[0][0]>c[1][0])v=c[1],x=c[0];else return-l(c,f);var b=s(h,d,x),p=s(h,d,v);if(b<0){if(p<=0)return b}else if(b>0){if(p>=0)return b}else if(p)return p;if(b=s(x,v,d),p=s(x,v,h),b<0){if(p<=0)return b}else if(b>0){if(p>=0)return b}else if(p)return p;return d[0]-x[0]}},4209:function(i,a,o){"use strict";i.exports=p;var s=o(2478),l=o(3840),u=o(3250),c=o(1303);function f(E,k,A){this.slabs=E,this.coordinates=k,this.horizontal=A}var h=f.prototype;function d(E,k){return E.y-k}function v(E,k){for(var A=null;E;){var L=E.key,_,C;L[0][0]<L[1][0]?(_=L[0],C=L[1]):(_=L[1],C=L[0]);var M=u(_,C,k);if(M<0)E=E.left;else if(M>0)if(k[0]!==L[1][0])A=E,E=E.right;else{var g=v(E.right,k);if(g)return g;E=E.left}else{if(k[0]!==L[1][0])return E;var g=v(E.right,k);if(g)return g;E=E.left}}return A}h.castUp=function(E){var k=s.le(this.coordinates,E[0]);if(k<0)return-1;var A=this.slabs[k],L=v(this.slabs[k],E),_=-1;if(L&&(_=L.value),this.coordinates[k]===E[0]){var C=null;if(L&&(C=L.key),k>0){var M=v(this.slabs[k-1],E);M&&(C?c(M.key,C)>0&&(C=M.key,_=M.value):(_=M.value,C=M.key))}var g=this.horizontal[k];if(g.length>0){var P=s.ge(g,E[1],d);if(P<g.length){var T=g[P];if(E[1]===T.y){if(T.closed)return T.index;for(;P<g.length-1&&g[P+1].y===E[1];)if(P=P+1,T=g[P],T.closed)return T.index;if(T.y===E[1]&&!T.start){if(P=P+1,P>=g.length)return _;T=g[P]}}if(T.start)if(C){var F=u(C[0],C[1],[E[0],T.y]);C[0][0]>C[1][0]&&(F=-F),F>0&&(_=T.index)}else _=T.index;else T.y!==E[1]&&(_=T.index)}}}return _};function x(E,k,A,L){this.y=E,this.index=k,this.start=A,this.closed=L}function b(E,k,A,L){this.x=E,this.segment=k,this.create=A,this.index=L}function p(E){for(var k=E.length,A=2*k,L=new Array(A),_=0;_<k;++_){var C=E[_],M=C[0][0]<C[1][0];L[2*_]=new b(C[0][0],C,M,_),L[2*_+1]=new b(C[1][0],C,!M,_)}L.sort(function(G,N){var W=G.x-N.x;return W||(W=G.create-N.create,W)?W:Math.min(G.segment[0][1],G.segment[1][1])-Math.min(N.segment[0][1],N.segment[1][1])});for(var g=l(c),P=[],T=[],F=[],q=-1/0,_=0;_<A;){for(var V=L[_].x,H=[];_<A;){var X=L[_];if(X.x!==V)break;_+=1,X.segment[0][0]===X.x&&X.segment[1][0]===X.x?X.create&&(X.segment[0][1]<X.segment[1][1]?(H.push(new x(X.segment[0][1],X.index,!0,!0)),H.push(new x(X.segment[1][1],X.index,!1,!1))):(H.push(new x(X.segment[1][1],X.index,!0,!1)),H.push(new x(X.segment[0][1],X.index,!1,!0)))):X.create?g=g.insert(X.segment,X.index):g=g.remove(X.segment)}P.push(g.root),T.push(V),F.push(H)}return new f(P,T,F)}},5202:function(i,a,o){"use strict";var s=o(1944),l=o(8210);i.exports=f,i.exports.positive=h,i.exports.negative=d;function u(v,x){var b=l(s(v,x),[x[x.length-1]]);return b[b.length-1]}function c(v,x,b,p){var E=p-x,k=-x/E;k<0?k=0:k>1&&(k=1);for(var A=1-k,L=v.length,_=new Array(L),C=0;C<L;++C)_[C]=k*v[C]+A*b[C];return _}function f(v,x){for(var b=[],p=[],E=u(v[v.length-1],x),k=v[v.length-1],A=v[0],L=0;L<v.length;++L,k=A){A=v[L];var _=u(A,x);if(E<0&&_>0||E>0&&_<0){var C=c(k,_,A,E);b.push(C),p.push(C.slice())}_<0?p.push(A.slice()):_>0?b.push(A.slice()):(b.push(A.slice()),p.push(A.slice())),E=_}return{positive:b,negative:p}}function h(v,x){for(var b=[],p=u(v[v.length-1],x),E=v[v.length-1],k=v[0],A=0;A<v.length;++A,E=k){k=v[A];var L=u(k,x);(p<0&&L>0||p>0&&L<0)&&b.push(c(E,L,k,p)),L>=0&&b.push(k.slice()),p=L}return b}function d(v,x){for(var b=[],p=u(v[v.length-1],x),E=v[v.length-1],k=v[0],A=0;A<v.length;++A,E=k){k=v[A];var L=u(k,x);(p<0&&L>0||p>0&&L<0)&&b.push(c(E,L,k,p)),L<=0&&b.push(k.slice()),p=L}return b}},3387:function(i,a,o){var s;(function(){"use strict";var l={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 u(v){return f(d(v),arguments)}function c(v,x){return u.apply(null,[v].concat(x||[]))}function f(v,x){var b=1,p=v.length,E,k="",A,L,_,C,M,g,P,T;for(A=0;A<p;A++)if(typeof v[A]=="string")k+=v[A];else if(typeof v[A]=="object"){if(_=v[A],_.keys)for(E=x[b],L=0;L<_.keys.length;L++){if(E==null)throw new Error(u('[sprintf] Cannot access property "%s" of undefined value "%s"',_.keys[L],_.keys[L-1]));E=E[_.keys[L]]}else _.param_no?E=x[_.param_no]:E=x[b++];if(l.not_type.test(_.type)&&l.not_primitive.test(_.type)&&E instanceof Function&&(E=E()),l.numeric_arg.test(_.type)&&typeof E!="number"&&isNaN(E))throw new TypeError(u("[sprintf] expecting number but found %T",E));switch(l.number.test(_.type)&&(P=E>=0),_.type){case"b":E=parseInt(E,10).toString(2);break;case"c":E=String.fromCharCode(parseInt(E,10));break;case"d":case"i":E=parseInt(E,10);break;case"j":E=JSON.stringify(E,null,_.width?parseInt(_.width):0);break;case"e":E=_.precision?parseFloat(E).toExponential(_.precision):parseFloat(E).toExponential();break;case"f":E=_.precision?parseFloat(E).toFixed(_.precision):parseFloat(E);break;case"g":E=_.precision?String(Number(E.toPrecision(_.precision))):parseFloat(E);break;case"o":E=(parseInt(E,10)>>>0).toString(8);break;case"s":E=String(E),E=_.precision?E.substring(0,_.precision):E;break;case"t":E=String(!!E),E=_.precision?E.substring(0,_.precision):E;break;case"T":E=Object.prototype.toString.call(E).slice(8,-1).toLowerCase(),E=_.precision?E.substring(0,_.precision):E;break;case"u":E=parseInt(E,10)>>>0;break;case"v":E=E.valueOf(),E=_.precision?E.substring(0,_.precision):E;break;case"x":E=(parseInt(E,10)>>>0).toString(16);break;case"X":E=(parseInt(E,10)>>>0).toString(16).toUpperCase();break}l.json.test(_.type)?k+=E:(l.number.test(_.type)&&(!P||_.sign)?(T=P?"+":"-",E=E.toString().replace(l.sign,"")):T="",M=_.pad_char?_.pad_char==="0"?"0":_.pad_char.charAt(1):" ",g=_.width-(T+E).length,C=_.width&&g>0?M.repeat(g):"",k+=_.align?T+E+C:M==="0"?T+C+E:C+T+E)}return k}var h=Object.create(null);function d(v){if(h[v])return h[v];for(var x=v,b,p=[],E=0;x;){if((b=l.text.exec(x))!==null)p.push(b[0]);else if((b=l.modulo.exec(x))!==null)p.push("%");else if((b=l.placeholder.exec(x))!==null){if(b[2]){E|=1;var k=[],A=b[2],L=[];if((L=l.key.exec(A))!==null)for(k.push(L[1]);(A=A.substring(L[0].length))!=="";)if((L=l.key_access.exec(A))!==null)k.push(L[1]);else if((L=l.index_access.exec(A))!==null)k.push(L[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");b[2]=k}else E|=2;if(E===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");p.push({placeholder:b[0],param_no:b[1],keys:b[2],sign:b[3],pad_char:b[4],align:b[5],width:b[6],precision:b[7],type:b[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");x=x.substring(b[0].length)}return h[v]=p}a.sprintf=u,a.vsprintf=c,typeof window!="undefined"&&(window.sprintf=u,window.vsprintf=c,s=function(){return{sprintf:u,vsprintf:c}}.call(a,o,a,i),s!==void 0&&(i.exports=s))})()},3711:function(i,a,o){"use strict";i.exports=d;var s=o(2640),l=o(781),u={"2d":function(v,x,b){var p=v({order:x,scalarArguments:3,getters:b==="generic"?[0]:void 0,phase:function(k,A,L,_){return k>_|0},vertex:function(k,A,L,_,C,M,g,P,T,F,q,V,H){var X=(g<<0)+(P<<1)+(T<<2)+(F<<3)|0;if(!(X===0||X===15))switch(X){case 0:q.push([k-.5,A-.5]);break;case 1:q.push([k-.25-.25*(_+L-2*H)/(L-_),A-.25-.25*(C+L-2*H)/(L-C)]);break;case 2:q.push([k-.75-.25*(-_-L+2*H)/(_-L),A-.25-.25*(M+_-2*H)/(_-M)]);break;case 3:q.push([k-.5,A-.5-.5*(C+L+M+_-4*H)/(L-C+_-M)]);break;case 4:q.push([k-.25-.25*(M+C-2*H)/(C-M),A-.75-.25*(-C-L+2*H)/(C-L)]);break;case 5:q.push([k-.5-.5*(_+L+M+C-4*H)/(L-_+C-M),A-.5]);break;case 6:q.push([k-.5-.25*(-_-L+M+C)/(_-L+C-M),A-.5-.25*(-C-L+M+_)/(C-L+_-M)]);break;case 7:q.push([k-.75-.25*(M+C-2*H)/(C-M),A-.75-.25*(M+_-2*H)/(_-M)]);break;case 8:q.push([k-.75-.25*(-M-C+2*H)/(M-C),A-.75-.25*(-M-_+2*H)/(M-_)]);break;case 9:q.push([k-.5-.25*(_+L+-M-C)/(L-_+M-C),A-.5-.25*(C+L+-M-_)/(L-C+M-_)]);break;case 10:q.push([k-.5-.5*(-_-L+-M-C+4*H)/(_-L+M-C),A-.5]);break;case 11:q.push([k-.25-.25*(-M-C+2*H)/(M-C),A-.75-.25*(C+L-2*H)/(L-C)]);break;case 12:q.push([k-.5,A-.5-.5*(-C-L+-M-_+4*H)/(C-L+M-_)]);break;case 13:q.push([k-.75-.25*(_+L-2*H)/(L-_),A-.25-.25*(-M-_+2*H)/(M-_)]);break;case 14:q.push([k-.25-.25*(-_-L+2*H)/(_-L),A-.25-.25*(-C-L+2*H)/(C-L)]);break;case 15:q.push([k-.5,A-.5]);break}},cell:function(k,A,L,_,C,M,g,P,T){C?P.push([k,A]):P.push([A,k])}});return function(E,k){var A=[],L=[];return p(E,A,L,k),{positions:A,cells:L}}}};function c(v,x){var b=v.length+"d",p=u[b];if(p)return p(s,v,x)}function f(v,x){for(var b=l(v,x),p=b.length,E=new Array(p),k=new Array(p),A=0;A<p;++A)E[A]=[b[A]],k[A]=[A];return{positions:E,cells:k}}var h={};function d(v,E){if(v.dimension<=0)return{positions:[],cells:[]};if(v.dimension===1)return f(v,E);var b=v.order.join()+"-"+v.dtype,p=h[b],E=+E||0;return p||(p=h[b]=c(v.order,v.dtype)),p(v,E)}},665:function(i,a,o){"use strict";var s=o(3202);i.exports=f;var l=96;function u(h,d){var v=s(getComputedStyle(h).getPropertyValue(d));return v[0]*f(v[1],h)}function c(h,d){var v=document.createElement("div");v.style["font-size"]="128"+h,d.appendChild(v);var x=u(v,"font-size")/128;return d.removeChild(v),x}function f(h,d){switch(d=d||document.body,h=(h||"px").trim().toLowerCase(),(d===window||d===document)&&(d=document.body),h){case"%":return d.clientHeight/100;case"ch":case"ex":return c(h,d);case"em":return u(d,"font-size");case"rem":return u(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 l;case"cm":return l/2.54;case"mm":return l/25.4;case"pt":return l/72;case"pc":return l/6}return 1}},7261:function(i,a,o){"use strict";i.exports=k;var s=o(9215),l=o(7608),u=o(6079),c=o(5911),f=o(3536),h=o(244);function d(A,L,_){return Math.sqrt(Math.pow(A,2)+Math.pow(L,2)+Math.pow(_,2))}function v(A){return Math.min(1,Math.max(-1,A))}function x(A){var L=Math.abs(A[0]),_=Math.abs(A[1]),C=Math.abs(A[2]),M=[0,0,0];L>Math.max(_,C)?M[2]=1:_>Math.max(L,C)?M[0]=1:M[1]=1;for(var g=0,P=0,T=0;T<3;++T)g+=A[T]*A[T],P+=M[T]*A[T];for(var T=0;T<3;++T)M[T]-=P/g*A[T];return f(M,M),M}function b(A,L,_,C,M,g,P,T){this.center=s(_),this.up=s(C),this.right=s(M),this.radius=s([g]),this.angle=s([P,T]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(A,L),this.computedCenter=this.center.curve(0),this.computedUp=this.up.curve(0),this.computedRight=this.right.curve(0),this.computedRadius=this.radius.curve(0),this.computedAngle=this.angle.curve(0),this.computedToward=[0,0,0],this.computedEye=[0,0,0],this.computedMatrix=new Array(16);for(var F=0;F<16;++F)this.computedMatrix[F]=.5;this.recalcMatrix(0)}var p=b.prototype;p.setDistanceLimits=function(A,L){A>0?A=Math.log(A):A=-1/0,L>0?L=Math.log(L):L=1/0,L=Math.max(L,A),this.radius.bounds[0][0]=A,this.radius.bounds[1][0]=L},p.getDistanceLimits=function(A){var L=this.radius.bounds[0];return A?(A[0]=Math.exp(L[0][0]),A[1]=Math.exp(L[1][0]),A):[Math.exp(L[0][0]),Math.exp(L[1][0])]},p.recalcMatrix=function(A){this.center.curve(A),this.up.curve(A),this.right.curve(A),this.radius.curve(A),this.angle.curve(A);for(var L=this.computedUp,_=this.computedRight,C=0,M=0,g=0;g<3;++g)M+=L[g]*_[g],C+=L[g]*L[g];for(var P=Math.sqrt(C),T=0,g=0;g<3;++g)_[g]-=L[g]*M/C,T+=_[g]*_[g],L[g]/=P;for(var F=Math.sqrt(T),g=0;g<3;++g)_[g]/=F;var q=this.computedToward;c(q,L,_),f(q,q);for(var V=Math.exp(this.computedRadius[0]),H=this.computedAngle[0],X=this.computedAngle[1],G=Math.cos(H),N=Math.sin(H),W=Math.cos(X),re=Math.sin(X),ae=this.computedCenter,_e=G*W,Me=N*W,ke=re,ge=-G*re,ie=-N*re,Te=W,Ee=this.computedEye,Ae=this.computedMatrix,g=0;g<3;++g){var ze=_e*_[g]+Me*q[g]+ke*L[g];Ae[4*g+1]=ge*_[g]+ie*q[g]+Te*L[g],Ae[4*g+2]=ze,Ae[4*g+3]=0}var Ce=Ae[1],me=Ae[5],Re=Ae[9],ce=Ae[2],Ge=Ae[6],nt=Ae[10],ct=me*nt-Re*Ge,qt=Re*ce-Ce*nt,rt=Ce*Ge-me*ce,ot=d(ct,qt,rt);ct/=ot,qt/=ot,rt/=ot,Ae[0]=ct,Ae[4]=qt,Ae[8]=rt;for(var g=0;g<3;++g)Ee[g]=ae[g]+Ae[2+4*g]*V;for(var g=0;g<3;++g){for(var T=0,Rt=0;Rt<3;++Rt)T+=Ae[g+4*Rt]*Ee[Rt];Ae[12+g]=-T}Ae[15]=1},p.getMatrix=function(A,L){this.recalcMatrix(A);var _=this.computedMatrix;if(L){for(var C=0;C<16;++C)L[C]=_[C];return L}return _};var E=[0,0,0];p.rotate=function(A,L,_,C){if(this.angle.move(A,L,_),C){this.recalcMatrix(A);var M=this.computedMatrix;E[0]=M[2],E[1]=M[6],E[2]=M[10];for(var g=this.computedUp,P=this.computedRight,T=this.computedToward,F=0;F<3;++F)M[4*F]=g[F],M[4*F+1]=P[F],M[4*F+2]=T[F];u(M,M,C,E);for(var F=0;F<3;++F)g[F]=M[4*F],P[F]=M[4*F+1];this.up.set(A,g[0],g[1],g[2]),this.right.set(A,P[0],P[1],P[2])}},p.pan=function(A,L,_,C){L=L||0,_=_||0,C=C||0,this.recalcMatrix(A);var M=this.computedMatrix,g=Math.exp(this.computedRadius[0]),P=M[1],T=M[5],F=M[9],q=d(P,T,F);P/=q,T/=q,F/=q;var V=M[0],H=M[4],X=M[8],G=V*P+H*T+X*F;V-=P*G,H-=T*G,X-=F*G;var N=d(V,H,X);V/=N,H/=N,X/=N;var W=V*L+P*_,re=H*L+T*_,ae=X*L+F*_;this.center.move(A,W,re,ae);var _e=Math.exp(this.computedRadius[0]);_e=Math.max(1e-4,_e+C),this.radius.set(A,Math.log(_e))},p.translate=function(A,L,_,C){this.center.move(A,L||0,_||0,C||0)},p.setMatrix=function(A,L,_,C){var M=1;typeof _=="number"&&(M=_|0),(M<0||M>3)&&(M=1);var g=(M+2)%3,P=(M+1)%3;L||(this.recalcMatrix(A),L=this.computedMatrix);var T=L[M],F=L[M+4],q=L[M+8];if(C){var H=Math.abs(T),X=Math.abs(F),G=Math.abs(q),N=Math.max(H,X,G);H===N?(T=T<0?-1:1,F=q=0):G===N?(q=q<0?-1:1,T=F=0):(F=F<0?-1:1,T=q=0)}else{var V=d(T,F,q);T/=V,F/=V,q/=V}var W=L[g],re=L[g+4],ae=L[g+8],_e=W*T+re*F+ae*q;W-=T*_e,re-=F*_e,ae-=q*_e;var Me=d(W,re,ae);W/=Me,re/=Me,ae/=Me;var ke=F*ae-q*re,ge=q*W-T*ae,ie=T*re-F*W,Te=d(ke,ge,ie);ke/=Te,ge/=Te,ie/=Te,this.center.jump(A,er,Ke,xt),this.radius.idle(A),this.up.jump(A,T,F,q),this.right.jump(A,W,re,ae);var Ee,Ae;if(M===2){var ze=L[1],Ce=L[5],me=L[9],Re=ze*W+Ce*re+me*ae,ce=ze*ke+Ce*ge+me*ie;qt<0?Ee=-Math.PI/2:Ee=Math.PI/2,Ae=Math.atan2(ce,Re)}else{var Ge=L[2],nt=L[6],ct=L[10],qt=Ge*T+nt*F+ct*q,rt=Ge*W+nt*re+ct*ae,ot=Ge*ke+nt*ge+ct*ie;Ee=Math.asin(v(qt)),Ae=Math.atan2(ot,rt)}this.angle.jump(A,Ae,Ee),this.recalcMatrix(A);var Rt=L[2],kt=L[6],Ct=L[10],Yt=this.computedMatrix;l(Yt,L);var xr=Yt[15],er=Yt[12]/xr,Ke=Yt[13]/xr,xt=Yt[14]/xr,bt=Math.exp(this.computedRadius[0]);this.center.jump(A,er-Rt*bt,Ke-kt*bt,xt-Ct*bt)},p.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},p.idle=function(A){this.center.idle(A),this.up.idle(A),this.right.idle(A),this.radius.idle(A),this.angle.idle(A)},p.flush=function(A){this.center.flush(A),this.up.flush(A),this.right.flush(A),this.radius.flush(A),this.angle.flush(A)},p.setDistance=function(A,L){L>0&&this.radius.set(A,Math.log(L))},p.lookAt=function(A,L,_,C){this.recalcMatrix(A),L=L||this.computedEye,_=_||this.computedCenter,C=C||this.computedUp;var M=C[0],g=C[1],P=C[2],T=d(M,g,P);if(!(T<1e-6)){M/=T,g/=T,P/=T;var F=L[0]-_[0],q=L[1]-_[1],V=L[2]-_[2],H=d(F,q,V);if(!(H<1e-6)){F/=H,q/=H,V/=H;var X=this.computedRight,G=X[0],N=X[1],W=X[2],re=M*G+g*N+P*W;G-=re*M,N-=re*g,W-=re*P;var ae=d(G,N,W);if(!(ae<.01&&(G=g*V-P*q,N=P*F-M*V,W=M*q-g*F,ae=d(G,N,W),ae<1e-6))){G/=ae,N/=ae,W/=ae,this.up.set(A,M,g,P),this.right.set(A,G,N,W),this.center.set(A,_[0],_[1],_[2]),this.radius.set(A,Math.log(H));var _e=g*W-P*N,Me=P*G-M*W,ke=M*N-g*G,ge=d(_e,Me,ke);_e/=ge,Me/=ge,ke/=ge;var ie=M*F+g*q+P*V,Te=G*F+N*q+W*V,Ee=_e*F+Me*q+ke*V,Ae=Math.asin(v(ie)),ze=Math.atan2(Ee,Te),Ce=this.angle._state,me=Ce[Ce.length-1],Re=Ce[Ce.length-2];me=me%(2*Math.PI);var ce=Math.abs(me+2*Math.PI-ze),Ge=Math.abs(me-ze),nt=Math.abs(me-2*Math.PI-ze);ce<Ge&&(me+=2*Math.PI),nt<Ge&&(me-=2*Math.PI),this.angle.jump(this.angle.lastT(),me,Re),this.angle.set(A,ze,Ae)}}}};function k(A){A=A||{};var L=A.center||[0,0,0],_=A.up||[0,1,0],C=A.right||x(_),M=A.radius||1,g=A.theta||0,P=A.phi||0;if(L=[].slice.call(L,0,3),_=[].slice.call(_,0,3),f(_,_),C=[].slice.call(C,0,3),f(C,C),"eye"in A){var T=A.eye,F=[T[0]-L[0],T[1]-L[1],T[2]-L[2]];c(C,F,_),d(C[0],C[1],C[2])<1e-6?C=x(_):f(C,C),M=d(F[0],F[1],F[2]);var q=h(_,F)/M,V=h(C,F)/M;P=Math.acos(q),g=Math.acos(V)}return M=Math.log(M),new b(A.zoomMin,A.zoomMax,L,_,C,M,g,P)}},5250:function(i){"use strict";i.exports=o;var a=+(Math.pow(2,27)+1);function o(s,l,u){var c=s*l,f=a*s,h=f-s,d=f-h,v=s-d,x=a*l,b=x-l,p=x-b,E=l-p,k=c-d*p,A=k-v*p,L=A-d*E,_=v*E-L;return u?(u[0]=_,u[1]=c,u):[_,c]}},9362:function(i){"use strict";i.exports=a;function a(o,s,l){var u=o+s,c=u-o,f=u-c,h=s-c,d=o-f;return l?(l[0]=d+h,l[1]=u,l):[d+h,u]}},1888:function(i,a,o){"use strict";var s=o(8828),l=o(1338),u=o(4793).hp;o.g.__TYPEDARRAY_POOL||(o.g.__TYPEDARRAY_POOL={UINT8:l([32,0]),UINT16:l([32,0]),UINT32:l([32,0]),BIGUINT64:l([32,0]),INT8:l([32,0]),INT16:l([32,0]),INT32:l([32,0]),BIGINT64:l([32,0]),FLOAT:l([32,0]),DOUBLE:l([32,0]),DATA:l([32,0]),UINT8C:l([32,0]),BUFFER:l([32,0])});var c=typeof Uint8ClampedArray!="undefined",f=typeof BigUint64Array!="undefined",h=typeof BigInt64Array!="undefined",d=o.g.__TYPEDARRAY_POOL;d.UINT8C||(d.UINT8C=l([32,0])),d.BIGUINT64||(d.BIGUINT64=l([32,0])),d.BIGINT64||(d.BIGINT64=l([32,0])),d.BUFFER||(d.BUFFER=l([32,0]));var v=d.DATA,x=d.BUFFER;a.free=function(G){if(u.isBuffer(G))x[s.log2(G.length)].push(G);else{if(Object.prototype.toString.call(G)!=="[object ArrayBuffer]"&&(G=G.buffer),!G)return;var N=G.length||G.byteLength,W=s.log2(N)|0;v[W].push(G)}};function b(X){if(X){var G=X.length||X.byteLength,N=s.log2(G);v[N].push(X)}}function p(X){b(X.buffer)}a.freeUint8=a.freeUint16=a.freeUint32=a.freeBigUint64=a.freeInt8=a.freeInt16=a.freeInt32=a.freeBigInt64=a.freeFloat32=a.freeFloat=a.freeFloat64=a.freeDouble=a.freeUint8Clamped=a.freeDataView=p,a.freeArrayBuffer=b,a.freeBuffer=function(G){x[s.log2(G.length)].push(G)},a.malloc=function(G,N){if(N===void 0||N==="arraybuffer")return E(G);switch(N){case"uint8":return k(G);case"uint16":return A(G);case"uint32":return L(G);case"int8":return _(G);case"int16":return C(G);case"int32":return M(G);case"float":case"float32":return g(G);case"double":case"float64":return P(G);case"uint8_clamped":return T(G);case"bigint64":return q(G);case"biguint64":return F(G);case"buffer":return H(G);case"data":case"dataview":return V(G);default:return null}return null};function E(G){var G=s.nextPow2(G),N=s.log2(G),W=v[N];return W.length>0?W.pop():new ArrayBuffer(G)}a.mallocArrayBuffer=E;function k(X){return new Uint8Array(E(X),0,X)}a.mallocUint8=k;function A(X){return new Uint16Array(E(2*X),0,X)}a.mallocUint16=A;function L(X){return new Uint32Array(E(4*X),0,X)}a.mallocUint32=L;function _(X){return new Int8Array(E(X),0,X)}a.mallocInt8=_;function C(X){return new Int16Array(E(2*X),0,X)}a.mallocInt16=C;function M(X){return new Int32Array(E(4*X),0,X)}a.mallocInt32=M;function g(X){return new Float32Array(E(4*X),0,X)}a.mallocFloat32=a.mallocFloat=g;function P(X){return new Float64Array(E(8*X),0,X)}a.mallocFloat64=a.mallocDouble=P;function T(X){return c?new Uint8ClampedArray(E(X),0,X):k(X)}a.mallocUint8Clamped=T;function F(X){return f?new BigUint64Array(E(8*X),0,X):null}a.mallocBigUint64=F;function q(X){return h?new BigInt64Array(E(8*X),0,X):null}a.mallocBigInt64=q;function V(X){return new DataView(E(X),0,X)}a.mallocDataView=V;function H(X){X=s.nextPow2(X);var G=s.log2(X),N=x[G];return N.length>0?N.pop():new u(X)}a.mallocBuffer=H,a.clearCache=function(){for(var G=0;G<32;++G)d.UINT8[G].length=0,d.UINT16[G].length=0,d.UINT32[G].length=0,d.INT8[G].length=0,d.INT16[G].length=0,d.INT32[G].length=0,d.FLOAT[G].length=0,d.DOUBLE[G].length=0,d.BIGUINT64[G].length=0,d.BIGINT64[G].length=0,d.UINT8C[G].length=0,v[G].length=0,x[G].length=0}},1755:function(i){"use strict";"use restrict";i.exports=a;function a(s){this.roots=new Array(s),this.ranks=new Array(s);for(var l=0;l<s;++l)this.roots[l]=l,this.ranks[l]=0}var o=a.prototype;Object.defineProperty(o,"length",{get:function(){return this.roots.length}}),o.makeSet=function(){var s=this.roots.length;return this.roots.push(s),this.ranks.push(0),s},o.find=function(s){for(var l=s,u=this.roots;u[s]!==s;)s=u[s];for(;u[l]!==s;){var c=u[l];u[l]=s,l=c}return s},o.link=function(s,l){var u=this.find(s),c=this.find(l);if(u!==c){var f=this.ranks,h=this.roots,d=f[u],v=f[c];d<v?h[u]=c:v<d?h[c]=u:(h[c]=u,++f[u])}}},1682:function(i){"use strict";function a(l,u){for(var c=1,f=l.length,h=l[0],d=l[0],v=1;v<f;++v)if(d=h,h=l[v],u(h,d)){if(v===c){c++;continue}l[c++]=h}return l.length=c,l}function o(l){for(var u=1,c=l.length,f=l[0],h=l[0],d=1;d<c;++d,h=f)if(h=f,f=l[d],f!==h){if(d===u){u++;continue}l[u++]=f}return l.length=u,l}function s(l,u,c){return l.length===0?l:u?(c||l.sort(u),a(l,u)):(c||l.sort(),o(l))}i.exports=s},4359:function(i,a,o){"use strict";i.exports=c;var s=o(7718),l=null,u=null;typeof document!="undefined"&&(l=document.createElement("canvas"),l.width=8192,l.height=1024,u=l.getContext("2d"));function c(f,h){return(typeof h!="object"||h===null)&&(h={}),s(f,h.canvas||l,h.context||u,h)}},7718:function(i,a,o){i.exports=q,i.exports.processPixels=F;var s=o(3711),l=o(9618),u=o(5878),c=o(332),f=o(2538),h=o(2095),d="b",v="b|",x="i",b="i|",p="sup",E="+",k="+1",A="sub",L="-",_="-1";function C(V,H,X,G){for(var N="<"+V+">",W="</"+V+">",re=N.length,ae=W.length,_e=H[0]===E||H[0]===L,Me=0,ke=-ae;Me>-1&&(Me=X.indexOf(N,Me),!(Me===-1||(ke=X.indexOf(W,Me+re),ke===-1)||ke<=Me));){for(var ge=Me;ge<ke+ae;++ge)if(ge<Me+re||ge>=ke)G[ge]=null,X=X.substr(0,ge)+" "+X.substr(ge+1);else if(G[ge]!==null){var ie=G[ge].indexOf(H[0]);ie===-1?G[ge]+=H:_e&&(G[ge]=G[ge].substr(0,ie+1)+(1+parseInt(G[ge][ie+1]))+G[ge].substr(ie+2))}var Te=Me+re,Ee=X.substr(Te,ke-Te),Ae=Ee.indexOf(N);Ae!==-1?Me=Ae:Me=ke+ae}return G}function M(V,H,X){for(var G=H.textAlign||"start",N=H.textBaseline||"alphabetic",W=[1<<30,1<<30],re=[0,0],ae=V.length,_e=0;_e<ae;++_e)for(var Me=V[_e],ke=0;ke<2;++ke)W[ke]=Math.min(W[ke],Me[ke])|0,re[ke]=Math.max(re[ke],Me[ke])|0;var ge=0;switch(G){case"center":ge=-.5*(W[0]+re[0]);break;case"right":case"end":ge=-re[0];break;case"left":case"start":ge=-W[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+G+"'")}var ie=0;switch(N){case"hanging":case"top":ie=-W[1];break;case"middle":ie=-.5*(W[1]+re[1]);break;case"alphabetic":case"ideographic":ie=-3*X;break;case"bottom":ie=-re[1];break;default:throw new Error("vectorize-text: Unrecoginized textBaseline: '"+N+"'")}var Te=1/X;return"lineHeight"in H?Te*=+H.lineHeight:"width"in H?Te=H.width/(re[0]-W[0]):"height"in H&&(Te=H.height/(re[1]-W[1])),V.map(function(Ee){return[Te*(Ee[0]+ge),Te*(Ee[1]+ie)]})}function g(V,H,X,G,N,W){X=X.replace(/\n/g,""),W.breaklines===!0?X=X.replace(/\<br\>/g,`
+`):X=X.replace(/\<br\>/g," ");var re="",ae=[];for(me=0;me<X.length;++me)ae[me]=re;W.bolds===!0&&(ae=C(d,v,X,ae)),W.italics===!0&&(ae=C(x,b,X,ae)),W.superscripts===!0&&(ae=C(p,k,X,ae)),W.subscripts===!0&&(ae=C(A,_,X,ae));var _e=[],Me="";for(me=0;me<X.length;++me)ae[me]!==null&&(Me+=X[me],_e.push(ae[me]));var ke=Me.split(`
+`),ge=ke.length,ie=Math.round(N*G),Te=G,Ee=G*2,Ae=0,ze=ge*ie+Ee;V.height<ze&&(V.height=ze),H.fillStyle="#000",H.fillRect(0,0,V.width,V.height),H.fillStyle="#fff";var Ce,me,Re,ce,Ge,nt=0,ct="";function qt(){if(ct!==""){var Ke=H.measureText(ct).width;H.fillText(ct,Te+Re,Ee+ce),Re+=Ke}}function rt(){return""+Math.round(Ge)+"px "}function ot(Ke,xt){var bt=""+H.font;if(W.subscripts===!0){var Lt=Ke.indexOf(L),St=xt.indexOf(L),Et=Lt>-1?parseInt(Ke[1+Lt]):0,dt=St>-1?parseInt(xt[1+St]):0;Et!==dt&&(bt=bt.replace(rt(),"?px "),Ge*=Math.pow(.75,dt-Et),bt=bt.replace("?px ",rt())),ce+=.25*ie*(dt-Et)}if(W.superscripts===!0){var Ht=Ke.indexOf(E),$t=xt.indexOf(E),fr=Ht>-1?parseInt(Ke[1+Ht]):0,_r=$t>-1?parseInt(xt[1+$t]):0;fr!==_r&&(bt=bt.replace(rt(),"?px "),Ge*=Math.pow(.75,_r-fr),bt=bt.replace("?px ",rt())),ce-=.25*ie*(_r-fr)}if(W.bolds===!0){var Br=Ke.indexOf(v)>-1,Or=xt.indexOf(v)>-1;!Br&&Or&&(Nr?bt=bt.replace("italic ","italic bold "):bt="bold "+bt),Br&&!Or&&(bt=bt.replace("bold ",""))}if(W.italics===!0){var Nr=Ke.indexOf(b)>-1,ut=xt.indexOf(b)>-1;!Nr&&ut&&(bt="italic "+bt),Nr&&!ut&&(bt=bt.replace("italic ",""))}H.font=bt}for(Ce=0;Ce<ge;++Ce){var Rt=ke[Ce]+`
+`;for(Re=0,ce=Ce*ie,Ge=G,ct="",me=0;me<Rt.length;++me){var kt=me+nt<_e.length?_e[me+nt]:_e[_e.length-1];re===kt?ct+=Rt[me]:(qt(),ct=Rt[me],kt!==void 0&&(ot(re,kt),re=kt))}qt(),nt+=Rt.length;var Ct=Math.round(Re+2*Te)|0;Ae<Ct&&(Ae=Ct)}var Yt=Ae,xr=Ee+ie*ge,er=l(H.getImageData(0,0,Yt,xr).data,[xr,Yt,4]);return er.pick(-1,-1,0).transpose(1,0)}function P(V,H){var X=s(V,128);return H?u(X.cells,X.positions,.25):{edges:X.cells,positions:X.positions}}function T(V,H,X,G){var N=P(V,G),W=M(N.positions,H,X),re=N.edges,ae=H.orientation==="ccw";if(c(W,re),H.polygons||H.polygon||H.polyline){for(var _e=h(re,W),Me=new Array(_e.length),ke=0;ke<_e.length;++ke){for(var ge=_e[ke],ie=new Array(ge.length),Te=0;Te<ge.length;++Te){for(var Ee=ge[Te],Ae=new Array(Ee.length),ze=0;ze<Ee.length;++ze)Ae[ze]=W[Ee[ze]].slice();ae&&Ae.reverse(),ie[Te]=Ae}Me[ke]=ie}return Me}else return H.triangles||H.triangulate||H.triangle?{cells:f(W,re,{delaunay:!1,exterior:!1,interior:!0}),positions:W}:{edges:re,positions:W}}function F(V,H,X){try{return T(V,H,X,!0)}catch(G){}try{return T(V,H,X,!1)}catch(G){}return H.polygons||H.polyline||H.polygon?[]:H.triangles||H.triangulate||H.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}function q(V,H,X,G){var N=64,W=1.25,re={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};G&&(G.size&&G.size>0&&(N=G.size),G.lineSpacing&&G.lineSpacing>0&&(W=G.lineSpacing),G.styletags&&G.styletags.breaklines&&(re.breaklines=!!G.styletags.breaklines),G.styletags&&G.styletags.bolds&&(re.bolds=!!G.styletags.bolds),G.styletags&&G.styletags.italics&&(re.italics=!!G.styletags.italics),G.styletags&&G.styletags.subscripts&&(re.subscripts=!!G.styletags.subscripts),G.styletags&&G.styletags.superscripts&&(re.superscripts=!!G.styletags.superscripts)),X.font=[G.fontStyle,G.fontVariant,G.fontWeight,N+"px",G.font].filter(function(_e){return _e}).join(" "),X.textAlign="start",X.textBaseline="alphabetic",X.direction="ltr";var ae=g(H,X,V,N,W,re);return F(ae,G,N)}},1538:function(i){(function(){"use strict";if(typeof ses!="undefined"&&ses.ok&&!ses.ok())return;function o(T){T.permitHostObjects___&&T.permitHostObjects___(o)}typeof ses!="undefined"&&(ses.weakMapPermitHostObjects=o);var s=!1;if(typeof WeakMap=="function"){var l=WeakMap;if(!(typeof navigator!="undefined"&&/Firefox/.test(navigator.userAgent))){var u=new l,c=Object.freeze({});if(u.set(c,1),u.get(c)!==1)s=!0;else{i.exports=WeakMap;return}}}var f=Object.prototype.hasOwnProperty,h=Object.getOwnPropertyNames,d=Object.defineProperty,v=Object.isExtensible,x="weakmap:",b=x+"ident:"+Math.random()+"___";if(typeof crypto!="undefined"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var p=new ArrayBuffer(25),E=new Uint8Array(p);crypto.getRandomValues(E),b=x+"rand:"+Array.prototype.map.call(E,function(T){return(T%36).toString(36)}).join("")+"___"}function k(T){return!(T.substr(0,x.length)==x&&T.substr(T.length-3)==="___")}if(d(Object,"getOwnPropertyNames",{value:function(F){return h(F).filter(k)}}),"getPropertyNames"in Object){var A=Object.getPropertyNames;d(Object,"getPropertyNames",{value:function(F){return A(F).filter(k)}})}function L(T){if(T!==Object(T))throw new TypeError("Not an object: "+T);var F=T[b];if(F&&F.key===T)return F;if(v(T)){F={key:T};try{return d(T,b,{value:F,writable:!1,enumerable:!1,configurable:!1}),F}catch(q){return}}}(function(){var T=Object.freeze;d(Object,"freeze",{value:function(H){return L(H),T(H)}});var F=Object.seal;d(Object,"seal",{value:function(H){return L(H),F(H)}});var q=Object.preventExtensions;d(Object,"preventExtensions",{value:function(H){return L(H),q(H)}})})();function _(T){return T.prototype=null,Object.freeze(T)}var C=!1;function M(){!C&&typeof console!="undefined"&&(C=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var g=0,P=function(){this instanceof P||M();var T=[],F=[],q=g++;function V(N,W){var re,ae=L(N);return ae?q in ae?ae[q]:W:(re=T.indexOf(N),re>=0?F[re]:W)}function H(N){var W=L(N);return W?q in W:T.indexOf(N)>=0}function X(N,W){var re,ae=L(N);return ae?ae[q]=W:(re=T.indexOf(N),re>=0?F[re]=W:(re=T.length,F[re]=W,T[re]=N)),this}function G(N){var W=L(N),re,ae;return W?q in W&&delete W[q]:(re=T.indexOf(N),re<0?!1:(ae=T.length-1,T[re]=void 0,F[re]=F[ae],T[re]=T[ae],T.length=ae,F.length=ae,!0))}return Object.create(P.prototype,{get___:{value:_(V)},has___:{value:_(H)},set___:{value:_(X)},delete___:{value:_(G)}})};P.prototype=Object.create(Object.prototype,{get:{value:function(F,q){return this.get___(F,q)},writable:!0,configurable:!0},has:{value:function(F){return this.has___(F)},writable:!0,configurable:!0},set:{value:function(F,q){return this.set___(F,q)},writable:!0,configurable:!0},delete:{value:function(F){return this.delete___(F)},writable:!0,configurable:!0}}),typeof l=="function"?function(){s&&typeof Proxy!="undefined"&&(Proxy=void 0);function T(){this instanceof P||M();var F=new l,q=void 0,V=!1;function H(W,re){return q?F.has(W)?F.get(W):q.get___(W,re):F.get(W,re)}function X(W){return F.has(W)||(q?q.has___(W):!1)}var G;s?G=function(W,re){return F.set(W,re),F.has(W)||(q||(q=new P),q.set(W,re)),this}:G=function(W,re){if(V)try{F.set(W,re)}catch(ae){q||(q=new P),q.set___(W,re)}else F.set(W,re);return this};function N(W){var re=!!F.delete(W);return q&&q.delete___(W)||re}return Object.create(P.prototype,{get___:{value:_(H)},has___:{value:_(X)},set___:{value:_(G)},delete___:{value:_(N)},permitHostObjects___:{value:_(function(W){if(W===o)V=!0;else throw new Error("bogus call to permitHostObjects___")})}})}T.prototype=P.prototype,i.exports=T,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy!="undefined"&&(Proxy=void 0),i.exports=P)})()},236:function(i,a,o){var s=o(8284);i.exports=l;function l(){var u={};return function(c){if((typeof c!="object"||c===null)&&typeof c!="function")throw new Error("Weakmap-shim: Key must be object");var f=c.valueOf(u);return f&&f.identity===u?f:s(c,u)}}},8284:function(i){i.exports=a;function a(o,s){var l={identity:s},u=o.valueOf;return Object.defineProperty(o,"valueOf",{value:function(c){return c!==s?u.apply(this,arguments):l},writable:!0}),l}},606:function(i,a,o){var s=o(236);i.exports=l;function l(){var u=s();return{get:function(c,f){var h=u(c);return h.hasOwnProperty("value")?h.value:f},set:function(c,f){return u(c).value=f,this},has:function(c){return"value"in u(c)},delete:function(c){return delete u(c).value}}}},3349:function(i){"use strict";function a(){return function(f,h,d,v,x,b){var p=f[0],E=d[0],k=[0],A=E;v|=0;var L=0,_=E;for(L=0;L<p;++L){{var C=h[v]-b,M=h[v+A]-b;C>=0!=M>=0&&x.push(k[0]+.5+.5*(C+M)/(C-M))}v+=_,++k[0]}}}function o(){return a()}var s=o;function l(f){var h={};return function(v,x,b){var p=v.dtype,E=v.order,k=[p,E.join()].join(),A=h[k];return A||(h[k]=A=f([p,E])),A(v.shape.slice(0),v.data,v.stride,v.offset|0,x,b)}}function u(f){return l(s.bind(void 0,f))}function c(f){return u({funcName:f.funcName})}i.exports=c({funcName:"zeroCrossings"})},781:function(i,a,o){"use strict";i.exports=l;var s=o(3349);function l(u,c){var f=[];return c=+c||0,s(u.hi(u.shape[0]-1),f,c),f}},7790:function(){}},t={};function r(i){var a=t[i];if(a!==void 0)return a.exports;var o=t[i]={id:i,loaded:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.loaded=!0,o.exports}(function(){r.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch(i){if(typeof window=="object")return window}}()})(),function(){r.nmd=function(i){return i.paths=[],i.children||(i.children=[]),i}}();var n=r(1964);cLe.exports=n})()});var rZ=ye((ivr,fLe)=>{"use strict";fLe.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}});var pLe=ye((nvr,vLe)=>{"use strict";var hLe=rZ();vLe.exports=lLt;var dLe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function lLt(e){var t,r=[],n=1,i;if(typeof e=="string")if(e=e.toLowerCase(),hLe[e])r=hLe[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(e)){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(e)){var l=t[1],u=l==="rgb",a=l.replace(/a$/,"");i=a;var o=a==="cmyk"?4:a==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(h,d){if(/%$/.test(h))return d===o?parseFloat(h)/100:a==="rgb"?parseFloat(h)*255/100:parseFloat(h);if(a[d]==="h"){if(/deg$/.test(h))return parseFloat(h);if(dLe[h]!==void 0)return dLe[h]}return parseFloat(h)}),l===a&&r.push(1),n=u||r[o]===void 0?1:r[o],r=r.slice(0,o)}else e.length>10&&/[0-9](?:\s|\/)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(c){return parseFloat(c)}),i=e.match(/([a-z])/ig).join("").toLowerCase());else isNaN(e)?Array.isArray(e)||e.length?(r=[e[0],e[1],e[2]],i="rgb",n=e.length===4?e[3]:1):e instanceof Object&&(e.r!=null||e.red!=null||e.R!=null?(i="rgb",r=[e.r||e.red||e.R||0,e.g||e.green||e.G||0,e.b||e.blue||e.B||0]):(i="hsl",r=[e.h||e.hue||e.H||0,e.s||e.saturation||e.S||0,e.l||e.lightness||e.L||e.b||e.brightness]),n=e.a||e.alpha||e.opacity||1,e.opacity!=null&&(n/=100)):(i="rgb",r=[e>>>16,(e&65280)>>>8,e&255]);return{space:i,values:r,alpha:n}}});var mLe=ye((avr,gLe)=>{"use strict";var uLt=pLe();gLe.exports=function(t){Array.isArray(t)&&t.raw&&(t=String.raw.apply(null,arguments));var r,n,i,a=uLt(t);if(!a.space)return[];var o=[0,0,0],s=a.space[0]==="h"?[360,100,100]:[255,255,255];return r=Array(3),r[0]=Math.min(Math.max(a.values[0],o[0]),s[0]),r[1]=Math.min(Math.max(a.values[1],o[1]),s[1]),r[2]=Math.min(Math.max(a.values[2],o[2]),s[2]),a.space[0]==="h"&&(r=cLt(r)),r.push(Math.min(Math.max(a.alpha,0),1)),r};function cLt(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}});var VE=ye((ovr,yLe)=>{yLe.exports=fLt;function fLt(e,t,r){return t<r?e<t?t:e>r?r:e:e<r?r:e>t?t:e}});var HD=ye((svr,_Le)=>{_Le.exports=function(e){switch(e){case"int8":return Int8Array;case"int16":return Int16Array;case"int32":return Int32Array;case"uint8":return Uint8Array;case"uint16":return Uint16Array;case"uint32":return Uint32Array;case"float32":return Float32Array;case"float64":return Float64Array;case"array":return Array;case"uint8_clamped":return Uint8ClampedArray}}});var $_=ye((lvr,xLe)=>{"use strict";var hLt=mLe(),GD=VE(),dLt=HD();xLe.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var n=dLt(r),i=new n(4),a=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=hLt(t),t[0]/=255,t[1]/=255,t[2]/=255),vLt(t)?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:255,a&&(i[0]/=255,i[1]/=255,i[2]/=255,i[3]/=255),i):(a?(i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3]!=null?t[3]:1):(i[0]=GD(Math.floor(t[0]*255),0,255),i[1]=GD(Math.floor(t[1]*255),0,255),i[2]=GD(Math.floor(t[2]*255),0,255),i[3]=t[3]==null?255:GD(Math.floor(t[3]*255),0,255)),i)};function vLt(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}});var Jy=ye((uvr,bLe)=>{"use strict";var pLt=$_();function gLt(e){return e?pLt(e):[0,0,0,1]}bLe.exports=gLt});var $y=ye((cvr,kLe)=>{"use strict";var MLe=uo(),mLt=id(),jD=$_(),WD=Mu(),yLt=dh().defaultLine,wLe=vv().isArrayOrTypedArray,iZ=jD(yLt),ELe=1;function TLe(e,t){var r=e;return r[3]*=t,r}function ALe(e){if(MLe(e))return iZ;var t=jD(e);return t.length?t:iZ}function SLe(e){return MLe(e)?e:ELe}function _Lt(e,t,r){var n=e.color;n&&n._inputArray&&(n=n._inputArray);var i=wLe(n),a=wLe(t),o=WD.extractOpts(e),s=[],l,u,c,f,h;if(o.colorscale!==void 0?l=WD.makeColorScaleFuncFromTrace(e):l=ALe,i?u=function(v,x){return v[x]===void 0?iZ:jD(l(v[x]))}:u=ALe,a?c=function(v,x){return v[x]===void 0?ELe:SLe(v[x])}:c=SLe,i||a)for(var d=0;d<r;d++)f=u(n,d),h=c(t,d),s[d]=TLe(f,h);else s=TLe(jD(n),t);return s}function xLt(e){var t=WD.extractOpts(e),r=t.colorscale;return t.reversescale&&(r=WD.flipScale(t.colorscale)),r.map(function(n){var i=n[0],a=mLt(n[1]),o=a.toRgb();return{index:i,rgb:[o.r,o.g,o.b,o.a]}})}kLe.exports={formatColor:_Lt,parseColorScale:xLt}});var nZ=ye((fvr,CLe)=>{"use strict";CLe.exports={solid:[[],0],dot:[[.5,1],200],dash:[[.5,1],50],longdash:[[.5,1],10],dashdot:[[.5,.625,.875,1],50],longdashdot:[[.5,.7,.8,1],10]}});var ZD=ye((hvr,LLe)=>{"use strict";LLe.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}});var ILe=ye((dvr,PLe)=>{"use strict";var bLt=ba();function aZ(e,t,r,n){if(!t||!t.visible)return null;for(var i=bLt.getComponentMethod("errorbars","makeComputeError")(t),a=new Array(e.length),o=0;o<e.length;o++){var s=i(+e[o],o);if(n.type==="log"){var l=n.c2l(e[o]),u=e[o]-s[0],c=e[o]+s[1];if(a[o]=[(n.c2l(u,!0)-l)*r,(n.c2l(c,!0)-l)*r],u>0){var f=n.c2l(u);n._lowerLogErrorBound||(n._lowerLogErrorBound=f),n._lowerErrorBound=Math.min(n._lowerLogErrorBound,f)}}else a[o]=[-s[0]*r,s[1]*r]}return a}function wLt(e){for(var t=0;t<e.length;t++)if(e[t])return e[t].length;return 0}function TLt(e,t,r){var n=[aZ(e.x,e.error_x,t[0],r.xaxis),aZ(e.y,e.error_y,t[1],r.yaxis),aZ(e.z,e.error_z,t[2],r.zaxis)],i=wLt(n);if(i===0)return null;for(var a=new Array(i),o=0;o<i;o++){for(var s=[[0,0,0],[0,0,0]],l=0;l<3;l++)if(n[l])for(var u=0;u<2;u++)s[u][l]=n[l][o][u];a[o]=s}return a}PLe.exports=TLt});var ULe=ye((vvr,NLe)=>{"use strict";var ALt=Rd().gl_line3d,RLe=Rd().gl_scatter3d,SLt=Rd().gl_error3d,MLt=Rd().gl_mesh3d,ELt=Rd().delaunay_triangulate,Qy=Mr(),OLe=Jy(),XD=$y().formatColor,kLt=S3(),oZ=nZ(),CLt=ZD(),LLt=Qa(),PLt=rp().appendArrayPointValue,ILt=ILe();function BLe(e,t){this.scene=e,this.uid=t,this.linePlot=null,this.scatterPlot=null,this.errorBars=null,this.textMarkers=null,this.delaunayMesh=null,this.color=null,this.mode="",this.dataPoints=[],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.textLabels=null,this.data=null}var lZ=BLe.prototype;lZ.handlePick=function(e){if(e.object&&(e.object===this.linePlot||e.object===this.delaunayMesh||e.object===this.textMarkers||e.object===this.scatterPlot)){var t=e.index=e.data.index;return e.object.highlight&&e.object.highlight(null),this.scatterPlot&&(e.object=this.scatterPlot,this.scatterPlot.highlight(e.data)),e.textLabel="",this.textLabels&&(Qy.isArrayOrTypedArray(this.textLabels)?(this.textLabels[t]||this.textLabels[t]===0)&&(e.textLabel=this.textLabels[t]):e.textLabel=this.textLabels),e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]],!0}};function RLt(e,t,r){var n=(r+1)%3,i=(r+2)%3,a=[],o=[],s;for(s=0;s<e.length;++s){var l=e[s];isNaN(l[n])||!isFinite(l[n])||isNaN(l[i])||!isFinite(l[i])||(a.push([l[n],l[i]]),o.push(s))}var u=ELt(a);for(s=0;s<u.length;++s)for(var c=u[s],f=0;f<c.length;++f)c[f]=o[c[f]];return{positions:e,cells:u,meshColor:t}}function DLt(e){for(var t=[0,0,0],r=[[0,0,0],[0,0,0],[0,0,0]],n=[1,1,1],i=0;i<3;i++){var a=e[i];a&&a.copy_zstyle!==!1&&e[2].visible!==!1&&(a=e[2]),!(!a||!a.visible)&&(t[i]=a.width/2,r[i]=OLe(a.color),n[i]=a.thickness)}return{capSize:t,color:r,lineWidth:n}}function DLe(e){return e==null?0:e.indexOf("left")>-1?-1:e.indexOf("right")>-1?1:0}function zLe(e){return e==null?0:e.indexOf("top")>-1?-1:e.indexOf("bottom")>-1?1:0}function zLt(e){var t=0,r=0,n=[t,r];if(Array.isArray(e))for(var i=0;i<e.length;i++)n[i]=[t,r],e[i]&&(n[i][0]=DLe(e[i]),n[i][1]=zLe(e[i]));else n[0]=DLe(e),n[1]=zLe(e);return n}function FLt(e,t){return t(e*4)}function qLt(e){return CLt[e]}function sZ(e,t,r,n,i){var a=null;if(Qy.isArrayOrTypedArray(e)){a=[];for(var o=0;o<t;o++)e[o]===void 0?a[o]=n:a[o]=r(e[o],i)}else a=r(e,Qy.identity);return a}function OLt(e,t){var r=[],n=e.fullSceneLayout,i=e.dataScale,a=n.xaxis,o=n.yaxis,s=n.zaxis,l=t.marker,u=t.line,c=t.x||[],f=t.y||[],h=t.z||[],d=c.length,v=t.xcalendar,x=t.ycalendar,b=t.zcalendar,p,E,k,A,L,_;for(L=0;L<d;L++)p=a.d2l(c[L],0,v)*i[0],E=o.d2l(f[L],0,x)*i[1],k=s.d2l(h[L],0,b)*i[2],r[L]=[p,E,k];if(Array.isArray(t.text))_=t.text;else if(Qy.isTypedArray(t.text))_=Array.from(t.text);else if(t.text!==void 0)for(_=new Array(d),L=0;L<d;L++)_[L]=t.text;function C(_e,Me){var ke=n[_e];return LLt.tickText(ke,ke.d2l(Me),!0).text}var M=t.texttemplate;if(M){var g=e.fullLayout,P=g._d3locale,T=Array.isArray(M),F=T?Math.min(M.length,d):d,q=T?function(_e){return M[_e]}:function(){return M};for(_=new Array(F),L=0;L<F;L++){var V={x:c[L],y:f[L],z:h[L]},H={xLabel:C("xaxis",c[L]),yLabel:C("yaxis",f[L]),zLabel:C("zaxis",h[L])},X={};PLt(X,t,L);var G=t._meta||{};_[L]=Qy.texttemplateString(q(L),H,P,X,V,G)}}if(A={position:r,mode:t.mode,text:_},"line"in t&&(A.lineColor=XD(u,1,d),A.lineWidth=u.width,A.lineDashes=u.dash),"marker"in t){var N=kLt(t);A.scatterColor=XD(l,1,d),A.scatterSize=sZ(l.size,d,FLt,20,N),A.scatterMarker=sZ(l.symbol,d,qLt,"\u25CF"),A.scatterLineWidth=l.line.width,A.scatterLineColor=XD(l.line,1,d),A.scatterAngle=0}"textposition"in t&&(A.textOffset=zLt(t.textposition),A.textColor=XD(t.textfont,1,d),A.textSize=sZ(t.textfont.size,d,Qy.identity,12),A.textFontFamily=t.textfont.family,A.textFontWeight=t.textfont.weight,A.textFontStyle=t.textfont.style,A.textFontVariant=t.textfont.variant,A.textAngle=0);var W=["x","y","z"];for(A.project=[!1,!1,!1],A.projectScale=[1,1,1],A.projectOpacity=[1,1,1],L=0;L<3;++L){var re=t.projection[W[L]];(A.project[L]=re.show)&&(A.projectOpacity[L]=re.opacity,A.projectScale[L]=re.scale)}A.errorBounds=ILt(t,i,n);var ae=DLt([t.error_x,t.error_y,t.error_z]);return A.errorColor=ae.color,A.errorLineWidth=ae.lineWidth,A.errorCapSize=ae.capSize,A.delaunayAxis=t.surfaceaxis,A.delaunayColor=OLe(t.surfacecolor),A}function FLe(e){if(Qy.isArrayOrTypedArray(e)){var t=e[0];return Qy.isArrayOrTypedArray(t)&&(e=t),"rgb("+e.slice(0,3).map(function(r){return Math.round(r*255)})+")"}return null}function qLe(e){return Qy.isArrayOrTypedArray(e)?e.length===4&&typeof e[0]=="number"?FLe(e):e.map(FLe):null}lZ.update=function(e){var t=this.scene.glplot.gl,r,n,i,a,o=oZ.solid;this.data=e;var s=OLt(this.scene,e);"mode"in s&&(this.mode=s.mode),"lineDashes"in s&&s.lineDashes in oZ&&(o=oZ[s.lineDashes]),this.color=qLe(s.scatterColor)||qLe(s.lineColor),this.dataPoints=s.position,r={gl:this.scene.glplot.gl,position:s.position,color:s.lineColor,lineWidth:s.lineWidth||1,dashes:o[0],dashScale:o[1],opacity:e.opacity,connectGaps:e.connectgaps},this.mode.indexOf("lines")!==-1?this.linePlot?this.linePlot.update(r):(this.linePlot=ALt(r),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 l=e.opacity;if(e.marker&&e.marker.opacity!==void 0&&(l*=e.marker.opacity),n={gl:this.scene.glplot.gl,position:s.position,color:s.scatterColor,size:s.scatterSize,glyph:s.scatterMarker,opacity:l,orthographic:!0,lineWidth:s.scatterLineWidth,lineColor:s.scatterLineColor,project:s.project,projectScale:s.projectScale,projectOpacity:s.projectOpacity},this.mode.indexOf("markers")!==-1?this.scatterPlot?this.scatterPlot.update(n):(this.scatterPlot=RLe(n),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),a={gl:this.scene.glplot.gl,position:s.position,glyph:s.text,color:s.textColor,size:s.textSize,angle:s.textAngle,alignment:s.textOffset,font:s.textFontFamily,fontWeight:s.textFontWeight,fontStyle:s.textFontStyle,fontVariant:s.textFontVariant,orthographic:!0,lineWidth:0,project:!1,opacity:e.opacity},this.textLabels=e.hovertext||e.text,this.mode.indexOf("text")!==-1?this.textMarkers?this.textMarkers.update(a):(this.textMarkers=RLe(a),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),i={gl:this.scene.glplot.gl,position:s.position,color:s.errorColor,error:s.errorBounds,lineWidth:s.errorLineWidth,capSize:s.errorCapSize,opacity:e.opacity},this.errorBars?s.errorBounds?this.errorBars.update(i):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):s.errorBounds&&(this.errorBars=SLt(i),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),s.delaunayAxis>=0){var u=RLt(s.position,s.delaunayColor,s.delaunayAxis);u.opacity=e.opacity,this.delaunayMesh?this.delaunayMesh.update(u):(u.gl=t,this.delaunayMesh=MLt(u),this.delaunayMesh._trace=this,this.scene.glplot.add(this.delaunayMesh))}else this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose(),this.delaunayMesh=null)};lZ.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function BLt(e,t){var r=new BLe(e,t.uid);return r.update(t),r}NLe.exports=BLt});var dZ=ye((pvr,GLe)=>{"use strict";var e1=Uc(),NLt=Su(),hZ=Jl(),uZ=Oc().axisHoverFormat,ULt=Wo().hovertemplateAttrs,VLt=Wo().texttemplateAttrs,VLe=vl(),HLt=nZ(),GLt=ZD(),Yg=no().extendFlat,jLt=Bu().overrideAll,HLe=Y1(),WLt=e1.line,N2=e1.marker,ZLt=N2.line,XLt=Yg({width:WLt.width,dash:{valType:"enumerated",values:HLe(HLt),dflt:"solid"}},hZ("line"));function cZ(e){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var fZ=GLe.exports=jLt({x:e1.x,y:e1.y,z:{valType:"data_array"},text:Yg({},e1.text,{}),texttemplate:VLt({},{}),hovertext:Yg({},e1.hovertext,{}),hovertemplate:ULt(),xhoverformat:uZ("x"),yhoverformat:uZ("y"),zhoverformat:uZ("z"),mode:Yg({},e1.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:cZ("x"),y:cZ("y"),z:cZ("z")},connectgaps:e1.connectgaps,line:XLt,marker:Yg({symbol:{valType:"enumerated",values:HLe(GLt),dflt:"circle",arrayOk:!0},size:Yg({},N2.size,{dflt:8}),sizeref:N2.sizeref,sizemin:N2.sizemin,sizemode:N2.sizemode,opacity:Yg({},N2.opacity,{arrayOk:!1}),colorbar:N2.colorbar,line:Yg({width:Yg({},ZLt.width,{arrayOk:!1})},hZ("marker.line"))},hZ("marker")),textposition:Yg({},e1.textposition,{dflt:"top center"}),textfont:NLt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:VLe.opacity,hoverinfo:Yg({},VLe.hoverinfo)},"calc","nested");fZ.x.editType=fZ.y.editType=fZ.z.editType="calc+clearAxisTypes"});var ZLe=ye((gvr,WLe)=>{"use strict";var jLe=ba(),YLt=Mr(),vZ=lu(),KLt=$p(),JLt=R0(),$Lt=D0(),QLt=dZ();WLe.exports=function(t,r,n,i){function a(d,v){return YLt.coerce(t,r,QLt,d,v)}var o=ePt(t,r,a,i);if(!o){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),a("mode"),vZ.hasMarkers(r)&&KLt(t,r,n,i,a,{noSelect:!0,noAngle:!0}),vZ.hasLines(r)&&(a("connectgaps"),JLt(t,r,n,i,a)),vZ.hasText(r)&&(a("texttemplate"),$Lt(t,r,i,a,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var s=(r.line||{}).color,l=(r.marker||{}).color;a("surfaceaxis")>=0&&a("surfacecolor",s||l);for(var u=["x","y","z"],c=0;c<3;++c){var f="projection."+u[c];a(f+".show")&&(a(f+".opacity"),a(f+".scale"))}var h=jLe.getComponentMethod("errorbars","supplyDefaults");h(t,r,s||l||n,{axis:"z"}),h(t,r,s||l||n,{axis:"y",inherit:"z"}),h(t,r,s||l||n,{axis:"x",inherit:"z"})};function ePt(e,t,r,n){var i=0,a=r("x"),o=r("y"),s=r("z"),l=jLe.getComponentMethod("calendars","handleTraceDefaults");return l(e,t,["x","y","z"],n),a&&o&&s&&(i=Math.min(a.length,o.length,s.length),t._length=t._xlength=t._ylength=t._zlength=i),i}});var YLe=ye((mvr,XLe)=>{"use strict";var tPt=km(),rPt=z0();XLe.exports=function(t,r){var n=[{x:!1,y:!1,trace:r,t:{}}];return tPt(n,r),rPt(t,r),n}});var JLe=ye((yvr,KLe)=>{KLe.exports=iPt;function iPt(e,t){if(typeof e!="string")throw new TypeError("must specify type string");if(t=t||{},typeof document=="undefined"&&!t.canvas)return null;var r=t.canvas||document.createElement("canvas");typeof t.width=="number"&&(r.width=t.width),typeof t.height=="number"&&(r.height=t.height);var n=t,i;try{var a=[e];e.indexOf("webgl")===0&&a.push("experimental-"+e);for(var o=0;o<a.length;o++)if(i=r.getContext(a[o],n),i)return i}catch(s){i=null}return i||null}});var QLe=ye((_vr,$Le)=>{var nPt=JLe();$Le.exports=function(t){return nPt("webgl",t)}});var pZ=ye((xvr,tPe)=>{"use strict";var ePe=va(),aPt=function(){};tPe.exports=function(t){for(var r in t)typeof t[r]=="function"&&(t[r]=aPt);t.destroy=function(){t.container.parentNode.removeChild(t.container)};var n=document.createElement("div");n.className="no-webgl",n.style.cursor="pointer",n.style.fontSize="24px",n.style.color=ePe.defaults[0],n.style.position="absolute",n.style.left=n.style.top="0px",n.style.width=n.style.height="100%",n.style["background-color"]=ePe.lightLine,n.style["z-index"]=30;var i=document.createElement("p");return i.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",i.style.position="relative",i.style.top="50%",i.style.left="50%",i.style.height="30%",i.style.width="50%",i.style.margin="-15% 0 0 -25%",n.appendChild(i),t.container.appendChild(n),t.container.style.background="#FFFFFF",t.container.onclick=function(){window.open("https://get.webgl.org")},!1}});var nPe=ye((bvr,iPe)=>{"use strict";var U2=Jy(),oPt=Mr(),sPt=["xaxis","yaxis","zaxis"];function rPe(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var lPt=rPe.prototype;lPt.merge=function(e,t){for(var r=this,n=0;n<3;++n){var i=t[sPt[n]];if(!i.visible){r.tickEnable[n]=!1,r.labelEnable[n]=!1,r.lineEnable[n]=!1,r.lineTickEnable[n]=!1,r.gridEnable[n]=!1,r.zeroEnable[n]=!1,r.backgroundEnable[n]=!1;continue}r.labels[n]=e._meta?oPt.templateString(i.title.text,e._meta):i.title.text,"font"in i.title&&(i.title.font.color&&(r.labelColor[n]=U2(i.title.font.color)),i.title.font.family&&(r.labelFont[n]=i.title.font.family),i.title.font.size&&(r.labelSize[n]=i.title.font.size),i.title.font.weight&&(r.labelFontWeight[n]=i.title.font.weight),i.title.font.style&&(r.labelFontStyle[n]=i.title.font.style),i.title.font.variant&&(r.labelFontVariant[n]=i.title.font.variant)),"showline"in i&&(r.lineEnable[n]=i.showline),"linecolor"in i&&(r.lineColor[n]=U2(i.linecolor)),"linewidth"in i&&(r.lineWidth[n]=i.linewidth),"showgrid"in i&&(r.gridEnable[n]=i.showgrid),"gridcolor"in i&&(r.gridColor[n]=U2(i.gridcolor)),"gridwidth"in i&&(r.gridWidth[n]=i.gridwidth),i.type==="log"?r.zeroEnable[n]=!1:"zeroline"in i&&(r.zeroEnable[n]=i.zeroline),"zerolinecolor"in i&&(r.zeroLineColor[n]=U2(i.zerolinecolor)),"zerolinewidth"in i&&(r.zeroLineWidth[n]=i.zerolinewidth),"ticks"in i&&i.ticks?r.lineTickEnable[n]=!0:r.lineTickEnable[n]=!1,"ticklen"in i&&(r.lineTickLength[n]=r._defaultLineTickLength[n]=i.ticklen),"tickcolor"in i&&(r.lineTickColor[n]=U2(i.tickcolor)),"tickwidth"in i&&(r.lineTickWidth[n]=i.tickwidth),"tickangle"in i&&(r.tickAngle[n]=i.tickangle==="auto"?-3600:Math.PI*-i.tickangle/180),"showticklabels"in i&&(r.tickEnable[n]=i.showticklabels),"tickfont"in i&&(i.tickfont.color&&(r.tickColor[n]=U2(i.tickfont.color)),i.tickfont.family&&(r.tickFont[n]=i.tickfont.family),i.tickfont.size&&(r.tickSize[n]=i.tickfont.size),i.tickfont.weight&&(r.tickFontWeight[n]=i.tickfont.weight),i.tickfont.style&&(r.tickFontStyle[n]=i.tickfont.style),i.tickfont.variant&&(r.tickFontVariant[n]=i.tickfont.variant)),"mirror"in i?["ticks","all","allticks"].indexOf(i.mirror)!==-1?(r.lineTickMirror[n]=!0,r.lineMirror[n]=!0):i.mirror===!0?(r.lineTickMirror[n]=!1,r.lineMirror[n]=!0):(r.lineTickMirror[n]=!1,r.lineMirror[n]=!1):r.lineMirror[n]=!1,"showbackground"in i&&i.showbackground!==!1?(r.backgroundEnable[n]=!0,r.backgroundColor[n]=U2(i.backgroundcolor)):r.backgroundEnable[n]=!1}};function uPt(e,t){var r=new rPe;return r.merge(e,t),r}iPe.exports=uPt});var sPe=ye((wvr,oPe)=>{"use strict";var cPt=Jy(),fPt=["xaxis","yaxis","zaxis"];function aPe(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var hPt=aPe.prototype;hPt.merge=function(e){for(var t=0;t<3;++t){var r=e[fPt[t]];if(!r.visible){this.enabled[t]=!1,this.drawSides[t]=!1;continue}this.enabled[t]=r.showspikes,this.colors[t]=cPt(r.spikecolor),this.drawSides[t]=r.spikesides,this.lineWidth[t]=r.spikethickness}};function dPt(e){var t=new aPe;return t.merge(e),t}oPe.exports=dPt});var cPe=ye((Tvr,uPe)=>{"use strict";uPe.exports=yPt;var lPe=Qa(),vPt=Mr(),pPt=["xaxis","yaxis","zaxis"],gPt=[0,0,0];function mPt(e){for(var t=new Array(3),r=0;r<3;++r){for(var n=e[r],i=new Array(n.length),a=0;a<n.length;++a)i[a]=n[a].x;t[r]=i}return t}function yPt(e){for(var t=e.axesOptions,r=e.glplot.axesPixels,n=e.fullSceneLayout,i=[[],[],[]],a=0;a<3;++a){var o=n[pPt[a]];if(o._length=(r[a].hi-r[a].lo)*r[a].pixelsPerDataUnit/e.dataScale[a],Math.abs(o._length)===1/0||isNaN(o._length))i[a]=[];else{o._input_range=o.range.slice(),o.range[0]=r[a].lo/e.dataScale[a],o.range[1]=r[a].hi/e.dataScale[a],o._m=1/(e.dataScale[a]*r[a].pixelsPerDataUnit),o.range[0]===o.range[1]&&(o.range[0]-=1,o.range[1]+=1);var s=o.tickmode;if(o.tickmode==="auto"){o.tickmode="linear";var l=o.nticks||vPt.constrain(o._length/40,4,9);lPe.autoTicks(o,Math.abs(o.range[1]-o.range[0])/l)}for(var u=lPe.calcTicks(o,{msUTC:!0}),c=0;c<u.length;++c)u[c].x=u[c].x*e.dataScale[a],o.type==="date"&&(u[c].text=u[c].text.replace(/\<br\>/g," "));i[a]=u,o.tickmode=s}}t.ticks=i;for(var a=0;a<3;++a){gPt[a]=.5*(e.glplot.bounds[0][a]+e.glplot.bounds[1][a]);for(var c=0;c<2;++c)t.bounds[c][a]=e.glplot.bounds[c][a]}e.contourLevels=mPt(i)}});var mPe=ye((Avr,gPe)=>{"use strict";var dPe=Rd().gl_plot3d,_Pt=dPe.createCamera,fPe=dPe.createScene,xPt=QLe(),bPt=kL(),JD=ba(),up=Mr(),KD=up.preserveDrawingBuffer(),$D=Qa(),Kg=Nc(),wPt=Jy(),TPt=pZ(),APt=DU(),SPt=nPe(),MPt=sPe(),EPt=cPe(),kPt=wg().applyAutorangeOptions,HE,YD,vPe=!1;function pPe(e,t){var r=document.createElement("div"),n=e.container;this.graphDiv=e.graphDiv;var i=document.createElementNS("http://www.w3.org/2000/svg","svg");i.style.position="absolute",i.style.top=i.style.left="0px",i.style.width=i.style.height="100%",i.style["z-index"]=20,i.style["pointer-events"]="none",r.appendChild(i),this.svgContainer=i,r.id=e.id,r.style.position="absolute",r.style.top=r.style.left="0px",r.style.width=r.style.height="100%",n.appendChild(r),this.fullLayout=t,this.id=e.id||"scene",this.fullSceneLayout=t[this.id],this.plotArgs=[[],{},{}],this.axesOptions=SPt(t,t[this.id]),this.spikeOptions=MPt(t[this.id]),this.container=r,this.staticMode=!!e.staticPlot,this.pixelRatio=this.pixelRatio||e.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=JD.getComponentMethod("annotations3d","convert"),this.drawAnnotations=JD.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var wv=pPe.prototype;wv.prepareOptions=function(){var e=this,t={canvas:e.canvas,gl:e.gl,glOptions:{preserveDrawingBuffer:KD,premultipliedAlpha:!0,antialias:!0},container:e.container,axes:e.axesOptions,spikes:e.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:e.camera,pixelRatio:e.pixelRatio};if(e.staticMode){if(!YD&&(HE=document.createElement("canvas"),YD=xPt({canvas:HE,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!YD))throw new Error("error creating static canvas/context for image server");t.gl=YD,t.canvas=HE}return t};var hPe=!0;wv.tryCreatePlot=function(){var e=this,t=e.prepareOptions(),r=!0;try{e.glplot=fPe(t)}catch(n){if(e.staticMode||!hPe||KD)r=!1;else{up.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{KD=t.glOptions.preserveDrawingBuffer=!0,e.glplot=fPe(t)}catch(i){KD=t.glOptions.preserveDrawingBuffer=!1,r=!1}}}return hPe=!1,r};wv.initializeGLCamera=function(){var e=this,t=e.fullSceneLayout.camera,r=t.projection.type==="orthographic";e.camera=_Pt(e.container,{center:[t.center.x,t.center.y,t.center.z],eye:[t.eye.x,t.eye.y,t.eye.z],up:[t.up.x,t.up.y,t.up.z],_ortho:r,zoomMin:.01,zoomMax:100,mode:"orbit"})};wv.initializeGLPlot=function(){var e=this;e.initializeGLCamera();var t=e.tryCreatePlot();if(!t)return TPt(e);e.traces={},e.make4thDimension();var r=e.graphDiv,n=r.layout,i=function(){var o={};return e.isCameraChanged(n)&&(o[e.id+".camera"]=e.getCamera()),e.isAspectChanged(n)&&(o[e.id+".aspectratio"]=e.glplot.getAspectratio(),n[e.id].aspectmode!=="manual"&&(e.fullSceneLayout.aspectmode=n[e.id].aspectmode=o[e.id+".aspectmode"]="manual")),o},a=function(o){if(o.fullSceneLayout.dragmode!==!1){var s=i();o.saveLayout(n),o.graphDiv.emit("plotly_relayout",s)}};return e.glplot.canvas&&(e.glplot.canvas.addEventListener("mouseup",function(){a(e)}),e.glplot.canvas.addEventListener("touchstart",function(){vPe=!0}),e.glplot.canvas.addEventListener("wheel",function(o){if(r._context._scrollZoom.gl3d){if(e.camera._ortho){var s=o.deltaX>o.deltaY?1.1:.9090909090909091,l=e.glplot.getAspectratio();e.glplot.setAspectratio({x:s*l.x,y:s*l.y,z:s*l.z})}a(e)}},bPt?{passive:!1}:!1),e.glplot.canvas.addEventListener("mousemove",function(){if(e.fullSceneLayout.dragmode!==!1&&e.camera.mouseListener.buttons!==0){var o=i();e.graphDiv.emit("plotly_relayouting",o)}}),e.staticMode||e.glplot.canvas.addEventListener("webglcontextlost",function(o){r&&r.emit&&r.emit("plotly_webglcontextlost",{event:o,layer:e.id})},!1)),e.glplot.oncontextloss=function(){e.recoverContext()},e.glplot.onrender=function(){e.render()},!0};wv.render=function(){var e=this,t=e.graphDiv,r,n=e.svgContainer,i=e.container.getBoundingClientRect();t._fullLayout._calcInverseTransform(t);var a=t._fullLayout._invScaleX,o=t._fullLayout._invScaleY,s=i.width*a,l=i.height*o;n.setAttributeNS(null,"viewBox","0 0 "+s+" "+l),n.setAttributeNS(null,"width",s),n.setAttributeNS(null,"height",l),EPt(e),e.glplot.axes.update(e.axesOptions);for(var u=Object.keys(e.traces),c=null,f=e.glplot.selection,h=0;h<u.length;++h)r=e.traces[u[h]],r.data.hoverinfo!=="skip"&&r.handlePick(f)&&(c=r),r.setContourLevels&&r.setContourLevels();function d(P,T,F){var q=e.fullSceneLayout[P+"axis"];return q.type!=="log"&&(T=q.d2l(T)),$D.hoverLabelText(q,T,F)}if(c!==null){var v=APt(e.glplot.cameraParams,f.dataCoordinate);r=c.data;var x=t._fullData[r.index],b=f.index,p={xLabel:d("x",f.traceCoordinate[0],r.xhoverformat),yLabel:d("y",f.traceCoordinate[1],r.yhoverformat),zLabel:d("z",f.traceCoordinate[2],r.zhoverformat)},E=Kg.castHoverinfo(x,e.fullLayout,b),k=(E||"").split("+"),A=E&&E==="all";!x.hovertemplate&&!A&&(k.indexOf("x")===-1&&(p.xLabel=void 0),k.indexOf("y")===-1&&(p.yLabel=void 0),k.indexOf("z")===-1&&(p.zLabel=void 0),k.indexOf("text")===-1&&(f.textLabel=void 0),k.indexOf("name")===-1&&(c.name=void 0));var L,_=[];r.type==="cone"||r.type==="streamtube"?(p.uLabel=d("x",f.traceCoordinate[3],r.uhoverformat),(A||k.indexOf("u")!==-1)&&_.push("u: "+p.uLabel),p.vLabel=d("y",f.traceCoordinate[4],r.vhoverformat),(A||k.indexOf("v")!==-1)&&_.push("v: "+p.vLabel),p.wLabel=d("z",f.traceCoordinate[5],r.whoverformat),(A||k.indexOf("w")!==-1)&&_.push("w: "+p.wLabel),p.normLabel=f.traceCoordinate[6].toPrecision(3),(A||k.indexOf("norm")!==-1)&&_.push("norm: "+p.normLabel),r.type==="streamtube"&&(p.divergenceLabel=f.traceCoordinate[7].toPrecision(3),(A||k.indexOf("divergence")!==-1)&&_.push("divergence: "+p.divergenceLabel)),f.textLabel&&_.push(f.textLabel),L=_.join("<br>")):r.type==="isosurface"||r.type==="volume"?(p.valueLabel=$D.hoverLabelText(e._mockAxis,e._mockAxis.d2l(f.traceCoordinate[3]),r.valuehoverformat),_.push("value: "+p.valueLabel),f.textLabel&&_.push(f.textLabel),L=_.join("<br>")):L=f.textLabel;var C={x:f.traceCoordinate[0],y:f.traceCoordinate[1],z:f.traceCoordinate[2],data:x._input,fullData:x,curveNumber:x.index,pointNumber:b};Kg.appendArrayPointValue(C,x,b),r._module.eventData&&(C=x._module.eventData(C,f,x,{},b));var M={points:[C]};if(e.fullSceneLayout.hovermode){var g=[];Kg.loneHover({trace:x,x:(.5+.5*v[0]/v[3])*s,y:(.5-.5*v[1]/v[3])*l,xLabel:p.xLabel,yLabel:p.yLabel,zLabel:p.zLabel,text:L,name:c.name,color:Kg.castHoverOption(x,b,"bgcolor")||c.color,borderColor:Kg.castHoverOption(x,b,"bordercolor"),fontFamily:Kg.castHoverOption(x,b,"font.family"),fontSize:Kg.castHoverOption(x,b,"font.size"),fontColor:Kg.castHoverOption(x,b,"font.color"),nameLength:Kg.castHoverOption(x,b,"namelength"),textAlign:Kg.castHoverOption(x,b,"align"),hovertemplate:up.castOption(x,b,"hovertemplate"),hovertemplateLabels:up.extendFlat({},C,p),eventData:[C]},{container:n,gd:t,inOut_bbox:g}),C.bbox=g[0]}f.distance<5&&(f.buttons||vPe)?t.emit("plotly_click",M):t.emit("plotly_hover",M),this.oldEventData=M}else Kg.loneUnhover(n),this.oldEventData&&t.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;e.drawAnnotations(e)};wv.recoverContext=function(){var e=this;e.glplot.dispose();var t=function(){if(e.glplot.gl.isContextLost()){requestAnimationFrame(t);return}if(!e.initializeGLPlot()){up.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}e.plot.apply(e,e.plotArgs)};requestAnimationFrame(t)};var GE=["xaxis","yaxis","zaxis"];function CPt(e,t,r){for(var n=e.fullSceneLayout,i=0;i<3;i++){var a=GE[i],o=a.charAt(0),s=n[a],l=t[o],u=t[o+"calendar"],c=t["_"+o+"length"];if(!up.isArrayOrTypedArray(l))r[0][i]=Math.min(r[0][i],0),r[1][i]=Math.max(r[1][i],c-1);else for(var f,h=0;h<(c||l.length);h++)if(up.isArrayOrTypedArray(l[h]))for(var d=0;d<l[h].length;++d)f=s.d2l(l[h][d],0,u),!isNaN(f)&&isFinite(f)&&(r[0][i]=Math.min(r[0][i],f),r[1][i]=Math.max(r[1][i],f));else f=s.d2l(l[h],0,u),!isNaN(f)&&isFinite(f)&&(r[0][i]=Math.min(r[0][i],f),r[1][i]=Math.max(r[1][i],f))}}function LPt(e,t){for(var r=e.fullSceneLayout,n=r.annotations||[],i=0;i<3;i++)for(var a=GE[i],o=a.charAt(0),s=r[a],l=0;l<n.length;l++){var u=n[l];if(u.visible){var c=s.r2l(u[o]);!isNaN(c)&&isFinite(c)&&(t[0][i]=Math.min(t[0][i],c),t[1][i]=Math.max(t[1][i],c))}}}wv.plot=function(e,t,r){var n=this;if(n.plotArgs=[e,t,r],!n.glplot.contextLost){var i,a,o,s,l,u,c=t[n.id],f=r[n.id];n.fullLayout=t,n.fullSceneLayout=c,n.axesOptions.merge(t,c),n.spikeOptions.merge(c),n.setViewport(c),n.updateFx(c.dragmode,c.hovermode),n.camera.enableWheel=n.graphDiv._context._scrollZoom.gl3d,n.glplot.setClearColor(wPt(c.bgcolor)),n.setConvert(l),e?Array.isArray(e)||(e=[e]):e=[];var h=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(o=0;o<e.length;++o)i=e[o],!(i.visible!==!0||i._length===0)&&CPt(this,i,h);LPt(this,h);var d=[1,1,1];for(s=0;s<3;++s)h[1][s]===h[0][s]?d[s]=1:d[s]=1/(h[1][s]-h[0][s]);for(n.dataScale=d,n.convertAnnotations(this),o=0;o<e.length;++o)i=e[o],!(i.visible!==!0||i._length===0)&&(a=n.traces[i.uid],a?a.data.type===i.type?a.update(i):(a.dispose(),a=i._module.plot(this,i),n.traces[i.uid]=a):(a=i._module.plot(this,i),n.traces[i.uid]=a),a.name=i.name);var v=Object.keys(n.traces);e:for(o=0;o<v.length;++o){for(s=0;s<e.length;++s)if(e[s].uid===v[o]&&e[s].visible===!0&&e[s]._length!==0)continue e;a=n.traces[v[o]],a.dispose(),delete n.traces[v[o]]}n.glplot.objects.sort(function(ae,_e){return ae._trace.data.index-_e._trace.data.index});var x=[[0,0,0],[0,0,0]],b=[],p={};for(o=0;o<3;++o){l=c[GE[o]],u=l.type,u in p?(p[u].acc*=d[o],p[u].count+=1):p[u]={acc:d[o],count:1};var E;if(l.autorange){x[0][o]=1/0,x[1][o]=-1/0;var k=n.glplot.objects,A=n.fullSceneLayout.annotations||[],L=l._name.charAt(0);for(s=0;s<k.length;s++){var _=k[s],C=_.bounds,M=_._trace.data._pad||0;_.constructor.name==="ErrorBars"&&l._lowerLogErrorBound?x[0][o]=Math.min(x[0][o],l._lowerLogErrorBound):x[0][o]=Math.min(x[0][o],C[0][o]/d[o]-M),x[1][o]=Math.max(x[1][o],C[1][o]/d[o]+M)}for(s=0;s<A.length;s++){var g=A[s];if(g.visible){var P=l.r2l(g[L]);x[0][o]=Math.min(x[0][o],P),x[1][o]=Math.max(x[1][o],P)}}if("rangemode"in l&&l.rangemode==="tozero"&&(x[0][o]=Math.min(x[0][o],0),x[1][o]=Math.max(x[1][o],0)),x[0][o]>x[1][o])x[0][o]=-1,x[1][o]=1;else{var T=x[1][o]-x[0][o];x[0][o]-=T/32,x[1][o]+=T/32}if(E=[x[0][o],x[1][o]],E=kPt(E,l),x[0][o]=E[0],x[1][o]=E[1],l.isReversed()){var F=x[0][o];x[0][o]=x[1][o],x[1][o]=F}}else E=l.range,x[0][o]=l.r2l(E[0]),x[1][o]=l.r2l(E[1]);x[0][o]===x[1][o]&&(x[0][o]-=1,x[1][o]+=1),b[o]=x[1][o]-x[0][o],l.range=[x[0][o],x[1][o]],l.limitRange(),n.glplot.setBounds(o,{min:l.range[0]*d[o],max:l.range[1]*d[o]})}var q,V=c.aspectmode;if(V==="cube")q=[1,1,1];else if(V==="manual"){var H=c.aspectratio;q=[H.x,H.y,H.z]}else if(V==="auto"||V==="data"){var X=[1,1,1];for(o=0;o<3;++o){l=c[GE[o]],u=l.type;var G=p[u];X[o]=Math.pow(G.acc,1/G.count)/d[o]}V==="data"||Math.max.apply(null,X)/Math.min.apply(null,X)<=4?q=X:q=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");c.aspectratio.x=f.aspectratio.x=q[0],c.aspectratio.y=f.aspectratio.y=q[1],c.aspectratio.z=f.aspectratio.z=q[2],n.glplot.setAspectratio(c.aspectratio),n.viewInitial.aspectratio||(n.viewInitial.aspectratio={x:c.aspectratio.x,y:c.aspectratio.y,z:c.aspectratio.z}),n.viewInitial.aspectmode||(n.viewInitial.aspectmode=c.aspectmode);var N=c.domain||null,W=t._size||null;if(N&&W){var re=n.container.style;re.position="absolute",re.left=W.l+N.x[0]*W.w+"px",re.top=W.t+(1-N.y[1])*W.h+"px",re.width=W.w*(N.x[1]-N.x[0])+"px",re.height=W.h*(N.y[1]-N.y[0])+"px"}n.glplot.redraw()}};wv.destroy=function(){var e=this;e.glplot&&(e.camera.mouseListener.enabled=!1,e.container.removeEventListener("wheel",e.camera.wheelListener),e.camera=null,e.glplot.dispose(),e.container.parentNode.removeChild(e.container),e.glplot=null)};function PPt(e){return[[e.eye.x,e.eye.y,e.eye.z],[e.center.x,e.center.y,e.center.z],[e.up.x,e.up.y,e.up.z]]}function IPt(e){return{up:{x:e.up[0],y:e.up[1],z:e.up[2]},center:{x:e.center[0],y:e.center[1],z:e.center[2]},eye:{x:e.eye[0],y:e.eye[1],z:e.eye[2]},projection:{type:e._ortho===!0?"orthographic":"perspective"}}}wv.getCamera=function(){var e=this;return e.camera.view.recalcMatrix(e.camera.view.lastT()),IPt(e.camera)};wv.setViewport=function(e){var t=this,r=e.camera;t.camera.lookAt.apply(this,PPt(r)),t.glplot.setAspectratio(e.aspectratio);var n=r.projection.type==="orthographic",i=t.camera._ortho;n!==i&&(t.glplot.redraw(),t.glplot.clearRGBA(),t.glplot.dispose(),t.initializeGLPlot())};wv.isCameraChanged=function(e){var t=this,r=t.getCamera(),n=up.nestedProperty(e,t.id+".camera"),i=n.get();function a(u,c,f,h){var d=["up","center","eye"],v=["x","y","z"];return c[d[f]]&&u[d[f]][v[h]]===c[d[f]][v[h]]}var o=!1;if(i===void 0)o=!0;else{for(var s=0;s<3;s++)for(var l=0;l<3;l++)if(!a(r,i,s,l)){o=!0;break}(!i.projection||r.projection&&r.projection.type!==i.projection.type)&&(o=!0)}return o};wv.isAspectChanged=function(e){var t=this,r=t.glplot.getAspectratio(),n=up.nestedProperty(e,t.id+".aspectratio"),i=n.get();return i===void 0||i.x!==r.x||i.y!==r.y||i.z!==r.z};wv.saveLayout=function(e){var t=this,r=t.fullLayout,n,i,a,o,s,l,u=t.isCameraChanged(e),c=t.isAspectChanged(e),f=u||c;if(f){var h={};if(u&&(n=t.getCamera(),i=up.nestedProperty(e,t.id+".camera"),a=i.get(),h[t.id+".camera"]=a),c&&(o=t.glplot.getAspectratio(),s=up.nestedProperty(e,t.id+".aspectratio"),l=s.get(),h[t.id+".aspectratio"]=l),JD.call("_storeDirectGUIEdit",e,r._preGUI,h),u){i.set(n);var d=up.nestedProperty(r,t.id+".camera");d.set(n)}if(c){s.set(o);var v=up.nestedProperty(r,t.id+".aspectratio");v.set(o),t.glplot.redraw()}}return f};wv.updateFx=function(e,t){var r=this,n=r.camera;if(n)if(e==="orbit")n.mode="orbit",n.keyBindingMode="rotate";else if(e==="turntable"){n.up=[0,0,1],n.mode="turntable",n.keyBindingMode="rotate";var i=r.graphDiv,a=i._fullLayout,o=r.fullSceneLayout.camera,s=o.up.x,l=o.up.y,u=o.up.z;if(u/Math.sqrt(s*s+l*l+u*u)<.999){var c=r.id+".camera.up",f={x:0,y:0,z:1},h={};h[c]=f;var d=i.layout;JD.call("_storeDirectGUIEdit",d,a._preGUI,h),o.up=f,up.nestedProperty(d,c).set(f)}}else n.keyBindingMode=e;r.fullSceneLayout.hovermode=t};function RPt(e,t,r){for(var n=0,i=r-1;n<i;++n,--i)for(var a=0;a<t;++a)for(var o=0;o<4;++o){var s=4*(t*n+a)+o,l=4*(t*i+a)+o,u=e[s];e[s]=e[l],e[l]=u}}function DPt(e,t,r){for(var n=0;n<r;++n)for(var i=0;i<t;++i){var a=4*(t*n+i),o=e[a+3];if(o>0)for(var s=255/o,l=0;l<3;++l)e[a+l]=Math.min(s*e[a+l],255)}}wv.toImage=function(e){var t=this;e||(e="png"),t.staticMode&&t.container.appendChild(HE),t.glplot.redraw();var r=t.glplot.gl,n=r.drawingBufferWidth,i=r.drawingBufferHeight;r.bindFramebuffer(r.FRAMEBUFFER,null);var a=new Uint8Array(n*i*4);r.readPixels(0,0,n,i,r.RGBA,r.UNSIGNED_BYTE,a),RPt(a,n,i),DPt(a,n,i);var o=document.createElement("canvas");o.width=n,o.height=i;var s=o.getContext("2d",{willReadFrequently:!0}),l=s.createImageData(n,i);l.data.set(a),s.putImageData(l,0,0);var u;switch(e){case"jpeg":u=o.toDataURL("image/jpeg");break;case"webp":u=o.toDataURL("image/webp");break;default:u=o.toDataURL("image/png")}return t.staticMode&&t.container.removeChild(HE),u};wv.setConvert=function(){for(var e=this,t=0;t<3;t++){var r=e.fullSceneLayout[GE[t]];$D.setConvert(r,e.fullLayout),r.setScale=up.noop}};wv.make4thDimension=function(){var e=this,t=e.graphDiv,r=t._fullLayout;e._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},$D.setConvert(e._mockAxis,r)};gPe.exports=pPe});var _Pe=ye((Svr,yPe)=>{"use strict";yPe.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}});var mZ=ye((Mvr,xPe)=>{"use strict";var zPt=va(),cs=Cd(),gZ=no().extendFlat,FPt=Bu().overrideAll;xPe.exports=FPt({visible:cs.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:zPt.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:cs.color,categoryorder:cs.categoryorder,categoryarray:cs.categoryarray,title:{text:cs.title.text,font:cs.title.font},type:gZ({},cs.type,{values:["-","linear","log","date","category"]}),autotypenumbers:cs.autotypenumbers,autorange:cs.autorange,autorangeoptions:{minallowed:cs.autorangeoptions.minallowed,maxallowed:cs.autorangeoptions.maxallowed,clipmin:cs.autorangeoptions.clipmin,clipmax:cs.autorangeoptions.clipmax,include:cs.autorangeoptions.include,editType:"plot"},rangemode:cs.rangemode,minallowed:cs.minallowed,maxallowed:cs.maxallowed,range:gZ({},cs.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:cs.minor.tickmode,nticks:cs.nticks,tick0:cs.tick0,dtick:cs.dtick,tickvals:cs.tickvals,ticktext:cs.ticktext,ticks:cs.ticks,mirror:cs.mirror,ticklen:cs.ticklen,tickwidth:cs.tickwidth,tickcolor:cs.tickcolor,showticklabels:cs.showticklabels,labelalias:cs.labelalias,tickfont:cs.tickfont,tickangle:cs.tickangle,tickprefix:cs.tickprefix,showtickprefix:cs.showtickprefix,ticksuffix:cs.ticksuffix,showticksuffix:cs.showticksuffix,showexponent:cs.showexponent,exponentformat:cs.exponentformat,minexponent:cs.minexponent,separatethousands:cs.separatethousands,tickformat:cs.tickformat,tickformatstops:cs.tickformatstops,hoverformat:cs.hoverformat,showline:cs.showline,linecolor:cs.linecolor,linewidth:cs.linewidth,showgrid:cs.showgrid,gridcolor:gZ({},cs.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:cs.gridwidth,zeroline:cs.zeroline,zerolinecolor:cs.zerolinecolor,zerolinewidth:cs.zerolinewidth},"plot","from-root")});var bZ=ye((Evr,bPe)=>{"use strict";var yZ=mZ(),qPt=Ju().attributes,_Z=no().extendFlat,OPt=Mr().counterRegex;function xZ(e,t,r){return{x:{valType:"number",dflt:e,editType:"camera"},y:{valType:"number",dflt:t,editType:"camera"},z:{valType:"number",dflt:r,editType:"camera"},editType:"camera"}}bPe.exports={_arrayAttrRegexps:[OPt("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:_Z(xZ(0,0,1),{}),center:_Z(xZ(0,0,0),{}),eye:_Z(xZ(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:qPt({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:yZ,yaxis:yZ,zaxis:yZ,dragmode:{valType:"enumerated",values:["orbit","turntable","zoom","pan",!1],editType:"plot"},hovermode:{valType:"enumerated",values:["closest",!1],dflt:"closest",editType:"modebar"},uirevision:{valType:"any",editType:"none"},editType:"plot"}});var SPe=ye((kvr,APe)=>{"use strict";var BPt=id().mix,wPe=Mr(),NPt=Vs(),UPt=mZ(),VPt=yU(),HPt=JM(),TPe=["xaxis","yaxis","zaxis"],GPt=100*136/187;APe.exports=function(t,r,n){var i,a;function o(u,c){return wPe.coerce(i,a,UPt,u,c)}for(var s=0;s<TPe.length;s++){var l=TPe[s];i=t[l]||{},a=NPt.newContainer(r,l),a._id=l[0]+n.scene,a._name=l,VPt(i,a,o,n),HPt(i,a,o,{font:n.font,letter:l[0],data:n.data,showGrid:!0,noAutotickangles:!0,noTicklabelindex:!0,noTickson:!0,noTicklabelmode:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noTicklabelposition:!0,noTicklabeloverflow:!0,noInsiderange:!0,bgColor:n.bgColor,calendar:n.calendar},n.fullLayout),o("gridcolor",BPt(a.color,n.bgColor,GPt).toRgbString()),o("title.text",l[0]),a.setScale=wPe.noop,o("showspikes")&&(o("spikesides"),o("spikethickness"),o("spikecolor",a.color)),o("showaxeslabels"),o("showbackground")&&o("backgroundcolor")}}});var CPe=ye((Cvr,kPe)=>{"use strict";var jPt=Mr(),WPt=va(),ZPt=ba(),XPt=C_(),YPt=SPe(),MPe=bZ(),KPt=kd().getSubplotData,EPe="gl3d";kPe.exports=function(t,r,n){var i=r._basePlotModules.length>1;function a(o){if(!i){var s=jPt.validate(t[o],MPe[o]);if(s)return t[o]}}XPt(t,r,n,{type:EPe,attributes:MPe,handleDefaults:JPt,fullLayout:r,font:r.font,fullData:n,getDfltFromLayout:a,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,calendar:r.calendar})};function JPt(e,t,r,n){for(var i=r("bgcolor"),a=WPt.combine(i,n.paper_bgcolor),o=["up","center","eye"],s=0;s<o.length;s++)r("camera."+o[s]+".x"),r("camera."+o[s]+".y"),r("camera."+o[s]+".z");r("camera.projection.type");var l=!!r("aspectratio.x")&&!!r("aspectratio.y")&&!!r("aspectratio.z"),u=l?"manual":"auto",c=r("aspectmode",u);l||(e.aspectratio=t.aspectratio={x:1,y:1,z:1},c==="manual"&&(t.aspectmode="auto"),e.aspectmode=t.aspectmode);var f=KPt(n.fullData,EPe,n.id);YPt(e,t,{font:n.font,scene:n.id,data:f,bgColor:a,calendar:n.calendar,autotypenumbersDflt:n.autotypenumbersDflt,fullLayout:n.fullLayout}),ZPt.getComponentMethod("annotations3d","handleDefaults")(e,t,n);var h=n.getDfltFromLayout("dragmode");if(h!==!1&&!h)if(h="orbit",e.camera&&e.camera.up){var d=e.camera.up.x,v=e.camera.up.y,x=e.camera.up.z;x!==0&&(!d||!v||!x||x/Math.sqrt(d*d+v*v+x*x)>.999)&&(h="turntable")}else h="turntable";r("dragmode",h),r("hovermode",n.getDfltFromLayout("hovermode"))}});var Q_=ye(cp=>{"use strict";var $Pt=Bu().overrideAll,QPt=N1(),eIt=mPe(),tIt=kd().getSubplotData,rIt=Mr(),iIt=Zp(),O5="gl3d",wZ="scene";cp.name=O5;cp.attr=wZ;cp.idRoot=wZ;cp.idRegex=cp.attrRegex=rIt.counterRegex("scene");cp.attributes=_Pe();cp.layoutAttributes=bZ();cp.baseLayoutAttrOverrides=$Pt({hoverlabel:QPt.hoverlabel},"plot","nested");cp.supplyLayoutDefaults=CPe();cp.plot=function(t){for(var r=t._fullLayout,n=t._fullData,i=r._subplots[O5],a=0;a<i.length;a++){var o=i[a],s=tIt(n,O5,o),l=r[o],u=l.camera,c=l._scene;c||(c=new eIt({id:o,graphDiv:t,container:t.querySelector(".gl-container"),staticPlot:t._context.staticPlot,plotGlPixelRatio:t._context.plotGlPixelRatio,camera:u},r),l._scene=c),c.viewInitial||(c.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}}),c.plot(s,r,t.layout)}};cp.clean=function(e,t,r,n){for(var i=n._subplots[O5]||[],a=0;a<i.length;a++){var o=i[a];!t[o]&&n[o]._scene&&(n[o]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(".annotation-"+o).remove())}};cp.toSVG=function(e){for(var t=e._fullLayout,r=t._subplots[O5],n=t._size,i=0;i<r.length;i++){var a=t[r[i]],o=a.domain,s=a._scene,l=s.toImage("png"),u=t._glimages.append("svg:image");u.attr({xmlns:iIt.svg,"xlink:href":l,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()}};cp.cleanId=function(t){if(t.match(/^scene[0-9]*$/)){var r=t.substr(5);return r==="1"&&(r=""),wZ+r}};cp.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[O5],n=0;n<r.length;n++){var i=t[r[n]]._scene;i.updateFx(t.dragmode,t.hovermode)}}});var PPe=ye((Pvr,LPe)=>{"use strict";LPe.exports={plot:ULe(),attributes:dZ(),markerSymbols:ZD(),supplyDefaults:ZLe(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:YLe(),moduleType:"trace",name:"scatter3d",basePlotModule:Q_(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}});var RPe=ye((Ivr,IPe)=>{"use strict";IPe.exports=PPe()});var jE=ye((Rvr,FPe)=>{"use strict";var DPe=va(),nIt=Jl(),TZ=Oc().axisHoverFormat,aIt=Wo().hovertemplateAttrs,zPe=vl(),AZ=no().extendFlat,oIt=Bu().overrideAll;function SZ(e){return{valType:"boolean",dflt:!1}}function MZ(e){return{show:{valType:"boolean",dflt:!1},start:{valType:"number",dflt:null,editType:"plot"},end:{valType:"number",dflt:null,editType:"plot"},size:{valType:"number",dflt:null,min:0,editType:"plot"},project:{x:SZ("x"),y:SZ("y"),z:SZ("z")},color:{valType:"color",dflt:DPe.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:DPe.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var EZ=FPe.exports=oIt(AZ({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:aIt(),xhoverformat:TZ("x"),yhoverformat:TZ("y"),zhoverformat:TZ("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},nIt("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:MZ("x"),y:MZ("y"),z:MZ("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05},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"},hoverinfo:AZ({},zPe.hoverinfo),showlegend:AZ({},zPe.showlegend,{dflt:!1})}),"calc","nested");EZ.x.editType=EZ.y.editType=EZ.z.editType="calc+clearAxisTypes"});var CZ=ye((Dvr,BPe)=>{"use strict";var sIt=ba(),qPe=Mr(),lIt=Uh(),uIt=jE(),kZ=.1;function cIt(e,t){for(var r=[],n=32,i=0;i<n;i++){var a=i/(n-1),o=t+(1-t)*(1-Math.pow(Math.sin(e*a*Math.PI),2));r.push([a,Math.max(0,Math.min(1,o))])}return r}function fIt(e){var t=0;if(!Array.isArray(e)||e.length<2||!e[0]||!e[e.length-1]||+e[0][0]!=0||+e[e.length-1][0]!=1)return!1;for(var r=0;r<e.length;r++){var n=e[r];if(n.length!==2||+n[0]<t)return!1;t=+n[0]}return!0}function hIt(e,t,r,n){var i,a;function o(b,p){return qPe.coerce(e,t,uIt,b,p)}var s=o("x"),l=o("y"),u=o("z");if(!u||!u.length||s&&s.length<1||l&&l.length<1){t.visible=!1;return}t._xlength=Array.isArray(s)&&qPe.isArrayOrTypedArray(s[0])?u.length:u[0].length,t._ylength=u.length;var c=sIt.getComponentMethod("calendars","handleTraceDefaults");c(e,t,["x","y","z"],n),o("text"),o("hovertext"),o("hovertemplate"),o("xhoverformat"),o("yhoverformat"),o("zhoverformat"),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lightposition.x","lightposition.y","lightposition.z","hidesurface","connectgaps","opacity"].forEach(function(b){o(b)});var f=o("surfacecolor"),h=["x","y","z"];for(i=0;i<3;++i){var d="contours."+h[i],v=o(d+".show"),x=o(d+".highlight");if(v||x)for(a=0;a<3;++a)o(d+".project."+h[a]);v&&(o(d+".color"),o(d+".width"),o(d+".usecolormap")),x&&(o(d+".highlightcolor"),o(d+".highlightwidth")),o(d+".start"),o(d+".end"),o(d+".size")}lIt(e,t,n,o,{prefix:"",cLetter:"c"}),OPe(e,t,n,o),t._length=null}function OPe(e,t,r,n){var i=n("opacityscale");i==="max"?t.opacityscale=[[0,kZ],[1,1]]:i==="min"?t.opacityscale=[[0,1],[1,kZ]]:i==="extremes"?t.opacityscale=cIt(1,kZ):fIt(i)||(t.opacityscale=void 0)}BPe.exports={supplyDefaults:hIt,opacityscaleDefaults:OPe}});var VPe=ye((zvr,UPe)=>{"use strict";var NPe=zv();UPe.exports=function(t,r){r.surfacecolor?NPe(t,r,{vals:r.surfacecolor,containerStr:"",cLetter:"c"}):NPe(t,r,{vals:r.z,containerStr:"",cLetter:"c"})}});var XPe=ye((Fvr,ZPe)=>{"use strict";var dIt=Rd().gl_surface3d,B5=Rd().ndarray,vIt=Rd().ndarray_linear_interpolate.d2,pIt=e8(),gIt=t8(),WE=Mr().isArrayOrTypedArray,mIt=$y().parseColorScale,HPe=Jy(),yIt=Mu().extractOpts;function jPe(e,t,r){this.scene=e,this.uid=r,this.surface=t,this.data=null,this.showContour=[!1,!1,!1],this.contourStart=[null,null,null],this.contourEnd=[null,null,null],this.contourSize=[0,0,0],this.minValues=[1/0,1/0,1/0],this.maxValues=[-1/0,-1/0,-1/0],this.dataScaleX=1,this.dataScaleY=1,this.refineData=!0,this.objectOffset=[0,0,0]}var Jg=jPe.prototype;Jg.getXat=function(e,t,r,n){var i=WE(this.data.x)?WE(this.data.x[0])?this.data.x[t][e]:this.data.x[e]:e;return r===void 0?i:n.d2l(i,0,r)};Jg.getYat=function(e,t,r,n){var i=WE(this.data.y)?WE(this.data.y[0])?this.data.y[t][e]:this.data.y[t]:t;return r===void 0?i:n.d2l(i,0,r)};Jg.getZat=function(e,t,r,n){var i=this.data.z[t][e];return i===null&&this.data.connectgaps&&this.data._interpolatedZ&&(i=this.data._interpolatedZ[t][e]),r===void 0?i:n.d2l(i,0,r)};Jg.handlePick=function(e){if(e.object===this.surface){var t=(e.data.index[0]-1)/this.dataScaleX-1,r=(e.data.index[1]-1)/this.dataScaleY-1,n=Math.max(Math.min(Math.round(t),this.data.z[0].length-1),0),i=Math.max(Math.min(Math.round(r),this.data._ylength-1),0);e.index=[n,i],e.traceCoordinate=[this.getXat(n,i),this.getYat(n,i),this.getZat(n,i)],e.dataCoordinate=[this.getXat(n,i,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(n,i,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(n,i,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var a=0;a<3;a++){var o=e.dataCoordinate[a];o!=null&&(e.dataCoordinate[a]*=this.scene.dataScale[a])}var s=this.data.hovertext||this.data.text;return WE(s)&&s[i]&&s[i][n]!==void 0?e.textLabel=s[i][n]:s?e.textLabel=s:e.textLabel="",e.data.dataCoordinate=e.dataCoordinate.slice(),this.surface.highlight(e.data),this.scene.glplot.spikes.position=e.dataCoordinate,!0}};function _It(e){var t=e[0].rgb,r=e[e.length-1].rgb;return t[0]===r[0]&&t[1]===r[1]&&t[2]===r[2]&&t[3]===r[3]}var N5=[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 xIt(e,t){if(e<t)return 0;for(var r=0;Math.floor(e%t)===0;)e/=t,r++;return r}function LZ(e){for(var t=[],r=0;r<N5.length;r++){var n=N5[r];t.push(xIt(e,n))}return t}function bIt(e){for(var t=LZ(e),r=e,n=0;n<N5.length;n++)if(t[n]>0){r=N5[n];break}return r}function wIt(e,t){if(!(e<1||t<1)){for(var r=LZ(e),n=LZ(t),i=1,a=0;a<N5.length;a++)i*=Math.pow(N5[a],Math.max(r[a],n[a]));return i}}function TIt(e){if(e.length!==0){for(var t=1,r=0;r<e.length;r++)t=wIt(t,e[r]);return t}}Jg.calcXnums=function(e){var t,r=[];for(t=1;t<e;t++){var n=this.getXat(t-1,0),i=this.getXat(t,0);i!==n&&n!==void 0&&n!==null&&i!==void 0&&i!==null?r[t-1]=Math.abs(i-n):r[t-1]=0}var a=0;for(t=1;t<e;t++)a+=r[t-1];for(t=1;t<e;t++)r[t-1]===0?r[t-1]=1:r[t-1]=Math.round(a/r[t-1]);return r};Jg.calcYnums=function(e){var t,r=[];for(t=1;t<e;t++){var n=this.getYat(0,t-1),i=this.getYat(0,t);i!==n&&n!==void 0&&n!==null&&i!==void 0&&i!==null?r[t-1]=Math.abs(i-n):r[t-1]=0}var a=0;for(t=1;t<e;t++)a+=r[t-1];for(t=1;t<e;t++)r[t-1]===0?r[t-1]=1:r[t-1]=Math.round(a/r[t-1]);return r};var WPe=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],GPe=WPe[9],QD=WPe[13];Jg.estimateScale=function(e,t){for(var r=t===0?this.calcXnums(e):this.calcYnums(e),n=1+TIt(r);n<GPe;)n*=2;for(;n>QD;)n--,n/=bIt(n),n++,n<GPe&&(n=QD);var i=Math.round(n/e);return i>1?i:1};function AIt(e,t,r){var n=r[8]+r[2]*t[0]+r[5]*t[1];return e[0]=(r[6]+r[0]*t[0]+r[3]*t[1])/n,e[1]=(r[7]+r[1]*t[0]+r[4]*t[1])/n,e}function SIt(e,t,r){return MIt(e,t,AIt,r),e}function MIt(e,t,r,n){for(var i=[0,0],a=e.shape[0],o=e.shape[1],s=0;s<a;s++)for(var l=0;l<o;l++)r(i,[s,l],n),e.set(s,l,vIt(t,i[0],i[1]));return e}Jg.refineCoords=function(e){for(var t=this.dataScaleX,r=this.dataScaleY,n=e[0].shape[0],i=e[0].shape[1],a=Math.floor(e[0].shape[0]*t+1)|0,o=Math.floor(e[0].shape[1]*r+1)|0,s=1+n+1,l=1+i+1,u=B5(new Float32Array(s*l),[s,l]),c=[1/t,0,0,0,1/r,0,0,0,1],f=0;f<e.length;++f){this.surface.padField(u,e[f]);var h=B5(new Float32Array(a*o),[a,o]);SIt(h,u,c),e[f]=h}};function EIt(e,t){for(var r=!1,n=0;n<e.length;n++)if(t===e[n]){r=!0;break}r===!1&&e.push(t)}Jg.setContourLevels=function(){var e=[[],[],[]],t=[!1,!1,!1],r=!1,n,i,a;for(n=0;n<3;++n)if(this.showContour[n]&&(r=!0,this.contourSize[n]>0&&this.contourStart[n]!==null&&this.contourEnd[n]!==null&&this.contourEnd[n]>this.contourStart[n]))for(t[n]=!0,i=this.contourStart[n];i<this.contourEnd[n];i+=this.contourSize[n])a=i*this.scene.dataScale[n],EIt(e[n],a);if(r){var o=[[],[],[]];for(n=0;n<3;++n)this.showContour[n]&&(o[n]=t[n]?e[n]:this.scene.contourLevels[n]);this.surface.update({levels:o})}};Jg.update=function(e){var t=this.scene,r=t.fullSceneLayout,n=this.surface,i=mIt(e),a=t.dataScale,o=e.z[0].length,s=e._ylength,l=t.contourLevels;this.data=e;var u,c,f,h,d=[];for(u=0;u<3;u++)for(d[u]=[],c=0;c<o;c++)d[u][c]=[];for(c=0;c<o;c++)for(f=0;f<s;f++)d[0][c][f]=this.getXat(c,f,e.xcalendar,r.xaxis),d[1][c][f]=this.getYat(c,f,e.ycalendar,r.yaxis),d[2][c][f]=this.getZat(c,f,e.zcalendar,r.zaxis);if(e.connectgaps)for(e._emptypoints=gIt(d[2]),pIt(d[2],e._emptypoints),e._interpolatedZ=[],c=0;c<o;c++)for(e._interpolatedZ[c]=[],f=0;f<s;f++)e._interpolatedZ[c][f]=d[2][c][f];for(u=0;u<3;u++)for(c=0;c<o;c++)for(f=0;f<s;f++)h=d[u][c][f],h==null?d[u][c][f]=NaN:h=d[u][c][f]*=a[u];for(u=0;u<3;u++)for(c=0;c<o;c++)for(f=0;f<s;f++)h=d[u][c][f],h!=null&&(this.minValues[u]>h&&(this.minValues[u]=h),this.maxValues[u]<h&&(this.maxValues[u]=h));for(u=0;u<3;u++)this.objectOffset[u]=.5*(this.minValues[u]+this.maxValues[u]);for(u=0;u<3;u++)for(c=0;c<o;c++)for(f=0;f<s;f++)h=d[u][c][f],h!=null&&(d[u][c][f]-=this.objectOffset[u]);var v=[B5(new Float32Array(o*s),[o,s]),B5(new Float32Array(o*s),[o,s]),B5(new Float32Array(o*s),[o,s])];for(u=0;u<3;u++)for(c=0;c<o;c++)for(f=0;f<s;f++)v[u].set(c,f,d[u][c][f]);d=[];var x={colormap:i,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!e.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:e.opacityscale,opacity:e.opacity},b=yIt(e);if(x.intensityBounds=[b.min,b.max],e.surfacecolor){var p=B5(new Float32Array(o*s),[o,s]);for(c=0;c<o;c++)for(f=0;f<s;f++)p.set(c,f,e.surfacecolor[f][c]);v.push(p)}else x.intensityBounds[0]*=a[2],x.intensityBounds[1]*=a[2];(QD<v[0].shape[0]||QD<v[0].shape[1])&&(this.refineData=!1),this.refineData===!0&&(this.dataScaleX=this.estimateScale(v[0].shape[0],0),this.dataScaleY=this.estimateScale(v[0].shape[1],1),(this.dataScaleX!==1||this.dataScaleY!==1)&&this.refineCoords(v)),e.surfacecolor&&(x.intensity=v.pop());var E=[!0,!0,!0],k=["x","y","z"];for(u=0;u<3;++u){var A=e.contours[k[u]];E[u]=A.highlight,x.showContour[u]=A.show||A.highlight,x.showContour[u]&&(x.contourProject[u]=[A.project.x,A.project.y,A.project.z],A.show?(this.showContour[u]=!0,x.levels[u]=l[u],n.highlightColor[u]=x.contourColor[u]=HPe(A.color),A.usecolormap?n.highlightTint[u]=x.contourTint[u]=0:n.highlightTint[u]=x.contourTint[u]=1,x.contourWidth[u]=A.width,this.contourStart[u]=A.start,this.contourEnd[u]=A.end,this.contourSize[u]=A.size):(this.showContour[u]=!1,this.contourStart[u]=null,this.contourEnd[u]=null,this.contourSize[u]=0),A.highlight&&(x.dynamicColor[u]=HPe(A.highlightcolor),x.dynamicWidth[u]=A.highlightwidth))}_It(i)&&(x.vertexColor=!0),x.objectOffset=this.objectOffset,x.coords=v,n.update(x),n.visible=e.visible,n.enableDynamic=E,n.enableHighlight=E,n.snapToData=!0,"lighting"in e&&(n.ambientLight=e.lighting.ambient,n.diffuseLight=e.lighting.diffuse,n.specularLight=e.lighting.specular,n.roughness=e.lighting.roughness,n.fresnel=e.lighting.fresnel),"lightposition"in e&&(n.lightPosition=[e.lightposition.x,e.lightposition.y,e.lightposition.z])};Jg.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()};function kIt(e,t){var r=e.glplot.gl,n=dIt({gl:r}),i=new jPe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}ZPe.exports=kIt});var KPe=ye((qvr,YPe)=>{"use strict";YPe.exports={attributes:jE(),supplyDefaults:CZ().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:VPe(),plot:XPe(),moduleType:"trace",name:"surface",basePlotModule:Q_(),categories:["gl3d","2dMap","showLegend"],meta:{}}});var $Pe=ye((Ovr,JPe)=>{"use strict";JPe.exports=KPe()});var U5=ye((Bvr,eIe)=>{"use strict";var CIt=Jl(),PZ=Oc().axisHoverFormat,LIt=Wo().hovertemplateAttrs,ex=jE(),QPe=vl(),tx=no().extendFlat;eIe.exports=tx({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:LIt({editType:"calc"}),xhoverformat:PZ("x"),yhoverformat:PZ("y"),zhoverformat:PZ("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},CIt("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:ex.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:tx({},ex.contours.x.show,{}),color:ex.contours.x.color,width:ex.contours.x.width,editType:"calc"},lightposition:{x:tx({},ex.lightposition.x,{dflt:1e5}),y:tx({},ex.lightposition.y,{dflt:1e5}),z:tx({},ex.lightposition.z,{dflt:0}),editType:"calc"},lighting:tx({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"},ex.lighting),hoverinfo:tx({},QPe.hoverinfo,{editType:"calc"}),showlegend:tx({},QPe.showlegend,{dflt:!1})})});var tz=ye((Nvr,rIe)=>{"use strict";var PIt=Jl(),ez=Oc().axisHoverFormat,IIt=Wo().hovertemplateAttrs,ZE=U5(),tIe=vl(),IZ=no().extendFlat,RIt=Bu().overrideAll;function RZ(e){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function DZ(e){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var V5=rIe.exports=RIt(IZ({x:{valType:"data_array"},y:{valType:"data_array"},z:{valType:"data_array"},value:{valType:"data_array"},isomin:{valType:"number"},isomax:{valType:"number"},surface:{show:{valType:"boolean",dflt:!0},count:{valType:"integer",dflt:2,min:1},fill:{valType:"number",min:0,max:1,dflt:1},pattern:{valType:"flaglist",flags:["A","B","C","D","E"],extras:["all","odd","even"],dflt:"all"}},spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:.15}},slices:{x:RZ("x"),y:RZ("y"),z:RZ("z")},caps:{x:DZ("x"),y:DZ("y"),z:DZ("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:IIt(),xhoverformat:ez("x"),yhoverformat:ez("y"),zhoverformat:ez("z"),valuehoverformat:ez("value",1),showlegend:IZ({},tIe.showlegend,{dflt:!1})},PIt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:ZE.opacity,lightposition:ZE.lightposition,lighting:ZE.lighting,flatshading:ZE.flatshading,contour:ZE.contour,hoverinfo:IZ({},tIe.hoverinfo)}),"calc","nested");V5.flatshading.dflt=!0;V5.lighting.facenormalsepsilon.dflt=0;V5.x.editType=V5.y.editType=V5.z.editType=V5.value.editType="calc+clearAxisTypes"});var zZ=ye((Uvr,nIe)=>{"use strict";var DIt=Mr(),zIt=ba(),FIt=tz(),qIt=Uh();function OIt(e,t,r,n){function i(a,o){return DIt.coerce(e,t,FIt,a,o)}iIe(e,t,r,n,i)}function iIe(e,t,r,n,i){var a=i("isomin"),o=i("isomax");o!=null&&a!==void 0&&a!==null&&a>o&&(t.isomin=null,t.isomax=null);var s=i("x"),l=i("y"),u=i("z"),c=i("value");if(!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length){t.visible=!1;return}var f=zIt.getComponentMethod("calendars","handleTraceDefaults");f(e,t,["x","y","z"],n),i("valuehoverformat"),["x","y","z"].forEach(function(x){i(x+"hoverformat");var b="caps."+x,p=i(b+".show");p&&i(b+".fill");var E="slices."+x,k=i(E+".show");k&&(i(E+".fill"),i(E+".locations"))});var h=i("spaceframe.show");h&&i("spaceframe.fill");var d=i("surface.show");d&&(i("surface.count"),i("surface.fill"),i("surface.pattern"));var v=i("contour.show");v&&(i("contour.color"),i("contour.width")),["text","hovertext","hovertemplate","lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","opacity"].forEach(function(x){i(x)}),qIt(e,t,n,i,{prefix:"",cLetter:"c"}),t._length=null}nIe.exports={supplyDefaults:OIt,supplyIsoDefaults:iIe}});var rz=ye((Vvr,oIe)=>{"use strict";var qZ=Mr(),BIt=zv();function NIt(e,t){t._len=Math.min(t.u.length,t.v.length,t.w.length,t.x.length,t.y.length,t.z.length),t._u=Gm(t.u,t._len),t._v=Gm(t.v,t._len),t._w=Gm(t.w,t._len),t._x=Gm(t.x,t._len),t._y=Gm(t.y,t._len),t._z=Gm(t.z,t._len);var r=aIe(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;var n=0,i,a,o;t.starts&&(i=Gm(t.starts.x||[]),a=Gm(t.starts.y||[]),o=Gm(t.starts.z||[]),n=Math.min(i.length,a.length,o.length)),t._startsX=i||[],t._startsY=a||[],t._startsZ=o||[];var s=0,l=1/0,u;for(u=0;u<t._len;u++){var c=t._u[u],f=t._v[u],h=t._w[u],d=Math.sqrt(c*c+f*f+h*h);s=Math.max(s,d),l=Math.min(l,d)}for(BIt(e,t,{vals:[l,s],containerStr:"",cLetter:"c"}),u=0;u<n;u++){var v=i[u];r.xMax=Math.max(r.xMax,v),r.xMin=Math.min(r.xMin,v);var x=a[u];r.yMax=Math.max(r.yMax,x),r.yMin=Math.min(r.yMin,x);var b=o[u];r.zMax=Math.max(r.zMax,b),r.zMin=Math.min(r.zMin,b)}t._slen=n,t._normMax=s,t._xbnds=[r.xMin,r.xMax],t._ybnds=[r.yMin,r.yMax],t._zbnds=[r.zMin,r.zMax]}function aIe(e){var t=e._x,r=e._y,n=e._z,i=e._len,a,o,s,l=-1/0,u=1/0,c=-1/0,f=1/0,h=-1/0,d=1/0,v="",x,b,p,E,k,A,L,_,C;for(i&&(E=t[0],A=r[0],_=n[0]),i>1&&(k=t[i-1],L=r[i-1],C=n[i-1]),a=0;a<i;a++)l=Math.max(l,t[a]),u=Math.min(u,t[a]),c=Math.max(c,r[a]),f=Math.min(f,r[a]),h=Math.max(h,n[a]),d=Math.min(d,n[a]),!x&&t[a]!==E&&(x=!0,v+="x"),!b&&r[a]!==A&&(b=!0,v+="y"),!p&&n[a]!==_&&(p=!0,v+="z");x||(v+="x"),b||(v+="y"),p||(v+="z");var M=FZ(e._x),g=FZ(e._y),P=FZ(e._z);v=v.replace("x",(E>k?"-":"+")+"x"),v=v.replace("y",(A>L?"-":"+")+"y"),v=v.replace("z",(_>C?"-":"+")+"z");var T=function(){i=0,M=[],g=[],P=[]};(!i||i<M.length*g.length*P.length)&&T();var F=function(ze){return ze==="x"?t:ze==="y"?r:n},q=function(ze){return ze==="x"?M:ze==="y"?g:P},V=function(ze){return ze[i-1]<ze[0]?-1:1},H=F(v[1]),X=F(v[3]),G=F(v[5]),N=q(v[1]).length,W=q(v[3]).length,re=q(v[5]).length,ae=!1,_e=function(ze,Ce,me){return N*(W*ze+Ce)+me},Me=V(F(v[1])),ke=V(F(v[3])),ge=V(F(v[5]));for(a=0;a<re-1;a++){for(o=0;o<W-1;o++){for(s=0;s<N-1;s++){var ie=_e(a,o,s),Te=_e(a,o,s+1),Ee=_e(a,o+1,s),Ae=_e(a+1,o,s);if((!(H[ie]*Me<H[Te]*Me)||!(X[ie]*ke<X[Ee]*ke)||!(G[ie]*ge<G[Ae]*ge))&&(ae=!0),ae)break}if(ae)break}if(ae)break}return ae&&(qZ.warn("Encountered arbitrary coordinates! Unable to input data grid."),T()),{xMin:u,yMin:f,zMin:d,xMax:l,yMax:c,zMax:h,Xs:M,Ys:g,Zs:P,len:i,fill:v}}function FZ(e){return qZ.distinctVals(e).vals}function Gm(e,t){if(t===void 0&&(t=e.length),qZ.isTypedArray(e))return e.subarray(0,t);for(var r=[],n=0;n<t;n++)r[n]=+e[n];return r}oIe.exports={calc:NIt,filter:Gm,processGrid:aIe}});var OZ=ye((Hvr,sIe)=>{"use strict";var UIt=zv(),VIt=rz().processGrid,iz=rz().filter;sIe.exports=function(t,r){r._len=Math.min(r.x.length,r.y.length,r.z.length,r.value.length),r._x=iz(r.x,r._len),r._y=iz(r.y,r._len),r._z=iz(r.z,r._len),r._value=iz(r.value,r._len);var n=VIt(r);r._gridFill=n.fill,r._Xs=n.Xs,r._Ys=n.Ys,r._Zs=n.Zs,r._len=n.len;for(var i=1/0,a=-1/0,o=0;o<r._len;o++){var s=r._value[o];i=Math.min(i,s),a=Math.max(a,s)}r._minValues=i,r._maxValues=a,r._vMin=r.isomin===void 0||r.isomin===null?i:r.isomin,r._vMax=r.isomax===void 0||r.isomax===null?a:r.isomax,UIt(t,r,{vals:[r._vMin,r._vMax],containerStr:"",cLetter:"c"})}});var H5=ye((Gvr,lIe)=>{"use strict";lIe.exports=function(t,r,n,i){i=i||t.length;for(var a=new Array(i),o=0;o<i;o++)a[o]=[t[o],r[o],n[o]];return a}});var nz=ye((jvr,hIe)=>{"use strict";var HIt=Rd().gl_mesh3d,GIt=$y().parseColorScale,jIt=Mr().isArrayOrTypedArray,WIt=Jy(),ZIt=Mu().extractOpts,uIe=H5(),XE=function(e,t){for(var r=t.length-1;r>0;r--){var n=Math.min(t[r],t[r-1]),i=Math.max(t[r],t[r-1]);if(i>n&&n<e&&e<=i)return{id:r,distRatio:(i-e)/(i-n)}}return{id:0,distRatio:0}};function cIe(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var BZ=cIe.prototype;BZ.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=XE(r,this.data._Xs).id,l=XE(n,this.data._Ys).id,u=XE(i,this.data._Zs).id,c=e.index=u+o*l+o*a*s;e.traceCoordinate=[this.data._meshX[c],this.data._meshY[c],this.data._meshZ[c],this.data._value[c]];var f=this.data.hovertext||this.data.text;return jIt(f)&&f[c]!==void 0?e.textLabel=f[c]:f&&(e.textLabel=f),!0}};BZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=fIe(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=uIe(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=uIe(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:WIt(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=ZIt(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=GIt(e),this.mesh.update(o)};BZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var XIt=["xyz","xzy","yxz","yzx","zxy","zyx"];function fIe(e){e._meshI=[],e._meshJ=[],e._meshK=[];var t=e.surface.show,r=e.spaceframe.show,n=e.surface.fill,i=e.spaceframe.fill,a=!1,o=!1,s=0,l,u,c=e._Xs,f=e._Ys,h=e._Zs,d=c.length,v=f.length,x=h.length,b=XIt.indexOf(e._gridFill.replace(/-/g,"").replace(/\+/g,"")),p=function(bt,Lt,St){switch(b){case 5:return St+x*Lt+x*v*bt;case 4:return St+x*bt+x*d*Lt;case 3:return Lt+v*St+v*x*bt;case 2:return Lt+v*bt+v*d*St;case 1:return bt+d*St+d*x*Lt;default:return bt+d*Lt+d*v*St}},E=e._minValues,k=e._maxValues,A=e._vMin,L=e._vMax,_,C,M,g;function P(bt,Lt,St){for(var Et=g.length,dt=u;dt<Et;dt++)if(bt===_[dt]&&Lt===C[dt]&&St===M[dt])return dt;return-1}function T(){u=l}function F(){_=[],C=[],M=[],g=[],l=0,T()}function q(bt,Lt,St,Et){return _.push(bt),C.push(Lt),M.push(St),g.push(Et),l++,l-1}function V(bt,Lt,St){return e._meshI.push(bt),e._meshJ.push(Lt),e._meshK.push(St),s++,s-1}function H(bt,Lt,St){for(var Et=[],dt=0;dt<bt.length;dt++)Et[dt]=(bt[dt]+Lt[dt]+St[dt])/3;return Et}function X(bt,Lt,St){for(var Et=[],dt=0;dt<bt.length;dt++)Et[dt]=bt[dt]*(1-St)+St*Lt[dt];return Et}var G;function N(bt){G=bt}function W(bt,Lt){var St=bt[0],Et=bt[1],dt=bt[2],Ht=H(St,Et,dt),$t=Math.sqrt(1-G),fr=X(Ht,St,$t),_r=X(Ht,Et,$t),Br=X(Ht,dt,$t),Or=Lt[0],Nr=Lt[1],ut=Lt[2];return{xyzv:[[St,Et,_r],[_r,fr,St],[Et,dt,Br],[Br,_r,Et],[dt,St,fr],[fr,Br,dt]],abc:[[Or,Nr,-1],[-1,-1,Or],[Nr,ut,-1],[-1,-1,Nr],[ut,Or,-1],[-1,-1,ut]]}}function re(bt,Lt){return bt==="all"||bt===null?!0:bt.indexOf(Lt)>-1}function ae(bt,Lt){return bt===null?Lt:bt}function _e(bt,Lt,St){T();var Et=[Lt],dt=[St];if(G>=1)Et=[Lt],dt=[St];else if(G>0){var Ht=W(Lt,St);Et=Ht.xyzv,dt=Ht.abc}for(var $t=0;$t<Et.length;$t++){Lt=Et[$t],St=dt[$t];for(var fr=[],_r=0;_r<3;_r++){var Br=Lt[_r][0],Or=Lt[_r][1],Nr=Lt[_r][2],ut=Lt[_r][3],Ne=St[_r]>-1?St[_r]:P(Br,Or,Nr);Ne>-1?fr[_r]=Ne:fr[_r]=q(Br,Or,Nr,ae(bt,ut))}V(fr[0],fr[1],fr[2])}}function Me(bt,Lt,St){var Et=function(dt,Ht,$t){_e(bt,[Lt[dt],Lt[Ht],Lt[$t]],[St[dt],St[Ht],St[$t]])};Et(0,1,2),Et(2,3,0)}function ke(bt,Lt,St){var Et=function(dt,Ht,$t){_e(bt,[Lt[dt],Lt[Ht],Lt[$t]],[St[dt],St[Ht],St[$t]])};Et(0,1,2),Et(3,0,1),Et(2,3,0),Et(1,2,3)}function ge(bt,Lt,St,Et){var dt=bt[3];dt<St&&(dt=St),dt>Et&&(dt=Et);for(var Ht=(bt[3]-dt)/(bt[3]-Lt[3]+1e-9),$t=[],fr=0;fr<4;fr++)$t[fr]=(1-Ht)*bt[fr]+Ht*Lt[fr];return $t}function ie(bt,Lt,St){return bt>=Lt&&bt<=St}function Te(bt){var Lt=.001*(L-A);return bt>=A-Lt&&bt<=L+Lt}function Ee(bt){for(var Lt=[],St=0;St<4;St++){var Et=bt[St];Lt.push([e._x[Et],e._y[Et],e._z[Et],e._value[Et]])}return Lt}var Ae=3;function ze(bt,Lt,St,Et,dt,Ht){Ht||(Ht=1),St=[-1,-1,-1];var $t=!1,fr=[ie(Lt[0][3],Et,dt),ie(Lt[1][3],Et,dt),ie(Lt[2][3],Et,dt)];if(!fr[0]&&!fr[1]&&!fr[2])return!1;var _r=function(Or,Nr,ut){return Te(Nr[0][3])&&Te(Nr[1][3])&&Te(Nr[2][3])?(_e(Or,Nr,ut),!0):Ht<Ae?ze(Or,Nr,ut,A,L,++Ht):!1};if(fr[0]&&fr[1]&&fr[2])return _r(bt,Lt,St)||$t;var Br=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(Or){if(fr[Or[0]]&&fr[Or[1]]&&!fr[Or[2]]){var Nr=Lt[Or[0]],ut=Lt[Or[1]],Ne=Lt[Or[2]],Ye=ge(Ne,Nr,Et,dt),Ve=ge(Ne,ut,Et,dt);$t=_r(bt,[Ve,Ye,Nr],[-1,-1,St[Or[0]]])||$t,$t=_r(bt,[Nr,ut,Ve],[St[Or[0]],St[Or[1]],-1])||$t,Br=!0}}),Br||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(Or){if(fr[Or[0]]&&!fr[Or[1]]&&!fr[Or[2]]){var Nr=Lt[Or[0]],ut=Lt[Or[1]],Ne=Lt[Or[2]],Ye=ge(ut,Nr,Et,dt),Ve=ge(Ne,Nr,Et,dt);$t=_r(bt,[Ve,Ye,Nr],[-1,-1,St[Or[0]]])||$t,Br=!0}}),$t}function Ce(bt,Lt,St,Et){var dt=!1,Ht=Ee(Lt),$t=[ie(Ht[0][3],St,Et),ie(Ht[1][3],St,Et),ie(Ht[2][3],St,Et),ie(Ht[3][3],St,Et)];if(!$t[0]&&!$t[1]&&!$t[2]&&!$t[3])return dt;if($t[0]&&$t[1]&&$t[2]&&$t[3])return o&&(dt=ke(bt,Ht,Lt)||dt),dt;var fr=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(_r){if($t[_r[0]]&&$t[_r[1]]&&$t[_r[2]]&&!$t[_r[3]]){var Br=Ht[_r[0]],Or=Ht[_r[1]],Nr=Ht[_r[2]],ut=Ht[_r[3]];if(o)dt=_e(bt,[Br,Or,Nr],[Lt[_r[0]],Lt[_r[1]],Lt[_r[2]]])||dt;else{var Ne=ge(ut,Br,St,Et),Ye=ge(ut,Or,St,Et),Ve=ge(ut,Nr,St,Et);dt=_e(null,[Ne,Ye,Ve],[-1,-1,-1])||dt}fr=!0}}),fr||([[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(_r){if($t[_r[0]]&&$t[_r[1]]&&!$t[_r[2]]&&!$t[_r[3]]){var Br=Ht[_r[0]],Or=Ht[_r[1]],Nr=Ht[_r[2]],ut=Ht[_r[3]],Ne=ge(Nr,Br,St,Et),Ye=ge(Nr,Or,St,Et),Ve=ge(ut,Or,St,Et),Xe=ge(ut,Br,St,Et);o?(dt=_e(bt,[Br,Xe,Ne],[Lt[_r[0]],-1,-1])||dt,dt=_e(bt,[Or,Ye,Ve],[Lt[_r[1]],-1,-1])||dt):dt=Me(null,[Ne,Ye,Ve,Xe],[-1,-1,-1,-1])||dt,fr=!0}}),fr)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(_r){if($t[_r[0]]&&!$t[_r[1]]&&!$t[_r[2]]&&!$t[_r[3]]){var Br=Ht[_r[0]],Or=Ht[_r[1]],Nr=Ht[_r[2]],ut=Ht[_r[3]],Ne=ge(Or,Br,St,Et),Ye=ge(Nr,Br,St,Et),Ve=ge(ut,Br,St,Et);o?(dt=_e(bt,[Br,Ne,Ye],[Lt[_r[0]],-1,-1])||dt,dt=_e(bt,[Br,Ye,Ve],[Lt[_r[0]],-1,-1])||dt,dt=_e(bt,[Br,Ve,Ne],[Lt[_r[0]],-1,-1])||dt):dt=_e(null,[Ne,Ye,Ve],[-1,-1,-1])||dt,fr=!0}}),dt}function me(bt,Lt,St,Et,dt,Ht,$t,fr,_r,Br,Or){var Nr=!1;return a&&(re(bt,"A")&&(Nr=Ce(null,[Lt,St,Et,Ht],Br,Or)||Nr),re(bt,"B")&&(Nr=Ce(null,[St,Et,dt,_r],Br,Or)||Nr),re(bt,"C")&&(Nr=Ce(null,[St,Ht,$t,_r],Br,Or)||Nr),re(bt,"D")&&(Nr=Ce(null,[Et,Ht,fr,_r],Br,Or)||Nr),re(bt,"E")&&(Nr=Ce(null,[St,Et,Ht,_r],Br,Or)||Nr)),o&&(Nr=Ce(bt,[St,Et,Ht,_r],Br,Or)||Nr),Nr}function Re(bt,Lt,St,Et,dt,Ht,$t,fr){return[fr[0]===!0?!0:ze(bt,Ee([Lt,St,Et]),[Lt,St,Et],Ht,$t),fr[1]===!0?!0:ze(bt,Ee([Et,dt,Lt]),[Et,dt,Lt],Ht,$t)]}function ce(bt,Lt,St,Et,dt,Ht,$t,fr,_r){return fr?Re(bt,Lt,St,dt,Et,Ht,$t,_r):Re(bt,St,dt,Et,Lt,Ht,$t,_r)}function Ge(bt,Lt,St,Et,dt,Ht,$t){var fr=!1,_r,Br,Or,Nr,ut=function(){fr=ze(bt,[_r,Br,Or],[-1,-1,-1],dt,Ht)||fr,fr=ze(bt,[Or,Nr,_r],[-1,-1,-1],dt,Ht)||fr},Ne=$t[0],Ye=$t[1],Ve=$t[2];return Ne&&(_r=X(Ee([p(Lt,St-0,Et-0)])[0],Ee([p(Lt-1,St-0,Et-0)])[0],Ne),Br=X(Ee([p(Lt,St-0,Et-1)])[0],Ee([p(Lt-1,St-0,Et-1)])[0],Ne),Or=X(Ee([p(Lt,St-1,Et-1)])[0],Ee([p(Lt-1,St-1,Et-1)])[0],Ne),Nr=X(Ee([p(Lt,St-1,Et-0)])[0],Ee([p(Lt-1,St-1,Et-0)])[0],Ne),ut()),Ye&&(_r=X(Ee([p(Lt-0,St,Et-0)])[0],Ee([p(Lt-0,St-1,Et-0)])[0],Ye),Br=X(Ee([p(Lt-0,St,Et-1)])[0],Ee([p(Lt-0,St-1,Et-1)])[0],Ye),Or=X(Ee([p(Lt-1,St,Et-1)])[0],Ee([p(Lt-1,St-1,Et-1)])[0],Ye),Nr=X(Ee([p(Lt-1,St,Et-0)])[0],Ee([p(Lt-1,St-1,Et-0)])[0],Ye),ut()),Ve&&(_r=X(Ee([p(Lt-0,St-0,Et)])[0],Ee([p(Lt-0,St-0,Et-1)])[0],Ve),Br=X(Ee([p(Lt-0,St-1,Et)])[0],Ee([p(Lt-0,St-1,Et-1)])[0],Ve),Or=X(Ee([p(Lt-1,St-1,Et)])[0],Ee([p(Lt-1,St-1,Et-1)])[0],Ve),Nr=X(Ee([p(Lt-1,St-0,Et)])[0],Ee([p(Lt-1,St-0,Et-1)])[0],Ve),ut()),fr}function nt(bt,Lt,St,Et,dt,Ht,$t,fr,_r,Br,Or,Nr){var ut=bt;return Nr?(a&&bt==="even"&&(ut=null),me(ut,Lt,St,Et,dt,Ht,$t,fr,_r,Br,Or)):(a&&bt==="odd"&&(ut=null),me(ut,_r,fr,$t,Ht,dt,Et,St,Lt,Br,Or))}function ct(bt,Lt,St,Et,dt){for(var Ht=[],$t=0,fr=0;fr<Lt.length;fr++)for(var _r=Lt[fr],Br=1;Br<x;Br++)for(var Or=1;Or<v;Or++)Ht.push(ce(bt,p(_r,Or-1,Br-1),p(_r,Or-1,Br),p(_r,Or,Br-1),p(_r,Or,Br),St,Et,(_r+Or+Br)%2,dt&&dt[$t]?dt[$t]:[])),$t++;return Ht}function qt(bt,Lt,St,Et,dt){for(var Ht=[],$t=0,fr=0;fr<Lt.length;fr++)for(var _r=Lt[fr],Br=1;Br<d;Br++)for(var Or=1;Or<x;Or++)Ht.push(ce(bt,p(Br-1,_r,Or-1),p(Br,_r,Or-1),p(Br-1,_r,Or),p(Br,_r,Or),St,Et,(Br+_r+Or)%2,dt&&dt[$t]?dt[$t]:[])),$t++;return Ht}function rt(bt,Lt,St,Et,dt){for(var Ht=[],$t=0,fr=0;fr<Lt.length;fr++)for(var _r=Lt[fr],Br=1;Br<v;Br++)for(var Or=1;Or<d;Or++)Ht.push(ce(bt,p(Or-1,Br-1,_r),p(Or-1,Br,_r),p(Or,Br-1,_r),p(Or,Br,_r),St,Et,(Or+Br+_r)%2,dt&&dt[$t]?dt[$t]:[])),$t++;return Ht}function ot(bt,Lt,St){for(var Et=1;Et<x;Et++)for(var dt=1;dt<v;dt++)for(var Ht=1;Ht<d;Ht++)nt(bt,p(Ht-1,dt-1,Et-1),p(Ht-1,dt-1,Et),p(Ht-1,dt,Et-1),p(Ht-1,dt,Et),p(Ht,dt-1,Et-1),p(Ht,dt-1,Et),p(Ht,dt,Et-1),p(Ht,dt,Et),Lt,St,(Ht+dt+Et)%2)}function Rt(bt,Lt,St){o=!0,ot(bt,Lt,St),o=!1}function kt(bt,Lt,St){a=!0,ot(bt,Lt,St),a=!1}function Ct(bt,Lt,St,Et,dt,Ht){for(var $t=[],fr=0,_r=0;_r<Lt.length;_r++)for(var Br=Lt[_r],Or=1;Or<x;Or++)for(var Nr=1;Nr<v;Nr++)$t.push(Ge(bt,Br,Nr,Or,St,Et,dt[_r],Ht&&Ht[fr]?Ht[fr]:[])),fr++;return $t}function Yt(bt,Lt,St,Et,dt,Ht){for(var $t=[],fr=0,_r=0;_r<Lt.length;_r++)for(var Br=Lt[_r],Or=1;Or<d;Or++)for(var Nr=1;Nr<x;Nr++)$t.push(Ge(bt,Or,Br,Nr,St,Et,dt[_r],Ht&&Ht[fr]?Ht[fr]:[])),fr++;return $t}function xr(bt,Lt,St,Et,dt,Ht){for(var $t=[],fr=0,_r=0;_r<Lt.length;_r++)for(var Br=Lt[_r],Or=1;Or<v;Or++)for(var Nr=1;Nr<d;Nr++)$t.push(Ge(bt,Nr,Or,Br,St,Et,dt[_r],Ht&&Ht[fr]?Ht[fr]:[])),fr++;return $t}function er(bt,Lt){for(var St=[],Et=bt;Et<Lt;Et++)St.push(Et);return St}function Ke(){for(var bt=0;bt<d;bt++)for(var Lt=0;Lt<v;Lt++)for(var St=0;St<x;St++){var Et=p(bt,Lt,St);q(e._x[Et],e._y[Et],e._z[Et],e._value[Et])}}function xt(){F(),Ke();var bt=null;if(r&&i&&(N(i),Rt(bt,A,L)),t&&n){N(n);for(var Lt=e.surface.pattern,St=e.surface.count,Et=0;Et<St;Et++){var dt=St===1?.5:Et/(St-1),Ht=(1-dt)*A+dt*L,$t=Math.abs(Ht-E),fr=Math.abs(Ht-k),_r=$t>fr?[E,Ht]:[Ht,k];kt(Lt,_r[0],_r[1])}}var Br=[[Math.min(A,k),Math.max(A,k)],[Math.min(E,L),Math.max(E,L)]];["x","y","z"].forEach(function(Or){for(var Nr=[],ut=0;ut<Br.length;ut++){var Ne=0,Ye=Br[ut][0],Ve=Br[ut][1],Xe=e.slices[Or];if(Xe.show&&Xe.fill){N(Xe.fill);var ht=[],Le=[],xe=[];if(Xe.locations.length)for(var Se=0;Se<Xe.locations.length;Se++){var lt=XE(Xe.locations[Se],Or==="x"?c:Or==="y"?f:h);lt.distRatio===0?ht.push(lt.id):lt.id>0&&(Le.push(lt.id),Or==="x"?xe.push([lt.distRatio,0,0]):Or==="y"?xe.push([0,lt.distRatio,0]):xe.push([0,0,lt.distRatio]))}else Or==="x"?ht=er(1,d-1):Or==="y"?ht=er(1,v-1):ht=er(1,x-1);Le.length>0&&(Or==="x"?Nr[Ne]=Ct(bt,Le,Ye,Ve,xe,Nr[Ne]):Or==="y"?Nr[Ne]=Yt(bt,Le,Ye,Ve,xe,Nr[Ne]):Nr[Ne]=xr(bt,Le,Ye,Ve,xe,Nr[Ne]),Ne++),ht.length>0&&(Or==="x"?Nr[Ne]=ct(bt,ht,Ye,Ve,Nr[Ne]):Or==="y"?Nr[Ne]=qt(bt,ht,Ye,Ve,Nr[Ne]):Nr[Ne]=rt(bt,ht,Ye,Ve,Nr[Ne]),Ne++)}var Gt=e.caps[Or];Gt.show&&Gt.fill&&(N(Gt.fill),Or==="x"?Nr[Ne]=ct(bt,[0,d-1],Ye,Ve,Nr[Ne]):Or==="y"?Nr[Ne]=qt(bt,[0,v-1],Ye,Ve,Nr[Ne]):Nr[Ne]=rt(bt,[0,x-1],Ye,Ve,Nr[Ne]),Ne++)}}),s===0&&F(),e._meshX=_,e._meshY=C,e._meshZ=M,e._meshIntensity=g,e._Xs=c,e._Ys=f,e._Zs=h}return xt(),e}function YIt(e,t){var r=e.glplot.gl,n=HIt({gl:r}),i=new cIe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}hIe.exports={findNearestOnAxis:XE,generateIsoMeshes:fIe,createIsosurfaceTrace:YIt}});var vIe=ye((Wvr,dIe)=>{"use strict";dIe.exports={attributes:tz(),supplyDefaults:zZ().supplyDefaults,calc:OZ(),colorbar:{min:"cmin",max:"cmax"},plot:nz().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:Q_(),categories:["gl3d","showLegend"],meta:{}}});var gIe=ye((Zvr,pIe)=>{"use strict";pIe.exports=vIe()});var UZ=ye((Xvr,yIe)=>{"use strict";var KIt=Jl(),xh=tz(),JIt=jE(),mIe=vl(),NZ=no().extendFlat,$It=Bu().overrideAll,az=yIe.exports=$It(NZ({x:xh.x,y:xh.y,z:xh.z,value:xh.value,isomin:xh.isomin,isomax:xh.isomax,surface:xh.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:xh.slices,caps:xh.caps,text:xh.text,hovertext:xh.hovertext,xhoverformat:xh.xhoverformat,yhoverformat:xh.yhoverformat,zhoverformat:xh.zhoverformat,valuehoverformat:xh.valuehoverformat,hovertemplate:xh.hovertemplate},KIt("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:xh.colorbar,opacity:xh.opacity,opacityscale:JIt.opacityscale,lightposition:xh.lightposition,lighting:xh.lighting,flatshading:xh.flatshading,contour:xh.contour,hoverinfo:NZ({},mIe.hoverinfo),showlegend:NZ({},mIe.showlegend,{dflt:!1})}),"calc","nested");az.x.editType=az.y.editType=az.z.editType=az.value.editType="calc+clearAxisTypes"});var xIe=ye((Yvr,_Ie)=>{"use strict";var QIt=Mr(),e8t=UZ(),t8t=zZ().supplyIsoDefaults,r8t=CZ().opacityscaleDefaults;_Ie.exports=function(t,r,n,i){function a(o,s){return QIt.coerce(t,r,e8t,o,s)}t8t(t,r,n,i,a),r8t(t,r,i,a)}});var AIe=ye((Kvr,TIe)=>{"use strict";var i8t=Rd().gl_mesh3d,n8t=$y().parseColorScale,a8t=Mr().isArrayOrTypedArray,o8t=Jy(),s8t=Mu().extractOpts,bIe=H5(),VZ=nz().findNearestOnAxis,l8t=nz().generateIsoMeshes;function wIe(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.data=null,this.showContour=!1}var HZ=wIe.prototype;HZ.handlePick=function(e){if(e.object===this.mesh){var t=e.data.index,r=this.data._meshX[t],n=this.data._meshY[t],i=this.data._meshZ[t],a=this.data._Ys.length,o=this.data._Zs.length,s=VZ(r,this.data._Xs).id,l=VZ(n,this.data._Ys).id,u=VZ(i,this.data._Zs).id,c=e.index=u+o*l+o*a*s;e.traceCoordinate=[this.data._meshX[c],this.data._meshY[c],this.data._meshZ[c],this.data._value[c]];var f=this.data.hovertext||this.data.text;return a8t(f)&&f[c]!==void 0?e.textLabel=f[c]:f&&(e.textLabel=f),!0}};HZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=l8t(e);function n(l,u,c,f){return u.map(function(h){return l.d2l(h,0,f)*c})}var i=bIe(n(r.xaxis,e._meshX,t.dataScale[0],e.xcalendar),n(r.yaxis,e._meshY,t.dataScale[1],e.ycalendar),n(r.zaxis,e._meshZ,t.dataScale[2],e.zcalendar)),a=bIe(e._meshI,e._meshJ,e._meshK),o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,opacityscale:e.opacityscale,contourEnable:e.contour.show,contourColor:o8t(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading},s=s8t(e);o.vertexIntensity=e._meshIntensity,o.vertexIntensityBounds=[s.min,s.max],o.colormap=n8t(e),this.mesh.update(o)};HZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function u8t(e,t){var r=e.glplot.gl,n=i8t({gl:r}),i=new wIe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}TIe.exports=u8t});var MIe=ye((Jvr,SIe)=>{"use strict";SIe.exports={attributes:UZ(),supplyDefaults:xIe(),calc:OZ(),colorbar:{min:"cmin",max:"cmax"},plot:AIe(),moduleType:"trace",name:"volume",basePlotModule:Q_(),categories:["gl3d","showLegend"],meta:{}}});var kIe=ye(($vr,EIe)=>{"use strict";EIe.exports=MIe()});var PIe=ye((Qvr,LIe)=>{"use strict";var c8t=ba(),CIe=Mr(),f8t=Uh(),h8t=U5();LIe.exports=function(t,r,n,i){function a(c,f){return CIe.coerce(t,r,h8t,c,f)}function o(c){var f=c.map(function(h){var d=a(h);return d&&CIe.isArrayOrTypedArray(d)?d:null});return f.every(function(h){return h&&h.length===f[0].length})&&f}var s=o(["x","y","z"]);if(!s){r.visible=!1;return}if(o(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var l=c8t.getComponentMethod("calendars","handleTraceDefaults");l(t,r,["x","y","z"],i),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(c){a(c)});var u=a("contour.show");u&&(a("contour.color"),a("contour.width")),"intensity"in t?(a("intensity"),a("intensitymode"),f8t(t,r,i,a,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?a("facecolor"):"vertexcolor"in t?a("vertexcolor"):a("color",n)),a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var RIe=ye((epr,IIe)=>{"use strict";var d8t=zv();IIe.exports=function(t,r){r.intensity&&d8t(t,r,{vals:r.intensity,containerStr:"",cLetter:"c"})}});var OIe=ye((tpr,qIe)=>{"use strict";var v8t=Rd().gl_mesh3d,p8t=Rd().delaunay_triangulate,g8t=Rd().alpha_shape,m8t=Rd().convex_hull,y8t=$y().parseColorScale,_8t=Mr().isArrayOrTypedArray,ZZ=Jy(),x8t=Mu().extractOpts,DIe=H5();function FIe(e,t,r){this.scene=e,this.uid=r,this.mesh=t,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var XZ=FIe.prototype;XZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index;e.data._cellCenter?e.traceCoordinate=e.data.dataCoordinate:e.traceCoordinate=[this.data.x[t],this.data.y[t],this.data.z[t]];var r=this.data.hovertext||this.data.text;return _8t(r)&&r[t]!==void 0?e.textLabel=r[t]:r&&(e.textLabel=r),!0}};function zIe(e){for(var t=[],r=e.length,n=0;n<r;n++)t[n]=ZZ(e[n]);return t}function GZ(e,t,r,n){for(var i=[],a=t.length,o=0;o<a;o++)i[o]=e.d2l(t[o],0,n)*r;return i}function jZ(e){for(var t=[],r=e.length,n=0;n<r;n++)t[n]=Math.round(e[n]);return t}function b8t(e,t){for(var r=["x","y","z"].indexOf(e),n=[],i=t.length,a=0;a<i;a++)n[a]=[t[a][(r+1)%3],t[a][(r+2)%3]];return p8t(n)}function WZ(e,t){for(var r=e.length,n=0;n<r;n++)if(e[n]<=-.5||e[n]>=t-.5)return!1;return!0}XZ.update=function(e){var t=this.scene,r=t.fullSceneLayout;this.data=e;var n=e.x.length,i=DIe(GZ(r.xaxis,e.x,t.dataScale[0],e.xcalendar),GZ(r.yaxis,e.y,t.dataScale[1],e.ycalendar),GZ(r.zaxis,e.z,t.dataScale[2],e.zcalendar)),a;if(e.i&&e.j&&e.k){if(e.i.length!==e.j.length||e.j.length!==e.k.length||!WZ(e.i,n)||!WZ(e.j,n)||!WZ(e.k,n))return;a=DIe(jZ(e.i),jZ(e.j),jZ(e.k))}else e.alphahull===0?a=m8t(i):e.alphahull>0?a=g8t(e.alphahull,i):a=b8t(e.delaunayaxis,i);var o={positions:i,cells:a,lightPosition:[e.lightposition.x,e.lightposition.y,e.lightposition.z],ambient:e.lighting.ambient,diffuse:e.lighting.diffuse,specular:e.lighting.specular,roughness:e.lighting.roughness,fresnel:e.lighting.fresnel,vertexNormalsEpsilon:e.lighting.vertexnormalsepsilon,faceNormalsEpsilon:e.lighting.facenormalsepsilon,opacity:e.opacity,contourEnable:e.contour.show,contourColor:ZZ(e.contour.color).slice(0,3),contourWidth:e.contour.width,useFacetNormals:e.flatshading};if(e.intensity){var s=x8t(e);this.color="#fff";var l=e.intensitymode;o[l+"Intensity"]=e.intensity,o[l+"IntensityBounds"]=[s.min,s.max],o.colormap=y8t(e)}else e.vertexcolor?(this.color=e.vertexcolor[0],o.vertexColors=zIe(e.vertexcolor)):e.facecolor?(this.color=e.facecolor[0],o.cellColors=zIe(e.facecolor)):(this.color=e.color,o.meshColor=ZZ(e.color));this.mesh.update(o)};XZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function w8t(e,t){var r=e.glplot.gl,n=v8t({gl:r}),i=new FIe(e,n,t.uid);return n._trace=i,i.update(t),e.glplot.add(n),i}qIe.exports=w8t});var NIe=ye((rpr,BIe)=>{"use strict";BIe.exports={attributes:U5(),supplyDefaults:PIe(),calc:RIe(),colorbar:{min:"cmin",max:"cmax"},plot:OIe(),moduleType:"trace",name:"mesh3d",basePlotModule:Q_(),categories:["gl3d","showLegend"],meta:{}}});var VIe=ye((ipr,UIe)=>{"use strict";UIe.exports=NIe()});var KZ=ye((npr,GIe)=>{"use strict";var T8t=Jl(),G5=Oc().axisHoverFormat,A8t=Wo().hovertemplateAttrs,S8t=U5(),HIe=vl(),YZ=no().extendFlat,oz={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A8t({editType:"calc"},{keys:["norm"]}),uhoverformat:G5("u",1),vhoverformat:G5("v",1),whoverformat:G5("w",1),xhoverformat:G5("x"),yhoverformat:G5("y"),zhoverformat:G5("z"),showlegend:YZ({},HIe.showlegend,{dflt:!1})};YZ(oz,T8t("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var M8t=["opacity","lightposition","lighting"];M8t.forEach(function(e){oz[e]=S8t[e]});oz.hoverinfo=YZ({},HIe.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"});GIe.exports=oz});var WIe=ye((apr,jIe)=>{"use strict";var E8t=Mr(),k8t=Uh(),C8t=KZ();jIe.exports=function(t,r,n,i){function a(d,v){return E8t.coerce(t,r,C8t,d,v)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}var h=a("sizemode");a("sizeref",h==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),k8t(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var XIe=ye((opr,ZIe)=>{"use strict";var L8t=zv();ZIe.exports=function(t,r){for(var n=r.u,i=r.v,a=r.w,o=Math.min(r.x.length,r.y.length,r.z.length,n.length,i.length,a.length),s=-1/0,l=1/0,u=0;u<o;u++){var c=n[u],f=i[u],h=a[u],d=Math.sqrt(c*c+f*f+h*h);s=Math.max(s,d),l=Math.min(l,d)}r._len=o,r._normMax=s,L8t(t,r,{vals:[l,s],containerStr:"",cLetter:"c"})}});var QIe=ye((spr,$Ie)=>{"use strict";var P8t=Rd().gl_cone3d,I8t=Rd().gl_cone3d.createConeMesh,R8t=Mr().simpleMap,D8t=$y().parseColorScale,z8t=Mu().extractOpts,F8t=Mr().isArrayOrTypedArray,YIe=H5();function KIe(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var JZ=KIe.prototype;JZ.handlePick=function(e){if(e.object===this.mesh){var t=e.index=e.data.index,r=this.data.x[t],n=this.data.y[t],i=this.data.z[t],a=this.data.u[t],o=this.data.v[t],s=this.data.w[t];e.traceCoordinate=[r,n,i,a,o,s,Math.sqrt(a*a+o*o+s*s)];var l=this.data.hovertext||this.data.text;return F8t(l)&&l[t]!==void 0?e.textLabel=l[t]:l&&(e.textLabel=l),!0}};var q8t={xaxis:0,yaxis:1,zaxis:2},O8t={tip:1,tail:0,cm:.25,center:.5},B8t={tip:1,tail:1,cm:.75,center:.5};function JIe(e,t){var r=e.fullSceneLayout,n=e.dataScale,i={};function a(c,f){var h=r[f],d=n[q8t[f]];return R8t(c,function(v){return h.d2l(v)*d})}i.vectors=YIe(a(t.u,"xaxis"),a(t.v,"yaxis"),a(t.w,"zaxis"),t._len),i.positions=YIe(a(t.x,"xaxis"),a(t.y,"yaxis"),a(t.z,"zaxis"),t._len);var o=z8t(t);i.colormap=D8t(t),i.vertexIntensityBounds=[o.min/t._normMax,o.max/t._normMax],i.coneOffset=O8t[t.anchor];var s=t.sizemode;s==="scaled"?i.coneSize=t.sizeref||.5:s==="absolute"?i.coneSize=t.sizeref&&t._normMax?t.sizeref/t._normMax:.5:s==="raw"&&(i.coneSize=t.sizeref),i.coneSizemode=s;var l=P8t(i),u=t.lightposition;return l.lightPosition=[u.x,u.y,u.z],l.ambient=t.lighting.ambient,l.diffuse=t.lighting.diffuse,l.specular=t.lighting.specular,l.roughness=t.lighting.roughness,l.fresnel=t.lighting.fresnel,l.opacity=t.opacity,t._pad=B8t[t.anchor]*l.vectorScale*l.coneScale*t._normMax,l}JZ.update=function(e){this.data=e;var t=JIe(this.scene,e);this.mesh.update(t)};JZ.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function N8t(e,t){var r=e.glplot.gl,n=JIe(e,t),i=I8t(r,n),a=new KIe(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}$Ie.exports=N8t});var t8e=ye((lpr,e8e)=>{"use strict";e8e.exports={moduleType:"trace",name:"cone",basePlotModule:Q_(),categories:["gl3d","showLegend"],attributes:KZ(),supplyDefaults:WIe(),colorbar:{min:"cmin",max:"cmax"},calc:XIe(),plot:QIe(),eventData:function(e,t){return e.norm=t.traceCoordinate[6],e},meta:{}}});var i8e=ye((upr,r8e)=>{"use strict";r8e.exports=t8e()});var QZ=ye((cpr,a8e)=>{"use strict";var U8t=Jl(),j5=Oc().axisHoverFormat,V8t=Wo().hovertemplateAttrs,H8t=U5(),n8e=vl(),$Z=no().extendFlat,sz={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:V8t({editType:"calc"},{keys:["tubex","tubey","tubez","tubeu","tubev","tubew","norm","divergence"]}),uhoverformat:j5("u",1),vhoverformat:j5("v",1),whoverformat:j5("w",1),xhoverformat:j5("x"),yhoverformat:j5("y"),zhoverformat:j5("z"),showlegend:$Z({},n8e.showlegend,{dflt:!1})};$Z(sz,U8t("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var G8t=["opacity","lightposition","lighting"];G8t.forEach(function(e){sz[e]=H8t[e]});sz.hoverinfo=$Z({},n8e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"});a8e.exports=sz});var s8e=ye((fpr,o8e)=>{"use strict";var j8t=Mr(),W8t=Uh(),Z8t=QZ();o8e.exports=function(t,r,n,i){function a(h,d){return j8t.coerce(t,r,Z8t,h,d)}var o=a("u"),s=a("v"),l=a("w"),u=a("x"),c=a("y"),f=a("z");if(!o||!o.length||!s||!s.length||!l||!l.length||!u||!u.length||!c||!c.length||!f||!f.length){r.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),W8t(t,r,i,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),r._length=null}});var p8e=ye((hpr,v8e)=>{"use strict";var c8e=Rd().gl_streamtube3d,X8t=c8e.createTubeMesh,Y8t=Mr(),K8t=$y().parseColorScale,J8t=Mu().extractOpts,l8e=H5(),f8e={xaxis:0,yaxis:1,zaxis:2};function h8e(e,t){this.scene=e,this.uid=t,this.mesh=null,this.data=null}var tX=h8e.prototype;tX.handlePick=function(e){var t=this.scene.fullSceneLayout,r=this.scene.dataScale;function n(o,s){var l=t[s],u=r[f8e[s]];return l.l2c(o)/u}if(e.object===this.mesh){var i=e.data.position,a=e.data.velocity;return e.traceCoordinate=[n(i[0],"xaxis"),n(i[1],"yaxis"),n(i[2],"zaxis"),n(a[0],"xaxis"),n(a[1],"yaxis"),n(a[2],"zaxis"),e.data.intensity*this.data._normMax,e.data.divergence],e.textLabel=this.data.hovertext||this.data.text,!0}};function u8e(e){var t=e.length,r;return t>2?r=e.slice(1,t-1):t===2?r=[(e[0]+e[1])/2]:r=e,r}function eX(e){var t=e.length;return t===1?[.5,.5]:[e[1]-e[0],e[t-1]-e[t-2]]}function d8e(e,t){var r=e.fullSceneLayout,n=e.dataScale,i=t._len,a={};function o(F,q){var V=r[q],H=n[f8e[q]];return Y8t.simpleMap(F,function(X){return V.d2l(X)*H})}if(a.vectors=l8e(o(t._u,"xaxis"),o(t._v,"yaxis"),o(t._w,"zaxis"),i),!i)return{positions:[],cells:[]};var s=o(t._Xs,"xaxis"),l=o(t._Ys,"yaxis"),u=o(t._Zs,"zaxis");a.meshgrid=[s,l,u],a.gridFill=t._gridFill;var c=t._slen;if(c)a.startingPositions=l8e(o(t._startsX,"xaxis"),o(t._startsY,"yaxis"),o(t._startsZ,"zaxis"));else{for(var f=l[0],h=u8e(s),d=u8e(u),v=new Array(h.length*d.length),x=0,b=0;b<h.length;b++)for(var p=0;p<d.length;p++)v[x++]=[h[b],f,d[p]];a.startingPositions=v}a.colormap=K8t(t),a.tubeSize=t.sizeref,a.maxLength=t.maxdisplayed;var E=o(t._xbnds,"xaxis"),k=o(t._ybnds,"yaxis"),A=o(t._zbnds,"zaxis"),L=eX(s),_=eX(l),C=eX(u),M=[[E[0]-L[0],k[0]-_[0],A[0]-C[0]],[E[1]+L[1],k[1]+_[1],A[1]+C[1]]],g=c8e(a,M),P=J8t(t);g.vertexIntensityBounds=[P.min/t._normMax,P.max/t._normMax];var T=t.lightposition;return g.lightPosition=[T.x,T.y,T.z],g.ambient=t.lighting.ambient,g.diffuse=t.lighting.diffuse,g.specular=t.lighting.specular,g.roughness=t.lighting.roughness,g.fresnel=t.lighting.fresnel,g.opacity=t.opacity,t._pad=g.tubeScale*t.sizeref*2,g}tX.update=function(e){this.data=e;var t=d8e(this.scene,e);this.mesh.update(t)};tX.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function $8t(e,t){var r=e.glplot.gl,n=d8e(e,t),i=X8t(r,n),a=new h8e(e,t.uid);return a.mesh=i,a.data=t,i._trace=a,e.glplot.add(i),a}v8e.exports=$8t});var m8e=ye((dpr,g8e)=>{"use strict";g8e.exports={moduleType:"trace",name:"streamtube",basePlotModule:Q_(),categories:["gl3d","showLegend"],attributes:QZ(),supplyDefaults:s8e(),colorbar:{min:"cmin",max:"cmax"},calc:rz().calc,plot:p8e(),eventData:function(e,t){return e.tubex=e.x,e.tubey=e.y,e.tubez=e.z,e.tubeu=t.traceCoordinate[3],e.tubev=t.traceCoordinate[4],e.tubew=t.traceCoordinate[5],e.norm=t.traceCoordinate[6],e.divergence=t.traceCoordinate[7],delete e.x,delete e.y,delete e.z,e},meta:{}}});var _8e=ye((vpr,y8e)=>{"use strict";y8e.exports=m8e()});var H2=ye((ppr,w8e)=>{"use strict";var Q8t=Wo().hovertemplateAttrs,eRt=Wo().texttemplateAttrs,tRt=Eg(),jm=Uc(),rRt=vl(),x8e=Jl(),iRt=Ed().dash,V2=no().extendFlat,nRt=Bu().overrideAll,eg=jm.marker,b8e=jm.line,aRt=eg.line;w8e.exports=nRt({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:V2({},jm.mode,{dflt:"markers"}),text:V2({},jm.text,{}),texttemplate:eRt({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:V2({},jm.hovertext,{}),textfont:jm.textfont,textposition:jm.textposition,line:{color:b8e.color,width:b8e.width,dash:iRt},connectgaps:jm.connectgaps,marker:V2({symbol:eg.symbol,opacity:eg.opacity,angle:eg.angle,angleref:V2({},eg.angleref,{values:["previous","up","north"]}),standoff:eg.standoff,size:eg.size,sizeref:eg.sizeref,sizemin:eg.sizemin,sizemode:eg.sizemode,colorbar:eg.colorbar,line:V2({width:aRt.width},x8e("marker.line")),gradient:eg.gradient},x8e("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:tRt(),selected:jm.selected,unselected:jm.unselected,hoverinfo:V2({},rRt.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:Q8t()},"calc","nested")});var A8e=ye((gpr,T8e)=>{"use strict";var rX=Mr(),iX=lu(),oRt=$p(),sRt=R0(),lRt=D0(),uRt=Ig(),cRt=H2();T8e.exports=function(t,r,n,i){function a(d,v){return rX.coerce(t,r,cRt,d,v)}var o=a("locations"),s;if(o&&o.length){var l=a("geojson"),u;(typeof l=="string"&&l!==""||rX.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="geojson-id"&&a("featureidkey"),s=o.length}else{var f=a("lon")||[],h=a("lat")||[];s=Math.min(f.length,h.length)}if(!s){r.visible=!1;return}r._length=s,a("text"),a("hovertext"),a("hovertemplate"),a("mode"),iX.hasMarkers(r)&&oRt(t,r,n,i,a,{gradient:!0}),iX.hasLines(r)&&(sRt(t,r,n,i,a),a("connectgaps")),iX.hasText(r)&&(a("texttemplate"),lRt(t,r,i,a)),a("fill"),r.fill!=="none"&&uRt(t,r,n,a),rX.coerceSelectionMarkerOpacity(r,a)}});var E8e=ye((mpr,M8e)=>{"use strict";var S8e=Qa();M8e.exports=function(t,r,n){var i={},a=n[r.geo]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=S8e.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=S8e.tickText(o,o.c2l(s[1]),!0).text,i}});var lz=ye((ypr,P8e)=>{"use strict";var nX=uo(),k8e=es().BADNUM,fRt=z0(),hRt=km(),dRt=F0(),vRt=Mr().isArrayOrTypedArray,C8e=Mr()._;function L8e(e){return e&&typeof e=="string"}P8e.exports=function(t,r){var n=vRt(r.locations),i=n?r.locations.length:r._length,a=new Array(i),o;r.geojson?o=function(h){return L8e(h)||nX(h)}:o=L8e;for(var s=0;s<i;s++){var l=a[s]={};if(n){var u=r.locations[s];l.loc=o(u)?u:null}else{var c=r.lon[s],f=r.lat[s];nX(c)&&nX(f)?l.lonlat=[+c,+f]:l.lonlat=[k8e,k8e]}}return hRt(a,r),fRt(t,r),dRt(a,r),i&&(a[0].t={labels:{lat:C8e(t,"lat:")+" ",lon:C8e(t,"lon:")+" "}}),a}});var YE=ye(Tv=>{"use strict";Tv.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"};Tv.axesNames=["lonaxis","lataxis"];Tv.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360};Tv.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180};Tv.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]}};Tv.clipPad=.001;Tv.precision=.1;Tv.landColor="#F0DC82";Tv.waterColor="#3399FF";Tv.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"};Tv.sphereSVG={type:"Sphere"};Tv.fillLayers={ocean:1,land:1,lakes:1};Tv.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1};Tv.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"];Tv.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"];Tv.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}});var aX=ye((uz,I8e)=>{(function(e,t){typeof uz=="object"&&typeof I8e!="undefined"?t(uz):(e=e||self,t(e.topojson=e.topojson||{}))})(uz,function(e){"use strict";function t(k){return k}function r(k){if(k==null)return t;var A,L,_=k.scale[0],C=k.scale[1],M=k.translate[0],g=k.translate[1];return function(P,T){T||(A=L=0);var F=2,q=P.length,V=new Array(q);for(V[0]=(A+=P[0])*_+M,V[1]=(L+=P[1])*C+g;F<q;)V[F]=P[F],++F;return V}}function n(k){var A=r(k.transform),L,_=1/0,C=_,M=-_,g=-_;function P(F){F=A(F),F[0]<_&&(_=F[0]),F[0]>M&&(M=F[0]),F[1]<C&&(C=F[1]),F[1]>g&&(g=F[1])}function T(F){switch(F.type){case"GeometryCollection":F.geometries.forEach(T);break;case"Point":P(F.coordinates);break;case"MultiPoint":F.coordinates.forEach(P);break}}k.arcs.forEach(function(F){for(var q=-1,V=F.length,H;++q<V;)H=A(F[q],q),H[0]<_&&(_=H[0]),H[0]>M&&(M=H[0]),H[1]<C&&(C=H[1]),H[1]>g&&(g=H[1])});for(L in k.objects)T(k.objects[L]);return[_,C,M,g]}function i(k,A){for(var L,_=k.length,C=_-A;C<--_;)L=k[C],k[C++]=k[_],k[_]=L}function a(k,A){return typeof A=="string"&&(A=k.objects[A]),A.type==="GeometryCollection"?{type:"FeatureCollection",features:A.geometries.map(function(L){return o(k,L)})}:o(k,A)}function o(k,A){var L=A.id,_=A.bbox,C=A.properties==null?{}:A.properties,M=s(k,A);return L==null&&_==null?{type:"Feature",properties:C,geometry:M}:_==null?{type:"Feature",id:L,properties:C,geometry:M}:{type:"Feature",id:L,bbox:_,properties:C,geometry:M}}function s(k,A){var L=r(k.transform),_=k.arcs;function C(q,V){V.length&&V.pop();for(var H=_[q<0?~q:q],X=0,G=H.length;X<G;++X)V.push(L(H[X],X));q<0&&i(V,G)}function M(q){return L(q)}function g(q){for(var V=[],H=0,X=q.length;H<X;++H)C(q[H],V);return V.length<2&&V.push(V[0]),V}function P(q){for(var V=g(q);V.length<4;)V.push(V[0]);return V}function T(q){return q.map(P)}function F(q){var V=q.type,H;switch(V){case"GeometryCollection":return{type:V,geometries:q.geometries.map(F)};case"Point":H=M(q.coordinates);break;case"MultiPoint":H=q.coordinates.map(M);break;case"LineString":H=g(q.arcs);break;case"MultiLineString":H=q.arcs.map(g);break;case"Polygon":H=T(q.arcs);break;case"MultiPolygon":H=q.arcs.map(T);break;default:return null}return{type:V,coordinates:H}}return F(A)}function l(k,A){var L={},_={},C={},M=[],g=-1;A.forEach(function(F,q){var V=k.arcs[F<0?~F:F],H;V.length<3&&!V[1][0]&&!V[1][1]&&(H=A[++g],A[g]=F,A[q]=H)}),A.forEach(function(F){var q=P(F),V=q[0],H=q[1],X,G;if(X=C[V])if(delete C[X.end],X.push(F),X.end=H,G=_[H]){delete _[G.start];var N=G===X?X:X.concat(G);_[N.start=X.start]=C[N.end=G.end]=N}else _[X.start]=C[X.end]=X;else if(X=_[H])if(delete _[X.start],X.unshift(F),X.start=V,G=C[V]){delete C[G.end];var W=G===X?X:G.concat(X);_[W.start=G.start]=C[W.end=X.end]=W}else _[X.start]=C[X.end]=X;else X=[F],_[X.start=V]=C[X.end=H]=X});function P(F){var q=k.arcs[F<0?~F:F],V=q[0],H;return k.transform?(H=[0,0],q.forEach(function(X){H[0]+=X[0],H[1]+=X[1]})):H=q[q.length-1],F<0?[H,V]:[V,H]}function T(F,q){for(var V in F){var H=F[V];delete q[H.start],delete H.start,delete H.end,H.forEach(function(X){L[X<0?~X:X]=1}),M.push(H)}}return T(C,_),T(_,C),A.forEach(function(F){L[F<0?~F:F]||M.push([F])}),M}function u(k){return s(k,c.apply(this,arguments))}function c(k,A,L){var _,C,M;if(arguments.length>1)_=f(k,A,L);else for(C=0,_=new Array(M=k.arcs.length);C<M;++C)_[C]=C;return{type:"MultiLineString",arcs:l(k,_)}}function f(k,A,L){var _=[],C=[],M;function g(V){var H=V<0?~V:V;(C[H]||(C[H]=[])).push({i:V,g:M})}function P(V){V.forEach(g)}function T(V){V.forEach(P)}function F(V){V.forEach(T)}function q(V){switch(M=V,V.type){case"GeometryCollection":V.geometries.forEach(q);break;case"LineString":P(V.arcs);break;case"MultiLineString":case"Polygon":T(V.arcs);break;case"MultiPolygon":F(V.arcs);break}}return q(A),C.forEach(L==null?function(V){_.push(V[0].i)}:function(V){L(V[0].g,V[V.length-1].g)&&_.push(V[0].i)}),_}function h(k){for(var A=-1,L=k.length,_,C=k[L-1],M=0;++A<L;)_=C,C=k[A],M+=_[0]*C[1]-_[1]*C[0];return Math.abs(M)}function d(k){return s(k,v.apply(this,arguments))}function v(k,A){var L={},_=[],C=[];A.forEach(M);function M(T){switch(T.type){case"GeometryCollection":T.geometries.forEach(M);break;case"Polygon":g(T.arcs);break;case"MultiPolygon":T.arcs.forEach(g);break}}function g(T){T.forEach(function(F){F.forEach(function(q){(L[q=q<0?~q:q]||(L[q]=[])).push(T)})}),_.push(T)}function P(T){return h(s(k,{type:"Polygon",arcs:[T]}).coordinates[0])}return _.forEach(function(T){if(!T._){var F=[],q=[T];for(T._=1,C.push(F);T=q.pop();)F.push(T),T.forEach(function(V){V.forEach(function(H){L[H<0?~H:H].forEach(function(X){X._||(X._=1,q.push(X))})})})}}),_.forEach(function(T){delete T._}),{type:"MultiPolygon",arcs:C.map(function(T){var F=[],q;if(T.forEach(function(N){N.forEach(function(W){W.forEach(function(re){L[re<0?~re:re].length<2&&F.push(re)})})}),F=l(k,F),(q=F.length)>1)for(var V=1,H=P(F[0]),X,G;V<q;++V)(X=P(F[V]))>H&&(G=F[0],F[0]=F[V],F[V]=G,H=X);return F}).filter(function(T){return T.length>0})}}function x(k,A){for(var L=0,_=k.length;L<_;){var C=L+_>>>1;k[C]<A?L=C+1:_=C}return L}function b(k){var A={},L=k.map(function(){return[]});function _(N,W){N.forEach(function(re){re<0&&(re=~re);var ae=A[re];ae?ae.push(W):A[re]=[W]})}function C(N,W){N.forEach(function(re){_(re,W)})}function M(N,W){N.type==="GeometryCollection"?N.geometries.forEach(function(re){M(re,W)}):N.type in g&&g[N.type](N.arcs,W)}var g={LineString:_,MultiLineString:C,Polygon:C,MultiPolygon:function(N,W){N.forEach(function(re){C(re,W)})}};k.forEach(M);for(var P in A)for(var T=A[P],F=T.length,q=0;q<F;++q)for(var V=q+1;V<F;++V){var H=T[q],X=T[V],G;(G=L[H])[P=x(G,X)]!==X&&G.splice(P,0,X),(G=L[X])[P=x(G,H)]!==H&&G.splice(P,0,H)}return L}function p(k){if(k==null)return t;var A,L,_=k.scale[0],C=k.scale[1],M=k.translate[0],g=k.translate[1];return function(P,T){T||(A=L=0);var F=2,q=P.length,V=new Array(q),H=Math.round((P[0]-M)/_),X=Math.round((P[1]-g)/C);for(V[0]=H-A,A=H,V[1]=X-L,L=X;F<q;)V[F]=P[F],++F;return V}}function E(k,A){if(k.transform)throw new Error("already quantized");if(!A||!A.scale){if(!((g=Math.floor(A))>=2))throw new Error("n must be \u22652");T=k.bbox||n(k);var L=T[0],_=T[1],C=T[2],M=T[3],g;A={scale:[C-L?(C-L)/(g-1):1,M-_?(M-_)/(g-1):1],translate:[L,_]}}else T=k.bbox;var P=p(A),T,F,q=k.objects,V={};function H(N){return P(N)}function X(N){var W;switch(N.type){case"GeometryCollection":W={type:"GeometryCollection",geometries:N.geometries.map(X)};break;case"Point":W={type:"Point",coordinates:H(N.coordinates)};break;case"MultiPoint":W={type:"MultiPoint",coordinates:N.coordinates.map(H)};break;default:return N}return N.id!=null&&(W.id=N.id),N.bbox!=null&&(W.bbox=N.bbox),N.properties!=null&&(W.properties=N.properties),W}function G(N){var W=0,re=1,ae=N.length,_e,Me=new Array(ae);for(Me[0]=P(N[0],0);++W<ae;)((_e=P(N[W],W))[0]||_e[1])&&(Me[re++]=_e);return re===1&&(Me[re++]=[0,0]),Me.length=re,Me}for(F in q)V[F]=X(q[F]);return{type:"Topology",bbox:T,transform:A,objects:V,arcs:k.arcs.map(G)}}e.bbox=n,e.feature=a,e.merge=d,e.mergeArcs=v,e.mesh=u,e.meshArcs=c,e.neighbors=b,e.quantize=E,e.transform=r,e.untransform=p,Object.defineProperty(e,"__esModule",{value:!0})})});var cz=ye((xpr,R8e)=>{"use strict";var oX=R8e.exports={},pRt=YE().locationmodeToLayer,gRt=aX().feature;oX.getTopojsonName=function(e){return[e.scope.replace(/ /g,"-"),"_",e.resolution.toString(),"m"].join("")};oX.getTopojsonPath=function(e,t){return e+t+".json"};oX.getTopojsonFeatures=function(e,t){var r=pRt[e.locationmode],n=t.objects[r];return gRt(t,n).features}});var rx=ye(KE=>{"use strict";var mRt=es().BADNUM;KE.calcTraceToLineCoords=function(e){for(var t=e[0].trace,r=t.connectgaps,n=[],i=[],a=0;a<e.length;a++){var o=e[a],s=o.lonlat;s[0]!==mRt?i.push(s):!r&&i.length>0&&(n.push(i),i=[])}return i.length>0&&n.push(i),n};KE.makeLine=function(e){return e.length===1?{type:"LineString",coordinates:e[0]}:{type:"MultiLineString",coordinates:e}};KE.makePolygon=function(e){if(e.length===1)return{type:"Polygon",coordinates:e};for(var t=new Array(e.length),r=0;r<e.length;r++)t[r]=[e[r]];return{type:"MultiPolygon",coordinates:t}};KE.makeBlank=function(){return{type:"Point",coordinates:[]}}});var z8e=ye((wpr,D8e)=>{D8e.exports={AFG:"afghan",ALA:"\\b\\wland",ALB:"albania",DZA:"algeria",ASM:"^(?=.*americ).*samoa",AND:"andorra",AGO:"angola",AIA:"anguill?a",ATA:"antarctica",ATG:"antigua",ARG:"argentin",ARM:"armenia",ABW:"^(?!.*bonaire).*\\baruba",AUS:"australia",AUT:"^(?!.*hungary).*austria|\\baustri.*\\bemp",AZE:"azerbaijan",BHS:"bahamas",BHR:"bahrain",BGD:"bangladesh|^(?=.*east).*paki?stan",BRB:"barbados",BLR:"belarus|byelo",BEL:"^(?!.*luxem).*belgium",BLZ:"belize|^(?=.*british).*honduras",BEN:"benin|dahome",BMU:"bermuda",BTN:"bhutan",BOL:"bolivia",BES:"^(?=.*bonaire).*eustatius|^(?=.*carib).*netherlands|\\bbes.?islands",BIH:"herzegovina|bosnia",BWA:"botswana|bechuana",BVT:"bouvet",BRA:"brazil",IOT:"british.?indian.?ocean",BRN:"brunei",BGR:"bulgaria",BFA:"burkina|\\bfaso|upper.?volta",BDI:"burundi",CPV:"verde",KHM:"cambodia|kampuchea|khmer",CMR:"cameroon",CAN:"canada",CYM:"cayman",CAF:"\\bcentral.african.republic",TCD:"\\bchad",CHL:"\\bchile",CHN:"^(?!.*\\bmac)(?!.*\\bhong)(?!.*\\btai)(?!.*\\brep).*china|^(?=.*peo)(?=.*rep).*china",CXR:"christmas",CCK:"\\bcocos|keeling",COL:"colombia",COM:"comoro",COG:"^(?!.*\\bdem)(?!.*\\bd[\\.]?r)(?!.*kinshasa)(?!.*zaire)(?!.*belg)(?!.*l.opoldville)(?!.*free).*\\bcongo",COK:"\\bcook",CRI:"costa.?rica",CIV:"ivoire|ivory",HRV:"croatia",CUB:"\\bcuba",CUW:"^(?!.*bonaire).*\\bcura(c|\xE7)ao",CYP:"cyprus",CSK:"czechoslovakia",CZE:"^(?=.*rep).*czech|czechia|bohemia",COD:"\\bdem.*congo|congo.*\\bdem|congo.*\\bd[\\.]?r|\\bd[\\.]?r.*congo|belgian.?congo|congo.?free.?state|kinshasa|zaire|l.opoldville|drc|droc|rdc",DNK:"denmark",DJI:"djibouti",DMA:"dominica(?!n)",DOM:"dominican.rep",ECU:"ecuador",EGY:"egypt",SLV:"el.?salvador",GNQ:"guine.*eq|eq.*guine|^(?=.*span).*guinea",ERI:"eritrea",EST:"estonia",ETH:"ethiopia|abyssinia",FLK:"falkland|malvinas",FRO:"faroe|faeroe",FJI:"fiji",FIN:"finland",FRA:"^(?!.*\\bdep)(?!.*martinique).*france|french.?republic|\\bgaul",GUF:"^(?=.*french).*guiana",PYF:"french.?polynesia|tahiti",ATF:"french.?southern",GAB:"gabon",GMB:"gambia",GEO:"^(?!.*south).*georgia",DDR:"german.?democratic.?republic|democratic.?republic.*germany|east.germany",DEU:"^(?!.*east).*germany|^(?=.*\\bfed.*\\brep).*german",GHA:"ghana|gold.?coast",GIB:"gibraltar",GRC:"greece|hellenic|hellas",GRL:"greenland",GRD:"grenada",GLP:"guadeloupe",GUM:"\\bguam",GTM:"guatemala",GGY:"guernsey",GIN:"^(?!.*eq)(?!.*span)(?!.*bissau)(?!.*portu)(?!.*new).*guinea",GNB:"bissau|^(?=.*portu).*guinea",GUY:"guyana|british.?guiana",HTI:"haiti",HMD:"heard.*mcdonald",VAT:"holy.?see|vatican|papal.?st",HND:"^(?!.*brit).*honduras",HKG:"hong.?kong",HUN:"^(?!.*austr).*hungary",ISL:"iceland",IND:"india(?!.*ocea)",IDN:"indonesia",IRN:"\\biran|persia",IRQ:"\\biraq|mesopotamia",IRL:"(^ireland)|(^republic.*ireland)",IMN:"^(?=.*isle).*\\bman",ISR:"israel",ITA:"italy",JAM:"jamaica",JPN:"japan",JEY:"jersey",JOR:"jordan",KAZ:"kazak",KEN:"kenya|british.?east.?africa|east.?africa.?prot",KIR:"kiribati",PRK:"^(?=.*democrat|people|north|d.*p.*.r).*\\bkorea|dprk|korea.*(d.*p.*r)",KWT:"kuwait",KGZ:"kyrgyz|kirghiz",LAO:"\\blaos?\\b",LVA:"latvia",LBN:"lebanon",LSO:"lesotho|basuto",LBR:"liberia",LBY:"libya",LIE:"liechtenstein",LTU:"lithuania",LUX:"^(?!.*belg).*luxem",MAC:"maca(o|u)",MDG:"madagascar|malagasy",MWI:"malawi|nyasa",MYS:"malaysia",MDV:"maldive",MLI:"\\bmali\\b",MLT:"\\bmalta",MHL:"marshall",MTQ:"martinique",MRT:"mauritania",MUS:"mauritius",MYT:"\\bmayotte",MEX:"\\bmexic",FSM:"fed.*micronesia|micronesia.*fed",MCO:"monaco",MNG:"mongolia",MNE:"^(?!.*serbia).*montenegro",MSR:"montserrat",MAR:"morocco|\\bmaroc",MOZ:"mozambique",MMR:"myanmar|burma",NAM:"namibia",NRU:"nauru",NPL:"nepal",NLD:"^(?!.*\\bant)(?!.*\\bcarib).*netherlands",ANT:"^(?=.*\\bant).*(nether|dutch)",NCL:"new.?caledonia",NZL:"new.?zealand",NIC:"nicaragua",NER:"\\bniger(?!ia)",NGA:"nigeria",NIU:"niue",NFK:"norfolk",MNP:"mariana",NOR:"norway",OMN:"\\boman|trucial",PAK:"^(?!.*east).*paki?stan",PLW:"palau",PSE:"palestin|\\bgaza|west.?bank",PAN:"panama",PNG:"papua|new.?guinea",PRY:"paraguay",PER:"peru",PHL:"philippines",PCN:"pitcairn",POL:"poland",PRT:"portugal",PRI:"puerto.?rico",QAT:"qatar",KOR:"^(?!.*d.*p.*r)(?!.*democrat)(?!.*people)(?!.*north).*\\bkorea(?!.*d.*p.*r)",MDA:"moldov|b(a|e)ssarabia",REU:"r(e|\xE9)union",ROU:"r(o|u|ou)mania",RUS:"\\brussia|soviet.?union|u\\.?s\\.?s\\.?r|socialist.?republics",RWA:"rwanda",BLM:"barth(e|\xE9)lemy",SHN:"helena",KNA:"kitts|\\bnevis",LCA:"\\blucia",MAF:"^(?=.*collectivity).*martin|^(?=.*france).*martin(?!ique)|^(?=.*french).*martin(?!ique)",SPM:"miquelon",VCT:"vincent",WSM:"^(?!.*amer).*samoa",SMR:"san.?marino",STP:"\\bs(a|\xE3)o.?tom(e|\xE9)",SAU:"\\bsa\\w*.?arabia",SEN:"senegal",SRB:"^(?!.*monte).*serbia",SYC:"seychell",SLE:"sierra",SGP:"singapore",SXM:"^(?!.*martin)(?!.*saba).*maarten",SVK:"^(?!.*cze).*slovak",SVN:"slovenia",SLB:"solomon",SOM:"somali",ZAF:"south.africa|s\\\\..?africa",SGS:"south.?georgia|sandwich",SSD:"\\bs\\w*.?sudan",ESP:"spain",LKA:"sri.?lanka|ceylon",SDN:"^(?!.*\\bs(?!u)).*sudan",SUR:"surinam|dutch.?guiana",SJM:"svalbard",SWZ:"swaziland",SWE:"sweden",CHE:"switz|swiss",SYR:"syria",TWN:"taiwan|taipei|formosa|^(?!.*peo)(?=.*rep).*china",TJK:"tajik",THA:"thailand|\\bsiam",MKD:"macedonia|fyrom",TLS:"^(?=.*leste).*timor|^(?=.*east).*timor",TGO:"togo",TKL:"tokelau",TON:"tonga",TTO:"trinidad|tobago",TUN:"tunisia",TUR:"turkey",TKM:"turkmen",TCA:"turks",TUV:"tuvalu",UGA:"uganda",UKR:"ukrain",ARE:"emirates|^u\\.?a\\.?e\\.?$|united.?arab.?em",GBR:"united.?kingdom|britain|^u\\.?k\\.?$",TZA:"tanzania",USA:"united.?states\\b(?!.*islands)|\\bu\\.?s\\.?a\\.?\\b|^\\s*u\\.?s\\.?\\b(?!.*islands)",UMI:"minor.?outlying.?is",URY:"uruguay",UZB:"uzbek",VUT:"vanuatu|new.?hebrides",VEN:"venezuela",VNM:"^(?!.*republic).*viet.?nam|^(?=.*socialist).*viet.?nam",VGB:"^(?=.*\\bu\\.?\\s?k).*virgin|^(?=.*brit).*virgin|^(?=.*kingdom).*virgin",VIR:"^(?=.*\\bu\\.?\\s?s).*virgin|^(?=.*states).*virgin",WLF:"futuna|wallis",ESH:"western.sahara",YEM:"^(?!.*arab)(?!.*north)(?!.*sana)(?!.*peo)(?!.*dem)(?!.*south)(?!.*aden)(?!.*\\bp\\.?d\\.?r).*yemen",YMD:"^(?=.*peo).*yemen|^(?!.*rep)(?=.*dem).*yemen|^(?=.*south).*yemen|^(?=.*aden).*yemen|^(?=.*\\bp\\.?d\\.?r).*yemen",YUG:"yugoslavia",ZMB:"zambia|northern.?rhodesia",EAZ:"zanzibar",ZWE:"zimbabwe|^(?!.*northern).*rhodesia"}});var dz=ye(ku=>{"use strict";Object.defineProperty(ku,"__esModule",{value:!0});var qp=63710088e-1,lX={centimeters:qp*100,centimetres:qp*100,degrees:360/(2*Math.PI),feet:qp*3.28084,inches:qp*39.37,kilometers:qp/1e3,kilometres:qp/1e3,meters:qp,metres:qp,miles:qp/1609.344,millimeters:qp*1e3,millimetres:qp*1e3,nauticalmiles:qp/1852,radians:1,yards:qp*1.0936},sX={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function ix(e,t,r={}){let n={type:"Feature"};return(r.id===0||r.id)&&(n.id=r.id),r.bbox&&(n.bbox=r.bbox),n.properties=t||{},n.geometry=e,n}function yRt(e,t,r={}){switch(e){case"Point":return uX(t).geometry;case"LineString":return fX(t).geometry;case"Polygon":return cX(t).geometry;case"MultiPoint":return q8e(t).geometry;case"MultiLineString":return F8e(t).geometry;case"MultiPolygon":return O8e(t).geometry;default:throw new Error(e+" is invalid")}}function uX(e,t,r={}){if(!e)throw new Error("coordinates is required");if(!Array.isArray(e))throw new Error("coordinates must be an Array");if(e.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!fz(e[0])||!fz(e[1]))throw new Error("coordinates must contain numbers");return ix({type:"Point",coordinates:e},t,r)}function _Rt(e,t,r={}){return hz(e.map(n=>uX(n,t)),r)}function cX(e,t,r={}){for(let i of e){if(i.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(i[i.length-1].length!==i[0].length)throw new Error("First and last Position are not equivalent.");for(let a=0;a<i[i.length-1].length;a++)if(i[i.length-1][a]!==i[0][a])throw new Error("First and last Position are not equivalent.")}return ix({type:"Polygon",coordinates:e},t,r)}function xRt(e,t,r={}){return hz(e.map(n=>cX(n,t)),r)}function fX(e,t,r={}){if(e.length<2)throw new Error("coordinates must be an array of two or more positions");return ix({type:"LineString",coordinates:e},t,r)}function bRt(e,t,r={}){return hz(e.map(n=>fX(n,t)),r)}function hz(e,t={}){let r={type:"FeatureCollection"};return t.id&&(r.id=t.id),t.bbox&&(r.bbox=t.bbox),r.features=e,r}function F8e(e,t,r={}){return ix({type:"MultiLineString",coordinates:e},t,r)}function q8e(e,t,r={}){return ix({type:"MultiPoint",coordinates:e},t,r)}function O8e(e,t,r={}){return ix({type:"MultiPolygon",coordinates:e},t,r)}function wRt(e,t,r={}){return ix({type:"GeometryCollection",geometries:e},t,r)}function TRt(e,t=0){if(t&&!(t>=0))throw new Error("precision must be a positive number");let r=Math.pow(10,t||0);return Math.round(e*r)/r}function B8e(e,t="kilometers"){let r=lX[t];if(!r)throw new Error(t+" units is invalid");return e*r}function hX(e,t="kilometers"){let r=lX[t];if(!r)throw new Error(t+" units is invalid");return e/r}function ARt(e,t){return N8e(hX(e,t))}function SRt(e){let t=e%360;return t<0&&(t+=360),t}function MRt(e){return e=e%360,e>0?e>180?e-360:e:e<-180?e+360:e}function N8e(e){return e%(2*Math.PI)*180/Math.PI}function ERt(e){return e%360*Math.PI/180}function kRt(e,t="kilometers",r="kilometers"){if(!(e>=0))throw new Error("length must be a positive number");return B8e(hX(e,t),r)}function CRt(e,t="meters",r="kilometers"){if(!(e>=0))throw new Error("area must be a positive number");let n=sX[t];if(!n)throw new Error("invalid original units");let i=sX[r];if(!i)throw new Error("invalid final units");return e/n*i}function fz(e){return!isNaN(e)&&e!==null&&!Array.isArray(e)}function LRt(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function PRt(e){if(!e)throw new Error("bbox is required");if(!Array.isArray(e))throw new Error("bbox must be an Array");if(e.length!==4&&e.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");e.forEach(t=>{if(!fz(t))throw new Error("bbox must only contain numbers")})}function IRt(e){if(!e)throw new Error("id is required");if(["string","number"].indexOf(typeof e)===-1)throw new Error("id must be a number or a string")}ku.areaFactors=sX;ku.azimuthToBearing=MRt;ku.bearingToAzimuth=SRt;ku.convertArea=CRt;ku.convertLength=kRt;ku.degreesToRadians=ERt;ku.earthRadius=qp;ku.factors=lX;ku.feature=ix;ku.featureCollection=hz;ku.geometry=yRt;ku.geometryCollection=wRt;ku.isNumber=fz;ku.isObject=LRt;ku.lengthToDegrees=ARt;ku.lengthToRadians=hX;ku.lineString=fX;ku.lineStrings=bRt;ku.multiLineString=F8e;ku.multiPoint=q8e;ku.multiPolygon=O8e;ku.point=uX;ku.points=_Rt;ku.polygon=cX;ku.polygons=xRt;ku.radiansToDegrees=N8e;ku.radiansToLength=B8e;ku.round=TRt;ku.validateBBox=PRt;ku.validateId=IRt});var pz=ye(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var jv=dz();function JE(e,t,r){if(e!==null)for(var n,i,a,o,s,l,u,c=0,f=0,h,d=e.type,v=d==="FeatureCollection",x=d==="Feature",b=v?e.features.length:1,p=0;p<b;p++){u=v?e.features[p].geometry:x?e.geometry:e,h=u?u.type==="GeometryCollection":!1,s=h?u.geometries.length:1;for(var E=0;E<s;E++){var k=0,A=0;if(o=h?u.geometries[E]:u,o!==null){l=o.coordinates;var L=o.type;switch(c=r&&(L==="Polygon"||L==="MultiPolygon")?1:0,L){case null:break;case"Point":if(t(l,f,p,k,A)===!1)return!1;f++,k++;break;case"LineString":case"MultiPoint":for(n=0;n<l.length;n++){if(t(l[n],f,p,k,A)===!1)return!1;f++,L==="MultiPoint"&&k++}L==="LineString"&&k++;break;case"Polygon":case"MultiLineString":for(n=0;n<l.length;n++){for(i=0;i<l[n].length-c;i++){if(t(l[n][i],f,p,k,A)===!1)return!1;f++}L==="MultiLineString"&&k++,L==="Polygon"&&A++}L==="Polygon"&&k++;break;case"MultiPolygon":for(n=0;n<l.length;n++){for(A=0,i=0;i<l[n].length;i++){for(a=0;a<l[n][i].length-c;a++){if(t(l[n][i][a],f,p,k,A)===!1)return!1;f++}A++}k++}break;case"GeometryCollection":for(n=0;n<o.geometries.length;n++)if(JE(o.geometries[n],t,r)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function RRt(e,t,r,n){var i=r;return JE(e,function(a,o,s,l,u){o===0&&r===void 0?i=a:i=t(i,a,o,s,l,u)},n),i}function U8e(e,t){var r;switch(e.type){case"FeatureCollection":for(r=0;r<e.features.length&&t(e.features[r].properties,r)!==!1;r++);break;case"Feature":t(e.properties,0);break}}function DRt(e,t,r){var n=r;return U8e(e,function(i,a){a===0&&r===void 0?n=i:n=t(n,i,a)}),n}function V8e(e,t){if(e.type==="Feature")t(e,0);else if(e.type==="FeatureCollection")for(var r=0;r<e.features.length&&t(e.features[r],r)!==!1;r++);}function zRt(e,t,r){var n=r;return V8e(e,function(i,a){a===0&&r===void 0?n=i:n=t(n,i,a)}),n}function FRt(e){var t=[];return JE(e,function(r){t.push(r)}),t}function dX(e,t){var r,n,i,a,o,s,l,u,c,f,h=0,d=e.type==="FeatureCollection",v=e.type==="Feature",x=d?e.features.length:1;for(r=0;r<x;r++){for(s=d?e.features[r].geometry:v?e.geometry:e,u=d?e.features[r].properties:v?e.properties:{},c=d?e.features[r].bbox:v?e.bbox:void 0,f=d?e.features[r].id:v?e.id:void 0,l=s?s.type==="GeometryCollection":!1,o=l?s.geometries.length:1,i=0;i<o;i++){if(a=l?s.geometries[i]:s,a===null){if(t(null,h,u,c,f)===!1)return!1;continue}switch(a.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(t(a,h,u,c,f)===!1)return!1;break}case"GeometryCollection":{for(n=0;n<a.geometries.length;n++)if(t(a.geometries[n],h,u,c,f)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}h++}}function qRt(e,t,r){var n=r;return dX(e,function(i,a,o,s,l){a===0&&r===void 0?n=i:n=t(n,i,a,o,s,l)}),n}function vz(e,t){dX(e,function(r,n,i,a,o){var s=r===null?null:r.type;switch(s){case null:case"Point":case"LineString":case"Polygon":return t(jv.feature.call(void 0,r,i,{bbox:a,id:o}),n,0)===!1?!1:void 0}var l;switch(s){case"MultiPoint":l="Point";break;case"MultiLineString":l="LineString";break;case"MultiPolygon":l="Polygon";break}for(var u=0;u<r.coordinates.length;u++){var c=r.coordinates[u],f={type:l,coordinates:c};if(t(jv.feature.call(void 0,f,i),n,u)===!1)return!1}})}function ORt(e,t,r){var n=r;return vz(e,function(i,a,o){a===0&&o===0&&r===void 0?n=i:n=t(n,i,a,o)}),n}function H8e(e,t){vz(e,function(r,n,i){var a=0;if(r.geometry){var o=r.geometry.type;if(!(o==="Point"||o==="MultiPoint")){var s,l=0,u=0,c=0;if(JE(r,function(f,h,d,v,x){if(s===void 0||n>l||v>u||x>c){s=f,l=n,u=v,c=x,a=0;return}var b=jv.lineString.call(void 0,[s,f],r.properties);if(t(b,n,i,x,a)===!1)return!1;a++,s=f})===!1)return!1}}})}function BRt(e,t,r){var n=r,i=!1;return H8e(e,function(a,o,s,l,u){i===!1&&r===void 0?n=a:n=t(n,a,o,s,l,u),i=!0}),n}function G8e(e,t){if(!e)throw new Error("geojson is required");vz(e,function(r,n,i){if(r.geometry!==null){var a=r.geometry.type,o=r.geometry.coordinates;switch(a){case"LineString":if(t(r,n,i,0,0)===!1)return!1;break;case"Polygon":for(var s=0;s<o.length;s++)if(t(jv.lineString.call(void 0,o[s],r.properties),n,i,s)===!1)return!1;break}}})}function NRt(e,t,r){var n=r;return G8e(e,function(i,a,o,s){a===0&&r===void 0?n=i:n=t(n,i,a,o,s)}),n}function URt(e,t){if(t=t||{},!jv.isObject.call(void 0,t))throw new Error("options is invalid");var r=t.featureIndex||0,n=t.multiFeatureIndex||0,i=t.geometryIndex||0,a=t.segmentIndex||0,o=t.properties,s;switch(e.type){case"FeatureCollection":r<0&&(r=e.features.length+r),o=o||e.features[r].properties,s=e.features[r].geometry;break;case"Feature":o=o||e.properties,s=e.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":s=e;break;default:throw new Error("geojson is invalid")}if(s===null)return null;var l=s.coordinates;switch(s.type){case"Point":case"MultiPoint":return null;case"LineString":return a<0&&(a=l.length+a-1),jv.lineString.call(void 0,[l[a],l[a+1]],o,t);case"Polygon":return i<0&&(i=l.length+i),a<0&&(a=l[i].length+a-1),jv.lineString.call(void 0,[l[i][a],l[i][a+1]],o,t);case"MultiLineString":return n<0&&(n=l.length+n),a<0&&(a=l[n].length+a-1),jv.lineString.call(void 0,[l[n][a],l[n][a+1]],o,t);case"MultiPolygon":return n<0&&(n=l.length+n),i<0&&(i=l[n].length+i),a<0&&(a=l[n][i].length-a-1),jv.lineString.call(void 0,[l[n][i][a],l[n][i][a+1]],o,t)}throw new Error("geojson is invalid")}function VRt(e,t){if(t=t||{},!jv.isObject.call(void 0,t))throw new Error("options is invalid");var r=t.featureIndex||0,n=t.multiFeatureIndex||0,i=t.geometryIndex||0,a=t.coordIndex||0,o=t.properties,s;switch(e.type){case"FeatureCollection":r<0&&(r=e.features.length+r),o=o||e.features[r].properties,s=e.features[r].geometry;break;case"Feature":o=o||e.properties,s=e.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":s=e;break;default:throw new Error("geojson is invalid")}if(s===null)return null;var l=s.coordinates;switch(s.type){case"Point":return jv.point.call(void 0,l,o,t);case"MultiPoint":return n<0&&(n=l.length+n),jv.point.call(void 0,l[n],o,t);case"LineString":return a<0&&(a=l.length+a),jv.point.call(void 0,l[a],o,t);case"Polygon":return i<0&&(i=l.length+i),a<0&&(a=l[i].length+a),jv.point.call(void 0,l[i][a],o,t);case"MultiLineString":return n<0&&(n=l.length+n),a<0&&(a=l[n].length+a),jv.point.call(void 0,l[n][a],o,t);case"MultiPolygon":return n<0&&(n=l.length+n),i<0&&(i=l[n].length+i),a<0&&(a=l[n][i].length-a),jv.point.call(void 0,l[n][i][a],o,t)}throw new Error("geojson is invalid")}Dd.coordAll=FRt;Dd.coordEach=JE;Dd.coordReduce=RRt;Dd.featureEach=V8e;Dd.featureReduce=zRt;Dd.findPoint=VRt;Dd.findSegment=URt;Dd.flattenEach=vz;Dd.flattenReduce=ORt;Dd.geomEach=dX;Dd.geomReduce=qRt;Dd.lineEach=G8e;Dd.lineReduce=NRt;Dd.propEach=U8e;Dd.propReduce=DRt;Dd.segmentEach=H8e;Dd.segmentReduce=BRt});var Y8e=ye(gz=>{"use strict";Object.defineProperty(gz,"__esModule",{value:!0});var j8e=dz(),HRt=pz();function X8e(e){return HRt.geomReduce.call(void 0,e,(t,r)=>t+GRt(r),0)}function GRt(e){let t=0,r;switch(e.type){case"Polygon":return W8e(e.coordinates);case"MultiPolygon":for(r=0;r<e.coordinates.length;r++)t+=W8e(e.coordinates[r]);return t;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function W8e(e){let t=0;if(e&&e.length>0){t+=Math.abs(Z8e(e[0]));for(let r=1;r<e.length;r++)t-=Math.abs(Z8e(e[r]))}return t}var jRt=j8e.earthRadius*j8e.earthRadius/2,vX=Math.PI/180;function Z8e(e){let t=e.length-1;if(t<=2)return 0;let r=0,n=0;for(;n<t;){let i=e[n],a=e[n+1===t?0:n+1],o=e[n+2>=t?(n+2)%t:n+2],s=i[0]*vX,l=a[1]*vX,u=o[0]*vX;r+=(u-s)*Math.sin(l),n++}return r*jRt}var WRt=X8e;gz.area=X8e;gz.default=WRt});var J8e=ye(mz=>{"use strict";Object.defineProperty(mz,"__esModule",{value:!0});var ZRt=dz(),XRt=pz();function K8e(e,t={}){let r=0,n=0,i=0;return XRt.coordEach.call(void 0,e,function(a){r+=a[0],n+=a[1],i++},!0),ZRt.point.call(void 0,[r/i,n/i],t.properties)}var YRt=K8e;mz.centroid=K8e;mz.default=YRt});var Q8e=ye(yz=>{"use strict";Object.defineProperty(yz,"__esModule",{value:!0});var KRt=pz();function $8e(e,t={}){if(e.bbox!=null&&t.recompute!==!0)return e.bbox;let r=[1/0,1/0,-1/0,-1/0];return KRt.coordEach.call(void 0,e,n=>{r[0]>n[0]&&(r[0]=n[0]),r[1]>n[1]&&(r[1]=n[1]),r[2]<n[0]&&(r[2]=n[0]),r[3]<n[1]&&(r[3]=n[1])}),r}var JRt=$8e;yz.bbox=$8e;yz.default=JRt});var nx=ye((kpr,nRe)=>{"use strict";var $Rt=xa(),rRe=z8e(),{area:QRt}=Y8e(),{centroid:eDt}=J8e(),{bbox:tDt}=Q8e(),eRe=OS(),W5=G1(),rDt=gy(),iDt=ES(),_z=wM(),tRe=Object.keys(rRe),nDt={"ISO-3":eRe,"USA-states":eRe,"country names":aDt};function aDt(e){for(var t=0;t<tRe.length;t++){var r=tRe[t],n=new RegExp(rRe[r]);if(n.test(e.trim().toLowerCase()))return r}return W5.log("Unrecognized country name: "+e+"."),!1}function oDt(e,t,r){if(!t||typeof t!="string")return!1;var n=nDt[e](t),i,a,o;if(n){if(e==="USA-states")for(i=[],o=0;o<r.length;o++)a=r[o],a.properties&&a.properties.gu&&a.properties.gu==="USA"&&i.push(a);else i=r;for(o=0;o<i.length;o++)if(a=i[o],a.id===n)return a;W5.log(["Location with id",n,"does not have a matching topojson feature at this resolution."].join(" "))}return!1}function sDt(e){var t=e.geometry,r=t.coordinates,n=e.id,i=[],a,o,s,l;function u(c){for(var f=0;f<c.length-1;f++)if(c[f][0]>0&&c[f+1][0]<0)return f;return null}switch(n==="RUS"||n==="FJI"?a=function(c){var f;if(u(c)===null)f=c;else for(f=new Array(c.length),l=0;l<c.length;l++)f[l]=[c[l][0]<0?c[l][0]+360:c[l][0],c[l][1]];i.push(_z.tester(f))}:n==="ATA"?a=function(c){var f=u(c);if(f===null)return i.push(_z.tester(c));var h=new Array(c.length+1),d=0;for(l=0;l<c.length;l++)l>f?h[d++]=[c[l][0]+360,c[l][1]]:l===f?(h[d++]=c[l],h[d++]=[c[l][0],-90]):h[d++]=c[l];var v=_z.tester(h);v.pts.pop(),i.push(v)}:a=function(c){i.push(_z.tester(c))},t.type){case"MultiPolygon":for(o=0;o<r.length;o++)for(s=0;s<r[o].length;s++)a(r[o][s]);break;case"Polygon":for(o=0;o<r.length;o++)a(r[o]);break}return i}function iRe(e){var t=e.geojson,r=window.PlotlyGeoAssets||{},n=typeof t=="string"?r[t]:t;return rDt(n)?n:(W5.error("Oops ... something went wrong when fetching "+t),!1)}function lDt(e){var t=e[0].trace,r=iRe(t);if(!r)return!1;var n={},i=[],a;for(a=0;a<t._length;a++){var o=e[a];(o.loc||o.loc===0)&&(n[o.loc]=o)}function s(c){var f=iDt(c,t.featureidkey||"id").get(),h=n[f];if(h){var d=c.geometry;if(d.type==="Polygon"||d.type==="MultiPolygon"){var v={type:"Feature",id:f,geometry:d,properties:{}};v.geometry.coordinates.length>0?v.properties.ct=uDt(v):v.properties.ct=[NaN,NaN],h.fIn=c,h.fOut=v,i.push(v)}else W5.log(["Location",h.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete n[f]}switch(r.type){case"FeatureCollection":var l=r.features;for(a=0;a<l.length;a++)s(l[a]);break;case"Feature":s(r);break;default:return W5.warn(["Invalid GeoJSON type",(r.type||"none")+".","Traces with locationmode *geojson-id* only support","*FeatureCollection* and *Feature* types."].join(" ")),!1}for(var u in n)W5.log(["Location *"+u+"*","does not have a matching feature with id-key","*"+t.featureidkey+"*."].join(" "));return i}function uDt(e){var t=e.geometry,r;if(t.type==="MultiPolygon")for(var n=t.coordinates,i=0,a=0;a<n.length;a++){var o={type:"Polygon",coordinates:n[a]},s=QRt(o);s>i&&(i=s,r=o)}else r=t;return eDt(r).geometry.coordinates}function cDt(e){var t=window.PlotlyGeoAssets||{},r=[];function n(l){return new Promise(function(u,c){$Rt.json(l,function(f,h){if(f){delete t[l];var d=f.status===404?'GeoJSON at URL "'+l+'" does not exist.':"Unexpected error while fetching from "+l;return c(new Error(d))}return t[l]=h,u(h)})})}function i(l){return new Promise(function(u,c){var f=0,h=setInterval(function(){if(t[l]&&t[l]!=="pending")return clearInterval(h),u(t[l]);if(f>100)return clearInterval(h),c("Unexpected error while fetching from "+l);f++},50)})}for(var a=0;a<e.length;a++){var o=e[a][0].trace,s=o.geojson;typeof s=="string"&&(t[s]?t[s]==="pending"&&r.push(i(s)):(t[s]="pending",r.push(n(s))))}return r}function fDt(e){return tDt(e)}nRe.exports={locationToFeature:oDt,feature2polygons:sDt,getTraceGeojson:iRe,extractTraceFeature:lDt,fetchTraceGeoData:cDt,computeBbox:fDt}});var pX=ye((Cpr,sRe)=>{"use strict";var hDt=xa(),dDt=ao(),aRe=va(),oRe=op(),vDt=oRe.stylePoints,pDt=oRe.styleText;sRe.exports=function(t,r){r&&gDt(t,r)};function gDt(e,t){var r=t[0].trace,n=t[0].node3;n.style("opacity",t[0].trace.opacity),vDt(n,r,e),pDt(n,r,e),n.selectAll("path.js-line").style("fill","none").each(function(i){var a=hDt.select(this),o=i.trace,s=o.line||{};a.call(aRe.stroke,s.color).call(dDt.dashLine,s.dash||"",s.width||0),o.fill!=="none"&&a.call(aRe.fill,o.fillcolor)})}});var _X=ye((Lpr,cRe)=>{"use strict";var lRe=xa(),bz=Mr(),mDt=cz().getTopojsonFeatures,gX=rx(),xz=nx(),uRe=wg().findExtremes,yX=es().BADNUM,yDt=q0().calcMarkerSize,mX=lu(),_Dt=pX();function xDt(e,t,r){var n=t.layers.frontplot.select(".scatterlayer"),i=bz.makeTraceGroups(n,r,"trace scattergeo");function a(o,s){o.lonlat[0]===yX&&lRe.select(s).remove()}i.selectAll("*").remove(),i.each(function(o){var s=lRe.select(this),l=o[0].trace;if(mX.hasLines(l)||l.fill!=="none"){var u=gX.calcTraceToLineCoords(o),c=l.fill!=="none"?gX.makePolygon(u):gX.makeLine(u);s.selectAll("path.js-line").data([{geojson:c,trace:l}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}mX.hasMarkers(l)&&s.selectAll("path.point").data(bz.identity).enter().append("path").classed("point",!0).each(function(f){a(f,this)}),mX.hasText(l)&&s.selectAll("g").data(bz.identity).enter().append("g").append("text").each(function(f){a(f,this)}),_Dt(e,o)})}function bDt(e,t){var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r._length,o,s;if(bz.isArrayOrTypedArray(r.locations)){var l=r.locationmode,u=l==="geojson-id"?xz.extractTraceFeature(e):mDt(r,i.topojson);for(o=0;o<a;o++){s=e[o];var c=l==="geojson-id"?s.fOut:xz.locationToFeature(l,s.loc,u);s.lonlat=c?c.properties.ct:[yX,yX]}}var f={padded:!0},h,d;if(n.fitbounds==="geojson"&&r.locationmode==="geojson-id"){var v=xz.computeBbox(xz.getTraceGeojson(r));h=[v[0],v[2]],d=[v[1],v[3]]}else{for(h=new Array(a),d=new Array(a),o=0;o<a;o++)s=e[o],h[o]=s.lonlat[0],d[o]=s.lonlat[1];f.ppad=yDt(r,a)}r._extremes.lon=uRe(n.lonaxis._ax,h,f),r._extremes.lat=uRe(n.lataxis._ax,d,f)}cRe.exports={calcGeoJSON:bDt,plot:xDt}});var hRe=ye((Ppr,fRe)=>{"use strict";var wDt=Nc(),TDt=es().BADNUM,ADt=oT(),SDt=Mr().fillText,MDt=H2();fRe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.xa,s=t.ya,l=t.subplot,u=l.projection.isLonLatOverEdges,c=l.project;function f(E){var k=E.lonlat;if(k[0]===TDt||u(k))return 1/0;var A=c(k),L=c([r,n]),_=Math.abs(A[0]-L[0]),C=Math.abs(A[1]-L[1]),M=Math.max(3,E.mrc||0);return Math.max(Math.sqrt(_*_+C*C)-M,1-3/M)}if(wDt.getClosest(i,f,t),t.index!==!1){var h=i[t.index],d=h.lonlat,v=[o.c2p(d),s.c2p(d)],x=h.mrc||1;t.x0=v[0]-x,t.x1=v[0]+x,t.y0=v[1]-x,t.y1=v[1]+x,t.loc=h.loc,t.lon=d[0],t.lat=d[1];var b={};b[a.geo]={_subplot:l};var p=a._module.formatLabels(h,a,b);return t.lonLabel=p.lonLabel,t.latLabel=p.latLabel,t.color=ADt(a,h),t.extraText=EDt(a,h,t,i[0].t.labels),t.hovertemplate=a.hovertemplate,[t]}};function EDt(e,t,r,n){if(e.hovertemplate)return;var i=t.hi||e.hoverinfo,a=i==="all"?MDt.hoverinfo.flags:i.split("+"),o=a.indexOf("location")!==-1&&Array.isArray(e.locations),s=a.indexOf("lon")!==-1,l=a.indexOf("lat")!==-1,u=a.indexOf("text")!==-1,c=[];function f(h){return h+"\xB0"}return o?c.push(t.loc):s&&l?c.push("("+f(r.latLabel)+", "+f(r.lonLabel)+")"):s?c.push(n.lon+f(r.lonLabel)):l&&c.push(n.lat+f(r.latLabel)),u&&SDt(t,e,c),c.join("<br>")}});var vRe=ye((Ipr,dRe)=>{"use strict";dRe.exports=function(t,r,n,i,a){t.lon=r.lon,t.lat=r.lat,t.location=r.loc?r.loc:null;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t}});var mRe=ye((Rpr,gRe)=>{"use strict";var pRe=lu(),kDt=es().BADNUM;gRe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l,u,c,f,h,d=!pRe.hasMarkers(s)&&!pRe.hasText(s);if(d)return[];if(r===!1)for(h=0;h<n.length;h++)n[h].selected=0;else for(h=0;h<n.length;h++)l=n[h],u=l.lonlat,u[0]!==kDt&&(c=i.c2p(u),f=a.c2p(u),r.contains([c,f],null,h,t)?(o.push({pointNumber:h,lon:u[0],lat:u[1]}),l.selected=1):l.selected=0);return o}});var $E=ye((wz,yRe)=>{(function(e,t){t(typeof wz=="object"&&typeof yRe!="undefined"?wz:e.d3=e.d3||{})})(wz,function(e){"use strict";function t(Ee,Ae){return Ee<Ae?-1:Ee>Ae?1:Ee>=Ae?0:NaN}function r(Ee){return Ee.length===1&&(Ee=n(Ee)),{left:function(Ae,ze,Ce,me){for(Ce==null&&(Ce=0),me==null&&(me=Ae.length);Ce<me;){var Re=Ce+me>>>1;Ee(Ae[Re],ze)<0?Ce=Re+1:me=Re}return Ce},right:function(Ae,ze,Ce,me){for(Ce==null&&(Ce=0),me==null&&(me=Ae.length);Ce<me;){var Re=Ce+me>>>1;Ee(Ae[Re],ze)>0?me=Re:Ce=Re+1}return Ce}}}function n(Ee){return function(Ae,ze){return t(Ee(Ae),ze)}}var i=r(t),a=i.right,o=i.left;function s(Ee,Ae){Ae==null&&(Ae=l);for(var ze=0,Ce=Ee.length-1,me=Ee[0],Re=new Array(Ce<0?0:Ce);ze<Ce;)Re[ze]=Ae(me,me=Ee[++ze]);return Re}function l(Ee,Ae){return[Ee,Ae]}function u(Ee,Ae,ze){var Ce=Ee.length,me=Ae.length,Re=new Array(Ce*me),ce,Ge,nt,ct;for(ze==null&&(ze=l),ce=nt=0;ce<Ce;++ce)for(ct=Ee[ce],Ge=0;Ge<me;++Ge,++nt)Re[nt]=ze(ct,Ae[Ge]);return Re}function c(Ee,Ae){return Ae<Ee?-1:Ae>Ee?1:Ae>=Ee?0:NaN}function f(Ee){return Ee===null?NaN:+Ee}function h(Ee,Ae){var ze=Ee.length,Ce=0,me=-1,Re=0,ce,Ge,nt=0;if(Ae==null)for(;++me<ze;)isNaN(ce=f(Ee[me]))||(Ge=ce-Re,Re+=Ge/++Ce,nt+=Ge*(ce-Re));else for(;++me<ze;)isNaN(ce=f(Ae(Ee[me],me,Ee)))||(Ge=ce-Re,Re+=Ge/++Ce,nt+=Ge*(ce-Re));if(Ce>1)return nt/(Ce-1)}function d(Ee,Ae){var ze=h(Ee,Ae);return ze&&Math.sqrt(ze)}function v(Ee,Ae){var ze=Ee.length,Ce=-1,me,Re,ce;if(Ae==null){for(;++Ce<ze;)if((me=Ee[Ce])!=null&&me>=me)for(Re=ce=me;++Ce<ze;)(me=Ee[Ce])!=null&&(Re>me&&(Re=me),ce<me&&(ce=me))}else for(;++Ce<ze;)if((me=Ae(Ee[Ce],Ce,Ee))!=null&&me>=me)for(Re=ce=me;++Ce<ze;)(me=Ae(Ee[Ce],Ce,Ee))!=null&&(Re>me&&(Re=me),ce<me&&(ce=me));return[Re,ce]}var x=Array.prototype,b=x.slice,p=x.map;function E(Ee){return function(){return Ee}}function k(Ee){return Ee}function A(Ee,Ae,ze){Ee=+Ee,Ae=+Ae,ze=(me=arguments.length)<2?(Ae=Ee,Ee=0,1):me<3?1:+ze;for(var Ce=-1,me=Math.max(0,Math.ceil((Ae-Ee)/ze))|0,Re=new Array(me);++Ce<me;)Re[Ce]=Ee+Ce*ze;return Re}var L=Math.sqrt(50),_=Math.sqrt(10),C=Math.sqrt(2);function M(Ee,Ae,ze){var Ce,me=-1,Re,ce,Ge;if(Ae=+Ae,Ee=+Ee,ze=+ze,Ee===Ae&&ze>0)return[Ee];if((Ce=Ae<Ee)&&(Re=Ee,Ee=Ae,Ae=Re),(Ge=g(Ee,Ae,ze))===0||!isFinite(Ge))return[];if(Ge>0)for(Ee=Math.ceil(Ee/Ge),Ae=Math.floor(Ae/Ge),ce=new Array(Re=Math.ceil(Ae-Ee+1));++me<Re;)ce[me]=(Ee+me)*Ge;else for(Ee=Math.floor(Ee*Ge),Ae=Math.ceil(Ae*Ge),ce=new Array(Re=Math.ceil(Ee-Ae+1));++me<Re;)ce[me]=(Ee-me)/Ge;return Ce&&ce.reverse(),ce}function g(Ee,Ae,ze){var Ce=(Ae-Ee)/Math.max(0,ze),me=Math.floor(Math.log(Ce)/Math.LN10),Re=Ce/Math.pow(10,me);return me>=0?(Re>=L?10:Re>=_?5:Re>=C?2:1)*Math.pow(10,me):-Math.pow(10,-me)/(Re>=L?10:Re>=_?5:Re>=C?2:1)}function P(Ee,Ae,ze){var Ce=Math.abs(Ae-Ee)/Math.max(0,ze),me=Math.pow(10,Math.floor(Math.log(Ce)/Math.LN10)),Re=Ce/me;return Re>=L?me*=10:Re>=_?me*=5:Re>=C&&(me*=2),Ae<Ee?-me:me}function T(Ee){return Math.ceil(Math.log(Ee.length)/Math.LN2)+1}function F(){var Ee=k,Ae=v,ze=T;function Ce(me){var Re,ce=me.length,Ge,nt=new Array(ce);for(Re=0;Re<ce;++Re)nt[Re]=Ee(me[Re],Re,me);var ct=Ae(nt),qt=ct[0],rt=ct[1],ot=ze(nt,qt,rt);Array.isArray(ot)||(ot=P(qt,rt,ot),ot=A(Math.ceil(qt/ot)*ot,rt,ot));for(var Rt=ot.length;ot[0]<=qt;)ot.shift(),--Rt;for(;ot[Rt-1]>rt;)ot.pop(),--Rt;var kt=new Array(Rt+1),Ct;for(Re=0;Re<=Rt;++Re)Ct=kt[Re]=[],Ct.x0=Re>0?ot[Re-1]:qt,Ct.x1=Re<Rt?ot[Re]:rt;for(Re=0;Re<ce;++Re)Ge=nt[Re],qt<=Ge&&Ge<=rt&&kt[a(ot,Ge,0,Rt)].push(me[Re]);return kt}return Ce.value=function(me){return arguments.length?(Ee=typeof me=="function"?me:E(me),Ce):Ee},Ce.domain=function(me){return arguments.length?(Ae=typeof me=="function"?me:E([me[0],me[1]]),Ce):Ae},Ce.thresholds=function(me){return arguments.length?(ze=typeof me=="function"?me:Array.isArray(me)?E(b.call(me)):E(me),Ce):ze},Ce}function q(Ee,Ae,ze){if(ze==null&&(ze=f),!!(Ce=Ee.length)){if((Ae=+Ae)<=0||Ce<2)return+ze(Ee[0],0,Ee);if(Ae>=1)return+ze(Ee[Ce-1],Ce-1,Ee);var Ce,me=(Ce-1)*Ae,Re=Math.floor(me),ce=+ze(Ee[Re],Re,Ee),Ge=+ze(Ee[Re+1],Re+1,Ee);return ce+(Ge-ce)*(me-Re)}}function V(Ee,Ae,ze){return Ee=p.call(Ee,f).sort(t),Math.ceil((ze-Ae)/(2*(q(Ee,.75)-q(Ee,.25))*Math.pow(Ee.length,-1/3)))}function H(Ee,Ae,ze){return Math.ceil((ze-Ae)/(3.5*d(Ee)*Math.pow(Ee.length,-1/3)))}function X(Ee,Ae){var ze=Ee.length,Ce=-1,me,Re;if(Ae==null){for(;++Ce<ze;)if((me=Ee[Ce])!=null&&me>=me)for(Re=me;++Ce<ze;)(me=Ee[Ce])!=null&&me>Re&&(Re=me)}else for(;++Ce<ze;)if((me=Ae(Ee[Ce],Ce,Ee))!=null&&me>=me)for(Re=me;++Ce<ze;)(me=Ae(Ee[Ce],Ce,Ee))!=null&&me>Re&&(Re=me);return Re}function G(Ee,Ae){var ze=Ee.length,Ce=ze,me=-1,Re,ce=0;if(Ae==null)for(;++me<ze;)isNaN(Re=f(Ee[me]))?--Ce:ce+=Re;else for(;++me<ze;)isNaN(Re=f(Ae(Ee[me],me,Ee)))?--Ce:ce+=Re;if(Ce)return ce/Ce}function N(Ee,Ae){var ze=Ee.length,Ce=-1,me,Re=[];if(Ae==null)for(;++Ce<ze;)isNaN(me=f(Ee[Ce]))||Re.push(me);else for(;++Ce<ze;)isNaN(me=f(Ae(Ee[Ce],Ce,Ee)))||Re.push(me);return q(Re.sort(t),.5)}function W(Ee){for(var Ae=Ee.length,ze,Ce=-1,me=0,Re,ce;++Ce<Ae;)me+=Ee[Ce].length;for(Re=new Array(me);--Ae>=0;)for(ce=Ee[Ae],ze=ce.length;--ze>=0;)Re[--me]=ce[ze];return Re}function re(Ee,Ae){var ze=Ee.length,Ce=-1,me,Re;if(Ae==null){for(;++Ce<ze;)if((me=Ee[Ce])!=null&&me>=me)for(Re=me;++Ce<ze;)(me=Ee[Ce])!=null&&Re>me&&(Re=me)}else for(;++Ce<ze;)if((me=Ae(Ee[Ce],Ce,Ee))!=null&&me>=me)for(Re=me;++Ce<ze;)(me=Ae(Ee[Ce],Ce,Ee))!=null&&Re>me&&(Re=me);return Re}function ae(Ee,Ae){for(var ze=Ae.length,Ce=new Array(ze);ze--;)Ce[ze]=Ee[Ae[ze]];return Ce}function _e(Ee,Ae){if(ze=Ee.length){var ze,Ce=0,me=0,Re,ce=Ee[me];for(Ae==null&&(Ae=t);++Ce<ze;)(Ae(Re=Ee[Ce],ce)<0||Ae(ce,ce)!==0)&&(ce=Re,me=Ce);if(Ae(ce,ce)===0)return me}}function Me(Ee,Ae,ze){for(var Ce=(ze==null?Ee.length:ze)-(Ae=Ae==null?0:+Ae),me,Re;Ce;)Re=Math.random()*Ce--|0,me=Ee[Ce+Ae],Ee[Ce+Ae]=Ee[Re+Ae],Ee[Re+Ae]=me;return Ee}function ke(Ee,Ae){var ze=Ee.length,Ce=-1,me,Re=0;if(Ae==null)for(;++Ce<ze;)(me=+Ee[Ce])&&(Re+=me);else for(;++Ce<ze;)(me=+Ae(Ee[Ce],Ce,Ee))&&(Re+=me);return Re}function ge(Ee){if(!(Re=Ee.length))return[];for(var Ae=-1,ze=re(Ee,ie),Ce=new Array(ze);++Ae<ze;)for(var me=-1,Re,ce=Ce[Ae]=new Array(Re);++me<Re;)ce[me]=Ee[me][Ae];return Ce}function ie(Ee){return Ee.length}function Te(){return ge(arguments)}e.bisect=a,e.bisectRight=a,e.bisectLeft=o,e.ascending=t,e.bisector=r,e.cross=u,e.descending=c,e.deviation=d,e.extent=v,e.histogram=F,e.thresholdFreedmanDiaconis=V,e.thresholdScott=H,e.thresholdSturges=T,e.max=X,e.mean=G,e.median=N,e.merge=W,e.min=re,e.pairs=s,e.permute=ae,e.quantile=q,e.range=A,e.scan=_e,e.shuffle=Me,e.sum=ke,e.ticks=M,e.tickIncrement=g,e.tickStep=P,e.transpose=ge,e.variance=h,e.zip=Te,Object.defineProperty(e,"__esModule",{value:!0})})});var xX=ye((Tz,_Re)=>{(function(e,t){typeof Tz=="object"&&typeof _Re!="undefined"?t(Tz,$E()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(Tz,function(e,t){"use strict";function r(){return new n}function n(){this.reset()}n.prototype={constructor:n,reset:function(){this.s=this.t=0},add:function(gt){a(i,gt,this.t),a(this,i.s,this.s),this.s?this.t+=i.t:this.s=i.t},valueOf:function(){return this.s}};var i=new n;function a(gt,Bt,wr){var vr=gt.s=Bt+wr,Ur=vr-Bt,fi=vr-Ur;gt.t=Bt-fi+(wr-Ur)}var o=1e-6,s=1e-12,l=Math.PI,u=l/2,c=l/4,f=l*2,h=180/l,d=l/180,v=Math.abs,x=Math.atan,b=Math.atan2,p=Math.cos,E=Math.ceil,k=Math.exp,A=Math.log,L=Math.pow,_=Math.sin,C=Math.sign||function(gt){return gt>0?1:gt<0?-1:0},M=Math.sqrt,g=Math.tan;function P(gt){return gt>1?0:gt<-1?l:Math.acos(gt)}function T(gt){return gt>1?u:gt<-1?-u:Math.asin(gt)}function F(gt){return(gt=_(gt/2))*gt}function q(){}function V(gt,Bt){gt&&X.hasOwnProperty(gt.type)&&X[gt.type](gt,Bt)}var H={Feature:function(gt,Bt){V(gt.geometry,Bt)},FeatureCollection:function(gt,Bt){for(var wr=gt.features,vr=-1,Ur=wr.length;++vr<Ur;)V(wr[vr].geometry,Bt)}},X={Sphere:function(gt,Bt){Bt.sphere()},Point:function(gt,Bt){gt=gt.coordinates,Bt.point(gt[0],gt[1],gt[2])},MultiPoint:function(gt,Bt){for(var wr=gt.coordinates,vr=-1,Ur=wr.length;++vr<Ur;)gt=wr[vr],Bt.point(gt[0],gt[1],gt[2])},LineString:function(gt,Bt){G(gt.coordinates,Bt,0)},MultiLineString:function(gt,Bt){for(var wr=gt.coordinates,vr=-1,Ur=wr.length;++vr<Ur;)G(wr[vr],Bt,0)},Polygon:function(gt,Bt){N(gt.coordinates,Bt)},MultiPolygon:function(gt,Bt){for(var wr=gt.coordinates,vr=-1,Ur=wr.length;++vr<Ur;)N(wr[vr],Bt)},GeometryCollection:function(gt,Bt){for(var wr=gt.geometries,vr=-1,Ur=wr.length;++vr<Ur;)V(wr[vr],Bt)}};function G(gt,Bt,wr){var vr=-1,Ur=gt.length-wr,fi;for(Bt.lineStart();++vr<Ur;)fi=gt[vr],Bt.point(fi[0],fi[1],fi[2]);Bt.lineEnd()}function N(gt,Bt){var wr=-1,vr=gt.length;for(Bt.polygonStart();++wr<vr;)G(gt[wr],Bt,1);Bt.polygonEnd()}function W(gt,Bt){gt&&H.hasOwnProperty(gt.type)?H[gt.type](gt,Bt):V(gt,Bt)}var re=r(),ae=r(),_e,Me,ke,ge,ie,Te={point:q,lineStart:q,lineEnd:q,polygonStart:function(){re.reset(),Te.lineStart=Ee,Te.lineEnd=Ae},polygonEnd:function(){var gt=+re;ae.add(gt<0?f+gt:gt),this.lineStart=this.lineEnd=this.point=q},sphere:function(){ae.add(f)}};function Ee(){Te.point=ze}function Ae(){Ce(_e,Me)}function ze(gt,Bt){Te.point=Ce,_e=gt,Me=Bt,gt*=d,Bt*=d,ke=gt,ge=p(Bt=Bt/2+c),ie=_(Bt)}function Ce(gt,Bt){gt*=d,Bt*=d,Bt=Bt/2+c;var wr=gt-ke,vr=wr>=0?1:-1,Ur=vr*wr,fi=p(Bt),xi=_(Bt),Fi=ie*xi,Xi=ge*fi+Fi*p(Ur),hn=Fi*vr*_(Ur);re.add(b(hn,Xi)),ke=gt,ge=fi,ie=xi}function me(gt){return ae.reset(),W(gt,Te),ae*2}function Re(gt){return[b(gt[1],gt[0]),T(gt[2])]}function ce(gt){var Bt=gt[0],wr=gt[1],vr=p(wr);return[vr*p(Bt),vr*_(Bt),_(wr)]}function Ge(gt,Bt){return gt[0]*Bt[0]+gt[1]*Bt[1]+gt[2]*Bt[2]}function nt(gt,Bt){return[gt[1]*Bt[2]-gt[2]*Bt[1],gt[2]*Bt[0]-gt[0]*Bt[2],gt[0]*Bt[1]-gt[1]*Bt[0]]}function ct(gt,Bt){gt[0]+=Bt[0],gt[1]+=Bt[1],gt[2]+=Bt[2]}function qt(gt,Bt){return[gt[0]*Bt,gt[1]*Bt,gt[2]*Bt]}function rt(gt){var Bt=M(gt[0]*gt[0]+gt[1]*gt[1]+gt[2]*gt[2]);gt[0]/=Bt,gt[1]/=Bt,gt[2]/=Bt}var ot,Rt,kt,Ct,Yt,xr,er,Ke,xt=r(),bt,Lt,St={point:Et,lineStart:Ht,lineEnd:$t,polygonStart:function(){St.point=fr,St.lineStart=_r,St.lineEnd=Br,xt.reset(),Te.polygonStart()},polygonEnd:function(){Te.polygonEnd(),St.point=Et,St.lineStart=Ht,St.lineEnd=$t,re<0?(ot=-(kt=180),Rt=-(Ct=90)):xt>o?Ct=90:xt<-o&&(Rt=-90),Lt[0]=ot,Lt[1]=kt},sphere:function(){ot=-(kt=180),Rt=-(Ct=90)}};function Et(gt,Bt){bt.push(Lt=[ot=gt,kt=gt]),Bt<Rt&&(Rt=Bt),Bt>Ct&&(Ct=Bt)}function dt(gt,Bt){var wr=ce([gt*d,Bt*d]);if(Ke){var vr=nt(Ke,wr),Ur=[vr[1],-vr[0],0],fi=nt(Ur,vr);rt(fi),fi=Re(fi);var xi=gt-Yt,Fi=xi>0?1:-1,Xi=fi[0]*h*Fi,hn,Ti=v(xi)>180;Ti^(Fi*Yt<Xi&&Xi<Fi*gt)?(hn=fi[1]*h,hn>Ct&&(Ct=hn)):(Xi=(Xi+360)%360-180,Ti^(Fi*Yt<Xi&&Xi<Fi*gt)?(hn=-fi[1]*h,hn<Rt&&(Rt=hn)):(Bt<Rt&&(Rt=Bt),Bt>Ct&&(Ct=Bt))),Ti?gt<Yt?Or(ot,gt)>Or(ot,kt)&&(kt=gt):Or(gt,kt)>Or(ot,kt)&&(ot=gt):kt>=ot?(gt<ot&&(ot=gt),gt>kt&&(kt=gt)):gt>Yt?Or(ot,gt)>Or(ot,kt)&&(kt=gt):Or(gt,kt)>Or(ot,kt)&&(ot=gt)}else bt.push(Lt=[ot=gt,kt=gt]);Bt<Rt&&(Rt=Bt),Bt>Ct&&(Ct=Bt),Ke=wr,Yt=gt}function Ht(){St.point=dt}function $t(){Lt[0]=ot,Lt[1]=kt,St.point=Et,Ke=null}function fr(gt,Bt){if(Ke){var wr=gt-Yt;xt.add(v(wr)>180?wr+(wr>0?360:-360):wr)}else xr=gt,er=Bt;Te.point(gt,Bt),dt(gt,Bt)}function _r(){Te.lineStart()}function Br(){fr(xr,er),Te.lineEnd(),v(xt)>o&&(ot=-(kt=180)),Lt[0]=ot,Lt[1]=kt,Ke=null}function Or(gt,Bt){return(Bt-=gt)<0?Bt+360:Bt}function Nr(gt,Bt){return gt[0]-Bt[0]}function ut(gt,Bt){return gt[0]<=gt[1]?gt[0]<=Bt&&Bt<=gt[1]:Bt<gt[0]||gt[1]<Bt}function Ne(gt){var Bt,wr,vr,Ur,fi,xi,Fi;if(Ct=kt=-(ot=Rt=1/0),bt=[],W(gt,St),wr=bt.length){for(bt.sort(Nr),Bt=1,vr=bt[0],fi=[vr];Bt<wr;++Bt)Ur=bt[Bt],ut(vr,Ur[0])||ut(vr,Ur[1])?(Or(vr[0],Ur[1])>Or(vr[0],vr[1])&&(vr[1]=Ur[1]),Or(Ur[0],vr[1])>Or(vr[0],vr[1])&&(vr[0]=Ur[0])):fi.push(vr=Ur);for(xi=-1/0,wr=fi.length-1,Bt=0,vr=fi[wr];Bt<=wr;vr=Ur,++Bt)Ur=fi[Bt],(Fi=Or(vr[1],Ur[0]))>xi&&(xi=Fi,ot=Ur[0],kt=vr[1])}return bt=Lt=null,ot===1/0||Rt===1/0?[[NaN,NaN],[NaN,NaN]]:[[ot,Rt],[kt,Ct]]}var Ye,Ve,Xe,ht,Le,xe,Se,lt,Gt,Vt,ar,Qr,ai,jr,ri,bi,nn={sphere:q,point:Wi,lineStart:_n,lineEnd:Wn,polygonStart:function(){nn.lineStart=It,nn.lineEnd=ft},polygonEnd:function(){nn.lineStart=_n,nn.lineEnd=Wn}};function Wi(gt,Bt){gt*=d,Bt*=d;var wr=p(Bt);Ni(wr*p(gt),wr*_(gt),_(Bt))}function Ni(gt,Bt,wr){++Ye,Xe+=(gt-Xe)/Ye,ht+=(Bt-ht)/Ye,Le+=(wr-Le)/Ye}function _n(){nn.point=$i}function $i(gt,Bt){gt*=d,Bt*=d;var wr=p(Bt);jr=wr*p(gt),ri=wr*_(gt),bi=_(Bt),nn.point=zn,Ni(jr,ri,bi)}function zn(gt,Bt){gt*=d,Bt*=d;var wr=p(Bt),vr=wr*p(gt),Ur=wr*_(gt),fi=_(Bt),xi=b(M((xi=ri*fi-bi*Ur)*xi+(xi=bi*vr-jr*fi)*xi+(xi=jr*Ur-ri*vr)*xi),jr*vr+ri*Ur+bi*fi);Ve+=xi,xe+=xi*(jr+(jr=vr)),Se+=xi*(ri+(ri=Ur)),lt+=xi*(bi+(bi=fi)),Ni(jr,ri,bi)}function Wn(){nn.point=Wi}function It(){nn.point=jt}function ft(){Zt(Qr,ai),nn.point=Wi}function jt(gt,Bt){Qr=gt,ai=Bt,gt*=d,Bt*=d,nn.point=Zt;var wr=p(Bt);jr=wr*p(gt),ri=wr*_(gt),bi=_(Bt),Ni(jr,ri,bi)}function Zt(gt,Bt){gt*=d,Bt*=d;var wr=p(Bt),vr=wr*p(gt),Ur=wr*_(gt),fi=_(Bt),xi=ri*fi-bi*Ur,Fi=bi*vr-jr*fi,Xi=jr*Ur-ri*vr,hn=M(xi*xi+Fi*Fi+Xi*Xi),Ti=T(hn),qi=hn&&-Ti/hn;Gt+=qi*xi,Vt+=qi*Fi,ar+=qi*Xi,Ve+=Ti,xe+=Ti*(jr+(jr=vr)),Se+=Ti*(ri+(ri=Ur)),lt+=Ti*(bi+(bi=fi)),Ni(jr,ri,bi)}function yr(gt){Ye=Ve=Xe=ht=Le=xe=Se=lt=Gt=Vt=ar=0,W(gt,nn);var Bt=Gt,wr=Vt,vr=ar,Ur=Bt*Bt+wr*wr+vr*vr;return Ur<s&&(Bt=xe,wr=Se,vr=lt,Ve<o&&(Bt=Xe,wr=ht,vr=Le),Ur=Bt*Bt+wr*wr+vr*vr,Ur<s)?[NaN,NaN]:[b(wr,Bt)*h,T(vr/M(Ur))*h]}function Fr(gt){return function(){return gt}}function Zr(gt,Bt){function wr(vr,Ur){return vr=gt(vr,Ur),Bt(vr[0],vr[1])}return gt.invert&&Bt.invert&&(wr.invert=function(vr,Ur){return vr=Bt.invert(vr,Ur),vr&&gt.invert(vr[0],vr[1])}),wr}function Vr(gt,Bt){return[v(gt)>l?gt+Math.round(-gt/f)*f:gt,Bt]}Vr.invert=Vr;function gi(gt,Bt,wr){return(gt%=f)?Bt||wr?Zr(Mi(gt),Pi(Bt,wr)):Mi(gt):Bt||wr?Pi(Bt,wr):Vr}function Si(gt){return function(Bt,wr){return Bt+=gt,[Bt>l?Bt-f:Bt<-l?Bt+f:Bt,wr]}}function Mi(gt){var Bt=Si(gt);return Bt.invert=Si(-gt),Bt}function Pi(gt,Bt){var wr=p(gt),vr=_(gt),Ur=p(Bt),fi=_(Bt);function xi(Fi,Xi){var hn=p(Xi),Ti=p(Fi)*hn,qi=_(Fi)*hn,Ii=_(Xi),mi=Ii*wr+Ti*vr;return[b(qi*Ur-mi*fi,Ti*wr-Ii*vr),T(mi*Ur+qi*fi)]}return xi.invert=function(Fi,Xi){var hn=p(Xi),Ti=p(Fi)*hn,qi=_(Fi)*hn,Ii=_(Xi),mi=Ii*Ur-qi*fi;return[b(qi*Ur+Ii*fi,Ti*wr+mi*vr),T(mi*wr-Ti*vr)]},xi}function Gi(gt){gt=gi(gt[0]*d,gt[1]*d,gt.length>2?gt[2]*d:0);function Bt(wr){return wr=gt(wr[0]*d,wr[1]*d),wr[0]*=h,wr[1]*=h,wr}return Bt.invert=function(wr){return wr=gt.invert(wr[0]*d,wr[1]*d),wr[0]*=h,wr[1]*=h,wr},Bt}function Ki(gt,Bt,wr,vr,Ur,fi){if(wr){var xi=p(Bt),Fi=_(Bt),Xi=vr*wr;Ur==null?(Ur=Bt+vr*f,fi=Bt-Xi/2):(Ur=ka(xi,Ur),fi=ka(xi,fi),(vr>0?Ur<fi:Ur>fi)&&(Ur+=vr*f));for(var hn,Ti=Ur;vr>0?Ti>fi:Ti<fi;Ti-=Xi)hn=Re([xi,-Fi*p(Ti),-Fi*_(Ti)]),gt.point(hn[0],hn[1])}}function ka(gt,Bt){Bt=ce(Bt),Bt[0]-=gt,rt(Bt);var wr=P(-Bt[1]);return((-Bt[2]<0?-wr:wr)+f-o)%f}function jn(){var gt=Fr([0,0]),Bt=Fr(90),wr=Fr(6),vr,Ur,fi={point:xi};function xi(Xi,hn){vr.push(Xi=Ur(Xi,hn)),Xi[0]*=h,Xi[1]*=h}function Fi(){var Xi=gt.apply(this,arguments),hn=Bt.apply(this,arguments)*d,Ti=wr.apply(this,arguments)*d;return vr=[],Ur=gi(-Xi[0]*d,-Xi[1]*d,0).invert,Ki(fi,hn,Ti,1),Xi={type:"Polygon",coordinates:[vr]},vr=Ur=null,Xi}return Fi.center=function(Xi){return arguments.length?(gt=typeof Xi=="function"?Xi:Fr([+Xi[0],+Xi[1]]),Fi):gt},Fi.radius=function(Xi){return arguments.length?(Bt=typeof Xi=="function"?Xi:Fr(+Xi),Fi):Bt},Fi.precision=function(Xi){return arguments.length?(wr=typeof Xi=="function"?Xi:Fr(+Xi),Fi):wr},Fi}function la(){var gt=[],Bt;return{point:function(wr,vr,Ur){Bt.push([wr,vr,Ur])},lineStart:function(){gt.push(Bt=[])},lineEnd:q,rejoin:function(){gt.length>1&&gt.push(gt.pop().concat(gt.shift()))},result:function(){var wr=gt;return gt=[],Bt=null,wr}}}function Fa(gt,Bt){return v(gt[0]-Bt[0])<o&&v(gt[1]-Bt[1])<o}function Ra(gt,Bt,wr,vr){this.x=gt,this.z=Bt,this.o=wr,this.e=vr,this.v=!1,this.n=this.p=null}function jo(gt,Bt,wr,vr,Ur){var fi=[],xi=[],Fi,Xi;if(gt.forEach(function(Pn){if(!((Ma=Pn.length-1)<=0)){var Ma,Ta=Pn[0],Ea=Pn[Ma],qa;if(Fa(Ta,Ea)){if(!Ta[2]&&!Ea[2]){for(Ur.lineStart(),Fi=0;Fi<Ma;++Fi)Ur.point((Ta=Pn[Fi])[0],Ta[1]);Ur.lineEnd();return}Ea[0]+=2*o}fi.push(qa=new Ra(Ta,Pn,null,!0)),xi.push(qa.o=new Ra(Ta,null,qa,!1)),fi.push(qa=new Ra(Ea,Pn,null,!1)),xi.push(qa.o=new Ra(Ea,null,qa,!0))}}),!!fi.length){for(xi.sort(Bt),oa(fi),oa(xi),Fi=0,Xi=xi.length;Fi<Xi;++Fi)xi[Fi].e=wr=!wr;for(var hn=fi[0],Ti,qi;;){for(var Ii=hn,mi=!0;Ii.v;)if((Ii=Ii.n)===hn)return;Ti=Ii.z,Ur.lineStart();do{if(Ii.v=Ii.o.v=!0,Ii.e){if(mi)for(Fi=0,Xi=Ti.length;Fi<Xi;++Fi)Ur.point((qi=Ti[Fi])[0],qi[1]);else vr(Ii.x,Ii.n.x,1,Ur);Ii=Ii.n}else{if(mi)for(Ti=Ii.p.z,Fi=Ti.length-1;Fi>=0;--Fi)Ur.point((qi=Ti[Fi])[0],qi[1]);else vr(Ii.x,Ii.p.x,-1,Ur);Ii=Ii.p}Ii=Ii.o,Ti=Ii.z,mi=!mi}while(!Ii.v);Ur.lineEnd()}}}function oa(gt){if(Bt=gt.length){for(var Bt,wr=0,vr=gt[0],Ur;++wr<Bt;)vr.n=Ur=gt[wr],Ur.p=vr,vr=Ur;vr.n=Ur=gt[0],Ur.p=vr}}var Sn=r();function Ha(gt){return v(gt[0])<=l?gt[0]:C(gt[0])*((v(gt[0])+l)%f-l)}function oo(gt,Bt){var wr=Ha(Bt),vr=Bt[1],Ur=_(vr),fi=[_(wr),-p(wr),0],xi=0,Fi=0;Sn.reset(),Ur===1?vr=u+o:Ur===-1&&(vr=-u-o);for(var Xi=0,hn=gt.length;Xi<hn;++Xi)if(qi=(Ti=gt[Xi]).length)for(var Ti,qi,Ii=Ti[qi-1],mi=Ha(Ii),Pn=Ii[1]/2+c,Ma=_(Pn),Ta=p(Pn),Ea=0;Ea<qi;++Ea,mi=Cn,Ma=Ua,Ta=mo,Ii=qa){var qa=Ti[Ea],Cn=Ha(qa),sn=qa[1]/2+c,Ua=_(sn),mo=p(sn),Xo=Cn-mi,Ts=Xo>=0?1:-1,Qo=Ts*Xo,ys=Qo>l,Bo=Ma*Ua;if(Sn.add(b(Bo*Ts*_(Qo),Ta*mo+Bo*p(Qo))),xi+=ys?Xo+Ts*f:Xo,ys^mi>=wr^Cn>=wr){var yl=nt(ce(Ii),ce(qa));rt(yl);var Gs=nt(fi,yl);rt(Gs);var Rs=(ys^Xo>=0?-1:1)*T(Gs[2]);(vr>Rs||vr===Rs&&(yl[0]||yl[1]))&&(Fi+=ys^Xo>=0?1:-1)}}return(xi<-o||xi<o&&Sn<-o)^Fi&1}function xn(gt,Bt,wr,vr){return function(Ur){var fi=Bt(Ur),xi=la(),Fi=Bt(xi),Xi=!1,hn,Ti,qi,Ii={point:mi,lineStart:Ma,lineEnd:Ta,polygonStart:function(){Ii.point=Ea,Ii.lineStart=qa,Ii.lineEnd=Cn,Ti=[],hn=[]},polygonEnd:function(){Ii.point=mi,Ii.lineStart=Ma,Ii.lineEnd=Ta,Ti=t.merge(Ti);var sn=oo(hn,vr);Ti.length?(Xi||(Ur.polygonStart(),Xi=!0),jo(Ti,br,sn,wr,Ur)):sn&&(Xi||(Ur.polygonStart(),Xi=!0),Ur.lineStart(),wr(null,null,1,Ur),Ur.lineEnd()),Xi&&(Ur.polygonEnd(),Xi=!1),Ti=hn=null},sphere:function(){Ur.polygonStart(),Ur.lineStart(),wr(null,null,1,Ur),Ur.lineEnd(),Ur.polygonEnd()}};function mi(sn,Ua){gt(sn,Ua)&&Ur.point(sn,Ua)}function Pn(sn,Ua){fi.point(sn,Ua)}function Ma(){Ii.point=Pn,fi.lineStart()}function Ta(){Ii.point=mi,fi.lineEnd()}function Ea(sn,Ua){qi.push([sn,Ua]),Fi.point(sn,Ua)}function qa(){Fi.lineStart(),qi=[]}function Cn(){Ea(qi[0][0],qi[0][1]),Fi.lineEnd();var sn=Fi.clean(),Ua=xi.result(),mo,Xo=Ua.length,Ts,Qo,ys;if(qi.pop(),hn.push(qi),qi=null,!!Xo){if(sn&1){if(Qo=Ua[0],(Ts=Qo.length-1)>0){for(Xi||(Ur.polygonStart(),Xi=!0),Ur.lineStart(),mo=0;mo<Ts;++mo)Ur.point((ys=Qo[mo])[0],ys[1]);Ur.lineEnd()}return}Xo>1&&sn&2&&Ua.push(Ua.pop().concat(Ua.shift())),Ti.push(Ua.filter(_t))}}return Ii}}function _t(gt){return gt.length>1}function br(gt,Bt){return((gt=gt.x)[0]<0?gt[1]-u-o:u-gt[1])-((Bt=Bt.x)[0]<0?Bt[1]-u-o:u-Bt[1])}var Hr=xn(function(){return!0},ti,Yi,[-l,-u]);function ti(gt){var Bt=NaN,wr=NaN,vr=NaN,Ur;return{lineStart:function(){gt.lineStart(),Ur=1},point:function(fi,xi){var Fi=fi>0?l:-l,Xi=v(fi-Bt);v(Xi-l)<o?(gt.point(Bt,wr=(wr+xi)/2>0?u:-u),gt.point(vr,wr),gt.lineEnd(),gt.lineStart(),gt.point(Fi,wr),gt.point(fi,wr),Ur=0):vr!==Fi&&Xi>=l&&(v(Bt-vr)<o&&(Bt-=vr*o),v(fi-Fi)<o&&(fi-=Fi*o),wr=zi(Bt,wr,fi,xi),gt.point(vr,wr),gt.lineEnd(),gt.lineStart(),gt.point(Fi,wr),Ur=0),gt.point(Bt=fi,wr=xi),vr=Fi},lineEnd:function(){gt.lineEnd(),Bt=wr=NaN},clean:function(){return 2-Ur}}}function zi(gt,Bt,wr,vr){var Ur,fi,xi=_(gt-wr);return v(xi)>o?x((_(Bt)*(fi=p(vr))*_(wr)-_(vr)*(Ur=p(Bt))*_(gt))/(Ur*fi*xi)):(Bt+vr)/2}function Yi(gt,Bt,wr,vr){var Ur;if(gt==null)Ur=wr*u,vr.point(-l,Ur),vr.point(0,Ur),vr.point(l,Ur),vr.point(l,0),vr.point(l,-Ur),vr.point(0,-Ur),vr.point(-l,-Ur),vr.point(-l,0),vr.point(-l,Ur);else if(v(gt[0]-Bt[0])>o){var fi=gt[0]<Bt[0]?l:-l;Ur=wr*fi/2,vr.point(-fi,Ur),vr.point(0,Ur),vr.point(fi,Ur)}else vr.point(Bt[0],Bt[1])}function an(gt){var Bt=p(gt),wr=6*d,vr=Bt>0,Ur=v(Bt)>o;function fi(Ti,qi,Ii,mi){Ki(mi,gt,wr,Ii,Ti,qi)}function xi(Ti,qi){return p(Ti)*p(qi)>Bt}function Fi(Ti){var qi,Ii,mi,Pn,Ma;return{lineStart:function(){Pn=mi=!1,Ma=1},point:function(Ta,Ea){var qa=[Ta,Ea],Cn,sn=xi(Ta,Ea),Ua=vr?sn?0:hn(Ta,Ea):sn?hn(Ta+(Ta<0?l:-l),Ea):0;if(!qi&&(Pn=mi=sn)&&Ti.lineStart(),sn!==mi&&(Cn=Xi(qi,qa),(!Cn||Fa(qi,Cn)||Fa(qa,Cn))&&(qa[2]=1)),sn!==mi)Ma=0,sn?(Ti.lineStart(),Cn=Xi(qa,qi),Ti.point(Cn[0],Cn[1])):(Cn=Xi(qi,qa),Ti.point(Cn[0],Cn[1],2),Ti.lineEnd()),qi=Cn;else if(Ur&&qi&&vr^sn){var mo;!(Ua&Ii)&&(mo=Xi(qa,qi,!0))&&(Ma=0,vr?(Ti.lineStart(),Ti.point(mo[0][0],mo[0][1]),Ti.point(mo[1][0],mo[1][1]),Ti.lineEnd()):(Ti.point(mo[1][0],mo[1][1]),Ti.lineEnd(),Ti.lineStart(),Ti.point(mo[0][0],mo[0][1],3)))}sn&&(!qi||!Fa(qi,qa))&&Ti.point(qa[0],qa[1]),qi=qa,mi=sn,Ii=Ua},lineEnd:function(){mi&&Ti.lineEnd(),qi=null},clean:function(){return Ma|(Pn&&mi)<<1}}}function Xi(Ti,qi,Ii){var mi=ce(Ti),Pn=ce(qi),Ma=[1,0,0],Ta=nt(mi,Pn),Ea=Ge(Ta,Ta),qa=Ta[0],Cn=Ea-qa*qa;if(!Cn)return!Ii&&Ti;var sn=Bt*Ea/Cn,Ua=-Bt*qa/Cn,mo=nt(Ma,Ta),Xo=qt(Ma,sn),Ts=qt(Ta,Ua);ct(Xo,Ts);var Qo=mo,ys=Ge(Xo,Qo),Bo=Ge(Qo,Qo),yl=ys*ys-Bo*(Ge(Xo,Xo)-1);if(!(yl<0)){var Gs=M(yl),Rs=qt(Qo,(-ys-Gs)/Bo);if(ct(Rs,Xo),Rs=Re(Rs),!Ii)return Rs;var ia=Ti[0],Ka=qi[0],vs=Ti[1],Ko=qi[1],nu;Ka<ia&&(nu=ia,ia=Ka,Ka=nu);var Ru=Ka-ia,ac=v(Ru-l)<o,mf=ac||Ru<o;if(!ac&&Ko<vs&&(nu=vs,vs=Ko,Ko=nu),mf?ac?vs+Ko>0^Rs[1]<(v(Rs[0]-ia)<o?vs:Ko):vs<=Rs[1]&&Rs[1]<=Ko:Ru>l^(ia<=Rs[0]&&Rs[0]<=Ka)){var bu=qt(Qo,(-ys+Gs)/Bo);return ct(bu,Xo),[Rs,Re(bu)]}}}function hn(Ti,qi){var Ii=vr?gt:l-gt,mi=0;return Ti<-Ii?mi|=1:Ti>Ii&&(mi|=2),qi<-Ii?mi|=4:qi>Ii&&(mi|=8),mi}return xn(xi,Fi,fi,vr?[0,-gt]:[-l,gt-l])}function hi(gt,Bt,wr,vr,Ur,fi){var xi=gt[0],Fi=gt[1],Xi=Bt[0],hn=Bt[1],Ti=0,qi=1,Ii=Xi-xi,mi=hn-Fi,Pn;if(Pn=wr-xi,!(!Ii&&Pn>0)){if(Pn/=Ii,Ii<0){if(Pn<Ti)return;Pn<qi&&(qi=Pn)}else if(Ii>0){if(Pn>qi)return;Pn>Ti&&(Ti=Pn)}if(Pn=Ur-xi,!(!Ii&&Pn<0)){if(Pn/=Ii,Ii<0){if(Pn>qi)return;Pn>Ti&&(Ti=Pn)}else if(Ii>0){if(Pn<Ti)return;Pn<qi&&(qi=Pn)}if(Pn=vr-Fi,!(!mi&&Pn>0)){if(Pn/=mi,mi<0){if(Pn<Ti)return;Pn<qi&&(qi=Pn)}else if(mi>0){if(Pn>qi)return;Pn>Ti&&(Ti=Pn)}if(Pn=fi-Fi,!(!mi&&Pn<0)){if(Pn/=mi,mi<0){if(Pn>qi)return;Pn>Ti&&(Ti=Pn)}else if(mi>0){if(Pn<Ti)return;Pn<qi&&(qi=Pn)}return Ti>0&&(gt[0]=xi+Ti*Ii,gt[1]=Fi+Ti*mi),qi<1&&(Bt[0]=xi+qi*Ii,Bt[1]=Fi+qi*mi),!0}}}}}var Ji=1e9,ua=-Ji;function Fn(gt,Bt,wr,vr){function Ur(hn,Ti){return gt<=hn&&hn<=wr&&Bt<=Ti&&Ti<=vr}function fi(hn,Ti,qi,Ii){var mi=0,Pn=0;if(hn==null||(mi=xi(hn,qi))!==(Pn=xi(Ti,qi))||Xi(hn,Ti)<0^qi>0)do Ii.point(mi===0||mi===3?gt:wr,mi>1?vr:Bt);while((mi=(mi+qi+4)%4)!==Pn);else Ii.point(Ti[0],Ti[1])}function xi(hn,Ti){return v(hn[0]-gt)<o?Ti>0?0:3:v(hn[0]-wr)<o?Ti>0?2:1:v(hn[1]-Bt)<o?Ti>0?1:0:Ti>0?3:2}function Fi(hn,Ti){return Xi(hn.x,Ti.x)}function Xi(hn,Ti){var qi=xi(hn,1),Ii=xi(Ti,1);return qi!==Ii?qi-Ii:qi===0?Ti[1]-hn[1]:qi===1?hn[0]-Ti[0]:qi===2?hn[1]-Ti[1]:Ti[0]-hn[0]}return function(hn){var Ti=hn,qi=la(),Ii,mi,Pn,Ma,Ta,Ea,qa,Cn,sn,Ua,mo,Xo={point:Ts,lineStart:yl,lineEnd:Gs,polygonStart:ys,polygonEnd:Bo};function Ts(ia,Ka){Ur(ia,Ka)&&Ti.point(ia,Ka)}function Qo(){for(var ia=0,Ka=0,vs=mi.length;Ka<vs;++Ka)for(var Ko=mi[Ka],nu=1,Ru=Ko.length,ac=Ko[0],mf,bu,Kc=ac[0],Du=ac[1];nu<Ru;++nu)mf=Kc,bu=Du,ac=Ko[nu],Kc=ac[0],Du=ac[1],bu<=vr?Du>vr&&(Kc-mf)*(vr-bu)>(Du-bu)*(gt-mf)&&++ia:Du<=vr&&(Kc-mf)*(vr-bu)<(Du-bu)*(gt-mf)&&--ia;return ia}function ys(){Ti=qi,Ii=[],mi=[],mo=!0}function Bo(){var ia=Qo(),Ka=mo&&ia,vs=(Ii=t.merge(Ii)).length;(Ka||vs)&&(hn.polygonStart(),Ka&&(hn.lineStart(),fi(null,null,1,hn),hn.lineEnd()),vs&&jo(Ii,Fi,ia,fi,hn),hn.polygonEnd()),Ti=hn,Ii=mi=Pn=null}function yl(){Xo.point=Rs,mi&&mi.push(Pn=[]),Ua=!0,sn=!1,qa=Cn=NaN}function Gs(){Ii&&(Rs(Ma,Ta),Ea&&sn&&qi.rejoin(),Ii.push(qi.result())),Xo.point=Ts,sn&&Ti.lineEnd()}function Rs(ia,Ka){var vs=Ur(ia,Ka);if(mi&&Pn.push([ia,Ka]),Ua)Ma=ia,Ta=Ka,Ea=vs,Ua=!1,vs&&(Ti.lineStart(),Ti.point(ia,Ka));else if(vs&&sn)Ti.point(ia,Ka);else{var Ko=[qa=Math.max(ua,Math.min(Ji,qa)),Cn=Math.max(ua,Math.min(Ji,Cn))],nu=[ia=Math.max(ua,Math.min(Ji,ia)),Ka=Math.max(ua,Math.min(Ji,Ka))];hi(Ko,nu,gt,Bt,wr,vr)?(sn||(Ti.lineStart(),Ti.point(Ko[0],Ko[1])),Ti.point(nu[0],nu[1]),vs||Ti.lineEnd(),mo=!1):vs&&(Ti.lineStart(),Ti.point(ia,Ka),mo=!1)}qa=ia,Cn=Ka,sn=vs}return Xo}}function Sa(){var gt=0,Bt=0,wr=960,vr=500,Ur,fi,xi;return xi={stream:function(Fi){return Ur&&fi===Fi?Ur:Ur=Fn(gt,Bt,wr,vr)(fi=Fi)},extent:function(Fi){return arguments.length?(gt=+Fi[0][0],Bt=+Fi[0][1],wr=+Fi[1][0],vr=+Fi[1][1],Ur=fi=null,xi):[[gt,Bt],[wr,vr]]}}}var go=r(),Oo,ho,Mo,xo={sphere:q,point:q,lineStart:zs,lineEnd:q,polygonStart:q,polygonEnd:q};function zs(){xo.point=Zs,xo.lineEnd=ks}function ks(){xo.point=xo.lineEnd=q}function Zs(gt,Bt){gt*=d,Bt*=d,Oo=gt,ho=_(Bt),Mo=p(Bt),xo.point=Xs}function Xs(gt,Bt){gt*=d,Bt*=d;var wr=_(Bt),vr=p(Bt),Ur=v(gt-Oo),fi=p(Ur),xi=_(Ur),Fi=vr*xi,Xi=Mo*wr-ho*vr*fi,hn=ho*wr+Mo*vr*fi;go.add(b(M(Fi*Fi+Xi*Xi),hn)),Oo=gt,ho=wr,Mo=vr}function wl(gt){return go.reset(),W(gt,xo),+go}var os=[null,null],cl={type:"LineString",coordinates:os};function Cs(gt,Bt){return os[0]=gt,os[1]=Bt,wl(cl)}var ml={Feature:function(gt,Bt){return Hs(gt.geometry,Bt)},FeatureCollection:function(gt,Bt){for(var wr=gt.features,vr=-1,Ur=wr.length;++vr<Ur;)if(Hs(wr[vr].geometry,Bt))return!0;return!1}},Ys={Sphere:function(){return!0},Point:function(gt,Bt){return Eo(gt.coordinates,Bt)},MultiPoint:function(gt,Bt){for(var wr=gt.coordinates,vr=-1,Ur=wr.length;++vr<Ur;)if(Eo(wr[vr],Bt))return!0;return!1},LineString:function(gt,Bt){return fs(gt.coordinates,Bt)},MultiLineString:function(gt,Bt){for(var wr=gt.coordinates,vr=-1,Ur=wr.length;++vr<Ur;)if(fs(wr[vr],Bt))return!0;return!1},Polygon:function(gt,Bt){return Ql(gt.coordinates,Bt)},MultiPolygon:function(gt,Bt){for(var wr=gt.coordinates,vr=-1,Ur=wr.length;++vr<Ur;)if(Ql(wr[vr],Bt))return!0;return!1},GeometryCollection:function(gt,Bt){for(var wr=gt.geometries,vr=-1,Ur=wr.length;++vr<Ur;)if(Hs(wr[vr],Bt))return!0;return!1}};function Hs(gt,Bt){return gt&&Ys.hasOwnProperty(gt.type)?Ys[gt.type](gt,Bt):!1}function Eo(gt,Bt){return Cs(gt,Bt)===0}function fs(gt,Bt){for(var wr,vr,Ur,fi=0,xi=gt.length;fi<xi;fi++){if(vr=Cs(gt[fi],Bt),vr===0||fi>0&&(Ur=Cs(gt[fi],gt[fi-1]),Ur>0&&wr<=Ur&&vr<=Ur&&(wr+vr-Ur)*(1-Math.pow((wr-vr)/Ur,2))<s*Ur))return!0;wr=vr}return!1}function Ql(gt,Bt){return!!oo(gt.map(Hu),fc(Bt))}function Hu(gt){return gt=gt.map(fc),gt.pop(),gt}function fc(gt){return[gt[0]*d,gt[1]*d]}function ms(gt,Bt){return(gt&&ml.hasOwnProperty(gt.type)?ml[gt.type]:Hs)(gt,Bt)}function on(gt,Bt,wr){var vr=t.range(gt,Bt-o,wr).concat(Bt);return function(Ur){return vr.map(function(fi){return[Ur,fi]})}}function fa(gt,Bt,wr){var vr=t.range(gt,Bt-o,wr).concat(Bt);return function(Ur){return vr.map(function(fi){return[fi,Ur]})}}function Qu(){var gt,Bt,wr,vr,Ur,fi,xi,Fi,Xi=10,hn=Xi,Ti=90,qi=360,Ii,mi,Pn,Ma,Ta=2.5;function Ea(){return{type:"MultiLineString",coordinates:qa()}}function qa(){return t.range(E(vr/Ti)*Ti,wr,Ti).map(Pn).concat(t.range(E(Fi/qi)*qi,xi,qi).map(Ma)).concat(t.range(E(Bt/Xi)*Xi,gt,Xi).filter(function(Cn){return v(Cn%Ti)>o}).map(Ii)).concat(t.range(E(fi/hn)*hn,Ur,hn).filter(function(Cn){return v(Cn%qi)>o}).map(mi))}return Ea.lines=function(){return qa().map(function(Cn){return{type:"LineString",coordinates:Cn}})},Ea.outline=function(){return{type:"Polygon",coordinates:[Pn(vr).concat(Ma(xi).slice(1),Pn(wr).reverse().slice(1),Ma(Fi).reverse().slice(1))]}},Ea.extent=function(Cn){return arguments.length?Ea.extentMajor(Cn).extentMinor(Cn):Ea.extentMinor()},Ea.extentMajor=function(Cn){return arguments.length?(vr=+Cn[0][0],wr=+Cn[1][0],Fi=+Cn[0][1],xi=+Cn[1][1],vr>wr&&(Cn=vr,vr=wr,wr=Cn),Fi>xi&&(Cn=Fi,Fi=xi,xi=Cn),Ea.precision(Ta)):[[vr,Fi],[wr,xi]]},Ea.extentMinor=function(Cn){return arguments.length?(Bt=+Cn[0][0],gt=+Cn[1][0],fi=+Cn[0][1],Ur=+Cn[1][1],Bt>gt&&(Cn=Bt,Bt=gt,gt=Cn),fi>Ur&&(Cn=fi,fi=Ur,Ur=Cn),Ea.precision(Ta)):[[Bt,fi],[gt,Ur]]},Ea.step=function(Cn){return arguments.length?Ea.stepMajor(Cn).stepMinor(Cn):Ea.stepMinor()},Ea.stepMajor=function(Cn){return arguments.length?(Ti=+Cn[0],qi=+Cn[1],Ea):[Ti,qi]},Ea.stepMinor=function(Cn){return arguments.length?(Xi=+Cn[0],hn=+Cn[1],Ea):[Xi,hn]},Ea.precision=function(Cn){return arguments.length?(Ta=+Cn,Ii=on(fi,Ur,90),mi=fa(Bt,gt,Ta),Pn=on(Fi,xi,90),Ma=fa(vr,wr,Ta),Ea):Ta},Ea.extentMajor([[-180,-90+o],[180,90-o]]).extentMinor([[-180,-80-o],[180,80+o]])}function Rl(){return Qu()()}function vo(gt,Bt){var wr=gt[0]*d,vr=gt[1]*d,Ur=Bt[0]*d,fi=Bt[1]*d,xi=p(vr),Fi=_(vr),Xi=p(fi),hn=_(fi),Ti=xi*p(wr),qi=xi*_(wr),Ii=Xi*p(Ur),mi=Xi*_(Ur),Pn=2*T(M(F(fi-vr)+xi*Xi*F(Ur-wr))),Ma=_(Pn),Ta=Pn?function(Ea){var qa=_(Ea*=Pn)/Ma,Cn=_(Pn-Ea)/Ma,sn=Cn*Ti+qa*Ii,Ua=Cn*qi+qa*mi,mo=Cn*Fi+qa*hn;return[b(Ua,sn)*h,b(mo,M(sn*sn+Ua*Ua))*h]}:function(){return[wr*h,vr*h]};return Ta.distance=Pn,Ta}function Zl(gt){return gt}var Ks=r(),Xl=r(),Ec,Zn,ko,Co,Tl={point:q,lineStart:q,lineEnd:q,polygonStart:function(){Tl.lineStart=uf,Tl.lineEnd=rh},polygonEnd:function(){Tl.lineStart=Tl.lineEnd=Tl.point=q,Ks.add(v(Xl)),Xl.reset()},result:function(){var gt=Ks/2;return Ks.reset(),gt}};function uf(){Tl.point=So}function So(gt,Bt){Tl.point=cf,Ec=ko=gt,Zn=Co=Bt}function cf(gt,Bt){Xl.add(Co*gt-ko*Bt),ko=gt,Co=Bt}function rh(){cf(Ec,Zn)}var Al=1/0,Hc=Al,eu=-Al,Ls=eu,mu={point:kc,lineStart:q,lineEnd:q,polygonStart:q,polygonEnd:q,result:function(){var gt=[[Al,Hc],[eu,Ls]];return eu=Ls=-(Hc=Al=1/0),gt}};function kc(gt,Bt){gt<Al&&(Al=gt),gt>eu&&(eu=gt),Bt<Hc&&(Hc=Bt),Bt>Ls&&(Ls=Bt)}var Of=0,Gc=0,vd=0,Bf=0,ss=0,ff=0,ih=0,Vl=0,Js=0,hc,Cc,ws,$s,hs={point:Ms,lineStart:dc,lineEnd:Ps,polygonStart:function(){hs.lineStart=ov,hs.lineEnd=wo},polygonEnd:function(){hs.point=Ms,hs.lineStart=dc,hs.lineEnd=Ps},result:function(){var gt=Js?[ih/Js,Vl/Js]:ff?[Bf/ff,ss/ff]:vd?[Of/vd,Gc/vd]:[NaN,NaN];return Of=Gc=vd=Bf=ss=ff=ih=Vl=Js=0,gt}};function Ms(gt,Bt){Of+=gt,Gc+=Bt,++vd}function dc(){hs.point=Sl}function Sl(gt,Bt){hs.point=ec,Ms(ws=gt,$s=Bt)}function ec(gt,Bt){var wr=gt-ws,vr=Bt-$s,Ur=M(wr*wr+vr*vr);Bf+=Ur*(ws+gt)/2,ss+=Ur*($s+Bt)/2,ff+=Ur,Ms(ws=gt,$s=Bt)}function Ps(){hs.point=Ms}function ov(){hs.point=Od}function wo(){$o(hc,Cc)}function Od(gt,Bt){hs.point=$o,Ms(hc=ws=gt,Cc=$s=Bt)}function $o(gt,Bt){var wr=gt-ws,vr=Bt-$s,Ur=M(wr*wr+vr*vr);Bf+=Ur*(ws+gt)/2,ss+=Ur*($s+Bt)/2,ff+=Ur,Ur=$s*gt-ws*Bt,ih+=Ur*(ws+gt),Vl+=Ur*($s+Bt),Js+=Ur*3,Ms(ws=gt,$s=Bt)}function Ja(gt){this._context=gt}Ja.prototype={_radius:4.5,pointRadius:function(gt){return this._radius=gt,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(gt,Bt){switch(this._point){case 0:{this._context.moveTo(gt,Bt),this._point=1;break}case 1:{this._context.lineTo(gt,Bt);break}default:{this._context.moveTo(gt+this._radius,Bt),this._context.arc(gt,Bt,this._radius,0,f);break}}},result:q};var Ef=r(),tc,uu,Mh,jc,kf,Ml={point:q,lineStart:function(){Ml.point=Yh},lineEnd:function(){tc&&Eh(uu,Mh),Ml.point=q},polygonStart:function(){tc=!0},polygonEnd:function(){tc=null},result:function(){var gt=+Ef;return Ef.reset(),gt}};function Yh(gt,Bt){Ml.point=Eh,uu=jc=gt,Mh=kf=Bt}function Eh(gt,Bt){jc-=gt,kf-=Bt,Ef.add(M(jc*jc+kf*kf)),jc=gt,kf=Bt}function nh(){this._string=[]}nh.prototype={_radius:4.5,_circle:hf(4.5),pointRadius:function(gt){return(gt=+gt)!==this._radius&&(this._radius=gt,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(gt,Bt){switch(this._point){case 0:{this._string.push("M",gt,",",Bt),this._point=1;break}case 1:{this._string.push("L",gt,",",Bt);break}default:{this._circle==null&&(this._circle=hf(this._radius)),this._string.push("M",gt,",",Bt,this._circle);break}}},result:function(){if(this._string.length){var gt=this._string.join("");return this._string=[],gt}else return null}};function hf(gt){return"m0,"+gt+"a"+gt+","+gt+" 0 1,1 0,"+-2*gt+"a"+gt+","+gt+" 0 1,1 0,"+2*gt+"z"}function kh(gt,Bt){var wr=4.5,vr,Ur;function fi(xi){return xi&&(typeof wr=="function"&&Ur.pointRadius(+wr.apply(this,arguments)),W(xi,vr(Ur))),Ur.result()}return fi.area=function(xi){return W(xi,vr(Tl)),Tl.result()},fi.measure=function(xi){return W(xi,vr(Ml)),Ml.result()},fi.bounds=function(xi){return W(xi,vr(mu)),mu.result()},fi.centroid=function(xi){return W(xi,vr(hs)),hs.result()},fi.projection=function(xi){return arguments.length?(vr=xi==null?(gt=null,Zl):(gt=xi).stream,fi):gt},fi.context=function(xi){return arguments.length?(Ur=xi==null?(Bt=null,new nh):new Ja(Bt=xi),typeof wr!="function"&&Ur.pointRadius(wr),fi):Bt},fi.pointRadius=function(xi){return arguments.length?(wr=typeof xi=="function"?xi:(Ur.pointRadius(+xi),+xi),fi):wr},fi.projection(gt).context(Bt)}function Kh(gt){return{stream:rc(gt)}}function rc(gt){return function(Bt){var wr=new ah;for(var vr in gt)wr[vr]=gt[vr];return wr.stream=Bt,wr}}function ah(){}ah.prototype={constructor:ah,point:function(gt,Bt){this.stream.point(gt,Bt)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Wc(gt,Bt,wr){var vr=gt.clipExtent&&gt.clipExtent();return gt.scale(150).translate([0,0]),vr!=null&&gt.clipExtent(null),W(wr,gt.stream(mu)),Bt(mu.result()),vr!=null&&gt.clipExtent(vr),gt}function df(gt,Bt,wr){return Wc(gt,function(vr){var Ur=Bt[1][0]-Bt[0][0],fi=Bt[1][1]-Bt[0][1],xi=Math.min(Ur/(vr[1][0]-vr[0][0]),fi/(vr[1][1]-vr[0][1])),Fi=+Bt[0][0]+(Ur-xi*(vr[1][0]+vr[0][0]))/2,Xi=+Bt[0][1]+(fi-xi*(vr[1][1]+vr[0][1]))/2;gt.scale(150*xi).translate([Fi,Xi])},wr)}function Cu(gt,Bt,wr){return df(gt,[[0,0],Bt],wr)}function Nf(gt,Bt,wr){return Wc(gt,function(vr){var Ur=+Bt,fi=Ur/(vr[1][0]-vr[0][0]),xi=(Ur-fi*(vr[1][0]+vr[0][0]))/2,Fi=-fi*vr[0][1];gt.scale(150*fi).translate([xi,Fi])},wr)}function Zc(gt,Bt,wr){return Wc(gt,function(vr){var Ur=+Bt,fi=Ur/(vr[1][1]-vr[0][1]),xi=-fi*vr[0][0],Fi=(Ur-fi*(vr[1][1]+vr[0][1]))/2;gt.scale(150*fi).translate([xi,Fi])},wr)}var ds=16,Ch=p(30*d);function Bd(gt,Bt){return+Bt?Cf(gt,Bt):Jh(gt)}function Jh(gt){return rc({point:function(Bt,wr){Bt=gt(Bt,wr),this.stream.point(Bt[0],Bt[1])}})}function Cf(gt,Bt){function wr(vr,Ur,fi,xi,Fi,Xi,hn,Ti,qi,Ii,mi,Pn,Ma,Ta){var Ea=hn-vr,qa=Ti-Ur,Cn=Ea*Ea+qa*qa;if(Cn>4*Bt&&Ma--){var sn=xi+Ii,Ua=Fi+mi,mo=Xi+Pn,Xo=M(sn*sn+Ua*Ua+mo*mo),Ts=T(mo/=Xo),Qo=v(v(mo)-1)<o||v(fi-qi)<o?(fi+qi)/2:b(Ua,sn),ys=gt(Qo,Ts),Bo=ys[0],yl=ys[1],Gs=Bo-vr,Rs=yl-Ur,ia=qa*Gs-Ea*Rs;(ia*ia/Cn>Bt||v((Ea*Gs+qa*Rs)/Cn-.5)>.3||xi*Ii+Fi*mi+Xi*Pn<Ch)&&(wr(vr,Ur,fi,xi,Fi,Xi,Bo,yl,Qo,sn/=Xo,Ua/=Xo,mo,Ma,Ta),Ta.point(Bo,yl),wr(Bo,yl,Qo,sn,Ua,mo,hn,Ti,qi,Ii,mi,Pn,Ma,Ta))}}return function(vr){var Ur,fi,xi,Fi,Xi,hn,Ti,qi,Ii,mi,Pn,Ma,Ta={point:Ea,lineStart:qa,lineEnd:sn,polygonStart:function(){vr.polygonStart(),Ta.lineStart=Ua},polygonEnd:function(){vr.polygonEnd(),Ta.lineStart=qa}};function Ea(Ts,Qo){Ts=gt(Ts,Qo),vr.point(Ts[0],Ts[1])}function qa(){qi=NaN,Ta.point=Cn,vr.lineStart()}function Cn(Ts,Qo){var ys=ce([Ts,Qo]),Bo=gt(Ts,Qo);wr(qi,Ii,Ti,mi,Pn,Ma,qi=Bo[0],Ii=Bo[1],Ti=Ts,mi=ys[0],Pn=ys[1],Ma=ys[2],ds,vr),vr.point(qi,Ii)}function sn(){Ta.point=Ea,vr.lineEnd()}function Ua(){qa(),Ta.point=mo,Ta.lineEnd=Xo}function mo(Ts,Qo){Cn(Ur=Ts,Qo),fi=qi,xi=Ii,Fi=mi,Xi=Pn,hn=Ma,Ta.point=Cn}function Xo(){wr(qi,Ii,Ti,mi,Pn,Ma,fi,xi,Ur,Fi,Xi,hn,ds,vr),Ta.lineEnd=sn,sn()}return Ta}}var pd=rc({point:function(gt,Bt){this.stream.point(gt*d,Bt*d)}});function Lu(gt){return rc({point:function(Bt,wr){var vr=gt(Bt,wr);return this.stream.point(vr[0],vr[1])}})}function $h(gt,Bt,wr,vr,Ur){function fi(xi,Fi){return xi*=vr,Fi*=Ur,[Bt+gt*xi,wr-gt*Fi]}return fi.invert=function(xi,Fi){return[(xi-Bt)/gt*vr,(wr-Fi)/gt*Ur]},fi}function tu(gt,Bt,wr,vr,Ur,fi){var xi=p(fi),Fi=_(fi),Xi=xi*gt,hn=Fi*gt,Ti=xi/gt,qi=Fi/gt,Ii=(Fi*wr-xi*Bt)/gt,mi=(Fi*Bt+xi*wr)/gt;function Pn(Ma,Ta){return Ma*=vr,Ta*=Ur,[Xi*Ma-hn*Ta+Bt,wr-hn*Ma-Xi*Ta]}return Pn.invert=function(Ma,Ta){return[vr*(Ti*Ma-qi*Ta+Ii),Ur*(mi-qi*Ma-Ti*Ta)]},Pn}function Pu(gt){return Lc(function(){return gt})()}function Lc(gt){var Bt,wr=150,vr=480,Ur=250,fi=0,xi=0,Fi=0,Xi=0,hn=0,Ti,qi=0,Ii=1,mi=1,Pn=null,Ma=Hr,Ta=null,Ea,qa,Cn,sn=Zl,Ua=.5,mo,Xo,Ts,Qo,ys;function Bo(ia){return Ts(ia[0]*d,ia[1]*d)}function yl(ia){return ia=Ts.invert(ia[0],ia[1]),ia&&[ia[0]*h,ia[1]*h]}Bo.stream=function(ia){return Qo&&ys===ia?Qo:Qo=pd(Lu(Ti)(Ma(mo(sn(ys=ia)))))},Bo.preclip=function(ia){return arguments.length?(Ma=ia,Pn=void 0,Rs()):Ma},Bo.postclip=function(ia){return arguments.length?(sn=ia,Ta=Ea=qa=Cn=null,Rs()):sn},Bo.clipAngle=function(ia){return arguments.length?(Ma=+ia?an(Pn=ia*d):(Pn=null,Hr),Rs()):Pn*h},Bo.clipExtent=function(ia){return arguments.length?(sn=ia==null?(Ta=Ea=qa=Cn=null,Zl):Fn(Ta=+ia[0][0],Ea=+ia[0][1],qa=+ia[1][0],Cn=+ia[1][1]),Rs()):Ta==null?null:[[Ta,Ea],[qa,Cn]]},Bo.scale=function(ia){return arguments.length?(wr=+ia,Gs()):wr},Bo.translate=function(ia){return arguments.length?(vr=+ia[0],Ur=+ia[1],Gs()):[vr,Ur]},Bo.center=function(ia){return arguments.length?(fi=ia[0]%360*d,xi=ia[1]%360*d,Gs()):[fi*h,xi*h]},Bo.rotate=function(ia){return arguments.length?(Fi=ia[0]%360*d,Xi=ia[1]%360*d,hn=ia.length>2?ia[2]%360*d:0,Gs()):[Fi*h,Xi*h,hn*h]},Bo.angle=function(ia){return arguments.length?(qi=ia%360*d,Gs()):qi*h},Bo.reflectX=function(ia){return arguments.length?(Ii=ia?-1:1,Gs()):Ii<0},Bo.reflectY=function(ia){return arguments.length?(mi=ia?-1:1,Gs()):mi<0},Bo.precision=function(ia){return arguments.length?(mo=Bd(Xo,Ua=ia*ia),Rs()):M(Ua)},Bo.fitExtent=function(ia,Ka){return df(Bo,ia,Ka)},Bo.fitSize=function(ia,Ka){return Cu(Bo,ia,Ka)},Bo.fitWidth=function(ia,Ka){return Nf(Bo,ia,Ka)},Bo.fitHeight=function(ia,Ka){return Zc(Bo,ia,Ka)};function Gs(){var ia=tu(wr,0,0,Ii,mi,qi).apply(null,Bt(fi,xi)),Ka=(qi?tu:$h)(wr,vr-ia[0],Ur-ia[1],Ii,mi,qi);return Ti=gi(Fi,Xi,hn),Xo=Zr(Bt,Ka),Ts=Zr(Ti,Xo),mo=Bd(Xo,Ua),Rs()}function Rs(){return Qo=ys=null,Bo}return function(){return Bt=gt.apply(this,arguments),Bo.invert=Bt.invert&&yl,Gs()}}function fl(gt){var Bt=0,wr=l/3,vr=Lc(gt),Ur=vr(Bt,wr);return Ur.parallels=function(fi){return arguments.length?vr(Bt=fi[0]*d,wr=fi[1]*d):[Bt*h,wr*h]},Ur}function Xc(gt){var Bt=p(gt);function wr(vr,Ur){return[vr*Bt,_(Ur)/Bt]}return wr.invert=function(vr,Ur){return[vr/Bt,T(Ur*Bt)]},wr}function ic(gt,Bt){var wr=_(gt),vr=(wr+_(Bt))/2;if(v(vr)<o)return Xc(gt);var Ur=1+wr*(2*vr-wr),fi=M(Ur)/vr;function xi(Fi,Xi){var hn=M(Ur-2*vr*_(Xi))/vr;return[hn*_(Fi*=vr),fi-hn*p(Fi)]}return xi.invert=function(Fi,Xi){var hn=fi-Xi,Ti=b(Fi,v(hn))*C(hn);return hn*vr<0&&(Ti-=l*C(Fi)*C(hn)),[Ti/vr,T((Ur-(Fi*Fi+hn*hn)*vr*vr)/(2*vr))]},xi}function yu(){return fl(ic).scale(155.424).center([0,33.6442])}function Qs(){return yu().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function Qh(gt){var Bt=gt.length;return{point:function(wr,vr){for(var Ur=-1;++Ur<Bt;)gt[Ur].point(wr,vr)},sphere:function(){for(var wr=-1;++wr<Bt;)gt[wr].sphere()},lineStart:function(){for(var wr=-1;++wr<Bt;)gt[wr].lineStart()},lineEnd:function(){for(var wr=-1;++wr<Bt;)gt[wr].lineEnd()},polygonStart:function(){for(var wr=-1;++wr<Bt;)gt[wr].polygonStart()},polygonEnd:function(){for(var wr=-1;++wr<Bt;)gt[wr].polygonEnd()}}}function gd(){var gt,Bt,wr=Qs(),vr,Ur=yu().rotate([154,0]).center([-2,58.5]).parallels([55,65]),fi,xi=yu().rotate([157,0]).center([-3,19.9]).parallels([8,18]),Fi,Xi,hn={point:function(Ii,mi){Xi=[Ii,mi]}};function Ti(Ii){var mi=Ii[0],Pn=Ii[1];return Xi=null,vr.point(mi,Pn),Xi||(fi.point(mi,Pn),Xi)||(Fi.point(mi,Pn),Xi)}Ti.invert=function(Ii){var mi=wr.scale(),Pn=wr.translate(),Ma=(Ii[0]-Pn[0])/mi,Ta=(Ii[1]-Pn[1])/mi;return(Ta>=.12&&Ta<.234&&Ma>=-.425&&Ma<-.214?Ur:Ta>=.166&&Ta<.234&&Ma>=-.214&&Ma<-.115?xi:wr).invert(Ii)},Ti.stream=function(Ii){return gt&&Bt===Ii?gt:gt=Qh([wr.stream(Bt=Ii),Ur.stream(Ii),xi.stream(Ii)])},Ti.precision=function(Ii){return arguments.length?(wr.precision(Ii),Ur.precision(Ii),xi.precision(Ii),qi()):wr.precision()},Ti.scale=function(Ii){return arguments.length?(wr.scale(Ii),Ur.scale(Ii*.35),xi.scale(Ii),Ti.translate(wr.translate())):wr.scale()},Ti.translate=function(Ii){if(!arguments.length)return wr.translate();var mi=wr.scale(),Pn=+Ii[0],Ma=+Ii[1];return vr=wr.translate(Ii).clipExtent([[Pn-.455*mi,Ma-.238*mi],[Pn+.455*mi,Ma+.238*mi]]).stream(hn),fi=Ur.translate([Pn-.307*mi,Ma+.201*mi]).clipExtent([[Pn-.425*mi+o,Ma+.12*mi+o],[Pn-.214*mi-o,Ma+.234*mi-o]]).stream(hn),Fi=xi.translate([Pn-.205*mi,Ma+.212*mi]).clipExtent([[Pn-.214*mi+o,Ma+.166*mi+o],[Pn-.115*mi-o,Ma+.234*mi-o]]).stream(hn),qi()},Ti.fitExtent=function(Ii,mi){return df(Ti,Ii,mi)},Ti.fitSize=function(Ii,mi){return Cu(Ti,Ii,mi)},Ti.fitWidth=function(Ii,mi){return Nf(Ti,Ii,mi)},Ti.fitHeight=function(Ii,mi){return Zc(Ti,Ii,mi)};function qi(){return gt=Bt=null,Ti}return Ti.scale(1070)}function Gu(gt){return function(Bt,wr){var vr=p(Bt),Ur=p(wr),fi=gt(vr*Ur);return[fi*Ur*_(Bt),fi*_(wr)]}}function Pc(gt){return function(Bt,wr){var vr=M(Bt*Bt+wr*wr),Ur=gt(vr),fi=_(Ur),xi=p(Ur);return[b(Bt*fi,vr*xi),T(vr&&wr*fi/vr)]}}var vc=Gu(function(gt){return M(2/(1+gt))});vc.invert=Pc(function(gt){return 2*T(gt/2)});function sv(){return Pu(vc).scale(124.75).clipAngle(180-.001)}var Lf=Gu(function(gt){return(gt=P(gt))&&gt/_(gt)});Lf.invert=Pc(function(gt){return gt});function Uf(){return Pu(Lf).scale(79.4188).clipAngle(180-.001)}function Iu(gt,Bt){return[gt,A(g((u+Bt)/2))]}Iu.invert=function(gt,Bt){return[gt,2*x(k(Bt))-u]};function oh(){return ru(Iu).scale(961/f)}function ru(gt){var Bt=Pu(gt),wr=Bt.center,vr=Bt.scale,Ur=Bt.translate,fi=Bt.clipExtent,xi=null,Fi,Xi,hn;Bt.scale=function(qi){return arguments.length?(vr(qi),Ti()):vr()},Bt.translate=function(qi){return arguments.length?(Ur(qi),Ti()):Ur()},Bt.center=function(qi){return arguments.length?(wr(qi),Ti()):wr()},Bt.clipExtent=function(qi){return arguments.length?(qi==null?xi=Fi=Xi=hn=null:(xi=+qi[0][0],Fi=+qi[0][1],Xi=+qi[1][0],hn=+qi[1][1]),Ti()):xi==null?null:[[xi,Fi],[Xi,hn]]};function Ti(){var qi=l*vr(),Ii=Bt(Gi(Bt.rotate()).invert([0,0]));return fi(xi==null?[[Ii[0]-qi,Ii[1]-qi],[Ii[0]+qi,Ii[1]+qi]]:gt===Iu?[[Math.max(Ii[0]-qi,xi),Fi],[Math.min(Ii[0]+qi,Xi),hn]]:[[xi,Math.max(Ii[1]-qi,Fi)],[Xi,Math.min(Ii[1]+qi,hn)]])}return Ti()}function vf(gt){return g((u+gt)/2)}function md(gt,Bt){var wr=p(gt),vr=gt===Bt?_(gt):A(wr/p(Bt))/A(vf(Bt)/vf(gt)),Ur=wr*L(vf(gt),vr)/vr;if(!vr)return Iu;function fi(xi,Fi){Ur>0?Fi<-u+o&&(Fi=-u+o):Fi>u-o&&(Fi=u-o);var Xi=Ur/L(vf(Fi),vr);return[Xi*_(vr*xi),Ur-Xi*p(vr*xi)]}return fi.invert=function(xi,Fi){var Xi=Ur-Fi,hn=C(vr)*M(xi*xi+Xi*Xi),Ti=b(xi,v(Xi))*C(Xi);return Xi*vr<0&&(Ti-=l*C(xi)*C(Xi)),[Ti/vr,2*x(L(Ur/hn,1/vr))-u]},fi}function sh(){return fl(md).scale(109.5).parallels([30,30])}function Fs(gt,Bt){return[gt,Bt]}Fs.invert=Fs;function _u(){return Pu(Fs).scale(152.63)}function xu(gt,Bt){var wr=p(gt),vr=gt===Bt?_(gt):(wr-p(Bt))/(Bt-gt),Ur=wr/vr+gt;if(v(vr)<o)return Fs;function fi(xi,Fi){var Xi=Ur-Fi,hn=vr*xi;return[Xi*_(hn),Ur-Xi*p(hn)]}return fi.invert=function(xi,Fi){var Xi=Ur-Fi,hn=b(xi,v(Xi))*C(Xi);return Xi*vr<0&&(hn-=l*C(xi)*C(Xi)),[hn/vr,Ur-C(vr)*M(xi*xi+Xi*Xi)]},fi}function Lh(){return fl(xu).scale(131.154).center([0,13.9389])}var Is=1.340264,Pf=-.081106,Ic=893e-6,ju=.003796,Vf=M(3)/2,pc=12;function pf(gt,Bt){var wr=T(Vf*_(Bt)),vr=wr*wr,Ur=vr*vr*vr;return[gt*p(wr)/(Vf*(Is+3*Pf*vr+Ur*(7*Ic+9*ju*vr))),wr*(Is+Pf*vr+Ur*(Ic+ju*vr))]}pf.invert=function(gt,Bt){for(var wr=Bt,vr=wr*wr,Ur=vr*vr*vr,fi=0,xi,Fi,Xi;fi<pc&&(Fi=wr*(Is+Pf*vr+Ur*(Ic+ju*vr))-Bt,Xi=Is+3*Pf*vr+Ur*(7*Ic+9*ju*vr),wr-=xi=Fi/Xi,vr=wr*wr,Ur=vr*vr*vr,!(v(xi)<s));++fi);return[Vf*gt*(Is+3*Pf*vr+Ur*(7*Ic+9*ju*vr))/p(wr),T(_(wr)/Vf)]};function Ph(){return Pu(pf).scale(177.158)}function Dl(gt,Bt){var wr=p(Bt),vr=p(gt)*wr;return[wr*_(gt)/vr,_(Bt)/vr]}Dl.invert=Pc(x);function Ih(){return Pu(Dl).scale(144.049).clipAngle(60)}function Wu(){var gt=1,Bt=0,wr=0,vr=1,Ur=1,fi=0,xi,Fi,Xi=null,hn,Ti,qi,Ii=1,mi=1,Pn=rc({point:function(sn,Ua){var mo=Cn([sn,Ua]);this.stream.point(mo[0],mo[1])}}),Ma=Zl,Ta,Ea;function qa(){return Ii=gt*vr,mi=gt*Ur,Ta=Ea=null,Cn}function Cn(sn){var Ua=sn[0]*Ii,mo=sn[1]*mi;if(fi){var Xo=mo*xi-Ua*Fi;Ua=Ua*xi+mo*Fi,mo=Xo}return[Ua+Bt,mo+wr]}return Cn.invert=function(sn){var Ua=sn[0]-Bt,mo=sn[1]-wr;if(fi){var Xo=mo*xi+Ua*Fi;Ua=Ua*xi-mo*Fi,mo=Xo}return[Ua/Ii,mo/mi]},Cn.stream=function(sn){return Ta&&Ea===sn?Ta:Ta=Pn(Ma(Ea=sn))},Cn.postclip=function(sn){return arguments.length?(Ma=sn,Xi=hn=Ti=qi=null,qa()):Ma},Cn.clipExtent=function(sn){return arguments.length?(Ma=sn==null?(Xi=hn=Ti=qi=null,Zl):Fn(Xi=+sn[0][0],hn=+sn[0][1],Ti=+sn[1][0],qi=+sn[1][1]),qa()):Xi==null?null:[[Xi,hn],[Ti,qi]]},Cn.scale=function(sn){return arguments.length?(gt=+sn,qa()):gt},Cn.translate=function(sn){return arguments.length?(Bt=+sn[0],wr=+sn[1],qa()):[Bt,wr]},Cn.angle=function(sn){return arguments.length?(fi=sn%360*d,Fi=_(fi),xi=p(fi),qa()):fi*h},Cn.reflectX=function(sn){return arguments.length?(vr=sn?-1:1,qa()):vr<0},Cn.reflectY=function(sn){return arguments.length?(Ur=sn?-1:1,qa()):Ur<0},Cn.fitExtent=function(sn,Ua){return df(Cn,sn,Ua)},Cn.fitSize=function(sn,Ua){return Cu(Cn,sn,Ua)},Cn.fitWidth=function(sn,Ua){return Nf(Cn,sn,Ua)},Cn.fitHeight=function(sn,Ua){return Zc(Cn,sn,Ua)},Cn}function Rc(gt,Bt){var wr=Bt*Bt,vr=wr*wr;return[gt*(.8707-.131979*wr+vr*(-.013791+vr*(.003971*wr-.001529*vr))),Bt*(1.007226+wr*(.015085+vr*(-.044475+.028874*wr-.005916*vr)))]}Rc.invert=function(gt,Bt){var wr=Bt,vr=25,Ur;do{var fi=wr*wr,xi=fi*fi;wr-=Ur=(wr*(1.007226+fi*(.015085+xi*(-.044475+.028874*fi-.005916*xi)))-Bt)/(1.007226+fi*(.015085*3+xi*(-.044475*7+.028874*9*fi-.005916*11*xi)))}while(v(Ur)>o&&--vr>0);return[gt/(.8707+(fi=wr*wr)*(-.131979+fi*(-.013791+fi*fi*fi*(.003971-.001529*fi)))),wr]};function gc(){return Pu(Rc).scale(175.295)}function hl(gt,Bt){return[p(Bt)*_(gt),_(Bt)]}hl.invert=Pc(T);function iu(){return Pu(hl).scale(249.5).clipAngle(90+o)}function mc(gt,Bt){var wr=p(Bt),vr=1+p(gt)*wr;return[wr*_(gt)/vr,_(Bt)/vr]}mc.invert=Pc(function(gt){return 2*x(gt)});function Yc(){return Pu(mc).scale(250).clipAngle(142)}function nc(gt,Bt){return[A(g((u+Bt)/2)),-gt]}nc.invert=function(gt,Bt){return[-Bt,2*x(k(gt))-u]};function gf(){var gt=ru(nc),Bt=gt.center,wr=gt.rotate;return gt.center=function(vr){return arguments.length?Bt([-vr[1],vr[0]]):(vr=Bt(),[vr[1],-vr[0]])},gt.rotate=function(vr){return arguments.length?wr([vr[0],vr[1],vr.length>2?vr[2]+90:90]):(vr=wr(),[vr[0],vr[1],vr[2]-90])},wr([0,0,90]).scale(159.155)}e.geoAlbers=Qs,e.geoAlbersUsa=gd,e.geoArea=me,e.geoAzimuthalEqualArea=sv,e.geoAzimuthalEqualAreaRaw=vc,e.geoAzimuthalEquidistant=Uf,e.geoAzimuthalEquidistantRaw=Lf,e.geoBounds=Ne,e.geoCentroid=yr,e.geoCircle=jn,e.geoClipAntimeridian=Hr,e.geoClipCircle=an,e.geoClipExtent=Sa,e.geoClipRectangle=Fn,e.geoConicConformal=sh,e.geoConicConformalRaw=md,e.geoConicEqualArea=yu,e.geoConicEqualAreaRaw=ic,e.geoConicEquidistant=Lh,e.geoConicEquidistantRaw=xu,e.geoContains=ms,e.geoDistance=Cs,e.geoEqualEarth=Ph,e.geoEqualEarthRaw=pf,e.geoEquirectangular=_u,e.geoEquirectangularRaw=Fs,e.geoGnomonic=Ih,e.geoGnomonicRaw=Dl,e.geoGraticule=Qu,e.geoGraticule10=Rl,e.geoIdentity=Wu,e.geoInterpolate=vo,e.geoLength=wl,e.geoMercator=oh,e.geoMercatorRaw=Iu,e.geoNaturalEarth1=gc,e.geoNaturalEarth1Raw=Rc,e.geoOrthographic=iu,e.geoOrthographicRaw=hl,e.geoPath=kh,e.geoProjection=Pu,e.geoProjectionMutator=Lc,e.geoRotation=Gi,e.geoStereographic=Yc,e.geoStereographicRaw=mc,e.geoStream=W,e.geoTransform=Kh,e.geoTransverseMercator=gf,e.geoTransverseMercatorRaw=nc,Object.defineProperty(e,"__esModule",{value:!0})})});var bRe=ye((Az,xRe)=>{(function(e,t){typeof Az=="object"&&typeof xRe!="undefined"?t(Az,xX(),$E()):t(e.d3=e.d3||{},e.d3,e.d3)})(Az,function(e,t,r){"use strict";var n=Math.abs,i=Math.atan,a=Math.atan2,o=Math.cos,s=Math.exp,l=Math.floor,u=Math.log,c=Math.max,f=Math.min,h=Math.pow,d=Math.round,v=Math.sign||function(he){return he>0?1:he<0?-1:0},x=Math.sin,b=Math.tan,p=1e-6,E=1e-12,k=Math.PI,A=k/2,L=k/4,_=Math.SQRT1_2,C=H(2),M=H(k),g=k*2,P=180/k,T=k/180;function F(he){return he?he/Math.sin(he):1}function q(he){return he>1?A:he<-1?-A:Math.asin(he)}function V(he){return he>1?0:he<-1?k:Math.acos(he)}function H(he){return he>0?Math.sqrt(he):0}function X(he){return he=s(2*he),(he-1)/(he+1)}function G(he){return(s(he)-s(-he))/2}function N(he){return(s(he)+s(-he))/2}function W(he){return u(he+H(he*he+1))}function re(he){return u(he+H(he*he-1))}function ae(he){var be=b(he/2),Pe=2*u(o(he/2))/(be*be);function Oe(Je,He){var et=o(Je),Mt=o(He),Dt=x(He),Ut=Mt*et,tr=-((1-Ut?u((1+Ut)/2)/(1-Ut):-.5)+Pe/(1+Ut));return[tr*Mt*x(Je),tr*Dt]}return Oe.invert=function(Je,He){var et=H(Je*Je+He*He),Mt=-he/2,Dt=50,Ut;if(!et)return[0,0];do{var tr=Mt/2,mr=o(tr),Rr=x(tr),zr=Rr/mr,Xr=-u(n(mr));Mt-=Ut=(2/zr*Xr-Pe*zr-et)/(-Xr/(Rr*Rr)+1-Pe/(2*mr*mr))*(mr<0?.7:1)}while(n(Ut)>p&&--Dt>0);var di=x(Mt);return[a(Je*di,et*o(Mt)),q(He*di/et)]},Oe}function _e(){var he=A,be=t.geoProjectionMutator(ae),Pe=be(he);return Pe.radius=function(Oe){return arguments.length?be(he=Oe*T):he*P},Pe.scale(179.976).clipAngle(147)}function Me(he,be){var Pe=o(be),Oe=F(V(Pe*o(he/=2)));return[2*Pe*x(he)*Oe,x(be)*Oe]}Me.invert=function(he,be){if(!(he*he+4*be*be>k*k+p)){var Pe=he,Oe=be,Je=25;do{var He=x(Pe),et=x(Pe/2),Mt=o(Pe/2),Dt=x(Oe),Ut=o(Oe),tr=x(2*Oe),mr=Dt*Dt,Rr=Ut*Ut,zr=et*et,Xr=1-Rr*Mt*Mt,di=Xr?V(Ut*Mt)*H(Li=1/Xr):Li=0,Li,Ci=2*di*Ut*et-he,Qi=di*Dt-be,Mn=Li*(Rr*zr+di*Ut*Mt*mr),pa=Li*(.5*He*tr-di*2*Dt*et),ea=Li*.25*(tr*et-di*Dt*Rr*He),Ga=Li*(mr*Mt+di*zr*Ut),To=pa*ea-Ga*Mn;if(!To)break;var Wa=(Qi*pa-Ci*Ga)/To,co=(Ci*ea-Qi*Mn)/To;Pe-=Wa,Oe-=co}while((n(Wa)>p||n(co)>p)&&--Je>0);return[Pe,Oe]}};function ke(){return t.geoProjection(Me).scale(152.63)}function ge(he){var be=x(he),Pe=o(he),Oe=he>=0?1:-1,Je=b(Oe*he),He=(1+be-Pe)/2;function et(Mt,Dt){var Ut=o(Dt),tr=o(Mt/=2);return[(1+Ut)*x(Mt),(Oe*Dt>-a(tr,Je)-.001?0:-Oe*10)+He+x(Dt)*Pe-(1+Ut)*be*tr]}return et.invert=function(Mt,Dt){var Ut=0,tr=0,mr=50;do{var Rr=o(Ut),zr=x(Ut),Xr=o(tr),di=x(tr),Li=1+Xr,Ci=Li*zr-Mt,Qi=He+di*Pe-Li*be*Rr-Dt,Mn=Li*Rr/2,pa=-zr*di,ea=be*Li*zr/2,Ga=Pe*Xr+be*Rr*di,To=pa*ea-Ga*Mn,Wa=(Qi*pa-Ci*Ga)/To/2,co=(Ci*ea-Qi*Mn)/To;n(co)>2&&(co/=2),Ut-=Wa,tr-=co}while((n(Wa)>p||n(co)>p)&&--mr>0);return Oe*tr>-a(o(Ut),Je)-.001?[Ut*2,tr]:null},et}function ie(){var he=20*T,be=he>=0?1:-1,Pe=b(be*he),Oe=t.geoProjectionMutator(ge),Je=Oe(he),He=Je.stream;return Je.parallel=function(et){return arguments.length?(Pe=b((be=(he=et*T)>=0?1:-1)*he),Oe(he)):he*P},Je.stream=function(et){var Mt=Je.rotate(),Dt=He(et),Ut=(Je.rotate([0,0]),He(et)),tr=Je.precision();return Je.rotate(Mt),Dt.sphere=function(){Ut.polygonStart(),Ut.lineStart();for(var mr=be*-180;be*mr<180;mr+=be*90)Ut.point(mr,be*90);if(he)for(;be*(mr-=3*be*tr)>=-180;)Ut.point(mr,be*-a(o(mr*T/2),Pe)*P);Ut.lineEnd(),Ut.polygonEnd()},Dt},Je.scale(218.695).center([0,28.0974])}function Te(he,be){var Pe=b(be/2),Oe=H(1-Pe*Pe),Je=1+Oe*o(he/=2),He=x(he)*Oe/Je,et=Pe/Je,Mt=He*He,Dt=et*et;return[4/3*He*(3+Mt-3*Dt),4/3*et*(3+3*Mt-Dt)]}Te.invert=function(he,be){if(he*=3/8,be*=3/8,!he&&n(be)>1)return null;var Pe=he*he,Oe=be*be,Je=1+Pe+Oe,He=H((Je-H(Je*Je-4*be*be))/2),et=q(He)/3,Mt=He?re(n(be/He))/3:W(n(he))/3,Dt=o(et),Ut=N(Mt),tr=Ut*Ut-Dt*Dt;return[v(he)*2*a(G(Mt)*Dt,.25-tr),v(be)*2*a(Ut*x(et),.25+tr)]};function Ee(){return t.geoProjection(Te).scale(66.1603)}var Ae=H(8),ze=u(1+C);function Ce(he,be){var Pe=n(be);return Pe<L?[he,u(b(L+be/2))]:[he*o(Pe)*(2*C-1/x(Pe)),v(be)*(2*C*(Pe-L)-u(b(Pe/2)))]}Ce.invert=function(he,be){if((He=n(be))<ze)return[he,2*i(s(be))-A];var Pe=L,Oe=25,Je,He;do{var et=o(Pe/2),Mt=b(Pe/2);Pe-=Je=(Ae*(Pe-L)-u(Mt)-He)/(Ae-et*et/(2*Mt))}while(n(Je)>E&&--Oe>0);return[he/(o(Pe)*(Ae-1/x(Pe))),v(be)*Pe]};function me(){return t.geoProjection(Ce).scale(112.314)}function Re(he){var be=2*k/he;function Pe(Oe,Je){var He=t.geoAzimuthalEquidistantRaw(Oe,Je);if(n(Oe)>A){var et=a(He[1],He[0]),Mt=H(He[0]*He[0]+He[1]*He[1]),Dt=be*d((et-A)/be)+A,Ut=a(x(et-=Dt),2-o(et));et=Dt+q(k/Mt*x(Ut))-Ut,He[0]=Mt*o(et),He[1]=Mt*x(et)}return He}return Pe.invert=function(Oe,Je){var He=H(Oe*Oe+Je*Je);if(He>A){var et=a(Je,Oe),Mt=be*d((et-A)/be)+A,Dt=et>Mt?-1:1,Ut=He*o(Mt-et),tr=1/b(Dt*V((Ut-k)/H(k*(k-2*Ut)+He*He)));et=Mt+2*i((tr+Dt*H(tr*tr-3))/3),Oe=He*o(et),Je=He*x(et)}return t.geoAzimuthalEquidistantRaw.invert(Oe,Je)},Pe}function ce(){var he=5,be=t.geoProjectionMutator(Re),Pe=be(he),Oe=Pe.stream,Je=.01,He=-o(Je*T),et=x(Je*T);return Pe.lobes=function(Mt){return arguments.length?be(he=+Mt):he},Pe.stream=function(Mt){var Dt=Pe.rotate(),Ut=Oe(Mt),tr=(Pe.rotate([0,0]),Oe(Mt));return Pe.rotate(Dt),Ut.sphere=function(){tr.polygonStart(),tr.lineStart();for(var mr=0,Rr=360/he,zr=2*k/he,Xr=90-180/he,di=A;mr<he;++mr,Xr-=Rr,di-=zr)tr.point(a(et*o(di),He)*P,q(et*x(di))*P),Xr<-90?(tr.point(-90,-180-Xr-Je),tr.point(-90,-180-Xr+Je)):(tr.point(90,Xr+Je),tr.point(90,Xr-Je));tr.lineEnd(),tr.polygonEnd()},Ut},Pe.scale(87.8076).center([0,17.1875]).clipAngle(180-.001)}function Ge(he,be){if(arguments.length<2&&(be=he),be===1)return t.geoAzimuthalEqualAreaRaw;if(be===1/0)return nt;function Pe(Oe,Je){var He=t.geoAzimuthalEqualAreaRaw(Oe/be,Je);return He[0]*=he,He}return Pe.invert=function(Oe,Je){var He=t.geoAzimuthalEqualAreaRaw.invert(Oe/he,Je);return He[0]*=be,He},Pe}function nt(he,be){return[he*o(be)/o(be/=2),2*x(be)]}nt.invert=function(he,be){var Pe=2*q(be/2);return[he*o(Pe/2)/o(Pe),Pe]};function ct(){var he=2,be=t.geoProjectionMutator(Ge),Pe=be(he);return Pe.coefficient=function(Oe){return arguments.length?be(he=+Oe):he},Pe.scale(169.529)}function qt(he,be,Pe){var Oe=100,Je,He,et;Pe=Pe===void 0?0:+Pe,be=+be;do He=he(Pe),et=he(Pe+p),He===et&&(et=He+p),Pe-=Je=-1*p*(He-be)/(He-et);while(Oe-- >0&&n(Je)>p);return Oe<0?NaN:Pe}function rt(he,be,Pe){return be===void 0&&(be=40),Pe===void 0&&(Pe=E),function(Oe,Je,He,et){var Mt,Dt,Ut;He=He===void 0?0:+He,et=et===void 0?0:+et;for(var tr=0;tr<be;tr++){var mr=he(He,et),Rr=mr[0]-Oe,zr=mr[1]-Je;if(n(Rr)<Pe&&n(zr)<Pe)break;var Xr=Rr*Rr+zr*zr;if(Xr>Mt){He-=Dt/=2,et-=Ut/=2;continue}Mt=Xr;var di=(He>0?-1:1)*Pe,Li=(et>0?-1:1)*Pe,Ci=he(He+di,et),Qi=he(He,et+Li),Mn=(Ci[0]-mr[0])/di,pa=(Ci[1]-mr[1])/di,ea=(Qi[0]-mr[0])/Li,Ga=(Qi[1]-mr[1])/Li,To=Ga*Mn-pa*ea,Wa=(n(To)<.5?.5:1)/To;if(Dt=(zr*ea-Rr*Ga)*Wa,Ut=(Rr*pa-zr*Mn)*Wa,He+=Dt,et+=Ut,n(Dt)<Pe&&n(Ut)<Pe)break}return[He,et]}}function ot(){var he=Ge(1.68,2),be=1.4,Pe=12;function Oe(Je,He){if(Je+He<-be){var et=(Je-He+1.6)*(Je+He+be)/8;Je+=et,He-=.8*et*x(He+k/2)}var Mt=he(Je,He),Dt=(1-o(Je*He))/Pe;return Mt[1]<0&&(Mt[0]*=1+Dt),Mt[1]>0&&(Mt[1]*=1+Dt/1.5*Mt[0]*Mt[0]),Mt}return Oe.invert=rt(Oe),Oe}function Rt(){return t.geoProjection(ot()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function kt(he,be){var Pe=he*x(be),Oe=30,Je;do be-=Je=(be+x(be)-Pe)/(1+o(be));while(n(Je)>p&&--Oe>0);return be/2}function Ct(he,be,Pe){function Oe(Je,He){return[he*Je*o(He=kt(Pe,He)),be*x(He)]}return Oe.invert=function(Je,He){return He=q(He/be),[Je/(he*o(He)),q((2*He+x(2*He))/Pe)]},Oe}var Yt=Ct(C/A,C,k);function xr(){return t.geoProjection(Yt).scale(169.529)}var er=2.00276,Ke=1.11072;function xt(he,be){var Pe=kt(k,be);return[er*he/(1/o(be)+Ke/o(Pe)),(be+C*x(Pe))/er]}xt.invert=function(he,be){var Pe=er*be,Oe=be<0?-L:L,Je=25,He,et;do et=Pe-C*x(Oe),Oe-=He=(x(2*Oe)+2*Oe-k*x(et))/(2*o(2*Oe)+2+k*o(et)*C*o(Oe));while(n(He)>p&&--Je>0);return et=Pe-C*x(Oe),[he*(1/o(et)+Ke/o(Oe))/er,et]};function bt(){return t.geoProjection(xt).scale(160.857)}function Lt(he){var be=0,Pe=t.geoProjectionMutator(he),Oe=Pe(be);return Oe.parallel=function(Je){return arguments.length?Pe(be=Je*T):be*P},Oe}function St(he,be){return[he*o(be),be]}St.invert=function(he,be){return[he/o(be),be]};function Et(){return t.geoProjection(St).scale(152.63)}function dt(he){if(!he)return St;var be=1/b(he);function Pe(Oe,Je){var He=be+he-Je,et=He&&Oe*o(Je)/He;return[He*x(et),be-He*o(et)]}return Pe.invert=function(Oe,Je){var He=H(Oe*Oe+(Je=be-Je)*Je),et=be+he-He;return[He/o(et)*a(Oe,Je),et]},Pe}function Ht(){return Lt(dt).scale(123.082).center([0,26.1441]).parallel(45)}function $t(he){function be(Pe,Oe){var Je=A-Oe,He=Je&&Pe*he*x(Je)/Je;return[Je*x(He)/he,A-Je*o(He)]}return be.invert=function(Pe,Oe){var Je=Pe*he,He=A-Oe,et=H(Je*Je+He*He),Mt=a(Je,He);return[(et?et/x(et):1)*Mt/he,A-et]},be}function fr(){var he=.5,be=t.geoProjectionMutator($t),Pe=be(he);return Pe.fraction=function(Oe){return arguments.length?be(he=+Oe):he},Pe.scale(158.837)}var _r=Ct(1,4/k,k);function Br(){return t.geoProjection(_r).scale(152.63)}function Or(he,be,Pe,Oe,Je,He){var et=o(He),Mt;if(n(he)>1||n(He)>1)Mt=V(Pe*Je+be*Oe*et);else{var Dt=x(he/2),Ut=x(He/2);Mt=2*q(H(Dt*Dt+be*Oe*Ut*Ut))}return n(Mt)>p?[Mt,a(Oe*x(He),be*Je-Pe*Oe*et)]:[0,0]}function Nr(he,be,Pe){return V((he*he+be*be-Pe*Pe)/(2*he*be))}function ut(he){return he-2*k*l((he+k)/(2*k))}function Ne(he,be,Pe){for(var Oe=[[he[0],he[1],x(he[1]),o(he[1])],[be[0],be[1],x(be[1]),o(be[1])],[Pe[0],Pe[1],x(Pe[1]),o(Pe[1])]],Je=Oe[2],He,et=0;et<3;++et,Je=He)He=Oe[et],Je.v=Or(He[1]-Je[1],Je[3],Je[2],He[3],He[2],He[0]-Je[0]),Je.point=[0,0];var Mt=Nr(Oe[0].v[0],Oe[2].v[0],Oe[1].v[0]),Dt=Nr(Oe[0].v[0],Oe[1].v[0],Oe[2].v[0]),Ut=k-Mt;Oe[2].point[1]=0,Oe[0].point[0]=-(Oe[1].point[0]=Oe[0].v[0]/2);var tr=[Oe[2].point[0]=Oe[0].point[0]+Oe[2].v[0]*o(Mt),2*(Oe[0].point[1]=Oe[1].point[1]=Oe[2].v[0]*x(Mt))];function mr(Rr,zr){var Xr=x(zr),di=o(zr),Li=new Array(3),Ci;for(Ci=0;Ci<3;++Ci){var Qi=Oe[Ci];if(Li[Ci]=Or(zr-Qi[1],Qi[3],Qi[2],di,Xr,Rr-Qi[0]),!Li[Ci][0])return Qi.point;Li[Ci][1]=ut(Li[Ci][1]-Qi.v[1])}var Mn=tr.slice();for(Ci=0;Ci<3;++Ci){var pa=Ci==2?0:Ci+1,ea=Nr(Oe[Ci].v[0],Li[Ci][0],Li[pa][0]);Li[Ci][1]<0&&(ea=-ea),Ci?Ci==1?(ea=Dt-ea,Mn[0]-=Li[Ci][0]*o(ea),Mn[1]-=Li[Ci][0]*x(ea)):(ea=Ut-ea,Mn[0]+=Li[Ci][0]*o(ea),Mn[1]+=Li[Ci][0]*x(ea)):(Mn[0]+=Li[Ci][0]*o(ea),Mn[1]-=Li[Ci][0]*x(ea))}return Mn[0]/=3,Mn[1]/=3,Mn}return mr}function Ye(he){return he[0]*=T,he[1]*=T,he}function Ve(){return Xe([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Xe(he,be,Pe){var Oe=t.geoCentroid({type:"MultiPoint",coordinates:[he,be,Pe]}),Je=[-Oe[0],-Oe[1]],He=t.geoRotation(Je),et=Ne(Ye(He(he)),Ye(He(be)),Ye(He(Pe)));et.invert=rt(et);var Mt=t.geoProjection(et).rotate(Je),Dt=Mt.center;return delete Mt.rotate,Mt.center=function(Ut){return arguments.length?Dt(He(Ut)):He.invert(Dt())},Mt.clipAngle(90)}function ht(he,be){var Pe=H(1-x(be));return[2/M*he*Pe,M*(1-Pe)]}ht.invert=function(he,be){var Pe=(Pe=be/M-1)*Pe;return[Pe>0?he*H(k/Pe)/2:0,q(1-Pe)]};function Le(){return t.geoProjection(ht).scale(95.6464).center([0,30])}function xe(he){var be=b(he);function Pe(Oe,Je){return[Oe,(Oe?Oe/x(Oe):1)*(x(Je)*o(Oe)-be*o(Je))]}return Pe.invert=be?function(Oe,Je){Oe&&(Je*=x(Oe)/Oe);var He=o(Oe);return[Oe,2*a(H(He*He+be*be-Je*Je)-He,be-Je)]}:function(Oe,Je){return[Oe,q(Oe?Je*b(Oe)/Oe:Je)]},Pe}function Se(){return Lt(xe).scale(249.828).clipAngle(90)}var lt=H(3);function Gt(he,be){return[lt*he*(2*o(2*be/3)-1)/M,lt*M*x(be/3)]}Gt.invert=function(he,be){var Pe=3*q(be/(lt*M));return[M*he/(lt*(2*o(2*Pe/3)-1)),Pe]};function Vt(){return t.geoProjection(Gt).scale(156.19)}function ar(he){var be=o(he);function Pe(Oe,Je){return[Oe*be,x(Je)/be]}return Pe.invert=function(Oe,Je){return[Oe/be,q(Je*be)]},Pe}function Qr(){return Lt(ar).parallel(38.58).scale(195.044)}function ai(he){var be=o(he);function Pe(Oe,Je){return[Oe*be,(1+be)*b(Je/2)]}return Pe.invert=function(Oe,Je){return[Oe/be,i(Je/(1+be))*2]},Pe}function jr(){return Lt(ai).scale(124.75)}function ri(he,be){var Pe=H(8/(3*k));return[Pe*he*(1-n(be)/k),Pe*be]}ri.invert=function(he,be){var Pe=H(8/(3*k)),Oe=be/Pe;return[he/(Pe*(1-n(Oe)/k)),Oe]};function bi(){return t.geoProjection(ri).scale(165.664)}function nn(he,be){var Pe=H(4-3*x(n(be)));return[2/H(6*k)*he*Pe,v(be)*H(2*k/3)*(2-Pe)]}nn.invert=function(he,be){var Pe=2-n(be)/H(2*k/3);return[he*H(6*k)/(2*Pe),v(be)*q((4-Pe*Pe)/3)]};function Wi(){return t.geoProjection(nn).scale(165.664)}function Ni(he,be){var Pe=H(k*(4+k));return[2/Pe*he*(1+H(1-4*be*be/(k*k))),4/Pe*be]}Ni.invert=function(he,be){var Pe=H(k*(4+k))/2;return[he*Pe/(1+H(1-be*be*(4+k)/(4*k))),be*Pe/2]};function _n(){return t.geoProjection(Ni).scale(180.739)}function $i(he,be){var Pe=(2+A)*x(be);be/=2;for(var Oe=0,Je=1/0;Oe<10&&n(Je)>p;Oe++){var He=o(be);be-=Je=(be+x(be)*(He+2)-Pe)/(2*He*(1+He))}return[2/H(k*(4+k))*he*(1+o(be)),2*H(k/(4+k))*x(be)]}$i.invert=function(he,be){var Pe=be*H((4+k)/k)/2,Oe=q(Pe),Je=o(Oe);return[he/(2/H(k*(4+k))*(1+Je)),q((Oe+Pe*(Je+2))/(2+A))]};function zn(){return t.geoProjection($i).scale(180.739)}function Wn(he,be){return[he*(1+o(be))/H(2+k),2*be/H(2+k)]}Wn.invert=function(he,be){var Pe=H(2+k),Oe=be*Pe/2;return[Pe*he/(1+o(Oe)),Oe]};function It(){return t.geoProjection(Wn).scale(173.044)}function ft(he,be){for(var Pe=(1+A)*x(be),Oe=0,Je=1/0;Oe<10&&n(Je)>p;Oe++)be-=Je=(be+x(be)-Pe)/(1+o(be));return Pe=H(2+k),[he*(1+o(be))/Pe,2*be/Pe]}ft.invert=function(he,be){var Pe=1+A,Oe=H(Pe/2);return[he*2*Oe/(1+o(be*=Oe)),q((be+x(be))/Pe)]};function jt(){return t.geoProjection(ft).scale(173.044)}var Zt=3+2*C;function yr(he,be){var Pe=x(he/=2),Oe=o(he),Je=H(o(be)),He=o(be/=2),et=x(be)/(He+C*Oe*Je),Mt=H(2/(1+et*et)),Dt=H((C*He+(Oe+Pe)*Je)/(C*He+(Oe-Pe)*Je));return[Zt*(Mt*(Dt-1/Dt)-2*u(Dt)),Zt*(Mt*et*(Dt+1/Dt)-2*i(et))]}yr.invert=function(he,be){if(!(He=Te.invert(he/1.2,be*1.065)))return null;var Pe=He[0],Oe=He[1],Je=20,He;he/=Zt,be/=Zt;do{var et=Pe/2,Mt=Oe/2,Dt=x(et),Ut=o(et),tr=x(Mt),mr=o(Mt),Rr=o(Oe),zr=H(Rr),Xr=tr/(mr+C*Ut*zr),di=Xr*Xr,Li=H(2/(1+di)),Ci=C*mr+(Ut+Dt)*zr,Qi=C*mr+(Ut-Dt)*zr,Mn=Ci/Qi,pa=H(Mn),ea=pa-1/pa,Ga=pa+1/pa,To=Li*ea-2*u(pa)-he,Wa=Li*Xr*Ga-2*i(Xr)-be,co=tr&&_*zr*Dt*di/tr,Ro=(C*Ut*mr+zr)/(2*(mr+C*Ut*zr)*(mr+C*Ut*zr)*zr),Ds=-.5*Xr*Li*Li*Li,As=Ds*co,yo=Ds*Ro,po=(po=2*mr+C*zr*(Ut-Dt))*po*pa,_l=(C*Ut*mr*zr+Rr)/po,Hl=-(C*Dt*tr)/(zr*po),Zu=ea*As-2*_l/pa+Li*(_l+_l/Mn),cu=ea*yo-2*Hl/pa+Li*(Hl+Hl/Mn),el=Xr*Ga*As-2*co/(1+di)+Li*Ga*co+Li*Xr*(_l-_l/Mn),au=Xr*Ga*yo-2*Ro/(1+di)+Li*Ga*Ro+Li*Xr*(Hl-Hl/Mn),zc=cu*el-au*Zu;if(!zc)break;var zl=(Wa*cu-To*au)/zc,Fl=(To*el-Wa*Zu)/zc;Pe-=zl,Oe=c(-A,f(A,Oe-Fl))}while((n(zl)>p||n(Fl)>p)&&--Je>0);return n(n(Oe)-A)<p?[0,Oe]:Je&&[Pe,Oe]};function Fr(){return t.geoProjection(yr).scale(62.5271)}var Zr=o(35*T);function Vr(he,be){var Pe=b(be/2);return[he*Zr*H(1-Pe*Pe),(1+Zr)*Pe]}Vr.invert=function(he,be){var Pe=be/(1+Zr);return[he&&he/(Zr*H(1-Pe*Pe)),2*i(Pe)]};function gi(){return t.geoProjection(Vr).scale(137.152)}function Si(he,be){var Pe=be/2,Oe=o(Pe);return[2*he/M*o(be)*Oe*Oe,M*b(Pe)]}Si.invert=function(he,be){var Pe=i(be/M),Oe=o(Pe),Je=2*Pe;return[he*M/2/(o(Je)*Oe*Oe),Je]};function Mi(){return t.geoProjection(Si).scale(135.264)}function Pi(he){var be=1-he,Pe=He(k,0)[0]-He(-k,0)[0],Oe=He(0,A)[1]-He(0,-A)[1],Je=H(2*Oe/Pe);function He(Dt,Ut){var tr=o(Ut),mr=x(Ut);return[tr/(be+he*tr)*Dt,be*Ut+he*mr]}function et(Dt,Ut){var tr=He(Dt,Ut);return[tr[0]*Je,tr[1]/Je]}function Mt(Dt){return et(0,Dt)[1]}return et.invert=function(Dt,Ut){var tr=qt(Mt,Ut),mr=Dt/Je*(he+be/o(tr));return[mr,tr]},et}function Gi(){var he=.5,be=t.geoProjectionMutator(Pi),Pe=be(he);return Pe.alpha=function(Oe){return arguments.length?be(he=+Oe):he},Pe.scale(168.725)}function Ki(he){return[he[0]/2,q(b(he[1]/2*T))*P]}function ka(he){return[he[0]*2,2*i(x(he[1]*T))*P]}function jn(he){he==null&&(he=t.geoOrthographic);var be=he(),Pe=t.geoEquirectangular().scale(P).precision(0).clipAngle(null).translate([0,0]);function Oe(He){return be(Ki(He))}be.invert&&(Oe.invert=function(He){return ka(be.invert(He))}),Oe.stream=function(He){var et=be.stream(He),Mt=Pe.stream({point:function(Dt,Ut){et.point(Dt/2,q(b(-Ut/2*T))*P)},lineStart:function(){et.lineStart()},lineEnd:function(){et.lineEnd()},polygonStart:function(){et.polygonStart()},polygonEnd:function(){et.polygonEnd()}});return Mt.sphere=et.sphere,Mt};function Je(He){Oe[He]=function(){return arguments.length?(be[He].apply(be,arguments),Oe):be[He]()}}return Oe.rotate=function(He){return arguments.length?(Pe.rotate(He),Oe):Pe.rotate()},Oe.center=function(He){return arguments.length?(be.center(Ki(He)),Oe):ka(be.center())},Je("angle"),Je("clipAngle"),Je("clipExtent"),Je("fitExtent"),Je("fitHeight"),Je("fitSize"),Je("fitWidth"),Je("scale"),Je("translate"),Je("precision"),Oe.scale(249.5)}function la(he,be){var Pe=2*k/be,Oe=he*he;function Je(He,et){var Mt=t.geoAzimuthalEquidistantRaw(He,et),Dt=Mt[0],Ut=Mt[1],tr=Dt*Dt+Ut*Ut;if(tr>Oe){var mr=H(tr),Rr=a(Ut,Dt),zr=Pe*d(Rr/Pe),Xr=Rr-zr,di=he*o(Xr),Li=(he*x(Xr)-Xr*x(di))/(A-di),Ci=Fa(Xr,Li),Qi=(k-he)/Ra(Ci,di,k);Dt=mr;var Mn=50,pa;do Dt-=pa=(he+Ra(Ci,di,Dt)*Qi-mr)/(Ci(Dt)*Qi);while(n(pa)>p&&--Mn>0);Ut=Xr*x(Dt),Dt<A&&(Ut-=Li*(Dt-A));var ea=x(zr),Ga=o(zr);Mt[0]=Dt*Ga-Ut*ea,Mt[1]=Dt*ea+Ut*Ga}return Mt}return Je.invert=function(He,et){var Mt=He*He+et*et;if(Mt>Oe){var Dt=H(Mt),Ut=a(et,He),tr=Pe*d(Ut/Pe),mr=Ut-tr;He=Dt*o(mr),et=Dt*x(mr);for(var Rr=He-A,zr=x(He),Xr=et/zr,di=He<A?1/0:0,Li=10;;){var Ci=he*x(Xr),Qi=he*o(Xr),Mn=x(Qi),pa=A-Qi,ea=(Ci-Xr*Mn)/pa,Ga=Fa(Xr,ea);if(n(di)<E||!--Li)break;Xr-=di=(Xr*zr-ea*Rr-et)/(zr-Rr*2*(pa*(Qi+Xr*Ci*o(Qi)-Mn)-Ci*(Ci-Xr*Mn))/(pa*pa))}Dt=he+Ra(Ga,Qi,He)*(k-he)/Ra(Ga,Qi,k),Ut=tr+Xr,He=Dt*o(Ut),et=Dt*x(Ut)}return t.geoAzimuthalEquidistantRaw.invert(He,et)},Je}function Fa(he,be){return function(Pe){var Oe=he*o(Pe);return Pe<A&&(Oe-=be),H(1+Oe*Oe)}}function Ra(he,be,Pe){for(var Oe=50,Je=(Pe-be)/Oe,He=he(be)+he(Pe),et=1,Mt=be;et<Oe;++et)He+=2*he(Mt+=Je);return He*.5*Je}function jo(){var he=6,be=30*T,Pe=o(be),Oe=x(be),Je=t.geoProjectionMutator(la),He=Je(be,he),et=He.stream,Mt=.01,Dt=-o(Mt*T),Ut=x(Mt*T);return He.radius=function(tr){return arguments.length?(Pe=o(be=tr*T),Oe=x(be),Je(be,he)):be*P},He.lobes=function(tr){return arguments.length?Je(be,he=+tr):he},He.stream=function(tr){var mr=He.rotate(),Rr=et(tr),zr=(He.rotate([0,0]),et(tr));return He.rotate(mr),Rr.sphere=function(){zr.polygonStart(),zr.lineStart();for(var Xr=0,di=2*k/he,Li=0;Xr<he;++Xr,Li-=di)zr.point(a(Ut*o(Li),Dt)*P,q(Ut*x(Li))*P),zr.point(a(Oe*o(Li-di/2),Pe)*P,q(Oe*x(Li-di/2))*P);zr.lineEnd(),zr.polygonEnd()},Rr},He.rotate([90,-40]).scale(91.7095).clipAngle(180-.001)}function oa(he,be,Pe,Oe,Je,He,et,Mt){arguments.length<8&&(Mt=0);function Dt(Ut,tr){if(!tr)return[he*Ut/k,0];var mr=tr*tr,Rr=he+mr*(be+mr*(Pe+mr*Oe)),zr=tr*(Je-1+mr*(He-Mt+mr*et)),Xr=(Rr*Rr+zr*zr)/(2*zr),di=Ut*q(Rr/Xr)/k;return[Xr*x(di),tr*(1+mr*Mt)+Xr*(1-o(di))]}return Dt.invert=function(Ut,tr){var mr=k*Ut/he,Rr=tr,zr,Xr,di=50;do{var Li=Rr*Rr,Ci=he+Li*(be+Li*(Pe+Li*Oe)),Qi=Rr*(Je-1+Li*(He-Mt+Li*et)),Mn=Ci*Ci+Qi*Qi,pa=2*Qi,ea=Mn/pa,Ga=ea*ea,To=q(Ci/ea)/k,Wa=mr*To,co=Ci*Ci,Ro=(2*be+Li*(4*Pe+Li*6*Oe))*Rr,Ds=Je+Li*(3*He+Li*5*et),As=2*(Ci*Ro+Qi*(Ds-1)),yo=2*(Ds-1),po=(As*pa-Mn*yo)/(pa*pa),_l=o(Wa),Hl=x(Wa),Zu=ea*_l,cu=ea*Hl,el=mr/k*(1/H(1-co/Ga))*(Ro*ea-Ci*po)/Ga,au=cu-Ut,zc=Rr*(1+Li*Mt)+ea-Zu-tr,zl=po*Hl+Zu*el,Fl=Zu*To,Z=1+po-(po*_l-cu*el),oe=cu*To,we=zl*oe-Z*Fl;if(!we)break;mr-=zr=(zc*zl-au*Z)/we,Rr-=Xr=(au*oe-zc*Fl)/we}while((n(zr)>p||n(Xr)>p)&&--di>0);return[mr,Rr]},Dt}var Sn=oa(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Ha(){return t.geoProjection(Sn).scale(149.995)}var oo=oa(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function xn(){return t.geoProjection(oo).scale(153.93)}var _t=oa(5/6*k,-.62636,-.0344,0,1.3493,-.05524,0,.045);function br(){return t.geoProjection(_t).scale(130.945)}function Hr(he,be){var Pe=he*he,Oe=be*be;return[he*(1-.162388*Oe)*(.87-952426e-9*Pe*Pe),be*(1+Oe/12)]}Hr.invert=function(he,be){var Pe=he,Oe=be,Je=50,He;do{var et=Oe*Oe;Oe-=He=(Oe*(1+et/12)-be)/(1+et/4)}while(n(He)>p&&--Je>0);Je=50,he/=1-.162388*et;do{var Mt=(Mt=Pe*Pe)*Mt;Pe-=He=(Pe*(.87-952426e-9*Mt)-he)/(.87-.00476213*Mt)}while(n(He)>p&&--Je>0);return[Pe,Oe]};function ti(){return t.geoProjection(Hr).scale(131.747)}var zi=oa(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Yi(){return t.geoProjection(zi).scale(131.087)}function an(he){var be=he(A,0)[0]-he(-A,0)[0];function Pe(Oe,Je){var He=Oe>0?-.5:.5,et=he(Oe+He*k,Je);return et[0]-=He*be,et}return he.invert&&(Pe.invert=function(Oe,Je){var He=Oe>0?-.5:.5,et=he.invert(Oe+He*be,Je),Mt=et[0]-He*k;return Mt<-k?Mt+=2*k:Mt>k&&(Mt-=2*k),et[0]=Mt,et}),Pe}function hi(he,be){var Pe=v(he),Oe=v(be),Je=o(be),He=o(he)*Je,et=x(he)*Je,Mt=x(Oe*be);he=n(a(et,Mt)),be=q(He),n(he-A)>p&&(he%=A);var Dt=Ji(he>k/4?A-he:he,be);return he>k/4&&(Mt=Dt[0],Dt[0]=-Dt[1],Dt[1]=-Mt),Dt[0]*=Pe,Dt[1]*=-Oe,Dt}hi.invert=function(he,be){n(he)>1&&(he=v(he)*2-he),n(be)>1&&(be=v(be)*2-be);var Pe=v(he),Oe=v(be),Je=-Pe*he,He=-Oe*be,et=He/Je<1,Mt=ua(et?He:Je,et?Je:He),Dt=Mt[0],Ut=Mt[1],tr=o(Ut);return et&&(Dt=-A-Dt),[Pe*(a(x(Dt)*tr,-x(Ut))+k),Oe*q(o(Dt)*tr)]};function Ji(he,be){if(be===A)return[0,0];var Pe=x(be),Oe=Pe*Pe,Je=Oe*Oe,He=1+Je,et=1+3*Je,Mt=1-Je,Dt=q(1/H(He)),Ut=Mt+Oe*He*Dt,tr=(1-Pe)/Ut,mr=H(tr),Rr=tr*He,zr=H(Rr),Xr=mr*Mt,di,Li;if(he===0)return[0,-(Xr+Oe*zr)];var Ci=o(be),Qi=1/Ci,Mn=2*Pe*Ci,pa=(-3*Oe+Dt*et)*Mn,ea=(-Ut*Ci-(1-Pe)*pa)/(Ut*Ut),Ga=.5*ea/mr,To=Mt*Ga-2*Oe*mr*Mn,Wa=Oe*He*ea+tr*et*Mn,co=-Qi*Mn,Ro=-Qi*Wa,Ds=-2*Qi*To,As=4*he/k,yo;if(he>.222*k||be<k/4&&he>.175*k){if(di=(Xr+Oe*H(Rr*(1+Je)-Xr*Xr))/(1+Je),he>k/4)return[di,di];var po=di,_l=.5*di;di=.5*(_l+po),Li=50;do{var Hl=H(Rr-di*di),Zu=di*(Ds+co*Hl)+Ro*q(di/zr)-As;if(!Zu)break;Zu<0?_l=di:po=di,di=.5*(_l+po)}while(n(po-_l)>p&&--Li>0)}else{di=p,Li=25;do{var cu=di*di,el=H(Rr-cu),au=Ds+co*el,zc=di*au+Ro*q(di/zr)-As,zl=au+(Ro-co*cu)/el;di-=yo=el?zc/zl:0}while(n(yo)>p&&--Li>0)}return[di,-Xr-Oe*H(Rr-di*di)]}function ua(he,be){for(var Pe=0,Oe=1,Je=.5,He=50;;){var et=Je*Je,Mt=H(Je),Dt=q(1/H(1+et)),Ut=1-et+Je*(1+et)*Dt,tr=(1-Mt)/Ut,mr=H(tr),Rr=tr*(1+et),zr=mr*(1-et),Xr=Rr-he*he,di=H(Xr),Li=be+zr+Je*di;if(n(Oe-Pe)<E||--He===0||Li===0)break;Li>0?Pe=Je:Oe=Je,Je=.5*(Pe+Oe)}if(!He)return null;var Ci=q(Mt),Qi=o(Ci),Mn=1/Qi,pa=2*Mt*Qi,ea=(-3*Je+Dt*(1+3*et))*pa,Ga=(-Ut*Qi-(1-Mt)*ea)/(Ut*Ut),To=.5*Ga/mr,Wa=(1-et)*To-2*Je*mr*pa,co=-2*Mn*Wa,Ro=-Mn*pa,Ds=-Mn*(Je*(1+et)*Ga+tr*(1+3*et)*pa);return[k/4*(he*(co+Ro*di)+Ds*q(he/H(Rr))),Ci]}function Fn(){return t.geoProjection(an(hi)).scale(239.75)}function Sa(he,be,Pe){var Oe,Je,He;return he?(Oe=go(he,Pe),be?(Je=go(be,1-Pe),He=Je[1]*Je[1]+Pe*Oe[0]*Oe[0]*Je[0]*Je[0],[[Oe[0]*Je[2]/He,Oe[1]*Oe[2]*Je[0]*Je[1]/He],[Oe[1]*Je[1]/He,-Oe[0]*Oe[2]*Je[0]*Je[2]/He],[Oe[2]*Je[1]*Je[2]/He,-Pe*Oe[0]*Oe[1]*Je[0]/He]]):[[Oe[0],0],[Oe[1],0],[Oe[2],0]]):(Je=go(be,1-Pe),[[0,Je[0]/Je[1]],[1/Je[1],0],[Je[2]/Je[1],0]])}function go(he,be){var Pe,Oe,Je,He,et;if(be<p)return He=x(he),Oe=o(he),Pe=be*(he-He*Oe)/4,[He-Pe*Oe,Oe+Pe*He,1-be*He*He/2,he-Pe];if(be>=1-p)return Pe=(1-be)/4,Oe=N(he),He=X(he),Je=1/Oe,et=Oe*G(he),[He+Pe*(et-he)/(Oe*Oe),Je-Pe*He*Je*(et-he),Je+Pe*He*Je*(et+he),2*i(s(he))-A+Pe*(et-he)/Oe];var Mt=[1,0,0,0,0,0,0,0,0],Dt=[H(be),0,0,0,0,0,0,0,0],Ut=0;for(Oe=H(1-be),et=1;n(Dt[Ut]/Mt[Ut])>p&&Ut<8;)Pe=Mt[Ut++],Dt[Ut]=(Pe-Oe)/2,Mt[Ut]=(Pe+Oe)/2,Oe=H(Pe*Oe),et*=2;Je=et*Mt[Ut]*he;do He=Dt[Ut]*x(Oe=Je)/Mt[Ut],Je=(q(He)+Je)/2;while(--Ut);return[x(Je),He=o(Je),He/o(Je-Oe),Je]}function Oo(he,be,Pe){var Oe=n(he),Je=n(be),He=G(Je);if(Oe){var et=1/x(Oe),Mt=1/(b(Oe)*b(Oe)),Dt=-(Mt+Pe*(He*He*et*et)-1+Pe),Ut=(Pe-1)*Mt,tr=(-Dt+H(Dt*Dt-4*Ut))/2;return[ho(i(1/H(tr)),Pe)*v(he),ho(i(H((tr/Mt-1)/Pe)),1-Pe)*v(be)]}return[0,ho(i(He),1-Pe)*v(be)]}function ho(he,be){if(!be)return he;if(be===1)return u(b(he/2+L));for(var Pe=1,Oe=H(1-be),Je=H(be),He=0;n(Je)>p;He++){if(he%k){var et=i(Oe*b(he)/Pe);et<0&&(et+=k),he+=et+~~(he/k)*k}else he+=he;Je=(Pe+Oe)/2,Oe=H(Pe*Oe),Je=((Pe=Je)-Oe)/2}return he/(h(2,He)*Pe)}function Mo(he,be){var Pe=(C-1)/(C+1),Oe=H(1-Pe*Pe),Je=ho(A,Oe*Oe),He=-1,et=u(b(k/4+n(be)/2)),Mt=s(He*et)/H(Pe),Dt=xo(Mt*o(He*he),Mt*x(He*he)),Ut=Oo(Dt[0],Dt[1],Oe*Oe);return[-Ut[1],(be>=0?1:-1)*(.5*Je-Ut[0])]}function xo(he,be){var Pe=he*he,Oe=be+1,Je=1-Pe-be*be;return[.5*((he>=0?A:-A)-a(Je,2*he)),-.25*u(Je*Je+4*Pe)+.5*u(Oe*Oe+Pe)]}function zs(he,be){var Pe=be[0]*be[0]+be[1]*be[1];return[(he[0]*be[0]+he[1]*be[1])/Pe,(he[1]*be[0]-he[0]*be[1])/Pe]}Mo.invert=function(he,be){var Pe=(C-1)/(C+1),Oe=H(1-Pe*Pe),Je=ho(A,Oe*Oe),He=-1,et=Sa(.5*Je-be,-he,Oe*Oe),Mt=zs(et[0],et[1]),Dt=a(Mt[1],Mt[0])/He;return[Dt,2*i(s(.5/He*u(Pe*Mt[0]*Mt[0]+Pe*Mt[1]*Mt[1])))-A]};function ks(){return t.geoProjection(an(Mo)).scale(151.496)}function Zs(he){var be=x(he),Pe=o(he),Oe=Xs(he);Oe.invert=Xs(-he);function Je(He,et){var Mt=Oe(He,et);He=Mt[0],et=Mt[1];var Dt=x(et),Ut=o(et),tr=o(He),mr=V(be*Dt+Pe*Ut*tr),Rr=x(mr),zr=n(Rr)>p?mr/Rr:1;return[zr*Pe*x(He),(n(He)>A?zr:-zr)*(be*Ut-Pe*Dt*tr)]}return Je.invert=function(He,et){var Mt=H(He*He+et*et),Dt=-x(Mt),Ut=o(Mt),tr=Mt*Ut,mr=-et*Dt,Rr=Mt*be,zr=H(tr*tr+mr*mr-Rr*Rr),Xr=a(tr*Rr+mr*zr,mr*Rr-tr*zr),di=(Mt>A?-1:1)*a(He*Dt,Mt*o(Xr)*Ut+et*x(Xr)*Dt);return Oe.invert(di,Xr)},Je}function Xs(he){var be=x(he),Pe=o(he);return function(Oe,Je){var He=o(Je),et=o(Oe)*He,Mt=x(Oe)*He,Dt=x(Je);return[a(Mt,et*Pe-Dt*be),q(Dt*Pe+et*be)]}}function wl(){var he=0,be=t.geoProjectionMutator(Zs),Pe=be(he),Oe=Pe.rotate,Je=Pe.stream,He=t.geoCircle();return Pe.parallel=function(et){if(!arguments.length)return he*P;var Mt=Pe.rotate();return be(he=et*T).rotate(Mt)},Pe.rotate=function(et){return arguments.length?(Oe.call(Pe,[et[0],et[1]-he*P]),He.center([-et[0],-et[1]]),Pe):(et=Oe.call(Pe),et[1]+=he*P,et)},Pe.stream=function(et){return et=Je(et),et.sphere=function(){et.polygonStart();var Mt=.01,Dt=He.radius(90-Mt)().coordinates[0],Ut=Dt.length-1,tr=-1,mr;for(et.lineStart();++tr<Ut;)et.point((mr=Dt[tr])[0],mr[1]);for(et.lineEnd(),Dt=He.radius(90+Mt)().coordinates[0],Ut=Dt.length-1,et.lineStart();--tr>=0;)et.point((mr=Dt[tr])[0],mr[1]);et.lineEnd(),et.polygonEnd()},et},Pe.scale(79.4187).parallel(45).clipAngle(180-.001)}var os=3,cl=q(1-1/os)*P,Cs=ar(0);function ml(he){var be=cl*T,Pe=ht(k,be)[0]-ht(-k,be)[0],Oe=Cs(0,be)[1],Je=ht(0,be)[1],He=M-Je,et=g/he,Mt=4/g,Dt=Oe+He*He*4/g;function Ut(tr,mr){var Rr,zr=n(mr);if(zr>be){var Xr=f(he-1,c(0,l((tr+k)/et)));tr+=k*(he-1)/he-Xr*et,Rr=ht(tr,zr),Rr[0]=Rr[0]*g/Pe-g*(he-1)/(2*he)+Xr*g/he,Rr[1]=Oe+(Rr[1]-Je)*4*He/g,mr<0&&(Rr[1]=-Rr[1])}else Rr=Cs(tr,mr);return Rr[0]*=Mt,Rr[1]/=Dt,Rr}return Ut.invert=function(tr,mr){tr/=Mt,mr*=Dt;var Rr=n(mr);if(Rr>Oe){var zr=f(he-1,c(0,l((tr+k)/et)));tr=(tr+k*(he-1)/he-zr*et)*Pe/g;var Xr=ht.invert(tr,.25*(Rr-Oe)*g/He+Je);return Xr[0]-=k*(he-1)/he-zr*et,mr<0&&(Xr[1]=-Xr[1]),Xr}return Cs.invert(tr,mr)},Ut}function Ys(he,be){return[he,be&1?90-p:cl]}function Hs(he,be){return[he,be&1?-90+p:-cl]}function Eo(he){return[he[0]*(1-p),he[1]]}function fs(he){var be=[].concat(r.range(-180,180+he/2,he).map(Ys),r.range(180,-180-he/2,-he).map(Hs));return{type:"Polygon",coordinates:[he===180?be.map(Eo):be]}}function Ql(){var he=4,be=t.geoProjectionMutator(ml),Pe=be(he),Oe=Pe.stream;return Pe.lobes=function(Je){return arguments.length?be(he=+Je):he},Pe.stream=function(Je){var He=Pe.rotate(),et=Oe(Je),Mt=(Pe.rotate([0,0]),Oe(Je));return Pe.rotate(He),et.sphere=function(){t.geoStream(fs(180/he),Mt)},et},Pe.scale(239.75)}function Hu(he){var be=1+he,Pe=x(1/be),Oe=q(Pe),Je=2*H(k/(He=k+4*Oe*be)),He,et=.5*Je*(be+H(he*(2+he))),Mt=he*he,Dt=be*be;function Ut(tr,mr){var Rr=1-x(mr),zr,Xr;if(Rr&&Rr<2){var di=A-mr,Li=25,Ci;do{var Qi=x(di),Mn=o(di),pa=Oe+a(Qi,be-Mn),ea=1+Dt-2*be*Mn;di-=Ci=(di-Mt*Oe-be*Qi+ea*pa-.5*Rr*He)/(2*be*Qi*pa)}while(n(Ci)>E&&--Li>0);zr=Je*H(ea),Xr=tr*pa/k}else zr=Je*(he+Rr),Xr=tr*Oe/k;return[zr*x(Xr),et-zr*o(Xr)]}return Ut.invert=function(tr,mr){var Rr=tr*tr+(mr-=et)*mr,zr=(1+Dt-Rr/(Je*Je))/(2*be),Xr=V(zr),di=x(Xr),Li=Oe+a(di,be-zr);return[q(tr/H(Rr))*k/Li,q(1-2*(Xr-Mt*Oe-be*di+(1+Dt-2*be*zr)*Li)/He)]},Ut}function fc(){var he=1,be=t.geoProjectionMutator(Hu),Pe=be(he);return Pe.ratio=function(Oe){return arguments.length?be(he=+Oe):he},Pe.scale(167.774).center([0,18.67])}var ms=.7109889596207567,on=.0528035274542;function fa(he,be){return be>-ms?(he=Yt(he,be),he[1]+=on,he):St(he,be)}fa.invert=function(he,be){return be>-ms?Yt.invert(he,be-on):St.invert(he,be)};function Qu(){return t.geoProjection(fa).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Rl(he,be){return n(be)>ms?(he=Yt(he,be),he[1]-=be>0?on:-on,he):St(he,be)}Rl.invert=function(he,be){return n(be)>ms?Yt.invert(he,be+(be>0?on:-on)):St.invert(he,be)};function vo(){return t.geoProjection(Rl).scale(152.63)}function Zl(he,be,Pe,Oe){var Je=H(4*k/(2*Pe+(1+he-be/2)*x(2*Pe)+(he+be)/2*x(4*Pe)+be/2*x(6*Pe))),He=H(Oe*x(Pe)*H((1+he*o(2*Pe)+be*o(4*Pe))/(1+he+be))),et=Pe*Dt(1);function Mt(mr){return H(1+he*o(2*mr)+be*o(4*mr))}function Dt(mr){var Rr=mr*Pe;return(2*Rr+(1+he-be/2)*x(2*Rr)+(he+be)/2*x(4*Rr)+be/2*x(6*Rr))/Pe}function Ut(mr){return Mt(mr)*x(mr)}var tr=function(mr,Rr){var zr=Pe*qt(Dt,et*x(Rr)/Pe,Rr/k);isNaN(zr)&&(zr=Pe*v(Rr));var Xr=Je*Mt(zr);return[Xr*He*mr/k*o(zr),Xr/He*x(zr)]};return tr.invert=function(mr,Rr){var zr=qt(Ut,Rr*He/Je);return[mr*k/(o(zr)*Je*He*Mt(zr)),q(Pe*Dt(zr/Pe)/et)]},Pe===0&&(Je=H(Oe/k),tr=function(mr,Rr){return[mr*Je,x(Rr)/Je]},tr.invert=function(mr,Rr){return[mr/Je,q(Rr*Je)]}),tr}function Ks(){var he=1,be=0,Pe=45*T,Oe=2,Je=t.geoProjectionMutator(Zl),He=Je(he,be,Pe,Oe);return He.a=function(et){return arguments.length?Je(he=+et,be,Pe,Oe):he},He.b=function(et){return arguments.length?Je(he,be=+et,Pe,Oe):be},He.psiMax=function(et){return arguments.length?Je(he,be,Pe=+et*T,Oe):Pe*P},He.ratio=function(et){return arguments.length?Je(he,be,Pe,Oe=+et):Oe},He.scale(180.739)}function Xl(he,be,Pe,Oe,Je,He,et,Mt,Dt,Ut,tr){if(tr.nanEncountered)return NaN;var mr,Rr,zr,Xr,di,Li,Ci,Qi,Mn,pa;if(mr=Pe-be,Rr=he(be+mr*.25),zr=he(Pe-mr*.25),isNaN(Rr)){tr.nanEncountered=!0;return}if(isNaN(zr)){tr.nanEncountered=!0;return}return Xr=mr*(Oe+4*Rr+Je)/12,di=mr*(Je+4*zr+He)/12,Li=Xr+di,pa=(Li-et)/15,Ut>Dt?(tr.maxDepthCount++,Li+pa):Math.abs(pa)<Mt?Li+pa:(Ci=be+mr*.5,Qi=Xl(he,be,Ci,Oe,Rr,Je,Xr,Mt*.5,Dt,Ut+1,tr),isNaN(Qi)?(tr.nanEncountered=!0,NaN):(Mn=Xl(he,Ci,Pe,Je,zr,He,di,Mt*.5,Dt,Ut+1,tr),isNaN(Mn)?(tr.nanEncountered=!0,NaN):Qi+Mn))}function Ec(he,be,Pe,Oe,Je){var He={maxDepthCount:0,nanEncountered:!1};Oe===void 0&&(Oe=1e-8),Je===void 0&&(Je=20);var et=he(be),Mt=he(.5*(be+Pe)),Dt=he(Pe),Ut=(et+4*Mt+Dt)*(Pe-be)/6,tr=Xl(he,be,Pe,et,Mt,Dt,Ut,Oe,Je,1,He);return tr}function Zn(he,be,Pe){function Oe(zr){return he+(1-he)*h(1-h(zr,be),1/be)}function Je(zr){return Ec(Oe,0,zr,1e-4)}for(var He=1/Je(1),et=1e3,Mt=(1+1e-8)*He,Dt=[],Ut=0;Ut<=et;Ut++)Dt.push(Je(Ut/et)*Mt);function tr(zr){var Xr=0,di=et,Li=et>>1;do Dt[Li]>zr?di=Li:Xr=Li,Li=Xr+di>>1;while(Li>Xr);var Ci=Dt[Li+1]-Dt[Li];return Ci&&(Ci=(zr-Dt[Li+1])/Ci),(Li+1+Ci)/et}var mr=2*tr(1)/k*He/Pe,Rr=function(zr,Xr){var di=tr(n(x(Xr))),Li=Oe(di)*zr;return di/=mr,[Li,Xr>=0?di:-di]};return Rr.invert=function(zr,Xr){var di;return Xr*=mr,n(Xr)<1&&(di=v(Xr)*q(Je(n(Xr))*He)),[zr/Oe(n(Xr)),di]},Rr}function ko(){var he=0,be=2.5,Pe=1.183136,Oe=t.geoProjectionMutator(Zn),Je=Oe(he,be,Pe);return Je.alpha=function(He){return arguments.length?Oe(he=+He,be,Pe):he},Je.k=function(He){return arguments.length?Oe(he,be=+He,Pe):be},Je.gamma=function(He){return arguments.length?Oe(he,be,Pe=+He):Pe},Je.scale(152.63)}function Co(he,be){return n(he[0]-be[0])<p&&n(he[1]-be[1])<p}function Tl(he,be){for(var Pe=-1,Oe=he.length,Je=he[0],He,et,Mt,Dt=[];++Pe<Oe;){He=he[Pe],et=(He[0]-Je[0])/be,Mt=(He[1]-Je[1])/be;for(var Ut=0;Ut<be;++Ut)Dt.push([Je[0]+Ut*et,Je[1]+Ut*Mt]);Je=He}return Dt.push(He),Dt}function uf(he){var be=[],Pe,Oe,Je,He,et,Mt,Dt,Ut=he[0].length;for(Dt=0;Dt<Ut;++Dt)Pe=he[0][Dt],Oe=Pe[0][0],Je=Pe[0][1],He=Pe[1][1],et=Pe[2][0],Mt=Pe[2][1],be.push(Tl([[Oe+p,Je+p],[Oe+p,He-p],[et-p,He-p],[et-p,Mt+p]],30));for(Dt=he[1].length-1;Dt>=0;--Dt)Pe=he[1][Dt],Oe=Pe[0][0],Je=Pe[0][1],He=Pe[1][1],et=Pe[2][0],Mt=Pe[2][1],be.push(Tl([[et-p,Mt-p],[et-p,He+p],[Oe+p,He+p],[Oe+p,Je-p]],30));return{type:"Polygon",coordinates:[r.merge(be)]}}function So(he,be,Pe){var Oe,Je;function He(Dt,Ut){for(var tr=Ut<0?-1:1,mr=be[+(Ut<0)],Rr=0,zr=mr.length-1;Rr<zr&&Dt>mr[Rr][2][0];++Rr);var Xr=he(Dt-mr[Rr][1][0],Ut);return Xr[0]+=he(mr[Rr][1][0],tr*Ut>tr*mr[Rr][0][1]?mr[Rr][0][1]:Ut)[0],Xr}Pe?He.invert=Pe(He):he.invert&&(He.invert=function(Dt,Ut){for(var tr=Je[+(Ut<0)],mr=be[+(Ut<0)],Rr=0,zr=tr.length;Rr<zr;++Rr){var Xr=tr[Rr];if(Xr[0][0]<=Dt&&Dt<Xr[1][0]&&Xr[0][1]<=Ut&&Ut<Xr[1][1]){var di=he.invert(Dt-he(mr[Rr][1][0],0)[0],Ut);return di[0]+=mr[Rr][1][0],Co(He(di[0],di[1]),[Dt,Ut])?di:null}}});var et=t.geoProjection(He),Mt=et.stream;return et.stream=function(Dt){var Ut=et.rotate(),tr=Mt(Dt),mr=(et.rotate([0,0]),Mt(Dt));return et.rotate(Ut),tr.sphere=function(){t.geoStream(Oe,mr)},tr},et.lobes=function(Dt){return arguments.length?(Oe=uf(Dt),be=Dt.map(function(Ut){return Ut.map(function(tr){return[[tr[0][0]*T,tr[0][1]*T],[tr[1][0]*T,tr[1][1]*T],[tr[2][0]*T,tr[2][1]*T]]})}),Je=be.map(function(Ut){return Ut.map(function(tr){var mr=he(tr[0][0],tr[0][1])[0],Rr=he(tr[2][0],tr[2][1])[0],zr=he(tr[1][0],tr[0][1])[1],Xr=he(tr[1][0],tr[1][1])[1],di;return zr>Xr&&(di=zr,zr=Xr,Xr=di),[[mr,zr],[Rr,Xr]]})}),et):be.map(function(Ut){return Ut.map(function(tr){return[[tr[0][0]*P,tr[0][1]*P],[tr[1][0]*P,tr[1][1]*P],[tr[2][0]*P,tr[2][1]*P]]})})},be!=null&&et.lobes(be),et}var cf=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function rh(){return So(xt,cf).scale(160.857)}var Al=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Hc(){return So(Rl,Al).scale(152.63)}var eu=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Ls(){return So(Yt,eu).scale(169.529)}var mu=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function kc(){return So(Yt,mu).scale(169.529).rotate([20,0])}var Of=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Gc(){return So(fa,Of,rt).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var vd=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function Bf(){return So(St,vd).scale(152.63).rotate([-20,0])}function ss(he,be){return[3/g*he*H(k*k/3-be*be),be]}ss.invert=function(he,be){return[g/3*he/H(k*k/3-be*be),be]};function ff(){return t.geoProjection(ss).scale(158.837)}function ih(he){function be(Pe,Oe){if(n(n(Oe)-A)<p)return[0,Oe<0?-2:2];var Je=x(Oe),He=h((1+Je)/(1-Je),he/2),et=.5*(He+1/He)+o(Pe*=he);return[2*x(Pe)/et,(He-1/He)/et]}return be.invert=function(Pe,Oe){var Je=n(Oe);if(n(Je-2)<p)return Pe?null:[0,v(Oe)*A];if(Je>2)return null;Pe/=2,Oe/=2;var He=Pe*Pe,et=Oe*Oe,Mt=2*Oe/(1+He+et);return Mt=h((1+Mt)/(1-Mt),1/he),[a(2*Pe,1-He-et)/he,q((Mt-1)/(Mt+1))]},be}function Vl(){var he=.5,be=t.geoProjectionMutator(ih),Pe=be(he);return Pe.spacing=function(Oe){return arguments.length?be(he=+Oe):he},Pe.scale(124.75)}var Js=k/C;function hc(he,be){return[he*(1+H(o(be)))/2,be/(o(be/2)*o(he/6))]}hc.invert=function(he,be){var Pe=n(he),Oe=n(be),Je=p,He=A;Oe<Js?He*=Oe/Js:Je+=6*V(Js/Oe);for(var et=0;et<25;et++){var Mt=x(He),Dt=H(o(He)),Ut=x(He/2),tr=o(He/2),mr=x(Je/6),Rr=o(Je/6),zr=.5*Je*(1+Dt)-Pe,Xr=He/(tr*Rr)-Oe,di=Dt?-.25*Je*Mt/Dt:0,Li=.5*(1+Dt),Ci=(1+.5*He*Ut/tr)/(tr*Rr),Qi=He/tr*(mr/6)/(Rr*Rr),Mn=di*Qi-Ci*Li,pa=(zr*Qi-Xr*Li)/Mn,ea=(Xr*di-zr*Ci)/Mn;if(He-=pa,Je-=ea,n(pa)<p&&n(ea)<p)break}return[he<0?-Je:Je,be<0?-He:He]};function Cc(){return t.geoProjection(hc).scale(97.2672)}function ws(he,be){var Pe=he*he,Oe=be*be;return[he*(.975534+Oe*(-.119161+Pe*-.0143059+Oe*-.0547009)),be*(1.00384+Pe*(.0802894+Oe*-.02855+Pe*199025e-9)+Oe*(.0998909+Oe*-.0491032))]}ws.invert=function(he,be){var Pe=v(he)*k,Oe=be/2,Je=50;do{var He=Pe*Pe,et=Oe*Oe,Mt=Pe*Oe,Dt=Pe*(.975534+et*(-.119161+He*-.0143059+et*-.0547009))-he,Ut=Oe*(1.00384+He*(.0802894+et*-.02855+He*199025e-9)+et*(.0998909+et*-.0491032))-be,tr=.975534-et*(.119161+3*He*.0143059+et*.0547009),mr=-Mt*(2*.119161+4*.0547009*et+2*.0143059*He),Rr=Mt*(2*.0802894+4*199025e-9*He+2*-.02855*et),zr=1.00384+He*(.0802894+199025e-9*He)+et*(3*(.0998909-.02855*He)-5*.0491032*et),Xr=mr*Rr-zr*tr,di=(Ut*mr-Dt*zr)/Xr,Li=(Dt*Rr-Ut*tr)/Xr;Pe-=di,Oe-=Li}while((n(di)>p||n(Li)>p)&&--Je>0);return Je&&[Pe,Oe]};function $s(){return t.geoProjection(ws).scale(139.98)}function hs(he,be){return[x(he)/o(be),b(be)*o(he)]}hs.invert=function(he,be){var Pe=he*he,Oe=be*be,Je=Oe+1,He=Pe+Je,et=he?_*H((He-H(He*He-4*Pe))/Pe):1/H(Je);return[q(he*et),v(be)*V(et)]};function Ms(){return t.geoProjection(hs).scale(144.049).clipAngle(90-.001)}function dc(he){var be=o(he),Pe=b(L+he/2);function Oe(Je,He){var et=He-he,Mt=n(et)<p?Je*be:n(Mt=L+He/2)<p||n(n(Mt)-A)<p?0:Je*et/u(b(Mt)/Pe);return[Mt,et]}return Oe.invert=function(Je,He){var et,Mt=He+he;return[n(He)<p?Je/be:n(et=L+Mt/2)<p||n(n(et)-A)<p?0:Je*u(b(et)/Pe)/He,Mt]},Oe}function Sl(){return Lt(dc).parallel(40).scale(158.837)}function ec(he,be){return[he,1.25*u(b(L+.4*be))]}ec.invert=function(he,be){return[he,2.5*i(s(.8*be))-.625*k]};function Ps(){return t.geoProjection(ec).scale(108.318)}function ov(he){var be=he.length-1;function Pe(Oe,Je){for(var He=o(Je),et=2/(1+He*o(Oe)),Mt=et*He*x(Oe),Dt=et*x(Je),Ut=be,tr=he[Ut],mr=tr[0],Rr=tr[1],zr;--Ut>=0;)tr=he[Ut],mr=tr[0]+Mt*(zr=mr)-Dt*Rr,Rr=tr[1]+Mt*Rr+Dt*zr;return mr=Mt*(zr=mr)-Dt*Rr,Rr=Mt*Rr+Dt*zr,[mr,Rr]}return Pe.invert=function(Oe,Je){var He=20,et=Oe,Mt=Je;do{for(var Dt=be,Ut=he[Dt],tr=Ut[0],mr=Ut[1],Rr=0,zr=0,Xr;--Dt>=0;)Ut=he[Dt],Rr=tr+et*(Xr=Rr)-Mt*zr,zr=mr+et*zr+Mt*Xr,tr=Ut[0]+et*(Xr=tr)-Mt*mr,mr=Ut[1]+et*mr+Mt*Xr;Rr=tr+et*(Xr=Rr)-Mt*zr,zr=mr+et*zr+Mt*Xr,tr=et*(Xr=tr)-Mt*mr-Oe,mr=et*mr+Mt*Xr-Je;var di=Rr*Rr+zr*zr,Li,Ci;et-=Li=(tr*Rr+mr*zr)/di,Mt-=Ci=(mr*Rr-tr*zr)/di}while(n(Li)+n(Ci)>p*p&&--He>0);if(He){var Qi=H(et*et+Mt*Mt),Mn=2*i(Qi*.5),pa=x(Mn);return[a(et*pa,Qi*o(Mn)),Qi?q(Mt*pa/Qi):0]}},Pe}var wo=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Od=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],$o=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Ja=[[.9245,0],[0,0],[.01943,0]],Ef=[[.721316,0],[0,0],[-.00881625,-.00617325]];function tc(){return Ml(wo,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function uu(){return Ml(Od,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Mh(){return Ml($o,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function jc(){return Ml(Ja,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function kf(){return Ml(Ef,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Ml(he,be){var Pe=t.geoProjection(ov(he)).rotate(be).clipAngle(90),Oe=t.geoRotation(be),Je=Pe.center;return delete Pe.rotate,Pe.center=function(He){return arguments.length?Je(Oe(He)):Oe.invert(Je())},Pe}var Yh=H(6),Eh=H(7);function nh(he,be){var Pe=q(7*x(be)/(3*Yh));return[Yh*he*(2*o(2*Pe/3)-1)/Eh,9*x(Pe/3)/Eh]}nh.invert=function(he,be){var Pe=3*q(be*Eh/9);return[he*Eh/(Yh*(2*o(2*Pe/3)-1)),q(x(Pe)*3*Yh/7)]};function hf(){return t.geoProjection(nh).scale(164.859)}function kh(he,be){for(var Pe=(1+_)*x(be),Oe=be,Je=0,He;Je<25&&(Oe-=He=(x(Oe/2)+x(Oe)-Pe)/(.5*o(Oe/2)+o(Oe)),!(n(He)<p));Je++);return[he*(1+2*o(Oe)/o(Oe/2))/(3*C),2*H(3)*x(Oe/2)/H(2+C)]}kh.invert=function(he,be){var Pe=be*H(2+C)/(2*H(3)),Oe=2*q(Pe);return[3*C*he/(1+2*o(Oe)/o(Oe/2)),q((Pe+x(Oe))/(1+_))]};function Kh(){return t.geoProjection(kh).scale(188.209)}function rc(he,be){for(var Pe=H(6/(4+k)),Oe=(1+k/4)*x(be),Je=be/2,He=0,et;He<25&&(Je-=et=(Je/2+x(Je)-Oe)/(.5+o(Je)),!(n(et)<p));He++);return[Pe*(.5+o(Je))*he/1.5,Pe*Je]}rc.invert=function(he,be){var Pe=H(6/(4+k)),Oe=be/Pe;return n(n(Oe)-A)<p&&(Oe=Oe<0?-A:A),[1.5*he/(Pe*(.5+o(Oe))),q((Oe/2+x(Oe))/(1+k/4))]};function ah(){return t.geoProjection(rc).scale(166.518)}function Wc(he,be){var Pe=be*be,Oe=Pe*Pe,Je=Pe*Oe;return[he*(.84719-.13063*Pe+Je*Je*(-.04515+.05494*Pe-.02326*Oe+.00331*Je)),be*(1.01183+Oe*Oe*(-.02625+.01926*Pe-.00396*Oe))]}Wc.invert=function(he,be){var Pe=be,Oe=25,Je,He,et,Mt;do He=Pe*Pe,et=He*He,Pe-=Je=(Pe*(1.01183+et*et*(-.02625+.01926*He-.00396*et))-be)/(1.01183+et*et*(9*-.02625+11*.01926*He+13*-.00396*et));while(n(Je)>E&&--Oe>0);return He=Pe*Pe,et=He*He,Mt=He*et,[he/(.84719-.13063*He+Mt*Mt*(-.04515+.05494*He-.02326*et+.00331*Mt)),Pe]};function df(){return t.geoProjection(Wc).scale(175.295)}function Cu(he,be){return[he*(1+o(be))/2,2*(be-b(be/2))]}Cu.invert=function(he,be){for(var Pe=be/2,Oe=0,Je=1/0;Oe<10&&n(Je)>p;++Oe){var He=o(be/2);be-=Je=(be-b(be/2)-Pe)/(1-.5/(He*He))}return[2*he/(1+o(be)),be]};function Nf(){return t.geoProjection(Cu).scale(152.63)}var Zc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function ds(){return So(Ge(1/0),Zc).rotate([20,0]).scale(152.63)}function Ch(he,be){var Pe=x(be),Oe=o(be),Je=v(he);if(he===0||n(be)===A)return[0,be];if(be===0)return[he,0];if(n(he)===A)return[he*Oe,A*Pe];var He=k/(2*he)-2*he/k,et=2*be/k,Mt=(1-et*et)/(Pe-et),Dt=He*He,Ut=Mt*Mt,tr=1+Dt/Ut,mr=1+Ut/Dt,Rr=(He*Pe/Mt-He/2)/tr,zr=(Ut*Pe/Dt+Mt/2)/mr,Xr=Rr*Rr+Oe*Oe/tr,di=zr*zr-(Ut*Pe*Pe/Dt+Mt*Pe-1)/mr;return[A*(Rr+H(Xr)*Je),A*(zr+H(di<0?0:di)*v(-be*He)*Je)]}Ch.invert=function(he,be){he/=A,be/=A;var Pe=he*he,Oe=be*be,Je=Pe+Oe,He=k*k;return[he?(Je-1+H((1-Je)*(1-Je)+4*Pe))/(2*he)*A:0,qt(function(et){return Je*(k*x(et)-2*et)*k+4*et*et*(be-x(et))+2*k*et-He*be},0)]};function Bd(){return t.geoProjection(Ch).scale(127.267)}var Jh=1.0148,Cf=.23185,pd=-.14499,Lu=.02406,$h=Jh,tu=5*Cf,Pu=7*pd,Lc=9*Lu,fl=1.790857183;function Xc(he,be){var Pe=be*be;return[he,be*(Jh+Pe*Pe*(Cf+Pe*(pd+Lu*Pe)))]}Xc.invert=function(he,be){be>fl?be=fl:be<-fl&&(be=-fl);var Pe=be,Oe;do{var Je=Pe*Pe;Pe-=Oe=(Pe*(Jh+Je*Je*(Cf+Je*(pd+Lu*Je)))-be)/($h+Je*Je*(tu+Je*(Pu+Lc*Je)))}while(n(Oe)>p);return[he,Pe]};function ic(){return t.geoProjection(Xc).scale(139.319)}function yu(he,be){if(n(be)<p)return[he,0];var Pe=b(be),Oe=he*x(be);return[x(Oe)/Pe,be+(1-o(Oe))/Pe]}yu.invert=function(he,be){if(n(be)<p)return[he,0];var Pe=he*he+be*be,Oe=be*.5,Je=10,He;do{var et=b(Oe),Mt=1/o(Oe),Dt=Pe-2*be*Oe+Oe*Oe;Oe-=He=(et*Dt+2*(Oe-be))/(2+Dt*Mt*Mt+2*(Oe-be)*et)}while(n(He)>p&&--Je>0);return et=b(Oe),[(n(be)<n(Oe+1/et)?q(he*et):v(be)*v(he)*(V(n(he*et))+A))/x(Oe),Oe]};function Qs(){return t.geoProjection(yu).scale(103.74)}function Qh(he,be){var Pe=Pc(he[1],he[0]),Oe=Pc(be[1],be[0]),Je=sv(Pe,Oe),He=vc(Pe)/vc(Oe);return Gu([1,0,he[0][0],0,1,he[0][1]],Gu([He,0,0,0,He,0],Gu([o(Je),x(Je),0,-x(Je),o(Je),0],[1,0,-be[0][0],0,1,-be[0][1]])))}function gd(he){var be=1/(he[0]*he[4]-he[1]*he[3]);return[be*he[4],-be*he[1],be*(he[1]*he[5]-he[2]*he[4]),-be*he[3],be*he[0],be*(he[2]*he[3]-he[0]*he[5])]}function Gu(he,be){return[he[0]*be[0]+he[1]*be[3],he[0]*be[1]+he[1]*be[4],he[0]*be[2]+he[1]*be[5]+he[2],he[3]*be[0]+he[4]*be[3],he[3]*be[1]+he[4]*be[4],he[3]*be[2]+he[4]*be[5]+he[5]]}function Pc(he,be){return[he[0]-be[0],he[1]-be[1]]}function vc(he){return H(he[0]*he[0]+he[1]*he[1])}function sv(he,be){return a(he[0]*be[1]-he[1]*be[0],he[0]*be[0]+he[1]*be[1])}function Lf(he,be,Pe){Oe(he,{transform:null});function Oe(Ut,tr){if(Ut.edges=ru(Ut.face),tr.face){var mr=Ut.shared=oh(Ut.face,tr.face),Rr=Qh(mr.map(tr.project),mr.map(Ut.project));Ut.transform=tr.transform?Gu(tr.transform,Rr):Rr;for(var zr=tr.edges,Xr=0,di=zr.length;Xr<di;++Xr)Iu(mr[0],zr[Xr][1])&&Iu(mr[1],zr[Xr][0])&&(zr[Xr]=Ut),Iu(mr[0],zr[Xr][0])&&Iu(mr[1],zr[Xr][1])&&(zr[Xr]=Ut);for(zr=Ut.edges,Xr=0,di=zr.length;Xr<di;++Xr)Iu(mr[0],zr[Xr][0])&&Iu(mr[1],zr[Xr][1])&&(zr[Xr]=tr),Iu(mr[0],zr[Xr][1])&&Iu(mr[1],zr[Xr][0])&&(zr[Xr]=tr)}else Ut.transform=tr.transform;return Ut.children&&Ut.children.forEach(function(Li){Oe(Li,Ut)}),Ut}function Je(Ut,tr){var mr=be(Ut,tr),Rr=mr.project([Ut*P,tr*P]),zr;return(zr=mr.transform)?[zr[0]*Rr[0]+zr[1]*Rr[1]+zr[2],-(zr[3]*Rr[0]+zr[4]*Rr[1]+zr[5])]:(Rr[1]=-Rr[1],Rr)}vf(he)&&(Je.invert=function(Ut,tr){var mr=He(he,[Ut,-tr]);return mr&&(mr[0]*=T,mr[1]*=T,mr)});function He(Ut,tr){var mr=Ut.project.invert,Rr=Ut.transform,zr=tr;if(Rr&&(Rr=gd(Rr),zr=[Rr[0]*zr[0]+Rr[1]*zr[1]+Rr[2],Rr[3]*zr[0]+Rr[4]*zr[1]+Rr[5]]),mr&&Ut===et(Xr=mr(zr)))return Xr;for(var Xr,di=Ut.children,Li=0,Ci=di&&di.length;Li<Ci;++Li)if(Xr=He(di[Li],tr))return Xr}function et(Ut){return be(Ut[0]*T,Ut[1]*T)}var Mt=t.geoProjection(Je),Dt=Mt.stream;return Mt.stream=function(Ut){var tr=Mt.rotate(),mr=Dt(Ut),Rr=(Mt.rotate([0,0]),Dt(Ut));return Mt.rotate(tr),mr.sphere=function(){Rr.polygonStart(),Rr.lineStart(),Uf(Rr,he),Rr.lineEnd(),Rr.polygonEnd()},mr},Mt.angle(Pe==null?-30:Pe*P)}function Uf(he,be,Pe){var Oe,Je=be.edges,He=Je.length,et,Mt={type:"MultiPoint",coordinates:be.face},Dt=be.face.filter(function(di){return n(di[1])!==90}),Ut=t.geoBounds({type:"MultiPoint",coordinates:Dt}),tr=!1,mr=-1,Rr=Ut[1][0]-Ut[0][0],zr=Rr===180||Rr===360?[(Ut[0][0]+Ut[1][0])/2,(Ut[0][1]+Ut[1][1])/2]:t.geoCentroid(Mt);if(Pe)for(;++mr<He&&Je[mr]!==Pe;);++mr;for(var Xr=0;Xr<He;++Xr)et=Je[(Xr+mr)%He],Array.isArray(et)?(tr||(he.point((Oe=t.geoInterpolate(et[0],zr)(p))[0],Oe[1]),tr=!0),he.point((Oe=t.geoInterpolate(et[1],zr)(p))[0],Oe[1])):(tr=!1,et!==Pe&&Uf(he,et,be))}function Iu(he,be){return he&&be&&he[0]===be[0]&&he[1]===be[1]}function oh(he,be){for(var Pe,Oe,Je=he.length,He=null,et=0;et<Je;++et){Pe=he[et];for(var Mt=be.length;--Mt>=0;)if(Oe=be[Mt],Pe[0]===Oe[0]&&Pe[1]===Oe[1]){if(He)return[He,Pe];He=Pe}}}function ru(he){for(var be=he.length,Pe=[],Oe=he[be-1],Je=0;Je<be;++Je)Pe.push([Oe,Oe=he[Je]]);return Pe}function vf(he){return he.project.invert||he.children&&he.children.some(vf)}var md=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],sh=[[0,2,1],[0,3,2],[5,1,2],[5,2,3],[0,1,4],[0,4,3],[5,4,1],[5,3,4]].map(function(he){return he.map(function(be){return md[be]})});function Fs(he){he=he||function(Pe){var Oe=t.geoCentroid({type:"MultiPoint",coordinates:Pe});return t.geoGnomonic().scale(1).translate([0,0]).rotate([-Oe[0],-Oe[1]])};var be=sh.map(function(Pe){return{face:Pe,project:he(Pe)}});return[-1,0,0,1,0,1,4,5].forEach(function(Pe,Oe){var Je=be[Pe];Je&&(Je.children||(Je.children=[])).push(be[Oe])}),Lf(be[0],function(Pe,Oe){return be[Pe<-k/2?Oe<0?6:4:Pe<0?Oe<0?2:0:Pe<k/2?Oe<0?3:1:Oe<0?7:5]}).angle(-30).scale(101.858).center([0,45])}var _u=2/H(3);function xu(he,be){var Pe=ht(he,be);return[Pe[0]*_u,Pe[1]]}xu.invert=function(he,be){return ht.invert(he/_u,be)};function Lh(he){he=he||function(Pe){var Oe=t.geoCentroid({type:"MultiPoint",coordinates:Pe});return t.geoProjection(xu).translate([0,0]).scale(1).rotate(Oe[1]>0?[-Oe[0],0]:[180-Oe[0],180])};var be=sh.map(function(Pe){return{face:Pe,project:he(Pe)}});return[-1,0,0,1,0,1,4,5].forEach(function(Pe,Oe){var Je=be[Pe];Je&&(Je.children||(Je.children=[])).push(be[Oe])}),Lf(be[0],function(Pe,Oe){return be[Pe<-k/2?Oe<0?6:4:Pe<0?Oe<0?2:0:Pe<k/2?Oe<0?3:1:Oe<0?7:5]}).angle(-30).scale(121.906).center([0,48.5904])}function Is(he){he=he||function(et){var Mt=et.length===6?t.geoCentroid({type:"MultiPoint",coordinates:et}):et[0];return t.geoGnomonic().scale(1).translate([0,0]).rotate([-Mt[0],-Mt[1]])};var be=sh.map(function(et){for(var Mt=et.map(Vf),Dt=Mt.length,Ut=Mt[Dt-1],tr,mr=[],Rr=0;Rr<Dt;++Rr)tr=Mt[Rr],mr.push(ju([Ut[0]*.9486832980505138+tr[0]*.31622776601683794,Ut[1]*.9486832980505138+tr[1]*.31622776601683794,Ut[2]*.9486832980505138+tr[2]*.31622776601683794]),ju([tr[0]*.9486832980505138+Ut[0]*.31622776601683794,tr[1]*.9486832980505138+Ut[1]*.31622776601683794,tr[2]*.9486832980505138+Ut[2]*.31622776601683794])),Ut=tr;return mr}),Pe=[],Oe=[-1,0,0,1,0,1,4,5];be.forEach(function(et,Mt){for(var Dt=sh[Mt],Ut=Dt.length,tr=Pe[Mt]=[],mr=0;mr<Ut;++mr)be.push([Dt[mr],et[(mr*2+2)%(2*Ut)],et[(mr*2+1)%(2*Ut)]]),Oe.push(Mt),tr.push(Ic(Vf(et[(mr*2+2)%(2*Ut)]),Vf(et[(mr*2+1)%(2*Ut)])))});var Je=be.map(function(et){return{project:he(et),face:et}});Oe.forEach(function(et,Mt){var Dt=Je[et];Dt&&(Dt.children||(Dt.children=[])).push(Je[Mt])});function He(et,Mt){var Dt=o(Mt),Ut=[Dt*o(et),Dt*x(et),x(Mt)],tr=et<-k/2?Mt<0?6:4:et<0?Mt<0?2:0:et<k/2?Mt<0?3:1:Mt<0?7:5,mr=Pe[tr];return Je[Pf(mr[0],Ut)<0?8+3*tr:Pf(mr[1],Ut)<0?8+3*tr+1:Pf(mr[2],Ut)<0?8+3*tr+2:tr]}return Lf(Je[0],He).angle(-30).scale(110.625).center([0,45])}function Pf(he,be){for(var Pe=0,Oe=he.length,Je=0;Pe<Oe;++Pe)Je+=he[Pe]*be[Pe];return Je}function Ic(he,be){return[he[1]*be[2]-he[2]*be[1],he[2]*be[0]-he[0]*be[2],he[0]*be[1]-he[1]*be[0]]}function ju(he){return[a(he[1],he[0])*P,q(c(-1,f(1,he[2])))*P]}function Vf(he){var be=he[0]*T,Pe=he[1]*T,Oe=o(Pe);return[Oe*o(be),Oe*x(be),x(Pe)]}function pc(){}function pf(he){if((Pe=he.length)<4)return!1;for(var be=0,Pe,Oe=he[Pe-1][1]*he[0][0]-he[Pe-1][0]*he[0][1];++be<Pe;)Oe+=he[be-1][1]*he[be][0]-he[be-1][0]*he[be][1];return Oe<=0}function Ph(he,be){for(var Pe=be[0],Oe=be[1],Je=!1,He=0,et=he.length,Mt=et-1;He<et;Mt=He++){var Dt=he[He],Ut=Dt[0],tr=Dt[1],mr=he[Mt],Rr=mr[0],zr=mr[1];tr>Oe^zr>Oe&&Pe<(Rr-Ut)*(Oe-tr)/(zr-tr)+Ut&&(Je=!Je)}return Je}function Dl(he,be){var Pe=be.stream,Oe;if(!Pe)throw new Error("invalid projection");switch(he&&he.type){case"Feature":Oe=Wu;break;case"FeatureCollection":Oe=Ih;break;default:Oe=gc;break}return Oe(he,Pe)}function Ih(he,be){return{type:"FeatureCollection",features:he.features.map(function(Pe){return Wu(Pe,be)})}}function Wu(he,be){return{type:"Feature",id:he.id,properties:he.properties,geometry:gc(he.geometry,be)}}function Rc(he,be){return{type:"GeometryCollection",geometries:he.geometries.map(function(Pe){return gc(Pe,be)})}}function gc(he,be){if(!he)return null;if(he.type==="GeometryCollection")return Rc(he,be);var Pe;switch(he.type){case"Point":Pe=mc;break;case"MultiPoint":Pe=mc;break;case"LineString":Pe=Yc;break;case"MultiLineString":Pe=Yc;break;case"Polygon":Pe=nc;break;case"MultiPolygon":Pe=nc;break;case"Sphere":Pe=nc;break;default:return null}return t.geoStream(he,be(Pe)),Pe.result()}var hl=[],iu=[],mc={point:function(he,be){hl.push([he,be])},result:function(){var he=hl.length?hl.length<2?{type:"Point",coordinates:hl[0]}:{type:"MultiPoint",coordinates:hl}:null;return hl=[],he}},Yc={lineStart:pc,point:function(he,be){hl.push([he,be])},lineEnd:function(){hl.length&&(iu.push(hl),hl=[])},result:function(){var he=iu.length?iu.length<2?{type:"LineString",coordinates:iu[0]}:{type:"MultiLineString",coordinates:iu}:null;return iu=[],he}},nc={polygonStart:pc,lineStart:pc,point:function(he,be){hl.push([he,be])},lineEnd:function(){var he=hl.length;if(he){do hl.push(hl[0].slice());while(++he<4);iu.push(hl),hl=[]}},polygonEnd:pc,result:function(){if(!iu.length)return null;var he=[],be=[];return iu.forEach(function(Pe){pf(Pe)?he.push([Pe]):be.push(Pe)}),be.forEach(function(Pe){var Oe=Pe[0];he.some(function(Je){if(Ph(Je[0],Oe))return Je.push(Pe),!0})||he.push([Pe])}),iu=[],he.length?he.length>1?{type:"MultiPolygon",coordinates:he}:{type:"Polygon",coordinates:he[0]}:null}};function gf(he){var be=he(A,0)[0]-he(-A,0)[0];function Pe(Oe,Je){var He=n(Oe)<A,et=he(He?Oe:Oe>0?Oe-k:Oe+k,Je),Mt=(et[0]-et[1])*_,Dt=(et[0]+et[1])*_;if(He)return[Mt,Dt];var Ut=be*_,tr=Mt>0^Dt>0?-1:1;return[tr*Mt-v(Dt)*Ut,tr*Dt-v(Mt)*Ut]}return he.invert&&(Pe.invert=function(Oe,Je){var He=(Oe+Je)*_,et=(Je-Oe)*_,Mt=n(He)<.5*be&&n(et)<.5*be;if(!Mt){var Dt=be*_,Ut=He>0^et>0?-1:1,tr=-Ut*Oe+(et>0?1:-1)*Dt,mr=-Ut*Je+(He>0?1:-1)*Dt;He=(-tr-mr)*_,et=(tr-mr)*_}var Rr=he.invert(He,et);return Mt||(Rr[0]+=He>0?k:-k),Rr}),t.geoProjection(Pe).rotate([-90,-90,45]).clipAngle(180-.001)}function gt(){return gf(hi).scale(176.423)}function Bt(){return gf(Mo).scale(111.48)}function wr(he,be){if(!(0<=(be=+be)&&be<=20))throw new Error("invalid digits");function Pe(Ut){var tr=Ut.length,mr=2,Rr=new Array(tr);for(Rr[0]=+Ut[0].toFixed(be),Rr[1]=+Ut[1].toFixed(be);mr<tr;)Rr[mr]=Ut[mr],++mr;return Rr}function Oe(Ut){return Ut.map(Pe)}function Je(Ut){for(var tr=Pe(Ut[0]),mr=[tr],Rr=1;Rr<Ut.length;Rr++){var zr=Pe(Ut[Rr]);(zr.length>2||zr[0]!=tr[0]||zr[1]!=tr[1])&&(mr.push(zr),tr=zr)}return mr.length===1&&Ut.length>1&&mr.push(Pe(Ut[Ut.length-1])),mr}function He(Ut){return Ut.map(Je)}function et(Ut){if(Ut==null)return Ut;var tr;switch(Ut.type){case"GeometryCollection":tr={type:"GeometryCollection",geometries:Ut.geometries.map(et)};break;case"Point":tr={type:"Point",coordinates:Pe(Ut.coordinates)};break;case"MultiPoint":tr={type:Ut.type,coordinates:Oe(Ut.coordinates)};break;case"LineString":tr={type:Ut.type,coordinates:Je(Ut.coordinates)};break;case"MultiLineString":case"Polygon":tr={type:Ut.type,coordinates:He(Ut.coordinates)};break;case"MultiPolygon":tr={type:"MultiPolygon",coordinates:Ut.coordinates.map(He)};break;default:return Ut}return Ut.bbox!=null&&(tr.bbox=Ut.bbox),tr}function Mt(Ut){var tr={type:"Feature",properties:Ut.properties,geometry:et(Ut.geometry)};return Ut.id!=null&&(tr.id=Ut.id),Ut.bbox!=null&&(tr.bbox=Ut.bbox),tr}if(he!=null)switch(he.type){case"Feature":return Mt(he);case"FeatureCollection":{var Dt={type:"FeatureCollection",features:he.features.map(Mt)};return he.bbox!=null&&(Dt.bbox=he.bbox),Dt}default:return et(he)}return he}function vr(he){var be=x(he);function Pe(Oe,Je){var He=be?b(Oe*be/2)/be:Oe/2;if(!Je)return[2*He,-he];var et=2*i(He*x(Je)),Mt=1/b(Je);return[x(et)*Mt,Je+(1-o(et))*Mt-he]}return Pe.invert=function(Oe,Je){if(n(Je+=he)<p)return[be?2*i(be*Oe/2)/be:Oe,0];var He=Oe*Oe+Je*Je,et=0,Mt=10,Dt;do{var Ut=b(et),tr=1/o(et),mr=He-2*Je*et+et*et;et-=Dt=(Ut*mr+2*(et-Je))/(2+mr*tr*tr+2*(et-Je)*Ut)}while(n(Dt)>p&&--Mt>0);var Rr=Oe*(Ut=b(et)),zr=b(n(Je)<n(et+1/Ut)?q(Rr)*.5:V(Rr)*.5+k/4)/x(et);return[be?2*i(be*zr)/be:2*zr,et]},Pe}function Ur(){return Lt(vr).scale(131.215)}var fi=[[.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]];fi.forEach(function(he){he[1]*=1.0144});function xi(he,be){var Pe=f(18,n(be)*36/k),Oe=l(Pe),Je=Pe-Oe,He=(mr=fi[Oe])[0],et=mr[1],Mt=(mr=fi[++Oe])[0],Dt=mr[1],Ut=(mr=fi[f(19,++Oe)])[0],tr=mr[1],mr;return[he*(Mt+Je*(Ut-He)/2+Je*Je*(Ut-2*Mt+He)/2),(be>0?A:-A)*(Dt+Je*(tr-et)/2+Je*Je*(tr-2*Dt+et)/2)]}xi.invert=function(he,be){var Pe=be/A,Oe=Pe*90,Je=f(18,n(Oe/5)),He=c(0,l(Je));do{var et=fi[He][1],Mt=fi[He+1][1],Dt=fi[f(19,He+2)][1],Ut=Dt-et,tr=Dt-2*Mt+et,mr=2*(n(Pe)-Mt)/Ut,Rr=tr/Ut,zr=mr*(1-Rr*mr*(1-2*Rr*mr));if(zr>=0||He===1){Oe=(be>=0?5:-5)*(zr+Je);var Xr=50,di;do Je=f(18,n(Oe)/5),He=l(Je),zr=Je-He,et=fi[He][1],Mt=fi[He+1][1],Dt=fi[f(19,He+2)][1],Oe-=(di=(be>=0?A:-A)*(Mt+zr*(Dt-et)/2+zr*zr*(Dt-2*Mt+et)/2)-be)*P;while(n(di)>E&&--Xr>0);break}}while(--He>=0);var Li=fi[He][0],Ci=fi[He+1][0],Qi=fi[f(19,He+2)][0];return[he/(Ci+zr*(Qi-Li)/2+zr*zr*(Qi-2*Ci+Li)/2),Oe*T]};function Fi(){return t.geoProjection(xi).scale(152.63)}function Xi(he){function be(Pe,Oe){var Je=o(Oe),He=(he-1)/(he-Je*o(Pe));return[He*Je*x(Pe),He*x(Oe)]}return be.invert=function(Pe,Oe){var Je=Pe*Pe+Oe*Oe,He=H(Je),et=(he-H(1-Je*(he+1)/(he-1)))/((he-1)/He+He/(he-1));return[a(Pe*et,He*H(1-et*et)),He?q(Oe*et/He):0]},be}function hn(he,be){var Pe=Xi(he);if(!be)return Pe;var Oe=o(be),Je=x(be);function He(et,Mt){var Dt=Pe(et,Mt),Ut=Dt[1],tr=Ut*Je/(he-1)+Oe;return[Dt[0]*Oe/tr,Ut/tr]}return He.invert=function(et,Mt){var Dt=(he-1)/(he-1-Mt*Je);return Pe.invert(Dt*et,Dt*Mt*Oe)},He}function Ti(){var he=2,be=0,Pe=t.geoProjectionMutator(hn),Oe=Pe(he,be);return Oe.distance=function(Je){return arguments.length?Pe(he=+Je,be):he},Oe.tilt=function(Je){return arguments.length?Pe(he,be=Je*T):be*P},Oe.scale(432.147).clipAngle(V(1/he)*P-1e-6)}var qi=1e-4,Ii=1e4,mi=-180,Pn=mi+qi,Ma=180,Ta=Ma-qi,Ea=-90,qa=Ea+qi,Cn=90,sn=Cn-qi;function Ua(he){return he.length>0}function mo(he){return Math.floor(he*Ii)/Ii}function Xo(he){return he===Ea||he===Cn?[0,he]:[mi,mo(he)]}function Ts(he){var be=he[0],Pe=he[1],Oe=!1;return be<=Pn?(be=mi,Oe=!0):be>=Ta&&(be=Ma,Oe=!0),Pe<=qa?(Pe=Ea,Oe=!0):Pe>=sn&&(Pe=Cn,Oe=!0),Oe?[be,Pe]:he}function Qo(he){return he.map(Ts)}function ys(he,be,Pe){for(var Oe=0,Je=he.length;Oe<Je;++Oe){var He=he[Oe].slice();Pe.push({index:-1,polygon:be,ring:He});for(var et=0,Mt=He.length;et<Mt;++et){var Dt=He[et],Ut=Dt[0],tr=Dt[1];if(Ut<=Pn||Ut>=Ta||tr<=qa||tr>=sn){He[et]=Ts(Dt);for(var mr=et+1;mr<Mt;++mr){var Rr=He[mr],zr=Rr[0],Xr=Rr[1];if(zr>Pn&&zr<Ta&&Xr>qa&&Xr<sn)break}if(mr===et+1)continue;if(et){var di={index:-1,polygon:be,ring:He.slice(0,et+1)};di.ring[di.ring.length-1]=Xo(tr),Pe[Pe.length-1]=di}else Pe.pop();if(mr>=Mt)break;Pe.push({index:-1,polygon:be,ring:He=He.slice(mr-1)}),He[0]=Xo(He[0][1]),et=-1,Mt=He.length}}}}function Bo(he){var be,Pe=he.length,Oe={},Je={},He,et,Mt,Dt,Ut;for(be=0;be<Pe;++be){if(He=he[be],et=He.ring[0],Dt=He.ring[He.ring.length-1],et[0]===Dt[0]&&et[1]===Dt[1]){He.polygon.push(He.ring),he[be]=null;continue}He.index=be,Oe[et]=Je[Dt]=He}for(be=0;be<Pe;++be)if(He=he[be],He){if(et=He.ring[0],Dt=He.ring[He.ring.length-1],Mt=Je[et],Ut=Oe[Dt],delete Oe[et],delete Je[Dt],et[0]===Dt[0]&&et[1]===Dt[1]){He.polygon.push(He.ring);continue}Mt?(delete Je[et],delete Oe[Mt.ring[0]],Mt.ring.pop(),he[Mt.index]=null,He={index:-1,polygon:Mt.polygon,ring:Mt.ring.concat(He.ring)},Mt===Ut?He.polygon.push(He.ring):(He.index=Pe++,he.push(Oe[He.ring[0]]=Je[He.ring[He.ring.length-1]]=He))):Ut?(delete Oe[Dt],delete Je[Ut.ring[Ut.ring.length-1]],He.ring.pop(),He={index:Pe++,polygon:Ut.polygon,ring:He.ring.concat(Ut.ring)},he[Ut.index]=null,he.push(Oe[He.ring[0]]=Je[He.ring[He.ring.length-1]]=He)):(He.ring.push(He.ring[0]),He.polygon.push(He.ring))}}function yl(he){var be={type:"Feature",geometry:Gs(he.geometry)};return he.id!=null&&(be.id=he.id),he.bbox!=null&&(be.bbox=he.bbox),he.properties!=null&&(be.properties=he.properties),be}function Gs(he){if(he==null)return he;var be,Pe,Oe,Je;switch(he.type){case"GeometryCollection":be={type:"GeometryCollection",geometries:he.geometries.map(Gs)};break;case"Point":be={type:"Point",coordinates:Ts(he.coordinates)};break;case"MultiPoint":case"LineString":be={type:he.type,coordinates:Qo(he.coordinates)};break;case"MultiLineString":be={type:"MultiLineString",coordinates:he.coordinates.map(Qo)};break;case"Polygon":{var He=[];ys(he.coordinates,He,Pe=[]),Bo(Pe),be={type:"Polygon",coordinates:He};break}case"MultiPolygon":{Pe=[],Oe=-1,Je=he.coordinates.length;for(var et=new Array(Je);++Oe<Je;)ys(he.coordinates[Oe],et[Oe]=[],Pe);Bo(Pe),be={type:"MultiPolygon",coordinates:et.filter(Ua)};break}default:return he}return he.bbox!=null&&(be.bbox=he.bbox),be}function Rs(he){if(he==null)return he;switch(he.type){case"Feature":return yl(he);case"FeatureCollection":{var be={type:"FeatureCollection",features:he.features.map(yl)};return he.bbox!=null&&(be.bbox=he.bbox),be}default:return Gs(he)}}function ia(he,be){var Pe=b(be/2),Oe=x(L*Pe);return[he*(.74482-.34588*Oe*Oe),1.70711*Pe]}ia.invert=function(he,be){var Pe=be/1.70711,Oe=x(L*Pe);return[he/(.74482-.34588*Oe*Oe),2*i(Pe)]};function Ka(){return t.geoProjection(ia).scale(146.153)}function vs(he,be,Pe){var Oe=t.geoInterpolate(be,Pe),Je=Oe(.5),He=t.geoRotation([-Je[0],-Je[1]])(be),et=Oe.distance/2,Mt=-q(x(He[1]*T)/x(et)),Dt=[-Je[0],-Je[1],-(He[0]>0?k-Mt:Mt)*P],Ut=t.geoProjection(he(et)).rotate(Dt),tr=t.geoRotation(Dt),mr=Ut.center;return delete Ut.rotate,Ut.center=function(Rr){return arguments.length?mr(tr(Rr)):tr.invert(mr())},Ut.clipAngle(90)}function Ko(he){var be=o(he);function Pe(Oe,Je){var He=t.geoGnomonicRaw(Oe,Je);return He[0]*=be,He}return Pe.invert=function(Oe,Je){return t.geoGnomonicRaw.invert(Oe/be,Je)},Pe}function nu(){return Ru([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Ru(he,be){return vs(Ko,he,be)}function ac(he){if(!(he*=2))return t.geoAzimuthalEquidistantRaw;var be=-he/2,Pe=-be,Oe=he*he,Je=b(Pe),He=.5/x(Pe);function et(Mt,Dt){var Ut=V(o(Dt)*o(Mt-be)),tr=V(o(Dt)*o(Mt-Pe)),mr=Dt<0?-1:1;return Ut*=Ut,tr*=tr,[(Ut-tr)/(2*he),mr*H(4*Oe*tr-(Oe-Ut+tr)*(Oe-Ut+tr))/(2*he)]}return et.invert=function(Mt,Dt){var Ut=Dt*Dt,tr=o(H(Ut+(Rr=Mt+be)*Rr)),mr=o(H(Ut+(Rr=Mt+Pe)*Rr)),Rr,zr;return[a(zr=tr-mr,Rr=(tr+mr)*Je),(Dt<0?-1:1)*V(H(Rr*Rr+zr*zr)*He)]},et}function mf(){return bu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function bu(he,be){return vs(ac,he,be)}function Kc(he,be){if(n(be)<p)return[he,0];var Pe=n(be/A),Oe=q(Pe);if(n(he)<p||n(n(be)-A)<p)return[0,v(be)*k*b(Oe/2)];var Je=o(Oe),He=n(k/he-he/k)/2,et=He*He,Mt=Je/(Pe+Je-1),Dt=Mt*(2/Pe-1),Ut=Dt*Dt,tr=Ut+et,mr=Mt-Ut,Rr=et+Mt;return[v(he)*k*(He*mr+H(et*mr*mr-tr*(Mt*Mt-Ut)))/tr,v(be)*k*(Dt*Rr-He*H((et+1)*tr-Rr*Rr))/tr]}Kc.invert=function(he,be){if(n(be)<p)return[he,0];if(n(he)<p)return[0,A*x(2*i(be/k))];var Pe=(he/=k)*he,Oe=(be/=k)*be,Je=Pe+Oe,He=Je*Je,et=-n(be)*(1+Je),Mt=et-2*Oe+Pe,Dt=-2*et+1+2*Oe+He,Ut=Oe/Dt+(2*Mt*Mt*Mt/(Dt*Dt*Dt)-9*et*Mt/(Dt*Dt))/27,tr=(et-Mt*Mt/(3*Dt))/Dt,mr=2*H(-tr/3),Rr=V(3*Ut/(tr*mr))/3;return[k*(Je-1+H(1+2*(Pe-Oe)+He))/(2*he),v(be)*k*(-mr*o(Rr+k/3)-Mt/(3*Dt))]};function Du(){return t.geoProjection(Kc).scale(79.4183)}function Dc(he,be){if(n(be)<p)return[he,0];var Pe=n(be/A),Oe=q(Pe);if(n(he)<p||n(n(be)-A)<p)return[0,v(be)*k*b(Oe/2)];var Je=o(Oe),He=n(k/he-he/k)/2,et=He*He,Mt=Je*(H(1+et)-He*Je)/(1+et*Pe*Pe);return[v(he)*k*Mt,v(be)*k*H(1-Mt*(2*He+Mt))]}Dc.invert=function(he,be){if(!he)return[0,A*x(2*i(be/k))];var Pe=n(he/k),Oe=(1-Pe*Pe-(be/=k)*be)/(2*Pe),Je=Oe*Oe,He=H(Je+1);return[v(he)*k*(He-Oe),v(be)*A*x(2*a(H((1-2*Oe*Pe)*(Oe+He)-Pe),H(He+Oe+Pe)))]};function Da(){return t.geoProjection(Dc).scale(79.4183)}function eo(he,be){if(n(be)<p)return[he,0];var Pe=be/A,Oe=q(Pe);if(n(he)<p||n(n(be)-A)<p)return[0,k*b(Oe/2)];var Je=(k/he-he/k)/2,He=Pe/(1+o(Oe));return[k*(v(he)*H(Je*Je+1-He*He)-Je),k*He]}eo.invert=function(he,be){if(!be)return[he,0];var Pe=be/k,Oe=(k*k*(1-Pe*Pe)-he*he)/(2*k*he);return[he?k*(v(he)*H(Oe*Oe+1)-Oe):0,A*x(2*i(Pe))]};function Jc(){return t.geoProjection(eo).scale(79.4183)}function yc(he,be){if(!be)return[he,0];var Pe=n(be);if(!he||Pe===A)return[0,be];var Oe=Pe/A,Je=Oe*Oe,He=(8*Oe-Je*(Je+2)-5)/(2*Je*(Oe-1)),et=He*He,Mt=Oe*He,Dt=Je+et+2*Mt,Ut=Oe+3*He,tr=he/A,mr=tr+1/tr,Rr=v(n(he)-A)*H(mr*mr-4),zr=Rr*Rr,Xr=Dt*(Je+et*zr-1)+(1-Je)*(Je*(Ut*Ut+4*et)+12*Mt*et+4*et*et),di=(Rr*(Dt+et-1)+2*H(Xr))/(4*Dt+zr);return[v(he)*A*di,v(be)*A*H(1+Rr*n(di)-di*di)]}yc.invert=function(he,be){var Pe;if(!he||!be)return[he,be];be/=k;var Oe=v(he)*he/A,Je=(Oe*Oe-1+4*be*be)/n(Oe),He=Je*Je,et=2*be,Mt=50;do{var Dt=et*et,Ut=(8*et-Dt*(Dt+2)-5)/(2*Dt*(et-1)),tr=(3*et-Dt*et-10)/(2*Dt*et),mr=Ut*Ut,Rr=et*Ut,zr=et+Ut,Xr=zr*zr,di=et+3*Ut,Li=Xr*(Dt+mr*He-1)+(1-Dt)*(Dt*(di*di+4*mr)+mr*(12*Rr+4*mr)),Ci=-2*zr*(4*Rr*mr+(1-4*Dt+3*Dt*Dt)*(1+tr)+mr*(-6+14*Dt-He+(-8+8*Dt-2*He)*tr)+Rr*(-8+12*Dt+(-10+10*Dt-He)*tr)),Qi=H(Li),Mn=Je*(Xr+mr-1)+2*Qi-Oe*(4*Xr+He),pa=Je*(2*Ut*tr+2*zr*(1+tr))+Ci/Qi-8*zr*(Je*(-1+mr+Xr)+2*Qi)*(1+tr)/(He+4*Xr);et-=Pe=Mn/pa}while(Pe>p&&--Mt>0);return[v(he)*(H(Je*Je+4)+Je)*k/4,A*et]};function _c(){return t.geoProjection(yc).scale(127.16)}function le(he,be,Pe,Oe,Je){function He(et,Mt){var Dt=Pe*x(Oe*Mt),Ut=H(1-Dt*Dt),tr=H(2/(1+Ut*o(et*=Je)));return[he*Ut*tr*x(et),be*Dt*tr]}return He.invert=function(et,Mt){var Dt=et/he,Ut=Mt/be,tr=H(Dt*Dt+Ut*Ut),mr=2*q(tr/2);return[a(et*b(mr),he*tr)/Je,tr&&q(Mt*x(mr)/(be*Pe*tr))/Oe]},He}function w(he,be,Pe,Oe){var Je=k/3;he=c(he,p),be=c(be,p),he=f(he,A),be=f(be,k-p),Pe=c(Pe,0),Pe=f(Pe,100-p),Oe=c(Oe,p);var He=Pe/100+1,et=Oe/100,Mt=V(He*o(Je))/Je,Dt=x(he)/x(Mt*A),Ut=be/k,tr=H(et*x(he/2)/x(be/2)),mr=tr/H(Ut*Dt*Mt),Rr=1/(tr*H(Ut*Dt*Mt));return le(mr,Rr,Dt,Mt,Ut)}function B(){var he=65*T,be=60*T,Pe=20,Oe=200,Je=t.geoProjectionMutator(w),He=Je(he,be,Pe,Oe);return He.poleline=function(et){return arguments.length?Je(he=+et*T,be,Pe,Oe):he*P},He.parallels=function(et){return arguments.length?Je(he,be=+et*T,Pe,Oe):be*P},He.inflation=function(et){return arguments.length?Je(he,be,Pe=+et,Oe):Pe},He.ratio=function(et){return arguments.length?Je(he,be,Pe,Oe=+et):Oe},He.scale(163.775)}function Q(){return B().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var ee=4*k+3*H(3),se=2*H(2*k*H(3)/ee),qe=Ct(se*H(3)/k,se,ee/6);function je(){return t.geoProjection(qe).scale(176.84)}function it(he,be){return[he*H(1-3*be*be/(k*k)),be]}it.invert=function(he,be){return[he/H(1-3*be*be/(k*k)),be]};function yt(){return t.geoProjection(it).scale(152.63)}function Ot(he,be){var Pe=o(be),Oe=o(he)*Pe,Je=1-Oe,He=o(he=a(x(he)*Pe,-x(be))),et=x(he);return Pe=H(1-Oe*Oe),[et*Pe-He*Je,-He*Pe-et*Je]}Ot.invert=function(he,be){var Pe=(he*he+be*be)/-2,Oe=H(-Pe*(2+Pe)),Je=be*Pe+he*Oe,He=he*Pe-be*Oe,et=H(He*He+Je*Je);return[a(Oe*Je,et*(1+Pe)),et?-q(Oe*He/et):0]};function Nt(){return t.geoProjection(Ot).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function hr(he,be){var Pe=Me(he,be);return[(Pe[0]+he/A)/2,(Pe[1]+be)/2]}hr.invert=function(he,be){var Pe=he,Oe=be,Je=25;do{var He=o(Oe),et=x(Oe),Mt=x(2*Oe),Dt=et*et,Ut=He*He,tr=x(Pe),mr=o(Pe/2),Rr=x(Pe/2),zr=Rr*Rr,Xr=1-Ut*mr*mr,di=Xr?V(He*mr)*H(Li=1/Xr):Li=0,Li,Ci=.5*(2*di*He*Rr+Pe/A)-he,Qi=.5*(di*et+Oe)-be,Mn=.5*Li*(Ut*zr+di*He*mr*Dt)+.5/A,pa=Li*(tr*Mt/4-di*et*Rr),ea=.125*Li*(Mt*Rr-di*et*Ut*tr),Ga=.5*Li*(Dt*mr+di*zr*He)+.5,To=pa*ea-Ga*Mn,Wa=(Qi*pa-Ci*Ga)/To,co=(Ci*ea-Qi*Mn)/To;Pe-=Wa,Oe-=co}while((n(Wa)>p||n(co)>p)&&--Je>0);return[Pe,Oe]};function Sr(){return t.geoProjection(hr).scale(158.837)}e.geoNaturalEarth=t.geoNaturalEarth1,e.geoNaturalEarthRaw=t.geoNaturalEarth1Raw,e.geoAiry=_e,e.geoAiryRaw=ae,e.geoAitoff=ke,e.geoAitoffRaw=Me,e.geoArmadillo=ie,e.geoArmadilloRaw=ge,e.geoAugust=Ee,e.geoAugustRaw=Te,e.geoBaker=me,e.geoBakerRaw=Ce,e.geoBerghaus=ce,e.geoBerghausRaw=Re,e.geoBertin1953=Rt,e.geoBertin1953Raw=ot,e.geoBoggs=bt,e.geoBoggsRaw=xt,e.geoBonne=Ht,e.geoBonneRaw=dt,e.geoBottomley=fr,e.geoBottomleyRaw=$t,e.geoBromley=Br,e.geoBromleyRaw=_r,e.geoChamberlin=Xe,e.geoChamberlinRaw=Ne,e.geoChamberlinAfrica=Ve,e.geoCollignon=Le,e.geoCollignonRaw=ht,e.geoCraig=Se,e.geoCraigRaw=xe,e.geoCraster=Vt,e.geoCrasterRaw=Gt,e.geoCylindricalEqualArea=Qr,e.geoCylindricalEqualAreaRaw=ar,e.geoCylindricalStereographic=jr,e.geoCylindricalStereographicRaw=ai,e.geoEckert1=bi,e.geoEckert1Raw=ri,e.geoEckert2=Wi,e.geoEckert2Raw=nn,e.geoEckert3=_n,e.geoEckert3Raw=Ni,e.geoEckert4=zn,e.geoEckert4Raw=$i,e.geoEckert5=It,e.geoEckert5Raw=Wn,e.geoEckert6=jt,e.geoEckert6Raw=ft,e.geoEisenlohr=Fr,e.geoEisenlohrRaw=yr,e.geoFahey=gi,e.geoFaheyRaw=Vr,e.geoFoucaut=Mi,e.geoFoucautRaw=Si,e.geoFoucautSinusoidal=Gi,e.geoFoucautSinusoidalRaw=Pi,e.geoGilbert=jn,e.geoGingery=jo,e.geoGingeryRaw=la,e.geoGinzburg4=Ha,e.geoGinzburg4Raw=Sn,e.geoGinzburg5=xn,e.geoGinzburg5Raw=oo,e.geoGinzburg6=br,e.geoGinzburg6Raw=_t,e.geoGinzburg8=ti,e.geoGinzburg8Raw=Hr,e.geoGinzburg9=Yi,e.geoGinzburg9Raw=zi,e.geoGringorten=Fn,e.geoGringortenRaw=hi,e.geoGuyou=ks,e.geoGuyouRaw=Mo,e.geoHammer=ct,e.geoHammerRaw=Ge,e.geoHammerRetroazimuthal=wl,e.geoHammerRetroazimuthalRaw=Zs,e.geoHealpix=Ql,e.geoHealpixRaw=ml,e.geoHill=fc,e.geoHillRaw=Hu,e.geoHomolosine=vo,e.geoHomolosineRaw=Rl,e.geoHufnagel=Ks,e.geoHufnagelRaw=Zl,e.geoHyperelliptical=ko,e.geoHyperellipticalRaw=Zn,e.geoInterrupt=So,e.geoInterruptedBoggs=rh,e.geoInterruptedHomolosine=Hc,e.geoInterruptedMollweide=Ls,e.geoInterruptedMollweideHemispheres=kc,e.geoInterruptedSinuMollweide=Gc,e.geoInterruptedSinusoidal=Bf,e.geoKavrayskiy7=ff,e.geoKavrayskiy7Raw=ss,e.geoLagrange=Vl,e.geoLagrangeRaw=ih,e.geoLarrivee=Cc,e.geoLarriveeRaw=hc,e.geoLaskowski=$s,e.geoLaskowskiRaw=ws,e.geoLittrow=Ms,e.geoLittrowRaw=hs,e.geoLoximuthal=Sl,e.geoLoximuthalRaw=dc,e.geoMiller=Ps,e.geoMillerRaw=ec,e.geoModifiedStereographic=Ml,e.geoModifiedStereographicRaw=ov,e.geoModifiedStereographicAlaska=tc,e.geoModifiedStereographicGs48=uu,e.geoModifiedStereographicGs50=Mh,e.geoModifiedStereographicMiller=jc,e.geoModifiedStereographicLee=kf,e.geoMollweide=xr,e.geoMollweideRaw=Yt,e.geoMtFlatPolarParabolic=hf,e.geoMtFlatPolarParabolicRaw=nh,e.geoMtFlatPolarQuartic=Kh,e.geoMtFlatPolarQuarticRaw=kh,e.geoMtFlatPolarSinusoidal=ah,e.geoMtFlatPolarSinusoidalRaw=rc,e.geoNaturalEarth2=df,e.geoNaturalEarth2Raw=Wc,e.geoNellHammer=Nf,e.geoNellHammerRaw=Cu,e.geoInterruptedQuarticAuthalic=ds,e.geoNicolosi=Bd,e.geoNicolosiRaw=Ch,e.geoPatterson=ic,e.geoPattersonRaw=Xc,e.geoPolyconic=Qs,e.geoPolyconicRaw=yu,e.geoPolyhedral=Lf,e.geoPolyhedralButterfly=Fs,e.geoPolyhedralCollignon=Lh,e.geoPolyhedralWaterman=Is,e.geoProject=Dl,e.geoGringortenQuincuncial=gt,e.geoPeirceQuincuncial=Bt,e.geoPierceQuincuncial=Bt,e.geoQuantize=wr,e.geoQuincuncial=gf,e.geoRectangularPolyconic=Ur,e.geoRectangularPolyconicRaw=vr,e.geoRobinson=Fi,e.geoRobinsonRaw=xi,e.geoSatellite=Ti,e.geoSatelliteRaw=hn,e.geoSinuMollweide=Qu,e.geoSinuMollweideRaw=fa,e.geoSinusoidal=Et,e.geoSinusoidalRaw=St,e.geoStitch=Rs,e.geoTimes=Ka,e.geoTimesRaw=ia,e.geoTwoPointAzimuthal=Ru,e.geoTwoPointAzimuthalRaw=Ko,e.geoTwoPointAzimuthalUsa=nu,e.geoTwoPointEquidistant=bu,e.geoTwoPointEquidistantRaw=ac,e.geoTwoPointEquidistantUsa=mf,e.geoVanDerGrinten=Du,e.geoVanDerGrintenRaw=Kc,e.geoVanDerGrinten2=Da,e.geoVanDerGrinten2Raw=Dc,e.geoVanDerGrinten3=Jc,e.geoVanDerGrinten3Raw=eo,e.geoVanDerGrinten4=_c,e.geoVanDerGrinten4Raw=yc,e.geoWagner=B,e.geoWagner7=Q,e.geoWagnerRaw=w,e.geoWagner4=je,e.geoWagner4Raw=qe,e.geoWagner6=yt,e.geoWagner6Raw=it,e.geoWiechel=Nt,e.geoWiechelRaw=Ot,e.geoWinkel3=Sr,e.geoWinkel3Raw=hr,Object.defineProperty(e,"__esModule",{value:!0})})});var MRe=ye((Dpr,SRe)=>{"use strict";var Zh=xa(),bX=Mr(),CDt=ba(),Z5=Math.PI/180,G2=180/Math.PI,TX={cursor:"pointer"},AX={cursor:"auto"};function LDt(e,t){var r=e.projection,n;return t._isScoped?n=PDt:t._isClipped?n=RDt:n=IDt,n(e,r)}SRe.exports=LDt;function SX(e,t){return Zh.behavior.zoom().translate(t.translate()).scale(t.scale())}function MX(e,t,r){var n=e.id,i=e.graphDiv,a=i.layout,o=a[n],s=i._fullLayout,l=s[n],u={},c={};function f(h,d){u[n+"."+h]=bX.nestedProperty(o,h).get(),CDt.call("_storeDirectGUIEdit",a,s._preGUI,u);var v=bX.nestedProperty(l,h);v.get()!==d&&(v.set(d),bX.nestedProperty(o,h).set(d),c[n+"."+h]=d)}r(f),f("projection.scale",t.scale()/e.fitScale),f("fitbounds",!1),i.emit("plotly_relayout",c)}function PDt(e,t){var r=SX(e,t);function n(){Zh.select(this).style(TX)}function i(){t.scale(Zh.event.scale).translate(Zh.event.translate),e.render(!0);var s=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":s[0],"geo.center.lat":s[1]})}function a(s){var l=t.invert(e.midPt);s("center.lon",l[0]),s("center.lat",l[1])}function o(){Zh.select(this).style(AX),MX(e,t,a)}return r.on("zoomstart",n).on("zoom",i).on("zoomend",o),r}function IDt(e,t){var r=SX(e,t),n=2,i,a,o,s,l,u,c,f,h;function d(k){return t.invert(k)}function v(k){var A=d(k);if(!A)return!0;var L=t(A);return Math.abs(L[0]-k[0])>n||Math.abs(L[1]-k[1])>n}function x(){Zh.select(this).style(TX),i=Zh.mouse(this),a=t.rotate(),o=t.translate(),s=a,l=d(i)}function b(){if(u=Zh.mouse(this),v(i)){r.scale(t.scale()),r.translate(t.translate());return}t.scale(Zh.event.scale),t.translate([o[0],Zh.event.translate[1]]),l?d(u)&&(f=d(u),c=[s[0]+(f[0]-l[0]),a[1],a[2]],t.rotate(c),s=c):(i=u,l=d(i)),h=!0,e.render(!0);var k=t.rotate(),A=t.invert(e.midPt);e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.center.lon":A[0],"geo.center.lat":A[1],"geo.projection.rotation.lon":-k[0]})}function p(){Zh.select(this).style(AX),h&&MX(e,t,E)}function E(k){var A=t.rotate(),L=t.invert(e.midPt);k("projection.rotation.lon",-A[0]),k("center.lon",L[0]),k("center.lat",L[1])}return r.on("zoomstart",x).on("zoom",b).on("zoomend",p),r}function RDt(e,t){var r={r:t.rotate(),k:t.scale()},n=SX(e,t),i=UDt(n,"zoomstart","zoom","zoomend"),a=0,o=n.on,s;n.on("zoomstart",function(){Zh.select(this).style(TX);var h=Zh.mouse(this),d=t.rotate(),v=d,x=t.translate(),b=DDt(d);s=Sz(t,h),o.call(n,"zoom",function(){var p=Zh.mouse(this);if(t.scale(r.k=Zh.event.scale),!s)h=p,s=Sz(t,h);else if(Sz(t,p)){t.rotate(d).translate(x);var E=Sz(t,p),k=FDt(s,E),A=ODt(zDt(b,k)),L=r.r=qDt(A,s,v);(!isFinite(L[0])||!isFinite(L[1])||!isFinite(L[2]))&&(L=v),t.rotate(L),v=L}u(i.of(this,arguments))}),l(i.of(this,arguments))}).on("zoomend",function(){Zh.select(this).style(AX),o.call(n,"zoom",null),c(i.of(this,arguments)),MX(e,t,f)}).on("zoom.redraw",function(){e.render(!0);var h=t.rotate();e.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":t.scale()/e.fitScale,"geo.projection.rotation.lon":-h[0],"geo.projection.rotation.lat":-h[1]})});function l(h){a++||h({type:"zoomstart"})}function u(h){h({type:"zoom"})}function c(h){--a||h({type:"zoomend"})}function f(h){var d=t.rotate();h("projection.rotation.lon",-d[0]),h("projection.rotation.lat",-d[1])}return Zh.rebind(n,i,"on")}function Sz(e,t){var r=e.invert(t);return r&&isFinite(r[0])&&isFinite(r[1])&&BDt(r)}function DDt(e){var t=.5*e[0]*Z5,r=.5*e[1]*Z5,n=.5*e[2]*Z5,i=Math.sin(t),a=Math.cos(t),o=Math.sin(r),s=Math.cos(r),l=Math.sin(n),u=Math.cos(n);return[a*s*u+i*o*l,i*s*u-a*o*l,a*o*u+i*s*l,a*s*l-i*o*u]}function zDt(e,t){var r=e[0],n=e[1],i=e[2],a=e[3],o=t[0],s=t[1],l=t[2],u=t[3];return[r*o-n*s-i*l-a*u,r*s+n*o+i*u-a*l,r*l-n*u+i*o+a*s,r*u+n*l-i*s+a*o]}function FDt(e,t){if(!(!e||!t)){var r=NDt(e,t),n=Math.sqrt(ARe(r,r)),i=.5*Math.acos(Math.max(-1,Math.min(1,ARe(e,t)))),a=Math.sin(i)/n;return n&&[Math.cos(i),r[2]*a,-r[1]*a,r[0]*a]}}function qDt(e,t,r){var n=wX(t,2,e[0]);n=wX(n,1,e[1]),n=wX(n,0,e[2]-r[2]);var i=t[0],a=t[1],o=t[2],s=n[0],l=n[1],u=n[2],c=Math.atan2(a,i)*G2,f=Math.sqrt(i*i+a*a),h,d;Math.abs(l)>f?(d=(l>0?90:-90)-c,h=0):(d=Math.asin(l/f)*G2-c,h=Math.sqrt(f*f-l*l));var v=180-d-2*c,x=(Math.atan2(u,s)-Math.atan2(o,h))*G2,b=(Math.atan2(u,s)-Math.atan2(o,-h))*G2,p=wRe(r[0],r[1],d,x),E=wRe(r[0],r[1],v,b);return p<=E?[d,x,r[2]]:[v,b,r[2]]}function wRe(e,t,r,n){var i=TRe(r-e),a=TRe(n-t);return Math.sqrt(i*i+a*a)}function TRe(e){return(e%360+540)%360-180}function wX(e,t,r){var n=r*Z5,i=e.slice(),a=t===0?1:0,o=t===2?1:2,s=Math.cos(n),l=Math.sin(n);return i[a]=e[a]*s-e[o]*l,i[o]=e[o]*s+e[a]*l,i}function ODt(e){return[Math.atan2(2*(e[0]*e[1]+e[2]*e[3]),1-2*(e[1]*e[1]+e[2]*e[2]))*G2,Math.asin(Math.max(-1,Math.min(1,2*(e[0]*e[2]-e[3]*e[1]))))*G2,Math.atan2(2*(e[0]*e[3]+e[1]*e[2]),1-2*(e[2]*e[2]+e[3]*e[3]))*G2]}function BDt(e){var t=e[0]*Z5,r=e[1]*Z5,n=Math.cos(r);return[n*Math.cos(t),n*Math.sin(t),Math.sin(r)]}function ARe(e,t){for(var r=0,n=0,i=e.length;n<i;++n)r+=e[n]*t[n];return r}function NDt(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function UDt(e){for(var t=0,r=arguments.length,n=[];++t<r;)n.push(arguments[t]);var i=Zh.dispatch.apply(null,n);return i.of=function(a,o){return function(s){var l;try{l=s.sourceEvent=Zh.event,s.target=e,Zh.event=s,i[s.type].apply(a,o)}finally{Zh.event=l}}},i}});var RRe=ye((zpr,IRe)=>{"use strict";var t1=xa(),CX=xX(),VDt=CX.geoPath,HDt=CX.geoDistance,GDt=bRe(),jDt=ba(),ek=Mr(),WDt=ek.strTranslate,Mz=va(),QE=ao(),ERe=Nc(),ZDt=Xu(),kX=Qa(),kRe=wg().getAutoRange,EX=gv(),XDt=wf().prepSelect,YDt=wf().clearOutline,KDt=wf().selectOnClick,JDt=MRe(),fp=YE(),$Dt=nx(),LRe=cz(),QDt=aX().feature;function PRe(e){this.id=e.id,this.graphDiv=e.graphDiv,this.container=e.container,this.topojsonURL=e.topojsonURL,this.isStatic=e.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var $g=PRe.prototype;IRe.exports=function(t){return new PRe(t)};$g.plot=function(e,t,r,n){var i=this;if(n)return i.update(e,t,!0);i._geoCalcData=e,i._fullLayout=t;var a=t[this.id],o=[],s=!1;for(var l in fp.layerNameToAdjective)if(l!=="frame"&&a["show"+l]){s=!0;break}for(var u=!1,c=0;c<e.length;c++){var f=e[0][0].trace;f._geo=i,f.locationmode&&(s=!0);var h=f.marker;if(h){var d=h.angle,v=h.angleref;(d||v==="north"||v==="previous")&&(u=!0)}}if(this._hasMarkerAngles=u,s){var x=LRe.getTopojsonName(a);(i.topojson===null||x!==i.topojsonName)&&(i.topojsonName=x,PlotlyGeoAssets.topojson[i.topojsonName]===void 0&&o.push(i.fetchTopojson()))}o=o.concat($Dt.fetchTraceGeoData(e)),r.push(new Promise(function(b,p){Promise.all(o).then(function(){i.topojson=PlotlyGeoAssets.topojson[i.topojsonName],i.update(e,t),b()}).catch(p)}))};$g.fetchTopojson=function(){var e=this,t=LRe.getTopojsonPath(e.topojsonURL,e.topojsonName);return new Promise(function(r,n){t1.json(t,function(i,a){if(i)return i.status===404?n(new Error(["plotly.js could not find topojson file at",t+".","Make sure the *topojsonURL* plot config option","is set properly."].join(" "))):n(new Error(["unexpected error while fetching topojson file at",t].join(" ")));PlotlyGeoAssets.topojson[e.topojsonName]=a,r()})})};$g.update=function(e,t,r){var n=t[this.id];this.hasChoropleth=!1;for(var i=0;i<e.length;i++){var a=e[i],o=a[0].trace;o.type==="choropleth"&&(this.hasChoropleth=!0),o.visible===!0&&o._length>0&&o._module.calcGeoJSON(a,t)}if(!r){var s=this.updateProjection(e,t);if(s)return;(!this.viewInitial||this.scope!==n.scope)&&this.saveViewInitial(n)}this.scope=n.scope,this.updateBaseLayers(t,n),this.updateDims(t,n),this.updateFx(t,n),ZDt.generalUpdatePerTraceModule(this.graphDiv,this,e,n);var l=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=l.selectAll(".point"),this.dataPoints.text=l.selectAll("text"),this.dataPaths.line=l.selectAll(".js-line");var u=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=u.selectAll("path"),this._render()};$g.updateProjection=function(e,t){var r=this.graphDiv,n=t[this.id],i=t._size,a=n.domain,o=n.projection,s=n.lonaxis,l=n.lataxis,u=s._ax,c=l._ax,f=this.projection=ezt(n),h=[[i.l+i.w*a.x[0],i.t+i.h*(1-a.y[1])],[i.l+i.w*a.x[1],i.t+i.h*(1-a.y[0])]],d=n.center||{},v=o.rotation||{},x=s.range||[],b=l.range||[];if(n.fitbounds){u._length=h[1][0]-h[0][0],c._length=h[1][1]-h[0][1],u.range=kRe(r,u),c.range=kRe(r,c);var p=(u.range[0]+u.range[1])/2,E=(c.range[0]+c.range[1])/2;if(n._isScoped)d={lon:p,lat:E};else if(n._isClipped){d={lon:p,lat:E},v={lon:p,lat:E,roll:v.roll};var k=o.type,A=fp.lonaxisSpan[k]/2||180,L=fp.lataxisSpan[k]/2||90;x=[p-A,p+A],b=[E-L,E+L]}else d={lon:p,lat:E},v={lon:p,lat:v.lat,roll:v.roll}}f.center([d.lon-v.lon,d.lat-v.lat]).rotate([-v.lon,-v.lat,v.roll]).parallels(o.parallels);var _=CRe(x,b);f.fitExtent(h,_);var C=this.bounds=f.getBounds(_),M=this.fitScale=f.scale(),g=f.translate();if(n.fitbounds){var P=f.getBounds(CRe(u.range,c.range)),T=Math.min((C[1][0]-C[0][0])/(P[1][0]-P[0][0]),(C[1][1]-C[0][1])/(P[1][1]-P[0][1]));isFinite(T)?f.scale(T*M):ek.warn("Something went wrong during"+this.id+"fitbounds computations.")}else f.scale(o.scale*M);var F=this.midPt=[(C[0][0]+C[1][0])/2,(C[0][1]+C[1][1])/2];if(f.translate([g[0]+(F[0]-g[0]),g[1]+(F[1]-g[1])]).clipExtent(C),n._isAlbersUsa){var q=f([d.lon,d.lat]),V=f.translate();f.translate([V[0]-(q[0]-V[0]),V[1]-(q[1]-V[1])])}};$g.updateBaseLayers=function(e,t){var r=this,n=r.topojson,i=r.layers,a=r.basePaths;function o(h){return h==="lonaxis"||h==="lataxis"}function s(h){return!!fp.lineLayers[h]}function l(h){return!!fp.fillLayers[h]}var u=this.hasChoropleth?fp.layersForChoropleth:fp.layers,c=u.filter(function(h){return s(h)||l(h)?t["show"+h]:o(h)?t[h].showgrid:!0}),f=r.framework.selectAll(".layer").data(c,String);f.exit().each(function(h){delete i[h],delete a[h],t1.select(this).remove()}),f.enter().append("g").attr("class",function(h){return"layer "+h}).each(function(h){var d=i[h]=t1.select(this);h==="bg"?r.bgRect=d.append("rect").style("pointer-events","all"):o(h)?a[h]=d.append("path").style("fill","none"):h==="backplot"?d.append("g").classed("choroplethlayer",!0):h==="frontplot"?d.append("g").classed("scatterlayer",!0):s(h)?a[h]=d.append("path").style("fill","none").style("stroke-miterlimit",2):l(h)&&(a[h]=d.append("path").style("stroke","none"))}),f.order(),f.each(function(h){var d=a[h],v=fp.layerNameToAdjective[h];h==="frame"?d.datum(fp.sphereSVG):s(h)||l(h)?d.datum(QDt(n,n.objects[h])):o(h)&&d.datum(tzt(h,t,e)).call(Mz.stroke,t[h].gridcolor).call(QE.dashLine,t[h].griddash,t[h].gridwidth),s(h)?d.call(Mz.stroke,t[v+"color"]).call(QE.dashLine,"",t[v+"width"]):l(h)&&d.call(Mz.fill,t[v+"color"])})};$g.updateDims=function(e,t){var r=this.bounds,n=(t.framewidth||0)/2,i=r[0][0]-n,a=r[0][1]-n,o=r[1][0]-i+n,s=r[1][1]-a+n;QE.setRect(this.clipRect,i,a,o,s),this.bgRect.call(QE.setRect,i,a,o,s).call(Mz.fill,t.bgcolor),this.xaxis._offset=i,this.xaxis._length=o,this.yaxis._offset=a,this.yaxis._length=s};$g.updateFx=function(e,t){var r=this,n=r.graphDiv,i=r.bgRect,a=e.dragmode,o=e.clickmode;if(r.isStatic)return;function s(){var f=r.viewInitial,h={};for(var d in f)h[r.id+"."+d]=f[d];jDt.call("_guiRelayout",n,h),n.emit("plotly_doubleclick",null)}function l(f){return r.projection.invert([f[0]+r.xaxis._offset,f[1]+r.yaxis._offset])}var u=function(f,h){if(h.isRect){var d=f.range={};d[r.id]=[l([h.xmin,h.ymin]),l([h.xmax,h.ymax])]}else{var v=f.lassoPoints={};v[r.id]=h.map(l)}},c={element:r.bgRect.node(),gd:n,plotinfo:{id:r.id,xaxis:r.xaxis,yaxis:r.yaxis,fillRangeItems:u},xaxes:[r.xaxis],yaxes:[r.yaxis],subplot:r.id,clickFn:function(f){f===2&&YDt(n)}};a==="pan"?(i.node().onmousedown=null,i.call(JDt(r,t)),i.on("dblclick.zoom",s),n._context._scrollZoom.geo||i.on("wheel.zoom",null)):(a==="select"||a==="lasso")&&(i.on(".zoom",null),c.prepFn=function(f,h,d){XDt(f,h,d,c,a)},EX.init(c)),i.on("mousemove",function(){var f=r.projection.invert(ek.getPositionFromD3Event());if(!f)return EX.unhover(n,t1.event);r.xaxis.p2c=function(){return f[0]},r.yaxis.p2c=function(){return f[1]},ERe.hover(n,t1.event,r.id)}),i.on("mouseout",function(){n._dragging||EX.unhover(n,t1.event)}),i.on("click",function(){a!=="select"&&a!=="lasso"&&(o.indexOf("select")>-1&&KDt(t1.event,n,[r.xaxis],[r.yaxis],r.id,c),o.indexOf("event")>-1&&ERe.click(n,t1.event))})};$g.makeFramework=function(){var e=this,t=e.graphDiv,r=t._fullLayout,n="clip"+r._uid+e.id;e.clipDef=r._clips.append("clipPath").attr("id",n),e.clipRect=e.clipDef.append("rect"),e.framework=t1.select(e.container).append("g").attr("class","geo "+e.id).call(QE.setClipUrl,n,t),e.project=function(i){var a=e.projection(i);return a?[a[0]-e.xaxis._offset,a[1]-e.yaxis._offset]:[null,null]},e.xaxis={_id:"x",c2p:function(i){return e.project(i)[0]}},e.yaxis={_id:"y",c2p:function(i){return e.project(i)[1]}},e.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},kX.setConvert(e.mockAxis,r)};$g.saveViewInitial=function(e){var t=e.center||{},r=e.projection,n=r.rotation||{};this.viewInitial={fitbounds:e.fitbounds,"projection.scale":r.scale};var i;e._isScoped?i={"center.lon":t.lon,"center.lat":t.lat}:e._isClipped?i={"projection.rotation.lon":n.lon,"projection.rotation.lat":n.lat}:i={"center.lon":t.lon,"center.lat":t.lat,"projection.rotation.lon":n.lon},ek.extendFlat(this.viewInitial,i)};$g.render=function(e){this._hasMarkerAngles&&e?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()};$g._render=function(){var e=this.projection,t=e.getPath(),r;function n(a){var o=e(a.lonlat);return o?WDt(o[0],o[1]):null}function i(a){return e.isLonLatOverEdges(a.lonlat)?"none":null}for(r in this.basePaths)this.basePaths[r].attr("d",t);for(r in this.dataPaths)this.dataPaths[r].attr("d",function(a){return t(a.geojson)});for(r in this.dataPoints)this.dataPoints[r].attr("display",i).attr("transform",n)};function ezt(e){var t=e.projection,r=t.type,n=fp.projNames[r];n="geo"+ek.titleCase(n);for(var i=CX[n]||GDt[n],a=i(),o=e._isSatellite?Math.acos(1/t.distance)*180/Math.PI:e._isClipped?fp.lonaxisSpan[r]/2:null,s=["center","rotate","parallels","clipExtent"],l=function(f){return f?a:[]},u=0;u<s.length;u++){var c=s[u];typeof a[c]!="function"&&(a[c]=l)}return a.isLonLatOverEdges=function(f){if(a(f)===null)return!0;if(o){var h=a.rotate(),d=HDt(f,[-h[0],-h[1]]),v=o*Math.PI/180;return d>v}else return!1},a.getPath=function(){return VDt().projection(a)},a.getBounds=function(f){return a.getPath().bounds(f)},a.precision(fp.precision),e._isSatellite&&a.tilt(t.tilt).distance(t.distance),o&&a.clipAngle(o-fp.clipPad),a}function tzt(e,t,r){var n=1e-6,i=2.5,a=t[e],o=fp.scopeDefaults[t.scope],s,l,u;e==="lonaxis"?(s=o.lonaxisRange,l=o.lataxisRange,u=function(E,k){return[E,k]}):e==="lataxis"&&(s=o.lataxisRange,l=o.lonaxisRange,u=function(E,k){return[k,E]});var c={type:"linear",range:[s[0],s[1]-n],tick0:a.tick0,dtick:a.dtick};kX.setConvert(c,r);var f=kX.calcTicks(c);!t.isScoped&&e==="lonaxis"&&f.pop();for(var h=f.length,d=new Array(h),v=0;v<h;v++)for(var x=f[v].x,b=d[v]=[],p=l[0];p<l[1]+i;p+=i)b.push(u(x,p));return{type:"MultiLineString",coordinates:d}}function CRe(e,t){var r=fp.clipPad,n=e[0]+r,i=e[1]-r,a=t[0]+r,o=t[1]-r;n>0&&i<0&&(i+=360);var s=(i-n)/4;return{type:"Polygon",coordinates:[[[n,a],[n,o],[n+s,o],[n+2*s,o],[n+3*s,o],[i,o],[i,a],[i-s,a],[i-2*s,a],[i-3*s,a],[n,a]]]}}});var LX=ye((Fpr,FRe)=>{"use strict";var Y5=dh(),rzt=Ju().attributes,izt=Ed().dash,X5=YE(),nzt=Bu().overrideAll,DRe=Y1(),zRe={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:Y5.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:izt},azt=FRe.exports=nzt({domain:rzt({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:DRe(X5.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:DRe(X5.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:Y5.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:X5.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:X5.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:X5.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:X5.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:Y5.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:Y5.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:Y5.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:Y5.background},lonaxis:zRe,lataxis:zRe},"plot","from-root");azt.uirevision={valType:"any",editType:"none"}});var BRe=ye((qpr,ORe)=>{"use strict";var Ez=Mr(),ozt=C_(),szt=kd().getSubplotData,kz=YE(),lzt=LX(),qRe=kz.axesNames;ORe.exports=function(t,r,n){ozt(t,r,n,{type:"geo",attributes:lzt,handleDefaults:uzt,fullData:n,partition:"y"})};function uzt(e,t,r,n){var i=szt(n.fullData,"geo",n.id),a=i.map(function(ae){return ae.index}),o=r("resolution"),s=r("scope"),l=kz.scopeDefaults[s],u=r("projection.type",l.projType),c=t._isAlbersUsa=u==="albers usa";c&&(s=t.scope="usa");var f=t._isScoped=s!=="world",h=t._isSatellite=u==="satellite",d=t._isConic=u.indexOf("conic")!==-1||u==="albers",v=t._isClipped=!!kz.lonaxisSpan[u];if(e.visible===!1){var x=Ez.extendDeep({},t._template);x.showcoastlines=!1,x.showcountries=!1,x.showframe=!1,x.showlakes=!1,x.showland=!1,x.showocean=!1,x.showrivers=!1,x.showsubunits=!1,x.lonaxis&&(x.lonaxis.showgrid=!1),x.lataxis&&(x.lataxis.showgrid=!1),t._template=x}for(var b=r("visible"),p,E=0;E<qRe.length;E++){var k=qRe[E],A=[30,10][E],L;if(f)L=l[k+"Range"];else{var _=kz[k+"Span"],C=(_[u]||_["*"])/2,M=r("projection.rotation."+k.substr(0,3),l.projRotate[E]);L=[M-C,M+C]}var g=r(k+".range",L);r(k+".tick0"),r(k+".dtick",A),p=r(k+".showgrid",b?void 0:!1),p&&(r(k+".gridcolor"),r(k+".gridwidth"),r(k+".griddash")),t[k]._ax={type:"linear",_id:k.slice(0,3),_traceIndices:a,setScale:Ez.identity,c2l:Ez.identity,r2l:Ez.identity,autorange:!0,range:g.slice(),_m:1,_input:{}}}var P=t.lonaxis.range,T=t.lataxis.range,F=P[0],q=P[1];F>0&&q<0&&(q+=360);var V=(F+q)/2,H;if(!c){var X=f?l.projRotate:[V,0,0];H=r("projection.rotation.lon",X[0]),r("projection.rotation.lat",X[1]),r("projection.rotation.roll",X[2]),p=r("showcoastlines",!f&&b),p&&(r("coastlinecolor"),r("coastlinewidth")),p=r("showocean",b?void 0:!1),p&&r("oceancolor")}var G,N;if(c?(G=-96.6,N=38.7):(G=f?V:H,N=(T[0]+T[1])/2),r("center.lon",G),r("center.lat",N),h&&(r("projection.tilt"),r("projection.distance")),d){var W=l.projParallels||[0,60];r("projection.parallels",W)}r("projection.scale"),p=r("showland",b?void 0:!1),p&&r("landcolor"),p=r("showlakes",b?void 0:!1),p&&r("lakecolor"),p=r("showrivers",b?void 0:!1),p&&(r("rivercolor"),r("riverwidth")),p=r("showcountries",f&&s!=="usa"&&b),p&&(r("countrycolor"),r("countrywidth")),(s==="usa"||s==="north america"&&o===50)&&(r("showsubunits",b),r("subunitcolor"),r("subunitwidth")),f||(p=r("showframe",b),p&&(r("framecolor"),r("framewidth"))),r("bgcolor");var re=r("fitbounds");re&&(delete t.projection.scale,f?(delete t.center.lon,delete t.center.lat):v?(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon,delete t.projection.rotation.lat,delete t.lonaxis.range,delete t.lataxis.range):(delete t.center.lon,delete t.center.lat,delete t.projection.rotation.lon))}});var PX=ye((Opr,VRe)=>{"use strict";var czt=kd().getSubplotCalcData,fzt=Mr().counterRegex,hzt=RRe(),Wm="geo",NRe=fzt(Wm),URe={};URe[Wm]={valType:"subplotid",dflt:Wm,editType:"calc"};function dzt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[Wm],i=0;i<n.length;i++){var a=n[i],o=czt(r,Wm,a),s=t[a],l=s._subplot;l||(l=hzt({id:a,graphDiv:e,container:t._geolayer.node(),topojsonURL:e._context.topojsonURL,staticPlot:e._context.staticPlot}),t[a]._subplot=l),l.plot(o,t,e._promises)}}function vzt(e,t,r,n){for(var i=n._subplots[Wm]||[],a=0;a<i.length;a++){var o=i[a],s=n[o]._subplot;!t[o]&&s&&(s.framework.remove(),s.clipDef.remove())}}function pzt(e){for(var t=e._fullLayout,r=t._subplots[Wm],n=0;n<r.length;n++){var i=t[r[n]],a=i._subplot;a.updateFx(t,i)}}VRe.exports={attr:Wm,name:Wm,idRoot:Wm,idRegex:NRe,attrRegex:NRe,attributes:URe,layoutAttributes:LX(),supplyLayoutDefaults:BRe(),plot:dzt,updateFx:pzt,clean:vzt}});var GRe=ye((Bpr,HRe)=>{"use strict";HRe.exports={attributes:H2(),supplyDefaults:A8e(),colorbar:Kd(),formatLabels:E8e(),calc:lz(),calcGeoJSON:_X().calcGeoJSON,plot:_X().plot,style:pX(),styleOnSelect:op().styleOnSelect,hoverPoints:hRe(),eventData:vRe(),selectPoints:mRe(),moduleType:"trace",name:"scattergeo",basePlotModule:PX(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}});var WRe=ye((Npr,jRe)=>{"use strict";jRe.exports=GRe()});var K5=ye((Upr,YRe)=>{"use strict";var gzt=Wo().hovertemplateAttrs,ox=H2(),mzt=Jl(),ZRe=vl(),yzt=dh().defaultLine,ax=no().extendFlat,XRe=ox.marker.line;YRe.exports=ax({locations:{valType:"data_array",editType:"calc"},locationmode:ox.locationmode,z:{valType:"data_array",editType:"calc"},geojson:ax({},ox.geojson,{}),featureidkey:ox.featureidkey,text:ax({},ox.text,{}),hovertext:ax({},ox.hovertext,{}),marker:{line:{color:ax({},XRe.color,{dflt:yzt}),width:ax({},XRe.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:ox.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:ox.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:ax({},ZRe.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:gzt(),showlegend:ax({},ZRe.showlegend,{dflt:!1})},mzt("",{cLetter:"z",editTypeOverride:"calc"}))});var JRe=ye((Vpr,KRe)=>{"use strict";var Cz=Mr(),_zt=Uh(),xzt=K5();KRe.exports=function(t,r,n,i){function a(h,d){return Cz.coerce(t,r,xzt,h,d)}var o=a("locations"),s=a("z");if(!(o&&o.length&&Cz.isArrayOrTypedArray(s)&&s.length)){r.visible=!1;return}r._length=Math.min(o.length,s.length);var l=a("geojson"),u;(typeof l=="string"&&l!==""||Cz.isPlainObject(l))&&(u="geojson-id");var c=a("locationmode",u);c==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate");var f=a("marker.line.width");f&&a("marker.line.color"),a("marker.opacity"),_zt(t,r,i,a,{prefix:"",cLetter:"z"}),Cz.coerceSelectionMarkerOpacity(r,a)}});var Lz=ye((Hpr,eDe)=>{"use strict";var $Re=uo(),bzt=es().BADNUM,wzt=zv(),Tzt=km(),Azt=F0();function QRe(e){return e&&typeof e=="string"}eDe.exports=function(t,r){var n=r._length,i=new Array(n),a;r.geojson?a=function(c){return QRe(c)||$Re(c)}:a=QRe;for(var o=0;o<n;o++){var s=i[o]={},l=r.locations[o],u=r.z[o];a(l)&&$Re(u)?(s.loc=l,s.z=u):(s.loc=null,s.z=bzt),s.index=o}return Tzt(i,r),wzt(t,r,{vals:r.z,containerStr:"",cLetter:"z"}),Azt(i,r),i}});var Pz=ye((Gpr,rDe)=>{"use strict";var Szt=xa(),Mzt=va(),IX=ao(),Ezt=Mu();function kzt(e,t){t&&tDe(e,t)}function tDe(e,t){var r=t[0].trace,n=t[0].node3,i=n.selectAll(".choroplethlocation"),a=r.marker||{},o=a.line||{},s=Ezt.makeColorScaleFuncFromTrace(r);i.each(function(l){Szt.select(this).attr("fill",s(l.z)).call(Mzt.stroke,l.mlc||o.color).call(IX.dashLine,"",l.mlw||o.width||0).style("opacity",a.opacity)}),IX.selectedPointStyle(i,r)}function Czt(e,t){var r=t[0].node3,n=t[0].trace;n.selectedpoints?IX.selectedPointStyle(r.selectAll(".choroplethlocation"),n):tDe(e,t)}rDe.exports={style:kzt,styleOnSelect:Czt}});var RX=ye((jpr,aDe)=>{"use strict";var Lzt=xa(),iDe=Mr(),J5=nx(),Pzt=cz().getTopojsonFeatures,nDe=wg().findExtremes,Izt=Pz().style;function Rzt(e,t,r){var n=t.layers.backplot.select(".choroplethlayer");iDe.makeTraceGroups(n,r,"trace choropleth").each(function(i){var a=Lzt.select(this),o=a.selectAll("path.choroplethlocation").data(iDe.identity);o.enter().append("path").classed("choroplethlocation",!0),o.exit().remove(),Izt(e,i)})}function Dzt(e,t){for(var r=e[0].trace,n=t[r.geo],i=n._subplot,a=r.locationmode,o=r._length,s=a==="geojson-id"?J5.extractTraceFeature(e):Pzt(r,i.topojson),l=[],u=[],c=0;c<o;c++){var f=e[c],h=a==="geojson-id"?f.fOut:J5.locationToFeature(a,f.loc,s);if(h){f.geojson=h,f.ct=h.properties.ct,f._polygons=J5.feature2polygons(h);var d=J5.computeBbox(h);l.push(d[0],d[2]),u.push(d[1],d[3])}else f.geojson=null}if(n.fitbounds==="geojson"&&a==="geojson-id"){var v=J5.computeBbox(J5.getTraceGeojson(r));l=[v[0],v[2]],u=[v[1],v[3]]}var x={padded:!0};r._extremes.lon=nDe(n.lonaxis._ax,l,x),r._extremes.lat=nDe(n.lataxis._ax,u,x)}aDe.exports={calcGeoJSON:Dzt,plot:Rzt}});var Iz=ye((Wpr,oDe)=>{"use strict";var zzt=Qa(),Fzt=K5(),qzt=Mr().fillText;oDe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s,l,u,c,f=[r,n],h=[r+360,n];for(l=0;l<i.length;l++)if(s=i[l],c=!1,s._polygons){for(u=0;u<s._polygons.length;u++)s._polygons[u].contains(f)&&(c=!c),s._polygons[u].contains(h)&&(c=!c);if(c)break}if(!(!c||!s))return t.x0=t.x1=t.xa.c2p(s.ct),t.y0=t.y1=t.ya.c2p(s.ct),t.index=s.index,t.location=s.loc,t.z=s.z,t.zLabel=zzt.tickText(o.mockAxis,o.mockAxis.c2l(s.z),"hover").text,t.hovertemplate=s.hovertemplate,Ozt(t,a,s),[t]};function Ozt(e,t,r){if(!t.hovertemplate){var n=r.hi||t.hoverinfo,i=String(r.loc),a=n==="all"?Fzt.hoverinfo.flags:n.split("+"),o=a.indexOf("name")!==-1,s=a.indexOf("location")!==-1,l=a.indexOf("z")!==-1,u=a.indexOf("text")!==-1,c=!o&&s,f=[];c?e.nameOverride=i:(o&&(e.nameOverride=t.name),s&&f.push(i)),l&&f.push(e.zLabel),u&&qzt(r,t,f),e.extraText=f.join("<br>")}}});var Rz=ye((Zpr,sDe)=>{"use strict";sDe.exports=function(t,r,n,i,a){t.location=r.location,t.z=r.z;var o=i[a];return o.fIn&&o.fIn.properties&&(t.properties=o.fIn.properties),t.ct=o.ct,t}});var Dz=ye((Xpr,lDe)=>{"use strict";lDe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l,u,c,f;if(r===!1)for(s=0;s<n.length;s++)n[s].selected=0;else for(s=0;s<n.length;s++)l=n[s],u=l.ct,u&&(c=i.c2p(u),f=a.c2p(u),r.contains([c,f],null,s,t)?(o.push({pointNumber:s,lon:u[0],lat:u[1]}),l.selected=1):l.selected=0);return o}});var cDe=ye((Ypr,uDe)=>{"use strict";uDe.exports={attributes:K5(),supplyDefaults:JRe(),colorbar:M_(),calc:Lz(),calcGeoJSON:RX().calcGeoJSON,plot:RX().plot,style:Pz().style,styleOnSelect:Pz().styleOnSelect,hoverPoints:Iz(),eventData:Rz(),selectPoints:Dz(),moduleType:"trace",name:"choropleth",basePlotModule:PX(),categories:["geo","noOpacity","showLegend"],meta:{}}});var hDe=ye((Kpr,fDe)=>{"use strict";fDe.exports=cDe()});var zz=ye((Jpr,vDe)=>{"use strict";var Bzt=ba(),s0=Mr(),Nzt=oT();function Uzt(e,t,r,n){var i=e.cd,a=i[0].t,o=i[0].trace,s=e.xa,l=e.ya,u=a.x,c=a.y,f=s.c2p(t),h=l.c2p(r),d=e.distance,v;if(a.tree){var x=s.p2c(f-d),b=s.p2c(f+d),p=l.p2c(h-d),E=l.p2c(h+d);n==="x"?v=a.tree.range(Math.min(x,b),Math.min(l._rl[0],l._rl[1]),Math.max(x,b),Math.max(l._rl[0],l._rl[1])):v=a.tree.range(Math.min(x,b),Math.min(p,E),Math.max(x,b),Math.max(p,E))}else v=a.ids;var k,A,L,_,C,M,g,P,T,F=d;if(n==="x"){var q=!!o.xperiodalignment,V=!!o.yperiodalignment;for(C=0;C<v.length;C++){if(k=v[C],L=u[k],M=Math.abs(s.c2p(L)-f),q){var H=s.c2p(o._xStarts[k]),X=s.c2p(o._xEnds[k]);M=f>=Math.min(H,X)&&f<=Math.max(H,X)?0:1/0}if(M<F){if(F=M,_=c[k],g=l.c2p(_)-h,V){var G=l.c2p(o._yStarts[k]),N=l.c2p(o._yEnds[k]);g=h>=Math.min(G,N)&&h<=Math.max(G,N)?0:1/0}T=Math.sqrt(M*M+g*g),A=v[C]}}}else for(C=v.length-1;C>-1;C--)k=v[C],L=u[k],_=c[k],M=s.c2p(L)-f,g=l.c2p(_)-h,P=Math.sqrt(M*M+g*g),P<F&&(F=T=P,A=k);return e.index=A,e.distance=F,e.dxy=T,A===void 0?[e]:[dDe(e,u,c,o)]}function dDe(e,t,r,n){var i=e.xa,a=e.ya,o=e.distance,s=e.dxy,l=e.index,u={pointNumber:l,x:t[l],y:r[l]};u.tx=s0.isArrayOrTypedArray(n.text)?n.text[l]:n.text,u.htx=Array.isArray(n.hovertext)?n.hovertext[l]:n.hovertext,u.data=Array.isArray(n.customdata)?n.customdata[l]:n.customdata,u.tp=Array.isArray(n.textposition)?n.textposition[l]:n.textposition;var c=n.textfont;c&&(u.ts=s0.isArrayOrTypedArray(c.size)?c.size[l]:c.size,u.tc=s0.isArrayOrTypedArray(c.color)?c.color[l]:c.color,u.tf=Array.isArray(c.family)?c.family[l]:c.family,u.tw=Array.isArray(c.weight)?c.weight[l]:c.weight,u.ty=Array.isArray(c.style)?c.style[l]:c.style,u.tv=Array.isArray(c.variant)?c.variant[l]:c.variant);var f=n.marker;f&&(u.ms=s0.isArrayOrTypedArray(f.size)?f.size[l]:f.size,u.mo=s0.isArrayOrTypedArray(f.opacity)?f.opacity[l]:f.opacity,u.mx=s0.isArrayOrTypedArray(f.symbol)?f.symbol[l]:f.symbol,u.ma=s0.isArrayOrTypedArray(f.angle)?f.angle[l]:f.angle,u.mc=s0.isArrayOrTypedArray(f.color)?f.color[l]:f.color);var h=f&&f.line;h&&(u.mlc=Array.isArray(h.color)?h.color[l]:h.color,u.mlw=s0.isArrayOrTypedArray(h.width)?h.width[l]:h.width);var d=f&&f.gradient;d&&d.type!=="none"&&(u.mgt=Array.isArray(d.type)?d.type[l]:d.type,u.mgc=Array.isArray(d.color)?d.color[l]:d.color);var v=i.c2p(u.x,!0),x=a.c2p(u.y,!0),b=u.mrc||1,p=n.hoverlabel;p&&(u.hbg=Array.isArray(p.bgcolor)?p.bgcolor[l]:p.bgcolor,u.hbc=Array.isArray(p.bordercolor)?p.bordercolor[l]:p.bordercolor,u.hts=s0.isArrayOrTypedArray(p.font.size)?p.font.size[l]:p.font.size,u.htc=Array.isArray(p.font.color)?p.font.color[l]:p.font.color,u.htf=Array.isArray(p.font.family)?p.font.family[l]:p.font.family,u.hnl=s0.isArrayOrTypedArray(p.namelength)?p.namelength[l]:p.namelength);var E=n.hoverinfo;E&&(u.hi=Array.isArray(E)?E[l]:E);var k=n.hovertemplate;k&&(u.ht=Array.isArray(k)?k[l]:k);var A={};A[e.index]=u;var L=n._origX,_=n._origY,C=s0.extendFlat({},e,{color:Nzt(n,u),x0:v-b,x1:v+b,xLabelVal:L?L[l]:u.x,y0:x-b,y1:x+b,yLabelVal:_?_[l]:u.y,cd:A,distance:o,spikeDistance:s,hovertemplate:u.ht});return u.htx?C.text=u.htx:u.tx?C.text=u.tx:n.text&&(C.text=n.text),s0.fillText(u,n,C),Bzt.getComponentMethod("errorbars","hoverInfo")(u,n,C),C}vDe.exports={hoverPoints:Uzt,calcHover:dDe}});var sx=ye(($pr,gDe)=>{"use strict";var pDe=20;gDe.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:pDe,SYMBOL_STROKE:pDe/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}});var tk=ye((Qpr,xDe)=>{"use strict";var Vzt=vl(),Hzt=Su(),Gzt=Eg(),Af=Uc(),mDe=Oc().axisHoverFormat,yDe=Jl(),jzt=Y1(),DX=no().extendFlat,Wzt=Bu().overrideAll,Zzt=sx().DASHES,_De=Af.line,r1=Af.marker,Xzt=r1.line,$5=xDe.exports=Wzt({x:Af.x,x0:Af.x0,dx:Af.dx,y:Af.y,y0:Af.y0,dy:Af.dy,xperiod:Af.xperiod,yperiod:Af.yperiod,xperiod0:Af.xperiod0,yperiod0:Af.yperiod0,xperiodalignment:Af.xperiodalignment,yperiodalignment:Af.yperiodalignment,xhoverformat:mDe("x"),yhoverformat:mDe("y"),text:Af.text,hovertext:Af.hovertext,textposition:Af.textposition,textfont:Hzt({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:_De.color,width:_De.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:jzt(Zzt),dflt:"solid"}},marker:DX({},yDe("marker"),{symbol:r1.symbol,angle:r1.angle,size:r1.size,sizeref:r1.sizeref,sizemin:r1.sizemin,sizemode:r1.sizemode,opacity:r1.opacity,colorbar:r1.colorbar,line:DX({},yDe("marker.line"),{width:Xzt.width})}),connectgaps:Af.connectgaps,fill:DX({},Af.fill,{dflt:"none"}),fillcolor:Gzt(),selected:{marker:Af.selected.marker,textfont:Af.selected.textfont},unselected:{marker:Af.unselected.marker,textfont:Af.unselected.textfont},opacity:Vzt.opacity},"calc","nested");$5.x.editType=$5.y.editType=$5.x0.editType=$5.y0.editType="calc+clearAxisTypes";$5.hovertemplate=Af.hovertemplate;$5.texttemplate=Af.texttemplate});var Fz=ye(zX=>{"use strict";var bDe=sx();zX.isOpenSymbol=function(e){return typeof e=="string"?bDe.OPEN_RE.test(e):e%200>100};zX.isDotSymbol=function(e){return typeof e=="string"?bDe.DOT_RE.test(e):e>200}});var ADe=ye((t0r,TDe)=>{"use strict";var wDe=Mr(),Yzt=ba(),Kzt=Fz(),Jzt=tk(),$zt=Sm(),qz=lu(),Qzt=K3(),eFt=Pg(),tFt=$p(),rFt=R0(),iFt=Ig(),nFt=D0();TDe.exports=function(t,r,n,i){function a(d,v){return wDe.coerce(t,r,Jzt,d,v)}var o=t.marker?Kzt.isOpenSymbol(t.marker.symbol):!1,s=qz.isBubble(t),l=Qzt(t,r,i,a);if(!l){r.visible=!1;return}eFt(t,r,i,a),a("xhoverformat"),a("yhoverformat");var u=l<$zt.PTS_LINESONLY?"lines+markers":"lines";a("text"),a("hovertext"),a("hovertemplate"),a("mode",u),qz.hasMarkers(r)&&(tFt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0}),a("marker.line.width",o||s?1:0)),qz.hasLines(r)&&(a("connectgaps"),rFt(t,r,n,i,a),a("line.shape")),qz.hasText(r)&&(a("texttemplate"),nFt(t,r,i,a,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var c=(r.line||{}).color,f=(r.marker||{}).color;a("fill"),r.fill!=="none"&&iFt(t,r,n,a);var h=Yzt.getComponentMethod("errorbars","supplyDefaults");h(t,r,c||f||n,{axis:"y"}),h(t,r,c||f||n,{axis:"x",inherit:"y"}),wDe.coerceSelectionMarkerOpacity(r,a)}});var MDe=ye((r0r,SDe)=>{"use strict";var aFt=$P();SDe.exports=function(t,r,n){var i=t.i;return"x"in t||(t.x=r._x[i]),"y"in t||(t.y=r._y[i]),aFt(t,r,n)}});var kDe=ye((i0r,EDe)=>{"use strict";function oFt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>=0?(a=o,i=o-1):n=o+1}return a}function sFt(e,t,r,n,i){for(var a=i+1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l>0?(a=o,i=o-1):n=o+1}return a}function lFt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<0?(a=o,n=o+1):i=o-1}return a}function uFt(e,t,r,n,i){for(var a=n-1;n<=i;){var o=n+i>>>1,s=e[o],l=r!==void 0?r(s,t):s-t;l<=0?(a=o,n=o+1):i=o-1}return a}function cFt(e,t,r,n,i){for(;n<=i;){var a=n+i>>>1,o=e[a],s=r!==void 0?r(o,t):o-t;if(s===0)return a;s<=0?n=a+1:i=a-1}return-1}function rk(e,t,r,n,i,a){return typeof r=="function"?a(e,t,r,n===void 0?0:n|0,i===void 0?e.length-1:i|0):a(e,t,void 0,r===void 0?0:r|0,n===void 0?e.length-1:n|0)}EDe.exports={ge:function(e,t,r,n,i){return rk(e,t,r,n,i,oFt)},gt:function(e,t,r,n,i){return rk(e,t,r,n,i,sFt)},lt:function(e,t,r,n,i){return rk(e,t,r,n,i,lFt)},le:function(e,t,r,n,i){return rk(e,t,r,n,i,uFt)},eq:function(e,t,r,n,i){return rk(e,t,r,n,i,cFt)}}});var Zm=ye((n0r,LDe)=>{"use strict";LDe.exports=function(t,r,n){var i={},a,o;if(typeof r=="string"&&(r=CDe(r)),Array.isArray(r)){var s={};for(o=0;o<r.length;o++)s[r[o]]=!0;r=s}for(a in r)r[a]=CDe(r[a]);var l={};for(a in r){var u=r[a];if(Array.isArray(u))for(o=0;o<u.length;o++){var c=u[o];if(n&&(l[c]=!0),c in t){if(i[a]=t[c],n)for(var f=o;f<u.length;f++)l[u[f]]=!0;break}}else a in t&&(r[a]&&(i[a]=t[a]),n&&(l[a]=!0))}if(n)for(a in t)l[a]||(i[a]=t[a]);return i};var FX={};function CDe(e){return FX[e]?FX[e]:(typeof e=="string"&&(e=FX[e]=e.split(/\s*,\s*|\s+/)),e)}});var Q5=ye((a0r,PDe)=>{"use strict";var fFt=Zm();PDe.exports=hFt;function hFt(e){var t;return arguments.length>1&&(e=arguments),typeof e=="string"?e=e.split(/\s/).map(parseFloat):typeof e=="number"&&(e=[e]),e.length&&typeof e[0]=="number"?e.length===1?t={width:e[0],height:e[0],x:0,y:0}:e.length===2?t={width:e[0],height:e[1],x:0,y:0}:t={x:e[0],y:e[1],width:e[2]-e[0]||0,height:e[3]-e[1]||0}:e&&(e=fFt(e,{left:"x l left Left",top:"y t top Top",width:"w width W Width",height:"h height W Width",bottom:"b bottom Bottom",right:"r right Right"}),t={x:e.left||0,y:e.top||0},e.width==null?e.right?t.width=e.right-t.x:t.width=0:t.width=e.width,e.height==null?e.bottom?t.height=e.bottom-t.y:t.height=0:t.height=e.height),t}});var j2=ye((o0r,IDe)=>{"use strict";IDe.exports=dFt;function dFt(e,t){if(!e||e.length==null)throw Error("Argument should be an array");t==null?t=1:t=Math.floor(t);for(var r=Array(t*2),n=0;n<t;n++){for(var i=-1/0,a=1/0,o=n,s=e.length;o<s;o+=t)e[o]>i&&(i=e[o]),e[o]<a&&(a=e[o]);r[n]=a,r[t+n]=i}return r}});var DDe=ye((s0r,RDe)=>{RDe.exports=function(){for(var e=0;e<arguments.length;e++)if(arguments[e]!==void 0)return arguments[e]}});var W2=ye((l0r,FDe)=>{var zDe=HD();FDe.exports=vFt;function vFt(e,t,r){if(!e)throw new TypeError("must specify data as first parameter");if(r=+(r||0)|0,Array.isArray(e)&&e[0]&&typeof e[0][0]=="number"){var n=e[0].length,i=e.length*n,a,o,s,l;(!t||typeof t=="string")&&(t=new(zDe(t||"float32"))(i+r));var u=t.length-r;if(i!==u)throw new Error("source length "+i+" ("+n+"x"+e.length+") does not match destination length "+u);for(a=0,s=r;a<e.length;a++)for(o=0;o<n;o++)t[s++]=e[a][o]===null?NaN:e[a][o]}else if(!t||typeof t=="string"){var c=zDe(t||"float32");if(Array.isArray(e)||t==="array")for(t=new c(e.length+r),a=0,s=r,l=t.length;s<l;s++,a++)t[s]=e[a]===null?NaN:e[a];else r===0?t=new c(e):(t=new c(e.length+r),t.set(e,r))}else t.set(e,r);return t}});var ODe=ye((u0r,qDe)=>{"use strict";qDe.exports=function(e){var t=typeof e;return e!==null&&(t==="object"||t==="function")}});var NDe=ye((c0r,BDe)=>{"use strict";BDe.exports=Math.log2||function(e){return Math.log(e)*Math.LOG2E}});var ZDe=ye((f0r,WDe)=>{"use strict";var UDe=kDe(),VDe=VE(),pFt=Q5(),gFt=j2(),HDe=Zm(),qX=DDe(),mFt=W2(),yFt=ODe(),_Ft=HD(),GDe=NDe(),xFt=1073741824;WDe.exports=function(t,r){r||(r={}),t=mFt(t,"float64"),r=HDe(r,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let n=qX(r.maxDepth,255),i=qX(r.bounds,gFt(t,2));i[0]===i[2]&&i[2]++,i[1]===i[3]&&i[3]++;let a=jDe(t,i),o=t.length>>>1,s;r.dtype||(r.dtype="array"),typeof r.dtype=="string"?s=new(_Ft(r.dtype))(o):r.dtype&&(s=r.dtype,Array.isArray(s)&&(s.length=o));for(let p=0;p<o;++p)s[p]=p;let l=[],u=[],c=[],f=[];d(0,0,1,s,0,1);let h=0;for(let p=0;p<l.length;p++){let E=l[p];if(s.set)s.set(E,h);else for(let A=0,L=E.length;A<L;A++)s[A+h]=E[A];let k=h+l[p].length;f[p]=[h,k],h=k}return s.range=v,s;function d(p,E,k,A,L,_){if(!A.length)return null;let C=l[L]||(l[L]=[]),M=c[L]||(c[L]=[]),g=u[L]||(u[L]=[]),P=C.length;if(L++,L>n||_>xFt){for(let N=0;N<A.length;N++)C.push(A[N]),M.push(_),g.push(null,null,null,null);return P}if(C.push(A[0]),M.push(_),A.length<=1)return g.push(null,null,null,null),P;let T=k*.5,F=p+T,q=E+T,V=[],H=[],X=[],G=[];for(let N=1,W=A.length;N<W;N++){let re=A[N],ae=a[re*2],_e=a[re*2+1];ae<F?_e<q?V.push(re):H.push(re):_e<q?X.push(re):G.push(re)}return _<<=2,g.push(d(p,E,T,V,L,_),d(p,q,T,H,L,_+1),d(F,E,T,X,L,_+2),d(F,q,T,G,L,_+3)),P}function v(...p){let E;if(yFt(p[p.length-1])){let X=p.pop();!p.length&&(X.x!=null||X.l!=null||X.left!=null)&&(p=[X],E={}),E=HDe(X,{level:"level maxLevel",d:"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize",lod:"lod details ranges offsets"})}else E={};p.length||(p=i);let k=pFt(...p),[A,L,_,C]=[Math.min(k.x,k.x+k.width),Math.min(k.y,k.y+k.height),Math.max(k.x,k.x+k.width),Math.max(k.y,k.y+k.height)],[M,g,P,T]=jDe([A,L,_,C],i),F=qX(E.level,l.length);if(E.d!=null){let X;typeof E.d=="number"?X=[E.d,E.d]:E.d.length&&(X=E.d),F=Math.min(Math.max(Math.ceil(-GDe(Math.abs(X[0])/(i[2]-i[0]))),Math.ceil(-GDe(Math.abs(X[1])/(i[3]-i[1])))),F)}if(F=Math.min(F,l.length),E.lod)return x(M,g,P,T,F);let q=[];V(0,0,1,0,0,1);function V(X,G,N,W,re,ae){if(re===null||ae===null)return;let _e=X+N,Me=G+N;if(M>_e||g>Me||P<X||T<G||W>=F||re===ae)return;let ke=l[W];ae===void 0&&(ae=ke.length);for(let Re=re;Re<ae;Re++){let ce=ke[Re],Ge=t[ce*2],nt=t[ce*2+1];Ge>=A&&Ge<=_&&nt>=L&&nt<=C&&q.push(ce)}let ge=u[W],ie=ge[re*4+0],Te=ge[re*4+1],Ee=ge[re*4+2],Ae=ge[re*4+3],ze=H(ge,re+1),Ce=N*.5,me=W+1;V(X,G,Ce,me,ie,Te||Ee||Ae||ze),V(X,G+Ce,Ce,me,Te,Ee||Ae||ze),V(X+Ce,G,Ce,me,Ee,Ae||ze),V(X+Ce,G+Ce,Ce,me,Ae,ze)}function H(X,G){let N=null,W=0;for(;N===null;)if(N=X[G*4+W],W++,W>X.length)return null;return N}return q}function x(p,E,k,A,L){let _=[];for(let C=0;C<L;C++){let M=c[C],g=f[C][0],P=b(p,E,C),T=b(k,A,C),F=UDe.ge(M,P),q=UDe.gt(M,T,F,M.length-1);_[C]=[F+g,q+g]}return _}function b(p,E,k){let A=1,L=.5,_=.5,C=.5;for(let M=0;M<k;M++)A<<=2,A+=p<L?E<_?0:1:E<_?2:3,C*=.5,L+=p<L?-C:C,_+=E<_?-C:C;return A}};function jDe(e,t){let[r,n,i,a]=t,o=1/(i-r),s=1/(a-n),l=new Array(e.length);for(let u=0,c=e.length/2;u<c;u++)l[2*u]=VDe((e[2*u]-r)*o,0,1),l[2*u+1]=VDe((e[2*u+1]-n)*s,0,1);return l}});var Oz=ye((h0r,XDe)=>{"use strict";XDe.exports=ZDe()});var OX=ye((d0r,YDe)=>{YDe.exports=bFt;function bFt(e){var t=0,r=0,n=0,i=0;return e.map(function(a){a=a.slice();var o=a[0],s=o.toUpperCase();if(o!=s)switch(a[0]=s,o){case"a":a[6]+=n,a[7]+=i;break;case"v":a[1]+=i;break;case"h":a[1]+=n;break;default:for(var l=1;l<a.length;)a[l++]+=n,a[l++]+=i}switch(s){case"Z":n=t,i=r;break;case"H":n=a[1];break;case"V":i=a[1];break;case"M":n=t=a[1],i=r=a[2];break;default:n=a[a.length-2],i=a[a.length-1]}return a})}});var $De=ye((Bz,JDe)=>{"use strict";Object.defineProperty(Bz,"__esModule",{value:!0});var wFt=function(){function e(t,r){var n=[],i=!0,a=!1,o=void 0;try{for(var s=t[Symbol.iterator](),l;!(i=(l=s.next()).done)&&(n.push(l.value),!(r&&n.length===r));i=!0);}catch(u){a=!0,o=u}finally{try{!i&&s.return&&s.return()}finally{if(a)throw o}}return n}return function(t,r){if(Array.isArray(t))return t;if(Symbol.iterator in Object(t))return e(t,r);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),ik=Math.PI*2,BX=function(t,r,n,i,a,o,s){var l=t.x,u=t.y;l*=r,u*=n;var c=i*l-a*u,f=a*l+i*u;return{x:c+o,y:f+s}},TFt=function(t,r){var n=r===1.5707963267948966?.551915024494:r===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(r/4),i=Math.cos(t),a=Math.sin(t),o=Math.cos(t+r),s=Math.sin(t+r);return[{x:i-a*n,y:a+i*n},{x:o+s*n,y:s-o*n},{x:o,y:s}]},KDe=function(t,r,n,i){var a=t*i-r*n<0?-1:1,o=t*n+r*i;return o>1&&(o=1),o<-1&&(o=-1),a*Math.acos(o)},AFt=function(t,r,n,i,a,o,s,l,u,c,f,h){var d=Math.pow(a,2),v=Math.pow(o,2),x=Math.pow(f,2),b=Math.pow(h,2),p=d*v-d*b-v*x;p<0&&(p=0),p/=d*b+v*x,p=Math.sqrt(p)*(s===l?-1:1);var E=p*a/o*h,k=p*-o/a*f,A=c*E-u*k+(t+n)/2,L=u*E+c*k+(r+i)/2,_=(f-E)/a,C=(h-k)/o,M=(-f-E)/a,g=(-h-k)/o,P=KDe(1,0,_,C),T=KDe(_,C,M,g);return l===0&&T>0&&(T-=ik),l===1&&T<0&&(T+=ik),[A,L,P,T]},SFt=function(t){var r=t.px,n=t.py,i=t.cx,a=t.cy,o=t.rx,s=t.ry,l=t.xAxisRotation,u=l===void 0?0:l,c=t.largeArcFlag,f=c===void 0?0:c,h=t.sweepFlag,d=h===void 0?0:h,v=[];if(o===0||s===0)return[];var x=Math.sin(u*ik/360),b=Math.cos(u*ik/360),p=b*(r-i)/2+x*(n-a)/2,E=-x*(r-i)/2+b*(n-a)/2;if(p===0&&E===0)return[];o=Math.abs(o),s=Math.abs(s);var k=Math.pow(p,2)/Math.pow(o,2)+Math.pow(E,2)/Math.pow(s,2);k>1&&(o*=Math.sqrt(k),s*=Math.sqrt(k));var A=AFt(r,n,i,a,o,s,f,d,x,b,p,E),L=wFt(A,4),_=L[0],C=L[1],M=L[2],g=L[3],P=Math.abs(g)/(ik/4);Math.abs(1-P)<1e-7&&(P=1);var T=Math.max(Math.ceil(P),1);g/=T;for(var F=0;F<T;F++)v.push(TFt(M,g)),M+=g;return v.map(function(q){var V=BX(q[0],o,s,b,x,_,C),H=V.x,X=V.y,G=BX(q[1],o,s,b,x,_,C),N=G.x,W=G.y,re=BX(q[2],o,s,b,x,_,C),ae=re.x,_e=re.y;return{x1:H,y1:X,x2:N,y2:W,x:ae,y:_e}})};Bz.default=SFt;JDe.exports=Bz.default});var tze=ye((v0r,eze)=>{"use strict";eze.exports=EFt;var MFt=$De();function EFt(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f<h;f++){var d=e[f],v=d[0];switch(v){case"M":a=d[1],o=d[2];break;case"A":var x=MFt({px:u,py:c,cx:d[6],cy:d[7],rx:d[1],ry:d[2],xAxisRotation:d[3],largeArcFlag:d[4],sweepFlag:d[5]});if(!x.length)continue;for(var b=0,p;b<x.length;b++)p=x[b],d=["C",p.x1,p.y1,p.x2,p.y2,p.x,p.y],b<x.length-1&&r.push(d);break;case"S":var E=u,k=c;(t=="C"||t=="S")&&(E+=E-n,k+=k-i),d=["C",E,k,d[1],d[2],d[3],d[4]];break;case"T":t=="Q"||t=="T"?(s=u*2-s,l=c*2-l):(s=u,l=c),d=QDe(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=QDe(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=Nz(u,c,d[1],d[2]);break;case"H":d=Nz(u,c,d[1],c);break;case"V":d=Nz(u,c,u,d[1]);break;case"Z":d=Nz(u,c,a,o);break}t=v,u=d[d.length-2],c=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function Nz(e,t,r,n){return["C",e,t,r,n,r,n]}function QDe(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}});var NX=ye((p0r,rze)=>{"use strict";rze.exports=function(t){return typeof t!="string"?!1:(t=t.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(t)&&/[\dz]$/i.test(t)&&t.length>4))}});var aze=ye((g0r,nze)=>{"use strict";var kFt=XS(),CFt=OX(),LFt=tze(),PFt=NX(),ize=tE();nze.exports=IFt;function IFt(e){if(Array.isArray(e)&&e.length===1&&typeof e[0]=="string"&&(e=e[0]),typeof e=="string"&&(ize(PFt(e),"String is not an SVG path."),e=kFt(e)),ize(Array.isArray(e),"Argument should be a string or an array of path segments."),e=CFt(e),e=LFt(e),!e.length)return[0,0,0,0];for(var t=[1/0,1/0,-1/0,-1/0],r=0,n=e.length;r<n;r++)for(var i=e[r].slice(1),a=0;a<i.length;a+=2)i[a+0]<t[0]&&(t[0]=i[a+0]),i[a+1]<t[1]&&(t[1]=i[a+1]),i[a+0]>t[2]&&(t[2]=i[a+0]),i[a+1]>t[3]&&(t[3]=i[a+1]);return t}});var fze=ye((m0r,cze)=>{var Z2=Math.PI,oze=uze(120);cze.exports=RFt;function RFt(e){for(var t,r=[],n=0,i=0,a=0,o=0,s=null,l=null,u=0,c=0,f=0,h=e.length;f<h;f++){var d=e[f],v=d[0];switch(v){case"M":a=d[1],o=d[2];break;case"A":d=lze(u,c,d[1],d[2],uze(d[3]),d[4],d[5],d[6],d[7]),d.unshift("C"),d.length>7&&(r.push(d.splice(0,7)),d.unshift("C"));break;case"S":var x=u,b=c;(t=="C"||t=="S")&&(x+=x-n,b+=b-i),d=["C",x,b,d[1],d[2],d[3],d[4]];break;case"T":t=="Q"||t=="T"?(s=u*2-s,l=c*2-l):(s=u,l=c),d=sze(u,c,s,l,d[1],d[2]);break;case"Q":s=d[1],l=d[2],d=sze(u,c,d[1],d[2],d[3],d[4]);break;case"L":d=Uz(u,c,d[1],d[2]);break;case"H":d=Uz(u,c,d[1],c);break;case"V":d=Uz(u,c,u,d[1]);break;case"Z":d=Uz(u,c,a,o);break}t=v,u=d[d.length-2],c=d[d.length-1],d.length>4?(n=d[d.length-4],i=d[d.length-3]):(n=u,i=c),r.push(d)}return r}function Uz(e,t,r,n){return["C",e,t,r,n,r,n]}function sze(e,t,r,n,i,a){return["C",e/3+2/3*r,t/3+2/3*n,i/3+2/3*r,a/3+2/3*n,i,a]}function lze(e,t,r,n,i,a,o,s,l,u){if(u)k=u[0],A=u[1],p=u[2],E=u[3];else{var c=UX(e,t,-i);e=c.x,t=c.y,c=UX(s,l,-i),s=c.x,l=c.y;var f=(e-s)/2,h=(t-l)/2,d=f*f/(r*r)+h*h/(n*n);d>1&&(d=Math.sqrt(d),r=d*r,n=d*n);var v=r*r,x=n*n,b=(a==o?-1:1)*Math.sqrt(Math.abs((v*x-v*h*h-x*f*f)/(v*h*h+x*f*f)));b==1/0&&(b=1);var p=b*r*h/n+(e+s)/2,E=b*-n*f/r+(t+l)/2,k=Math.asin(((t-E)/n).toFixed(9)),A=Math.asin(((l-E)/n).toFixed(9));k=e<p?Z2-k:k,A=s<p?Z2-A:A,k<0&&(k=Z2*2+k),A<0&&(A=Z2*2+A),o&&k>A&&(k=k-Z2*2),!o&&A>k&&(A=A-Z2*2)}if(Math.abs(A-k)>oze){var L=A,_=s,C=l;A=k+oze*(o&&A>k?1:-1),s=p+r*Math.cos(A),l=E+n*Math.sin(A);var M=lze(s,l,r,n,i,0,o,_,C,[A,L,p,E])}var g=Math.tan((A-k)/4),P=4/3*r*g,T=4/3*n*g,F=[2*e-(e+P*Math.sin(k)),2*t-(t-T*Math.cos(k)),s+P*Math.sin(A),l-T*Math.cos(A),s,l];if(u)return F;M&&(F=F.concat(M));for(var q=0;q<F.length;){var V=UX(F[q],F[q+1],i);F[q++]=V.x,F[q++]=V.y}return F}function UX(e,t,r){return{x:e*Math.cos(r)-t*Math.sin(r),y:e*Math.sin(r)+t*Math.cos(r)}}function uze(e){return e*(Z2/180)}});var dze=ye((y0r,hze)=>{var DFt=OX(),zFt=fze(),FFt={M:"moveTo",C:"bezierCurveTo"};hze.exports=function(e,t){e.beginPath(),zFt(DFt(t)).forEach(function(r){var n=r[0],i=r.slice(1);e[FFt[n]].apply(e,i)}),e.closePath()}});var mze=ye((_0r,gze)=>{"use strict";var qFt=VE();gze.exports=OFt;var nk=1e20;function OFt(e,t){t||(t={});var r=t.cutoff==null?.25:t.cutoff,n=t.radius==null?8:t.radius,i=t.channel||0,a,o,s,l,u,c,f,h,d,v,x;if(ArrayBuffer.isView(e)||Array.isArray(e)){if(!t.width||!t.height)throw Error("For raw data width and height should be provided by options");a=t.width,o=t.height,l=e,t.stride?c=t.stride:c=Math.floor(e.length/a/o)}else window.HTMLCanvasElement&&e instanceof window.HTMLCanvasElement?(h=e,f=h.getContext("2d"),a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.CanvasRenderingContext2D&&e instanceof window.CanvasRenderingContext2D?(h=e.canvas,f=e,a=h.width,o=h.height,d=f.getImageData(0,0,a,o),l=d.data,c=4):window.ImageData&&e instanceof window.ImageData&&(d=e,a=e.width,o=e.height,l=d.data,c=4);if(s=Math.max(a,o),window.Uint8ClampedArray&&l instanceof window.Uint8ClampedArray||window.Uint8Array&&l instanceof window.Uint8Array)for(u=l,l=Array(a*o),v=0,x=u.length;v<x;v++)l[v]=u[v*c+i]/255;else if(c!==1)throw Error("Raw data can have only 1 value per pixel");var b=Array(a*o),p=Array(a*o),E=Array(s),k=Array(s),A=Array(s+1),L=Array(s);for(v=0,x=a*o;v<x;v++){var _=l[v];b[v]=_===1?0:_===0?nk:Math.pow(Math.max(0,.5-_),2),p[v]=_===1?nk:_===0?0:Math.pow(Math.max(0,_-.5),2)}vze(b,a,o,E,k,L,A),vze(p,a,o,E,k,L,A);var C=window.Float32Array?new Float32Array(a*o):new Array(a*o);for(v=0,x=a*o;v<x;v++)C[v]=qFt(1-((b[v]-p[v])/n+r),0,1);return C}function vze(e,t,r,n,i,a,o){for(var s=0;s<t;s++){for(var l=0;l<r;l++)n[l]=e[l*t+s];for(pze(n,i,a,o,r),l=0;l<r;l++)e[l*t+s]=i[l]}for(l=0;l<r;l++){for(s=0;s<t;s++)n[s]=e[l*t+s];for(pze(n,i,a,o,t),s=0;s<t;s++)e[l*t+s]=Math.sqrt(i[s])}}function pze(e,t,r,n,i){r[0]=0,n[0]=-nk,n[1]=+nk;for(var a=1,o=0;a<i;a++){for(var s=(e[a]+a*a-(e[r[o]]+r[o]*r[o]))/(2*a-2*r[o]);s<=n[o];)o--,s=(e[a]+a*a-(e[r[o]]+r[o]*r[o]))/(2*a-2*r[o]);o++,r[o]=a,n[o]=s,n[o+1]=+nk}for(a=0,o=0;a<i;a++){for(;n[o+1]<a;)o++;t[a]=(a-r[o])*(a-r[o])+e[r[o]]}}});var _ze=ye((x0r,yze)=>{"use strict";var BFt=aze(),NFt=XS(),UFt=dze(),VFt=NX(),HFt=mze(),VX=document.createElement("canvas"),hp=VX.getContext("2d");yze.exports=GFt;function GFt(e,t){if(!VFt(e))throw Error("Argument should be valid svg path string");t||(t={});var r,n;t.shape?(r=t.shape[0],n=t.shape[1]):(r=VX.width=t.w||t.width||200,n=VX.height=t.h||t.height||200);var i=Math.min(r,n),a=t.stroke||0,o=t.viewbox||t.viewBox||BFt(e),s=[r/(o[2]-o[0]),n/(o[3]-o[1])],l=Math.min(s[0]||0,s[1]||0)/2;if(hp.fillStyle="black",hp.fillRect(0,0,r,n),hp.fillStyle="white",a&&(typeof a!="number"&&(a=1),a>0?hp.strokeStyle="white":hp.strokeStyle="black",hp.lineWidth=Math.abs(a)),hp.translate(r*.5,n*.5),hp.scale(l,l),jFt()){var u=new Path2D(e);hp.fill(u),a&&hp.stroke(u)}else{var c=NFt(e);UFt(hp,c),hp.fill(),a&&hp.stroke()}hp.setTransform(1,0,0,1,0,0);var f=HFt(hp,{cutoff:t.cutoff!=null?t.cutoff:.5,radius:t.radius!=null?t.radius:i*.5});return f}var Vz;function jFt(){if(Vz!=null)return Vz;var e=document.createElement("canvas").getContext("2d");if(e.canvas.width=e.canvas.height=1,!window.Path2D)return Vz=!1;var t=new Path2D("M0,0h1v1h-1v-1Z");e.fillStyle="black",e.fill(t);var r=e.getImageData(0,0,1,1);return Vz=r&&r.data&&r.data[3]===255}});var Y2=ye((b0r,Lze)=>{"use strict";var Gz=uo(),WFt=_ze(),Hz=$_(),ZFt=ba(),rA=Mr(),Qf=rA.isArrayOrTypedArray,eA=ao(),xze=af(),bze=$y().formatColor,tA=lu(),XFt=S3(),GX=Fz(),ak=sx(),YFt=U1().DESELECTDIM,wze={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},KFt=rp().appendArrayPointValue;function JFt(e,t){var r,n={marker:void 0,markerSel:void 0,markerUnsel:void 0,line:void 0,fill:void 0,errorX:void 0,errorY:void 0,text:void 0,textSel:void 0,textUnsel:void 0},i=e._context.plotGlPixelRatio;if(t.visible!==!0)return n;if(tA.hasText(t)&&(n.text=Cze(e,t),n.textSel=Aze(e,t,t.selected),n.textUnsel=Aze(e,t,t.unselected)),tA.hasMarkers(t)&&(n.marker=WX(e,t),n.markerSel=jX(e,t,t.selected),n.markerUnsel=jX(e,t,t.unselected),!t.unselected&&Qf(t.marker.opacity))){var a=t.marker.opacity;for(n.markerUnsel.opacity=new Array(a.length),r=0;r<a.length;r++)n.markerUnsel.opacity[r]=YFt*a[r]}if(tA.hasLines(t)){n.line={overlay:!0,thickness:t.line.width*i,color:t.line.color,opacity:t.opacity};var o=(ak.DASHES[t.line.dash]||[1]).slice();for(r=0;r<o.length;++r)o[r]*=t.line.width*i;n.line.dashes=o}return t.error_x&&t.error_x.visible&&(n.errorX=Sze(t,t.error_x,i)),t.error_y&&t.error_y.visible&&(n.errorY=Sze(t,t.error_y,i)),t.fill&&t.fill!=="none"&&(n.fill={closed:!0,fill:t.fillcolor,thickness:0}),n}function Cze(e,t){var r=e._fullLayout,n=t._length,i=t.textfont,a=t.textposition,o=Qf(a)?a:[a],s=i.color,l=i.size,u=i.family,c=i.weight,f=i.style,h=i.variant,d={},v,x=e._context.plotGlPixelRatio,b=t.texttemplate;if(b){d.text=[];var p=r._d3locale,E=Array.isArray(b),k=E?Math.min(b.length,n):n,A=E?function(T){return b[T]}:function(){return b};for(v=0;v<k;v++){var L={i:v},_=t._module.formatLabels(L,t,r),C={};KFt(C,t,v);var M=t._meta||{};d.text.push(rA.texttemplateString(A(v),_,p,C,L,M))}}else Qf(t.text)&&t.text.length<n?d.text=t.text.slice():d.text=t.text;if(Qf(d.text))for(v=d.text.length;v<n;v++)d.text[v]="";for(d.opacity=t.opacity,d.font={},d.align=[],d.baseline=[],v=0;v<o.length;v++){var g=o[v].split(/\s+/);switch(g[1]){case"left":d.align.push("right");break;case"right":d.align.push("left");break;default:d.align.push(g[1])}switch(g[0]){case"top":d.baseline.push("bottom");break;case"bottom":d.baseline.push("top");break;default:d.baseline.push(g[0])}}if(Qf(s))for(d.color=new Array(n),v=0;v<n;v++)d.color[v]=s[v];else d.color=s;if(Qf(l)||Array.isArray(u)||Qf(c)||Array.isArray(f)||Array.isArray(h))for(d.font=new Array(n),v=0;v<n;v++){var P=d.font[v]={};P.size=(rA.isTypedArray(l)?l[v]:Qf(l)?Gz(l[v])?l[v]:0:l)*x,P.family=Array.isArray(u)?u[v]:u,P.weight=Tze(Qf(c)?c[v]:c),P.style=Array.isArray(f)?f[v]:f,P.variant=Array.isArray(h)?h[v]:h}else d.font={size:l*x,family:u,weight:Tze(c),style:f,variant:h};return d}function Tze(e){return e<=1e3?e>500?"bold":"normal":e}function WX(e,t){var r=t._length,n=t.marker,i={},a,o=Qf(n.symbol),s=Qf(n.angle),l=Qf(n.color),u=Qf(n.line.color),c=Qf(n.opacity),f=Qf(n.size),h=Qf(n.line.width),d;if(o||(d=GX.isOpenSymbol(n.symbol)),o||l||u||c||s){i.symbols=new Array(r),i.angles=new Array(r),i.colors=new Array(r),i.borderColors=new Array(r);var v=n.symbol,x=n.angle,b=bze(n,n.opacity,r),p=bze(n.line,n.opacity,r);if(!Qf(p[0])){var E=p;for(p=Array(r),a=0;a<r;a++)p[a]=E}if(!Qf(b[0])){var k=b;for(b=Array(r),a=0;a<r;a++)b[a]=k}if(!Qf(v)){var A=v;for(v=Array(r),a=0;a<r;a++)v[a]=A}if(!Qf(x)){var L=x;for(x=Array(r),a=0;a<r;a++)x[a]=L}for(i.symbols=v,i.angles=x,i.colors=b,i.borderColors=p,a=0;a<r;a++)o&&(d=GX.isOpenSymbol(n.symbol[a])),d&&(p[a]=b[a].slice(),b[a]=b[a].slice(),b[a][3]=0);for(i.opacity=t.opacity,i.markers=new Array(r),a=0;a<r;a++)i.markers[a]=kze({mx:i.symbols[a],ma:i.angles[a]},t)}else d?(i.color=Hz(n.color,"uint8"),i.color[3]=0,i.borderColor=Hz(n.color,"uint8")):(i.color=Hz(n.color,"uint8"),i.borderColor=Hz(n.line.color,"uint8")),i.opacity=t.opacity*n.opacity,i.marker=kze({mx:n.symbol,ma:n.angle},t);var _=1,C=XFt(t,_),M;if(f||h){var g=i.sizes=new Array(r),P=i.borderSizes=new Array(r),T=0,F;if(f){for(a=0;a<r;a++)g[a]=C(n.size[a]),T+=g[a];F=T/r}else for(M=C(n.size),a=0;a<r;a++)g[a]=M;if(h)for(a=0;a<r;a++)P[a]=n.line.width[a];else for(M=n.line.width,a=0;a<r;a++)P[a]=M;i.sizeAvg=F}else i.size=C(n&&n.size||10),i.borderSizes=C(n.line.width);return i}function jX(e,t,r){var n=t.marker,i={};return r&&(r.marker&&r.marker.symbol?i=WX(e,rA.extendFlat({},n,r.marker)):r.marker&&(r.marker.size&&(i.size=r.marker.size),r.marker.color&&(i.colors=r.marker.color),r.marker.opacity!==void 0&&(i.opacity=r.marker.opacity))),i}function Aze(e,t,r){var n={};if(!r)return n;if(r.textfont){var i={opacity:1,text:t.text,texttemplate:t.texttemplate,textposition:t.textposition,textfont:rA.extendFlat({},t.textfont)};r.textfont&&rA.extendFlat(i.textfont,r.textfont),n=Cze(e,i)}return n}function Sze(e,t,r){var n={capSize:t.width*2*r,lineWidth:t.thickness*r,color:t.color};return t.copy_ystyle&&(n=e.error_y),n}var Mze=ak.SYMBOL_SDF_SIZE,X2=ak.SYMBOL_SIZE,Eze=ak.SYMBOL_STROKE,HX={},$Ft=eA.symbolFuncs[0](X2*.05);function kze(e,t){var r=e.mx;if(r==="circle")return null;var n,i,a=eA.symbolNumber(r),o=eA.symbolFuncs[a%100],s=!!eA.symbolNoDot[a%100],l=!!eA.symbolNoFill[a%100],u=GX.isDotSymbol(r);if(e.ma&&(r+="_"+e.ma),HX[r])return HX[r];var c=eA.getMarkerAngle(e,t);return u&&!s?n=o(X2*1.1,c)+$Ft:n=o(X2,c),i=WFt(n,{w:Mze,h:Mze,viewBox:[-X2,-X2,X2,X2],stroke:l?Eze:-Eze}),HX[r]=i,i||null}function QFt(e,t,r){var n=r.length,i=n/2,a,o;if(tA.hasLines(t)&&i)if(t.line.shape==="hv"){for(a=[],o=0;o<i-1;o++)isNaN(r[o*2])||isNaN(r[o*2+1])?a.push(NaN,NaN,NaN,NaN):(a.push(r[o*2],r[o*2+1]),!isNaN(r[o*2+2])&&!isNaN(r[o*2+3])?a.push(r[o*2+2],r[o*2+1]):a.push(NaN,NaN));a.push(r[n-2],r[n-1])}else if(t.line.shape==="hvh"){for(a=[],o=0;o<i-1;o++)if(isNaN(r[o*2])||isNaN(r[o*2+1])||isNaN(r[o*2+2])||isNaN(r[o*2+3]))!isNaN(r[o*2])&&!isNaN(r[o*2+1])?a.push(r[o*2],r[o*2+1]):a.push(NaN,NaN),a.push(NaN,NaN);else{var s=(r[o*2]+r[o*2+2])/2;a.push(r[o*2],r[o*2+1],s,r[o*2+1],s,r[o*2+3])}a.push(r[n-2],r[n-1])}else if(t.line.shape==="vhv"){for(a=[],o=0;o<i-1;o++)if(isNaN(r[o*2])||isNaN(r[o*2+1])||isNaN(r[o*2+2])||isNaN(r[o*2+3]))!isNaN(r[o*2])&&!isNaN(r[o*2+1])?a.push(r[o*2],r[o*2+1]):a.push(NaN,NaN),a.push(NaN,NaN);else{var l=(r[o*2+1]+r[o*2+3])/2;a.push(r[o*2],r[o*2+1],r[o*2],l,r[o*2+2],l)}a.push(r[n-2],r[n-1])}else if(t.line.shape==="vh"){for(a=[],o=0;o<i-1;o++)isNaN(r[o*2])||isNaN(r[o*2+1])?a.push(NaN,NaN,NaN,NaN):(a.push(r[o*2],r[o*2+1]),!isNaN(r[o*2+2])&&!isNaN(r[o*2+3])?a.push(r[o*2],r[o*2+3]):a.push(NaN,NaN));a.push(r[n-2],r[n-1])}else a=r;var u=!1;for(o=0;o<a.length;o++)if(isNaN(a[o])){u=!0;break}var c=u||a.length>ak.TOO_MANY_POINTS||tA.hasMarkers(t)?"rect":"round";if(u&&t.connectgaps){var f=a[0],h=a[1];for(o=0;o<a.length;o+=2)isNaN(a[o])||isNaN(a[o+1])?(a[o]=f,a[o+1]=h):(f=a[o],h=a[o+1])}return{join:c,positions:a}}function e7t(e,t,r,n,i){var a=ZFt.getComponentMethod("errorbars","makeComputeError"),o=xze.getFromId(e,t.xaxis,"x"),s=xze.getFromId(e,t.yaxis,"y"),l=r.length/2,u={};function c(f,h){var d=h._id.charAt(0),v=t["error_"+d];if(v&&v.visible&&(h.type==="linear"||h.type==="log")){for(var x=a(v),b={x:0,y:1}[d],p={x:[0,1,2,3],y:[2,3,0,1]}[d],E=new Float64Array(4*l),k=1/0,A=-1/0,L=0,_=0;L<l;L++,_+=4){var C=f[L];if(Gz(C)){var M=r[L*2+b],g=x(C,L),P=g[0],T=g[1];if(Gz(P)&&Gz(T)){var F=C-P,q=C+T;E[_+p[0]]=M-h.c2l(F),E[_+p[1]]=h.c2l(q)-M,E[_+p[2]]=0,E[_+p[3]]=0,k=Math.min(k,C-P),A=Math.max(A,C+T)}}}u[d]={positions:r,errors:E,_bnds:[k,A]}}}return c(n,o),c(i,s),u}function t7t(e,t,r,n){var i=t._length,a={},o;if(tA.hasMarkers(t)){var s=r.font,l=r.align,u=r.baseline;for(a.offset=new Array(i),o=0;o<i;o++){var c=n.sizes?n.sizes[o]:n.size,f=Qf(s)?s[o].size:s.size,h=Qf(l)?l.length>1?l[o]:l[0]:l,d=Qf(u)?u.length>1?u[o]:u[0]:u,v=wze[h],x=wze[d],b=c?c/.8+1:0,p=-x*b-x*.5;a.offset[o]=[v*b/f,p/f]}}return a}Lze.exports={style:JFt,markerStyle:WX,markerSelection:jX,linePositions:QFt,errorBarPositions:e7t,textPosition:t7t}});var ZX=ye((w0r,Pze)=>{"use strict";var jz=Mr();Pze.exports=function(t,r){var n=r._scene,i={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},a={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return r._scene||(n=r._scene={},n.init=function(){jz.extendFlat(n,a,i)},n.init(),n.update=function(s){var l=jz.repeat(s,n.count);if(n.fill2d&&n.fill2d.update(l),n.scatter2d&&n.scatter2d.update(l),n.line2d&&n.line2d.update(l),n.error2d&&n.error2d.update(l.concat(l)),n.select2d&&n.select2d.update(l),n.glText)for(var u=0;u<n.count;u++)n.glText[u].update(s)},n.draw=function(){for(var s=n.count,l=n.fill2d,u=n.error2d,c=n.line2d,f=n.scatter2d,h=n.glText,d=n.select2d,v=n.selectBatch,x=n.unselectBatch,b=0;b<s;b++){if(l&&n.fillOrder[b]&&l.draw(n.fillOrder[b]),c&&n.lineOptions[b]&&c.draw(b),u&&(n.errorXOptions[b]&&u.draw(b),n.errorYOptions[b]&&u.draw(b+s)),f&&n.markerOptions[b])if(x[b].length){var p=jz.repeat([],n.count);p[b]=x[b],f.draw(p)}else v[b].length||f.draw(b);h[b]&&n.textOptions[b]&&h[b].render()}d&&d.draw(v),n.dirty=!1},n.destroy=function(){n.fill2d&&n.fill2d.destroy&&n.fill2d.destroy(),n.scatter2d&&n.scatter2d.destroy&&n.scatter2d.destroy(),n.error2d&&n.error2d.destroy&&n.error2d.destroy(),n.line2d&&n.line2d.destroy&&n.line2d.destroy(),n.select2d&&n.select2d.destroy&&n.select2d.destroy(),n.glText&&n.glText.forEach(function(s){s.destroy&&s.destroy()}),n.lineOptions=null,n.fillOptions=null,n.markerOptions=null,n.markerSelectedOptions=null,n.markerUnselectedOptions=null,n.errorXOptions=null,n.errorYOptions=null,n.textOptions=null,n.textSelectedOptions=null,n.textUnselectedOptions=null,n.selectBatch=null,n.unselectBatch=null,r._scene=null}),n.dirty||jz.extendFlat(n,i),n}});var qze=ye((T0r,Fze)=>{"use strict";var r7t=Oz(),iA=Mr(),Ize=af(),i7t=wg().findExtremes,Rze=Rg(),XX=q0(),n7t=XX.calcMarkerSize,a7t=XX.calcAxisExpansion,o7t=XX.setFirstScatter,s7t=z0(),nA=Y2(),l7t=ZX(),Dze=es().BADNUM,u7t=sx().TOO_MANY_POINTS;Fze.exports=function(t,r){var n=t._fullLayout,i=r._xA=Ize.getFromId(t,r.xaxis,"x"),a=r._yA=Ize.getFromId(t,r.yaxis,"y"),o=n._plots[r.xaxis+r.yaxis],s=r._length,l=s>=u7t,u=s*2,c={},f,h=i.makeCalcdata(r,"x"),d=a.makeCalcdata(r,"y"),v=Rze(r,i,"x",h),x=Rze(r,a,"y",d),b=v.vals,p=x.vals;r._x=b,r._y=p,r.xperiodalignment&&(r._origX=h,r._xStarts=v.starts,r._xEnds=v.ends),r.yperiodalignment&&(r._origY=d,r._yStarts=x.starts,r._yEnds=x.ends);var E=new Array(u),k=new Array(s);for(f=0;f<s;f++)E[f*2]=b[f]===Dze?NaN:b[f],E[f*2+1]=p[f]===Dze?NaN:p[f],k[f]=f;if(i.type==="log")for(f=0;f<u;f+=2)E[f]=i.c2l(E[f]);if(a.type==="log")for(f=1;f<u;f+=2)E[f]=a.c2l(E[f]);l&&i.type!=="log"&&a.type!=="log"?c.tree=r7t(E):c.ids=k,s7t(t,r);var A=c7t(t,o,r,E,b,p),L=l7t(t,o);o7t(n,r);var _;return l?A.marker&&(_=A.marker.sizeAvg||Math.max(A.marker.size,3)):_=n7t(r,s),a7t(t,r,i,a,b,p,_),A.errorX&&zze(r,i,A.errorX),A.errorY&&zze(r,a,A.errorY),A.fill&&!L.fill2d&&(L.fill2d=!0),A.marker&&!L.scatter2d&&(L.scatter2d=!0),A.line&&!L.line2d&&(L.line2d=!0),(A.errorX||A.errorY)&&!L.error2d&&(L.error2d=!0),A.text&&!L.glText&&(L.glText=!0),A.marker&&(A.marker.snap=s),L.lineOptions.push(A.line),L.errorXOptions.push(A.errorX),L.errorYOptions.push(A.errorY),L.fillOptions.push(A.fill),L.markerOptions.push(A.marker),L.markerSelectedOptions.push(A.markerSel),L.markerUnselectedOptions.push(A.markerUnsel),L.textOptions.push(A.text),L.textSelectedOptions.push(A.textSel),L.textUnselectedOptions.push(A.textUnsel),L.selectBatch.push([]),L.unselectBatch.push([]),c._scene=L,c.index=L.count,c.x=b,c.y=p,c.positions=E,L.count++,[{x:!1,y:!1,t:c,trace:r}]};function zze(e,t,r){var n=e._extremes[t._id],i=i7t(t,r._bnds,{padded:!0});n.min=n.min.concat(i.min),n.max=n.max.concat(i.max)}function c7t(e,t,r,n,i,a){var o=nA.style(e,r);if(o.marker&&(o.marker.positions=n),o.line&&n.length>1&&iA.extendFlat(o.line,nA.linePositions(e,r,n)),o.errorX||o.errorY){var s=nA.errorBarPositions(e,r,n,i,a);o.errorX&&iA.extendFlat(o.errorX,s.x),o.errorY&&iA.extendFlat(o.errorY,s.y)}return o.text&&(iA.extendFlat(o.text,{positions:n},nA.textPosition(e,r,o.text,o.marker)),iA.extendFlat(o.textSel,{positions:n},nA.textPosition(e,r,o.text,o.markerSel)),iA.extendFlat(o.textUnsel,{positions:n},nA.textPosition(e,r,o.text,o.markerUnsel))),o}});var YX=ye((A0r,Bze)=>{"use strict";var Oze=Mr(),f7t=va(),h7t=U1().DESELECTDIM;function d7t(e){var t=e[0],r=t.trace,n=t.t,i=n._scene,a=n.index,o=i.selectBatch[a],s=i.unselectBatch[a],l=i.textOptions[a],u=i.textSelectedOptions[a]||{},c=i.textUnselectedOptions[a]||{},f=Oze.extendFlat({},l),h,d;if(o.length||s.length){var v=u.color,x=c.color,b=l.color,p=Oze.isArrayOrTypedArray(b);for(f.color=new Array(r._length),h=0;h<o.length;h++)d=o[h],f.color[d]=v||(p?b[d]:b);for(h=0;h<s.length;h++){d=s[h];var E=p?b[d]:b;f.color[d]=x||(v?E:f7t.addOpacity(E,h7t))}}i.glText[a].update(f)}Bze.exports={styleTextSelection:d7t}});var KX=ye((S0r,Uze)=>{"use strict";var Nze=lu(),v7t=YX().styleTextSelection;Uze.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l=n[0].t,u=s._length,c=l.x,f=l.y,h=l._scene,d=l.index;if(!h)return o;var v=Nze.hasText(s),x=Nze.hasMarkers(s),b=!x&&!v;if(s.visible!==!0||b)return o;var p=[],E=[];if(r!==!1&&!r.degenerate)for(var k=0;k<u;k++)r.contains([l.xpx[k],l.ypx[k]],!1,k,t)?(p.push(k),o.push({pointNumber:k,x:i.c2d(c[k]),y:a.c2d(f[k])})):E.push(k);if(x){var A=h.scatter2d;if(!p.length&&!E.length){var L=new Array(h.count);L[d]=h.markerOptions[d],A.update.apply(A,L)}else if(!h.selectBatch[d].length&&!h.unselectBatch[d].length){var _=new Array(h.count);_[d]=h.markerUnselectedOptions[d],A.update.apply(A,_)}}return h.selectBatch[d]=p,h.unselectBatch[d]=E,v&&v7t(n),o}});var Hze=ye((M0r,Vze)=>{"use strict";var p7t=zz();Vze.exports={moduleType:"trace",name:"scattergl",basePlotModule:Jf(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:tk(),supplyDefaults:ADe(),crossTraceDefaults:$N(),colorbar:Kd(),formatLabels:MDe(),calc:qze(),hoverPoints:p7t.hoverPoints,selectPoints:KX(),meta:{}}});var jze=ye((E0r,Zz)=>{"use strict";var Wz=VE();Zz.exports=Gze;Zz.exports.to=Gze;Zz.exports.from=g7t;function Gze(e,t){t==null&&(t=!0);var r=e[0],n=e[1],i=e[2],a=e[3];a==null&&(a=t?1:255),t&&(r*=255,n*=255,i*=255,a*=255),r=Wz(r,0,255)&255,n=Wz(n,0,255)&255,i=Wz(i,0,255)&255,a=Wz(a,0,255)&255;var o=r*16777216+(n<<16)+(i<<8)+a;return o}function g7t(e,t){e=+e;var r=e>>>24,n=(e&16711680)>>>16,i=(e&65280)>>>8,a=e&255;return t===!1?[r,n,i,a]:[r/255,n/255,i/255,a/255]}});var bh=ye((k0r,Zze)=>{"use strict";var Wze=Object.getOwnPropertySymbols,m7t=Object.prototype.hasOwnProperty,y7t=Object.prototype.propertyIsEnumerable;function _7t(e){if(e==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function x7t(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de",Object.getOwnPropertyNames(e)[0]==="5")return!1;for(var t={},r=0;r<10;r++)t["_"+String.fromCharCode(r)]=r;var n=Object.getOwnPropertyNames(t).map(function(a){return t[a]});if(n.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(a){i[a]=a}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch(a){return!1}}Zze.exports=x7t()?Object.assign:function(e,t){for(var r,n=_7t(e),i,a=1;a<arguments.length;a++){r=Object(arguments[a]);for(var o in r)m7t.call(r,o)&&(n[o]=r[o]);if(Wze){i=Wze(r);for(var s=0;s<i.length;s++)y7t.call(r,i[s])&&(n[i[s]]=r[i[s]])}}return n}});var Yze=ye((C0r,Xze)=>{Xze.exports=function(e){typeof e=="string"&&(e=[e]);for(var t=[].slice.call(arguments,1),r=[],n=0;n<e.length-1;n++)r.push(e[n],t[n]||"");return r.push(e[n]),r.join("")}});var JX=ye((L0r,Kze)=>{"use strict";Kze.exports=function(t,r,n){Array.isArray(n)||(n=[].slice.call(arguments,2));for(var i=0,a=n.length;i<a;i++){var o=n[i];for(var s in o)if(!(r[s]!==void 0&&!Array.isArray(r[s])&&t[s]===r[s])&&s in r){var l;if(o[s]===!0)l=r[s];else{if(o[s]===!1)continue;if(typeof o[s]=="function"&&(l=o[s](r[s],t,r),l===void 0))continue}t[s]=l}}return t}});var $ze=ye((P0r,Jze)=>{"use strict";Jze.exports=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))});var Xz=ye((I0r,aA)=>{"use strict";aA.exports=ok;aA.exports.float32=aA.exports.float=ok;aA.exports.fract32=aA.exports.fract=b7t;var Qze=new Float32Array(1);function b7t(e,t){if(e.length){if(e instanceof Float32Array)return new Float32Array(e.length);t instanceof Float32Array||(t=ok(e));for(var r=0,n=t.length;r<n;r++)t[r]=e[r]-t[r];return t}return ok(e-ok(e))}function ok(e){return e.length?e instanceof Float32Array?e:new Float32Array(e):(Qze[0]=e,Qze[0])}});var QX=ye((R0r,rFe)=>{"use strict";function w7t(e,t){var r=e==null?null:typeof Symbol!="undefined"&&e[Symbol.iterator]||e["@@iterator"];if(r!=null){var n,i,a,o,s=[],l=!0,u=!1;try{if(a=(r=r.call(e)).next,t===0){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(s.push(n.value),s.length!==t);l=!0);}catch(c){u=!0,i=c}finally{try{if(!l&&r.return!=null&&(o=r.return(),Object(o)!==o))return}finally{if(u)throw i}}return s}}function T7t(e,t){return M7t(e)||w7t(e,t)||tFe(e,t)||C7t()}function A7t(e){return S7t(e)||E7t(e)||tFe(e)||k7t()}function S7t(e){if(Array.isArray(e))return $X(e)}function M7t(e){if(Array.isArray(e))return e}function E7t(e){if(typeof Symbol!="undefined"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function tFe(e,t){if(e){if(typeof e=="string")return $X(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if(r==="Object"&&e.constructor&&(r=e.constructor.name),r==="Map"||r==="Set")return Array.from(e);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return $X(e,t)}}function $X(e,t){(t==null||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function k7t(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function C7t(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var L7t=$_(),P7t=j2(),I7t=jze(),R7t=Oz(),K2=bh(),Yz=Yze(),D7t=Zm(),z7t=JX(),F7t=W2(),eFe=$ze(),Kz=Xz(),q7t=Q5(),O7t=rv;function rv(e,t){var r=this;if(!(this instanceof rv))return new rv(e,t);typeof e=="function"?(t||(t={}),t.regl=e):(t=e,e=null),t&&t.length&&(t.positions=t),e=t.regl;var n=e._gl,i,a=[],o={},s=[],l=[null],u=[null],c=255,f=100;this.tooManyColors=eFe,i=e.texture({data:new Uint8Array(c*4),width:c,height:1,type:"uint8",format:"rgba",wrapS:"clamp",wrapT:"clamp",mag:"nearest",min:"nearest"}),K2(this,{regl:e,gl:n,groups:s,markerCache:u,markerTextures:l,palette:a,paletteIds:o,paletteTexture:i,maxColors:c,maxSize:f,canvas:n.canvas}),this.update(t);var h={uniforms:{constPointSize:!!t.constPointSize,opacity:e.prop("opacity"),paletteSize:function(b,p){return[r.tooManyColors?0:c,i.height]},pixelRatio:e.context("pixelRatio"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translate:e.prop("translate"),translateFract:e.prop("translateFract"),markerTexture:e.prop("markerTexture"),paletteTexture:i},attributes:{x:function(b,p){return p.xAttr||{buffer:p.positionBuffer,stride:8,offset:0}},y:function(b,p){return p.yAttr||{buffer:p.positionBuffer,stride:8,offset:4}},xFract:function(b,p){return p.xAttr?{constant:[0,0]}:{buffer:p.positionFractBuffer,stride:8,offset:0}},yFract:function(b,p){return p.yAttr?{constant:[0,0]}:{buffer:p.positionFractBuffer,stride:8,offset:4}},size:function(b,p){return p.size.length?{buffer:p.sizeBuffer,stride:2,offset:0}:{constant:[Math.round(p.size*255/r.maxSize)]}},borderSize:function(b,p){return p.borderSize.length?{buffer:p.sizeBuffer,stride:2,offset:1}:{constant:[Math.round(p.borderSize*255/r.maxSize)]}},colorId:function(b,p){return p.color.length?{buffer:p.colorBuffer,stride:r.tooManyColors?8:4,offset:0}:{constant:r.tooManyColors?a.slice(p.color*4,p.color*4+4):[p.color]}},borderColorId:function(b,p){return p.borderColor.length?{buffer:p.colorBuffer,stride:r.tooManyColors?8:4,offset:r.tooManyColors?4:2}:{constant:r.tooManyColors?a.slice(p.borderColor*4,p.borderColor*4+4):[p.borderColor]}},isActive:function(b,p){return p.activation===!0?{constant:[1]}:p.activation?p.activation:{constant:[0]}}},blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:{enable:!1},depth:{enable:!1},elements:e.prop("elements"),count:e.prop("count"),offset:e.prop("offset"),primitive:"points"},d=K2({},h);d.frag=Yz([`precision highp float;
+#define GLSLIFY 1
+
+uniform float opacity;
+uniform sampler2D markerTexture;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragWidth, fragBorderColorLevel, fragColorLevel;
+
+float smoothStep(float x, float y) {
+ return 1.0 / (1.0 + exp(50.0*(x - y)));
+}
+
+void main() {
+ float dist = texture2D(markerTexture, gl_PointCoord).r, delta = fragWidth;
+
+ // max-distance alpha
+ if (dist < 0.003) discard;
+
+ // null-border case
+ if (fragBorderColorLevel == fragColorLevel || fragBorderColor.a == 0.) {
+ float colorAmt = smoothstep(.5 - delta, .5 + delta, dist);
+ gl_FragColor = vec4(fragColor.rgb, colorAmt * fragColor.a * opacity);
+ }
+ else {
+ float borderColorAmt = smoothstep(fragBorderColorLevel - delta, fragBorderColorLevel + delta, dist);
+ float colorAmt = smoothstep(fragColorLevel - delta, fragColorLevel + delta, dist);
+
+ vec4 color = fragBorderColor;
+ color.a *= borderColorAmt;
+ color = mix(color, fragColor, colorAmt);
+ color.a *= opacity;
+
+ gl_FragColor = color;
+ }
+
+}
+`]),d.vert=Yz([`precision highp float;
+#define GLSLIFY 1
+
+attribute float x, y, xFract, yFract;
+attribute float size, borderSize;
+attribute vec4 colorId, borderColorId;
+attribute float isActive;
+
+// \`invariant\` effectively turns off optimizations for the position.
+// We need this because -fast-math on M1 Macs is re-ordering
+// floating point operations in a way that causes floating point
+// precision limits to put points in the wrong locations.
+invariant gl_Position;
+
+uniform bool constPointSize;
+uniform float pixelRatio;
+uniform vec2 scale, scaleFract, translate, translateFract, paletteSize;
+uniform sampler2D paletteTexture;
+
+const float maxSize = 100.;
+const float borderLevel = .5;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragPointSize, fragBorderRadius, fragWidth, fragBorderColorLevel, fragColorLevel;
+
+float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
+
+bool isDirect = (paletteSize.x < 1.);
+
+vec4 getColor(vec4 id) {
+ return isDirect ? id / 255. : texture2D(paletteTexture,
+ vec2(
+ (id.x + .5) / paletteSize.x,
+ (id.y + .5) / paletteSize.y
+ )
+ );
+}
+
+void main() {
+ // ignore inactive points
+ if (isActive == 0.) return;
+
+ vec2 position = vec2(x, y);
+ vec2 positionFract = vec2(xFract, yFract);
+
+ vec4 color = getColor(colorId);
+ vec4 borderColor = getColor(borderColorId);
+
+ float size = size * maxSize / 255.;
+ float borderSize = borderSize * maxSize / 255.;
+
+ gl_PointSize = 2. * size * pointSizeScale;
+ fragPointSize = size * pixelRatio;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ gl_Position = vec4(pos * 2. - 1., 0., 1.);
+
+ fragColor = color;
+ fragBorderColor = borderColor;
+ fragWidth = 1. / gl_PointSize;
+
+ fragBorderColorLevel = clamp(borderLevel - borderLevel * borderSize / size, 0., 1.);
+ fragColorLevel = clamp(borderLevel + (1. - borderLevel) * borderSize / size, 0., 1.);
+}
+`]),this.drawMarker=e(d);var v=K2({},h);v.frag=Yz([`precision highp float;
+#define GLSLIFY 1
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragBorderRadius, fragWidth;
+
+uniform float opacity;
+
+float smoothStep(float edge0, float edge1, float x) {
+ float t;
+ t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
+ return t * t * (3.0 - 2.0 * t);
+}
+
+void main() {
+ float radius, alpha = 1.0, delta = fragWidth;
+
+ radius = length(2.0 * gl_PointCoord.xy - 1.0);
+
+ if (radius > 1.0 + delta) {
+ discard;
+ }
+
+ alpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);
+
+ float borderRadius = fragBorderRadius;
+ float ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);
+ vec4 color = mix(fragColor, fragBorderColor, ratio);
+ color.a *= alpha * opacity;
+ gl_FragColor = color;
+}
+`]),v.vert=Yz([`precision highp float;
+#define GLSLIFY 1
+
+attribute float x, y, xFract, yFract;
+attribute float size, borderSize;
+attribute vec4 colorId, borderColorId;
+attribute float isActive;
+
+// \`invariant\` effectively turns off optimizations for the position.
+// We need this because -fast-math on M1 Macs is re-ordering
+// floating point operations in a way that causes floating point
+// precision limits to put points in the wrong locations.
+invariant gl_Position;
+
+uniform bool constPointSize;
+uniform float pixelRatio;
+uniform vec2 paletteSize, scale, scaleFract, translate, translateFract;
+uniform sampler2D paletteTexture;
+
+const float maxSize = 100.;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragBorderRadius, fragWidth;
+
+float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
+
+bool isDirect = (paletteSize.x < 1.);
+
+vec4 getColor(vec4 id) {
+ return isDirect ? id / 255. : texture2D(paletteTexture,
+ vec2(
+ (id.x + .5) / paletteSize.x,
+ (id.y + .5) / paletteSize.y
+ )
+ );
+}
+
+void main() {
+ // ignore inactive points
+ if (isActive == 0.) return;
+
+ vec2 position = vec2(x, y);
+ vec2 positionFract = vec2(xFract, yFract);
+
+ vec4 color = getColor(colorId);
+ vec4 borderColor = getColor(borderColorId);
+
+ float size = size * maxSize / 255.;
+ float borderSize = borderSize * maxSize / 255.;
+
+ gl_PointSize = (size + borderSize) * pointSizeScale;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ gl_Position = vec4(pos * 2. - 1., 0., 1.);
+
+ fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);
+ fragColor = color;
+ fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;
+ fragWidth = 1. / gl_PointSize;
+}
+`]),eFe&&(v.frag=v.frag.replace("smoothstep","smoothStep"),d.frag=d.frag.replace("smoothstep","smoothStep")),this.drawCircle=e(v)}rv.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};rv.prototype.render=function(){return arguments.length&&this.update.apply(this,arguments),this.draw(),this};rv.prototype.draw=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];var i=this.groups;if(r.length===1&&Array.isArray(r[0])&&(r[0][0]===null||Array.isArray(r[0][0]))&&(r=r[0]),this.regl._refresh(),r.length)for(var a=0;a<r.length;a++)this.drawItem(a,r[a]);else i.forEach(function(o,s){e.drawItem(s)});return this};rv.prototype.drawItem=function(e,t){var r=this.groups,n=r[e];if(typeof t=="number"&&(e=t,n=r[t],t=null),!!(n&&n.count&&n.opacity)){n.activation[0]&&this.drawCircle(this.getMarkerDrawOptions(0,n,t));for(var i=[],a=1;a<n.activation.length;a++)!n.activation[a]||n.activation[a]!==!0&&!n.activation[a].data.length||i.push.apply(i,A7t(this.getMarkerDrawOptions(a,n,t)));i.length&&this.drawMarker(i)}};rv.prototype.getMarkerDrawOptions=function(e,t,r){var n=t.range,i=t.tree,a=t.viewport,o=t.activation,s=t.selectionBuffer,l=t.count,u=this.regl;if(!i)return r?[K2({},t,{markerTexture:this.markerTextures[e],activation:o[e],count:r.length,elements:r,offset:0})]:[K2({},t,{markerTexture:this.markerTextures[e],activation:o[e],offset:0})];var c=[],f=i.range(n,{lod:!0,px:[(n[2]-n[0])/a.width,(n[3]-n[1])/a.height]});if(r){for(var h=o[e],d=h.data,v=new Uint8Array(l),x=0;x<r.length;x++){var b=r[x];v[b]=d?d[b]:1}s.subdata(v)}for(var p=f.length;p--;){var E=T7t(f[p],2),k=E[0],A=E[1];c.push(K2({},t,{markerTexture:this.markerTextures[e],activation:r?s:o[e],offset:k,count:A-k}))}return c};rv.prototype.update=function(){for(var e=this,t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];if(r.length){r.length===1&&Array.isArray(r[0])&&(r=r[0]);var i=this.groups,a=this.gl,o=this.regl,s=this.maxSize,l=this.maxColors,u=this.palette;this.groups=i=r.map(function(c,f){var h=i[f];if(c===void 0)return h;c===null?c={positions:null}:typeof c=="function"?c={ondraw:c}:typeof c[0]=="number"&&(c={positions:c}),c=D7t(c,{positions:"positions data points",snap:"snap cluster lod tree",size:"sizes size radius",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",color:"colors color fill fill-color fillColor",borderColor:"borderColors borderColor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range dataBox databox",viewport:"viewport viewPort viewBox viewbox",opacity:"opacity alpha transparency",bounds:"bound bounds boundaries limits",tooManyColors:"tooManyColors palette paletteMode optimizePalette enablePalette"}),c.positions===null&&(c.positions=[]),c.tooManyColors!=null&&(e.tooManyColors=c.tooManyColors),h||(i[f]=h={id:f,scale:null,translate:null,scaleFract:null,translateFract:null,activation:[],selectionBuffer:o.buffer({data:new Uint8Array(0),usage:"stream",type:"uint8"}),sizeBuffer:o.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),colorBuffer:o.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),positionBuffer:o.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"}),positionFractBuffer:o.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"})},c=K2({},rv.defaults,c)),c.positions&&!("marker"in c)&&(c.marker=h.marker,delete h.marker),c.marker&&!("positions"in c)&&(c.positions=h.positions,delete h.positions);var d=0,v=0;if(z7t(h,c,[{snap:!0,size:function(G,N){return G==null&&(G=rv.defaults.size),d+=G&&G.length?1:0,G},borderSize:function(G,N){return G==null&&(G=rv.defaults.borderSize),d+=G&&G.length?1:0,G},opacity:parseFloat,color:function(G,N){return G==null&&(G=rv.defaults.color),G=e.updateColor(G),v++,G},borderColor:function(G,N){return G==null&&(G=rv.defaults.borderColor),G=e.updateColor(G),v++,G},bounds:function(G,N,W){return"range"in W||(W.range=null),G},positions:function(G,N,W){var re=N.snap,ae=N.positionBuffer,_e=N.positionFractBuffer,Me=N.selectionBuffer;if(G.x||G.y)return G.x.length?N.xAttr={buffer:o.buffer(G.x),offset:0,stride:4,count:G.x.length}:N.xAttr={buffer:G.x.buffer,offset:G.x.offset*4||0,stride:(G.x.stride||1)*4,count:G.x.count},G.y.length?N.yAttr={buffer:o.buffer(G.y),offset:0,stride:4,count:G.y.length}:N.yAttr={buffer:G.y.buffer,offset:G.y.offset*4||0,stride:(G.y.stride||1)*4,count:G.y.count},N.count=Math.max(N.xAttr.count,N.yAttr.count),G;G=F7t(G,"float64");var ke=N.count=Math.floor(G.length/2),ge=N.bounds=ke?P7t(G,2):null;if(!W.range&&!N.range&&(delete N.range,W.range=ge),!W.marker&&!N.marker&&(delete N.marker,W.marker=null),re&&(re===!0||ke>re)?N.tree=R7t(G,{bounds:ge}):re&&re.length&&(N.tree=re),N.tree){var ie={primitive:"points",usage:"static",data:N.tree,type:"uint32"};N.elements?N.elements(ie):N.elements=o.elements(ie)}var Te=Kz.float32(G);ae({data:Te,usage:"dynamic"});var Ee=Kz.fract32(G,Te);return _e({data:Ee,usage:"dynamic"}),Me({data:new Uint8Array(ke),type:"uint8",usage:"stream"}),G}},{marker:function(G,N,W){var re=N.activation;if(re.forEach(function(Ee){return Ee&&Ee.destroy&&Ee.destroy()}),re.length=0,!G||typeof G[0]=="number"){var ae=e.addMarker(G);re[ae]=!0}else{for(var _e=[],Me=0,ke=Math.min(G.length,N.count);Me<ke;Me++){var ge=e.addMarker(G[Me]);_e[ge]||(_e[ge]=new Uint8Array(N.count)),_e[ge][Me]=1}for(var ie=0;ie<_e.length;ie++)if(_e[ie]){var Te={data:_e[ie],type:"uint8",usage:"static"};re[ie]?re[ie](Te):re[ie]=o.buffer(Te),re[ie].data=_e[ie]}}return G},range:function(G,N,W){var re=N.bounds;if(re)return G||(G=re),N.scale=[1/(G[2]-G[0]),1/(G[3]-G[1])],N.translate=[-G[0],-G[1]],N.scaleFract=Kz.fract(N.scale),N.translateFract=Kz.fract(N.translate),G},viewport:function(G){var N=q7t(G||[a.drawingBufferWidth,a.drawingBufferHeight]);return N}}]),d){var x=h,b=x.count,p=x.size,E=x.borderSize,k=x.sizeBuffer,A=new Uint8Array(b*2);if(p.length||E.length)for(var L=0;L<b;L++)A[L*2]=Math.round((p[L]==null?p:p[L])*255/s),A[L*2+1]=Math.round((E[L]==null?E:E[L])*255/s);k({data:A,usage:"dynamic"})}if(v){var _=h,C=_.count,M=_.color,g=_.borderColor,P=_.colorBuffer,T;if(e.tooManyColors){if(M.length||g.length){T=new Uint8Array(C*8);for(var F=0;F<C;F++){var q=M[F];T[F*8]=u[q*4],T[F*8+1]=u[q*4+1],T[F*8+2]=u[q*4+2],T[F*8+3]=u[q*4+3];var V=g[F];T[F*8+4]=u[V*4],T[F*8+5]=u[V*4+1],T[F*8+6]=u[V*4+2],T[F*8+7]=u[V*4+3]}}}else if(M.length||g.length){T=new Uint8Array(C*4+2);for(var H=0;H<C;H++)M[H]!=null&&(T[H*4]=M[H]%l,T[H*4+1]=Math.floor(M[H]/l)),g[H]!=null&&(T[H*4+2]=g[H]%l,T[H*4+3]=Math.floor(g[H]/l))}P({data:T||new Uint8Array(0),type:"uint8",usage:"dynamic"})}return h})}};rv.prototype.addMarker=function(e){var t=this.markerTextures,r=this.regl,n=this.markerCache,i=e==null?0:n.indexOf(e);if(i>=0)return i;var a;if(e instanceof Uint8Array||e instanceof Uint8ClampedArray)a=e;else{a=new Uint8Array(e.length);for(var o=0,s=e.length;o<s;o++)a[o]=e[o]*255}var l=Math.floor(Math.sqrt(a.length));return i=t.length,n.push(e),t.push(r.texture({channels:1,data:a,radius:l,mag:"linear",min:"linear"})),i};rv.prototype.updateColor=function(e){var t=this.paletteIds,r=this.palette,n=this.maxColors;Array.isArray(e)||(e=[e]);var i=[];if(typeof e[0]=="number"){var a=[];if(Array.isArray(e))for(var o=0;o<e.length;o+=4)a.push(e.slice(o,o+4));else for(var s=0;s<e.length;s+=4)a.push(e.subarray(s,s+4));e=a}for(var l=0;l<e.length;l++){var u=e[l];u=L7t(u,"uint8");var c=I7t(u,!1);if(t[c]==null){var f=r.length;t[c]=Math.floor(f/4),r[f]=u[0],r[f+1]=u[1],r[f+2]=u[2],r[f+3]=u[3]}i[l]=t[c]}return!this.tooManyColors&&r.length>n*4&&(this.tooManyColors=!0),this.updatePalette(r),i.length===1?i[0]:i};rv.prototype.updatePalette=function(e){if(!this.tooManyColors){var t=this.maxColors,r=this.paletteTexture,n=Math.ceil(e.length*.25/t);if(n>1){e=e.slice();for(var i=e.length*.25%t;i<n*t;i++)e.push(0,0,0,0)}r.height<n&&r.resize(t,n),r.subimage({width:Math.min(e.length*.25,t),height:n,data:e},0,0)}};rv.prototype.destroy=function(){return this.groups.forEach(function(e){e.sizeBuffer.destroy(),e.positionBuffer.destroy(),e.positionFractBuffer.destroy(),e.colorBuffer.destroy(),e.activation.forEach(function(t){return t&&t.destroy&&t.destroy()}),e.selectionBuffer.destroy(),e.elements&&e.elements.destroy()}),this.groups.length=0,this.paletteTexture.destroy(),this.markerTextures.forEach(function(e){return e&&e.destroy&&e.destroy()}),this};var B7t=bh(),N7t=function(t,r){var n=new O7t(t,r),i=n.render.bind(n);return B7t(i,{render:i,update:n.update.bind(n),draw:n.draw.bind(n),destroy:n.destroy.bind(n),regl:n.regl,gl:n.gl,canvas:n.gl.canvas,groups:n.groups,markers:n.markerCache,palette:n.palette}),i};rFe.exports=N7t});var sFe=ye((D0r,iY)=>{"use strict";iY.exports=Qz;iY.exports.default=Qz;function Qz(e,t,r){r=r||2;var n=t&&t.length,i=n?t[0]*r:e.length,a=nFe(e,0,i,r,!0),o=[];if(!a||a.next===a.prev)return o;var s,l,u,c,f,h,d;if(n&&(a=j7t(e,t,a,r)),e.length>80*r){s=u=e[0],l=c=e[1];for(var v=r;v<i;v+=r)f=e[v],h=e[v+1],f<s&&(s=f),h<l&&(l=h),f>u&&(u=f),h>c&&(c=h);d=Math.max(u-s,c-l),d=d!==0?32767/d:0}return sk(a,o,r,s,l,d,0),o}function nFe(e,t,r,n,i){var a,o;if(i===rY(e,t,r,n)>0)for(a=t;a<r;a+=n)o=iFe(a,e[a],e[a+1],o);else for(a=r-n;a>=t;a-=n)o=iFe(a,e[a],e[a+1],o);return o&&eF(o,o.next)&&(uk(o),o=o.next),o}function J2(e,t){if(!e)return e;t||(t=e);var r=e,n;do if(n=!1,!r.steiner&&(eF(r,r.next)||eh(r.prev,r,r.next)===0)){if(uk(r),r=t=r.prev,r===r.next)break;n=!0}else r=r.next;while(n||r!==t);return t}function sk(e,t,r,n,i,a,o){if(e){!o&&a&&K7t(e,n,i,a);for(var s=e,l,u;e.prev!==e.next;){if(l=e.prev,u=e.next,a?V7t(e,n,i,a):U7t(e)){t.push(l.i/r|0),t.push(e.i/r|0),t.push(u.i/r|0),uk(e),e=u.next,s=u.next;continue}if(e=u,e===s){o?o===1?(e=H7t(J2(e),t,r),sk(e,t,r,n,i,a,2)):o===2&&G7t(e,t,r,n,i,a):sk(J2(e),t,r,n,i,a,1);break}}}}function U7t(e){var t=e.prev,r=e,n=e.next;if(eh(t,r,n)>=0)return!1;for(var i=t.x,a=r.x,o=n.x,s=t.y,l=r.y,u=n.y,c=i<a?i<o?i:o:a<o?a:o,f=s<l?s<u?s:u:l<u?l:u,h=i>a?i>o?i:o:a>o?a:o,d=s>l?s>u?s:u:l>u?l:u,v=n.next;v!==t;){if(v.x>=c&&v.x<=h&&v.y>=f&&v.y<=d&&oA(i,s,a,l,o,u,v.x,v.y)&&eh(v.prev,v,v.next)>=0)return!1;v=v.next}return!0}function V7t(e,t,r,n){var i=e.prev,a=e,o=e.next;if(eh(i,a,o)>=0)return!1;for(var s=i.x,l=a.x,u=o.x,c=i.y,f=a.y,h=o.y,d=s<l?s<u?s:u:l<u?l:u,v=c<f?c<h?c:h:f<h?f:h,x=s>l?s>u?s:u:l>u?l:u,b=c>f?c>h?c:h:f>h?f:h,p=eY(d,v,t,r,n),E=eY(x,b,t,r,n),k=e.prevZ,A=e.nextZ;k&&k.z>=p&&A&&A.z<=E;){if(k.x>=d&&k.x<=x&&k.y>=v&&k.y<=b&&k!==i&&k!==o&&oA(s,c,l,f,u,h,k.x,k.y)&&eh(k.prev,k,k.next)>=0||(k=k.prevZ,A.x>=d&&A.x<=x&&A.y>=v&&A.y<=b&&A!==i&&A!==o&&oA(s,c,l,f,u,h,A.x,A.y)&&eh(A.prev,A,A.next)>=0))return!1;A=A.nextZ}for(;k&&k.z>=p;){if(k.x>=d&&k.x<=x&&k.y>=v&&k.y<=b&&k!==i&&k!==o&&oA(s,c,l,f,u,h,k.x,k.y)&&eh(k.prev,k,k.next)>=0)return!1;k=k.prevZ}for(;A&&A.z<=E;){if(A.x>=d&&A.x<=x&&A.y>=v&&A.y<=b&&A!==i&&A!==o&&oA(s,c,l,f,u,h,A.x,A.y)&&eh(A.prev,A,A.next)>=0)return!1;A=A.nextZ}return!0}function H7t(e,t,r){var n=e;do{var i=n.prev,a=n.next.next;!eF(i,a)&&aFe(i,n,n.next,a)&&lk(i,a)&&lk(a,i)&&(t.push(i.i/r|0),t.push(n.i/r|0),t.push(a.i/r|0),uk(n),uk(n.next),n=e=a),n=n.next}while(n!==e);return J2(n)}function G7t(e,t,r,n,i,a){var o=e;do{for(var s=o.next.next;s!==o.prev;){if(o.i!==s.i&&Q7t(o,s)){var l=oFe(o,s);o=J2(o,o.next),l=J2(l,l.next),sk(o,t,r,n,i,a,0),sk(l,t,r,n,i,a,0);return}s=s.next}o=o.next}while(o!==e)}function j7t(e,t,r,n){var i=[],a,o,s,l,u;for(a=0,o=t.length;a<o;a++)s=t[a]*n,l=a<o-1?t[a+1]*n:e.length,u=nFe(e,s,l,n,!1),u===u.next&&(u.steiner=!0),i.push($7t(u));for(i.sort(W7t),a=0;a<i.length;a++)r=Z7t(i[a],r);return r}function W7t(e,t){return e.x-t.x}function Z7t(e,t){var r=X7t(e,t);if(!r)return t;var n=oFe(r,e);return J2(n,n.next),J2(r,r.next)}function X7t(e,t){var r=t,n=e.x,i=e.y,a=-1/0,o;do{if(i<=r.y&&i>=r.next.y&&r.next.y!==r.y){var s=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(s<=n&&s>a&&(a=s,o=r.x<r.next.x?r:r.next,s===n))return o}r=r.next}while(r!==t);if(!o)return null;var l=o,u=o.x,c=o.y,f=1/0,h;r=o;do n>=r.x&&r.x>=u&&n!==r.x&&oA(i<c?n:a,i,u,c,i<c?a:n,i,r.x,r.y)&&(h=Math.abs(i-r.y)/(n-r.x),lk(r,e)&&(h<f||h===f&&(r.x>o.x||r.x===o.x&&Y7t(o,r)))&&(o=r,f=h)),r=r.next;while(r!==l);return o}function Y7t(e,t){return eh(e.prev,e,t.prev)<0&&eh(t.next,e,e.next)<0}function K7t(e,t,r,n){var i=e;do i.z===0&&(i.z=eY(i.x,i.y,t,r,n)),i.prevZ=i.prev,i.nextZ=i.next,i=i.next;while(i!==e);i.prevZ.nextZ=null,i.prevZ=null,J7t(i)}function J7t(e){var t,r,n,i,a,o,s,l,u=1;do{for(r=e,e=null,a=null,o=0;r;){for(o++,n=r,s=0,t=0;t<u&&(s++,n=n.nextZ,!!n);t++);for(l=u;s>0||l>0&&n;)s!==0&&(l===0||!n||r.z<=n.z)?(i=r,r=r.nextZ,s--):(i=n,n=n.nextZ,l--),a?a.nextZ=i:e=i,i.prevZ=a,a=i;r=n}a.nextZ=null,u*=2}while(o>1);return e}function eY(e,t,r,n,i){return e=(e-r)*i|0,t=(t-n)*i|0,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1}function $7t(e){var t=e,r=e;do(t.x<r.x||t.x===r.x&&t.y<r.y)&&(r=t),t=t.next;while(t!==e);return r}function oA(e,t,r,n,i,a,o,s){return(i-o)*(t-s)>=(e-o)*(a-s)&&(e-o)*(n-s)>=(r-o)*(t-s)&&(r-o)*(a-s)>=(i-o)*(n-s)}function Q7t(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!e9t(e,t)&&(lk(e,t)&&lk(t,e)&&t9t(e,t)&&(eh(e.prev,e,t.prev)||eh(e,t.prev,t))||eF(e,t)&&eh(e.prev,e,e.next)>0&&eh(t.prev,t,t.next)>0)}function eh(e,t,r){return(t.y-e.y)*(r.x-t.x)-(t.x-e.x)*(r.y-t.y)}function eF(e,t){return e.x===t.x&&e.y===t.y}function aFe(e,t,r,n){var i=$z(eh(e,t,r)),a=$z(eh(e,t,n)),o=$z(eh(r,n,e)),s=$z(eh(r,n,t));return!!(i!==a&&o!==s||i===0&&Jz(e,r,t)||a===0&&Jz(e,n,t)||o===0&&Jz(r,e,n)||s===0&&Jz(r,t,n))}function Jz(e,t,r){return t.x<=Math.max(e.x,r.x)&&t.x>=Math.min(e.x,r.x)&&t.y<=Math.max(e.y,r.y)&&t.y>=Math.min(e.y,r.y)}function $z(e){return e>0?1:e<0?-1:0}function e9t(e,t){var r=e;do{if(r.i!==e.i&&r.next.i!==e.i&&r.i!==t.i&&r.next.i!==t.i&&aFe(r,r.next,e,t))return!0;r=r.next}while(r!==e);return!1}function lk(e,t){return eh(e.prev,e,e.next)<0?eh(e,t,e.next)>=0&&eh(e,e.prev,t)>=0:eh(e,t,e.prev)<0||eh(e,e.next,t)<0}function t9t(e,t){var r=e,n=!1,i=(e.x+t.x)/2,a=(e.y+t.y)/2;do r.y>a!=r.next.y>a&&r.next.y!==r.y&&i<(r.next.x-r.x)*(a-r.y)/(r.next.y-r.y)+r.x&&(n=!n),r=r.next;while(r!==e);return n}function oFe(e,t){var r=new tY(e.i,e.x,e.y),n=new tY(t.i,t.x,t.y),i=e.next,a=t.prev;return e.next=t,t.prev=e,r.next=i,i.prev=r,n.next=r,r.prev=n,a.next=n,n.prev=a,n}function iFe(e,t,r,n){var i=new tY(e,t,r);return n?(i.next=n.next,i.prev=n,n.next.prev=i,n.next=i):(i.prev=i,i.next=i),i}function uk(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function tY(e,t,r){this.i=e,this.x=t,this.y=r,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}Qz.deviation=function(e,t,r,n){var i=t&&t.length,a=i?t[0]*r:e.length,o=Math.abs(rY(e,0,a,r));if(i)for(var s=0,l=t.length;s<l;s++){var u=t[s]*r,c=s<l-1?t[s+1]*r:e.length;o-=Math.abs(rY(e,u,c,r))}var f=0;for(s=0;s<n.length;s+=3){var h=n[s]*r,d=n[s+1]*r,v=n[s+2]*r;f+=Math.abs((e[h]-e[v])*(e[d+1]-e[h+1])-(e[h]-e[d])*(e[v+1]-e[h+1]))}return o===0&&f===0?0:Math.abs((f-o)/o)};function rY(e,t,r,n){for(var i=0,a=t,o=r-n;a<r;a+=n)i+=(e[o]-e[a])*(e[a+1]+e[o+1]),o=a;return i}Qz.flatten=function(e){for(var t=e[0][0].length,r={vertices:[],holes:[],dimensions:t},n=0,i=0;i<e.length;i++){for(var a=0;a<e[i].length;a++)for(var o=0;o<t;o++)r.vertices.push(e[i][a][o]);i>0&&(n+=e[i-1].length,r.holes.push(n))}return r}});var uFe=ye((z0r,lFe)=>{"use strict";var r9t=j2();lFe.exports=i9t;function i9t(e,t,r){if(!e||e.length==null)throw Error("Argument should be an array");t==null&&(t=1),r==null&&(r=r9t(e,t));for(var n=0;n<t;n++){var i=r[t+n],a=r[n],o=n,s=e.length;if(i===1/0&&a===-1/0)for(o=n;o<s;o+=t)e[o]=e[o]===i?1:e[o]===a?0:.5;else if(i===1/0)for(o=n;o<s;o+=t)e[o]=e[o]===i?1:0;else if(a===-1/0)for(o=n;o<s;o+=t)e[o]=e[o]===a?0:1;else{var l=i-a;for(o=n;o<s;o+=t)isNaN(e[o])||(e[o]=l===0?.5:(e[o]-a)/l)}}return e}});var fFe=ye((F0r,cFe)=>{"use strict";cFe.exports=function(){var e,t;if(typeof WeakMap!="function")return!1;try{e=new WeakMap([[t={},"one"],[{},"two"],[{},"three"]])}catch(r){return!1}return!(String(e)!=="[object WeakMap]"||typeof e.set!="function"||e.set({},1)!==e||typeof e.delete!="function"||typeof e.has!="function"||e.get(t)!=="one")}});var dFe=ye((q0r,hFe)=>{"use strict";hFe.exports=function(){}});var lx=ye((O0r,vFe)=>{"use strict";var n9t=dFe()();vFe.exports=function(e){return e!==n9t&&e!==null}});var nY=ye((B0r,gFe)=>{"use strict";var a9t=Object.create,o9t=Object.getPrototypeOf,pFe={};gFe.exports=function(){var e=Object.setPrototypeOf,t=arguments[0]||a9t;return typeof e!="function"?!1:o9t(e(t(null),pFe))===pFe}});var aY=ye((N0r,mFe)=>{"use strict";var s9t=lx(),l9t={function:!0,object:!0};mFe.exports=function(e){return s9t(e)&&l9t[typeof e]||!1}});var i1=ye((U0r,yFe)=>{"use strict";var u9t=lx();yFe.exports=function(e){if(!u9t(e))throw new TypeError("Cannot use null or undefined");return e}});var xFe=ye((V0r,_Fe)=>{"use strict";var oY=Object.create,tF;nY()()||(tF=sY());_Fe.exports=function(){var e,t,r;return!tF||tF.level!==1?oY:(e={},t={},r={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(n){if(n==="__proto__"){t[n]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}t[n]=r}),Object.defineProperties(e,t),Object.defineProperty(tF,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:e}),function(n,i){return oY(n===null?e:n,i)})}()});var sY=ye((H0r,bFe)=>{"use strict";var c9t=aY(),f9t=i1(),h9t=Object.prototype.isPrototypeOf,d9t=Object.defineProperty,v9t={configurable:!0,enumerable:!1,writable:!0,value:void 0},rF;rF=function(e,t){if(f9t(e),t===null||c9t(t))return e;throw new TypeError("Prototype must be null or an object")};bFe.exports=function(e){var t,r;return e?(e.level===2?e.set?(r=e.set,t=function(n,i){return r.call(rF(n,i),i),n}):t=function(n,i){return rF(n,i).__proto__=i,n}:t=function n(i,a){var o;return rF(i,a),o=h9t.call(n.nullPolyfill,i),o&&delete n.nullPolyfill.__proto__,a===null&&(a=n.nullPolyfill),i.__proto__=a,o&&d9t(n.nullPolyfill,"__proto__",v9t),i},Object.defineProperty(t,"level",{configurable:!1,enumerable:!1,writable:!1,value:e.level})):null}(function(){var e=Object.create(null),t={},r,n=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(n){try{r=n.set,r.call(e,t)}catch(i){}if(Object.getPrototypeOf(e)===t)return{set:r,level:2}}return e.__proto__=t,Object.getPrototypeOf(e)===t?{level:2}:(e={},e.__proto__=t,Object.getPrototypeOf(e)===t?{level:1}:!1)}());xFe()});var iF=ye((G0r,wFe)=>{"use strict";wFe.exports=nY()()?Object.setPrototypeOf:sY()});var AFe=ye((j0r,TFe)=>{"use strict";var p9t=aY();TFe.exports=function(e){if(!p9t(e))throw new TypeError(e+" is not an Object");return e}});var MFe=ye((W0r,SFe)=>{"use strict";var g9t=Object.create(null),m9t=Math.random;SFe.exports=function(){var e;do e=m9t().toString(36).slice(2);while(g9t[e]);return e}});var $2=ye((Z0r,EFe)=>{"use strict";var y9t=void 0;EFe.exports=function(e){return e!==y9t&&e!==null}});var nF=ye((X0r,kFe)=>{"use strict";var _9t=$2(),x9t={object:!0,function:!0,undefined:!0};kFe.exports=function(e){return _9t(e)?hasOwnProperty.call(x9t,typeof e):!1}});var LFe=ye((Y0r,CFe)=>{"use strict";var b9t=nF();CFe.exports=function(e){if(!b9t(e))return!1;try{return e.constructor?e.constructor.prototype===e:!1}catch(t){return!1}}});var IFe=ye((K0r,PFe)=>{"use strict";var w9t=LFe();PFe.exports=function(e){if(typeof e!="function"||!hasOwnProperty.call(e,"length"))return!1;try{if(typeof e.length!="number"||typeof e.call!="function"||typeof e.apply!="function")return!1}catch(t){return!1}return!w9t(e)}});var lY=ye((J0r,RFe)=>{"use strict";var T9t=IFe(),A9t=/^\s*class[\s{/}]/,S9t=Function.prototype.toString;RFe.exports=function(e){return!(!T9t(e)||A9t.test(S9t.call(e)))}});var zFe=ye(($0r,DFe)=>{"use strict";DFe.exports=function(){var e=Object.assign,t;return typeof e!="function"?!1:(t={foo:"raz"},e(t,{bar:"dwa"},{trzy:"trzy"}),t.foo+t.bar+t.trzy==="razdwatrzy")}});var qFe=ye((Q0r,FFe)=>{"use strict";FFe.exports=function(){try{return Object.keys("primitive"),!0}catch(e){return!1}}});var BFe=ye((egr,OFe)=>{"use strict";var M9t=lx(),E9t=Object.keys;OFe.exports=function(e){return E9t(M9t(e)?Object(e):e)}});var UFe=ye((tgr,NFe)=>{"use strict";NFe.exports=qFe()()?Object.keys:BFe()});var HFe=ye((rgr,VFe)=>{"use strict";var k9t=UFe(),C9t=i1(),L9t=Math.max;VFe.exports=function(e,t){var r,n,i=L9t(arguments.length,2),a;for(e=Object(C9t(e)),a=function(o){try{e[o]=t[o]}catch(s){r||(r=s)}},n=1;n<i;++n)t=arguments[n],k9t(t).forEach(a);if(r!==void 0)throw r;return e}});var aF=ye((igr,GFe)=>{"use strict";GFe.exports=zFe()()?Object.assign:HFe()});var uY=ye((ngr,jFe)=>{"use strict";var P9t=lx(),I9t=Array.prototype.forEach,R9t=Object.create,D9t=function(e,t){var r;for(r in e)t[r]=e[r]};jFe.exports=function(e){var t=R9t(null);return I9t.call(arguments,function(r){P9t(r)&&D9t(Object(r),t)}),t}});var ZFe=ye((agr,WFe)=>{"use strict";var cY="razdwatrzy";WFe.exports=function(){return typeof cY.contains!="function"?!1:cY.contains("dwa")===!0&&cY.contains("foo")===!1}});var YFe=ye((ogr,XFe)=>{"use strict";var z9t=String.prototype.indexOf;XFe.exports=function(e){return z9t.call(this,e,arguments[1])>-1}});var fY=ye((sgr,KFe)=>{"use strict";KFe.exports=ZFe()()?String.prototype.contains:YFe()});var n1=ye((lgr,e7e)=>{"use strict";var oF=$2(),JFe=lY(),$Fe=aF(),QFe=uY(),ck=fY(),F9t=e7e.exports=function(e,t){var r,n,i,a,o;return arguments.length<2||typeof e!="string"?(a=t,t=e,e=null):a=arguments[2],oF(e)?(r=ck.call(e,"c"),n=ck.call(e,"e"),i=ck.call(e,"w")):(r=i=!0,n=!1),o={value:t,configurable:r,enumerable:n,writable:i},a?$Fe(QFe(a),o):o};F9t.gs=function(e,t,r){var n,i,a,o;return typeof e!="string"?(a=r,r=t,t=e,e=null):a=arguments[3],oF(t)?JFe(t)?oF(r)?JFe(r)||(a=r,r=void 0):r=void 0:(a=t,t=r=void 0):t=void 0,oF(e)?(n=ck.call(e,"c"),i=ck.call(e,"e")):(n=!0,i=!1),o={get:t,set:r,configurable:n,enumerable:i},a?$Fe(QFe(a),o):o}});var fk=ye((ugr,r7e)=>{"use strict";var t7e=Object.prototype.toString,q9t=t7e.call(function(){return arguments}());r7e.exports=function(e){return t7e.call(e)===q9t}});var hk=ye((cgr,n7e)=>{"use strict";var i7e=Object.prototype.toString,O9t=i7e.call("");n7e.exports=function(e){return typeof e=="string"||e&&typeof e=="object"&&(e instanceof String||i7e.call(e)===O9t)||!1}});var o7e=ye((fgr,a7e)=>{"use strict";a7e.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}});var u7e=ye((hgr,l7e)=>{var s7e=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};l7e.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch(e){return s7e()}try{return __global__||s7e()}finally{delete Object.prototype.__global__}}()});var dk=ye((dgr,c7e)=>{"use strict";c7e.exports=o7e()()?globalThis:u7e()});var h7e=ye((vgr,f7e)=>{"use strict";var B9t=dk(),hY={object:!0,symbol:!0};f7e.exports=function(){var e=B9t.Symbol,t;if(typeof e!="function")return!1;t=e("test symbol");try{String(t)}catch(r){return!1}return!(!hY[typeof e.iterator]||!hY[typeof e.toPrimitive]||!hY[typeof e.toStringTag])}});var v7e=ye((pgr,d7e)=>{"use strict";d7e.exports=function(e){return e?typeof e=="symbol"?!0:!e.constructor||e.constructor.name!=="Symbol"?!1:e[e.constructor.toStringTag]==="Symbol":!1}});var dY=ye((ggr,p7e)=>{"use strict";var N9t=v7e();p7e.exports=function(e){if(!N9t(e))throw new TypeError(e+" is not a symbol");return e}});var x7e=ye((mgr,_7e)=>{"use strict";var g7e=n1(),U9t=Object.create,m7e=Object.defineProperty,V9t=Object.prototype,y7e=U9t(null);_7e.exports=function(e){for(var t=0,r,n;y7e[e+(t||"")];)++t;return e+=t||"",y7e[e]=!0,r="@@"+e,m7e(V9t,r,g7e.gs(null,function(i){n||(n=!0,m7e(this,r,g7e(i)),n=!1)})),r}});var w7e=ye((ygr,b7e)=>{"use strict";var Qg=n1(),wh=dk().Symbol;b7e.exports=function(e){return Object.defineProperties(e,{hasInstance:Qg("",wh&&wh.hasInstance||e("hasInstance")),isConcatSpreadable:Qg("",wh&&wh.isConcatSpreadable||e("isConcatSpreadable")),iterator:Qg("",wh&&wh.iterator||e("iterator")),match:Qg("",wh&&wh.match||e("match")),replace:Qg("",wh&&wh.replace||e("replace")),search:Qg("",wh&&wh.search||e("search")),species:Qg("",wh&&wh.species||e("species")),split:Qg("",wh&&wh.split||e("split")),toPrimitive:Qg("",wh&&wh.toPrimitive||e("toPrimitive")),toStringTag:Qg("",wh&&wh.toStringTag||e("toStringTag")),unscopables:Qg("",wh&&wh.unscopables||e("unscopables"))})}});var S7e=ye((_gr,A7e)=>{"use strict";var T7e=n1(),H9t=dY(),vk=Object.create(null);A7e.exports=function(e){return Object.defineProperties(e,{for:T7e(function(t){return vk[t]?vk[t]:vk[t]=e(String(t))}),keyFor:T7e(function(t){var r;H9t(t);for(r in vk)if(vk[r]===t)return r})})}});var k7e=ye((xgr,E7e)=>{"use strict";var Xm=n1(),vY=dY(),sF=dk().Symbol,G9t=x7e(),j9t=w7e(),W9t=S7e(),Z9t=Object.create,pY=Object.defineProperties,lF=Object.defineProperty,Wv,sA,M7e;if(typeof sF=="function")try{String(sF()),M7e=!0}catch(e){}else sF=null;sA=function(t){if(this instanceof sA)throw new TypeError("Symbol is not a constructor");return Wv(t)};E7e.exports=Wv=function e(t){var r;if(this instanceof e)throw new TypeError("Symbol is not a constructor");return M7e?sF(t):(r=Z9t(sA.prototype),t=t===void 0?"":String(t),pY(r,{__description__:Xm("",t),__name__:Xm("",G9t(t))}))};j9t(Wv);W9t(Wv);pY(sA.prototype,{constructor:Xm(Wv),toString:Xm("",function(){return this.__name__})});pY(Wv.prototype,{toString:Xm(function(){return"Symbol ("+vY(this).__description__+")"}),valueOf:Xm(function(){return vY(this)})});lF(Wv.prototype,Wv.toPrimitive,Xm("",function(){var e=vY(this);return typeof e=="symbol"?e:e.toString()}));lF(Wv.prototype,Wv.toStringTag,Xm("c","Symbol"));lF(sA.prototype,Wv.toStringTag,Xm("c",Wv.prototype[Wv.toStringTag]));lF(sA.prototype,Wv.toPrimitive,Xm("c",Wv.prototype[Wv.toPrimitive]))});var ux=ye((bgr,C7e)=>{"use strict";C7e.exports=h7e()()?dk().Symbol:k7e()});var P7e=ye((wgr,L7e)=>{"use strict";var X9t=i1();L7e.exports=function(){return X9t(this).length=0,this}});var lA=ye((Tgr,I7e)=>{"use strict";I7e.exports=function(e){if(typeof e!="function")throw new TypeError(e+" is not a function");return e}});var D7e=ye((Agr,R7e)=>{"use strict";var Y9t=$2(),K9t=nF(),J9t=Object.prototype.toString;R7e.exports=function(e){if(!Y9t(e))return null;if(K9t(e)){var t=e.toString;if(typeof t!="function"||t===J9t)return null}try{return""+e}catch(r){return null}}});var F7e=ye((Sgr,z7e)=>{"use strict";z7e.exports=function(e){try{return e.toString()}catch(t){try{return String(e)}catch(r){return null}}}});var O7e=ye((Mgr,q7e)=>{"use strict";var $9t=F7e(),Q9t=/[\n\r\u2028\u2029]/g;q7e.exports=function(e){var t=$9t(e);return t===null?"<Non-coercible to string value>":(t.length>100&&(t=t.slice(0,99)+"\u2026"),t=t.replace(Q9t,function(r){switch(r){case`
+`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),t)}});var gY=ye((Egr,U7e)=>{"use strict";var B7e=$2(),eqt=nF(),tqt=D7e(),rqt=O7e(),N7e=function(e,t){return e.replace("%v",rqt(t))};U7e.exports=function(e,t,r){if(!eqt(r))throw new TypeError(N7e(t,e));if(!B7e(e)){if("default"in r)return r.default;if(r.isOptional)return null}var n=tqt(r.errorMessage);throw B7e(n)||(n=t),new TypeError(N7e(n,e))}});var H7e=ye((kgr,V7e)=>{"use strict";var iqt=gY(),nqt=$2();V7e.exports=function(e){return nqt(e)?e:iqt(e,"Cannot use %v",arguments[1])}});var j7e=ye((Cgr,G7e)=>{"use strict";var aqt=gY(),oqt=lY();G7e.exports=function(e){return oqt(e)?e:aqt(e,"%v is not a plain function",arguments[1])}});var Z7e=ye((Lgr,W7e)=>{"use strict";W7e.exports=function(){var e=Array.from,t,r;return typeof e!="function"?!1:(t=["raz","dwa"],r=e(t),!!(r&&r!==t&&r[1]==="dwa"))}});var Y7e=ye((Pgr,X7e)=>{"use strict";var sqt=Object.prototype.toString,lqt=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);X7e.exports=function(e){return typeof e=="function"&&lqt(sqt.call(e))}});var J7e=ye((Igr,K7e)=>{"use strict";K7e.exports=function(){var e=Math.sign;return typeof e!="function"?!1:e(10)===1&&e(-20)===-1}});var Q7e=ye((Rgr,$7e)=>{"use strict";$7e.exports=function(e){return e=Number(e),isNaN(e)||e===0?e:e>0?1:-1}});var t9e=ye((Dgr,e9e)=>{"use strict";e9e.exports=J7e()()?Math.sign:Q7e()});var i9e=ye((zgr,r9e)=>{"use strict";var uqt=t9e(),cqt=Math.abs,fqt=Math.floor;r9e.exports=function(e){return isNaN(e)?0:(e=Number(e),e===0||!isFinite(e)?e:uqt(e)*fqt(cqt(e)))}});var a9e=ye((Fgr,n9e)=>{"use strict";var hqt=i9e(),dqt=Math.max;n9e.exports=function(e){return dqt(0,hqt(e))}});var u9e=ye((qgr,l9e)=>{"use strict";var vqt=ux().iterator,pqt=fk(),gqt=Y7e(),mqt=a9e(),o9e=lA(),yqt=i1(),_qt=lx(),xqt=hk(),s9e=Array.isArray,mY=Function.prototype.call,Q2={configurable:!0,enumerable:!0,writable:!0,value:null},yY=Object.defineProperty;l9e.exports=function(e){var t=arguments[1],r=arguments[2],n,i,a,o,s,l,u,c,f,h;if(e=Object(yqt(e)),_qt(t)&&o9e(t),!this||this===Array||!gqt(this)){if(!t){if(pqt(e))return s=e.length,s!==1?Array.apply(null,e):(o=new Array(1),o[0]=e[0],o);if(s9e(e)){for(o=new Array(s=e.length),i=0;i<s;++i)o[i]=e[i];return o}}o=[]}else n=this;if(!s9e(e)){if((f=e[vqt])!==void 0){for(u=o9e(f).call(e),n&&(o=new n),c=u.next(),i=0;!c.done;)h=t?mY.call(t,r,c.value,i):c.value,n?(Q2.value=h,yY(o,i,Q2)):o[i]=h,c=u.next(),++i;s=i}else if(xqt(e)){for(s=e.length,n&&(o=new n),i=0,a=0;i<s;++i)h=e[i],i+1<s&&(l=h.charCodeAt(0),l>=55296&&l<=56319&&(h+=e[++i])),h=t?mY.call(t,r,h,a):h,n?(Q2.value=h,yY(o,a,Q2)):o[a]=h,++a;s=a}}if(s===void 0)for(s=mqt(e.length),n&&(o=new n(s)),i=0;i<s;++i)h=t?mY.call(t,r,e[i],i):e[i],n?(Q2.value=h,yY(o,i,Q2)):o[i]=h;return n&&(Q2.value=null,o.length=s),o}});var f9e=ye((Ogr,c9e)=>{"use strict";c9e.exports=Z7e()()?Array.from:u9e()});var d9e=ye((Bgr,h9e)=>{"use strict";var bqt=f9e(),wqt=aF(),Tqt=i1();h9e.exports=function(e){var t=Object(Tqt(e)),r=arguments[1],n=Object(arguments[2]);if(t!==e&&!r)return t;var i={};return r?bqt(r,function(a){(n.ensure||a in e)&&(i[a]=e[a])}):wqt(i,e),i}});var g9e=ye((Ngr,p9e)=>{"use strict";var Aqt=lA(),Sqt=i1(),Mqt=Function.prototype.bind,v9e=Function.prototype.call,Eqt=Object.keys,kqt=Object.prototype.propertyIsEnumerable;p9e.exports=function(e,t){return function(r,n){var i,a=arguments[2],o=arguments[3];return r=Object(Sqt(r)),Aqt(n),i=Eqt(r),o&&i.sort(typeof o=="function"?Mqt.call(o,r):void 0),typeof e!="function"&&(e=i[e]),v9e.call(e,i,function(s,l){return kqt.call(r,s)?v9e.call(n,a,r[s],s,r,l):t})}}});var y9e=ye((Ugr,m9e)=>{"use strict";m9e.exports=g9e()("forEach")});var x9e=ye((Vgr,_9e)=>{"use strict";var Cqt=lA(),Lqt=y9e(),Pqt=Function.prototype.call;_9e.exports=function(e,t){var r={},n=arguments[2];return Cqt(t),Lqt(e,function(i,a,o,s){r[a]=Pqt.call(t,n,i,a,o,s)}),r}});var A9e=ye((Hgr,T9e)=>{"use strict";var Iqt=$2(),Rqt=H7e(),b9e=j7e(),Dqt=d9e(),zqt=uY(),Fqt=x9e(),qqt=Function.prototype.bind,Oqt=Object.defineProperty,Bqt=Object.prototype.hasOwnProperty,w9e;w9e=function(e,t,r){var n=Rqt(t)&&b9e(t.value),i;return i=Dqt(t),delete i.writable,delete i.value,i.get=function(){return!r.overwriteDefinition&&Bqt.call(this,e)?n:(t.value=qqt.call(n,r.resolveContext?r.resolveContext(this):this),Oqt(this,e,t),this[e])},i};T9e.exports=function(e){var t=zqt(arguments[1]);return Iqt(t.resolveContext)&&b9e(t.resolveContext),Fqt(e,function(r,n){return w9e(n,r,t)})}});var _Y=ye((Ggr,k9e)=>{"use strict";var Nqt=P7e(),Uqt=aF(),Vqt=lA(),Hqt=i1(),Op=n1(),Gqt=A9e(),S9e=ux(),M9e=Object.defineProperty,E9e=Object.defineProperties,pk;k9e.exports=pk=function(e,t){if(!(this instanceof pk))throw new TypeError("Constructor requires 'new'");E9e(this,{__list__:Op("w",Hqt(e)),__context__:Op("w",t),__nextIndex__:Op("w",0)}),t&&(Vqt(t.on),t.on("_add",this._onAdd),t.on("_delete",this._onDelete),t.on("_clear",this._onClear))};delete pk.prototype.constructor;E9e(pk.prototype,Uqt({_next:Op(function(){var e;if(this.__list__){if(this.__redo__&&(e=this.__redo__.shift(),e!==void 0))return e;if(this.__nextIndex__<this.__list__.length)return this.__nextIndex__++;this._unBind()}}),next:Op(function(){return this._createResult(this._next())}),_createResult:Op(function(e){return e===void 0?{done:!0,value:void 0}:{done:!1,value:this._resolve(e)}}),_resolve:Op(function(e){return this.__list__[e]}),_unBind:Op(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off("_add",this._onAdd),this.__context__.off("_delete",this._onDelete),this.__context__.off("_clear",this._onClear),this.__context__=null)}),toString:Op(function(){return"[object "+(this[S9e.toStringTag]||"Object")+"]"})},Gqt({_onAdd:Op(function(e){if(!(e>=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){M9e(this,"__redo__",Op("c",[e]));return}this.__redo__.forEach(function(t,r){t>=e&&(this.__redo__[r]=++t)},this),this.__redo__.push(e)}}),_onDelete:Op(function(e){var t;e>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(t=this.__redo__.indexOf(e),t!==-1&&this.__redo__.splice(t,1),this.__redo__.forEach(function(r,n){r>e&&(this.__redo__[n]=--r)},this)))}),_onClear:Op(function(){this.__redo__&&Nqt.call(this.__redo__),this.__nextIndex__=0})})));M9e(pk.prototype,S9e.iterator,Op(function(){return this}))});var R9e=ye((jgr,I9e)=>{"use strict";var C9e=iF(),L9e=fY(),xY=n1(),jqt=ux(),bY=_Y(),P9e=Object.defineProperty,uA;uA=I9e.exports=function(e,t){if(!(this instanceof uA))throw new TypeError("Constructor requires 'new'");bY.call(this,e),t?L9e.call(t,"key+value")?t="key+value":L9e.call(t,"key")?t="key":t="value":t="value",P9e(this,"__kind__",xY("",t))};C9e&&C9e(uA,bY);delete uA.prototype.constructor;uA.prototype=Object.create(bY.prototype,{_resolve:xY(function(e){return this.__kind__==="value"?this.__list__[e]:this.__kind__==="key+value"?[e,this.__list__[e]]:e})});P9e(uA.prototype,jqt.toStringTag,xY("c","Array Iterator"))});var q9e=ye((Wgr,F9e)=>{"use strict";var D9e=iF(),uF=n1(),Wqt=ux(),wY=_Y(),z9e=Object.defineProperty,cA;cA=F9e.exports=function(e){if(!(this instanceof cA))throw new TypeError("Constructor requires 'new'");e=String(e),wY.call(this,e),z9e(this,"__length__",uF("",e.length))};D9e&&D9e(cA,wY);delete cA.prototype.constructor;cA.prototype=Object.create(wY.prototype,{_next:uF(function(){if(this.__list__){if(this.__nextIndex__<this.__length__)return this.__nextIndex__++;this._unBind()}}),_resolve:uF(function(e){var t=this.__list__[e],r;return this.__nextIndex__===this.__length__?t:(r=t.charCodeAt(0),r>=55296&&r<=56319?t+this.__list__[this.__nextIndex__++]:t)})});z9e(cA.prototype,Wqt.toStringTag,uF("c","String Iterator"))});var B9e=ye((Zgr,O9e)=>{"use strict";var Zqt=fk(),Xqt=lx(),Yqt=hk(),Kqt=ux().iterator,Jqt=Array.isArray;O9e.exports=function(e){return Xqt(e)?Jqt(e)||Yqt(e)||Zqt(e)?!0:typeof e[Kqt]=="function":!1}});var U9e=ye((Xgr,N9e)=>{"use strict";var $qt=B9e();N9e.exports=function(e){if(!$qt(e))throw new TypeError(e+" is not iterable");return e}});var TY=ye((Ygr,G9e)=>{"use strict";var Qqt=fk(),eOt=hk(),V9e=R9e(),tOt=q9e(),rOt=U9e(),H9e=ux().iterator;G9e.exports=function(e){return typeof rOt(e)[H9e]=="function"?e[H9e]():Qqt(e)?new V9e(e):eOt(e)?new tOt(e):new V9e(e)}});var W9e=ye((Kgr,j9e)=>{"use strict";var iOt=fk(),nOt=lA(),aOt=hk(),oOt=TY(),sOt=Array.isArray,AY=Function.prototype.call,lOt=Array.prototype.some;j9e.exports=function(e,t){var r,n=arguments[2],i,a,o,s,l,u,c;if(sOt(e)||iOt(e)?r="array":aOt(e)?r="string":e=oOt(e),nOt(t),a=function(){o=!0},r==="array"){lOt.call(e,function(f){return AY.call(t,n,f,a),o});return}if(r==="string"){for(l=e.length,s=0;s<l&&(u=e[s],s+1<l&&(c=u.charCodeAt(0),c>=55296&&c<=56319&&(u+=e[++s])),AY.call(t,n,u,a),!o);++s);return}for(i=e.next();!i.done;){if(AY.call(t,n,i.value,a),o)return;i=e.next()}}});var X9e=ye((Jgr,Z9e)=>{"use strict";Z9e.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()});var J9e=ye(($gr,K9e)=>{"use strict";var uOt=lx(),fF=iF(),cF=AFe(),cOt=i1(),fOt=MFe(),a1=n1(),hOt=TY(),dOt=W9e(),vOt=ux().toStringTag,Y9e=X9e(),pOt=Array.isArray,MY=Object.defineProperty,SY=Object.prototype.hasOwnProperty,gOt=Object.getPrototypeOf,cx;K9e.exports=cx=function(){var e=arguments[0],t;if(!(this instanceof cx))throw new TypeError("Constructor requires 'new'");return t=Y9e&&fF&&WeakMap!==cx?fF(new WeakMap,gOt(this)):this,uOt(e)&&(pOt(e)||(e=hOt(e))),MY(t,"__weakMapData__",a1("c","$weakMap$"+fOt())),e&&dOt(e,function(r){cOt(r),t.set(r[0],r[1])}),t};Y9e&&(fF&&fF(cx,WeakMap),cx.prototype=Object.create(WeakMap.prototype,{constructor:a1(cx)}));Object.defineProperties(cx.prototype,{delete:a1(function(e){return SY.call(cF(e),this.__weakMapData__)?(delete e[this.__weakMapData__],!0):!1}),get:a1(function(e){if(SY.call(cF(e),this.__weakMapData__))return e[this.__weakMapData__]}),has:a1(function(e){return SY.call(cF(e),this.__weakMapData__)}),set:a1(function(e,t){return MY(cF(e),this.__weakMapData__,a1("c",t)),this}),toString:a1(function(){return"[object WeakMap]"})});MY(cx.prototype,vOt,a1("c","WeakMap"))});var EY=ye((Qgr,$9e)=>{"use strict";$9e.exports=fFe()()?WeakMap:J9e()});var eqe=ye((emr,Q9e)=>{"use strict";Q9e.exports=function(e,t,r){if(typeof Array.prototype.findIndex=="function")return e.findIndex(t,r);if(typeof t!="function")throw new TypeError("predicate must be a function");var n=Object(e),i=n.length;if(i===0)return-1;for(var a=0;a<i;a++)if(t.call(r,n[a],a,n))return a;return-1}});var LY=ye((tmr,iqe)=>{"use strict";var hF=$_(),mOt=j2(),CY=bh(),yOt=Zm(),_Ot=W2(),tqe=sFe(),xOt=uFe(),{float32:bOt,fract32:kY}=Xz(),wOt=EY(),rqe=Q5(),TOt=eqe(),AOt=`
+precision highp float;
+
+attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;
+attribute vec4 color;
+attribute float lineEnd, lineTop;
+
+uniform vec2 scale, scaleFract, translate, translateFract;
+uniform float thickness, pixelRatio, id, depth;
+uniform vec4 viewport;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+
+vec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {
+ // the order is important
+ return position * scale + translate
+ + positionFract * scale + translateFract
+ + position * scaleFract
+ + positionFract * scaleFract;
+}
+
+void main() {
+ float lineStart = 1. - lineEnd;
+ float lineOffset = lineTop * 2. - 1.;
+
+ vec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);
+ tangent = normalize(diff * scale * viewport.zw);
+ vec2 normal = vec2(-tangent.y, tangent.x);
+
+ vec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart
+ + project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd
+
+ + thickness * normal * .5 * lineOffset / viewport.zw;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ fragColor = color / 255.;
+}
+`,SOt=`
+precision highp float;
+
+uniform float dashLength, pixelRatio, thickness, opacity, id;
+uniform sampler2D dashTexture;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+
+void main() {
+ float alpha = 1.;
+
+ float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
+ float dash = texture2D(dashTexture, vec2(t, .5)).r;
+
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= alpha * opacity * dash;
+}
+`,MOt=`
+precision highp float;
+
+attribute vec2 position, positionFract;
+
+uniform vec4 color;
+uniform vec2 scale, scaleFract, translate, translateFract;
+uniform float pixelRatio, id;
+uniform vec4 viewport;
+uniform float opacity;
+
+varying vec4 fragColor;
+
+const float MAX_LINES = 256.;
+
+void main() {
+ float depth = (MAX_LINES - 4. - id) / (MAX_LINES);
+
+ vec2 position = position * scale + translate
+ + positionFract * scale + translateFract
+ + position * scaleFract
+ + positionFract * scaleFract;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ fragColor = color / 255.;
+ fragColor.a *= opacity;
+}
+`,EOt=`
+precision highp float;
+varying vec4 fragColor;
+
+void main() {
+ gl_FragColor = fragColor;
+}
+`,kOt=`
+precision highp float;
+
+attribute vec2 aCoord, bCoord, nextCoord, prevCoord;
+attribute vec4 aColor, bColor;
+attribute float lineEnd, lineTop;
+
+uniform vec2 scale, translate;
+uniform float thickness, pixelRatio, id, depth;
+uniform vec4 viewport;
+uniform float miterLimit, miterMode;
+
+varying vec4 fragColor;
+varying vec4 startCutoff, endCutoff;
+varying vec2 tangent;
+varying vec2 startCoord, endCoord;
+varying float enableStartMiter, enableEndMiter;
+
+const float REVERSE_THRESHOLD = -.875;
+const float MIN_DIFF = 1e-6;
+
+// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead
+// TODO: precalculate dot products, normalize things beforehead etc.
+// TODO: refactor to rectangular algorithm
+
+float distToLine(vec2 p, vec2 a, vec2 b) {
+ vec2 diff = b - a;
+ vec2 perp = normalize(vec2(-diff.y, diff.x));
+ return dot(p - a, perp);
+}
+
+bool isNaN( float val ){
+ return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;
+}
+
+void main() {
+ vec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;
+
+ vec2 adjustedScale;
+ adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;
+ adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;
+
+ vec2 scaleRatio = adjustedScale * viewport.zw;
+ vec2 normalWidth = thickness / scaleRatio;
+
+ float lineStart = 1. - lineEnd;
+ float lineBot = 1. - lineTop;
+
+ fragColor = (lineStart * aColor + lineEnd * bColor) / 255.;
+
+ if (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;
+
+ if (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);
+ if (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);
+
+
+ vec2 prevDiff = aCoord - prevCoord;
+ vec2 currDiff = bCoord - aCoord;
+ vec2 nextDiff = nextCoord - bCoord;
+
+ vec2 prevTangent = normalize(prevDiff * scaleRatio);
+ vec2 currTangent = normalize(currDiff * scaleRatio);
+ vec2 nextTangent = normalize(nextDiff * scaleRatio);
+
+ vec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);
+ vec2 currNormal = vec2(-currTangent.y, currTangent.x);
+ vec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);
+
+ vec2 startJoinDirection = normalize(prevTangent - currTangent);
+ vec2 endJoinDirection = normalize(currTangent - nextTangent);
+
+ // collapsed/unidirectional segment cases
+ // FIXME: there should be more elegant solution
+ vec2 prevTanDiff = abs(prevTangent - currTangent);
+ vec2 nextTanDiff = abs(nextTangent - currTangent);
+ if (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {
+ startJoinDirection = currNormal;
+ }
+ if (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {
+ endJoinDirection = currNormal;
+ }
+ if (aCoord == bCoord) {
+ endJoinDirection = startJoinDirection;
+ currNormal = prevNormal;
+ currTangent = prevTangent;
+ }
+
+ tangent = currTangent;
+
+ //calculate join shifts relative to normals
+ float startJoinShift = dot(currNormal, startJoinDirection);
+ float endJoinShift = dot(currNormal, endJoinDirection);
+
+ float startMiterRatio = abs(1. / startJoinShift);
+ float endMiterRatio = abs(1. / endJoinShift);
+
+ vec2 startJoin = startJoinDirection * startMiterRatio;
+ vec2 endJoin = endJoinDirection * endMiterRatio;
+
+ vec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;
+ startTopJoin = sign(startJoinShift) * startJoin * .5;
+ startBotJoin = -startTopJoin;
+
+ endTopJoin = sign(endJoinShift) * endJoin * .5;
+ endBotJoin = -endTopJoin;
+
+ vec2 aTopCoord = aCoord + normalWidth * startTopJoin;
+ vec2 bTopCoord = bCoord + normalWidth * endTopJoin;
+ vec2 aBotCoord = aCoord + normalWidth * startBotJoin;
+ vec2 bBotCoord = bCoord + normalWidth * endBotJoin;
+
+ //miter anti-clipping
+ float baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));
+ float abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));
+
+ //prevent close to reverse direction switch
+ bool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) < length(normalWidth * currNormal);
+ bool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) < length(normalWidth * currNormal);
+
+ if (prevReverse) {
+ //make join rectangular
+ vec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;
+ float normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);
+ aBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
+ aTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
+ }
+ else if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {
+ //handle miter clipping
+ bTopCoord -= normalWidth * endTopJoin;
+ bTopCoord += normalize(endTopJoin * normalWidth) * baClipping;
+ }
+
+ if (nextReverse) {
+ //make join rectangular
+ vec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;
+ float normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);
+ bBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
+ bTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
+ }
+ else if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {
+ //handle miter clipping
+ aBotCoord -= normalWidth * startBotJoin;
+ aBotCoord += normalize(startBotJoin * normalWidth) * abClipping;
+ }
+
+ vec2 aTopPosition = (aTopCoord) * adjustedScale + translate;
+ vec2 aBotPosition = (aBotCoord) * adjustedScale + translate;
+
+ vec2 bTopPosition = (bTopCoord) * adjustedScale + translate;
+ vec2 bBotPosition = (bBotCoord) * adjustedScale + translate;
+
+ //position is normalized 0..1 coord on the screen
+ vec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;
+
+ startCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;
+ endCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ enableStartMiter = step(dot(currTangent, prevTangent), .5);
+ enableEndMiter = step(dot(currTangent, nextTangent), .5);
+
+ //bevel miter cutoffs
+ if (miterMode == 1.) {
+ if (enableStartMiter == 1.) {
+ vec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;
+ startCutoff = vec4(aCoord, aCoord);
+ startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
+ startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ startCutoff += viewport.xyxy;
+ startCutoff += startMiterWidth.xyxy;
+ }
+
+ if (enableEndMiter == 1.) {
+ vec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;
+ endCutoff = vec4(bCoord, bCoord);
+ endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
+ endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ endCutoff += viewport.xyxy;
+ endCutoff += endMiterWidth.xyxy;
+ }
+ }
+
+ //round miter cutoffs
+ else if (miterMode == 2.) {
+ if (enableStartMiter == 1.) {
+ vec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;
+ startCutoff = vec4(aCoord, aCoord);
+ startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
+ startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ startCutoff += viewport.xyxy;
+ startCutoff += startMiterWidth.xyxy;
+ }
+
+ if (enableEndMiter == 1.) {
+ vec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;
+ endCutoff = vec4(bCoord, bCoord);
+ endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
+ endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ endCutoff += viewport.xyxy;
+ endCutoff += endMiterWidth.xyxy;
+ }
+ }
+}
+`,COt=`
+precision highp float;
+
+uniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;
+uniform sampler2D dashTexture;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+varying vec4 startCutoff, endCutoff;
+varying vec2 startCoord, endCoord;
+varying float enableStartMiter, enableEndMiter;
+
+float distToLine(vec2 p, vec2 a, vec2 b) {
+ vec2 diff = b - a;
+ vec2 perp = normalize(vec2(-diff.y, diff.x));
+ return dot(p - a, perp);
+}
+
+void main() {
+ float alpha = 1., distToStart, distToEnd;
+ float cutoff = thickness * .5;
+
+ //bevel miter
+ if (miterMode == 1.) {
+ if (enableStartMiter == 1.) {
+ distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
+ if (distToStart < -1.) {
+ discard;
+ return;
+ }
+ alpha *= min(max(distToStart + 1., 0.), 1.);
+ }
+
+ if (enableEndMiter == 1.) {
+ distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
+ if (distToEnd < -1.) {
+ discard;
+ return;
+ }
+ alpha *= min(max(distToEnd + 1., 0.), 1.);
+ }
+ }
+
+ // round miter
+ else if (miterMode == 2.) {
+ if (enableStartMiter == 1.) {
+ distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
+ if (distToStart < 0.) {
+ float radius = length(gl_FragCoord.xy - startCoord);
+
+ if(radius > cutoff + .5) {
+ discard;
+ return;
+ }
+
+ alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
+ }
+ }
+
+ if (enableEndMiter == 1.) {
+ distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
+ if (distToEnd < 0.) {
+ float radius = length(gl_FragCoord.xy - endCoord);
+
+ if(radius > cutoff + .5) {
+ discard;
+ return;
+ }
+
+ alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
+ }
+ }
+ }
+
+ float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
+ float dash = texture2D(dashTexture, vec2(t, .5)).r;
+
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= alpha * opacity * dash;
+}
+`;iqe.exports=uc;function uc(e,t){if(!(this instanceof uc))return new uc(e,t);if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=e._gl,this.regl=e,this.passes=[],this.shaders=uc.shaders.has(e)?uc.shaders.get(e):uc.shaders.set(e,uc.createShaders(e)).get(e),this.update(t)}uc.dashMult=2;uc.maxPatternLength=256;uc.precisionThreshold=3e6;uc.maxPoints=1e4;uc.maxLines=2048;uc.shaders=new wOt;uc.createShaders=function(e){let t=e.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),r={primitive:"triangle strip",instances:e.prop("count"),count:4,offset:0,uniforms:{miterMode:(o,s)=>s.join==="round"?2:1,miterLimit:e.prop("miterLimit"),scale:e.prop("scale"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),thickness:e.prop("thickness"),dashTexture:e.prop("dashTexture"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),dashLength:e.prop("dashLength"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight],depth:e.prop("depth")},blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:(o,s)=>!s.overlay},stencil:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport")},n=e(CY({vert:AOt,frag:SOt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},r)),i;try{i=e(CY({cull:{enable:!0,face:"back"},vert:kOt,frag:COt,attributes:{lineEnd:{buffer:t,divisor:0,stride:8,offset:0},lineTop:{buffer:t,divisor:0,stride:8,offset:4},aColor:{buffer:e.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:e.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:e.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},r))}catch(o){i=n}return{fill:e({primitive:"triangle",elements:(o,s)=>s.triangles,offset:0,vert:MOt,frag:EOt,uniforms:{scale:e.prop("scale"),color:e.prop("fill"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),translate:e.prop("translate"),opacity:e.prop("opacity"),pixelRatio:e.context("pixelRatio"),id:e.prop("id"),viewport:(o,s)=>[s.viewport.x,s.viewport.y,o.viewportWidth,o.viewportHeight]},attributes:{position:{buffer:e.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:e.prop("positionFractBuffer"),stride:8,offset:8}},blend:r.blend,depth:{enable:!1},scissor:r.scissor,stencil:r.stencil,viewport:r.viewport}),rect:n,miter:i}};uc.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};uc.prototype.render=function(...e){e.length&&this.update(...e),this.draw()};uc.prototype.draw=function(...e){return(e.length?e:this.passes).forEach((t,r)=>{if(t&&Array.isArray(t))return this.draw(...t);typeof t=="number"&&(t=this.passes[t]),t&&t.count>1&&t.opacity&&(this.regl._refresh(),t.fill&&t.triangles&&t.triangles.length>2&&this.shaders.fill(t),t.thickness&&(t.scale[0]*t.viewport.width>uc.precisionThreshold||t.scale[1]*t.viewport.height>uc.precisionThreshold?this.shaders.rect(t):t.join==="rect"||!t.join&&(t.thickness<=2||t.count>=uc.maxPoints)?this.shaders.rect(t):this.shaders.miter(t)))}),this};uc.prototype.update=function(e){if(!e)return;e.length!=null?typeof e[0]=="number"&&(e=[{positions:e}]):Array.isArray(e)||(e=[e]);let{regl:t,gl:r}=this;if(e.forEach((i,a)=>{let o=this.passes[a];if(i!==void 0){if(i===null){this.passes[a]=null;return}if(typeof i[0]=="number"&&(i={positions:i}),i=yOt(i,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),o||(this.passes[a]=o={id:a,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:t.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:t.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:t.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},i=CY({},uc.defaults,i)),i.thickness!=null&&(o.thickness=parseFloat(i.thickness)),i.opacity!=null&&(o.opacity=parseFloat(i.opacity)),i.miterLimit!=null&&(o.miterLimit=parseFloat(i.miterLimit)),i.overlay!=null&&(o.overlay=!!i.overlay,a<uc.maxLines&&(o.depth=2*(uc.maxLines-1-a%uc.maxLines)/uc.maxLines-1)),i.join!=null&&(o.join=i.join),i.hole!=null&&(o.hole=i.hole),i.fill!=null&&(o.fill=i.fill?hF(i.fill,"uint8"):null),i.viewport!=null&&(o.viewport=rqe(i.viewport)),o.viewport||(o.viewport=rqe([r.drawingBufferWidth,r.drawingBufferHeight])),i.close!=null&&(o.close=i.close),i.positions===null&&(i.positions=[]),i.positions){let u,c;if(i.positions.x&&i.positions.y){let v=i.positions.x,x=i.positions.y;c=o.count=Math.max(v.length,x.length),u=new Float64Array(c*2);for(let b=0;b<c;b++)u[b*2]=v[b],u[b*2+1]=x[b]}else u=_Ot(i.positions,"float64"),c=o.count=Math.floor(u.length/2);let f=o.bounds=mOt(u,2);if(o.fill){let v=[],x={},b=0;for(let p=0,E=0,k=o.count;p<k;p++){let A=u[p*2],L=u[p*2+1];isNaN(A)||isNaN(L)||A==null||L==null?(A=u[b*2],L=u[b*2+1],x[p]=b):b=p,v[E++]=A,v[E++]=L}if(i.splitNull){o.count-1 in x||(x[o.count]=o.count-1);let p=Object.keys(x).map(Number).sort((L,_)=>L-_),E=[],k=0,A=o.hole!=null?o.hole[0]:null;if(A!=null){let L=TOt(p,_=>_>=A);p=p.slice(0,L),p.push(A)}for(let L=0;L<p.length;L++){let _=v.slice(k*2,p[L]*2).concat(A?v.slice(A*2):[]),C=(o.hole||[]).map(g=>g-A+(p[L]-k)),M=tqe(_,C);M=M.map(g=>g+k+(g+k<p[L]?0:A-p[L])),E.push(...M),k=p[L]+1}for(let L=0,_=E.length;L<_;L++)x[E[L]]!=null&&(E[L]=x[E[L]]);o.triangles=E}else{let p=tqe(v,o.hole||[]);for(let E=0,k=p.length;E<k;E++)x[p[E]]!=null&&(p[E]=x[p[E]]);o.triangles=p}}let h=new Float64Array(u);xOt(h,2,f);let d=new Float64Array(c*2+6);o.close?u[0]===u[c*2-2]&&u[1]===u[c*2-1]?(d[0]=h[c*2-4],d[1]=h[c*2-3]):(d[0]=h[c*2-2],d[1]=h[c*2-1]):(d[0]=h[0],d[1]=h[1]),d.set(h,2),o.close?u[0]===u[c*2-2]&&u[1]===u[c*2-1]?(d[c*2+2]=h[2],d[c*2+3]=h[3],o.count-=1):(d[c*2+2]=h[0],d[c*2+3]=h[1],d[c*2+4]=h[2],d[c*2+5]=h[3]):(d[c*2+2]=h[c*2-2],d[c*2+3]=h[c*2-1],d[c*2+4]=h[c*2-2],d[c*2+5]=h[c*2-1]);var s=bOt(d);o.positionBuffer(s);var l=kY(d,s);o.positionFractBuffer(l)}if(i.range?o.range=i.range:o.range||(o.range=o.bounds),(i.range||i.positions)&&o.count){let u=o.bounds,c=u[2]-u[0],f=u[3]-u[1],h=o.range[2]-o.range[0],d=o.range[3]-o.range[1];o.scale=[c/h,f/d],o.translate=[-o.range[0]/h+u[0]/h||0,-o.range[1]/d+u[1]/d||0],o.scaleFract=kY(o.scale),o.translateFract=kY(o.translate)}if(i.dashes){let u=0,c;if(!i.dashes||i.dashes.length<2)u=1,c=new Uint8Array([255,255,255,255,255,255,255,255]);else{u=0;for(let d=0;d<i.dashes.length;++d)u+=i.dashes[d];c=new Uint8Array(u*uc.dashMult);let f=0,h=255;for(let d=0;d<2;d++)for(let v=0;v<i.dashes.length;++v){for(let x=0,b=i.dashes[v]*uc.dashMult*.5;x<b;++x)c[f++]=h;h^=255}}o.dashLength=u,o.dashTexture({channels:1,data:c,width:c.length,height:1,mag:"linear",min:"linear"},0,0)}if(i.color){let u=o.count,c=i.color;c||(c="transparent");let f=new Uint8Array(u*4+4);if(!Array.isArray(c)||typeof c[0]=="number"){let h=hF(c,"uint8");for(let d=0;d<u+1;d++)f.set(h,d*4)}else{for(let h=0;h<u;h++){let d=hF(c[h],"uint8");f.set(d,h*4)}f.set(hF(c[0],"uint8"),u*4)}o.colorBuffer({usage:"dynamic",type:"uint8",data:f})}}}),e.length<this.passes.length){for(let i=e.length;i<this.passes.length;i++){let a=this.passes[i];a&&(a.colorBuffer.destroy(),a.positionBuffer.destroy(),a.dashTexture.destroy())}this.passes.length=e.length}let n=[];for(let i=0;i<this.passes.length;i++)this.passes[i]!==null&&n.push(this.passes[i]);return this.passes=n,this};uc.prototype.destroy=function(){return this.passes.forEach(e=>{e.colorBuffer.destroy(),e.positionBuffer.destroy(),e.dashTexture.destroy()}),this.passes.length=0,this}});var lqe=ye((rmr,sqe)=>{"use strict";var LOt=j2(),POt=$_(),IOt=JX(),ROt=Zm(),nqe=bh(),aqe=W2(),{float32:DOt,fract32:PY}=Xz();sqe.exports=zOt;var oqe=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function zOt(e,t){if(typeof e=="function"?(t||(t={}),t.regl=e):t=e,t.length&&(t.positions=t),e=t.regl,!e.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let r=e._gl,n,i,a,o,s,l,u={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},c=[];return o=e.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),i=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),a=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),s=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=e.buffer({usage:"static",type:"float",data:oqe}),v(t),n=e({vert:`
+ precision highp float;
+
+ attribute vec2 position, positionFract;
+ attribute vec4 error;
+ attribute vec4 color;
+
+ attribute vec2 direction, lineOffset, capOffset;
+
+ uniform vec4 viewport;
+ uniform float lineWidth, capSize;
+ uniform vec2 scale, scaleFract, translate, translateFract;
+
+ varying vec4 fragColor;
+
+ void main() {
+ fragColor = color / 255.;
+
+ vec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;
+
+ vec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;
+
+ vec2 position = position + dxy;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ pos += pixelOffset / viewport.zw;
+
+ gl_Position = vec4(pos * 2. - 1., 0, 1);
+ }
+ `,frag:`
+ precision highp float;
+
+ varying vec4 fragColor;
+
+ uniform float opacity;
+
+ void main() {
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= opacity;
+ }
+ `,uniforms:{range:e.prop("range"),lineWidth:e.prop("lineWidth"),capSize:e.prop("capSize"),opacity:e.prop("opacity"),scale:e.prop("scale"),translate:e.prop("translate"),scaleFract:e.prop("scaleFract"),translateFract:e.prop("translateFract"),viewport:(b,p)=>[p.viewport.x,p.viewport.y,b.viewportWidth,b.viewportHeight]},attributes:{color:{buffer:o,offset:(b,p)=>p.offset*4,divisor:1},position:{buffer:i,offset:(b,p)=>p.offset*8,divisor:1},positionFract:{buffer:a,offset:(b,p)=>p.offset*8,divisor:1},error:{buffer:s,offset:(b,p)=>p.offset*16,divisor:1},direction:{buffer:l,stride:24,offset:0},lineOffset:{buffer:l,stride:24,offset:8},capOffset:{buffer:l,stride:24,offset:16}},primitive:"triangles",blend:{enable:!0,color:[0,0,0,0],equation:{rgb:"add",alpha:"add"},func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},depth:{enable:!1},scissor:{enable:!0,box:e.prop("viewport")},viewport:e.prop("viewport"),stencil:!1,instances:e.prop("count"),count:oqe.length}),nqe(f,{update:v,draw:h,destroy:x,regl:e,gl:r,canvas:r.canvas,groups:c}),f;function f(b){b?v(b):b===null&&x(),h()}function h(b){if(typeof b=="number")return d(b);b&&!Array.isArray(b)&&(b=[b]),e._refresh(),c.forEach((p,E)=>{if(p){if(b&&(b[E]?p.draw=!0:p.draw=!1),!p.draw){p.draw=!0;return}d(E)}})}function d(b){typeof b=="number"&&(b=c[b]),b!=null&&b&&b.count&&b.color&&b.opacity&&b.positions&&b.positions.length>1&&(b.scaleRatio=[b.scale[0]*b.viewport.width,b.scale[1]*b.viewport.height],n(b),b.after&&b.after(b))}function v(b){if(!b)return;b.length!=null?typeof b[0]=="number"&&(b=[{positions:b}]):Array.isArray(b)||(b=[b]);let p=0,E=0;if(f.groups=c=b.map((L,_)=>{let C=c[_];if(L)typeof L=="function"?L={after:L}:typeof L[0]=="number"&&(L={positions:L});else return C;return L=ROt(L,{color:"color colors fill",capSize:"capSize cap capsize cap-size",lineWidth:"lineWidth line-width width line thickness",opacity:"opacity alpha",range:"range dataBox",viewport:"viewport viewBox",errors:"errors error",positions:"positions position data points"}),C||(c[_]=C={id:_,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},L=nqe({},u,L)),IOt(C,L,[{lineWidth:M=>+M*.5,capSize:M=>+M*.5,opacity:parseFloat,errors:M=>(M=aqe(M),E+=M.length,M),positions:(M,g)=>(M=aqe(M,"float64"),g.count=Math.floor(M.length/2),g.bounds=LOt(M,2),g.offset=p,p+=g.count,M)},{color:(M,g)=>{let P=g.count;if(M||(M="transparent"),!Array.isArray(M)||typeof M[0]=="number"){let F=M;M=Array(P);for(let q=0;q<P;q++)M[q]=F}if(M.length<P)throw Error("Not enough colors");let T=new Uint8Array(P*4);for(let F=0;F<P;F++){let q=POt(M[F],"uint8");T.set(q,F*4)}return T},range:(M,g,P)=>{let T=g.bounds;return M||(M=T),g.scale=[1/(M[2]-M[0]),1/(M[3]-M[1])],g.translate=[-M[0],-M[1]],g.scaleFract=PY(g.scale),g.translateFract=PY(g.translate),M},viewport:M=>{let g;return Array.isArray(M)?g={x:M[0],y:M[1],width:M[2]-M[0],height:M[3]-M[1]}:M?(g={x:M.x||M.left||0,y:M.y||M.top||0},M.right?g.width=M.right-g.x:g.width=M.w||M.width||0,M.bottom?g.height=M.bottom-g.y:g.height=M.h||M.height||0):g={x:0,y:0,width:r.drawingBufferWidth,height:r.drawingBufferHeight},g}}]),C}),p||E){let L=c.reduce((g,P,T)=>g+(P?P.count:0),0),_=new Float64Array(L*2),C=new Uint8Array(L*4),M=new Float32Array(L*4);c.forEach((g,P)=>{if(!g)return;let{positions:T,count:F,offset:q,color:V,errors:H}=g;F&&(C.set(V,q*4),M.set(H,q*4),_.set(T,q*2))});var k=DOt(_);i(k);var A=PY(_,k);a(A),o(C),s(M)}}function x(){i.destroy(),a.destroy(),o.destroy(),s.destroy(),l.destroy()}}});var fqe=ye((imr,cqe)=>{var uqe=/[\'\"]/;cqe.exports=function(t){return t?(uqe.test(t.charAt(0))&&(t=t.substr(1)),uqe.test(t.charAt(t.length-1))&&(t=t.substr(0,t.length-1)),t):""}});var IY=ye(()=>{});var RY=ye(()=>{});var DY=ye(()=>{});var zY=ye(()=>{});var FY=ye(()=>{});var pqe=ye((vmr,vqe)=>{"use strict";function hqe(e,t){if(typeof e!="string")return[e];var r=[e];typeof t=="string"||Array.isArray(t)?t={brackets:t}:t||(t={});var n=t.brackets?Array.isArray(t.brackets)?t.brackets:[t.brackets]:["{}","[]","()"],i=t.escape||"___",a=!!t.flat;n.forEach(function(l){var u=new RegExp(["\\",l[0],"[^\\",l[0],"\\",l[1],"]*\\",l[1]].join("")),c=[];function f(h,d,v){var x=r.push(h.slice(l[0].length,-l[1].length))-1;return c.push(x),i+x+i}r.forEach(function(h,d){for(var v,x=0;h!=v;)if(v=h,h=h.replace(u,f),x++>1e4)throw Error("References have circular dependency. Please, check them.");r[d]=h}),c=c.reverse(),r=r.map(function(h){return c.forEach(function(d){h=h.replace(new RegExp("(\\"+i+d+"\\"+i+")","g"),l[0]+"$1"+l[1])}),h})});var o=new RegExp("\\"+i+"([0-9]+)\\"+i);function s(l,u,c){for(var f=[],h,d=0;h=o.exec(l);){if(d++>1e4)throw Error("Circular references in parenthesis");f.push(l.slice(0,h.index)),f.push(s(u[h[1]],u)),l=l.slice(h.index+h[0].length)}return f.push(l),f}return a?r:s(r[0],r)}function dqe(e,t){if(t&&t.flat){var r=t&&t.escape||"___",n=e[0],i;if(!n)return"";for(var a=new RegExp("\\"+r+"([0-9]+)\\"+r),o=0;n!=i;){if(o++>1e4)throw Error("Circular references in "+e);i=n,n=n.replace(a,s)}return n}return e.reduce(function l(u,c){return Array.isArray(c)&&(c=c.reduce(l,"")),u+c},"");function s(l,u){if(e[u]==null)throw Error("Reference "+u+"is undefined");return e[u]}}function qY(e,t){return Array.isArray(e)?dqe(e,t):hqe(e,t)}qY.parse=hqe;qY.stringify=dqe;vqe.exports=qY});var yqe=ye((pmr,mqe)=>{"use strict";var gqe=pqe();mqe.exports=function(t,r,n){if(t==null)throw Error("First argument should be a string");if(r==null)throw Error("Separator should be a string or a RegExp");n?(typeof n=="string"||Array.isArray(n))&&(n={ignore:n}):n={},n.escape==null&&(n.escape=!0),n.ignore==null?n.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof n.ignore=="string"&&(n.ignore=[n.ignore]),n.ignore=n.ignore.map(function(f){return f.length===1&&(f=f+f),f}));var i=gqe.parse(t,{flat:!0,brackets:n.ignore}),a=i[0],o=a.split(r);if(n.escape){for(var s=[],l=0;l<o.length;l++){var u=o[l],c=o[l+1];u[u.length-1]==="\\"&&u[u.length-2]!=="\\"?(s.push(u+r+c),l++):s.push(u)}o=s}for(var l=0;l<o.length;l++)i[0]=o[l],o[l]=gqe.stringify(i,{flat:!0});return o}});var _qe=ye(()=>{});var OY=ye((ymr,xqe)=>{"use strict";var FOt=_qe();xqe.exports={isSize:function(t){return/^[\d\.]/.test(t)||t.indexOf("/")!==-1||FOt.indexOf(t)!==-1}}});var Aqe=ye((_mr,Tqe)=>{"use strict";var qOt=fqe(),OOt=IY(),BOt=RY(),NOt=DY(),UOt=zY(),VOt=FY(),BY=yqe(),HOt=OY().isSize;Tqe.exports=wqe;var gk=wqe.cache={};function wqe(e){if(typeof e!="string")throw new Error("Font argument must be a string.");if(gk[e])return gk[e];if(e==="")throw new Error("Cannot parse an empty string.");if(BOt.indexOf(e)!==-1)return gk[e]={system:e};for(var t={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},r=BY(e,/\s+/),n;n=r.shift();){if(OOt.indexOf(n)!==-1)return["style","variant","weight","stretch"].forEach(function(a){t[a]=n}),gk[e]=t;if(UOt.indexOf(n)!==-1){t.style=n;continue}if(n==="normal"||n==="small-caps"){t.variant=n;continue}if(VOt.indexOf(n)!==-1){t.stretch=n;continue}if(NOt.indexOf(n)!==-1){t.weight=n;continue}if(HOt(n)){var i=BY(n,"/");if(t.size=i[0],i[1]!=null?t.lineHeight=bqe(i[1]):r[0]==="/"&&(r.shift(),t.lineHeight=bqe(r.shift())),!r.length)throw new Error("Missing required font-family.");return t.family=BY(r.join(" "),/\s*,\s*/).map(qOt),gk[e]=t}throw new Error("Unknown or unsupported font token: "+n)}throw new Error("Missing required font-size.")}function bqe(e){var t=parseFloat(e);return t.toString()===e?t:e}});var UY=ye((xmr,Sqe)=>{"use strict";var GOt=Zm(),jOt=OY().isSize,WOt=yk(IY()),ZOt=yk(RY()),XOt=yk(DY()),YOt=yk(zY()),KOt=yk(FY()),JOt={normal:1,"small-caps":1},$Ot={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},NY={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};Sqe.exports=function(t){if(t=GOt(t,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),t.system)return t.system&&mk(t.system,ZOt),t.system;if(mk(t.style,YOt),mk(t.variant,JOt),mk(t.weight,XOt),mk(t.stretch,KOt),t.size==null&&(t.size=NY.size),typeof t.size=="number"&&(t.size+="px"),!jOt)throw Error("Bad size value `"+t.size+"`");t.family||(t.family=NY.family),Array.isArray(t.family)&&(t.family.length||(t.family=[NY.family]),t.family=t.family.map(function(n){return $Ot[n]?n:'"'+n+'"'}).join(", "));var r=[];return r.push(t.style),t.variant!==t.style&&r.push(t.variant),t.weight!==t.variant&&t.weight!==t.style&&r.push(t.weight),t.stretch!==t.weight&&t.stretch!==t.variant&&t.stretch!==t.style&&r.push(t.stretch),r.push(t.size+(t.lineHeight==null||t.lineHeight==="normal"||t.lineHeight+""=="1"?"":"/"+t.lineHeight)),r.push(t.family),r.filter(Boolean).join(" ")};function mk(e,t){if(e&&!t[e]&&!WOt[e])throw Error("Unknown keyword `"+e+"`");return e}function yk(e){for(var t={},r=0;r<e.length;r++)t[e[r]]=1;return t}});var Eqe=ye((bmr,Mqe)=>{"use strict";Mqe.exports={parse:Aqe(),stringify:UY()}});var GY=ye((VY,HY)=>{(function(e,t){typeof VY=="object"&&typeof HY!="undefined"?HY.exports=t():e.createREGL=t()})(VY,function(){"use strict";var e=function(At,Er){for(var Wr=Object.keys(Er),wi=0;wi<Wr.length;++wi)At[Wr[wi]]=Er[Wr[wi]];return At},t=0,r=0,n=5,i=6;function a(At,Er){this.id=t++,this.type=At,this.data=Er}function o(At){return At.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function s(At){if(At.length===0)return[];var Er=At.charAt(0),Wr=At.charAt(At.length-1);if(At.length>1&&Er===Wr&&(Er==='"'||Er==="'"))return['"'+o(At.substr(1,At.length-2))+'"'];var wi=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(At);if(wi)return s(At.substr(0,wi.index)).concat(s(wi[1])).concat(s(At.substr(wi.index+wi[0].length)));var Ui=At.split(".");if(Ui.length===1)return['"'+o(At)+'"'];for(var Oi=[],Bi=0;Bi<Ui.length;++Bi)Oi=Oi.concat(s(Ui[Bi]));return Oi}function l(At){return"["+s(At).join("][")+"]"}function u(At,Er){return new a(At,l(Er+""))}function c(At){return typeof At=="function"&&!At._reglType||At instanceof a}function f(At,Er){if(typeof At=="function")return new a(r,At);if(typeof At=="number"||typeof At=="boolean")return new a(n,At);if(Array.isArray(At))return new a(i,At.map(function(Wr,wi){return f(Wr,Er+"["+wi+"]")}));if(At instanceof a)return At}var h={DynamicVariable:a,define:u,isDynamic:c,unbox:f,accessor:l},d={next:typeof requestAnimationFrame=="function"?function(At){return requestAnimationFrame(At)}:function(At){return setTimeout(At,16)},cancel:typeof cancelAnimationFrame=="function"?function(At){return cancelAnimationFrame(At)}:clearTimeout},v=typeof performance!="undefined"&&performance.now?function(){return performance.now()}:function(){return+new Date};function x(){var At={"":0},Er=[""];return{id:function(Wr){var wi=At[Wr];return wi||(wi=At[Wr]=Er.length,Er.push(Wr),wi)},str:function(Wr){return Er[Wr]}}}function b(At,Er,Wr){var wi=document.createElement("canvas");e(wi.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),At.appendChild(wi),At===document.body&&(wi.style.position="absolute",e(At.style,{margin:0,padding:0}));function Ui(){var cn=window.innerWidth,On=window.innerHeight;if(At!==document.body){var Bn=wi.getBoundingClientRect();cn=Bn.right-Bn.left,On=Bn.bottom-Bn.top}wi.width=Wr*cn,wi.height=Wr*On}var Oi;At!==document.body&&typeof ResizeObserver=="function"?(Oi=new ResizeObserver(function(){setTimeout(Ui)}),Oi.observe(At)):window.addEventListener("resize",Ui,!1);function Bi(){Oi?Oi.disconnect():window.removeEventListener("resize",Ui),At.removeChild(wi)}return Ui(),{canvas:wi,onDestroy:Bi}}function p(At,Er){function Wr(wi){try{return At.getContext(wi,Er)}catch(Ui){return null}}return Wr("webgl")||Wr("experimental-webgl")||Wr("webgl-experimental")}function E(At){return typeof At.nodeName=="string"&&typeof At.appendChild=="function"&&typeof At.getBoundingClientRect=="function"}function k(At){return typeof At.drawArrays=="function"||typeof At.drawElements=="function"}function A(At){return typeof At=="string"?At.split():At}function L(At){return typeof At=="string"?document.querySelector(At):At}function _(At){var Er=At||{},Wr,wi,Ui,Oi,Bi={},cn=[],On=[],Bn=typeof window=="undefined"?1:window.devicePixelRatio,yn=!1,to={},Rn=function(Ai){},Dn=function(){};if(typeof Er=="string"?Wr=document.querySelector(Er):typeof Er=="object"&&(E(Er)?Wr=Er:k(Er)?(Oi=Er,Ui=Oi.canvas):("gl"in Er?Oi=Er.gl:"canvas"in Er?Ui=L(Er.canvas):"container"in Er&&(wi=L(Er.container)),"attributes"in Er&&(Bi=Er.attributes),"extensions"in Er&&(cn=A(Er.extensions)),"optionalExtensions"in Er&&(On=A(Er.optionalExtensions)),"onDone"in Er&&(Rn=Er.onDone),"profile"in Er&&(yn=!!Er.profile),"pixelRatio"in Er&&(Bn=+Er.pixelRatio),"cachedCode"in Er&&(to=Er.cachedCode))),Wr&&(Wr.nodeName.toLowerCase()==="canvas"?Ui=Wr:wi=Wr),!Oi){if(!Ui){var fn=b(wi||document.body,Rn,Bn);if(!fn)return null;Ui=fn.canvas,Dn=fn.onDestroy}Bi.premultipliedAlpha===void 0&&(Bi.premultipliedAlpha=!0),Oi=p(Ui,Bi)}return Oi?{gl:Oi,canvas:Ui,container:wi,extensions:cn,optionalExtensions:On,pixelRatio:Bn,profile:yn,cachedCode:to,onDone:Rn,onDestroy:Dn}:(Dn(),Rn("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function C(At,Er){var Wr={};function wi(Bi){var cn=Bi.toLowerCase(),On;try{On=Wr[cn]=At.getExtension(cn)}catch(Bn){}return!!On}for(var Ui=0;Ui<Er.extensions.length;++Ui){var Oi=Er.extensions[Ui];if(!wi(Oi))return Er.onDestroy(),Er.onDone('"'+Oi+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return Er.optionalExtensions.forEach(wi),{extensions:Wr,restore:function(){Object.keys(Wr).forEach(function(Bi){if(Wr[Bi]&&!wi(Bi))throw new Error("(regl): error restoring extension "+Bi)})}}}function M(At,Er){for(var Wr=Array(At),wi=0;wi<At;++wi)Wr[wi]=Er(wi);return Wr}var g=5120,P=5121,T=5122,F=5123,q=5124,V=5125,H=5126;function X(At){for(var Er=16;Er<=1<<28;Er*=16)if(At<=Er)return Er;return 0}function G(At){var Er,Wr;return Er=(At>65535)<<4,At>>>=Er,Wr=(At>255)<<3,At>>>=Wr,Er|=Wr,Wr=(At>15)<<2,At>>>=Wr,Er|=Wr,Wr=(At>3)<<1,At>>>=Wr,Er|=Wr,Er|At>>1}function N(){var At=M(8,function(){return[]});function Er(Oi){var Bi=X(Oi),cn=At[G(Bi)>>2];return cn.length>0?cn.pop():new ArrayBuffer(Bi)}function Wr(Oi){At[G(Oi.byteLength)>>2].push(Oi)}function wi(Oi,Bi){var cn=null;switch(Oi){case g:cn=new Int8Array(Er(Bi),0,Bi);break;case P:cn=new Uint8Array(Er(Bi),0,Bi);break;case T:cn=new Int16Array(Er(2*Bi),0,Bi);break;case F:cn=new Uint16Array(Er(2*Bi),0,Bi);break;case q:cn=new Int32Array(Er(4*Bi),0,Bi);break;case V:cn=new Uint32Array(Er(4*Bi),0,Bi);break;case H:cn=new Float32Array(Er(4*Bi),0,Bi);break;default:return null}return cn.length!==Bi?cn.subarray(0,Bi):cn}function Ui(Oi){Wr(Oi.buffer)}return{alloc:Er,free:Wr,allocType:wi,freeType:Ui}}var W=N();W.zero=N();var re=3408,ae=3410,_e=3411,Me=3412,ke=3413,ge=3414,ie=3415,Te=33901,Ee=33902,Ae=3379,ze=3386,Ce=34921,me=36347,Re=36348,ce=35661,Ge=35660,nt=34930,ct=36349,qt=34076,rt=34024,ot=7936,Rt=7937,kt=7938,Ct=35724,Yt=34047,xr=36063,er=34852,Ke=3553,xt=34067,bt=34069,Lt=33984,St=6408,Et=5126,dt=5121,Ht=36160,$t=36053,fr=36064,_r=16384,Br=function(At,Er){var Wr=1;Er.ext_texture_filter_anisotropic&&(Wr=At.getParameter(Yt));var wi=1,Ui=1;Er.webgl_draw_buffers&&(wi=At.getParameter(er),Ui=At.getParameter(xr));var Oi=!!Er.oes_texture_float;if(Oi){var Bi=At.createTexture();At.bindTexture(Ke,Bi),At.texImage2D(Ke,0,St,1,1,0,St,Et,null);var cn=At.createFramebuffer();if(At.bindFramebuffer(Ht,cn),At.framebufferTexture2D(Ht,fr,Ke,Bi,0),At.bindTexture(Ke,null),At.checkFramebufferStatus(Ht)!==$t)Oi=!1;else{At.viewport(0,0,1,1),At.clearColor(1,0,0,1),At.clear(_r);var On=W.allocType(Et,4);At.readPixels(0,0,1,1,St,Et,On),At.getError()?Oi=!1:(At.deleteFramebuffer(cn),At.deleteTexture(Bi),Oi=On[0]===1),W.freeType(On)}}var Bn=typeof navigator!="undefined"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),yn=!0;if(!Bn){var to=At.createTexture(),Rn=W.allocType(dt,36);At.activeTexture(Lt),At.bindTexture(xt,to),At.texImage2D(bt,0,St,3,3,0,St,dt,Rn),W.freeType(Rn),At.bindTexture(xt,null),At.deleteTexture(to),yn=!At.getError()}return{colorBits:[At.getParameter(ae),At.getParameter(_e),At.getParameter(Me),At.getParameter(ke)],depthBits:At.getParameter(ge),stencilBits:At.getParameter(ie),subpixelBits:At.getParameter(re),extensions:Object.keys(Er).filter(function(Dn){return!!Er[Dn]}),maxAnisotropic:Wr,maxDrawbuffers:wi,maxColorAttachments:Ui,pointSizeDims:At.getParameter(Te),lineWidthDims:At.getParameter(Ee),maxViewportDims:At.getParameter(ze),maxCombinedTextureUnits:At.getParameter(ce),maxCubeMapSize:At.getParameter(qt),maxRenderbufferSize:At.getParameter(rt),maxTextureUnits:At.getParameter(nt),maxTextureSize:At.getParameter(Ae),maxAttributes:At.getParameter(Ce),maxVertexUniforms:At.getParameter(me),maxVertexTextureUnits:At.getParameter(Ge),maxVaryingVectors:At.getParameter(Re),maxFragmentUniforms:At.getParameter(ct),glsl:At.getParameter(Ct),renderer:At.getParameter(Rt),vendor:At.getParameter(ot),version:At.getParameter(kt),readFloat:Oi,npotTextureCube:yn}},Or=function(At){return At instanceof Uint8Array||At instanceof Uint16Array||At instanceof Uint32Array||At instanceof Int8Array||At instanceof Int16Array||At instanceof Int32Array||At instanceof Float32Array||At instanceof Float64Array||At instanceof Uint8ClampedArray};function Nr(At){return!!At&&typeof At=="object"&&Array.isArray(At.shape)&&Array.isArray(At.stride)&&typeof At.offset=="number"&&At.shape.length===At.stride.length&&(Array.isArray(At.data)||Or(At.data))}var ut=function(At){return Object.keys(At).map(function(Er){return At[Er]})},Ne={shape:xe,flatten:Le};function Ye(At,Er,Wr){for(var wi=0;wi<Er;++wi)Wr[wi]=At[wi]}function Ve(At,Er,Wr,wi){for(var Ui=0,Oi=0;Oi<Er;++Oi)for(var Bi=At[Oi],cn=0;cn<Wr;++cn)wi[Ui++]=Bi[cn]}function Xe(At,Er,Wr,wi,Ui,Oi){for(var Bi=Oi,cn=0;cn<Er;++cn)for(var On=At[cn],Bn=0;Bn<Wr;++Bn)for(var yn=On[Bn],to=0;to<wi;++to)Ui[Bi++]=yn[to]}function ht(At,Er,Wr,wi,Ui){for(var Oi=1,Bi=Wr+1;Bi<Er.length;++Bi)Oi*=Er[Bi];var cn=Er[Wr];if(Er.length-Wr===4){var On=Er[Wr+1],Bn=Er[Wr+2],yn=Er[Wr+3];for(Bi=0;Bi<cn;++Bi)Xe(At[Bi],On,Bn,yn,wi,Ui),Ui+=Oi}else for(Bi=0;Bi<cn;++Bi)ht(At[Bi],Er,Wr+1,wi,Ui),Ui+=Oi}function Le(At,Er,Wr,wi){var Ui=1;if(Er.length)for(var Oi=0;Oi<Er.length;++Oi)Ui*=Er[Oi];else Ui=0;var Bi=wi||W.allocType(Wr,Ui);switch(Er.length){case 0:break;case 1:Ye(At,Er[0],Bi);break;case 2:Ve(At,Er[0],Er[1],Bi);break;case 3:Xe(At,Er[0],Er[1],Er[2],Bi,0);break;default:ht(At,Er,0,Bi,0)}return Bi}function xe(At){for(var Er=[],Wr=At;Wr.length;Wr=Wr[0])Er.push(Wr.length);return Er}var Se={"[object Int8Array]":5120,"[object Int16Array]":5122,"[object Int32Array]":5124,"[object Uint8Array]":5121,"[object Uint8ClampedArray]":5121,"[object Uint16Array]":5123,"[object Uint32Array]":5125,"[object Float32Array]":5126,"[object Float64Array]":5121,"[object ArrayBuffer]":5121},lt=5120,Gt=5122,Vt=5124,ar=5121,Qr=5123,ai=5125,jr=5126,ri=5126,bi={int8:lt,int16:Gt,int32:Vt,uint8:ar,uint16:Qr,uint32:ai,float:jr,float32:ri},nn=35048,Wi=35040,Ni={dynamic:nn,stream:Wi,static:35044},_n=Ne.flatten,$i=Ne.shape,zn=35044,Wn=35040,It=5121,ft=5126,jt=[];jt[5120]=1,jt[5122]=2,jt[5124]=4,jt[5121]=1,jt[5123]=2,jt[5125]=4,jt[5126]=4;function Zt(At){return Se[Object.prototype.toString.call(At)]|0}function yr(At,Er){for(var Wr=0;Wr<Er.length;++Wr)At[Wr]=Er[Wr]}function Fr(At,Er,Wr,wi,Ui,Oi,Bi){for(var cn=0,On=0;On<Wr;++On)for(var Bn=0;Bn<wi;++Bn)At[cn++]=Er[Ui*On+Oi*Bn+Bi]}function Zr(At,Er,Wr,wi){var Ui=0,Oi={};function Bi(Ai){this.id=Ui++,this.buffer=At.createBuffer(),this.type=Ai,this.usage=zn,this.byteLength=0,this.dimension=1,this.dtype=It,this.persistentData=null,Wr.profile&&(this.stats={size:0})}Bi.prototype.bind=function(){At.bindBuffer(this.type,this.buffer)},Bi.prototype.destroy=function(){Rn(this)};var cn=[];function On(Ai,ji){var Ln=cn.pop();return Ln||(Ln=new Bi(Ai)),Ln.bind(),to(Ln,ji,Wn,0,1,!1),Ln}function Bn(Ai){cn.push(Ai)}function yn(Ai,ji,Ln){Ai.byteLength=ji.byteLength,At.bufferData(Ai.type,ji,Ln)}function to(Ai,ji,Ln,Un,gn,ca){var Kn;if(Ai.usage=Ln,Array.isArray(ji)){if(Ai.dtype=Un||ft,ji.length>0){var Za;if(Array.isArray(ji[0])){Kn=$i(ji);for(var wn=1,vn=1;vn<Kn.length;++vn)wn*=Kn[vn];Ai.dimension=wn,Za=_n(ji,Kn,Ai.dtype),yn(Ai,Za,Ln),ca?Ai.persistentData=Za:W.freeType(Za)}else if(typeof ji[0]=="number"){Ai.dimension=gn;var Aa=W.allocType(Ai.dtype,ji.length);yr(Aa,ji),yn(Ai,Aa,Ln),ca?Ai.persistentData=Aa:W.freeType(Aa)}else Or(ji[0])&&(Ai.dimension=ji[0].length,Ai.dtype=Un||Zt(ji[0])||ft,Za=_n(ji,[ji.length,ji[0].length],Ai.dtype),yn(Ai,Za,Ln),ca?Ai.persistentData=Za:W.freeType(Za))}}else if(Or(ji))Ai.dtype=Un||Zt(ji),Ai.dimension=gn,yn(Ai,ji,Ln),ca&&(Ai.persistentData=new Uint8Array(new Uint8Array(ji.buffer)));else if(Nr(ji)){Kn=ji.shape;var aa=ji.stride,Xn=ji.offset,Vn=0,ma=0,ro=0,Ao=0;Kn.length===1?(Vn=Kn[0],ma=1,ro=aa[0],Ao=0):Kn.length===2&&(Vn=Kn[0],ma=Kn[1],ro=aa[0],Ao=aa[1]),Ai.dtype=Un||Zt(ji.data)||ft,Ai.dimension=ma;var Jn=W.allocType(Ai.dtype,Vn*ma);Fr(Jn,ji.data,Vn,ma,ro,Ao,Xn),yn(Ai,Jn,Ln),ca?Ai.persistentData=Jn:W.freeType(Jn)}else ji instanceof ArrayBuffer&&(Ai.dtype=It,Ai.dimension=gn,yn(Ai,ji,Ln),ca&&(Ai.persistentData=new Uint8Array(new Uint8Array(ji))))}function Rn(Ai){Er.bufferCount--,wi(Ai);var ji=Ai.buffer;At.deleteBuffer(ji),Ai.buffer=null,delete Oi[Ai.id]}function Dn(Ai,ji,Ln,Un){Er.bufferCount++;var gn=new Bi(ji);Oi[gn.id]=gn;function ca(wn){var vn=zn,Aa=null,aa=0,Xn=0,Vn=1;return Array.isArray(wn)||Or(wn)||Nr(wn)||wn instanceof ArrayBuffer?Aa=wn:typeof wn=="number"?aa=wn|0:wn&&("data"in wn&&(Aa=wn.data),"usage"in wn&&(vn=Ni[wn.usage]),"type"in wn&&(Xn=bi[wn.type]),"dimension"in wn&&(Vn=wn.dimension|0),"length"in wn&&(aa=wn.length|0)),gn.bind(),Aa?to(gn,Aa,vn,Xn,Vn,Un):(aa&&At.bufferData(gn.type,aa,vn),gn.dtype=Xn||It,gn.usage=vn,gn.dimension=Vn,gn.byteLength=aa),Wr.profile&&(gn.stats.size=gn.byteLength*jt[gn.dtype]),ca}function Kn(wn,vn){At.bufferSubData(gn.type,vn,wn)}function Za(wn,vn){var Aa=(vn||0)|0,aa;if(gn.bind(),Or(wn)||wn instanceof ArrayBuffer)Kn(wn,Aa);else if(Array.isArray(wn)){if(wn.length>0){if(typeof wn[0]=="number"){var Xn=W.allocType(gn.dtype,wn.length);yr(Xn,wn),Kn(Xn,Aa),W.freeType(Xn)}else if(Array.isArray(wn[0])||Or(wn[0])){aa=$i(wn);var Vn=_n(wn,aa,gn.dtype);Kn(Vn,Aa),W.freeType(Vn)}}}else if(Nr(wn)){aa=wn.shape;var ma=wn.stride,ro=0,Ao=0,Jn=0,Oa=0;aa.length===1?(ro=aa[0],Ao=1,Jn=ma[0],Oa=0):aa.length===2&&(ro=aa[0],Ao=aa[1],Jn=ma[0],Oa=ma[1]);var _o=Array.isArray(wn.data)?gn.dtype:Zt(wn.data),Po=W.allocType(_o,ro*Ao);Fr(Po,wn.data,ro,Ao,Jn,Oa,wn.offset),Kn(Po,Aa),W.freeType(Po)}return ca}return Ln||ca(Ai),ca._reglType="buffer",ca._buffer=gn,ca.subdata=Za,Wr.profile&&(ca.stats=gn.stats),ca.destroy=function(){Rn(gn)},ca}function fn(){ut(Oi).forEach(function(Ai){Ai.buffer=At.createBuffer(),At.bindBuffer(Ai.type,Ai.buffer),At.bufferData(Ai.type,Ai.persistentData||Ai.byteLength,Ai.usage)})}return Wr.profile&&(Er.getTotalBufferSize=function(){var Ai=0;return Object.keys(Oi).forEach(function(ji){Ai+=Oi[ji].stats.size}),Ai}),{create:Dn,createStream:On,destroyStream:Bn,clear:function(){ut(Oi).forEach(Rn),cn.forEach(Rn)},getBuffer:function(Ai){return Ai&&Ai._buffer instanceof Bi?Ai._buffer:null},restore:fn,_initBuffer:to}}var Vr=0,gi=0,Si=1,Mi=1,Pi=4,Gi=4,Ki={points:Vr,point:gi,lines:Si,line:Mi,triangles:Pi,triangle:Gi,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},ka=0,jn=1,la=4,Fa=5120,Ra=5121,jo=5122,oa=5123,Sn=5124,Ha=5125,oo=34963,xn=35040,_t=35044;function br(At,Er,Wr,wi){var Ui={},Oi=0,Bi={uint8:Ra,uint16:oa};Er.oes_element_index_uint&&(Bi.uint32=Ha);function cn(fn){this.id=Oi++,Ui[this.id]=this,this.buffer=fn,this.primType=la,this.vertCount=0,this.type=0}cn.prototype.bind=function(){this.buffer.bind()};var On=[];function Bn(fn){var Ai=On.pop();return Ai||(Ai=new cn(Wr.create(null,oo,!0,!1)._buffer)),to(Ai,fn,xn,-1,-1,0,0),Ai}function yn(fn){On.push(fn)}function to(fn,Ai,ji,Ln,Un,gn,ca){fn.buffer.bind();var Kn;if(Ai){var Za=ca;!ca&&(!Or(Ai)||Nr(Ai)&&!Or(Ai.data))&&(Za=Er.oes_element_index_uint?Ha:oa),Wr._initBuffer(fn.buffer,Ai,ji,Za,3)}else At.bufferData(oo,gn,ji),fn.buffer.dtype=Kn||Ra,fn.buffer.usage=ji,fn.buffer.dimension=3,fn.buffer.byteLength=gn;if(Kn=ca,!ca){switch(fn.buffer.dtype){case Ra:case Fa:Kn=Ra;break;case oa:case jo:Kn=oa;break;case Ha:case Sn:Kn=Ha;break;default:}fn.buffer.dtype=Kn}fn.type=Kn;var wn=Un;wn<0&&(wn=fn.buffer.byteLength,Kn===oa?wn>>=1:Kn===Ha&&(wn>>=2)),fn.vertCount=wn;var vn=Ln;if(Ln<0){vn=la;var Aa=fn.buffer.dimension;Aa===1&&(vn=ka),Aa===2&&(vn=jn),Aa===3&&(vn=la)}fn.primType=vn}function Rn(fn){wi.elementsCount--,delete Ui[fn.id],fn.buffer.destroy(),fn.buffer=null}function Dn(fn,Ai){var ji=Wr.create(null,oo,!0),Ln=new cn(ji._buffer);wi.elementsCount++;function Un(gn){if(!gn)ji(),Ln.primType=la,Ln.vertCount=0,Ln.type=Ra;else if(typeof gn=="number")ji(gn),Ln.primType=la,Ln.vertCount=gn|0,Ln.type=Ra;else{var ca=null,Kn=_t,Za=-1,wn=-1,vn=0,Aa=0;Array.isArray(gn)||Or(gn)||Nr(gn)?ca=gn:("data"in gn&&(ca=gn.data),"usage"in gn&&(Kn=Ni[gn.usage]),"primitive"in gn&&(Za=Ki[gn.primitive]),"count"in gn&&(wn=gn.count|0),"type"in gn&&(Aa=Bi[gn.type]),"length"in gn?vn=gn.length|0:(vn=wn,Aa===oa||Aa===jo?vn*=2:(Aa===Ha||Aa===Sn)&&(vn*=4))),to(Ln,ca,Kn,Za,wn,vn,Aa)}return Un}return Un(fn),Un._reglType="elements",Un._elements=Ln,Un.subdata=function(gn,ca){return ji.subdata(gn,ca),Un},Un.destroy=function(){Rn(Ln)},Un}return{create:Dn,createStream:Bn,destroyStream:yn,getElements:function(fn){return typeof fn=="function"&&fn._elements instanceof cn?fn._elements:null},clear:function(){ut(Ui).forEach(Rn)}}}var Hr=new Float32Array(1),ti=new Uint32Array(Hr.buffer),zi=5123;function Yi(At){for(var Er=W.allocType(zi,At.length),Wr=0;Wr<At.length;++Wr)if(isNaN(At[Wr]))Er[Wr]=65535;else if(At[Wr]===1/0)Er[Wr]=31744;else if(At[Wr]===-1/0)Er[Wr]=64512;else{Hr[0]=At[Wr];var wi=ti[0],Ui=wi>>>31<<15,Oi=(wi<<1>>>24)-127,Bi=wi>>13&1023;if(Oi<-24)Er[Wr]=Ui;else if(Oi<-14){var cn=-14-Oi;Er[Wr]=Ui+(Bi+1024>>cn)}else Oi>15?Er[Wr]=Ui+31744:Er[Wr]=Ui+(Oi+15<<10)+Bi}return Er}function an(At){return Array.isArray(At)||Or(At)}var hi=34467,Ji=3553,ua=34067,Fn=34069,Sa=6408,go=6406,Oo=6407,ho=6409,Mo=6410,xo=32854,zs=32855,ks=36194,Zs=32819,Xs=32820,wl=33635,os=34042,cl=6402,Cs=34041,ml=35904,Ys=35906,Hs=36193,Eo=33776,fs=33777,Ql=33778,Hu=33779,fc=35986,ms=35987,on=34798,fa=35840,Qu=35841,Rl=35842,vo=35843,Zl=36196,Ks=5121,Xl=5123,Ec=5125,Zn=5126,ko=10242,Co=10243,Tl=10497,uf=33071,So=33648,cf=10240,rh=10241,Al=9728,Hc=9729,eu=9984,Ls=9985,mu=9986,kc=9987,Of=33170,Gc=4352,vd=4353,Bf=4354,ss=34046,ff=3317,ih=37440,Vl=37441,Js=37443,hc=37444,Cc=33984,ws=[eu,mu,Ls,kc],$s=[0,ho,Mo,Oo,Sa],hs={};hs[ho]=hs[go]=hs[cl]=1,hs[Cs]=hs[Mo]=2,hs[Oo]=hs[ml]=3,hs[Sa]=hs[Ys]=4;function Ms(At){return"[object "+At+"]"}var dc=Ms("HTMLCanvasElement"),Sl=Ms("OffscreenCanvas"),ec=Ms("CanvasRenderingContext2D"),Ps=Ms("ImageBitmap"),ov=Ms("HTMLImageElement"),wo=Ms("HTMLVideoElement"),Od=Object.keys(Se).concat([dc,Sl,ec,Ps,ov,wo]),$o=[];$o[Ks]=1,$o[Zn]=4,$o[Hs]=2,$o[Xl]=2,$o[Ec]=4;var Ja=[];Ja[xo]=2,Ja[zs]=2,Ja[ks]=2,Ja[Cs]=4,Ja[Eo]=.5,Ja[fs]=.5,Ja[Ql]=1,Ja[Hu]=1,Ja[fc]=.5,Ja[ms]=1,Ja[on]=1,Ja[fa]=.5,Ja[Qu]=.25,Ja[Rl]=.5,Ja[vo]=.25,Ja[Zl]=.5;function Ef(At){return Array.isArray(At)&&(At.length===0||typeof At[0]=="number")}function tc(At){if(!Array.isArray(At))return!1;var Er=At.length;return!(Er===0||!an(At[0]))}function uu(At){return Object.prototype.toString.call(At)}function Mh(At){return uu(At)===dc}function jc(At){return uu(At)===Sl}function kf(At){return uu(At)===ec}function Ml(At){return uu(At)===Ps}function Yh(At){return uu(At)===ov}function Eh(At){return uu(At)===wo}function nh(At){if(!At)return!1;var Er=uu(At);return Od.indexOf(Er)>=0?!0:Ef(At)||tc(At)||Nr(At)}function hf(At){return Se[Object.prototype.toString.call(At)]|0}function kh(At,Er){var Wr=Er.length;switch(At.type){case Ks:case Xl:case Ec:case Zn:var wi=W.allocType(At.type,Wr);wi.set(Er),At.data=wi;break;case Hs:At.data=Yi(Er);break;default:}}function Kh(At,Er){return W.allocType(At.type===Hs?Zn:At.type,Er)}function rc(At,Er){At.type===Hs?(At.data=Yi(Er),W.freeType(Er)):At.data=Er}function ah(At,Er,Wr,wi,Ui,Oi){for(var Bi=At.width,cn=At.height,On=At.channels,Bn=Bi*cn*On,yn=Kh(At,Bn),to=0,Rn=0;Rn<cn;++Rn)for(var Dn=0;Dn<Bi;++Dn)for(var fn=0;fn<On;++fn)yn[to++]=Er[Wr*Dn+wi*Rn+Ui*fn+Oi];rc(At,yn)}function Wc(At,Er,Wr,wi,Ui,Oi){var Bi;if(typeof Ja[At]!="undefined"?Bi=Ja[At]:Bi=hs[At]*$o[Er],Oi&&(Bi*=6),Ui){for(var cn=0,On=Wr;On>=1;)cn+=Bi*On*On,On/=2;return cn}else return Bi*Wr*wi}function df(At,Er,Wr,wi,Ui,Oi,Bi){var cn={"don't care":Gc,"dont care":Gc,nice:Bf,fast:vd},On={repeat:Tl,clamp:uf,mirror:So},Bn={nearest:Al,linear:Hc},yn=e({mipmap:kc,"nearest mipmap nearest":eu,"linear mipmap nearest":Ls,"nearest mipmap linear":mu,"linear mipmap linear":kc},Bn),to={none:0,browser:hc},Rn={uint8:Ks,rgba4:Zs,rgb565:wl,"rgb5 a1":Xs},Dn={alpha:go,luminance:ho,"luminance alpha":Mo,rgb:Oo,rgba:Sa,rgba4:xo,"rgb5 a1":zs,rgb565:ks},fn={};Er.ext_srgb&&(Dn.srgb=ml,Dn.srgba=Ys),Er.oes_texture_float&&(Rn.float32=Rn.float=Zn),Er.oes_texture_half_float&&(Rn.float16=Rn["half float"]=Hs),Er.webgl_depth_texture&&(e(Dn,{depth:cl,"depth stencil":Cs}),e(Rn,{uint16:Xl,uint32:Ec,"depth stencil":os})),Er.webgl_compressed_texture_s3tc&&e(fn,{"rgb s3tc dxt1":Eo,"rgba s3tc dxt1":fs,"rgba s3tc dxt3":Ql,"rgba s3tc dxt5":Hu}),Er.webgl_compressed_texture_atc&&e(fn,{"rgb atc":fc,"rgba atc explicit alpha":ms,"rgba atc interpolated alpha":on}),Er.webgl_compressed_texture_pvrtc&&e(fn,{"rgb pvrtc 4bppv1":fa,"rgb pvrtc 2bppv1":Qu,"rgba pvrtc 4bppv1":Rl,"rgba pvrtc 2bppv1":vo}),Er.webgl_compressed_texture_etc1&&(fn["rgb etc1"]=Zl);var Ai=Array.prototype.slice.call(At.getParameter(hi));Object.keys(fn).forEach(function(de){var Ie=fn[de];Ai.indexOf(Ie)>=0&&(Dn[de]=Ie)});var ji=Object.keys(Dn);Wr.textureFormats=ji;var Ln=[];Object.keys(Dn).forEach(function(de){var Ie=Dn[de];Ln[Ie]=de});var Un=[];Object.keys(Rn).forEach(function(de){var Ie=Rn[de];Un[Ie]=de});var gn=[];Object.keys(Bn).forEach(function(de){var Ie=Bn[de];gn[Ie]=de});var ca=[];Object.keys(yn).forEach(function(de){var Ie=yn[de];ca[Ie]=de});var Kn=[];Object.keys(On).forEach(function(de){var Ie=On[de];Kn[Ie]=de});var Za=ji.reduce(function(de,Ie){var $e=Dn[Ie];return $e===ho||$e===go||$e===ho||$e===Mo||$e===cl||$e===Cs||Er.ext_srgb&&($e===ml||$e===Ys)?de[$e]=$e:$e===zs||Ie.indexOf("rgba")>=0?de[$e]=Sa:de[$e]=Oo,de},{});function wn(){this.internalformat=Sa,this.format=Sa,this.type=Ks,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=hc,this.width=0,this.height=0,this.channels=0}function vn(de,Ie){de.internalformat=Ie.internalformat,de.format=Ie.format,de.type=Ie.type,de.compressed=Ie.compressed,de.premultiplyAlpha=Ie.premultiplyAlpha,de.flipY=Ie.flipY,de.unpackAlignment=Ie.unpackAlignment,de.colorSpace=Ie.colorSpace,de.width=Ie.width,de.height=Ie.height,de.channels=Ie.channels}function Aa(de,Ie){if(!(typeof Ie!="object"||!Ie)){if("premultiplyAlpha"in Ie&&(de.premultiplyAlpha=Ie.premultiplyAlpha),"flipY"in Ie&&(de.flipY=Ie.flipY),"alignment"in Ie&&(de.unpackAlignment=Ie.alignment),"colorSpace"in Ie&&(de.colorSpace=to[Ie.colorSpace]),"type"in Ie){var $e=Ie.type;de.type=Rn[$e]}var pt=de.width,Kt=de.height,ir=de.channels,Jt=!1;"shape"in Ie?(pt=Ie.shape[0],Kt=Ie.shape[1],Ie.shape.length===3&&(ir=Ie.shape[2],Jt=!0)):("radius"in Ie&&(pt=Kt=Ie.radius),"width"in Ie&&(pt=Ie.width),"height"in Ie&&(Kt=Ie.height),"channels"in Ie&&(ir=Ie.channels,Jt=!0)),de.width=pt|0,de.height=Kt|0,de.channels=ir|0;var vt=!1;if("format"in Ie){var Pt=Ie.format,Wt=de.internalformat=Dn[Pt];de.format=Za[Wt],Pt in Rn&&("type"in Ie||(de.type=Rn[Pt])),Pt in fn&&(de.compressed=!0),vt=!0}!Jt&&vt?de.channels=hs[de.format]:Jt&&!vt&&de.channels!==$s[de.format]&&(de.format=de.internalformat=$s[de.channels])}}function aa(de){At.pixelStorei(ih,de.flipY),At.pixelStorei(Vl,de.premultiplyAlpha),At.pixelStorei(Js,de.colorSpace),At.pixelStorei(ff,de.unpackAlignment)}function Xn(){wn.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function Vn(de,Ie){var $e=null;if(nh(Ie)?$e=Ie:Ie&&(Aa(de,Ie),"x"in Ie&&(de.xOffset=Ie.x|0),"y"in Ie&&(de.yOffset=Ie.y|0),nh(Ie.data)&&($e=Ie.data)),Ie.copy){var pt=Ui.viewportWidth,Kt=Ui.viewportHeight;de.width=de.width||pt-de.xOffset,de.height=de.height||Kt-de.yOffset,de.needsCopy=!0}else if(!$e)de.width=de.width||1,de.height=de.height||1,de.channels=de.channels||4;else if(Or($e))de.channels=de.channels||4,de.data=$e,!("type"in Ie)&&de.type===Ks&&(de.type=hf($e));else if(Ef($e))de.channels=de.channels||4,kh(de,$e),de.alignment=1,de.needsFree=!0;else if(Nr($e)){var ir=$e.data;!Array.isArray(ir)&&de.type===Ks&&(de.type=hf(ir));var Jt=$e.shape,vt=$e.stride,Pt,Wt,rr,dr,pr,kr;Jt.length===3?(rr=Jt[2],kr=vt[2]):(rr=1,kr=1),Pt=Jt[0],Wt=Jt[1],dr=vt[0],pr=vt[1],de.alignment=1,de.width=Pt,de.height=Wt,de.channels=rr,de.format=de.internalformat=$s[rr],de.needsFree=!0,ah(de,ir,dr,pr,kr,$e.offset)}else if(Mh($e)||jc($e)||kf($e))Mh($e)||jc($e)?de.element=$e:de.element=$e.canvas,de.width=de.element.width,de.height=de.element.height,de.channels=4;else if(Ml($e))de.element=$e,de.width=$e.width,de.height=$e.height,de.channels=4;else if(Yh($e))de.element=$e,de.width=$e.naturalWidth,de.height=$e.naturalHeight,de.channels=4;else if(Eh($e))de.element=$e,de.width=$e.videoWidth,de.height=$e.videoHeight,de.channels=4;else if(tc($e)){var Ar=de.width||$e[0].length,gr=de.height||$e.length,Cr=de.channels;an($e[0][0])?Cr=Cr||$e[0][0].length:Cr=Cr||1;for(var cr=Ne.shape($e),Gr=1,ei=0;ei<cr.length;++ei)Gr*=cr[ei];var yi=Kh(de,Gr);Ne.flatten($e,cr,"",yi),rc(de,yi),de.alignment=1,de.width=Ar,de.height=gr,de.channels=Cr,de.format=de.internalformat=$s[Cr],de.needsFree=!0}de.type===Zn||de.type}function ma(de,Ie,$e){var pt=de.element,Kt=de.data,ir=de.internalformat,Jt=de.format,vt=de.type,Pt=de.width,Wt=de.height;aa(de),pt?At.texImage2D(Ie,$e,Jt,Jt,vt,pt):de.compressed?At.compressedTexImage2D(Ie,$e,ir,Pt,Wt,0,Kt):de.needsCopy?(wi(),At.copyTexImage2D(Ie,$e,Jt,de.xOffset,de.yOffset,Pt,Wt,0)):At.texImage2D(Ie,$e,Jt,Pt,Wt,0,Jt,vt,Kt||null)}function ro(de,Ie,$e,pt,Kt){var ir=de.element,Jt=de.data,vt=de.internalformat,Pt=de.format,Wt=de.type,rr=de.width,dr=de.height;aa(de),ir?At.texSubImage2D(Ie,Kt,$e,pt,Pt,Wt,ir):de.compressed?At.compressedTexSubImage2D(Ie,Kt,$e,pt,vt,rr,dr,Jt):de.needsCopy?(wi(),At.copyTexSubImage2D(Ie,Kt,$e,pt,de.xOffset,de.yOffset,rr,dr)):At.texSubImage2D(Ie,Kt,$e,pt,rr,dr,Pt,Wt,Jt)}var Ao=[];function Jn(){return Ao.pop()||new Xn}function Oa(de){de.needsFree&&W.freeType(de.data),Xn.call(de),Ao.push(de)}function _o(){wn.call(this),this.genMipmaps=!1,this.mipmapHint=Gc,this.mipmask=0,this.images=Array(16)}function Po(de,Ie,$e){var pt=de.images[0]=Jn();de.mipmask=1,pt.width=de.width=Ie,pt.height=de.height=$e,pt.channels=de.channels=4}function Jo(de,Ie){var $e=null;if(nh(Ie))$e=de.images[0]=Jn(),vn($e,de),Vn($e,Ie),de.mipmask=1;else if(Aa(de,Ie),Array.isArray(Ie.mipmap))for(var pt=Ie.mipmap,Kt=0;Kt<pt.length;++Kt)$e=de.images[Kt]=Jn(),vn($e,de),$e.width>>=Kt,$e.height>>=Kt,Vn($e,pt[Kt]),de.mipmask|=1<<Kt;else $e=de.images[0]=Jn(),vn($e,de),Vn($e,Ie),de.mipmask=1;vn(de,de.images[0]),de.compressed&&(de.internalformat===Eo||de.internalformat===fs||de.internalformat===Ql||de.internalformat)}function Yl(de,Ie){for(var $e=de.images,pt=0;pt<$e.length;++pt){if(!$e[pt])return;ma($e[pt],Ie,pt)}}var $c=[];function xs(){var de=$c.pop()||new _o;wn.call(de),de.mipmask=0;for(var Ie=0;Ie<16;++Ie)de.images[Ie]=null;return de}function Qc(de){for(var Ie=de.images,$e=0;$e<Ie.length;++$e)Ie[$e]&&Oa(Ie[$e]),Ie[$e]=null;$c.push(de)}function El(){this.minFilter=Al,this.magFilter=Al,this.wrapS=uf,this.wrapT=uf,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=Gc}function bc(de,Ie){if("min"in Ie){var $e=Ie.min;de.minFilter=yn[$e],ws.indexOf(de.minFilter)>=0&&!("faces"in Ie)&&(de.genMipmaps=!0)}if("mag"in Ie){var pt=Ie.mag;de.magFilter=Bn[pt]}var Kt=de.wrapS,ir=de.wrapT;if("wrap"in Ie){var Jt=Ie.wrap;typeof Jt=="string"?Kt=ir=On[Jt]:Array.isArray(Jt)&&(Kt=On[Jt[0]],ir=On[Jt[1]])}else{if("wrapS"in Ie){var vt=Ie.wrapS;Kt=On[vt]}if("wrapT"in Ie){var Pt=Ie.wrapT;ir=On[Pt]}}if(de.wrapS=Kt,de.wrapT=ir,"anisotropic"in Ie){var Wt=Ie.anisotropic;de.anisotropic=Ie.anisotropic}if("mipmap"in Ie){var rr=!1;switch(typeof Ie.mipmap){case"string":de.mipmapHint=cn[Ie.mipmap],de.genMipmaps=!0,rr=!0;break;case"boolean":rr=de.genMipmaps=Ie.mipmap;break;case"object":de.genMipmaps=!1,rr=!0;break;default:}rr&&!("min"in Ie)&&(de.minFilter=eu)}}function wc(de,Ie){At.texParameteri(Ie,rh,de.minFilter),At.texParameteri(Ie,cf,de.magFilter),At.texParameteri(Ie,ko,de.wrapS),At.texParameteri(Ie,Co,de.wrapT),Er.ext_texture_filter_anisotropic&&At.texParameteri(Ie,ss,de.anisotropic),de.genMipmaps&&(At.hint(Of,de.mipmapHint),At.generateMipmap(Ie))}var yf=0,Gl={},Fc=Wr.maxTextureUnits,ef=Array(Fc).map(function(){return null});function ls(de){wn.call(this),this.mipmask=0,this.internalformat=Sa,this.id=yf++,this.refCount=1,this.target=de,this.texture=At.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new El,Bi.profile&&(this.stats={size:0})}function _f(de){At.activeTexture(Cc),At.bindTexture(de.target,de.texture)}function ns(){var de=ef[0];de?At.bindTexture(de.target,de.texture):At.bindTexture(Ji,null)}function Y(de){var Ie=de.texture,$e=de.unit,pt=de.target;$e>=0&&(At.activeTexture(Cc+$e),At.bindTexture(pt,null),ef[$e]=null),At.deleteTexture(Ie),de.texture=null,de.params=null,de.pixels=null,de.refCount=0,delete Gl[de.id],Oi.textureCount--}e(ls.prototype,{bind:function(){var de=this;de.bindCount+=1;var Ie=de.unit;if(Ie<0){for(var $e=0;$e<Fc;++$e){var pt=ef[$e];if(pt){if(pt.bindCount>0)continue;pt.unit=-1}ef[$e]=de,Ie=$e;break}Ie>=Fc,Bi.profile&&Oi.maxTextureUnits<Ie+1&&(Oi.maxTextureUnits=Ie+1),de.unit=Ie,At.activeTexture(Cc+Ie),At.bindTexture(de.target,de.texture)}return Ie},unbind:function(){this.bindCount-=1},decRef:function(){--this.refCount<=0&&Y(this)}});function z(de,Ie){var $e=new ls(Ji);Gl[$e.id]=$e,Oi.textureCount++;function pt(Jt,vt){var Pt=$e.texInfo;El.call(Pt);var Wt=xs();return typeof Jt=="number"?typeof vt=="number"?Po(Wt,Jt|0,vt|0):Po(Wt,Jt|0,Jt|0):Jt?(bc(Pt,Jt),Jo(Wt,Jt)):Po(Wt,1,1),Pt.genMipmaps&&(Wt.mipmask=(Wt.width<<1)-1),$e.mipmask=Wt.mipmask,vn($e,Wt),$e.internalformat=Wt.internalformat,pt.width=Wt.width,pt.height=Wt.height,_f($e),Yl(Wt,Ji),wc(Pt,Ji),ns(),Qc(Wt),Bi.profile&&($e.stats.size=Wc($e.internalformat,$e.type,Wt.width,Wt.height,Pt.genMipmaps,!1)),pt.format=Ln[$e.internalformat],pt.type=Un[$e.type],pt.mag=gn[Pt.magFilter],pt.min=ca[Pt.minFilter],pt.wrapS=Kn[Pt.wrapS],pt.wrapT=Kn[Pt.wrapT],pt}function Kt(Jt,vt,Pt,Wt){var rr=vt|0,dr=Pt|0,pr=Wt|0,kr=Jn();return vn(kr,$e),kr.width=0,kr.height=0,Vn(kr,Jt),kr.width=kr.width||($e.width>>pr)-rr,kr.height=kr.height||($e.height>>pr)-dr,_f($e),ro(kr,Ji,rr,dr,pr),ns(),Oa(kr),pt}function ir(Jt,vt){var Pt=Jt|0,Wt=vt|0||Pt;if(Pt===$e.width&&Wt===$e.height)return pt;pt.width=$e.width=Pt,pt.height=$e.height=Wt,_f($e);for(var rr=0;$e.mipmask>>rr;++rr){var dr=Pt>>rr,pr=Wt>>rr;if(!dr||!pr)break;At.texImage2D(Ji,rr,$e.format,dr,pr,0,$e.format,$e.type,null)}return ns(),Bi.profile&&($e.stats.size=Wc($e.internalformat,$e.type,Pt,Wt,!1,!1)),pt}return pt(de,Ie),pt.subimage=Kt,pt.resize=ir,pt._reglType="texture2d",pt._texture=$e,Bi.profile&&(pt.stats=$e.stats),pt.destroy=function(){$e.decRef()},pt}function K(de,Ie,$e,pt,Kt,ir){var Jt=new ls(ua);Gl[Jt.id]=Jt,Oi.cubeCount++;var vt=new Array(6);function Pt(dr,pr,kr,Ar,gr,Cr){var cr,Gr=Jt.texInfo;for(El.call(Gr),cr=0;cr<6;++cr)vt[cr]=xs();if(typeof dr=="number"||!dr){var ei=dr|0||1;for(cr=0;cr<6;++cr)Po(vt[cr],ei,ei)}else if(typeof dr=="object")if(pr)Jo(vt[0],dr),Jo(vt[1],pr),Jo(vt[2],kr),Jo(vt[3],Ar),Jo(vt[4],gr),Jo(vt[5],Cr);else if(bc(Gr,dr),Aa(Jt,dr),"faces"in dr){var yi=dr.faces;for(cr=0;cr<6;++cr)vn(vt[cr],Jt),Jo(vt[cr],yi[cr])}else for(cr=0;cr<6;++cr)Jo(vt[cr],dr);for(vn(Jt,vt[0]),Gr.genMipmaps?Jt.mipmask=(vt[0].width<<1)-1:Jt.mipmask=vt[0].mipmask,Jt.internalformat=vt[0].internalformat,Pt.width=vt[0].width,Pt.height=vt[0].height,_f(Jt),cr=0;cr<6;++cr)Yl(vt[cr],Fn+cr);for(wc(Gr,ua),ns(),Bi.profile&&(Jt.stats.size=Wc(Jt.internalformat,Jt.type,Pt.width,Pt.height,Gr.genMipmaps,!0)),Pt.format=Ln[Jt.internalformat],Pt.type=Un[Jt.type],Pt.mag=gn[Gr.magFilter],Pt.min=ca[Gr.minFilter],Pt.wrapS=Kn[Gr.wrapS],Pt.wrapT=Kn[Gr.wrapT],cr=0;cr<6;++cr)Qc(vt[cr]);return Pt}function Wt(dr,pr,kr,Ar,gr){var Cr=kr|0,cr=Ar|0,Gr=gr|0,ei=Jn();return vn(ei,Jt),ei.width=0,ei.height=0,Vn(ei,pr),ei.width=ei.width||(Jt.width>>Gr)-Cr,ei.height=ei.height||(Jt.height>>Gr)-cr,_f(Jt),ro(ei,Fn+dr,Cr,cr,Gr),ns(),Oa(ei),Pt}function rr(dr){var pr=dr|0;if(pr!==Jt.width){Pt.width=Jt.width=pr,Pt.height=Jt.height=pr,_f(Jt);for(var kr=0;kr<6;++kr)for(var Ar=0;Jt.mipmask>>Ar;++Ar)At.texImage2D(Fn+kr,Ar,Jt.format,pr>>Ar,pr>>Ar,0,Jt.format,Jt.type,null);return ns(),Bi.profile&&(Jt.stats.size=Wc(Jt.internalformat,Jt.type,Pt.width,Pt.height,!1,!0)),Pt}}return Pt(de,Ie,$e,pt,Kt,ir),Pt.subimage=Wt,Pt.resize=rr,Pt._reglType="textureCube",Pt._texture=Jt,Bi.profile&&(Pt.stats=Jt.stats),Pt.destroy=function(){Jt.decRef()},Pt}function O(){for(var de=0;de<Fc;++de)At.activeTexture(Cc+de),At.bindTexture(Ji,null),ef[de]=null;ut(Gl).forEach(Y),Oi.cubeCount=0,Oi.textureCount=0}Bi.profile&&(Oi.getTotalTextureSize=function(){var de=0;return Object.keys(Gl).forEach(function(Ie){de+=Gl[Ie].stats.size}),de});function $(){for(var de=0;de<Fc;++de){var Ie=ef[de];Ie&&(Ie.bindCount=0,Ie.unit=-1,ef[de]=null)}ut(Gl).forEach(function($e){$e.texture=At.createTexture(),At.bindTexture($e.target,$e.texture);for(var pt=0;pt<32;++pt)if($e.mipmask&1<<pt)if($e.target===Ji)At.texImage2D(Ji,pt,$e.internalformat,$e.width>>pt,$e.height>>pt,0,$e.internalformat,$e.type,null);else for(var Kt=0;Kt<6;++Kt)At.texImage2D(Fn+Kt,pt,$e.internalformat,$e.width>>pt,$e.height>>pt,0,$e.internalformat,$e.type,null);wc($e.texInfo,$e.target)})}function pe(){for(var de=0;de<Fc;++de){var Ie=ef[de];Ie&&(Ie.bindCount=0,Ie.unit=-1,ef[de]=null),At.activeTexture(Cc+de),At.bindTexture(Ji,null),At.bindTexture(ua,null)}}return{create2D:z,createCube:K,clear:O,getTexture:function(de){return null},restore:$,refresh:pe}}var Cu=36161,Nf=32854,Zc=32855,ds=36194,Ch=33189,Bd=36168,Jh=34041,Cf=35907,pd=34836,Lu=34842,$h=34843,tu=[];tu[Nf]=2,tu[Zc]=2,tu[ds]=2,tu[Ch]=2,tu[Bd]=1,tu[Jh]=4,tu[Cf]=4,tu[pd]=16,tu[Lu]=8,tu[$h]=6;function Pu(At,Er,Wr){return tu[At]*Er*Wr}var Lc=function(At,Er,Wr,wi,Ui){var Oi={rgba4:Nf,rgb565:ds,"rgb5 a1":Zc,depth:Ch,stencil:Bd,"depth stencil":Jh};Er.ext_srgb&&(Oi.srgba=Cf),Er.ext_color_buffer_half_float&&(Oi.rgba16f=Lu,Oi.rgb16f=$h),Er.webgl_color_buffer_float&&(Oi.rgba32f=pd);var Bi=[];Object.keys(Oi).forEach(function(Dn){var fn=Oi[Dn];Bi[fn]=Dn});var cn=0,On={};function Bn(Dn){this.id=cn++,this.refCount=1,this.renderbuffer=Dn,this.format=Nf,this.width=0,this.height=0,Ui.profile&&(this.stats={size:0})}Bn.prototype.decRef=function(){--this.refCount<=0&&yn(this)};function yn(Dn){var fn=Dn.renderbuffer;At.bindRenderbuffer(Cu,null),At.deleteRenderbuffer(fn),Dn.renderbuffer=null,Dn.refCount=0,delete On[Dn.id],wi.renderbufferCount--}function to(Dn,fn){var Ai=new Bn(At.createRenderbuffer());On[Ai.id]=Ai,wi.renderbufferCount++;function ji(Un,gn){var ca=0,Kn=0,Za=Nf;if(typeof Un=="object"&&Un){var wn=Un;if("shape"in wn){var vn=wn.shape;ca=vn[0]|0,Kn=vn[1]|0}else"radius"in wn&&(ca=Kn=wn.radius|0),"width"in wn&&(ca=wn.width|0),"height"in wn&&(Kn=wn.height|0);"format"in wn&&(Za=Oi[wn.format])}else typeof Un=="number"?(ca=Un|0,typeof gn=="number"?Kn=gn|0:Kn=ca):Un||(ca=Kn=1);if(!(ca===Ai.width&&Kn===Ai.height&&Za===Ai.format))return ji.width=Ai.width=ca,ji.height=Ai.height=Kn,Ai.format=Za,At.bindRenderbuffer(Cu,Ai.renderbuffer),At.renderbufferStorage(Cu,Za,ca,Kn),Ui.profile&&(Ai.stats.size=Pu(Ai.format,Ai.width,Ai.height)),ji.format=Bi[Ai.format],ji}function Ln(Un,gn){var ca=Un|0,Kn=gn|0||ca;return ca===Ai.width&&Kn===Ai.height||(ji.width=Ai.width=ca,ji.height=Ai.height=Kn,At.bindRenderbuffer(Cu,Ai.renderbuffer),At.renderbufferStorage(Cu,Ai.format,ca,Kn),Ui.profile&&(Ai.stats.size=Pu(Ai.format,Ai.width,Ai.height))),ji}return ji(Dn,fn),ji.resize=Ln,ji._reglType="renderbuffer",ji._renderbuffer=Ai,Ui.profile&&(ji.stats=Ai.stats),ji.destroy=function(){Ai.decRef()},ji}Ui.profile&&(wi.getTotalRenderbufferSize=function(){var Dn=0;return Object.keys(On).forEach(function(fn){Dn+=On[fn].stats.size}),Dn});function Rn(){ut(On).forEach(function(Dn){Dn.renderbuffer=At.createRenderbuffer(),At.bindRenderbuffer(Cu,Dn.renderbuffer),At.renderbufferStorage(Cu,Dn.format,Dn.width,Dn.height)}),At.bindRenderbuffer(Cu,null)}return{create:to,clear:function(){ut(On).forEach(yn)},restore:Rn}},fl=36160,Xc=36161,ic=3553,yu=34069,Qs=36064,Qh=36096,gd=36128,Gu=33306,Pc=36053,vc=36193,sv=5121,Lf=5126,Uf=6407,Iu=6408,oh=[];oh[Iu]=4,oh[Uf]=3;var ru=[];ru[sv]=1,ru[Lf]=4,ru[vc]=2;function vf(At,Er,Wr,wi,Ui,Oi){var Bi={cur:null,next:null,dirty:!1,setFBO:null},cn=["rgba"],On=["rgba4","rgb565","rgb5 a1"];Er.ext_srgb&&On.push("srgba"),Er.ext_color_buffer_half_float&&On.push("rgba16f","rgb16f"),Er.webgl_color_buffer_float&&On.push("rgba32f");var Bn=["uint8"];Er.oes_texture_half_float&&Bn.push("half float","float16"),Er.oes_texture_float&&Bn.push("float","float32");function yn(Xn,Vn,ma){this.target=Xn,this.texture=Vn,this.renderbuffer=ma;var ro=0,Ao=0;Vn?(ro=Vn.width,Ao=Vn.height):ma&&(ro=ma.width,Ao=ma.height),this.width=ro,this.height=Ao}function to(Xn){Xn&&(Xn.texture&&Xn.texture._texture.decRef(),Xn.renderbuffer&&Xn.renderbuffer._renderbuffer.decRef())}function Rn(Xn,Vn,ma){if(Xn)if(Xn.texture){var ro=Xn.texture._texture,Ao=Math.max(1,ro.width),Jn=Math.max(1,ro.height);ro.refCount+=1}else{var Oa=Xn.renderbuffer._renderbuffer;Oa.refCount+=1}}function Dn(Xn,Vn){Vn&&(Vn.texture?At.framebufferTexture2D(fl,Xn,Vn.target,Vn.texture._texture.texture,0):At.framebufferRenderbuffer(fl,Xn,Xc,Vn.renderbuffer._renderbuffer.renderbuffer))}function fn(Xn){var Vn=ic,ma=null,ro=null,Ao=Xn;typeof Xn=="object"&&(Ao=Xn.data,"target"in Xn&&(Vn=Xn.target|0));var Jn=Ao._reglType;return Jn==="texture2d"||Jn==="textureCube"?ma=Ao:Jn==="renderbuffer"&&(ro=Ao,Vn=Xc),new yn(Vn,ma,ro)}function Ai(Xn,Vn,ma,ro,Ao){if(ma){var Jn=wi.create2D({width:Xn,height:Vn,format:ro,type:Ao});return Jn._texture.refCount=0,new yn(ic,Jn,null)}else{var Oa=Ui.create({width:Xn,height:Vn,format:ro});return Oa._renderbuffer.refCount=0,new yn(Xc,null,Oa)}}function ji(Xn){return Xn&&(Xn.texture||Xn.renderbuffer)}function Ln(Xn,Vn,ma){Xn&&(Xn.texture?Xn.texture.resize(Vn,ma):Xn.renderbuffer&&Xn.renderbuffer.resize(Vn,ma),Xn.width=Vn,Xn.height=ma)}var Un=0,gn={};function ca(){this.id=Un++,gn[this.id]=this,this.framebuffer=At.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function Kn(Xn){Xn.colorAttachments.forEach(to),to(Xn.depthAttachment),to(Xn.stencilAttachment),to(Xn.depthStencilAttachment)}function Za(Xn){var Vn=Xn.framebuffer;At.deleteFramebuffer(Vn),Xn.framebuffer=null,Oi.framebufferCount--,delete gn[Xn.id]}function wn(Xn){var Vn;At.bindFramebuffer(fl,Xn.framebuffer);var ma=Xn.colorAttachments;for(Vn=0;Vn<ma.length;++Vn)Dn(Qs+Vn,ma[Vn]);for(Vn=ma.length;Vn<Wr.maxColorAttachments;++Vn)At.framebufferTexture2D(fl,Qs+Vn,ic,null,0);At.framebufferTexture2D(fl,Gu,ic,null,0),At.framebufferTexture2D(fl,Qh,ic,null,0),At.framebufferTexture2D(fl,gd,ic,null,0),Dn(Qh,Xn.depthAttachment),Dn(gd,Xn.stencilAttachment),Dn(Gu,Xn.depthStencilAttachment);var ro=At.checkFramebufferStatus(fl);At.isContextLost(),At.bindFramebuffer(fl,Bi.next?Bi.next.framebuffer:null),Bi.cur=Bi.next,At.getError()}function vn(Xn,Vn){var ma=new ca;Oi.framebufferCount++;function ro(Jn,Oa){var _o,Po=0,Jo=0,Yl=!0,$c=!0,xs=null,Qc=!0,El="rgba",bc="uint8",wc=1,yf=null,Gl=null,Fc=null,ef=!1;if(typeof Jn=="number")Po=Jn|0,Jo=Oa|0||Po;else if(!Jn)Po=Jo=1;else{var ls=Jn;if("shape"in ls){var _f=ls.shape;Po=_f[0],Jo=_f[1]}else"radius"in ls&&(Po=Jo=ls.radius),"width"in ls&&(Po=ls.width),"height"in ls&&(Jo=ls.height);("color"in ls||"colors"in ls)&&(xs=ls.color||ls.colors,Array.isArray(xs)),xs||("colorCount"in ls&&(wc=ls.colorCount|0),"colorTexture"in ls&&(Qc=!!ls.colorTexture,El="rgba4"),"colorType"in ls&&(bc=ls.colorType,Qc||(bc==="half float"||bc==="float16"?El="rgba16f":(bc==="float"||bc==="float32")&&(El="rgba32f"))),"colorFormat"in ls&&(El=ls.colorFormat,cn.indexOf(El)>=0?Qc=!0:On.indexOf(El)>=0&&(Qc=!1))),("depthTexture"in ls||"depthStencilTexture"in ls)&&(ef=!!(ls.depthTexture||ls.depthStencilTexture)),"depth"in ls&&(typeof ls.depth=="boolean"?Yl=ls.depth:(yf=ls.depth,$c=!1)),"stencil"in ls&&(typeof ls.stencil=="boolean"?$c=ls.stencil:(Gl=ls.stencil,Yl=!1)),"depthStencil"in ls&&(typeof ls.depthStencil=="boolean"?Yl=$c=ls.depthStencil:(Fc=ls.depthStencil,Yl=!1,$c=!1))}var ns=null,Y=null,z=null,K=null;if(Array.isArray(xs))ns=xs.map(fn);else if(xs)ns=[fn(xs)];else for(ns=new Array(wc),_o=0;_o<wc;++_o)ns[_o]=Ai(Po,Jo,Qc,El,bc);Po=Po||ns[0].width,Jo=Jo||ns[0].height,yf?Y=fn(yf):Yl&&!$c&&(Y=Ai(Po,Jo,ef,"depth","uint32")),Gl?z=fn(Gl):$c&&!Yl&&(z=Ai(Po,Jo,!1,"stencil","uint8")),Fc?K=fn(Fc):!yf&&!Gl&&$c&&Yl&&(K=Ai(Po,Jo,ef,"depth stencil","depth stencil"));var O=null;for(_o=0;_o<ns.length;++_o)if(Rn(ns[_o],Po,Jo),ns[_o]&&ns[_o].texture){var $=oh[ns[_o].texture._texture.format]*ru[ns[_o].texture._texture.type];O===null&&(O=$)}return Rn(Y,Po,Jo),Rn(z,Po,Jo),Rn(K,Po,Jo),Kn(ma),ma.width=Po,ma.height=Jo,ma.colorAttachments=ns,ma.depthAttachment=Y,ma.stencilAttachment=z,ma.depthStencilAttachment=K,ro.color=ns.map(ji),ro.depth=ji(Y),ro.stencil=ji(z),ro.depthStencil=ji(K),ro.width=ma.width,ro.height=ma.height,wn(ma),ro}function Ao(Jn,Oa){var _o=Math.max(Jn|0,1),Po=Math.max(Oa|0||_o,1);if(_o===ma.width&&Po===ma.height)return ro;for(var Jo=ma.colorAttachments,Yl=0;Yl<Jo.length;++Yl)Ln(Jo[Yl],_o,Po);return Ln(ma.depthAttachment,_o,Po),Ln(ma.stencilAttachment,_o,Po),Ln(ma.depthStencilAttachment,_o,Po),ma.width=ro.width=_o,ma.height=ro.height=Po,wn(ma),ro}return ro(Xn,Vn),e(ro,{resize:Ao,_reglType:"framebuffer",_framebuffer:ma,destroy:function(){Za(ma),Kn(ma)},use:function(Jn){Bi.setFBO({framebuffer:ro},Jn)}})}function Aa(Xn){var Vn=Array(6);function ma(Ao){var Jn,Oa={color:null},_o=0,Po=null,Jo="rgba",Yl="uint8",$c=1;if(typeof Ao=="number")_o=Ao|0;else if(!Ao)_o=1;else{var xs=Ao;if("shape"in xs){var Qc=xs.shape;_o=Qc[0]}else"radius"in xs&&(_o=xs.radius|0),"width"in xs?(_o=xs.width|0,"height"in xs):"height"in xs&&(_o=xs.height|0);("color"in xs||"colors"in xs)&&(Po=xs.color||xs.colors,Array.isArray(Po)),Po||("colorCount"in xs&&($c=xs.colorCount|0),"colorType"in xs&&(Yl=xs.colorType),"colorFormat"in xs&&(Jo=xs.colorFormat)),"depth"in xs&&(Oa.depth=xs.depth),"stencil"in xs&&(Oa.stencil=xs.stencil),"depthStencil"in xs&&(Oa.depthStencil=xs.depthStencil)}var El;if(Po)if(Array.isArray(Po))for(El=[],Jn=0;Jn<Po.length;++Jn)El[Jn]=Po[Jn];else El=[Po];else{El=Array($c);var bc={radius:_o,format:Jo,type:Yl};for(Jn=0;Jn<$c;++Jn)El[Jn]=wi.createCube(bc)}for(Oa.color=Array(El.length),Jn=0;Jn<El.length;++Jn){var wc=El[Jn];_o=_o||wc.width,Oa.color[Jn]={target:yu,data:El[Jn]}}for(Jn=0;Jn<6;++Jn){for(var yf=0;yf<El.length;++yf)Oa.color[yf].target=yu+Jn;Jn>0&&(Oa.depth=Vn[0].depth,Oa.stencil=Vn[0].stencil,Oa.depthStencil=Vn[0].depthStencil),Vn[Jn]?Vn[Jn](Oa):Vn[Jn]=vn(Oa)}return e(ma,{width:_o,height:_o,color:El})}function ro(Ao){var Jn,Oa=Ao|0;if(Oa===ma.width)return ma;var _o=ma.color;for(Jn=0;Jn<_o.length;++Jn)_o[Jn].resize(Oa);for(Jn=0;Jn<6;++Jn)Vn[Jn].resize(Oa);return ma.width=ma.height=Oa,ma}return ma(Xn),e(ma,{faces:Vn,resize:ro,_reglType:"framebufferCube",destroy:function(){Vn.forEach(function(Ao){Ao.destroy()})}})}function aa(){Bi.cur=null,Bi.next=null,Bi.dirty=!0,ut(gn).forEach(function(Xn){Xn.framebuffer=At.createFramebuffer(),wn(Xn)})}return e(Bi,{getFramebuffer:function(Xn){if(typeof Xn=="function"&&Xn._reglType==="framebuffer"){var Vn=Xn._framebuffer;if(Vn instanceof ca)return Vn}return null},create:vn,createCube:Aa,clear:function(){ut(gn).forEach(Za)},restore:aa})}var md=5126,sh=34962,Fs=34963;function _u(){this.state=0,this.x=0,this.y=0,this.z=0,this.w=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=md,this.offset=0,this.stride=0,this.divisor=0}function xu(At,Er,Wr,wi,Ui,Oi,Bi){for(var cn=Wr.maxAttributes,On=new Array(cn),Bn=0;Bn<cn;++Bn)On[Bn]=new _u;var yn=0,to={},Rn={Record:_u,scope:{},state:On,currentVAO:null,targetVAO:null,restore:fn()?Kn:function(){},createVAO:Za,getVAO:ji,destroyBuffer:Dn,setVAO:fn()?Ln:Un,clear:fn()?gn:function(){}};function Dn(wn){for(var vn=0;vn<On.length;++vn){var Aa=On[vn];Aa.buffer===wn&&(At.disableVertexAttribArray(vn),Aa.buffer=null)}}function fn(){return Er.oes_vertex_array_object}function Ai(){return Er.angle_instanced_arrays}function ji(wn){return typeof wn=="function"&&wn._vao?wn._vao:null}function Ln(wn){if(wn!==Rn.currentVAO){var vn=fn();wn?vn.bindVertexArrayOES(wn.vao):vn.bindVertexArrayOES(null),Rn.currentVAO=wn}}function Un(wn){if(wn!==Rn.currentVAO){if(wn)wn.bindAttrs();else{for(var vn=Ai(),Aa=0;Aa<On.length;++Aa){var aa=On[Aa];aa.buffer?(At.enableVertexAttribArray(Aa),aa.buffer.bind(),At.vertexAttribPointer(Aa,aa.size,aa.type,aa.normalized,aa.stride,aa.offfset),vn&&aa.divisor&&vn.vertexAttribDivisorANGLE(Aa,aa.divisor)):(At.disableVertexAttribArray(Aa),At.vertexAttrib4f(Aa,aa.x,aa.y,aa.z,aa.w))}Bi.elements?At.bindBuffer(Fs,Bi.elements.buffer.buffer):At.bindBuffer(Fs,null)}Rn.currentVAO=wn}}function gn(){ut(to).forEach(function(wn){wn.destroy()})}function ca(){this.id=++yn,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var wn=fn();wn?this.vao=wn.createVertexArrayOES():this.vao=null,to[this.id]=this,this.buffers=[]}ca.prototype.bindAttrs=function(){for(var wn=Ai(),vn=this.attributes,Aa=0;Aa<vn.length;++Aa){var aa=vn[Aa];aa.buffer?(At.enableVertexAttribArray(Aa),At.bindBuffer(sh,aa.buffer.buffer),At.vertexAttribPointer(Aa,aa.size,aa.type,aa.normalized,aa.stride,aa.offset),wn&&aa.divisor&&wn.vertexAttribDivisorANGLE(Aa,aa.divisor)):(At.disableVertexAttribArray(Aa),At.vertexAttrib4f(Aa,aa.x,aa.y,aa.z,aa.w))}for(var Xn=vn.length;Xn<cn;++Xn)At.disableVertexAttribArray(Xn);var Vn=Oi.getElements(this.elements);Vn?At.bindBuffer(Fs,Vn.buffer.buffer):At.bindBuffer(Fs,null)},ca.prototype.refresh=function(){var wn=fn();wn&&(wn.bindVertexArrayOES(this.vao),this.bindAttrs(),Rn.currentVAO=null,wn.bindVertexArrayOES(null))},ca.prototype.destroy=function(){if(this.vao){var wn=fn();this===Rn.currentVAO&&(Rn.currentVAO=null,wn.bindVertexArrayOES(null)),wn.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),to[this.id]&&(delete to[this.id],wi.vaoCount-=1)};function Kn(){var wn=fn();wn&&ut(to).forEach(function(vn){vn.refresh()})}function Za(wn){var vn=new ca;wi.vaoCount+=1;function Aa(aa){var Xn;if(Array.isArray(aa))Xn=aa,vn.elements&&vn.ownsElements&&vn.elements.destroy(),vn.elements=null,vn.ownsElements=!1,vn.offset=0,vn.count=0,vn.instances=-1,vn.primitive=4;else{if(aa.elements){var Vn=aa.elements;vn.ownsElements?typeof Vn=="function"&&Vn._reglType==="elements"?(vn.elements.destroy(),vn.ownsElements=!1):(vn.elements(Vn),vn.ownsElements=!1):Oi.getElements(aa.elements)?(vn.elements=aa.elements,vn.ownsElements=!1):(vn.elements=Oi.create(aa.elements),vn.ownsElements=!0)}else vn.elements=null,vn.ownsElements=!1;Xn=aa.attributes,vn.offset=0,vn.count=-1,vn.instances=-1,vn.primitive=4,vn.elements&&(vn.count=vn.elements._elements.vertCount,vn.primitive=vn.elements._elements.primType),"offset"in aa&&(vn.offset=aa.offset|0),"count"in aa&&(vn.count=aa.count|0),"instances"in aa&&(vn.instances=aa.instances|0),"primitive"in aa&&(vn.primitive=Ki[aa.primitive])}var ma={},ro=vn.attributes;ro.length=Xn.length;for(var Ao=0;Ao<Xn.length;++Ao){var Jn=Xn[Ao],Oa=ro[Ao]=new _u,_o=Jn.data||Jn;if(Array.isArray(_o)||Or(_o)||Nr(_o)){var Po;vn.buffers[Ao]&&(Po=vn.buffers[Ao],Or(_o)&&Po._buffer.byteLength>=_o.byteLength?Po.subdata(_o):(Po.destroy(),vn.buffers[Ao]=null)),vn.buffers[Ao]||(Po=vn.buffers[Ao]=Ui.create(Jn,sh,!1,!0)),Oa.buffer=Ui.getBuffer(Po),Oa.size=Oa.buffer.dimension|0,Oa.normalized=!1,Oa.type=Oa.buffer.dtype,Oa.offset=0,Oa.stride=0,Oa.divisor=0,Oa.state=1,ma[Ao]=1}else Ui.getBuffer(Jn)?(Oa.buffer=Ui.getBuffer(Jn),Oa.size=Oa.buffer.dimension|0,Oa.normalized=!1,Oa.type=Oa.buffer.dtype,Oa.offset=0,Oa.stride=0,Oa.divisor=0,Oa.state=1):Ui.getBuffer(Jn.buffer)?(Oa.buffer=Ui.getBuffer(Jn.buffer),Oa.size=(+Jn.size||Oa.buffer.dimension)|0,Oa.normalized=!!Jn.normalized||!1,"type"in Jn?Oa.type=bi[Jn.type]:Oa.type=Oa.buffer.dtype,Oa.offset=(Jn.offset||0)|0,Oa.stride=(Jn.stride||0)|0,Oa.divisor=(Jn.divisor||0)|0,Oa.state=1):"x"in Jn&&(Oa.x=+Jn.x||0,Oa.y=+Jn.y||0,Oa.z=+Jn.z||0,Oa.w=+Jn.w||0,Oa.state=2)}for(var Jo=0;Jo<vn.buffers.length;++Jo)!ma[Jo]&&vn.buffers[Jo]&&(vn.buffers[Jo].destroy(),vn.buffers[Jo]=null);return vn.refresh(),Aa}return Aa.destroy=function(){for(var aa=0;aa<vn.buffers.length;++aa)vn.buffers[aa]&&vn.buffers[aa].destroy();vn.buffers.length=0,vn.ownsElements&&(vn.elements.destroy(),vn.elements=null,vn.ownsElements=!1),vn.destroy()},Aa._vao=vn,Aa._reglType="vao",Aa(wn)}return Rn}var Lh=35632,Is=35633,Pf=35718,Ic=35721;function ju(At,Er,Wr,wi){var Ui={},Oi={};function Bi(Ai,ji,Ln,Un){this.name=Ai,this.id=ji,this.location=Ln,this.info=Un}function cn(Ai,ji){for(var Ln=0;Ln<Ai.length;++Ln)if(Ai[Ln].id===ji.id){Ai[Ln].location=ji.location;return}Ai.push(ji)}function On(Ai,ji,Ln){var Un=Ai===Lh?Ui:Oi,gn=Un[ji];if(!gn){var ca=Er.str(ji);gn=At.createShader(Ai),At.shaderSource(gn,ca),At.compileShader(gn),Un[ji]=gn}return gn}var Bn={},yn=[],to=0;function Rn(Ai,ji){this.id=to++,this.fragId=Ai,this.vertId=ji,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,wi.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function Dn(Ai,ji,Ln){var Un,gn,ca=On(Lh,Ai.fragId),Kn=On(Is,Ai.vertId),Za=Ai.program=At.createProgram();if(At.attachShader(Za,ca),At.attachShader(Za,Kn),Ln)for(Un=0;Un<Ln.length;++Un){var wn=Ln[Un];At.bindAttribLocation(Za,wn[0],wn[1])}At.linkProgram(Za);var vn=At.getProgramParameter(Za,Pf);wi.profile&&(Ai.stats.uniformsCount=vn);var Aa=Ai.uniforms;for(Un=0;Un<vn;++Un)if(gn=At.getActiveUniform(Za,Un),gn)if(gn.size>1)for(var aa=0;aa<gn.size;++aa){var Xn=gn.name.replace("[0]","["+aa+"]");cn(Aa,new Bi(Xn,Er.id(Xn),At.getUniformLocation(Za,Xn),gn))}else cn(Aa,new Bi(gn.name,Er.id(gn.name),At.getUniformLocation(Za,gn.name),gn));var Vn=At.getProgramParameter(Za,Ic);wi.profile&&(Ai.stats.attributesCount=Vn);var ma=Ai.attributes;for(Un=0;Un<Vn;++Un)gn=At.getActiveAttrib(Za,Un),gn&&cn(ma,new Bi(gn.name,Er.id(gn.name),At.getAttribLocation(Za,gn.name),gn))}wi.profile&&(Wr.getMaxUniformsCount=function(){var Ai=0;return yn.forEach(function(ji){ji.stats.uniformsCount>Ai&&(Ai=ji.stats.uniformsCount)}),Ai},Wr.getMaxAttributesCount=function(){var Ai=0;return yn.forEach(function(ji){ji.stats.attributesCount>Ai&&(Ai=ji.stats.attributesCount)}),Ai});function fn(){Ui={},Oi={};for(var Ai=0;Ai<yn.length;++Ai)Dn(yn[Ai],null,yn[Ai].attributes.map(function(ji){return[ji.location,ji.name]}))}return{clear:function(){var Ai=At.deleteShader.bind(At);ut(Ui).forEach(Ai),Ui={},ut(Oi).forEach(Ai),Oi={},yn.forEach(function(ji){At.deleteProgram(ji.program)}),yn.length=0,Bn={},Wr.shaderCount=0},program:function(Ai,ji,Ln,Un){var gn=Bn[ji];gn||(gn=Bn[ji]={});var ca=gn[Ai];if(ca&&(ca.refCount++,!Un))return ca;var Kn=new Rn(ji,Ai);return Wr.shaderCount++,Dn(Kn,Ln,Un),ca||(gn[Ai]=Kn),yn.push(Kn),e(Kn,{destroy:function(){if(Kn.refCount--,Kn.refCount<=0){At.deleteProgram(Kn.program);var Za=yn.indexOf(Kn);yn.splice(Za,1),Wr.shaderCount--}gn[Kn.vertId].refCount<=0&&(At.deleteShader(Oi[Kn.vertId]),delete Oi[Kn.vertId],delete Bn[Kn.fragId][Kn.vertId]),Object.keys(Bn[Kn.fragId]).length||(At.deleteShader(Ui[Kn.fragId]),delete Ui[Kn.fragId],delete Bn[Kn.fragId])}})},restore:fn,shader:On,frag:-1,vert:-1}}var Vf=6408,pc=5121,pf=3333,Ph=5126;function Dl(At,Er,Wr,wi,Ui,Oi,Bi){function cn(yn){var to;Er.next===null?to=pc:to=Er.next.colorAttachments[0].texture._texture.type;var Rn=0,Dn=0,fn=wi.framebufferWidth,Ai=wi.framebufferHeight,ji=null;Or(yn)?ji=yn:yn&&(Rn=yn.x|0,Dn=yn.y|0,fn=(yn.width||wi.framebufferWidth-Rn)|0,Ai=(yn.height||wi.framebufferHeight-Dn)|0,ji=yn.data||null),Wr();var Ln=fn*Ai*4;return ji||(to===pc?ji=new Uint8Array(Ln):to===Ph&&(ji=ji||new Float32Array(Ln))),At.pixelStorei(pf,4),At.readPixels(Rn,Dn,fn,Ai,Vf,to,ji),ji}function On(yn){var to;return Er.setFBO({framebuffer:yn.framebuffer},function(){to=cn(yn)}),to}function Bn(yn){return!yn||!("framebuffer"in yn)?cn(yn):On(yn)}return Bn}var Ih=0,Wu="";function Rc(At){return iu(gc(nc(At)))}function gc(At){return gt(Ti(gf(At),At.length*8))}function hl(At,Er){var Wr=gf(At);Wr.length>16&&(Wr=Ti(Wr,At.length*8));for(var wi=Array(16),Ui=Array(16),Oi=0;Oi<16;Oi++)wi[Oi]=Wr[Oi]^909522486,Ui[Oi]=Wr[Oi]^1549556828;var Bi=Ti(wi.concat(gf(Er)),512+Er.length*8);return gt(Ti(Ui.concat(Bi),768))}function iu(At){for(var Er=Ih?"0123456789ABCDEF":"0123456789abcdef",Wr="",wi,Ui=0;Ui<At.length;Ui++)wi=At.charCodeAt(Ui),Wr+=Er.charAt(wi>>>4&15)+Er.charAt(wi&15);return Wr}function mc(At){for(var Er="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Wr="",wi=At.length,Ui=0;Ui<wi;Ui+=3)for(var Oi=At.charCodeAt(Ui)<<16|(Ui+1<wi?At.charCodeAt(Ui+1)<<8:0)|(Ui+2<wi?At.charCodeAt(Ui+2):0),Bi=0;Bi<4;Bi++)Ui*8+Bi*6>At.length*8?Wr+=Wu:Wr+=Er.charAt(Oi>>>6*(3-Bi)&63);return Wr}function Yc(At,Er){var Wr=Er.length,wi=Array(),Ui,Oi,Bi,cn,On=Array(Math.ceil(At.length/2));for(Ui=0;Ui<On.length;Ui++)On[Ui]=At.charCodeAt(Ui*2)<<8|At.charCodeAt(Ui*2+1);for(;On.length>0;){for(cn=Array(),Bi=0,Ui=0;Ui<On.length;Ui++)Bi=(Bi<<16)+On[Ui],Oi=Math.floor(Bi/Wr),Bi-=Oi*Wr,(cn.length>0||Oi>0)&&(cn[cn.length]=Oi);wi[wi.length]=Bi,On=cn}var Bn="";for(Ui=wi.length-1;Ui>=0;Ui--)Bn+=Er.charAt(wi[Ui]);var yn=Math.ceil(At.length*8/(Math.log(Er.length)/Math.log(2)));for(Ui=Bn.length;Ui<yn;Ui++)Bn=Er[0]+Bn;return Bn}function nc(At){for(var Er="",Wr=-1,wi,Ui;++Wr<At.length;)wi=At.charCodeAt(Wr),Ui=Wr+1<At.length?At.charCodeAt(Wr+1):0,55296<=wi&&wi<=56319&&56320<=Ui&&Ui<=57343&&(wi=65536+((wi&1023)<<10)+(Ui&1023),Wr++),wi<=127?Er+=String.fromCharCode(wi):wi<=2047?Er+=String.fromCharCode(192|wi>>>6&31,128|wi&63):wi<=65535?Er+=String.fromCharCode(224|wi>>>12&15,128|wi>>>6&63,128|wi&63):wi<=2097151&&(Er+=String.fromCharCode(240|wi>>>18&7,128|wi>>>12&63,128|wi>>>6&63,128|wi&63));return Er}function gf(At){for(var Er=Array(At.length>>2),Wr=0;Wr<Er.length;Wr++)Er[Wr]=0;for(var Wr=0;Wr<At.length*8;Wr+=8)Er[Wr>>5]|=(At.charCodeAt(Wr/8)&255)<<24-Wr%32;return Er}function gt(At){for(var Er="",Wr=0;Wr<At.length*32;Wr+=8)Er+=String.fromCharCode(At[Wr>>5]>>>24-Wr%32&255);return Er}function Bt(At,Er){return At>>>Er|At<<32-Er}function wr(At,Er){return At>>>Er}function vr(At,Er,Wr){return At&Er^~At&Wr}function Ur(At,Er,Wr){return At&Er^At&Wr^Er&Wr}function fi(At){return Bt(At,2)^Bt(At,13)^Bt(At,22)}function xi(At){return Bt(At,6)^Bt(At,11)^Bt(At,25)}function Fi(At){return Bt(At,7)^Bt(At,18)^wr(At,3)}function Xi(At){return Bt(At,17)^Bt(At,19)^wr(At,10)}var hn=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function Ti(At,Er){var Wr=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),wi=new Array(64),Ui,Oi,Bi,cn,On,Bn,yn,to,Rn,Dn,fn,Ai;for(At[Er>>5]|=128<<24-Er%32,At[(Er+64>>9<<4)+15]=Er,Rn=0;Rn<At.length;Rn+=16){for(Ui=Wr[0],Oi=Wr[1],Bi=Wr[2],cn=Wr[3],On=Wr[4],Bn=Wr[5],yn=Wr[6],to=Wr[7],Dn=0;Dn<64;Dn++)Dn<16?wi[Dn]=At[Dn+Rn]:wi[Dn]=qi(qi(qi(Xi(wi[Dn-2]),wi[Dn-7]),Fi(wi[Dn-15])),wi[Dn-16]),fn=qi(qi(qi(qi(to,xi(On)),vr(On,Bn,yn)),hn[Dn]),wi[Dn]),Ai=qi(fi(Ui),Ur(Ui,Oi,Bi)),to=yn,yn=Bn,Bn=On,On=qi(cn,fn),cn=Bi,Bi=Oi,Oi=Ui,Ui=qi(fn,Ai);Wr[0]=qi(Ui,Wr[0]),Wr[1]=qi(Oi,Wr[1]),Wr[2]=qi(Bi,Wr[2]),Wr[3]=qi(cn,Wr[3]),Wr[4]=qi(On,Wr[4]),Wr[5]=qi(Bn,Wr[5]),Wr[6]=qi(yn,Wr[6]),Wr[7]=qi(to,Wr[7])}return Wr}function qi(At,Er){var Wr=(At&65535)+(Er&65535),wi=(At>>16)+(Er>>16)+(Wr>>16);return wi<<16|Wr&65535}function Ii(At){return Array.prototype.slice.call(At)}function mi(At){return Ii(At).join("")}function Pn(At){var Er=At&&At.cache,Wr=0,wi=[],Ui=[],Oi=[];function Bi(fn,Ai){var ji=Ai&&Ai.stable;if(!ji){for(var Ln=0;Ln<Ui.length;++Ln)if(Ui[Ln]===fn&&!Oi[Ln])return wi[Ln]}var Un="g"+Wr++;return wi.push(Un),Ui.push(fn),Oi.push(ji),Un}function cn(){var fn=[];function Ai(){fn.push.apply(fn,Ii(arguments))}var ji=[];function Ln(){var Un="v"+Wr++;return ji.push(Un),arguments.length>0&&(fn.push(Un,"="),fn.push.apply(fn,Ii(arguments)),fn.push(";")),Un}return e(Ai,{def:Ln,toString:function(){return mi([ji.length>0?"var "+ji.join(",")+";":"",mi(fn)])}})}function On(){var fn=cn(),Ai=cn(),ji=fn.toString,Ln=Ai.toString;function Un(gn,ca){Ai(gn,ca,"=",fn.def(gn,ca),";")}return e(function(){fn.apply(fn,Ii(arguments))},{def:fn.def,entry:fn,exit:Ai,save:Un,set:function(gn,ca,Kn){Un(gn,ca),fn(gn,ca,"=",Kn,";")},toString:function(){return ji()+Ln()}})}function Bn(){var fn=mi(arguments),Ai=On(),ji=On(),Ln=Ai.toString,Un=ji.toString;return e(Ai,{then:function(){return Ai.apply(Ai,Ii(arguments)),this},else:function(){return ji.apply(ji,Ii(arguments)),this},toString:function(){var gn=Un();return gn&&(gn="else{"+gn+"}"),mi(["if(",fn,"){",Ln(),"}",gn])}})}var yn=cn(),to={};function Rn(fn,Ai){var ji=[];function Ln(){var Za="a"+ji.length;return ji.push(Za),Za}Ai=Ai||0;for(var Un=0;Un<Ai;++Un)Ln();var gn=On(),ca=gn.toString,Kn=to[fn]=e(gn,{arg:Ln,toString:function(){return mi(["function(",ji.join(),"){",ca(),"}"])}});return Kn}function Dn(){var fn=['"use strict";',yn,"return {"];Object.keys(to).forEach(function(Un){fn.push('"',Un,'":',to[Un].toString(),",")}),fn.push("}");var Ai=mi(fn).replace(/;/g,`;
+`).replace(/}/g,`}
+`).replace(/{/g,`{
+`),ji;if(Er&&(ji=Rc(Ai),Er[ji]))return Er[ji].apply(null,Ui);var Ln=Function.apply(null,wi.concat(Ai));return Er&&(Er[ji]=Ln),Ln.apply(null,Ui)}return{global:yn,link:Bi,block:cn,proc:Rn,scope:On,cond:Bn,compile:Dn}}var Ma="xyzw".split(""),Ta=5121,Ea=1,qa=2,Cn=0,sn=1,Ua=2,mo=3,Xo=4,Ts=5,Qo=6,ys="dither",Bo="blend.enable",yl="blend.color",Gs="blend.equation",Rs="blend.func",ia="depth.enable",Ka="depth.func",vs="depth.range",Ko="depth.mask",nu="colorMask",Ru="cull.enable",ac="cull.face",mf="frontFace",bu="lineWidth",Kc="polygonOffset.enable",Du="polygonOffset.offset",Dc="sample.alpha",Da="sample.enable",eo="sample.coverage",Jc="stencil.enable",yc="stencil.mask",_c="stencil.func",le="stencil.opFront",w="stencil.opBack",B="scissor.enable",Q="scissor.box",ee="viewport",se="profile",qe="framebuffer",je="vert",it="frag",yt="elements",Ot="primitive",Nt="count",hr="offset",Sr="instances",he="vao",be="Width",Pe="Height",Oe=qe+be,Je=qe+Pe,He=ee+be,et=ee+Pe,Mt="drawingBuffer",Dt=Mt+be,Ut=Mt+Pe,tr=[Rs,Gs,_c,le,w,eo,ee,Q,Du],mr=34962,Rr=34963,zr=2884,Xr=3042,di=3024,Li=2960,Ci=2929,Qi=3089,Mn=32823,pa=32926,ea=32928,Ga=5126,To=35664,Wa=35665,co=35666,Ro=5124,Ds=35667,As=35668,yo=35669,po=35670,_l=35671,Hl=35672,Zu=35673,cu=35674,el=35675,au=35676,zc=35678,zl=35680,Fl=4,Z=1028,oe=1029,we=2304,Be=2305,Ue=32775,We=32776,wt=519,tt=7680,zt=0,or=1,lr=32774,Dr=513,Ir=36160,oi=36064,ui={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},qr={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},Kr={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},ii={cw:we,ccw:Be};function vi(At){return Array.isArray(At)||Or(At)||Nr(At)}function ci(At){return At.sort(function(Er,Wr){return Er===ee?-1:Wr===ee?1:Er<Wr?-1:1})}function Jr(At,Er,Wr,wi){this.thisDep=At,this.contextDep=Er,this.propDep=Wr,this.append=wi}function un(At){return At&&!(At.thisDep||At.contextDep||At.propDep)}function dn(At){return new Jr(!1,!1,!1,At)}function En(At,Er){var Wr=At.type;if(Wr===Cn){var wi=At.data.length;return new Jr(!0,wi>=1,wi>=2,Er)}else if(Wr===Xo){var Ui=At.data;return new Jr(Ui.thisDep,Ui.contextDep,Ui.propDep,Er)}else{if(Wr===Ts)return new Jr(!1,!1,!1,Er);if(Wr===Qo){for(var Oi=!1,Bi=!1,cn=!1,On=0;On<At.data.length;++On){var Bn=At.data[On];if(Bn.type===sn)cn=!0;else if(Bn.type===Ua)Bi=!0;else if(Bn.type===mo)Oi=!0;else if(Bn.type===Cn){Oi=!0;var yn=Bn.data;yn>=1&&(Bi=!0),yn>=2&&(cn=!0)}else Bn.type===Xo&&(Oi=Oi||Bn.data.thisDep,Bi=Bi||Bn.data.contextDep,cn=cn||Bn.data.propDep)}return new Jr(Oi,Bi,cn,Er)}else return new Jr(Wr===mo,Wr===Ua,Wr===sn,Er)}}var Nn=new Jr(!1,!1,!1,function(){});function ga(At,Er,Wr,wi,Ui,Oi,Bi,cn,On,Bn,yn,to,Rn,Dn,fn,Ai){var ji=Bn.Record,Ln={add:32774,subtract:32778,"reverse subtract":32779};Wr.ext_blend_minmax&&(Ln.min=Ue,Ln.max=We);var Un=Wr.angle_instanced_arrays,gn=Wr.webgl_draw_buffers,ca=Wr.oes_vertex_array_object,Kn={dirty:!0,profile:Ai.profile},Za={},wn=[],vn={},Aa={};function aa(vt){return vt.replace(".","_")}function Xn(vt,Pt,Wt){var rr=aa(vt);wn.push(vt),Za[rr]=Kn[rr]=!!Wt,vn[rr]=Pt}function Vn(vt,Pt,Wt){var rr=aa(vt);wn.push(vt),Array.isArray(Wt)?(Kn[rr]=Wt.slice(),Za[rr]=Wt.slice()):Kn[rr]=Za[rr]=Wt,Aa[rr]=Pt}function ma(vt){return!!isNaN(vt)}Xn(ys,di),Xn(Bo,Xr),Vn(yl,"blendColor",[0,0,0,0]),Vn(Gs,"blendEquationSeparate",[lr,lr]),Vn(Rs,"blendFuncSeparate",[or,zt,or,zt]),Xn(ia,Ci,!0),Vn(Ka,"depthFunc",Dr),Vn(vs,"depthRange",[0,1]),Vn(Ko,"depthMask",!0),Vn(nu,nu,[!0,!0,!0,!0]),Xn(Ru,zr),Vn(ac,"cullFace",oe),Vn(mf,mf,Be),Vn(bu,bu,1),Xn(Kc,Mn),Vn(Du,"polygonOffset",[0,0]),Xn(Dc,pa),Xn(Da,ea),Vn(eo,"sampleCoverage",[1,!1]),Xn(Jc,Li),Vn(yc,"stencilMask",-1),Vn(_c,"stencilFunc",[wt,0,-1]),Vn(le,"stencilOpSeparate",[Z,tt,tt,tt]),Vn(w,"stencilOpSeparate",[oe,tt,tt,tt]),Xn(B,Qi),Vn(Q,"scissor",[0,0,At.drawingBufferWidth,At.drawingBufferHeight]),Vn(ee,ee,[0,0,At.drawingBufferWidth,At.drawingBufferHeight]);var ro={gl:At,context:Rn,strings:Er,next:Za,current:Kn,draw:to,elements:Oi,buffer:Ui,shader:yn,attributes:Bn.state,vao:Bn,uniforms:On,framebuffer:cn,extensions:Wr,timer:Dn,isBufferArgs:vi},Ao={primTypes:Ki,compareFuncs:qr,blendFuncs:ui,blendEquations:Ln,stencilOps:Kr,glTypes:bi,orientationType:ii};gn&&(Ao.backBuffer=[oe],Ao.drawBuffer=M(wi.maxDrawbuffers,function(vt){return vt===0?[0]:M(vt,function(Pt){return oi+Pt})}));var Jn=0;function Oa(){var vt=Pn({cache:fn}),Pt=vt.link,Wt=vt.global;vt.id=Jn++,vt.batchId="0";var rr=Pt(ro),dr=vt.shared={props:"a0"};Object.keys(ro).forEach(function(Cr){dr[Cr]=Wt.def(rr,".",Cr)});var pr=vt.next={},kr=vt.current={};Object.keys(Aa).forEach(function(Cr){Array.isArray(Kn[Cr])&&(pr[Cr]=Wt.def(dr.next,".",Cr),kr[Cr]=Wt.def(dr.current,".",Cr))});var Ar=vt.constants={};Object.keys(Ao).forEach(function(Cr){Ar[Cr]=Wt.def(JSON.stringify(Ao[Cr]))}),vt.invoke=function(Cr,cr){switch(cr.type){case Cn:var Gr=["this",dr.context,dr.props,vt.batchId];return Cr.def(Pt(cr.data),".call(",Gr.slice(0,Math.max(cr.data.length+1,4)),")");case sn:return Cr.def(dr.props,cr.data);case Ua:return Cr.def(dr.context,cr.data);case mo:return Cr.def("this",cr.data);case Xo:return cr.data.append(vt,Cr),cr.data.ref;case Ts:return cr.data.toString();case Qo:return cr.data.map(function(ei){return vt.invoke(Cr,ei)})}},vt.attribCache={};var gr={};return vt.scopeAttrib=function(Cr){var cr=Er.id(Cr);if(cr in gr)return gr[cr];var Gr=Bn.scope[cr];Gr||(Gr=Bn.scope[cr]=new ji);var ei=gr[cr]=Pt(Gr);return ei},vt}function _o(vt){var Pt=vt.static,Wt=vt.dynamic,rr;if(se in Pt){var dr=!!Pt[se];rr=dn(function(kr,Ar){return dr}),rr.enable=dr}else if(se in Wt){var pr=Wt[se];rr=En(pr,function(kr,Ar){return kr.invoke(Ar,pr)})}return rr}function Po(vt,Pt){var Wt=vt.static,rr=vt.dynamic;if(qe in Wt){var dr=Wt[qe];return dr?(dr=cn.getFramebuffer(dr),dn(function(kr,Ar){var gr=kr.link(dr),Cr=kr.shared;Ar.set(Cr.framebuffer,".next",gr);var cr=Cr.context;return Ar.set(cr,"."+Oe,gr+".width"),Ar.set(cr,"."+Je,gr+".height"),gr})):dn(function(kr,Ar){var gr=kr.shared;Ar.set(gr.framebuffer,".next","null");var Cr=gr.context;return Ar.set(Cr,"."+Oe,Cr+"."+Dt),Ar.set(Cr,"."+Je,Cr+"."+Ut),"null"})}else if(qe in rr){var pr=rr[qe];return En(pr,function(kr,Ar){var gr=kr.invoke(Ar,pr),Cr=kr.shared,cr=Cr.framebuffer,Gr=Ar.def(cr,".getFramebuffer(",gr,")");Ar.set(cr,".next",Gr);var ei=Cr.context;return Ar.set(ei,"."+Oe,Gr+"?"+Gr+".width:"+ei+"."+Dt),Ar.set(ei,"."+Je,Gr+"?"+Gr+".height:"+ei+"."+Ut),Gr})}else return null}function Jo(vt,Pt,Wt){var rr=vt.static,dr=vt.dynamic;function pr(gr){if(gr in rr){var Cr=rr[gr],cr=!0,Gr=Cr.x|0,ei=Cr.y|0,yi,tn;return"width"in Cr?yi=Cr.width|0:cr=!1,"height"in Cr?tn=Cr.height|0:cr=!1,new Jr(!cr&&Pt&&Pt.thisDep,!cr&&Pt&&Pt.contextDep,!cr&&Pt&&Pt.propDep,function(Qn,qn){var rn=Qn.shared.context,bn=yi;"width"in Cr||(bn=qn.def(rn,".",Oe,"-",Gr));var mn=tn;return"height"in Cr||(mn=qn.def(rn,".",Je,"-",ei)),[Gr,ei,bn,mn]})}else if(gr in dr){var Ri=dr[gr],ln=En(Ri,function(Qn,qn){var rn=Qn.invoke(qn,Ri),bn=Qn.shared.context,mn=qn.def(rn,".x|0"),Gn=qn.def(rn,".y|0"),da=qn.def('"width" in ',rn,"?",rn,".width|0:","(",bn,".",Oe,"-",mn,")"),No=qn.def('"height" in ',rn,"?",rn,".height|0:","(",bn,".",Je,"-",Gn,")");return[mn,Gn,da,No]});return Pt&&(ln.thisDep=ln.thisDep||Pt.thisDep,ln.contextDep=ln.contextDep||Pt.contextDep,ln.propDep=ln.propDep||Pt.propDep),ln}else return Pt?new Jr(Pt.thisDep,Pt.contextDep,Pt.propDep,function(Qn,qn){var rn=Qn.shared.context;return[0,0,qn.def(rn,".",Oe),qn.def(rn,".",Je)]}):null}var kr=pr(ee);if(kr){var Ar=kr;kr=new Jr(kr.thisDep,kr.contextDep,kr.propDep,function(gr,Cr){var cr=Ar.append(gr,Cr),Gr=gr.shared.context;return Cr.set(Gr,"."+He,cr[2]),Cr.set(Gr,"."+et,cr[3]),cr})}return{viewport:kr,scissor_box:pr(Q)}}function Yl(vt,Pt){var Wt=vt.static,rr=typeof Wt[it]=="string"&&typeof Wt[je]=="string";if(rr){if(Object.keys(Pt.dynamic).length>0)return null;var dr=Pt.static,pr=Object.keys(dr);if(pr.length>0&&typeof dr[pr[0]]=="number"){for(var kr=[],Ar=0;Ar<pr.length;++Ar)kr.push([dr[pr[Ar]]|0,pr[Ar]]);return kr}}return null}function $c(vt,Pt,Wt){var rr=vt.static,dr=vt.dynamic;function pr(cr){if(cr in rr){var Gr=Er.id(rr[cr]),ei=dn(function(){return Gr});return ei.id=Gr,ei}else if(cr in dr){var yi=dr[cr];return En(yi,function(tn,Ri){var ln=tn.invoke(Ri,yi),Qn=Ri.def(tn.shared.strings,".id(",ln,")");return Qn})}return null}var kr=pr(it),Ar=pr(je),gr=null,Cr;return un(kr)&&un(Ar)?(gr=yn.program(Ar.id,kr.id,null,Wt),Cr=dn(function(cr,Gr){return cr.link(gr)})):Cr=new Jr(kr&&kr.thisDep||Ar&&Ar.thisDep,kr&&kr.contextDep||Ar&&Ar.contextDep,kr&&kr.propDep||Ar&&Ar.propDep,function(cr,Gr){var ei=cr.shared.shader,yi;kr?yi=kr.append(cr,Gr):yi=Gr.def(ei,".",it);var tn;Ar?tn=Ar.append(cr,Gr):tn=Gr.def(ei,".",je);var Ri=ei+".program("+tn+","+yi;return Gr.def(Ri+")")}),{frag:kr,vert:Ar,progVar:Cr,program:gr}}function xs(vt,Pt){var Wt=vt.static,rr=vt.dynamic,dr={},pr=!1;function kr(){if(he in Wt){var qn=Wt[he];return qn!==null&&Bn.getVAO(qn)===null&&(qn=Bn.createVAO(qn)),pr=!0,dr.vao=qn,dn(function(bn){var mn=Bn.getVAO(qn);return mn?bn.link(mn):"null"})}else if(he in rr){pr=!0;var rn=rr[he];return En(rn,function(bn,mn){var Gn=bn.invoke(mn,rn);return mn.def(bn.shared.vao+".getVAO("+Gn+")")})}return null}var Ar=kr(),gr=!1;function Cr(){if(yt in Wt){var qn=Wt[yt];if(dr.elements=qn,vi(qn)){var rn=dr.elements=Oi.create(qn,!0);qn=Oi.getElements(rn),gr=!0}else qn&&(qn=Oi.getElements(qn),gr=!0);var bn=dn(function(Gn,da){if(qn){var No=Gn.link(qn);return Gn.ELEMENTS=No,No}return Gn.ELEMENTS=null,null});return bn.value=qn,bn}else if(yt in rr){gr=!0;var mn=rr[yt];return En(mn,function(Gn,da){var No=Gn.shared,Do=No.isBufferArgs,ps=No.elements,fo=Gn.invoke(da,mn),as=da.def("null"),tl=da.def(Do,"(",fo,")"),zu=Gn.cond(tl).then(as,"=",ps,".createStream(",fo,");").else(as,"=",ps,".getElements(",fo,");");return da.entry(zu),da.exit(Gn.cond(tl).then(ps,".destroyStream(",as,");")),Gn.ELEMENTS=as,as})}else if(pr)return new Jr(Ar.thisDep,Ar.contextDep,Ar.propDep,function(Gn,da){return da.def(Gn.shared.vao+".currentVAO?"+Gn.shared.elements+".getElements("+Gn.shared.vao+".currentVAO.elements):null")});return null}var cr=Cr();function Gr(){if(Ot in Wt){var qn=Wt[Ot];return dr.primitive=qn,dn(function(bn,mn){return Ki[qn]})}else if(Ot in rr){var rn=rr[Ot];return En(rn,function(bn,mn){var Gn=bn.constants.primTypes,da=bn.invoke(mn,rn);return mn.def(Gn,"[",da,"]")})}else{if(gr)return un(cr)?cr.value?dn(function(bn,mn){return mn.def(bn.ELEMENTS,".primType")}):dn(function(){return Fl}):new Jr(cr.thisDep,cr.contextDep,cr.propDep,function(bn,mn){var Gn=bn.ELEMENTS;return mn.def(Gn,"?",Gn,".primType:",Fl)});if(pr)return new Jr(Ar.thisDep,Ar.contextDep,Ar.propDep,function(bn,mn){return mn.def(bn.shared.vao+".currentVAO?"+bn.shared.vao+".currentVAO.primitive:"+Fl)})}return null}function ei(qn,rn){if(qn in Wt){var bn=Wt[qn]|0;return rn?dr.offset=bn:dr.instances=bn,dn(function(Gn,da){return rn&&(Gn.OFFSET=bn),bn})}else if(qn in rr){var mn=rr[qn];return En(mn,function(Gn,da){var No=Gn.invoke(da,mn);return rn&&(Gn.OFFSET=No),No})}else if(rn){if(gr)return dn(function(Gn,da){return Gn.OFFSET=0,0});if(pr)return new Jr(Ar.thisDep,Ar.contextDep,Ar.propDep,function(Gn,da){return da.def(Gn.shared.vao+".currentVAO?"+Gn.shared.vao+".currentVAO.offset:0")})}else if(pr)return new Jr(Ar.thisDep,Ar.contextDep,Ar.propDep,function(Gn,da){return da.def(Gn.shared.vao+".currentVAO?"+Gn.shared.vao+".currentVAO.instances:-1")});return null}var yi=ei(hr,!0);function tn(){if(Nt in Wt){var qn=Wt[Nt]|0;return dr.count=qn,dn(function(){return qn})}else if(Nt in rr){var rn=rr[Nt];return En(rn,function(da,No){var Do=da.invoke(No,rn);return Do})}else if(gr)if(un(cr)){if(cr)return yi?new Jr(yi.thisDep,yi.contextDep,yi.propDep,function(da,No){var Do=No.def(da.ELEMENTS,".vertCount-",da.OFFSET);return Do}):dn(function(da,No){return No.def(da.ELEMENTS,".vertCount")});var bn=dn(function(){return-1});return bn}else{var mn=new Jr(cr.thisDep||yi.thisDep,cr.contextDep||yi.contextDep,cr.propDep||yi.propDep,function(da,No){var Do=da.ELEMENTS;return da.OFFSET?No.def(Do,"?",Do,".vertCount-",da.OFFSET,":-1"):No.def(Do,"?",Do,".vertCount:-1")});return mn}else if(pr){var Gn=new Jr(Ar.thisDep,Ar.contextDep,Ar.propDep,function(da,No){return No.def(da.shared.vao,".currentVAO?",da.shared.vao,".currentVAO.count:-1")});return Gn}return null}var Ri=Gr(),ln=tn(),Qn=ei(Sr,!1);return{elements:cr,primitive:Ri,count:ln,instances:Qn,offset:yi,vao:Ar,vaoActive:pr,elementsActive:gr,static:dr}}function Qc(vt,Pt){var Wt=vt.static,rr=vt.dynamic,dr={};return wn.forEach(function(pr){var kr=aa(pr);function Ar(gr,Cr){if(pr in Wt){var cr=gr(Wt[pr]);dr[kr]=dn(function(){return cr})}else if(pr in rr){var Gr=rr[pr];dr[kr]=En(Gr,function(ei,yi){return Cr(ei,yi,ei.invoke(yi,Gr))})}}switch(pr){case Ru:case Bo:case ys:case Jc:case ia:case B:case Kc:case Dc:case Da:case Ko:return Ar(function(gr){return gr},function(gr,Cr,cr){return cr});case Ka:return Ar(function(gr){return qr[gr]},function(gr,Cr,cr){var Gr=gr.constants.compareFuncs;return Cr.def(Gr,"[",cr,"]")});case vs:return Ar(function(gr){return gr},function(gr,Cr,cr){var Gr=Cr.def("+",cr,"[0]"),ei=Cr.def("+",cr,"[1]");return[Gr,ei]});case Rs:return Ar(function(gr){var Cr="srcRGB"in gr?gr.srcRGB:gr.src,cr="srcAlpha"in gr?gr.srcAlpha:gr.src,Gr="dstRGB"in gr?gr.dstRGB:gr.dst,ei="dstAlpha"in gr?gr.dstAlpha:gr.dst;return[ui[Cr],ui[Gr],ui[cr],ui[ei]]},function(gr,Cr,cr){var Gr=gr.constants.blendFuncs;function ei(rn,bn){var mn=Cr.def('"',rn,bn,'" in ',cr,"?",cr,".",rn,bn,":",cr,".",rn);return mn}var yi=ei("src","RGB"),tn=ei("dst","RGB"),Ri=Cr.def(Gr,"[",yi,"]"),ln=Cr.def(Gr,"[",ei("src","Alpha"),"]"),Qn=Cr.def(Gr,"[",tn,"]"),qn=Cr.def(Gr,"[",ei("dst","Alpha"),"]");return[Ri,Qn,ln,qn]});case Gs:return Ar(function(gr){if(typeof gr=="string")return[Ln[gr],Ln[gr]];if(typeof gr=="object")return[Ln[gr.rgb],Ln[gr.alpha]]},function(gr,Cr,cr){var Gr=gr.constants.blendEquations,ei=Cr.def(),yi=Cr.def(),tn=gr.cond("typeof ",cr,'==="string"');return tn.then(ei,"=",yi,"=",Gr,"[",cr,"];"),tn.else(ei,"=",Gr,"[",cr,".rgb];",yi,"=",Gr,"[",cr,".alpha];"),Cr(tn),[ei,yi]});case yl:return Ar(function(gr){return M(4,function(Cr){return+gr[Cr]})},function(gr,Cr,cr){return M(4,function(Gr){return Cr.def("+",cr,"[",Gr,"]")})});case yc:return Ar(function(gr){return gr|0},function(gr,Cr,cr){return Cr.def(cr,"|0")});case _c:return Ar(function(gr){var Cr=gr.cmp||"keep",cr=gr.ref||0,Gr="mask"in gr?gr.mask:-1;return[qr[Cr],cr,Gr]},function(gr,Cr,cr){var Gr=gr.constants.compareFuncs,ei=Cr.def('"cmp" in ',cr,"?",Gr,"[",cr,".cmp]",":",tt),yi=Cr.def(cr,".ref|0"),tn=Cr.def('"mask" in ',cr,"?",cr,".mask|0:-1");return[ei,yi,tn]});case le:case w:return Ar(function(gr){var Cr=gr.fail||"keep",cr=gr.zfail||"keep",Gr=gr.zpass||"keep";return[pr===w?oe:Z,Kr[Cr],Kr[cr],Kr[Gr]]},function(gr,Cr,cr){var Gr=gr.constants.stencilOps;function ei(yi){return Cr.def('"',yi,'" in ',cr,"?",Gr,"[",cr,".",yi,"]:",tt)}return[pr===w?oe:Z,ei("fail"),ei("zfail"),ei("zpass")]});case Du:return Ar(function(gr){var Cr=gr.factor|0,cr=gr.units|0;return[Cr,cr]},function(gr,Cr,cr){var Gr=Cr.def(cr,".factor|0"),ei=Cr.def(cr,".units|0");return[Gr,ei]});case ac:return Ar(function(gr){var Cr=0;return gr==="front"?Cr=Z:gr==="back"&&(Cr=oe),Cr},function(gr,Cr,cr){return Cr.def(cr,'==="front"?',Z,":",oe)});case bu:return Ar(function(gr){return gr},function(gr,Cr,cr){return cr});case mf:return Ar(function(gr){return ii[gr]},function(gr,Cr,cr){return Cr.def(cr+'==="cw"?'+we+":"+Be)});case nu:return Ar(function(gr){return gr.map(function(Cr){return!!Cr})},function(gr,Cr,cr){return M(4,function(Gr){return"!!"+cr+"["+Gr+"]"})});case eo:return Ar(function(gr){var Cr="value"in gr?gr.value:1,cr=!!gr.invert;return[Cr,cr]},function(gr,Cr,cr){var Gr=Cr.def('"value" in ',cr,"?+",cr,".value:1"),ei=Cr.def("!!",cr,".invert");return[Gr,ei]})}}),dr}function El(vt,Pt){var Wt=vt.static,rr=vt.dynamic,dr={};return Object.keys(Wt).forEach(function(pr){var kr=Wt[pr],Ar;if(typeof kr=="number"||typeof kr=="boolean")Ar=dn(function(){return kr});else if(typeof kr=="function"){var gr=kr._reglType;gr==="texture2d"||gr==="textureCube"?Ar=dn(function(Cr){return Cr.link(kr)}):(gr==="framebuffer"||gr==="framebufferCube")&&(Ar=dn(function(Cr){return Cr.link(kr.color[0])}))}else an(kr)&&(Ar=dn(function(Cr){var cr=Cr.global.def("[",M(kr.length,function(Gr){return kr[Gr]}),"]");return cr}));Ar.value=kr,dr[pr]=Ar}),Object.keys(rr).forEach(function(pr){var kr=rr[pr];dr[pr]=En(kr,function(Ar,gr){return Ar.invoke(gr,kr)})}),dr}function bc(vt,Pt){var Wt=vt.static,rr=vt.dynamic,dr={};return Object.keys(Wt).forEach(function(pr){var kr=Wt[pr],Ar=Er.id(pr),gr=new ji;if(vi(kr))gr.state=Ea,gr.buffer=Ui.getBuffer(Ui.create(kr,mr,!1,!0)),gr.type=0;else{var Cr=Ui.getBuffer(kr);if(Cr)gr.state=Ea,gr.buffer=Cr,gr.type=0;else if("constant"in kr){var cr=kr.constant;gr.buffer="null",gr.state=qa,typeof cr=="number"?gr.x=cr:Ma.forEach(function(Qn,qn){qn<cr.length&&(gr[Qn]=cr[qn])})}else{vi(kr.buffer)?Cr=Ui.getBuffer(Ui.create(kr.buffer,mr,!1,!0)):Cr=Ui.getBuffer(kr.buffer);var Gr=kr.offset|0,ei=kr.stride|0,yi=kr.size|0,tn=!!kr.normalized,Ri=0;"type"in kr&&(Ri=bi[kr.type]);var ln=kr.divisor|0;gr.buffer=Cr,gr.state=Ea,gr.size=yi,gr.normalized=tn,gr.type=Ri||Cr.dtype,gr.offset=Gr,gr.stride=ei,gr.divisor=ln}}dr[pr]=dn(function(Qn,qn){var rn=Qn.attribCache;if(Ar in rn)return rn[Ar];var bn={isStream:!1};return Object.keys(gr).forEach(function(mn){bn[mn]=gr[mn]}),gr.buffer&&(bn.buffer=Qn.link(gr.buffer),bn.type=bn.type||bn.buffer+".dtype"),rn[Ar]=bn,bn})}),Object.keys(rr).forEach(function(pr){var kr=rr[pr];function Ar(gr,Cr){var cr=gr.invoke(Cr,kr),Gr=gr.shared,ei=gr.constants,yi=Gr.isBufferArgs,tn=Gr.buffer,Ri={isStream:Cr.def(!1)},ln=new ji;ln.state=Ea,Object.keys(ln).forEach(function(bn){Ri[bn]=Cr.def(""+ln[bn])});var Qn=Ri.buffer,qn=Ri.type;Cr("if(",yi,"(",cr,")){",Ri.isStream,"=true;",Qn,"=",tn,".createStream(",mr,",",cr,");",qn,"=",Qn,".dtype;","}else{",Qn,"=",tn,".getBuffer(",cr,");","if(",Qn,"){",qn,"=",Qn,".dtype;",'}else if("constant" in ',cr,"){",Ri.state,"=",qa,";","if(typeof "+cr+'.constant === "number"){',Ri[Ma[0]],"=",cr,".constant;",Ma.slice(1).map(function(bn){return Ri[bn]}).join("="),"=0;","}else{",Ma.map(function(bn,mn){return Ri[bn]+"="+cr+".constant.length>"+mn+"?"+cr+".constant["+mn+"]:0;"}).join(""),"}}else{","if(",yi,"(",cr,".buffer)){",Qn,"=",tn,".createStream(",mr,",",cr,".buffer);","}else{",Qn,"=",tn,".getBuffer(",cr,".buffer);","}",qn,'="type" in ',cr,"?",ei.glTypes,"[",cr,".type]:",Qn,".dtype;",Ri.normalized,"=!!",cr,".normalized;");function rn(bn){Cr(Ri[bn],"=",cr,".",bn,"|0;")}return rn("size"),rn("offset"),rn("stride"),rn("divisor"),Cr("}}"),Cr.exit("if(",Ri.isStream,"){",tn,".destroyStream(",Qn,");","}"),Ri}dr[pr]=En(kr,Ar)}),dr}function wc(vt){var Pt=vt.static,Wt=vt.dynamic,rr={};return Object.keys(Pt).forEach(function(dr){var pr=Pt[dr];rr[dr]=dn(function(kr,Ar){return typeof pr=="number"||typeof pr=="boolean"?""+pr:kr.link(pr)})}),Object.keys(Wt).forEach(function(dr){var pr=Wt[dr];rr[dr]=En(pr,function(kr,Ar){return kr.invoke(Ar,pr)})}),rr}function yf(vt,Pt,Wt,rr,dr){var pr=vt.static,kr=vt.dynamic,Ar=Yl(vt,Pt),gr=Po(vt,dr),Cr=Jo(vt,gr,dr),cr=xs(vt,dr),Gr=Qc(vt,dr),ei=$c(vt,dr,Ar);function yi(rn){var bn=Cr[rn];bn&&(Gr[rn]=bn)}yi(ee),yi(aa(Q));var tn=Object.keys(Gr).length>0,Ri={framebuffer:gr,draw:cr,shader:ei,state:Gr,dirty:tn,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(Ri.profile=_o(vt,dr),Ri.uniforms=El(Wt,dr),Ri.drawVAO=Ri.scopeVAO=cr.vao,!Ri.drawVAO&&ei.program&&!Ar&&Wr.angle_instanced_arrays&&cr.static.elements){var ln=!0,Qn=ei.program.attributes.map(function(rn){var bn=Pt.static[rn];return ln=ln&&!!bn,bn});if(ln&&Qn.length>0){var qn=Bn.getVAO(Bn.createVAO({attributes:Qn,elements:cr.static.elements}));Ri.drawVAO=new Jr(null,null,null,function(rn,bn){return rn.link(qn)}),Ri.useVAO=!0}}return Ar?Ri.useVAO=!0:Ri.attributes=bc(Pt,dr),Ri.context=wc(rr,dr),Ri}function Gl(vt,Pt,Wt){var rr=vt.shared,dr=rr.context,pr=vt.scope();Object.keys(Wt).forEach(function(kr){Pt.save(dr,"."+kr);var Ar=Wt[kr],gr=Ar.append(vt,Pt);Array.isArray(gr)?pr(dr,".",kr,"=[",gr.join(),"];"):pr(dr,".",kr,"=",gr,";")}),Pt(pr)}function Fc(vt,Pt,Wt,rr){var dr=vt.shared,pr=dr.gl,kr=dr.framebuffer,Ar;gn&&(Ar=Pt.def(dr.extensions,".webgl_draw_buffers"));var gr=vt.constants,Cr=gr.drawBuffer,cr=gr.backBuffer,Gr;Wt?Gr=Wt.append(vt,Pt):Gr=Pt.def(kr,".next"),rr||Pt("if(",Gr,"!==",kr,".cur){"),Pt("if(",Gr,"){",pr,".bindFramebuffer(",Ir,",",Gr,".framebuffer);"),gn&&Pt(Ar,".drawBuffersWEBGL(",Cr,"[",Gr,".colorAttachments.length]);"),Pt("}else{",pr,".bindFramebuffer(",Ir,",null);"),gn&&Pt(Ar,".drawBuffersWEBGL(",cr,");"),Pt("}",kr,".cur=",Gr,";"),rr||Pt("}")}function ef(vt,Pt,Wt){var rr=vt.shared,dr=rr.gl,pr=vt.current,kr=vt.next,Ar=rr.current,gr=rr.next,Cr=vt.cond(Ar,".dirty");wn.forEach(function(cr){var Gr=aa(cr);if(!(Gr in Wt.state)){var ei,yi;if(Gr in kr){ei=kr[Gr],yi=pr[Gr];var tn=M(Kn[Gr].length,function(ln){return Cr.def(ei,"[",ln,"]")});Cr(vt.cond(tn.map(function(ln,Qn){return ln+"!=="+yi+"["+Qn+"]"}).join("||")).then(dr,".",Aa[Gr],"(",tn,");",tn.map(function(ln,Qn){return yi+"["+Qn+"]="+ln}).join(";"),";"))}else{ei=Cr.def(gr,".",Gr);var Ri=vt.cond(ei,"!==",Ar,".",Gr);Cr(Ri),Gr in vn?Ri(vt.cond(ei).then(dr,".enable(",vn[Gr],");").else(dr,".disable(",vn[Gr],");"),Ar,".",Gr,"=",ei,";"):Ri(dr,".",Aa[Gr],"(",ei,");",Ar,".",Gr,"=",ei,";")}}}),Object.keys(Wt.state).length===0&&Cr(Ar,".dirty=false;"),Pt(Cr)}function ls(vt,Pt,Wt,rr){var dr=vt.shared,pr=vt.current,kr=dr.current,Ar=dr.gl,gr;ci(Object.keys(Wt)).forEach(function(Cr){var cr=Wt[Cr];if(!(rr&&!rr(cr))){var Gr=cr.append(vt,Pt);if(vn[Cr]){var ei=vn[Cr];un(cr)?(gr=vt.link(Gr,{stable:!0}),Pt(vt.cond(gr).then(Ar,".enable(",ei,");").else(Ar,".disable(",ei,");")),Pt(kr,".",Cr,"=",gr,";")):(Pt(vt.cond(Gr).then(Ar,".enable(",ei,");").else(Ar,".disable(",ei,");")),Pt(kr,".",Cr,"=",Gr,";"))}else if(an(Gr)){var yi=pr[Cr];Pt(Ar,".",Aa[Cr],"(",Gr,");",Gr.map(function(tn,Ri){return yi+"["+Ri+"]="+tn}).join(";"),";")}else un(cr)?(gr=vt.link(Gr,{stable:!0}),Pt(Ar,".",Aa[Cr],"(",gr,");",kr,".",Cr,"=",gr,";")):Pt(Ar,".",Aa[Cr],"(",Gr,");",kr,".",Cr,"=",Gr,";")}})}function _f(vt,Pt){Un&&(vt.instancing=Pt.def(vt.shared.extensions,".angle_instanced_arrays"))}function ns(vt,Pt,Wt,rr,dr){var pr=vt.shared,kr=vt.stats,Ar=pr.current,gr=pr.timer,Cr=Wt.profile;function cr(){return typeof performance=="undefined"?"Date.now()":"performance.now()"}var Gr,ei;function yi(rn){Gr=Pt.def(),rn(Gr,"=",cr(),";"),typeof dr=="string"?rn(kr,".count+=",dr,";"):rn(kr,".count++;"),Dn&&(rr?(ei=Pt.def(),rn(ei,"=",gr,".getNumPendingQueries();")):rn(gr,".beginQuery(",kr,");"))}function tn(rn){rn(kr,".cpuTime+=",cr(),"-",Gr,";"),Dn&&(rr?rn(gr,".pushScopeStats(",ei,",",gr,".getNumPendingQueries(),",kr,");"):rn(gr,".endQuery();"))}function Ri(rn){var bn=Pt.def(Ar,".profile");Pt(Ar,".profile=",rn,";"),Pt.exit(Ar,".profile=",bn,";")}var ln;if(Cr){if(un(Cr)){Cr.enable?(yi(Pt),tn(Pt.exit),Ri("true")):Ri("false");return}ln=Cr.append(vt,Pt),Ri(ln)}else ln=Pt.def(Ar,".profile");var Qn=vt.block();yi(Qn),Pt("if(",ln,"){",Qn,"}");var qn=vt.block();tn(qn),Pt.exit("if(",ln,"){",qn,"}")}function Y(vt,Pt,Wt,rr,dr){var pr=vt.shared;function kr(gr){switch(gr){case To:case Ds:case _l:return 2;case Wa:case As:case Hl:return 3;case co:case yo:case Zu:return 4;default:return 1}}function Ar(gr,Cr,cr){var Gr=pr.gl,ei=Pt.def(gr,".location"),yi=Pt.def(pr.attributes,"[",ei,"]"),tn=cr.state,Ri=cr.buffer,ln=[cr.x,cr.y,cr.z,cr.w],Qn=["buffer","normalized","offset","stride"];function qn(){Pt("if(!",yi,".buffer){",Gr,".enableVertexAttribArray(",ei,");}");var bn=cr.type,mn;if(cr.size?mn=Pt.def(cr.size,"||",Cr):mn=Cr,Pt("if(",yi,".type!==",bn,"||",yi,".size!==",mn,"||",Qn.map(function(da){return yi+"."+da+"!=="+cr[da]}).join("||"),"){",Gr,".bindBuffer(",mr,",",Ri,".buffer);",Gr,".vertexAttribPointer(",[ei,mn,bn,cr.normalized,cr.stride,cr.offset],");",yi,".type=",bn,";",yi,".size=",mn,";",Qn.map(function(da){return yi+"."+da+"="+cr[da]+";"}).join(""),"}"),Un){var Gn=cr.divisor;Pt("if(",yi,".divisor!==",Gn,"){",vt.instancing,".vertexAttribDivisorANGLE(",[ei,Gn],");",yi,".divisor=",Gn,";}")}}function rn(){Pt("if(",yi,".buffer){",Gr,".disableVertexAttribArray(",ei,");",yi,".buffer=null;","}if(",Ma.map(function(bn,mn){return yi+"."+bn+"!=="+ln[mn]}).join("||"),"){",Gr,".vertexAttrib4f(",ei,",",ln,");",Ma.map(function(bn,mn){return yi+"."+bn+"="+ln[mn]+";"}).join(""),"}")}tn===Ea?qn():tn===qa?rn():(Pt("if(",tn,"===",Ea,"){"),qn(),Pt("}else{"),rn(),Pt("}"))}rr.forEach(function(gr){var Cr=gr.name,cr=Wt.attributes[Cr],Gr;if(cr){if(!dr(cr))return;Gr=cr.append(vt,Pt)}else{if(!dr(Nn))return;var ei=vt.scopeAttrib(Cr);Gr={},Object.keys(new ji).forEach(function(yi){Gr[yi]=Pt.def(ei,".",yi)})}Ar(vt.link(gr),kr(gr.info.type),Gr)})}function z(vt,Pt,Wt,rr,dr,pr){for(var kr=vt.shared,Ar=kr.gl,gr,Cr=0;Cr<rr.length;++Cr){var cr=rr[Cr],Gr=cr.name,ei=cr.info.type,yi=Wt.uniforms[Gr],tn=vt.link(cr),Ri=tn+".location",ln;if(yi){if(!dr(yi))continue;if(un(yi)){var Qn=yi.value;if(ei===zc||ei===zl){var qn=vt.link(Qn._texture||Qn.color[0]._texture);Pt(Ar,".uniform1i(",Ri,",",qn+".bind());"),Pt.exit(qn,".unbind();")}else if(ei===cu||ei===el||ei===au){var rn=vt.global.def("new Float32Array(["+Array.prototype.slice.call(Qn)+"])"),bn=2;ei===el?bn=3:ei===au&&(bn=4),Pt(Ar,".uniformMatrix",bn,"fv(",Ri,",false,",rn,");")}else{switch(ei){case Ga:gr="1f";break;case To:gr="2f";break;case Wa:gr="3f";break;case co:gr="4f";break;case po:gr="1i";break;case Ro:gr="1i";break;case _l:gr="2i";break;case Ds:gr="2i";break;case Hl:gr="3i";break;case As:gr="3i";break;case Zu:gr="4i";break;case yo:gr="4i";break}Pt(Ar,".uniform",gr,"(",Ri,",",an(Qn)?Array.prototype.slice.call(Qn):Qn,");")}continue}else ln=yi.append(vt,Pt)}else{if(!dr(Nn))continue;ln=Pt.def(kr.uniforms,"[",Er.id(Gr),"]")}ei===zc?Pt("if(",ln,"&&",ln,'._reglType==="framebuffer"){',ln,"=",ln,".color[0];","}"):ei===zl&&Pt("if(",ln,"&&",ln,'._reglType==="framebufferCube"){',ln,"=",ln,".color[0];","}");var mn=1;switch(ei){case zc:case zl:var Gn=Pt.def(ln,"._texture");Pt(Ar,".uniform1i(",Ri,",",Gn,".bind());"),Pt.exit(Gn,".unbind();");continue;case Ro:case po:gr="1i";break;case Ds:case _l:gr="2i",mn=2;break;case As:case Hl:gr="3i",mn=3;break;case yo:case Zu:gr="4i",mn=4;break;case Ga:gr="1f";break;case To:gr="2f",mn=2;break;case Wa:gr="3f",mn=3;break;case co:gr="4f",mn=4;break;case cu:gr="Matrix2fv";break;case el:gr="Matrix3fv";break;case au:gr="Matrix4fv";break}if(gr.charAt(0)==="M"){Pt(Ar,".uniform",gr,"(",Ri,",");var da=Math.pow(ei-cu+2,2),No=vt.global.def("new Float32Array(",da,")");Array.isArray(ln)?Pt("false,(",M(da,function(tl){return No+"["+tl+"]="+ln[tl]}),",",No,")"):Pt("false,(Array.isArray(",ln,")||",ln," instanceof Float32Array)?",ln,":(",M(da,function(tl){return No+"["+tl+"]="+ln+"["+tl+"]"}),",",No,")"),Pt(");")}else if(mn>1){for(var Do=[],ps=[],fo=0;fo<mn;++fo)Array.isArray(ln)?ps.push(ln[fo]):ps.push(Pt.def(ln+"["+fo+"]")),pr&&Do.push(Pt.def());pr&&Pt("if(!",vt.batchId,"||",Do.map(function(tl,zu){return tl+"!=="+ps[zu]}).join("||"),"){",Do.map(function(tl,zu){return tl+"="+ps[zu]+";"}).join("")),Pt(Ar,".uniform",gr,"(",Ri,",",ps.join(","),");"),pr&&Pt("}")}else{if(pr){var as=Pt.def();Pt("if(!",vt.batchId,"||",as,"!==",ln,"){",as,"=",ln,";")}Pt(Ar,".uniform",gr,"(",Ri,",",ln,");"),pr&&Pt("}")}}}function K(vt,Pt,Wt,rr){var dr=vt.shared,pr=dr.gl,kr=dr.draw,Ar=rr.draw;function gr(){var mn=Ar.elements,Gn,da=Pt;return mn?((mn.contextDep&&rr.contextDynamic||mn.propDep)&&(da=Wt),Gn=mn.append(vt,da),Ar.elementsActive&&da("if("+Gn+")"+pr+".bindBuffer("+Rr+","+Gn+".buffer.buffer);")):(Gn=da.def(),da(Gn,"=",kr,".",yt,";","if(",Gn,"){",pr,".bindBuffer(",Rr,",",Gn,".buffer.buffer);}","else if(",dr.vao,".currentVAO){",Gn,"=",vt.shared.elements+".getElements("+dr.vao,".currentVAO.elements);",ca?"":"if("+Gn+")"+pr+".bindBuffer("+Rr+","+Gn+".buffer.buffer);","}")),Gn}function Cr(){var mn=Ar.count,Gn,da=Pt;return mn?((mn.contextDep&&rr.contextDynamic||mn.propDep)&&(da=Wt),Gn=mn.append(vt,da)):Gn=da.def(kr,".",Nt),Gn}var cr=gr();function Gr(mn){var Gn=Ar[mn];return Gn?Gn.contextDep&&rr.contextDynamic||Gn.propDep?Gn.append(vt,Wt):Gn.append(vt,Pt):Pt.def(kr,".",mn)}var ei=Gr(Ot),yi=Gr(hr),tn=Cr();if(typeof tn=="number"){if(tn===0)return}else Wt("if(",tn,"){"),Wt.exit("}");var Ri,ln;Un&&(Ri=Gr(Sr),ln=vt.instancing);var Qn=cr+".type",qn=Ar.elements&&un(Ar.elements)&&!Ar.vaoActive;function rn(){function mn(){Wt(ln,".drawElementsInstancedANGLE(",[ei,tn,Qn,yi+"<<(("+Qn+"-"+Ta+")>>1)",Ri],");")}function Gn(){Wt(ln,".drawArraysInstancedANGLE(",[ei,yi,tn,Ri],");")}cr&&cr!=="null"?qn?mn():(Wt("if(",cr,"){"),mn(),Wt("}else{"),Gn(),Wt("}")):Gn()}function bn(){function mn(){Wt(pr+".drawElements("+[ei,tn,Qn,yi+"<<(("+Qn+"-"+Ta+")>>1)"]+");")}function Gn(){Wt(pr+".drawArrays("+[ei,yi,tn]+");")}cr&&cr!=="null"?qn?mn():(Wt("if(",cr,"){"),mn(),Wt("}else{"),Gn(),Wt("}")):Gn()}Un&&(typeof Ri!="number"||Ri>=0)?typeof Ri=="string"?(Wt("if(",Ri,">0){"),rn(),Wt("}else if(",Ri,"<0){"),bn(),Wt("}")):rn():bn()}function O(vt,Pt,Wt,rr,dr){var pr=Oa(),kr=pr.proc("body",dr);return Un&&(pr.instancing=kr.def(pr.shared.extensions,".angle_instanced_arrays")),vt(pr,kr,Wt,rr),pr.compile().body}function $(vt,Pt,Wt,rr){_f(vt,Pt),Wt.useVAO?Wt.drawVAO?Pt(vt.shared.vao,".setVAO(",Wt.drawVAO.append(vt,Pt),");"):Pt(vt.shared.vao,".setVAO(",vt.shared.vao,".targetVAO);"):(Pt(vt.shared.vao,".setVAO(null);"),Y(vt,Pt,Wt,rr.attributes,function(){return!0})),z(vt,Pt,Wt,rr.uniforms,function(){return!0},!1),K(vt,Pt,Pt,Wt)}function pe(vt,Pt){var Wt=vt.proc("draw",1);_f(vt,Wt),Gl(vt,Wt,Pt.context),Fc(vt,Wt,Pt.framebuffer),ef(vt,Wt,Pt),ls(vt,Wt,Pt.state),ns(vt,Wt,Pt,!1,!0);var rr=Pt.shader.progVar.append(vt,Wt);if(Wt(vt.shared.gl,".useProgram(",rr,".program);"),Pt.shader.program)$(vt,Wt,Pt,Pt.shader.program);else{Wt(vt.shared.vao,".setVAO(null);");var dr=vt.global.def("{}"),pr=Wt.def(rr,".id"),kr=Wt.def(dr,"[",pr,"]");Wt(vt.cond(kr).then(kr,".call(this,a0);").else(kr,"=",dr,"[",pr,"]=",vt.link(function(Ar){return O($,vt,Pt,Ar,1)}),"(",rr,");",kr,".call(this,a0);"))}Object.keys(Pt.state).length>0&&Wt(vt.shared.current,".dirty=true;"),vt.shared.vao&&Wt(vt.shared.vao,".setVAO(null);")}function de(vt,Pt,Wt,rr){vt.batchId="a1",_f(vt,Pt);function dr(){return!0}Y(vt,Pt,Wt,rr.attributes,dr),z(vt,Pt,Wt,rr.uniforms,dr,!1),K(vt,Pt,Pt,Wt)}function Ie(vt,Pt,Wt,rr){_f(vt,Pt);var dr=Wt.contextDep,pr=Pt.def(),kr="a0",Ar="a1",gr=Pt.def();vt.shared.props=gr,vt.batchId=pr;var Cr=vt.scope(),cr=vt.scope();Pt(Cr.entry,"for(",pr,"=0;",pr,"<",Ar,";++",pr,"){",gr,"=",kr,"[",pr,"];",cr,"}",Cr.exit);function Gr(Qn){return Qn.contextDep&&dr||Qn.propDep}function ei(Qn){return!Gr(Qn)}if(Wt.needsContext&&Gl(vt,cr,Wt.context),Wt.needsFramebuffer&&Fc(vt,cr,Wt.framebuffer),ls(vt,cr,Wt.state,Gr),Wt.profile&&Gr(Wt.profile)&&ns(vt,cr,Wt,!1,!0),rr)Wt.useVAO?Wt.drawVAO?Gr(Wt.drawVAO)?cr(vt.shared.vao,".setVAO(",Wt.drawVAO.append(vt,cr),");"):Cr(vt.shared.vao,".setVAO(",Wt.drawVAO.append(vt,Cr),");"):Cr(vt.shared.vao,".setVAO(",vt.shared.vao,".targetVAO);"):(Cr(vt.shared.vao,".setVAO(null);"),Y(vt,Cr,Wt,rr.attributes,ei),Y(vt,cr,Wt,rr.attributes,Gr)),z(vt,Cr,Wt,rr.uniforms,ei,!1),z(vt,cr,Wt,rr.uniforms,Gr,!0),K(vt,Cr,cr,Wt);else{var yi=vt.global.def("{}"),tn=Wt.shader.progVar.append(vt,cr),Ri=cr.def(tn,".id"),ln=cr.def(yi,"[",Ri,"]");cr(vt.shared.gl,".useProgram(",tn,".program);","if(!",ln,"){",ln,"=",yi,"[",Ri,"]=",vt.link(function(Qn){return O(de,vt,Wt,Qn,2)}),"(",tn,");}",ln,".call(this,a0[",pr,"],",pr,");")}}function $e(vt,Pt){var Wt=vt.proc("batch",2);vt.batchId="0",_f(vt,Wt);var rr=!1,dr=!0;Object.keys(Pt.context).forEach(function(yi){rr=rr||Pt.context[yi].propDep}),rr||(Gl(vt,Wt,Pt.context),dr=!1);var pr=Pt.framebuffer,kr=!1;pr?(pr.propDep?rr=kr=!0:pr.contextDep&&rr&&(kr=!0),kr||Fc(vt,Wt,pr)):Fc(vt,Wt,null),Pt.state.viewport&&Pt.state.viewport.propDep&&(rr=!0);function Ar(yi){return yi.contextDep&&rr||yi.propDep}ef(vt,Wt,Pt),ls(vt,Wt,Pt.state,function(yi){return!Ar(yi)}),(!Pt.profile||!Ar(Pt.profile))&&ns(vt,Wt,Pt,!1,"a1"),Pt.contextDep=rr,Pt.needsContext=dr,Pt.needsFramebuffer=kr;var gr=Pt.shader.progVar;if(gr.contextDep&&rr||gr.propDep)Ie(vt,Wt,Pt,null);else{var Cr=gr.append(vt,Wt);if(Wt(vt.shared.gl,".useProgram(",Cr,".program);"),Pt.shader.program)Ie(vt,Wt,Pt,Pt.shader.program);else{Wt(vt.shared.vao,".setVAO(null);");var cr=vt.global.def("{}"),Gr=Wt.def(Cr,".id"),ei=Wt.def(cr,"[",Gr,"]");Wt(vt.cond(ei).then(ei,".call(this,a0,a1);").else(ei,"=",cr,"[",Gr,"]=",vt.link(function(yi){return O(Ie,vt,Pt,yi,2)}),"(",Cr,");",ei,".call(this,a0,a1);"))}}Object.keys(Pt.state).length>0&&Wt(vt.shared.current,".dirty=true;"),vt.shared.vao&&Wt(vt.shared.vao,".setVAO(null);")}function pt(vt,Pt){var Wt=vt.proc("scope",3);vt.batchId="a2";var rr=vt.shared,dr=rr.current;if(Gl(vt,Wt,Pt.context),Pt.framebuffer&&Pt.framebuffer.append(vt,Wt),ci(Object.keys(Pt.state)).forEach(function(Ar){var gr=Pt.state[Ar],Cr=gr.append(vt,Wt);an(Cr)?Cr.forEach(function(cr,Gr){ma(cr)?Wt.set(vt.next[Ar],"["+Gr+"]",cr):Wt.set(vt.next[Ar],"["+Gr+"]",vt.link(cr,{stable:!0}))}):un(gr)?Wt.set(rr.next,"."+Ar,vt.link(Cr,{stable:!0})):Wt.set(rr.next,"."+Ar,Cr)}),ns(vt,Wt,Pt,!0,!0),[yt,hr,Nt,Sr,Ot].forEach(function(Ar){var gr=Pt.draw[Ar];if(gr){var Cr=gr.append(vt,Wt);ma(Cr)?Wt.set(rr.draw,"."+Ar,Cr):Wt.set(rr.draw,"."+Ar,vt.link(Cr),{stable:!0})}}),Object.keys(Pt.uniforms).forEach(function(Ar){var gr=Pt.uniforms[Ar].append(vt,Wt);Array.isArray(gr)&&(gr="["+gr.map(function(Cr){return ma(Cr)?Cr:vt.link(Cr,{stable:!0})})+"]"),Wt.set(rr.uniforms,"["+vt.link(Er.id(Ar),{stable:!0})+"]",gr)}),Object.keys(Pt.attributes).forEach(function(Ar){var gr=Pt.attributes[Ar].append(vt,Wt),Cr=vt.scopeAttrib(Ar);Object.keys(new ji).forEach(function(cr){Wt.set(Cr,"."+cr,gr[cr])})}),Pt.scopeVAO){var pr=Pt.scopeVAO.append(vt,Wt);ma(pr)?Wt.set(rr.vao,".targetVAO",pr):Wt.set(rr.vao,".targetVAO",vt.link(pr,{stable:!0}))}function kr(Ar){var gr=Pt.shader[Ar];if(gr){var Cr=gr.append(vt,Wt);ma(Cr)?Wt.set(rr.shader,"."+Ar,Cr):Wt.set(rr.shader,"."+Ar,vt.link(Cr,{stable:!0}))}}kr(je),kr(it),Object.keys(Pt.state).length>0&&(Wt(dr,".dirty=true;"),Wt.exit(dr,".dirty=true;")),Wt("a1(",vt.shared.context,",a0,",vt.batchId,");")}function Kt(vt){if(!(typeof vt!="object"||an(vt))){for(var Pt=Object.keys(vt),Wt=0;Wt<Pt.length;++Wt)if(h.isDynamic(vt[Pt[Wt]]))return!0;return!1}}function ir(vt,Pt,Wt){var rr=Pt.static[Wt];if(!rr||!Kt(rr))return;var dr=vt.global,pr=Object.keys(rr),kr=!1,Ar=!1,gr=!1,Cr=vt.global.def("{}");pr.forEach(function(Gr){var ei=rr[Gr];if(h.isDynamic(ei)){typeof ei=="function"&&(ei=rr[Gr]=h.unbox(ei));var yi=En(ei,null);kr=kr||yi.thisDep,gr=gr||yi.propDep,Ar=Ar||yi.contextDep}else{switch(dr(Cr,".",Gr,"="),typeof ei){case"number":dr(ei);break;case"string":dr('"',ei,'"');break;case"object":Array.isArray(ei)&&dr("[",ei.join(),"]");break;default:dr(vt.link(ei));break}dr(";")}});function cr(Gr,ei){pr.forEach(function(yi){var tn=rr[yi];if(h.isDynamic(tn)){var Ri=Gr.invoke(ei,tn);ei(Cr,".",yi,"=",Ri,";")}})}Pt.dynamic[Wt]=new h.DynamicVariable(Xo,{thisDep:kr,contextDep:Ar,propDep:gr,ref:Cr,append:cr}),delete Pt.static[Wt]}function Jt(vt,Pt,Wt,rr,dr){var pr=Oa();pr.stats=pr.link(dr),Object.keys(Pt.static).forEach(function(Ar){ir(pr,Pt,Ar)}),tr.forEach(function(Ar){ir(pr,vt,Ar)});var kr=yf(vt,Pt,Wt,rr,pr);return kr.shader.program&&(kr.shader.program.attributes.sort(function(Ar,gr){return Ar.name<gr.name?-1:1}),kr.shader.program.uniforms.sort(function(Ar,gr){return Ar.name<gr.name?-1:1})),pe(pr,kr),pt(pr,kr),$e(pr,kr),e(pr.compile(),{destroy:function(){kr.shader.program.destroy()}})}return{next:Za,current:Kn,procs:function(){var vt=Oa(),Pt=vt.proc("poll"),Wt=vt.proc("refresh"),rr=vt.block();Pt(rr),Wt(rr);var dr=vt.shared,pr=dr.gl,kr=dr.next,Ar=dr.current;rr(Ar,".dirty=false;"),Fc(vt,Pt),Fc(vt,Wt,null,!0);var gr;Un&&(gr=vt.link(Un)),Wr.oes_vertex_array_object&&Wt(vt.link(Wr.oes_vertex_array_object),".bindVertexArrayOES(null);");var Cr=Wt.def(dr.attributes),cr=Wt.def(0),Gr=vt.cond(cr,".buffer");Gr.then(pr,".enableVertexAttribArray(i);",pr,".bindBuffer(",mr,",",cr,".buffer.buffer);",pr,".vertexAttribPointer(i,",cr,".size,",cr,".type,",cr,".normalized,",cr,".stride,",cr,".offset);").else(pr,".disableVertexAttribArray(i);",pr,".vertexAttrib4f(i,",cr,".x,",cr,".y,",cr,".z,",cr,".w);",cr,".buffer=null;");var ei=vt.link(wi.maxAttributes,{stable:!0});return Wt("for(var i=0;i<",ei,";++i){",cr,"=",Cr,"[i];",Gr,"}"),Un&&Wt("for(var i=0;i<",ei,";++i){",gr,".vertexAttribDivisorANGLE(i,",Cr,"[i].divisor);","}"),Wt(vt.shared.vao,".currentVAO=null;",vt.shared.vao,".setVAO(",vt.shared.vao,".targetVAO);"),Object.keys(vn).forEach(function(yi){var tn=vn[yi],Ri=rr.def(kr,".",yi),ln=vt.block();ln("if(",Ri,"){",pr,".enable(",tn,")}else{",pr,".disable(",tn,")}",Ar,".",yi,"=",Ri,";"),Wt(ln),Pt("if(",Ri,"!==",Ar,".",yi,"){",ln,"}")}),Object.keys(Aa).forEach(function(yi){var tn=Aa[yi],Ri=Kn[yi],ln,Qn,qn=vt.block();if(qn(pr,".",tn,"("),an(Ri)){var rn=Ri.length;ln=vt.global.def(kr,".",yi),Qn=vt.global.def(Ar,".",yi),qn(M(rn,function(bn){return ln+"["+bn+"]"}),");",M(rn,function(bn){return Qn+"["+bn+"]="+ln+"["+bn+"];"}).join("")),Pt("if(",M(rn,function(bn){return ln+"["+bn+"]!=="+Qn+"["+bn+"]"}).join("||"),"){",qn,"}")}else ln=rr.def(kr,".",yi),Qn=rr.def(Ar,".",yi),qn(ln,");",Ar,".",yi,"=",ln,";"),Pt("if(",ln,"!==",Qn,"){",qn,"}");Wt(qn)}),vt.compile()}(),compile:Jt}}function ya(){return{vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0}}var so=34918,wa=34919,io=35007,Ss=function(At,Er){if(!Er.ext_disjoint_timer_query)return null;var Wr=[];function wi(){return Wr.pop()||Er.ext_disjoint_timer_query.createQueryEXT()}function Ui(Ln){Wr.push(Ln)}var Oi=[];function Bi(Ln){var Un=wi();Er.ext_disjoint_timer_query.beginQueryEXT(io,Un),Oi.push(Un),Dn(Oi.length-1,Oi.length,Ln)}function cn(){Er.ext_disjoint_timer_query.endQueryEXT(io)}function On(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var Bn=[];function yn(){return Bn.pop()||new On}function to(Ln){Bn.push(Ln)}var Rn=[];function Dn(Ln,Un,gn){var ca=yn();ca.startQueryIndex=Ln,ca.endQueryIndex=Un,ca.sum=0,ca.stats=gn,Rn.push(ca)}var fn=[],Ai=[];function ji(){var Ln,Un,gn=Oi.length;if(gn!==0){Ai.length=Math.max(Ai.length,gn+1),fn.length=Math.max(fn.length,gn+1),fn[0]=0,Ai[0]=0;var ca=0;for(Ln=0,Un=0;Un<Oi.length;++Un){var Kn=Oi[Un];Er.ext_disjoint_timer_query.getQueryObjectEXT(Kn,wa)?(ca+=Er.ext_disjoint_timer_query.getQueryObjectEXT(Kn,so),Ui(Kn)):Oi[Ln++]=Kn,fn[Un+1]=ca,Ai[Un+1]=Ln}for(Oi.length=Ln,Ln=0,Un=0;Un<Rn.length;++Un){var Za=Rn[Un],wn=Za.startQueryIndex,vn=Za.endQueryIndex;Za.sum+=fn[vn]-fn[wn];var Aa=Ai[wn],aa=Ai[vn];aa===Aa?(Za.stats.gpuTime+=Za.sum/1e6,to(Za)):(Za.startQueryIndex=Aa,Za.endQueryIndex=aa,Rn[Ln++]=Za)}Rn.length=Ln}}return{beginQuery:Bi,endQuery:cn,pushScopeStats:Dn,update:ji,getNumPendingQueries:function(){return Oi.length},clear:function(){Wr.push.apply(Wr,Oi);for(var Ln=0;Ln<Wr.length;Ln++)Er.ext_disjoint_timer_query.deleteQueryEXT(Wr[Ln]);Oi.length=0,Wr.length=0},restore:function(){Oi.length=0,Wr.length=0}}},_s=16384,Ns=256,pn=1024,za=34962,Lo="webglcontextlost",Fo="webglcontextrestored",js=1,xl=2,fu=3;function dl(At,Er){for(var Wr=0;Wr<At.length;++Wr)if(At[Wr]===Er)return Wr;return-1}function xc(At){var Er=_(At);if(!Er)return null;var Wr=Er.gl,wi=Wr.getContextAttributes(),Ui=Wr.isContextLost(),Oi=C(Wr,Er);if(!Oi)return null;var Bi=x(),cn=ya(),On=Er.cachedCode||{},Bn=Oi.extensions,yn=Ss(Wr,Bn),to=v(),Rn=Wr.drawingBufferWidth,Dn=Wr.drawingBufferHeight,fn={tick:0,time:0,viewportWidth:Rn,viewportHeight:Dn,framebufferWidth:Rn,framebufferHeight:Dn,drawingBufferWidth:Rn,drawingBufferHeight:Dn,pixelRatio:Er.pixelRatio},Ai={},ji={elements:null,primitive:4,count:-1,offset:0,instances:-1},Ln=Br(Wr,Bn),Un=Zr(Wr,cn,Er,Kn),gn=br(Wr,Bn,Un,cn),ca=xu(Wr,Bn,Ln,cn,Un,gn,ji);function Kn(O){return ca.destroyBuffer(O)}var Za=ju(Wr,Bi,cn,Er),wn=df(Wr,Bn,Ln,function(){aa.procs.poll()},fn,cn,Er),vn=Lc(Wr,Bn,Ln,cn,Er),Aa=vf(Wr,Bn,Ln,wn,vn,cn),aa=ga(Wr,Bi,Bn,Ln,Un,gn,wn,Aa,Ai,ca,Za,ji,fn,yn,On,Er),Xn=Dl(Wr,Aa,aa.procs.poll,fn,wi,Bn,Ln),Vn=aa.next,ma=Wr.canvas,ro=[],Ao=[],Jn=[],Oa=[Er.onDestroy],_o=null;function Po(){if(ro.length===0){yn&&yn.update(),_o=null;return}_o=d.next(Po),ef();for(var O=ro.length-1;O>=0;--O){var $=ro[O];$&&$(fn,null,0)}Wr.flush(),yn&&yn.update()}function Jo(){!_o&&ro.length>0&&(_o=d.next(Po))}function Yl(){_o&&(d.cancel(Po),_o=null)}function $c(O){O.preventDefault(),Ui=!0,Yl(),Ao.forEach(function($){$()})}function xs(O){Wr.getError(),Ui=!1,Oi.restore(),Za.restore(),Un.restore(),wn.restore(),vn.restore(),Aa.restore(),ca.restore(),yn&&yn.restore(),aa.procs.refresh(),Jo(),Jn.forEach(function($){$()})}ma&&(ma.addEventListener(Lo,$c,!1),ma.addEventListener(Fo,xs,!1));function Qc(){ro.length=0,Yl(),ma&&(ma.removeEventListener(Lo,$c),ma.removeEventListener(Fo,xs)),Za.clear(),Aa.clear(),vn.clear(),ca.clear(),wn.clear(),gn.clear(),Un.clear(),yn&&yn.clear(),Oa.forEach(function(O){O()})}function El(O){function $(pr){var kr=e({},pr);delete kr.uniforms,delete kr.attributes,delete kr.context,delete kr.vao,"stencil"in kr&&kr.stencil.op&&(kr.stencil.opBack=kr.stencil.opFront=kr.stencil.op,delete kr.stencil.op);function Ar(gr){if(gr in kr){var Cr=kr[gr];delete kr[gr],Object.keys(Cr).forEach(function(cr){kr[gr+"."+cr]=Cr[cr]})}}return Ar("blend"),Ar("depth"),Ar("cull"),Ar("stencil"),Ar("polygonOffset"),Ar("scissor"),Ar("sample"),"vao"in pr&&(kr.vao=pr.vao),kr}function pe(pr,kr){var Ar={},gr={};return Object.keys(pr).forEach(function(Cr){var cr=pr[Cr];if(h.isDynamic(cr)){gr[Cr]=h.unbox(cr,Cr);return}else if(kr&&Array.isArray(cr)){for(var Gr=0;Gr<cr.length;++Gr)if(h.isDynamic(cr[Gr])){gr[Cr]=h.unbox(cr,Cr);return}}Ar[Cr]=cr}),{dynamic:gr,static:Ar}}var de=pe(O.context||{},!0),Ie=pe(O.uniforms||{},!0),$e=pe(O.attributes||{},!1),pt=pe($(O),!1),Kt={gpuTime:0,cpuTime:0,count:0},ir=aa.compile(pt,$e,Ie,de,Kt),Jt=ir.draw,vt=ir.batch,Pt=ir.scope,Wt=[];function rr(pr){for(;Wt.length<pr;)Wt.push(null);return Wt}function dr(pr,kr){var Ar;if(typeof pr=="function")return Pt.call(this,null,pr,0);if(typeof kr=="function")if(typeof pr=="number")for(Ar=0;Ar<pr;++Ar)Pt.call(this,null,kr,Ar);else if(Array.isArray(pr))for(Ar=0;Ar<pr.length;++Ar)Pt.call(this,pr[Ar],kr,Ar);else return Pt.call(this,pr,kr,0);else if(typeof pr=="number"){if(pr>0)return vt.call(this,rr(pr|0),pr|0)}else if(Array.isArray(pr)){if(pr.length)return vt.call(this,pr,pr.length)}else return Jt.call(this,pr)}return e(dr,{stats:Kt,destroy:function(){ir.destroy()}})}var bc=Aa.setFBO=El({framebuffer:h.define.call(null,js,"framebuffer")});function wc(O,$){var pe=0;aa.procs.poll();var de=$.color;de&&(Wr.clearColor(+de[0]||0,+de[1]||0,+de[2]||0,+de[3]||0),pe|=_s),"depth"in $&&(Wr.clearDepth(+$.depth),pe|=Ns),"stencil"in $&&(Wr.clearStencil($.stencil|0),pe|=pn),Wr.clear(pe)}function yf(O){if("framebuffer"in O)if(O.framebuffer&&O.framebuffer_reglType==="framebufferCube")for(var $=0;$<6;++$)bc(e({framebuffer:O.framebuffer.faces[$]},O),wc);else bc(O,wc);else wc(null,O)}function Gl(O){ro.push(O);function $(){var pe=dl(ro,O);function de(){var Ie=dl(ro,de);ro[Ie]=ro[ro.length-1],ro.length-=1,ro.length<=0&&Yl()}ro[pe]=de}return Jo(),{cancel:$}}function Fc(){var O=Vn.viewport,$=Vn.scissor_box;O[0]=O[1]=$[0]=$[1]=0,fn.viewportWidth=fn.framebufferWidth=fn.drawingBufferWidth=O[2]=$[2]=Wr.drawingBufferWidth,fn.viewportHeight=fn.framebufferHeight=fn.drawingBufferHeight=O[3]=$[3]=Wr.drawingBufferHeight}function ef(){fn.tick+=1,fn.time=_f(),Fc(),aa.procs.poll()}function ls(){wn.refresh(),Fc(),aa.procs.refresh(),yn&&yn.update()}function _f(){return(v()-to)/1e3}ls();function ns(O,$){var pe;switch(O){case"frame":return Gl($);case"lost":pe=Ao;break;case"restore":pe=Jn;break;case"destroy":pe=Oa;break;default:}return pe.push($),{cancel:function(){for(var de=0;de<pe.length;++de)if(pe[de]===$){pe[de]=pe[pe.length-1],pe.pop();return}}}}function Y(){return On}function z(O){Object.entries(O).forEach(function($){On[$[0]]=$[1]})}var K=e(El,{clear:yf,prop:h.define.bind(null,js),context:h.define.bind(null,xl),this:h.define.bind(null,fu),draw:El({}),buffer:function(O){return Un.create(O,za,!1,!1)},elements:function(O){return gn.create(O,!1)},texture:wn.create2D,cube:wn.createCube,renderbuffer:vn.create,framebuffer:Aa.create,framebufferCube:Aa.createCube,vao:ca.createVAO,attributes:wi,frame:Gl,on:ns,limits:Ln,hasExtension:function(O){return Ln.extensions.indexOf(O.toLowerCase())>=0},read:Xn,destroy:Qc,_gl:Wr,_refresh:ls,poll:function(){ef(),yn&&yn.update()},now:_f,stats:cn,getCachedCode:Y,preloadCachedCode:z});return Er.onDone(null,K),K}return xc})});var Iqe=ye((wmr,Pqe)=>{"use strict";var QOt=Zm();Pqe.exports=function(t){if(t?typeof t=="string"&&(t={container:t}):t={},Cqe(t)?t={container:t}:eBt(t)?t={container:t}:tBt(t)?t={gl:t}:t=QOt(t,{container:"container target element el canvas holder parent parentNode wrapper use ref root node",gl:"gl context webgl glContext",attrs:"attributes attrs contextAttributes",pixelRatio:"pixelRatio pxRatio px ratio pxratio pixelratio",width:"w width",height:"h height"},!0),t.pixelRatio||(t.pixelRatio=window.pixelRatio||1),t.gl)return t.gl;if(t.canvas&&(t.container=t.canvas.parentNode),t.container){if(typeof t.container=="string"){var r=document.querySelector(t.container);if(!r)throw Error("Element "+t.container+" is not found");t.container=r}Cqe(t.container)?(t.canvas=t.container,t.container=t.canvas.parentNode):t.canvas||(t.canvas=Lqe(),t.container.appendChild(t.canvas),kqe(t))}else if(!t.canvas)if(typeof document!="undefined")t.container=document.body||document.documentElement,t.canvas=Lqe(),t.container.appendChild(t.canvas),kqe(t);else throw Error("Not DOM environment. Use headless-gl.");return t.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(n){try{t.gl=t.canvas.getContext(n,t.attrs)}catch(i){}return t.gl}),t.gl};function kqe(e){if(e.container)if(e.container==document.body)document.body.style.width||(e.canvas.width=e.width||e.pixelRatio*window.innerWidth),document.body.style.height||(e.canvas.height=e.height||e.pixelRatio*window.innerHeight);else{var t=e.container.getBoundingClientRect();e.canvas.width=e.width||t.right-t.left,e.canvas.height=e.height||t.bottom-t.top}}function Cqe(e){return typeof e.getContext=="function"&&"width"in e&&"height"in e}function eBt(e){return typeof e.nodeName=="string"&&typeof e.appendChild=="function"&&typeof e.getBoundingClientRect=="function"}function tBt(e){return typeof e.drawArrays=="function"||typeof e.drawElements=="function"}function Lqe(){var e=document.createElement("canvas");return e.style.position="absolute",e.style.top=0,e.style.left=0,e}});var Dqe=ye((Tmr,Rqe)=>{"use strict";var rBt=UY(),iBt=[32,126];Rqe.exports=nBt;function nBt(e){e=e||{};var t=e.shape?e.shape:e.canvas?[e.canvas.width,e.canvas.height]:[512,512],r=e.canvas||document.createElement("canvas"),n=e.font,i=typeof e.step=="number"?[e.step,e.step]:e.step||[32,32],a=e.chars||iBt;if(n&&typeof n!="string"&&(n=rBt(n)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var o=[],s=a[0],l=0;s<=a[1];s++)o[l++]=String.fromCharCode(s);a=o}t=t.slice(),r.width=t[0],r.height=t[1];var u=r.getContext("2d");u.fillStyle="#000",u.fillRect(0,0,r.width,r.height),u.font=n,u.textAlign="center",u.textBaseline="middle",u.fillStyle="#fff";for(var c=i[0]/2,f=i[1]/2,s=0;s<a.length;s++)u.fillText(a[s],c,f),(c+=i[0])>t[0]-i[0]/2&&(c=i[0]/2,f+=i[1]);return r}});var WY=ye(Th=>{"use strict";"use restrict";var jY=32;Th.INT_BITS=jY;Th.INT_MAX=2147483647;Th.INT_MIN=-1<<jY-1;Th.sign=function(e){return(e>0)-(e<0)};Th.abs=function(e){var t=e>>jY-1;return(e^t)-t};Th.min=function(e,t){return t^(e^t)&-(e<t)};Th.max=function(e,t){return e^(e^t)&-(e<t)};Th.isPow2=function(e){return!(e&e-1)&&!!e};Th.log2=function(e){var t,r;return t=(e>65535)<<4,e>>>=t,r=(e>255)<<3,e>>>=r,t|=r,r=(e>15)<<2,e>>>=r,t|=r,r=(e>3)<<1,e>>>=r,t|=r,t|e>>1};Th.log10=function(e){return e>=1e9?9:e>=1e8?8:e>=1e7?7:e>=1e6?6:e>=1e5?5:e>=1e4?4:e>=1e3?3:e>=100?2:e>=10?1:0};Th.popCount=function(e){return e=e-(e>>>1&1431655765),e=(e&858993459)+(e>>>2&858993459),(e+(e>>>4)&252645135)*16843009>>>24};function zqe(e){var t=32;return e&=-e,e&&t--,e&65535&&(t-=16),e&16711935&&(t-=8),e&252645135&&(t-=4),e&858993459&&(t-=2),e&1431655765&&(t-=1),t}Th.countTrailingZeros=zqe;Th.nextPow2=function(e){return e+=e===0,--e,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e+1};Th.prevPow2=function(e){return e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e-(e>>>1)};Th.parity=function(e){return e^=e>>>16,e^=e>>>8,e^=e>>>4,e&=15,27030>>>e&1};var _k=new Array(256);(function(e){for(var t=0;t<256;++t){var r=t,n=t,i=7;for(r>>>=1;r;r>>>=1)n<<=1,n|=r&1,--i;e[t]=n<<i&255}})(_k);Th.reverse=function(e){return _k[e&255]<<24|_k[e>>>8&255]<<16|_k[e>>>16&255]<<8|_k[e>>>24&255]};Th.interleave2=function(e,t){return e&=65535,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,t&=65535,t=(t|t<<8)&16711935,t=(t|t<<4)&252645135,t=(t|t<<2)&858993459,t=(t|t<<1)&1431655765,e|t<<1};Th.deinterleave2=function(e,t){return e=e>>>t&1431655765,e=(e|e>>>1)&858993459,e=(e|e>>>2)&252645135,e=(e|e>>>4)&16711935,e=(e|e>>>16)&65535,e<<16>>16};Th.interleave3=function(e,t,r){return e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,t&=1023,t=(t|t<<16)&4278190335,t=(t|t<<8)&251719695,t=(t|t<<4)&3272356035,t=(t|t<<2)&1227133513,e|=t<<1,r&=1023,r=(r|r<<16)&4278190335,r=(r|r<<8)&251719695,r=(r|r<<4)&3272356035,r=(r|r<<2)&1227133513,e|r<<2};Th.deinterleave3=function(e,t){return e=e>>>t&1227133513,e=(e|e>>>2)&3272356035,e=(e|e>>>4)&251719695,e=(e|e>>>8)&4278190335,e=(e|e>>>16)&1023,e<<22>>22};Th.nextCombination=function(e){var t=e|e-1;return t+1|(~t&-~t)-1>>>zqe(e)+1}});var Oqe=ye((Smr,qqe)=>{"use strict";function Fqe(e,t,r){var n=e[r]|0;if(n<=0)return[];var i=new Array(n),a;if(r===e.length-1)for(a=0;a<n;++a)i[a]=t;else for(a=0;a<n;++a)i[a]=Fqe(e,t,r+1);return i}function aBt(e,t){var r,n;for(r=new Array(e),n=0;n<e;++n)r[n]=t;return r}function oBt(e,t){switch(typeof t=="undefined"&&(t=0),typeof e){case"number":if(e>0)return aBt(e|0,t);break;case"object":if(typeof e.length=="number")return Fqe(e,t,0);break}return[]}qqe.exports=oBt});var Qqe=ye(Wl=>{"use strict";var fx=WY(),Av=Oqe(),Bqe=u2().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:Av([32,0]),UINT16:Av([32,0]),UINT32:Av([32,0]),BIGUINT64:Av([32,0]),INT8:Av([32,0]),INT16:Av([32,0]),INT32:Av([32,0]),BIGINT64:Av([32,0]),FLOAT:Av([32,0]),DOUBLE:Av([32,0]),DATA:Av([32,0]),UINT8C:Av([32,0]),BUFFER:Av([32,0])});var sBt=typeof Uint8ClampedArray!="undefined",lBt=typeof BigUint64Array!="undefined",uBt=typeof BigInt64Array!="undefined",Xh=window.__TYPEDARRAY_POOL;Xh.UINT8C||(Xh.UINT8C=Av([32,0]));Xh.BIGUINT64||(Xh.BIGUINT64=Av([32,0]));Xh.BIGINT64||(Xh.BIGINT64=Av([32,0]));Xh.BUFFER||(Xh.BUFFER=Av([32,0]));var dF=Xh.DATA,vF=Xh.BUFFER;Wl.free=function(t){if(Bqe.isBuffer(t))vF[fx.log2(t.length)].push(t);else{if(Object.prototype.toString.call(t)!=="[object ArrayBuffer]"&&(t=t.buffer),!t)return;var r=t.length||t.byteLength,n=fx.log2(r)|0;dF[n].push(t)}};function Nqe(e){if(e){var t=e.length||e.byteLength,r=fx.log2(t);dF[r].push(e)}}function cBt(e){Nqe(e.buffer)}Wl.freeUint8=Wl.freeUint16=Wl.freeUint32=Wl.freeBigUint64=Wl.freeInt8=Wl.freeInt16=Wl.freeInt32=Wl.freeBigInt64=Wl.freeFloat32=Wl.freeFloat=Wl.freeFloat64=Wl.freeDouble=Wl.freeUint8Clamped=Wl.freeDataView=cBt;Wl.freeArrayBuffer=Nqe;Wl.freeBuffer=function(t){vF[fx.log2(t.length)].push(t)};Wl.malloc=function(t,r){if(r===void 0||r==="arraybuffer")return Bp(t);switch(r){case"uint8":return ZY(t);case"uint16":return Uqe(t);case"uint32":return Vqe(t);case"int8":return Hqe(t);case"int16":return Gqe(t);case"int32":return jqe(t);case"float":case"float32":return Wqe(t);case"double":case"float64":return Zqe(t);case"uint8_clamped":return Xqe(t);case"bigint64":return Kqe(t);case"biguint64":return Yqe(t);case"buffer":return $qe(t);case"data":case"dataview":return Jqe(t);default:return null}return null};function Bp(t){var t=fx.nextPow2(t),r=fx.log2(t),n=dF[r];return n.length>0?n.pop():new ArrayBuffer(t)}Wl.mallocArrayBuffer=Bp;function ZY(e){return new Uint8Array(Bp(e),0,e)}Wl.mallocUint8=ZY;function Uqe(e){return new Uint16Array(Bp(2*e),0,e)}Wl.mallocUint16=Uqe;function Vqe(e){return new Uint32Array(Bp(4*e),0,e)}Wl.mallocUint32=Vqe;function Hqe(e){return new Int8Array(Bp(e),0,e)}Wl.mallocInt8=Hqe;function Gqe(e){return new Int16Array(Bp(2*e),0,e)}Wl.mallocInt16=Gqe;function jqe(e){return new Int32Array(Bp(4*e),0,e)}Wl.mallocInt32=jqe;function Wqe(e){return new Float32Array(Bp(4*e),0,e)}Wl.mallocFloat32=Wl.mallocFloat=Wqe;function Zqe(e){return new Float64Array(Bp(8*e),0,e)}Wl.mallocFloat64=Wl.mallocDouble=Zqe;function Xqe(e){return sBt?new Uint8ClampedArray(Bp(e),0,e):ZY(e)}Wl.mallocUint8Clamped=Xqe;function Yqe(e){return lBt?new BigUint64Array(Bp(8*e),0,e):null}Wl.mallocBigUint64=Yqe;function Kqe(e){return uBt?new BigInt64Array(Bp(8*e),0,e):null}Wl.mallocBigInt64=Kqe;function Jqe(e){return new DataView(Bp(e),0,e)}Wl.mallocDataView=Jqe;function $qe(e){e=fx.nextPow2(e);var t=fx.log2(e),r=vF[t];return r.length>0?r.pop():new Bqe(e)}Wl.mallocBuffer=$qe;Wl.clearCache=function(){for(var t=0;t<32;++t)Xh.UINT8[t].length=0,Xh.UINT16[t].length=0,Xh.UINT32[t].length=0,Xh.INT8[t].length=0,Xh.INT16[t].length=0,Xh.INT32[t].length=0,Xh.FLOAT[t].length=0,Xh.DOUBLE[t].length=0,Xh.BIGUINT64[t].length=0,Xh.BIGINT64[t].length=0,Xh.UINT8C[t].length=0,dF[t].length=0,vF[t].length=0}});var tOe=ye((Emr,eOe)=>{"use strict";var fBt=Object.prototype.toString;eOe.exports=function(e){var t;return fBt.call(e)==="[object Object]"&&(t=Object.getPrototypeOf(e),t===null||t===Object.getPrototypeOf({}))}});var XY=ye((kmr,rOe)=>{rOe.exports=function(t,r){r||(r=[0,""]),t=String(t);var n=parseFloat(t,10);return r[0]=n,r[1]=t.match(/[\d.\-\+]*\s*(.*)/)[1]||"",r}});var aOe=ye((Cmr,nOe)=>{"use strict";var hBt=XY();nOe.exports=iOe;var xk=96;function YY(e,t){var r=hBt(getComputedStyle(e).getPropertyValue(t));return r[0]*iOe(r[1],e)}function dBt(e,t){var r=document.createElement("div");r.style["font-size"]="128"+e,t.appendChild(r);var n=YY(r,"font-size")/128;return t.removeChild(r),n}function iOe(e,t){switch(t=t||document.body,e=(e||"px").trim().toLowerCase(),(t===window||t===document)&&(t=document.body),e){case"%":return t.clientHeight/100;case"ch":case"ex":return dBt(e,t);case"em":return YY(t,"font-size");case"rem":return YY(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 xk;case"cm":return xk/2.54;case"mm":return xk/25.4;case"pt":return xk/72;case"pc":return xk/6}return 1}});var lOe=ye((Lmr,sOe)=>{"use strict";sOe.exports=mF;var vBt=mF.canvas=document.createElement("canvas"),pF=vBt.getContext("2d"),oOe=gF([32,126]);mF.createPairs=gF;mF.ascii=oOe;function mF(e,t){Array.isArray(e)&&(e=e.join(", "));var r={},n,i=16,a=.05;t&&(t.length===2&&typeof t[0]=="number"?n=gF(t):Array.isArray(t)?n=t:(t.o?n=gF(t.o):t.pairs&&(n=t.pairs),t.fontSize&&(i=t.fontSize),t.threshold!=null&&(a=t.threshold))),n||(n=oOe),pF.font=i+"px "+e;for(var o=0;o<n.length;o++){var s=n[o],l=pF.measureText(s[0]).width+pF.measureText(s[1]).width,u=pF.measureText(s).width;if(Math.abs(l-u)>i*a){var c=(u-l)/i;r[s]=c*1e3}}return r}function gF(e){for(var t=[],r=e[0];r<=e[1];r++)for(var n=String.fromCharCode(r),i=e[0];i<e[1];i++){var a=String.fromCharCode(i),o=n+a;t.push(o)}return t}});var hOe=ye((Pmr,fOe)=>{"use strict";fOe.exports=hx;hx.canvas=document.createElement("canvas");hx.cache={};function hx(o,t){t||(t={}),(typeof o=="string"||Array.isArray(o))&&(t.family=o);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var n=t.size||t.fontSize||t.em||48,i=t.weight||t.fontWeight||"",a=t.style||t.fontStyle||"",o=[a,i,n].join(" ")+"px "+r,s=t.origin||"top";if(hx.cache[r]&&n<=hx.cache[r].em)return uOe(hx.cache[r],s);var l=t.canvas||hx.canvas,u=l.getContext("2d"),c={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},f=Math.ceil(n*1.5);l.height=f,l.width=f*.5,u.font=o;var h="H",d={top:0};u.clearRect(0,0,f,f),u.textBaseline="top",u.fillStyle="black",u.fillText(h,0,0);var v=Ym(u.getImageData(0,0,f,f));u.clearRect(0,0,f,f),u.textBaseline="bottom",u.fillText(h,0,f);var x=Ym(u.getImageData(0,0,f,f));d.lineHeight=d.bottom=f-x+v,u.clearRect(0,0,f,f),u.textBaseline="alphabetic",u.fillText(h,0,f);var b=Ym(u.getImageData(0,0,f,f)),p=f-b-1+v;d.baseline=d.alphabetic=p,u.clearRect(0,0,f,f),u.textBaseline="middle",u.fillText(h,0,f*.5);var E=Ym(u.getImageData(0,0,f,f));d.median=d.middle=f-E-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="hanging",u.fillText(h,0,f*.5);var k=Ym(u.getImageData(0,0,f,f));d.hanging=f-k-1+v-f*.5,u.clearRect(0,0,f,f),u.textBaseline="ideographic",u.fillText(h,0,f);var A=Ym(u.getImageData(0,0,f,f));if(d.ideographic=f-A-1+v,c.upper&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.upper,0,0),d.upper=Ym(u.getImageData(0,0,f,f)),d.capHeight=d.baseline-d.upper),c.lower&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.lower,0,0),d.lower=Ym(u.getImageData(0,0,f,f)),d.xHeight=d.baseline-d.lower),c.tittle&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.tittle,0,0),d.tittle=Ym(u.getImageData(0,0,f,f))),c.ascent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.ascent,0,0),d.ascent=Ym(u.getImageData(0,0,f,f))),c.descent&&(u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.descent,0,0),d.descent=cOe(u.getImageData(0,0,f,f))),c.overshoot){u.clearRect(0,0,f,f),u.textBaseline="top",u.fillText(c.overshoot,0,0);var L=cOe(u.getImageData(0,0,f,f));d.overshoot=L-p}for(var _ in d)d[_]/=n;return d.em=n,hx.cache[r]=d,uOe(d,s)}function uOe(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var n in e)n!=="em"&&(r[n]=e[n]-t);return r}function Ym(e){for(var t=e.height,r=e.data,n=3;n<r.length;n+=4)if(r[n]!==0)return Math.floor((n-3)*.25/t)}function cOe(e){for(var t=e.height,r=e.data,n=r.length-1;n>0;n-=4)if(r[n]!==0)return Math.floor((n-3)*.25/t)}});var gOe=ye((Imr,pOe)=>{"use strict";var fA=Eqe(),pBt=Zm(),gBt=GY(),mBt=Iqe(),yBt=EY(),KY=$_(),_Bt=Dqe(),dx=Qqe(),xBt=Q5(),bBt=tOe(),wBt=XY(),TBt=aOe(),ABt=lOe(),SBt=bh(),MBt=hOe(),EBt=W2(),kBt=WY(),dOe=kBt.nextPow2,vOe=new yBt,_F=!1;document.body&&(yF=document.body.appendChild(document.createElement("div")),yF.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(yF).fontStretch&&(_F=!0),document.body.removeChild(yF));var yF,Vu=function(t){CBt(t)?(t={regl:t},this.gl=t.regl._gl):this.gl=mBt(t),this.shader=vOe.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=t.regl||gBt({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),vOe.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(bBt(t)?t:{})};Vu.prototype.createShader=function(){var t=this.regl,r=t({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:t.prop("count"),offset:t.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:t.this("sizeBuffer")},width:{offset:0,stride:8,buffer:t.this("sizeBuffer")},char:t.this("charBuffer"),position:t.this("position")},uniforms:{atlasSize:function(i,a){return[a.atlas.width,a.atlas.height]},atlasDim:function(i,a){return[a.atlas.cols,a.atlas.rows]},atlas:function(i,a){return a.atlas.texture},charStep:function(i,a){return a.atlas.step},em:function(i,a){return a.atlas.em},color:t.prop("color"),opacity:t.prop("opacity"),viewport:t.this("viewportArray"),scale:t.this("scale"),align:t.prop("align"),baseline:t.prop("baseline"),translate:t.this("translate"),positionOffset:t.prop("positionOffset")},primitive:"points",viewport:t.this("viewport"),vert:`
+ precision highp float;
+ attribute float width, charOffset, char;
+ attribute vec2 position;
+ uniform float fontSize, charStep, em, align, baseline;
+ uniform vec4 viewport;
+ uniform vec4 color;
+ uniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;
+ varying vec2 charCoord, charId;
+ varying float charWidth;
+ varying vec4 fontColor;
+ void main () {
+ vec2 offset = floor(em * (vec2(align + charOffset, baseline)
+ + vec2(positionOffset.x, -positionOffset.y)))
+ / (viewport.zw * scale.xy);
+
+ vec2 position = (position + translate) * scale;
+ position += offset * scale;
+
+ charCoord = position * viewport.zw + viewport.xy;
+
+ gl_Position = vec4(position * 2. - 1., 0, 1);
+
+ gl_PointSize = charStep;
+
+ charId.x = mod(char, atlasDim.x);
+ charId.y = floor(char / atlasDim.x);
+
+ charWidth = width * em;
+
+ fontColor = color / 255.;
+ }`,frag:`
+ precision highp float;
+ uniform float fontSize, charStep, opacity;
+ uniform vec2 atlasSize;
+ uniform vec4 viewport;
+ uniform sampler2D atlas;
+ varying vec4 fontColor;
+ varying vec2 charCoord, charId;
+ varying float charWidth;
+
+ float lightness(vec4 color) {
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+ }
+
+ void main () {
+ vec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;
+ float halfCharStep = floor(charStep * .5 + .5);
+
+ // invert y and shift by 1px (FF expecially needs that)
+ uv.y = charStep - uv.y;
+
+ // ignore points outside of character bounding box
+ float halfCharWidth = ceil(charWidth * .5);
+ if (floor(uv.x) > halfCharStep + halfCharWidth ||
+ floor(uv.x) < halfCharStep - halfCharWidth) return;
+
+ uv += charId * charStep;
+ uv = uv / atlasSize;
+
+ vec4 color = fontColor;
+ vec4 mask = texture2D(atlas, uv);
+
+ float maskY = lightness(mask);
+ // float colorY = lightness(color);
+ color.a *= maskY;
+ color.a *= opacity;
+
+ // color.a += .1;
+
+ // antialiasing, see yiq color space y-channel formula
+ // color.rgb += (1. - color.rgb) * (1. - mask.rgb);
+
+ gl_FragColor = color;
+ }`}),n={};return{regl:t,draw:r,atlas:n}};Vu.prototype.update=function(t){var r=this;if(typeof t=="string")t={text:t};else if(!t)return;t=pBt(t,{position:"position positions coord coords coordinates",font:"font fontFace fontface typeface cssFont css-font family fontFamily",fontSize:"fontSize fontsize size font-size",text:"text texts chars characters value values symbols",align:"align alignment textAlign textbaseline",baseline:"baseline textBaseline textbaseline",direction:"dir direction textDirection",color:"color colour fill fill-color fillColor textColor textcolor",kerning:"kerning kern",range:"range dataBox",viewport:"vp viewport viewBox viewbox viewPort",opacity:"opacity alpha transparency visible visibility opaque",offset:"offset positionOffset padding shift indent indentation"},!0),t.opacity!=null&&(Array.isArray(t.opacity)?this.opacity=t.opacity.map(function(ke){return parseFloat(ke)}):this.opacity=parseFloat(t.opacity)),t.viewport!=null&&(this.viewport=xBt(t.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),t.kerning!=null&&(this.kerning=t.kerning),t.offset!=null&&(typeof t.offset=="number"&&(t.offset=[t.offset,0]),this.positionOffset=EBt(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=Vu.baseFontSize+"px sans-serif");var n=!1,i=!1;if(t.font&&(Array.isArray(t.font)?t.font:[t.font]).forEach(function(ke,ge){if(typeof ke=="string")try{ke=fA.parse(ke)}catch(Ge){ke=fA.parse(Vu.baseFontSize+"px "+ke)}else{var ie=ke.style,Te=ke.weight,Ee=ke.stretch,Ae=ke.variant;ke=fA.parse(fA.stringify(ke)),ie&&(ke.style=ie),Te&&(ke.weight=Te),Ee&&(ke.stretch=Ee),Ae&&(ke.variant=Ae)}var ze=fA.stringify({size:Vu.baseFontSize,family:ke.family,stretch:_F?ke.stretch:void 0,variant:ke.variant,weight:ke.weight,style:ke.style}),Ce=wBt(ke.size),me=Math.round(Ce[0]*TBt(Ce[1]));if(me!==r.fontSize[ge]&&(i=!0,r.fontSize[ge]=me),(!r.font[ge]||ze!=r.font[ge].baseString)&&(n=!0,r.font[ge]=Vu.fonts[ze],!r.font[ge])){var Re=ke.family.join(", "),ce=[ke.style];ke.style!=ke.variant&&ce.push(ke.variant),ke.variant!=ke.weight&&ce.push(ke.weight),_F&&ke.weight!=ke.stretch&&ce.push(ke.stretch),r.font[ge]={baseString:ze,family:Re,weight:ke.weight,stretch:ke.stretch,style:ke.style,variant:ke.variant,width:{},kerning:{},metrics:MBt(Re,{origin:"top",fontSize:Vu.baseFontSize,fontStyle:ce.join(" ")})},Vu.fonts[ze]=r.font[ge]}}),(n||i)&&this.font.forEach(function(ke,ge){var ie=fA.stringify({size:r.fontSize[ge],family:ke.family,stretch:_F?ke.stretch:void 0,variant:ke.variant,weight:ke.weight,style:ke.style});if(r.fontAtlas[ge]=r.shader.atlas[ie],!r.fontAtlas[ge]){var Te=ke.metrics;r.shader.atlas[ie]=r.fontAtlas[ge]={fontString:ie,step:Math.ceil(r.fontSize[ge]*Te.bottom*.5)*2,em:r.fontSize[ge],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:r.regl.texture()}}t.text==null&&(t.text=r.text)}),typeof t.text=="string"&&t.position&&t.position.length>2){for(var a=Array(t.position.length*.5),o=0;o<a.length;o++)a[o]=t.text;t.text=a}var s;if(t.text!=null||n){if(this.textOffsets=[0],Array.isArray(t.text)){this.count=t.text[0].length,this.counts=[this.count];for(var l=1;l<t.text.length;l++)this.textOffsets[l]=this.textOffsets[l-1]+t.text[l-1].length,this.count+=t.text[l].length,this.counts.push(t.text[l].length);this.text=t.text.join("")}else this.text=t.text,this.count=this.text.length,this.counts=[this.count];s=[],this.font.forEach(function(ke,ge){Vu.atlasContext.font=ke.baseString;for(var ie=r.fontAtlas[ge],Te=0;Te<r.text.length;Te++){var Ee=r.text.charAt(Te);if(ie.ids[Ee]==null&&(ie.ids[Ee]=ie.chars.length,ie.chars.push(Ee),s.push(Ee)),ke.width[Ee]==null&&(ke.width[Ee]=Vu.atlasContext.measureText(Ee).width/Vu.baseFontSize,r.kerning)){var Ae=[];for(var ze in ke.width)Ae.push(ze+Ee,Ee+ze);SBt(ke.kerning,ABt(ke.family,{pairs:Ae}))}}})}if(t.position)if(t.position.length>2){for(var u=!t.position[0].length,c=dx.mallocFloat(this.count*2),f=0,h=0;f<this.counts.length;f++){var d=this.counts[f];if(u)for(var v=0;v<d;v++)c[h++]=t.position[f*2],c[h++]=t.position[f*2+1];else for(var x=0;x<d;x++)c[h++]=t.position[f][0],c[h++]=t.position[f][1]}this.position.call?this.position({type:"float",data:c}):this.position=this.regl.buffer({type:"float",data:c}),dx.freeFloat(c)}else this.position.destroy&&this.position.destroy(),this.position={constant:t.position};if(t.text||n){var b=dx.mallocUint8(this.count),p=dx.mallocFloat(this.count*2);this.textWidth=[];for(var E=0,k=0;E<this.counts.length;E++){for(var A=this.counts[E],L=this.font[E]||this.font[0],_=this.fontAtlas[E]||this.fontAtlas[0],C=0;C<A;C++){var M=this.text.charAt(k),g=this.text.charAt(k-1);if(b[k]=_.ids[M],p[k*2]=L.width[M],C){var P=p[k*2-2],T=p[k*2],F=p[k*2-1],q=F+P*.5+T*.5;if(this.kerning){var V=L.kerning[g+M];V&&(q+=V*.001)}p[k*2+1]=q}else p[k*2+1]=p[k*2]*.5;k++}this.textWidth.push(p.length?p[k*2-2]*.5+p[k*2-1]:0)}t.align||(t.align=this.align),this.charBuffer({data:b,type:"uint8",usage:"stream"}),this.sizeBuffer({data:p,type:"float",usage:"stream"}),dx.freeUint8(b),dx.freeFloat(p),s.length&&this.font.forEach(function(ke,ge){var ie=r.fontAtlas[ge],Te=ie.step,Ee=Math.floor(Vu.maxAtlasSize/Te),Ae=Math.min(Ee,ie.chars.length),ze=Math.ceil(ie.chars.length/Ae),Ce=dOe(Ae*Te),me=dOe(ze*Te);ie.width=Ce,ie.height=me,ie.rows=ze,ie.cols=Ae,ie.em&&ie.texture({data:_Bt({canvas:Vu.atlasCanvas,font:ie.fontString,chars:ie.chars,shape:[Ce,me],step:[Te,Te]})})})}if(t.align&&(this.align=t.align,this.alignOffset=this.textWidth.map(function(ke,ge){var ie=Array.isArray(r.align)?r.align.length>1?r.align[ge]:r.align[0]:r.align;if(typeof ie=="number")return ie;switch(ie){case"right":case"end":return-ke;case"center":case"centre":case"middle":return-ke*.5}return 0})),this.baseline==null&&t.baseline==null&&(t.baseline=0),t.baseline!=null&&(this.baseline=t.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(ke,ge){var ie=(r.font[ge]||r.font[0]).metrics,Te=0;return Te+=ie.bottom*.5,typeof ke=="number"?Te+=ke-ie.baseline:Te+=-ie[ke],Te*=-1,Te})),t.color!=null)if(t.color||(t.color="transparent"),typeof t.color=="string"||!isNaN(t.color))this.color=KY(t.color,"uint8");else{var H;if(typeof t.color[0]=="number"&&t.color.length>this.counts.length){var X=t.color.length;H=dx.mallocUint8(X);for(var G=(t.color.subarray||t.color.slice).bind(t.color),N=0;N<X;N+=4)H.set(KY(G(N,N+4),"uint8"),N)}else{var W=t.color.length;H=dx.mallocUint8(W*4);for(var re=0;re<W;re++)H.set(KY(t.color[re]||0,"uint8"),re*4)}this.color=H}if(t.position||t.text||t.color||t.baseline||t.align||t.font||t.offset||t.opacity){var ae=this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(ae){var _e=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(_e);for(var Me=0;Me<this.batch.length;Me++)this.batch[Me]={count:this.counts.length>1?this.counts[Me]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[Me]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(Me*4,Me*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[Me]:this.opacity,baseline:this.baselineOffset[Me]!=null?this.baselineOffset[Me]:this.baselineOffset[0],align:this.align?this.alignOffset[Me]!=null?this.alignOffset[Me]:this.alignOffset[0]:0,atlas:this.fontAtlas[Me]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(Me*2,Me*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}};Vu.prototype.destroy=function(){};Vu.prototype.kerning=!0;Vu.prototype.position={constant:new Float32Array(2)};Vu.prototype.translate=null;Vu.prototype.scale=null;Vu.prototype.font=null;Vu.prototype.text="";Vu.prototype.positionOffset=[0,0];Vu.prototype.opacity=1;Vu.prototype.color=new Uint8Array([0,0,0,255]);Vu.prototype.alignOffset=[0,0];Vu.maxAtlasSize=1024;Vu.atlasCanvas=document.createElement("canvas");Vu.atlasContext=Vu.atlasCanvas.getContext("2d",{alpha:!1});Vu.baseFontSize=64;Vu.fonts={};function CBt(e){return typeof e=="function"&&e._gl&&e.prop&&e.texture&&e.buffer}pOe.exports=Vu});var xF=ye((Rmr,mOe)=>{"use strict";var LBt=pZ(),PBt=GY();mOe.exports=function(t,r,n){var i=t._fullLayout,a=!0;return i._glcanvas.each(function(o){if(o.regl){o.regl.preloadCachedCode(n);return}if(!(o.pick&&!i._has("parcoords"))){try{o.regl=PBt({canvas:this,attributes:{antialias:!o.pick,preserveDrawingBuffer:!0},pixelRatio:t._context.plotGlPixelRatio||window.devicePixelRatio,extensions:r||[],cachedCode:n||{}})}catch(s){a=!1}o.regl||(a=!1),a&&this.addEventListener("webglcontextlost",function(s){t&&t.emit&&t.emit("plotly_webglcontextlost",{event:s,layer:o.key})},!1)}}),a||LBt({container:i._glcontainer.node()}),a}});var QY=ye(($Y,wOe)=>{"use strict";var yOe=QX(),_Oe=LY(),IBt=lqe(),xOe=gOe(),JY=Mr(),RBt=Sg().selectMode,DBt=xF(),zBt=lu(),FBt=hU(),qBt=YX().styleTextSelection,bOe={};function OBt(e,t,r,n){var i=e._size,a=e.width*n,o=e.height*n,s=i.l*n,l=i.b*n,u=i.r*n,c=i.t*n,f=i.w*n,h=i.h*n;return[s+t.domain[0]*f,l+r.domain[0]*h,a-u-(1-t.domain[1])*f,o-c-(1-r.domain[1])*h]}var $Y=wOe.exports=function(t,r,n){if(n.length){var i=t._fullLayout,a=r._scene,o=r.xaxis,s=r.yaxis,l,u;if(a){var c=DBt(t,["ANGLE_instanced_arrays","OES_element_index_uint"],bOe);if(!c){a.init();return}var f=a.count,h=i._glcanvas.data()[0].regl;if(FBt(t,r,n),a.dirty){if((a.line2d||a.error2d)&&!(a.scatter2d||a.fill2d||a.glText)&&h.clear({}),a.error2d===!0&&(a.error2d=IBt(h)),a.line2d===!0&&(a.line2d=_Oe(h)),a.scatter2d===!0&&(a.scatter2d=yOe(h)),a.fill2d===!0&&(a.fill2d=_Oe(h)),a.glText===!0)for(a.glText=new Array(f),l=0;l<f;l++)a.glText[l]=new xOe(h);if(a.glText){if(f>a.glText.length){var d=f-a.glText.length;for(l=0;l<d;l++)a.glText.push(new xOe(h))}else if(f<a.glText.length){var v=a.glText.length-f,x=a.glText.splice(f,v);x.forEach(function(W){W.destroy()})}for(l=0;l<f;l++)a.glText[l].update(a.textOptions[l])}if(a.line2d&&(a.line2d.update(a.lineOptions),a.lineOptions=a.lineOptions.map(function(W){if(W&&W.positions){for(var re=W.positions,ae=0;ae<re.length&&(isNaN(re[ae])||isNaN(re[ae+1]));)ae+=2;for(var _e=re.length-2;_e>ae&&(isNaN(re[_e])||isNaN(re[_e+1]));)_e-=2;W.positions=re.slice(ae,_e+2)}return W}),a.line2d.update(a.lineOptions)),a.error2d){var b=(a.errorXOptions||[]).concat(a.errorYOptions||[]);a.error2d.update(b)}a.scatter2d&&a.scatter2d.update(a.markerOptions),a.fillOrder=JY.repeat(null,f),a.fill2d&&(a.fillOptions=a.fillOptions.map(function(W,re){var ae=n[re];if(!(!W||!ae||!ae[0]||!ae[0].trace)){var _e=ae[0],Me=_e.trace,ke=_e.t,ge=a.lineOptions[re],ie,Te,Ee=[];Me._ownfill&&Ee.push(re),Me._nexttrace&&Ee.push(re+1),Ee.length&&(a.fillOrder[re]=Ee);var Ae=[],ze=ge&&ge.positions||ke.positions,Ce,me;if(Me.fill==="tozeroy"){for(Ce=0;Ce<ze.length&&isNaN(ze[Ce+1]);)Ce+=2;for(me=ze.length-2;me>Ce&&isNaN(ze[me+1]);)me-=2;ze[Ce+1]!==0&&(Ae=[ze[Ce],0]),Ae=Ae.concat(ze.slice(Ce,me+2)),ze[me+1]!==0&&(Ae=Ae.concat([ze[me],0]))}else if(Me.fill==="tozerox"){for(Ce=0;Ce<ze.length&&isNaN(ze[Ce]);)Ce+=2;for(me=ze.length-2;me>Ce&&isNaN(ze[me]);)me-=2;ze[Ce]!==0&&(Ae=[0,ze[Ce+1]]),Ae=Ae.concat(ze.slice(Ce,me+2)),ze[me]!==0&&(Ae=Ae.concat([0,ze[me+1]]))}else if(Me.fill==="toself"||Me.fill==="tonext"){for(Ae=[],ie=0,W.splitNull=!0,Te=0;Te<ze.length;Te+=2)(isNaN(ze[Te])||isNaN(ze[Te+1]))&&(Ae=Ae.concat(ze.slice(ie,Te)),Ae.push(ze[ie],ze[ie+1]),Ae.push(null,null),ie=Te+2);Ae=Ae.concat(ze.slice(ie)),ie&&Ae.push(ze[ie],ze[ie+1])}else{var Re=Me._nexttrace;if(Re){var ce=a.lineOptions[re+1];if(ce){var Ge=ce.positions;if(Me.fill==="tonexty"){for(Ae=ze.slice(),re=Math.floor(Ge.length/2);re--;){var nt=Ge[re*2],ct=Ge[re*2+1];isNaN(nt)||isNaN(ct)||Ae.push(nt,ct)}W.fill=Re.fillcolor}}}}if(Me._prevtrace&&Me._prevtrace.fill==="tonext"){var qt=a.lineOptions[re-1].positions,rt=Ae.length/2;ie=rt;var ot=[ie];for(Te=0;Te<qt.length;Te+=2)(isNaN(qt[Te])||isNaN(qt[Te+1]))&&(ot.push(Te/2+rt+1),ie=Te+2);Ae=Ae.concat(qt),W.hole=ot}return W.fillmode=Me.fill,W.opacity=Me.opacity,W.positions=Ae,W}}),a.fill2d.update(a.fillOptions))}var p=i.dragmode,E=RBt(p),k=i.clickmode.indexOf("select")>-1;for(l=0;l<f;l++){var A=n[l][0],L=A.trace,_=A.t,C=_.index,M=L._length,g=_.x,P=_.y;if(L.selectedpoints||E||k){if(E||(E=!0),L.selectedpoints){var T=a.selectBatch[C]=JY.selIndices2selPoints(L),F={};for(u=0;u<T.length;u++)F[T[u]]=1;var q=[];for(u=0;u<M;u++)F[u]||q.push(u);a.unselectBatch[C]=q}var V=_.xpx=new Array(M),H=_.ypx=new Array(M);for(u=0;u<M;u++)V[u]=o.c2p(g[u]),H[u]=s.c2p(P[u])}else _.xpx=_.ypx=null}if(E){if(a.select2d||(a.select2d=yOe(i._glcanvas.data()[1].regl)),a.scatter2d){var X=new Array(f);for(l=0;l<f;l++)X[l]=a.selectBatch[l].length||a.unselectBatch[l].length?a.markerUnselectedOptions[l]:{};a.scatter2d.update(X)}a.select2d&&(a.select2d.update(a.markerOptions),a.select2d.update(a.markerSelectedOptions)),a.glText&&n.forEach(function(W){var re=((W||[])[0]||{}).trace||{};zBt.hasText(re)&&qBt(W)})}else a.scatter2d&&a.scatter2d.update(a.markerOptions);var G={viewport:OBt(i,o,s,t._context.plotGlPixelRatio),range:[(o._rl||o.range)[0],(s._rl||s.range)[0],(o._rl||o.range)[1],(s._rl||s.range)[1]]},N=JY.repeat(G,a.count);a.fill2d&&a.fill2d.update(N),a.line2d&&a.line2d.update(N),a.error2d&&a.error2d.update(N.concat(N)),a.scatter2d&&a.scatter2d.update(N),a.select2d&&a.select2d.update(N),a.glText&&a.glText.forEach(function(W){W.update(G)})}}};$Y.reglPrecompiled=bOe});var SOe=ye((Dmr,AOe)=>{"use strict";var TOe=Hze();TOe.plot=QY();AOe.exports=TOe});var EOe=ye((zmr,MOe)=>{"use strict";MOe.exports=SOe()});var eK=ye((Fmr,POe)=>{"use strict";var BBt=Uc(),LOe=Jl(),kOe=Oc().axisHoverFormat,NBt=Wo().hovertemplateAttrs,bk=tk(),UBt=ad().idRegex,VBt=Vs().templatedArray,hA=no().extendFlat,o1=BBt.marker,HBt=o1.line,GBt=hA(LOe("marker.line",{editTypeOverride:"calc"}),{width:hA({},HBt.width,{editType:"calc"}),editType:"calc"}),bF=hA(LOe("marker"),{symbol:o1.symbol,angle:o1.angle,size:hA({},o1.size,{editType:"markerSize"}),sizeref:o1.sizeref,sizemin:o1.sizemin,sizemode:o1.sizemode,opacity:o1.opacity,colorbar:o1.colorbar,line:GBt,editType:"calc"});bF.color.editType=bF.cmin.editType=bF.cmax.editType="style";function COe(e){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:UBt[e],editType:"plot"}}}POe.exports={dimensions:VBt("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:hA({},bk.text,{}),hovertext:hA({},bk.hovertext,{}),hovertemplate:NBt(),xhoverformat:kOe("x"),yhoverformat:kOe("y"),marker:bF,xaxes:COe("x"),yaxes:COe("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:bk.selected.marker,editType:"calc"},unselected:{marker:bk.unselected.marker,editType:"calc"},opacity:bk.opacity}});var wF=ye((qmr,IOe)=>{"use strict";IOe.exports=function(e,t,r,n){n||(n=1/0);var i,a;for(i=0;i<t.length;i++)a=t[i],a.visible&&(n=Math.min(n,a[r].length));for(n===1/0&&(n=0),e._length=n,i=0;i<t.length;i++)a=t[i],a.visible&&(a._length=n);return n}});var zOe=ye((Omr,DOe)=>{"use strict";var tK=Mr(),jBt=Zd(),ROe=eK(),WBt=lu(),ZBt=$p(),XBt=wF(),YBt=Fz().isOpenSymbol;DOe.exports=function(t,r,n,i){function a(d,v){return tK.coerce(t,r,ROe,d,v)}var o=jBt(t,r,{name:"dimensions",handleItemDefaults:KBt}),s=a("diagonal.visible"),l=a("showupperhalf"),u=a("showlowerhalf"),c=XBt(r,o,"values");if(!c||!s&&!l&&!u){r.visible=!1;return}a("text"),a("hovertext"),a("hovertemplate"),a("xhoverformat"),a("yhoverformat"),ZBt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0});var f=YBt(r.marker.symbol),h=WBt.isBubble(r);a("marker.line.width",f||h?1:0),JBt(t,r,i,a),tK.coerceSelectionMarkerOpacity(r,a)};function KBt(e,t){function r(i,a){return tK.coerce(e,t,ROe.dimensions,i,a)}r("label");var n=r("values");n&&n.length?r("visible"):t.visible=!1,r("axis.type"),r("axis.matches")}function JBt(e,t,r,n){var i=t.dimensions,a=i.length,o=t.showupperhalf,s=t.showlowerhalf,l=t.diagonal.visible,u,c,f=new Array(a),h=new Array(a);for(u=0;u<a;u++){var d=u?u+1:"";f[u]="x"+d,h[u]="y"+d}var v=n("xaxes",f),x=n("yaxes",h),b=t._diag=new Array(a);t._xaxes={},t._yaxes={};var p=[],E=[];function k(F,q,V,H){if(F){var X=F.charAt(0),G=r._splomAxes[X];if(t["_"+X+"axes"][F]=1,H.push(F),!(F in G)){var N=G[F]={};V&&(N.label=V.label||"",V.visible&&V.axis&&(V.axis.type&&(N.type=V.axis.type),V.axis.matches&&(N.matches=q)))}}}var A=!l&&!s,L=!l&&!o;for(t._axesDim={},u=0;u<a;u++){var _=i[u],C=u===0,M=u===a-1,g=C&&A||M&&L?void 0:v[u],P=C&&L||M&&A?void 0:x[u];k(g,P,_,p),k(P,g,_,E),b[u]=[g,P],t._axesDim[g]=u,t._axesDim[P]=u}for(u=0;u<p.length;u++)for(c=0;c<E.length;c++){var T=p[u]+E[c];(u>c&&o||u<c&&s||u===c&&(l||!s||!o))&&(r._splomSubplots[T]=1)}(!s||!l&&o&&s)&&(r._splomGridDflt.xside="bottom",r._splomGridDflt.yside="left")}});var OOe=ye((Bmr,qOe)=>{"use strict";var FOe=Mr();qOe.exports=function(t,r){var n=t._fullLayout,i=r.uid,a=n._splomScenes;a||(a=n._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},s={matrix:!1,selectBatch:[],unselectBatch:[]},l=a[r.uid];return l||(l=a[i]=FOe.extendFlat({},o,s),l.draw=function(){l.matrix&&l.matrix.draw&&(l.selectBatch.length||l.unselectBatch.length?l.matrix.draw(l.unselectBatch,l.selectBatch):l.matrix.draw()),l.dirty=!1},l.destroy=function(){l.matrix&&l.matrix.destroy&&l.matrix.destroy(),l.matrixOptions=null,l.selectBatch=null,l.unselectBatch=null,l=null}),l.dirty||FOe.extendFlat(l,o),l}});var UOe=ye((Nmr,NOe)=>{"use strict";var rK=Mr(),TF=af(),$Bt=q0().calcMarkerSize,QBt=q0().calcAxisExpansion,eNt=z0(),BOe=Y2().markerSelection,tNt=Y2().markerStyle,rNt=OOe(),iNt=es().BADNUM,nNt=sx().TOO_MANY_POINTS;NOe.exports=function(t,r){var n=r.dimensions,i=r._length,a={},o=a.cdata=[],s=a.data=[],l=r._visibleDims=[],u,c,f,h,d;function v(k,A){for(var L=k.makeCalcdata({v:A.values,vcalendar:r.calendar},"v"),_=0;_<L.length;_++)L[_]=L[_]===iNt?NaN:L[_];o.push(L),s.push(k.type==="log"?rK.simpleMap(L,k.c2l):L)}for(u=0;u<n.length;u++)if(f=n[u],f.visible){if(h=TF.getFromId(t,r._diag[u][0]),d=TF.getFromId(t,r._diag[u][1]),h&&d&&h.type!==d.type){rK.log("Skipping splom dimension "+u+" with conflicting axis types");continue}h?(v(h,f),d&&d.type==="category"&&(d._categories=h._categories.slice())):v(d,f),l.push(u)}eNt(t,r),rK.extendFlat(a,tNt(t,r));var x=o.length,b=x*i>nNt,p;for(b?p=a.sizeAvg||Math.max(a.size,3):p=$Bt(r,i),c=0;c<l.length;c++)u=l[c],f=n[u],h=TF.getFromId(t,r._diag[u][0])||{},d=TF.getFromId(t,r._diag[u][1])||{},QBt(t,r,h,d,o[c],o[c],p);var E=rNt(t,r);return E.matrix||(E.matrix=!0),E.matrixOptions=a,E.selectedOptions=BOe(t,r,r.selected),E.unselectedOptions=BOe(t,r,r.unselected),[{x:!1,y:!1,t:{},trace:r}]}});var HOe=ye((VOe,wk)=>{(function(){var e,t,r,n,i,a;typeof performance!="undefined"&&performance!==null&&performance.now?wk.exports=function(){return performance.now()}:typeof process!="undefined"&&process!==null&&process.hrtime?(wk.exports=function(){return(e()-i)/1e6},t=process.hrtime,e=function(){var o;return o=t(),o[0]*1e9+o[1]},n=e(),a=process.uptime()*1e9,i=n-a):Date.now?(wk.exports=function(){return Date.now()-r},r=Date.now()):(wk.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(VOe)});var jOe=ye((Umr,MF)=>{var aNt=HOe(),s1=window,AF=["moz","webkit"],vA="AnimationFrame",pA=s1["request"+vA],Tk=s1["cancel"+vA]||s1["cancelRequest"+vA];for(dA=0;!pA&&dA<AF.length;dA++)pA=s1[AF[dA]+"Request"+vA],Tk=s1[AF[dA]+"Cancel"+vA]||s1[AF[dA]+"CancelRequest"+vA];var dA;(!pA||!Tk)&&(SF=0,iK=0,vx=[],GOe=1e3/60,pA=function(e){if(vx.length===0){var t=aNt(),r=Math.max(0,GOe-(t-SF));SF=r+t,setTimeout(function(){var n=vx.slice(0);vx.length=0;for(var i=0;i<n.length;i++)if(!n[i].cancelled)try{n[i].callback(SF)}catch(a){setTimeout(function(){throw a},0)}},Math.round(r))}return vx.push({handle:++iK,callback:e,cancelled:!1}),iK},Tk=function(e){for(var t=0;t<vx.length;t++)vx[t].handle===e&&(vx[t].cancelled=!0)});var SF,iK,vx,GOe;MF.exports=function(e){return pA.call(s1,e)};MF.exports.cancel=function(){Tk.apply(s1,arguments)};MF.exports.polyfill=function(e){e||(e=s1),e.requestAnimationFrame=pA,e.cancelAnimationFrame=Tk}});var ZOe=ye((Vmr,WOe)=>{WOe.exports=function(t,r){var n=typeof t=="number",i=typeof r=="number";n&&!i?(r=t,t=0):!n&&!i&&(t=0,r=0),t=t|0,r=r|0;var a=r-t;if(a<0)throw new Error("array length must be positive");for(var o=new Array(a),s=0,l=t;s<a;s++,l++)o[s]=l;return o}});var JOe=ye((Hmr,KOe)=>{"use strict";var oNt=QX(),sNt=Zm(),lNt=j2(),XOe=jOe(),uNt=ZOe(),nK=Q5(),cNt=W2();KOe.exports=px;function px(e,t){if(!(this instanceof px))return new px(e,t);this.traces=[],this.passes={},this.regl=e,this.scatter=oNt(e),this.canvas=this.scatter.canvas}px.prototype.render=function(...e){return e.length&&this.update(...e),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=XOe(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,XOe(()=>{this.dirty=!1})),this)};px.prototype.update=function(...e){if(!e.length)return;for(let n=0;n<e.length;n++)this.updateItem(n,e[n]);this.traces=this.traces.filter(Boolean);let t=[],r=0;for(let n=0;n<this.traces.length;n++){let i=this.traces[n],a=this.traces[n].passes;for(let o=0;o<a.length;o++)t.push(this.passes[a[o]]);i.passOffset=r,r+=i.passes.length}return this.scatter.update(...t),this};px.prototype.updateItem=function(e,t){let{regl:r}=this;if(t===null)return this.traces[e]=null,this;if(!t)return this;let n=sNt(t,{data:"data items columns rows values dimensions samples x",snap:"snap cluster",size:"sizes size radius",color:"colors color fill fill-color fillColor",opacity:"opacity alpha transparency opaque",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",borderColor:"borderColors borderColor bordercolor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range ranges databox dataBox",viewport:"viewport viewBox viewbox",domain:"domain domains area areas",padding:"pad padding paddings pads margin margins",transpose:"transpose transposed",diagonal:"diagonal diag showDiagonal",upper:"upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf",lower:"lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower"}),i=this.traces[e]||(this.traces[e]={id:e,buffer:r.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),color:"black",marker:null,size:12,borderColor:"transparent",borderSize:1,viewport:nK([r._gl.drawingBufferWidth,r._gl.drawingBufferHeight]),padding:[0,0,0,0],opacity:1,diagonal:!0,upper:!0,lower:!0});if(n.color!=null&&(i.color=n.color),n.size!=null&&(i.size=n.size),n.marker!=null&&(i.marker=n.marker),n.borderColor!=null&&(i.borderColor=n.borderColor),n.borderSize!=null&&(i.borderSize=n.borderSize),n.opacity!=null&&(i.opacity=n.opacity),n.viewport&&(i.viewport=nK(n.viewport)),n.diagonal!=null&&(i.diagonal=n.diagonal),n.upper!=null&&(i.upper=n.upper),n.lower!=null&&(i.lower=n.lower),n.data){i.buffer(cNt(n.data)),i.columns=n.data.length,i.count=n.data[0].length,i.bounds=[];for(let x=0;x<i.columns;x++)i.bounds[x]=lNt(n.data[x],1)}let a;n.range&&(i.range=n.range,a=i.range&&typeof i.range[0]!="number"),n.domain&&(i.domain=n.domain);let o=!1;n.padding!=null&&(Array.isArray(n.padding)&&n.padding.length===i.columns&&typeof n.padding[n.padding.length-1]=="number"?(i.padding=n.padding.map(YOe),o=!0):i.padding=YOe(n.padding));let s=i.columns,l=i.count,u=i.viewport.width,c=i.viewport.height,f=i.viewport.x,h=i.viewport.y,d=u/s,v=c/s;i.passes=[];for(let x=0;x<s;x++)for(let b=0;b<s;b++){if(!i.diagonal&&b===x||!i.upper&&x>b||!i.lower&&x<b)continue;let p=fNt(i.id,x,b),E=this.passes[p]||(this.passes[p]={});if(n.data&&(n.transpose?E.positions={x:{buffer:i.buffer,offset:b,count:l,stride:s},y:{buffer:i.buffer,offset:x,count:l,stride:s}}:E.positions={x:{buffer:i.buffer,offset:b*l,count:l},y:{buffer:i.buffer,offset:x*l,count:l}},E.bounds=EF(i.bounds,x,b)),n.domain||n.viewport||n.data){let k=o?EF(i.padding,x,b):i.padding;if(i.domain){let[A,L,_,C]=EF(i.domain,x,b);E.viewport=[f+A*u+k[0],h+L*c+k[1],f+_*u-k[2],h+C*c-k[3]]}else E.viewport=[f+b*d+d*k[0],h+x*v+v*k[1],f+(b+1)*d-d*k[2],h+(x+1)*v-v*k[3]]}n.color&&(E.color=i.color),n.size&&(E.size=i.size),n.marker&&(E.marker=i.marker),n.borderSize&&(E.borderSize=i.borderSize),n.borderColor&&(E.borderColor=i.borderColor),n.opacity&&(E.opacity=i.opacity),n.range&&(E.range=a?EF(i.range,x,b):i.range||E.bounds),i.passes.push(p)}return this};px.prototype.draw=function(...e){if(!e.length)this.scatter.draw();else{let t=[];for(let r=0;r<e.length;r++)if(typeof e[r]=="number"){let{passes:n,passOffset:i}=this.traces[e[r]];t.push(...uNt(i,i+n.length))}else if(e[r].length){let n=e[r],{passes:i,passOffset:a}=this.traces[r];i=i.map((o,s)=>{t[a+s]=n})}this.scatter.draw(...t)}return this};px.prototype.destroy=function(){return this.traces.forEach(e=>{e.buffer&&e.buffer.destroy&&e.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function fNt(e,t,r){let n=e.id!=null?e.id:e,i=t,a=r;return n<<16|(i&255)<<8|a&255}function EF(e,t,r){let n,i,a,o,s,l,u,c,f=e[t],h=e[r];return f.length>2?(n=f[0],a=f[2],i=f[1],o=f[3]):f.length?(n=i=f[0],a=o=f[1]):(n=f.x,i=f.y,a=f.x+f.width,o=f.y+f.height),h.length>2?(s=h[0],u=h[2],l=h[1],c=h[3]):h.length?(s=l=h[0],u=c=h[1]):(s=h.x,l=h.y,u=h.x+h.width,c=h.y+h.height),[s,i,u,o]}function YOe(e){if(typeof e=="number")return[e,e,e,e];if(e.length===2)return[e[0],e[1],e[0],e[1]];{let t=nK(e);return[t.x,t.y,t.x+t.width,t.y+t.height]}}});var QOe=ye((Gmr,$Oe)=>{"use strict";var hNt=JOe(),aK=Mr(),kF=af(),dNt=Sg().selectMode;$Oe.exports=function(t,r,n){if(n.length)for(var i=0;i<n.length;i++)vNt(t,n[i][0])};function vNt(e,t){var r=e._fullLayout,n=r._size,i=t.trace,a=t.t,o=r._splomScenes[i.uid],s=o.matrixOptions,l=s.cdata,u=r._glcanvas.data()[0].regl,c=r.dragmode,f,h,d,v,x;if(l.length!==0){s.lower=i.showupperhalf,s.upper=i.showlowerhalf,s.diagonal=i.diagonal.visible;var b=i._visibleDims,p=l.length,E=o.viewOpts={};for(E.ranges=new Array(p),E.domains=new Array(p),x=0;x<b.length;x++){d=b[x];var k=E.ranges[x]=new Array(4),A=E.domains[x]=new Array(4);f=kF.getFromId(e,i._diag[d][0]),f&&(k[0]=f._rl[0],k[2]=f._rl[1],A[0]=f.domain[0],A[2]=f.domain[1]),h=kF.getFromId(e,i._diag[d][1]),h&&(k[1]=h._rl[0],k[3]=h._rl[1],A[1]=h.domain[0],A[3]=h.domain[1])}var L=e._context.plotGlPixelRatio,_=n.l*L,C=n.b*L,M=n.w*L,g=n.h*L;E.viewport=[_,C,M+_,g+C],o.matrix===!0&&(o.matrix=hNt(u));var P=r.clickmode.indexOf("select")>-1,T=dNt(c)||!!i.selectedpoints||P,F=!0;if(T){var q=i._length;if(i.selectedpoints){o.selectBatch=i.selectedpoints;var V=i.selectedpoints,H={};for(d=0;d<V.length;d++)H[V[d]]=!0;var X=[];for(d=0;d<q;d++)H[d]||X.push(d);o.unselectBatch=X}var G=a.xpx=new Array(p),N=a.ypx=new Array(p);for(x=0;x<b.length;x++){if(d=b[x],f=kF.getFromId(e,i._diag[d][0]),f)for(G[x]=new Array(q),v=0;v<q;v++)G[x][v]=f.c2p(l[x][v]);if(h=kF.getFromId(e,i._diag[d][1]),h)for(N[x]=new Array(q),v=0;v<q;v++)N[x][v]=h.c2p(l[x][v])}if(o.selectBatch.length||o.unselectBatch.length){var W=aK.extendFlat({},s,o.unselectedOptions,E),re=aK.extendFlat({},s,o.selectedOptions,E);o.matrix.update(W,re),F=!1}}else a.xpx=a.ypx=null;if(F){var ae=aK.extendFlat({},s,E);o.matrix.update(ae,null)}}}});var oK=ye(eBe=>{"use strict";eBe.getDimIndex=function(t,r){for(var n=r._id,i=n.charAt(0),a={x:0,y:1}[i],o=t._visibleDims,s=0;s<o.length;s++){var l=o[s];if(t._diag[l][a]===n)return s}return!1}});var aBe=ye((Wmr,nBe)=>{"use strict";var tBe=oK(),pNt=zz().calcHover,rBe=Qa().getFromId,gNt=no().extendFlat;function mNt(e,t,r,n,i){i||(i={});var a=(n||"").charAt(0)==="x",o=(n||"").charAt(0)==="y",s=iBe(e,t,r);if((a||o)&&i.hoversubplots==="axis"&&s[0])for(var l=(a?e.xa:e.ya)._subplotsWith,u=i.gd,c=gNt({},e),f=0;f<l.length;f++){var h=l[f];if(h!==e.xa._id+e.ya._id){o?c.xa=rBe(u,h,"x"):c.ya=rBe(u,h,"y");var d=a||o,v=iBe(c,t,r,d);s=s.concat(v)}}return s}function iBe(e,t,r,n){var i=e.cd,a=i[0].trace,o=e.scene,s=o.matrixOptions.cdata,l=e.xa,u=e.ya,c=l.c2p(t),f=u.c2p(r),h=e.distance,d=tBe.getDimIndex(a,l),v=tBe.getDimIndex(a,u);if(d===!1||v===!1)return[e];for(var x=s[d],b=s[v],p,E,k=h,A=0;A<x.length;A++)if(!(n&&A!==e.index)){var L=x[A],_=b[A],C=l.c2p(L)-c,M=u.c2p(_)-f,g=Math.sqrt(C*C+M*M);(n||g<k)&&(k=E=g,p=A)}return e.index=p,e.distance=k,e.dxy=E,p===void 0?[e]:[pNt(e,x,b,a)]}nBe.exports={hoverPoints:mNt}});var fBe=ye((Zmr,cBe)=>{"use strict";var uBe=Mr(),oBe=uBe.pushUnique,sBe=lu(),lBe=oK();cBe.exports=function(t,r){var n=t.cd,i=n[0].trace,a=n[0].t,o=t.scene,s=o.matrixOptions.cdata,l=t.xaxis,u=t.yaxis,c=[];if(!o)return c;var f=!sBe.hasMarkers(i)&&!sBe.hasText(i);if(i.visible!==!0||f)return c;var h=lBe.getDimIndex(i,l),d=lBe.getDimIndex(i,u);if(h===!1||d===!1)return c;var v=a.xpx[h],x=a.ypx[d],b=s[h],p=s[d],E=(t.scene.selectBatch||[]).slice(),k=[];if(r!==!1&&!r.degenerate)for(var A=0;A<b.length;A++)r.contains([v[A],x[A]],null,A,t)?(c.push({pointNumber:A,x:b[A],y:p[A]}),oBe(E,A)):E.indexOf(A)!==-1?oBe(E,A):k.push(A);var L=o.matrixOptions;return!E.length&&!k.length?o.matrix.update(L,null):!o.selectBatch.length&&!o.unselectBatch.length&&o.matrix.update(o.unselectedOptions,uBe.extendFlat({},L,o.selectedOptions,o.viewOpts)),o.selectBatch=E,o.unselectBatch=k,c}});var vBe=ye((Xmr,dBe)=>{"use strict";var hBe=Mr(),yNt=z0(),_Nt=Y2().markerStyle;dBe.exports=function(t,r){var n=r.trace,i=t._fullLayout._splomScenes[n.uid];if(i){yNt(t,n),hBe.extendFlat(i.matrixOptions,_Nt(t,n));var a=hBe.extendFlat({},i.matrixOptions,i.viewOpts);i.matrix.update(a,null)}}});var gBe=ye((Ymr,pBe)=>{"use strict";var xNt=ba(),bNt=nV();pBe.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:eK(),supplyDefaults:zOe(),colorbar:Kd(),calc:UOe(),plot:QOe(),hoverPoints:aBe().hoverPoints,selectPoints:fBe(),editStyle:vBe(),meta:{}};xNt.register(bNt)});var wBe=ye((Kmr,bBe)=>{"use strict";var wNt=LY(),TNt=ba(),ANt=xF(),SNt=kd().getModuleCalcData,gx=Jf(),mBe=af().getFromId,yBe=Qa().shouldShowZeroLine,_Be="splom",xBe={};function MNt(e){var t=e._fullLayout,r=TNt.getModule(_Be),n=SNt(e.calcdata,r)[0],i=ANt(e,["ANGLE_instanced_arrays","OES_element_index_uint"],xBe);i&&(t._hasOnlyLargeSploms&&sK(e),r.plot(e,{},n))}function ENt(e){var t=e.calcdata,r=e._fullLayout;r._hasOnlyLargeSploms&&sK(e);for(var n=0;n<t.length;n++){var i=t[n][0],a=i.trace,o=r._splomScenes[a.uid];a.type==="splom"&&o&&o.matrix&&kNt(e,a,o)}}function kNt(e,t,r){for(var n=r.matrixOptions.data.length,i=t._visibleDims,a=r.viewOpts.ranges=new Array(n),o=0;o<i.length;o++){var s=i[o],l=a[o]=new Array(4),u=mBe(e,t._diag[s][0]);u&&(l[0]=u.r2l(u.range[0]),l[2]=u.r2l(u.range[1]));var c=mBe(e,t._diag[s][1]);c&&(l[1]=c.r2l(c.range[0]),l[3]=c.r2l(c.range[1]))}r.selectBatch.length||r.unselectBatch.length?r.matrix.update({ranges:a},{ranges:a}):r.matrix.update({ranges:a})}function sK(e){var t=e._fullLayout,r=t._glcanvas.data()[0].regl,n=t._splomGrid;n||(n=t._splomGrid=wNt(r)),n.update(CNt(e))}function CNt(e){var t=e._context.plotGlPixelRatio,r=e._fullLayout,n=r._size,i=[0,0,r.width*t,r.height*t],a={},o;function s(_,C,M,g,P,T){M*=t,g*=t,P*=t,T*=t;var F=C[_+"color"],q=C[_+"width"],V=String(F+q);V in a?a[V].data.push(NaN,NaN,M,g,P,T):a[V]={data:[M,g,P,T],join:"rect",thickness:q*t,color:F,viewport:i,range:i,overlay:!1}}for(o in r._splomSubplots){var l=r._plots[o],u=l.xaxis,c=l.yaxis,f=u._gridVals,h=c._gridVals,d=u._offset,v=u._length,x=c._length,b=n.b+c.domain[0]*n.h,p=-c._m,E=-p*c.r2l(c.range[0],c.calendar),k,A;if(u.showgrid)for(o=0;o<f.length;o++)k=d+u.l2p(f[o].x),s("grid",u,k,b,k,b+x);if(c.showgrid)for(o=0;o<h.length;o++)A=b+E+p*h[o].x,s("grid",c,d,A,d+v,A);yBe(e,u,c)&&(k=d+u.l2p(0),s("zeroline",u,k,b,k,b+x)),yBe(e,c,u)&&(A=b+E+0,s("zeroline",c,d,A,d+v,A))}var L=[];for(o in a)L.push(a[o]);return L}function LNt(e,t,r,n){var i={},a;if(n._splomScenes){for(a=0;a<e.length;a++){var o=e[a];o.type==="splom"&&(i[o.uid]=1)}for(a=0;a<r.length;a++){var s=r[a];if(!i[s.uid]){var l=n._splomScenes[s.uid];l&&l.destroy&&l.destroy(),n._splomScenes[s.uid]=null,delete n._splomScenes[s.uid]}}}Object.keys(n._splomScenes||{}).length===0&&delete n._splomScenes,n._splomGrid&&!t._hasOnlyLargeSploms&&n._hasOnlyLargeSploms&&(n._splomGrid.destroy(),n._splomGrid=null,delete n._splomGrid),gx.clean(e,t,r,n)}bBe.exports={name:_Be,attr:gx.attr,attrRegex:gx.attrRegex,layoutAttributes:gx.layoutAttributes,supplyLayoutDefaults:gx.supplyLayoutDefaults,drawFramework:gx.drawFramework,plot:MNt,drag:ENt,updateGrid:sK,clean:LNt,updateFx:gx.updateFx,toSVG:gx.toSVG,reglPrecompiled:xBe}});var SBe=ye((Jmr,ABe)=>{"use strict";var TBe=gBe();TBe.basePlotModule=wBe(),ABe.exports=TBe});var EBe=ye(($mr,MBe)=>{"use strict";MBe.exports=SBe()});var cK=ye((Qmr,kBe)=>{"use strict";var PNt=Jl(),lK=Cd(),uK=Su(),INt=Ju().attributes,CF=no().extendFlat,RNt=Vs().templatedArray;kBe.exports={domain:INt({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:uK({editType:"plot"}),tickfont:uK({autoShadowDflt:!0,editType:"plot"}),rangefont:uK({editType:"plot"}),dimensions:RNt("dimension",{label:{valType:"string",editType:"plot"},tickvals:CF({},lK.tickvals,{editType:"plot"}),ticktext:CF({},lK.ticktext,{editType:"plot"}),tickformat:CF({},lK.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:CF({editType:"calc"},PNt("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}});var Ak=ye((eyr,CBe)=>{"use strict";CBe.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}});var Km=ye((tyr,PBe)=>{"use strict";var DNt=OS();function LBe(e){return[e]}PBe.exports={keyFun:function(e){return e.key},repeat:LBe,descend:DNt,wrap:LBe,unwrap:function(e){return e[0]}}});var dK=ye((ryr,VBe)=>{"use strict";var th=Ak(),em=xa(),zNt=Km().keyFun,LF=Km().repeat,gA=Mr().sorterAsc,FNt=Mr().strTranslate,IBe=th.bar.snapRatio;function RBe(e,t){return e*(1-IBe)+t*IBe}var DBe=th.bar.snapClose;function qNt(e,t){return e*(1-DBe)+t*DBe}function IF(e,t,r,n){if(ONt(r,n))return r;var i=e?-1:1,a=0,o=t.length-1;if(i<0){var s=a;a=o,o=s}for(var l=t[a],u=l,c=a;i*c<i*o;c+=i){var f=c+i,h=t[f];if(i*r<i*qNt(l,h))return RBe(l,u);if(i*r<i*h||f===o)return RBe(h,l);u=l,l=h}}function ONt(e,t){for(var r=0;r<t.length;r++)if(e>=t[r][0]&&e<=t[r][1])return!0;return!1}function BNt(e){e.attr("x",-th.bar.captureWidth/2).attr("width",th.bar.captureWidth)}function NNt(e){e.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function UNt(e){if(!e.brush.filterSpecified)return"0,"+e.height;for(var t=zBe(e.brush.filter.getConsolidated(),e.height),r=[0],n,i,a,o=t.length?t[0][0]:null,s=0;s<t.length;s++)n=t[s],i=n[1]-n[0],r.push(o),r.push(i),a=s+1,a<t.length&&(o=t[a][0]-n[1]);return r.push(e.height),r}function zBe(e,t){return e.map(function(r){return r.map(function(n){return Math.max(0,n*t)}).sort(gA)})}function VNt(e,t){var r=th.bar.handleHeight;if(!(t>e[1]+r||t<e[0]-r))return t>=.9*e[1]+.1*e[0]?"n":t<=.9*e[0]+.1*e[1]?"s":"ns"}function FBe(){em.select(document.body).style("cursor",null)}function hK(e){e.attr("stroke-dasharray",UNt)}function PF(e,t){var r=em.select(e).selectAll(".highlight, .highlight-shadow"),n=t?r.transition().duration(th.bar.snapDuration).each("end",t):r;hK(n)}function qBe(e,t){var r=e.brush,n=r.filterSpecified,i=NaN,a={},o;if(n){var s=e.height,l=r.filter.getConsolidated(),u=zBe(l,s),c=NaN,f=NaN,h=NaN;for(o=0;o<=u.length;o++){var d=u[o];if(d&&d[0]<=t&&t<=d[1]){c=o;break}else if(f=o?o-1:NaN,d&&d[0]>t){h=o;break}}if(i=c,isNaN(i)&&(isNaN(f)||isNaN(h)?i=isNaN(f)?h:f:i=t-u[f][1]<u[h][0]-t?f:h),!isNaN(i)){var v=u[i],x=VNt(v,t);x&&(a.interval=l[i],a.intervalPix=v,a.region=x)}}if(e.ordinal&&!a.region){var b=e.unitTickvals,p=e.unitToPaddedPx.invert(t);for(o=0;o<b.length;o++){var E=[b[Math.max(o-1,0)]*.25+b[o]*.75,b[Math.min(o+1,b.length-1)]*.25+b[o]*.75];if(p>=E[0]&&p<=E[1]){a.clickableOrdinalRange=E;break}}}return a}function HNt(e,t){em.event.sourceEvent.stopPropagation();var r=t.height-em.mouse(e)[1]-2*th.verticalPadding,n=t.unitToPaddedPx.invert(r),i=t.brush,a=qBe(t,r),o=a.interval,s=i.svgBrush;if(s.wasDragged=!1,s.grabbingBar=a.region==="ns",s.grabbingBar){var l=o.map(t.unitToPaddedPx);s.grabPoint=r-l[0]-th.verticalPadding,s.barLength=l[1]-l[0]}s.clickableOrdinalRange=a.clickableOrdinalRange,s.stayingIntervals=t.multiselect&&i.filterSpecified?i.filter.getConsolidated():[],o&&(s.stayingIntervals=s.stayingIntervals.filter(function(u){return u[0]!==o[0]&&u[1]!==o[1]})),s.startExtent=a.region?o[a.region==="s"?1:0]:n,t.parent.inBrushDrag=!0,s.brushStartCallback()}function OBe(e,t){em.event.sourceEvent.stopPropagation();var r=t.height-em.mouse(e)[1]-2*th.verticalPadding,n=t.brush.svgBrush;n.wasDragged=!0,n._dragging=!0,n.grabbingBar?n.newExtent=[r-n.grabPoint,r+n.barLength-n.grabPoint].map(t.unitToPaddedPx.invert):n.newExtent=[n.startExtent,t.unitToPaddedPx.invert(r)].sort(gA),t.brush.filterSpecified=!0,n.extent=n.stayingIntervals.concat([n.newExtent]),n.brushCallback(t),PF(e.parentNode)}function GNt(e,t){var r=t.brush,n=r.filter,i=r.svgBrush;i._dragging||(BBe(e,t),OBe(e,t),t.brush.svgBrush.wasDragged=!1),i._dragging=!1;var a=em.event;a.sourceEvent.stopPropagation();var o=i.grabbingBar;if(i.grabbingBar=!1,i.grabLocation=void 0,t.parent.inBrushDrag=!1,FBe(),!i.wasDragged){i.wasDragged=void 0,i.clickableOrdinalRange?r.filterSpecified&&t.multiselect?i.extent.push(i.clickableOrdinalRange):(i.extent=[i.clickableOrdinalRange],r.filterSpecified=!0):o?(i.extent=i.stayingIntervals,i.extent.length===0&&fK(r)):fK(r),i.brushCallback(t),PF(e.parentNode),i.brushEndCallback(r.filterSpecified?n.getConsolidated():[]);return}var s=function(){n.set(n.getConsolidated())};if(t.ordinal){var l=t.unitTickvals;l[l.length-1]<l[0]&&l.reverse(),i.newExtent=[IF(0,l,i.newExtent[0],i.stayingIntervals),IF(1,l,i.newExtent[1],i.stayingIntervals)];var u=i.newExtent[1]>i.newExtent[0];i.extent=i.stayingIntervals.concat(u?[i.newExtent]:[]),i.extent.length||fK(r),i.brushCallback(t),u?PF(e.parentNode,s):(s(),PF(e.parentNode))}else s();i.brushEndCallback(r.filterSpecified?n.getConsolidated():[])}function BBe(e,t){var r=t.height-em.mouse(e)[1]-2*th.verticalPadding,n=qBe(t,r),i="crosshair";n.clickableOrdinalRange?i="pointer":n.region&&(i=n.region+"-resize"),em.select(document.body).style("cursor",i)}function jNt(e){e.on("mousemove",function(t){em.event.preventDefault(),t.parent.inBrushDrag||BBe(this,t)}).on("mouseleave",function(t){t.parent.inBrushDrag||FBe()}).call(em.behavior.drag().on("dragstart",function(t){HNt(this,t)}).on("drag",function(t){OBe(this,t)}).on("dragend",function(t){GNt(this,t)}))}function NBe(e,t){return e[0]-t[0]}function WNt(e,t,r){var n=r._context.staticPlot,i=e.selectAll(".background").data(LF);i.enter().append("rect").classed("background",!0).call(BNt).call(NNt).style("pointer-events",n?"none":"auto").attr("transform",FNt(0,th.verticalPadding)),i.call(jNt).attr("height",function(s){return s.height-th.verticalPadding});var a=e.selectAll(".highlight-shadow").data(LF);a.enter().append("line").classed("highlight-shadow",!0).attr("x",-th.bar.width/2).attr("stroke-width",th.bar.width+th.bar.strokeWidth).attr("stroke",t).attr("opacity",th.bar.strokeOpacity).attr("stroke-linecap","butt"),a.attr("y1",function(s){return s.height}).call(hK);var o=e.selectAll(".highlight").data(LF);o.enter().append("line").classed("highlight",!0).attr("x",-th.bar.width/2).attr("stroke-width",th.bar.width-th.bar.strokeWidth).attr("stroke",th.bar.fillColor).attr("opacity",th.bar.fillOpacity).attr("stroke-linecap","butt"),o.attr("y1",function(s){return s.height}).call(hK)}function ZNt(e,t,r){var n=e.selectAll("."+th.cn.axisBrush).data(LF,zNt);n.enter().append("g").classed(th.cn.axisBrush,!0),WNt(n,t,r)}function XNt(e){return e.svgBrush.extent.map(function(t){return t.slice()})}function fK(e){e.filterSpecified=!1,e.svgBrush.extent=[[-1/0,1/0]]}function YNt(e){return function(r){var n=r.brush,i=XNt(n),a=i.slice();n.filter.set(a),e()}}function UBe(e){for(var t=e.slice(),r=[],n,i=t.shift();i;){for(n=i.slice();(i=t.shift())&&i[0]<=n[1];)n[1]=Math.max(n[1],i[1]);r.push(n)}return r.length===1&&r[0][0]>r[0][1]&&(r=[]),r}function KNt(){var e=[],t,r;return{set:function(n){e=n.map(function(i){return i.slice().sort(gA)}).sort(NBe),e.length===1&&e[0][0]===-1/0&&e[0][1]===1/0&&(e=[[0,-1]]),t=UBe(e),r=e.reduce(function(i,a){return[Math.min(i[0],a[0]),Math.max(i[1],a[1])]},[1/0,-1/0])},get:function(){return e.slice()},getConsolidated:function(){return t},getBounds:function(){return r}}}function JNt(e,t,r,n,i,a){var o=KNt();return o.set(r),{filter:o,filterSpecified:t,svgBrush:{extent:[],brushStartCallback:n,brushCallback:YNt(i),brushEndCallback:a}}}function $Nt(e,t){if(Array.isArray(e[0])?(e=e.map(function(n){return n.sort(gA)}),t.multiselect?e=UBe(e.sort(NBe)):e=[e[0]]):e=[e.sort(gA)],t.tickvals){var r=t.tickvals.slice().sort(gA);if(e=e.map(function(n){var i=[IF(0,r,n[0],[]),IF(1,r,n[1],[])];if(i[1]>i[0])return i}).filter(function(n){return n}),!e.length)return}return e.length>1?e:e[0]}VBe.exports={makeBrush:JNt,ensureAxisBrush:ZNt,cleanRanges:$Nt}});var jBe=ye((iyr,GBe)=>{"use strict";var mx=Mr(),QNt=Dv().hasColorscale,eUt=Uh(),tUt=Ju().defaults,rUt=Zd(),iUt=Qa(),HBe=cK(),nUt=dK(),vK=Ak().maxDimensionCount,aUt=wF();function oUt(e,t,r,n,i){var a=i("line.color",r);if(QNt(e,"line")&&mx.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),eUt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function sUt(e,t,r,n){function i(u,c){return mx.coerce(e,t,HBe.dimensions,u,c)}var a=i("values"),o=i("visible");if(a&&a.length||(o=t.visible=!1),o){i("label"),i("tickvals"),i("ticktext"),i("tickformat");var s=i("range");t._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:s},iUt.setConvert(t._ax,n.layout),i("multiselect");var l=i("constraintrange");l&&(t.constraintrange=nUt.cleanRanges(l,t))}}GBe.exports=function(t,r,n,i){function a(c,f){return mx.coerce(t,r,HBe,c,f)}var o=t.dimensions;Array.isArray(o)&&o.length>vK&&(mx.log("parcoords traces support up to "+vK+" dimensions at the moment"),o.splice(vK));var s=rUt(t,r,{name:"dimensions",layout:i,handleItemDefaults:sUt}),l=oUt(t,r,n,i,a);tUt(r,i,a),(!Array.isArray(s)||!s.length)&&(r.visible=!1),aUt(r,s,"values",l);var u=mx.extendFlat({},i.font,{size:Math.round(i.font.size/1.2)});mx.coerceFont(a,"labelfont",u),mx.coerceFont(a,"tickfont",u,{autoShadowDflt:!0}),mx.coerceFont(a,"rangefont",u),a("labelangle"),a("labelside"),a("unselected.line.color"),a("unselected.line.opacity")}});var ZBe=ye((nyr,WBe)=>{"use strict";var lUt=Mr().isArrayOrTypedArray,pK=Mu(),uUt=Km().wrap;WBe.exports=function(t,r){var n,i;return pK.hasColorscale(r,"line")&&lUt(r.line.color)?(n=r.line.color,i=pK.extractOpts(r.line).colorscale,pK.calc(t,r,{vals:n,containerStr:"line",cLetter:"c"})):(n=cUt(r._length),i=[[0,r.line.color],[1,r.line.color]]),uUt({lineColor:n,cscale:i})};function cUt(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=.5;return t}});function fUt(e){var c,f;var t,r=[],n=1,i;if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(typeof e=="number")return{space:"rgb",values:[e>>>16,(e&65280)>>>8,e&255],alpha:1};if(e=String(e).toLowerCase(),gK.default[e])r=gK.default[e].slice(),i="rgb";else if(e==="transparent")n=0,i="rgb",r=[0,0,0];else if(e[0]==="#"){var a=e.slice(1),o=a.length,s=o<=4;n=1,s?(r=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],o===4&&(n=parseInt(a[3]+a[3],16)/255)):(r=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],o===8&&(n=parseInt(a[6]+a[7],16)/255)),r[0]||(r[0]=0),r[1]||(r[1]=0),r[2]||(r[2]=0),i="rgb"}else if(t=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(e)){var l=t[1];i=l.replace(/a$/,"");var u=i==="cmyk"?4:i==="gray"?1:3;r=t[2].trim().split(/\s*[,\/]\s*|\s+/),i==="color"&&(i=r.shift()),r=r.map(function(h,d){if(h[h.length-1]==="%")return h=parseFloat(h)/100,d===3?h:i==="rgb"?h*255:i[0]==="h"||i[0]==="l"&&!d?h*100:i==="lab"?h*125:i==="lch"?d<2?h*150:h*360:i[0]==="o"&&!d?h:i==="oklab"?h*.4:i==="oklch"?d<2?h*.4:h*360:h;if(i[d]==="h"||d===2&&i[i.length-1]==="h"){if(XBe[h]!==void 0)return XBe[h];if(h.endsWith("deg"))return parseFloat(h);if(h.endsWith("turn"))return parseFloat(h)*360;if(h.endsWith("grad"))return parseFloat(h)*360/400;if(h.endsWith("rad"))return parseFloat(h)*180/Math.PI}return h==="none"?0:parseFloat(h)}),n=r.length>u?r.pop():1}else/[0-9](?:\s|\/|,)/.test(e)&&(r=e.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),i=((f=(c=e.match(/([a-z])/ig))==null?void 0:c.join(""))==null?void 0:f.toLowerCase())||"rgb");return{space:i,values:r,alpha:n}}var gK,YBe,XBe,KBe=Ll(()=>{gK=YQe(rZ(),1),YBe=fUt,XBe={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}});var Sk,mK=Ll(()=>{Sk={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}});var RF,JBe=Ll(()=>{mK();RF={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(e){var t=e[0]/360,r=e[1]/100,n=e[2]/100,i,a,o,s,l,u=0;if(r===0)return l=n*255,[l,l,l];for(a=n<.5?n*(1+r):n+r-n*r,i=2*n-a,s=[0,0,0];u<3;)o=t+1/3*-(u-1),o<0?o++:o>1&&o--,l=6*o<1?i+(a-i)*6*o:2*o<1?a:3*o<2?i+(a-i)*(2/3-o)*6:i,s[u++]=l*255;return s}};Sk.hsl=function(e){var t=e[0]/255,r=e[1]/255,n=e[2]/255,i=Math.min(t,r,n),a=Math.max(t,r,n),o=a-i,s,l,u;return a===i?s=0:t===a?s=(r-n)/o:r===a?s=2+(n-t)/o:n===a&&(s=4+(t-r)/o),s=Math.min(s*60,360),s<0&&(s+=360),u=(i+a)/2,a===i?l=0:u<=.5?l=o/(a+i):l=o/(2-a-i),[s,l*100,u*100]}});var QBe={};QQ(QBe,{default:()=>$Be});function $Be(e){Array.isArray(e)&&e.raw&&(e=String.raw(...arguments)),e instanceof Number&&(e=+e);var t,r,n,i=YBe(e);if(!i.space)return[];let a=i.space[0]==="h"?RF.min:Sk.min,o=i.space[0]==="h"?RF.max:Sk.max;return t=Array(3),t[0]=Math.min(Math.max(i.values[0],a[0]),o[0]),t[1]=Math.min(Math.max(i.values[1],a[1]),o[1]),t[2]=Math.min(Math.max(i.values[2],a[2]),o[2]),i.space[0]==="h"&&(t=RF.rgb(t)),t.push(Math.min(Math.max(i.alpha,0),1)),t}var eNe=Ll(()=>{KBe();mK();JBe()});var yK=ye(DF=>{"use strict";var hUt=Mr().isTypedArray;DF.convertTypedArray=function(e){return hUt(e)?Array.prototype.slice.call(e):e};DF.isOrdinal=function(e){return!!e.tickvals};DF.isVisible=function(e){return e.visible||!("visible"in e)}});var cNe=ye((dyr,uNe)=>{"use strict";var dUt=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(`
+`),vUt=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(`
+`),Mk=Ak().maxDimensionCount,oNe=Mr(),tNe=1e-6,zF=2048,pUt=new Uint8Array(4),rNe=new Uint8Array(4),iNe={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function gUt(e){e.read({x:0,y:0,width:1,height:1,data:pUt})}function sNe(e,t,r,n,i){var a=e._gl;a.enable(a.SCISSOR_TEST),a.scissor(t,r,n,i),e.clear({color:[0,0,0,0],depth:1})}function mUt(e,t,r,n,i,a){var o=a.key;function s(l){var u=Math.min(n,i-l*n);l===0&&(window.cancelAnimationFrame(r.currentRafs[o]),delete r.currentRafs[o],sNe(e,a.scissorX,a.scissorY,a.scissorWidth,a.viewBoxSize[1])),!r.clearOnly&&(a.count=2*u,a.offset=2*l*n,t(a),l*n+u<i&&(r.currentRafs[o]=window.requestAnimationFrame(function(){s(l+1)})),r.drawCompleted=!1)}r.drawCompleted||(gUt(e),r.drawCompleted=!0),s(0)}function yUt(e){return Math.max(tNe,Math.min(1-tNe,e))}function _Ut(e,t){for(var r=new Array(256),n=0;n<256;n++)r[n]=e(n/255).concat(t);return r}function _K(e,t){return(e>>>8*t)%256/255}function xUt(e,t,r){for(var n=new Array(e*(Mk+4)),i=0,a=0;a<e;a++){for(var o=0;o<Mk;o++)n[i++]=o<t.length?t[o].paddedUnitValues[a]:.5;n[i++]=_K(a,2),n[i++]=_K(a,1),n[i++]=_K(a,0),n[i++]=yUt(r[a])}return n}function bUt(e,t,r){for(var n=new Array(t*8),i=0,a=0;a<t;a++)for(var o=0;o<2;o++)for(var s=0;s<4;s++){var l=e*4+s,u=r[a*64+l];l===63&&o===0&&(u*=-1),n[i++]=u}return n}function nNe(e){var t="0"+e;return t.substr(t.length-2)}function lNe(e){return e<Mk?"p"+nNe(e+1)+"_"+nNe(e+4):"colors"}function wUt(e,t,r){for(var n=0;n<=Mk;n+=4)e[lNe(n)](bUt(n/4,t,r))}function TUt(e){for(var t={},r=0;r<=Mk;r+=4)t[lNe(r)]=e.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return t}function AUt(e,t,r,n,i,a,o,s,l,u,c,f,h,d){for(var v=[[],[]],x=0;x<64;x++)v[0][x]=x===i?1:0,v[1][x]=x===a?1:0;o*=d,s*=d,l*=d,u*=d;var b=e.lines.canvasOverdrag*d,p=e.domain,E=e.canvasWidth*d,k=e.canvasHeight*d,A=e.pad.l*d,L=e.pad.b*d,_=e.layoutHeight*d,C=e.layoutWidth*d,M=e.deselectedLines.color,g=e.deselectedLines.opacity,P=oNe.extendFlat({key:c,resolution:[E,k],viewBoxPos:[o+b,s],viewBoxSize:[l,u],i0:i,i1:a,dim0A:v[0].slice(0,16),dim0B:v[0].slice(16,32),dim0C:v[0].slice(32,48),dim0D:v[0].slice(48,64),dim1A:v[1].slice(0,16),dim1B:v[1].slice(16,32),dim1C:v[1].slice(32,48),dim1D:v[1].slice(48,64),drwLayer:f,contextColor:[M[0]/255,M[1]/255,M[2]/255,g!=="auto"?M[3]*g:Math.max(1/255,Math.pow(1/e.lines.color.length,1/3))],scissorX:(n===t?0:o+b)+(A-b)+C*p.x[0],scissorWidth:(n===r?E-o+b:l+.5)+(n===t?o+b:0),scissorY:s+L+_*p.y[0],scissorHeight:u,viewportX:A-b+C*p.x[0],viewportY:L+_*p.y[0],viewportWidth:E,viewportHeight:k},h);return P}function aNe(e){var t=zF-1,r=Math.max(0,Math.floor(e[0]*t),0),n=Math.min(t,Math.ceil(e[1]*t),t);return[Math.min(r,n),Math.max(r,n)]}uNe.exports=function(e,t){var r=t.context,n=t.pick,i=t.regl,a=i._gl,o=a.getParameter(a.ALIASED_LINE_WIDTH_RANGE),s=Math.max(o[0],Math.min(o[1],t.viewModel.plotGlPixelRatio)),l={currentRafs:{},drawCompleted:!0,clearOnly:!1},u,c,f,h,d=TUt(i),v,x=i.texture(iNe),b=[];E(t);var p=i({profile:!1,blend:{enable:r,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:!r,mask:!0,func:"less",range:[0,1]},cull:{enable:!0,face:"back"},scissor:{enable:!0,box:{x:i.prop("scissorX"),y:i.prop("scissorY"),width:i.prop("scissorWidth"),height:i.prop("scissorHeight")}},viewport:{x:i.prop("viewportX"),y:i.prop("viewportY"),width:i.prop("viewportWidth"),height:i.prop("viewportHeight")},dither:!1,vert:dUt,frag:vUt,primitive:"lines",lineWidth:s,attributes:d,uniforms:{resolution:i.prop("resolution"),viewBoxPos:i.prop("viewBoxPos"),viewBoxSize:i.prop("viewBoxSize"),dim0A:i.prop("dim0A"),dim1A:i.prop("dim1A"),dim0B:i.prop("dim0B"),dim1B:i.prop("dim1B"),dim0C:i.prop("dim0C"),dim1C:i.prop("dim1C"),dim0D:i.prop("dim0D"),dim1D:i.prop("dim1D"),loA:i.prop("loA"),hiA:i.prop("hiA"),loB:i.prop("loB"),hiB:i.prop("hiB"),loC:i.prop("loC"),hiC:i.prop("hiC"),loD:i.prop("loD"),hiD:i.prop("hiD"),palette:x,contextColor:i.prop("contextColor"),maskTexture:i.prop("maskTexture"),drwLayer:i.prop("drwLayer"),maskHeight:i.prop("maskHeight")},offset:i.prop("offset"),count:i.prop("count")});function E(M){u=M.model,c=M.viewModel,f=c.dimensions.slice(),h=f[0]?f[0].values.length:0;var g=u.lines,P=n?g.color.map(function(F,q){return q/g.color.length}):g.color,T=xUt(h,f,P);wUt(d,h,T),!r&&!n&&(x=i.texture(oNe.extendFlat({data:_Ut(u.unitToColor,255)},iNe)))}function k(M){var g,P,T,F=[[],[]];for(T=0;T<64;T++){var q=!M&&T<f.length?f[T].brush.filter.getBounds():[-1/0,1/0];F[0][T]=q[0],F[1][T]=q[1]}var V=zF*8,H=new Array(V);for(g=0;g<V;g++)H[g]=255;if(!M)for(g=0;g<f.length;g++){var X=g%8,G=(g-X)/8,N=Math.pow(2,X),W=f[g],re=W.brush.filter.get();if(!(re.length<2)){var ae=aNe(re[0])[1];for(P=1;P<re.length;P++){var _e=aNe(re[P]);for(T=ae+1;T<_e[0];T++)H[T*8+G]&=~N;ae=Math.max(ae,_e[1])}}}var Me={shape:[8,zF],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:H};return v?v(Me):v=i.texture(Me),{maskTexture:v,maskHeight:zF,loA:F[0].slice(0,16),loB:F[0].slice(16,32),loC:F[0].slice(32,48),loD:F[0].slice(48,64),hiA:F[1].slice(0,16),hiB:F[1].slice(16,32),hiC:F[1].slice(32,48),hiD:F[1].slice(48,64)}}function A(M,g,P){var T=M.length,F,q,V,H=1/0,X=-1/0;for(F=0;F<T;F++)M[F].dim0.canvasX<H&&(H=M[F].dim0.canvasX,q=F),M[F].dim1.canvasX>X&&(X=M[F].dim1.canvasX,V=F);T===0&&sNe(i,0,0,u.canvasWidth,u.canvasHeight);var G=k(r);for(F=0;F<T;F++){var N=M[F],W=N.dim0.crossfilterDimensionIndex,re=N.dim1.crossfilterDimensionIndex,ae=N.canvasX,_e=N.canvasY,Me=ae+N.panelSizeX,ke=N.plotGlPixelRatio;if(g||!b[W]||b[W][0]!==ae||b[W][1]!==Me){b[W]=[ae,Me];var ge=AUt(u,q,V,F,W,re,ae,_e,N.panelSizeX,N.panelSizeY,N.dim0.crossfilterDimensionIndex,r?0:n?2:1,G,ke);l.clearOnly=P;var ie=g?u.lines.blockLineCount:h;mUt(i,p,l,ie,h,ge)}}}function L(M,g){return i.read({x:M,y:g,width:1,height:1,data:rNe}),rNe}function _(M,g,P,T){var F=new Uint8Array(4*P*T);return i.read({x:M,y:g,width:P,height:T,data:F}),F}function C(){e.style["pointer-events"]="none",x.destroy(),v&&v.destroy();for(var M in d)d[M].destroy()}return{render:A,readPixel:L,readPixels:_,destroy:C,update:E}}});var ANe=ye((vyr,TNe)=>{"use strict";var zd=xa(),l1=Mr(),xK=l1.isArrayOrTypedArray,gNe=l1.numberFormat,mNe=(eNe(),B1(QBe)).default,yNe=Qa(),SUt=l1.strRotate,Jm=l1.strTranslate,MUt=Pl(),FF=ao(),fNe=Mu(),TK=Km(),tg=TK.keyFun,$m=TK.repeat,_Ne=TK.unwrap,mA=yK(),ll=Ak(),xNe=dK(),EUt=cNe();function hNe(e,t,r){return l1.aggNums(e,null,t,r)}function bNe(e,t){return AK(hNe(Math.min,e,t),hNe(Math.max,e,t))}function qF(e){var t=e.range;return t?AK(t[0],t[1]):bNe(e.values,e._length)}function AK(e,t){return(isNaN(e)||!isFinite(e))&&(e=0),(isNaN(t)||!isFinite(t))&&(t=0),e===t&&(e===0?(e-=1,t+=1):(e*=.9,t*=1.1)),[e,t]}function kUt(e,t){return t?function(r,n){var i=t[n];return i==null?e(r):i}:e}function CUt(e,t,r,n,i){var a=qF(r);return n?zd.scale.ordinal().domain(n.map(kUt(gNe(r.tickformat),i))).range(n.map(function(o){var s=(o-a[0])/(a[1]-a[0]);return e-t+s*(2*t-e)})):zd.scale.linear().domain(a).range([e-t,t])}function LUt(e,t){return zd.scale.linear().range([t,e-t])}function PUt(e,t){return zd.scale.linear().domain(qF(e)).range([t,1-t])}function IUt(e){if(e.tickvals){var t=qF(e);return zd.scale.ordinal().domain(e.tickvals).range(e.tickvals.map(function(r){return(r-t[0])/(t[1]-t[0])}))}}function RUt(e){var t=e.map(function(a){return a[0]}),r=e.map(function(a){var o=mNe(a[1]);return zd.rgb("rgb("+o[0]+","+o[1]+","+o[2]+")")}),n=function(a){return function(o){return o[a]}},i="rgb".split("").map(function(a){return zd.scale.linear().clamp(!0).domain(t).range(r.map(n(a)))});return function(a){return i.map(function(o){return o(a)})}}function wK(e){return e.dimensions.some(function(t){return t.brush.filterSpecified})}function DUt(e,t,r){var n=_Ne(t),i=n.trace,a=mA.convertTypedArray(n.lineColor),o=i.line,s={color:mNe(i.unselected.line.color),opacity:i.unselected.line.opacity},l=fNe.extractOpts(o),u=l.reversescale?fNe.flipScale(n.cscale):n.cscale,c=i.domain,f=i.dimensions,h=e.width,d=i.labelangle,v=i.labelside,x=i.labelfont,b=i.tickfont,p=i.rangefont,E=l1.extendDeepNoArrays({},o,{color:a.map(zd.scale.linear().domain(qF({values:a,range:[l.min,l.max],_length:i._length}))),blockLineCount:ll.blockLineCount,canvasOverdrag:ll.overdrag*ll.canvasPixelRatio}),k=Math.floor(h*(c.x[1]-c.x[0])),A=Math.floor(e.height*(c.y[1]-c.y[0])),L=e.margin||{l:80,r:80,t:100,b:80},_=k,C=A;return{key:r,colCount:f.filter(mA.isVisible).length,dimensions:f,tickDistance:ll.tickDistance,unitToColor:RUt(u),lines:E,deselectedLines:s,labelAngle:d,labelSide:v,labelFont:x,tickFont:b,rangeFont:p,layoutWidth:h,layoutHeight:e.height,domain:c,translateX:c.x[0]*h,translateY:e.height-c.y[1]*e.height,pad:L,canvasWidth:_*ll.canvasPixelRatio+2*E.canvasOverdrag,canvasHeight:C*ll.canvasPixelRatio,width:_,height:C,canvasPixelRatio:ll.canvasPixelRatio}}function zUt(e,t,r){var n=r.width,i=r.height,a=r.dimensions,o=r.canvasPixelRatio,s=function(h){return n*h/Math.max(1,r.colCount-1)},l=ll.verticalPadding/i,u=LUt(i,ll.verticalPadding),c={key:r.key,xScale:s,model:r,inBrushDrag:!1},f={};return c.dimensions=a.filter(mA.isVisible).map(function(h,d){var v=PUt(h,l),x=f[h.label];f[h.label]=(x||0)+1;var b=h.label+(x?"__"+x:""),p=h.constraintrange,E=p&&p.length;E&&!xK(p[0])&&(p=[p]);var k=E?p.map(function(q){return q.map(v)}):[[-1/0,1/0]],A=function(){var q=c;q.focusLayer&&q.focusLayer.render(q.panels,!0);var V=wK(q);!e.contextShown()&&V?(q.contextLayer&&q.contextLayer.render(q.panels,!0),e.contextShown(!0)):e.contextShown()&&!V&&(q.contextLayer&&q.contextLayer.render(q.panels,!0,!0),e.contextShown(!1))},L=h.values;L.length>h._length&&(L=L.slice(0,h._length));var _=h.tickvals,C;function M(q,V){return{val:q,text:C[V]}}function g(q,V){return q.val-V.val}if(xK(_)&&_.length){l1.isTypedArray(_)&&(_=Array.from(_)),C=h.ticktext,!xK(C)||!C.length?C=_.map(gNe(h.tickformat)):C.length>_.length?C=C.slice(0,_.length):_.length>C.length&&(_=_.slice(0,C.length));for(var P=1;P<_.length;P++)if(_[P]<_[P-1]){for(var T=_.map(M).sort(g),F=0;F<_.length;F++)_[F]=T[F].val,C[F]=T[F].text;break}}else _=void 0;return L=mA.convertTypedArray(L),{key:b,label:h.label,tickFormat:h.tickformat,tickvals:_,ticktext:C,ordinal:mA.isOrdinal(h),multiselect:h.multiselect,xIndex:d,crossfilterDimensionIndex:d,visibleIndex:h._index,height:i,values:L,paddedUnitValues:L.map(v),unitTickvals:_&&_.map(v),xScale:s,x:s(d),canvasX:s(d)*o,unitToPaddedPx:u,domainScale:CUt(i,ll.verticalPadding,h,_,C),ordinalScale:IUt(h),parent:c,model:r,brush:xNe.makeBrush(e,E,k,function(){e.linePickActive(!1)},A,function(q){if(c.focusLayer.render(c.panels,!0),c.pickLayer&&c.pickLayer.render(c.panels,!0),e.linePickActive(!0),t&&t.filterChanged){var V=v.invert,H=q.map(function(X){return X.map(V).sort(l1.sorterAsc)}).sort(function(X,G){return X[0]-G[0]});t.filterChanged(c.key,h._index,H)}})}}),c}function dNe(e){e.classed(ll.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default")}function FUt(){var e=!0,t=!1;return{linePickActive:function(r){return arguments.length?e=!!r:e},contextShown:function(r){return arguments.length?t=!!r:t}}}function vNe(e,t){var r=t==="top"?1:-1,n=e*Math.PI/180,i=Math.sin(n),a=Math.cos(n);return{dir:r,dx:i,dy:a,degrees:e}}function bK(e,t,r){for(var n=t.panels||(t.panels=[]),i=e.data(),a=0;a<i.length-1;a++){var o=n[a]||(n[a]={}),s=i[a],l=i[a+1];o.dim0=s,o.dim1=l,o.canvasX=s.canvasX,o.panelSizeX=l.canvasX-s.canvasX,o.panelSizeY=t.model.canvasHeight,o.y=0,o.canvasY=0,o.plotGlPixelRatio=r}}function qUt(e){for(var t=0;t<e.length;t++)for(var r=0;r<e[t].length;r++)for(var n=e[t][r].trace,i=n.dimensions,a=0;a<i.length;a++){var o=i[a].values,s=i[a]._ax;s&&(s.range?s.range=AK(s.range[0],s.range[1]):s.range=bNe(o,n._length),s.dtick||(s.dtick=.01*(Math.abs(s.range[1]-s.range[0])||1)),s.tickformat=i[a].tickformat,yNe.calcTicks(s),s.cleanRange())}}function wNe(e,t){return yNe.tickText(e._ax,t,!1).text}function pNe(e,t){if(e.ordinal)return"";var r=e.domainScale.domain(),n=r[t?r.length-1:0];return wNe(e.model.dimensions[e.visibleIndex],n)}TNe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=t._fullLayout,s=o._toppaper,l=o._glcontainer,u=t._context.plotGlPixelRatio,c=t._fullLayout.paper_bgcolor;qUt(r);var f=FUt(),h=r.filter(function(F){return _Ne(F).trace.visible}).map(DUt.bind(0,n)).map(zUt.bind(0,f,i));l.each(function(F,q){return l1.extendFlat(F,h[q])});var d=l.selectAll(".gl-canvas").each(function(F){F.viewModel=h[0],F.viewModel.plotGlPixelRatio=u,F.viewModel.paperColor=c,F.model=F.viewModel?F.viewModel.model:null}),v=null,x=d.filter(function(F){return F.pick});x.style("pointer-events",a?"none":"auto").on("mousemove",function(F){if(f.linePickActive()&&F.lineLayer&&i&&i.hover){var q=zd.event,V=this.width,H=this.height,X=zd.mouse(this),G=X[0],N=X[1];if(G<0||N<0||G>=V||N>=H)return;var W=F.lineLayer.readPixel(G,H-1-N),re=W[3]!==0,ae=re?W[2]+256*(W[1]+256*W[0]):null,_e={x:G,y:N,clientX:q.clientX,clientY:q.clientY,dataIndex:F.model.key,curveNumber:ae};ae!==v&&(re?i.hover(_e):i.unhover&&i.unhover(_e),v=ae)}}),d.style("opacity",function(F){return F.pick?0:1}),s.style("background","rgba(255, 255, 255, 0)");var b=s.selectAll("."+ll.cn.parcoords).data(h,tg);b.exit().remove(),b.enter().append("g").classed(ll.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),b.attr("transform",function(F){return Jm(F.model.translateX,F.model.translateY)});var p=b.selectAll("."+ll.cn.parcoordsControlView).data($m,tg);p.enter().append("g").classed(ll.cn.parcoordsControlView,!0),p.attr("transform",function(F){return Jm(F.model.pad.l,F.model.pad.t)});var E=p.selectAll("."+ll.cn.yAxis).data(function(F){return F.dimensions},tg);E.enter().append("g").classed(ll.cn.yAxis,!0),p.each(function(F){bK(E,F,u)}),d.each(function(F){if(F.viewModel){!F.lineLayer||i?F.lineLayer=EUt(this,F):F.lineLayer.update(F),(F.key||F.key===0)&&(F.viewModel[F.key]=F.lineLayer);var q=!F.context||i;F.lineLayer.render(F.viewModel.panels,q)}}),E.attr("transform",function(F){return Jm(F.xScale(F.xIndex),0)}),E.call(zd.behavior.drag().origin(function(F){return F}).on("drag",function(F){var q=F.parent;f.linePickActive(!1),F.x=Math.max(-ll.overdrag,Math.min(F.model.width+ll.overdrag,zd.event.x)),F.canvasX=F.x*F.model.canvasPixelRatio,E.sort(function(V,H){return V.x-H.x}).each(function(V,H){V.xIndex=H,V.x=F===V?V.x:V.xScale(V.xIndex),V.canvasX=V.x*V.model.canvasPixelRatio}),bK(E,q,u),E.filter(function(V){return Math.abs(F.xIndex-V.xIndex)!==0}).attr("transform",function(V){return Jm(V.xScale(V.xIndex),0)}),zd.select(this).attr("transform",Jm(F.x,0)),E.each(function(V,H,X){X===F.parent.key&&(q.dimensions[H]=V)}),q.contextLayer&&q.contextLayer.render(q.panels,!1,!wK(q)),q.focusLayer.render&&q.focusLayer.render(q.panels)}).on("dragend",function(F){var q=F.parent;F.x=F.xScale(F.xIndex),F.canvasX=F.x*F.model.canvasPixelRatio,bK(E,q,u),zd.select(this).attr("transform",function(V){return Jm(V.x,0)}),q.contextLayer&&q.contextLayer.render(q.panels,!1,!wK(q)),q.focusLayer&&q.focusLayer.render(q.panels),q.pickLayer&&q.pickLayer.render(q.panels,!0),f.linePickActive(!0),i&&i.axesMoved&&i.axesMoved(q.key,q.dimensions.map(function(V){return V.crossfilterDimensionIndex}))})),E.exit().remove();var k=E.selectAll("."+ll.cn.axisOverlays).data($m,tg);k.enter().append("g").classed(ll.cn.axisOverlays,!0),k.selectAll("."+ll.cn.axis).remove();var A=k.selectAll("."+ll.cn.axis).data($m,tg);A.enter().append("g").classed(ll.cn.axis,!0),A.each(function(F){var q=F.model.height/F.model.tickDistance,V=F.domainScale,H=V.domain();zd.select(this).call(zd.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(q,F.tickFormat).tickValues(F.ordinal?H:null).tickFormat(function(X){return mA.isOrdinal(F)?X:wNe(F.model.dimensions[F.visibleIndex],X)}).scale(V)),FF.font(A.selectAll("text"),F.model.tickFont)}),A.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),A.selectAll("text").style("cursor","default");var L=k.selectAll("."+ll.cn.axisHeading).data($m,tg);L.enter().append("g").classed(ll.cn.axisHeading,!0);var _=L.selectAll("."+ll.cn.axisTitle).data($m,tg);_.enter().append("text").classed(ll.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",a?"none":"auto"),_.text(function(F){return F.label}).each(function(F){var q=zd.select(this);FF.font(q,F.model.labelFont),MUt.convertToTspans(q,t)}).attr("transform",function(F){var q=vNe(F.model.labelAngle,F.model.labelSide),V=ll.axisTitleOffset;return(q.dir>0?"":Jm(0,2*V+F.model.height))+SUt(q.degrees)+Jm(-V*q.dx,-V*q.dy)}).attr("text-anchor",function(F){var q=vNe(F.model.labelAngle,F.model.labelSide),V=Math.abs(q.dx),H=Math.abs(q.dy);return 2*V>H?q.dir*q.dx<0?"start":"end":"middle"});var C=k.selectAll("."+ll.cn.axisExtent).data($m,tg);C.enter().append("g").classed(ll.cn.axisExtent,!0);var M=C.selectAll("."+ll.cn.axisExtentTop).data($m,tg);M.enter().append("g").classed(ll.cn.axisExtentTop,!0),M.attr("transform",Jm(0,-ll.axisExtentOffset));var g=M.selectAll("."+ll.cn.axisExtentTopText).data($m,tg);g.enter().append("text").classed(ll.cn.axisExtentTopText,!0).call(dNe),g.text(function(F){return pNe(F,!0)}).each(function(F){FF.font(zd.select(this),F.model.rangeFont)});var P=C.selectAll("."+ll.cn.axisExtentBottom).data($m,tg);P.enter().append("g").classed(ll.cn.axisExtentBottom,!0),P.attr("transform",function(F){return Jm(0,F.model.height+ll.axisExtentOffset)});var T=P.selectAll("."+ll.cn.axisExtentBottomText).data($m,tg);T.enter().append("text").classed(ll.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(dNe),T.text(function(F){return pNe(F,!1)}).each(function(F){FF.font(zd.select(this),F.model.rangeFont)}),xNe.ensureAxisBrush(k,c,t)}});var MK=ye((SK,kNe)=>{"use strict";var OUt=ANe(),BUt=xF(),SNe=yK().isVisible,ENe={};function MNe(e,t,r){var n=t.indexOf(r),i=e.indexOf(n);return i===-1&&(i+=t.length),i}function NUt(e,t){return function(n,i){return MNe(e,t,n)-MNe(e,t,i)}}var SK=kNe.exports=function(t,r){var n=t._fullLayout,i=BUt(t,[],ENe);if(i){var a={},o={},s={},l={},u=n._size;r.forEach(function(v,x){var b=v[0].trace;s[x]=b.index;var p=l[x]=b.index;a[x]=t.data[p].dimensions,o[x]=t.data[p].dimensions.slice()});var c=function(v,x,b){var p=o[v][x],E=b.map(function(M){return M.slice()}),k="dimensions["+x+"].constraintrange",A=n._tracePreGUI[t._fullData[s[v]]._fullInput.uid];if(A[k]===void 0){var L=p.constraintrange;A[k]=L||null}var _=t._fullData[s[v]].dimensions[x];E.length?(E.length===1&&(E=E[0]),p.constraintrange=E,_.constraintrange=E.slice(),E=[E]):(delete p.constraintrange,delete _.constraintrange,E=null);var C={};C[k]=E,t.emit("plotly_restyle",[C,[l[v]]])},f=function(v){t.emit("plotly_hover",v)},h=function(v){t.emit("plotly_unhover",v)},d=function(v,x){var b=NUt(x,o[v].filter(SNe));a[v].sort(b),o[v].filter(function(p){return!SNe(p)}).sort(function(p){return o[v].indexOf(p)}).forEach(function(p){a[v].splice(a[v].indexOf(p),1),a[v].splice(o[v].indexOf(p),0,p)}),t.emit("plotly_restyle",[{dimensions:[a[v]]},[l[v]]])};OUt(t,r,{width:u.w,height:u.h,margin:{t:u.t,r:u.r,b:u.b,l:u.l}},{filterChanged:c,hover:f,unhover:h,axesMoved:d})}};SK.reglPrecompiled=ENe});var LNe=ye(Ek=>{"use strict";var CNe=xa(),UUt=kd().getModuleCalcData,VUt=MK(),HUt=Zp();Ek.name="parcoords";Ek.plot=function(e){var t=UUt(e.calcdata,"parcoords")[0];t.length&&VUt(e,t)};Ek.clean=function(e,t,r,n){var i=n._has&&n._has("parcoords"),a=t._has&&t._has("parcoords");i&&!a&&(n._paperdiv.selectAll(".parcoords").remove(),n._glimages.selectAll("*").remove())};Ek.toSVG=function(e){var t=e._fullLayout._glimages,r=CNe.select(e).selectAll(".svg-container"),n=r.filter(function(a,o){return o===r.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function i(){var a=this,o=a.toDataURL("image/png"),s=t.append("svg:image");s.attr({xmlns:HUt.svg,"xlink:href":o,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}n.each(i),window.setTimeout(function(){CNe.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}});var INe=ye((gyr,PNe)=>{"use strict";PNe.exports={attributes:cK(),supplyDefaults:jBe(),calc:ZBe(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:LNe(),categories:["gl","regl","noOpacity","noHover"],meta:{}}});var zNe=ye((myr,DNe)=>{"use strict";var RNe=INe();RNe.plot=MK();DNe.exports=RNe});var qNe=ye((yyr,FNe)=>{"use strict";FNe.exports=zNe()});var EK=ye((_yr,UNe)=>{"use strict";var BNe=no().extendFlat,GUt=vl(),ONe=Su(),jUt=Jl(),NNe=Wo().hovertemplateAttrs,WUt=Ju().attributes,ZUt=BNe({editType:"calc"},jUt("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:NNe({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});UNe.exports={domain:WUt({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:BNe({},GUt.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:NNe({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:ONe({editType:"calc"}),tickfont:ONe({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:ZUt,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}});var GNe=ye((xyr,HNe)=>{"use strict";var yA=Mr(),XUt=Dv().hasColorscale,YUt=Uh(),KUt=Ju().defaults,JUt=Zd(),VNe=EK(),$Ut=wF(),QUt=vv().isTypedArraySpec;function eVt(e,t,r,n,i){i("line.shape"),i("line.hovertemplate");var a=i("line.color",n.colorway[0]);if(XUt(e,"line")&&yA.isArrayOrTypedArray(a)){if(a.length)return i("line.colorscale"),YUt(e,t,n,i,{prefix:"line.",cLetter:"c"}),a.length;t.line.color=r}return 1/0}function tVt(e,t){function r(u,c){return yA.coerce(e,t,VNe.dimensions,u,c)}var n=r("values"),i=r("visible");if(n&&n.length||(i=t.visible=!1),i){r("label"),r("displayindex",t._index);var a=e.categoryarray,o=yA.isArrayOrTypedArray(a)&&a.length>0||QUt(a),s;o&&(s="array");var l=r("categoryorder",s);l==="array"?(r("categoryarray"),r("ticktext")):(delete e.categoryarray,delete e.ticktext),!o&&l==="array"&&(t.categoryorder="trace")}}HNe.exports=function(t,r,n,i){function a(u,c){return yA.coerce(t,r,VNe,u,c)}var o=JUt(t,r,{name:"dimensions",handleItemDefaults:tVt}),s=eVt(t,r,n,i,a);KUt(r,i,a),(!Array.isArray(o)||!o.length)&&(r.visible=!1),$Ut(r,o,"values",s),a("hoveron"),a("hovertemplate"),a("arrangement"),a("bundlecolors"),a("sortpaths"),a("counts");var l=i.font;yA.coerceFont(a,"labelfont",l,{overrideDflt:{size:Math.round(l.size)}}),yA.coerceFont(a,"tickfont",l,{autoShadowDflt:!0,overrideDflt:{size:Math.round(l.size/1.2)}})}});var WNe=ye((byr,jNe)=>{"use strict";var rVt=Km().wrap,iVt=Dv().hasColorscale,nVt=zv(),aVt=jq(),oVt=ao(),kk=Mr(),sVt=uo();jNe.exports=function(t,r){var n=kk.filterVisible(r.dimensions);if(n.length===0)return[];var i=n.map(function(g){var P;if(g.categoryorder==="trace")P=null;else if(g.categoryorder==="array")P=g.categoryarray;else{P=aVt(g.values);for(var T=!0,F=0;F<P.length;F++)if(!sVt(P[F])){T=!1;break}P.sort(T?kk.sorterAsc:void 0),g.categoryorder==="category descending"&&(P=P.reverse())}return vVt(g.values,P)}),a,o,s;kk.isArrayOrTypedArray(r.counts)?a=r.counts:a=[r.counts],pVt(n),n.forEach(function(g,P){gVt(g,i[P])});var l=r.line,u;l?(iVt(r,"line")&&nVt(t,r,{vals:r.line.color,containerStr:"line",cLetter:"c"}),u=oVt.tryColorscale(l)):u=kk.identity;function c(g){var P,T;return kk.isArrayOrTypedArray(l.color)?(P=l.color[g%l.color.length],T=P):P=l.color,{color:u(P),rawColor:T}}var f=n[0].values.length,h={},d=i.map(function(g){return g.inds});s=0;var v,x;for(v=0;v<f;v++){var b=[];for(x=0;x<d.length;x++)b.push(d[x][v]);o=a[v%a.length],s+=o;var p=c(v),E=b+"-"+p.rawColor;h[E]===void 0&&(h[E]=hVt(b,p.color,p.rawColor)),dVt(h[E],v,o)}var k=n.map(function(g,P){return uVt(P,g._index,g._displayindex,g.label,s)});for(v=0;v<f;v++)for(o=a[v%a.length],x=0;x<k.length;x++){var A=k[x].containerInd,L=i[x].inds[v],_=k[x].categories;if(_[L]===void 0){var C=r.dimensions[A]._categoryarray[L],M=r.dimensions[A]._ticktext[L];_[L]=cVt(x,L,C,M)}fVt(_[L],v,o)}return rVt(lVt(k,h,s))};function lVt(e,t,r){var n=e.map(function(i){return i.categories.length}).reduce(function(i,a){return Math.max(i,a)});return{dimensions:e,paths:t,trace:void 0,maxCats:n,count:r}}function uVt(e,t,r,n,i){return{dimensionInd:e,containerInd:t,displayInd:r,dimensionLabel:n,count:i,categories:[],dragX:null}}function cVt(e,t,r,n){return{dimensionInd:e,categoryInd:t,categoryValue:r,displayInd:t,categoryLabel:n,valueInds:[],count:0,dragY:null}}function fVt(e,t,r){e.valueInds.push(t),e.count+=r}function hVt(e,t,r){return{categoryInds:e,color:t,rawColor:r,valueInds:[],count:0}}function dVt(e,t,r){e.valueInds.push(t),e.count+=r}function vVt(e,t){t==null?t=[]:t=t.map(function(u){return u});var r={},n={},i=[];t.forEach(function(u,c){r[u]=0,n[u]=c});for(var a=0;a<e.length;a++){var o=e[a],s;r[o]===void 0?(r[o]=1,s=t.push(o)-1,n[o]=s):(r[o]++,s=n[o]),i.push(s)}var l=t.map(function(u){return r[u]});return{uniqueValues:t,uniqueCounts:l,inds:i}}function pVt(e){var t=e.map(function(n){return n.displayindex}),r;if(mVt(t))for(r=0;r<e.length;r++)e[r]._displayindex=e[r].displayindex;else for(r=0;r<e.length;r++)e[r]._displayindex=r}function gVt(e,t){e._categoryarray=t.uniqueValues,e.ticktext===null||e.ticktext===void 0?e._ticktext=[]:e._ticktext=e.ticktext.slice();for(var r=e._ticktext.length;r<t.uniqueValues.length;r++)e._ticktext.push(t.uniqueValues[r])}function mVt(e){for(var t=new Array(e.length),r=0;r<e.length;r++){if(e[r]<0||e[r]>=e.length||t[e[r]]!==void 0)return!1;t[e[r]]=!0}return!0}});var tUe=ye((wyr,eUe)=>{"use strict";var ul=xa(),yVt=(R2(),B1(I2)).interpolateNumber,_Vt=OP(),Pk=Nc(),yx=Mr(),Ck=yx.strTranslate,ZNe=ao(),kK=id(),xVt=Pl();function bVt(e,t,r,n){var i=t._context.staticPlot,a=e.map(FVt.bind(0,t,r)),o=n.selectAll("g.parcatslayer").data([null]);o.enter().append("g").attr("class","parcatslayer").style("pointer-events",i?"none":"all");var s=o.selectAll("g.trace.parcats").data(a,u1),l=s.enter().append("g").attr("class","trace parcats");s.attr("transform",function(E){return Ck(E.x,E.y)}),l.append("g").attr("class","paths");var u=s.select("g.paths"),c=u.selectAll("path.path").data(function(E){return E.paths},u1);c.attr("fill",function(E){return E.model.color});var f=c.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(E){return E.model.color}).attr("fill-opacity",0);PK(f),c.attr("d",function(E){return E.svgD}),f.empty()||c.sort(CK),c.exit().remove(),c.on("mouseover",wVt).on("mouseout",TVt).on("click",AVt),l.append("g").attr("class","dimensions");var h=s.select("g.dimensions"),d=h.selectAll("g.dimension").data(function(E){return E.dimensions},u1);d.enter().append("g").attr("class","dimension"),d.attr("transform",function(E){return Ck(E.x,0)}),d.exit().remove();var v=d.selectAll("g.category").data(function(E){return E.categories},u1),x=v.enter().append("g").attr("class","category");v.attr("transform",function(E){return Ck(0,E.y)}),x.append("rect").attr("class","catrect").attr("pointer-events","none"),v.select("rect.catrect").attr("fill","none").attr("width",function(E){return E.width}).attr("height",function(E){return E.height}),YNe(x);var b=v.selectAll("rect.bandrect").data(function(E){return E.bands},u1);b.each(function(){yx.raiseToTop(this)}),b.attr("fill",function(E){return E.color});var p=b.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(E){return E.color}).attr("fill-opacity",0);b.attr("fill",function(E){return E.color}).attr("width",function(E){return E.width}).attr("height",function(E){return E.height}).attr("y",function(E){return E.y}).attr("cursor",function(E){return E.parcatsViewModel.arrangement==="fixed"?"default":E.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),RK(p),b.exit().remove(),x.append("text").attr("class","catlabel").attr("pointer-events","none"),v.select("text.catlabel").attr("text-anchor",function(E){return Lk(E)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(E){return Lk(E)?E.width+5:-5}).attr("y",function(E){return E.height/2}).text(function(E){return E.model.categoryLabel}).each(function(E){ZNe.font(ul.select(this),E.parcatsViewModel.categorylabelfont),xVt.convertToTspans(ul.select(this),t)}),x.append("text").attr("class","dimlabel"),v.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(E){return E.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(E){return E.width/2}).attr("y",-5).text(function(E,k){return k===0?E.parcatsViewModel.model.dimensions[E.model.dimensionInd].dimensionLabel:null}).each(function(E){ZNe.font(ul.select(this),E.parcatsViewModel.labelfont)}),v.selectAll("rect.bandrect").on("mouseover",PVt).on("mouseout",IVt),v.exit().remove(),d.call(ul.behavior.drag().origin(function(E){return{x:E.x,y:0}}).on("dragstart",RVt).on("drag",DVt).on("dragend",zVt)),s.each(function(E){E.traceSelection=ul.select(this),E.pathSelection=ul.select(this).selectAll("g.paths").selectAll("path.path"),E.dimensionSelection=ul.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),s.exit().remove()}eUe.exports=function(e,t,r,n){bVt(r,e,n,t)};function u1(e){return e.key}function Lk(e){var t=e.parcatsViewModel.dimensions.length,r=e.parcatsViewModel.dimensions[t-1].model.dimensionInd;return e.model.dimensionInd===r}function CK(e,t){return e.model.rawColor>t.model.rawColor?1:e.model.rawColor<t.model.rawColor?-1:0}function wVt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){yx.raiseToTop(this),IK(ul.select(this));var t=Ik(e),r=LK(e);if(e.parcatsViewModel.graphDiv.emit("plotly_hover",{points:t,event:ul.event,constraints:r}),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var n=ul.mouse(this)[0],i=e.parcatsViewModel.graphDiv,a=e.parcatsViewModel.trace,o=i._fullLayout,s=o._paperdiv.node().getBoundingClientRect(),l=e.parcatsViewModel.graphDiv.getBoundingClientRect(),u,c,f;for(f=0;f<e.leftXs.length-1;f++)if(e.leftXs[f]+e.dimWidths[f]-2<=n&&n<=e.leftXs[f+1]+2){var h=e.parcatsViewModel.dimensions[f],d=e.parcatsViewModel.dimensions[f+1];u=(h.x+h.width+d.x)/2,c=(e.topYs[f]+e.topYs[f+1]+e.height)/2;break}var v=e.parcatsViewModel.x+u,x=e.parcatsViewModel.y+c,b=kK.mostReadable(e.model.color,["black","white"]),p=e.model.count,E=p/e.parcatsViewModel.model.count,k={countLabel:p,probabilityLabel:E.toFixed(3)},A=[];e.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&A.push(["Count:",k.countLabel].join(" ")),e.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&A.push(["P:",k.probabilityLabel].join(" "));var L=A.join("<br>"),_=ul.mouse(i)[0];Pk.loneHover({trace:a,x:v-s.left+l.left,y:x-s.top+l.top,text:L,color:e.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:b,idealAlign:_<v?"right":"left",hovertemplate:(a.line||{}).hovertemplate,hovertemplateLabels:k,eventData:[{data:a._input,fullData:a,count:p,probability:E}]},{container:o._hoverlayer.node(),outerContainer:o._paper.node(),gd:i})}}}function TVt(e){if(!e.parcatsViewModel.dragDimension&&(PK(ul.select(this)),Pk.loneUnhover(e.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),e.parcatsViewModel.pathSelection.sort(CK),e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1)){var t=Ik(e),r=LK(e);e.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:t,event:ul.event,constraints:r})}}function Ik(e){for(var t=[],r=JNe(e.parcatsViewModel),n=0;n<e.model.valueInds.length;n++){var i=e.model.valueInds[n];t.push({curveNumber:r,pointNumber:i})}return t}function LK(e){for(var t={},r=e.parcatsViewModel.model.dimensions,n=0;n<r.length;n++){var i=r[n],a=i.categories[e.model.categoryInds[n]];t[i.containerInd]=a.categoryValue}return e.model.rawColor!==void 0&&(t.color=e.model.rawColor),t}function AVt(e){if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=Ik(e),r=LK(e);e.parcatsViewModel.graphDiv.emit("plotly_click",{points:t,event:ul.event,constraints:r})}}function PK(e){e.attr("fill",function(t){return t.model.color}).attr("fill-opacity",.6).attr("stroke","lightgray").attr("stroke-width",.2).attr("stroke-opacity",1)}function IK(e){e.attr("fill-opacity",.8).attr("stroke",function(t){return kK.mostReadable(t.model.color,["black","white"])}).attr("stroke-width",.3)}function SVt(e){e.select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}function YNe(e){e.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function MVt(e){e.attr("stroke","black").attr("stroke-width",1.5)}function RK(e){e.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function OF(e){var t=e.parcatsViewModel.pathSelection,r=e.categoryViewModel.model.dimensionInd,n=e.categoryViewModel.model.categoryInd;return t.filter(function(i){return i.model.categoryInds[r]===n&&i.model.color===e.color})}function EVt(e){var t=ul.select(e.parentNode).selectAll("rect.bandrect");t.each(function(r){var n=OF(r);IK(n),n.each(function(){yx.raiseToTop(this)})}),SVt(ul.select(e.parentNode))}function kVt(e){var t=ul.select(e).datum(),r=OF(t);IK(r),r.each(function(){yx.raiseToTop(this)}),ul.select(e.parentNode).selectAll("rect.bandrect").filter(function(n){return n.color===t.color}).each(function(){yx.raiseToTop(this),MVt(ul.select(this))})}function DK(e,t,r){var n=ul.select(e).datum(),i=n.categoryViewModel.model,a=n.parcatsViewModel.graphDiv,o=ul.select(e.parentNode).selectAll("rect.bandrect"),s=[];o.each(function(u){var c=OF(u);c.each(function(f){Array.prototype.push.apply(s,Ik(f))})});var l={};l[i.dimensionInd]=i.categoryValue,a.emit(t,{points:s,event:r,constraints:l})}function zK(e,t,r){var n=ul.select(e).datum(),i=n.categoryViewModel.model,a=n.parcatsViewModel.graphDiv,o=OF(n),s=[];o.each(function(u){Array.prototype.push.apply(s,Ik(u))});var l={};l[i.dimensionInd]=i.categoryValue,n.rawColor!==void 0&&(l.color=n.rawColor),a.emit(t,{points:s,event:r,constraints:l})}function KNe(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=ul.select(r.parentNode).select("rect.catrect"),o=a.node().getBoundingClientRect(),s=a.datum(),l=s.parcatsViewModel,u=l.model.dimensions[s.model.dimensionInd],c=l.trace,f=o.top+o.height/2,h,d;l.dimensions.length>1&&u.displayInd===l.dimensions.length-1?(h=o.left,d="left"):(h=o.left+o.width,d="right");var v=s.model.count,x=s.model.categoryLabel,b=v/s.parcatsViewModel.model.count,p={countLabel:v,categoryLabel:x,probabilityLabel:b.toFixed(3)},E=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&E.push(["Count:",p.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&E.push(["P("+p.categoryLabel+"):",p.probabilityLabel].join(" "));var k=E.join("<br>");return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:k,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:p,eventData:[{data:c._input,fullData:c,count:v,category:x,probability:b}]}}function CVt(e,t,r){var n=[];return ul.select(r.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var i=this;n.push(KNe(e,t,i))}),n}function LVt(e,t,r){e._fullLayout._calcInverseTransform(e);var n=e._fullLayout._invScaleX,i=e._fullLayout._invScaleY,a=r.getBoundingClientRect(),o=ul.select(r).datum(),s=o.categoryViewModel,l=s.parcatsViewModel,u=l.model.dimensions[s.model.dimensionInd],c=l.trace,f=a.y+a.height/2,h,d;l.dimensions.length>1&&u.displayInd===l.dimensions.length-1?(h=a.left,d="left"):(h=a.left+a.width,d="right");var v=s.model.categoryLabel,x=o.parcatsViewModel.model.count,b=0;o.categoryViewModel.bands.forEach(function(P){P.color===o.color&&(b+=P.count)});var p=s.model.count,E=0;l.pathSelection.each(function(P){P.model.color===o.color&&(E+=P.model.count)});var k=b/x,A=b/E,L=b/p,_={countLabel:b,categoryLabel:v,probabilityLabel:k.toFixed(3)},C=[];s.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&C.push(["Count:",_.countLabel].join(" ")),s.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(C.push("P(color \u2229 "+v+"): "+_.probabilityLabel),C.push("P("+v+" | color): "+A.toFixed(3)),C.push("P(color | "+v+"): "+L.toFixed(3)));var M=C.join("<br>"),g=kK.mostReadable(o.color,["black","white"]);return{trace:c,x:n*(h-t.left),y:i*(f-t.top),text:M,color:o.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:g,fontSize:10,idealAlign:d,hovertemplate:c.hovertemplate,hovertemplateLabels:_,eventData:[{data:c._input,fullData:c,category:v,count:x,probability:k,categorycount:p,colorcount:E,bandcolorcount:b}]}}function PVt(e){if(!e.parcatsViewModel.dragDimension&&e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var t=ul.mouse(this)[1];if(t<-1)return;var r=e.parcatsViewModel.graphDiv,n=r._fullLayout,i=n._paperdiv.node().getBoundingClientRect(),a=e.parcatsViewModel.hoveron,o=this;if(a==="color"?(kVt(o),zK(o,"plotly_hover",ul.event)):(EVt(o),DK(o,"plotly_hover",ul.event)),e.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var s;a==="category"?s=KNe(r,i,o):a==="color"?s=LVt(r,i,o):a==="dimension"&&(s=CVt(r,i,o)),s&&Pk.loneHover(s,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:r})}}}function IVt(e){var t=e.parcatsViewModel;if(!t.dragDimension&&(PK(t.pathSelection),YNe(t.dimensionSelection.selectAll("g.category")),RK(t.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),Pk.loneUnhover(t.graphDiv._fullLayout._hoverlayer.node()),t.pathSelection.sort(CK),t.hoverinfoItems.indexOf("skip")===-1)){var r=e.parcatsViewModel.hoveron,n=this;r==="color"?zK(n,"plotly_unhover",ul.event):DK(n,"plotly_unhover",ul.event)}}function RVt(e){e.parcatsViewModel.arrangement!=="fixed"&&(e.dragDimensionDisplayInd=e.model.displayInd,e.initialDragDimensionDisplayInds=e.parcatsViewModel.model.dimensions.map(function(t){return t.displayInd}),e.dragHasMoved=!1,e.dragCategoryDisplayInd=null,ul.select(this).selectAll("g.category").select("rect.catrect").each(function(t){var r=ul.mouse(this)[0],n=ul.mouse(this)[1];-2<=r&&r<=t.width+2&&-2<=n&&n<=t.height+2&&(e.dragCategoryDisplayInd=t.model.displayInd,e.initialDragCategoryDisplayInds=e.model.categories.map(function(i){return i.displayInd}),t.model.dragY=t.y,yx.raiseToTop(this.parentNode),ul.select(this.parentNode).selectAll("rect.bandrect").each(function(i){i.y<n&&n<=i.y+i.height&&(e.potentialClickBand=this)}))}),e.parcatsViewModel.dragDimension=e,Pk.loneUnhover(e.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function DVt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&(e.dragHasMoved=!0,e.dragDimensionDisplayInd!==null)){var t=e.dragDimensionDisplayInd,r=t-1,n=t+1,i=e.parcatsViewModel.dimensions[t];if(e.dragCategoryDisplayInd!==null){var a=i.categories[e.dragCategoryDisplayInd];a.model.dragY+=ul.event.dy;var o=a.model.dragY,s=a.model.displayInd,l=i.categories,u=l[s-1],c=l[s+1];u!==void 0&&o<u.y+u.height/2&&(a.model.displayInd=u.model.displayInd,u.model.displayInd=s),c!==void 0&&o+a.height>c.y+c.height/2&&(a.model.displayInd=c.model.displayInd,c.model.displayInd=s),e.dragCategoryDisplayInd=a.model.displayInd}if(e.dragCategoryDisplayInd===null||e.parcatsViewModel.arrangement==="freeform"){i.model.dragX=ul.event.x;var f=e.parcatsViewModel.dimensions[r],h=e.parcatsViewModel.dimensions[n];f!==void 0&&i.model.dragX<f.x+f.width&&(i.model.displayInd=f.model.displayInd,f.model.displayInd=t),h!==void 0&&i.model.dragX+i.width>h.x&&(i.model.displayInd=h.model.displayInd,h.model.displayInd=e.dragDimensionDisplayInd),e.dragDimensionDisplayInd=i.model.displayInd}qK(e.parcatsViewModel),FK(e.parcatsViewModel),QNe(e.parcatsViewModel),$Ne(e.parcatsViewModel)}}function zVt(e){if(e.parcatsViewModel.arrangement!=="fixed"&&e.dragDimensionDisplayInd!==null){ul.select(this).selectAll("text").attr("font-weight","normal");var t={},r=JNe(e.parcatsViewModel),n=e.parcatsViewModel.model.dimensions.map(function(h){return h.displayInd}),i=e.initialDragDimensionDisplayInds.some(function(h,d){return h!==n[d]});i&&n.forEach(function(h,d){var v=e.parcatsViewModel.model.dimensions[d].containerInd;t["dimensions["+v+"].displayindex"]=h});var a=!1;if(e.dragCategoryDisplayInd!==null){var o=e.model.categories.map(function(h){return h.displayInd});if(a=e.initialDragCategoryDisplayInds.some(function(h,d){return h!==o[d]}),a){var s=e.model.categories.slice().sort(function(h,d){return h.displayInd-d.displayInd}),l=s.map(function(h){return h.categoryValue}),u=s.map(function(h){return h.categoryLabel});t["dimensions["+e.model.containerInd+"].categoryarray"]=[l],t["dimensions["+e.model.containerInd+"].ticktext"]=[u],t["dimensions["+e.model.containerInd+"].categoryorder"]="array"}}if(e.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!e.dragHasMoved&&e.potentialClickBand&&(e.parcatsViewModel.hoveron==="color"?zK(e.potentialClickBand,"plotly_click",ul.event.sourceEvent):DK(e.potentialClickBand,"plotly_click",ul.event.sourceEvent)),e.model.dragX=null,e.dragCategoryDisplayInd!==null){var c=e.parcatsViewModel.dimensions[e.dragDimensionDisplayInd].categories[e.dragCategoryDisplayInd];c.model.dragY=null,e.dragCategoryDisplayInd=null}e.dragDimensionDisplayInd=null,e.parcatsViewModel.dragDimension=null,e.dragHasMoved=null,e.potentialClickBand=null,qK(e.parcatsViewModel),FK(e.parcatsViewModel);var f=ul.transition().duration(300).ease("cubic-in-out");f.each(function(){QNe(e.parcatsViewModel,!0),$Ne(e.parcatsViewModel,!0)}).each("end",function(){(i||a)&&_Vt.restyle(e.parcatsViewModel.graphDiv,t,[r])})}}function JNe(e){for(var t,r=e.graphDiv._fullData,n=0;n<r.length;n++)if(e.key===r[n].uid){t=n;break}return t}function $Ne(e,t){t===void 0&&(t=!1);function r(n){return t?n.transition():n}e.pathSelection.data(function(n){return n.paths},u1),r(e.pathSelection).attr("d",function(n){return n.svgD})}function QNe(e,t){t===void 0&&(t=!1);function r(l){return t?l.transition():l}e.dimensionSelection.data(function(l){return l.dimensions},u1);var n=e.dimensionSelection.selectAll("g.category").data(function(l){return l.categories},u1);r(e.dimensionSelection).attr("transform",function(l){return Ck(l.x,0)}),r(n).attr("transform",function(l){return Ck(0,l.y)});var i=n.select(".dimlabel");i.text(function(l,u){return u===0?l.parcatsViewModel.model.dimensions[l.model.dimensionInd].dimensionLabel:null});var a=n.select(".catlabel");a.attr("text-anchor",function(l){return Lk(l)?"start":"end"}).attr("x",function(l){return Lk(l)?l.width+5:-5}).each(function(l){var u,c;Lk(l)?(u=l.width+5,c="start"):(u=-5,c="end"),ul.select(this).selectAll("tspan").attr("x",u).attr("text-anchor",c)});var o=n.selectAll("rect.bandrect").data(function(l){return l.bands},u1),s=o.enter().append("rect").attr("class","bandrect").attr("cursor","move").attr("stroke-opacity",0).attr("fill",function(l){return l.color}).attr("fill-opacity",0);o.attr("fill",function(l){return l.color}).attr("width",function(l){return l.width}).attr("height",function(l){return l.height}).attr("y",function(l){return l.y}),RK(s),o.each(function(){yx.raiseToTop(this)}),o.exit().remove()}function FVt(e,t,r){var n=r[0],i=t.margin||{l:80,r:80,t:100,b:80},a=n.trace,o=a.domain,s=t.width,l=t.height,u=Math.floor(s*(o.x[1]-o.x[0])),c=Math.floor(l*(o.y[1]-o.y[0])),f=o.x[0]*s+i.l,h=t.height-o.y[1]*t.height+i.t,d=a.line.shape,v;a.hoverinfo==="all"?v=["count","probability"]:v=(a.hoverinfo||"").split("+");var x={trace:a,key:a.uid,model:n,x:f,y:h,width:u,height:c,hoveron:a.hoveron,hoverinfoItems:v,arrangement:a.arrangement,bundlecolors:a.bundlecolors,sortpaths:a.sortpaths,labelfont:a.labelfont,categorylabelfont:a.tickfont,pathShape:d,dragDimension:null,margin:i,paths:[],dimensions:[],graphDiv:e,traceSelection:null,pathSelection:null,dimensionSelection:null};return n.dimensions&&(qK(x),FK(x)),x}function XNe(e,t,r,n,i){var a=[],o=[],s,l;for(l=0;l<r.length-1;l++)s=yVt(r[l]+e[l],e[l+1]),a.push(s(i)),o.push(s(1-i));var u="M "+e[0]+","+t[0];for(u+="l"+r[0]+",0 ",l=1;l<r.length;l++)u+="C"+a[l-1]+","+t[l-1]+" "+o[l-1]+","+t[l]+" "+e[l]+","+t[l],u+="l"+r[l]+",0 ";for(u+="l0,"+n+" ",u+="l -"+r[r.length-1]+",0 ",l=r.length-2;l>=0;l--)u+="C"+o[l]+","+(t[l+1]+n)+" "+a[l]+","+(t[l]+n)+" "+(e[l]+r[l])+","+(t[l]+n),u+="l-"+r[l]+",0 ";return u+="Z",u}function FK(e){var t=e.dimensions,r=e.model,n=t.map(function(q){return q.categories.map(function(V){return V.y})}),i=e.model.dimensions.map(function(q){return q.categories.map(function(V){return V.displayInd})}),a=e.model.dimensions.map(function(q){return q.displayInd}),o=e.dimensions.map(function(q){return q.model.dimensionInd}),s=t.map(function(q){return q.x}),l=t.map(function(q){return q.width}),u=[];for(var c in r.paths)r.paths.hasOwnProperty(c)&&u.push(r.paths[c]);function f(q){var V=q.categoryInds.map(function(X,G){return i[G][X]}),H=o.map(function(X){return V[X]});return H}u.sort(function(q,V){var H=f(q),X=f(V);return e.sortpaths==="backward"&&(H.reverse(),X.reverse()),H.push(q.valueInds[0]),X.push(V.valueInds[0]),e.bundlecolors&&(H.unshift(q.rawColor),X.unshift(V.rawColor)),H<X?-1:H>X?1:0});for(var h=new Array(u.length),d=t[0].model.count,v=t[0].categories.map(function(q){return q.height}).reduce(function(q,V){return q+V}),x=0;x<u.length;x++){var b=u[x],p;d>0?p=v*(b.count/d):p=0;for(var E=new Array(n.length),k=0;k<b.categoryInds.length;k++){var A=b.categoryInds[k],L=i[k][A],_=a[k];E[_]=n[_][L],n[_][L]+=p;var C=e.dimensions[_].categories[L],M=C.bands.length,g=C.bands[M-1];if(g===void 0||b.rawColor!==g.rawColor){var P=g===void 0?0:g.y+g.height;C.bands.push({key:P,color:b.color,rawColor:b.rawColor,height:p,width:C.width,count:b.count,y:P,categoryViewModel:C,parcatsViewModel:e})}else{var T=C.bands[M-1];T.height+=p,T.count+=b.count}}var F;e.pathShape==="hspline"?F=XNe(s,E,l,p,.5):F=XNe(s,E,l,p,0),h[x]={key:b.valueInds[0],model:b,height:p,leftXs:s,topYs:E,dimWidths:l,svgD:F,parcatsViewModel:e}}e.paths=h}function qK(e){var t=e.model.dimensions.map(function(o){return{displayInd:o.displayInd,dimensionInd:o.dimensionInd}});t.sort(function(o,s){return o.displayInd-s.displayInd});var r=[];for(var n in t){var i=t[n].dimensionInd,a=e.model.dimensions[i];r.push(qVt(e,a))}e.dimensions=r}function qVt(e,t){var r=40,n=16,i=e.model.dimensions.length,a=t.displayInd,o,s,l;i>1?o=(e.width-2*r-n)/(i-1):o=0,s=r,l=s+o*a;var u=[],c=e.model.maxCats,f=t.categories.length,h=8,d=t.count,v=e.height-h*(c-1),x,b,p,E,k,A=(c-f)*h/2,L=t.categories.map(function(_){return{displayInd:_.displayInd,categoryInd:_.categoryInd}});for(L.sort(function(_,C){return _.displayInd-C.displayInd}),k=0;k<f;k++)E=L[k].categoryInd,b=t.categories[E],d>0?x=b.count/d*v:x=0,p={key:b.valueInds[0],model:b,width:n,height:x,y:b.dragY!==null?b.dragY:A,bands:[],parcatsViewModel:e},A=A+x+h,u.push(p);return{key:t.dimensionInd,x:t.dragX!==null?t.dragX:l,y:0,width:n,model:t,categories:u,parcatsViewModel:e,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}});var OK=ye((Tyr,rUe)=>{"use strict";var OVt=tUe();rUe.exports=function(t,r,n,i){var a=t._fullLayout,o=a._paper,s=a._size;OVt(t,o,r,{width:s.w,height:s.h,margin:{t:s.t,r:s.r,b:s.b,l:s.l}},n,i)}});var nUe=ye(BF=>{"use strict";var BVt=kd().getModuleCalcData,NVt=OK(),iUe="parcats";BF.name=iUe;BF.plot=function(e,t,r,n){var i=BVt(e.calcdata,iUe);if(i.length){var a=i[0];NVt(e,a,r,n)}};BF.clean=function(e,t,r,n){var i=n._has&&n._has("parcats"),a=t._has&&t._has("parcats");i&&!a&&n._paperdiv.selectAll(".parcats").remove()}});var oUe=ye((Syr,aUe)=>{"use strict";aUe.exports={attributes:EK(),supplyDefaults:GNe(),calc:WNe(),plot:OK(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:nUe(),categories:["noOpacity"],meta:{}}});var lUe=ye((Myr,sUe)=>{"use strict";sUe.exports=oUe()});var c1=ye((Eyr,pUe)=>{"use strict";var UVt=Y1(),uUe="1.13.4",dUe='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',cUe=['\xA9 <a target="_blank" href="https://carto.com/">Carto</a>',dUe].join(" "),fUe=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://www.openstreetmap.org/copyright">ODbL</a>'].join(" "),VVt=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>'].join(" "),vUe={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:dUe,tiles:["https://a.tile.openstreetmap.org/{z}/{x}/{y}.png","https://b.tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:cUe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:cUe,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:fUe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:fUe,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:VVt,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},hUe=UVt(vUe);pUe.exports={requiredVersion:uUe,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:vUe,styleValuesNonMapbox:hUe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+uUe+"."].join(`
+`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(`
+`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",hUe.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(`
+`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(`
+`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}});var Rk=ye((kyr,_Ue)=>{"use strict";var gUe=Mr(),mUe=va().defaultLine,HVt=Ju().attributes,GVt=Su(),jVt=Uc().textposition,WVt=Bu().overrideAll,ZVt=Vs().templatedArray,BK=c1(),yUe=GVt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});yUe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var XVt=_Ue.exports=WVt({_arrayAttrRegexps:[gUe.counterRegex("mapbox",".layers",!0)],domain:HVt({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:BK.styleValuesMapbox.concat(BK.styleValuesNonMapbox),dflt:BK.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:ZVt("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:mUe},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:mUe}},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:yUe,textposition:gUe.extendFlat({},jVt,{arrayOk:!1})}})},"plot","from-root");XVt.uirevision={valType:"any",editType:"none"}});var NF=ye((Cyr,wUe)=>{"use strict";var YVt=Wo().hovertemplateAttrs,KVt=Wo().texttemplateAttrs,JVt=Eg(),Dk=H2(),_A=Uc(),xUe=Rk(),$Vt=vl(),QVt=Jl(),ew=no().extendFlat,eHt=Bu().overrideAll,tHt=Rk(),bUe=Dk.line,xA=Dk.marker;wUe.exports=eHt({lon:Dk.lon,lat:Dk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:ew({},tHt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:ew({},xA.opacity,{dflt:1})},mode:ew({},_A.mode,{dflt:"markers"}),text:ew({},_A.text,{}),texttemplate:KVt({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:ew({},_A.hovertext,{}),line:{color:bUe.color,width:bUe.width},connectgaps:_A.connectgaps,marker:ew({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:xA.opacity,size:xA.size,sizeref:xA.sizeref,sizemin:xA.sizemin,sizemode:xA.sizemode},QVt("marker")),fill:Dk.fill,fillcolor:JVt(),textfont:xUe.layers.symbol.textfont,textposition:xUe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:_A.selected.marker},unselected:{marker:_A.unselected.marker},hoverinfo:ew({},$Vt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:YVt()},"calc","nested")});var NK=ye((Lyr,TUe)=>{"use strict";var rHt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];TUe.exports={isSupportedFont:function(e){return rHt.indexOf(e)!==-1}}});var MUe=ye((Pyr,SUe)=>{"use strict";var zk=Mr(),UK=lu(),iHt=$p(),nHt=R0(),aHt=D0(),oHt=Ig(),AUe=NF(),sHt=NK().isSupportedFont;SUe.exports=function(t,r,n,i){function a(p,E){return zk.coerce(t,r,AUe,p,E)}function o(p,E){return zk.coerce2(t,r,AUe,p,E)}var s=lHt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("hovertext"),a("hovertemplate"),a("mode"),a("below"),UK.hasMarkers(r)){iHt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(zk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),zk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}UK.hasLines(r)&&(nHt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,x=a("cluster.enabled",v);if(x||UK.hasText(r)){var b=i.font.family;aHt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:sHt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&oHt(t,r,n,a),zk.coerceSelectionMarkerOpacity(r,a)};function lHt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var VK=ye((Iyr,kUe)=>{"use strict";var EUe=Qa();kUe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=EUe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=EUe.tickText(o,o.c2l(s[1]),!0).text,i}});var HK=ye((Ryr,LUe)=>{"use strict";var CUe=Mr();LUe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=CUe.isArrayOrTypedArray(r)?CUe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var FUe=ye((Dyr,zUe)=>{"use strict";var RUe=uo(),iv=Mr(),uHt=es().BADNUM,VF=rx(),PUe=Mu(),cHt=ao(),fHt=S3(),HF=lu(),hHt=NK().isSupportedFont,dHt=HK(),vHt=rp().appendArrayPointValue,pHt=Pl().NEWLINES,gHt=Pl().BR_TAG_ALL;zUe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=HF.hasLines(n),s=HF.hasMarkers(n),l=HF.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=UF("fill"),d=UF("line"),v=UF("circle"),x=UF("symbol"),b={fill:h,line:d,circle:v,symbol:x};if(!i)return b;var p;if((a||o)&&(p=VF.calcTraceToLineCoords(r)),a&&(h.geojson=VF.makePolygon(p),h.layout.visibility="visible",iv.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=VF.makeLine(p),d.layout.visibility="visible",iv.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var E=mHt(r);v.geojson=E.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":jK(n.cluster.color,n.cluster.step),"circle-radius":jK(n.cluster.size,n.cluster.step),"circle-opacity":jK(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":IUe(n),"text-size":12}}),iv.extendFlat(v.paint,{"circle-color":E.mcc,"circle-radius":E.mrc,"circle-opacity":E.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(x.geojson=yHt(r,t),iv.extendFlat(x.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(iv.extendFlat(x.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&iv.extendFlat(x.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),x.layout["icon-allow-overlap"]=n.marker.allowoverlap,iv.extendFlat(x.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var k=(n.marker||{}).size,A=dHt(n.textposition,k);iv.extendFlat(x.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":IUe(n)}),iv.extendFlat(x.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function UF(e){return{type:e,geojson:VF.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function mHt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=iv.isArrayOrTypedArray(r.color),a=iv.isArrayOrTypedArray(r.size),o=iv.isArrayOrTypedArray(r.opacity),s;function l(k){return t.opacity*k}function u(k){return k/2}var c;i&&(PUe.hasColorscale(t,"marker")?c=PUe.makeColorScaleFuncFromTrace(r):c=iv.identity);var f;a&&(f=fHt(t));var h;o&&(h=function(k){var A=RUe(k)?+iv.constrain(k,0,1):0;return l(A)});var d=[];for(s=0;s<e.length;s++){var v=e[s],x=v.lonlat;if(!DUe(x)){var b={};c&&(b.mcc=v.mcc=c(v.mc)),f&&(b.mrc=v.mrc=f(v.ms)),h&&(b.mo=h(v.mo)),n&&(b.selected=v.selected||0),d.push({type:"Feature",id:s+1,geometry:{type:"Point",coordinates:x},properties:b})}}var p;if(n)for(p=cHt.makeSelectedPointStyleFns(t),s=0;s<d.length;s++){var E=d[s].properties;p.selectedOpacityFn&&(E.mo=l(p.selectedOpacityFn(E))),p.selectedColorFn&&(E.mcc=p.selectedColorFn(E)),p.selectedSizeFn&&(E.mrc=p.selectedSizeFn(E))}return{geojson:{type:"FeatureCollection",features:d},mcc:i||p&&p.selectedColorFn?{type:"identity",property:"mcc"}:r.color,mrc:a||p&&p.selectedSizeFn?{type:"identity",property:"mrc"}:u(r.size),mo:o||p&&p.selectedOpacityFn?{type:"identity",property:"mo"}:l(r.opacity)}}function yHt(e,t){for(var r=t._fullLayout,n=e[0].trace,i=n.marker||{},a=i.symbol,o=i.angle,s=a!=="circle"?GK(a):GF,l=o!=="auto"?GK(o,!0):GF,u=HF.hasText(n)?GK(n.text):GF,c=[],f=0;f<e.length;f++){var h=e[f];if(!DUe(h.lonlat)){var d=n.texttemplate,v;if(d){var x=Array.isArray(d)?d[f]||"":d,b=n._module.formatLabels(h,n,r),p={};vHt(p,n,h.i);var E=n._meta||{};v=iv.texttemplateString(x,b,r._d3locale,p,h,E)}else v=u(f);v&&(v=v.replace(pHt,"").replace(gHt,`
+`)),c.push({type:"Feature",geometry:{type:"Point",coordinates:h.lonlat},properties:{symbol:s(f),angle:l(f),text:v}})}}return{type:"FeatureCollection",features:c}}function GK(e,t){return iv.isArrayOrTypedArray(e)?t?function(r){return RUe(e[r])?+e[r]:0}:function(r){return e[r]}:e?function(){return e}:GF}function GF(){return""}function DUe(e){return e[0]===uHt}function jK(e,t){var r;if(iv.isArrayOrTypedArray(e)&&iv.isArrayOrTypedArray(t)){r=["step",["get","point_count"],e[0]];for(var n=1;n<e.length;n++)r.push(t[n-1],e[n])}else r=e;return r}function IUe(e){var t=e.textfont,r=t.family,n=t.style,i=t.weight,a=r.split(" "),o=a[a.length-1]==="Italic";o&&a.pop(),o=o||n==="italic";var s=a.join(" ");i==="bold"&&a.indexOf("Bold")===-1?s+=" Bold":i<=1e3&&(a[0]==="Metropolis"?(s="Metropolis",i>850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),hHt(s)||(s=r);var l=s.split(", ");return l}});var NUe=ye((zyr,BUe)=>{"use strict";var _Ht=Mr(),qUe=FUe(),bA=c1().traceLayerPrefix,rg={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function OUe(e,t,r,n){this.type="scattermapbox",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:bA+t+"-fill",line:bA+t+"-line",circle:bA+t+"-circle",symbol:bA+t+"-symbol",cluster:bA+t+"-cluster",clusterCount:bA+t+"-cluster-count"},this.below=null}var Fk=OUe.prototype;Fk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&_Ht.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Fk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Fk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s<o.length;s++)if(o[s].id===i){a=!0;break}a?(this.subplot.setOptions(i,"setLayoutProperty",n.layout),n.layout.visibility==="visible"&&this.subplot.setOptions(i,"setPaintProperty",n.paint)):this.subplot.addLayer(n,r)};Fk.update=function(t){var r=t[0].trace,n=this.subplot,i=n.map,a=qUe(n.gd,t),o=n.belowLookup["trace-"+this.uid],s=!!(r.cluster&&r.cluster.enabled),l=!!this.clusterEnabled,u=this;function c(k){k||u.addSource("circle",a.circle,r.cluster);for(var A=rg.cluster,L=0;L<A.length;L++){var _=A[L],C=a[_];u.addLayer(_,C,o)}}function f(k){for(var A=rg.cluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_])}k||i.removeSource(u.sourceIds.circle)}function h(k){for(var A=rg.nonCluster,L=0;L<A.length;L++){var _=A[L],C=a[_];k||u.addSource(_,C),u.addLayer(_,C,o)}}function d(k){for(var A=rg.nonCluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_]),k||i.removeSource(u.sourceIds[_])}}function v(k){l?f(k):d(k)}function x(k){s?c(k):h(k)}function b(){for(var k=s?rg.cluster:rg.nonCluster,A=0;A<k.length;A++){var L=k[A],_=a[L];_&&(n.setOptions(u.layerIds[L],"setLayoutProperty",_.layout),_.layout.visibility==="visible"&&(L!=="cluster"&&u.setSourceData(L,_),n.setOptions(u.layerIds[L],"setPaintProperty",_.paint)))}}var p=this.isHidden,E=r.visible!==!0;E?p||v():p?E||x():l!==s?(v(),x()):(this.below!==o&&(v(!0),x(!0)),b()),this.clusterEnabled=s,this.isHidden=E,this.below=o,t[0].trace._glTrace=this};Fk.dispose=function(){for(var t=this.subplot.map,r=this.clusterEnabled?rg.cluster:rg.nonCluster,n=r.length-1;n>=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};BUe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new OUe(t,n.uid,i,a),s=qUe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u<rg.cluster.length;u++)c=rg.cluster[u],f=s[c],o.addLayer(c,f,l);else for(u=0;u<rg.nonCluster.length;u++)c=rg.nonCluster[u],f=s[c],o.addSource(c,f,n.cluster),o.addLayer(c,f,l);return r[0].trace._glTrace=o,o}});var jF=ye((Fyr,VUe)=>{"use strict";var xHt=Nc(),WK=Mr(),bHt=oT(),wHt=WK.fillText,THt=es().BADNUM,AHt=c1().traceLayerPrefix;function SHt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=AHt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function x(M){var g=M.lonlat;if(g[0]===THt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=WK.modHalf(g[0],360),T=g[1],F=s.project([P,T]),q=F.x-a.c2p([v,T]),V=F.y-o.c2p([P,r]),H=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(q*q+V*V)-H,1-3/H)}if(xHt.getClosest(n,x,e),e.index!==!1){var b=n[e.index],p=b.lonlat,E=[WK.modHalf(p[0],360)+d,p[1]],k=a.c2p(E),A=o.c2p(E),L=b.mrc||1;e.x0=k-L,e.x1=k+L,e.y0=A-L,e.y1=A+L;var _={};_[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,_);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=bHt(i,b),e.extraText=UUe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function UUe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&wHt(t,e,u),u.join("<br>")}VUe.exports={hoverPoints:SHt,getExtraText:UUe}});var GUe=ye((qyr,HUe)=>{"use strict";HUe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var WUe=ye((Oyr,jUe)=>{"use strict";var MHt=Mr(),EHt=lu(),kHt=es().BADNUM;jUe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!EHt.hasMarkers(s))return[];if(r===!1)for(l=0;l<n.length;l++)n[l].selected=0;else for(l=0;l<n.length;l++){var u=n[l],c=u.lonlat;if(c[0]!==kHt){var f=[MHt.modHalf(c[0],360),c[1]],h=[i.c2p(f),a.c2p(f)];r.contains(h,null,l,t)?(o.push({pointNumber:l,lon:c[0],lat:c[1]}),u.selected=1):u.selected=0}}return o}});var YK=ye((ZK,XK)=>{(function(e,t){typeof ZK=="object"&&typeof XK!="undefined"?XK.exports=t():(e=e||self,e.mapboxgl=t())})(ZK,function(){"use strict";var e,t,r;function n(i,a){if(!e)e=a;else if(!t)t=a;else{var o="var sharedChunk = {}; ("+e+")(sharedChunk); ("+t+")(sharedChunk);",s={};e(s),r=a(s),typeof window!="undefined"&&(r.workerUrl=window.URL.createObjectURL(new Blob([o],{type:"text/javascript"})))}}return n(["exports"],function(i){"use strict";function a(m,y){return y={exports:{}},m(y,y.exports),y.exports}var o="1.13.4",s=l;function l(m,y,I,U){this.cx=3*m,this.bx=3*(I-m)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*y,this.by=3*(U-y)-this.cy,this.ay=1-this.cy-this.by,this.p1x=m,this.p1y=U,this.p2x=I,this.p2y=U}l.prototype.sampleCurveX=function(m){return((this.ax*m+this.bx)*m+this.cx)*m},l.prototype.sampleCurveY=function(m){return((this.ay*m+this.by)*m+this.cy)*m},l.prototype.sampleCurveDerivativeX=function(m){return(3*this.ax*m+2*this.bx)*m+this.cx},l.prototype.solveCurveX=function(m,y){typeof y=="undefined"&&(y=1e-6);var I,U,J,ne,fe;for(J=m,fe=0;fe<8;fe++){if(ne=this.sampleCurveX(J)-m,Math.abs(ne)<y)return J;var Fe=this.sampleCurveDerivativeX(J);if(Math.abs(Fe)<1e-6)break;J=J-ne/Fe}if(I=0,U=1,J=m,J<I)return I;if(J>U)return U;for(;I<U;){if(ne=this.sampleCurveX(J),Math.abs(ne-m)<y)return J;m>ne?I=J:U=J,J=(U-I)*.5+I}return J},l.prototype.solve=function(m,y){return this.sampleCurveY(this.solveCurveX(m,y))};var u=c;function c(m,y){this.x=m,this.y=y}c.prototype={clone:function(){return new c(this.x,this.y)},add:function(m){return this.clone()._add(m)},sub:function(m){return this.clone()._sub(m)},multByPoint:function(m){return this.clone()._multByPoint(m)},divByPoint:function(m){return this.clone()._divByPoint(m)},mult:function(m){return this.clone()._mult(m)},div:function(m){return this.clone()._div(m)},rotate:function(m){return this.clone()._rotate(m)},rotateAround:function(m,y){return this.clone()._rotateAround(m,y)},matMult:function(m){return this.clone()._matMult(m)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(m){return this.x===m.x&&this.y===m.y},dist:function(m){return Math.sqrt(this.distSqr(m))},distSqr:function(m){var y=m.x-this.x,I=m.y-this.y;return y*y+I*I},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(m){return Math.atan2(this.y-m.y,this.x-m.x)},angleWith:function(m){return this.angleWithSep(m.x,m.y)},angleWithSep:function(m,y){return Math.atan2(this.x*y-this.y*m,this.x*m+this.y*y)},_matMult:function(m){var y=m[0]*this.x+m[1]*this.y,I=m[2]*this.x+m[3]*this.y;return this.x=y,this.y=I,this},_add:function(m){return this.x+=m.x,this.y+=m.y,this},_sub:function(m){return this.x-=m.x,this.y-=m.y,this},_mult:function(m){return this.x*=m,this.y*=m,this},_div:function(m){return this.x/=m,this.y/=m,this},_multByPoint:function(m){return this.x*=m.x,this.y*=m.y,this},_divByPoint:function(m){return this.x/=m.x,this.y/=m.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var m=this.y;return this.y=this.x,this.x=-m,this},_rotate:function(m){var y=Math.cos(m),I=Math.sin(m),U=y*this.x-I*this.y,J=I*this.x+y*this.y;return this.x=U,this.y=J,this},_rotateAround:function(m,y){var I=Math.cos(m),U=Math.sin(m),J=y.x+I*(this.x-y.x)-U*(this.y-y.y),ne=y.y+U*(this.x-y.x)+I*(this.y-y.y);return this.x=J,this.y=ne,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},c.convert=function(m){return m instanceof c?m:Array.isArray(m)?new c(m[0],m[1]):m};var f=typeof self!="undefined"?self:{};function h(m,y){if(Array.isArray(m)){if(!Array.isArray(y)||m.length!==y.length)return!1;for(var I=0;I<m.length;I++)if(!h(m[I],y[I]))return!1;return!0}if(typeof m=="object"&&m!==null&&y!==null){if(typeof y!="object")return!1;var U=Object.keys(m);if(U.length!==Object.keys(y).length)return!1;for(var J in m)if(!h(m[J],y[J]))return!1;return!0}return m===y}var d=Math.pow(2,53)-1;function v(m){if(m<=0)return 0;if(m>=1)return 1;var y=m*m,I=y*m;return 4*(m<.5?I:3*(m-y)+I-.75)}function x(m,y,I,U){var J=new s(m,y,I,U);return function(ne){return J.solve(ne)}}var b=x(.25,.1,.25,1);function p(m,y,I){return Math.min(I,Math.max(y,m))}function E(m,y,I){var U=I-y,J=((m-y)%U+U)%U+y;return J===y?I:J}function k(m,y,I){if(!m.length)return I(null,[]);var U=m.length,J=new Array(m.length),ne=null;m.forEach(function(fe,Fe){y(fe,function(Qe,st){Qe&&(ne=Qe),J[Fe]=st,--U===0&&I(ne,J)})})}function A(m){var y=[];for(var I in m)y.push(m[I]);return y}function L(m,y){var I=[];for(var U in m)U in y||I.push(U);return I}function _(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,J=y;U<J.length;U+=1){var ne=J[U];for(var fe in ne)m[fe]=ne[fe]}return m}function C(m,y){for(var I={},U=0;U<y.length;U++){var J=y[U];J in m&&(I[J]=m[J])}return I}var M=1;function g(){return M++}function P(){function m(y){return y?(y^Math.random()*16>>y/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,m)}return m()}function T(m){return m<=1?1:Math.pow(2,Math.ceil(Math.log(m)/Math.LN2))}function F(m){return m?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(m):!1}function q(m,y){m.forEach(function(I){y[I]&&(y[I]=y[I].bind(y))})}function V(m,y){return m.indexOf(y,m.length-y.length)!==-1}function H(m,y,I){var U={};for(var J in m)U[J]=y.call(I||this,m[J],J,m);return U}function X(m,y,I){var U={};for(var J in m)y.call(I||this,m[J],J,m)&&(U[J]=m[J]);return U}function G(m){return Array.isArray(m)?m.map(G):typeof m=="object"&&m?H(m,G):m}function N(m,y){for(var I=0;I<m.length;I++)if(y.indexOf(m[I])>=0)return!0;return!1}var W={};function re(m){W[m]||(typeof console!="undefined"&&console.warn(m),W[m]=!0)}function ae(m,y,I){return(I.y-m.y)*(y.x-m.x)>(y.y-m.y)*(I.x-m.x)}function _e(m){for(var y=0,I=0,U=m.length,J=U-1,ne=void 0,fe=void 0;I<U;J=I++)ne=m[I],fe=m[J],y+=(fe.x-ne.x)*(ne.y+fe.y);return y}function Me(m){var y=m[0],I=m[1],U=m[2];return I+=90,I*=Math.PI/180,U*=Math.PI/180,{x:y*Math.cos(I)*Math.sin(U),y:y*Math.sin(I)*Math.sin(U),z:y*Math.cos(U)}}function ke(){return typeof WorkerGlobalScope!="undefined"&&typeof self!="undefined"&&self instanceof WorkerGlobalScope}function ge(m){var y=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,I={};if(m.replace(y,function(J,ne,fe,Fe){var Qe=fe||Fe;return I[ne]=Qe?Qe.toLowerCase():!0,""}),I["max-age"]){var U=parseInt(I["max-age"],10);isNaN(U)?delete I["max-age"]:I["max-age"]=U}return I}var ie=null;function Te(m){if(ie==null){var y=m.navigator?m.navigator.userAgent:null;ie=!!m.safari||!!(y&&(/\b(iPad|iPhone|iPod)\b/.test(y)||y.match("Safari")&&!y.match("Chrome")))}return ie}function Ee(m){try{var y=f[m];return y.setItem("_mapbox_test_",1),y.removeItem("_mapbox_test_"),!0}catch(I){return!1}}function Ae(m){return f.btoa(encodeURIComponent(m).replace(/%([0-9A-F]{2})/g,function(y,I){return String.fromCharCode(+("0x"+I))}))}function ze(m){return decodeURIComponent(f.atob(m).split("").map(function(y){return"%"+("00"+y.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var Ce=f.performance&&f.performance.now?f.performance.now.bind(f.performance):Date.now.bind(Date),me=f.requestAnimationFrame||f.mozRequestAnimationFrame||f.webkitRequestAnimationFrame||f.msRequestAnimationFrame,Re=f.cancelAnimationFrame||f.mozCancelAnimationFrame||f.webkitCancelAnimationFrame||f.msCancelAnimationFrame,ce,Ge,nt={now:Ce,frame:function(y){var I=me(y);return{cancel:function(){return Re(I)}}},getImageData:function(y,I){I===void 0&&(I=0);var U=f.document.createElement("canvas"),J=U.getContext("2d");if(!J)throw new Error("failed to create canvas 2d context");return U.width=y.width,U.height=y.height,J.drawImage(y,0,0,y.width,y.height),J.getImageData(-I,-I,y.width+2*I,y.height+2*I)},resolveURL:function(y){return ce||(ce=f.document.createElement("a")),ce.href=y,ce.href},hardwareConcurrency:f.navigator&&f.navigator.hardwareConcurrency||4,get devicePixelRatio(){return f.devicePixelRatio},get prefersReducedMotion(){return f.matchMedia?(Ge==null&&(Ge=f.matchMedia("(prefers-reduced-motion: reduce)")),Ge.matches):!1}},ct={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},qt={supported:!1,testSupport:Ct},rt,ot=!1,Rt,kt=!1;f.document&&(Rt=f.document.createElement("img"),Rt.onload=function(){rt&&Yt(rt),rt=null,kt=!0},Rt.onerror=function(){ot=!0,rt=null},Rt.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function Ct(m){ot||!Rt||(kt?Yt(m):rt=m)}function Yt(m){var y=m.createTexture();m.bindTexture(m.TEXTURE_2D,y);try{if(m.texImage2D(m.TEXTURE_2D,0,m.RGBA,m.RGBA,m.UNSIGNED_BYTE,Rt),m.isContextLost())return;qt.supported=!0}catch(I){}m.deleteTexture(y),ot=!0}var xr="01";function er(){for(var m="1",y="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",I="",U=0;U<10;U++)I+=y[Math.floor(Math.random()*62)];var J=12*60*60*1e3,ne=[m,xr,I].join(""),fe=Date.now()+J;return{token:ne,tokenExpiresAt:fe}}var Ke=function(y,I){this._transformRequestFn=y,this._customAccessToken=I,this._createSkuToken()};Ke.prototype._createSkuToken=function(){var y=er();this._skuToken=y.token,this._skuTokenExpiresAt=y.tokenExpiresAt},Ke.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},Ke.prototype.transformRequest=function(y,I){return this._transformRequestFn?this._transformRequestFn(y,I)||{url:y}:{url:y}},Ke.prototype.normalizeStyleURL=function(y,I){if(!xt(y))return y;var U=Ht(y);return U.path="/styles/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},Ke.prototype.normalizeGlyphsURL=function(y,I){if(!xt(y))return y;var U=Ht(y);return U.path="/fonts/v1"+U.path,this._makeAPIURL(U,this._customAccessToken||I)},Ke.prototype.normalizeSourceURL=function(y,I){if(!xt(y))return y;var U=Ht(y);return U.path="/v4/"+U.authority+".json",U.params.push("secure"),this._makeAPIURL(U,this._customAccessToken||I)},Ke.prototype.normalizeSpriteURL=function(y,I,U,J){var ne=Ht(y);return xt(y)?(ne.path="/styles/v1"+ne.path+"/sprite"+I+U,this._makeAPIURL(ne,this._customAccessToken||J)):(ne.path+=""+I+U,$t(ne))},Ke.prototype.normalizeTileURL=function(y,I){if(this._isSkuTokenExpired()&&this._createSkuToken(),y&&!xt(y))return y;var U=Ht(y),J=/(\.(png|jpg)\d*)(?=$)/,ne=/^.+\/v4\//,fe=nt.devicePixelRatio>=2||I===512?"@2x":"",Fe=qt.supported?".webp":"$1";U.path=U.path.replace(J,""+fe+Fe),U.path=U.path.replace(ne,"/"),U.path="/v4"+U.path;var Qe=this._customAccessToken||Et(U.params)||ct.ACCESS_TOKEN;return ct.REQUIRE_ACCESS_TOKEN&&Qe&&this._skuToken&&U.params.push("sku="+this._skuToken),this._makeAPIURL(U,Qe)},Ke.prototype.canonicalizeTileURL=function(y,I){var U="/v4/",J=/\.[\w]+$/,ne=Ht(y);if(!ne.path.match(/(^\/v4\/)/)||!ne.path.match(J))return y;var fe="mapbox://tiles/";fe+=ne.path.replace(U,"");var Fe=ne.params;return I&&(Fe=Fe.filter(function(Qe){return!Qe.match(/^access_token=/)})),Fe.length&&(fe+="?"+Fe.join("&")),fe},Ke.prototype.canonicalizeTileset=function(y,I){for(var U=I?xt(I):!1,J=[],ne=0,fe=y.tiles||[];ne<fe.length;ne+=1){var Fe=fe[ne];Lt(Fe)?J.push(this.canonicalizeTileURL(Fe,U)):J.push(Fe)}return J},Ke.prototype._makeAPIURL=function(y,I){var U="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",J=Ht(ct.API_URL);if(y.protocol=J.protocol,y.authority=J.authority,y.protocol==="http"){var ne=y.params.indexOf("secure");ne>=0&&y.params.splice(ne,1)}if(J.path!=="/"&&(y.path=""+J.path+y.path),!ct.REQUIRE_ACCESS_TOKEN)return $t(y);if(I=I||ct.ACCESS_TOKEN,!I)throw new Error("An API access token is required to use Mapbox GL. "+U);if(I[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+U);return y.params=y.params.filter(function(fe){return fe.indexOf("access_token")===-1}),y.params.push("access_token="+I),$t(y)};function xt(m){return m.indexOf("mapbox:")===0}var bt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function Lt(m){return bt.test(m)}function St(m){return m.indexOf("sku=")>0&&Lt(m)}function Et(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y],J=U.match(/^access_token=(.*)$/);if(J)return J[1]}return null}var dt=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Ht(m){var y=m.match(dt);if(!y)throw new Error("Unable to parse URL object");return{protocol:y[1],authority:y[2],path:y[3]||"/",params:y[4]?y[4].split("&"):[]}}function $t(m){var y=m.params.length?"?"+m.params.join("&"):"";return m.protocol+"://"+m.authority+m.path+y}var fr="mapbox.eventData";function _r(m){if(!m)return null;var y=m.split(".");if(!y||y.length!==3)return null;try{var I=JSON.parse(ze(y[1]));return I}catch(U){return null}}var Br=function(y){this.type=y,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};Br.prototype.getStorageKey=function(y){var I=_r(ct.ACCESS_TOKEN),U="";return I&&I.u?U=Ae(I.u):U=ct.ACCESS_TOKEN||"",y?fr+"."+y+":"+U:fr+":"+U},Br.prototype.fetchEventData=function(){var y=Ee("localStorage"),I=this.getStorageKey(),U=this.getStorageKey("uuid");if(y)try{var J=f.localStorage.getItem(I);J&&(this.eventData=JSON.parse(J));var ne=f.localStorage.getItem(U);ne&&(this.anonId=ne)}catch(fe){re("Unable to read from LocalStorage")}},Br.prototype.saveEventData=function(){var y=Ee("localStorage"),I=this.getStorageKey(),U=this.getStorageKey("uuid");if(y)try{f.localStorage.setItem(U,this.anonId),Object.keys(this.eventData).length>=1&&f.localStorage.setItem(I,JSON.stringify(this.eventData))}catch(J){re("Unable to write to LocalStorage")}},Br.prototype.processRequests=function(y){},Br.prototype.postEvent=function(y,I,U,J){var ne=this;if(ct.EVENTS_URL){var fe=Ht(ct.EVENTS_URL);fe.params.push("access_token="+(J||ct.ACCESS_TOKEN||""));var Fe={event:this.type,created:new Date(y).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:o,skuId:xr,userId:this.anonId},Qe=I?_(Fe,I):Fe,st={url:$t(fe),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Qe])};this.pendingRequest=Vr(st,function(mt){ne.pendingRequest=null,U(mt),ne.saveEventData(),ne.processRequests(J)})}},Br.prototype.queueRequest=function(y,I){this.queue.push(y),this.processRequests(I)};var Or=function(m){function y(){m.call(this,"map.load"),this.success={},this.skuToken=""}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postMapLoadEvent=function(U,J,ne,fe){this.skuToken=ne,(ct.EVENTS_URL&&fe||ct.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(Fe){return xt(Fe)||Lt(Fe)}))&&this.queueRequest({id:J,timestamp:Date.now()},fe)},y.prototype.processRequests=function(U){var J=this;if(!(this.pendingRequest||this.queue.length===0)){var ne=this.queue.shift(),fe=ne.id,Fe=ne.timestamp;fe&&this.success[fe]||(this.anonId||this.fetchEventData(),F(this.anonId)||(this.anonId=P()),this.postEvent(Fe,{skuToken:this.skuToken},function(Qe){Qe||fe&&(J.success[fe]=!0)},U))}},y}(Br),Nr=function(m){function y(I){m.call(this,"appUserTurnstile"),this._customAccessToken=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.postTurnstileEvent=function(U,J){ct.EVENTS_URL&&ct.ACCESS_TOKEN&&Array.isArray(U)&&U.some(function(ne){return xt(ne)||Lt(ne)})&&this.queueRequest(Date.now(),J)},y.prototype.processRequests=function(U){var J=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var ne=_r(ct.ACCESS_TOKEN),fe=ne?ne.u:ct.ACCESS_TOKEN,Fe=fe!==this.eventData.tokenU;F(this.anonId)||(this.anonId=P(),Fe=!0);var Qe=this.queue.shift();if(this.eventData.lastSuccess){var st=new Date(this.eventData.lastSuccess),mt=new Date(Qe),Xt=(Qe-this.eventData.lastSuccess)/(24*60*60*1e3);Fe=Fe||Xt>=1||Xt<-1||st.getDate()!==mt.getDate()}else Fe=!0;if(!Fe)return this.processRequests();this.postEvent(Qe,{"enabled.telemetry":!1},function(ur){ur||(J.eventData.lastSuccess=Qe,J.eventData.tokenU=fe)},U)}},y}(Br),ut=new Nr,Ne=ut.postTurnstileEvent.bind(ut),Ye=new Or,Ve=Ye.postMapLoadEvent.bind(Ye),Xe="mapbox-tiles",ht=500,Le=50,xe=1e3*60*7,Se;function lt(){f.caches&&!Se&&(Se=f.caches.open(Xe))}var Gt;function Vt(m,y){if(Gt===void 0)try{new Response(new ReadableStream),Gt=!0}catch(I){Gt=!1}Gt?y(m.body):m.blob().then(y)}function ar(m,y,I){if(lt(),!!Se){var U={status:y.status,statusText:y.statusText,headers:new f.Headers};y.headers.forEach(function(fe,Fe){return U.headers.set(Fe,fe)});var J=ge(y.headers.get("Cache-Control")||"");if(!J["no-store"]){J["max-age"]&&U.headers.set("Expires",new Date(I+J["max-age"]*1e3).toUTCString());var ne=new Date(U.headers.get("Expires")).getTime()-I;ne<xe||Vt(y,function(fe){var Fe=new f.Response(fe,U);lt(),Se&&Se.then(function(Qe){return Qe.put(Qr(m.url),Fe)}).catch(function(Qe){return re(Qe.message)})})}}}function Qr(m){var y=m.indexOf("?");return y<0?m:m.slice(0,y)}function ai(m,y){if(lt(),!Se)return y(null);var I=Qr(m.url);Se.then(function(U){U.match(I).then(function(J){var ne=jr(J);U.delete(I),ne&&U.put(I,J.clone()),y(null,J,ne)}).catch(y)}).catch(y)}function jr(m){if(!m)return!1;var y=new Date(m.headers.get("Expires")||0),I=ge(m.headers.get("Cache-Control")||"");return y>Date.now()&&!I["no-cache"]}var ri=1/0;function bi(m){ri++,ri>Le&&(m.getActor().send("enforceCacheSizeLimit",ht),ri=0)}function nn(m){lt(),Se&&Se.then(function(y){y.keys().then(function(I){for(var U=0;U<I.length-m;U++)y.delete(I[U])})})}function Wi(m){var y=f.caches.delete(Xe);m&&y.catch(m).then(function(){return m()})}function Ni(m,y){ht=m,Le=y}var _n;function $i(){return _n==null&&(_n=f.OffscreenCanvas&&new f.OffscreenCanvas(1,1).getContext("2d")&&typeof f.createImageBitmap=="function"),_n}var zn={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};typeof Object.freeze=="function"&&Object.freeze(zn);var Wn=function(m){function y(I,U,J){U===401&&Lt(J)&&(I+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),m.call(this,I),this.status=U,this.url=J,this.name=this.constructor.name,this.message=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},y}(Error),It=ke()?function(){return self.worker&&self.worker.referrer}:function(){return(f.location.protocol==="blob:"?f.parent:f).location.href},ft=function(m){return/^file:/.test(m)||/^file:/.test(It())&&!/^\w+:/.test(m)};function jt(m,y){var I=new f.AbortController,U=new f.Request(m.url,{method:m.method||"GET",body:m.body,credentials:m.credentials,headers:m.headers,referrer:It(),signal:I.signal}),J=!1,ne=!1,fe=St(U.url);m.type==="json"&&U.headers.set("Accept","application/json");var Fe=function(st,mt,Xt){if(!ne){if(st&&st.message!=="SecurityError"&&re(st),mt&&Xt)return Qe(mt);var ur=Date.now();f.fetch(U).then(function(nr){if(nr.ok){var Lr=fe?nr.clone():null;return Qe(nr,Lr,ur)}else return y(new Wn(nr.statusText,nr.status,m.url))}).catch(function(nr){nr.code!==20&&y(new Error(nr.message))})}},Qe=function(st,mt,Xt){(m.type==="arrayBuffer"?st.arrayBuffer():m.type==="json"?st.json():st.text()).then(function(ur){ne||(mt&&Xt&&ar(U,mt,Xt),J=!0,y(null,ur,st.headers.get("Cache-Control"),st.headers.get("Expires")))}).catch(function(ur){ne||y(new Error(ur.message))})};return fe?ai(U,Fe):Fe(null,null),{cancel:function(){ne=!0,J||I.abort()}}}function Zt(m,y){var I=new f.XMLHttpRequest;I.open(m.method||"GET",m.url,!0),m.type==="arrayBuffer"&&(I.responseType="arraybuffer");for(var U in m.headers)I.setRequestHeader(U,m.headers[U]);return m.type==="json"&&(I.responseType="text",I.setRequestHeader("Accept","application/json")),I.withCredentials=m.credentials==="include",I.onerror=function(){y(new Error(I.statusText))},I.onload=function(){if((I.status>=200&&I.status<300||I.status===0)&&I.response!==null){var J=I.response;if(m.type==="json")try{J=JSON.parse(I.response)}catch(ne){return y(ne)}y(null,J,I.getResponseHeader("Cache-Control"),I.getResponseHeader("Expires"))}else y(new Wn(I.statusText,I.status,m.url))},I.send(m.body),{cancel:function(){return I.abort()}}}var yr=function(m,y){if(!ft(m.url)){if(f.fetch&&f.Request&&f.AbortController&&f.Request.prototype.hasOwnProperty("signal"))return jt(m,y);if(ke()&&self.worker&&self.worker.actor){var I=!0;return self.worker.actor.send("getResource",m,y,void 0,I)}}return Zt(m,y)},Fr=function(m,y){return yr(_(m,{type:"json"}),y)},Zr=function(m,y){return yr(_(m,{type:"arrayBuffer"}),y)},Vr=function(m,y){return yr(_(m,{method:"POST"}),y)};function gi(m){var y=f.document.createElement("a");return y.href=m,y.protocol===f.document.location.protocol&&y.host===f.document.location.host}var Si="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function Mi(m,y,I,U){var J=new f.Image,ne=f.URL;J.onload=function(){y(null,J),ne.revokeObjectURL(J.src),J.onload=null,f.requestAnimationFrame(function(){J.src=Si})},J.onerror=function(){return y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var fe=new f.Blob([new Uint8Array(m)],{type:"image/png"});J.cacheControl=I,J.expires=U,J.src=m.byteLength?ne.createObjectURL(fe):Si}function Pi(m,y){var I=new f.Blob([new Uint8Array(m)],{type:"image/png"});f.createImageBitmap(I).then(function(U){y(null,U)}).catch(function(U){y(new Error("Could not load image because of "+U.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var Gi,Ki,ka=function(){Gi=[],Ki=0};ka();var jn=function(m,y){if(qt.supported&&(m.headers||(m.headers={}),m.headers.accept="image/webp,*/*"),Ki>=ct.MAX_PARALLEL_IMAGE_REQUESTS){var I={requestParameters:m,callback:y,cancelled:!1,cancel:function(){this.cancelled=!0}};return Gi.push(I),I}Ki++;var U=!1,J=function(){if(!U)for(U=!0,Ki--;Gi.length&&Ki<ct.MAX_PARALLEL_IMAGE_REQUESTS;){var fe=Gi.shift(),Fe=fe.requestParameters,Qe=fe.callback,st=fe.cancelled;st||(fe.cancel=jn(Fe,Qe).cancel)}},ne=Zr(m,function(fe,Fe,Qe,st){J(),fe?y(fe):Fe&&($i()?Pi(Fe,y):Mi(Fe,y,Qe,st))});return{cancel:function(){ne.cancel(),J()}}},la=function(m,y){var I=f.document.createElement("video");I.muted=!0,I.onloadstart=function(){y(null,I)};for(var U=0;U<m.length;U++){var J=f.document.createElement("source");gi(m[U])||(I.crossOrigin="Anonymous"),J.src=m[U],I.appendChild(J)}return{cancel:function(){}}};function Fa(m,y,I){var U=I[m]&&I[m].indexOf(y)!==-1;U||(I[m]=I[m]||[],I[m].push(y))}function Ra(m,y,I){if(I&&I[m]){var U=I[m].indexOf(y);U!==-1&&I[m].splice(U,1)}}var jo=function(y,I){I===void 0&&(I={}),_(this,I),this.type=y},oa=function(m){function y(I,U){U===void 0&&(U={}),m.call(this,"error",_({error:I},U))}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(jo),Sn=function(){};Sn.prototype.on=function(y,I){return this._listeners=this._listeners||{},Fa(y,I,this._listeners),this},Sn.prototype.off=function(y,I){return Ra(y,I,this._listeners),Ra(y,I,this._oneTimeListeners),this},Sn.prototype.once=function(y,I){return this._oneTimeListeners=this._oneTimeListeners||{},Fa(y,I,this._oneTimeListeners),this},Sn.prototype.fire=function(y,I){typeof y=="string"&&(y=new jo(y,I||{}));var U=y.type;if(this.listens(U)){y.target=this;for(var J=this._listeners&&this._listeners[U]?this._listeners[U].slice():[],ne=0,fe=J;ne<fe.length;ne+=1){var Fe=fe[ne];Fe.call(this,y)}for(var Qe=this._oneTimeListeners&&this._oneTimeListeners[U]?this._oneTimeListeners[U].slice():[],st=0,mt=Qe;st<mt.length;st+=1){var Xt=mt[st];Ra(U,Xt,this._oneTimeListeners),Xt.call(this,y)}var ur=this._eventedParent;ur&&(_(y,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),ur.fire(y))}else y instanceof oa&&console.error(y.error);return this},Sn.prototype.listens=function(y){return this._listeners&&this._listeners[y]&&this._listeners[y].length>0||this._oneTimeListeners&&this._oneTimeListeners[y]&&this._oneTimeListeners[y].length>0||this._eventedParent&&this._eventedParent.listens(y)},Sn.prototype.setEventedParent=function(y,I){return this._eventedParent=y,this._eventedParentData=I,this};var Ha=8,oo={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"}},xn={"*":{type:"source"}},_t=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],br={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},Hr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},ti={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},zi={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Yi={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"}}},an={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"}}},hi={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"}},Ji=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],ua={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Fn={"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"}},Sa={"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"}},go={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Oo={"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"}},ho={"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"}},Mo={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},xo={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},zs={type:"array",value:"*"},ks={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},Zs={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},Xs={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},wl={type:"array",value:"*",minimum:1},os={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}},cl=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],Cs={"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},ml={"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},Ys={"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"}},Hs={"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"}},Eo={"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"}},fs={"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"}},Ql={"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"}},Hu={"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"}},fc={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},ms={"*":{type:"string"}},on={$version:Ha,$root:oo,sources:xn,source:_t,source_vector:br,source_raster:Hr,source_raster_dem:ti,source_geojson:zi,source_video:Yi,source_image:an,layer:hi,layout:Ji,layout_background:ua,layout_fill:Fn,layout_circle:Sa,layout_heatmap:go,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:Oo,layout_symbol:ho,layout_raster:Mo,layout_hillshade:xo,filter:zs,filter_operator:ks,geometry_type:Zs,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:Xs,expression:wl,light:os,paint:cl,paint_fill:Cs,"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:ml,paint_circle:Ys,paint_heatmap:Hs,paint_symbol:Eo,paint_raster:fs,paint_hillshade:Ql,paint_background:Hu,transition:fc,"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:ms},fa=function(y,I,U,J){this.message=(y?y+": ":"")+U,J&&(this.identifier=J),I!=null&&I.__line__&&(this.line=I.__line__)};function Qu(m){var y=m.key,I=m.value;return I?[new fa(y,I,"constants have been deprecated as of v8")]:[]}function Rl(m){for(var y=[],I=arguments.length-1;I-- >0;)y[I]=arguments[I+1];for(var U=0,J=y;U<J.length;U+=1){var ne=J[U];for(var fe in ne)m[fe]=ne[fe]}return m}function vo(m){return m instanceof Number||m instanceof String||m instanceof Boolean?m.valueOf():m}function Zl(m){if(Array.isArray(m))return m.map(Zl);if(m instanceof Object&&!(m instanceof Number||m instanceof String||m instanceof Boolean)){var y={};for(var I in m)y[I]=Zl(m[I]);return y}return vo(m)}var Ks=function(m){function y(I,U){m.call(this,U),this.message=U,this.key=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(Error),Xl=function(y,I){I===void 0&&(I=[]),this.parent=y,this.bindings={};for(var U=0,J=I;U<J.length;U+=1){var ne=J[U],fe=ne[0],Fe=ne[1];this.bindings[fe]=Fe}};Xl.prototype.concat=function(y){return new Xl(this,y)},Xl.prototype.get=function(y){if(this.bindings[y])return this.bindings[y];if(this.parent)return this.parent.get(y);throw new Error(y+" not found in scope.")},Xl.prototype.has=function(y){return this.bindings[y]?!0:this.parent?this.parent.has(y):!1};var Ec={kind:"null"},Zn={kind:"number"},ko={kind:"string"},Co={kind:"boolean"},Tl={kind:"color"},uf={kind:"object"},So={kind:"value"},cf={kind:"error"},rh={kind:"collator"},Al={kind:"formatted"},Hc={kind:"resolvedImage"};function eu(m,y){return{kind:"array",itemType:m,N:y}}function Ls(m){if(m.kind==="array"){var y=Ls(m.itemType);return typeof m.N=="number"?"array<"+y+", "+m.N+">":m.itemType.kind==="value"?"array":"array<"+y+">"}else return m.kind}var mu=[Ec,Zn,ko,Co,Tl,Al,uf,eu(So),Hc];function kc(m,y){if(y.kind==="error")return null;if(m.kind==="array"){if(y.kind==="array"&&(y.N===0&&y.itemType.kind==="value"||!kc(m.itemType,y.itemType))&&(typeof m.N!="number"||m.N===y.N))return null}else{if(m.kind===y.kind)return null;if(m.kind==="value")for(var I=0,U=mu;I<U.length;I+=1){var J=U[I];if(!kc(J,y))return null}}return"Expected "+Ls(m)+" but found "+Ls(y)+" instead."}function Of(m,y){return y.some(function(I){return I.kind===m.kind})}function Gc(m,y){return y.some(function(I){return I==="null"?m===null:I==="array"?Array.isArray(m):I==="object"?m&&!Array.isArray(m)&&typeof m=="object":I===typeof m})}var vd=a(function(m,y){var I={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function U(st){return st=Math.round(st),st<0?0:st>255?255:st}function J(st){return st<0?0:st>1?1:st}function ne(st){return st[st.length-1]==="%"?U(parseFloat(st)/100*255):U(parseInt(st))}function fe(st){return st[st.length-1]==="%"?J(parseFloat(st)/100):J(parseFloat(st))}function Fe(st,mt,Xt){return Xt<0?Xt+=1:Xt>1&&(Xt-=1),Xt*6<1?st+(mt-st)*Xt*6:Xt*2<1?mt:Xt*3<2?st+(mt-st)*(2/3-Xt)*6:st}function Qe(st){var mt=st.replace(/ /g,"").toLowerCase();if(mt in I)return I[mt].slice();if(mt[0]==="#"){if(mt.length===4){var Xt=parseInt(mt.substr(1),16);return Xt>=0&&Xt<=4095?[(Xt&3840)>>4|(Xt&3840)>>8,Xt&240|(Xt&240)>>4,Xt&15|(Xt&15)<<4,1]:null}else if(mt.length===7){var Xt=parseInt(mt.substr(1),16);return Xt>=0&&Xt<=16777215?[(Xt&16711680)>>16,(Xt&65280)>>8,Xt&255,1]:null}return null}var ur=mt.indexOf("("),nr=mt.indexOf(")");if(ur!==-1&&nr+1===mt.length){var Lr=mt.substr(0,ur),Yr=mt.substr(ur+1,nr-(ur+1)).split(","),_i=1;switch(Lr){case"rgba":if(Yr.length!==4)return null;_i=fe(Yr.pop());case"rgb":return Yr.length!==3?null:[ne(Yr[0]),ne(Yr[1]),ne(Yr[2]),_i];case"hsla":if(Yr.length!==4)return null;_i=fe(Yr.pop());case"hsl":if(Yr.length!==3)return null;var si=(parseFloat(Yr[0])%360+360)%360/360,Hi=fe(Yr[1]),Ei=fe(Yr[2]),Vi=Ei<=.5?Ei*(Hi+1):Ei+Hi-Ei*Hi,en=Ei*2-Vi;return[U(Fe(en,Vi,si+1/3)*255),U(Fe(en,Vi,si)*255),U(Fe(en,Vi,si-1/3)*255),_i];default:return null}}return null}try{y.parseCSSColor=Qe}catch(st){}}),Bf=vd.parseCSSColor,ss=function(y,I,U,J){J===void 0&&(J=1),this.r=y,this.g=I,this.b=U,this.a=J};ss.parse=function(y){if(y){if(y instanceof ss)return y;if(typeof y=="string"){var I=Bf(y);if(I)return new ss(I[0]/255*I[3],I[1]/255*I[3],I[2]/255*I[3],I[3])}}},ss.prototype.toString=function(){var y=this.toArray(),I=y[0],U=y[1],J=y[2],ne=y[3];return"rgba("+Math.round(I)+","+Math.round(U)+","+Math.round(J)+","+ne+")"},ss.prototype.toArray=function(){var y=this,I=y.r,U=y.g,J=y.b,ne=y.a;return ne===0?[0,0,0,0]:[I*255/ne,U*255/ne,J*255/ne,ne]},ss.black=new ss(0,0,0,1),ss.white=new ss(1,1,1,1),ss.transparent=new ss(0,0,0,0),ss.red=new ss(1,0,0,1);var ff=function(y,I,U){y?this.sensitivity=I?"variant":"case":this.sensitivity=I?"accent":"base",this.locale=U,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};ff.prototype.compare=function(y,I){return this.collator.compare(y,I)},ff.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var ih=function(y,I,U,J,ne){this.text=y,this.image=I,this.scale=U,this.fontStack=J,this.textColor=ne},Vl=function(y){this.sections=y};Vl.fromString=function(y){return new Vl([new ih(y,null,null,null,null)])},Vl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(y){return y.text.length!==0||y.image&&y.image.name.length!==0})},Vl.factory=function(y){return y instanceof Vl?y:Vl.fromString(y)},Vl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(y){return y.text}).join("")},Vl.prototype.serialize=function(){for(var y=["format"],I=0,U=this.sections;I<U.length;I+=1){var J=U[I];if(J.image){y.push(["image",J.image.name]);continue}y.push(J.text);var ne={};J.fontStack&&(ne["text-font"]=["literal",J.fontStack.split(",")]),J.scale&&(ne["font-scale"]=J.scale),J.textColor&&(ne["text-color"]=["rgba"].concat(J.textColor.toArray())),y.push(ne)}return y};var Js=function(y){this.name=y.name,this.available=y.available};Js.prototype.toString=function(){return this.name},Js.fromString=function(y){return y?new Js({name:y,available:!1}):null},Js.prototype.serialize=function(){return["image",this.name]};function hc(m,y,I,U){if(!(typeof m=="number"&&m>=0&&m<=255&&typeof y=="number"&&y>=0&&y<=255&&typeof I=="number"&&I>=0&&I<=255)){var J=typeof U=="number"?[m,y,I,U]:[m,y,I];return"Invalid rgba value ["+J.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof U=="undefined"||typeof U=="number"&&U>=0&&U<=1?null:"Invalid rgba value ["+[m,y,I,U].join(", ")+"]: 'a' must be between 0 and 1."}function Cc(m){if(m===null)return!0;if(typeof m=="string")return!0;if(typeof m=="boolean")return!0;if(typeof m=="number")return!0;if(m instanceof ss)return!0;if(m instanceof ff)return!0;if(m instanceof Vl)return!0;if(m instanceof Js)return!0;if(Array.isArray(m)){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(!Cc(U))return!1}return!0}else if(typeof m=="object"){for(var J in m)if(!Cc(m[J]))return!1;return!0}else return!1}function ws(m){if(m===null)return Ec;if(typeof m=="string")return ko;if(typeof m=="boolean")return Co;if(typeof m=="number")return Zn;if(m instanceof ss)return Tl;if(m instanceof ff)return rh;if(m instanceof Vl)return Al;if(m instanceof Js)return Hc;if(Array.isArray(m)){for(var y=m.length,I,U=0,J=m;U<J.length;U+=1){var ne=J[U],fe=ws(ne);if(!I)I=fe;else{if(I===fe)continue;I=So;break}}return eu(I||So,y)}else return uf}function $s(m){var y=typeof m;return m===null?"":y==="string"||y==="number"||y==="boolean"?String(m):m instanceof ss||m instanceof Vl||m instanceof Js?m.toString():JSON.stringify(m)}var hs=function(y,I){this.type=y,this.value=I};hs.parse=function(y,I){if(y.length!==2)return I.error("'literal' expression requires exactly one argument, but found "+(y.length-1)+" instead.");if(!Cc(y[1]))return I.error("invalid value");var U=y[1],J=ws(U),ne=I.expectedType;return J.kind==="array"&&J.N===0&&ne&&ne.kind==="array"&&(typeof ne.N!="number"||ne.N===0)&&(J=ne),new hs(J,U)},hs.prototype.evaluate=function(){return this.value},hs.prototype.eachChild=function(){},hs.prototype.outputDefined=function(){return!0},hs.prototype.serialize=function(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof ss?["rgba"].concat(this.value.toArray()):this.value instanceof Vl?this.value.serialize():this.value};var Ms=function(y){this.name="ExpressionEvaluationError",this.message=y};Ms.prototype.toJSON=function(){return this.message};var dc={string:ko,number:Zn,boolean:Co,object:uf},Sl=function(y,I){this.type=y,this.args=I};Sl.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=1,J,ne=y[0];if(ne==="array"){var fe;if(y.length>2){var Fe=y[1];if(typeof Fe!="string"||!(Fe in dc)||Fe==="object")return I.error('The item type argument of "array" must be one of string, number, boolean',1);fe=dc[Fe],U++}else fe=So;var Qe;if(y.length>3){if(y[2]!==null&&(typeof y[2]!="number"||y[2]<0||y[2]!==Math.floor(y[2])))return I.error('The length argument to "array" must be a positive integer literal',2);Qe=y[2],U++}J=eu(fe,Qe)}else J=dc[ne];for(var st=[];U<y.length;U++){var mt=I.parse(y[U],U,So);if(!mt)return null;st.push(mt)}return new Sl(J,st)},Sl.prototype.evaluate=function(y){for(var I=0;I<this.args.length;I++){var U=this.args[I].evaluate(y),J=kc(this.type,ws(U));if(J){if(I===this.args.length-1)throw new Ms("Expected value to be of type "+Ls(this.type)+", but found "+Ls(ws(U))+" instead.")}else return U}return null},Sl.prototype.eachChild=function(y){this.args.forEach(y)},Sl.prototype.outputDefined=function(){return this.args.every(function(y){return y.outputDefined()})},Sl.prototype.serialize=function(){var y=this.type,I=[y.kind];if(y.kind==="array"){var U=y.itemType;if(U.kind==="string"||U.kind==="number"||U.kind==="boolean"){I.push(U.kind);var J=y.N;(typeof J=="number"||this.args.length>1)&&I.push(J)}}return I.concat(this.args.map(function(ne){return ne.serialize()}))};var ec=function(y){this.type=Al,this.sections=y};ec.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[1];if(!Array.isArray(U)&&typeof U=="object")return I.error("First argument must be an image or text section.");for(var J=[],ne=!1,fe=1;fe<=y.length-1;++fe){var Fe=y[fe];if(ne&&typeof Fe=="object"&&!Array.isArray(Fe)){ne=!1;var Qe=null;if(Fe["font-scale"]&&(Qe=I.parse(Fe["font-scale"],1,Zn),!Qe))return null;var st=null;if(Fe["text-font"]&&(st=I.parse(Fe["text-font"],1,eu(ko)),!st))return null;var mt=null;if(Fe["text-color"]&&(mt=I.parse(Fe["text-color"],1,Tl),!mt))return null;var Xt=J[J.length-1];Xt.scale=Qe,Xt.font=st,Xt.textColor=mt}else{var ur=I.parse(y[fe],1,So);if(!ur)return null;var nr=ur.type.kind;if(nr!=="string"&&nr!=="value"&&nr!=="null"&&nr!=="resolvedImage")return I.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ne=!0,J.push({content:ur,scale:null,font:null,textColor:null})}}return new ec(J)},ec.prototype.evaluate=function(y){var I=function(U){var J=U.content.evaluate(y);return ws(J)===Hc?new ih("",J,null,null,null):new ih($s(J),null,U.scale?U.scale.evaluate(y):null,U.font?U.font.evaluate(y).join(","):null,U.textColor?U.textColor.evaluate(y):null)};return new Vl(this.sections.map(I))},ec.prototype.eachChild=function(y){for(var I=0,U=this.sections;I<U.length;I+=1){var J=U[I];y(J.content),J.scale&&y(J.scale),J.font&&y(J.font),J.textColor&&y(J.textColor)}},ec.prototype.outputDefined=function(){return!1},ec.prototype.serialize=function(){for(var y=["format"],I=0,U=this.sections;I<U.length;I+=1){var J=U[I];y.push(J.content.serialize());var ne={};J.scale&&(ne["font-scale"]=J.scale.serialize()),J.font&&(ne["text-font"]=J.font.serialize()),J.textColor&&(ne["text-color"]=J.textColor.serialize()),y.push(ne)}return y};var Ps=function(y){this.type=Hc,this.input=y};Ps.parse=function(y,I){if(y.length!==2)return I.error("Expected two arguments.");var U=I.parse(y[1],1,ko);return U?new Ps(U):I.error("No image name provided.")},Ps.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=Js.fromString(I);return U&&y.availableImages&&(U.available=y.availableImages.indexOf(I)>-1),U},Ps.prototype.eachChild=function(y){y(this.input)},Ps.prototype.outputDefined=function(){return!1},Ps.prototype.serialize=function(){return["image",this.input.serialize()]};var ov={"to-boolean":Co,"to-color":Tl,"to-number":Zn,"to-string":ko},wo=function(y,I){this.type=y,this.args=I};wo.parse=function(y,I){if(y.length<2)return I.error("Expected at least one argument.");var U=y[0];if((U==="to-boolean"||U==="to-string")&&y.length!==2)return I.error("Expected one argument.");for(var J=ov[U],ne=[],fe=1;fe<y.length;fe++){var Fe=I.parse(y[fe],fe,So);if(!Fe)return null;ne.push(Fe)}return new wo(J,ne)},wo.prototype.evaluate=function(y){if(this.type.kind==="boolean")return!!this.args[0].evaluate(y);if(this.type.kind==="color"){for(var I,U,J=0,ne=this.args;J<ne.length;J+=1){var fe=ne[J];if(I=fe.evaluate(y),U=null,I instanceof ss)return I;if(typeof I=="string"){var Fe=y.parseColor(I);if(Fe)return Fe}else if(Array.isArray(I)&&(I.length<3||I.length>4?U="Invalid rbga value "+JSON.stringify(I)+": expected an array containing either three or four numeric values.":U=hc(I[0],I[1],I[2],I[3]),!U))return new ss(I[0]/255,I[1]/255,I[2]/255,I[3])}throw new Ms(U||"Could not parse color from value '"+(typeof I=="string"?I:String(JSON.stringify(I)))+"'")}else if(this.type.kind==="number"){for(var Qe=null,st=0,mt=this.args;st<mt.length;st+=1){var Xt=mt[st];if(Qe=Xt.evaluate(y),Qe===null)return 0;var ur=Number(Qe);if(!isNaN(ur))return ur}throw new Ms("Could not convert "+JSON.stringify(Qe)+" to number.")}else return this.type.kind==="formatted"?Vl.fromString($s(this.args[0].evaluate(y))):this.type.kind==="resolvedImage"?Js.fromString($s(this.args[0].evaluate(y))):$s(this.args[0].evaluate(y))},wo.prototype.eachChild=function(y){this.args.forEach(y)},wo.prototype.outputDefined=function(){return this.args.every(function(y){return y.outputDefined()})},wo.prototype.serialize=function(){if(this.type.kind==="formatted")return new ec([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new Ps(this.args[0]).serialize();var y=["to-"+this.type.kind];return this.eachChild(function(I){y.push(I.serialize())}),y};var Od=["Unknown","Point","LineString","Polygon"],$o=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};$o.prototype.id=function(){return this.feature&&"id"in this.feature?this.feature.id:null},$o.prototype.geometryType=function(){return this.feature?typeof this.feature.type=="number"?Od[this.feature.type]:this.feature.type:null},$o.prototype.geometry=function(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null},$o.prototype.canonicalID=function(){return this.canonical},$o.prototype.properties=function(){return this.feature&&this.feature.properties||{}},$o.prototype.parseColor=function(y){var I=this._parseColorCache[y];return I||(I=this._parseColorCache[y]=ss.parse(y)),I};var Ja=function(y,I,U,J){this.name=y,this.type=I,this._evaluate=U,this.args=J};Ja.prototype.evaluate=function(y){return this._evaluate(y,this.args)},Ja.prototype.eachChild=function(y){this.args.forEach(y)},Ja.prototype.outputDefined=function(){return!1},Ja.prototype.serialize=function(){return[this.name].concat(this.args.map(function(y){return y.serialize()}))},Ja.parse=function(y,I){var U,J=y[0],ne=Ja.definitions[J];if(!ne)return I.error('Unknown expression "'+J+'". If you wanted a literal array, use ["literal", [...]].',0);for(var fe=Array.isArray(ne)?ne[0]:ne.type,Fe=Array.isArray(ne)?[[ne[1],ne[2]]]:ne.overloads,Qe=Fe.filter(function(Na){var ja=Na[0];return!Array.isArray(ja)||ja.length===y.length-1}),st=null,mt=0,Xt=Qe;mt<Xt.length;mt+=1){var ur=Xt[mt],nr=ur[0],Lr=ur[1];st=new fl(I.registry,I.path,null,I.scope);for(var Yr=[],_i=!1,si=1;si<y.length;si++){var Hi=y[si],Ei=Array.isArray(nr)?nr[si-1]:nr.type,Vi=st.parse(Hi,1+Yr.length,Ei);if(!Vi){_i=!0;break}Yr.push(Vi)}if(!_i){if(Array.isArray(nr)&&nr.length!==Yr.length){st.error("Expected "+nr.length+" arguments, but found "+Yr.length+" instead.");continue}for(var en=0;en<Yr.length;en++){var An=Array.isArray(nr)?nr[en]:nr.type,ra=Yr[en];st.concat(en+1).checkSubtype(An,ra.type)}if(st.errors.length===0)return new Ja(J,fe,Lr,Yr)}}if(Qe.length===1)(U=I.errors).push.apply(U,st.errors);else{for(var $n=Qe.length?Qe:Fe,Ba=$n.map(function(Na){var ja=Na[0];return Ef(ja)}).join(" | "),_a=[],Pa=1;Pa<y.length;Pa++){var qo=I.parse(y[Pa],1+_a.length);if(!qo)return null;_a.push(Ls(qo.type))}I.error("Expected arguments of type "+Ba+", but found ("+_a.join(", ")+") instead.")}return null},Ja.register=function(y,I){Ja.definitions=I;for(var U in I)y[U]=Ja};function Ef(m){return Array.isArray(m)?"("+m.map(Ls).join(", ")+")":"("+Ls(m.type)+"...)"}var tc=function(y,I,U){this.type=rh,this.locale=U,this.caseSensitive=y,this.diacriticSensitive=I};tc.parse=function(y,I){if(y.length!==2)return I.error("Expected one argument.");var U=y[1];if(typeof U!="object"||Array.isArray(U))return I.error("Collator options argument must be an object.");var J=I.parse(U["case-sensitive"]===void 0?!1:U["case-sensitive"],1,Co);if(!J)return null;var ne=I.parse(U["diacritic-sensitive"]===void 0?!1:U["diacritic-sensitive"],1,Co);if(!ne)return null;var fe=null;return U.locale&&(fe=I.parse(U.locale,1,ko),!fe)?null:new tc(J,ne,fe)},tc.prototype.evaluate=function(y){return new ff(this.caseSensitive.evaluate(y),this.diacriticSensitive.evaluate(y),this.locale?this.locale.evaluate(y):null)},tc.prototype.eachChild=function(y){y(this.caseSensitive),y(this.diacriticSensitive),this.locale&&y(this.locale)},tc.prototype.outputDefined=function(){return!1},tc.prototype.serialize=function(){var y={};return y["case-sensitive"]=this.caseSensitive.serialize(),y["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(y.locale=this.locale.serialize()),["collator",y]};var uu=8192;function Mh(m,y){m[0]=Math.min(m[0],y[0]),m[1]=Math.min(m[1],y[1]),m[2]=Math.max(m[2],y[0]),m[3]=Math.max(m[3],y[1])}function jc(m){return(180+m)/360}function kf(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function Ml(m,y){return!(m[0]<=y[0]||m[2]>=y[2]||m[1]<=y[1]||m[3]>=y[3])}function Yh(m,y){var I=jc(m[0]),U=kf(m[1]),J=Math.pow(2,y.z);return[Math.round(I*J*uu),Math.round(U*J*uu)]}function Eh(m,y,I){var U=m[0]-y[0],J=m[1]-y[1],ne=m[0]-I[0],fe=m[1]-I[1];return U*fe-ne*J===0&&U*ne<=0&&J*fe<=0}function nh(m,y,I){return y[1]>m[1]!=I[1]>m[1]&&m[0]<(I[0]-y[0])*(m[1]-y[1])/(I[1]-y[1])+y[0]}function hf(m,y){for(var I=!1,U=0,J=y.length;U<J;U++)for(var ne=y[U],fe=0,Fe=ne.length;fe<Fe-1;fe++){if(Eh(m,ne[fe],ne[fe+1]))return!1;nh(m,ne[fe],ne[fe+1])&&(I=!I)}return I}function kh(m,y){for(var I=0;I<y.length;I++)if(hf(m,y[I]))return!0;return!1}function Kh(m,y){return m[0]*y[1]-m[1]*y[0]}function rc(m,y,I,U){var J=m[0]-I[0],ne=m[1]-I[1],fe=y[0]-I[0],Fe=y[1]-I[1],Qe=U[0]-I[0],st=U[1]-I[1],mt=J*st-Qe*ne,Xt=fe*st-Qe*Fe;return mt>0&&Xt<0||mt<0&&Xt>0}function ah(m,y,I,U){var J=[y[0]-m[0],y[1]-m[1]],ne=[U[0]-I[0],U[1]-I[1]];return Kh(ne,J)===0?!1:!!(rc(m,y,I,U)&&rc(I,U,m,y))}function Wc(m,y,I){for(var U=0,J=I;U<J.length;U+=1)for(var ne=J[U],fe=0;fe<ne.length-1;++fe)if(ah(m,y,ne[fe],ne[fe+1]))return!0;return!1}function df(m,y){for(var I=0;I<m.length;++I)if(!hf(m[I],y))return!1;for(var U=0;U<m.length-1;++U)if(Wc(m[U],m[U+1],y))return!1;return!0}function Cu(m,y){for(var I=0;I<y.length;I++)if(df(m,y[I]))return!0;return!1}function Nf(m,y,I){for(var U=[],J=0;J<m.length;J++){for(var ne=[],fe=0;fe<m[J].length;fe++){var Fe=Yh(m[J][fe],I);Mh(y,Fe),ne.push(Fe)}U.push(ne)}return U}function Zc(m,y,I){for(var U=[],J=0;J<m.length;J++){var ne=Nf(m[J],y,I);U.push(ne)}return U}function ds(m,y,I,U){if(m[0]<I[0]||m[0]>I[2]){var J=U*.5,ne=m[0]-I[0]>J?-U:I[0]-m[0]>J?U:0;ne===0&&(ne=m[0]-I[2]>J?-U:I[2]-m[0]>J?U:0),m[0]+=ne}Mh(y,m)}function Ch(m){m[0]=m[1]=1/0,m[2]=m[3]=-1/0}function Bd(m,y,I,U){for(var J=Math.pow(2,U.z)*uu,ne=[U.x*uu,U.y*uu],fe=[],Fe=0,Qe=m;Fe<Qe.length;Fe+=1)for(var st=Qe[Fe],mt=0,Xt=st;mt<Xt.length;mt+=1){var ur=Xt[mt],nr=[ur.x+ne[0],ur.y+ne[1]];ds(nr,y,I,J),fe.push(nr)}return fe}function Jh(m,y,I,U){for(var J=Math.pow(2,U.z)*uu,ne=[U.x*uu,U.y*uu],fe=[],Fe=0,Qe=m;Fe<Qe.length;Fe+=1){for(var st=Qe[Fe],mt=[],Xt=0,ur=st;Xt<ur.length;Xt+=1){var nr=ur[Xt],Lr=[nr.x+ne[0],nr.y+ne[1]];Mh(y,Lr),mt.push(Lr)}fe.push(mt)}if(y[2]-y[0]<=J/2){Ch(y);for(var Yr=0,_i=fe;Yr<_i.length;Yr+=1)for(var si=_i[Yr],Hi=0,Ei=si;Hi<Ei.length;Hi+=1){var Vi=Ei[Hi];ds(Vi,y,I,J)}}return fe}function Cf(m,y){var I=[1/0,1/0,-1/0,-1/0],U=[1/0,1/0,-1/0,-1/0],J=m.canonicalID();if(y.type==="Polygon"){var ne=Nf(y.coordinates,U,J),fe=Bd(m.geometry(),I,U,J);if(!Ml(I,U))return!1;for(var Fe=0,Qe=fe;Fe<Qe.length;Fe+=1){var st=Qe[Fe];if(!hf(st,ne))return!1}}if(y.type==="MultiPolygon"){var mt=Zc(y.coordinates,U,J),Xt=Bd(m.geometry(),I,U,J);if(!Ml(I,U))return!1;for(var ur=0,nr=Xt;ur<nr.length;ur+=1){var Lr=nr[ur];if(!kh(Lr,mt))return!1}}return!0}function pd(m,y){var I=[1/0,1/0,-1/0,-1/0],U=[1/0,1/0,-1/0,-1/0],J=m.canonicalID();if(y.type==="Polygon"){var ne=Nf(y.coordinates,U,J),fe=Jh(m.geometry(),I,U,J);if(!Ml(I,U))return!1;for(var Fe=0,Qe=fe;Fe<Qe.length;Fe+=1){var st=Qe[Fe];if(!df(st,ne))return!1}}if(y.type==="MultiPolygon"){var mt=Zc(y.coordinates,U,J),Xt=Jh(m.geometry(),I,U,J);if(!Ml(I,U))return!1;for(var ur=0,nr=Xt;ur<nr.length;ur+=1){var Lr=nr[ur];if(!Cu(Lr,mt))return!1}}return!0}var Lu=function(y,I){this.type=Co,this.geojson=y,this.geometries=I};Lu.parse=function(y,I){if(y.length!==2)return I.error("'within' expression requires exactly one argument, but found "+(y.length-1)+" instead.");if(Cc(y[1])){var U=y[1];if(U.type==="FeatureCollection")for(var J=0;J<U.features.length;++J){var ne=U.features[J].geometry.type;if(ne==="Polygon"||ne==="MultiPolygon")return new Lu(U,U.features[J].geometry)}else if(U.type==="Feature"){var fe=U.geometry.type;if(fe==="Polygon"||fe==="MultiPolygon")return new Lu(U,U.geometry)}else if(U.type==="Polygon"||U.type==="MultiPolygon")return new Lu(U,U)}return I.error("'within' expression requires valid geojson object that contains polygon geometry type.")},Lu.prototype.evaluate=function(y){if(y.geometry()!=null&&y.canonicalID()!=null){if(y.geometryType()==="Point")return Cf(y,this.geometries);if(y.geometryType()==="LineString")return pd(y,this.geometries)}return!1},Lu.prototype.eachChild=function(){},Lu.prototype.outputDefined=function(){return!0},Lu.prototype.serialize=function(){return["within",this.geojson]};function $h(m){if(m instanceof Ja){if(m.name==="get"&&m.args.length===1)return!1;if(m.name==="feature-state")return!1;if(m.name==="has"&&m.args.length===1)return!1;if(m.name==="properties"||m.name==="geometry-type"||m.name==="id")return!1;if(/^filter-/.test(m.name))return!1}if(m instanceof Lu)return!1;var y=!0;return m.eachChild(function(I){y&&!$h(I)&&(y=!1)}),y}function tu(m){if(m instanceof Ja&&m.name==="feature-state")return!1;var y=!0;return m.eachChild(function(I){y&&!tu(I)&&(y=!1)}),y}function Pu(m,y){if(m instanceof Ja&&y.indexOf(m.name)>=0)return!1;var I=!0;return m.eachChild(function(U){I&&!Pu(U,y)&&(I=!1)}),I}var Lc=function(y,I){this.type=I.type,this.name=y,this.boundExpression=I};Lc.parse=function(y,I){if(y.length!==2||typeof y[1]!="string")return I.error("'var' expression requires exactly one string literal argument.");var U=y[1];return I.scope.has(U)?new Lc(U,I.scope.get(U)):I.error('Unknown variable "'+U+'". Make sure "'+U+'" has been bound in an enclosing "let" expression before using it.',1)},Lc.prototype.evaluate=function(y){return this.boundExpression.evaluate(y)},Lc.prototype.eachChild=function(){},Lc.prototype.outputDefined=function(){return!1},Lc.prototype.serialize=function(){return["var",this.name]};var fl=function(y,I,U,J,ne){I===void 0&&(I=[]),J===void 0&&(J=new Xl),ne===void 0&&(ne=[]),this.registry=y,this.path=I,this.key=I.map(function(fe){return"["+fe+"]"}).join(""),this.scope=J,this.errors=ne,this.expectedType=U};fl.prototype.parse=function(y,I,U,J,ne){return ne===void 0&&(ne={}),I?this.concat(I,U,J)._parse(y,ne):this._parse(y,ne)},fl.prototype._parse=function(y,I){(y===null||typeof y=="string"||typeof y=="boolean"||typeof y=="number")&&(y=["literal",y]);function U(mt,Xt,ur){return ur==="assert"?new Sl(Xt,[mt]):ur==="coerce"?new wo(Xt,[mt]):mt}if(Array.isArray(y)){if(y.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var J=y[0];if(typeof J!="string")return this.error("Expression name must be a string, but found "+typeof J+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var ne=this.registry[J];if(ne){var fe=ne.parse(y,this);if(!fe)return null;if(this.expectedType){var Fe=this.expectedType,Qe=fe.type;if((Fe.kind==="string"||Fe.kind==="number"||Fe.kind==="boolean"||Fe.kind==="object"||Fe.kind==="array")&&Qe.kind==="value")fe=U(fe,Fe,I.typeAnnotation||"assert");else if((Fe.kind==="color"||Fe.kind==="formatted"||Fe.kind==="resolvedImage")&&(Qe.kind==="value"||Qe.kind==="string"))fe=U(fe,Fe,I.typeAnnotation||"coerce");else if(this.checkSubtype(Fe,Qe))return null}if(!(fe instanceof hs)&&fe.type.kind!=="resolvedImage"&&Xc(fe)){var st=new $o;try{fe=new hs(fe.type,fe.evaluate(st))}catch(mt){return this.error(mt.message),null}}return fe}return this.error('Unknown expression "'+J+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof y=="undefined"?this.error("'undefined' value invalid. Use null instead."):typeof y=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof y+" instead.")},fl.prototype.concat=function(y,I,U){var J=typeof y=="number"?this.path.concat(y):this.path,ne=U?this.scope.concat(U):this.scope;return new fl(this.registry,J,I||null,ne,this.errors)},fl.prototype.error=function(y){for(var I=[],U=arguments.length-1;U-- >0;)I[U]=arguments[U+1];var J=""+this.key+I.map(function(ne){return"["+ne+"]"}).join("");this.errors.push(new Ks(J,y))},fl.prototype.checkSubtype=function(y,I){var U=kc(y,I);return U&&this.error(U),U};function Xc(m){if(m instanceof Lc)return Xc(m.boundExpression);if(m instanceof Ja&&m.name==="error")return!1;if(m instanceof tc)return!1;if(m instanceof Lu)return!1;var y=m instanceof wo||m instanceof Sl,I=!0;return m.eachChild(function(U){y?I=I&&Xc(U):I=I&&U instanceof hs}),I?$h(m)&&Pu(m,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function ic(m,y){for(var I=m.length-1,U=0,J=I,ne=0,fe,Fe;U<=J;)if(ne=Math.floor((U+J)/2),fe=m[ne],Fe=m[ne+1],fe<=y){if(ne===I||y<Fe)return ne;U=ne+1}else if(fe>y)J=ne-1;else throw new Ms("Input is not a number.");return 0}var yu=function(y,I,U){this.type=y,this.input=I,this.labels=[],this.outputs=[];for(var J=0,ne=U;J<ne.length;J+=1){var fe=ne[J],Fe=fe[0],Qe=fe[1];this.labels.push(Fe),this.outputs.push(Qe)}};yu.parse=function(y,I){if(y.length-1<4)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if((y.length-1)%2!==0)return I.error("Expected an even number of arguments.");var U=I.parse(y[1],1,Zn);if(!U)return null;var J=[],ne=null;I.expectedType&&I.expectedType.kind!=="value"&&(ne=I.expectedType);for(var fe=1;fe<y.length;fe+=2){var Fe=fe===1?-1/0:y[fe],Qe=y[fe+1],st=fe,mt=fe+1;if(typeof Fe!="number")return I.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',st);if(J.length&&J[J.length-1][0]>=Fe)return I.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',st);var Xt=I.parse(Qe,mt,ne);if(!Xt)return null;ne=ne||Xt.type,J.push([Fe,Xt])}return new yu(ne,U,J)},yu.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var J=this.input.evaluate(y);if(J<=I[0])return U[0].evaluate(y);var ne=I.length;if(J>=I[ne-1])return U[ne-1].evaluate(y);var fe=ic(I,J);return U[fe].evaluate(y)},yu.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I<U.length;I+=1){var J=U[I];y(J)}},yu.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})},yu.prototype.serialize=function(){for(var y=["step",this.input.serialize()],I=0;I<this.labels.length;I++)I>0&&y.push(this.labels[I]),y.push(this.outputs[I].serialize());return y};function Qs(m,y,I){return m*(1-I)+y*I}function Qh(m,y,I){return new ss(Qs(m.r,y.r,I),Qs(m.g,y.g,I),Qs(m.b,y.b,I),Qs(m.a,y.a,I))}function gd(m,y,I){return m.map(function(U,J){return Qs(U,y[J],I)})}var Gu=Object.freeze({__proto__:null,number:Qs,color:Qh,array:gd}),Pc=.95047,vc=1,sv=1.08883,Lf=4/29,Uf=6/29,Iu=3*Uf*Uf,oh=Uf*Uf*Uf,ru=Math.PI/180,vf=180/Math.PI;function md(m){return m>oh?Math.pow(m,1/3):m/Iu+Lf}function sh(m){return m>Uf?m*m*m:Iu*(m-Lf)}function Fs(m){return 255*(m<=.0031308?12.92*m:1.055*Math.pow(m,1/2.4)-.055)}function _u(m){return m/=255,m<=.04045?m/12.92:Math.pow((m+.055)/1.055,2.4)}function xu(m){var y=_u(m.r),I=_u(m.g),U=_u(m.b),J=md((.4124564*y+.3575761*I+.1804375*U)/Pc),ne=md((.2126729*y+.7151522*I+.072175*U)/vc),fe=md((.0193339*y+.119192*I+.9503041*U)/sv);return{l:116*ne-16,a:500*(J-ne),b:200*(ne-fe),alpha:m.a}}function Lh(m){var y=(m.l+16)/116,I=isNaN(m.a)?y:y+m.a/500,U=isNaN(m.b)?y:y-m.b/200;return y=vc*sh(y),I=Pc*sh(I),U=sv*sh(U),new ss(Fs(3.2404542*I-1.5371385*y-.4985314*U),Fs(-.969266*I+1.8760108*y+.041556*U),Fs(.0556434*I-.2040259*y+1.0572252*U),m.alpha)}function Is(m,y,I){return{l:Qs(m.l,y.l,I),a:Qs(m.a,y.a,I),b:Qs(m.b,y.b,I),alpha:Qs(m.alpha,y.alpha,I)}}function Pf(m){var y=xu(m),I=y.l,U=y.a,J=y.b,ne=Math.atan2(J,U)*vf;return{h:ne<0?ne+360:ne,c:Math.sqrt(U*U+J*J),l:I,alpha:m.a}}function Ic(m){var y=m.h*ru,I=m.c,U=m.l;return Lh({l:U,a:Math.cos(y)*I,b:Math.sin(y)*I,alpha:m.alpha})}function ju(m,y,I){var U=y-m;return m+I*(U>180||U<-180?U-360*Math.round(U/360):U)}function Vf(m,y,I){return{h:ju(m.h,y.h,I),c:Qs(m.c,y.c,I),l:Qs(m.l,y.l,I),alpha:Qs(m.alpha,y.alpha,I)}}var pc={forward:xu,reverse:Lh,interpolate:Is},pf={forward:Pf,reverse:Ic,interpolate:Vf},Ph=Object.freeze({__proto__:null,lab:pc,hcl:pf}),Dl=function(y,I,U,J,ne){this.type=y,this.operator=I,this.interpolation=U,this.input=J,this.labels=[],this.outputs=[];for(var fe=0,Fe=ne;fe<Fe.length;fe+=1){var Qe=Fe[fe],st=Qe[0],mt=Qe[1];this.labels.push(st),this.outputs.push(mt)}};Dl.interpolationFactor=function(y,I,U,J){var ne=0;if(y.name==="exponential")ne=Ih(I,y.base,U,J);else if(y.name==="linear")ne=Ih(I,1,U,J);else if(y.name==="cubic-bezier"){var fe=y.controlPoints,Fe=new s(fe[0],fe[1],fe[2],fe[3]);ne=Fe.solve(Ih(I,1,U,J))}return ne},Dl.parse=function(y,I){var U=y[0],J=y[1],ne=y[2],fe=y.slice(3);if(!Array.isArray(J)||J.length===0)return I.error("Expected an interpolation type expression.",1);if(J[0]==="linear")J={name:"linear"};else if(J[0]==="exponential"){var Fe=J[1];if(typeof Fe!="number")return I.error("Exponential interpolation requires a numeric base.",1,1);J={name:"exponential",base:Fe}}else if(J[0]==="cubic-bezier"){var Qe=J.slice(1);if(Qe.length!==4||Qe.some(function(si){return typeof si!="number"||si<0||si>1}))return I.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);J={name:"cubic-bezier",controlPoints:Qe}}else return I.error("Unknown interpolation type "+String(J[0]),1,0);if(y.length-1<4)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if((y.length-1)%2!==0)return I.error("Expected an even number of arguments.");if(ne=I.parse(ne,2,Zn),!ne)return null;var st=[],mt=null;U==="interpolate-hcl"||U==="interpolate-lab"?mt=Tl:I.expectedType&&I.expectedType.kind!=="value"&&(mt=I.expectedType);for(var Xt=0;Xt<fe.length;Xt+=2){var ur=fe[Xt],nr=fe[Xt+1],Lr=Xt+3,Yr=Xt+4;if(typeof ur!="number")return I.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Lr);if(st.length&&st[st.length-1][0]>=ur)return I.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Lr);var _i=I.parse(nr,Yr,mt);if(!_i)return null;mt=mt||_i.type,st.push([ur,_i])}return mt.kind!=="number"&&mt.kind!=="color"&&!(mt.kind==="array"&&mt.itemType.kind==="number"&&typeof mt.N=="number")?I.error("Type "+Ls(mt)+" is not interpolatable."):new Dl(mt,U,J,ne,st)},Dl.prototype.evaluate=function(y){var I=this.labels,U=this.outputs;if(I.length===1)return U[0].evaluate(y);var J=this.input.evaluate(y);if(J<=I[0])return U[0].evaluate(y);var ne=I.length;if(J>=I[ne-1])return U[ne-1].evaluate(y);var fe=ic(I,J),Fe=I[fe],Qe=I[fe+1],st=Dl.interpolationFactor(this.interpolation,J,Fe,Qe),mt=U[fe].evaluate(y),Xt=U[fe+1].evaluate(y);return this.operator==="interpolate"?Gu[this.type.kind.toLowerCase()](mt,Xt,st):this.operator==="interpolate-hcl"?pf.reverse(pf.interpolate(pf.forward(mt),pf.forward(Xt),st)):pc.reverse(pc.interpolate(pc.forward(mt),pc.forward(Xt),st))},Dl.prototype.eachChild=function(y){y(this.input);for(var I=0,U=this.outputs;I<U.length;I+=1){var J=U[I];y(J)}},Dl.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})},Dl.prototype.serialize=function(){var y;this.interpolation.name==="linear"?y=["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?y=["linear"]:y=["exponential",this.interpolation.base]:y=["cubic-bezier"].concat(this.interpolation.controlPoints);for(var I=[this.operator,y,this.input.serialize()],U=0;U<this.labels.length;U++)I.push(this.labels[U],this.outputs[U].serialize());return I};function Ih(m,y,I,U){var J=U-I,ne=m-I;return J===0?0:y===1?ne/J:(Math.pow(y,ne)-1)/(Math.pow(y,J)-1)}var Wu=function(y,I){this.type=y,this.args=I};Wu.parse=function(y,I){if(y.length<2)return I.error("Expectected at least one argument.");var U=null,J=I.expectedType;J&&J.kind!=="value"&&(U=J);for(var ne=[],fe=0,Fe=y.slice(1);fe<Fe.length;fe+=1){var Qe=Fe[fe],st=I.parse(Qe,1+ne.length,U,void 0,{typeAnnotation:"omit"});if(!st)return null;U=U||st.type,ne.push(st)}var mt=J&&ne.some(function(Xt){return kc(J,Xt.type)});return mt?new Wu(So,ne):new Wu(U,ne)},Wu.prototype.evaluate=function(y){for(var I=null,U=0,J,ne=0,fe=this.args;ne<fe.length;ne+=1){var Fe=fe[ne];if(U++,I=Fe.evaluate(y),I&&I instanceof Js&&!I.available&&(J||(J=I.name),I=null,U===this.args.length&&(I=J)),I!==null)break}return I},Wu.prototype.eachChild=function(y){this.args.forEach(y)},Wu.prototype.outputDefined=function(){return this.args.every(function(y){return y.outputDefined()})},Wu.prototype.serialize=function(){var y=["coalesce"];return this.eachChild(function(I){y.push(I.serialize())}),y};var Rc=function(y,I){this.type=I.type,this.bindings=[].concat(y),this.result=I};Rc.prototype.evaluate=function(y){return this.result.evaluate(y)},Rc.prototype.eachChild=function(y){for(var I=0,U=this.bindings;I<U.length;I+=1){var J=U[I];y(J[1])}y(this.result)},Rc.parse=function(y,I){if(y.length<4)return I.error("Expected at least 3 arguments, but found "+(y.length-1)+" instead.");for(var U=[],J=1;J<y.length-1;J+=2){var ne=y[J];if(typeof ne!="string")return I.error("Expected string, but found "+typeof ne+" instead.",J);if(/[^a-zA-Z0-9_]/.test(ne))return I.error("Variable names must contain only alphanumeric characters or '_'.",J);var fe=I.parse(y[J+1],J+1);if(!fe)return null;U.push([ne,fe])}var Fe=I.parse(y[y.length-1],y.length-1,I.expectedType,U);return Fe?new Rc(U,Fe):null},Rc.prototype.outputDefined=function(){return this.result.outputDefined()},Rc.prototype.serialize=function(){for(var y=["let"],I=0,U=this.bindings;I<U.length;I+=1){var J=U[I],ne=J[0],fe=J[1];y.push(ne,fe.serialize())}return y.push(this.result.serialize()),y};var gc=function(y,I,U){this.type=y,this.index=I,this.input=U};gc.parse=function(y,I){if(y.length!==3)return I.error("Expected 2 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,Zn),J=I.parse(y[2],2,eu(I.expectedType||So));if(!U||!J)return null;var ne=J.type;return new gc(ne.itemType,U,J)},gc.prototype.evaluate=function(y){var I=this.index.evaluate(y),U=this.input.evaluate(y);if(I<0)throw new Ms("Array index out of bounds: "+I+" < 0.");if(I>=U.length)throw new Ms("Array index out of bounds: "+I+" > "+(U.length-1)+".");if(I!==Math.floor(I))throw new Ms("Array index must be an integer, but found "+I+" instead.");return U[I]},gc.prototype.eachChild=function(y){y(this.index),y(this.input)},gc.prototype.outputDefined=function(){return!1},gc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var hl=function(y,I){this.type=Co,this.needle=y,this.haystack=I};hl.parse=function(y,I){if(y.length!==3)return I.error("Expected 2 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,So),J=I.parse(y[2],2,So);return!U||!J?null:Of(U.type,[Co,ko,Zn,Ec,So])?new hl(U,J):I.error("Expected first argument to be of type boolean, string, number or null, but found "+Ls(U.type)+" instead")},hl.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!U)return!1;if(!Gc(I,["boolean","string","number","null"]))throw new Ms("Expected first argument to be of type boolean, string, number or null, but found "+Ls(ws(I))+" instead.");if(!Gc(U,["string","array"]))throw new Ms("Expected second argument to be of type array or string, but found "+Ls(ws(U))+" instead.");return U.indexOf(I)>=0},hl.prototype.eachChild=function(y){y(this.needle),y(this.haystack)},hl.prototype.outputDefined=function(){return!0},hl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var iu=function(y,I,U){this.type=Zn,this.needle=y,this.haystack=I,this.fromIndex=U};iu.parse=function(y,I){if(y.length<=2||y.length>=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,So),J=I.parse(y[2],2,So);if(!U||!J)return null;if(!Of(U.type,[Co,ko,Zn,Ec,So]))return I.error("Expected first argument to be of type boolean, string, number or null, but found "+Ls(U.type)+" instead");if(y.length===4){var ne=I.parse(y[3],3,Zn);return ne?new iu(U,J,ne):null}else return new iu(U,J)},iu.prototype.evaluate=function(y){var I=this.needle.evaluate(y),U=this.haystack.evaluate(y);if(!Gc(I,["boolean","string","number","null"]))throw new Ms("Expected first argument to be of type boolean, string, number or null, but found "+Ls(ws(I))+" instead.");if(!Gc(U,["string","array"]))throw new Ms("Expected second argument to be of type array or string, but found "+Ls(ws(U))+" instead.");if(this.fromIndex){var J=this.fromIndex.evaluate(y);return U.indexOf(I,J)}return U.indexOf(I)},iu.prototype.eachChild=function(y){y(this.needle),y(this.haystack),this.fromIndex&&y(this.fromIndex)},iu.prototype.outputDefined=function(){return!1},iu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var y=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),y]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var mc=function(y,I,U,J,ne,fe){this.inputType=y,this.type=I,this.input=U,this.cases=J,this.outputs=ne,this.otherwise=fe};mc.parse=function(y,I){if(y.length<5)return I.error("Expected at least 4 arguments, but found only "+(y.length-1)+".");if(y.length%2!==1)return I.error("Expected an even number of arguments.");var U,J;I.expectedType&&I.expectedType.kind!=="value"&&(J=I.expectedType);for(var ne={},fe=[],Fe=2;Fe<y.length-1;Fe+=2){var Qe=y[Fe],st=y[Fe+1];Array.isArray(Qe)||(Qe=[Qe]);var mt=I.concat(Fe);if(Qe.length===0)return mt.error("Expected at least one branch label.");for(var Xt=0,ur=Qe;Xt<ur.length;Xt+=1){var nr=ur[Xt];if(typeof nr!="number"&&typeof nr!="string")return mt.error("Branch labels must be numbers or strings.");if(typeof nr=="number"&&Math.abs(nr)>Number.MAX_SAFE_INTEGER)return mt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof nr=="number"&&Math.floor(nr)!==nr)return mt.error("Numeric branch labels must be integer values.");if(!U)U=ws(nr);else if(mt.checkSubtype(U,ws(nr)))return null;if(typeof ne[String(nr)]!="undefined")return mt.error("Branch labels must be unique.");ne[String(nr)]=fe.length}var Lr=I.parse(st,Fe,J);if(!Lr)return null;J=J||Lr.type,fe.push(Lr)}var Yr=I.parse(y[1],1,So);if(!Yr)return null;var _i=I.parse(y[y.length-1],y.length-1,J);return!_i||Yr.type.kind!=="value"&&I.concat(1).checkSubtype(U,Yr.type)?null:new mc(U,J,Yr,ne,fe,_i)},mc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=ws(I)===this.inputType&&this.outputs[this.cases[I]]||this.otherwise;return U.evaluate(y)},mc.prototype.eachChild=function(y){y(this.input),this.outputs.forEach(y),y(this.otherwise)},mc.prototype.outputDefined=function(){return this.outputs.every(function(y){return y.outputDefined()})&&this.otherwise.outputDefined()},mc.prototype.serialize=function(){for(var y=this,I=["match",this.input.serialize()],U=Object.keys(this.cases).sort(),J=[],ne={},fe=0,Fe=U;fe<Fe.length;fe+=1){var Qe=Fe[fe],st=ne[this.cases[Qe]];st===void 0?(ne[this.cases[Qe]]=J.length,J.push([this.cases[Qe],[Qe]])):J[st][1].push(Qe)}for(var mt=function(Yr){return y.inputType.kind==="number"?Number(Yr):Yr},Xt=0,ur=J;Xt<ur.length;Xt+=1){var nr=ur[Xt],st=nr[0],Lr=nr[1];Lr.length===1?I.push(mt(Lr[0])):I.push(Lr.map(mt)),I.push(this.outputs[outputIndex$1].serialize())}return I.push(this.otherwise.serialize()),I};var Yc=function(y,I,U){this.type=y,this.branches=I,this.otherwise=U};Yc.parse=function(y,I){if(y.length<4)return I.error("Expected at least 3 arguments, but found only "+(y.length-1)+".");if(y.length%2!==0)return I.error("Expected an odd number of arguments.");var U;I.expectedType&&I.expectedType.kind!=="value"&&(U=I.expectedType);for(var J=[],ne=1;ne<y.length-1;ne+=2){var fe=I.parse(y[ne],ne,Co);if(!fe)return null;var Fe=I.parse(y[ne+1],ne+1,U);if(!Fe)return null;J.push([fe,Fe]),U=U||Fe.type}var Qe=I.parse(y[y.length-1],y.length-1,U);return Qe?new Yc(U,J,Qe):null},Yc.prototype.evaluate=function(y){for(var I=0,U=this.branches;I<U.length;I+=1){var J=U[I],ne=J[0],fe=J[1];if(ne.evaluate(y))return fe.evaluate(y)}return this.otherwise.evaluate(y)},Yc.prototype.eachChild=function(y){for(var I=0,U=this.branches;I<U.length;I+=1){var J=U[I],ne=J[0],fe=J[1];y(ne),y(fe)}y(this.otherwise)},Yc.prototype.outputDefined=function(){return this.branches.every(function(y){var I=y[0],U=y[1];return U.outputDefined()})&&this.otherwise.outputDefined()},Yc.prototype.serialize=function(){var y=["case"];return this.eachChild(function(I){y.push(I.serialize())}),y};var nc=function(y,I,U,J){this.type=y,this.input=I,this.beginIndex=U,this.endIndex=J};nc.parse=function(y,I){if(y.length<=2||y.length>=5)return I.error("Expected 3 or 4 arguments, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1,So),J=I.parse(y[2],2,Zn);if(!U||!J)return null;if(!Of(U.type,[eu(So),ko,So]))return I.error("Expected first argument to be of type array or string, but found "+Ls(U.type)+" instead");if(y.length===4){var ne=I.parse(y[3],3,Zn);return ne?new nc(U.type,U,J,ne):null}else return new nc(U.type,U,J)},nc.prototype.evaluate=function(y){var I=this.input.evaluate(y),U=this.beginIndex.evaluate(y);if(!Gc(I,["string","array"]))throw new Ms("Expected first argument to be of type array or string, but found "+Ls(ws(I))+" instead.");if(this.endIndex){var J=this.endIndex.evaluate(y);return I.slice(U,J)}return I.slice(U)},nc.prototype.eachChild=function(y){y(this.input),y(this.beginIndex),this.endIndex&&y(this.endIndex)},nc.prototype.outputDefined=function(){return!1},nc.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var y=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),y]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function gf(m,y){return m==="=="||m==="!="?y.kind==="boolean"||y.kind==="string"||y.kind==="number"||y.kind==="null"||y.kind==="value":y.kind==="string"||y.kind==="number"||y.kind==="value"}function gt(m,y,I){return y===I}function Bt(m,y,I){return y!==I}function wr(m,y,I){return y<I}function vr(m,y,I){return y>I}function Ur(m,y,I){return y<=I}function fi(m,y,I){return y>=I}function xi(m,y,I,U){return U.compare(y,I)===0}function Fi(m,y,I,U){return!xi(m,y,I,U)}function Xi(m,y,I,U){return U.compare(y,I)<0}function hn(m,y,I,U){return U.compare(y,I)>0}function Ti(m,y,I,U){return U.compare(y,I)<=0}function qi(m,y,I,U){return U.compare(y,I)>=0}function Ii(m,y,I){var U=m!=="=="&&m!=="!=";return function(){function J(ne,fe,Fe){this.type=Co,this.lhs=ne,this.rhs=fe,this.collator=Fe,this.hasUntypedArgument=ne.type.kind==="value"||fe.type.kind==="value"}return J.parse=function(fe,Fe){if(fe.length!==3&&fe.length!==4)return Fe.error("Expected two or three arguments.");var Qe=fe[0],st=Fe.parse(fe[1],1,So);if(!st)return null;if(!gf(Qe,st.type))return Fe.concat(1).error('"'+Qe+`" comparisons are not supported for type '`+Ls(st.type)+"'.");var mt=Fe.parse(fe[2],2,So);if(!mt)return null;if(!gf(Qe,mt.type))return Fe.concat(2).error('"'+Qe+`" comparisons are not supported for type '`+Ls(mt.type)+"'.");if(st.type.kind!==mt.type.kind&&st.type.kind!=="value"&&mt.type.kind!=="value")return Fe.error("Cannot compare types '"+Ls(st.type)+"' and '"+Ls(mt.type)+"'.");U&&(st.type.kind==="value"&&mt.type.kind!=="value"?st=new Sl(mt.type,[st]):st.type.kind!=="value"&&mt.type.kind==="value"&&(mt=new Sl(st.type,[mt])));var Xt=null;if(fe.length===4){if(st.type.kind!=="string"&&mt.type.kind!=="string"&&st.type.kind!=="value"&&mt.type.kind!=="value")return Fe.error("Cannot use collator to compare non-string types.");if(Xt=Fe.parse(fe[3],3,rh),!Xt)return null}return new J(st,mt,Xt)},J.prototype.evaluate=function(fe){var Fe=this.lhs.evaluate(fe),Qe=this.rhs.evaluate(fe);if(U&&this.hasUntypedArgument){var st=ws(Fe),mt=ws(Qe);if(st.kind!==mt.kind||!(st.kind==="string"||st.kind==="number"))throw new Ms('Expected arguments for "'+m+'" to be (string, string) or (number, number), but found ('+st.kind+", "+mt.kind+") instead.")}if(this.collator&&!U&&this.hasUntypedArgument){var Xt=ws(Fe),ur=ws(Qe);if(Xt.kind!=="string"||ur.kind!=="string")return y(fe,Fe,Qe)}return this.collator?I(fe,Fe,Qe,this.collator.evaluate(fe)):y(fe,Fe,Qe)},J.prototype.eachChild=function(fe){fe(this.lhs),fe(this.rhs),this.collator&&fe(this.collator)},J.prototype.outputDefined=function(){return!0},J.prototype.serialize=function(){var fe=[m];return this.eachChild(function(Fe){fe.push(Fe.serialize())}),fe},J}()}var mi=Ii("==",gt,xi),Pn=Ii("!=",Bt,Fi),Ma=Ii("<",wr,Xi),Ta=Ii(">",vr,hn),Ea=Ii("<=",Ur,Ti),qa=Ii(">=",fi,qi),Cn=function(y,I,U,J,ne){this.type=ko,this.number=y,this.locale=I,this.currency=U,this.minFractionDigits=J,this.maxFractionDigits=ne};Cn.parse=function(y,I){if(y.length!==3)return I.error("Expected two arguments.");var U=I.parse(y[1],1,Zn);if(!U)return null;var J=y[2];if(typeof J!="object"||Array.isArray(J))return I.error("NumberFormat options argument must be an object.");var ne=null;if(J.locale&&(ne=I.parse(J.locale,1,ko),!ne))return null;var fe=null;if(J.currency&&(fe=I.parse(J.currency,1,ko),!fe))return null;var Fe=null;if(J["min-fraction-digits"]&&(Fe=I.parse(J["min-fraction-digits"],1,Zn),!Fe))return null;var Qe=null;return J["max-fraction-digits"]&&(Qe=I.parse(J["max-fraction-digits"],1,Zn),!Qe)?null:new Cn(U,ne,fe,Fe,Qe)},Cn.prototype.evaluate=function(y){return new Intl.NumberFormat(this.locale?this.locale.evaluate(y):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(y):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(y):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(y):void 0}).format(this.number.evaluate(y))},Cn.prototype.eachChild=function(y){y(this.number),this.locale&&y(this.locale),this.currency&&y(this.currency),this.minFractionDigits&&y(this.minFractionDigits),this.maxFractionDigits&&y(this.maxFractionDigits)},Cn.prototype.outputDefined=function(){return!1},Cn.prototype.serialize=function(){var y={};return this.locale&&(y.locale=this.locale.serialize()),this.currency&&(y.currency=this.currency.serialize()),this.minFractionDigits&&(y["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(y["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),y]};var sn=function(y){this.type=Zn,this.input=y};sn.parse=function(y,I){if(y.length!==2)return I.error("Expected 1 argument, but found "+(y.length-1)+" instead.");var U=I.parse(y[1],1);return U?U.type.kind!=="array"&&U.type.kind!=="string"&&U.type.kind!=="value"?I.error("Expected argument of type string or array, but found "+Ls(U.type)+" instead."):new sn(U):null},sn.prototype.evaluate=function(y){var I=this.input.evaluate(y);if(typeof I=="string")return I.length;if(Array.isArray(I))return I.length;throw new Ms("Expected value to be of type string or array, but found "+Ls(ws(I))+" instead.")},sn.prototype.eachChild=function(y){y(this.input)},sn.prototype.outputDefined=function(){return!1},sn.prototype.serialize=function(){var y=["length"];return this.eachChild(function(I){y.push(I.serialize())}),y};var Ua={"==":mi,"!=":Pn,">":Ta,"<":Ma,">=":qa,"<=":Ea,array:Sl,at:gc,boolean:Sl,case:Yc,coalesce:Wu,collator:tc,format:ec,image:Ps,in:hl,"index-of":iu,interpolate:Dl,"interpolate-hcl":Dl,"interpolate-lab":Dl,length:sn,let:Rc,literal:hs,match:mc,number:Sl,"number-format":Cn,object:Sl,slice:nc,step:yu,string:Sl,"to-boolean":wo,"to-color":wo,"to-number":wo,"to-string":wo,var:Lc,within:Lu};function mo(m,y){var I=y[0],U=y[1],J=y[2],ne=y[3];I=I.evaluate(m),U=U.evaluate(m),J=J.evaluate(m);var fe=ne?ne.evaluate(m):1,Fe=hc(I,U,J,fe);if(Fe)throw new Ms(Fe);return new ss(I/255*fe,U/255*fe,J/255*fe,fe)}function Xo(m,y){return m in y}function Ts(m,y){var I=y[m];return typeof I=="undefined"?null:I}function Qo(m,y,I,U){for(;I<=U;){var J=I+U>>1;if(y[J]===m)return!0;y[J]>m?U=J-1:I=J+1}return!1}function ys(m){return{type:m}}Ja.register(Ua,{error:[cf,[ko],function(m,y){var I=y[0];throw new Ms(I.evaluate(m))}],typeof:[ko,[So],function(m,y){var I=y[0];return Ls(ws(I.evaluate(m)))}],"to-rgba":[eu(Zn,4),[Tl],function(m,y){var I=y[0];return I.evaluate(m).toArray()}],rgb:[Tl,[Zn,Zn,Zn],mo],rgba:[Tl,[Zn,Zn,Zn,Zn],mo],has:{type:Co,overloads:[[[ko],function(m,y){var I=y[0];return Xo(I.evaluate(m),m.properties())}],[[ko,uf],function(m,y){var I=y[0],U=y[1];return Xo(I.evaluate(m),U.evaluate(m))}]]},get:{type:So,overloads:[[[ko],function(m,y){var I=y[0];return Ts(I.evaluate(m),m.properties())}],[[ko,uf],function(m,y){var I=y[0],U=y[1];return Ts(I.evaluate(m),U.evaluate(m))}]]},"feature-state":[So,[ko],function(m,y){var I=y[0];return Ts(I.evaluate(m),m.featureState||{})}],properties:[uf,[],function(m){return m.properties()}],"geometry-type":[ko,[],function(m){return m.geometryType()}],id:[So,[],function(m){return m.id()}],zoom:[Zn,[],function(m){return m.globals.zoom}],"heatmap-density":[Zn,[],function(m){return m.globals.heatmapDensity||0}],"line-progress":[Zn,[],function(m){return m.globals.lineProgress||0}],accumulated:[So,[],function(m){return m.globals.accumulated===void 0?null:m.globals.accumulated}],"+":[Zn,ys(Zn),function(m,y){for(var I=0,U=0,J=y;U<J.length;U+=1){var ne=J[U];I+=ne.evaluate(m)}return I}],"*":[Zn,ys(Zn),function(m,y){for(var I=1,U=0,J=y;U<J.length;U+=1){var ne=J[U];I*=ne.evaluate(m)}return I}],"-":{type:Zn,overloads:[[[Zn,Zn],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)-U.evaluate(m)}],[[Zn],function(m,y){var I=y[0];return-I.evaluate(m)}]]},"/":[Zn,[Zn,Zn],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)/U.evaluate(m)}],"%":[Zn,[Zn,Zn],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)%U.evaluate(m)}],ln2:[Zn,[],function(){return Math.LN2}],pi:[Zn,[],function(){return Math.PI}],e:[Zn,[],function(){return Math.E}],"^":[Zn,[Zn,Zn],function(m,y){var I=y[0],U=y[1];return Math.pow(I.evaluate(m),U.evaluate(m))}],sqrt:[Zn,[Zn],function(m,y){var I=y[0];return Math.sqrt(I.evaluate(m))}],log10:[Zn,[Zn],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN10}],ln:[Zn,[Zn],function(m,y){var I=y[0];return Math.log(I.evaluate(m))}],log2:[Zn,[Zn],function(m,y){var I=y[0];return Math.log(I.evaluate(m))/Math.LN2}],sin:[Zn,[Zn],function(m,y){var I=y[0];return Math.sin(I.evaluate(m))}],cos:[Zn,[Zn],function(m,y){var I=y[0];return Math.cos(I.evaluate(m))}],tan:[Zn,[Zn],function(m,y){var I=y[0];return Math.tan(I.evaluate(m))}],asin:[Zn,[Zn],function(m,y){var I=y[0];return Math.asin(I.evaluate(m))}],acos:[Zn,[Zn],function(m,y){var I=y[0];return Math.acos(I.evaluate(m))}],atan:[Zn,[Zn],function(m,y){var I=y[0];return Math.atan(I.evaluate(m))}],min:[Zn,ys(Zn),function(m,y){return Math.min.apply(Math,y.map(function(I){return I.evaluate(m)}))}],max:[Zn,ys(Zn),function(m,y){return Math.max.apply(Math,y.map(function(I){return I.evaluate(m)}))}],abs:[Zn,[Zn],function(m,y){var I=y[0];return Math.abs(I.evaluate(m))}],round:[Zn,[Zn],function(m,y){var I=y[0],U=I.evaluate(m);return U<0?-Math.round(-U):Math.round(U)}],floor:[Zn,[Zn],function(m,y){var I=y[0];return Math.floor(I.evaluate(m))}],ceil:[Zn,[Zn],function(m,y){var I=y[0];return Math.ceil(I.evaluate(m))}],"filter-==":[Co,[ko,So],function(m,y){var I=y[0],U=y[1];return m.properties()[I.value]===U.value}],"filter-id-==":[Co,[So],function(m,y){var I=y[0];return m.id()===I.value}],"filter-type-==":[Co,[ko],function(m,y){var I=y[0];return m.geometryType()===I.value}],"filter-<":[Co,[ko,So],function(m,y){var I=y[0],U=y[1],J=m.properties()[I.value],ne=U.value;return typeof J==typeof ne&&J<ne}],"filter-id-<":[Co,[So],function(m,y){var I=y[0],U=m.id(),J=I.value;return typeof U==typeof J&&U<J}],"filter->":[Co,[ko,So],function(m,y){var I=y[0],U=y[1],J=m.properties()[I.value],ne=U.value;return typeof J==typeof ne&&J>ne}],"filter-id->":[Co,[So],function(m,y){var I=y[0],U=m.id(),J=I.value;return typeof U==typeof J&&U>J}],"filter-<=":[Co,[ko,So],function(m,y){var I=y[0],U=y[1],J=m.properties()[I.value],ne=U.value;return typeof J==typeof ne&&J<=ne}],"filter-id-<=":[Co,[So],function(m,y){var I=y[0],U=m.id(),J=I.value;return typeof U==typeof J&&U<=J}],"filter->=":[Co,[ko,So],function(m,y){var I=y[0],U=y[1],J=m.properties()[I.value],ne=U.value;return typeof J==typeof ne&&J>=ne}],"filter-id->=":[Co,[So],function(m,y){var I=y[0],U=m.id(),J=I.value;return typeof U==typeof J&&U>=J}],"filter-has":[Co,[So],function(m,y){var I=y[0];return I.value in m.properties()}],"filter-has-id":[Co,[],function(m){return m.id()!==null&&m.id()!==void 0}],"filter-type-in":[Co,[eu(ko)],function(m,y){var I=y[0];return I.value.indexOf(m.geometryType())>=0}],"filter-id-in":[Co,[eu(So)],function(m,y){var I=y[0];return I.value.indexOf(m.id())>=0}],"filter-in-small":[Co,[ko,eu(So)],function(m,y){var I=y[0],U=y[1];return U.value.indexOf(m.properties()[I.value])>=0}],"filter-in-large":[Co,[ko,eu(So)],function(m,y){var I=y[0],U=y[1];return Qo(m.properties()[I.value],U.value,0,U.value.length-1)}],all:{type:Co,overloads:[[[Co,Co],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)&&U.evaluate(m)}],[ys(Co),function(m,y){for(var I=0,U=y;I<U.length;I+=1){var J=U[I];if(!J.evaluate(m))return!1}return!0}]]},any:{type:Co,overloads:[[[Co,Co],function(m,y){var I=y[0],U=y[1];return I.evaluate(m)||U.evaluate(m)}],[ys(Co),function(m,y){for(var I=0,U=y;I<U.length;I+=1){var J=U[I];if(J.evaluate(m))return!0}return!1}]]},"!":[Co,[Co],function(m,y){var I=y[0];return!I.evaluate(m)}],"is-supported-script":[Co,[ko],function(m,y){var I=y[0],U=m.globals&&m.globals.isSupportedScript;return U?U(I.evaluate(m)):!0}],upcase:[ko,[ko],function(m,y){var I=y[0];return I.evaluate(m).toUpperCase()}],downcase:[ko,[ko],function(m,y){var I=y[0];return I.evaluate(m).toLowerCase()}],concat:[ko,ys(So),function(m,y){return y.map(function(I){return $s(I.evaluate(m))}).join("")}],"resolved-locale":[ko,[rh],function(m,y){var I=y[0];return I.evaluate(m).resolvedLocale()}]});function Bo(m){return{result:"success",value:m}}function yl(m){return{result:"error",value:m}}function Gs(m){return m["property-type"]==="data-driven"||m["property-type"]==="cross-faded-data-driven"}function Rs(m){return!!m.expression&&m.expression.parameters.indexOf("zoom")>-1}function ia(m){return!!m.expression&&m.expression.interpolated}function Ka(m){return m instanceof Number?"number":m instanceof String?"string":m instanceof Boolean?"boolean":Array.isArray(m)?"array":m===null?"null":typeof m}function vs(m){return typeof m=="object"&&m!==null&&!Array.isArray(m)}function Ko(m){return m}function nu(m,y){var I=y.type==="color",U=m.stops&&typeof m.stops[0][0]=="object",J=U||m.property!==void 0,ne=U||!J,fe=m.type||(ia(y)?"exponential":"interval");if(I&&(m=Rl({},m),m.stops&&(m.stops=m.stops.map(function($n){return[$n[0],ss.parse($n[1])]})),m.default?m.default=ss.parse(m.default):m.default=ss.parse(y.default)),m.colorSpace&&m.colorSpace!=="rgb"&&!Ph[m.colorSpace])throw new Error("Unknown color space: "+m.colorSpace);var Fe,Qe,st;if(fe==="exponential")Fe=bu;else if(fe==="interval")Fe=mf;else if(fe==="categorical"){Fe=ac,Qe=Object.create(null);for(var mt=0,Xt=m.stops;mt<Xt.length;mt+=1){var ur=Xt[mt];Qe[ur[0]]=ur[1]}st=typeof m.stops[0][0]}else if(fe==="identity")Fe=Kc;else throw new Error('Unknown function type "'+fe+'"');if(U){for(var nr={},Lr=[],Yr=0;Yr<m.stops.length;Yr++){var _i=m.stops[Yr],si=_i[0].zoom;nr[si]===void 0&&(nr[si]={zoom:si,type:m.type,property:m.property,default:m.default,stops:[]},Lr.push(si)),nr[si].stops.push([_i[0].value,_i[1]])}for(var Hi=[],Ei=0,Vi=Lr;Ei<Vi.length;Ei+=1){var en=Vi[Ei];Hi.push([nr[en].zoom,nu(nr[en],y)])}var An={name:"linear"};return{kind:"composite",interpolationType:An,interpolationFactor:Dl.interpolationFactor.bind(void 0,An),zoomStops:Hi.map(function($n){return $n[0]}),evaluate:function(Ba,_a){var Pa=Ba.zoom;return bu({stops:Hi,base:m.base},y,Pa).evaluate(Pa,_a)}}}else if(ne){var ra=fe==="exponential"?{name:"exponential",base:m.base!==void 0?m.base:1}:null;return{kind:"camera",interpolationType:ra,interpolationFactor:Dl.interpolationFactor.bind(void 0,ra),zoomStops:m.stops.map(function($n){return $n[0]}),evaluate:function($n){var Ba=$n.zoom;return Fe(m,y,Ba,Qe,st)}}}else return{kind:"source",evaluate:function(Ba,_a){var Pa=_a&&_a.properties?_a.properties[m.property]:void 0;return Pa===void 0?Ru(m.default,y.default):Fe(m,y,Pa,Qe,st)}}}function Ru(m,y,I){if(m!==void 0)return m;if(y!==void 0)return y;if(I!==void 0)return I}function ac(m,y,I,U,J){var ne=typeof I===J?U[I]:void 0;return Ru(ne,m.default,y.default)}function mf(m,y,I){if(Ka(I)!=="number")return Ru(m.default,y.default);var U=m.stops.length;if(U===1||I<=m.stops[0][0])return m.stops[0][1];if(I>=m.stops[U-1][0])return m.stops[U-1][1];var J=ic(m.stops.map(function(ne){return ne[0]}),I);return m.stops[J][1]}function bu(m,y,I){var U=m.base!==void 0?m.base:1;if(Ka(I)!=="number")return Ru(m.default,y.default);var J=m.stops.length;if(J===1||I<=m.stops[0][0])return m.stops[0][1];if(I>=m.stops[J-1][0])return m.stops[J-1][1];var ne=ic(m.stops.map(function(Xt){return Xt[0]}),I),fe=Du(I,U,m.stops[ne][0],m.stops[ne+1][0]),Fe=m.stops[ne][1],Qe=m.stops[ne+1][1],st=Gu[y.type]||Ko;if(m.colorSpace&&m.colorSpace!=="rgb"){var mt=Ph[m.colorSpace];st=function(Xt,ur){return mt.reverse(mt.interpolate(mt.forward(Xt),mt.forward(ur),fe))}}return typeof Fe.evaluate=="function"?{evaluate:function(){for(var ur=[],nr=arguments.length;nr--;)ur[nr]=arguments[nr];var Lr=Fe.evaluate.apply(void 0,ur),Yr=Qe.evaluate.apply(void 0,ur);if(!(Lr===void 0||Yr===void 0))return st(Lr,Yr,fe)}}:st(Fe,Qe,fe)}function Kc(m,y,I){return y.type==="color"?I=ss.parse(I):y.type==="formatted"?I=Vl.fromString(I.toString()):y.type==="resolvedImage"?I=Js.fromString(I.toString()):Ka(I)!==y.type&&(y.type!=="enum"||!y.values[I])&&(I=void 0),Ru(I,m.default,y.default)}function Du(m,y,I,U){var J=U-I,ne=m-I;return J===0?0:y===1?ne/J:(Math.pow(y,ne)-1)/(Math.pow(y,J)-1)}var Dc=function(y,I){this.expression=y,this._warningHistory={},this._evaluator=new $o,this._defaultValue=I?ee(I):null,this._enumValues=I&&I.type==="enum"?I.values:null};Dc.prototype.evaluateWithoutErrorHandling=function(y,I,U,J,ne,fe){return this._evaluator.globals=y,this._evaluator.feature=I,this._evaluator.featureState=U,this._evaluator.canonical=J,this._evaluator.availableImages=ne||null,this._evaluator.formattedSection=fe,this.expression.evaluate(this._evaluator)},Dc.prototype.evaluate=function(y,I,U,J,ne,fe){this._evaluator.globals=y,this._evaluator.feature=I||null,this._evaluator.featureState=U||null,this._evaluator.canonical=J,this._evaluator.availableImages=ne||null,this._evaluator.formattedSection=fe||null;try{var Fe=this.expression.evaluate(this._evaluator);if(Fe==null||typeof Fe=="number"&&Fe!==Fe)return this._defaultValue;if(this._enumValues&&!(Fe in this._enumValues))throw new Ms("Expected value to be one of "+Object.keys(this._enumValues).map(function(Qe){return JSON.stringify(Qe)}).join(", ")+", but found "+JSON.stringify(Fe)+" instead.");return Fe}catch(Qe){return this._warningHistory[Qe.message]||(this._warningHistory[Qe.message]=!0,typeof console!="undefined"&&console.warn(Qe.message)),this._defaultValue}};function Da(m){return Array.isArray(m)&&m.length>0&&typeof m[0]=="string"&&m[0]in Ua}function eo(m,y){var I=new fl(Ua,[],y?Q(y):void 0),U=I.parse(m,void 0,void 0,void 0,y&&y.type==="string"?{typeAnnotation:"coerce"}:void 0);return U?Bo(new Dc(U,y)):yl(I.errors)}var Jc=function(y,I){this.kind=y,this._styleExpression=I,this.isStateDependent=y!=="constant"&&!tu(I.expression)};Jc.prototype.evaluateWithoutErrorHandling=function(y,I,U,J,ne,fe){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,J,ne,fe)},Jc.prototype.evaluate=function(y,I,U,J,ne,fe){return this._styleExpression.evaluate(y,I,U,J,ne,fe)};var yc=function(y,I,U,J){this.kind=y,this.zoomStops=U,this._styleExpression=I,this.isStateDependent=y!=="camera"&&!tu(I.expression),this.interpolationType=J};yc.prototype.evaluateWithoutErrorHandling=function(y,I,U,J,ne,fe){return this._styleExpression.evaluateWithoutErrorHandling(y,I,U,J,ne,fe)},yc.prototype.evaluate=function(y,I,U,J,ne,fe){return this._styleExpression.evaluate(y,I,U,J,ne,fe)},yc.prototype.interpolationFactor=function(y,I,U){return this.interpolationType?Dl.interpolationFactor(this.interpolationType,y,I,U):0};function _c(m,y){if(m=eo(m,y),m.result==="error")return m;var I=m.value.expression,U=$h(I);if(!U&&!Gs(y))return yl([new Ks("","data expressions not supported")]);var J=Pu(I,["zoom"]);if(!J&&!Rs(y))return yl([new Ks("","zoom expressions not supported")]);var ne=B(I);if(!ne&&!J)return yl([new Ks("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(ne instanceof Ks)return yl([ne]);if(ne instanceof Dl&&!ia(y))return yl([new Ks("",'"interpolate" expressions cannot be used with this property')]);if(!ne)return Bo(U?new Jc("constant",m.value):new Jc("source",m.value));var fe=ne instanceof Dl?ne.interpolation:void 0;return Bo(U?new yc("camera",m.value,ne.labels,fe):new yc("composite",m.value,ne.labels,fe))}var le=function(y,I){this._parameters=y,this._specification=I,Rl(this,nu(this._parameters,this._specification))};le.deserialize=function(y){return new le(y._parameters,y._specification)},le.serialize=function(y){return{_parameters:y._parameters,_specification:y._specification}};function w(m,y){if(vs(m))return new le(m,y);if(Da(m)){var I=_c(m,y);if(I.result==="error")throw new Error(I.value.map(function(J){return J.key+": "+J.message}).join(", "));return I.value}else{var U=m;return typeof m=="string"&&y.type==="color"&&(U=ss.parse(m)),{kind:"constant",evaluate:function(){return U}}}}function B(m){var y=null;if(m instanceof Rc)y=B(m.result);else if(m instanceof Wu)for(var I=0,U=m.args;I<U.length;I+=1){var J=U[I];if(y=B(J),y)break}else(m instanceof yu||m instanceof Dl)&&m.input instanceof Ja&&m.input.name==="zoom"&&(y=m);return y instanceof Ks||m.eachChild(function(ne){var fe=B(ne);fe instanceof Ks?y=fe:!y&&fe?y=new Ks("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):y&&fe&&y!==fe&&(y=new Ks("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),y}function Q(m){var y={color:Tl,string:ko,number:Zn,enum:ko,boolean:Co,formatted:Al,resolvedImage:Hc};return m.type==="array"?eu(y[m.value]||So,m.length):y[m.type]}function ee(m){return m.type==="color"&&vs(m.default)?new ss(0,0,0,0):m.type==="color"?ss.parse(m.default)||null:m.default===void 0?null:m.default}function se(m){var y=m.key,I=m.value,U=m.valueSpec||{},J=m.objectElementValidators||{},ne=m.style,fe=m.styleSpec,Fe=[],Qe=Ka(I);if(Qe!=="object")return[new fa(y,I,"object expected, "+Qe+" found")];for(var st in I){var mt=st.split(".")[0],Xt=U[mt]||U["*"],ur=void 0;if(J[mt])ur=J[mt];else if(U[mt])ur=Wa;else if(J["*"])ur=J["*"];else if(U["*"])ur=Wa;else{Fe.push(new fa(y,I[st],'unknown property "'+st+'"'));continue}Fe=Fe.concat(ur({key:(y&&y+".")+st,value:I[st],valueSpec:Xt,style:ne,styleSpec:fe,object:I,objectKey:st},I))}for(var nr in U)J[nr]||U[nr].required&&U[nr].default===void 0&&I[nr]===void 0&&Fe.push(new fa(y,I,'missing required property "'+nr+'"'));return Fe}function qe(m){var y=m.value,I=m.valueSpec,U=m.style,J=m.styleSpec,ne=m.key,fe=m.arrayElementValidator||Wa;if(Ka(y)!=="array")return[new fa(ne,y,"array expected, "+Ka(y)+" found")];if(I.length&&y.length!==I.length)return[new fa(ne,y,"array length "+I.length+" expected, length "+y.length+" found")];if(I["min-length"]&&y.length<I["min-length"])return[new fa(ne,y,"array length at least "+I["min-length"]+" expected, length "+y.length+" found")];var Fe={type:I.value,values:I.values};J.$version<7&&(Fe.function=I.function),Ka(I.value)==="object"&&(Fe=I.value);for(var Qe=[],st=0;st<y.length;st++)Qe=Qe.concat(fe({array:y,arrayIndex:st,value:y[st],valueSpec:Fe,style:U,styleSpec:J,key:ne+"["+st+"]"}));return Qe}function je(m){var y=m.key,I=m.value,U=m.valueSpec,J=Ka(I);return J==="number"&&I!==I&&(J="NaN"),J!=="number"?[new fa(y,I,"number expected, "+J+" found")]:"minimum"in U&&I<U.minimum?[new fa(y,I,I+" is less than the minimum value "+U.minimum)]:"maximum"in U&&I>U.maximum?[new fa(y,I,I+" is greater than the maximum value "+U.maximum)]:[]}function it(m){var y=m.valueSpec,I=vo(m.value.type),U,J={},ne,fe,Fe=I!=="categorical"&&m.value.property===void 0,Qe=!Fe,st=Ka(m.value.stops)==="array"&&Ka(m.value.stops[0])==="array"&&Ka(m.value.stops[0][0])==="object",mt=se({key:m.key,value:m.value,valueSpec:m.styleSpec.function,style:m.style,styleSpec:m.styleSpec,objectElementValidators:{stops:Xt,default:Lr}});return I==="identity"&&Fe&&mt.push(new fa(m.key,m.value,'missing required property "property"')),I!=="identity"&&!m.value.stops&&mt.push(new fa(m.key,m.value,'missing required property "stops"')),I==="exponential"&&m.valueSpec.expression&&!ia(m.valueSpec)&&mt.push(new fa(m.key,m.value,"exponential functions not supported")),m.styleSpec.$version>=8&&(Qe&&!Gs(m.valueSpec)?mt.push(new fa(m.key,m.value,"property functions not supported")):Fe&&!Rs(m.valueSpec)&&mt.push(new fa(m.key,m.value,"zoom functions not supported"))),(I==="categorical"||st)&&m.value.property===void 0&&mt.push(new fa(m.key,m.value,'"property" property is required')),mt;function Xt(Yr){if(I==="identity")return[new fa(Yr.key,Yr.value,'identity function may not have a "stops" property')];var _i=[],si=Yr.value;return _i=_i.concat(qe({key:Yr.key,value:si,valueSpec:Yr.valueSpec,style:Yr.style,styleSpec:Yr.styleSpec,arrayElementValidator:ur})),Ka(si)==="array"&&si.length===0&&_i.push(new fa(Yr.key,si,"array must have at least one stop")),_i}function ur(Yr){var _i=[],si=Yr.value,Hi=Yr.key;if(Ka(si)!=="array")return[new fa(Hi,si,"array expected, "+Ka(si)+" found")];if(si.length!==2)return[new fa(Hi,si,"array length 2 expected, length "+si.length+" found")];if(st){if(Ka(si[0])!=="object")return[new fa(Hi,si,"object expected, "+Ka(si[0])+" found")];if(si[0].zoom===void 0)return[new fa(Hi,si,"object stop key must have zoom")];if(si[0].value===void 0)return[new fa(Hi,si,"object stop key must have value")];if(fe&&fe>vo(si[0].zoom))return[new fa(Hi,si[0].zoom,"stop zoom values must appear in ascending order")];vo(si[0].zoom)!==fe&&(fe=vo(si[0].zoom),ne=void 0,J={}),_i=_i.concat(se({key:Hi+"[0]",value:si[0],valueSpec:{zoom:{}},style:Yr.style,styleSpec:Yr.styleSpec,objectElementValidators:{zoom:je,value:nr}}))}else _i=_i.concat(nr({key:Hi+"[0]",value:si[0],valueSpec:{},style:Yr.style,styleSpec:Yr.styleSpec},si));return Da(Zl(si[1]))?_i.concat([new fa(Hi+"[1]",si[1],"expressions are not allowed in function stops.")]):_i.concat(Wa({key:Hi+"[1]",value:si[1],valueSpec:y,style:Yr.style,styleSpec:Yr.styleSpec}))}function nr(Yr,_i){var si=Ka(Yr.value),Hi=vo(Yr.value),Ei=Yr.value!==null?Yr.value:_i;if(!U)U=si;else if(si!==U)return[new fa(Yr.key,Ei,si+" stop domain type must match previous stop domain type "+U)];if(si!=="number"&&si!=="string"&&si!=="boolean")return[new fa(Yr.key,Ei,"stop domain value must be a number, string, or boolean")];if(si!=="number"&&I!=="categorical"){var Vi="number expected, "+si+" found";return Gs(y)&&I===void 0&&(Vi+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new fa(Yr.key,Ei,Vi)]}return I==="categorical"&&si==="number"&&(!isFinite(Hi)||Math.floor(Hi)!==Hi)?[new fa(Yr.key,Ei,"integer expected, found "+Hi)]:I!=="categorical"&&si==="number"&&ne!==void 0&&Hi<ne?[new fa(Yr.key,Ei,"stop domain values must appear in ascending order")]:(ne=Hi,I==="categorical"&&Hi in J?[new fa(Yr.key,Ei,"stop domain values must be unique")]:(J[Hi]=!0,[]))}function Lr(Yr){return Wa({key:Yr.key,value:Yr.value,valueSpec:y,style:Yr.style,styleSpec:Yr.styleSpec})}}function yt(m){var y=(m.expressionContext==="property"?_c:eo)(Zl(m.value),m.valueSpec);if(y.result==="error")return y.value.map(function(U){return new fa(""+m.key+U.key,m.value,U.message)});var I=y.value.expression||y.value._styleExpression.expression;if(m.expressionContext==="property"&&m.propertyKey==="text-font"&&!I.outputDefined())return[new fa(m.key,m.value,'Invalid data expression for "'+m.propertyKey+'". Output values must be contained as literals within the expression.')];if(m.expressionContext==="property"&&m.propertyType==="layout"&&!tu(I))return[new fa(m.key,m.value,'"feature-state" data expressions are not supported with layout properties.')];if(m.expressionContext==="filter"&&!tu(I))return[new fa(m.key,m.value,'"feature-state" data expressions are not supported with filters.')];if(m.expressionContext&&m.expressionContext.indexOf("cluster")===0){if(!Pu(I,["zoom","feature-state"]))return[new fa(m.key,m.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(m.expressionContext==="cluster-initial"&&!$h(I))return[new fa(m.key,m.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function Ot(m){var y=m.value,I=m.key,U=Ka(y);return U!=="boolean"?[new fa(I,y,"boolean expected, "+U+" found")]:[]}function Nt(m){var y=m.key,I=m.value,U=Ka(I);return U!=="string"?[new fa(y,I,"color expected, "+U+" found")]:Bf(I)===null?[new fa(y,I,'color expected, "'+I+'" found')]:[]}function hr(m){var y=m.key,I=m.value,U=m.valueSpec,J=[];return Array.isArray(U.values)?U.values.indexOf(vo(I))===-1&&J.push(new fa(y,I,"expected one of ["+U.values.join(", ")+"], "+JSON.stringify(I)+" found")):Object.keys(U.values).indexOf(vo(I))===-1&&J.push(new fa(y,I,"expected one of ["+Object.keys(U.values).join(", ")+"], "+JSON.stringify(I)+" found")),J}function Sr(m){if(m===!0||m===!1)return!0;if(!Array.isArray(m)||m.length===0)return!1;switch(m[0]){case"has":return m.length>=2&&m[1]!=="$id"&&m[1]!=="$type";case"in":return m.length>=3&&(typeof m[1]!="string"||Array.isArray(m[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return m.length!==3||Array.isArray(m[1])||Array.isArray(m[2]);case"any":case"all":for(var y=0,I=m.slice(1);y<I.length;y+=1){var U=I[y];if(!Sr(U)&&typeof U!="boolean")return!1}return!0;default:return!0}}var he={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function be(m){if(m==null)return{filter:function(){return!0},needGeometry:!1};Sr(m)||(m=Je(m));var y=eo(m,he);if(y.result==="error")throw new Error(y.value.map(function(U){return U.key+": "+U.message}).join(", "));var I=Oe(m);return{filter:function(U,J,ne){return y.value.evaluate(U,J,{},ne)},needGeometry:I}}function Pe(m,y){return m<y?-1:m>y?1:0}function Oe(m){if(!Array.isArray(m))return!1;if(m[0]==="within")return!0;for(var y=1;y<m.length;y++)if(Oe(m[y]))return!0;return!1}function Je(m){if(!m)return!0;var y=m[0];if(m.length<=1)return y!=="any";var I=y==="=="?He(m[1],m[2],"=="):y==="!="?Ut(He(m[1],m[2],"==")):y==="<"||y===">"||y==="<="||y===">="?He(m[1],m[2],y):y==="any"?et(m.slice(1)):y==="all"?["all"].concat(m.slice(1).map(Je)):y==="none"?["all"].concat(m.slice(1).map(Je).map(Ut)):y==="in"?Mt(m[1],m.slice(2)):y==="!in"?Ut(Mt(m[1],m.slice(2))):y==="has"?Dt(m[1]):y==="!has"?Ut(Dt(m[1])):y==="within"?m:!0;return I}function He(m,y,I){switch(m){case"$type":return["filter-type-"+I,y];case"$id":return["filter-id-"+I,y];default:return["filter-"+I,m,y]}}function et(m){return["any"].concat(m.map(Je))}function Mt(m,y){if(y.length===0)return!1;switch(m){case"$type":return["filter-type-in",["literal",y]];case"$id":return["filter-id-in",["literal",y]];default:return y.length>200&&!y.some(function(I){return typeof I!=typeof y[0]})?["filter-in-large",m,["literal",y.sort(Pe)]]:["filter-in-small",m,["literal",y]]}}function Dt(m){switch(m){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",m]}}function Ut(m){return["!",m]}function tr(m){return Sr(Zl(m.value))?yt(Rl({},m,{expressionContext:"filter",valueSpec:{value:"boolean"}})):mr(m)}function mr(m){var y=m.value,I=m.key;if(Ka(y)!=="array")return[new fa(I,y,"array expected, "+Ka(y)+" found")];var U=m.styleSpec,J,ne=[];if(y.length<1)return[new fa(I,y,"filter array must have at least 1 element")];switch(ne=ne.concat(hr({key:I+"[0]",value:y[0],valueSpec:U.filter_operator,style:m.style,styleSpec:m.styleSpec})),vo(y[0])){case"<":case"<=":case">":case">=":y.length>=2&&vo(y[1])==="$type"&&ne.push(new fa(I,y,'"$type" cannot be use with operator "'+y[0]+'"'));case"==":case"!=":y.length!==3&&ne.push(new fa(I,y,'filter array for operator "'+y[0]+'" must have 3 elements'));case"in":case"!in":y.length>=2&&(J=Ka(y[1]),J!=="string"&&ne.push(new fa(I+"[1]",y[1],"string expected, "+J+" found")));for(var fe=2;fe<y.length;fe++)J=Ka(y[fe]),vo(y[1])==="$type"?ne=ne.concat(hr({key:I+"["+fe+"]",value:y[fe],valueSpec:U.geometry_type,style:m.style,styleSpec:m.styleSpec})):J!=="string"&&J!=="number"&&J!=="boolean"&&ne.push(new fa(I+"["+fe+"]",y[fe],"string, number, or boolean expected, "+J+" found"));break;case"any":case"all":case"none":for(var Fe=1;Fe<y.length;Fe++)ne=ne.concat(mr({key:I+"["+Fe+"]",value:y[Fe],style:m.style,styleSpec:m.styleSpec}));break;case"has":case"!has":J=Ka(y[1]),y.length!==2?ne.push(new fa(I,y,'filter array for "'+y[0]+'" operator must have 2 elements')):J!=="string"&&ne.push(new fa(I+"[1]",y[1],"string expected, "+J+" found"));break;case"within":J=Ka(y[1]),y.length!==2?ne.push(new fa(I,y,'filter array for "'+y[0]+'" operator must have 2 elements')):J!=="object"&&ne.push(new fa(I+"[1]",y[1],"object expected, "+J+" found"));break}return ne}function Rr(m,y){var I=m.key,U=m.style,J=m.styleSpec,ne=m.value,fe=m.objectKey,Fe=J[y+"_"+m.layerType];if(!Fe)return[];var Qe=fe.match(/^(.*)-transition$/);if(y==="paint"&&Qe&&Fe[Qe[1]]&&Fe[Qe[1]].transition)return Wa({key:I,value:ne,valueSpec:J.transition,style:U,styleSpec:J});var st=m.valueSpec||Fe[fe];if(!st)return[new fa(I,ne,'unknown property "'+fe+'"')];var mt;if(Ka(ne)==="string"&&Gs(st)&&!st.tokens&&(mt=/^{([^}]+)}$/.exec(ne)))return[new fa(I,ne,'"'+fe+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(mt[1])+" }`.")];var Xt=[];return m.layerType==="symbol"&&(fe==="text-field"&&U&&!U.glyphs&&Xt.push(new fa(I,ne,'use of "text-field" requires a style "glyphs" property')),fe==="text-font"&&vs(Zl(ne))&&vo(ne.type)==="identity"&&Xt.push(new fa(I,ne,'"text-font" does not support identity functions'))),Xt.concat(Wa({key:m.key,value:ne,valueSpec:st,style:U,styleSpec:J,expressionContext:"property",propertyType:y,propertyKey:fe}))}function zr(m){return Rr(m,"paint")}function Xr(m){return Rr(m,"layout")}function di(m){var y=[],I=m.value,U=m.key,J=m.style,ne=m.styleSpec;!I.type&&!I.ref&&y.push(new fa(U,I,'either "type" or "ref" is required'));var fe=vo(I.type),Fe=vo(I.ref);if(I.id)for(var Qe=vo(I.id),st=0;st<m.arrayIndex;st++){var mt=J.layers[st];vo(mt.id)===Qe&&y.push(new fa(U,I.id,'duplicate layer id "'+I.id+'", previously used at line '+mt.id.__line__))}if("ref"in I){["type","source","source-layer","filter","layout"].forEach(function(Lr){Lr in I&&y.push(new fa(U,I[Lr],'"'+Lr+'" is prohibited for ref layers'))});var Xt;J.layers.forEach(function(Lr){vo(Lr.id)===Fe&&(Xt=Lr)}),Xt?Xt.ref?y.push(new fa(U,I.ref,"ref cannot reference another ref layer")):fe=vo(Xt.type):y.push(new fa(U,I.ref,'ref layer "'+Fe+'" not found'))}else if(fe!=="background")if(!I.source)y.push(new fa(U,I,'missing required property "source"'));else{var ur=J.sources&&J.sources[I.source],nr=ur&&vo(ur.type);ur?nr==="vector"&&fe==="raster"?y.push(new fa(U,I.source,'layer "'+I.id+'" requires a raster source')):nr==="raster"&&fe!=="raster"?y.push(new fa(U,I.source,'layer "'+I.id+'" requires a vector source')):nr==="vector"&&!I["source-layer"]?y.push(new fa(U,I,'layer "'+I.id+'" must specify a "source-layer"')):nr==="raster-dem"&&fe!=="hillshade"?y.push(new fa(U,I.source,"raster-dem source can only be used with layer type 'hillshade'.")):fe==="line"&&I.paint&&I.paint["line-gradient"]&&(nr!=="geojson"||!ur.lineMetrics)&&y.push(new fa(U,I,'layer "'+I.id+'" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):y.push(new fa(U,I.source,'source "'+I.source+'" not found'))}return y=y.concat(se({key:U,value:I,valueSpec:ne.layer,style:m.style,styleSpec:m.styleSpec,objectElementValidators:{"*":function(){return[]},type:function(){return Wa({key:U+".type",value:I.type,valueSpec:ne.layer.type,style:m.style,styleSpec:m.styleSpec,object:I,objectKey:"type"})},filter:tr,layout:function(Yr){return se({layer:I,key:Yr.key,value:Yr.value,style:Yr.style,styleSpec:Yr.styleSpec,objectElementValidators:{"*":function(si){return Xr(Rl({layerType:fe},si))}}})},paint:function(Yr){return se({layer:I,key:Yr.key,value:Yr.value,style:Yr.style,styleSpec:Yr.styleSpec,objectElementValidators:{"*":function(si){return zr(Rl({layerType:fe},si))}}})}}})),y}function Li(m){var y=m.value,I=m.key,U=Ka(y);return U!=="string"?[new fa(I,y,"string expected, "+U+" found")]:[]}var Ci={promoteId:Mn};function Qi(m){var y=m.value,I=m.key,U=m.styleSpec,J=m.style;if(!y.type)return[new fa(I,y,'"type" is required')];var ne=vo(y.type),fe;switch(ne){case"vector":case"raster":case"raster-dem":return fe=se({key:I,value:y,valueSpec:U["source_"+ne.replace("-","_")],style:m.style,styleSpec:U,objectElementValidators:Ci}),fe;case"geojson":if(fe=se({key:I,value:y,valueSpec:U.source_geojson,style:J,styleSpec:U,objectElementValidators:Ci}),y.cluster)for(var Fe in y.clusterProperties){var Qe=y.clusterProperties[Fe],st=Qe[0],mt=Qe[1],Xt=typeof st=="string"?[st,["accumulated"],["get",Fe]]:st;fe.push.apply(fe,yt({key:I+"."+Fe+".map",value:mt,expressionContext:"cluster-map"})),fe.push.apply(fe,yt({key:I+"."+Fe+".reduce",value:Xt,expressionContext:"cluster-reduce"}))}return fe;case"video":return se({key:I,value:y,valueSpec:U.source_video,style:J,styleSpec:U});case"image":return se({key:I,value:y,valueSpec:U.source_image,style:J,styleSpec:U});case"canvas":return[new fa(I,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return hr({key:I+".type",value:y.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:J,styleSpec:U})}}function Mn(m){var y=m.key,I=m.value;if(Ka(I)==="string")return Li({key:y,value:I});var U=[];for(var J in I)U.push.apply(U,Li({key:y+"."+J,value:I[J]}));return U}function pa(m){var y=m.value,I=m.styleSpec,U=I.light,J=m.style,ne=[],fe=Ka(y);if(y===void 0)return ne;if(fe!=="object")return ne=ne.concat([new fa("light",y,"object expected, "+fe+" found")]),ne;for(var Fe in y){var Qe=Fe.match(/^(.*)-transition$/);Qe&&U[Qe[1]]&&U[Qe[1]].transition?ne=ne.concat(Wa({key:Fe,value:y[Fe],valueSpec:I.transition,style:J,styleSpec:I})):U[Fe]?ne=ne.concat(Wa({key:Fe,value:y[Fe],valueSpec:U[Fe],style:J,styleSpec:I})):ne=ne.concat([new fa(Fe,y[Fe],'unknown property "'+Fe+'"')])}return ne}function ea(m){return Li(m).length===0?[]:yt(m)}function Ga(m){return Li(m).length===0?[]:yt(m)}var To={"*":function(){return[]},array:qe,boolean:Ot,number:je,color:Nt,constants:Qu,enum:hr,filter:tr,function:it,layer:di,object:se,source:Qi,light:pa,string:Li,formatted:ea,resolvedImage:Ga};function Wa(m){var y=m.value,I=m.valueSpec,U=m.styleSpec;if(I.expression&&vs(vo(y)))return it(m);if(I.expression&&Da(Zl(y)))return yt(m);if(I.type&&To[I.type])return To[I.type](m);var J=se(Rl({},m,{valueSpec:I.type?U[I.type]:I}));return J}function co(m){var y=m.value,I=m.key,U=Li(m);return U.length||(y.indexOf("{fontstack}")===-1&&U.push(new fa(I,y,'"glyphs" url must include a "{fontstack}" token')),y.indexOf("{range}")===-1&&U.push(new fa(I,y,'"glyphs" url must include a "{range}" token'))),U}function Ro(m,y){y===void 0&&(y=on);var I=[];return I=I.concat(Wa({key:"",value:m,valueSpec:y.$root,styleSpec:y,style:m,objectElementValidators:{glyphs:co,"*":function(){return[]}}})),m.constants&&(I=I.concat(Qu({key:"constants",value:m.constants,style:m,styleSpec:y}))),Ds(I)}Ro.source=As(Qi),Ro.light=As(pa),Ro.layer=As(di),Ro.filter=As(tr),Ro.paintProperty=As(zr),Ro.layoutProperty=As(Xr);function Ds(m){return[].concat(m).sort(function(y,I){return y.line-I.line})}function As(m){return function(){for(var y=[],I=arguments.length;I--;)y[I]=arguments[I];return Ds(m.apply(this,y))}}var yo=Ro,po=yo.light,_l=yo.paintProperty,Hl=yo.layoutProperty;function Zu(m,y){var I=!1;if(y&&y.length)for(var U=0,J=y;U<J.length;U+=1){var ne=J[U];m.fire(new oa(new Error(ne.message))),I=!0}return I}var cu=au,el=3;function au(m,y,I){var U=this.cells=[];if(m instanceof ArrayBuffer){this.arrayBuffer=m;var J=new Int32Array(this.arrayBuffer);m=J[0],y=J[1],I=J[2],this.d=y+2*I;for(var ne=0;ne<this.d*this.d;ne++){var fe=J[el+ne],Fe=J[el+ne+1];U.push(fe===Fe?null:J.subarray(fe,Fe))}var Qe=J[el+U.length],st=J[el+U.length+1];this.keys=J.subarray(Qe,st),this.bboxes=J.subarray(st),this.insert=this._insertReadonly}else{this.d=y+2*I;for(var mt=0;mt<this.d*this.d;mt++)U.push([]);this.keys=[],this.bboxes=[]}this.n=y,this.extent=m,this.padding=I,this.scale=y/m,this.uid=0;var Xt=I/y*m;this.min=-Xt,this.max=m+Xt}au.prototype.insert=function(m,y,I,U,J){this._forEachCell(y,I,U,J,this._insertCell,this.uid++),this.keys.push(m),this.bboxes.push(y),this.bboxes.push(I),this.bboxes.push(U),this.bboxes.push(J)},au.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},au.prototype._insertCell=function(m,y,I,U,J,ne){this.cells[J].push(ne)},au.prototype.query=function(m,y,I,U,J){var ne=this.min,fe=this.max;if(m<=ne&&y<=ne&&fe<=I&&fe<=U&&!J)return Array.prototype.slice.call(this.keys);var Fe=[],Qe={};return this._forEachCell(m,y,I,U,this._queryCell,Fe,Qe,J),Fe},au.prototype._queryCell=function(m,y,I,U,J,ne,fe,Fe){var Qe=this.cells[J];if(Qe!==null)for(var st=this.keys,mt=this.bboxes,Xt=0;Xt<Qe.length;Xt++){var ur=Qe[Xt];if(fe[ur]===void 0){var nr=ur*4;(Fe?Fe(mt[nr+0],mt[nr+1],mt[nr+2],mt[nr+3]):m<=mt[nr+2]&&y<=mt[nr+3]&&I>=mt[nr+0]&&U>=mt[nr+1])?(fe[ur]=!0,ne.push(st[ur])):fe[ur]=!1}}},au.prototype._forEachCell=function(m,y,I,U,J,ne,fe,Fe){for(var Qe=this._convertToCellCoord(m),st=this._convertToCellCoord(y),mt=this._convertToCellCoord(I),Xt=this._convertToCellCoord(U),ur=Qe;ur<=mt;ur++)for(var nr=st;nr<=Xt;nr++){var Lr=this.d*nr+ur;if(!(Fe&&!Fe(this._convertFromCellCoord(ur),this._convertFromCellCoord(nr),this._convertFromCellCoord(ur+1),this._convertFromCellCoord(nr+1)))&&J.call(this,m,y,I,U,Lr,ne,fe,Fe))return}},au.prototype._convertFromCellCoord=function(m){return(m-this.padding)/this.scale},au.prototype._convertToCellCoord=function(m){return Math.max(0,Math.min(this.d-1,Math.floor(m*this.scale)+this.padding))},au.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var m=this.cells,y=el+this.cells.length+1+1,I=0,U=0;U<this.cells.length;U++)I+=this.cells[U].length;var J=new Int32Array(y+I+this.keys.length+this.bboxes.length);J[0]=this.extent,J[1]=this.n,J[2]=this.padding;for(var ne=y,fe=0;fe<m.length;fe++){var Fe=m[fe];J[el+fe]=ne,J.set(Fe,ne),ne+=Fe.length}return J[el+m.length]=ne,J.set(this.keys,ne),ne+=this.keys.length,J[el+m.length+1]=ne,J.set(this.bboxes,ne),ne+=this.bboxes.length,J.buffer};var zc=f.ImageData,zl=f.ImageBitmap,Fl={};function Z(m,y,I){I===void 0&&(I={}),Object.defineProperty(y,"_classRegistryKey",{value:m,writeable:!1}),Fl[m]={klass:y,omit:I.omit||[],shallow:I.shallow||[]}}Z("Object",Object),cu.serialize=function(y,I){var U=y.toArrayBuffer();return I&&I.push(U),{buffer:U}},cu.deserialize=function(y){return new cu(y.buffer)},Z("Grid",cu),Z("Color",ss),Z("Error",Error),Z("ResolvedImage",Js),Z("StylePropertyFunction",le),Z("StyleExpression",Dc,{omit:["_evaluator"]}),Z("ZoomDependentExpression",yc),Z("ZoomConstantExpression",Jc),Z("CompoundExpression",Ja,{omit:["_evaluate"]});for(var oe in Ua)Ua[oe]._classRegistryKey||Z("Expression_"+oe,Ua[oe]);function we(m){return m&&typeof ArrayBuffer!="undefined"&&(m instanceof ArrayBuffer||m.constructor&&m.constructor.name==="ArrayBuffer")}function Be(m){return zl&&m instanceof zl}function Ue(m,y){if(m==null||typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m instanceof Boolean||m instanceof Number||m instanceof String||m instanceof Date||m instanceof RegExp)return m;if(we(m)||Be(m))return y&&y.push(m),m;if(ArrayBuffer.isView(m)){var I=m;return y&&y.push(I.buffer),I}if(m instanceof zc)return y&&y.push(m.data.buffer),m;if(Array.isArray(m)){for(var U=[],J=0,ne=m;J<ne.length;J+=1){var fe=ne[J];U.push(Ue(fe,y))}return U}if(typeof m=="object"){var Fe=m.constructor,Qe=Fe._classRegistryKey;if(!Qe)throw new Error("can't serialize object of unregistered class");var st=Fe.serialize?Fe.serialize(m,y):{};if(!Fe.serialize){for(var mt in m)if(m.hasOwnProperty(mt)&&!(Fl[Qe].omit.indexOf(mt)>=0)){var Xt=m[mt];st[mt]=Fl[Qe].shallow.indexOf(mt)>=0?Xt:Ue(Xt,y)}m instanceof Error&&(st.message=m.message)}if(st.$name)throw new Error("$name property is reserved for worker serialization logic.");return Qe!=="Object"&&(st.$name=Qe),st}throw new Error("can't serialize object of type "+typeof m)}function We(m){if(m==null||typeof m=="boolean"||typeof m=="number"||typeof m=="string"||m instanceof Boolean||m instanceof Number||m instanceof String||m instanceof Date||m instanceof RegExp||we(m)||Be(m)||ArrayBuffer.isView(m)||m instanceof zc)return m;if(Array.isArray(m))return m.map(We);if(typeof m=="object"){var y=m.$name||"Object",I=Fl[y],U=I.klass;if(!U)throw new Error("can't deserialize unregistered class "+y);if(U.deserialize)return U.deserialize(m);for(var J=Object.create(U.prototype),ne=0,fe=Object.keys(m);ne<fe.length;ne+=1){var Fe=fe[ne];if(Fe!=="$name"){var Qe=m[Fe];J[Fe]=Fl[y].shallow.indexOf(Fe)>=0?Qe:We(Qe)}}return J}throw new Error("can't deserialize object of type "+typeof m)}var wt=function(){this.first=!0};wt.prototype.update=function(y,I){var U=Math.floor(y);return this.first?(this.first=!1,this.lastIntegerZoom=U,this.lastIntegerZoomTime=0,this.lastZoom=y,this.lastFloorZoom=U,!0):(this.lastFloorZoom>U?(this.lastIntegerZoom=U+1,this.lastIntegerZoomTime=I):this.lastFloorZoom<U&&(this.lastIntegerZoom=U,this.lastIntegerZoomTime=I),y!==this.lastZoom?(this.lastZoom=y,this.lastFloorZoom=U,!0):!1)};var tt={"Latin-1 Supplement":function(m){return m>=128&&m<=255},Arabic:function(m){return m>=1536&&m<=1791},"Arabic Supplement":function(m){return m>=1872&&m<=1919},"Arabic Extended-A":function(m){return m>=2208&&m<=2303},"Hangul Jamo":function(m){return m>=4352&&m<=4607},"Unified Canadian Aboriginal Syllabics":function(m){return m>=5120&&m<=5759},Khmer:function(m){return m>=6016&&m<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(m){return m>=6320&&m<=6399},"General Punctuation":function(m){return m>=8192&&m<=8303},"Letterlike Symbols":function(m){return m>=8448&&m<=8527},"Number Forms":function(m){return m>=8528&&m<=8591},"Miscellaneous Technical":function(m){return m>=8960&&m<=9215},"Control Pictures":function(m){return m>=9216&&m<=9279},"Optical Character Recognition":function(m){return m>=9280&&m<=9311},"Enclosed Alphanumerics":function(m){return m>=9312&&m<=9471},"Geometric Shapes":function(m){return m>=9632&&m<=9727},"Miscellaneous Symbols":function(m){return m>=9728&&m<=9983},"Miscellaneous Symbols and Arrows":function(m){return m>=11008&&m<=11263},"CJK Radicals Supplement":function(m){return m>=11904&&m<=12031},"Kangxi Radicals":function(m){return m>=12032&&m<=12255},"Ideographic Description Characters":function(m){return m>=12272&&m<=12287},"CJK Symbols and Punctuation":function(m){return m>=12288&&m<=12351},Hiragana:function(m){return m>=12352&&m<=12447},Katakana:function(m){return m>=12448&&m<=12543},Bopomofo:function(m){return m>=12544&&m<=12591},"Hangul Compatibility Jamo":function(m){return m>=12592&&m<=12687},Kanbun:function(m){return m>=12688&&m<=12703},"Bopomofo Extended":function(m){return m>=12704&&m<=12735},"CJK Strokes":function(m){return m>=12736&&m<=12783},"Katakana Phonetic Extensions":function(m){return m>=12784&&m<=12799},"Enclosed CJK Letters and Months":function(m){return m>=12800&&m<=13055},"CJK Compatibility":function(m){return m>=13056&&m<=13311},"CJK Unified Ideographs Extension A":function(m){return m>=13312&&m<=19903},"Yijing Hexagram Symbols":function(m){return m>=19904&&m<=19967},"CJK Unified Ideographs":function(m){return m>=19968&&m<=40959},"Yi Syllables":function(m){return m>=40960&&m<=42127},"Yi Radicals":function(m){return m>=42128&&m<=42191},"Hangul Jamo Extended-A":function(m){return m>=43360&&m<=43391},"Hangul Syllables":function(m){return m>=44032&&m<=55215},"Hangul Jamo Extended-B":function(m){return m>=55216&&m<=55295},"Private Use Area":function(m){return m>=57344&&m<=63743},"CJK Compatibility Ideographs":function(m){return m>=63744&&m<=64255},"Arabic Presentation Forms-A":function(m){return m>=64336&&m<=65023},"Vertical Forms":function(m){return m>=65040&&m<=65055},"CJK Compatibility Forms":function(m){return m>=65072&&m<=65103},"Small Form Variants":function(m){return m>=65104&&m<=65135},"Arabic Presentation Forms-B":function(m){return m>=65136&&m<=65279},"Halfwidth and Fullwidth Forms":function(m){return m>=65280&&m<=65519}};function zt(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(Ir(U.charCodeAt(0)))return!0}return!1}function or(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(!lr(U.charCodeAt(0)))return!1}return!0}function lr(m){return!(tt.Arabic(m)||tt["Arabic Supplement"](m)||tt["Arabic Extended-A"](m)||tt["Arabic Presentation Forms-A"](m)||tt["Arabic Presentation Forms-B"](m))}function Dr(m){return m<11904?!1:!!(tt["Bopomofo Extended"](m)||tt.Bopomofo(m)||tt["CJK Compatibility Forms"](m)||tt["CJK Compatibility Ideographs"](m)||tt["CJK Compatibility"](m)||tt["CJK Radicals Supplement"](m)||tt["CJK Strokes"](m)||tt["CJK Symbols and Punctuation"](m)||tt["CJK Unified Ideographs Extension A"](m)||tt["CJK Unified Ideographs"](m)||tt["Enclosed CJK Letters and Months"](m)||tt["Halfwidth and Fullwidth Forms"](m)||tt.Hiragana(m)||tt["Ideographic Description Characters"](m)||tt["Kangxi Radicals"](m)||tt["Katakana Phonetic Extensions"](m)||tt.Katakana(m)||tt["Vertical Forms"](m)||tt["Yi Radicals"](m)||tt["Yi Syllables"](m))}function Ir(m){return m===746||m===747?!0:m<4352?!1:!!(tt["Bopomofo Extended"](m)||tt.Bopomofo(m)||tt["CJK Compatibility Forms"](m)&&!(m>=65097&&m<=65103)||tt["CJK Compatibility Ideographs"](m)||tt["CJK Compatibility"](m)||tt["CJK Radicals Supplement"](m)||tt["CJK Strokes"](m)||tt["CJK Symbols and Punctuation"](m)&&!(m>=12296&&m<=12305)&&!(m>=12308&&m<=12319)&&m!==12336||tt["CJK Unified Ideographs Extension A"](m)||tt["CJK Unified Ideographs"](m)||tt["Enclosed CJK Letters and Months"](m)||tt["Hangul Compatibility Jamo"](m)||tt["Hangul Jamo Extended-A"](m)||tt["Hangul Jamo Extended-B"](m)||tt["Hangul Jamo"](m)||tt["Hangul Syllables"](m)||tt.Hiragana(m)||tt["Ideographic Description Characters"](m)||tt.Kanbun(m)||tt["Kangxi Radicals"](m)||tt["Katakana Phonetic Extensions"](m)||tt.Katakana(m)&&m!==12540||tt["Halfwidth and Fullwidth Forms"](m)&&m!==65288&&m!==65289&&m!==65293&&!(m>=65306&&m<=65310)&&m!==65339&&m!==65341&&m!==65343&&!(m>=65371&&m<=65503)&&m!==65507&&!(m>=65512&&m<=65519)||tt["Small Form Variants"](m)&&!(m>=65112&&m<=65118)&&!(m>=65123&&m<=65126)||tt["Unified Canadian Aboriginal Syllabics"](m)||tt["Unified Canadian Aboriginal Syllabics Extended"](m)||tt["Vertical Forms"](m)||tt["Yijing Hexagram Symbols"](m)||tt["Yi Syllables"](m)||tt["Yi Radicals"](m))}function oi(m){return!!(tt["Latin-1 Supplement"](m)&&(m===167||m===169||m===174||m===177||m===188||m===189||m===190||m===215||m===247)||tt["General Punctuation"](m)&&(m===8214||m===8224||m===8225||m===8240||m===8241||m===8251||m===8252||m===8258||m===8263||m===8264||m===8265||m===8273)||tt["Letterlike Symbols"](m)||tt["Number Forms"](m)||tt["Miscellaneous Technical"](m)&&(m>=8960&&m<=8967||m>=8972&&m<=8991||m>=8996&&m<=9e3||m===9003||m>=9085&&m<=9114||m>=9150&&m<=9165||m===9167||m>=9169&&m<=9179||m>=9186&&m<=9215)||tt["Control Pictures"](m)&&m!==9251||tt["Optical Character Recognition"](m)||tt["Enclosed Alphanumerics"](m)||tt["Geometric Shapes"](m)||tt["Miscellaneous Symbols"](m)&&!(m>=9754&&m<=9759)||tt["Miscellaneous Symbols and Arrows"](m)&&(m>=11026&&m<=11055||m>=11088&&m<=11097||m>=11192&&m<=11243)||tt["CJK Symbols and Punctuation"](m)||tt.Katakana(m)||tt["Private Use Area"](m)||tt["CJK Compatibility Forms"](m)||tt["Small Form Variants"](m)||tt["Halfwidth and Fullwidth Forms"](m)||m===8734||m===8756||m===8757||m>=9984&&m<=10087||m>=10102&&m<=10131||m===65532||m===65533)}function ui(m){return!(Ir(m)||oi(m))}function qr(m){return tt.Arabic(m)||tt["Arabic Supplement"](m)||tt["Arabic Extended-A"](m)||tt["Arabic Presentation Forms-A"](m)||tt["Arabic Presentation Forms-B"](m)}function Kr(m){return m>=1424&&m<=2303||tt["Arabic Presentation Forms-A"](m)||tt["Arabic Presentation Forms-B"](m)}function ii(m,y){return!(!y&&Kr(m)||m>=2304&&m<=3583||m>=3840&&m<=4255||tt.Khmer(m))}function vi(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(Kr(U.charCodeAt(0)))return!0}return!1}function ci(m,y){for(var I=0,U=m;I<U.length;I+=1){var J=U[I];if(!ii(J.charCodeAt(0),y))return!1}return!0}var Jr={unavailable:"unavailable",deferred:"deferred",loading:"loading",loaded:"loaded",error:"error"},un=null,dn=Jr.unavailable,En=null,Nn=function(m){m&&typeof m=="string"&&m.indexOf("NetworkError")>-1&&(dn=Jr.error),un&&un(m)};function ga(){ya.fire(new jo("pluginStateChange",{pluginStatus:dn,pluginURL:En}))}var ya=new Sn,so=function(){return dn},wa=function(m){return m({pluginStatus:dn,pluginURL:En}),ya.on("pluginStateChange",m),m},io=function(m,y,I){if(I===void 0&&(I=!1),dn===Jr.deferred||dn===Jr.loading||dn===Jr.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");En=nt.resolveURL(m),dn=Jr.deferred,un=y,ga(),I||Ss()},Ss=function(){if(dn!==Jr.deferred||!En)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");dn=Jr.loading,ga(),En&&Zr({url:En},function(m){m?Nn(m):(dn=Jr.loaded,ga())})},_s={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return dn===Jr.loaded||_s.applyArabicShaping!=null},isLoading:function(){return dn===Jr.loading},setState:function(y){dn=y.pluginStatus,En=y.pluginURL},isParsed:function(){return _s.applyArabicShaping!=null&&_s.processBidirectionalText!=null&&_s.processStyledBidirectionalText!=null},getPluginURL:function(){return En}},Ns=function(){!_s.isLoading()&&!_s.isLoaded()&&so()==="deferred"&&Ss()},pn=function(y,I){this.zoom=y,I?(this.now=I.now,this.fadeDuration=I.fadeDuration,this.zoomHistory=I.zoomHistory,this.transition=I.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new wt,this.transition={})};pn.prototype.isSupportedScript=function(y){return ci(y,_s.isLoaded())},pn.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},pn.prototype.getCrossfadeParameters=function(){var y=this.zoom,I=y-Math.floor(y),U=this.crossFadingFactor();return y>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:I+(1-I)*U}:{fromScale:.5,toScale:1,t:1-(1-U)*I}};var za=function(y,I){this.property=y,this.value=I,this.expression=w(I===void 0?y.specification.default:I,y.specification)};za.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},za.prototype.possiblyEvaluate=function(y,I,U){return this.property.possiblyEvaluate(this,y,I,U)};var Lo=function(y){this.property=y,this.value=new za(y,void 0)};Lo.prototype.transitioned=function(y,I){return new js(this.property,this.value,I,_({},y.transition,this.transition),y.now)},Lo.prototype.untransitioned=function(){return new js(this.property,this.value,null,{},0)};var Fo=function(y){this._properties=y,this._values=Object.create(y.defaultTransitionablePropertyValues)};Fo.prototype.getValue=function(y){return G(this._values[y].value.value)},Fo.prototype.setValue=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Lo(this._values[y].property)),this._values[y].value=new za(this._values[y].property,I===null?void 0:G(I))},Fo.prototype.getTransition=function(y){return G(this._values[y].transition)},Fo.prototype.setTransition=function(y,I){this._values.hasOwnProperty(y)||(this._values[y]=new Lo(this._values[y].property)),this._values[y].transition=G(I)||void 0},Fo.prototype.serialize=function(){for(var y={},I=0,U=Object.keys(this._values);I<U.length;I+=1){var J=U[I],ne=this.getValue(J);ne!==void 0&&(y[J]=ne);var fe=this.getTransition(J);fe!==void 0&&(y[J+"-transition"]=fe)}return y},Fo.prototype.transitioned=function(y,I){for(var U=new xl(this._properties),J=0,ne=Object.keys(this._values);J<ne.length;J+=1){var fe=ne[J];U._values[fe]=this._values[fe].transitioned(y,I._values[fe])}return U},Fo.prototype.untransitioned=function(){for(var y=new xl(this._properties),I=0,U=Object.keys(this._values);I<U.length;I+=1){var J=U[I];y._values[J]=this._values[J].untransitioned()}return y};var js=function(y,I,U,J,ne){this.property=y,this.value=I,this.begin=ne+J.delay||0,this.end=this.begin+J.duration||0,y.specification.transition&&(J.delay||J.duration)&&(this.prior=U)};js.prototype.possiblyEvaluate=function(y,I,U){var J=y.now||0,ne=this.value.possiblyEvaluate(y,I,U),fe=this.prior;if(fe){if(J>this.end)return this.prior=null,ne;if(this.value.isDataDriven())return this.prior=null,ne;if(J<this.begin)return fe.possiblyEvaluate(y,I,U);var Fe=(J-this.begin)/(this.end-this.begin);return this.property.interpolate(fe.possiblyEvaluate(y,I,U),ne,v(Fe))}else return ne};var xl=function(y){this._properties=y,this._values=Object.create(y.defaultTransitioningPropertyValues)};xl.prototype.possiblyEvaluate=function(y,I,U){for(var J=new xc(this._properties),ne=0,fe=Object.keys(this._values);ne<fe.length;ne+=1){var Fe=fe[ne];J._values[Fe]=this._values[Fe].possiblyEvaluate(y,I,U)}return J},xl.prototype.hasTransition=function(){for(var y=0,I=Object.keys(this._values);y<I.length;y+=1){var U=I[y];if(this._values[U].prior)return!0}return!1};var fu=function(y){this._properties=y,this._values=Object.create(y.defaultPropertyValues)};fu.prototype.getValue=function(y){return G(this._values[y].value)},fu.prototype.setValue=function(y,I){this._values[y]=new za(this._values[y].property,I===null?void 0:G(I))},fu.prototype.serialize=function(){for(var y={},I=0,U=Object.keys(this._values);I<U.length;I+=1){var J=U[I],ne=this.getValue(J);ne!==void 0&&(y[J]=ne)}return y},fu.prototype.possiblyEvaluate=function(y,I,U){for(var J=new xc(this._properties),ne=0,fe=Object.keys(this._values);ne<fe.length;ne+=1){var Fe=fe[ne];J._values[Fe]=this._values[Fe].possiblyEvaluate(y,I,U)}return J};var dl=function(y,I,U){this.property=y,this.value=I,this.parameters=U};dl.prototype.isConstant=function(){return this.value.kind==="constant"},dl.prototype.constantOr=function(y){return this.value.kind==="constant"?this.value.value:y},dl.prototype.evaluate=function(y,I,U,J){return this.property.evaluate(this.value,this.parameters,y,I,U,J)};var xc=function(y){this._properties=y,this._values=Object.create(y.defaultPossiblyEvaluatedValues)};xc.prototype.get=function(y){return this._values[y]};var At=function(y){this.specification=y};At.prototype.possiblyEvaluate=function(y,I){return y.expression.evaluate(I)},At.prototype.interpolate=function(y,I,U){var J=Gu[this.specification.type];return J?J(y,I,U):y};var Er=function(y,I){this.specification=y,this.overrides=I};Er.prototype.possiblyEvaluate=function(y,I,U,J){return y.expression.kind==="constant"||y.expression.kind==="camera"?new dl(this,{kind:"constant",value:y.expression.evaluate(I,null,{},U,J)},I):new dl(this,y.expression,I)},Er.prototype.interpolate=function(y,I,U){if(y.value.kind!=="constant"||I.value.kind!=="constant")return y;if(y.value.value===void 0||I.value.value===void 0)return new dl(this,{kind:"constant",value:void 0},y.parameters);var J=Gu[this.specification.type];return J?new dl(this,{kind:"constant",value:J(y.value.value,I.value.value,U)},y.parameters):y},Er.prototype.evaluate=function(y,I,U,J,ne,fe){return y.kind==="constant"?y.value:y.evaluate(I,U,J,ne,fe)};var Wr=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.possiblyEvaluate=function(U,J,ne,fe){if(U.value===void 0)return new dl(this,{kind:"constant",value:void 0},J);if(U.expression.kind==="constant"){var Fe=U.expression.evaluate(J,null,{},ne,fe),Qe=U.property.specification.type==="resolvedImage",st=Qe&&typeof Fe!="string"?Fe.name:Fe,mt=this._calculate(st,st,st,J);return new dl(this,{kind:"constant",value:mt},J)}else if(U.expression.kind==="camera"){var Xt=this._calculate(U.expression.evaluate({zoom:J.zoom-1}),U.expression.evaluate({zoom:J.zoom}),U.expression.evaluate({zoom:J.zoom+1}),J);return new dl(this,{kind:"constant",value:Xt},J)}else return new dl(this,U.expression,J)},y.prototype.evaluate=function(U,J,ne,fe,Fe,Qe){if(U.kind==="source"){var st=U.evaluate(J,ne,fe,Fe,Qe);return this._calculate(st,st,st,J)}else return U.kind==="composite"?this._calculate(U.evaluate({zoom:Math.floor(J.zoom)-1},ne,fe),U.evaluate({zoom:Math.floor(J.zoom)},ne,fe),U.evaluate({zoom:Math.floor(J.zoom)+1},ne,fe),J):U.value},y.prototype._calculate=function(U,J,ne,fe){var Fe=fe.zoom;return Fe>fe.zoomHistory.lastIntegerZoom?{from:U,to:J}:{from:ne,to:J}},y.prototype.interpolate=function(U){return U},y}(Er),wi=function(y){this.specification=y};wi.prototype.possiblyEvaluate=function(y,I,U,J){if(y.value!==void 0)if(y.expression.kind==="constant"){var ne=y.expression.evaluate(I,null,{},U,J);return this._calculate(ne,ne,ne,I)}else return this._calculate(y.expression.evaluate(new pn(Math.floor(I.zoom-1),I)),y.expression.evaluate(new pn(Math.floor(I.zoom),I)),y.expression.evaluate(new pn(Math.floor(I.zoom+1),I)),I)},wi.prototype._calculate=function(y,I,U,J){var ne=J.zoom;return ne>J.zoomHistory.lastIntegerZoom?{from:y,to:I}:{from:U,to:I}},wi.prototype.interpolate=function(y){return y};var Ui=function(y){this.specification=y};Ui.prototype.possiblyEvaluate=function(y,I,U,J){return!!y.expression.evaluate(I,null,{},U,J)},Ui.prototype.interpolate=function(){return!1};var Oi=function(y){this.properties=y,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var I in y){var U=y[I];U.specification.overridable&&this.overridableProperties.push(I);var J=this.defaultPropertyValues[I]=new za(U,void 0),ne=this.defaultTransitionablePropertyValues[I]=new Lo(U);this.defaultTransitioningPropertyValues[I]=ne.untransitioned(),this.defaultPossiblyEvaluatedValues[I]=J.possiblyEvaluate({})}};Z("DataDrivenProperty",Er),Z("DataConstantProperty",At),Z("CrossFadedDataDrivenProperty",Wr),Z("CrossFadedProperty",wi),Z("ColorRampProperty",Ui);var Bi="-transition",cn=function(m){function y(I,U){if(m.call(this),this.id=I.id,this.type=I.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},I.type!=="custom"&&(I=I,this.metadata=I.metadata,this.minzoom=I.minzoom,this.maxzoom=I.maxzoom,I.type!=="background"&&(this.source=I.source,this.sourceLayer=I["source-layer"],this.filter=I.filter),U.layout&&(this._unevaluatedLayout=new fu(U.layout)),U.paint)){this._transitionablePaint=new Fo(U.paint);for(var J in I.paint)this.setPaintProperty(J,I.paint[J],{validate:!1});for(var ne in I.layout)this.setLayoutProperty(ne,I.layout[ne],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new xc(U.paint)}}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},y.prototype.getLayoutProperty=function(U){return U==="visibility"?this.visibility:this._unevaluatedLayout.getValue(U)},y.prototype.setLayoutProperty=function(U,J,ne){if(ne===void 0&&(ne={}),J!=null){var fe="layers."+this.id+".layout."+U;if(this._validate(Hl,fe,U,J,ne))return}if(U==="visibility"){this.visibility=J;return}this._unevaluatedLayout.setValue(U,J)},y.prototype.getPaintProperty=function(U){return V(U,Bi)?this._transitionablePaint.getTransition(U.slice(0,-Bi.length)):this._transitionablePaint.getValue(U)},y.prototype.setPaintProperty=function(U,J,ne){if(ne===void 0&&(ne={}),J!=null){var fe="layers."+this.id+".paint."+U;if(this._validate(_l,fe,U,J,ne))return!1}if(V(U,Bi))return this._transitionablePaint.setTransition(U.slice(0,-Bi.length),J||void 0),!1;var Fe=this._transitionablePaint._values[U],Qe=Fe.property.specification["property-type"]==="cross-faded-data-driven",st=Fe.value.isDataDriven(),mt=Fe.value;this._transitionablePaint.setValue(U,J),this._handleSpecialPaintPropertyUpdate(U);var Xt=this._transitionablePaint._values[U].value,ur=Xt.isDataDriven();return ur||st||Qe||this._handleOverridablePaintPropertyUpdate(U,mt,Xt)},y.prototype._handleSpecialPaintPropertyUpdate=function(U){},y.prototype._handleOverridablePaintPropertyUpdate=function(U,J,ne){return!1},y.prototype.isHidden=function(U){return this.minzoom&&U<this.minzoom||this.maxzoom&&U>=this.maxzoom?!0:this.visibility==="none"},y.prototype.updateTransitions=function(U){this._transitioningPaint=this._transitionablePaint.transitioned(U,this._transitioningPaint)},y.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},y.prototype.recalculate=function(U,J){U.getCrossfadeParameters&&(this._crossfadeParameters=U.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(U,void 0,J)),this.paint=this._transitioningPaint.possiblyEvaluate(U,void 0,J)},y.prototype.serialize=function(){var U={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(U.layout=U.layout||{},U.layout.visibility=this.visibility),X(U,function(J,ne){return J!==void 0&&!(ne==="layout"&&!Object.keys(J).length)&&!(ne==="paint"&&!Object.keys(J).length)})},y.prototype._validate=function(U,J,ne,fe,Fe){return Fe===void 0&&(Fe={}),Fe&&Fe.validate===!1?!1:Zu(this,U.call(yo,{key:J,layerType:this.type,objectKey:ne,value:fe,styleSpec:on,style:{glyphs:!0,sprite:!0}}))},y.prototype.is3D=function(){return!1},y.prototype.isTileClipped=function(){return!1},y.prototype.hasOffscreenPass=function(){return!1},y.prototype.resize=function(){},y.prototype.isStateDependent=function(){for(var U in this.paint._values){var J=this.paint.get(U);if(!(!(J instanceof dl)||!Gs(J.property.specification))&&(J.value.kind==="source"||J.value.kind==="composite")&&J.value.isStateDependent)return!0}return!1},y}(Sn),On={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},Bn=function(y,I){this._structArray=y,this._pos1=I*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},yn=128,to=5,Rn=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};Rn.serialize=function(y,I){return y._trim(),I&&(y.isTransferred=!0,I.push(y.arrayBuffer)),{length:y.length,arrayBuffer:y.arrayBuffer}},Rn.deserialize=function(y){var I=Object.create(this.prototype);return I.arrayBuffer=y.arrayBuffer,I.length=y.length,I.capacity=y.arrayBuffer.byteLength/I.bytesPerElement,I._refreshViews(),I},Rn.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},Rn.prototype.clear=function(){this.length=0},Rn.prototype.resize=function(y){this.reserve(y),this.length=y},Rn.prototype.reserve=function(y){if(y>this.capacity){this.capacity=Math.max(y,Math.floor(this.capacity*to),yn),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var I=this.uint8;this._refreshViews(),I&&this.uint8.set(I)}},Rn.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function Dn(m,y){y===void 0&&(y=1);var I=0,U=0,J=m.map(function(fe){var Fe=fn(fe.type),Qe=I=Ai(I,Math.max(y,Fe)),st=fe.components||1;return U=Math.max(U,Fe),I+=Fe*st,{name:fe.name,type:fe.type,components:st,offset:Qe}}),ne=Ai(I,Math.max(U,y));return{members:J,size:ne,alignment:y}}function fn(m){return On[m].BYTES_PER_ELEMENT}function Ai(m,y){return Math.ceil(m/y)*y}var ji=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J){var ne=this.length;return this.resize(ne+1),this.emplace(ne,U,J)},y.prototype.emplace=function(U,J,ne){var fe=U*2;return this.int16[fe+0]=J,this.int16[fe+1]=ne,U},y}(Rn);ji.prototype.bytesPerElement=4,Z("StructArrayLayout2i4",ji);var Ln=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe){var Fe=this.length;return this.resize(Fe+1),this.emplace(Fe,U,J,ne,fe)},y.prototype.emplace=function(U,J,ne,fe,Fe){var Qe=U*4;return this.int16[Qe+0]=J,this.int16[Qe+1]=ne,this.int16[Qe+2]=fe,this.int16[Qe+3]=Fe,U},y}(Rn);Ln.prototype.bytesPerElement=8,Z("StructArrayLayout4i8",Ln);var Un=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe){var st=this.length;return this.resize(st+1),this.emplace(st,U,J,ne,fe,Fe,Qe)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st){var mt=U*6;return this.int16[mt+0]=J,this.int16[mt+1]=ne,this.int16[mt+2]=fe,this.int16[mt+3]=Fe,this.int16[mt+4]=Qe,this.int16[mt+5]=st,U},y}(Rn);Un.prototype.bytesPerElement=12,Z("StructArrayLayout2i4i12",Un);var gn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe){var st=this.length;return this.resize(st+1),this.emplace(st,U,J,ne,fe,Fe,Qe)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st){var mt=U*4,Xt=U*8;return this.int16[mt+0]=J,this.int16[mt+1]=ne,this.uint8[Xt+4]=fe,this.uint8[Xt+5]=Fe,this.uint8[Xt+6]=Qe,this.uint8[Xt+7]=st,U},y}(Rn);gn.prototype.bytesPerElement=8,Z("StructArrayLayout2i4ub8",gn);var ca=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J){var ne=this.length;return this.resize(ne+1),this.emplace(ne,U,J)},y.prototype.emplace=function(U,J,ne){var fe=U*2;return this.float32[fe+0]=J,this.float32[fe+1]=ne,U},y}(Rn);ca.prototype.bytesPerElement=8,Z("StructArrayLayout2f8",ca);var Kn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur){var nr=this.length;return this.resize(nr+1),this.emplace(nr,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr){var Lr=U*10;return this.uint16[Lr+0]=J,this.uint16[Lr+1]=ne,this.uint16[Lr+2]=fe,this.uint16[Lr+3]=Fe,this.uint16[Lr+4]=Qe,this.uint16[Lr+5]=st,this.uint16[Lr+6]=mt,this.uint16[Lr+7]=Xt,this.uint16[Lr+8]=ur,this.uint16[Lr+9]=nr,U},y}(Rn);Kn.prototype.bytesPerElement=20,Z("StructArrayLayout10ui20",Kn);var Za=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr){var Yr=this.length;return this.resize(Yr+1),this.emplace(Yr,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr){var _i=U*12;return this.int16[_i+0]=J,this.int16[_i+1]=ne,this.int16[_i+2]=fe,this.int16[_i+3]=Fe,this.uint16[_i+4]=Qe,this.uint16[_i+5]=st,this.uint16[_i+6]=mt,this.uint16[_i+7]=Xt,this.int16[_i+8]=ur,this.int16[_i+9]=nr,this.int16[_i+10]=Lr,this.int16[_i+11]=Yr,U},y}(Rn);Za.prototype.bytesPerElement=24,Z("StructArrayLayout4i4ui4i24",Za);var wn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne){var fe=this.length;return this.resize(fe+1),this.emplace(fe,U,J,ne)},y.prototype.emplace=function(U,J,ne,fe){var Fe=U*3;return this.float32[Fe+0]=J,this.float32[Fe+1]=ne,this.float32[Fe+2]=fe,U},y}(Rn);wn.prototype.bytesPerElement=12,Z("StructArrayLayout3f12",wn);var vn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var J=this.length;return this.resize(J+1),this.emplace(J,U)},y.prototype.emplace=function(U,J){var ne=U*1;return this.uint32[ne+0]=J,U},y}(Rn);vn.prototype.bytesPerElement=4,Z("StructArrayLayout1ul4",vn);var Aa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe,st,mt,Xt){var ur=this.length;return this.resize(ur+1),this.emplace(ur,U,J,ne,fe,Fe,Qe,st,mt,Xt)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur){var nr=U*10,Lr=U*5;return this.int16[nr+0]=J,this.int16[nr+1]=ne,this.int16[nr+2]=fe,this.int16[nr+3]=Fe,this.int16[nr+4]=Qe,this.int16[nr+5]=st,this.uint32[Lr+3]=mt,this.uint16[nr+8]=Xt,this.uint16[nr+9]=ur,U},y}(Rn);Aa.prototype.bytesPerElement=20,Z("StructArrayLayout6i1ul2ui20",Aa);var aa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe){var st=this.length;return this.resize(st+1),this.emplace(st,U,J,ne,fe,Fe,Qe)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st){var mt=U*6;return this.int16[mt+0]=J,this.int16[mt+1]=ne,this.int16[mt+2]=fe,this.int16[mt+3]=Fe,this.int16[mt+4]=Qe,this.int16[mt+5]=st,U},y}(Rn);aa.prototype.bytesPerElement=12,Z("StructArrayLayout2i2i2i12",aa);var Xn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe){var Qe=this.length;return this.resize(Qe+1),this.emplace(Qe,U,J,ne,fe,Fe)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe){var st=U*4,mt=U*8;return this.float32[st+0]=J,this.float32[st+1]=ne,this.float32[st+2]=fe,this.int16[mt+6]=Fe,this.int16[mt+7]=Qe,U},y}(Rn);Xn.prototype.bytesPerElement=16,Z("StructArrayLayout2f1f2i16",Xn);var Vn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe){var Fe=this.length;return this.resize(Fe+1),this.emplace(Fe,U,J,ne,fe)},y.prototype.emplace=function(U,J,ne,fe,Fe){var Qe=U*12,st=U*3;return this.uint8[Qe+0]=J,this.uint8[Qe+1]=ne,this.float32[st+1]=fe,this.float32[st+2]=Fe,U},y}(Rn);Vn.prototype.bytesPerElement=12,Z("StructArrayLayout2ub2f12",Vn);var ma=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne){var fe=this.length;return this.resize(fe+1),this.emplace(fe,U,J,ne)},y.prototype.emplace=function(U,J,ne,fe){var Fe=U*3;return this.uint16[Fe+0]=J,this.uint16[Fe+1]=ne,this.uint16[Fe+2]=fe,U},y}(Rn);ma.prototype.bytesPerElement=6,Z("StructArrayLayout3ui6",ma);var ro=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si,Hi,Ei){var Vi=this.length;return this.resize(Vi+1),this.emplace(Vi,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si,Hi,Ei)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si,Hi,Ei,Vi){var en=U*24,An=U*12,ra=U*48;return this.int16[en+0]=J,this.int16[en+1]=ne,this.uint16[en+2]=fe,this.uint16[en+3]=Fe,this.uint32[An+2]=Qe,this.uint32[An+3]=st,this.uint32[An+4]=mt,this.uint16[en+10]=Xt,this.uint16[en+11]=ur,this.uint16[en+12]=nr,this.float32[An+7]=Lr,this.float32[An+8]=Yr,this.uint8[ra+36]=_i,this.uint8[ra+37]=si,this.uint8[ra+38]=Hi,this.uint32[An+10]=Ei,this.int16[en+22]=Vi,U},y}(Rn);ro.prototype.bytesPerElement=48,Z("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",ro);var Ao=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si,Hi,Ei,Vi,en,An,ra,$n,Ba,_a,Pa,qo,Na,ja){var us=this.length;return this.resize(us+1),this.emplace(us,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si,Hi,Ei,Vi,en,An,ra,$n,Ba,_a,Pa,qo,Na,ja)},y.prototype.emplace=function(U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si,Hi,Ei,Vi,en,An,ra,$n,Ba,_a,Pa,qo,Na,ja,us){var zo=U*34,rl=U*17;return this.int16[zo+0]=J,this.int16[zo+1]=ne,this.int16[zo+2]=fe,this.int16[zo+3]=Fe,this.int16[zo+4]=Qe,this.int16[zo+5]=st,this.int16[zo+6]=mt,this.int16[zo+7]=Xt,this.uint16[zo+8]=ur,this.uint16[zo+9]=nr,this.uint16[zo+10]=Lr,this.uint16[zo+11]=Yr,this.uint16[zo+12]=_i,this.uint16[zo+13]=si,this.uint16[zo+14]=Hi,this.uint16[zo+15]=Ei,this.uint16[zo+16]=Vi,this.uint16[zo+17]=en,this.uint16[zo+18]=An,this.uint16[zo+19]=ra,this.uint16[zo+20]=$n,this.uint16[zo+21]=Ba,this.uint16[zo+22]=_a,this.uint32[rl+12]=Pa,this.float32[rl+13]=qo,this.float32[rl+14]=Na,this.float32[rl+15]=ja,this.float32[rl+16]=us,U},y}(Rn);Ao.prototype.bytesPerElement=68,Z("StructArrayLayout8i15ui1ul4f68",Ao);var Jn=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var J=this.length;return this.resize(J+1),this.emplace(J,U)},y.prototype.emplace=function(U,J){var ne=U*1;return this.float32[ne+0]=J,U},y}(Rn);Jn.prototype.bytesPerElement=4,Z("StructArrayLayout1f4",Jn);var Oa=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne){var fe=this.length;return this.resize(fe+1),this.emplace(fe,U,J,ne)},y.prototype.emplace=function(U,J,ne,fe){var Fe=U*3;return this.int16[Fe+0]=J,this.int16[Fe+1]=ne,this.int16[Fe+2]=fe,U},y}(Rn);Oa.prototype.bytesPerElement=6,Z("StructArrayLayout3i6",Oa);var _o=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne){var fe=this.length;return this.resize(fe+1),this.emplace(fe,U,J,ne)},y.prototype.emplace=function(U,J,ne,fe){var Fe=U*2,Qe=U*4;return this.uint32[Fe+0]=J,this.uint16[Qe+2]=ne,this.uint16[Qe+3]=fe,U},y}(Rn);_o.prototype.bytesPerElement=8,Z("StructArrayLayout1ul2ui8",_o);var Po=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J){var ne=this.length;return this.resize(ne+1),this.emplace(ne,U,J)},y.prototype.emplace=function(U,J,ne){var fe=U*2;return this.uint16[fe+0]=J,this.uint16[fe+1]=ne,U},y}(Rn);Po.prototype.bytesPerElement=4,Z("StructArrayLayout2ui4",Po);var Jo=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U){var J=this.length;return this.resize(J+1),this.emplace(J,U)},y.prototype.emplace=function(U,J){var ne=U*1;return this.uint16[ne+0]=J,U},y}(Rn);Jo.prototype.bytesPerElement=2,Z("StructArrayLayout1ui2",Jo);var Yl=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},y.prototype.emplaceBack=function(U,J,ne,fe){var Fe=this.length;return this.resize(Fe+1),this.emplace(Fe,U,J,ne,fe)},y.prototype.emplace=function(U,J,ne,fe,Fe){var Qe=U*4;return this.float32[Qe+0]=J,this.float32[Qe+1]=ne,this.float32[Qe+2]=fe,this.float32[Qe+3]=Fe,U},y}(Rn);Yl.prototype.bytesPerElement=16,Z("StructArrayLayout4f16",Yl);var $c=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorPointX:{configurable:!0},anchorPointY:{configurable:!0},x1:{configurable:!0},y1:{configurable:!0},x2:{configurable:!0},y2:{configurable:!0},featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0},anchorPoint:{configurable:!0}};return I.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},I.x1.get=function(){return this._structArray.int16[this._pos2+2]},I.y1.get=function(){return this._structArray.int16[this._pos2+3]},I.x2.get=function(){return this._structArray.int16[this._pos2+4]},I.y2.get=function(){return this._structArray.int16[this._pos2+5]},I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.anchorPoint.get=function(){return new u(this.anchorPointX,this.anchorPointY)},Object.defineProperties(y.prototype,I),y}(Bn);$c.prototype.size=20;var xs=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new $c(this,U)},y}(Aa);Z("CollisionBoxArray",xs);var Qc=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},glyphStartIndex:{configurable:!0},numGlyphs:{configurable:!0},vertexStartIndex:{configurable:!0},lineStartIndex:{configurable:!0},lineLength:{configurable:!0},segment:{configurable:!0},lowerSize:{configurable:!0},upperSize:{configurable:!0},lineOffsetX:{configurable:!0},lineOffsetY:{configurable:!0},writingMode:{configurable:!0},placedOrientation:{configurable:!0},hidden:{configurable:!0},crossTileID:{configurable:!0},associatedIconIndex:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},I.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},I.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},I.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},I.segment.get=function(){return this._structArray.uint16[this._pos2+10]},I.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},I.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},I.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},I.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},I.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},I.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},I.placedOrientation.set=function(U){this._structArray.uint8[this._pos1+37]=U},I.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},I.hidden.set=function(U){this._structArray.uint8[this._pos1+38]=U},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+10]=U},I.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(y.prototype,I),y}(Bn);Qc.prototype.size=48;var El=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Qc(this,U)},y}(ro);Z("PlacedSymbolArray",El);var bc=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={anchorX:{configurable:!0},anchorY:{configurable:!0},rightJustifiedTextSymbolIndex:{configurable:!0},centerJustifiedTextSymbolIndex:{configurable:!0},leftJustifiedTextSymbolIndex:{configurable:!0},verticalPlacedTextSymbolIndex:{configurable:!0},placedIconSymbolIndex:{configurable:!0},verticalPlacedIconSymbolIndex:{configurable:!0},key:{configurable:!0},textBoxStartIndex:{configurable:!0},textBoxEndIndex:{configurable:!0},verticalTextBoxStartIndex:{configurable:!0},verticalTextBoxEndIndex:{configurable:!0},iconBoxStartIndex:{configurable:!0},iconBoxEndIndex:{configurable:!0},verticalIconBoxStartIndex:{configurable:!0},verticalIconBoxEndIndex:{configurable:!0},featureIndex:{configurable:!0},numHorizontalGlyphVertices:{configurable:!0},numVerticalGlyphVertices:{configurable:!0},numIconVertices:{configurable:!0},numVerticalIconVertices:{configurable:!0},useRuntimeCollisionCircles:{configurable:!0},crossTileID:{configurable:!0},textBoxScale:{configurable:!0},textOffset0:{configurable:!0},textOffset1:{configurable:!0},collisionCircleDiameter:{configurable:!0}};return I.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},I.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},I.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},I.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},I.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},I.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},I.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},I.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},I.key.get=function(){return this._structArray.uint16[this._pos2+8]},I.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},I.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},I.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},I.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},I.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},I.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},I.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},I.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},I.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},I.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},I.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},I.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},I.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},I.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},I.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},I.crossTileID.set=function(U){this._structArray.uint32[this._pos4+12]=U},I.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},I.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},I.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},I.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(y.prototype,I),y}(Bn);bc.prototype.size=68;var wc=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new bc(this,U)},y}(Ao);Z("SymbolInstanceArray",wc);var yf=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getoffsetX=function(U){return this.float32[U*1+0]},y}(Jn);Z("GlyphOffsetArray",yf);var Gl=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.getx=function(U){return this.int16[U*3+0]},y.prototype.gety=function(U){return this.int16[U*3+1]},y.prototype.gettileUnitDistanceFromAnchor=function(U){return this.int16[U*3+2]},y}(Oa);Z("SymbolLineVertexArray",Gl);var Fc=function(m){function y(){m.apply(this,arguments)}m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y;var I={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return I.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},I.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},I.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(y.prototype,I),y}(Bn);Fc.prototype.size=8;var ef=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.get=function(U){return new Fc(this,U)},y}(_o);Z("FeatureIndexArray",ef);var ls=Dn([{name:"a_pos",components:2,type:"Int16"}],4),_f=ls.members,ns=function(y){y===void 0&&(y=[]),this.segments=y};ns.prototype.prepareSegment=function(y,I,U,J){var ne=this.segments[this.segments.length-1];return y>ns.MAX_VERTEX_ARRAY_LENGTH&&re("Max vertices per segment is "+ns.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+y),(!ne||ne.vertexLength+y>ns.MAX_VERTEX_ARRAY_LENGTH||ne.sortKey!==J)&&(ne={vertexOffset:I.length,primitiveOffset:U.length,vertexLength:0,primitiveLength:0},J!==void 0&&(ne.sortKey=J),this.segments.push(ne)),ne},ns.prototype.get=function(){return this.segments},ns.prototype.destroy=function(){for(var y=0,I=this.segments;y<I.length;y+=1){var U=I[y];for(var J in U.vaos)U.vaos[J].destroy()}},ns.simpleSegment=function(y,I,U,J){return new ns([{vertexOffset:y,primitiveOffset:I,vertexLength:U,primitiveLength:J,vaos:{},sortKey:0}])},ns.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,Z("SegmentVector",ns);function Y(m,y){return m=p(Math.floor(m),0,255),y=p(Math.floor(y),0,255),256*m+y}var z=Dn([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]),K=a(function(m){function y(I,U){var J,ne,fe,Fe,Qe,st,mt,Xt;for(J=I.length&3,ne=I.length-J,fe=U,Qe=3432918353,st=461845907,Xt=0;Xt<ne;)mt=I.charCodeAt(Xt)&255|(I.charCodeAt(++Xt)&255)<<8|(I.charCodeAt(++Xt)&255)<<16|(I.charCodeAt(++Xt)&255)<<24,++Xt,mt=(mt&65535)*Qe+(((mt>>>16)*Qe&65535)<<16)&4294967295,mt=mt<<15|mt>>>17,mt=(mt&65535)*st+(((mt>>>16)*st&65535)<<16)&4294967295,fe^=mt,fe=fe<<13|fe>>>19,Fe=(fe&65535)*5+(((fe>>>16)*5&65535)<<16)&4294967295,fe=(Fe&65535)+27492+(((Fe>>>16)+58964&65535)<<16);switch(mt=0,J){case 3:mt^=(I.charCodeAt(Xt+2)&255)<<16;case 2:mt^=(I.charCodeAt(Xt+1)&255)<<8;case 1:mt^=I.charCodeAt(Xt)&255,mt=(mt&65535)*Qe+(((mt>>>16)*Qe&65535)<<16)&4294967295,mt=mt<<15|mt>>>17,mt=(mt&65535)*st+(((mt>>>16)*st&65535)<<16)&4294967295,fe^=mt}return fe^=I.length,fe^=fe>>>16,fe=(fe&65535)*2246822507+(((fe>>>16)*2246822507&65535)<<16)&4294967295,fe^=fe>>>13,fe=(fe&65535)*3266489909+(((fe>>>16)*3266489909&65535)<<16)&4294967295,fe^=fe>>>16,fe>>>0}m.exports=y}),O=a(function(m){function y(I,U){for(var J=I.length,ne=U^J,fe=0,Fe;J>=4;)Fe=I.charCodeAt(fe)&255|(I.charCodeAt(++fe)&255)<<8|(I.charCodeAt(++fe)&255)<<16|(I.charCodeAt(++fe)&255)<<24,Fe=(Fe&65535)*1540483477+(((Fe>>>16)*1540483477&65535)<<16),Fe^=Fe>>>24,Fe=(Fe&65535)*1540483477+(((Fe>>>16)*1540483477&65535)<<16),ne=(ne&65535)*1540483477+(((ne>>>16)*1540483477&65535)<<16)^Fe,J-=4,++fe;switch(J){case 3:ne^=(I.charCodeAt(fe+2)&255)<<16;case 2:ne^=(I.charCodeAt(fe+1)&255)<<8;case 1:ne^=I.charCodeAt(fe)&255,ne=(ne&65535)*1540483477+(((ne>>>16)*1540483477&65535)<<16)}return ne^=ne>>>13,ne=(ne&65535)*1540483477+(((ne>>>16)*1540483477&65535)<<16),ne^=ne>>>15,ne>>>0}m.exports=y}),$=K,pe=K,de=O;$.murmur3=pe,$.murmur2=de;var Ie=function(){this.ids=[],this.positions=[],this.indexed=!1};Ie.prototype.add=function(y,I,U,J){this.ids.push(pt(y)),this.positions.push(I,U,J)},Ie.prototype.getPositions=function(y){for(var I=pt(y),U=0,J=this.ids.length-1;U<J;){var ne=U+J>>1;this.ids[ne]>=I?J=ne:U=ne+1}for(var fe=[];this.ids[U]===I;){var Fe=this.positions[3*U],Qe=this.positions[3*U+1],st=this.positions[3*U+2];fe.push({index:Fe,start:Qe,end:st}),U++}return fe},Ie.serialize=function(y,I){var U=new Float64Array(y.ids),J=new Uint32Array(y.positions);return Kt(U,J,0,U.length-1),I&&I.push(U.buffer,J.buffer),{ids:U,positions:J}},Ie.deserialize=function(y){var I=new Ie;return I.ids=y.ids,I.positions=y.positions,I.indexed=!0,I};var $e=Math.pow(2,53)-1;function pt(m){var y=+m;return!isNaN(y)&&y<=$e?y:$(String(m))}function Kt(m,y,I,U){for(;I<U;){for(var J=m[I+U>>1],ne=I-1,fe=U+1;;){do ne++;while(m[ne]<J);do fe--;while(m[fe]>J);if(ne>=fe)break;ir(m,ne,fe),ir(y,3*ne,3*fe),ir(y,3*ne+1,3*fe+1),ir(y,3*ne+2,3*fe+2)}fe-I<U-fe?(Kt(m,y,I,fe),I=fe+1):(Kt(m,y,fe+1,U),U=fe)}}function ir(m,y,I){var U=m[y];m[y]=m[I],m[I]=U}Z("FeaturePositionMap",Ie);var Jt=function(y,I){this.gl=y.gl,this.location=I},vt=function(m){function y(I,U){m.call(this,I,U),this.current=0}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.set=function(U){this.current!==U&&(this.current=U,this.gl.uniform1i(this.location,U))},y}(Jt),Pt=function(m){function y(I,U){m.call(this,I,U),this.current=0}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.set=function(U){this.current!==U&&(this.current=U,this.gl.uniform1f(this.location,U))},y}(Jt),Wt=function(m){function y(I,U){m.call(this,I,U),this.current=[0,0]}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.set=function(U){(U[0]!==this.current[0]||U[1]!==this.current[1])&&(this.current=U,this.gl.uniform2f(this.location,U[0],U[1]))},y}(Jt),rr=function(m){function y(I,U){m.call(this,I,U),this.current=[0,0,0]}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.set=function(U){(U[0]!==this.current[0]||U[1]!==this.current[1]||U[2]!==this.current[2])&&(this.current=U,this.gl.uniform3f(this.location,U[0],U[1],U[2]))},y}(Jt),dr=function(m){function y(I,U){m.call(this,I,U),this.current=[0,0,0,0]}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.set=function(U){(U[0]!==this.current[0]||U[1]!==this.current[1]||U[2]!==this.current[2]||U[3]!==this.current[3])&&(this.current=U,this.gl.uniform4f(this.location,U[0],U[1],U[2],U[3]))},y}(Jt),pr=function(m){function y(I,U){m.call(this,I,U),this.current=ss.transparent}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.set=function(U){(U.r!==this.current.r||U.g!==this.current.g||U.b!==this.current.b||U.a!==this.current.a)&&(this.current=U,this.gl.uniform4f(this.location,U.r,U.g,U.b,U.a))},y}(Jt),kr=new Float32Array(16),Ar=function(m){function y(I,U){m.call(this,I,U),this.current=kr}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.set=function(U){if(U[12]!==this.current[12]||U[0]!==this.current[0]){this.current=U,this.gl.uniformMatrix4fv(this.location,!1,U);return}for(var J=1;J<16;J++)if(U[J]!==this.current[J]){this.current=U,this.gl.uniformMatrix4fv(this.location,!1,U);break}},y}(Jt);function gr(m){return[Y(255*m.r,255*m.g),Y(255*m.b,255*m.a)]}var Cr=function(y,I,U){this.value=y,this.uniformNames=I.map(function(J){return"u_"+J}),this.type=U};Cr.prototype.setUniform=function(y,I,U){y.set(U.constantOr(this.value))},Cr.prototype.getBinding=function(y,I,U){return this.type==="color"?new pr(y,I):new Pt(y,I)};var cr=function(y,I){this.uniformNames=I.map(function(U){return"u_"+U}),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};cr.prototype.setConstantPatternPositions=function(y,I){this.pixelRatioFrom=I.pixelRatio,this.pixelRatioTo=y.pixelRatio,this.patternFrom=I.tlbr,this.patternTo=y.tlbr},cr.prototype.setUniform=function(y,I,U,J){var ne=J==="u_pattern_to"?this.patternTo:J==="u_pattern_from"?this.patternFrom:J==="u_pixel_ratio_to"?this.pixelRatioTo:J==="u_pixel_ratio_from"?this.pixelRatioFrom:null;ne&&y.set(ne)},cr.prototype.getBinding=function(y,I,U){return U.substr(0,9)==="u_pattern"?new dr(y,I):new Pt(y,I)};var Gr=function(y,I,U,J){this.expression=y,this.type=U,this.maxValue=0,this.paintVertexAttributes=I.map(function(ne){return{name:"a_"+ne,type:"Float32",components:U==="color"?2:1,offset:0}}),this.paintVertexArray=new J};Gr.prototype.populatePaintArray=function(y,I,U,J,ne){var fe=this.paintVertexArray.length,Fe=this.expression.evaluate(new pn(0),I,{},J,[],ne);this.paintVertexArray.resize(y),this._setPaintValue(fe,y,Fe)},Gr.prototype.updatePaintArray=function(y,I,U,J){var ne=this.expression.evaluate({zoom:0},U,J);this._setPaintValue(y,I,ne)},Gr.prototype._setPaintValue=function(y,I,U){if(this.type==="color")for(var J=gr(U),ne=y;ne<I;ne++)this.paintVertexArray.emplace(ne,J[0],J[1]);else{for(var fe=y;fe<I;fe++)this.paintVertexArray.emplace(fe,U);this.maxValue=Math.max(this.maxValue,Math.abs(U))}},Gr.prototype.upload=function(y){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=y.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},Gr.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var ei=function(y,I,U,J,ne,fe){this.expression=y,this.uniformNames=I.map(function(Fe){return"u_"+Fe+"_t"}),this.type=U,this.useIntegerZoom=J,this.zoom=ne,this.maxValue=0,this.paintVertexAttributes=I.map(function(Fe){return{name:"a_"+Fe,type:"Float32",components:U==="color"?4:2,offset:0}}),this.paintVertexArray=new fe};ei.prototype.populatePaintArray=function(y,I,U,J,ne){var fe=this.expression.evaluate(new pn(this.zoom),I,{},J,[],ne),Fe=this.expression.evaluate(new pn(this.zoom+1),I,{},J,[],ne),Qe=this.paintVertexArray.length;this.paintVertexArray.resize(y),this._setPaintValue(Qe,y,fe,Fe)},ei.prototype.updatePaintArray=function(y,I,U,J){var ne=this.expression.evaluate({zoom:this.zoom},U,J),fe=this.expression.evaluate({zoom:this.zoom+1},U,J);this._setPaintValue(y,I,ne,fe)},ei.prototype._setPaintValue=function(y,I,U,J){if(this.type==="color")for(var ne=gr(U),fe=gr(J),Fe=y;Fe<I;Fe++)this.paintVertexArray.emplace(Fe,ne[0],ne[1],fe[0],fe[1]);else{for(var Qe=y;Qe<I;Qe++)this.paintVertexArray.emplace(Qe,U,J);this.maxValue=Math.max(this.maxValue,Math.abs(U),Math.abs(J))}},ei.prototype.upload=function(y){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=y.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},ei.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},ei.prototype.setUniform=function(y,I){var U=this.useIntegerZoom?Math.floor(I.zoom):I.zoom,J=p(this.expression.interpolationFactor(U,this.zoom,this.zoom+1),0,1);y.set(J)},ei.prototype.getBinding=function(y,I,U){return new Pt(y,I)};var yi=function(y,I,U,J,ne,fe){this.expression=y,this.type=I,this.useIntegerZoom=U,this.zoom=J,this.layerId=fe,this.zoomInPaintVertexArray=new ne,this.zoomOutPaintVertexArray=new ne};yi.prototype.populatePaintArray=function(y,I,U){var J=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(y),this.zoomOutPaintVertexArray.resize(y),this._setPaintValues(J,y,I.patterns&&I.patterns[this.layerId],U)},yi.prototype.updatePaintArray=function(y,I,U,J,ne){this._setPaintValues(y,I,U.patterns&&U.patterns[this.layerId],ne)},yi.prototype._setPaintValues=function(y,I,U,J){if(!(!J||!U)){var ne=U.min,fe=U.mid,Fe=U.max,Qe=J[ne],st=J[fe],mt=J[Fe];if(!(!Qe||!st||!mt))for(var Xt=y;Xt<I;Xt++)this.zoomInPaintVertexArray.emplace(Xt,st.tl[0],st.tl[1],st.br[0],st.br[1],Qe.tl[0],Qe.tl[1],Qe.br[0],Qe.br[1],st.pixelRatio,Qe.pixelRatio),this.zoomOutPaintVertexArray.emplace(Xt,st.tl[0],st.tl[1],st.br[0],st.br[1],mt.tl[0],mt.tl[1],mt.br[0],mt.br[1],st.pixelRatio,mt.pixelRatio)}},yi.prototype.upload=function(y){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=y.createVertexBuffer(this.zoomInPaintVertexArray,z.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=y.createVertexBuffer(this.zoomOutPaintVertexArray,z.members,this.expression.isStateDependent))},yi.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var tn=function(y,I,U){this.binders={},this._buffers=[];var J=[];for(var ne in y.paint._values)if(U(ne)){var fe=y.paint.get(ne);if(!(!(fe instanceof dl)||!Gs(fe.property.specification))){var Fe=ln(ne,y.type),Qe=fe.value,st=fe.property.specification.type,mt=fe.property.useIntegerZoom,Xt=fe.property.specification["property-type"],ur=Xt==="cross-faded"||Xt==="cross-faded-data-driven";if(Qe.kind==="constant")this.binders[ne]=ur?new cr(Qe.value,Fe):new Cr(Qe.value,Fe,st),J.push("/u_"+ne);else if(Qe.kind==="source"||ur){var nr=qn(ne,st,"source");this.binders[ne]=ur?new yi(Qe,st,mt,I,nr,y.id):new Gr(Qe,Fe,st,nr),J.push("/a_"+ne)}else{var Lr=qn(ne,st,"composite");this.binders[ne]=new ei(Qe,Fe,st,mt,I,Lr),J.push("/z_"+ne)}}}this.cacheKey=J.sort().join("")};tn.prototype.getMaxValue=function(y){var I=this.binders[y];return I instanceof Gr||I instanceof ei?I.maxValue:0},tn.prototype.populatePaintArrays=function(y,I,U,J,ne){for(var fe in this.binders){var Fe=this.binders[fe];(Fe instanceof Gr||Fe instanceof ei||Fe instanceof yi)&&Fe.populatePaintArray(y,I,U,J,ne)}},tn.prototype.setConstantPatternPositions=function(y,I){for(var U in this.binders){var J=this.binders[U];J instanceof cr&&J.setConstantPatternPositions(y,I)}},tn.prototype.updatePaintArrays=function(y,I,U,J,ne){var fe=!1;for(var Fe in y)for(var Qe=I.getPositions(Fe),st=0,mt=Qe;st<mt.length;st+=1){var Xt=mt[st],ur=U.feature(Xt.index);for(var nr in this.binders){var Lr=this.binders[nr];if((Lr instanceof Gr||Lr instanceof ei||Lr instanceof yi)&&Lr.expression.isStateDependent===!0){var Yr=J.paint.get(nr);Lr.expression=Yr.value,Lr.updatePaintArray(Xt.start,Xt.end,ur,y[Fe],ne),fe=!0}}}return fe},tn.prototype.defines=function(){var y=[];for(var I in this.binders){var U=this.binders[I];(U instanceof Cr||U instanceof cr)&&y.push.apply(y,U.uniformNames.map(function(J){return"#define HAS_UNIFORM_"+J}))}return y},tn.prototype.getBinderAttributes=function(){var y=[];for(var I in this.binders){var U=this.binders[I];if(U instanceof Gr||U instanceof ei)for(var J=0;J<U.paintVertexAttributes.length;J++)y.push(U.paintVertexAttributes[J].name);else if(U instanceof yi)for(var ne=0;ne<z.members.length;ne++)y.push(z.members[ne].name)}return y},tn.prototype.getBinderUniforms=function(){var y=[];for(var I in this.binders){var U=this.binders[I];if(U instanceof Cr||U instanceof cr||U instanceof ei)for(var J=0,ne=U.uniformNames;J<ne.length;J+=1){var fe=ne[J];y.push(fe)}}return y},tn.prototype.getPaintVertexBuffers=function(){return this._buffers},tn.prototype.getUniforms=function(y,I){var U=[];for(var J in this.binders){var ne=this.binders[J];if(ne instanceof Cr||ne instanceof cr||ne instanceof ei)for(var fe=0,Fe=ne.uniformNames;fe<Fe.length;fe+=1){var Qe=Fe[fe];if(I[Qe]){var st=ne.getBinding(y,I[Qe],Qe);U.push({name:Qe,property:J,binding:st})}}}return U},tn.prototype.setUniforms=function(y,I,U,J){for(var ne=0,fe=I;ne<fe.length;ne+=1){var Fe=fe[ne],Qe=Fe.name,st=Fe.property,mt=Fe.binding;this.binders[st].setUniform(mt,J,U.get(st),Qe)}},tn.prototype.updatePaintBuffers=function(y){this._buffers=[];for(var I in this.binders){var U=this.binders[I];if(y&&U instanceof yi){var J=y.fromScale===2?U.zoomInPaintVertexBuffer:U.zoomOutPaintVertexBuffer;J&&this._buffers.push(J)}else(U instanceof Gr||U instanceof ei)&&U.paintVertexBuffer&&this._buffers.push(U.paintVertexBuffer)}},tn.prototype.upload=function(y){for(var I in this.binders){var U=this.binders[I];(U instanceof Gr||U instanceof ei||U instanceof yi)&&U.upload(y)}this.updatePaintBuffers()},tn.prototype.destroy=function(){for(var y in this.binders){var I=this.binders[y];(I instanceof Gr||I instanceof ei||I instanceof yi)&&I.destroy()}};var Ri=function(y,I,U){U===void 0&&(U=function(){return!0}),this.programConfigurations={};for(var J=0,ne=y;J<ne.length;J+=1){var fe=ne[J];this.programConfigurations[fe.id]=new tn(fe,I,U)}this.needsUpload=!1,this._featureMap=new Ie,this._bufferOffset=0};Ri.prototype.populatePaintArrays=function(y,I,U,J,ne,fe){for(var Fe in this.programConfigurations)this.programConfigurations[Fe].populatePaintArrays(y,I,J,ne,fe);I.id!==void 0&&this._featureMap.add(I.id,U,this._bufferOffset,y),this._bufferOffset=y,this.needsUpload=!0},Ri.prototype.updatePaintArrays=function(y,I,U,J){for(var ne=0,fe=U;ne<fe.length;ne+=1){var Fe=fe[ne];this.needsUpload=this.programConfigurations[Fe.id].updatePaintArrays(y,this._featureMap,I,Fe,J)||this.needsUpload}},Ri.prototype.get=function(y){return this.programConfigurations[y]},Ri.prototype.upload=function(y){if(this.needsUpload){for(var I in this.programConfigurations)this.programConfigurations[I].upload(y);this.needsUpload=!1}},Ri.prototype.destroy=function(){for(var y in this.programConfigurations)this.programConfigurations[y].destroy()};function ln(m,y){var I={"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]};return I[m]||[m.replace(y+"-","").replace(/-/g,"_")]}function Qn(m){var y={"line-pattern":{source:Kn,composite:Kn},"fill-pattern":{source:Kn,composite:Kn},"fill-extrusion-pattern":{source:Kn,composite:Kn}};return y[m]}function qn(m,y,I){var U={color:{source:ca,composite:Yl},number:{source:Jn,composite:ca}},J=Qn(m);return J&&J[I]||U[y][I]}Z("ConstantBinder",Cr),Z("CrossFadedConstantBinder",cr),Z("SourceExpressionBinder",Gr),Z("CrossFadedCompositeBinder",yi),Z("CompositeExpressionBinder",ei),Z("ProgramConfiguration",tn,{omit:["_buffers"]}),Z("ProgramConfigurationSet",Ri);var rn=8192,bn=15,mn=Math.pow(2,bn-1)-1,Gn=-mn-1;function da(m){for(var y=rn/m.extent,I=m.loadGeometry(),U=0;U<I.length;U++)for(var J=I[U],ne=0;ne<J.length;ne++){var fe=J[ne],Fe=Math.round(fe.x*y),Qe=Math.round(fe.y*y);fe.x=p(Fe,Gn,mn),fe.y=p(Qe,Gn,mn),(Fe<fe.x||Fe>fe.x+1||Qe<fe.y||Qe>fe.y+1)&&re("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return I}function No(m,y){return{type:m.type,id:m.id,properties:m.properties,geometry:y?da(m):[]}}function Do(m,y,I,U,J){m.emplaceBack(y*2+(U+1)/2,I*2+(J+1)/2)}var ps=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new ji,this.indexArray=new ma,this.segments=new ns,this.programConfigurations=new Ri(y.layers,y.zoom),this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};ps.prototype.populate=function(y,I,U){var J=this.layers[0],ne=[],fe=null;J.type==="circle"&&(fe=J.layout.get("circle-sort-key"));for(var Fe=0,Qe=y;Fe<Qe.length;Fe+=1){var st=Qe[Fe],mt=st.feature,Xt=st.id,ur=st.index,nr=st.sourceLayerIndex,Lr=this.layers[0]._featureFilter.needGeometry,Yr=No(mt,Lr);if(this.layers[0]._featureFilter.filter(new pn(this.zoom),Yr,U)){var _i=fe?fe.evaluate(Yr,{},U):void 0,si={id:Xt,properties:mt.properties,type:mt.type,sourceLayerIndex:nr,index:ur,geometry:Lr?Yr.geometry:da(mt),patterns:{},sortKey:_i};ne.push(si)}}fe&&ne.sort(function(_a,Pa){return _a.sortKey-Pa.sortKey});for(var Hi=0,Ei=ne;Hi<Ei.length;Hi+=1){var Vi=Ei[Hi],en=Vi,An=en.geometry,ra=en.index,$n=en.sourceLayerIndex,Ba=y[ra].feature;this.addFeature(Vi,An,ra,U),I.featureIndex.insert(Ba,An,ra,$n,this.index)}},ps.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},ps.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},ps.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},ps.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,_f),this.indexBuffer=y.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(y),this.uploaded=!0},ps.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},ps.prototype.addFeature=function(y,I,U,J){for(var ne=0,fe=I;ne<fe.length;ne+=1)for(var Fe=fe[ne],Qe=0,st=Fe;Qe<st.length;Qe+=1){var mt=st[Qe],Xt=mt.x,ur=mt.y;if(!(Xt<0||Xt>=rn||ur<0||ur>=rn)){var nr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,y.sortKey),Lr=nr.vertexLength;Do(this.layoutVertexArray,Xt,ur,-1,-1),Do(this.layoutVertexArray,Xt,ur,1,-1),Do(this.layoutVertexArray,Xt,ur,1,1),Do(this.layoutVertexArray,Xt,ur,-1,1),this.indexArray.emplaceBack(Lr,Lr+1,Lr+2),this.indexArray.emplaceBack(Lr,Lr+3,Lr+2),nr.vertexLength+=4,nr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,{},J)},Z("CircleBucket",ps,{omit:["layers"]});function fo(m,y){for(var I=0;I<m.length;I++)if(_d(y,m[I]))return!0;for(var U=0;U<y.length;U++)if(_d(m,y[U]))return!0;return!!Ev(m,y)}function as(m,y,I){return!!(_d(m,y)||Yv(y,m,I))}function tl(m,y){if(m.length===1)return vp(y,m[0]);for(var I=0;I<y.length;I++)for(var U=y[I],J=0;J<U.length;J++)if(_d(m,U[J]))return!0;for(var ne=0;ne<m.length;ne++)if(vp(y,m[ne]))return!0;for(var fe=0;fe<y.length;fe++)if(Ev(m,y[fe]))return!0;return!1}function zu(m,y,I){for(var U=0;U<y.length;U++){var J=y[U];if(m.length>=3){for(var ne=0;ne<J.length;ne++)if(_d(m,J[ne]))return!0}if(Mv(m,J,I))return!0}return!1}function Mv(m,y,I){if(m.length>1){if(Ev(m,y))return!0;for(var U=0;U<y.length;U++)if(Yv(y[U],m,I))return!0}for(var J=0;J<m.length;J++)if(Yv(m[J],y,I))return!0;return!1}function Ev(m,y){if(m.length===0||y.length===0)return!1;for(var I=0;I<m.length-1;I++)for(var U=m[I],J=m[I+1],ne=0;ne<y.length-1;ne++){var fe=y[ne],Fe=y[ne+1];if(yd(U,J,fe,Fe))return!0}return!1}function yd(m,y,I,U){return ae(m,I,U)!==ae(y,I,U)&&ae(m,y,I)!==ae(m,y,U)}function Yv(m,y,I){var U=I*I;if(y.length===1)return m.distSqr(y[0])<U;for(var J=1;J<y.length;J++){var ne=y[J-1],fe=y[J];if(cg(m,ne,fe)<U)return!0}return!1}function cg(m,y,I){var U=y.distSqr(I);if(U===0)return m.distSqr(y);var J=((m.x-y.x)*(I.x-y.x)+(m.y-y.y)*(I.y-y.y))/U;return J<0?m.distSqr(y):J>1?m.distSqr(I):m.distSqr(I.sub(y)._mult(J)._add(y))}function vp(m,y){for(var I=!1,U,J,ne,fe=0;fe<m.length;fe++){U=m[fe];for(var Fe=0,Qe=U.length-1;Fe<U.length;Qe=Fe++)J=U[Fe],ne=U[Qe],J.y>y.y!=ne.y>y.y&&y.x<(ne.x-J.x)*(y.y-J.y)/(ne.y-J.y)+J.x&&(I=!I)}return I}function _d(m,y){for(var I=!1,U=0,J=m.length-1;U<m.length;J=U++){var ne=m[U],fe=m[J];ne.y>y.y!=fe.y>y.y&&y.x<(fe.x-ne.x)*(y.y-ne.y)/(fe.y-ne.y)+ne.x&&(I=!I)}return I}function pp(m,y,I,U,J){for(var ne=0,fe=m;ne<fe.length;ne+=1){var Fe=fe[ne];if(y<=Fe.x&&I<=Fe.y&&U>=Fe.x&&J>=Fe.y)return!0}var Qe=[new u(y,I),new u(y,J),new u(U,J),new u(U,I)];if(m.length>2)for(var st=0,mt=Qe;st<mt.length;st+=1){var Xt=mt[st];if(_d(m,Xt))return!0}for(var ur=0;ur<m.length-1;ur++){var nr=m[ur],Lr=m[ur+1];if(Nd(nr,Lr,Qe))return!0}return!1}function Nd(m,y,I){var U=I[0],J=I[2];if(m.x<U.x&&y.x<U.x||m.x>J.x&&y.x>J.x||m.y<U.y&&y.y<U.y||m.y>J.y&&y.y>J.y)return!1;var ne=ae(m,y,I[0]);return ne!==ae(m,y,I[1])||ne!==ae(m,y,I[2])||ne!==ae(m,y,I[3])}function xd(m,y,I){var U=y.paint.get(m).value;return U.kind==="constant"?U.value:I.programConfigurations.get(y.id).getMaxValue(m)}function kv(m){return Math.sqrt(m[0]*m[0]+m[1]*m[1])}function Kv(m,y,I,U,J){if(!y[0]&&!y[1])return m;var ne=u.convert(y)._mult(J);I==="viewport"&&ne._rotate(-U);for(var fe=[],Fe=0;Fe<m.length;Fe++){var Qe=m[Fe];fe.push(Qe.sub(ne))}return fe}var Cv=new Oi({"circle-sort-key":new Er(on.layout_circle["circle-sort-key"])}),ny=new Oi({"circle-radius":new Er(on.paint_circle["circle-radius"]),"circle-color":new Er(on.paint_circle["circle-color"]),"circle-blur":new Er(on.paint_circle["circle-blur"]),"circle-opacity":new Er(on.paint_circle["circle-opacity"]),"circle-translate":new At(on.paint_circle["circle-translate"]),"circle-translate-anchor":new At(on.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new At(on.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new At(on.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new Er(on.paint_circle["circle-stroke-width"]),"circle-stroke-color":new Er(on.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new Er(on.paint_circle["circle-stroke-opacity"])}),fg={paint:ny,layout:Cv},Hf=typeof Float32Array!="undefined"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var m=arguments,y=0,I=arguments.length;I--;)y+=m[I]*m[I];return Math.sqrt(y)});function hg(){var m=new Hf(4);return Hf!=Float32Array&&(m[1]=0,m[2]=0),m[0]=1,m[3]=1,m}function ay(m,y,I){var U=y[0],J=y[1],ne=y[2],fe=y[3],Fe=Math.sin(I),Qe=Math.cos(I);return m[0]=U*Qe+ne*Fe,m[1]=J*Qe+fe*Fe,m[2]=U*-Fe+ne*Qe,m[3]=J*-Fe+fe*Qe,m}function Rh(){var m=new Hf(9);return Hf!=Float32Array&&(m[1]=0,m[2]=0,m[3]=0,m[5]=0,m[6]=0,m[7]=0),m[0]=1,m[4]=1,m[8]=1,m}function rm(m,y){var I=Math.sin(y),U=Math.cos(y);return m[0]=U,m[1]=I,m[2]=0,m[3]=-I,m[4]=U,m[5]=0,m[6]=0,m[7]=0,m[8]=1,m}function w1(){var m=new Hf(16);return Hf!=Float32Array&&(m[1]=0,m[2]=0,m[3]=0,m[4]=0,m[6]=0,m[7]=0,m[8]=0,m[9]=0,m[11]=0,m[12]=0,m[13]=0,m[14]=0),m[0]=1,m[5]=1,m[10]=1,m[15]=1,m}function T1(m){var y=new Hf(16);return y[0]=m[0],y[1]=m[1],y[2]=m[2],y[3]=m[3],y[4]=m[4],y[5]=m[5],y[6]=m[6],y[7]=m[7],y[8]=m[8],y[9]=m[9],y[10]=m[10],y[11]=m[11],y[12]=m[12],y[13]=m[13],y[14]=m[14],y[15]=m[15],y}function oy(m){return m[0]=1,m[1]=0,m[2]=0,m[3]=0,m[4]=0,m[5]=1,m[6]=0,m[7]=0,m[8]=0,m[9]=0,m[10]=1,m[11]=0,m[12]=0,m[13]=0,m[14]=0,m[15]=1,m}function im(m,y){var I=y[0],U=y[1],J=y[2],ne=y[3],fe=y[4],Fe=y[5],Qe=y[6],st=y[7],mt=y[8],Xt=y[9],ur=y[10],nr=y[11],Lr=y[12],Yr=y[13],_i=y[14],si=y[15],Hi=I*Fe-U*fe,Ei=I*Qe-J*fe,Vi=I*st-ne*fe,en=U*Qe-J*Fe,An=U*st-ne*Fe,ra=J*st-ne*Qe,$n=mt*Yr-Xt*Lr,Ba=mt*_i-ur*Lr,_a=mt*si-nr*Lr,Pa=Xt*_i-ur*Yr,qo=Xt*si-nr*Yr,Na=ur*si-nr*_i,ja=Hi*Na-Ei*qo+Vi*Pa+en*_a-An*Ba+ra*$n;return ja?(ja=1/ja,m[0]=(Fe*Na-Qe*qo+st*Pa)*ja,m[1]=(J*qo-U*Na-ne*Pa)*ja,m[2]=(Yr*ra-_i*An+si*en)*ja,m[3]=(ur*An-Xt*ra-nr*en)*ja,m[4]=(Qe*_a-fe*Na-st*Ba)*ja,m[5]=(I*Na-J*_a+ne*Ba)*ja,m[6]=(_i*Vi-Lr*ra-si*Ei)*ja,m[7]=(mt*ra-ur*Vi+nr*Ei)*ja,m[8]=(fe*qo-Fe*_a+st*$n)*ja,m[9]=(U*_a-I*qo-ne*$n)*ja,m[10]=(Lr*An-Yr*Vi+si*Hi)*ja,m[11]=(Xt*Vi-mt*An-nr*Hi)*ja,m[12]=(Fe*Ba-fe*Pa-Qe*$n)*ja,m[13]=(I*Pa-U*Ba+J*$n)*ja,m[14]=(Yr*Ei-Lr*en-_i*Hi)*ja,m[15]=(mt*en-Xt*Ei+ur*Hi)*ja,m):null}function nm(m,y,I){var U=y[0],J=y[1],ne=y[2],fe=y[3],Fe=y[4],Qe=y[5],st=y[6],mt=y[7],Xt=y[8],ur=y[9],nr=y[10],Lr=y[11],Yr=y[12],_i=y[13],si=y[14],Hi=y[15],Ei=I[0],Vi=I[1],en=I[2],An=I[3];return m[0]=Ei*U+Vi*Fe+en*Xt+An*Yr,m[1]=Ei*J+Vi*Qe+en*ur+An*_i,m[2]=Ei*ne+Vi*st+en*nr+An*si,m[3]=Ei*fe+Vi*mt+en*Lr+An*Hi,Ei=I[4],Vi=I[5],en=I[6],An=I[7],m[4]=Ei*U+Vi*Fe+en*Xt+An*Yr,m[5]=Ei*J+Vi*Qe+en*ur+An*_i,m[6]=Ei*ne+Vi*st+en*nr+An*si,m[7]=Ei*fe+Vi*mt+en*Lr+An*Hi,Ei=I[8],Vi=I[9],en=I[10],An=I[11],m[8]=Ei*U+Vi*Fe+en*Xt+An*Yr,m[9]=Ei*J+Vi*Qe+en*ur+An*_i,m[10]=Ei*ne+Vi*st+en*nr+An*si,m[11]=Ei*fe+Vi*mt+en*Lr+An*Hi,Ei=I[12],Vi=I[13],en=I[14],An=I[15],m[12]=Ei*U+Vi*Fe+en*Xt+An*Yr,m[13]=Ei*J+Vi*Qe+en*ur+An*_i,m[14]=Ei*ne+Vi*st+en*nr+An*si,m[15]=Ei*fe+Vi*mt+en*Lr+An*Hi,m}function Fu(m,y,I){var U=I[0],J=I[1],ne=I[2],fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si;return y===m?(m[12]=y[0]*U+y[4]*J+y[8]*ne+y[12],m[13]=y[1]*U+y[5]*J+y[9]*ne+y[13],m[14]=y[2]*U+y[6]*J+y[10]*ne+y[14],m[15]=y[3]*U+y[7]*J+y[11]*ne+y[15]):(fe=y[0],Fe=y[1],Qe=y[2],st=y[3],mt=y[4],Xt=y[5],ur=y[6],nr=y[7],Lr=y[8],Yr=y[9],_i=y[10],si=y[11],m[0]=fe,m[1]=Fe,m[2]=Qe,m[3]=st,m[4]=mt,m[5]=Xt,m[6]=ur,m[7]=nr,m[8]=Lr,m[9]=Yr,m[10]=_i,m[11]=si,m[12]=fe*U+mt*J+Lr*ne+y[12],m[13]=Fe*U+Xt*J+Yr*ne+y[13],m[14]=Qe*U+ur*J+_i*ne+y[14],m[15]=st*U+nr*J+si*ne+y[15]),m}function kl(m,y,I){var U=I[0],J=I[1],ne=I[2];return m[0]=y[0]*U,m[1]=y[1]*U,m[2]=y[2]*U,m[3]=y[3]*U,m[4]=y[4]*J,m[5]=y[5]*J,m[6]=y[6]*J,m[7]=y[7]*J,m[8]=y[8]*ne,m[9]=y[9]*ne,m[10]=y[10]*ne,m[11]=y[11]*ne,m[12]=y[12],m[13]=y[13],m[14]=y[14],m[15]=y[15],m}function bd(m,y,I){var U=Math.sin(I),J=Math.cos(I),ne=y[4],fe=y[5],Fe=y[6],Qe=y[7],st=y[8],mt=y[9],Xt=y[10],ur=y[11];return y!==m&&(m[0]=y[0],m[1]=y[1],m[2]=y[2],m[3]=y[3],m[12]=y[12],m[13]=y[13],m[14]=y[14],m[15]=y[15]),m[4]=ne*J+st*U,m[5]=fe*J+mt*U,m[6]=Fe*J+Xt*U,m[7]=Qe*J+ur*U,m[8]=st*J-ne*U,m[9]=mt*J-fe*U,m[10]=Xt*J-Fe*U,m[11]=ur*J-Qe*U,m}function sy(m,y,I){var U=Math.sin(I),J=Math.cos(I),ne=y[0],fe=y[1],Fe=y[2],Qe=y[3],st=y[4],mt=y[5],Xt=y[6],ur=y[7];return y!==m&&(m[8]=y[8],m[9]=y[9],m[10]=y[10],m[11]=y[11],m[12]=y[12],m[13]=y[13],m[14]=y[14],m[15]=y[15]),m[0]=ne*J+st*U,m[1]=fe*J+mt*U,m[2]=Fe*J+Xt*U,m[3]=Qe*J+ur*U,m[4]=st*J-ne*U,m[5]=mt*J-fe*U,m[6]=Xt*J-Fe*U,m[7]=ur*J-Qe*U,m}function A1(m,y,I,U,J){var ne=1/Math.tan(y/2),fe;return m[0]=ne/I,m[1]=0,m[2]=0,m[3]=0,m[4]=0,m[5]=ne,m[6]=0,m[7]=0,m[8]=0,m[9]=0,m[11]=-1,m[12]=0,m[13]=0,m[15]=0,J!=null&&J!==1/0?(fe=1/(U-J),m[10]=(J+U)*fe,m[14]=2*J*U*fe):(m[10]=-1,m[14]=-2*U),m}function Kl(m,y,I,U,J,ne,fe){var Fe=1/(y-I),Qe=1/(U-J),st=1/(ne-fe);return m[0]=-2*Fe,m[1]=0,m[2]=0,m[3]=0,m[4]=0,m[5]=-2*Qe,m[6]=0,m[7]=0,m[8]=0,m[9]=0,m[10]=2*st,m[11]=0,m[12]=(y+I)*Fe,m[13]=(J+U)*Qe,m[14]=(fe+ne)*st,m[15]=1,m}var Nx=nm;function am(){var m=new Hf(3);return Hf!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0),m}function Mw(m){var y=new Hf(3);return y[0]=m[0],y[1]=m[1],y[2]=m[2],y}function Lv(m,y,I){return m[0]=y[0]+I[0],m[1]=y[1]+I[1],m[2]=y[2]+I[2],m}function om(m,y,I){return m[0]=y[0]-I[0],m[1]=y[1]-I[1],m[2]=y[2]-I[2],m}function Ew(m,y,I){return m[0]=y[0]*I,m[1]=y[1]*I,m[2]=y[2]*I,m}function Ux(m,y){var I=y[0],U=y[1],J=y[2],ne=I*I+U*U+J*J;return ne>0&&(ne=1/Math.sqrt(ne)),m[0]=y[0]*ne,m[1]=y[1]*ne,m[2]=y[2]*ne,m}function P9(m,y){return m[0]*y[0]+m[1]*y[1]+m[2]*y[2]}function I9(m,y,I){var U=y[0],J=y[1],ne=y[2],fe=I[0],Fe=I[1],Qe=I[2];return m[0]=J*Qe-ne*Fe,m[1]=ne*fe-U*Qe,m[2]=U*Fe-J*fe,m}function R9(m,y,I){var U=y[0],J=y[1],ne=y[2];return m[0]=U*I[0]+J*I[3]+ne*I[6],m[1]=U*I[1]+J*I[4]+ne*I[7],m[2]=U*I[2]+J*I[5]+ne*I[8],m}var D9=om,mQ=function(){var m=am();return function(y,I,U,J,ne,fe){var Fe,Qe;for(I||(I=3),U||(U=0),J?Qe=Math.min(J*I+U,y.length):Qe=y.length,Fe=U;Fe<Qe;Fe+=I)m[0]=y[Fe],m[1]=y[Fe+1],m[2]=y[Fe+2],ne(m,m,fe),y[Fe]=m[0],y[Fe+1]=m[1],y[Fe+2]=m[2];return y}}();function z9(){var m=new Hf(4);return Hf!=Float32Array&&(m[0]=0,m[1]=0,m[2]=0,m[3]=0),m}function F9(m,y,I){return m[0]=y[0]*I,m[1]=y[1]*I,m[2]=y[2]*I,m[3]=y[3]*I,m}function q9(m,y){return m[0]*y[0]+m[1]*y[1]+m[2]*y[2]+m[3]*y[3]}function ly(m,y,I){var U=y[0],J=y[1],ne=y[2],fe=y[3];return m[0]=I[0]*U+I[4]*J+I[8]*ne+I[12]*fe,m[1]=I[1]*U+I[5]*J+I[9]*ne+I[13]*fe,m[2]=I[2]*U+I[6]*J+I[10]*ne+I[14]*fe,m[3]=I[3]*U+I[7]*J+I[11]*ne+I[15]*fe,m}var Vx=function(){var m=z9();return function(y,I,U,J,ne,fe){var Fe,Qe;for(I||(I=4),U||(U=0),J?Qe=Math.min(J*I+U,y.length):Qe=y.length,Fe=U;Fe<Qe;Fe+=I)m[0]=y[Fe],m[1]=y[Fe+1],m[2]=y[Fe+2],m[3]=y[Fe+3],ne(m,m,fe),y[Fe]=m[0],y[Fe+1]=m[1],y[Fe+2]=m[2],y[Fe+3]=m[3];return y}}();function cC(){var m=new Hf(2);return Hf!=Float32Array&&(m[0]=0,m[1]=0),m}function eS(m){var y=m[0],I=m[1];return y*y+I*I}var tS=eS,yQ=function(){var m=cC();return function(y,I,U,J,ne,fe){var Fe,Qe;for(I||(I=2),U||(U=0),J?Qe=Math.min(J*I+U,y.length):Qe=y.length,Fe=U;Fe<Qe;Fe+=I)m[0]=y[Fe],m[1]=y[Fe+1],ne(m,m,fe),y[Fe]=m[0],y[Fe+1]=m[1];return y}}(),O9=function(m){function y(I){m.call(this,I,fg)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.createBucket=function(U){return new ps(U)},y.prototype.queryRadius=function(U){var J=U;return xd("circle-radius",this,J)+xd("circle-stroke-width",this,J)+kv(this.paint.get("circle-translate"))},y.prototype.queryIntersectsFeature=function(U,J,ne,fe,Fe,Qe,st,mt){for(var Xt=Kv(U,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),Qe.angle,st),ur=this.paint.get("circle-radius").evaluate(J,ne),nr=this.paint.get("circle-stroke-width").evaluate(J,ne),Lr=ur+nr,Yr=this.paint.get("circle-pitch-alignment")==="map",_i=Yr?Xt:hC(Xt,mt),si=Yr?Lr*st:Lr,Hi=0,Ei=fe;Hi<Ei.length;Hi+=1)for(var Vi=Ei[Hi],en=0,An=Vi;en<An.length;en+=1){var ra=An[en],$n=Yr?ra:fC(ra,mt),Ba=si,_a=ly([],[ra.x,ra.y,0,1],mt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?Ba*=_a[3]/Qe.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(Ba*=Qe.cameraToCenterDistance/_a[3]),as(_i,$n,Ba))return!0}return!1},y}(cn);function fC(m,y){var I=ly([],[m.x,m.y,0,1],y);return new u(I[0]/I[3],I[1]/I[3])}function hC(m,y){return m.map(function(I){return fC(I,y)})}var rS=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(ps);Z("HeatmapBucket",rS,{omit:["layers"]});function wd(m,y,I,U){var J=y.width,ne=y.height;if(!U)U=new Uint8Array(J*ne*I);else if(U instanceof Uint8ClampedArray)U=new Uint8Array(U.buffer);else if(U.length!==J*ne*I)throw new RangeError("mismatched image size");return m.width=J,m.height=ne,m.data=U,m}function kw(m,y,I){var U=y.width,J=y.height;if(!(U===m.width&&J===m.height)){var ne=wd({},{width:U,height:J},I);Cw(m,ne,{x:0,y:0},{x:0,y:0},{width:Math.min(m.width,U),height:Math.min(m.height,J)},I),m.width=U,m.height=J,m.data=ne.data}}function Cw(m,y,I,U,J,ne){if(J.width===0||J.height===0)return y;if(J.width>m.width||J.height>m.height||I.x>m.width-J.width||I.y>m.height-J.height)throw new RangeError("out of range source coordinates for image copy");if(J.width>y.width||J.height>y.height||U.x>y.width-J.width||U.y>y.height-J.height)throw new RangeError("out of range destination coordinates for image copy");for(var fe=m.data,Fe=y.data,Qe=0;Qe<J.height;Qe++)for(var st=((I.y+Qe)*m.width+I.x)*ne,mt=((U.y+Qe)*y.width+U.x)*ne,Xt=0;Xt<J.width*ne;Xt++)Fe[mt+Xt]=fe[st+Xt];return y}var Pv=function(y,I){wd(this,y,1,I)};Pv.prototype.resize=function(y){kw(this,y,1)},Pv.prototype.clone=function(){return new Pv({width:this.width,height:this.height},new Uint8Array(this.data))},Pv.copy=function(y,I,U,J,ne){Cw(y,I,U,J,ne,1)};var lh=function(y,I){wd(this,y,4,I)};lh.prototype.resize=function(y){kw(this,y,4)},lh.prototype.replace=function(y,I){I?this.data.set(y):y instanceof Uint8ClampedArray?this.data=new Uint8Array(y.buffer):this.data=y},lh.prototype.clone=function(){return new lh({width:this.width,height:this.height},new Uint8Array(this.data))},lh.copy=function(y,I,U,J,ne){Cw(y,I,U,J,ne,4)},Z("AlphaImage",Pv),Z("RGBAImage",lh);var Hx=new Oi({"heatmap-radius":new Er(on.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Er(on.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new At(on.paint_heatmap["heatmap-intensity"]),"heatmap-color":new Ui(on.paint_heatmap["heatmap-color"]),"heatmap-opacity":new At(on.paint_heatmap["heatmap-opacity"])}),S1={paint:Hx};function Gx(m){var y={},I=m.resolution||256,U=m.clips?m.clips.length:1,J=m.image||new lh({width:I,height:U}),ne=function(Hi,Ei,Vi){y[m.evaluationKey]=Vi;var en=m.expression.evaluate(y);J.data[Hi+Ei+0]=Math.floor(en.r*255/en.a),J.data[Hi+Ei+1]=Math.floor(en.g*255/en.a),J.data[Hi+Ei+2]=Math.floor(en.b*255/en.a),J.data[Hi+Ei+3]=Math.floor(en.a*255)};if(m.clips)for(var st=0,mt=0;st<U;++st,mt+=I*4)for(var Xt=0,ur=0;Xt<I;Xt++,ur+=4){var nr=Xt/(I-1),Lr=m.clips[st],Yr=Lr.start,_i=Lr.end,si=Yr*(1-nr)+_i*nr;ne(mt,ur,si)}else for(var fe=0,Fe=0;fe<I;fe++,Fe+=4){var Qe=fe/(I-1);ne(0,Fe,Qe)}return J}var Lw=function(m){function y(I){m.call(this,I,S1),this._updateColorRamp()}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.createBucket=function(U){return new rS(U)},y.prototype._handleSpecialPaintPropertyUpdate=function(U){U==="heatmap-color"&&this._updateColorRamp()},y.prototype._updateColorRamp=function(){var U=this._transitionablePaint._values["heatmap-color"].value.expression;this.colorRamp=Gx({expression:U,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null},y.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},y.prototype.queryRadius=function(){return 0},y.prototype.queryIntersectsFeature=function(){return!1},y.prototype.hasOffscreenPass=function(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"},y}(cn),B9=new Oi({"hillshade-illumination-direction":new At(on.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new At(on.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new At(on.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new At(on.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new At(on.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new At(on.paint_hillshade["hillshade-accent-color"])}),N9={paint:B9},dC=function(m){function y(I){m.call(this,I,N9)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.hasOffscreenPass=function(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"},y}(cn),vC=Dn([{name:"a_pos",components:2,type:"Int16"}],4),U9=vC.members,Pw=M1,pC=M1;function M1(m,y,I){I=I||2;var U=y&&y.length,J=U?y[0]*I:m.length,ne=Iw(m,0,J,I,!0),fe=[];if(!ne||ne.next===ne.prev)return fe;var Fe,Qe,st,mt,Xt,ur,nr;if(U&&(ne=lm(m,y,ne,I)),m.length>80*I){Fe=st=m[0],Qe=mt=m[1];for(var Lr=I;Lr<J;Lr+=I)Xt=m[Lr],ur=m[Lr+1],Xt<Fe&&(Fe=Xt),ur<Qe&&(Qe=ur),Xt>st&&(st=Xt),ur>mt&&(mt=ur);nr=Math.max(st-Fe,mt-Qe),nr=nr!==0?1/nr:0}return jx(ne,fe,I,Fe,Qe,nr),fe}function Iw(m,y,I,U,J){var ne,fe;if(J===uS(m,y,I,U)>0)for(ne=y;ne<I;ne+=U)fe=xC(ne,m[ne],m[ne+1],fe);else for(ne=I-U;ne>=y;ne-=U)fe=xC(ne,m[ne],m[ne+1],fe);return fe&&Zx(fe,fe.next)&&(Kx(fe),fe=fe.next),fe}function sm(m,y){if(!m)return m;y||(y=m);var I=m,U;do if(U=!1,!I.steiner&&(Zx(I,I.next)||tf(I.prev,I,I.next)===0)){if(Kx(I),I=y=I.prev,I===I.next)break;U=!0}else I=I.next;while(U||I!==y);return y}function jx(m,y,I,U,J,ne,fe){if(m){!fe&&ne&&Rw(m,U,J,ne);for(var Fe=m,Qe,st;m.prev!==m.next;){if(Qe=m.prev,st=m.next,ne?mC(m,U,J,ne):gC(m)){y.push(Qe.i/I),y.push(m.i/I),y.push(st.i/I),Kx(m),m=st.next,Fe=st.next;continue}if(m=st,m===Fe){fe?fe===1?(m=Wx(sm(m),y,I),jx(m,y,I,U,J,ne,2)):fe===2&&v0(m,y,I,U,J,ne):jx(sm(m),y,I,U,J,ne,1);break}}}}function gC(m){var y=m.prev,I=m,U=m.next;if(tf(y,I,U)>=0)return!1;for(var J=m.next.next;J!==m.prev;){if(um(y.x,y.y,I.x,I.y,U.x,U.y,J.x,J.y)&&tf(J.prev,J,J.next)>=0)return!1;J=J.next}return!0}function mC(m,y,I,U){var J=m.prev,ne=m,fe=m.next;if(tf(J,ne,fe)>=0)return!1;for(var Fe=J.x<ne.x?J.x<fe.x?J.x:fe.x:ne.x<fe.x?ne.x:fe.x,Qe=J.y<ne.y?J.y<fe.y?J.y:fe.y:ne.y<fe.y?ne.y:fe.y,st=J.x>ne.x?J.x>fe.x?J.x:fe.x:ne.x>fe.x?ne.x:fe.x,mt=J.y>ne.y?J.y>fe.y?J.y:fe.y:ne.y>fe.y?ne.y:fe.y,Xt=aS(Fe,Qe,y,I,U),ur=aS(st,mt,y,I,U),nr=m.prevZ,Lr=m.nextZ;nr&&nr.z>=Xt&&Lr&&Lr.z<=ur;){if(nr!==m.prev&&nr!==m.next&&um(J.x,J.y,ne.x,ne.y,fe.x,fe.y,nr.x,nr.y)&&tf(nr.prev,nr,nr.next)>=0||(nr=nr.prevZ,Lr!==m.prev&&Lr!==m.next&&um(J.x,J.y,ne.x,ne.y,fe.x,fe.y,Lr.x,Lr.y)&&tf(Lr.prev,Lr,Lr.next)>=0))return!1;Lr=Lr.nextZ}for(;nr&&nr.z>=Xt;){if(nr!==m.prev&&nr!==m.next&&um(J.x,J.y,ne.x,ne.y,fe.x,fe.y,nr.x,nr.y)&&tf(nr.prev,nr,nr.next)>=0)return!1;nr=nr.prevZ}for(;Lr&&Lr.z<=ur;){if(Lr!==m.prev&&Lr!==m.next&&um(J.x,J.y,ne.x,ne.y,fe.x,fe.y,Lr.x,Lr.y)&&tf(Lr.prev,Lr,Lr.next)>=0)return!1;Lr=Lr.nextZ}return!0}function Wx(m,y,I){var U=m;do{var J=U.prev,ne=U.next.next;!Zx(J,ne)&&Dw(J,U,U.next,ne)&&Yx(J,ne)&&Yx(ne,J)&&(y.push(J.i/I),y.push(U.i/I),y.push(ne.i/I),Kx(U),Kx(U.next),U=m=ne),U=U.next}while(U!==m);return sm(U)}function v0(m,y,I,U,J,ne){var fe=m;do{for(var Fe=fe.next.next;Fe!==fe.prev;){if(fe.i!==Fe.i&&E1(fe,Fe)){var Qe=sS(fe,Fe);fe=sm(fe,fe.next),Qe=sm(Qe,Qe.next),jx(fe,y,I,U,J,ne),jx(Qe,y,I,U,J,ne);return}Fe=Fe.next}fe=fe.next}while(fe!==m)}function lm(m,y,I,U){var J=[],ne,fe,Fe,Qe,st;for(ne=0,fe=y.length;ne<fe;ne++)Fe=y[ne]*U,Qe=ne<fe-1?y[ne+1]*U:m.length,st=Iw(m,Fe,Qe,U,!1),st===st.next&&(st.steiner=!0),J.push(oS(st));for(J.sort(yC),ne=0;ne<J.length;ne++)iS(J[ne],I),I=sm(I,I.next);return I}function yC(m,y){return m.x-y.x}function iS(m,y){if(y=V9(m,y),y){var I=sS(y,m);sm(y,y.next),sm(I,I.next)}}function V9(m,y){var I=y,U=m.x,J=m.y,ne=-1/0,fe;do{if(J<=I.y&&J>=I.next.y&&I.next.y!==I.y){var Fe=I.x+(J-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(Fe<=U&&Fe>ne){if(ne=Fe,Fe===U){if(J===I.y)return I;if(J===I.next.y)return I.next}fe=I.x<I.next.x?I:I.next}}I=I.next}while(I!==y);if(!fe)return null;if(U===ne)return fe;var Qe=fe,st=fe.x,mt=fe.y,Xt=1/0,ur;I=fe;do U>=I.x&&I.x>=st&&U!==I.x&&um(J<mt?U:ne,J,st,mt,J<mt?ne:U,J,I.x,I.y)&&(ur=Math.abs(J-I.y)/(U-I.x),Yx(I,m)&&(ur<Xt||ur===Xt&&(I.x>fe.x||I.x===fe.x&&H9(fe,I)))&&(fe=I,Xt=ur)),I=I.next;while(I!==Qe);return fe}function H9(m,y){return tf(m.prev,m,y.prev)<0&&tf(y.next,m,m.next)<0}function Rw(m,y,I,U){var J=m;do J.z===null&&(J.z=aS(J.x,J.y,y,I,U)),J.prevZ=J.prev,J.nextZ=J.next,J=J.next;while(J!==m);J.prevZ.nextZ=null,J.prevZ=null,nS(J)}function nS(m){var y,I,U,J,ne,fe,Fe,Qe,st=1;do{for(I=m,m=null,ne=null,fe=0;I;){for(fe++,U=I,Fe=0,y=0;y<st&&(Fe++,U=U.nextZ,!!U);y++);for(Qe=st;Fe>0||Qe>0&&U;)Fe!==0&&(Qe===0||!U||I.z<=U.z)?(J=I,I=I.nextZ,Fe--):(J=U,U=U.nextZ,Qe--),ne?ne.nextZ=J:m=J,J.prevZ=ne,ne=J;I=U}ne.nextZ=null,st*=2}while(fe>1);return m}function aS(m,y,I,U,J){return m=32767*(m-I)*J,y=32767*(y-U)*J,m=(m|m<<8)&16711935,m=(m|m<<4)&252645135,m=(m|m<<2)&858993459,m=(m|m<<1)&1431655765,y=(y|y<<8)&16711935,y=(y|y<<4)&252645135,y=(y|y<<2)&858993459,y=(y|y<<1)&1431655765,m|y<<1}function oS(m){var y=m,I=m;do(y.x<I.x||y.x===I.x&&y.y<I.y)&&(I=y),y=y.next;while(y!==m);return I}function um(m,y,I,U,J,ne,fe,Fe){return(J-fe)*(y-Fe)-(m-fe)*(ne-Fe)>=0&&(m-fe)*(U-Fe)-(I-fe)*(y-Fe)>=0&&(I-fe)*(ne-Fe)-(J-fe)*(U-Fe)>=0}function E1(m,y){return m.next.i!==y.i&&m.prev.i!==y.i&&!_C(m,y)&&(Yx(m,y)&&Yx(y,m)&&G9(m,y)&&(tf(m.prev,m,y.prev)||tf(m,y.prev,y))||Zx(m,y)&&tf(m.prev,m,m.next)>0&&tf(y.prev,y,y.next)>0)}function tf(m,y,I){return(y.y-m.y)*(I.x-y.x)-(y.x-m.x)*(I.y-y.y)}function Zx(m,y){return m.x===y.x&&m.y===y.y}function Dw(m,y,I,U){var J=uy(tf(m,y,I)),ne=uy(tf(m,y,U)),fe=uy(tf(I,U,m)),Fe=uy(tf(I,U,y));return!!(J!==ne&&fe!==Fe||J===0&&Xx(m,I,y)||ne===0&&Xx(m,U,y)||fe===0&&Xx(I,m,U)||Fe===0&&Xx(I,y,U))}function Xx(m,y,I){return y.x<=Math.max(m.x,I.x)&&y.x>=Math.min(m.x,I.x)&&y.y<=Math.max(m.y,I.y)&&y.y>=Math.min(m.y,I.y)}function uy(m){return m>0?1:m<0?-1:0}function _C(m,y){var I=m;do{if(I.i!==m.i&&I.next.i!==m.i&&I.i!==y.i&&I.next.i!==y.i&&Dw(I,I.next,m,y))return!0;I=I.next}while(I!==m);return!1}function Yx(m,y){return tf(m.prev,m,m.next)<0?tf(m,y,m.next)>=0&&tf(m,m.prev,y)>=0:tf(m,y,m.prev)<0||tf(m,m.next,y)<0}function G9(m,y){var I=m,U=!1,J=(m.x+y.x)/2,ne=(m.y+y.y)/2;do I.y>ne!=I.next.y>ne&&I.next.y!==I.y&&J<(I.next.x-I.x)*(ne-I.y)/(I.next.y-I.y)+I.x&&(U=!U),I=I.next;while(I!==m);return U}function sS(m,y){var I=new lS(m.i,m.x,m.y),U=new lS(y.i,y.x,y.y),J=m.next,ne=y.prev;return m.next=y,y.prev=m,I.next=J,J.prev=I,U.next=I,I.prev=U,ne.next=U,U.prev=ne,U}function xC(m,y,I,U){var J=new lS(m,y,I);return U?(J.next=U.next,J.prev=U,U.next.prev=J,U.next=J):(J.prev=J,J.next=J),J}function Kx(m){m.next.prev=m.prev,m.prev.next=m.next,m.prevZ&&(m.prevZ.nextZ=m.nextZ),m.nextZ&&(m.nextZ.prevZ=m.prevZ)}function lS(m,y,I){this.i=m,this.x=y,this.y=I,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}M1.deviation=function(m,y,I,U){var J=y&&y.length,ne=J?y[0]*I:m.length,fe=Math.abs(uS(m,0,ne,I));if(J)for(var Fe=0,Qe=y.length;Fe<Qe;Fe++){var st=y[Fe]*I,mt=Fe<Qe-1?y[Fe+1]*I:m.length;fe-=Math.abs(uS(m,st,mt,I))}var Xt=0;for(Fe=0;Fe<U.length;Fe+=3){var ur=U[Fe]*I,nr=U[Fe+1]*I,Lr=U[Fe+2]*I;Xt+=Math.abs((m[ur]-m[Lr])*(m[nr+1]-m[ur+1])-(m[ur]-m[nr])*(m[Lr+1]-m[ur+1]))}return fe===0&&Xt===0?0:Math.abs((Xt-fe)/fe)};function uS(m,y,I,U){for(var J=0,ne=y,fe=I-U;ne<I;ne+=U)J+=(m[fe]-m[ne])*(m[ne+1]+m[fe+1]),fe=ne;return J}M1.flatten=function(m){for(var y=m[0][0].length,I={vertices:[],holes:[],dimensions:y},U=0,J=0;J<m.length;J++){for(var ne=0;ne<m[J].length;ne++)for(var fe=0;fe<y;fe++)I.vertices.push(m[J][ne][fe]);J>0&&(U+=m[J-1].length,I.holes.push(U))}return I},Pw.default=pC;function cS(m,y,I,U,J){dg(m,y,I||0,U||m.length-1,J||bC)}function dg(m,y,I,U,J){for(;U>I;){if(U-I>600){var ne=U-I+1,fe=y-I+1,Fe=Math.log(ne),Qe=.5*Math.exp(2*Fe/3),st=.5*Math.sqrt(Fe*Qe*(ne-Qe)/ne)*(fe-ne/2<0?-1:1),mt=Math.max(I,Math.floor(y-fe*Qe/ne+st)),Xt=Math.min(U,Math.floor(y+(ne-fe)*Qe/ne+st));dg(m,y,mt,Xt,J)}var ur=m[y],nr=I,Lr=U;for(k1(m,I,y),J(m[U],ur)>0&&k1(m,I,U);nr<Lr;){for(k1(m,nr,Lr),nr++,Lr--;J(m[nr],ur)<0;)nr++;for(;J(m[Lr],ur)>0;)Lr--}J(m[I],ur)===0?k1(m,I,Lr):(Lr++,k1(m,Lr,U)),Lr<=y&&(I=Lr+1),y<=Lr&&(U=Lr-1)}}function k1(m,y,I){var U=m[y];m[y]=m[I],m[I]=U}function bC(m,y){return m<y?-1:m>y?1:0}function zw(m,y){var I=m.length;if(I<=1)return[m];for(var U=[],J,ne,fe=0;fe<I;fe++){var Fe=_e(m[fe]);Fe!==0&&(m[fe].area=Math.abs(Fe),ne===void 0&&(ne=Fe<0),ne===Fe<0?(J&&U.push(J),J=[m[fe]]):J.push(m[fe]))}if(J&&U.push(J),y>1)for(var Qe=0;Qe<U.length;Qe++)U[Qe].length<=y||(cS(U[Qe],y,1,U[Qe].length-1,wC),U[Qe]=U[Qe].slice(0,y));return U}function wC(m,y){return y.area-m.area}function Fw(m,y,I){for(var U=I.patternDependencies,J=!1,ne=0,fe=y;ne<fe.length;ne+=1){var Fe=fe[ne],Qe=Fe.paint.get(m+"-pattern");Qe.isConstant()||(J=!0);var st=Qe.constantOr(null);st&&(J=!0,U[st.to]=!0,U[st.from]=!0)}return J}function Jx(m,y,I,U,J){for(var ne=J.patternDependencies,fe=0,Fe=y;fe<Fe.length;fe+=1){var Qe=Fe[fe],st=Qe.paint.get(m+"-pattern"),mt=st.value;if(mt.kind!=="constant"){var Xt=mt.evaluate({zoom:U-1},I,{},J.availableImages),ur=mt.evaluate({zoom:U},I,{},J.availableImages),nr=mt.evaluate({zoom:U+1},I,{},J.availableImages);Xt=Xt&&Xt.name?Xt.name:Xt,ur=ur&&ur.name?ur.name:ur,nr=nr&&nr.name?nr.name:nr,ne[Xt]=!0,ne[ur]=!0,ne[nr]=!0,I.patterns[Qe.id]={min:Xt,mid:ur,max:nr}}}return I}var $x=500,gp=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new ji,this.indexArray=new ma,this.indexArray2=new Po,this.programConfigurations=new Ri(y.layers,y.zoom),this.segments=new ns,this.segments2=new ns,this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};gp.prototype.populate=function(y,I,U){this.hasPattern=Fw("fill",this.layers,I);for(var J=this.layers[0].layout.get("fill-sort-key"),ne=[],fe=0,Fe=y;fe<Fe.length;fe+=1){var Qe=Fe[fe],st=Qe.feature,mt=Qe.id,Xt=Qe.index,ur=Qe.sourceLayerIndex,nr=this.layers[0]._featureFilter.needGeometry,Lr=No(st,nr);if(this.layers[0]._featureFilter.filter(new pn(this.zoom),Lr,U)){var Yr=J?J.evaluate(Lr,{},U,I.availableImages):void 0,_i={id:mt,properties:st.properties,type:st.type,sourceLayerIndex:ur,index:Xt,geometry:nr?Lr.geometry:da(st),patterns:{},sortKey:Yr};ne.push(_i)}}J&&ne.sort(function(_a,Pa){return _a.sortKey-Pa.sortKey});for(var si=0,Hi=ne;si<Hi.length;si+=1){var Ei=Hi[si],Vi=Ei,en=Vi.geometry,An=Vi.index,ra=Vi.sourceLayerIndex;if(this.hasPattern){var $n=Jx("fill",this.layers,Ei,this.zoom,I);this.patternFeatures.push($n)}else this.addFeature(Ei,en,An,U,{});var Ba=y[An].feature;I.featureIndex.insert(Ba,en,An,ra,this.index)}},gp.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},gp.prototype.addFeatures=function(y,I,U){for(var J=0,ne=this.patternFeatures;J<ne.length;J+=1){var fe=ne[J];this.addFeature(fe,fe.geometry,fe.index,I,U)}},gp.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},gp.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},gp.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,U9),this.indexBuffer=y.createIndexBuffer(this.indexArray),this.indexBuffer2=y.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(y),this.uploaded=!0},gp.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},gp.prototype.addFeature=function(y,I,U,J,ne){for(var fe=0,Fe=zw(I,$x);fe<Fe.length;fe+=1){for(var Qe=Fe[fe],st=0,mt=0,Xt=Qe;mt<Xt.length;mt+=1){var ur=Xt[mt];st+=ur.length}for(var nr=this.segments.prepareSegment(st,this.layoutVertexArray,this.indexArray),Lr=nr.vertexLength,Yr=[],_i=[],si=0,Hi=Qe;si<Hi.length;si+=1){var Ei=Hi[si];if(Ei.length!==0){Ei!==Qe[0]&&_i.push(Yr.length/2);var Vi=this.segments2.prepareSegment(Ei.length,this.layoutVertexArray,this.indexArray2),en=Vi.vertexLength;this.layoutVertexArray.emplaceBack(Ei[0].x,Ei[0].y),this.indexArray2.emplaceBack(en+Ei.length-1,en),Yr.push(Ei[0].x),Yr.push(Ei[0].y);for(var An=1;An<Ei.length;An++)this.layoutVertexArray.emplaceBack(Ei[An].x,Ei[An].y),this.indexArray2.emplaceBack(en+An-1,en+An),Yr.push(Ei[An].x),Yr.push(Ei[An].y);Vi.vertexLength+=Ei.length,Vi.primitiveLength+=Ei.length}}for(var ra=Pw(Yr,_i),$n=0;$n<ra.length;$n+=3)this.indexArray.emplaceBack(Lr+ra[$n],Lr+ra[$n+1],Lr+ra[$n+2]);nr.vertexLength+=st,nr.primitiveLength+=ra.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ne,J)},Z("FillBucket",gp,{omit:["layers","patternFeatures"]});var fS=new Oi({"fill-sort-key":new Er(on.layout_fill["fill-sort-key"])}),TC=new Oi({"fill-antialias":new At(on.paint_fill["fill-antialias"]),"fill-opacity":new Er(on.paint_fill["fill-opacity"]),"fill-color":new Er(on.paint_fill["fill-color"]),"fill-outline-color":new Er(on.paint_fill["fill-outline-color"]),"fill-translate":new At(on.paint_fill["fill-translate"]),"fill-translate-anchor":new At(on.paint_fill["fill-translate-anchor"]),"fill-pattern":new Wr(on.paint_fill["fill-pattern"])}),Jv={paint:TC,layout:fS},Qx=function(m){function y(I){m.call(this,I,Jv)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.recalculate=function(U,J){m.prototype.recalculate.call(this,U,J);var ne=this.paint._values["fill-outline-color"];ne.value.kind==="constant"&&ne.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])},y.prototype.createBucket=function(U){return new gp(U)},y.prototype.queryRadius=function(){return kv(this.paint.get("fill-translate"))},y.prototype.queryIntersectsFeature=function(U,J,ne,fe,Fe,Qe,st){var mt=Kv(U,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),Qe.angle,st);return tl(mt,fe)},y.prototype.isTileClipped=function(){return!0},y}(cn),AC=Dn([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),SC=AC.members,hS=cy;function cy(m,y,I,U,J){this.properties={},this.extent=I,this.type=0,this._pbf=m,this._geometry=-1,this._keys=U,this._values=J,m.readFields(MC,this,y)}function MC(m,y,I){m==1?y.id=I.readVarint():m==2?EC(I,y):m==3?y.type=I.readVarint():m==4&&(y._geometry=I.pos)}function EC(m,y){for(var I=m.readVarint()+m.pos;m.pos<I;){var U=y._keys[m.readVarint()],J=y._values[m.readVarint()];y.properties[U]=J}}cy.types=["Unknown","Point","LineString","Polygon"],cy.prototype.loadGeometry=function(){var m=this._pbf;m.pos=this._geometry;for(var y=m.readVarint()+m.pos,I=1,U=0,J=0,ne=0,fe=[],Fe;m.pos<y;){if(U<=0){var Qe=m.readVarint();I=Qe&7,U=Qe>>3}if(U--,I===1||I===2)J+=m.readSVarint(),ne+=m.readSVarint(),I===1&&(Fe&&fe.push(Fe),Fe=[]),Fe.push(new u(J,ne));else if(I===7)Fe&&Fe.push(Fe[0].clone());else throw new Error("unknown command "+I)}return Fe&&fe.push(Fe),fe},cy.prototype.bbox=function(){var m=this._pbf;m.pos=this._geometry;for(var y=m.readVarint()+m.pos,I=1,U=0,J=0,ne=0,fe=1/0,Fe=-1/0,Qe=1/0,st=-1/0;m.pos<y;){if(U<=0){var mt=m.readVarint();I=mt&7,U=mt>>3}if(U--,I===1||I===2)J+=m.readSVarint(),ne+=m.readSVarint(),J<fe&&(fe=J),J>Fe&&(Fe=J),ne<Qe&&(Qe=ne),ne>st&&(st=ne);else if(I!==7)throw new Error("unknown command "+I)}return[fe,Qe,Fe,st]},cy.prototype.toGeoJSON=function(m,y,I){var U=this.extent*Math.pow(2,I),J=this.extent*m,ne=this.extent*y,fe=this.loadGeometry(),Fe=cy.types[this.type],Qe,st;function mt(nr){for(var Lr=0;Lr<nr.length;Lr++){var Yr=nr[Lr],_i=180-(Yr.y+ne)*360/U;nr[Lr]=[(Yr.x+J)*360/U-180,360/Math.PI*Math.atan(Math.exp(_i*Math.PI/180))-90]}}switch(this.type){case 1:var Xt=[];for(Qe=0;Qe<fe.length;Qe++)Xt[Qe]=fe[Qe][0];fe=Xt,mt(fe);break;case 2:for(Qe=0;Qe<fe.length;Qe++)mt(fe[Qe]);break;case 3:for(fe=j9(fe),Qe=0;Qe<fe.length;Qe++)for(st=0;st<fe[Qe].length;st++)mt(fe[Qe][st]);break}fe.length===1?fe=fe[0]:Fe="Multi"+Fe;var ur={type:"Feature",geometry:{type:Fe,coordinates:fe},properties:this.properties};return"id"in this&&(ur.id=this.id),ur};function j9(m){var y=m.length;if(y<=1)return[m];for(var I=[],U,J,ne=0;ne<y;ne++){var fe=kC(m[ne]);fe!==0&&(J===void 0&&(J=fe<0),J===fe<0?(U&&I.push(U),U=[m[ne]]):U.push(m[ne]))}return U&&I.push(U),I}function kC(m){for(var y=0,I=0,U=m.length,J=U-1,ne,fe;I<U;J=I++)ne=m[I],fe=m[J],y+=(fe.x-ne.x)*(ne.y+fe.y);return y}var vg=dS;function dS(m,y){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=m,this._keys=[],this._values=[],this._features=[],m.readFields(CC,this,y),this.length=this._features.length}function CC(m,y,I){m===15?y.version=I.readVarint():m===1?y.name=I.readString():m===5?y.extent=I.readVarint():m===2?y._features.push(I.pos):m===3?y._keys.push(I.readString()):m===4&&y._values.push(LC(I))}function LC(m){for(var y=null,I=m.readVarint()+m.pos;m.pos<I;){var U=m.readVarint()>>3;y=U===1?m.readString():U===2?m.readFloat():U===3?m.readDouble():U===4?m.readVarint64():U===5?m.readVarint():U===6?m.readSVarint():U===7?m.readBoolean():null}return y}dS.prototype.feature=function(m){if(m<0||m>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[m];var y=this._pbf.readVarint()+this._pbf.pos;return new hS(this._pbf,y,this.extent,this._keys,this._values)};var PC=W9;function W9(m,y){this.layers=m.readFields(Z9,{},y)}function Z9(m,y,I){if(m===3){var U=new vg(I,I.readVarint()+I.pos);U.length&&(y[U.name]=U)}}var IC=PC,C1=hS,RC=vg,pg={VectorTile:IC,VectorTileFeature:C1,VectorTileLayer:RC},DC=pg.VectorTileFeature.types,qw=500,L1=Math.pow(2,13);function cm(m,y,I,U,J,ne,fe,Fe){m.emplaceBack(y,I,Math.floor(U*L1)*2+fe,J*L1*2,ne*L1*2,Math.round(Fe))}var Hp=function(y){this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(I){return I.id}),this.index=y.index,this.hasPattern=!1,this.layoutVertexArray=new Un,this.indexArray=new ma,this.programConfigurations=new Ri(y.layers,y.zoom),this.segments=new ns,this.stateDependentLayerIds=this.layers.filter(function(I){return I.isStateDependent()}).map(function(I){return I.id})};Hp.prototype.populate=function(y,I,U){this.features=[],this.hasPattern=Fw("fill-extrusion",this.layers,I);for(var J=0,ne=y;J<ne.length;J+=1){var fe=ne[J],Fe=fe.feature,Qe=fe.id,st=fe.index,mt=fe.sourceLayerIndex,Xt=this.layers[0]._featureFilter.needGeometry,ur=No(Fe,Xt);if(this.layers[0]._featureFilter.filter(new pn(this.zoom),ur,U)){var nr={id:Qe,sourceLayerIndex:mt,index:st,geometry:Xt?ur.geometry:da(Fe),properties:Fe.properties,type:Fe.type,patterns:{}};this.hasPattern?this.features.push(Jx("fill-extrusion",this.layers,nr,this.zoom,I)):this.addFeature(nr,nr.geometry,st,U,{}),I.featureIndex.insert(Fe,nr.geometry,st,mt,this.index,!0)}}},Hp.prototype.addFeatures=function(y,I,U){for(var J=0,ne=this.features;J<ne.length;J+=1){var fe=ne[J],Fe=fe.geometry;this.addFeature(fe,Fe,fe.index,I,U)}},Hp.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},Hp.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Hp.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Hp.prototype.upload=function(y){this.uploaded||(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,SC),this.indexBuffer=y.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(y),this.uploaded=!0},Hp.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Hp.prototype.addFeature=function(y,I,U,J,ne){for(var fe=0,Fe=zw(I,qw);fe<Fe.length;fe+=1){for(var Qe=Fe[fe],st=0,mt=0,Xt=Qe;mt<Xt.length;mt+=1){var ur=Xt[mt];st+=ur.length}for(var nr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),Lr=0,Yr=Qe;Lr<Yr.length;Lr+=1){var _i=Yr[Lr];if(_i.length!==0&&!Y9(_i))for(var si=0,Hi=0;Hi<_i.length;Hi++){var Ei=_i[Hi];if(Hi>=1){var Vi=_i[Hi-1];if(!X9(Ei,Vi)){nr.vertexLength+4>ns.MAX_VERTEX_ARRAY_LENGTH&&(nr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var en=Ei.sub(Vi)._perp()._unit(),An=Vi.dist(Ei);si+An>32768&&(si=0),cm(this.layoutVertexArray,Ei.x,Ei.y,en.x,en.y,0,0,si),cm(this.layoutVertexArray,Ei.x,Ei.y,en.x,en.y,0,1,si),si+=An,cm(this.layoutVertexArray,Vi.x,Vi.y,en.x,en.y,0,0,si),cm(this.layoutVertexArray,Vi.x,Vi.y,en.x,en.y,0,1,si);var ra=nr.vertexLength;this.indexArray.emplaceBack(ra,ra+2,ra+1),this.indexArray.emplaceBack(ra+1,ra+2,ra+3),nr.vertexLength+=4,nr.primitiveLength+=2}}}}if(nr.vertexLength+st>ns.MAX_VERTEX_ARRAY_LENGTH&&(nr=this.segments.prepareSegment(st,this.layoutVertexArray,this.indexArray)),DC[y.type]==="Polygon"){for(var $n=[],Ba=[],_a=nr.vertexLength,Pa=0,qo=Qe;Pa<qo.length;Pa+=1){var Na=qo[Pa];if(Na.length!==0){Na!==Qe[0]&&Ba.push($n.length/2);for(var ja=0;ja<Na.length;ja++){var us=Na[ja];cm(this.layoutVertexArray,us.x,us.y,0,0,1,1,0),$n.push(us.x),$n.push(us.y)}}}for(var zo=Pw($n,Ba),rl=0;rl<zo.length;rl+=3)this.indexArray.emplaceBack(_a+zo[rl],_a+zo[rl+2],_a+zo[rl+1]);nr.primitiveLength+=zo.length/3,nr.vertexLength+=st}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ne,J)},Z("FillExtrusionBucket",Hp,{omit:["layers","features"]});function X9(m,y){return m.x===y.x&&(m.x<0||m.x>rn)||m.y===y.y&&(m.y<0||m.y>rn)}function Y9(m){return m.every(function(y){return y.x<0})||m.every(function(y){return y.x>rn})||m.every(function(y){return y.y<0})||m.every(function(y){return y.y>rn})}var P1=new Oi({"fill-extrusion-opacity":new At(on["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Er(on["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new At(on["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new At(on["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Wr(on["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Er(on["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Er(on["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new At(on["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),ed={paint:P1},fm=function(m){function y(I){m.call(this,I,ed)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.createBucket=function(U){return new Hp(U)},y.prototype.queryRadius=function(){return kv(this.paint.get("fill-extrusion-translate"))},y.prototype.is3D=function(){return!0},y.prototype.queryIntersectsFeature=function(U,J,ne,fe,Fe,Qe,st,mt){var Xt=Kv(U,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Qe.angle,st),ur=this.paint.get("fill-extrusion-height").evaluate(J,ne),nr=this.paint.get("fill-extrusion-base").evaluate(J,ne),Lr=K9(Xt,mt,Qe,0),Yr=pS(fe,nr,ur,mt),_i=Yr[0],si=Yr[1];return zC(_i,si,Lr)},y}(cn);function fy(m,y){return m.x*y.x+m.y*y.y}function vS(m,y){if(m.length===1){for(var I=0,U=y[I++],J;!J||U.equals(J);)if(J=y[I++],!J)return 1/0;for(;I<y.length;I++){var ne=y[I],fe=m[0],Fe=J.sub(U),Qe=ne.sub(U),st=fe.sub(U),mt=fy(Fe,Fe),Xt=fy(Fe,Qe),ur=fy(Qe,Qe),nr=fy(st,Fe),Lr=fy(st,Qe),Yr=mt*ur-Xt*Xt,_i=(ur*nr-Xt*Lr)/Yr,si=(mt*Lr-Xt*nr)/Yr,Hi=1-_i-si,Ei=U.z*Hi+J.z*_i+ne.z*si;if(isFinite(Ei))return Ei}return 1/0}else{for(var Vi=1/0,en=0,An=y;en<An.length;en+=1){var ra=An[en];Vi=Math.min(Vi,ra.z)}return Vi}}function zC(m,y,I){var U=1/0;tl(I,y)&&(U=vS(I,y[0]));for(var J=0;J<y.length;J++)for(var ne=y[J],fe=m[J],Fe=0;Fe<ne.length-1;Fe++){var Qe=ne[Fe],st=ne[Fe+1],mt=fe[Fe],Xt=fe[Fe+1],ur=[Qe,st,Xt,mt,Qe];fo(I,ur)&&(U=Math.min(U,vS(I,ur)))}return U===1/0?!1:U}function pS(m,y,I,U){for(var J=[],ne=[],fe=U[8]*y,Fe=U[9]*y,Qe=U[10]*y,st=U[11]*y,mt=U[8]*I,Xt=U[9]*I,ur=U[10]*I,nr=U[11]*I,Lr=0,Yr=m;Lr<Yr.length;Lr+=1){for(var _i=Yr[Lr],si=[],Hi=[],Ei=0,Vi=_i;Ei<Vi.length;Ei+=1){var en=Vi[Ei],An=en.x,ra=en.y,$n=U[0]*An+U[4]*ra+U[12],Ba=U[1]*An+U[5]*ra+U[13],_a=U[2]*An+U[6]*ra+U[14],Pa=U[3]*An+U[7]*ra+U[15],qo=$n+fe,Na=Ba+Fe,ja=_a+Qe,us=Pa+st,zo=$n+mt,rl=Ba+Xt,su=_a+ur,il=Pa+nr,nl=new u(qo/us,Na/us);nl.z=ja/us,si.push(nl);var Ws=new u(zo/il,rl/il);Ws.z=su/il,Hi.push(Ws)}J.push(si),ne.push(Hi)}return[J,ne]}function K9(m,y,I,U){for(var J=[],ne=0,fe=m;ne<fe.length;ne+=1){var Fe=fe[ne],Qe=[Fe.x,Fe.y,U,1];ly(Qe,Qe,y),J.push(new u(Qe[0]/Qe[3],Qe[1]/Qe[3]))}return J}var FC=Dn([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),qC=FC.members,J9=Dn([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),OC=J9.members,gS=pg.VectorTileFeature.types,Ow=63,BC=Math.cos(75/2*(Math.PI/180)),eb=15,mS=20,NC=15,Bw=1/2,tb=Math.pow(2,NC-1)/Bw,Gf=function(y){var I=this;this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(U){return U.id}),this.index=y.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(function(U){I.gradients[U.id]={}}),this.layoutVertexArray=new gn,this.layoutVertexArray2=new ca,this.indexArray=new ma,this.programConfigurations=new Ri(y.layers,y.zoom),this.segments=new ns,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(function(U){return U.isStateDependent()}).map(function(U){return U.id})};Gf.prototype.populate=function(y,I,U){this.hasPattern=Fw("line",this.layers,I);for(var J=this.layers[0].layout.get("line-sort-key"),ne=[],fe=0,Fe=y;fe<Fe.length;fe+=1){var Qe=Fe[fe],st=Qe.feature,mt=Qe.id,Xt=Qe.index,ur=Qe.sourceLayerIndex,nr=this.layers[0]._featureFilter.needGeometry,Lr=No(st,nr);if(this.layers[0]._featureFilter.filter(new pn(this.zoom),Lr,U)){var Yr=J?J.evaluate(Lr,{},U):void 0,_i={id:mt,properties:st.properties,type:st.type,sourceLayerIndex:ur,index:Xt,geometry:nr?Lr.geometry:da(st),patterns:{},sortKey:Yr};ne.push(_i)}}J&&ne.sort(function(_a,Pa){return _a.sortKey-Pa.sortKey});for(var si=0,Hi=ne;si<Hi.length;si+=1){var Ei=Hi[si],Vi=Ei,en=Vi.geometry,An=Vi.index,ra=Vi.sourceLayerIndex;if(this.hasPattern){var $n=Jx("line",this.layers,Ei,this.zoom,I);this.patternFeatures.push($n)}else this.addFeature(Ei,en,An,U,{});var Ba=y[An].feature;I.featureIndex.insert(Ba,en,An,ra,this.index)}},Gf.prototype.update=function(y,I,U){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(y,I,this.stateDependentLayers,U)},Gf.prototype.addFeatures=function(y,I,U){for(var J=0,ne=this.patternFeatures;J<ne.length;J+=1){var fe=ne[J];this.addFeature(fe,fe.geometry,fe.index,I,U)}},Gf.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Gf.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Gf.prototype.upload=function(y){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=y.createVertexBuffer(this.layoutVertexArray2,OC)),this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,qC),this.indexBuffer=y.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(y),this.uploaded=!0},Gf.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Gf.prototype.lineFeatureClips=function(y){if(y.properties&&y.properties.hasOwnProperty("mapbox_clip_start")&&y.properties.hasOwnProperty("mapbox_clip_end")){var I=+y.properties.mapbox_clip_start,U=+y.properties.mapbox_clip_end;return{start:I,end:U}}},Gf.prototype.addFeature=function(y,I,U,J,ne){var fe=this.layers[0].layout,Fe=fe.get("line-join").evaluate(y,{}),Qe=fe.get("line-cap"),st=fe.get("line-miter-limit"),mt=fe.get("line-round-limit");this.lineClips=this.lineFeatureClips(y);for(var Xt=0,ur=I;Xt<ur.length;Xt+=1){var nr=ur[Xt];this.addLine(nr,y,Fe,Qe,st,mt)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,y,U,ne,J)},Gf.prototype.addLine=function(y,I,U,J,ne,fe){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(var Fe=0;Fe<y.length-1;Fe++)this.totalDistance+=y[Fe].dist(y[Fe+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}for(var Qe=gS[I.type]==="Polygon",st=y.length;st>=2&&y[st-1].equals(y[st-2]);)st--;for(var mt=0;mt<st-1&&y[mt].equals(y[mt+1]);)mt++;if(!(st<(Qe?3:2))){U==="bevel"&&(ne=1.05);var Xt=this.overscaling<=16?eb*rn/(512*this.overscaling):0,ur=this.segments.prepareSegment(st*10,this.layoutVertexArray,this.indexArray),nr,Lr=void 0,Yr=void 0,_i=void 0,si=void 0;this.e1=this.e2=-1,Qe&&(nr=y[st-2],si=y[mt].sub(nr)._unit()._perp());for(var Hi=mt;Hi<st;Hi++)if(Yr=Hi===st-1?Qe?y[mt+1]:void 0:y[Hi+1],!(Yr&&y[Hi].equals(Yr))){si&&(_i=si),nr&&(Lr=nr),nr=y[Hi],si=Yr?Yr.sub(nr)._unit()._perp():_i,_i=_i||si;var Ei=_i.add(si);(Ei.x!==0||Ei.y!==0)&&Ei._unit();var Vi=_i.x*si.x+_i.y*si.y,en=Ei.x*si.x+Ei.y*si.y,An=en!==0?1/en:1/0,ra=2*Math.sqrt(2-2*en),$n=en<BC&&Lr&&Yr,Ba=_i.x*si.y-_i.y*si.x>0;if($n&&Hi>mt){var _a=nr.dist(Lr);if(_a>2*Xt){var Pa=nr.sub(nr.sub(Lr)._mult(Xt/_a)._round());this.updateDistance(Lr,Pa),this.addCurrentVertex(Pa,_i,0,0,ur),Lr=Pa}}var qo=Lr&&Yr,Na=qo?U:Qe?"butt":J;if(qo&&Na==="round"&&(An<fe?Na="miter":An<=2&&(Na="fakeround")),Na==="miter"&&An>ne&&(Na="bevel"),Na==="bevel"&&(An>2&&(Na="flipbevel"),An<ne&&(Na="miter")),Lr&&this.updateDistance(Lr,nr),Na==="miter")Ei._mult(An),this.addCurrentVertex(nr,Ei,0,0,ur);else if(Na==="flipbevel"){if(An>100)Ei=si.mult(-1);else{var ja=An*_i.add(si).mag()/_i.sub(si).mag();Ei._perp()._mult(ja*(Ba?-1:1))}this.addCurrentVertex(nr,Ei,0,0,ur),this.addCurrentVertex(nr,Ei.mult(-1),0,0,ur)}else if(Na==="bevel"||Na==="fakeround"){var us=-Math.sqrt(An*An-1),zo=Ba?us:0,rl=Ba?0:us;if(Lr&&this.addCurrentVertex(nr,_i,zo,rl,ur),Na==="fakeround")for(var su=Math.round(ra*180/Math.PI/mS),il=1;il<su;il++){var nl=il/su;if(nl!==.5){var Ws=nl-.5,Au=1.0904+Vi*(-3.2452+Vi*(3.55645-Vi*1.43519)),Ou=.848013+Vi*(-1.06021+Vi*.215638);nl=nl+nl*Ws*(nl-1)*(Au*Ws*Ws+Ou)}var nf=si.sub(_i)._mult(nl)._add(_i)._unit()._mult(Ba?-1:1);this.addHalfVertex(nr,nf.x,nf.y,!1,Ba,0,ur)}Yr&&this.addCurrentVertex(nr,si,-zo,-rl,ur)}else if(Na==="butt")this.addCurrentVertex(nr,Ei,0,0,ur);else if(Na==="square"){var bf=Lr?1:-1;this.addCurrentVertex(nr,Ei,bf,bf,ur)}else Na==="round"&&(Lr&&(this.addCurrentVertex(nr,_i,0,0,ur),this.addCurrentVertex(nr,_i,1,1,ur,!0)),Yr&&(this.addCurrentVertex(nr,si,-1,-1,ur,!0),this.addCurrentVertex(nr,si,0,0,ur)));if($n&&Hi<st-1){var qh=nr.dist(Yr);if(qh>2*Xt){var Zf=nr.add(Yr.sub(nr)._mult(Xt/qh)._round());this.updateDistance(nr,Zf),this.addCurrentVertex(Zf,si,0,0,ur),nr=Zf}}}}},Gf.prototype.addCurrentVertex=function(y,I,U,J,ne,fe){fe===void 0&&(fe=!1);var Fe=I.x+I.y*U,Qe=I.y-I.x*U,st=-I.x+I.y*J,mt=-I.y-I.x*J;this.addHalfVertex(y,Fe,Qe,fe,!1,U,ne),this.addHalfVertex(y,st,mt,fe,!0,-J,ne),this.distance>tb/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(y,I,U,J,ne,fe))},Gf.prototype.addHalfVertex=function(y,I,U,J,ne,fe,Fe){var Qe=y.x,st=y.y,mt=this.lineClips?this.scaledDistance*(tb-1):this.scaledDistance,Xt=mt*Bw;if(this.layoutVertexArray.emplaceBack((Qe<<1)+(J?1:0),(st<<1)+(ne?1:0),Math.round(Ow*I)+128,Math.round(Ow*U)+128,(fe===0?0:fe<0?-1:1)+1|(Xt&63)<<2,Xt>>6),this.lineClips){var ur=this.scaledDistance-this.lineClips.start,nr=this.lineClips.end-this.lineClips.start,Lr=ur/nr;this.layoutVertexArray2.emplaceBack(Lr,this.lineClipsArray.length)}var Yr=Fe.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Yr),Fe.primitiveLength++),ne?this.e2=Yr:this.e1=Yr},Gf.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},Gf.prototype.updateDistance=function(y,I){this.distance+=y.dist(I),this.updateScaledDistance()},Z("LineBucket",Gf,{omit:["layers","patternFeatures"]});var yS=new Oi({"line-cap":new At(on.layout_line["line-cap"]),"line-join":new Er(on.layout_line["line-join"]),"line-miter-limit":new At(on.layout_line["line-miter-limit"]),"line-round-limit":new At(on.layout_line["line-round-limit"]),"line-sort-key":new Er(on.layout_line["line-sort-key"])}),_S=new Oi({"line-opacity":new Er(on.paint_line["line-opacity"]),"line-color":new Er(on.paint_line["line-color"]),"line-translate":new At(on.paint_line["line-translate"]),"line-translate-anchor":new At(on.paint_line["line-translate-anchor"]),"line-width":new Er(on.paint_line["line-width"]),"line-gap-width":new Er(on.paint_line["line-gap-width"]),"line-offset":new Er(on.paint_line["line-offset"]),"line-blur":new Er(on.paint_line["line-blur"]),"line-dasharray":new wi(on.paint_line["line-dasharray"]),"line-pattern":new Wr(on.paint_line["line-pattern"]),"line-gradient":new Ui(on.paint_line["line-gradient"])}),Nw={paint:_S,layout:yS},$9=function(m){function y(){m.apply(this,arguments)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.possiblyEvaluate=function(U,J){return J=new pn(Math.floor(J.zoom),{now:J.now,fadeDuration:J.fadeDuration,zoomHistory:J.zoomHistory,transition:J.transition}),m.prototype.possiblyEvaluate.call(this,U,J)},y.prototype.evaluate=function(U,J,ne,fe){return J=_({},J,{zoom:Math.floor(J.zoom)}),m.prototype.evaluate.call(this,U,J,ne,fe)},y}(Er),R=new $9(Nw.paint.properties["line-width"].specification);R.useIntegerZoom=!0;var S=function(m){function y(I){m.call(this,I,Nw),this.gradientVersion=0}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype._handleSpecialPaintPropertyUpdate=function(U){if(U==="line-gradient"){var J=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=J._styleExpression.expression instanceof yu,this.gradientVersion=(this.gradientVersion+1)%d}},y.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},y.prototype.recalculate=function(U,J){m.prototype.recalculate.call(this,U,J),this.paint._values["line-floorwidth"]=R.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,U)},y.prototype.createBucket=function(U){return new Gf(U)},y.prototype.queryRadius=function(U){var J=U,ne=D(xd("line-width",this,J),xd("line-gap-width",this,J)),fe=xd("line-offset",this,J);return ne/2+Math.abs(fe)+kv(this.paint.get("line-translate"))},y.prototype.queryIntersectsFeature=function(U,J,ne,fe,Fe,Qe,st){var mt=Kv(U,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Qe.angle,st),Xt=st/2*D(this.paint.get("line-width").evaluate(J,ne),this.paint.get("line-gap-width").evaluate(J,ne)),ur=this.paint.get("line-offset").evaluate(J,ne);return ur&&(fe=j(fe,ur*st)),zu(mt,fe,Xt)},y.prototype.isTileClipped=function(){return!0},y}(cn);function D(m,y){return y>0?y+2*m:m}function j(m,y){for(var I=[],U=new u(0,0),J=0;J<m.length;J++){for(var ne=m[J],fe=[],Fe=0;Fe<ne.length;Fe++){var Qe=ne[Fe-1],st=ne[Fe],mt=ne[Fe+1],Xt=Fe===0?U:st.sub(Qe)._unit()._perp(),ur=Fe===ne.length-1?U:mt.sub(st)._unit()._perp(),nr=Xt._add(ur)._unit(),Lr=nr.x*ur.x+nr.y*ur.y;nr._mult(1/Lr),fe.push(nr._mult(y)._add(st))}I.push(fe)}return I}var te=Dn([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),ue=Dn([{name:"a_projected_pos",components:3,type:"Float32"}],4),ve=Dn([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),De=Dn([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),Ze=Dn([{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"}]),at=Dn([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),Tt=Dn([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4),Ft=Dn([{name:"triangle",components:3,type:"Uint16"}]),Qt=Dn([{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"}]),sr=Dn([{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"}]),Tr=Dn([{type:"Float32",name:"offsetX"}]),Pr=Dn([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);function $r(m,y,I){var U=y.layout.get("text-transform").evaluate(I,{});return U==="uppercase"?m=m.toLocaleUpperCase():U==="lowercase"&&(m=m.toLocaleLowerCase()),_s.applyArabicShaping&&(m=_s.applyArabicShaping(m)),m}function ni(m,y,I){return m.sections.forEach(function(U){U.text=$r(U.text,y,I)}),m}function Di(m){var y={},I={},U=[],J=0;function ne(si){U.push(m[si]),J++}function fe(si,Hi,Ei){var Vi=I[si];return delete I[si],I[Hi]=Vi,U[Vi].geometry[0].pop(),U[Vi].geometry[0]=U[Vi].geometry[0].concat(Ei[0]),Vi}function Fe(si,Hi,Ei){var Vi=y[Hi];return delete y[Hi],y[si]=Vi,U[Vi].geometry[0].shift(),U[Vi].geometry[0]=Ei[0].concat(U[Vi].geometry[0]),Vi}function Qe(si,Hi,Ei){var Vi=Ei?Hi[0][Hi[0].length-1]:Hi[0][0];return si+":"+Vi.x+":"+Vi.y}for(var st=0;st<m.length;st++){var mt=m[st],Xt=mt.geometry,ur=mt.text?mt.text.toString():null;if(!ur){ne(st);continue}var nr=Qe(ur,Xt),Lr=Qe(ur,Xt,!0);if(nr in I&&Lr in y&&I[nr]!==y[Lr]){var Yr=Fe(nr,Lr,Xt),_i=fe(nr,Lr,U[Yr].geometry);delete y[nr],delete I[Lr],I[Qe(ur,U[_i].geometry,!0)]=_i,U[Yr].geometry=null}else nr in I?fe(nr,Lr,Xt):Lr in y?Fe(nr,Lr,Xt):(ne(st),y[nr]=J-1,I[Lr]=J-1)}return U.filter(function(si){return si.geometry})}var pi={"!":"\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"};function ki(m){for(var y="",I=0;I<m.length;I++){var U=m.charCodeAt(I+1)||null,J=m.charCodeAt(I-1)||null,ne=(!U||!ui(U)||pi[m[I+1]])&&(!J||!ui(J)||pi[m[I-1]]);ne&&pi[m[I]]?y+=pi[m[I]]:y+=m[I]}return y}var Zi=24,ta=function(m,y,I,U,J){var ne,fe,Fe=J*8-U-1,Qe=(1<<Fe)-1,st=Qe>>1,mt=-7,Xt=I?J-1:0,ur=I?-1:1,nr=m[y+Xt];for(Xt+=ur,ne=nr&(1<<-mt)-1,nr>>=-mt,mt+=Fe;mt>0;ne=ne*256+m[y+Xt],Xt+=ur,mt-=8);for(fe=ne&(1<<-mt)-1,ne>>=-mt,mt+=U;mt>0;fe=fe*256+m[y+Xt],Xt+=ur,mt-=8);if(ne===0)ne=1-st;else{if(ne===Qe)return fe?NaN:(nr?-1:1)*(1/0);fe=fe+Math.pow(2,U),ne=ne-st}return(nr?-1:1)*fe*Math.pow(2,ne-U)},Va=function(m,y,I,U,J,ne){var fe,Fe,Qe,st=ne*8-J-1,mt=(1<<st)-1,Xt=mt>>1,ur=J===23?Math.pow(2,-24)-Math.pow(2,-77):0,nr=U?0:ne-1,Lr=U?1:-1,Yr=y<0||y===0&&1/y<0?1:0;for(y=Math.abs(y),isNaN(y)||y===1/0?(Fe=isNaN(y)?1:0,fe=mt):(fe=Math.floor(Math.log(y)/Math.LN2),y*(Qe=Math.pow(2,-fe))<1&&(fe--,Qe*=2),fe+Xt>=1?y+=ur/Qe:y+=ur*Math.pow(2,1-Xt),y*Qe>=2&&(fe++,Qe/=2),fe+Xt>=mt?(Fe=0,fe=mt):fe+Xt>=1?(Fe=(y*Qe-1)*Math.pow(2,J),fe=fe+Xt):(Fe=y*Math.pow(2,Xt-1)*Math.pow(2,J),fe=0));J>=8;m[I+nr]=Fe&255,nr+=Lr,Fe/=256,J-=8);for(fe=fe<<J|Fe,st+=J;st>0;m[I+nr]=fe&255,nr+=Lr,fe/=256,st-=8);m[I+nr-Lr]|=Yr*128},Io={read:ta,write:Va},La=Hn;function Hn(m){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(m)?m:new Uint8Array(m||0),this.pos=0,this.type=0,this.length=this.buf.length}Hn.Varint=0,Hn.Fixed64=1,Hn.Bytes=2,Hn.Fixed32=5;var lo=65536*65536,$a=1/lo,Xa=12,Tn=typeof TextDecoder=="undefined"?null:new TextDecoder("utf8");Hn.prototype={destroy:function(){this.buf=null},readFields:function(m,y,I){for(I=I||this.length;this.pos<I;){var U=this.readVarint(),J=U>>3,ne=this.pos;this.type=U&7,m(J,y,this),this.pos===ne&&this.skip(U)}return y},readMessage:function(m,y){return this.readFields(m,y,this.readVarint()+this.pos)},readFixed32:function(){var m=Dh(this.buf,this.pos);return this.pos+=4,m},readSFixed32:function(){var m=Iv(this.buf,this.pos);return this.pos+=4,m},readFixed64:function(){var m=Dh(this.buf,this.pos)+Dh(this.buf,this.pos+4)*lo;return this.pos+=8,m},readSFixed64:function(){var m=Dh(this.buf,this.pos)+Iv(this.buf,this.pos+4)*lo;return this.pos+=8,m},readFloat:function(){var m=Io.read(this.buf,this.pos,!0,23,4);return this.pos+=4,m},readDouble:function(){var m=Io.read(this.buf,this.pos,!0,52,8);return this.pos+=8,m},readVarint:function(m){var y=this.buf,I,U;return U=y[this.pos++],I=U&127,U<128||(U=y[this.pos++],I|=(U&127)<<7,U<128)||(U=y[this.pos++],I|=(U&127)<<14,U<128)||(U=y[this.pos++],I|=(U&127)<<21,U<128)?I:(U=y[this.pos],I|=(U&15)<<28,bo(I,m,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var m=this.readVarint();return m%2===1?(m+1)/-2:m/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var m=this.readVarint()+this.pos,y=this.pos;return this.pos=m,m-y>=Xa&&Tn?Cl(this.buf,y,m):lv(this.buf,y,m)},readBytes:function(){var m=this.readVarint()+this.pos,y=this.buf.subarray(this.pos,m);return this.pos=m,y},readPackedVarint:function(m,y){if(this.type!==Hn.Bytes)return m.push(this.readVarint(y));var I=Ya(this);for(m=m||[];this.pos<I;)m.push(this.readVarint(y));return m},readPackedSVarint:function(m){if(this.type!==Hn.Bytes)return m.push(this.readSVarint());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readSVarint());return m},readPackedBoolean:function(m){if(this.type!==Hn.Bytes)return m.push(this.readBoolean());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readBoolean());return m},readPackedFloat:function(m){if(this.type!==Hn.Bytes)return m.push(this.readFloat());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readFloat());return m},readPackedDouble:function(m){if(this.type!==Hn.Bytes)return m.push(this.readDouble());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readDouble());return m},readPackedFixed32:function(m){if(this.type!==Hn.Bytes)return m.push(this.readFixed32());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readFixed32());return m},readPackedSFixed32:function(m){if(this.type!==Hn.Bytes)return m.push(this.readSFixed32());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readSFixed32());return m},readPackedFixed64:function(m){if(this.type!==Hn.Bytes)return m.push(this.readFixed64());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readFixed64());return m},readPackedSFixed64:function(m){if(this.type!==Hn.Bytes)return m.push(this.readSFixed64());var y=Ya(this);for(m=m||[];this.pos<y;)m.push(this.readSFixed64());return m},skip:function(m){var y=m&7;if(y===Hn.Varint)for(;this.buf[this.pos++]>127;);else if(y===Hn.Bytes)this.pos=this.readVarint()+this.pos;else if(y===Hn.Fixed32)this.pos+=4;else if(y===Hn.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+y)},writeTag:function(m,y){this.writeVarint(m<<3|y)},realloc:function(m){for(var y=this.length||16;y<this.pos+m;)y*=2;if(y!==this.length){var I=new Uint8Array(y);I.set(this.buf),this.buf=I,this.length=y}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(m){this.realloc(4),xf(this.buf,m,this.pos),this.pos+=4},writeSFixed32:function(m){this.realloc(4),xf(this.buf,m,this.pos),this.pos+=4},writeFixed64:function(m){this.realloc(8),xf(this.buf,m&-1,this.pos),xf(this.buf,Math.floor(m*$a),this.pos+4),this.pos+=8},writeSFixed64:function(m){this.realloc(8),xf(this.buf,m&-1,this.pos),xf(this.buf,Math.floor(m*$a),this.pos+4),this.pos+=8},writeVarint:function(m){if(m=+m||0,m>268435455||m<0){wu(m,this);return}this.realloc(4),this.buf[this.pos++]=m&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=(m>>>=7)&127|(m>127?128:0),!(m<=127)&&(this.buf[this.pos++]=m>>>7&127)))},writeSVarint:function(m){this.writeVarint(m<0?-m*2-1:m*2)},writeBoolean:function(m){this.writeVarint(!!m)},writeString:function(m){m=String(m),this.realloc(m.length*4),this.pos++;var y=this.pos;this.pos=qu(this.buf,m,this.pos);var I=this.pos-y;I>=128&&$v(y,I,this),this.pos=y-1,this.writeVarint(I),this.pos+=I},writeFloat:function(m){this.realloc(4),Io.write(this.buf,m,this.pos,!0,23,4),this.pos+=4},writeDouble:function(m){this.realloc(8),Io.write(this.buf,m,this.pos,!0,52,8),this.pos+=8},writeBytes:function(m){var y=m.length;this.writeVarint(y),this.realloc(y);for(var I=0;I<y;I++)this.buf[this.pos++]=m[I]},writeRawMessage:function(m,y){this.pos++;var I=this.pos;m(y,this);var U=this.pos-I;U>=128&&$v(I,U,this),this.pos=I-1,this.writeVarint(U),this.pos+=U},writeMessage:function(m,y,I){this.writeTag(m,Hn.Bytes),this.writeRawMessage(y,I)},writePackedVarint:function(m,y){y.length&&this.writeMessage(m,td,y)},writePackedSVarint:function(m,y){y.length&&this.writeMessage(m,ch,y)},writePackedBoolean:function(m,y){y.length&&this.writeMessage(m,Hd,y)},writePackedFloat:function(m,y){y.length&&this.writeMessage(m,Ud,y)},writePackedDouble:function(m,y){y.length&&this.writeMessage(m,Vd,y)},writePackedFixed32:function(m,y){y.length&&this.writeMessage(m,rf,y)},writePackedSFixed32:function(m,y){y.length&&this.writeMessage(m,fh,y)},writePackedFixed64:function(m,y){y.length&&this.writeMessage(m,Td,y)},writePackedSFixed64:function(m,y){y.length&&this.writeMessage(m,rd,y)},writeBytesField:function(m,y){this.writeTag(m,Hn.Bytes),this.writeBytes(y)},writeFixed32Field:function(m,y){this.writeTag(m,Hn.Fixed32),this.writeFixed32(y)},writeSFixed32Field:function(m,y){this.writeTag(m,Hn.Fixed32),this.writeSFixed32(y)},writeFixed64Field:function(m,y){this.writeTag(m,Hn.Fixed64),this.writeFixed64(y)},writeSFixed64Field:function(m,y){this.writeTag(m,Hn.Fixed64),this.writeSFixed64(y)},writeVarintField:function(m,y){this.writeTag(m,Hn.Varint),this.writeVarint(y)},writeSVarintField:function(m,y){this.writeTag(m,Hn.Varint),this.writeSVarint(y)},writeStringField:function(m,y){this.writeTag(m,Hn.Bytes),this.writeString(y)},writeFloatField:function(m,y){this.writeTag(m,Hn.Fixed32),this.writeFloat(y)},writeDoubleField:function(m,y){this.writeTag(m,Hn.Fixed64),this.writeDouble(y)},writeBooleanField:function(m,y){this.writeVarintField(m,!!y)}};function bo(m,y,I){var U=I.buf,J,ne;if(ne=U[I.pos++],J=(ne&112)>>4,ne<128||(ne=U[I.pos++],J|=(ne&127)<<3,ne<128)||(ne=U[I.pos++],J|=(ne&127)<<10,ne<128)||(ne=U[I.pos++],J|=(ne&127)<<17,ne<128)||(ne=U[I.pos++],J|=(ne&127)<<24,ne<128)||(ne=U[I.pos++],J|=(ne&1)<<31,ne<128))return Uo(m,J,y);throw new Error("Expected varint not more than 10 bytes")}function Ya(m){return m.type===Hn.Bytes?m.readVarint()+m.pos:m.pos+1}function Uo(m,y,I){return I?y*4294967296+(m>>>0):(y>>>0)*4294967296+(m>>>0)}function wu(m,y){var I,U;if(m>=0?(I=m%4294967296|0,U=m/4294967296|0):(I=~(-m%4294967296),U=~(-m/4294967296),I^4294967295?I=I+1|0:(I=0,U=U+1|0)),m>=18446744073709552e3||m<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");y.realloc(10),hu(I,U,y),uh(U,y)}function hu(m,y,I){I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos++]=m&127|128,m>>>=7,I.buf[I.pos]=m&127}function uh(m,y){var I=(m&7)<<4;y.buf[y.pos++]|=I|((m>>>=3)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127|((m>>>=7)?128:0),m&&(y.buf[y.pos++]=m&127)))))}function $v(m,y,I){var U=y<=16383?1:y<=2097151?2:y<=268435455?3:Math.floor(Math.log(y)/(Math.LN2*7));I.realloc(U);for(var J=I.pos-1;J>=m;J--)I.buf[J+U]=I.buf[J]}function td(m,y){for(var I=0;I<m.length;I++)y.writeVarint(m[I])}function ch(m,y){for(var I=0;I<m.length;I++)y.writeSVarint(m[I])}function Ud(m,y){for(var I=0;I<m.length;I++)y.writeFloat(m[I])}function Vd(m,y){for(var I=0;I<m.length;I++)y.writeDouble(m[I])}function Hd(m,y){for(var I=0;I<m.length;I++)y.writeBoolean(m[I])}function rf(m,y){for(var I=0;I<m.length;I++)y.writeFixed32(m[I])}function fh(m,y){for(var I=0;I<m.length;I++)y.writeSFixed32(m[I])}function Td(m,y){for(var I=0;I<m.length;I++)y.writeFixed64(m[I])}function rd(m,y){for(var I=0;I<m.length;I++)y.writeSFixed64(m[I])}function Dh(m,y){return(m[y]|m[y+1]<<8|m[y+2]<<16)+m[y+3]*16777216}function xf(m,y,I){m[I]=y,m[I+1]=y>>>8,m[I+2]=y>>>16,m[I+3]=y>>>24}function Iv(m,y){return(m[y]|m[y+1]<<8|m[y+2]<<16)+(m[y+3]<<24)}function lv(m,y,I){for(var U="",J=y;J<I;){var ne=m[J],fe=null,Fe=ne>239?4:ne>223?3:ne>191?2:1;if(J+Fe>I)break;var Qe,st,mt;Fe===1?ne<128&&(fe=ne):Fe===2?(Qe=m[J+1],(Qe&192)===128&&(fe=(ne&31)<<6|Qe&63,fe<=127&&(fe=null))):Fe===3?(Qe=m[J+1],st=m[J+2],(Qe&192)===128&&(st&192)===128&&(fe=(ne&15)<<12|(Qe&63)<<6|st&63,(fe<=2047||fe>=55296&&fe<=57343)&&(fe=null))):Fe===4&&(Qe=m[J+1],st=m[J+2],mt=m[J+3],(Qe&192)===128&&(st&192)===128&&(mt&192)===128&&(fe=(ne&15)<<18|(Qe&63)<<12|(st&63)<<6|mt&63,(fe<=65535||fe>=1114112)&&(fe=null))),fe===null?(fe=65533,Fe=1):fe>65535&&(fe-=65536,U+=String.fromCharCode(fe>>>10&1023|55296),fe=56320|fe&1023),U+=String.fromCharCode(fe),J+=Fe}return U}function Cl(m,y,I){return Tn.decode(m.subarray(y,I))}function qu(m,y,I){for(var U=0,J,ne;U<y.length;U++){if(J=y.charCodeAt(U),J>55295&&J<57344)if(ne)if(J<56320){m[I++]=239,m[I++]=191,m[I++]=189,ne=J;continue}else J=ne-55296<<10|J-56320|65536,ne=null;else{J>56319||U+1===y.length?(m[I++]=239,m[I++]=191,m[I++]=189):ne=J;continue}else ne&&(m[I++]=239,m[I++]=191,m[I++]=189,ne=null);J<128?m[I++]=J:(J<2048?m[I++]=J>>6|192:(J<65536?m[I++]=J>>12|224:(m[I++]=J>>18|240,m[I++]=J>>12&63|128),m[I++]=J>>6&63|128),m[I++]=J&63|128)}return I}var Tu=3;function Rv(m,y,I){m===1&&I.readMessage(qc,y)}function qc(m,y,I){if(m===3){var U=I.readMessage(I1,{}),J=U.id,ne=U.bitmap,fe=U.width,Fe=U.height,Qe=U.left,st=U.top,mt=U.advance;y.push({id:J,bitmap:new Pv({width:fe+2*Tu,height:Fe+2*Tu},ne),metrics:{width:fe,height:Fe,left:Qe,top:st,advance:mt}})}}function I1(m,y,I){m===1?y.id=I.readVarint():m===2?y.bitmap=I.readBytes():m===3?y.width=I.readVarint():m===4?y.height=I.readVarint():m===5?y.left=I.readSVarint():m===6?y.top=I.readSVarint():m===7&&(y.advance=I.readVarint())}function p0(m){return new La(m).readFields(Rv,[])}var Gp=Tu;function Qv(m){for(var y=0,I=0,U=0,J=m;U<J.length;U+=1){var ne=J[U];y+=ne.w*ne.h,I=Math.max(I,ne.w)}m.sort(function(_i,si){return si.h-_i.h});for(var fe=Math.max(Math.ceil(Math.sqrt(y/.95)),I),Fe=[{x:0,y:0,w:fe,h:1/0}],Qe=0,st=0,mt=0,Xt=m;mt<Xt.length;mt+=1)for(var ur=Xt[mt],nr=Fe.length-1;nr>=0;nr--){var Lr=Fe[nr];if(!(ur.w>Lr.w||ur.h>Lr.h)){if(ur.x=Lr.x,ur.y=Lr.y,st=Math.max(st,ur.y+ur.h),Qe=Math.max(Qe,ur.x+ur.w),ur.w===Lr.w&&ur.h===Lr.h){var Yr=Fe.pop();nr<Fe.length&&(Fe[nr]=Yr)}else ur.h===Lr.h?(Lr.x+=ur.w,Lr.w-=ur.w):ur.w===Lr.w?(Lr.y+=ur.h,Lr.h-=ur.h):(Fe.push({x:Lr.x+ur.w,y:Lr.y,w:Lr.w-ur.w,h:ur.h}),Lr.y+=ur.h,Lr.h-=ur.h);break}}return{w:Qe,h:st,fill:y/(Qe*st)||0}}var oc=1,If=function(y,I){var U=I.pixelRatio,J=I.version,ne=I.stretchX,fe=I.stretchY,Fe=I.content;this.paddedRect=y,this.pixelRatio=U,this.stretchX=ne,this.stretchY=fe,this.content=Fe,this.version=J},ep={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};ep.tl.get=function(){return[this.paddedRect.x+oc,this.paddedRect.y+oc]},ep.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-oc,this.paddedRect.y+this.paddedRect.h-oc]},ep.tlbr.get=function(){return this.tl.concat(this.br)},ep.displaySize.get=function(){return[(this.paddedRect.w-oc*2)/this.pixelRatio,(this.paddedRect.h-oc*2)/this.pixelRatio]},Object.defineProperties(If.prototype,ep);var gg=function(y,I){var U={},J={};this.haveRenderCallbacks=[];var ne=[];this.addImages(y,U,ne),this.addImages(I,J,ne);var fe=Qv(ne),Fe=fe.w,Qe=fe.h,st=new lh({width:Fe||1,height:Qe||1});for(var mt in y){var Xt=y[mt],ur=U[mt].paddedRect;lh.copy(Xt.data,st,{x:0,y:0},{x:ur.x+oc,y:ur.y+oc},Xt.data)}for(var nr in I){var Lr=I[nr],Yr=J[nr].paddedRect,_i=Yr.x+oc,si=Yr.y+oc,Hi=Lr.data.width,Ei=Lr.data.height;lh.copy(Lr.data,st,{x:0,y:0},{x:_i,y:si},Lr.data),lh.copy(Lr.data,st,{x:0,y:Ei-1},{x:_i,y:si-1},{width:Hi,height:1}),lh.copy(Lr.data,st,{x:0,y:0},{x:_i,y:si+Ei},{width:Hi,height:1}),lh.copy(Lr.data,st,{x:Hi-1,y:0},{x:_i-1,y:si},{width:1,height:Ei}),lh.copy(Lr.data,st,{x:0,y:0},{x:_i+Hi,y:si},{width:1,height:Ei})}this.image=st,this.iconPositions=U,this.patternPositions=J};gg.prototype.addImages=function(y,I,U){for(var J in y){var ne=y[J],fe={x:0,y:0,w:ne.data.width+2*oc,h:ne.data.height+2*oc};U.push(fe),I[J]=new If(fe,ne),ne.hasRenderCallback&&this.haveRenderCallbacks.push(J)}},gg.prototype.patchUpdatedImages=function(y,I){y.dispatchRenderCallbacks(this.haveRenderCallbacks);for(var U in y.updatedImages)this.patchUpdatedImage(this.iconPositions[U],y.getImage(U),I),this.patchUpdatedImage(this.patternPositions[U],y.getImage(U),I)},gg.prototype.patchUpdatedImage=function(y,I,U){if(!(!y||!I)&&y.version!==I.version){y.version=I.version;var J=y.tl,ne=J[0],fe=J[1];U.update(I.data,void 0,{x:ne,y:fe})}},Z("ImagePosition",If),Z("ImageAtlas",gg);var uv={horizontal:1,vertical:2,horizontalOnly:3},R1=-17;function xS(m){for(var y=0,I=m;y<I.length;y+=1){var U=I[y];if(U.positionedGlyphs.length!==0)return!1}return!0}var Uw=57344,g0=63743,hy=function(){this.scale=1,this.fontStack="",this.imageName=null};hy.forText=function(y,I){var U=new hy;return U.scale=y||1,U.fontStack=I,U},hy.forImage=function(y){var I=new hy;return I.imageName=y,I};var zh=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};zh.fromFeature=function(y,I){for(var U=new zh,J=0;J<y.sections.length;J++){var ne=y.sections[J];ne.image?U.addImageSection(ne):U.addTextSection(ne,I)}return U},zh.prototype.length=function(){return this.text.length},zh.prototype.getSection=function(y){return this.sections[this.sectionIndex[y]]},zh.prototype.getSectionIndex=function(y){return this.sectionIndex[y]},zh.prototype.getCharCode=function(y){return this.text.charCodeAt(y)},zh.prototype.verticalizePunctuation=function(){this.text=ki(this.text)},zh.prototype.trim=function(){for(var y=0,I=0;I<this.text.length&&m0[this.text.charCodeAt(I)];I++)y++;for(var U=this.text.length,J=this.text.length-1;J>=0&&J>=y&&m0[this.text.charCodeAt(J)];J--)U--;this.text=this.text.substring(y,U),this.sectionIndex=this.sectionIndex.slice(y,U)},zh.prototype.substring=function(y,I){var U=new zh;return U.text=this.text.substring(y,I),U.sectionIndex=this.sectionIndex.slice(y,I),U.sections=this.sections,U},zh.prototype.toString=function(){return this.text},zh.prototype.getMaxScale=function(){var y=this;return this.sectionIndex.reduce(function(I,U){return Math.max(I,y.sections[U].scale)},0)},zh.prototype.addTextSection=function(y,I){this.text+=y.text,this.sections.push(hy.forText(y.scale,y.fontStack||I));for(var U=this.sections.length-1,J=0;J<y.text.length;++J)this.sectionIndex.push(U)},zh.prototype.addImageSection=function(y){var I=y.image?y.image.name:"";if(I.length===0){re("Can't add FormattedSection with an empty image.");return}var U=this.getNextImageSectionCharCode();if(!U){re("Reached maximum number of images "+(g0-Uw+2));return}this.text+=String.fromCharCode(U),this.sections.push(hy.forImage(I)),this.sectionIndex.push(this.sections.length-1)},zh.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=g0?null:++this.imageSectionID:(this.imageSectionID=Uw,this.imageSectionID)};function Q9(m,y){for(var I=[],U=m.text,J=0,ne=0,fe=y;ne<fe.length;ne+=1){var Fe=fe[ne];I.push(m.substring(J,Fe)),J=Fe}return J<U.length&&I.push(m.substring(J,U.length)),I}function Vw(m,y,I,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr){var _i=zh.fromFeature(m,J);Xt===uv.vertical&&_i.verticalizePunctuation();var si,Hi=_s.processBidirectionalText,Ei=_s.processStyledBidirectionalText;if(Hi&&_i.sections.length===1){si=[];for(var Vi=Hi(_i.toString(),Hw(_i,st,ne,y,U,nr,Lr)),en=0,An=Vi;en<An.length;en+=1){var ra=An[en],$n=new zh;$n.text=ra,$n.sections=_i.sections;for(var Ba=0;Ba<ra.length;Ba++)$n.sectionIndex.push(0);si.push($n)}}else if(Ei){si=[];for(var _a=Ei(_i.text,_i.sectionIndex,Hw(_i,st,ne,y,U,nr,Lr)),Pa=0,qo=_a;Pa<qo.length;Pa+=1){var Na=qo[Pa],ja=new zh;ja.text=Na[0],ja.sectionIndex=Na[1],ja.sections=_i.sections,si.push(ja)}}else si=Q9(_i,Hw(_i,st,ne,y,U,nr,Lr));var us=[],zo={positionedLines:us,text:_i.toString(),top:mt[1],bottom:mt[1],left:mt[0],right:mt[0],writingMode:Xt,iconsInText:!1,verticalizable:!1};return rq(zo,y,I,U,si,fe,Fe,Qe,Xt,st,ur,Yr),xS(us)?!1:zo}var m0={};m0[9]=!0,m0[10]=!0,m0[11]=!0,m0[12]=!0,m0[13]=!0,m0[32]=!0;var cv={};cv[10]=!0,cv[32]=!0,cv[38]=!0,cv[40]=!0,cv[41]=!0,cv[43]=!0,cv[45]=!0,cv[47]=!0,cv[173]=!0,cv[183]=!0,cv[8203]=!0,cv[8208]=!0,cv[8211]=!0,cv[8231]=!0;function UC(m,y,I,U,J,ne){if(y.imageName){var Qe=U[y.imageName];return Qe?Qe.displaySize[0]*y.scale*Zi/ne+J:0}else{var fe=I[y.fontStack],Fe=fe&&fe[m];return Fe?Fe.metrics.advance*y.scale+J:0}}function eq(m,y,I,U,J,ne){for(var fe=0,Fe=0;Fe<m.length();Fe++){var Qe=m.getSection(Fe);fe+=UC(m.getCharCode(Fe),Qe,U,J,y,ne)}var st=Math.max(1,Math.ceil(fe/I));return fe/st}function VC(m,y,I,U){var J=Math.pow(m-y,2);return U?m<y?J/2:J*2:J+Math.abs(I)*I}function tq(m,y,I){var U=0;return m===10&&(U-=1e4),I&&(U+=150),(m===40||m===65288)&&(U+=50),(y===41||y===65289)&&(U+=50),U}function mp(m,y,I,U,J,ne){for(var fe=null,Fe=VC(y,I,J,ne),Qe=0,st=U;Qe<st.length;Qe+=1){var mt=st[Qe],Xt=y-mt.x,ur=VC(Xt,I,J,ne)+mt.badness;ur<=Fe&&(fe=mt,Fe=ur)}return{index:m,x:y,priorBreak:fe,badness:Fe}}function rb(m){return m?rb(m.priorBreak).concat(m.index):[]}function Hw(m,y,I,U,J,ne,fe){if(ne!=="point")return[];if(!m)return[];for(var Fe=[],Qe=eq(m,y,I,U,J,fe),st=m.text.indexOf("\u200B")>=0,mt=0,Xt=0;Xt<m.length();Xt++){var ur=m.getSection(Xt),nr=m.getCharCode(Xt);if(m0[nr]||(mt+=UC(nr,ur,U,J,y,fe)),Xt<m.length()-1){var Lr=Dr(nr);(cv[nr]||Lr||ur.imageName)&&Fe.push(mp(Xt+1,mt,Qe,Fe,tq(nr,m.getCharCode(Xt+1),Lr&&st),!1))}}return rb(mp(m.length(),mt,Qe,Fe,0,!0))}function bS(m){var y=.5,I=.5;switch(m){case"right":case"top-right":case"bottom-right":y=1;break;case"left":case"top-left":case"bottom-left":y=0;break}switch(m){case"bottom":case"bottom-right":case"bottom-left":I=1;break;case"top":case"top-right":case"top-left":I=0;break}return{horizontalAlign:y,verticalAlign:I}}function rq(m,y,I,U,J,ne,fe,Fe,Qe,st,mt,Xt){for(var ur=0,nr=R1,Lr=0,Yr=0,_i=Fe==="right"?1:Fe==="left"?0:.5,si=0,Hi=0,Ei=J;Hi<Ei.length;Hi+=1){var Vi=Ei[Hi];Vi.trim();var en=Vi.getMaxScale(),An=(en-1)*Zi,ra={positionedGlyphs:[],lineOffset:0};m.positionedLines[si]=ra;var $n=ra.positionedGlyphs,Ba=0;if(!Vi.length()){nr+=ne,++si;continue}for(var _a=0;_a<Vi.length();_a++){var Pa=Vi.getSection(_a),qo=Vi.getSectionIndex(_a),Na=Vi.getCharCode(_a),ja=0,us=null,zo=null,rl=null,su=Zi,il=!(Qe===uv.horizontal||!mt&&!Ir(Na)||mt&&(m0[Na]||qr(Na)));if(Pa.imageName){var nf=U[Pa.imageName];if(!nf)continue;rl=Pa.imageName,m.iconsInText=m.iconsInText||!0,zo=nf.paddedRect;var bf=nf.displaySize;Pa.scale=Pa.scale*Zi/Xt,us={width:bf[0],height:bf[1],left:oc,top:-Gp,advance:il?bf[1]:bf[0]};var qh=Zi-bf[1]*Pa.scale;ja=An+qh,su=us.advance;var Zf=il?bf[0]*Pa.scale-Zi*en:bf[1]*Pa.scale-Zi*en;Zf>0&&Zf>Ba&&(Ba=Zf)}else{var nl=I[Pa.fontStack],Ws=nl&&nl[Na];if(Ws&&Ws.rect)zo=Ws.rect,us=Ws.metrics;else{var Au=y[Pa.fontStack],Ou=Au&&Au[Na];if(!Ou)continue;us=Ou.metrics}ja=(en-Pa.scale)*Zi}il?(m.verticalizable=!0,$n.push({glyph:Na,imageName:rl,x:ur,y:nr+ja,vertical:il,scale:Pa.scale,fontStack:Pa.fontStack,sectionIndex:qo,metrics:us,rect:zo}),ur+=su*Pa.scale+st):($n.push({glyph:Na,imageName:rl,x:ur,y:nr+ja,vertical:il,scale:Pa.scale,fontStack:Pa.fontStack,sectionIndex:qo,metrics:us,rect:zo}),ur+=us.advance*Pa.scale+st)}if($n.length!==0){var jd=ur-st;Lr=Math.max(jd,Lr),iq($n,0,$n.length-1,_i,Ba)}ur=0;var Wd=ne*en+Ba;ra.lineOffset=Math.max(Ba,An),nr+=Wd,Yr=Math.max(Wd,Yr),++si}var Oh=nr-R1,fv=bS(fe),hv=fv.horizontalAlign,hh=fv.verticalAlign;Ad(m.positionedLines,_i,hv,hh,Lr,Yr,ne,Oh,J.length),m.top+=-hh*Oh,m.bottom=m.top+Oh,m.left+=-hv*Lr,m.right=m.left+Lr}function iq(m,y,I,U,J){if(!(!U&&!J))for(var ne=m[I],fe=ne.metrics.advance*ne.scale,Fe=(m[I].x+fe)*U,Qe=y;Qe<=I;Qe++)m[Qe].x-=Fe,m[Qe].y+=J}function Ad(m,y,I,U,J,ne,fe,Fe,Qe){var st=(y-I)*J,mt=0;ne!==fe?mt=-Fe*U-R1:mt=(-U*Qe+.5)*fe;for(var Xt=0,ur=m;Xt<ur.length;Xt+=1)for(var nr=ur[Xt],Lr=0,Yr=nr.positionedGlyphs;Lr<Yr.length;Lr+=1){var _i=Yr[Lr];_i.x+=st,_i.y+=mt}}function tp(m,y,I){var U=bS(I),J=U.horizontalAlign,ne=U.verticalAlign,fe=y[0],Fe=y[1],Qe=fe-m.displaySize[0]*J,st=Qe+m.displaySize[0],mt=Fe-m.displaySize[1]*ne,Xt=mt+m.displaySize[1];return{image:m,top:mt,bottom:Xt,left:Qe,right:st}}function hm(m,y,I,U,J,ne){var fe=m.image,Fe;if(fe.content){var Qe=fe.content,st=fe.pixelRatio||1;Fe=[Qe[0]/st,Qe[1]/st,fe.displaySize[0]-Qe[2]/st,fe.displaySize[1]-Qe[3]/st]}var mt=y.left*ne,Xt=y.right*ne,ur,nr,Lr,Yr;I==="width"||I==="both"?(Yr=J[0]+mt-U[3],nr=J[0]+Xt+U[1]):(Yr=J[0]+(mt+Xt-fe.displaySize[0])/2,nr=Yr+fe.displaySize[0]);var _i=y.top*ne,si=y.bottom*ne;return I==="height"||I==="both"?(ur=J[1]+_i-U[0],Lr=J[1]+si+U[2]):(ur=J[1]+(_i+si-fe.displaySize[1])/2,Lr=ur+fe.displaySize[1]),{image:fe,top:ur,right:nr,bottom:Lr,left:Yr,collisionPadding:Fe}}var Gd=function(m){function y(I,U,J,ne){m.call(this,I,U),this.angle=J,ne!==void 0&&(this.segment=ne)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.clone=function(){return new y(this.x,this.y,this.angle,this.segment)},y}(u);Z("Anchor",Gd);var Sd=128;function yp(m,y){var I=y.expression;if(I.kind==="constant"){var U=I.evaluate(new pn(m+1));return{kind:"constant",layoutSize:U}}else{if(I.kind==="source")return{kind:"source"};for(var J=I.zoomStops,ne=I.interpolationType,fe=0;fe<J.length&&J[fe]<=m;)fe++;fe=Math.max(0,fe-1);for(var Fe=fe;Fe<J.length&&J[Fe]<m+1;)Fe++;Fe=Math.min(J.length-1,Fe);var Qe=J[fe],st=J[Fe];if(I.kind==="composite")return{kind:"composite",minZoom:Qe,maxZoom:st,interpolationType:ne};var mt=I.evaluate(new pn(Qe)),Xt=I.evaluate(new pn(st));return{kind:"camera",minZoom:Qe,maxZoom:st,minSize:mt,maxSize:Xt,interpolationType:ne}}}function _Q(m,y,I){var U=y.uSize,J=y.uSizeT,ne=I.lowerSize,fe=I.upperSize;return m.kind==="source"?ne/Sd:m.kind==="composite"?Qs(ne/Sd,fe/Sd,J):U}function xQ(m,y){var I=0,U=0;if(m.kind==="constant")U=m.layoutSize;else if(m.kind!=="source"){var J=m.interpolationType,ne=m.minZoom,fe=m.maxZoom,Fe=J?p(Dl.interpolationFactor(J,y,ne,fe),0,1):0;m.kind==="camera"?U=Qs(m.minSize,m.maxSize,Fe):I=Fe}return{uSizeT:I,uSize:U}}var iQe=Object.freeze({__proto__:null,getSizeData:yp,evaluateSizeForFeature:_Q,evaluateSizeForZoom:xQ,SIZE_PACK_FACTOR:Sd});function bQ(m,y,I,U,J){if(y.segment===void 0)return!0;for(var ne=y,fe=y.segment+1,Fe=0;Fe>-I/2;){if(fe--,fe<0)return!1;Fe-=m[fe].dist(ne),ne=m[fe]}Fe+=m[fe].dist(m[fe+1]),fe++;for(var Qe=[],st=0;Fe<I/2;){var mt=m[fe-1],Xt=m[fe],ur=m[fe+1];if(!ur)return!1;var nr=mt.angleTo(Xt)-Xt.angleTo(ur);for(nr=Math.abs((nr+3*Math.PI)%(Math.PI*2)-Math.PI),Qe.push({distance:Fe,angleDelta:nr}),st+=nr;Fe-Qe[0].distance>U;)st-=Qe.shift().angleDelta;if(st>J)return!1;fe++,Fe+=Xt.dist(ur)}return!0}function wQ(m){for(var y=0,I=0;I<m.length-1;I++)y+=m[I].dist(m[I+1]);return y}function TQ(m,y,I){return m?3/5*y*I:0}function AQ(m,y){return Math.max(m?m.right-m.left:0,y?y.right-y.left:0)}function nQe(m,y,I,U,J,ne){for(var fe=TQ(I,J,ne),Fe=AQ(I,U)*ne,Qe=0,st=wQ(m)/2,mt=0;mt<m.length-1;mt++){var Xt=m[mt],ur=m[mt+1],nr=Xt.dist(ur);if(Qe+nr>st){var Lr=(st-Qe)/nr,Yr=Qs(Xt.x,ur.x,Lr),_i=Qs(Xt.y,ur.y,Lr),si=new Gd(Yr,_i,ur.angleTo(Xt),mt);return si._round(),!fe||bQ(m,si,Fe,fe,y)?si:void 0}Qe+=nr}}function aQe(m,y,I,U,J,ne,fe,Fe,Qe){var st=TQ(U,ne,fe),mt=AQ(U,J),Xt=mt*fe,ur=m[0].x===0||m[0].x===Qe||m[0].y===0||m[0].y===Qe;y-Xt<y/4&&(y=Xt+y/4);var nr=ne*2,Lr=ur?y/2*Fe%y:(mt/2+nr)*fe*Fe%y;return SQ(m,Lr,y,st,I,Xt,ur,!1,Qe)}function SQ(m,y,I,U,J,ne,fe,Fe,Qe){for(var st=ne/2,mt=wQ(m),Xt=0,ur=y-I,nr=[],Lr=0;Lr<m.length-1;Lr++){for(var Yr=m[Lr],_i=m[Lr+1],si=Yr.dist(_i),Hi=_i.angleTo(Yr);ur+I<Xt+si;){ur+=I;var Ei=(ur-Xt)/si,Vi=Qs(Yr.x,_i.x,Ei),en=Qs(Yr.y,_i.y,Ei);if(Vi>=0&&Vi<Qe&&en>=0&&en<Qe&&ur-st>=0&&ur+st<=mt){var An=new Gd(Vi,en,Hi,Lr);An._round(),(!U||bQ(m,An,ne,U,J))&&nr.push(An)}}Xt+=si}return!Fe&&!nr.length&&!fe&&(nr=SQ(m,Xt/2,I,U,J,ne,fe,!0,Qe)),nr}function MQ(m,y,I,U,J){for(var ne=[],fe=0;fe<m.length;fe++)for(var Fe=m[fe],Qe=void 0,st=0;st<Fe.length-1;st++){var mt=Fe[st],Xt=Fe[st+1];mt.x<y&&Xt.x<y||(mt.x<y?mt=new u(y,mt.y+(Xt.y-mt.y)*((y-mt.x)/(Xt.x-mt.x)))._round():Xt.x<y&&(Xt=new u(y,mt.y+(Xt.y-mt.y)*((y-mt.x)/(Xt.x-mt.x)))._round()),!(mt.y<I&&Xt.y<I)&&(mt.y<I?mt=new u(mt.x+(Xt.x-mt.x)*((I-mt.y)/(Xt.y-mt.y)),I)._round():Xt.y<I&&(Xt=new u(mt.x+(Xt.x-mt.x)*((I-mt.y)/(Xt.y-mt.y)),I)._round()),!(mt.x>=U&&Xt.x>=U)&&(mt.x>=U?mt=new u(U,mt.y+(Xt.y-mt.y)*((U-mt.x)/(Xt.x-mt.x)))._round():Xt.x>=U&&(Xt=new u(U,mt.y+(Xt.y-mt.y)*((U-mt.x)/(Xt.x-mt.x)))._round()),!(mt.y>=J&&Xt.y>=J)&&(mt.y>=J?mt=new u(mt.x+(Xt.x-mt.x)*((J-mt.y)/(Xt.y-mt.y)),J)._round():Xt.y>=J&&(Xt=new u(mt.x+(Xt.x-mt.x)*((J-mt.y)/(Xt.y-mt.y)),J)._round()),(!Qe||!mt.equals(Qe[Qe.length-1]))&&(Qe=[mt],ne.push(Qe)),Qe.push(Xt)))))}return ne}var Gw=oc;function EQ(m,y,I,U){var J=[],ne=m.image,fe=ne.pixelRatio,Fe=ne.paddedRect.w-2*Gw,Qe=ne.paddedRect.h-2*Gw,st=m.right-m.left,mt=m.bottom-m.top,Xt=ne.stretchX||[[0,Fe]],ur=ne.stretchY||[[0,Qe]],nr=function(nl,Ws){return nl+Ws[1]-Ws[0]},Lr=Xt.reduce(nr,0),Yr=ur.reduce(nr,0),_i=Fe-Lr,si=Qe-Yr,Hi=0,Ei=Lr,Vi=0,en=Yr,An=0,ra=_i,$n=0,Ba=si;if(ne.content&&U){var _a=ne.content;Hi=HC(Xt,0,_a[0]),Vi=HC(ur,0,_a[1]),Ei=HC(Xt,_a[0],_a[2]),en=HC(ur,_a[1],_a[3]),An=_a[0]-Hi,$n=_a[1]-Vi,ra=_a[2]-_a[0]-Ei,Ba=_a[3]-_a[1]-en}var Pa=function(nl,Ws,Au,Ou){var nf=GC(nl.stretch-Hi,Ei,st,m.left),bf=jC(nl.fixed-An,ra,nl.stretch,Lr),qh=GC(Ws.stretch-Vi,en,mt,m.top),Zf=jC(Ws.fixed-$n,Ba,Ws.stretch,Yr),jd=GC(Au.stretch-Hi,Ei,st,m.left),Wd=jC(Au.fixed-An,ra,Au.stretch,Lr),Oh=GC(Ou.stretch-Vi,en,mt,m.top),fv=jC(Ou.fixed-$n,Ba,Ou.stretch,Yr),hv=new u(nf,qh),hh=new u(jd,qh),dv=new u(jd,Oh),_p=new u(nf,Oh),py=new u(bf/fe,Zf/fe),F1=new u(Wd/fe,fv/fe),q1=y*Math.PI/180;if(q1){var O1=Math.sin(q1),$w=Math.cos(q1),y0=[$w,-O1,O1,$w];hv._matMult(y0),hh._matMult(y0),_p._matMult(y0),dv._matMult(y0)}var JC=nl.stretch+nl.fixed,fq=Au.stretch+Au.fixed,$C=Ws.stretch+Ws.fixed,hq=Ou.stretch+Ou.fixed,jp={x:ne.paddedRect.x+Gw+JC,y:ne.paddedRect.y+Gw+$C,w:fq-JC,h:hq-$C},Qw=ra/fe/st,QC=Ba/fe/mt;return{tl:hv,tr:hh,bl:_p,br:dv,tex:jp,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:py,pixelOffsetBR:F1,minFontScaleX:Qw,minFontScaleY:QC,isSDF:I}};if(!U||!ne.stretchX&&!ne.stretchY)J.push(Pa({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:Fe+1},{fixed:0,stretch:Qe+1}));else for(var qo=kQ(Xt,_i,Lr),Na=kQ(ur,si,Yr),ja=0;ja<qo.length-1;ja++)for(var us=qo[ja],zo=qo[ja+1],rl=0;rl<Na.length-1;rl++){var su=Na[rl],il=Na[rl+1];J.push(Pa(us,su,zo,il))}return J}function HC(m,y,I){for(var U=0,J=0,ne=m;J<ne.length;J+=1){var fe=ne[J];U+=Math.max(y,Math.min(I,fe[1]))-Math.max(y,Math.min(I,fe[0]))}return U}function kQ(m,y,I){for(var U=[{fixed:-Gw,stretch:0}],J=0,ne=m;J<ne.length;J+=1){var fe=ne[J],Fe=fe[0],Qe=fe[1],st=U[U.length-1];U.push({fixed:Fe-st.stretch,stretch:st.stretch}),U.push({fixed:Fe-st.stretch,stretch:st.stretch+(Qe-Fe)})}return U.push({fixed:y+Gw,stretch:I}),U}function GC(m,y,I,U){return m/y*I+U}function jC(m,y,I,U){return m-y*I/U}function oQe(m,y,I,U,J,ne,fe,Fe){for(var Qe=U.layout.get("text-rotate").evaluate(ne,{})*Math.PI/180,st=[],mt=0,Xt=y.positionedLines;mt<Xt.length;mt+=1)for(var ur=Xt[mt],nr=0,Lr=ur.positionedGlyphs;nr<Lr.length;nr+=1){var Yr=Lr[nr];if(Yr.rect){var _i=Yr.rect||{},si=1,Hi=Gp+si,Ei=!0,Vi=1,en=0,An=(J||Fe)&&Yr.vertical,ra=Yr.metrics.advance*Yr.scale/2;if(Fe&&y.verticalizable){var $n=(Yr.scale-1)*Zi,Ba=(Zi-Yr.metrics.width*Yr.scale)/2;en=ur.lineOffset/2-(Yr.imageName?-Ba:$n)}if(Yr.imageName){var _a=fe[Yr.imageName];Ei=_a.sdf,Vi=_a.pixelRatio,Hi=oc/Vi}var Pa=J?[Yr.x+ra,Yr.y]:[0,0],qo=J?[0,0]:[Yr.x+ra+I[0],Yr.y+I[1]-en],Na=[0,0];An&&(Na=qo,qo=[0,0]);var ja=(Yr.metrics.left-Hi)*Yr.scale-ra+qo[0],us=(-Yr.metrics.top-Hi)*Yr.scale+qo[1],zo=ja+_i.w*Yr.scale/Vi,rl=us+_i.h*Yr.scale/Vi,su=new u(ja,us),il=new u(zo,us),nl=new u(ja,rl),Ws=new u(zo,rl);if(An){var Au=new u(-ra,ra-R1),Ou=-Math.PI/2,nf=Zi/2-ra,bf=Yr.imageName?nf:0,qh=new u(5-R1-nf,-bf),Zf=new(Function.prototype.bind.apply(u,[null].concat(Na)));su._rotateAround(Ou,Au)._add(qh)._add(Zf),il._rotateAround(Ou,Au)._add(qh)._add(Zf),nl._rotateAround(Ou,Au)._add(qh)._add(Zf),Ws._rotateAround(Ou,Au)._add(qh)._add(Zf)}if(Qe){var jd=Math.sin(Qe),Wd=Math.cos(Qe),Oh=[Wd,-jd,jd,Wd];su._matMult(Oh),il._matMult(Oh),nl._matMult(Oh),Ws._matMult(Oh)}var fv=new u(0,0),hv=new u(0,0),hh=0,dv=0;st.push({tl:su,tr:il,bl:nl,br:Ws,tex:_i,writingMode:y.writingMode,glyphOffset:Pa,sectionIndex:Yr.sectionIndex,isSDF:Ei,pixelOffsetTL:fv,pixelOffsetBR:hv,minFontScaleX:hh,minFontScaleY:dv})}}return st}var WC=function(y,I,U,J,ne,fe,Fe,Qe,st,mt){if(this.boxStartIndex=y.length,st){var Xt=fe.top,ur=fe.bottom,nr=fe.collisionPadding;nr&&(Xt-=nr[1],ur+=nr[3]);var Lr=ur-Xt;Lr>0&&(Lr=Math.max(10,Lr),this.circleDiameter=Lr)}else{var Yr=fe.top*Fe-Qe,_i=fe.bottom*Fe+Qe,si=fe.left*Fe-Qe,Hi=fe.right*Fe+Qe,Ei=fe.collisionPadding;if(Ei&&(si-=Ei[0]*Fe,Yr-=Ei[1]*Fe,Hi+=Ei[2]*Fe,_i+=Ei[3]*Fe),mt){var Vi=new u(si,Yr),en=new u(Hi,Yr),An=new u(si,_i),ra=new u(Hi,_i),$n=mt*Math.PI/180;Vi._rotate($n),en._rotate($n),An._rotate($n),ra._rotate($n),si=Math.min(Vi.x,en.x,An.x,ra.x),Hi=Math.max(Vi.x,en.x,An.x,ra.x),Yr=Math.min(Vi.y,en.y,An.y,ra.y),_i=Math.max(Vi.y,en.y,An.y,ra.y)}y.emplaceBack(I.x,I.y,si,Yr,Hi,_i,U,J,ne)}this.boxEndIndex=y.length},jw=function(y,I){if(y===void 0&&(y=[]),I===void 0&&(I=sQe),this.data=y,this.length=this.data.length,this.compare=I,this.length>0)for(var U=(this.length>>1)-1;U>=0;U--)this._down(U)};jw.prototype.push=function(y){this.data.push(y),this.length++,this._up(this.length-1)},jw.prototype.pop=function(){if(this.length!==0){var y=this.data[0],I=this.data.pop();return this.length--,this.length>0&&(this.data[0]=I,this._down(0)),y}},jw.prototype.peek=function(){return this.data[0]},jw.prototype._up=function(y){for(var I=this,U=I.data,J=I.compare,ne=U[y];y>0;){var fe=y-1>>1,Fe=U[fe];if(J(ne,Fe)>=0)break;U[y]=Fe,y=fe}U[y]=ne},jw.prototype._down=function(y){for(var I=this,U=I.data,J=I.compare,ne=this.length>>1,fe=U[y];y<ne;){var Fe=(y<<1)+1,Qe=U[Fe],st=Fe+1;if(st<this.length&&J(U[st],Qe)<0&&(Fe=st,Qe=U[st]),J(Qe,fe)>=0)break;U[y]=Qe,y=Fe}U[y]=fe};function sQe(m,y){return m<y?-1:m>y?1:0}function lQe(m,y,I){y===void 0&&(y=1),I===void 0&&(I=!1);for(var U=1/0,J=1/0,ne=-1/0,fe=-1/0,Fe=m[0],Qe=0;Qe<Fe.length;Qe++){var st=Fe[Qe];(!Qe||st.x<U)&&(U=st.x),(!Qe||st.y<J)&&(J=st.y),(!Qe||st.x>ne)&&(ne=st.x),(!Qe||st.y>fe)&&(fe=st.y)}var mt=ne-U,Xt=fe-J,ur=Math.min(mt,Xt),nr=ur/2,Lr=new jw([],uQe);if(ur===0)return new u(U,J);for(var Yr=U;Yr<ne;Yr+=ur)for(var _i=J;_i<fe;_i+=ur)Lr.push(new Ww(Yr+nr,_i+nr,nr,m));for(var si=fQe(m),Hi=Lr.length;Lr.length;){var Ei=Lr.pop();(Ei.d>si.d||!si.d)&&(si=Ei,I&&console.log("found best %d after %d probes",Math.round(1e4*Ei.d)/1e4,Hi)),!(Ei.max-si.d<=y)&&(nr=Ei.h/2,Lr.push(new Ww(Ei.p.x-nr,Ei.p.y-nr,nr,m)),Lr.push(new Ww(Ei.p.x+nr,Ei.p.y-nr,nr,m)),Lr.push(new Ww(Ei.p.x-nr,Ei.p.y+nr,nr,m)),Lr.push(new Ww(Ei.p.x+nr,Ei.p.y+nr,nr,m)),Hi+=4)}return I&&(console.log("num probes: "+Hi),console.log("best distance: "+si.d)),si.p}function uQe(m,y){return y.max-m.max}function Ww(m,y,I,U){this.p=new u(m,y),this.h=I,this.d=cQe(this.p,U),this.max=this.d+this.h*Math.SQRT2}function cQe(m,y){for(var I=!1,U=1/0,J=0;J<y.length;J++)for(var ne=y[J],fe=0,Fe=ne.length,Qe=Fe-1;fe<Fe;Qe=fe++){var st=ne[fe],mt=ne[Qe];st.y>m.y!=mt.y>m.y&&m.x<(mt.x-st.x)*(m.y-st.y)/(mt.y-st.y)+st.x&&(I=!I),U=Math.min(U,cg(m,st,mt))}return(I?1:-1)*Math.sqrt(U)}function fQe(m){for(var y=0,I=0,U=0,J=m[0],ne=0,fe=J.length,Fe=fe-1;ne<fe;Fe=ne++){var Qe=J[ne],st=J[Fe],mt=Qe.x*st.y-st.x*Qe.y;I+=(Qe.x+st.x)*mt,U+=(Qe.y+st.y)*mt,y+=mt*3}return new Ww(I/y,U/y,0,m)}var Zw=7,nq=Number.POSITIVE_INFINITY;function CQ(m,y){function I(J,ne){var fe=0,Fe=0;ne<0&&(ne=0);var Qe=ne/Math.sqrt(2);switch(J){case"top-right":case"top-left":Fe=Qe-Zw;break;case"bottom-right":case"bottom-left":Fe=-Qe+Zw;break;case"bottom":Fe=-ne+Zw;break;case"top":Fe=ne-Zw;break}switch(J){case"top-right":case"bottom-right":fe=-Qe;break;case"top-left":case"bottom-left":fe=Qe;break;case"left":fe=ne;break;case"right":fe=-ne;break}return[fe,Fe]}function U(J,ne,fe){var Fe=0,Qe=0;switch(ne=Math.abs(ne),fe=Math.abs(fe),J){case"top-right":case"top-left":case"top":Qe=fe-Zw;break;case"bottom-right":case"bottom-left":case"bottom":Qe=-fe+Zw;break}switch(J){case"top-right":case"bottom-right":case"right":Fe=-ne;break;case"top-left":case"bottom-left":case"left":Fe=ne;break}return[Fe,Qe]}return y[1]!==nq?U(m,y[0],y[1]):I(m,y[0])}function hQe(m,y,I,U,J,ne,fe){m.createArrays();var Fe=512*m.overscaling;m.tilePixelRatio=rn/Fe,m.compareText={},m.iconsNeedLinear=!1;var Qe=m.layers[0].layout,st=m.layers[0]._unevaluatedLayout._values,mt={};if(m.textSizeData.kind==="composite"){var Xt=m.textSizeData,ur=Xt.minZoom,nr=Xt.maxZoom;mt.compositeTextSizes=[st["text-size"].possiblyEvaluate(new pn(ur),fe),st["text-size"].possiblyEvaluate(new pn(nr),fe)]}if(m.iconSizeData.kind==="composite"){var Lr=m.iconSizeData,Yr=Lr.minZoom,_i=Lr.maxZoom;mt.compositeIconSizes=[st["icon-size"].possiblyEvaluate(new pn(Yr),fe),st["icon-size"].possiblyEvaluate(new pn(_i),fe)]}mt.layoutTextSize=st["text-size"].possiblyEvaluate(new pn(m.zoom+1),fe),mt.layoutIconSize=st["icon-size"].possiblyEvaluate(new pn(m.zoom+1),fe),mt.textMaxSize=st["text-size"].possiblyEvaluate(new pn(18));for(var si=Qe.get("text-line-height")*Zi,Hi=Qe.get("text-rotation-alignment")==="map"&&Qe.get("symbol-placement")!=="point",Ei=Qe.get("text-keep-upright"),Vi=Qe.get("text-size"),en=function(){var $n=ra[An],Ba=Qe.get("text-font").evaluate($n,{},fe).join(","),_a=Vi.evaluate($n,{},fe),Pa=mt.layoutTextSize.evaluate($n,{},fe),qo=mt.layoutIconSize.evaluate($n,{},fe),Na={horizontal:{},vertical:void 0},ja=$n.text,us=[0,0];if(ja){var zo=ja.toString(),rl=Qe.get("text-letter-spacing").evaluate($n,{},fe)*Zi,su=or(zo)?rl:0,il=Qe.get("text-anchor").evaluate($n,{},fe),nl=Qe.get("text-variable-anchor");if(!nl){var Ws=Qe.get("text-radial-offset").evaluate($n,{},fe);Ws?us=CQ(il,[Ws*Zi,nq]):us=Qe.get("text-offset").evaluate($n,{},fe).map(function(py){return py*Zi})}var Au=Hi?"center":Qe.get("text-justify").evaluate($n,{},fe),Ou=Qe.get("symbol-placement"),nf=Ou==="point"?Qe.get("text-max-width").evaluate($n,{},fe)*Zi:0,bf=function(){m.allowVerticalPlacement&&zt(zo)&&(Na.vertical=Vw(ja,y,I,J,Ba,nf,si,il,"left",su,us,uv.vertical,!0,Ou,Pa,_a))};if(!Hi&&nl){for(var qh=Au==="auto"?nl.map(function(py){return aq(py)}):[Au],Zf=!1,jd=0;jd<qh.length;jd++){var Wd=qh[jd];if(!Na.horizontal[Wd])if(Zf)Na.horizontal[Wd]=Na.horizontal[0];else{var Oh=Vw(ja,y,I,J,Ba,nf,si,"center",Wd,su,us,uv.horizontal,!1,Ou,Pa,_a);Oh&&(Na.horizontal[Wd]=Oh,Zf=Oh.positionedLines.length===1)}}bf()}else{Au==="auto"&&(Au=aq(il));var fv=Vw(ja,y,I,J,Ba,nf,si,il,Au,su,us,uv.horizontal,!1,Ou,Pa,_a);fv&&(Na.horizontal[Au]=fv),bf(),zt(zo)&&Hi&&Ei&&(Na.vertical=Vw(ja,y,I,J,Ba,nf,si,il,Au,su,us,uv.vertical,!1,Ou,Pa,_a))}}var hv=void 0,hh=!1;if($n.icon&&$n.icon.name){var dv=U[$n.icon.name];dv&&(hv=tp(J[$n.icon.name],Qe.get("icon-offset").evaluate($n,{},fe),Qe.get("icon-anchor").evaluate($n,{},fe)),hh=dv.sdf,m.sdfIcons===void 0?m.sdfIcons=dv.sdf:m.sdfIcons!==dv.sdf&&re("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(dv.pixelRatio!==m.pixelRatio||Qe.get("icon-rotate").constantOr(1)!==0)&&(m.iconsNeedLinear=!0))}var _p=PQ(Na.horizontal)||Na.vertical;m.iconsInText=_p?_p.iconsInText:!1,(_p||hv)&&dQe(m,$n,Na,hv,U,mt,Pa,qo,us,hh,fe)},An=0,ra=m.features;An<ra.length;An+=1)en();ne&&m.generateCollisionDebugBuffers()}function aq(m){switch(m){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function dQe(m,y,I,U,J,ne,fe,Fe,Qe,st,mt){var Xt=ne.textMaxSize.evaluate(y,{});Xt===void 0&&(Xt=fe);var ur=m.layers[0].layout,nr=ur.get("icon-offset").evaluate(y,{},mt),Lr=PQ(I.horizontal),Yr=24,_i=fe/Yr,si=m.tilePixelRatio*_i,Hi=m.tilePixelRatio*Xt/Yr,Ei=m.tilePixelRatio*Fe,Vi=m.tilePixelRatio*ur.get("symbol-spacing"),en=ur.get("text-padding")*m.tilePixelRatio,An=ur.get("icon-padding")*m.tilePixelRatio,ra=ur.get("text-max-angle")/180*Math.PI,$n=ur.get("text-rotation-alignment")==="map"&&ur.get("symbol-placement")!=="point",Ba=ur.get("icon-rotation-alignment")==="map"&&ur.get("symbol-placement")!=="point",_a=ur.get("symbol-placement"),Pa=Vi/2,qo=ur.get("icon-text-fit"),Na;U&&qo!=="none"&&(m.allowVerticalPlacement&&I.vertical&&(Na=hm(U,I.vertical,qo,ur.get("icon-text-fit-padding"),nr,_i)),Lr&&(U=hm(U,Lr,qo,ur.get("icon-text-fit-padding"),nr,_i)));var ja=function($w,y0){y0.x<0||y0.x>=rn||y0.y<0||y0.y>=rn||vQe(m,y0,$w,I,U,J,Na,m.layers[0],m.collisionBoxArray,y.index,y.sourceLayerIndex,m.index,si,en,$n,Qe,Ei,An,Ba,nr,y,ne,st,mt,fe)};if(_a==="line")for(var us=0,zo=MQ(y.geometry,0,0,rn,rn);us<zo.length;us+=1)for(var rl=zo[us],su=aQe(rl,Vi,ra,I.vertical||Lr,U,Yr,Hi,m.overscaling,rn),il=0,nl=su;il<nl.length;il+=1){var Ws=nl[il],Au=Lr;(!Au||!pQe(m,Au.text,Pa,Ws))&&ja(rl,Ws)}else if(_a==="line-center")for(var Ou=0,nf=y.geometry;Ou<nf.length;Ou+=1){var bf=nf[Ou];if(bf.length>1){var qh=nQe(bf,ra,I.vertical||Lr,U,Yr,Hi);qh&&ja(bf,qh)}}else if(y.type==="Polygon")for(var Zf=0,jd=zw(y.geometry,0);Zf<jd.length;Zf+=1){var Wd=jd[Zf],Oh=lQe(Wd,16);ja(Wd[0],new Gd(Oh.x,Oh.y,0))}else if(y.type==="LineString")for(var fv=0,hv=y.geometry;fv<hv.length;fv+=1){var hh=hv[fv];ja(hh,new Gd(hh[0].x,hh[0].y,0))}else if(y.type==="Point")for(var dv=0,_p=y.geometry;dv<_p.length;dv+=1)for(var py=_p[dv],F1=0,q1=py;F1<q1.length;F1+=1){var O1=q1[F1];ja([O1],new Gd(O1.x,O1.y,0))}}var wS=255,D1=wS*Sd;function LQ(m,y,I,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr){var Yr=oQe(y,I,Fe,J,ne,fe,U,m.allowVerticalPlacement),_i=m.textSizeData,si=null;_i.kind==="source"?(si=[Sd*J.layout.get("text-size").evaluate(fe,{})],si[0]>D1&&re(m.layerIds[0]+': Value for "text-size" is >= '+wS+'. Reduce your "text-size".')):_i.kind==="composite"&&(si=[Sd*nr.compositeTextSizes[0].evaluate(fe,{},Lr),Sd*nr.compositeTextSizes[1].evaluate(fe,{},Lr)],(si[0]>D1||si[1]>D1)&&re(m.layerIds[0]+': Value for "text-size" is >= '+wS+'. Reduce your "text-size".')),m.addSymbols(m.text,Yr,si,Fe,ne,fe,st,y,Qe.lineStartIndex,Qe.lineLength,ur,Lr);for(var Hi=0,Ei=mt;Hi<Ei.length;Hi+=1){var Vi=Ei[Hi];Xt[Vi]=m.text.placedSymbolArray.length-1}return Yr.length*4}function PQ(m){for(var y in m)return m[y];return null}function vQe(m,y,I,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur,nr,Lr,Yr,_i,si,Hi,Ei,Vi,en,An,ra,$n){var Ba,_a=m.addToLineVertexArray(y,I),Pa,qo,Na,ja,us=0,zo=0,rl=0,su=0,il=-1,nl=-1,Ws={},Au=$(""),Ou=0,nf=0;if(Fe._unevaluatedLayout.getValue("text-radial-offset")===void 0?(Ba=Fe.layout.get("text-offset").evaluate(Vi,{},ra).map(function(SS){return SS*Zi}),Ou=Ba[0],nf=Ba[1]):(Ou=Fe.layout.get("text-radial-offset").evaluate(Vi,{},ra)*Zi,nf=nq),m.allowVerticalPlacement&&U.vertical){var bf=Fe.layout.get("text-rotate").evaluate(Vi,{},ra),qh=bf+90,Zf=U.vertical;Na=new WC(Qe,y,st,mt,Xt,Zf,ur,nr,Lr,qh),fe&&(ja=new WC(Qe,y,st,mt,Xt,fe,_i,si,Lr,qh))}if(J){var jd=Fe.layout.get("icon-rotate").evaluate(Vi,{}),Wd=Fe.layout.get("icon-text-fit")!=="none",Oh=EQ(J,jd,An,Wd),fv=fe?EQ(fe,jd,An,Wd):void 0;qo=new WC(Qe,y,st,mt,Xt,J,_i,si,!1,jd),us=Oh.length*4;var hv=m.iconSizeData,hh=null;hv.kind==="source"?(hh=[Sd*Fe.layout.get("icon-size").evaluate(Vi,{})],hh[0]>D1&&re(m.layerIds[0]+': Value for "icon-size" is >= '+wS+'. Reduce your "icon-size".')):hv.kind==="composite"&&(hh=[Sd*en.compositeIconSizes[0].evaluate(Vi,{},ra),Sd*en.compositeIconSizes[1].evaluate(Vi,{},ra)],(hh[0]>D1||hh[1]>D1)&&re(m.layerIds[0]+': Value for "icon-size" is >= '+wS+'. Reduce your "icon-size".')),m.addSymbols(m.icon,Oh,hh,Ei,Hi,Vi,!1,y,_a.lineStartIndex,_a.lineLength,-1,ra),il=m.icon.placedSymbolArray.length-1,fv&&(zo=fv.length*4,m.addSymbols(m.icon,fv,hh,Ei,Hi,Vi,uv.vertical,y,_a.lineStartIndex,_a.lineLength,-1,ra),nl=m.icon.placedSymbolArray.length-1)}for(var dv in U.horizontal){var _p=U.horizontal[dv];if(!Pa){Au=$(_p.text);var py=Fe.layout.get("text-rotate").evaluate(Vi,{},ra);Pa=new WC(Qe,y,st,mt,Xt,_p,ur,nr,Lr,py)}var F1=_p.positionedLines.length===1;if(rl+=LQ(m,y,_p,ne,Fe,Lr,Vi,Yr,_a,U.vertical?uv.horizontal:uv.horizontalOnly,F1?Object.keys(U.horizontal):[dv],Ws,il,en,ra),F1)break}U.vertical&&(su+=LQ(m,y,U.vertical,ne,Fe,Lr,Vi,Yr,_a,uv.vertical,["vertical"],Ws,nl,en,ra));var q1=Pa?Pa.boxStartIndex:m.collisionBoxArray.length,O1=Pa?Pa.boxEndIndex:m.collisionBoxArray.length,$w=Na?Na.boxStartIndex:m.collisionBoxArray.length,y0=Na?Na.boxEndIndex:m.collisionBoxArray.length,JC=qo?qo.boxStartIndex:m.collisionBoxArray.length,fq=qo?qo.boxEndIndex:m.collisionBoxArray.length,$C=ja?ja.boxStartIndex:m.collisionBoxArray.length,hq=ja?ja.boxEndIndex:m.collisionBoxArray.length,jp=-1,Qw=function(SS,ZQ){return SS&&SS.circleDiameter?Math.max(SS.circleDiameter,ZQ):ZQ};jp=Qw(Pa,jp),jp=Qw(Na,jp),jp=Qw(qo,jp),jp=Qw(ja,jp);var QC=jp>-1?1:0;QC&&(jp*=$n/Zi),m.glyphOffsetArray.length>=ou.MAX_GLYPHS&&re("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Vi.sortKey!==void 0&&m.addToSortKeyRanges(m.symbolInstances.length,Vi.sortKey),m.symbolInstances.emplaceBack(y.x,y.y,Ws.right>=0?Ws.right:-1,Ws.center>=0?Ws.center:-1,Ws.left>=0?Ws.left:-1,Ws.vertical||-1,il,nl,Au,q1,O1,$w,y0,JC,fq,$C,hq,st,rl,su,us,zo,QC,0,ur,Ou,nf,jp)}function pQe(m,y,I,U){var J=m.compareText;if(!(y in J))J[y]=[];else for(var ne=J[y],fe=ne.length-1;fe>=0;fe--)if(U.dist(ne[fe])<I)return!0;return J[y].push(U),!1}var gQe=pg.VectorTileFeature.types,mQe=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function ZC(m,y,I,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur){var nr=Fe?Math.min(D1,Math.round(Fe[0])):0,Lr=Fe?Math.min(D1,Math.round(Fe[1])):0;m.emplaceBack(y,I,Math.round(U*32),Math.round(J*32),ne,fe,(nr<<1)+(Qe?1:0),Lr,st*16,mt*16,Xt*256,ur*256)}function oq(m,y,I){m.emplaceBack(y.x,y.y,I),m.emplaceBack(y.x,y.y,I),m.emplaceBack(y.x,y.y,I),m.emplaceBack(y.x,y.y,I)}function yQe(m){for(var y=0,I=m.sections;y<I.length;y+=1){var U=I[y];if(vi(U.text))return!0}return!1}var Xw=function(y){this.layoutVertexArray=new Za,this.indexArray=new ma,this.programConfigurations=y,this.segments=new ns,this.dynamicLayoutVertexArray=new wn,this.opacityVertexArray=new vn,this.placedSymbolArray=new El};Xw.prototype.isEmpty=function(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0},Xw.prototype.upload=function(y,I,U,J){this.isEmpty()||(U&&(this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,te.members),this.indexBuffer=y.createIndexBuffer(this.indexArray,I),this.dynamicLayoutVertexBuffer=y.createVertexBuffer(this.dynamicLayoutVertexArray,ue.members,!0),this.opacityVertexBuffer=y.createVertexBuffer(this.opacityVertexArray,mQe,!0),this.opacityVertexBuffer.itemSize=1),(U||J)&&this.programConfigurations.upload(y))},Xw.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},Z("SymbolBuffers",Xw);var TS=function(y,I,U){this.layoutVertexArray=new y,this.layoutAttributes=I,this.indexArray=new U,this.segments=new ns,this.collisionVertexArray=new Vn};TS.prototype.upload=function(y){this.layoutVertexBuffer=y.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=y.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=y.createVertexBuffer(this.collisionVertexArray,De.members,!0)},TS.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},Z("CollisionBuffers",TS);var ou=function(y){this.collisionBoxArray=y.collisionBoxArray,this.zoom=y.zoom,this.overscaling=y.overscaling,this.layers=y.layers,this.layerIds=this.layers.map(function(Qe){return Qe.id}),this.index=y.index,this.pixelRatio=y.pixelRatio,this.sourceLayerIndex=y.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=oy([]),this.placementViewportMatrix=oy([]);var I=this.layers[0],U=I._unevaluatedLayout._values;this.textSizeData=yp(this.zoom,U["text-size"]),this.iconSizeData=yp(this.zoom,U["icon-size"]);var J=this.layers[0].layout,ne=J.get("symbol-sort-key"),fe=J.get("symbol-z-order");this.canOverlap=J.get("text-allow-overlap")||J.get("icon-allow-overlap")||J.get("text-ignore-placement")||J.get("icon-ignore-placement"),this.sortFeaturesByKey=fe!=="viewport-y"&&ne.constantOr(1)!==void 0;var Fe=fe==="viewport-y"||fe==="auto"&&!this.sortFeaturesByKey;this.sortFeaturesByY=Fe&&this.canOverlap,J.get("symbol-placement")==="point"&&(this.writingModes=J.get("text-writing-mode").map(function(Qe){return uv[Qe]})),this.stateDependentLayerIds=this.layers.filter(function(Qe){return Qe.isStateDependent()}).map(function(Qe){return Qe.id}),this.sourceID=y.sourceID};ou.prototype.createArrays=function(){this.text=new Xw(new Ri(this.layers,this.zoom,function(y){return/^text/.test(y)})),this.icon=new Xw(new Ri(this.layers,this.zoom,function(y){return/^icon/.test(y)})),this.glyphOffsetArray=new yf,this.lineVertexArray=new Gl,this.symbolInstances=new wc},ou.prototype.calculateGlyphDependencies=function(y,I,U,J,ne){for(var fe=0;fe<y.length;fe++)if(I[y.charCodeAt(fe)]=!0,(U||J)&&ne){var Fe=pi[y.charAt(fe)];Fe&&(I[Fe.charCodeAt(0)]=!0)}},ou.prototype.populate=function(y,I,U){var J=this.layers[0],ne=J.layout,fe=ne.get("text-font"),Fe=ne.get("text-field"),Qe=ne.get("icon-image"),st=(Fe.value.kind!=="constant"||Fe.value.value instanceof Vl&&!Fe.value.value.isEmpty()||Fe.value.value.toString().length>0)&&(fe.value.kind!=="constant"||fe.value.value.length>0),mt=Qe.value.kind!=="constant"||!!Qe.value.value||Object.keys(Qe.parameters).length>0,Xt=ne.get("symbol-sort-key");if(this.features=[],!(!st&&!mt)){for(var ur=I.iconDependencies,nr=I.glyphDependencies,Lr=I.availableImages,Yr=new pn(this.zoom),_i=0,si=y;_i<si.length;_i+=1){var Hi=si[_i],Ei=Hi.feature,Vi=Hi.id,en=Hi.index,An=Hi.sourceLayerIndex,ra=J._featureFilter.needGeometry,$n=No(Ei,ra);if(J._featureFilter.filter(Yr,$n,U)){ra||($n.geometry=da(Ei));var Ba=void 0;if(st){var _a=J.getValueAndResolveTokens("text-field",$n,U,Lr),Pa=Vl.factory(_a);yQe(Pa)&&(this.hasRTLText=!0),(!this.hasRTLText||so()==="unavailable"||this.hasRTLText&&_s.isParsed())&&(Ba=ni(Pa,J,$n))}var qo=void 0;if(mt){var Na=J.getValueAndResolveTokens("icon-image",$n,U,Lr);Na instanceof Js?qo=Na:qo=Js.fromString(Na)}if(!(!Ba&&!qo)){var ja=this.sortFeaturesByKey?Xt.evaluate($n,{},U):void 0,us={id:Vi,text:Ba,icon:qo,index:en,sourceLayerIndex:An,geometry:$n.geometry,properties:Ei.properties,type:gQe[Ei.type],sortKey:ja};if(this.features.push(us),qo&&(ur[qo.name]=!0),Ba){var zo=fe.evaluate($n,{},U).join(","),rl=ne.get("text-rotation-alignment")==="map"&&ne.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(uv.vertical)>=0;for(var su=0,il=Ba.sections;su<il.length;su+=1){var nl=il[su];if(nl.image)ur[nl.image.name]=!0;else{var Ws=zt(Ba.toString()),Au=nl.fontStack||zo,Ou=nr[Au]=nr[Au]||{};this.calculateGlyphDependencies(nl.text,Ou,rl,this.allowVerticalPlacement,Ws)}}}}}}ne.get("symbol-placement")==="line"&&(this.features=Di(this.features)),this.sortFeaturesByKey&&this.features.sort(function(nf,bf){return nf.sortKey-bf.sortKey})}},ou.prototype.update=function(y,I,U){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(y,I,this.layers,U),this.icon.programConfigurations.updatePaintArrays(y,I,this.layers,U))},ou.prototype.isEmpty=function(){return this.symbolInstances.length===0&&!this.hasRTLText},ou.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},ou.prototype.upload=function(y){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(y),this.iconCollisionBox.upload(y)),this.text.upload(y,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(y,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},ou.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},ou.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},ou.prototype.addToLineVertexArray=function(y,I){var U=this.lineVertexArray.length;if(y.segment!==void 0){for(var J=y.dist(I[y.segment+1]),ne=y.dist(I[y.segment]),fe={},Fe=y.segment+1;Fe<I.length;Fe++)fe[Fe]={x:I[Fe].x,y:I[Fe].y,tileUnitDistanceFromAnchor:J},Fe<I.length-1&&(J+=I[Fe+1].dist(I[Fe]));for(var Qe=y.segment||0;Qe>=0;Qe--)fe[Qe]={x:I[Qe].x,y:I[Qe].y,tileUnitDistanceFromAnchor:ne},Qe>0&&(ne+=I[Qe-1].dist(I[Qe]));for(var st=0;st<I.length;st++){var mt=fe[st];this.lineVertexArray.emplaceBack(mt.x,mt.y,mt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:U,lineLength:this.lineVertexArray.length-U}},ou.prototype.addSymbols=function(y,I,U,J,ne,fe,Fe,Qe,st,mt,Xt,ur){for(var nr=y.indexArray,Lr=y.layoutVertexArray,Yr=y.segments.prepareSegment(4*I.length,Lr,nr,this.canOverlap?fe.sortKey:void 0),_i=this.glyphOffsetArray.length,si=Yr.vertexLength,Hi=this.allowVerticalPlacement&&Fe===uv.vertical?Math.PI/2:0,Ei=fe.text&&fe.text.sections,Vi=0;Vi<I.length;Vi++){var en=I[Vi],An=en.tl,ra=en.tr,$n=en.bl,Ba=en.br,_a=en.tex,Pa=en.pixelOffsetTL,qo=en.pixelOffsetBR,Na=en.minFontScaleX,ja=en.minFontScaleY,us=en.glyphOffset,zo=en.isSDF,rl=en.sectionIndex,su=Yr.vertexLength,il=us[1];ZC(Lr,Qe.x,Qe.y,An.x,il+An.y,_a.x,_a.y,U,zo,Pa.x,Pa.y,Na,ja),ZC(Lr,Qe.x,Qe.y,ra.x,il+ra.y,_a.x+_a.w,_a.y,U,zo,qo.x,Pa.y,Na,ja),ZC(Lr,Qe.x,Qe.y,$n.x,il+$n.y,_a.x,_a.y+_a.h,U,zo,Pa.x,qo.y,Na,ja),ZC(Lr,Qe.x,Qe.y,Ba.x,il+Ba.y,_a.x+_a.w,_a.y+_a.h,U,zo,qo.x,qo.y,Na,ja),oq(y.dynamicLayoutVertexArray,Qe,Hi),nr.emplaceBack(su,su+1,su+2),nr.emplaceBack(su+1,su+2,su+3),Yr.vertexLength+=4,Yr.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(us[0]),(Vi===I.length-1||rl!==I[Vi+1].sectionIndex)&&y.programConfigurations.populatePaintArrays(Lr.length,fe,fe.index,{},ur,Ei&&Ei[rl])}y.placedSymbolArray.emplaceBack(Qe.x,Qe.y,_i,this.glyphOffsetArray.length-_i,si,st,mt,Qe.segment,U?U[0]:0,U?U[1]:0,J[0],J[1],Fe,0,!1,0,Xt)},ou.prototype._addCollisionDebugVertex=function(y,I,U,J,ne,fe){return I.emplaceBack(0,0),y.emplaceBack(U.x,U.y,J,ne,Math.round(fe.x),Math.round(fe.y))},ou.prototype.addCollisionDebugVertices=function(y,I,U,J,ne,fe,Fe){var Qe=ne.segments.prepareSegment(4,ne.layoutVertexArray,ne.indexArray),st=Qe.vertexLength,mt=ne.layoutVertexArray,Xt=ne.collisionVertexArray,ur=Fe.anchorX,nr=Fe.anchorY;this._addCollisionDebugVertex(mt,Xt,fe,ur,nr,new u(y,I)),this._addCollisionDebugVertex(mt,Xt,fe,ur,nr,new u(U,I)),this._addCollisionDebugVertex(mt,Xt,fe,ur,nr,new u(U,J)),this._addCollisionDebugVertex(mt,Xt,fe,ur,nr,new u(y,J)),Qe.vertexLength+=4;var Lr=ne.indexArray;Lr.emplaceBack(st,st+1),Lr.emplaceBack(st+1,st+2),Lr.emplaceBack(st+2,st+3),Lr.emplaceBack(st+3,st),Qe.primitiveLength+=4},ou.prototype.addDebugCollisionBoxes=function(y,I,U,J){for(var ne=y;ne<I;ne++){var fe=this.collisionBoxArray.get(ne),Fe=fe.x1,Qe=fe.y1,st=fe.x2,mt=fe.y2;this.addCollisionDebugVertices(Fe,Qe,st,mt,J?this.textCollisionBox:this.iconCollisionBox,fe.anchorPoint,U)}},ou.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new TS(aa,at.members,Po),this.iconCollisionBox=new TS(aa,at.members,Po);for(var y=0;y<this.symbolInstances.length;y++){var I=this.symbolInstances.get(y);this.addDebugCollisionBoxes(I.textBoxStartIndex,I.textBoxEndIndex,I,!0),this.addDebugCollisionBoxes(I.verticalTextBoxStartIndex,I.verticalTextBoxEndIndex,I,!0),this.addDebugCollisionBoxes(I.iconBoxStartIndex,I.iconBoxEndIndex,I,!1),this.addDebugCollisionBoxes(I.verticalIconBoxStartIndex,I.verticalIconBoxEndIndex,I,!1)}},ou.prototype._deserializeCollisionBoxesForSymbol=function(y,I,U,J,ne,fe,Fe,Qe,st){for(var mt={},Xt=I;Xt<U;Xt++){var ur=y.get(Xt);mt.textBox={x1:ur.x1,y1:ur.y1,x2:ur.x2,y2:ur.y2,anchorPointX:ur.anchorPointX,anchorPointY:ur.anchorPointY},mt.textFeatureIndex=ur.featureIndex;break}for(var nr=J;nr<ne;nr++){var Lr=y.get(nr);mt.verticalTextBox={x1:Lr.x1,y1:Lr.y1,x2:Lr.x2,y2:Lr.y2,anchorPointX:Lr.anchorPointX,anchorPointY:Lr.anchorPointY},mt.verticalTextFeatureIndex=Lr.featureIndex;break}for(var Yr=fe;Yr<Fe;Yr++){var _i=y.get(Yr);mt.iconBox={x1:_i.x1,y1:_i.y1,x2:_i.x2,y2:_i.y2,anchorPointX:_i.anchorPointX,anchorPointY:_i.anchorPointY},mt.iconFeatureIndex=_i.featureIndex;break}for(var si=Qe;si<st;si++){var Hi=y.get(si);mt.verticalIconBox={x1:Hi.x1,y1:Hi.y1,x2:Hi.x2,y2:Hi.y2,anchorPointX:Hi.anchorPointX,anchorPointY:Hi.anchorPointY},mt.verticalIconFeatureIndex=Hi.featureIndex;break}return mt},ou.prototype.deserializeCollisionBoxes=function(y){this.collisionArrays=[];for(var I=0;I<this.symbolInstances.length;I++){var U=this.symbolInstances.get(I);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(y,U.textBoxStartIndex,U.textBoxEndIndex,U.verticalTextBoxStartIndex,U.verticalTextBoxEndIndex,U.iconBoxStartIndex,U.iconBoxEndIndex,U.verticalIconBoxStartIndex,U.verticalIconBoxEndIndex))}},ou.prototype.hasTextData=function(){return this.text.segments.get().length>0},ou.prototype.hasIconData=function(){return this.icon.segments.get().length>0},ou.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},ou.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},ou.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},ou.prototype.addIndicesForPlacedSymbol=function(y,I){for(var U=y.placedSymbolArray.get(I),J=U.vertexStartIndex+U.numGlyphs*4,ne=U.vertexStartIndex;ne<J;ne+=4)y.indexArray.emplaceBack(ne,ne+1,ne+2),y.indexArray.emplaceBack(ne+1,ne+2,ne+3)},ou.prototype.getSortedSymbolIndexes=function(y){if(this.sortedAngle===y&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var I=Math.sin(y),U=Math.cos(y),J=[],ne=[],fe=[],Fe=0;Fe<this.symbolInstances.length;++Fe){fe.push(Fe);var Qe=this.symbolInstances.get(Fe);J.push(Math.round(I*Qe.anchorX+U*Qe.anchorY)|0),ne.push(Qe.featureIndex)}return fe.sort(function(st,mt){return J[st]-J[mt]||ne[mt]-ne[st]}),fe},ou.prototype.addToSortKeyRanges=function(y,I){var U=this.sortKeyRanges[this.sortKeyRanges.length-1];U&&U.sortKey===I?U.symbolInstanceEnd=y+1:this.sortKeyRanges.push({sortKey:I,symbolInstanceStart:y,symbolInstanceEnd:y+1})},ou.prototype.sortFeatures=function(y){var I=this;if(this.sortFeaturesByY&&this.sortedAngle!==y&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(y),this.sortedAngle=y,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var U=0,J=this.symbolInstanceIndexes;U<J.length;U+=1){var ne=J[U],fe=this.symbolInstances.get(ne);this.featureSortOrder.push(fe.featureIndex),[fe.rightJustifiedTextSymbolIndex,fe.centerJustifiedTextSymbolIndex,fe.leftJustifiedTextSymbolIndex].forEach(function(Fe,Qe,st){Fe>=0&&st.indexOf(Fe)===Qe&&I.addIndicesForPlacedSymbol(I.text,Fe)}),fe.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,fe.verticalPlacedTextSymbolIndex),fe.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,fe.placedIconSymbolIndex),fe.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,fe.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},Z("SymbolBucket",ou,{omit:["layers","collisionBoxArray","features","compareText"]}),ou.MAX_GLYPHS=65535,ou.addDynamicAttributes=oq;function _Qe(m,y){return y.replace(/{([^{}]+)}/g,function(I,U){return U in m?String(m[U]):""})}var xQe=new Oi({"symbol-placement":new At(on.layout_symbol["symbol-placement"]),"symbol-spacing":new At(on.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new At(on.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Er(on.layout_symbol["symbol-sort-key"]),"symbol-z-order":new At(on.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new At(on.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new At(on.layout_symbol["icon-ignore-placement"]),"icon-optional":new At(on.layout_symbol["icon-optional"]),"icon-rotation-alignment":new At(on.layout_symbol["icon-rotation-alignment"]),"icon-size":new Er(on.layout_symbol["icon-size"]),"icon-text-fit":new At(on.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new At(on.layout_symbol["icon-text-fit-padding"]),"icon-image":new Er(on.layout_symbol["icon-image"]),"icon-rotate":new Er(on.layout_symbol["icon-rotate"]),"icon-padding":new At(on.layout_symbol["icon-padding"]),"icon-keep-upright":new At(on.layout_symbol["icon-keep-upright"]),"icon-offset":new Er(on.layout_symbol["icon-offset"]),"icon-anchor":new Er(on.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new At(on.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new At(on.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new At(on.layout_symbol["text-rotation-alignment"]),"text-field":new Er(on.layout_symbol["text-field"]),"text-font":new Er(on.layout_symbol["text-font"]),"text-size":new Er(on.layout_symbol["text-size"]),"text-max-width":new Er(on.layout_symbol["text-max-width"]),"text-line-height":new At(on.layout_symbol["text-line-height"]),"text-letter-spacing":new Er(on.layout_symbol["text-letter-spacing"]),"text-justify":new Er(on.layout_symbol["text-justify"]),"text-radial-offset":new Er(on.layout_symbol["text-radial-offset"]),"text-variable-anchor":new At(on.layout_symbol["text-variable-anchor"]),"text-anchor":new Er(on.layout_symbol["text-anchor"]),"text-max-angle":new At(on.layout_symbol["text-max-angle"]),"text-writing-mode":new At(on.layout_symbol["text-writing-mode"]),"text-rotate":new Er(on.layout_symbol["text-rotate"]),"text-padding":new At(on.layout_symbol["text-padding"]),"text-keep-upright":new At(on.layout_symbol["text-keep-upright"]),"text-transform":new Er(on.layout_symbol["text-transform"]),"text-offset":new Er(on.layout_symbol["text-offset"]),"text-allow-overlap":new At(on.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new At(on.layout_symbol["text-ignore-placement"]),"text-optional":new At(on.layout_symbol["text-optional"])}),bQe=new Oi({"icon-opacity":new Er(on.paint_symbol["icon-opacity"]),"icon-color":new Er(on.paint_symbol["icon-color"]),"icon-halo-color":new Er(on.paint_symbol["icon-halo-color"]),"icon-halo-width":new Er(on.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Er(on.paint_symbol["icon-halo-blur"]),"icon-translate":new At(on.paint_symbol["icon-translate"]),"icon-translate-anchor":new At(on.paint_symbol["icon-translate-anchor"]),"text-opacity":new Er(on.paint_symbol["text-opacity"]),"text-color":new Er(on.paint_symbol["text-color"],{runtimeType:Tl,getOverride:function(m){return m.textColor},hasOverride:function(m){return!!m.textColor}}),"text-halo-color":new Er(on.paint_symbol["text-halo-color"]),"text-halo-width":new Er(on.paint_symbol["text-halo-width"]),"text-halo-blur":new Er(on.paint_symbol["text-halo-blur"]),"text-translate":new At(on.paint_symbol["text-translate"]),"text-translate-anchor":new At(on.paint_symbol["text-translate-anchor"])}),sq={paint:bQe,layout:xQe},Yw=function(y){this.type=y.property.overrides?y.property.overrides.runtimeType:Ec,this.defaultValue=y};Yw.prototype.evaluate=function(y){if(y.formattedSection){var I=this.defaultValue.property.overrides;if(I&&I.hasOverride(y.formattedSection))return I.getOverride(y.formattedSection)}return y.feature&&y.featureState?this.defaultValue.evaluate(y.feature,y.featureState):this.defaultValue.property.specification.default},Yw.prototype.eachChild=function(y){if(!this.defaultValue.isConstant()){var I=this.defaultValue.value;y(I._styleExpression.expression)}},Yw.prototype.outputDefined=function(){return!1},Yw.prototype.serialize=function(){return null},Z("FormatSectionOverride",Yw,{omit:["defaultValue"]});var wQe=function(m){function y(I){m.call(this,I,sq)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.recalculate=function(U,J){if(m.prototype.recalculate.call(this,U,J),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var ne=this.layout.get("text-writing-mode");if(ne){for(var fe=[],Fe=0,Qe=ne;Fe<Qe.length;Fe+=1){var st=Qe[Fe];fe.indexOf(st)<0&&fe.push(st)}this.layout._values["text-writing-mode"]=fe}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()},y.prototype.getValueAndResolveTokens=function(U,J,ne,fe){var Fe=this.layout.get(U).evaluate(J,{},ne,fe),Qe=this._unevaluatedLayout._values[U];return!Qe.isDataDriven()&&!Da(Qe.value)&&Fe?_Qe(J.properties,Fe):Fe},y.prototype.createBucket=function(U){return new ou(U)},y.prototype.queryRadius=function(){return 0},y.prototype.queryIntersectsFeature=function(){return!1},y.prototype._setPaintOverrides=function(){for(var U=0,J=sq.paint.overridableProperties;U<J.length;U+=1){var ne=J[U];if(y.hasPaintOverride(this.layout,ne)){var fe=this.paint.get(ne),Fe=new Yw(fe),Qe=new Dc(Fe,fe.property.specification),st=null;fe.value.kind==="constant"||fe.value.kind==="source"?st=new Jc("source",Qe):st=new yc("composite",Qe,fe.value.zoomStops,fe.value._interpolationType),this.paint._values[ne]=new dl(fe.property,st,fe.parameters)}}},y.prototype._handleOverridablePaintPropertyUpdate=function(U,J,ne){return!this.layout||J.isDataDriven()||ne.isDataDriven()?!1:y.hasPaintOverride(this.layout,U)},y.hasPaintOverride=function(U,J){var ne=U.get("text-field"),fe=sq.paint.properties[J],Fe=!1,Qe=function(Xt){for(var ur=0,nr=Xt;ur<nr.length;ur+=1){var Lr=nr[ur];if(fe.overrides&&fe.overrides.hasOverride(Lr)){Fe=!0;return}}};if(ne.value.kind==="constant"&&ne.value.value instanceof Vl)Qe(ne.value.value.sections);else if(ne.value.kind==="source"){var st=function(Xt){if(!Fe)if(Xt instanceof hs&&ws(Xt.value)===Al){var ur=Xt.value;Qe(ur.sections)}else Xt instanceof ec?Qe(Xt.sections):Xt.eachChild(st)},mt=ne.value;mt._styleExpression&&st(mt._styleExpression.expression)}return Fe},y}(cn),TQe=new Oi({"background-color":new At(on.paint_background["background-color"]),"background-pattern":new wi(on.paint_background["background-pattern"]),"background-opacity":new At(on.paint_background["background-opacity"])}),AQe={paint:TQe},SQe=function(m){function y(I){m.call(this,I,AQe)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(cn),MQe=new Oi({"raster-opacity":new At(on.paint_raster["raster-opacity"]),"raster-hue-rotate":new At(on.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new At(on.paint_raster["raster-brightness-min"]),"raster-brightness-max":new At(on.paint_raster["raster-brightness-max"]),"raster-saturation":new At(on.paint_raster["raster-saturation"]),"raster-contrast":new At(on.paint_raster["raster-contrast"]),"raster-resampling":new At(on.paint_raster["raster-resampling"]),"raster-fade-duration":new At(on.paint_raster["raster-fade-duration"])}),EQe={paint:MQe},kQe=function(m){function y(I){m.call(this,I,EQe)}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y}(cn);function CQe(m){var y=[],I=m.id;return I===void 0&&y.push({message:"layers."+I+': missing required property "id"'}),m.render===void 0&&y.push({message:"layers."+I+': missing required method "render"'}),m.renderingMode&&m.renderingMode!=="2d"&&m.renderingMode!=="3d"&&y.push({message:"layers."+I+': property "renderingMode" must be either "2d" or "3d"'}),y}var LQe=function(m){function y(I){m.call(this,I,{}),this.implementation=I}return m&&(y.__proto__=m),y.prototype=Object.create(m&&m.prototype),y.prototype.constructor=y,y.prototype.is3D=function(){return this.implementation.renderingMode==="3d"},y.prototype.hasOffscreenPass=function(){return this.implementation.prerender!==void 0},y.prototype.recalculate=function(){},y.prototype.updateTransitions=function(){},y.prototype.hasTransition=function(){},y.prototype.serialize=function(){},y.prototype.onAdd=function(U){this.implementation.onAdd&&this.implementation.onAdd(U,U.painter.context.gl)},y.prototype.onRemove=function(U){this.implementation.onRemove&&this.implementation.onRemove(U,U.painter.context.gl)},y}(cn),PQe={circle:O9,heatmap:Lw,hillshade:dC,fill:Qx,"fill-extrusion":fm,line:S,symbol:wQe,background:SQe,raster:kQe};function IQe(m){return m.type==="custom"?new LQe(m):new PQe[m.type](m)}var IQ=f.HTMLImageElement,RQ=f.HTMLCanvasElement,DQ=f.HTMLVideoElement,zQ=f.ImageData,XC=f.ImageBitmap,ib=function(y,I,U,J){this.context=y,this.format=U,this.texture=y.gl.createTexture(),this.update(I,J)};ib.prototype.update=function(y,I,U){var J=y.width,ne=y.height,fe=(!this.size||this.size[0]!==J||this.size[1]!==ne)&&!U,Fe=this,Qe=Fe.context,st=Qe.gl;if(this.useMipmap=!!(I&&I.useMipmap),st.bindTexture(st.TEXTURE_2D,this.texture),Qe.pixelStoreUnpackFlipY.set(!1),Qe.pixelStoreUnpack.set(1),Qe.pixelStoreUnpackPremultiplyAlpha.set(this.format===st.RGBA&&(!I||I.premultiply!==!1)),fe)this.size=[J,ne],y instanceof IQ||y instanceof RQ||y instanceof DQ||y instanceof zQ||XC&&y instanceof XC?st.texImage2D(st.TEXTURE_2D,0,this.format,this.format,st.UNSIGNED_BYTE,y):st.texImage2D(st.TEXTURE_2D,0,this.format,J,ne,0,this.format,st.UNSIGNED_BYTE,y.data);else{var mt=U||{x:0,y:0},Xt=mt.x,ur=mt.y;y instanceof IQ||y instanceof RQ||y instanceof DQ||y instanceof zQ||XC&&y instanceof XC?st.texSubImage2D(st.TEXTURE_2D,0,Xt,ur,st.RGBA,st.UNSIGNED_BYTE,y):st.texSubImage2D(st.TEXTURE_2D,0,Xt,ur,J,ne,st.RGBA,st.UNSIGNED_BYTE,y.data)}this.useMipmap&&this.isSizePowerOfTwo()&&st.generateMipmap(st.TEXTURE_2D)},ib.prototype.bind=function(y,I,U){var J=this,ne=J.context,fe=ne.gl;fe.bindTexture(fe.TEXTURE_2D,this.texture),U===fe.LINEAR_MIPMAP_NEAREST&&!this.isSizePowerOfTwo()&&(U=fe.LINEAR),y!==this.filter&&(fe.texParameteri(fe.TEXTURE_2D,fe.TEXTURE_MAG_FILTER,y),fe.texParameteri(fe.TEXTURE_2D,fe.TEXTURE_MIN_FILTER,U||y),this.filter=y),I!==this.wrap&&(fe.texParameteri(fe.TEXTURE_2D,fe.TEXTURE_WRAP_S,I),fe.texParameteri(fe.TEXTURE_2D,fe.TEXTURE_WRAP_T,I),this.wrap=I)},ib.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1===0},ib.prototype.destroy=function(){var y=this.context,I=y.gl;I.deleteTexture(this.texture),this.texture=null};var lq=function(y){var I=this;this._callback=y,this._triggered=!1,typeof MessageChannel!="undefined"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){I._triggered=!1,I._callback()})};lq.prototype.trigger=function(){var y=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(function(){y._triggered=!1,y._callback()},0))},lq.prototype.remove=function(){delete this._channel,this._callback=function(){}};var Kw=function(y,I,U){this.target=y,this.parent=I,this.mapId=U,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},q(["receive","process"],this),this.invoker=new lq(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=ke()?y:f};Kw.prototype.send=function(y,I,U,J,ne){var fe=this;ne===void 0&&(ne=!1);var Fe=Math.round(Math.random()*1e18).toString(36).substring(0,10);U&&(this.callbacks[Fe]=U);var Qe=Te(this.globalScope)?void 0:[];return this.target.postMessage({id:Fe,type:y,hasCallback:!!U,targetMapId:J,mustQueue:ne,sourceMapId:this.mapId,data:Ue(I,Qe)},Qe),{cancel:function(){U&&delete fe.callbacks[Fe],fe.target.postMessage({id:Fe,type:"<cancel>",targetMapId:J,sourceMapId:fe.mapId})}}},Kw.prototype.receive=function(y){var I=y.data,U=I.id;if(U&&!(I.targetMapId&&this.mapId!==I.targetMapId))if(I.type==="<cancel>"){delete this.tasks[U];var J=this.cancelCallbacks[U];delete this.cancelCallbacks[U],J&&J()}else ke()||I.mustQueue?(this.tasks[U]=I,this.taskQueue.push(U),this.invoker.trigger()):this.processTask(U,I)},Kw.prototype.process=function(){if(this.taskQueue.length){var y=this.taskQueue.shift(),I=this.tasks[y];delete this.tasks[y],this.taskQueue.length&&this.invoker.trigger(),I&&this.processTask(y,I)}},Kw.prototype.processTask=function(y,I){var U=this;if(I.type==="<response>"){var J=this.callbacks[y];delete this.callbacks[y],J&&(I.error?J(We(I.error)):J(null,We(I.data)))}else{var ne=!1,fe=Te(this.globalScope)?void 0:[],Fe=I.hasCallback?function(ur,nr){ne=!0,delete U.cancelCallbacks[y],U.target.postMessage({id:y,type:"<response>",sourceMapId:U.mapId,error:ur?Ue(ur):null,data:Ue(nr,fe)},fe)}:function(ur){ne=!0},Qe=null,st=We(I.data);if(this.parent[I.type])Qe=this.parent[I.type](I.sourceMapId,st,Fe);else if(this.parent.getWorkerSource){var mt=I.type.split("."),Xt=this.parent.getWorkerSource(I.sourceMapId,mt[0],st.source);Qe=Xt[mt[1]](st,Fe)}else Fe(new Error("Could not find function "+I.type));!ne&&Qe&&Qe.cancel&&(this.cancelCallbacks[y]=Qe.cancel)}},Kw.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function RQe(m,y,I){y=Math.pow(2,I)-y-1;var U=FQ(m*256,y*256,I),J=FQ((m+1)*256,(y+1)*256,I);return U[0]+","+U[1]+","+J[0]+","+J[1]}function FQ(m,y,I){var U=2*Math.PI*6378137/256/Math.pow(2,I),J=m*U-2*Math.PI*6378137/2,ne=y*U-2*Math.PI*6378137/2;return[J,ne]}var jf=function(y,I){y&&(I?this.setSouthWest(y).setNorthEast(I):y.length===4?this.setSouthWest([y[0],y[1]]).setNorthEast([y[2],y[3]]):this.setSouthWest(y[0]).setNorthEast(y[1]))};jf.prototype.setNorthEast=function(y){return this._ne=y instanceof sc?new sc(y.lng,y.lat):sc.convert(y),this},jf.prototype.setSouthWest=function(y){return this._sw=y instanceof sc?new sc(y.lng,y.lat):sc.convert(y),this},jf.prototype.extend=function(y){var I=this._sw,U=this._ne,J,ne;if(y instanceof sc)J=y,ne=y;else if(y instanceof jf){if(J=y._sw,ne=y._ne,!J||!ne)return this}else{if(Array.isArray(y))if(y.length===4||y.every(Array.isArray)){var fe=y;return this.extend(jf.convert(fe))}else{var Fe=y;return this.extend(sc.convert(Fe))}return this}return!I&&!U?(this._sw=new sc(J.lng,J.lat),this._ne=new sc(ne.lng,ne.lat)):(I.lng=Math.min(J.lng,I.lng),I.lat=Math.min(J.lat,I.lat),U.lng=Math.max(ne.lng,U.lng),U.lat=Math.max(ne.lat,U.lat)),this},jf.prototype.getCenter=function(){return new sc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},jf.prototype.getSouthWest=function(){return this._sw},jf.prototype.getNorthEast=function(){return this._ne},jf.prototype.getNorthWest=function(){return new sc(this.getWest(),this.getNorth())},jf.prototype.getSouthEast=function(){return new sc(this.getEast(),this.getSouth())},jf.prototype.getWest=function(){return this._sw.lng},jf.prototype.getSouth=function(){return this._sw.lat},jf.prototype.getEast=function(){return this._ne.lng},jf.prototype.getNorth=function(){return this._ne.lat},jf.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},jf.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},jf.prototype.isEmpty=function(){return!(this._sw&&this._ne)},jf.prototype.contains=function(y){var I=sc.convert(y),U=I.lng,J=I.lat,ne=this._sw.lat<=J&&J<=this._ne.lat,fe=this._sw.lng<=U&&U<=this._ne.lng;return this._sw.lng>this._ne.lng&&(fe=this._sw.lng>=U&&U>=this._ne.lng),ne&&fe},jf.convert=function(y){return!y||y instanceof jf?y:new jf(y)};var qQ=63710088e-1,sc=function(y,I){if(isNaN(y)||isNaN(I))throw new Error("Invalid LngLat object: ("+y+", "+I+")");if(this.lng=+y,this.lat=+I,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};sc.prototype.wrap=function(){return new sc(E(this.lng,-180,180),this.lat)},sc.prototype.toArray=function(){return[this.lng,this.lat]},sc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},sc.prototype.distanceTo=function(y){var I=Math.PI/180,U=this.lat*I,J=y.lat*I,ne=Math.sin(U)*Math.sin(J)+Math.cos(U)*Math.cos(J)*Math.cos((y.lng-this.lng)*I),fe=qQ*Math.acos(Math.min(ne,1));return fe},sc.prototype.toBounds=function(y){y===void 0&&(y=0);var I=40075017,U=360*y/I,J=U/Math.cos(Math.PI/180*this.lat);return new jf(new sc(this.lng-J,this.lat-U),new sc(this.lng+J,this.lat+U))},sc.convert=function(y){if(y instanceof sc)return y;if(Array.isArray(y)&&(y.length===2||y.length===3))return new sc(Number(y[0]),Number(y[1]));if(!Array.isArray(y)&&typeof y=="object"&&y!==null)return new sc(Number("lng"in y?y.lng:y.lon),Number(y.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")};var OQ=2*Math.PI*qQ;function BQ(m){return OQ*Math.cos(m*Math.PI/180)}function NQ(m){return(180+m)/360}function UQ(m){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+m*Math.PI/360)))/360}function VQ(m,y){return m/BQ(y)}function DQe(m){return m*360-180}function uq(m){var y=180-m*360;return 360/Math.PI*Math.atan(Math.exp(y*Math.PI/180))-90}function zQe(m,y){return m*BQ(uq(y))}function FQe(m){return 1/Math.cos(m*Math.PI/180)}var nb=function(y,I,U){U===void 0&&(U=0),this.x=+y,this.y=+I,this.z=+U};nb.fromLngLat=function(y,I){I===void 0&&(I=0);var U=sc.convert(y);return new nb(NQ(U.lng),UQ(U.lat),VQ(I,U.lat))},nb.prototype.toLngLat=function(){return new sc(DQe(this.x),uq(this.y))},nb.prototype.toAltitude=function(){return zQe(this.z,this.y)},nb.prototype.meterInMercatorCoordinateUnits=function(){return 1/OQ*FQe(uq(this.y))};var ab=function(y,I,U){this.z=y,this.x=I,this.y=U,this.key=AS(0,y,y,I,U)};ab.prototype.equals=function(y){return this.z===y.z&&this.x===y.x&&this.y===y.y},ab.prototype.url=function(y,I){var U=RQe(this.x,this.y,this.z),J=qQe(this.z,this.x,this.y);return y[(this.x+this.y)%y.length].replace("{prefix}",(this.x%16).toString(16)+(this.y%16).toString(16)).replace("{z}",String(this.z)).replace("{x}",String(this.x)).replace("{y}",String(I==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",J).replace("{bbox-epsg-3857}",U)},ab.prototype.getTilePoint=function(y){var I=Math.pow(2,this.z);return new u((y.x*I-this.x)*rn,(y.y*I-this.y)*rn)},ab.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var HQ=function(y,I){this.wrap=y,this.canonical=I,this.key=AS(y,I.z,I.z,I.x,I.y)},Wf=function(y,I,U,J,ne){this.overscaledZ=y,this.wrap=I,this.canonical=new ab(U,+J,+ne),this.key=AS(I,y,U,J,ne)};Wf.prototype.equals=function(y){return this.overscaledZ===y.overscaledZ&&this.wrap===y.wrap&&this.canonical.equals(y.canonical)},Wf.prototype.scaledTo=function(y){var I=this.canonical.z-y;return y>this.canonical.z?new Wf(y,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Wf(y,this.wrap,y,this.canonical.x>>I,this.canonical.y>>I)},Wf.prototype.calculateScaledKey=function(y,I){var U=this.canonical.z-y;return y>this.canonical.z?AS(this.wrap*+I,y,this.canonical.z,this.canonical.x,this.canonical.y):AS(this.wrap*+I,y,y,this.canonical.x>>U,this.canonical.y>>U)},Wf.prototype.isChildOf=function(y){if(y.wrap!==this.wrap)return!1;var I=this.canonical.z-y.canonical.z;return y.overscaledZ===0||y.overscaledZ<this.overscaledZ&&y.canonical.x===this.canonical.x>>I&&y.canonical.y===this.canonical.y>>I},Wf.prototype.children=function(y){if(this.overscaledZ>=y)return[new Wf(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var I=this.canonical.z+1,U=this.canonical.x*2,J=this.canonical.y*2;return[new Wf(I,this.wrap,I,U,J),new Wf(I,this.wrap,I,U+1,J),new Wf(I,this.wrap,I,U,J+1),new Wf(I,this.wrap,I,U+1,J+1)]},Wf.prototype.isLessThan=function(y){return this.wrap<y.wrap?!0:this.wrap>y.wrap?!1:this.overscaledZ<y.overscaledZ?!0:this.overscaledZ>y.overscaledZ?!1:this.canonical.x<y.canonical.x?!0:this.canonical.x>y.canonical.x?!1:this.canonical.y<y.canonical.y},Wf.prototype.wrapped=function(){return new Wf(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},Wf.prototype.unwrapTo=function(y){return new Wf(this.overscaledZ,y,this.canonical.z,this.canonical.x,this.canonical.y)},Wf.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},Wf.prototype.toUnwrapped=function(){return new HQ(this.wrap,this.canonical)},Wf.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y},Wf.prototype.getTilePoint=function(y){return this.canonical.getTilePoint(new nb(y.x-this.wrap,y.y))};function AS(m,y,I,U,J){m*=2,m<0&&(m=m*-1-1);var ne=1<<I;return(ne*ne*m+ne*J+U).toString(36)+I.toString(36)+y.toString(36)}function qQe(m,y,I){for(var U="",J,ne=m;ne>0;ne--)J=1<<ne-1,U+=(y&J?1:0)+(I&J?2:0);return U}Z("CanonicalTileID",ab),Z("OverscaledTileID",Wf,{omit:["posMatrix"]});var dy=function(y,I,U){if(this.uid=y,I.height!==I.width)throw new RangeError("DEM tiles must be square");if(U&&U!=="mapbox"&&U!=="terrarium")return re('"'+U+'" is not a valid encoding type. Valid types include "mapbox" and "terrarium".');this.stride=I.height;var J=this.dim=I.height-2;this.data=new Uint32Array(I.data.buffer),this.encoding=U||"mapbox";for(var ne=0;ne<J;ne++)this.data[this._idx(-1,ne)]=this.data[this._idx(0,ne)],this.data[this._idx(J,ne)]=this.data[this._idx(J-1,ne)],this.data[this._idx(ne,-1)]=this.data[this._idx(ne,0)],this.data[this._idx(ne,J)]=this.data[this._idx(ne,J-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(J,-1)]=this.data[this._idx(J-1,0)],this.data[this._idx(-1,J)]=this.data[this._idx(0,J-1)],this.data[this._idx(J,J)]=this.data[this._idx(J-1,J-1)]};dy.prototype.get=function(y,I){var U=new Uint8Array(this.data.buffer),J=this._idx(y,I)*4,ne=this.encoding==="terrarium"?this._unpackTerrarium:this._unpackMapbox;return ne(U[J],U[J+1],U[J+2])},dy.prototype.getUnpackVector=function(){return this.encoding==="terrarium"?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},dy.prototype._idx=function(y,I){if(y<-1||y>=this.dim+1||I<-1||I>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(I+1)*this.stride+(y+1)},dy.prototype._unpackMapbox=function(y,I,U){return(y*256*256+I*256+U)/10-1e4},dy.prototype._unpackTerrarium=function(y,I,U){return y*256+I+U/256-32768},dy.prototype.getPixels=function(){return new lh({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},dy.prototype.backfillBorder=function(y,I,U){if(this.dim!==y.dim)throw new Error("dem dimension mismatch");var J=I*this.dim,ne=I*this.dim+this.dim,fe=U*this.dim,Fe=U*this.dim+this.dim;switch(I){case-1:J=ne-1;break;case 1:ne=J+1;break}switch(U){case-1:fe=Fe-1;break;case 1:Fe=fe+1;break}for(var Qe=-I*this.dim,st=-U*this.dim,mt=fe;mt<Fe;mt++)for(var Xt=J;Xt<ne;Xt++)this.data[this._idx(Xt,mt)]=y.data[this._idx(Xt+Qe,mt+st)]},Z("DEMData",dy);function OQe(m,y){var I={};if(!y)return I;for(var U=function(){var fe=ne[J],Fe=fe.layerIds.map(function(Xt){return y.getLayer(Xt)}).filter(Boolean);if(Fe.length!==0){fe.layers=Fe,fe.stateDependentLayerIds&&(fe.stateDependentLayers=fe.stateDependentLayerIds.map(function(Xt){return Fe.filter(function(ur){return ur.id===Xt})[0]}));for(var Qe=0,st=Fe;Qe<st.length;Qe+=1){var mt=st[Qe];I[mt.id]=fe}}},J=0,ne=m;J<ne.length;J+=1)U();return I}var YC=function(y){this._stringToNumber={},this._numberToString=[];for(var I=0;I<y.length;I++){var U=y[I];this._stringToNumber[U]=I,this._numberToString[I]=U}};YC.prototype.encode=function(y){return this._stringToNumber[y]},YC.prototype.decode=function(y){return this._numberToString[y]};var KC=function(y,I,U,J,ne){this.type="Feature",this._vectorTileFeature=y,y._z=I,y._x=U,y._y=J,this.properties=y.properties,this.id=ne},cq={geometry:{configurable:!0}};cq.geometry.get=function(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},cq.geometry.set=function(m){this._geometry=m},KC.prototype.toJSON=function(){var y={geometry:this.geometry};for(var I in this)I==="_geometry"||I==="_vectorTileFeature"||(y[I]=this[I]);return y},Object.defineProperties(KC.prototype,cq);var Jw=function(){this.state={},this.stateChanges={},this.deletedStates={}};Jw.prototype.updateState=function(y,I,U){var J=String(I);if(this.stateChanges[y]=this.stateChanges[y]||{},this.stateChanges[y][J]=this.stateChanges[y][J]||{},_(this.stateChanges[y][J],U),this.deletedStates[y]===null){this.deletedStates[y]={};for(var ne in this.state[y])ne!==J&&(this.deletedStates[y][ne]=null)}else{var fe=this.deletedStates[y]&&this.deletedStates[y][J]===null;if(fe){this.deletedStates[y][J]={};for(var Fe in this.state[y][J])U[Fe]||(this.deletedStates[y][J][Fe]=null)}else for(var Qe in U){var st=this.deletedStates[y]&&this.deletedStates[y][J]&&this.deletedStates[y][J][Qe]===null;st&&delete this.deletedStates[y][J][Qe]}}},Jw.prototype.removeFeatureState=function(y,I,U){var J=this.deletedStates[y]===null;if(!J){var ne=String(I);if(this.deletedStates[y]=this.deletedStates[y]||{},U&&I!==void 0)this.deletedStates[y][ne]!==null&&(this.deletedStates[y][ne]=this.deletedStates[y][ne]||{},this.deletedStates[y][ne][U]=null);else if(I!==void 0){var fe=this.stateChanges[y]&&this.stateChanges[y][ne];if(fe){this.deletedStates[y][ne]={};for(U in this.stateChanges[y][ne])this.deletedStates[y][ne][U]=null}else this.deletedStates[y][ne]=null}else this.deletedStates[y]=null}},Jw.prototype.getState=function(y,I){var U=String(I),J=this.state[y]||{},ne=this.stateChanges[y]||{},fe=_({},J[U],ne[U]);if(this.deletedStates[y]===null)return{};if(this.deletedStates[y]){var Fe=this.deletedStates[y][I];if(Fe===null)return{};for(var Qe in Fe)delete fe[Qe]}return fe},Jw.prototype.initializeTileState=function(y,I){y.setFeatureState(this.state,I)},Jw.prototype.coalesceChanges=function(y,I){var U={};for(var J in this.stateChanges){this.state[J]=this.state[J]||{};var ne={};for(var fe in this.stateChanges[J])this.state[J][fe]||(this.state[J][fe]={}),_(this.state[J][fe],this.stateChanges[J][fe]),ne[fe]=this.state[J][fe];U[J]=ne}for(var Fe in this.deletedStates){this.state[Fe]=this.state[Fe]||{};var Qe={};if(this.deletedStates[Fe]===null)for(var st in this.state[Fe])Qe[st]={},this.state[Fe][st]={};else for(var mt in this.deletedStates[Fe]){var Xt=this.deletedStates[Fe][mt]===null;if(Xt)this.state[Fe][mt]={};else for(var ur=0,nr=Object.keys(this.deletedStates[Fe][mt]);ur<nr.length;ur+=1){var Lr=nr[ur];delete this.state[Fe][mt][Lr]}Qe[mt]=this.state[Fe][mt]}U[Fe]=U[Fe]||{},_(U[Fe],Qe)}if(this.stateChanges={},this.deletedStates={},Object.keys(U).length!==0)for(var Yr in y){var _i=y[Yr];_i.setFeatureState(U,I)}};var vy=function(y,I){this.tileID=y,this.x=y.canonical.x,this.y=y.canonical.y,this.z=y.canonical.z,this.grid=new cu(rn,16,0),this.grid3D=new cu(rn,16,0),this.featureIndexArray=new ef,this.promoteId=I};vy.prototype.insert=function(y,I,U,J,ne,fe){var Fe=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(U,J,ne);for(var Qe=fe?this.grid3D:this.grid,st=0;st<I.length;st++){for(var mt=I[st],Xt=[1/0,1/0,-1/0,-1/0],ur=0;ur<mt.length;ur++){var nr=mt[ur];Xt[0]=Math.min(Xt[0],nr.x),Xt[1]=Math.min(Xt[1],nr.y),Xt[2]=Math.max(Xt[2],nr.x),Xt[3]=Math.max(Xt[3],nr.y)}Xt[0]<rn&&Xt[1]<rn&&Xt[2]>=0&&Xt[3]>=0&&Qe.insert(Fe,Xt[0],Xt[1],Xt[2],Xt[3])}},vy.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new pg.VectorTile(new La(this.rawTileData)).layers,this.sourceLayerCoder=new YC(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},vy.prototype.query=function(y,I,U,J){var ne=this;this.loadVTLayers();for(var fe=y.params||{},Fe=rn/y.tileSize/y.scale,Qe=be(fe.filter),st=y.queryGeometry,mt=y.queryPadding*Fe,Xt=jQ(st),ur=this.grid.query(Xt.minX-mt,Xt.minY-mt,Xt.maxX+mt,Xt.maxY+mt),nr=jQ(y.cameraQueryGeometry),Lr=this.grid3D.query(nr.minX-mt,nr.minY-mt,nr.maxX+mt,nr.maxY+mt,function(An,ra,$n,Ba){return pp(y.cameraQueryGeometry,An-mt,ra-mt,$n+mt,Ba+mt)}),Yr=0,_i=Lr;Yr<_i.length;Yr+=1){var si=_i[Yr];ur.push(si)}ur.sort(BQe);for(var Hi={},Ei,Vi=function(An){var ra=ur[An];if(ra!==Ei){Ei=ra;var $n=ne.featureIndexArray.get(ra),Ba=null;ne.loadMatchingFeature(Hi,$n.bucketIndex,$n.sourceLayerIndex,$n.featureIndex,Qe,fe.layers,fe.availableImages,I,U,J,function(_a,Pa,qo){return Ba||(Ba=da(_a)),Pa.queryIntersectsFeature(st,_a,qo,Ba,ne.z,y.transform,Fe,y.pixelPosMatrix)})}},en=0;en<ur.length;en++)Vi(en);return Hi},vy.prototype.loadMatchingFeature=function(y,I,U,J,ne,fe,Fe,Qe,st,mt,Xt){var ur=this.bucketLayerIDs[I];if(!(fe&&!N(fe,ur))){var nr=this.sourceLayerCoder.decode(U),Lr=this.vtLayers[nr],Yr=Lr.feature(J);if(ne.needGeometry){var _i=No(Yr,!0);if(!ne.filter(new pn(this.tileID.overscaledZ),_i,this.tileID.canonical))return}else if(!ne.filter(new pn(this.tileID.overscaledZ),Yr))return;for(var si=this.getId(Yr,nr),Hi=0;Hi<ur.length;Hi++){var Ei=ur[Hi];if(!(fe&&fe.indexOf(Ei)<0)){var Vi=Qe[Ei];if(Vi){var en={};si!==void 0&&mt&&(en=mt.getState(Vi.sourceLayer||"_geojsonTileLayer",si));var An=_({},st[Ei]);An.paint=GQ(An.paint,Vi.paint,Yr,en,Fe),An.layout=GQ(An.layout,Vi.layout,Yr,en,Fe);var ra=!Xt||Xt(Yr,Vi,en);if(ra){var $n=new KC(Yr,this.z,this.x,this.y,si);$n.layer=An;var Ba=y[Ei];Ba===void 0&&(Ba=y[Ei]=[]),Ba.push({featureIndex:J,feature:$n,intersectionZ:ra})}}}}}},vy.prototype.lookupSymbolFeatures=function(y,I,U,J,ne,fe,Fe,Qe){var st={};this.loadVTLayers();for(var mt=be(ne),Xt=0,ur=y;Xt<ur.length;Xt+=1){var nr=ur[Xt];this.loadMatchingFeature(st,U,J,nr,mt,fe,Fe,Qe,I)}return st},vy.prototype.hasLayer=function(y){for(var I=0,U=this.bucketLayerIDs;I<U.length;I+=1)for(var J=U[I],ne=0,fe=J;ne<fe.length;ne+=1){var Fe=fe[ne];if(y===Fe)return!0}return!1},vy.prototype.getId=function(y,I){var U=y.id;if(this.promoteId){var J=typeof this.promoteId=="string"?this.promoteId:this.promoteId[I];U=y.properties[J],typeof U=="boolean"&&(U=Number(U))}return U},Z("FeatureIndex",vy,{omit:["rawTileData","sourceLayerCoder"]});function GQ(m,y,I,U,J){return H(m,function(ne,fe){var Fe=y instanceof xc?y.get(fe):null;return Fe&&Fe.evaluate?Fe.evaluate(I,U,J):Fe})}function jQ(m){for(var y=1/0,I=1/0,U=-1/0,J=-1/0,ne=0,fe=m;ne<fe.length;ne+=1){var Fe=fe[ne];y=Math.min(y,Fe.x),I=Math.min(I,Fe.y),U=Math.max(U,Fe.x),J=Math.max(J,Fe.y)}return{minX:y,minY:I,maxX:U,maxY:J}}function BQe(m,y){return y-m}var NQe=3e4,Fh=function(y,I){this.tileID=y,this.uid=g(),this.uses=0,this.tileSize=I,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state="loading"};Fh.prototype.registerFadeDuration=function(y){var I=y+this.timeAdded;I<nt.now()||this.fadeEndTime&&I<this.fadeEndTime||(this.fadeEndTime=I)},Fh.prototype.wasRequested=function(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"},Fh.prototype.loadVectorData=function(y,I,U){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",!y){this.collisionBoxArray=new xs;return}y.featureIndex&&(this.latestFeatureIndex=y.featureIndex,y.rawTileData?(this.latestRawTileData=y.rawTileData,this.latestFeatureIndex.rawTileData=y.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=y.collisionBoxArray,this.buckets=OQe(y.buckets,I.style),this.hasSymbolBuckets=!1;for(var J in this.buckets){var ne=this.buckets[J];if(ne instanceof ou)if(this.hasSymbolBuckets=!0,U)ne.justReloaded=!0;else break}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var fe in this.buckets){var Fe=this.buckets[fe];if(Fe instanceof ou&&Fe.hasRTLText){this.hasRTLText=!0,Ns();break}}this.queryPadding=0;for(var Qe in this.buckets){var st=this.buckets[Qe];this.queryPadding=Math.max(this.queryPadding,I.style.getLayer(Qe).queryRadius(st))}y.imageAtlas&&(this.imageAtlas=y.imageAtlas),y.glyphAtlasImage&&(this.glyphAtlasImage=y.glyphAtlasImage)},Fh.prototype.unloadVectorData=function(){for(var y in this.buckets)this.buckets[y].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"},Fh.prototype.getBucket=function(y){return this.buckets[y.id]},Fh.prototype.upload=function(y){for(var I in this.buckets){var U=this.buckets[I];U.uploadPending()&&U.upload(y)}var J=y.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new ib(y,this.imageAtlas.image,J.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new ib(y,this.glyphAtlasImage,J.ALPHA),this.glyphAtlasImage=null)},Fh.prototype.prepare=function(y){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(y,this.imageAtlasTexture)},Fh.prototype.queryRenderedFeatures=function(y,I,U,J,ne,fe,Fe,Qe,st,mt){return!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData?{}:this.latestFeatureIndex.query({queryGeometry:J,cameraQueryGeometry:ne,scale:fe,tileSize:this.tileSize,pixelPosMatrix:mt,transform:Qe,params:Fe,queryPadding:this.queryPadding*st},y,I,U)},Fh.prototype.querySourceFeatures=function(y,I){var U=this.latestFeatureIndex;if(!(!U||!U.rawTileData)){var J=U.loadVTLayers(),ne=I?I.sourceLayer:"",fe=J._geojsonTileLayer||J[ne];if(fe)for(var Fe=be(I&&I.filter),Qe=this.tileID.canonical,st=Qe.z,mt=Qe.x,Xt=Qe.y,ur={z:st,x:mt,y:Xt},nr=0;nr<fe.length;nr++){var Lr=fe.feature(nr);if(Fe.needGeometry){var Yr=No(Lr,!0);if(!Fe.filter(new pn(this.tileID.overscaledZ),Yr,this.tileID.canonical))continue}else if(!Fe.filter(new pn(this.tileID.overscaledZ),Lr))continue;var _i=U.getId(Lr,ne),si=new KC(Lr,st,mt,Xt,_i);si.tile=ur,y.push(si)}}},Fh.prototype.hasData=function(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"},Fh.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},Fh.prototype.setExpiryData=function(y){var I=this.expirationTime;if(y.cacheControl){var U=ge(y.cacheControl);U["max-age"]&&(this.expirationTime=Date.now()+U["max-age"]*1e3)}else y.expires&&(this.expirationTime=new Date(y.expires).getTime());if(this.expirationTime){var J=Date.now(),ne=!1;if(this.expirationTime>J)ne=!1;else if(!I)ne=!0;else if(this.expirationTime<I)ne=!0;else{var fe=this.expirationTime-I;fe?this.expirationTime=J+Math.max(fe,NQe):ne=!0}ne?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},Fh.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)},Fh.prototype.setFeatureState=function(y,I){if(!(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(y).length===0)){var U=this.latestFeatureIndex.loadVTLayers();for(var J in this.buckets)if(I.style.hasLayer(J)){var ne=this.buckets[J],fe=ne.layers[0].sourceLayer||"_geojsonTileLayer",Fe=U[fe],Qe=y[fe];if(!(!Fe||!Qe||Object.keys(Qe).length===0)){ne.update(Qe,Fe,this.imageAtlas&&this.imageAtlas.patternPositions||{});var st=I&&I.style&&I.style.getLayer(J);st&&(this.queryPadding=Math.max(this.queryPadding,st.queryRadius(ne)))}}}},Fh.prototype.holdingForFade=function(){return this.symbolFadeHoldUntil!==void 0},Fh.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<nt.now()},Fh.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},Fh.prototype.setHoldDuration=function(y){this.symbolFadeHoldUntil=nt.now()+y},Fh.prototype.setDependencies=function(y,I){for(var U={},J=0,ne=I;J<ne.length;J+=1){var fe=ne[J];U[fe]=!0}this.dependencies[y]=U},Fh.prototype.hasDependency=function(y,I){for(var U=0,J=y;U<J.length;U+=1){var ne=J[U],fe=this.dependencies[ne];if(fe)for(var Fe=0,Qe=I;Fe<Qe.length;Fe+=1){var st=Qe[Fe];if(fe[st])return!0}}return!1};var UQe=["type","source","source-layer","minzoom","maxzoom","filter","layout"],z1=f.performance,WQ=function(y){this._marks={start:[y.url,"start"].join("#"),end:[y.url,"end"].join("#"),measure:y.url.toString()},z1.mark(this._marks.start)};WQ.prototype.finish=function(){z1.mark(this._marks.end);var y=z1.getEntriesByName(this._marks.measure);return y.length===0&&(z1.measure(this._marks.measure,this._marks.start,this._marks.end),y=z1.getEntriesByName(this._marks.measure),z1.clearMarks(this._marks.start),z1.clearMarks(this._marks.end),z1.clearMeasures(this._marks.measure)),y},i.Actor=Kw,i.AlphaImage=Pv,i.CanonicalTileID=ab,i.CollisionBoxArray=xs,i.Color=ss,i.DEMData=dy,i.DataConstantProperty=At,i.DictionaryCoder=YC,i.EXTENT=rn,i.ErrorEvent=oa,i.EvaluationParameters=pn,i.Event=jo,i.Evented=Sn,i.FeatureIndex=vy,i.FillBucket=gp,i.FillExtrusionBucket=Hp,i.ImageAtlas=gg,i.ImagePosition=If,i.LineBucket=Gf,i.LngLat=sc,i.LngLatBounds=jf,i.MercatorCoordinate=nb,i.ONE_EM=Zi,i.OverscaledTileID=Wf,i.Point=u,i.Point$1=u,i.Properties=Oi,i.Protobuf=La,i.RGBAImage=lh,i.RequestManager=Ke,i.RequestPerformance=WQ,i.ResourceType=zn,i.SegmentVector=ns,i.SourceFeatureState=Jw,i.StructArrayLayout1ui2=Jo,i.StructArrayLayout2f1f2i16=Xn,i.StructArrayLayout2i4=ji,i.StructArrayLayout3ui6=ma,i.StructArrayLayout4i8=Ln,i.SymbolBucket=ou,i.Texture=ib,i.Tile=Fh,i.Transitionable=Fo,i.Uniform1f=Pt,i.Uniform1i=vt,i.Uniform2f=Wt,i.Uniform3f=rr,i.Uniform4f=dr,i.UniformColor=pr,i.UniformMatrix4f=Ar,i.UnwrappedTileID=HQ,i.ValidationError=fa,i.WritingMode=uv,i.ZoomHistory=wt,i.add=Lv,i.addDynamicAttributes=oq,i.asyncAll=k,i.bezier=x,i.bindAll=q,i.browser=nt,i.cacheEntryPossiblyAdded=bi,i.clamp=p,i.clearTileCache=Wi,i.clipLine=MQ,i.clone=T1,i.clone$1=G,i.clone$2=Mw,i.collisionCircleLayout=Tt,i.config=ct,i.create=w1,i.create$1=Rh,i.create$2=hg,i.createCommonjsModule=a,i.createExpression=eo,i.createLayout=Dn,i.createStyleLayer=IQe,i.cross=I9,i.deepEqual=h,i.dot=P9,i.dot$1=q9,i.ease=b,i.emitValidationErrors=Zu,i.endsWith=V,i.enforceCacheSizeLimit=nn,i.evaluateSizeForFeature=_Q,i.evaluateSizeForZoom=xQ,i.evaluateVariableOffset=CQ,i.evented=ya,i.extend=_,i.featureFilter=be,i.filterObject=X,i.fromRotation=rm,i.getAnchorAlignment=bS,i.getAnchorJustification=aq,i.getArrayBuffer=Zr,i.getImage=jn,i.getJSON=Fr,i.getRTLTextPluginStatus=so,i.getReferrer=It,i.getVideo=la,i.identity=oy,i.invert=im,i.isChar=tt,i.isMapboxURL=xt,i.keysDifference=L,i.makeRequest=yr,i.mapObject=H,i.mercatorXfromLng=NQ,i.mercatorYfromLat=UQ,i.mercatorZfromAltitude=VQ,i.mul=Nx,i.multiply=nm,i.mvt=pg,i.nextPowerOfTwo=T,i.normalize=Ux,i.number=Qs,i.offscreenCanvasSupported=$i,i.ortho=Kl,i.parseGlyphPBF=p0,i.pbf=La,i.performSymbolLayout=hQe,i.perspective=A1,i.pick=C,i.plugin=_s,i.polygonIntersectsPolygon=fo,i.postMapLoadEvent=Ve,i.postTurnstileEvent=Ne,i.potpack=Qv,i.refProperties=UQe,i.register=Z,i.registerForPluginStateChange=wa,i.renderColorRamp=Gx,i.rotate=ay,i.rotateX=bd,i.rotateZ=sy,i.scale=kl,i.scale$1=F9,i.scale$2=Ew,i.setCacheLimits=Ni,i.setRTLTextPlugin=io,i.sphericalToCartesian=Me,i.sqrLen=tS,i.styleSpec=on,i.sub=D9,i.symbolSize=iQe,i.transformMat3=R9,i.transformMat4=ly,i.translate=Fu,i.triggerPluginCompletionEvent=Nn,i.uniqueId=g,i.validateCustomStyleLayer=CQe,i.validateLight=po,i.validateStyle=yo,i.values=A,i.vectorTile=pg,i.version=o,i.warnOnce=re,i.webpSupported=qt,i.window=f,i.wrap=E}),n(["./shared"],function(i){"use strict";function a(It){var ft=typeof It;if(ft==="number"||ft==="boolean"||ft==="string"||It===void 0||It===null)return JSON.stringify(It);if(Array.isArray(It)){for(var jt="[",Zt=0,yr=It;Zt<yr.length;Zt+=1){var Fr=yr[Zt];jt+=a(Fr)+","}return jt+"]"}for(var Zr=Object.keys(It).sort(),Vr="{",gi=0;gi<Zr.length;gi++)Vr+=JSON.stringify(Zr[gi])+":"+a(It[Zr[gi]])+",";return Vr+"}"}function o(It){for(var ft="",jt=0,Zt=i.refProperties;jt<Zt.length;jt+=1){var yr=Zt[jt];ft+="/"+a(It[yr])}return ft}function s(It,ft){for(var jt={},Zt=0;Zt<It.length;Zt++){var yr=ft&&ft[It[Zt].id]||o(It[Zt]);ft&&(ft[It[Zt].id]=yr);var Fr=jt[yr];Fr||(Fr=jt[yr]=[]),Fr.push(It[Zt])}var Zr=[];for(var Vr in jt)Zr.push(jt[Vr]);return Zr}var l=function(ft){this.keyCache={},ft&&this.replace(ft)};l.prototype.replace=function(ft){this._layerConfigs={},this._layers={},this.update(ft,[])},l.prototype.update=function(ft,jt){for(var Zt=this,yr=0,Fr=ft;yr<Fr.length;yr+=1){var Zr=Fr[yr];this._layerConfigs[Zr.id]=Zr;var Vr=this._layers[Zr.id]=i.createStyleLayer(Zr);Vr._featureFilter=i.featureFilter(Vr.filter),this.keyCache[Zr.id]&&delete this.keyCache[Zr.id]}for(var gi=0,Si=jt;gi<Si.length;gi+=1){var Mi=Si[gi];delete this.keyCache[Mi],delete this._layerConfigs[Mi],delete this._layers[Mi]}this.familiesBySource={};for(var Pi=s(i.values(this._layerConfigs),this.keyCache),Gi=0,Ki=Pi;Gi<Ki.length;Gi+=1){var ka=Ki[Gi],jn=ka.map(function(Sn){return Zt._layers[Sn.id]}),la=jn[0];if(la.visibility!=="none"){var Fa=la.source||"",Ra=this.familiesBySource[Fa];Ra||(Ra=this.familiesBySource[Fa]={});var jo=la.sourceLayer||"_geojsonTileLayer",oa=Ra[jo];oa||(oa=Ra[jo]=[]),oa.push(jn)}}};var u=1,c=function(ft){var jt={},Zt=[];for(var yr in ft){var Fr=ft[yr],Zr=jt[yr]={};for(var Vr in Fr){var gi=Fr[+Vr];if(!(!gi||gi.bitmap.width===0||gi.bitmap.height===0)){var Si={x:0,y:0,w:gi.bitmap.width+2*u,h:gi.bitmap.height+2*u};Zt.push(Si),Zr[Vr]={rect:Si,metrics:gi.metrics}}}}var Mi=i.potpack(Zt),Pi=Mi.w,Gi=Mi.h,Ki=new i.AlphaImage({width:Pi||1,height:Gi||1});for(var ka in ft){var jn=ft[ka];for(var la in jn){var Fa=jn[+la];if(!(!Fa||Fa.bitmap.width===0||Fa.bitmap.height===0)){var Ra=jt[ka][la].rect;i.AlphaImage.copy(Fa.bitmap,Ki,{x:0,y:0},{x:Ra.x+u,y:Ra.y+u},Fa.bitmap)}}}this.image=Ki,this.positions=jt};i.register("GlyphAtlas",c);var f=function(ft){this.tileID=new i.OverscaledTileID(ft.tileID.overscaledZ,ft.tileID.wrap,ft.tileID.canonical.z,ft.tileID.canonical.x,ft.tileID.canonical.y),this.uid=ft.uid,this.zoom=ft.zoom,this.pixelRatio=ft.pixelRatio,this.tileSize=ft.tileSize,this.source=ft.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=ft.showCollisionBoxes,this.collectResourceTiming=!!ft.collectResourceTiming,this.returnDependencies=!!ft.returnDependencies,this.promoteId=ft.promoteId};f.prototype.parse=function(ft,jt,Zt,yr,Fr){var Zr=this;this.status="parsing",this.data=ft,this.collisionBoxArray=new i.CollisionBoxArray;var Vr=new i.DictionaryCoder(Object.keys(ft.layers).sort()),gi=new i.FeatureIndex(this.tileID,this.promoteId);gi.bucketLayerIDs=[];var Si={},Mi={featureIndex:gi,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Zt},Pi=jt.familiesBySource[this.source];for(var Gi in Pi){var Ki=ft.layers[Gi];if(Ki){Ki.version===1&&i.warnOnce('Vector tile source "'+this.source+'" layer "'+Gi+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var ka=Vr.encode(Gi),jn=[],la=0;la<Ki.length;la++){var Fa=Ki.feature(la),Ra=gi.getId(Fa,Gi);jn.push({feature:Fa,id:Ra,index:la,sourceLayerIndex:ka})}for(var jo=0,oa=Pi[Gi];jo<oa.length;jo+=1){var Sn=oa[jo],Ha=Sn[0];if(!(Ha.minzoom&&this.zoom<Math.floor(Ha.minzoom))&&!(Ha.maxzoom&&this.zoom>=Ha.maxzoom)&&Ha.visibility!=="none"){h(Sn,this.zoom,Zt);var oo=Si[Ha.id]=Ha.createBucket({index:gi.bucketLayerIDs.length,layers:Sn,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:ka,sourceID:this.source});oo.populate(jn,Mi,this.tileID.canonical),gi.bucketLayerIDs.push(Sn.map(function(hi){return hi.id}))}}}}var xn,_t,br,Hr,ti=i.mapObject(Mi.glyphDependencies,function(hi){return Object.keys(hi).map(Number)});Object.keys(ti).length?yr.send("getGlyphs",{uid:this.uid,stacks:ti},function(hi,Ji){xn||(xn=hi,_t=Ji,an.call(Zr))}):_t={};var zi=Object.keys(Mi.iconDependencies);zi.length?yr.send("getImages",{icons:zi,source:this.source,tileID:this.tileID,type:"icons"},function(hi,Ji){xn||(xn=hi,br=Ji,an.call(Zr))}):br={};var Yi=Object.keys(Mi.patternDependencies);Yi.length?yr.send("getImages",{icons:Yi,source:this.source,tileID:this.tileID,type:"patterns"},function(hi,Ji){xn||(xn=hi,Hr=Ji,an.call(Zr))}):Hr={},an.call(this);function an(){if(xn)return Fr(xn);if(_t&&br&&Hr){var hi=new c(_t),Ji=new i.ImageAtlas(br,Hr);for(var ua in Si){var Fn=Si[ua];Fn instanceof i.SymbolBucket?(h(Fn.layers,this.zoom,Zt),i.performSymbolLayout(Fn,_t,hi.positions,br,Ji.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):Fn.hasPattern&&(Fn instanceof i.LineBucket||Fn instanceof i.FillBucket||Fn instanceof i.FillExtrusionBucket)&&(h(Fn.layers,this.zoom,Zt),Fn.addFeatures(Mi,this.tileID.canonical,Ji.patternPositions))}this.status="done",Fr(null,{buckets:i.values(Si).filter(function(Sa){return!Sa.isEmpty()}),featureIndex:gi,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:hi.image,imageAtlas:Ji,glyphMap:this.returnDependencies?_t:null,iconMap:this.returnDependencies?br:null,glyphPositions:this.returnDependencies?hi.positions:null})}}};function h(It,ft,jt){for(var Zt=new i.EvaluationParameters(ft),yr=0,Fr=It;yr<Fr.length;yr+=1){var Zr=Fr[yr];Zr.recalculate(Zt,jt)}}function d(It,ft){var jt=i.getArrayBuffer(It.request,function(Zt,yr,Fr,Zr){Zt?ft(Zt):yr&&ft(null,{vectorTile:new i.vectorTile.VectorTile(new i.pbf(yr)),rawData:yr,cacheControl:Fr,expires:Zr})});return function(){jt.cancel(),ft()}}var v=function(ft,jt,Zt,yr){this.actor=ft,this.layerIndex=jt,this.availableImages=Zt,this.loadVectorData=yr||d,this.loading={},this.loaded={}};v.prototype.loadTile=function(ft,jt){var Zt=this,yr=ft.uid;this.loading||(this.loading={});var Fr=ft&&ft.request&&ft.request.collectResourceTiming?new i.RequestPerformance(ft.request):!1,Zr=this.loading[yr]=new f(ft);Zr.abort=this.loadVectorData(ft,function(Vr,gi){if(delete Zt.loading[yr],Vr||!gi)return Zr.status="done",Zt.loaded[yr]=Zr,jt(Vr);var Si=gi.rawData,Mi={};gi.expires&&(Mi.expires=gi.expires),gi.cacheControl&&(Mi.cacheControl=gi.cacheControl);var Pi={};if(Fr){var Gi=Fr.finish();Gi&&(Pi.resourceTiming=JSON.parse(JSON.stringify(Gi)))}Zr.vectorTile=gi.vectorTile,Zr.parse(gi.vectorTile,Zt.layerIndex,Zt.availableImages,Zt.actor,function(Ki,ka){if(Ki||!ka)return jt(Ki);jt(null,i.extend({rawTileData:Si.slice(0)},ka,Mi,Pi))}),Zt.loaded=Zt.loaded||{},Zt.loaded[yr]=Zr})},v.prototype.reloadTile=function(ft,jt){var Zt=this,yr=this.loaded,Fr=ft.uid,Zr=this;if(yr&&yr[Fr]){var Vr=yr[Fr];Vr.showCollisionBoxes=ft.showCollisionBoxes;var gi=function(Si,Mi){var Pi=Vr.reloadCallback;Pi&&(delete Vr.reloadCallback,Vr.parse(Vr.vectorTile,Zr.layerIndex,Zt.availableImages,Zr.actor,Pi)),jt(Si,Mi)};Vr.status==="parsing"?Vr.reloadCallback=gi:Vr.status==="done"&&(Vr.vectorTile?Vr.parse(Vr.vectorTile,this.layerIndex,this.availableImages,this.actor,gi):gi())}},v.prototype.abortTile=function(ft,jt){var Zt=this.loading,yr=ft.uid;Zt&&Zt[yr]&&Zt[yr].abort&&(Zt[yr].abort(),delete Zt[yr]),jt()},v.prototype.removeTile=function(ft,jt){var Zt=this.loaded,yr=ft.uid;Zt&&Zt[yr]&&delete Zt[yr],jt()};var x=i.window.ImageBitmap,b=function(){this.loaded={}};b.prototype.loadTile=function(ft,jt){var Zt=ft.uid,yr=ft.encoding,Fr=ft.rawImageData,Zr=x&&Fr instanceof x?this.getImageData(Fr):Fr,Vr=new i.DEMData(Zt,Zr,yr);this.loaded=this.loaded||{},this.loaded[Zt]=Vr,jt(null,Vr)},b.prototype.getImageData=function(ft){(!this.offscreenCanvas||!this.offscreenCanvasContext)&&(this.offscreenCanvas=new OffscreenCanvas(ft.width,ft.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=ft.width,this.offscreenCanvas.height=ft.height,this.offscreenCanvasContext.drawImage(ft,0,0,ft.width,ft.height);var jt=this.offscreenCanvasContext.getImageData(-1,-1,ft.width+2,ft.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new i.RGBAImage({width:jt.width,height:jt.height},jt.data)},b.prototype.removeTile=function(ft){var jt=this.loaded,Zt=ft.uid;jt&&jt[Zt]&&delete jt[Zt]};var p=E;function E(It,ft){var jt=It&&It.type,Zt;if(jt==="FeatureCollection")for(Zt=0;Zt<It.features.length;Zt++)E(It.features[Zt],ft);else if(jt==="GeometryCollection")for(Zt=0;Zt<It.geometries.length;Zt++)E(It.geometries[Zt],ft);else if(jt==="Feature")E(It.geometry,ft);else if(jt==="Polygon")k(It.coordinates,ft);else if(jt==="MultiPolygon")for(Zt=0;Zt<It.coordinates.length;Zt++)k(It.coordinates[Zt],ft);return It}function k(It,ft){if(It.length!==0){A(It[0],ft);for(var jt=1;jt<It.length;jt++)A(It[jt],!ft)}}function A(It,ft){for(var jt=0,Zt=0,yr=It.length,Fr=yr-1;Zt<yr;Fr=Zt++)jt+=(It[Zt][0]-It[Fr][0])*(It[Fr][1]+It[Zt][1]);jt>=0!=!!ft&&It.reverse()}var L=i.vectorTile.VectorTileFeature.prototype.toGeoJSON,_=function(ft){this._feature=ft,this.extent=i.EXTENT,this.type=ft.type,this.properties=ft.tags,"id"in ft&&!isNaN(ft.id)&&(this.id=parseInt(ft.id,10))};_.prototype.loadGeometry=function(){if(this._feature.type===1){for(var ft=[],jt=0,Zt=this._feature.geometry;jt<Zt.length;jt+=1){var yr=Zt[jt];ft.push([new i.Point$1(yr[0],yr[1])])}return ft}else{for(var Fr=[],Zr=0,Vr=this._feature.geometry;Zr<Vr.length;Zr+=1){for(var gi=Vr[Zr],Si=[],Mi=0,Pi=gi;Mi<Pi.length;Mi+=1){var Gi=Pi[Mi];Si.push(new i.Point$1(Gi[0],Gi[1]))}Fr.push(Si)}return Fr}},_.prototype.toGeoJSON=function(ft,jt,Zt){return L.call(this,ft,jt,Zt)};var C=function(ft){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=i.EXTENT,this.length=ft.length,this._features=ft};C.prototype.feature=function(ft){return new _(this._features[ft])};var M=i.vectorTile.VectorTileFeature,g=P;function P(It,ft){this.options=ft||{},this.features=It,this.length=It.length}P.prototype.feature=function(It){return new T(this.features[It],this.options.extent)};function T(It,ft){this.id=typeof It.id=="number"?It.id:void 0,this.type=It.type,this.rawGeometry=It.type===1?[It.geometry]:It.geometry,this.properties=It.tags,this.extent=ft||4096}T.prototype.loadGeometry=function(){var It=this.rawGeometry;this.geometry=[];for(var ft=0;ft<It.length;ft++){for(var jt=It[ft],Zt=[],yr=0;yr<jt.length;yr++)Zt.push(new i.Point$1(jt[yr][0],jt[yr][1]));this.geometry.push(Zt)}return this.geometry},T.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var It=this.geometry,ft=1/0,jt=-1/0,Zt=1/0,yr=-1/0,Fr=0;Fr<It.length;Fr++)for(var Zr=It[Fr],Vr=0;Vr<Zr.length;Vr++){var gi=Zr[Vr];ft=Math.min(ft,gi.x),jt=Math.max(jt,gi.x),Zt=Math.min(Zt,gi.y),yr=Math.max(yr,gi.y)}return[ft,Zt,jt,yr]},T.prototype.toGeoJSON=M.prototype.toGeoJSON;var F=X,q=X,V=G,H=g;function X(It){var ft=new i.pbf;return N(It,ft),ft.finish()}function G(It,ft){ft=ft||{};var jt={};for(var Zt in It)jt[Zt]=new g(It[Zt].features,ft),jt[Zt].name=Zt,jt[Zt].version=ft.version,jt[Zt].extent=ft.extent;return X({layers:jt})}function N(It,ft){for(var jt in It.layers)ft.writeMessage(3,W,It.layers[jt])}function W(It,ft){ft.writeVarintField(15,It.version||1),ft.writeStringField(1,It.name||""),ft.writeVarintField(5,It.extent||4096);var jt,Zt={keys:[],values:[],keycache:{},valuecache:{}};for(jt=0;jt<It.length;jt++)Zt.feature=It.feature(jt),ft.writeMessage(2,re,Zt);var yr=Zt.keys;for(jt=0;jt<yr.length;jt++)ft.writeStringField(3,yr[jt]);var Fr=Zt.values;for(jt=0;jt<Fr.length;jt++)ft.writeMessage(4,ge,Fr[jt])}function re(It,ft){var jt=It.feature;jt.id!==void 0&&ft.writeVarintField(1,jt.id),ft.writeMessage(2,ae,It),ft.writeVarintField(3,jt.type),ft.writeMessage(4,ke,jt)}function ae(It,ft){var jt=It.feature,Zt=It.keys,yr=It.values,Fr=It.keycache,Zr=It.valuecache;for(var Vr in jt.properties){var gi=Fr[Vr];typeof gi=="undefined"&&(Zt.push(Vr),gi=Zt.length-1,Fr[Vr]=gi),ft.writeVarint(gi);var Si=jt.properties[Vr],Mi=typeof Si;Mi!=="string"&&Mi!=="boolean"&&Mi!=="number"&&(Si=JSON.stringify(Si));var Pi=Mi+":"+Si,Gi=Zr[Pi];typeof Gi=="undefined"&&(yr.push(Si),Gi=yr.length-1,Zr[Pi]=Gi),ft.writeVarint(Gi)}}function _e(It,ft){return(ft<<3)+(It&7)}function Me(It){return It<<1^It>>31}function ke(It,ft){for(var jt=It.loadGeometry(),Zt=It.type,yr=0,Fr=0,Zr=jt.length,Vr=0;Vr<Zr;Vr++){var gi=jt[Vr],Si=1;Zt===1&&(Si=gi.length),ft.writeVarint(_e(1,Si));for(var Mi=Zt===3?gi.length-1:gi.length,Pi=0;Pi<Mi;Pi++){Pi===1&&Zt!==1&&ft.writeVarint(_e(2,Mi-1));var Gi=gi[Pi].x-yr,Ki=gi[Pi].y-Fr;ft.writeVarint(Me(Gi)),ft.writeVarint(Me(Ki)),yr+=Gi,Fr+=Ki}Zt===3&&ft.writeVarint(_e(7,1))}}function ge(It,ft){var jt=typeof It;jt==="string"?ft.writeStringField(1,It):jt==="boolean"?ft.writeBooleanField(7,It):jt==="number"&&(It%1!==0?ft.writeDoubleField(3,It):It<0?ft.writeSVarintField(6,It):ft.writeVarintField(5,It))}F.fromVectorTileJs=q,F.fromGeojsonVt=V,F.GeoJSONWrapper=H;function ie(It,ft,jt,Zt,yr,Fr){if(!(yr-Zt<=jt)){var Zr=Zt+yr>>1;Te(It,ft,Zr,Zt,yr,Fr%2),ie(It,ft,jt,Zt,Zr-1,Fr+1),ie(It,ft,jt,Zr+1,yr,Fr+1)}}function Te(It,ft,jt,Zt,yr,Fr){for(;yr>Zt;){if(yr-Zt>600){var Zr=yr-Zt+1,Vr=jt-Zt+1,gi=Math.log(Zr),Si=.5*Math.exp(2*gi/3),Mi=.5*Math.sqrt(gi*Si*(Zr-Si)/Zr)*(Vr-Zr/2<0?-1:1),Pi=Math.max(Zt,Math.floor(jt-Vr*Si/Zr+Mi)),Gi=Math.min(yr,Math.floor(jt+(Zr-Vr)*Si/Zr+Mi));Te(It,ft,jt,Pi,Gi,Fr)}var Ki=ft[2*jt+Fr],ka=Zt,jn=yr;for(Ee(It,ft,Zt,jt),ft[2*yr+Fr]>Ki&&Ee(It,ft,Zt,yr);ka<jn;){for(Ee(It,ft,ka,jn),ka++,jn--;ft[2*ka+Fr]<Ki;)ka++;for(;ft[2*jn+Fr]>Ki;)jn--}ft[2*Zt+Fr]===Ki?Ee(It,ft,Zt,jn):(jn++,Ee(It,ft,jn,yr)),jn<=jt&&(Zt=jn+1),jt<=jn&&(yr=jn-1)}}function Ee(It,ft,jt,Zt){Ae(It,jt,Zt),Ae(ft,2*jt,2*Zt),Ae(ft,2*jt+1,2*Zt+1)}function Ae(It,ft,jt){var Zt=It[ft];It[ft]=It[jt],It[jt]=Zt}function ze(It,ft,jt,Zt,yr,Fr,Zr){for(var Vr=[0,It.length-1,0],gi=[],Si,Mi;Vr.length;){var Pi=Vr.pop(),Gi=Vr.pop(),Ki=Vr.pop();if(Gi-Ki<=Zr){for(var ka=Ki;ka<=Gi;ka++)Si=ft[2*ka],Mi=ft[2*ka+1],Si>=jt&&Si<=yr&&Mi>=Zt&&Mi<=Fr&&gi.push(It[ka]);continue}var jn=Math.floor((Ki+Gi)/2);Si=ft[2*jn],Mi=ft[2*jn+1],Si>=jt&&Si<=yr&&Mi>=Zt&&Mi<=Fr&&gi.push(It[jn]);var la=(Pi+1)%2;(Pi===0?jt<=Si:Zt<=Mi)&&(Vr.push(Ki),Vr.push(jn-1),Vr.push(la)),(Pi===0?yr>=Si:Fr>=Mi)&&(Vr.push(jn+1),Vr.push(Gi),Vr.push(la))}return gi}function Ce(It,ft,jt,Zt,yr,Fr){for(var Zr=[0,It.length-1,0],Vr=[],gi=yr*yr;Zr.length;){var Si=Zr.pop(),Mi=Zr.pop(),Pi=Zr.pop();if(Mi-Pi<=Fr){for(var Gi=Pi;Gi<=Mi;Gi++)me(ft[2*Gi],ft[2*Gi+1],jt,Zt)<=gi&&Vr.push(It[Gi]);continue}var Ki=Math.floor((Pi+Mi)/2),ka=ft[2*Ki],jn=ft[2*Ki+1];me(ka,jn,jt,Zt)<=gi&&Vr.push(It[Ki]);var la=(Si+1)%2;(Si===0?jt-yr<=ka:Zt-yr<=jn)&&(Zr.push(Pi),Zr.push(Ki-1),Zr.push(la)),(Si===0?jt+yr>=ka:Zt+yr>=jn)&&(Zr.push(Ki+1),Zr.push(Mi),Zr.push(la))}return Vr}function me(It,ft,jt,Zt){var yr=It-jt,Fr=ft-Zt;return yr*yr+Fr*Fr}var Re=function(It){return It[0]},ce=function(It){return It[1]},Ge=function(ft,jt,Zt,yr,Fr){jt===void 0&&(jt=Re),Zt===void 0&&(Zt=ce),yr===void 0&&(yr=64),Fr===void 0&&(Fr=Float64Array),this.nodeSize=yr,this.points=ft;for(var Zr=ft.length<65536?Uint16Array:Uint32Array,Vr=this.ids=new Zr(ft.length),gi=this.coords=new Fr(ft.length*2),Si=0;Si<ft.length;Si++)Vr[Si]=Si,gi[2*Si]=jt(ft[Si]),gi[2*Si+1]=Zt(ft[Si]);ie(Vr,gi,yr,0,Vr.length-1,0)};Ge.prototype.range=function(ft,jt,Zt,yr){return ze(this.ids,this.coords,ft,jt,Zt,yr,this.nodeSize)},Ge.prototype.within=function(ft,jt,Zt){return Ce(this.ids,this.coords,ft,jt,Zt,this.nodeSize)};var nt={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(It){return It}},ct=function(ft){this.options=er(Object.create(nt),ft),this.trees=new Array(this.options.maxZoom+1)};ct.prototype.load=function(ft){var jt=this.options,Zt=jt.log,yr=jt.minZoom,Fr=jt.maxZoom,Zr=jt.nodeSize;Zt&&console.time("total time");var Vr="prepare "+ft.length+" points";Zt&&console.time(Vr),this.points=ft;for(var gi=[],Si=0;Si<ft.length;Si++)ft[Si].geometry&&gi.push(rt(ft[Si],Si));this.trees[Fr+1]=new Ge(gi,Ke,xt,Zr,Float32Array),Zt&&console.timeEnd(Vr);for(var Mi=Fr;Mi>=yr;Mi--){var Pi=+Date.now();gi=this._cluster(gi,Mi),this.trees[Mi]=new Ge(gi,Ke,xt,Zr,Float32Array),Zt&&console.log("z%d: %d clusters in %dms",Mi,gi.length,+Date.now()-Pi)}return Zt&&console.timeEnd("total time"),this},ct.prototype.getClusters=function(ft,jt){var Zt=((ft[0]+180)%360+360)%360-180,yr=Math.max(-90,Math.min(90,ft[1])),Fr=ft[2]===180?180:((ft[2]+180)%360+360)%360-180,Zr=Math.max(-90,Math.min(90,ft[3]));if(ft[2]-ft[0]>=360)Zt=-180,Fr=180;else if(Zt>Fr){var Vr=this.getClusters([Zt,yr,180,Zr],jt),gi=this.getClusters([-180,yr,Fr,Zr],jt);return Vr.concat(gi)}for(var Si=this.trees[this._limitZoom(jt)],Mi=Si.range(kt(Zt),Ct(Zr),kt(Fr),Ct(yr)),Pi=[],Gi=0,Ki=Mi;Gi<Ki.length;Gi+=1){var ka=Ki[Gi],jn=Si.points[ka];Pi.push(jn.numPoints?ot(jn):this.points[jn.index])}return Pi},ct.prototype.getChildren=function(ft){var jt=this._getOriginId(ft),Zt=this._getOriginZoom(ft),yr="No cluster with the specified id.",Fr=this.trees[Zt];if(!Fr)throw new Error(yr);var Zr=Fr.points[jt];if(!Zr)throw new Error(yr);for(var Vr=this.options.radius/(this.options.extent*Math.pow(2,Zt-1)),gi=Fr.within(Zr.x,Zr.y,Vr),Si=[],Mi=0,Pi=gi;Mi<Pi.length;Mi+=1){var Gi=Pi[Mi],Ki=Fr.points[Gi];Ki.parentId===ft&&Si.push(Ki.numPoints?ot(Ki):this.points[Ki.index])}if(Si.length===0)throw new Error(yr);return Si},ct.prototype.getLeaves=function(ft,jt,Zt){jt=jt||10,Zt=Zt||0;var yr=[];return this._appendLeaves(yr,ft,jt,Zt,0),yr},ct.prototype.getTile=function(ft,jt,Zt){var yr=this.trees[this._limitZoom(ft)],Fr=Math.pow(2,ft),Zr=this.options,Vr=Zr.extent,gi=Zr.radius,Si=gi/Vr,Mi=(Zt-Si)/Fr,Pi=(Zt+1+Si)/Fr,Gi={features:[]};return this._addTileFeatures(yr.range((jt-Si)/Fr,Mi,(jt+1+Si)/Fr,Pi),yr.points,jt,Zt,Fr,Gi),jt===0&&this._addTileFeatures(yr.range(1-Si/Fr,Mi,1,Pi),yr.points,Fr,Zt,Fr,Gi),jt===Fr-1&&this._addTileFeatures(yr.range(0,Mi,Si/Fr,Pi),yr.points,-1,Zt,Fr,Gi),Gi.features.length?Gi:null},ct.prototype.getClusterExpansionZoom=function(ft){for(var jt=this._getOriginZoom(ft)-1;jt<=this.options.maxZoom;){var Zt=this.getChildren(ft);if(jt++,Zt.length!==1)break;ft=Zt[0].properties.cluster_id}return jt},ct.prototype._appendLeaves=function(ft,jt,Zt,yr,Fr){for(var Zr=this.getChildren(jt),Vr=0,gi=Zr;Vr<gi.length;Vr+=1){var Si=gi[Vr],Mi=Si.properties;if(Mi&&Mi.cluster?Fr+Mi.point_count<=yr?Fr+=Mi.point_count:Fr=this._appendLeaves(ft,Mi.cluster_id,Zt,yr,Fr):Fr<yr?Fr++:ft.push(Si),ft.length===Zt)break}return Fr},ct.prototype._addTileFeatures=function(ft,jt,Zt,yr,Fr,Zr){for(var Vr=0,gi=ft;Vr<gi.length;Vr+=1){var Si=gi[Vr],Mi=jt[Si],Pi=Mi.numPoints,Gi={type:1,geometry:[[Math.round(this.options.extent*(Mi.x*Fr-Zt)),Math.round(this.options.extent*(Mi.y*Fr-yr))]],tags:Pi?Rt(Mi):this.points[Mi.index].properties},Ki=void 0;Pi?Ki=Mi.id:this.options.generateId?Ki=Mi.index:this.points[Mi.index].id&&(Ki=this.points[Mi.index].id),Ki!==void 0&&(Gi.id=Ki),Zr.features.push(Gi)}},ct.prototype._limitZoom=function(ft){return Math.max(this.options.minZoom,Math.min(+ft,this.options.maxZoom+1))},ct.prototype._cluster=function(ft,jt){for(var Zt=[],yr=this.options,Fr=yr.radius,Zr=yr.extent,Vr=yr.reduce,gi=yr.minPoints,Si=Fr/(Zr*Math.pow(2,jt)),Mi=0;Mi<ft.length;Mi++){var Pi=ft[Mi];if(!(Pi.zoom<=jt)){Pi.zoom=jt;for(var Gi=this.trees[jt+1],Ki=Gi.within(Pi.x,Pi.y,Si),ka=Pi.numPoints||1,jn=ka,la=0,Fa=Ki;la<Fa.length;la+=1){var Ra=Fa[la],jo=Gi.points[Ra];jo.zoom>jt&&(jn+=jo.numPoints||1)}if(jn>=gi){for(var oa=Pi.x*ka,Sn=Pi.y*ka,Ha=Vr&&ka>1?this._map(Pi,!0):null,oo=(Mi<<5)+(jt+1)+this.points.length,xn=0,_t=Ki;xn<_t.length;xn+=1){var br=_t[xn],Hr=Gi.points[br];if(!(Hr.zoom<=jt)){Hr.zoom=jt;var ti=Hr.numPoints||1;oa+=Hr.x*ti,Sn+=Hr.y*ti,Hr.parentId=oo,Vr&&(Ha||(Ha=this._map(Pi,!0)),Vr(Ha,this._map(Hr)))}}Pi.parentId=oo,Zt.push(qt(oa/jn,Sn/jn,oo,jn,Ha))}else if(Zt.push(Pi),jn>1)for(var zi=0,Yi=Ki;zi<Yi.length;zi+=1){var an=Yi[zi],hi=Gi.points[an];hi.zoom<=jt||(hi.zoom=jt,Zt.push(hi))}}}return Zt},ct.prototype._getOriginId=function(ft){return ft-this.points.length>>5},ct.prototype._getOriginZoom=function(ft){return(ft-this.points.length)%32},ct.prototype._map=function(ft,jt){if(ft.numPoints)return jt?er({},ft.properties):ft.properties;var Zt=this.points[ft.index].properties,yr=this.options.map(Zt);return jt&&yr===Zt?er({},yr):yr};function qt(It,ft,jt,Zt,yr){return{x:It,y:ft,zoom:1/0,id:jt,parentId:-1,numPoints:Zt,properties:yr}}function rt(It,ft){var jt=It.geometry.coordinates,Zt=jt[0],yr=jt[1];return{x:kt(Zt),y:Ct(yr),zoom:1/0,index:ft,parentId:-1}}function ot(It){return{type:"Feature",id:It.id,properties:Rt(It),geometry:{type:"Point",coordinates:[Yt(It.x),xr(It.y)]}}}function Rt(It){var ft=It.numPoints,jt=ft>=1e4?Math.round(ft/1e3)+"k":ft>=1e3?Math.round(ft/100)/10+"k":ft;return er(er({},It.properties),{cluster:!0,cluster_id:It.id,point_count:ft,point_count_abbreviated:jt})}function kt(It){return It/360+.5}function Ct(It){var ft=Math.sin(It*Math.PI/180),jt=.5-.25*Math.log((1+ft)/(1-ft))/Math.PI;return jt<0?0:jt>1?1:jt}function Yt(It){return(It-.5)*360}function xr(It){var ft=(180-It*360)*Math.PI/180;return 360*Math.atan(Math.exp(ft))/Math.PI-90}function er(It,ft){for(var jt in ft)It[jt]=ft[jt];return It}function Ke(It){return It.x}function xt(It){return It.y}function bt(It,ft,jt,Zt){for(var yr=Zt,Fr=jt-ft>>1,Zr=jt-ft,Vr,gi=It[ft],Si=It[ft+1],Mi=It[jt],Pi=It[jt+1],Gi=ft+3;Gi<jt;Gi+=3){var Ki=Lt(It[Gi],It[Gi+1],gi,Si,Mi,Pi);if(Ki>yr)Vr=Gi,yr=Ki;else if(Ki===yr){var ka=Math.abs(Gi-Fr);ka<Zr&&(Vr=Gi,Zr=ka)}}yr>Zt&&(Vr-ft>3&&bt(It,ft,Vr,Zt),It[Vr+2]=yr,jt-Vr>3&&bt(It,Vr,jt,Zt))}function Lt(It,ft,jt,Zt,yr,Fr){var Zr=yr-jt,Vr=Fr-Zt;if(Zr!==0||Vr!==0){var gi=((It-jt)*Zr+(ft-Zt)*Vr)/(Zr*Zr+Vr*Vr);gi>1?(jt=yr,Zt=Fr):gi>0&&(jt+=Zr*gi,Zt+=Vr*gi)}return Zr=It-jt,Vr=ft-Zt,Zr*Zr+Vr*Vr}function St(It,ft,jt,Zt){var yr={id:typeof It=="undefined"?null:It,type:ft,geometry:jt,tags:Zt,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return Et(yr),yr}function Et(It){var ft=It.geometry,jt=It.type;if(jt==="Point"||jt==="MultiPoint"||jt==="LineString")dt(It,ft);else if(jt==="Polygon"||jt==="MultiLineString")for(var Zt=0;Zt<ft.length;Zt++)dt(It,ft[Zt]);else if(jt==="MultiPolygon")for(Zt=0;Zt<ft.length;Zt++)for(var yr=0;yr<ft[Zt].length;yr++)dt(It,ft[Zt][yr])}function dt(It,ft){for(var jt=0;jt<ft.length;jt+=3)It.minX=Math.min(It.minX,ft[jt]),It.minY=Math.min(It.minY,ft[jt+1]),It.maxX=Math.max(It.maxX,ft[jt]),It.maxY=Math.max(It.maxY,ft[jt+1])}function Ht(It,ft){var jt=[];if(It.type==="FeatureCollection")for(var Zt=0;Zt<It.features.length;Zt++)$t(jt,It.features[Zt],ft,Zt);else It.type==="Feature"?$t(jt,It,ft):$t(jt,{geometry:It},ft);return jt}function $t(It,ft,jt,Zt){if(ft.geometry){var yr=ft.geometry.coordinates,Fr=ft.geometry.type,Zr=Math.pow(jt.tolerance/((1<<jt.maxZoom)*jt.extent),2),Vr=[],gi=ft.id;if(jt.promoteId?gi=ft.properties[jt.promoteId]:jt.generateId&&(gi=Zt||0),Fr==="Point")fr(yr,Vr);else if(Fr==="MultiPoint")for(var Si=0;Si<yr.length;Si++)fr(yr[Si],Vr);else if(Fr==="LineString")_r(yr,Vr,Zr,!1);else if(Fr==="MultiLineString")if(jt.lineMetrics){for(Si=0;Si<yr.length;Si++)Vr=[],_r(yr[Si],Vr,Zr,!1),It.push(St(gi,"LineString",Vr,ft.properties));return}else Br(yr,Vr,Zr,!1);else if(Fr==="Polygon")Br(yr,Vr,Zr,!0);else if(Fr==="MultiPolygon")for(Si=0;Si<yr.length;Si++){var Mi=[];Br(yr[Si],Mi,Zr,!0),Vr.push(Mi)}else if(Fr==="GeometryCollection"){for(Si=0;Si<ft.geometry.geometries.length;Si++)$t(It,{id:gi,geometry:ft.geometry.geometries[Si],properties:ft.properties},jt,Zt);return}else throw new Error("Input data is not a valid GeoJSON object.");It.push(St(gi,Fr,Vr,ft.properties))}}function fr(It,ft){ft.push(Or(It[0])),ft.push(Nr(It[1])),ft.push(0)}function _r(It,ft,jt,Zt){for(var yr,Fr,Zr=0,Vr=0;Vr<It.length;Vr++){var gi=Or(It[Vr][0]),Si=Nr(It[Vr][1]);ft.push(gi),ft.push(Si),ft.push(0),Vr>0&&(Zt?Zr+=(yr*Si-gi*Fr)/2:Zr+=Math.sqrt(Math.pow(gi-yr,2)+Math.pow(Si-Fr,2))),yr=gi,Fr=Si}var Mi=ft.length-3;ft[2]=1,bt(ft,0,Mi,jt),ft[Mi+2]=1,ft.size=Math.abs(Zr),ft.start=0,ft.end=ft.size}function Br(It,ft,jt,Zt){for(var yr=0;yr<It.length;yr++){var Fr=[];_r(It[yr],Fr,jt,Zt),ft.push(Fr)}}function Or(It){return It/360+.5}function Nr(It){var ft=Math.sin(It*Math.PI/180),jt=.5-.25*Math.log((1+ft)/(1-ft))/Math.PI;return jt<0?0:jt>1?1:jt}function ut(It,ft,jt,Zt,yr,Fr,Zr,Vr){if(jt/=ft,Zt/=ft,Fr>=jt&&Zr<Zt)return It;if(Zr<jt||Fr>=Zt)return null;for(var gi=[],Si=0;Si<It.length;Si++){var Mi=It[Si],Pi=Mi.geometry,Gi=Mi.type,Ki=yr===0?Mi.minX:Mi.minY,ka=yr===0?Mi.maxX:Mi.maxY;if(Ki>=jt&&ka<Zt){gi.push(Mi);continue}else if(ka<jt||Ki>=Zt)continue;var jn=[];if(Gi==="Point"||Gi==="MultiPoint")Ne(Pi,jn,jt,Zt,yr);else if(Gi==="LineString")Ye(Pi,jn,jt,Zt,yr,!1,Vr.lineMetrics);else if(Gi==="MultiLineString")Xe(Pi,jn,jt,Zt,yr,!1);else if(Gi==="Polygon")Xe(Pi,jn,jt,Zt,yr,!0);else if(Gi==="MultiPolygon")for(var la=0;la<Pi.length;la++){var Fa=[];Xe(Pi[la],Fa,jt,Zt,yr,!0),Fa.length&&jn.push(Fa)}if(jn.length){if(Vr.lineMetrics&&Gi==="LineString"){for(la=0;la<jn.length;la++)gi.push(St(Mi.id,Gi,jn[la],Mi.tags));continue}(Gi==="LineString"||Gi==="MultiLineString")&&(jn.length===1?(Gi="LineString",jn=jn[0]):Gi="MultiLineString"),(Gi==="Point"||Gi==="MultiPoint")&&(Gi=jn.length===3?"Point":"MultiPoint"),gi.push(St(Mi.id,Gi,jn,Mi.tags))}}return gi.length?gi:null}function Ne(It,ft,jt,Zt,yr){for(var Fr=0;Fr<It.length;Fr+=3){var Zr=It[Fr+yr];Zr>=jt&&Zr<=Zt&&(ft.push(It[Fr]),ft.push(It[Fr+1]),ft.push(It[Fr+2]))}}function Ye(It,ft,jt,Zt,yr,Fr,Zr){for(var Vr=Ve(It),gi=yr===0?Le:xe,Si=It.start,Mi,Pi,Gi=0;Gi<It.length-3;Gi+=3){var Ki=It[Gi],ka=It[Gi+1],jn=It[Gi+2],la=It[Gi+3],Fa=It[Gi+4],Ra=yr===0?Ki:ka,jo=yr===0?la:Fa,oa=!1;Zr&&(Mi=Math.sqrt(Math.pow(Ki-la,2)+Math.pow(ka-Fa,2))),Ra<jt?jo>jt&&(Pi=gi(Vr,Ki,ka,la,Fa,jt),Zr&&(Vr.start=Si+Mi*Pi)):Ra>Zt?jo<Zt&&(Pi=gi(Vr,Ki,ka,la,Fa,Zt),Zr&&(Vr.start=Si+Mi*Pi)):ht(Vr,Ki,ka,jn),jo<jt&&Ra>=jt&&(Pi=gi(Vr,Ki,ka,la,Fa,jt),oa=!0),jo>Zt&&Ra<=Zt&&(Pi=gi(Vr,Ki,ka,la,Fa,Zt),oa=!0),!Fr&&oa&&(Zr&&(Vr.end=Si+Mi*Pi),ft.push(Vr),Vr=Ve(It)),Zr&&(Si+=Mi)}var Sn=It.length-3;Ki=It[Sn],ka=It[Sn+1],jn=It[Sn+2],Ra=yr===0?Ki:ka,Ra>=jt&&Ra<=Zt&&ht(Vr,Ki,ka,jn),Sn=Vr.length-3,Fr&&Sn>=3&&(Vr[Sn]!==Vr[0]||Vr[Sn+1]!==Vr[1])&&ht(Vr,Vr[0],Vr[1],Vr[2]),Vr.length&&ft.push(Vr)}function Ve(It){var ft=[];return ft.size=It.size,ft.start=It.start,ft.end=It.end,ft}function Xe(It,ft,jt,Zt,yr,Fr){for(var Zr=0;Zr<It.length;Zr++)Ye(It[Zr],ft,jt,Zt,yr,Fr,!1)}function ht(It,ft,jt,Zt){It.push(ft),It.push(jt),It.push(Zt)}function Le(It,ft,jt,Zt,yr,Fr){var Zr=(Fr-ft)/(Zt-ft);return It.push(Fr),It.push(jt+(yr-jt)*Zr),It.push(1),Zr}function xe(It,ft,jt,Zt,yr,Fr){var Zr=(Fr-jt)/(yr-jt);return It.push(ft+(Zt-ft)*Zr),It.push(Fr),It.push(1),Zr}function Se(It,ft){var jt=ft.buffer/ft.extent,Zt=It,yr=ut(It,1,-1-jt,jt,0,-1,2,ft),Fr=ut(It,1,1-jt,2+jt,0,-1,2,ft);return(yr||Fr)&&(Zt=ut(It,1,-jt,1+jt,0,-1,2,ft)||[],yr&&(Zt=lt(yr,1).concat(Zt)),Fr&&(Zt=Zt.concat(lt(Fr,-1)))),Zt}function lt(It,ft){for(var jt=[],Zt=0;Zt<It.length;Zt++){var yr=It[Zt],Fr=yr.type,Zr;if(Fr==="Point"||Fr==="MultiPoint"||Fr==="LineString")Zr=Gt(yr.geometry,ft);else if(Fr==="MultiLineString"||Fr==="Polygon"){Zr=[];for(var Vr=0;Vr<yr.geometry.length;Vr++)Zr.push(Gt(yr.geometry[Vr],ft))}else if(Fr==="MultiPolygon")for(Zr=[],Vr=0;Vr<yr.geometry.length;Vr++){for(var gi=[],Si=0;Si<yr.geometry[Vr].length;Si++)gi.push(Gt(yr.geometry[Vr][Si],ft));Zr.push(gi)}jt.push(St(yr.id,Fr,Zr,yr.tags))}return jt}function Gt(It,ft){var jt=[];jt.size=It.size,It.start!==void 0&&(jt.start=It.start,jt.end=It.end);for(var Zt=0;Zt<It.length;Zt+=3)jt.push(It[Zt]+ft,It[Zt+1],It[Zt+2]);return jt}function Vt(It,ft){if(It.transformed)return It;var jt=1<<It.z,Zt=It.x,yr=It.y,Fr,Zr,Vr;for(Fr=0;Fr<It.features.length;Fr++){var gi=It.features[Fr],Si=gi.geometry,Mi=gi.type;if(gi.geometry=[],Mi===1)for(Zr=0;Zr<Si.length;Zr+=2)gi.geometry.push(ar(Si[Zr],Si[Zr+1],ft,jt,Zt,yr));else for(Zr=0;Zr<Si.length;Zr++){var Pi=[];for(Vr=0;Vr<Si[Zr].length;Vr+=2)Pi.push(ar(Si[Zr][Vr],Si[Zr][Vr+1],ft,jt,Zt,yr));gi.geometry.push(Pi)}}return It.transformed=!0,It}function ar(It,ft,jt,Zt,yr,Fr){return[Math.round(jt*(It*Zt-yr)),Math.round(jt*(ft*Zt-Fr))]}function Qr(It,ft,jt,Zt,yr){for(var Fr=ft===yr.maxZoom?0:yr.tolerance/((1<<ft)*yr.extent),Zr={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:jt,y:Zt,z:ft,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},Vr=0;Vr<It.length;Vr++){Zr.numFeatures++,ai(Zr,It[Vr],Fr,yr);var gi=It[Vr].minX,Si=It[Vr].minY,Mi=It[Vr].maxX,Pi=It[Vr].maxY;gi<Zr.minX&&(Zr.minX=gi),Si<Zr.minY&&(Zr.minY=Si),Mi>Zr.maxX&&(Zr.maxX=Mi),Pi>Zr.maxY&&(Zr.maxY=Pi)}return Zr}function ai(It,ft,jt,Zt){var yr=ft.geometry,Fr=ft.type,Zr=[];if(Fr==="Point"||Fr==="MultiPoint")for(var Vr=0;Vr<yr.length;Vr+=3)Zr.push(yr[Vr]),Zr.push(yr[Vr+1]),It.numPoints++,It.numSimplified++;else if(Fr==="LineString")jr(Zr,yr,It,jt,!1,!1);else if(Fr==="MultiLineString"||Fr==="Polygon")for(Vr=0;Vr<yr.length;Vr++)jr(Zr,yr[Vr],It,jt,Fr==="Polygon",Vr===0);else if(Fr==="MultiPolygon")for(var gi=0;gi<yr.length;gi++){var Si=yr[gi];for(Vr=0;Vr<Si.length;Vr++)jr(Zr,Si[Vr],It,jt,!0,Vr===0)}if(Zr.length){var Mi=ft.tags||null;if(Fr==="LineString"&&Zt.lineMetrics){Mi={};for(var Pi in ft.tags)Mi[Pi]=ft.tags[Pi];Mi.mapbox_clip_start=yr.start/yr.size,Mi.mapbox_clip_end=yr.end/yr.size}var Gi={geometry:Zr,type:Fr==="Polygon"||Fr==="MultiPolygon"?3:Fr==="LineString"||Fr==="MultiLineString"?2:1,tags:Mi};ft.id!==null&&(Gi.id=ft.id),It.features.push(Gi)}}function jr(It,ft,jt,Zt,yr,Fr){var Zr=Zt*Zt;if(Zt>0&&ft.size<(yr?Zr:Zt)){jt.numPoints+=ft.length/3;return}for(var Vr=[],gi=0;gi<ft.length;gi+=3)(Zt===0||ft[gi+2]>Zr)&&(jt.numSimplified++,Vr.push(ft[gi]),Vr.push(ft[gi+1])),jt.numPoints++;yr&&ri(Vr,Fr),It.push(Vr)}function ri(It,ft){for(var jt=0,Zt=0,yr=It.length,Fr=yr-2;Zt<yr;Fr=Zt,Zt+=2)jt+=(It[Zt]-It[Fr])*(It[Zt+1]+It[Fr+1]);if(jt>0===ft)for(Zt=0,yr=It.length;Zt<yr/2;Zt+=2){var Zr=It[Zt],Vr=It[Zt+1];It[Zt]=It[yr-2-Zt],It[Zt+1]=It[yr-1-Zt],It[yr-2-Zt]=Zr,It[yr-1-Zt]=Vr}}function bi(It,ft){return new nn(It,ft)}function nn(It,ft){ft=this.options=Ni(Object.create(this.options),ft);var jt=ft.debug;if(jt&&console.time("preprocess data"),ft.maxZoom<0||ft.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(ft.promoteId&&ft.generateId)throw new Error("promoteId and generateId cannot be used together.");var Zt=Ht(It,ft);this.tiles={},this.tileCoords=[],jt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",ft.indexMaxZoom,ft.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Zt=Se(Zt,ft),Zt.length&&this.splitTile(Zt,0,0,0),jt&&(Zt.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)))}nn.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},nn.prototype.splitTile=function(It,ft,jt,Zt,yr,Fr,Zr){for(var Vr=[It,ft,jt,Zt],gi=this.options,Si=gi.debug;Vr.length;){Zt=Vr.pop(),jt=Vr.pop(),ft=Vr.pop(),It=Vr.pop();var Mi=1<<ft,Pi=Wi(ft,jt,Zt),Gi=this.tiles[Pi];if(!Gi&&(Si>1&&console.time("creation"),Gi=this.tiles[Pi]=Qr(It,ft,jt,Zt,gi),this.tileCoords.push({z:ft,x:jt,y:Zt}),Si)){Si>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",ft,jt,Zt,Gi.numFeatures,Gi.numPoints,Gi.numSimplified),console.timeEnd("creation"));var Ki="z"+ft;this.stats[Ki]=(this.stats[Ki]||0)+1,this.total++}if(Gi.source=It,yr){if(ft===gi.maxZoom||ft===yr)continue;var ka=1<<yr-ft;if(jt!==Math.floor(Fr/ka)||Zt!==Math.floor(Zr/ka))continue}else if(ft===gi.indexMaxZoom||Gi.numPoints<=gi.indexMaxPoints)continue;if(Gi.source=null,It.length!==0){Si>1&&console.time("clipping");var jn=.5*gi.buffer/gi.extent,la=.5-jn,Fa=.5+jn,Ra=1+jn,jo,oa,Sn,Ha,oo,xn;jo=oa=Sn=Ha=null,oo=ut(It,Mi,jt-jn,jt+Fa,0,Gi.minX,Gi.maxX,gi),xn=ut(It,Mi,jt+la,jt+Ra,0,Gi.minX,Gi.maxX,gi),It=null,oo&&(jo=ut(oo,Mi,Zt-jn,Zt+Fa,1,Gi.minY,Gi.maxY,gi),oa=ut(oo,Mi,Zt+la,Zt+Ra,1,Gi.minY,Gi.maxY,gi),oo=null),xn&&(Sn=ut(xn,Mi,Zt-jn,Zt+Fa,1,Gi.minY,Gi.maxY,gi),Ha=ut(xn,Mi,Zt+la,Zt+Ra,1,Gi.minY,Gi.maxY,gi),xn=null),Si>1&&console.timeEnd("clipping"),Vr.push(jo||[],ft+1,jt*2,Zt*2),Vr.push(oa||[],ft+1,jt*2,Zt*2+1),Vr.push(Sn||[],ft+1,jt*2+1,Zt*2),Vr.push(Ha||[],ft+1,jt*2+1,Zt*2+1)}}},nn.prototype.getTile=function(It,ft,jt){var Zt=this.options,yr=Zt.extent,Fr=Zt.debug;if(It<0||It>24)return null;var Zr=1<<It;ft=(ft%Zr+Zr)%Zr;var Vr=Wi(It,ft,jt);if(this.tiles[Vr])return Vt(this.tiles[Vr],yr);Fr>1&&console.log("drilling down to z%d-%d-%d",It,ft,jt);for(var gi=It,Si=ft,Mi=jt,Pi;!Pi&&gi>0;)gi--,Si=Math.floor(Si/2),Mi=Math.floor(Mi/2),Pi=this.tiles[Wi(gi,Si,Mi)];return!Pi||!Pi.source?null:(Fr>1&&console.log("found parent tile z%d-%d-%d",gi,Si,Mi),Fr>1&&console.time("drilling down"),this.splitTile(Pi.source,gi,Si,Mi,It,ft,jt),Fr>1&&console.timeEnd("drilling down"),this.tiles[Vr]?Vt(this.tiles[Vr],yr):null)};function Wi(It,ft,jt){return((1<<It)*jt+ft)*32+It}function Ni(It,ft){for(var jt in ft)It[jt]=ft[jt];return It}function _n(It,ft){var jt=It.tileID.canonical;if(!this._geoJSONIndex)return ft(null,null);var Zt=this._geoJSONIndex.getTile(jt.z,jt.x,jt.y);if(!Zt)return ft(null,null);var yr=new C(Zt.features),Fr=F(yr);(Fr.byteOffset!==0||Fr.byteLength!==Fr.buffer.byteLength)&&(Fr=new Uint8Array(Fr)),ft(null,{vectorTile:yr,rawData:Fr.buffer})}var $i=function(It){function ft(jt,Zt,yr,Fr){It.call(this,jt,Zt,yr,_n),Fr&&(this.loadGeoJSON=Fr)}return It&&(ft.__proto__=It),ft.prototype=Object.create(It&&It.prototype),ft.prototype.constructor=ft,ft.prototype.loadData=function(Zt,yr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=yr,this._pendingLoadDataParams=Zt,this._state&&this._state!=="Idle"?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},ft.prototype._loadData=function(){var Zt=this;if(!(!this._pendingCallback||!this._pendingLoadDataParams)){var yr=this._pendingCallback,Fr=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var Zr=Fr&&Fr.request&&Fr.request.collectResourceTiming?new i.RequestPerformance(Fr.request):!1;this.loadGeoJSON(Fr,function(Vr,gi){if(Vr||!gi)return yr(Vr);if(typeof gi!="object")return yr(new Error("Input data given to '"+Fr.source+"' is not a valid GeoJSON object."));p(gi,!0);try{if(Fr.filter){var Si=i.createExpression(Fr.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Si.result==="error")throw new Error(Si.value.map(function(Ki){return Ki.key+": "+Ki.message}).join(", "));var Mi=gi.features.filter(function(Ki){return Si.value.evaluate({zoom:0},Ki)});gi={type:"FeatureCollection",features:Mi}}Zt._geoJSONIndex=Fr.cluster?new ct(zn(Fr)).load(gi.features):bi(gi,Fr.geojsonVtOptions)}catch(Ki){return yr(Ki)}Zt.loaded={};var Pi={};if(Zr){var Gi=Zr.finish();Gi&&(Pi.resourceTiming={},Pi.resourceTiming[Fr.source]=JSON.parse(JSON.stringify(Gi)))}yr(null,Pi)})}},ft.prototype.coalesce=function(){this._state==="Coalescing"?this._state="Idle":this._state==="NeedsLoadData"&&(this._state="Coalescing",this._loadData())},ft.prototype.reloadTile=function(Zt,yr){var Fr=this.loaded,Zr=Zt.uid;return Fr&&Fr[Zr]?It.prototype.reloadTile.call(this,Zt,yr):this.loadTile(Zt,yr)},ft.prototype.loadGeoJSON=function(Zt,yr){if(Zt.request)i.getJSON(Zt.request,yr);else if(typeof Zt.data=="string")try{return yr(null,JSON.parse(Zt.data))}catch(Fr){return yr(new Error("Input data given to '"+Zt.source+"' is not a valid GeoJSON object."))}else return yr(new Error("Input data given to '"+Zt.source+"' is not a valid GeoJSON object."))},ft.prototype.removeSource=function(Zt,yr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),yr()},ft.prototype.getClusterExpansionZoom=function(Zt,yr){try{yr(null,this._geoJSONIndex.getClusterExpansionZoom(Zt.clusterId))}catch(Fr){yr(Fr)}},ft.prototype.getClusterChildren=function(Zt,yr){try{yr(null,this._geoJSONIndex.getChildren(Zt.clusterId))}catch(Fr){yr(Fr)}},ft.prototype.getClusterLeaves=function(Zt,yr){try{yr(null,this._geoJSONIndex.getLeaves(Zt.clusterId,Zt.limit,Zt.offset))}catch(Fr){yr(Fr)}},ft}(v);function zn(It){var ft=It.superclusterOptions,jt=It.clusterProperties;if(!jt||!ft)return ft;for(var Zt={},yr={},Fr={accumulated:null,zoom:0},Zr={properties:null},Vr=Object.keys(jt),gi=0,Si=Vr;gi<Si.length;gi+=1){var Mi=Si[gi],Pi=jt[Mi],Gi=Pi[0],Ki=Pi[1],ka=i.createExpression(Ki),jn=i.createExpression(typeof Gi=="string"?[Gi,["accumulated"],["get",Mi]]:Gi);Zt[Mi]=ka.value,yr[Mi]=jn.value}return ft.map=function(la){Zr.properties=la;for(var Fa={},Ra=0,jo=Vr;Ra<jo.length;Ra+=1){var oa=jo[Ra];Fa[oa]=Zt[oa].evaluate(Fr,Zr)}return Fa},ft.reduce=function(la,Fa){Zr.properties=Fa;for(var Ra=0,jo=Vr;Ra<jo.length;Ra+=1){var oa=jo[Ra];Fr.accumulated=la[oa],la[oa]=yr[oa].evaluate(Fr,Zr)}},ft}var Wn=function(ft){var jt=this;this.self=ft,this.actor=new i.Actor(ft,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:v,geojson:$i},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(Zt,yr){if(jt.workerSourceTypes[Zt])throw new Error('Worker source with name "'+Zt+'" already registered.');jt.workerSourceTypes[Zt]=yr},this.self.registerRTLTextPlugin=function(Zt){if(i.plugin.isParsed())throw new Error("RTL text plugin already registered.");i.plugin.applyArabicShaping=Zt.applyArabicShaping,i.plugin.processBidirectionalText=Zt.processBidirectionalText,i.plugin.processStyledBidirectionalText=Zt.processStyledBidirectionalText}};return Wn.prototype.setReferrer=function(ft,jt){this.referrer=jt},Wn.prototype.setImages=function(ft,jt,Zt){this.availableImages[ft]=jt;for(var yr in this.workerSources[ft]){var Fr=this.workerSources[ft][yr];for(var Zr in Fr)Fr[Zr].availableImages=jt}Zt()},Wn.prototype.setLayers=function(ft,jt,Zt){this.getLayerIndex(ft).replace(jt),Zt()},Wn.prototype.updateLayers=function(ft,jt,Zt){this.getLayerIndex(ft).update(jt.layers,jt.removedIds),Zt()},Wn.prototype.loadTile=function(ft,jt,Zt){this.getWorkerSource(ft,jt.type,jt.source).loadTile(jt,Zt)},Wn.prototype.loadDEMTile=function(ft,jt,Zt){this.getDEMWorkerSource(ft,jt.source).loadTile(jt,Zt)},Wn.prototype.reloadTile=function(ft,jt,Zt){this.getWorkerSource(ft,jt.type,jt.source).reloadTile(jt,Zt)},Wn.prototype.abortTile=function(ft,jt,Zt){this.getWorkerSource(ft,jt.type,jt.source).abortTile(jt,Zt)},Wn.prototype.removeTile=function(ft,jt,Zt){this.getWorkerSource(ft,jt.type,jt.source).removeTile(jt,Zt)},Wn.prototype.removeDEMTile=function(ft,jt){this.getDEMWorkerSource(ft,jt.source).removeTile(jt)},Wn.prototype.removeSource=function(ft,jt,Zt){if(!(!this.workerSources[ft]||!this.workerSources[ft][jt.type]||!this.workerSources[ft][jt.type][jt.source])){var yr=this.workerSources[ft][jt.type][jt.source];delete this.workerSources[ft][jt.type][jt.source],yr.removeSource!==void 0?yr.removeSource(jt,Zt):Zt()}},Wn.prototype.loadWorkerSource=function(ft,jt,Zt){try{this.self.importScripts(jt.url),Zt()}catch(yr){Zt(yr.toString())}},Wn.prototype.syncRTLPluginState=function(ft,jt,Zt){try{i.plugin.setState(jt);var yr=i.plugin.getPluginURL();if(i.plugin.isLoaded()&&!i.plugin.isParsed()&&yr!=null){this.self.importScripts(yr);var Fr=i.plugin.isParsed(),Zr=Fr?void 0:new Error("RTL Text Plugin failed to import scripts from "+yr);Zt(Zr,Fr)}}catch(Vr){Zt(Vr.toString())}},Wn.prototype.getAvailableImages=function(ft){var jt=this.availableImages[ft];return jt||(jt=[]),jt},Wn.prototype.getLayerIndex=function(ft){var jt=this.layerIndexes[ft];return jt||(jt=this.layerIndexes[ft]=new l),jt},Wn.prototype.getWorkerSource=function(ft,jt,Zt){var yr=this;if(this.workerSources[ft]||(this.workerSources[ft]={}),this.workerSources[ft][jt]||(this.workerSources[ft][jt]={}),!this.workerSources[ft][jt][Zt]){var Fr={send:function(Zr,Vr,gi){yr.actor.send(Zr,Vr,gi,ft)}};this.workerSources[ft][jt][Zt]=new this.workerSourceTypes[jt](Fr,this.getLayerIndex(ft),this.getAvailableImages(ft))}return this.workerSources[ft][jt][Zt]},Wn.prototype.getDEMWorkerSource=function(ft,jt){return this.demWorkerSources[ft]||(this.demWorkerSources[ft]={}),this.demWorkerSources[ft][jt]||(this.demWorkerSources[ft][jt]=new b),this.demWorkerSources[ft][jt]},Wn.prototype.enforceCacheSizeLimit=function(ft,jt){i.enforceCacheSizeLimit(jt)},typeof WorkerGlobalScope!="undefined"&&typeof self!="undefined"&&self instanceof WorkerGlobalScope&&(self.worker=new Wn(self)),Wn}),n(["./shared"],function(i){"use strict";var a=i.createCommonjsModule(function(Y){Y.exports?Y.exports=z:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=z,window.mapboxgl.notSupportedReason=K);function z(rr){return!K(rr)}function K(rr){if(!O())return"not a browser";if(!$())return"insufficent Array support";if(!pe())return"insufficient Function support";if(!de())return"insufficient Object support";if(!Ie())return"insufficient JSON support";if(!$e())return"insufficient worker support";if(!pt())return"insufficient Uint8ClampedArray support";if(!Kt())return"insufficient ArrayBuffer support";if(!ir())return"insufficient Canvas/getImageData support";if(!vt(rr&&rr.failIfMajorPerformanceCaveat))return"insufficient WebGL support"}function O(){return typeof window!="undefined"&&typeof document!="undefined"}function $(){return 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 pe(){return Function.prototype&&Function.prototype.bind}function de(){return 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}function Ie(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function $e(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var rr=new Blob([""],{type:"text/javascript"}),dr=URL.createObjectURL(rr),pr,kr;try{kr=new Worker(dr),pr=!0}catch(Ar){pr=!1}return kr&&kr.terminate(),URL.revokeObjectURL(dr),pr}function pt(){return"Uint8ClampedArray"in window}function Kt(){return ArrayBuffer.isView}function ir(){var rr=document.createElement("canvas");rr.width=rr.height=1;var dr=rr.getContext("2d");if(!dr)return!1;var pr=dr.getImageData(0,0,1,1);return pr&&pr.width===rr.width}var Jt={};function vt(rr){return Jt[rr]===void 0&&(Jt[rr]=Wt(rr)),Jt[rr]}z.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};function Pt(rr){var dr=document.createElement("canvas"),pr=Object.create(z.webGLContextAttributes);return pr.failIfMajorPerformanceCaveat=rr,dr.probablySupportsContext?dr.probablySupportsContext("webgl",pr)||dr.probablySupportsContext("experimental-webgl",pr):dr.supportsContext?dr.supportsContext("webgl",pr)||dr.supportsContext("experimental-webgl",pr):dr.getContext("webgl",pr)||dr.getContext("experimental-webgl",pr)}function Wt(rr){var dr=Pt(rr);if(!dr)return!1;var pr=dr.createShader(dr.VERTEX_SHADER);return!pr||dr.isContextLost()?!1:(dr.shaderSource(pr,"void main() {}"),dr.compileShader(pr),dr.getShaderParameter(pr,dr.COMPILE_STATUS)===!0)}}),o={};o.create=function(Y,z,K){var O=i.window.document.createElement(Y);return z!==void 0&&(O.className=z),K&&K.appendChild(O),O},o.createNS=function(Y,z){var K=i.window.document.createElementNS(Y,z);return K};var s=i.window.document&&i.window.document.documentElement.style;function l(Y){if(!s)return Y[0];for(var z=0;z<Y.length;z++)if(Y[z]in s)return Y[z];return Y[0]}var u=l(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),c;o.disableDrag=function(){s&&u&&(c=s[u],s[u]="none")},o.enableDrag=function(){s&&u&&(s[u]=c)};var f=l(["transform","WebkitTransform"]);o.setTransform=function(Y,z){Y.style[f]=z};var h=!1;try{var d=Object.defineProperty({},"passive",{get:function(){h=!0}});i.window.addEventListener("test",d,d),i.window.removeEventListener("test",d,d)}catch(Y){h=!1}o.addEventListener=function(Y,z,K,O){O===void 0&&(O={}),"passive"in O&&h?Y.addEventListener(z,K,O):Y.addEventListener(z,K,O.capture)},o.removeEventListener=function(Y,z,K,O){O===void 0&&(O={}),"passive"in O&&h?Y.removeEventListener(z,K,O):Y.removeEventListener(z,K,O.capture)};var v=function(Y){Y.preventDefault(),Y.stopPropagation(),i.window.removeEventListener("click",v,!0)};o.suppressClick=function(){i.window.addEventListener("click",v,!0),i.window.setTimeout(function(){i.window.removeEventListener("click",v,!0)},0)},o.mousePos=function(Y,z){var K=Y.getBoundingClientRect();return new i.Point(z.clientX-K.left-Y.clientLeft,z.clientY-K.top-Y.clientTop)},o.touchPos=function(Y,z){for(var K=Y.getBoundingClientRect(),O=[],$=0;$<z.length;$++)O.push(new i.Point(z[$].clientX-K.left-Y.clientLeft,z[$].clientY-K.top-Y.clientTop));return O},o.mouseButton=function(Y){return typeof i.window.InstallTrigger!="undefined"&&Y.button===2&&Y.ctrlKey&&i.window.navigator.platform.toUpperCase().indexOf("MAC")>=0?0:Y.button},o.remove=function(Y){Y.parentNode&&Y.parentNode.removeChild(Y)};function x(Y,z,K){var O,$,pe,de=i.browser.devicePixelRatio>1?"@2x":"",Ie=i.getJSON(z.transformRequest(z.normalizeSpriteURL(Y,de,".json"),i.ResourceType.SpriteJSON),function(Kt,ir){Ie=null,pe||(pe=Kt,O=ir,pt())}),$e=i.getImage(z.transformRequest(z.normalizeSpriteURL(Y,de,".png"),i.ResourceType.SpriteImage),function(Kt,ir){$e=null,pe||(pe=Kt,$=ir,pt())});function pt(){if(pe)K(pe);else if(O&&$){var Kt=i.browser.getImageData($),ir={};for(var Jt in O){var vt=O[Jt],Pt=vt.width,Wt=vt.height,rr=vt.x,dr=vt.y,pr=vt.sdf,kr=vt.pixelRatio,Ar=vt.stretchX,gr=vt.stretchY,Cr=vt.content,cr=new i.RGBAImage({width:Pt,height:Wt});i.RGBAImage.copy(Kt,cr,{x:rr,y:dr},{x:0,y:0},{width:Pt,height:Wt}),ir[Jt]={data:cr,pixelRatio:kr,sdf:pr,stretchX:Ar,stretchY:gr,content:Cr}}K(null,ir)}}return{cancel:function(){Ie&&(Ie.cancel(),Ie=null),$e&&($e.cancel(),$e=null)}}}function b(Y){var z=Y.userImage;if(z&&z.render){var K=z.render();if(K)return Y.data.replace(new Uint8Array(z.data.buffer)),!0}return!1}var p=1,E=function(Y){function z(){Y.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new i.RGBAImage({width:1,height:1}),this.dirty=!0}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.isLoaded=function(){return this.loaded},z.prototype.setLoaded=function(O){if(this.loaded!==O&&(this.loaded=O,O)){for(var $=0,pe=this.requestors;$<pe.length;$+=1){var de=pe[$],Ie=de.ids,$e=de.callback;this._notify(Ie,$e)}this.requestors=[]}},z.prototype.getImage=function(O){return this.images[O]},z.prototype.addImage=function(O,$){this._validate(O,$)&&(this.images[O]=$)},z.prototype._validate=function(O,$){var pe=!0;return this._validateStretch($.stretchX,$.data&&$.data.width)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "stretchX" value'))),pe=!1),this._validateStretch($.stretchY,$.data&&$.data.height)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "stretchY" value'))),pe=!1),this._validateContent($.content,$)||(this.fire(new i.ErrorEvent(new Error('Image "'+O+'" has invalid "content" value'))),pe=!1),pe},z.prototype._validateStretch=function(O,$){if(!O)return!0;for(var pe=0,de=0,Ie=O;de<Ie.length;de+=1){var $e=Ie[de];if($e[0]<pe||$e[1]<$e[0]||$<$e[1])return!1;pe=$e[1]}return!0},z.prototype._validateContent=function(O,$){return O?!(O.length!==4||O[0]<0||$.data.width<O[0]||O[1]<0||$.data.height<O[1]||O[2]<0||$.data.width<O[2]||O[3]<0||$.data.height<O[3]||O[2]<O[0]||O[3]<O[1]):!0},z.prototype.updateImage=function(O,$){var pe=this.images[O];$.version=pe.version+1,this.images[O]=$,this.updatedImages[O]=!0},z.prototype.removeImage=function(O){var $=this.images[O];delete this.images[O],delete this.patterns[O],$.userImage&&$.userImage.onRemove&&$.userImage.onRemove()},z.prototype.listImages=function(){return Object.keys(this.images)},z.prototype.getImages=function(O,$){var pe=!0;if(!this.isLoaded())for(var de=0,Ie=O;de<Ie.length;de+=1){var $e=Ie[de];this.images[$e]||(pe=!1)}this.isLoaded()||pe?this._notify(O,$):this.requestors.push({ids:O,callback:$})},z.prototype._notify=function(O,$){for(var pe={},de=0,Ie=O;de<Ie.length;de+=1){var $e=Ie[de];this.images[$e]||this.fire(new i.Event("styleimagemissing",{id:$e}));var pt=this.images[$e];pt?pe[$e]={data:pt.data.clone(),pixelRatio:pt.pixelRatio,sdf:pt.sdf,version:pt.version,stretchX:pt.stretchX,stretchY:pt.stretchY,content:pt.content,hasRenderCallback:!!(pt.userImage&&pt.userImage.render)}:i.warnOnce('Image "'+$e+'" 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.')}$(null,pe)},z.prototype.getPixelSize=function(){var O=this.atlasImage,$=O.width,pe=O.height;return{width:$,height:pe}},z.prototype.getPattern=function(O){var $=this.patterns[O],pe=this.getImage(O);if(!pe)return null;if($&&$.position.version===pe.version)return $.position;if($)$.position.version=pe.version;else{var de=pe.data.width+p*2,Ie=pe.data.height+p*2,$e={w:de,h:Ie,x:0,y:0},pt=new i.ImagePosition($e,pe);this.patterns[O]={bin:$e,position:pt}}return this._updatePatternAtlas(),this.patterns[O].position},z.prototype.bind=function(O){var $=O.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new i.Texture(O,this.atlasImage,$.RGBA),this.atlasTexture.bind($.LINEAR,$.CLAMP_TO_EDGE)},z.prototype._updatePatternAtlas=function(){var O=[];for(var $ in this.patterns)O.push(this.patterns[$].bin);var pe=i.potpack(O),de=pe.w,Ie=pe.h,$e=this.atlasImage;$e.resize({width:de||1,height:Ie||1});for(var pt in this.patterns){var Kt=this.patterns[pt],ir=Kt.bin,Jt=ir.x+p,vt=ir.y+p,Pt=this.images[pt].data,Wt=Pt.width,rr=Pt.height;i.RGBAImage.copy(Pt,$e,{x:0,y:0},{x:Jt,y:vt},{width:Wt,height:rr}),i.RGBAImage.copy(Pt,$e,{x:0,y:rr-1},{x:Jt,y:vt-1},{width:Wt,height:1}),i.RGBAImage.copy(Pt,$e,{x:0,y:0},{x:Jt,y:vt+rr},{width:Wt,height:1}),i.RGBAImage.copy(Pt,$e,{x:Wt-1,y:0},{x:Jt-1,y:vt},{width:1,height:rr}),i.RGBAImage.copy(Pt,$e,{x:0,y:0},{x:Jt+Wt,y:vt},{width:1,height:rr})}this.dirty=!0},z.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},z.prototype.dispatchRenderCallbacks=function(O){for(var $=0,pe=O;$<pe.length;$+=1){var de=pe[$];if(!this.callbackDispatchedThisFrame[de]){this.callbackDispatchedThisFrame[de]=!0;var Ie=this.images[de],$e=b(Ie);$e&&this.updateImage(de,Ie)}}},z}(i.Evented);function k(Y,z,K,O,$){var pe=z*256,de=pe+255,Ie=O.transformRequest(O.normalizeGlyphsURL(K).replace("{fontstack}",Y).replace("{range}",pe+"-"+de),i.ResourceType.Glyphs);i.getArrayBuffer(Ie,function($e,pt){if($e)$($e);else if(pt){for(var Kt={},ir=0,Jt=i.parseGlyphPBF(pt);ir<Jt.length;ir+=1){var vt=Jt[ir];Kt[vt.id]=vt}$(null,Kt)}})}var A=C,L=C,_=1e20;function C(Y,z,K,O,$,pe){this.fontSize=Y||24,this.buffer=z===void 0?3:z,this.cutoff=O||.25,this.fontFamily=$||"sans-serif",this.fontWeight=pe||"normal",this.radius=K||8;var de=this.size=this.fontSize+this.buffer*2;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=de,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(de*de),this.gridInner=new Float64Array(de*de),this.f=new Float64Array(de),this.d=new Float64Array(de),this.z=new Float64Array(de+1),this.v=new Int16Array(de),this.middle=Math.round(de/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}C.prototype.draw=function(Y){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(Y,this.buffer,this.middle);for(var z=this.ctx.getImageData(0,0,this.size,this.size),K=new Uint8ClampedArray(this.size*this.size),O=0;O<this.size*this.size;O++){var $=z.data[O*4+3]/255;this.gridOuter[O]=$===1?0:$===0?_:Math.pow(Math.max(0,.5-$),2),this.gridInner[O]=$===1?_:$===0?0:Math.pow(Math.max(0,$-.5),2)}for(M(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),M(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),O=0;O<this.size*this.size;O++){var pe=this.gridOuter[O]-this.gridInner[O];K[O]=Math.max(0,Math.min(255,Math.round(255-255*(pe/this.radius+this.cutoff))))}return K};function M(Y,z,K,O,$,pe,de){for(var Ie=0;Ie<z;Ie++){for(var $e=0;$e<K;$e++)O[$e]=Y[$e*z+Ie];for(g(O,$,pe,de,K),$e=0;$e<K;$e++)Y[$e*z+Ie]=$[$e]}for($e=0;$e<K;$e++){for(Ie=0;Ie<z;Ie++)O[Ie]=Y[$e*z+Ie];for(g(O,$,pe,de,z),Ie=0;Ie<z;Ie++)Y[$e*z+Ie]=Math.sqrt($[Ie])}}function g(Y,z,K,O,$){K[0]=0,O[0]=-_,O[1]=+_;for(var pe=1,de=0;pe<$;pe++){for(var Ie=(Y[pe]+pe*pe-(Y[K[de]]+K[de]*K[de]))/(2*pe-2*K[de]);Ie<=O[de];)de--,Ie=(Y[pe]+pe*pe-(Y[K[de]]+K[de]*K[de]))/(2*pe-2*K[de]);de++,K[de]=pe,O[de]=Ie,O[de+1]=+_}for(pe=0,de=0;pe<$;pe++){for(;O[de+1]<pe;)de++;z[pe]=(pe-K[de])*(pe-K[de])+Y[K[de]]}}A.default=L;var P=function(z,K){this.requestManager=z,this.localIdeographFontFamily=K,this.entries={}};P.prototype.setURL=function(z){this.url=z},P.prototype.getGlyphs=function(z,K){var O=this,$=[];for(var pe in z)for(var de=0,Ie=z[pe];de<Ie.length;de+=1){var $e=Ie[de];$.push({stack:pe,id:$e})}i.asyncAll($,function(pt,Kt){var ir=pt.stack,Jt=pt.id,vt=O.entries[ir];vt||(vt=O.entries[ir]={glyphs:{},requests:{},ranges:{}});var Pt=vt.glyphs[Jt];if(Pt!==void 0){Kt(null,{stack:ir,id:Jt,glyph:Pt});return}if(Pt=O._tinySDF(vt,ir,Jt),Pt){vt.glyphs[Jt]=Pt,Kt(null,{stack:ir,id:Jt,glyph:Pt});return}var Wt=Math.floor(Jt/256);if(Wt*256>65535){Kt(new Error("glyphs > 65535 not supported"));return}if(vt.ranges[Wt]){Kt(null,{stack:ir,id:Jt,glyph:Pt});return}var rr=vt.requests[Wt];rr||(rr=vt.requests[Wt]=[],P.loadGlyphRange(ir,Wt,O.url,O.requestManager,function(dr,pr){if(pr){for(var kr in pr)O._doesCharSupportLocalGlyph(+kr)||(vt.glyphs[+kr]=pr[+kr]);vt.ranges[Wt]=!0}for(var Ar=0,gr=rr;Ar<gr.length;Ar+=1){var Cr=gr[Ar];Cr(dr,pr)}delete vt.requests[Wt]})),rr.push(function(dr,pr){dr?Kt(dr):pr&&Kt(null,{stack:ir,id:Jt,glyph:pr[Jt]||null})})},function(pt,Kt){if(pt)K(pt);else if(Kt){for(var ir={},Jt=0,vt=Kt;Jt<vt.length;Jt+=1){var Pt=vt[Jt],Wt=Pt.stack,rr=Pt.id,dr=Pt.glyph;(ir[Wt]||(ir[Wt]={}))[rr]=dr&&{id:dr.id,bitmap:dr.bitmap.clone(),metrics:dr.metrics}}K(null,ir)}})},P.prototype._doesCharSupportLocalGlyph=function(z){return!!this.localIdeographFontFamily&&(i.isChar["CJK Unified Ideographs"](z)||i.isChar["Hangul Syllables"](z)||i.isChar.Hiragana(z)||i.isChar.Katakana(z))},P.prototype._tinySDF=function(z,K,O){var $=this.localIdeographFontFamily;if($&&this._doesCharSupportLocalGlyph(O)){var pe=z.tinySDF;if(!pe){var de="400";/bold/i.test(K)?de="900":/medium/i.test(K)?de="500":/light/i.test(K)&&(de="200"),pe=z.tinySDF=new P.TinySDF(24,3,8,.25,$,de)}return{id:O,bitmap:new i.AlphaImage({width:30,height:30},pe.draw(String.fromCharCode(O))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},P.loadGlyphRange=k,P.TinySDF=A;var T=function(){this.specification=i.styleSpec.light.position};T.prototype.possiblyEvaluate=function(z,K){return i.sphericalToCartesian(z.expression.evaluate(K))},T.prototype.interpolate=function(z,K,O){return{x:i.number(z.x,K.x,O),y:i.number(z.y,K.y,O),z:i.number(z.z,K.z,O)}};var F=new i.Properties({anchor:new i.DataConstantProperty(i.styleSpec.light.anchor),position:new T,color:new i.DataConstantProperty(i.styleSpec.light.color),intensity:new i.DataConstantProperty(i.styleSpec.light.intensity)}),q="-transition",V=function(Y){function z(K){Y.call(this),this._transitionable=new i.Transitionable(F),this.setLight(K),this._transitioning=this._transitionable.untransitioned()}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getLight=function(){return this._transitionable.serialize()},z.prototype.setLight=function(O,$){if($===void 0&&($={}),!this._validate(i.validateLight,O,$))for(var pe in O){var de=O[pe];i.endsWith(pe,q)?this._transitionable.setTransition(pe.slice(0,-q.length),de):this._transitionable.setValue(pe,de)}},z.prototype.updateTransitions=function(O){this._transitioning=this._transitionable.transitioned(O,this._transitioning)},z.prototype.hasTransition=function(){return this._transitioning.hasTransition()},z.prototype.recalculate=function(O){this.properties=this._transitioning.possiblyEvaluate(O)},z.prototype._validate=function(O,$,pe){return pe&&pe.validate===!1?!1:i.emitValidationErrors(this,O.call(i.validateStyle,i.extend({value:$,style:{glyphs:!0,sprite:!0},styleSpec:i.styleSpec})))},z}(i.Evented),H=function(z,K){this.width=z,this.height=K,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};H.prototype.getDash=function(z,K){var O=z.join(",")+String(K);return this.dashEntry[O]||(this.dashEntry[O]=this.addDash(z,K)),this.dashEntry[O]},H.prototype.getDashRanges=function(z,K,O){var $=z.length%2===1,pe=[],de=$?-z[z.length-1]*O:0,Ie=z[0]*O,$e=!0;pe.push({left:de,right:Ie,isDash:$e,zeroLength:z[0]===0});for(var pt=z[0],Kt=1;Kt<z.length;Kt++){$e=!$e;var ir=z[Kt];de=pt*O,pt+=ir,Ie=pt*O,pe.push({left:de,right:Ie,isDash:$e,zeroLength:ir===0})}return pe},H.prototype.addRoundDash=function(z,K,O){for(var $=K/2,pe=-O;pe<=O;pe++)for(var de=this.nextRow+O+pe,Ie=this.width*de,$e=0,pt=z[$e],Kt=0;Kt<this.width;Kt++){Kt/pt.right>1&&(pt=z[++$e]);var ir=Math.abs(Kt-pt.left),Jt=Math.abs(Kt-pt.right),vt=Math.min(ir,Jt),Pt=void 0,Wt=pe/O*($+1);if(pt.isDash){var rr=$-Math.abs(Wt);Pt=Math.sqrt(vt*vt+rr*rr)}else Pt=$-Math.sqrt(vt*vt+Wt*Wt);this.data[Ie+Kt]=Math.max(0,Math.min(255,Pt+128))}},H.prototype.addRegularDash=function(z){for(var K=z.length-1;K>=0;--K){var O=z[K],$=z[K+1];O.zeroLength?z.splice(K,1):$&&$.isDash===O.isDash&&($.left=O.left,z.splice(K,1))}var pe=z[0],de=z[z.length-1];pe.isDash===de.isDash&&(pe.left=de.left-this.width,de.right=pe.right+this.width);for(var Ie=this.width*this.nextRow,$e=0,pt=z[$e],Kt=0;Kt<this.width;Kt++){Kt/pt.right>1&&(pt=z[++$e]);var ir=Math.abs(Kt-pt.left),Jt=Math.abs(Kt-pt.right),vt=Math.min(ir,Jt),Pt=pt.isDash?vt:-vt;this.data[Ie+Kt]=Math.max(0,Math.min(255,Pt+128))}},H.prototype.addDash=function(z,K){var O=K?7:0,$=2*O+1;if(this.nextRow+$>this.height)return i.warnOnce("LineAtlas out of space"),null;for(var pe=0,de=0;de<z.length;de++)pe+=z[de];if(pe!==0){var Ie=this.width/pe,$e=this.getDashRanges(z,this.width,Ie);K?this.addRoundDash($e,Ie,O):this.addRegularDash($e)}var pt={y:(this.nextRow+O+.5)/this.height,height:2*O/this.height,width:pe};return this.nextRow+=$,this.dirty=!0,pt},H.prototype.bind=function(z){var K=z.gl;this.texture?(K.bindTexture(K.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,K.texSubImage2D(K.TEXTURE_2D,0,0,0,this.width,this.height,K.ALPHA,K.UNSIGNED_BYTE,this.data))):(this.texture=K.createTexture(),K.bindTexture(K.TEXTURE_2D,this.texture),K.texParameteri(K.TEXTURE_2D,K.TEXTURE_WRAP_S,K.REPEAT),K.texParameteri(K.TEXTURE_2D,K.TEXTURE_WRAP_T,K.REPEAT),K.texParameteri(K.TEXTURE_2D,K.TEXTURE_MIN_FILTER,K.LINEAR),K.texParameteri(K.TEXTURE_2D,K.TEXTURE_MAG_FILTER,K.LINEAR),K.texImage2D(K.TEXTURE_2D,0,K.ALPHA,this.width,this.height,0,K.ALPHA,K.UNSIGNED_BYTE,this.data))};var X=function Y(z,K){this.workerPool=z,this.actors=[],this.currentActor=0,this.id=i.uniqueId();for(var O=this.workerPool.acquire(this.id),$=0;$<O.length;$++){var pe=O[$],de=new Y.Actor(pe,K,this.id);de.name="Worker "+$,this.actors.push(de)}};X.prototype.broadcast=function(z,K,O){O=O||function(){},i.asyncAll(this.actors,function($,pe){$.send(z,K,pe)},O)},X.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},X.prototype.remove=function(){this.actors.forEach(function(z){z.remove()}),this.actors=[],this.workerPool.release(this.id)},X.Actor=i.Actor;function G(Y,z,K){var O=function($,pe){if($)return K($);if(pe){var de=i.pick(i.extend(pe,Y),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);pe.vector_layers&&(de.vectorLayers=pe.vector_layers,de.vectorLayerIds=de.vectorLayers.map(function(Ie){return Ie.id})),de.tiles=z.canonicalizeTileset(de,Y.url),K(null,de)}};return Y.url?i.getJSON(z.transformRequest(z.normalizeSourceURL(Y.url),i.ResourceType.Source),O):i.browser.frame(function(){return O(null,Y)})}var N=function(z,K,O){this.bounds=i.LngLatBounds.convert(this.validateBounds(z)),this.minzoom=K||0,this.maxzoom=O||24};N.prototype.validateBounds=function(z){return!Array.isArray(z)||z.length!==4?[-180,-90,180,90]:[Math.max(-180,z[0]),Math.max(-90,z[1]),Math.min(180,z[2]),Math.min(90,z[3])]},N.prototype.contains=function(z){var K=Math.pow(2,z.z),O={minX:Math.floor(i.mercatorXfromLng(this.bounds.getWest())*K),minY:Math.floor(i.mercatorYfromLat(this.bounds.getNorth())*K),maxX:Math.ceil(i.mercatorXfromLng(this.bounds.getEast())*K),maxY:Math.ceil(i.mercatorYfromLat(this.bounds.getSouth())*K)},$=z.x>=O.minX&&z.x<O.maxX&&z.y>=O.minY&&z.y<O.maxY;return $};var W=function(Y){function z(K,O,$,pe){if(Y.call(this),this.id=K,this.dispatcher=$,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,i.extend(this,i.pick(O,["url","scheme","tileSize","promoteId"])),this._options=i.extend({type:"vector"},O),this._collectResourceTiming=O.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(pe)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.load=function(){var O=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=G(this._options,this.map._requestManager,function($,pe){O._tileJSONRequest=null,O._loaded=!0,$?O.fire(new i.ErrorEvent($)):pe&&(i.extend(O,pe),pe.bounds&&(O.tileBounds=new N(pe.bounds,O.minzoom,O.maxzoom)),i.postTurnstileEvent(pe.tiles,O.map._requestManager._customAccessToken),i.postMapLoadEvent(pe.tiles,O.map._getMapId(),O.map._requestManager._skuToken,O.map._requestManager._customAccessToken),O.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})),O.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})))})},z.prototype.loaded=function(){return this._loaded},z.prototype.hasTile=function(O){return!this.tileBounds||this.tileBounds.contains(O.canonical)},z.prototype.onAdd=function(O){this.map=O,this.load()},z.prototype.setSourceProperty=function(O){this._tileJSONRequest&&this._tileJSONRequest.cancel(),O();var $=this.map.style.sourceCaches[this.id];$.clearTiles(),this.load()},z.prototype.setTiles=function(O){var $=this;return this.setSourceProperty(function(){$._options.tiles=O}),this},z.prototype.setUrl=function(O){var $=this;return this.setSourceProperty(function(){$.url=O,$._options.url=O}),this},z.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},z.prototype.serialize=function(){return i.extend({},this._options)},z.prototype.loadTile=function(O,$){var pe=this.map._requestManager.normalizeTileURL(O.tileID.canonical.url(this.tiles,this.scheme)),de={request:this.map._requestManager.transformRequest(pe,i.ResourceType.Tile),uid:O.uid,tileID:O.tileID,zoom:O.tileID.overscaledZ,tileSize:this.tileSize*O.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};de.request.collectResourceTiming=this._collectResourceTiming,!O.actor||O.state==="expired"?(O.actor=this.dispatcher.getActor(),O.request=O.actor.send("loadTile",de,Ie.bind(this))):O.state==="loading"?O.reloadCallback=$:O.request=O.actor.send("reloadTile",de,Ie.bind(this));function Ie($e,pt){if(delete O.request,O.aborted)return $(null);if($e&&$e.status!==404)return $($e);pt&&pt.resourceTiming&&(O.resourceTiming=pt.resourceTiming),this.map._refreshExpiredTiles&&pt&&O.setExpiryData(pt),O.loadVectorData(pt,this.map.painter),i.cacheEntryPossiblyAdded(this.dispatcher),$(null),O.reloadCallback&&(this.loadTile(O,O.reloadCallback),O.reloadCallback=null)}},z.prototype.abortTile=function(O){O.request&&(O.request.cancel(),delete O.request),O.actor&&O.actor.send("abortTile",{uid:O.uid,type:this.type,source:this.id},void 0)},z.prototype.unloadTile=function(O){O.unloadVectorData(),O.actor&&O.actor.send("removeTile",{uid:O.uid,type:this.type,source:this.id},void 0)},z.prototype.hasTransition=function(){return!1},z}(i.Evented),re=function(Y){function z(K,O,$,pe){Y.call(this),this.id=K,this.dispatcher=$,this.setEventedParent(pe),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=i.extend({type:"raster"},O),i.extend(this,i.pick(O,["url","scheme","tileSize"]))}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.load=function(){var O=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=G(this._options,this.map._requestManager,function($,pe){O._tileJSONRequest=null,O._loaded=!0,$?O.fire(new i.ErrorEvent($)):pe&&(i.extend(O,pe),pe.bounds&&(O.tileBounds=new N(pe.bounds,O.minzoom,O.maxzoom)),i.postTurnstileEvent(pe.tiles),i.postMapLoadEvent(pe.tiles,O.map._getMapId(),O.map._requestManager._skuToken),O.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})),O.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})))})},z.prototype.loaded=function(){return this._loaded},z.prototype.onAdd=function(O){this.map=O,this.load()},z.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},z.prototype.serialize=function(){return i.extend({},this._options)},z.prototype.hasTile=function(O){return!this.tileBounds||this.tileBounds.contains(O.canonical)},z.prototype.loadTile=function(O,$){var pe=this,de=this.map._requestManager.normalizeTileURL(O.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);O.request=i.getImage(this.map._requestManager.transformRequest(de,i.ResourceType.Tile),function(Ie,$e){if(delete O.request,O.aborted)O.state="unloaded",$(null);else if(Ie)O.state="errored",$(Ie);else if($e){pe.map._refreshExpiredTiles&&O.setExpiryData($e),delete $e.cacheControl,delete $e.expires;var pt=pe.map.painter.context,Kt=pt.gl;O.texture=pe.map.painter.getTileTexture($e.width),O.texture?O.texture.update($e,{useMipmap:!0}):(O.texture=new i.Texture(pt,$e,Kt.RGBA,{useMipmap:!0}),O.texture.bind(Kt.LINEAR,Kt.CLAMP_TO_EDGE,Kt.LINEAR_MIPMAP_NEAREST),pt.extTextureFilterAnisotropic&&Kt.texParameterf(Kt.TEXTURE_2D,pt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,pt.extTextureFilterAnisotropicMax)),O.state="loaded",i.cacheEntryPossiblyAdded(pe.dispatcher),$(null)}})},z.prototype.abortTile=function(O,$){O.request&&(O.request.cancel(),delete O.request),$()},z.prototype.unloadTile=function(O,$){O.texture&&this.map.painter.saveTileTexture(O.texture),$()},z.prototype.hasTransition=function(){return!1},z}(i.Evented),ae=function(Y){function z(K,O,$,pe){Y.call(this,K,O,$,pe),this.type="raster-dem",this.maxzoom=22,this._options=i.extend({type:"raster-dem"},O),this.encoding=O.encoding||"mapbox"}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},z.prototype.loadTile=function(O,$){var pe=this.map._requestManager.normalizeTileURL(O.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);O.request=i.getImage(this.map._requestManager.transformRequest(pe,i.ResourceType.Tile),de.bind(this)),O.neighboringTiles=this._getNeighboringTiles(O.tileID);function de($e,pt){if(delete O.request,O.aborted)O.state="unloaded",$(null);else if($e)O.state="errored",$($e);else if(pt){this.map._refreshExpiredTiles&&O.setExpiryData(pt),delete pt.cacheControl,delete pt.expires;var Kt=i.window.ImageBitmap&&pt instanceof i.window.ImageBitmap&&i.offscreenCanvasSupported(),ir=Kt?pt:i.browser.getImageData(pt,1),Jt={uid:O.uid,coord:O.tileID,source:this.id,rawImageData:ir,encoding:this.encoding};(!O.actor||O.state==="expired")&&(O.actor=this.dispatcher.getActor(),O.actor.send("loadDEMTile",Jt,Ie.bind(this)))}}function Ie($e,pt){$e&&(O.state="errored",$($e)),pt&&(O.dem=pt,O.needsHillshadePrepare=!0,O.state="loaded",$(null))}},z.prototype._getNeighboringTiles=function(O){var $=O.canonical,pe=Math.pow(2,$.z),de=($.x-1+pe)%pe,Ie=$.x===0?O.wrap-1:O.wrap,$e=($.x+1+pe)%pe,pt=$.x+1===pe?O.wrap+1:O.wrap,Kt={};return Kt[new i.OverscaledTileID(O.overscaledZ,Ie,$.z,de,$.y).key]={backfilled:!1},Kt[new i.OverscaledTileID(O.overscaledZ,pt,$.z,$e,$.y).key]={backfilled:!1},$.y>0&&(Kt[new i.OverscaledTileID(O.overscaledZ,Ie,$.z,de,$.y-1).key]={backfilled:!1},Kt[new i.OverscaledTileID(O.overscaledZ,O.wrap,$.z,$.x,$.y-1).key]={backfilled:!1},Kt[new i.OverscaledTileID(O.overscaledZ,pt,$.z,$e,$.y-1).key]={backfilled:!1}),$.y+1<pe&&(Kt[new i.OverscaledTileID(O.overscaledZ,Ie,$.z,de,$.y+1).key]={backfilled:!1},Kt[new i.OverscaledTileID(O.overscaledZ,O.wrap,$.z,$.x,$.y+1).key]={backfilled:!1},Kt[new i.OverscaledTileID(O.overscaledZ,pt,$.z,$e,$.y+1).key]={backfilled:!1}),Kt},z.prototype.unloadTile=function(O){O.demTexture&&this.map.painter.saveTileTexture(O.demTexture),O.fbo&&(O.fbo.destroy(),delete O.fbo),O.dem&&delete O.dem,delete O.neighboringTiles,O.state="unloaded",O.actor&&O.actor.send("removeDEMTile",{uid:O.uid,source:this.id})},z}(re),_e=function(Y){function z(K,O,$,pe){Y.call(this),this.id=K,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=$.getActor(),this.setEventedParent(pe),this._data=O.data,this._options=i.extend({},O),this._collectResourceTiming=O.collectResourceTiming,this._resourceTiming=[],O.maxzoom!==void 0&&(this.maxzoom=O.maxzoom),O.type&&(this.type=O.type),O.attribution&&(this.attribution=O.attribution),this.promoteId=O.promoteId;var de=i.EXTENT/this.tileSize;this.workerOptions=i.extend({source:this.id,cluster:O.cluster||!1,geojsonVtOptions:{buffer:(O.buffer!==void 0?O.buffer:128)*de,tolerance:(O.tolerance!==void 0?O.tolerance:.375)*de,extent:i.EXTENT,maxZoom:this.maxzoom,lineMetrics:O.lineMetrics||!1,generateId:O.generateId||!1},superclusterOptions:{maxZoom:O.clusterMaxZoom!==void 0?Math.min(O.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,O.clusterMinPoints||2),extent:i.EXTENT,radius:(O.clusterRadius||50)*de,log:!1,generateId:O.generateId||!1},clusterProperties:O.clusterProperties,filter:O.filter},O.workerOptions)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.load=function(){var O=this;this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function($){if($){O.fire(new i.ErrorEvent($));return}var pe={dataType:"source",sourceDataType:"metadata"};O._collectResourceTiming&&O._resourceTiming&&O._resourceTiming.length>0&&(pe.resourceTiming=O._resourceTiming,O._resourceTiming=[]),O.fire(new i.Event("data",pe))})},z.prototype.onAdd=function(O){this.map=O,this.load()},z.prototype.setData=function(O){var $=this;return this._data=O,this.fire(new i.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(pe){if(pe){$.fire(new i.ErrorEvent(pe));return}var de={dataType:"source",sourceDataType:"content"};$._collectResourceTiming&&$._resourceTiming&&$._resourceTiming.length>0&&(de.resourceTiming=$._resourceTiming,$._resourceTiming=[]),$.fire(new i.Event("data",de))}),this},z.prototype.getClusterExpansionZoom=function(O,$){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:O,source:this.id},$),this},z.prototype.getClusterChildren=function(O,$){return this.actor.send("geojson.getClusterChildren",{clusterId:O,source:this.id},$),this},z.prototype.getClusterLeaves=function(O,$,pe,de){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:O,limit:$,offset:pe},de),this},z.prototype._updateWorkerData=function(O){var $=this;this._loaded=!1;var pe=i.extend({},this.workerOptions),de=this._data;typeof de=="string"?(pe.request=this.map._requestManager.transformRequest(i.browser.resolveURL(de),i.ResourceType.Source),pe.request.collectResourceTiming=this._collectResourceTiming):pe.data=JSON.stringify(de),this.actor.send(this.type+".loadData",pe,function(Ie,$e){$._removed||$e&&$e.abandoned||($._loaded=!0,$e&&$e.resourceTiming&&$e.resourceTiming[$.id]&&($._resourceTiming=$e.resourceTiming[$.id].slice(0)),$.actor.send($.type+".coalesce",{source:pe.source},null),O(Ie))})},z.prototype.loaded=function(){return this._loaded},z.prototype.loadTile=function(O,$){var pe=this,de=O.actor?"reloadTile":"loadTile";O.actor=this.actor;var Ie={type:this.type,uid:O.uid,tileID:O.tileID,zoom:O.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:i.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};O.request=this.actor.send(de,Ie,function($e,pt){return delete O.request,O.unloadVectorData(),O.aborted?$(null):$e?$($e):(O.loadVectorData(pt,pe.map.painter,de==="reloadTile"),$(null))})},z.prototype.abortTile=function(O){O.request&&(O.request.cancel(),delete O.request),O.aborted=!0},z.prototype.unloadTile=function(O){O.unloadVectorData(),this.actor.send("removeTile",{uid:O.uid,type:this.type,source:this.id})},z.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},z.prototype.serialize=function(){return i.extend({},this._options,{type:this.type,data:this._data})},z.prototype.hasTransition=function(){return!1},z}(i.Evented),Me=i.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),ke=function(Y){function z(K,O,$,pe){Y.call(this),this.id=K,this.dispatcher=$,this.coordinates=O.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(pe),this.options=O}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.load=function(O,$){var pe=this;this._loaded=!1,this.fire(new i.Event("dataloading",{dataType:"source"})),this.url=this.options.url,i.getImage(this.map._requestManager.transformRequest(this.url,i.ResourceType.Image),function(de,Ie){pe._loaded=!0,de?pe.fire(new i.ErrorEvent(de)):Ie&&(pe.image=Ie,O&&(pe.coordinates=O),$&&$(),pe._finishLoading())})},z.prototype.loaded=function(){return this._loaded},z.prototype.updateImage=function(O){var $=this;return!this.image||!O.url?this:(this.options.url=O.url,this.load(O.coordinates,function(){$.texture=null}),this)},z.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"metadata"})))},z.prototype.onAdd=function(O){this.map=O,this.load()},z.prototype.setCoordinates=function(O){var $=this;this.coordinates=O;var pe=O.map(i.MercatorCoordinate.fromLngLat);this.tileID=ge(pe),this.minzoom=this.maxzoom=this.tileID.z;var de=pe.map(function(Ie){return $.tileID.getTilePoint(Ie)._round()});return this._boundsArray=new i.StructArrayLayout4i8,this._boundsArray.emplaceBack(de[0].x,de[0].y,0,0),this._boundsArray.emplaceBack(de[1].x,de[1].y,i.EXTENT,0),this._boundsArray.emplaceBack(de[3].x,de[3].y,0,i.EXTENT),this._boundsArray.emplaceBack(de[2].x,de[2].y,i.EXTENT,i.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new i.Event("data",{dataType:"source",sourceDataType:"content"})),this},z.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var O=this.map.painter.context,$=O.gl;this.boundsBuffer||(this.boundsBuffer=O.createVertexBuffer(this._boundsArray,Me.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new i.Texture(O,this.image,$.RGBA),this.texture.bind($.LINEAR,$.CLAMP_TO_EDGE));for(var pe in this.tiles){var de=this.tiles[pe];de.state!=="loaded"&&(de.state="loaded",de.texture=this.texture)}}},z.prototype.loadTile=function(O,$){this.tileID&&this.tileID.equals(O.tileID.canonical)?(this.tiles[String(O.tileID.wrap)]=O,O.buckets={},$(null)):(O.state="errored",$(null))},z.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},z.prototype.hasTransition=function(){return!1},z}(i.Evented);function ge(Y){for(var z=1/0,K=1/0,O=-1/0,$=-1/0,pe=0,de=Y;pe<de.length;pe+=1){var Ie=de[pe];z=Math.min(z,Ie.x),K=Math.min(K,Ie.y),O=Math.max(O,Ie.x),$=Math.max($,Ie.y)}var $e=O-z,pt=$-K,Kt=Math.max($e,pt),ir=Math.max(0,Math.floor(-Math.log(Kt)/Math.LN2)),Jt=Math.pow(2,ir);return new i.CanonicalTileID(ir,Math.floor((z+O)/2*Jt),Math.floor((K+$)/2*Jt))}var ie=function(Y){function z(K,O,$,pe){Y.call(this,K,O,$,pe),this.roundZoom=!0,this.type="video",this.options=O}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.load=function(){var O=this;this._loaded=!1;var $=this.options;this.urls=[];for(var pe=0,de=$.urls;pe<de.length;pe+=1){var Ie=de[pe];this.urls.push(this.map._requestManager.transformRequest(Ie,i.ResourceType.Source).url)}i.getVideo(this.urls,function($e,pt){O._loaded=!0,$e?O.fire(new i.ErrorEvent($e)):pt&&(O.video=pt,O.video.loop=!0,O.video.addEventListener("playing",function(){O.map.triggerRepaint()}),O.map&&O.video.play(),O._finishLoading())})},z.prototype.pause=function(){this.video&&this.video.pause()},z.prototype.play=function(){this.video&&this.video.play()},z.prototype.seek=function(O){if(this.video){var $=this.video.seekable;O<$.start(0)||O>$.end(0)?this.fire(new i.ErrorEvent(new i.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+$.start(0)+" and "+$.end(0)+"-second mark."))):this.video.currentTime=O}},z.prototype.getVideo=function(){return this.video},z.prototype.onAdd=function(O){this.map||(this.map=O,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},z.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var O=this.map.painter.context,$=O.gl;this.boundsBuffer||(this.boundsBuffer=O.createVertexBuffer(this._boundsArray,Me.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind($.LINEAR,$.CLAMP_TO_EDGE),$.texSubImage2D($.TEXTURE_2D,0,0,0,$.RGBA,$.UNSIGNED_BYTE,this.video)):(this.texture=new i.Texture(O,this.video,$.RGBA),this.texture.bind($.LINEAR,$.CLAMP_TO_EDGE));for(var pe in this.tiles){var de=this.tiles[pe];de.state!=="loaded"&&(de.state="loaded",de.texture=this.texture)}}},z.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},z.prototype.hasTransition=function(){return this.video&&!this.video.paused},z}(ke),Te=function(Y){function z(K,O,$,pe){Y.call(this,K,O,$,pe),O.coordinates?(!Array.isArray(O.coordinates)||O.coordinates.length!==4||O.coordinates.some(function(de){return!Array.isArray(de)||de.length!==2||de.some(function(Ie){return typeof Ie!="number"})}))&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+K,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+K,null,'missing required property "coordinates"'))),O.animate&&typeof O.animate!="boolean"&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+K,null,'optional "animate" property must be a boolean value'))),O.canvas?typeof O.canvas!="string"&&!(O.canvas instanceof i.window.HTMLCanvasElement)&&this.fire(new i.ErrorEvent(new i.ValidationError("sources."+K,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new i.ErrorEvent(new i.ValidationError("sources."+K,null,'missing required property "canvas"'))),this.options=O,this.animate=O.animate!==void 0?O.animate:!0}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof i.window.HTMLCanvasElement?this.options.canvas:i.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new i.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},z.prototype.getCanvas=function(){return this.canvas},z.prototype.onAdd=function(O){this.map=O,this.load(),this.canvas&&this.animate&&this.play()},z.prototype.onRemove=function(){this.pause()},z.prototype.prepare=function(){var O=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,O=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,O=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var $=this.map.painter.context,pe=$.gl;this.boundsBuffer||(this.boundsBuffer=$.createVertexBuffer(this._boundsArray,Me.members)),this.boundsSegments||(this.boundsSegments=i.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(O||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new i.Texture($,this.canvas,pe.RGBA,{premultiply:!0});for(var de in this.tiles){var Ie=this.tiles[de];Ie.state!=="loaded"&&(Ie.state="loaded",Ie.texture=this.texture)}}},z.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},z.prototype.hasTransition=function(){return this._playing},z.prototype._hasInvalidDimensions=function(){for(var O=0,$=[this.canvas.width,this.canvas.height];O<$.length;O+=1){var pe=$[O];if(isNaN(pe)||pe<=0)return!0}return!1},z}(ke),Ee={vector:W,raster:re,"raster-dem":ae,geojson:_e,video:ie,image:ke,canvas:Te},Ae=function(Y,z,K,O){var $=new Ee[z.type](Y,z,K,O);if($.id!==Y)throw new Error("Expected Source id to be "+Y+" instead of "+$.id);return i.bindAll(["load","abort","unload","serialize","prepare"],$),$},ze=function(Y){return Ee[Y]},Ce=function(Y,z){Ee[Y]=z};function me(Y,z){var K=i.identity([]);return i.translate(K,K,[1,1,0]),i.scale(K,K,[Y.width*.5,Y.height*.5,1]),i.multiply(K,K,Y.calculatePosMatrix(z.toUnwrapped()))}function Re(Y,z,K){if(Y)for(var O=0,$=Y;O<$.length;O+=1){var pe=$[O],de=z[pe];if(de&&de.source===K&&de.type==="fill-extrusion")return!0}else for(var Ie in z){var $e=z[Ie];if($e.source===K&&$e.type==="fill-extrusion")return!0}return!1}function ce(Y,z,K,O,$,pe){var de=Re($&&$.layers,z,Y.id),Ie=pe.maxPitchScaleFactor(),$e=Y.tilesIn(O,Ie,de);$e.sort(ct);for(var pt=[],Kt=0,ir=$e;Kt<ir.length;Kt+=1){var Jt=ir[Kt];pt.push({wrappedTileID:Jt.tileID.wrapped().key,queryResults:Jt.tile.queryRenderedFeatures(z,K,Y._state,Jt.queryGeometry,Jt.cameraQueryGeometry,Jt.scale,$,pe,Ie,me(Y.transform,Jt.tileID))})}var vt=qt(pt);for(var Pt in vt)vt[Pt].forEach(function(Wt){var rr=Wt.feature,dr=Y.getFeatureState(rr.layer["source-layer"],rr.id);rr.source=rr.layer.source,rr.layer["source-layer"]&&(rr.sourceLayer=rr.layer["source-layer"]),rr.state=dr});return vt}function Ge(Y,z,K,O,$,pe,de){for(var Ie={},$e=pe.queryRenderedSymbols(O),pt=[],Kt=0,ir=Object.keys($e).map(Number);Kt<ir.length;Kt+=1){var Jt=ir[Kt];pt.push(de[Jt])}pt.sort(ct);for(var vt=function(){var pr=Wt[Pt],kr=pr.featureIndex.lookupSymbolFeatures($e[pr.bucketInstanceId],z,pr.bucketIndex,pr.sourceLayerIndex,$.filter,$.layers,$.availableImages,Y);for(var Ar in kr){var gr=Ie[Ar]=Ie[Ar]||[],Cr=kr[Ar];Cr.sort(function(yi,tn){var Ri=pr.featureSortOrder;if(Ri){var ln=Ri.indexOf(yi.featureIndex),Qn=Ri.indexOf(tn.featureIndex);return Qn-ln}else return tn.featureIndex-yi.featureIndex});for(var cr=0,Gr=Cr;cr<Gr.length;cr+=1){var ei=Gr[cr];gr.push(ei)}}},Pt=0,Wt=pt;Pt<Wt.length;Pt+=1)vt();var rr=function(pr){Ie[pr].forEach(function(kr){var Ar=kr.feature,gr=Y[pr],Cr=K[gr.source],cr=Cr.getFeatureState(Ar.layer["source-layer"],Ar.id);Ar.source=Ar.layer.source,Ar.layer["source-layer"]&&(Ar.sourceLayer=Ar.layer["source-layer"]),Ar.state=cr})};for(var dr in Ie)rr(dr);return Ie}function nt(Y,z){for(var K=Y.getRenderableIds().map(function($e){return Y.getTileByID($e)}),O=[],$={},pe=0;pe<K.length;pe++){var de=K[pe],Ie=de.tileID.canonical.key;$[Ie]||($[Ie]=!0,de.querySourceFeatures(O,z))}return O}function ct(Y,z){var K=Y.tileID,O=z.tileID;return K.overscaledZ-O.overscaledZ||K.canonical.y-O.canonical.y||K.wrap-O.wrap||K.canonical.x-O.canonical.x}function qt(Y){for(var z={},K={},O=0,$=Y;O<$.length;O+=1){var pe=$[O],de=pe.queryResults,Ie=pe.wrappedTileID,$e=K[Ie]=K[Ie]||{};for(var pt in de)for(var Kt=de[pt],ir=$e[pt]=$e[pt]||{},Jt=z[pt]=z[pt]||[],vt=0,Pt=Kt;vt<Pt.length;vt+=1){var Wt=Pt[vt];ir[Wt.featureIndex]||(ir[Wt.featureIndex]=!0,Jt.push(Wt))}}return z}var rt=function(z,K){this.max=z,this.onRemove=K,this.reset()};rt.prototype.reset=function(){for(var z in this.data)for(var K=0,O=this.data[z];K<O.length;K+=1){var $=O[K];$.timeout&&clearTimeout($.timeout),this.onRemove($.value)}return this.data={},this.order=[],this},rt.prototype.add=function(z,K,O){var $=this,pe=z.wrapped().key;this.data[pe]===void 0&&(this.data[pe]=[]);var de={value:K,timeout:void 0};if(O!==void 0&&(de.timeout=setTimeout(function(){$.remove(z,de)},O)),this.data[pe].push(de),this.order.push(pe),this.order.length>this.max){var Ie=this._getAndRemoveByKey(this.order[0]);Ie&&this.onRemove(Ie)}return this},rt.prototype.has=function(z){return z.wrapped().key in this.data},rt.prototype.getAndRemove=function(z){return this.has(z)?this._getAndRemoveByKey(z.wrapped().key):null},rt.prototype._getAndRemoveByKey=function(z){var K=this.data[z].shift();return K.timeout&&clearTimeout(K.timeout),this.data[z].length===0&&delete this.data[z],this.order.splice(this.order.indexOf(z),1),K.value},rt.prototype.getByKey=function(z){var K=this.data[z];return K?K[0].value:null},rt.prototype.get=function(z){if(!this.has(z))return null;var K=this.data[z.wrapped().key][0];return K.value},rt.prototype.remove=function(z,K){if(!this.has(z))return this;var O=z.wrapped().key,$=K===void 0?0:this.data[O].indexOf(K),pe=this.data[O][$];return this.data[O].splice($,1),pe.timeout&&clearTimeout(pe.timeout),this.data[O].length===0&&delete this.data[O],this.onRemove(pe.value),this.order.splice(this.order.indexOf(O),1),this},rt.prototype.setMaxSize=function(z){for(this.max=z;this.order.length>this.max;){var K=this._getAndRemoveByKey(this.order[0]);K&&this.onRemove(K)}return this},rt.prototype.filter=function(z){var K=[];for(var O in this.data)for(var $=0,pe=this.data[O];$<pe.length;$+=1){var de=pe[$];z(de.value)||K.push(de)}for(var Ie=0,$e=K;Ie<$e.length;Ie+=1){var pt=$e[Ie];this.remove(pt.value.tileID,pt)}};var ot=function(z,K,O){this.context=z;var $=z.gl;this.buffer=$.createBuffer(),this.dynamicDraw=!!O,this.context.unbindVAO(),z.bindElementBuffer.set(this.buffer),$.bufferData($.ELEMENT_ARRAY_BUFFER,K.arrayBuffer,this.dynamicDraw?$.DYNAMIC_DRAW:$.STATIC_DRAW),this.dynamicDraw||delete K.arrayBuffer};ot.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},ot.prototype.updateData=function(z){var K=this.context.gl;this.context.unbindVAO(),this.bind(),K.bufferSubData(K.ELEMENT_ARRAY_BUFFER,0,z.arrayBuffer)},ot.prototype.destroy=function(){var z=this.context.gl;this.buffer&&(z.deleteBuffer(this.buffer),delete this.buffer)};var Rt={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},kt=function(z,K,O,$){this.length=K.length,this.attributes=O,this.itemSize=K.bytesPerElement,this.dynamicDraw=$,this.context=z;var pe=z.gl;this.buffer=pe.createBuffer(),z.bindVertexBuffer.set(this.buffer),pe.bufferData(pe.ARRAY_BUFFER,K.arrayBuffer,this.dynamicDraw?pe.DYNAMIC_DRAW:pe.STATIC_DRAW),this.dynamicDraw||delete K.arrayBuffer};kt.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},kt.prototype.updateData=function(z){var K=this.context.gl;this.bind(),K.bufferSubData(K.ARRAY_BUFFER,0,z.arrayBuffer)},kt.prototype.enableAttributes=function(z,K){for(var O=0;O<this.attributes.length;O++){var $=this.attributes[O],pe=K.attributes[$.name];pe!==void 0&&z.enableVertexAttribArray(pe)}},kt.prototype.setVertexAttribPointers=function(z,K,O){for(var $=0;$<this.attributes.length;$++){var pe=this.attributes[$],de=K.attributes[pe.name];de!==void 0&&z.vertexAttribPointer(de,pe.components,z[Rt[pe.type]],!1,this.itemSize,pe.offset+this.itemSize*(O||0))}},kt.prototype.destroy=function(){var z=this.context.gl;this.buffer&&(z.deleteBuffer(this.buffer),delete this.buffer)};var Ct=function(z){this.gl=z.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};Ct.prototype.get=function(){return this.current},Ct.prototype.set=function(z){},Ct.prototype.getDefault=function(){return this.default},Ct.prototype.setDefault=function(){this.set(this.default)};var Yt=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return i.Color.transparent},z.prototype.set=function(O){var $=this.current;O.r===$.r&&O.g===$.g&&O.b===$.b&&O.a===$.a&&!this.dirty||(this.gl.clearColor(O.r,O.g,O.b,O.a),this.current=O,this.dirty=!1)},z}(Ct),xr=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return 1},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.clearDepth(O),this.current=O,this.dirty=!1)},z}(Ct),er=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return 0},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.clearStencil(O),this.current=O,this.dirty=!1)},z}(Ct),Ke=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return[!0,!0,!0,!0]},z.prototype.set=function(O){var $=this.current;O[0]===$[0]&&O[1]===$[1]&&O[2]===$[2]&&O[3]===$[3]&&!this.dirty||(this.gl.colorMask(O[0],O[1],O[2],O[3]),this.current=O,this.dirty=!1)},z}(Ct),xt=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return!0},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.depthMask(O),this.current=O,this.dirty=!1)},z}(Ct),bt=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return 255},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.stencilMask(O),this.current=O,this.dirty=!1)},z}(Ct),Lt=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},z.prototype.set=function(O){var $=this.current;O.func===$.func&&O.ref===$.ref&&O.mask===$.mask&&!this.dirty||(this.gl.stencilFunc(O.func,O.ref,O.mask),this.current=O,this.dirty=!1)},z}(Ct),St=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){var O=this.gl;return[O.KEEP,O.KEEP,O.KEEP]},z.prototype.set=function(O){var $=this.current;O[0]===$[0]&&O[1]===$[1]&&O[2]===$[2]&&!this.dirty||(this.gl.stencilOp(O[0],O[1],O[2]),this.current=O,this.dirty=!1)},z}(Ct),Et=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return!1},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;O?$.enable($.STENCIL_TEST):$.disable($.STENCIL_TEST),this.current=O,this.dirty=!1}},z}(Ct),dt=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return[0,1]},z.prototype.set=function(O){var $=this.current;O[0]===$[0]&&O[1]===$[1]&&!this.dirty||(this.gl.depthRange(O[0],O[1]),this.current=O,this.dirty=!1)},z}(Ct),Ht=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return!1},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;O?$.enable($.DEPTH_TEST):$.disable($.DEPTH_TEST),this.current=O,this.dirty=!1}},z}(Ct),$t=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return this.gl.LESS},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.depthFunc(O),this.current=O,this.dirty=!1)},z}(Ct),fr=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return!1},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;O?$.enable($.BLEND):$.disable($.BLEND),this.current=O,this.dirty=!1}},z}(Ct),_r=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){var O=this.gl;return[O.ONE,O.ZERO]},z.prototype.set=function(O){var $=this.current;O[0]===$[0]&&O[1]===$[1]&&!this.dirty||(this.gl.blendFunc(O[0],O[1]),this.current=O,this.dirty=!1)},z}(Ct),Br=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return i.Color.transparent},z.prototype.set=function(O){var $=this.current;O.r===$.r&&O.g===$.g&&O.b===$.b&&O.a===$.a&&!this.dirty||(this.gl.blendColor(O.r,O.g,O.b,O.a),this.current=O,this.dirty=!1)},z}(Ct),Or=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return this.gl.FUNC_ADD},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.blendEquation(O),this.current=O,this.dirty=!1)},z}(Ct),Nr=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return!1},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;O?$.enable($.CULL_FACE):$.disable($.CULL_FACE),this.current=O,this.dirty=!1}},z}(Ct),ut=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return this.gl.BACK},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.cullFace(O),this.current=O,this.dirty=!1)},z}(Ct),Ne=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return this.gl.CCW},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.frontFace(O),this.current=O,this.dirty=!1)},z}(Ct),Ye=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.useProgram(O),this.current=O,this.dirty=!1)},z}(Ct),Ve=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return this.gl.TEXTURE0},z.prototype.set=function(O){O===this.current&&!this.dirty||(this.gl.activeTexture(O),this.current=O,this.dirty=!1)},z}(Ct),Xe=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){var O=this.gl;return[0,0,O.drawingBufferWidth,O.drawingBufferHeight]},z.prototype.set=function(O){var $=this.current;O[0]===$[0]&&O[1]===$[1]&&O[2]===$[2]&&O[3]===$[3]&&!this.dirty||(this.gl.viewport(O[0],O[1],O[2],O[3]),this.current=O,this.dirty=!1)},z}(Ct),ht=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;$.bindFramebuffer($.FRAMEBUFFER,O),this.current=O,this.dirty=!1}},z}(Ct),Le=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;$.bindRenderbuffer($.RENDERBUFFER,O),this.current=O,this.dirty=!1}},z}(Ct),xe=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;$.bindTexture($.TEXTURE_2D,O),this.current=O,this.dirty=!1}},z}(Ct),Se=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;$.bindBuffer($.ARRAY_BUFFER,O),this.current=O,this.dirty=!1}},z}(Ct),lt=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z.prototype.set=function(O){var $=this.gl;$.bindBuffer($.ELEMENT_ARRAY_BUFFER,O),this.current=O,this.dirty=!1},z}(Ct),Gt=function(Y){function z(K){Y.call(this,K),this.vao=K.extVertexArrayObject}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z.prototype.set=function(O){!this.vao||O===this.current&&!this.dirty||(this.vao.bindVertexArrayOES(O),this.current=O,this.dirty=!1)},z}(Ct),Vt=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return 4},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;$.pixelStorei($.UNPACK_ALIGNMENT,O),this.current=O,this.dirty=!1}},z}(Ct),ar=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return!1},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;$.pixelStorei($.UNPACK_PREMULTIPLY_ALPHA_WEBGL,O),this.current=O,this.dirty=!1}},z}(Ct),Qr=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return!1},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){var $=this.gl;$.pixelStorei($.UNPACK_FLIP_Y_WEBGL,O),this.current=O,this.dirty=!1}},z}(Ct),ai=function(Y){function z(K,O){Y.call(this,K),this.context=K,this.parent=O}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getDefault=function(){return null},z}(Ct),jr=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.setDirty=function(){this.dirty=!0},z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var $=this.gl;$.framebufferTexture2D($.FRAMEBUFFER,$.COLOR_ATTACHMENT0,$.TEXTURE_2D,O,0),this.current=O,this.dirty=!1}},z}(ai),ri=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.set=function(O){if(!(O===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var $=this.gl;$.framebufferRenderbuffer($.FRAMEBUFFER,$.DEPTH_ATTACHMENT,$.RENDERBUFFER,O),this.current=O,this.dirty=!1}},z}(ai),bi=function(z,K,O,$){this.context=z,this.width=K,this.height=O;var pe=z.gl,de=this.framebuffer=pe.createFramebuffer();this.colorAttachment=new jr(z,de),$&&(this.depthAttachment=new ri(z,de))};bi.prototype.destroy=function(){var z=this.context.gl,K=this.colorAttachment.get();if(K&&z.deleteTexture(K),this.depthAttachment){var O=this.depthAttachment.get();O&&z.deleteRenderbuffer(O)}z.deleteFramebuffer(this.framebuffer)};var nn=519,Wi=function(z,K,O){this.func=z,this.mask=K,this.range=O};Wi.ReadOnly=!1,Wi.ReadWrite=!0,Wi.disabled=new Wi(nn,Wi.ReadOnly,[0,1]);var Ni=519,_n=7680,$i=function(z,K,O,$,pe,de){this.test=z,this.ref=K,this.mask=O,this.fail=$,this.depthFail=pe,this.pass=de};$i.disabled=new $i({func:Ni,mask:0},0,0,_n,_n,_n);var zn=0,Wn=1,It=771,ft=function(z,K,O){this.blendFunction=z,this.blendColor=K,this.mask=O};ft.Replace=[Wn,zn],ft.disabled=new ft(ft.Replace,i.Color.transparent,[!1,!1,!1,!1]),ft.unblended=new ft(ft.Replace,i.Color.transparent,[!0,!0,!0,!0]),ft.alphaBlended=new ft([Wn,It],i.Color.transparent,[!0,!0,!0,!0]);var jt=1029,Zt=2305,yr=function(z,K,O){this.enable=z,this.mode=K,this.frontFace=O};yr.disabled=new yr(!1,jt,Zt),yr.backCCW=new yr(!0,jt,Zt);var Fr=function(z){this.gl=z,this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object"),this.clearColor=new Yt(this),this.clearDepth=new xr(this),this.clearStencil=new er(this),this.colorMask=new Ke(this),this.depthMask=new xt(this),this.stencilMask=new bt(this),this.stencilFunc=new Lt(this),this.stencilOp=new St(this),this.stencilTest=new Et(this),this.depthRange=new dt(this),this.depthTest=new Ht(this),this.depthFunc=new $t(this),this.blend=new fr(this),this.blendFunc=new _r(this),this.blendColor=new Br(this),this.blendEquation=new Or(this),this.cullFace=new Nr(this),this.cullFaceSide=new ut(this),this.frontFace=new Ne(this),this.program=new Ye(this),this.activeTexture=new Ve(this),this.viewport=new Xe(this),this.bindFramebuffer=new ht(this),this.bindRenderbuffer=new Le(this),this.bindTexture=new xe(this),this.bindVertexBuffer=new Se(this),this.bindElementBuffer=new lt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new Gt(this),this.pixelStoreUnpack=new Vt(this),this.pixelStoreUnpackPremultiplyAlpha=new ar(this),this.pixelStoreUnpackFlipY=new Qr(this),this.extTextureFilterAnisotropic=z.getExtension("EXT_texture_filter_anisotropic")||z.getExtension("MOZ_EXT_texture_filter_anisotropic")||z.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=z.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=z.getExtension("OES_texture_half_float"),this.extTextureHalfFloat&&(z.getExtension("OES_texture_half_float_linear"),this.extRenderToTextureHalfFloat=z.getExtension("EXT_color_buffer_half_float")),this.extTimerQuery=z.getExtension("EXT_disjoint_timer_query"),this.maxTextureSize=z.getParameter(z.MAX_TEXTURE_SIZE)};Fr.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()},Fr.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},Fr.prototype.createIndexBuffer=function(z,K){return new ot(this,z,K)},Fr.prototype.createVertexBuffer=function(z,K,O){return new kt(this,z,K,O)},Fr.prototype.createRenderbuffer=function(z,K,O){var $=this.gl,pe=$.createRenderbuffer();return this.bindRenderbuffer.set(pe),$.renderbufferStorage($.RENDERBUFFER,z,K,O),this.bindRenderbuffer.set(null),pe},Fr.prototype.createFramebuffer=function(z,K,O){return new bi(this,z,K,O)},Fr.prototype.clear=function(z){var K=z.color,O=z.depth,$=this.gl,pe=0;K&&(pe|=$.COLOR_BUFFER_BIT,this.clearColor.set(K),this.colorMask.set([!0,!0,!0,!0])),typeof O!="undefined"&&(pe|=$.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(O),this.depthMask.set(!0)),$.clear(pe)},Fr.prototype.setCullFace=function(z){z.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(z.mode),this.frontFace.set(z.frontFace))},Fr.prototype.setDepthMode=function(z){z.func===this.gl.ALWAYS&&!z.mask?this.depthTest.set(!1):(this.depthTest.set(!0),this.depthFunc.set(z.func),this.depthMask.set(z.mask),this.depthRange.set(z.range))},Fr.prototype.setStencilMode=function(z){z.test.func===this.gl.ALWAYS&&!z.mask?this.stencilTest.set(!1):(this.stencilTest.set(!0),this.stencilMask.set(z.mask),this.stencilOp.set([z.fail,z.depthFail,z.pass]),this.stencilFunc.set({func:z.test.func,ref:z.ref,mask:z.test.mask}))},Fr.prototype.setColorMode=function(z){i.deepEqual(z.blendFunction,ft.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(z.blendFunction),this.blendColor.set(z.blendColor)),this.colorMask.set(z.mask)},Fr.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var Zr=function(Y){function z(K,O,$){var pe=this;Y.call(this),this.id=K,this.dispatcher=$,this.on("data",function(de){de.dataType==="source"&&de.sourceDataType==="metadata"&&(pe._sourceLoaded=!0),pe._sourceLoaded&&!pe._paused&&de.dataType==="source"&&de.sourceDataType==="content"&&(pe.reload(),pe.transform&&pe.update(pe.transform))}),this.on("error",function(){pe._sourceErrored=!0}),this._source=Ae(K,O,$,this),this._tiles={},this._cache=new rt(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new i.SourceFeatureState}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.onAdd=function(O){this.map=O,this._maxTileCacheSize=O?O._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(O)},z.prototype.onRemove=function(O){this._source&&this._source.onRemove&&this._source.onRemove(O)},z.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;for(var O in this._tiles){var $=this._tiles[O];if($.state!=="loaded"&&$.state!=="errored")return!1}return!0},z.prototype.getSource=function(){return this._source},z.prototype.pause=function(){this._paused=!0},z.prototype.resume=function(){if(this._paused){var O=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,O&&this.reload(),this.transform&&this.update(this.transform)}},z.prototype._loadTile=function(O,$){return this._source.loadTile(O,$)},z.prototype._unloadTile=function(O){if(this._source.unloadTile)return this._source.unloadTile(O,function(){})},z.prototype._abortTile=function(O){if(this._source.abortTile)return this._source.abortTile(O,function(){})},z.prototype.serialize=function(){return this._source.serialize()},z.prototype.prepare=function(O){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(var $ in this._tiles){var pe=this._tiles[$];pe.upload(O),pe.prepare(this.map.style.imageManager)}},z.prototype.getIds=function(){return i.values(this._tiles).map(function(O){return O.tileID}).sort(Vr).map(function(O){return O.key})},z.prototype.getRenderableIds=function(O){var $=this,pe=[];for(var de in this._tiles)this._isIdRenderable(de,O)&&pe.push(this._tiles[de]);return O?pe.sort(function(Ie,$e){var pt=Ie.tileID,Kt=$e.tileID,ir=new i.Point(pt.canonical.x,pt.canonical.y)._rotate($.transform.angle),Jt=new i.Point(Kt.canonical.x,Kt.canonical.y)._rotate($.transform.angle);return pt.overscaledZ-Kt.overscaledZ||Jt.y-ir.y||Jt.x-ir.x}).map(function(Ie){return Ie.tileID.key}):pe.map(function(Ie){return Ie.tileID}).sort(Vr).map(function(Ie){return Ie.key})},z.prototype.hasRenderableParent=function(O){var $=this.findLoadedParent(O,0);return $?this._isIdRenderable($.tileID.key):!1},z.prototype._isIdRenderable=function(O,$){return this._tiles[O]&&this._tiles[O].hasData()&&!this._coveredTiles[O]&&($||!this._tiles[O].holdingForFade())},z.prototype.reload=function(){if(this._paused){this._shouldReloadOnResume=!0;return}this._cache.reset();for(var O in this._tiles)this._tiles[O].state!=="errored"&&this._reloadTile(O,"reloading")},z.prototype._reloadTile=function(O,$){var pe=this._tiles[O];pe&&(pe.state!=="loading"&&(pe.state=$),this._loadTile(pe,this._tileLoaded.bind(this,pe,O,$)))},z.prototype._tileLoaded=function(O,$,pe,de){if(de){O.state="errored",de.status!==404?this._source.fire(new i.ErrorEvent(de,{tile:O})):this.update(this.transform);return}O.timeAdded=i.browser.now(),pe==="expired"&&(O.refreshedUponExpiration=!0),this._setTileReloadTimer($,O),this.getSource().type==="raster-dem"&&O.dem&&this._backfillDEM(O),this._state.initializeTileState(O,this.map?this.map.painter:null),this._source.fire(new i.Event("data",{dataType:"source",tile:O,coord:O.tileID}))},z.prototype._backfillDEM=function(O){for(var $=this.getRenderableIds(),pe=0;pe<$.length;pe++){var de=$[pe];if(O.neighboringTiles&&O.neighboringTiles[de]){var Ie=this.getTileByID(de);$e(O,Ie),$e(Ie,O)}}function $e(pt,Kt){pt.needsHillshadePrepare=!0;var ir=Kt.tileID.canonical.x-pt.tileID.canonical.x,Jt=Kt.tileID.canonical.y-pt.tileID.canonical.y,vt=Math.pow(2,pt.tileID.canonical.z),Pt=Kt.tileID.key;ir===0&&Jt===0||Math.abs(Jt)>1||(Math.abs(ir)>1&&(Math.abs(ir+vt)===1?ir+=vt:Math.abs(ir-vt)===1&&(ir-=vt)),!(!Kt.dem||!pt.dem)&&(pt.dem.backfillBorder(Kt.dem,ir,Jt),pt.neighboringTiles&&pt.neighboringTiles[Pt]&&(pt.neighboringTiles[Pt].backfilled=!0)))}},z.prototype.getTile=function(O){return this.getTileByID(O.key)},z.prototype.getTileByID=function(O){return this._tiles[O]},z.prototype._retainLoadedChildren=function(O,$,pe,de){for(var Ie in this._tiles){var $e=this._tiles[Ie];if(!(de[Ie]||!$e.hasData()||$e.tileID.overscaledZ<=$||$e.tileID.overscaledZ>pe)){for(var pt=$e.tileID;$e&&$e.tileID.overscaledZ>$+1;){var Kt=$e.tileID.scaledTo($e.tileID.overscaledZ-1);$e=this._tiles[Kt.key],$e&&$e.hasData()&&(pt=Kt)}for(var ir=pt;ir.overscaledZ>$;)if(ir=ir.scaledTo(ir.overscaledZ-1),O[ir.key]){de[pt.key]=pt;break}}}},z.prototype.findLoadedParent=function(O,$){if(O.key in this._loadedParentTiles){var pe=this._loadedParentTiles[O.key];return pe&&pe.tileID.overscaledZ>=$?pe:null}for(var de=O.overscaledZ-1;de>=$;de--){var Ie=O.scaledTo(de),$e=this._getLoadedTile(Ie);if($e)return $e}},z.prototype._getLoadedTile=function(O){var $=this._tiles[O.key];if($&&$.hasData())return $;var pe=this._cache.getByKey(O.wrapped().key);return pe},z.prototype.updateCacheSize=function(O){var $=Math.ceil(O.width/this._source.tileSize)+1,pe=Math.ceil(O.height/this._source.tileSize)+1,de=$*pe,Ie=5,$e=Math.floor(de*Ie),pt=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,$e):$e;this._cache.setMaxSize(pt)},z.prototype.handleWrapJump=function(O){var $=this._prevLng===void 0?O:this._prevLng,pe=O-$,de=pe/360,Ie=Math.round(de);if(this._prevLng=O,Ie){var $e={};for(var pt in this._tiles){var Kt=this._tiles[pt];Kt.tileID=Kt.tileID.unwrapTo(Kt.tileID.wrap+Ie),$e[Kt.tileID.key]=Kt}this._tiles=$e;for(var ir in this._timers)clearTimeout(this._timers[ir]),delete this._timers[ir];for(var Jt in this._tiles){var vt=this._tiles[Jt];this._setTileReloadTimer(Jt,vt)}}},z.prototype.update=function(O){var $=this;if(this.transform=O,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(O),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var pe;this.used?this._source.tileID?pe=O.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(yi){return new i.OverscaledTileID(yi.canonical.z,yi.wrap,yi.canonical.z,yi.canonical.x,yi.canonical.y)}):(pe=O.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(pe=pe.filter(function(yi){return $._source.hasTile(yi)}))):pe=[];var de=O.coveringZoomLevel(this._source),Ie=Math.max(de-z.maxOverzooming,this._source.minzoom),$e=Math.max(de+z.maxUnderzooming,this._source.minzoom),pt=this._updateRetainedTiles(pe,de);if(gi(this._source.type)){for(var Kt={},ir={},Jt=Object.keys(pt),vt=0,Pt=Jt;vt<Pt.length;vt+=1){var Wt=Pt[vt],rr=pt[Wt],dr=this._tiles[Wt];if(!(!dr||dr.fadeEndTime&&dr.fadeEndTime<=i.browser.now())){var pr=this.findLoadedParent(rr,Ie);pr&&(this._addTile(pr.tileID),Kt[pr.tileID.key]=pr.tileID),ir[Wt]=rr}}this._retainLoadedChildren(ir,de,$e,pt);for(var kr in Kt)pt[kr]||(this._coveredTiles[kr]=!0,pt[kr]=Kt[kr])}for(var Ar in pt)this._tiles[Ar].clearFadeHold();for(var gr=i.keysDifference(this._tiles,pt),Cr=0,cr=gr;Cr<cr.length;Cr+=1){var Gr=cr[Cr],ei=this._tiles[Gr];ei.hasSymbolBuckets&&!ei.holdingForFade()?ei.setHoldDuration(this.map._fadeDuration):(!ei.hasSymbolBuckets||ei.symbolFadeFinished())&&this._removeTile(Gr)}this._updateLoadedParentTileCache()}},z.prototype.releaseSymbolFadeTiles=function(){for(var O in this._tiles)this._tiles[O].holdingForFade()&&this._removeTile(O)},z.prototype._updateRetainedTiles=function(O,$){for(var pe={},de={},Ie=Math.max($-z.maxOverzooming,this._source.minzoom),$e=Math.max($+z.maxUnderzooming,this._source.minzoom),pt={},Kt=0,ir=O;Kt<ir.length;Kt+=1){var Jt=ir[Kt],vt=this._addTile(Jt);pe[Jt.key]=Jt,!vt.hasData()&&$<this._source.maxzoom&&(pt[Jt.key]=Jt)}this._retainLoadedChildren(pt,$,$e,pe);for(var Pt=0,Wt=O;Pt<Wt.length;Pt+=1){var rr=Wt[Pt],dr=this._tiles[rr.key];if(!dr.hasData()){if($+1>this._source.maxzoom){var pr=rr.children(this._source.maxzoom)[0],kr=this.getTile(pr);if(kr&&kr.hasData()){pe[pr.key]=pr;continue}}else{var Ar=rr.children(this._source.maxzoom);if(pe[Ar[0].key]&&pe[Ar[1].key]&&pe[Ar[2].key]&&pe[Ar[3].key])continue}for(var gr=dr.wasRequested(),Cr=rr.overscaledZ-1;Cr>=Ie;--Cr){var cr=rr.scaledTo(Cr);if(de[cr.key]||(de[cr.key]=!0,dr=this.getTile(cr),!dr&&gr&&(dr=this._addTile(cr)),dr&&(pe[cr.key]=cr,gr=dr.wasRequested(),dr.hasData())))break}}}return pe},z.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var O in this._tiles){for(var $=[],pe=void 0,de=this._tiles[O].tileID;de.overscaledZ>0;){if(de.key in this._loadedParentTiles){pe=this._loadedParentTiles[de.key];break}$.push(de.key);var Ie=de.scaledTo(de.overscaledZ-1);if(pe=this._getLoadedTile(Ie),pe)break;de=Ie}for(var $e=0,pt=$;$e<pt.length;$e+=1){var Kt=pt[$e];this._loadedParentTiles[Kt]=pe}}},z.prototype._addTile=function(O){var $=this._tiles[O.key];if($)return $;$=this._cache.getAndRemove(O),$&&(this._setTileReloadTimer(O.key,$),$.tileID=O,this._state.initializeTileState($,this.map?this.map.painter:null),this._cacheTimers[O.key]&&(clearTimeout(this._cacheTimers[O.key]),delete this._cacheTimers[O.key],this._setTileReloadTimer(O.key,$)));var pe=!!$;return pe||($=new i.Tile(O,this._source.tileSize*O.overscaleFactor()),this._loadTile($,this._tileLoaded.bind(this,$,O.key,$.state))),$?($.uses++,this._tiles[O.key]=$,pe||this._source.fire(new i.Event("dataloading",{tile:$,coord:$.tileID,dataType:"source"})),$):null},z.prototype._setTileReloadTimer=function(O,$){var pe=this;O in this._timers&&(clearTimeout(this._timers[O]),delete this._timers[O]);var de=$.getExpiryTimeout();de&&(this._timers[O]=setTimeout(function(){pe._reloadTile(O,"expired"),delete pe._timers[O]},de))},z.prototype._removeTile=function(O){var $=this._tiles[O];$&&($.uses--,delete this._tiles[O],this._timers[O]&&(clearTimeout(this._timers[O]),delete this._timers[O]),!($.uses>0)&&($.hasData()&&$.state!=="reloading"?this._cache.add($.tileID,$,$.getExpiryTimeout()):($.aborted=!0,this._abortTile($),this._unloadTile($))))},z.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var O in this._tiles)this._removeTile(O);this._cache.reset()},z.prototype.tilesIn=function(O,$,pe){var de=this,Ie=[],$e=this.transform;if(!$e)return Ie;for(var pt=pe?$e.getCameraQueryGeometry(O):O,Kt=O.map(function(Cr){return $e.pointCoordinate(Cr)}),ir=pt.map(function(Cr){return $e.pointCoordinate(Cr)}),Jt=this.getIds(),vt=1/0,Pt=1/0,Wt=-1/0,rr=-1/0,dr=0,pr=ir;dr<pr.length;dr+=1){var kr=pr[dr];vt=Math.min(vt,kr.x),Pt=Math.min(Pt,kr.y),Wt=Math.max(Wt,kr.x),rr=Math.max(rr,kr.y)}for(var Ar=function(Cr){var cr=de._tiles[Jt[Cr]];if(!cr.holdingForFade()){var Gr=cr.tileID,ei=Math.pow(2,$e.zoom-cr.tileID.overscaledZ),yi=$*cr.queryPadding*i.EXTENT/cr.tileSize/ei,tn=[Gr.getTilePoint(new i.MercatorCoordinate(vt,Pt)),Gr.getTilePoint(new i.MercatorCoordinate(Wt,rr))];if(tn[0].x-yi<i.EXTENT&&tn[0].y-yi<i.EXTENT&&tn[1].x+yi>=0&&tn[1].y+yi>=0){var Ri=Kt.map(function(Qn){return Gr.getTilePoint(Qn)}),ln=ir.map(function(Qn){return Gr.getTilePoint(Qn)});Ie.push({tile:cr,tileID:Gr,queryGeometry:Ri,cameraQueryGeometry:ln,scale:ei})}}},gr=0;gr<Jt.length;gr++)Ar(gr);return Ie},z.prototype.getVisibleCoordinates=function(O){for(var $=this,pe=this.getRenderableIds(O).map(function(pt){return $._tiles[pt].tileID}),de=0,Ie=pe;de<Ie.length;de+=1){var $e=Ie[de];$e.posMatrix=this.transform.calculatePosMatrix($e.toUnwrapped())}return pe},z.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(gi(this._source.type))for(var O in this._tiles){var $=this._tiles[O];if($.fadeEndTime!==void 0&&$.fadeEndTime>=i.browser.now())return!0}return!1},z.prototype.setFeatureState=function(O,$,pe){O=O||"_geojsonTileLayer",this._state.updateState(O,$,pe)},z.prototype.removeFeatureState=function(O,$,pe){O=O||"_geojsonTileLayer",this._state.removeFeatureState(O,$,pe)},z.prototype.getFeatureState=function(O,$){return O=O||"_geojsonTileLayer",this._state.getState(O,$)},z.prototype.setDependencies=function(O,$,pe){var de=this._tiles[O];de&&de.setDependencies($,pe)},z.prototype.reloadTilesForDependencies=function(O,$){for(var pe in this._tiles){var de=this._tiles[pe];de.hasDependency(O,$)&&this._reloadTile(pe,"reloading")}this._cache.filter(function(Ie){return!Ie.hasDependency(O,$)})},z}(i.Evented);Zr.maxOverzooming=10,Zr.maxUnderzooming=3;function Vr(Y,z){var K=Math.abs(Y.wrap*2)-+(Y.wrap<0),O=Math.abs(z.wrap*2)-+(z.wrap<0);return Y.overscaledZ-z.overscaledZ||O-K||z.canonical.y-Y.canonical.y||z.canonical.x-Y.canonical.x}function gi(Y){return Y==="raster"||Y==="image"||Y==="video"}function Si(){return new i.window.Worker(ns.workerUrl)}var Mi="mapboxgl_preloaded_worker_pool",Pi=function(){this.active={}};Pi.prototype.acquire=function(z){if(!this.workers)for(this.workers=[];this.workers.length<Pi.workerCount;)this.workers.push(new Si);return this.active[z]=!0,this.workers.slice()},Pi.prototype.release=function(z){delete this.active[z],this.numActive()===0&&(this.workers.forEach(function(K){K.terminate()}),this.workers=null)},Pi.prototype.isPreloaded=function(){return!!this.active[Mi]},Pi.prototype.numActive=function(){return Object.keys(this.active).length};var Gi=Math.floor(i.browser.hardwareConcurrency/2);Pi.workerCount=Math.max(Math.min(Gi,6),1);var Ki;function ka(){return Ki||(Ki=new Pi),Ki}function jn(){var Y=ka();Y.acquire(Mi)}function la(){var Y=Ki;Y&&(Y.isPreloaded()&&Y.numActive()===1?(Y.release(Mi),Ki=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()"))}function Fa(Y,z){var K={};for(var O in Y)O!=="ref"&&(K[O]=Y[O]);return i.refProperties.forEach(function($){$ in z&&(K[$]=z[$])}),K}function Ra(Y){Y=Y.slice();for(var z=Object.create(null),K=0;K<Y.length;K++)z[Y[K].id]=Y[K];for(var O=0;O<Y.length;O++)"ref"in Y[O]&&(Y[O]=Fa(Y[O],z[Y[O].ref]));return Y}function jo(){var Y={},z=i.styleSpec.$version;for(var K in i.styleSpec.$root){var O=i.styleSpec.$root[K];if(O.required){var $=null;K==="version"?$=z:O.type==="array"?$=[]:$={},$!=null&&(Y[K]=$)}}return Y}var oa={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 Sn(Y,z,K){K.push({command:oa.addSource,args:[Y,z[Y]]})}function Ha(Y,z,K){z.push({command:oa.removeSource,args:[Y]}),K[Y]=!0}function oo(Y,z,K,O){Ha(Y,K,O),Sn(Y,z,K)}function xn(Y,z,K){var O;for(O in Y[K])if(Y[K].hasOwnProperty(O)&&O!=="data"&&!i.deepEqual(Y[K][O],z[K][O]))return!1;for(O in z[K])if(z[K].hasOwnProperty(O)&&O!=="data"&&!i.deepEqual(Y[K][O],z[K][O]))return!1;return!0}function _t(Y,z,K,O){Y=Y||{},z=z||{};var $;for($ in Y)Y.hasOwnProperty($)&&(z.hasOwnProperty($)||Ha($,K,O));for($ in z)z.hasOwnProperty($)&&(Y.hasOwnProperty($)?i.deepEqual(Y[$],z[$])||(Y[$].type==="geojson"&&z[$].type==="geojson"&&xn(Y,z,$)?K.push({command:oa.setGeoJSONSourceData,args:[$,z[$].data]}):oo($,z,K,O)):Sn($,z,K))}function br(Y,z,K,O,$,pe){Y=Y||{},z=z||{};var de;for(de in Y)Y.hasOwnProperty(de)&&(i.deepEqual(Y[de],z[de])||K.push({command:pe,args:[O,de,z[de],$]}));for(de in z)!z.hasOwnProperty(de)||Y.hasOwnProperty(de)||i.deepEqual(Y[de],z[de])||K.push({command:pe,args:[O,de,z[de],$]})}function Hr(Y){return Y.id}function ti(Y,z){return Y[z.id]=z,Y}function zi(Y,z,K){Y=Y||[],z=z||[];var O=Y.map(Hr),$=z.map(Hr),pe=Y.reduce(ti,{}),de=z.reduce(ti,{}),Ie=O.slice(),$e=Object.create(null),pt,Kt,ir,Jt,vt,Pt,Wt;for(pt=0,Kt=0;pt<O.length;pt++)ir=O[pt],de.hasOwnProperty(ir)?Kt++:(K.push({command:oa.removeLayer,args:[ir]}),Ie.splice(Ie.indexOf(ir,Kt),1));for(pt=0,Kt=0;pt<$.length;pt++)ir=$[$.length-1-pt],Ie[Ie.length-1-pt]!==ir&&(pe.hasOwnProperty(ir)?(K.push({command:oa.removeLayer,args:[ir]}),Ie.splice(Ie.lastIndexOf(ir,Ie.length-Kt),1)):Kt++,Pt=Ie[Ie.length-pt],K.push({command:oa.addLayer,args:[de[ir],Pt]}),Ie.splice(Ie.length-pt,0,ir),$e[ir]=!0);for(pt=0;pt<$.length;pt++)if(ir=$[pt],Jt=pe[ir],vt=de[ir],!($e[ir]||i.deepEqual(Jt,vt))){if(!i.deepEqual(Jt.source,vt.source)||!i.deepEqual(Jt["source-layer"],vt["source-layer"])||!i.deepEqual(Jt.type,vt.type)){K.push({command:oa.removeLayer,args:[ir]}),Pt=Ie[Ie.lastIndexOf(ir)+1],K.push({command:oa.addLayer,args:[vt,Pt]});continue}br(Jt.layout,vt.layout,K,ir,null,oa.setLayoutProperty),br(Jt.paint,vt.paint,K,ir,null,oa.setPaintProperty),i.deepEqual(Jt.filter,vt.filter)||K.push({command:oa.setFilter,args:[ir,vt.filter]}),(!i.deepEqual(Jt.minzoom,vt.minzoom)||!i.deepEqual(Jt.maxzoom,vt.maxzoom))&&K.push({command:oa.setLayerZoomRange,args:[ir,vt.minzoom,vt.maxzoom]});for(Wt in Jt)Jt.hasOwnProperty(Wt)&&(Wt==="layout"||Wt==="paint"||Wt==="filter"||Wt==="metadata"||Wt==="minzoom"||Wt==="maxzoom"||(Wt.indexOf("paint.")===0?br(Jt[Wt],vt[Wt],K,ir,Wt.slice(6),oa.setPaintProperty):i.deepEqual(Jt[Wt],vt[Wt])||K.push({command:oa.setLayerProperty,args:[ir,Wt,vt[Wt]]})));for(Wt in vt)!vt.hasOwnProperty(Wt)||Jt.hasOwnProperty(Wt)||Wt==="layout"||Wt==="paint"||Wt==="filter"||Wt==="metadata"||Wt==="minzoom"||Wt==="maxzoom"||(Wt.indexOf("paint.")===0?br(Jt[Wt],vt[Wt],K,ir,Wt.slice(6),oa.setPaintProperty):i.deepEqual(Jt[Wt],vt[Wt])||K.push({command:oa.setLayerProperty,args:[ir,Wt,vt[Wt]]}))}}function Yi(Y,z){if(!Y)return[{command:oa.setStyle,args:[z]}];var K=[];try{if(!i.deepEqual(Y.version,z.version))return[{command:oa.setStyle,args:[z]}];i.deepEqual(Y.center,z.center)||K.push({command:oa.setCenter,args:[z.center]}),i.deepEqual(Y.zoom,z.zoom)||K.push({command:oa.setZoom,args:[z.zoom]}),i.deepEqual(Y.bearing,z.bearing)||K.push({command:oa.setBearing,args:[z.bearing]}),i.deepEqual(Y.pitch,z.pitch)||K.push({command:oa.setPitch,args:[z.pitch]}),i.deepEqual(Y.sprite,z.sprite)||K.push({command:oa.setSprite,args:[z.sprite]}),i.deepEqual(Y.glyphs,z.glyphs)||K.push({command:oa.setGlyphs,args:[z.glyphs]}),i.deepEqual(Y.transition,z.transition)||K.push({command:oa.setTransition,args:[z.transition]}),i.deepEqual(Y.light,z.light)||K.push({command:oa.setLight,args:[z.light]});var O={},$=[];_t(Y.sources,z.sources,$,O);var pe=[];Y.layers&&Y.layers.forEach(function(de){O[de.source]?K.push({command:oa.removeLayer,args:[de.id]}):pe.push(de)}),K=K.concat($),zi(pe,z.layers,K)}catch(de){console.warn("Unable to compute style diff:",de),K=[{command:oa.setStyle,args:[z]}]}return K}var an=function(z,K){this.reset(z,K)};an.prototype.reset=function(z,K){this.points=z||[],this._distances=[0];for(var O=1;O<this.points.length;O++)this._distances[O]=this._distances[O-1]+this.points[O].dist(this.points[O-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(K||0,this.length*.5),this.paddedLength=this.length-this.padding*2},an.prototype.lerp=function(z){if(this.points.length===1)return this.points[0];z=i.clamp(z,0,1);for(var K=1,O=this._distances[K],$=z*this.paddedLength+this.padding;O<$&&K<this._distances.length;)O=this._distances[++K];var pe=K-1,de=this._distances[pe],Ie=O-de,$e=Ie>0?($-de)/Ie:0;return this.points[pe].mult(1-$e).add(this.points[K].mult($e))};var hi=function(z,K,O){var $=this.boxCells=[],pe=this.circleCells=[];this.xCellCount=Math.ceil(z/O),this.yCellCount=Math.ceil(K/O);for(var de=0;de<this.xCellCount*this.yCellCount;de++)$.push([]),pe.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=z,this.height=K,this.xScale=this.xCellCount/z,this.yScale=this.yCellCount/K,this.boxUid=0,this.circleUid=0};hi.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},hi.prototype.insert=function(z,K,O,$,pe){this._forEachCell(K,O,$,pe,this._insertBoxCell,this.boxUid++),this.boxKeys.push(z),this.bboxes.push(K),this.bboxes.push(O),this.bboxes.push($),this.bboxes.push(pe)},hi.prototype.insertCircle=function(z,K,O,$){this._forEachCell(K-$,O-$,K+$,O+$,this._insertCircleCell,this.circleUid++),this.circleKeys.push(z),this.circles.push(K),this.circles.push(O),this.circles.push($)},hi.prototype._insertBoxCell=function(z,K,O,$,pe,de){this.boxCells[pe].push(de)},hi.prototype._insertCircleCell=function(z,K,O,$,pe,de){this.circleCells[pe].push(de)},hi.prototype._query=function(z,K,O,$,pe,de){if(O<0||z>this.width||$<0||K>this.height)return pe?!1:[];var Ie=[];if(z<=0&&K<=0&&this.width<=O&&this.height<=$){if(pe)return!0;for(var $e=0;$e<this.boxKeys.length;$e++)Ie.push({key:this.boxKeys[$e],x1:this.bboxes[$e*4],y1:this.bboxes[$e*4+1],x2:this.bboxes[$e*4+2],y2:this.bboxes[$e*4+3]});for(var pt=0;pt<this.circleKeys.length;pt++){var Kt=this.circles[pt*3],ir=this.circles[pt*3+1],Jt=this.circles[pt*3+2];Ie.push({key:this.circleKeys[pt],x1:Kt-Jt,y1:ir-Jt,x2:Kt+Jt,y2:ir+Jt})}return de?Ie.filter(de):Ie}else{var vt={hitTest:pe,seenUids:{box:{},circle:{}}};return this._forEachCell(z,K,O,$,this._queryCell,Ie,vt,de),pe?Ie.length>0:Ie}},hi.prototype._queryCircle=function(z,K,O,$,pe){var de=z-O,Ie=z+O,$e=K-O,pt=K+O;if(Ie<0||de>this.width||pt<0||$e>this.height)return $?!1:[];var Kt=[],ir={hitTest:$,circle:{x:z,y:K,radius:O},seenUids:{box:{},circle:{}}};return this._forEachCell(de,$e,Ie,pt,this._queryCellCircle,Kt,ir,pe),$?Kt.length>0:Kt},hi.prototype.query=function(z,K,O,$,pe){return this._query(z,K,O,$,!1,pe)},hi.prototype.hitTest=function(z,K,O,$,pe){return this._query(z,K,O,$,!0,pe)},hi.prototype.hitTestCircle=function(z,K,O,$){return this._queryCircle(z,K,O,!0,$)},hi.prototype._queryCell=function(z,K,O,$,pe,de,Ie,$e){var pt=Ie.seenUids,Kt=this.boxCells[pe];if(Kt!==null)for(var ir=this.bboxes,Jt=0,vt=Kt;Jt<vt.length;Jt+=1){var Pt=vt[Jt];if(!pt.box[Pt]){pt.box[Pt]=!0;var Wt=Pt*4;if(z<=ir[Wt+2]&&K<=ir[Wt+3]&&O>=ir[Wt+0]&&$>=ir[Wt+1]&&(!$e||$e(this.boxKeys[Pt]))){if(Ie.hitTest)return de.push(!0),!0;de.push({key:this.boxKeys[Pt],x1:ir[Wt],y1:ir[Wt+1],x2:ir[Wt+2],y2:ir[Wt+3]})}}}var rr=this.circleCells[pe];if(rr!==null)for(var dr=this.circles,pr=0,kr=rr;pr<kr.length;pr+=1){var Ar=kr[pr];if(!pt.circle[Ar]){pt.circle[Ar]=!0;var gr=Ar*3;if(this._circleAndRectCollide(dr[gr],dr[gr+1],dr[gr+2],z,K,O,$)&&(!$e||$e(this.circleKeys[Ar]))){if(Ie.hitTest)return de.push(!0),!0;var Cr=dr[gr],cr=dr[gr+1],Gr=dr[gr+2];de.push({key:this.circleKeys[Ar],x1:Cr-Gr,y1:cr-Gr,x2:Cr+Gr,y2:cr+Gr})}}}},hi.prototype._queryCellCircle=function(z,K,O,$,pe,de,Ie,$e){var pt=Ie.circle,Kt=Ie.seenUids,ir=this.boxCells[pe];if(ir!==null)for(var Jt=this.bboxes,vt=0,Pt=ir;vt<Pt.length;vt+=1){var Wt=Pt[vt];if(!Kt.box[Wt]){Kt.box[Wt]=!0;var rr=Wt*4;if(this._circleAndRectCollide(pt.x,pt.y,pt.radius,Jt[rr+0],Jt[rr+1],Jt[rr+2],Jt[rr+3])&&(!$e||$e(this.boxKeys[Wt])))return de.push(!0),!0}}var dr=this.circleCells[pe];if(dr!==null)for(var pr=this.circles,kr=0,Ar=dr;kr<Ar.length;kr+=1){var gr=Ar[kr];if(!Kt.circle[gr]){Kt.circle[gr]=!0;var Cr=gr*3;if(this._circlesCollide(pr[Cr],pr[Cr+1],pr[Cr+2],pt.x,pt.y,pt.radius)&&(!$e||$e(this.circleKeys[gr])))return de.push(!0),!0}}},hi.prototype._forEachCell=function(z,K,O,$,pe,de,Ie,$e){for(var pt=this._convertToXCellCoord(z),Kt=this._convertToYCellCoord(K),ir=this._convertToXCellCoord(O),Jt=this._convertToYCellCoord($),vt=pt;vt<=ir;vt++)for(var Pt=Kt;Pt<=Jt;Pt++){var Wt=this.xCellCount*Pt+vt;if(pe.call(this,z,K,O,$,Wt,de,Ie,$e))return}},hi.prototype._convertToXCellCoord=function(z){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(z*this.xScale)))},hi.prototype._convertToYCellCoord=function(z){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(z*this.yScale)))},hi.prototype._circlesCollide=function(z,K,O,$,pe,de){var Ie=$-z,$e=pe-K,pt=O+de;return pt*pt>Ie*Ie+$e*$e},hi.prototype._circleAndRectCollide=function(z,K,O,$,pe,de,Ie){var $e=(de-$)/2,pt=Math.abs(z-($+$e));if(pt>$e+O)return!1;var Kt=(Ie-pe)/2,ir=Math.abs(K-(pe+Kt));if(ir>Kt+O)return!1;if(pt<=$e||ir<=Kt)return!0;var Jt=pt-$e,vt=ir-Kt;return Jt*Jt+vt*vt<=O*O};function Ji(Y,z,K,O,$){var pe=i.create();return z?(i.scale(pe,pe,[1/$,1/$,1]),K||i.rotateZ(pe,pe,O.angle)):i.multiply(pe,O.labelPlaneMatrix,Y),pe}function ua(Y,z,K,O,$){if(z){var pe=i.clone(Y);return i.scale(pe,pe,[$,$,1]),K||i.rotateZ(pe,pe,-O.angle),pe}else return O.glCoordMatrix}function Fn(Y,z){var K=[Y.x,Y.y,0,1];wl(K,K,z);var O=K[3];return{point:new i.Point(K[0]/O,K[1]/O),signedDistanceFromCamera:O}}function Sa(Y,z){return .5+.5*(Y/z)}function go(Y,z){var K=Y[0]/Y[3],O=Y[1]/Y[3],$=K>=-z[0]&&K<=z[0]&&O>=-z[1]&&O<=z[1];return $}function Oo(Y,z,K,O,$,pe,de,Ie){var $e=O?Y.textSizeData:Y.iconSizeData,pt=i.evaluateSizeForZoom($e,K.transform.zoom),Kt=[256/K.width*2+1,256/K.height*2+1],ir=O?Y.text.dynamicLayoutVertexArray:Y.icon.dynamicLayoutVertexArray;ir.clear();for(var Jt=Y.lineVertexArray,vt=O?Y.text.placedSymbolArray:Y.icon.placedSymbolArray,Pt=K.transform.width/K.transform.height,Wt=!1,rr=0;rr<vt.length;rr++){var dr=vt.get(rr);if(dr.hidden||dr.writingMode===i.WritingMode.vertical&&!Wt){Xs(dr.numGlyphs,ir);continue}Wt=!1;var pr=[dr.anchorX,dr.anchorY,0,1];if(i.transformMat4(pr,pr,z),!go(pr,Kt)){Xs(dr.numGlyphs,ir);continue}var kr=pr[3],Ar=Sa(K.transform.cameraToCenterDistance,kr),gr=i.evaluateSizeForFeature($e,pt,dr),Cr=de?gr/Ar:gr*Ar,cr=new i.Point(dr.anchorX,dr.anchorY),Gr=Fn(cr,$).point,ei={},yi=xo(dr,Cr,!1,Ie,z,$,pe,Y.glyphOffsetArray,Jt,ir,Gr,cr,ei,Pt);Wt=yi.useVertical,(yi.notEnoughRoom||Wt||yi.needsFlipping&&xo(dr,Cr,!0,Ie,z,$,pe,Y.glyphOffsetArray,Jt,ir,Gr,cr,ei,Pt).notEnoughRoom)&&Xs(dr.numGlyphs,ir)}O?Y.text.dynamicLayoutVertexBuffer.updateData(ir):Y.icon.dynamicLayoutVertexBuffer.updateData(ir)}function ho(Y,z,K,O,$,pe,de,Ie,$e,pt,Kt){var ir=Ie.glyphStartIndex+Ie.numGlyphs,Jt=Ie.lineStartIndex,vt=Ie.lineStartIndex+Ie.lineLength,Pt=z.getoffsetX(Ie.glyphStartIndex),Wt=z.getoffsetX(ir-1),rr=ks(Y*Pt,K,O,$,pe,de,Ie.segment,Jt,vt,$e,pt,Kt);if(!rr)return null;var dr=ks(Y*Wt,K,O,$,pe,de,Ie.segment,Jt,vt,$e,pt,Kt);return dr?{first:rr,last:dr}:null}function Mo(Y,z,K,O){if(Y===i.WritingMode.horizontal){var $=Math.abs(K.y-z.y),pe=Math.abs(K.x-z.x)*O;if($>pe)return{useVertical:!0}}return(Y===i.WritingMode.vertical?z.y<K.y:z.x>K.x)?{needsFlipping:!0}:null}function xo(Y,z,K,O,$,pe,de,Ie,$e,pt,Kt,ir,Jt,vt){var Pt=z/24,Wt=Y.lineOffsetX*Pt,rr=Y.lineOffsetY*Pt,dr;if(Y.numGlyphs>1){var pr=Y.glyphStartIndex+Y.numGlyphs,kr=Y.lineStartIndex,Ar=Y.lineStartIndex+Y.lineLength,gr=ho(Pt,Ie,Wt,rr,K,Kt,ir,Y,$e,pe,Jt);if(!gr)return{notEnoughRoom:!0};var Cr=Fn(gr.first.point,de).point,cr=Fn(gr.last.point,de).point;if(O&&!K){var Gr=Mo(Y.writingMode,Cr,cr,vt);if(Gr)return Gr}dr=[gr.first];for(var ei=Y.glyphStartIndex+1;ei<pr-1;ei++)dr.push(ks(Pt*Ie.getoffsetX(ei),Wt,rr,K,Kt,ir,Y.segment,kr,Ar,$e,pe,Jt));dr.push(gr.last)}else{if(O&&!K){var yi=Fn(ir,$).point,tn=Y.lineStartIndex+Y.segment+1,Ri=new i.Point($e.getx(tn),$e.gety(tn)),ln=Fn(Ri,$),Qn=ln.signedDistanceFromCamera>0?ln.point:zs(ir,Ri,yi,1,$),qn=Mo(Y.writingMode,yi,Qn,vt);if(qn)return qn}var rn=ks(Pt*Ie.getoffsetX(Y.glyphStartIndex),Wt,rr,K,Kt,ir,Y.segment,Y.lineStartIndex,Y.lineStartIndex+Y.lineLength,$e,pe,Jt);if(!rn)return{notEnoughRoom:!0};dr=[rn]}for(var bn=0,mn=dr;bn<mn.length;bn+=1){var Gn=mn[bn];i.addDynamicAttributes(pt,Gn.point,Gn.angle)}return{}}function zs(Y,z,K,O,$){var pe=Fn(Y.add(Y.sub(z)._unit()),$).point,de=K.sub(pe);return K.add(de._mult(O/de.mag()))}function ks(Y,z,K,O,$,pe,de,Ie,$e,pt,Kt,ir){var Jt=O?Y-z:Y+z,vt=Jt>0?1:-1,Pt=0;O&&(vt*=-1,Pt=Math.PI),vt<0&&(Pt+=Math.PI);for(var Wt=vt>0?Ie+de:Ie+de+1,rr=$,dr=$,pr=0,kr=0,Ar=Math.abs(Jt),gr=[];pr+kr<=Ar;){if(Wt+=vt,Wt<Ie||Wt>=$e)return null;if(dr=rr,gr.push(rr),rr=ir[Wt],rr===void 0){var Cr=new i.Point(pt.getx(Wt),pt.gety(Wt)),cr=Fn(Cr,Kt);if(cr.signedDistanceFromCamera>0)rr=ir[Wt]=cr.point;else{var Gr=Wt-vt,ei=pr===0?pe:new i.Point(pt.getx(Gr),pt.gety(Gr));rr=zs(ei,Cr,dr,Ar-pr+1,Kt)}}pr+=kr,kr=dr.dist(rr)}var yi=(Ar-pr)/kr,tn=rr.sub(dr),Ri=tn.mult(yi)._add(dr);Ri._add(tn._unit()._perp()._mult(K*vt));var ln=Pt+Math.atan2(rr.y-dr.y,rr.x-dr.x);return gr.push(Ri),{point:Ri,angle:ln,path:gr}}var Zs=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Xs(Y,z){for(var K=0;K<Y;K++){var O=z.length;z.resize(O+4),z.float32.set(Zs,O*3)}}function wl(Y,z,K){var O=z[0],$=z[1];return Y[0]=K[0]*O+K[4]*$+K[12],Y[1]=K[1]*O+K[5]*$+K[13],Y[3]=K[3]*O+K[7]*$+K[15],Y}var os=100,cl=function(z,K,O){K===void 0&&(K=new hi(z.width+2*os,z.height+2*os,25)),O===void 0&&(O=new hi(z.width+2*os,z.height+2*os,25)),this.transform=z,this.grid=K,this.ignoredGrid=O,this.pitchfactor=Math.cos(z._pitch)*z.cameraToCenterDistance,this.screenRightBoundary=z.width+os,this.screenBottomBoundary=z.height+os,this.gridRightBoundary=z.width+2*os,this.gridBottomBoundary=z.height+2*os};cl.prototype.placeCollisionBox=function(z,K,O,$,pe){var de=this.projectAndGetPerspectiveRatio($,z.anchorPointX,z.anchorPointY),Ie=O*de.perspectiveRatio,$e=z.x1*Ie+de.point.x,pt=z.y1*Ie+de.point.y,Kt=z.x2*Ie+de.point.x,ir=z.y2*Ie+de.point.y;return!this.isInsideGrid($e,pt,Kt,ir)||!K&&this.grid.hitTest($e,pt,Kt,ir,pe)?{box:[],offscreen:!1}:{box:[$e,pt,Kt,ir],offscreen:this.isOffscreen($e,pt,Kt,ir)}},cl.prototype.placeCollisionCircles=function(z,K,O,$,pe,de,Ie,$e,pt,Kt,ir,Jt,vt){var Pt=[],Wt=new i.Point(K.anchorX,K.anchorY),rr=Fn(Wt,de),dr=Sa(this.transform.cameraToCenterDistance,rr.signedDistanceFromCamera),pr=Kt?pe/dr:pe*dr,kr=pr/i.ONE_EM,Ar=Fn(Wt,Ie).point,gr={},Cr=K.lineOffsetX*kr,cr=K.lineOffsetY*kr,Gr=ho(kr,$,Cr,cr,!1,Ar,Wt,K,O,Ie,gr),ei=!1,yi=!1,tn=!0;if(Gr){for(var Ri=Jt*.5*dr+vt,ln=new i.Point(-os,-os),Qn=new i.Point(this.screenRightBoundary,this.screenBottomBoundary),qn=new an,rn=Gr.first,bn=Gr.last,mn=[],Gn=rn.path.length-1;Gn>=1;Gn--)mn.push(rn.path[Gn]);for(var da=1;da<bn.path.length;da++)mn.push(bn.path[da]);var No=Ri*2.5;if($e){var Do=mn.map(function(Cv){return Fn(Cv,$e)});Do.some(function(Cv){return Cv.signedDistanceFromCamera<=0})?mn=[]:mn=Do.map(function(Cv){return Cv.point})}var ps=[];if(mn.length>0){for(var fo=mn[0].clone(),as=mn[0].clone(),tl=1;tl<mn.length;tl++)fo.x=Math.min(fo.x,mn[tl].x),fo.y=Math.min(fo.y,mn[tl].y),as.x=Math.max(as.x,mn[tl].x),as.y=Math.max(as.y,mn[tl].y);fo.x>=ln.x&&as.x<=Qn.x&&fo.y>=ln.y&&as.y<=Qn.y?ps=[mn]:as.x<ln.x||fo.x>Qn.x||as.y<ln.y||fo.y>Qn.y?ps=[]:ps=i.clipLine([mn],ln.x,ln.y,Qn.x,Qn.y)}for(var zu=0,Mv=ps;zu<Mv.length;zu+=1){var Ev=Mv[zu];qn.reset(Ev,Ri*.25);var yd=0;qn.length<=.5*Ri?yd=1:yd=Math.ceil(qn.paddedLength/No)+1;for(var Yv=0;Yv<yd;Yv++){var cg=Yv/Math.max(yd-1,1),vp=qn.lerp(cg),_d=vp.x+os,pp=vp.y+os;Pt.push(_d,pp,Ri,0);var Nd=_d-Ri,xd=pp-Ri,kv=_d+Ri,Kv=pp+Ri;if(tn=tn&&this.isOffscreen(Nd,xd,kv,Kv),yi=yi||this.isInsideGrid(Nd,xd,kv,Kv),!z&&this.grid.hitTestCircle(_d,pp,Ri,ir)&&(ei=!0,!pt))return{circles:[],offscreen:!1,collisionDetected:ei}}}}return{circles:!pt&&ei||!yi?[]:Pt,offscreen:tn,collisionDetected:ei}},cl.prototype.queryRenderedSymbols=function(z){if(z.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};for(var K=[],O=1/0,$=1/0,pe=-1/0,de=-1/0,Ie=0,$e=z;Ie<$e.length;Ie+=1){var pt=$e[Ie],Kt=new i.Point(pt.x+os,pt.y+os);O=Math.min(O,Kt.x),$=Math.min($,Kt.y),pe=Math.max(pe,Kt.x),de=Math.max(de,Kt.y),K.push(Kt)}for(var ir=this.grid.query(O,$,pe,de).concat(this.ignoredGrid.query(O,$,pe,de)),Jt={},vt={},Pt=0,Wt=ir;Pt<Wt.length;Pt+=1){var rr=Wt[Pt],dr=rr.key;if(Jt[dr.bucketInstanceId]===void 0&&(Jt[dr.bucketInstanceId]={}),!Jt[dr.bucketInstanceId][dr.featureIndex]){var pr=[new i.Point(rr.x1,rr.y1),new i.Point(rr.x2,rr.y1),new i.Point(rr.x2,rr.y2),new i.Point(rr.x1,rr.y2)];i.polygonIntersectsPolygon(K,pr)&&(Jt[dr.bucketInstanceId][dr.featureIndex]=!0,vt[dr.bucketInstanceId]===void 0&&(vt[dr.bucketInstanceId]=[]),vt[dr.bucketInstanceId].push(dr.featureIndex))}}return vt},cl.prototype.insertCollisionBox=function(z,K,O,$,pe){var de=K?this.ignoredGrid:this.grid,Ie={bucketInstanceId:O,featureIndex:$,collisionGroupID:pe};de.insert(Ie,z[0],z[1],z[2],z[3])},cl.prototype.insertCollisionCircles=function(z,K,O,$,pe){for(var de=K?this.ignoredGrid:this.grid,Ie={bucketInstanceId:O,featureIndex:$,collisionGroupID:pe},$e=0;$e<z.length;$e+=4)de.insertCircle(Ie,z[$e],z[$e+1],z[$e+2])},cl.prototype.projectAndGetPerspectiveRatio=function(z,K,O){var $=[K,O,0,1];wl($,$,z);var pe=new i.Point(($[0]/$[3]+1)/2*this.transform.width+os,(-$[1]/$[3]+1)/2*this.transform.height+os);return{point:pe,perspectiveRatio:.5+.5*(this.transform.cameraToCenterDistance/$[3])}},cl.prototype.isOffscreen=function(z,K,O,$){return O<os||z>=this.screenRightBoundary||$<os||K>this.screenBottomBoundary},cl.prototype.isInsideGrid=function(z,K,O,$){return O>=0&&z<this.gridRightBoundary&&$>=0&&K<this.gridBottomBoundary},cl.prototype.getViewportMatrix=function(){var z=i.identity([]);return i.translate(z,z,[-os,-os,0]),z};function Cs(Y,z,K){return z*(i.EXTENT/(Y.tileSize*Math.pow(2,K-Y.tileID.overscaledZ)))}var ml=function(z,K,O,$){z?this.opacity=Math.max(0,Math.min(1,z.opacity+(z.placed?K:-K))):this.opacity=$&&O?1:0,this.placed=O};ml.prototype.isHidden=function(){return this.opacity===0&&!this.placed};var Ys=function(z,K,O,$,pe){this.text=new ml(z?z.text:null,K,O,pe),this.icon=new ml(z?z.icon:null,K,$,pe)};Ys.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var Hs=function(z,K,O){this.text=z,this.icon=K,this.skipFade=O},Eo=function(){this.invProjMatrix=i.create(),this.viewportMatrix=i.create(),this.circles=[]},fs=function(z,K,O,$,pe){this.bucketInstanceId=z,this.featureIndex=K,this.sourceLayerIndex=O,this.bucketIndex=$,this.tileID=pe},Ql=function(z){this.crossSourceCollisions=z,this.maxGroupID=0,this.collisionGroups={}};Ql.prototype.get=function(z){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[z]){var K=++this.maxGroupID;this.collisionGroups[z]={ID:K,predicate:function(O){return O.collisionGroupID===K}}}return this.collisionGroups[z]};function Hu(Y,z,K,O,$){var pe=i.getAnchorAlignment(Y),de=pe.horizontalAlign,Ie=pe.verticalAlign,$e=-(de-.5)*z,pt=-(Ie-.5)*K,Kt=i.evaluateVariableOffset(Y,O);return new i.Point($e+Kt[0]*$,pt+Kt[1]*$)}function fc(Y,z,K,O,$,pe){var de=Y.x1,Ie=Y.x2,$e=Y.y1,pt=Y.y2,Kt=Y.anchorPointX,ir=Y.anchorPointY,Jt=new i.Point(z,K);return O&&Jt._rotate($?pe:-pe),{x1:de+Jt.x,y1:$e+Jt.y,x2:Ie+Jt.x,y2:pt+Jt.y,anchorPointX:Kt,anchorPointY:ir}}var ms=function(z,K,O,$){this.transform=z.clone(),this.collisionIndex=new cl(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=K,this.retainedQueryData={},this.collisionGroups=new Ql(O),this.collisionCircleArrays={},this.prevPlacement=$,$&&($.prevPlacement=void 0),this.placedOrientations={}};ms.prototype.getBucketParts=function(z,K,O,$){var pe=O.getBucket(K),de=O.latestFeatureIndex;if(!(!pe||!de||K.id!==pe.layerIds[0])){var Ie=O.collisionBoxArray,$e=pe.layers[0].layout,pt=Math.pow(2,this.transform.zoom-O.tileID.overscaledZ),Kt=O.tileSize/i.EXTENT,ir=this.transform.calculatePosMatrix(O.tileID.toUnwrapped()),Jt=$e.get("text-pitch-alignment")==="map",vt=$e.get("text-rotation-alignment")==="map",Pt=Cs(O,1,this.transform.zoom),Wt=Ji(ir,Jt,vt,this.transform,Pt),rr=null;if(Jt){var dr=ua(ir,Jt,vt,this.transform,Pt);rr=i.multiply([],this.transform.labelPlaneMatrix,dr)}this.retainedQueryData[pe.bucketInstanceId]=new fs(pe.bucketInstanceId,de,pe.sourceLayerIndex,pe.index,O.tileID);var pr={bucket:pe,layout:$e,posMatrix:ir,textLabelPlaneMatrix:Wt,labelToScreenMatrix:rr,scale:pt,textPixelRatio:Kt,holdingForFade:O.holdingForFade(),collisionBoxArray:Ie,partiallyEvaluatedTextSize:i.evaluateSizeForZoom(pe.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(pe.sourceID)};if($)for(var kr=0,Ar=pe.sortKeyRanges;kr<Ar.length;kr+=1){var gr=Ar[kr],Cr=gr.sortKey,cr=gr.symbolInstanceStart,Gr=gr.symbolInstanceEnd;z.push({sortKey:Cr,symbolInstanceStart:cr,symbolInstanceEnd:Gr,parameters:pr})}else z.push({symbolInstanceStart:0,symbolInstanceEnd:pe.symbolInstances.length,parameters:pr})}},ms.prototype.attemptAnchorPlacement=function(z,K,O,$,pe,de,Ie,$e,pt,Kt,ir,Jt,vt,Pt,Wt){var rr=[Jt.textOffset0,Jt.textOffset1],dr=Hu(z,O,$,rr,pe),pr=this.collisionIndex.placeCollisionBox(fc(K,dr.x,dr.y,de,Ie,this.transform.angle),ir,$e,pt,Kt.predicate);if(Wt){var kr=this.collisionIndex.placeCollisionBox(fc(Wt,dr.x,dr.y,de,Ie,this.transform.angle),ir,$e,pt,Kt.predicate);if(kr.box.length===0)return}if(pr.box.length>0){var Ar;return this.prevPlacement&&this.prevPlacement.variableOffsets[Jt.crossTileID]&&this.prevPlacement.placements[Jt.crossTileID]&&this.prevPlacement.placements[Jt.crossTileID].text&&(Ar=this.prevPlacement.variableOffsets[Jt.crossTileID].anchor),this.variableOffsets[Jt.crossTileID]={textOffset:rr,width:O,height:$,anchor:z,textBoxScale:pe,prevAnchor:Ar},this.markUsedJustification(vt,z,Jt,Pt),vt.allowVerticalPlacement&&(this.markUsedOrientation(vt,Pt,Jt),this.placedOrientations[Jt.crossTileID]=Pt),{shift:dr,placedGlyphBoxes:pr}}},ms.prototype.placeLayerBucketPart=function(z,K,O){var $=this,pe=z.parameters,de=pe.bucket,Ie=pe.layout,$e=pe.posMatrix,pt=pe.textLabelPlaneMatrix,Kt=pe.labelToScreenMatrix,ir=pe.textPixelRatio,Jt=pe.holdingForFade,vt=pe.collisionBoxArray,Pt=pe.partiallyEvaluatedTextSize,Wt=pe.collisionGroup,rr=Ie.get("text-optional"),dr=Ie.get("icon-optional"),pr=Ie.get("text-allow-overlap"),kr=Ie.get("icon-allow-overlap"),Ar=Ie.get("text-rotation-alignment")==="map",gr=Ie.get("text-pitch-alignment")==="map",Cr=Ie.get("icon-text-fit")!=="none",cr=Ie.get("symbol-z-order")==="viewport-y",Gr=pr&&(kr||!de.hasIconData()||dr),ei=kr&&(pr||!de.hasTextData()||rr);!de.collisionArrays&&vt&&de.deserializeCollisionBoxes(vt);var yi=function(rn,bn){if(!K[rn.crossTileID]){if(Jt){$.placements[rn.crossTileID]=new Hs(!1,!1,!1);return}var mn=!1,Gn=!1,da=!0,No=null,Do={box:null,offscreen:null},ps={box:null,offscreen:null},fo=null,as=null,tl=null,zu=0,Mv=0,Ev=0;bn.textFeatureIndex?zu=bn.textFeatureIndex:rn.useRuntimeCollisionCircles&&(zu=rn.featureIndex),bn.verticalTextFeatureIndex&&(Mv=bn.verticalTextFeatureIndex);var yd=bn.textBox;if(yd){var Yv=function(Fu){var kl=i.WritingMode.horizontal;if(de.allowVerticalPlacement&&!Fu&&$.prevPlacement){var bd=$.prevPlacement.placedOrientations[rn.crossTileID];bd&&($.placedOrientations[rn.crossTileID]=bd,kl=bd,$.markUsedOrientation(de,kl,rn))}return kl},cg=function(Fu,kl){if(de.allowVerticalPlacement&&rn.numVerticalGlyphVertices>0&&bn.verticalTextBox)for(var bd=0,sy=de.writingModes;bd<sy.length;bd+=1){var A1=sy[bd];if(A1===i.WritingMode.vertical?(Do=kl(),ps=Do):Do=Fu(),Do&&Do.box&&Do.box.length)break}else Do=Fu()};if(Ie.get("text-variable-anchor")){var Nd=Ie.get("text-variable-anchor");if($.prevPlacement&&$.prevPlacement.variableOffsets[rn.crossTileID]){var xd=$.prevPlacement.variableOffsets[rn.crossTileID];Nd.indexOf(xd.anchor)>0&&(Nd=Nd.filter(function(Fu){return Fu!==xd.anchor}),Nd.unshift(xd.anchor))}var kv=function(Fu,kl,bd){for(var sy=Fu.x2-Fu.x1,A1=Fu.y2-Fu.y1,Kl=rn.textBoxScale,Nx=Cr&&!kr?kl:null,am={box:[],offscreen:!1},Mw=pr?Nd.length*2:Nd.length,Lv=0;Lv<Mw;++Lv){var om=Nd[Lv%Nd.length],Ew=Lv>=Nd.length,Ux=$.attemptAnchorPlacement(om,Fu,sy,A1,Kl,Ar,gr,ir,$e,Wt,Ew,rn,de,bd,Nx);if(Ux&&(am=Ux.placedGlyphBoxes,am&&am.box&&am.box.length)){mn=!0,No=Ux.shift;break}}return am},Kv=function(){return kv(yd,bn.iconBox,i.WritingMode.horizontal)},Cv=function(){var Fu=bn.verticalTextBox,kl=Do&&Do.box&&Do.box.length;return de.allowVerticalPlacement&&!kl&&rn.numVerticalGlyphVertices>0&&Fu?kv(Fu,bn.verticalIconBox,i.WritingMode.vertical):{box:null,offscreen:null}};cg(Kv,Cv),Do&&(mn=Do.box,da=Do.offscreen);var ny=Yv(Do&&Do.box);if(!mn&&$.prevPlacement){var fg=$.prevPlacement.variableOffsets[rn.crossTileID];fg&&($.variableOffsets[rn.crossTileID]=fg,$.markUsedJustification(de,fg.anchor,rn,ny))}}else{var vp=function(Fu,kl){var bd=$.collisionIndex.placeCollisionBox(Fu,pr,ir,$e,Wt.predicate);return bd&&bd.box&&bd.box.length&&($.markUsedOrientation(de,kl,rn),$.placedOrientations[rn.crossTileID]=kl),bd},_d=function(){return vp(yd,i.WritingMode.horizontal)},pp=function(){var Fu=bn.verticalTextBox;return de.allowVerticalPlacement&&rn.numVerticalGlyphVertices>0&&Fu?vp(Fu,i.WritingMode.vertical):{box:null,offscreen:null}};cg(_d,pp),Yv(Do&&Do.box&&Do.box.length)}}if(fo=Do,mn=fo&&fo.box&&fo.box.length>0,da=fo&&fo.offscreen,rn.useRuntimeCollisionCircles){var Hf=de.text.placedSymbolArray.get(rn.centerJustifiedTextSymbolIndex),hg=i.evaluateSizeForFeature(de.textSizeData,Pt,Hf),ay=Ie.get("text-padding"),Rh=rn.collisionCircleDiameter;as=$.collisionIndex.placeCollisionCircles(pr,Hf,de.lineVertexArray,de.glyphOffsetArray,hg,$e,pt,Kt,O,gr,Wt.predicate,Rh,ay),mn=pr||as.circles.length>0&&!as.collisionDetected,da=da&&as.offscreen}if(bn.iconFeatureIndex&&(Ev=bn.iconFeatureIndex),bn.iconBox){var rm=function(Fu){var kl=Cr&&No?fc(Fu,No.x,No.y,Ar,gr,$.transform.angle):Fu;return $.collisionIndex.placeCollisionBox(kl,kr,ir,$e,Wt.predicate)};ps&&ps.box&&ps.box.length&&bn.verticalIconBox?(tl=rm(bn.verticalIconBox),Gn=tl.box.length>0):(tl=rm(bn.iconBox),Gn=tl.box.length>0),da=da&&tl.offscreen}var w1=rr||rn.numHorizontalGlyphVertices===0&&rn.numVerticalGlyphVertices===0,T1=dr||rn.numIconVertices===0;if(!w1&&!T1?Gn=mn=Gn&&mn:T1?w1||(Gn=Gn&&mn):mn=Gn&&mn,mn&&fo&&fo.box&&(ps&&ps.box&&Mv?$.collisionIndex.insertCollisionBox(fo.box,Ie.get("text-ignore-placement"),de.bucketInstanceId,Mv,Wt.ID):$.collisionIndex.insertCollisionBox(fo.box,Ie.get("text-ignore-placement"),de.bucketInstanceId,zu,Wt.ID)),Gn&&tl&&$.collisionIndex.insertCollisionBox(tl.box,Ie.get("icon-ignore-placement"),de.bucketInstanceId,Ev,Wt.ID),as&&(mn&&$.collisionIndex.insertCollisionCircles(as.circles,Ie.get("text-ignore-placement"),de.bucketInstanceId,zu,Wt.ID),O)){var oy=de.bucketInstanceId,im=$.collisionCircleArrays[oy];im===void 0&&(im=$.collisionCircleArrays[oy]=new Eo);for(var nm=0;nm<as.circles.length;nm+=4)im.circles.push(as.circles[nm+0]),im.circles.push(as.circles[nm+1]),im.circles.push(as.circles[nm+2]),im.circles.push(as.collisionDetected?1:0)}$.placements[rn.crossTileID]=new Hs(mn||Gr,Gn||ei,da||de.justReloaded),K[rn.crossTileID]=!0}};if(cr)for(var tn=de.getSortedSymbolIndexes(this.transform.angle),Ri=tn.length-1;Ri>=0;--Ri){var ln=tn[Ri];yi(de.symbolInstances.get(ln),de.collisionArrays[ln])}else for(var Qn=z.symbolInstanceStart;Qn<z.symbolInstanceEnd;Qn++)yi(de.symbolInstances.get(Qn),de.collisionArrays[Qn]);if(O&&de.bucketInstanceId in this.collisionCircleArrays){var qn=this.collisionCircleArrays[de.bucketInstanceId];i.invert(qn.invProjMatrix,$e),qn.viewportMatrix=this.collisionIndex.getViewportMatrix()}de.justReloaded=!1},ms.prototype.markUsedJustification=function(z,K,O,$){var pe={left:O.leftJustifiedTextSymbolIndex,center:O.centerJustifiedTextSymbolIndex,right:O.rightJustifiedTextSymbolIndex},de;$===i.WritingMode.vertical?de=O.verticalPlacedTextSymbolIndex:de=pe[i.getAnchorJustification(K)];for(var Ie=[O.leftJustifiedTextSymbolIndex,O.centerJustifiedTextSymbolIndex,O.rightJustifiedTextSymbolIndex,O.verticalPlacedTextSymbolIndex],$e=0,pt=Ie;$e<pt.length;$e+=1){var Kt=pt[$e];Kt>=0&&(de>=0&&Kt!==de?z.text.placedSymbolArray.get(Kt).crossTileID=0:z.text.placedSymbolArray.get(Kt).crossTileID=O.crossTileID)}},ms.prototype.markUsedOrientation=function(z,K,O){for(var $=K===i.WritingMode.horizontal||K===i.WritingMode.horizontalOnly?K:0,pe=K===i.WritingMode.vertical?K:0,de=[O.leftJustifiedTextSymbolIndex,O.centerJustifiedTextSymbolIndex,O.rightJustifiedTextSymbolIndex],Ie=0,$e=de;Ie<$e.length;Ie+=1){var pt=$e[Ie];z.text.placedSymbolArray.get(pt).placedOrientation=$}O.verticalPlacedTextSymbolIndex&&(z.text.placedSymbolArray.get(O.verticalPlacedTextSymbolIndex).placedOrientation=pe)},ms.prototype.commit=function(z){this.commitTime=z,this.zoomAtLastRecencyCheck=this.transform.zoom;var K=this.prevPlacement,O=!1;this.prevZoomAdjustment=K?K.zoomAdjustment(this.transform.zoom):0;var $=K?K.symbolFadeChange(z):1,pe=K?K.opacities:{},de=K?K.variableOffsets:{},Ie=K?K.placedOrientations:{};for(var $e in this.placements){var pt=this.placements[$e],Kt=pe[$e];Kt?(this.opacities[$e]=new Ys(Kt,$,pt.text,pt.icon),O=O||pt.text!==Kt.text.placed||pt.icon!==Kt.icon.placed):(this.opacities[$e]=new Ys(null,$,pt.text,pt.icon,pt.skipFade),O=O||pt.text||pt.icon)}for(var ir in pe){var Jt=pe[ir];if(!this.opacities[ir]){var vt=new Ys(Jt,$,!1,!1);vt.isHidden()||(this.opacities[ir]=vt,O=O||Jt.text.placed||Jt.icon.placed)}}for(var Pt in de)!this.variableOffsets[Pt]&&this.opacities[Pt]&&!this.opacities[Pt].isHidden()&&(this.variableOffsets[Pt]=de[Pt]);for(var Wt in Ie)!this.placedOrientations[Wt]&&this.opacities[Wt]&&!this.opacities[Wt].isHidden()&&(this.placedOrientations[Wt]=Ie[Wt]);O?this.lastPlacementChangeTime=z:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=K?K.lastPlacementChangeTime:z)},ms.prototype.updateLayerOpacities=function(z,K){for(var O={},$=0,pe=K;$<pe.length;$+=1){var de=pe[$],Ie=de.getBucket(z);Ie&&de.latestFeatureIndex&&z.id===Ie.layerIds[0]&&this.updateBucketOpacities(Ie,O,de.collisionBoxArray)}},ms.prototype.updateBucketOpacities=function(z,K,O){var $=this;z.hasTextData()&&z.text.opacityVertexArray.clear(),z.hasIconData()&&z.icon.opacityVertexArray.clear(),z.hasIconCollisionBoxData()&&z.iconCollisionBox.collisionVertexArray.clear(),z.hasTextCollisionBoxData()&&z.textCollisionBox.collisionVertexArray.clear();var pe=z.layers[0].layout,de=new Ys(null,0,!1,!1,!0),Ie=pe.get("text-allow-overlap"),$e=pe.get("icon-allow-overlap"),pt=pe.get("text-variable-anchor"),Kt=pe.get("text-rotation-alignment")==="map",ir=pe.get("text-pitch-alignment")==="map",Jt=pe.get("icon-text-fit")!=="none",vt=new Ys(null,0,Ie&&($e||!z.hasIconData()||pe.get("icon-optional")),$e&&(Ie||!z.hasTextData()||pe.get("text-optional")),!0);!z.collisionArrays&&O&&(z.hasIconCollisionBoxData()||z.hasTextCollisionBoxData())&&z.deserializeCollisionBoxes(O);for(var Pt=function(pr,kr,Ar){for(var gr=0;gr<kr/4;gr++)pr.opacityVertexArray.emplaceBack(Ar)},Wt=function(pr){var kr=z.symbolInstances.get(pr),Ar=kr.numHorizontalGlyphVertices,gr=kr.numVerticalGlyphVertices,Cr=kr.crossTileID,cr=K[Cr],Gr=$.opacities[Cr];cr?Gr=de:Gr||(Gr=vt,$.opacities[Cr]=Gr),K[Cr]=!0;var ei=Ar>0||gr>0,yi=kr.numIconVertices>0,tn=$.placedOrientations[kr.crossTileID],Ri=tn===i.WritingMode.vertical,ln=tn===i.WritingMode.horizontal||tn===i.WritingMode.horizontalOnly;if(ei){var Qn=Ec(Gr.text),qn=Ri?Zn:Qn;Pt(z.text,Ar,qn);var rn=ln?Zn:Qn;Pt(z.text,gr,rn);var bn=Gr.text.isHidden();[kr.rightJustifiedTextSymbolIndex,kr.centerJustifiedTextSymbolIndex,kr.leftJustifiedTextSymbolIndex].forEach(function(Ev){Ev>=0&&(z.text.placedSymbolArray.get(Ev).hidden=bn||Ri?1:0)}),kr.verticalPlacedTextSymbolIndex>=0&&(z.text.placedSymbolArray.get(kr.verticalPlacedTextSymbolIndex).hidden=bn||ln?1:0);var mn=$.variableOffsets[kr.crossTileID];mn&&$.markUsedJustification(z,mn.anchor,kr,tn);var Gn=$.placedOrientations[kr.crossTileID];Gn&&($.markUsedJustification(z,"left",kr,Gn),$.markUsedOrientation(z,Gn,kr))}if(yi){var da=Ec(Gr.icon),No=!(Jt&&kr.verticalPlacedIconSymbolIndex&&Ri);if(kr.placedIconSymbolIndex>=0){var Do=No?da:Zn;Pt(z.icon,kr.numIconVertices,Do),z.icon.placedSymbolArray.get(kr.placedIconSymbolIndex).hidden=Gr.icon.isHidden()}if(kr.verticalPlacedIconSymbolIndex>=0){var ps=No?Zn:da;Pt(z.icon,kr.numVerticalIconVertices,ps),z.icon.placedSymbolArray.get(kr.verticalPlacedIconSymbolIndex).hidden=Gr.icon.isHidden()}}if(z.hasIconCollisionBoxData()||z.hasTextCollisionBoxData()){var fo=z.collisionArrays[pr];if(fo){var as=new i.Point(0,0);if(fo.textBox||fo.verticalTextBox){var tl=!0;if(pt){var zu=$.variableOffsets[Cr];zu?(as=Hu(zu.anchor,zu.width,zu.height,zu.textOffset,zu.textBoxScale),Kt&&as._rotate(ir?$.transform.angle:-$.transform.angle)):tl=!1}fo.textBox&&on(z.textCollisionBox.collisionVertexArray,Gr.text.placed,!tl||Ri,as.x,as.y),fo.verticalTextBox&&on(z.textCollisionBox.collisionVertexArray,Gr.text.placed,!tl||ln,as.x,as.y)}var Mv=!!(!ln&&fo.verticalIconBox);fo.iconBox&&on(z.iconCollisionBox.collisionVertexArray,Gr.icon.placed,Mv,Jt?as.x:0,Jt?as.y:0),fo.verticalIconBox&&on(z.iconCollisionBox.collisionVertexArray,Gr.icon.placed,!Mv,Jt?as.x:0,Jt?as.y:0)}}},rr=0;rr<z.symbolInstances.length;rr++)Wt(rr);if(z.sortFeatures(this.transform.angle),this.retainedQueryData[z.bucketInstanceId]&&(this.retainedQueryData[z.bucketInstanceId].featureSortOrder=z.featureSortOrder),z.hasTextData()&&z.text.opacityVertexBuffer&&z.text.opacityVertexBuffer.updateData(z.text.opacityVertexArray),z.hasIconData()&&z.icon.opacityVertexBuffer&&z.icon.opacityVertexBuffer.updateData(z.icon.opacityVertexArray),z.hasIconCollisionBoxData()&&z.iconCollisionBox.collisionVertexBuffer&&z.iconCollisionBox.collisionVertexBuffer.updateData(z.iconCollisionBox.collisionVertexArray),z.hasTextCollisionBoxData()&&z.textCollisionBox.collisionVertexBuffer&&z.textCollisionBox.collisionVertexBuffer.updateData(z.textCollisionBox.collisionVertexArray),z.bucketInstanceId in this.collisionCircleArrays){var dr=this.collisionCircleArrays[z.bucketInstanceId];z.placementInvProjMatrix=dr.invProjMatrix,z.placementViewportMatrix=dr.viewportMatrix,z.collisionCircleArray=dr.circles,delete this.collisionCircleArrays[z.bucketInstanceId]}},ms.prototype.symbolFadeChange=function(z){return this.fadeDuration===0?1:(z-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},ms.prototype.zoomAdjustment=function(z){return Math.max(0,(this.transform.zoom-z)/1.5)},ms.prototype.hasTransitions=function(z){return this.stale||z-this.lastPlacementChangeTime<this.fadeDuration},ms.prototype.stillRecent=function(z,K){var O=this.zoomAtLastRecencyCheck===K?1-this.zoomAdjustment(K):1;return this.zoomAtLastRecencyCheck=K,this.commitTime+this.fadeDuration*O>z},ms.prototype.setStale=function(){this.stale=!0};function on(Y,z,K,O,$){Y.emplaceBack(z?1:0,K?1:0,O||0,$||0),Y.emplaceBack(z?1:0,K?1:0,O||0,$||0),Y.emplaceBack(z?1:0,K?1:0,O||0,$||0),Y.emplaceBack(z?1:0,K?1:0,O||0,$||0)}var fa=Math.pow(2,25),Qu=Math.pow(2,24),Rl=Math.pow(2,17),vo=Math.pow(2,16),Zl=Math.pow(2,9),Ks=Math.pow(2,8),Xl=Math.pow(2,1);function Ec(Y){if(Y.opacity===0&&!Y.placed)return 0;if(Y.opacity===1&&Y.placed)return 4294967295;var z=Y.placed?1:0,K=Math.floor(Y.opacity*127);return K*fa+z*Qu+K*Rl+z*vo+K*Zl+z*Ks+K*Xl+z}var Zn=0,ko=function(z){this._sortAcrossTiles=z.layout.get("symbol-z-order")!=="viewport-y"&&z.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};ko.prototype.continuePlacement=function(z,K,O,$,pe){for(var de=this._bucketParts;this._currentTileIndex<z.length;){var Ie=z[this._currentTileIndex];if(K.getBucketParts(de,$,Ie,this._sortAcrossTiles),this._currentTileIndex++,pe())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,de.sort(function(pt,Kt){return pt.sortKey-Kt.sortKey}));this._currentPartIndex<de.length;){var $e=de[this._currentPartIndex];if(K.placeLayerBucketPart($e,this._seenCrossTileIDs,O),this._currentPartIndex++,pe())return!0}return!1};var Co=function(z,K,O,$,pe,de,Ie){this.placement=new ms(z,pe,de,Ie),this._currentPlacementIndex=K.length-1,this._forceFullPlacement=O,this._showCollisionBoxes=$,this._done=!1};Co.prototype.isDone=function(){return this._done},Co.prototype.continuePlacement=function(z,K,O){for(var $=this,pe=i.browser.now(),de=function(){var ir=i.browser.now()-pe;return $._forceFullPlacement?!1:ir>2};this._currentPlacementIndex>=0;){var Ie=z[this._currentPlacementIndex],$e=K[Ie],pt=this.placement.collisionIndex.transform.zoom;if($e.type==="symbol"&&(!$e.minzoom||$e.minzoom<=pt)&&(!$e.maxzoom||$e.maxzoom>pt)){this._inProgressLayer||(this._inProgressLayer=new ko($e));var Kt=this._inProgressLayer.continuePlacement(O[$e.source],this.placement,this._showCollisionBoxes,$e,de);if(Kt)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Co.prototype.commit=function(z){return this.placement.commit(z),this.placement};var Tl=512/i.EXTENT/2,uf=function(z,K,O){this.tileID=z,this.indexedSymbolInstances={},this.bucketInstanceId=O;for(var $=0;$<K.length;$++){var pe=K.get($),de=pe.key;this.indexedSymbolInstances[de]||(this.indexedSymbolInstances[de]=[]),this.indexedSymbolInstances[de].push({crossTileID:pe.crossTileID,coord:this.getScaledCoordinates(pe,z)})}};uf.prototype.getScaledCoordinates=function(z,K){var O=K.canonical.z-this.tileID.canonical.z,$=Tl/Math.pow(2,O);return{x:Math.floor((K.canonical.x*i.EXTENT+z.anchorX)*$),y:Math.floor((K.canonical.y*i.EXTENT+z.anchorY)*$)}},uf.prototype.findMatches=function(z,K,O){for(var $=this.tileID.canonical.z<K.canonical.z?1:Math.pow(2,this.tileID.canonical.z-K.canonical.z),pe=0;pe<z.length;pe++){var de=z.get(pe);if(!de.crossTileID){var Ie=this.indexedSymbolInstances[de.key];if(Ie)for(var $e=this.getScaledCoordinates(de,K),pt=0,Kt=Ie;pt<Kt.length;pt+=1){var ir=Kt[pt];if(Math.abs(ir.coord.x-$e.x)<=$&&Math.abs(ir.coord.y-$e.y)<=$&&!O[ir.crossTileID]){O[ir.crossTileID]=!0,de.crossTileID=ir.crossTileID;break}}}}};var So=function(){this.maxCrossTileID=0};So.prototype.generate=function(){return++this.maxCrossTileID};var cf=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};cf.prototype.handleWrapJump=function(z){var K=Math.round((z-this.lng)/360);if(K!==0)for(var O in this.indexes){var $=this.indexes[O],pe={};for(var de in $){var Ie=$[de];Ie.tileID=Ie.tileID.unwrapTo(Ie.tileID.wrap+K),pe[Ie.tileID.key]=Ie}this.indexes[O]=pe}this.lng=z},cf.prototype.addBucket=function(z,K,O){if(this.indexes[z.overscaledZ]&&this.indexes[z.overscaledZ][z.key]){if(this.indexes[z.overscaledZ][z.key].bucketInstanceId===K.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(z.overscaledZ,this.indexes[z.overscaledZ][z.key])}for(var $=0;$<K.symbolInstances.length;$++){var pe=K.symbolInstances.get($);pe.crossTileID=0}this.usedCrossTileIDs[z.overscaledZ]||(this.usedCrossTileIDs[z.overscaledZ]={});var de=this.usedCrossTileIDs[z.overscaledZ];for(var Ie in this.indexes){var $e=this.indexes[Ie];if(Number(Ie)>z.overscaledZ)for(var pt in $e){var Kt=$e[pt];Kt.tileID.isChildOf(z)&&Kt.findMatches(K.symbolInstances,z,de)}else{var ir=z.scaledTo(Number(Ie)),Jt=$e[ir.key];Jt&&Jt.findMatches(K.symbolInstances,z,de)}}for(var vt=0;vt<K.symbolInstances.length;vt++){var Pt=K.symbolInstances.get(vt);Pt.crossTileID||(Pt.crossTileID=O.generate(),de[Pt.crossTileID]=!0)}return this.indexes[z.overscaledZ]===void 0&&(this.indexes[z.overscaledZ]={}),this.indexes[z.overscaledZ][z.key]=new uf(z,K.symbolInstances,K.bucketInstanceId),!0},cf.prototype.removeBucketCrossTileIDs=function(z,K){for(var O in K.indexedSymbolInstances)for(var $=0,pe=K.indexedSymbolInstances[O];$<pe.length;$+=1){var de=pe[$];delete this.usedCrossTileIDs[z][de.crossTileID]}},cf.prototype.removeStaleBuckets=function(z){var K=!1;for(var O in this.indexes){var $=this.indexes[O];for(var pe in $)z[$[pe].bucketInstanceId]||(this.removeBucketCrossTileIDs(O,$[pe]),delete $[pe],K=!0)}return K};var rh=function(){this.layerIndexes={},this.crossTileIDs=new So,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};rh.prototype.addLayer=function(z,K,O){var $=this.layerIndexes[z.id];$===void 0&&($=this.layerIndexes[z.id]=new cf);var pe=!1,de={};$.handleWrapJump(O);for(var Ie=0,$e=K;Ie<$e.length;Ie+=1){var pt=$e[Ie],Kt=pt.getBucket(z);!Kt||z.id!==Kt.layerIds[0]||(Kt.bucketInstanceId||(Kt.bucketInstanceId=++this.maxBucketInstanceId),$.addBucket(pt.tileID,Kt,this.crossTileIDs)&&(pe=!0),de[Kt.bucketInstanceId]=!0)}return $.removeStaleBuckets(de)&&(pe=!0),pe},rh.prototype.pruneUnusedLayers=function(z){var K={};z.forEach(function($){K[$]=!0});for(var O in this.layerIndexes)K[O]||delete this.layerIndexes[O]};var Al=function(Y,z){return i.emitValidationErrors(Y,z&&z.filter(function(K){return K.identifier!=="source.canvas"}))},Hc=i.pick(oa,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),eu=i.pick(oa,["setCenter","setZoom","setBearing","setPitch"]),Ls=jo(),mu=function(Y){function z(K,O){var $=this;O===void 0&&(O={}),Y.call(this),this.map=K,this.dispatcher=new X(ka(),this),this.imageManager=new E,this.imageManager.setEventedParent(this),this.glyphManager=new P(K._requestManager,O.localIdeographFontFamily),this.lineAtlas=new H(256,512),this.crossTileSymbolIndex=new rh,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new i.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("setReferrer",i.getReferrer());var pe=this;this._rtlTextPluginCallback=z.registerForPluginStateChange(function(de){var Ie={pluginStatus:de.pluginStatus,pluginURL:de.pluginURL};pe.dispatcher.broadcast("syncRTLPluginState",Ie,function($e,pt){if(i.triggerPluginCompletionEvent($e),pt){var Kt=pt.every(function(Jt){return Jt});if(Kt)for(var ir in pe.sourceCaches)pe.sourceCaches[ir].reload()}})}),this.on("data",function(de){if(!(de.dataType!=="source"||de.sourceDataType!=="metadata")){var Ie=$.sourceCaches[de.sourceId];if(Ie){var $e=Ie.getSource();if(!(!$e||!$e.vectorLayerIds))for(var pt in $._layers){var Kt=$._layers[pt];Kt.source===$e.id&&$._validateLayer(Kt)}}}})}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.loadURL=function(O,$){var pe=this;$===void 0&&($={}),this.fire(new i.Event("dataloading",{dataType:"style"}));var de=typeof $.validate=="boolean"?$.validate:!i.isMapboxURL(O);O=this.map._requestManager.normalizeStyleURL(O,$.accessToken);var Ie=this.map._requestManager.transformRequest(O,i.ResourceType.Style);this._request=i.getJSON(Ie,function($e,pt){pe._request=null,$e?pe.fire(new i.ErrorEvent($e)):pt&&pe._load(pt,de)})},z.prototype.loadJSON=function(O,$){var pe=this;$===void 0&&($={}),this.fire(new i.Event("dataloading",{dataType:"style"})),this._request=i.browser.frame(function(){pe._request=null,pe._load(O,$.validate!==!1)})},z.prototype.loadEmpty=function(){this.fire(new i.Event("dataloading",{dataType:"style"})),this._load(Ls,!1)},z.prototype._load=function(O,$){if(!($&&Al(this,i.validateStyle(O)))){this._loaded=!0,this.stylesheet=O;for(var pe in O.sources)this.addSource(pe,O.sources[pe],{validate:!1});O.sprite?this._loadSprite(O.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(O.glyphs);var de=Ra(this.stylesheet.layers);this._order=de.map(function(Kt){return Kt.id}),this._layers={},this._serializedLayers={};for(var Ie=0,$e=de;Ie<$e.length;Ie+=1){var pt=$e[Ie];pt=i.createStyleLayer(pt),pt.setEventedParent(this,{layer:{id:pt.id}}),this._layers[pt.id]=pt,this._serializedLayers[pt.id]=pt.serialize()}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new V(this.stylesheet.light),this.fire(new i.Event("data",{dataType:"style"})),this.fire(new i.Event("style.load"))}},z.prototype._loadSprite=function(O){var $=this;this._spriteRequest=x(O,this.map._requestManager,function(pe,de){if($._spriteRequest=null,pe)$.fire(new i.ErrorEvent(pe));else if(de)for(var Ie in de)$.imageManager.addImage(Ie,de[Ie]);$.imageManager.setLoaded(!0),$._availableImages=$.imageManager.listImages(),$.dispatcher.broadcast("setImages",$._availableImages),$.fire(new i.Event("data",{dataType:"style"}))})},z.prototype._validateLayer=function(O){var $=this.sourceCaches[O.source];if($){var pe=O.sourceLayer;if(pe){var de=$.getSource();(de.type==="geojson"||de.vectorLayerIds&&de.vectorLayerIds.indexOf(pe)===-1)&&this.fire(new i.ErrorEvent(new Error('Source layer "'+pe+'" does not exist on source "'+de.id+'" as specified by style layer "'+O.id+'"')))}}},z.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var O in this.sourceCaches)if(!this.sourceCaches[O].loaded())return!1;return!!this.imageManager.isLoaded()},z.prototype._serializeLayers=function(O){for(var $=[],pe=0,de=O;pe<de.length;pe+=1){var Ie=de[pe],$e=this._layers[Ie];$e.type!=="custom"&&$.push($e.serialize())}return $},z.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var O in this.sourceCaches)if(this.sourceCaches[O].hasTransition())return!0;for(var $ in this._layers)if(this._layers[$].hasTransition())return!0;return!1},z.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},z.prototype.update=function(O){if(this._loaded){var $=this._changed;if(this._changed){var pe=Object.keys(this._updatedLayers),de=Object.keys(this._removedLayers);(pe.length||de.length)&&this._updateWorkerLayers(pe,de);for(var Ie in this._updatedSources){var $e=this._updatedSources[Ie];$e==="reload"?this._reloadSource(Ie):$e==="clear"&&this._clearSource(Ie)}this._updateTilesForChangedImages();for(var pt in this._updatedPaintProps)this._layers[pt].updateTransitions(O);this.light.updateTransitions(O),this._resetUpdates()}var Kt={};for(var ir in this.sourceCaches){var Jt=this.sourceCaches[ir];Kt[ir]=Jt.used,Jt.used=!1}for(var vt=0,Pt=this._order;vt<Pt.length;vt+=1){var Wt=Pt[vt],rr=this._layers[Wt];rr.recalculate(O,this._availableImages),!rr.isHidden(O.zoom)&&rr.source&&(this.sourceCaches[rr.source].used=!0)}for(var dr in Kt){var pr=this.sourceCaches[dr];Kt[dr]!==pr.used&&pr.fire(new i.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:dr}))}this.light.recalculate(O),this.z=O.zoom,$&&this.fire(new i.Event("data",{dataType:"style"}))}},z.prototype._updateTilesForChangedImages=function(){var O=Object.keys(this._changedImages);if(O.length){for(var $ in this.sourceCaches)this.sourceCaches[$].reloadTilesForDependencies(["icons","patterns"],O);this._changedImages={}}},z.prototype._updateWorkerLayers=function(O,$){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(O),removedIds:$})},z.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},z.prototype.setState=function(O){var $=this;if(this._checkLoaded(),Al(this,i.validateStyle(O)))return!1;O=i.clone$1(O),O.layers=Ra(O.layers);var pe=Yi(this.serialize(),O).filter(function(Ie){return!(Ie.command in eu)});if(pe.length===0)return!1;var de=pe.filter(function(Ie){return!(Ie.command in Hc)});if(de.length>0)throw new Error("Unimplemented: "+de.map(function(Ie){return Ie.command}).join(", ")+".");return pe.forEach(function(Ie){Ie.command!=="setTransition"&&$[Ie.command].apply($,Ie.args)}),this.stylesheet=O,!0},z.prototype.addImage=function(O,$){if(this.getImage(O))return this.fire(new i.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(O,$),this._afterImageUpdated(O)},z.prototype.updateImage=function(O,$){this.imageManager.updateImage(O,$)},z.prototype.getImage=function(O){return this.imageManager.getImage(O)},z.prototype.removeImage=function(O){if(!this.getImage(O))return this.fire(new i.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(O),this._afterImageUpdated(O)},z.prototype._afterImageUpdated=function(O){this._availableImages=this.imageManager.listImages(),this._changedImages[O]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new i.Event("data",{dataType:"style"}))},z.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},z.prototype.addSource=function(O,$,pe){var de=this;if(pe===void 0&&(pe={}),this._checkLoaded(),this.sourceCaches[O]!==void 0)throw new Error("There is already a source with this ID");if(!$.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys($).join(", ")+".");var Ie=["vector","raster","geojson","video","image"],$e=Ie.indexOf($.type)>=0;if(!($e&&this._validate(i.validateStyle.source,"sources."+O,$,null,pe))){this.map&&this.map._collectResourceTiming&&($.collectResourceTiming=!0);var pt=this.sourceCaches[O]=new Zr(O,$,this.dispatcher);pt.style=this,pt.setEventedParent(this,function(){return{isSourceLoaded:de.loaded(),source:pt.serialize(),sourceId:O}}),pt.onAdd(this.map),this._changed=!0}},z.prototype.removeSource=function(O){if(this._checkLoaded(),this.sourceCaches[O]===void 0)throw new Error("There is no source with this ID");for(var $ in this._layers)if(this._layers[$].source===O)return this.fire(new i.ErrorEvent(new Error('Source "'+O+'" cannot be removed while layer "'+$+'" is using it.')));var pe=this.sourceCaches[O];delete this.sourceCaches[O],delete this._updatedSources[O],pe.fire(new i.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:O})),pe.setEventedParent(null),pe.clearTiles(),pe.onRemove&&pe.onRemove(this.map),this._changed=!0},z.prototype.setGeoJSONSourceData=function(O,$){this._checkLoaded();var pe=this.sourceCaches[O].getSource();pe.setData($),this._changed=!0},z.prototype.getSource=function(O){return this.sourceCaches[O]&&this.sourceCaches[O].getSource()},z.prototype.addLayer=function(O,$,pe){pe===void 0&&(pe={}),this._checkLoaded();var de=O.id;if(this.getLayer(de)){this.fire(new i.ErrorEvent(new Error('Layer with id "'+de+'" already exists on this map')));return}var Ie;if(O.type==="custom"){if(Al(this,i.validateCustomStyleLayer(O)))return;Ie=i.createStyleLayer(O)}else{if(typeof O.source=="object"&&(this.addSource(de,O.source),O=i.clone$1(O),O=i.extend(O,{source:de})),this._validate(i.validateStyle.layer,"layers."+de,O,{arrayIndex:-1},pe))return;Ie=i.createStyleLayer(O),this._validateLayer(Ie),Ie.setEventedParent(this,{layer:{id:de}}),this._serializedLayers[Ie.id]=Ie.serialize()}var $e=$?this._order.indexOf($):this._order.length;if($&&$e===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+$+'" does not exist on this map.')));return}if(this._order.splice($e,0,de),this._layerOrderChanged=!0,this._layers[de]=Ie,this._removedLayers[de]&&Ie.source&&Ie.type!=="custom"){var pt=this._removedLayers[de];delete this._removedLayers[de],pt.type!==Ie.type?this._updatedSources[Ie.source]="clear":(this._updatedSources[Ie.source]="reload",this.sourceCaches[Ie.source].pause())}this._updateLayer(Ie),Ie.onAdd&&Ie.onAdd(this.map)},z.prototype.moveLayer=function(O,$){this._checkLoaded(),this._changed=!0;var pe=this._layers[O];if(!pe){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be moved.")));return}if(O!==$){var de=this._order.indexOf(O);this._order.splice(de,1);var Ie=$?this._order.indexOf($):this._order.length;if($&&Ie===-1){this.fire(new i.ErrorEvent(new Error('Layer with id "'+$+'" does not exist on this map.')));return}this._order.splice(Ie,0,O),this._layerOrderChanged=!0}},z.prototype.removeLayer=function(O){this._checkLoaded();var $=this._layers[O];if(!$){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be removed.")));return}$.setEventedParent(null);var pe=this._order.indexOf(O);this._order.splice(pe,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[O]=$,delete this._layers[O],delete this._serializedLayers[O],delete this._updatedLayers[O],delete this._updatedPaintProps[O],$.onRemove&&$.onRemove(this.map)},z.prototype.getLayer=function(O){return this._layers[O]},z.prototype.hasLayer=function(O){return O in this._layers},z.prototype.setLayerZoomRange=function(O,$,pe){this._checkLoaded();var de=this.getLayer(O);if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot have zoom extent.")));return}de.minzoom===$&&de.maxzoom===pe||($!=null&&(de.minzoom=$),pe!=null&&(de.maxzoom=pe),this._updateLayer(de))},z.prototype.setFilter=function(O,$,pe){pe===void 0&&(pe={}),this._checkLoaded();var de=this.getLayer(O);if(!de){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be filtered.")));return}if(!i.deepEqual(de.filter,$)){if($==null){de.filter=void 0,this._updateLayer(de);return}this._validate(i.validateStyle.filter,"layers."+de.id+".filter",$,null,pe)||(de.filter=i.clone$1($),this._updateLayer(de))}},z.prototype.getFilter=function(O){return i.clone$1(this.getLayer(O).filter)},z.prototype.setLayoutProperty=function(O,$,pe,de){de===void 0&&(de={}),this._checkLoaded();var Ie=this.getLayer(O);if(!Ie){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be styled.")));return}i.deepEqual(Ie.getLayoutProperty($),pe)||(Ie.setLayoutProperty($,pe,de),this._updateLayer(Ie))},z.prototype.getLayoutProperty=function(O,$){var pe=this.getLayer(O);if(!pe){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style.")));return}return pe.getLayoutProperty($)},z.prototype.setPaintProperty=function(O,$,pe,de){de===void 0&&(de={}),this._checkLoaded();var Ie=this.getLayer(O);if(!Ie){this.fire(new i.ErrorEvent(new Error("The layer '"+O+"' does not exist in the map's style and cannot be styled.")));return}if(!i.deepEqual(Ie.getPaintProperty($),pe)){var $e=Ie.setPaintProperty($,pe,de);$e&&this._updateLayer(Ie),this._changed=!0,this._updatedPaintProps[O]=!0}},z.prototype.getPaintProperty=function(O,$){return this.getLayer(O).getPaintProperty($)},z.prototype.setFeatureState=function(O,$){this._checkLoaded();var pe=O.source,de=O.sourceLayer,Ie=this.sourceCaches[pe];if(Ie===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+pe+"' does not exist in the map's style.")));return}var $e=Ie.getSource().type;if($e==="geojson"&&de){this.fire(new i.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if($e==="vector"&&!de){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}O.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),Ie.setFeatureState(de,O.id,$)},z.prototype.removeFeatureState=function(O,$){this._checkLoaded();var pe=O.source,de=this.sourceCaches[pe];if(de===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+pe+"' does not exist in the map's style.")));return}var Ie=de.getSource().type,$e=Ie==="vector"?O.sourceLayer:void 0;if(Ie==="vector"&&!$e){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if($&&typeof O.id!="string"&&typeof O.id!="number"){this.fire(new i.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}de.removeFeatureState($e,O.id,$)},z.prototype.getFeatureState=function(O){this._checkLoaded();var $=O.source,pe=O.sourceLayer,de=this.sourceCaches[$];if(de===void 0){this.fire(new i.ErrorEvent(new Error("The source '"+$+"' does not exist in the map's style.")));return}var Ie=de.getSource().type;if(Ie==="vector"&&!pe){this.fire(new i.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return O.id===void 0&&this.fire(new i.ErrorEvent(new Error("The feature id parameter must be provided."))),de.getFeatureState(pe,O.id)},z.prototype.getTransition=function(){return i.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},z.prototype.serialize=function(){return i.filterObject({version:this.stylesheet.version,name:this.stylesheet.name,metadata:this.stylesheet.metadata,light:this.stylesheet.light,center:this.stylesheet.center,zoom:this.stylesheet.zoom,bearing:this.stylesheet.bearing,pitch:this.stylesheet.pitch,sprite:this.stylesheet.sprite,glyphs:this.stylesheet.glyphs,transition:this.stylesheet.transition,sources:i.mapObject(this.sourceCaches,function(O){return O.serialize()}),layers:this._serializeLayers(this._order)},function(O){return O!==void 0})},z.prototype._updateLayer=function(O){this._updatedLayers[O.id]=!0,O.source&&!this._updatedSources[O.source]&&this.sourceCaches[O.source].getSource().type!=="raster"&&(this._updatedSources[O.source]="reload",this.sourceCaches[O.source].pause()),this._changed=!0},z.prototype._flattenAndSortRenderedFeatures=function(O){for(var $=this,pe=function(ln){return $._layers[ln].type==="fill-extrusion"},de={},Ie=[],$e=this._order.length-1;$e>=0;$e--){var pt=this._order[$e];if(pe(pt)){de[pt]=$e;for(var Kt=0,ir=O;Kt<ir.length;Kt+=1){var Jt=ir[Kt],vt=Jt[pt];if(vt)for(var Pt=0,Wt=vt;Pt<Wt.length;Pt+=1){var rr=Wt[Pt];Ie.push(rr)}}}}Ie.sort(function(ln,Qn){return Qn.intersectionZ-ln.intersectionZ});for(var dr=[],pr=this._order.length-1;pr>=0;pr--){var kr=this._order[pr];if(pe(kr))for(var Ar=Ie.length-1;Ar>=0;Ar--){var gr=Ie[Ar].feature;if(de[gr.layer.id]<pr)break;dr.push(gr),Ie.pop()}else for(var Cr=0,cr=O;Cr<cr.length;Cr+=1){var Gr=cr[Cr],ei=Gr[kr];if(ei)for(var yi=0,tn=ei;yi<tn.length;yi+=1){var Ri=tn[yi];dr.push(Ri.feature)}}}return dr},z.prototype.queryRenderedFeatures=function(O,$,pe){$&&$.filter&&this._validate(i.validateStyle.filter,"queryRenderedFeatures.filter",$.filter,null,$);var de={};if($&&$.layers){if(!Array.isArray($.layers))return this.fire(new i.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(var Ie=0,$e=$.layers;Ie<$e.length;Ie+=1){var pt=$e[Ie],Kt=this._layers[pt];if(!Kt)return this.fire(new i.ErrorEvent(new Error("The layer '"+pt+"' does not exist in the map's style and cannot be queried for features."))),[];de[Kt.source]=!0}}var ir=[];$.availableImages=this._availableImages;for(var Jt in this.sourceCaches)$.layers&&!de[Jt]||ir.push(ce(this.sourceCaches[Jt],this._layers,this._serializedLayers,O,$,pe));return this.placement&&ir.push(Ge(this._layers,this._serializedLayers,this.sourceCaches,O,$,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(ir)},z.prototype.querySourceFeatures=function(O,$){$&&$.filter&&this._validate(i.validateStyle.filter,"querySourceFeatures.filter",$.filter,null,$);var pe=this.sourceCaches[O];return pe?nt(pe,$):[]},z.prototype.addSourceType=function(O,$,pe){if(z.getSourceType(O))return pe(new Error('A source type called "'+O+'" already exists.'));if(z.setSourceType(O,$),!$.workerSourceURL)return pe(null,null);this.dispatcher.broadcast("loadWorkerSource",{name:O,url:$.workerSourceURL},pe)},z.prototype.getLight=function(){return this.light.getLight()},z.prototype.setLight=function(O,$){$===void 0&&($={}),this._checkLoaded();var pe=this.light.getLight(),de=!1;for(var Ie in O)if(!i.deepEqual(O[Ie],pe[Ie])){de=!0;break}if(de){var $e={now:i.browser.now(),transition:i.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(O,$),this.light.updateTransitions($e)}},z.prototype._validate=function(O,$,pe,de,Ie){return Ie===void 0&&(Ie={}),Ie&&Ie.validate===!1?!1:Al(this,O.call(i.validateStyle,i.extend({key:$,style:this.serialize(),value:pe,styleSpec:i.styleSpec},de)))},z.prototype._remove=function(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),i.evented.off("pluginStateChange",this._rtlTextPluginCallback);for(var O in this._layers){var $=this._layers[O];$.setEventedParent(null)}for(var pe in this.sourceCaches)this.sourceCaches[pe].clearTiles(),this.sourceCaches[pe].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},z.prototype._clearSource=function(O){this.sourceCaches[O].clearTiles()},z.prototype._reloadSource=function(O){this.sourceCaches[O].resume(),this.sourceCaches[O].reload()},z.prototype._updateSources=function(O){for(var $ in this.sourceCaches)this.sourceCaches[$].update(O)},z.prototype._generateCollisionBoxes=function(){for(var O in this.sourceCaches)this._reloadSource(O)},z.prototype._updatePlacement=function(O,$,pe,de,Ie){Ie===void 0&&(Ie=!1);for(var $e=!1,pt=!1,Kt={},ir=0,Jt=this._order;ir<Jt.length;ir+=1){var vt=Jt[ir],Pt=this._layers[vt];if(Pt.type==="symbol"){if(!Kt[Pt.source]){var Wt=this.sourceCaches[Pt.source];Kt[Pt.source]=Wt.getRenderableIds(!0).map(function(Cr){return Wt.getTileByID(Cr)}).sort(function(Cr,cr){return cr.tileID.overscaledZ-Cr.tileID.overscaledZ||(Cr.tileID.isLessThan(cr.tileID)?-1:1)})}var rr=this.crossTileSymbolIndex.addLayer(Pt,Kt[Pt.source],O.center.lng);$e=$e||rr}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),Ie=Ie||this._layerOrderChanged||pe===0,(Ie||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(i.browser.now(),O.zoom))&&(this.pauseablePlacement=new Co(O,this._order,Ie,$,pe,de,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,Kt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.browser.now()),pt=!0),$e&&this.pauseablePlacement.placement.setStale()),pt||$e)for(var dr=0,pr=this._order;dr<pr.length;dr+=1){var kr=pr[dr],Ar=this._layers[kr];Ar.type==="symbol"&&this.placement.updateLayerOpacities(Ar,Kt[Ar.source])}var gr=!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.browser.now());return gr},z.prototype._releaseSymbolFadeTiles=function(){for(var O in this.sourceCaches)this.sourceCaches[O].releaseSymbolFadeTiles()},z.prototype.getImages=function(O,$,pe){this.imageManager.getImages($.icons,pe),this._updateTilesForChangedImages();var de=this.sourceCaches[$.source];de&&de.setDependencies($.tileID.key,$.type,$.icons)},z.prototype.getGlyphs=function(O,$,pe){this.glyphManager.getGlyphs($.stacks,pe)},z.prototype.getResource=function(O,$,pe){return i.makeRequest($,pe)},z}(i.Evented);mu.getSourceType=ze,mu.setSourceType=Ce,mu.registerForPluginStateChange=i.registerForPluginStateChange;var kc=i.createLayout([{name:"a_pos",type:"Int16",components:2}]),Of=`#ifdef GL_ES
+precision mediump float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif`,Gc=`#ifdef GL_ES
+precision highp float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+vec2 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
+);}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;}`,vd=`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Bf="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",ss=`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,ff="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);}",ih=`varying vec3 v_data;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Vl=`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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main(void) {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 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);}`,Js="void main() {gl_FragColor=vec4(1.0);}",hc="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",Cc=`uniform highp float u_intensity;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#define GAUSS_COEF 0.3989422804014327
+void main() {
+#pragma mapbox: initialize highp float weight
+float 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,ws=`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;
+#pragma mapbox: define highp float weight
+#pragma mapbox: define mediump float radius
+const highp float ZERO=1.0/255.0/16.0;
+#define GAUSS_COEF 0.3989422804014327
+void main(void) {
+#pragma mapbox: initialize highp float weight
+#pragma mapbox: initialize mediump float radius
+vec2 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;}`,$s=`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(0.0);
+#endif
+}`,hs="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;}",Ms="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;}}",dc="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;}",Sl="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;}",ec="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);}",Ps="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);}",ov="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);}",wo=`#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_FragColor=color*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Od=`attribute vec2 a_pos;uniform mat4 u_matrix;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);}`,$o=`varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ja=`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`,Ef=`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,tc=`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;}`,uu=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Mh=`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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);}`,jc=`varying vec4 v_color;void main() {gl_FragColor=v_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,kf=`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;
+#pragma mapbox: define highp float base
+#pragma mapbox: define highp float height
+#pragma mapbox: define highp vec4 color
+void main() {
+#pragma mapbox: initialize highp float base
+#pragma mapbox: initialize highp float height
+#pragma mapbox: initialize highp vec4 color
+vec3 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;}`,Ml=`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;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Yh=`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;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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
+? a_pos
+: 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;}`,Eh=`#ifdef GL_ES
+precision highp float;
+#endif
+uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;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 exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,nh="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;}",hf=`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;
+#define PI 3.141592653589793
+void 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,kh="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;}",Kh=`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,rc=`
+#define scale 0.015873016
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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);}`,ah=`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 vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Wc=`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);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);}`,df=`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;
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Cu=`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+float 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;}`,Nf=`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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+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 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Zc=`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float 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);}`,ds=`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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ch="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;}",Bd=`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Jh=`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;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+vec2 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 ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=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));}`,Cf=`#define SDF_PX 8.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,pd=`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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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 ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=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);}`,Lu=`#define SDF_PX 8.0
+#define SDF 1.0
+#define ICON 0.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+return;}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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,$h=`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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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 ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,tu=Is(Of,Gc),Pu=Is(vd,Bf),Lc=Is(ss,ff),fl=Is(ih,Vl),Xc=Is(Js,hc),ic=Is(Cc,ws),yu=Is($s,hs),Qs=Is(Ms,dc),Qh=Is(Sl,ec),gd=Is(Ps,ov),Gu=Is(wo,Od),Pc=Is($o,Ja),vc=Is(Ef,tc),sv=Is(uu,Mh),Lf=Is(jc,kf),Uf=Is(Ml,Yh),Iu=Is(Eh,nh),oh=Is(hf,kh),ru=Is(Kh,rc),vf=Is(ah,Wc),md=Is(df,Cu),sh=Is(Nf,Zc),Fs=Is(ds,Ch),_u=Is(Bd,Jh),xu=Is(Cf,pd),Lh=Is(Lu,$h);function Is(Y,z){var K=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,O=z.match(/attribute ([\w]+) ([\w]+)/g),$=Y.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),pe=z.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),de=pe?pe.concat($):$,Ie={};return Y=Y.replace(K,function($e,pt,Kt,ir,Jt){return Ie[Jt]=!0,pt==="define"?`
+#ifndef HAS_UNIFORM_u_`+Jt+`
+varying `+Kt+" "+ir+" "+Jt+`;
+#else
+uniform `+Kt+" "+ir+" u_"+Jt+`;
+#endif
+`:`
+#ifdef HAS_UNIFORM_u_`+Jt+`
+ `+Kt+" "+ir+" "+Jt+" = u_"+Jt+`;
+#endif
+`}),z=z.replace(K,function($e,pt,Kt,ir,Jt){var vt=ir==="float"?"vec2":"vec4",Pt=Jt.match(/color/)?"color":vt;return Ie[Jt]?pt==="define"?`
+#ifndef HAS_UNIFORM_u_`+Jt+`
+uniform lowp float u_`+Jt+`_t;
+attribute `+Kt+" "+vt+" a_"+Jt+`;
+varying `+Kt+" "+ir+" "+Jt+`;
+#else
+uniform `+Kt+" "+ir+" u_"+Jt+`;
+#endif
+`:Pt==="vec4"?`
+#ifndef HAS_UNIFORM_u_`+Jt+`
+ `+Jt+" = a_"+Jt+`;
+#else
+ `+Kt+" "+ir+" "+Jt+" = u_"+Jt+`;
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_`+Jt+`
+ `+Jt+" = unpack_mix_"+Pt+"(a_"+Jt+", u_"+Jt+`_t);
+#else
+ `+Kt+" "+ir+" "+Jt+" = u_"+Jt+`;
+#endif
+`:pt==="define"?`
+#ifndef HAS_UNIFORM_u_`+Jt+`
+uniform lowp float u_`+Jt+`_t;
+attribute `+Kt+" "+vt+" a_"+Jt+`;
+#else
+uniform `+Kt+" "+ir+" u_"+Jt+`;
+#endif
+`:Pt==="vec4"?`
+#ifndef HAS_UNIFORM_u_`+Jt+`
+ `+Kt+" "+ir+" "+Jt+" = a_"+Jt+`;
+#else
+ `+Kt+" "+ir+" "+Jt+" = u_"+Jt+`;
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_`+Jt+`
+ `+Kt+" "+ir+" "+Jt+" = unpack_mix_"+Pt+"(a_"+Jt+", u_"+Jt+`_t);
+#else
+ `+Kt+" "+ir+" "+Jt+" = u_"+Jt+`;
+#endif
+`}),{fragmentSource:Y,vertexSource:z,staticAttributes:O,staticUniforms:de}}var Pf=Object.freeze({__proto__:null,prelude:tu,background:Pu,backgroundPattern:Lc,circle:fl,clippingMask:Xc,heatmap:ic,heatmapTexture:yu,collisionBox:Qs,collisionCircle:Qh,debug:gd,fill:Gu,fillOutline:Pc,fillOutlinePattern:vc,fillPattern:sv,fillExtrusion:Lf,fillExtrusionPattern:Uf,hillshadePrepare:Iu,hillshade:oh,line:ru,lineGradient:vf,linePattern:md,lineSDF:sh,raster:Fs,symbolIcon:_u,symbolSDF:xu,symbolTextAndIcon:Lh}),Ic=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};Ic.prototype.bind=function(z,K,O,$,pe,de,Ie,$e){this.context=z;for(var pt=this.boundPaintVertexBuffers.length!==$.length,Kt=0;!pt&&Kt<$.length;Kt++)this.boundPaintVertexBuffers[Kt]!==$[Kt]&&(pt=!0);var ir=!this.vao||this.boundProgram!==K||this.boundLayoutVertexBuffer!==O||pt||this.boundIndexBuffer!==pe||this.boundVertexOffset!==de||this.boundDynamicVertexBuffer!==Ie||this.boundDynamicVertexBuffer2!==$e;!z.extVertexArrayObject||ir?this.freshBind(K,O,$,pe,de,Ie,$e):(z.bindVertexArrayOES.set(this.vao),Ie&&Ie.bind(),pe&&pe.dynamicDraw&&pe.bind(),$e&&$e.bind())},Ic.prototype.freshBind=function(z,K,O,$,pe,de,Ie){var $e,pt=z.numAttributes,Kt=this.context,ir=Kt.gl;if(Kt.extVertexArrayObject)this.vao&&this.destroy(),this.vao=Kt.extVertexArrayObject.createVertexArrayOES(),Kt.bindVertexArrayOES.set(this.vao),$e=0,this.boundProgram=z,this.boundLayoutVertexBuffer=K,this.boundPaintVertexBuffers=O,this.boundIndexBuffer=$,this.boundVertexOffset=pe,this.boundDynamicVertexBuffer=de,this.boundDynamicVertexBuffer2=Ie;else{$e=Kt.currentNumAttributes||0;for(var Jt=pt;Jt<$e;Jt++)ir.disableVertexAttribArray(Jt)}K.enableAttributes(ir,z);for(var vt=0,Pt=O;vt<Pt.length;vt+=1){var Wt=Pt[vt];Wt.enableAttributes(ir,z)}de&&de.enableAttributes(ir,z),Ie&&Ie.enableAttributes(ir,z),K.bind(),K.setVertexAttribPointers(ir,z,pe);for(var rr=0,dr=O;rr<dr.length;rr+=1){var pr=dr[rr];pr.bind(),pr.setVertexAttribPointers(ir,z,pe)}de&&(de.bind(),de.setVertexAttribPointers(ir,z,pe)),$&&$.bind(),Ie&&(Ie.bind(),Ie.setVertexAttribPointers(ir,z,pe)),Kt.currentNumAttributes=pt},Ic.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};function ju(Y){for(var z=[],K=0;K<Y.length;K++)if(Y[K]!==null){var O=Y[K].split(" ");z.push(O.pop())}return z}var Vf=function(z,K,O,$,pe,de){var Ie=z.gl;this.program=Ie.createProgram();for(var $e=ju(O.staticAttributes),pt=$?$.getBinderAttributes():[],Kt=$e.concat(pt),ir=O.staticUniforms?ju(O.staticUniforms):[],Jt=$?$.getBinderUniforms():[],vt=ir.concat(Jt),Pt=[],Wt=0,rr=vt;Wt<rr.length;Wt+=1){var dr=rr[Wt];Pt.indexOf(dr)<0&&Pt.push(dr)}var pr=$?$.defines():[];de&&pr.push("#define OVERDRAW_INSPECTOR;");var kr=pr.concat(tu.fragmentSource,O.fragmentSource).join(`
+`),Ar=pr.concat(tu.vertexSource,O.vertexSource).join(`
+`),gr=Ie.createShader(Ie.FRAGMENT_SHADER);if(Ie.isContextLost()){this.failedToCreate=!0;return}Ie.shaderSource(gr,kr),Ie.compileShader(gr),Ie.attachShader(this.program,gr);var Cr=Ie.createShader(Ie.VERTEX_SHADER);if(Ie.isContextLost()){this.failedToCreate=!0;return}Ie.shaderSource(Cr,Ar),Ie.compileShader(Cr),Ie.attachShader(this.program,Cr),this.attributes={};var cr={};this.numAttributes=Kt.length;for(var Gr=0;Gr<this.numAttributes;Gr++)Kt[Gr]&&(Ie.bindAttribLocation(this.program,Gr,Kt[Gr]),this.attributes[Kt[Gr]]=Gr);Ie.linkProgram(this.program),Ie.deleteShader(Cr),Ie.deleteShader(gr);for(var ei=0;ei<Pt.length;ei++){var yi=Pt[ei];if(yi&&!cr[yi]){var tn=Ie.getUniformLocation(this.program,yi);tn&&(cr[yi]=tn)}}this.fixedUniforms=pe(z,cr),this.binderUniforms=$?$.getUniforms(z,cr):[]};Vf.prototype.draw=function(z,K,O,$,pe,de,Ie,$e,pt,Kt,ir,Jt,vt,Pt,Wt,rr){var dr,pr=z.gl;if(!this.failedToCreate){z.program.set(this.program),z.setDepthMode(O),z.setStencilMode($),z.setColorMode(pe),z.setCullFace(de);for(var kr in this.fixedUniforms)this.fixedUniforms[kr].set(Ie[kr]);Pt&&Pt.setUniforms(z,this.binderUniforms,Jt,{zoom:vt});for(var Ar=(dr={},dr[pr.LINES]=2,dr[pr.TRIANGLES]=3,dr[pr.LINE_STRIP]=1,dr)[K],gr=0,Cr=ir.get();gr<Cr.length;gr+=1){var cr=Cr[gr],Gr=cr.vaos||(cr.vaos={}),ei=Gr[$e]||(Gr[$e]=new Ic);ei.bind(z,this,pt,Pt?Pt.getPaintVertexBuffers():[],Kt,cr.vertexOffset,Wt,rr),pr.drawElements(K,cr.primitiveLength*Ar,pr.UNSIGNED_SHORT,cr.primitiveOffset*Ar*2)}}};function pc(Y,z,K){var O=1/Cs(K,1,z.transform.tileZoom),$=Math.pow(2,K.tileID.overscaledZ),pe=K.tileSize*Math.pow(2,z.transform.tileZoom)/$,de=pe*(K.tileID.canonical.x+K.tileID.wrap*$),Ie=pe*K.tileID.canonical.y;return{u_image:0,u_texsize:K.imageAtlasTexture.size,u_scale:[O,Y.fromScale,Y.toScale],u_fade:Y.t,u_pixel_coord_upper:[de>>16,Ie>>16],u_pixel_coord_lower:[de&65535,Ie&65535]}}function pf(Y,z,K,O){var $=K.imageManager.getPattern(Y.from.toString()),pe=K.imageManager.getPattern(Y.to.toString()),de=K.imageManager.getPixelSize(),Ie=de.width,$e=de.height,pt=Math.pow(2,O.tileID.overscaledZ),Kt=O.tileSize*Math.pow(2,K.transform.tileZoom)/pt,ir=Kt*(O.tileID.canonical.x+O.tileID.wrap*pt),Jt=Kt*O.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:$.tl,u_pattern_br_a:$.br,u_pattern_tl_b:pe.tl,u_pattern_br_b:pe.br,u_texsize:[Ie,$e],u_mix:z.t,u_pattern_size_a:$.displaySize,u_pattern_size_b:pe.displaySize,u_scale_a:z.fromScale,u_scale_b:z.toScale,u_tile_units_to_pixels:1/Cs(O,1,K.transform.tileZoom),u_pixel_coord_upper:[ir>>16,Jt>>16],u_pixel_coord_lower:[ir&65535,Jt&65535]}}var Ph=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_lightpos:new i.Uniform3f(Y,z.u_lightpos),u_lightintensity:new i.Uniform1f(Y,z.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,z.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,z.u_vertical_gradient),u_opacity:new i.Uniform1f(Y,z.u_opacity)}},Dl=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_lightpos:new i.Uniform3f(Y,z.u_lightpos),u_lightintensity:new i.Uniform1f(Y,z.u_lightintensity),u_lightcolor:new i.Uniform3f(Y,z.u_lightcolor),u_vertical_gradient:new i.Uniform1f(Y,z.u_vertical_gradient),u_height_factor:new i.Uniform1f(Y,z.u_height_factor),u_image:new i.Uniform1i(Y,z.u_image),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,z.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,z.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,z.u_scale),u_fade:new i.Uniform1f(Y,z.u_fade),u_opacity:new i.Uniform1f(Y,z.u_opacity)}},Ih=function(Y,z,K,O){var $=z.style.light,pe=$.properties.get("position"),de=[pe.x,pe.y,pe.z],Ie=i.create$1();$.properties.get("anchor")==="viewport"&&i.fromRotation(Ie,-z.transform.angle),i.transformMat3(de,de,Ie);var $e=$.properties.get("color");return{u_matrix:Y,u_lightpos:de,u_lightintensity:$.properties.get("intensity"),u_lightcolor:[$e.r,$e.g,$e.b],u_vertical_gradient:+K,u_opacity:O}},Wu=function(Y,z,K,O,$,pe,de){return i.extend(Ih(Y,z,K,O),pc(pe,z,de),{u_height_factor:-Math.pow(2,$.overscaledZ)/de.tileSize/8})},Rc=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix)}},gc=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_image:new i.Uniform1i(Y,z.u_image),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,z.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,z.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,z.u_scale),u_fade:new i.Uniform1f(Y,z.u_fade)}},hl=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_world:new i.Uniform2f(Y,z.u_world)}},iu=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_world:new i.Uniform2f(Y,z.u_world),u_image:new i.Uniform1i(Y,z.u_image),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_pixel_coord_upper:new i.Uniform2f(Y,z.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,z.u_pixel_coord_lower),u_scale:new i.Uniform3f(Y,z.u_scale),u_fade:new i.Uniform1f(Y,z.u_fade)}},mc=function(Y){return{u_matrix:Y}},Yc=function(Y,z,K,O){return i.extend(mc(Y),pc(K,z,O))},nc=function(Y,z){return{u_matrix:Y,u_world:z}},gf=function(Y,z,K,O,$){return i.extend(Yc(Y,z,K,O),{u_world:$})},gt=function(Y,z){return{u_camera_to_center_distance:new i.Uniform1f(Y,z.u_camera_to_center_distance),u_scale_with_map:new i.Uniform1i(Y,z.u_scale_with_map),u_pitch_with_map:new i.Uniform1i(Y,z.u_pitch_with_map),u_extrude_scale:new i.Uniform2f(Y,z.u_extrude_scale),u_device_pixel_ratio:new i.Uniform1f(Y,z.u_device_pixel_ratio),u_matrix:new i.UniformMatrix4f(Y,z.u_matrix)}},Bt=function(Y,z,K,O){var $=Y.transform,pe,de;if(O.paint.get("circle-pitch-alignment")==="map"){var Ie=Cs(K,1,$.zoom);pe=!0,de=[Ie,Ie]}else pe=!1,de=$.pixelsToGLUnits;return{u_camera_to_center_distance:$.cameraToCenterDistance,u_scale_with_map:+(O.paint.get("circle-pitch-scale")==="map"),u_matrix:Y.translatePosMatrix(z.posMatrix,K,O.paint.get("circle-translate"),O.paint.get("circle-translate-anchor")),u_pitch_with_map:+pe,u_device_pixel_ratio:i.browser.devicePixelRatio,u_extrude_scale:de}},wr=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,z.u_camera_to_center_distance),u_pixels_to_tile_units:new i.Uniform1f(Y,z.u_pixels_to_tile_units),u_extrude_scale:new i.Uniform2f(Y,z.u_extrude_scale),u_overscale_factor:new i.Uniform1f(Y,z.u_overscale_factor)}},vr=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_inv_matrix:new i.UniformMatrix4f(Y,z.u_inv_matrix),u_camera_to_center_distance:new i.Uniform1f(Y,z.u_camera_to_center_distance),u_viewport_size:new i.Uniform2f(Y,z.u_viewport_size)}},Ur=function(Y,z,K){var O=Cs(K,1,z.zoom),$=Math.pow(2,z.zoom-K.tileID.overscaledZ),pe=K.tileID.overscaleFactor();return{u_matrix:Y,u_camera_to_center_distance:z.cameraToCenterDistance,u_pixels_to_tile_units:O,u_extrude_scale:[z.pixelsToGLUnits[0]/(O*$),z.pixelsToGLUnits[1]/(O*$)],u_overscale_factor:pe}},fi=function(Y,z,K){return{u_matrix:Y,u_inv_matrix:z,u_camera_to_center_distance:K.cameraToCenterDistance,u_viewport_size:[K.width,K.height]}},xi=function(Y,z){return{u_color:new i.UniformColor(Y,z.u_color),u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_overlay:new i.Uniform1i(Y,z.u_overlay),u_overlay_scale:new i.Uniform1f(Y,z.u_overlay_scale)}},Fi=function(Y,z,K){return K===void 0&&(K=1),{u_matrix:Y,u_color:z,u_overlay:0,u_overlay_scale:K}},Xi=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix)}},hn=function(Y){return{u_matrix:Y}},Ti=function(Y,z){return{u_extrude_scale:new i.Uniform1f(Y,z.u_extrude_scale),u_intensity:new i.Uniform1f(Y,z.u_intensity),u_matrix:new i.UniformMatrix4f(Y,z.u_matrix)}},qi=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_world:new i.Uniform2f(Y,z.u_world),u_image:new i.Uniform1i(Y,z.u_image),u_color_ramp:new i.Uniform1i(Y,z.u_color_ramp),u_opacity:new i.Uniform1f(Y,z.u_opacity)}},Ii=function(Y,z,K,O){return{u_matrix:Y,u_extrude_scale:Cs(z,1,K),u_intensity:O}},mi=function(Y,z,K,O){var $=i.create();i.ortho($,0,Y.width,Y.height,0,0,1);var pe=Y.context.gl;return{u_matrix:$,u_world:[pe.drawingBufferWidth,pe.drawingBufferHeight],u_image:K,u_color_ramp:O,u_opacity:z.paint.get("heatmap-opacity")}},Pn=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_image:new i.Uniform1i(Y,z.u_image),u_latrange:new i.Uniform2f(Y,z.u_latrange),u_light:new i.Uniform2f(Y,z.u_light),u_shadow:new i.UniformColor(Y,z.u_shadow),u_highlight:new i.UniformColor(Y,z.u_highlight),u_accent:new i.UniformColor(Y,z.u_accent)}},Ma=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_image:new i.Uniform1i(Y,z.u_image),u_dimension:new i.Uniform2f(Y,z.u_dimension),u_zoom:new i.Uniform1f(Y,z.u_zoom),u_unpack:new i.Uniform4f(Y,z.u_unpack)}},Ta=function(Y,z,K){var O=K.paint.get("hillshade-shadow-color"),$=K.paint.get("hillshade-highlight-color"),pe=K.paint.get("hillshade-accent-color"),de=K.paint.get("hillshade-illumination-direction")*(Math.PI/180);K.paint.get("hillshade-illumination-anchor")==="viewport"&&(de-=Y.transform.angle);var Ie=!Y.options.moving;return{u_matrix:Y.transform.calculatePosMatrix(z.tileID.toUnwrapped(),Ie),u_image:0,u_latrange:qa(Y,z.tileID),u_light:[K.paint.get("hillshade-exaggeration"),de],u_shadow:O,u_highlight:$,u_accent:pe}},Ea=function(Y,z){var K=z.stride,O=i.create();return i.ortho(O,0,i.EXTENT,-i.EXTENT,0,0,1),i.translate(O,O,[0,-i.EXTENT,0]),{u_matrix:O,u_image:1,u_dimension:[K,K],u_zoom:Y.overscaledZ,u_unpack:z.getUnpackVector()}};function qa(Y,z){var K=Math.pow(2,z.canonical.z),O=z.canonical.y;return[new i.MercatorCoordinate(0,O/K).toLngLat().lat,new i.MercatorCoordinate(0,(O+1)/K).toLngLat().lat]}var Cn=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_ratio:new i.Uniform1f(Y,z.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,z.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,z.u_units_to_pixels)}},sn=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_ratio:new i.Uniform1f(Y,z.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,z.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,z.u_units_to_pixels),u_image:new i.Uniform1i(Y,z.u_image),u_image_height:new i.Uniform1f(Y,z.u_image_height)}},Ua=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_ratio:new i.Uniform1f(Y,z.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,z.u_device_pixel_ratio),u_image:new i.Uniform1i(Y,z.u_image),u_units_to_pixels:new i.Uniform2f(Y,z.u_units_to_pixels),u_scale:new i.Uniform3f(Y,z.u_scale),u_fade:new i.Uniform1f(Y,z.u_fade)}},mo=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_ratio:new i.Uniform1f(Y,z.u_ratio),u_device_pixel_ratio:new i.Uniform1f(Y,z.u_device_pixel_ratio),u_units_to_pixels:new i.Uniform2f(Y,z.u_units_to_pixels),u_patternscale_a:new i.Uniform2f(Y,z.u_patternscale_a),u_patternscale_b:new i.Uniform2f(Y,z.u_patternscale_b),u_sdfgamma:new i.Uniform1f(Y,z.u_sdfgamma),u_image:new i.Uniform1i(Y,z.u_image),u_tex_y_a:new i.Uniform1f(Y,z.u_tex_y_a),u_tex_y_b:new i.Uniform1f(Y,z.u_tex_y_b),u_mix:new i.Uniform1f(Y,z.u_mix)}},Xo=function(Y,z,K){var O=Y.transform;return{u_matrix:yl(Y,z,K),u_ratio:1/Cs(z,1,O.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_units_to_pixels:[1/O.pixelsToGLUnits[0],1/O.pixelsToGLUnits[1]]}},Ts=function(Y,z,K,O){return i.extend(Xo(Y,z,K),{u_image:0,u_image_height:O})},Qo=function(Y,z,K,O){var $=Y.transform,pe=Bo(z,$);return{u_matrix:yl(Y,z,K),u_texsize:z.imageAtlasTexture.size,u_ratio:1/Cs(z,1,$.zoom),u_device_pixel_ratio:i.browser.devicePixelRatio,u_image:0,u_scale:[pe,O.fromScale,O.toScale],u_fade:O.t,u_units_to_pixels:[1/$.pixelsToGLUnits[0],1/$.pixelsToGLUnits[1]]}},ys=function(Y,z,K,O,$){var pe=Y.transform,de=Y.lineAtlas,Ie=Bo(z,pe),$e=K.layout.get("line-cap")==="round",pt=de.getDash(O.from,$e),Kt=de.getDash(O.to,$e),ir=pt.width*$.fromScale,Jt=Kt.width*$.toScale;return i.extend(Xo(Y,z,K),{u_patternscale_a:[Ie/ir,-pt.height/2],u_patternscale_b:[Ie/Jt,-Kt.height/2],u_sdfgamma:de.width/(Math.min(ir,Jt)*256*i.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:pt.y,u_tex_y_b:Kt.y,u_mix:$.t})};function Bo(Y,z){return 1/Cs(Y,1,z.tileZoom)}function yl(Y,z,K){return Y.translatePosMatrix(z.tileID.posMatrix,z,K.paint.get("line-translate"),K.paint.get("line-translate-anchor"))}var Gs=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_tl_parent:new i.Uniform2f(Y,z.u_tl_parent),u_scale_parent:new i.Uniform1f(Y,z.u_scale_parent),u_buffer_scale:new i.Uniform1f(Y,z.u_buffer_scale),u_fade_t:new i.Uniform1f(Y,z.u_fade_t),u_opacity:new i.Uniform1f(Y,z.u_opacity),u_image0:new i.Uniform1i(Y,z.u_image0),u_image1:new i.Uniform1i(Y,z.u_image1),u_brightness_low:new i.Uniform1f(Y,z.u_brightness_low),u_brightness_high:new i.Uniform1f(Y,z.u_brightness_high),u_saturation_factor:new i.Uniform1f(Y,z.u_saturation_factor),u_contrast_factor:new i.Uniform1f(Y,z.u_contrast_factor),u_spin_weights:new i.Uniform3f(Y,z.u_spin_weights)}},Rs=function(Y,z,K,O,$){return{u_matrix:Y,u_tl_parent:z,u_scale_parent:K,u_buffer_scale:1,u_fade_t:O.mix,u_opacity:O.opacity*$.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:$.paint.get("raster-brightness-min"),u_brightness_high:$.paint.get("raster-brightness-max"),u_saturation_factor:vs($.paint.get("raster-saturation")),u_contrast_factor:Ka($.paint.get("raster-contrast")),u_spin_weights:ia($.paint.get("raster-hue-rotate"))}};function ia(Y){Y*=Math.PI/180;var z=Math.sin(Y),K=Math.cos(Y);return[(2*K+1)/3,(-Math.sqrt(3)*z-K+1)/3,(Math.sqrt(3)*z-K+1)/3]}function Ka(Y){return Y>0?1/(1-Y):1+Y}function vs(Y){return Y>0?1-1/(1.001-Y):-Y}var Ko=function(Y,z){return{u_is_size_zoom_constant:new i.Uniform1i(Y,z.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,z.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,z.u_size_t),u_size:new i.Uniform1f(Y,z.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,z.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,z.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,z.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,z.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,z.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,z.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,z.u_coord_matrix),u_is_text:new i.Uniform1i(Y,z.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,z.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_texture:new i.Uniform1i(Y,z.u_texture)}},nu=function(Y,z){return{u_is_size_zoom_constant:new i.Uniform1i(Y,z.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,z.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,z.u_size_t),u_size:new i.Uniform1f(Y,z.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,z.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,z.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,z.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,z.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,z.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,z.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,z.u_coord_matrix),u_is_text:new i.Uniform1i(Y,z.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,z.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_texture:new i.Uniform1i(Y,z.u_texture),u_gamma_scale:new i.Uniform1f(Y,z.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,z.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,z.u_is_halo)}},Ru=function(Y,z){return{u_is_size_zoom_constant:new i.Uniform1i(Y,z.u_is_size_zoom_constant),u_is_size_feature_constant:new i.Uniform1i(Y,z.u_is_size_feature_constant),u_size_t:new i.Uniform1f(Y,z.u_size_t),u_size:new i.Uniform1f(Y,z.u_size),u_camera_to_center_distance:new i.Uniform1f(Y,z.u_camera_to_center_distance),u_pitch:new i.Uniform1f(Y,z.u_pitch),u_rotate_symbol:new i.Uniform1i(Y,z.u_rotate_symbol),u_aspect_ratio:new i.Uniform1f(Y,z.u_aspect_ratio),u_fade_change:new i.Uniform1f(Y,z.u_fade_change),u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_label_plane_matrix:new i.UniformMatrix4f(Y,z.u_label_plane_matrix),u_coord_matrix:new i.UniformMatrix4f(Y,z.u_coord_matrix),u_is_text:new i.Uniform1i(Y,z.u_is_text),u_pitch_with_map:new i.Uniform1i(Y,z.u_pitch_with_map),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_texsize_icon:new i.Uniform2f(Y,z.u_texsize_icon),u_texture:new i.Uniform1i(Y,z.u_texture),u_texture_icon:new i.Uniform1i(Y,z.u_texture_icon),u_gamma_scale:new i.Uniform1f(Y,z.u_gamma_scale),u_device_pixel_ratio:new i.Uniform1f(Y,z.u_device_pixel_ratio),u_is_halo:new i.Uniform1i(Y,z.u_is_halo)}},ac=function(Y,z,K,O,$,pe,de,Ie,$e,pt){var Kt=$.transform;return{u_is_size_zoom_constant:+(Y==="constant"||Y==="source"),u_is_size_feature_constant:+(Y==="constant"||Y==="camera"),u_size_t:z?z.uSizeT:0,u_size:z?z.uSize:0,u_camera_to_center_distance:Kt.cameraToCenterDistance,u_pitch:Kt.pitch/360*2*Math.PI,u_rotate_symbol:+K,u_aspect_ratio:Kt.width/Kt.height,u_fade_change:$.options.fadeDuration?$.symbolFadeChange:1,u_matrix:pe,u_label_plane_matrix:de,u_coord_matrix:Ie,u_is_text:+$e,u_pitch_with_map:+O,u_texsize:pt,u_texture:0}},mf=function(Y,z,K,O,$,pe,de,Ie,$e,pt,Kt){var ir=$.transform;return i.extend(ac(Y,z,K,O,$,pe,de,Ie,$e,pt),{u_gamma_scale:O?Math.cos(ir._pitch)*ir.cameraToCenterDistance:1,u_device_pixel_ratio:i.browser.devicePixelRatio,u_is_halo:+Kt})},bu=function(Y,z,K,O,$,pe,de,Ie,$e,pt){return i.extend(mf(Y,z,K,O,$,pe,de,Ie,!0,$e,!0),{u_texsize_icon:pt,u_texture_icon:1})},Kc=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_opacity:new i.Uniform1f(Y,z.u_opacity),u_color:new i.UniformColor(Y,z.u_color)}},Du=function(Y,z){return{u_matrix:new i.UniformMatrix4f(Y,z.u_matrix),u_opacity:new i.Uniform1f(Y,z.u_opacity),u_image:new i.Uniform1i(Y,z.u_image),u_pattern_tl_a:new i.Uniform2f(Y,z.u_pattern_tl_a),u_pattern_br_a:new i.Uniform2f(Y,z.u_pattern_br_a),u_pattern_tl_b:new i.Uniform2f(Y,z.u_pattern_tl_b),u_pattern_br_b:new i.Uniform2f(Y,z.u_pattern_br_b),u_texsize:new i.Uniform2f(Y,z.u_texsize),u_mix:new i.Uniform1f(Y,z.u_mix),u_pattern_size_a:new i.Uniform2f(Y,z.u_pattern_size_a),u_pattern_size_b:new i.Uniform2f(Y,z.u_pattern_size_b),u_scale_a:new i.Uniform1f(Y,z.u_scale_a),u_scale_b:new i.Uniform1f(Y,z.u_scale_b),u_pixel_coord_upper:new i.Uniform2f(Y,z.u_pixel_coord_upper),u_pixel_coord_lower:new i.Uniform2f(Y,z.u_pixel_coord_lower),u_tile_units_to_pixels:new i.Uniform1f(Y,z.u_tile_units_to_pixels)}},Dc=function(Y,z,K){return{u_matrix:Y,u_opacity:z,u_color:K}},Da=function(Y,z,K,O,$,pe){return i.extend(pf(O,pe,K,$),{u_matrix:Y,u_opacity:z})},eo={fillExtrusion:Ph,fillExtrusionPattern:Dl,fill:Rc,fillPattern:gc,fillOutline:hl,fillOutlinePattern:iu,circle:gt,collisionBox:wr,collisionCircle:vr,debug:xi,clippingMask:Xi,heatmap:Ti,heatmapTexture:qi,hillshade:Pn,hillshadePrepare:Ma,line:Cn,lineGradient:sn,linePattern:Ua,lineSDF:mo,raster:Gs,symbolIcon:Ko,symbolSDF:nu,symbolTextAndIcon:Ru,background:Kc,backgroundPattern:Du},Jc;function yc(Y,z,K,O,$,pe,de){for(var Ie=Y.context,$e=Ie.gl,pt=Y.useProgram("collisionBox"),Kt=[],ir=0,Jt=0,vt=0;vt<O.length;vt++){var Pt=O[vt],Wt=z.getTile(Pt),rr=Wt.getBucket(K);if(rr){var dr=Pt.posMatrix;($[0]!==0||$[1]!==0)&&(dr=Y.translatePosMatrix(Pt.posMatrix,Wt,$,pe));var pr=de?rr.textCollisionBox:rr.iconCollisionBox,kr=rr.collisionCircleArray;if(kr.length>0){var Ar=i.create(),gr=dr;i.mul(Ar,rr.placementInvProjMatrix,Y.transform.glCoordMatrix),i.mul(Ar,Ar,rr.placementViewportMatrix),Kt.push({circleArray:kr,circleOffset:Jt,transform:gr,invTransform:Ar}),ir+=kr.length/4,Jt=ir}pr&&pt.draw(Ie,$e.LINES,Wi.disabled,$i.disabled,Y.colorModeForRenderPass(),yr.disabled,Ur(dr,Y.transform,Wt),K.id,pr.layoutVertexBuffer,pr.indexBuffer,pr.segments,null,Y.transform.zoom,null,null,pr.collisionVertexBuffer)}}if(!(!de||!Kt.length)){var Cr=Y.useProgram("collisionCircle"),cr=new i.StructArrayLayout2f1f2i16;cr.resize(ir*4),cr._trim();for(var Gr=0,ei=0,yi=Kt;ei<yi.length;ei+=1)for(var tn=yi[ei],Ri=0;Ri<tn.circleArray.length/4;Ri++){var ln=Ri*4,Qn=tn.circleArray[ln+0],qn=tn.circleArray[ln+1],rn=tn.circleArray[ln+2],bn=tn.circleArray[ln+3];cr.emplace(Gr++,Qn,qn,rn,bn,0),cr.emplace(Gr++,Qn,qn,rn,bn,1),cr.emplace(Gr++,Qn,qn,rn,bn,2),cr.emplace(Gr++,Qn,qn,rn,bn,3)}(!Jc||Jc.length<ir*2)&&(Jc=_c(ir));for(var mn=Ie.createIndexBuffer(Jc,!0),Gn=Ie.createVertexBuffer(cr,i.collisionCircleLayout.members,!0),da=0,No=Kt;da<No.length;da+=1){var Do=No[da],ps=fi(Do.transform,Do.invTransform,Y.transform);Cr.draw(Ie,$e.TRIANGLES,Wi.disabled,$i.disabled,Y.colorModeForRenderPass(),yr.disabled,ps,K.id,Gn,mn,i.SegmentVector.simpleSegment(0,Do.circleOffset*2,Do.circleArray.length,Do.circleArray.length/2),null,Y.transform.zoom,null,null,null)}Gn.destroy(),mn.destroy()}}function _c(Y){var z=Y*2,K=new i.StructArrayLayout3ui6;K.resize(z),K._trim();for(var O=0;O<z;O++){var $=O*6;K.uint16[$+0]=O*4+0,K.uint16[$+1]=O*4+1,K.uint16[$+2]=O*4+2,K.uint16[$+3]=O*4+2,K.uint16[$+4]=O*4+3,K.uint16[$+5]=O*4+0}return K}var le=i.identity(new Float32Array(16));function w(Y,z,K,O,$){if(Y.renderPass==="translucent"){var pe=$i.disabled,de=Y.colorModeForRenderPass(),Ie=K.layout.get("text-variable-anchor");Ie&&Q(O,Y,K,z,K.layout.get("text-rotation-alignment"),K.layout.get("text-pitch-alignment"),$),K.paint.get("icon-opacity").constantOr(1)!==0&&qe(Y,z,K,O,!1,K.paint.get("icon-translate"),K.paint.get("icon-translate-anchor"),K.layout.get("icon-rotation-alignment"),K.layout.get("icon-pitch-alignment"),K.layout.get("icon-keep-upright"),pe,de),K.paint.get("text-opacity").constantOr(1)!==0&&qe(Y,z,K,O,!0,K.paint.get("text-translate"),K.paint.get("text-translate-anchor"),K.layout.get("text-rotation-alignment"),K.layout.get("text-pitch-alignment"),K.layout.get("text-keep-upright"),pe,de),z.map.showCollisionBoxes&&(yc(Y,z,K,O,K.paint.get("text-translate"),K.paint.get("text-translate-anchor"),!0),yc(Y,z,K,O,K.paint.get("icon-translate"),K.paint.get("icon-translate-anchor"),!1))}}function B(Y,z,K,O,$,pe){var de=i.getAnchorAlignment(Y),Ie=de.horizontalAlign,$e=de.verticalAlign,pt=-(Ie-.5)*z,Kt=-($e-.5)*K,ir=i.evaluateVariableOffset(Y,O);return new i.Point((pt/$+ir[0])*pe,(Kt/$+ir[1])*pe)}function Q(Y,z,K,O,$,pe,de){for(var Ie=z.transform,$e=$==="map",pt=pe==="map",Kt=0,ir=Y;Kt<ir.length;Kt+=1){var Jt=ir[Kt],vt=O.getTile(Jt),Pt=vt.getBucket(K);if(!(!Pt||!Pt.text||!Pt.text.segments.get().length)){var Wt=Pt.textSizeData,rr=i.evaluateSizeForZoom(Wt,Ie.zoom),dr=Cs(vt,1,z.transform.zoom),pr=Ji(Jt.posMatrix,pt,$e,z.transform,dr),kr=K.layout.get("icon-text-fit")!=="none"&&Pt.hasIconData();if(rr){var Ar=Math.pow(2,Ie.zoom-vt.tileID.overscaledZ);ee(Pt,$e,pt,de,i.symbolSize,Ie,pr,Jt.posMatrix,Ar,rr,kr)}}}}function ee(Y,z,K,O,$,pe,de,Ie,$e,pt,Kt){var ir=Y.text.placedSymbolArray,Jt=Y.text.dynamicLayoutVertexArray,vt=Y.icon.dynamicLayoutVertexArray,Pt={};Jt.clear();for(var Wt=0;Wt<ir.length;Wt++){var rr=ir.get(Wt),dr=Y.allowVerticalPlacement&&!rr.placedOrientation,pr=!rr.hidden&&rr.crossTileID&&!dr?O[rr.crossTileID]:null;if(!pr)Xs(rr.numGlyphs,Jt);else{var kr=new i.Point(rr.anchorX,rr.anchorY),Ar=Fn(kr,K?Ie:de),gr=Sa(pe.cameraToCenterDistance,Ar.signedDistanceFromCamera),Cr=$.evaluateSizeForFeature(Y.textSizeData,pt,rr)*gr/i.ONE_EM;K&&(Cr*=Y.tilePixelRatio/$e);for(var cr=pr.width,Gr=pr.height,ei=pr.anchor,yi=pr.textOffset,tn=pr.textBoxScale,Ri=B(ei,cr,Gr,yi,tn,Cr),ln=K?Fn(kr.add(Ri),de).point:Ar.point.add(z?Ri.rotate(-pe.angle):Ri),Qn=Y.allowVerticalPlacement&&rr.placedOrientation===i.WritingMode.vertical?Math.PI/2:0,qn=0;qn<rr.numGlyphs;qn++)i.addDynamicAttributes(Jt,ln,Qn);Kt&&rr.associatedIconIndex>=0&&(Pt[rr.associatedIconIndex]={shiftedAnchor:ln,angle:Qn})}}if(Kt){vt.clear();for(var rn=Y.icon.placedSymbolArray,bn=0;bn<rn.length;bn++){var mn=rn.get(bn);if(mn.hidden)Xs(mn.numGlyphs,vt);else{var Gn=Pt[bn];if(!Gn)Xs(mn.numGlyphs,vt);else for(var da=0;da<mn.numGlyphs;da++)i.addDynamicAttributes(vt,Gn.shiftedAnchor,Gn.angle)}}Y.icon.dynamicLayoutVertexBuffer.updateData(vt)}Y.text.dynamicLayoutVertexBuffer.updateData(Jt)}function se(Y,z,K){return K.iconsInText&&z?"symbolTextAndIcon":Y?"symbolSDF":"symbolIcon"}function qe(Y,z,K,O,$,pe,de,Ie,$e,pt,Kt,ir){for(var Jt=Y.context,vt=Jt.gl,Pt=Y.transform,Wt=Ie==="map",rr=$e==="map",dr=Wt&&K.layout.get("symbol-placement")!=="point",pr=Wt&&!rr&&!dr,kr=K.layout.get("symbol-sort-key").constantOr(1)!==void 0,Ar=!1,gr=Y.depthModeForSublayer(0,Wi.ReadOnly),Cr=K.layout.get("text-variable-anchor"),cr=[],Gr=0,ei=O;Gr<ei.length;Gr+=1){var yi=ei[Gr],tn=z.getTile(yi),Ri=tn.getBucket(K);if(Ri){var ln=$?Ri.text:Ri.icon;if(!(!ln||!ln.segments.get().length)){var Qn=ln.programConfigurations.get(K.id),qn=$||Ri.sdfIcons,rn=$?Ri.textSizeData:Ri.iconSizeData,bn=rr||Pt.pitch!==0,mn=Y.useProgram(se(qn,$,Ri),Qn),Gn=i.evaluateSizeForZoom(rn,Pt.zoom),da=void 0,No=[0,0],Do=void 0,ps=void 0,fo=null,as=void 0;if($){if(Do=tn.glyphAtlasTexture,ps=vt.LINEAR,da=tn.glyphAtlasTexture.size,Ri.iconsInText){No=tn.imageAtlasTexture.size,fo=tn.imageAtlasTexture;var tl=rn.kind==="composite"||rn.kind==="camera";as=bn||Y.options.rotating||Y.options.zooming||tl?vt.LINEAR:vt.NEAREST}}else{var zu=K.layout.get("icon-size").constantOr(0)!==1||Ri.iconsNeedLinear;Do=tn.imageAtlasTexture,ps=qn||Y.options.rotating||Y.options.zooming||zu||bn?vt.LINEAR:vt.NEAREST,da=tn.imageAtlasTexture.size}var Mv=Cs(tn,1,Y.transform.zoom),Ev=Ji(yi.posMatrix,rr,Wt,Y.transform,Mv),yd=ua(yi.posMatrix,rr,Wt,Y.transform,Mv),Yv=Cr&&Ri.hasTextData(),cg=K.layout.get("icon-text-fit")!=="none"&&Yv&&Ri.hasIconData();dr&&Oo(Ri,yi.posMatrix,Y,$,Ev,yd,rr,pt);var vp=Y.translatePosMatrix(yi.posMatrix,tn,pe,de),_d=dr||$&&Cr||cg?le:Ev,pp=Y.translatePosMatrix(yd,tn,pe,de,!0),Nd=qn&&K.paint.get($?"text-halo-width":"icon-halo-width").constantOr(1)!==0,xd=void 0;qn?Ri.iconsInText?xd=bu(rn.kind,Gn,pr,rr,Y,vp,_d,pp,da,No):xd=mf(rn.kind,Gn,pr,rr,Y,vp,_d,pp,$,da,!0):xd=ac(rn.kind,Gn,pr,rr,Y,vp,_d,pp,$,da);var kv={program:mn,buffers:ln,uniformValues:xd,atlasTexture:Do,atlasTextureIcon:fo,atlasInterpolation:ps,atlasInterpolationIcon:as,isSDF:qn,hasHalo:Nd};if(kr&&Ri.canOverlap){Ar=!0;for(var Kv=ln.segments.get(),Cv=0,ny=Kv;Cv<ny.length;Cv+=1){var fg=ny[Cv];cr.push({segments:new i.SegmentVector([fg]),sortKey:fg.sortKey,state:kv})}}else cr.push({segments:ln.segments,sortKey:0,state:kv})}}}Ar&&cr.sort(function(w1,T1){return w1.sortKey-T1.sortKey});for(var Hf=0,hg=cr;Hf<hg.length;Hf+=1){var ay=hg[Hf],Rh=ay.state;if(Jt.activeTexture.set(vt.TEXTURE0),Rh.atlasTexture.bind(Rh.atlasInterpolation,vt.CLAMP_TO_EDGE),Rh.atlasTextureIcon&&(Jt.activeTexture.set(vt.TEXTURE1),Rh.atlasTextureIcon&&Rh.atlasTextureIcon.bind(Rh.atlasInterpolationIcon,vt.CLAMP_TO_EDGE)),Rh.isSDF){var rm=Rh.uniformValues;Rh.hasHalo&&(rm.u_is_halo=1,je(Rh.buffers,ay.segments,K,Y,Rh.program,gr,Kt,ir,rm)),rm.u_is_halo=0}je(Rh.buffers,ay.segments,K,Y,Rh.program,gr,Kt,ir,Rh.uniformValues)}}function je(Y,z,K,O,$,pe,de,Ie,$e){var pt=O.context,Kt=pt.gl;$.draw(pt,Kt.TRIANGLES,pe,de,Ie,yr.disabled,$e,K.id,Y.layoutVertexBuffer,Y.indexBuffer,z,K.paint,O.transform.zoom,Y.programConfigurations.get(K.id),Y.dynamicLayoutVertexBuffer,Y.opacityVertexBuffer)}function it(Y,z,K,O){if(Y.renderPass==="translucent"){var $=K.paint.get("circle-opacity"),pe=K.paint.get("circle-stroke-width"),de=K.paint.get("circle-stroke-opacity"),Ie=K.layout.get("circle-sort-key").constantOr(1)!==void 0;if(!($.constantOr(1)===0&&(pe.constantOr(1)===0||de.constantOr(1)===0))){for(var $e=Y.context,pt=$e.gl,Kt=Y.depthModeForSublayer(0,Wi.ReadOnly),ir=$i.disabled,Jt=Y.colorModeForRenderPass(),vt=[],Pt=0;Pt<O.length;Pt++){var Wt=O[Pt],rr=z.getTile(Wt),dr=rr.getBucket(K);if(dr){var pr=dr.programConfigurations.get(K.id),kr=Y.useProgram("circle",pr),Ar=dr.layoutVertexBuffer,gr=dr.indexBuffer,Cr=Bt(Y,Wt,rr,K),cr={programConfiguration:pr,program:kr,layoutVertexBuffer:Ar,indexBuffer:gr,uniformValues:Cr};if(Ie)for(var Gr=dr.segments.get(),ei=0,yi=Gr;ei<yi.length;ei+=1){var tn=yi[ei];vt.push({segments:new i.SegmentVector([tn]),sortKey:tn.sortKey,state:cr})}else vt.push({segments:dr.segments,sortKey:0,state:cr})}}Ie&&vt.sort(function(Do,ps){return Do.sortKey-ps.sortKey});for(var Ri=0,ln=vt;Ri<ln.length;Ri+=1){var Qn=ln[Ri],qn=Qn.state,rn=qn.programConfiguration,bn=qn.program,mn=qn.layoutVertexBuffer,Gn=qn.indexBuffer,da=qn.uniformValues,No=Qn.segments;bn.draw($e,pt.TRIANGLES,Kt,ir,Jt,yr.disabled,da,K.id,mn,Gn,No,K.paint,Y.transform.zoom,rn)}}}}function yt(Y,z,K,O){if(K.paint.get("heatmap-opacity")!==0)if(Y.renderPass==="offscreen"){var $=Y.context,pe=$.gl,de=$i.disabled,Ie=new ft([pe.ONE,pe.ONE],i.Color.transparent,[!0,!0,!0,!0]);Ot($,Y,K),$.clear({color:i.Color.transparent});for(var $e=0;$e<O.length;$e++){var pt=O[$e];if(!z.hasRenderableParent(pt)){var Kt=z.getTile(pt),ir=Kt.getBucket(K);if(ir){var Jt=ir.programConfigurations.get(K.id),vt=Y.useProgram("heatmap",Jt),Pt=Y.transform,Wt=Pt.zoom;vt.draw($,pe.TRIANGLES,Wi.disabled,de,Ie,yr.disabled,Ii(pt.posMatrix,Kt,Wt,K.paint.get("heatmap-intensity")),K.id,ir.layoutVertexBuffer,ir.indexBuffer,ir.segments,K.paint,Y.transform.zoom,Jt)}}}$.viewport.set([0,0,Y.width,Y.height])}else Y.renderPass==="translucent"&&(Y.context.setColorMode(Y.colorModeForRenderPass()),hr(Y,K))}function Ot(Y,z,K){var O=Y.gl;Y.activeTexture.set(O.TEXTURE1),Y.viewport.set([0,0,z.width/4,z.height/4]);var $=K.heatmapFbo;if($)O.bindTexture(O.TEXTURE_2D,$.colorAttachment.get()),Y.bindFramebuffer.set($.framebuffer);else{var pe=O.createTexture();O.bindTexture(O.TEXTURE_2D,pe),O.texParameteri(O.TEXTURE_2D,O.TEXTURE_WRAP_S,O.CLAMP_TO_EDGE),O.texParameteri(O.TEXTURE_2D,O.TEXTURE_WRAP_T,O.CLAMP_TO_EDGE),O.texParameteri(O.TEXTURE_2D,O.TEXTURE_MIN_FILTER,O.LINEAR),O.texParameteri(O.TEXTURE_2D,O.TEXTURE_MAG_FILTER,O.LINEAR),$=K.heatmapFbo=Y.createFramebuffer(z.width/4,z.height/4,!1),Nt(Y,z,pe,$)}}function Nt(Y,z,K,O){var $=Y.gl,pe=Y.extRenderToTextureHalfFloat?Y.extTextureHalfFloat.HALF_FLOAT_OES:$.UNSIGNED_BYTE;$.texImage2D($.TEXTURE_2D,0,$.RGBA,z.width/4,z.height/4,0,$.RGBA,pe,null),O.colorAttachment.set(K)}function hr(Y,z){var K=Y.context,O=K.gl,$=z.heatmapFbo;if($){K.activeTexture.set(O.TEXTURE0),O.bindTexture(O.TEXTURE_2D,$.colorAttachment.get()),K.activeTexture.set(O.TEXTURE1);var pe=z.colorRampTexture;pe||(pe=z.colorRampTexture=new i.Texture(K,z.colorRamp,O.RGBA)),pe.bind(O.LINEAR,O.CLAMP_TO_EDGE),Y.useProgram("heatmapTexture").draw(K,O.TRIANGLES,Wi.disabled,$i.disabled,Y.colorModeForRenderPass(),yr.disabled,mi(Y,z,0,1),z.id,Y.viewportBuffer,Y.quadTriangleIndexBuffer,Y.viewportSegments,z.paint,Y.transform.zoom)}}function Sr(Y,z,K,O){if(Y.renderPass==="translucent"){var $=K.paint.get("line-opacity"),pe=K.paint.get("line-width");if(!($.constantOr(1)===0||pe.constantOr(1)===0))for(var de=Y.depthModeForSublayer(0,Wi.ReadOnly),Ie=Y.colorModeForRenderPass(),$e=K.paint.get("line-dasharray"),pt=K.paint.get("line-pattern"),Kt=pt.constantOr(1),ir=K.paint.get("line-gradient"),Jt=K.getCrossfadeParameters(),vt=Kt?"linePattern":$e?"lineSDF":ir?"lineGradient":"line",Pt=Y.context,Wt=Pt.gl,rr=!0,dr=0,pr=O;dr<pr.length;dr+=1){var kr=pr[dr],Ar=z.getTile(kr);if(!(Kt&&!Ar.patternsLoaded())){var gr=Ar.getBucket(K);if(gr){var Cr=gr.programConfigurations.get(K.id),cr=Y.context.program.get(),Gr=Y.useProgram(vt,Cr),ei=rr||Gr.program!==cr,yi=pt.constantOr(null);if(yi&&Ar.imageAtlas){var tn=Ar.imageAtlas,Ri=tn.patternPositions[yi.to.toString()],ln=tn.patternPositions[yi.from.toString()];Ri&&ln&&Cr.setConstantPatternPositions(Ri,ln)}var Qn=Kt?Qo(Y,Ar,K,Jt):$e?ys(Y,Ar,K,$e,Jt):ir?Ts(Y,Ar,K,gr.lineClipsArray.length):Xo(Y,Ar,K);if(Kt)Pt.activeTexture.set(Wt.TEXTURE0),Ar.imageAtlasTexture.bind(Wt.LINEAR,Wt.CLAMP_TO_EDGE),Cr.updatePaintBuffers(Jt);else if($e&&(ei||Y.lineAtlas.dirty))Pt.activeTexture.set(Wt.TEXTURE0),Y.lineAtlas.bind(Pt);else if(ir){var qn=gr.gradients[K.id],rn=qn.texture;if(K.gradientVersion!==qn.version){var bn=256;if(K.stepInterpolant){var mn=z.getSource().maxzoom,Gn=kr.canonical.z===mn?Math.ceil(1<<Y.transform.maxZoom-kr.canonical.z):1,da=gr.maxLineLength/i.EXTENT,No=1024,Do=da*No*Gn;bn=i.clamp(i.nextPowerOfTwo(Do),256,Pt.maxTextureSize)}qn.gradient=i.renderColorRamp({expression:K.gradientExpression(),evaluationKey:"lineProgress",resolution:bn,image:qn.gradient||void 0,clips:gr.lineClipsArray}),qn.texture?qn.texture.update(qn.gradient):qn.texture=new i.Texture(Pt,qn.gradient,Wt.RGBA),qn.version=K.gradientVersion,rn=qn.texture}Pt.activeTexture.set(Wt.TEXTURE0),rn.bind(K.stepInterpolant?Wt.NEAREST:Wt.LINEAR,Wt.CLAMP_TO_EDGE)}Gr.draw(Pt,Wt.TRIANGLES,de,Y.stencilModeForClipping(kr),Ie,yr.disabled,Qn,K.id,gr.layoutVertexBuffer,gr.indexBuffer,gr.segments,K.paint,Y.transform.zoom,Cr,gr.layoutVertexBuffer2),rr=!1}}}}}function he(Y,z,K,O){var $=K.paint.get("fill-color"),pe=K.paint.get("fill-opacity");if(pe.constantOr(1)!==0){var de=Y.colorModeForRenderPass(),Ie=K.paint.get("fill-pattern"),$e=Y.opaquePassEnabledForLayer()&&!Ie.constantOr(1)&&$.constantOr(i.Color.transparent).a===1&&pe.constantOr(0)===1?"opaque":"translucent";if(Y.renderPass===$e){var pt=Y.depthModeForSublayer(1,Y.renderPass==="opaque"?Wi.ReadWrite:Wi.ReadOnly);be(Y,z,K,O,pt,de,!1)}if(Y.renderPass==="translucent"&&K.paint.get("fill-antialias")){var Kt=Y.depthModeForSublayer(K.getPaintProperty("fill-outline-color")?2:0,Wi.ReadOnly);be(Y,z,K,O,Kt,de,!0)}}}function be(Y,z,K,O,$,pe,de){var Ie=Y.context.gl,$e=K.paint.get("fill-pattern"),pt=$e&&$e.constantOr(1),Kt=K.getCrossfadeParameters(),ir,Jt,vt,Pt,Wt;de?(Jt=pt&&!K.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",ir=Ie.LINES):(Jt=pt?"fillPattern":"fill",ir=Ie.TRIANGLES);for(var rr=0,dr=O;rr<dr.length;rr+=1){var pr=dr[rr],kr=z.getTile(pr);if(!(pt&&!kr.patternsLoaded())){var Ar=kr.getBucket(K);if(Ar){var gr=Ar.programConfigurations.get(K.id),Cr=Y.useProgram(Jt,gr);pt&&(Y.context.activeTexture.set(Ie.TEXTURE0),kr.imageAtlasTexture.bind(Ie.LINEAR,Ie.CLAMP_TO_EDGE),gr.updatePaintBuffers(Kt));var cr=$e.constantOr(null);if(cr&&kr.imageAtlas){var Gr=kr.imageAtlas,ei=Gr.patternPositions[cr.to.toString()],yi=Gr.patternPositions[cr.from.toString()];ei&&yi&&gr.setConstantPatternPositions(ei,yi)}var tn=Y.translatePosMatrix(pr.posMatrix,kr,K.paint.get("fill-translate"),K.paint.get("fill-translate-anchor"));if(!de)Pt=Ar.indexBuffer,Wt=Ar.segments,vt=pt?Yc(tn,Y,Kt,kr):mc(tn);else{Pt=Ar.indexBuffer2,Wt=Ar.segments2;var Ri=[Ie.drawingBufferWidth,Ie.drawingBufferHeight];vt=Jt==="fillOutlinePattern"&&pt?gf(tn,Y,Kt,kr,Ri):nc(tn,Ri)}Cr.draw(Y.context,ir,$,Y.stencilModeForClipping(pr),pe,yr.disabled,vt,K.id,Ar.layoutVertexBuffer,Pt,Wt,K.paint,Y.transform.zoom,gr)}}}}function Pe(Y,z,K,O){var $=K.paint.get("fill-extrusion-opacity");if($!==0&&Y.renderPass==="translucent"){var pe=new Wi(Y.context.gl.LEQUAL,Wi.ReadWrite,Y.depthRangeFor3D);if($===1&&!K.paint.get("fill-extrusion-pattern").constantOr(1)){var de=Y.colorModeForRenderPass();Oe(Y,z,K,O,pe,$i.disabled,de)}else Oe(Y,z,K,O,pe,$i.disabled,ft.disabled),Oe(Y,z,K,O,pe,Y.stencilModeFor3D(),Y.colorModeForRenderPass())}}function Oe(Y,z,K,O,$,pe,de){for(var Ie=Y.context,$e=Ie.gl,pt=K.paint.get("fill-extrusion-pattern"),Kt=pt.constantOr(1),ir=K.getCrossfadeParameters(),Jt=K.paint.get("fill-extrusion-opacity"),vt=0,Pt=O;vt<Pt.length;vt+=1){var Wt=Pt[vt],rr=z.getTile(Wt),dr=rr.getBucket(K);if(dr){var pr=dr.programConfigurations.get(K.id),kr=Y.useProgram(Kt?"fillExtrusionPattern":"fillExtrusion",pr);Kt&&(Y.context.activeTexture.set($e.TEXTURE0),rr.imageAtlasTexture.bind($e.LINEAR,$e.CLAMP_TO_EDGE),pr.updatePaintBuffers(ir));var Ar=pt.constantOr(null);if(Ar&&rr.imageAtlas){var gr=rr.imageAtlas,Cr=gr.patternPositions[Ar.to.toString()],cr=gr.patternPositions[Ar.from.toString()];Cr&&cr&&pr.setConstantPatternPositions(Cr,cr)}var Gr=Y.translatePosMatrix(Wt.posMatrix,rr,K.paint.get("fill-extrusion-translate"),K.paint.get("fill-extrusion-translate-anchor")),ei=K.paint.get("fill-extrusion-vertical-gradient"),yi=Kt?Wu(Gr,Y,ei,Jt,Wt,ir,rr):Ih(Gr,Y,ei,Jt);kr.draw(Ie,Ie.gl.TRIANGLES,$,pe,de,yr.backCCW,yi,K.id,dr.layoutVertexBuffer,dr.indexBuffer,dr.segments,K.paint,Y.transform.zoom,pr)}}}function Je(Y,z,K,O){if(!(Y.renderPass!=="offscreen"&&Y.renderPass!=="translucent")){for(var $=Y.context,pe=Y.depthModeForSublayer(0,Wi.ReadOnly),de=Y.colorModeForRenderPass(),Ie=Y.renderPass==="translucent"?Y.stencilConfigForOverlap(O):[{},O],$e=Ie[0],pt=Ie[1],Kt=0,ir=pt;Kt<ir.length;Kt+=1){var Jt=ir[Kt],vt=z.getTile(Jt);vt.needsHillshadePrepare&&Y.renderPass==="offscreen"?et(Y,vt,K,pe,$i.disabled,de):Y.renderPass==="translucent"&&He(Y,vt,K,pe,$e[Jt.overscaledZ],de)}$.viewport.set([0,0,Y.width,Y.height])}}function He(Y,z,K,O,$,pe){var de=Y.context,Ie=de.gl,$e=z.fbo;if($e){var pt=Y.useProgram("hillshade");de.activeTexture.set(Ie.TEXTURE0),Ie.bindTexture(Ie.TEXTURE_2D,$e.colorAttachment.get());var Kt=Ta(Y,z,K);pt.draw(de,Ie.TRIANGLES,O,$,pe,yr.disabled,Kt,K.id,Y.rasterBoundsBuffer,Y.quadTriangleIndexBuffer,Y.rasterBoundsSegments)}}function et(Y,z,K,O,$,pe){var de=Y.context,Ie=de.gl,$e=z.dem;if($e&&$e.data){var pt=$e.dim,Kt=$e.stride,ir=$e.getPixels();if(de.activeTexture.set(Ie.TEXTURE1),de.pixelStoreUnpackPremultiplyAlpha.set(!1),z.demTexture=z.demTexture||Y.getTileTexture(Kt),z.demTexture){var Jt=z.demTexture;Jt.update(ir,{premultiply:!1}),Jt.bind(Ie.NEAREST,Ie.CLAMP_TO_EDGE)}else z.demTexture=new i.Texture(de,ir,Ie.RGBA,{premultiply:!1}),z.demTexture.bind(Ie.NEAREST,Ie.CLAMP_TO_EDGE);de.activeTexture.set(Ie.TEXTURE0);var vt=z.fbo;if(!vt){var Pt=new i.Texture(de,{width:pt,height:pt,data:null},Ie.RGBA);Pt.bind(Ie.LINEAR,Ie.CLAMP_TO_EDGE),vt=z.fbo=de.createFramebuffer(pt,pt,!0),vt.colorAttachment.set(Pt.texture)}de.bindFramebuffer.set(vt.framebuffer),de.viewport.set([0,0,pt,pt]),Y.useProgram("hillshadePrepare").draw(de,Ie.TRIANGLES,O,$,pe,yr.disabled,Ea(z.tileID,$e),K.id,Y.rasterBoundsBuffer,Y.quadTriangleIndexBuffer,Y.rasterBoundsSegments),z.needsHillshadePrepare=!1}}function Mt(Y,z,K,O){if(Y.renderPass==="translucent"&&K.paint.get("raster-opacity")!==0&&O.length)for(var $=Y.context,pe=$.gl,de=z.getSource(),Ie=Y.useProgram("raster"),$e=Y.colorModeForRenderPass(),pt=de instanceof ke?[{},O]:Y.stencilConfigForOverlap(O),Kt=pt[0],ir=pt[1],Jt=ir[ir.length-1].overscaledZ,vt=!Y.options.moving,Pt=0,Wt=ir;Pt<Wt.length;Pt+=1){var rr=Wt[Pt],dr=Y.depthModeForSublayer(rr.overscaledZ-Jt,K.paint.get("raster-opacity")===1?Wi.ReadWrite:Wi.ReadOnly,pe.LESS),pr=z.getTile(rr),kr=Y.transform.calculatePosMatrix(rr.toUnwrapped(),vt);pr.registerFadeDuration(K.paint.get("raster-fade-duration"));var Ar=z.findLoadedParent(rr,0),gr=Dt(pr,Ar,z,K,Y.transform),Cr=void 0,cr=void 0,Gr=K.paint.get("raster-resampling")==="nearest"?pe.NEAREST:pe.LINEAR;$.activeTexture.set(pe.TEXTURE0),pr.texture.bind(Gr,pe.CLAMP_TO_EDGE,pe.LINEAR_MIPMAP_NEAREST),$.activeTexture.set(pe.TEXTURE1),Ar?(Ar.texture.bind(Gr,pe.CLAMP_TO_EDGE,pe.LINEAR_MIPMAP_NEAREST),Cr=Math.pow(2,Ar.tileID.overscaledZ-pr.tileID.overscaledZ),cr=[pr.tileID.canonical.x*Cr%1,pr.tileID.canonical.y*Cr%1]):pr.texture.bind(Gr,pe.CLAMP_TO_EDGE,pe.LINEAR_MIPMAP_NEAREST);var ei=Rs(kr,cr||[0,0],Cr||1,gr,K);de instanceof ke?Ie.draw($,pe.TRIANGLES,dr,$i.disabled,$e,yr.disabled,ei,K.id,de.boundsBuffer,Y.quadTriangleIndexBuffer,de.boundsSegments):Ie.draw($,pe.TRIANGLES,dr,Kt[rr.overscaledZ],$e,yr.disabled,ei,K.id,Y.rasterBoundsBuffer,Y.quadTriangleIndexBuffer,Y.rasterBoundsSegments)}}function Dt(Y,z,K,O,$){var pe=O.paint.get("raster-fade-duration");if(pe>0){var de=i.browser.now(),Ie=(de-Y.timeAdded)/pe,$e=z?(de-z.timeAdded)/pe:-1,pt=K.getSource(),Kt=$.coveringZoomLevel({tileSize:pt.tileSize,roundZoom:pt.roundZoom}),ir=!z||Math.abs(z.tileID.overscaledZ-Kt)>Math.abs(Y.tileID.overscaledZ-Kt),Jt=ir&&Y.refreshedUponExpiration?1:i.clamp(ir?Ie:1-$e,0,1);return Y.refreshedUponExpiration&&Ie>=1&&(Y.refreshedUponExpiration=!1),z?{opacity:1,mix:1-Jt}:{opacity:Jt,mix:0}}else return{opacity:1,mix:0}}function Ut(Y,z,K){var O=K.paint.get("background-color"),$=K.paint.get("background-opacity");if($!==0){var pe=Y.context,de=pe.gl,Ie=Y.transform,$e=Ie.tileSize,pt=K.paint.get("background-pattern");if(!Y.isPatternMissing(pt)){var Kt=!pt&&O.a===1&&$===1&&Y.opaquePassEnabledForLayer()?"opaque":"translucent";if(Y.renderPass===Kt){var ir=$i.disabled,Jt=Y.depthModeForSublayer(0,Kt==="opaque"?Wi.ReadWrite:Wi.ReadOnly),vt=Y.colorModeForRenderPass(),Pt=Y.useProgram(pt?"backgroundPattern":"background"),Wt=Ie.coveringTiles({tileSize:$e});pt&&(pe.activeTexture.set(de.TEXTURE0),Y.imageManager.bind(Y.context));for(var rr=K.getCrossfadeParameters(),dr=0,pr=Wt;dr<pr.length;dr+=1){var kr=pr[dr],Ar=Y.transform.calculatePosMatrix(kr.toUnwrapped()),gr=pt?Da(Ar,$,Y,pt,{tileID:kr,tileSize:$e},rr):Dc(Ar,$,O);Pt.draw(pe,de.TRIANGLES,Jt,ir,vt,yr.disabled,gr,K.id,Y.tileExtentBuffer,Y.quadTriangleIndexBuffer,Y.tileExtentSegments)}}}}}var tr=new i.Color(1,0,0,1),mr=new i.Color(0,1,0,1),Rr=new i.Color(0,0,1,1),zr=new i.Color(1,0,1,1),Xr=new i.Color(0,1,1,1);function di(Y){var z=Y.transform.padding,K=3;Ci(Y,Y.transform.height-(z.top||0),K,tr),Ci(Y,z.bottom||0,K,mr),Qi(Y,z.left||0,K,Rr),Qi(Y,Y.transform.width-(z.right||0),K,zr);var O=Y.transform.centerPoint;Li(Y,O.x,Y.transform.height-O.y,Xr)}function Li(Y,z,K,O){var $=20,pe=2;Mn(Y,z-pe/2,K-$/2,pe,$,O),Mn(Y,z-$/2,K-pe/2,$,pe,O)}function Ci(Y,z,K,O){Mn(Y,0,z+K/2,Y.transform.width,K,O)}function Qi(Y,z,K,O){Mn(Y,z-K/2,0,K,Y.transform.height,O)}function Mn(Y,z,K,O,$,pe){var de=Y.context,Ie=de.gl;Ie.enable(Ie.SCISSOR_TEST),Ie.scissor(z*i.browser.devicePixelRatio,K*i.browser.devicePixelRatio,O*i.browser.devicePixelRatio,$*i.browser.devicePixelRatio),de.clear({color:pe}),Ie.disable(Ie.SCISSOR_TEST)}function pa(Y,z,K){for(var O=0;O<K.length;O++)ea(Y,z,K[O])}function ea(Y,z,K){var O=Y.context,$=O.gl,pe=K.posMatrix,de=Y.useProgram("debug"),Ie=Wi.disabled,$e=$i.disabled,pt=Y.colorModeForRenderPass(),Kt="$debug";O.activeTexture.set($.TEXTURE0),Y.emptyTexture.bind($.LINEAR,$.CLAMP_TO_EDGE),de.draw(O,$.LINE_STRIP,Ie,$e,pt,yr.disabled,Fi(pe,i.Color.red),Kt,Y.debugBuffer,Y.tileBorderIndexBuffer,Y.debugSegments);var ir=z.getTileByID(K.key).latestRawTileData,Jt=ir&&ir.byteLength||0,vt=Math.floor(Jt/1024),Pt=z.getTile(K).tileSize,Wt=512/Math.min(Pt,512)*(K.overscaledZ/Y.transform.zoom)*.5,rr=K.canonical.toString();K.overscaledZ!==K.canonical.z&&(rr+=" => "+K.overscaledZ);var dr=rr+" "+vt+"kb";Ga(Y,dr),de.draw(O,$.TRIANGLES,Ie,$e,ft.alphaBlended,yr.disabled,Fi(pe,i.Color.transparent,Wt),Kt,Y.debugBuffer,Y.quadTriangleIndexBuffer,Y.debugSegments)}function Ga(Y,z){Y.initDebugOverlayCanvas();var K=Y.debugOverlayCanvas,O=Y.context.gl,$=Y.debugOverlayCanvas.getContext("2d");$.clearRect(0,0,K.width,K.height),$.shadowColor="white",$.shadowBlur=2,$.lineWidth=1.5,$.strokeStyle="white",$.textBaseline="top",$.font="bold 36px Open Sans, sans-serif",$.fillText(z,5,5),$.strokeText(z,5,5),Y.debugOverlayTexture.update(K),Y.debugOverlayTexture.bind(O.LINEAR,O.CLAMP_TO_EDGE)}function To(Y,z,K){var O=Y.context,$=K.implementation;if(Y.renderPass==="offscreen"){var pe=$.prerender;pe&&(Y.setCustomLayerDefaults(),O.setColorMode(Y.colorModeForRenderPass()),pe.call($,O.gl,Y.transform.customLayerMatrix()),O.setDirty(),Y.setBaseState())}else if(Y.renderPass==="translucent"){Y.setCustomLayerDefaults(),O.setColorMode(Y.colorModeForRenderPass()),O.setStencilMode($i.disabled);var de=$.renderingMode==="3d"?new Wi(Y.context.gl.LEQUAL,Wi.ReadWrite,Y.depthRangeFor3D):Y.depthModeForSublayer(0,Wi.ReadOnly);O.setDepthMode(de),$.render(O.gl,Y.transform.customLayerMatrix()),O.setDirty(),Y.setBaseState(),O.bindFramebuffer.set(null)}}var Wa={symbol:w,circle:it,heatmap:yt,line:Sr,fill:he,"fill-extrusion":Pe,hillshade:Je,raster:Mt,background:Ut,debug:pa,custom:To},co=function(z,K){this.context=new Fr(z),this.transform=K,this._tileTextures={},this.setup(),this.numSublayers=Zr.maxUnderzooming+Zr.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new rh,this.gpuTimers={}};co.prototype.resize=function(z,K){if(this.width=z*i.browser.devicePixelRatio,this.height=K*i.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var O=0,$=this.style._order;O<$.length;O+=1){var pe=$[O];this.style._layers[pe].resize()}},co.prototype.setup=function(){var z=this.context,K=new i.StructArrayLayout2i4;K.emplaceBack(0,0),K.emplaceBack(i.EXTENT,0),K.emplaceBack(0,i.EXTENT),K.emplaceBack(i.EXTENT,i.EXTENT),this.tileExtentBuffer=z.createVertexBuffer(K,kc.members),this.tileExtentSegments=i.SegmentVector.simpleSegment(0,0,4,2);var O=new i.StructArrayLayout2i4;O.emplaceBack(0,0),O.emplaceBack(i.EXTENT,0),O.emplaceBack(0,i.EXTENT),O.emplaceBack(i.EXTENT,i.EXTENT),this.debugBuffer=z.createVertexBuffer(O,kc.members),this.debugSegments=i.SegmentVector.simpleSegment(0,0,4,5);var $=new i.StructArrayLayout4i8;$.emplaceBack(0,0,0,0),$.emplaceBack(i.EXTENT,0,i.EXTENT,0),$.emplaceBack(0,i.EXTENT,0,i.EXTENT),$.emplaceBack(i.EXTENT,i.EXTENT,i.EXTENT,i.EXTENT),this.rasterBoundsBuffer=z.createVertexBuffer($,Me.members),this.rasterBoundsSegments=i.SegmentVector.simpleSegment(0,0,4,2);var pe=new i.StructArrayLayout2i4;pe.emplaceBack(0,0),pe.emplaceBack(1,0),pe.emplaceBack(0,1),pe.emplaceBack(1,1),this.viewportBuffer=z.createVertexBuffer(pe,kc.members),this.viewportSegments=i.SegmentVector.simpleSegment(0,0,4,2);var de=new i.StructArrayLayout1ui2;de.emplaceBack(0),de.emplaceBack(1),de.emplaceBack(3),de.emplaceBack(2),de.emplaceBack(0),this.tileBorderIndexBuffer=z.createIndexBuffer(de);var Ie=new i.StructArrayLayout3ui6;Ie.emplaceBack(0,1,2),Ie.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=z.createIndexBuffer(Ie),this.emptyTexture=new i.Texture(z,{width:1,height:1,data:new Uint8Array([0,0,0,0])},z.gl.RGBA);var $e=this.context.gl;this.stencilClearMode=new $i({func:$e.ALWAYS,mask:0},0,255,$e.ZERO,$e.ZERO,$e.ZERO)},co.prototype.clearStencil=function(){var z=this.context,K=z.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var O=i.create();i.ortho(O,0,this.width,this.height,0,0,1),i.scale(O,O,[K.drawingBufferWidth,K.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(z,K.TRIANGLES,Wi.disabled,this.stencilClearMode,ft.disabled,yr.disabled,hn(O),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},co.prototype._renderTileClippingMasks=function(z,K){if(!(this.currentStencilSource===z.source||!z.isTileClipped()||!K||!K.length)){this.currentStencilSource=z.source;var O=this.context,$=O.gl;this.nextStencilID+K.length>256&&this.clearStencil(),O.setColorMode(ft.disabled),O.setDepthMode(Wi.disabled);var pe=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var de=0,Ie=K;de<Ie.length;de+=1){var $e=Ie[de],pt=this._tileClippingMaskIDs[$e.key]=this.nextStencilID++;pe.draw(O,$.TRIANGLES,Wi.disabled,new $i({func:$.ALWAYS,mask:0},pt,255,$.KEEP,$.KEEP,$.REPLACE),ft.disabled,yr.disabled,hn($e.posMatrix),"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},co.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var z=this.nextStencilID++,K=this.context.gl;return new $i({func:K.NOTEQUAL,mask:255},z,255,K.KEEP,K.KEEP,K.REPLACE)},co.prototype.stencilModeForClipping=function(z){var K=this.context.gl;return new $i({func:K.EQUAL,mask:255},this._tileClippingMaskIDs[z.key],0,K.KEEP,K.KEEP,K.REPLACE)},co.prototype.stencilConfigForOverlap=function(z){var K,O=this.context.gl,$=z.sort(function(pt,Kt){return Kt.overscaledZ-pt.overscaledZ}),pe=$[$.length-1].overscaledZ,de=$[0].overscaledZ-pe+1;if(de>1){this.currentStencilSource=void 0,this.nextStencilID+de>256&&this.clearStencil();for(var Ie={},$e=0;$e<de;$e++)Ie[$e+pe]=new $i({func:O.GEQUAL,mask:255},$e+this.nextStencilID,255,O.KEEP,O.KEEP,O.REPLACE);return this.nextStencilID+=de,[Ie,$]}return[(K={},K[pe]=$i.disabled,K),$]},co.prototype.colorModeForRenderPass=function(){var z=this.context.gl;if(this._showOverdrawInspector){var K=8,O=1/K;return new ft([z.CONSTANT_COLOR,z.ONE],new i.Color(O,O,O,0),[!0,!0,!0,!0])}else return this.renderPass==="opaque"?ft.unblended:ft.alphaBlended},co.prototype.depthModeForSublayer=function(z,K,O){if(!this.opaquePassEnabledForLayer())return Wi.disabled;var $=1-((1+this.currentLayer)*this.numSublayers+z)*this.depthEpsilon;return new Wi(O||this.context.gl.LEQUAL,K,[$,$])},co.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},co.prototype.render=function(z,K){var O=this;this.style=z,this.options=K,this.lineAtlas=z.lineAtlas,this.imageManager=z.imageManager,this.glyphManager=z.glyphManager,this.symbolFadeChange=z.placement.symbolFadeChange(i.browser.now()),this.imageManager.beginFrame();var $=this.style._order,pe=this.style.sourceCaches;for(var de in pe){var Ie=pe[de];Ie.used&&Ie.prepare(this.context)}var $e={},pt={},Kt={};for(var ir in pe){var Jt=pe[ir];$e[ir]=Jt.getVisibleCoordinates(),pt[ir]=$e[ir].slice().reverse(),Kt[ir]=Jt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var vt=0;vt<$.length;vt++){var Pt=$[vt];if(this.style._layers[Pt].is3D()){this.opaquePassCutoff=vt;break}}this.renderPass="offscreen";for(var Wt=0,rr=$;Wt<rr.length;Wt+=1){var dr=rr[Wt],pr=this.style._layers[dr];if(!(!pr.hasOffscreenPass()||pr.isHidden(this.transform.zoom))){var kr=pt[pr.source];pr.type!=="custom"&&!kr.length||this.renderLayer(this,pe[pr.source],pr,kr)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:K.showOverdrawInspector?i.Color.black:i.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=K.showOverdrawInspector,this.depthRangeFor3D=[0,1-(z._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass="opaque",this.currentLayer=$.length-1;this.currentLayer>=0;this.currentLayer--){var Ar=this.style._layers[$[this.currentLayer]],gr=pe[Ar.source],Cr=$e[Ar.source];this._renderTileClippingMasks(Ar,Cr),this.renderLayer(this,gr,Ar,Cr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<$.length;this.currentLayer++){var cr=this.style._layers[$[this.currentLayer]],Gr=pe[cr.source],ei=(cr.type==="symbol"?Kt:pt)[cr.source];this._renderTileClippingMasks(cr,$e[cr.source]),this.renderLayer(this,Gr,cr,ei)}if(this.options.showTileBoundaries){var yi,tn,Ri=i.values(this.style._layers);Ri.forEach(function(ln){ln.source&&!ln.isHidden(O.transform.zoom)&&(ln.source!==(tn&&tn.id)&&(tn=O.style.sourceCaches[ln.source]),(!yi||yi.getSource().maxzoom<tn.getSource().maxzoom)&&(yi=tn))}),yi&&Wa.debug(this,yi,yi.getVisibleCoordinates())}this.options.showPadding&&di(this),this.context.setDefault()},co.prototype.renderLayer=function(z,K,O,$){O.isHidden(this.transform.zoom)||O.type!=="background"&&O.type!=="custom"&&!$.length||(this.id=O.id,this.gpuTimingStart(O),Wa[O.type](z,K,O,$,this.style.placement.variableOffsets),this.gpuTimingEnd())},co.prototype.gpuTimingStart=function(z){if(this.options.gpuTiming){var K=this.context.extTimerQuery,O=this.gpuTimers[z.id];O||(O=this.gpuTimers[z.id]={calls:0,cpuTime:0,query:K.createQueryEXT()}),O.calls++,K.beginQueryEXT(K.TIME_ELAPSED_EXT,O.query)}},co.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var z=this.context.extTimerQuery;z.endQueryEXT(z.TIME_ELAPSED_EXT)}},co.prototype.collectGpuTimers=function(){var z=this.gpuTimers;return this.gpuTimers={},z},co.prototype.queryGpuTimers=function(z){var K={};for(var O in z){var $=z[O],pe=this.context.extTimerQuery,de=pe.getQueryObjectEXT($.query,pe.QUERY_RESULT_EXT)/(1e3*1e3);pe.deleteQueryEXT($.query),K[O]=de}return K},co.prototype.translatePosMatrix=function(z,K,O,$,pe){if(!O[0]&&!O[1])return z;var de=pe?$==="map"?this.transform.angle:0:$==="viewport"?-this.transform.angle:0;if(de){var Ie=Math.sin(de),$e=Math.cos(de);O=[O[0]*$e-O[1]*Ie,O[0]*Ie+O[1]*$e]}var pt=[pe?O[0]:Cs(K,O[0],this.transform.zoom),pe?O[1]:Cs(K,O[1],this.transform.zoom),0],Kt=new Float32Array(16);return i.translate(Kt,z,pt),Kt},co.prototype.saveTileTexture=function(z){var K=this._tileTextures[z.size[0]];K?K.push(z):this._tileTextures[z.size[0]]=[z]},co.prototype.getTileTexture=function(z){var K=this._tileTextures[z];return K&&K.length>0?K.pop():null},co.prototype.isPatternMissing=function(z){if(!z)return!1;if(!z.from||!z.to)return!0;var K=this.imageManager.getPattern(z.from.toString()),O=this.imageManager.getPattern(z.to.toString());return!K||!O},co.prototype.useProgram=function(z,K){this.cache=this.cache||{};var O=""+z+(K?K.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[O]||(this.cache[O]=new Vf(this.context,z,Pf[z],K,eo[z],this._showOverdrawInspector)),this.cache[O]},co.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()},co.prototype.setBaseState=function(){var z=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(z.FUNC_ADD)},co.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=i.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var z=this.context.gl;this.debugOverlayTexture=new i.Texture(this.context,this.debugOverlayCanvas,z.RGBA)}},co.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var Ro=function(z,K){this.points=z,this.planes=K};Ro.fromInvProjectionMatrix=function(z,K,O){var $=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],pe=Math.pow(2,O),de=$.map(function(pt){return i.transformMat4([],pt,z)}).map(function(pt){return i.scale$1([],pt,1/pt[3]/K*pe)}),Ie=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],$e=Ie.map(function(pt){var Kt=i.sub([],de[pt[0]],de[pt[1]]),ir=i.sub([],de[pt[2]],de[pt[1]]),Jt=i.normalize([],i.cross([],Kt,ir)),vt=-i.dot(Jt,de[pt[1]]);return Jt.concat(vt)});return new Ro(de,$e)};var Ds=function(z,K){this.min=z,this.max=K,this.center=i.scale$2([],i.add([],this.min,this.max),.5)};Ds.prototype.quadrant=function(z){for(var K=[z%2===0,z<2],O=i.clone$2(this.min),$=i.clone$2(this.max),pe=0;pe<K.length;pe++)O[pe]=K[pe]?this.min[pe]:this.center[pe],$[pe]=K[pe]?this.center[pe]:this.max[pe];return $[2]=this.max[2],new Ds(O,$)},Ds.prototype.distanceX=function(z){var K=Math.max(Math.min(this.max[0],z[0]),this.min[0]);return K-z[0]},Ds.prototype.distanceY=function(z){var K=Math.max(Math.min(this.max[1],z[1]),this.min[1]);return K-z[1]},Ds.prototype.intersects=function(z){for(var K=[[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]],O=!0,$=0;$<z.planes.length;$++){for(var pe=z.planes[$],de=0,Ie=0;Ie<K.length;Ie++)de+=i.dot$1(pe,K[Ie])>=0;if(de===0)return 0;de!==K.length&&(O=!1)}if(O)return 2;for(var $e=0;$e<3;$e++){for(var pt=Number.MAX_VALUE,Kt=-Number.MAX_VALUE,ir=0;ir<z.points.length;ir++){var Jt=z.points[ir][$e]-this.min[$e];pt=Math.min(pt,Jt),Kt=Math.max(Kt,Jt)}if(Kt<0||pt>this.max[$e]-this.min[$e])return 0}return 1};var As=function(z,K,O,$){if(z===void 0&&(z=0),K===void 0&&(K=0),O===void 0&&(O=0),$===void 0&&($=0),isNaN(z)||z<0||isNaN(K)||K<0||isNaN(O)||O<0||isNaN($)||$<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=z,this.bottom=K,this.left=O,this.right=$};As.prototype.interpolate=function(z,K,O){return K.top!=null&&z.top!=null&&(this.top=i.number(z.top,K.top,O)),K.bottom!=null&&z.bottom!=null&&(this.bottom=i.number(z.bottom,K.bottom,O)),K.left!=null&&z.left!=null&&(this.left=i.number(z.left,K.left,O)),K.right!=null&&z.right!=null&&(this.right=i.number(z.right,K.right,O)),this},As.prototype.getCenter=function(z,K){var O=i.clamp((this.left+z-this.right)/2,0,z),$=i.clamp((this.top+K-this.bottom)/2,0,K);return new i.Point(O,$)},As.prototype.equals=function(z){return this.top===z.top&&this.bottom===z.bottom&&this.left===z.left&&this.right===z.right},As.prototype.clone=function(){return new As(this.top,this.bottom,this.left,this.right)},As.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var yo=function(z,K,O,$,pe){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=pe===void 0?!0:pe,this._minZoom=z||0,this._maxZoom=K||22,this._minPitch=O==null?0:O,this._maxPitch=$==null?60:$,this.setMaxBounds(),this.width=0,this.height=0,this._center=new i.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new As,this._posMatrixCache={},this._alignedPosMatrixCache={}},po={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}};yo.prototype.clone=function(){var z=new yo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return z.tileSize=this.tileSize,z.latRange=this.latRange,z.width=this.width,z.height=this.height,z._center=this._center,z.zoom=this.zoom,z.angle=this.angle,z._fov=this._fov,z._pitch=this._pitch,z._unmodified=this._unmodified,z._edgeInsets=this._edgeInsets.clone(),z._calcMatrices(),z},po.minZoom.get=function(){return this._minZoom},po.minZoom.set=function(Y){this._minZoom!==Y&&(this._minZoom=Y,this.zoom=Math.max(this.zoom,Y))},po.maxZoom.get=function(){return this._maxZoom},po.maxZoom.set=function(Y){this._maxZoom!==Y&&(this._maxZoom=Y,this.zoom=Math.min(this.zoom,Y))},po.minPitch.get=function(){return this._minPitch},po.minPitch.set=function(Y){this._minPitch!==Y&&(this._minPitch=Y,this.pitch=Math.max(this.pitch,Y))},po.maxPitch.get=function(){return this._maxPitch},po.maxPitch.set=function(Y){this._maxPitch!==Y&&(this._maxPitch=Y,this.pitch=Math.min(this.pitch,Y))},po.renderWorldCopies.get=function(){return this._renderWorldCopies},po.renderWorldCopies.set=function(Y){Y===void 0?Y=!0:Y===null&&(Y=!1),this._renderWorldCopies=Y},po.worldSize.get=function(){return this.tileSize*this.scale},po.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},po.size.get=function(){return new i.Point(this.width,this.height)},po.bearing.get=function(){return-this.angle/Math.PI*180},po.bearing.set=function(Y){var z=-i.wrap(Y,-180,180)*Math.PI/180;this.angle!==z&&(this._unmodified=!1,this.angle=z,this._calcMatrices(),this.rotationMatrix=i.create$2(),i.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},po.pitch.get=function(){return this._pitch/Math.PI*180},po.pitch.set=function(Y){var z=i.clamp(Y,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==z&&(this._unmodified=!1,this._pitch=z,this._calcMatrices())},po.fov.get=function(){return this._fov/Math.PI*180},po.fov.set=function(Y){Y=Math.max(.01,Math.min(60,Y)),this._fov!==Y&&(this._unmodified=!1,this._fov=Y/180*Math.PI,this._calcMatrices())},po.zoom.get=function(){return this._zoom},po.zoom.set=function(Y){var z=Math.min(Math.max(Y,this.minZoom),this.maxZoom);this._zoom!==z&&(this._unmodified=!1,this._zoom=z,this.scale=this.zoomScale(z),this.tileZoom=Math.floor(z),this.zoomFraction=z-this.tileZoom,this._constrain(),this._calcMatrices())},po.center.get=function(){return this._center},po.center.set=function(Y){Y.lat===this._center.lat&&Y.lng===this._center.lng||(this._unmodified=!1,this._center=Y,this._constrain(),this._calcMatrices())},po.padding.get=function(){return this._edgeInsets.toJSON()},po.padding.set=function(Y){this._edgeInsets.equals(Y)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,Y,1),this._calcMatrices())},po.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},yo.prototype.isPaddingEqual=function(z){return this._edgeInsets.equals(z)},yo.prototype.interpolatePadding=function(z,K,O){this._unmodified=!1,this._edgeInsets.interpolate(z,K,O),this._constrain(),this._calcMatrices()},yo.prototype.coveringZoomLevel=function(z){var K=(z.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/z.tileSize));return Math.max(0,K)},yo.prototype.getVisibleUnwrappedCoordinates=function(z){var K=[new i.UnwrappedTileID(0,z)];if(this._renderWorldCopies)for(var O=this.pointCoordinate(new i.Point(0,0)),$=this.pointCoordinate(new i.Point(this.width,0)),pe=this.pointCoordinate(new i.Point(this.width,this.height)),de=this.pointCoordinate(new i.Point(0,this.height)),Ie=Math.floor(Math.min(O.x,$.x,pe.x,de.x)),$e=Math.floor(Math.max(O.x,$.x,pe.x,de.x)),pt=1,Kt=Ie-pt;Kt<=$e+pt;Kt++)Kt!==0&&K.push(new i.UnwrappedTileID(Kt,z));return K},yo.prototype.coveringTiles=function(z){var K=this.coveringZoomLevel(z),O=K;if(z.minzoom!==void 0&&K<z.minzoom)return[];z.maxzoom!==void 0&&K>z.maxzoom&&(K=z.maxzoom);var $=i.MercatorCoordinate.fromLngLat(this.center),pe=Math.pow(2,K),de=[pe*$.x,pe*$.y,0],Ie=Ro.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,K),$e=z.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&($e=K);var pt=3,Kt=function(Ri){return{aabb:new Ds([Ri*pe,0,0],[(Ri+1)*pe,pe,0]),zoom:0,x:0,y:0,wrap:Ri,fullyVisible:!1}},ir=[],Jt=[],vt=K,Pt=z.reparseOverscaled?O:K;if(this._renderWorldCopies)for(var Wt=1;Wt<=3;Wt++)ir.push(Kt(-Wt)),ir.push(Kt(Wt));for(ir.push(Kt(0));ir.length>0;){var rr=ir.pop(),dr=rr.x,pr=rr.y,kr=rr.fullyVisible;if(!kr){var Ar=rr.aabb.intersects(Ie);if(Ar===0)continue;kr=Ar===2}var gr=rr.aabb.distanceX(de),Cr=rr.aabb.distanceY(de),cr=Math.max(Math.abs(gr),Math.abs(Cr)),Gr=pt+(1<<vt-rr.zoom)-2;if(rr.zoom===vt||cr>Gr&&rr.zoom>=$e){Jt.push({tileID:new i.OverscaledTileID(rr.zoom===vt?Pt:rr.zoom,rr.wrap,rr.zoom,dr,pr),distanceSq:i.sqrLen([de[0]-.5-dr,de[1]-.5-pr])});continue}for(var ei=0;ei<4;ei++){var yi=(dr<<1)+ei%2,tn=(pr<<1)+(ei>>1);ir.push({aabb:rr.aabb.quadrant(ei),zoom:rr.zoom+1,x:yi,y:tn,wrap:rr.wrap,fullyVisible:kr})}}return Jt.sort(function(Ri,ln){return Ri.distanceSq-ln.distanceSq}).map(function(Ri){return Ri.tileID})},yo.prototype.resize=function(z,K){this.width=z,this.height=K,this.pixelsToGLUnits=[2/z,-2/K],this._constrain(),this._calcMatrices()},po.unmodified.get=function(){return this._unmodified},yo.prototype.zoomScale=function(z){return Math.pow(2,z)},yo.prototype.scaleZoom=function(z){return Math.log(z)/Math.LN2},yo.prototype.project=function(z){var K=i.clamp(z.lat,-this.maxValidLatitude,this.maxValidLatitude);return new i.Point(i.mercatorXfromLng(z.lng)*this.worldSize,i.mercatorYfromLat(K)*this.worldSize)},yo.prototype.unproject=function(z){return new i.MercatorCoordinate(z.x/this.worldSize,z.y/this.worldSize).toLngLat()},po.point.get=function(){return this.project(this.center)},yo.prototype.setLocationAtPoint=function(z,K){var O=this.pointCoordinate(K),$=this.pointCoordinate(this.centerPoint),pe=this.locationCoordinate(z),de=new i.MercatorCoordinate(pe.x-(O.x-$.x),pe.y-(O.y-$.y));this.center=this.coordinateLocation(de),this._renderWorldCopies&&(this.center=this.center.wrap())},yo.prototype.locationPoint=function(z){return this.coordinatePoint(this.locationCoordinate(z))},yo.prototype.pointLocation=function(z){return this.coordinateLocation(this.pointCoordinate(z))},yo.prototype.locationCoordinate=function(z){return i.MercatorCoordinate.fromLngLat(z)},yo.prototype.coordinateLocation=function(z){return z.toLngLat()},yo.prototype.pointCoordinate=function(z){var K=0,O=[z.x,z.y,0,1],$=[z.x,z.y,1,1];i.transformMat4(O,O,this.pixelMatrixInverse),i.transformMat4($,$,this.pixelMatrixInverse);var pe=O[3],de=$[3],Ie=O[0]/pe,$e=$[0]/de,pt=O[1]/pe,Kt=$[1]/de,ir=O[2]/pe,Jt=$[2]/de,vt=ir===Jt?0:(K-ir)/(Jt-ir);return new i.MercatorCoordinate(i.number(Ie,$e,vt)/this.worldSize,i.number(pt,Kt,vt)/this.worldSize)},yo.prototype.coordinatePoint=function(z){var K=[z.x*this.worldSize,z.y*this.worldSize,0,1];return i.transformMat4(K,K,this.pixelMatrix),new i.Point(K[0]/K[3],K[1]/K[3])},yo.prototype.getBounds=function(){return new i.LngLatBounds().extend(this.pointLocation(new i.Point(0,0))).extend(this.pointLocation(new i.Point(this.width,0))).extend(this.pointLocation(new i.Point(this.width,this.height))).extend(this.pointLocation(new i.Point(0,this.height)))},yo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new i.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},yo.prototype.setMaxBounds=function(z){z?(this.lngRange=[z.getWest(),z.getEast()],this.latRange=[z.getSouth(),z.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},yo.prototype.calculatePosMatrix=function(z,K){K===void 0&&(K=!1);var O=z.key,$=K?this._alignedPosMatrixCache:this._posMatrixCache;if($[O])return $[O];var pe=z.canonical,de=this.worldSize/this.zoomScale(pe.z),Ie=pe.x+Math.pow(2,pe.z)*z.wrap,$e=i.identity(new Float64Array(16));return i.translate($e,$e,[Ie*de,pe.y*de,0]),i.scale($e,$e,[de/i.EXTENT,de/i.EXTENT,1]),i.multiply($e,K?this.alignedProjMatrix:this.projMatrix,$e),$[O]=new Float32Array($e),$[O]},yo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},yo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var z=-90,K=90,O=-180,$=180,pe,de,Ie,$e,pt=this.size,Kt=this._unmodified;if(this.latRange){var ir=this.latRange;z=i.mercatorYfromLat(ir[1])*this.worldSize,K=i.mercatorYfromLat(ir[0])*this.worldSize,pe=K-z<pt.y?pt.y/(K-z):0}if(this.lngRange){var Jt=this.lngRange;O=i.mercatorXfromLng(Jt[0])*this.worldSize,$=i.mercatorXfromLng(Jt[1])*this.worldSize,de=$-O<pt.x?pt.x/($-O):0}var vt=this.point,Pt=Math.max(de||0,pe||0);if(Pt){this.center=this.unproject(new i.Point(de?($+O)/2:vt.x,pe?(K+z)/2:vt.y)),this.zoom+=this.scaleZoom(Pt),this._unmodified=Kt,this._constraining=!1;return}if(this.latRange){var Wt=vt.y,rr=pt.y/2;Wt-rr<z&&($e=z+rr),Wt+rr>K&&($e=K-rr)}if(this.lngRange){var dr=vt.x,pr=pt.x/2;dr-pr<O&&(Ie=O+pr),dr+pr>$&&(Ie=$-pr)}(Ie!==void 0||$e!==void 0)&&(this.center=this.unproject(new i.Point(Ie!==void 0?Ie:vt.x,$e!==void 0?$e:vt.y))),this._unmodified=Kt,this._constraining=!1}},yo.prototype._calcMatrices=function(){if(this.height){var z=this._fov/2,K=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(z)*this.height;var O=Math.PI/2+this._pitch,$=this._fov*(.5+K.y/this.height),pe=Math.sin($)*this.cameraToCenterDistance/Math.sin(i.clamp(Math.PI-O-$,.01,Math.PI-.01)),de=this.point,Ie=de.x,$e=de.y,pt=Math.cos(Math.PI/2-this._pitch)*pe+this.cameraToCenterDistance,Kt=pt*1.01,ir=this.height/50,Jt=new Float64Array(16);i.perspective(Jt,this._fov,this.width/this.height,ir,Kt),Jt[8]=-K.x*2/this.width,Jt[9]=K.y*2/this.height,i.scale(Jt,Jt,[1,-1,1]),i.translate(Jt,Jt,[0,0,-this.cameraToCenterDistance]),i.rotateX(Jt,Jt,this._pitch),i.rotateZ(Jt,Jt,this.angle),i.translate(Jt,Jt,[-Ie,-$e,0]),this.mercatorMatrix=i.scale([],Jt,[this.worldSize,this.worldSize,this.worldSize]),i.scale(Jt,Jt,[1,1,i.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=Jt,this.invProjMatrix=i.invert([],this.projMatrix);var vt=this.width%2/2,Pt=this.height%2/2,Wt=Math.cos(this.angle),rr=Math.sin(this.angle),dr=Ie-Math.round(Ie)+Wt*vt+rr*Pt,pr=$e-Math.round($e)+Wt*Pt+rr*vt,kr=new Float64Array(Jt);if(i.translate(kr,kr,[dr>.5?dr-1:dr,pr>.5?pr-1:pr,0]),this.alignedProjMatrix=kr,Jt=i.create(),i.scale(Jt,Jt,[this.width/2,-this.height/2,1]),i.translate(Jt,Jt,[1,-1,0]),this.labelPlaneMatrix=Jt,Jt=i.create(),i.scale(Jt,Jt,[1,-1,1]),i.translate(Jt,Jt,[-1,-1,0]),i.scale(Jt,Jt,[2/this.width,2/this.height,1]),this.glCoordMatrix=Jt,this.pixelMatrix=i.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),Jt=i.invert(new Float64Array(16),this.pixelMatrix),!Jt)throw new Error("failed to invert matrix");this.pixelMatrixInverse=Jt,this._posMatrixCache={},this._alignedPosMatrixCache={}}},yo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var z=this.pointCoordinate(new i.Point(0,0)),K=[z.x*this.worldSize,z.y*this.worldSize,0,1],O=i.transformMat4(K,K,this.pixelMatrix);return O[3]/this.cameraToCenterDistance},yo.prototype.getCameraPoint=function(){var z=this._pitch,K=Math.tan(z)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new i.Point(0,K))},yo.prototype.getCameraQueryGeometry=function(z){var K=this.getCameraPoint();if(z.length===1)return[z[0],K];for(var O=K.x,$=K.y,pe=K.x,de=K.y,Ie=0,$e=z;Ie<$e.length;Ie+=1){var pt=$e[Ie];O=Math.min(O,pt.x),$=Math.min($,pt.y),pe=Math.max(pe,pt.x),de=Math.max(de,pt.y)}return[new i.Point(O,$),new i.Point(pe,$),new i.Point(pe,de),new i.Point(O,de),new i.Point(O,$)]},Object.defineProperties(yo.prototype,po);function _l(Y,z){var K=!1,O=null,$=function(){O=null,K&&(Y(),O=setTimeout($,z),K=!1)};return function(){return K=!0,O||$(),O}}var Hl=function(z){this._hashName=z&&encodeURIComponent(z),i.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=_l(this._updateHashUnthrottled.bind(this),30*1e3/100)};Hl.prototype.addTo=function(z){return this._map=z,i.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Hl.prototype.remove=function(){return i.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},Hl.prototype.getHashString=function(z){var K=this._map.getCenter(),O=Math.round(this._map.getZoom()*100)/100,$=Math.ceil((O*Math.LN2+Math.log(512/360/.5))/Math.LN10),pe=Math.pow(10,$),de=Math.round(K.lng*pe)/pe,Ie=Math.round(K.lat*pe)/pe,$e=this._map.getBearing(),pt=this._map.getPitch(),Kt="";if(z?Kt+="/"+de+"/"+Ie+"/"+O:Kt+=O+"/"+Ie+"/"+de,($e||pt)&&(Kt+="/"+Math.round($e*10)/10),pt&&(Kt+="/"+Math.round(pt)),this._hashName){var ir=this._hashName,Jt=!1,vt=i.window.location.hash.slice(1).split("&").map(function(Pt){var Wt=Pt.split("=")[0];return Wt===ir?(Jt=!0,Wt+"="+Kt):Pt}).filter(function(Pt){return Pt});return Jt||vt.push(ir+"="+Kt),"#"+vt.join("&")}return"#"+Kt},Hl.prototype._getCurrentHash=function(){var z=this,K=i.window.location.hash.replace("#","");if(this._hashName){var O;return K.split("&").map(function($){return $.split("=")}).forEach(function($){$[0]===z._hashName&&(O=$)}),(O&&O[1]||"").split("/")}return K.split("/")},Hl.prototype._onHashChange=function(){var z=this._getCurrentHash();if(z.length>=3&&!z.some(function(O){return isNaN(O)})){var K=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(z[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+z[2],+z[1]],zoom:+z[0],bearing:K,pitch:+(z[4]||0)}),!0}return!1},Hl.prototype._updateHashUnthrottled=function(){var z=i.window.location.href.replace(/(#.+)?$/,this.getHashString());try{i.window.history.replaceState(i.window.history.state,null,z)}catch(K){}};var Zu={linearity:.3,easing:i.bezier(0,0,.3,1)},cu=i.extend({deceleration:2500,maxSpeed:1400},Zu),el=i.extend({deceleration:20,maxSpeed:1400},Zu),au=i.extend({deceleration:1e3,maxSpeed:360},Zu),zc=i.extend({deceleration:1e3,maxSpeed:90},Zu),zl=function(z){this._map=z,this.clear()};zl.prototype.clear=function(){this._inertiaBuffer=[]},zl.prototype.record=function(z){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.browser.now(),settings:z})},zl.prototype._drainInertiaBuffer=function(){for(var z=this._inertiaBuffer,K=i.browser.now(),O=160;z.length>0&&K-z[0].time>O;)z.shift()},zl.prototype._onMoveEnd=function(z){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var K={zoom:0,bearing:0,pitch:0,pan:new i.Point(0,0),pinchAround:void 0,around:void 0},O=0,$=this._inertiaBuffer;O<$.length;O+=1){var pe=$[O],de=pe.settings;K.zoom+=de.zoomDelta||0,K.bearing+=de.bearingDelta||0,K.pitch+=de.pitchDelta||0,de.panDelta&&K.pan._add(de.panDelta),de.around&&(K.around=de.around),de.pinchAround&&(K.pinchAround=de.pinchAround)}var Ie=this._inertiaBuffer[this._inertiaBuffer.length-1],$e=Ie.time-this._inertiaBuffer[0].time,pt={};if(K.pan.mag()){var Kt=Z(K.pan.mag(),$e,i.extend({},cu,z||{}));pt.offset=K.pan.mult(Kt.amount/K.pan.mag()),pt.center=this._map.transform.center,Fl(pt,Kt)}if(K.zoom){var ir=Z(K.zoom,$e,el);pt.zoom=this._map.transform.zoom+ir.amount,Fl(pt,ir)}if(K.bearing){var Jt=Z(K.bearing,$e,au);pt.bearing=this._map.transform.bearing+i.clamp(Jt.amount,-179,179),Fl(pt,Jt)}if(K.pitch){var vt=Z(K.pitch,$e,zc);pt.pitch=this._map.transform.pitch+vt.amount,Fl(pt,vt)}if(pt.zoom||pt.bearing){var Pt=K.pinchAround===void 0?K.around:K.pinchAround;pt.around=Pt?this._map.unproject(Pt):this._map.getCenter()}return this.clear(),i.extend(pt,{noMoveStart:!0})}};function Fl(Y,z){(!Y.duration||Y.duration<z.duration)&&(Y.duration=z.duration,Y.easing=z.easing)}function Z(Y,z,K){var O=K.maxSpeed,$=K.linearity,pe=K.deceleration,de=i.clamp(Y*$/(z/1e3),-O,O),Ie=Math.abs(de)/(pe*$);return{easing:K.easing,duration:Ie*1e3,amount:de*(Ie/2)}}var oe=function(Y){function z(O,$,pe,de){de===void 0&&(de={});var Ie=o.mousePos($.getCanvasContainer(),pe),$e=$.unproject(Ie);Y.call(this,O,i.extend({point:Ie,lngLat:$e,originalEvent:pe},de)),this._defaultPrevented=!1,this.target=$}Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z;var K={defaultPrevented:{configurable:!0}};return z.prototype.preventDefault=function(){this._defaultPrevented=!0},K.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(z.prototype,K),z}(i.Event),we=function(Y){function z(O,$,pe){var de=O==="touchend"?pe.changedTouches:pe.touches,Ie=o.touchPos($.getCanvasContainer(),de),$e=Ie.map(function(ir){return $.unproject(ir)}),pt=Ie.reduce(function(ir,Jt,vt,Pt){return ir.add(Jt.div(Pt.length))},new i.Point(0,0)),Kt=$.unproject(pt);Y.call(this,O,{points:Ie,point:pt,lngLats:$e,lngLat:Kt,originalEvent:pe}),this._defaultPrevented=!1}Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z;var K={defaultPrevented:{configurable:!0}};return z.prototype.preventDefault=function(){this._defaultPrevented=!0},K.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(z.prototype,K),z}(i.Event),Be=function(Y){function z(O,$,pe){Y.call(this,O,{originalEvent:pe}),this._defaultPrevented=!1}Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z;var K={defaultPrevented:{configurable:!0}};return z.prototype.preventDefault=function(){this._defaultPrevented=!0},K.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(z.prototype,K),z}(i.Event),Ue=function(z,K){this._map=z,this._clickTolerance=K.clickTolerance};Ue.prototype.reset=function(){delete this._mousedownPos},Ue.prototype.wheel=function(z){return this._firePreventable(new Be(z.type,this._map,z))},Ue.prototype.mousedown=function(z,K){return this._mousedownPos=K,this._firePreventable(new oe(z.type,this._map,z))},Ue.prototype.mouseup=function(z){this._map.fire(new oe(z.type,this._map,z))},Ue.prototype.click=function(z,K){this._mousedownPos&&this._mousedownPos.dist(K)>=this._clickTolerance||this._map.fire(new oe(z.type,this._map,z))},Ue.prototype.dblclick=function(z){return this._firePreventable(new oe(z.type,this._map,z))},Ue.prototype.mouseover=function(z){this._map.fire(new oe(z.type,this._map,z))},Ue.prototype.mouseout=function(z){this._map.fire(new oe(z.type,this._map,z))},Ue.prototype.touchstart=function(z){return this._firePreventable(new we(z.type,this._map,z))},Ue.prototype.touchmove=function(z){this._map.fire(new we(z.type,this._map,z))},Ue.prototype.touchend=function(z){this._map.fire(new we(z.type,this._map,z))},Ue.prototype.touchcancel=function(z){this._map.fire(new we(z.type,this._map,z))},Ue.prototype._firePreventable=function(z){if(this._map.fire(z),z.defaultPrevented)return{}},Ue.prototype.isEnabled=function(){return!0},Ue.prototype.isActive=function(){return!1},Ue.prototype.enable=function(){},Ue.prototype.disable=function(){};var We=function(z){this._map=z};We.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},We.prototype.mousemove=function(z){this._map.fire(new oe(z.type,this._map,z))},We.prototype.mousedown=function(){this._delayContextMenu=!0},We.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new oe("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},We.prototype.contextmenu=function(z){this._delayContextMenu?this._contextMenuEvent=z:this._map.fire(new oe(z.type,this._map,z)),this._map.listens("contextmenu")&&z.preventDefault()},We.prototype.isEnabled=function(){return!0},We.prototype.isActive=function(){return!1},We.prototype.enable=function(){},We.prototype.disable=function(){};var wt=function(z,K){this._map=z,this._el=z.getCanvasContainer(),this._container=z.getContainer(),this._clickTolerance=K.clickTolerance||1};wt.prototype.isEnabled=function(){return!!this._enabled},wt.prototype.isActive=function(){return!!this._active},wt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},wt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},wt.prototype.mousedown=function(z,K){this.isEnabled()&&z.shiftKey&&z.button===0&&(o.disableDrag(),this._startPos=this._lastPos=K,this._active=!0)},wt.prototype.mousemoveWindow=function(z,K){if(this._active){var O=K;if(!(this._lastPos.equals(O)||!this._box&&O.dist(this._startPos)<this._clickTolerance)){var $=this._startPos;this._lastPos=O,this._box||(this._box=o.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",z));var pe=Math.min($.x,O.x),de=Math.max($.x,O.x),Ie=Math.min($.y,O.y),$e=Math.max($.y,O.y);o.setTransform(this._box,"translate("+pe+"px,"+Ie+"px)"),this._box.style.width=de-pe+"px",this._box.style.height=$e-Ie+"px"}}},wt.prototype.mouseupWindow=function(z,K){var O=this;if(this._active&&z.button===0){var $=this._startPos,pe=K;if(this.reset(),o.suppressClick(),$.x===pe.x&&$.y===pe.y)this._fireEvent("boxzoomcancel",z);else return this._map.fire(new i.Event("boxzoomend",{originalEvent:z})),{cameraAnimation:function(de){return de.fitScreenCoordinates($,pe,O._map.getBearing(),{linear:!0})}}}},wt.prototype.keydown=function(z){this._active&&z.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",z))},wt.prototype.reset=function(){this._active=!1,this._container.classList.remove("mapboxgl-crosshair"),this._box&&(o.remove(this._box),this._box=null),o.enableDrag(),delete this._startPos,delete this._lastPos},wt.prototype._fireEvent=function(z,K){return this._map.fire(new i.Event(z,{originalEvent:K}))};function tt(Y,z){for(var K={},O=0;O<Y.length;O++)K[Y[O].identifier]=z[O];return K}function zt(Y){for(var z=new i.Point(0,0),K=0,O=Y;K<O.length;K+=1){var $=O[K];z._add($)}return z.div(Y.length)}var or=500,lr=500,Dr=30,Ir=function(z){this.reset(),this.numTouches=z.numTouches};Ir.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},Ir.prototype.touchstart=function(z,K,O){(this.centroid||O.length>this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=z.timeStamp),O.length===this.numTouches&&(this.centroid=zt(K),this.touches=tt(O,K)))},Ir.prototype.touchmove=function(z,K,O){if(!(this.aborted||!this.centroid)){var $=tt(O,K);for(var pe in this.touches){var de=this.touches[pe],Ie=$[pe];(!Ie||Ie.dist(de)>Dr)&&(this.aborted=!0)}}},Ir.prototype.touchend=function(z,K,O){if((!this.centroid||z.timeStamp-this.startTime>lr)&&(this.aborted=!0),O.length===0){var $=!this.aborted&&this.centroid;if(this.reset(),$)return $}};var oi=function(z){this.singleTap=new Ir(z),this.numTaps=z.numTaps,this.reset()};oi.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},oi.prototype.touchstart=function(z,K,O){this.singleTap.touchstart(z,K,O)},oi.prototype.touchmove=function(z,K,O){this.singleTap.touchmove(z,K,O)},oi.prototype.touchend=function(z,K,O){var $=this.singleTap.touchend(z,K,O);if($){var pe=z.timeStamp-this.lastTime<or,de=!this.lastTap||this.lastTap.dist($)<Dr;if((!pe||!de)&&this.reset(),this.count++,this.lastTime=z.timeStamp,this.lastTap=$,this.count===this.numTaps)return this.reset(),$}};var ui=function(){this._zoomIn=new oi({numTouches:1,numTaps:2}),this._zoomOut=new oi({numTouches:2,numTaps:1}),this.reset()};ui.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},ui.prototype.touchstart=function(z,K,O){this._zoomIn.touchstart(z,K,O),this._zoomOut.touchstart(z,K,O)},ui.prototype.touchmove=function(z,K,O){this._zoomIn.touchmove(z,K,O),this._zoomOut.touchmove(z,K,O)},ui.prototype.touchend=function(z,K,O){var $=this,pe=this._zoomIn.touchend(z,K,O),de=this._zoomOut.touchend(z,K,O);if(pe)return this._active=!0,z.preventDefault(),setTimeout(function(){return $.reset()},0),{cameraAnimation:function(Ie){return Ie.easeTo({duration:300,zoom:Ie.getZoom()+1,around:Ie.unproject(pe)},{originalEvent:z})}};if(de)return this._active=!0,z.preventDefault(),setTimeout(function(){return $.reset()},0),{cameraAnimation:function(Ie){return Ie.easeTo({duration:300,zoom:Ie.getZoom()-1,around:Ie.unproject(de)},{originalEvent:z})}}},ui.prototype.touchcancel=function(){this.reset()},ui.prototype.enable=function(){this._enabled=!0},ui.prototype.disable=function(){this._enabled=!1,this.reset()},ui.prototype.isEnabled=function(){return this._enabled},ui.prototype.isActive=function(){return this._active};var qr=0,Kr=2,ii={};ii[qr]=1,ii[Kr]=2;function vi(Y,z){var K=ii[z];return Y.buttons===void 0||(Y.buttons&K)!==K}var ci=function(z){this.reset(),this._clickTolerance=z.clickTolerance||1};ci.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},ci.prototype._correctButton=function(z,K){return!1},ci.prototype._move=function(z,K){return{}},ci.prototype.mousedown=function(z,K){if(!this._lastPoint){var O=o.mouseButton(z);this._correctButton(z,O)&&(this._lastPoint=K,this._eventButton=O)}},ci.prototype.mousemoveWindow=function(z,K){var O=this._lastPoint;if(O){if(z.preventDefault(),vi(z,this._eventButton)){this.reset();return}if(!(!this._moved&&K.dist(O)<this._clickTolerance))return this._moved=!0,this._lastPoint=K,this._move(O,K)}},ci.prototype.mouseupWindow=function(z){if(this._lastPoint){var K=o.mouseButton(z);K===this._eventButton&&(this._moved&&o.suppressClick(),this.reset())}},ci.prototype.enable=function(){this._enabled=!0},ci.prototype.disable=function(){this._enabled=!1,this.reset()},ci.prototype.isEnabled=function(){return this._enabled},ci.prototype.isActive=function(){return this._active};var Jr=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.mousedown=function(O,$){Y.prototype.mousedown.call(this,O,$),this._lastPoint&&(this._active=!0)},z.prototype._correctButton=function(O,$){return $===qr&&!O.ctrlKey},z.prototype._move=function(O,$){return{around:$,panDelta:$.sub(O)}},z}(ci),un=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype._correctButton=function(O,$){return $===qr&&O.ctrlKey||$===Kr},z.prototype._move=function(O,$){var pe=.8,de=($.x-O.x)*pe;if(de)return this._active=!0,{bearingDelta:de}},z.prototype.contextmenu=function(O){O.preventDefault()},z}(ci),dn=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype._correctButton=function(O,$){return $===qr&&O.ctrlKey||$===Kr},z.prototype._move=function(O,$){var pe=-.5,de=($.y-O.y)*pe;if(de)return this._active=!0,{pitchDelta:de}},z.prototype.contextmenu=function(O){O.preventDefault()},z}(ci),En=function(z){this._minTouches=1,this._clickTolerance=z.clickTolerance||1,this.reset()};En.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new i.Point(0,0)},En.prototype.touchstart=function(z,K,O){return this._calculateTransform(z,K,O)},En.prototype.touchmove=function(z,K,O){if(!(!this._active||O.length<this._minTouches))return z.preventDefault(),this._calculateTransform(z,K,O)},En.prototype.touchend=function(z,K,O){this._calculateTransform(z,K,O),this._active&&O.length<this._minTouches&&this.reset()},En.prototype.touchcancel=function(){this.reset()},En.prototype._calculateTransform=function(z,K,O){O.length>0&&(this._active=!0);var $=tt(O,K),pe=new i.Point(0,0),de=new i.Point(0,0),Ie=0;for(var $e in $){var pt=$[$e],Kt=this._touches[$e];Kt&&(pe._add(pt),de._add(pt.sub(Kt)),Ie++,$[$e]=pt)}if(this._touches=$,!(Ie<this._minTouches||!de.mag())){var ir=de.div(Ie);if(this._sum._add(ir),!(this._sum.mag()<this._clickTolerance)){var Jt=pe.div(Ie);return{around:Jt,panDelta:ir}}}},En.prototype.enable=function(){this._enabled=!0},En.prototype.disable=function(){this._enabled=!1,this.reset()},En.prototype.isEnabled=function(){return this._enabled},En.prototype.isActive=function(){return this._active};var Nn=function(){this.reset()};Nn.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},Nn.prototype._start=function(z){},Nn.prototype._move=function(z,K,O){return{}},Nn.prototype.touchstart=function(z,K,O){this._firstTwoTouches||O.length<2||(this._firstTwoTouches=[O[0].identifier,O[1].identifier],this._start([K[0],K[1]]))},Nn.prototype.touchmove=function(z,K,O){if(this._firstTwoTouches){z.preventDefault();var $=this._firstTwoTouches,pe=$[0],de=$[1],Ie=ga(O,K,pe),$e=ga(O,K,de);if(!(!Ie||!$e)){var pt=this._aroundCenter?null:Ie.add($e).div(2);return this._move([Ie,$e],pt,z)}}},Nn.prototype.touchend=function(z,K,O){if(this._firstTwoTouches){var $=this._firstTwoTouches,pe=$[0],de=$[1],Ie=ga(O,K,pe),$e=ga(O,K,de);Ie&&$e||(this._active&&o.suppressClick(),this.reset())}},Nn.prototype.touchcancel=function(){this.reset()},Nn.prototype.enable=function(z){this._enabled=!0,this._aroundCenter=!!z&&z.around==="center"},Nn.prototype.disable=function(){this._enabled=!1,this.reset()},Nn.prototype.isEnabled=function(){return this._enabled},Nn.prototype.isActive=function(){return this._active};function ga(Y,z,K){for(var O=0;O<Y.length;O++)if(Y[O].identifier===K)return z[O]}var ya=.1;function so(Y,z){return Math.log(Y/z)/Math.LN2}var wa=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.reset=function(){Y.prototype.reset.call(this),delete this._distance,delete this._startDistance},z.prototype._start=function(O){this._startDistance=this._distance=O[0].dist(O[1])},z.prototype._move=function(O,$){var pe=this._distance;if(this._distance=O[0].dist(O[1]),!(!this._active&&Math.abs(so(this._distance,this._startDistance))<ya))return this._active=!0,{zoomDelta:so(this._distance,pe),pinchAround:$}},z}(Nn),io=25;function Ss(Y,z){return Y.angleWith(z)*180/Math.PI}var _s=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.reset=function(){Y.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},z.prototype._start=function(O){this._startVector=this._vector=O[0].sub(O[1]),this._minDiameter=O[0].dist(O[1])},z.prototype._move=function(O,$){var pe=this._vector;if(this._vector=O[0].sub(O[1]),!(!this._active&&this._isBelowThreshold(this._vector)))return this._active=!0,{bearingDelta:Ss(this._vector,pe),pinchAround:$}},z.prototype._isBelowThreshold=function(O){this._minDiameter=Math.min(this._minDiameter,O.mag());var $=Math.PI*this._minDiameter,pe=io/$*360,de=Ss(O,this._startVector);return Math.abs(de)<pe},z}(Nn);function Ns(Y){return Math.abs(Y.y)>Math.abs(Y.x)}var pn=100,za=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.reset=function(){Y.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},z.prototype._start=function(O){this._lastPoints=O,Ns(O[0].sub(O[1]))&&(this._valid=!1)},z.prototype._move=function(O,$,pe){var de=O[0].sub(this._lastPoints[0]),Ie=O[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(de,Ie,pe.timeStamp),!!this._valid){this._lastPoints=O,this._active=!0;var $e=(de.y+Ie.y)/2,pt=-.5;return{pitchDelta:$e*pt}}},z.prototype.gestureBeginsVertically=function(O,$,pe){if(this._valid!==void 0)return this._valid;var de=2,Ie=O.mag()>=de,$e=$.mag()>=de;if(!(!Ie&&!$e)){if(!Ie||!$e)return this._firstMove===void 0&&(this._firstMove=pe),pe-this._firstMove<pn?void 0:!1;var pt=O.y>0==$.y>0;return Ns(O)&&Ns($)&&pt}},z}(Nn),Lo={panStep:100,bearingStep:15,pitchStep:10},Fo=function(){var z=Lo;this._panStep=z.panStep,this._bearingStep=z.bearingStep,this._pitchStep=z.pitchStep,this._rotationDisabled=!1};Fo.prototype.reset=function(){this._active=!1},Fo.prototype.keydown=function(z){var K=this;if(!(z.altKey||z.ctrlKey||z.metaKey)){var O=0,$=0,pe=0,de=0,Ie=0;switch(z.keyCode){case 61:case 107:case 171:case 187:O=1;break;case 189:case 109:case 173:O=-1;break;case 37:z.shiftKey?$=-1:(z.preventDefault(),de=-1);break;case 39:z.shiftKey?$=1:(z.preventDefault(),de=1);break;case 38:z.shiftKey?pe=1:(z.preventDefault(),Ie=-1);break;case 40:z.shiftKey?pe=-1:(z.preventDefault(),Ie=1);break;default:return}return this._rotationDisabled&&($=0,pe=0),{cameraAnimation:function($e){var pt=$e.getZoom();$e.easeTo({duration:300,easeId:"keyboardHandler",easing:js,zoom:O?Math.round(pt)+O*(z.shiftKey?2:1):pt,bearing:$e.getBearing()+$*K._bearingStep,pitch:$e.getPitch()+pe*K._pitchStep,offset:[-de*K._panStep,-Ie*K._panStep],center:$e.getCenter()},{originalEvent:z})}}}},Fo.prototype.enable=function(){this._enabled=!0},Fo.prototype.disable=function(){this._enabled=!1,this.reset()},Fo.prototype.isEnabled=function(){return this._enabled},Fo.prototype.isActive=function(){return this._active},Fo.prototype.disableRotation=function(){this._rotationDisabled=!0},Fo.prototype.enableRotation=function(){this._rotationDisabled=!1};function js(Y){return Y*(2-Y)}var xl=4.000244140625,fu=1/100,dl=1/450,xc=2,At=function(z,K){this._map=z,this._el=z.getCanvasContainer(),this._handler=K,this._delta=0,this._defaultZoomRate=fu,this._wheelZoomRate=dl,i.bindAll(["_onTimeout"],this)};At.prototype.setZoomRate=function(z){this._defaultZoomRate=z},At.prototype.setWheelZoomRate=function(z){this._wheelZoomRate=z},At.prototype.isEnabled=function(){return!!this._enabled},At.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},At.prototype.isZooming=function(){return!!this._zooming},At.prototype.enable=function(z){this.isEnabled()||(this._enabled=!0,this._aroundCenter=z&&z.around==="center")},At.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},At.prototype.wheel=function(z){if(this.isEnabled()){var K=z.deltaMode===i.window.WheelEvent.DOM_DELTA_LINE?z.deltaY*40:z.deltaY,O=i.browser.now(),$=O-(this._lastWheelEventTime||0);this._lastWheelEventTime=O,K!==0&&K%xl===0?this._type="wheel":K!==0&&Math.abs(K)<4?this._type="trackpad":$>400?(this._type=null,this._lastValue=K,this._timeout=setTimeout(this._onTimeout,40,z)):this._type||(this._type=Math.abs($*K)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,K+=this._lastValue)),z.shiftKey&&K&&(K=K/4),this._type&&(this._lastWheelEvent=z,this._delta-=K,this._active||this._start(z)),z.preventDefault()}},At.prototype._onTimeout=function(z){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(z)},At.prototype._start=function(z){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 K=o.mousePos(this._el,z);this._around=i.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(K)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},At.prototype.renderFrame=function(){var z=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var K=this._map.transform;if(this._delta!==0){var O=this._type==="wheel"&&Math.abs(this._delta)>xl?this._wheelZoomRate:this._defaultZoomRate,$=xc/(1+Math.exp(-Math.abs(this._delta*O)));this._delta<0&&$!==0&&($=1/$);var pe=typeof this._targetZoom=="number"?K.zoomScale(this._targetZoom):K.scale;this._targetZoom=Math.min(K.maxZoom,Math.max(K.minZoom,K.scaleZoom(pe*$))),this._type==="wheel"&&(this._startZoom=K.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var de=typeof this._targetZoom=="number"?this._targetZoom:K.zoom,Ie=this._startZoom,$e=this._easing,pt=!1,Kt;if(this._type==="wheel"&&Ie&&$e){var ir=Math.min((i.browser.now()-this._lastWheelEventTime)/200,1),Jt=$e(ir);Kt=i.number(Ie,de,Jt),ir<1?this._frameId||(this._frameId=!0):pt=!0}else Kt=de,pt=!0;return this._active=!0,pt&&(this._active=!1,this._finishTimeout=setTimeout(function(){z._zooming=!1,z._handler._triggerRenderFrame(),delete z._targetZoom,delete z._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!pt,zoomDelta:Kt-K.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},At.prototype._smoothOutEasing=function(z){var K=i.ease;if(this._prevEase){var O=this._prevEase,$=(i.browser.now()-O.start)/O.duration,pe=O.easing($+.01)-O.easing($),de=.27/Math.sqrt(pe*pe+1e-4)*.01,Ie=Math.sqrt(.27*.27-de*de);K=i.bezier(de,Ie,.25,1)}return this._prevEase={start:i.browser.now(),duration:z,easing:K},K},At.prototype.reset=function(){this._active=!1};var Er=function(z,K){this._clickZoom=z,this._tapZoom=K};Er.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},Er.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},Er.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},Er.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Wr=function(){this.reset()};Wr.prototype.reset=function(){this._active=!1},Wr.prototype.dblclick=function(z,K){return z.preventDefault(),{cameraAnimation:function(O){O.easeTo({duration:300,zoom:O.getZoom()+(z.shiftKey?-1:1),around:O.unproject(K)},{originalEvent:z})}}},Wr.prototype.enable=function(){this._enabled=!0},Wr.prototype.disable=function(){this._enabled=!1,this.reset()},Wr.prototype.isEnabled=function(){return this._enabled},Wr.prototype.isActive=function(){return this._active};var wi=function(){this._tap=new oi({numTouches:1,numTaps:1}),this.reset()};wi.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},wi.prototype.touchstart=function(z,K,O){this._swipePoint||(this._tapTime&&z.timeStamp-this._tapTime>or&&this.reset(),this._tapTime?O.length>0&&(this._swipePoint=K[0],this._swipeTouch=O[0].identifier):this._tap.touchstart(z,K,O))},wi.prototype.touchmove=function(z,K,O){if(!this._tapTime)this._tap.touchmove(z,K,O);else if(this._swipePoint){if(O[0].identifier!==this._swipeTouch)return;var $=K[0],pe=$.y-this._swipePoint.y;return this._swipePoint=$,z.preventDefault(),this._active=!0,{zoomDelta:pe/128}}},wi.prototype.touchend=function(z,K,O){if(this._tapTime)this._swipePoint&&O.length===0&&this.reset();else{var $=this._tap.touchend(z,K,O);$&&(this._tapTime=z.timeStamp)}},wi.prototype.touchcancel=function(){this.reset()},wi.prototype.enable=function(){this._enabled=!0},wi.prototype.disable=function(){this._enabled=!1,this.reset()},wi.prototype.isEnabled=function(){return this._enabled},wi.prototype.isActive=function(){return this._active};var Ui=function(z,K,O){this._el=z,this._mousePan=K,this._touchPan=O};Ui.prototype.enable=function(z){this._inertiaOptions=z||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},Ui.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},Ui.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},Ui.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var Oi=function(z,K,O){this._pitchWithRotate=z.pitchWithRotate,this._mouseRotate=K,this._mousePitch=O};Oi.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},Oi.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},Oi.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},Oi.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var Bi=function(z,K,O,$){this._el=z,this._touchZoom=K,this._touchRotate=O,this._tapDragZoom=$,this._rotationDisabled=!1,this._enabled=!0};Bi.prototype.enable=function(z){this._touchZoom.enable(z),this._rotationDisabled||this._touchRotate.enable(z),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},Bi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},Bi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},Bi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},Bi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},Bi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var cn=function(Y){return Y.zoom||Y.drag||Y.pitch||Y.rotate},On=function(Y){function z(){Y.apply(this,arguments)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z}(i.Event);function Bn(Y){return Y.panDelta&&Y.panDelta.mag()||Y.zoomDelta||Y.bearingDelta||Y.pitchDelta}var yn=function(z,K){this._map=z,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new zl(z),this._bearingSnap=K.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(K),i.bindAll(["handleEvent","handleWindowEvent"],this);var O=this._el;this._listeners=[[O,"touchstart",{passive:!0}],[O,"touchmove",{passive:!1}],[O,"touchend",void 0],[O,"touchcancel",void 0],[O,"mousedown",void 0],[O,"mousemove",void 0],[O,"mouseup",void 0],[i.window.document,"mousemove",{capture:!0}],[i.window.document,"mouseup",void 0],[O,"mouseover",void 0],[O,"mouseout",void 0],[O,"dblclick",void 0],[O,"click",void 0],[O,"keydown",{capture:!1}],[O,"keyup",void 0],[O,"wheel",{passive:!1}],[O,"contextmenu",void 0],[i.window,"blur",void 0]];for(var $=0,pe=this._listeners;$<pe.length;$+=1){var de=pe[$],Ie=de[0],$e=de[1],pt=de[2];o.addEventListener(Ie,$e,Ie===i.window.document?this.handleWindowEvent:this.handleEvent,pt)}};yn.prototype.destroy=function(){for(var z=0,K=this._listeners;z<K.length;z+=1){var O=K[z],$=O[0],pe=O[1],de=O[2];o.removeEventListener($,pe,$===i.window.document?this.handleWindowEvent:this.handleEvent,de)}},yn.prototype._addDefaultHandlers=function(z){var K=this._map,O=K.getCanvasContainer();this._add("mapEvent",new Ue(K,z));var $=K.boxZoom=new wt(K,z);this._add("boxZoom",$);var pe=new ui,de=new Wr;K.doubleClickZoom=new Er(de,pe),this._add("tapZoom",pe),this._add("clickZoom",de);var Ie=new wi;this._add("tapDragZoom",Ie);var $e=K.touchPitch=new za;this._add("touchPitch",$e);var pt=new un(z),Kt=new dn(z);K.dragRotate=new Oi(z,pt,Kt),this._add("mouseRotate",pt,["mousePitch"]),this._add("mousePitch",Kt,["mouseRotate"]);var ir=new Jr(z),Jt=new En(z);K.dragPan=new Ui(O,ir,Jt),this._add("mousePan",ir),this._add("touchPan",Jt,["touchZoom","touchRotate"]);var vt=new _s,Pt=new wa;K.touchZoomRotate=new Bi(O,Pt,vt,Ie),this._add("touchRotate",vt,["touchPan","touchZoom"]),this._add("touchZoom",Pt,["touchPan","touchRotate"]);var Wt=K.scrollZoom=new At(K,this);this._add("scrollZoom",Wt,["mousePan"]);var rr=K.keyboard=new Fo;this._add("keyboard",rr),this._add("blockableMapEvent",new We(K));for(var dr=0,pr=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];dr<pr.length;dr+=1){var kr=pr[dr];z.interactive&&z[kr]&&K[kr].enable(z[kr])}},yn.prototype._add=function(z,K,O){this._handlers.push({handlerName:z,handler:K,allowed:O}),this._handlersById[z]=K},yn.prototype.stop=function(z){if(!this._updatingCamera){for(var K=0,O=this._handlers;K<O.length;K+=1){var $=O[K],pe=$.handler;pe.reset()}this._inertia.clear(),this._fireEvents({},{},z),this._changes=[]}},yn.prototype.isActive=function(){for(var z=0,K=this._handlers;z<K.length;z+=1){var O=K[z],$=O.handler;if($.isActive())return!0}return!1},yn.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},yn.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},yn.prototype.isMoving=function(){return!!cn(this._eventsInProgress)||this.isZooming()},yn.prototype._blockedByActive=function(z,K,O){for(var $ in z)if($!==O&&(!K||K.indexOf($)<0))return!0;return!1},yn.prototype.handleWindowEvent=function(z){this.handleEvent(z,z.type+"Window")},yn.prototype._getMapTouches=function(z){for(var K=[],O=0,$=z;O<$.length;O+=1){var pe=$[O],de=pe.target;this._el.contains(de)&&K.push(pe)}return K},yn.prototype.handleEvent=function(z,K){if(z.type==="blur"){this.stop(!0);return}this._updatingCamera=!0;for(var O=z.type==="renderFrame"?void 0:z,$={needsRenderFrame:!1},pe={},de={},Ie=z.touches?this._getMapTouches(z.touches):void 0,$e=Ie?o.touchPos(this._el,Ie):o.mousePos(this._el,z),pt=0,Kt=this._handlers;pt<Kt.length;pt+=1){var ir=Kt[pt],Jt=ir.handlerName,vt=ir.handler,Pt=ir.allowed;if(vt.isEnabled()){var Wt=void 0;this._blockedByActive(de,Pt,Jt)?vt.reset():vt[K||z.type]&&(Wt=vt[K||z.type](z,$e,Ie),this.mergeHandlerResult($,pe,Wt,Jt,O),Wt&&Wt.needsRenderFrame&&this._triggerRenderFrame()),(Wt||vt.isActive())&&(de[Jt]=vt)}}var rr={};for(var dr in this._previousActiveHandlers)de[dr]||(rr[dr]=O);this._previousActiveHandlers=de,(Object.keys(rr).length||Bn($))&&(this._changes.push([$,pe,rr]),this._triggerRenderFrame()),(Object.keys(de).length||Bn($))&&this._map._stop(!0),this._updatingCamera=!1;var pr=$.cameraAnimation;pr&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],pr(this._map))},yn.prototype.mergeHandlerResult=function(z,K,O,$,pe){if(O){i.extend(z,O);var de={handlerName:$,originalEvent:O.originalEvent||pe};O.zoomDelta!==void 0&&(K.zoom=de),O.panDelta!==void 0&&(K.drag=de),O.pitchDelta!==void 0&&(K.pitch=de),O.bearingDelta!==void 0&&(K.rotate=de)}},yn.prototype._applyChanges=function(){for(var z={},K={},O={},$=0,pe=this._changes;$<pe.length;$+=1){var de=pe[$],Ie=de[0],$e=de[1],pt=de[2];Ie.panDelta&&(z.panDelta=(z.panDelta||new i.Point(0,0))._add(Ie.panDelta)),Ie.zoomDelta&&(z.zoomDelta=(z.zoomDelta||0)+Ie.zoomDelta),Ie.bearingDelta&&(z.bearingDelta=(z.bearingDelta||0)+Ie.bearingDelta),Ie.pitchDelta&&(z.pitchDelta=(z.pitchDelta||0)+Ie.pitchDelta),Ie.around!==void 0&&(z.around=Ie.around),Ie.pinchAround!==void 0&&(z.pinchAround=Ie.pinchAround),Ie.noInertia&&(z.noInertia=Ie.noInertia),i.extend(K,$e),i.extend(O,pt)}this._updateMapTransform(z,K,O),this._changes=[]},yn.prototype._updateMapTransform=function(z,K,O){var $=this._map,pe=$.transform;if(!Bn(z))return this._fireEvents(K,O,!0);var de=z.panDelta,Ie=z.zoomDelta,$e=z.bearingDelta,pt=z.pitchDelta,Kt=z.around,ir=z.pinchAround;ir!==void 0&&(Kt=ir),$._stop(!0),Kt=Kt||$.transform.centerPoint;var Jt=pe.pointLocation(de?Kt.sub(de):Kt);$e&&(pe.bearing+=$e),pt&&(pe.pitch+=pt),Ie&&(pe.zoom+=Ie),pe.setLocationAtPoint(Jt,Kt),this._map._update(),z.noInertia||this._inertia.record(z),this._fireEvents(K,O,!0)},yn.prototype._fireEvents=function(z,K,O){var $=this,pe=cn(this._eventsInProgress),de=cn(z),Ie={};for(var $e in z){var pt=z[$e],Kt=pt.originalEvent;this._eventsInProgress[$e]||(Ie[$e+"start"]=Kt),this._eventsInProgress[$e]=z[$e]}!pe&&de&&this._fireEvent("movestart",de.originalEvent);for(var ir in Ie)this._fireEvent(ir,Ie[ir]);de&&this._fireEvent("move",de.originalEvent);for(var Jt in z){var vt=z[Jt],Pt=vt.originalEvent;this._fireEvent(Jt,Pt)}var Wt={},rr;for(var dr in this._eventsInProgress){var pr=this._eventsInProgress[dr],kr=pr.handlerName,Ar=pr.originalEvent;this._handlersById[kr].isActive()||(delete this._eventsInProgress[dr],rr=K[kr]||Ar,Wt[dr+"end"]=rr)}for(var gr in Wt)this._fireEvent(gr,Wt[gr]);var Cr=cn(this._eventsInProgress);if(O&&(pe||de)&&!Cr){this._updatingCamera=!0;var cr=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),Gr=function(ei){return ei!==0&&-$._bearingSnap<ei&&ei<$._bearingSnap};cr?(Gr(cr.bearing||this._map.getBearing())&&(cr.bearing=0),this._map.easeTo(cr,{originalEvent:rr})):(this._map.fire(new i.Event("moveend",{originalEvent:rr})),Gr(this._map.getBearing())&&this._map.resetNorth()),this._updatingCamera=!1}},yn.prototype._fireEvent=function(z,K){this._map.fire(new i.Event(z,K?{originalEvent:K}:{}))},yn.prototype._requestFrame=function(){var z=this;return this._map.triggerRepaint(),this._map._renderTaskQueue.add(function(K){delete z._frameId,z.handleEvent(new On("renderFrame",{timeStamp:K})),z._applyChanges()})},yn.prototype._triggerRenderFrame=function(){this._frameId===void 0&&(this._frameId=this._requestFrame())};var to=function(Y){function z(K,O){Y.call(this),this._moving=!1,this._zooming=!1,this.transform=K,this._bearingSnap=O.bearingSnap,i.bindAll(["_renderFrameCallback"],this)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.getCenter=function(){return new i.LngLat(this.transform.center.lng,this.transform.center.lat)},z.prototype.setCenter=function(O,$){return this.jumpTo({center:O},$)},z.prototype.panBy=function(O,$,pe){return O=i.Point.convert(O).mult(-1),this.panTo(this.transform.center,i.extend({offset:O},$),pe)},z.prototype.panTo=function(O,$,pe){return this.easeTo(i.extend({center:O},$),pe)},z.prototype.getZoom=function(){return this.transform.zoom},z.prototype.setZoom=function(O,$){return this.jumpTo({zoom:O},$),this},z.prototype.zoomTo=function(O,$,pe){return this.easeTo(i.extend({zoom:O},$),pe)},z.prototype.zoomIn=function(O,$){return this.zoomTo(this.getZoom()+1,O,$),this},z.prototype.zoomOut=function(O,$){return this.zoomTo(this.getZoom()-1,O,$),this},z.prototype.getBearing=function(){return this.transform.bearing},z.prototype.setBearing=function(O,$){return this.jumpTo({bearing:O},$),this},z.prototype.getPadding=function(){return this.transform.padding},z.prototype.setPadding=function(O,$){return this.jumpTo({padding:O},$),this},z.prototype.rotateTo=function(O,$,pe){return this.easeTo(i.extend({bearing:O},$),pe)},z.prototype.resetNorth=function(O,$){return this.rotateTo(0,i.extend({duration:1e3},O),$),this},z.prototype.resetNorthPitch=function(O,$){return this.easeTo(i.extend({bearing:0,pitch:0,duration:1e3},O),$),this},z.prototype.snapToNorth=function(O,$){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(O,$):this},z.prototype.getPitch=function(){return this.transform.pitch},z.prototype.setPitch=function(O,$){return this.jumpTo({pitch:O},$),this},z.prototype.cameraForBounds=function(O,$){O=i.LngLatBounds.convert(O);var pe=$&&$.bearing||0;return this._cameraForBoxAndBearing(O.getNorthWest(),O.getSouthEast(),pe,$)},z.prototype._cameraForBoxAndBearing=function(O,$,pe,de){var Ie={top:0,bottom:0,right:0,left:0};if(de=i.extend({padding:Ie,offset:[0,0],maxZoom:this.transform.maxZoom},de),typeof de.padding=="number"){var $e=de.padding;de.padding={top:$e,bottom:$e,right:$e,left:$e}}de.padding=i.extend(Ie,de.padding);var pt=this.transform,Kt=pt.padding,ir=pt.project(i.LngLat.convert(O)),Jt=pt.project(i.LngLat.convert($)),vt=ir.rotate(-pe*Math.PI/180),Pt=Jt.rotate(-pe*Math.PI/180),Wt=new i.Point(Math.max(vt.x,Pt.x),Math.max(vt.y,Pt.y)),rr=new i.Point(Math.min(vt.x,Pt.x),Math.min(vt.y,Pt.y)),dr=Wt.sub(rr),pr=(pt.width-(Kt.left+Kt.right+de.padding.left+de.padding.right))/dr.x,kr=(pt.height-(Kt.top+Kt.bottom+de.padding.top+de.padding.bottom))/dr.y;if(kr<0||pr<0){i.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.");return}var Ar=Math.min(pt.scaleZoom(pt.scale*Math.min(pr,kr)),de.maxZoom),gr=typeof de.offset.x=="number"?new i.Point(de.offset.x,de.offset.y):i.Point.convert(de.offset),Cr=(de.padding.left-de.padding.right)/2,cr=(de.padding.top-de.padding.bottom)/2,Gr=new i.Point(Cr,cr),ei=Gr.rotate(pe*Math.PI/180),yi=gr.add(ei),tn=yi.mult(pt.scale/pt.zoomScale(Ar)),Ri=pt.unproject(ir.add(Jt).div(2).sub(tn));return{center:Ri,zoom:Ar,bearing:pe}},z.prototype.fitBounds=function(O,$,pe){return this._fitInternal(this.cameraForBounds(O,$),$,pe)},z.prototype.fitScreenCoordinates=function(O,$,pe,de,Ie){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(i.Point.convert(O)),this.transform.pointLocation(i.Point.convert($)),pe,de),de,Ie)},z.prototype._fitInternal=function(O,$,pe){return O?($=i.extend(O,$),delete $.padding,$.linear?this.easeTo($,pe):this.flyTo($,pe)):this},z.prototype.jumpTo=function(O,$){this.stop();var pe=this.transform,de=!1,Ie=!1,$e=!1;return"zoom"in O&&pe.zoom!==+O.zoom&&(de=!0,pe.zoom=+O.zoom),O.center!==void 0&&(pe.center=i.LngLat.convert(O.center)),"bearing"in O&&pe.bearing!==+O.bearing&&(Ie=!0,pe.bearing=+O.bearing),"pitch"in O&&pe.pitch!==+O.pitch&&($e=!0,pe.pitch=+O.pitch),O.padding!=null&&!pe.isPaddingEqual(O.padding)&&(pe.padding=O.padding),this.fire(new i.Event("movestart",$)).fire(new i.Event("move",$)),de&&this.fire(new i.Event("zoomstart",$)).fire(new i.Event("zoom",$)).fire(new i.Event("zoomend",$)),Ie&&this.fire(new i.Event("rotatestart",$)).fire(new i.Event("rotate",$)).fire(new i.Event("rotateend",$)),$e&&this.fire(new i.Event("pitchstart",$)).fire(new i.Event("pitch",$)).fire(new i.Event("pitchend",$)),this.fire(new i.Event("moveend",$))},z.prototype.easeTo=function(O,$){var pe=this;this._stop(!1,O.easeId),O=i.extend({offset:[0,0],duration:500,easing:i.ease},O),(O.animate===!1||!O.essential&&i.browser.prefersReducedMotion)&&(O.duration=0);var de=this.transform,Ie=this.getZoom(),$e=this.getBearing(),pt=this.getPitch(),Kt=this.getPadding(),ir="zoom"in O?+O.zoom:Ie,Jt="bearing"in O?this._normalizeBearing(O.bearing,$e):$e,vt="pitch"in O?+O.pitch:pt,Pt="padding"in O?O.padding:de.padding,Wt=i.Point.convert(O.offset),rr=de.centerPoint.add(Wt),dr=de.pointLocation(rr),pr=i.LngLat.convert(O.center||dr);this._normalizeCenter(pr);var kr=de.project(dr),Ar=de.project(pr).sub(kr),gr=de.zoomScale(ir-Ie),Cr,cr;O.around&&(Cr=i.LngLat.convert(O.around),cr=de.locationPoint(Cr));var Gr={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||ir!==Ie,this._rotating=this._rotating||$e!==Jt,this._pitching=this._pitching||vt!==pt,this._padding=!de.isPaddingEqual(Pt),this._easeId=O.easeId,this._prepareEase($,O.noMoveStart,Gr),this._ease(function(ei){if(pe._zooming&&(de.zoom=i.number(Ie,ir,ei)),pe._rotating&&(de.bearing=i.number($e,Jt,ei)),pe._pitching&&(de.pitch=i.number(pt,vt,ei)),pe._padding&&(de.interpolatePadding(Kt,Pt,ei),rr=de.centerPoint.add(Wt)),Cr)de.setLocationAtPoint(Cr,cr);else{var yi=de.zoomScale(de.zoom-Ie),tn=ir>Ie?Math.min(2,gr):Math.max(.5,gr),Ri=Math.pow(tn,1-ei),ln=de.unproject(kr.add(Ar.mult(ei*Ri)).mult(yi));de.setLocationAtPoint(de.renderWorldCopies?ln.wrap():ln,rr)}pe._fireMoveEvents($)},function(ei){pe._afterEase($,ei)},O),this},z.prototype._prepareEase=function(O,$,pe){pe===void 0&&(pe={}),this._moving=!0,!$&&!pe.moving&&this.fire(new i.Event("movestart",O)),this._zooming&&!pe.zooming&&this.fire(new i.Event("zoomstart",O)),this._rotating&&!pe.rotating&&this.fire(new i.Event("rotatestart",O)),this._pitching&&!pe.pitching&&this.fire(new i.Event("pitchstart",O))},z.prototype._fireMoveEvents=function(O){this.fire(new i.Event("move",O)),this._zooming&&this.fire(new i.Event("zoom",O)),this._rotating&&this.fire(new i.Event("rotate",O)),this._pitching&&this.fire(new i.Event("pitch",O))},z.prototype._afterEase=function(O,$){if(!(this._easeId&&$&&this._easeId===$)){delete this._easeId;var pe=this._zooming,de=this._rotating,Ie=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,pe&&this.fire(new i.Event("zoomend",O)),de&&this.fire(new i.Event("rotateend",O)),Ie&&this.fire(new i.Event("pitchend",O)),this.fire(new i.Event("moveend",O))}},z.prototype.flyTo=function(O,$){var pe=this;if(!O.essential&&i.browser.prefersReducedMotion){var de=i.pick(O,["center","zoom","bearing","pitch","around"]);return this.jumpTo(de,$)}this.stop(),O=i.extend({offset:[0,0],speed:1.2,curve:1.42,easing:i.ease},O);var Ie=this.transform,$e=this.getZoom(),pt=this.getBearing(),Kt=this.getPitch(),ir=this.getPadding(),Jt="zoom"in O?i.clamp(+O.zoom,Ie.minZoom,Ie.maxZoom):$e,vt="bearing"in O?this._normalizeBearing(O.bearing,pt):pt,Pt="pitch"in O?+O.pitch:Kt,Wt="padding"in O?O.padding:Ie.padding,rr=Ie.zoomScale(Jt-$e),dr=i.Point.convert(O.offset),pr=Ie.centerPoint.add(dr),kr=Ie.pointLocation(pr),Ar=i.LngLat.convert(O.center||kr);this._normalizeCenter(Ar);var gr=Ie.project(kr),Cr=Ie.project(Ar).sub(gr),cr=O.curve,Gr=Math.max(Ie.width,Ie.height),ei=Gr/rr,yi=Cr.mag();if("minZoom"in O){var tn=i.clamp(Math.min(O.minZoom,$e,Jt),Ie.minZoom,Ie.maxZoom),Ri=Gr/Ie.zoomScale(tn-$e);cr=Math.sqrt(Ri/yi*2)}var ln=cr*cr;function Qn(fo){var as=(ei*ei-Gr*Gr+(fo?-1:1)*ln*ln*yi*yi)/(2*(fo?ei:Gr)*ln*yi);return Math.log(Math.sqrt(as*as+1)-as)}function qn(fo){return(Math.exp(fo)-Math.exp(-fo))/2}function rn(fo){return(Math.exp(fo)+Math.exp(-fo))/2}function bn(fo){return qn(fo)/rn(fo)}var mn=Qn(0),Gn=function(fo){return rn(mn)/rn(mn+cr*fo)},da=function(fo){return Gr*((rn(mn)*bn(mn+cr*fo)-qn(mn))/ln)/yi},No=(Qn(1)-mn)/cr;if(Math.abs(yi)<1e-6||!isFinite(No)){if(Math.abs(Gr-ei)<1e-6)return this.easeTo(O,$);var Do=ei<Gr?-1:1;No=Math.abs(Math.log(ei/Gr))/cr,da=function(){return 0},Gn=function(fo){return Math.exp(Do*cr*fo)}}if("duration"in O)O.duration=+O.duration;else{var ps="screenSpeed"in O?+O.screenSpeed/cr:+O.speed;O.duration=1e3*No/ps}return O.maxDuration&&O.duration>O.maxDuration&&(O.duration=0),this._zooming=!0,this._rotating=pt!==vt,this._pitching=Pt!==Kt,this._padding=!Ie.isPaddingEqual(Wt),this._prepareEase($,!1),this._ease(function(fo){var as=fo*No,tl=1/Gn(as);Ie.zoom=fo===1?Jt:$e+Ie.scaleZoom(tl),pe._rotating&&(Ie.bearing=i.number(pt,vt,fo)),pe._pitching&&(Ie.pitch=i.number(Kt,Pt,fo)),pe._padding&&(Ie.interpolatePadding(ir,Wt,fo),pr=Ie.centerPoint.add(dr));var zu=fo===1?Ar:Ie.unproject(gr.add(Cr.mult(da(as))).mult(tl));Ie.setLocationAtPoint(Ie.renderWorldCopies?zu.wrap():zu,pr),pe._fireMoveEvents($)},function(){return pe._afterEase($)},O),this},z.prototype.isEasing=function(){return!!this._easeFrameId},z.prototype.stop=function(){return this._stop()},z.prototype._stop=function(O,$){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var pe=this._onEaseEnd;delete this._onEaseEnd,pe.call(this,$)}if(!O){var de=this.handlers;de&&de.stop(!1)}return this},z.prototype._ease=function(O,$,pe){pe.animate===!1||pe.duration===0?(O(1),$()):(this._easeStart=i.browser.now(),this._easeOptions=pe,this._onEaseFrame=O,this._onEaseEnd=$,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},z.prototype._renderFrameCallback=function(){var O=Math.min((i.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(O)),O<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},z.prototype._normalizeBearing=function(O,$){O=i.wrap(O,-180,180);var pe=Math.abs(O-$);return Math.abs(O-360-$)<pe&&(O-=360),Math.abs(O+360-$)<pe&&(O+=360),O},z.prototype._normalizeCenter=function(O){var $=this.transform;if(!(!$.renderWorldCopies||$.lngRange)){var pe=O.lng-$.center.lng;O.lng+=pe>180?-360:pe<-180?360:0}},z}(i.Evented),Rn=function(z){z===void 0&&(z={}),this.options=z,i.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};Rn.prototype.getDefaultPosition=function(){return"bottom-right"},Rn.prototype.onAdd=function(z){var K=this.options&&this.options.compact;return this._map=z,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=o.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=o.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),K&&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),K===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},Rn.prototype.onRemove=function(){o.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("moveend",this._updateEditLink),this._map.off("resize",this._updateCompact),this._map=void 0,this._attribHTML=void 0},Rn.prototype._setElementTitle=function(z,K){var O=this._map._getUIString("AttributionControl."+K);z.title=O,z.setAttribute("aria-label",O)},Rn.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},Rn.prototype._updateEditLink=function(){var z=this._editLink;z||(z=this._editLink=this._container.querySelector(".mapbox-improve-map"));var K=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||i.config.ACCESS_TOKEN}];if(z){var O=K.reduce(function($,pe,de){return pe.value&&($+=pe.key+"="+pe.value+(de<K.length-1?"&":"")),$},"?");z.href=i.config.FEEDBACK_URL+"/"+O+(this._map._hash?this._map._hash.getHashString(!0):""),z.rel="noopener nofollow",this._setElementTitle(z,"MapFeedback")}},Rn.prototype._updateData=function(z){z&&(z.sourceDataType==="metadata"||z.sourceDataType==="visibility"||z.dataType==="style")&&(this._updateAttributions(),this._updateEditLink())},Rn.prototype._updateAttributions=function(){if(this._map.style){var z=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?z=z.concat(this.options.customAttribution.map(function($e){return typeof $e!="string"?"":$e})):typeof this.options.customAttribution=="string"&&z.push(this.options.customAttribution)),this._map.style.stylesheet){var K=this._map.style.stylesheet;this.styleOwner=K.owner,this.styleId=K.id}var O=this._map.style.sourceCaches;for(var $ in O){var pe=O[$];if(pe.used){var de=pe.getSource();de.attribution&&z.indexOf(de.attribution)<0&&z.push(de.attribution)}}z.sort(function($e,pt){return $e.length-pt.length}),z=z.filter(function($e,pt){for(var Kt=pt+1;Kt<z.length;Kt++)if(z[Kt].indexOf($e)>=0)return!1;return!0});var Ie=z.join(" | ");Ie!==this._attribHTML&&(this._attribHTML=Ie,z.length?(this._innerContainer.innerHTML=Ie,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},Rn.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var Dn=function(){i.bindAll(["_updateLogo"],this),i.bindAll(["_updateCompact"],this)};Dn.prototype.onAdd=function(z){this._map=z,this._container=o.create("div","mapboxgl-ctrl");var K=o.create("a","mapboxgl-ctrl-logo");return K.target="_blank",K.rel="noopener nofollow",K.href="https://www.mapbox.com/",K.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),K.setAttribute("rel","noopener nofollow"),this._container.appendChild(K),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},Dn.prototype.onRemove=function(){o.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},Dn.prototype.getDefaultPosition=function(){return"bottom-left"},Dn.prototype._updateLogo=function(z){(!z||z.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},Dn.prototype._logoRequired=function(){if(this._map.style){var z=this._map.style.sourceCaches;for(var K in z){var O=z[K].getSource();if(O.mapbox_logo)return!0}return!1}},Dn.prototype._updateCompact=function(){var z=this._container.children;if(z.length){var K=z[0];this._map.getCanvasContainer().offsetWidth<250?K.classList.add("mapboxgl-compact"):K.classList.remove("mapboxgl-compact")}};var fn=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};fn.prototype.add=function(z){var K=++this._id,O=this._queue;return O.push({callback:z,id:K,cancelled:!1}),K},fn.prototype.remove=function(z){for(var K=this._currentlyRunning,O=K?this._queue.concat(K):this._queue,$=0,pe=O;$<pe.length;$+=1){var de=pe[$];if(de.id===z){de.cancelled=!0;return}}},fn.prototype.run=function(z){z===void 0&&(z=0);var K=this._currentlyRunning=this._queue;this._queue=[];for(var O=0,$=K;O<$.length;O+=1){var pe=$[O];if(!pe.cancelled&&(pe.callback(z),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},fn.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var Ai={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","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"},ji=i.window.HTMLImageElement,Ln=i.window.HTMLElement,Un=i.window.ImageBitmap,gn=-2,ca=22,Kn=0,Za=60,wn={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:gn,maxZoom:ca,minPitch:Kn,maxPitch:Za,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},vn=function(Y){function z(O){var $=this;if(O=i.extend({},wn,O),O.minZoom!=null&&O.maxZoom!=null&&O.minZoom>O.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(O.minPitch!=null&&O.maxPitch!=null&&O.minPitch>O.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(O.minPitch!=null&&O.minPitch<Kn)throw new Error("minPitch must be greater than or equal to "+Kn);if(O.maxPitch!=null&&O.maxPitch>Za)throw new Error("maxPitch must be less than or equal to "+Za);var pe=new yo(O.minZoom,O.maxZoom,O.minPitch,O.maxPitch,O.renderWorldCopies);if(Y.call(this,pe,O),this._interactive=O.interactive,this._maxTileCacheSize=O.maxTileCacheSize,this._failIfMajorPerformanceCaveat=O.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=O.preserveDrawingBuffer,this._antialias=O.antialias,this._trackResize=O.trackResize,this._bearingSnap=O.bearingSnap,this._refreshExpiredTiles=O.refreshExpiredTiles,this._fadeDuration=O.fadeDuration,this._crossSourceCollisions=O.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=O.collectResourceTiming,this._renderTaskQueue=new fn,this._controls=[],this._mapId=i.uniqueId(),this._locale=i.extend({},Ai,O.locale),this._clickTolerance=O.clickTolerance,this._requestManager=new i.RequestManager(O.transformRequest,O.accessToken),typeof O.container=="string"){if(this._container=i.window.document.getElementById(O.container),!this._container)throw new Error("Container '"+O.container+"' not found.")}else if(O.container instanceof Ln)this._container=O.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(O.maxBounds&&this.setMaxBounds(O.maxBounds),i.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return $._update(!1)}),this.on("moveend",function(){return $._update(!1)}),this.on("zoom",function(){return $._update(!0)}),typeof i.window!="undefined"&&(i.window.addEventListener("online",this._onWindowOnline,!1),i.window.addEventListener("resize",this._onWindowResize,!1),i.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new yn(this,O);var de=typeof O.hash=="string"&&O.hash||void 0;this._hash=O.hash&&new Hl(de).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:O.center,zoom:O.zoom,bearing:O.bearing,pitch:O.pitch}),O.bounds&&(this.resize(),this.fitBounds(O.bounds,i.extend({},O.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=O.localIdeographFontFamily,O.style&&this.setStyle(O.style,{localIdeographFontFamily:O.localIdeographFontFamily}),O.attributionControl&&this.addControl(new Rn({customAttribution:O.customAttribution})),this.addControl(new Dn,O.logoPosition),this.on("style.load",function(){$.transform.unmodified&&$.jumpTo($.style.stylesheet)}),this.on("data",function(Ie){$._update(Ie.dataType==="style"),$.fire(new i.Event(Ie.dataType+"data",Ie))}),this.on("dataloading",function(Ie){$.fire(new i.Event(Ie.dataType+"dataloading",Ie))})}Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z;var K={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return z.prototype._getMapId=function(){return this._mapId},z.prototype.addControl=function($,pe){if(pe===void 0&&($.getDefaultPosition?pe=$.getDefaultPosition():pe="top-right"),!$||!$.onAdd)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var de=$.onAdd(this);this._controls.push($);var Ie=this._controlPositions[pe];return pe.indexOf("bottom")!==-1?Ie.insertBefore(de,Ie.firstChild):Ie.appendChild(de),this},z.prototype.removeControl=function($){if(!$||!$.onRemove)return this.fire(new i.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var pe=this._controls.indexOf($);return pe>-1&&this._controls.splice(pe,1),$.onRemove(this),this},z.prototype.hasControl=function($){return this._controls.indexOf($)>-1},z.prototype.resize=function($){var pe=this._containerDimensions(),de=pe[0],Ie=pe[1];this._resizeCanvas(de,Ie),this.transform.resize(de,Ie),this.painter.resize(de,Ie);var $e=!this._moving;return $e&&(this.stop(),this.fire(new i.Event("movestart",$)).fire(new i.Event("move",$))),this.fire(new i.Event("resize",$)),$e&&this.fire(new i.Event("moveend",$)),this},z.prototype.getBounds=function(){return this.transform.getBounds()},z.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},z.prototype.setMaxBounds=function($){return this.transform.setMaxBounds(i.LngLatBounds.convert($)),this._update()},z.prototype.setMinZoom=function($){if($=$==null?gn:$,$>=gn&&$<=this.transform.maxZoom)return this.transform.minZoom=$,this._update(),this.getZoom()<$&&this.setZoom($),this;throw new Error("minZoom must be between "+gn+" and the current maxZoom, inclusive")},z.prototype.getMinZoom=function(){return this.transform.minZoom},z.prototype.setMaxZoom=function($){if($=$==null?ca:$,$>=this.transform.minZoom)return this.transform.maxZoom=$,this._update(),this.getZoom()>$&&this.setZoom($),this;throw new Error("maxZoom must be greater than the current minZoom")},z.prototype.getMaxZoom=function(){return this.transform.maxZoom},z.prototype.setMinPitch=function($){if($=$==null?Kn:$,$<Kn)throw new Error("minPitch must be greater than or equal to "+Kn);if($>=Kn&&$<=this.transform.maxPitch)return this.transform.minPitch=$,this._update(),this.getPitch()<$&&this.setPitch($),this;throw new Error("minPitch must be between "+Kn+" and the current maxPitch, inclusive")},z.prototype.getMinPitch=function(){return this.transform.minPitch},z.prototype.setMaxPitch=function($){if($=$==null?Za:$,$>Za)throw new Error("maxPitch must be less than or equal to "+Za);if($>=this.transform.minPitch)return this.transform.maxPitch=$,this._update(),this.getPitch()>$&&this.setPitch($),this;throw new Error("maxPitch must be greater than the current minPitch")},z.prototype.getMaxPitch=function(){return this.transform.maxPitch},z.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},z.prototype.setRenderWorldCopies=function($){return this.transform.renderWorldCopies=$,this._update()},z.prototype.project=function($){return this.transform.locationPoint(i.LngLat.convert($))},z.prototype.unproject=function($){return this.transform.pointLocation(i.Point.convert($))},z.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},z.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},z.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},z.prototype._createDelegatedListener=function($,pe,de){var Ie=this,$e;if($==="mouseenter"||$==="mouseover"){var pt=!1,Kt=function(rr){var dr=Ie.getLayer(pe)?Ie.queryRenderedFeatures(rr.point,{layers:[pe]}):[];dr.length?pt||(pt=!0,de.call(Ie,new oe($,Ie,rr.originalEvent,{features:dr}))):pt=!1},ir=function(){pt=!1};return{layer:pe,listener:de,delegates:{mousemove:Kt,mouseout:ir}}}else if($==="mouseleave"||$==="mouseout"){var Jt=!1,vt=function(rr){var dr=Ie.getLayer(pe)?Ie.queryRenderedFeatures(rr.point,{layers:[pe]}):[];dr.length?Jt=!0:Jt&&(Jt=!1,de.call(Ie,new oe($,Ie,rr.originalEvent)))},Pt=function(rr){Jt&&(Jt=!1,de.call(Ie,new oe($,Ie,rr.originalEvent)))};return{layer:pe,listener:de,delegates:{mousemove:vt,mouseout:Pt}}}else{var Wt=function(rr){var dr=Ie.getLayer(pe)?Ie.queryRenderedFeatures(rr.point,{layers:[pe]}):[];dr.length&&(rr.features=dr,de.call(Ie,rr),delete rr.features)};return{layer:pe,listener:de,delegates:($e={},$e[$]=Wt,$e)}}},z.prototype.on=function($,pe,de){if(de===void 0)return Y.prototype.on.call(this,$,pe);var Ie=this._createDelegatedListener($,pe,de);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[$]=this._delegatedListeners[$]||[],this._delegatedListeners[$].push(Ie);for(var $e in Ie.delegates)this.on($e,Ie.delegates[$e]);return this},z.prototype.once=function($,pe,de){if(de===void 0)return Y.prototype.once.call(this,$,pe);var Ie=this._createDelegatedListener($,pe,de);for(var $e in Ie.delegates)this.once($e,Ie.delegates[$e]);return this},z.prototype.off=function($,pe,de){var Ie=this;if(de===void 0)return Y.prototype.off.call(this,$,pe);var $e=function(pt){for(var Kt=pt[$],ir=0;ir<Kt.length;ir++){var Jt=Kt[ir];if(Jt.layer===pe&&Jt.listener===de){for(var vt in Jt.delegates)Ie.off(vt,Jt.delegates[vt]);return Kt.splice(ir,1),Ie}}};return this._delegatedListeners&&this._delegatedListeners[$]&&$e(this._delegatedListeners),this},z.prototype.queryRenderedFeatures=function($,pe){if(!this.style)return[];pe===void 0&&$!==void 0&&!($ instanceof i.Point)&&!Array.isArray($)&&(pe=$,$=void 0),pe=pe||{},$=$||[[0,0],[this.transform.width,this.transform.height]];var de;if($ instanceof i.Point||typeof $[0]=="number")de=[i.Point.convert($)];else{var Ie=i.Point.convert($[0]),$e=i.Point.convert($[1]);de=[Ie,new i.Point($e.x,Ie.y),$e,new i.Point(Ie.x,$e.y),Ie]}return this.style.queryRenderedFeatures(de,pe,this.transform)},z.prototype.querySourceFeatures=function($,pe){return this.style.querySourceFeatures($,pe)},z.prototype.setStyle=function($,pe){return pe=i.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},pe),pe.diff!==!1&&pe.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&$?(this._diffStyle($,pe),this):(this._localIdeographFontFamily=pe.localIdeographFontFamily,this._updateStyle($,pe))},z.prototype._getUIString=function($){var pe=this._locale[$];if(pe==null)throw new Error("Missing UI string '"+$+"'");return pe},z.prototype._updateStyle=function($,pe){if(this.style&&(this.style.setEventedParent(null),this.style._remove()),$)this.style=new mu(this,pe||{});else return delete this.style,this;return this.style.setEventedParent(this,{style:this.style}),typeof $=="string"?this.style.loadURL($):this.style.loadJSON($),this},z.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new mu(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},z.prototype._diffStyle=function($,pe){var de=this;if(typeof $=="string"){var Ie=this._requestManager.normalizeStyleURL($),$e=this._requestManager.transformRequest(Ie,i.ResourceType.Style);i.getJSON($e,function(pt,Kt){pt?de.fire(new i.ErrorEvent(pt)):Kt&&de._updateDiff(Kt,pe)})}else typeof $=="object"&&this._updateDiff($,pe)},z.prototype._updateDiff=function($,pe){try{this.style.setState($)&&this._update(!0)}catch(de){i.warnOnce("Unable to perform style diff: "+(de.message||de.error||de)+". Rebuilding the style from scratch."),this._updateStyle($,pe)}},z.prototype.getStyle=function(){if(this.style)return this.style.serialize()},z.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():i.warnOnce("There is no style added to the map.")},z.prototype.addSource=function($,pe){return this._lazyInitEmptyStyle(),this.style.addSource($,pe),this._update(!0)},z.prototype.isSourceLoaded=function($){var pe=this.style&&this.style.sourceCaches[$];if(pe===void 0){this.fire(new i.ErrorEvent(new Error("There is no source with ID '"+$+"'")));return}return pe.loaded()},z.prototype.areTilesLoaded=function(){var $=this.style&&this.style.sourceCaches;for(var pe in $){var de=$[pe],Ie=de._tiles;for(var $e in Ie){var pt=Ie[$e];if(!(pt.state==="loaded"||pt.state==="errored"))return!1}}return!0},z.prototype.addSourceType=function($,pe,de){return this._lazyInitEmptyStyle(),this.style.addSourceType($,pe,de)},z.prototype.removeSource=function($){return this.style.removeSource($),this._update(!0)},z.prototype.getSource=function($){return this.style.getSource($)},z.prototype.addImage=function($,pe,de){de===void 0&&(de={});var Ie=de.pixelRatio;Ie===void 0&&(Ie=1);var $e=de.sdf;$e===void 0&&($e=!1);var pt=de.stretchX,Kt=de.stretchY,ir=de.content;this._lazyInitEmptyStyle();var Jt=0;if(pe instanceof ji||Un&&pe instanceof Un){var vt=i.browser.getImageData(pe),Pt=vt.width,Wt=vt.height,rr=vt.data;this.style.addImage($,{data:new i.RGBAImage({width:Pt,height:Wt},rr),pixelRatio:Ie,stretchX:pt,stretchY:Kt,content:ir,sdf:$e,version:Jt})}else{if(pe.width===void 0||pe.height===void 0)return this.fire(new i.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));var dr=pe.width,pr=pe.height,kr=pe.data,Ar=pe;this.style.addImage($,{data:new i.RGBAImage({width:dr,height:pr},new Uint8Array(kr)),pixelRatio:Ie,stretchX:pt,stretchY:Kt,content:ir,sdf:$e,version:Jt,userImage:Ar}),Ar.onAdd&&Ar.onAdd(this,$)}},z.prototype.updateImage=function($,pe){var de=this.style.getImage($);if(!de)return this.fire(new i.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));var Ie=pe instanceof ji||Un&&pe instanceof Un?i.browser.getImageData(pe):pe,$e=Ie.width,pt=Ie.height,Kt=Ie.data;if($e===void 0||pt===void 0)return this.fire(new i.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if($e!==de.data.width||pt!==de.data.height)return this.fire(new i.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image")));var ir=!(pe instanceof ji||Un&&pe instanceof Un);de.data.replace(Kt,ir),this.style.updateImage($,de)},z.prototype.hasImage=function($){return $?!!this.style.getImage($):(this.fire(new i.ErrorEvent(new Error("Missing required image id"))),!1)},z.prototype.removeImage=function($){this.style.removeImage($)},z.prototype.loadImage=function($,pe){i.getImage(this._requestManager.transformRequest($,i.ResourceType.Image),pe)},z.prototype.listImages=function(){return this.style.listImages()},z.prototype.addLayer=function($,pe){return this._lazyInitEmptyStyle(),this.style.addLayer($,pe),this._update(!0)},z.prototype.moveLayer=function($,pe){return this.style.moveLayer($,pe),this._update(!0)},z.prototype.removeLayer=function($){return this.style.removeLayer($),this._update(!0)},z.prototype.getLayer=function($){return this.style.getLayer($)},z.prototype.setLayerZoomRange=function($,pe,de){return this.style.setLayerZoomRange($,pe,de),this._update(!0)},z.prototype.setFilter=function($,pe,de){return de===void 0&&(de={}),this.style.setFilter($,pe,de),this._update(!0)},z.prototype.getFilter=function($){return this.style.getFilter($)},z.prototype.setPaintProperty=function($,pe,de,Ie){return Ie===void 0&&(Ie={}),this.style.setPaintProperty($,pe,de,Ie),this._update(!0)},z.prototype.getPaintProperty=function($,pe){return this.style.getPaintProperty($,pe)},z.prototype.setLayoutProperty=function($,pe,de,Ie){return Ie===void 0&&(Ie={}),this.style.setLayoutProperty($,pe,de,Ie),this._update(!0)},z.prototype.getLayoutProperty=function($,pe){return this.style.getLayoutProperty($,pe)},z.prototype.setLight=function($,pe){return pe===void 0&&(pe={}),this._lazyInitEmptyStyle(),this.style.setLight($,pe),this._update(!0)},z.prototype.getLight=function(){return this.style.getLight()},z.prototype.setFeatureState=function($,pe){return this.style.setFeatureState($,pe),this._update()},z.prototype.removeFeatureState=function($,pe){return this.style.removeFeatureState($,pe),this._update()},z.prototype.getFeatureState=function($){return this.style.getFeatureState($)},z.prototype.getContainer=function(){return this._container},z.prototype.getCanvasContainer=function(){return this._canvasContainer},z.prototype.getCanvas=function(){return this._canvas},z.prototype._containerDimensions=function(){var $=0,pe=0;return this._container&&($=this._container.clientWidth||400,pe=this._container.clientHeight||300),[$,pe]},z.prototype._detectMissingCSS=function(){var $=i.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color");$!=="rgb(250, 128, 114)"&&i.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/.")},z.prototype._setupContainer=function(){var $=this._container;$.classList.add("mapboxgl-map");var pe=this._missingCSSCanary=o.create("div","mapboxgl-canary",$);pe.style.visibility="hidden",this._detectMissingCSS();var de=this._canvasContainer=o.create("div","mapboxgl-canvas-container",$);this._interactive&&de.classList.add("mapboxgl-interactive"),this._canvas=o.create("canvas","mapboxgl-canvas",de),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"),this._canvas.setAttribute("role","region");var Ie=this._containerDimensions();this._resizeCanvas(Ie[0],Ie[1]);var $e=this._controlContainer=o.create("div","mapboxgl-control-container",$),pt=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(Kt){pt[Kt]=o.create("div","mapboxgl-ctrl-"+Kt,$e)}),this._container.addEventListener("scroll",this._onMapScroll,!1)},z.prototype._resizeCanvas=function($,pe){var de=i.browser.devicePixelRatio||1;this._canvas.width=de*$,this._canvas.height=de*pe,this._canvas.style.width=$+"px",this._canvas.style.height=pe+"px"},z.prototype._setupPainter=function(){var $=i.extend({},a.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),pe=this._canvas.getContext("webgl",$)||this._canvas.getContext("experimental-webgl",$);if(!pe){this.fire(new i.ErrorEvent(new Error("Failed to initialize WebGL")));return}this.painter=new co(pe,this.transform),i.webpSupported.testSupport(pe)},z.prototype._contextLost=function($){$.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new i.Event("webglcontextlost",{originalEvent:$}))},z.prototype._contextRestored=function($){this._setupPainter(),this.resize(),this._update(),this.fire(new i.Event("webglcontextrestored",{originalEvent:$}))},z.prototype._onMapScroll=function($){if($.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},z.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},z.prototype._update=function($){return this.style?(this._styleDirty=this._styleDirty||$,this._sourcesDirty=!0,this.triggerRepaint(),this):this},z.prototype._requestRenderFrame=function($){return this._update(),this._renderTaskQueue.add($)},z.prototype._cancelRenderFrame=function($){this._renderTaskQueue.remove($)},z.prototype._render=function($){var pe=this,de,Ie=0,$e=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(de=$e.createQueryEXT(),$e.beginQueryEXT($e.TIME_ELAPSED_EXT,de),Ie=i.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run($),!this._removed){var pt=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var Kt=this.transform.zoom,ir=i.browser.now();this.style.zoomHistory.update(Kt,ir);var Jt=new i.EvaluationParameters(Kt,{now:ir,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),vt=Jt.crossFadingFactor();(vt!==1||vt!==this._crossFadingFactor)&&(pt=!0,this._crossFadingFactor=vt),this.style.update(Jt)}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 i.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new i.Event("load"))),this.style&&(this.style.hasTransitions()||pt)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){var Pt=i.browser.now()-Ie;$e.endQueryEXT($e.TIME_ELAPSED_EXT,de),setTimeout(function(){var dr=$e.getQueryObjectEXT(de,$e.QUERY_RESULT_EXT)/1e6;$e.deleteQueryEXT(de),pe.fire(new i.Event("gpu-timing-frame",{cpuTime:Pt,gpuTime:dr}))},50)}if(this.listens("gpu-timing-layer")){var Wt=this.painter.collectGpuTimers();setTimeout(function(){var dr=pe.painter.queryGpuTimers(Wt);pe.fire(new i.Event("gpu-timing-layer",{layerTimes:dr}))},50)}var rr=this._sourcesDirty||this._styleDirty||this._placementDirty;return rr||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new i.Event("idle")),this._loaded&&!this._fullyLoaded&&!rr&&(this._fullyLoaded=!0),this}},z.prototype.remove=function(){this._hash&&this._hash.remove();for(var $=0,pe=this._controls;$<pe.length;$+=1){var de=pe[$];de.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),typeof i.window!="undefined"&&(i.window.removeEventListener("resize",this._onWindowResize,!1),i.window.removeEventListener("orientationchange",this._onWindowResize,!1),i.window.removeEventListener("online",this._onWindowOnline,!1));var Ie=this.painter.context.gl.getExtension("WEBGL_lose_context");Ie&&Ie.loseContext&&Ie.loseContext(),Aa(this._canvasContainer),Aa(this._controlContainer),Aa(this._missingCSSCanary),this._container.classList.remove("mapboxgl-map"),this._removed=!0,this.fire(new i.Event("remove"))},z.prototype.triggerRepaint=function(){var $=this;this.style&&!this._frame&&(this._frame=i.browser.frame(function(pe){$._frame=null,$._render(pe)}))},z.prototype._onWindowOnline=function(){this._update()},z.prototype._onWindowResize=function($){this._trackResize&&this.resize({originalEvent:$})._update()},K.showTileBoundaries.get=function(){return!!this._showTileBoundaries},K.showTileBoundaries.set=function(O){this._showTileBoundaries!==O&&(this._showTileBoundaries=O,this._update())},K.showPadding.get=function(){return!!this._showPadding},K.showPadding.set=function(O){this._showPadding!==O&&(this._showPadding=O,this._update())},K.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},K.showCollisionBoxes.set=function(O){this._showCollisionBoxes!==O&&(this._showCollisionBoxes=O,O?this.style._generateCollisionBoxes():this._update())},K.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},K.showOverdrawInspector.set=function(O){this._showOverdrawInspector!==O&&(this._showOverdrawInspector=O,this._update())},K.repaint.get=function(){return!!this._repaint},K.repaint.set=function(O){this._repaint!==O&&(this._repaint=O,this.triggerRepaint())},K.vertices.get=function(){return!!this._vertices},K.vertices.set=function(O){this._vertices=O,this._update()},z.prototype._setCacheLimits=function($,pe){i.setCacheLimits($,pe)},K.version.get=function(){return i.version},Object.defineProperties(z.prototype,K),z}(to);function Aa(Y){Y.parentNode&&Y.parentNode.removeChild(Y)}var aa={showCompass:!0,showZoom:!0,visualizePitch:!1},Xn=function(z){var K=this;this.options=i.extend({},aa,z),this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(O){return O.preventDefault()}),this.options.showZoom&&(i.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",function(O){return K._map.zoomIn({},{originalEvent:O})}),o.create("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden",!0),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",function(O){return K._map.zoomOut({},{originalEvent:O})}),o.create("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden",!0)),this.options.showCompass&&(i.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",function(O){K.options.visualizePitch?K._map.resetNorthPitch({},{originalEvent:O}):K._map.resetNorth({},{originalEvent:O})}),this._compassIcon=o.create("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden",!0))};Xn.prototype._updateZoomButtons=function(){var z=this._map.getZoom(),K=z===this._map.getMaxZoom(),O=z===this._map.getMinZoom();this._zoomInButton.disabled=K,this._zoomOutButton.disabled=O,this._zoomInButton.setAttribute("aria-disabled",K.toString()),this._zoomOutButton.setAttribute("aria-disabled",O.toString())},Xn.prototype._rotateCompassArrow=function(){var z=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=z},Xn.prototype.onAdd=function(z){return this._map=z,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 Vn(this._map,this._compass,this.options.visualizePitch)),this._container},Xn.prototype.onRemove=function(){o.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},Xn.prototype._createButton=function(z,K){var O=o.create("button",z,this._container);return O.type="button",O.addEventListener("click",K),O},Xn.prototype._setButtonTitle=function(z,K){var O=this._map._getUIString("NavigationControl."+K);z.title=O,z.setAttribute("aria-label",O)};var Vn=function(z,K,O){O===void 0&&(O=!1),this._clickTolerance=10,this.element=K,this.mouseRotate=new un({clickTolerance:z.dragRotate._mouseRotate._clickTolerance}),this.map=z,O&&(this.mousePitch=new dn({clickTolerance:z.dragRotate._mousePitch._clickTolerance})),i.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),o.addEventListener(K,"mousedown",this.mousedown),o.addEventListener(K,"touchstart",this.touchstart,{passive:!1}),o.addEventListener(K,"touchmove",this.touchmove),o.addEventListener(K,"touchend",this.touchend),o.addEventListener(K,"touchcancel",this.reset)};Vn.prototype.down=function(z,K){this.mouseRotate.mousedown(z,K),this.mousePitch&&this.mousePitch.mousedown(z,K),o.disableDrag()},Vn.prototype.move=function(z,K){var O=this.map,$=this.mouseRotate.mousemoveWindow(z,K);if($&&$.bearingDelta&&O.setBearing(O.getBearing()+$.bearingDelta),this.mousePitch){var pe=this.mousePitch.mousemoveWindow(z,K);pe&&pe.pitchDelta&&O.setPitch(O.getPitch()+pe.pitchDelta)}},Vn.prototype.off=function(){var z=this.element;o.removeEventListener(z,"mousedown",this.mousedown),o.removeEventListener(z,"touchstart",this.touchstart,{passive:!1}),o.removeEventListener(z,"touchmove",this.touchmove),o.removeEventListener(z,"touchend",this.touchend),o.removeEventListener(z,"touchcancel",this.reset),this.offTemp()},Vn.prototype.offTemp=function(){o.enableDrag(),o.removeEventListener(i.window,"mousemove",this.mousemove),o.removeEventListener(i.window,"mouseup",this.mouseup)},Vn.prototype.mousedown=function(z){this.down(i.extend({},z,{ctrlKey:!0,preventDefault:function(){return z.preventDefault()}}),o.mousePos(this.element,z)),o.addEventListener(i.window,"mousemove",this.mousemove),o.addEventListener(i.window,"mouseup",this.mouseup)},Vn.prototype.mousemove=function(z){this.move(z,o.mousePos(this.element,z))},Vn.prototype.mouseup=function(z){this.mouseRotate.mouseupWindow(z),this.mousePitch&&this.mousePitch.mouseupWindow(z),this.offTemp()},Vn.prototype.touchstart=function(z){z.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=o.touchPos(this.element,z.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return z.preventDefault()}},this._startPos))},Vn.prototype.touchmove=function(z){z.targetTouches.length!==1?this.reset():(this._lastPos=o.touchPos(this.element,z.targetTouches)[0],this.move({preventDefault:function(){return z.preventDefault()}},this._lastPos))},Vn.prototype.touchend=function(z){z.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},Vn.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};function ma(Y,z,K){if(Y=new i.LngLat(Y.lng,Y.lat),z){var O=new i.LngLat(Y.lng-360,Y.lat),$=new i.LngLat(Y.lng+360,Y.lat),pe=K.locationPoint(Y).distSqr(z);K.locationPoint(O).distSqr(z)<pe?Y=O:K.locationPoint($).distSqr(z)<pe&&(Y=$)}for(;Math.abs(Y.lng-K.center.lng)>180;){var de=K.locationPoint(Y);if(de.x>=0&&de.y>=0&&de.x<=K.width&&de.y<=K.height)break;Y.lng>K.center.lng?Y.lng-=360:Y.lng+=360}return Y}var ro={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Ao(Y,z,K){var O=Y.classList;for(var $ in ro)O.remove("mapboxgl-"+K+"-anchor-"+$);O.add("mapboxgl-"+K+"-anchor-"+z)}var Jn=function(Y){function z(K,O){if(Y.call(this),(K instanceof i.window.HTMLElement||O)&&(K=i.extend({element:K},O)),i.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=K&&K.anchor||"center",this._color=K&&K.color||"#3FB1CE",this._scale=K&&K.scale||1,this._draggable=K&&K.draggable||!1,this._clickTolerance=K&&K.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=K&&K.rotation||0,this._rotationAlignment=K&&K.rotationAlignment||"auto",this._pitchAlignment=K&&K.pitchAlignment&&K.pitchAlignment!=="auto"?K.pitchAlignment:this._rotationAlignment,!K||!K.element){this._defaultMarker=!0,this._element=o.create("div"),this._element.setAttribute("aria-label","Map marker");var $=o.createNS("http://www.w3.org/2000/svg","svg"),pe=41,de=27;$.setAttributeNS(null,"display","block"),$.setAttributeNS(null,"height",pe+"px"),$.setAttributeNS(null,"width",de+"px"),$.setAttributeNS(null,"viewBox","0 0 "+de+" "+pe);var Ie=o.createNS("http://www.w3.org/2000/svg","g");Ie.setAttributeNS(null,"stroke","none"),Ie.setAttributeNS(null,"stroke-width","1"),Ie.setAttributeNS(null,"fill","none"),Ie.setAttributeNS(null,"fill-rule","evenodd");var $e=o.createNS("http://www.w3.org/2000/svg","g");$e.setAttributeNS(null,"fill-rule","nonzero");var pt=o.createNS("http://www.w3.org/2000/svg","g");pt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),pt.setAttributeNS(null,"fill","#000000");for(var Kt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],ir=0,Jt=Kt;ir<Jt.length;ir+=1){var vt=Jt[ir],Pt=o.createNS("http://www.w3.org/2000/svg","ellipse");Pt.setAttributeNS(null,"opacity","0.04"),Pt.setAttributeNS(null,"cx","10.5"),Pt.setAttributeNS(null,"cy","5.80029008"),Pt.setAttributeNS(null,"rx",vt.rx),Pt.setAttributeNS(null,"ry",vt.ry),pt.appendChild(Pt)}var Wt=o.createNS("http://www.w3.org/2000/svg","g");Wt.setAttributeNS(null,"fill",this._color);var rr=o.createNS("http://www.w3.org/2000/svg","path");rr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Wt.appendChild(rr);var dr=o.createNS("http://www.w3.org/2000/svg","g");dr.setAttributeNS(null,"opacity","0.25"),dr.setAttributeNS(null,"fill","#000000");var pr=o.createNS("http://www.w3.org/2000/svg","path");pr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),dr.appendChild(pr);var kr=o.createNS("http://www.w3.org/2000/svg","g");kr.setAttributeNS(null,"transform","translate(6.0, 7.0)"),kr.setAttributeNS(null,"fill","#FFFFFF");var Ar=o.createNS("http://www.w3.org/2000/svg","g");Ar.setAttributeNS(null,"transform","translate(8.0, 8.0)");var gr=o.createNS("http://www.w3.org/2000/svg","circle");gr.setAttributeNS(null,"fill","#000000"),gr.setAttributeNS(null,"opacity","0.25"),gr.setAttributeNS(null,"cx","5.5"),gr.setAttributeNS(null,"cy","5.5"),gr.setAttributeNS(null,"r","5.4999962");var Cr=o.createNS("http://www.w3.org/2000/svg","circle");Cr.setAttributeNS(null,"fill","#FFFFFF"),Cr.setAttributeNS(null,"cx","5.5"),Cr.setAttributeNS(null,"cy","5.5"),Cr.setAttributeNS(null,"r","5.4999962"),Ar.appendChild(gr),Ar.appendChild(Cr),$e.appendChild(pt),$e.appendChild(Wt),$e.appendChild(dr),$e.appendChild(kr),$e.appendChild(Ar),$.appendChild($e),$.setAttributeNS(null,"height",pe*this._scale+"px"),$.setAttributeNS(null,"width",de*this._scale+"px"),this._element.appendChild($),this._offset=i.Point.convert(K&&K.offset||[0,-14])}else this._element=K.element,this._offset=i.Point.convert(K&&K.offset||[0,0]);this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",function(cr){cr.preventDefault()}),this._element.addEventListener("mousedown",function(cr){cr.preventDefault()}),Ao(this._element,this._anchor,"marker"),this._popup=null}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.addTo=function(O){return this.remove(),this._map=O,O.getCanvasContainer().appendChild(this._element),O.on("move",this._update),O.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this},z.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),o.remove(this._element),this._popup&&this._popup.remove(),this},z.prototype.getLngLat=function(){return this._lngLat},z.prototype.setLngLat=function(O){return this._lngLat=i.LngLat.convert(O),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},z.prototype.getElement=function(){return this._element},z.prototype.setPopup=function(O){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),O){if(!("offset"in O.options)){var $=38.1,pe=13.5,de=Math.sqrt(Math.pow(pe,2)/2);O.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-$],"bottom-left":[de,($-pe+de)*-1],"bottom-right":[-de,($-pe+de)*-1],left:[pe,($-pe)*-1],right:[-pe,($-pe)*-1]}:this._offset}this._popup=O,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this},z.prototype._onKeyPress=function(O){var $=O.code,pe=O.charCode||O.keyCode;($==="Space"||$==="Enter"||pe===32||pe===13)&&this.togglePopup()},z.prototype._onMapClick=function(O){var $=O.originalEvent.target,pe=this._element;this._popup&&($===pe||pe.contains($))&&this.togglePopup()},z.prototype.getPopup=function(){return this._popup},z.prototype.togglePopup=function(){var O=this._popup;if(O)O.isOpen()?O.remove():O.addTo(this._map);else return this;return this},z.prototype._update=function(O){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=ma(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var $="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?$="rotateZ("+this._rotation+"deg)":this._rotationAlignment==="map"&&($="rotateZ("+(this._rotation-this._map.getBearing())+"deg)");var pe="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?pe="rotateX(0deg)":this._pitchAlignment==="map"&&(pe="rotateX("+this._map.getPitch()+"deg)"),(!O||O.type==="moveend")&&(this._pos=this._pos.round()),o.setTransform(this._element,ro[this._anchor]+" translate("+this._pos.x+"px, "+this._pos.y+"px) "+pe+" "+$)}},z.prototype.getOffset=function(){return this._offset},z.prototype.setOffset=function(O){return this._offset=i.Point.convert(O),this._update(),this},z.prototype._onMove=function(O){if(!this._isDragging){var $=this._clickTolerance||this._map._clickTolerance;this._isDragging=O.point.dist(this._pointerdownPos)>=$}this._isDragging&&(this._pos=O.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new i.Event("dragstart"))),this.fire(new i.Event("drag")))},z.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new i.Event("dragend")),this._state="inactive"},z.prototype._addDragHandler=function(O){this._element.contains(O.originalEvent.target)&&(O.preventDefault(),this._positionDelta=O.point.sub(this._pos).add(this._offset),this._pointerdownPos=O.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},z.prototype.setDraggable=function(O){return this._draggable=!!O,this._map&&(O?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},z.prototype.isDraggable=function(){return this._draggable},z.prototype.setRotation=function(O){return this._rotation=O||0,this._update(),this},z.prototype.getRotation=function(){return this._rotation},z.prototype.setRotationAlignment=function(O){return this._rotationAlignment=O||"auto",this._update(),this},z.prototype.getRotationAlignment=function(){return this._rotationAlignment},z.prototype.setPitchAlignment=function(O){return this._pitchAlignment=O&&O!=="auto"?O:this._rotationAlignment,this._update(),this},z.prototype.getPitchAlignment=function(){return this._pitchAlignment},z}(i.Evented),Oa={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},_o;function Po(Y){_o!==void 0?Y(_o):i.window.navigator.permissions!==void 0?i.window.navigator.permissions.query({name:"geolocation"}).then(function(z){_o=z.state!=="denied",Y(_o)}):(_o=!!i.window.navigator.geolocation,Y(_o))}var Jo=0,Yl=!1,$c=function(Y){function z(K){Y.call(this),this.options=i.extend({},Oa,K),i.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.onAdd=function(O){return this._map=O,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),Po(this._setupUI),this._container},z.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),o.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,Jo=0,Yl=!1},z.prototype._isOutOfMapMaxBounds=function(O){var $=this._map.getMaxBounds(),pe=O.coords;return $&&(pe.longitude<$.getWest()||pe.longitude>$.getEast()||pe.latitude<$.getSouth()||pe.latitude>$.getNorth())},z.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},z.prototype._onSuccess=function(O){if(this._map){if(this._isOutOfMapMaxBounds(O)){this._setErrorState(),this.fire(new i.Event("outofmaxbounds",O)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=O,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(O),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(O),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("geolocate",O)),this._finish()}},z.prototype._updateCamera=function(O){var $=new i.LngLat(O.coords.longitude,O.coords.latitude),pe=O.coords.accuracy,de=this._map.getBearing(),Ie=i.extend({bearing:de},this.options.fitBoundsOptions);this._map.fitBounds($.toBounds(pe),Ie,{geolocateSource:!0})},z.prototype._updateMarker=function(O){if(O){var $=new i.LngLat(O.coords.longitude,O.coords.latitude);this._accuracyCircleMarker.setLngLat($).addTo(this._map),this._userLocationDotMarker.setLngLat($).addTo(this._map),this._accuracy=O.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},z.prototype._updateCircleRadius=function(){var O=this._map._container.clientHeight/2,$=this._map.unproject([0,O]),pe=this._map.unproject([1,O]),de=$.distanceTo(pe),Ie=Math.ceil(2*this._accuracy/de);this._circleElement.style.width=Ie+"px",this._circleElement.style.height=Ie+"px"},z.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},z.prototype._onError=function(O){if(this._map){if(this.options.trackUserLocation)if(O.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var $=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=$,this._geolocateButton.setAttribute("aria-label",$),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(O.code===3&&Yl)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new i.Event("error",O)),this._finish()}},z.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},z.prototype._setupUI=function(O){var $=this;if(this._container.addEventListener("contextmenu",function(Ie){return Ie.preventDefault()}),this._geolocateButton=o.create("button","mapboxgl-ctrl-geolocate",this._container),o.create("span","mapboxgl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden",!0),this._geolocateButton.type="button",O===!1){i.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var pe=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=pe,this._geolocateButton.setAttribute("aria-label",pe)}else{var de=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=de,this._geolocateButton.setAttribute("aria-label",de)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=o.create("div","mapboxgl-user-location-dot"),this._userLocationDotMarker=new Jn(this._dotElement),this._circleElement=o.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new Jn({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(Ie){var $e=Ie.originalEvent&&Ie.originalEvent.type==="resize";!Ie.geolocateSource&&$._watchState==="ACTIVE_LOCK"&&!$e&&($._watchState="BACKGROUND",$._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),$._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),$.fire(new i.Event("trackuserlocationend")))})},z.prototype.trigger=function(){if(!this._setup)return i.warnOnce("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new i.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":Jo--,Yl=!1,this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this.fire(new i.Event("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new i.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),Jo++;var O;Jo>1?(O={maximumAge:6e5,timeout:0},Yl=!0):(O=this.options.positionOptions,Yl=!1),this._geolocationWatchID=i.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,O)}}else i.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},z.prototype._clearWatch=function(){i.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)},z}(i.Evented),xs={maxWidth:100,unit:"metric"},Qc=function(z){this.options=i.extend({},xs,z),i.bindAll(["_onMove","setUnit"],this)};Qc.prototype.getDefaultPosition=function(){return"bottom-left"},Qc.prototype._onMove=function(){El(this._map,this._container,this.options)},Qc.prototype.onAdd=function(z){return this._map=z,this._container=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",z.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},Qc.prototype.onRemove=function(){o.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},Qc.prototype.setUnit=function(z){this.options.unit=z,El(this._map,this._container,this.options)};function El(Y,z,K){var O=K&&K.maxWidth||100,$=Y._container.clientHeight/2,pe=Y.unproject([0,$]),de=Y.unproject([O,$]),Ie=pe.distanceTo(de);if(K&&K.unit==="imperial"){var $e=3.2808*Ie;if($e>5280){var pt=$e/5280;bc(z,O,pt,Y._getUIString("ScaleControl.Miles"))}else bc(z,O,$e,Y._getUIString("ScaleControl.Feet"))}else if(K&&K.unit==="nautical"){var Kt=Ie/1852;bc(z,O,Kt,Y._getUIString("ScaleControl.NauticalMiles"))}else Ie>=1e3?bc(z,O,Ie/1e3,Y._getUIString("ScaleControl.Kilometers")):bc(z,O,Ie,Y._getUIString("ScaleControl.Meters"))}function bc(Y,z,K,O){var $=yf(K),pe=$/K;Y.style.width=z*pe+"px",Y.innerHTML=$+"&nbsp;"+O}function wc(Y){var z=Math.pow(10,Math.ceil(-Math.log(Y)/Math.LN10));return Math.round(Y*z)/z}function yf(Y){var z=Math.pow(10,(""+Math.floor(Y)).length-1),K=Y/z;return K=K>=10?10:K>=5?5:K>=3?3:K>=2?2:K>=1?1:wc(K),z*K}var Gl=function(z){this._fullscreen=!1,z&&z.container&&(z.container instanceof i.window.HTMLElement?this._container=z.container:i.warnOnce("Full screen control 'container' must be a DOM element.")),i.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in i.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in i.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in i.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in i.window.document&&(this._fullscreenchange="MSFullscreenChange")};Gl.prototype.onAdd=function(z){return this._map=z,this._container||(this._container=this._map.getContainer()),this._controlContainer=o.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._checkFullscreenSupport()?this._setupUI():(this._controlContainer.style.display="none",i.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Gl.prototype.onRemove=function(){o.remove(this._controlContainer),this._map=null,i.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Gl.prototype._checkFullscreenSupport=function(){return!!(i.window.document.fullscreenEnabled||i.window.document.mozFullScreenEnabled||i.window.document.msFullscreenEnabled||i.window.document.webkitFullscreenEnabled)},Gl.prototype._setupUI=function(){var z=this._fullscreenButton=o.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);o.create("span","mapboxgl-ctrl-icon",z).setAttribute("aria-hidden",!0),z.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),i.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Gl.prototype._updateTitle=function(){var z=this._getTitle();this._fullscreenButton.setAttribute("aria-label",z),this._fullscreenButton.title=z},Gl.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Gl.prototype._isFullscreen=function(){return this._fullscreen},Gl.prototype._changeIcon=function(){var z=i.window.document.fullscreenElement||i.window.document.mozFullScreenElement||i.window.document.webkitFullscreenElement||i.window.document.msFullscreenElement;z===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Gl.prototype._onClickFullscreen=function(){this._isFullscreen()?i.window.document.exitFullscreen?i.window.document.exitFullscreen():i.window.document.mozCancelFullScreen?i.window.document.mozCancelFullScreen():i.window.document.msExitFullscreen?i.window.document.msExitFullscreen():i.window.document.webkitCancelFullScreen&&i.window.document.webkitCancelFullScreen():this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen&&this._container.webkitRequestFullscreen()};var Fc={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},ef=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),ls=function(Y){function z(K){Y.call(this),this.options=i.extend(Object.create(Fc),K),i.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return Y&&(z.__proto__=Y),z.prototype=Object.create(Y&&Y.prototype),z.prototype.constructor=z,z.prototype.addTo=function(O){return this._map&&this.remove(),this._map=O,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new i.Event("open")),this},z.prototype.isOpen=function(){return!!this._map},z.prototype.remove=function(){return this._content&&o.remove(this._content),this._container&&(o.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),delete this._map),this.fire(new i.Event("close")),this},z.prototype.getLngLat=function(){return this._lngLat},z.prototype.setLngLat=function(O){return this._lngLat=i.LngLat.convert(O),this._pos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.remove("mapboxgl-track-pointer")),this},z.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},z.prototype.getElement=function(){return this._container},z.prototype.setText=function(O){return this.setDOMContent(i.window.document.createTextNode(O))},z.prototype.setHTML=function(O){var $=i.window.document.createDocumentFragment(),pe=i.window.document.createElement("body"),de;for(pe.innerHTML=O;de=pe.firstChild,!!de;)$.appendChild(de);return this.setDOMContent($)},z.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},z.prototype.setMaxWidth=function(O){return this.options.maxWidth=O,this._update(),this},z.prototype.setDOMContent=function(O){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=o.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(O),this._createCloseButton(),this._update(),this._focusFirstElement(),this},z.prototype.addClassName=function(O){this._container&&this._container.classList.add(O)},z.prototype.removeClassName=function(O){this._container&&this._container.classList.remove(O)},z.prototype.setOffset=function(O){return this.options.offset=O,this._update(),this},z.prototype.toggleClassName=function(O){if(this._container)return this._container.classList.toggle(O)},z.prototype._createCloseButton=function(){this.options.closeButton&&(this._closeButton=o.create("button","mapboxgl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.setAttribute("aria-label","Close popup"),this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))},z.prototype._onMouseUp=function(O){this._update(O.point)},z.prototype._onMouseMove=function(O){this._update(O.point)},z.prototype._onDrag=function(O){this._update(O.point)},z.prototype._update=function(O){var $=this,pe=this._lngLat||this._trackPointer;if(!(!this._map||!pe||!this._content)&&(this._container||(this._container=o.create("div","mapboxgl-popup",this._map.getContainer()),this._tip=o.create("div","mapboxgl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className&&this.options.className.split(" ").forEach(function(vt){return $._container.classList.add(vt)}),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=ma(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!O))){var de=this._pos=this._trackPointer&&O?O:this._map.project(this._lngLat),Ie=this.options.anchor,$e=_f(this.options.offset);if(!Ie){var pt=this._container.offsetWidth,Kt=this._container.offsetHeight,ir;de.y+$e.bottom.y<Kt?ir=["top"]:de.y>this._map.transform.height-Kt?ir=["bottom"]:ir=[],de.x<pt/2?ir.push("left"):de.x>this._map.transform.width-pt/2&&ir.push("right"),ir.length===0?Ie="bottom":Ie=ir.join("-")}var Jt=de.add($e[Ie]).round();o.setTransform(this._container,ro[Ie]+" translate("+Jt.x+"px,"+Jt.y+"px)"),Ao(this._container,Ie,"popup")}},z.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var O=this._container.querySelector(ef);O&&O.focus()}},z.prototype._onClose=function(){this.remove()},z}(i.Evented);function _f(Y){if(Y)if(typeof Y=="number"){var z=Math.round(Math.sqrt(.5*Math.pow(Y,2)));return{center:new i.Point(0,0),top:new i.Point(0,Y),"top-left":new i.Point(z,z),"top-right":new i.Point(-z,z),bottom:new i.Point(0,-Y),"bottom-left":new i.Point(z,-z),"bottom-right":new i.Point(-z,-z),left:new i.Point(Y,0),right:new i.Point(-Y,0)}}else if(Y instanceof i.Point||Array.isArray(Y)){var K=i.Point.convert(Y);return{center:K,top:K,"top-left":K,"top-right":K,bottom:K,"bottom-left":K,"bottom-right":K,left:K,right:K}}else return{center:i.Point.convert(Y.center||[0,0]),top:i.Point.convert(Y.top||[0,0]),"top-left":i.Point.convert(Y["top-left"]||[0,0]),"top-right":i.Point.convert(Y["top-right"]||[0,0]),bottom:i.Point.convert(Y.bottom||[0,0]),"bottom-left":i.Point.convert(Y["bottom-left"]||[0,0]),"bottom-right":i.Point.convert(Y["bottom-right"]||[0,0]),left:i.Point.convert(Y.left||[0,0]),right:i.Point.convert(Y.right||[0,0])};else return _f(new i.Point(0,0))}var ns={version:i.version,supported:a,setRTLTextPlugin:i.setRTLTextPlugin,getRTLTextPluginStatus:i.getRTLTextPluginStatus,Map:vn,NavigationControl:Xn,GeolocateControl:$c,AttributionControl:Rn,ScaleControl:Qc,FullscreenControl:Gl,Popup:ls,Marker:Jn,Style:mu,LngLat:i.LngLat,LngLatBounds:i.LngLatBounds,Point:i.Point,MercatorCoordinate:i.MercatorCoordinate,Evented:i.Evented,config:i.config,prewarm:jn,clearPrewarmedResources:la,get accessToken(){return i.config.ACCESS_TOKEN},set accessToken(Y){i.config.ACCESS_TOKEN=Y},get baseApiUrl(){return i.config.API_URL},set baseApiUrl(Y){i.config.API_URL=Y},get workerCount(){return Pi.workerCount},set workerCount(Y){Pi.workerCount=Y},get maxParallelImageRequests(){return i.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(Y){i.config.MAX_PARALLEL_IMAGE_REQUESTS=Y},clearStorage:function(z){i.clearTileCache(z)},workerUrl:""};return ns}),r})});var JUe=ye((Byr,KUe)=>{"use strict";var tw=Mr(),CHt=Pl().sanitizeHTML,LHt=HK(),ZUe=c1();function XUe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=ZUe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ig=XUe.prototype;ig.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=WF(t)};ig.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ig.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ig.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ig.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ig.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapboxLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ig.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!WF(e)){var r=PHt(e);t.addSource(this.idSource,r)}};ig.findFollowingMapboxLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r<t.length;r++){var n=t[r].id;if(typeof n=="string"&&n.indexOf(ZUe.traceLayerPrefix)===0){e=n;break}}return e};ig.updateLayer=function(e){var t=this.subplot,r=YUe(e),n=this.lookupBelow(),i=this.findFollowingMapboxLayerId(n);this.removeLayer(),WF(e)&&t.addLayer({id:this.idLayer,source:this.idSource,"source-layer":e.sourcelayer||"",type:e.type,minzoom:e.minzoom,maxzoom:e.maxzoom,layout:r.layout,paint:r.paint},i),this.layerType=e.type,this.below=n};ig.updateStyle=function(e){if(WF(e)){var t=YUe(e);this.subplot.setOptions(this.idLayer,"setLayoutProperty",t.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",t.paint)}};ig.removeLayer=function(){var e=this.subplot.map;e.getLayer(this.idLayer)&&e.removeLayer(this.idLayer)};ig.dispose=function(){var e=this.subplot.map;e.getLayer(this.idLayer)&&e.removeLayer(this.idLayer),e.getSource(this.idSource)&&e.removeSource(this.idSource)};function WF(e){if(!e.visible)return!1;var t=e.source;if(Array.isArray(t)&&t.length>0){for(var r=0;r<t.length;r++)if(typeof t[r]!="string"||t[r].length===0)return!1;return!0}return tw.isPlainObject(t)||typeof t=="string"&&t.length>0}function YUe(e){var t={},r={};switch(e.type){case"circle":tw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":tw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":tw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=LHt(n.textposition,n.iconsize);tw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),tw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":tw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function PHt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=CHt(e.sourceattribution)),n}KUe.exports=function(t,r,n){var i=new XUe(t,r);return i.update(n),i}});var oVe=ye((Nyr,aVe)=>{"use strict";var KK=YK(),JK=Mr(),tVe=nx(),$Ue=ba(),IHt=Qa(),RHt=gv(),ZF=Nc(),rVe=Sg(),DHt=rVe.drawMode,zHt=rVe.selectMode,FHt=wf().prepSelect,qHt=wf().clearOutline,OHt=wf().clearSelectionsCache,BHt=wf().selectOnClick,_x=c1(),NHt=JUe();function iVe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Ah=iVe.prototype;Ah.plot=function(e,t,r){var n=this,i=t[n.id];n.map&&i.accesstoken!==n.accessToken&&(n.map.remove(),n.map=null,n.styleObj=null,n.traceHash={},n.layerList=[]);var a;n.map?a=new Promise(function(o,s){n.updateMap(e,t,o,s)}):a=new Promise(function(o,s){n.createMap(e,t,o,s)}),r.push(a)};Ah.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=nVe(a.style,t);i.accessToken=a.accesstoken;var s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new KK.Map({container:i.div,style:o.style,center:$K(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new KK.AttributionControl({compact:!0}));u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var c=[];c.push(new Promise(function(f){u.once("load",f)})),c=c.concat(tVe.fetchTraceGeoData(e)),Promise.all(c).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Ah.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=nVe(o.style,t);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(tVe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Ah.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i<e.length;i++){var l=e[i][0].trace,u=l._module;typeof l.below=="string"?a=l.below:u.getBelow&&(a=u.getBelow(l,this)),a===""&&(s=!0),o["trace-"+l.uid]=a||""}for(i=0;i<n.length;i++){var c=n[i];typeof c.below=="string"?a=c.below:s?a="traces":a="",o["layout-"+i]=a}var f={},h,d;for(h in o)a=o[h],f[a]?f[a].push(h):f[a]=[h];for(a in f){var v=f[a];if(v.length>1)for(i=0;i<v.length;i++)h=v[i],h.indexOf("trace-")===0?(d=h.split("trace-")[1],this.traceHash[d]&&(this.traceHash[d].below=null)):h.indexOf("layout-")===0&&(d=h.split("layout-")[1],this.layerList[d]&&(this.layerList[d].below=null))}};var QUe={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};Ah.updateData=function(e){var t=this.traceHash,r,n,i,a,o=e.slice().sort(function(f,h){return QUe[f[0].trace.type]-QUe[h[0].trace.type]});for(i=0;i<o.length;i++){var s=o[i];n=s[0].trace,r=t[n.uid];var l=!1;r&&(r.type===n.type?(r.update(s),l=!0):r.dispose()),!l&&n._module&&(t[n.uid]=n._module.plot(this,s))}var u=Object.keys(t);e:for(i=0;i<u.length;i++){var c=u[i];for(a=0;a<e.length;a++)if(n=e[a][0].trace,c===n.uid)continue e;r=t[c],r.dispose(),delete t[c]}};Ah.updateLayout=function(e){var t=this.map,r=e[this.id];!this.dragging&&!this.wheeling&&(t.setCenter($K(r.center)),t.setZoom(r.zoom),t.setBearing(r.bearing),t.setPitch(r.pitch)),this.updateLayers(e),this.updateFramework(e),this.updateFx(e),this.map.resize(),this.gd._context._scrollZoom.mapbox?t.scrollZoom.enable():t.scrollZoom.disable()};Ah.resolveOnRender=function(e){var t=this.map;t.on("render",function r(){t.loaded()&&(t.off("render",r),setTimeout(e,10))})};Ah.rejectOnError=function(e){var t=this.map;function r(){e(new Error(_x.mapOnErrorMsg))}t.once("error",r),t.once("style.error",r),t.once("source.error",r),t.once("tile.error",r),t.once("layer.error",r)};Ah.createFramework=function(e){var t=this,r=t.div=document.createElement("div");r.id=t.uid,r.style.position="absolute",t.container.appendChild(r),t.xaxis={_id:"x",c2p:function(n){return t.project(n).x}},t.yaxis={_id:"y",c2p:function(n){return t.project(n).y}},t.updateFramework(e),t.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},IHt.setConvert(t.mockAxis,e)};Ah.initFx=function(e,t){var r=this,n=r.gd,i=r.map;i.on("moveend",function(s){if(r.map){var l=n._fullLayout;if(s.originalEvent||r.wheeling){var u=l[r.id];$Ue.call("_storeDirectGUIEdit",n.layout,l._preGUI,r.getViewEdits(u));var c=r.getView();u._input.center=u.center=c.center,u._input.zoom=u.zoom=c.zoom,u._input.bearing=u.bearing=c.bearing,u._input.pitch=u.pitch=c.pitch,n.emit("plotly_relayout",r.getViewEditsWithDerived(c))}s.originalEvent&&s.originalEvent.type==="mouseup"?r.dragging=!1:r.wheeling&&(r.wheeling=!1),l._rehover&&l._rehover()}}),i.on("wheel",function(){r.wheeling=!0}),i.on("mousemove",function(s){var l=r.div.getBoundingClientRect(),u=[s.originalEvent.offsetX,s.originalEvent.offsetY];s.target.getBoundingClientRect=function(){return l},r.xaxis.p2c=function(){return i.unproject(u).lng},r.yaxis.p2c=function(){return i.unproject(u).lat},n._fullLayout._rehover=function(){n._fullLayout._hoversubplot===r.id&&n._fullLayout[r.id]&&ZF.hover(n,s,r.id)},ZF.hover(n,s,r.id),n._fullLayout._hoversubplot=r.id});function a(){ZF.loneUnhover(t._hoverlayer)}i.on("dragstart",function(){r.dragging=!0,a()}),i.on("zoomstart",a),i.on("mouseout",function(){n._fullLayout._hoversubplot=null});function o(){var s=r.getView();n.emit("plotly_relayouting",r.getViewEditsWithDerived(s))}i.on("drag",o),i.on("zoom",o),i.on("dblclick",function(){var s=n._fullLayout[r.id];$Ue.call("_storeDirectGUIEdit",n.layout,n._fullLayout._preGUI,r.getViewEdits(s));var l=r.viewInitial;i.setCenter($K(l.center)),i.setZoom(l.zoom),i.setBearing(l.bearing),i.setPitch(l.pitch);var u=r.getView();s._input.center=s.center=u.center,s._input.zoom=s.zoom=u.zoom,s._input.bearing=s.bearing=u.bearing,s._input.pitch=s.pitch=u.pitch,n.emit("plotly_doubleclick",null),n.emit("plotly_relayout",r.getViewEditsWithDerived(u))}),r.clearOutline=function(){OHt(r.dragOptions),qHt(r.dragOptions.gd)},r.onClickInPanFn=function(s){return function(l){var u=n._fullLayout.clickmode;u.indexOf("select")>-1&&BHt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&ZF.click(n,l.originalEvent)}}};Ah.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=JK.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),zHt(a)||DHt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){FHt(l,u,c,t.dragOptions,a)},RHt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Ah.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Ah.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i<n.length;i++)n[i].dispose();for(n=this.layerList=[],i=0;i<r.length;i++)n.push(NHt(this,i,r[i]))}else for(i=0;i<r.length;i++)n[i].update(r[i])};Ah.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))};Ah.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()};Ah.setOptions=function(e,t,r){for(var n in r)this.map[t](e,n,r[n])};Ah.getMapLayers=function(){return this.map.getStyle().layers};Ah.addLayer=function(e,t){var r=this.map;if(typeof t=="string"){if(t===""){r.addLayer(e,t);return}for(var n=this.getMapLayers(),i=0;i<n.length;i++)if(t===n[i].id){r.addLayer(e,t);return}JK.warn(["Trying to add layer with *below* value",t,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}r.addLayer(e)};Ah.project=function(e){return this.map.project(new KK.LngLat(e[0],e[1]))};Ah.getView=function(){var e=this.map,t=e.getCenter(),r=t.lng,n=t.lat,i={lon:r,lat:n},a=e.getCanvas(),o=parseInt(a.style.width),s=parseInt(a.style.height);return{center:i,zoom:e.getZoom(),bearing:e.getBearing(),pitch:e.getPitch(),_derived:{coordinates:[e.unproject([0,0]).toArray(),e.unproject([o,0]).toArray(),e.unproject([o,s]).toArray(),e.unproject([0,s]).toArray()]}}};Ah.getViewEdits=function(e){for(var t=this.id,r=["center","zoom","bearing","pitch"],n={},i=0;i<r.length;i++){var a=r[i];n[t+"."+a]=e[a]}return n};Ah.getViewEditsWithDerived=function(e){var t=this.id,r=this.getViewEdits(e);return r[t+"._derived"]=e._derived,r};function nVe(e,t){var r={};if(JK.isPlainObject(e))r.id=e.id,r.style=e;else if(typeof e=="string")if(r.id=e,_x.styleValuesMapbox.indexOf(e)!==-1)r.style=eVe(e);else if(_x.stylesNonMapbox[e]){r.style=_x.stylesNonMapbox[e];var n=r.style.sources["plotly-"+e],i=n?n.tiles:void 0;i&&i[0]&&i[0].slice(-9)==="?api_key="&&(i[0]+=t._mapboxAccessToken)}else r.style=e;else r.id=_x.styleValueDflt,r.style=eVe(_x.styleValueDflt);return r.transition={duration:0,delay:0},r}function eVe(e){return _x.styleUrlPrefix+e+"-"+_x.styleUrlSuffix}function $K(e){return[e.lon,e.lat]}aVe.exports=iVe});var uVe=ye((Uyr,lVe)=>{"use strict";var QK=Mr(),UHt=C_(),VHt=Zd(),sVe=Rk();lVe.exports=function(t,r,n){UHt(t,r,n,{type:"mapbox",attributes:sVe,handleDefaults:HHt,partition:"y",accessToken:r._mapboxAccessToken})};function HHt(e,t,r,n){r("accesstoken",n.accessToken),r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var i=r("bounds.west"),a=r("bounds.east"),o=r("bounds.south"),s=r("bounds.north");(i===void 0||a===void 0||o===void 0||s===void 0)&&delete t.bounds,VHt(e,t,{name:"layers",handleItemDefaults:GHt}),t._input=e}function GHt(e,t){function r(l,u){return QK.coerce(e,t,sVe.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",QK.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),QK.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var XF=ye(Np=>{"use strict";var cVe=YK(),tm=Mr(),eJ=tm.strTranslate,jHt=tm.strScale,WHt=kd().getSubplotCalcData,ZHt=Zp(),XHt=xa(),fVe=ao(),YHt=Pl(),KHt=oVe(),xx="mapbox",Qm=Np.constants=c1();Np.name=xx;Np.attr="subplot";Np.idRoot=xx;Np.idRegex=Np.attrRegex=tm.counterRegex(xx);var JHt=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");Np.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}};Np.layoutAttributes=Rk();Np.supplyLayoutDefaults=uVe();var hVe=!0;Np.plot=function(t){hVe&&(hVe=!1,tm.warn(JHt));var r=t._fullLayout,n=t.calcdata,i=r._subplots[xx];if(cVe.version!==Qm.requiredVersion)throw new Error(Qm.wrongVersionErrorMsg);var a=$Ht(t,i);cVe.accessToken=a;for(var o=0;o<i.length;o++){var s=i[o],l=WHt(n,xx,s),u=r[s],c=u._subplot;c||(c=new KHt(t,s),r[s]._subplot=c),c.viewInitial||(c.viewInitial={center:tm.extendFlat({},u.center),zoom:u.zoom,bearing:u.bearing,pitch:u.pitch}),c.plot(l,r,t._promises)}};Np.clean=function(e,t,r,n){for(var i=n._subplots[xx]||[],a=0;a<i.length;a++){var o=i[a];!t[o]&&n[o]._subplot&&n[o]._subplot.destroy()}};Np.toSVG=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=t._size,i=0;i<r.length;i++){var a=t[r[i]],o=a.domain,s=a._subplot,l=s.toImage("png"),u=t._glimages.append("svg:image");u.attr({xmlns:ZHt.svg,"xlink:href":l,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"});var c=XHt.select(a._subplot.div),f=c.select(".mapboxgl-ctrl-logo").node().offsetParent===null;if(!f){var h=t._glimages.append("g");h.attr("transform",eJ(n.l+n.w*o.x[0]+10,n.t+n.h*(1-o.y[0])-31)),h.append("path").attr("d",Qm.mapboxLogo.path0).style({opacity:.9,fill:"#ffffff","enable-background":"new"}),h.append("path").attr("d",Qm.mapboxLogo.path1).style("opacity",.35).style("enable-background","new"),h.append("path").attr("d",Qm.mapboxLogo.path2).style("opacity",.35).style("enable-background","new"),h.append("polygon").attr("points",Qm.mapboxLogo.polygon).style({opacity:.9,fill:"#ffffff","enable-background":"new"})}var d=c.select(".mapboxgl-ctrl-attrib").text().replace("Improve this map",""),v=t._glimages.append("g"),x=v.append("text");x.text(d).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":d});var b=fVe.bBox(x.node()),p=n.w*(o.x[1]-o.x[0]);if(b.width>p/2){var E=d.split("|").join("<br>");x.text(E).attr("data-unformatted",E).call(YHt.convertToTspans,e),b=fVe.bBox(x.node())}x.attr("transform",eJ(-3,-b.height+8)),v.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var k=1;b.width+6>p&&(k=p/(b.width+6));var A=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];v.attr("transform",eJ(A[0],A[1])+jHt(k))}};function $Ht(e,t){var r=e._fullLayout,n=e._context;if(n.mapboxAccessToken==="")return"";for(var i=[],a=[],o=!1,s=!1,l=0;l<t.length;l++){var u=r[t[l]],c=u.accesstoken;dVe(u.style)&&(c?tm.pushUnique(i,c):(dVe(u._input.style)&&(tm.error("Uses Mapbox map style, but did not set an access token."),o=!0),s=!0)),c&&tm.pushUnique(a,c)}if(s){var f=o?Qm.noAccessTokenErrorMsg:Qm.missingStyleErrorMsg;throw tm.error(f),new Error(f)}return i.length?(i.length>1&&tm.warn(Qm.multipleTokensErrorMsg),i[0]):(a.length&&tm.log(["Listed mapbox access token(s)",a.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function dVe(e){return typeof e=="string"&&(Qm.styleValuesMapbox.indexOf(e)!==-1||e.indexOf("mapbox://")===0||e.indexOf("stamen")===0)}Np.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[xx],n=0;n<r.length;n++){var i=t[r[n]]._subplot;i.updateFx(t)}}});var pVe=ye((Gyr,vVe)=>{"use strict";var Hyr=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");vVe.exports={attributes:NF(),supplyDefaults:MUe(),colorbar:Kd(),formatLabels:VK(),calc:lz(),plot:NUe(),hoverPoints:jF().hoverPoints,eventData:GUe(),selectPoints:WUe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermapbox",basePlotModule:XF(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}});var mVe=ye((jyr,gVe)=>{"use strict";gVe.exports=pVe()});var tJ=ye((Wyr,yVe)=>{"use strict";var f1=K5(),QHt=Jl(),eGt=Wo().hovertemplateAttrs,tGt=vl(),bx=no().extendFlat;yVe.exports=bx({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:bx({},f1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:f1.text,hovertext:f1.hovertext,marker:{line:{color:bx({},f1.marker.line.color,{editType:"plot"}),width:bx({},f1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:bx({},f1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:bx({},f1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:bx({},f1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:f1.hoverinfo,hovertemplate:eGt({},{keys:["properties"]}),showlegend:bx({},tGt.showlegend,{dflt:!1})},QHt("",{cLetter:"z",editTypeOverride:"calc"}))});var xVe=ye((Zyr,_Ve)=>{"use strict";var qk=Mr(),rGt=Uh(),iGt=tJ();_Ve.exports=function(t,r,n,i){function a(c,f){return qk.coerce(t,r,iGt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!qk.isArrayOrTypedArray(o)||!o.length||!qk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||qk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),rGt(t,r,i,a,{prefix:"",cLetter:"z"}),qk.coerceSelectionMarkerOpacity(r,a)}});var rJ=ye((Xyr,TVe)=>{"use strict";var nGt=uo(),h1=Mr(),aGt=Mu(),oGt=ao(),sGt=rx().makeBlank,bVe=nx();function lGt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:sGt()};if(!r)return a;var o=bVe.extractTraceFeature(e);if(!o)return a;var s=aGt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;h1.isArrayOrTypedArray(l.opacity)&&(c=function(E){var k=E.mo;return nGt(k)?+h1.constrain(k,0,1):0});var f;h1.isArrayOrTypedArray(u.color)&&(f=function(E){return E.mlc});var h;h1.isArrayOrTypedArray(u.width)&&(h=function(E){return E.mlw});for(var d=0;d<e.length;d++){var v=e[d],x=v.fOut;if(x){var b=x.properties;b.fc=s(v.z),c&&(b.mo=c(v)),f&&(b.mlc=f(v)),h&&(b.mlw=h(v)),v.ct=b.ct,v._polygons=bVe.feature2polygons(x)}}var p=c?{type:"identity",property:"mo"}:l.opacity;return h1.extendFlat(n.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":p}),h1.extendFlat(i.paint,{"line-color":f?{type:"identity",property:"mlc"}:u.color,"line-width":h?{type:"identity",property:"mlw"}:u.width,"line-opacity":p}),n.layout.visibility="visible",i.layout.visibility="visible",a.geojson={type:"FeatureCollection",features:o},wVe(e),a}function wVe(e){var t=e[0].trace,r=t._opts,n;if(t.selectedpoints){for(var i=oGt.makeSelectedPointStyleFns(t),a=0;a<e.length;a++){var o=e[a];o.fOut&&(o.fOut.properties.mo2=i.selectedOpacityFn(o))}n={type:"identity",property:"mo2"}}else n=h1.isArrayOrTypedArray(t.marker.opacity)?{type:"identity",property:"mo"}:t.marker.opacity;return h1.extendFlat(r.fill.paint,{"fill-opacity":n}),h1.extendFlat(r.line.paint,{"line-opacity":n}),r}TVe.exports={convert:lGt,convertOnSelect:wVe}});var kVe=ye((Yyr,EVe)=>{"use strict";var SVe=rJ().convert,uGt=rJ().convertOnSelect,AVe=c1().traceLayerPrefix;function MVe(e,t){this.type="choroplethmapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",AVe+t+"-fill"],["line",AVe+t+"-line"]],this.below=null}var wA=MVe.prototype;wA.update=function(e){this._update(SVe(e)),e[0].trace._glTrace=this};wA.updateOnSelect=function(e){this._update(uGt(e))};wA._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i<r.length;i++){var a=r[i],o=a[0],s=a[1],l=e[o];t.setOptions(s,"setLayoutProperty",l.layout),l.layout.visibility==="visible"&&t.setOptions(s,"setPaintProperty",l.paint)}};wA._addLayers=function(e,t){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=e[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},t)}};wA._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};wA.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};EVe.exports=function(t,r){var n=r[0].trace,i=new MVe(t,n.uid),a=i.sourceId,o=SVe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var LVe=ye((Jyr,CVe)=>{"use strict";var Kyr=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");CVe.exports={attributes:tJ(),supplyDefaults:xVe(),colorbar:M_(),calc:Lz(),plot:kVe(),hoverPoints:Iz(),eventData:Rz(),selectPoints:Dz(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a<r.length;a++)if(i=r[a].id,typeof i=="string"&&i.indexOf("plotly-")===-1)return i}}},moduleType:"trace",name:"choroplethmapbox",basePlotModule:XF(),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}});var IVe=ye(($yr,PVe)=>{"use strict";PVe.exports=LVe()});var nJ=ye((Qyr,DVe)=>{"use strict";var cGt=Jl(),fGt=Wo().hovertemplateAttrs,RVe=vl(),YF=NF(),iJ=no().extendFlat;DVe.exports=iJ({lon:YF.lon,lat:YF.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:YF.text,hovertext:YF.hovertext,hoverinfo:iJ({},RVe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:fGt(),showlegend:iJ({},RVe.showlegend,{dflt:!1})},cGt("",{cLetter:"z",editTypeOverride:"calc"}))});var FVe=ye((e1r,zVe)=>{"use strict";var hGt=Mr(),dGt=Uh(),vGt=nJ();zVe.exports=function(t,r,n,i){function a(u,c){return hGt.coerce(t,r,vGt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),dGt(t,r,i,a,{prefix:"",cLetter:"z"})}});var BVe=ye((t1r,OVe)=>{"use strict";var aJ=uo(),pGt=Mr().isArrayOrTypedArray,oJ=es().BADNUM,gGt=zv(),qVe=Mr()._;OVe.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=pGt(a)&&a.length,s=0;s<n;s++){var l=i[s]={},u=r.lon[s],c=r.lat[s];if(l.lonlat=aJ(u)&&aJ(c)?[+u,+c]:[oJ,oJ],o){var f=a[s];l.z=aJ(f)?f:oJ}}return gGt(t,r,{vals:o?a:[0,1],containerStr:"",cLetter:"z"}),n&&(i[0].t={labels:{lat:qVe(t,"lat:")+" ",lon:qVe(t,"lon:")+" "}}),i}});var GVe=ye((r1r,HVe)=>{"use strict";var mGt=uo(),sJ=Mr(),NVe=va(),UVe=Mu(),VVe=es().BADNUM,yGt=rx().makeBlank;HVe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:yGt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=sJ.isArrayOrTypedArray(l)&&l.length,f=sJ.isArrayOrTypedArray(u);for(s=0;s<t.length;s++){var h=t[s],d=h.lonlat;if(d[0]!==VVe){var v={};if(c){var x=h.z;v.z=x!==VVe?x:0}f&&(v.r=mGt(u[s])&&u[s]>0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=UVe.extractOpts(r),p=b.reversescale?UVe.flipScale(b.colorscale):b.colorscale,E=p[0][1],k=NVe.opacity(E)<1?E:NVe.addOpacity(E,0),A=["interpolate",["linear"],["heatmap-density"],0,k];for(s=1;s<p.length;s++)A.push(p[s][0],p[s][1]);var L=["interpolate",["linear"],["get","z"],b.min,0,b.max,1];return sJ.extendFlat(a.heatmap.paint,{"heatmap-weight":c?L:1/(b.max-b.min),"heatmap-color":A,"heatmap-radius":f?{type:"identity",property:"r"}:r.radius,"heatmap-opacity":r.opacity}),a.geojson={type:"FeatureCollection",features:o},a.heatmap.layout.visibility="visible",a}});var XVe=ye((i1r,ZVe)=>{"use strict";var jVe=GVe(),_Gt=c1().traceLayerPrefix;function WVe(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",_Gt+t+"-heatmap"]],this.below=null}var KF=WVe.prototype;KF.update=function(e){var t=this.subplot,r=this.layerList,n=jVe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a<r.length;a++){var o=r[a],s=o[0],l=o[1],u=n[s];t.setOptions(l,"setLayoutProperty",u.layout),u.layout.visibility==="visible"&&t.setOptions(l,"setPaintProperty",u.paint)}};KF._addLayers=function(e,t){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=e[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},t)}};KF._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};KF.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};ZVe.exports=function(t,r){var n=r[0].trace,i=new WVe(t,n.uid),a=i.sourceId,o=jVe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var KVe=ye((n1r,YVe)=>{"use strict";var xGt=Qa(),bGt=jF().hoverPoints,wGt=jF().getExtraText;YVe.exports=function(t,r,n){var i=bGt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=xGt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=wGt(s,l,o[0].t.labels),[a]}}});var $Ve=ye((a1r,JVe)=>{"use strict";JVe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var eHe=ye((s1r,QVe)=>{"use strict";var o1r=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");QVe.exports={attributes:nJ(),supplyDefaults:FVe(),colorbar:M_(),formatLabels:VK(),calc:BVe(),plot:XVe(),hoverPoints:KVe(),eventData:$Ve(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n<r.length;n++){var i=r[n],a=i.id;if(i.type==="symbol"&&typeof a=="string"&&a.indexOf("plotly-")===-1)return a}},moduleType:"trace",name:"densitymapbox",basePlotModule:XF(),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}});var rHe=ye((l1r,tHe)=>{"use strict";tHe.exports=eHe()});var nHe=ye((u1r,iHe)=>{iHe.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":`{name:latin}
+{name:nonlatin}`,"text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}});var oHe=ye((c1r,aHe)=>{aHe.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}});var wx=ye((f1r,fHe)=>{"use strict";var TGt=Y1(),AGt=nHe(),SGt=oHe(),MGt='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',sHe="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",lHe="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",JF="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",EGt="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",kGt="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",CGt="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",cHe={basic:JF,streets:JF,outdoors:JF,light:sHe,dark:lHe,satellite:SGt,"satellite-streets":AGt,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:MGt,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":sHe,"carto-darkmatter":lHe,"carto-voyager":JF,"carto-positron-nolabels":EGt,"carto-darkmatter-nolabels":kGt,"carto-voyager-nolabels":CGt},uHe=TGt(cHe);fHe.exports={styleValueDflt:"basic",stylesMap:cHe,styleValuesMap:uHe,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",uHe.join(", "),"or use a tile service."].join(`
+`),mapOnErrorMsg:"Map error."}});var Ok=ye((h1r,gHe)=>{"use strict";var hHe=Mr(),dHe=va().defaultLine,LGt=Ju().attributes,PGt=Su(),IGt=Uc().textposition,RGt=Bu().overrideAll,DGt=Vs().templatedArray,vHe=wx(),pHe=PGt({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});pHe.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var zGt=gHe.exports=RGt({_arrayAttrRegexps:[hHe.counterRegex("map",".layers",!0)],domain:LGt({name:"map"}),style:{valType:"any",values:vHe.styleValuesMap,dflt:vHe.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:DGt("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:dHe},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:dHe}},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:pHe,textposition:hHe.extendFlat({},IGt,{arrayOk:!1})}})},"plot","from-root");zGt.uirevision={valType:"any",editType:"none"}});var $F=ye((d1r,_He)=>{"use strict";var FGt=Wo().hovertemplateAttrs,qGt=Wo().texttemplateAttrs,OGt=Eg(),Bk=H2(),TA=Uc(),mHe=Ok(),BGt=vl(),NGt=Jl(),rw=no().extendFlat,UGt=Bu().overrideAll,VGt=Ok(),yHe=Bk.line,AA=Bk.marker;_He.exports=UGt({lon:Bk.lon,lat:Bk.lat,cluster:{enabled:{valType:"boolean"},maxzoom:rw({},VGt.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:rw({},AA.opacity,{dflt:1})},mode:rw({},TA.mode,{dflt:"markers"}),text:rw({},TA.text,{}),texttemplate:qGt({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:rw({},TA.hovertext,{}),line:{color:yHe.color,width:yHe.width},connectgaps:TA.connectgaps,marker:rw({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:AA.opacity,size:AA.size,sizeref:AA.sizeref,sizemin:AA.sizemin,sizemode:AA.sizemode},NGt("marker")),fill:Bk.fill,fillcolor:OGt(),textfont:mHe.layers.symbol.textfont,textposition:mHe.layers.symbol.textposition,below:{valType:"string"},selected:{marker:TA.selected.marker},unselected:{marker:TA.unselected.marker},hoverinfo:rw({},BGt.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:FGt()},"calc","nested")});var lJ=ye((v1r,xHe)=>{"use strict";var HGt=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];xHe.exports={isSupportedFont:function(e){return HGt.indexOf(e)!==-1}}});var THe=ye((p1r,wHe)=>{"use strict";var Nk=Mr(),uJ=lu(),GGt=$p(),jGt=R0(),WGt=D0(),ZGt=Ig(),bHe=$F(),XGt=lJ().isSupportedFont;wHe.exports=function(t,r,n,i){function a(p,E){return Nk.coerce(t,r,bHe,p,E)}function o(p,E){return Nk.coerce2(t,r,bHe,p,E)}var s=YGt(t,r,a);if(!s){r.visible=!1;return}if(a("text"),a("texttemplate"),a("hovertext"),a("hovertemplate"),a("mode"),a("below"),uJ.hasMarkers(r)){GGt(t,r,n,i,a,{noLine:!0,noAngle:!0}),a("marker.allowoverlap"),a("marker.angle");var l=r.marker;l.symbol!=="circle"&&(Nk.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),Nk.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}uJ.hasLines(r)&&(jGt(t,r,n,i,a,{noDash:!0}),a("connectgaps"));var u=o("cluster.maxzoom"),c=o("cluster.step"),f=o("cluster.color",r.marker&&r.marker.color||n),h=o("cluster.size"),d=o("cluster.opacity"),v=u!==!1||c!==!1||f!==!1||h!==!1||d!==!1,x=a("cluster.enabled",v);if(x||uJ.hasText(r)){var b=i.font.family;WGt(t,r,i,a,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:XGt(b)?b:"Open Sans Regular",weight:i.font.weight,style:i.font.style,size:i.font.size,color:i.font.color}})}a("fill"),r.fill!=="none"&&ZGt(t,r,n,a),Nk.coerceSelectionMarkerOpacity(r,a)};function YGt(e,t,r){var n=r("lon")||[],i=r("lat")||[],a=Math.min(n.length,i.length);return t._length=a,a}});var cJ=ye((g1r,SHe)=>{"use strict";var AHe=Qa();SHe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o=a.mockAxis,s=t.lonlat;return i.lonLabel=AHe.tickText(o,o.c2l(s[0]),!0).text,i.latLabel=AHe.tickText(o,o.c2l(s[1]),!0).text,i}});var fJ=ye((m1r,EHe)=>{"use strict";var MHe=Mr();EHe.exports=function(t,r){var n=t.split(" "),i=n[0],a=n[1],o=MHe.isArrayOrTypedArray(r)?MHe.mean(r):r,s=.5+o/100,l=1.5+o/100,u=["",""],c=[0,0];switch(i){case"top":u[0]="top",c[1]=-l;break;case"bottom":u[0]="bottom",c[1]=l;break}switch(a){case"left":u[1]="right",c[0]=-s;break;case"right":u[1]="left",c[0]=s;break}var f;return u[0]&&u[1]?f=u.join("-"):u[0]?f=u[0]:u[1]?f=u[1]:f="center",{anchor:f,offset:c}}});var RHe=ye((y1r,IHe)=>{"use strict";var LHe=uo(),nv=Mr(),KGt=es().BADNUM,e7=rx(),kHe=Mu(),JGt=ao(),$Gt=S3(),t7=lu(),QGt=lJ().isSupportedFont,ejt=fJ(),tjt=rp().appendArrayPointValue,rjt=Pl().NEWLINES,ijt=Pl().BR_TAG_ALL;IHe.exports=function(t,r){var n=r[0].trace,i=n.visible===!0&&n._length!==0,a=n.fill!=="none",o=t7.hasLines(n),s=t7.hasMarkers(n),l=t7.hasText(n),u=s&&n.marker.symbol==="circle",c=s&&n.marker.symbol!=="circle",f=n.cluster&&n.cluster.enabled,h=QF("fill"),d=QF("line"),v=QF("circle"),x=QF("symbol"),b={fill:h,line:d,circle:v,symbol:x};if(!i)return b;var p;if((a||o)&&(p=e7.calcTraceToLineCoords(r)),a&&(h.geojson=e7.makePolygon(p),h.layout.visibility="visible",nv.extendFlat(h.paint,{"fill-color":n.fillcolor})),o&&(d.geojson=e7.makeLine(p),d.layout.visibility="visible",nv.extendFlat(d.paint,{"line-width":n.line.width,"line-color":n.line.color,"line-opacity":n.opacity})),u){var E=njt(r);v.geojson=E.geojson,v.layout.visibility="visible",f&&(v.filter=["!",["has","point_count"]],b.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":dJ(n.cluster.color,n.cluster.step),"circle-radius":dJ(n.cluster.size,n.cluster.step),"circle-opacity":dJ(n.cluster.opacity,n.cluster.step)}},b.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":CHe(n),"text-size":12}}),nv.extendFlat(v.paint,{"circle-color":E.mcc,"circle-radius":E.mrc,"circle-opacity":E.mo})}if(u&&f&&(v.filter=["!",["has","point_count"]]),(c||l)&&(x.geojson=ajt(r,t),nv.extendFlat(x.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),c&&(nv.extendFlat(x.layout,{"icon-size":n.marker.size/10}),"angle"in n.marker&&n.marker.angle!=="auto"&&nv.extendFlat(x.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),x.layout["icon-allow-overlap"]=n.marker.allowoverlap,nv.extendFlat(x.paint,{"icon-opacity":n.opacity*n.marker.opacity,"icon-color":n.marker.color})),l)){var k=(n.marker||{}).size,A=ejt(n.textposition,k);nv.extendFlat(x.layout,{"text-size":n.textfont.size,"text-anchor":A.anchor,"text-offset":A.offset,"text-font":CHe(n)}),nv.extendFlat(x.paint,{"text-color":n.textfont.color,"text-opacity":n.opacity})}return b};function QF(e){return{type:e,geojson:e7.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function njt(e){var t=e[0].trace,r=t.marker,n=t.selectedpoints,i=nv.isArrayOrTypedArray(r.color),a=nv.isArrayOrTypedArray(r.size),o=nv.isArrayOrTypedArray(r.opacity),s;function l(k){return t.opacity*k}function u(k){return k/2}var c;i&&(kHe.hasColorscale(t,"marker")?c=kHe.makeColorScaleFuncFromTrace(r):c=nv.identity);var f;a&&(f=$Gt(t));var h;o&&(h=function(k){var A=LHe(k)?+nv.constrain(k,0,1):0;return l(A)});var d=[];for(s=0;s<e.length;s++){var v=e[s],x=v.lonlat;if(!PHe(x)){var b={};c&&(b.mcc=v.mcc=c(v.mc)),f&&(b.mrc=v.mrc=f(v.ms)),h&&(b.mo=h(v.mo)),n&&(b.selected=v.selected||0),d.push({type:"Feature",id:s+1,geometry:{type:"Point",coordinates:x},properties:b})}}var p;if(n)for(p=JGt.makeSelectedPointStyleFns(t),s=0;s<d.length;s++){var E=d[s].properties;p.selectedOpacityFn&&(E.mo=l(p.selectedOpacityFn(E))),p.selectedColorFn&&(E.mcc=p.selectedColorFn(E)),p.selectedSizeFn&&(E.mrc=p.selectedSizeFn(E))}return{geojson:{type:"FeatureCollection",features:d},mcc:i||p&&p.selectedColorFn?{type:"identity",property:"mcc"}:r.color,mrc:a||p&&p.selectedSizeFn?{type:"identity",property:"mrc"}:u(r.size),mo:o||p&&p.selectedOpacityFn?{type:"identity",property:"mo"}:l(r.opacity)}}function ajt(e,t){for(var r=t._fullLayout,n=e[0].trace,i=n.marker||{},a=i.symbol,o=i.angle,s=a!=="circle"?hJ(a):r7,l=o!=="auto"?hJ(o,!0):r7,u=t7.hasText(n)?hJ(n.text):r7,c=[],f=0;f<e.length;f++){var h=e[f];if(!PHe(h.lonlat)){var d=n.texttemplate,v;if(d){var x=Array.isArray(d)?d[f]||"":d,b=n._module.formatLabels(h,n,r),p={};tjt(p,n,h.i);var E=n._meta||{};v=nv.texttemplateString(x,b,r._d3locale,p,h,E)}else v=u(f);v&&(v=v.replace(rjt,"").replace(ijt,`
+`)),c.push({type:"Feature",geometry:{type:"Point",coordinates:h.lonlat},properties:{symbol:s(f),angle:l(f),text:v}})}}return{type:"FeatureCollection",features:c}}function hJ(e,t){return nv.isArrayOrTypedArray(e)?t?function(r){return LHe(e[r])?+e[r]:0}:function(r){return e[r]}:e?function(){return e}:r7}function r7(){return""}function PHe(e){return e[0]===KGt}function dJ(e,t){var r;if(nv.isArrayOrTypedArray(e)&&nv.isArrayOrTypedArray(t)){r=["step",["get","point_count"],e[0]];for(var n=1;n<e.length;n++)r.push(t[n-1],e[n])}else r=e;return r}function CHe(e){var t=e.textfont,r=t.family,n=t.style,i=t.weight,a=r.split(" "),o=a[a.length-1]==="Italic";o&&a.pop(),o=o||n==="italic";var s=a.join(" ");i==="bold"&&a.indexOf("Bold")===-1?s+=" Bold":i<=1e3&&(a[0]==="Metropolis"?(s="Metropolis",i>850?s+=" Black":i>750?s+=" Extra Bold":i>650?s+=" Bold":i>550?s+=" Semi Bold":i>450?s+=" Medium":i>350?s+=" Regular":i>250?s+=" Light":i>150?s+=" Extra Light":s+=" Thin"):a.slice(0,2).join(" ")==="Open Sans"?(s="Open Sans",i>750?s+=" Extrabold":i>650?s+=" Bold":i>550?s+=" Semibold":i>350?s+=" Regular":s+=" Light"):a.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(s="Klokantech Noto Sans",a[3]==="CJK"&&(s+=" CJK"),s+=i>500?" Bold":" Regular")),o&&(s+=" Italic"),s==="Open Sans Regular Italic"?s="Open Sans Italic":s==="Open Sans Regular Bold"?s="Open Sans Bold":s==="Open Sans Regular Bold Italic"?s="Open Sans Bold Italic":s==="Klokantech Noto Sans Regular Italic"&&(s="Klokantech Noto Sans Italic"),QGt(s)||(s=r);var l=s.split(", ");return l}});var qHe=ye((_1r,FHe)=>{"use strict";var ojt=Mr(),DHe=RHe(),SA=wx().traceLayerPrefix,ng={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function zHe(e,t,r,n){this.type="scattermap",this.subplot=e,this.uid=t,this.clusterEnabled=r,this.isHidden=n,this.sourceIds={fill:"source-"+t+"-fill",line:"source-"+t+"-line",circle:"source-"+t+"-circle",symbol:"source-"+t+"-symbol",cluster:"source-"+t+"-circle",clusterCount:"source-"+t+"-circle"},this.layerIds={fill:SA+t+"-fill",line:SA+t+"-line",circle:SA+t+"-circle",symbol:SA+t+"-symbol",cluster:SA+t+"-cluster",clusterCount:SA+t+"-cluster-count"},this.below=null}var Uk=zHe.prototype;Uk.addSource=function(e,t,r){var n={type:"geojson",data:t.geojson};r&&r.enabled&&ojt.extendFlat(n,{cluster:!0,clusterMaxZoom:r.maxzoom});var i=this.subplot.map.getSource(this.sourceIds[e]);i?i.setData(t.geojson):this.subplot.map.addSource(this.sourceIds[e],n)};Uk.setSourceData=function(e,t){this.subplot.map.getSource(this.sourceIds[e]).setData(t.geojson)};Uk.addLayer=function(e,t,r){var n={type:t.type,id:this.layerIds[e],source:this.sourceIds[e],layout:t.layout,paint:t.paint};t.filter&&(n.filter=t.filter);for(var i=this.layerIds[e],a,o=this.subplot.getMapLayers(),s=0;s<o.length;s++)if(o[s].id===i){a=!0;break}a?(this.subplot.setOptions(i,"setLayoutProperty",n.layout),n.layout.visibility==="visible"&&this.subplot.setOptions(i,"setPaintProperty",n.paint)):this.subplot.addLayer(n,r)};Uk.update=function(t){var r=t[0].trace,n=this.subplot,i=n.map,a=DHe(n.gd,t),o=n.belowLookup["trace-"+this.uid],s=!!(r.cluster&&r.cluster.enabled),l=!!this.clusterEnabled,u=this;function c(k){k||u.addSource("circle",a.circle,r.cluster);for(var A=ng.cluster,L=0;L<A.length;L++){var _=A[L],C=a[_];u.addLayer(_,C,o)}}function f(k){for(var A=ng.cluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_])}k||i.removeSource(u.sourceIds.circle)}function h(k){for(var A=ng.nonCluster,L=0;L<A.length;L++){var _=A[L],C=a[_];k||u.addSource(_,C),u.addLayer(_,C,o)}}function d(k){for(var A=ng.nonCluster,L=A.length-1;L>=0;L--){var _=A[L];i.removeLayer(u.layerIds[_]),k||i.removeSource(u.sourceIds[_])}}function v(k){l?f(k):d(k)}function x(k){s?c(k):h(k)}function b(){for(var k=s?ng.cluster:ng.nonCluster,A=0;A<k.length;A++){var L=k[A],_=a[L];_&&(n.setOptions(u.layerIds[L],"setLayoutProperty",_.layout),_.layout.visibility==="visible"&&(L!=="cluster"&&u.setSourceData(L,_),n.setOptions(u.layerIds[L],"setPaintProperty",_.paint)))}}var p=this.isHidden,E=r.visible!==!0;E?p||v():p?E||x():l!==s?(v(),x()):(this.below!==o&&(v(!0),x(!0)),b()),this.clusterEnabled=s,this.isHidden=E,this.below=o,t[0].trace._glTrace=this};Uk.dispose=function(){for(var t=this.subplot.map,r=this.clusterEnabled?ng.cluster:ng.nonCluster,n=r.length-1;n>=0;n--){var i=r[n];t.removeLayer(this.layerIds[i]),t.removeSource(this.sourceIds[i])}};FHe.exports=function(t,r){var n=r[0].trace,i=n.cluster&&n.cluster.enabled,a=n.visible!==!0,o=new zHe(t,n.uid,i,a),s=DHe(t.gd,r),l=o.below=t.belowLookup["trace-"+n.uid],u,c,f;if(i)for(o.addSource("circle",s.circle,n.cluster),u=0;u<ng.cluster.length;u++)c=ng.cluster[u],f=s[c],o.addLayer(c,f,l);else for(u=0;u<ng.nonCluster.length;u++)c=ng.nonCluster[u],f=s[c],o.addSource(c,f,n.cluster),o.addLayer(c,f,l);return r[0].trace._glTrace=o,o}});var i7=ye((x1r,BHe)=>{"use strict";var sjt=Nc(),vJ=Mr(),ljt=oT(),ujt=vJ.fillText,cjt=es().BADNUM,fjt=wx().traceLayerPrefix;function hjt(e,t,r){var n=e.cd,i=n[0].trace,a=e.xa,o=e.ya,s=e.subplot,l=[],u=fjt+i.uid+"-circle",c=i.cluster&&i.cluster.enabled;if(c){var f=s.map.queryRenderedFeatures(null,{layers:[u]});l=f.map(function(M){return M.id})}var h=t>=0?Math.floor((t+180)/360):Math.ceil((t-180)/360),d=h*360,v=t-d;function x(M){var g=M.lonlat;if(g[0]===cjt||c&&l.indexOf(M.i+1)===-1)return 1/0;var P=vJ.modHalf(g[0],360),T=g[1],F=s.project([P,T]),q=F.x-a.c2p([v,T]),V=F.y-o.c2p([P,r]),H=Math.max(3,M.mrc||0);return Math.max(Math.sqrt(q*q+V*V)-H,1-3/H)}if(sjt.getClosest(n,x,e),e.index!==!1){var b=n[e.index],p=b.lonlat,E=[vJ.modHalf(p[0],360)+d,p[1]],k=a.c2p(E),A=o.c2p(E),L=b.mrc||1;e.x0=k-L,e.x1=k+L,e.y0=A-L,e.y1=A+L;var _={};_[i.subplot]={_subplot:s};var C=i._module.formatLabels(b,i,_);return e.lonLabel=C.lonLabel,e.latLabel=C.latLabel,e.color=ljt(i,b),e.extraText=OHe(i,b,n[0].t.labels),e.hovertemplate=i.hovertemplate,[e]}}function OHe(e,t,r){if(e.hovertemplate)return;var n=t.hi||e.hoverinfo,i=n.split("+"),a=i.indexOf("all")!==-1,o=i.indexOf("lon")!==-1,s=i.indexOf("lat")!==-1,l=t.lonlat,u=[];function c(f){return f+"\xB0"}return a||o&&s?u.push("("+c(l[1])+", "+c(l[0])+")"):o?u.push(r.lon+c(l[0])):s&&u.push(r.lat+c(l[1])),(a||i.indexOf("text")!==-1)&&ujt(t,e,u),u.join("<br>")}BHe.exports={hoverPoints:hjt,getExtraText:OHe}});var UHe=ye((b1r,NHe)=>{"use strict";NHe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t}});var HHe=ye((w1r,VHe)=>{"use strict";var djt=Mr(),vjt=lu(),pjt=es().BADNUM;VHe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s=n[0].trace,l;if(!vjt.hasMarkers(s))return[];if(r===!1)for(l=0;l<n.length;l++)n[l].selected=0;else for(l=0;l<n.length;l++){var u=n[l],c=u.lonlat;if(c[0]!==pjt){var f=[djt.modHalf(c[0],360),c[1]],h=[i.c2p(f),a.c2p(f)];r.contains(h,null,l,t)?(o.push({pointNumber:l,lon:c[0],lat:c[1]}),u.selected=1):u.selected=0}}return o}});var jHe=ye((pJ,gJ)=>{(function(e,t){typeof pJ=="object"&&typeof gJ!="undefined"?gJ.exports=t():(e=typeof globalThis!="undefined"?globalThis:e||self,e.maplibregl=t())})(pJ,function(){"use strict";var e={},t={};function r(i,a,o){if(t[i]=o,i==="index"){var s="var sharedModule = {}; ("+t.shared+")(sharedModule); ("+t.worker+")(sharedModule);",l={};return t.shared(l),t.index(e,l),typeof window!="undefined"&&e.setWorkerUrl(window.URL.createObjectURL(new Blob([s],{type:"text/javascript"}))),e}}r("shared",["exports"],function(i){"use strict";function a(R,S,D,j){return new(D||(D=Promise))(function(te,ue){function ve(at){try{Ze(j.next(at))}catch(Tt){ue(Tt)}}function De(at){try{Ze(j.throw(at))}catch(Tt){ue(Tt)}}function Ze(at){var Tt;at.done?te(at.value):(Tt=at.value,Tt instanceof D?Tt:new D(function(Ft){Ft(Tt)})).then(ve,De)}Ze((j=j.apply(R,S||[])).next())})}function o(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}typeof SuppressedError=="function"&&SuppressedError;var s=l;function l(R,S){this.x=R,this.y=S}l.prototype={clone:function(){return new l(this.x,this.y)},add:function(R){return this.clone()._add(R)},sub:function(R){return this.clone()._sub(R)},multByPoint:function(R){return this.clone()._multByPoint(R)},divByPoint:function(R){return this.clone()._divByPoint(R)},mult:function(R){return this.clone()._mult(R)},div:function(R){return this.clone()._div(R)},rotate:function(R){return this.clone()._rotate(R)},rotateAround:function(R,S){return this.clone()._rotateAround(R,S)},matMult:function(R){return this.clone()._matMult(R)},unit:function(){return this.clone()._unit()},perp:function(){return this.clone()._perp()},round:function(){return this.clone()._round()},mag:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},equals:function(R){return this.x===R.x&&this.y===R.y},dist:function(R){return Math.sqrt(this.distSqr(R))},distSqr:function(R){var S=R.x-this.x,D=R.y-this.y;return S*S+D*D},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(R){return Math.atan2(this.y-R.y,this.x-R.x)},angleWith:function(R){return this.angleWithSep(R.x,R.y)},angleWithSep:function(R,S){return Math.atan2(this.x*S-this.y*R,this.x*R+this.y*S)},_matMult:function(R){var S=R[2]*this.x+R[3]*this.y;return this.x=R[0]*this.x+R[1]*this.y,this.y=S,this},_add:function(R){return this.x+=R.x,this.y+=R.y,this},_sub:function(R){return this.x-=R.x,this.y-=R.y,this},_mult:function(R){return this.x*=R,this.y*=R,this},_div:function(R){return this.x/=R,this.y/=R,this},_multByPoint:function(R){return this.x*=R.x,this.y*=R.y,this},_divByPoint:function(R){return this.x/=R.x,this.y/=R.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var R=this.y;return this.y=this.x,this.x=-R,this},_rotate:function(R){var S=Math.cos(R),D=Math.sin(R),j=D*this.x+S*this.y;return this.x=S*this.x-D*this.y,this.y=j,this},_rotateAround:function(R,S){var D=Math.cos(R),j=Math.sin(R),te=S.y+j*(this.x-S.x)+D*(this.y-S.y);return this.x=S.x+D*(this.x-S.x)-j*(this.y-S.y),this.y=te,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},l.convert=function(R){return R instanceof l?R:Array.isArray(R)?new l(R[0],R[1]):R};var u=o(s),c=f;function f(R,S,D,j){this.cx=3*R,this.bx=3*(D-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(j-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=S,this.p2x=D,this.p2y=j}f.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,S){if(S===void 0&&(S=1e-6),R<0)return 0;if(R>1)return 1;for(var D=R,j=0;j<8;j++){var te=this.sampleCurveX(D)-R;if(Math.abs(te)<S)return D;var ue=this.sampleCurveDerivativeX(D);if(Math.abs(ue)<1e-6)break;D-=te/ue}var ve=0,De=1;for(D=R,j=0;j<20&&(te=this.sampleCurveX(D),!(Math.abs(te-R)<S));j++)R>te?ve=D:De=D,D=.5*(De-ve)+ve;return D},solve:function(R,S){return this.sampleCurveY(this.solveCurveX(R,S))}};var h=o(c);let d,v;function x(){return d==null&&(d=typeof OffscreenCanvas!="undefined"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),d}function b(){if(v==null&&(v=!1,x())){let S=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(S){for(let j=0;j<5*5;j++){let te=4*j;S.fillStyle=`rgb(${te},${te+1},${te+2})`,S.fillRect(j%5,Math.floor(j/5),1,1)}let D=S.getImageData(0,0,5,5).data;for(let j=0;j<5*5*4;j++)if(j%4!=3&&D[j]!==j){v=!0;break}}}return v||!1}function p(R,S,D,j){let te=new h(R,S,D,j);return ue=>te.solve(ue)}let E=p(.25,.1,.25,1);function k(R,S,D){return Math.min(D,Math.max(S,R))}function A(R,S,D){let j=D-S,te=((R-S)%j+j)%j+S;return te===S?D:te}function L(R,...S){for(let D of S)for(let j in D)R[j]=D[j];return R}let _=1;function C(R,S,D){let j={};for(let te in R)j[te]=S.call(this,R[te],te,R);return j}function M(R,S,D){let j={};for(let te in R)S.call(this,R[te],te,R)&&(j[te]=R[te]);return j}function g(R){return Array.isArray(R)?R.map(g):typeof R=="object"&&R?C(R,g):R}let P={};function T(R){P[R]||(typeof console!="undefined"&&console.warn(R),P[R]=!0)}function F(R,S,D){return(D.y-R.y)*(S.x-R.x)>(S.y-R.y)*(D.x-R.x)}function q(R){return typeof WorkerGlobalScope!="undefined"&&R!==void 0&&R instanceof WorkerGlobalScope}let V=null;function H(R){return typeof ImageBitmap!="undefined"&&R instanceof ImageBitmap}let X="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function G(R,S,D,j,te){return a(this,void 0,void 0,function*(){if(typeof VideoFrame=="undefined")throw new Error("VideoFrame not supported");let ue=new VideoFrame(R,{timestamp:0});try{let ve=ue==null?void 0:ue.format;if(!ve||!ve.startsWith("BGR")&&!ve.startsWith("RGB"))throw new Error(`Unrecognized format ${ve}`);let De=ve.startsWith("BGR"),Ze=new Uint8ClampedArray(j*te*4);if(yield ue.copyTo(Ze,function(at,Tt,Ft,Qt,sr){let Tr=4*Math.max(-Tt,0),Pr=(Math.max(0,Ft)-Ft)*Qt*4+Tr,$r=4*Qt,ni=Math.max(0,Tt),Di=Math.max(0,Ft);return{rect:{x:ni,y:Di,width:Math.min(at.width,Tt+Qt)-ni,height:Math.min(at.height,Ft+sr)-Di},layout:[{offset:Pr,stride:$r}]}}(R,S,D,j,te)),De)for(let at=0;at<Ze.length;at+=4){let Tt=Ze[at];Ze[at]=Ze[at+2],Ze[at+2]=Tt}return Ze}finally{ue.close()}})}let N,W,re="AbortError";function ae(){return new Error(re)}let _e={MAX_PARALLEL_IMAGE_REQUESTS:16,MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:8,MAX_TILE_CACHE_ZOOM_LEVELS:5,REGISTERED_PROTOCOLS:{},WORKER_URL:""};function Me(R){return _e.REGISTERED_PROTOCOLS[R.substring(0,R.indexOf("://"))]}let ke="global-dispatcher";class ge extends Error{constructor(S,D,j,te){super(`AJAXError: ${D} (${S}): ${j}`),this.status=S,this.statusText=D,this.url=j,this.body=te}}let ie=()=>q(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,Te=function(R,S){if(/:\/\//.test(R.url)&&!/^https?:|^file:/.test(R.url)){let j=Me(R.url);if(j)return j(R,S);if(q(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,targetMapId:ke},S)}if(!(/^file:/.test(D=R.url)||/^file:/.test(ie())&&!/^\w+:/.test(D))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(j,te){return a(this,void 0,void 0,function*(){let ue=new Request(j.url,{method:j.method||"GET",body:j.body,credentials:j.credentials,headers:j.headers,cache:j.cache,referrer:ie(),signal:te.signal});j.type!=="json"||ue.headers.has("Accept")||ue.headers.set("Accept","application/json");let ve=yield fetch(ue);if(!ve.ok){let at=yield ve.blob();throw new ge(ve.status,ve.statusText,j.url,at)}let De;De=j.type==="arrayBuffer"||j.type==="image"?ve.arrayBuffer():j.type==="json"?ve.json():ve.text();let Ze=yield De;if(te.signal.aborted)throw ae();return{data:Ze,cacheControl:ve.headers.get("Cache-Control"),expires:ve.headers.get("Expires")}})}(R,S);if(q(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:R,mustQueue:!0,targetMapId:ke},S)}var D;return function(j,te){return new Promise((ue,ve)=>{var De;let Ze=new XMLHttpRequest;Ze.open(j.method||"GET",j.url,!0),j.type!=="arrayBuffer"&&j.type!=="image"||(Ze.responseType="arraybuffer");for(let at in j.headers)Ze.setRequestHeader(at,j.headers[at]);j.type==="json"&&(Ze.responseType="text",!((De=j.headers)===null||De===void 0)&&De.Accept||Ze.setRequestHeader("Accept","application/json")),Ze.withCredentials=j.credentials==="include",Ze.onerror=()=>{ve(new Error(Ze.statusText))},Ze.onload=()=>{if(!te.signal.aborted)if((Ze.status>=200&&Ze.status<300||Ze.status===0)&&Ze.response!==null){let at=Ze.response;if(j.type==="json")try{at=JSON.parse(Ze.response)}catch(Tt){return void ve(Tt)}ue({data:at,cacheControl:Ze.getResponseHeader("Cache-Control"),expires:Ze.getResponseHeader("Expires")})}else{let at=new Blob([Ze.response],{type:Ze.getResponseHeader("Content-Type")});ve(new ge(Ze.status,Ze.statusText,j.url,at))}},te.signal.addEventListener("abort",()=>{Ze.abort(),ve(ae())}),Ze.send(j.body)})}(R,S)};function Ee(R){if(!R||R.indexOf("://")<=0||R.indexOf("data:image/")===0||R.indexOf("blob:")===0)return!0;let S=new URL(R),D=window.location;return S.protocol===D.protocol&&S.host===D.host}function Ae(R,S,D){D[R]&&D[R].indexOf(S)!==-1||(D[R]=D[R]||[],D[R].push(S))}function ze(R,S,D){if(D&&D[R]){let j=D[R].indexOf(S);j!==-1&&D[R].splice(j,1)}}class Ce{constructor(S,D={}){L(this,D),this.type=S}}class me extends Ce{constructor(S,D={}){super("error",L({error:S},D))}}class Re{on(S,D){return this._listeners=this._listeners||{},Ae(S,D,this._listeners),this}off(S,D){return ze(S,D,this._listeners),ze(S,D,this._oneTimeListeners),this}once(S,D){return D?(this._oneTimeListeners=this._oneTimeListeners||{},Ae(S,D,this._oneTimeListeners),this):new Promise(j=>this.once(S,j))}fire(S,D){typeof S=="string"&&(S=new Ce(S,D||{}));let j=S.type;if(this.listens(j)){S.target=this;let te=this._listeners&&this._listeners[j]?this._listeners[j].slice():[];for(let De of te)De.call(this,S);let ue=this._oneTimeListeners&&this._oneTimeListeners[j]?this._oneTimeListeners[j].slice():[];for(let De of ue)ze(j,De,this._oneTimeListeners),De.call(this,S);let ve=this._eventedParent;ve&&(L(S,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),ve.fire(S))}else S instanceof me&&console.error(S.error);return this}listens(S){return this._listeners&&this._listeners[S]&&this._listeners[S].length>0||this._oneTimeListeners&&this._oneTimeListeners[S]&&this._oneTimeListeners[S].length>0||this._eventedParent&&this._eventedParent.listens(S)}setEventedParent(S,D){return this._eventedParent=S,this._eventedParentData=D,this}}var ce={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let Ge=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function nt(R,S){let D={};for(let j in R)j!=="ref"&&(D[j]=R[j]);return Ge.forEach(j=>{j in S&&(D[j]=S[j])}),D}function ct(R,S){if(Array.isArray(R)){if(!Array.isArray(S)||R.length!==S.length)return!1;for(let D=0;D<R.length;D++)if(!ct(R[D],S[D]))return!1;return!0}if(typeof R=="object"&&R!==null&&S!==null){if(typeof S!="object"||Object.keys(R).length!==Object.keys(S).length)return!1;for(let D in R)if(!ct(R[D],S[D]))return!1;return!0}return R===S}function qt(R,S){R.push(S)}function rt(R,S,D){qt(D,{command:"addSource",args:[R,S[R]]})}function ot(R,S,D){qt(S,{command:"removeSource",args:[R]}),D[R]=!0}function Rt(R,S,D,j){ot(R,D,j),rt(R,S,D)}function kt(R,S,D){let j;for(j in R[D])if(Object.prototype.hasOwnProperty.call(R[D],j)&&j!=="data"&&!ct(R[D][j],S[D][j]))return!1;for(j in S[D])if(Object.prototype.hasOwnProperty.call(S[D],j)&&j!=="data"&&!ct(R[D][j],S[D][j]))return!1;return!0}function Ct(R,S,D,j,te,ue){R=R||{},S=S||{};for(let ve in R)Object.prototype.hasOwnProperty.call(R,ve)&&(ct(R[ve],S[ve])||D.push({command:ue,args:[j,ve,S[ve],te]}));for(let ve in S)Object.prototype.hasOwnProperty.call(S,ve)&&!Object.prototype.hasOwnProperty.call(R,ve)&&(ct(R[ve],S[ve])||D.push({command:ue,args:[j,ve,S[ve],te]}))}function Yt(R){return R.id}function xr(R,S){return R[S.id]=S,R}class er{constructor(S,D,j,te){this.message=(S?`${S}: `:"")+j,te&&(this.identifier=te),D!=null&&D.__line__&&(this.line=D.__line__)}}function Ke(R,...S){for(let D of S)for(let j in D)R[j]=D[j];return R}class xt extends Error{constructor(S,D){super(D),this.message=D,this.key=S}}class bt{constructor(S,D=[]){this.parent=S,this.bindings={};for(let[j,te]of D)this.bindings[j]=te}concat(S){return new bt(this,S)}get(S){if(this.bindings[S])return this.bindings[S];if(this.parent)return this.parent.get(S);throw new Error(`${S} not found in scope.`)}has(S){return!!this.bindings[S]||!!this.parent&&this.parent.has(S)}}let Lt={kind:"null"},St={kind:"number"},Et={kind:"string"},dt={kind:"boolean"},Ht={kind:"color"},$t={kind:"object"},fr={kind:"value"},_r={kind:"collator"},Br={kind:"formatted"},Or={kind:"padding"},Nr={kind:"resolvedImage"},ut={kind:"variableAnchorOffsetCollection"};function Ne(R,S){return{kind:"array",itemType:R,N:S}}function Ye(R){if(R.kind==="array"){let S=Ye(R.itemType);return typeof R.N=="number"?`array<${S}, ${R.N}>`:R.itemType.kind==="value"?"array":`array<${S}>`}return R.kind}let Ve=[Lt,St,Et,dt,Ht,Br,$t,Ne(fr),Or,Nr,ut];function Xe(R,S){if(S.kind==="error")return null;if(R.kind==="array"){if(S.kind==="array"&&(S.N===0&&S.itemType.kind==="value"||!Xe(R.itemType,S.itemType))&&(typeof R.N!="number"||R.N===S.N))return null}else{if(R.kind===S.kind)return null;if(R.kind==="value"){for(let D of Ve)if(!Xe(D,S))return null}}return`Expected ${Ye(R)} but found ${Ye(S)} instead.`}function ht(R,S){return S.some(D=>D.kind===R.kind)}function Le(R,S){return S.some(D=>D==="null"?R===null:D==="array"?Array.isArray(R):D==="object"?R&&!Array.isArray(R)&&typeof R=="object":D===typeof R)}function xe(R,S){return R.kind==="array"&&S.kind==="array"?R.itemType.kind===S.itemType.kind&&typeof R.N=="number":R.kind===S.kind}let Se=.96422,lt=.82521,Gt=4/29,Vt=6/29,ar=3*Vt*Vt,Qr=Vt*Vt*Vt,ai=Math.PI/180,jr=180/Math.PI;function ri(R){return(R%=360)<0&&(R+=360),R}function bi([R,S,D,j]){let te,ue,ve=Wi((.2225045*(R=nn(R))+.7168786*(S=nn(S))+.0606169*(D=nn(D)))/1);R===S&&S===D?te=ue=ve:(te=Wi((.4360747*R+.3850649*S+.1430804*D)/Se),ue=Wi((.0139322*R+.0971045*S+.7141733*D)/lt));let De=116*ve-16;return[De<0?0:De,500*(te-ve),200*(ve-ue),j]}function nn(R){return R<=.04045?R/12.92:Math.pow((R+.055)/1.055,2.4)}function Wi(R){return R>Qr?Math.pow(R,1/3):R/ar+Gt}function Ni([R,S,D,j]){let te=(R+16)/116,ue=isNaN(S)?te:te+S/500,ve=isNaN(D)?te:te-D/200;return te=1*$i(te),ue=Se*$i(ue),ve=lt*$i(ve),[_n(3.1338561*ue-1.6168667*te-.4906146*ve),_n(-.9787684*ue+1.9161415*te+.033454*ve),_n(.0719453*ue-.2289914*te+1.4052427*ve),j]}function _n(R){return(R=R<=.00304?12.92*R:1.055*Math.pow(R,1/2.4)-.055)<0?0:R>1?1:R}function $i(R){return R>Vt?R*R*R:ar*(R-Gt)}function zn(R){return parseInt(R.padEnd(2,R),16)/255}function Wn(R,S){return It(S?R/100:R,0,1)}function It(R,S,D){return Math.min(Math.max(S,R),D)}function ft(R){return!R.some(Number.isNaN)}let jt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Zt{constructor(S,D,j,te=1,ue=!0){this.r=S,this.g=D,this.b=j,this.a=te,ue||(this.r*=te,this.g*=te,this.b*=te,te||this.overwriteGetter("rgb",[S,D,j,te]))}static parse(S){if(S instanceof Zt)return S;if(typeof S!="string")return;let D=function(j){if((j=j.toLowerCase().trim())==="transparent")return[0,0,0,0];let te=jt[j];if(te){let[ve,De,Ze]=te;return[ve/255,De/255,Ze/255,1]}if(j.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(j)){let ve=j.length<6?1:2,De=1;return[zn(j.slice(De,De+=ve)),zn(j.slice(De,De+=ve)),zn(j.slice(De,De+=ve)),zn(j.slice(De,De+ve)||"ff")]}if(j.startsWith("rgb")){let ve=j.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(ve){let[De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr,$r,ni,Di]=ve,pi=[Tt||" ",sr||" ",$r].join("");if(pi===" "||pi===" /"||pi===",,"||pi===",,,"){let ki=[at,Qt,Pr].join(""),Zi=ki==="%%%"?100:ki===""?255:0;if(Zi){let ta=[It(+Ze/Zi,0,1),It(+Ft/Zi,0,1),It(+Tr/Zi,0,1),ni?Wn(+ni,Di):1];if(ft(ta))return ta}}return}}let ue=j.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(ue){let[ve,De,Ze,at,Tt,Ft,Qt,sr,Tr]=ue,Pr=[Ze||" ",Tt||" ",Qt].join("");if(Pr===" "||Pr===" /"||Pr===",,"||Pr===",,,"){let $r=[+De,It(+at,0,100),It(+Ft,0,100),sr?Wn(+sr,Tr):1];if(ft($r))return function([ni,Di,pi,ki]){function Zi(ta){let Va=(ta+ni/30)%12,Io=Di*Math.min(pi,1-pi);return pi-Io*Math.max(-1,Math.min(Va-3,9-Va,1))}return ni=ri(ni),Di/=100,pi/=100,[Zi(0),Zi(8),Zi(4),ki]}($r)}}}(S);return D?new Zt(...D,!1):void 0}get rgb(){let{r:S,g:D,b:j,a:te}=this,ue=te||1/0;return this.overwriteGetter("rgb",[S/ue,D/ue,j/ue,te])}get hcl(){return this.overwriteGetter("hcl",function(S){let[D,j,te,ue]=bi(S),ve=Math.sqrt(j*j+te*te);return[Math.round(1e4*ve)?ri(Math.atan2(te,j)*jr):NaN,ve,D,ue]}(this.rgb))}get lab(){return this.overwriteGetter("lab",bi(this.rgb))}overwriteGetter(S,D){return Object.defineProperty(this,S,{value:D}),D}toString(){let[S,D,j,te]=this.rgb;return`rgba(${[S,D,j].map(ue=>Math.round(255*ue)).join(",")},${te})`}}Zt.black=new Zt(0,0,0,1),Zt.white=new Zt(1,1,1,1),Zt.transparent=new Zt(0,0,0,0),Zt.red=new Zt(1,0,0,1);class yr{constructor(S,D,j){this.sensitivity=S?D?"variant":"case":D?"accent":"base",this.locale=j,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(S,D){return this.collator.compare(S,D)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Fr{constructor(S,D,j,te,ue){this.text=S,this.image=D,this.scale=j,this.fontStack=te,this.textColor=ue}}class Zr{constructor(S){this.sections=S}static fromString(S){return new Zr([new Fr(S,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(S=>S.text.length!==0||S.image&&S.image.name.length!==0)}static factory(S){return S instanceof Zr?S:Zr.fromString(S)}toString(){return this.sections.length===0?"":this.sections.map(S=>S.text).join("")}}class Vr{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof Vr)return S;if(typeof S=="number")return new Vr([S,S,S,S]);if(Array.isArray(S)&&!(S.length<1||S.length>4)){for(let D of S)if(typeof D!="number")return;switch(S.length){case 1:S=[S[0],S[0],S[0],S[0]];break;case 2:S=[S[0],S[1],S[0],S[1]];break;case 3:S=[S[0],S[1],S[2],S[1]]}return new Vr(S)}}toString(){return JSON.stringify(this.values)}}let gi=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class Si{constructor(S){this.values=S.slice()}static parse(S){if(S instanceof Si)return S;if(Array.isArray(S)&&!(S.length<1)&&S.length%2==0){for(let D=0;D<S.length;D+=2){let j=S[D],te=S[D+1];if(typeof j!="string"||!gi.has(j)||!Array.isArray(te)||te.length!==2||typeof te[0]!="number"||typeof te[1]!="number")return}return new Si(S)}}toString(){return JSON.stringify(this.values)}}class Mi{constructor(S){this.name=S.name,this.available=S.available}toString(){return this.name}static fromString(S){return S?new Mi({name:S,available:!1}):null}}function Pi(R,S,D,j){return typeof R=="number"&&R>=0&&R<=255&&typeof S=="number"&&S>=0&&S<=255&&typeof D=="number"&&D>=0&&D<=255?j===void 0||typeof j=="number"&&j>=0&&j<=1?null:`Invalid rgba value [${[R,S,D,j].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof j=="number"?[R,S,D,j]:[R,S,D]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function Gi(R){if(R===null||typeof R=="string"||typeof R=="boolean"||typeof R=="number"||R instanceof Zt||R instanceof yr||R instanceof Zr||R instanceof Vr||R instanceof Si||R instanceof Mi)return!0;if(Array.isArray(R)){for(let S of R)if(!Gi(S))return!1;return!0}if(typeof R=="object"){for(let S in R)if(!Gi(R[S]))return!1;return!0}return!1}function Ki(R){if(R===null)return Lt;if(typeof R=="string")return Et;if(typeof R=="boolean")return dt;if(typeof R=="number")return St;if(R instanceof Zt)return Ht;if(R instanceof yr)return _r;if(R instanceof Zr)return Br;if(R instanceof Vr)return Or;if(R instanceof Si)return ut;if(R instanceof Mi)return Nr;if(Array.isArray(R)){let S=R.length,D;for(let j of R){let te=Ki(j);if(D){if(D===te)continue;D=fr;break}D=te}return Ne(D||fr,S)}return $t}function ka(R){let S=typeof R;return R===null?"":S==="string"||S==="number"||S==="boolean"?String(R):R instanceof Zt||R instanceof Zr||R instanceof Vr||R instanceof Si||R instanceof Mi?R.toString():JSON.stringify(R)}class jn{constructor(S,D){this.type=S,this.value=D}static parse(S,D){if(S.length!==2)return D.error(`'literal' expression requires exactly one argument, but found ${S.length-1} instead.`);if(!Gi(S[1]))return D.error("invalid value");let j=S[1],te=Ki(j),ue=D.expectedType;return te.kind!=="array"||te.N!==0||!ue||ue.kind!=="array"||typeof ue.N=="number"&&ue.N!==0||(te=ue),new jn(te,j)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class la{constructor(S){this.name="ExpressionEvaluationError",this.message=S}toJSON(){return this.message}}let Fa={string:Et,number:St,boolean:dt,object:$t};class Ra{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let j,te=1,ue=S[0];if(ue==="array"){let De,Ze;if(S.length>2){let at=S[1];if(typeof at!="string"||!(at in Fa)||at==="object")return D.error('The item type argument of "array" must be one of string, number, boolean',1);De=Fa[at],te++}else De=fr;if(S.length>3){if(S[2]!==null&&(typeof S[2]!="number"||S[2]<0||S[2]!==Math.floor(S[2])))return D.error('The length argument to "array" must be a positive integer literal',2);Ze=S[2],te++}j=Ne(De,Ze)}else{if(!Fa[ue])throw new Error(`Types doesn't contain name = ${ue}`);j=Fa[ue]}let ve=[];for(;te<S.length;te++){let De=D.parse(S[te],te,fr);if(!De)return null;ve.push(De)}return new Ra(j,ve)}evaluate(S){for(let D=0;D<this.args.length;D++){let j=this.args[D].evaluate(S);if(!Xe(this.type,Ki(j)))return j;if(D===this.args.length-1)throw new la(`Expected value to be of type ${Ye(this.type)}, but found ${Ye(Ki(j))} instead.`)}throw new Error}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}let jo={"to-boolean":dt,"to-color":Ht,"to-number":St,"to-string":Et};class oa{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let j=S[0];if(!jo[j])throw new Error(`Can't parse ${j} as it is not part of the known types`);if((j==="to-boolean"||j==="to-string")&&S.length!==2)return D.error("Expected one argument.");let te=jo[j],ue=[];for(let ve=1;ve<S.length;ve++){let De=D.parse(S[ve],ve,fr);if(!De)return null;ue.push(De)}return new oa(te,ue)}evaluate(S){switch(this.type.kind){case"boolean":return!!this.args[0].evaluate(S);case"color":{let D,j;for(let te of this.args){if(D=te.evaluate(S),j=null,D instanceof Zt)return D;if(typeof D=="string"){let ue=S.parseColor(D);if(ue)return ue}else if(Array.isArray(D)&&(j=D.length<3||D.length>4?`Invalid rbga value ${JSON.stringify(D)}: expected an array containing either three or four numeric values.`:Pi(D[0],D[1],D[2],D[3]),!j))return new Zt(D[0]/255,D[1]/255,D[2]/255,D[3])}throw new la(j||`Could not parse color from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"padding":{let D;for(let j of this.args){D=j.evaluate(S);let te=Vr.parse(D);if(te)return te}throw new la(`Could not parse padding from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"variableAnchorOffsetCollection":{let D;for(let j of this.args){D=j.evaluate(S);let te=Si.parse(D);if(te)return te}throw new la(`Could not parse variableAnchorOffsetCollection from value '${typeof D=="string"?D:JSON.stringify(D)}'`)}case"number":{let D=null;for(let j of this.args){if(D=j.evaluate(S),D===null)return 0;let te=Number(D);if(!isNaN(te))return te}throw new la(`Could not convert ${JSON.stringify(D)} to number.`)}case"formatted":return Zr.fromString(ka(this.args[0].evaluate(S)));case"resolvedImage":return Mi.fromString(ka(this.args[0].evaluate(S)));default:return ka(this.args[0].evaluate(S))}}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}let Sn=["Unknown","Point","LineString","Polygon"];class Ha{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Sn[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(S){let D=this._parseColorCache[S];return D||(D=this._parseColorCache[S]=Zt.parse(S)),D}}class oo{constructor(S,D,j=[],te,ue=new bt,ve=[]){this.registry=S,this.path=j,this.key=j.map(De=>`[${De}]`).join(""),this.scope=ue,this.errors=ve,this.expectedType=te,this._isConstant=D}parse(S,D,j,te,ue={}){return D?this.concat(D,j,te)._parse(S,ue):this._parse(S,ue)}_parse(S,D){function j(te,ue,ve){return ve==="assert"?new Ra(ue,[te]):ve==="coerce"?new oa(ue,[te]):te}if(S!==null&&typeof S!="string"&&typeof S!="boolean"&&typeof S!="number"||(S=["literal",S]),Array.isArray(S)){if(S.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let te=S[0];if(typeof te!="string")return this.error(`Expression name must be a string, but found ${typeof te} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let ue=this.registry[te];if(ue){let ve=ue.parse(S,this);if(!ve)return null;if(this.expectedType){let De=this.expectedType,Ze=ve.type;if(De.kind!=="string"&&De.kind!=="number"&&De.kind!=="boolean"&&De.kind!=="object"&&De.kind!=="array"||Ze.kind!=="value")if(De.kind!=="color"&&De.kind!=="formatted"&&De.kind!=="resolvedImage"||Ze.kind!=="value"&&Ze.kind!=="string")if(De.kind!=="padding"||Ze.kind!=="value"&&Ze.kind!=="number"&&Ze.kind!=="array")if(De.kind!=="variableAnchorOffsetCollection"||Ze.kind!=="value"&&Ze.kind!=="array"){if(this.checkSubtype(De,Ze))return null}else ve=j(ve,De,D.typeAnnotation||"coerce");else ve=j(ve,De,D.typeAnnotation||"coerce");else ve=j(ve,De,D.typeAnnotation||"coerce");else ve=j(ve,De,D.typeAnnotation||"assert")}if(!(ve instanceof jn)&&ve.type.kind!=="resolvedImage"&&this._isConstant(ve)){let De=new Ha;try{ve=new jn(ve.type,ve.evaluate(De))}catch(Ze){return this.error(Ze.message),null}}return ve}return this.error(`Unknown expression "${te}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(S===void 0?"'undefined' value invalid. Use null instead.":typeof S=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof S} instead.`)}concat(S,D,j){let te=typeof S=="number"?this.path.concat(S):this.path,ue=j?this.scope.concat(j):this.scope;return new oo(this.registry,this._isConstant,te,D||null,ue,this.errors)}error(S,...D){let j=`${this.key}${D.map(te=>`[${te}]`).join("")}`;this.errors.push(new xt(j,S))}checkSubtype(S,D){let j=Xe(S,D);return j&&this.error(j),j}}class xn{constructor(S,D){this.type=D.type,this.bindings=[].concat(S),this.result=D}evaluate(S){return this.result.evaluate(S)}eachChild(S){for(let D of this.bindings)S(D[1]);S(this.result)}static parse(S,D){if(S.length<4)return D.error(`Expected at least 3 arguments, but found ${S.length-1} instead.`);let j=[];for(let ue=1;ue<S.length-1;ue+=2){let ve=S[ue];if(typeof ve!="string")return D.error(`Expected string, but found ${typeof ve} instead.`,ue);if(/[^a-zA-Z0-9_]/.test(ve))return D.error("Variable names must contain only alphanumeric characters or '_'.",ue);let De=D.parse(S[ue+1],ue+1);if(!De)return null;j.push([ve,De])}let te=D.parse(S[S.length-1],S.length-1,D.expectedType,j);return te?new xn(j,te):null}outputDefined(){return this.result.outputDefined()}}class _t{constructor(S,D){this.type=D.type,this.name=S,this.boundExpression=D}static parse(S,D){if(S.length!==2||typeof S[1]!="string")return D.error("'var' expression requires exactly one string literal argument.");let j=S[1];return D.scope.has(j)?new _t(j,D.scope.get(j)):D.error(`Unknown variable "${j}". Make sure "${j}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(S){return this.boundExpression.evaluate(S)}eachChild(){}outputDefined(){return!1}}class br{constructor(S,D,j){this.type=S,this.index=D,this.input=j}static parse(S,D){if(S.length!==3)return D.error(`Expected 2 arguments, but found ${S.length-1} instead.`);let j=D.parse(S[1],1,St),te=D.parse(S[2],2,Ne(D.expectedType||fr));return j&&te?new br(te.type.itemType,j,te):null}evaluate(S){let D=this.index.evaluate(S),j=this.input.evaluate(S);if(D<0)throw new la(`Array index out of bounds: ${D} < 0.`);if(D>=j.length)throw new la(`Array index out of bounds: ${D} > ${j.length-1}.`);if(D!==Math.floor(D))throw new la(`Array index must be an integer, but found ${D} instead.`);return j[D]}eachChild(S){S(this.index),S(this.input)}outputDefined(){return!1}}class Hr{constructor(S,D){this.type=dt,this.needle=S,this.haystack=D}static parse(S,D){if(S.length!==3)return D.error(`Expected 2 arguments, but found ${S.length-1} instead.`);let j=D.parse(S[1],1,fr),te=D.parse(S[2],2,fr);return j&&te?ht(j.type,[dt,Et,St,Lt,fr])?new Hr(j,te):D.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ye(j.type)} instead`):null}evaluate(S){let D=this.needle.evaluate(S),j=this.haystack.evaluate(S);if(!j)return!1;if(!Le(D,["boolean","string","number","null"]))throw new la(`Expected first argument to be of type boolean, string, number or null, but found ${Ye(Ki(D))} instead.`);if(!Le(j,["string","array"]))throw new la(`Expected second argument to be of type array or string, but found ${Ye(Ki(j))} instead.`);return j.indexOf(D)>=0}eachChild(S){S(this.needle),S(this.haystack)}outputDefined(){return!0}}class ti{constructor(S,D,j){this.type=St,this.needle=S,this.haystack=D,this.fromIndex=j}static parse(S,D){if(S.length<=2||S.length>=5)return D.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let j=D.parse(S[1],1,fr),te=D.parse(S[2],2,fr);if(!j||!te)return null;if(!ht(j.type,[dt,Et,St,Lt,fr]))return D.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ye(j.type)} instead`);if(S.length===4){let ue=D.parse(S[3],3,St);return ue?new ti(j,te,ue):null}return new ti(j,te)}evaluate(S){let D=this.needle.evaluate(S),j=this.haystack.evaluate(S);if(!Le(D,["boolean","string","number","null"]))throw new la(`Expected first argument to be of type boolean, string, number or null, but found ${Ye(Ki(D))} instead.`);let te;if(this.fromIndex&&(te=this.fromIndex.evaluate(S)),Le(j,["string"])){let ue=j.indexOf(D,te);return ue===-1?-1:[...j.slice(0,ue)].length}if(Le(j,["array"]))return j.indexOf(D,te);throw new la(`Expected second argument to be of type array or string, but found ${Ye(Ki(j))} instead.`)}eachChild(S){S(this.needle),S(this.haystack),this.fromIndex&&S(this.fromIndex)}outputDefined(){return!1}}class zi{constructor(S,D,j,te,ue,ve){this.inputType=S,this.type=D,this.input=j,this.cases=te,this.outputs=ue,this.otherwise=ve}static parse(S,D){if(S.length<5)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if(S.length%2!=1)return D.error("Expected an even number of arguments.");let j,te;D.expectedType&&D.expectedType.kind!=="value"&&(te=D.expectedType);let ue={},ve=[];for(let at=2;at<S.length-1;at+=2){let Tt=S[at],Ft=S[at+1];Array.isArray(Tt)||(Tt=[Tt]);let Qt=D.concat(at);if(Tt.length===0)return Qt.error("Expected at least one branch label.");for(let Tr of Tt){if(typeof Tr!="number"&&typeof Tr!="string")return Qt.error("Branch labels must be numbers or strings.");if(typeof Tr=="number"&&Math.abs(Tr)>Number.MAX_SAFE_INTEGER)return Qt.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Tr=="number"&&Math.floor(Tr)!==Tr)return Qt.error("Numeric branch labels must be integer values.");if(j){if(Qt.checkSubtype(j,Ki(Tr)))return null}else j=Ki(Tr);if(ue[String(Tr)]!==void 0)return Qt.error("Branch labels must be unique.");ue[String(Tr)]=ve.length}let sr=D.parse(Ft,at,te);if(!sr)return null;te=te||sr.type,ve.push(sr)}let De=D.parse(S[1],1,fr);if(!De)return null;let Ze=D.parse(S[S.length-1],S.length-1,te);return Ze?De.type.kind!=="value"&&D.concat(1).checkSubtype(j,De.type)?null:new zi(j,te,De,ue,ve,Ze):null}evaluate(S){let D=this.input.evaluate(S);return(Ki(D)===this.inputType&&this.outputs[this.cases[D]]||this.otherwise).evaluate(S)}eachChild(S){S(this.input),this.outputs.forEach(S),S(this.otherwise)}outputDefined(){return this.outputs.every(S=>S.outputDefined())&&this.otherwise.outputDefined()}}class Yi{constructor(S,D,j){this.type=S,this.branches=D,this.otherwise=j}static parse(S,D){if(S.length<4)return D.error(`Expected at least 3 arguments, but found only ${S.length-1}.`);if(S.length%2!=0)return D.error("Expected an odd number of arguments.");let j;D.expectedType&&D.expectedType.kind!=="value"&&(j=D.expectedType);let te=[];for(let ve=1;ve<S.length-1;ve+=2){let De=D.parse(S[ve],ve,dt);if(!De)return null;let Ze=D.parse(S[ve+1],ve+1,j);if(!Ze)return null;te.push([De,Ze]),j=j||Ze.type}let ue=D.parse(S[S.length-1],S.length-1,j);if(!ue)return null;if(!j)throw new Error("Can't infer output type");return new Yi(j,te,ue)}evaluate(S){for(let[D,j]of this.branches)if(D.evaluate(S))return j.evaluate(S);return this.otherwise.evaluate(S)}eachChild(S){for(let[D,j]of this.branches)S(D),S(j);S(this.otherwise)}outputDefined(){return this.branches.every(([S,D])=>D.outputDefined())&&this.otherwise.outputDefined()}}class an{constructor(S,D,j,te){this.type=S,this.input=D,this.beginIndex=j,this.endIndex=te}static parse(S,D){if(S.length<=2||S.length>=5)return D.error(`Expected 3 or 4 arguments, but found ${S.length-1} instead.`);let j=D.parse(S[1],1,fr),te=D.parse(S[2],2,St);if(!j||!te)return null;if(!ht(j.type,[Ne(fr),Et,fr]))return D.error(`Expected first argument to be of type array or string, but found ${Ye(j.type)} instead`);if(S.length===4){let ue=D.parse(S[3],3,St);return ue?new an(j.type,j,te,ue):null}return new an(j.type,j,te)}evaluate(S){let D=this.input.evaluate(S),j=this.beginIndex.evaluate(S),te;if(this.endIndex&&(te=this.endIndex.evaluate(S)),Le(D,["string"]))return[...D].slice(j,te).join("");if(Le(D,["array"]))return D.slice(j,te);throw new la(`Expected first argument to be of type array or string, but found ${Ye(Ki(D))} instead.`)}eachChild(S){S(this.input),S(this.beginIndex),this.endIndex&&S(this.endIndex)}outputDefined(){return!1}}function hi(R,S){let D=R.length-1,j,te,ue=0,ve=D,De=0;for(;ue<=ve;)if(De=Math.floor((ue+ve)/2),j=R[De],te=R[De+1],j<=S){if(De===D||S<te)return De;ue=De+1}else{if(!(j>S))throw new la("Input is not a number.");ve=De-1}return 0}class Ji{constructor(S,D,j){this.type=S,this.input=D,this.labels=[],this.outputs=[];for(let[te,ue]of j)this.labels.push(te),this.outputs.push(ue)}static parse(S,D){if(S.length-1<4)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return D.error("Expected an even number of arguments.");let j=D.parse(S[1],1,St);if(!j)return null;let te=[],ue=null;D.expectedType&&D.expectedType.kind!=="value"&&(ue=D.expectedType);for(let ve=1;ve<S.length;ve+=2){let De=ve===1?-1/0:S[ve],Ze=S[ve+1],at=ve,Tt=ve+1;if(typeof De!="number")return D.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',at);if(te.length&&te[te.length-1][0]>=De)return D.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',at);let Ft=D.parse(Ze,Tt,ue);if(!Ft)return null;ue=ue||Ft.type,te.push([De,Ft])}return new Ji(ue,j,te)}evaluate(S){let D=this.labels,j=this.outputs;if(D.length===1)return j[0].evaluate(S);let te=this.input.evaluate(S);if(te<=D[0])return j[0].evaluate(S);let ue=D.length;return te>=D[ue-1]?j[ue-1].evaluate(S):j[hi(D,te)].evaluate(S)}eachChild(S){S(this.input);for(let D of this.outputs)S(D)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function ua(R){return R&&R.__esModule&&Object.prototype.hasOwnProperty.call(R,"default")?R.default:R}var Fn=Sa;function Sa(R,S,D,j){this.cx=3*R,this.bx=3*(D-R)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*S,this.by=3*(j-S)-this.cy,this.ay=1-this.cy-this.by,this.p1x=R,this.p1y=S,this.p2x=D,this.p2y=j}Sa.prototype={sampleCurveX:function(R){return((this.ax*R+this.bx)*R+this.cx)*R},sampleCurveY:function(R){return((this.ay*R+this.by)*R+this.cy)*R},sampleCurveDerivativeX:function(R){return(3*this.ax*R+2*this.bx)*R+this.cx},solveCurveX:function(R,S){if(S===void 0&&(S=1e-6),R<0)return 0;if(R>1)return 1;for(var D=R,j=0;j<8;j++){var te=this.sampleCurveX(D)-R;if(Math.abs(te)<S)return D;var ue=this.sampleCurveDerivativeX(D);if(Math.abs(ue)<1e-6)break;D-=te/ue}var ve=0,De=1;for(D=R,j=0;j<20&&(te=this.sampleCurveX(D),!(Math.abs(te-R)<S));j++)R>te?ve=D:De=D,D=.5*(De-ve)+ve;return D},solve:function(R,S){return this.sampleCurveY(this.solveCurveX(R,S))}};var go=ua(Fn);function Oo(R,S,D){return R+D*(S-R)}function ho(R,S,D){return R.map((j,te)=>Oo(j,S[te],D))}let Mo={number:Oo,color:function(R,S,D,j="rgb"){switch(j){case"rgb":{let[te,ue,ve,De]=ho(R.rgb,S.rgb,D);return new Zt(te,ue,ve,De,!1)}case"hcl":{let[te,ue,ve,De]=R.hcl,[Ze,at,Tt,Ft]=S.hcl,Qt,sr;if(isNaN(te)||isNaN(Ze))isNaN(te)?isNaN(Ze)?Qt=NaN:(Qt=Ze,ve!==1&&ve!==0||(sr=at)):(Qt=te,Tt!==1&&Tt!==0||(sr=ue));else{let Di=Ze-te;Ze>te&&Di>180?Di-=360:Ze<te&&te-Ze>180&&(Di+=360),Qt=te+D*Di}let[Tr,Pr,$r,ni]=function([Di,pi,ki,Zi]){return Di=isNaN(Di)?0:Di*ai,Ni([ki,Math.cos(Di)*pi,Math.sin(Di)*pi,Zi])}([Qt,sr!=null?sr:Oo(ue,at,D),Oo(ve,Tt,D),Oo(De,Ft,D)]);return new Zt(Tr,Pr,$r,ni,!1)}case"lab":{let[te,ue,ve,De]=Ni(ho(R.lab,S.lab,D));return new Zt(te,ue,ve,De,!1)}}},array:ho,padding:function(R,S,D){return new Vr(ho(R.values,S.values,D))},variableAnchorOffsetCollection:function(R,S,D){let j=R.values,te=S.values;if(j.length!==te.length)throw new la(`Cannot interpolate values of different length. from: ${R.toString()}, to: ${S.toString()}`);let ue=[];for(let ve=0;ve<j.length;ve+=2){if(j[ve]!==te[ve])throw new la(`Cannot interpolate values containing mismatched anchors. from[${ve}]: ${j[ve]}, to[${ve}]: ${te[ve]}`);ue.push(j[ve]);let[De,Ze]=j[ve+1],[at,Tt]=te[ve+1];ue.push([Oo(De,at,D),Oo(Ze,Tt,D)])}return new Si(ue)}};class xo{constructor(S,D,j,te,ue){this.type=S,this.operator=D,this.interpolation=j,this.input=te,this.labels=[],this.outputs=[];for(let[ve,De]of ue)this.labels.push(ve),this.outputs.push(De)}static interpolationFactor(S,D,j,te){let ue=0;if(S.name==="exponential")ue=zs(D,S.base,j,te);else if(S.name==="linear")ue=zs(D,1,j,te);else if(S.name==="cubic-bezier"){let ve=S.controlPoints;ue=new go(ve[0],ve[1],ve[2],ve[3]).solve(zs(D,1,j,te))}return ue}static parse(S,D){let[j,te,ue,...ve]=S;if(!Array.isArray(te)||te.length===0)return D.error("Expected an interpolation type expression.",1);if(te[0]==="linear")te={name:"linear"};else if(te[0]==="exponential"){let at=te[1];if(typeof at!="number")return D.error("Exponential interpolation requires a numeric base.",1,1);te={name:"exponential",base:at}}else{if(te[0]!=="cubic-bezier")return D.error(`Unknown interpolation type ${String(te[0])}`,1,0);{let at=te.slice(1);if(at.length!==4||at.some(Tt=>typeof Tt!="number"||Tt<0||Tt>1))return D.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);te={name:"cubic-bezier",controlPoints:at}}}if(S.length-1<4)return D.error(`Expected at least 4 arguments, but found only ${S.length-1}.`);if((S.length-1)%2!=0)return D.error("Expected an even number of arguments.");if(ue=D.parse(ue,2,St),!ue)return null;let De=[],Ze=null;j==="interpolate-hcl"||j==="interpolate-lab"?Ze=Ht:D.expectedType&&D.expectedType.kind!=="value"&&(Ze=D.expectedType);for(let at=0;at<ve.length;at+=2){let Tt=ve[at],Ft=ve[at+1],Qt=at+3,sr=at+4;if(typeof Tt!="number")return D.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Qt);if(De.length&&De[De.length-1][0]>=Tt)return D.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Qt);let Tr=D.parse(Ft,sr,Ze);if(!Tr)return null;Ze=Ze||Tr.type,De.push([Tt,Tr])}return xe(Ze,St)||xe(Ze,Ht)||xe(Ze,Or)||xe(Ze,ut)||xe(Ze,Ne(St))?new xo(Ze,j,te,ue,De):D.error(`Type ${Ye(Ze)} is not interpolatable.`)}evaluate(S){let D=this.labels,j=this.outputs;if(D.length===1)return j[0].evaluate(S);let te=this.input.evaluate(S);if(te<=D[0])return j[0].evaluate(S);let ue=D.length;if(te>=D[ue-1])return j[ue-1].evaluate(S);let ve=hi(D,te),De=xo.interpolationFactor(this.interpolation,te,D[ve],D[ve+1]),Ze=j[ve].evaluate(S),at=j[ve+1].evaluate(S);switch(this.operator){case"interpolate":return Mo[this.type.kind](Ze,at,De);case"interpolate-hcl":return Mo.color(Ze,at,De,"hcl");case"interpolate-lab":return Mo.color(Ze,at,De,"lab")}}eachChild(S){S(this.input);for(let D of this.outputs)S(D)}outputDefined(){return this.outputs.every(S=>S.outputDefined())}}function zs(R,S,D,j){let te=j-D,ue=R-D;return te===0?0:S===1?ue/te:(Math.pow(S,ue)-1)/(Math.pow(S,te)-1)}class ks{constructor(S,D){this.type=S,this.args=D}static parse(S,D){if(S.length<2)return D.error("Expectected at least one argument.");let j=null,te=D.expectedType;te&&te.kind!=="value"&&(j=te);let ue=[];for(let De of S.slice(1)){let Ze=D.parse(De,1+ue.length,j,void 0,{typeAnnotation:"omit"});if(!Ze)return null;j=j||Ze.type,ue.push(Ze)}if(!j)throw new Error("No output type");let ve=te&&ue.some(De=>Xe(te,De.type));return new ks(ve?fr:j,ue)}evaluate(S){let D,j=null,te=0;for(let ue of this.args)if(te++,j=ue.evaluate(S),j&&j instanceof Mi&&!j.available&&(D||(D=j.name),j=null,te===this.args.length&&(j=D)),j!==null)break;return j}eachChild(S){this.args.forEach(S)}outputDefined(){return this.args.every(S=>S.outputDefined())}}function Zs(R,S){return R==="=="||R==="!="?S.kind==="boolean"||S.kind==="string"||S.kind==="number"||S.kind==="null"||S.kind==="value":S.kind==="string"||S.kind==="number"||S.kind==="value"}function Xs(R,S,D,j){return j.compare(S,D)===0}function wl(R,S,D){let j=R!=="=="&&R!=="!=";return class GHe{constructor(ue,ve,De){this.type=dt,this.lhs=ue,this.rhs=ve,this.collator=De,this.hasUntypedArgument=ue.type.kind==="value"||ve.type.kind==="value"}static parse(ue,ve){if(ue.length!==3&&ue.length!==4)return ve.error("Expected two or three arguments.");let De=ue[0],Ze=ve.parse(ue[1],1,fr);if(!Ze)return null;if(!Zs(De,Ze.type))return ve.concat(1).error(`"${De}" comparisons are not supported for type '${Ye(Ze.type)}'.`);let at=ve.parse(ue[2],2,fr);if(!at)return null;if(!Zs(De,at.type))return ve.concat(2).error(`"${De}" comparisons are not supported for type '${Ye(at.type)}'.`);if(Ze.type.kind!==at.type.kind&&Ze.type.kind!=="value"&&at.type.kind!=="value")return ve.error(`Cannot compare types '${Ye(Ze.type)}' and '${Ye(at.type)}'.`);j&&(Ze.type.kind==="value"&&at.type.kind!=="value"?Ze=new Ra(at.type,[Ze]):Ze.type.kind!=="value"&&at.type.kind==="value"&&(at=new Ra(Ze.type,[at])));let Tt=null;if(ue.length===4){if(Ze.type.kind!=="string"&&at.type.kind!=="string"&&Ze.type.kind!=="value"&&at.type.kind!=="value")return ve.error("Cannot use collator to compare non-string types.");if(Tt=ve.parse(ue[3],3,_r),!Tt)return null}return new GHe(Ze,at,Tt)}evaluate(ue){let ve=this.lhs.evaluate(ue),De=this.rhs.evaluate(ue);if(j&&this.hasUntypedArgument){let Ze=Ki(ve),at=Ki(De);if(Ze.kind!==at.kind||Ze.kind!=="string"&&Ze.kind!=="number")throw new la(`Expected arguments for "${R}" to be (string, string) or (number, number), but found (${Ze.kind}, ${at.kind}) instead.`)}if(this.collator&&!j&&this.hasUntypedArgument){let Ze=Ki(ve),at=Ki(De);if(Ze.kind!=="string"||at.kind!=="string")return S(ue,ve,De)}return this.collator?D(ue,ve,De,this.collator.evaluate(ue)):S(ue,ve,De)}eachChild(ue){ue(this.lhs),ue(this.rhs),this.collator&&ue(this.collator)}outputDefined(){return!0}}}let os=wl("==",function(R,S,D){return S===D},Xs),cl=wl("!=",function(R,S,D){return S!==D},function(R,S,D,j){return!Xs(0,S,D,j)}),Cs=wl("<",function(R,S,D){return S<D},function(R,S,D,j){return j.compare(S,D)<0}),ml=wl(">",function(R,S,D){return S>D},function(R,S,D,j){return j.compare(S,D)>0}),Ys=wl("<=",function(R,S,D){return S<=D},function(R,S,D,j){return j.compare(S,D)<=0}),Hs=wl(">=",function(R,S,D){return S>=D},function(R,S,D,j){return j.compare(S,D)>=0});class Eo{constructor(S,D,j){this.type=_r,this.locale=j,this.caseSensitive=S,this.diacriticSensitive=D}static parse(S,D){if(S.length!==2)return D.error("Expected one argument.");let j=S[1];if(typeof j!="object"||Array.isArray(j))return D.error("Collator options argument must be an object.");let te=D.parse(j["case-sensitive"]!==void 0&&j["case-sensitive"],1,dt);if(!te)return null;let ue=D.parse(j["diacritic-sensitive"]!==void 0&&j["diacritic-sensitive"],1,dt);if(!ue)return null;let ve=null;return j.locale&&(ve=D.parse(j.locale,1,Et),!ve)?null:new Eo(te,ue,ve)}evaluate(S){return new yr(this.caseSensitive.evaluate(S),this.diacriticSensitive.evaluate(S),this.locale?this.locale.evaluate(S):null)}eachChild(S){S(this.caseSensitive),S(this.diacriticSensitive),this.locale&&S(this.locale)}outputDefined(){return!1}}class fs{constructor(S,D,j,te,ue){this.type=Et,this.number=S,this.locale=D,this.currency=j,this.minFractionDigits=te,this.maxFractionDigits=ue}static parse(S,D){if(S.length!==3)return D.error("Expected two arguments.");let j=D.parse(S[1],1,St);if(!j)return null;let te=S[2];if(typeof te!="object"||Array.isArray(te))return D.error("NumberFormat options argument must be an object.");let ue=null;if(te.locale&&(ue=D.parse(te.locale,1,Et),!ue))return null;let ve=null;if(te.currency&&(ve=D.parse(te.currency,1,Et),!ve))return null;let De=null;if(te["min-fraction-digits"]&&(De=D.parse(te["min-fraction-digits"],1,St),!De))return null;let Ze=null;return te["max-fraction-digits"]&&(Ze=D.parse(te["max-fraction-digits"],1,St),!Ze)?null:new fs(j,ue,ve,De,Ze)}evaluate(S){return new Intl.NumberFormat(this.locale?this.locale.evaluate(S):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(S):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(S):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(S):void 0}).format(this.number.evaluate(S))}eachChild(S){S(this.number),this.locale&&S(this.locale),this.currency&&S(this.currency),this.minFractionDigits&&S(this.minFractionDigits),this.maxFractionDigits&&S(this.maxFractionDigits)}outputDefined(){return!1}}class Ql{constructor(S){this.type=Br,this.sections=S}static parse(S,D){if(S.length<2)return D.error("Expected at least one argument.");let j=S[1];if(!Array.isArray(j)&&typeof j=="object")return D.error("First argument must be an image or text section.");let te=[],ue=!1;for(let ve=1;ve<=S.length-1;++ve){let De=S[ve];if(ue&&typeof De=="object"&&!Array.isArray(De)){ue=!1;let Ze=null;if(De["font-scale"]&&(Ze=D.parse(De["font-scale"],1,St),!Ze))return null;let at=null;if(De["text-font"]&&(at=D.parse(De["text-font"],1,Ne(Et)),!at))return null;let Tt=null;if(De["text-color"]&&(Tt=D.parse(De["text-color"],1,Ht),!Tt))return null;let Ft=te[te.length-1];Ft.scale=Ze,Ft.font=at,Ft.textColor=Tt}else{let Ze=D.parse(S[ve],1,fr);if(!Ze)return null;let at=Ze.type.kind;if(at!=="string"&&at!=="value"&&at!=="null"&&at!=="resolvedImage")return D.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");ue=!0,te.push({content:Ze,scale:null,font:null,textColor:null})}}return new Ql(te)}evaluate(S){return new Zr(this.sections.map(D=>{let j=D.content.evaluate(S);return Ki(j)===Nr?new Fr("",j,null,null,null):new Fr(ka(j),null,D.scale?D.scale.evaluate(S):null,D.font?D.font.evaluate(S).join(","):null,D.textColor?D.textColor.evaluate(S):null)}))}eachChild(S){for(let D of this.sections)S(D.content),D.scale&&S(D.scale),D.font&&S(D.font),D.textColor&&S(D.textColor)}outputDefined(){return!1}}class Hu{constructor(S){this.type=Nr,this.input=S}static parse(S,D){if(S.length!==2)return D.error("Expected two arguments.");let j=D.parse(S[1],1,Et);return j?new Hu(j):D.error("No image name provided.")}evaluate(S){let D=this.input.evaluate(S),j=Mi.fromString(D);return j&&S.availableImages&&(j.available=S.availableImages.indexOf(D)>-1),j}eachChild(S){S(this.input)}outputDefined(){return!1}}class fc{constructor(S){this.type=St,this.input=S}static parse(S,D){if(S.length!==2)return D.error(`Expected 1 argument, but found ${S.length-1} instead.`);let j=D.parse(S[1],1);return j?j.type.kind!=="array"&&j.type.kind!=="string"&&j.type.kind!=="value"?D.error(`Expected argument of type string or array, but found ${Ye(j.type)} instead.`):new fc(j):null}evaluate(S){let D=this.input.evaluate(S);if(typeof D=="string")return[...D].length;if(Array.isArray(D))return D.length;throw new la(`Expected value to be of type string or array, but found ${Ye(Ki(D))} instead.`)}eachChild(S){S(this.input)}outputDefined(){return!1}}let ms=8192;function on(R,S){let D=(180+R[0])/360,j=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R[1]*Math.PI/360)))/360,te=Math.pow(2,S.z);return[Math.round(D*te*ms),Math.round(j*te*ms)]}function fa(R,S){let D=Math.pow(2,S.z);return[(te=(R[0]/ms+S.x)/D,360*te-180),(j=(R[1]/ms+S.y)/D,360/Math.PI*Math.atan(Math.exp((180-360*j)*Math.PI/180))-90)];var j,te}function Qu(R,S){R[0]=Math.min(R[0],S[0]),R[1]=Math.min(R[1],S[1]),R[2]=Math.max(R[2],S[0]),R[3]=Math.max(R[3],S[1])}function Rl(R,S){return!(R[0]<=S[0]||R[2]>=S[2]||R[1]<=S[1]||R[3]>=S[3])}function vo(R,S,D){let j=R[0]-S[0],te=R[1]-S[1],ue=R[0]-D[0],ve=R[1]-D[1];return j*ve-ue*te==0&&j*ue<=0&&te*ve<=0}function Zl(R,S,D,j){return(te=[j[0]-D[0],j[1]-D[1]])[0]*(ue=[S[0]-R[0],S[1]-R[1]])[1]-te[1]*ue[0]!=0&&!(!Co(R,S,D,j)||!Co(D,j,R,S));var te,ue}function Ks(R,S,D){for(let j of D)for(let te=0;te<j.length-1;++te)if(Zl(R,S,j[te],j[te+1]))return!0;return!1}function Xl(R,S,D=!1){let j=!1;for(let De of S)for(let Ze=0;Ze<De.length-1;Ze++){if(vo(R,De[Ze],De[Ze+1]))return D;(ue=De[Ze])[1]>(te=R)[1]!=(ve=De[Ze+1])[1]>te[1]&&te[0]<(ve[0]-ue[0])*(te[1]-ue[1])/(ve[1]-ue[1])+ue[0]&&(j=!j)}var te,ue,ve;return j}function Ec(R,S){for(let D of S)if(Xl(R,D))return!0;return!1}function Zn(R,S){for(let D of R)if(!Xl(D,S))return!1;for(let D=0;D<R.length-1;++D)if(Ks(R[D],R[D+1],S))return!1;return!0}function ko(R,S){for(let D of S)if(Zn(R,D))return!0;return!1}function Co(R,S,D,j){let te=j[0]-D[0],ue=j[1]-D[1],ve=(R[0]-D[0])*ue-te*(R[1]-D[1]),De=(S[0]-D[0])*ue-te*(S[1]-D[1]);return ve>0&&De<0||ve<0&&De>0}function Tl(R,S,D){let j=[];for(let te=0;te<R.length;te++){let ue=[];for(let ve=0;ve<R[te].length;ve++){let De=on(R[te][ve],D);Qu(S,De),ue.push(De)}j.push(ue)}return j}function uf(R,S,D){let j=[];for(let te=0;te<R.length;te++){let ue=Tl(R[te],S,D);j.push(ue)}return j}function So(R,S,D,j){if(R[0]<D[0]||R[0]>D[2]){let te=.5*j,ue=R[0]-D[0]>te?-j:D[0]-R[0]>te?j:0;ue===0&&(ue=R[0]-D[2]>te?-j:D[2]-R[0]>te?j:0),R[0]+=ue}Qu(S,R)}function cf(R,S,D,j){let te=Math.pow(2,j.z)*ms,ue=[j.x*ms,j.y*ms],ve=[];for(let De of R)for(let Ze of De){let at=[Ze.x+ue[0],Ze.y+ue[1]];So(at,S,D,te),ve.push(at)}return ve}function rh(R,S,D,j){let te=Math.pow(2,j.z)*ms,ue=[j.x*ms,j.y*ms],ve=[];for(let Ze of R){let at=[];for(let Tt of Ze){let Ft=[Tt.x+ue[0],Tt.y+ue[1]];Qu(S,Ft),at.push(Ft)}ve.push(at)}if(S[2]-S[0]<=te/2){(De=S)[0]=De[1]=1/0,De[2]=De[3]=-1/0;for(let Ze of ve)for(let at of Ze)So(at,S,D,te)}var De;return ve}class Al{constructor(S,D){this.type=dt,this.geojson=S,this.geometries=D}static parse(S,D){if(S.length!==2)return D.error(`'within' expression requires exactly one argument, but found ${S.length-1} instead.`);if(Gi(S[1])){let j=S[1];if(j.type==="FeatureCollection"){let te=[];for(let ue of j.features){let{type:ve,coordinates:De}=ue.geometry;ve==="Polygon"&&te.push(De),ve==="MultiPolygon"&&te.push(...De)}if(te.length)return new Al(j,{type:"MultiPolygon",coordinates:te})}else if(j.type==="Feature"){let te=j.geometry.type;if(te==="Polygon"||te==="MultiPolygon")return new Al(j,j.geometry)}else if(j.type==="Polygon"||j.type==="MultiPolygon")return new Al(j,j)}return D.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(D,j){let te=[1/0,1/0,-1/0,-1/0],ue=[1/0,1/0,-1/0,-1/0],ve=D.canonicalID();if(j.type==="Polygon"){let De=Tl(j.coordinates,ue,ve),Ze=cf(D.geometry(),te,ue,ve);if(!Rl(te,ue))return!1;for(let at of Ze)if(!Xl(at,De))return!1}if(j.type==="MultiPolygon"){let De=uf(j.coordinates,ue,ve),Ze=cf(D.geometry(),te,ue,ve);if(!Rl(te,ue))return!1;for(let at of Ze)if(!Ec(at,De))return!1}return!0}(S,this.geometries);if(S.geometryType()==="LineString")return function(D,j){let te=[1/0,1/0,-1/0,-1/0],ue=[1/0,1/0,-1/0,-1/0],ve=D.canonicalID();if(j.type==="Polygon"){let De=Tl(j.coordinates,ue,ve),Ze=rh(D.geometry(),te,ue,ve);if(!Rl(te,ue))return!1;for(let at of Ze)if(!Zn(at,De))return!1}if(j.type==="MultiPolygon"){let De=uf(j.coordinates,ue,ve),Ze=rh(D.geometry(),te,ue,ve);if(!Rl(te,ue))return!1;for(let at of Ze)if(!ko(at,De))return!1}return!0}(S,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Hc=class{constructor(R=[],S=(D,j)=>D<j?-1:D>j?1:0){if(this.data=R,this.length=this.data.length,this.compare=S,this.length>0)for(let D=(this.length>>1)-1;D>=0;D--)this._down(D)}push(R){this.data.push(R),this._up(this.length++)}pop(){if(this.length===0)return;let R=this.data[0],S=this.data.pop();return--this.length>0&&(this.data[0]=S,this._down(0)),R}peek(){return this.data[0]}_up(R){let{data:S,compare:D}=this,j=S[R];for(;R>0;){let te=R-1>>1,ue=S[te];if(D(j,ue)>=0)break;S[R]=ue,R=te}S[R]=j}_down(R){let{data:S,compare:D}=this,j=this.length>>1,te=S[R];for(;R<j;){let ue=1+(R<<1),ve=ue+1;if(ve<this.length&&D(S[ve],S[ue])<0&&(ue=ve),D(S[ue],te)>=0)break;S[R]=S[ue],R=ue}S[R]=te}};function eu(R,S,D,j,te){Ls(R,S,D,j||R.length-1,te||kc)}function Ls(R,S,D,j,te){for(;j>D;){if(j-D>600){var ue=j-D+1,ve=S-D+1,De=Math.log(ue),Ze=.5*Math.exp(2*De/3),at=.5*Math.sqrt(De*Ze*(ue-Ze)/ue)*(ve-ue/2<0?-1:1);Ls(R,S,Math.max(D,Math.floor(S-ve*Ze/ue+at)),Math.min(j,Math.floor(S+(ue-ve)*Ze/ue+at)),te)}var Tt=R[S],Ft=D,Qt=j;for(mu(R,D,S),te(R[j],Tt)>0&&mu(R,D,j);Ft<Qt;){for(mu(R,Ft,Qt),Ft++,Qt--;te(R[Ft],Tt)<0;)Ft++;for(;te(R[Qt],Tt)>0;)Qt--}te(R[D],Tt)===0?mu(R,D,Qt):mu(R,++Qt,j),Qt<=S&&(D=Qt+1),S<=Qt&&(j=Qt-1)}}function mu(R,S,D){var j=R[S];R[S]=R[D],R[D]=j}function kc(R,S){return R<S?-1:R>S?1:0}function Of(R,S){if(R.length<=1)return[R];let D=[],j,te;for(let ue of R){let ve=vd(ue);ve!==0&&(ue.area=Math.abs(ve),te===void 0&&(te=ve<0),te===ve<0?(j&&D.push(j),j=[ue]):j.push(ue))}if(j&&D.push(j),S>1)for(let ue=0;ue<D.length;ue++)D[ue].length<=S||(eu(D[ue],S,1,D[ue].length-1,Gc),D[ue]=D[ue].slice(0,S));return D}function Gc(R,S){return S.area-R.area}function vd(R){let S=0;for(let D,j,te=0,ue=R.length,ve=ue-1;te<ue;ve=te++)D=R[te],j=R[ve],S+=(j.x-D.x)*(D.y+j.y);return S}let Bf=1/298.257223563,ss=Bf*(2-Bf),ff=Math.PI/180;class ih{constructor(S){let D=6378.137*ff*1e3,j=Math.cos(S*ff),te=1/(1-ss*(1-j*j)),ue=Math.sqrt(te);this.kx=D*ue*j,this.ky=D*ue*te*(1-ss)}distance(S,D){let j=this.wrap(S[0]-D[0])*this.kx,te=(S[1]-D[1])*this.ky;return Math.sqrt(j*j+te*te)}pointOnLine(S,D){let j,te,ue,ve,De=1/0;for(let Ze=0;Ze<S.length-1;Ze++){let at=S[Ze][0],Tt=S[Ze][1],Ft=this.wrap(S[Ze+1][0]-at)*this.kx,Qt=(S[Ze+1][1]-Tt)*this.ky,sr=0;Ft===0&&Qt===0||(sr=(this.wrap(D[0]-at)*this.kx*Ft+(D[1]-Tt)*this.ky*Qt)/(Ft*Ft+Qt*Qt),sr>1?(at=S[Ze+1][0],Tt=S[Ze+1][1]):sr>0&&(at+=Ft/this.kx*sr,Tt+=Qt/this.ky*sr)),Ft=this.wrap(D[0]-at)*this.kx,Qt=(D[1]-Tt)*this.ky;let Tr=Ft*Ft+Qt*Qt;Tr<De&&(De=Tr,j=at,te=Tt,ue=Ze,ve=sr)}return{point:[j,te],index:ue,t:Math.max(0,Math.min(1,ve))}}wrap(S){for(;S<-180;)S+=360;for(;S>180;)S-=360;return S}}function Vl(R,S){return S[0]-R[0]}function Js(R){return R[1]-R[0]+1}function hc(R,S){return R[1]>=R[0]&&R[1]<S}function Cc(R,S){if(R[0]>R[1])return[null,null];let D=Js(R);if(S){if(D===2)return[R,null];let te=Math.floor(D/2);return[[R[0],R[0]+te],[R[0]+te,R[1]]]}if(D===1)return[R,null];let j=Math.floor(D/2)-1;return[[R[0],R[0]+j],[R[0]+j+1,R[1]]]}function ws(R,S){if(!hc(S,R.length))return[1/0,1/0,-1/0,-1/0];let D=[1/0,1/0,-1/0,-1/0];for(let j=S[0];j<=S[1];++j)Qu(D,R[j]);return D}function $s(R){let S=[1/0,1/0,-1/0,-1/0];for(let D of R)for(let j of D)Qu(S,j);return S}function hs(R){return R[0]!==-1/0&&R[1]!==-1/0&&R[2]!==1/0&&R[3]!==1/0}function Ms(R,S,D){if(!hs(R)||!hs(S))return NaN;let j=0,te=0;return R[2]<S[0]&&(j=S[0]-R[2]),R[0]>S[2]&&(j=R[0]-S[2]),R[1]>S[3]&&(te=R[1]-S[3]),R[3]<S[1]&&(te=S[1]-R[3]),D.distance([0,0],[j,te])}function dc(R,S,D){let j=D.pointOnLine(S,R);return D.distance(R,j.point)}function Sl(R,S,D,j,te){let ue=Math.min(dc(R,[D,j],te),dc(S,[D,j],te)),ve=Math.min(dc(D,[R,S],te),dc(j,[R,S],te));return Math.min(ue,ve)}function ec(R,S,D,j,te){if(!hc(S,R.length)||!hc(j,D.length))return 1/0;let ue=1/0;for(let ve=S[0];ve<S[1];++ve){let De=R[ve],Ze=R[ve+1];for(let at=j[0];at<j[1];++at){let Tt=D[at],Ft=D[at+1];if(Zl(De,Ze,Tt,Ft))return 0;ue=Math.min(ue,Sl(De,Ze,Tt,Ft,te))}}return ue}function Ps(R,S,D,j,te){if(!hc(S,R.length)||!hc(j,D.length))return NaN;let ue=1/0;for(let ve=S[0];ve<=S[1];++ve)for(let De=j[0];De<=j[1];++De)if(ue=Math.min(ue,te.distance(R[ve],D[De])),ue===0)return ue;return ue}function ov(R,S,D){if(Xl(R,S,!0))return 0;let j=1/0;for(let te of S){let ue=te[0],ve=te[te.length-1];if(ue!==ve&&(j=Math.min(j,dc(R,[ve,ue],D)),j===0))return j;let De=D.pointOnLine(te,R);if(j=Math.min(j,D.distance(R,De.point)),j===0)return j}return j}function wo(R,S,D,j){if(!hc(S,R.length))return NaN;for(let ue=S[0];ue<=S[1];++ue)if(Xl(R[ue],D,!0))return 0;let te=1/0;for(let ue=S[0];ue<S[1];++ue){let ve=R[ue],De=R[ue+1];for(let Ze of D)for(let at=0,Tt=Ze.length,Ft=Tt-1;at<Tt;Ft=at++){let Qt=Ze[Ft],sr=Ze[at];if(Zl(ve,De,Qt,sr))return 0;te=Math.min(te,Sl(ve,De,Qt,sr,j))}}return te}function Od(R,S){for(let D of R)for(let j of D)if(Xl(j,S,!0))return!0;return!1}function $o(R,S,D,j=1/0){let te=$s(R),ue=$s(S);if(j!==1/0&&Ms(te,ue,D)>=j)return j;if(Rl(te,ue)){if(Od(R,S))return 0}else if(Od(S,R))return 0;let ve=1/0;for(let De of R)for(let Ze=0,at=De.length,Tt=at-1;Ze<at;Tt=Ze++){let Ft=De[Tt],Qt=De[Ze];for(let sr of S)for(let Tr=0,Pr=sr.length,$r=Pr-1;Tr<Pr;$r=Tr++){let ni=sr[$r],Di=sr[Tr];if(Zl(Ft,Qt,ni,Di))return 0;ve=Math.min(ve,Sl(Ft,Qt,ni,Di,D))}}return ve}function Ja(R,S,D,j,te,ue){if(!ue)return;let ve=Ms(ws(j,ue),te,D);ve<S&&R.push([ve,ue,[0,0]])}function Ef(R,S,D,j,te,ue,ve){if(!ue||!ve)return;let De=Ms(ws(j,ue),ws(te,ve),D);De<S&&R.push([De,ue,ve])}function tc(R,S,D,j,te=1/0){let ue=Math.min(j.distance(R[0],D[0][0]),te);if(ue===0)return ue;let ve=new Hc([[0,[0,R.length-1],[0,0]]],Vl),De=$s(D);for(;ve.length>0;){let Ze=ve.pop();if(Ze[0]>=ue)continue;let at=Ze[1],Tt=S?50:100;if(Js(at)<=Tt){if(!hc(at,R.length))return NaN;if(S){let Ft=wo(R,at,D,j);if(isNaN(Ft)||Ft===0)return Ft;ue=Math.min(ue,Ft)}else for(let Ft=at[0];Ft<=at[1];++Ft){let Qt=ov(R[Ft],D,j);if(ue=Math.min(ue,Qt),ue===0)return 0}}else{let Ft=Cc(at,S);Ja(ve,ue,j,R,De,Ft[0]),Ja(ve,ue,j,R,De,Ft[1])}}return ue}function uu(R,S,D,j,te,ue=1/0){let ve=Math.min(ue,te.distance(R[0],D[0]));if(ve===0)return ve;let De=new Hc([[0,[0,R.length-1],[0,D.length-1]]],Vl);for(;De.length>0;){let Ze=De.pop();if(Ze[0]>=ve)continue;let at=Ze[1],Tt=Ze[2],Ft=S?50:100,Qt=j?50:100;if(Js(at)<=Ft&&Js(Tt)<=Qt){if(!hc(at,R.length)&&hc(Tt,D.length))return NaN;let sr;if(S&&j)sr=ec(R,at,D,Tt,te),ve=Math.min(ve,sr);else if(S&&!j){let Tr=R.slice(at[0],at[1]+1);for(let Pr=Tt[0];Pr<=Tt[1];++Pr)if(sr=dc(D[Pr],Tr,te),ve=Math.min(ve,sr),ve===0)return ve}else if(!S&&j){let Tr=D.slice(Tt[0],Tt[1]+1);for(let Pr=at[0];Pr<=at[1];++Pr)if(sr=dc(R[Pr],Tr,te),ve=Math.min(ve,sr),ve===0)return ve}else sr=Ps(R,at,D,Tt,te),ve=Math.min(ve,sr)}else{let sr=Cc(at,S),Tr=Cc(Tt,j);Ef(De,ve,te,R,D,sr[0],Tr[0]),Ef(De,ve,te,R,D,sr[0],Tr[1]),Ef(De,ve,te,R,D,sr[1],Tr[0]),Ef(De,ve,te,R,D,sr[1],Tr[1])}}return ve}function Mh(R){return R.type==="MultiPolygon"?R.coordinates.map(S=>({type:"Polygon",coordinates:S})):R.type==="MultiLineString"?R.coordinates.map(S=>({type:"LineString",coordinates:S})):R.type==="MultiPoint"?R.coordinates.map(S=>({type:"Point",coordinates:S})):[R]}class jc{constructor(S,D){this.type=St,this.geojson=S,this.geometries=D}static parse(S,D){if(S.length!==2)return D.error(`'distance' expression requires exactly one argument, but found ${S.length-1} instead.`);if(Gi(S[1])){let j=S[1];if(j.type==="FeatureCollection")return new jc(j,j.features.map(te=>Mh(te.geometry)).flat());if(j.type==="Feature")return new jc(j,Mh(j.geometry));if("type"in j&&"coordinates"in j)return new jc(j,Mh(j))}return D.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(S){if(S.geometry()!=null&&S.canonicalID()!=null){if(S.geometryType()==="Point")return function(D,j){let te=D.geometry(),ue=te.flat().map(Ze=>fa([Ze.x,Ze.y],D.canonical));if(te.length===0)return NaN;let ve=new ih(ue[0][1]),De=1/0;for(let Ze of j){switch(Ze.type){case"Point":De=Math.min(De,uu(ue,!1,[Ze.coordinates],!1,ve,De));break;case"LineString":De=Math.min(De,uu(ue,!1,Ze.coordinates,!0,ve,De));break;case"Polygon":De=Math.min(De,tc(ue,!1,Ze.coordinates,ve,De))}if(De===0)return De}return De}(S,this.geometries);if(S.geometryType()==="LineString")return function(D,j){let te=D.geometry(),ue=te.flat().map(Ze=>fa([Ze.x,Ze.y],D.canonical));if(te.length===0)return NaN;let ve=new ih(ue[0][1]),De=1/0;for(let Ze of j){switch(Ze.type){case"Point":De=Math.min(De,uu(ue,!0,[Ze.coordinates],!1,ve,De));break;case"LineString":De=Math.min(De,uu(ue,!0,Ze.coordinates,!0,ve,De));break;case"Polygon":De=Math.min(De,tc(ue,!0,Ze.coordinates,ve,De))}if(De===0)return De}return De}(S,this.geometries);if(S.geometryType()==="Polygon")return function(D,j){let te=D.geometry();if(te.length===0||te[0].length===0)return NaN;let ue=Of(te,0).map(Ze=>Ze.map(at=>at.map(Tt=>fa([Tt.x,Tt.y],D.canonical)))),ve=new ih(ue[0][0][0][1]),De=1/0;for(let Ze of j)for(let at of ue){switch(Ze.type){case"Point":De=Math.min(De,tc([Ze.coordinates],!1,at,ve,De));break;case"LineString":De=Math.min(De,tc(Ze.coordinates,!0,at,ve,De));break;case"Polygon":De=Math.min(De,$o(at,Ze.coordinates,ve,De))}if(De===0)return De}return De}(S,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let kf={"==":os,"!=":cl,">":ml,"<":Cs,">=":Hs,"<=":Ys,array:Ra,at:br,boolean:Ra,case:Yi,coalesce:ks,collator:Eo,format:Ql,image:Hu,in:Hr,"index-of":ti,interpolate:xo,"interpolate-hcl":xo,"interpolate-lab":xo,length:fc,let:xn,literal:jn,match:zi,number:Ra,"number-format":fs,object:Ra,slice:an,step:Ji,string:Ra,"to-boolean":oa,"to-color":oa,"to-number":oa,"to-string":oa,var:_t,within:Al,distance:jc};class Ml{constructor(S,D,j,te){this.name=S,this.type=D,this._evaluate=j,this.args=te}evaluate(S){return this._evaluate(S,this.args)}eachChild(S){this.args.forEach(S)}outputDefined(){return!1}static parse(S,D){let j=S[0],te=Ml.definitions[j];if(!te)return D.error(`Unknown expression "${j}". If you wanted a literal array, use ["literal", [...]].`,0);let ue=Array.isArray(te)?te[0]:te.type,ve=Array.isArray(te)?[[te[1],te[2]]]:te.overloads,De=ve.filter(([at])=>!Array.isArray(at)||at.length===S.length-1),Ze=null;for(let[at,Tt]of De){Ze=new oo(D.registry,kh,D.path,null,D.scope);let Ft=[],Qt=!1;for(let sr=1;sr<S.length;sr++){let Tr=S[sr],Pr=Array.isArray(at)?at[sr-1]:at.type,$r=Ze.parse(Tr,1+Ft.length,Pr);if(!$r){Qt=!0;break}Ft.push($r)}if(!Qt)if(Array.isArray(at)&&at.length!==Ft.length)Ze.error(`Expected ${at.length} arguments, but found ${Ft.length} instead.`);else{for(let sr=0;sr<Ft.length;sr++){let Tr=Array.isArray(at)?at[sr]:at.type,Pr=Ft[sr];Ze.concat(sr+1).checkSubtype(Tr,Pr.type)}if(Ze.errors.length===0)return new Ml(j,ue,Tt,Ft)}}if(De.length===1)D.errors.push(...Ze.errors);else{let at=(De.length?De:ve).map(([Ft])=>{return Qt=Ft,Array.isArray(Qt)?`(${Qt.map(Ye).join(", ")})`:`(${Ye(Qt.type)}...)`;var Qt}).join(" | "),Tt=[];for(let Ft=1;Ft<S.length;Ft++){let Qt=D.parse(S[Ft],1+Tt.length);if(!Qt)return null;Tt.push(Ye(Qt.type))}D.error(`Expected arguments of type ${at}, but found (${Tt.join(", ")}) instead.`)}return null}static register(S,D){Ml.definitions=D;for(let j in D)S[j]=Ml}}function Yh(R,[S,D,j,te]){S=S.evaluate(R),D=D.evaluate(R),j=j.evaluate(R);let ue=te?te.evaluate(R):1,ve=Pi(S,D,j,ue);if(ve)throw new la(ve);return new Zt(S/255,D/255,j/255,ue,!1)}function Eh(R,S){return R in S}function nh(R,S){let D=S[R];return D===void 0?null:D}function hf(R){return{type:R}}function kh(R){if(R instanceof _t)return kh(R.boundExpression);if(R instanceof Ml&&R.name==="error"||R instanceof Eo||R instanceof Al||R instanceof jc)return!1;let S=R instanceof oa||R instanceof Ra,D=!0;return R.eachChild(j=>{D=S?D&&kh(j):D&&j instanceof jn}),!!D&&Kh(R)&&ah(R,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function Kh(R){if(R instanceof Ml&&(R.name==="get"&&R.args.length===1||R.name==="feature-state"||R.name==="has"&&R.args.length===1||R.name==="properties"||R.name==="geometry-type"||R.name==="id"||/^filter-/.test(R.name))||R instanceof Al||R instanceof jc)return!1;let S=!0;return R.eachChild(D=>{S&&!Kh(D)&&(S=!1)}),S}function rc(R){if(R instanceof Ml&&R.name==="feature-state")return!1;let S=!0;return R.eachChild(D=>{S&&!rc(D)&&(S=!1)}),S}function ah(R,S){if(R instanceof Ml&&S.indexOf(R.name)>=0)return!1;let D=!0;return R.eachChild(j=>{D&&!ah(j,S)&&(D=!1)}),D}function Wc(R){return{result:"success",value:R}}function df(R){return{result:"error",value:R}}function Cu(R){return R["property-type"]==="data-driven"||R["property-type"]==="cross-faded-data-driven"}function Nf(R){return!!R.expression&&R.expression.parameters.indexOf("zoom")>-1}function Zc(R){return!!R.expression&&R.expression.interpolated}function ds(R){return R instanceof Number?"number":R instanceof String?"string":R instanceof Boolean?"boolean":Array.isArray(R)?"array":R===null?"null":typeof R}function Ch(R){return typeof R=="object"&&R!==null&&!Array.isArray(R)}function Bd(R){return R}function Jh(R,S){let D=S.type==="color",j=R.stops&&typeof R.stops[0][0]=="object",te=j||!(j||R.property!==void 0),ue=R.type||(Zc(S)?"exponential":"interval");if(D||S.type==="padding"){let Tt=D?Zt.parse:Vr.parse;(R=Ke({},R)).stops&&(R.stops=R.stops.map(Ft=>[Ft[0],Tt(Ft[1])])),R.default=Tt(R.default?R.default:S.default)}if(R.colorSpace&&(ve=R.colorSpace)!=="rgb"&&ve!=="hcl"&&ve!=="lab")throw new Error(`Unknown color space: "${R.colorSpace}"`);var ve;let De,Ze,at;if(ue==="exponential")De=$h;else if(ue==="interval")De=Lu;else if(ue==="categorical"){De=pd,Ze=Object.create(null);for(let Tt of R.stops)Ze[Tt[0]]=Tt[1];at=typeof R.stops[0][0]}else{if(ue!=="identity")throw new Error(`Unknown function type "${ue}"`);De=tu}if(j){let Tt={},Ft=[];for(let Tr=0;Tr<R.stops.length;Tr++){let Pr=R.stops[Tr],$r=Pr[0].zoom;Tt[$r]===void 0&&(Tt[$r]={zoom:$r,type:R.type,property:R.property,default:R.default,stops:[]},Ft.push($r)),Tt[$r].stops.push([Pr[0].value,Pr[1]])}let Qt=[];for(let Tr of Ft)Qt.push([Tt[Tr].zoom,Jh(Tt[Tr],S)]);let sr={name:"linear"};return{kind:"composite",interpolationType:sr,interpolationFactor:xo.interpolationFactor.bind(void 0,sr),zoomStops:Qt.map(Tr=>Tr[0]),evaluate:({zoom:Tr},Pr)=>$h({stops:Qt,base:R.base},S,Tr).evaluate(Tr,Pr)}}if(te){let Tt=ue==="exponential"?{name:"exponential",base:R.base!==void 0?R.base:1}:null;return{kind:"camera",interpolationType:Tt,interpolationFactor:xo.interpolationFactor.bind(void 0,Tt),zoomStops:R.stops.map(Ft=>Ft[0]),evaluate:({zoom:Ft})=>De(R,S,Ft,Ze,at)}}return{kind:"source",evaluate(Tt,Ft){let Qt=Ft&&Ft.properties?Ft.properties[R.property]:void 0;return Qt===void 0?Cf(R.default,S.default):De(R,S,Qt,Ze,at)}}}function Cf(R,S,D){return R!==void 0?R:S!==void 0?S:D!==void 0?D:void 0}function pd(R,S,D,j,te){return Cf(typeof D===te?j[D]:void 0,R.default,S.default)}function Lu(R,S,D){if(ds(D)!=="number")return Cf(R.default,S.default);let j=R.stops.length;if(j===1||D<=R.stops[0][0])return R.stops[0][1];if(D>=R.stops[j-1][0])return R.stops[j-1][1];let te=hi(R.stops.map(ue=>ue[0]),D);return R.stops[te][1]}function $h(R,S,D){let j=R.base!==void 0?R.base:1;if(ds(D)!=="number")return Cf(R.default,S.default);let te=R.stops.length;if(te===1||D<=R.stops[0][0])return R.stops[0][1];if(D>=R.stops[te-1][0])return R.stops[te-1][1];let ue=hi(R.stops.map(Tt=>Tt[0]),D),ve=function(Tt,Ft,Qt,sr){let Tr=sr-Qt,Pr=Tt-Qt;return Tr===0?0:Ft===1?Pr/Tr:(Math.pow(Ft,Pr)-1)/(Math.pow(Ft,Tr)-1)}(D,j,R.stops[ue][0],R.stops[ue+1][0]),De=R.stops[ue][1],Ze=R.stops[ue+1][1],at=Mo[S.type]||Bd;return typeof De.evaluate=="function"?{evaluate(...Tt){let Ft=De.evaluate.apply(void 0,Tt),Qt=Ze.evaluate.apply(void 0,Tt);if(Ft!==void 0&&Qt!==void 0)return at(Ft,Qt,ve,R.colorSpace)}}:at(De,Ze,ve,R.colorSpace)}function tu(R,S,D){switch(S.type){case"color":D=Zt.parse(D);break;case"formatted":D=Zr.fromString(D.toString());break;case"resolvedImage":D=Mi.fromString(D.toString());break;case"padding":D=Vr.parse(D);break;default:ds(D)===S.type||S.type==="enum"&&S.values[D]||(D=void 0)}return Cf(D,R.default,S.default)}Ml.register(kf,{error:[{kind:"error"},[Et],(R,[S])=>{throw new la(S.evaluate(R))}],typeof:[Et,[fr],(R,[S])=>Ye(Ki(S.evaluate(R)))],"to-rgba":[Ne(St,4),[Ht],(R,[S])=>{let[D,j,te,ue]=S.evaluate(R).rgb;return[255*D,255*j,255*te,ue]}],rgb:[Ht,[St,St,St],Yh],rgba:[Ht,[St,St,St,St],Yh],has:{type:dt,overloads:[[[Et],(R,[S])=>Eh(S.evaluate(R),R.properties())],[[Et,$t],(R,[S,D])=>Eh(S.evaluate(R),D.evaluate(R))]]},get:{type:fr,overloads:[[[Et],(R,[S])=>nh(S.evaluate(R),R.properties())],[[Et,$t],(R,[S,D])=>nh(S.evaluate(R),D.evaluate(R))]]},"feature-state":[fr,[Et],(R,[S])=>nh(S.evaluate(R),R.featureState||{})],properties:[$t,[],R=>R.properties()],"geometry-type":[Et,[],R=>R.geometryType()],id:[fr,[],R=>R.id()],zoom:[St,[],R=>R.globals.zoom],"heatmap-density":[St,[],R=>R.globals.heatmapDensity||0],"line-progress":[St,[],R=>R.globals.lineProgress||0],accumulated:[fr,[],R=>R.globals.accumulated===void 0?null:R.globals.accumulated],"+":[St,hf(St),(R,S)=>{let D=0;for(let j of S)D+=j.evaluate(R);return D}],"*":[St,hf(St),(R,S)=>{let D=1;for(let j of S)D*=j.evaluate(R);return D}],"-":{type:St,overloads:[[[St,St],(R,[S,D])=>S.evaluate(R)-D.evaluate(R)],[[St],(R,[S])=>-S.evaluate(R)]]},"/":[St,[St,St],(R,[S,D])=>S.evaluate(R)/D.evaluate(R)],"%":[St,[St,St],(R,[S,D])=>S.evaluate(R)%D.evaluate(R)],ln2:[St,[],()=>Math.LN2],pi:[St,[],()=>Math.PI],e:[St,[],()=>Math.E],"^":[St,[St,St],(R,[S,D])=>Math.pow(S.evaluate(R),D.evaluate(R))],sqrt:[St,[St],(R,[S])=>Math.sqrt(S.evaluate(R))],log10:[St,[St],(R,[S])=>Math.log(S.evaluate(R))/Math.LN10],ln:[St,[St],(R,[S])=>Math.log(S.evaluate(R))],log2:[St,[St],(R,[S])=>Math.log(S.evaluate(R))/Math.LN2],sin:[St,[St],(R,[S])=>Math.sin(S.evaluate(R))],cos:[St,[St],(R,[S])=>Math.cos(S.evaluate(R))],tan:[St,[St],(R,[S])=>Math.tan(S.evaluate(R))],asin:[St,[St],(R,[S])=>Math.asin(S.evaluate(R))],acos:[St,[St],(R,[S])=>Math.acos(S.evaluate(R))],atan:[St,[St],(R,[S])=>Math.atan(S.evaluate(R))],min:[St,hf(St),(R,S)=>Math.min(...S.map(D=>D.evaluate(R)))],max:[St,hf(St),(R,S)=>Math.max(...S.map(D=>D.evaluate(R)))],abs:[St,[St],(R,[S])=>Math.abs(S.evaluate(R))],round:[St,[St],(R,[S])=>{let D=S.evaluate(R);return D<0?-Math.round(-D):Math.round(D)}],floor:[St,[St],(R,[S])=>Math.floor(S.evaluate(R))],ceil:[St,[St],(R,[S])=>Math.ceil(S.evaluate(R))],"filter-==":[dt,[Et,fr],(R,[S,D])=>R.properties()[S.value]===D.value],"filter-id-==":[dt,[fr],(R,[S])=>R.id()===S.value],"filter-type-==":[dt,[Et],(R,[S])=>R.geometryType()===S.value],"filter-<":[dt,[Et,fr],(R,[S,D])=>{let j=R.properties()[S.value],te=D.value;return typeof j==typeof te&&j<te}],"filter-id-<":[dt,[fr],(R,[S])=>{let D=R.id(),j=S.value;return typeof D==typeof j&&D<j}],"filter->":[dt,[Et,fr],(R,[S,D])=>{let j=R.properties()[S.value],te=D.value;return typeof j==typeof te&&j>te}],"filter-id->":[dt,[fr],(R,[S])=>{let D=R.id(),j=S.value;return typeof D==typeof j&&D>j}],"filter-<=":[dt,[Et,fr],(R,[S,D])=>{let j=R.properties()[S.value],te=D.value;return typeof j==typeof te&&j<=te}],"filter-id-<=":[dt,[fr],(R,[S])=>{let D=R.id(),j=S.value;return typeof D==typeof j&&D<=j}],"filter->=":[dt,[Et,fr],(R,[S,D])=>{let j=R.properties()[S.value],te=D.value;return typeof j==typeof te&&j>=te}],"filter-id->=":[dt,[fr],(R,[S])=>{let D=R.id(),j=S.value;return typeof D==typeof j&&D>=j}],"filter-has":[dt,[fr],(R,[S])=>S.value in R.properties()],"filter-has-id":[dt,[],R=>R.id()!==null&&R.id()!==void 0],"filter-type-in":[dt,[Ne(Et)],(R,[S])=>S.value.indexOf(R.geometryType())>=0],"filter-id-in":[dt,[Ne(fr)],(R,[S])=>S.value.indexOf(R.id())>=0],"filter-in-small":[dt,[Et,Ne(fr)],(R,[S,D])=>D.value.indexOf(R.properties()[S.value])>=0],"filter-in-large":[dt,[Et,Ne(fr)],(R,[S,D])=>function(j,te,ue,ve){for(;ue<=ve;){let De=ue+ve>>1;if(te[De]===j)return!0;te[De]>j?ve=De-1:ue=De+1}return!1}(R.properties()[S.value],D.value,0,D.value.length-1)],all:{type:dt,overloads:[[[dt,dt],(R,[S,D])=>S.evaluate(R)&&D.evaluate(R)],[hf(dt),(R,S)=>{for(let D of S)if(!D.evaluate(R))return!1;return!0}]]},any:{type:dt,overloads:[[[dt,dt],(R,[S,D])=>S.evaluate(R)||D.evaluate(R)],[hf(dt),(R,S)=>{for(let D of S)if(D.evaluate(R))return!0;return!1}]]},"!":[dt,[dt],(R,[S])=>!S.evaluate(R)],"is-supported-script":[dt,[Et],(R,[S])=>{let D=R.globals&&R.globals.isSupportedScript;return!D||D(S.evaluate(R))}],upcase:[Et,[Et],(R,[S])=>S.evaluate(R).toUpperCase()],downcase:[Et,[Et],(R,[S])=>S.evaluate(R).toLowerCase()],concat:[Et,hf(fr),(R,S)=>S.map(D=>ka(D.evaluate(R))).join("")],"resolved-locale":[Et,[_r],(R,[S])=>S.evaluate(R).resolvedLocale()]});class Pu{constructor(S,D){var j;this.expression=S,this._warningHistory={},this._evaluator=new Ha,this._defaultValue=D?(j=D).type==="color"&&Ch(j.default)?new Zt(0,0,0,0):j.type==="color"?Zt.parse(j.default)||null:j.type==="padding"?Vr.parse(j.default)||null:j.type==="variableAnchorOffsetCollection"?Si.parse(j.default)||null:j.default===void 0?null:j.default:null,this._enumValues=D&&D.type==="enum"?D.values:null}evaluateWithoutErrorHandling(S,D,j,te,ue,ve){return this._evaluator.globals=S,this._evaluator.feature=D,this._evaluator.featureState=j,this._evaluator.canonical=te,this._evaluator.availableImages=ue||null,this._evaluator.formattedSection=ve,this.expression.evaluate(this._evaluator)}evaluate(S,D,j,te,ue,ve){this._evaluator.globals=S,this._evaluator.feature=D||null,this._evaluator.featureState=j||null,this._evaluator.canonical=te,this._evaluator.availableImages=ue||null,this._evaluator.formattedSection=ve||null;try{let De=this.expression.evaluate(this._evaluator);if(De==null||typeof De=="number"&&De!=De)return this._defaultValue;if(this._enumValues&&!(De in this._enumValues))throw new la(`Expected value to be one of ${Object.keys(this._enumValues).map(Ze=>JSON.stringify(Ze)).join(", ")}, but found ${JSON.stringify(De)} instead.`);return De}catch(De){return this._warningHistory[De.message]||(this._warningHistory[De.message]=!0,typeof console!="undefined"&&console.warn(De.message)),this._defaultValue}}}function Lc(R){return Array.isArray(R)&&R.length>0&&typeof R[0]=="string"&&R[0]in kf}function fl(R,S){let D=new oo(kf,kh,[],S?function(te){let ue={color:Ht,string:Et,number:St,enum:Et,boolean:dt,formatted:Br,padding:Or,resolvedImage:Nr,variableAnchorOffsetCollection:ut};return te.type==="array"?Ne(ue[te.value]||fr,te.length):ue[te.type]}(S):void 0),j=D.parse(R,void 0,void 0,void 0,S&&S.type==="string"?{typeAnnotation:"coerce"}:void 0);return j?Wc(new Pu(j,S)):df(D.errors)}class Xc{constructor(S,D){this.kind=S,this._styleExpression=D,this.isStateDependent=S!=="constant"&&!rc(D.expression)}evaluateWithoutErrorHandling(S,D,j,te,ue,ve){return this._styleExpression.evaluateWithoutErrorHandling(S,D,j,te,ue,ve)}evaluate(S,D,j,te,ue,ve){return this._styleExpression.evaluate(S,D,j,te,ue,ve)}}class ic{constructor(S,D,j,te){this.kind=S,this.zoomStops=j,this._styleExpression=D,this.isStateDependent=S!=="camera"&&!rc(D.expression),this.interpolationType=te}evaluateWithoutErrorHandling(S,D,j,te,ue,ve){return this._styleExpression.evaluateWithoutErrorHandling(S,D,j,te,ue,ve)}evaluate(S,D,j,te,ue,ve){return this._styleExpression.evaluate(S,D,j,te,ue,ve)}interpolationFactor(S,D,j){return this.interpolationType?xo.interpolationFactor(this.interpolationType,S,D,j):0}}function yu(R,S){let D=fl(R,S);if(D.result==="error")return D;let j=D.value.expression,te=Kh(j);if(!te&&!Cu(S))return df([new xt("","data expressions not supported")]);let ue=ah(j,["zoom"]);if(!ue&&!Nf(S))return df([new xt("","zoom expressions not supported")]);let ve=Qh(j);return ve||ue?ve instanceof xt?df([ve]):ve instanceof xo&&!Zc(S)?df([new xt("",'"interpolate" expressions cannot be used with this property')]):Wc(ve?new ic(te?"camera":"composite",D.value,ve.labels,ve instanceof xo?ve.interpolation:void 0):new Xc(te?"constant":"source",D.value)):df([new xt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class Qs{constructor(S,D){this._parameters=S,this._specification=D,Ke(this,Jh(this._parameters,this._specification))}static deserialize(S){return new Qs(S._parameters,S._specification)}static serialize(S){return{_parameters:S._parameters,_specification:S._specification}}}function Qh(R){let S=null;if(R instanceof xn)S=Qh(R.result);else if(R instanceof ks){for(let D of R.args)if(S=Qh(D),S)break}else(R instanceof Ji||R instanceof xo)&&R.input instanceof Ml&&R.input.name==="zoom"&&(S=R);return S instanceof xt||R.eachChild(D=>{let j=Qh(D);j instanceof xt?S=j:!S&&j?S=new xt("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):S&&j&&S!==j&&(S=new xt("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),S}function gd(R){if(R===!0||R===!1)return!0;if(!Array.isArray(R)||R.length===0)return!1;switch(R[0]){case"has":return R.length>=2&&R[1]!=="$id"&&R[1]!=="$type";case"in":return R.length>=3&&(typeof R[1]!="string"||Array.isArray(R[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return R.length!==3||Array.isArray(R[1])||Array.isArray(R[2]);case"any":case"all":for(let S of R.slice(1))if(!gd(S)&&typeof S!="boolean")return!1;return!0;default:return!0}}let Gu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Pc(R){if(R==null)return{filter:()=>!0,needGeometry:!1};gd(R)||(R=Lf(R));let S=fl(R,Gu);if(S.result==="error")throw new Error(S.value.map(D=>`${D.key}: ${D.message}`).join(", "));return{filter:(D,j,te)=>S.value.evaluate(D,j,{},te),needGeometry:sv(R)}}function vc(R,S){return R<S?-1:R>S?1:0}function sv(R){if(!Array.isArray(R))return!1;if(R[0]==="within"||R[0]==="distance")return!0;for(let S=1;S<R.length;S++)if(sv(R[S]))return!0;return!1}function Lf(R){if(!R)return!0;let S=R[0];return R.length<=1?S!=="any":S==="=="?Uf(R[1],R[2],"=="):S==="!="?ru(Uf(R[1],R[2],"==")):S==="<"||S===">"||S==="<="||S===">="?Uf(R[1],R[2],S):S==="any"?(D=R.slice(1),["any"].concat(D.map(Lf))):S==="all"?["all"].concat(R.slice(1).map(Lf)):S==="none"?["all"].concat(R.slice(1).map(Lf).map(ru)):S==="in"?Iu(R[1],R.slice(2)):S==="!in"?ru(Iu(R[1],R.slice(2))):S==="has"?oh(R[1]):S!=="!has"||ru(oh(R[1]));var D}function Uf(R,S,D){switch(R){case"$type":return[`filter-type-${D}`,S];case"$id":return[`filter-id-${D}`,S];default:return[`filter-${D}`,R,S]}}function Iu(R,S){if(S.length===0)return!1;switch(R){case"$type":return["filter-type-in",["literal",S]];case"$id":return["filter-id-in",["literal",S]];default:return S.length>200&&!S.some(D=>typeof D!=typeof S[0])?["filter-in-large",R,["literal",S.sort(vc)]]:["filter-in-small",R,["literal",S]]}}function oh(R){switch(R){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",R]}}function ru(R){return["!",R]}function vf(R){let S=typeof R;if(S==="number"||S==="boolean"||S==="string"||R==null)return JSON.stringify(R);if(Array.isArray(R)){let te="[";for(let ue of R)te+=`${vf(ue)},`;return`${te}]`}let D=Object.keys(R).sort(),j="{";for(let te=0;te<D.length;te++)j+=`${JSON.stringify(D[te])}:${vf(R[D[te]])},`;return`${j}}`}function md(R){let S="";for(let D of Ge)S+=`/${vf(R[D])}`;return S}function sh(R){let S=R.value;return S?[new er(R.key,S,"constants have been deprecated as of v8")]:[]}function Fs(R){return R instanceof Number||R instanceof String||R instanceof Boolean?R.valueOf():R}function _u(R){if(Array.isArray(R))return R.map(_u);if(R instanceof Object&&!(R instanceof Number||R instanceof String||R instanceof Boolean)){let S={};for(let D in R)S[D]=_u(R[D]);return S}return Fs(R)}function xu(R){let S=R.key,D=R.value,j=R.valueSpec||{},te=R.objectElementValidators||{},ue=R.style,ve=R.styleSpec,De=R.validateSpec,Ze=[],at=ds(D);if(at!=="object")return[new er(S,D,`object expected, ${at} found`)];for(let Tt in D){let Ft=Tt.split(".")[0],Qt=j[Ft]||j["*"],sr;if(te[Ft])sr=te[Ft];else if(j[Ft])sr=De;else if(te["*"])sr=te["*"];else{if(!j["*"]){Ze.push(new er(S,D[Tt],`unknown property "${Tt}"`));continue}sr=De}Ze=Ze.concat(sr({key:(S&&`${S}.`)+Tt,value:D[Tt],valueSpec:Qt,style:ue,styleSpec:ve,object:D,objectKey:Tt,validateSpec:De},D))}for(let Tt in j)te[Tt]||j[Tt].required&&j[Tt].default===void 0&&D[Tt]===void 0&&Ze.push(new er(S,D,`missing required property "${Tt}"`));return Ze}function Lh(R){let S=R.value,D=R.valueSpec,j=R.style,te=R.styleSpec,ue=R.key,ve=R.arrayElementValidator||R.validateSpec;if(ds(S)!=="array")return[new er(ue,S,`array expected, ${ds(S)} found`)];if(D.length&&S.length!==D.length)return[new er(ue,S,`array length ${D.length} expected, length ${S.length} found`)];if(D["min-length"]&&S.length<D["min-length"])return[new er(ue,S,`array length at least ${D["min-length"]} expected, length ${S.length} found`)];let De={type:D.value,values:D.values};te.$version<7&&(De.function=D.function),ds(D.value)==="object"&&(De=D.value);let Ze=[];for(let at=0;at<S.length;at++)Ze=Ze.concat(ve({array:S,arrayIndex:at,value:S[at],valueSpec:De,validateSpec:R.validateSpec,style:j,styleSpec:te,key:`${ue}[${at}]`}));return Ze}function Is(R){let S=R.key,D=R.value,j=R.valueSpec,te=ds(D);return te==="number"&&D!=D&&(te="NaN"),te!=="number"?[new er(S,D,`number expected, ${te} found`)]:"minimum"in j&&D<j.minimum?[new er(S,D,`${D} is less than the minimum value ${j.minimum}`)]:"maximum"in j&&D>j.maximum?[new er(S,D,`${D} is greater than the maximum value ${j.maximum}`)]:[]}function Pf(R){let S=R.valueSpec,D=Fs(R.value.type),j,te,ue,ve={},De=D!=="categorical"&&R.value.property===void 0,Ze=!De,at=ds(R.value.stops)==="array"&&ds(R.value.stops[0])==="array"&&ds(R.value.stops[0][0])==="object",Tt=xu({key:R.key,value:R.value,valueSpec:R.styleSpec.function,validateSpec:R.validateSpec,style:R.style,styleSpec:R.styleSpec,objectElementValidators:{stops:function(sr){if(D==="identity")return[new er(sr.key,sr.value,'identity function may not have a "stops" property')];let Tr=[],Pr=sr.value;return Tr=Tr.concat(Lh({key:sr.key,value:Pr,valueSpec:sr.valueSpec,validateSpec:sr.validateSpec,style:sr.style,styleSpec:sr.styleSpec,arrayElementValidator:Ft})),ds(Pr)==="array"&&Pr.length===0&&Tr.push(new er(sr.key,Pr,"array must have at least one stop")),Tr},default:function(sr){return sr.validateSpec({key:sr.key,value:sr.value,valueSpec:S,validateSpec:sr.validateSpec,style:sr.style,styleSpec:sr.styleSpec})}}});return D==="identity"&&De&&Tt.push(new er(R.key,R.value,'missing required property "property"')),D==="identity"||R.value.stops||Tt.push(new er(R.key,R.value,'missing required property "stops"')),D==="exponential"&&R.valueSpec.expression&&!Zc(R.valueSpec)&&Tt.push(new er(R.key,R.value,"exponential functions not supported")),R.styleSpec.$version>=8&&(Ze&&!Cu(R.valueSpec)?Tt.push(new er(R.key,R.value,"property functions not supported")):De&&!Nf(R.valueSpec)&&Tt.push(new er(R.key,R.value,"zoom functions not supported"))),D!=="categorical"&&!at||R.value.property!==void 0||Tt.push(new er(R.key,R.value,'"property" property is required')),Tt;function Ft(sr){let Tr=[],Pr=sr.value,$r=sr.key;if(ds(Pr)!=="array")return[new er($r,Pr,`array expected, ${ds(Pr)} found`)];if(Pr.length!==2)return[new er($r,Pr,`array length 2 expected, length ${Pr.length} found`)];if(at){if(ds(Pr[0])!=="object")return[new er($r,Pr,`object expected, ${ds(Pr[0])} found`)];if(Pr[0].zoom===void 0)return[new er($r,Pr,"object stop key must have zoom")];if(Pr[0].value===void 0)return[new er($r,Pr,"object stop key must have value")];if(ue&&ue>Fs(Pr[0].zoom))return[new er($r,Pr[0].zoom,"stop zoom values must appear in ascending order")];Fs(Pr[0].zoom)!==ue&&(ue=Fs(Pr[0].zoom),te=void 0,ve={}),Tr=Tr.concat(xu({key:`${$r}[0]`,value:Pr[0],valueSpec:{zoom:{}},validateSpec:sr.validateSpec,style:sr.style,styleSpec:sr.styleSpec,objectElementValidators:{zoom:Is,value:Qt}}))}else Tr=Tr.concat(Qt({key:`${$r}[0]`,value:Pr[0],valueSpec:{},validateSpec:sr.validateSpec,style:sr.style,styleSpec:sr.styleSpec},Pr));return Lc(_u(Pr[1]))?Tr.concat([new er(`${$r}[1]`,Pr[1],"expressions are not allowed in function stops.")]):Tr.concat(sr.validateSpec({key:`${$r}[1]`,value:Pr[1],valueSpec:S,validateSpec:sr.validateSpec,style:sr.style,styleSpec:sr.styleSpec}))}function Qt(sr,Tr){let Pr=ds(sr.value),$r=Fs(sr.value),ni=sr.value!==null?sr.value:Tr;if(j){if(Pr!==j)return[new er(sr.key,ni,`${Pr} stop domain type must match previous stop domain type ${j}`)]}else j=Pr;if(Pr!=="number"&&Pr!=="string"&&Pr!=="boolean")return[new er(sr.key,ni,"stop domain value must be a number, string, or boolean")];if(Pr!=="number"&&D!=="categorical"){let Di=`number expected, ${Pr} found`;return Cu(S)&&D===void 0&&(Di+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new er(sr.key,ni,Di)]}return D!=="categorical"||Pr!=="number"||isFinite($r)&&Math.floor($r)===$r?D!=="categorical"&&Pr==="number"&&te!==void 0&&$r<te?[new er(sr.key,ni,"stop domain values must appear in ascending order")]:(te=$r,D==="categorical"&&$r in ve?[new er(sr.key,ni,"stop domain values must be unique")]:(ve[$r]=!0,[])):[new er(sr.key,ni,`integer expected, found ${$r}`)]}}function Ic(R){let S=(R.expressionContext==="property"?yu:fl)(_u(R.value),R.valueSpec);if(S.result==="error")return S.value.map(j=>new er(`${R.key}${j.key}`,R.value,j.message));let D=S.value.expression||S.value._styleExpression.expression;if(R.expressionContext==="property"&&R.propertyKey==="text-font"&&!D.outputDefined())return[new er(R.key,R.value,`Invalid data expression for "${R.propertyKey}". Output values must be contained as literals within the expression.`)];if(R.expressionContext==="property"&&R.propertyType==="layout"&&!rc(D))return[new er(R.key,R.value,'"feature-state" data expressions are not supported with layout properties.')];if(R.expressionContext==="filter"&&!rc(D))return[new er(R.key,R.value,'"feature-state" data expressions are not supported with filters.')];if(R.expressionContext&&R.expressionContext.indexOf("cluster")===0){if(!ah(D,["zoom","feature-state"]))return[new er(R.key,R.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(R.expressionContext==="cluster-initial"&&!Kh(D))return[new er(R.key,R.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function ju(R){let S=R.key,D=R.value,j=R.valueSpec,te=[];return Array.isArray(j.values)?j.values.indexOf(Fs(D))===-1&&te.push(new er(S,D,`expected one of [${j.values.join(", ")}], ${JSON.stringify(D)} found`)):Object.keys(j.values).indexOf(Fs(D))===-1&&te.push(new er(S,D,`expected one of [${Object.keys(j.values).join(", ")}], ${JSON.stringify(D)} found`)),te}function Vf(R){return gd(_u(R.value))?Ic(Ke({},R,{expressionContext:"filter",valueSpec:{value:"boolean"}})):pc(R)}function pc(R){let S=R.value,D=R.key;if(ds(S)!=="array")return[new er(D,S,`array expected, ${ds(S)} found`)];let j=R.styleSpec,te,ue=[];if(S.length<1)return[new er(D,S,"filter array must have at least 1 element")];switch(ue=ue.concat(ju({key:`${D}[0]`,value:S[0],valueSpec:j.filter_operator,style:R.style,styleSpec:R.styleSpec})),Fs(S[0])){case"<":case"<=":case">":case">=":S.length>=2&&Fs(S[1])==="$type"&&ue.push(new er(D,S,`"$type" cannot be use with operator "${S[0]}"`));case"==":case"!=":S.length!==3&&ue.push(new er(D,S,`filter array for operator "${S[0]}" must have 3 elements`));case"in":case"!in":S.length>=2&&(te=ds(S[1]),te!=="string"&&ue.push(new er(`${D}[1]`,S[1],`string expected, ${te} found`)));for(let ve=2;ve<S.length;ve++)te=ds(S[ve]),Fs(S[1])==="$type"?ue=ue.concat(ju({key:`${D}[${ve}]`,value:S[ve],valueSpec:j.geometry_type,style:R.style,styleSpec:R.styleSpec})):te!=="string"&&te!=="number"&&te!=="boolean"&&ue.push(new er(`${D}[${ve}]`,S[ve],`string, number, or boolean expected, ${te} found`));break;case"any":case"all":case"none":for(let ve=1;ve<S.length;ve++)ue=ue.concat(pc({key:`${D}[${ve}]`,value:S[ve],style:R.style,styleSpec:R.styleSpec}));break;case"has":case"!has":te=ds(S[1]),S.length!==2?ue.push(new er(D,S,`filter array for "${S[0]}" operator must have 2 elements`)):te!=="string"&&ue.push(new er(`${D}[1]`,S[1],`string expected, ${te} found`))}return ue}function pf(R,S){let D=R.key,j=R.validateSpec,te=R.style,ue=R.styleSpec,ve=R.value,De=R.objectKey,Ze=ue[`${S}_${R.layerType}`];if(!Ze)return[];let at=De.match(/^(.*)-transition$/);if(S==="paint"&&at&&Ze[at[1]]&&Ze[at[1]].transition)return j({key:D,value:ve,valueSpec:ue.transition,style:te,styleSpec:ue});let Tt=R.valueSpec||Ze[De];if(!Tt)return[new er(D,ve,`unknown property "${De}"`)];let Ft;if(ds(ve)==="string"&&Cu(Tt)&&!Tt.tokens&&(Ft=/^{([^}]+)}$/.exec(ve)))return[new er(D,ve,`"${De}" does not support interpolation syntax
+Use an identity property function instead: \`{ "type": "identity", "property": ${JSON.stringify(Ft[1])} }\`.`)];let Qt=[];return R.layerType==="symbol"&&(De==="text-field"&&te&&!te.glyphs&&Qt.push(new er(D,ve,'use of "text-field" requires a style "glyphs" property')),De==="text-font"&&Ch(_u(ve))&&Fs(ve.type)==="identity"&&Qt.push(new er(D,ve,'"text-font" does not support identity functions'))),Qt.concat(j({key:R.key,value:ve,valueSpec:Tt,style:te,styleSpec:ue,expressionContext:"property",propertyType:S,propertyKey:De}))}function Ph(R){return pf(R,"paint")}function Dl(R){return pf(R,"layout")}function Ih(R){let S=[],D=R.value,j=R.key,te=R.style,ue=R.styleSpec;D.type||D.ref||S.push(new er(j,D,'either "type" or "ref" is required'));let ve=Fs(D.type),De=Fs(D.ref);if(D.id){let Ze=Fs(D.id);for(let at=0;at<R.arrayIndex;at++){let Tt=te.layers[at];Fs(Tt.id)===Ze&&S.push(new er(j,D.id,`duplicate layer id "${D.id}", previously used at line ${Tt.id.__line__}`))}}if("ref"in D){let Ze;["type","source","source-layer","filter","layout"].forEach(at=>{at in D&&S.push(new er(j,D[at],`"${at}" is prohibited for ref layers`))}),te.layers.forEach(at=>{Fs(at.id)===De&&(Ze=at)}),Ze?Ze.ref?S.push(new er(j,D.ref,"ref cannot reference another ref layer")):ve=Fs(Ze.type):S.push(new er(j,D.ref,`ref layer "${De}" not found`))}else if(ve!=="background")if(D.source){let Ze=te.sources&&te.sources[D.source],at=Ze&&Fs(Ze.type);Ze?at==="vector"&&ve==="raster"?S.push(new er(j,D.source,`layer "${D.id}" requires a raster source`)):at!=="raster-dem"&&ve==="hillshade"?S.push(new er(j,D.source,`layer "${D.id}" requires a raster-dem source`)):at==="raster"&&ve!=="raster"?S.push(new er(j,D.source,`layer "${D.id}" requires a vector source`)):at!=="vector"||D["source-layer"]?at==="raster-dem"&&ve!=="hillshade"?S.push(new er(j,D.source,"raster-dem source can only be used with layer type 'hillshade'.")):ve!=="line"||!D.paint||!D.paint["line-gradient"]||at==="geojson"&&Ze.lineMetrics||S.push(new er(j,D,`layer "${D.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):S.push(new er(j,D,`layer "${D.id}" must specify a "source-layer"`)):S.push(new er(j,D.source,`source "${D.source}" not found`))}else S.push(new er(j,D,'missing required property "source"'));return S=S.concat(xu({key:j,value:D,valueSpec:ue.layer,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,objectElementValidators:{"*":()=>[],type:()=>R.validateSpec({key:`${j}.type`,value:D.type,valueSpec:ue.layer.type,style:R.style,styleSpec:R.styleSpec,validateSpec:R.validateSpec,object:D,objectKey:"type"}),filter:Vf,layout:Ze=>xu({layer:D,key:Ze.key,value:Ze.value,style:Ze.style,styleSpec:Ze.styleSpec,validateSpec:Ze.validateSpec,objectElementValidators:{"*":at=>Dl(Ke({layerType:ve},at))}}),paint:Ze=>xu({layer:D,key:Ze.key,value:Ze.value,style:Ze.style,styleSpec:Ze.styleSpec,validateSpec:Ze.validateSpec,objectElementValidators:{"*":at=>Ph(Ke({layerType:ve},at))}})}})),S}function Wu(R){let S=R.value,D=R.key,j=ds(S);return j!=="string"?[new er(D,S,`string expected, ${j} found`)]:[]}let Rc={promoteId:function({key:R,value:S}){if(ds(S)==="string")return Wu({key:R,value:S});{let D=[];for(let j in S)D.push(...Wu({key:`${R}.${j}`,value:S[j]}));return D}}};function gc(R){let S=R.value,D=R.key,j=R.styleSpec,te=R.style,ue=R.validateSpec;if(!S.type)return[new er(D,S,'"type" is required')];let ve=Fs(S.type),De;switch(ve){case"vector":case"raster":return De=xu({key:D,value:S,valueSpec:j[`source_${ve.replace("-","_")}`],style:R.style,styleSpec:j,objectElementValidators:Rc,validateSpec:ue}),De;case"raster-dem":return De=function(Ze){var at;let Tt=(at=Ze.sourceName)!==null&&at!==void 0?at:"",Ft=Ze.value,Qt=Ze.styleSpec,sr=Qt.source_raster_dem,Tr=Ze.style,Pr=[],$r=ds(Ft);if(Ft===void 0)return Pr;if($r!=="object")return Pr.push(new er("source_raster_dem",Ft,`object expected, ${$r} found`)),Pr;let ni=Fs(Ft.encoding)==="custom",Di=["redFactor","greenFactor","blueFactor","baseShift"],pi=Ze.value.encoding?`"${Ze.value.encoding}"`:"Default";for(let ki in Ft)!ni&&Di.includes(ki)?Pr.push(new er(ki,Ft[ki],`In "${Tt}": "${ki}" is only valid when "encoding" is set to "custom". ${pi} encoding found`)):sr[ki]?Pr=Pr.concat(Ze.validateSpec({key:ki,value:Ft[ki],valueSpec:sr[ki],validateSpec:Ze.validateSpec,style:Tr,styleSpec:Qt})):Pr.push(new er(ki,Ft[ki],`unknown property "${ki}"`));return Pr}({sourceName:D,value:S,style:R.style,styleSpec:j,validateSpec:ue}),De;case"geojson":if(De=xu({key:D,value:S,valueSpec:j.source_geojson,style:te,styleSpec:j,validateSpec:ue,objectElementValidators:Rc}),S.cluster)for(let Ze in S.clusterProperties){let[at,Tt]=S.clusterProperties[Ze],Ft=typeof at=="string"?[at,["accumulated"],["get",Ze]]:at;De.push(...Ic({key:`${D}.${Ze}.map`,value:Tt,validateSpec:ue,expressionContext:"cluster-map"})),De.push(...Ic({key:`${D}.${Ze}.reduce`,value:Ft,validateSpec:ue,expressionContext:"cluster-reduce"}))}return De;case"video":return xu({key:D,value:S,valueSpec:j.source_video,style:te,validateSpec:ue,styleSpec:j});case"image":return xu({key:D,value:S,valueSpec:j.source_image,style:te,validateSpec:ue,styleSpec:j});case"canvas":return[new er(D,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return ju({key:`${D}.type`,value:S.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:te,validateSpec:ue,styleSpec:j})}}function hl(R){let S=R.value,D=R.styleSpec,j=D.light,te=R.style,ue=[],ve=ds(S);if(S===void 0)return ue;if(ve!=="object")return ue=ue.concat([new er("light",S,`object expected, ${ve} found`)]),ue;for(let De in S){let Ze=De.match(/^(.*)-transition$/);ue=ue.concat(Ze&&j[Ze[1]]&&j[Ze[1]].transition?R.validateSpec({key:De,value:S[De],valueSpec:D.transition,validateSpec:R.validateSpec,style:te,styleSpec:D}):j[De]?R.validateSpec({key:De,value:S[De],valueSpec:j[De],validateSpec:R.validateSpec,style:te,styleSpec:D}):[new er(De,S[De],`unknown property "${De}"`)])}return ue}function iu(R){let S=R.value,D=R.styleSpec,j=D.sky,te=R.style,ue=ds(S);if(S===void 0)return[];if(ue!=="object")return[new er("sky",S,`object expected, ${ue} found`)];let ve=[];for(let De in S)ve=ve.concat(j[De]?R.validateSpec({key:De,value:S[De],valueSpec:j[De],style:te,styleSpec:D}):[new er(De,S[De],`unknown property "${De}"`)]);return ve}function mc(R){let S=R.value,D=R.styleSpec,j=D.terrain,te=R.style,ue=[],ve=ds(S);if(S===void 0)return ue;if(ve!=="object")return ue=ue.concat([new er("terrain",S,`object expected, ${ve} found`)]),ue;for(let De in S)ue=ue.concat(j[De]?R.validateSpec({key:De,value:S[De],valueSpec:j[De],validateSpec:R.validateSpec,style:te,styleSpec:D}):[new er(De,S[De],`unknown property "${De}"`)]);return ue}function Yc(R){let S=[],D=R.value,j=R.key;if(Array.isArray(D)){let te=[],ue=[];for(let ve in D)D[ve].id&&te.includes(D[ve].id)&&S.push(new er(j,D,`all the sprites' ids must be unique, but ${D[ve].id} is duplicated`)),te.push(D[ve].id),D[ve].url&&ue.includes(D[ve].url)&&S.push(new er(j,D,`all the sprites' URLs must be unique, but ${D[ve].url} is duplicated`)),ue.push(D[ve].url),S=S.concat(xu({key:`${j}[${ve}]`,value:D[ve],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:R.validateSpec}));return S}return Wu({key:j,value:D})}let nc={"*":()=>[],array:Lh,boolean:function(R){let S=R.value,D=R.key,j=ds(S);return j!=="boolean"?[new er(D,S,`boolean expected, ${j} found`)]:[]},number:Is,color:function(R){let S=R.key,D=R.value,j=ds(D);return j!=="string"?[new er(S,D,`color expected, ${j} found`)]:Zt.parse(String(D))?[]:[new er(S,D,`color expected, "${D}" found`)]},constants:sh,enum:ju,filter:Vf,function:Pf,layer:Ih,object:xu,source:gc,light:hl,sky:iu,terrain:mc,projection:function(R){let S=R.value,D=R.styleSpec,j=D.projection,te=R.style,ue=ds(S);if(S===void 0)return[];if(ue!=="object")return[new er("projection",S,`object expected, ${ue} found`)];let ve=[];for(let De in S)ve=ve.concat(j[De]?R.validateSpec({key:De,value:S[De],valueSpec:j[De],style:te,styleSpec:D}):[new er(De,S[De],`unknown property "${De}"`)]);return ve},string:Wu,formatted:function(R){return Wu(R).length===0?[]:Ic(R)},resolvedImage:function(R){return Wu(R).length===0?[]:Ic(R)},padding:function(R){let S=R.key,D=R.value;if(ds(D)==="array"){if(D.length<1||D.length>4)return[new er(S,D,`padding requires 1 to 4 values; ${D.length} values found`)];let j={type:"number"},te=[];for(let ue=0;ue<D.length;ue++)te=te.concat(R.validateSpec({key:`${S}[${ue}]`,value:D[ue],validateSpec:R.validateSpec,valueSpec:j}));return te}return Is({key:S,value:D,valueSpec:{}})},variableAnchorOffsetCollection:function(R){let S=R.key,D=R.value,j=ds(D),te=R.styleSpec;if(j!=="array"||D.length<1||D.length%2!=0)return[new er(S,D,"variableAnchorOffsetCollection requires a non-empty array of even length")];let ue=[];for(let ve=0;ve<D.length;ve+=2)ue=ue.concat(ju({key:`${S}[${ve}]`,value:D[ve],valueSpec:te.layout_symbol["text-anchor"]})),ue=ue.concat(Lh({key:`${S}[${ve+1}]`,value:D[ve+1],valueSpec:{length:2,value:"number"},validateSpec:R.validateSpec,style:R.style,styleSpec:te}));return ue},sprite:Yc};function gf(R){let S=R.value,D=R.valueSpec,j=R.styleSpec;return R.validateSpec=gf,D.expression&&Ch(Fs(S))?Pf(R):D.expression&&Lc(_u(S))?Ic(R):D.type&&nc[D.type]?nc[D.type](R):xu(Ke({},R,{valueSpec:D.type?j[D.type]:D}))}function gt(R){let S=R.value,D=R.key,j=Wu(R);return j.length||(S.indexOf("{fontstack}")===-1&&j.push(new er(D,S,'"glyphs" url must include a "{fontstack}" token')),S.indexOf("{range}")===-1&&j.push(new er(D,S,'"glyphs" url must include a "{range}" token'))),j}function Bt(R,S=ce){let D=[];return D=D.concat(gf({key:"",value:R,valueSpec:S.$root,styleSpec:S,style:R,validateSpec:gf,objectElementValidators:{glyphs:gt,"*":()=>[]}})),R.constants&&(D=D.concat(sh({key:"constants",value:R.constants,style:R,styleSpec:S,validateSpec:gf}))),vr(D)}function wr(R){return function(S){return R($Q(JQ({},S),{validateSpec:gf}))}}function vr(R){return[].concat(R).sort((S,D)=>S.line-D.line)}function Ur(R){return function(...S){return vr(R.apply(this,S))}}Bt.source=Ur(wr(gc)),Bt.sprite=Ur(wr(Yc)),Bt.glyphs=Ur(wr(gt)),Bt.light=Ur(wr(hl)),Bt.sky=Ur(wr(iu)),Bt.terrain=Ur(wr(mc)),Bt.layer=Ur(wr(Ih)),Bt.filter=Ur(wr(Vf)),Bt.paintProperty=Ur(wr(Ph)),Bt.layoutProperty=Ur(wr(Dl));let fi=Bt,xi=fi.light,Fi=fi.sky,Xi=fi.paintProperty,hn=fi.layoutProperty;function Ti(R,S){let D=!1;if(S&&S.length)for(let j of S)R.fire(new me(new Error(j.message))),D=!0;return D}class qi{constructor(S,D,j){let te=this.cells=[];if(S instanceof ArrayBuffer){this.arrayBuffer=S;let ve=new Int32Array(this.arrayBuffer);S=ve[0],this.d=(D=ve[1])+2*(j=ve[2]);for(let Ze=0;Ze<this.d*this.d;Ze++){let at=ve[3+Ze],Tt=ve[3+Ze+1];te.push(at===Tt?null:ve.subarray(at,Tt))}let De=ve[3+te.length+1];this.keys=ve.subarray(ve[3+te.length],De),this.bboxes=ve.subarray(De),this.insert=this._insertReadonly}else{this.d=D+2*j;for(let ve=0;ve<this.d*this.d;ve++)te.push([]);this.keys=[],this.bboxes=[]}this.n=D,this.extent=S,this.padding=j,this.scale=D/S,this.uid=0;let ue=j/D*S;this.min=-ue,this.max=S+ue}insert(S,D,j,te,ue){this._forEachCell(D,j,te,ue,this._insertCell,this.uid++,void 0,void 0),this.keys.push(S),this.bboxes.push(D),this.bboxes.push(j),this.bboxes.push(te),this.bboxes.push(ue)}_insertReadonly(){throw new Error("Cannot insert into a GridIndex created from an ArrayBuffer.")}_insertCell(S,D,j,te,ue,ve){this.cells[ue].push(ve)}query(S,D,j,te,ue){let ve=this.min,De=this.max;if(S<=ve&&D<=ve&&De<=j&&De<=te&&!ue)return Array.prototype.slice.call(this.keys);{let Ze=[];return this._forEachCell(S,D,j,te,this._queryCell,Ze,{},ue),Ze}}_queryCell(S,D,j,te,ue,ve,De,Ze){let at=this.cells[ue];if(at!==null){let Tt=this.keys,Ft=this.bboxes;for(let Qt=0;Qt<at.length;Qt++){let sr=at[Qt];if(De[sr]===void 0){let Tr=4*sr;(Ze?Ze(Ft[Tr+0],Ft[Tr+1],Ft[Tr+2],Ft[Tr+3]):S<=Ft[Tr+2]&&D<=Ft[Tr+3]&&j>=Ft[Tr+0]&&te>=Ft[Tr+1])?(De[sr]=!0,ve.push(Tt[sr])):De[sr]=!1}}}}_forEachCell(S,D,j,te,ue,ve,De,Ze){let at=this._convertToCellCoord(S),Tt=this._convertToCellCoord(D),Ft=this._convertToCellCoord(j),Qt=this._convertToCellCoord(te);for(let sr=at;sr<=Ft;sr++)for(let Tr=Tt;Tr<=Qt;Tr++){let Pr=this.d*Tr+sr;if((!Ze||Ze(this._convertFromCellCoord(sr),this._convertFromCellCoord(Tr),this._convertFromCellCoord(sr+1),this._convertFromCellCoord(Tr+1)))&&ue.call(this,S,D,j,te,Pr,ve,De,Ze))return}}_convertFromCellCoord(S){return(S-this.padding)/this.scale}_convertToCellCoord(S){return Math.max(0,Math.min(this.d-1,Math.floor(S*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let S=this.cells,D=3+this.cells.length+1+1,j=0;for(let ve=0;ve<this.cells.length;ve++)j+=this.cells[ve].length;let te=new Int32Array(D+j+this.keys.length+this.bboxes.length);te[0]=this.extent,te[1]=this.n,te[2]=this.padding;let ue=D;for(let ve=0;ve<S.length;ve++){let De=S[ve];te[3+ve]=ue,te.set(De,ue),ue+=De.length}return te[3+S.length]=ue,te.set(this.keys,ue),ue+=this.keys.length,te[3+S.length+1]=ue,te.set(this.bboxes,ue),ue+=this.bboxes.length,te.buffer}static serialize(S,D){let j=S.toArrayBuffer();return D&&D.push(j),{buffer:j}}static deserialize(S){return new qi(S.buffer)}}let Ii={};function mi(R,S,D={}){if(Ii[R])throw new Error(`${R} is already registered.`);Object.defineProperty(S,"_classRegistryKey",{value:R,writeable:!1}),Ii[R]={klass:S,omit:D.omit||[],shallow:D.shallow||[]}}mi("Object",Object),mi("TransferableGridIndex",qi),mi("Color",Zt),mi("Error",Error),mi("AJAXError",ge),mi("ResolvedImage",Mi),mi("StylePropertyFunction",Qs),mi("StyleExpression",Pu,{omit:["_evaluator"]}),mi("ZoomDependentExpression",ic),mi("ZoomConstantExpression",Xc),mi("CompoundExpression",Ml,{omit:["_evaluate"]});for(let R in kf)kf[R]._classRegistryKey||mi(`Expression_${R}`,kf[R]);function Pn(R){return R&&typeof ArrayBuffer!="undefined"&&(R instanceof ArrayBuffer||R.constructor&&R.constructor.name==="ArrayBuffer")}function Ma(R){return R.$name||R.constructor._classRegistryKey}function Ta(R){return!function(S){if(S===null||typeof S!="object")return!1;let D=Ma(S);return!(!D||D==="Object")}(R)&&(R==null||typeof R=="boolean"||typeof R=="number"||typeof R=="string"||R instanceof Boolean||R instanceof Number||R instanceof String||R instanceof Date||R instanceof RegExp||R instanceof Blob||R instanceof Error||Pn(R)||H(R)||ArrayBuffer.isView(R)||R instanceof ImageData)}function Ea(R,S){if(Ta(R))return(Pn(R)||H(R))&&S&&S.push(R),ArrayBuffer.isView(R)&&S&&S.push(R.buffer),R instanceof ImageData&&S&&S.push(R.data.buffer),R;if(Array.isArray(R)){let ue=[];for(let ve of R)ue.push(Ea(ve,S));return ue}if(typeof R!="object")throw new Error("can't serialize object of type "+typeof R);let D=Ma(R);if(!D)throw new Error(`can't serialize object of unregistered class ${R.constructor.name}`);if(!Ii[D])throw new Error(`${D} is not registered.`);let{klass:j}=Ii[D],te=j.serialize?j.serialize(R,S):{};if(j.serialize){if(S&&te===S[S.length-1])throw new Error("statically serialized object won't survive transfer of $name property")}else{for(let ue in R){if(!R.hasOwnProperty(ue)||Ii[D].omit.indexOf(ue)>=0)continue;let ve=R[ue];te[ue]=Ii[D].shallow.indexOf(ue)>=0?ve:Ea(ve,S)}R instanceof Error&&(te.message=R.message)}if(te.$name)throw new Error("$name property is reserved for worker serialization logic.");return D!=="Object"&&(te.$name=D),te}function qa(R){if(Ta(R))return R;if(Array.isArray(R))return R.map(qa);if(typeof R!="object")throw new Error("can't deserialize object of type "+typeof R);let S=Ma(R)||"Object";if(!Ii[S])throw new Error(`can't deserialize unregistered class ${S}`);let{klass:D}=Ii[S];if(!D)throw new Error(`can't deserialize unregistered class ${S}`);if(D.deserialize)return D.deserialize(R);let j=Object.create(D.prototype);for(let te of Object.keys(R)){if(te==="$name")continue;let ue=R[te];j[te]=Ii[S].shallow.indexOf(te)>=0?ue:qa(ue)}return j}class Cn{constructor(){this.first=!0}update(S,D){let j=Math.floor(S);return this.first?(this.first=!1,this.lastIntegerZoom=j,this.lastIntegerZoomTime=0,this.lastZoom=S,this.lastFloorZoom=j,!0):(this.lastFloorZoom>j?(this.lastIntegerZoom=j+1,this.lastIntegerZoomTime=D):this.lastFloorZoom<j&&(this.lastIntegerZoom=j,this.lastIntegerZoomTime=D),S!==this.lastZoom&&(this.lastZoom=S,this.lastFloorZoom=j,!0))}}let sn={"Latin-1 Supplement":R=>R>=128&&R<=255,"Hangul Jamo":R=>R>=4352&&R<=4607,Khmer:R=>R>=6016&&R<=6143,"General Punctuation":R=>R>=8192&&R<=8303,"Letterlike Symbols":R=>R>=8448&&R<=8527,"Number Forms":R=>R>=8528&&R<=8591,"Miscellaneous Technical":R=>R>=8960&&R<=9215,"Control Pictures":R=>R>=9216&&R<=9279,"Optical Character Recognition":R=>R>=9280&&R<=9311,"Enclosed Alphanumerics":R=>R>=9312&&R<=9471,"Geometric Shapes":R=>R>=9632&&R<=9727,"Miscellaneous Symbols":R=>R>=9728&&R<=9983,"Miscellaneous Symbols and Arrows":R=>R>=11008&&R<=11263,"Ideographic Description Characters":R=>R>=12272&&R<=12287,"CJK Symbols and Punctuation":R=>R>=12288&&R<=12351,Katakana:R=>R>=12448&&R<=12543,Kanbun:R=>R>=12688&&R<=12703,"CJK Strokes":R=>R>=12736&&R<=12783,"Enclosed CJK Letters and Months":R=>R>=12800&&R<=13055,"CJK Compatibility":R=>R>=13056&&R<=13311,"Yijing Hexagram Symbols":R=>R>=19904&&R<=19967,"Private Use Area":R=>R>=57344&&R<=63743,"Vertical Forms":R=>R>=65040&&R<=65055,"CJK Compatibility Forms":R=>R>=65072&&R<=65103,"Small Form Variants":R=>R>=65104&&R<=65135,"Halfwidth and Fullwidth Forms":R=>R>=65280&&R<=65519};function Ua(R){for(let S of R)if(Bo(S.charCodeAt(0)))return!0;return!1}function mo(R){for(let S of R)if(!Qo(S.charCodeAt(0)))return!1;return!0}function Xo(R){let S=R.map(D=>{try{return new RegExp(`\\p{sc=${D}}`,"u").source}catch(j){return null}}).filter(D=>D);return new RegExp(S.join("|"),"u")}let Ts=Xo(["Arab","Dupl","Mong","Ougr","Syrc"]);function Qo(R){return!Ts.test(String.fromCodePoint(R))}let ys=Xo(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function Bo(R){return!(R!==746&&R!==747&&(R<4352||!(sn["CJK Compatibility Forms"](R)&&!(R>=65097&&R<=65103)||sn["CJK Compatibility"](R)||sn["CJK Strokes"](R)||!(!sn["CJK Symbols and Punctuation"](R)||R>=12296&&R<=12305||R>=12308&&R<=12319||R===12336)||sn["Enclosed CJK Letters and Months"](R)||sn["Ideographic Description Characters"](R)||sn.Kanbun(R)||sn.Katakana(R)&&R!==12540||!(!sn["Halfwidth and Fullwidth Forms"](R)||R===65288||R===65289||R===65293||R>=65306&&R<=65310||R===65339||R===65341||R===65343||R>=65371&&R<=65503||R===65507||R>=65512&&R<=65519)||!(!sn["Small Form Variants"](R)||R>=65112&&R<=65118||R>=65123&&R<=65126)||sn["Vertical Forms"](R)||sn["Yijing Hexagram Symbols"](R)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(R))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(R))||ys.test(String.fromCodePoint(R)))))}function yl(R){return!(Bo(R)||function(S){return!!(sn["Latin-1 Supplement"](S)&&(S===167||S===169||S===174||S===177||S===188||S===189||S===190||S===215||S===247)||sn["General Punctuation"](S)&&(S===8214||S===8224||S===8225||S===8240||S===8241||S===8251||S===8252||S===8258||S===8263||S===8264||S===8265||S===8273)||sn["Letterlike Symbols"](S)||sn["Number Forms"](S)||sn["Miscellaneous Technical"](S)&&(S>=8960&&S<=8967||S>=8972&&S<=8991||S>=8996&&S<=9e3||S===9003||S>=9085&&S<=9114||S>=9150&&S<=9165||S===9167||S>=9169&&S<=9179||S>=9186&&S<=9215)||sn["Control Pictures"](S)&&S!==9251||sn["Optical Character Recognition"](S)||sn["Enclosed Alphanumerics"](S)||sn["Geometric Shapes"](S)||sn["Miscellaneous Symbols"](S)&&!(S>=9754&&S<=9759)||sn["Miscellaneous Symbols and Arrows"](S)&&(S>=11026&&S<=11055||S>=11088&&S<=11097||S>=11192&&S<=11243)||sn["CJK Symbols and Punctuation"](S)||sn.Katakana(S)||sn["Private Use Area"](S)||sn["CJK Compatibility Forms"](S)||sn["Small Form Variants"](S)||sn["Halfwidth and Fullwidth Forms"](S)||S===8734||S===8756||S===8757||S>=9984&&S<=10087||S>=10102&&S<=10131||S===65532||S===65533)}(R))}let Gs=Xo(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function Rs(R){return Gs.test(String.fromCodePoint(R))}function ia(R,S){return!(!S&&Rs(R)||R>=2304&&R<=3583||R>=3840&&R<=4255||sn.Khmer(R))}function Ka(R){for(let S of R)if(Rs(S.charCodeAt(0)))return!0;return!1}let vs=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(R){this.pluginStatus=R.pluginStatus,this.pluginURL=R.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(R){this.applyArabicShaping=R.applyArabicShaping,this.processBidirectionalText=R.processBidirectionalText,this.processStyledBidirectionalText=R.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Ko{constructor(S,D){this.zoom=S,D?(this.now=D.now,this.fadeDuration=D.fadeDuration,this.zoomHistory=D.zoomHistory,this.transition=D.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Cn,this.transition={})}isSupportedScript(S){return function(D,j){for(let te of D)if(!ia(te.charCodeAt(0),j))return!1;return!0}(S,vs.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let S=this.zoom,D=S-Math.floor(S),j=this.crossFadingFactor();return S>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:D+(1-D)*j}:{fromScale:.5,toScale:1,t:1-(1-j)*D}}}class nu{constructor(S,D){this.property=S,this.value=D,this.expression=function(j,te){if(Ch(j))return new Qs(j,te);if(Lc(j)){let ue=yu(j,te);if(ue.result==="error")throw new Error(ue.value.map(ve=>`${ve.key}: ${ve.message}`).join(", "));return ue.value}{let ue=j;return te.type==="color"&&typeof j=="string"?ue=Zt.parse(j):te.type!=="padding"||typeof j!="number"&&!Array.isArray(j)?te.type==="variableAnchorOffsetCollection"&&Array.isArray(j)&&(ue=Si.parse(j)):ue=Vr.parse(j),{kind:"constant",evaluate:()=>ue}}}(D===void 0?S.specification.default:D,S.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(S,D,j){return this.property.possiblyEvaluate(this,S,D,j)}}class Ru{constructor(S){this.property=S,this.value=new nu(S,void 0)}transitioned(S,D){return new mf(this.property,this.value,D,L({},S.transition,this.transition),S.now)}untransitioned(){return new mf(this.property,this.value,null,{},0)}}class ac{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitionablePropertyValues)}getValue(S){return g(this._values[S].value.value)}setValue(S,D){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new Ru(this._values[S].property)),this._values[S].value=new nu(this._values[S].property,D===null?void 0:g(D))}getTransition(S){return g(this._values[S].transition)}setTransition(S,D){Object.prototype.hasOwnProperty.call(this._values,S)||(this._values[S]=new Ru(this._values[S].property)),this._values[S].transition=g(D)||void 0}serialize(){let S={};for(let D of Object.keys(this._values)){let j=this.getValue(D);j!==void 0&&(S[D]=j);let te=this.getTransition(D);te!==void 0&&(S[`${D}-transition`]=te)}return S}transitioned(S,D){let j=new bu(this._properties);for(let te of Object.keys(this._values))j._values[te]=this._values[te].transitioned(S,D._values[te]);return j}untransitioned(){let S=new bu(this._properties);for(let D of Object.keys(this._values))S._values[D]=this._values[D].untransitioned();return S}}class mf{constructor(S,D,j,te,ue){this.property=S,this.value=D,this.begin=ue+te.delay||0,this.end=this.begin+te.duration||0,S.specification.transition&&(te.delay||te.duration)&&(this.prior=j)}possiblyEvaluate(S,D,j){let te=S.now||0,ue=this.value.possiblyEvaluate(S,D,j),ve=this.prior;if(ve){if(te>this.end)return this.prior=null,ue;if(this.value.isDataDriven())return this.prior=null,ue;if(te<this.begin)return ve.possiblyEvaluate(S,D,j);{let De=(te-this.begin)/(this.end-this.begin);return this.property.interpolate(ve.possiblyEvaluate(S,D,j),ue,function(Ze){if(Ze<=0)return 0;if(Ze>=1)return 1;let at=Ze*Ze,Tt=at*Ze;return 4*(Ze<.5?Tt:3*(Ze-at)+Tt-.75)}(De))}}return ue}}class bu{constructor(S){this._properties=S,this._values=Object.create(S.defaultTransitioningPropertyValues)}possiblyEvaluate(S,D,j){let te=new Dc(this._properties);for(let ue of Object.keys(this._values))te._values[ue]=this._values[ue].possiblyEvaluate(S,D,j);return te}hasTransition(){for(let S of Object.keys(this._values))if(this._values[S].prior)return!0;return!1}}class Kc{constructor(S){this._properties=S,this._values=Object.create(S.defaultPropertyValues)}hasValue(S){return this._values[S].value!==void 0}getValue(S){return g(this._values[S].value)}setValue(S,D){this._values[S]=new nu(this._values[S].property,D===null?void 0:g(D))}serialize(){let S={};for(let D of Object.keys(this._values)){let j=this.getValue(D);j!==void 0&&(S[D]=j)}return S}possiblyEvaluate(S,D,j){let te=new Dc(this._properties);for(let ue of Object.keys(this._values))te._values[ue]=this._values[ue].possiblyEvaluate(S,D,j);return te}}class Du{constructor(S,D,j){this.property=S,this.value=D,this.parameters=j}isConstant(){return this.value.kind==="constant"}constantOr(S){return this.value.kind==="constant"?this.value.value:S}evaluate(S,D,j,te){return this.property.evaluate(this.value,this.parameters,S,D,j,te)}}class Dc{constructor(S){this._properties=S,this._values=Object.create(S.defaultPossiblyEvaluatedValues)}get(S){return this._values[S]}}class Da{constructor(S){this.specification=S}possiblyEvaluate(S,D){if(S.isDataDriven())throw new Error("Value should not be data driven");return S.expression.evaluate(D)}interpolate(S,D,j){let te=Mo[this.specification.type];return te?te(S,D,j):S}}class eo{constructor(S,D){this.specification=S,this.overrides=D}possiblyEvaluate(S,D,j,te){return new Du(this,S.expression.kind==="constant"||S.expression.kind==="camera"?{kind:"constant",value:S.expression.evaluate(D,null,{},j,te)}:S.expression,D)}interpolate(S,D,j){if(S.value.kind!=="constant"||D.value.kind!=="constant")return S;if(S.value.value===void 0||D.value.value===void 0)return new Du(this,{kind:"constant",value:void 0},S.parameters);let te=Mo[this.specification.type];if(te){let ue=te(S.value.value,D.value.value,j);return new Du(this,{kind:"constant",value:ue},S.parameters)}return S}evaluate(S,D,j,te,ue,ve){return S.kind==="constant"?S.value:S.evaluate(D,j,te,ue,ve)}}class Jc extends eo{possiblyEvaluate(S,D,j,te){if(S.value===void 0)return new Du(this,{kind:"constant",value:void 0},D);if(S.expression.kind==="constant"){let ue=S.expression.evaluate(D,null,{},j,te),ve=S.property.specification.type==="resolvedImage"&&typeof ue!="string"?ue.name:ue,De=this._calculate(ve,ve,ve,D);return new Du(this,{kind:"constant",value:De},D)}if(S.expression.kind==="camera"){let ue=this._calculate(S.expression.evaluate({zoom:D.zoom-1}),S.expression.evaluate({zoom:D.zoom}),S.expression.evaluate({zoom:D.zoom+1}),D);return new Du(this,{kind:"constant",value:ue},D)}return new Du(this,S.expression,D)}evaluate(S,D,j,te,ue,ve){if(S.kind==="source"){let De=S.evaluate(D,j,te,ue,ve);return this._calculate(De,De,De,D)}return S.kind==="composite"?this._calculate(S.evaluate({zoom:Math.floor(D.zoom)-1},j,te),S.evaluate({zoom:Math.floor(D.zoom)},j,te),S.evaluate({zoom:Math.floor(D.zoom)+1},j,te),D):S.value}_calculate(S,D,j,te){return te.zoom>te.zoomHistory.lastIntegerZoom?{from:S,to:D}:{from:j,to:D}}interpolate(S){return S}}class yc{constructor(S){this.specification=S}possiblyEvaluate(S,D,j,te){if(S.value!==void 0){if(S.expression.kind==="constant"){let ue=S.expression.evaluate(D,null,{},j,te);return this._calculate(ue,ue,ue,D)}return this._calculate(S.expression.evaluate(new Ko(Math.floor(D.zoom-1),D)),S.expression.evaluate(new Ko(Math.floor(D.zoom),D)),S.expression.evaluate(new Ko(Math.floor(D.zoom+1),D)),D)}}_calculate(S,D,j,te){return te.zoom>te.zoomHistory.lastIntegerZoom?{from:S,to:D}:{from:j,to:D}}interpolate(S){return S}}class _c{constructor(S){this.specification=S}possiblyEvaluate(S,D,j,te){return!!S.expression.evaluate(D,null,{},j,te)}interpolate(){return!1}}class le{constructor(S){this.properties=S,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let D in S){let j=S[D];j.specification.overridable&&this.overridableProperties.push(D);let te=this.defaultPropertyValues[D]=new nu(j,void 0),ue=this.defaultTransitionablePropertyValues[D]=new Ru(j);this.defaultTransitioningPropertyValues[D]=ue.untransitioned(),this.defaultPossiblyEvaluatedValues[D]=te.possiblyEvaluate({})}}}mi("DataDrivenProperty",eo),mi("DataConstantProperty",Da),mi("CrossFadedDataDrivenProperty",Jc),mi("CrossFadedProperty",yc),mi("ColorRampProperty",_c);let w="-transition";class B extends Re{constructor(S,D){if(super(),this.id=S.id,this.type=S.type,this._featureFilter={filter:()=>!0,needGeometry:!1},S.type!=="custom"&&(this.metadata=S.metadata,this.minzoom=S.minzoom,this.maxzoom=S.maxzoom,S.type!=="background"&&(this.source=S.source,this.sourceLayer=S["source-layer"],this.filter=S.filter),D.layout&&(this._unevaluatedLayout=new Kc(D.layout)),D.paint)){this._transitionablePaint=new ac(D.paint);for(let j in S.paint)this.setPaintProperty(j,S.paint[j],{validate:!1});for(let j in S.layout)this.setLayoutProperty(j,S.layout[j],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Dc(D.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(S){return S==="visibility"?this.visibility:this._unevaluatedLayout.getValue(S)}setLayoutProperty(S,D,j={}){D!=null&&this._validate(hn,`layers.${this.id}.layout.${S}`,S,D,j)||(S!=="visibility"?this._unevaluatedLayout.setValue(S,D):this.visibility=D)}getPaintProperty(S){return S.endsWith(w)?this._transitionablePaint.getTransition(S.slice(0,-11)):this._transitionablePaint.getValue(S)}setPaintProperty(S,D,j={}){if(D!=null&&this._validate(Xi,`layers.${this.id}.paint.${S}`,S,D,j))return!1;if(S.endsWith(w))return this._transitionablePaint.setTransition(S.slice(0,-11),D||void 0),!1;{let te=this._transitionablePaint._values[S],ue=te.property.specification["property-type"]==="cross-faded-data-driven",ve=te.value.isDataDriven(),De=te.value;this._transitionablePaint.setValue(S,D),this._handleSpecialPaintPropertyUpdate(S);let Ze=this._transitionablePaint._values[S].value;return Ze.isDataDriven()||ve||ue||this._handleOverridablePaintPropertyUpdate(S,De,Ze)}}_handleSpecialPaintPropertyUpdate(S){}_handleOverridablePaintPropertyUpdate(S,D,j){return!1}isHidden(S){return!!(this.minzoom&&S<this.minzoom)||!!(this.maxzoom&&S>=this.maxzoom)||this.visibility==="none"}updateTransitions(S){this._transitioningPaint=this._transitionablePaint.transitioned(S,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(S,D){S.getCrossfadeParameters&&(this._crossfadeParameters=S.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(S,void 0,D)),this.paint=this._transitioningPaint.possiblyEvaluate(S,void 0,D)}serialize(){let S={id:this.id,type:this.type,source:this.source,"source-layer":this.sourceLayer,metadata:this.metadata,minzoom:this.minzoom,maxzoom:this.maxzoom,filter:this.filter,layout:this._unevaluatedLayout&&this._unevaluatedLayout.serialize(),paint:this._transitionablePaint&&this._transitionablePaint.serialize()};return this.visibility&&(S.layout=S.layout||{},S.layout.visibility=this.visibility),M(S,(D,j)=>!(D===void 0||j==="layout"&&!Object.keys(D).length||j==="paint"&&!Object.keys(D).length))}_validate(S,D,j,te,ue={}){return(!ue||ue.validate!==!1)&&Ti(this,S.call(fi,{key:D,layerType:this.type,objectKey:j,value:te,styleSpec:ce,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let S in this.paint._values){let D=this.paint.get(S);if(D instanceof Du&&Cu(D.property.specification)&&(D.value.kind==="source"||D.value.kind==="composite")&&D.value.isStateDependent)return!0}return!1}}let Q={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class ee{constructor(S,D){this._structArray=S,this._pos1=D*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class se{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(S,D){return S._trim(),D&&(S.isTransferred=!0,D.push(S.arrayBuffer)),{length:S.length,arrayBuffer:S.arrayBuffer}}static deserialize(S){let D=Object.create(this.prototype);return D.arrayBuffer=S.arrayBuffer,D.length=S.length,D.capacity=S.arrayBuffer.byteLength/D.bytesPerElement,D._refreshViews(),D}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(S){this.reserve(S),this.length=S}reserve(S){if(S>this.capacity){this.capacity=Math.max(S,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let D=this.uint8;this._refreshViews(),D&&this.uint8.set(D)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function qe(R,S=1){let D=0,j=0;return{members:R.map(te=>{let ue=Q[te.type].BYTES_PER_ELEMENT,ve=D=je(D,Math.max(S,ue)),De=te.components||1;return j=Math.max(j,ue),D+=ue*De,{name:te.name,type:te.type,components:De,offset:ve}}),size:je(D,Math.max(j,S)),alignment:S}}function je(R,S){return Math.ceil(R/S)*S}class it extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D){let j=this.length;return this.resize(j+1),this.emplace(j,S,D)}emplace(S,D,j){let te=2*S;return this.int16[te+0]=D,this.int16[te+1]=j,S}}it.prototype.bytesPerElement=4,mi("StructArrayLayout2i4",it);class yt extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,j){let te=this.length;return this.resize(te+1),this.emplace(te,S,D,j)}emplace(S,D,j,te){let ue=3*S;return this.int16[ue+0]=D,this.int16[ue+1]=j,this.int16[ue+2]=te,S}}yt.prototype.bytesPerElement=6,mi("StructArrayLayout3i6",yt);class Ot extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,j,te){let ue=this.length;return this.resize(ue+1),this.emplace(ue,S,D,j,te)}emplace(S,D,j,te,ue){let ve=4*S;return this.int16[ve+0]=D,this.int16[ve+1]=j,this.int16[ve+2]=te,this.int16[ve+3]=ue,S}}Ot.prototype.bytesPerElement=8,mi("StructArrayLayout4i8",Ot);class Nt extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve){let De=this.length;return this.resize(De+1),this.emplace(De,S,D,j,te,ue,ve)}emplace(S,D,j,te,ue,ve,De){let Ze=6*S;return this.int16[Ze+0]=D,this.int16[Ze+1]=j,this.int16[Ze+2]=te,this.int16[Ze+3]=ue,this.int16[Ze+4]=ve,this.int16[Ze+5]=De,S}}Nt.prototype.bytesPerElement=12,mi("StructArrayLayout2i4i12",Nt);class hr extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve){let De=this.length;return this.resize(De+1),this.emplace(De,S,D,j,te,ue,ve)}emplace(S,D,j,te,ue,ve,De){let Ze=4*S,at=8*S;return this.int16[Ze+0]=D,this.int16[Ze+1]=j,this.uint8[at+4]=te,this.uint8[at+5]=ue,this.uint8[at+6]=ve,this.uint8[at+7]=De,S}}hr.prototype.bytesPerElement=8,mi("StructArrayLayout2i4ub8",hr);class Sr extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D){let j=this.length;return this.resize(j+1),this.emplace(j,S,D)}emplace(S,D,j){let te=2*S;return this.float32[te+0]=D,this.float32[te+1]=j,S}}Sr.prototype.bytesPerElement=8,mi("StructArrayLayout2f8",Sr);class he extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve,De,Ze,at,Tt){let Ft=this.length;return this.resize(Ft+1),this.emplace(Ft,S,D,j,te,ue,ve,De,Ze,at,Tt)}emplace(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft){let Qt=10*S;return this.uint16[Qt+0]=D,this.uint16[Qt+1]=j,this.uint16[Qt+2]=te,this.uint16[Qt+3]=ue,this.uint16[Qt+4]=ve,this.uint16[Qt+5]=De,this.uint16[Qt+6]=Ze,this.uint16[Qt+7]=at,this.uint16[Qt+8]=Tt,this.uint16[Qt+9]=Ft,S}}he.prototype.bytesPerElement=20,mi("StructArrayLayout10ui20",he);class be extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt){let sr=this.length;return this.resize(sr+1),this.emplace(sr,S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt)}emplace(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr){let Tr=12*S;return this.int16[Tr+0]=D,this.int16[Tr+1]=j,this.int16[Tr+2]=te,this.int16[Tr+3]=ue,this.uint16[Tr+4]=ve,this.uint16[Tr+5]=De,this.uint16[Tr+6]=Ze,this.uint16[Tr+7]=at,this.int16[Tr+8]=Tt,this.int16[Tr+9]=Ft,this.int16[Tr+10]=Qt,this.int16[Tr+11]=sr,S}}be.prototype.bytesPerElement=24,mi("StructArrayLayout4i4ui4i24",be);class Pe extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,j){let te=this.length;return this.resize(te+1),this.emplace(te,S,D,j)}emplace(S,D,j,te){let ue=3*S;return this.float32[ue+0]=D,this.float32[ue+1]=j,this.float32[ue+2]=te,S}}Pe.prototype.bytesPerElement=12,mi("StructArrayLayout3f12",Pe);class Oe extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.uint32[1*S+0]=D,S}}Oe.prototype.bytesPerElement=4,mi("StructArrayLayout1ul4",Oe);class Je extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve,De,Ze,at){let Tt=this.length;return this.resize(Tt+1),this.emplace(Tt,S,D,j,te,ue,ve,De,Ze,at)}emplace(S,D,j,te,ue,ve,De,Ze,at,Tt){let Ft=10*S,Qt=5*S;return this.int16[Ft+0]=D,this.int16[Ft+1]=j,this.int16[Ft+2]=te,this.int16[Ft+3]=ue,this.int16[Ft+4]=ve,this.int16[Ft+5]=De,this.uint32[Qt+3]=Ze,this.uint16[Ft+8]=at,this.uint16[Ft+9]=Tt,S}}Je.prototype.bytesPerElement=20,mi("StructArrayLayout6i1ul2ui20",Je);class He extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve){let De=this.length;return this.resize(De+1),this.emplace(De,S,D,j,te,ue,ve)}emplace(S,D,j,te,ue,ve,De){let Ze=6*S;return this.int16[Ze+0]=D,this.int16[Ze+1]=j,this.int16[Ze+2]=te,this.int16[Ze+3]=ue,this.int16[Ze+4]=ve,this.int16[Ze+5]=De,S}}He.prototype.bytesPerElement=12,mi("StructArrayLayout2i2i2i12",He);class et extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue){let ve=this.length;return this.resize(ve+1),this.emplace(ve,S,D,j,te,ue)}emplace(S,D,j,te,ue,ve){let De=4*S,Ze=8*S;return this.float32[De+0]=D,this.float32[De+1]=j,this.float32[De+2]=te,this.int16[Ze+6]=ue,this.int16[Ze+7]=ve,S}}et.prototype.bytesPerElement=16,mi("StructArrayLayout2f1f2i16",et);class Mt extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve){let De=this.length;return this.resize(De+1),this.emplace(De,S,D,j,te,ue,ve)}emplace(S,D,j,te,ue,ve,De){let Ze=16*S,at=4*S,Tt=8*S;return this.uint8[Ze+0]=D,this.uint8[Ze+1]=j,this.float32[at+1]=te,this.float32[at+2]=ue,this.int16[Tt+6]=ve,this.int16[Tt+7]=De,S}}Mt.prototype.bytesPerElement=16,mi("StructArrayLayout2ub2f2i16",Mt);class Dt extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,j){let te=this.length;return this.resize(te+1),this.emplace(te,S,D,j)}emplace(S,D,j,te){let ue=3*S;return this.uint16[ue+0]=D,this.uint16[ue+1]=j,this.uint16[ue+2]=te,S}}Dt.prototype.bytesPerElement=6,mi("StructArrayLayout3ui6",Dt);class Ut extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr,$r,ni){let Di=this.length;return this.resize(Di+1),this.emplace(Di,S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr,$r,ni)}emplace(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr,$r,ni,Di){let pi=24*S,ki=12*S,Zi=48*S;return this.int16[pi+0]=D,this.int16[pi+1]=j,this.uint16[pi+2]=te,this.uint16[pi+3]=ue,this.uint32[ki+2]=ve,this.uint32[ki+3]=De,this.uint32[ki+4]=Ze,this.uint16[pi+10]=at,this.uint16[pi+11]=Tt,this.uint16[pi+12]=Ft,this.float32[ki+7]=Qt,this.float32[ki+8]=sr,this.uint8[Zi+36]=Tr,this.uint8[Zi+37]=Pr,this.uint8[Zi+38]=$r,this.uint32[ki+10]=ni,this.int16[pi+22]=Di,S}}Ut.prototype.bytesPerElement=48,mi("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Ut);class tr extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr,$r,ni,Di,pi,ki,Zi,ta,Va,Io,La,Hn,lo,$a){let Xa=this.length;return this.resize(Xa+1),this.emplace(Xa,S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr,$r,ni,Di,pi,ki,Zi,ta,Va,Io,La,Hn,lo,$a)}emplace(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr,$r,ni,Di,pi,ki,Zi,ta,Va,Io,La,Hn,lo,$a,Xa){let Tn=32*S,bo=16*S;return this.int16[Tn+0]=D,this.int16[Tn+1]=j,this.int16[Tn+2]=te,this.int16[Tn+3]=ue,this.int16[Tn+4]=ve,this.int16[Tn+5]=De,this.int16[Tn+6]=Ze,this.int16[Tn+7]=at,this.uint16[Tn+8]=Tt,this.uint16[Tn+9]=Ft,this.uint16[Tn+10]=Qt,this.uint16[Tn+11]=sr,this.uint16[Tn+12]=Tr,this.uint16[Tn+13]=Pr,this.uint16[Tn+14]=$r,this.uint16[Tn+15]=ni,this.uint16[Tn+16]=Di,this.uint16[Tn+17]=pi,this.uint16[Tn+18]=ki,this.uint16[Tn+19]=Zi,this.uint16[Tn+20]=ta,this.uint16[Tn+21]=Va,this.uint16[Tn+22]=Io,this.uint32[bo+12]=La,this.float32[bo+13]=Hn,this.float32[bo+14]=lo,this.uint16[Tn+30]=$a,this.uint16[Tn+31]=Xa,S}}tr.prototype.bytesPerElement=64,mi("StructArrayLayout8i15ui1ul2f2ui64",tr);class mr extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.float32[1*S+0]=D,S}}mr.prototype.bytesPerElement=4,mi("StructArrayLayout1f4",mr);class Rr extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,j){let te=this.length;return this.resize(te+1),this.emplace(te,S,D,j)}emplace(S,D,j,te){let ue=3*S;return this.uint16[6*S+0]=D,this.float32[ue+1]=j,this.float32[ue+2]=te,S}}Rr.prototype.bytesPerElement=12,mi("StructArrayLayout1ui2f12",Rr);class zr extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D,j){let te=this.length;return this.resize(te+1),this.emplace(te,S,D,j)}emplace(S,D,j,te){let ue=4*S;return this.uint32[2*S+0]=D,this.uint16[ue+2]=j,this.uint16[ue+3]=te,S}}zr.prototype.bytesPerElement=8,mi("StructArrayLayout1ul2ui8",zr);class Xr extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S,D){let j=this.length;return this.resize(j+1),this.emplace(j,S,D)}emplace(S,D,j){let te=2*S;return this.uint16[te+0]=D,this.uint16[te+1]=j,S}}Xr.prototype.bytesPerElement=4,mi("StructArrayLayout2ui4",Xr);class di extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(S){let D=this.length;return this.resize(D+1),this.emplace(D,S)}emplace(S,D){return this.uint16[1*S+0]=D,S}}di.prototype.bytesPerElement=2,mi("StructArrayLayout1ui2",di);class Li extends se{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(S,D,j,te){let ue=this.length;return this.resize(ue+1),this.emplace(ue,S,D,j,te)}emplace(S,D,j,te,ue){let ve=4*S;return this.float32[ve+0]=D,this.float32[ve+1]=j,this.float32[ve+2]=te,this.float32[ve+3]=ue,S}}Li.prototype.bytesPerElement=16,mi("StructArrayLayout4f16",Li);class Ci extends ee{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new u(this.anchorPointX,this.anchorPointY)}}Ci.prototype.size=20;class Qi extends Je{get(S){return new Ci(this,S)}}mi("CollisionBoxArray",Qi);class Mn extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(S){this._structArray.uint8[this._pos1+37]=S}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(S){this._structArray.uint8[this._pos1+38]=S}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(S){this._structArray.uint32[this._pos4+10]=S}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}Mn.prototype.size=48;class pa extends Ut{get(S){return new Mn(this,S)}}mi("PlacedSymbolArray",pa);class ea extends ee{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(S){this._structArray.uint32[this._pos4+12]=S}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}ea.prototype.size=64;class Ga extends tr{get(S){return new ea(this,S)}}mi("SymbolInstanceArray",Ga);class To extends mr{getoffsetX(S){return this.float32[1*S+0]}}mi("GlyphOffsetArray",To);class Wa extends yt{getx(S){return this.int16[3*S+0]}gety(S){return this.int16[3*S+1]}gettileUnitDistanceFromAnchor(S){return this.int16[3*S+2]}}mi("SymbolLineVertexArray",Wa);class co extends ee{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}co.prototype.size=12;class Ro extends Rr{get(S){return new co(this,S)}}mi("TextAnchorOffsetArray",Ro);class Ds extends ee{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}Ds.prototype.size=8;class As extends zr{get(S){return new Ds(this,S)}}mi("FeatureIndexArray",As);class yo extends it{}class po extends it{}class _l extends it{}class Hl extends Nt{}class Zu extends hr{}class cu extends Sr{}class el extends he{}class au extends be{}class zc extends Pe{}class zl extends Oe{}class Fl extends He{}class Z extends Mt{}class oe extends Dt{}class we extends Xr{}let Be=qe([{name:"a_pos",components:2,type:"Int16"}],4),{members:Ue}=Be;class We{constructor(S=[]){this.segments=S}prepareSegment(S,D,j,te){let ue=this.segments[this.segments.length-1];return S>We.MAX_VERTEX_ARRAY_LENGTH&&T(`Max vertices per segment is ${We.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${S}`),(!ue||ue.vertexLength+S>We.MAX_VERTEX_ARRAY_LENGTH||ue.sortKey!==te)&&(ue={vertexOffset:D.length,primitiveOffset:j.length,vertexLength:0,primitiveLength:0},te!==void 0&&(ue.sortKey=te),this.segments.push(ue)),ue}get(){return this.segments}destroy(){for(let S of this.segments)for(let D in S.vaos)S.vaos[D].destroy()}static simpleSegment(S,D,j,te){return new We([{vertexOffset:S,primitiveOffset:D,vertexLength:j,primitiveLength:te,vaos:{},sortKey:0}])}}function wt(R,S){return 256*(R=k(Math.floor(R),0,255))+k(Math.floor(S),0,255)}We.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,mi("SegmentVector",We);let tt=qe([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var zt={exports:{}},or={exports:{}};or.exports=function(R,S){var D,j,te,ue,ve,De,Ze,at;for(j=R.length-(D=3&R.length),te=S,ve=3432918353,De=461845907,at=0;at<j;)Ze=255&R.charCodeAt(at)|(255&R.charCodeAt(++at))<<8|(255&R.charCodeAt(++at))<<16|(255&R.charCodeAt(++at))<<24,++at,te=27492+(65535&(ue=5*(65535&(te=(te^=Ze=(65535&(Ze=(Ze=(65535&Ze)*ve+(((Ze>>>16)*ve&65535)<<16)&4294967295)<<15|Ze>>>17))*De+(((Ze>>>16)*De&65535)<<16)&4294967295)<<13|te>>>19))+((5*(te>>>16)&65535)<<16)&4294967295))+((58964+(ue>>>16)&65535)<<16);switch(Ze=0,D){case 3:Ze^=(255&R.charCodeAt(at+2))<<16;case 2:Ze^=(255&R.charCodeAt(at+1))<<8;case 1:te^=Ze=(65535&(Ze=(Ze=(65535&(Ze^=255&R.charCodeAt(at)))*ve+(((Ze>>>16)*ve&65535)<<16)&4294967295)<<15|Ze>>>17))*De+(((Ze>>>16)*De&65535)<<16)&4294967295}return te^=R.length,te=2246822507*(65535&(te^=te>>>16))+((2246822507*(te>>>16)&65535)<<16)&4294967295,te=3266489909*(65535&(te^=te>>>13))+((3266489909*(te>>>16)&65535)<<16)&4294967295,(te^=te>>>16)>>>0};var lr=or.exports,Dr={exports:{}};Dr.exports=function(R,S){for(var D,j=R.length,te=S^j,ue=0;j>=4;)D=1540483477*(65535&(D=255&R.charCodeAt(ue)|(255&R.charCodeAt(++ue))<<8|(255&R.charCodeAt(++ue))<<16|(255&R.charCodeAt(++ue))<<24))+((1540483477*(D>>>16)&65535)<<16),te=1540483477*(65535&te)+((1540483477*(te>>>16)&65535)<<16)^(D=1540483477*(65535&(D^=D>>>24))+((1540483477*(D>>>16)&65535)<<16)),j-=4,++ue;switch(j){case 3:te^=(255&R.charCodeAt(ue+2))<<16;case 2:te^=(255&R.charCodeAt(ue+1))<<8;case 1:te=1540483477*(65535&(te^=255&R.charCodeAt(ue)))+((1540483477*(te>>>16)&65535)<<16)}return te=1540483477*(65535&(te^=te>>>13))+((1540483477*(te>>>16)&65535)<<16),(te^=te>>>15)>>>0};var Ir=lr,oi=Dr.exports;zt.exports=Ir,zt.exports.murmur3=Ir,zt.exports.murmur2=oi;var ui=o(zt.exports);class qr{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(S,D,j,te){this.ids.push(Kr(S)),this.positions.push(D,j,te)}getPositions(S){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let D=Kr(S),j=0,te=this.ids.length-1;for(;j<te;){let ve=j+te>>1;this.ids[ve]>=D?te=ve:j=ve+1}let ue=[];for(;this.ids[j]===D;)ue.push({index:this.positions[3*j],start:this.positions[3*j+1],end:this.positions[3*j+2]}),j++;return ue}static serialize(S,D){let j=new Float64Array(S.ids),te=new Uint32Array(S.positions);return ii(j,te,0,j.length-1),D&&D.push(j.buffer,te.buffer),{ids:j,positions:te}}static deserialize(S){let D=new qr;return D.ids=S.ids,D.positions=S.positions,D.indexed=!0,D}}function Kr(R){let S=+R;return!isNaN(S)&&S<=Number.MAX_SAFE_INTEGER?S:ui(String(R))}function ii(R,S,D,j){for(;D<j;){let te=R[D+j>>1],ue=D-1,ve=j+1;for(;;){do ue++;while(R[ue]<te);do ve--;while(R[ve]>te);if(ue>=ve)break;vi(R,ue,ve),vi(S,3*ue,3*ve),vi(S,3*ue+1,3*ve+1),vi(S,3*ue+2,3*ve+2)}ve-D<j-ve?(ii(R,S,D,ve),D=ve+1):(ii(R,S,ve+1,j),j=ve)}}function vi(R,S,D){let j=R[S];R[S]=R[D],R[D]=j}mi("FeaturePositionMap",qr);class ci{constructor(S,D){this.gl=S.gl,this.location=D}}class Jr extends ci{constructor(S,D){super(S,D),this.current=0}set(S){this.current!==S&&(this.current=S,this.gl.uniform1f(this.location,S))}}class un extends ci{constructor(S,D){super(S,D),this.current=[0,0,0,0]}set(S){S[0]===this.current[0]&&S[1]===this.current[1]&&S[2]===this.current[2]&&S[3]===this.current[3]||(this.current=S,this.gl.uniform4f(this.location,S[0],S[1],S[2],S[3]))}}class dn extends ci{constructor(S,D){super(S,D),this.current=Zt.transparent}set(S){S.r===this.current.r&&S.g===this.current.g&&S.b===this.current.b&&S.a===this.current.a||(this.current=S,this.gl.uniform4f(this.location,S.r,S.g,S.b,S.a))}}let En=new Float32Array(16);function Nn(R){return[wt(255*R.r,255*R.g),wt(255*R.b,255*R.a)]}class ga{constructor(S,D,j){this.value=S,this.uniformNames=D.map(te=>`u_${te}`),this.type=j}setUniform(S,D,j){S.set(j.constantOr(this.value))}getBinding(S,D,j){return this.type==="color"?new dn(S,D):new Jr(S,D)}}class ya{constructor(S,D){this.uniformNames=D.map(j=>`u_${j}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(S,D){this.pixelRatioFrom=D.pixelRatio,this.pixelRatioTo=S.pixelRatio,this.patternFrom=D.tlbr,this.patternTo=S.tlbr}setUniform(S,D,j,te){let ue=te==="u_pattern_to"?this.patternTo:te==="u_pattern_from"?this.patternFrom:te==="u_pixel_ratio_to"?this.pixelRatioTo:te==="u_pixel_ratio_from"?this.pixelRatioFrom:null;ue&&S.set(ue)}getBinding(S,D,j){return j.substr(0,9)==="u_pattern"?new un(S,D):new Jr(S,D)}}class so{constructor(S,D,j,te){this.expression=S,this.type=j,this.maxValue=0,this.paintVertexAttributes=D.map(ue=>({name:`a_${ue}`,type:"Float32",components:j==="color"?2:1,offset:0})),this.paintVertexArray=new te}populatePaintArray(S,D,j,te,ue){let ve=this.paintVertexArray.length,De=this.expression.evaluate(new Ko(0),D,{},te,[],ue);this.paintVertexArray.resize(S),this._setPaintValue(ve,S,De)}updatePaintArray(S,D,j,te){let ue=this.expression.evaluate({zoom:0},j,te);this._setPaintValue(S,D,ue)}_setPaintValue(S,D,j){if(this.type==="color"){let te=Nn(j);for(let ue=S;ue<D;ue++)this.paintVertexArray.emplace(ue,te[0],te[1])}else{for(let te=S;te<D;te++)this.paintVertexArray.emplace(te,j);this.maxValue=Math.max(this.maxValue,Math.abs(j))}}upload(S){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=S.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}}class wa{constructor(S,D,j,te,ue,ve){this.expression=S,this.uniformNames=D.map(De=>`u_${De}_t`),this.type=j,this.useIntegerZoom=te,this.zoom=ue,this.maxValue=0,this.paintVertexAttributes=D.map(De=>({name:`a_${De}`,type:"Float32",components:j==="color"?4:2,offset:0})),this.paintVertexArray=new ve}populatePaintArray(S,D,j,te,ue){let ve=this.expression.evaluate(new Ko(this.zoom),D,{},te,[],ue),De=this.expression.evaluate(new Ko(this.zoom+1),D,{},te,[],ue),Ze=this.paintVertexArray.length;this.paintVertexArray.resize(S),this._setPaintValue(Ze,S,ve,De)}updatePaintArray(S,D,j,te){let ue=this.expression.evaluate({zoom:this.zoom},j,te),ve=this.expression.evaluate({zoom:this.zoom+1},j,te);this._setPaintValue(S,D,ue,ve)}_setPaintValue(S,D,j,te){if(this.type==="color"){let ue=Nn(j),ve=Nn(te);for(let De=S;De<D;De++)this.paintVertexArray.emplace(De,ue[0],ue[1],ve[0],ve[1])}else{for(let ue=S;ue<D;ue++)this.paintVertexArray.emplace(ue,j,te);this.maxValue=Math.max(this.maxValue,Math.abs(j),Math.abs(te))}}upload(S){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=S.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}setUniform(S,D){let j=this.useIntegerZoom?Math.floor(D.zoom):D.zoom,te=k(this.expression.interpolationFactor(j,this.zoom,this.zoom+1),0,1);S.set(te)}getBinding(S,D,j){return new Jr(S,D)}}class io{constructor(S,D,j,te,ue,ve){this.expression=S,this.type=D,this.useIntegerZoom=j,this.zoom=te,this.layerId=ve,this.zoomInPaintVertexArray=new ue,this.zoomOutPaintVertexArray=new ue}populatePaintArray(S,D,j){let te=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(S),this.zoomOutPaintVertexArray.resize(S),this._setPaintValues(te,S,D.patterns&&D.patterns[this.layerId],j)}updatePaintArray(S,D,j,te,ue){this._setPaintValues(S,D,j.patterns&&j.patterns[this.layerId],ue)}_setPaintValues(S,D,j,te){if(!te||!j)return;let{min:ue,mid:ve,max:De}=j,Ze=te[ue],at=te[ve],Tt=te[De];if(Ze&&at&&Tt)for(let Ft=S;Ft<D;Ft++)this.zoomInPaintVertexArray.emplace(Ft,at.tl[0],at.tl[1],at.br[0],at.br[1],Ze.tl[0],Ze.tl[1],Ze.br[0],Ze.br[1],at.pixelRatio,Ze.pixelRatio),this.zoomOutPaintVertexArray.emplace(Ft,at.tl[0],at.tl[1],at.br[0],at.br[1],Tt.tl[0],Tt.tl[1],Tt.br[0],Tt.br[1],at.pixelRatio,Tt.pixelRatio)}upload(S){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=S.createVertexBuffer(this.zoomInPaintVertexArray,tt.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=S.createVertexBuffer(this.zoomOutPaintVertexArray,tt.members,this.expression.isStateDependent))}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()}}class Ss{constructor(S,D,j){this.binders={},this._buffers=[];let te=[];for(let ue in S.paint._values){if(!j(ue))continue;let ve=S.paint.get(ue);if(!(ve instanceof Du&&Cu(ve.property.specification)))continue;let De=Ns(ue,S.type),Ze=ve.value,at=ve.property.specification.type,Tt=ve.property.useIntegerZoom,Ft=ve.property.specification["property-type"],Qt=Ft==="cross-faded"||Ft==="cross-faded-data-driven";if(Ze.kind==="constant")this.binders[ue]=Qt?new ya(Ze.value,De):new ga(Ze.value,De,at),te.push(`/u_${ue}`);else if(Ze.kind==="source"||Qt){let sr=pn(ue,at,"source");this.binders[ue]=Qt?new io(Ze,at,Tt,D,sr,S.id):new so(Ze,De,at,sr),te.push(`/a_${ue}`)}else{let sr=pn(ue,at,"composite");this.binders[ue]=new wa(Ze,De,at,Tt,D,sr),te.push(`/z_${ue}`)}}this.cacheKey=te.sort().join("")}getMaxValue(S){let D=this.binders[S];return D instanceof so||D instanceof wa?D.maxValue:0}populatePaintArrays(S,D,j,te,ue){for(let ve in this.binders){let De=this.binders[ve];(De instanceof so||De instanceof wa||De instanceof io)&&De.populatePaintArray(S,D,j,te,ue)}}setConstantPatternPositions(S,D){for(let j in this.binders){let te=this.binders[j];te instanceof ya&&te.setConstantPatternPositions(S,D)}}updatePaintArrays(S,D,j,te,ue){let ve=!1;for(let De in S){let Ze=D.getPositions(De);for(let at of Ze){let Tt=j.feature(at.index);for(let Ft in this.binders){let Qt=this.binders[Ft];if((Qt instanceof so||Qt instanceof wa||Qt instanceof io)&&Qt.expression.isStateDependent===!0){let sr=te.paint.get(Ft);Qt.expression=sr.value,Qt.updatePaintArray(at.start,at.end,Tt,S[De],ue),ve=!0}}}}return ve}defines(){let S=[];for(let D in this.binders){let j=this.binders[D];(j instanceof ga||j instanceof ya)&&S.push(...j.uniformNames.map(te=>`#define HAS_UNIFORM_${te}`))}return S}getBinderAttributes(){let S=[];for(let D in this.binders){let j=this.binders[D];if(j instanceof so||j instanceof wa)for(let te=0;te<j.paintVertexAttributes.length;te++)S.push(j.paintVertexAttributes[te].name);else if(j instanceof io)for(let te=0;te<tt.members.length;te++)S.push(tt.members[te].name)}return S}getBinderUniforms(){let S=[];for(let D in this.binders){let j=this.binders[D];if(j instanceof ga||j instanceof ya||j instanceof wa)for(let te of j.uniformNames)S.push(te)}return S}getPaintVertexBuffers(){return this._buffers}getUniforms(S,D){let j=[];for(let te in this.binders){let ue=this.binders[te];if(ue instanceof ga||ue instanceof ya||ue instanceof wa){for(let ve of ue.uniformNames)if(D[ve]){let De=ue.getBinding(S,D[ve],ve);j.push({name:ve,property:te,binding:De})}}}return j}setUniforms(S,D,j,te){for(let{name:ue,property:ve,binding:De}of D)this.binders[ve].setUniform(De,te,j.get(ve),ue)}updatePaintBuffers(S){this._buffers=[];for(let D in this.binders){let j=this.binders[D];if(S&&j instanceof io){let te=S.fromScale===2?j.zoomInPaintVertexBuffer:j.zoomOutPaintVertexBuffer;te&&this._buffers.push(te)}else(j instanceof so||j instanceof wa)&&j.paintVertexBuffer&&this._buffers.push(j.paintVertexBuffer)}}upload(S){for(let D in this.binders){let j=this.binders[D];(j instanceof so||j instanceof wa||j instanceof io)&&j.upload(S)}this.updatePaintBuffers()}destroy(){for(let S in this.binders){let D=this.binders[S];(D instanceof so||D instanceof wa||D instanceof io)&&D.destroy()}}}class _s{constructor(S,D,j=()=>!0){this.programConfigurations={};for(let te of S)this.programConfigurations[te.id]=new Ss(te,D,j);this.needsUpload=!1,this._featureMap=new qr,this._bufferOffset=0}populatePaintArrays(S,D,j,te,ue,ve){for(let De in this.programConfigurations)this.programConfigurations[De].populatePaintArrays(S,D,te,ue,ve);D.id!==void 0&&this._featureMap.add(D.id,j,this._bufferOffset,S),this._bufferOffset=S,this.needsUpload=!0}updatePaintArrays(S,D,j,te){for(let ue of j)this.needsUpload=this.programConfigurations[ue.id].updatePaintArrays(S,this._featureMap,D,ue,te)||this.needsUpload}get(S){return this.programConfigurations[S]}upload(S){if(this.needsUpload){for(let D in this.programConfigurations)this.programConfigurations[D].upload(S);this.needsUpload=!1}}destroy(){for(let S in this.programConfigurations)this.programConfigurations[S].destroy()}}function Ns(R,S){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[R]||[R.replace(`${S}-`,"").replace(/-/g,"_")]}function pn(R,S,D){let j={color:{source:Sr,composite:Li},number:{source:mr,composite:Sr}},te=function(ue){return{"line-pattern":{source:el,composite:el},"fill-pattern":{source:el,composite:el},"fill-extrusion-pattern":{source:el,composite:el}}[ue]}(R);return te&&te[D]||j[S][D]}mi("ConstantBinder",ga),mi("CrossFadedConstantBinder",ya),mi("SourceExpressionBinder",so),mi("CrossFadedCompositeBinder",io),mi("CompositeExpressionBinder",wa),mi("ProgramConfiguration",Ss,{omit:["_buffers"]}),mi("ProgramConfigurationSet",_s);let za=8192,Lo=Math.pow(2,14)-1,Fo=-Lo-1;function js(R){let S=za/R.extent,D=R.loadGeometry();for(let j=0;j<D.length;j++){let te=D[j];for(let ue=0;ue<te.length;ue++){let ve=te[ue],De=Math.round(ve.x*S),Ze=Math.round(ve.y*S);ve.x=k(De,Fo,Lo),ve.y=k(Ze,Fo,Lo),(De<ve.x||De>ve.x+1||Ze<ve.y||Ze>ve.y+1)&&T("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return D}function xl(R,S){return{type:R.type,id:R.id,properties:R.properties,geometry:S?js(R):[]}}function fu(R,S,D,j,te){R.emplaceBack(2*S+(j+1)/2,2*D+(te+1)/2)}class dl{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new po,this.indexArray=new oe,this.segments=new We,this.programConfigurations=new _s(S.layers,S.zoom),this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,j){let te=this.layers[0],ue=[],ve=null,De=!1;te.type==="circle"&&(ve=te.layout.get("circle-sort-key"),De=!ve.isConstant());for(let{feature:Ze,id:at,index:Tt,sourceLayerIndex:Ft}of S){let Qt=this.layers[0]._featureFilter.needGeometry,sr=xl(Ze,Qt);if(!this.layers[0]._featureFilter.filter(new Ko(this.zoom),sr,j))continue;let Tr=De?ve.evaluate(sr,{},j):void 0,Pr={id:at,properties:Ze.properties,type:Ze.type,sourceLayerIndex:Ft,index:Tt,geometry:Qt?sr.geometry:js(Ze),patterns:{},sortKey:Tr};ue.push(Pr)}De&&ue.sort((Ze,at)=>Ze.sortKey-at.sortKey);for(let Ze of ue){let{geometry:at,index:Tt,sourceLayerIndex:Ft}=Ze,Qt=S[Tt].feature;this.addFeature(Ze,at,Tt,j),D.featureIndex.insert(Qt,at,Tt,Ft,this.index)}}update(S,D,j){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,j)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Ue),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(S,D,j,te){for(let ue of D)for(let ve of ue){let De=ve.x,Ze=ve.y;if(De<0||De>=za||Ze<0||Ze>=za)continue;let at=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,S.sortKey),Tt=at.vertexLength;fu(this.layoutVertexArray,De,Ze,-1,-1),fu(this.layoutVertexArray,De,Ze,1,-1),fu(this.layoutVertexArray,De,Ze,1,1),fu(this.layoutVertexArray,De,Ze,-1,1),this.indexArray.emplaceBack(Tt,Tt+1,Tt+2),this.indexArray.emplaceBack(Tt,Tt+3,Tt+2),at.vertexLength+=4,at.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,j,{},te)}}function xc(R,S){for(let D=0;D<R.length;D++)if(On(S,R[D]))return!0;for(let D=0;D<S.length;D++)if(On(R,S[D]))return!0;return!!wi(R,S)}function At(R,S,D){return!!On(R,S)||!!Oi(S,R,D)}function Er(R,S){if(R.length===1)return cn(S,R[0]);for(let D=0;D<S.length;D++){let j=S[D];for(let te=0;te<j.length;te++)if(On(R,j[te]))return!0}for(let D=0;D<R.length;D++)if(cn(S,R[D]))return!0;for(let D=0;D<S.length;D++)if(wi(R,S[D]))return!0;return!1}function Wr(R,S,D){if(R.length>1){if(wi(R,S))return!0;for(let j=0;j<S.length;j++)if(Oi(S[j],R,D))return!0}for(let j=0;j<R.length;j++)if(Oi(R[j],S,D))return!0;return!1}function wi(R,S){if(R.length===0||S.length===0)return!1;for(let D=0;D<R.length-1;D++){let j=R[D],te=R[D+1];for(let ue=0;ue<S.length-1;ue++)if(Ui(j,te,S[ue],S[ue+1]))return!0}return!1}function Ui(R,S,D,j){return F(R,D,j)!==F(S,D,j)&&F(R,S,D)!==F(R,S,j)}function Oi(R,S,D){let j=D*D;if(S.length===1)return R.distSqr(S[0])<j;for(let te=1;te<S.length;te++)if(Bi(R,S[te-1],S[te])<j)return!0;return!1}function Bi(R,S,D){let j=S.distSqr(D);if(j===0)return R.distSqr(S);let te=((R.x-S.x)*(D.x-S.x)+(R.y-S.y)*(D.y-S.y))/j;return R.distSqr(te<0?S:te>1?D:D.sub(S)._mult(te)._add(S))}function cn(R,S){let D,j,te,ue=!1;for(let ve=0;ve<R.length;ve++){D=R[ve];for(let De=0,Ze=D.length-1;De<D.length;Ze=De++)j=D[De],te=D[Ze],j.y>S.y!=te.y>S.y&&S.x<(te.x-j.x)*(S.y-j.y)/(te.y-j.y)+j.x&&(ue=!ue)}return ue}function On(R,S){let D=!1;for(let j=0,te=R.length-1;j<R.length;te=j++){let ue=R[j],ve=R[te];ue.y>S.y!=ve.y>S.y&&S.x<(ve.x-ue.x)*(S.y-ue.y)/(ve.y-ue.y)+ue.x&&(D=!D)}return D}function Bn(R,S,D){let j=D[0],te=D[2];if(R.x<j.x&&S.x<j.x||R.x>te.x&&S.x>te.x||R.y<j.y&&S.y<j.y||R.y>te.y&&S.y>te.y)return!1;let ue=F(R,S,D[0]);return ue!==F(R,S,D[1])||ue!==F(R,S,D[2])||ue!==F(R,S,D[3])}function yn(R,S,D){let j=S.paint.get(R).value;return j.kind==="constant"?j.value:D.programConfigurations.get(S.id).getMaxValue(R)}function to(R){return Math.sqrt(R[0]*R[0]+R[1]*R[1])}function Rn(R,S,D,j,te){if(!S[0]&&!S[1])return R;let ue=u.convert(S)._mult(te);D==="viewport"&&ue._rotate(-j);let ve=[];for(let De=0;De<R.length;De++)ve.push(R[De].sub(ue));return ve}let Dn,fn;mi("CircleBucket",dl,{omit:["layers"]});var Ai={get paint(){return fn=fn||new le({"circle-radius":new eo(ce.paint_circle["circle-radius"]),"circle-color":new eo(ce.paint_circle["circle-color"]),"circle-blur":new eo(ce.paint_circle["circle-blur"]),"circle-opacity":new eo(ce.paint_circle["circle-opacity"]),"circle-translate":new Da(ce.paint_circle["circle-translate"]),"circle-translate-anchor":new Da(ce.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Da(ce.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Da(ce.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new eo(ce.paint_circle["circle-stroke-width"]),"circle-stroke-color":new eo(ce.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new eo(ce.paint_circle["circle-stroke-opacity"])})},get layout(){return Dn=Dn||new le({"circle-sort-key":new eo(ce.layout_circle["circle-sort-key"])})}},ji=1e-6,Ln=typeof Float32Array!="undefined"?Float32Array:Array;function Un(R){return R[0]=1,R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=1,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[10]=1,R[11]=0,R[12]=0,R[13]=0,R[14]=0,R[15]=1,R}function gn(R,S,D){var j=S[0],te=S[1],ue=S[2],ve=S[3],De=S[4],Ze=S[5],at=S[6],Tt=S[7],Ft=S[8],Qt=S[9],sr=S[10],Tr=S[11],Pr=S[12],$r=S[13],ni=S[14],Di=S[15],pi=D[0],ki=D[1],Zi=D[2],ta=D[3];return R[0]=pi*j+ki*De+Zi*Ft+ta*Pr,R[1]=pi*te+ki*Ze+Zi*Qt+ta*$r,R[2]=pi*ue+ki*at+Zi*sr+ta*ni,R[3]=pi*ve+ki*Tt+Zi*Tr+ta*Di,R[4]=(pi=D[4])*j+(ki=D[5])*De+(Zi=D[6])*Ft+(ta=D[7])*Pr,R[5]=pi*te+ki*Ze+Zi*Qt+ta*$r,R[6]=pi*ue+ki*at+Zi*sr+ta*ni,R[7]=pi*ve+ki*Tt+Zi*Tr+ta*Di,R[8]=(pi=D[8])*j+(ki=D[9])*De+(Zi=D[10])*Ft+(ta=D[11])*Pr,R[9]=pi*te+ki*Ze+Zi*Qt+ta*$r,R[10]=pi*ue+ki*at+Zi*sr+ta*ni,R[11]=pi*ve+ki*Tt+Zi*Tr+ta*Di,R[12]=(pi=D[12])*j+(ki=D[13])*De+(Zi=D[14])*Ft+(ta=D[15])*Pr,R[13]=pi*te+ki*Ze+Zi*Qt+ta*$r,R[14]=pi*ue+ki*at+Zi*sr+ta*ni,R[15]=pi*ve+ki*Tt+Zi*Tr+ta*Di,R}Math.hypot||(Math.hypot=function(){for(var R=0,S=arguments.length;S--;)R+=arguments[S]*arguments[S];return Math.sqrt(R)});var ca,Kn=gn;function Za(R,S,D){var j=S[0],te=S[1],ue=S[2],ve=S[3];return R[0]=D[0]*j+D[4]*te+D[8]*ue+D[12]*ve,R[1]=D[1]*j+D[5]*te+D[9]*ue+D[13]*ve,R[2]=D[2]*j+D[6]*te+D[10]*ue+D[14]*ve,R[3]=D[3]*j+D[7]*te+D[11]*ue+D[15]*ve,R}ca=new Ln(4),Ln!=Float32Array&&(ca[0]=0,ca[1]=0,ca[2]=0,ca[3]=0);class wn extends B{constructor(S){super(S,Ai)}createBucket(S){return new dl(S)}queryRadius(S){let D=S;return yn("circle-radius",this,D)+yn("circle-stroke-width",this,D)+to(this.paint.get("circle-translate"))}queryIntersectsFeature(S,D,j,te,ue,ve,De,Ze){let at=Rn(S,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),ve.angle,De),Tt=this.paint.get("circle-radius").evaluate(D,j)+this.paint.get("circle-stroke-width").evaluate(D,j),Ft=this.paint.get("circle-pitch-alignment")==="map",Qt=Ft?at:function(Tr,Pr){return Tr.map($r=>vn($r,Pr))}(at,Ze),sr=Ft?Tt*De:Tt;for(let Tr of te)for(let Pr of Tr){let $r=Ft?Pr:vn(Pr,Ze),ni=sr,Di=Za([],[Pr.x,Pr.y,0,1],Ze);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?ni*=Di[3]/ve.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(ni*=ve.cameraToCenterDistance/Di[3]),At(Qt,$r,ni))return!0}return!1}}function vn(R,S){let D=Za([],[R.x,R.y,0,1],S);return new u(D[0]/D[3],D[1]/D[3])}class Aa extends dl{}let aa;mi("HeatmapBucket",Aa,{omit:["layers"]});var Xn={get paint(){return aa=aa||new le({"heatmap-radius":new eo(ce.paint_heatmap["heatmap-radius"]),"heatmap-weight":new eo(ce.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Da(ce.paint_heatmap["heatmap-intensity"]),"heatmap-color":new _c(ce.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Da(ce.paint_heatmap["heatmap-opacity"])})}};function Vn(R,{width:S,height:D},j,te){if(te){if(te instanceof Uint8ClampedArray)te=new Uint8Array(te.buffer);else if(te.length!==S*D*j)throw new RangeError(`mismatched image size. expected: ${te.length} but got: ${S*D*j}`)}else te=new Uint8Array(S*D*j);return R.width=S,R.height=D,R.data=te,R}function ma(R,{width:S,height:D},j){if(S===R.width&&D===R.height)return;let te=Vn({},{width:S,height:D},j);ro(R,te,{x:0,y:0},{x:0,y:0},{width:Math.min(R.width,S),height:Math.min(R.height,D)},j),R.width=S,R.height=D,R.data=te.data}function ro(R,S,D,j,te,ue){if(te.width===0||te.height===0)return S;if(te.width>R.width||te.height>R.height||D.x>R.width-te.width||D.y>R.height-te.height)throw new RangeError("out of range source coordinates for image copy");if(te.width>S.width||te.height>S.height||j.x>S.width-te.width||j.y>S.height-te.height)throw new RangeError("out of range destination coordinates for image copy");let ve=R.data,De=S.data;if(ve===De)throw new Error("srcData equals dstData, so image is already copied");for(let Ze=0;Ze<te.height;Ze++){let at=((D.y+Ze)*R.width+D.x)*ue,Tt=((j.y+Ze)*S.width+j.x)*ue;for(let Ft=0;Ft<te.width*ue;Ft++)De[Tt+Ft]=ve[at+Ft]}return S}class Ao{constructor(S,D){Vn(this,S,1,D)}resize(S){ma(this,S,1)}clone(){return new Ao({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(S,D,j,te,ue){ro(S,D,j,te,ue,1)}}class Jn{constructor(S,D){Vn(this,S,4,D)}resize(S){ma(this,S,4)}replace(S,D){D?this.data.set(S):this.data=S instanceof Uint8ClampedArray?new Uint8Array(S.buffer):S}clone(){return new Jn({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(S,D,j,te,ue){ro(S,D,j,te,ue,4)}}function Oa(R){let S={},D=R.resolution||256,j=R.clips?R.clips.length:1,te=R.image||new Jn({width:D,height:j});if(Math.log(D)/Math.LN2%1!=0)throw new Error(`width is not a power of 2 - ${D}`);let ue=(ve,De,Ze)=>{S[R.evaluationKey]=Ze;let at=R.expression.evaluate(S);te.data[ve+De+0]=Math.floor(255*at.r/at.a),te.data[ve+De+1]=Math.floor(255*at.g/at.a),te.data[ve+De+2]=Math.floor(255*at.b/at.a),te.data[ve+De+3]=Math.floor(255*at.a)};if(R.clips)for(let ve=0,De=0;ve<j;++ve,De+=4*D)for(let Ze=0,at=0;Ze<D;Ze++,at+=4){let Tt=Ze/(D-1),{start:Ft,end:Qt}=R.clips[ve];ue(De,at,Ft*(1-Tt)+Qt*Tt)}else for(let ve=0,De=0;ve<D;ve++,De+=4)ue(0,De,ve/(D-1));return te}mi("AlphaImage",Ao),mi("RGBAImage",Jn);let _o="big-fb";class Po extends B{createBucket(S){return new Aa(S)}constructor(S){super(S,Xn),this.heatmapFbos=new Map,this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(S){S==="heatmap-color"&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=Oa({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbos.has(_o)&&this.heatmapFbos.delete(_o)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"}}let Jo;var Yl={get paint(){return Jo=Jo||new le({"hillshade-illumination-direction":new Da(ce.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Da(ce.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Da(ce.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Da(ce.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Da(ce.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Da(ce.paint_hillshade["hillshade-accent-color"])})}};class $c extends B{constructor(S){super(S,Yl)}hasOffscreenPass(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"}}let xs=qe([{name:"a_pos",components:2,type:"Int16"}],4),{members:Qc}=xs;function El(R,S,D=2){let j=S&&S.length,te=j?S[0]*D:R.length,ue=bc(R,0,te,D,!0),ve=[];if(!ue||ue.next===ue.prev)return ve;let De,Ze,at;if(j&&(ue=function(Tt,Ft,Qt,sr){let Tr=[];for(let Pr=0,$r=Ft.length;Pr<$r;Pr++){let ni=bc(Tt,Ft[Pr]*sr,Pr<$r-1?Ft[Pr+1]*sr:Tt.length,sr,!1);ni===ni.next&&(ni.steiner=!0),Tr.push(K(ni))}Tr.sort(_f);for(let Pr=0;Pr<Tr.length;Pr++)Qt=ns(Tr[Pr],Qt);return Qt}(R,S,ue,D)),R.length>80*D){De=1/0,Ze=1/0;let Tt=-1/0,Ft=-1/0;for(let Qt=D;Qt<te;Qt+=D){let sr=R[Qt],Tr=R[Qt+1];sr<De&&(De=sr),Tr<Ze&&(Ze=Tr),sr>Tt&&(Tt=sr),Tr>Ft&&(Ft=Tr)}at=Math.max(Tt-De,Ft-Ze),at=at!==0?32767/at:0}return yf(ue,ve,D,De,Ze,at,0),ve}function bc(R,S,D,j,te){let ue;if(te===function(ve,De,Ze,at){let Tt=0;for(let Ft=De,Qt=Ze-at;Ft<Ze;Ft+=at)Tt+=(ve[Qt]-ve[Ft])*(ve[Ft+1]+ve[Qt+1]),Qt=Ft;return Tt}(R,S,D,j)>0)for(let ve=S;ve<D;ve+=j)ue=Jt(ve/j|0,R[ve],R[ve+1],ue);else for(let ve=D-j;ve>=S;ve-=j)ue=Jt(ve/j|0,R[ve],R[ve+1],ue);return ue&&de(ue,ue.next)&&(vt(ue),ue=ue.next),ue}function wc(R,S){if(!R)return R;S||(S=R);let D,j=R;do if(D=!1,j.steiner||!de(j,j.next)&&pe(j.prev,j,j.next)!==0)j=j.next;else{if(vt(j),j=S=j.prev,j===j.next)break;D=!0}while(D||j!==S);return S}function yf(R,S,D,j,te,ue,ve){if(!R)return;!ve&&ue&&function(Ze,at,Tt,Ft){let Qt=Ze;do Qt.z===0&&(Qt.z=z(Qt.x,Qt.y,at,Tt,Ft)),Qt.prevZ=Qt.prev,Qt.nextZ=Qt.next,Qt=Qt.next;while(Qt!==Ze);Qt.prevZ.nextZ=null,Qt.prevZ=null,function(sr){let Tr,Pr=1;do{let $r,ni=sr;sr=null;let Di=null;for(Tr=0;ni;){Tr++;let pi=ni,ki=0;for(let ta=0;ta<Pr&&(ki++,pi=pi.nextZ,pi);ta++);let Zi=Pr;for(;ki>0||Zi>0&&pi;)ki!==0&&(Zi===0||!pi||ni.z<=pi.z)?($r=ni,ni=ni.nextZ,ki--):($r=pi,pi=pi.nextZ,Zi--),Di?Di.nextZ=$r:sr=$r,$r.prevZ=Di,Di=$r;ni=pi}Di.nextZ=null,Pr*=2}while(Tr>1)}(Qt)}(R,j,te,ue);let De=R;for(;R.prev!==R.next;){let Ze=R.prev,at=R.next;if(ue?Fc(R,j,te,ue):Gl(R))S.push(Ze.i,R.i,at.i),vt(R),R=at.next,De=at.next;else if((R=at)===De){ve?ve===1?yf(R=ef(wc(R),S),S,D,j,te,ue,2):ve===2&&ls(R,S,D,j,te,ue):yf(wc(R),S,D,j,te,ue,1);break}}}function Gl(R){let S=R.prev,D=R,j=R.next;if(pe(S,D,j)>=0)return!1;let te=S.x,ue=D.x,ve=j.x,De=S.y,Ze=D.y,at=j.y,Tt=te<ue?te<ve?te:ve:ue<ve?ue:ve,Ft=De<Ze?De<at?De:at:Ze<at?Ze:at,Qt=te>ue?te>ve?te:ve:ue>ve?ue:ve,sr=De>Ze?De>at?De:at:Ze>at?Ze:at,Tr=j.next;for(;Tr!==S;){if(Tr.x>=Tt&&Tr.x<=Qt&&Tr.y>=Ft&&Tr.y<=sr&&O(te,De,ue,Ze,ve,at,Tr.x,Tr.y)&&pe(Tr.prev,Tr,Tr.next)>=0)return!1;Tr=Tr.next}return!0}function Fc(R,S,D,j){let te=R.prev,ue=R,ve=R.next;if(pe(te,ue,ve)>=0)return!1;let De=te.x,Ze=ue.x,at=ve.x,Tt=te.y,Ft=ue.y,Qt=ve.y,sr=De<Ze?De<at?De:at:Ze<at?Ze:at,Tr=Tt<Ft?Tt<Qt?Tt:Qt:Ft<Qt?Ft:Qt,Pr=De>Ze?De>at?De:at:Ze>at?Ze:at,$r=Tt>Ft?Tt>Qt?Tt:Qt:Ft>Qt?Ft:Qt,ni=z(sr,Tr,S,D,j),Di=z(Pr,$r,S,D,j),pi=R.prevZ,ki=R.nextZ;for(;pi&&pi.z>=ni&&ki&&ki.z<=Di;){if(pi.x>=sr&&pi.x<=Pr&&pi.y>=Tr&&pi.y<=$r&&pi!==te&&pi!==ve&&O(De,Tt,Ze,Ft,at,Qt,pi.x,pi.y)&&pe(pi.prev,pi,pi.next)>=0||(pi=pi.prevZ,ki.x>=sr&&ki.x<=Pr&&ki.y>=Tr&&ki.y<=$r&&ki!==te&&ki!==ve&&O(De,Tt,Ze,Ft,at,Qt,ki.x,ki.y)&&pe(ki.prev,ki,ki.next)>=0))return!1;ki=ki.nextZ}for(;pi&&pi.z>=ni;){if(pi.x>=sr&&pi.x<=Pr&&pi.y>=Tr&&pi.y<=$r&&pi!==te&&pi!==ve&&O(De,Tt,Ze,Ft,at,Qt,pi.x,pi.y)&&pe(pi.prev,pi,pi.next)>=0)return!1;pi=pi.prevZ}for(;ki&&ki.z<=Di;){if(ki.x>=sr&&ki.x<=Pr&&ki.y>=Tr&&ki.y<=$r&&ki!==te&&ki!==ve&&O(De,Tt,Ze,Ft,at,Qt,ki.x,ki.y)&&pe(ki.prev,ki,ki.next)>=0)return!1;ki=ki.nextZ}return!0}function ef(R,S){let D=R;do{let j=D.prev,te=D.next.next;!de(j,te)&&Ie(j,D,D.next,te)&&Kt(j,te)&&Kt(te,j)&&(S.push(j.i,D.i,te.i),vt(D),vt(D.next),D=R=te),D=D.next}while(D!==R);return wc(D)}function ls(R,S,D,j,te,ue){let ve=R;do{let De=ve.next.next;for(;De!==ve.prev;){if(ve.i!==De.i&&$(ve,De)){let Ze=ir(ve,De);return ve=wc(ve,ve.next),Ze=wc(Ze,Ze.next),yf(ve,S,D,j,te,ue,0),void yf(Ze,S,D,j,te,ue,0)}De=De.next}ve=ve.next}while(ve!==R)}function _f(R,S){return R.x-S.x}function ns(R,S){let D=function(te,ue){let ve=ue,De=te.x,Ze=te.y,at,Tt=-1/0;do{if(Ze<=ve.y&&Ze>=ve.next.y&&ve.next.y!==ve.y){let Pr=ve.x+(Ze-ve.y)*(ve.next.x-ve.x)/(ve.next.y-ve.y);if(Pr<=De&&Pr>Tt&&(Tt=Pr,at=ve.x<ve.next.x?ve:ve.next,Pr===De))return at}ve=ve.next}while(ve!==ue);if(!at)return null;let Ft=at,Qt=at.x,sr=at.y,Tr=1/0;ve=at;do{if(De>=ve.x&&ve.x>=Qt&&De!==ve.x&&O(Ze<sr?De:Tt,Ze,Qt,sr,Ze<sr?Tt:De,Ze,ve.x,ve.y)){let Pr=Math.abs(Ze-ve.y)/(De-ve.x);Kt(ve,te)&&(Pr<Tr||Pr===Tr&&(ve.x>at.x||ve.x===at.x&&Y(at,ve)))&&(at=ve,Tr=Pr)}ve=ve.next}while(ve!==Ft);return at}(R,S);if(!D)return S;let j=ir(D,R);return wc(j,j.next),wc(D,D.next)}function Y(R,S){return pe(R.prev,R,S.prev)<0&&pe(S.next,R,R.next)<0}function z(R,S,D,j,te){return(R=1431655765&((R=858993459&((R=252645135&((R=16711935&((R=(R-D)*te|0)|R<<8))|R<<4))|R<<2))|R<<1))|(S=1431655765&((S=858993459&((S=252645135&((S=16711935&((S=(S-j)*te|0)|S<<8))|S<<4))|S<<2))|S<<1))<<1}function K(R){let S=R,D=R;do(S.x<D.x||S.x===D.x&&S.y<D.y)&&(D=S),S=S.next;while(S!==R);return D}function O(R,S,D,j,te,ue,ve,De){return(te-ve)*(S-De)>=(R-ve)*(ue-De)&&(R-ve)*(j-De)>=(D-ve)*(S-De)&&(D-ve)*(ue-De)>=(te-ve)*(j-De)}function $(R,S){return R.next.i!==S.i&&R.prev.i!==S.i&&!function(D,j){let te=D;do{if(te.i!==D.i&&te.next.i!==D.i&&te.i!==j.i&&te.next.i!==j.i&&Ie(te,te.next,D,j))return!0;te=te.next}while(te!==D);return!1}(R,S)&&(Kt(R,S)&&Kt(S,R)&&function(D,j){let te=D,ue=!1,ve=(D.x+j.x)/2,De=(D.y+j.y)/2;do te.y>De!=te.next.y>De&&te.next.y!==te.y&&ve<(te.next.x-te.x)*(De-te.y)/(te.next.y-te.y)+te.x&&(ue=!ue),te=te.next;while(te!==D);return ue}(R,S)&&(pe(R.prev,R,S.prev)||pe(R,S.prev,S))||de(R,S)&&pe(R.prev,R,R.next)>0&&pe(S.prev,S,S.next)>0)}function pe(R,S,D){return(S.y-R.y)*(D.x-S.x)-(S.x-R.x)*(D.y-S.y)}function de(R,S){return R.x===S.x&&R.y===S.y}function Ie(R,S,D,j){let te=pt(pe(R,S,D)),ue=pt(pe(R,S,j)),ve=pt(pe(D,j,R)),De=pt(pe(D,j,S));return te!==ue&&ve!==De||!(te!==0||!$e(R,D,S))||!(ue!==0||!$e(R,j,S))||!(ve!==0||!$e(D,R,j))||!(De!==0||!$e(D,S,j))}function $e(R,S,D){return S.x<=Math.max(R.x,D.x)&&S.x>=Math.min(R.x,D.x)&&S.y<=Math.max(R.y,D.y)&&S.y>=Math.min(R.y,D.y)}function pt(R){return R>0?1:R<0?-1:0}function Kt(R,S){return pe(R.prev,R,R.next)<0?pe(R,S,R.next)>=0&&pe(R,R.prev,S)>=0:pe(R,S,R.prev)<0||pe(R,R.next,S)<0}function ir(R,S){let D=Pt(R.i,R.x,R.y),j=Pt(S.i,S.x,S.y),te=R.next,ue=S.prev;return R.next=S,S.prev=R,D.next=te,te.prev=D,j.next=D,D.prev=j,ue.next=j,j.prev=ue,j}function Jt(R,S,D,j){let te=Pt(R,S,D);return j?(te.next=j.next,te.prev=j,j.next.prev=te,j.next=te):(te.prev=te,te.next=te),te}function vt(R){R.next.prev=R.prev,R.prev.next=R.next,R.prevZ&&(R.prevZ.nextZ=R.nextZ),R.nextZ&&(R.nextZ.prevZ=R.prevZ)}function Pt(R,S,D){return{i:R,x:S,y:D,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function Wt(R,S,D){let j=D.patternDependencies,te=!1;for(let ue of S){let ve=ue.paint.get(`${R}-pattern`);ve.isConstant()||(te=!0);let De=ve.constantOr(null);De&&(te=!0,j[De.to]=!0,j[De.from]=!0)}return te}function rr(R,S,D,j,te){let ue=te.patternDependencies;for(let ve of S){let De=ve.paint.get(`${R}-pattern`).value;if(De.kind!=="constant"){let Ze=De.evaluate({zoom:j-1},D,{},te.availableImages),at=De.evaluate({zoom:j},D,{},te.availableImages),Tt=De.evaluate({zoom:j+1},D,{},te.availableImages);Ze=Ze&&Ze.name?Ze.name:Ze,at=at&&at.name?at.name:at,Tt=Tt&&Tt.name?Tt.name:Tt,ue[Ze]=!0,ue[at]=!0,ue[Tt]=!0,D.patterns[ve.id]={min:Ze,mid:at,max:Tt}}}return D}class dr{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new _l,this.indexArray=new oe,this.indexArray2=new we,this.programConfigurations=new _s(S.layers,S.zoom),this.segments=new We,this.segments2=new We,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,j){this.hasPattern=Wt("fill",this.layers,D);let te=this.layers[0].layout.get("fill-sort-key"),ue=!te.isConstant(),ve=[];for(let{feature:De,id:Ze,index:at,sourceLayerIndex:Tt}of S){let Ft=this.layers[0]._featureFilter.needGeometry,Qt=xl(De,Ft);if(!this.layers[0]._featureFilter.filter(new Ko(this.zoom),Qt,j))continue;let sr=ue?te.evaluate(Qt,{},j,D.availableImages):void 0,Tr={id:Ze,properties:De.properties,type:De.type,sourceLayerIndex:Tt,index:at,geometry:Ft?Qt.geometry:js(De),patterns:{},sortKey:sr};ve.push(Tr)}ue&&ve.sort((De,Ze)=>De.sortKey-Ze.sortKey);for(let De of ve){let{geometry:Ze,index:at,sourceLayerIndex:Tt}=De;if(this.hasPattern){let Ft=rr("fill",this.layers,De,this.zoom,D);this.patternFeatures.push(Ft)}else this.addFeature(De,Ze,at,j,{});D.featureIndex.insert(S[at].feature,Ze,at,Tt,this.index)}}update(S,D,j){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,j)}addFeatures(S,D,j){for(let te of this.patternFeatures)this.addFeature(te,te.geometry,te.index,D,j)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Qc),this.indexBuffer=S.createIndexBuffer(this.indexArray),this.indexBuffer2=S.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(S,D,j,te,ue){for(let ve of Of(D,500)){let De=0;for(let sr of ve)De+=sr.length;let Ze=this.segments.prepareSegment(De,this.layoutVertexArray,this.indexArray),at=Ze.vertexLength,Tt=[],Ft=[];for(let sr of ve){if(sr.length===0)continue;sr!==ve[0]&&Ft.push(Tt.length/2);let Tr=this.segments2.prepareSegment(sr.length,this.layoutVertexArray,this.indexArray2),Pr=Tr.vertexLength;this.layoutVertexArray.emplaceBack(sr[0].x,sr[0].y),this.indexArray2.emplaceBack(Pr+sr.length-1,Pr),Tt.push(sr[0].x),Tt.push(sr[0].y);for(let $r=1;$r<sr.length;$r++)this.layoutVertexArray.emplaceBack(sr[$r].x,sr[$r].y),this.indexArray2.emplaceBack(Pr+$r-1,Pr+$r),Tt.push(sr[$r].x),Tt.push(sr[$r].y);Tr.vertexLength+=sr.length,Tr.primitiveLength+=sr.length}let Qt=El(Tt,Ft);for(let sr=0;sr<Qt.length;sr+=3)this.indexArray.emplaceBack(at+Qt[sr],at+Qt[sr+1],at+Qt[sr+2]);Ze.vertexLength+=De,Ze.primitiveLength+=Qt.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,j,ue,te)}}let pr,kr;mi("FillBucket",dr,{omit:["layers","patternFeatures"]});var Ar={get paint(){return kr=kr||new le({"fill-antialias":new Da(ce.paint_fill["fill-antialias"]),"fill-opacity":new eo(ce.paint_fill["fill-opacity"]),"fill-color":new eo(ce.paint_fill["fill-color"]),"fill-outline-color":new eo(ce.paint_fill["fill-outline-color"]),"fill-translate":new Da(ce.paint_fill["fill-translate"]),"fill-translate-anchor":new Da(ce.paint_fill["fill-translate-anchor"]),"fill-pattern":new Jc(ce.paint_fill["fill-pattern"])})},get layout(){return pr=pr||new le({"fill-sort-key":new eo(ce.layout_fill["fill-sort-key"])})}};class gr extends B{constructor(S){super(S,Ar)}recalculate(S,D){super.recalculate(S,D);let j=this.paint._values["fill-outline-color"];j.value.kind==="constant"&&j.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(S){return new dr(S)}queryRadius(){return to(this.paint.get("fill-translate"))}queryIntersectsFeature(S,D,j,te,ue,ve,De){return Er(Rn(S,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),ve.angle,De),te)}isTileClipped(){return!0}}let Cr=qe([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),cr=qe([{name:"a_centroid",components:2,type:"Int16"}],4),{members:Gr}=Cr;var ei={},yi=s,tn=Ri;function Ri(R,S,D,j,te){this.properties={},this.extent=D,this.type=0,this._pbf=R,this._geometry=-1,this._keys=j,this._values=te,R.readFields(ln,this,S)}function ln(R,S,D){R==1?S.id=D.readVarint():R==2?function(j,te){for(var ue=j.readVarint()+j.pos;j.pos<ue;){var ve=te._keys[j.readVarint()],De=te._values[j.readVarint()];te.properties[ve]=De}}(D,S):R==3?S.type=D.readVarint():R==4&&(S._geometry=D.pos)}function Qn(R){for(var S,D,j=0,te=0,ue=R.length,ve=ue-1;te<ue;ve=te++)j+=((D=R[ve]).x-(S=R[te]).x)*(S.y+D.y);return j}Ri.types=["Unknown","Point","LineString","Polygon"],Ri.prototype.loadGeometry=function(){var R=this._pbf;R.pos=this._geometry;for(var S,D=R.readVarint()+R.pos,j=1,te=0,ue=0,ve=0,De=[];R.pos<D;){if(te<=0){var Ze=R.readVarint();j=7&Ze,te=Ze>>3}if(te--,j===1||j===2)ue+=R.readSVarint(),ve+=R.readSVarint(),j===1&&(S&&De.push(S),S=[]),S.push(new yi(ue,ve));else{if(j!==7)throw new Error("unknown command "+j);S&&S.push(S[0].clone())}}return S&&De.push(S),De},Ri.prototype.bbox=function(){var R=this._pbf;R.pos=this._geometry;for(var S=R.readVarint()+R.pos,D=1,j=0,te=0,ue=0,ve=1/0,De=-1/0,Ze=1/0,at=-1/0;R.pos<S;){if(j<=0){var Tt=R.readVarint();D=7&Tt,j=Tt>>3}if(j--,D===1||D===2)(te+=R.readSVarint())<ve&&(ve=te),te>De&&(De=te),(ue+=R.readSVarint())<Ze&&(Ze=ue),ue>at&&(at=ue);else if(D!==7)throw new Error("unknown command "+D)}return[ve,Ze,De,at]},Ri.prototype.toGeoJSON=function(R,S,D){var j,te,ue=this.extent*Math.pow(2,D),ve=this.extent*R,De=this.extent*S,Ze=this.loadGeometry(),at=Ri.types[this.type];function Tt(sr){for(var Tr=0;Tr<sr.length;Tr++){var Pr=sr[Tr];sr[Tr]=[360*(Pr.x+ve)/ue-180,360/Math.PI*Math.atan(Math.exp((180-360*(Pr.y+De)/ue)*Math.PI/180))-90]}}switch(this.type){case 1:var Ft=[];for(j=0;j<Ze.length;j++)Ft[j]=Ze[j][0];Tt(Ze=Ft);break;case 2:for(j=0;j<Ze.length;j++)Tt(Ze[j]);break;case 3:for(Ze=function(sr){var Tr=sr.length;if(Tr<=1)return[sr];for(var Pr,$r,ni=[],Di=0;Di<Tr;Di++){var pi=Qn(sr[Di]);pi!==0&&($r===void 0&&($r=pi<0),$r===pi<0?(Pr&&ni.push(Pr),Pr=[sr[Di]]):Pr.push(sr[Di]))}return Pr&&ni.push(Pr),ni}(Ze),j=0;j<Ze.length;j++)for(te=0;te<Ze[j].length;te++)Tt(Ze[j][te])}Ze.length===1?Ze=Ze[0]:at="Multi"+at;var Qt={type:"Feature",geometry:{type:at,coordinates:Ze},properties:this.properties};return"id"in this&&(Qt.id=this.id),Qt};var qn=tn,rn=bn;function bn(R,S){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=R,this._keys=[],this._values=[],this._features=[],R.readFields(mn,this,S),this.length=this._features.length}function mn(R,S,D){R===15?S.version=D.readVarint():R===1?S.name=D.readString():R===5?S.extent=D.readVarint():R===2?S._features.push(D.pos):R===3?S._keys.push(D.readString()):R===4&&S._values.push(function(j){for(var te=null,ue=j.readVarint()+j.pos;j.pos<ue;){var ve=j.readVarint()>>3;te=ve===1?j.readString():ve===2?j.readFloat():ve===3?j.readDouble():ve===4?j.readVarint64():ve===5?j.readVarint():ve===6?j.readSVarint():ve===7?j.readBoolean():null}return te}(D))}bn.prototype.feature=function(R){if(R<0||R>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[R];var S=this._pbf.readVarint()+this._pbf.pos;return new qn(this._pbf,S,this.extent,this._keys,this._values)};var Gn=rn;function da(R,S,D){if(R===3){var j=new Gn(D,D.readVarint()+D.pos);j.length&&(S[j.name]=j)}}ei.VectorTile=function(R,S){this.layers=R.readFields(da,{},S)},ei.VectorTileFeature=tn,ei.VectorTileLayer=rn;let No=ei.VectorTileFeature.types,Do=Math.pow(2,13);function ps(R,S,D,j,te,ue,ve,De){R.emplaceBack(S,D,2*Math.floor(j*Do)+ve,te*Do*2,ue*Do*2,Math.round(De))}class fo{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.layoutVertexArray=new Hl,this.centroidVertexArray=new yo,this.indexArray=new oe,this.programConfigurations=new _s(S.layers,S.zoom),this.segments=new We,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,j){this.features=[],this.hasPattern=Wt("fill-extrusion",this.layers,D);for(let{feature:te,id:ue,index:ve,sourceLayerIndex:De}of S){let Ze=this.layers[0]._featureFilter.needGeometry,at=xl(te,Ze);if(!this.layers[0]._featureFilter.filter(new Ko(this.zoom),at,j))continue;let Tt={id:ue,sourceLayerIndex:De,index:ve,geometry:Ze?at.geometry:js(te),properties:te.properties,type:te.type,patterns:{}};this.hasPattern?this.features.push(rr("fill-extrusion",this.layers,Tt,this.zoom,D)):this.addFeature(Tt,Tt.geometry,ve,j,{}),D.featureIndex.insert(te,Tt.geometry,ve,De,this.index,!0)}}addFeatures(S,D,j){for(let te of this.features){let{geometry:ue}=te;this.addFeature(te,ue,te.index,D,j)}}update(S,D,j){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,j)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,Gr),this.centroidVertexBuffer=S.createVertexBuffer(this.centroidVertexArray,cr.members,!0),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(S,D,j,te,ue){for(let ve of Of(D,500)){let De={x:0,y:0,vertexCount:0},Ze=0;for(let Tr of ve)Ze+=Tr.length;let at=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Tr of ve){if(Tr.length===0||tl(Tr))continue;let Pr=0;for(let $r=0;$r<Tr.length;$r++){let ni=Tr[$r];if($r>=1){let Di=Tr[$r-1];if(!as(ni,Di)){at.vertexLength+4>We.MAX_VERTEX_ARRAY_LENGTH&&(at=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let pi=ni.sub(Di)._perp()._unit(),ki=Di.dist(ni);Pr+ki>32768&&(Pr=0),ps(this.layoutVertexArray,ni.x,ni.y,pi.x,pi.y,0,0,Pr),ps(this.layoutVertexArray,ni.x,ni.y,pi.x,pi.y,0,1,Pr),De.x+=2*ni.x,De.y+=2*ni.y,De.vertexCount+=2,Pr+=ki,ps(this.layoutVertexArray,Di.x,Di.y,pi.x,pi.y,0,0,Pr),ps(this.layoutVertexArray,Di.x,Di.y,pi.x,pi.y,0,1,Pr),De.x+=2*Di.x,De.y+=2*Di.y,De.vertexCount+=2;let Zi=at.vertexLength;this.indexArray.emplaceBack(Zi,Zi+2,Zi+1),this.indexArray.emplaceBack(Zi+1,Zi+2,Zi+3),at.vertexLength+=4,at.primitiveLength+=2}}}}if(at.vertexLength+Ze>We.MAX_VERTEX_ARRAY_LENGTH&&(at=this.segments.prepareSegment(Ze,this.layoutVertexArray,this.indexArray)),No[S.type]!=="Polygon")continue;let Tt=[],Ft=[],Qt=at.vertexLength;for(let Tr of ve)if(Tr.length!==0){Tr!==ve[0]&&Ft.push(Tt.length/2);for(let Pr=0;Pr<Tr.length;Pr++){let $r=Tr[Pr];ps(this.layoutVertexArray,$r.x,$r.y,0,0,1,1,0),De.x+=$r.x,De.y+=$r.y,De.vertexCount+=1,Tt.push($r.x),Tt.push($r.y)}}let sr=El(Tt,Ft);for(let Tr=0;Tr<sr.length;Tr+=3)this.indexArray.emplaceBack(Qt+sr[Tr],Qt+sr[Tr+2],Qt+sr[Tr+1]);at.primitiveLength+=sr.length/3,at.vertexLength+=Ze;for(let Tr=0;Tr<De.vertexCount;Tr++){let Pr=Math.floor(De.x/De.vertexCount),$r=Math.floor(De.y/De.vertexCount);this.centroidVertexArray.emplaceBack(Pr,$r)}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,j,ue,te)}}function as(R,S){return R.x===S.x&&(R.x<0||R.x>za)||R.y===S.y&&(R.y<0||R.y>za)}function tl(R){return R.every(S=>S.x<0)||R.every(S=>S.x>za)||R.every(S=>S.y<0)||R.every(S=>S.y>za)}let zu;mi("FillExtrusionBucket",fo,{omit:["layers","features"]});var Mv={get paint(){return zu=zu||new le({"fill-extrusion-opacity":new Da(ce["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new eo(ce["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Da(ce["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Da(ce["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Jc(ce["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new eo(ce["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new eo(ce["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Da(ce["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Ev extends B{constructor(S){super(S,Mv)}createBucket(S){return new fo(S)}queryRadius(){return to(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(S,D,j,te,ue,ve,De,Ze){let at=Rn(S,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),ve.angle,De),Tt=this.paint.get("fill-extrusion-height").evaluate(D,j),Ft=this.paint.get("fill-extrusion-base").evaluate(D,j),Qt=function(Tr,Pr,$r,ni){let Di=[];for(let pi of Tr){let ki=[pi.x,pi.y,0,1];Za(ki,ki,Pr),Di.push(new u(ki[0]/ki[3],ki[1]/ki[3]))}return Di}(at,Ze),sr=function(Tr,Pr,$r,ni){let Di=[],pi=[],ki=ni[8]*Pr,Zi=ni[9]*Pr,ta=ni[10]*Pr,Va=ni[11]*Pr,Io=ni[8]*$r,La=ni[9]*$r,Hn=ni[10]*$r,lo=ni[11]*$r;for(let $a of Tr){let Xa=[],Tn=[];for(let bo of $a){let Ya=bo.x,Uo=bo.y,wu=ni[0]*Ya+ni[4]*Uo+ni[12],hu=ni[1]*Ya+ni[5]*Uo+ni[13],uh=ni[2]*Ya+ni[6]*Uo+ni[14],$v=ni[3]*Ya+ni[7]*Uo+ni[15],td=uh+ta,ch=$v+Va,Ud=wu+Io,Vd=hu+La,Hd=uh+Hn,rf=$v+lo,fh=new u((wu+ki)/ch,(hu+Zi)/ch);fh.z=td/ch,Xa.push(fh);let Td=new u(Ud/rf,Vd/rf);Td.z=Hd/rf,Tn.push(Td)}Di.push(Xa),pi.push(Tn)}return[Di,pi]}(te,Ft,Tt,Ze);return function(Tr,Pr,$r){let ni=1/0;Er($r,Pr)&&(ni=Yv($r,Pr[0]));for(let Di=0;Di<Pr.length;Di++){let pi=Pr[Di],ki=Tr[Di];for(let Zi=0;Zi<pi.length-1;Zi++){let ta=pi[Zi],Va=[ta,pi[Zi+1],ki[Zi+1],ki[Zi],ta];xc($r,Va)&&(ni=Math.min(ni,Yv($r,Va)))}}return ni!==1/0&&ni}(sr[0],sr[1],Qt)}}function yd(R,S){return R.x*S.x+R.y*S.y}function Yv(R,S){if(R.length===1){let D=0,j=S[D++],te;for(;!te||j.equals(te);)if(te=S[D++],!te)return 1/0;for(;D<S.length;D++){let ue=S[D],ve=R[0],De=te.sub(j),Ze=ue.sub(j),at=ve.sub(j),Tt=yd(De,De),Ft=yd(De,Ze),Qt=yd(Ze,Ze),sr=yd(at,De),Tr=yd(at,Ze),Pr=Tt*Qt-Ft*Ft,$r=(Qt*sr-Ft*Tr)/Pr,ni=(Tt*Tr-Ft*sr)/Pr,Di=j.z*(1-$r-ni)+te.z*$r+ue.z*ni;if(isFinite(Di))return Di}return 1/0}{let D=1/0;for(let j of S)D=Math.min(D,j.z);return D}}let cg=qe([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),{members:vp}=cg,_d=qe([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),{members:pp}=_d,Nd=ei.VectorTileFeature.types,xd=Math.cos(Math.PI/180*37.5),kv=Math.pow(2,14)/.5;class Kv{constructor(S){this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(D=>D.id),this.index=S.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(D=>{this.gradients[D.id]={}}),this.layoutVertexArray=new Zu,this.layoutVertexArray2=new cu,this.indexArray=new oe,this.programConfigurations=new _s(S.layers,S.zoom),this.segments=new We,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(D=>D.isStateDependent()).map(D=>D.id)}populate(S,D,j){this.hasPattern=Wt("line",this.layers,D);let te=this.layers[0].layout.get("line-sort-key"),ue=!te.isConstant(),ve=[];for(let{feature:De,id:Ze,index:at,sourceLayerIndex:Tt}of S){let Ft=this.layers[0]._featureFilter.needGeometry,Qt=xl(De,Ft);if(!this.layers[0]._featureFilter.filter(new Ko(this.zoom),Qt,j))continue;let sr=ue?te.evaluate(Qt,{},j):void 0,Tr={id:Ze,properties:De.properties,type:De.type,sourceLayerIndex:Tt,index:at,geometry:Ft?Qt.geometry:js(De),patterns:{},sortKey:sr};ve.push(Tr)}ue&&ve.sort((De,Ze)=>De.sortKey-Ze.sortKey);for(let De of ve){let{geometry:Ze,index:at,sourceLayerIndex:Tt}=De;if(this.hasPattern){let Ft=rr("line",this.layers,De,this.zoom,D);this.patternFeatures.push(Ft)}else this.addFeature(De,Ze,at,j,{});D.featureIndex.insert(S[at].feature,Ze,at,Tt,this.index)}}update(S,D,j){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(S,D,this.stateDependentLayers,j)}addFeatures(S,D,j){for(let te of this.patternFeatures)this.addFeature(te,te.geometry,te.index,D,j)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(S){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=S.createVertexBuffer(this.layoutVertexArray2,pp)),this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,vp),this.indexBuffer=S.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(S),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(S){if(S.properties&&Object.prototype.hasOwnProperty.call(S.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(S.properties,"mapbox_clip_end"))return{start:+S.properties.mapbox_clip_start,end:+S.properties.mapbox_clip_end}}addFeature(S,D,j,te,ue){let ve=this.layers[0].layout,De=ve.get("line-join").evaluate(S,{}),Ze=ve.get("line-cap"),at=ve.get("line-miter-limit"),Tt=ve.get("line-round-limit");this.lineClips=this.lineFeatureClips(S);for(let Ft of D)this.addLine(Ft,S,De,Ze,at,Tt);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,S,j,ue,te)}addLine(S,D,j,te,ue,ve){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let ni=0;ni<S.length-1;ni++)this.totalDistance+=S[ni].dist(S[ni+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}let De=Nd[D.type]==="Polygon",Ze=S.length;for(;Ze>=2&&S[Ze-1].equals(S[Ze-2]);)Ze--;let at=0;for(;at<Ze-1&&S[at].equals(S[at+1]);)at++;if(Ze<(De?3:2))return;j==="bevel"&&(ue=1.05);let Tt=this.overscaling<=16?15*za/(512*this.overscaling):0,Ft=this.segments.prepareSegment(10*Ze,this.layoutVertexArray,this.indexArray),Qt,sr,Tr,Pr,$r;this.e1=this.e2=-1,De&&(Qt=S[Ze-2],$r=S[at].sub(Qt)._unit()._perp());for(let ni=at;ni<Ze;ni++){if(Tr=ni===Ze-1?De?S[at+1]:void 0:S[ni+1],Tr&&S[ni].equals(Tr))continue;$r&&(Pr=$r),Qt&&(sr=Qt),Qt=S[ni],$r=Tr?Tr.sub(Qt)._unit()._perp():Pr,Pr=Pr||$r;let Di=Pr.add($r);Di.x===0&&Di.y===0||Di._unit();let pi=Pr.x*$r.x+Pr.y*$r.y,ki=Di.x*$r.x+Di.y*$r.y,Zi=ki!==0?1/ki:1/0,ta=2*Math.sqrt(2-2*ki),Va=ki<xd&&sr&&Tr,Io=Pr.x*$r.y-Pr.y*$r.x>0;if(Va&&ni>at){let lo=Qt.dist(sr);if(lo>2*Tt){let $a=Qt.sub(Qt.sub(sr)._mult(Tt/lo)._round());this.updateDistance(sr,$a),this.addCurrentVertex($a,Pr,0,0,Ft),sr=$a}}let La=sr&&Tr,Hn=La?j:De?"butt":te;if(La&&Hn==="round"&&(Zi<ve?Hn="miter":Zi<=2&&(Hn="fakeround")),Hn==="miter"&&Zi>ue&&(Hn="bevel"),Hn==="bevel"&&(Zi>2&&(Hn="flipbevel"),Zi<ue&&(Hn="miter")),sr&&this.updateDistance(sr,Qt),Hn==="miter")Di._mult(Zi),this.addCurrentVertex(Qt,Di,0,0,Ft);else if(Hn==="flipbevel"){if(Zi>100)Di=$r.mult(-1);else{let lo=Zi*Pr.add($r).mag()/Pr.sub($r).mag();Di._perp()._mult(lo*(Io?-1:1))}this.addCurrentVertex(Qt,Di,0,0,Ft),this.addCurrentVertex(Qt,Di.mult(-1),0,0,Ft)}else if(Hn==="bevel"||Hn==="fakeround"){let lo=-Math.sqrt(Zi*Zi-1),$a=Io?lo:0,Xa=Io?0:lo;if(sr&&this.addCurrentVertex(Qt,Pr,$a,Xa,Ft),Hn==="fakeround"){let Tn=Math.round(180*ta/Math.PI/20);for(let bo=1;bo<Tn;bo++){let Ya=bo/Tn;if(Ya!==.5){let wu=Ya-.5;Ya+=Ya*wu*(Ya-1)*((1.0904+pi*(pi*(3.55645-1.43519*pi)-3.2452))*wu*wu+(.848013+pi*(.215638*pi-1.06021)))}let Uo=$r.sub(Pr)._mult(Ya)._add(Pr)._unit()._mult(Io?-1:1);this.addHalfVertex(Qt,Uo.x,Uo.y,!1,Io,0,Ft)}}Tr&&this.addCurrentVertex(Qt,$r,-$a,-Xa,Ft)}else if(Hn==="butt")this.addCurrentVertex(Qt,Di,0,0,Ft);else if(Hn==="square"){let lo=sr?1:-1;this.addCurrentVertex(Qt,Di,lo,lo,Ft)}else Hn==="round"&&(sr&&(this.addCurrentVertex(Qt,Pr,0,0,Ft),this.addCurrentVertex(Qt,Pr,1,1,Ft,!0)),Tr&&(this.addCurrentVertex(Qt,$r,-1,-1,Ft,!0),this.addCurrentVertex(Qt,$r,0,0,Ft)));if(Va&&ni<Ze-1){let lo=Qt.dist(Tr);if(lo>2*Tt){let $a=Qt.add(Tr.sub(Qt)._mult(Tt/lo)._round());this.updateDistance(Qt,$a),this.addCurrentVertex($a,$r,0,0,Ft),Qt=$a}}}}addCurrentVertex(S,D,j,te,ue,ve=!1){let De=D.y*te-D.x,Ze=-D.y-D.x*te;this.addHalfVertex(S,D.x+D.y*j,D.y-D.x*j,ve,!1,j,ue),this.addHalfVertex(S,De,Ze,ve,!0,-te,ue),this.distance>kv/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(S,D,j,te,ue,ve))}addHalfVertex({x:S,y:D},j,te,ue,ve,De,Ze){let at=.5*(this.lineClips?this.scaledDistance*(kv-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((S<<1)+(ue?1:0),(D<<1)+(ve?1:0),Math.round(63*j)+128,Math.round(63*te)+128,1+(De===0?0:De<0?-1:1)|(63&at)<<2,at>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let Tt=Ze.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Tt),Ze.primitiveLength++),ve?this.e2=Tt:this.e1=Tt}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(S,D){this.distance+=S.dist(D),this.updateScaledDistance()}}let Cv,ny;mi("LineBucket",Kv,{omit:["layers","patternFeatures"]});var fg={get paint(){return ny=ny||new le({"line-opacity":new eo(ce.paint_line["line-opacity"]),"line-color":new eo(ce.paint_line["line-color"]),"line-translate":new Da(ce.paint_line["line-translate"]),"line-translate-anchor":new Da(ce.paint_line["line-translate-anchor"]),"line-width":new eo(ce.paint_line["line-width"]),"line-gap-width":new eo(ce.paint_line["line-gap-width"]),"line-offset":new eo(ce.paint_line["line-offset"]),"line-blur":new eo(ce.paint_line["line-blur"]),"line-dasharray":new yc(ce.paint_line["line-dasharray"]),"line-pattern":new Jc(ce.paint_line["line-pattern"]),"line-gradient":new _c(ce.paint_line["line-gradient"])})},get layout(){return Cv=Cv||new le({"line-cap":new Da(ce.layout_line["line-cap"]),"line-join":new eo(ce.layout_line["line-join"]),"line-miter-limit":new Da(ce.layout_line["line-miter-limit"]),"line-round-limit":new Da(ce.layout_line["line-round-limit"]),"line-sort-key":new eo(ce.layout_line["line-sort-key"])})}};class Hf extends eo{possiblyEvaluate(S,D){return D=new Ko(Math.floor(D.zoom),{now:D.now,fadeDuration:D.fadeDuration,zoomHistory:D.zoomHistory,transition:D.transition}),super.possiblyEvaluate(S,D)}evaluate(S,D,j,te){return D=L({},D,{zoom:Math.floor(D.zoom)}),super.evaluate(S,D,j,te)}}let hg;class ay extends B{constructor(S){super(S,fg),this.gradientVersion=0,hg||(hg=new Hf(fg.paint.properties["line-width"].specification),hg.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(S){if(S==="line-gradient"){let D=this.gradientExpression();this.stepInterpolant=!!function(j){return j._styleExpression!==void 0}(D)&&D._styleExpression.expression instanceof Ji,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(S,D){super.recalculate(S,D),this.paint._values["line-floorwidth"]=hg.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,S)}createBucket(S){return new Kv(S)}queryRadius(S){let D=S,j=Rh(yn("line-width",this,D),yn("line-gap-width",this,D)),te=yn("line-offset",this,D);return j/2+Math.abs(te)+to(this.paint.get("line-translate"))}queryIntersectsFeature(S,D,j,te,ue,ve,De){let Ze=Rn(S,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),ve.angle,De),at=De/2*Rh(this.paint.get("line-width").evaluate(D,j),this.paint.get("line-gap-width").evaluate(D,j)),Tt=this.paint.get("line-offset").evaluate(D,j);return Tt&&(te=function(Ft,Qt){let sr=[];for(let Tr=0;Tr<Ft.length;Tr++){let Pr=Ft[Tr],$r=[];for(let ni=0;ni<Pr.length;ni++){let Di=Pr[ni-1],pi=Pr[ni],ki=Pr[ni+1],Zi=ni===0?new u(0,0):pi.sub(Di)._unit()._perp(),ta=ni===Pr.length-1?new u(0,0):ki.sub(pi)._unit()._perp(),Va=Zi._add(ta)._unit(),Io=Va.x*ta.x+Va.y*ta.y;Io!==0&&Va._mult(1/Io),$r.push(Va._mult(Qt)._add(pi))}sr.push($r)}return sr}(te,Tt*De)),function(Ft,Qt,sr){for(let Tr=0;Tr<Qt.length;Tr++){let Pr=Qt[Tr];if(Ft.length>=3){for(let $r=0;$r<Pr.length;$r++)if(On(Ft,Pr[$r]))return!0}if(Wr(Ft,Pr,sr))return!0}return!1}(Ze,te,at)}isTileClipped(){return!0}}function Rh(R,S){return S>0?S+2*R:R}let rm=qe([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),w1=qe([{name:"a_projected_pos",components:3,type:"Float32"}],4);qe([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let T1=qe([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);qe([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let oy=qe([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),im=qe([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function nm(R,S,D){return R.sections.forEach(j=>{j.text=function(te,ue,ve){let De=ue.layout.get("text-transform").evaluate(ve,{});return De==="uppercase"?te=te.toLocaleUpperCase():De==="lowercase"&&(te=te.toLocaleLowerCase()),vs.applyArabicShaping&&(te=vs.applyArabicShaping(te)),te}(j.text,S,D)}),R}qe([{name:"triangle",components:3,type:"Uint16"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Uint16",name:"glyphStartIndex"},{type:"Uint16",name:"numGlyphs"},{type:"Uint32",name:"vertexStartIndex"},{type:"Uint32",name:"lineStartIndex"},{type:"Uint32",name:"lineLength"},{type:"Uint16",name:"segment"},{type:"Uint16",name:"lowerSize"},{type:"Uint16",name:"upperSize"},{type:"Float32",name:"lineOffsetX"},{type:"Float32",name:"lineOffsetY"},{type:"Uint8",name:"writingMode"},{type:"Uint8",name:"placedOrientation"},{type:"Uint8",name:"hidden"},{type:"Uint32",name:"crossTileID"},{type:"Int16",name:"associatedIconIndex"}]),qe([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),qe([{type:"Float32",name:"offsetX"}]),qe([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),qe([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let Fu={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var kl=24,bd=Kl,sy=function(R,S,D,j,te){var ue,ve,De=8*te-j-1,Ze=(1<<De)-1,at=Ze>>1,Tt=-7,Ft=D?te-1:0,Qt=D?-1:1,sr=R[S+Ft];for(Ft+=Qt,ue=sr&(1<<-Tt)-1,sr>>=-Tt,Tt+=De;Tt>0;ue=256*ue+R[S+Ft],Ft+=Qt,Tt-=8);for(ve=ue&(1<<-Tt)-1,ue>>=-Tt,Tt+=j;Tt>0;ve=256*ve+R[S+Ft],Ft+=Qt,Tt-=8);if(ue===0)ue=1-at;else{if(ue===Ze)return ve?NaN:1/0*(sr?-1:1);ve+=Math.pow(2,j),ue-=at}return(sr?-1:1)*ve*Math.pow(2,ue-j)},A1=function(R,S,D,j,te,ue){var ve,De,Ze,at=8*ue-te-1,Tt=(1<<at)-1,Ft=Tt>>1,Qt=te===23?Math.pow(2,-24)-Math.pow(2,-77):0,sr=j?0:ue-1,Tr=j?1:-1,Pr=S<0||S===0&&1/S<0?1:0;for(S=Math.abs(S),isNaN(S)||S===1/0?(De=isNaN(S)?1:0,ve=Tt):(ve=Math.floor(Math.log(S)/Math.LN2),S*(Ze=Math.pow(2,-ve))<1&&(ve--,Ze*=2),(S+=ve+Ft>=1?Qt/Ze:Qt*Math.pow(2,1-Ft))*Ze>=2&&(ve++,Ze/=2),ve+Ft>=Tt?(De=0,ve=Tt):ve+Ft>=1?(De=(S*Ze-1)*Math.pow(2,te),ve+=Ft):(De=S*Math.pow(2,Ft-1)*Math.pow(2,te),ve=0));te>=8;R[D+sr]=255&De,sr+=Tr,De/=256,te-=8);for(ve=ve<<te|De,at+=te;at>0;R[D+sr]=255&ve,sr+=Tr,ve/=256,at-=8);R[D+sr-Tr]|=128*Pr};function Kl(R){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(R)?R:new Uint8Array(R||0),this.pos=0,this.type=0,this.length=this.buf.length}Kl.Varint=0,Kl.Fixed64=1,Kl.Bytes=2,Kl.Fixed32=5;var Nx=4294967296,am=1/Nx,Mw=typeof TextDecoder=="undefined"?null:new TextDecoder("utf-8");function Lv(R){return R.type===Kl.Bytes?R.readVarint()+R.pos:R.pos+1}function om(R,S,D){return D?4294967296*S+(R>>>0):4294967296*(S>>>0)+(R>>>0)}function Ew(R,S,D){var j=S<=16383?1:S<=2097151?2:S<=268435455?3:Math.floor(Math.log(S)/(7*Math.LN2));D.realloc(j);for(var te=D.pos-1;te>=R;te--)D.buf[te+j]=D.buf[te]}function Ux(R,S){for(var D=0;D<R.length;D++)S.writeVarint(R[D])}function P9(R,S){for(var D=0;D<R.length;D++)S.writeSVarint(R[D])}function I9(R,S){for(var D=0;D<R.length;D++)S.writeFloat(R[D])}function R9(R,S){for(var D=0;D<R.length;D++)S.writeDouble(R[D])}function D9(R,S){for(var D=0;D<R.length;D++)S.writeBoolean(R[D])}function mQ(R,S){for(var D=0;D<R.length;D++)S.writeFixed32(R[D])}function z9(R,S){for(var D=0;D<R.length;D++)S.writeSFixed32(R[D])}function F9(R,S){for(var D=0;D<R.length;D++)S.writeFixed64(R[D])}function q9(R,S){for(var D=0;D<R.length;D++)S.writeSFixed64(R[D])}function ly(R,S){return(R[S]|R[S+1]<<8|R[S+2]<<16)+16777216*R[S+3]}function Vx(R,S,D){R[D]=S,R[D+1]=S>>>8,R[D+2]=S>>>16,R[D+3]=S>>>24}function cC(R,S){return(R[S]|R[S+1]<<8|R[S+2]<<16)+(R[S+3]<<24)}Kl.prototype={destroy:function(){this.buf=null},readFields:function(R,S,D){for(D=D||this.length;this.pos<D;){var j=this.readVarint(),te=j>>3,ue=this.pos;this.type=7&j,R(te,S,this),this.pos===ue&&this.skip(j)}return S},readMessage:function(R,S){return this.readFields(R,S,this.readVarint()+this.pos)},readFixed32:function(){var R=ly(this.buf,this.pos);return this.pos+=4,R},readSFixed32:function(){var R=cC(this.buf,this.pos);return this.pos+=4,R},readFixed64:function(){var R=ly(this.buf,this.pos)+ly(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readSFixed64:function(){var R=ly(this.buf,this.pos)+cC(this.buf,this.pos+4)*Nx;return this.pos+=8,R},readFloat:function(){var R=sy(this.buf,this.pos,!0,23,4);return this.pos+=4,R},readDouble:function(){var R=sy(this.buf,this.pos,!0,52,8);return this.pos+=8,R},readVarint:function(R){var S,D,j=this.buf;return S=127&(D=j[this.pos++]),D<128?S:(S|=(127&(D=j[this.pos++]))<<7,D<128?S:(S|=(127&(D=j[this.pos++]))<<14,D<128?S:(S|=(127&(D=j[this.pos++]))<<21,D<128?S:function(te,ue,ve){var De,Ze,at=ve.buf;if(De=(112&(Ze=at[ve.pos++]))>>4,Ze<128||(De|=(127&(Ze=at[ve.pos++]))<<3,Ze<128)||(De|=(127&(Ze=at[ve.pos++]))<<10,Ze<128)||(De|=(127&(Ze=at[ve.pos++]))<<17,Ze<128)||(De|=(127&(Ze=at[ve.pos++]))<<24,Ze<128)||(De|=(1&(Ze=at[ve.pos++]))<<31,Ze<128))return om(te,De,ue);throw new Error("Expected varint not more than 10 bytes")}(S|=(15&(D=j[this.pos]))<<28,R,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var R=this.readVarint();return R%2==1?(R+1)/-2:R/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var R=this.readVarint()+this.pos,S=this.pos;return this.pos=R,R-S>=12&&Mw?function(D,j,te){return Mw.decode(D.subarray(j,te))}(this.buf,S,R):function(D,j,te){for(var ue="",ve=j;ve<te;){var De,Ze,at,Tt=D[ve],Ft=null,Qt=Tt>239?4:Tt>223?3:Tt>191?2:1;if(ve+Qt>te)break;Qt===1?Tt<128&&(Ft=Tt):Qt===2?(192&(De=D[ve+1]))==128&&(Ft=(31&Tt)<<6|63&De)<=127&&(Ft=null):Qt===3?(Ze=D[ve+2],(192&(De=D[ve+1]))==128&&(192&Ze)==128&&((Ft=(15&Tt)<<12|(63&De)<<6|63&Ze)<=2047||Ft>=55296&&Ft<=57343)&&(Ft=null)):Qt===4&&(Ze=D[ve+2],at=D[ve+3],(192&(De=D[ve+1]))==128&&(192&Ze)==128&&(192&at)==128&&((Ft=(15&Tt)<<18|(63&De)<<12|(63&Ze)<<6|63&at)<=65535||Ft>=1114112)&&(Ft=null)),Ft===null?(Ft=65533,Qt=1):Ft>65535&&(Ft-=65536,ue+=String.fromCharCode(Ft>>>10&1023|55296),Ft=56320|1023&Ft),ue+=String.fromCharCode(Ft),ve+=Qt}return ue}(this.buf,S,R)},readBytes:function(){var R=this.readVarint()+this.pos,S=this.buf.subarray(this.pos,R);return this.pos=R,S},readPackedVarint:function(R,S){if(this.type!==Kl.Bytes)return R.push(this.readVarint(S));var D=Lv(this);for(R=R||[];this.pos<D;)R.push(this.readVarint(S));return R},readPackedSVarint:function(R){if(this.type!==Kl.Bytes)return R.push(this.readSVarint());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readSVarint());return R},readPackedBoolean:function(R){if(this.type!==Kl.Bytes)return R.push(this.readBoolean());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readBoolean());return R},readPackedFloat:function(R){if(this.type!==Kl.Bytes)return R.push(this.readFloat());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readFloat());return R},readPackedDouble:function(R){if(this.type!==Kl.Bytes)return R.push(this.readDouble());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readDouble());return R},readPackedFixed32:function(R){if(this.type!==Kl.Bytes)return R.push(this.readFixed32());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readFixed32());return R},readPackedSFixed32:function(R){if(this.type!==Kl.Bytes)return R.push(this.readSFixed32());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readSFixed32());return R},readPackedFixed64:function(R){if(this.type!==Kl.Bytes)return R.push(this.readFixed64());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readFixed64());return R},readPackedSFixed64:function(R){if(this.type!==Kl.Bytes)return R.push(this.readSFixed64());var S=Lv(this);for(R=R||[];this.pos<S;)R.push(this.readSFixed64());return R},skip:function(R){var S=7&R;if(S===Kl.Varint)for(;this.buf[this.pos++]>127;);else if(S===Kl.Bytes)this.pos=this.readVarint()+this.pos;else if(S===Kl.Fixed32)this.pos+=4;else{if(S!==Kl.Fixed64)throw new Error("Unimplemented type: "+S);this.pos+=8}},writeTag:function(R,S){this.writeVarint(R<<3|S)},realloc:function(R){for(var S=this.length||16;S<this.pos+R;)S*=2;if(S!==this.length){var D=new Uint8Array(S);D.set(this.buf),this.buf=D,this.length=S}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(R){this.realloc(4),Vx(this.buf,R,this.pos),this.pos+=4},writeSFixed32:function(R){this.realloc(4),Vx(this.buf,R,this.pos),this.pos+=4},writeFixed64:function(R){this.realloc(8),Vx(this.buf,-1&R,this.pos),Vx(this.buf,Math.floor(R*am),this.pos+4),this.pos+=8},writeSFixed64:function(R){this.realloc(8),Vx(this.buf,-1&R,this.pos),Vx(this.buf,Math.floor(R*am),this.pos+4),this.pos+=8},writeVarint:function(R){(R=+R||0)>268435455||R<0?function(S,D){var j,te;if(S>=0?(j=S%4294967296|0,te=S/4294967296|0):(te=~(-S/4294967296),4294967295^(j=~(-S%4294967296))?j=j+1|0:(j=0,te=te+1|0)),S>=18446744073709552e3||S<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");D.realloc(10),function(ue,ve,De){De.buf[De.pos++]=127&ue|128,ue>>>=7,De.buf[De.pos++]=127&ue|128,ue>>>=7,De.buf[De.pos++]=127&ue|128,ue>>>=7,De.buf[De.pos++]=127&ue|128,De.buf[De.pos]=127&(ue>>>=7)}(j,0,D),function(ue,ve){var De=(7&ue)<<4;ve.buf[ve.pos++]|=De|((ue>>>=3)?128:0),ue&&(ve.buf[ve.pos++]=127&ue|((ue>>>=7)?128:0),ue&&(ve.buf[ve.pos++]=127&ue|((ue>>>=7)?128:0),ue&&(ve.buf[ve.pos++]=127&ue|((ue>>>=7)?128:0),ue&&(ve.buf[ve.pos++]=127&ue|((ue>>>=7)?128:0),ue&&(ve.buf[ve.pos++]=127&ue)))))}(te,D)}(R,this):(this.realloc(4),this.buf[this.pos++]=127&R|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=127&(R>>>=7)|(R>127?128:0),R<=127||(this.buf[this.pos++]=R>>>7&127))))},writeSVarint:function(R){this.writeVarint(R<0?2*-R-1:2*R)},writeBoolean:function(R){this.writeVarint(!!R)},writeString:function(R){R=String(R),this.realloc(4*R.length),this.pos++;var S=this.pos;this.pos=function(j,te,ue){for(var ve,De,Ze=0;Ze<te.length;Ze++){if((ve=te.charCodeAt(Ze))>55295&&ve<57344){if(!De){ve>56319||Ze+1===te.length?(j[ue++]=239,j[ue++]=191,j[ue++]=189):De=ve;continue}if(ve<56320){j[ue++]=239,j[ue++]=191,j[ue++]=189,De=ve;continue}ve=De-55296<<10|ve-56320|65536,De=null}else De&&(j[ue++]=239,j[ue++]=191,j[ue++]=189,De=null);ve<128?j[ue++]=ve:(ve<2048?j[ue++]=ve>>6|192:(ve<65536?j[ue++]=ve>>12|224:(j[ue++]=ve>>18|240,j[ue++]=ve>>12&63|128),j[ue++]=ve>>6&63|128),j[ue++]=63&ve|128)}return ue}(this.buf,R,this.pos);var D=this.pos-S;D>=128&&Ew(S,D,this),this.pos=S-1,this.writeVarint(D),this.pos+=D},writeFloat:function(R){this.realloc(4),A1(this.buf,R,this.pos,!0,23,4),this.pos+=4},writeDouble:function(R){this.realloc(8),A1(this.buf,R,this.pos,!0,52,8),this.pos+=8},writeBytes:function(R){var S=R.length;this.writeVarint(S),this.realloc(S);for(var D=0;D<S;D++)this.buf[this.pos++]=R[D]},writeRawMessage:function(R,S){this.pos++;var D=this.pos;R(S,this);var j=this.pos-D;j>=128&&Ew(D,j,this),this.pos=D-1,this.writeVarint(j),this.pos+=j},writeMessage:function(R,S,D){this.writeTag(R,Kl.Bytes),this.writeRawMessage(S,D)},writePackedVarint:function(R,S){S.length&&this.writeMessage(R,Ux,S)},writePackedSVarint:function(R,S){S.length&&this.writeMessage(R,P9,S)},writePackedBoolean:function(R,S){S.length&&this.writeMessage(R,D9,S)},writePackedFloat:function(R,S){S.length&&this.writeMessage(R,I9,S)},writePackedDouble:function(R,S){S.length&&this.writeMessage(R,R9,S)},writePackedFixed32:function(R,S){S.length&&this.writeMessage(R,mQ,S)},writePackedSFixed32:function(R,S){S.length&&this.writeMessage(R,z9,S)},writePackedFixed64:function(R,S){S.length&&this.writeMessage(R,F9,S)},writePackedSFixed64:function(R,S){S.length&&this.writeMessage(R,q9,S)},writeBytesField:function(R,S){this.writeTag(R,Kl.Bytes),this.writeBytes(S)},writeFixed32Field:function(R,S){this.writeTag(R,Kl.Fixed32),this.writeFixed32(S)},writeSFixed32Field:function(R,S){this.writeTag(R,Kl.Fixed32),this.writeSFixed32(S)},writeFixed64Field:function(R,S){this.writeTag(R,Kl.Fixed64),this.writeFixed64(S)},writeSFixed64Field:function(R,S){this.writeTag(R,Kl.Fixed64),this.writeSFixed64(S)},writeVarintField:function(R,S){this.writeTag(R,Kl.Varint),this.writeVarint(S)},writeSVarintField:function(R,S){this.writeTag(R,Kl.Varint),this.writeSVarint(S)},writeStringField:function(R,S){this.writeTag(R,Kl.Bytes),this.writeString(S)},writeFloatField:function(R,S){this.writeTag(R,Kl.Fixed32),this.writeFloat(S)},writeDoubleField:function(R,S){this.writeTag(R,Kl.Fixed64),this.writeDouble(S)},writeBooleanField:function(R,S){this.writeVarintField(R,!!S)}};var eS=o(bd);let tS=3;function yQ(R,S,D){R===1&&D.readMessage(O9,S)}function O9(R,S,D){if(R===3){let{id:j,bitmap:te,width:ue,height:ve,left:De,top:Ze,advance:at}=D.readMessage(fC,{});S.push({id:j,bitmap:new Ao({width:ue+2*tS,height:ve+2*tS},te),metrics:{width:ue,height:ve,left:De,top:Ze,advance:at}})}}function fC(R,S,D){R===1?S.id=D.readVarint():R===2?S.bitmap=D.readBytes():R===3?S.width=D.readVarint():R===4?S.height=D.readVarint():R===5?S.left=D.readSVarint():R===6?S.top=D.readSVarint():R===7&&(S.advance=D.readVarint())}let hC=tS;function rS(R){let S=0,D=0;for(let ve of R)S+=ve.w*ve.h,D=Math.max(D,ve.w);R.sort((ve,De)=>De.h-ve.h);let j=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(S/.95)),D),h:1/0}],te=0,ue=0;for(let ve of R)for(let De=j.length-1;De>=0;De--){let Ze=j[De];if(!(ve.w>Ze.w||ve.h>Ze.h)){if(ve.x=Ze.x,ve.y=Ze.y,ue=Math.max(ue,ve.y+ve.h),te=Math.max(te,ve.x+ve.w),ve.w===Ze.w&&ve.h===Ze.h){let at=j.pop();De<j.length&&(j[De]=at)}else ve.h===Ze.h?(Ze.x+=ve.w,Ze.w-=ve.w):ve.w===Ze.w?(Ze.y+=ve.h,Ze.h-=ve.h):(j.push({x:Ze.x+ve.w,y:Ze.y,w:Ze.w-ve.w,h:ve.h}),Ze.y+=ve.h,Ze.h-=ve.h);break}}return{w:te,h:ue,fill:S/(te*ue)||0}}let wd=1;class kw{constructor(S,{pixelRatio:D,version:j,stretchX:te,stretchY:ue,content:ve,textFitWidth:De,textFitHeight:Ze}){this.paddedRect=S,this.pixelRatio=D,this.stretchX=te,this.stretchY=ue,this.content=ve,this.version=j,this.textFitWidth=De,this.textFitHeight=Ze}get tl(){return[this.paddedRect.x+wd,this.paddedRect.y+wd]}get br(){return[this.paddedRect.x+this.paddedRect.w-wd,this.paddedRect.y+this.paddedRect.h-wd]}get tlbr(){return this.tl.concat(this.br)}get displaySize(){return[(this.paddedRect.w-2*wd)/this.pixelRatio,(this.paddedRect.h-2*wd)/this.pixelRatio]}}class Cw{constructor(S,D){let j={},te={};this.haveRenderCallbacks=[];let ue=[];this.addImages(S,j,ue),this.addImages(D,te,ue);let{w:ve,h:De}=rS(ue),Ze=new Jn({width:ve||1,height:De||1});for(let at in S){let Tt=S[at],Ft=j[at].paddedRect;Jn.copy(Tt.data,Ze,{x:0,y:0},{x:Ft.x+wd,y:Ft.y+wd},Tt.data)}for(let at in D){let Tt=D[at],Ft=te[at].paddedRect,Qt=Ft.x+wd,sr=Ft.y+wd,Tr=Tt.data.width,Pr=Tt.data.height;Jn.copy(Tt.data,Ze,{x:0,y:0},{x:Qt,y:sr},Tt.data),Jn.copy(Tt.data,Ze,{x:0,y:Pr-1},{x:Qt,y:sr-1},{width:Tr,height:1}),Jn.copy(Tt.data,Ze,{x:0,y:0},{x:Qt,y:sr+Pr},{width:Tr,height:1}),Jn.copy(Tt.data,Ze,{x:Tr-1,y:0},{x:Qt-1,y:sr},{width:1,height:Pr}),Jn.copy(Tt.data,Ze,{x:0,y:0},{x:Qt+Tr,y:sr},{width:1,height:Pr})}this.image=Ze,this.iconPositions=j,this.patternPositions=te}addImages(S,D,j){for(let te in S){let ue=S[te],ve={x:0,y:0,w:ue.data.width+2*wd,h:ue.data.height+2*wd};j.push(ve),D[te]=new kw(ve,ue),ue.hasRenderCallback&&this.haveRenderCallbacks.push(te)}}patchUpdatedImages(S,D){S.dispatchRenderCallbacks(this.haveRenderCallbacks);for(let j in S.updatedImages)this.patchUpdatedImage(this.iconPositions[j],S.getImage(j),D),this.patchUpdatedImage(this.patternPositions[j],S.getImage(j),D)}patchUpdatedImage(S,D,j){if(!S||!D||S.version===D.version)return;S.version=D.version;let[te,ue]=S.tl;j.update(D.data,void 0,{x:te,y:ue})}}var Pv;mi("ImagePosition",kw),mi("ImageAtlas",Cw),i.ah=void 0,(Pv=i.ah||(i.ah={}))[Pv.none=0]="none",Pv[Pv.horizontal=1]="horizontal",Pv[Pv.vertical=2]="vertical",Pv[Pv.horizontalOnly=3]="horizontalOnly";let lh=-17;class Hx{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(S,D){let j=new Hx;return j.scale=S||1,j.fontStack=D,j}static forImage(S){let D=new Hx;return D.imageName=S,D}}class S1{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(S,D){let j=new S1;for(let te=0;te<S.sections.length;te++){let ue=S.sections[te];ue.image?j.addImageSection(ue):j.addTextSection(ue,D)}return j}length(){return this.text.length}getSection(S){return this.sections[this.sectionIndex[S]]}getSectionIndex(S){return this.sectionIndex[S]}getCharCode(S){return this.text.charCodeAt(S)}verticalizePunctuation(){this.text=function(S){let D="";for(let j=0;j<S.length;j++){let te=S.charCodeAt(j+1)||null,ue=S.charCodeAt(j-1)||null;D+=te&&yl(te)&&!Fu[S[j+1]]||ue&&yl(ue)&&!Fu[S[j-1]]||!Fu[S[j]]?S[j]:Fu[S[j]]}return D}(this.text)}trim(){let S=0;for(let j=0;j<this.text.length&&Lw[this.text.charCodeAt(j)];j++)S++;let D=this.text.length;for(let j=this.text.length-1;j>=0&&j>=S&&Lw[this.text.charCodeAt(j)];j--)D--;this.text=this.text.substring(S,D),this.sectionIndex=this.sectionIndex.slice(S,D)}substring(S,D){let j=new S1;return j.text=this.text.substring(S,D),j.sectionIndex=this.sectionIndex.slice(S,D),j.sections=this.sections,j}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((S,D)=>Math.max(S,this.sections[D].scale),0)}addTextSection(S,D){this.text+=S.text,this.sections.push(Hx.forText(S.scale,S.fontStack||D));let j=this.sections.length-1;for(let te=0;te<S.text.length;++te)this.sectionIndex.push(j)}addImageSection(S){let D=S.image?S.image.name:"";if(D.length===0)return void T("Can't add FormattedSection with an empty image.");let j=this.getNextImageSectionCharCode();j?(this.text+=String.fromCharCode(j),this.sections.push(Hx.forImage(D)),this.sectionIndex.push(this.sections.length-1)):T("Reached maximum number of images 6401")}getNextImageSectionCharCode(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Gx(R,S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr){let Pr=S1.fromFeature(R,te),$r;Ft===i.ah.vertical&&Pr.verticalizePunctuation();let{processBidirectionalText:ni,processStyledBidirectionalText:Di}=vs;if(ni&&Pr.sections.length===1){$r=[];let Zi=ni(Pr.toString(),M1(Pr,at,ue,S,j,sr));for(let ta of Zi){let Va=new S1;Va.text=ta,Va.sections=Pr.sections;for(let Io=0;Io<ta.length;Io++)Va.sectionIndex.push(0);$r.push(Va)}}else if(Di){$r=[];let Zi=Di(Pr.text,Pr.sectionIndex,M1(Pr,at,ue,S,j,sr));for(let ta of Zi){let Va=new S1;Va.text=ta[0],Va.sectionIndex=ta[1],Va.sections=Pr.sections,$r.push(Va)}}else $r=function(Zi,ta){let Va=[],Io=Zi.text,La=0;for(let Hn of ta)Va.push(Zi.substring(La,Hn)),La=Hn;return La<Io.length&&Va.push(Zi.substring(La,Io.length)),Va}(Pr,M1(Pr,at,ue,S,j,sr));let pi=[],ki={positionedLines:pi,text:Pr.toString(),top:Tt[1],bottom:Tt[1],left:Tt[0],right:Tt[0],writingMode:Ft,iconsInText:!1,verticalizable:!1};return function(Zi,ta,Va,Io,La,Hn,lo,$a,Xa,Tn,bo,Ya){let Uo=0,wu=lh,hu=0,uh=0,$v=$a==="right"?1:$a==="left"?0:.5,td=0;for(let rf of La){rf.trim();let fh=rf.getMaxScale(),Td=(fh-1)*kl,rd={positionedGlyphs:[],lineOffset:0};Zi.positionedLines[td]=rd;let Dh=rd.positionedGlyphs,xf=0;if(!rf.length()){wu+=Hn,++td;continue}for(let lv=0;lv<rf.length();lv++){let Cl=rf.getSection(lv),qu=rf.getSectionIndex(lv),Tu=rf.getCharCode(lv),Rv=0,qc=null,I1=null,p0=null,Gp=kl,Qv=!(Xa===i.ah.horizontal||!bo&&!Bo(Tu)||bo&&(Lw[Tu]||(ch=Tu,new RegExp("\\p{sc=Arab}","u").test(String.fromCodePoint(ch)))));if(Cl.imageName){let oc=Io[Cl.imageName];if(!oc)continue;p0=Cl.imageName,Zi.iconsInText=Zi.iconsInText||!0,I1=oc.paddedRect;let If=oc.displaySize;Cl.scale=Cl.scale*kl/Ya,qc={width:If[0],height:If[1],left:wd,top:-hC,advance:Qv?If[1]:If[0]},Rv=Td+(kl-If[1]*Cl.scale),Gp=qc.advance;let ep=Qv?If[0]*Cl.scale-kl*fh:If[1]*Cl.scale-kl*fh;ep>0&&ep>xf&&(xf=ep)}else{let oc=Va[Cl.fontStack],If=oc&&oc[Tu];if(If&&If.rect)I1=If.rect,qc=If.metrics;else{let ep=ta[Cl.fontStack],gg=ep&&ep[Tu];if(!gg)continue;qc=gg.metrics}Rv=(fh-Cl.scale)*kl}Qv?(Zi.verticalizable=!0,Dh.push({glyph:Tu,imageName:p0,x:Uo,y:wu+Rv,vertical:Qv,scale:Cl.scale,fontStack:Cl.fontStack,sectionIndex:qu,metrics:qc,rect:I1}),Uo+=Gp*Cl.scale+Tn):(Dh.push({glyph:Tu,imageName:p0,x:Uo,y:wu+Rv,vertical:Qv,scale:Cl.scale,fontStack:Cl.fontStack,sectionIndex:qu,metrics:qc,rect:I1}),Uo+=qc.advance*Cl.scale+Tn)}Dh.length!==0&&(hu=Math.max(Uo-Tn,hu),sm(Dh,0,Dh.length-1,$v,xf)),Uo=0;let Iv=Hn*fh+xf;rd.lineOffset=Math.max(xf,Td),wu+=Iv,uh=Math.max(Iv,uh),++td}var ch;let Ud=wu-lh,{horizontalAlign:Vd,verticalAlign:Hd}=Iw(lo);(function(rf,fh,Td,rd,Dh,xf,Iv,lv,Cl){let qu=(fh-Td)*Dh,Tu=0;Tu=xf!==Iv?-lv*rd-lh:(-rd*Cl+.5)*Iv;for(let Rv of rf)for(let qc of Rv.positionedGlyphs)qc.x+=qu,qc.y+=Tu})(Zi.positionedLines,$v,Vd,Hd,hu,uh,Hn,Ud,La.length),Zi.top+=-Hd*Ud,Zi.bottom=Zi.top+Ud,Zi.left+=-Vd*hu,Zi.right=Zi.left+hu}(ki,S,D,j,$r,ve,De,Ze,Ft,at,Qt,Tr),!function(Zi){for(let ta of Zi)if(ta.positionedGlyphs.length!==0)return!1;return!0}(pi)&&ki}let Lw={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},B9={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},N9={40:!0};function dC(R,S,D,j,te,ue){if(S.imageName){let ve=j[S.imageName];return ve?ve.displaySize[0]*S.scale*kl/ue+te:0}{let ve=D[S.fontStack],De=ve&&ve[R];return De?De.metrics.advance*S.scale+te:0}}function vC(R,S,D,j){let te=Math.pow(R-S,2);return j?R<S?te/2:2*te:te+Math.abs(D)*D}function U9(R,S,D){let j=0;return R===10&&(j-=1e4),D&&(j+=150),R!==40&&R!==65288||(j+=50),S!==41&&S!==65289||(j+=50),j}function Pw(R,S,D,j,te,ue){let ve=null,De=vC(S,D,te,ue);for(let Ze of j){let at=vC(S-Ze.x,D,te,ue)+Ze.badness;at<=De&&(ve=Ze,De=at)}return{index:R,x:S,priorBreak:ve,badness:De}}function pC(R){return R?pC(R.priorBreak).concat(R.index):[]}function M1(R,S,D,j,te,ue){if(!R)return[];let ve=[],De=function(Ft,Qt,sr,Tr,Pr,$r){let ni=0;for(let Di=0;Di<Ft.length();Di++){let pi=Ft.getSection(Di);ni+=dC(Ft.getCharCode(Di),pi,Tr,Pr,Qt,$r)}return ni/Math.max(1,Math.ceil(ni/sr))}(R,S,D,j,te,ue),Ze=R.text.indexOf("\u200B")>=0,at=0;for(let Ft=0;Ft<R.length();Ft++){let Qt=R.getSection(Ft),sr=R.getCharCode(Ft);if(Lw[sr]||(at+=dC(sr,Qt,j,te,S,ue)),Ft<R.length()-1){let Tr=!((Tt=sr)<11904)&&(!!sn["CJK Compatibility Forms"](Tt)||!!sn["CJK Compatibility"](Tt)||!!sn["CJK Strokes"](Tt)||!!sn["CJK Symbols and Punctuation"](Tt)||!!sn["Enclosed CJK Letters and Months"](Tt)||!!sn["Halfwidth and Fullwidth Forms"](Tt)||!!sn["Ideographic Description Characters"](Tt)||!!sn["Vertical Forms"](Tt)||ys.test(String.fromCodePoint(Tt)));(B9[sr]||Tr||Qt.imageName||Ft!==R.length()-2&&N9[R.getCharCode(Ft+1)])&&ve.push(Pw(Ft+1,at,De,ve,U9(sr,R.getCharCode(Ft+1),Tr&&Ze),!1))}}var Tt;return pC(Pw(R.length(),at,De,ve,0,!0))}function Iw(R){let S=.5,D=.5;switch(R){case"right":case"top-right":case"bottom-right":S=1;break;case"left":case"top-left":case"bottom-left":S=0}switch(R){case"bottom":case"bottom-right":case"bottom-left":D=1;break;case"top":case"top-right":case"top-left":D=0}return{horizontalAlign:S,verticalAlign:D}}function sm(R,S,D,j,te){if(!j&&!te)return;let ue=R[D],ve=(R[D].x+ue.metrics.advance*ue.scale)*j;for(let De=S;De<=D;De++)R[De].x-=ve,R[De].y+=te}function jx(R,S,D){let{horizontalAlign:j,verticalAlign:te}=Iw(D),ue=S[0]-R.displaySize[0]*j,ve=S[1]-R.displaySize[1]*te;return{image:R,top:ve,bottom:ve+R.displaySize[1],left:ue,right:ue+R.displaySize[0]}}function gC(R){var S,D;let j=R.left,te=R.top,ue=R.right-j,ve=R.bottom-te,De=(S=R.image.textFitWidth)!==null&&S!==void 0?S:"stretchOrShrink",Ze=(D=R.image.textFitHeight)!==null&&D!==void 0?D:"stretchOrShrink",at=(R.image.content[2]-R.image.content[0])/(R.image.content[3]-R.image.content[1]);if(Ze==="proportional"){if(De==="stretchOnly"&&ue/ve<at||De==="proportional"){let Tt=Math.ceil(ve*at);j*=Tt/ue,ue=Tt}}else if(De==="proportional"&&Ze==="stretchOnly"&&at!==0&&ue/ve>at){let Tt=Math.ceil(ue/at);te*=Tt/ve,ve=Tt}return{x1:j,y1:te,x2:j+ue,y2:te+ve}}function mC(R,S,D,j,te,ue){let ve=R.image,De;if(ve.content){let $r=ve.content,ni=ve.pixelRatio||1;De=[$r[0]/ni,$r[1]/ni,ve.displaySize[0]-$r[2]/ni,ve.displaySize[1]-$r[3]/ni]}let Ze=S.left*ue,at=S.right*ue,Tt,Ft,Qt,sr;D==="width"||D==="both"?(sr=te[0]+Ze-j[3],Ft=te[0]+at+j[1]):(sr=te[0]+(Ze+at-ve.displaySize[0])/2,Ft=sr+ve.displaySize[0]);let Tr=S.top*ue,Pr=S.bottom*ue;return D==="height"||D==="both"?(Tt=te[1]+Tr-j[0],Qt=te[1]+Pr+j[2]):(Tt=te[1]+(Tr+Pr-ve.displaySize[1])/2,Qt=Tt+ve.displaySize[1]),{image:ve,top:Tt,right:Ft,bottom:Qt,left:sr,collisionPadding:De}}let Wx=255,v0=128,lm=Wx*v0;function yC(R,S){let{expression:D}=S;if(D.kind==="constant")return{kind:"constant",layoutSize:D.evaluate(new Ko(R+1))};if(D.kind==="source")return{kind:"source"};{let{zoomStops:j,interpolationType:te}=D,ue=0;for(;ue<j.length&&j[ue]<=R;)ue++;ue=Math.max(0,ue-1);let ve=ue;for(;ve<j.length&&j[ve]<R+1;)ve++;ve=Math.min(j.length-1,ve);let De=j[ue],Ze=j[ve];return D.kind==="composite"?{kind:"composite",minZoom:De,maxZoom:Ze,interpolationType:te}:{kind:"camera",minZoom:De,maxZoom:Ze,minSize:D.evaluate(new Ko(De)),maxSize:D.evaluate(new Ko(Ze)),interpolationType:te}}}function iS(R,S,D){let j="never",te=R.get(S);return te?j=te:R.get(D)&&(j="always"),j}let V9=ei.VectorTileFeature.types,H9=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function Rw(R,S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt){let sr=De?Math.min(lm,Math.round(De[0])):0,Tr=De?Math.min(lm,Math.round(De[1])):0;R.emplaceBack(S,D,Math.round(32*j),Math.round(32*te),ue,ve,(sr<<1)+(Ze?1:0),Tr,16*at,16*Tt,256*Ft,256*Qt)}function nS(R,S,D){R.emplaceBack(S.x,S.y,D),R.emplaceBack(S.x,S.y,D),R.emplaceBack(S.x,S.y,D),R.emplaceBack(S.x,S.y,D)}function aS(R){for(let S of R.sections)if(Ka(S.text))return!0;return!1}class oS{constructor(S){this.layoutVertexArray=new au,this.indexArray=new oe,this.programConfigurations=S,this.segments=new We,this.dynamicLayoutVertexArray=new zc,this.opacityVertexArray=new zl,this.hasVisibleVertices=!1,this.placedSymbolArray=new pa}isEmpty(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0}upload(S,D,j,te){this.isEmpty()||(j&&(this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,rm.members),this.indexBuffer=S.createIndexBuffer(this.indexArray,D),this.dynamicLayoutVertexBuffer=S.createVertexBuffer(this.dynamicLayoutVertexArray,w1.members,!0),this.opacityVertexBuffer=S.createVertexBuffer(this.opacityVertexArray,H9,!0),this.opacityVertexBuffer.itemSize=1),(j||te)&&this.programConfigurations.upload(S))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())}}mi("SymbolBuffers",oS);class um{constructor(S,D,j){this.layoutVertexArray=new S,this.layoutAttributes=D,this.indexArray=new j,this.segments=new We,this.collisionVertexArray=new Z}upload(S){this.layoutVertexBuffer=S.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=S.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=S.createVertexBuffer(this.collisionVertexArray,T1.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())}}mi("CollisionBuffers",um);class E1{constructor(S){this.collisionBoxArray=S.collisionBoxArray,this.zoom=S.zoom,this.overscaling=S.overscaling,this.layers=S.layers,this.layerIds=this.layers.map(ve=>ve.id),this.index=S.index,this.pixelRatio=S.pixelRatio,this.sourceLayerIndex=S.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Un([]),this.placementViewportMatrix=Un([]);let D=this.layers[0]._unevaluatedLayout._values;this.textSizeData=yC(this.zoom,D["text-size"]),this.iconSizeData=yC(this.zoom,D["icon-size"]);let j=this.layers[0].layout,te=j.get("symbol-sort-key"),ue=j.get("symbol-z-order");this.canOverlap=iS(j,"text-overlap","text-allow-overlap")!=="never"||iS(j,"icon-overlap","icon-allow-overlap")!=="never"||j.get("text-ignore-placement")||j.get("icon-ignore-placement"),this.sortFeaturesByKey=ue!=="viewport-y"&&!te.isConstant(),this.sortFeaturesByY=(ue==="viewport-y"||ue==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,j.get("symbol-placement")==="point"&&(this.writingModes=j.get("text-writing-mode").map(ve=>i.ah[ve])),this.stateDependentLayerIds=this.layers.filter(ve=>ve.isStateDependent()).map(ve=>ve.id),this.sourceID=S.sourceID}createArrays(){this.text=new oS(new _s(this.layers,this.zoom,S=>/^text/.test(S))),this.icon=new oS(new _s(this.layers,this.zoom,S=>/^icon/.test(S))),this.glyphOffsetArray=new To,this.lineVertexArray=new Wa,this.symbolInstances=new Ga,this.textAnchorOffsets=new Ro}calculateGlyphDependencies(S,D,j,te,ue){for(let ve=0;ve<S.length;ve++)if(D[S.charCodeAt(ve)]=!0,(j||te)&&ue){let De=Fu[S.charAt(ve)];De&&(D[De.charCodeAt(0)]=!0)}}populate(S,D,j){let te=this.layers[0],ue=te.layout,ve=ue.get("text-font"),De=ue.get("text-field"),Ze=ue.get("icon-image"),at=(De.value.kind!=="constant"||De.value.value instanceof Zr&&!De.value.value.isEmpty()||De.value.value.toString().length>0)&&(ve.value.kind!=="constant"||ve.value.value.length>0),Tt=Ze.value.kind!=="constant"||!!Ze.value.value||Object.keys(Ze.parameters).length>0,Ft=ue.get("symbol-sort-key");if(this.features=[],!at&&!Tt)return;let Qt=D.iconDependencies,sr=D.glyphDependencies,Tr=D.availableImages,Pr=new Ko(this.zoom);for(let{feature:$r,id:ni,index:Di,sourceLayerIndex:pi}of S){let ki=te._featureFilter.needGeometry,Zi=xl($r,ki);if(!te._featureFilter.filter(Pr,Zi,j))continue;let ta,Va;if(ki||(Zi.geometry=js($r)),at){let La=te.getValueAndResolveTokens("text-field",Zi,j,Tr),Hn=Zr.factory(La),lo=this.hasRTLText=this.hasRTLText||aS(Hn);(!lo||vs.getRTLTextPluginStatus()==="unavailable"||lo&&vs.isParsed())&&(ta=nm(Hn,te,Zi))}if(Tt){let La=te.getValueAndResolveTokens("icon-image",Zi,j,Tr);Va=La instanceof Mi?La:Mi.fromString(La)}if(!ta&&!Va)continue;let Io=this.sortFeaturesByKey?Ft.evaluate(Zi,{},j):void 0;if(this.features.push({id:ni,text:ta,icon:Va,index:Di,sourceLayerIndex:pi,geometry:Zi.geometry,properties:$r.properties,type:V9[$r.type],sortKey:Io}),Va&&(Qt[Va.name]=!0),ta){let La=ve.evaluate(Zi,{},j).join(","),Hn=ue.get("text-rotation-alignment")!=="viewport"&&ue.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(i.ah.vertical)>=0;for(let lo of ta.sections)if(lo.image)Qt[lo.image.name]=!0;else{let $a=Ua(ta.toString()),Xa=lo.fontStack||La,Tn=sr[Xa]=sr[Xa]||{};this.calculateGlyphDependencies(lo.text,Tn,Hn,this.allowVerticalPlacement,$a)}}}ue.get("symbol-placement")==="line"&&(this.features=function($r){let ni={},Di={},pi=[],ki=0;function Zi(La){pi.push($r[La]),ki++}function ta(La,Hn,lo){let $a=Di[La];return delete Di[La],Di[Hn]=$a,pi[$a].geometry[0].pop(),pi[$a].geometry[0]=pi[$a].geometry[0].concat(lo[0]),$a}function Va(La,Hn,lo){let $a=ni[Hn];return delete ni[Hn],ni[La]=$a,pi[$a].geometry[0].shift(),pi[$a].geometry[0]=lo[0].concat(pi[$a].geometry[0]),$a}function Io(La,Hn,lo){let $a=lo?Hn[0][Hn[0].length-1]:Hn[0][0];return`${La}:${$a.x}:${$a.y}`}for(let La=0;La<$r.length;La++){let Hn=$r[La],lo=Hn.geometry,$a=Hn.text?Hn.text.toString():null;if(!$a){Zi(La);continue}let Xa=Io($a,lo),Tn=Io($a,lo,!0);if(Xa in Di&&Tn in ni&&Di[Xa]!==ni[Tn]){let bo=Va(Xa,Tn,lo),Ya=ta(Xa,Tn,pi[bo].geometry);delete ni[Xa],delete Di[Tn],Di[Io($a,pi[Ya].geometry,!0)]=Ya,pi[bo].geometry=null}else Xa in Di?ta(Xa,Tn,lo):Tn in ni?Va(Xa,Tn,lo):(Zi(La),ni[Xa]=ki-1,Di[Tn]=ki-1)}return pi.filter(La=>La.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort(($r,ni)=>$r.sortKey-ni.sortKey)}update(S,D,j){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(S,D,this.layers,j),this.icon.programConfigurations.updatePaintArrays(S,D,this.layers,j))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(S){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(S),this.iconCollisionBox.upload(S)),this.text.upload(S,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(S,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(S,D){let j=this.lineVertexArray.length;if(S.segment!==void 0){let te=S.dist(D[S.segment+1]),ue=S.dist(D[S.segment]),ve={};for(let De=S.segment+1;De<D.length;De++)ve[De]={x:D[De].x,y:D[De].y,tileUnitDistanceFromAnchor:te},De<D.length-1&&(te+=D[De+1].dist(D[De]));for(let De=S.segment||0;De>=0;De--)ve[De]={x:D[De].x,y:D[De].y,tileUnitDistanceFromAnchor:ue},De>0&&(ue+=D[De-1].dist(D[De]));for(let De=0;De<D.length;De++){let Ze=ve[De];this.lineVertexArray.emplaceBack(Ze.x,Ze.y,Ze.tileUnitDistanceFromAnchor)}}return{lineStartIndex:j,lineLength:this.lineVertexArray.length-j}}addSymbols(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt){let sr=S.indexArray,Tr=S.layoutVertexArray,Pr=S.segments.prepareSegment(4*D.length,Tr,sr,this.canOverlap?ve.sortKey:void 0),$r=this.glyphOffsetArray.length,ni=Pr.vertexLength,Di=this.allowVerticalPlacement&&De===i.ah.vertical?Math.PI/2:0,pi=ve.text&&ve.text.sections;for(let ki=0;ki<D.length;ki++){let{tl:Zi,tr:ta,bl:Va,br:Io,tex:La,pixelOffsetTL:Hn,pixelOffsetBR:lo,minFontScaleX:$a,minFontScaleY:Xa,glyphOffset:Tn,isSDF:bo,sectionIndex:Ya}=D[ki],Uo=Pr.vertexLength,wu=Tn[1];Rw(Tr,Ze.x,Ze.y,Zi.x,wu+Zi.y,La.x,La.y,j,bo,Hn.x,Hn.y,$a,Xa),Rw(Tr,Ze.x,Ze.y,ta.x,wu+ta.y,La.x+La.w,La.y,j,bo,lo.x,Hn.y,$a,Xa),Rw(Tr,Ze.x,Ze.y,Va.x,wu+Va.y,La.x,La.y+La.h,j,bo,Hn.x,lo.y,$a,Xa),Rw(Tr,Ze.x,Ze.y,Io.x,wu+Io.y,La.x+La.w,La.y+La.h,j,bo,lo.x,lo.y,$a,Xa),nS(S.dynamicLayoutVertexArray,Ze,Di),sr.emplaceBack(Uo,Uo+1,Uo+2),sr.emplaceBack(Uo+1,Uo+2,Uo+3),Pr.vertexLength+=4,Pr.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(Tn[0]),ki!==D.length-1&&Ya===D[ki+1].sectionIndex||S.programConfigurations.populatePaintArrays(Tr.length,ve,ve.index,{},Qt,pi&&pi[Ya])}S.placedSymbolArray.emplaceBack(Ze.x,Ze.y,$r,this.glyphOffsetArray.length-$r,ni,at,Tt,Ze.segment,j?j[0]:0,j?j[1]:0,te[0],te[1],De,0,!1,0,Ft)}_addCollisionDebugVertex(S,D,j,te,ue,ve){return D.emplaceBack(0,0),S.emplaceBack(j.x,j.y,te,ue,Math.round(ve.x),Math.round(ve.y))}addCollisionDebugVertices(S,D,j,te,ue,ve,De){let Ze=ue.segments.prepareSegment(4,ue.layoutVertexArray,ue.indexArray),at=Ze.vertexLength,Tt=ue.layoutVertexArray,Ft=ue.collisionVertexArray,Qt=De.anchorX,sr=De.anchorY;this._addCollisionDebugVertex(Tt,Ft,ve,Qt,sr,new u(S,D)),this._addCollisionDebugVertex(Tt,Ft,ve,Qt,sr,new u(j,D)),this._addCollisionDebugVertex(Tt,Ft,ve,Qt,sr,new u(j,te)),this._addCollisionDebugVertex(Tt,Ft,ve,Qt,sr,new u(S,te)),Ze.vertexLength+=4;let Tr=ue.indexArray;Tr.emplaceBack(at,at+1),Tr.emplaceBack(at+1,at+2),Tr.emplaceBack(at+2,at+3),Tr.emplaceBack(at+3,at),Ze.primitiveLength+=4}addDebugCollisionBoxes(S,D,j,te){for(let ue=S;ue<D;ue++){let ve=this.collisionBoxArray.get(ue);this.addCollisionDebugVertices(ve.x1,ve.y1,ve.x2,ve.y2,te?this.textCollisionBox:this.iconCollisionBox,ve.anchorPoint,j)}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new um(Fl,oy.members,we),this.iconCollisionBox=new um(Fl,oy.members,we);for(let S=0;S<this.symbolInstances.length;S++){let D=this.symbolInstances.get(S);this.addDebugCollisionBoxes(D.textBoxStartIndex,D.textBoxEndIndex,D,!0),this.addDebugCollisionBoxes(D.verticalTextBoxStartIndex,D.verticalTextBoxEndIndex,D,!0),this.addDebugCollisionBoxes(D.iconBoxStartIndex,D.iconBoxEndIndex,D,!1),this.addDebugCollisionBoxes(D.verticalIconBoxStartIndex,D.verticalIconBoxEndIndex,D,!1)}}_deserializeCollisionBoxesForSymbol(S,D,j,te,ue,ve,De,Ze,at){let Tt={};for(let Ft=D;Ft<j;Ft++){let Qt=S.get(Ft);Tt.textBox={x1:Qt.x1,y1:Qt.y1,x2:Qt.x2,y2:Qt.y2,anchorPointX:Qt.anchorPointX,anchorPointY:Qt.anchorPointY},Tt.textFeatureIndex=Qt.featureIndex;break}for(let Ft=te;Ft<ue;Ft++){let Qt=S.get(Ft);Tt.verticalTextBox={x1:Qt.x1,y1:Qt.y1,x2:Qt.x2,y2:Qt.y2,anchorPointX:Qt.anchorPointX,anchorPointY:Qt.anchorPointY},Tt.verticalTextFeatureIndex=Qt.featureIndex;break}for(let Ft=ve;Ft<De;Ft++){let Qt=S.get(Ft);Tt.iconBox={x1:Qt.x1,y1:Qt.y1,x2:Qt.x2,y2:Qt.y2,anchorPointX:Qt.anchorPointX,anchorPointY:Qt.anchorPointY},Tt.iconFeatureIndex=Qt.featureIndex;break}for(let Ft=Ze;Ft<at;Ft++){let Qt=S.get(Ft);Tt.verticalIconBox={x1:Qt.x1,y1:Qt.y1,x2:Qt.x2,y2:Qt.y2,anchorPointX:Qt.anchorPointX,anchorPointY:Qt.anchorPointY},Tt.verticalIconFeatureIndex=Qt.featureIndex;break}return Tt}deserializeCollisionBoxes(S){this.collisionArrays=[];for(let D=0;D<this.symbolInstances.length;D++){let j=this.symbolInstances.get(D);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(S,j.textBoxStartIndex,j.textBoxEndIndex,j.verticalTextBoxStartIndex,j.verticalTextBoxEndIndex,j.iconBoxStartIndex,j.iconBoxEndIndex,j.verticalIconBoxStartIndex,j.verticalIconBoxEndIndex))}}hasTextData(){return this.text.segments.get().length>0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(S,D){let j=S.placedSymbolArray.get(D),te=j.vertexStartIndex+4*j.numGlyphs;for(let ue=j.vertexStartIndex;ue<te;ue+=4)S.indexArray.emplaceBack(ue,ue+1,ue+2),S.indexArray.emplaceBack(ue+1,ue+2,ue+3)}getSortedSymbolIndexes(S){if(this.sortedAngle===S&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;let D=Math.sin(S),j=Math.cos(S),te=[],ue=[],ve=[];for(let De=0;De<this.symbolInstances.length;++De){ve.push(De);let Ze=this.symbolInstances.get(De);te.push(0|Math.round(D*Ze.anchorX+j*Ze.anchorY)),ue.push(Ze.featureIndex)}return ve.sort((De,Ze)=>te[De]-te[Ze]||ue[Ze]-ue[De]),ve}addToSortKeyRanges(S,D){let j=this.sortKeyRanges[this.sortKeyRanges.length-1];j&&j.sortKey===D?j.symbolInstanceEnd=S+1:this.sortKeyRanges.push({sortKey:D,symbolInstanceStart:S,symbolInstanceEnd:S+1})}sortFeatures(S){if(this.sortFeaturesByY&&this.sortedAngle!==S&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(S),this.sortedAngle=S,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let D of this.symbolInstanceIndexes){let j=this.symbolInstances.get(D);this.featureSortOrder.push(j.featureIndex),[j.rightJustifiedTextSymbolIndex,j.centerJustifiedTextSymbolIndex,j.leftJustifiedTextSymbolIndex].forEach((te,ue,ve)=>{te>=0&&ve.indexOf(te)===ue&&this.addIndicesForPlacedSymbol(this.text,te)}),j.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,j.verticalPlacedTextSymbolIndex),j.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,j.placedIconSymbolIndex),j.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,j.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let tf,Zx;mi("SymbolBucket",E1,{omit:["layers","collisionBoxArray","features","compareText"]}),E1.MAX_GLYPHS=65535,E1.addDynamicAttributes=nS;var Dw={get paint(){return Zx=Zx||new le({"icon-opacity":new eo(ce.paint_symbol["icon-opacity"]),"icon-color":new eo(ce.paint_symbol["icon-color"]),"icon-halo-color":new eo(ce.paint_symbol["icon-halo-color"]),"icon-halo-width":new eo(ce.paint_symbol["icon-halo-width"]),"icon-halo-blur":new eo(ce.paint_symbol["icon-halo-blur"]),"icon-translate":new Da(ce.paint_symbol["icon-translate"]),"icon-translate-anchor":new Da(ce.paint_symbol["icon-translate-anchor"]),"text-opacity":new eo(ce.paint_symbol["text-opacity"]),"text-color":new eo(ce.paint_symbol["text-color"],{runtimeType:Ht,getOverride:R=>R.textColor,hasOverride:R=>!!R.textColor}),"text-halo-color":new eo(ce.paint_symbol["text-halo-color"]),"text-halo-width":new eo(ce.paint_symbol["text-halo-width"]),"text-halo-blur":new eo(ce.paint_symbol["text-halo-blur"]),"text-translate":new Da(ce.paint_symbol["text-translate"]),"text-translate-anchor":new Da(ce.paint_symbol["text-translate-anchor"])})},get layout(){return tf=tf||new le({"symbol-placement":new Da(ce.layout_symbol["symbol-placement"]),"symbol-spacing":new Da(ce.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Da(ce.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new eo(ce.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Da(ce.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Da(ce.layout_symbol["icon-allow-overlap"]),"icon-overlap":new Da(ce.layout_symbol["icon-overlap"]),"icon-ignore-placement":new Da(ce.layout_symbol["icon-ignore-placement"]),"icon-optional":new Da(ce.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Da(ce.layout_symbol["icon-rotation-alignment"]),"icon-size":new eo(ce.layout_symbol["icon-size"]),"icon-text-fit":new Da(ce.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Da(ce.layout_symbol["icon-text-fit-padding"]),"icon-image":new eo(ce.layout_symbol["icon-image"]),"icon-rotate":new eo(ce.layout_symbol["icon-rotate"]),"icon-padding":new eo(ce.layout_symbol["icon-padding"]),"icon-keep-upright":new Da(ce.layout_symbol["icon-keep-upright"]),"icon-offset":new eo(ce.layout_symbol["icon-offset"]),"icon-anchor":new eo(ce.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Da(ce.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Da(ce.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Da(ce.layout_symbol["text-rotation-alignment"]),"text-field":new eo(ce.layout_symbol["text-field"]),"text-font":new eo(ce.layout_symbol["text-font"]),"text-size":new eo(ce.layout_symbol["text-size"]),"text-max-width":new eo(ce.layout_symbol["text-max-width"]),"text-line-height":new Da(ce.layout_symbol["text-line-height"]),"text-letter-spacing":new eo(ce.layout_symbol["text-letter-spacing"]),"text-justify":new eo(ce.layout_symbol["text-justify"]),"text-radial-offset":new eo(ce.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Da(ce.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new eo(ce.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new eo(ce.layout_symbol["text-anchor"]),"text-max-angle":new Da(ce.layout_symbol["text-max-angle"]),"text-writing-mode":new Da(ce.layout_symbol["text-writing-mode"]),"text-rotate":new eo(ce.layout_symbol["text-rotate"]),"text-padding":new Da(ce.layout_symbol["text-padding"]),"text-keep-upright":new Da(ce.layout_symbol["text-keep-upright"]),"text-transform":new eo(ce.layout_symbol["text-transform"]),"text-offset":new eo(ce.layout_symbol["text-offset"]),"text-allow-overlap":new Da(ce.layout_symbol["text-allow-overlap"]),"text-overlap":new Da(ce.layout_symbol["text-overlap"]),"text-ignore-placement":new Da(ce.layout_symbol["text-ignore-placement"]),"text-optional":new Da(ce.layout_symbol["text-optional"])})}};class Xx{constructor(S){if(S.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=S.property.overrides?S.property.overrides.runtimeType:Lt,this.defaultValue=S}evaluate(S){if(S.formattedSection){let D=this.defaultValue.property.overrides;if(D&&D.hasOverride(S.formattedSection))return D.getOverride(S.formattedSection)}return S.feature&&S.featureState?this.defaultValue.evaluate(S.feature,S.featureState):this.defaultValue.property.specification.default}eachChild(S){this.defaultValue.isConstant()||S(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}mi("FormatSectionOverride",Xx,{omit:["defaultValue"]});class uy extends B{constructor(S){super(S,Dw)}recalculate(S,D){if(super.recalculate(S,D),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let j=this.layout.get("text-writing-mode");if(j){let te=[];for(let ue of j)te.indexOf(ue)<0&&te.push(ue);this.layout._values["text-writing-mode"]=te}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(S,D,j,te){let ue=this.layout.get(S).evaluate(D,{},j,te),ve=this._unevaluatedLayout._values[S];return ve.isDataDriven()||Lc(ve.value)||!ue?ue:function(De,Ze){return Ze.replace(/{([^{}]+)}/g,(at,Tt)=>De&&Tt in De?String(De[Tt]):"")}(D.properties,ue)}createBucket(S){return new E1(S)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let S of Dw.paint.overridableProperties){if(!uy.hasPaintOverride(this.layout,S))continue;let D=this.paint.get(S),j=new Xx(D),te=new Pu(j,D.property.specification),ue=null;ue=D.value.kind==="constant"||D.value.kind==="source"?new Xc("source",te):new ic("composite",te,D.value.zoomStops),this.paint._values[S]=new Du(D.property,ue,D.parameters)}}_handleOverridablePaintPropertyUpdate(S,D,j){return!(!this.layout||D.isDataDriven()||j.isDataDriven())&&uy.hasPaintOverride(this.layout,S)}static hasPaintOverride(S,D){let j=S.get("text-field"),te=Dw.paint.properties[D],ue=!1,ve=De=>{for(let Ze of De)if(te.overrides&&te.overrides.hasOverride(Ze))return void(ue=!0)};if(j.value.kind==="constant"&&j.value.value instanceof Zr)ve(j.value.value.sections);else if(j.value.kind==="source"){let De=at=>{ue||(at instanceof jn&&Ki(at.value)===Br?ve(at.value.sections):at instanceof Ql?ve(at.sections):at.eachChild(De))},Ze=j.value;Ze._styleExpression&&De(Ze._styleExpression.expression)}return ue}}let _C;var Yx={get paint(){return _C=_C||new le({"background-color":new Da(ce.paint_background["background-color"]),"background-pattern":new yc(ce.paint_background["background-pattern"]),"background-opacity":new Da(ce.paint_background["background-opacity"])})}};class G9 extends B{constructor(S){super(S,Yx)}}let sS;var xC={get paint(){return sS=sS||new le({"raster-opacity":new Da(ce.paint_raster["raster-opacity"]),"raster-hue-rotate":new Da(ce.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Da(ce.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Da(ce.paint_raster["raster-brightness-max"]),"raster-saturation":new Da(ce.paint_raster["raster-saturation"]),"raster-contrast":new Da(ce.paint_raster["raster-contrast"]),"raster-resampling":new Da(ce.paint_raster["raster-resampling"]),"raster-fade-duration":new Da(ce.paint_raster["raster-fade-duration"])})}};class Kx extends B{constructor(S){super(S,xC)}}class lS extends B{constructor(S){super(S,{}),this.onAdd=D=>{this.implementation.onAdd&&this.implementation.onAdd(D,D.painter.context.gl)},this.onRemove=D=>{this.implementation.onRemove&&this.implementation.onRemove(D,D.painter.context.gl)},this.implementation=S}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class uS{constructor(S){this._methodToThrottle=S,this._triggered=!1,typeof MessageChannel!="undefined"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let cS=63710088e-1;class dg{constructor(S,D){if(isNaN(S)||isNaN(D))throw new Error(`Invalid LngLat object: (${S}, ${D})`);if(this.lng=+S,this.lat=+D,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new dg(A(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(S){let D=Math.PI/180,j=this.lat*D,te=S.lat*D,ue=Math.sin(j)*Math.sin(te)+Math.cos(j)*Math.cos(te)*Math.cos((S.lng-this.lng)*D);return cS*Math.acos(Math.min(ue,1))}static convert(S){if(S instanceof dg)return S;if(Array.isArray(S)&&(S.length===2||S.length===3))return new dg(Number(S[0]),Number(S[1]));if(!Array.isArray(S)&&typeof S=="object"&&S!==null)return new dg(Number("lng"in S?S.lng:S.lon),Number(S.lat));throw new Error("`LngLatLike` argument must be specified as a LngLat instance, an object {lng: <lng>, lat: <lat>}, an object {lon: <lng>, lat: <lat>}, or an array of [<lng>, <lat>]")}}let k1=2*Math.PI*cS;function bC(R){return k1*Math.cos(R*Math.PI/180)}function zw(R){return(180+R)/360}function wC(R){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+R*Math.PI/360)))/360}function Fw(R,S){return R/bC(S)}function Jx(R){return 360/Math.PI*Math.atan(Math.exp((180-360*R)*Math.PI/180))-90}class $x{constructor(S,D,j=0){this.x=+S,this.y=+D,this.z=+j}static fromLngLat(S,D=0){let j=dg.convert(S);return new $x(zw(j.lng),wC(j.lat),Fw(D,j.lat))}toLngLat(){return new dg(360*this.x-180,Jx(this.y))}toAltitude(){return this.z*bC(Jx(this.y))}meterInMercatorCoordinateUnits(){return 1/k1*(S=Jx(this.y),1/Math.cos(S*Math.PI/180));var S}}function gp(R,S,D){var j=2*Math.PI*6378137/256/Math.pow(2,D);return[R*j-2*Math.PI*6378137/2,S*j-2*Math.PI*6378137/2]}class fS{constructor(S,D,j){if(!function(te,ue,ve){return!(te<0||te>25||ve<0||ve>=Math.pow(2,te)||ue<0||ue>=Math.pow(2,te))}(S,D,j))throw new Error(`x=${D}, y=${j}, z=${S} outside of bounds. 0<=x<${Math.pow(2,S)}, 0<=y<${Math.pow(2,S)} 0<=z<=25 `);this.z=S,this.x=D,this.y=j,this.key=Qx(0,S,S,D,j)}equals(S){return this.z===S.z&&this.x===S.x&&this.y===S.y}url(S,D,j){let te=(ve=this.y,De=this.z,Ze=gp(256*(ue=this.x),256*(ve=Math.pow(2,De)-ve-1),De),at=gp(256*(ue+1),256*(ve+1),De),Ze[0]+","+Ze[1]+","+at[0]+","+at[1]);var ue,ve,De,Ze,at;let Tt=function(Ft,Qt,sr){let Tr,Pr="";for(let $r=Ft;$r>0;$r--)Tr=1<<$r-1,Pr+=(Qt&Tr?1:0)+(sr&Tr?2:0);return Pr}(this.z,this.x,this.y);return S[(this.x+this.y)%S.length].replace(/{prefix}/g,(this.x%16).toString(16)+(this.y%16).toString(16)).replace(/{z}/g,String(this.z)).replace(/{x}/g,String(this.x)).replace(/{y}/g,String(j==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace(/{ratio}/g,D>1?"@2x":"").replace(/{quadkey}/g,Tt).replace(/{bbox-epsg-3857}/g,te)}isChildOf(S){let D=this.z-S.z;return D>0&&S.x===this.x>>D&&S.y===this.y>>D}getTilePoint(S){let D=Math.pow(2,this.z);return new u((S.x*D-this.x)*za,(S.y*D-this.y)*za)}toString(){return`${this.z}/${this.x}/${this.y}`}}class TC{constructor(S,D){this.wrap=S,this.canonical=D,this.key=Qx(S,D.z,D.z,D.x,D.y)}}class Jv{constructor(S,D,j,te,ue){if(S<j)throw new Error(`overscaledZ should be >= z; overscaledZ = ${S}; z = ${j}`);this.overscaledZ=S,this.wrap=D,this.canonical=new fS(j,+te,+ue),this.key=Qx(D,S,j,te,ue)}clone(){return new Jv(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(S){return this.overscaledZ===S.overscaledZ&&this.wrap===S.wrap&&this.canonical.equals(S.canonical)}scaledTo(S){if(S>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${S}; overscaledZ = ${this.overscaledZ}`);let D=this.canonical.z-S;return S>this.canonical.z?new Jv(S,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Jv(S,this.wrap,S,this.canonical.x>>D,this.canonical.y>>D)}calculateScaledKey(S,D){if(S>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${S}; overscaledZ = ${this.overscaledZ}`);let j=this.canonical.z-S;return S>this.canonical.z?Qx(this.wrap*+D,S,this.canonical.z,this.canonical.x,this.canonical.y):Qx(this.wrap*+D,S,S,this.canonical.x>>j,this.canonical.y>>j)}isChildOf(S){if(S.wrap!==this.wrap)return!1;let D=this.canonical.z-S.canonical.z;return S.overscaledZ===0||S.overscaledZ<this.overscaledZ&&S.canonical.x===this.canonical.x>>D&&S.canonical.y===this.canonical.y>>D}children(S){if(this.overscaledZ>=S)return[new Jv(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let D=this.canonical.z+1,j=2*this.canonical.x,te=2*this.canonical.y;return[new Jv(D,this.wrap,D,j,te),new Jv(D,this.wrap,D,j+1,te),new Jv(D,this.wrap,D,j,te+1),new Jv(D,this.wrap,D,j+1,te+1)]}isLessThan(S){return this.wrap<S.wrap||!(this.wrap>S.wrap)&&(this.overscaledZ<S.overscaledZ||!(this.overscaledZ>S.overscaledZ)&&(this.canonical.x<S.canonical.x||!(this.canonical.x>S.canonical.x)&&this.canonical.y<S.canonical.y))}wrapped(){return new Jv(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)}unwrapTo(S){return new Jv(this.overscaledZ,S,this.canonical.z,this.canonical.x,this.canonical.y)}overscaleFactor(){return Math.pow(2,this.overscaledZ-this.canonical.z)}toUnwrapped(){return new TC(this.wrap,this.canonical)}toString(){return`${this.overscaledZ}/${this.canonical.x}/${this.canonical.y}`}getTilePoint(S){return this.canonical.getTilePoint(new $x(S.x-this.wrap,S.y))}}function Qx(R,S,D,j,te){(R*=2)<0&&(R=-1*R-1);let ue=1<<D;return(ue*ue*R+ue*te+j).toString(36)+D.toString(36)+S.toString(36)}mi("CanonicalTileID",fS),mi("OverscaledTileID",Jv,{omit:["posMatrix"]});class AC{constructor(S,D,j,te=1,ue=1,ve=1,De=0){if(this.uid=S,D.height!==D.width)throw new RangeError("DEM tiles must be square");if(j&&!["mapbox","terrarium","custom"].includes(j))return void T(`"${j}" is not a valid encoding type. Valid types include "mapbox", "terrarium" and "custom".`);this.stride=D.height;let Ze=this.dim=D.height-2;switch(this.data=new Uint32Array(D.data.buffer),j){case"terrarium":this.redFactor=256,this.greenFactor=1,this.blueFactor=1/256,this.baseShift=32768;break;case"custom":this.redFactor=te,this.greenFactor=ue,this.blueFactor=ve,this.baseShift=De;break;default:this.redFactor=6553.6,this.greenFactor=25.6,this.blueFactor=.1,this.baseShift=1e4}for(let at=0;at<Ze;at++)this.data[this._idx(-1,at)]=this.data[this._idx(0,at)],this.data[this._idx(Ze,at)]=this.data[this._idx(Ze-1,at)],this.data[this._idx(at,-1)]=this.data[this._idx(at,0)],this.data[this._idx(at,Ze)]=this.data[this._idx(at,Ze-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(Ze,-1)]=this.data[this._idx(Ze-1,0)],this.data[this._idx(-1,Ze)]=this.data[this._idx(0,Ze-1)],this.data[this._idx(Ze,Ze)]=this.data[this._idx(Ze-1,Ze-1)],this.min=Number.MAX_SAFE_INTEGER,this.max=Number.MIN_SAFE_INTEGER;for(let at=0;at<Ze;at++)for(let Tt=0;Tt<Ze;Tt++){let Ft=this.get(at,Tt);Ft>this.max&&(this.max=Ft),Ft<this.min&&(this.min=Ft)}}get(S,D){let j=new Uint8Array(this.data.buffer),te=4*this._idx(S,D);return this.unpack(j[te],j[te+1],j[te+2])}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift]}_idx(S,D){if(S<-1||S>=this.dim+1||D<-1||D>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(D+1)*this.stride+(S+1)}unpack(S,D,j){return S*this.redFactor+D*this.greenFactor+j*this.blueFactor-this.baseShift}getPixels(){return new Jn({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(S,D,j){if(this.dim!==S.dim)throw new Error("dem dimension mismatch");let te=D*this.dim,ue=D*this.dim+this.dim,ve=j*this.dim,De=j*this.dim+this.dim;switch(D){case-1:te=ue-1;break;case 1:ue=te+1}switch(j){case-1:ve=De-1;break;case 1:De=ve+1}let Ze=-D*this.dim,at=-j*this.dim;for(let Tt=ve;Tt<De;Tt++)for(let Ft=te;Ft<ue;Ft++)this.data[this._idx(Ft,Tt)]=S.data[this._idx(Ft+Ze,Tt+at)]}}mi("DEMData",AC);class SC{constructor(S){this._stringToNumber={},this._numberToString=[];for(let D=0;D<S.length;D++){let j=S[D];this._stringToNumber[j]=D,this._numberToString[D]=j}}encode(S){return this._stringToNumber[S]}decode(S){if(S>=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${S} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[S]}}class hS{constructor(S,D,j,te,ue){this.type="Feature",this._vectorTileFeature=S,S._z=D,S._x=j,S._y=te,this.properties=S.properties,this.id=ue}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(S){this._geometry=S}toJSON(){let S={geometry:this.geometry};for(let D in this)D!=="_geometry"&&D!=="_vectorTileFeature"&&(S[D]=this[D]);return S}}class cy{constructor(S,D){this.tileID=S,this.x=S.canonical.x,this.y=S.canonical.y,this.z=S.canonical.z,this.grid=new qi(za,16,0),this.grid3D=new qi(za,16,0),this.featureIndexArray=new As,this.promoteId=D}insert(S,D,j,te,ue,ve){let De=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(j,te,ue);let Ze=ve?this.grid3D:this.grid;for(let at=0;at<D.length;at++){let Tt=D[at],Ft=[1/0,1/0,-1/0,-1/0];for(let Qt=0;Qt<Tt.length;Qt++){let sr=Tt[Qt];Ft[0]=Math.min(Ft[0],sr.x),Ft[1]=Math.min(Ft[1],sr.y),Ft[2]=Math.max(Ft[2],sr.x),Ft[3]=Math.max(Ft[3],sr.y)}Ft[0]<za&&Ft[1]<za&&Ft[2]>=0&&Ft[3]>=0&&Ze.insert(De,Ft[0],Ft[1],Ft[2],Ft[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new ei.VectorTile(new eS(this.rawTileData)).layers,this.sourceLayerCoder=new SC(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(S,D,j,te){this.loadVTLayers();let ue=S.params||{},ve=za/S.tileSize/S.scale,De=Pc(ue.filter),Ze=S.queryGeometry,at=S.queryPadding*ve,Tt=EC(Ze),Ft=this.grid.query(Tt.minX-at,Tt.minY-at,Tt.maxX+at,Tt.maxY+at),Qt=EC(S.cameraQueryGeometry),sr=this.grid3D.query(Qt.minX-at,Qt.minY-at,Qt.maxX+at,Qt.maxY+at,($r,ni,Di,pi)=>function(ki,Zi,ta,Va,Io){for(let Hn of ki)if(Zi<=Hn.x&&ta<=Hn.y&&Va>=Hn.x&&Io>=Hn.y)return!0;let La=[new u(Zi,ta),new u(Zi,Io),new u(Va,Io),new u(Va,ta)];if(ki.length>2){for(let Hn of La)if(On(ki,Hn))return!0}for(let Hn=0;Hn<ki.length-1;Hn++)if(Bn(ki[Hn],ki[Hn+1],La))return!0;return!1}(S.cameraQueryGeometry,$r-at,ni-at,Di+at,pi+at));for(let $r of sr)Ft.push($r);Ft.sort(j9);let Tr={},Pr;for(let $r=0;$r<Ft.length;$r++){let ni=Ft[$r];if(ni===Pr)continue;Pr=ni;let Di=this.featureIndexArray.get(ni),pi=null;this.loadMatchingFeature(Tr,Di.bucketIndex,Di.sourceLayerIndex,Di.featureIndex,De,ue.layers,ue.availableImages,D,j,te,(ki,Zi,ta)=>(pi||(pi=js(ki)),Zi.queryIntersectsFeature(Ze,ki,ta,pi,this.z,S.transform,ve,S.pixelPosMatrix)))}return Tr}loadMatchingFeature(S,D,j,te,ue,ve,De,Ze,at,Tt,Ft){let Qt=this.bucketLayerIDs[D];if(ve&&!function($r,ni){for(let Di=0;Di<$r.length;Di++)if(ni.indexOf($r[Di])>=0)return!0;return!1}(ve,Qt))return;let sr=this.sourceLayerCoder.decode(j),Tr=this.vtLayers[sr].feature(te);if(ue.needGeometry){let $r=xl(Tr,!0);if(!ue.filter(new Ko(this.tileID.overscaledZ),$r,this.tileID.canonical))return}else if(!ue.filter(new Ko(this.tileID.overscaledZ),Tr))return;let Pr=this.getId(Tr,sr);for(let $r=0;$r<Qt.length;$r++){let ni=Qt[$r];if(ve&&ve.indexOf(ni)<0)continue;let Di=Ze[ni];if(!Di)continue;let pi={};Pr&&Tt&&(pi=Tt.getState(Di.sourceLayer||"_geojsonTileLayer",Pr));let ki=L({},at[ni]);ki.paint=MC(ki.paint,Di.paint,Tr,pi,De),ki.layout=MC(ki.layout,Di.layout,Tr,pi,De);let Zi=!Ft||Ft(Tr,Di,pi);if(!Zi)continue;let ta=new hS(Tr,this.z,this.x,this.y,Pr);ta.layer=ki;let Va=S[ni];Va===void 0&&(Va=S[ni]=[]),Va.push({featureIndex:te,feature:ta,intersectionZ:Zi})}}lookupSymbolFeatures(S,D,j,te,ue,ve,De,Ze){let at={};this.loadVTLayers();let Tt=Pc(ue);for(let Ft of S)this.loadMatchingFeature(at,j,te,Ft,Tt,ve,De,Ze,D);return at}hasLayer(S){for(let D of this.bucketLayerIDs)for(let j of D)if(S===j)return!0;return!1}getId(S,D){let j=S.id;return this.promoteId&&(j=S.properties[typeof this.promoteId=="string"?this.promoteId:this.promoteId[D]],typeof j=="boolean"&&(j=Number(j))),j}}function MC(R,S,D,j,te){return C(R,(ue,ve)=>{let De=S instanceof Dc?S.get(ve):null;return De&&De.evaluate?De.evaluate(D,j,te):De})}function EC(R){let S=1/0,D=1/0,j=-1/0,te=-1/0;for(let ue of R)S=Math.min(S,ue.x),D=Math.min(D,ue.y),j=Math.max(j,ue.x),te=Math.max(te,ue.y);return{minX:S,minY:D,maxX:j,maxY:te}}function j9(R,S){return S-R}function kC(R,S,D,j,te){let ue=[];for(let ve=0;ve<R.length;ve++){let De=R[ve],Ze;for(let at=0;at<De.length-1;at++){let Tt=De[at],Ft=De[at+1];Tt.x<S&&Ft.x<S||(Tt.x<S?Tt=new u(S,Tt.y+(S-Tt.x)/(Ft.x-Tt.x)*(Ft.y-Tt.y))._round():Ft.x<S&&(Ft=new u(S,Tt.y+(S-Tt.x)/(Ft.x-Tt.x)*(Ft.y-Tt.y))._round()),Tt.y<D&&Ft.y<D||(Tt.y<D?Tt=new u(Tt.x+(D-Tt.y)/(Ft.y-Tt.y)*(Ft.x-Tt.x),D)._round():Ft.y<D&&(Ft=new u(Tt.x+(D-Tt.y)/(Ft.y-Tt.y)*(Ft.x-Tt.x),D)._round()),Tt.x>=j&&Ft.x>=j||(Tt.x>=j?Tt=new u(j,Tt.y+(j-Tt.x)/(Ft.x-Tt.x)*(Ft.y-Tt.y))._round():Ft.x>=j&&(Ft=new u(j,Tt.y+(j-Tt.x)/(Ft.x-Tt.x)*(Ft.y-Tt.y))._round()),Tt.y>=te&&Ft.y>=te||(Tt.y>=te?Tt=new u(Tt.x+(te-Tt.y)/(Ft.y-Tt.y)*(Ft.x-Tt.x),te)._round():Ft.y>=te&&(Ft=new u(Tt.x+(te-Tt.y)/(Ft.y-Tt.y)*(Ft.x-Tt.x),te)._round()),Ze&&Tt.equals(Ze[Ze.length-1])||(Ze=[Tt],ue.push(Ze)),Ze.push(Ft)))))}}return ue}mi("FeatureIndex",cy,{omit:["rawTileData","sourceLayerCoder"]});class vg extends u{constructor(S,D,j,te){super(S,D),this.angle=j,te!==void 0&&(this.segment=te)}clone(){return new vg(this.x,this.y,this.angle,this.segment)}}function dS(R,S,D,j,te){if(S.segment===void 0||D===0)return!0;let ue=S,ve=S.segment+1,De=0;for(;De>-D/2;){if(ve--,ve<0)return!1;De-=R[ve].dist(ue),ue=R[ve]}De+=R[ve].dist(R[ve+1]),ve++;let Ze=[],at=0;for(;De<D/2;){let Tt=R[ve],Ft=R[ve+1];if(!Ft)return!1;let Qt=R[ve-1].angleTo(Tt)-Tt.angleTo(Ft);for(Qt=Math.abs((Qt+3*Math.PI)%(2*Math.PI)-Math.PI),Ze.push({distance:De,angleDelta:Qt}),at+=Qt;De-Ze[0].distance>j;)at-=Ze.shift().angleDelta;if(at>te)return!1;ve++,De+=Tt.dist(Ft)}return!0}function CC(R){let S=0;for(let D=0;D<R.length-1;D++)S+=R[D].dist(R[D+1]);return S}function LC(R,S,D){return R?.6*S*D:0}function PC(R,S){return Math.max(R?R.right-R.left:0,S?S.right-S.left:0)}function W9(R,S,D,j,te,ue){let ve=LC(D,te,ue),De=PC(D,j)*ue,Ze=0,at=CC(R)/2;for(let Tt=0;Tt<R.length-1;Tt++){let Ft=R[Tt],Qt=R[Tt+1],sr=Ft.dist(Qt);if(Ze+sr>at){let Tr=(at-Ze)/sr,Pr=Mo.number(Ft.x,Qt.x,Tr),$r=Mo.number(Ft.y,Qt.y,Tr),ni=new vg(Pr,$r,Qt.angleTo(Ft),Tt);return ni._round(),!ve||dS(R,ni,De,ve,S)?ni:void 0}Ze+=sr}}function Z9(R,S,D,j,te,ue,ve,De,Ze){let at=LC(j,ue,ve),Tt=PC(j,te),Ft=Tt*ve,Qt=R[0].x===0||R[0].x===Ze||R[0].y===0||R[0].y===Ze;return S-Ft<S/4&&(S=Ft+S/4),IC(R,Qt?S/2*De%S:(Tt/2+2*ue)*ve*De%S,S,at,D,Ft,Qt,!1,Ze)}function IC(R,S,D,j,te,ue,ve,De,Ze){let at=ue/2,Tt=CC(R),Ft=0,Qt=S-D,sr=[];for(let Tr=0;Tr<R.length-1;Tr++){let Pr=R[Tr],$r=R[Tr+1],ni=Pr.dist($r),Di=$r.angleTo(Pr);for(;Qt+D<Ft+ni;){Qt+=D;let pi=(Qt-Ft)/ni,ki=Mo.number(Pr.x,$r.x,pi),Zi=Mo.number(Pr.y,$r.y,pi);if(ki>=0&&ki<Ze&&Zi>=0&&Zi<Ze&&Qt-at>=0&&Qt+at<=Tt){let ta=new vg(ki,Zi,Di,Tr);ta._round(),j&&!dS(R,ta,ue,j,te)||sr.push(ta)}}Ft+=ni}return De||sr.length||ve||(sr=IC(R,Ft/2,D,j,te,ue,ve,!0,Ze)),sr}mi("Anchor",vg);let C1=wd;function RC(R,S,D,j){let te=[],ue=R.image,ve=ue.pixelRatio,De=ue.paddedRect.w-2*C1,Ze=ue.paddedRect.h-2*C1,at={x1:R.left,y1:R.top,x2:R.right,y2:R.bottom},Tt=ue.stretchX||[[0,De]],Ft=ue.stretchY||[[0,Ze]],Qt=(Tn,bo)=>Tn+bo[1]-bo[0],sr=Tt.reduce(Qt,0),Tr=Ft.reduce(Qt,0),Pr=De-sr,$r=Ze-Tr,ni=0,Di=sr,pi=0,ki=Tr,Zi=0,ta=Pr,Va=0,Io=$r;if(ue.content&&j){let Tn=ue.content,bo=Tn[2]-Tn[0],Ya=Tn[3]-Tn[1];(ue.textFitWidth||ue.textFitHeight)&&(at=gC(R)),ni=pg(Tt,0,Tn[0]),pi=pg(Ft,0,Tn[1]),Di=pg(Tt,Tn[0],Tn[2]),ki=pg(Ft,Tn[1],Tn[3]),Zi=Tn[0]-ni,Va=Tn[1]-pi,ta=bo-Di,Io=Ya-ki}let La=at.x1,Hn=at.y1,lo=at.x2-La,$a=at.y2-Hn,Xa=(Tn,bo,Ya,Uo)=>{let wu=qw(Tn.stretch-ni,Di,lo,La),hu=L1(Tn.fixed-Zi,ta,Tn.stretch,sr),uh=qw(bo.stretch-pi,ki,$a,Hn),$v=L1(bo.fixed-Va,Io,bo.stretch,Tr),td=qw(Ya.stretch-ni,Di,lo,La),ch=L1(Ya.fixed-Zi,ta,Ya.stretch,sr),Ud=qw(Uo.stretch-pi,ki,$a,Hn),Vd=L1(Uo.fixed-Va,Io,Uo.stretch,Tr),Hd=new u(wu,uh),rf=new u(td,uh),fh=new u(td,Ud),Td=new u(wu,Ud),rd=new u(hu/ve,$v/ve),Dh=new u(ch/ve,Vd/ve),xf=S*Math.PI/180;if(xf){let Cl=Math.sin(xf),qu=Math.cos(xf),Tu=[qu,-Cl,Cl,qu];Hd._matMult(Tu),rf._matMult(Tu),Td._matMult(Tu),fh._matMult(Tu)}let Iv=Tn.stretch+Tn.fixed,lv=bo.stretch+bo.fixed;return{tl:Hd,tr:rf,bl:Td,br:fh,tex:{x:ue.paddedRect.x+C1+Iv,y:ue.paddedRect.y+C1+lv,w:Ya.stretch+Ya.fixed-Iv,h:Uo.stretch+Uo.fixed-lv},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:rd,pixelOffsetBR:Dh,minFontScaleX:ta/ve/lo,minFontScaleY:Io/ve/$a,isSDF:D}};if(j&&(ue.stretchX||ue.stretchY)){let Tn=DC(Tt,Pr,sr),bo=DC(Ft,$r,Tr);for(let Ya=0;Ya<Tn.length-1;Ya++){let Uo=Tn[Ya],wu=Tn[Ya+1];for(let hu=0;hu<bo.length-1;hu++)te.push(Xa(Uo,bo[hu],wu,bo[hu+1]))}}else te.push(Xa({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:De+1},{fixed:0,stretch:Ze+1}));return te}function pg(R,S,D){let j=0;for(let te of R)j+=Math.max(S,Math.min(D,te[1]))-Math.max(S,Math.min(D,te[0]));return j}function DC(R,S,D){let j=[{fixed:-C1,stretch:0}];for(let[te,ue]of R){let ve=j[j.length-1];j.push({fixed:te-ve.stretch,stretch:ve.stretch}),j.push({fixed:te-ve.stretch,stretch:ve.stretch+(ue-te)})}return j.push({fixed:S+C1,stretch:D}),j}function qw(R,S,D,j){return R/S*D+j}function L1(R,S,D,j){return R-S*D/j}class cm{constructor(S,D,j,te,ue,ve,De,Ze,at,Tt){var Ft;if(this.boxStartIndex=S.length,at){let Qt=ve.top,sr=ve.bottom,Tr=ve.collisionPadding;Tr&&(Qt-=Tr[1],sr+=Tr[3]);let Pr=sr-Qt;Pr>0&&(Pr=Math.max(10,Pr),this.circleDiameter=Pr)}else{let Qt=!((Ft=ve.image)===null||Ft===void 0)&&Ft.content&&(ve.image.textFitWidth||ve.image.textFitHeight)?gC(ve):{x1:ve.left,y1:ve.top,x2:ve.right,y2:ve.bottom};Qt.y1=Qt.y1*De-Ze[0],Qt.y2=Qt.y2*De+Ze[2],Qt.x1=Qt.x1*De-Ze[3],Qt.x2=Qt.x2*De+Ze[1];let sr=ve.collisionPadding;if(sr&&(Qt.x1-=sr[0]*De,Qt.y1-=sr[1]*De,Qt.x2+=sr[2]*De,Qt.y2+=sr[3]*De),Tt){let Tr=new u(Qt.x1,Qt.y1),Pr=new u(Qt.x2,Qt.y1),$r=new u(Qt.x1,Qt.y2),ni=new u(Qt.x2,Qt.y2),Di=Tt*Math.PI/180;Tr._rotate(Di),Pr._rotate(Di),$r._rotate(Di),ni._rotate(Di),Qt.x1=Math.min(Tr.x,Pr.x,$r.x,ni.x),Qt.x2=Math.max(Tr.x,Pr.x,$r.x,ni.x),Qt.y1=Math.min(Tr.y,Pr.y,$r.y,ni.y),Qt.y2=Math.max(Tr.y,Pr.y,$r.y,ni.y)}S.emplaceBack(D.x,D.y,Qt.x1,Qt.y1,Qt.x2,Qt.y2,j,te,ue)}this.boxEndIndex=S.length}}class Hp{constructor(S=[],D=(j,te)=>j<te?-1:j>te?1:0){if(this.data=S,this.length=this.data.length,this.compare=D,this.length>0)for(let j=(this.length>>1)-1;j>=0;j--)this._down(j)}push(S){this.data.push(S),this._up(this.length++)}pop(){if(this.length===0)return;let S=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),S}peek(){return this.data[0]}_up(S){let{data:D,compare:j}=this,te=D[S];for(;S>0;){let ue=S-1>>1,ve=D[ue];if(j(te,ve)>=0)break;D[S]=ve,S=ue}D[S]=te}_down(S){let{data:D,compare:j}=this,te=this.length>>1,ue=D[S];for(;S<te;){let ve=1+(S<<1),De=ve+1;if(De<this.length&&j(D[De],D[ve])<0&&(ve=De),j(D[ve],ue)>=0)break;D[S]=D[ve],S=ve}D[S]=ue}}function X9(R,S=1,D=!1){let j=1/0,te=1/0,ue=-1/0,ve=-1/0,De=R[0];for(let sr=0;sr<De.length;sr++){let Tr=De[sr];(!sr||Tr.x<j)&&(j=Tr.x),(!sr||Tr.y<te)&&(te=Tr.y),(!sr||Tr.x>ue)&&(ue=Tr.x),(!sr||Tr.y>ve)&&(ve=Tr.y)}let Ze=Math.min(ue-j,ve-te),at=Ze/2,Tt=new Hp([],Y9);if(Ze===0)return new u(j,te);for(let sr=j;sr<ue;sr+=Ze)for(let Tr=te;Tr<ve;Tr+=Ze)Tt.push(new P1(sr+at,Tr+at,at,R));let Ft=function(sr){let Tr=0,Pr=0,$r=0,ni=sr[0];for(let Di=0,pi=ni.length,ki=pi-1;Di<pi;ki=Di++){let Zi=ni[Di],ta=ni[ki],Va=Zi.x*ta.y-ta.x*Zi.y;Pr+=(Zi.x+ta.x)*Va,$r+=(Zi.y+ta.y)*Va,Tr+=3*Va}return new P1(Pr/Tr,$r/Tr,0,sr)}(R),Qt=Tt.length;for(;Tt.length;){let sr=Tt.pop();(sr.d>Ft.d||!Ft.d)&&(Ft=sr,D&&console.log("found best %d after %d probes",Math.round(1e4*sr.d)/1e4,Qt)),sr.max-Ft.d<=S||(at=sr.h/2,Tt.push(new P1(sr.p.x-at,sr.p.y-at,at,R)),Tt.push(new P1(sr.p.x+at,sr.p.y-at,at,R)),Tt.push(new P1(sr.p.x-at,sr.p.y+at,at,R)),Tt.push(new P1(sr.p.x+at,sr.p.y+at,at,R)),Qt+=4)}return D&&(console.log(`num probes: ${Qt}`),console.log(`best distance: ${Ft.d}`)),Ft.p}function Y9(R,S){return S.max-R.max}function P1(R,S,D,j){this.p=new u(R,S),this.h=D,this.d=function(te,ue){let ve=!1,De=1/0;for(let Ze=0;Ze<ue.length;Ze++){let at=ue[Ze];for(let Tt=0,Ft=at.length,Qt=Ft-1;Tt<Ft;Qt=Tt++){let sr=at[Tt],Tr=at[Qt];sr.y>te.y!=Tr.y>te.y&&te.x<(Tr.x-sr.x)*(te.y-sr.y)/(Tr.y-sr.y)+sr.x&&(ve=!ve),De=Math.min(De,Bi(te,sr,Tr))}}return(ve?1:-1)*Math.sqrt(De)}(this.p,j),this.max=this.d+this.h*Math.SQRT2}var ed;i.aq=void 0,(ed=i.aq||(i.aq={}))[ed.center=1]="center",ed[ed.left=2]="left",ed[ed.right=3]="right",ed[ed.top=4]="top",ed[ed.bottom=5]="bottom",ed[ed["top-left"]=6]="top-left",ed[ed["top-right"]=7]="top-right",ed[ed["bottom-left"]=8]="bottom-left",ed[ed["bottom-right"]=9]="bottom-right";let fm=7,fy=Number.POSITIVE_INFINITY;function vS(R,S){return S[1]!==fy?function(D,j,te){let ue=0,ve=0;switch(j=Math.abs(j),te=Math.abs(te),D){case"top-right":case"top-left":case"top":ve=te-fm;break;case"bottom-right":case"bottom-left":case"bottom":ve=-te+fm}switch(D){case"top-right":case"bottom-right":case"right":ue=-j;break;case"top-left":case"bottom-left":case"left":ue=j}return[ue,ve]}(R,S[0],S[1]):function(D,j){let te=0,ue=0;j<0&&(j=0);let ve=j/Math.SQRT2;switch(D){case"top-right":case"top-left":ue=ve-fm;break;case"bottom-right":case"bottom-left":ue=-ve+fm;break;case"bottom":ue=-j+fm;break;case"top":ue=j-fm}switch(D){case"top-right":case"bottom-right":te=-ve;break;case"top-left":case"bottom-left":te=ve;break;case"left":te=j;break;case"right":te=-j}return[te,ue]}(R,S[0])}function zC(R,S,D){var j;let te=R.layout,ue=(j=te.get("text-variable-anchor-offset"))===null||j===void 0?void 0:j.evaluate(S,{},D);if(ue){let De=ue.values,Ze=[];for(let at=0;at<De.length;at+=2){let Tt=Ze[at]=De[at],Ft=De[at+1].map(Qt=>Qt*kl);Tt.startsWith("top")?Ft[1]-=fm:Tt.startsWith("bottom")&&(Ft[1]+=fm),Ze[at+1]=Ft}return new Si(Ze)}let ve=te.get("text-variable-anchor");if(ve){let De;De=R._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[te.get("text-radial-offset").evaluate(S,{},D)*kl,fy]:te.get("text-offset").evaluate(S,{},D).map(at=>at*kl);let Ze=[];for(let at of ve)Ze.push(at,vS(at,De));return new Si(Ze)}return null}function pS(R){switch(R){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function K9(R,S,D,j,te,ue,ve,De,Ze,at,Tt){let Ft=ue.textMaxSize.evaluate(S,{});Ft===void 0&&(Ft=ve);let Qt=R.layers[0].layout,sr=Qt.get("icon-offset").evaluate(S,{},Tt),Tr=qC(D.horizontal),Pr=ve/24,$r=R.tilePixelRatio*Pr,ni=R.tilePixelRatio*Ft/24,Di=R.tilePixelRatio*De,pi=R.tilePixelRatio*Qt.get("symbol-spacing"),ki=Qt.get("text-padding")*R.tilePixelRatio,Zi=function(Tn,bo,Ya,Uo=1){let wu=Tn.get("icon-padding").evaluate(bo,{},Ya),hu=wu&&wu.values;return[hu[0]*Uo,hu[1]*Uo,hu[2]*Uo,hu[3]*Uo]}(Qt,S,Tt,R.tilePixelRatio),ta=Qt.get("text-max-angle")/180*Math.PI,Va=Qt.get("text-rotation-alignment")!=="viewport"&&Qt.get("symbol-placement")!=="point",Io=Qt.get("icon-rotation-alignment")==="map"&&Qt.get("symbol-placement")!=="point",La=Qt.get("symbol-placement"),Hn=pi/2,lo=Qt.get("icon-text-fit"),$a;j&&lo!=="none"&&(R.allowVerticalPlacement&&D.vertical&&($a=mC(j,D.vertical,lo,Qt.get("icon-text-fit-padding"),sr,Pr)),Tr&&(j=mC(j,Tr,lo,Qt.get("icon-text-fit-padding"),sr,Pr)));let Xa=(Tn,bo)=>{bo.x<0||bo.x>=za||bo.y<0||bo.y>=za||function(Ya,Uo,wu,hu,uh,$v,td,ch,Ud,Vd,Hd,rf,fh,Td,rd,Dh,xf,Iv,lv,Cl,qu,Tu,Rv,qc,I1){let p0=Ya.addToLineVertexArray(Uo,wu),Gp,Qv,oc,If,ep=0,gg=0,uv=0,R1=0,xS=-1,Uw=-1,g0={},hy=ui("");if(Ya.allowVerticalPlacement&&hu.vertical){let Ad=ch.layout.get("text-rotate").evaluate(qu,{},qc)+90;oc=new cm(Ud,Uo,Vd,Hd,rf,hu.vertical,fh,Td,rd,Ad),td&&(If=new cm(Ud,Uo,Vd,Hd,rf,td,xf,Iv,rd,Ad))}if(uh){let Ad=ch.layout.get("icon-rotate").evaluate(qu,{}),tp=ch.layout.get("icon-text-fit")!=="none",hm=RC(uh,Ad,Rv,tp),Gd=td?RC(td,Ad,Rv,tp):void 0;Qv=new cm(Ud,Uo,Vd,Hd,rf,uh,xf,Iv,!1,Ad),ep=4*hm.length;let Sd=Ya.iconSizeData,yp=null;Sd.kind==="source"?(yp=[v0*ch.layout.get("icon-size").evaluate(qu,{})],yp[0]>lm&&T(`${Ya.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)):Sd.kind==="composite"&&(yp=[v0*Tu.compositeIconSizes[0].evaluate(qu,{},qc),v0*Tu.compositeIconSizes[1].evaluate(qu,{},qc)],(yp[0]>lm||yp[1]>lm)&&T(`${Ya.layerIds[0]}: Value for "icon-size" is >= ${Wx}. Reduce your "icon-size".`)),Ya.addSymbols(Ya.icon,hm,yp,Cl,lv,qu,i.ah.none,Uo,p0.lineStartIndex,p0.lineLength,-1,qc),xS=Ya.icon.placedSymbolArray.length-1,Gd&&(gg=4*Gd.length,Ya.addSymbols(Ya.icon,Gd,yp,Cl,lv,qu,i.ah.vertical,Uo,p0.lineStartIndex,p0.lineLength,-1,qc),Uw=Ya.icon.placedSymbolArray.length-1)}let zh=Object.keys(hu.horizontal);for(let Ad of zh){let tp=hu.horizontal[Ad];if(!Gp){hy=ui(tp.text);let Gd=ch.layout.get("text-rotate").evaluate(qu,{},qc);Gp=new cm(Ud,Uo,Vd,Hd,rf,tp,fh,Td,rd,Gd)}let hm=tp.positionedLines.length===1;if(uv+=FC(Ya,Uo,tp,$v,ch,rd,qu,Dh,p0,hu.vertical?i.ah.horizontal:i.ah.horizontalOnly,hm?zh:[Ad],g0,xS,Tu,qc),hm)break}hu.vertical&&(R1+=FC(Ya,Uo,hu.vertical,$v,ch,rd,qu,Dh,p0,i.ah.vertical,["vertical"],g0,Uw,Tu,qc));let Q9=Gp?Gp.boxStartIndex:Ya.collisionBoxArray.length,Vw=Gp?Gp.boxEndIndex:Ya.collisionBoxArray.length,m0=oc?oc.boxStartIndex:Ya.collisionBoxArray.length,cv=oc?oc.boxEndIndex:Ya.collisionBoxArray.length,UC=Qv?Qv.boxStartIndex:Ya.collisionBoxArray.length,eq=Qv?Qv.boxEndIndex:Ya.collisionBoxArray.length,VC=If?If.boxStartIndex:Ya.collisionBoxArray.length,tq=If?If.boxEndIndex:Ya.collisionBoxArray.length,mp=-1,rb=(Ad,tp)=>Ad&&Ad.circleDiameter?Math.max(Ad.circleDiameter,tp):tp;mp=rb(Gp,mp),mp=rb(oc,mp),mp=rb(Qv,mp),mp=rb(If,mp);let Hw=mp>-1?1:0;Hw&&(mp*=I1/kl),Ya.glyphOffsetArray.length>=E1.MAX_GLYPHS&&T("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),qu.sortKey!==void 0&&Ya.addToSortKeyRanges(Ya.symbolInstances.length,qu.sortKey);let bS=zC(ch,qu,qc),[rq,iq]=function(Ad,tp){let hm=Ad.length,Gd=tp==null?void 0:tp.values;if((Gd==null?void 0:Gd.length)>0)for(let Sd=0;Sd<Gd.length;Sd+=2){let yp=Gd[Sd+1];Ad.emplaceBack(i.aq[Gd[Sd]],yp[0],yp[1])}return[hm,Ad.length]}(Ya.textAnchorOffsets,bS);Ya.symbolInstances.emplaceBack(Uo.x,Uo.y,g0.right>=0?g0.right:-1,g0.center>=0?g0.center:-1,g0.left>=0?g0.left:-1,g0.vertical||-1,xS,Uw,hy,Q9,Vw,m0,cv,UC,eq,VC,tq,Vd,uv,R1,ep,gg,Hw,0,fh,mp,rq,iq)}(R,bo,Tn,D,j,te,$a,R.layers[0],R.collisionBoxArray,S.index,S.sourceLayerIndex,R.index,$r,[ki,ki,ki,ki],Va,Ze,Di,Zi,Io,sr,S,ue,at,Tt,ve)};if(La==="line")for(let Tn of kC(S.geometry,0,0,za,za)){let bo=Z9(Tn,pi,ta,D.vertical||Tr,j,24,ni,R.overscaling,za);for(let Ya of bo)Tr&&J9(R,Tr.text,Hn,Ya)||Xa(Tn,Ya)}else if(La==="line-center"){for(let Tn of S.geometry)if(Tn.length>1){let bo=W9(Tn,ta,D.vertical||Tr,j,24,ni);bo&&Xa(Tn,bo)}}else if(S.type==="Polygon")for(let Tn of Of(S.geometry,0)){let bo=X9(Tn,16);Xa(Tn[0],new vg(bo.x,bo.y,0))}else if(S.type==="LineString")for(let Tn of S.geometry)Xa(Tn,new vg(Tn[0].x,Tn[0].y,0));else if(S.type==="Point")for(let Tn of S.geometry)for(let bo of Tn)Xa([bo],new vg(bo.x,bo.y,0))}function FC(R,S,D,j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr){let Pr=function(Di,pi,ki,Zi,ta,Va,Io,La){let Hn=Zi.layout.get("text-rotate").evaluate(Va,{})*Math.PI/180,lo=[];for(let $a of pi.positionedLines)for(let Xa of $a.positionedGlyphs){if(!Xa.rect)continue;let Tn=Xa.rect||{},bo=hC+1,Ya=!0,Uo=1,wu=0,hu=(ta||La)&&Xa.vertical,uh=Xa.metrics.advance*Xa.scale/2;if(La&&pi.verticalizable&&(wu=$a.lineOffset/2-(Xa.imageName?-(kl-Xa.metrics.width*Xa.scale)/2:(Xa.scale-1)*kl)),Xa.imageName){let Cl=Io[Xa.imageName];Ya=Cl.sdf,Uo=Cl.pixelRatio,bo=wd/Uo}let $v=ta?[Xa.x+uh,Xa.y]:[0,0],td=ta?[0,0]:[Xa.x+uh+ki[0],Xa.y+ki[1]-wu],ch=[0,0];hu&&(ch=td,td=[0,0]);let Ud=Xa.metrics.isDoubleResolution?2:1,Vd=(Xa.metrics.left-bo)*Xa.scale-uh+td[0],Hd=(-Xa.metrics.top-bo)*Xa.scale+td[1],rf=Vd+Tn.w/Ud*Xa.scale/Uo,fh=Hd+Tn.h/Ud*Xa.scale/Uo,Td=new u(Vd,Hd),rd=new u(rf,Hd),Dh=new u(Vd,fh),xf=new u(rf,fh);if(hu){let Cl=new u(-uh,uh-lh),qu=-Math.PI/2,Tu=kl/2-uh,Rv=new u(5-lh-Tu,-(Xa.imageName?Tu:0)),qc=new u(...ch);Td._rotateAround(qu,Cl)._add(Rv)._add(qc),rd._rotateAround(qu,Cl)._add(Rv)._add(qc),Dh._rotateAround(qu,Cl)._add(Rv)._add(qc),xf._rotateAround(qu,Cl)._add(Rv)._add(qc)}if(Hn){let Cl=Math.sin(Hn),qu=Math.cos(Hn),Tu=[qu,-Cl,Cl,qu];Td._matMult(Tu),rd._matMult(Tu),Dh._matMult(Tu),xf._matMult(Tu)}let Iv=new u(0,0),lv=new u(0,0);lo.push({tl:Td,tr:rd,bl:Dh,br:xf,tex:Tn,writingMode:pi.writingMode,glyphOffset:$v,sectionIndex:Xa.sectionIndex,isSDF:Ya,pixelOffsetTL:Iv,pixelOffsetBR:lv,minFontScaleX:0,minFontScaleY:0})}return lo}(0,D,De,te,ue,ve,j,R.allowVerticalPlacement),$r=R.textSizeData,ni=null;$r.kind==="source"?(ni=[v0*te.layout.get("text-size").evaluate(ve,{})],ni[0]>lm&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)):$r.kind==="composite"&&(ni=[v0*sr.compositeTextSizes[0].evaluate(ve,{},Tr),v0*sr.compositeTextSizes[1].evaluate(ve,{},Tr)],(ni[0]>lm||ni[1]>lm)&&T(`${R.layerIds[0]}: Value for "text-size" is >= ${Wx}. Reduce your "text-size".`)),R.addSymbols(R.text,Pr,ni,De,ue,ve,at,S,Ze.lineStartIndex,Ze.lineLength,Qt,Tr);for(let Di of Tt)Ft[Di]=R.text.placedSymbolArray.length-1;return 4*Pr.length}function qC(R){for(let S in R)return R[S];return null}function J9(R,S,D,j){let te=R.compareText;if(S in te){let ue=te[S];for(let ve=ue.length-1;ve>=0;ve--)if(j.dist(ue[ve])<D)return!0}else te[S]=[];return te[S].push(j),!1}let OC=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class gS{static from(S){if(!(S instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[D,j]=new Uint8Array(S,0,2);if(D!==219)throw new Error("Data does not appear to be in a KDBush format.");let te=j>>4;if(te!==1)throw new Error(`Got v${te} data when expected v1.`);let ue=OC[15&j];if(!ue)throw new Error("Unrecognized array type.");let[ve]=new Uint16Array(S,2,1),[De]=new Uint32Array(S,4,1);return new gS(De,ve,ue,S)}constructor(S,D=64,j=Float64Array,te){if(isNaN(S)||S<0)throw new Error(`Unpexpected numItems value: ${S}.`);this.numItems=+S,this.nodeSize=Math.min(Math.max(+D,2),65535),this.ArrayType=j,this.IndexArrayType=S<65536?Uint16Array:Uint32Array;let ue=OC.indexOf(this.ArrayType),ve=2*S*this.ArrayType.BYTES_PER_ELEMENT,De=S*this.IndexArrayType.BYTES_PER_ELEMENT,Ze=(8-De%8)%8;if(ue<0)throw new Error(`Unexpected typed array class: ${j}.`);te&&te instanceof ArrayBuffer?(this.data=te,this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+De+Ze,2*S),this._pos=2*S,this._finished=!0):(this.data=new ArrayBuffer(8+ve+De+Ze),this.ids=new this.IndexArrayType(this.data,8,S),this.coords=new this.ArrayType(this.data,8+De+Ze,2*S),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+ue]),new Uint16Array(this.data,2,1)[0]=D,new Uint32Array(this.data,4,1)[0]=S)}add(S,D){let j=this._pos>>1;return this.ids[j]=j,this.coords[this._pos++]=S,this.coords[this._pos++]=D,j}finish(){let S=this._pos>>1;if(S!==this.numItems)throw new Error(`Added ${S} items when expected ${this.numItems}.`);return Ow(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(S,D,j,te){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:ue,coords:ve,nodeSize:De}=this,Ze=[0,ue.length-1,0],at=[];for(;Ze.length;){let Tt=Ze.pop()||0,Ft=Ze.pop()||0,Qt=Ze.pop()||0;if(Ft-Qt<=De){for(let $r=Qt;$r<=Ft;$r++){let ni=ve[2*$r],Di=ve[2*$r+1];ni>=S&&ni<=j&&Di>=D&&Di<=te&&at.push(ue[$r])}continue}let sr=Qt+Ft>>1,Tr=ve[2*sr],Pr=ve[2*sr+1];Tr>=S&&Tr<=j&&Pr>=D&&Pr<=te&&at.push(ue[sr]),(Tt===0?S<=Tr:D<=Pr)&&(Ze.push(Qt),Ze.push(sr-1),Ze.push(1-Tt)),(Tt===0?j>=Tr:te>=Pr)&&(Ze.push(sr+1),Ze.push(Ft),Ze.push(1-Tt))}return at}within(S,D,j){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:te,coords:ue,nodeSize:ve}=this,De=[0,te.length-1,0],Ze=[],at=j*j;for(;De.length;){let Tt=De.pop()||0,Ft=De.pop()||0,Qt=De.pop()||0;if(Ft-Qt<=ve){for(let $r=Qt;$r<=Ft;$r++)NC(ue[2*$r],ue[2*$r+1],S,D)<=at&&Ze.push(te[$r]);continue}let sr=Qt+Ft>>1,Tr=ue[2*sr],Pr=ue[2*sr+1];NC(Tr,Pr,S,D)<=at&&Ze.push(te[sr]),(Tt===0?S-j<=Tr:D-j<=Pr)&&(De.push(Qt),De.push(sr-1),De.push(1-Tt)),(Tt===0?S+j>=Tr:D+j>=Pr)&&(De.push(sr+1),De.push(Ft),De.push(1-Tt))}return Ze}}function Ow(R,S,D,j,te,ue){if(te-j<=D)return;let ve=j+te>>1;BC(R,S,ve,j,te,ue),Ow(R,S,D,j,ve-1,1-ue),Ow(R,S,D,ve+1,te,1-ue)}function BC(R,S,D,j,te,ue){for(;te>j;){if(te-j>600){let at=te-j+1,Tt=D-j+1,Ft=Math.log(at),Qt=.5*Math.exp(2*Ft/3),sr=.5*Math.sqrt(Ft*Qt*(at-Qt)/at)*(Tt-at/2<0?-1:1);BC(R,S,D,Math.max(j,Math.floor(D-Tt*Qt/at+sr)),Math.min(te,Math.floor(D+(at-Tt)*Qt/at+sr)),ue)}let ve=S[2*D+ue],De=j,Ze=te;for(eb(R,S,j,D),S[2*te+ue]>ve&&eb(R,S,j,te);De<Ze;){for(eb(R,S,De,Ze),De++,Ze--;S[2*De+ue]<ve;)De++;for(;S[2*Ze+ue]>ve;)Ze--}S[2*j+ue]===ve?eb(R,S,j,Ze):(Ze++,eb(R,S,Ze,te)),Ze<=D&&(j=Ze+1),D<=Ze&&(te=Ze-1)}}function eb(R,S,D,j){mS(R,D,j),mS(S,2*D,2*j),mS(S,2*D+1,2*j+1)}function mS(R,S,D){let j=R[S];R[S]=R[D],R[D]=j}function NC(R,S,D,j){let te=R-D,ue=S-j;return te*te+ue*ue}var Bw;i.bg=void 0,(Bw=i.bg||(i.bg={})).create="create",Bw.load="load",Bw.fullLoad="fullLoad";let tb=null,Gf=[],yS=1e3/60,_S="loadTime",Nw="fullLoadTime",$9={mark(R){performance.mark(R)},frame(R){let S=R;tb!=null&&Gf.push(S-tb),tb=S},clearMetrics(){tb=null,Gf=[],performance.clearMeasures(_S),performance.clearMeasures(Nw);for(let R in i.bg)performance.clearMarks(i.bg[R])},getPerformanceMetrics(){performance.measure(_S,i.bg.create,i.bg.load),performance.measure(Nw,i.bg.create,i.bg.fullLoad);let R=performance.getEntriesByName(_S)[0].duration,S=performance.getEntriesByName(Nw)[0].duration,D=Gf.length,j=1/(Gf.reduce((ue,ve)=>ue+ve,0)/D/1e3),te=Gf.filter(ue=>ue>yS).reduce((ue,ve)=>ue+(ve-yS)/yS,0);return{loadTime:R,fullLoadTime:S,fps:j,percentDroppedFrames:te/(D+te)*100,totalFrames:D}}};i.$=class extends Ot{},i.A=Ln,i.B=Fi,i.C=function(R){if(V==null){let S=R.navigator?R.navigator.userAgent:null;V=!!R.safari||!(!S||!(/\b(iPad|iPhone|iPod)\b/.test(S)||S.match("Safari")&&!S.match("Chrome")))}return V},i.D=Da,i.E=Re,i.F=class{constructor(R,S){this.target=R,this.mapId=S,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new uS(()=>this.process()),this.subscription=function(D,j,te,ue){return D.addEventListener(j,te,!1),{unsubscribe:()=>{D.removeEventListener(j,te,!1)}}}(this.target,"message",D=>this.receive(D)),this.globalScope=q(self)?R:window}registerMessageHandler(R,S){this.messageHandlers[R]=S}sendAsync(R,S){return new Promise((D,j)=>{let te=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[te]={resolve:D,reject:j},S&&S.signal.addEventListener("abort",()=>{delete this.resolveRejects[te];let De={id:te,type:"<cancel>",origin:location.origin,targetMapId:R.targetMapId,sourceMapId:this.mapId};this.target.postMessage(De)},{once:!0});let ue=[],ve=Object.assign(Object.assign({},R),{id:te,sourceMapId:this.mapId,origin:location.origin,data:Ea(R.data,ue)});this.target.postMessage(ve,{transfer:ue})})}receive(R){let S=R.data,D=S.id;if(!(S.origin!=="file://"&&location.origin!=="file://"&&S.origin!=="resource://android"&&location.origin!=="resource://android"&&S.origin!==location.origin||S.targetMapId&&this.mapId!==S.targetMapId)){if(S.type==="<cancel>"){delete this.tasks[D];let j=this.abortControllers[D];return delete this.abortControllers[D],void(j&&j.abort())}if(q(self)||S.mustQueue)return this.tasks[D]=S,this.taskQueue.push(D),void this.invoker.trigger();this.processTask(D,S)}}process(){if(this.taskQueue.length===0)return;let R=this.taskQueue.shift(),S=this.tasks[R];delete this.tasks[R],this.taskQueue.length>0&&this.invoker.trigger(),S&&this.processTask(R,S)}processTask(R,S){return a(this,void 0,void 0,function*(){if(S.type==="<response>"){let te=this.resolveRejects[R];return delete this.resolveRejects[R],te?void(S.error?te.reject(qa(S.error)):te.resolve(qa(S.data))):void 0}if(!this.messageHandlers[S.type])return void this.completeTask(R,new Error(`Could not find a registered handler for ${S.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let D=qa(S.data),j=new AbortController;this.abortControllers[R]=j;try{let te=yield this.messageHandlers[S.type](S.sourceMapId,D,j);this.completeTask(R,null,te)}catch(te){this.completeTask(R,te)}})}completeTask(R,S,D){let j=[];delete this.abortControllers[R];let te={id:R,type:"<response>",sourceMapId:this.mapId,origin:location.origin,error:S?Ea(S):null,data:Ea(D,j)};this.target.postMessage(te,{transfer:j})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},i.G=ke,i.H=function(){var R=new Ln(16);return Ln!=Float32Array&&(R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[11]=0,R[12]=0,R[13]=0,R[14]=0),R[0]=1,R[5]=1,R[10]=1,R[15]=1,R},i.I=kw,i.J=function(R,S,D){var j,te,ue,ve,De,Ze,at,Tt,Ft,Qt,sr,Tr,Pr=D[0],$r=D[1],ni=D[2];return S===R?(R[12]=S[0]*Pr+S[4]*$r+S[8]*ni+S[12],R[13]=S[1]*Pr+S[5]*$r+S[9]*ni+S[13],R[14]=S[2]*Pr+S[6]*$r+S[10]*ni+S[14],R[15]=S[3]*Pr+S[7]*$r+S[11]*ni+S[15]):(te=S[1],ue=S[2],ve=S[3],De=S[4],Ze=S[5],at=S[6],Tt=S[7],Ft=S[8],Qt=S[9],sr=S[10],Tr=S[11],R[0]=j=S[0],R[1]=te,R[2]=ue,R[3]=ve,R[4]=De,R[5]=Ze,R[6]=at,R[7]=Tt,R[8]=Ft,R[9]=Qt,R[10]=sr,R[11]=Tr,R[12]=j*Pr+De*$r+Ft*ni+S[12],R[13]=te*Pr+Ze*$r+Qt*ni+S[13],R[14]=ue*Pr+at*$r+sr*ni+S[14],R[15]=ve*Pr+Tt*$r+Tr*ni+S[15]),R},i.K=function(R,S,D){var j=D[0],te=D[1],ue=D[2];return R[0]=S[0]*j,R[1]=S[1]*j,R[2]=S[2]*j,R[3]=S[3]*j,R[4]=S[4]*te,R[5]=S[5]*te,R[6]=S[6]*te,R[7]=S[7]*te,R[8]=S[8]*ue,R[9]=S[9]*ue,R[10]=S[10]*ue,R[11]=S[11]*ue,R[12]=S[12],R[13]=S[13],R[14]=S[14],R[15]=S[15],R},i.L=gn,i.M=function(R,S){let D={};for(let j=0;j<S.length;j++){let te=S[j];te in R&&(D[te]=R[te])}return D},i.N=dg,i.O=zw,i.P=u,i.Q=wC,i.R=Jn,i.S=Jv,i.T=ac,i.U=x,i.V=b,i.W=G,i.X=za,i.Y=qe,i.Z=$x,i._=a,i.a=_e,i.a$=function(R,S){var D=R[0],j=R[1],te=R[2],ue=R[3],ve=R[4],De=R[5],Ze=R[6],at=R[7],Tt=R[8],Ft=R[9],Qt=R[10],sr=R[11],Tr=R[12],Pr=R[13],$r=R[14],ni=R[15],Di=S[0],pi=S[1],ki=S[2],Zi=S[3],ta=S[4],Va=S[5],Io=S[6],La=S[7],Hn=S[8],lo=S[9],$a=S[10],Xa=S[11],Tn=S[12],bo=S[13],Ya=S[14],Uo=S[15];return Math.abs(D-Di)<=ji*Math.max(1,Math.abs(D),Math.abs(Di))&&Math.abs(j-pi)<=ji*Math.max(1,Math.abs(j),Math.abs(pi))&&Math.abs(te-ki)<=ji*Math.max(1,Math.abs(te),Math.abs(ki))&&Math.abs(ue-Zi)<=ji*Math.max(1,Math.abs(ue),Math.abs(Zi))&&Math.abs(ve-ta)<=ji*Math.max(1,Math.abs(ve),Math.abs(ta))&&Math.abs(De-Va)<=ji*Math.max(1,Math.abs(De),Math.abs(Va))&&Math.abs(Ze-Io)<=ji*Math.max(1,Math.abs(Ze),Math.abs(Io))&&Math.abs(at-La)<=ji*Math.max(1,Math.abs(at),Math.abs(La))&&Math.abs(Tt-Hn)<=ji*Math.max(1,Math.abs(Tt),Math.abs(Hn))&&Math.abs(Ft-lo)<=ji*Math.max(1,Math.abs(Ft),Math.abs(lo))&&Math.abs(Qt-$a)<=ji*Math.max(1,Math.abs(Qt),Math.abs($a))&&Math.abs(sr-Xa)<=ji*Math.max(1,Math.abs(sr),Math.abs(Xa))&&Math.abs(Tr-Tn)<=ji*Math.max(1,Math.abs(Tr),Math.abs(Tn))&&Math.abs(Pr-bo)<=ji*Math.max(1,Math.abs(Pr),Math.abs(bo))&&Math.abs($r-Ya)<=ji*Math.max(1,Math.abs($r),Math.abs(Ya))&&Math.abs(ni-Uo)<=ji*Math.max(1,Math.abs(ni),Math.abs(Uo))},i.a0=We,i.a1=fS,i.a2=er,i.a3=R=>{let S=window.document.createElement("video");return S.muted=!0,new Promise(D=>{S.onloadstart=()=>{D(S)};for(let j of R){let te=window.document.createElement("source");Ee(j)||(S.crossOrigin="Anonymous"),te.src=j,S.appendChild(te)}})},i.a4=function(){return _++},i.a5=Qi,i.a6=E1,i.a7=Pc,i.a8=xl,i.a9=hS,i.aA=function(R){if(R.type==="custom")return new lS(R);switch(R.type){case"background":return new G9(R);case"circle":return new wn(R);case"fill":return new gr(R);case"fill-extrusion":return new Ev(R);case"heatmap":return new Po(R);case"hillshade":return new $c(R);case"line":return new ay(R);case"raster":return new Kx(R);case"symbol":return new uy(R)}},i.aB=g,i.aC=function(R,S){if(!R)return[{command:"setStyle",args:[S]}];let D=[];try{if(!ct(R.version,S.version))return[{command:"setStyle",args:[S]}];ct(R.center,S.center)||D.push({command:"setCenter",args:[S.center]}),ct(R.zoom,S.zoom)||D.push({command:"setZoom",args:[S.zoom]}),ct(R.bearing,S.bearing)||D.push({command:"setBearing",args:[S.bearing]}),ct(R.pitch,S.pitch)||D.push({command:"setPitch",args:[S.pitch]}),ct(R.sprite,S.sprite)||D.push({command:"setSprite",args:[S.sprite]}),ct(R.glyphs,S.glyphs)||D.push({command:"setGlyphs",args:[S.glyphs]}),ct(R.transition,S.transition)||D.push({command:"setTransition",args:[S.transition]}),ct(R.light,S.light)||D.push({command:"setLight",args:[S.light]}),ct(R.terrain,S.terrain)||D.push({command:"setTerrain",args:[S.terrain]}),ct(R.sky,S.sky)||D.push({command:"setSky",args:[S.sky]}),ct(R.projection,S.projection)||D.push({command:"setProjection",args:[S.projection]});let j={},te=[];(function(ve,De,Ze,at){let Tt;for(Tt in De=De||{},ve=ve||{})Object.prototype.hasOwnProperty.call(ve,Tt)&&(Object.prototype.hasOwnProperty.call(De,Tt)||ot(Tt,Ze,at));for(Tt in De)Object.prototype.hasOwnProperty.call(De,Tt)&&(Object.prototype.hasOwnProperty.call(ve,Tt)?ct(ve[Tt],De[Tt])||(ve[Tt].type==="geojson"&&De[Tt].type==="geojson"&&kt(ve,De,Tt)?qt(Ze,{command:"setGeoJSONSourceData",args:[Tt,De[Tt].data]}):Rt(Tt,De,Ze,at)):rt(Tt,De,Ze))})(R.sources,S.sources,te,j);let ue=[];R.layers&&R.layers.forEach(ve=>{"source"in ve&&j[ve.source]?D.push({command:"removeLayer",args:[ve.id]}):ue.push(ve)}),D=D.concat(te),function(ve,De,Ze){De=De||[];let at=(ve=ve||[]).map(Yt),Tt=De.map(Yt),Ft=ve.reduce(xr,{}),Qt=De.reduce(xr,{}),sr=at.slice(),Tr=Object.create(null),Pr,$r,ni,Di,pi;for(let ki=0,Zi=0;ki<at.length;ki++)Pr=at[ki],Object.prototype.hasOwnProperty.call(Qt,Pr)?Zi++:(qt(Ze,{command:"removeLayer",args:[Pr]}),sr.splice(sr.indexOf(Pr,Zi),1));for(let ki=0,Zi=0;ki<Tt.length;ki++)Pr=Tt[Tt.length-1-ki],sr[sr.length-1-ki]!==Pr&&(Object.prototype.hasOwnProperty.call(Ft,Pr)?(qt(Ze,{command:"removeLayer",args:[Pr]}),sr.splice(sr.lastIndexOf(Pr,sr.length-Zi),1)):Zi++,Di=sr[sr.length-ki],qt(Ze,{command:"addLayer",args:[Qt[Pr],Di]}),sr.splice(sr.length-ki,0,Pr),Tr[Pr]=!0);for(let ki=0;ki<Tt.length;ki++)if(Pr=Tt[ki],$r=Ft[Pr],ni=Qt[Pr],!Tr[Pr]&&!ct($r,ni))if(ct($r.source,ni.source)&&ct($r["source-layer"],ni["source-layer"])&&ct($r.type,ni.type)){for(pi in Ct($r.layout,ni.layout,Ze,Pr,null,"setLayoutProperty"),Ct($r.paint,ni.paint,Ze,Pr,null,"setPaintProperty"),ct($r.filter,ni.filter)||qt(Ze,{command:"setFilter",args:[Pr,ni.filter]}),ct($r.minzoom,ni.minzoom)&&ct($r.maxzoom,ni.maxzoom)||qt(Ze,{command:"setLayerZoomRange",args:[Pr,ni.minzoom,ni.maxzoom]}),$r)Object.prototype.hasOwnProperty.call($r,pi)&&pi!=="layout"&&pi!=="paint"&&pi!=="filter"&&pi!=="metadata"&&pi!=="minzoom"&&pi!=="maxzoom"&&(pi.indexOf("paint.")===0?Ct($r[pi],ni[pi],Ze,Pr,pi.slice(6),"setPaintProperty"):ct($r[pi],ni[pi])||qt(Ze,{command:"setLayerProperty",args:[Pr,pi,ni[pi]]}));for(pi in ni)Object.prototype.hasOwnProperty.call(ni,pi)&&!Object.prototype.hasOwnProperty.call($r,pi)&&pi!=="layout"&&pi!=="paint"&&pi!=="filter"&&pi!=="metadata"&&pi!=="minzoom"&&pi!=="maxzoom"&&(pi.indexOf("paint.")===0?Ct($r[pi],ni[pi],Ze,Pr,pi.slice(6),"setPaintProperty"):ct($r[pi],ni[pi])||qt(Ze,{command:"setLayerProperty",args:[Pr,pi,ni[pi]]}))}else qt(Ze,{command:"removeLayer",args:[Pr]}),Di=sr[sr.lastIndexOf(Pr)+1],qt(Ze,{command:"addLayer",args:[ni,Di]})}(ue,S.layers,D)}catch(j){console.warn("Unable to compute style diff:",j),D=[{command:"setStyle",args:[S]}]}return D},i.aD=function(R){let S=[],D=R.id;return D===void 0&&S.push({message:`layers.${D}: missing required property "id"`}),R.render===void 0&&S.push({message:`layers.${D}: missing required method "render"`}),R.renderingMode&&R.renderingMode!=="2d"&&R.renderingMode!=="3d"&&S.push({message:`layers.${D}: property "renderingMode" must be either "2d" or "3d"`}),S},i.aE=function R(S,D){if(Array.isArray(S)){if(!Array.isArray(D)||S.length!==D.length)return!1;for(let j=0;j<S.length;j++)if(!R(S[j],D[j]))return!1;return!0}if(typeof S=="object"&&S!==null&&D!==null){if(typeof D!="object"||Object.keys(S).length!==Object.keys(D).length)return!1;for(let j in S)if(!R(S[j],D[j]))return!1;return!0}return S===D},i.aF=C,i.aG=M,i.aH=class extends ci{constructor(R,S){super(R,S),this.current=0}set(R){this.current!==R&&(this.current=R,this.gl.uniform1i(this.location,R))}},i.aI=Jr,i.aJ=class extends ci{constructor(R,S){super(R,S),this.current=En}set(R){if(R[12]!==this.current[12]||R[0]!==this.current[0])return this.current=R,void this.gl.uniformMatrix4fv(this.location,!1,R);for(let S=1;S<16;S++)if(R[S]!==this.current[S]){this.current=R,this.gl.uniformMatrix4fv(this.location,!1,R);break}}},i.aK=un,i.aL=dn,i.aM=Zt,i.aN=class extends ci{constructor(R,S){super(R,S),this.current=[0,0,0]}set(R){R[0]===this.current[0]&&R[1]===this.current[1]&&R[2]===this.current[2]||(this.current=R,this.gl.uniform3f(this.location,R[0],R[1],R[2]))}},i.aO=class extends ci{constructor(R,S){super(R,S),this.current=[0,0]}set(R){R[0]===this.current[0]&&R[1]===this.current[1]||(this.current=R,this.gl.uniform2f(this.location,R[0],R[1]))}},i.aP=function(R,S,D,j,te,ue,ve){var De=1/(S-D),Ze=1/(j-te),at=1/(ue-ve);return R[0]=-2*De,R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=-2*Ze,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[10]=2*at,R[11]=0,R[12]=(S+D)*De,R[13]=(te+j)*Ze,R[14]=(ve+ue)*at,R[15]=1,R},i.aQ=Kn,i.aR=class extends et{},i.aS=im,i.aT=class extends Dt{},i.aU=_o,i.aV=function(R){return R<=1?1:Math.pow(2,Math.ceil(Math.log(R)/Math.LN2))},i.aW=Oa,i.aX=yo,i.aY=oe,i.aZ=class extends di{},i.a_=function(R,S){return R[0]===S[0]&&R[1]===S[1]&&R[2]===S[2]&&R[3]===S[3]&&R[4]===S[4]&&R[5]===S[5]&&R[6]===S[6]&&R[7]===S[7]&&R[8]===S[8]&&R[9]===S[9]&&R[10]===S[10]&&R[11]===S[11]&&R[12]===S[12]&&R[13]===S[13]&&R[14]===S[14]&&R[15]===S[15]},i.aa=function(R){let S={};if(R.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(D,j,te,ue)=>{let ve=te||ue;return S[j]=!ve||ve.toLowerCase(),""}),S["max-age"]){let D=parseInt(S["max-age"],10);isNaN(D)?delete S["max-age"]:S["max-age"]=D}return S},i.ab=function(R,S){let D=[];for(let j in R)j in S||D.push(j);return D},i.ac=k,i.ad=function(R,S,D){var j=Math.sin(D),te=Math.cos(D),ue=S[0],ve=S[1],De=S[2],Ze=S[3],at=S[4],Tt=S[5],Ft=S[6],Qt=S[7];return S!==R&&(R[8]=S[8],R[9]=S[9],R[10]=S[10],R[11]=S[11],R[12]=S[12],R[13]=S[13],R[14]=S[14],R[15]=S[15]),R[0]=ue*te+at*j,R[1]=ve*te+Tt*j,R[2]=De*te+Ft*j,R[3]=Ze*te+Qt*j,R[4]=at*te-ue*j,R[5]=Tt*te-ve*j,R[6]=Ft*te-De*j,R[7]=Qt*te-Ze*j,R},i.ae=function(R){var S=new Ln(16);return S[0]=R[0],S[1]=R[1],S[2]=R[2],S[3]=R[3],S[4]=R[4],S[5]=R[5],S[6]=R[6],S[7]=R[7],S[8]=R[8],S[9]=R[9],S[10]=R[10],S[11]=R[11],S[12]=R[12],S[13]=R[13],S[14]=R[14],S[15]=R[15],S},i.af=Za,i.ag=function(R,S){let D=0,j=0;if(R.kind==="constant")j=R.layoutSize;else if(R.kind!=="source"){let{interpolationType:te,minZoom:ue,maxZoom:ve}=R,De=te?k(xo.interpolationFactor(te,S,ue,ve),0,1):0;R.kind==="camera"?j=Mo.number(R.minSize,R.maxSize,De):D=De}return{uSizeT:D,uSize:j}},i.ai=function(R,{uSize:S,uSizeT:D},{lowerSize:j,upperSize:te}){return R.kind==="source"?j/v0:R.kind==="composite"?Mo.number(j/v0,te/v0,D):S},i.aj=nS,i.ak=function(R,S,D,j){let te=S.y-R.y,ue=S.x-R.x,ve=j.y-D.y,De=j.x-D.x,Ze=ve*ue-De*te;if(Ze===0)return null;let at=(De*(R.y-D.y)-ve*(R.x-D.x))/Ze;return new u(R.x+at*ue,R.y+at*te)},i.al=kC,i.am=xc,i.an=Un,i.ao=function(R){let S=1/0,D=1/0,j=-1/0,te=-1/0;for(let ue of R)S=Math.min(S,ue.x),D=Math.min(D,ue.y),j=Math.max(j,ue.x),te=Math.max(te,ue.y);return[S,D,j,te]},i.ap=kl,i.ar=iS,i.as=function(R,S){var D=S[0],j=S[1],te=S[2],ue=S[3],ve=S[4],De=S[5],Ze=S[6],at=S[7],Tt=S[8],Ft=S[9],Qt=S[10],sr=S[11],Tr=S[12],Pr=S[13],$r=S[14],ni=S[15],Di=D*De-j*ve,pi=D*Ze-te*ve,ki=D*at-ue*ve,Zi=j*Ze-te*De,ta=j*at-ue*De,Va=te*at-ue*Ze,Io=Tt*Pr-Ft*Tr,La=Tt*$r-Qt*Tr,Hn=Tt*ni-sr*Tr,lo=Ft*$r-Qt*Pr,$a=Ft*ni-sr*Pr,Xa=Qt*ni-sr*$r,Tn=Di*Xa-pi*$a+ki*lo+Zi*Hn-ta*La+Va*Io;return Tn?(R[0]=(De*Xa-Ze*$a+at*lo)*(Tn=1/Tn),R[1]=(te*$a-j*Xa-ue*lo)*Tn,R[2]=(Pr*Va-$r*ta+ni*Zi)*Tn,R[3]=(Qt*ta-Ft*Va-sr*Zi)*Tn,R[4]=(Ze*Hn-ve*Xa-at*La)*Tn,R[5]=(D*Xa-te*Hn+ue*La)*Tn,R[6]=($r*ki-Tr*Va-ni*pi)*Tn,R[7]=(Tt*Va-Qt*ki+sr*pi)*Tn,R[8]=(ve*$a-De*Hn+at*Io)*Tn,R[9]=(j*Hn-D*$a-ue*Io)*Tn,R[10]=(Tr*ta-Pr*ki+ni*Di)*Tn,R[11]=(Ft*ki-Tt*ta-sr*Di)*Tn,R[12]=(De*La-ve*lo-Ze*Io)*Tn,R[13]=(D*lo-j*La+te*Io)*Tn,R[14]=(Pr*pi-Tr*Zi-$r*Di)*Tn,R[15]=(Tt*Zi-Ft*pi+Qt*Di)*Tn,R):null},i.at=pS,i.au=Iw,i.av=gS,i.aw=function(){let R={},S=ce.$version;for(let D in ce.$root){let j=ce.$root[D];if(j.required){let te=null;te=D==="version"?S:j.type==="array"?[]:{},te!=null&&(R[D]=te)}}return R},i.ax=Cn,i.ay=ie,i.az=function(R){R=R.slice();let S=Object.create(null);for(let D=0;D<R.length;D++)S[R[D].id]=R[D];for(let D=0;D<R.length;D++)"ref"in R[D]&&(R[D]=nt(R[D],S[R[D].ref]));return R},i.b=H,i.b0=function(R,S){return R[0]=S[0],R[1]=S[1],R[2]=S[2],R[3]=S[3],R[4]=S[4],R[5]=S[5],R[6]=S[6],R[7]=S[7],R[8]=S[8],R[9]=S[9],R[10]=S[10],R[11]=S[11],R[12]=S[12],R[13]=S[13],R[14]=S[14],R[15]=S[15],R},i.b1=function(R,S,D){return R[0]=S[0]*D[0],R[1]=S[1]*D[1],R[2]=S[2]*D[2],R[3]=S[3]*D[3],R},i.b2=function(R,S){return R[0]*S[0]+R[1]*S[1]+R[2]*S[2]+R[3]*S[3]},i.b3=A,i.b4=TC,i.b5=Fw,i.b6=function(R,S,D,j,te){var ue,ve=1/Math.tan(S/2);return R[0]=ve/D,R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=ve,R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[11]=-1,R[12]=0,R[13]=0,R[15]=0,te!=null&&te!==1/0?(R[10]=(te+j)*(ue=1/(j-te)),R[14]=2*te*j*ue):(R[10]=-1,R[14]=-2*j),R},i.b7=function(R,S,D){var j=Math.sin(D),te=Math.cos(D),ue=S[4],ve=S[5],De=S[6],Ze=S[7],at=S[8],Tt=S[9],Ft=S[10],Qt=S[11];return S!==R&&(R[0]=S[0],R[1]=S[1],R[2]=S[2],R[3]=S[3],R[12]=S[12],R[13]=S[13],R[14]=S[14],R[15]=S[15]),R[4]=ue*te+at*j,R[5]=ve*te+Tt*j,R[6]=De*te+Ft*j,R[7]=Ze*te+Qt*j,R[8]=at*te-ue*j,R[9]=Tt*te-ve*j,R[10]=Ft*te-De*j,R[11]=Qt*te-Ze*j,R},i.b8=p,i.b9=E,i.bA=bd,i.bB=function(R){return R.message===re},i.bC=fl,i.bD=vs,i.ba=function(R){return R*Math.PI/180},i.bb=function(R,S){let{x:D,y:j}=$x.fromLngLat(S);return!(R<0||R>25||j<0||j>=1||D<0||D>=1)},i.bc=function(R,S){return R[0]=S[0],R[1]=0,R[2]=0,R[3]=0,R[4]=0,R[5]=S[1],R[6]=0,R[7]=0,R[8]=0,R[9]=0,R[10]=S[2],R[11]=0,R[12]=0,R[13]=0,R[14]=0,R[15]=1,R},i.bd=class extends yt{},i.be=cS,i.bf=$9,i.bh=ge,i.bi=function(R,S){_e.REGISTERED_PROTOCOLS[R]=S},i.bj=function(R){delete _e.REGISTERED_PROTOCOLS[R]},i.bk=function(R,S){let D={};for(let te=0;te<R.length;te++){let ue=S&&S[R[te].id]||md(R[te]);S&&(S[R[te].id]=ue);let ve=D[ue];ve||(ve=D[ue]=[]),ve.push(R[te])}let j=[];for(let te in D)j.push(D[te]);return j},i.bl=mi,i.bm=SC,i.bn=cy,i.bo=Cw,i.bp=function(R){R.bucket.createArrays(),R.bucket.tilePixelRatio=za/(512*R.bucket.overscaling),R.bucket.compareText={},R.bucket.iconsNeedLinear=!1;let S=R.bucket.layers[0],D=S.layout,j=S._unevaluatedLayout._values,te={layoutIconSize:j["icon-size"].possiblyEvaluate(new Ko(R.bucket.zoom+1),R.canonical),layoutTextSize:j["text-size"].possiblyEvaluate(new Ko(R.bucket.zoom+1),R.canonical),textMaxSize:j["text-size"].possiblyEvaluate(new Ko(18))};if(R.bucket.textSizeData.kind==="composite"){let{minZoom:at,maxZoom:Tt}=R.bucket.textSizeData;te.compositeTextSizes=[j["text-size"].possiblyEvaluate(new Ko(at),R.canonical),j["text-size"].possiblyEvaluate(new Ko(Tt),R.canonical)]}if(R.bucket.iconSizeData.kind==="composite"){let{minZoom:at,maxZoom:Tt}=R.bucket.iconSizeData;te.compositeIconSizes=[j["icon-size"].possiblyEvaluate(new Ko(at),R.canonical),j["icon-size"].possiblyEvaluate(new Ko(Tt),R.canonical)]}let ue=D.get("text-line-height")*kl,ve=D.get("text-rotation-alignment")!=="viewport"&&D.get("symbol-placement")!=="point",De=D.get("text-keep-upright"),Ze=D.get("text-size");for(let at of R.bucket.features){let Tt=D.get("text-font").evaluate(at,{},R.canonical).join(","),Ft=Ze.evaluate(at,{},R.canonical),Qt=te.layoutTextSize.evaluate(at,{},R.canonical),sr=te.layoutIconSize.evaluate(at,{},R.canonical),Tr={horizontal:{},vertical:void 0},Pr=at.text,$r,ni=[0,0];if(Pr){let ki=Pr.toString(),Zi=D.get("text-letter-spacing").evaluate(at,{},R.canonical)*kl,ta=mo(ki)?Zi:0,Va=D.get("text-anchor").evaluate(at,{},R.canonical),Io=zC(S,at,R.canonical);if(!Io){let $a=D.get("text-radial-offset").evaluate(at,{},R.canonical);ni=$a?vS(Va,[$a*kl,fy]):D.get("text-offset").evaluate(at,{},R.canonical).map(Xa=>Xa*kl)}let La=ve?"center":D.get("text-justify").evaluate(at,{},R.canonical),Hn=D.get("symbol-placement")==="point"?D.get("text-max-width").evaluate(at,{},R.canonical)*kl:1/0,lo=()=>{R.bucket.allowVerticalPlacement&&Ua(ki)&&(Tr.vertical=Gx(Pr,R.glyphMap,R.glyphPositions,R.imagePositions,Tt,Hn,ue,Va,"left",ta,ni,i.ah.vertical,!0,Qt,Ft))};if(!ve&&Io){let $a=new Set;if(La==="auto")for(let Tn=0;Tn<Io.values.length;Tn+=2)$a.add(pS(Io.values[Tn]));else $a.add(La);let Xa=!1;for(let Tn of $a)if(!Tr.horizontal[Tn])if(Xa)Tr.horizontal[Tn]=Tr.horizontal[0];else{let bo=Gx(Pr,R.glyphMap,R.glyphPositions,R.imagePositions,Tt,Hn,ue,"center",Tn,ta,ni,i.ah.horizontal,!1,Qt,Ft);bo&&(Tr.horizontal[Tn]=bo,Xa=bo.positionedLines.length===1)}lo()}else{La==="auto"&&(La=pS(Va));let $a=Gx(Pr,R.glyphMap,R.glyphPositions,R.imagePositions,Tt,Hn,ue,Va,La,ta,ni,i.ah.horizontal,!1,Qt,Ft);$a&&(Tr.horizontal[La]=$a),lo(),Ua(ki)&&ve&&De&&(Tr.vertical=Gx(Pr,R.glyphMap,R.glyphPositions,R.imagePositions,Tt,Hn,ue,Va,La,ta,ni,i.ah.vertical,!1,Qt,Ft))}}let Di=!1;if(at.icon&&at.icon.name){let ki=R.imageMap[at.icon.name];ki&&($r=jx(R.imagePositions[at.icon.name],D.get("icon-offset").evaluate(at,{},R.canonical),D.get("icon-anchor").evaluate(at,{},R.canonical)),Di=!!ki.sdf,R.bucket.sdfIcons===void 0?R.bucket.sdfIcons=Di:R.bucket.sdfIcons!==Di&&T("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(ki.pixelRatio!==R.bucket.pixelRatio||D.get("icon-rotate").constantOr(1)!==0)&&(R.bucket.iconsNeedLinear=!0))}let pi=qC(Tr.horizontal)||Tr.vertical;R.bucket.iconsInText=!!pi&&pi.iconsInText,(pi||$r)&&K9(R.bucket,at,Tr,$r,R.imageMap,te,Qt,sr,ni,Di,R.canonical)}R.showCollisionBoxes&&R.bucket.generateCollisionDebugBuffers()},i.bq=Kv,i.br=dr,i.bs=fo,i.bt=ei,i.bu=eS,i.bv=class{constructor(R){this._marks={start:[R.url,"start"].join("#"),end:[R.url,"end"].join("#"),measure:R.url.toString()},performance.mark(this._marks.start)}finish(){performance.mark(this._marks.end);let R=performance.getEntriesByName(this._marks.measure);return R.length===0&&(performance.measure(this._marks.measure,this._marks.start,this._marks.end),R=performance.getEntriesByName(this._marks.measure),performance.clearMarks(this._marks.start),performance.clearMarks(this._marks.end),performance.clearMeasures(this._marks.measure)),R}},i.bw=function(R,S,D,j,te){return a(this,void 0,void 0,function*(){if(b())try{return yield G(R,S,D,j,te)}catch(ue){}return function(ue,ve,De,Ze,at){let Tt=ue.width,Ft=ue.height;N&&W||(N=new OffscreenCanvas(Tt,Ft),W=N.getContext("2d",{willReadFrequently:!0})),N.width=Tt,N.height=Ft,W.drawImage(ue,0,0,Tt,Ft);let Qt=W.getImageData(ve,De,Ze,at);return W.clearRect(0,0,Tt,Ft),Qt.data}(R,S,D,j,te)})},i.bx=AC,i.by=o,i.bz=s,i.c=ae,i.d=R=>a(void 0,void 0,void 0,function*(){if(R.byteLength===0)return createImageBitmap(new ImageData(1,1));let S=new Blob([new Uint8Array(R)],{type:"image/png"});try{return createImageBitmap(S)}catch(D){throw new Error(`Could not load image because of ${D.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),i.e=L,i.f=R=>new Promise((S,D)=>{let j=new Image;j.onload=()=>{S(j),URL.revokeObjectURL(j.src),j.onload=null,window.requestAnimationFrame(()=>{j.src=X})},j.onerror=()=>D(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let te=new Blob([new Uint8Array(R)],{type:"image/png"});j.src=R.byteLength?URL.createObjectURL(te):X}),i.g=Me,i.h=(R,S)=>Te(L(R,{type:"json"}),S),i.i=q,i.j=me,i.k=Ce,i.l=(R,S)=>Te(L(R,{type:"arrayBuffer"}),S),i.m=Te,i.n=function(R){return new eS(R).readFields(yQ,[])},i.o=Ao,i.p=rS,i.q=le,i.r=xi,i.s=Ee,i.t=Ti,i.u=fi,i.v=ce,i.w=T,i.x=function([R,S,D]){return S+=90,S*=Math.PI/180,D*=Math.PI/180,{x:R*Math.cos(S)*Math.sin(D),y:R*Math.sin(S)*Math.sin(D),z:R*Math.cos(D)}},i.y=Mo,i.z=Ko}),r("worker",["./shared"],function(i){"use strict";class a{constructor(Ne){this.keyCache={},Ne&&this.replace(Ne)}replace(Ne){this._layerConfigs={},this._layers={},this.update(Ne,[])}update(Ne,Ye){for(let Xe of Ne){this._layerConfigs[Xe.id]=Xe;let ht=this._layers[Xe.id]=i.aA(Xe);ht._featureFilter=i.a7(ht.filter),this.keyCache[Xe.id]&&delete this.keyCache[Xe.id]}for(let Xe of Ye)delete this.keyCache[Xe],delete this._layerConfigs[Xe],delete this._layers[Xe];this.familiesBySource={};let Ve=i.bk(Object.values(this._layerConfigs),this.keyCache);for(let Xe of Ve){let ht=Xe.map(Vt=>this._layers[Vt.id]),Le=ht[0];if(Le.visibility==="none")continue;let xe=Le.source||"",Se=this.familiesBySource[xe];Se||(Se=this.familiesBySource[xe]={});let lt=Le.sourceLayer||"_geojsonTileLayer",Gt=Se[lt];Gt||(Gt=Se[lt]=[]),Gt.push(ht)}}}class o{constructor(Ne){let Ye={},Ve=[];for(let xe in Ne){let Se=Ne[xe],lt=Ye[xe]={};for(let Gt in Se){let Vt=Se[+Gt];if(!Vt||Vt.bitmap.width===0||Vt.bitmap.height===0)continue;let ar={x:0,y:0,w:Vt.bitmap.width+2,h:Vt.bitmap.height+2};Ve.push(ar),lt[Gt]={rect:ar,metrics:Vt.metrics}}}let{w:Xe,h:ht}=i.p(Ve),Le=new i.o({width:Xe||1,height:ht||1});for(let xe in Ne){let Se=Ne[xe];for(let lt in Se){let Gt=Se[+lt];if(!Gt||Gt.bitmap.width===0||Gt.bitmap.height===0)continue;let Vt=Ye[xe][lt].rect;i.o.copy(Gt.bitmap,Le,{x:0,y:0},{x:Vt.x+1,y:Vt.y+1},Gt.bitmap)}}this.image=Le,this.positions=Ye}}i.bl("GlyphAtlas",o);class s{constructor(Ne){this.tileID=new i.S(Ne.tileID.overscaledZ,Ne.tileID.wrap,Ne.tileID.canonical.z,Ne.tileID.canonical.x,Ne.tileID.canonical.y),this.uid=Ne.uid,this.zoom=Ne.zoom,this.pixelRatio=Ne.pixelRatio,this.tileSize=Ne.tileSize,this.source=Ne.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Ne.showCollisionBoxes,this.collectResourceTiming=!!Ne.collectResourceTiming,this.returnDependencies=!!Ne.returnDependencies,this.promoteId=Ne.promoteId,this.inFlightDependencies=[]}parse(Ne,Ye,Ve,Xe){return i._(this,void 0,void 0,function*(){this.status="parsing",this.data=Ne,this.collisionBoxArray=new i.a5;let ht=new i.bm(Object.keys(Ne.layers).sort()),Le=new i.bn(this.tileID,this.promoteId);Le.bucketLayerIDs=[];let xe={},Se={featureIndex:Le,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ve},lt=Ye.familiesBySource[this.source];for(let _n in lt){let $i=Ne.layers[_n];if(!$i)continue;$i.version===1&&i.w(`Vector tile source "${this.source}" layer "${_n}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let zn=ht.encode(_n),Wn=[];for(let It=0;It<$i.length;It++){let ft=$i.feature(It),jt=Le.getId(ft,_n);Wn.push({feature:ft,id:jt,index:It,sourceLayerIndex:zn})}for(let It of lt[_n]){let ft=It[0];ft.source!==this.source&&i.w(`layer.source = ${ft.source} does not equal this.source = ${this.source}`),ft.minzoom&&this.zoom<Math.floor(ft.minzoom)||ft.maxzoom&&this.zoom>=ft.maxzoom||ft.visibility!=="none"&&(l(It,this.zoom,Ve),(xe[ft.id]=ft.createBucket({index:Le.bucketLayerIDs.length,layers:It,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:zn,sourceID:this.source})).populate(Wn,Se,this.tileID.canonical),Le.bucketLayerIDs.push(It.map(jt=>jt.id)))}}let Gt=i.aF(Se.glyphDependencies,_n=>Object.keys(_n).map(Number));this.inFlightDependencies.forEach(_n=>_n==null?void 0:_n.abort()),this.inFlightDependencies=[];let Vt=Promise.resolve({});if(Object.keys(Gt).length){let _n=new AbortController;this.inFlightDependencies.push(_n),Vt=Xe.sendAsync({type:"GG",data:{stacks:Gt,source:this.source,tileID:this.tileID,type:"glyphs"}},_n)}let ar=Object.keys(Se.iconDependencies),Qr=Promise.resolve({});if(ar.length){let _n=new AbortController;this.inFlightDependencies.push(_n),Qr=Xe.sendAsync({type:"GI",data:{icons:ar,source:this.source,tileID:this.tileID,type:"icons"}},_n)}let ai=Object.keys(Se.patternDependencies),jr=Promise.resolve({});if(ai.length){let _n=new AbortController;this.inFlightDependencies.push(_n),jr=Xe.sendAsync({type:"GI",data:{icons:ai,source:this.source,tileID:this.tileID,type:"patterns"}},_n)}let[ri,bi,nn]=yield Promise.all([Vt,Qr,jr]),Wi=new o(ri),Ni=new i.bo(bi,nn);for(let _n in xe){let $i=xe[_n];$i instanceof i.a6?(l($i.layers,this.zoom,Ve),i.bp({bucket:$i,glyphMap:ri,glyphPositions:Wi.positions,imageMap:bi,imagePositions:Ni.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):$i.hasPattern&&($i instanceof i.bq||$i instanceof i.br||$i instanceof i.bs)&&(l($i.layers,this.zoom,Ve),$i.addFeatures(Se,this.tileID.canonical,Ni.patternPositions))}return this.status="done",{buckets:Object.values(xe).filter(_n=>!_n.isEmpty()),featureIndex:Le,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:Wi.image,imageAtlas:Ni,glyphMap:this.returnDependencies?ri:null,iconMap:this.returnDependencies?bi:null,glyphPositions:this.returnDependencies?Wi.positions:null}})}}function l(ut,Ne,Ye){let Ve=new i.z(Ne);for(let Xe of ut)Xe.recalculate(Ve,Ye)}class u{constructor(Ne,Ye,Ve){this.actor=Ne,this.layerIndex=Ye,this.availableImages=Ve,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Ne,Ye){return i._(this,void 0,void 0,function*(){let Ve=yield i.l(Ne.request,Ye);try{return{vectorTile:new i.bt.VectorTile(new i.bu(Ve.data)),rawData:Ve.data,cacheControl:Ve.cacheControl,expires:Ve.expires}}catch(Xe){let ht=new Uint8Array(Ve.data),Le=`Unable to parse the tile at ${Ne.request.url}, `;throw Le+=ht[0]===31&&ht[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Xe.message}`,new Error(Le)}})}loadTile(Ne){return i._(this,void 0,void 0,function*(){let Ye=Ne.uid,Ve=!!(Ne&&Ne.request&&Ne.request.collectResourceTiming)&&new i.bv(Ne.request),Xe=new s(Ne);this.loading[Ye]=Xe;let ht=new AbortController;Xe.abort=ht;try{let Le=yield this.loadVectorTile(Ne,ht);if(delete this.loading[Ye],!Le)return null;let xe=Le.rawData,Se={};Le.expires&&(Se.expires=Le.expires),Le.cacheControl&&(Se.cacheControl=Le.cacheControl);let lt={};if(Ve){let Vt=Ve.finish();Vt&&(lt.resourceTiming=JSON.parse(JSON.stringify(Vt)))}Xe.vectorTile=Le.vectorTile;let Gt=Xe.parse(Le.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Ye]=Xe,this.fetching[Ye]={rawTileData:xe,cacheControl:Se,resourceTiming:lt};try{let Vt=yield Gt;return i.e({rawTileData:xe.slice(0)},Vt,Se,lt)}finally{delete this.fetching[Ye]}}catch(Le){throw delete this.loading[Ye],Xe.status="done",this.loaded[Ye]=Xe,Le}})}reloadTile(Ne){return i._(this,void 0,void 0,function*(){let Ye=Ne.uid;if(!this.loaded||!this.loaded[Ye])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ve=this.loaded[Ye];if(Ve.showCollisionBoxes=Ne.showCollisionBoxes,Ve.status==="parsing"){let Xe=yield Ve.parse(Ve.vectorTile,this.layerIndex,this.availableImages,this.actor),ht;if(this.fetching[Ye]){let{rawTileData:Le,cacheControl:xe,resourceTiming:Se}=this.fetching[Ye];delete this.fetching[Ye],ht=i.e({rawTileData:Le.slice(0)},Xe,xe,Se)}else ht=Xe;return ht}if(Ve.status==="done"&&Ve.vectorTile)return Ve.parse(Ve.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Ne){return i._(this,void 0,void 0,function*(){let Ye=this.loading,Ve=Ne.uid;Ye&&Ye[Ve]&&Ye[Ve].abort&&(Ye[Ve].abort.abort(),delete Ye[Ve])})}removeTile(Ne){return i._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Ne.uid]&&delete this.loaded[Ne.uid]})}}class c{constructor(){this.loaded={}}loadTile(Ne){return i._(this,void 0,void 0,function*(){let{uid:Ye,encoding:Ve,rawImageData:Xe,redFactor:ht,greenFactor:Le,blueFactor:xe,baseShift:Se}=Ne,lt=Xe.width+2,Gt=Xe.height+2,Vt=i.b(Xe)?new i.R({width:lt,height:Gt},yield i.bw(Xe,-1,-1,lt,Gt)):Xe,ar=new i.bx(Ye,Vt,Ve,ht,Le,xe,Se);return this.loaded=this.loaded||{},this.loaded[Ye]=ar,ar})}removeTile(Ne){let Ye=this.loaded,Ve=Ne.uid;Ye&&Ye[Ve]&&delete Ye[Ve]}}function f(ut,Ne){if(ut.length!==0){h(ut[0],Ne);for(var Ye=1;Ye<ut.length;Ye++)h(ut[Ye],!Ne)}}function h(ut,Ne){for(var Ye=0,Ve=0,Xe=0,ht=ut.length,Le=ht-1;Xe<ht;Le=Xe++){var xe=(ut[Xe][0]-ut[Le][0])*(ut[Le][1]+ut[Xe][1]),Se=Ye+xe;Ve+=Math.abs(Ye)>=Math.abs(xe)?Ye-Se+xe:xe-Se+Ye,Ye=Se}Ye+Ve>=0!=!!Ne&&ut.reverse()}var d=i.by(function ut(Ne,Ye){var Ve,Xe=Ne&&Ne.type;if(Xe==="FeatureCollection")for(Ve=0;Ve<Ne.features.length;Ve++)ut(Ne.features[Ve],Ye);else if(Xe==="GeometryCollection")for(Ve=0;Ve<Ne.geometries.length;Ve++)ut(Ne.geometries[Ve],Ye);else if(Xe==="Feature")ut(Ne.geometry,Ye);else if(Xe==="Polygon")f(Ne.coordinates,Ye);else if(Xe==="MultiPolygon")for(Ve=0;Ve<Ne.coordinates.length;Ve++)f(Ne.coordinates[Ve],Ye);return Ne});let v=i.bt.VectorTileFeature.prototype.toGeoJSON;var x={exports:{}},b=i.bz,p=i.bt.VectorTileFeature,E=k;function k(ut,Ne){this.options=Ne||{},this.features=ut,this.length=ut.length}function A(ut,Ne){this.id=typeof ut.id=="number"?ut.id:void 0,this.type=ut.type,this.rawGeometry=ut.type===1?[ut.geometry]:ut.geometry,this.properties=ut.tags,this.extent=Ne||4096}k.prototype.feature=function(ut){return new A(this.features[ut],this.options.extent)},A.prototype.loadGeometry=function(){var ut=this.rawGeometry;this.geometry=[];for(var Ne=0;Ne<ut.length;Ne++){for(var Ye=ut[Ne],Ve=[],Xe=0;Xe<Ye.length;Xe++)Ve.push(new b(Ye[Xe][0],Ye[Xe][1]));this.geometry.push(Ve)}return this.geometry},A.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var ut=this.geometry,Ne=1/0,Ye=-1/0,Ve=1/0,Xe=-1/0,ht=0;ht<ut.length;ht++)for(var Le=ut[ht],xe=0;xe<Le.length;xe++){var Se=Le[xe];Ne=Math.min(Ne,Se.x),Ye=Math.max(Ye,Se.x),Ve=Math.min(Ve,Se.y),Xe=Math.max(Xe,Se.y)}return[Ne,Ve,Ye,Xe]},A.prototype.toGeoJSON=p.prototype.toGeoJSON;var L=i.bA,_=E;function C(ut){var Ne=new L;return function(Ye,Ve){for(var Xe in Ye.layers)Ve.writeMessage(3,M,Ye.layers[Xe])}(ut,Ne),Ne.finish()}function M(ut,Ne){var Ye;Ne.writeVarintField(15,ut.version||1),Ne.writeStringField(1,ut.name||""),Ne.writeVarintField(5,ut.extent||4096);var Ve={keys:[],values:[],keycache:{},valuecache:{}};for(Ye=0;Ye<ut.length;Ye++)Ve.feature=ut.feature(Ye),Ne.writeMessage(2,g,Ve);var Xe=Ve.keys;for(Ye=0;Ye<Xe.length;Ye++)Ne.writeStringField(3,Xe[Ye]);var ht=Ve.values;for(Ye=0;Ye<ht.length;Ye++)Ne.writeMessage(4,V,ht[Ye])}function g(ut,Ne){var Ye=ut.feature;Ye.id!==void 0&&Ne.writeVarintField(1,Ye.id),Ne.writeMessage(2,P,ut),Ne.writeVarintField(3,Ye.type),Ne.writeMessage(4,q,Ye)}function P(ut,Ne){var Ye=ut.feature,Ve=ut.keys,Xe=ut.values,ht=ut.keycache,Le=ut.valuecache;for(var xe in Ye.properties){var Se=Ye.properties[xe],lt=ht[xe];if(Se!==null){lt===void 0&&(Ve.push(xe),ht[xe]=lt=Ve.length-1),Ne.writeVarint(lt);var Gt=typeof Se;Gt!=="string"&&Gt!=="boolean"&&Gt!=="number"&&(Se=JSON.stringify(Se));var Vt=Gt+":"+Se,ar=Le[Vt];ar===void 0&&(Xe.push(Se),Le[Vt]=ar=Xe.length-1),Ne.writeVarint(ar)}}}function T(ut,Ne){return(Ne<<3)+(7&ut)}function F(ut){return ut<<1^ut>>31}function q(ut,Ne){for(var Ye=ut.loadGeometry(),Ve=ut.type,Xe=0,ht=0,Le=Ye.length,xe=0;xe<Le;xe++){var Se=Ye[xe],lt=1;Ve===1&&(lt=Se.length),Ne.writeVarint(T(1,lt));for(var Gt=Ve===3?Se.length-1:Se.length,Vt=0;Vt<Gt;Vt++){Vt===1&&Ve!==1&&Ne.writeVarint(T(2,Gt-1));var ar=Se[Vt].x-Xe,Qr=Se[Vt].y-ht;Ne.writeVarint(F(ar)),Ne.writeVarint(F(Qr)),Xe+=ar,ht+=Qr}Ve===3&&Ne.writeVarint(T(7,1))}}function V(ut,Ne){var Ye=typeof ut;Ye==="string"?Ne.writeStringField(1,ut):Ye==="boolean"?Ne.writeBooleanField(7,ut):Ye==="number"&&(ut%1!=0?Ne.writeDoubleField(3,ut):ut<0?Ne.writeSVarintField(6,ut):Ne.writeVarintField(5,ut))}x.exports=C,x.exports.fromVectorTileJs=C,x.exports.fromGeojsonVt=function(ut,Ne){Ne=Ne||{};var Ye={};for(var Ve in ut)Ye[Ve]=new _(ut[Ve].features,Ne),Ye[Ve].name=Ve,Ye[Ve].version=Ne.version,Ye[Ve].extent=Ne.extent;return C({layers:Ye})},x.exports.GeoJSONWrapper=_;var H=i.by(x.exports);let X={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:ut=>ut},G=Math.fround||(N=new Float32Array(1),ut=>(N[0]=+ut,N[0]));var N;let W=3,re=5,ae=6;class _e{constructor(Ne){this.options=Object.assign(Object.create(X),Ne),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Ne){let{log:Ye,minZoom:Ve,maxZoom:Xe}=this.options;Ye&&console.time("total time");let ht=`prepare ${Ne.length} points`;Ye&&console.time(ht),this.points=Ne;let Le=[];for(let Se=0;Se<Ne.length;Se++){let lt=Ne[Se];if(!lt.geometry)continue;let[Gt,Vt]=lt.geometry.coordinates,ar=G(ge(Gt)),Qr=G(ie(Vt));Le.push(ar,Qr,1/0,Se,-1,1),this.options.reduce&&Le.push(0)}let xe=this.trees[Xe+1]=this._createTree(Le);Ye&&console.timeEnd(ht);for(let Se=Xe;Se>=Ve;Se--){let lt=+Date.now();xe=this.trees[Se]=this._createTree(this._cluster(xe,Se)),Ye&&console.log("z%d: %d clusters in %dms",Se,xe.numItems,+Date.now()-lt)}return Ye&&console.timeEnd("total time"),this}getClusters(Ne,Ye){let Ve=((Ne[0]+180)%360+360)%360-180,Xe=Math.max(-90,Math.min(90,Ne[1])),ht=Ne[2]===180?180:((Ne[2]+180)%360+360)%360-180,Le=Math.max(-90,Math.min(90,Ne[3]));if(Ne[2]-Ne[0]>=360)Ve=-180,ht=180;else if(Ve>ht){let Vt=this.getClusters([Ve,Xe,180,Le],Ye),ar=this.getClusters([-180,Xe,ht,Le],Ye);return Vt.concat(ar)}let xe=this.trees[this._limitZoom(Ye)],Se=xe.range(ge(Ve),ie(Le),ge(ht),ie(Xe)),lt=xe.data,Gt=[];for(let Vt of Se){let ar=this.stride*Vt;Gt.push(lt[ar+re]>1?Me(lt,ar,this.clusterProps):this.points[lt[ar+W]])}return Gt}getChildren(Ne){let Ye=this._getOriginId(Ne),Ve=this._getOriginZoom(Ne),Xe="No cluster with the specified id.",ht=this.trees[Ve];if(!ht)throw new Error(Xe);let Le=ht.data;if(Ye*this.stride>=Le.length)throw new Error(Xe);let xe=this.options.radius/(this.options.extent*Math.pow(2,Ve-1)),Se=ht.within(Le[Ye*this.stride],Le[Ye*this.stride+1],xe),lt=[];for(let Gt of Se){let Vt=Gt*this.stride;Le[Vt+4]===Ne&&lt.push(Le[Vt+re]>1?Me(Le,Vt,this.clusterProps):this.points[Le[Vt+W]])}if(lt.length===0)throw new Error(Xe);return lt}getLeaves(Ne,Ye,Ve){let Xe=[];return this._appendLeaves(Xe,Ne,Ye=Ye||10,Ve=Ve||0,0),Xe}getTile(Ne,Ye,Ve){let Xe=this.trees[this._limitZoom(Ne)],ht=Math.pow(2,Ne),{extent:Le,radius:xe}=this.options,Se=xe/Le,lt=(Ve-Se)/ht,Gt=(Ve+1+Se)/ht,Vt={features:[]};return this._addTileFeatures(Xe.range((Ye-Se)/ht,lt,(Ye+1+Se)/ht,Gt),Xe.data,Ye,Ve,ht,Vt),Ye===0&&this._addTileFeatures(Xe.range(1-Se/ht,lt,1,Gt),Xe.data,ht,Ve,ht,Vt),Ye===ht-1&&this._addTileFeatures(Xe.range(0,lt,Se/ht,Gt),Xe.data,-1,Ve,ht,Vt),Vt.features.length?Vt:null}getClusterExpansionZoom(Ne){let Ye=this._getOriginZoom(Ne)-1;for(;Ye<=this.options.maxZoom;){let Ve=this.getChildren(Ne);if(Ye++,Ve.length!==1)break;Ne=Ve[0].properties.cluster_id}return Ye}_appendLeaves(Ne,Ye,Ve,Xe,ht){let Le=this.getChildren(Ye);for(let xe of Le){let Se=xe.properties;if(Se&&Se.cluster?ht+Se.point_count<=Xe?ht+=Se.point_count:ht=this._appendLeaves(Ne,Se.cluster_id,Ve,Xe,ht):ht<Xe?ht++:Ne.push(xe),Ne.length===Ve)break}return ht}_createTree(Ne){let Ye=new i.av(Ne.length/this.stride|0,this.options.nodeSize,Float32Array);for(let Ve=0;Ve<Ne.length;Ve+=this.stride)Ye.add(Ne[Ve],Ne[Ve+1]);return Ye.finish(),Ye.data=Ne,Ye}_addTileFeatures(Ne,Ye,Ve,Xe,ht,Le){for(let xe of Ne){let Se=xe*this.stride,lt=Ye[Se+re]>1,Gt,Vt,ar;if(lt)Gt=ke(Ye,Se,this.clusterProps),Vt=Ye[Se],ar=Ye[Se+1];else{let jr=this.points[Ye[Se+W]];Gt=jr.properties;let[ri,bi]=jr.geometry.coordinates;Vt=ge(ri),ar=ie(bi)}let Qr={type:1,geometry:[[Math.round(this.options.extent*(Vt*ht-Ve)),Math.round(this.options.extent*(ar*ht-Xe))]],tags:Gt},ai;ai=lt||this.options.generateId?Ye[Se+W]:this.points[Ye[Se+W]].id,ai!==void 0&&(Qr.id=ai),Le.features.push(Qr)}}_limitZoom(Ne){return Math.max(this.options.minZoom,Math.min(Math.floor(+Ne),this.options.maxZoom+1))}_cluster(Ne,Ye){let{radius:Ve,extent:Xe,reduce:ht,minPoints:Le}=this.options,xe=Ve/(Xe*Math.pow(2,Ye)),Se=Ne.data,lt=[],Gt=this.stride;for(let Vt=0;Vt<Se.length;Vt+=Gt){if(Se[Vt+2]<=Ye)continue;Se[Vt+2]=Ye;let ar=Se[Vt],Qr=Se[Vt+1],ai=Ne.within(Se[Vt],Se[Vt+1],xe),jr=Se[Vt+re],ri=jr;for(let bi of ai){let nn=bi*Gt;Se[nn+2]>Ye&&(ri+=Se[nn+re])}if(ri>jr&&ri>=Le){let bi,nn=ar*jr,Wi=Qr*jr,Ni=-1,_n=((Vt/Gt|0)<<5)+(Ye+1)+this.points.length;for(let $i of ai){let zn=$i*Gt;if(Se[zn+2]<=Ye)continue;Se[zn+2]=Ye;let Wn=Se[zn+re];nn+=Se[zn]*Wn,Wi+=Se[zn+1]*Wn,Se[zn+4]=_n,ht&&(bi||(bi=this._map(Se,Vt,!0),Ni=this.clusterProps.length,this.clusterProps.push(bi)),ht(bi,this._map(Se,zn)))}Se[Vt+4]=_n,lt.push(nn/ri,Wi/ri,1/0,_n,-1,ri),ht&&lt.push(Ni)}else{for(let bi=0;bi<Gt;bi++)lt.push(Se[Vt+bi]);if(ri>1)for(let bi of ai){let nn=bi*Gt;if(!(Se[nn+2]<=Ye)){Se[nn+2]=Ye;for(let Wi=0;Wi<Gt;Wi++)lt.push(Se[nn+Wi])}}}}return lt}_getOriginId(Ne){return Ne-this.points.length>>5}_getOriginZoom(Ne){return(Ne-this.points.length)%32}_map(Ne,Ye,Ve){if(Ne[Ye+re]>1){let Le=this.clusterProps[Ne[Ye+ae]];return Ve?Object.assign({},Le):Le}let Xe=this.points[Ne[Ye+W]].properties,ht=this.options.map(Xe);return Ve&&ht===Xe?Object.assign({},ht):ht}}function Me(ut,Ne,Ye){return{type:"Feature",id:ut[Ne+W],properties:ke(ut,Ne,Ye),geometry:{type:"Point",coordinates:[(Ve=ut[Ne],360*(Ve-.5)),Te(ut[Ne+1])]}};var Ve}function ke(ut,Ne,Ye){let Ve=ut[Ne+re],Xe=Ve>=1e4?`${Math.round(Ve/1e3)}k`:Ve>=1e3?Math.round(Ve/100)/10+"k":Ve,ht=ut[Ne+ae],Le=ht===-1?{}:Object.assign({},Ye[ht]);return Object.assign(Le,{cluster:!0,cluster_id:ut[Ne+W],point_count:Ve,point_count_abbreviated:Xe})}function ge(ut){return ut/360+.5}function ie(ut){let Ne=Math.sin(ut*Math.PI/180),Ye=.5-.25*Math.log((1+Ne)/(1-Ne))/Math.PI;return Ye<0?0:Ye>1?1:Ye}function Te(ut){let Ne=(180-360*ut)*Math.PI/180;return 360*Math.atan(Math.exp(Ne))/Math.PI-90}function Ee(ut,Ne,Ye,Ve){let Xe=Ve,ht=Ne+(Ye-Ne>>1),Le,xe=Ye-Ne,Se=ut[Ne],lt=ut[Ne+1],Gt=ut[Ye],Vt=ut[Ye+1];for(let ar=Ne+3;ar<Ye;ar+=3){let Qr=Ae(ut[ar],ut[ar+1],Se,lt,Gt,Vt);if(Qr>Xe)Le=ar,Xe=Qr;else if(Qr===Xe){let ai=Math.abs(ar-ht);ai<xe&&(Le=ar,xe=ai)}}Xe>Ve&&(Le-Ne>3&&Ee(ut,Ne,Le,Ve),ut[Le+2]=Xe,Ye-Le>3&&Ee(ut,Le,Ye,Ve))}function Ae(ut,Ne,Ye,Ve,Xe,ht){let Le=Xe-Ye,xe=ht-Ve;if(Le!==0||xe!==0){let Se=((ut-Ye)*Le+(Ne-Ve)*xe)/(Le*Le+xe*xe);Se>1?(Ye=Xe,Ve=ht):Se>0&&(Ye+=Le*Se,Ve+=xe*Se)}return Le=ut-Ye,xe=Ne-Ve,Le*Le+xe*xe}function ze(ut,Ne,Ye,Ve){let Xe={id:ut==null?null:ut,type:Ne,geometry:Ye,tags:Ve,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Ne==="Point"||Ne==="MultiPoint"||Ne==="LineString")Ce(Xe,Ye);else if(Ne==="Polygon")Ce(Xe,Ye[0]);else if(Ne==="MultiLineString")for(let ht of Ye)Ce(Xe,ht);else if(Ne==="MultiPolygon")for(let ht of Ye)Ce(Xe,ht[0]);return Xe}function Ce(ut,Ne){for(let Ye=0;Ye<Ne.length;Ye+=3)ut.minX=Math.min(ut.minX,Ne[Ye]),ut.minY=Math.min(ut.minY,Ne[Ye+1]),ut.maxX=Math.max(ut.maxX,Ne[Ye]),ut.maxY=Math.max(ut.maxY,Ne[Ye+1])}function me(ut,Ne,Ye,Ve){if(!Ne.geometry)return;let Xe=Ne.geometry.coordinates;if(Xe&&Xe.length===0)return;let ht=Ne.geometry.type,Le=Math.pow(Ye.tolerance/((1<<Ye.maxZoom)*Ye.extent),2),xe=[],Se=Ne.id;if(Ye.promoteId?Se=Ne.properties[Ye.promoteId]:Ye.generateId&&(Se=Ve||0),ht==="Point")Re(Xe,xe);else if(ht==="MultiPoint")for(let lt of Xe)Re(lt,xe);else if(ht==="LineString")ce(Xe,xe,Le,!1);else if(ht==="MultiLineString"){if(Ye.lineMetrics){for(let lt of Xe)xe=[],ce(lt,xe,Le,!1),ut.push(ze(Se,"LineString",xe,Ne.properties));return}Ge(Xe,xe,Le,!1)}else if(ht==="Polygon")Ge(Xe,xe,Le,!0);else{if(ht!=="MultiPolygon"){if(ht==="GeometryCollection"){for(let lt of Ne.geometry.geometries)me(ut,{id:Se,geometry:lt,properties:Ne.properties},Ye,Ve);return}throw new Error("Input data is not a valid GeoJSON object.")}for(let lt of Xe){let Gt=[];Ge(lt,Gt,Le,!0),xe.push(Gt)}}ut.push(ze(Se,ht,xe,Ne.properties))}function Re(ut,Ne){Ne.push(nt(ut[0]),ct(ut[1]),0)}function ce(ut,Ne,Ye,Ve){let Xe,ht,Le=0;for(let Se=0;Se<ut.length;Se++){let lt=nt(ut[Se][0]),Gt=ct(ut[Se][1]);Ne.push(lt,Gt,0),Se>0&&(Le+=Ve?(Xe*Gt-lt*ht)/2:Math.sqrt(Math.pow(lt-Xe,2)+Math.pow(Gt-ht,2))),Xe=lt,ht=Gt}let xe=Ne.length-3;Ne[2]=1,Ee(Ne,0,xe,Ye),Ne[xe+2]=1,Ne.size=Math.abs(Le),Ne.start=0,Ne.end=Ne.size}function Ge(ut,Ne,Ye,Ve){for(let Xe=0;Xe<ut.length;Xe++){let ht=[];ce(ut[Xe],ht,Ye,Ve),Ne.push(ht)}}function nt(ut){return ut/360+.5}function ct(ut){let Ne=Math.sin(ut*Math.PI/180),Ye=.5-.25*Math.log((1+Ne)/(1-Ne))/Math.PI;return Ye<0?0:Ye>1?1:Ye}function qt(ut,Ne,Ye,Ve,Xe,ht,Le,xe){if(Ve/=Ne,ht>=(Ye/=Ne)&&Le<Ve)return ut;if(Le<Ye||ht>=Ve)return null;let Se=[];for(let lt of ut){let Gt=lt.geometry,Vt=lt.type,ar=Xe===0?lt.minX:lt.minY,Qr=Xe===0?lt.maxX:lt.maxY;if(ar>=Ye&&Qr<Ve){Se.push(lt);continue}if(Qr<Ye||ar>=Ve)continue;let ai=[];if(Vt==="Point"||Vt==="MultiPoint")rt(Gt,ai,Ye,Ve,Xe);else if(Vt==="LineString")ot(Gt,ai,Ye,Ve,Xe,!1,xe.lineMetrics);else if(Vt==="MultiLineString")kt(Gt,ai,Ye,Ve,Xe,!1);else if(Vt==="Polygon")kt(Gt,ai,Ye,Ve,Xe,!0);else if(Vt==="MultiPolygon")for(let jr of Gt){let ri=[];kt(jr,ri,Ye,Ve,Xe,!0),ri.length&&ai.push(ri)}if(ai.length){if(xe.lineMetrics&&Vt==="LineString"){for(let jr of ai)Se.push(ze(lt.id,Vt,jr,lt.tags));continue}Vt!=="LineString"&&Vt!=="MultiLineString"||(ai.length===1?(Vt="LineString",ai=ai[0]):Vt="MultiLineString"),Vt!=="Point"&&Vt!=="MultiPoint"||(Vt=ai.length===3?"Point":"MultiPoint"),Se.push(ze(lt.id,Vt,ai,lt.tags))}}return Se.length?Se:null}function rt(ut,Ne,Ye,Ve,Xe){for(let ht=0;ht<ut.length;ht+=3){let Le=ut[ht+Xe];Le>=Ye&&Le<=Ve&&Ct(Ne,ut[ht],ut[ht+1],ut[ht+2])}}function ot(ut,Ne,Ye,Ve,Xe,ht,Le){let xe=Rt(ut),Se=Xe===0?Yt:xr,lt,Gt,Vt=ut.start;for(let ri=0;ri<ut.length-3;ri+=3){let bi=ut[ri],nn=ut[ri+1],Wi=ut[ri+2],Ni=ut[ri+3],_n=ut[ri+4],$i=Xe===0?bi:nn,zn=Xe===0?Ni:_n,Wn=!1;Le&&(lt=Math.sqrt(Math.pow(bi-Ni,2)+Math.pow(nn-_n,2))),$i<Ye?zn>Ye&&(Gt=Se(xe,bi,nn,Ni,_n,Ye),Le&&(xe.start=Vt+lt*Gt)):$i>Ve?zn<Ve&&(Gt=Se(xe,bi,nn,Ni,_n,Ve),Le&&(xe.start=Vt+lt*Gt)):Ct(xe,bi,nn,Wi),zn<Ye&&$i>=Ye&&(Gt=Se(xe,bi,nn,Ni,_n,Ye),Wn=!0),zn>Ve&&$i<=Ve&&(Gt=Se(xe,bi,nn,Ni,_n,Ve),Wn=!0),!ht&&Wn&&(Le&&(xe.end=Vt+lt*Gt),Ne.push(xe),xe=Rt(ut)),Le&&(Vt+=lt)}let ar=ut.length-3,Qr=ut[ar],ai=ut[ar+1],jr=Xe===0?Qr:ai;jr>=Ye&&jr<=Ve&&Ct(xe,Qr,ai,ut[ar+2]),ar=xe.length-3,ht&&ar>=3&&(xe[ar]!==xe[0]||xe[ar+1]!==xe[1])&&Ct(xe,xe[0],xe[1],xe[2]),xe.length&&Ne.push(xe)}function Rt(ut){let Ne=[];return Ne.size=ut.size,Ne.start=ut.start,Ne.end=ut.end,Ne}function kt(ut,Ne,Ye,Ve,Xe,ht){for(let Le of ut)ot(Le,Ne,Ye,Ve,Xe,ht,!1)}function Ct(ut,Ne,Ye,Ve){ut.push(Ne,Ye,Ve)}function Yt(ut,Ne,Ye,Ve,Xe,ht){let Le=(ht-Ne)/(Ve-Ne);return Ct(ut,ht,Ye+(Xe-Ye)*Le,1),Le}function xr(ut,Ne,Ye,Ve,Xe,ht){let Le=(ht-Ye)/(Xe-Ye);return Ct(ut,Ne+(Ve-Ne)*Le,ht,1),Le}function er(ut,Ne){let Ye=[];for(let Ve=0;Ve<ut.length;Ve++){let Xe=ut[Ve],ht=Xe.type,Le;if(ht==="Point"||ht==="MultiPoint"||ht==="LineString")Le=Ke(Xe.geometry,Ne);else if(ht==="MultiLineString"||ht==="Polygon"){Le=[];for(let xe of Xe.geometry)Le.push(Ke(xe,Ne))}else if(ht==="MultiPolygon"){Le=[];for(let xe of Xe.geometry){let Se=[];for(let lt of xe)Se.push(Ke(lt,Ne));Le.push(Se)}}Ye.push(ze(Xe.id,ht,Le,Xe.tags))}return Ye}function Ke(ut,Ne){let Ye=[];Ye.size=ut.size,ut.start!==void 0&&(Ye.start=ut.start,Ye.end=ut.end);for(let Ve=0;Ve<ut.length;Ve+=3)Ye.push(ut[Ve]+Ne,ut[Ve+1],ut[Ve+2]);return Ye}function xt(ut,Ne){if(ut.transformed)return ut;let Ye=1<<ut.z,Ve=ut.x,Xe=ut.y;for(let ht of ut.features){let Le=ht.geometry,xe=ht.type;if(ht.geometry=[],xe===1)for(let Se=0;Se<Le.length;Se+=2)ht.geometry.push(bt(Le[Se],Le[Se+1],Ne,Ye,Ve,Xe));else for(let Se=0;Se<Le.length;Se++){let lt=[];for(let Gt=0;Gt<Le[Se].length;Gt+=2)lt.push(bt(Le[Se][Gt],Le[Se][Gt+1],Ne,Ye,Ve,Xe));ht.geometry.push(lt)}}return ut.transformed=!0,ut}function bt(ut,Ne,Ye,Ve,Xe,ht){return[Math.round(Ye*(ut*Ve-Xe)),Math.round(Ye*(Ne*Ve-ht))]}function Lt(ut,Ne,Ye,Ve,Xe){let ht=Ne===Xe.maxZoom?0:Xe.tolerance/((1<<Ne)*Xe.extent),Le={features:[],numPoints:0,numSimplified:0,numFeatures:ut.length,source:null,x:Ye,y:Ve,z:Ne,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0};for(let xe of ut)St(Le,xe,ht,Xe);return Le}function St(ut,Ne,Ye,Ve){let Xe=Ne.geometry,ht=Ne.type,Le=[];if(ut.minX=Math.min(ut.minX,Ne.minX),ut.minY=Math.min(ut.minY,Ne.minY),ut.maxX=Math.max(ut.maxX,Ne.maxX),ut.maxY=Math.max(ut.maxY,Ne.maxY),ht==="Point"||ht==="MultiPoint")for(let xe=0;xe<Xe.length;xe+=3)Le.push(Xe[xe],Xe[xe+1]),ut.numPoints++,ut.numSimplified++;else if(ht==="LineString")Et(Le,Xe,ut,Ye,!1,!1);else if(ht==="MultiLineString"||ht==="Polygon")for(let xe=0;xe<Xe.length;xe++)Et(Le,Xe[xe],ut,Ye,ht==="Polygon",xe===0);else if(ht==="MultiPolygon")for(let xe=0;xe<Xe.length;xe++){let Se=Xe[xe];for(let lt=0;lt<Se.length;lt++)Et(Le,Se[lt],ut,Ye,!0,lt===0)}if(Le.length){let xe=Ne.tags||null;if(ht==="LineString"&&Ve.lineMetrics){xe={};for(let lt in Ne.tags)xe[lt]=Ne.tags[lt];xe.mapbox_clip_start=Xe.start/Xe.size,xe.mapbox_clip_end=Xe.end/Xe.size}let Se={geometry:Le,type:ht==="Polygon"||ht==="MultiPolygon"?3:ht==="LineString"||ht==="MultiLineString"?2:1,tags:xe};Ne.id!==null&&(Se.id=Ne.id),ut.features.push(Se)}}function Et(ut,Ne,Ye,Ve,Xe,ht){let Le=Ve*Ve;if(Ve>0&&Ne.size<(Xe?Le:Ve))return void(Ye.numPoints+=Ne.length/3);let xe=[];for(let Se=0;Se<Ne.length;Se+=3)(Ve===0||Ne[Se+2]>Le)&&(Ye.numSimplified++,xe.push(Ne[Se],Ne[Se+1])),Ye.numPoints++;Xe&&function(Se,lt){let Gt=0;for(let Vt=0,ar=Se.length,Qr=ar-2;Vt<ar;Qr=Vt,Vt+=2)Gt+=(Se[Vt]-Se[Qr])*(Se[Vt+1]+Se[Qr+1]);if(Gt>0===lt)for(let Vt=0,ar=Se.length;Vt<ar/2;Vt+=2){let Qr=Se[Vt],ai=Se[Vt+1];Se[Vt]=Se[ar-2-Vt],Se[Vt+1]=Se[ar-1-Vt],Se[ar-2-Vt]=Qr,Se[ar-1-Vt]=ai}}(xe,ht),ut.push(xe)}let dt={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0};class Ht{constructor(Ne,Ye){let Ve=(Ye=this.options=function(ht,Le){for(let xe in Le)ht[xe]=Le[xe];return ht}(Object.create(dt),Ye)).debug;if(Ve&&console.time("preprocess data"),Ye.maxZoom<0||Ye.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(Ye.promoteId&&Ye.generateId)throw new Error("promoteId and generateId cannot be used together.");let Xe=function(ht,Le){let xe=[];if(ht.type==="FeatureCollection")for(let Se=0;Se<ht.features.length;Se++)me(xe,ht.features[Se],Le,Se);else me(xe,ht.type==="Feature"?ht:{geometry:ht},Le);return xe}(Ne,Ye);this.tiles={},this.tileCoords=[],Ve&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Ye.indexMaxZoom,Ye.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Xe=function(ht,Le){let xe=Le.buffer/Le.extent,Se=ht,lt=qt(ht,1,-1-xe,xe,0,-1,2,Le),Gt=qt(ht,1,1-xe,2+xe,0,-1,2,Le);return(lt||Gt)&&(Se=qt(ht,1,-xe,1+xe,0,-1,2,Le)||[],lt&&(Se=er(lt,1).concat(Se)),Gt&&(Se=Se.concat(er(Gt,-1)))),Se}(Xe,Ye),Xe.length&&this.splitTile(Xe,0,0,0),Ve&&(Xe.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)))}splitTile(Ne,Ye,Ve,Xe,ht,Le,xe){let Se=[Ne,Ye,Ve,Xe],lt=this.options,Gt=lt.debug;for(;Se.length;){Xe=Se.pop(),Ve=Se.pop(),Ye=Se.pop(),Ne=Se.pop();let Vt=1<<Ye,ar=$t(Ye,Ve,Xe),Qr=this.tiles[ar];if(!Qr&&(Gt>1&&console.time("creation"),Qr=this.tiles[ar]=Lt(Ne,Ye,Ve,Xe,lt),this.tileCoords.push({z:Ye,x:Ve,y:Xe}),Gt)){Gt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Ye,Ve,Xe,Qr.numFeatures,Qr.numPoints,Qr.numSimplified),console.timeEnd("creation"));let Wn=`z${Ye}`;this.stats[Wn]=(this.stats[Wn]||0)+1,this.total++}if(Qr.source=Ne,ht==null){if(Ye===lt.indexMaxZoom||Qr.numPoints<=lt.indexMaxPoints)continue}else{if(Ye===lt.maxZoom||Ye===ht)continue;if(ht!=null){let Wn=ht-Ye;if(Ve!==Le>>Wn||Xe!==xe>>Wn)continue}}if(Qr.source=null,Ne.length===0)continue;Gt>1&&console.time("clipping");let ai=.5*lt.buffer/lt.extent,jr=.5-ai,ri=.5+ai,bi=1+ai,nn=null,Wi=null,Ni=null,_n=null,$i=qt(Ne,Vt,Ve-ai,Ve+ri,0,Qr.minX,Qr.maxX,lt),zn=qt(Ne,Vt,Ve+jr,Ve+bi,0,Qr.minX,Qr.maxX,lt);Ne=null,$i&&(nn=qt($i,Vt,Xe-ai,Xe+ri,1,Qr.minY,Qr.maxY,lt),Wi=qt($i,Vt,Xe+jr,Xe+bi,1,Qr.minY,Qr.maxY,lt),$i=null),zn&&(Ni=qt(zn,Vt,Xe-ai,Xe+ri,1,Qr.minY,Qr.maxY,lt),_n=qt(zn,Vt,Xe+jr,Xe+bi,1,Qr.minY,Qr.maxY,lt),zn=null),Gt>1&&console.timeEnd("clipping"),Se.push(nn||[],Ye+1,2*Ve,2*Xe),Se.push(Wi||[],Ye+1,2*Ve,2*Xe+1),Se.push(Ni||[],Ye+1,2*Ve+1,2*Xe),Se.push(_n||[],Ye+1,2*Ve+1,2*Xe+1)}}getTile(Ne,Ye,Ve){Ne=+Ne,Ye=+Ye,Ve=+Ve;let Xe=this.options,{extent:ht,debug:Le}=Xe;if(Ne<0||Ne>24)return null;let xe=1<<Ne,Se=$t(Ne,Ye=Ye+xe&xe-1,Ve);if(this.tiles[Se])return xt(this.tiles[Se],ht);Le>1&&console.log("drilling down to z%d-%d-%d",Ne,Ye,Ve);let lt,Gt=Ne,Vt=Ye,ar=Ve;for(;!lt&&Gt>0;)Gt--,Vt>>=1,ar>>=1,lt=this.tiles[$t(Gt,Vt,ar)];return lt&&lt.source?(Le>1&&(console.log("found parent tile z%d-%d-%d",Gt,Vt,ar),console.time("drilling down")),this.splitTile(lt.source,Gt,Vt,ar,Ne,Ye,Ve),Le>1&&console.timeEnd("drilling down"),this.tiles[Se]?xt(this.tiles[Se],ht):null):null}}function $t(ut,Ne,Ye){return 32*((1<<ut)*Ye+Ne)+ut}function fr(ut,Ne){return Ne?ut.properties[Ne]:ut.id}function _r(ut,Ne){if(ut==null)return!0;if(ut.type==="Feature")return fr(ut,Ne)!=null;if(ut.type==="FeatureCollection"){let Ye=new Set;for(let Ve of ut.features){let Xe=fr(Ve,Ne);if(Xe==null||Ye.has(Xe))return!1;Ye.add(Xe)}return!0}return!1}function Br(ut,Ne){let Ye=new Map;if(ut!=null)if(ut.type==="Feature")Ye.set(fr(ut,Ne),ut);else for(let Ve of ut.features)Ye.set(fr(Ve,Ne),Ve);return Ye}class Or extends u{constructor(){super(...arguments),this._dataUpdateable=new Map}loadVectorTile(Ne,Ye){return i._(this,void 0,void 0,function*(){let Ve=Ne.tileID.canonical;if(!this._geoJSONIndex)throw new Error("Unable to parse the data into a cluster or geojson");let Xe=this._geoJSONIndex.getTile(Ve.z,Ve.x,Ve.y);if(!Xe)return null;let ht=new class{constructor(xe){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=i.X,this.length=xe.length,this._features=xe}feature(xe){return new class{constructor(Se){this._feature=Se,this.extent=i.X,this.type=Se.type,this.properties=Se.tags,"id"in Se&&!isNaN(Se.id)&&(this.id=parseInt(Se.id,10))}loadGeometry(){if(this._feature.type===1){let Se=[];for(let lt of this._feature.geometry)Se.push([new i.P(lt[0],lt[1])]);return Se}{let Se=[];for(let lt of this._feature.geometry){let Gt=[];for(let Vt of lt)Gt.push(new i.P(Vt[0],Vt[1]));Se.push(Gt)}return Se}}toGeoJSON(Se,lt,Gt){return v.call(this,Se,lt,Gt)}}(this._features[xe])}}(Xe.features),Le=H(ht);return Le.byteOffset===0&&Le.byteLength===Le.buffer.byteLength||(Le=new Uint8Array(Le)),{vectorTile:ht,rawData:Le.buffer}})}loadData(Ne){return i._(this,void 0,void 0,function*(){var Ye;(Ye=this._pendingRequest)===null||Ye===void 0||Ye.abort();let Ve=!!(Ne&&Ne.request&&Ne.request.collectResourceTiming)&&new i.bv(Ne.request);this._pendingRequest=new AbortController;try{this._pendingData=this.loadAndProcessGeoJSON(Ne,this._pendingRequest),this._geoJSONIndex=Ne.cluster?new _e(function({superclusterOptions:Le,clusterProperties:xe}){if(!xe||!Le)return Le;let Se={},lt={},Gt={accumulated:null,zoom:0},Vt={properties:null},ar=Object.keys(xe);for(let Qr of ar){let[ai,jr]=xe[Qr],ri=i.bC(jr),bi=i.bC(typeof ai=="string"?[ai,["accumulated"],["get",Qr]]:ai);Se[Qr]=ri.value,lt[Qr]=bi.value}return Le.map=Qr=>{Vt.properties=Qr;let ai={};for(let jr of ar)ai[jr]=Se[jr].evaluate(Gt,Vt);return ai},Le.reduce=(Qr,ai)=>{Vt.properties=ai;for(let jr of ar)Gt.accumulated=Qr[jr],Qr[jr]=lt[jr].evaluate(Gt,Vt)},Le}(Ne)).load((yield this._pendingData).features):(Xe=yield this._pendingData,new Ht(Xe,Ne.geojsonVtOptions)),this.loaded={};let ht={};if(Ve){let Le=Ve.finish();Le&&(ht.resourceTiming={},ht.resourceTiming[Ne.source]=JSON.parse(JSON.stringify(Le)))}return ht}catch(ht){if(delete this._pendingRequest,i.bB(ht))return{abandoned:!0};throw ht}var Xe})}getData(){return i._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Ne){let Ye=this.loaded;return Ye&&Ye[Ne.uid]?super.reloadTile(Ne):this.loadTile(Ne)}loadAndProcessGeoJSON(Ne,Ye){return i._(this,void 0,void 0,function*(){let Ve=yield this.loadGeoJSON(Ne,Ye);if(delete this._pendingRequest,typeof Ve!="object")throw new Error(`Input data given to '${Ne.source}' is not a valid GeoJSON object.`);if(d(Ve,!0),Ne.filter){let Xe=i.bC(Ne.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Xe.result==="error")throw new Error(Xe.value.map(Le=>`${Le.key}: ${Le.message}`).join(", "));Ve={type:"FeatureCollection",features:Ve.features.filter(Le=>Xe.value.evaluate({zoom:0},Le))}}return Ve})}loadGeoJSON(Ne,Ye){return i._(this,void 0,void 0,function*(){let{promoteId:Ve}=Ne;if(Ne.request){let Xe=yield i.h(Ne.request,Ye);return this._dataUpdateable=_r(Xe.data,Ve)?Br(Xe.data,Ve):void 0,Xe.data}if(typeof Ne.data=="string")try{let Xe=JSON.parse(Ne.data);return this._dataUpdateable=_r(Xe,Ve)?Br(Xe,Ve):void 0,Xe}catch(Xe){throw new Error(`Input data given to '${Ne.source}' is not a valid GeoJSON object.`)}if(!Ne.dataDiff)throw new Error(`Input data given to '${Ne.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Ne.source}`);return function(Xe,ht,Le){var xe,Se,lt,Gt;if(ht.removeAll&&Xe.clear(),ht.remove)for(let Vt of ht.remove)Xe.delete(Vt);if(ht.add)for(let Vt of ht.add){let ar=fr(Vt,Le);ar!=null&&Xe.set(ar,Vt)}if(ht.update)for(let Vt of ht.update){let ar=Xe.get(Vt.id);if(ar==null)continue;let Qr=!Vt.removeAllProperties&&(((xe=Vt.removeProperties)===null||xe===void 0?void 0:xe.length)>0||((Se=Vt.addOrUpdateProperties)===null||Se===void 0?void 0:Se.length)>0);if((Vt.newGeometry||Vt.removeAllProperties||Qr)&&(ar=Object.assign({},ar),Xe.set(Vt.id,ar),Qr&&(ar.properties=Object.assign({},ar.properties))),Vt.newGeometry&&(ar.geometry=Vt.newGeometry),Vt.removeAllProperties)ar.properties={};else if(((lt=Vt.removeProperties)===null||lt===void 0?void 0:lt.length)>0)for(let ai of Vt.removeProperties)Object.prototype.hasOwnProperty.call(ar.properties,ai)&&delete ar.properties[ai];if(((Gt=Vt.addOrUpdateProperties)===null||Gt===void 0?void 0:Gt.length)>0)for(let{key:ai,value:jr}of Vt.addOrUpdateProperties)ar.properties[ai]=jr}}(this._dataUpdateable,Ne.dataDiff,Ve),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Ne){return i._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Ne){return this._geoJSONIndex.getClusterExpansionZoom(Ne.clusterId)}getClusterChildren(Ne){return this._geoJSONIndex.getChildren(Ne.clusterId)}getClusterLeaves(Ne){return this._geoJSONIndex.getLeaves(Ne.clusterId,Ne.limit,Ne.offset)}}class Nr{constructor(Ne){this.self=Ne,this.actor=new i.F(Ne),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Ye,Ve)=>{if(this.externalWorkerSourceTypes[Ye])throw new Error(`Worker source with name "${Ye}" already registered.`);this.externalWorkerSourceTypes[Ye]=Ve},this.self.addProtocol=i.bi,this.self.removeProtocol=i.bj,this.self.registerRTLTextPlugin=Ye=>{if(i.bD.isParsed())throw new Error("RTL text plugin already registered.");i.bD.setMethods(Ye)},this.actor.registerMessageHandler("LDT",(Ye,Ve)=>this._getDEMWorkerSource(Ye,Ve.source).loadTile(Ve)),this.actor.registerMessageHandler("RDT",(Ye,Ve)=>i._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Ye,Ve.source).removeTile(Ve)})),this.actor.registerMessageHandler("GCEZ",(Ye,Ve)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Ye,Ve.type,Ve.source).getClusterExpansionZoom(Ve)})),this.actor.registerMessageHandler("GCC",(Ye,Ve)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Ye,Ve.type,Ve.source).getClusterChildren(Ve)})),this.actor.registerMessageHandler("GCL",(Ye,Ve)=>i._(this,void 0,void 0,function*(){return this._getWorkerSource(Ye,Ve.type,Ve.source).getClusterLeaves(Ve)})),this.actor.registerMessageHandler("LD",(Ye,Ve)=>this._getWorkerSource(Ye,Ve.type,Ve.source).loadData(Ve)),this.actor.registerMessageHandler("GD",(Ye,Ve)=>this._getWorkerSource(Ye,Ve.type,Ve.source).getData()),this.actor.registerMessageHandler("LT",(Ye,Ve)=>this._getWorkerSource(Ye,Ve.type,Ve.source).loadTile(Ve)),this.actor.registerMessageHandler("RT",(Ye,Ve)=>this._getWorkerSource(Ye,Ve.type,Ve.source).reloadTile(Ve)),this.actor.registerMessageHandler("AT",(Ye,Ve)=>this._getWorkerSource(Ye,Ve.type,Ve.source).abortTile(Ve)),this.actor.registerMessageHandler("RMT",(Ye,Ve)=>this._getWorkerSource(Ye,Ve.type,Ve.source).removeTile(Ve)),this.actor.registerMessageHandler("RS",(Ye,Ve)=>i._(this,void 0,void 0,function*(){if(!this.workerSources[Ye]||!this.workerSources[Ye][Ve.type]||!this.workerSources[Ye][Ve.type][Ve.source])return;let Xe=this.workerSources[Ye][Ve.type][Ve.source];delete this.workerSources[Ye][Ve.type][Ve.source],Xe.removeSource!==void 0&&Xe.removeSource(Ve)})),this.actor.registerMessageHandler("RM",Ye=>i._(this,void 0,void 0,function*(){delete this.layerIndexes[Ye],delete this.availableImages[Ye],delete this.workerSources[Ye],delete this.demWorkerSources[Ye]})),this.actor.registerMessageHandler("SR",(Ye,Ve)=>i._(this,void 0,void 0,function*(){this.referrer=Ve})),this.actor.registerMessageHandler("SRPS",(Ye,Ve)=>this._syncRTLPluginState(Ye,Ve)),this.actor.registerMessageHandler("IS",(Ye,Ve)=>i._(this,void 0,void 0,function*(){this.self.importScripts(Ve)})),this.actor.registerMessageHandler("SI",(Ye,Ve)=>this._setImages(Ye,Ve)),this.actor.registerMessageHandler("UL",(Ye,Ve)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Ye).update(Ve.layers,Ve.removedIds)})),this.actor.registerMessageHandler("SL",(Ye,Ve)=>i._(this,void 0,void 0,function*(){this._getLayerIndex(Ye).replace(Ve)}))}_setImages(Ne,Ye){return i._(this,void 0,void 0,function*(){this.availableImages[Ne]=Ye;for(let Ve in this.workerSources[Ne]){let Xe=this.workerSources[Ne][Ve];for(let ht in Xe)Xe[ht].availableImages=Ye}})}_syncRTLPluginState(Ne,Ye){return i._(this,void 0,void 0,function*(){if(i.bD.isParsed())return i.bD.getState();if(Ye.pluginStatus!=="loading")return i.bD.setState(Ye),Ye;let Ve=Ye.pluginURL;if(this.self.importScripts(Ve),i.bD.isParsed()){let Xe={pluginStatus:"loaded",pluginURL:Ve};return i.bD.setState(Xe),Xe}throw i.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ve}`)})}_getAvailableImages(Ne){let Ye=this.availableImages[Ne];return Ye||(Ye=[]),Ye}_getLayerIndex(Ne){let Ye=this.layerIndexes[Ne];return Ye||(Ye=this.layerIndexes[Ne]=new a),Ye}_getWorkerSource(Ne,Ye,Ve){if(this.workerSources[Ne]||(this.workerSources[Ne]={}),this.workerSources[Ne][Ye]||(this.workerSources[Ne][Ye]={}),!this.workerSources[Ne][Ye][Ve]){let Xe={sendAsync:(ht,Le)=>(ht.targetMapId=Ne,this.actor.sendAsync(ht,Le))};switch(Ye){case"vector":this.workerSources[Ne][Ye][Ve]=new u(Xe,this._getLayerIndex(Ne),this._getAvailableImages(Ne));break;case"geojson":this.workerSources[Ne][Ye][Ve]=new Or(Xe,this._getLayerIndex(Ne),this._getAvailableImages(Ne));break;default:this.workerSources[Ne][Ye][Ve]=new this.externalWorkerSourceTypes[Ye](Xe,this._getLayerIndex(Ne),this._getAvailableImages(Ne))}}return this.workerSources[Ne][Ye][Ve]}_getDEMWorkerSource(Ne,Ye){return this.demWorkerSources[Ne]||(this.demWorkerSources[Ne]={}),this.demWorkerSources[Ne][Ye]||(this.demWorkerSources[Ne][Ye]=new c),this.demWorkerSources[Ne][Ye]}}return i.i(self)&&(self.worker=new Nr(self)),Nr}),r("index",["exports","./shared"],function(i,a){"use strict";var o="4.7.1";let s,l,u={now:typeof performance!="undefined"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:le=>new Promise((w,B)=>{let Q=requestAnimationFrame(w);le.signal.addEventListener("abort",()=>{cancelAnimationFrame(Q),B(a.c())})}),getImageData(le,w=0){return this.getImageCanvasContext(le).getImageData(-w,-w,le.width+2*w,le.height+2*w)},getImageCanvasContext(le){let w=window.document.createElement("canvas"),B=w.getContext("2d",{willReadFrequently:!0});if(!B)throw new Error("failed to create canvas 2d context");return w.width=le.width,w.height=le.height,B.drawImage(le,0,0,le.width,le.height),B},resolveURL:le=>(s||(s=document.createElement("a")),s.href=le,s.href),hardwareConcurrency:typeof navigator!="undefined"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(l==null&&(l=matchMedia("(prefers-reduced-motion: reduce)")),l.matches)}};class c{static testProp(w){if(!c.docStyle)return w[0];for(let B=0;B<w.length;B++)if(w[B]in c.docStyle)return w[B];return w[0]}static create(w,B,Q){let ee=window.document.createElement(w);return B!==void 0&&(ee.className=B),Q&&Q.appendChild(ee),ee}static createNS(w,B){return window.document.createElementNS(w,B)}static disableDrag(){c.docStyle&&c.selectProp&&(c.userSelect=c.docStyle[c.selectProp],c.docStyle[c.selectProp]="none")}static enableDrag(){c.docStyle&&c.selectProp&&(c.docStyle[c.selectProp]=c.userSelect)}static setTransform(w,B){w.style[c.transformProp]=B}static addEventListener(w,B,Q,ee={}){w.addEventListener(B,Q,"passive"in ee?ee:ee.capture)}static removeEventListener(w,B,Q,ee={}){w.removeEventListener(B,Q,"passive"in ee?ee:ee.capture)}static suppressClickInternal(w){w.preventDefault(),w.stopPropagation(),window.removeEventListener("click",c.suppressClickInternal,!0)}static suppressClick(){window.addEventListener("click",c.suppressClickInternal,!0),window.setTimeout(()=>{window.removeEventListener("click",c.suppressClickInternal,!0)},0)}static getScale(w){let B=w.getBoundingClientRect();return{x:B.width/w.offsetWidth||1,y:B.height/w.offsetHeight||1,boundingClientRect:B}}static getPoint(w,B,Q){let ee=B.boundingClientRect;return new a.P((Q.clientX-ee.left)/B.x-w.clientLeft,(Q.clientY-ee.top)/B.y-w.clientTop)}static mousePos(w,B){let Q=c.getScale(w);return c.getPoint(w,Q,B)}static touchPos(w,B){let Q=[],ee=c.getScale(w);for(let se=0;se<B.length;se++)Q.push(c.getPoint(w,ee,B[se]));return Q}static mouseButton(w){return w.button}static remove(w){w.parentNode&&w.parentNode.removeChild(w)}}c.docStyle=typeof window!="undefined"&&window.document&&window.document.documentElement.style,c.selectProp=c.testProp(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),c.transformProp=c.testProp(["transform","WebkitTransform"]);let f={supported:!1,testSupport:function(le){!v&&d&&(x?b(le):h=le)}},h,d,v=!1,x=!1;function b(le){let w=le.createTexture();le.bindTexture(le.TEXTURE_2D,w);try{if(le.texImage2D(le.TEXTURE_2D,0,le.RGBA,le.RGBA,le.UNSIGNED_BYTE,d),le.isContextLost())return;f.supported=!0}catch(B){}le.deleteTexture(w),v=!0}var p;typeof document!="undefined"&&(d=document.createElement("img"),d.onload=()=>{h&&b(h),h=null,x=!0},d.onerror=()=>{v=!0,h=null},d.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(le){let w,B,Q,ee;le.resetRequestQueue=()=>{w=[],B=0,Q=0,ee={}},le.addThrottleControl=it=>{let yt=Q++;return ee[yt]=it,yt},le.removeThrottleControl=it=>{delete ee[it],qe()},le.getImage=(it,yt,Ot=!0)=>new Promise((Nt,hr)=>{f.supported&&(it.headers||(it.headers={}),it.headers.accept="image/webp,*/*"),a.e(it,{type:"image"}),w.push({abortController:yt,requestParameters:it,supportImageRefresh:Ot,state:"queued",onError:Sr=>{hr(Sr)},onSuccess:Sr=>{Nt(Sr)}}),qe()});let se=it=>a._(this,void 0,void 0,function*(){it.state="running";let{requestParameters:yt,supportImageRefresh:Ot,onError:Nt,onSuccess:hr,abortController:Sr}=it,he=Ot===!1&&!a.i(self)&&!a.g(yt.url)&&(!yt.headers||Object.keys(yt.headers).reduce((Oe,Je)=>Oe&&Je==="accept",!0));B++;let be=he?je(yt,Sr):a.m(yt,Sr);try{let Oe=yield be;delete it.abortController,it.state="completed",Oe.data instanceof HTMLImageElement||a.b(Oe.data)?hr(Oe):Oe.data&&hr({data:yield(Pe=Oe.data,typeof createImageBitmap=="function"?a.d(Pe):a.f(Pe)),cacheControl:Oe.cacheControl,expires:Oe.expires})}catch(Oe){delete it.abortController,Nt(Oe)}finally{B--,qe()}var Pe}),qe=()=>{let it=(()=>{for(let yt of Object.keys(ee))if(ee[yt]())return!0;return!1})()?a.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:a.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let yt=B;yt<it&&w.length>0;yt++){let Ot=w.shift();Ot.abortController.signal.aborted?yt--:se(Ot)}},je=(it,yt)=>new Promise((Ot,Nt)=>{let hr=new Image,Sr=it.url,he=it.credentials;he&&he==="include"?hr.crossOrigin="use-credentials":(he&&he==="same-origin"||!a.s(Sr))&&(hr.crossOrigin="anonymous"),yt.signal.addEventListener("abort",()=>{hr.src="",Nt(a.c())}),hr.fetchPriority="high",hr.onload=()=>{hr.onerror=hr.onload=null,Ot({data:hr})},hr.onerror=()=>{hr.onerror=hr.onload=null,yt.signal.aborted||Nt(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},hr.src=Sr})}(p||(p={})),p.resetRequestQueue();class E{constructor(w){this._transformRequestFn=w}transformRequest(w,B){return this._transformRequestFn&&this._transformRequestFn(w,B)||{url:w}}setTransformRequest(w){this._transformRequestFn=w}}function k(le){var w=new a.A(3);return w[0]=le[0],w[1]=le[1],w[2]=le[2],w}var A,L=function(le,w,B){return le[0]=w[0]-B[0],le[1]=w[1]-B[1],le[2]=w[2]-B[2],le};A=new a.A(3),a.A!=Float32Array&&(A[0]=0,A[1]=0,A[2]=0);var _=function(le){var w=le[0],B=le[1];return w*w+B*B};function C(le){let w=[];if(typeof le=="string")w.push({id:"default",url:le});else if(le&&le.length>0){let B=[];for(let{id:Q,url:ee}of le){let se=`${Q}${ee}`;B.indexOf(se)===-1&&(B.push(se),w.push({id:Q,url:ee}))}}return w}function M(le,w,B){let Q=le.split("?");return Q[0]+=`${w}${B}`,Q.join("?")}(function(){var le=new a.A(2);a.A!=Float32Array&&(le[0]=0,le[1]=0)})();class g{constructor(w,B,Q,ee){this.context=w,this.format=Q,this.texture=w.gl.createTexture(),this.update(B,ee)}update(w,B,Q){let{width:ee,height:se}=w,qe=!(this.size&&this.size[0]===ee&&this.size[1]===se||Q),{context:je}=this,{gl:it}=je;if(this.useMipmap=!!(B&&B.useMipmap),it.bindTexture(it.TEXTURE_2D,this.texture),je.pixelStoreUnpackFlipY.set(!1),je.pixelStoreUnpack.set(1),je.pixelStoreUnpackPremultiplyAlpha.set(this.format===it.RGBA&&(!B||B.premultiply!==!1)),qe)this.size=[ee,se],w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?it.texImage2D(it.TEXTURE_2D,0,this.format,this.format,it.UNSIGNED_BYTE,w):it.texImage2D(it.TEXTURE_2D,0,this.format,ee,se,0,this.format,it.UNSIGNED_BYTE,w.data);else{let{x:yt,y:Ot}=Q||{x:0,y:0};w instanceof HTMLImageElement||w instanceof HTMLCanvasElement||w instanceof HTMLVideoElement||w instanceof ImageData||a.b(w)?it.texSubImage2D(it.TEXTURE_2D,0,yt,Ot,it.RGBA,it.UNSIGNED_BYTE,w):it.texSubImage2D(it.TEXTURE_2D,0,yt,Ot,ee,se,it.RGBA,it.UNSIGNED_BYTE,w.data)}this.useMipmap&&this.isSizePowerOfTwo()&&it.generateMipmap(it.TEXTURE_2D)}bind(w,B,Q){let{context:ee}=this,{gl:se}=ee;se.bindTexture(se.TEXTURE_2D,this.texture),Q!==se.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(Q=se.LINEAR),w!==this.filter&&(se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MAG_FILTER,w),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MIN_FILTER,Q||w),this.filter=w),B!==this.wrap&&(se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_S,B),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_T,B),this.wrap=B)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:w}=this.context;w.deleteTexture(this.texture),this.texture=null}}function P(le){let{userImage:w}=le;return!!(w&&w.render&&w.render())&&(le.data.replace(new Uint8Array(w.data.buffer)),!0)}class T extends a.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new a.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(w){if(this.loaded!==w&&(this.loaded=w,w)){for(let{ids:B,promiseResolve:Q}of this.requestors)Q(this._getImagesForIds(B));this.requestors=[]}}getImage(w){let B=this.images[w];if(B&&!B.data&&B.spriteData){let Q=B.spriteData;B.data=new a.R({width:Q.width,height:Q.height},Q.context.getImageData(Q.x,Q.y,Q.width,Q.height).data),B.spriteData=null}return B}addImage(w,B){if(this.images[w])throw new Error(`Image id ${w} already exist, use updateImage instead`);this._validate(w,B)&&(this.images[w]=B)}_validate(w,B){let Q=!0,ee=B.data||B.spriteData;return this._validateStretch(B.stretchX,ee&&ee.width)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchX" value`))),Q=!1),this._validateStretch(B.stretchY,ee&&ee.height)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "stretchY" value`))),Q=!1),this._validateContent(B.content,B)||(this.fire(new a.j(new Error(`Image "${w}" has invalid "content" value`))),Q=!1),Q}_validateStretch(w,B){if(!w)return!0;let Q=0;for(let ee of w){if(ee[0]<Q||ee[1]<ee[0]||B<ee[1])return!1;Q=ee[1]}return!0}_validateContent(w,B){if(!w)return!0;if(w.length!==4)return!1;let Q=B.spriteData,ee=Q&&Q.width||B.data.width,se=Q&&Q.height||B.data.height;return!(w[0]<0||ee<w[0]||w[1]<0||se<w[1]||w[2]<0||ee<w[2]||w[3]<0||se<w[3]||w[2]<w[0]||w[3]<w[1])}updateImage(w,B,Q=!0){let ee=this.getImage(w);if(Q&&(ee.data.width!==B.data.width||ee.data.height!==B.data.height))throw new Error(`size mismatch between old image (${ee.data.width}x${ee.data.height}) and new image (${B.data.width}x${B.data.height}).`);B.version=ee.version+1,this.images[w]=B,this.updatedImages[w]=!0}removeImage(w){let B=this.images[w];delete this.images[w],delete this.patterns[w],B.userImage&&B.userImage.onRemove&&B.userImage.onRemove()}listImages(){return Object.keys(this.images)}getImages(w){return new Promise((B,Q)=>{let ee=!0;if(!this.isLoaded())for(let se of w)this.images[se]||(ee=!1);this.isLoaded()||ee?B(this._getImagesForIds(w)):this.requestors.push({ids:w,promiseResolve:B})})}_getImagesForIds(w){let B={};for(let Q of w){let ee=this.getImage(Q);ee||(this.fire(new a.k("styleimagemissing",{id:Q})),ee=this.getImage(Q)),ee?B[Q]={data:ee.data.clone(),pixelRatio:ee.pixelRatio,sdf:ee.sdf,version:ee.version,stretchX:ee.stretchX,stretchY:ee.stretchY,content:ee.content,textFitWidth:ee.textFitWidth,textFitHeight:ee.textFitHeight,hasRenderCallback:!!(ee.userImage&&ee.userImage.render)}:a.w(`Image "${Q}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return B}getPixelSize(){let{width:w,height:B}=this.atlasImage;return{width:w,height:B}}getPattern(w){let B=this.patterns[w],Q=this.getImage(w);if(!Q)return null;if(B&&B.position.version===Q.version)return B.position;if(B)B.position.version=Q.version;else{let ee={w:Q.data.width+2,h:Q.data.height+2,x:0,y:0},se=new a.I(ee,Q);this.patterns[w]={bin:ee,position:se}}return this._updatePatternAtlas(),this.patterns[w].position}bind(w){let B=w.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new g(w,this.atlasImage,B.RGBA),this.atlasTexture.bind(B.LINEAR,B.CLAMP_TO_EDGE)}_updatePatternAtlas(){let w=[];for(let se in this.patterns)w.push(this.patterns[se].bin);let{w:B,h:Q}=a.p(w),ee=this.atlasImage;ee.resize({width:B||1,height:Q||1});for(let se in this.patterns){let{bin:qe}=this.patterns[se],je=qe.x+1,it=qe.y+1,yt=this.getImage(se).data,Ot=yt.width,Nt=yt.height;a.R.copy(yt,ee,{x:0,y:0},{x:je,y:it},{width:Ot,height:Nt}),a.R.copy(yt,ee,{x:0,y:Nt-1},{x:je,y:it-1},{width:Ot,height:1}),a.R.copy(yt,ee,{x:0,y:0},{x:je,y:it+Nt},{width:Ot,height:1}),a.R.copy(yt,ee,{x:Ot-1,y:0},{x:je-1,y:it},{width:1,height:Nt}),a.R.copy(yt,ee,{x:0,y:0},{x:je+Ot,y:it},{width:1,height:Nt})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(w){for(let B of w){if(this.callbackDispatchedThisFrame[B])continue;this.callbackDispatchedThisFrame[B]=!0;let Q=this.getImage(B);Q||a.w(`Image with ID: "${B}" was not found`),P(Q)&&this.updateImage(B,Q)}}}let F=1e20;function q(le,w,B,Q,ee,se,qe,je,it){for(let yt=w;yt<w+Q;yt++)V(le,B*se+yt,se,ee,qe,je,it);for(let yt=B;yt<B+ee;yt++)V(le,yt*se+w,1,Q,qe,je,it)}function V(le,w,B,Q,ee,se,qe){se[0]=0,qe[0]=-F,qe[1]=F,ee[0]=le[w];for(let je=1,it=0,yt=0;je<Q;je++){ee[je]=le[w+je*B];let Ot=je*je;do{let Nt=se[it];yt=(ee[je]-ee[Nt]+Ot-Nt*Nt)/(je-Nt)/2}while(yt<=qe[it]&&--it>-1);it++,se[it]=je,qe[it]=yt,qe[it+1]=F}for(let je=0,it=0;je<Q;je++){for(;qe[it+1]<je;)it++;let yt=se[it],Ot=je-yt;le[w+je*B]=ee[yt]+Ot*Ot}}class H{constructor(w,B){this.requestManager=w,this.localIdeographFontFamily=B,this.entries={}}setURL(w){this.url=w}getGlyphs(w){return a._(this,void 0,void 0,function*(){let B=[];for(let se in w)for(let qe of w[se])B.push(this._getAndCacheGlyphsPromise(se,qe));let Q=yield Promise.all(B),ee={};for(let{stack:se,id:qe,glyph:je}of Q)ee[se]||(ee[se]={}),ee[se][qe]=je&&{id:je.id,bitmap:je.bitmap.clone(),metrics:je.metrics};return ee})}_getAndCacheGlyphsPromise(w,B){return a._(this,void 0,void 0,function*(){let Q=this.entries[w];Q||(Q=this.entries[w]={glyphs:{},requests:{},ranges:{}});let ee=Q.glyphs[B];if(ee!==void 0)return{stack:w,id:B,glyph:ee};if(ee=this._tinySDF(Q,w,B),ee)return Q.glyphs[B]=ee,{stack:w,id:B,glyph:ee};let se=Math.floor(B/256);if(256*se>65535)throw new Error("glyphs > 65535 not supported");if(Q.ranges[se])return{stack:w,id:B,glyph:ee};if(!this.url)throw new Error("glyphsUrl is not set");if(!Q.requests[se]){let je=H.loadGlyphRange(w,se,this.url,this.requestManager);Q.requests[se]=je}let qe=yield Q.requests[se];for(let je in qe)this._doesCharSupportLocalGlyph(+je)||(Q.glyphs[+je]=qe[+je]);return Q.ranges[se]=!0,{stack:w,id:B,glyph:qe[B]||null}})}_doesCharSupportLocalGlyph(w){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(w))}_tinySDF(w,B,Q){let ee=this.localIdeographFontFamily;if(!ee||!this._doesCharSupportLocalGlyph(Q))return;let se=w.tinySDF;if(!se){let je="400";/bold/i.test(B)?je="900":/medium/i.test(B)?je="500":/light/i.test(B)&&(je="200"),se=w.tinySDF=new H.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:ee,fontWeight:je})}let qe=se.draw(String.fromCharCode(Q));return{id:Q,bitmap:new a.o({width:qe.width||60,height:qe.height||60},qe.data),metrics:{width:qe.glyphWidth/2||24,height:qe.glyphHeight/2||24,left:qe.glyphLeft/2+.5||0,top:qe.glyphTop/2-27.5||-8,advance:qe.glyphAdvance/2||24,isDoubleResolution:!0}}}}H.loadGlyphRange=function(le,w,B,Q){return a._(this,void 0,void 0,function*(){let ee=256*w,se=ee+255,qe=Q.transformRequest(B.replace("{fontstack}",le).replace("{range}",`${ee}-${se}`),"Glyphs"),je=yield a.l(qe,new AbortController);if(!je||!je.data)throw new Error(`Could not load glyph range. range: ${w}, ${ee}-${se}`);let it={};for(let yt of a.n(je.data))it[yt.id]=yt;return it})},H.TinySDF=class{constructor({fontSize:le=24,buffer:w=3,radius:B=8,cutoff:Q=.25,fontFamily:ee="sans-serif",fontWeight:se="normal",fontStyle:qe="normal"}={}){this.buffer=w,this.cutoff=Q,this.radius=B;let je=this.size=le+4*w,it=this._createCanvas(je),yt=this.ctx=it.getContext("2d",{willReadFrequently:!0});yt.font=`${qe} ${se} ${le}px ${ee}`,yt.textBaseline="alphabetic",yt.textAlign="left",yt.fillStyle="black",this.gridOuter=new Float64Array(je*je),this.gridInner=new Float64Array(je*je),this.f=new Float64Array(je),this.z=new Float64Array(je+1),this.v=new Uint16Array(je)}_createCanvas(le){let w=document.createElement("canvas");return w.width=w.height=le,w}draw(le){let{width:w,actualBoundingBoxAscent:B,actualBoundingBoxDescent:Q,actualBoundingBoxLeft:ee,actualBoundingBoxRight:se}=this.ctx.measureText(le),qe=Math.ceil(B),je=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(se-ee))),it=Math.min(this.size-this.buffer,qe+Math.ceil(Q)),yt=je+2*this.buffer,Ot=it+2*this.buffer,Nt=Math.max(yt*Ot,0),hr=new Uint8ClampedArray(Nt),Sr={data:hr,width:yt,height:Ot,glyphWidth:je,glyphHeight:it,glyphTop:qe,glyphLeft:0,glyphAdvance:w};if(je===0||it===0)return Sr;let{ctx:he,buffer:be,gridInner:Pe,gridOuter:Oe}=this;he.clearRect(be,be,je,it),he.fillText(le,be,be+qe);let Je=he.getImageData(be,be,je,it);Oe.fill(F,0,Nt),Pe.fill(0,0,Nt);for(let He=0;He<it;He++)for(let et=0;et<je;et++){let Mt=Je.data[4*(He*je+et)+3]/255;if(Mt===0)continue;let Dt=(He+be)*yt+et+be;if(Mt===1)Oe[Dt]=0,Pe[Dt]=F;else{let Ut=.5-Mt;Oe[Dt]=Ut>0?Ut*Ut:0,Pe[Dt]=Ut<0?Ut*Ut:0}}q(Oe,0,0,yt,Ot,yt,this.f,this.v,this.z),q(Pe,be,be,je,it,yt,this.f,this.v,this.z);for(let He=0;He<Nt;He++){let et=Math.sqrt(Oe[He])-Math.sqrt(Pe[He]);hr[He]=Math.round(255-255*(et/this.radius+this.cutoff))}return Sr}};class X{constructor(){this.specification=a.v.light.position}possiblyEvaluate(w,B){return a.x(w.expression.evaluate(B))}interpolate(w,B,Q){return{x:a.y.number(w.x,B.x,Q),y:a.y.number(w.y,B.y,Q),z:a.y.number(w.z,B.z,Q)}}}let G;class N extends a.E{constructor(w){super(),G=G||new a.q({anchor:new a.D(a.v.light.anchor),position:new X,color:new a.D(a.v.light.color),intensity:new a.D(a.v.light.intensity)}),this._transitionable=new a.T(G),this.setLight(w),this._transitioning=this._transitionable.untransitioned()}getLight(){return this._transitionable.serialize()}setLight(w,B={}){if(!this._validate(a.r,w,B))for(let Q in w){let ee=w[Q];Q.endsWith("-transition")?this._transitionable.setTransition(Q.slice(0,-11),ee):this._transitionable.setValue(Q,ee)}}updateTransitions(w){this._transitioning=this._transitionable.transitioned(w,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(w){this.properties=this._transitioning.possiblyEvaluate(w)}_validate(w,B,Q){return(!Q||Q.validate!==!1)&&a.t(this,w.call(a.u,{value:B,style:{glyphs:!0,sprite:!0},styleSpec:a.v}))}}let W=new a.q({"sky-color":new a.D(a.v.sky["sky-color"]),"horizon-color":new a.D(a.v.sky["horizon-color"]),"fog-color":new a.D(a.v.sky["fog-color"]),"fog-ground-blend":new a.D(a.v.sky["fog-ground-blend"]),"horizon-fog-blend":new a.D(a.v.sky["horizon-fog-blend"]),"sky-horizon-blend":new a.D(a.v.sky["sky-horizon-blend"]),"atmosphere-blend":new a.D(a.v.sky["atmosphere-blend"])});class re extends a.E{constructor(w){super(),this._transitionable=new a.T(W),this.setSky(w),this._transitioning=this._transitionable.untransitioned(),this.recalculate(new a.z(0))}setSky(w,B={}){if(!this._validate(a.B,w,B)){w||(w={"sky-color":"transparent","horizon-color":"transparent","fog-color":"transparent","fog-ground-blend":1,"atmosphere-blend":0});for(let Q in w){let ee=w[Q];Q.endsWith("-transition")?this._transitionable.setTransition(Q.slice(0,-11),ee):this._transitionable.setValue(Q,ee)}}}getSky(){return this._transitionable.serialize()}updateTransitions(w){this._transitioning=this._transitionable.transitioned(w,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(w){this.properties=this._transitioning.possiblyEvaluate(w)}_validate(w,B,Q={}){return(Q==null?void 0:Q.validate)!==!1&&a.t(this,w.call(a.u,a.e({value:B,style:{glyphs:!0,sprite:!0},styleSpec:a.v})))}calculateFogBlendOpacity(w){return w<60?0:w<70?(w-60)/10:1}}class ae{constructor(w,B){this.width=w,this.height=B,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}}getDash(w,B){let Q=w.join(",")+String(B);return this.dashEntry[Q]||(this.dashEntry[Q]=this.addDash(w,B)),this.dashEntry[Q]}getDashRanges(w,B,Q){let ee=[],se=w.length%2==1?-w[w.length-1]*Q:0,qe=w[0]*Q,je=!0;ee.push({left:se,right:qe,isDash:je,zeroLength:w[0]===0});let it=w[0];for(let yt=1;yt<w.length;yt++){je=!je;let Ot=w[yt];se=it*Q,it+=Ot,qe=it*Q,ee.push({left:se,right:qe,isDash:je,zeroLength:Ot===0})}return ee}addRoundDash(w,B,Q){let ee=B/2;for(let se=-Q;se<=Q;se++){let qe=this.width*(this.nextRow+Q+se),je=0,it=w[je];for(let yt=0;yt<this.width;yt++){yt/it.right>1&&(it=w[++je]);let Ot=Math.abs(yt-it.left),Nt=Math.abs(yt-it.right),hr=Math.min(Ot,Nt),Sr,he=se/Q*(ee+1);if(it.isDash){let be=ee-Math.abs(he);Sr=Math.sqrt(hr*hr+be*be)}else Sr=ee-Math.sqrt(hr*hr+he*he);this.data[qe+yt]=Math.max(0,Math.min(255,Sr+128))}}}addRegularDash(w){for(let je=w.length-1;je>=0;--je){let it=w[je],yt=w[je+1];it.zeroLength?w.splice(je,1):yt&&yt.isDash===it.isDash&&(yt.left=it.left,w.splice(je,1))}let B=w[0],Q=w[w.length-1];B.isDash===Q.isDash&&(B.left=Q.left-this.width,Q.right=B.right+this.width);let ee=this.width*this.nextRow,se=0,qe=w[se];for(let je=0;je<this.width;je++){je/qe.right>1&&(qe=w[++se]);let it=Math.abs(je-qe.left),yt=Math.abs(je-qe.right),Ot=Math.min(it,yt);this.data[ee+je]=Math.max(0,Math.min(255,(qe.isDash?Ot:-Ot)+128))}}addDash(w,B){let Q=B?7:0,ee=2*Q+1;if(this.nextRow+ee>this.height)return a.w("LineAtlas out of space"),null;let se=0;for(let je=0;je<w.length;je++)se+=w[je];if(se!==0){let je=this.width/se,it=this.getDashRanges(w,this.width,je);B?this.addRoundDash(it,je,Q):this.addRegularDash(it)}let qe={y:(this.nextRow+Q+.5)/this.height,height:2*Q/this.height,width:se};return this.nextRow+=ee,this.dirty=!0,qe}bind(w){let B=w.gl;this.texture?(B.bindTexture(B.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,B.texSubImage2D(B.TEXTURE_2D,0,0,0,this.width,this.height,B.ALPHA,B.UNSIGNED_BYTE,this.data))):(this.texture=B.createTexture(),B.bindTexture(B.TEXTURE_2D,this.texture),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_WRAP_S,B.REPEAT),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_WRAP_T,B.REPEAT),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_MIN_FILTER,B.LINEAR),B.texParameteri(B.TEXTURE_2D,B.TEXTURE_MAG_FILTER,B.LINEAR),B.texImage2D(B.TEXTURE_2D,0,B.ALPHA,this.width,this.height,0,B.ALPHA,B.UNSIGNED_BYTE,this.data))}}let _e="maplibre_preloaded_worker_pool";class Me{constructor(){this.active={}}acquire(w){if(!this.workers)for(this.workers=[];this.workers.length<Me.workerCount;)this.workers.push(new Worker(a.a.WORKER_URL));return this.active[w]=!0,this.workers.slice()}release(w){delete this.active[w],this.numActive()===0&&(this.workers.forEach(B=>{B.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[_e]}numActive(){return Object.keys(this.active).length}}let ke=Math.floor(u.hardwareConcurrency/2),ge,ie;function Te(){return ge||(ge=new Me),ge}Me.workerCount=a.C(globalThis)?Math.max(Math.min(ke,3),1):1;class Ee{constructor(w,B){this.workerPool=w,this.actors=[],this.currentActor=0,this.id=B;let Q=this.workerPool.acquire(B);for(let ee=0;ee<Q.length;ee++){let se=new a.F(Q[ee],B);se.name=`Worker ${ee}`,this.actors.push(se)}if(!this.actors.length)throw new Error("No actors found")}broadcast(w,B){let Q=[];for(let ee of this.actors)Q.push(ee.sendAsync({type:w,data:B}));return Promise.all(Q)}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(w=!0){this.actors.forEach(B=>{B.remove()}),this.actors=[],w&&this.workerPool.release(this.id)}registerMessageHandler(w,B){for(let Q of this.actors)Q.registerMessageHandler(w,B)}}function Ae(){return ie||(ie=new Ee(Te(),a.G),ie.registerMessageHandler("GR",(le,w,B)=>a.m(w,B))),ie}function ze(le,w){let B=a.H();return a.J(B,B,[1,1,0]),a.K(B,B,[.5*le.width,.5*le.height,1]),a.L(B,B,le.calculatePosMatrix(w.toUnwrapped()))}function Ce(le,w,B,Q,ee,se){let qe=function(Nt,hr,Sr){if(Nt)for(let he of Nt){let be=hr[he];if(be&&be.source===Sr&&be.type==="fill-extrusion")return!0}else for(let he in hr){let be=hr[he];if(be.source===Sr&&be.type==="fill-extrusion")return!0}return!1}(ee&&ee.layers,w,le.id),je=se.maxPitchScaleFactor(),it=le.tilesIn(Q,je,qe);it.sort(me);let yt=[];for(let Nt of it)yt.push({wrappedTileID:Nt.tileID.wrapped().key,queryResults:Nt.tile.queryRenderedFeatures(w,B,le._state,Nt.queryGeometry,Nt.cameraQueryGeometry,Nt.scale,ee,se,je,ze(le.transform,Nt.tileID))});let Ot=function(Nt){let hr={},Sr={};for(let he of Nt){let be=he.queryResults,Pe=he.wrappedTileID,Oe=Sr[Pe]=Sr[Pe]||{};for(let Je in be){let He=be[Je],et=Oe[Je]=Oe[Je]||{},Mt=hr[Je]=hr[Je]||[];for(let Dt of He)et[Dt.featureIndex]||(et[Dt.featureIndex]=!0,Mt.push(Dt))}}return hr}(yt);for(let Nt in Ot)Ot[Nt].forEach(hr=>{let Sr=hr.feature,he=le.getFeatureState(Sr.layer["source-layer"],Sr.id);Sr.source=Sr.layer.source,Sr.layer["source-layer"]&&(Sr.sourceLayer=Sr.layer["source-layer"]),Sr.state=he});return Ot}function me(le,w){let B=le.tileID,Q=w.tileID;return B.overscaledZ-Q.overscaledZ||B.canonical.y-Q.canonical.y||B.wrap-Q.wrap||B.canonical.x-Q.canonical.x}function Re(le,w,B){return a._(this,void 0,void 0,function*(){let Q=le;if(le.url?Q=(yield a.h(w.transformRequest(le.url,"Source"),B)).data:yield u.frameAsync(B),!Q)return null;let ee=a.M(a.e(Q,le),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in Q&&Q.vector_layers&&(ee.vectorLayerIds=Q.vector_layers.map(se=>se.id)),ee})}class ce{constructor(w,B){w&&(B?this.setSouthWest(w).setNorthEast(B):Array.isArray(w)&&(w.length===4?this.setSouthWest([w[0],w[1]]).setNorthEast([w[2],w[3]]):this.setSouthWest(w[0]).setNorthEast(w[1])))}setNorthEast(w){return this._ne=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}setSouthWest(w){return this._sw=w instanceof a.N?new a.N(w.lng,w.lat):a.N.convert(w),this}extend(w){let B=this._sw,Q=this._ne,ee,se;if(w instanceof a.N)ee=w,se=w;else{if(!(w instanceof ce))return Array.isArray(w)?w.length===4||w.every(Array.isArray)?this.extend(ce.convert(w)):this.extend(a.N.convert(w)):w&&("lng"in w||"lon"in w)&&"lat"in w?this.extend(a.N.convert(w)):this;if(ee=w._sw,se=w._ne,!ee||!se)return this}return B||Q?(B.lng=Math.min(ee.lng,B.lng),B.lat=Math.min(ee.lat,B.lat),Q.lng=Math.max(se.lng,Q.lng),Q.lat=Math.max(se.lat,Q.lat)):(this._sw=new a.N(ee.lng,ee.lat),this._ne=new a.N(se.lng,se.lat)),this}getCenter(){return new a.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new a.N(this.getWest(),this.getNorth())}getSouthEast(){return new a.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(w){let{lng:B,lat:Q}=a.N.convert(w),ee=this._sw.lng<=B&&B<=this._ne.lng;return this._sw.lng>this._ne.lng&&(ee=this._sw.lng>=B&&B>=this._ne.lng),this._sw.lat<=Q&&Q<=this._ne.lat&&ee}static convert(w){return w instanceof ce?w:w&&new ce(w)}static fromLngLat(w,B=0){let Q=360*B/40075017,ee=Q/Math.cos(Math.PI/180*w.lat);return new ce(new a.N(w.lng-ee,w.lat-Q),new a.N(w.lng+ee,w.lat+Q))}adjustAntiMeridian(){let w=new a.N(this._sw.lng,this._sw.lat),B=new a.N(this._ne.lng,this._ne.lat);return new ce(w,w.lng>B.lng?new a.N(B.lng+360,B.lat):B)}}class Ge{constructor(w,B,Q){this.bounds=ce.convert(this.validateBounds(w)),this.minzoom=B||0,this.maxzoom=Q||24}validateBounds(w){return Array.isArray(w)&&w.length===4?[Math.max(-180,w[0]),Math.max(-90,w[1]),Math.min(180,w[2]),Math.min(90,w[3])]:[-180,-90,180,90]}contains(w){let B=Math.pow(2,w.z),Q=Math.floor(a.O(this.bounds.getWest())*B),ee=Math.floor(a.Q(this.bounds.getNorth())*B),se=Math.ceil(a.O(this.bounds.getEast())*B),qe=Math.ceil(a.Q(this.bounds.getSouth())*B);return w.x>=Q&&w.x<se&&w.y>=ee&&w.y<qe}}class nt extends a.E{constructor(w,B,Q,ee){if(super(),this.id=w,this.dispatcher=Q,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,a.e(this,a.M(B,["url","scheme","tileSize","promoteId"])),this._options=a.e({type:"vector"},B),this._collectResourceTiming=B.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(ee)}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield Re(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,this.map.style.sourceCaches[this.id].clearTiles(),w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Ge(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}onAdd(w){this.map=w,this.load()}setSourceProperty(w){this._tileJSONRequest&&this._tileJSONRequest.abort(),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return a.e({},this._options)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q={request:this.map._requestManager.transformRequest(B,"Tile"),uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,tileSize:this.tileSize*w.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};Q.request.collectResourceTiming=this._collectResourceTiming;let ee="RT";if(w.actor&&w.state!=="expired"){if(w.state==="loading")return new Promise((se,qe)=>{w.reloadPromise={resolve:se,reject:qe}})}else w.actor=this.dispatcher.getActor(),ee="LT";w.abortController=new AbortController;try{let se=yield w.actor.sendAsync({type:ee,data:Q},w.abortController);if(delete w.abortController,w.aborted)return;this._afterTileLoadWorkerResponse(w,se)}catch(se){if(delete w.abortController,w.aborted)return;if(se&&se.status!==404)throw se;this._afterTileLoadWorkerResponse(w,null)}})}_afterTileLoadWorkerResponse(w,B){if(B&&B.resourceTiming&&(w.resourceTiming=B.resourceTiming),B&&this.map._refreshExpiredTiles&&w.setExpiryData(B),w.loadVectorData(B,this.map.painter),w.reloadPromise){let Q=w.reloadPromise;w.reloadPromise=null,this.loadTile(w).then(Q.resolve).catch(Q.reject)}}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.actor&&(yield w.actor.sendAsync({type:"AT",data:{uid:w.uid,type:this.type,source:this.id}}))})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),w.actor&&(yield w.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class ct extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.setEventedParent(ee),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=a.e({type:"raster"},B),a.e(this,a.M(B,["url","scheme","tileSize"]))}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let w=yield Re(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,w&&(a.e(this,w),w.bounds&&(this.tileBounds=new Ge(w.bounds,this.minzoom,this.maxzoom)),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})))}catch(w){this._tileJSONRequest=null,this.fire(new a.j(w))}})}loaded(){return this._loaded}onAdd(w){this.map=w,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(w){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),w(),this.load()}setTiles(w){return this.setSourceProperty(()=>{this._options.tiles=w}),this}setUrl(w){return this.setSourceProperty(()=>{this.url=w,this._options.url=w}),this}serialize(){return a.e({},this._options)}hasTile(w){return!this.tileBounds||this.tileBounds.contains(w.canonical)}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);w.abortController=new AbortController;try{let Q=yield p.getImage(this.map._requestManager.transformRequest(B,"Tile"),w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(Q&&Q.data){this.map._refreshExpiredTiles&&Q.cacheControl&&Q.expires&&w.setExpiryData({cacheControl:Q.cacheControl,expires:Q.expires});let ee=this.map.painter.context,se=ee.gl,qe=Q.data;w.texture=this.map.painter.getTileTexture(qe.width),w.texture?w.texture.update(qe,{useMipmap:!0}):(w.texture=new g(ee,qe,se.RGBA,{useMipmap:!0}),w.texture.bind(se.LINEAR,se.CLAMP_TO_EDGE,se.LINEAR_MIPMAP_NEAREST)),w.state="loaded"}}catch(Q){if(delete w.abortController,w.aborted)w.state="unloaded";else if(Q)throw w.state="errored",Q}})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController)})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.texture&&this.map.painter.saveTileTexture(w.texture)})}hasTransition(){return!1}}class qt extends ct{constructor(w,B,Q,ee){super(w,B,Q,ee),this.type="raster-dem",this.maxzoom=22,this._options=a.e({type:"raster-dem"},B),this.encoding=B.encoding||"mapbox",this.redFactor=B.redFactor,this.greenFactor=B.greenFactor,this.blueFactor=B.blueFactor,this.baseShift=B.baseShift}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),Q=this.map._requestManager.transformRequest(B,"Tile");w.neighboringTiles=this._getNeighboringTiles(w.tileID),w.abortController=new AbortController;try{let ee=yield p.getImage(Q,w.abortController,this.map._refreshExpiredTiles);if(delete w.abortController,w.aborted)return void(w.state="unloaded");if(ee&&ee.data){let se=ee.data;this.map._refreshExpiredTiles&&ee.cacheControl&&ee.expires&&w.setExpiryData({cacheControl:ee.cacheControl,expires:ee.expires});let qe=a.b(se)&&a.U()?se:yield this.readImageNow(se),je={type:this.type,uid:w.uid,source:this.id,rawImageData:qe,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!w.actor||w.state==="expired"){w.actor=this.dispatcher.getActor();let it=yield w.actor.sendAsync({type:"LDT",data:je});w.dem=it,w.needsHillshadePrepare=!0,w.needsTerrainPrepare=!0,w.state="loaded"}}}catch(ee){if(delete w.abortController,w.aborted)w.state="unloaded";else if(ee)throw w.state="errored",ee}})}readImageNow(w){return a._(this,void 0,void 0,function*(){if(typeof VideoFrame!="undefined"&&a.V()){let B=w.width+2,Q=w.height+2;try{return new a.R({width:B,height:Q},yield a.W(w,-1,-1,B,Q))}catch(ee){}}return u.getImageData(w,1)})}_getNeighboringTiles(w){let B=w.canonical,Q=Math.pow(2,B.z),ee=(B.x-1+Q)%Q,se=B.x===0?w.wrap-1:w.wrap,qe=(B.x+1+Q)%Q,je=B.x+1===Q?w.wrap+1:w.wrap,it={};return it[new a.S(w.overscaledZ,se,B.z,ee,B.y).key]={backfilled:!1},it[new a.S(w.overscaledZ,je,B.z,qe,B.y).key]={backfilled:!1},B.y>0&&(it[new a.S(w.overscaledZ,se,B.z,ee,B.y-1).key]={backfilled:!1},it[new a.S(w.overscaledZ,w.wrap,B.z,B.x,B.y-1).key]={backfilled:!1},it[new a.S(w.overscaledZ,je,B.z,qe,B.y-1).key]={backfilled:!1}),B.y+1<Q&&(it[new a.S(w.overscaledZ,se,B.z,ee,B.y+1).key]={backfilled:!1},it[new a.S(w.overscaledZ,w.wrap,B.z,B.x,B.y+1).key]={backfilled:!1},it[new a.S(w.overscaledZ,je,B.z,qe,B.y+1).key]={backfilled:!1}),it}unloadTile(w){return a._(this,void 0,void 0,function*(){w.demTexture&&this.map.painter.saveTileTexture(w.demTexture),w.fbo&&(w.fbo.destroy(),delete w.fbo),w.dem&&delete w.dem,delete w.neighboringTiles,w.state="unloaded",w.actor&&(yield w.actor.sendAsync({type:"RDT",data:{type:this.type,uid:w.uid,source:this.id}}))})}}class rt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.type="geojson",this.minzoom=0,this.maxzoom=18,this.tileSize=512,this.isTileClipped=!0,this.reparseOverscaled=!0,this._removed=!1,this._pendingLoads=0,this.actor=Q.getActor(),this.setEventedParent(ee),this._data=B.data,this._options=a.e({},B),this._collectResourceTiming=B.collectResourceTiming,B.maxzoom!==void 0&&(this.maxzoom=B.maxzoom),B.type&&(this.type=B.type),B.attribution&&(this.attribution=B.attribution),this.promoteId=B.promoteId;let se=a.X/this.tileSize;B.clusterMaxZoom!==void 0&&this.maxzoom<=B.clusterMaxZoom&&a.w(`The maxzoom value "${this.maxzoom}" is expected to be greater than the clusterMaxZoom value "${B.clusterMaxZoom}".`),this.workerOptions=a.e({source:this.id,cluster:B.cluster||!1,geojsonVtOptions:{buffer:(B.buffer!==void 0?B.buffer:128)*se,tolerance:(B.tolerance!==void 0?B.tolerance:.375)*se,extent:a.X,maxZoom:this.maxzoom,lineMetrics:B.lineMetrics||!1,generateId:B.generateId||!1},superclusterOptions:{maxZoom:B.clusterMaxZoom!==void 0?B.clusterMaxZoom:this.maxzoom-1,minPoints:Math.max(2,B.clusterMinPoints||2),extent:a.X,radius:(B.clusterRadius||50)*se,log:!1,generateId:B.generateId||!1},clusterProperties:B.clusterProperties,filter:B.filter},B.workerOptions),typeof this.promoteId=="string"&&(this.workerOptions.promoteId=this.promoteId)}load(){return a._(this,void 0,void 0,function*(){yield this._updateWorkerData()})}onAdd(w){this.map=w,this.load()}setData(w){return this._data=w,this._updateWorkerData(),this}updateData(w){return this._updateWorkerData(w),this}getData(){return a._(this,void 0,void 0,function*(){let w=a.e({type:this.type},this.workerOptions);return this.actor.sendAsync({type:"GD",data:w})})}setClusterOptions(w){return this.workerOptions.cluster=w.cluster,w&&(w.clusterRadius!==void 0&&(this.workerOptions.superclusterOptions.radius=w.clusterRadius),w.clusterMaxZoom!==void 0&&(this.workerOptions.superclusterOptions.maxZoom=w.clusterMaxZoom)),this._updateWorkerData(),this}getClusterExpansionZoom(w){return this.actor.sendAsync({type:"GCEZ",data:{type:this.type,clusterId:w,source:this.id}})}getClusterChildren(w){return this.actor.sendAsync({type:"GCC",data:{type:this.type,clusterId:w,source:this.id}})}getClusterLeaves(w,B,Q){return this.actor.sendAsync({type:"GCL",data:{type:this.type,source:this.id,clusterId:w,limit:B,offset:Q}})}_updateWorkerData(w){return a._(this,void 0,void 0,function*(){let B=a.e({type:this.type},this.workerOptions);w?B.dataDiff=w:typeof this._data=="string"?(B.request=this.map._requestManager.transformRequest(u.resolveURL(this._data),"Source"),B.request.collectResourceTiming=this._collectResourceTiming):B.data=JSON.stringify(this._data),this._pendingLoads++,this.fire(new a.k("dataloading",{dataType:"source"}));try{let Q=yield this.actor.sendAsync({type:"LD",data:B});if(this._pendingLoads--,this._removed||Q.abandoned)return void this.fire(new a.k("dataabort",{dataType:"source"}));let ee=null;Q.resourceTiming&&Q.resourceTiming[this.id]&&(ee=Q.resourceTiming[this.id].slice(0));let se={dataType:"source"};this._collectResourceTiming&&ee&&ee.length>0&&a.e(se,{resourceTiming:ee}),this.fire(new a.k("data",Object.assign(Object.assign({},se),{sourceDataType:"metadata"}))),this.fire(new a.k("data",Object.assign(Object.assign({},se),{sourceDataType:"content"})))}catch(Q){if(this._pendingLoads--,this._removed)return void this.fire(new a.k("dataabort",{dataType:"source"}));this.fire(new a.j(Q))}})}loaded(){return this._pendingLoads===0}loadTile(w){return a._(this,void 0,void 0,function*(){let B=w.actor?"RT":"LT";w.actor=this.actor;let Q={type:this.type,uid:w.uid,tileID:w.tileID,zoom:w.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};w.abortController=new AbortController;let ee=yield this.actor.sendAsync({type:B,data:Q},w.abortController);delete w.abortController,w.unloadVectorData(),w.aborted||w.loadVectorData(ee,this.map.painter,B==="RT")})}abortTile(w){return a._(this,void 0,void 0,function*(){w.abortController&&(w.abortController.abort(),delete w.abortController),w.aborted=!0})}unloadTile(w){return a._(this,void 0,void 0,function*(){w.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:w.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return a.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var ot=a.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class Rt extends a.E{constructor(w,B,Q,ee){super(),this.id=w,this.dispatcher=Q,this.coordinates=B.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(ee),this.options=B}load(w){return a._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new a.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let B=yield p.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,B&&B.data&&(this.image=B.data,w&&(this.coordinates=w),this._finishLoading())}catch(B){this._request=null,this._loaded=!0,this.fire(new a.j(B))}})}loaded(){return this._loaded}updateImage(w){return w.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=w.url,this.load(w.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new a.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(w){this.map=w,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(w){this.coordinates=w;let B=w.map(a.Z.fromLngLat);this.tileID=function(ee){let se=1/0,qe=1/0,je=-1/0,it=-1/0;for(let hr of ee)se=Math.min(se,hr.x),qe=Math.min(qe,hr.y),je=Math.max(je,hr.x),it=Math.max(it,hr.y);let yt=Math.max(je-se,it-qe),Ot=Math.max(0,Math.floor(-Math.log(yt)/Math.LN2)),Nt=Math.pow(2,Ot);return new a.a1(Ot,Math.floor((se+je)/2*Nt),Math.floor((qe+it)/2*Nt))}(B),this.minzoom=this.maxzoom=this.tileID.z;let Q=B.map(ee=>this.tileID.getTilePoint(ee)._round());return this._boundsArray=new a.$,this._boundsArray.emplaceBack(Q[0].x,Q[0].y,0,0),this._boundsArray.emplaceBack(Q[1].x,Q[1].y,a.X,0),this._boundsArray.emplaceBack(Q[3].x,Q[3].y,0,a.X),this._boundsArray.emplaceBack(Q[2].x,Q[2].y,a.X,a.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new a.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,ot.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new g(w,this.image,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let se=this.tiles[ee];se.state!=="loaded"&&(se.state="loaded",se.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(w){return a._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(w.tileID.canonical)?(this.tiles[String(w.tileID.wrap)]=w,w.buckets={}):w.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class kt extends Rt{constructor(w,B,Q,ee){super(w,B,Q,ee),this.roundZoom=!0,this.type="video",this.options=B}load(){return a._(this,void 0,void 0,function*(){this._loaded=!1;let w=this.options;this.urls=[];for(let B of w.urls)this.urls.push(this.map._requestManager.transformRequest(B,"Source").url);try{let B=yield a.a3(this.urls);if(this._loaded=!0,!B)return;this.video=B,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(B){this.fire(new a.j(B))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(w){if(this.video){let B=this.video.seekable;w<B.start(0)||w>B.end(0)?this.fire(new a.j(new a.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${B.start(0)} and ${B.end(0)}-second mark.`))):this.video.currentTime=w}}getVideo(){return this.video}onAdd(w){this.map||(this.map=w,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let w=this.map.painter.context,B=w.gl;this.boundsBuffer||(this.boundsBuffer=w.createVertexBuffer(this._boundsArray,ot.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE),B.texSubImage2D(B.TEXTURE_2D,0,0,0,B.RGBA,B.UNSIGNED_BYTE,this.video)):(this.texture=new g(w,this.video,B.RGBA),this.texture.bind(B.LINEAR,B.CLAMP_TO_EDGE));let Q=!1;for(let ee in this.tiles){let se=this.tiles[ee];se.state!=="loaded"&&(se.state="loaded",se.texture=this.texture,Q=!0)}Q&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class Ct extends Rt{constructor(w,B,Q,ee){super(w,B,Q,ee),B.coordinates?Array.isArray(B.coordinates)&&B.coordinates.length===4&&!B.coordinates.some(se=>!Array.isArray(se)||se.length!==2||se.some(qe=>typeof qe!="number"))||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "coordinates"'))),B.animate&&typeof B.animate!="boolean"&&this.fire(new a.j(new a.a2(`sources.${w}`,null,'optional "animate" property must be a boolean value'))),B.canvas?typeof B.canvas=="string"||B.canvas instanceof HTMLCanvasElement||this.fire(new a.j(new a.a2(`sources.${w}`,null,'"canvas" must be either a string representing the ID of the canvas element from which to read, or an HTMLCanvasElement instance'))):this.fire(new a.j(new a.a2(`sources.${w}`,null,'missing required property "canvas"'))),this.options=B,this.animate=B.animate===void 0||B.animate}load(){return a._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new a.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(w){this.map=w,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let w=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,w=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,w=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let B=this.map.painter.context,Q=B.gl;this.boundsBuffer||(this.boundsBuffer=B.createVertexBuffer(this._boundsArray,ot.members)),this.boundsSegments||(this.boundsSegments=a.a0.simpleSegment(0,0,4,2)),this.texture?(w||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new g(B,this.canvas,Q.RGBA,{premultiply:!0});let ee=!1;for(let se in this.tiles){let qe=this.tiles[se];qe.state!=="loaded"&&(qe.state="loaded",qe.texture=this.texture,ee=!0)}ee&&this.fire(new a.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let w of[this.canvas.width,this.canvas.height])if(isNaN(w)||w<=0)return!0;return!1}}let Yt={},xr=le=>{switch(le){case"geojson":return rt;case"image":return Rt;case"raster":return ct;case"raster-dem":return qt;case"vector":return nt;case"video":return kt;case"canvas":return Ct}return Yt[le]},er="RTLPluginLoaded";class Ke extends a.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Ae()}_syncState(w){return this.status=w,this.dispatcher.broadcast("SRPS",{pluginStatus:w,pluginURL:this.url}).catch(B=>{throw this.status="error",B})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(w){return a._(this,arguments,void 0,function*(B,Q=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=u.resolveURL(B),!this.url)throw new Error(`requested url ${B} is invalid`);if(this.status==="unavailable"){if(!Q)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return a._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new a.k(er))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let xt=null;function bt(){return xt||(xt=new Ke),xt}class Lt{constructor(w,B){this.timeAdded=0,this.fadeEndTime=0,this.tileID=w,this.uid=a.a4(),this.uses=0,this.tileSize=B,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(w){let B=w+this.timeAdded;B<this.fadeEndTime||(this.fadeEndTime=B)}wasRequested(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"}clearTextures(w){this.demTexture&&w.saveTileTexture(this.demTexture),this.demTexture=null}loadVectorData(w,B,Q){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",w){w.featureIndex&&(this.latestFeatureIndex=w.featureIndex,w.rawTileData?(this.latestRawTileData=w.rawTileData,this.latestFeatureIndex.rawTileData=w.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=w.collisionBoxArray,this.buckets=function(ee,se){let qe={};if(!se)return qe;for(let je of ee){let it=je.layerIds.map(yt=>se.getLayer(yt)).filter(Boolean);if(it.length!==0){je.layers=it,je.stateDependentLayerIds&&(je.stateDependentLayers=je.stateDependentLayerIds.map(yt=>it.filter(Ot=>Ot.id===yt)[0]));for(let yt of it)qe[yt.id]=je}}return qe}(w.buckets,B.style),this.hasSymbolBuckets=!1;for(let ee in this.buckets){let se=this.buckets[ee];if(se instanceof a.a6){if(this.hasSymbolBuckets=!0,!Q)break;se.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let ee in this.buckets){let se=this.buckets[ee];if(se instanceof a.a6&&se.hasRTLText){this.hasRTLText=!0,bt().lazyLoad();break}}this.queryPadding=0;for(let ee in this.buckets){let se=this.buckets[ee];this.queryPadding=Math.max(this.queryPadding,B.style.getLayer(ee).queryRadius(se))}w.imageAtlas&&(this.imageAtlas=w.imageAtlas),w.glyphAtlasImage&&(this.glyphAtlasImage=w.glyphAtlasImage)}else this.collisionBoxArray=new a.a5}unloadVectorData(){for(let w in this.buckets)this.buckets[w].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(w){return this.buckets[w.id]}upload(w){for(let Q in this.buckets){let ee=this.buckets[Q];ee.uploadPending()&&ee.upload(w)}let B=w.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new g(w,this.imageAtlas.image,B.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new g(w,this.glyphAtlasImage,B.ALPHA),this.glyphAtlasImage=null)}prepare(w){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(w,this.imageAtlasTexture)}queryRenderedFeatures(w,B,Q,ee,se,qe,je,it,yt,Ot){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:ee,cameraQueryGeometry:se,scale:qe,tileSize:this.tileSize,pixelPosMatrix:Ot,transform:it,params:je,queryPadding:this.queryPadding*yt},w,B,Q):{}}querySourceFeatures(w,B){let Q=this.latestFeatureIndex;if(!Q||!Q.rawTileData)return;let ee=Q.loadVTLayers(),se=B&&B.sourceLayer?B.sourceLayer:"",qe=ee._geojsonTileLayer||ee[se];if(!qe)return;let je=a.a7(B&&B.filter),{z:it,x:yt,y:Ot}=this.tileID.canonical,Nt={z:it,x:yt,y:Ot};for(let hr=0;hr<qe.length;hr++){let Sr=qe.feature(hr);if(je.needGeometry){let Pe=a.a8(Sr,!0);if(!je.filter(new a.z(this.tileID.overscaledZ),Pe,this.tileID.canonical))continue}else if(!je.filter(new a.z(this.tileID.overscaledZ),Sr))continue;let he=Q.getId(Sr,se),be=new a.a9(Sr,it,yt,Ot,he);be.tile=Nt,w.push(be)}}hasData(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"}patternsLoaded(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length}setExpiryData(w){let B=this.expirationTime;if(w.cacheControl){let Q=a.aa(w.cacheControl);Q["max-age"]&&(this.expirationTime=Date.now()+1e3*Q["max-age"])}else w.expires&&(this.expirationTime=new Date(w.expires).getTime());if(this.expirationTime){let Q=Date.now(),ee=!1;if(this.expirationTime>Q)ee=!1;else if(B)if(this.expirationTime<B)ee=!0;else{let se=this.expirationTime-B;se?this.expirationTime=Q+Math.max(se,3e4):ee=!0}else ee=!0;ee?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}}getExpiryTimeout(){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)}setFeatureState(w,B){if(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(w).length===0)return;let Q=this.latestFeatureIndex.loadVTLayers();for(let ee in this.buckets){if(!B.style.hasLayer(ee))continue;let se=this.buckets[ee],qe=se.layers[0].sourceLayer||"_geojsonTileLayer",je=Q[qe],it=w[qe];if(!je||!it||Object.keys(it).length===0)continue;se.update(it,je,this.imageAtlas&&this.imageAtlas.patternPositions||{});let yt=B&&B.style&&B.style.getLayer(ee);yt&&(this.queryPadding=Math.max(this.queryPadding,yt.queryRadius(se)))}}holdingForFade(){return this.symbolFadeHoldUntil!==void 0}symbolFadeFinished(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<u.now()}clearFadeHold(){this.symbolFadeHoldUntil=void 0}setHoldDuration(w){this.symbolFadeHoldUntil=u.now()+w}setDependencies(w,B){let Q={};for(let ee of B)Q[ee]=!0;this.dependencies[w]=Q}hasDependency(w,B){for(let Q of w){let ee=this.dependencies[Q];if(ee){for(let se of B)if(ee[se])return!0}}return!1}}class St{constructor(w,B){this.max=w,this.onRemove=B,this.reset()}reset(){for(let w in this.data)for(let B of this.data[w])B.timeout&&clearTimeout(B.timeout),this.onRemove(B.value);return this.data={},this.order=[],this}add(w,B,Q){let ee=w.wrapped().key;this.data[ee]===void 0&&(this.data[ee]=[]);let se={value:B,timeout:void 0};if(Q!==void 0&&(se.timeout=setTimeout(()=>{this.remove(w,se)},Q)),this.data[ee].push(se),this.order.push(ee),this.order.length>this.max){let qe=this._getAndRemoveByKey(this.order[0]);qe&&this.onRemove(qe)}return this}has(w){return w.wrapped().key in this.data}getAndRemove(w){return this.has(w)?this._getAndRemoveByKey(w.wrapped().key):null}_getAndRemoveByKey(w){let B=this.data[w].shift();return B.timeout&&clearTimeout(B.timeout),this.data[w].length===0&&delete this.data[w],this.order.splice(this.order.indexOf(w),1),B.value}getByKey(w){let B=this.data[w];return B?B[0].value:null}get(w){return this.has(w)?this.data[w.wrapped().key][0].value:null}remove(w,B){if(!this.has(w))return this;let Q=w.wrapped().key,ee=B===void 0?0:this.data[Q].indexOf(B),se=this.data[Q][ee];return this.data[Q].splice(ee,1),se.timeout&&clearTimeout(se.timeout),this.data[Q].length===0&&delete this.data[Q],this.onRemove(se.value),this.order.splice(this.order.indexOf(Q),1),this}setMaxSize(w){for(this.max=w;this.order.length>this.max;){let B=this._getAndRemoveByKey(this.order[0]);B&&this.onRemove(B)}return this}filter(w){let B=[];for(let Q in this.data)for(let ee of this.data[Q])w(ee.value)||B.push(ee);for(let Q of B)this.remove(Q.value.tileID,Q)}}class Et{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(w,B,Q){let ee=String(B);if(this.stateChanges[w]=this.stateChanges[w]||{},this.stateChanges[w][ee]=this.stateChanges[w][ee]||{},a.e(this.stateChanges[w][ee],Q),this.deletedStates[w]===null){this.deletedStates[w]={};for(let se in this.state[w])se!==ee&&(this.deletedStates[w][se]=null)}else if(this.deletedStates[w]&&this.deletedStates[w][ee]===null){this.deletedStates[w][ee]={};for(let se in this.state[w][ee])Q[se]||(this.deletedStates[w][ee][se]=null)}else for(let se in Q)this.deletedStates[w]&&this.deletedStates[w][ee]&&this.deletedStates[w][ee][se]===null&&delete this.deletedStates[w][ee][se]}removeFeatureState(w,B,Q){if(this.deletedStates[w]===null)return;let ee=String(B);if(this.deletedStates[w]=this.deletedStates[w]||{},Q&&B!==void 0)this.deletedStates[w][ee]!==null&&(this.deletedStates[w][ee]=this.deletedStates[w][ee]||{},this.deletedStates[w][ee][Q]=null);else if(B!==void 0)if(this.stateChanges[w]&&this.stateChanges[w][ee])for(Q in this.deletedStates[w][ee]={},this.stateChanges[w][ee])this.deletedStates[w][ee][Q]=null;else this.deletedStates[w][ee]=null;else this.deletedStates[w]=null}getState(w,B){let Q=String(B),ee=a.e({},(this.state[w]||{})[Q],(this.stateChanges[w]||{})[Q]);if(this.deletedStates[w]===null)return{};if(this.deletedStates[w]){let se=this.deletedStates[w][B];if(se===null)return{};for(let qe in se)delete ee[qe]}return ee}initializeTileState(w,B){w.setFeatureState(this.state,B)}coalesceChanges(w,B){let Q={};for(let ee in this.stateChanges){this.state[ee]=this.state[ee]||{};let se={};for(let qe in this.stateChanges[ee])this.state[ee][qe]||(this.state[ee][qe]={}),a.e(this.state[ee][qe],this.stateChanges[ee][qe]),se[qe]=this.state[ee][qe];Q[ee]=se}for(let ee in this.deletedStates){this.state[ee]=this.state[ee]||{};let se={};if(this.deletedStates[ee]===null)for(let qe in this.state[ee])se[qe]={},this.state[ee][qe]={};else for(let qe in this.deletedStates[ee]){if(this.deletedStates[ee][qe]===null)this.state[ee][qe]={};else for(let je of Object.keys(this.deletedStates[ee][qe]))delete this.state[ee][qe][je];se[qe]=this.state[ee][qe]}Q[ee]=Q[ee]||{},a.e(Q[ee],se)}if(this.stateChanges={},this.deletedStates={},Object.keys(Q).length!==0)for(let ee in w)w[ee].setFeatureState(Q,B)}}class dt extends a.E{constructor(w,B,Q){super(),this.id=w,this.dispatcher=Q,this.on("data",ee=>this._dataHandler(ee)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((ee,se,qe,je)=>{let it=new(xr(se.type))(ee,se,qe,je);if(it.id!==ee)throw new Error(`Expected Source id to be ${ee} instead of ${it.id}`);return it})(w,B,Q,this),this._tiles={},this._cache=new St(0,ee=>this._unloadTile(ee)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new Et,this._didEmitContent=!1,this._updated=!1}onAdd(w){this.map=w,this._maxTileCacheSize=w?w._maxTileCacheSize:null,this._maxTileCacheZoomLevels=w?w._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(w)}onRemove(w){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(w)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let w in this._tiles){let B=this._tiles[w];if(B.state!=="loaded"&&B.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let w=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,w&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(w,B,Q){return a._(this,void 0,void 0,function*(){try{yield this._source.loadTile(w),this._tileLoaded(w,B,Q)}catch(ee){w.state="errored",ee.status!==404?this._source.fire(new a.j(ee,{tile:w})):this.update(this.transform,this.terrain)}})}_unloadTile(w){this._source.unloadTile&&this._source.unloadTile(w)}_abortTile(w){this._source.abortTile&&this._source.abortTile(w),this._source.fire(new a.k("dataabort",{tile:w,coord:w.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(w){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let B in this._tiles){let Q=this._tiles[B];Q.upload(w),Q.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(w=>w.tileID).sort(Ht).map(w=>w.key)}getRenderableIds(w){let B=[];for(let Q in this._tiles)this._isIdRenderable(Q,w)&&B.push(this._tiles[Q]);return w?B.sort((Q,ee)=>{let se=Q.tileID,qe=ee.tileID,je=new a.P(se.canonical.x,se.canonical.y)._rotate(this.transform.angle),it=new a.P(qe.canonical.x,qe.canonical.y)._rotate(this.transform.angle);return se.overscaledZ-qe.overscaledZ||it.y-je.y||it.x-je.x}).map(Q=>Q.tileID.key):B.map(Q=>Q.tileID).sort(Ht).map(Q=>Q.key)}hasRenderableParent(w){let B=this.findLoadedParent(w,0);return!!B&&this._isIdRenderable(B.tileID.key)}_isIdRenderable(w,B){return this._tiles[w]&&this._tiles[w].hasData()&&!this._coveredTiles[w]&&(B||!this._tiles[w].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let w in this._tiles)this._tiles[w].state!=="errored"&&this._reloadTile(w,"reloading")}}_reloadTile(w,B){return a._(this,void 0,void 0,function*(){let Q=this._tiles[w];Q&&(Q.state!=="loading"&&(Q.state=B),yield this._loadTile(Q,w,B))})}_tileLoaded(w,B,Q){w.timeAdded=u.now(),Q==="expired"&&(w.refreshedUponExpiration=!0),this._setTileReloadTimer(B,w),this.getSource().type==="raster-dem"&&w.dem&&this._backfillDEM(w),this._state.initializeTileState(w,this.map?this.map.painter:null),w.aborted||this._source.fire(new a.k("data",{dataType:"source",tile:w,coord:w.tileID}))}_backfillDEM(w){let B=this.getRenderableIds();for(let ee=0;ee<B.length;ee++){let se=B[ee];if(w.neighboringTiles&&w.neighboringTiles[se]){let qe=this.getTileByID(se);Q(w,qe),Q(qe,w)}}function Q(ee,se){ee.needsHillshadePrepare=!0,ee.needsTerrainPrepare=!0;let qe=se.tileID.canonical.x-ee.tileID.canonical.x,je=se.tileID.canonical.y-ee.tileID.canonical.y,it=Math.pow(2,ee.tileID.canonical.z),yt=se.tileID.key;qe===0&&je===0||Math.abs(je)>1||(Math.abs(qe)>1&&(Math.abs(qe+it)===1?qe+=it:Math.abs(qe-it)===1&&(qe-=it)),se.dem&&ee.dem&&(ee.dem.backfillBorder(se.dem,qe,je),ee.neighboringTiles&&ee.neighboringTiles[yt]&&(ee.neighboringTiles[yt].backfilled=!0)))}}getTile(w){return this.getTileByID(w.key)}getTileByID(w){return this._tiles[w]}_retainLoadedChildren(w,B,Q,ee){for(let se in this._tiles){let qe=this._tiles[se];if(ee[se]||!qe.hasData()||qe.tileID.overscaledZ<=B||qe.tileID.overscaledZ>Q)continue;let je=qe.tileID;for(;qe&&qe.tileID.overscaledZ>B+1;){let yt=qe.tileID.scaledTo(qe.tileID.overscaledZ-1);qe=this._tiles[yt.key],qe&&qe.hasData()&&(je=yt)}let it=je;for(;it.overscaledZ>B;)if(it=it.scaledTo(it.overscaledZ-1),w[it.key]){ee[je.key]=je;break}}}findLoadedParent(w,B){if(w.key in this._loadedParentTiles){let Q=this._loadedParentTiles[w.key];return Q&&Q.tileID.overscaledZ>=B?Q:null}for(let Q=w.overscaledZ-1;Q>=B;Q--){let ee=w.scaledTo(Q),se=this._getLoadedTile(ee);if(se)return se}}findLoadedSibling(w){return this._getLoadedTile(w)}_getLoadedTile(w){let B=this._tiles[w.key];return B&&B.hasData()?B:this._cache.getByKey(w.wrapped().key)}updateCacheSize(w){let B=Math.ceil(w.width/this._source.tileSize)+1,Q=Math.ceil(w.height/this._source.tileSize)+1,ee=Math.floor(B*Q*(this._maxTileCacheZoomLevels===null?a.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),se=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,ee):ee;this._cache.setMaxSize(se)}handleWrapJump(w){let B=Math.round((w-(this._prevLng===void 0?w:this._prevLng))/360);if(this._prevLng=w,B){let Q={};for(let ee in this._tiles){let se=this._tiles[ee];se.tileID=se.tileID.unwrapTo(se.tileID.wrap+B),Q[se.tileID.key]=se}this._tiles=Q;for(let ee in this._timers)clearTimeout(this._timers[ee]),delete this._timers[ee];for(let ee in this._tiles)this._setTileReloadTimer(ee,this._tiles[ee])}}_updateCoveredAndRetainedTiles(w,B,Q,ee,se,qe){let je={},it={},yt=Object.keys(w),Ot=u.now();for(let Nt of yt){let hr=w[Nt],Sr=this._tiles[Nt];if(!Sr||Sr.fadeEndTime!==0&&Sr.fadeEndTime<=Ot)continue;let he=this.findLoadedParent(hr,B),be=this.findLoadedSibling(hr),Pe=he||be||null;Pe&&(this._addTile(Pe.tileID),je[Pe.tileID.key]=Pe.tileID),it[Nt]=hr}this._retainLoadedChildren(it,ee,Q,w);for(let Nt in je)w[Nt]||(this._coveredTiles[Nt]=!0,w[Nt]=je[Nt]);if(qe){let Nt={},hr={};for(let Sr of se)this._tiles[Sr.key].hasData()?Nt[Sr.key]=Sr:hr[Sr.key]=Sr;for(let Sr in hr){let he=hr[Sr].children(this._source.maxzoom);this._tiles[he[0].key]&&this._tiles[he[1].key]&&this._tiles[he[2].key]&&this._tiles[he[3].key]&&(Nt[he[0].key]=w[he[0].key]=he[0],Nt[he[1].key]=w[he[1].key]=he[1],Nt[he[2].key]=w[he[2].key]=he[2],Nt[he[3].key]=w[he[3].key]=he[3],delete hr[Sr])}for(let Sr in hr){let he=hr[Sr],be=this.findLoadedParent(he,this._source.minzoom),Pe=this.findLoadedSibling(he),Oe=be||Pe||null;if(Oe){Nt[Oe.tileID.key]=w[Oe.tileID.key]=Oe.tileID;for(let Je in Nt)Nt[Je].isChildOf(Oe.tileID)&&delete Nt[Je]}}for(let Sr in this._tiles)Nt[Sr]||(this._coveredTiles[Sr]=!0)}}update(w,B){if(!this._sourceLoaded||this._paused)return;let Q;this.transform=w,this.terrain=B,this.updateCacheSize(w),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?Q=w.getVisibleUnwrappedCoordinates(this._source.tileID).map(Ot=>new a.S(Ot.canonical.z,Ot.wrap,Ot.canonical.z,Ot.canonical.x,Ot.canonical.y)):(Q=w.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:B}),this._source.hasTile&&(Q=Q.filter(Ot=>this._source.hasTile(Ot)))):Q=[];let ee=w.coveringZoomLevel(this._source),se=Math.max(ee-dt.maxOverzooming,this._source.minzoom),qe=Math.max(ee+dt.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let Ot={};for(let Nt of Q)if(Nt.canonical.z>this._source.minzoom){let hr=Nt.scaledTo(Nt.canonical.z-1);Ot[hr.key]=hr;let Sr=Nt.scaledTo(Math.max(this._source.minzoom,Math.min(Nt.canonical.z,5)));Ot[Sr.key]=Sr}Q=Q.concat(Object.values(Ot))}let je=Q.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,je&&this.fire(new a.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let it=this._updateRetainedTiles(Q,ee);$t(this._source.type)&&this._updateCoveredAndRetainedTiles(it,se,qe,ee,Q,B);for(let Ot in it)this._tiles[Ot].clearFadeHold();let yt=a.ab(this._tiles,it);for(let Ot of yt){let Nt=this._tiles[Ot];Nt.hasSymbolBuckets&&!Nt.holdingForFade()?Nt.setHoldDuration(this.map._fadeDuration):Nt.hasSymbolBuckets&&!Nt.symbolFadeFinished()||this._removeTile(Ot)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let w in this._tiles)this._tiles[w].holdingForFade()&&this._removeTile(w)}_updateRetainedTiles(w,B){var Q;let ee={},se={},qe=Math.max(B-dt.maxOverzooming,this._source.minzoom),je=Math.max(B+dt.maxUnderzooming,this._source.minzoom),it={};for(let yt of w){let Ot=this._addTile(yt);ee[yt.key]=yt,Ot.hasData()||B<this._source.maxzoom&&(it[yt.key]=yt)}this._retainLoadedChildren(it,B,je,ee);for(let yt of w){let Ot=this._tiles[yt.key];if(Ot.hasData())continue;if(B+1>this._source.maxzoom){let hr=yt.children(this._source.maxzoom)[0],Sr=this.getTile(hr);if(Sr&&Sr.hasData()){ee[hr.key]=hr;continue}}else{let hr=yt.children(this._source.maxzoom);if(ee[hr[0].key]&&ee[hr[1].key]&&ee[hr[2].key]&&ee[hr[3].key])continue}let Nt=Ot.wasRequested();for(let hr=yt.overscaledZ-1;hr>=qe;--hr){let Sr=yt.scaledTo(hr);if(se[Sr.key])break;if(se[Sr.key]=!0,Ot=this.getTile(Sr),!Ot&&Nt&&(Ot=this._addTile(Sr)),Ot){let he=Ot.hasData();if((he||!(!((Q=this.map)===null||Q===void 0)&&Q.cancelPendingTileRequestsWhileZooming)||Nt)&&(ee[Sr.key]=Sr),Nt=Ot.wasRequested(),he)break}}}return ee}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let w in this._tiles){let B=[],Q,ee=this._tiles[w].tileID;for(;ee.overscaledZ>0;){if(ee.key in this._loadedParentTiles){Q=this._loadedParentTiles[ee.key];break}B.push(ee.key);let se=ee.scaledTo(ee.overscaledZ-1);if(Q=this._getLoadedTile(se),Q)break;ee=se}for(let se of B)this._loadedParentTiles[se]=Q}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let w in this._tiles){let B=this._tiles[w].tileID,Q=this._getLoadedTile(B);this._loadedSiblingTiles[B.key]=Q}}_addTile(w){let B=this._tiles[w.key];if(B)return B;B=this._cache.getAndRemove(w),B&&(this._setTileReloadTimer(w.key,B),B.tileID=w,this._state.initializeTileState(B,this.map?this.map.painter:null),this._cacheTimers[w.key]&&(clearTimeout(this._cacheTimers[w.key]),delete this._cacheTimers[w.key],this._setTileReloadTimer(w.key,B)));let Q=B;return B||(B=new Lt(w,this._source.tileSize*w.overscaleFactor()),this._loadTile(B,w.key,B.state)),B.uses++,this._tiles[w.key]=B,Q||this._source.fire(new a.k("dataloading",{tile:B,coord:B.tileID,dataType:"source"})),B}_setTileReloadTimer(w,B){w in this._timers&&(clearTimeout(this._timers[w]),delete this._timers[w]);let Q=B.getExpiryTimeout();Q&&(this._timers[w]=setTimeout(()=>{this._reloadTile(w,"expired"),delete this._timers[w]},Q))}_removeTile(w){let B=this._tiles[w];B&&(B.uses--,delete this._tiles[w],this._timers[w]&&(clearTimeout(this._timers[w]),delete this._timers[w]),B.uses>0||(B.hasData()&&B.state!=="reloading"?this._cache.add(B.tileID,B,B.getExpiryTimeout()):(B.aborted=!0,this._abortTile(B),this._unloadTile(B))))}_dataHandler(w){let B=w.sourceDataType;w.dataType==="source"&&B==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&w.dataType==="source"&&B==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let w in this._tiles)this._removeTile(w);this._cache.reset()}tilesIn(w,B,Q){let ee=[],se=this.transform;if(!se)return ee;let qe=Q?se.getCameraQueryGeometry(w):w,je=w.map(he=>se.pointCoordinate(he,this.terrain)),it=qe.map(he=>se.pointCoordinate(he,this.terrain)),yt=this.getIds(),Ot=1/0,Nt=1/0,hr=-1/0,Sr=-1/0;for(let he of it)Ot=Math.min(Ot,he.x),Nt=Math.min(Nt,he.y),hr=Math.max(hr,he.x),Sr=Math.max(Sr,he.y);for(let he=0;he<yt.length;he++){let be=this._tiles[yt[he]];if(be.holdingForFade())continue;let Pe=be.tileID,Oe=Math.pow(2,se.zoom-be.tileID.overscaledZ),Je=B*be.queryPadding*a.X/be.tileSize/Oe,He=[Pe.getTilePoint(new a.Z(Ot,Nt)),Pe.getTilePoint(new a.Z(hr,Sr))];if(He[0].x-Je<a.X&&He[0].y-Je<a.X&&He[1].x+Je>=0&&He[1].y+Je>=0){let et=je.map(Dt=>Pe.getTilePoint(Dt)),Mt=it.map(Dt=>Pe.getTilePoint(Dt));ee.push({tile:be,tileID:Pe,queryGeometry:et,cameraQueryGeometry:Mt,scale:Oe})}}return ee}getVisibleCoordinates(w){let B=this.getRenderableIds(w).map(Q=>this._tiles[Q].tileID);for(let Q of B)Q.posMatrix=this.transform.calculatePosMatrix(Q.toUnwrapped());return B}hasTransition(){if(this._source.hasTransition())return!0;if($t(this._source.type)){let w=u.now();for(let B in this._tiles)if(this._tiles[B].fadeEndTime>=w)return!0}return!1}setFeatureState(w,B,Q){this._state.updateState(w=w||"_geojsonTileLayer",B,Q)}removeFeatureState(w,B,Q){this._state.removeFeatureState(w=w||"_geojsonTileLayer",B,Q)}getFeatureState(w,B){return this._state.getState(w=w||"_geojsonTileLayer",B)}setDependencies(w,B,Q){let ee=this._tiles[w];ee&&ee.setDependencies(B,Q)}reloadTilesForDependencies(w,B){for(let Q in this._tiles)this._tiles[Q].hasDependency(w,B)&&this._reloadTile(Q,"reloading");this._cache.filter(Q=>!Q.hasDependency(w,B))}}function Ht(le,w){let B=Math.abs(2*le.wrap)-+(le.wrap<0),Q=Math.abs(2*w.wrap)-+(w.wrap<0);return le.overscaledZ-w.overscaledZ||Q-B||w.canonical.y-le.canonical.y||w.canonical.x-le.canonical.x}function $t(le){return le==="raster"||le==="image"||le==="video"}dt.maxOverzooming=10,dt.maxUnderzooming=3;class fr{constructor(w,B){this.reset(w,B)}reset(w,B){this.points=w||[],this._distances=[0];for(let Q=1;Q<this.points.length;Q++)this._distances[Q]=this._distances[Q-1]+this.points[Q].dist(this.points[Q-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(B||0,.5*this.length),this.paddedLength=this.length-2*this.padding}lerp(w){if(this.points.length===1)return this.points[0];w=a.ac(w,0,1);let B=1,Q=this._distances[B],ee=w*this.paddedLength+this.padding;for(;Q<ee&&B<this._distances.length;)Q=this._distances[++B];let se=B-1,qe=this._distances[se],je=Q-qe,it=je>0?(ee-qe)/je:0;return this.points[se].mult(1-it).add(this.points[B].mult(it))}}function _r(le,w){let B=!0;return le==="always"||le!=="never"&&w!=="never"||(B=!1),B}class Br{constructor(w,B,Q){let ee=this.boxCells=[],se=this.circleCells=[];this.xCellCount=Math.ceil(w/Q),this.yCellCount=Math.ceil(B/Q);for(let qe=0;qe<this.xCellCount*this.yCellCount;qe++)ee.push([]),se.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=w,this.height=B,this.xScale=this.xCellCount/w,this.yScale=this.yCellCount/B,this.boxUid=0,this.circleUid=0}keysLength(){return this.boxKeys.length+this.circleKeys.length}insert(w,B,Q,ee,se){this._forEachCell(B,Q,ee,se,this._insertBoxCell,this.boxUid++),this.boxKeys.push(w),this.bboxes.push(B),this.bboxes.push(Q),this.bboxes.push(ee),this.bboxes.push(se)}insertCircle(w,B,Q,ee){this._forEachCell(B-ee,Q-ee,B+ee,Q+ee,this._insertCircleCell,this.circleUid++),this.circleKeys.push(w),this.circles.push(B),this.circles.push(Q),this.circles.push(ee)}_insertBoxCell(w,B,Q,ee,se,qe){this.boxCells[se].push(qe)}_insertCircleCell(w,B,Q,ee,se,qe){this.circleCells[se].push(qe)}_query(w,B,Q,ee,se,qe,je){if(Q<0||w>this.width||ee<0||B>this.height)return[];let it=[];if(w<=0&&B<=0&&this.width<=Q&&this.height<=ee){if(se)return[{key:null,x1:w,y1:B,x2:Q,y2:ee}];for(let yt=0;yt<this.boxKeys.length;yt++)it.push({key:this.boxKeys[yt],x1:this.bboxes[4*yt],y1:this.bboxes[4*yt+1],x2:this.bboxes[4*yt+2],y2:this.bboxes[4*yt+3]});for(let yt=0;yt<this.circleKeys.length;yt++){let Ot=this.circles[3*yt],Nt=this.circles[3*yt+1],hr=this.circles[3*yt+2];it.push({key:this.circleKeys[yt],x1:Ot-hr,y1:Nt-hr,x2:Ot+hr,y2:Nt+hr})}}else this._forEachCell(w,B,Q,ee,this._queryCell,it,{hitTest:se,overlapMode:qe,seenUids:{box:{},circle:{}}},je);return it}query(w,B,Q,ee){return this._query(w,B,Q,ee,!1,null)}hitTest(w,B,Q,ee,se,qe){return this._query(w,B,Q,ee,!0,se,qe).length>0}hitTestCircle(w,B,Q,ee,se){let qe=w-Q,je=w+Q,it=B-Q,yt=B+Q;if(je<0||qe>this.width||yt<0||it>this.height)return!1;let Ot=[];return this._forEachCell(qe,it,je,yt,this._queryCellCircle,Ot,{hitTest:!0,overlapMode:ee,circle:{x:w,y:B,radius:Q},seenUids:{box:{},circle:{}}},se),Ot.length>0}_queryCell(w,B,Q,ee,se,qe,je,it){let{seenUids:yt,hitTest:Ot,overlapMode:Nt}=je,hr=this.boxCells[se];if(hr!==null){let he=this.bboxes;for(let be of hr)if(!yt.box[be]){yt.box[be]=!0;let Pe=4*be,Oe=this.boxKeys[be];if(w<=he[Pe+2]&&B<=he[Pe+3]&&Q>=he[Pe+0]&&ee>=he[Pe+1]&&(!it||it(Oe))&&(!Ot||!_r(Nt,Oe.overlapMode))&&(qe.push({key:Oe,x1:he[Pe],y1:he[Pe+1],x2:he[Pe+2],y2:he[Pe+3]}),Ot))return!0}}let Sr=this.circleCells[se];if(Sr!==null){let he=this.circles;for(let be of Sr)if(!yt.circle[be]){yt.circle[be]=!0;let Pe=3*be,Oe=this.circleKeys[be];if(this._circleAndRectCollide(he[Pe],he[Pe+1],he[Pe+2],w,B,Q,ee)&&(!it||it(Oe))&&(!Ot||!_r(Nt,Oe.overlapMode))){let Je=he[Pe],He=he[Pe+1],et=he[Pe+2];if(qe.push({key:Oe,x1:Je-et,y1:He-et,x2:Je+et,y2:He+et}),Ot)return!0}}}return!1}_queryCellCircle(w,B,Q,ee,se,qe,je,it){let{circle:yt,seenUids:Ot,overlapMode:Nt}=je,hr=this.boxCells[se];if(hr!==null){let he=this.bboxes;for(let be of hr)if(!Ot.box[be]){Ot.box[be]=!0;let Pe=4*be,Oe=this.boxKeys[be];if(this._circleAndRectCollide(yt.x,yt.y,yt.radius,he[Pe+0],he[Pe+1],he[Pe+2],he[Pe+3])&&(!it||it(Oe))&&!_r(Nt,Oe.overlapMode))return qe.push(!0),!0}}let Sr=this.circleCells[se];if(Sr!==null){let he=this.circles;for(let be of Sr)if(!Ot.circle[be]){Ot.circle[be]=!0;let Pe=3*be,Oe=this.circleKeys[be];if(this._circlesCollide(he[Pe],he[Pe+1],he[Pe+2],yt.x,yt.y,yt.radius)&&(!it||it(Oe))&&!_r(Nt,Oe.overlapMode))return qe.push(!0),!0}}}_forEachCell(w,B,Q,ee,se,qe,je,it){let yt=this._convertToXCellCoord(w),Ot=this._convertToYCellCoord(B),Nt=this._convertToXCellCoord(Q),hr=this._convertToYCellCoord(ee);for(let Sr=yt;Sr<=Nt;Sr++)for(let he=Ot;he<=hr;he++)if(se.call(this,w,B,Q,ee,this.xCellCount*he+Sr,qe,je,it))return}_convertToXCellCoord(w){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(w*this.xScale)))}_convertToYCellCoord(w){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(w*this.yScale)))}_circlesCollide(w,B,Q,ee,se,qe){let je=ee-w,it=se-B,yt=Q+qe;return yt*yt>je*je+it*it}_circleAndRectCollide(w,B,Q,ee,se,qe,je){let it=(qe-ee)/2,yt=Math.abs(w-(ee+it));if(yt>it+Q)return!1;let Ot=(je-se)/2,Nt=Math.abs(B-(se+Ot));if(Nt>Ot+Q)return!1;if(yt<=it||Nt<=Ot)return!0;let hr=yt-it,Sr=Nt-Ot;return hr*hr+Sr*Sr<=Q*Q}}function Or(le,w,B,Q,ee){let se=a.H();return w?(a.K(se,se,[1/ee,1/ee,1]),B||a.ad(se,se,Q.angle)):a.L(se,Q.labelPlaneMatrix,le),se}function Nr(le,w,B,Q,ee){if(w){let se=a.ae(le);return a.K(se,se,[ee,ee,1]),B||a.ad(se,se,-Q.angle),se}return Q.glCoordMatrix}function ut(le,w,B,Q){let ee;Q?(ee=[le,w,Q(le,w),1],a.af(ee,ee,B)):(ee=[le,w,0,1],jr(ee,ee,B));let se=ee[3];return{point:new a.P(ee[0]/se,ee[1]/se),signedDistanceFromCamera:se,isOccluded:!1}}function Ne(le,w){return .5+le/w*.5}function Ye(le,w){return le.x>=-w[0]&&le.x<=w[0]&&le.y>=-w[1]&&le.y<=w[1]}function Ve(le,w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr,he){let be=Q?le.textSizeData:le.iconSizeData,Pe=a.ag(be,B.transform.zoom),Oe=[256/B.width*2+1,256/B.height*2+1],Je=Q?le.text.dynamicLayoutVertexArray:le.icon.dynamicLayoutVertexArray;Je.clear();let He=le.lineVertexArray,et=Q?le.text.placedSymbolArray:le.icon.placedSymbolArray,Mt=B.transform.width/B.transform.height,Dt=!1;for(let Ut=0;Ut<et.length;Ut++){let tr=et.get(Ut);if(tr.hidden||tr.writingMode===a.ah.vertical&&!Dt){ai(tr.numGlyphs,Je);continue}Dt=!1;let mr=ut(tr.anchorX,tr.anchorY,w,he);if(!Ye(mr.point,Oe)){ai(tr.numGlyphs,Je);continue}let Rr=Ne(B.transform.cameraToCenterDistance,mr.signedDistanceFromCamera),zr=a.ai(be,Pe,tr),Xr=qe?zr/Rr:zr*Rr,di={getElevation:he,labelPlaneMatrix:ee,lineVertexArray:He,pitchWithMap:qe,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:yt,tileAnchorPoint:new a.P(tr.anchorX,tr.anchorY),unwrappedTileID:Ot,width:Nt,height:hr,translation:Sr},Li=Le(di,tr,Xr,!1,je,w,se,le.glyphOffsetArray,Je,Mt,it);Dt=Li.useVertical,(Li.notEnoughRoom||Dt||Li.needsFlipping&&Le(di,tr,Xr,!0,je,w,se,le.glyphOffsetArray,Je,Mt,it).notEnoughRoom)&&ai(tr.numGlyphs,Je)}Q?le.text.dynamicLayoutVertexBuffer.updateData(Je):le.icon.dynamicLayoutVertexBuffer.updateData(Je)}function Xe(le,w,B,Q,ee,se,qe,je){let it=se.glyphStartIndex+se.numGlyphs,yt=se.lineStartIndex,Ot=se.lineStartIndex+se.lineLength,Nt=w.getoffsetX(se.glyphStartIndex),hr=w.getoffsetX(it-1),Sr=ar(le*Nt,B,Q,ee,se.segment,yt,Ot,je,qe);if(!Sr)return null;let he=ar(le*hr,B,Q,ee,se.segment,yt,Ot,je,qe);return he?je.projectionCache.anyProjectionOccluded?null:{first:Sr,last:he}:null}function ht(le,w,B,Q){return le===a.ah.horizontal&&Math.abs(B.y-w.y)>Math.abs(B.x-w.x)*Q?{useVertical:!0}:(le===a.ah.vertical?w.y<B.y:w.x>B.x)?{needsFlipping:!0}:null}function Le(le,w,B,Q,ee,se,qe,je,it,yt,Ot){let Nt=B/24,hr=w.lineOffsetX*Nt,Sr=w.lineOffsetY*Nt,he;if(w.numGlyphs>1){let be=w.glyphStartIndex+w.numGlyphs,Pe=w.lineStartIndex,Oe=w.lineStartIndex+w.lineLength,Je=Xe(Nt,je,hr,Sr,Q,w,Ot,le);if(!Je)return{notEnoughRoom:!0};let He=ut(Je.first.point.x,Je.first.point.y,qe,le.getElevation).point,et=ut(Je.last.point.x,Je.last.point.y,qe,le.getElevation).point;if(ee&&!Q){let Mt=ht(w.writingMode,He,et,yt);if(Mt)return Mt}he=[Je.first];for(let Mt=w.glyphStartIndex+1;Mt<be-1;Mt++)he.push(ar(Nt*je.getoffsetX(Mt),hr,Sr,Q,w.segment,Pe,Oe,le,Ot));he.push(Je.last)}else{if(ee&&!Q){let Pe=ut(le.tileAnchorPoint.x,le.tileAnchorPoint.y,se,le.getElevation).point,Oe=w.lineStartIndex+w.segment+1,Je=new a.P(le.lineVertexArray.getx(Oe),le.lineVertexArray.gety(Oe)),He=ut(Je.x,Je.y,se,le.getElevation),et=He.signedDistanceFromCamera>0?He.point:function(Dt,Ut,tr,mr,Rr,zr){return xe(Dt,Ut,tr,1,Rr,zr)}(le.tileAnchorPoint,Je,Pe,0,se,le),Mt=ht(w.writingMode,Pe,et,yt);if(Mt)return Mt}let be=ar(Nt*je.getoffsetX(w.glyphStartIndex),hr,Sr,Q,w.segment,w.lineStartIndex,w.lineStartIndex+w.lineLength,le,Ot);if(!be||le.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};he=[be]}for(let be of he)a.aj(it,be.point,be.angle);return{}}function xe(le,w,B,Q,ee,se){let qe=le.add(le.sub(w)._unit()),je=ee!==void 0?ut(qe.x,qe.y,ee,se.getElevation).point:lt(qe.x,qe.y,se).point,it=B.sub(je);return B.add(it._mult(Q/it.mag()))}function Se(le,w,B){let Q=w.projectionCache;if(Q.projections[le])return Q.projections[le];let ee=new a.P(w.lineVertexArray.getx(le),w.lineVertexArray.gety(le)),se=lt(ee.x,ee.y,w);if(se.signedDistanceFromCamera>0)return Q.projections[le]=se.point,Q.anyProjectionOccluded=Q.anyProjectionOccluded||se.isOccluded,se.point;let qe=le-B.direction;return function(je,it,yt,Ot,Nt){return xe(je,it,yt,Ot,void 0,Nt)}(B.distanceFromAnchor===0?w.tileAnchorPoint:new a.P(w.lineVertexArray.getx(qe),w.lineVertexArray.gety(qe)),ee,B.previousVertex,B.absOffsetX-B.distanceFromAnchor+1,w)}function lt(le,w,B){let Q=le+B.translation[0],ee=w+B.translation[1],se;return!B.pitchWithMap&&B.projection.useSpecialProjectionForSymbols?(se=B.projection.projectTileCoordinates(Q,ee,B.unwrappedTileID,B.getElevation),se.point.x=(.5*se.point.x+.5)*B.width,se.point.y=(.5*-se.point.y+.5)*B.height):(se=ut(Q,ee,B.labelPlaneMatrix,B.getElevation),se.isOccluded=!1),se}function Gt(le,w,B){return le._unit()._perp()._mult(w*B)}function Vt(le,w,B,Q,ee,se,qe,je,it){if(je.projectionCache.offsets[le])return je.projectionCache.offsets[le];let yt=B.add(w);if(le+it.direction<Q||le+it.direction>=ee)return je.projectionCache.offsets[le]=yt,yt;let Ot=Se(le+it.direction,je,it),Nt=Gt(Ot.sub(B),qe,it.direction),hr=B.add(Nt),Sr=Ot.add(Nt);return je.projectionCache.offsets[le]=a.ak(se,yt,hr,Sr)||yt,je.projectionCache.offsets[le]}function ar(le,w,B,Q,ee,se,qe,je,it){let yt=Q?le-w:le+w,Ot=yt>0?1:-1,Nt=0;Q&&(Ot*=-1,Nt=Math.PI),Ot<0&&(Nt+=Math.PI);let hr,Sr=Ot>0?se+ee:se+ee+1;je.projectionCache.cachedAnchorPoint?hr=je.projectionCache.cachedAnchorPoint:(hr=lt(je.tileAnchorPoint.x,je.tileAnchorPoint.y,je).point,je.projectionCache.cachedAnchorPoint=hr);let he,be,Pe=hr,Oe=hr,Je=0,He=0,et=Math.abs(yt),Mt=[],Dt;for(;Je+He<=et;){if(Sr+=Ot,Sr<se||Sr>=qe)return null;Je+=He,Oe=Pe,be=he;let mr={absOffsetX:et,direction:Ot,distanceFromAnchor:Je,previousVertex:Oe};if(Pe=Se(Sr,je,mr),B===0)Mt.push(Oe),Dt=Pe.sub(Oe);else{let Rr,zr=Pe.sub(Oe);Rr=zr.mag()===0?Gt(Se(Sr+Ot,je,mr).sub(Pe),B,Ot):Gt(zr,B,Ot),be||(be=Oe.add(Rr)),he=Vt(Sr,Rr,Pe,se,qe,be,B,je,mr),Mt.push(be),Dt=he.sub(be)}He=Dt.mag()}let Ut=Dt._mult((et-Je)/He)._add(be||Oe),tr=Nt+Math.atan2(Pe.y-Oe.y,Pe.x-Oe.x);return Mt.push(Ut),{point:Ut,angle:it?tr:0,path:Mt}}let Qr=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function ai(le,w){for(let B=0;B<le;B++){let Q=w.length;w.resize(Q+4),w.float32.set(Qr,3*Q)}}function jr(le,w,B){let Q=w[0],ee=w[1];return le[0]=B[0]*Q+B[4]*ee+B[12],le[1]=B[1]*Q+B[5]*ee+B[13],le[3]=B[3]*Q+B[7]*ee+B[15],le}let ri=100;class bi{constructor(w,B,Q=new Br(w.width+200,w.height+200,25),ee=new Br(w.width+200,w.height+200,25)){this.transform=w,this.mapProjection=B,this.grid=Q,this.ignoredGrid=ee,this.pitchFactor=Math.cos(w._pitch)*w.cameraToCenterDistance,this.screenRightBoundary=w.width+ri,this.screenBottomBoundary=w.height+ri,this.gridRightBoundary=w.width+200,this.gridBottomBoundary=w.height+200,this.perspectiveRatioCutoff=.6}placeCollisionBox(w,B,Q,ee,se,qe,je,it,yt,Ot,Nt){let hr=w.anchorPointX+it[0],Sr=w.anchorPointY+it[1],he=this.projectAndGetPerspectiveRatio(ee,hr,Sr,se,Ot),be=Q*he.perspectiveRatio,Pe;if(qe||je)Pe=this._projectCollisionBox(w,be,ee,se,qe,je,it,he,Ot,Nt);else{let Mt=he.point.x+(Nt?Nt.x*be:0),Dt=he.point.y+(Nt?Nt.y*be:0);Pe={allPointsOccluded:!1,box:[Mt+w.x1*be,Dt+w.y1*be,Mt+w.x2*be,Dt+w.y2*be]}}let[Oe,Je,He,et]=Pe.box;return this.mapProjection.useSpecialProjectionForSymbols&&(qe?Pe.allPointsOccluded:this.mapProjection.isOccluded(hr,Sr,se))||he.perspectiveRatio<this.perspectiveRatioCutoff||!this.isInsideGrid(Oe,Je,He,et)||B!=="always"&&this.grid.hitTest(Oe,Je,He,et,B,yt)?{box:[Oe,Je,He,et],placeable:!1,offscreen:!1}:{box:[Oe,Je,He,et],placeable:!0,offscreen:this.isOffscreen(Oe,Je,He,et)}}placeCollisionCircles(w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr,he,be,Pe){let Oe=[],Je=new a.P(B.anchorX,B.anchorY),He=this.getPerspectiveRatio(qe,Je.x,Je.y,je,Pe),et=(Nt?se/He:se*He)/a.ap,Mt={getElevation:Pe,labelPlaneMatrix:it,lineVertexArray:Q,pitchWithMap:Nt,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:this.mapProjection,tileAnchorPoint:Je,unwrappedTileID:je,width:this.transform.width,height:this.transform.height,translation:be},Dt=Xe(et,ee,B.lineOffsetX*et,B.lineOffsetY*et,!1,B,!1,Mt),Ut=!1,tr=!1,mr=!0;if(Dt){let Rr=.5*Sr*He+he,zr=new a.P(-100,-100),Xr=new a.P(this.screenRightBoundary,this.screenBottomBoundary),di=new fr,Li=Dt.first,Ci=Dt.last,Qi=[];for(let ea=Li.path.length-1;ea>=1;ea--)Qi.push(Li.path[ea]);for(let ea=1;ea<Ci.path.length;ea++)Qi.push(Ci.path[ea]);let Mn=2.5*Rr;if(yt){let ea=this.projectPathToScreenSpace(Qi,Mt,yt);Qi=ea.some(Ga=>Ga.signedDistanceFromCamera<=0)?[]:ea.map(Ga=>Ga.point)}let pa=[];if(Qi.length>0){let ea=Qi[0].clone(),Ga=Qi[0].clone();for(let To=1;To<Qi.length;To++)ea.x=Math.min(ea.x,Qi[To].x),ea.y=Math.min(ea.y,Qi[To].y),Ga.x=Math.max(Ga.x,Qi[To].x),Ga.y=Math.max(Ga.y,Qi[To].y);pa=ea.x>=zr.x&&Ga.x<=Xr.x&&ea.y>=zr.y&&Ga.y<=Xr.y?[Qi]:Ga.x<zr.x||ea.x>Xr.x||Ga.y<zr.y||ea.y>Xr.y?[]:a.al([Qi],zr.x,zr.y,Xr.x,Xr.y)}for(let ea of pa){di.reset(ea,.25*Rr);let Ga=0;Ga=di.length<=.5*Rr?1:Math.ceil(di.paddedLength/Mn)+1;for(let To=0;To<Ga;To++){let Wa=To/Math.max(Ga-1,1),co=di.lerp(Wa),Ro=co.x+ri,Ds=co.y+ri;Oe.push(Ro,Ds,Rr,0);let As=Ro-Rr,yo=Ds-Rr,po=Ro+Rr,_l=Ds+Rr;if(mr=mr&&this.isOffscreen(As,yo,po,_l),tr=tr||this.isInsideGrid(As,yo,po,_l),w!=="always"&&this.grid.hitTestCircle(Ro,Ds,Rr,w,hr)&&(Ut=!0,!Ot))return{circles:[],offscreen:!1,collisionDetected:Ut}}}}return{circles:!Ot&&Ut||!tr||He<this.perspectiveRatioCutoff?[]:Oe,offscreen:mr,collisionDetected:Ut}}projectPathToScreenSpace(w,B,Q){return w.map(ee=>ut(ee.x,ee.y,Q,B.getElevation))}queryRenderedSymbols(w){if(w.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let B=[],Q=1/0,ee=1/0,se=-1/0,qe=-1/0;for(let Ot of w){let Nt=new a.P(Ot.x+ri,Ot.y+ri);Q=Math.min(Q,Nt.x),ee=Math.min(ee,Nt.y),se=Math.max(se,Nt.x),qe=Math.max(qe,Nt.y),B.push(Nt)}let je=this.grid.query(Q,ee,se,qe).concat(this.ignoredGrid.query(Q,ee,se,qe)),it={},yt={};for(let Ot of je){let Nt=Ot.key;if(it[Nt.bucketInstanceId]===void 0&&(it[Nt.bucketInstanceId]={}),it[Nt.bucketInstanceId][Nt.featureIndex])continue;let hr=[new a.P(Ot.x1,Ot.y1),new a.P(Ot.x2,Ot.y1),new a.P(Ot.x2,Ot.y2),new a.P(Ot.x1,Ot.y2)];a.am(B,hr)&&(it[Nt.bucketInstanceId][Nt.featureIndex]=!0,yt[Nt.bucketInstanceId]===void 0&&(yt[Nt.bucketInstanceId]=[]),yt[Nt.bucketInstanceId].push(Nt.featureIndex))}return yt}insertCollisionBox(w,B,Q,ee,se,qe){(Q?this.ignoredGrid:this.grid).insert({bucketInstanceId:ee,featureIndex:se,collisionGroupID:qe,overlapMode:B},w[0],w[1],w[2],w[3])}insertCollisionCircles(w,B,Q,ee,se,qe){let je=Q?this.ignoredGrid:this.grid,it={bucketInstanceId:ee,featureIndex:se,collisionGroupID:qe,overlapMode:B};for(let yt=0;yt<w.length;yt+=4)je.insertCircle(it,w[yt],w[yt+1],w[yt+2])}projectAndGetPerspectiveRatio(w,B,Q,ee,se){let qe;se?(qe=[B,Q,se(B,Q),1],a.af(qe,qe,w)):(qe=[B,Q,0,1],jr(qe,qe,w));let je=qe[3];return{point:new a.P((qe[0]/je+1)/2*this.transform.width+ri,(-qe[1]/je+1)/2*this.transform.height+ri),perspectiveRatio:.5+this.transform.cameraToCenterDistance/je*.5,isOccluded:!1,signedDistanceFromCamera:je}}getPerspectiveRatio(w,B,Q,ee,se){let qe=this.mapProjection.useSpecialProjectionForSymbols?this.mapProjection.projectTileCoordinates(B,Q,ee,se):ut(B,Q,w,se);return .5+this.transform.cameraToCenterDistance/qe.signedDistanceFromCamera*.5}isOffscreen(w,B,Q,ee){return Q<ri||w>=this.screenRightBoundary||ee<ri||B>this.screenBottomBoundary}isInsideGrid(w,B,Q,ee){return Q>=0&&w<this.gridRightBoundary&&ee>=0&&B<this.gridBottomBoundary}getViewportMatrix(){let w=a.an([]);return a.J(w,w,[-100,-100,0]),w}_projectCollisionBox(w,B,Q,ee,se,qe,je,it,yt,Ot){let Nt=new a.P(1,0),hr=new a.P(0,1),Sr=new a.P(w.anchorPointX+je[0],w.anchorPointY+je[1]);if(qe&&!se){let mr=this.projectAndGetPerspectiveRatio(Q,Sr.x+1,Sr.y,ee,yt).point.sub(it.point).unit(),Rr=Math.atan(mr.y/mr.x)+(mr.x<0?Math.PI:0),zr=Math.sin(Rr),Xr=Math.cos(Rr);Nt=new a.P(Xr,zr),hr=new a.P(-zr,Xr)}else if(!qe&&se){let mr=-this.transform.angle,Rr=Math.sin(mr),zr=Math.cos(mr);Nt=new a.P(zr,Rr),hr=new a.P(-Rr,zr)}let he=it.point,be=B;if(se){he=Sr;let mr=this.transform.zoom-Math.floor(this.transform.zoom);be=Math.pow(2,-mr),be*=this.mapProjection.getPitchedTextCorrection(this.transform,Sr,ee),Ot||(be*=a.ac(.5+it.signedDistanceFromCamera/this.transform.cameraToCenterDistance*.5,0,4))}Ot&&(he=he.add(Nt.mult(Ot.x*be)).add(hr.mult(Ot.y*be)));let Pe=w.x1*be,Oe=w.x2*be,Je=(Pe+Oe)/2,He=w.y1*be,et=w.y2*be,Mt=(He+et)/2,Dt=[{offsetX:Pe,offsetY:He},{offsetX:Je,offsetY:He},{offsetX:Oe,offsetY:He},{offsetX:Oe,offsetY:Mt},{offsetX:Oe,offsetY:et},{offsetX:Je,offsetY:et},{offsetX:Pe,offsetY:et},{offsetX:Pe,offsetY:Mt}],Ut=[];for(let{offsetX:mr,offsetY:Rr}of Dt)Ut.push(new a.P(he.x+Nt.x*mr+hr.x*Rr,he.y+Nt.y*mr+hr.y*Rr));let tr=!1;if(se){let mr=Ut.map(Rr=>this.projectAndGetPerspectiveRatio(Q,Rr.x,Rr.y,ee,yt));tr=mr.some(Rr=>!Rr.isOccluded),Ut=mr.map(Rr=>Rr.point)}else tr=!0;return{box:a.ao(Ut),allPointsOccluded:!tr}}}function nn(le,w,B){return w*(a.X/(le.tileSize*Math.pow(2,B-le.tileID.overscaledZ)))}class Wi{constructor(w,B,Q,ee){this.opacity=w?Math.max(0,Math.min(1,w.opacity+(w.placed?B:-B))):ee&&Q?1:0,this.placed=Q}isHidden(){return this.opacity===0&&!this.placed}}class Ni{constructor(w,B,Q,ee,se){this.text=new Wi(w?w.text:null,B,Q,se),this.icon=new Wi(w?w.icon:null,B,ee,se)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class _n{constructor(w,B,Q){this.text=w,this.icon=B,this.skipFade=Q}}class $i{constructor(){this.invProjMatrix=a.H(),this.viewportMatrix=a.H(),this.circles=[]}}class zn{constructor(w,B,Q,ee,se){this.bucketInstanceId=w,this.featureIndex=B,this.sourceLayerIndex=Q,this.bucketIndex=ee,this.tileID=se}}class Wn{constructor(w){this.crossSourceCollisions=w,this.maxGroupID=0,this.collisionGroups={}}get(w){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[w]){let B=++this.maxGroupID;this.collisionGroups[w]={ID:B,predicate:Q=>Q.collisionGroupID===B}}return this.collisionGroups[w]}}function It(le,w,B,Q,ee){let{horizontalAlign:se,verticalAlign:qe}=a.au(le);return new a.P(-(se-.5)*w+Q[0]*ee,-(qe-.5)*B+Q[1]*ee)}class ft{constructor(w,B,Q,ee,se,qe){this.transform=w.clone(),this.terrain=Q,this.collisionIndex=new bi(this.transform,B),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ee,this.retainedQueryData={},this.collisionGroups=new Wn(se),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=qe,qe&&(qe.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(w){let B=this.terrain;return B?(Q,ee)=>B.getElevation(w,Q,ee):null}getBucketParts(w,B,Q,ee){let se=Q.getBucket(B),qe=Q.latestFeatureIndex;if(!se||!qe||B.id!==se.layerIds[0])return;let je=Q.collisionBoxArray,it=se.layers[0].layout,yt=se.layers[0].paint,Ot=Math.pow(2,this.transform.zoom-Q.tileID.overscaledZ),Nt=Q.tileSize/a.X,hr=Q.tileID.toUnwrapped(),Sr=this.transform.calculatePosMatrix(hr),he=it.get("text-pitch-alignment")==="map",be=it.get("text-rotation-alignment")==="map",Pe=nn(Q,1,this.transform.zoom),Oe=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,yt.get("text-translate"),yt.get("text-translate-anchor")),Je=this.collisionIndex.mapProjection.translatePosition(this.transform,Q,yt.get("icon-translate"),yt.get("icon-translate-anchor")),He=Or(Sr,he,be,this.transform,Pe),et=null;if(he){let Dt=Nr(Sr,he,be,this.transform,Pe);et=a.L([],this.transform.labelPlaneMatrix,Dt)}this.retainedQueryData[se.bucketInstanceId]=new zn(se.bucketInstanceId,qe,se.sourceLayerIndex,se.index,Q.tileID);let Mt={bucket:se,layout:it,translationText:Oe,translationIcon:Je,posMatrix:Sr,unwrappedTileID:hr,textLabelPlaneMatrix:He,labelToScreenMatrix:et,scale:Ot,textPixelRatio:Nt,holdingForFade:Q.holdingForFade(),collisionBoxArray:je,partiallyEvaluatedTextSize:a.ag(se.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(se.sourceID)};if(ee)for(let Dt of se.sortKeyRanges){let{sortKey:Ut,symbolInstanceStart:tr,symbolInstanceEnd:mr}=Dt;w.push({sortKey:Ut,symbolInstanceStart:tr,symbolInstanceEnd:mr,parameters:Mt})}else w.push({symbolInstanceStart:0,symbolInstanceEnd:se.symbolInstances.length,parameters:Mt})}attemptAnchorPlacement(w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr,he,be,Pe,Oe,Je,He){let et=a.aq[w.textAnchor],Mt=[w.textOffset0,w.textOffset1],Dt=It(et,Q,ee,Mt,se),Ut=this.collisionIndex.placeCollisionBox(B,hr,it,yt,Ot,je,qe,Pe,Nt.predicate,He,Dt);if((!Je||this.collisionIndex.placeCollisionBox(Je,hr,it,yt,Ot,je,qe,Oe,Nt.predicate,He,Dt).placeable)&&Ut.placeable){let tr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[Sr.crossTileID]&&this.prevPlacement.placements[Sr.crossTileID]&&this.prevPlacement.placements[Sr.crossTileID].text&&(tr=this.prevPlacement.variableOffsets[Sr.crossTileID].anchor),Sr.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[Sr.crossTileID]={textOffset:Mt,width:Q,height:ee,anchor:et,textBoxScale:se,prevAnchor:tr},this.markUsedJustification(he,et,Sr,be),he.allowVerticalPlacement&&(this.markUsedOrientation(he,be,Sr),this.placedOrientations[Sr.crossTileID]=be),{shift:Dt,placedGlyphBoxes:Ut}}}placeLayerBucketPart(w,B,Q){let{bucket:ee,layout:se,translationText:qe,translationIcon:je,posMatrix:it,unwrappedTileID:yt,textLabelPlaneMatrix:Ot,labelToScreenMatrix:Nt,textPixelRatio:hr,holdingForFade:Sr,collisionBoxArray:he,partiallyEvaluatedTextSize:be,collisionGroup:Pe}=w.parameters,Oe=se.get("text-optional"),Je=se.get("icon-optional"),He=a.ar(se,"text-overlap","text-allow-overlap"),et=He==="always",Mt=a.ar(se,"icon-overlap","icon-allow-overlap"),Dt=Mt==="always",Ut=se.get("text-rotation-alignment")==="map",tr=se.get("text-pitch-alignment")==="map",mr=se.get("icon-text-fit")!=="none",Rr=se.get("symbol-z-order")==="viewport-y",zr=et&&(Dt||!ee.hasIconData()||Je),Xr=Dt&&(et||!ee.hasTextData()||Oe);!ee.collisionArrays&&he&&ee.deserializeCollisionBoxes(he);let di=this._getTerrainElevationFunc(this.retainedQueryData[ee.bucketInstanceId].tileID),Li=(Ci,Qi,Mn)=>{var pa,ea;if(B[Ci.crossTileID])return;if(Sr)return void(this.placements[Ci.crossTileID]=new _n(!1,!1,!1));let Ga=!1,To=!1,Wa=!0,co=null,Ro={box:null,placeable:!1,offscreen:null},Ds={box:null,placeable:!1,offscreen:null},As=null,yo=null,po=null,_l=0,Hl=0,Zu=0;Qi.textFeatureIndex?_l=Qi.textFeatureIndex:Ci.useRuntimeCollisionCircles&&(_l=Ci.featureIndex),Qi.verticalTextFeatureIndex&&(Hl=Qi.verticalTextFeatureIndex);let cu=Qi.textBox;if(cu){let zl=we=>{let Be=a.ah.horizontal;if(ee.allowVerticalPlacement&&!we&&this.prevPlacement){let Ue=this.prevPlacement.placedOrientations[Ci.crossTileID];Ue&&(this.placedOrientations[Ci.crossTileID]=Ue,Be=Ue,this.markUsedOrientation(ee,Be,Ci))}return Be},Fl=(we,Be)=>{if(ee.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&Qi.verticalTextBox){for(let Ue of ee.writingModes)if(Ue===a.ah.vertical?(Ro=Be(),Ds=Ro):Ro=we(),Ro&&Ro.placeable)break}else Ro=we()},Z=Ci.textAnchorOffsetStartIndex,oe=Ci.textAnchorOffsetEndIndex;if(oe===Z){let we=(Be,Ue)=>{let We=this.collisionIndex.placeCollisionBox(Be,He,hr,it,yt,tr,Ut,qe,Pe.predicate,di);return We&&We.placeable&&(this.markUsedOrientation(ee,Ue,Ci),this.placedOrientations[Ci.crossTileID]=Ue),We};Fl(()=>we(cu,a.ah.horizontal),()=>{let Be=Qi.verticalTextBox;return ee.allowVerticalPlacement&&Ci.numVerticalGlyphVertices>0&&Be?we(Be,a.ah.vertical):{box:null,offscreen:null}}),zl(Ro&&Ro.placeable)}else{let we=a.aq[(ea=(pa=this.prevPlacement)===null||pa===void 0?void 0:pa.variableOffsets[Ci.crossTileID])===null||ea===void 0?void 0:ea.anchor],Be=(We,wt,tt)=>{let zt=We.x2-We.x1,or=We.y2-We.y1,lr=Ci.textBoxScale,Dr=mr&&Mt==="never"?wt:null,Ir=null,oi=He==="never"?1:2,ui="never";we&&oi++;for(let qr=0;qr<oi;qr++){for(let Kr=Z;Kr<oe;Kr++){let ii=ee.textAnchorOffsets.get(Kr);if(we&&ii.textAnchor!==we)continue;let vi=this.attemptAnchorPlacement(ii,We,zt,or,lr,Ut,tr,hr,it,yt,Pe,ui,Ci,ee,tt,qe,je,Dr,di);if(vi&&(Ir=vi.placedGlyphBoxes,Ir&&Ir.placeable))return Ga=!0,co=vi.shift,Ir}we?we=null:ui=He}return Q&&!Ir&&(Ir={box:this.collisionIndex.placeCollisionBox(cu,"always",hr,it,yt,tr,Ut,qe,Pe.predicate,di,new a.P(0,0)).box,offscreen:!1,placeable:!1}),Ir};Fl(()=>Be(cu,Qi.iconBox,a.ah.horizontal),()=>{let We=Qi.verticalTextBox;return ee.allowVerticalPlacement&&(!Ro||!Ro.placeable)&&Ci.numVerticalGlyphVertices>0&&We?Be(We,Qi.verticalIconBox,a.ah.vertical):{box:null,occluded:!0,offscreen:null}}),Ro&&(Ga=Ro.placeable,Wa=Ro.offscreen);let Ue=zl(Ro&&Ro.placeable);if(!Ga&&this.prevPlacement){let We=this.prevPlacement.variableOffsets[Ci.crossTileID];We&&(this.variableOffsets[Ci.crossTileID]=We,this.markUsedJustification(ee,We.anchor,Ci,Ue))}}}if(As=Ro,Ga=As&&As.placeable,Wa=As&&As.offscreen,Ci.useRuntimeCollisionCircles){let zl=ee.text.placedSymbolArray.get(Ci.centerJustifiedTextSymbolIndex),Fl=a.ai(ee.textSizeData,be,zl),Z=se.get("text-padding");yo=this.collisionIndex.placeCollisionCircles(He,zl,ee.lineVertexArray,ee.glyphOffsetArray,Fl,it,yt,Ot,Nt,Q,tr,Pe.predicate,Ci.collisionCircleDiameter,Z,qe,di),yo.circles.length&&yo.collisionDetected&&!Q&&a.w("Collisions detected, but collision boxes are not shown"),Ga=et||yo.circles.length>0&&!yo.collisionDetected,Wa=Wa&&yo.offscreen}if(Qi.iconFeatureIndex&&(Zu=Qi.iconFeatureIndex),Qi.iconBox){let zl=Fl=>this.collisionIndex.placeCollisionBox(Fl,Mt,hr,it,yt,tr,Ut,je,Pe.predicate,di,mr&&co?co:void 0);Ds&&Ds.placeable&&Qi.verticalIconBox?(po=zl(Qi.verticalIconBox),To=po.placeable):(po=zl(Qi.iconBox),To=po.placeable),Wa=Wa&&po.offscreen}let el=Oe||Ci.numHorizontalGlyphVertices===0&&Ci.numVerticalGlyphVertices===0,au=Je||Ci.numIconVertices===0;el||au?au?el||(To=To&&Ga):Ga=To&&Ga:To=Ga=To&&Ga;let zc=To&&po.placeable;if(Ga&&As.placeable&&this.collisionIndex.insertCollisionBox(As.box,He,se.get("text-ignore-placement"),ee.bucketInstanceId,Ds&&Ds.placeable&&Hl?Hl:_l,Pe.ID),zc&&this.collisionIndex.insertCollisionBox(po.box,Mt,se.get("icon-ignore-placement"),ee.bucketInstanceId,Zu,Pe.ID),yo&&Ga&&this.collisionIndex.insertCollisionCircles(yo.circles,He,se.get("text-ignore-placement"),ee.bucketInstanceId,_l,Pe.ID),Q&&this.storeCollisionData(ee.bucketInstanceId,Mn,Qi,As,po,yo),Ci.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(ee.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[Ci.crossTileID]=new _n(Ga||zr,To||Xr,Wa||ee.justReloaded),B[Ci.crossTileID]=!0};if(Rr){if(w.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let Ci=ee.getSortedSymbolIndexes(this.transform.angle);for(let Qi=Ci.length-1;Qi>=0;--Qi){let Mn=Ci[Qi];Li(ee.symbolInstances.get(Mn),ee.collisionArrays[Mn],Mn)}}else for(let Ci=w.symbolInstanceStart;Ci<w.symbolInstanceEnd;Ci++)Li(ee.symbolInstances.get(Ci),ee.collisionArrays[Ci],Ci);if(Q&&ee.bucketInstanceId in this.collisionCircleArrays){let Ci=this.collisionCircleArrays[ee.bucketInstanceId];a.as(Ci.invProjMatrix,it),Ci.viewportMatrix=this.collisionIndex.getViewportMatrix()}ee.justReloaded=!1}storeCollisionData(w,B,Q,ee,se,qe){if(Q.textBox||Q.iconBox){let je,it;this.collisionBoxArrays.has(w)?je=this.collisionBoxArrays.get(w):(je=new Map,this.collisionBoxArrays.set(w,je)),je.has(B)?it=je.get(B):(it={text:null,icon:null},je.set(B,it)),Q.textBox&&(it.text=ee.box),Q.iconBox&&(it.icon=se.box)}if(qe){let je=this.collisionCircleArrays[w];je===void 0&&(je=this.collisionCircleArrays[w]=new $i);for(let it=0;it<qe.circles.length;it+=4)je.circles.push(qe.circles[it+0]),je.circles.push(qe.circles[it+1]),je.circles.push(qe.circles[it+2]),je.circles.push(qe.collisionDetected?1:0)}}markUsedJustification(w,B,Q,ee){let se;se=ee===a.ah.vertical?Q.verticalPlacedTextSymbolIndex:{left:Q.leftJustifiedTextSymbolIndex,center:Q.centerJustifiedTextSymbolIndex,right:Q.rightJustifiedTextSymbolIndex}[a.at(B)];let qe=[Q.leftJustifiedTextSymbolIndex,Q.centerJustifiedTextSymbolIndex,Q.rightJustifiedTextSymbolIndex,Q.verticalPlacedTextSymbolIndex];for(let je of qe)je>=0&&(w.text.placedSymbolArray.get(je).crossTileID=se>=0&&je!==se?0:Q.crossTileID)}markUsedOrientation(w,B,Q){let ee=B===a.ah.horizontal||B===a.ah.horizontalOnly?B:0,se=B===a.ah.vertical?B:0,qe=[Q.leftJustifiedTextSymbolIndex,Q.centerJustifiedTextSymbolIndex,Q.rightJustifiedTextSymbolIndex];for(let je of qe)w.text.placedSymbolArray.get(je).placedOrientation=ee;Q.verticalPlacedTextSymbolIndex&&(w.text.placedSymbolArray.get(Q.verticalPlacedTextSymbolIndex).placedOrientation=se)}commit(w){this.commitTime=w,this.zoomAtLastRecencyCheck=this.transform.zoom;let B=this.prevPlacement,Q=!1;this.prevZoomAdjustment=B?B.zoomAdjustment(this.transform.zoom):0;let ee=B?B.symbolFadeChange(w):1,se=B?B.opacities:{},qe=B?B.variableOffsets:{},je=B?B.placedOrientations:{};for(let it in this.placements){let yt=this.placements[it],Ot=se[it];Ot?(this.opacities[it]=new Ni(Ot,ee,yt.text,yt.icon),Q=Q||yt.text!==Ot.text.placed||yt.icon!==Ot.icon.placed):(this.opacities[it]=new Ni(null,ee,yt.text,yt.icon,yt.skipFade),Q=Q||yt.text||yt.icon)}for(let it in se){let yt=se[it];if(!this.opacities[it]){let Ot=new Ni(yt,ee,!1,!1);Ot.isHidden()||(this.opacities[it]=Ot,Q=Q||yt.text.placed||yt.icon.placed)}}for(let it in qe)this.variableOffsets[it]||!this.opacities[it]||this.opacities[it].isHidden()||(this.variableOffsets[it]=qe[it]);for(let it in je)this.placedOrientations[it]||!this.opacities[it]||this.opacities[it].isHidden()||(this.placedOrientations[it]=je[it]);if(B&&B.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");Q?this.lastPlacementChangeTime=w:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=B?B.lastPlacementChangeTime:w)}updateLayerOpacities(w,B){let Q={};for(let ee of B){let se=ee.getBucket(w);se&&ee.latestFeatureIndex&&w.id===se.layerIds[0]&&this.updateBucketOpacities(se,ee.tileID,Q,ee.collisionBoxArray)}}updateBucketOpacities(w,B,Q,ee){w.hasTextData()&&(w.text.opacityVertexArray.clear(),w.text.hasVisibleVertices=!1),w.hasIconData()&&(w.icon.opacityVertexArray.clear(),w.icon.hasVisibleVertices=!1),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexArray.clear(),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexArray.clear();let se=w.layers[0],qe=se.layout,je=new Ni(null,0,!1,!1,!0),it=qe.get("text-allow-overlap"),yt=qe.get("icon-allow-overlap"),Ot=se._unevaluatedLayout.hasValue("text-variable-anchor")||se._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Nt=qe.get("text-rotation-alignment")==="map",hr=qe.get("text-pitch-alignment")==="map",Sr=qe.get("icon-text-fit")!=="none",he=new Ni(null,0,it&&(yt||!w.hasIconData()||qe.get("icon-optional")),yt&&(it||!w.hasTextData()||qe.get("text-optional")),!0);!w.collisionArrays&&ee&&(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData())&&w.deserializeCollisionBoxes(ee);let be=(Oe,Je,He)=>{for(let et=0;et<Je/4;et++)Oe.opacityVertexArray.emplaceBack(He);Oe.hasVisibleVertices=Oe.hasVisibleVertices||He!==Pi},Pe=this.collisionBoxArrays.get(w.bucketInstanceId);for(let Oe=0;Oe<w.symbolInstances.length;Oe++){let Je=w.symbolInstances.get(Oe),{numHorizontalGlyphVertices:He,numVerticalGlyphVertices:et,crossTileID:Mt}=Je,Dt=this.opacities[Mt];Q[Mt]?Dt=je:Dt||(Dt=he,this.opacities[Mt]=Dt),Q[Mt]=!0;let Ut=Je.numIconVertices>0,tr=this.placedOrientations[Je.crossTileID],mr=tr===a.ah.vertical,Rr=tr===a.ah.horizontal||tr===a.ah.horizontalOnly;if(He>0||et>0){let Xr=Mi(Dt.text);be(w.text,He,mr?Pi:Xr),be(w.text,et,Rr?Pi:Xr);let di=Dt.text.isHidden();[Je.rightJustifiedTextSymbolIndex,Je.centerJustifiedTextSymbolIndex,Je.leftJustifiedTextSymbolIndex].forEach(Qi=>{Qi>=0&&(w.text.placedSymbolArray.get(Qi).hidden=di||mr?1:0)}),Je.verticalPlacedTextSymbolIndex>=0&&(w.text.placedSymbolArray.get(Je.verticalPlacedTextSymbolIndex).hidden=di||Rr?1:0);let Li=this.variableOffsets[Je.crossTileID];Li&&this.markUsedJustification(w,Li.anchor,Je,tr);let Ci=this.placedOrientations[Je.crossTileID];Ci&&(this.markUsedJustification(w,"left",Je,Ci),this.markUsedOrientation(w,Ci,Je))}if(Ut){let Xr=Mi(Dt.icon),di=!(Sr&&Je.verticalPlacedIconSymbolIndex&&mr);Je.placedIconSymbolIndex>=0&&(be(w.icon,Je.numIconVertices,di?Xr:Pi),w.icon.placedSymbolArray.get(Je.placedIconSymbolIndex).hidden=Dt.icon.isHidden()),Je.verticalPlacedIconSymbolIndex>=0&&(be(w.icon,Je.numVerticalIconVertices,di?Pi:Xr),w.icon.placedSymbolArray.get(Je.verticalPlacedIconSymbolIndex).hidden=Dt.icon.isHidden())}let zr=Pe&&Pe.has(Oe)?Pe.get(Oe):{text:null,icon:null};if(w.hasIconCollisionBoxData()||w.hasTextCollisionBoxData()){let Xr=w.collisionArrays[Oe];if(Xr){let di=new a.P(0,0);if(Xr.textBox||Xr.verticalTextBox){let Li=!0;if(Ot){let Ci=this.variableOffsets[Mt];Ci?(di=It(Ci.anchor,Ci.width,Ci.height,Ci.textOffset,Ci.textBoxScale),Nt&&di._rotate(hr?this.transform.angle:-this.transform.angle)):Li=!1}if(Xr.textBox||Xr.verticalTextBox){let Ci;Xr.textBox&&(Ci=mr),Xr.verticalTextBox&&(Ci=Rr),jt(w.textCollisionBox.collisionVertexArray,Dt.text.placed,!Li||Ci,zr.text,di.x,di.y)}}if(Xr.iconBox||Xr.verticalIconBox){let Li=!!(!Rr&&Xr.verticalIconBox),Ci;Xr.iconBox&&(Ci=Li),Xr.verticalIconBox&&(Ci=!Li),jt(w.iconCollisionBox.collisionVertexArray,Dt.icon.placed,Ci,zr.icon,Sr?di.x:0,Sr?di.y:0)}}}}if(w.sortFeatures(this.transform.angle),this.retainedQueryData[w.bucketInstanceId]&&(this.retainedQueryData[w.bucketInstanceId].featureSortOrder=w.featureSortOrder),w.hasTextData()&&w.text.opacityVertexBuffer&&w.text.opacityVertexBuffer.updateData(w.text.opacityVertexArray),w.hasIconData()&&w.icon.opacityVertexBuffer&&w.icon.opacityVertexBuffer.updateData(w.icon.opacityVertexArray),w.hasIconCollisionBoxData()&&w.iconCollisionBox.collisionVertexBuffer&&w.iconCollisionBox.collisionVertexBuffer.updateData(w.iconCollisionBox.collisionVertexArray),w.hasTextCollisionBoxData()&&w.textCollisionBox.collisionVertexBuffer&&w.textCollisionBox.collisionVertexBuffer.updateData(w.textCollisionBox.collisionVertexArray),w.text.opacityVertexArray.length!==w.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${w.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${w.text.layoutVertexArray.length}) / 4`);if(w.icon.opacityVertexArray.length!==w.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${w.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${w.icon.layoutVertexArray.length}) / 4`);if(w.bucketInstanceId in this.collisionCircleArrays){let Oe=this.collisionCircleArrays[w.bucketInstanceId];w.placementInvProjMatrix=Oe.invProjMatrix,w.placementViewportMatrix=Oe.viewportMatrix,w.collisionCircleArray=Oe.circles,delete this.collisionCircleArrays[w.bucketInstanceId]}}symbolFadeChange(w){return this.fadeDuration===0?1:(w-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(w){return Math.max(0,(this.transform.zoom-w)/1.5)}hasTransitions(w){return this.stale||w-this.lastPlacementChangeTime<this.fadeDuration}stillRecent(w,B){let Q=this.zoomAtLastRecencyCheck===B?1-this.zoomAdjustment(B):1;return this.zoomAtLastRecencyCheck=B,this.commitTime+this.fadeDuration*Q>w}setStale(){this.stale=!0}}function jt(le,w,B,Q,ee,se){Q&&Q.length!==0||(Q=[0,0,0,0]);let qe=Q[0]-ri,je=Q[1]-ri,it=Q[2]-ri,yt=Q[3]-ri;le.emplaceBack(w?1:0,B?1:0,ee||0,se||0,qe,je),le.emplaceBack(w?1:0,B?1:0,ee||0,se||0,it,je),le.emplaceBack(w?1:0,B?1:0,ee||0,se||0,it,yt),le.emplaceBack(w?1:0,B?1:0,ee||0,se||0,qe,yt)}let Zt=Math.pow(2,25),yr=Math.pow(2,24),Fr=Math.pow(2,17),Zr=Math.pow(2,16),Vr=Math.pow(2,9),gi=Math.pow(2,8),Si=Math.pow(2,1);function Mi(le){if(le.opacity===0&&!le.placed)return 0;if(le.opacity===1&&le.placed)return 4294967295;let w=le.placed?1:0,B=Math.floor(127*le.opacity);return B*Zt+w*yr+B*Fr+w*Zr+B*Vr+w*gi+B*Si+w}let Pi=0;function Gi(){return{isOccluded:(le,w,B)=>!1,getPitchedTextCorrection:(le,w,B)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(le,w,B,Q){throw new Error("Not implemented.")},translatePosition:(le,w,B,Q)=>function(ee,se,qe,je,it=!1){if(!qe[0]&&!qe[1])return[0,0];let yt=it?je==="map"?ee.angle:0:je==="viewport"?-ee.angle:0;if(yt){let Ot=Math.sin(yt),Nt=Math.cos(yt);qe=[qe[0]*Nt-qe[1]*Ot,qe[0]*Ot+qe[1]*Nt]}return[it?qe[0]:nn(se,qe[0],ee.zoom),it?qe[1]:nn(se,qe[1],ee.zoom)]}(le,w,B,Q),getCircleRadiusCorrection:le=>1}}class Ki{constructor(w){this._sortAcrossTiles=w.layout.get("symbol-z-order")!=="viewport-y"&&!w.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(w,B,Q,ee,se){let qe=this._bucketParts;for(;this._currentTileIndex<w.length;)if(B.getBucketParts(qe,ee,w[this._currentTileIndex],this._sortAcrossTiles),this._currentTileIndex++,se())return!0;for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,qe.sort((je,it)=>je.sortKey-it.sortKey));this._currentPartIndex<qe.length;)if(B.placeLayerBucketPart(qe[this._currentPartIndex],this._seenCrossTileIDs,Q),this._currentPartIndex++,se())return!0;return!1}}class ka{constructor(w,B,Q,ee,se,qe,je,it){this.placement=new ft(w,Gi(),B,qe,je,it),this._currentPlacementIndex=Q.length-1,this._forceFullPlacement=ee,this._showCollisionBoxes=se,this._done=!1}isDone(){return this._done}continuePlacement(w,B,Q){let ee=u.now(),se=()=>!this._forceFullPlacement&&u.now()-ee>2;for(;this._currentPlacementIndex>=0;){let qe=B[w[this._currentPlacementIndex]],je=this.placement.collisionIndex.transform.zoom;if(qe.type==="symbol"&&(!qe.minzoom||qe.minzoom<=je)&&(!qe.maxzoom||qe.maxzoom>je)){if(this._inProgressLayer||(this._inProgressLayer=new Ki(qe)),this._inProgressLayer.continuePlacement(Q[qe.source],this.placement,this._showCollisionBoxes,qe,se))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(w){return this.placement.commit(w),this.placement}}let jn=512/a.X/2;class la{constructor(w,B,Q){this.tileID=w,this.bucketInstanceId=Q,this._symbolsByKey={};let ee=new Map;for(let se=0;se<B.length;se++){let qe=B.get(se),je=qe.key,it=ee.get(je);it?it.push(qe):ee.set(je,[qe])}for(let[se,qe]of ee){let je={positions:qe.map(it=>({x:Math.floor(it.anchorX*jn),y:Math.floor(it.anchorY*jn)})),crossTileIDs:qe.map(it=>it.crossTileID)};if(je.positions.length>128){let it=new a.av(je.positions.length,16,Uint16Array);for(let{x:yt,y:Ot}of je.positions)it.add(yt,Ot);it.finish(),delete je.positions,je.index=it}this._symbolsByKey[se]=je}}getScaledCoordinates(w,B){let{x:Q,y:ee,z:se}=this.tileID.canonical,{x:qe,y:je,z:it}=B.canonical,yt=jn/Math.pow(2,it-se),Ot=(je*a.X+w.anchorY)*yt,Nt=ee*a.X*jn;return{x:Math.floor((qe*a.X+w.anchorX)*yt-Q*a.X*jn),y:Math.floor(Ot-Nt)}}findMatches(w,B,Q){let ee=this.tileID.canonical.z<B.canonical.z?1:Math.pow(2,this.tileID.canonical.z-B.canonical.z);for(let se=0;se<w.length;se++){let qe=w.get(se);if(qe.crossTileID)continue;let je=this._symbolsByKey[qe.key];if(!je)continue;let it=this.getScaledCoordinates(qe,B);if(je.index){let yt=je.index.range(it.x-ee,it.y-ee,it.x+ee,it.y+ee).sort();for(let Ot of yt){let Nt=je.crossTileIDs[Ot];if(!Q[Nt]){Q[Nt]=!0,qe.crossTileID=Nt;break}}}else if(je.positions)for(let yt=0;yt<je.positions.length;yt++){let Ot=je.positions[yt],Nt=je.crossTileIDs[yt];if(Math.abs(Ot.x-it.x)<=ee&&Math.abs(Ot.y-it.y)<=ee&&!Q[Nt]){Q[Nt]=!0,qe.crossTileID=Nt;break}}}}getCrossTileIDsLists(){return Object.values(this._symbolsByKey).map(({crossTileIDs:w})=>w)}}class Fa{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Ra{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(w){let B=Math.round((w-this.lng)/360);if(B!==0)for(let Q in this.indexes){let ee=this.indexes[Q],se={};for(let qe in ee){let je=ee[qe];je.tileID=je.tileID.unwrapTo(je.tileID.wrap+B),se[je.tileID.key]=je}this.indexes[Q]=se}this.lng=w}addBucket(w,B,Q){if(this.indexes[w.overscaledZ]&&this.indexes[w.overscaledZ][w.key]){if(this.indexes[w.overscaledZ][w.key].bucketInstanceId===B.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(w.overscaledZ,this.indexes[w.overscaledZ][w.key])}for(let se=0;se<B.symbolInstances.length;se++)B.symbolInstances.get(se).crossTileID=0;this.usedCrossTileIDs[w.overscaledZ]||(this.usedCrossTileIDs[w.overscaledZ]={});let ee=this.usedCrossTileIDs[w.overscaledZ];for(let se in this.indexes){let qe=this.indexes[se];if(Number(se)>w.overscaledZ)for(let je in qe){let it=qe[je];it.tileID.isChildOf(w)&&it.findMatches(B.symbolInstances,w,ee)}else{let je=qe[w.scaledTo(Number(se)).key];je&&je.findMatches(B.symbolInstances,w,ee)}}for(let se=0;se<B.symbolInstances.length;se++){let qe=B.symbolInstances.get(se);qe.crossTileID||(qe.crossTileID=Q.generate(),ee[qe.crossTileID]=!0)}return this.indexes[w.overscaledZ]===void 0&&(this.indexes[w.overscaledZ]={}),this.indexes[w.overscaledZ][w.key]=new la(w,B.symbolInstances,B.bucketInstanceId),!0}removeBucketCrossTileIDs(w,B){for(let Q of B.getCrossTileIDsLists())for(let ee of Q)delete this.usedCrossTileIDs[w][ee]}removeStaleBuckets(w){let B=!1;for(let Q in this.indexes){let ee=this.indexes[Q];for(let se in ee)w[ee[se].bucketInstanceId]||(this.removeBucketCrossTileIDs(Q,ee[se]),delete ee[se],B=!0)}return B}}class jo{constructor(){this.layerIndexes={},this.crossTileIDs=new Fa,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}}addLayer(w,B,Q){let ee=this.layerIndexes[w.id];ee===void 0&&(ee=this.layerIndexes[w.id]=new Ra);let se=!1,qe={};ee.handleWrapJump(Q);for(let je of B){let it=je.getBucket(w);it&&w.id===it.layerIds[0]&&(it.bucketInstanceId||(it.bucketInstanceId=++this.maxBucketInstanceId),ee.addBucket(je.tileID,it,this.crossTileIDs)&&(se=!0),qe[it.bucketInstanceId]=!0)}return ee.removeStaleBuckets(qe)&&(se=!0),se}pruneUnusedLayers(w){let B={};w.forEach(Q=>{B[Q]=!0});for(let Q in this.layerIndexes)B[Q]||delete this.layerIndexes[Q]}}let oa=(le,w)=>a.t(le,w&&w.filter(B=>B.identifier!=="source.canvas")),Sn=a.aw();class Ha extends a.E{constructor(w,B={}){super(),this._rtlPluginLoaded=()=>{for(let Q in this.sourceCaches){let ee=this.sourceCaches[Q].getSource().type;ee!=="vector"&&ee!=="geojson"||this.sourceCaches[Q].reload()}},this.map=w,this.dispatcher=new Ee(Te(),w._getMapId()),this.dispatcher.registerMessageHandler("GG",(Q,ee)=>this.getGlyphs(Q,ee)),this.dispatcher.registerMessageHandler("GI",(Q,ee)=>this.getImages(Q,ee)),this.imageManager=new T,this.imageManager.setEventedParent(this),this.glyphManager=new H(w._requestManager,B.localIdeographFontFamily),this.lineAtlas=new ae(256,512),this.crossTileSymbolIndex=new jo,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new a.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",a.ay()),bt().on(er,this._rtlPluginLoaded),this.on("data",Q=>{if(Q.dataType!=="source"||Q.sourceDataType!=="metadata")return;let ee=this.sourceCaches[Q.sourceId];if(!ee)return;let se=ee.getSource();if(se&&se.vectorLayerIds)for(let qe in this._layers){let je=this._layers[qe];je.source===se.id&&this._validateLayer(je)}})}loadURL(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),B.validate=typeof B.validate!="boolean"||B.validate;let ee=this.map._requestManager.transformRequest(w,"Style");this._loadStyleRequest=new AbortController;let se=this._loadStyleRequest;a.h(ee,this._loadStyleRequest).then(qe=>{this._loadStyleRequest=null,this._load(qe.data,B,Q)}).catch(qe=>{this._loadStyleRequest=null,qe&&!se.signal.aborted&&this.fire(new a.j(qe))})}loadJSON(w,B={},Q){this.fire(new a.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,B.validate=B.validate!==!1,this._load(w,B,Q)}).catch(()=>{})}loadEmpty(){this.fire(new a.k("dataloading",{dataType:"style"})),this._load(Sn,{validate:!1})}_load(w,B,Q){var ee;let se=B.transformStyle?B.transformStyle(Q,w):w;if(!B.validate||!oa(this,a.u(se))){this._loaded=!0,this.stylesheet=se;for(let qe in se.sources)this.addSource(qe,se.sources[qe],{validate:!1});se.sprite?this._loadSprite(se.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(se.glyphs),this._createLayers(),this.light=new N(this.stylesheet.light),this.sky=new re(this.stylesheet.sky),this.map.setTerrain((ee=this.stylesheet.terrain)!==null&&ee!==void 0?ee:null),this.fire(new a.k("data",{dataType:"style"})),this.fire(new a.k("style.load"))}}_createLayers(){let w=a.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",w),this._order=w.map(B=>B.id),this._layers={},this._serializedLayers=null;for(let B of w){let Q=a.aA(B);Q.setEventedParent(this,{layer:{id:B.id}}),this._layers[B.id]=Q}}_loadSprite(w,B=!1,Q=void 0){let ee;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(se,qe,je,it){return a._(this,void 0,void 0,function*(){let yt=C(se),Ot=je>1?"@2x":"",Nt={},hr={};for(let{id:Sr,url:he}of yt){let be=qe.transformRequest(M(he,Ot,".json"),"SpriteJSON");Nt[Sr]=a.h(be,it);let Pe=qe.transformRequest(M(he,Ot,".png"),"SpriteImage");hr[Sr]=p.getImage(Pe,it)}return yield Promise.all([...Object.values(Nt),...Object.values(hr)]),function(Sr,he){return a._(this,void 0,void 0,function*(){let be={};for(let Pe in Sr){be[Pe]={};let Oe=u.getImageCanvasContext((yield he[Pe]).data),Je=(yield Sr[Pe]).data;for(let He in Je){let{width:et,height:Mt,x:Dt,y:Ut,sdf:tr,pixelRatio:mr,stretchX:Rr,stretchY:zr,content:Xr,textFitWidth:di,textFitHeight:Li}=Je[He];be[Pe][He]={data:null,pixelRatio:mr,sdf:tr,stretchX:Rr,stretchY:zr,content:Xr,textFitWidth:di,textFitHeight:Li,spriteData:{width:et,height:Mt,x:Dt,y:Ut,context:Oe}}}}return be})}(Nt,hr)})}(w,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(se=>{if(this._spriteRequest=null,se)for(let qe in se){this._spritesImagesIds[qe]=[];let je=this._spritesImagesIds[qe]?this._spritesImagesIds[qe].filter(it=>!(it in se)):[];for(let it of je)this.imageManager.removeImage(it),this._changedImages[it]=!0;for(let it in se[qe]){let yt=qe==="default"?it:`${qe}:${it}`;this._spritesImagesIds[qe].push(yt),yt in this.imageManager.images?this.imageManager.updateImage(yt,se[qe][it],!1):this.imageManager.addImage(yt,se[qe][it]),B&&(this._changedImages[yt]=!0)}}}).catch(se=>{this._spriteRequest=null,ee=se,this.fire(new a.j(ee))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),B&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"})),Q&&Q(ee)})}_unloadSprite(){for(let w of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(w),this._changedImages[w]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}_validateLayer(w){let B=this.sourceCaches[w.source];if(!B)return;let Q=w.sourceLayer;if(!Q)return;let ee=B.getSource();(ee.type==="geojson"||ee.vectorLayerIds&&ee.vectorLayerIds.indexOf(Q)===-1)&&this.fire(new a.j(new Error(`Source layer "${Q}" does not exist on source "${ee.id}" as specified by style layer "${w.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let w in this.sourceCaches)if(!this.sourceCaches[w].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(w,B=!1){let Q=this._serializedAllLayers();if(!w||w.length===0)return Object.values(B?a.aB(Q):Q);let ee=[];for(let se of w)if(Q[se]){let qe=B?a.aB(Q[se]):Q[se];ee.push(qe)}return ee}_serializedAllLayers(){let w=this._serializedLayers;if(w)return w;w=this._serializedLayers={};let B=Object.keys(this._layers);for(let Q of B){let ee=this._layers[Q];ee.type!=="custom"&&(w[Q]=ee.serialize())}return w}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let w in this.sourceCaches)if(this.sourceCaches[w].hasTransition())return!0;for(let w in this._layers)if(this._layers[w].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(w){if(!this._loaded)return;let B=this._changed;if(B){let ee=Object.keys(this._updatedLayers),se=Object.keys(this._removedLayers);(ee.length||se.length)&&this._updateWorkerLayers(ee,se);for(let qe in this._updatedSources){let je=this._updatedSources[qe];if(je==="reload")this._reloadSource(qe);else{if(je!=="clear")throw new Error(`Invalid action ${je}`);this._clearSource(qe)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let qe in this._updatedPaintProps)this._layers[qe].updateTransitions(w);this.light.updateTransitions(w),this.sky.updateTransitions(w),this._resetUpdates()}let Q={};for(let ee in this.sourceCaches){let se=this.sourceCaches[ee];Q[ee]=se.used,se.used=!1}for(let ee of this._order){let se=this._layers[ee];se.recalculate(w,this._availableImages),!se.isHidden(w.zoom)&&se.source&&(this.sourceCaches[se.source].used=!0)}for(let ee in Q){let se=this.sourceCaches[ee];!!Q[ee]!=!!se.used&&se.fire(new a.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:ee}))}this.light.recalculate(w),this.sky.recalculate(w),this.z=w.zoom,B&&this.fire(new a.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let w=Object.keys(this._changedImages);if(w.length){for(let B in this.sourceCaches)this.sourceCaches[B].reloadTilesForDependencies(["icons","patterns"],w);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let w in this.sourceCaches)this.sourceCaches[w].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(w,B){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(w,!1),removedIds:B})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(w,B={}){var Q;this._checkLoaded();let ee=this.serialize();if(w=B.transformStyle?B.transformStyle(ee,w):w,((Q=B.validate)===null||Q===void 0||Q)&&oa(this,a.u(w)))return!1;(w=a.aB(w)).layers=a.az(w.layers);let se=a.aC(ee,w),qe=this._getOperationsToPerform(se);if(qe.unimplemented.length>0)throw new Error(`Unimplemented: ${qe.unimplemented.join(", ")}.`);if(qe.operations.length===0)return!1;for(let je of qe.operations)je();return this.stylesheet=w,this._serializedLayers=null,!0}_getOperationsToPerform(w){let B=[],Q=[];for(let ee of w)switch(ee.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":B.push(()=>this.addLayer.apply(this,ee.args));break;case"removeLayer":B.push(()=>this.removeLayer.apply(this,ee.args));break;case"setPaintProperty":B.push(()=>this.setPaintProperty.apply(this,ee.args));break;case"setLayoutProperty":B.push(()=>this.setLayoutProperty.apply(this,ee.args));break;case"setFilter":B.push(()=>this.setFilter.apply(this,ee.args));break;case"addSource":B.push(()=>this.addSource.apply(this,ee.args));break;case"removeSource":B.push(()=>this.removeSource.apply(this,ee.args));break;case"setLayerZoomRange":B.push(()=>this.setLayerZoomRange.apply(this,ee.args));break;case"setLight":B.push(()=>this.setLight.apply(this,ee.args));break;case"setGeoJSONSourceData":B.push(()=>this.setGeoJSONSourceData.apply(this,ee.args));break;case"setGlyphs":B.push(()=>this.setGlyphs.apply(this,ee.args));break;case"setSprite":B.push(()=>this.setSprite.apply(this,ee.args));break;case"setSky":B.push(()=>this.setSky.apply(this,ee.args));break;case"setTerrain":B.push(()=>this.map.setTerrain.apply(this,ee.args));break;case"setTransition":B.push(()=>{});break;default:Q.push(ee.command)}return{operations:B,unimplemented:Q}}addImage(w,B){if(this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" already exists.`)));this.imageManager.addImage(w,B),this._afterImageUpdated(w)}updateImage(w,B){this.imageManager.updateImage(w,B)}getImage(w){return this.imageManager.getImage(w)}removeImage(w){if(!this.getImage(w))return this.fire(new a.j(new Error(`An image named "${w}" does not exist.`)));this.imageManager.removeImage(w),this._afterImageUpdated(w)}_afterImageUpdated(w){this._availableImages=this.imageManager.listImages(),this._changedImages[w]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(w,B,Q={}){if(this._checkLoaded(),this.sourceCaches[w]!==void 0)throw new Error(`Source "${w}" already exists.`);if(!B.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(B).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(B.type)>=0&&this._validate(a.u.source,`sources.${w}`,B,null,Q))return;this.map&&this.map._collectResourceTiming&&(B.collectResourceTiming=!0);let ee=this.sourceCaches[w]=new dt(w,B,this.dispatcher);ee.style=this,ee.setEventedParent(this,()=>({isSourceLoaded:ee.loaded(),source:ee.serialize(),sourceId:w})),ee.onAdd(this.map),this._changed=!0}removeSource(w){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error("There is no source with this ID");for(let Q in this._layers)if(this._layers[Q].source===w)return this.fire(new a.j(new Error(`Source "${w}" cannot be removed while layer "${Q}" is using it.`)));let B=this.sourceCaches[w];delete this.sourceCaches[w],delete this._updatedSources[w],B.fire(new a.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:w})),B.setEventedParent(null),B.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(w,B){if(this._checkLoaded(),this.sourceCaches[w]===void 0)throw new Error(`There is no source with this ID=${w}`);let Q=this.sourceCaches[w].getSource();if(Q.type!=="geojson")throw new Error(`geojsonSource.type is ${Q.type}, which is !== 'geojson`);Q.setData(B),this._changed=!0}getSource(w){return this.sourceCaches[w]&&this.sourceCaches[w].getSource()}addLayer(w,B,Q={}){this._checkLoaded();let ee=w.id;if(this.getLayer(ee))return void this.fire(new a.j(new Error(`Layer "${ee}" already exists on this map.`)));let se;if(w.type==="custom"){if(oa(this,a.aD(w)))return;se=a.aA(w)}else{if("source"in w&&typeof w.source=="object"&&(this.addSource(ee,w.source),w=a.aB(w),w=a.e(w,{source:ee})),this._validate(a.u.layer,`layers.${ee}`,w,{arrayIndex:-1},Q))return;se=a.aA(w),this._validateLayer(se),se.setEventedParent(this,{layer:{id:ee}})}let qe=B?this._order.indexOf(B):this._order.length;if(B&&qe===-1)this.fire(new a.j(new Error(`Cannot add layer "${ee}" before non-existing layer "${B}".`)));else{if(this._order.splice(qe,0,ee),this._layerOrderChanged=!0,this._layers[ee]=se,this._removedLayers[ee]&&se.source&&se.type!=="custom"){let je=this._removedLayers[ee];delete this._removedLayers[ee],je.type!==se.type?this._updatedSources[se.source]="clear":(this._updatedSources[se.source]="reload",this.sourceCaches[se.source].pause())}this._updateLayer(se),se.onAdd&&se.onAdd(this.map)}}moveLayer(w,B){if(this._checkLoaded(),this._changed=!0,!this._layers[w])return void this.fire(new a.j(new Error(`The layer '${w}' does not exist in the map's style and cannot be moved.`)));if(w===B)return;let Q=this._order.indexOf(w);this._order.splice(Q,1);let ee=B?this._order.indexOf(B):this._order.length;B&&ee===-1?this.fire(new a.j(new Error(`Cannot move layer "${w}" before non-existing layer "${B}".`))):(this._order.splice(ee,0,w),this._layerOrderChanged=!0)}removeLayer(w){this._checkLoaded();let B=this._layers[w];if(!B)return void this.fire(new a.j(new Error(`Cannot remove non-existing layer "${w}".`)));B.setEventedParent(null);let Q=this._order.indexOf(w);this._order.splice(Q,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[w]=B,delete this._layers[w],this._serializedLayers&&delete this._serializedLayers[w],delete this._updatedLayers[w],delete this._updatedPaintProps[w],B.onRemove&&B.onRemove(this.map)}getLayer(w){return this._layers[w]}getLayersOrder(){return[...this._order]}hasLayer(w){return w in this._layers}setLayerZoomRange(w,B,Q){this._checkLoaded();let ee=this.getLayer(w);ee?ee.minzoom===B&&ee.maxzoom===Q||(B!=null&&(ee.minzoom=B),Q!=null&&(ee.maxzoom=Q),this._updateLayer(ee)):this.fire(new a.j(new Error(`Cannot set the zoom range of non-existing layer "${w}".`)))}setFilter(w,B,Q={}){this._checkLoaded();let ee=this.getLayer(w);if(ee){if(!a.aE(ee.filter,B))return B==null?(ee.filter=void 0,void this._updateLayer(ee)):void(this._validate(a.u.filter,`layers.${ee.id}.filter`,B,null,Q)||(ee.filter=a.aB(B),this._updateLayer(ee)))}else this.fire(new a.j(new Error(`Cannot filter non-existing layer "${w}".`)))}getFilter(w){return a.aB(this.getLayer(w).filter)}setLayoutProperty(w,B,Q,ee={}){this._checkLoaded();let se=this.getLayer(w);se?a.aE(se.getLayoutProperty(B),Q)||(se.setLayoutProperty(B,Q,ee),this._updateLayer(se)):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getLayoutProperty(w,B){let Q=this.getLayer(w);if(Q)return Q.getLayoutProperty(B);this.fire(new a.j(new Error(`Cannot get style of non-existing layer "${w}".`)))}setPaintProperty(w,B,Q,ee={}){this._checkLoaded();let se=this.getLayer(w);se?a.aE(se.getPaintProperty(B),Q)||(se.setPaintProperty(B,Q,ee)&&this._updateLayer(se),this._changed=!0,this._updatedPaintProps[w]=!0,this._serializedLayers=null):this.fire(new a.j(new Error(`Cannot style non-existing layer "${w}".`)))}getPaintProperty(w,B){return this.getLayer(w).getPaintProperty(B)}setFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=w.sourceLayer,se=this.sourceCaches[Q];if(se===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let qe=se.getSource().type;qe==="geojson"&&ee?this.fire(new a.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):qe!=="vector"||ee?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),se.setFeatureState(ee,w.id,B)):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(w,B){this._checkLoaded();let Q=w.source,ee=this.sourceCaches[Q];if(ee===void 0)return void this.fire(new a.j(new Error(`The source '${Q}' does not exist in the map's style.`)));let se=ee.getSource().type,qe=se==="vector"?w.sourceLayer:void 0;se!=="vector"||qe?B&&typeof w.id!="string"&&typeof w.id!="number"?this.fire(new a.j(new Error("A feature id is required to remove its specific state property."))):ee.removeFeatureState(qe,w.id,B):this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(w){this._checkLoaded();let B=w.source,Q=w.sourceLayer,ee=this.sourceCaches[B];if(ee!==void 0)return ee.getSource().type!=="vector"||Q?(w.id===void 0&&this.fire(new a.j(new Error("The feature id parameter must be provided."))),ee.getFeatureState(Q,w.id)):void this.fire(new a.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new a.j(new Error(`The source '${B}' does not exist in the map's style.`)))}getTransition(){return a.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let w=a.aF(this.sourceCaches,se=>se.serialize()),B=this._serializeByIds(this._order,!0),Q=this.map.getTerrain()||void 0,ee=this.stylesheet;return a.aG({version:ee.version,name:ee.name,metadata:ee.metadata,light:ee.light,sky:ee.sky,center:ee.center,zoom:ee.zoom,bearing:ee.bearing,pitch:ee.pitch,sprite:ee.sprite,glyphs:ee.glyphs,transition:ee.transition,sources:w,layers:B,terrain:Q},se=>se!==void 0)}_updateLayer(w){this._updatedLayers[w.id]=!0,w.source&&!this._updatedSources[w.source]&&this.sourceCaches[w.source].getSource().type!=="raster"&&(this._updatedSources[w.source]="reload",this.sourceCaches[w.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(w){let B=qe=>this._layers[qe].type==="fill-extrusion",Q={},ee=[];for(let qe=this._order.length-1;qe>=0;qe--){let je=this._order[qe];if(B(je)){Q[je]=qe;for(let it of w){let yt=it[je];if(yt)for(let Ot of yt)ee.push(Ot)}}}ee.sort((qe,je)=>je.intersectionZ-qe.intersectionZ);let se=[];for(let qe=this._order.length-1;qe>=0;qe--){let je=this._order[qe];if(B(je))for(let it=ee.length-1;it>=0;it--){let yt=ee[it].feature;if(Q[yt.layer.id]<qe)break;se.push(yt),ee.pop()}else for(let it of w){let yt=it[je];if(yt)for(let Ot of yt)se.push(Ot.feature)}}return se}queryRenderedFeatures(w,B,Q){B&&B.filter&&this._validate(a.u.filter,"queryRenderedFeatures.filter",B.filter,null,B);let ee={};if(B&&B.layers){if(!Array.isArray(B.layers))return this.fire(new a.j(new Error("parameters.layers must be an Array."))),[];for(let je of B.layers){let it=this._layers[je];if(!it)return this.fire(new a.j(new Error(`The layer '${je}' does not exist in the map's style and cannot be queried for features.`))),[];ee[it.source]=!0}}let se=[];B.availableImages=this._availableImages;let qe=this._serializedAllLayers();for(let je in this.sourceCaches)B.layers&&!ee[je]||se.push(Ce(this.sourceCaches[je],this._layers,qe,w,B,Q));return this.placement&&se.push(function(je,it,yt,Ot,Nt,hr,Sr){let he={},be=hr.queryRenderedSymbols(Ot),Pe=[];for(let Oe of Object.keys(be).map(Number))Pe.push(Sr[Oe]);Pe.sort(me);for(let Oe of Pe){let Je=Oe.featureIndex.lookupSymbolFeatures(be[Oe.bucketInstanceId],it,Oe.bucketIndex,Oe.sourceLayerIndex,Nt.filter,Nt.layers,Nt.availableImages,je);for(let He in Je){let et=he[He]=he[He]||[],Mt=Je[He];Mt.sort((Dt,Ut)=>{let tr=Oe.featureSortOrder;if(tr){let mr=tr.indexOf(Dt.featureIndex);return tr.indexOf(Ut.featureIndex)-mr}return Ut.featureIndex-Dt.featureIndex});for(let Dt of Mt)et.push(Dt)}}for(let Oe in he)he[Oe].forEach(Je=>{let He=Je.feature,et=yt[je[Oe].source].getFeatureState(He.layer["source-layer"],He.id);He.source=He.layer.source,He.layer["source-layer"]&&(He.sourceLayer=He.layer["source-layer"]),He.state=et});return he}(this._layers,qe,this.sourceCaches,w,B,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(se)}querySourceFeatures(w,B){B&&B.filter&&this._validate(a.u.filter,"querySourceFeatures.filter",B.filter,null,B);let Q=this.sourceCaches[w];return Q?function(ee,se){let qe=ee.getRenderableIds().map(yt=>ee.getTileByID(yt)),je=[],it={};for(let yt=0;yt<qe.length;yt++){let Ot=qe[yt],Nt=Ot.tileID.canonical.key;it[Nt]||(it[Nt]=!0,Ot.querySourceFeatures(je,se))}return je}(Q,B):[]}getLight(){return this.light.getLight()}setLight(w,B={}){this._checkLoaded();let Q=this.light.getLight(),ee=!1;for(let qe in w)if(!a.aE(w[qe],Q[qe])){ee=!0;break}if(!ee)return;let se={now:u.now(),transition:a.e({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(w,B),this.light.updateTransitions(se)}getSky(){var w;return(w=this.stylesheet)===null||w===void 0?void 0:w.sky}setSky(w,B={}){let Q=this.getSky(),ee=!1;if(!w&&!Q)return;if(w&&!Q)ee=!0;else if(!w&&Q)ee=!0;else for(let qe in w)if(!a.aE(w[qe],Q[qe])){ee=!0;break}if(!ee)return;let se={now:u.now(),transition:a.e({duration:300,delay:0},this.stylesheet.transition)};this.stylesheet.sky=w,this.sky.setSky(w,B),this.sky.updateTransitions(se)}_validate(w,B,Q,ee,se={}){return(!se||se.validate!==!1)&&oa(this,w.call(a.u,a.e({key:B,style:this.serialize(),value:Q,styleSpec:a.v},ee)))}_remove(w=!0){this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._loadStyleRequest&&(this._loadStyleRequest.abort(),this._loadStyleRequest=null),this._spriteRequest&&(this._spriteRequest.abort(),this._spriteRequest=null),bt().off(er,this._rtlPluginLoaded);for(let B in this._layers)this._layers[B].setEventedParent(null);for(let B in this.sourceCaches){let Q=this.sourceCaches[B];Q.setEventedParent(null),Q.onRemove(this.map)}this.imageManager.setEventedParent(null),this.setEventedParent(null),w&&this.dispatcher.broadcast("RM",void 0),this.dispatcher.remove(w)}_clearSource(w){this.sourceCaches[w].clearTiles()}_reloadSource(w){this.sourceCaches[w].resume(),this.sourceCaches[w].reload()}_updateSources(w){for(let B in this.sourceCaches)this.sourceCaches[B].update(w,this.map.terrain)}_generateCollisionBoxes(){for(let w in this.sourceCaches)this._reloadSource(w)}_updatePlacement(w,B,Q,ee,se=!1){let qe=!1,je=!1,it={};for(let yt of this._order){let Ot=this._layers[yt];if(Ot.type!=="symbol")continue;if(!it[Ot.source]){let hr=this.sourceCaches[Ot.source];it[Ot.source]=hr.getRenderableIds(!0).map(Sr=>hr.getTileByID(Sr)).sort((Sr,he)=>he.tileID.overscaledZ-Sr.tileID.overscaledZ||(Sr.tileID.isLessThan(he.tileID)?-1:1))}let Nt=this.crossTileSymbolIndex.addLayer(Ot,it[Ot.source],w.center.lng);qe=qe||Nt}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((se=se||this._layerOrderChanged||Q===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(u.now(),w.zoom))&&(this.pauseablePlacement=new ka(w,this.map.terrain,this._order,se,B,Q,ee,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,it),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(u.now()),je=!0),qe&&this.pauseablePlacement.placement.setStale()),je||qe)for(let yt of this._order){let Ot=this._layers[yt];Ot.type==="symbol"&&this.placement.updateLayerOpacities(Ot,it[Ot.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(u.now())}_releaseSymbolFadeTiles(){for(let w in this.sourceCaches)this.sourceCaches[w].releaseSymbolFadeTiles()}getImages(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.imageManager.getImages(B.icons);this._updateTilesForChangedImages();let ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,B.icons),Q})}getGlyphs(w,B){return a._(this,void 0,void 0,function*(){let Q=yield this.glyphManager.getGlyphs(B.stacks),ee=this.sourceCaches[B.source];return ee&&ee.setDependencies(B.tileID.key,B.type,[""]),Q})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(w,B={}){this._checkLoaded(),w&&this._validate(a.u.glyphs,"glyphs",w,null,B)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=w,this.glyphManager.entries={},this.glyphManager.setURL(w))}addSprite(w,B,Q={},ee){this._checkLoaded();let se=[{id:w,url:B}],qe=[...C(this.stylesheet.sprite),...se];this._validate(a.u.sprite,"sprite",qe,null,Q)||(this.stylesheet.sprite=qe,this._loadSprite(se,!0,ee))}removeSprite(w){this._checkLoaded();let B=C(this.stylesheet.sprite);if(B.find(Q=>Q.id===w)){if(this._spritesImagesIds[w])for(let Q of this._spritesImagesIds[w])this.imageManager.removeImage(Q),this._changedImages[Q]=!0;B.splice(B.findIndex(Q=>Q.id===w),1),this.stylesheet.sprite=B.length>0?B:void 0,delete this._spritesImagesIds[w],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new a.k("data",{dataType:"style"}))}else this.fire(new a.j(new Error(`Sprite "${w}" doesn't exists on this map.`)))}getSprite(){return C(this.stylesheet.sprite)}setSprite(w,B={},Q){this._checkLoaded(),w&&this._validate(a.u.sprite,"sprite",w,null,B)||(this.stylesheet.sprite=w,w?this._loadSprite(w,!0,Q):(this._unloadSprite(),Q&&Q(null)))}}var oo=a.Y([{name:"a_pos",type:"Int16",components:2}]);let xn={prelude:_t(`#ifdef GL_ES
+precision mediump float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+`,`#ifdef GL_ES
+precision highp float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+vec2 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
+);}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;}
+#ifdef TERRAIN3D
+uniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;
+#endif
+const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {
+#ifdef TERRAIN3D
+highp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));
+#else
+return 1.0;
+#endif
+}float calculate_visibility(vec4 pos) {
+#ifdef TERRAIN3D
+vec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;
+#else
+return 1.0;
+#endif
+}float ele(vec2 pos) {
+#ifdef TERRAIN3D
+vec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;
+#else
+return 0.0;
+#endif
+}float get_elevation(vec2 pos) {
+#ifdef TERRAIN3D
+vec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration;
+#else
+return 0.0;
+#endif
+}`),background:_t(`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:_t(`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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);}"),circle:_t(`varying vec3 v_data;varying float v_visibility;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;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=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;varying float v_visibility;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main(void) {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));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,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,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;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`),clippingMask:_t("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);}"),heatmap:_t(`uniform highp float u_intensity;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#define GAUSS_COEF 0.3989422804014327
+void main() {
+#pragma mapbox: initialize highp float weight
+float 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#pragma mapbox: define highp float weight
+#pragma mapbox: define mediump float radius
+const highp float ZERO=1.0/255.0/16.0;
+#define GAUSS_COEF 0.3989422804014327
+void main(void) {
+#pragma mapbox: initialize highp float weight
+#pragma mapbox: initialize mediump float radius
+vec2 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,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}`),heatmapTexture:_t(`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(0.0);
+#endif
+}`,"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;}"),collisionBox:_t("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_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:_t("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);}"),debug:_t("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,get_elevation(a_pos),1);}"),fill:_t(`#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_FragColor=color*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec2 a_pos;uniform mat4 u_matrix;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);}`),fillOutline:_t(`varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillOutlinePattern:_t(`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;}`),fillPattern:_t(`#ifdef GL_ES
+precision highp float;
+#endif
+uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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);}`),fillExtrusion:_t(`varying vec4 v_color;void main() {gl_FragColor=v_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#ifdef TERRAIN3D
+attribute vec2 a_centroid;
+#endif
+varying vec4 v_color;
+#pragma mapbox: define highp float base
+#pragma mapbox: define highp float height
+#pragma mapbox: define highp vec4 color
+void main() {
+#pragma mapbox: initialize highp float base
+#pragma mapbox: initialize highp float height
+#pragma mapbox: initialize highp vec4 color
+vec3 normal=a_normal_ed.xyz;
+#ifdef TERRAIN3D
+float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
+#else
+float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
+#endif
+base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;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;}`),fillExtrusionPattern:_t(`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;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#ifdef TERRAIN3D
+attribute vec2 a_centroid;
+#endif
+varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;
+#ifdef TERRAIN3D
+float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
+#else
+float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
+#endif
+base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;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
+? a_pos
+: 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;}`),hillshadePrepare:_t(`#ifdef GL_ES
+precision highp float;
+#endif
+uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;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 exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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;}"),hillshade:_t(`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;
+#define PI 3.141592653589793
+void 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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;}"),line:_t(`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+v_width2=vec2(outset,inset);}`),lineGradient:_t(`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 vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+v_width2=vec2(outset,inset);}`),linePattern:_t(`#ifdef GL_ES
+precision highp float;
+#endif
+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;
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+float 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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`),lineSDF:_t(`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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+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 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float 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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+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);}`),raster:_t(`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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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;}"),symbolIcon:_t(`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+vec2 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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;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;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}`),symbolSDF:_t(`#define SDF_PX 8.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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 inner_edge=(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);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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 bool u_is_along_line;uniform bool u_is_variable_anchor;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_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`),symbolTextAndIcon:_t(`#define SDF_PX 8.0
+#define SDF 1.0
+#define ICON 0.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+return;}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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,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);}`),terrain:_t("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:_t("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:_t("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:_t("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function _t(le,w){let B=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,Q=w.match(/attribute ([\w]+) ([\w]+)/g),ee=le.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),se=w.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),qe=se?se.concat(ee):ee,je={};return{fragmentSource:le=le.replace(B,(it,yt,Ot,Nt,hr)=>(je[hr]=!0,yt==="define"?`
+#ifndef HAS_UNIFORM_u_${hr}
+varying ${Ot} ${Nt} ${hr};
+#else
+uniform ${Ot} ${Nt} u_${hr};
+#endif
+`:`
+#ifdef HAS_UNIFORM_u_${hr}
+ ${Ot} ${Nt} ${hr} = u_${hr};
+#endif
+`)),vertexSource:w=w.replace(B,(it,yt,Ot,Nt,hr)=>{let Sr=Nt==="float"?"vec2":"vec4",he=hr.match(/color/)?"color":Sr;return je[hr]?yt==="define"?`
+#ifndef HAS_UNIFORM_u_${hr}
+uniform lowp float u_${hr}_t;
+attribute ${Ot} ${Sr} a_${hr};
+varying ${Ot} ${Nt} ${hr};
+#else
+uniform ${Ot} ${Nt} u_${hr};
+#endif
+`:he==="vec4"?`
+#ifndef HAS_UNIFORM_u_${hr}
+ ${hr} = a_${hr};
+#else
+ ${Ot} ${Nt} ${hr} = u_${hr};
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_${hr}
+ ${hr} = unpack_mix_${he}(a_${hr}, u_${hr}_t);
+#else
+ ${Ot} ${Nt} ${hr} = u_${hr};
+#endif
+`:yt==="define"?`
+#ifndef HAS_UNIFORM_u_${hr}
+uniform lowp float u_${hr}_t;
+attribute ${Ot} ${Sr} a_${hr};
+#else
+uniform ${Ot} ${Nt} u_${hr};
+#endif
+`:he==="vec4"?`
+#ifndef HAS_UNIFORM_u_${hr}
+ ${Ot} ${Nt} ${hr} = a_${hr};
+#else
+ ${Ot} ${Nt} ${hr} = u_${hr};
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_${hr}
+ ${Ot} ${Nt} ${hr} = unpack_mix_${he}(a_${hr}, u_${hr}_t);
+#else
+ ${Ot} ${Nt} ${hr} = u_${hr};
+#endif
+`}),staticAttributes:Q,staticUniforms:qe}}class br{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(w,B,Q,ee,se,qe,je,it,yt){this.context=w;let Ot=this.boundPaintVertexBuffers.length!==ee.length;for(let Nt=0;!Ot&&Nt<ee.length;Nt++)this.boundPaintVertexBuffers[Nt]!==ee[Nt]&&(Ot=!0);!this.vao||this.boundProgram!==B||this.boundLayoutVertexBuffer!==Q||Ot||this.boundIndexBuffer!==se||this.boundVertexOffset!==qe||this.boundDynamicVertexBuffer!==je||this.boundDynamicVertexBuffer2!==it||this.boundDynamicVertexBuffer3!==yt?this.freshBind(B,Q,ee,se,qe,je,it,yt):(w.bindVertexArray.set(this.vao),je&&je.bind(),se&&se.dynamicDraw&&se.bind(),it&&it.bind(),yt&&yt.bind())}freshBind(w,B,Q,ee,se,qe,je,it){let yt=w.numAttributes,Ot=this.context,Nt=Ot.gl;this.vao&&this.destroy(),this.vao=Ot.createVertexArray(),Ot.bindVertexArray.set(this.vao),this.boundProgram=w,this.boundLayoutVertexBuffer=B,this.boundPaintVertexBuffers=Q,this.boundIndexBuffer=ee,this.boundVertexOffset=se,this.boundDynamicVertexBuffer=qe,this.boundDynamicVertexBuffer2=je,this.boundDynamicVertexBuffer3=it,B.enableAttributes(Nt,w);for(let hr of Q)hr.enableAttributes(Nt,w);qe&&qe.enableAttributes(Nt,w),je&&je.enableAttributes(Nt,w),it&&it.enableAttributes(Nt,w),B.bind(),B.setVertexAttribPointers(Nt,w,se);for(let hr of Q)hr.bind(),hr.setVertexAttribPointers(Nt,w,se);qe&&(qe.bind(),qe.setVertexAttribPointers(Nt,w,se)),ee&&ee.bind(),je&&(je.bind(),je.setVertexAttribPointers(Nt,w,se)),it&&(it.bind(),it.setVertexAttribPointers(Nt,w,se)),Ot.currentNumAttributes=yt}destroy(){this.vao&&(this.context.deleteVertexArray(this.vao),this.vao=null)}}let Hr=(le,w,B,Q,ee)=>({u_matrix:le,u_texture:0,u_ele_delta:w,u_fog_matrix:B,u_fog_color:Q?Q.properties.get("fog-color"):a.aM.white,u_fog_ground_blend:Q?Q.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:Q?Q.calculateFogBlendOpacity(ee):0,u_horizon_color:Q?Q.properties.get("horizon-color"):a.aM.white,u_horizon_fog_blend:Q?Q.properties.get("horizon-fog-blend"):1});function ti(le){let w=[];for(let B=0;B<le.length;B++){if(le[B]===null)continue;let Q=le[B].split(" ");w.push(Q.pop())}return w}class zi{constructor(w,B,Q,ee,se,qe){let je=w.gl;this.program=je.createProgram();let it=ti(B.staticAttributes),yt=Q?Q.getBinderAttributes():[],Ot=it.concat(yt),Nt=xn.prelude.staticUniforms?ti(xn.prelude.staticUniforms):[],hr=B.staticUniforms?ti(B.staticUniforms):[],Sr=Q?Q.getBinderUniforms():[],he=Nt.concat(hr).concat(Sr),be=[];for(let Dt of he)be.indexOf(Dt)<0&&be.push(Dt);let Pe=Q?Q.defines():[];se&&Pe.push("#define OVERDRAW_INSPECTOR;"),qe&&Pe.push("#define TERRAIN3D;");let Oe=Pe.concat(xn.prelude.fragmentSource,B.fragmentSource).join(`
+`),Je=Pe.concat(xn.prelude.vertexSource,B.vertexSource).join(`
+`),He=je.createShader(je.FRAGMENT_SHADER);if(je.isContextLost())return void(this.failedToCreate=!0);if(je.shaderSource(He,Oe),je.compileShader(He),!je.getShaderParameter(He,je.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${je.getShaderInfoLog(He)}`);je.attachShader(this.program,He);let et=je.createShader(je.VERTEX_SHADER);if(je.isContextLost())return void(this.failedToCreate=!0);if(je.shaderSource(et,Je),je.compileShader(et),!je.getShaderParameter(et,je.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${je.getShaderInfoLog(et)}`);je.attachShader(this.program,et),this.attributes={};let Mt={};this.numAttributes=Ot.length;for(let Dt=0;Dt<this.numAttributes;Dt++)Ot[Dt]&&(je.bindAttribLocation(this.program,Dt,Ot[Dt]),this.attributes[Ot[Dt]]=Dt);if(je.linkProgram(this.program),!je.getProgramParameter(this.program,je.LINK_STATUS))throw new Error(`Program failed to link: ${je.getProgramInfoLog(this.program)}`);je.deleteShader(et),je.deleteShader(He);for(let Dt=0;Dt<be.length;Dt++){let Ut=be[Dt];if(Ut&&!Mt[Ut]){let tr=je.getUniformLocation(this.program,Ut);tr&&(Mt[Ut]=tr)}}this.fixedUniforms=ee(w,Mt),this.terrainUniforms=((Dt,Ut)=>({u_depth:new a.aH(Dt,Ut.u_depth),u_terrain:new a.aH(Dt,Ut.u_terrain),u_terrain_dim:new a.aI(Dt,Ut.u_terrain_dim),u_terrain_matrix:new a.aJ(Dt,Ut.u_terrain_matrix),u_terrain_unpack:new a.aK(Dt,Ut.u_terrain_unpack),u_terrain_exaggeration:new a.aI(Dt,Ut.u_terrain_exaggeration)}))(w,Mt),this.binderUniforms=Q?Q.getUniforms(w,Mt):[]}draw(w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr,he,be,Pe,Oe,Je){let He=w.gl;if(this.failedToCreate)return;if(w.program.set(this.program),w.setDepthMode(Q),w.setStencilMode(ee),w.setColorMode(se),w.setCullFace(qe),it){w.activeTexture.set(He.TEXTURE2),He.bindTexture(He.TEXTURE_2D,it.depthTexture),w.activeTexture.set(He.TEXTURE3),He.bindTexture(He.TEXTURE_2D,it.texture);for(let Mt in this.terrainUniforms)this.terrainUniforms[Mt].set(it[Mt])}for(let Mt in this.fixedUniforms)this.fixedUniforms[Mt].set(je[Mt]);be&&be.setUniforms(w,this.binderUniforms,Sr,{zoom:he});let et=0;switch(B){case He.LINES:et=2;break;case He.TRIANGLES:et=3;break;case He.LINE_STRIP:et=1}for(let Mt of hr.get()){let Dt=Mt.vaos||(Mt.vaos={});(Dt[yt]||(Dt[yt]=new br)).bind(w,this,Ot,be?be.getPaintVertexBuffers():[],Nt,Mt.vertexOffset,Pe,Oe,Je),He.drawElements(B,Mt.primitiveLength*et,He.UNSIGNED_SHORT,Mt.primitiveOffset*et*2)}}}function Yi(le,w,B){let Q=1/nn(B,1,w.transform.tileZoom),ee=Math.pow(2,B.tileID.overscaledZ),se=B.tileSize*Math.pow(2,w.transform.tileZoom)/ee,qe=se*(B.tileID.canonical.x+B.tileID.wrap*ee),je=se*B.tileID.canonical.y;return{u_image:0,u_texsize:B.imageAtlasTexture.size,u_scale:[Q,le.fromScale,le.toScale],u_fade:le.t,u_pixel_coord_upper:[qe>>16,je>>16],u_pixel_coord_lower:[65535&qe,65535&je]}}let an=(le,w,B,Q)=>{let ee=w.style.light,se=ee.properties.get("position"),qe=[se.x,se.y,se.z],je=function(){var yt=new a.A(9);return a.A!=Float32Array&&(yt[1]=0,yt[2]=0,yt[3]=0,yt[5]=0,yt[6]=0,yt[7]=0),yt[0]=1,yt[4]=1,yt[8]=1,yt}();ee.properties.get("anchor")==="viewport"&&function(yt,Ot){var Nt=Math.sin(Ot),hr=Math.cos(Ot);yt[0]=hr,yt[1]=Nt,yt[2]=0,yt[3]=-Nt,yt[4]=hr,yt[5]=0,yt[6]=0,yt[7]=0,yt[8]=1}(je,-w.transform.angle),function(yt,Ot,Nt){var hr=Ot[0],Sr=Ot[1],he=Ot[2];yt[0]=hr*Nt[0]+Sr*Nt[3]+he*Nt[6],yt[1]=hr*Nt[1]+Sr*Nt[4]+he*Nt[7],yt[2]=hr*Nt[2]+Sr*Nt[5]+he*Nt[8]}(qe,qe,je);let it=ee.properties.get("color");return{u_matrix:le,u_lightpos:qe,u_lightintensity:ee.properties.get("intensity"),u_lightcolor:[it.r,it.g,it.b],u_vertical_gradient:+B,u_opacity:Q}},hi=(le,w,B,Q,ee,se,qe)=>a.e(an(le,w,B,Q),Yi(se,w,qe),{u_height_factor:-Math.pow(2,ee.overscaledZ)/qe.tileSize/8}),Ji=le=>({u_matrix:le}),ua=(le,w,B,Q)=>a.e(Ji(le),Yi(B,w,Q)),Fn=(le,w)=>({u_matrix:le,u_world:w}),Sa=(le,w,B,Q,ee)=>a.e(ua(le,w,B,Q),{u_world:ee}),go=(le,w,B,Q)=>{let ee=le.transform,se,qe;if(Q.paint.get("circle-pitch-alignment")==="map"){let je=nn(B,1,ee.zoom);se=!0,qe=[je,je]}else se=!1,qe=ee.pixelsToGLUnits;return{u_camera_to_center_distance:ee.cameraToCenterDistance,u_scale_with_map:+(Q.paint.get("circle-pitch-scale")==="map"),u_matrix:le.translatePosMatrix(w.posMatrix,B,Q.paint.get("circle-translate"),Q.paint.get("circle-translate-anchor")),u_pitch_with_map:+se,u_device_pixel_ratio:le.pixelRatio,u_extrude_scale:qe}},Oo=(le,w,B)=>({u_matrix:le,u_inv_matrix:w,u_camera_to_center_distance:B.cameraToCenterDistance,u_viewport_size:[B.width,B.height]}),ho=(le,w,B=1)=>({u_matrix:le,u_color:w,u_overlay:0,u_overlay_scale:B}),Mo=le=>({u_matrix:le}),xo=(le,w,B,Q)=>({u_matrix:le,u_extrude_scale:nn(w,1,B),u_intensity:Q}),zs=(le,w,B,Q)=>{let ee=a.H();a.aP(ee,0,le.width,le.height,0,0,1);let se=le.context.gl;return{u_matrix:ee,u_world:[se.drawingBufferWidth,se.drawingBufferHeight],u_image:B,u_color_ramp:Q,u_opacity:w.paint.get("heatmap-opacity")}};function ks(le,w){let B=Math.pow(2,w.canonical.z),Q=w.canonical.y;return[new a.Z(0,Q/B).toLngLat().lat,new a.Z(0,(Q+1)/B).toLngLat().lat]}let Zs=(le,w,B,Q)=>{let ee=le.transform;return{u_matrix:Cs(le,w,B,Q),u_ratio:1/nn(w,1,ee.zoom),u_device_pixel_ratio:le.pixelRatio,u_units_to_pixels:[1/ee.pixelsToGLUnits[0],1/ee.pixelsToGLUnits[1]]}},Xs=(le,w,B,Q,ee)=>a.e(Zs(le,w,B,ee),{u_image:0,u_image_height:Q}),wl=(le,w,B,Q,ee)=>{let se=le.transform,qe=cl(w,se);return{u_matrix:Cs(le,w,B,ee),u_texsize:w.imageAtlasTexture.size,u_ratio:1/nn(w,1,se.zoom),u_device_pixel_ratio:le.pixelRatio,u_image:0,u_scale:[qe,Q.fromScale,Q.toScale],u_fade:Q.t,u_units_to_pixels:[1/se.pixelsToGLUnits[0],1/se.pixelsToGLUnits[1]]}},os=(le,w,B,Q,ee,se)=>{let qe=le.lineAtlas,je=cl(w,le.transform),it=B.layout.get("line-cap")==="round",yt=qe.getDash(Q.from,it),Ot=qe.getDash(Q.to,it),Nt=yt.width*ee.fromScale,hr=Ot.width*ee.toScale;return a.e(Zs(le,w,B,se),{u_patternscale_a:[je/Nt,-yt.height/2],u_patternscale_b:[je/hr,-Ot.height/2],u_sdfgamma:qe.width/(256*Math.min(Nt,hr)*le.pixelRatio)/2,u_image:0,u_tex_y_a:yt.y,u_tex_y_b:Ot.y,u_mix:ee.t})};function cl(le,w){return 1/nn(le,1,w.tileZoom)}function Cs(le,w,B,Q){return le.translatePosMatrix(Q?Q.posMatrix:w.tileID.posMatrix,w,B.paint.get("line-translate"),B.paint.get("line-translate-anchor"))}let ml=(le,w,B,Q,ee)=>{return{u_matrix:le,u_tl_parent:w,u_scale_parent:B,u_buffer_scale:1,u_fade_t:Q.mix,u_opacity:Q.opacity*ee.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:ee.paint.get("raster-brightness-min"),u_brightness_high:ee.paint.get("raster-brightness-max"),u_saturation_factor:(qe=ee.paint.get("raster-saturation"),qe>0?1-1/(1.001-qe):-qe),u_contrast_factor:(se=ee.paint.get("raster-contrast"),se>0?1/(1-se):1+se),u_spin_weights:Ys(ee.paint.get("raster-hue-rotate"))};var se,qe};function Ys(le){le*=Math.PI/180;let w=Math.sin(le),B=Math.cos(le);return[(2*B+1)/3,(-Math.sqrt(3)*w-B+1)/3,(Math.sqrt(3)*w-B+1)/3]}let Hs=(le,w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr)=>{let he=qe.transform;return{u_is_size_zoom_constant:+(le==="constant"||le==="source"),u_is_size_feature_constant:+(le==="constant"||le==="camera"),u_size_t:w?w.uSizeT:0,u_size:w?w.uSize:0,u_camera_to_center_distance:he.cameraToCenterDistance,u_pitch:he.pitch/360*2*Math.PI,u_rotate_symbol:+B,u_aspect_ratio:he.width/he.height,u_fade_change:qe.options.fadeDuration?qe.symbolFadeChange:1,u_matrix:je,u_label_plane_matrix:it,u_coord_matrix:yt,u_is_text:+Nt,u_pitch_with_map:+Q,u_is_along_line:ee,u_is_variable_anchor:se,u_texsize:hr,u_texture:0,u_translation:Ot,u_pitched_scale:Sr}},Eo=(le,w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr,he)=>{let be=qe.transform;return a.e(Hs(le,w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,he),{u_gamma_scale:Q?Math.cos(be._pitch)*be.cameraToCenterDistance:1,u_device_pixel_ratio:qe.pixelRatio,u_is_halo:+Sr})},fs=(le,w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr)=>a.e(Eo(le,w,B,Q,ee,se,qe,je,it,yt,Ot,!0,Nt,!0,Sr),{u_texsize_icon:hr,u_texture_icon:1}),Ql=(le,w,B)=>({u_matrix:le,u_opacity:w,u_color:B}),Hu=(le,w,B,Q,ee,se)=>a.e(function(qe,je,it,yt){let Ot=it.imageManager.getPattern(qe.from.toString()),Nt=it.imageManager.getPattern(qe.to.toString()),{width:hr,height:Sr}=it.imageManager.getPixelSize(),he=Math.pow(2,yt.tileID.overscaledZ),be=yt.tileSize*Math.pow(2,it.transform.tileZoom)/he,Pe=be*(yt.tileID.canonical.x+yt.tileID.wrap*he),Oe=be*yt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:Ot.tl,u_pattern_br_a:Ot.br,u_pattern_tl_b:Nt.tl,u_pattern_br_b:Nt.br,u_texsize:[hr,Sr],u_mix:je.t,u_pattern_size_a:Ot.displaySize,u_pattern_size_b:Nt.displaySize,u_scale_a:je.fromScale,u_scale_b:je.toScale,u_tile_units_to_pixels:1/nn(yt,1,it.transform.tileZoom),u_pixel_coord_upper:[Pe>>16,Oe>>16],u_pixel_coord_lower:[65535&Pe,65535&Oe]}}(Q,se,B,ee),{u_matrix:le,u_opacity:w}),fc={fillExtrusion:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_lightpos:new a.aN(le,w.u_lightpos),u_lightintensity:new a.aI(le,w.u_lightintensity),u_lightcolor:new a.aN(le,w.u_lightcolor),u_vertical_gradient:new a.aI(le,w.u_vertical_gradient),u_opacity:new a.aI(le,w.u_opacity)}),fillExtrusionPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_lightpos:new a.aN(le,w.u_lightpos),u_lightintensity:new a.aI(le,w.u_lightintensity),u_lightcolor:new a.aN(le,w.u_lightcolor),u_vertical_gradient:new a.aI(le,w.u_vertical_gradient),u_height_factor:new a.aI(le,w.u_height_factor),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade),u_opacity:new a.aI(le,w.u_opacity)}),fill:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix)}),fillPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),fillOutline:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world)}),fillOutlinePattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world),u_image:new a.aH(le,w.u_image),u_texsize:new a.aO(le,w.u_texsize),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),circle:(le,w)=>({u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_scale_with_map:new a.aH(le,w.u_scale_with_map),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_extrude_scale:new a.aO(le,w.u_extrude_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_matrix:new a.aJ(le,w.u_matrix)}),collisionBox:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_pixel_extrude_scale:new a.aO(le,w.u_pixel_extrude_scale)}),collisionCircle:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_inv_matrix:new a.aJ(le,w.u_inv_matrix),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_viewport_size:new a.aO(le,w.u_viewport_size)}),debug:(le,w)=>({u_color:new a.aL(le,w.u_color),u_matrix:new a.aJ(le,w.u_matrix),u_overlay:new a.aH(le,w.u_overlay),u_overlay_scale:new a.aI(le,w.u_overlay_scale)}),clippingMask:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix)}),heatmap:(le,w)=>({u_extrude_scale:new a.aI(le,w.u_extrude_scale),u_intensity:new a.aI(le,w.u_intensity),u_matrix:new a.aJ(le,w.u_matrix)}),heatmapTexture:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_world:new a.aO(le,w.u_world),u_image:new a.aH(le,w.u_image),u_color_ramp:new a.aH(le,w.u_color_ramp),u_opacity:new a.aI(le,w.u_opacity)}),hillshade:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_latrange:new a.aO(le,w.u_latrange),u_light:new a.aO(le,w.u_light),u_shadow:new a.aL(le,w.u_shadow),u_highlight:new a.aL(le,w.u_highlight),u_accent:new a.aL(le,w.u_accent)}),hillshadePrepare:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_image:new a.aH(le,w.u_image),u_dimension:new a.aO(le,w.u_dimension),u_zoom:new a.aI(le,w.u_zoom),u_unpack:new a.aK(le,w.u_unpack)}),line:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels)}),lineGradient:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_image:new a.aH(le,w.u_image),u_image_height:new a.aI(le,w.u_image_height)}),linePattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texsize:new a.aO(le,w.u_texsize),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_image:new a.aH(le,w.u_image),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_scale:new a.aN(le,w.u_scale),u_fade:new a.aI(le,w.u_fade)}),lineSDF:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ratio:new a.aI(le,w.u_ratio),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_units_to_pixels:new a.aO(le,w.u_units_to_pixels),u_patternscale_a:new a.aO(le,w.u_patternscale_a),u_patternscale_b:new a.aO(le,w.u_patternscale_b),u_sdfgamma:new a.aI(le,w.u_sdfgamma),u_image:new a.aH(le,w.u_image),u_tex_y_a:new a.aI(le,w.u_tex_y_a),u_tex_y_b:new a.aI(le,w.u_tex_y_b),u_mix:new a.aI(le,w.u_mix)}),raster:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_tl_parent:new a.aO(le,w.u_tl_parent),u_scale_parent:new a.aI(le,w.u_scale_parent),u_buffer_scale:new a.aI(le,w.u_buffer_scale),u_fade_t:new a.aI(le,w.u_fade_t),u_opacity:new a.aI(le,w.u_opacity),u_image0:new a.aH(le,w.u_image0),u_image1:new a.aH(le,w.u_image1),u_brightness_low:new a.aI(le,w.u_brightness_low),u_brightness_high:new a.aI(le,w.u_brightness_high),u_saturation_factor:new a.aI(le,w.u_saturation_factor),u_contrast_factor:new a.aI(le,w.u_contrast_factor),u_spin_weights:new a.aN(le,w.u_spin_weights)}),symbolIcon:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texture:new a.aH(le,w.u_texture),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),symbolSDF:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texture:new a.aH(le,w.u_texture),u_gamma_scale:new a.aI(le,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_is_halo:new a.aH(le,w.u_is_halo),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),symbolTextAndIcon:(le,w)=>({u_is_size_zoom_constant:new a.aH(le,w.u_is_size_zoom_constant),u_is_size_feature_constant:new a.aH(le,w.u_is_size_feature_constant),u_size_t:new a.aI(le,w.u_size_t),u_size:new a.aI(le,w.u_size),u_camera_to_center_distance:new a.aI(le,w.u_camera_to_center_distance),u_pitch:new a.aI(le,w.u_pitch),u_rotate_symbol:new a.aH(le,w.u_rotate_symbol),u_aspect_ratio:new a.aI(le,w.u_aspect_ratio),u_fade_change:new a.aI(le,w.u_fade_change),u_matrix:new a.aJ(le,w.u_matrix),u_label_plane_matrix:new a.aJ(le,w.u_label_plane_matrix),u_coord_matrix:new a.aJ(le,w.u_coord_matrix),u_is_text:new a.aH(le,w.u_is_text),u_pitch_with_map:new a.aH(le,w.u_pitch_with_map),u_is_along_line:new a.aH(le,w.u_is_along_line),u_is_variable_anchor:new a.aH(le,w.u_is_variable_anchor),u_texsize:new a.aO(le,w.u_texsize),u_texsize_icon:new a.aO(le,w.u_texsize_icon),u_texture:new a.aH(le,w.u_texture),u_texture_icon:new a.aH(le,w.u_texture_icon),u_gamma_scale:new a.aI(le,w.u_gamma_scale),u_device_pixel_ratio:new a.aI(le,w.u_device_pixel_ratio),u_is_halo:new a.aH(le,w.u_is_halo),u_translation:new a.aO(le,w.u_translation),u_pitched_scale:new a.aI(le,w.u_pitched_scale)}),background:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_opacity:new a.aI(le,w.u_opacity),u_color:new a.aL(le,w.u_color)}),backgroundPattern:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_opacity:new a.aI(le,w.u_opacity),u_image:new a.aH(le,w.u_image),u_pattern_tl_a:new a.aO(le,w.u_pattern_tl_a),u_pattern_br_a:new a.aO(le,w.u_pattern_br_a),u_pattern_tl_b:new a.aO(le,w.u_pattern_tl_b),u_pattern_br_b:new a.aO(le,w.u_pattern_br_b),u_texsize:new a.aO(le,w.u_texsize),u_mix:new a.aI(le,w.u_mix),u_pattern_size_a:new a.aO(le,w.u_pattern_size_a),u_pattern_size_b:new a.aO(le,w.u_pattern_size_b),u_scale_a:new a.aI(le,w.u_scale_a),u_scale_b:new a.aI(le,w.u_scale_b),u_pixel_coord_upper:new a.aO(le,w.u_pixel_coord_upper),u_pixel_coord_lower:new a.aO(le,w.u_pixel_coord_lower),u_tile_units_to_pixels:new a.aI(le,w.u_tile_units_to_pixels)}),terrain:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texture:new a.aH(le,w.u_texture),u_ele_delta:new a.aI(le,w.u_ele_delta),u_fog_matrix:new a.aJ(le,w.u_fog_matrix),u_fog_color:new a.aL(le,w.u_fog_color),u_fog_ground_blend:new a.aI(le,w.u_fog_ground_blend),u_fog_ground_blend_opacity:new a.aI(le,w.u_fog_ground_blend_opacity),u_horizon_color:new a.aL(le,w.u_horizon_color),u_horizon_fog_blend:new a.aI(le,w.u_horizon_fog_blend)}),terrainDepth:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_ele_delta:new a.aI(le,w.u_ele_delta)}),terrainCoords:(le,w)=>({u_matrix:new a.aJ(le,w.u_matrix),u_texture:new a.aH(le,w.u_texture),u_terrain_coords_id:new a.aI(le,w.u_terrain_coords_id),u_ele_delta:new a.aI(le,w.u_ele_delta)}),sky:(le,w)=>({u_sky_color:new a.aL(le,w.u_sky_color),u_horizon_color:new a.aL(le,w.u_horizon_color),u_horizon:new a.aI(le,w.u_horizon),u_sky_horizon_blend:new a.aI(le,w.u_sky_horizon_blend)})};class ms{constructor(w,B,Q){this.context=w;let ee=w.gl;this.buffer=ee.createBuffer(),this.dynamicDraw=!!Q,this.context.unbindVAO(),w.bindElementBuffer.set(this.buffer),ee.bufferData(ee.ELEMENT_ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?ee.DYNAMIC_DRAW:ee.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(w){let B=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),B.bufferSubData(B.ELEMENT_ARRAY_BUFFER,0,w.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let on={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class fa{constructor(w,B,Q,ee){this.length=B.length,this.attributes=Q,this.itemSize=B.bytesPerElement,this.dynamicDraw=ee,this.context=w;let se=w.gl;this.buffer=se.createBuffer(),w.bindVertexBuffer.set(this.buffer),se.bufferData(se.ARRAY_BUFFER,B.arrayBuffer,this.dynamicDraw?se.DYNAMIC_DRAW:se.STATIC_DRAW),this.dynamicDraw||delete B.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(w){if(w.length!==this.length)throw new Error(`Length of new data is ${w.length}, which doesn't match current length of ${this.length}`);let B=this.context.gl;this.bind(),B.bufferSubData(B.ARRAY_BUFFER,0,w.arrayBuffer)}enableAttributes(w,B){for(let Q=0;Q<this.attributes.length;Q++){let ee=B.attributes[this.attributes[Q].name];ee!==void 0&&w.enableVertexAttribArray(ee)}}setVertexAttribPointers(w,B,Q){for(let ee=0;ee<this.attributes.length;ee++){let se=this.attributes[ee],qe=B.attributes[se.name];qe!==void 0&&w.vertexAttribPointer(qe,se.components,w[on[se.type]],!1,this.itemSize,se.offset+this.itemSize*(Q||0))}}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let Qu=new WeakMap;function Rl(le){var w;if(Qu.has(le))return Qu.get(le);{let B=(w=le.getParameter(le.VERSION))===null||w===void 0?void 0:w.startsWith("WebGL 2.0");return Qu.set(le,B),B}}class vo{constructor(w){this.gl=w.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1}get(){return this.current}set(w){}getDefault(){return this.default}setDefault(){this.set(this.default)}}class Zl extends vo{getDefault(){return a.aM.transparent}set(w){let B=this.current;(w.r!==B.r||w.g!==B.g||w.b!==B.b||w.a!==B.a||this.dirty)&&(this.gl.clearColor(w.r,w.g,w.b,w.a),this.current=w,this.dirty=!1)}}class Ks extends vo{getDefault(){return 1}set(w){(w!==this.current||this.dirty)&&(this.gl.clearDepth(w),this.current=w,this.dirty=!1)}}class Xl extends vo{getDefault(){return 0}set(w){(w!==this.current||this.dirty)&&(this.gl.clearStencil(w),this.current=w,this.dirty=!1)}}class Ec extends vo{getDefault(){return[!0,!0,!0,!0]}set(w){let B=this.current;(w[0]!==B[0]||w[1]!==B[1]||w[2]!==B[2]||w[3]!==B[3]||this.dirty)&&(this.gl.colorMask(w[0],w[1],w[2],w[3]),this.current=w,this.dirty=!1)}}class Zn extends vo{getDefault(){return!0}set(w){(w!==this.current||this.dirty)&&(this.gl.depthMask(w),this.current=w,this.dirty=!1)}}class ko extends vo{getDefault(){return 255}set(w){(w!==this.current||this.dirty)&&(this.gl.stencilMask(w),this.current=w,this.dirty=!1)}}class Co extends vo{getDefault(){return{func:this.gl.ALWAYS,ref:0,mask:255}}set(w){let B=this.current;(w.func!==B.func||w.ref!==B.ref||w.mask!==B.mask||this.dirty)&&(this.gl.stencilFunc(w.func,w.ref,w.mask),this.current=w,this.dirty=!1)}}class Tl extends vo{getDefault(){let w=this.gl;return[w.KEEP,w.KEEP,w.KEEP]}set(w){let B=this.current;(w[0]!==B[0]||w[1]!==B[1]||w[2]!==B[2]||this.dirty)&&(this.gl.stencilOp(w[0],w[1],w[2]),this.current=w,this.dirty=!1)}}class uf extends vo{getDefault(){return!1}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;w?B.enable(B.STENCIL_TEST):B.disable(B.STENCIL_TEST),this.current=w,this.dirty=!1}}class So extends vo{getDefault(){return[0,1]}set(w){let B=this.current;(w[0]!==B[0]||w[1]!==B[1]||this.dirty)&&(this.gl.depthRange(w[0],w[1]),this.current=w,this.dirty=!1)}}class cf extends vo{getDefault(){return!1}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;w?B.enable(B.DEPTH_TEST):B.disable(B.DEPTH_TEST),this.current=w,this.dirty=!1}}class rh extends vo{getDefault(){return this.gl.LESS}set(w){(w!==this.current||this.dirty)&&(this.gl.depthFunc(w),this.current=w,this.dirty=!1)}}class Al extends vo{getDefault(){return!1}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;w?B.enable(B.BLEND):B.disable(B.BLEND),this.current=w,this.dirty=!1}}class Hc extends vo{getDefault(){let w=this.gl;return[w.ONE,w.ZERO]}set(w){let B=this.current;(w[0]!==B[0]||w[1]!==B[1]||this.dirty)&&(this.gl.blendFunc(w[0],w[1]),this.current=w,this.dirty=!1)}}class eu extends vo{getDefault(){return a.aM.transparent}set(w){let B=this.current;(w.r!==B.r||w.g!==B.g||w.b!==B.b||w.a!==B.a||this.dirty)&&(this.gl.blendColor(w.r,w.g,w.b,w.a),this.current=w,this.dirty=!1)}}class Ls extends vo{getDefault(){return this.gl.FUNC_ADD}set(w){(w!==this.current||this.dirty)&&(this.gl.blendEquation(w),this.current=w,this.dirty=!1)}}class mu extends vo{getDefault(){return!1}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;w?B.enable(B.CULL_FACE):B.disable(B.CULL_FACE),this.current=w,this.dirty=!1}}class kc extends vo{getDefault(){return this.gl.BACK}set(w){(w!==this.current||this.dirty)&&(this.gl.cullFace(w),this.current=w,this.dirty=!1)}}class Of extends vo{getDefault(){return this.gl.CCW}set(w){(w!==this.current||this.dirty)&&(this.gl.frontFace(w),this.current=w,this.dirty=!1)}}class Gc extends vo{getDefault(){return null}set(w){(w!==this.current||this.dirty)&&(this.gl.useProgram(w),this.current=w,this.dirty=!1)}}class vd extends vo{getDefault(){return this.gl.TEXTURE0}set(w){(w!==this.current||this.dirty)&&(this.gl.activeTexture(w),this.current=w,this.dirty=!1)}}class Bf extends vo{getDefault(){let w=this.gl;return[0,0,w.drawingBufferWidth,w.drawingBufferHeight]}set(w){let B=this.current;(w[0]!==B[0]||w[1]!==B[1]||w[2]!==B[2]||w[3]!==B[3]||this.dirty)&&(this.gl.viewport(w[0],w[1],w[2],w[3]),this.current=w,this.dirty=!1)}}class ss extends vo{getDefault(){return null}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;B.bindFramebuffer(B.FRAMEBUFFER,w),this.current=w,this.dirty=!1}}class ff extends vo{getDefault(){return null}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;B.bindRenderbuffer(B.RENDERBUFFER,w),this.current=w,this.dirty=!1}}class ih extends vo{getDefault(){return null}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;B.bindTexture(B.TEXTURE_2D,w),this.current=w,this.dirty=!1}}class Vl extends vo{getDefault(){return null}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;B.bindBuffer(B.ARRAY_BUFFER,w),this.current=w,this.dirty=!1}}class Js extends vo{getDefault(){return null}set(w){let B=this.gl;B.bindBuffer(B.ELEMENT_ARRAY_BUFFER,w),this.current=w,this.dirty=!1}}class hc extends vo{getDefault(){return null}set(w){var B;if(w===this.current&&!this.dirty)return;let Q=this.gl;Rl(Q)?Q.bindVertexArray(w):(B=Q.getExtension("OES_vertex_array_object"))===null||B===void 0||B.bindVertexArrayOES(w),this.current=w,this.dirty=!1}}class Cc extends vo{getDefault(){return 4}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;B.pixelStorei(B.UNPACK_ALIGNMENT,w),this.current=w,this.dirty=!1}}class ws extends vo{getDefault(){return!1}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;B.pixelStorei(B.UNPACK_PREMULTIPLY_ALPHA_WEBGL,w),this.current=w,this.dirty=!1}}class $s extends vo{getDefault(){return!1}set(w){if(w===this.current&&!this.dirty)return;let B=this.gl;B.pixelStorei(B.UNPACK_FLIP_Y_WEBGL,w),this.current=w,this.dirty=!1}}class hs extends vo{constructor(w,B){super(w),this.context=w,this.parent=B}getDefault(){return null}}class Ms extends hs{setDirty(){this.dirty=!0}set(w){if(w===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let B=this.gl;B.framebufferTexture2D(B.FRAMEBUFFER,B.COLOR_ATTACHMENT0,B.TEXTURE_2D,w,0),this.current=w,this.dirty=!1}}class dc extends hs{set(w){if(w===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let B=this.gl;B.framebufferRenderbuffer(B.FRAMEBUFFER,B.DEPTH_ATTACHMENT,B.RENDERBUFFER,w),this.current=w,this.dirty=!1}}class Sl extends hs{set(w){if(w===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let B=this.gl;B.framebufferRenderbuffer(B.FRAMEBUFFER,B.DEPTH_STENCIL_ATTACHMENT,B.RENDERBUFFER,w),this.current=w,this.dirty=!1}}class ec{constructor(w,B,Q,ee,se){this.context=w,this.width=B,this.height=Q;let qe=w.gl,je=this.framebuffer=qe.createFramebuffer();if(this.colorAttachment=new Ms(w,je),ee)this.depthAttachment=se?new Sl(w,je):new dc(w,je);else if(se)throw new Error("Stencil cannot be set without depth");if(qe.checkFramebufferStatus(qe.FRAMEBUFFER)!==qe.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer is not complete")}destroy(){let w=this.context.gl,B=this.colorAttachment.get();if(B&&w.deleteTexture(B),this.depthAttachment){let Q=this.depthAttachment.get();Q&&w.deleteRenderbuffer(Q)}w.deleteFramebuffer(this.framebuffer)}}class Ps{constructor(w,B,Q){this.blendFunction=w,this.blendColor=B,this.mask=Q}}Ps.Replace=[1,0],Ps.disabled=new Ps(Ps.Replace,a.aM.transparent,[!1,!1,!1,!1]),Ps.unblended=new Ps(Ps.Replace,a.aM.transparent,[!0,!0,!0,!0]),Ps.alphaBlended=new Ps([1,771],a.aM.transparent,[!0,!0,!0,!0]);class ov{constructor(w){var B,Q;if(this.gl=w,this.clearColor=new Zl(this),this.clearDepth=new Ks(this),this.clearStencil=new Xl(this),this.colorMask=new Ec(this),this.depthMask=new Zn(this),this.stencilMask=new ko(this),this.stencilFunc=new Co(this),this.stencilOp=new Tl(this),this.stencilTest=new uf(this),this.depthRange=new So(this),this.depthTest=new cf(this),this.depthFunc=new rh(this),this.blend=new Al(this),this.blendFunc=new Hc(this),this.blendColor=new eu(this),this.blendEquation=new Ls(this),this.cullFace=new mu(this),this.cullFaceSide=new kc(this),this.frontFace=new Of(this),this.program=new Gc(this),this.activeTexture=new vd(this),this.viewport=new Bf(this),this.bindFramebuffer=new ss(this),this.bindRenderbuffer=new ff(this),this.bindTexture=new ih(this),this.bindVertexBuffer=new Vl(this),this.bindElementBuffer=new Js(this),this.bindVertexArray=new hc(this),this.pixelStoreUnpack=new Cc(this),this.pixelStoreUnpackPremultiplyAlpha=new ws(this),this.pixelStoreUnpackFlipY=new $s(this),this.extTextureFilterAnisotropic=w.getExtension("EXT_texture_filter_anisotropic")||w.getExtension("MOZ_EXT_texture_filter_anisotropic")||w.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=w.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.maxTextureSize=w.getParameter(w.MAX_TEXTURE_SIZE),Rl(w)){this.HALF_FLOAT=w.HALF_FLOAT;let ee=w.getExtension("EXT_color_buffer_half_float");this.RGBA16F=(B=w.RGBA16F)!==null&&B!==void 0?B:ee==null?void 0:ee.RGBA16F_EXT,this.RGB16F=(Q=w.RGB16F)!==null&&Q!==void 0?Q:ee==null?void 0:ee.RGB16F_EXT,w.getExtension("EXT_color_buffer_float")}else{w.getExtension("EXT_color_buffer_half_float"),w.getExtension("OES_texture_half_float_linear");let ee=w.getExtension("OES_texture_half_float");this.HALF_FLOAT=ee==null?void 0:ee.HALF_FLOAT_OES}}setDefault(){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()}setDirty(){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.bindVertexArray.dirty=!0,this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0}createIndexBuffer(w,B){return new ms(this,w,B)}createVertexBuffer(w,B,Q){return new fa(this,w,B,Q)}createRenderbuffer(w,B,Q){let ee=this.gl,se=ee.createRenderbuffer();return this.bindRenderbuffer.set(se),ee.renderbufferStorage(ee.RENDERBUFFER,w,B,Q),this.bindRenderbuffer.set(null),se}createFramebuffer(w,B,Q,ee){return new ec(this,w,B,Q,ee)}clear({color:w,depth:B,stencil:Q}){let ee=this.gl,se=0;w&&(se|=ee.COLOR_BUFFER_BIT,this.clearColor.set(w),this.colorMask.set([!0,!0,!0,!0])),B!==void 0&&(se|=ee.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(B),this.depthMask.set(!0)),Q!==void 0&&(se|=ee.STENCIL_BUFFER_BIT,this.clearStencil.set(Q),this.stencilMask.set(255)),ee.clear(se)}setCullFace(w){w.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(w.mode),this.frontFace.set(w.frontFace))}setDepthMode(w){w.func!==this.gl.ALWAYS||w.mask?(this.depthTest.set(!0),this.depthFunc.set(w.func),this.depthMask.set(w.mask),this.depthRange.set(w.range)):this.depthTest.set(!1)}setStencilMode(w){w.test.func!==this.gl.ALWAYS||w.mask?(this.stencilTest.set(!0),this.stencilMask.set(w.mask),this.stencilOp.set([w.fail,w.depthFail,w.pass]),this.stencilFunc.set({func:w.test.func,ref:w.ref,mask:w.test.mask})):this.stencilTest.set(!1)}setColorMode(w){a.aE(w.blendFunction,Ps.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(w.blendFunction),this.blendColor.set(w.blendColor)),this.colorMask.set(w.mask)}createVertexArray(){var w;return Rl(this.gl)?this.gl.createVertexArray():(w=this.gl.getExtension("OES_vertex_array_object"))===null||w===void 0?void 0:w.createVertexArrayOES()}deleteVertexArray(w){var B;return Rl(this.gl)?this.gl.deleteVertexArray(w):(B=this.gl.getExtension("OES_vertex_array_object"))===null||B===void 0?void 0:B.deleteVertexArrayOES(w)}unbindVAO(){this.bindVertexArray.set(null)}}class wo{constructor(w,B,Q){this.func=w,this.mask=B,this.range=Q}}wo.ReadOnly=!1,wo.ReadWrite=!0,wo.disabled=new wo(519,wo.ReadOnly,[0,1]);let Od=7680;class $o{constructor(w,B,Q,ee,se,qe){this.test=w,this.ref=B,this.mask=Q,this.fail=ee,this.depthFail=se,this.pass=qe}}$o.disabled=new $o({func:519,mask:0},0,0,Od,Od,Od);class Ja{constructor(w,B,Q){this.enable=w,this.mode=B,this.frontFace=Q}}let Ef;function tc(le,w,B,Q,ee){let se=le.context,qe=se.gl,je=le.useProgram("collisionBox"),it=[],yt=0,Ot=0;for(let Oe=0;Oe<Q.length;Oe++){let Je=Q[Oe],He=w.getTile(Je).getBucket(B);if(!He)continue;let et=ee?He.textCollisionBox:He.iconCollisionBox,Mt=He.collisionCircleArray;if(Mt.length>0){let Dt=a.H();a.aQ(Dt,He.placementInvProjMatrix,le.transform.glCoordMatrix),a.aQ(Dt,Dt,He.placementViewportMatrix),it.push({circleArray:Mt,circleOffset:Ot,transform:Je.posMatrix,invTransform:Dt,coord:Je}),yt+=Mt.length/4,Ot=yt}et&&je.draw(se,qe.LINES,wo.disabled,$o.disabled,le.colorModeForRenderPass(),Ja.disabled,{u_matrix:Je.posMatrix,u_pixel_extrude_scale:[1/(Nt=le.transform).width,1/Nt.height]},le.style.map.terrain&&le.style.map.terrain.getTerrainData(Je),B.id,et.layoutVertexBuffer,et.indexBuffer,et.segments,null,le.transform.zoom,null,null,et.collisionVertexBuffer)}var Nt;if(!ee||!it.length)return;let hr=le.useProgram("collisionCircle"),Sr=new a.aR;Sr.resize(4*yt),Sr._trim();let he=0;for(let Oe of it)for(let Je=0;Je<Oe.circleArray.length/4;Je++){let He=4*Je,et=Oe.circleArray[He+0],Mt=Oe.circleArray[He+1],Dt=Oe.circleArray[He+2],Ut=Oe.circleArray[He+3];Sr.emplace(he++,et,Mt,Dt,Ut,0),Sr.emplace(he++,et,Mt,Dt,Ut,1),Sr.emplace(he++,et,Mt,Dt,Ut,2),Sr.emplace(he++,et,Mt,Dt,Ut,3)}(!Ef||Ef.length<2*yt)&&(Ef=function(Oe){let Je=2*Oe,He=new a.aT;He.resize(Je),He._trim();for(let et=0;et<Je;et++){let Mt=6*et;He.uint16[Mt+0]=4*et+0,He.uint16[Mt+1]=4*et+1,He.uint16[Mt+2]=4*et+2,He.uint16[Mt+3]=4*et+2,He.uint16[Mt+4]=4*et+3,He.uint16[Mt+5]=4*et+0}return He}(yt));let be=se.createIndexBuffer(Ef,!0),Pe=se.createVertexBuffer(Sr,a.aS.members,!0);for(let Oe of it){let Je=Oo(Oe.transform,Oe.invTransform,le.transform);hr.draw(se,qe.TRIANGLES,wo.disabled,$o.disabled,le.colorModeForRenderPass(),Ja.disabled,Je,le.style.map.terrain&&le.style.map.terrain.getTerrainData(Oe.coord),B.id,Pe,be,a.a0.simpleSegment(0,2*Oe.circleOffset,Oe.circleArray.length,Oe.circleArray.length/2),null,le.transform.zoom,null,null,null)}Pe.destroy(),be.destroy()}Ja.disabled=new Ja(!1,1029,2305),Ja.backCCW=new Ja(!0,1029,2305);let uu=a.an(new Float32Array(16));function Mh(le,w,B,Q,ee,se){let{horizontalAlign:qe,verticalAlign:je}=a.au(le);return new a.P((-(qe-.5)*w/ee+Q[0])*se,(-(je-.5)*B/ee+Q[1])*se)}function jc(le,w,B,Q,ee,se){let qe=w.tileAnchorPoint.add(new a.P(w.translation[0],w.translation[1]));if(w.pitchWithMap){let je=Q.mult(se);B||(je=je.rotate(-ee));let it=qe.add(je);return ut(it.x,it.y,w.labelPlaneMatrix,w.getElevation).point}if(B){let je=lt(w.tileAnchorPoint.x+1,w.tileAnchorPoint.y,w).point.sub(le),it=Math.atan(je.y/je.x)+(je.x<0?Math.PI:0);return le.add(Q.rotate(it))}return le.add(Q)}function kf(le,w,B,Q,ee,se,qe,je,it,yt,Ot,Nt,hr,Sr){let he=le.text.placedSymbolArray,be=le.text.dynamicLayoutVertexArray,Pe=le.icon.dynamicLayoutVertexArray,Oe={};be.clear();for(let Je=0;Je<he.length;Je++){let He=he.get(Je),et=He.hidden||!He.crossTileID||le.allowVerticalPlacement&&!He.placedOrientation?null:Q[He.crossTileID];if(et){let Mt=new a.P(He.anchorX,He.anchorY),Dt={getElevation:Sr,width:ee.width,height:ee.height,labelPlaneMatrix:se,lineVertexArray:null,pitchWithMap:B,projection:Ot,projectionCache:null,tileAnchorPoint:Mt,translation:Nt,unwrappedTileID:hr},Ut=B?ut(Mt.x,Mt.y,qe,Sr):lt(Mt.x,Mt.y,Dt),tr=Ne(ee.cameraToCenterDistance,Ut.signedDistanceFromCamera),mr=a.ai(le.textSizeData,it,He)*tr/a.ap;B&&(mr*=le.tilePixelRatio/je);let{width:Rr,height:zr,anchor:Xr,textOffset:di,textBoxScale:Li}=et,Ci=Mh(Xr,Rr,zr,di,Li,mr),Qi=Ot.getPitchedTextCorrection(ee,Mt.add(new a.P(Nt[0],Nt[1])),hr),Mn=jc(Ut.point,Dt,w,Ci,ee.angle,Qi),pa=le.allowVerticalPlacement&&He.placedOrientation===a.ah.vertical?Math.PI/2:0;for(let ea=0;ea<He.numGlyphs;ea++)a.aj(be,Mn,pa);yt&&He.associatedIconIndex>=0&&(Oe[He.associatedIconIndex]={shiftedAnchor:Mn,angle:pa})}else ai(He.numGlyphs,be)}if(yt){Pe.clear();let Je=le.icon.placedSymbolArray;for(let He=0;He<Je.length;He++){let et=Je.get(He);if(et.hidden)ai(et.numGlyphs,Pe);else{let Mt=Oe[He];if(Mt)for(let Dt=0;Dt<et.numGlyphs;Dt++)a.aj(Pe,Mt.shiftedAnchor,Mt.angle);else ai(et.numGlyphs,Pe)}}le.icon.dynamicLayoutVertexBuffer.updateData(Pe)}le.text.dynamicLayoutVertexBuffer.updateData(be)}function Ml(le,w,B){return B.iconsInText&&w?"symbolTextAndIcon":le?"symbolSDF":"symbolIcon"}function Yh(le,w,B,Q,ee,se,qe,je,it,yt,Ot,Nt){let hr=le.context,Sr=hr.gl,he=le.transform,be=Gi(),Pe=je==="map",Oe=it==="map",Je=je!=="viewport"&&B.layout.get("symbol-placement")!=="point",He=Pe&&!Oe&&!Je,et=!Oe&&Je,Mt=!B.layout.get("symbol-sort-key").isConstant(),Dt=!1,Ut=le.depthModeForSublayer(0,wo.ReadOnly),tr=B._unevaluatedLayout.hasValue("text-variable-anchor")||B._unevaluatedLayout.hasValue("text-variable-anchor-offset"),mr=[],Rr=be.getCircleRadiusCorrection(he);for(let zr of Q){let Xr=w.getTile(zr),di=Xr.getBucket(B);if(!di)continue;let Li=ee?di.text:di.icon;if(!Li||!Li.segments.get().length||!Li.hasVisibleVertices)continue;let Ci=Li.programConfigurations.get(B.id),Qi=ee||di.sdfIcons,Mn=ee?di.textSizeData:di.iconSizeData,pa=Oe||he.pitch!==0,ea=le.useProgram(Ml(Qi,ee,di),Ci),Ga=a.ag(Mn,he.zoom),To=le.style.map.terrain&&le.style.map.terrain.getTerrainData(zr),Wa,co,Ro,Ds,As=[0,0],yo=null;if(ee)co=Xr.glyphAtlasTexture,Ro=Sr.LINEAR,Wa=Xr.glyphAtlasTexture.size,di.iconsInText&&(As=Xr.imageAtlasTexture.size,yo=Xr.imageAtlasTexture,Ds=pa||le.options.rotating||le.options.zooming||Mn.kind==="composite"||Mn.kind==="camera"?Sr.LINEAR:Sr.NEAREST);else{let We=B.layout.get("icon-size").constantOr(0)!==1||di.iconsNeedLinear;co=Xr.imageAtlasTexture,Ro=Qi||le.options.rotating||le.options.zooming||We||pa?Sr.LINEAR:Sr.NEAREST,Wa=Xr.imageAtlasTexture.size}let po=nn(Xr,1,le.transform.zoom),_l=et?zr.posMatrix:uu,Hl=Or(_l,Oe,Pe,le.transform,po),Zu=Nr(_l,Oe,Pe,le.transform,po),cu=Nr(zr.posMatrix,Oe,Pe,le.transform,po),el=be.translatePosition(le.transform,Xr,se,qe),au=tr&&di.hasTextData(),zc=B.layout.get("icon-text-fit")!=="none"&&au&&di.hasIconData();if(Je){let We=le.style.map.terrain?(tt,zt)=>le.style.map.terrain.getElevation(zr,tt,zt):null,wt=B.layout.get("text-rotation-alignment")==="map";Ve(di,zr.posMatrix,le,ee,Hl,cu,Oe,yt,wt,be,zr.toUnwrapped(),he.width,he.height,el,We)}let zl=zr.posMatrix,Fl=ee&&tr||zc,Z=Je||Fl?uu:Hl,oe=Zu,we=Qi&&B.paint.get(ee?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Be;Be=Qi?di.iconsInText?fs(Mn.kind,Ga,He,Oe,Je,Fl,le,zl,Z,oe,el,Wa,As,Rr):Eo(Mn.kind,Ga,He,Oe,Je,Fl,le,zl,Z,oe,el,ee,Wa,!0,Rr):Hs(Mn.kind,Ga,He,Oe,Je,Fl,le,zl,Z,oe,el,ee,Wa,Rr);let Ue={program:ea,buffers:Li,uniformValues:Be,atlasTexture:co,atlasTextureIcon:yo,atlasInterpolation:Ro,atlasInterpolationIcon:Ds,isSDF:Qi,hasHalo:we};if(Mt&&di.canOverlap){Dt=!0;let We=Li.segments.get();for(let wt of We)mr.push({segments:new a.a0([wt]),sortKey:wt.sortKey,state:Ue,terrainData:To})}else mr.push({segments:Li.segments,sortKey:0,state:Ue,terrainData:To})}Dt&&mr.sort((zr,Xr)=>zr.sortKey-Xr.sortKey);for(let zr of mr){let Xr=zr.state;if(hr.activeTexture.set(Sr.TEXTURE0),Xr.atlasTexture.bind(Xr.atlasInterpolation,Sr.CLAMP_TO_EDGE),Xr.atlasTextureIcon&&(hr.activeTexture.set(Sr.TEXTURE1),Xr.atlasTextureIcon&&Xr.atlasTextureIcon.bind(Xr.atlasInterpolationIcon,Sr.CLAMP_TO_EDGE)),Xr.isSDF){let di=Xr.uniformValues;Xr.hasHalo&&(di.u_is_halo=1,Eh(Xr.buffers,zr.segments,B,le,Xr.program,Ut,Ot,Nt,di,zr.terrainData)),di.u_is_halo=0}Eh(Xr.buffers,zr.segments,B,le,Xr.program,Ut,Ot,Nt,Xr.uniformValues,zr.terrainData)}}function Eh(le,w,B,Q,ee,se,qe,je,it,yt){let Ot=Q.context;ee.draw(Ot,Ot.gl.TRIANGLES,se,qe,je,Ja.disabled,it,yt,B.id,le.layoutVertexBuffer,le.indexBuffer,w,B.paint,Q.transform.zoom,le.programConfigurations.get(B.id),le.dynamicLayoutVertexBuffer,le.opacityVertexBuffer)}function nh(le,w,B,Q){let ee=le.context,se=ee.gl,qe=$o.disabled,je=new Ps([se.ONE,se.ONE],a.aM.transparent,[!0,!0,!0,!0]),it=w.getBucket(B);if(!it)return;let yt=Q.key,Ot=B.heatmapFbos.get(yt);Ot||(Ot=kh(ee,w.tileSize,w.tileSize),B.heatmapFbos.set(yt,Ot)),ee.bindFramebuffer.set(Ot.framebuffer),ee.viewport.set([0,0,w.tileSize,w.tileSize]),ee.clear({color:a.aM.transparent});let Nt=it.programConfigurations.get(B.id),hr=le.useProgram("heatmap",Nt),Sr=le.style.map.terrain.getTerrainData(Q);hr.draw(ee,se.TRIANGLES,wo.disabled,qe,je,Ja.disabled,xo(Q.posMatrix,w,le.transform.zoom,B.paint.get("heatmap-intensity")),Sr,B.id,it.layoutVertexBuffer,it.indexBuffer,it.segments,B.paint,le.transform.zoom,Nt)}function hf(le,w,B){let Q=le.context,ee=Q.gl;Q.setColorMode(le.colorModeForRenderPass());let se=Kh(Q,w),qe=B.key,je=w.heatmapFbos.get(qe);je&&(Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,je.colorAttachment.get()),Q.activeTexture.set(ee.TEXTURE1),se.bind(ee.LINEAR,ee.CLAMP_TO_EDGE),le.useProgram("heatmapTexture").draw(Q,ee.TRIANGLES,wo.disabled,$o.disabled,le.colorModeForRenderPass(),Ja.disabled,zs(le,w,0,1),null,w.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments,w.paint,le.transform.zoom),je.destroy(),w.heatmapFbos.delete(qe))}function kh(le,w,B){var Q,ee;let se=le.gl,qe=se.createTexture();se.bindTexture(se.TEXTURE_2D,qe),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_S,se.CLAMP_TO_EDGE),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_WRAP_T,se.CLAMP_TO_EDGE),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MIN_FILTER,se.LINEAR),se.texParameteri(se.TEXTURE_2D,se.TEXTURE_MAG_FILTER,se.LINEAR);let je=(Q=le.HALF_FLOAT)!==null&&Q!==void 0?Q:se.UNSIGNED_BYTE,it=(ee=le.RGBA16F)!==null&&ee!==void 0?ee:se.RGBA;se.texImage2D(se.TEXTURE_2D,0,it,w,B,0,se.RGBA,je,null);let yt=le.createFramebuffer(w,B,!1,!1);return yt.colorAttachment.set(qe),yt}function Kh(le,w){return w.colorRampTexture||(w.colorRampTexture=new g(le,w.colorRamp,le.gl.RGBA)),w.colorRampTexture}function rc(le,w,B,Q,ee){if(!B||!Q||!Q.imageAtlas)return;let se=Q.imageAtlas.patternPositions,qe=se[B.to.toString()],je=se[B.from.toString()];if(!qe&&je&&(qe=je),!je&&qe&&(je=qe),!qe||!je){let it=ee.getPaintProperty(w);qe=se[it],je=se[it]}qe&&je&&le.setConstantPatternPositions(qe,je)}function ah(le,w,B,Q,ee,se,qe){let je=le.context.gl,it="fill-pattern",yt=B.paint.get(it),Ot=yt&&yt.constantOr(1),Nt=B.getCrossfadeParameters(),hr,Sr,he,be,Pe;qe?(Sr=Ot&&!B.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",hr=je.LINES):(Sr=Ot?"fillPattern":"fill",hr=je.TRIANGLES);let Oe=yt.constantOr(null);for(let Je of Q){let He=w.getTile(Je);if(Ot&&!He.patternsLoaded())continue;let et=He.getBucket(B);if(!et)continue;let Mt=et.programConfigurations.get(B.id),Dt=le.useProgram(Sr,Mt),Ut=le.style.map.terrain&&le.style.map.terrain.getTerrainData(Je);Ot&&(le.context.activeTexture.set(je.TEXTURE0),He.imageAtlasTexture.bind(je.LINEAR,je.CLAMP_TO_EDGE),Mt.updatePaintBuffers(Nt)),rc(Mt,it,Oe,He,B);let tr=Ut?Je:null,mr=le.translatePosMatrix(tr?tr.posMatrix:Je.posMatrix,He,B.paint.get("fill-translate"),B.paint.get("fill-translate-anchor"));if(qe){be=et.indexBuffer2,Pe=et.segments2;let Rr=[je.drawingBufferWidth,je.drawingBufferHeight];he=Sr==="fillOutlinePattern"&&Ot?Sa(mr,le,Nt,He,Rr):Fn(mr,Rr)}else be=et.indexBuffer,Pe=et.segments,he=Ot?ua(mr,le,Nt,He):Ji(mr);Dt.draw(le.context,hr,ee,le.stencilModeForClipping(Je),se,Ja.disabled,he,Ut,B.id,et.layoutVertexBuffer,be,Pe,B.paint,le.transform.zoom,Mt)}}function Wc(le,w,B,Q,ee,se,qe){let je=le.context,it=je.gl,yt="fill-extrusion-pattern",Ot=B.paint.get(yt),Nt=Ot.constantOr(1),hr=B.getCrossfadeParameters(),Sr=B.paint.get("fill-extrusion-opacity"),he=Ot.constantOr(null);for(let be of Q){let Pe=w.getTile(be),Oe=Pe.getBucket(B);if(!Oe)continue;let Je=le.style.map.terrain&&le.style.map.terrain.getTerrainData(be),He=Oe.programConfigurations.get(B.id),et=le.useProgram(Nt?"fillExtrusionPattern":"fillExtrusion",He);Nt&&(le.context.activeTexture.set(it.TEXTURE0),Pe.imageAtlasTexture.bind(it.LINEAR,it.CLAMP_TO_EDGE),He.updatePaintBuffers(hr)),rc(He,yt,he,Pe,B);let Mt=le.translatePosMatrix(be.posMatrix,Pe,B.paint.get("fill-extrusion-translate"),B.paint.get("fill-extrusion-translate-anchor")),Dt=B.paint.get("fill-extrusion-vertical-gradient"),Ut=Nt?hi(Mt,le,Dt,Sr,be,hr,Pe):an(Mt,le,Dt,Sr);et.draw(je,je.gl.TRIANGLES,ee,se,qe,Ja.backCCW,Ut,Je,B.id,Oe.layoutVertexBuffer,Oe.indexBuffer,Oe.segments,B.paint,le.transform.zoom,He,le.style.map.terrain&&Oe.centroidVertexBuffer)}}function df(le,w,B,Q,ee,se,qe){let je=le.context,it=je.gl,yt=B.fbo;if(!yt)return;let Ot=le.useProgram("hillshade"),Nt=le.style.map.terrain&&le.style.map.terrain.getTerrainData(w);je.activeTexture.set(it.TEXTURE0),it.bindTexture(it.TEXTURE_2D,yt.colorAttachment.get()),Ot.draw(je,it.TRIANGLES,ee,se,qe,Ja.disabled,((hr,Sr,he,be)=>{let Pe=he.paint.get("hillshade-shadow-color"),Oe=he.paint.get("hillshade-highlight-color"),Je=he.paint.get("hillshade-accent-color"),He=he.paint.get("hillshade-illumination-direction")*(Math.PI/180);he.paint.get("hillshade-illumination-anchor")==="viewport"&&(He-=hr.transform.angle);let et=!hr.options.moving;return{u_matrix:be?be.posMatrix:hr.transform.calculatePosMatrix(Sr.tileID.toUnwrapped(),et),u_image:0,u_latrange:ks(0,Sr.tileID),u_light:[he.paint.get("hillshade-exaggeration"),He],u_shadow:Pe,u_highlight:Oe,u_accent:Je}})(le,B,Q,Nt?w:null),Nt,Q.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments)}function Cu(le,w,B,Q,ee,se){let qe=le.context,je=qe.gl,it=w.dem;if(it&&it.data){let yt=it.dim,Ot=it.stride,Nt=it.getPixels();if(qe.activeTexture.set(je.TEXTURE1),qe.pixelStoreUnpackPremultiplyAlpha.set(!1),w.demTexture=w.demTexture||le.getTileTexture(Ot),w.demTexture){let Sr=w.demTexture;Sr.update(Nt,{premultiply:!1}),Sr.bind(je.NEAREST,je.CLAMP_TO_EDGE)}else w.demTexture=new g(qe,Nt,je.RGBA,{premultiply:!1}),w.demTexture.bind(je.NEAREST,je.CLAMP_TO_EDGE);qe.activeTexture.set(je.TEXTURE0);let hr=w.fbo;if(!hr){let Sr=new g(qe,{width:yt,height:yt,data:null},je.RGBA);Sr.bind(je.LINEAR,je.CLAMP_TO_EDGE),hr=w.fbo=qe.createFramebuffer(yt,yt,!0,!1),hr.colorAttachment.set(Sr.texture)}qe.bindFramebuffer.set(hr.framebuffer),qe.viewport.set([0,0,yt,yt]),le.useProgram("hillshadePrepare").draw(qe,je.TRIANGLES,Q,ee,se,Ja.disabled,((Sr,he)=>{let be=he.stride,Pe=a.H();return a.aP(Pe,0,a.X,-a.X,0,0,1),a.J(Pe,Pe,[0,-a.X,0]),{u_matrix:Pe,u_image:1,u_dimension:[be,be],u_zoom:Sr.overscaledZ,u_unpack:he.getUnpackVector()}})(w.tileID,it),null,B.id,le.rasterBoundsBuffer,le.quadTriangleIndexBuffer,le.rasterBoundsSegments),w.needsHillshadePrepare=!1}}function Nf(le,w,B,Q,ee,se){let qe=Q.paint.get("raster-fade-duration");if(!se&&qe>0){let je=u.now(),it=(je-le.timeAdded)/qe,yt=w?(je-w.timeAdded)/qe:-1,Ot=B.getSource(),Nt=ee.coveringZoomLevel({tileSize:Ot.tileSize,roundZoom:Ot.roundZoom}),hr=!w||Math.abs(w.tileID.overscaledZ-Nt)>Math.abs(le.tileID.overscaledZ-Nt),Sr=hr&&le.refreshedUponExpiration?1:a.ac(hr?it:1-yt,0,1);return le.refreshedUponExpiration&&it>=1&&(le.refreshedUponExpiration=!1),w?{opacity:1,mix:1-Sr}:{opacity:Sr,mix:0}}return{opacity:1,mix:0}}let Zc=new a.aM(1,0,0,1),ds=new a.aM(0,1,0,1),Ch=new a.aM(0,0,1,1),Bd=new a.aM(1,0,1,1),Jh=new a.aM(0,1,1,1);function Cf(le,w,B,Q){Lu(le,0,w+B/2,le.transform.width,B,Q)}function pd(le,w,B,Q){Lu(le,w-B/2,0,B,le.transform.height,Q)}function Lu(le,w,B,Q,ee,se){let qe=le.context,je=qe.gl;je.enable(je.SCISSOR_TEST),je.scissor(w*le.pixelRatio,B*le.pixelRatio,Q*le.pixelRatio,ee*le.pixelRatio),qe.clear({color:se}),je.disable(je.SCISSOR_TEST)}function $h(le,w,B){let Q=le.context,ee=Q.gl,se=B.posMatrix,qe=le.useProgram("debug"),je=wo.disabled,it=$o.disabled,yt=le.colorModeForRenderPass(),Ot="$debug",Nt=le.style.map.terrain&&le.style.map.terrain.getTerrainData(B);Q.activeTexture.set(ee.TEXTURE0);let hr=w.getTileByID(B.key).latestRawTileData,Sr=Math.floor((hr&&hr.byteLength||0)/1024),he=w.getTile(B).tileSize,be=512/Math.min(he,512)*(B.overscaledZ/le.transform.zoom)*.5,Pe=B.canonical.toString();B.overscaledZ!==B.canonical.z&&(Pe+=` => ${B.overscaledZ}`),function(Oe,Je){Oe.initDebugOverlayCanvas();let He=Oe.debugOverlayCanvas,et=Oe.context.gl,Mt=Oe.debugOverlayCanvas.getContext("2d");Mt.clearRect(0,0,He.width,He.height),Mt.shadowColor="white",Mt.shadowBlur=2,Mt.lineWidth=1.5,Mt.strokeStyle="white",Mt.textBaseline="top",Mt.font="bold 36px Open Sans, sans-serif",Mt.fillText(Je,5,5),Mt.strokeText(Je,5,5),Oe.debugOverlayTexture.update(He),Oe.debugOverlayTexture.bind(et.LINEAR,et.CLAMP_TO_EDGE)}(le,`${Pe} ${Sr}kB`),qe.draw(Q,ee.TRIANGLES,je,it,Ps.alphaBlended,Ja.disabled,ho(se,a.aM.transparent,be),null,Ot,le.debugBuffer,le.quadTriangleIndexBuffer,le.debugSegments),qe.draw(Q,ee.LINE_STRIP,je,it,yt,Ja.disabled,ho(se,a.aM.red),Nt,Ot,le.debugBuffer,le.tileBorderIndexBuffer,le.debugSegments)}function tu(le,w,B){let Q=le.context,ee=Q.gl,se=le.colorModeForRenderPass(),qe=new wo(ee.LEQUAL,wo.ReadWrite,le.depthRangeFor3D),je=le.useProgram("terrain"),it=w.getTerrainMesh();Q.bindFramebuffer.set(null),Q.viewport.set([0,0,le.width,le.height]);for(let yt of B){let Ot=le.renderToTexture.getTexture(yt),Nt=w.getTerrainData(yt.tileID);Q.activeTexture.set(ee.TEXTURE0),ee.bindTexture(ee.TEXTURE_2D,Ot.texture);let hr=le.transform.calculatePosMatrix(yt.tileID.toUnwrapped()),Sr=w.getMeshFrameDelta(le.transform.zoom),he=le.transform.calculateFogMatrix(yt.tileID.toUnwrapped()),be=Hr(hr,Sr,he,le.style.sky,le.transform.pitch);je.draw(Q,ee.TRIANGLES,qe,$o.disabled,se,Ja.backCCW,be,Nt,"terrain",it.vertexBuffer,it.indexBuffer,it.segments)}}class Pu{constructor(w,B,Q){this.vertexBuffer=w,this.indexBuffer=B,this.segments=Q}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class Lc{constructor(w,B){this.context=new ov(w),this.transform=B,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:a.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=dt.maxUnderzooming+dt.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new jo}resize(w,B,Q){if(this.width=Math.floor(w*Q),this.height=Math.floor(B*Q),this.pixelRatio=Q,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let ee of this.style._order)this.style._layers[ee].resize()}setup(){let w=this.context,B=new a.aX;B.emplaceBack(0,0),B.emplaceBack(a.X,0),B.emplaceBack(0,a.X),B.emplaceBack(a.X,a.X),this.tileExtentBuffer=w.createVertexBuffer(B,oo.members),this.tileExtentSegments=a.a0.simpleSegment(0,0,4,2);let Q=new a.aX;Q.emplaceBack(0,0),Q.emplaceBack(a.X,0),Q.emplaceBack(0,a.X),Q.emplaceBack(a.X,a.X),this.debugBuffer=w.createVertexBuffer(Q,oo.members),this.debugSegments=a.a0.simpleSegment(0,0,4,5);let ee=new a.$;ee.emplaceBack(0,0,0,0),ee.emplaceBack(a.X,0,a.X,0),ee.emplaceBack(0,a.X,0,a.X),ee.emplaceBack(a.X,a.X,a.X,a.X),this.rasterBoundsBuffer=w.createVertexBuffer(ee,ot.members),this.rasterBoundsSegments=a.a0.simpleSegment(0,0,4,2);let se=new a.aX;se.emplaceBack(0,0),se.emplaceBack(1,0),se.emplaceBack(0,1),se.emplaceBack(1,1),this.viewportBuffer=w.createVertexBuffer(se,oo.members),this.viewportSegments=a.a0.simpleSegment(0,0,4,2);let qe=new a.aZ;qe.emplaceBack(0),qe.emplaceBack(1),qe.emplaceBack(3),qe.emplaceBack(2),qe.emplaceBack(0),this.tileBorderIndexBuffer=w.createIndexBuffer(qe);let je=new a.aY;je.emplaceBack(0,1,2),je.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=w.createIndexBuffer(je);let it=this.context.gl;this.stencilClearMode=new $o({func:it.ALWAYS,mask:0},0,255,it.ZERO,it.ZERO,it.ZERO)}clearStencil(){let w=this.context,B=w.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let Q=a.H();a.aP(Q,0,this.width,this.height,0,0,1),a.K(Q,Q,[B.drawingBufferWidth,B.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(w,B.TRIANGLES,wo.disabled,this.stencilClearMode,Ps.disabled,Ja.disabled,Mo(Q),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(w,B){if(this.currentStencilSource===w.source||!w.isTileClipped()||!B||!B.length)return;this.currentStencilSource=w.source;let Q=this.context,ee=Q.gl;this.nextStencilID+B.length>256&&this.clearStencil(),Q.setColorMode(Ps.disabled),Q.setDepthMode(wo.disabled);let se=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let qe of B){let je=this._tileClippingMaskIDs[qe.key]=this.nextStencilID++,it=this.style.map.terrain&&this.style.map.terrain.getTerrainData(qe);se.draw(Q,ee.TRIANGLES,wo.disabled,new $o({func:ee.ALWAYS,mask:0},je,255,ee.KEEP,ee.KEEP,ee.REPLACE),Ps.disabled,Ja.disabled,Mo(qe.posMatrix),it,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let w=this.nextStencilID++,B=this.context.gl;return new $o({func:B.NOTEQUAL,mask:255},w,255,B.KEEP,B.KEEP,B.REPLACE)}stencilModeForClipping(w){let B=this.context.gl;return new $o({func:B.EQUAL,mask:255},this._tileClippingMaskIDs[w.key],0,B.KEEP,B.KEEP,B.REPLACE)}stencilConfigForOverlap(w){let B=this.context.gl,Q=w.sort((qe,je)=>je.overscaledZ-qe.overscaledZ),ee=Q[Q.length-1].overscaledZ,se=Q[0].overscaledZ-ee+1;if(se>1){this.currentStencilSource=void 0,this.nextStencilID+se>256&&this.clearStencil();let qe={};for(let je=0;je<se;je++)qe[je+ee]=new $o({func:B.GEQUAL,mask:255},je+this.nextStencilID,255,B.KEEP,B.KEEP,B.REPLACE);return this.nextStencilID+=se,[qe,Q]}return[{[ee]:$o.disabled},Q]}colorModeForRenderPass(){let w=this.context.gl;return this._showOverdrawInspector?new Ps([w.CONSTANT_COLOR,w.ONE],new a.aM(.125,.125,.125,0),[!0,!0,!0,!0]):this.renderPass==="opaque"?Ps.unblended:Ps.alphaBlended}depthModeForSublayer(w,B,Q){if(!this.opaquePassEnabledForLayer())return wo.disabled;let ee=1-((1+this.currentLayer)*this.numSublayers+w)*this.depthEpsilon;return new wo(Q||this.context.gl.LEQUAL,B,[ee,ee])}opaquePassEnabledForLayer(){return this.currentLayer<this.opaquePassCutoff}render(w,B){this.style=w,this.options=B,this.lineAtlas=w.lineAtlas,this.imageManager=w.imageManager,this.glyphManager=w.glyphManager,this.symbolFadeChange=w.placement.symbolFadeChange(u.now()),this.imageManager.beginFrame();let Q=this.style._order,ee=this.style.sourceCaches,se={},qe={},je={};for(let it in ee){let yt=ee[it];yt.used&&yt.prepare(this.context),se[it]=yt.getVisibleCoordinates(),qe[it]=se[it].slice().reverse(),je[it]=yt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(let it=0;it<Q.length;it++)if(this.style._layers[Q[it]].is3D()){this.opaquePassCutoff=it;break}this.maybeDrawDepthAndCoords(!1),this.renderToTexture&&(this.renderToTexture.prepareForRender(this.style,this.transform.zoom),this.opaquePassCutoff=0),this.renderPass="offscreen";for(let it of Q){let yt=this.style._layers[it];if(!yt.hasOffscreenPass()||yt.isHidden(this.transform.zoom))continue;let Ot=qe[yt.source];(yt.type==="custom"||Ot.length)&&this.renderLayer(this,ee[yt.source],yt,Ot)}if(this.context.bindFramebuffer.set(null),this.context.clear({color:B.showOverdrawInspector?a.aM.black:a.aM.transparent,depth:1}),this.clearStencil(),this.style.sky&&function(it,yt){let Ot=it.context,Nt=Ot.gl,hr=((Oe,Je,He)=>({u_sky_color:Oe.properties.get("sky-color"),u_horizon_color:Oe.properties.get("horizon-color"),u_horizon:(Je.height/2+Je.getHorizon())*He,u_sky_horizon_blend:Oe.properties.get("sky-horizon-blend")*Je.height/2*He}))(yt,it.style.map.transform,it.pixelRatio),Sr=new wo(Nt.LEQUAL,wo.ReadWrite,[0,1]),he=$o.disabled,be=it.colorModeForRenderPass(),Pe=it.useProgram("sky");if(!yt.mesh){let Oe=new a.aX;Oe.emplaceBack(-1,-1),Oe.emplaceBack(1,-1),Oe.emplaceBack(1,1),Oe.emplaceBack(-1,1);let Je=new a.aY;Je.emplaceBack(0,1,2),Je.emplaceBack(0,2,3),yt.mesh=new Pu(Ot.createVertexBuffer(Oe,oo.members),Ot.createIndexBuffer(Je),a.a0.simpleSegment(0,0,Oe.length,Je.length))}Pe.draw(Ot,Nt.TRIANGLES,Sr,he,be,Ja.disabled,hr,void 0,"sky",yt.mesh.vertexBuffer,yt.mesh.indexBuffer,yt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=B.showOverdrawInspector,this.depthRangeFor3D=[0,1-(w._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=Q.length-1;this.currentLayer>=0;this.currentLayer--){let it=this.style._layers[Q[this.currentLayer]],yt=ee[it.source],Ot=se[it.source];this._renderTileClippingMasks(it,Ot),this.renderLayer(this,yt,it,Ot)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<Q.length;this.currentLayer++){let it=this.style._layers[Q[this.currentLayer]],yt=ee[it.source];if(this.renderToTexture&&this.renderToTexture.renderLayer(it))continue;let Ot=(it.type==="symbol"?je:qe)[it.source];this._renderTileClippingMasks(it,se[it.source]),this.renderLayer(this,yt,it,Ot)}if(this.options.showTileBoundaries){let it=function(yt,Ot){let Nt=null,hr=Object.values(yt._layers).flatMap(Pe=>Pe.source&&!Pe.isHidden(Ot)?[yt.sourceCaches[Pe.source]]:[]),Sr=hr.filter(Pe=>Pe.getSource().type==="vector"),he=hr.filter(Pe=>Pe.getSource().type!=="vector"),be=Pe=>{(!Nt||Nt.getSource().maxzoom<Pe.getSource().maxzoom)&&(Nt=Pe)};return Sr.forEach(Pe=>be(Pe)),Nt||he.forEach(Pe=>be(Pe)),Nt}(this.style,this.transform.zoom);it&&function(yt,Ot,Nt){for(let hr=0;hr<Nt.length;hr++)$h(yt,Ot,Nt[hr])}(this,it,it.getVisibleCoordinates())}this.options.showPadding&&function(it){let yt=it.transform.padding;Cf(it,it.transform.height-(yt.top||0),3,Zc),Cf(it,yt.bottom||0,3,ds),pd(it,yt.left||0,3,Ch),pd(it,it.transform.width-(yt.right||0),3,Bd);let Ot=it.transform.centerPoint;(function(Nt,hr,Sr,he){Lu(Nt,hr-1,Sr-10,2,20,he),Lu(Nt,hr-10,Sr-1,20,2,he)})(it,Ot.x,it.transform.height-Ot.y,Jh)}(this),this.context.setDefault()}maybeDrawDepthAndCoords(w){if(!this.style||!this.style.map||!this.style.map.terrain)return;let B=this.terrainFacilitator.matrix,Q=this.transform.modelViewProjectionMatrix,ee=this.terrainFacilitator.dirty;ee||(ee=w?!a.a_(B,Q):!a.a$(B,Q)),ee||(ee=this.style.map.terrain.sourceCache.tilesAfterTime(this.terrainFacilitator.renderTime).length>0),ee&&(a.b0(B,Q),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(se,qe){let je=se.context,it=je.gl,yt=Ps.unblended,Ot=new wo(it.LEQUAL,wo.ReadWrite,[0,1]),Nt=qe.getTerrainMesh(),hr=qe.sourceCache.getRenderableTiles(),Sr=se.useProgram("terrainDepth");je.bindFramebuffer.set(qe.getFramebuffer("depth").framebuffer),je.viewport.set([0,0,se.width/devicePixelRatio,se.height/devicePixelRatio]),je.clear({color:a.aM.transparent,depth:1});for(let he of hr){let be=qe.getTerrainData(he.tileID),Pe={u_matrix:se.transform.calculatePosMatrix(he.tileID.toUnwrapped()),u_ele_delta:qe.getMeshFrameDelta(se.transform.zoom)};Sr.draw(je,it.TRIANGLES,Ot,$o.disabled,yt,Ja.backCCW,Pe,be,"terrain",Nt.vertexBuffer,Nt.indexBuffer,Nt.segments)}je.bindFramebuffer.set(null),je.viewport.set([0,0,se.width,se.height])}(this,this.style.map.terrain),function(se,qe){let je=se.context,it=je.gl,yt=Ps.unblended,Ot=new wo(it.LEQUAL,wo.ReadWrite,[0,1]),Nt=qe.getTerrainMesh(),hr=qe.getCoordsTexture(),Sr=qe.sourceCache.getRenderableTiles(),he=se.useProgram("terrainCoords");je.bindFramebuffer.set(qe.getFramebuffer("coords").framebuffer),je.viewport.set([0,0,se.width/devicePixelRatio,se.height/devicePixelRatio]),je.clear({color:a.aM.transparent,depth:1}),qe.coordsIndex=[];for(let be of Sr){let Pe=qe.getTerrainData(be.tileID);je.activeTexture.set(it.TEXTURE0),it.bindTexture(it.TEXTURE_2D,hr.texture);let Oe={u_matrix:se.transform.calculatePosMatrix(be.tileID.toUnwrapped()),u_terrain_coords_id:(255-qe.coordsIndex.length)/255,u_texture:0,u_ele_delta:qe.getMeshFrameDelta(se.transform.zoom)};he.draw(je,it.TRIANGLES,Ot,$o.disabled,yt,Ja.backCCW,Oe,Pe,"terrain",Nt.vertexBuffer,Nt.indexBuffer,Nt.segments),qe.coordsIndex.push(be.tileID.key)}je.bindFramebuffer.set(null),je.viewport.set([0,0,se.width,se.height])}(this,this.style.map.terrain))}renderLayer(w,B,Q,ee){if(!Q.isHidden(this.transform.zoom)&&(Q.type==="background"||Q.type==="custom"||(ee||[]).length))switch(this.id=Q.id,Q.type){case"symbol":(function(se,qe,je,it,yt){if(se.renderPass!=="translucent")return;let Ot=$o.disabled,Nt=se.colorModeForRenderPass();(je._unevaluatedLayout.hasValue("text-variable-anchor")||je._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(hr,Sr,he,be,Pe,Oe,Je,He,et){let Mt=Sr.transform,Dt=Gi(),Ut=Pe==="map",tr=Oe==="map";for(let mr of hr){let Rr=be.getTile(mr),zr=Rr.getBucket(he);if(!zr||!zr.text||!zr.text.segments.get().length)continue;let Xr=a.ag(zr.textSizeData,Mt.zoom),di=nn(Rr,1,Sr.transform.zoom),Li=Or(mr.posMatrix,tr,Ut,Sr.transform,di),Ci=he.layout.get("icon-text-fit")!=="none"&&zr.hasIconData();if(Xr){let Qi=Math.pow(2,Mt.zoom-Rr.tileID.overscaledZ),Mn=Sr.style.map.terrain?(ea,Ga)=>Sr.style.map.terrain.getElevation(mr,ea,Ga):null,pa=Dt.translatePosition(Mt,Rr,Je,He);kf(zr,Ut,tr,et,Mt,Li,mr.posMatrix,Qi,Xr,Ci,Dt,pa,mr.toUnwrapped(),Mn)}}}(it,se,je,qe,je.layout.get("text-rotation-alignment"),je.layout.get("text-pitch-alignment"),je.paint.get("text-translate"),je.paint.get("text-translate-anchor"),yt),je.paint.get("icon-opacity").constantOr(1)!==0&&Yh(se,qe,je,it,!1,je.paint.get("icon-translate"),je.paint.get("icon-translate-anchor"),je.layout.get("icon-rotation-alignment"),je.layout.get("icon-pitch-alignment"),je.layout.get("icon-keep-upright"),Ot,Nt),je.paint.get("text-opacity").constantOr(1)!==0&&Yh(se,qe,je,it,!0,je.paint.get("text-translate"),je.paint.get("text-translate-anchor"),je.layout.get("text-rotation-alignment"),je.layout.get("text-pitch-alignment"),je.layout.get("text-keep-upright"),Ot,Nt),qe.map.showCollisionBoxes&&(tc(se,qe,je,it,!0),tc(se,qe,je,it,!1))})(w,B,Q,ee,this.style.placement.variableOffsets);break;case"circle":(function(se,qe,je,it){if(se.renderPass!=="translucent")return;let yt=je.paint.get("circle-opacity"),Ot=je.paint.get("circle-stroke-width"),Nt=je.paint.get("circle-stroke-opacity"),hr=!je.layout.get("circle-sort-key").isConstant();if(yt.constantOr(1)===0&&(Ot.constantOr(1)===0||Nt.constantOr(1)===0))return;let Sr=se.context,he=Sr.gl,be=se.depthModeForSublayer(0,wo.ReadOnly),Pe=$o.disabled,Oe=se.colorModeForRenderPass(),Je=[];for(let He=0;He<it.length;He++){let et=it[He],Mt=qe.getTile(et),Dt=Mt.getBucket(je);if(!Dt)continue;let Ut=Dt.programConfigurations.get(je.id),tr=se.useProgram("circle",Ut),mr=Dt.layoutVertexBuffer,Rr=Dt.indexBuffer,zr=se.style.map.terrain&&se.style.map.terrain.getTerrainData(et),Xr={programConfiguration:Ut,program:tr,layoutVertexBuffer:mr,indexBuffer:Rr,uniformValues:go(se,et,Mt,je),terrainData:zr};if(hr){let di=Dt.segments.get();for(let Li of di)Je.push({segments:new a.a0([Li]),sortKey:Li.sortKey,state:Xr})}else Je.push({segments:Dt.segments,sortKey:0,state:Xr})}hr&&Je.sort((He,et)=>He.sortKey-et.sortKey);for(let He of Je){let{programConfiguration:et,program:Mt,layoutVertexBuffer:Dt,indexBuffer:Ut,uniformValues:tr,terrainData:mr}=He.state;Mt.draw(Sr,he.TRIANGLES,be,Pe,Oe,Ja.disabled,tr,mr,je.id,Dt,Ut,He.segments,je.paint,se.transform.zoom,et)}})(w,B,Q,ee);break;case"heatmap":(function(se,qe,je,it){if(je.paint.get("heatmap-opacity")===0)return;let yt=se.context;if(se.style.map.terrain){for(let Ot of it){let Nt=qe.getTile(Ot);qe.hasRenderableParent(Ot)||(se.renderPass==="offscreen"?nh(se,Nt,je,Ot):se.renderPass==="translucent"&&hf(se,je,Ot))}yt.viewport.set([0,0,se.width,se.height])}else se.renderPass==="offscreen"?function(Ot,Nt,hr,Sr){let he=Ot.context,be=he.gl,Pe=$o.disabled,Oe=new Ps([be.ONE,be.ONE],a.aM.transparent,[!0,!0,!0,!0]);(function(Je,He,et){let Mt=Je.gl;Je.activeTexture.set(Mt.TEXTURE1),Je.viewport.set([0,0,He.width/4,He.height/4]);let Dt=et.heatmapFbos.get(a.aU);Dt?(Mt.bindTexture(Mt.TEXTURE_2D,Dt.colorAttachment.get()),Je.bindFramebuffer.set(Dt.framebuffer)):(Dt=kh(Je,He.width/4,He.height/4),et.heatmapFbos.set(a.aU,Dt))})(he,Ot,hr),he.clear({color:a.aM.transparent});for(let Je=0;Je<Sr.length;Je++){let He=Sr[Je];if(Nt.hasRenderableParent(He))continue;let et=Nt.getTile(He),Mt=et.getBucket(hr);if(!Mt)continue;let Dt=Mt.programConfigurations.get(hr.id),Ut=Ot.useProgram("heatmap",Dt),{zoom:tr}=Ot.transform;Ut.draw(he,be.TRIANGLES,wo.disabled,Pe,Oe,Ja.disabled,xo(He.posMatrix,et,tr,hr.paint.get("heatmap-intensity")),null,hr.id,Mt.layoutVertexBuffer,Mt.indexBuffer,Mt.segments,hr.paint,Ot.transform.zoom,Dt)}he.viewport.set([0,0,Ot.width,Ot.height])}(se,qe,je,it):se.renderPass==="translucent"&&function(Ot,Nt){let hr=Ot.context,Sr=hr.gl;hr.setColorMode(Ot.colorModeForRenderPass());let he=Nt.heatmapFbos.get(a.aU);he&&(hr.activeTexture.set(Sr.TEXTURE0),Sr.bindTexture(Sr.TEXTURE_2D,he.colorAttachment.get()),hr.activeTexture.set(Sr.TEXTURE1),Kh(hr,Nt).bind(Sr.LINEAR,Sr.CLAMP_TO_EDGE),Ot.useProgram("heatmapTexture").draw(hr,Sr.TRIANGLES,wo.disabled,$o.disabled,Ot.colorModeForRenderPass(),Ja.disabled,zs(Ot,Nt,0,1),null,Nt.id,Ot.viewportBuffer,Ot.quadTriangleIndexBuffer,Ot.viewportSegments,Nt.paint,Ot.transform.zoom))}(se,je)})(w,B,Q,ee);break;case"line":(function(se,qe,je,it){if(se.renderPass!=="translucent")return;let yt=je.paint.get("line-opacity"),Ot=je.paint.get("line-width");if(yt.constantOr(1)===0||Ot.constantOr(1)===0)return;let Nt=se.depthModeForSublayer(0,wo.ReadOnly),hr=se.colorModeForRenderPass(),Sr=je.paint.get("line-dasharray"),he=je.paint.get("line-pattern"),be=he.constantOr(1),Pe=je.paint.get("line-gradient"),Oe=je.getCrossfadeParameters(),Je=be?"linePattern":Sr?"lineSDF":Pe?"lineGradient":"line",He=se.context,et=He.gl,Mt=!0;for(let Dt of it){let Ut=qe.getTile(Dt);if(be&&!Ut.patternsLoaded())continue;let tr=Ut.getBucket(je);if(!tr)continue;let mr=tr.programConfigurations.get(je.id),Rr=se.context.program.get(),zr=se.useProgram(Je,mr),Xr=Mt||zr.program!==Rr,di=se.style.map.terrain&&se.style.map.terrain.getTerrainData(Dt),Li=he.constantOr(null);if(Li&&Ut.imageAtlas){let Mn=Ut.imageAtlas,pa=Mn.patternPositions[Li.to.toString()],ea=Mn.patternPositions[Li.from.toString()];pa&&ea&&mr.setConstantPatternPositions(pa,ea)}let Ci=di?Dt:null,Qi=be?wl(se,Ut,je,Oe,Ci):Sr?os(se,Ut,je,Sr,Oe,Ci):Pe?Xs(se,Ut,je,tr.lineClipsArray.length,Ci):Zs(se,Ut,je,Ci);if(be)He.activeTexture.set(et.TEXTURE0),Ut.imageAtlasTexture.bind(et.LINEAR,et.CLAMP_TO_EDGE),mr.updatePaintBuffers(Oe);else if(Sr&&(Xr||se.lineAtlas.dirty))He.activeTexture.set(et.TEXTURE0),se.lineAtlas.bind(He);else if(Pe){let Mn=tr.gradients[je.id],pa=Mn.texture;if(je.gradientVersion!==Mn.version){let ea=256;if(je.stepInterpolant){let Ga=qe.getSource().maxzoom,To=Dt.canonical.z===Ga?Math.ceil(1<<se.transform.maxZoom-Dt.canonical.z):1;ea=a.ac(a.aV(tr.maxLineLength/a.X*1024*To),256,He.maxTextureSize)}Mn.gradient=a.aW({expression:je.gradientExpression(),evaluationKey:"lineProgress",resolution:ea,image:Mn.gradient||void 0,clips:tr.lineClipsArray}),Mn.texture?Mn.texture.update(Mn.gradient):Mn.texture=new g(He,Mn.gradient,et.RGBA),Mn.version=je.gradientVersion,pa=Mn.texture}He.activeTexture.set(et.TEXTURE0),pa.bind(je.stepInterpolant?et.NEAREST:et.LINEAR,et.CLAMP_TO_EDGE)}zr.draw(He,et.TRIANGLES,Nt,se.stencilModeForClipping(Dt),hr,Ja.disabled,Qi,di,je.id,tr.layoutVertexBuffer,tr.indexBuffer,tr.segments,je.paint,se.transform.zoom,mr,tr.layoutVertexBuffer2),Mt=!1}})(w,B,Q,ee);break;case"fill":(function(se,qe,je,it){let yt=je.paint.get("fill-color"),Ot=je.paint.get("fill-opacity");if(Ot.constantOr(1)===0)return;let Nt=se.colorModeForRenderPass(),hr=je.paint.get("fill-pattern"),Sr=se.opaquePassEnabledForLayer()&&!hr.constantOr(1)&&yt.constantOr(a.aM.transparent).a===1&&Ot.constantOr(0)===1?"opaque":"translucent";if(se.renderPass===Sr){let he=se.depthModeForSublayer(1,se.renderPass==="opaque"?wo.ReadWrite:wo.ReadOnly);ah(se,qe,je,it,he,Nt,!1)}if(se.renderPass==="translucent"&&je.paint.get("fill-antialias")){let he=se.depthModeForSublayer(je.getPaintProperty("fill-outline-color")?2:0,wo.ReadOnly);ah(se,qe,je,it,he,Nt,!0)}})(w,B,Q,ee);break;case"fill-extrusion":(function(se,qe,je,it){let yt=je.paint.get("fill-extrusion-opacity");if(yt!==0&&se.renderPass==="translucent"){let Ot=new wo(se.context.gl.LEQUAL,wo.ReadWrite,se.depthRangeFor3D);if(yt!==1||je.paint.get("fill-extrusion-pattern").constantOr(1))Wc(se,qe,je,it,Ot,$o.disabled,Ps.disabled),Wc(se,qe,je,it,Ot,se.stencilModeFor3D(),se.colorModeForRenderPass());else{let Nt=se.colorModeForRenderPass();Wc(se,qe,je,it,Ot,$o.disabled,Nt)}}})(w,B,Q,ee);break;case"hillshade":(function(se,qe,je,it){if(se.renderPass!=="offscreen"&&se.renderPass!=="translucent")return;let yt=se.context,Ot=se.depthModeForSublayer(0,wo.ReadOnly),Nt=se.colorModeForRenderPass(),[hr,Sr]=se.renderPass==="translucent"?se.stencilConfigForOverlap(it):[{},it];for(let he of Sr){let be=qe.getTile(he);be.needsHillshadePrepare!==void 0&&be.needsHillshadePrepare&&se.renderPass==="offscreen"?Cu(se,be,je,Ot,$o.disabled,Nt):se.renderPass==="translucent"&&df(se,he,be,je,Ot,hr[he.overscaledZ],Nt)}yt.viewport.set([0,0,se.width,se.height])})(w,B,Q,ee);break;case"raster":(function(se,qe,je,it){if(se.renderPass!=="translucent"||je.paint.get("raster-opacity")===0||!it.length)return;let yt=se.context,Ot=yt.gl,Nt=qe.getSource(),hr=se.useProgram("raster"),Sr=se.colorModeForRenderPass(),[he,be]=Nt instanceof Rt?[{},it]:se.stencilConfigForOverlap(it),Pe=be[be.length-1].overscaledZ,Oe=!se.options.moving;for(let Je of be){let He=se.depthModeForSublayer(Je.overscaledZ-Pe,je.paint.get("raster-opacity")===1?wo.ReadWrite:wo.ReadOnly,Ot.LESS),et=qe.getTile(Je);et.registerFadeDuration(je.paint.get("raster-fade-duration"));let Mt=qe.findLoadedParent(Je,0),Dt=qe.findLoadedSibling(Je),Ut=Nf(et,Mt||Dt||null,qe,je,se.transform,se.style.map.terrain),tr,mr,Rr=je.paint.get("raster-resampling")==="nearest"?Ot.NEAREST:Ot.LINEAR;yt.activeTexture.set(Ot.TEXTURE0),et.texture.bind(Rr,Ot.CLAMP_TO_EDGE,Ot.LINEAR_MIPMAP_NEAREST),yt.activeTexture.set(Ot.TEXTURE1),Mt?(Mt.texture.bind(Rr,Ot.CLAMP_TO_EDGE,Ot.LINEAR_MIPMAP_NEAREST),tr=Math.pow(2,Mt.tileID.overscaledZ-et.tileID.overscaledZ),mr=[et.tileID.canonical.x*tr%1,et.tileID.canonical.y*tr%1]):et.texture.bind(Rr,Ot.CLAMP_TO_EDGE,Ot.LINEAR_MIPMAP_NEAREST),et.texture.useMipmap&&yt.extTextureFilterAnisotropic&&se.transform.pitch>20&&Ot.texParameterf(Ot.TEXTURE_2D,yt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,yt.extTextureFilterAnisotropicMax);let zr=se.style.map.terrain&&se.style.map.terrain.getTerrainData(Je),Xr=zr?Je:null,di=Xr?Xr.posMatrix:se.transform.calculatePosMatrix(Je.toUnwrapped(),Oe),Li=ml(di,mr||[0,0],tr||1,Ut,je);Nt instanceof Rt?hr.draw(yt,Ot.TRIANGLES,He,$o.disabled,Sr,Ja.disabled,Li,zr,je.id,Nt.boundsBuffer,se.quadTriangleIndexBuffer,Nt.boundsSegments):hr.draw(yt,Ot.TRIANGLES,He,he[Je.overscaledZ],Sr,Ja.disabled,Li,zr,je.id,se.rasterBoundsBuffer,se.quadTriangleIndexBuffer,se.rasterBoundsSegments)}})(w,B,Q,ee);break;case"background":(function(se,qe,je,it){let yt=je.paint.get("background-color"),Ot=je.paint.get("background-opacity");if(Ot===0)return;let Nt=se.context,hr=Nt.gl,Sr=se.transform,he=Sr.tileSize,be=je.paint.get("background-pattern");if(se.isPatternMissing(be))return;let Pe=!be&&yt.a===1&&Ot===1&&se.opaquePassEnabledForLayer()?"opaque":"translucent";if(se.renderPass!==Pe)return;let Oe=$o.disabled,Je=se.depthModeForSublayer(0,Pe==="opaque"?wo.ReadWrite:wo.ReadOnly),He=se.colorModeForRenderPass(),et=se.useProgram(be?"backgroundPattern":"background"),Mt=it||Sr.coveringTiles({tileSize:he,terrain:se.style.map.terrain});be&&(Nt.activeTexture.set(hr.TEXTURE0),se.imageManager.bind(se.context));let Dt=je.getCrossfadeParameters();for(let Ut of Mt){let tr=it?Ut.posMatrix:se.transform.calculatePosMatrix(Ut.toUnwrapped()),mr=be?Hu(tr,Ot,se,be,{tileID:Ut,tileSize:he},Dt):Ql(tr,Ot,yt),Rr=se.style.map.terrain&&se.style.map.terrain.getTerrainData(Ut);et.draw(Nt,hr.TRIANGLES,Je,Oe,He,Ja.disabled,mr,Rr,je.id,se.tileExtentBuffer,se.quadTriangleIndexBuffer,se.tileExtentSegments)}})(w,0,Q,ee);break;case"custom":(function(se,qe,je){let it=se.context,yt=je.implementation;if(se.renderPass==="offscreen"){let Ot=yt.prerender;Ot&&(se.setCustomLayerDefaults(),it.setColorMode(se.colorModeForRenderPass()),Ot.call(yt,it.gl,se.transform.customLayerMatrix()),it.setDirty(),se.setBaseState())}else if(se.renderPass==="translucent"){se.setCustomLayerDefaults(),it.setColorMode(se.colorModeForRenderPass()),it.setStencilMode($o.disabled);let Ot=yt.renderingMode==="3d"?new wo(se.context.gl.LEQUAL,wo.ReadWrite,se.depthRangeFor3D):se.depthModeForSublayer(0,wo.ReadOnly);it.setDepthMode(Ot),yt.render(it.gl,se.transform.customLayerMatrix(),{farZ:se.transform.farZ,nearZ:se.transform.nearZ,fov:se.transform._fov,modelViewProjectionMatrix:se.transform.modelViewProjectionMatrix,projectionMatrix:se.transform.projectionMatrix}),it.setDirty(),se.setBaseState(),it.bindFramebuffer.set(null)}})(w,0,Q)}}translatePosMatrix(w,B,Q,ee,se){if(!Q[0]&&!Q[1])return w;let qe=se?ee==="map"?this.transform.angle:0:ee==="viewport"?-this.transform.angle:0;if(qe){let yt=Math.sin(qe),Ot=Math.cos(qe);Q=[Q[0]*Ot-Q[1]*yt,Q[0]*yt+Q[1]*Ot]}let je=[se?Q[0]:nn(B,Q[0],this.transform.zoom),se?Q[1]:nn(B,Q[1],this.transform.zoom),0],it=new Float32Array(16);return a.J(it,w,je),it}saveTileTexture(w){let B=this._tileTextures[w.size[0]];B?B.push(w):this._tileTextures[w.size[0]]=[w]}getTileTexture(w){let B=this._tileTextures[w];return B&&B.length>0?B.pop():null}isPatternMissing(w){if(!w)return!1;if(!w.from||!w.to)return!0;let B=this.imageManager.getPattern(w.from.toString()),Q=this.imageManager.getPattern(w.to.toString());return!B||!Q}useProgram(w,B){this.cache=this.cache||{};let Q=w+(B?B.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[Q]||(this.cache[Q]=new zi(this.context,xn[w],B,fc[w],this._showOverdrawInspector,this.style.map.terrain)),this.cache[Q]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let w=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(w.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new g(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:w,drawingBufferHeight:B}=this.context.gl;return this.width!==w||this.height!==B}}class fl{constructor(w,B){this.points=w,this.planes=B}static fromInvProjectionMatrix(w,B,Q){let ee=Math.pow(2,Q),se=[[-1,1,-1,1],[1,1,-1,1],[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(je=>{let it=1/(je=a.af([],je,w))[3]/B*ee;return a.b1(je,je,[it,it,1/je[3],it])}),qe=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(je=>{let it=function(hr,Sr){var he=Sr[0],be=Sr[1],Pe=Sr[2],Oe=he*he+be*be+Pe*Pe;return Oe>0&&(Oe=1/Math.sqrt(Oe)),hr[0]=Sr[0]*Oe,hr[1]=Sr[1]*Oe,hr[2]=Sr[2]*Oe,hr}([],function(hr,Sr,he){var be=Sr[0],Pe=Sr[1],Oe=Sr[2],Je=he[0],He=he[1],et=he[2];return hr[0]=Pe*et-Oe*He,hr[1]=Oe*Je-be*et,hr[2]=be*He-Pe*Je,hr}([],L([],se[je[0]],se[je[1]]),L([],se[je[2]],se[je[1]]))),yt=-((Ot=it)[0]*(Nt=se[je[1]])[0]+Ot[1]*Nt[1]+Ot[2]*Nt[2]);var Ot,Nt;return it.concat(yt)});return new fl(se,qe)}}class Xc{constructor(w,B){this.min=w,this.max=B,this.center=function(Q,ee,se){return Q[0]=.5*ee[0],Q[1]=.5*ee[1],Q[2]=.5*ee[2],Q}([],function(Q,ee,se){return Q[0]=ee[0]+se[0],Q[1]=ee[1]+se[1],Q[2]=ee[2]+se[2],Q}([],this.min,this.max))}quadrant(w){let B=[w%2==0,w<2],Q=k(this.min),ee=k(this.max);for(let se=0;se<B.length;se++)Q[se]=B[se]?this.min[se]:this.center[se],ee[se]=B[se]?this.center[se]:this.max[se];return ee[2]=this.max[2],new Xc(Q,ee)}distanceX(w){return Math.max(Math.min(this.max[0],w[0]),this.min[0])-w[0]}distanceY(w){return Math.max(Math.min(this.max[1],w[1]),this.min[1])-w[1]}intersects(w){let B=[[this.min[0],this.min[1],this.min[2],1],[this.max[0],this.min[1],this.min[2],1],[this.max[0],this.max[1],this.min[2],1],[this.min[0],this.max[1],this.min[2],1],[this.min[0],this.min[1],this.max[2],1],[this.max[0],this.min[1],this.max[2],1],[this.max[0],this.max[1],this.max[2],1],[this.min[0],this.max[1],this.max[2],1]],Q=!0;for(let ee=0;ee<w.planes.length;ee++){let se=w.planes[ee],qe=0;for(let je=0;je<B.length;je++)a.b2(se,B[je])>=0&&qe++;if(qe===0)return 0;qe!==B.length&&(Q=!1)}if(Q)return 2;for(let ee=0;ee<3;ee++){let se=Number.MAX_VALUE,qe=-Number.MAX_VALUE;for(let je=0;je<w.points.length;je++){let it=w.points[je][ee]-this.min[ee];se=Math.min(se,it),qe=Math.max(qe,it)}if(qe<0||se>this.max[ee]-this.min[ee])return 0}return 1}}class ic{constructor(w=0,B=0,Q=0,ee=0){if(isNaN(w)||w<0||isNaN(B)||B<0||isNaN(Q)||Q<0||isNaN(ee)||ee<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=w,this.bottom=B,this.left=Q,this.right=ee}interpolate(w,B,Q){return B.top!=null&&w.top!=null&&(this.top=a.y.number(w.top,B.top,Q)),B.bottom!=null&&w.bottom!=null&&(this.bottom=a.y.number(w.bottom,B.bottom,Q)),B.left!=null&&w.left!=null&&(this.left=a.y.number(w.left,B.left,Q)),B.right!=null&&w.right!=null&&(this.right=a.y.number(w.right,B.right,Q)),this}getCenter(w,B){let Q=a.ac((this.left+w-this.right)/2,0,w),ee=a.ac((this.top+B-this.bottom)/2,0,B);return new a.P(Q,ee)}equals(w){return this.top===w.top&&this.bottom===w.bottom&&this.left===w.left&&this.right===w.right}clone(){return new ic(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let yu=85.051129;class Qs{constructor(w,B,Q,ee,se){this.tileSize=512,this._renderWorldCopies=se===void 0||!!se,this._minZoom=w||0,this._maxZoom=B||22,this._minPitch=Q==null?0:Q,this._maxPitch=ee==null?60:ee,this.setMaxBounds(),this.width=0,this.height=0,this._center=new a.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new ic,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let w=new Qs(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return w.apply(this),w}apply(w){this.tileSize=w.tileSize,this.latRange=w.latRange,this.lngRange=w.lngRange,this.width=w.width,this.height=w.height,this._center=w._center,this._elevation=w._elevation,this.minElevationForCurrentTile=w.minElevationForCurrentTile,this.zoom=w.zoom,this.angle=w.angle,this._fov=w._fov,this._pitch=w._pitch,this._unmodified=w._unmodified,this._edgeInsets=w._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(w){this._minZoom!==w&&(this._minZoom=w,this.zoom=Math.max(this.zoom,w))}get maxZoom(){return this._maxZoom}set maxZoom(w){this._maxZoom!==w&&(this._maxZoom=w,this.zoom=Math.min(this.zoom,w))}get minPitch(){return this._minPitch}set minPitch(w){this._minPitch!==w&&(this._minPitch=w,this.pitch=Math.max(this.pitch,w))}get maxPitch(){return this._maxPitch}set maxPitch(w){this._maxPitch!==w&&(this._maxPitch=w,this.pitch=Math.min(this.pitch,w))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(w){w===void 0?w=!0:w===null&&(w=!1),this._renderWorldCopies=w}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new a.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(w){let B=-a.b3(w,-180,180)*Math.PI/180;this.angle!==B&&(this._unmodified=!1,this.angle=B,this._calcMatrices(),this.rotationMatrix=function(){var Q=new a.A(4);return a.A!=Float32Array&&(Q[1]=0,Q[2]=0),Q[0]=1,Q[3]=1,Q}(),function(Q,ee,se){var qe=ee[0],je=ee[1],it=ee[2],yt=ee[3],Ot=Math.sin(se),Nt=Math.cos(se);Q[0]=qe*Nt+it*Ot,Q[1]=je*Nt+yt*Ot,Q[2]=qe*-Ot+it*Nt,Q[3]=je*-Ot+yt*Nt}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(w){let B=a.ac(w,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==B&&(this._unmodified=!1,this._pitch=B,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(w){w=Math.max(.01,Math.min(60,w)),this._fov!==w&&(this._unmodified=!1,this._fov=w/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(w){let B=Math.min(Math.max(w,this.minZoom),this.maxZoom);this._zoom!==B&&(this._unmodified=!1,this._zoom=B,this.tileZoom=Math.max(0,Math.floor(B)),this.scale=this.zoomScale(B),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(w){w.lat===this._center.lat&&w.lng===this._center.lng||(this._unmodified=!1,this._center=w,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(w){w!==this._elevation&&(this._elevation=w,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(w){this._edgeInsets.equals(w)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,w,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(w){return this._edgeInsets.equals(w)}interpolatePadding(w,B,Q){this._unmodified=!1,this._edgeInsets.interpolate(w,B,Q),this._constrain(),this._calcMatrices()}coveringZoomLevel(w){let B=(w.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/w.tileSize));return Math.max(0,B)}getVisibleUnwrappedCoordinates(w){let B=[new a.b4(0,w)];if(this._renderWorldCopies){let Q=this.pointCoordinate(new a.P(0,0)),ee=this.pointCoordinate(new a.P(this.width,0)),se=this.pointCoordinate(new a.P(this.width,this.height)),qe=this.pointCoordinate(new a.P(0,this.height)),je=Math.floor(Math.min(Q.x,ee.x,se.x,qe.x)),it=Math.floor(Math.max(Q.x,ee.x,se.x,qe.x)),yt=1;for(let Ot=je-yt;Ot<=it+yt;Ot++)Ot!==0&&B.push(new a.b4(Ot,w))}return B}coveringTiles(w){var B,Q;let ee=this.coveringZoomLevel(w),se=ee;if(w.minzoom!==void 0&&ee<w.minzoom)return[];w.maxzoom!==void 0&&ee>w.maxzoom&&(ee=w.maxzoom);let qe=this.pointCoordinate(this.getCameraPoint()),je=a.Z.fromLngLat(this.center),it=Math.pow(2,ee),yt=[it*qe.x,it*qe.y,0],Ot=[it*je.x,it*je.y,0],Nt=fl.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,ee),hr=w.minzoom||0;!w.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(hr=ee);let Sr=w.terrain?2/Math.min(this.tileSize,w.tileSize)*this.tileSize:3,he=He=>({aabb:new Xc([He*it,0,0],[(He+1)*it,it,0]),zoom:0,x:0,y:0,wrap:He,fullyVisible:!1}),be=[],Pe=[],Oe=ee,Je=w.reparseOverscaled?se:ee;if(this._renderWorldCopies)for(let He=1;He<=3;He++)be.push(he(-He)),be.push(he(He));for(be.push(he(0));be.length>0;){let He=be.pop(),et=He.x,Mt=He.y,Dt=He.fullyVisible;if(!Dt){let zr=He.aabb.intersects(Nt);if(zr===0)continue;Dt=zr===2}let Ut=w.terrain?yt:Ot,tr=He.aabb.distanceX(Ut),mr=He.aabb.distanceY(Ut),Rr=Math.max(Math.abs(tr),Math.abs(mr));if(He.zoom===Oe||Rr>Sr+(1<<Oe-He.zoom)-2&&He.zoom>=hr){let zr=Oe-He.zoom,Xr=yt[0]-.5-(et<<zr),di=yt[1]-.5-(Mt<<zr);Pe.push({tileID:new a.S(He.zoom===Oe?Je:He.zoom,He.wrap,He.zoom,et,Mt),distanceSq:_([Ot[0]-.5-et,Ot[1]-.5-Mt]),tileDistanceToCamera:Math.sqrt(Xr*Xr+di*di)})}else for(let zr=0;zr<4;zr++){let Xr=(et<<1)+zr%2,di=(Mt<<1)+(zr>>1),Li=He.zoom+1,Ci=He.aabb.quadrant(zr);if(w.terrain){let Qi=new a.S(Li,He.wrap,Li,Xr,di),Mn=w.terrain.getMinMaxElevation(Qi),pa=(B=Mn.minElevation)!==null&&B!==void 0?B:this.elevation,ea=(Q=Mn.maxElevation)!==null&&Q!==void 0?Q:this.elevation;Ci=new Xc([Ci.min[0],Ci.min[1],pa],[Ci.max[0],Ci.max[1],ea])}be.push({aabb:Ci,zoom:Li,x:Xr,y:di,wrap:He.wrap,fullyVisible:Dt})}}return Pe.sort((He,et)=>He.distanceSq-et.distanceSq).map(He=>He.tileID)}resize(w,B){this.width=w,this.height=B,this.pixelsToGLUnits=[2/w,-2/B],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(w){return Math.pow(2,w)}scaleZoom(w){return Math.log(w)/Math.LN2}project(w){let B=a.ac(w.lat,-85.051129,yu);return new a.P(a.O(w.lng)*this.worldSize,a.Q(B)*this.worldSize)}unproject(w){return new a.Z(w.x/this.worldSize,w.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(w){let B=this.elevation,Q=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,ee=this.pointLocation(this.centerPoint,w),se=w.getElevationForLngLatZoom(ee,this.tileZoom);if(!(this.elevation-se))return;let qe=Q+B-se,je=Math.cos(this._pitch)*this.cameraToCenterDistance/qe/a.b5(1,ee.lat),it=this.scaleZoom(je/this.tileSize);this._elevation=se,this._center=ee,this.zoom=it}setLocationAtPoint(w,B){let Q=this.pointCoordinate(B),ee=this.pointCoordinate(this.centerPoint),se=this.locationCoordinate(w),qe=new a.Z(se.x-(Q.x-ee.x),se.y-(Q.y-ee.y));this.center=this.coordinateLocation(qe),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(w,B){return B?this.coordinatePoint(this.locationCoordinate(w),B.getElevationForLngLatZoom(w,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(w))}pointLocation(w,B){return this.coordinateLocation(this.pointCoordinate(w,B))}locationCoordinate(w){return a.Z.fromLngLat(w)}coordinateLocation(w){return w&&w.toLngLat()}pointCoordinate(w,B){if(B){let hr=B.pointCoordinate(w);if(hr!=null)return hr}let Q=[w.x,w.y,0,1],ee=[w.x,w.y,1,1];a.af(Q,Q,this.pixelMatrixInverse),a.af(ee,ee,this.pixelMatrixInverse);let se=Q[3],qe=ee[3],je=Q[1]/se,it=ee[1]/qe,yt=Q[2]/se,Ot=ee[2]/qe,Nt=yt===Ot?0:(0-yt)/(Ot-yt);return new a.Z(a.y.number(Q[0]/se,ee[0]/qe,Nt)/this.worldSize,a.y.number(je,it,Nt)/this.worldSize)}coordinatePoint(w,B=0,Q=this.pixelMatrix){let ee=[w.x*this.worldSize,w.y*this.worldSize,B,1];return a.af(ee,ee,Q),new a.P(ee[0]/ee[3],ee[1]/ee[3])}getBounds(){let w=Math.max(0,this.height/2-this.getHorizon());return new ce().extend(this.pointLocation(new a.P(0,w))).extend(this.pointLocation(new a.P(this.width,w))).extend(this.pointLocation(new a.P(this.width,this.height))).extend(this.pointLocation(new a.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ce([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(w){w?(this.lngRange=[w.getWest(),w.getEast()],this.latRange=[w.getSouth(),w.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,yu])}calculateTileMatrix(w){let B=w.canonical,Q=this.worldSize/this.zoomScale(B.z),ee=B.x+Math.pow(2,B.z)*w.wrap,se=a.an(new Float64Array(16));return a.J(se,se,[ee*Q,B.y*Q,0]),a.K(se,se,[Q/a.X,Q/a.X,1]),se}calculatePosMatrix(w,B=!1){let Q=w.key,ee=B?this._alignedPosMatrixCache:this._posMatrixCache;if(ee[Q])return ee[Q];let se=this.calculateTileMatrix(w);return a.L(se,B?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,se),ee[Q]=new Float32Array(se),ee[Q]}calculateFogMatrix(w){let B=w.key,Q=this._fogMatrixCache;if(Q[B])return Q[B];let ee=this.calculateTileMatrix(w);return a.L(ee,this.fogMatrix,ee),Q[B]=new Float32Array(ee),Q[B]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(w,B){B=a.ac(+B,this.minZoom,this.maxZoom);let Q={center:new a.N(w.lng,w.lat),zoom:B},ee=this.lngRange;if(!this._renderWorldCopies&&ee===null){let He=179.9999999999;ee=[-He,He]}let se=this.tileSize*this.zoomScale(Q.zoom),qe=0,je=se,it=0,yt=se,Ot=0,Nt=0,{x:hr,y:Sr}=this.size;if(this.latRange){let He=this.latRange;qe=a.Q(He[1])*se,je=a.Q(He[0])*se,je-qe<Sr&&(Ot=Sr/(je-qe))}ee&&(it=a.b3(a.O(ee[0])*se,0,se),yt=a.b3(a.O(ee[1])*se,0,se),yt<it&&(yt+=se),yt-it<hr&&(Nt=hr/(yt-it)));let{x:he,y:be}=this.project.call({worldSize:se},w),Pe,Oe,Je=Math.max(Nt||0,Ot||0);if(Je){let He=new a.P(Nt?(yt+it)/2:he,Ot?(je+qe)/2:be);return Q.center=this.unproject.call({worldSize:se},He).wrap(),Q.zoom+=this.scaleZoom(Je),Q}if(this.latRange){let He=Sr/2;be-He<qe&&(Oe=qe+He),be+He>je&&(Oe=je-He)}if(ee){let He=(it+yt)/2,et=he;this._renderWorldCopies&&(et=a.b3(he,He-se/2,He+se/2));let Mt=hr/2;et-Mt<it&&(Pe=it+Mt),et+Mt>yt&&(Pe=yt-Mt)}if(Pe!==void 0||Oe!==void 0){let He=new a.P(Pe!=null?Pe:he,Oe!=null?Oe:be);Q.center=this.unproject.call({worldSize:se},He).wrap()}return Q}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let w=this._unmodified,{center:B,zoom:Q}=this.getConstrained(this.center,this.zoom);this.center=B,this.zoom=Q,this._unmodified=w,this._constraining=!1}_calcMatrices(){if(!this.height)return;let w=this.centerOffset,B=this.point.x,Q=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=a.b5(1,this.center.lat)*this.worldSize;let ee=a.an(new Float64Array(16));a.K(ee,ee,[this.width/2,-this.height/2,1]),a.J(ee,ee,[1,-1,0]),this.labelPlaneMatrix=ee,ee=a.an(new Float64Array(16)),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[-1,-1,0]),a.K(ee,ee,[2/this.width,2/this.height,1]),this.glCoordMatrix=ee;let se=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),qe=Math.min(this.elevation,this.minElevationForCurrentTile),je=se-qe*this._pixelPerMeter/Math.cos(this._pitch),it=qe<0?je:se,yt=Math.PI/2+this._pitch,Ot=this._fov*(.5+w.y/this.height),Nt=Math.sin(Ot)*it/Math.sin(a.ac(Math.PI-yt-Ot,.01,Math.PI-.01)),hr=this.getHorizon(),Sr=2*Math.atan(hr/this.cameraToCenterDistance)*(.5+w.y/(2*hr)),he=Math.sin(Sr)*it/Math.sin(a.ac(Math.PI-yt-Sr,.01,Math.PI-.01)),be=Math.min(Nt,he);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*be+it),this.nearZ=this.height/50,ee=new Float64Array(16),a.b6(ee,this._fov,this.width/this.height,this.nearZ,this.farZ),ee[8]=2*-w.x/this.width,ee[9]=2*w.y/this.height,this.projectionMatrix=a.ae(ee),a.K(ee,ee,[1,-1,1]),a.J(ee,ee,[0,0,-this.cameraToCenterDistance]),a.b7(ee,ee,this._pitch),a.ad(ee,ee,this.angle),a.J(ee,ee,[-B,-Q,0]),this.mercatorMatrix=a.K([],ee,[this.worldSize,this.worldSize,this.worldSize]),a.K(ee,ee,[1,1,this._pixelPerMeter]),this.pixelMatrix=a.L(new Float64Array(16),this.labelPlaneMatrix,ee),a.J(ee,ee,[0,0,-this.elevation]),this.modelViewProjectionMatrix=ee,this.invModelViewProjectionMatrix=a.as([],ee),this.fogMatrix=new Float64Array(16),a.b6(this.fogMatrix,this._fov,this.width/this.height,se,this.farZ),this.fogMatrix[8]=2*-w.x/this.width,this.fogMatrix[9]=2*w.y/this.height,a.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),a.b7(this.fogMatrix,this.fogMatrix,this._pitch),a.ad(this.fogMatrix,this.fogMatrix,this.angle),a.J(this.fogMatrix,this.fogMatrix,[-B,-Q,0]),a.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),a.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=a.L(new Float64Array(16),this.labelPlaneMatrix,ee);let Pe=this.width%2/2,Oe=this.height%2/2,Je=Math.cos(this.angle),He=Math.sin(this.angle),et=B-Math.round(B)+Je*Pe+He*Oe,Mt=Q-Math.round(Q)+Je*Oe+He*Pe,Dt=new Float64Array(ee);if(a.J(Dt,Dt,[et>.5?et-1:et,Mt>.5?Mt-1:Mt,0]),this.alignedModelViewProjectionMatrix=Dt,ee=a.as(new Float64Array(16),this.pixelMatrix),!ee)throw new Error("failed to invert matrix");this.pixelMatrixInverse=ee,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let w=this.pointCoordinate(new a.P(0,0)),B=[w.x*this.worldSize,w.y*this.worldSize,0,1];return a.af(B,B,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let w=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new a.P(0,w))}getCameraQueryGeometry(w){let B=this.getCameraPoint();if(w.length===1)return[w[0],B];{let Q=B.x,ee=B.y,se=B.x,qe=B.y;for(let je of w)Q=Math.min(Q,je.x),ee=Math.min(ee,je.y),se=Math.max(se,je.x),qe=Math.max(qe,je.y);return[new a.P(Q,ee),new a.P(se,ee),new a.P(se,qe),new a.P(Q,qe),new a.P(Q,ee)]}}lngLatToCameraDepth(w,B){let Q=this.locationCoordinate(w),ee=[Q.x*this.worldSize,Q.y*this.worldSize,B,1];return a.af(ee,ee,this.modelViewProjectionMatrix),ee[2]/ee[3]}}function Qh(le,w){let B,Q=!1,ee=null,se=null,qe=()=>{ee=null,Q&&(le.apply(se,B),ee=setTimeout(qe,w),Q=!1)};return(...je)=>(Q=!0,se=this,B=je,ee||qe(),ee)}class gd{constructor(w){this._getCurrentHash=()=>{let B=window.location.hash.replace("#","");if(this._hashName){let Q;return B.split("&").map(ee=>ee.split("=")).forEach(ee=>{ee[0]===this._hashName&&(Q=ee)}),(Q&&Q[1]||"").split("/")}return B.split("/")},this._onHashChange=()=>{let B=this._getCurrentHash();if(B.length>=3&&!B.some(Q=>isNaN(Q))){let Q=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(B[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+B[2],+B[1]],zoom:+B[0],bearing:Q,pitch:+(B[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let B=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,B)},this._removeHash=()=>{let B=this._getCurrentHash();if(B.length===0)return;let Q=B.join("/"),ee=Q;ee.split("&").length>0&&(ee=ee.split("&")[0]),this._hashName&&(ee=`${this._hashName}=${Q}`);let se=window.location.hash.replace(ee,"");se.startsWith("#&")?se=se.slice(0,1)+se.slice(2):se==="#"&&(se="");let qe=window.location.href.replace(/(#.+)?$/,se);qe=qe.replace("&&","&"),window.history.replaceState(window.history.state,null,qe)},this._updateHash=Qh(this._updateHashUnthrottled,300),this._hashName=w&&encodeURIComponent(w)}addTo(w){return this._map=w,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(w){let B=this._map.getCenter(),Q=Math.round(100*this._map.getZoom())/100,ee=Math.ceil((Q*Math.LN2+Math.log(512/360/.5))/Math.LN10),se=Math.pow(10,ee),qe=Math.round(B.lng*se)/se,je=Math.round(B.lat*se)/se,it=this._map.getBearing(),yt=this._map.getPitch(),Ot="";if(Ot+=w?`/${qe}/${je}/${Q}`:`${Q}/${je}/${qe}`,(it||yt)&&(Ot+="/"+Math.round(10*it)/10),yt&&(Ot+=`/${Math.round(yt)}`),this._hashName){let Nt=this._hashName,hr=!1,Sr=window.location.hash.slice(1).split("&").map(he=>{let be=he.split("=")[0];return be===Nt?(hr=!0,`${be}=${Ot}`):he}).filter(he=>he);return hr||Sr.push(`${Nt}=${Ot}`),`#${Sr.join("&")}`}return`#${Ot}`}}let Gu={linearity:.3,easing:a.b8(0,0,.3,1)},Pc=a.e({deceleration:2500,maxSpeed:1400},Gu),vc=a.e({deceleration:20,maxSpeed:1400},Gu),sv=a.e({deceleration:1e3,maxSpeed:360},Gu),Lf=a.e({deceleration:1e3,maxSpeed:90},Gu);class Uf{constructor(w){this._map=w,this.clear()}clear(){this._inertiaBuffer=[]}record(w){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:u.now(),settings:w})}_drainInertiaBuffer(){let w=this._inertiaBuffer,B=u.now();for(;w.length>0&&B-w[0].time>160;)w.shift()}_onMoveEnd(w){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let B={zoom:0,bearing:0,pitch:0,pan:new a.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:se}of this._inertiaBuffer)B.zoom+=se.zoomDelta||0,B.bearing+=se.bearingDelta||0,B.pitch+=se.pitchDelta||0,se.panDelta&&B.pan._add(se.panDelta),se.around&&(B.around=se.around),se.pinchAround&&(B.pinchAround=se.pinchAround);let Q=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,ee={};if(B.pan.mag()){let se=oh(B.pan.mag(),Q,a.e({},Pc,w||{}));ee.offset=B.pan.mult(se.amount/B.pan.mag()),ee.center=this._map.transform.center,Iu(ee,se)}if(B.zoom){let se=oh(B.zoom,Q,vc);ee.zoom=this._map.transform.zoom+se.amount,Iu(ee,se)}if(B.bearing){let se=oh(B.bearing,Q,sv);ee.bearing=this._map.transform.bearing+a.ac(se.amount,-179,179),Iu(ee,se)}if(B.pitch){let se=oh(B.pitch,Q,Lf);ee.pitch=this._map.transform.pitch+se.amount,Iu(ee,se)}if(ee.zoom||ee.bearing){let se=B.pinchAround===void 0?B.around:B.pinchAround;ee.around=se?this._map.unproject(se):this._map.getCenter()}return this.clear(),a.e(ee,{noMoveStart:!0})}}function Iu(le,w){(!le.duration||le.duration<w.duration)&&(le.duration=w.duration,le.easing=w.easing)}function oh(le,w,B){let{maxSpeed:Q,linearity:ee,deceleration:se}=B,qe=a.ac(le*ee/(w/1e3),-Q,Q),je=Math.abs(qe)/(se*ee);return{easing:B.easing,duration:1e3*je,amount:qe*(je/2)}}class ru extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q,ee={}){let se=c.mousePos(B.getCanvas(),Q),qe=B.unproject(se);super(w,a.e({point:se,lngLat:qe,originalEvent:Q},ee)),this._defaultPrevented=!1,this.target=B}}class vf extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q){let ee=w==="touchend"?Q.changedTouches:Q.touches,se=c.touchPos(B.getCanvasContainer(),ee),qe=se.map(it=>B.unproject(it)),je=se.reduce((it,yt,Ot,Nt)=>it.add(yt.div(Nt.length)),new a.P(0,0));super(w,{points:se,point:je,lngLats:qe,lngLat:B.unproject(je),originalEvent:Q}),this._defaultPrevented=!1}}class md extends a.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(w,B,Q){super(w,{originalEvent:Q}),this._defaultPrevented=!1}}class sh{constructor(w,B){this._map=w,this._clickTolerance=B.clickTolerance}reset(){delete this._mousedownPos}wheel(w){return this._firePreventable(new md(w.type,this._map,w))}mousedown(w,B){return this._mousedownPos=B,this._firePreventable(new ru(w.type,this._map,w))}mouseup(w){this._map.fire(new ru(w.type,this._map,w))}click(w,B){this._mousedownPos&&this._mousedownPos.dist(B)>=this._clickTolerance||this._map.fire(new ru(w.type,this._map,w))}dblclick(w){return this._firePreventable(new ru(w.type,this._map,w))}mouseover(w){this._map.fire(new ru(w.type,this._map,w))}mouseout(w){this._map.fire(new ru(w.type,this._map,w))}touchstart(w){return this._firePreventable(new vf(w.type,this._map,w))}touchmove(w){this._map.fire(new vf(w.type,this._map,w))}touchend(w){this._map.fire(new vf(w.type,this._map,w))}touchcancel(w){this._map.fire(new vf(w.type,this._map,w))}_firePreventable(w){if(this._map.fire(w),w.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class Fs{constructor(w){this._map=w}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(w){this._map.fire(new ru(w.type,this._map,w))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new ru("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(w){this._delayContextMenu?this._contextMenuEvent=w:this._ignoreContextMenu||this._map.fire(new ru(w.type,this._map,w)),this._map.listens("contextmenu")&&w.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class _u{constructor(w){this._map=w}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(w){return this.transform.pointLocation(a.P.convert(w),this._map.terrain)}}class xu{constructor(w,B){this._map=w,this._tr=new _u(w),this._el=w.getCanvasContainer(),this._container=w.getContainer(),this._clickTolerance=B.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(w,B){this.isEnabled()&&w.shiftKey&&w.button===0&&(c.disableDrag(),this._startPos=this._lastPos=B,this._active=!0)}mousemoveWindow(w,B){if(!this._active)return;let Q=B;if(this._lastPos.equals(Q)||!this._box&&Q.dist(this._startPos)<this._clickTolerance)return;let ee=this._startPos;this._lastPos=Q,this._box||(this._box=c.create("div","maplibregl-boxzoom",this._container),this._container.classList.add("maplibregl-crosshair"),this._fireEvent("boxzoomstart",w));let se=Math.min(ee.x,Q.x),qe=Math.max(ee.x,Q.x),je=Math.min(ee.y,Q.y),it=Math.max(ee.y,Q.y);c.setTransform(this._box,`translate(${se}px,${je}px)`),this._box.style.width=qe-se+"px",this._box.style.height=it-je+"px"}mouseupWindow(w,B){if(!this._active||w.button!==0)return;let Q=this._startPos,ee=B;if(this.reset(),c.suppressClick(),Q.x!==ee.x||Q.y!==ee.y)return this._map.fire(new a.k("boxzoomend",{originalEvent:w})),{cameraAnimation:se=>se.fitScreenCoordinates(Q,ee,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",w)}keydown(w){this._active&&w.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",w))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(c.remove(this._box),this._box=null),c.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(w,B){return this._map.fire(new a.k(w,{originalEvent:B}))}}function Lh(le,w){if(le.length!==w.length)throw new Error(`The number of touches and points are not equal - touches ${le.length}, points ${w.length}`);let B={};for(let Q=0;Q<le.length;Q++)B[le[Q].identifier]=w[Q];return B}class Is{constructor(w){this.reset(),this.numTouches=w.numTouches}reset(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1}touchstart(w,B,Q){(this.centroid||Q.length>this.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=w.timeStamp),Q.length===this.numTouches&&(this.centroid=function(ee){let se=new a.P(0,0);for(let qe of ee)se._add(qe);return se.div(ee.length)}(B),this.touches=Lh(Q,B)))}touchmove(w,B,Q){if(this.aborted||!this.centroid)return;let ee=Lh(Q,B);for(let se in this.touches){let qe=ee[se];(!qe||qe.dist(this.touches[se])>30)&&(this.aborted=!0)}}touchend(w,B,Q){if((!this.centroid||w.timeStamp-this.startTime>500)&&(this.aborted=!0),Q.length===0){let ee=!this.aborted&&this.centroid;if(this.reset(),ee)return ee}}}class Pf{constructor(w){this.singleTap=new Is(w),this.numTaps=w.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(w,B,Q){this.singleTap.touchstart(w,B,Q)}touchmove(w,B,Q){this.singleTap.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this.singleTap.touchend(w,B,Q);if(ee){let se=w.timeStamp-this.lastTime<500,qe=!this.lastTap||this.lastTap.dist(ee)<30;if(se&&qe||this.reset(),this.count++,this.lastTime=w.timeStamp,this.lastTap=ee,this.count===this.numTaps)return this.reset(),ee}}}class Ic{constructor(w){this._tr=new _u(w),this._zoomIn=new Pf({numTouches:1,numTaps:2}),this._zoomOut=new Pf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(w,B,Q){this._zoomIn.touchstart(w,B,Q),this._zoomOut.touchstart(w,B,Q)}touchmove(w,B,Q){this._zoomIn.touchmove(w,B,Q),this._zoomOut.touchmove(w,B,Q)}touchend(w,B,Q){let ee=this._zoomIn.touchend(w,B,Q),se=this._zoomOut.touchend(w,B,Q),qe=this._tr;return ee?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:je=>je.easeTo({duration:300,zoom:qe.zoom+1,around:qe.unproject(ee)},{originalEvent:w})}):se?(this._active=!0,w.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:je=>je.easeTo({duration:300,zoom:qe.zoom-1,around:qe.unproject(se)},{originalEvent:w})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ju{constructor(w){this._enabled=!!w.enable,this._moveStateManager=w.moveStateManager,this._clickTolerance=w.clickTolerance||1,this._moveFunction=w.move,this._activateOnStart=!!w.activateOnStart,w.assignEvents(this),this.reset()}reset(w){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(w)}_move(...w){let B=this._moveFunction(...w);if(B.bearingDelta||B.pitchDelta||B.around||B.panDelta)return this._active=!0,B}dragStart(w,B){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(w)&&(this._moveStateManager.startMove(w),this._lastPoint=B.length?B[0]:B,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(w,B){if(!this.isEnabled())return;let Q=this._lastPoint;if(!Q)return;if(w.preventDefault(),!this._moveStateManager.isValidMoveEvent(w))return void this.reset(w);let ee=B.length?B[0]:B;return!this._moved&&ee.dist(Q)<this._clickTolerance?void 0:(this._moved=!0,this._lastPoint=ee,this._move(Q,ee))}dragEnd(w){this.isEnabled()&&this._lastPoint&&this._moveStateManager.isValidEndEvent(w)&&(this._moved&&c.suppressClick(),this.reset(w))}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}getClickTolerance(){return this._clickTolerance}}let Vf={0:1,2:2};class pc{constructor(w){this._correctEvent=w.checkCorrectEvent}startMove(w){let B=c.mouseButton(w);this._eventButton=B}endMove(w){delete this._eventButton}isValidStartEvent(w){return this._correctEvent(w)}isValidMoveEvent(w){return!function(B,Q){let ee=Vf[Q];return B.buttons===void 0||(B.buttons&ee)!==ee}(w,this._eventButton)}isValidEndEvent(w){return c.mouseButton(w)===this._eventButton}}class pf{constructor(){this._firstTouch=void 0}_isOneFingerTouch(w){return w.targetTouches.length===1}_isSameTouchEvent(w){return w.targetTouches[0].identifier===this._firstTouch}startMove(w){this._firstTouch=w.targetTouches[0].identifier}endMove(w){delete this._firstTouch}isValidStartEvent(w){return this._isOneFingerTouch(w)}isValidMoveEvent(w){return this._isOneFingerTouch(w)&&this._isSameTouchEvent(w)}isValidEndEvent(w){return this._isOneFingerTouch(w)&&this._isSameTouchEvent(w)}}let Ph=le=>{le.mousedown=le.dragStart,le.mousemoveWindow=le.dragMove,le.mouseup=le.dragEnd,le.contextmenu=w=>{w.preventDefault()}},Dl=({enable:le,clickTolerance:w,bearingDegreesPerPixelMoved:B=.8})=>{let Q=new pc({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new ju({clickTolerance:w,move:(ee,se)=>({bearingDelta:(se.x-ee.x)*B}),moveStateManager:Q,enable:le,assignEvents:Ph})},Ih=({enable:le,clickTolerance:w,pitchDegreesPerPixelMoved:B=-.5})=>{let Q=new pc({checkCorrectEvent:ee=>c.mouseButton(ee)===0&&ee.ctrlKey||c.mouseButton(ee)===2});return new ju({clickTolerance:w,move:(ee,se)=>({pitchDelta:(se.y-ee.y)*B}),moveStateManager:Q,enable:le,assignEvents:Ph})};class Wu{constructor(w,B){this._clickTolerance=w.clickTolerance||1,this._map=B,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new a.P(0,0)}_shouldBePrevented(w){return w<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(w,B,Q){return this._calculateTransform(w,B,Q)}touchmove(w,B,Q){if(this._active){if(!this._shouldBePrevented(Q.length))return w.preventDefault(),this._calculateTransform(w,B,Q);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",w)}}touchend(w,B,Q){this._calculateTransform(w,B,Q),this._active&&this._shouldBePrevented(Q.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(w,B,Q){Q.length>0&&(this._active=!0);let ee=Lh(Q,B),se=new a.P(0,0),qe=new a.P(0,0),je=0;for(let yt in ee){let Ot=ee[yt],Nt=this._touches[yt];Nt&&(se._add(Ot),qe._add(Ot.sub(Nt)),je++,ee[yt]=Ot)}if(this._touches=ee,this._shouldBePrevented(je)||!qe.mag())return;let it=qe.div(je);return this._sum._add(it),this._sum.mag()<this._clickTolerance?void 0:{around:se.div(je),panDelta:it}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Rc{constructor(){this.reset()}reset(){this._active=!1,delete this._firstTwoTouches}touchstart(w,B,Q){this._firstTwoTouches||Q.length<2||(this._firstTwoTouches=[Q[0].identifier,Q[1].identifier],this._start([B[0],B[1]]))}touchmove(w,B,Q){if(!this._firstTwoTouches)return;w.preventDefault();let[ee,se]=this._firstTwoTouches,qe=gc(Q,B,ee),je=gc(Q,B,se);if(!qe||!je)return;let it=this._aroundCenter?null:qe.add(je).div(2);return this._move([qe,je],it,w)}touchend(w,B,Q){if(!this._firstTwoTouches)return;let[ee,se]=this._firstTwoTouches,qe=gc(Q,B,ee),je=gc(Q,B,se);qe&&je||(this._active&&c.suppressClick(),this.reset())}touchcancel(){this.reset()}enable(w){this._enabled=!0,this._aroundCenter=!!w&&w.around==="center"}disable(){this._enabled=!1,this.reset()}isEnabled(){return!!this._enabled}isActive(){return!!this._active}}function gc(le,w,B){for(let Q=0;Q<le.length;Q++)if(le[Q].identifier===B)return w[Q]}function hl(le,w){return Math.log(le/w)/Math.LN2}class iu extends Rc{reset(){super.reset(),delete this._distance,delete this._startDistance}_start(w){this._startDistance=this._distance=w[0].dist(w[1])}_move(w,B){let Q=this._distance;if(this._distance=w[0].dist(w[1]),this._active||!(Math.abs(hl(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:hl(this._distance,Q),pinchAround:B}}}function mc(le,w){return 180*le.angleWith(w)/Math.PI}class Yc extends Rc{reset(){super.reset(),delete this._minDiameter,delete this._startVector,delete this._vector}_start(w){this._startVector=this._vector=w[0].sub(w[1]),this._minDiameter=w[0].dist(w[1])}_move(w,B,Q){let ee=this._vector;if(this._vector=w[0].sub(w[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:mc(this._vector,ee),pinchAround:B}}_isBelowThreshold(w){this._minDiameter=Math.min(this._minDiameter,w.mag());let B=25/(Math.PI*this._minDiameter)*360,Q=mc(w,this._startVector);return Math.abs(Q)<B}}function nc(le){return Math.abs(le.y)>Math.abs(le.x)}class gf extends Rc{constructor(w){super(),this._currentTouchCount=0,this._map=w}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(w,B,Q){super.touchstart(w,B,Q),this._currentTouchCount=Q.length}_start(w){this._lastPoints=w,nc(w[0].sub(w[1]))&&(this._valid=!1)}_move(w,B,Q){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let ee=w[0].sub(this._lastPoints[0]),se=w[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(ee,se,Q.timeStamp),this._valid?(this._lastPoints=w,this._active=!0,{pitchDelta:(ee.y+se.y)/2*-.5}):void 0}gestureBeginsVertically(w,B,Q){if(this._valid!==void 0)return this._valid;let ee=w.mag()>=2,se=B.mag()>=2;if(!ee&&!se)return;if(!ee||!se)return this._firstMove===void 0&&(this._firstMove=Q),Q-this._firstMove<100&&void 0;let qe=w.y>0==B.y>0;return nc(w)&&nc(B)&&qe}}let gt={panStep:100,bearingStep:15,pitchStep:10};class Bt{constructor(w){this._tr=new _u(w);let B=gt;this._panStep=B.panStep,this._bearingStep=B.bearingStep,this._pitchStep=B.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(w){if(w.altKey||w.ctrlKey||w.metaKey)return;let B=0,Q=0,ee=0,se=0,qe=0;switch(w.keyCode){case 61:case 107:case 171:case 187:B=1;break;case 189:case 109:case 173:B=-1;break;case 37:w.shiftKey?Q=-1:(w.preventDefault(),se=-1);break;case 39:w.shiftKey?Q=1:(w.preventDefault(),se=1);break;case 38:w.shiftKey?ee=1:(w.preventDefault(),qe=-1);break;case 40:w.shiftKey?ee=-1:(w.preventDefault(),qe=1);break;default:return}return this._rotationDisabled&&(Q=0,ee=0),{cameraAnimation:je=>{let it=this._tr;je.easeTo({duration:300,easeId:"keyboardHandler",easing:wr,zoom:B?Math.round(it.zoom)+B*(w.shiftKey?2:1):it.zoom,bearing:it.bearing+Q*this._bearingStep,pitch:it.pitch+ee*this._pitchStep,offset:[-se*this._panStep,-qe*this._panStep],center:it.center},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function wr(le){return le*(2-le)}let vr=4.000244140625;class Ur{constructor(w,B){this._onTimeout=Q=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(Q)},this._map=w,this._tr=new _u(w),this._triggerRenderFrame=B,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(w){this._defaultZoomRate=w}setWheelZoomRate(w){this._wheelZoomRate=w}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(w){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!w&&w.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(w){return!!this._map.cooperativeGestures.isEnabled()&&!(w.ctrlKey||this._map.cooperativeGestures.isBypassed(w))}wheel(w){if(!this.isEnabled())return;if(this._shouldBePrevented(w))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",w);let B=w.deltaMode===WheelEvent.DOM_DELTA_LINE?40*w.deltaY:w.deltaY,Q=u.now(),ee=Q-(this._lastWheelEventTime||0);this._lastWheelEventTime=Q,B!==0&&B%vr==0?this._type="wheel":B!==0&&Math.abs(B)<4?this._type="trackpad":ee>400?(this._type=null,this._lastValue=B,this._timeout=setTimeout(this._onTimeout,40,w)):this._type||(this._type=Math.abs(ee*B)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,B+=this._lastValue)),w.shiftKey&&B&&(B/=4),this._type&&(this._lastWheelEvent=w,this._delta-=B,this._active||this._start(w)),w.preventDefault()}_start(w){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let B=c.mousePos(this._map.getCanvas(),w),Q=this._tr;this._around=B.y>Q.transform.height/2-Q.transform.getHorizon()?a.N.convert(this._aroundCenter?Q.center:Q.unproject(B)):a.N.convert(Q.center),this._aroundPoint=Q.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let w=this._tr.transform;if(this._delta!==0){let it=this._type==="wheel"&&Math.abs(this._delta)>vr?this._wheelZoomRate:this._defaultZoomRate,yt=2/(1+Math.exp(-Math.abs(this._delta*it)));this._delta<0&&yt!==0&&(yt=1/yt);let Ot=typeof this._targetZoom=="number"?w.zoomScale(this._targetZoom):w.scale;this._targetZoom=Math.min(w.maxZoom,Math.max(w.minZoom,w.scaleZoom(Ot*yt))),this._type==="wheel"&&(this._startZoom=w.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let B=typeof this._targetZoom=="number"?this._targetZoom:w.zoom,Q=this._startZoom,ee=this._easing,se,qe=!1,je=u.now()-this._lastWheelEventTime;if(this._type==="wheel"&&Q&&ee&&je){let it=Math.min(je/200,1),yt=ee(it);se=a.y.number(Q,B,yt),it<1?this._frameId||(this._frameId=!0):qe=!0}else se=B,qe=!0;return this._active=!0,qe&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!qe,zoomDelta:se-w.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(w){let B=a.b9;if(this._prevEase){let Q=this._prevEase,ee=(u.now()-Q.start)/Q.duration,se=Q.easing(ee+.01)-Q.easing(ee),qe=.27/Math.sqrt(se*se+1e-4)*.01,je=Math.sqrt(.0729-qe*qe);B=a.b8(qe,je,.25,1)}return this._prevEase={start:u.now(),duration:w,easing:B},B}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class fi{constructor(w,B){this._clickZoom=w,this._tapZoom=B}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class xi{constructor(w){this._tr=new _u(w),this.reset()}reset(){this._active=!1}dblclick(w,B){return w.preventDefault(),{cameraAnimation:Q=>{Q.easeTo({duration:300,zoom:this._tr.zoom+(w.shiftKey?-1:1),around:this._tr.unproject(B)},{originalEvent:w})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Fi{constructor(){this._tap=new Pf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(w,B,Q){if(!this._swipePoint)if(this._tapTime){let ee=B[0],se=w.timeStamp-this._tapTime<500,qe=this._tapPoint.dist(ee)<30;se&&qe?Q.length>0&&(this._swipePoint=ee,this._swipeTouch=Q[0].identifier):this.reset()}else this._tap.touchstart(w,B,Q)}touchmove(w,B,Q){if(this._tapTime){if(this._swipePoint){if(Q[0].identifier!==this._swipeTouch)return;let ee=B[0],se=ee.y-this._swipePoint.y;return this._swipePoint=ee,w.preventDefault(),this._active=!0,{zoomDelta:se/128}}}else this._tap.touchmove(w,B,Q)}touchend(w,B,Q){if(this._tapTime)this._swipePoint&&Q.length===0&&this.reset();else{let ee=this._tap.touchend(w,B,Q);ee&&(this._tapTime=w.timeStamp,this._tapPoint=ee)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Xi{constructor(w,B,Q){this._el=w,this._mousePan=B,this._touchPan=Q}enable(w){this._inertiaOptions=w||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class hn{constructor(w,B,Q){this._pitchWithRotate=w.pitchWithRotate,this._mouseRotate=B,this._mousePitch=Q}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class Ti{constructor(w,B,Q,ee){this._el=w,this._touchZoom=B,this._touchRotate=Q,this._tapDragZoom=ee,this._rotationDisabled=!1,this._enabled=!0}enable(w){this._touchZoom.enable(w),this._rotationDisabled||this._touchRotate.enable(w),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class qi{constructor(w,B){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=w,this._options=B,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let w=this._map.getCanvasContainer();w.classList.add("maplibregl-cooperative-gestures"),this._container=c.create("div","maplibregl-cooperative-gesture-screen",w);let B=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(B=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let Q=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),ee=document.createElement("div");ee.className="maplibregl-desktop-message",ee.textContent=B,this._container.appendChild(ee);let se=document.createElement("div");se.className="maplibregl-mobile-message",se.textContent=Q,this._container.appendChild(se),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(c.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(w){return w[this._bypassKey]}notifyGestureBlocked(w,B){this._enabled&&(this._map.fire(new a.k("cooperativegestureprevented",{gestureType:w,originalEvent:B})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let Ii=le=>le.zoom||le.drag||le.pitch||le.rotate;class mi extends a.k{}function Pn(le){return le.panDelta&&le.panDelta.mag()||le.zoomDelta||le.bearingDelta||le.pitchDelta}class Ma{constructor(w,B){this.handleWindowEvent=ee=>{this.handleEvent(ee,`${ee.type}Window`)},this.handleEvent=(ee,se)=>{if(ee.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let qe=ee.type==="renderFrame"?void 0:ee,je={needsRenderFrame:!1},it={},yt={},Ot=ee.touches,Nt=Ot?this._getMapTouches(Ot):void 0,hr=Nt?c.touchPos(this._map.getCanvas(),Nt):c.mousePos(this._map.getCanvas(),ee);for(let{handlerName:be,handler:Pe,allowed:Oe}of this._handlers){if(!Pe.isEnabled())continue;let Je;this._blockedByActive(yt,Oe,be)?Pe.reset():Pe[se||ee.type]&&(Je=Pe[se||ee.type](ee,hr,Nt),this.mergeHandlerResult(je,it,Je,be,qe),Je&&Je.needsRenderFrame&&this._triggerRenderFrame()),(Je||Pe.isActive())&&(yt[be]=Pe)}let Sr={};for(let be in this._previousActiveHandlers)yt[be]||(Sr[be]=qe);this._previousActiveHandlers=yt,(Object.keys(Sr).length||Pn(je))&&(this._changes.push([je,it,Sr]),this._triggerRenderFrame()),(Object.keys(yt).length||Pn(je))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:he}=je;he&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],he(this._map))},this._map=w,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Uf(w),this._bearingSnap=B.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(B);let Q=this._el;this._listeners=[[Q,"touchstart",{passive:!0}],[Q,"touchmove",{passive:!1}],[Q,"touchend",void 0],[Q,"touchcancel",void 0],[Q,"mousedown",void 0],[Q,"mousemove",void 0],[Q,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[Q,"mouseover",void 0],[Q,"mouseout",void 0],[Q,"dblclick",void 0],[Q,"click",void 0],[Q,"keydown",{capture:!1}],[Q,"keyup",void 0],[Q,"wheel",{passive:!1}],[Q,"contextmenu",void 0],[window,"blur",void 0]];for(let[ee,se,qe]of this._listeners)c.addEventListener(ee,se,ee===document?this.handleWindowEvent:this.handleEvent,qe)}destroy(){for(let[w,B,Q]of this._listeners)c.removeEventListener(w,B,w===document?this.handleWindowEvent:this.handleEvent,Q)}_addDefaultHandlers(w){let B=this._map,Q=B.getCanvasContainer();this._add("mapEvent",new sh(B,w));let ee=B.boxZoom=new xu(B,w);this._add("boxZoom",ee),w.interactive&&w.boxZoom&&ee.enable();let se=B.cooperativeGestures=new qi(B,w.cooperativeGestures);this._add("cooperativeGestures",se),w.cooperativeGestures&&se.enable();let qe=new Ic(B),je=new xi(B);B.doubleClickZoom=new fi(je,qe),this._add("tapZoom",qe),this._add("clickZoom",je),w.interactive&&w.doubleClickZoom&&B.doubleClickZoom.enable();let it=new Fi;this._add("tapDragZoom",it);let yt=B.touchPitch=new gf(B);this._add("touchPitch",yt),w.interactive&&w.touchPitch&&B.touchPitch.enable(w.touchPitch);let Ot=Dl(w),Nt=Ih(w);B.dragRotate=new hn(w,Ot,Nt),this._add("mouseRotate",Ot,["mousePitch"]),this._add("mousePitch",Nt,["mouseRotate"]),w.interactive&&w.dragRotate&&B.dragRotate.enable();let hr=(({enable:Je,clickTolerance:He})=>{let et=new pc({checkCorrectEvent:Mt=>c.mouseButton(Mt)===0&&!Mt.ctrlKey});return new ju({clickTolerance:He,move:(Mt,Dt)=>({around:Dt,panDelta:Dt.sub(Mt)}),activateOnStart:!0,moveStateManager:et,enable:Je,assignEvents:Ph})})(w),Sr=new Wu(w,B);B.dragPan=new Xi(Q,hr,Sr),this._add("mousePan",hr),this._add("touchPan",Sr,["touchZoom","touchRotate"]),w.interactive&&w.dragPan&&B.dragPan.enable(w.dragPan);let he=new Yc,be=new iu;B.touchZoomRotate=new Ti(Q,be,he,it),this._add("touchRotate",he,["touchPan","touchZoom"]),this._add("touchZoom",be,["touchPan","touchRotate"]),w.interactive&&w.touchZoomRotate&&B.touchZoomRotate.enable(w.touchZoomRotate);let Pe=B.scrollZoom=new Ur(B,()=>this._triggerRenderFrame());this._add("scrollZoom",Pe,["mousePan"]),w.interactive&&w.scrollZoom&&B.scrollZoom.enable(w.scrollZoom);let Oe=B.keyboard=new Bt(B);this._add("keyboard",Oe),w.interactive&&w.keyboard&&B.keyboard.enable(),this._add("blockableMapEvent",new Fs(B))}_add(w,B,Q){this._handlers.push({handlerName:w,handler:B,allowed:Q}),this._handlersById[w]=B}stop(w){if(!this._updatingCamera){for(let{handler:B}of this._handlers)B.reset();this._inertia.clear(),this._fireEvents({},{},w),this._changes=[]}}isActive(){for(let{handler:w}of this._handlers)if(w.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!Ii(this._eventsInProgress)||this.isZooming()}_blockedByActive(w,B,Q){for(let ee in w)if(ee!==Q&&(!B||B.indexOf(ee)<0))return!0;return!1}_getMapTouches(w){let B=[];for(let Q of w)this._el.contains(Q.target)&&B.push(Q);return B}mergeHandlerResult(w,B,Q,ee,se){if(!Q)return;a.e(w,Q);let qe={handlerName:ee,originalEvent:Q.originalEvent||se};Q.zoomDelta!==void 0&&(B.zoom=qe),Q.panDelta!==void 0&&(B.drag=qe),Q.pitchDelta!==void 0&&(B.pitch=qe),Q.bearingDelta!==void 0&&(B.rotate=qe)}_applyChanges(){let w={},B={},Q={};for(let[ee,se,qe]of this._changes)ee.panDelta&&(w.panDelta=(w.panDelta||new a.P(0,0))._add(ee.panDelta)),ee.zoomDelta&&(w.zoomDelta=(w.zoomDelta||0)+ee.zoomDelta),ee.bearingDelta&&(w.bearingDelta=(w.bearingDelta||0)+ee.bearingDelta),ee.pitchDelta&&(w.pitchDelta=(w.pitchDelta||0)+ee.pitchDelta),ee.around!==void 0&&(w.around=ee.around),ee.pinchAround!==void 0&&(w.pinchAround=ee.pinchAround),ee.noInertia&&(w.noInertia=ee.noInertia),a.e(B,se),a.e(Q,qe);this._updateMapTransform(w,B,Q),this._changes=[]}_updateMapTransform(w,B,Q){let ee=this._map,se=ee._getTransformForUpdate(),qe=ee.terrain;if(!(Pn(w)||qe&&this._terrainMovement))return this._fireEvents(B,Q,!0);let{panDelta:je,zoomDelta:it,bearingDelta:yt,pitchDelta:Ot,around:Nt,pinchAround:hr}=w;hr!==void 0&&(Nt=hr),ee._stop(!0),Nt=Nt||ee.transform.centerPoint;let Sr=se.pointLocation(je?Nt.sub(je):Nt);yt&&(se.bearing+=yt),Ot&&(se.pitch+=Ot),it&&(se.zoom+=it),qe?this._terrainMovement||!B.drag&&!B.zoom?B.drag&&this._terrainMovement?se.center=se.pointLocation(se.centerPoint.sub(je)):se.setLocationAtPoint(Sr,Nt):(this._terrainMovement=!0,this._map._elevationFreeze=!0,se.setLocationAtPoint(Sr,Nt)):se.setLocationAtPoint(Sr,Nt),ee._applyUpdatedTransform(se),this._map._update(),w.noInertia||this._inertia.record(w),this._fireEvents(B,Q,!0)}_fireEvents(w,B,Q){let ee=Ii(this._eventsInProgress),se=Ii(w),qe={};for(let Nt in w){let{originalEvent:hr}=w[Nt];this._eventsInProgress[Nt]||(qe[`${Nt}start`]=hr),this._eventsInProgress[Nt]=w[Nt]}!ee&&se&&this._fireEvent("movestart",se.originalEvent);for(let Nt in qe)this._fireEvent(Nt,qe[Nt]);se&&this._fireEvent("move",se.originalEvent);for(let Nt in w){let{originalEvent:hr}=w[Nt];this._fireEvent(Nt,hr)}let je={},it;for(let Nt in this._eventsInProgress){let{handlerName:hr,originalEvent:Sr}=this._eventsInProgress[Nt];this._handlersById[hr].isActive()||(delete this._eventsInProgress[Nt],it=B[hr]||Sr,je[`${Nt}end`]=it)}for(let Nt in je)this._fireEvent(Nt,je[Nt]);let yt=Ii(this._eventsInProgress),Ot=(ee||se)&&!yt;if(Ot&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let Nt=this._map._getTransformForUpdate();Nt.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(Nt)}if(Q&&Ot){this._updatingCamera=!0;let Nt=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),hr=Sr=>Sr!==0&&-this._bearingSnap<Sr&&Sr<this._bearingSnap;!Nt||!Nt.essential&&u.prefersReducedMotion?(this._map.fire(new a.k("moveend",{originalEvent:it})),hr(this._map.getBearing())&&this._map.resetNorth()):(hr(Nt.bearing||this._map.getBearing())&&(Nt.bearing=0),Nt.freezeElevation=!0,this._map.easeTo(Nt,{originalEvent:it})),this._updatingCamera=!1}}_fireEvent(w,B){this._map.fire(new a.k(w,B?{originalEvent:B}:{}))}_requestFrame(){return this._map.triggerRepaint(),this._map._renderTaskQueue.add(w=>{delete this._frameId,this.handleEvent(new mi("renderFrame",{timeStamp:w})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Ta extends a.E{constructor(w,B){super(),this._renderFrameCallback=()=>{let Q=Math.min((u.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(Q)),Q<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=w,this._bearingSnap=B.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new a.N(this.transform.center.lng,this.transform.center.lat)}setCenter(w,B){return this.jumpTo({center:w},B)}panBy(w,B,Q){return w=a.P.convert(w).mult(-1),this.panTo(this.transform.center,a.e({offset:w},B),Q)}panTo(w,B,Q){return this.easeTo(a.e({center:w},B),Q)}getZoom(){return this.transform.zoom}setZoom(w,B){return this.jumpTo({zoom:w},B),this}zoomTo(w,B,Q){return this.easeTo(a.e({zoom:w},B),Q)}zoomIn(w,B){return this.zoomTo(this.getZoom()+1,w,B),this}zoomOut(w,B){return this.zoomTo(this.getZoom()-1,w,B),this}getBearing(){return this.transform.bearing}setBearing(w,B){return this.jumpTo({bearing:w},B),this}getPadding(){return this.transform.padding}setPadding(w,B){return this.jumpTo({padding:w},B),this}rotateTo(w,B,Q){return this.easeTo(a.e({bearing:w},B),Q)}resetNorth(w,B){return this.rotateTo(0,a.e({duration:1e3},w),B),this}resetNorthPitch(w,B){return this.easeTo(a.e({bearing:0,pitch:0,duration:1e3},w),B),this}snapToNorth(w,B){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(w,B):this}getPitch(){return this.transform.pitch}setPitch(w,B){return this.jumpTo({pitch:w},B),this}cameraForBounds(w,B){w=ce.convert(w).adjustAntiMeridian();let Q=B&&B.bearing||0;return this._cameraForBoxAndBearing(w.getNorthWest(),w.getSouthEast(),Q,B)}_cameraForBoxAndBearing(w,B,Q,ee){let se={top:0,bottom:0,right:0,left:0};if(typeof(ee=a.e({padding:se,offset:[0,0],maxZoom:this.transform.maxZoom},ee)).padding=="number"){let zr=ee.padding;ee.padding={top:zr,bottom:zr,right:zr,left:zr}}ee.padding=a.e(se,ee.padding);let qe=this.transform,je=qe.padding,it=new ce(w,B),yt=qe.project(it.getNorthWest()),Ot=qe.project(it.getNorthEast()),Nt=qe.project(it.getSouthEast()),hr=qe.project(it.getSouthWest()),Sr=a.ba(-Q),he=yt.rotate(Sr),be=Ot.rotate(Sr),Pe=Nt.rotate(Sr),Oe=hr.rotate(Sr),Je=new a.P(Math.max(he.x,be.x,Oe.x,Pe.x),Math.max(he.y,be.y,Oe.y,Pe.y)),He=new a.P(Math.min(he.x,be.x,Oe.x,Pe.x),Math.min(he.y,be.y,Oe.y,Pe.y)),et=Je.sub(He),Mt=(qe.width-(je.left+je.right+ee.padding.left+ee.padding.right))/et.x,Dt=(qe.height-(je.top+je.bottom+ee.padding.top+ee.padding.bottom))/et.y;if(Dt<0||Mt<0)return void a.w("Map cannot fit within canvas with the given bounds, padding, and/or offset.");let Ut=Math.min(qe.scaleZoom(qe.scale*Math.min(Mt,Dt)),ee.maxZoom),tr=a.P.convert(ee.offset),mr=new a.P((ee.padding.left-ee.padding.right)/2,(ee.padding.top-ee.padding.bottom)/2).rotate(a.ba(Q)),Rr=tr.add(mr).mult(qe.scale/qe.zoomScale(Ut));return{center:qe.unproject(yt.add(Nt).div(2).sub(Rr)),zoom:Ut,bearing:Q}}fitBounds(w,B,Q){return this._fitInternal(this.cameraForBounds(w,B),B,Q)}fitScreenCoordinates(w,B,Q,ee,se){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(a.P.convert(w)),this.transform.pointLocation(a.P.convert(B)),Q,ee),ee,se)}_fitInternal(w,B,Q){return w?(delete(B=a.e(w,B)).padding,B.linear?this.easeTo(B,Q):this.flyTo(B,Q)):this}jumpTo(w,B){this.stop();let Q=this._getTransformForUpdate(),ee=!1,se=!1,qe=!1;return"zoom"in w&&Q.zoom!==+w.zoom&&(ee=!0,Q.zoom=+w.zoom),w.center!==void 0&&(Q.center=a.N.convert(w.center)),"bearing"in w&&Q.bearing!==+w.bearing&&(se=!0,Q.bearing=+w.bearing),"pitch"in w&&Q.pitch!==+w.pitch&&(qe=!0,Q.pitch=+w.pitch),w.padding==null||Q.isPaddingEqual(w.padding)||(Q.padding=w.padding),this._applyUpdatedTransform(Q),this.fire(new a.k("movestart",B)).fire(new a.k("move",B)),ee&&this.fire(new a.k("zoomstart",B)).fire(new a.k("zoom",B)).fire(new a.k("zoomend",B)),se&&this.fire(new a.k("rotatestart",B)).fire(new a.k("rotate",B)).fire(new a.k("rotateend",B)),qe&&this.fire(new a.k("pitchstart",B)).fire(new a.k("pitch",B)).fire(new a.k("pitchend",B)),this.fire(new a.k("moveend",B))}calculateCameraOptionsFromTo(w,B,Q,ee=0){let se=a.Z.fromLngLat(w,B),qe=a.Z.fromLngLat(Q,ee),je=qe.x-se.x,it=qe.y-se.y,yt=qe.z-se.z,Ot=Math.hypot(je,it,yt);if(Ot===0)throw new Error("Can't calculate camera options with same From and To");let Nt=Math.hypot(je,it),hr=this.transform.scaleZoom(this.transform.cameraToCenterDistance/Ot/this.transform.tileSize),Sr=180*Math.atan2(je,-it)/Math.PI,he=180*Math.acos(Nt/Ot)/Math.PI;return he=yt<0?90-he:90+he,{center:qe.toLngLat(),zoom:hr,pitch:he,bearing:Sr}}easeTo(w,B){var Q;this._stop(!1,w.easeId),((w=a.e({offset:[0,0],duration:500,easing:a.b9},w)).animate===!1||!w.essential&&u.prefersReducedMotion)&&(w.duration=0);let ee=this._getTransformForUpdate(),se=ee.zoom,qe=ee.bearing,je=ee.pitch,it=ee.padding,yt="bearing"in w?this._normalizeBearing(w.bearing,qe):qe,Ot="pitch"in w?+w.pitch:je,Nt="padding"in w?w.padding:ee.padding,hr=a.P.convert(w.offset),Sr=ee.centerPoint.add(hr),he=ee.pointLocation(Sr),{center:be,zoom:Pe}=ee.getConstrained(a.N.convert(w.center||he),(Q=w.zoom)!==null&&Q!==void 0?Q:se);this._normalizeCenter(be,ee);let Oe=ee.project(he),Je=ee.project(be).sub(Oe),He=ee.zoomScale(Pe-se),et,Mt;w.around&&(et=a.N.convert(w.around),Mt=ee.locationPoint(et));let Dt={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||Pe!==se,this._rotating=this._rotating||qe!==yt,this._pitching=this._pitching||Ot!==je,this._padding=!ee.isPaddingEqual(Nt),this._easeId=w.easeId,this._prepareEase(B,w.noMoveStart,Dt),this.terrain&&this._prepareElevation(be),this._ease(Ut=>{if(this._zooming&&(ee.zoom=a.y.number(se,Pe,Ut)),this._rotating&&(ee.bearing=a.y.number(qe,yt,Ut)),this._pitching&&(ee.pitch=a.y.number(je,Ot,Ut)),this._padding&&(ee.interpolatePadding(it,Nt,Ut),Sr=ee.centerPoint.add(hr)),this.terrain&&!w.freezeElevation&&this._updateElevation(Ut),et)ee.setLocationAtPoint(et,Mt);else{let tr=ee.zoomScale(ee.zoom-se),mr=Pe>se?Math.min(2,He):Math.max(.5,He),Rr=Math.pow(mr,1-Ut),zr=ee.unproject(Oe.add(Je.mult(Ut*Rr)).mult(tr));ee.setLocationAtPoint(ee.renderWorldCopies?zr.wrap():zr,Sr)}this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},Ut=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B,Ut)},w),this}_prepareEase(w,B,Q={}){this._moving=!0,B||Q.moving||this.fire(new a.k("movestart",w)),this._zooming&&!Q.zooming&&this.fire(new a.k("zoomstart",w)),this._rotating&&!Q.rotating&&this.fire(new a.k("rotatestart",w)),this._pitching&&!Q.pitching&&this.fire(new a.k("pitchstart",w))}_prepareElevation(w){this._elevationCenter=w,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(w,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(w){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let B=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(w<1&&B!==this._elevationTarget){let Q=this._elevationTarget-this._elevationStart;this._elevationStart+=w*(Q-(B-(Q*w+this._elevationStart))/(1-w)),this._elevationTarget=B}this.transform.elevation=a.y.number(this._elevationStart,this._elevationTarget,w)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(w){let B=w.getCameraPosition(),Q=this.terrain.getElevationForLngLatZoom(B.lngLat,w.zoom);if(B.altitude<Q){let ee=this.calculateCameraOptionsFromTo(B.lngLat,Q,w.center,w.elevation);return{pitch:ee.pitch,zoom:ee.zoom}}return{}}_applyUpdatedTransform(w){let B=[];if(this.terrain&&B.push(ee=>this._elevateCameraIfInsideTerrain(ee)),this.transformCameraUpdate&&B.push(ee=>this.transformCameraUpdate(ee)),!B.length)return;let Q=w.clone();for(let ee of B){let se=Q.clone(),{center:qe,zoom:je,pitch:it,bearing:yt,elevation:Ot}=ee(se);qe&&(se.center=qe),je!==void 0&&(se.zoom=je),it!==void 0&&(se.pitch=it),yt!==void 0&&(se.bearing=yt),Ot!==void 0&&(se.elevation=Ot),Q.apply(se)}this.transform.apply(Q)}_fireMoveEvents(w){this.fire(new a.k("move",w)),this._zooming&&this.fire(new a.k("zoom",w)),this._rotating&&this.fire(new a.k("rotate",w)),this._pitching&&this.fire(new a.k("pitch",w))}_afterEase(w,B){if(this._easeId&&B&&this._easeId===B)return;delete this._easeId;let Q=this._zooming,ee=this._rotating,se=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,Q&&this.fire(new a.k("zoomend",w)),ee&&this.fire(new a.k("rotateend",w)),se&&this.fire(new a.k("pitchend",w)),this.fire(new a.k("moveend",w))}flyTo(w,B){var Q;if(!w.essential&&u.prefersReducedMotion){let Qi=a.M(w,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Qi,B)}this.stop(),w=a.e({offset:[0,0],speed:1.2,curve:1.42,easing:a.b9},w);let ee=this._getTransformForUpdate(),se=ee.zoom,qe=ee.bearing,je=ee.pitch,it=ee.padding,yt="bearing"in w?this._normalizeBearing(w.bearing,qe):qe,Ot="pitch"in w?+w.pitch:je,Nt="padding"in w?w.padding:ee.padding,hr=a.P.convert(w.offset),Sr=ee.centerPoint.add(hr),he=ee.pointLocation(Sr),{center:be,zoom:Pe}=ee.getConstrained(a.N.convert(w.center||he),(Q=w.zoom)!==null&&Q!==void 0?Q:se);this._normalizeCenter(be,ee);let Oe=ee.zoomScale(Pe-se),Je=ee.project(he),He=ee.project(be).sub(Je),et=w.curve,Mt=Math.max(ee.width,ee.height),Dt=Mt/Oe,Ut=He.mag();if("minZoom"in w){let Qi=a.ac(Math.min(w.minZoom,se,Pe),ee.minZoom,ee.maxZoom),Mn=Mt/ee.zoomScale(Qi-se);et=Math.sqrt(Mn/Ut*2)}let tr=et*et;function mr(Qi){let Mn=(Dt*Dt-Mt*Mt+(Qi?-1:1)*tr*tr*Ut*Ut)/(2*(Qi?Dt:Mt)*tr*Ut);return Math.log(Math.sqrt(Mn*Mn+1)-Mn)}function Rr(Qi){return(Math.exp(Qi)-Math.exp(-Qi))/2}function zr(Qi){return(Math.exp(Qi)+Math.exp(-Qi))/2}let Xr=mr(!1),di=function(Qi){return zr(Xr)/zr(Xr+et*Qi)},Li=function(Qi){return Mt*((zr(Xr)*(Rr(Mn=Xr+et*Qi)/zr(Mn))-Rr(Xr))/tr)/Ut;var Mn},Ci=(mr(!0)-Xr)/et;if(Math.abs(Ut)<1e-6||!isFinite(Ci)){if(Math.abs(Mt-Dt)<1e-6)return this.easeTo(w,B);let Qi=Dt<Mt?-1:1;Ci=Math.abs(Math.log(Dt/Mt))/et,Li=()=>0,di=Mn=>Math.exp(Qi*et*Mn)}return w.duration="duration"in w?+w.duration:1e3*Ci/("screenSpeed"in w?+w.screenSpeed/et:+w.speed),w.maxDuration&&w.duration>w.maxDuration&&(w.duration=0),this._zooming=!0,this._rotating=qe!==yt,this._pitching=Ot!==je,this._padding=!ee.isPaddingEqual(Nt),this._prepareEase(B,!1),this.terrain&&this._prepareElevation(be),this._ease(Qi=>{let Mn=Qi*Ci,pa=1/di(Mn);ee.zoom=Qi===1?Pe:se+ee.scaleZoom(pa),this._rotating&&(ee.bearing=a.y.number(qe,yt,Qi)),this._pitching&&(ee.pitch=a.y.number(je,Ot,Qi)),this._padding&&(ee.interpolatePadding(it,Nt,Qi),Sr=ee.centerPoint.add(hr)),this.terrain&&!w.freezeElevation&&this._updateElevation(Qi);let ea=Qi===1?be:ee.unproject(Je.add(He.mult(Li(Mn))).mult(pa));ee.setLocationAtPoint(ee.renderWorldCopies?ea.wrap():ea,Sr),this._applyUpdatedTransform(ee),this._fireMoveEvents(B)},()=>{this.terrain&&w.freezeElevation&&this._finalizeElevation(),this._afterEase(B)},w),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(w,B){var Q;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let ee=this._onEaseEnd;delete this._onEaseEnd,ee.call(this,B)}return w||(Q=this.handlers)===null||Q===void 0||Q.stop(!1),this}_ease(w,B,Q){Q.animate===!1||Q.duration===0?(w(1),B()):(this._easeStart=u.now(),this._easeOptions=Q,this._onEaseFrame=w,this._onEaseEnd=B,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(w,B){w=a.b3(w,-180,180);let Q=Math.abs(w-B);return Math.abs(w-360-B)<Q&&(w-=360),Math.abs(w+360-B)<Q&&(w+=360),w}_normalizeCenter(w,B){if(!B.renderWorldCopies||B.lngRange)return;let Q=w.lng-B.center.lng;w.lng+=Q>180?-360:Q<-180?360:0}queryTerrainElevation(w){return this.terrain?this.terrain.getElevationForLngLatZoom(a.N.convert(w),this.transform.tileZoom)-this.transform.elevation:null}}let Ea={compact:!0,customAttribution:'<a href="https://maplibre.org/" target="_blank">MapLibre</a>'};class qa{constructor(w=Ea){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=B=>{!B||B.sourceDataType!=="metadata"&&B.sourceDataType!=="visibility"&&B.dataType!=="style"&&B.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=w}getDefaultPosition(){return"bottom-right"}onAdd(w){return this._map=w,this._compact=this.options.compact,this._container=c.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=c.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=c.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){c.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(w,B){let Q=this._map._getUIString(`AttributionControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)}_updateAttributions(){if(!this._map.style)return;let w=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?w=w.concat(this.options.customAttribution.map(ee=>typeof ee!="string"?"":ee)):typeof this.options.customAttribution=="string"&&w.push(this.options.customAttribution)),this._map.style.stylesheet){let ee=this._map.style.stylesheet;this.styleOwner=ee.owner,this.styleId=ee.id}let B=this._map.style.sourceCaches;for(let ee in B){let se=B[ee];if(se.used||se.usedForTerrain){let qe=se.getSource();qe.attribution&&w.indexOf(qe.attribution)<0&&w.push(qe.attribution)}}w=w.filter(ee=>String(ee).trim()),w.sort((ee,se)=>ee.length-se.length),w=w.filter((ee,se)=>{for(let qe=se+1;qe<w.length;qe++)if(w[qe].indexOf(ee)>=0)return!1;return!0});let Q=w.join(" | ");Q!==this._attribHTML&&(this._attribHTML=Q,w.length?(this._innerContainer.innerHTML=Q,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class Cn{constructor(w={}){this._updateCompact=()=>{let B=this._container.children;if(B.length){let Q=B[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&Q.classList.add("maplibregl-compact"):Q.classList.remove("maplibregl-compact")}},this.options=w}getDefaultPosition(){return"bottom-left"}onAdd(w){this._map=w,this._compact=this.options&&this.options.compact,this._container=c.create("div","maplibregl-ctrl");let B=c.create("a","maplibregl-ctrl-logo");return B.target="_blank",B.rel="noopener nofollow",B.href="https://maplibre.org/",B.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),B.setAttribute("rel","noopener nofollow"),this._container.appendChild(B),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){c.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class sn{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(w){let B=++this._id;return this._queue.push({callback:w,id:B,cancelled:!1}),B}remove(w){let B=this._currentlyRunning,Q=B?this._queue.concat(B):this._queue;for(let ee of Q)if(ee.id===w)return void(ee.cancelled=!0)}run(w=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let B=this._currentlyRunning=this._queue;this._queue=[];for(let Q of B)if(!Q.cancelled&&(Q.callback(w),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var Ua=a.Y([{name:"a_pos3d",type:"Int16",components:3}]);class mo extends a.E{constructor(w){super(),this.sourceCache=w,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,w.usedForTerrain=!0,w.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(w,B){this.sourceCache.update(w,B),this._renderableTilesKeys=[];let Q={};for(let ee of w.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:B}))Q[ee.key]=!0,this._renderableTilesKeys.push(ee.key),this._tiles[ee.key]||(ee.posMatrix=new Float64Array(16),a.aP(ee.posMatrix,0,a.X,0,a.X,0,1),this._tiles[ee.key]=new Lt(ee,this.tileSize));for(let ee in this._tiles)Q[ee]||delete this._tiles[ee]}freeRtt(w){for(let B in this._tiles){let Q=this._tiles[B];(!w||Q.tileID.equals(w)||Q.tileID.isChildOf(w)||w.isChildOf(Q.tileID))&&(Q.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(w=>this.getTileByID(w))}getTileByID(w){return this._tiles[w]}getTerrainCoords(w){let B={};for(let Q of this._renderableTilesKeys){let ee=this._tiles[Q].tileID;if(ee.canonical.equals(w.canonical)){let se=w.clone();se.posMatrix=new Float64Array(16),a.aP(se.posMatrix,0,a.X,0,a.X,0,1),B[Q]=se}else if(ee.canonical.isChildOf(w.canonical)){let se=w.clone();se.posMatrix=new Float64Array(16);let qe=ee.canonical.z-w.canonical.z,je=ee.canonical.x-(ee.canonical.x>>qe<<qe),it=ee.canonical.y-(ee.canonical.y>>qe<<qe),yt=a.X>>qe;a.aP(se.posMatrix,0,yt,0,yt,0,1),a.J(se.posMatrix,se.posMatrix,[-je*yt,-it*yt,0]),B[Q]=se}else if(w.canonical.isChildOf(ee.canonical)){let se=w.clone();se.posMatrix=new Float64Array(16);let qe=w.canonical.z-ee.canonical.z,je=w.canonical.x-(w.canonical.x>>qe<<qe),it=w.canonical.y-(w.canonical.y>>qe<<qe),yt=a.X>>qe;a.aP(se.posMatrix,0,a.X,0,a.X,0,1),a.J(se.posMatrix,se.posMatrix,[je*yt,it*yt,0]),a.K(se.posMatrix,se.posMatrix,[1/2**qe,1/2**qe,0]),B[Q]=se}}return B}getSourceTile(w,B){let Q=this.sourceCache._source,ee=w.overscaledZ-this.deltaZoom;if(ee>Q.maxzoom&&(ee=Q.maxzoom),ee<Q.minzoom)return null;this._sourceTileCache[w.key]||(this._sourceTileCache[w.key]=w.scaledTo(ee).key);let se=this.sourceCache.getTileByID(this._sourceTileCache[w.key]);if((!se||!se.dem)&&B)for(;ee>=Q.minzoom&&(!se||!se.dem);)se=this.sourceCache.getTileByID(w.scaledTo(ee--).key);return se}tilesAfterTime(w=Date.now()){return Object.values(this._tiles).filter(B=>B.timeAdded>=w)}}class Xo{constructor(w,B,Q){this.painter=w,this.sourceCache=new mo(B),this.options=Q,this.exaggeration=typeof Q.exaggeration=="number"?Q.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(w,B,Q,ee=a.X){var se;if(!(B>=0&&B<ee&&Q>=0&&Q<ee))return 0;let qe=this.getTerrainData(w),je=(se=qe.tile)===null||se===void 0?void 0:se.dem;if(!je)return 0;let it=function(he,be,Pe){var Oe=be[0],Je=be[1];return he[0]=Pe[0]*Oe+Pe[4]*Je+Pe[12],he[1]=Pe[1]*Oe+Pe[5]*Je+Pe[13],he}([],[B/ee*a.X,Q/ee*a.X],qe.u_terrain_matrix),yt=[it[0]*je.dim,it[1]*je.dim],Ot=Math.floor(yt[0]),Nt=Math.floor(yt[1]),hr=yt[0]-Ot,Sr=yt[1]-Nt;return je.get(Ot,Nt)*(1-hr)*(1-Sr)+je.get(Ot+1,Nt)*hr*(1-Sr)+je.get(Ot,Nt+1)*(1-hr)*Sr+je.get(Ot+1,Nt+1)*hr*Sr}getElevationForLngLatZoom(w,B){if(!a.bb(B,w.wrap()))return 0;let{tileID:Q,mercatorX:ee,mercatorY:se}=this._getOverscaledTileIDFromLngLatZoom(w,B);return this.getElevation(Q,ee%a.X,se%a.X,a.X)}getElevation(w,B,Q,ee=a.X){return this.getDEMElevation(w,B,Q,ee)*this.exaggeration}getTerrainData(w){if(!this._emptyDemTexture){let ee=this.painter.context,se=new a.R({width:1,height:1},new Uint8Array(4));this._emptyDepthTexture=new g(ee,se,ee.gl.RGBA,{premultiply:!1}),this._emptyDemUnpack=[0,0,0,0],this._emptyDemTexture=new g(ee,new a.R({width:1,height:1}),ee.gl.RGBA,{premultiply:!1}),this._emptyDemTexture.bind(ee.gl.NEAREST,ee.gl.CLAMP_TO_EDGE),this._emptyDemMatrix=a.an([])}let B=this.sourceCache.getSourceTile(w,!0);if(B&&B.dem&&(!B.demTexture||B.needsTerrainPrepare)){let ee=this.painter.context;B.demTexture=this.painter.getTileTexture(B.dem.stride),B.demTexture?B.demTexture.update(B.dem.getPixels(),{premultiply:!1}):B.demTexture=new g(ee,B.dem.getPixels(),ee.gl.RGBA,{premultiply:!1}),B.demTexture.bind(ee.gl.NEAREST,ee.gl.CLAMP_TO_EDGE),B.needsTerrainPrepare=!1}let Q=B&&B+B.tileID.key+w.key;if(Q&&!this._demMatrixCache[Q]){let ee=this.sourceCache.sourceCache._source.maxzoom,se=w.canonical.z-B.tileID.canonical.z;w.overscaledZ>w.canonical.z&&(w.canonical.z>=ee?se=w.canonical.z-ee:a.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let qe=w.canonical.x-(w.canonical.x>>se<<se),je=w.canonical.y-(w.canonical.y>>se<<se),it=a.bc(new Float64Array(16),[1/(a.X<<se),1/(a.X<<se),0]);a.J(it,it,[qe*a.X,je*a.X,0]),this._demMatrixCache[w.key]={matrix:it,coord:w}}return{u_depth:2,u_terrain:3,u_terrain_dim:B&&B.dem&&B.dem.dim||1,u_terrain_matrix:Q?this._demMatrixCache[w.key].matrix:this._emptyDemMatrix,u_terrain_unpack:B&&B.dem&&B.dem.getUnpackVector()||this._emptyDemUnpack,u_terrain_exaggeration:this.exaggeration,texture:(B&&B.demTexture||this._emptyDemTexture).texture,depthTexture:(this._fboDepthTexture||this._emptyDepthTexture).texture,tile:B}}getFramebuffer(w){let B=this.painter,Q=B.width/devicePixelRatio,ee=B.height/devicePixelRatio;return!this._fbo||this._fbo.width===Q&&this._fbo.height===ee||(this._fbo.destroy(),this._fboCoordsTexture.destroy(),this._fboDepthTexture.destroy(),delete this._fbo,delete this._fboDepthTexture,delete this._fboCoordsTexture),this._fboCoordsTexture||(this._fboCoordsTexture=new g(B.context,{width:Q,height:ee,data:null},B.context.gl.RGBA,{premultiply:!1}),this._fboCoordsTexture.bind(B.context.gl.NEAREST,B.context.gl.CLAMP_TO_EDGE)),this._fboDepthTexture||(this._fboDepthTexture=new g(B.context,{width:Q,height:ee,data:null},B.context.gl.RGBA,{premultiply:!1}),this._fboDepthTexture.bind(B.context.gl.NEAREST,B.context.gl.CLAMP_TO_EDGE)),this._fbo||(this._fbo=B.context.createFramebuffer(Q,ee,!0,!1),this._fbo.depthAttachment.set(B.context.createRenderbuffer(B.context.gl.DEPTH_COMPONENT16,Q,ee))),this._fbo.colorAttachment.set(w==="coords"?this._fboCoordsTexture.texture:this._fboDepthTexture.texture),this._fbo}getCoordsTexture(){let w=this.painter.context;if(this._coordsTexture)return this._coordsTexture;let B=new Uint8Array(this._coordsTextureSize*this._coordsTextureSize*4);for(let se=0,qe=0;se<this._coordsTextureSize;se++)for(let je=0;je<this._coordsTextureSize;je++,qe+=4)B[qe+0]=255&je,B[qe+1]=255&se,B[qe+2]=je>>8<<4|se>>8,B[qe+3]=0;let Q=new a.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(B.buffer)),ee=new g(w,Q,w.gl.RGBA,{premultiply:!1});return ee.bind(w.gl.NEAREST,w.gl.CLAMP_TO_EDGE),this._coordsTexture=ee,ee}pointCoordinate(w){this.painter.maybeDrawDepthAndCoords(!0);let B=new Uint8Array(4),Q=this.painter.context,ee=Q.gl,se=Math.round(w.x*this.painter.pixelRatio/devicePixelRatio),qe=Math.round(w.y*this.painter.pixelRatio/devicePixelRatio),je=Math.round(this.painter.height/devicePixelRatio);Q.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),ee.readPixels(se,je-qe-1,1,1,ee.RGBA,ee.UNSIGNED_BYTE,B),Q.bindFramebuffer.set(null);let it=B[0]+(B[2]>>4<<8),yt=B[1]+((15&B[2])<<8),Ot=this.coordsIndex[255-B[3]],Nt=Ot&&this.sourceCache.getTileByID(Ot);if(!Nt)return null;let hr=this._coordsTextureSize,Sr=(1<<Nt.tileID.canonical.z)*hr;return new a.Z((Nt.tileID.canonical.x*hr+it)/Sr+Nt.tileID.wrap,(Nt.tileID.canonical.y*hr+yt)/Sr,this.getElevation(Nt.tileID,it,yt,hr))}depthAtPoint(w){let B=new Uint8Array(4),Q=this.painter.context,ee=Q.gl;return Q.bindFramebuffer.set(this.getFramebuffer("depth").framebuffer),ee.readPixels(w.x,this.painter.height/devicePixelRatio-w.y-1,1,1,ee.RGBA,ee.UNSIGNED_BYTE,B),Q.bindFramebuffer.set(null),(B[0]/16777216+B[1]/65536+B[2]/256+B[3])/256}getTerrainMesh(){if(this._mesh)return this._mesh;let w=this.painter.context,B=new a.bd,Q=new a.aY,ee=this.meshSize,se=a.X/ee,qe=ee*ee;for(let Nt=0;Nt<=ee;Nt++)for(let hr=0;hr<=ee;hr++)B.emplaceBack(hr*se,Nt*se,0);for(let Nt=0;Nt<qe;Nt+=ee+1)for(let hr=0;hr<ee;hr++)Q.emplaceBack(hr+Nt,ee+hr+Nt+1,ee+hr+Nt+2),Q.emplaceBack(hr+Nt,ee+hr+Nt+2,hr+Nt+1);let je=B.length,it=je+2*(ee+1);for(let Nt of[0,1])for(let hr=0;hr<=ee;hr++)for(let Sr of[0,1])B.emplaceBack(hr*se,Nt*a.X,Sr);for(let Nt=0;Nt<2*ee;Nt+=2)Q.emplaceBack(it+Nt,it+Nt+1,it+Nt+3),Q.emplaceBack(it+Nt,it+Nt+3,it+Nt+2),Q.emplaceBack(je+Nt,je+Nt+3,je+Nt+1),Q.emplaceBack(je+Nt,je+Nt+2,je+Nt+3);let yt=B.length,Ot=yt+2*(ee+1);for(let Nt of[0,1])for(let hr=0;hr<=ee;hr++)for(let Sr of[0,1])B.emplaceBack(Nt*a.X,hr*se,Sr);for(let Nt=0;Nt<2*ee;Nt+=2)Q.emplaceBack(yt+Nt,yt+Nt+1,yt+Nt+3),Q.emplaceBack(yt+Nt,yt+Nt+3,yt+Nt+2),Q.emplaceBack(Ot+Nt,Ot+Nt+3,Ot+Nt+1),Q.emplaceBack(Ot+Nt,Ot+Nt+2,Ot+Nt+3);return this._mesh=new Pu(w.createVertexBuffer(B,Ua.members),w.createIndexBuffer(Q),a.a0.simpleSegment(0,0,B.length,Q.length)),this._mesh}getMeshFrameDelta(w){return 2*Math.PI*a.be/Math.pow(2,w)/5}getMinTileElevationForLngLatZoom(w,B){var Q;let{tileID:ee}=this._getOverscaledTileIDFromLngLatZoom(w,B);return(Q=this.getMinMaxElevation(ee).minElevation)!==null&&Q!==void 0?Q:0}getMinMaxElevation(w){let B=this.getTerrainData(w).tile,Q={minElevation:null,maxElevation:null};return B&&B.dem&&(Q.minElevation=B.dem.min*this.exaggeration,Q.maxElevation=B.dem.max*this.exaggeration),Q}_getOverscaledTileIDFromLngLatZoom(w,B){let Q=a.Z.fromLngLat(w.wrap()),ee=(1<<B)*a.X,se=Q.x*ee,qe=Q.y*ee,je=Math.floor(se/a.X),it=Math.floor(qe/a.X);return{tileID:new a.S(B,0,B,je,it),mercatorX:se,mercatorY:qe}}}class Ts{constructor(w,B,Q){this._context=w,this._size=B,this._tileSize=Q,this._objects=[],this._recentlyUsed=[],this._stamp=0}destruct(){for(let w of this._objects)w.texture.destroy(),w.fbo.destroy()}_createObject(w){let B=this._context.createFramebuffer(this._tileSize,this._tileSize,!0,!0),Q=new g(this._context,{width:this._tileSize,height:this._tileSize,data:null},this._context.gl.RGBA);return Q.bind(this._context.gl.LINEAR,this._context.gl.CLAMP_TO_EDGE),B.depthAttachment.set(this._context.createRenderbuffer(this._context.gl.DEPTH_STENCIL,this._tileSize,this._tileSize)),B.colorAttachment.set(Q.texture),{id:w,fbo:B,texture:Q,stamp:-1,inUse:!1}}getObjectForId(w){return this._objects[w]}useObject(w){w.inUse=!0,this._recentlyUsed=this._recentlyUsed.filter(B=>w.id!==B),this._recentlyUsed.push(w.id)}stampObject(w){w.stamp=++this._stamp}getOrCreateFreeObject(){for(let B of this._recentlyUsed)if(!this._objects[B].inUse)return this._objects[B];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let w=this._createObject(this._objects.length);return this._objects.push(w),w}freeObject(w){w.inUse=!1}freeAllObjects(){for(let w of this._objects)this.freeObject(w)}isFull(){return!(this._objects.length<this._size)&&this._objects.some(w=>!w.inUse)===!1}}let Qo={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class ys{constructor(w,B){this.painter=w,this.terrain=B,this.pool=new Ts(w.context,30,B.sourceCache.tileSize*B.qualityFactor)}destruct(){this.pool.destruct()}getTexture(w){return this.pool.getObjectForId(w.rtt[this._stacks.length-1].id).texture}prepareForRender(w,B){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=w._order.filter(Q=>!w._layers[Q].isHidden(B)),this._coordsDescendingInv={};for(let Q in w.sourceCaches){this._coordsDescendingInv[Q]={};let ee=w.sourceCaches[Q].getVisibleCoordinates();for(let se of ee){let qe=this.terrain.sourceCache.getTerrainCoords(se);for(let je in qe)this._coordsDescendingInv[Q][je]||(this._coordsDescendingInv[Q][je]=[]),this._coordsDescendingInv[Q][je].push(qe[je])}}this._coordsDescendingInvStr={};for(let Q of w._order){let ee=w._layers[Q],se=ee.source;if(Qo[ee.type]&&!this._coordsDescendingInvStr[se]){this._coordsDescendingInvStr[se]={};for(let qe in this._coordsDescendingInv[se])this._coordsDescendingInvStr[se][qe]=this._coordsDescendingInv[se][qe].map(je=>je.key).sort().join()}}for(let Q of this._renderableTiles)for(let ee in this._coordsDescendingInvStr){let se=this._coordsDescendingInvStr[ee][Q.tileID.key];se&&se!==Q.rttCoords[ee]&&(Q.rtt=[])}}renderLayer(w){if(w.isHidden(this.painter.transform.zoom))return!1;let B=w.type,Q=this.painter,ee=this._renderableLayerIds[this._renderableLayerIds.length-1]===w.id;if(Qo[B]&&(this._prevType&&Qo[this._prevType]||this._stacks.push([]),this._prevType=B,this._stacks[this._stacks.length-1].push(w.id),!ee))return!0;if(Qo[this._prevType]||Qo[B]&&ee){this._prevType=B;let se=this._stacks.length-1,qe=this._stacks[se]||[];for(let je of this._renderableTiles){if(this.pool.isFull()&&(tu(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(je),je.rtt[se]){let yt=this.pool.getObjectForId(je.rtt[se].id);if(yt.stamp===je.rtt[se].stamp){this.pool.useObject(yt);continue}}let it=this.pool.getOrCreateFreeObject();this.pool.useObject(it),this.pool.stampObject(it),je.rtt[se]={id:it.id,stamp:it.stamp},Q.context.bindFramebuffer.set(it.fbo.framebuffer),Q.context.clear({color:a.aM.transparent,stencil:0}),Q.currentStencilSource=void 0;for(let yt=0;yt<qe.length;yt++){let Ot=Q.style._layers[qe[yt]],Nt=Ot.source?this._coordsDescendingInv[Ot.source][je.tileID.key]:[je.tileID];Q.context.viewport.set([0,0,it.fbo.width,it.fbo.height]),Q._renderTileClippingMasks(Ot,Nt),Q.renderLayer(Q,Q.style.sourceCaches[Ot.source],Ot,Nt),Ot.source&&(je.rttCoords[Ot.source]=this._coordsDescendingInvStr[Ot.source][je.tileID.key])}}return tu(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects(),Qo[B]}return!1}}let Bo={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"MapLibre logo","Map.Title":"Map","Marker.Title":"Map marker","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","Popup.Close":"Close popup","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm","TerrainControl.Enable":"Enable terrain","TerrainControl.Disable":"Disable terrain","CooperativeGesturesHandler.WindowsHelpText":"Use Ctrl + scroll to zoom the map","CooperativeGesturesHandler.MacHelpText":"Use \u2318 + scroll to zoom the map","CooperativeGesturesHandler.MobileHelpText":"Use two fingers to move the map"},yl=o,Gs={hash:!1,interactive:!0,bearingSnap:7,attributionControl:Ea,maplibreLogo:!1,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,refreshExpiredTiles:!0,scrollZoom:!0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:!1,trackResize:!0,center:[0,0],zoom:0,bearing:0,pitch:0,renderWorldCopies:!0,maxTileCacheSize:null,maxTileCacheZoomLevels:a.a.MAX_TILE_CACHE_ZOOM_LEVELS,transformRequest:null,transformCameraUpdate:null,fadeDuration:300,crossSourceCollisions:!0,clickTolerance:3,localIdeographFontFamily:"sans-serif",pitchWithRotate:!0,validateStyle:!0,maxCanvasSize:[4096,4096],cancelPendingTileRequestsWhileZooming:!0},Rs=le=>{le.touchstart=le.dragStart,le.touchmoveWindow=le.dragMove,le.touchend=le.dragEnd},ia={showCompass:!0,showZoom:!0,visualizePitch:!1};class Ka{constructor(w,B,Q=!1){this.mousedown=qe=>{this.startMouse(a.e({},qe,{ctrlKey:!0,preventDefault:()=>qe.preventDefault()}),c.mousePos(this.element,qe)),c.addEventListener(window,"mousemove",this.mousemove),c.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=qe=>{this.moveMouse(qe,c.mousePos(this.element,qe))},this.mouseup=qe=>{this.mouseRotate.dragEnd(qe),this.mousePitch&&this.mousePitch.dragEnd(qe),this.offTemp()},this.touchstart=qe=>{qe.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.startTouch(qe,this._startPos),c.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.addEventListener(window,"touchend",this.touchend))},this.touchmove=qe=>{qe.targetTouches.length!==1?this.reset():(this._lastPos=c.touchPos(this.element,qe.targetTouches)[0],this.moveTouch(qe,this._lastPos))},this.touchend=qe=>{qe.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),delete this._startPos,delete this._lastPos,this.offTemp()},this.reset=()=>{this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let ee=w.dragRotate._mouseRotate.getClickTolerance(),se=w.dragRotate._mousePitch.getClickTolerance();this.element=B,this.mouseRotate=Dl({clickTolerance:ee,enable:!0}),this.touchRotate=(({enable:qe,clickTolerance:je,bearingDegreesPerPixelMoved:it=.8})=>{let yt=new pf;return new ju({clickTolerance:je,move:(Ot,Nt)=>({bearingDelta:(Nt.x-Ot.x)*it}),moveStateManager:yt,enable:qe,assignEvents:Rs})})({clickTolerance:ee,enable:!0}),this.map=w,Q&&(this.mousePitch=Ih({clickTolerance:se,enable:!0}),this.touchPitch=(({enable:qe,clickTolerance:je,pitchDegreesPerPixelMoved:it=-.5})=>{let yt=new pf;return new ju({clickTolerance:je,move:(Ot,Nt)=>({pitchDelta:(Nt.y-Ot.y)*it}),moveStateManager:yt,enable:qe,assignEvents:Rs})})({clickTolerance:se,enable:!0})),c.addEventListener(B,"mousedown",this.mousedown),c.addEventListener(B,"touchstart",this.touchstart,{passive:!1}),c.addEventListener(B,"touchcancel",this.reset)}startMouse(w,B){this.mouseRotate.dragStart(w,B),this.mousePitch&&this.mousePitch.dragStart(w,B),c.disableDrag()}startTouch(w,B){this.touchRotate.dragStart(w,B),this.touchPitch&&this.touchPitch.dragStart(w,B),c.disableDrag()}moveMouse(w,B){let Q=this.map,{bearingDelta:ee}=this.mouseRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.mousePitch){let{pitchDelta:se}=this.mousePitch.dragMove(w,B)||{};se&&Q.setPitch(Q.getPitch()+se)}}moveTouch(w,B){let Q=this.map,{bearingDelta:ee}=this.touchRotate.dragMove(w,B)||{};if(ee&&Q.setBearing(Q.getBearing()+ee),this.touchPitch){let{pitchDelta:se}=this.touchPitch.dragMove(w,B)||{};se&&Q.setPitch(Q.getPitch()+se)}}off(){let w=this.element;c.removeEventListener(w,"mousedown",this.mousedown),c.removeEventListener(w,"touchstart",this.touchstart,{passive:!1}),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend),c.removeEventListener(w,"touchcancel",this.reset),this.offTemp()}offTemp(){c.enableDrag(),c.removeEventListener(window,"mousemove",this.mousemove),c.removeEventListener(window,"mouseup",this.mouseup),c.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),c.removeEventListener(window,"touchend",this.touchend)}}let vs;function Ko(le,w,B){let Q=new a.N(le.lng,le.lat);if(le=new a.N(le.lng,le.lat),w){let ee=new a.N(le.lng-360,le.lat),se=new a.N(le.lng+360,le.lat),qe=B.locationPoint(le).distSqr(w);B.locationPoint(ee).distSqr(w)<qe?le=ee:B.locationPoint(se).distSqr(w)<qe&&(le=se)}for(;Math.abs(le.lng-B.center.lng)>180;){let ee=B.locationPoint(le);if(ee.x>=0&&ee.y>=0&&ee.x<=B.width&&ee.y<=B.height)break;le.lng>B.center.lng?le.lng-=360:le.lng+=360}return le.lng!==Q.lng&&B.locationPoint(le).y>B.height/2-B.getHorizon()?le:Q}let nu={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Ru(le,w,B){let Q=le.classList;for(let ee in nu)Q.remove(`maplibregl-${B}-anchor-${ee}`);Q.add(`maplibregl-${B}-anchor-${w}`)}class ac extends a.E{constructor(w){if(super(),this._onKeyPress=B=>{let Q=B.code,ee=B.charCode||B.keyCode;Q!=="Space"&&Q!=="Enter"&&ee!==32&&ee!==13||this.togglePopup()},this._onMapClick=B=>{let Q=B.originalEvent.target,ee=this._element;this._popup&&(Q===ee||ee.contains(Q))&&this.togglePopup()},this._update=B=>{var Q;if(!this._map)return;let ee=this._map.loaded()&&!this._map.isMoving();((B==null?void 0:B.type)==="terrain"||(B==null?void 0:B.type)==="render"&&!ee)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Ko(this._lngLat,this._flatPos,this._map.transform):(Q=this._lngLat)===null||Q===void 0?void 0:Q.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let se="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?se=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(se=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let qe="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?qe="rotateX(0deg)":this._pitchAlignment==="map"&&(qe=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||B&&B.type!=="moveend"||(this._pos=this._pos.round()),c.setTransform(this._element,`${nu[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${qe} ${se}`),u.frameAsync(new AbortController).then(()=>{this._updateOpacity(B&&B.type==="moveend")}).catch(()=>{})},this._onMove=B=>{if(!this._isDragging){let Q=this._clickTolerance||this._map._clickTolerance;this._isDragging=B.point.dist(this._pointerdownPos)>=Q}this._isDragging&&(this._pos=B.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new a.k("dragstart"))),this.fire(new a.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new a.k("dragend")),this._state="inactive"},this._addDragHandler=B=>{this._element.contains(B.originalEvent.target)&&(B.preventDefault(),this._positionDelta=B.point.sub(this._pos).add(this._offset),this._pointerdownPos=B.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=w&&w.anchor||"center",this._color=w&&w.color||"#3FB1CE",this._scale=w&&w.scale||1,this._draggable=w&&w.draggable||!1,this._clickTolerance=w&&w.clickTolerance||0,this._subpixelPositioning=w&&w.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=w&&w.rotation||0,this._rotationAlignment=w&&w.rotationAlignment||"auto",this._pitchAlignment=w&&w.pitchAlignment&&w.pitchAlignment!=="auto"?w.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(w==null?void 0:w.opacity,w==null?void 0:w.opacityWhenCovered),w&&w.element)this._element=w.element,this._offset=a.P.convert(w&&w.offset||[0,0]);else{this._defaultMarker=!0,this._element=c.create("div");let B=c.createNS("http://www.w3.org/2000/svg","svg"),Q=41,ee=27;B.setAttributeNS(null,"display","block"),B.setAttributeNS(null,"height",`${Q}px`),B.setAttributeNS(null,"width",`${ee}px`),B.setAttributeNS(null,"viewBox",`0 0 ${ee} ${Q}`);let se=c.createNS("http://www.w3.org/2000/svg","g");se.setAttributeNS(null,"stroke","none"),se.setAttributeNS(null,"stroke-width","1"),se.setAttributeNS(null,"fill","none"),se.setAttributeNS(null,"fill-rule","evenodd");let qe=c.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"fill-rule","nonzero");let je=c.createNS("http://www.w3.org/2000/svg","g");je.setAttributeNS(null,"transform","translate(3.0, 29.0)"),je.setAttributeNS(null,"fill","#000000");let it=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let Oe of it){let Je=c.createNS("http://www.w3.org/2000/svg","ellipse");Je.setAttributeNS(null,"opacity","0.04"),Je.setAttributeNS(null,"cx","10.5"),Je.setAttributeNS(null,"cy","5.80029008"),Je.setAttributeNS(null,"rx",Oe.rx),Je.setAttributeNS(null,"ry",Oe.ry),je.appendChild(Je)}let yt=c.createNS("http://www.w3.org/2000/svg","g");yt.setAttributeNS(null,"fill",this._color);let Ot=c.createNS("http://www.w3.org/2000/svg","path");Ot.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),yt.appendChild(Ot);let Nt=c.createNS("http://www.w3.org/2000/svg","g");Nt.setAttributeNS(null,"opacity","0.25"),Nt.setAttributeNS(null,"fill","#000000");let hr=c.createNS("http://www.w3.org/2000/svg","path");hr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Nt.appendChild(hr);let Sr=c.createNS("http://www.w3.org/2000/svg","g");Sr.setAttributeNS(null,"transform","translate(6.0, 7.0)"),Sr.setAttributeNS(null,"fill","#FFFFFF");let he=c.createNS("http://www.w3.org/2000/svg","g");he.setAttributeNS(null,"transform","translate(8.0, 8.0)");let be=c.createNS("http://www.w3.org/2000/svg","circle");be.setAttributeNS(null,"fill","#000000"),be.setAttributeNS(null,"opacity","0.25"),be.setAttributeNS(null,"cx","5.5"),be.setAttributeNS(null,"cy","5.5"),be.setAttributeNS(null,"r","5.4999962");let Pe=c.createNS("http://www.w3.org/2000/svg","circle");Pe.setAttributeNS(null,"fill","#FFFFFF"),Pe.setAttributeNS(null,"cx","5.5"),Pe.setAttributeNS(null,"cy","5.5"),Pe.setAttributeNS(null,"r","5.4999962"),he.appendChild(be),he.appendChild(Pe),qe.appendChild(je),qe.appendChild(yt),qe.appendChild(Nt),qe.appendChild(Sr),qe.appendChild(he),B.appendChild(qe),B.setAttributeNS(null,"height",Q*this._scale+"px"),B.setAttributeNS(null,"width",ee*this._scale+"px"),this._element.appendChild(B),this._offset=a.P.convert(w&&w.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",B=>{B.preventDefault()}),this._element.addEventListener("mousedown",B=>{B.preventDefault()}),Ru(this._element,this._anchor,"marker"),w&&w.className)for(let B of w.className.split(" "))this._element.classList.add(B);this._popup=null}addTo(w){return this.remove(),this._map=w,this._element.setAttribute("aria-label",w._getUIString("Marker.Title")),w.getCanvasContainer().appendChild(this._element),w.on("move",this._update),w.on("moveend",this._update),w.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),c.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(w){return this._lngLat=a.N.convert(w),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(w){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),w){if(!("offset"in w.options)){let ee=Math.abs(13.5)/Math.SQRT2;w.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[ee,-1*(38.1-13.5+ee)],"bottom-right":[-ee,-1*(38.1-13.5+ee)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=w,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(w){return this._subpixelPositioning=w,this}getPopup(){return this._popup}togglePopup(){let w=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:w?(w.isOpen()?w.remove():(w.setLngLat(this._lngLat),w.addTo(this._map)),this):this}_updateOpacity(w=!1){var B,Q;if(!(!((B=this._map)===null||B===void 0)&&B.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(w)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let ee=this._map,se=ee.terrain.depthAtPoint(this._pos),qe=ee.terrain.getElevationForLngLatZoom(this._lngLat,ee.transform.tileZoom);if(ee.transform.lngLatToCameraDepth(this._lngLat,qe)-se<.006)return void(this._element.style.opacity=this._opacity);let je=-this._offset.y/ee.transform._pixelPerMeter,it=Math.sin(ee.getPitch()*Math.PI/180)*je,yt=ee.terrain.depthAtPoint(new a.P(this._pos.x,this._pos.y-this._offset.y)),Ot=ee.transform.lngLatToCameraDepth(this._lngLat,qe+it)-yt>.006;!((Q=this._popup)===null||Q===void 0)&&Q.isOpen()&&Ot&&this._popup.remove(),this._element.style.opacity=Ot?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(w){return this._offset=a.P.convert(w),this._update(),this}addClassName(w){this._element.classList.add(w)}removeClassName(w){this._element.classList.remove(w)}toggleClassName(w){return this._element.classList.toggle(w)}setDraggable(w){return this._draggable=!!w,this._map&&(w?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(w){return this._rotation=w||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(w){return this._rotationAlignment=w||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(w){return this._pitchAlignment=w&&w!=="auto"?w:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(w,B){return w===void 0&&B===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),w!==void 0&&(this._opacity=w),B!==void 0&&(this._opacityWhenCovered=B),this._map&&this._updateOpacity(!0),this}}let mf={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},bu=0,Kc=!1,Du={maxWidth:100,unit:"metric"};function Dc(le,w,B){let Q=B&&B.maxWidth||100,ee=le._container.clientHeight/2,se=le.unproject([0,ee]),qe=le.unproject([Q,ee]),je=se.distanceTo(qe);if(B&&B.unit==="imperial"){let it=3.2808*je;it>5280?Da(w,Q,it/5280,le._getUIString("ScaleControl.Miles")):Da(w,Q,it,le._getUIString("ScaleControl.Feet"))}else B&&B.unit==="nautical"?Da(w,Q,je/1852,le._getUIString("ScaleControl.NauticalMiles")):je>=1e3?Da(w,Q,je/1e3,le._getUIString("ScaleControl.Kilometers")):Da(w,Q,je,le._getUIString("ScaleControl.Meters"))}function Da(le,w,B,Q){let ee=function(se){let qe=Math.pow(10,`${Math.floor(se)}`.length-1),je=se/qe;return je=je>=10?10:je>=5?5:je>=3?3:je>=2?2:je>=1?1:function(it){let yt=Math.pow(10,Math.ceil(-Math.log(it)/Math.LN10));return Math.round(it*yt)/yt}(je),qe*je}(B);le.style.width=w*(ee/B)+"px",le.innerHTML=`${ee}&nbsp;${Q}`}let eo={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Jc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function yc(le){if(le){if(typeof le=="number"){let w=Math.round(Math.abs(le)/Math.SQRT2);return{center:new a.P(0,0),top:new a.P(0,le),"top-left":new a.P(w,w),"top-right":new a.P(-w,w),bottom:new a.P(0,-le),"bottom-left":new a.P(w,-w),"bottom-right":new a.P(-w,-w),left:new a.P(le,0),right:new a.P(-le,0)}}if(le instanceof a.P||Array.isArray(le)){let w=a.P.convert(le);return{center:w,top:w,"top-left":w,"top-right":w,bottom:w,"bottom-left":w,"bottom-right":w,left:w,right:w}}return{center:a.P.convert(le.center||[0,0]),top:a.P.convert(le.top||[0,0]),"top-left":a.P.convert(le["top-left"]||[0,0]),"top-right":a.P.convert(le["top-right"]||[0,0]),bottom:a.P.convert(le.bottom||[0,0]),"bottom-left":a.P.convert(le["bottom-left"]||[0,0]),"bottom-right":a.P.convert(le["bottom-right"]||[0,0]),left:a.P.convert(le.left||[0,0]),right:a.P.convert(le.right||[0,0])}}return yc(new a.P(0,0))}let _c=o;i.AJAXError=a.bh,i.Evented=a.E,i.LngLat=a.N,i.MercatorCoordinate=a.Z,i.Point=a.P,i.addProtocol=a.bi,i.config=a.a,i.removeProtocol=a.bj,i.AttributionControl=qa,i.BoxZoomHandler=xu,i.CanvasSource=Ct,i.CooperativeGesturesHandler=qi,i.DoubleClickZoomHandler=fi,i.DragPanHandler=Xi,i.DragRotateHandler=hn,i.EdgeInsets=ic,i.FullscreenControl=class extends a.E{constructor(le={}){super(),this._onFullscreenChange=()=>{var w;let B=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((w=B==null?void 0:B.shadowRoot)===null||w===void 0)&&w.fullscreenElement;)B=B.shadowRoot.fullscreenElement;B===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,le&&le.container&&(le.container instanceof HTMLElement?this._container=le.container:a.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(le){return this._map=le,this._container||(this._container=this._map.getContainer()),this._controlContainer=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){c.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let le=this._fullscreenButton=c.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);c.create("span","maplibregl-ctrl-icon",le).setAttribute("aria-hidden","true"),le.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let le=this._getTitle();this._fullscreenButton.setAttribute("aria-label",le),this._fullscreenButton.title=le}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new a.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new a.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},i.GeoJSONSource=rt,i.GeolocateControl=class extends a.E{constructor(le){super(),this._onSuccess=w=>{if(this._map){if(this._isOutOfMapMaxBounds(w))return this._setErrorState(),this.fire(new a.k("outofmaxbounds",w)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=w,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(w),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(w),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new a.k("geolocate",w)),this._finish()}},this._updateCamera=w=>{let B=new a.N(w.coords.longitude,w.coords.latitude),Q=w.coords.accuracy,ee=this._map.getBearing(),se=a.e({bearing:ee},this.options.fitBoundsOptions),qe=ce.fromLngLat(B,Q);this._map.fitBounds(qe,se,{geolocateSource:!0})},this._updateMarker=w=>{if(w){let B=new a.N(w.coords.longitude,w.coords.latitude);this._accuracyCircleMarker.setLngLat(B).addTo(this._map),this._userLocationDotMarker.setLngLat(B).addTo(this._map),this._accuracy=w.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=w=>{if(this._map){if(this.options.trackUserLocation)if(w.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(w.code===3&&Kc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new a.k("error",w)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",w=>w.preventDefault()),this._geolocateButton=c.create("button","maplibregl-ctrl-geolocate",this._container),c.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=w=>{if(this._map){if(w===!1){a.w("Geolocation support is not available so the GeolocateControl will be disabled.");let B=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}else{let B=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=B,this._geolocateButton.setAttribute("aria-label",B)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=c.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new ac({element:this._dotElement}),this._circleElement=c.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new ac({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",B=>{B.geolocateSource||this._watchState!=="ACTIVE_LOCK"||B.originalEvent&&B.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new a.k("trackuserlocationend")),this.fire(new a.k("userlocationlostfocus")))})}},this.options=a.e({},mf,le)}onAdd(le){return this._map=le,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return a._(this,arguments,void 0,function*(w=!1){if(vs!==void 0&&!w)return vs;if(window.navigator.permissions===void 0)return vs=!!window.navigator.geolocation,vs;try{vs=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch(B){vs=!!window.navigator.geolocation}return vs})}().then(w=>this._finishSetupUI(w)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),c.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,bu=0,Kc=!1}_isOutOfMapMaxBounds(le){let w=this._map.getMaxBounds(),B=le.coords;return w&&(B.longitude<w.getWest()||B.longitude>w.getEast()||B.latitude<w.getSouth()||B.latitude>w.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let le=this._map.getBounds(),w=le.getSouthEast(),B=le.getNorthEast(),Q=w.distanceTo(B),ee=Math.ceil(this._accuracy/(Q/this._map._container.clientHeight)*2);this._circleElement.style.width=`${ee}px`,this._circleElement.style.height=`${ee}px`}trigger(){if(!this._setup)return a.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new a.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":bu--,Kc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new a.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new a.k("trackuserlocationstart")),this.fire(new a.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let le;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),bu++,bu>1?(le={maximumAge:6e5,timeout:0},Kc=!0):(le=this.options.positionOptions,Kc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,le)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},i.Hash=gd,i.ImageSource=Rt,i.KeyboardHandler=Bt,i.LngLatBounds=ce,i.LogoControl=Cn,i.Map=class extends Ta{constructor(le){a.bf.mark(a.bg.create);let w=Object.assign(Object.assign({},Gs),le);if(w.minZoom!=null&&w.maxZoom!=null&&w.minZoom>w.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(w.minPitch!=null&&w.maxPitch!=null&&w.minPitch>w.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(w.minPitch!=null&&w.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(w.maxPitch!=null&&w.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new Qs(w.minZoom,w.maxZoom,w.minPitch,w.maxPitch,w.renderWorldCopies),{bearingSnap:w.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new sn,this._controls=[],this._mapId=a.a4(),this._contextLost=B=>{B.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new a.k("webglcontextlost",{originalEvent:B}))},this._contextRestored=B=>{this._setupPainter(),this.resize(),this._update(),this.fire(new a.k("webglcontextrestored",{originalEvent:B}))},this._onMapScroll=B=>{if(B.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=w.interactive,this._maxTileCacheSize=w.maxTileCacheSize,this._maxTileCacheZoomLevels=w.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=w.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=w.preserveDrawingBuffer===!0,this._antialias=w.antialias===!0,this._trackResize=w.trackResize===!0,this._bearingSnap=w.bearingSnap,this._refreshExpiredTiles=w.refreshExpiredTiles===!0,this._fadeDuration=w.fadeDuration,this._crossSourceCollisions=w.crossSourceCollisions===!0,this._collectResourceTiming=w.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},Bo),w.locale),this._clickTolerance=w.clickTolerance,this._overridePixelRatio=w.pixelRatio,this._maxCanvasSize=w.maxCanvasSize,this.transformCameraUpdate=w.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=w.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=p.addThrottleControl(()=>this.isMoving()),this._requestManager=new E(w.transformRequest),typeof w.container=="string"){if(this._container=document.getElementById(w.container),!this._container)throw new Error(`Container '${w.container}' not found.`)}else{if(!(w.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=w.container}if(w.maxBounds&&this.setMaxBounds(w.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window!="undefined"){addEventListener("online",this._onWindowOnline,!1);let B=!1,Q=Qh(ee=>{this._trackResize&&!this._removed&&(this.resize(ee),this.redraw())},50);this._resizeObserver=new ResizeObserver(ee=>{B?Q(ee):B=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Ma(this,w),this._hash=w.hash&&new gd(typeof w.hash=="string"&&w.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:w.center,zoom:w.zoom,bearing:w.bearing,pitch:w.pitch}),w.bounds&&(this.resize(),this.fitBounds(w.bounds,a.e({},w.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=w.localIdeographFontFamily,this._validateStyle=w.validateStyle,w.style&&this.setStyle(w.style,{localIdeographFontFamily:w.localIdeographFontFamily}),w.attributionControl&&this.addControl(new qa(typeof w.attributionControl=="boolean"?void 0:w.attributionControl)),w.maplibreLogo&&this.addControl(new Cn,w.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",B=>{this._update(B.dataType==="style"),this.fire(new a.k(`${B.dataType}data`,B))}),this.on("dataloading",B=>{this.fire(new a.k(`${B.dataType}dataloading`,B))}),this.on("dataabort",B=>{this.fire(new a.k("sourcedataabort",B))})}_getMapId(){return this._mapId}addControl(le,w){if(w===void 0&&(w=le.getDefaultPosition?le.getDefaultPosition():"top-right"),!le||!le.onAdd)return this.fire(new a.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let B=le.onAdd(this);this._controls.push(le);let Q=this._controlPositions[w];return w.indexOf("bottom")!==-1?Q.insertBefore(B,Q.firstChild):Q.appendChild(B),this}removeControl(le){if(!le||!le.onRemove)return this.fire(new a.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let w=this._controls.indexOf(le);return w>-1&&this._controls.splice(w,1),le.onRemove(this),this}hasControl(le){return this._controls.indexOf(le)>-1}calculateCameraOptionsFromTo(le,w,B,Q){return Q==null&&this.terrain&&(Q=this.terrain.getElevationForLngLatZoom(B,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(le,w,B,Q)}resize(le){var w;let B=this._containerDimensions(),Q=B[0],ee=B[1],se=this._getClampedPixelRatio(Q,ee);if(this._resizeCanvas(Q,ee,se),this.painter.resize(Q,ee,se),this.painter.overLimit()){let je=this.painter.context.gl;this._maxCanvasSize=[je.drawingBufferWidth,je.drawingBufferHeight];let it=this._getClampedPixelRatio(Q,ee);this._resizeCanvas(Q,ee,it),this.painter.resize(Q,ee,it)}this.transform.resize(Q,ee),(w=this._requestedCameraState)===null||w===void 0||w.resize(Q,ee);let qe=!this._moving;return qe&&(this.stop(),this.fire(new a.k("movestart",le)).fire(new a.k("move",le))),this.fire(new a.k("resize",le)),qe&&this.fire(new a.k("moveend",le)),this}_getClampedPixelRatio(le,w){let{0:B,1:Q}=this._maxCanvasSize,ee=this.getPixelRatio(),se=le*ee,qe=w*ee;return Math.min(se>B?B/se:1,qe>Q?Q/qe:1)*ee}getPixelRatio(){var le;return(le=this._overridePixelRatio)!==null&&le!==void 0?le:devicePixelRatio}setPixelRatio(le){this._overridePixelRatio=le,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(le){return this.transform.setMaxBounds(ce.convert(le)),this._update()}setMinZoom(le){if((le=le==null?-2:le)>=-2&&le<=this.transform.maxZoom)return this.transform.minZoom=le,this._update(),this.getZoom()<le&&this.setZoom(le),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")}getMinZoom(){return this.transform.minZoom}setMaxZoom(le){if((le=le==null?22:le)>=this.transform.minZoom)return this.transform.maxZoom=le,this._update(),this.getZoom()>le&&this.setZoom(le),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(le){if((le=le==null?0:le)<0)throw new Error("minPitch must be greater than or equal to 0");if(le>=0&&le<=this.transform.maxPitch)return this.transform.minPitch=le,this._update(),this.getPitch()<le&&this.setPitch(le),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")}getMinPitch(){return this.transform.minPitch}setMaxPitch(le){if((le=le==null?60:le)>85)throw new Error("maxPitch must be less than or equal to 85");if(le>=this.transform.minPitch)return this.transform.maxPitch=le,this._update(),this.getPitch()>le&&this.setPitch(le),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(le){return this.transform.renderWorldCopies=le,this._update()}project(le){return this.transform.locationPoint(a.N.convert(le),this.style&&this.terrain)}unproject(le){return this.transform.pointLocation(a.P.convert(le),this.terrain)}isMoving(){var le;return this._moving||((le=this.handlers)===null||le===void 0?void 0:le.isMoving())}isZooming(){var le;return this._zooming||((le=this.handlers)===null||le===void 0?void 0:le.isZooming())}isRotating(){var le;return this._rotating||((le=this.handlers)===null||le===void 0?void 0:le.isRotating())}_createDelegatedListener(le,w,B){if(le==="mouseenter"||le==="mouseover"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:se=>{let qe=w.filter(it=>this.getLayer(it)),je=qe.length!==0?this.queryRenderedFeatures(se.point,{layers:qe}):[];je.length?Q||(Q=!0,B.call(this,new ru(le,this,se.originalEvent,{features:je}))):Q=!1},mouseout:()=>{Q=!1}}}}if(le==="mouseleave"||le==="mouseout"){let Q=!1;return{layers:w,listener:B,delegates:{mousemove:qe=>{let je=w.filter(it=>this.getLayer(it));(je.length!==0?this.queryRenderedFeatures(qe.point,{layers:je}):[]).length?Q=!0:Q&&(Q=!1,B.call(this,new ru(le,this,qe.originalEvent)))},mouseout:qe=>{Q&&(Q=!1,B.call(this,new ru(le,this,qe.originalEvent)))}}}}{let Q=ee=>{let se=w.filter(je=>this.getLayer(je)),qe=se.length!==0?this.queryRenderedFeatures(ee.point,{layers:se}):[];qe.length&&(ee.features=qe,B.call(this,ee),delete ee.features)};return{layers:w,listener:B,delegates:{[le]:Q}}}}_saveDelegatedListener(le,w){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[le]=this._delegatedListeners[le]||[],this._delegatedListeners[le].push(w)}_removeDelegatedListener(le,w,B){if(!this._delegatedListeners||!this._delegatedListeners[le])return;let Q=this._delegatedListeners[le];for(let ee=0;ee<Q.length;ee++){let se=Q[ee];if(se.listener===B&&se.layers.length===w.length&&se.layers.every(qe=>w.includes(qe))){for(let qe in se.delegates)this.off(qe,se.delegates[qe]);return void Q.splice(ee,1)}}}on(le,w,B){if(B===void 0)return super.on(le,w);let Q=this._createDelegatedListener(le,typeof w=="string"?[w]:w,B);this._saveDelegatedListener(le,Q);for(let ee in Q.delegates)this.on(ee,Q.delegates[ee]);return this}once(le,w,B){if(B===void 0)return super.once(le,w);let Q=typeof w=="string"?[w]:w,ee=this._createDelegatedListener(le,Q,B);for(let se in ee.delegates){let qe=ee.delegates[se];ee.delegates[se]=(...je)=>{this._removeDelegatedListener(le,Q,B),qe(...je)}}this._saveDelegatedListener(le,ee);for(let se in ee.delegates)this.once(se,ee.delegates[se]);return this}off(le,w,B){return B===void 0?super.off(le,w):(this._removeDelegatedListener(le,typeof w=="string"?[w]:w,B),this)}queryRenderedFeatures(le,w){if(!this.style)return[];let B,Q=le instanceof a.P||Array.isArray(le),ee=Q?le:[[0,0],[this.transform.width,this.transform.height]];if(w=w||(Q?{}:le)||{},ee instanceof a.P||typeof ee[0]=="number")B=[a.P.convert(ee)];else{let se=a.P.convert(ee[0]),qe=a.P.convert(ee[1]);B=[se,new a.P(qe.x,se.y),qe,new a.P(se.x,qe.y),se]}return this.style.queryRenderedFeatures(B,w,this.transform)}querySourceFeatures(le,w){return this.style.querySourceFeatures(le,w)}setStyle(le,w){return(w=a.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},w)).diff!==!1&&w.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&le?(this._diffStyle(le,w),this):(this._localIdeographFontFamily=w.localIdeographFontFamily,this._updateStyle(le,w))}setTransformRequest(le){return this._requestManager.setTransformRequest(le),this}_getUIString(le){let w=this._locale[le];if(w==null)throw new Error(`Missing UI string '${le}'`);return w}_updateStyle(le,w){if(w.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(le,w));let B=this.style&&w.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!le)),le?(this.style=new Ha(this,w||{}),this.style.setEventedParent(this,{style:this.style}),typeof le=="string"?this.style.loadURL(le,w,B):this.style.loadJSON(le,w,B),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Ha(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(le,w){if(typeof le=="string"){let B=this._requestManager.transformRequest(le,"Style");a.h(B,new AbortController).then(Q=>{this._updateDiff(Q.data,w)}).catch(Q=>{Q&&this.fire(new a.j(Q))})}else typeof le=="object"&&this._updateDiff(le,w)}_updateDiff(le,w){try{this.style.setState(le,w)&&this._update(!0)}catch(B){a.w(`Unable to perform style diff: ${B.message||B.error||B}. Rebuilding the style from scratch.`),this._updateStyle(le,w)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():a.w("There is no style added to the map.")}addSource(le,w){return this._lazyInitEmptyStyle(),this.style.addSource(le,w),this._update(!0)}isSourceLoaded(le){let w=this.style&&this.style.sourceCaches[le];if(w!==void 0)return w.loaded();this.fire(new a.j(new Error(`There is no source with ID '${le}'`)))}setTerrain(le){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),le){let w=this.style.sourceCaches[le.source];if(!w)throw new Error(`cannot load terrain, because there exists no source with ID: ${le.source}`);this.terrain===null&&w.reload();for(let B in this.style._layers){let Q=this.style._layers[B];Q.type==="hillshade"&&Q.source===le.source&&a.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new Xo(this.painter,w,le),this.painter.renderToTexture=new ys(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=B=>{B.dataType==="style"?this.terrain.sourceCache.freeRtt():B.dataType==="source"&&B.tile&&(B.sourceId!==le.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(B.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new a.k("terrain",{terrain:le})),this}getTerrain(){var le,w;return(w=(le=this.terrain)===null||le===void 0?void 0:le.options)!==null&&w!==void 0?w:null}areTilesLoaded(){let le=this.style&&this.style.sourceCaches;for(let w in le){let B=le[w]._tiles;for(let Q in B){let ee=B[Q];if(ee.state!=="loaded"&&ee.state!=="errored")return!1}}return!0}removeSource(le){return this.style.removeSource(le),this._update(!0)}getSource(le){return this.style.getSource(le)}addImage(le,w,B={}){let{pixelRatio:Q=1,sdf:ee=!1,stretchX:se,stretchY:qe,content:je,textFitWidth:it,textFitHeight:yt}=B;if(this._lazyInitEmptyStyle(),!(w instanceof HTMLImageElement||a.b(w))){if(w.width===void 0||w.height===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:Ot,height:Nt,data:hr}=w,Sr=w;return this.style.addImage(le,{data:new a.R({width:Ot,height:Nt},new Uint8Array(hr)),pixelRatio:Q,stretchX:se,stretchY:qe,content:je,textFitWidth:it,textFitHeight:yt,sdf:ee,version:0,userImage:Sr}),Sr.onAdd&&Sr.onAdd(this,le),this}}{let{width:Ot,height:Nt,data:hr}=u.getImageData(w);this.style.addImage(le,{data:new a.R({width:Ot,height:Nt},hr),pixelRatio:Q,stretchX:se,stretchY:qe,content:je,textFitWidth:it,textFitHeight:yt,sdf:ee,version:0})}}updateImage(le,w){let B=this.style.getImage(le);if(!B)return this.fire(new a.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let Q=w instanceof HTMLImageElement||a.b(w)?u.getImageData(w):w,{width:ee,height:se,data:qe}=Q;if(ee===void 0||se===void 0)return this.fire(new a.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(ee!==B.data.width||se!==B.data.height)return this.fire(new a.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let je=!(w instanceof HTMLImageElement||a.b(w));return B.data.replace(qe,je),this.style.updateImage(le,B),this}getImage(le){return this.style.getImage(le)}hasImage(le){return le?!!this.style.getImage(le):(this.fire(new a.j(new Error("Missing required image id"))),!1)}removeImage(le){this.style.removeImage(le)}loadImage(le){return p.getImage(this._requestManager.transformRequest(le,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(le,w){return this._lazyInitEmptyStyle(),this.style.addLayer(le,w),this._update(!0)}moveLayer(le,w){return this.style.moveLayer(le,w),this._update(!0)}removeLayer(le){return this.style.removeLayer(le),this._update(!0)}getLayer(le){return this.style.getLayer(le)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(le,w,B){return this.style.setLayerZoomRange(le,w,B),this._update(!0)}setFilter(le,w,B={}){return this.style.setFilter(le,w,B),this._update(!0)}getFilter(le){return this.style.getFilter(le)}setPaintProperty(le,w,B,Q={}){return this.style.setPaintProperty(le,w,B,Q),this._update(!0)}getPaintProperty(le,w){return this.style.getPaintProperty(le,w)}setLayoutProperty(le,w,B,Q={}){return this.style.setLayoutProperty(le,w,B,Q),this._update(!0)}getLayoutProperty(le,w){return this.style.getLayoutProperty(le,w)}setGlyphs(le,w={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(le,w),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(le,w,B={}){return this._lazyInitEmptyStyle(),this.style.addSprite(le,w,B,Q=>{Q||this._update(!0)}),this}removeSprite(le){return this._lazyInitEmptyStyle(),this.style.removeSprite(le),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(le,w={}){return this._lazyInitEmptyStyle(),this.style.setSprite(le,w,B=>{B||this._update(!0)}),this}setLight(le,w={}){return this._lazyInitEmptyStyle(),this.style.setLight(le,w),this._update(!0)}getLight(){return this.style.getLight()}setSky(le){return this._lazyInitEmptyStyle(),this.style.setSky(le),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(le,w){return this.style.setFeatureState(le,w),this._update()}removeFeatureState(le,w){return this.style.removeFeatureState(le,w),this._update()}getFeatureState(le){return this.style.getFeatureState(le)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let le=0,w=0;return this._container&&(le=this._container.clientWidth||400,w=this._container.clientHeight||300),[le,w]}_setupContainer(){let le=this._container;le.classList.add("maplibregl-map");let w=this._canvasContainer=c.create("div","maplibregl-canvas-container",le);this._interactive&&w.classList.add("maplibregl-interactive"),this._canvas=c.create("canvas","maplibregl-canvas",w),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let B=this._containerDimensions(),Q=this._getClampedPixelRatio(B[0],B[1]);this._resizeCanvas(B[0],B[1],Q);let ee=this._controlContainer=c.create("div","maplibregl-control-container",le),se=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(qe=>{se[qe]=c.create("div",`maplibregl-ctrl-${qe} `,ee)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(le,w,B){this._canvas.width=Math.floor(B*le),this._canvas.height=Math.floor(B*w),this._canvas.style.width=`${le}px`,this._canvas.style.height=`${w}px`}_setupPainter(){let le={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},w=null;this._canvas.addEventListener("webglcontextcreationerror",Q=>{w={requestedAttributes:le},Q&&(w.statusMessage=Q.statusMessage,w.type=Q.type)},{once:!0});let B=this._canvas.getContext("webgl2",le)||this._canvas.getContext("webgl",le);if(!B){let Q="Failed to initialize WebGL";throw w?(w.message=Q,new Error(JSON.stringify(w))):new Error(Q)}this.painter=new Lc(B,this.transform),f.testSupport(B)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(le){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||le,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(le){return this._update(),this._renderTaskQueue.add(le)}_cancelRenderFrame(le){this._renderTaskQueue.remove(le)}_render(le){let w=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(le),this._removed)return;let B=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let ee=this.transform.zoom,se=u.now();this.style.zoomHistory.update(ee,se);let qe=new a.z(ee,{now:se,fadeDuration:w,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),je=qe.crossFadingFactor();je===1&&je===this._crossFadingFactor||(B=!0,this._crossFadingFactor=je),this.style.update(qe)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,w,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:w,showPadding:this.showPadding}),this.fire(new a.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,a.bf.mark(a.bg.load),this.fire(new a.k("load"))),this.style&&(this.style.hasTransitions()||B)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let Q=this._sourcesDirty||this._styleDirty||this._placementDirty;return Q||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new a.k("idle")),!this._loaded||this._fullyLoaded||Q||(this._fullyLoaded=!0,a.bf.mark(a.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var le;this._hash&&this._hash.remove();for(let B of this._controls)B.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window!="undefined"&&removeEventListener("online",this._onWindowOnline,!1),p.removeThrottleControl(this._imageQueueHandle),(le=this._resizeObserver)===null||le===void 0||le.disconnect();let w=this.painter.context.gl.getExtension("WEBGL_lose_context");w!=null&&w.loseContext&&w.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),c.remove(this._canvasContainer),c.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),a.bf.clearMetrics(),this._removed=!0,this.fire(new a.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,u.frameAsync(this._frameRequest).then(le=>{a.bf.frame(le),this._frameRequest=null,this._render(le)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(le){this._showTileBoundaries!==le&&(this._showTileBoundaries=le,this._update())}get showPadding(){return!!this._showPadding}set showPadding(le){this._showPadding!==le&&(this._showPadding=le,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(le){this._showCollisionBoxes!==le&&(this._showCollisionBoxes=le,le?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(le){this._showOverdrawInspector!==le&&(this._showOverdrawInspector=le,this._update())}get repaint(){return!!this._repaint}set repaint(le){this._repaint!==le&&(this._repaint=le,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(le){this._vertices=le,this._update()}get version(){return yl}getCameraTargetElevation(){return this.transform.elevation}},i.MapMouseEvent=ru,i.MapTouchEvent=vf,i.MapWheelEvent=md,i.Marker=ac,i.NavigationControl=class{constructor(le){this._updateZoomButtons=()=>{let w=this._map.getZoom(),B=w===this._map.getMaxZoom(),Q=w===this._map.getMinZoom();this._zoomInButton.disabled=B,this._zoomOutButton.disabled=Q,this._zoomInButton.setAttribute("aria-disabled",B.toString()),this._zoomOutButton.setAttribute("aria-disabled",Q.toString())},this._rotateCompassArrow=()=>{let w=this.options.visualizePitch?`scale(${1/Math.pow(Math.cos(this._map.transform.pitch*(Math.PI/180)),.5)}) rotateX(${this._map.transform.pitch}deg) rotateZ(${this._map.transform.angle*(180/Math.PI)}deg)`:`rotate(${this._map.transform.angle*(180/Math.PI)}deg)`;this._compassIcon.style.transform=w},this._setButtonTitle=(w,B)=>{let Q=this._map._getUIString(`NavigationControl.${B}`);w.title=Q,w.setAttribute("aria-label",Q)},this.options=a.e({},ia,le),this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",w=>w.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",w=>this._map.zoomIn({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",w=>this._map.zoomOut({},{originalEvent:w})),c.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",w=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:w}):this._map.resetNorth({},{originalEvent:w})}),this._compassIcon=c.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(le){return this._map=le,this.options.showZoom&&(this._setButtonTitle(this._zoomInButton,"ZoomIn"),this._setButtonTitle(this._zoomOutButton,"ZoomOut"),this._map.on("zoom",this._updateZoomButtons),this._updateZoomButtons()),this.options.showCompass&&(this._setButtonTitle(this._compass,"ResetBearing"),this.options.visualizePitch&&this._map.on("pitch",this._rotateCompassArrow),this._map.on("rotate",this._rotateCompassArrow),this._rotateCompassArrow(),this._handler=new Ka(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){c.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(le,w){let B=c.create("button",le,this._container);return B.type="button",B.addEventListener("click",w),B}},i.Popup=class extends a.E{constructor(le){super(),this.remove=()=>(this._content&&c.remove(this._content),this._container&&(c.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new a.k("close"))),this),this._onMouseUp=w=>{this._update(w.point)},this._onMouseMove=w=>{this._update(w.point)},this._onDrag=w=>{this._update(w.point)},this._update=w=>{var B;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=c.create("div","maplibregl-popup",this._map.getContainer()),this._tip=c.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let je of this.options.className.split(" "))this._container.classList.add(je);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Ko(this._lngLat,this._flatPos,this._map.transform):(B=this._lngLat)===null||B===void 0?void 0:B.wrap(),this._trackPointer&&!w)return;let Q=this._flatPos=this._pos=this._trackPointer&&w?w:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&w?w:this._map.transform.locationPoint(this._lngLat));let ee=this.options.anchor,se=yc(this.options.offset);if(!ee){let je=this._container.offsetWidth,it=this._container.offsetHeight,yt;yt=Q.y+se.bottom.y<it?["top"]:Q.y>this._map.transform.height-it?["bottom"]:[],Q.x<je/2?yt.push("left"):Q.x>this._map.transform.width-je/2&&yt.push("right"),ee=yt.length===0?"bottom":yt.join("-")}let qe=Q.add(se[ee]);this.options.subpixelPositioning||(qe=qe.round()),c.setTransform(this._container,`${nu[ee]} translate(${qe.x}px,${qe.y}px)`),Ru(this._container,ee,"popup")},this._onClose=()=>{this.remove()},this.options=a.e(Object.create(eo),le)}addTo(le){return this._map&&this.remove(),this._map=le,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new a.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(le){return this._lngLat=a.N.convert(le),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(le){return this.setDOMContent(document.createTextNode(le))}setHTML(le){let w=document.createDocumentFragment(),B=document.createElement("body"),Q;for(B.innerHTML=le;Q=B.firstChild,Q;)w.appendChild(Q);return this.setDOMContent(w)}getMaxWidth(){var le;return(le=this._container)===null||le===void 0?void 0:le.style.maxWidth}setMaxWidth(le){return this.options.maxWidth=le,this._update(),this}setDOMContent(le){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=c.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(le),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(le){return this._container&&this._container.classList.add(le),this}removeClassName(le){return this._container&&this._container.classList.remove(le),this}setOffset(le){return this.options.offset=le,this._update(),this}toggleClassName(le){if(this._container)return this._container.classList.toggle(le)}setSubpixelPositioning(le){this.options.subpixelPositioning=le}_createCloseButton(){this.options.closeButton&&(this._closeButton=c.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let le=this._container.querySelector(Jc);le&&le.focus()}},i.RasterDEMTileSource=qt,i.RasterTileSource=ct,i.ScaleControl=class{constructor(le){this._onMove=()=>{Dc(this._map,this._container,this.options)},this.setUnit=w=>{this.options.unit=w,Dc(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Du),le)}getDefaultPosition(){return"bottom-left"}onAdd(le){return this._map=le,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-scale",le.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){c.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},i.ScrollZoomHandler=Ur,i.Style=Ha,i.TerrainControl=class{constructor(le){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=le}onAdd(le){return this._map=le,this._container=c.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=c.create("button","maplibregl-ctrl-terrain",this._container),c.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){c.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},i.TwoFingersTouchPitchHandler=gf,i.TwoFingersTouchRotateHandler=Yc,i.TwoFingersTouchZoomHandler=iu,i.TwoFingersTouchZoomRotateHandler=Ti,i.VectorTileSource=nt,i.VideoSource=kt,i.addSourceType=(le,w)=>a._(void 0,void 0,void 0,function*(){if(xr(le))throw new Error(`A source type called "${le}" already exists.`);((B,Q)=>{Yt[B]=Q})(le,w)}),i.clearPrewarmedResources=function(){let le=ge;le&&(le.isPreloaded()&&le.numActive()===1?(le.release(_e),ge=null):console.warn("Could not clear WebWorkers since there are active Map instances that still reference it. The pre-warmed WebWorker pool can only be cleared when all map instances have been removed with map.remove()"))},i.getMaxParallelImageRequests=function(){return a.a.MAX_PARALLEL_IMAGE_REQUESTS},i.getRTLTextPluginStatus=function(){return bt().getRTLTextPluginStatus()},i.getVersion=function(){return _c},i.getWorkerCount=function(){return Me.workerCount},i.getWorkerUrl=function(){return a.a.WORKER_URL},i.importScriptInWorkers=function(le){return Ae().broadcast("IS",le)},i.prewarm=function(){Te().acquire(_e)},i.setMaxParallelImageRequests=function(le){a.a.MAX_PARALLEL_IMAGE_REQUESTS=le},i.setRTLTextPlugin=function(le,w){return bt().setRTLTextPlugin(le,w)},i.setWorkerCount=function(le){Me.workerCount=le},i.setWorkerUrl=function(le){a.a.WORKER_URL=le}});var n=e;return n})});var KHe=ye((Z1r,YHe)=>{"use strict";var iw=Mr(),gjt=Pl().sanitizeHTML,mjt=fJ(),WHe=wx();function ZHe(e,t){this.subplot=e,this.uid=e.uid+"-"+t,this.index=t,this.idSource="source-"+this.uid,this.idLayer=WHe.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var ag=ZHe.prototype;ag.update=function(t){this.visible?this.needsNewImage(t)?this.updateImage(t):this.needsNewSource(t)?(this.removeLayer(),this.updateSource(t),this.updateLayer(t)):this.needsNewLayer(t)?this.updateLayer(t):this.updateStyle(t):(this.updateSource(t),this.updateLayer(t)),this.visible=n7(t)};ag.needsNewImage=function(e){var t=this.subplot.map;return t.getSource(this.idSource)&&this.sourceType==="image"&&e.sourcetype==="image"&&(this.source!==e.source||JSON.stringify(this.coordinates)!==JSON.stringify(e.coordinates))};ag.needsNewSource=function(e){return this.sourceType!==e.sourcetype||JSON.stringify(this.source)!==JSON.stringify(e.source)||this.layerType!==e.type};ag.needsNewLayer=function(e){return this.layerType!==e.type||this.below!==this.subplot.belowLookup["layout-"+this.index]};ag.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]};ag.updateImage=function(e){var t=this.subplot.map;t.getSource(this.idSource).updateImage({url:e.source,coordinates:e.coordinates});var r=this.findFollowingMapLayerId(this.lookupBelow());r!==null&&this.subplot.map.moveLayer(this.idLayer,r)};ag.updateSource=function(e){var t=this.subplot.map;if(t.getSource(this.idSource)&&t.removeSource(this.idSource),this.sourceType=e.sourcetype,this.source=e.source,!!n7(e)){var r=yjt(e);t.addSource(this.idSource,r)}};ag.findFollowingMapLayerId=function(e){if(e==="traces")for(var t=this.subplot.getMapLayers(),r=0;r<t.length;r++){var n=t[r].id;if(typeof n=="string"&&n.indexOf(WHe.traceLayerPrefix)===0){e=n;break}}return e};ag.updateLayer=function(e){var t=this.subplot,r=XHe(e),n=this.lookupBelow(),i=this.findFollowingMapLayerId(n);this.removeLayer(),n7(e)&&t.addLayer({id:this.idLayer,source:this.idSource,"source-layer":e.sourcelayer||"",type:e.type,minzoom:e.minzoom,maxzoom:e.maxzoom,layout:r.layout,paint:r.paint},i),this.layerType=e.type,this.below=n};ag.updateStyle=function(e){if(n7(e)){var t=XHe(e);this.subplot.setOptions(this.idLayer,"setLayoutProperty",t.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",t.paint)}};ag.removeLayer=function(){var e=this.subplot.map;e.getLayer(this.idLayer)&&e.removeLayer(this.idLayer)};ag.dispose=function(){var e=this.subplot.map;e.getLayer(this.idLayer)&&e.removeLayer(this.idLayer),e.getSource(this.idSource)&&e.removeSource(this.idSource)};function n7(e){if(!e.visible)return!1;var t=e.source;if(Array.isArray(t)&&t.length>0){for(var r=0;r<t.length;r++)if(typeof t[r]!="string"||t[r].length===0)return!1;return!0}return iw.isPlainObject(t)||typeof t=="string"&&t.length>0}function XHe(e){var t={},r={};switch(e.type){case"circle":iw.extendFlat(r,{"circle-radius":e.circle.radius,"circle-color":e.color,"circle-opacity":e.opacity});break;case"line":iw.extendFlat(r,{"line-width":e.line.width,"line-color":e.color,"line-opacity":e.opacity,"line-dasharray":e.line.dash});break;case"fill":iw.extendFlat(r,{"fill-color":e.color,"fill-outline-color":e.fill.outlinecolor,"fill-opacity":e.opacity});break;case"symbol":var n=e.symbol,i=mjt(n.textposition,n.iconsize);iw.extendFlat(t,{"icon-image":n.icon+"-15","icon-size":n.iconsize/10,"text-field":n.text,"text-size":n.textfont.size,"text-anchor":i.anchor,"text-offset":i.offset,"symbol-placement":n.placement}),iw.extendFlat(r,{"icon-color":e.color,"text-color":n.textfont.color,"text-opacity":e.opacity});break;case"raster":iw.extendFlat(r,{"raster-fade-duration":0,"raster-opacity":e.opacity});break}return{layout:t,paint:r}}function yjt(e){var t=e.sourcetype,r=e.source,n={type:t},i;return t==="geojson"?i="data":t==="vector"?i=typeof r=="string"?"url":"tiles":t==="raster"?(i="tiles",n.tileSize=256):t==="image"&&(i="url",n.coordinates=e.coordinates),n[i]=r,e.sourceattribution&&(n.attribution=gjt(e.sourceattribution)),n}YHe.exports=function(t,r,n){var i=new ZHe(t,r);return i.update(n),i}});var nGe=ye((X1r,iGe)=>{"use strict";var mJ=jHe(),yJ=Mr(),QHe=nx(),JHe=ba(),_jt=Qa(),xjt=gv(),a7=Nc(),eGe=Sg(),bjt=eGe.drawMode,wjt=eGe.selectMode,Tjt=wf().prepSelect,Ajt=wf().clearOutline,Sjt=wf().clearSelectionsCache,Mjt=wf().selectOnClick,nw=wx(),Ejt=KHe();function tGe(e,t){this.id=t,this.gd=e;var r=e._fullLayout,n=e._context;this.container=r._glcontainer.node(),this.isStatic=n.staticPlot,this.uid=r._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(r),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var Sh=tGe.prototype;Sh.plot=function(e,t,r){var n=this,i;n.map?i=new Promise(function(a,o){n.updateMap(e,t,a,o)}):i=new Promise(function(a,o){n.createMap(e,t,a,o)}),r.push(i)};Sh.createMap=function(e,t,r,n){var i=this,a=t[i.id],o=i.styleObj=rGe(a.style),s=a.bounds,l=s?[[s.west,s.south],[s.east,s.north]]:null,u=i.map=new mJ.Map({container:i.div,style:o.style,center:_J(a.center),zoom:a.zoom,bearing:a.bearing,pitch:a.pitch,maxBounds:l,interactive:!i.isStatic,preserveDrawingBuffer:i.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new mJ.AttributionControl({compact:!0})),c={};u.on("styleimagemissing",function(h){var d=h.id;if(!c[d]&&d.includes("-15")){c[d]=!0;var v=new Image(15,15);v.onload=function(){u.addImage(d,v)},v.crossOrigin="Anonymous",v.src="https://unpkg.com/maki@2.1.0/icons/"+d+".svg"}}),u.setTransformRequest(function(h){return h=h.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),h=h.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:h}}),u._canvas.style.left="0px",u._canvas.style.top="0px",i.rejectOnError(n),i.isStatic||i.initFx(e,t);var f=[];f.push(new Promise(function(h){u.once("load",h)})),f=f.concat(QHe.fetchTraceGeoData(e)),Promise.all(f).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Sh.updateMap=function(e,t,r,n){var i=this,a=i.map,o=t[this.id];i.rejectOnError(n);var s=[],l=rGe(o.style);JSON.stringify(i.styleObj)!==JSON.stringify(l)&&(i.styleObj=l,a.setStyle(l.style),i.traceHash={},s.push(new Promise(function(u){a.once("styledata",u)}))),s=s.concat(QHe.fetchTraceGeoData(e)),Promise.all(s).then(function(){i.fillBelowLookup(e,t),i.updateData(e),i.updateLayout(t),i.resolveOnRender(r)}).catch(n)};Sh.fillBelowLookup=function(e,t){var r=t[this.id],n=r.layers,i,a,o=this.belowLookup={},s=!1;for(i=0;i<e.length;i++){var l=e[i][0].trace,u=l._module;typeof l.below=="string"?a=l.below:u.getBelow&&(a=u.getBelow(l,this)),a===""&&(s=!0),o["trace-"+l.uid]=a||""}for(i=0;i<n.length;i++){var c=n[i];typeof c.below=="string"?a=c.below:s?a="traces":a="",o["layout-"+i]=a}var f={},h,d;for(h in o)a=o[h],f[a]?f[a].push(h):f[a]=[h];for(a in f){var v=f[a];if(v.length>1)for(i=0;i<v.length;i++)h=v[i],h.indexOf("trace-")===0?(d=h.split("trace-")[1],this.traceHash[d]&&(this.traceHash[d].below=null)):h.indexOf("layout-")===0&&(d=h.split("layout-")[1],this.layerList[d]&&(this.layerList[d].below=null))}};var $He={choroplethmap:0,densitymap:1,scattermap:2};Sh.updateData=function(e){var t=this.traceHash,r,n,i,a,o=e.slice().sort(function(f,h){return $He[f[0].trace.type]-$He[h[0].trace.type]});for(i=0;i<o.length;i++){var s=o[i];n=s[0].trace,r=t[n.uid];var l=!1;r&&(r.type===n.type?(r.update(s),l=!0):r.dispose()),!l&&n._module&&(t[n.uid]=n._module.plot(this,s))}var u=Object.keys(t);e:for(i=0;i<u.length;i++){var c=u[i];for(a=0;a<e.length;a++)if(n=e[a][0].trace,c===n.uid)continue e;r=t[c],r.dispose(),delete t[c]}};Sh.updateLayout=function(e){var t=this.map,r=e[this.id];!this.dragging&&!this.wheeling&&(t.setCenter(_J(r.center)),t.setZoom(r.zoom),t.setBearing(r.bearing),t.setPitch(r.pitch)),this.updateLayers(e),this.updateFramework(e),this.updateFx(e),this.map.resize(),this.gd._context._scrollZoom.map?t.scrollZoom.enable():t.scrollZoom.disable()};Sh.resolveOnRender=function(e){var t=this.map;t.on("render",function r(){t.loaded()&&(t.off("render",r),setTimeout(e,10))})};Sh.rejectOnError=function(e){var t=this.map;function r(){e(new Error(nw.mapOnErrorMsg))}t.once("error",r),t.once("style.error",r),t.once("source.error",r),t.once("tile.error",r),t.once("layer.error",r)};Sh.createFramework=function(e){var t=this,r=t.div=document.createElement("div");r.id=t.uid,r.style.position="absolute",t.container.appendChild(r),t.xaxis={_id:"x",c2p:function(n){return t.project(n).x}},t.yaxis={_id:"y",c2p:function(n){return t.project(n).y}},t.updateFramework(e),t.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},_jt.setConvert(t.mockAxis,e)};Sh.initFx=function(e,t){var r=this,n=r.gd,i=r.map;i.on("moveend",function(s){if(r.map){var l=n._fullLayout;if(s.originalEvent||r.wheeling){var u=l[r.id];JHe.call("_storeDirectGUIEdit",n.layout,l._preGUI,r.getViewEdits(u));var c=r.getView();u._input.center=u.center=c.center,u._input.zoom=u.zoom=c.zoom,u._input.bearing=u.bearing=c.bearing,u._input.pitch=u.pitch=c.pitch,n.emit("plotly_relayout",r.getViewEditsWithDerived(c))}s.originalEvent&&s.originalEvent.type==="mouseup"?r.dragging=!1:r.wheeling&&(r.wheeling=!1),l&&l._rehover&&l._rehover()}}),i.on("wheel",function(){r.wheeling=!0}),i.on("mousemove",function(s){var l=r.div.getBoundingClientRect(),u=[s.originalEvent.offsetX,s.originalEvent.offsetY];s.target.getBoundingClientRect=function(){return l},r.xaxis.p2c=function(){return i.unproject(u).lng},r.yaxis.p2c=function(){return i.unproject(u).lat},n._fullLayout._rehover=function(){n._fullLayout._hoversubplot===r.id&&n._fullLayout[r.id]&&a7.hover(n,s,r.id)},a7.hover(n,s,r.id),n._fullLayout._hoversubplot=r.id});function a(){a7.loneUnhover(t._hoverlayer)}i.on("dragstart",function(){r.dragging=!0,a()}),i.on("zoomstart",a),i.on("mouseout",function(){n._fullLayout._hoversubplot=null});function o(){var s=r.getView();n.emit("plotly_relayouting",r.getViewEditsWithDerived(s))}i.on("drag",o),i.on("zoom",o),i.on("dblclick",function(){var s=n._fullLayout[r.id];JHe.call("_storeDirectGUIEdit",n.layout,n._fullLayout._preGUI,r.getViewEdits(s));var l=r.viewInitial;i.setCenter(_J(l.center)),i.setZoom(l.zoom),i.setBearing(l.bearing),i.setPitch(l.pitch);var u=r.getView();s._input.center=s.center=u.center,s._input.zoom=s.zoom=u.zoom,s._input.bearing=s.bearing=u.bearing,s._input.pitch=s.pitch=u.pitch,n.emit("plotly_doubleclick",null),n.emit("plotly_relayout",r.getViewEditsWithDerived(u))}),r.clearOutline=function(){Sjt(r.dragOptions),Ajt(r.dragOptions.gd)},r.onClickInPanFn=function(s){return function(l){var u=n._fullLayout.clickmode;u.indexOf("select")>-1&&Mjt(l.originalEvent,n,[r.xaxis],[r.yaxis],r.id,s),u.indexOf("event")>-1&&a7.click(n,l.originalEvent)}}};Sh.updateFx=function(e){var t=this,r=t.map,n=t.gd;if(t.isStatic)return;function i(l){var u=t.map.unproject(l);return[u.lng,u.lat]}var a=e.dragmode,o;o=function(l,u){if(u.isRect){var c=l.range={};c[t.id]=[i([u.xmin,u.ymin]),i([u.xmax,u.ymax])]}else{var f=l.lassoPoints={};f[t.id]=u.map(i)}};var s=t.dragOptions;t.dragOptions=yJ.extendDeep(s||{},{dragmode:e.dragmode,element:t.div,gd:n,plotinfo:{id:t.id,domain:e[t.id].domain,xaxis:t.xaxis,yaxis:t.yaxis,fillRangeItems:o},xaxes:[t.xaxis],yaxes:[t.yaxis],subplot:t.id}),r.off("click",t.onClickInPanHandler),wjt(a)||bjt(a)?(r.dragPan.disable(),r.on("zoomstart",t.clearOutline),t.dragOptions.prepFn=function(l,u,c){Tjt(l,u,c,t.dragOptions,a)},xjt.init(t.dragOptions)):(r.dragPan.enable(),r.off("zoomstart",t.clearOutline),t.div.onmousedown=null,t.div.ontouchstart=null,t.div.removeEventListener("touchstart",t.div._ontouchstart),t.onClickInPanHandler=t.onClickInPanFn(t.dragOptions),r.on("click",t.onClickInPanHandler))};Sh.updateFramework=function(e){var t=e[this.id].domain,r=e._size,n=this.div.style;n.width=r.w*(t.x[1]-t.x[0])+"px",n.height=r.h*(t.y[1]-t.y[0])+"px",n.left=r.l+t.x[0]*r.w+"px",n.top=r.t+(1-t.y[1])*r.h+"px",this.xaxis._offset=r.l+t.x[0]*r.w,this.xaxis._length=r.w*(t.x[1]-t.x[0]),this.yaxis._offset=r.t+(1-t.y[1])*r.h,this.yaxis._length=r.h*(t.y[1]-t.y[0])};Sh.updateLayers=function(e){var t=e[this.id],r=t.layers,n=this.layerList,i;if(r.length!==n.length){for(i=0;i<n.length;i++)n[i].dispose();for(n=this.layerList=[],i=0;i<r.length;i++)n.push(Ejt(this,i,r[i]))}else for(i=0;i<r.length;i++)n[i].update(r[i])};Sh.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))};Sh.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()};Sh.setOptions=function(e,t,r){for(var n in r)this.map[t](e,n,r[n])};Sh.getMapLayers=function(){return this.map.getStyle().layers};Sh.addLayer=function(e,t){var r=this.map;if(typeof t=="string"){if(t===""){r.addLayer(e,t);return}for(var n=this.getMapLayers(),i=0;i<n.length;i++)if(t===n[i].id){r.addLayer(e,t);return}yJ.warn(["Trying to add layer with *below* value",t,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}r.addLayer(e)};Sh.project=function(e){return this.map.project(new mJ.LngLat(e[0],e[1]))};Sh.getView=function(){var e=this.map,t=e.getCenter(),r=t.lng,n=t.lat,i={lon:r,lat:n},a=e.getCanvas(),o=parseInt(a.style.width),s=parseInt(a.style.height);return{center:i,zoom:e.getZoom(),bearing:e.getBearing(),pitch:e.getPitch(),_derived:{coordinates:[e.unproject([0,0]).toArray(),e.unproject([o,0]).toArray(),e.unproject([o,s]).toArray(),e.unproject([0,s]).toArray()]}}};Sh.getViewEdits=function(e){for(var t=this.id,r=["center","zoom","bearing","pitch"],n={},i=0;i<r.length;i++){var a=r[i];n[t+"."+a]=e[a]}return n};Sh.getViewEditsWithDerived=function(e){var t=this.id,r=this.getViewEdits(e);return r[t+"._derived"]=e._derived,r};function rGe(e){var t={};return yJ.isPlainObject(e)?(t.id=e.id,t.style=e):typeof e=="string"?(t.id=e,nw.stylesMap[e]?t.style=nw.stylesMap[e]:t.style=e):(t.id=nw.styleValueDflt,t.style=kjt(nw.styleValueDflt)),t.transition={duration:0,delay:0},t}function kjt(e){return nw.styleUrlPrefix+e+"-"+nw.styleUrlSuffix}function _J(e){return[e.lon,e.lat]}iGe.exports=tGe});var sGe=ye((Y1r,oGe)=>{"use strict";var xJ=Mr(),Cjt=C_(),Ljt=Zd(),aGe=Ok();oGe.exports=function(t,r,n){Cjt(t,r,n,{type:"map",attributes:aGe,handleDefaults:Pjt,partition:"y"})};function Pjt(e,t,r){r("style"),r("center.lon"),r("center.lat"),r("zoom"),r("bearing"),r("pitch");var n=r("bounds.west"),i=r("bounds.east"),a=r("bounds.south"),o=r("bounds.north");(n===void 0||i===void 0||a===void 0||o===void 0)&&delete t.bounds,Ljt(e,t,{name:"layers",handleItemDefaults:Ijt}),t._input=e}function Ijt(e,t){function r(l,u){return xJ.coerce(e,t,aGe.layers,l,u)}var n=r("visible");if(n){var i=r("sourcetype"),a=i==="raster"||i==="image";r("source"),r("sourceattribution"),i==="vector"&&r("sourcelayer"),i==="image"&&r("coordinates");var o;a&&(o="raster");var s=r("type",o);a&&s!=="raster"&&(s=t.type="raster",xJ.log("Source types *raster* and *image* must drawn *raster* layer type.")),r("below"),r("color"),r("opacity"),r("minzoom"),r("maxzoom"),s==="circle"&&r("circle.radius"),s==="line"&&(r("line.width"),r("line.dash")),s==="fill"&&r("fill.outlinecolor"),s==="symbol"&&(r("symbol.icon"),r("symbol.iconsize"),r("symbol.text"),xJ.coerceFont(r,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),r("symbol.textposition"),r("symbol.placement"))}}});var s7=ye(l0=>{"use strict";var o7=Mr(),lGe=o7.strTranslate,Rjt=o7.strScale,Djt=kd().getSubplotCalcData,zjt=Zp(),Fjt=xa(),uGe=ao(),qjt=Pl(),Ojt=nGe(),Tx="map";l0.name=Tx;l0.attr="subplot";l0.idRoot=Tx;l0.idRegex=l0.attrRegex=o7.counterRegex(Tx);l0.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}};l0.layoutAttributes=Ok();l0.supplyLayoutDefaults=sGe();l0.plot=function(t){for(var r=t._fullLayout,n=t.calcdata,i=r._subplots[Tx],a=0;a<i.length;a++){var o=i[a],s=Djt(n,Tx,o),l=r[o],u=l._subplot;u||(u=new Ojt(t,o),r[o]._subplot=u),u.viewInitial||(u.viewInitial={center:o7.extendFlat({},l.center),zoom:l.zoom,bearing:l.bearing,pitch:l.pitch}),u.plot(s,r,t._promises)}};l0.clean=function(e,t,r,n){for(var i=n._subplots[Tx]||[],a=0;a<i.length;a++){var o=i[a];!t[o]&&n[o]._subplot&&n[o]._subplot.destroy()}};l0.toSVG=function(e){for(var t=e._fullLayout,r=t._subplots[Tx],n=t._size,i=0;i<r.length;i++){var a=t[r[i]],o=a.domain,s=a._subplot,l=s.toImage("png"),u=t._glimages.append("svg:image");u.attr({xmlns:zjt.svg,"xlink:href":l,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"});var c=Fjt.select(a._subplot.div),f=c.select(".maplibregl-ctrl-attrib").text().replace("Improve this map",""),h=t._glimages.append("g"),d=h.append("text");d.text(f).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":f});var v=uGe.bBox(d.node()),x=n.w*(o.x[1]-o.x[0]);if(v.width>x/2){var b=f.split("|").join("<br>");d.text(b).attr("data-unformatted",b).call(qjt.convertToTspans,e),v=uGe.bBox(d.node())}d.attr("transform",lGe(-3,-v.height+8)),h.insert("rect",".static-attribution").attr({x:-v.width-6,y:-v.height-3,width:v.width+6,height:v.height+3,fill:"rgba(255, 255, 255, 0.75)"});var p=1;v.width+6>x&&(p=x/(v.width+6));var E=[n.l+n.w*o.x[1],n.t+n.h*(1-o.y[0])];h.attr("transform",lGe(E[0],E[1])+Rjt(p))}};l0.updateFx=function(e){for(var t=e._fullLayout,r=t._subplots[Tx],n=0;n<r.length;n++){var i=t[r[n]]._subplot;i.updateFx(t)}}});var fGe=ye((J1r,cGe)=>{"use strict";cGe.exports={attributes:$F(),supplyDefaults:THe(),colorbar:Kd(),formatLabels:cJ(),calc:lz(),plot:qHe(),hoverPoints:i7().hoverPoints,eventData:UHe(),selectPoints:HHe(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.update(t)}},moduleType:"trace",name:"scattermap",basePlotModule:s7(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}});var dGe=ye(($1r,hGe)=>{"use strict";hGe.exports=fGe()});var bJ=ye((Q1r,vGe)=>{"use strict";var d1=K5(),Bjt=Jl(),Njt=Wo().hovertemplateAttrs,Ujt=vl(),Ax=no().extendFlat;vGe.exports=Ax({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:Ax({},d1.featureidkey,{}),below:{valType:"string",editType:"plot"},text:d1.text,hovertext:d1.hovertext,marker:{line:{color:Ax({},d1.marker.line.color,{editType:"plot"}),width:Ax({},d1.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:Ax({},d1.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:Ax({},d1.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:Ax({},d1.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:d1.hoverinfo,hovertemplate:Njt({},{keys:["properties"]}),showlegend:Ax({},Ujt.showlegend,{dflt:!1})},Bjt("",{cLetter:"z",editTypeOverride:"calc"}))});var gGe=ye((e_r,pGe)=>{"use strict";var Vk=Mr(),Vjt=Uh(),Hjt=bJ();pGe.exports=function(t,r,n,i){function a(c,f){return Vk.coerce(t,r,Hjt,c,f)}var o=a("locations"),s=a("z"),l=a("geojson");if(!Vk.isArrayOrTypedArray(o)||!o.length||!Vk.isArrayOrTypedArray(s)||!s.length||!(typeof l=="string"&&l!==""||Vk.isPlainObject(l))){r.visible=!1;return}a("featureidkey"),r._length=Math.min(o.length,s.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var u=a("marker.line.width");u&&a("marker.line.color"),a("marker.opacity"),Vjt(t,r,i,a,{prefix:"",cLetter:"z"}),Vk.coerceSelectionMarkerOpacity(r,a)}});var wJ=ye((t_r,_Ge)=>{"use strict";var Gjt=uo(),v1=Mr(),jjt=Mu(),Wjt=ao(),Zjt=rx().makeBlank,mGe=nx();function Xjt(e){var t=e[0].trace,r=t.visible===!0&&t._length!==0,n={layout:{visibility:"none"},paint:{}},i={layout:{visibility:"none"},paint:{}},a=t._opts={fill:n,line:i,geojson:Zjt()};if(!r)return a;var o=mGe.extractTraceFeature(e);if(!o)return a;var s=jjt.makeColorScaleFuncFromTrace(t),l=t.marker,u=l.line||{},c;v1.isArrayOrTypedArray(l.opacity)&&(c=function(E){var k=E.mo;return Gjt(k)?+v1.constrain(k,0,1):0});var f;v1.isArrayOrTypedArray(u.color)&&(f=function(E){return E.mlc});var h;v1.isArrayOrTypedArray(u.width)&&(h=function(E){return E.mlw});for(var d=0;d<e.length;d++){var v=e[d],x=v.fOut;if(x){var b=x.properties;b.fc=s(v.z),c&&(b.mo=c(v)),f&&(b.mlc=f(v)),h&&(b.mlw=h(v)),v.ct=b.ct,v._polygons=mGe.feature2polygons(x)}}var p=c?{type:"identity",property:"mo"}:l.opacity;return v1.extendFlat(n.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":p}),v1.extendFlat(i.paint,{"line-color":f?{type:"identity",property:"mlc"}:u.color,"line-width":h?{type:"identity",property:"mlw"}:u.width,"line-opacity":p}),n.layout.visibility="visible",i.layout.visibility="visible",a.geojson={type:"FeatureCollection",features:o},yGe(e),a}function yGe(e){var t=e[0].trace,r=t._opts,n;if(t.selectedpoints){for(var i=Wjt.makeSelectedPointStyleFns(t),a=0;a<e.length;a++){var o=e[a];o.fOut&&(o.fOut.properties.mo2=i.selectedOpacityFn(o))}n={type:"identity",property:"mo2"}}else n=v1.isArrayOrTypedArray(t.marker.opacity)?{type:"identity",property:"mo"}:t.marker.opacity;return v1.extendFlat(r.fill.paint,{"fill-opacity":n}),v1.extendFlat(r.line.paint,{"line-opacity":n}),r}_Ge.exports={convert:Xjt,convertOnSelect:yGe}});var AGe=ye((r_r,TGe)=>{"use strict";var bGe=wJ().convert,Yjt=wJ().convertOnSelect,xGe=wx().traceLayerPrefix;function wGe(e,t){this.type="choroplethmap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["fill",xGe+t+"-fill"],["line",xGe+t+"-line"]],this.below=null}var MA=wGe.prototype;MA.update=function(e){this._update(bGe(e)),e[0].trace._glTrace=this};MA.updateOnSelect=function(e){this._update(Yjt(e))};MA._update=function(e){var t=this.subplot,r=this.layerList,n=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(e.geojson),n!==this.below&&(this._removeLayers(),this._addLayers(e,n),this.below=n);for(var i=0;i<r.length;i++){var a=r[i],o=a[0],s=a[1],l=e[o];t.setOptions(s,"setLayoutProperty",l.layout),l.layout.visibility==="visible"&&t.setOptions(s,"setPaintProperty",l.paint)}};MA._addLayers=function(e,t){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=e[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},t)}};MA._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};MA.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};TGe.exports=function(t,r){var n=r[0].trace,i=new wGe(t,n.uid),a=i.sourceId,o=bGe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),r[0].trace._glTrace=i,i}});var MGe=ye((i_r,SGe)=>{"use strict";SGe.exports={attributes:bJ(),supplyDefaults:gGe(),colorbar:M_(),calc:Lz(),plot:AGe(),hoverPoints:Iz(),eventData:Rz(),selectPoints:Dz(),styleOnSelect:function(e,t){if(t){var r=t[0].trace;r._glTrace.updateOnSelect(t)}},getBelow:function(e,t){for(var r=t.getMapLayers(),n=r.length-2;n>=0;n--){var i=r[n].id;if(typeof i=="string"&&i.indexOf("water")===0){for(var a=n+1;a<r.length;a++)if(i=r[a].id,typeof i=="string"&&i.indexOf("plotly-")===-1)return i}}},moduleType:"trace",name:"choroplethmap",basePlotModule:s7(),categories:["map","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_map"}}});var kGe=ye((n_r,EGe)=>{"use strict";EGe.exports=MGe()});var AJ=ye((a_r,LGe)=>{"use strict";var Kjt=Jl(),Jjt=Wo().hovertemplateAttrs,CGe=vl(),l7=$F(),TJ=no().extendFlat;LGe.exports=TJ({lon:l7.lon,lat:l7.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:l7.text,hovertext:l7.hovertext,hoverinfo:TJ({},CGe.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:Jjt(),showlegend:TJ({},CGe.showlegend,{dflt:!1})},Kjt("",{cLetter:"z",editTypeOverride:"calc"}))});var IGe=ye((o_r,PGe)=>{"use strict";var $jt=Mr(),Qjt=Uh(),eWt=AJ();PGe.exports=function(t,r,n,i){function a(u,c){return $jt.coerce(t,r,eWt,u,c)}var o=a("lon")||[],s=a("lat")||[],l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),Qjt(t,r,i,a,{prefix:"",cLetter:"z"})}});var zGe=ye((s_r,DGe)=>{"use strict";var SJ=uo(),tWt=Mr().isArrayOrTypedArray,MJ=es().BADNUM,rWt=zv(),RGe=Mr()._;DGe.exports=function(t,r){for(var n=r._length,i=new Array(n),a=r.z,o=tWt(a)&&a.length,s=0;s<n;s++){var l=i[s]={},u=r.lon[s],c=r.lat[s];if(l.lonlat=SJ(u)&&SJ(c)?[+u,+c]:[MJ,MJ],o){var f=a[s];l.z=SJ(f)?f:MJ}}return rWt(t,r,{vals:o?a:[0,1],containerStr:"",cLetter:"z"}),n&&(i[0].t={labels:{lat:RGe(t,"lat:")+" ",lon:RGe(t,"lon:")+" "}}),i}});var NGe=ye((l_r,BGe)=>{"use strict";var iWt=uo(),EJ=Mr(),FGe=va(),qGe=Mu(),OGe=es().BADNUM,nWt=rx().makeBlank;BGe.exports=function(t){var r=t[0].trace,n=r.visible===!0&&r._length!==0,i={layout:{visibility:"none"},paint:{}},a=r._opts={heatmap:i,geojson:nWt()};if(!n)return a;var o=[],s,l=r.z,u=r.radius,c=EJ.isArrayOrTypedArray(l)&&l.length,f=EJ.isArrayOrTypedArray(u);for(s=0;s<t.length;s++){var h=t[s],d=h.lonlat;if(d[0]!==OGe){var v={};if(c){var x=h.z;v.z=x!==OGe?x:0}f&&(v.r=iWt(u[s])&&u[s]>0?+u[s]:0),o.push({type:"Feature",geometry:{type:"Point",coordinates:d},properties:v})}}var b=qGe.extractOpts(r),p=b.reversescale?qGe.flipScale(b.colorscale):b.colorscale,E=p[0][1],k=FGe.opacity(E)<1?E:FGe.addOpacity(E,0),A=["interpolate",["linear"],["heatmap-density"],0,k];for(s=1;s<p.length;s++)A.push(p[s][0],p[s][1]);var L=["interpolate",["linear"],["get","z"],b.min,0,b.max,1];return EJ.extendFlat(a.heatmap.paint,{"heatmap-weight":c?L:1/(b.max-b.min),"heatmap-color":A,"heatmap-radius":f?{type:"identity",property:"r"}:r.radius,"heatmap-opacity":r.opacity}),a.geojson={type:"FeatureCollection",features:o},a.heatmap.layout.visibility="visible",a}});var GGe=ye((u_r,HGe)=>{"use strict";var UGe=NGe(),aWt=wx().traceLayerPrefix;function VGe(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",aWt+t+"-heatmap"]],this.below=null}var u7=VGe.prototype;u7.update=function(e){var t=this.subplot,r=this.layerList,n=UGe(e),i=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(n.geojson),i!==this.below&&(this._removeLayers(),this._addLayers(n,i),this.below=i);for(var a=0;a<r.length;a++){var o=r[a],s=o[0],l=o[1],u=n[s];t.setOptions(l,"setLayoutProperty",u.layout),u.layout.visibility==="visible"&&t.setOptions(l,"setPaintProperty",u.paint)}};u7._addLayers=function(e,t){for(var r=this.subplot,n=this.layerList,i=this.sourceId,a=0;a<n.length;a++){var o=n[a],s=o[0],l=e[s];r.addLayer({type:s,id:o[1],source:i,layout:l.layout,paint:l.paint},t)}};u7._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])};u7.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)};HGe.exports=function(t,r){var n=r[0].trace,i=new VGe(t,n.uid),a=i.sourceId,o=UGe(r),s=i.below=t.belowLookup["trace-"+n.uid];return t.map.addSource(a,{type:"geojson",data:o.geojson}),i._addLayers(o,s),i}});var WGe=ye((c_r,jGe)=>{"use strict";var oWt=Qa(),sWt=i7().hoverPoints,lWt=i7().getExtraText;jGe.exports=function(t,r,n){var i=sWt(t,r,n);if(i){var a=i[0],o=a.cd,s=o[0].trace,l=o[a.index];if(delete a.color,"z"in l){var u=a.subplot.mockAxis;a.z=l.z,a.zLabel=oWt.tickText(u,u.c2l(l.z),"hover").text}return a.extraText=lWt(s,l,o[0].t.labels),[a]}}});var XGe=ye((f_r,ZGe)=>{"use strict";ZGe.exports=function(t,r){return t.lon=r.lon,t.lat=r.lat,t.z=r.z,t}});var KGe=ye((h_r,YGe)=>{"use strict";YGe.exports={attributes:AJ(),supplyDefaults:IGe(),colorbar:M_(),formatLabels:cJ(),calc:zGe(),plot:GGe(),hoverPoints:WGe(),eventData:XGe(),getBelow:function(e,t){for(var r=t.getMapLayers(),n=0;n<r.length;n++){var i=r[n],a=i.id;if(i.type==="symbol"&&typeof a=="string"&&a.indexOf("plotly-")===-1)return a}},moduleType:"trace",name:"densitymap",basePlotModule:s7(),categories:["map","gl","showLegend"],meta:{hr_name:"density_map"}}});var $Ge=ye((d_r,JGe)=>{"use strict";JGe.exports=KGe()});var CJ=ye((p_r,rje)=>{"use strict";var uWt=Su(),cWt=vl(),QGe=dh(),kJ=i3(),fWt=Ju().attributes,eje=Wo().hovertemplateAttrs,hWt=Jl(),dWt=Vs().templatedArray,vWt=Oc().descriptionOnlyNumbers,tje=no().extendFlat,pWt=Bu().overrideAll,v_r=rje.exports=pWt({hoverinfo:tje({},cWt.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:kJ.hoverlabel,domain:fWt({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:vWt("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:uWt({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:QGe.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:kJ.hoverlabel,hovertemplate:eje({},{keys:["value","label"]}),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:QGe.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:kJ.hoverlabel,hovertemplate:eje({},{keys:["value","label"]}),colorscales:dWt("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:tje(hWt().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")});var sje=ye((g_r,oje)=>{"use strict";var EA=Mr(),c7=CJ(),gWt=va(),ije=id(),mWt=Ju().defaults,nje=oM(),aje=Vs(),yWt=Zd();oje.exports=function(t,r,n,i){function a(A,L){return EA.coerce(t,r,c7,A,L)}var o=EA.extendDeep(i.hoverlabel,t.hoverlabel),s=t.node,l=aje.newContainer(r,"node");function u(A,L){return EA.coerce(s,l,c7.node,A,L)}u("label"),u("groups"),u("x"),u("y"),u("pad"),u("thickness"),u("line.color"),u("line.width"),u("hoverinfo",t.hoverinfo),nje(s,l,u,o),u("hovertemplate"),u("align");var c=i.colorway,f=function(A){return c[A%c.length]};u("color",l.label.map(function(A,L){return gWt.addOpacity(f(L),.8)})),u("customdata");var h=t.link||{},d=aje.newContainer(r,"link");function v(A,L){return EA.coerce(h,d,c7.link,A,L)}v("label"),v("arrowlen"),v("source"),v("target"),v("value"),v("line.color"),v("line.width"),v("hoverinfo",t.hoverinfo),nje(h,d,v,o),v("hovertemplate");var x=ije(i.paper_bgcolor).getLuminance()<.333,b=x?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",p=v("color",b);function E(A){var L=ije(A);if(!L.isValid())return A;var _=L.getAlpha();return _<=.8?L.setAlpha(_+.2):L=x?L.brighten():L.darken(),L.toRgbString()}v("hovercolor",Array.isArray(p)?p.map(E):E(p)),v("customdata"),yWt(h,d,{name:"colorscales",handleItemDefaults:_Wt}),mWt(r,i,a),a("orientation"),a("valueformat"),a("valuesuffix");var k;l.x.length&&l.y.length&&(k="freeform"),a("arrangement",k),EA.coerceFont(a,"textfont",i.font,{autoShadowDflt:!0}),r._length=null};function _Wt(e,t){function r(n,i){return EA.coerce(e,t,c7.link.colorscales,n,i)}r("label"),r("cmin"),r("cmax"),r("colorscale")}});var LJ=ye((m_r,lje)=>{"use strict";lje.exports=xWt;function xWt(e){for(var t=e.length,r=new Array(t),n=new Array(t),i=new Array(t),a=new Array(t),o=new Array(t),s=new Array(t),l=0;l<t;++l)r[l]=-1,n[l]=0,i[l]=!1,a[l]=0,o[l]=-1,s[l]=[];var u=0,c=[],f=[];function h(b){var p=[b],E=[b];for(r[b]=n[b]=u,i[b]=!0,u+=1;E.length>0;){b=E[E.length-1];var k=e[b];if(a[b]<k.length){for(var A=a[b];A<k.length;++A){var L=k[A];if(r[L]<0){r[L]=n[L]=u,i[L]=!0,u+=1,p.push(L),E.push(L);break}else i[L]&&(n[b]=Math.min(n[b],n[L])|0);o[L]>=0&&s[b].push(o[L])}a[b]=A}else{if(n[b]===r[b]){for(var _=[],C=[],M=0,A=p.length-1;A>=0;--A){var g=p[A];if(i[g]=!1,_.push(g),C.push(s[g]),M+=s[g].length,o[g]=c.length,g===b){p.length=A;break}}c.push(_);for(var P=new Array(M),A=0;A<C.length;A++)for(var T=0;T<C[A].length;T++)P[--M]=C[A][T];f.push(P)}E.pop()}}}for(var l=0;l<t;++l)r[l]<0&&h(l);for(var d,l=0;l<f.length;l++){var v=f[l];if(v.length!==0){v.sort(function(p,E){return p-E}),d=[v[0]];for(var x=1;x<v.length;x++)v[x]!==v[x-1]&&d.push(v[x]);f[l]=d}}return{components:c,adjacencyList:f}}});var hje=ye((y_r,fje)=>{"use strict";var bWt=LJ(),kA=Mr(),wWt=Km().wrap,Hk=kA.isArrayOrTypedArray,uje=kA.isIndex,cje=Mu();function TWt(e){var t=e.node,r=e.link,n=[],i=Hk(r.color),a=Hk(r.hovercolor),o=Hk(r.customdata),s={},l={},u=r.colorscales.length,c;for(c=0;c<u;c++){var f=r.colorscales[c],h=cje.extractScale(f,{cLetter:"c"}),d=cje.makeColorScaleFunc(h);l[f.label]=d}var v=0;for(c=0;c<r.value.length;c++)r.source[c]>v&&(v=r.source[c]),r.target[c]>v&&(v=r.target[c]);var x=v+1;e.node._count=x;var b,p=e.node.groups,E={};for(c=0;c<p.length;c++){var k=p[c];for(b=0;b<k.length;b++){var A=k[b],L=x+c;E.hasOwnProperty(A)?kA.warn("Node "+A+" is already part of a group."):E[A]=L}}var _={source:[],target:[]};for(c=0;c<r.value.length;c++){var C=r.value[c],M=r.source[c],g=r.target[c];if(C>0&&uje(M,x)&&uje(g,x)&&!(E.hasOwnProperty(M)&&E.hasOwnProperty(g)&&E[M]===E[g])){E.hasOwnProperty(g)&&(g=E[g]),E.hasOwnProperty(M)&&(M=E[M]),M=+M,g=+g,s[M]=s[g]=!0;var P="";r.label&&r.label[c]&&(P=r.label[c]);var T=null;P&&l.hasOwnProperty(P)&&(T=l[P]),n.push({pointNumber:c,label:P,color:i?r.color[c]:r.color,hovercolor:a?r.hovercolor[c]:r.hovercolor,customdata:o?r.customdata[c]:r.customdata,concentrationscale:T,source:M,target:g,value:+C}),_.source.push(M),_.target.push(g)}}var F=x+p.length,q=Hk(t.color),V=Hk(t.customdata),H=[];for(c=0;c<F;c++)if(s[c]){var X=t.label[c];H.push({group:c>x-1,childrenNodes:[],pointNumber:c,label:X,color:q?t.color[c]:t.color,customdata:V?t.customdata[c]:t.customdata})}var G=!1;return AWt(F,_.source,_.target)&&(G=!0),{circular:G,links:n,nodes:H,groups:p,groupLookup:E}}function AWt(e,t,r){for(var n=kA.init2dArray(e,0),i=0;i<Math.min(t.length,r.length);i++)if(kA.isIndex(t[i],e)&&kA.isIndex(r[i],e)){if(t[i]===r[i])return!0;n[t[i]].push(r[i])}var a=bWt(n);return a.components.some(function(o){return o.length>1})}fje.exports=function(t,r){var n=TWt(r);return wWt({circular:n.circular,_nodes:n.nodes,_links:n.links,_groups:n.groups,_groupLookup:n.groupLookup})}});var vje=ye((f7,dje)=>{(function(e,t){typeof f7=="object"&&typeof dje!="undefined"?t(f7):(e=e||self,t(e.d3=e.d3||{}))})(f7,function(e){"use strict";function t(C){var M=+this._x.call(null,C),g=+this._y.call(null,C);return r(this.cover(M,g),M,g,C)}function r(C,M,g,P){if(isNaN(M)||isNaN(g))return C;var T,F=C._root,q={data:P},V=C._x0,H=C._y0,X=C._x1,G=C._y1,N,W,re,ae,_e,Me,ke,ge;if(!F)return C._root=q,C;for(;F.length;)if((_e=M>=(N=(V+X)/2))?V=N:X=N,(Me=g>=(W=(H+G)/2))?H=W:G=W,T=F,!(F=F[ke=Me<<1|_e]))return T[ke]=q,C;if(re=+C._x.call(null,F.data),ae=+C._y.call(null,F.data),M===re&&g===ae)return q.next=F,T?T[ke]=q:C._root=q,C;do T=T?T[ke]=new Array(4):C._root=new Array(4),(_e=M>=(N=(V+X)/2))?V=N:X=N,(Me=g>=(W=(H+G)/2))?H=W:G=W;while((ke=Me<<1|_e)===(ge=(ae>=W)<<1|re>=N));return T[ge]=F,T[ke]=q,C}function n(C){var M,g,P=C.length,T,F,q=new Array(P),V=new Array(P),H=1/0,X=1/0,G=-1/0,N=-1/0;for(g=0;g<P;++g)isNaN(T=+this._x.call(null,M=C[g]))||isNaN(F=+this._y.call(null,M))||(q[g]=T,V[g]=F,T<H&&(H=T),T>G&&(G=T),F<X&&(X=F),F>N&&(N=F));if(H>G||X>N)return this;for(this.cover(H,X).cover(G,N),g=0;g<P;++g)r(this,q[g],V[g],C[g]);return this}function i(C,M){if(isNaN(C=+C)||isNaN(M=+M))return this;var g=this._x0,P=this._y0,T=this._x1,F=this._y1;if(isNaN(g))T=(g=Math.floor(C))+1,F=(P=Math.floor(M))+1;else{for(var q=T-g,V=this._root,H,X;g>C||C>=T||P>M||M>=F;)switch(X=(M<P)<<1|C<g,H=new Array(4),H[X]=V,V=H,q*=2,X){case 0:T=g+q,F=P+q;break;case 1:g=T-q,F=P+q;break;case 2:T=g+q,P=F-q;break;case 3:g=T-q,P=F-q;break}this._root&&this._root.length&&(this._root=V)}return this._x0=g,this._y0=P,this._x1=T,this._y1=F,this}function a(){var C=[];return this.visit(function(M){if(!M.length)do C.push(M.data);while(M=M.next)}),C}function o(C){return arguments.length?this.cover(+C[0][0],+C[0][1]).cover(+C[1][0],+C[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function s(C,M,g,P,T){this.node=C,this.x0=M,this.y0=g,this.x1=P,this.y1=T}function l(C,M,g){var P,T=this._x0,F=this._y0,q,V,H,X,G=this._x1,N=this._y1,W=[],re=this._root,ae,_e;for(re&&W.push(new s(re,T,F,G,N)),g==null?g=1/0:(T=C-g,F=M-g,G=C+g,N=M+g,g*=g);ae=W.pop();)if(!(!(re=ae.node)||(q=ae.x0)>G||(V=ae.y0)>N||(H=ae.x1)<T||(X=ae.y1)<F))if(re.length){var Me=(q+H)/2,ke=(V+X)/2;W.push(new s(re[3],Me,ke,H,X),new s(re[2],q,ke,Me,X),new s(re[1],Me,V,H,ke),new s(re[0],q,V,Me,ke)),(_e=(M>=ke)<<1|C>=Me)&&(ae=W[W.length-1],W[W.length-1]=W[W.length-1-_e],W[W.length-1-_e]=ae)}else{var ge=C-+this._x.call(null,re.data),ie=M-+this._y.call(null,re.data),Te=ge*ge+ie*ie;if(Te<g){var Ee=Math.sqrt(g=Te);T=C-Ee,F=M-Ee,G=C+Ee,N=M+Ee,P=re.data}}return P}function u(C){if(isNaN(G=+this._x.call(null,C))||isNaN(N=+this._y.call(null,C)))return this;var M,g=this._root,P,T,F,q=this._x0,V=this._y0,H=this._x1,X=this._y1,G,N,W,re,ae,_e,Me,ke;if(!g)return this;if(g.length)for(;;){if((ae=G>=(W=(q+H)/2))?q=W:H=W,(_e=N>=(re=(V+X)/2))?V=re:X=re,M=g,!(g=g[Me=_e<<1|ae]))return this;if(!g.length)break;(M[Me+1&3]||M[Me+2&3]||M[Me+3&3])&&(P=M,ke=Me)}for(;g.data!==C;)if(T=g,!(g=g.next))return this;return(F=g.next)&&delete g.next,T?(F?T.next=F:delete T.next,this):M?(F?M[Me]=F:delete M[Me],(g=M[0]||M[1]||M[2]||M[3])&&g===(M[3]||M[2]||M[1]||M[0])&&!g.length&&(P?P[ke]=g:this._root=g),this):(this._root=F,this)}function c(C){for(var M=0,g=C.length;M<g;++M)this.remove(C[M]);return this}function f(){return this._root}function h(){var C=0;return this.visit(function(M){if(!M.length)do++C;while(M=M.next)}),C}function d(C){var M=[],g,P=this._root,T,F,q,V,H;for(P&&M.push(new s(P,this._x0,this._y0,this._x1,this._y1));g=M.pop();)if(!C(P=g.node,F=g.x0,q=g.y0,V=g.x1,H=g.y1)&&P.length){var X=(F+V)/2,G=(q+H)/2;(T=P[3])&&M.push(new s(T,X,G,V,H)),(T=P[2])&&M.push(new s(T,F,G,X,H)),(T=P[1])&&M.push(new s(T,X,q,V,G)),(T=P[0])&&M.push(new s(T,F,q,X,G))}return this}function v(C){var M=[],g=[],P;for(this._root&&M.push(new s(this._root,this._x0,this._y0,this._x1,this._y1));P=M.pop();){var T=P.node;if(T.length){var F,q=P.x0,V=P.y0,H=P.x1,X=P.y1,G=(q+H)/2,N=(V+X)/2;(F=T[0])&&M.push(new s(F,q,V,G,N)),(F=T[1])&&M.push(new s(F,G,V,H,N)),(F=T[2])&&M.push(new s(F,q,N,G,X)),(F=T[3])&&M.push(new s(F,G,N,H,X))}g.push(P)}for(;P=g.pop();)C(P.node,P.x0,P.y0,P.x1,P.y1);return this}function x(C){return C[0]}function b(C){return arguments.length?(this._x=C,this):this._x}function p(C){return C[1]}function E(C){return arguments.length?(this._y=C,this):this._y}function k(C,M,g){var P=new A(M==null?x:M,g==null?p:g,NaN,NaN,NaN,NaN);return C==null?P:P.addAll(C)}function A(C,M,g,P,T,F){this._x=C,this._y=M,this._x0=g,this._y0=P,this._x1=T,this._y1=F,this._root=void 0}function L(C){for(var M={data:C.data},g=M;C=C.next;)g=g.next={data:C.data};return M}var _=k.prototype=A.prototype;_.copy=function(){var C=new A(this._x,this._y,this._x0,this._y0,this._x1,this._y1),M=this._root,g,P;if(!M)return C;if(!M.length)return C._root=L(M),C;for(g=[{source:M,target:C._root=new Array(4)}];M=g.pop();)for(var T=0;T<4;++T)(P=M.source[T])&&(P.length?g.push({source:P,target:M.target[T]=new Array(4)}):M.target[T]=L(P));return C},_.add=t,_.addAll=n,_.cover=i,_.data=a,_.extent=o,_.find=l,_.remove=u,_.removeAll=c,_.root=f,_.size=h,_.visit=d,_.visitAfter=v,_.x=b,_.y=E,e.quadtree=k,Object.defineProperty(e,"__esModule",{value:!0})})});var d7=ye((h7,pje)=>{(function(e,t){t(typeof h7=="object"&&typeof pje!="undefined"?h7:e.d3=e.d3||{})})(h7,function(e){"use strict";var t="$";function r(){}r.prototype=n.prototype={constructor:r,has:function(x){return t+x in this},get:function(x){return this[t+x]},set:function(x,b){return this[t+x]=b,this},remove:function(x){var b=t+x;return b in this&&delete this[b]},clear:function(){for(var x in this)x[0]===t&&delete this[x]},keys:function(){var x=[];for(var b in this)b[0]===t&&x.push(b.slice(1));return x},values:function(){var x=[];for(var b in this)b[0]===t&&x.push(this[b]);return x},entries:function(){var x=[];for(var b in this)b[0]===t&&x.push({key:b.slice(1),value:this[b]});return x},size:function(){var x=0;for(var b in this)b[0]===t&&++x;return x},empty:function(){for(var x in this)if(x[0]===t)return!1;return!0},each:function(x){for(var b in this)b[0]===t&&x(this[b],b.slice(1),this)}};function n(x,b){var p=new r;if(x instanceof r)x.each(function(_,C){p.set(C,_)});else if(Array.isArray(x)){var E=-1,k=x.length,A;if(b==null)for(;++E<k;)p.set(E,x[E]);else for(;++E<k;)p.set(b(A=x[E],E,x),A)}else if(x)for(var L in x)p.set(L,x[L]);return p}function i(){var x=[],b=[],p,E,k;function A(_,C,M,g){if(C>=x.length)return p!=null&&_.sort(p),E!=null?E(_):_;for(var P=-1,T=_.length,F=x[C++],q,V,H=n(),X,G=M();++P<T;)(X=H.get(q=F(V=_[P])+""))?X.push(V):H.set(q,[V]);return H.each(function(N,W){g(G,W,A(N,C,M,g))}),G}function L(_,C){if(++C>x.length)return _;var M,g=b[C-1];return E!=null&&C>=x.length?M=_.entries():(M=[],_.each(function(P,T){M.push({key:T,values:L(P,C)})})),g!=null?M.sort(function(P,T){return g(P.key,T.key)}):M}return k={object:function(_){return A(_,0,a,o)},map:function(_){return A(_,0,s,l)},entries:function(_){return L(A(_,0,s,l),0)},key:function(_){return x.push(_),k},sortKeys:function(_){return b[x.length-1]=_,k},sortValues:function(_){return p=_,k},rollup:function(_){return E=_,k}}}function a(){return{}}function o(x,b,p){x[b]=p}function s(){return n()}function l(x,b,p){x.set(b,p)}function u(){}var c=n.prototype;u.prototype=f.prototype={constructor:u,has:c.has,add:function(x){return x+="",this[t+x]=x,this},remove:c.remove,clear:c.clear,values:c.keys,size:c.size,empty:c.empty,each:c.each};function f(x,b){var p=new u;if(x instanceof u)x.each(function(A){p.add(A)});else if(x){var E=-1,k=x.length;if(b==null)for(;++E<k;)p.add(x[E]);else for(;++E<k;)p.add(b(x[E],E,x))}return p}function h(x){var b=[];for(var p in x)b.push(p);return b}function d(x){var b=[];for(var p in x)b.push(x[p]);return b}function v(x){var b=[];for(var p in x)b.push({key:p,value:x[p]});return b}e.nest=i,e.set=f,e.map=n,e.keys=h,e.values=d,e.entries=v,Object.defineProperty(e,"__esModule",{value:!0})})});var mje=ye((v7,gje)=>{(function(e,t){typeof v7=="object"&&typeof gje!="undefined"?t(v7):(e=e||self,t(e.d3=e.d3||{}))})(v7,function(e){"use strict";var t={value:function(){}};function r(){for(var s=0,l=arguments.length,u={},c;s<l;++s){if(!(c=arguments[s]+"")||c in u||/[\s.]/.test(c))throw new Error("illegal type: "+c);u[c]=[]}return new n(u)}function n(s){this._=s}function i(s,l){return s.trim().split(/^|\s+/).map(function(u){var c="",f=u.indexOf(".");if(f>=0&&(c=u.slice(f+1),u=u.slice(0,f)),u&&!l.hasOwnProperty(u))throw new Error("unknown type: "+u);return{type:u,name:c}})}n.prototype=r.prototype={constructor:n,on:function(s,l){var u=this._,c=i(s+"",u),f,h=-1,d=c.length;if(arguments.length<2){for(;++h<d;)if((f=(s=c[h]).type)&&(f=a(u[f],s.name)))return f;return}if(l!=null&&typeof l!="function")throw new Error("invalid callback: "+l);for(;++h<d;)if(f=(s=c[h]).type)u[f]=o(u[f],s.name,l);else if(l==null)for(f in u)u[f]=o(u[f],s.name,null);return this},copy:function(){var s={},l=this._;for(var u in l)s[u]=l[u].slice();return new n(s)},call:function(s,l){if((f=arguments.length-2)>0)for(var u=new Array(f),c=0,f,h;c<f;++c)u[c]=arguments[c+2];if(!this._.hasOwnProperty(s))throw new Error("unknown type: "+s);for(h=this._[s],c=0,f=h.length;c<f;++c)h[c].value.apply(l,u)},apply:function(s,l,u){if(!this._.hasOwnProperty(s))throw new Error("unknown type: "+s);for(var c=this._[s],f=0,h=c.length;f<h;++f)c[f].value.apply(l,u)}};function a(s,l){for(var u=0,c=s.length,f;u<c;++u)if((f=s[u]).name===l)return f.value}function o(s,l,u){for(var c=0,f=s.length;c<f;++c)if(s[c].name===l){s[c]=t,s=s.slice(0,c).concat(s.slice(c+1));break}return u!=null&&s.push({name:l,value:u}),s}e.dispatch=r,Object.defineProperty(e,"__esModule",{value:!0})})});var _je=ye((p7,yje)=>{(function(e,t){typeof p7=="object"&&typeof yje!="undefined"?t(p7):(e=e||self,t(e.d3=e.d3||{}))})(p7,function(e){"use strict";var t=0,r=0,n=0,i=1e3,a,o,s=0,l=0,u=0,c=typeof performance=="object"&&performance.now?performance:Date,f=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(C){setTimeout(C,17)};function h(){return l||(f(d),l=c.now()+u)}function d(){l=0}function v(){this._call=this._time=this._next=null}v.prototype=x.prototype={constructor:v,restart:function(C,M,g){if(typeof C!="function")throw new TypeError("callback is not a function");g=(g==null?h():+g)+(M==null?0:+M),!this._next&&o!==this&&(o?o._next=this:a=this,o=this),this._call=C,this._time=g,A()},stop:function(){this._call&&(this._call=null,this._time=1/0,A())}};function x(C,M,g){var P=new v;return P.restart(C,M,g),P}function b(){h(),++t;for(var C=a,M;C;)(M=l-C._time)>=0&&C._call.call(null,M),C=C._next;--t}function p(){l=(s=c.now())+u,t=r=0;try{b()}finally{t=0,k(),l=0}}function E(){var C=c.now(),M=C-s;M>i&&(u-=M,s=C)}function k(){for(var C,M=a,g,P=1/0;M;)M._call?(P>M._time&&(P=M._time),C=M,M=M._next):(g=M._next,M._next=null,M=C?C._next=g:a=g);o=C,A(P)}function A(C){if(!t){r&&(r=clearTimeout(r));var M=C-l;M>24?(C<1/0&&(r=setTimeout(p,C-c.now()-u)),n&&(n=clearInterval(n))):(n||(s=c.now(),n=setInterval(E,i)),t=1,f(p))}}function L(C,M,g){var P=new v;return M=M==null?0:+M,P.restart(function(T){P.stop(),C(T+M)},M,g),P}function _(C,M,g){var P=new v,T=M;return M==null?(P.restart(C,M,g),P):(M=+M,g=g==null?h():+g,P.restart(function F(q){q+=T,P.restart(F,T+=M,g),C(q)},M,g),P)}e.interval=_,e.now=h,e.timeout=L,e.timer=x,e.timerFlush=b,Object.defineProperty(e,"__esModule",{value:!0})})});var bje=ye((g7,xje)=>{(function(e,t){typeof g7=="object"&&typeof xje!="undefined"?t(g7,vje(),d7(),mje(),_je()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,e.d3)})(g7,function(e,t,r,n,i){"use strict";function a(C,M){var g;C==null&&(C=0),M==null&&(M=0);function P(){var T,F=g.length,q,V=0,H=0;for(T=0;T<F;++T)q=g[T],V+=q.x,H+=q.y;for(V=V/F-C,H=H/F-M,T=0;T<F;++T)q=g[T],q.x-=V,q.y-=H}return P.initialize=function(T){g=T},P.x=function(T){return arguments.length?(C=+T,P):C},P.y=function(T){return arguments.length?(M=+T,P):M},P}function o(C){return function(){return C}}function s(){return(Math.random()-.5)*1e-6}function l(C){return C.x+C.vx}function u(C){return C.y+C.vy}function c(C){var M,g,P=1,T=1;typeof C!="function"&&(C=o(C==null?1:+C));function F(){for(var H,X=M.length,G,N,W,re,ae,_e,Me=0;Me<T;++Me)for(G=t.quadtree(M,l,u).visitAfter(q),H=0;H<X;++H)N=M[H],ae=g[N.index],_e=ae*ae,W=N.x+N.vx,re=N.y+N.vy,G.visit(ke);function ke(ge,ie,Te,Ee,Ae){var ze=ge.data,Ce=ge.r,me=ae+Ce;if(ze){if(ze.index>N.index){var Re=W-ze.x-ze.vx,ce=re-ze.y-ze.vy,Ge=Re*Re+ce*ce;Ge<me*me&&(Re===0&&(Re=s(),Ge+=Re*Re),ce===0&&(ce=s(),Ge+=ce*ce),Ge=(me-(Ge=Math.sqrt(Ge)))/Ge*P,N.vx+=(Re*=Ge)*(me=(Ce*=Ce)/(_e+Ce)),N.vy+=(ce*=Ge)*me,ze.vx-=Re*(me=1-me),ze.vy-=ce*me)}return}return ie>W+me||Ee<W-me||Te>re+me||Ae<re-me}}function q(H){if(H.data)return H.r=g[H.data.index];for(var X=H.r=0;X<4;++X)H[X]&&H[X].r>H.r&&(H.r=H[X].r)}function V(){if(M){var H,X=M.length,G;for(g=new Array(X),H=0;H<X;++H)G=M[H],g[G.index]=+C(G,H,M)}}return F.initialize=function(H){M=H,V()},F.iterations=function(H){return arguments.length?(T=+H,F):T},F.strength=function(H){return arguments.length?(P=+H,F):P},F.radius=function(H){return arguments.length?(C=typeof H=="function"?H:o(+H),V(),F):C},F}function f(C){return C.index}function h(C,M){var g=C.get(M);if(!g)throw new Error("missing: "+M);return g}function d(C){var M=f,g=G,P,T=o(30),F,q,V,H,X=1;C==null&&(C=[]);function G(_e){return 1/Math.min(V[_e.source.index],V[_e.target.index])}function N(_e){for(var Me=0,ke=C.length;Me<X;++Me)for(var ge=0,ie,Te,Ee,Ae,ze,Ce,me;ge<ke;++ge)ie=C[ge],Te=ie.source,Ee=ie.target,Ae=Ee.x+Ee.vx-Te.x-Te.vx||s(),ze=Ee.y+Ee.vy-Te.y-Te.vy||s(),Ce=Math.sqrt(Ae*Ae+ze*ze),Ce=(Ce-F[ge])/Ce*_e*P[ge],Ae*=Ce,ze*=Ce,Ee.vx-=Ae*(me=H[ge]),Ee.vy-=ze*me,Te.vx+=Ae*(me=1-me),Te.vy+=ze*me}function W(){if(q){var _e,Me=q.length,ke=C.length,ge=r.map(q,M),ie;for(_e=0,V=new Array(Me);_e<ke;++_e)ie=C[_e],ie.index=_e,typeof ie.source!="object"&&(ie.source=h(ge,ie.source)),typeof ie.target!="object"&&(ie.target=h(ge,ie.target)),V[ie.source.index]=(V[ie.source.index]||0)+1,V[ie.target.index]=(V[ie.target.index]||0)+1;for(_e=0,H=new Array(ke);_e<ke;++_e)ie=C[_e],H[_e]=V[ie.source.index]/(V[ie.source.index]+V[ie.target.index]);P=new Array(ke),re(),F=new Array(ke),ae()}}function re(){if(q)for(var _e=0,Me=C.length;_e<Me;++_e)P[_e]=+g(C[_e],_e,C)}function ae(){if(q)for(var _e=0,Me=C.length;_e<Me;++_e)F[_e]=+T(C[_e],_e,C)}return N.initialize=function(_e){q=_e,W()},N.links=function(_e){return arguments.length?(C=_e,W(),N):C},N.id=function(_e){return arguments.length?(M=_e,N):M},N.iterations=function(_e){return arguments.length?(X=+_e,N):X},N.strength=function(_e){return arguments.length?(g=typeof _e=="function"?_e:o(+_e),re(),N):g},N.distance=function(_e){return arguments.length?(T=typeof _e=="function"?_e:o(+_e),ae(),N):T},N}function v(C){return C.x}function x(C){return C.y}var b=10,p=Math.PI*(3-Math.sqrt(5));function E(C){var M,g=1,P=.001,T=1-Math.pow(P,1/300),F=0,q=.6,V=r.map(),H=i.timer(G),X=n.dispatch("tick","end");C==null&&(C=[]);function G(){N(),X.call("tick",M),g<P&&(H.stop(),X.call("end",M))}function N(ae){var _e,Me=C.length,ke;ae===void 0&&(ae=1);for(var ge=0;ge<ae;++ge)for(g+=(F-g)*T,V.each(function(ie){ie(g)}),_e=0;_e<Me;++_e)ke=C[_e],ke.fx==null?ke.x+=ke.vx*=q:(ke.x=ke.fx,ke.vx=0),ke.fy==null?ke.y+=ke.vy*=q:(ke.y=ke.fy,ke.vy=0);return M}function W(){for(var ae=0,_e=C.length,Me;ae<_e;++ae){if(Me=C[ae],Me.index=ae,Me.fx!=null&&(Me.x=Me.fx),Me.fy!=null&&(Me.y=Me.fy),isNaN(Me.x)||isNaN(Me.y)){var ke=b*Math.sqrt(ae),ge=ae*p;Me.x=ke*Math.cos(ge),Me.y=ke*Math.sin(ge)}(isNaN(Me.vx)||isNaN(Me.vy))&&(Me.vx=Me.vy=0)}}function re(ae){return ae.initialize&&ae.initialize(C),ae}return W(),M={tick:N,restart:function(){return H.restart(G),M},stop:function(){return H.stop(),M},nodes:function(ae){return arguments.length?(C=ae,W(),V.each(re),M):C},alpha:function(ae){return arguments.length?(g=+ae,M):g},alphaMin:function(ae){return arguments.length?(P=+ae,M):P},alphaDecay:function(ae){return arguments.length?(T=+ae,M):+T},alphaTarget:function(ae){return arguments.length?(F=+ae,M):F},velocityDecay:function(ae){return arguments.length?(q=1-ae,M):1-q},force:function(ae,_e){return arguments.length>1?(_e==null?V.remove(ae):V.set(ae,re(_e)),M):V.get(ae)},find:function(ae,_e,Me){var ke=0,ge=C.length,ie,Te,Ee,Ae,ze;for(Me==null?Me=1/0:Me*=Me,ke=0;ke<ge;++ke)Ae=C[ke],ie=ae-Ae.x,Te=_e-Ae.y,Ee=ie*ie+Te*Te,Ee<Me&&(ze=Ae,Me=Ee);return ze},on:function(ae,_e){return arguments.length>1?(X.on(ae,_e),M):X.on(ae)}}}function k(){var C,M,g,P=o(-30),T,F=1,q=1/0,V=.81;function H(W){var re,ae=C.length,_e=t.quadtree(C,v,x).visitAfter(G);for(g=W,re=0;re<ae;++re)M=C[re],_e.visit(N)}function X(){if(C){var W,re=C.length,ae;for(T=new Array(re),W=0;W<re;++W)ae=C[W],T[ae.index]=+P(ae,W,C)}}function G(W){var re=0,ae,_e,Me=0,ke,ge,ie;if(W.length){for(ke=ge=ie=0;ie<4;++ie)(ae=W[ie])&&(_e=Math.abs(ae.value))&&(re+=ae.value,Me+=_e,ke+=_e*ae.x,ge+=_e*ae.y);W.x=ke/Me,W.y=ge/Me}else{ae=W,ae.x=ae.data.x,ae.y=ae.data.y;do re+=T[ae.data.index];while(ae=ae.next)}W.value=re}function N(W,re,ae,_e){if(!W.value)return!0;var Me=W.x-M.x,ke=W.y-M.y,ge=_e-re,ie=Me*Me+ke*ke;if(ge*ge/V<ie)return ie<q&&(Me===0&&(Me=s(),ie+=Me*Me),ke===0&&(ke=s(),ie+=ke*ke),ie<F&&(ie=Math.sqrt(F*ie)),M.vx+=Me*W.value*g/ie,M.vy+=ke*W.value*g/ie),!0;if(W.length||ie>=q)return;(W.data!==M||W.next)&&(Me===0&&(Me=s(),ie+=Me*Me),ke===0&&(ke=s(),ie+=ke*ke),ie<F&&(ie=Math.sqrt(F*ie)));do W.data!==M&&(ge=T[W.data.index]*g/ie,M.vx+=Me*ge,M.vy+=ke*ge);while(W=W.next)}return H.initialize=function(W){C=W,X()},H.strength=function(W){return arguments.length?(P=typeof W=="function"?W:o(+W),X(),H):P},H.distanceMin=function(W){return arguments.length?(F=W*W,H):Math.sqrt(F)},H.distanceMax=function(W){return arguments.length?(q=W*W,H):Math.sqrt(q)},H.theta=function(W){return arguments.length?(V=W*W,H):Math.sqrt(V)},H}function A(C,M,g){var P,T=o(.1),F,q;typeof C!="function"&&(C=o(+C)),M==null&&(M=0),g==null&&(g=0);function V(X){for(var G=0,N=P.length;G<N;++G){var W=P[G],re=W.x-M||1e-6,ae=W.y-g||1e-6,_e=Math.sqrt(re*re+ae*ae),Me=(q[G]-_e)*F[G]*X/_e;W.vx+=re*Me,W.vy+=ae*Me}}function H(){if(P){var X,G=P.length;for(F=new Array(G),q=new Array(G),X=0;X<G;++X)q[X]=+C(P[X],X,P),F[X]=isNaN(q[X])?0:+T(P[X],X,P)}}return V.initialize=function(X){P=X,H()},V.strength=function(X){return arguments.length?(T=typeof X=="function"?X:o(+X),H(),V):T},V.radius=function(X){return arguments.length?(C=typeof X=="function"?X:o(+X),H(),V):C},V.x=function(X){return arguments.length?(M=+X,V):M},V.y=function(X){return arguments.length?(g=+X,V):g},V}function L(C){var M=o(.1),g,P,T;typeof C!="function"&&(C=o(C==null?0:+C));function F(V){for(var H=0,X=g.length,G;H<X;++H)G=g[H],G.vx+=(T[H]-G.x)*P[H]*V}function q(){if(g){var V,H=g.length;for(P=new Array(H),T=new Array(H),V=0;V<H;++V)P[V]=isNaN(T[V]=+C(g[V],V,g))?0:+M(g[V],V,g)}}return F.initialize=function(V){g=V,q()},F.strength=function(V){return arguments.length?(M=typeof V=="function"?V:o(+V),q(),F):M},F.x=function(V){return arguments.length?(C=typeof V=="function"?V:o(+V),q(),F):C},F}function _(C){var M=o(.1),g,P,T;typeof C!="function"&&(C=o(C==null?0:+C));function F(V){for(var H=0,X=g.length,G;H<X;++H)G=g[H],G.vy+=(T[H]-G.y)*P[H]*V}function q(){if(g){var V,H=g.length;for(P=new Array(H),T=new Array(H),V=0;V<H;++V)P[V]=isNaN(T[V]=+C(g[V],V,g))?0:+M(g[V],V,g)}}return F.initialize=function(V){g=V,q()},F.strength=function(V){return arguments.length?(M=typeof V=="function"?V:o(+V),q(),F):M},F.y=function(V){return arguments.length?(C=typeof V=="function"?V:o(+V),q(),F):C},F}e.forceCenter=a,e.forceCollide=c,e.forceLink=d,e.forceManyBody=k,e.forceRadial=A,e.forceSimulation=E,e.forceX=L,e.forceY=_,Object.defineProperty(e,"__esModule",{value:!0})})});var Tje=ye((m7,wje)=>{(function(e,t){typeof m7=="object"&&typeof wje!="undefined"?t(m7):(e=e||self,t(e.d3=e.d3||{}))})(m7,function(e){"use strict";var t=Math.PI,r=2*t,n=1e-6,i=r-n;function a(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function o(){return new a}a.prototype=o.prototype={constructor:a,moveTo:function(s,l){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(s,l){this._+="L"+(this._x1=+s)+","+(this._y1=+l)},quadraticCurveTo:function(s,l,u,c){this._+="Q"+ +s+","+ +l+","+(this._x1=+u)+","+(this._y1=+c)},bezierCurveTo:function(s,l,u,c,f,h){this._+="C"+ +s+","+ +l+","+ +u+","+ +c+","+(this._x1=+f)+","+(this._y1=+h)},arcTo:function(s,l,u,c,f){s=+s,l=+l,u=+u,c=+c,f=+f;var h=this._x1,d=this._y1,v=u-s,x=c-l,b=h-s,p=d-l,E=b*b+p*p;if(f<0)throw new Error("negative radius: "+f);if(this._x1===null)this._+="M"+(this._x1=s)+","+(this._y1=l);else if(E>n)if(!(Math.abs(p*v-x*b)>n)||!f)this._+="L"+(this._x1=s)+","+(this._y1=l);else{var k=u-h,A=c-d,L=v*v+x*x,_=k*k+A*A,C=Math.sqrt(L),M=Math.sqrt(E),g=f*Math.tan((t-Math.acos((L+E-_)/(2*C*M)))/2),P=g/M,T=g/C;Math.abs(P-1)>n&&(this._+="L"+(s+P*b)+","+(l+P*p)),this._+="A"+f+","+f+",0,0,"+ +(p*k>b*A)+","+(this._x1=s+T*v)+","+(this._y1=l+T*x)}},arc:function(s,l,u,c,f,h){s=+s,l=+l,u=+u,h=!!h;var d=u*Math.cos(c),v=u*Math.sin(c),x=s+d,b=l+v,p=1^h,E=h?c-f:f-c;if(u<0)throw new Error("negative radius: "+u);this._x1===null?this._+="M"+x+","+b:(Math.abs(this._x1-x)>n||Math.abs(this._y1-b)>n)&&(this._+="L"+x+","+b),u&&(E<0&&(E=E%r+r),E>i?this._+="A"+u+","+u+",0,1,"+p+","+(s-d)+","+(l-v)+"A"+u+","+u+",0,1,"+p+","+(this._x1=x)+","+(this._y1=b):E>n&&(this._+="A"+u+","+u+",0,"+ +(E>=t)+","+p+","+(this._x1=s+u*Math.cos(f))+","+(this._y1=l+u*Math.sin(f))))},rect:function(s,l,u,c){this._+="M"+(this._x0=this._x1=+s)+","+(this._y0=this._y1=+l)+"h"+ +u+"v"+ +c+"h"+-u+"Z"},toString:function(){return this._}},e.path=o,Object.defineProperty(e,"__esModule",{value:!0})})});var PJ=ye((y7,Aje)=>{(function(e,t){typeof y7=="object"&&typeof Aje!="undefined"?t(y7,Tje()):(e=e||self,t(e.d3=e.d3||{},e.d3))})(y7,function(e,t){"use strict";function r(_t){return function(){return _t}}var n=Math.abs,i=Math.atan2,a=Math.cos,o=Math.max,s=Math.min,l=Math.sin,u=Math.sqrt,c=1e-12,f=Math.PI,h=f/2,d=2*f;function v(_t){return _t>1?0:_t<-1?f:Math.acos(_t)}function x(_t){return _t>=1?h:_t<=-1?-h:Math.asin(_t)}function b(_t){return _t.innerRadius}function p(_t){return _t.outerRadius}function E(_t){return _t.startAngle}function k(_t){return _t.endAngle}function A(_t){return _t&&_t.padAngle}function L(_t,br,Hr,ti,zi,Yi,an,hi){var Ji=Hr-_t,ua=ti-br,Fn=an-zi,Sa=hi-Yi,go=Sa*Ji-Fn*ua;if(!(go*go<c))return go=(Fn*(br-Yi)-Sa*(_t-zi))/go,[_t+go*Ji,br+go*ua]}function _(_t,br,Hr,ti,zi,Yi,an){var hi=_t-Hr,Ji=br-ti,ua=(an?Yi:-Yi)/u(hi*hi+Ji*Ji),Fn=ua*Ji,Sa=-ua*hi,go=_t+Fn,Oo=br+Sa,ho=Hr+Fn,Mo=ti+Sa,xo=(go+ho)/2,zs=(Oo+Mo)/2,ks=ho-go,Zs=Mo-Oo,Xs=ks*ks+Zs*Zs,wl=zi-Yi,os=go*Mo-ho*Oo,cl=(Zs<0?-1:1)*u(o(0,wl*wl*Xs-os*os)),Cs=(os*Zs-ks*cl)/Xs,ml=(-os*ks-Zs*cl)/Xs,Ys=(os*Zs+ks*cl)/Xs,Hs=(-os*ks+Zs*cl)/Xs,Eo=Cs-xo,fs=ml-zs,Ql=Ys-xo,Hu=Hs-zs;return Eo*Eo+fs*fs>Ql*Ql+Hu*Hu&&(Cs=Ys,ml=Hs),{cx:Cs,cy:ml,x01:-Fn,y01:-Sa,x11:Cs*(zi/wl-1),y11:ml*(zi/wl-1)}}function C(){var _t=b,br=p,Hr=r(0),ti=null,zi=E,Yi=k,an=A,hi=null;function Ji(){var ua,Fn,Sa=+_t.apply(this,arguments),go=+br.apply(this,arguments),Oo=zi.apply(this,arguments)-h,ho=Yi.apply(this,arguments)-h,Mo=n(ho-Oo),xo=ho>Oo;if(hi||(hi=ua=t.path()),go<Sa&&(Fn=go,go=Sa,Sa=Fn),!(go>c))hi.moveTo(0,0);else if(Mo>d-c)hi.moveTo(go*a(Oo),go*l(Oo)),hi.arc(0,0,go,Oo,ho,!xo),Sa>c&&(hi.moveTo(Sa*a(ho),Sa*l(ho)),hi.arc(0,0,Sa,ho,Oo,xo));else{var zs=Oo,ks=ho,Zs=Oo,Xs=ho,wl=Mo,os=Mo,cl=an.apply(this,arguments)/2,Cs=cl>c&&(ti?+ti.apply(this,arguments):u(Sa*Sa+go*go)),ml=s(n(go-Sa)/2,+Hr.apply(this,arguments)),Ys=ml,Hs=ml,Eo,fs;if(Cs>c){var Ql=x(Cs/Sa*l(cl)),Hu=x(Cs/go*l(cl));(wl-=Ql*2)>c?(Ql*=xo?1:-1,Zs+=Ql,Xs-=Ql):(wl=0,Zs=Xs=(Oo+ho)/2),(os-=Hu*2)>c?(Hu*=xo?1:-1,zs+=Hu,ks-=Hu):(os=0,zs=ks=(Oo+ho)/2)}var fc=go*a(zs),ms=go*l(zs),on=Sa*a(Xs),fa=Sa*l(Xs);if(ml>c){var Qu=go*a(ks),Rl=go*l(ks),vo=Sa*a(Zs),Zl=Sa*l(Zs),Ks;if(Mo<f&&(Ks=L(fc,ms,vo,Zl,Qu,Rl,on,fa))){var Xl=fc-Ks[0],Ec=ms-Ks[1],Zn=Qu-Ks[0],ko=Rl-Ks[1],Co=1/l(v((Xl*Zn+Ec*ko)/(u(Xl*Xl+Ec*Ec)*u(Zn*Zn+ko*ko)))/2),Tl=u(Ks[0]*Ks[0]+Ks[1]*Ks[1]);Ys=s(ml,(Sa-Tl)/(Co-1)),Hs=s(ml,(go-Tl)/(Co+1))}}os>c?Hs>c?(Eo=_(vo,Zl,fc,ms,go,Hs,xo),fs=_(Qu,Rl,on,fa,go,Hs,xo),hi.moveTo(Eo.cx+Eo.x01,Eo.cy+Eo.y01),Hs<ml?hi.arc(Eo.cx,Eo.cy,Hs,i(Eo.y01,Eo.x01),i(fs.y01,fs.x01),!xo):(hi.arc(Eo.cx,Eo.cy,Hs,i(Eo.y01,Eo.x01),i(Eo.y11,Eo.x11),!xo),hi.arc(0,0,go,i(Eo.cy+Eo.y11,Eo.cx+Eo.x11),i(fs.cy+fs.y11,fs.cx+fs.x11),!xo),hi.arc(fs.cx,fs.cy,Hs,i(fs.y11,fs.x11),i(fs.y01,fs.x01),!xo))):(hi.moveTo(fc,ms),hi.arc(0,0,go,zs,ks,!xo)):hi.moveTo(fc,ms),!(Sa>c)||!(wl>c)?hi.lineTo(on,fa):Ys>c?(Eo=_(on,fa,Qu,Rl,Sa,-Ys,xo),fs=_(fc,ms,vo,Zl,Sa,-Ys,xo),hi.lineTo(Eo.cx+Eo.x01,Eo.cy+Eo.y01),Ys<ml?hi.arc(Eo.cx,Eo.cy,Ys,i(Eo.y01,Eo.x01),i(fs.y01,fs.x01),!xo):(hi.arc(Eo.cx,Eo.cy,Ys,i(Eo.y01,Eo.x01),i(Eo.y11,Eo.x11),!xo),hi.arc(0,0,Sa,i(Eo.cy+Eo.y11,Eo.cx+Eo.x11),i(fs.cy+fs.y11,fs.cx+fs.x11),xo),hi.arc(fs.cx,fs.cy,Ys,i(fs.y11,fs.x11),i(fs.y01,fs.x01),!xo))):hi.arc(0,0,Sa,Xs,Zs,xo)}if(hi.closePath(),ua)return hi=null,ua+""||null}return Ji.centroid=function(){var ua=(+_t.apply(this,arguments)+ +br.apply(this,arguments))/2,Fn=(+zi.apply(this,arguments)+ +Yi.apply(this,arguments))/2-f/2;return[a(Fn)*ua,l(Fn)*ua]},Ji.innerRadius=function(ua){return arguments.length?(_t=typeof ua=="function"?ua:r(+ua),Ji):_t},Ji.outerRadius=function(ua){return arguments.length?(br=typeof ua=="function"?ua:r(+ua),Ji):br},Ji.cornerRadius=function(ua){return arguments.length?(Hr=typeof ua=="function"?ua:r(+ua),Ji):Hr},Ji.padRadius=function(ua){return arguments.length?(ti=ua==null?null:typeof ua=="function"?ua:r(+ua),Ji):ti},Ji.startAngle=function(ua){return arguments.length?(zi=typeof ua=="function"?ua:r(+ua),Ji):zi},Ji.endAngle=function(ua){return arguments.length?(Yi=typeof ua=="function"?ua:r(+ua),Ji):Yi},Ji.padAngle=function(ua){return arguments.length?(an=typeof ua=="function"?ua:r(+ua),Ji):an},Ji.context=function(ua){return arguments.length?(hi=ua==null?null:ua,Ji):hi},Ji}function M(_t){this._context=_t}M.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){switch(_t=+_t,br=+br,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,br):this._context.moveTo(_t,br);break;case 1:this._point=2;default:this._context.lineTo(_t,br);break}}};function g(_t){return new M(_t)}function P(_t){return _t[0]}function T(_t){return _t[1]}function F(){var _t=P,br=T,Hr=r(!0),ti=null,zi=g,Yi=null;function an(hi){var Ji,ua=hi.length,Fn,Sa=!1,go;for(ti==null&&(Yi=zi(go=t.path())),Ji=0;Ji<=ua;++Ji)!(Ji<ua&&Hr(Fn=hi[Ji],Ji,hi))===Sa&&((Sa=!Sa)?Yi.lineStart():Yi.lineEnd()),Sa&&Yi.point(+_t(Fn,Ji,hi),+br(Fn,Ji,hi));if(go)return Yi=null,go+""||null}return an.x=function(hi){return arguments.length?(_t=typeof hi=="function"?hi:r(+hi),an):_t},an.y=function(hi){return arguments.length?(br=typeof hi=="function"?hi:r(+hi),an):br},an.defined=function(hi){return arguments.length?(Hr=typeof hi=="function"?hi:r(!!hi),an):Hr},an.curve=function(hi){return arguments.length?(zi=hi,ti!=null&&(Yi=zi(ti)),an):zi},an.context=function(hi){return arguments.length?(hi==null?ti=Yi=null:Yi=zi(ti=hi),an):ti},an}function q(){var _t=P,br=null,Hr=r(0),ti=T,zi=r(!0),Yi=null,an=g,hi=null;function Ji(Fn){var Sa,go,Oo,ho=Fn.length,Mo,xo=!1,zs,ks=new Array(ho),Zs=new Array(ho);for(Yi==null&&(hi=an(zs=t.path())),Sa=0;Sa<=ho;++Sa){if(!(Sa<ho&&zi(Mo=Fn[Sa],Sa,Fn))===xo)if(xo=!xo)go=Sa,hi.areaStart(),hi.lineStart();else{for(hi.lineEnd(),hi.lineStart(),Oo=Sa-1;Oo>=go;--Oo)hi.point(ks[Oo],Zs[Oo]);hi.lineEnd(),hi.areaEnd()}xo&&(ks[Sa]=+_t(Mo,Sa,Fn),Zs[Sa]=+Hr(Mo,Sa,Fn),hi.point(br?+br(Mo,Sa,Fn):ks[Sa],ti?+ti(Mo,Sa,Fn):Zs[Sa]))}if(zs)return hi=null,zs+""||null}function ua(){return F().defined(zi).curve(an).context(Yi)}return Ji.x=function(Fn){return arguments.length?(_t=typeof Fn=="function"?Fn:r(+Fn),br=null,Ji):_t},Ji.x0=function(Fn){return arguments.length?(_t=typeof Fn=="function"?Fn:r(+Fn),Ji):_t},Ji.x1=function(Fn){return arguments.length?(br=Fn==null?null:typeof Fn=="function"?Fn:r(+Fn),Ji):br},Ji.y=function(Fn){return arguments.length?(Hr=typeof Fn=="function"?Fn:r(+Fn),ti=null,Ji):Hr},Ji.y0=function(Fn){return arguments.length?(Hr=typeof Fn=="function"?Fn:r(+Fn),Ji):Hr},Ji.y1=function(Fn){return arguments.length?(ti=Fn==null?null:typeof Fn=="function"?Fn:r(+Fn),Ji):ti},Ji.lineX0=Ji.lineY0=function(){return ua().x(_t).y(Hr)},Ji.lineY1=function(){return ua().x(_t).y(ti)},Ji.lineX1=function(){return ua().x(br).y(Hr)},Ji.defined=function(Fn){return arguments.length?(zi=typeof Fn=="function"?Fn:r(!!Fn),Ji):zi},Ji.curve=function(Fn){return arguments.length?(an=Fn,Yi!=null&&(hi=an(Yi)),Ji):an},Ji.context=function(Fn){return arguments.length?(Fn==null?Yi=hi=null:hi=an(Yi=Fn),Ji):Yi},Ji}function V(_t,br){return br<_t?-1:br>_t?1:br>=_t?0:NaN}function H(_t){return _t}function X(){var _t=H,br=V,Hr=null,ti=r(0),zi=r(d),Yi=r(0);function an(hi){var Ji,ua=hi.length,Fn,Sa,go=0,Oo=new Array(ua),ho=new Array(ua),Mo=+ti.apply(this,arguments),xo=Math.min(d,Math.max(-d,zi.apply(this,arguments)-Mo)),zs,ks=Math.min(Math.abs(xo)/ua,Yi.apply(this,arguments)),Zs=ks*(xo<0?-1:1),Xs;for(Ji=0;Ji<ua;++Ji)(Xs=ho[Oo[Ji]=Ji]=+_t(hi[Ji],Ji,hi))>0&&(go+=Xs);for(br!=null?Oo.sort(function(wl,os){return br(ho[wl],ho[os])}):Hr!=null&&Oo.sort(function(wl,os){return Hr(hi[wl],hi[os])}),Ji=0,Sa=go?(xo-ua*Zs)/go:0;Ji<ua;++Ji,Mo=zs)Fn=Oo[Ji],Xs=ho[Fn],zs=Mo+(Xs>0?Xs*Sa:0)+Zs,ho[Fn]={data:hi[Fn],index:Ji,value:Xs,startAngle:Mo,endAngle:zs,padAngle:ks};return ho}return an.value=function(hi){return arguments.length?(_t=typeof hi=="function"?hi:r(+hi),an):_t},an.sortValues=function(hi){return arguments.length?(br=hi,Hr=null,an):br},an.sort=function(hi){return arguments.length?(Hr=hi,br=null,an):Hr},an.startAngle=function(hi){return arguments.length?(ti=typeof hi=="function"?hi:r(+hi),an):ti},an.endAngle=function(hi){return arguments.length?(zi=typeof hi=="function"?hi:r(+hi),an):zi},an.padAngle=function(hi){return arguments.length?(Yi=typeof hi=="function"?hi:r(+hi),an):Yi},an}var G=W(g);function N(_t){this._curve=_t}N.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(_t,br){this._curve.point(br*Math.sin(_t),br*-Math.cos(_t))}};function W(_t){function br(Hr){return new N(_t(Hr))}return br._curve=_t,br}function re(_t){var br=_t.curve;return _t.angle=_t.x,delete _t.x,_t.radius=_t.y,delete _t.y,_t.curve=function(Hr){return arguments.length?br(W(Hr)):br()._curve},_t}function ae(){return re(F().curve(G))}function _e(){var _t=q().curve(G),br=_t.curve,Hr=_t.lineX0,ti=_t.lineX1,zi=_t.lineY0,Yi=_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 re(Hr())},delete _t.lineX0,_t.lineEndAngle=function(){return re(ti())},delete _t.lineX1,_t.lineInnerRadius=function(){return re(zi())},delete _t.lineY0,_t.lineOuterRadius=function(){return re(Yi())},delete _t.lineY1,_t.curve=function(an){return arguments.length?br(W(an)):br()._curve},_t}function Me(_t,br){return[(br=+br)*Math.cos(_t-=Math.PI/2),br*Math.sin(_t)]}var ke=Array.prototype.slice;function ge(_t){return _t.source}function ie(_t){return _t.target}function Te(_t){var br=ge,Hr=ie,ti=P,zi=T,Yi=null;function an(){var hi,Ji=ke.call(arguments),ua=br.apply(this,Ji),Fn=Hr.apply(this,Ji);if(Yi||(Yi=hi=t.path()),_t(Yi,+ti.apply(this,(Ji[0]=ua,Ji)),+zi.apply(this,Ji),+ti.apply(this,(Ji[0]=Fn,Ji)),+zi.apply(this,Ji)),hi)return Yi=null,hi+""||null}return an.source=function(hi){return arguments.length?(br=hi,an):br},an.target=function(hi){return arguments.length?(Hr=hi,an):Hr},an.x=function(hi){return arguments.length?(ti=typeof hi=="function"?hi:r(+hi),an):ti},an.y=function(hi){return arguments.length?(zi=typeof hi=="function"?hi:r(+hi),an):zi},an.context=function(hi){return arguments.length?(Yi=hi==null?null:hi,an):Yi},an}function Ee(_t,br,Hr,ti,zi){_t.moveTo(br,Hr),_t.bezierCurveTo(br=(br+ti)/2,Hr,br,zi,ti,zi)}function Ae(_t,br,Hr,ti,zi){_t.moveTo(br,Hr),_t.bezierCurveTo(br,Hr=(Hr+zi)/2,ti,Hr,ti,zi)}function ze(_t,br,Hr,ti,zi){var Yi=Me(br,Hr),an=Me(br,Hr=(Hr+zi)/2),hi=Me(ti,Hr),Ji=Me(ti,zi);_t.moveTo(Yi[0],Yi[1]),_t.bezierCurveTo(an[0],an[1],hi[0],hi[1],Ji[0],Ji[1])}function Ce(){return Te(Ee)}function me(){return Te(Ae)}function Re(){var _t=Te(ze);return _t.angle=_t.x,delete _t.x,_t.radius=_t.y,delete _t.y,_t}var ce={draw:function(_t,br){var Hr=Math.sqrt(br/f);_t.moveTo(Hr,0),_t.arc(0,0,Hr,0,d)}},Ge={draw:function(_t,br){var Hr=Math.sqrt(br/5)/2;_t.moveTo(-3*Hr,-Hr),_t.lineTo(-Hr,-Hr),_t.lineTo(-Hr,-3*Hr),_t.lineTo(Hr,-3*Hr),_t.lineTo(Hr,-Hr),_t.lineTo(3*Hr,-Hr),_t.lineTo(3*Hr,Hr),_t.lineTo(Hr,Hr),_t.lineTo(Hr,3*Hr),_t.lineTo(-Hr,3*Hr),_t.lineTo(-Hr,Hr),_t.lineTo(-3*Hr,Hr),_t.closePath()}},nt=Math.sqrt(1/3),ct=nt*2,qt={draw:function(_t,br){var Hr=Math.sqrt(br/ct),ti=Hr*nt;_t.moveTo(0,-Hr),_t.lineTo(ti,0),_t.lineTo(0,Hr),_t.lineTo(-ti,0),_t.closePath()}},rt=.8908130915292852,ot=Math.sin(f/10)/Math.sin(7*f/10),Rt=Math.sin(d/10)*ot,kt=-Math.cos(d/10)*ot,Ct={draw:function(_t,br){var Hr=Math.sqrt(br*rt),ti=Rt*Hr,zi=kt*Hr;_t.moveTo(0,-Hr),_t.lineTo(ti,zi);for(var Yi=1;Yi<5;++Yi){var an=d*Yi/5,hi=Math.cos(an),Ji=Math.sin(an);_t.lineTo(Ji*Hr,-hi*Hr),_t.lineTo(hi*ti-Ji*zi,Ji*ti+hi*zi)}_t.closePath()}},Yt={draw:function(_t,br){var Hr=Math.sqrt(br),ti=-Hr/2;_t.rect(ti,ti,Hr,Hr)}},xr=Math.sqrt(3),er={draw:function(_t,br){var Hr=-Math.sqrt(br/(xr*3));_t.moveTo(0,Hr*2),_t.lineTo(-xr*Hr,-Hr),_t.lineTo(xr*Hr,-Hr),_t.closePath()}},Ke=-.5,xt=Math.sqrt(3)/2,bt=1/Math.sqrt(12),Lt=(bt/2+1)*3,St={draw:function(_t,br){var Hr=Math.sqrt(br/Lt),ti=Hr/2,zi=Hr*bt,Yi=ti,an=Hr*bt+Hr,hi=-Yi,Ji=an;_t.moveTo(ti,zi),_t.lineTo(Yi,an),_t.lineTo(hi,Ji),_t.lineTo(Ke*ti-xt*zi,xt*ti+Ke*zi),_t.lineTo(Ke*Yi-xt*an,xt*Yi+Ke*an),_t.lineTo(Ke*hi-xt*Ji,xt*hi+Ke*Ji),_t.lineTo(Ke*ti+xt*zi,Ke*zi-xt*ti),_t.lineTo(Ke*Yi+xt*an,Ke*an-xt*Yi),_t.lineTo(Ke*hi+xt*Ji,Ke*Ji-xt*hi),_t.closePath()}},Et=[ce,Ge,qt,Yt,Ct,er,St];function dt(){var _t=r(ce),br=r(64),Hr=null;function ti(){var zi;if(Hr||(Hr=zi=t.path()),_t.apply(this,arguments).draw(Hr,+br.apply(this,arguments)),zi)return Hr=null,zi+""||null}return ti.type=function(zi){return arguments.length?(_t=typeof zi=="function"?zi:r(zi),ti):_t},ti.size=function(zi){return arguments.length?(br=typeof zi=="function"?zi:r(+zi),ti):br},ti.context=function(zi){return arguments.length?(Hr=zi==null?null:zi,ti):Hr},ti}function Ht(){}function $t(_t,br,Hr){_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+br)/6,(_t._y0+4*_t._y1+Hr)/6)}function fr(_t){this._context=_t}fr.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:$t(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){switch(_t=+_t,br=+br,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,br):this._context.moveTo(_t,br);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:$t(this,_t,br);break}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=br}};function _r(_t){return new fr(_t)}function Br(_t){this._context=_t}Br.prototype={areaStart:Ht,areaEnd:Ht,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(_t,br){switch(_t=+_t,br=+br,this._point){case 0:this._point=1,this._x2=_t,this._y2=br;break;case 1:this._point=2,this._x3=_t,this._y3=br;break;case 2:this._point=3,this._x4=_t,this._y4=br,this._context.moveTo((this._x0+4*this._x1+_t)/6,(this._y0+4*this._y1+br)/6);break;default:$t(this,_t,br);break}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=br}};function Or(_t){return new Br(_t)}function Nr(_t){this._context=_t}Nr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){switch(_t=+_t,br=+br,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var Hr=(this._x0+4*this._x1+_t)/6,ti=(this._y0+4*this._y1+br)/6;this._line?this._context.lineTo(Hr,ti):this._context.moveTo(Hr,ti);break;case 3:this._point=4;default:$t(this,_t,br);break}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=br}};function ut(_t){return new Nr(_t)}function Ne(_t,br){this._basis=new fr(_t),this._beta=br}Ne.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var _t=this._x,br=this._y,Hr=_t.length-1;if(Hr>0)for(var ti=_t[0],zi=br[0],Yi=_t[Hr]-ti,an=br[Hr]-zi,hi=-1,Ji;++hi<=Hr;)Ji=hi/Hr,this._basis.point(this._beta*_t[hi]+(1-this._beta)*(ti+Ji*Yi),this._beta*br[hi]+(1-this._beta)*(zi+Ji*an));this._x=this._y=null,this._basis.lineEnd()},point:function(_t,br){this._x.push(+_t),this._y.push(+br)}};var Ye=function _t(br){function Hr(ti){return br===1?new fr(ti):new Ne(ti,br)}return Hr.beta=function(ti){return _t(+ti)},Hr}(.85);function Ve(_t,br,Hr){_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-br),_t._y2+_t._k*(_t._y1-Hr),_t._x2,_t._y2)}function Xe(_t,br){this._context=_t,this._k=(1-br)/6}Xe.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:Ve(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){switch(_t=+_t,br=+br,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,br):this._context.moveTo(_t,br);break;case 1:this._point=2,this._x1=_t,this._y1=br;break;case 2:this._point=3;default:Ve(this,_t,br);break}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=br}};var ht=function _t(br){function Hr(ti){return new Xe(ti,br)}return Hr.tension=function(ti){return _t(+ti)},Hr}(0);function Le(_t,br){this._context=_t,this._k=(1-br)/6}Le.prototype={areaStart:Ht,areaEnd:Ht,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(_t,br){switch(_t=+_t,br=+br,this._point){case 0:this._point=1,this._x3=_t,this._y3=br;break;case 1:this._point=2,this._context.moveTo(this._x4=_t,this._y4=br);break;case 2:this._point=3,this._x5=_t,this._y5=br;break;default:Ve(this,_t,br);break}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=br}};var xe=function _t(br){function Hr(ti){return new Le(ti,br)}return Hr.tension=function(ti){return _t(+ti)},Hr}(0);function Se(_t,br){this._context=_t,this._k=(1-br)/6}Se.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){switch(_t=+_t,br=+br,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:Ve(this,_t,br);break}this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=br}};var lt=function _t(br){function Hr(ti){return new Se(ti,br)}return Hr.tension=function(ti){return _t(+ti)},Hr}(0);function Gt(_t,br,Hr){var ti=_t._x1,zi=_t._y1,Yi=_t._x2,an=_t._y2;if(_t._l01_a>c){var hi=2*_t._l01_2a+3*_t._l01_a*_t._l12_a+_t._l12_2a,Ji=3*_t._l01_a*(_t._l01_a+_t._l12_a);ti=(ti*hi-_t._x0*_t._l12_2a+_t._x2*_t._l01_2a)/Ji,zi=(zi*hi-_t._y0*_t._l12_2a+_t._y2*_t._l01_2a)/Ji}if(_t._l23_a>c){var ua=2*_t._l23_2a+3*_t._l23_a*_t._l12_a+_t._l12_2a,Fn=3*_t._l23_a*(_t._l23_a+_t._l12_a);Yi=(Yi*ua+_t._x1*_t._l23_2a-br*_t._l12_2a)/Fn,an=(an*ua+_t._y1*_t._l23_2a-Hr*_t._l12_2a)/Fn}_t._context.bezierCurveTo(ti,zi,Yi,an,_t._x2,_t._y2)}function Vt(_t,br){this._context=_t,this._alpha=br}Vt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){if(_t=+_t,br=+br,this._point){var Hr=this._x2-_t,ti=this._y2-br;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Hr*Hr+ti*ti,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,br):this._context.moveTo(_t,br);break;case 1:this._point=2;break;case 2:this._point=3;default:Gt(this,_t,br);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=br}};var ar=function _t(br){function Hr(ti){return br?new Vt(ti,br):new Xe(ti,0)}return Hr.alpha=function(ti){return _t(+ti)},Hr}(.5);function Qr(_t,br){this._context=_t,this._alpha=br}Qr.prototype={areaStart:Ht,areaEnd:Ht,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(_t,br){if(_t=+_t,br=+br,this._point){var Hr=this._x2-_t,ti=this._y2-br;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Hr*Hr+ti*ti,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=_t,this._y3=br;break;case 1:this._point=2,this._context.moveTo(this._x4=_t,this._y4=br);break;case 2:this._point=3,this._x5=_t,this._y5=br;break;default:Gt(this,_t,br);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=br}};var ai=function _t(br){function Hr(ti){return br?new Qr(ti,br):new Le(ti,0)}return Hr.alpha=function(ti){return _t(+ti)},Hr}(.5);function jr(_t,br){this._context=_t,this._alpha=br}jr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){if(_t=+_t,br=+br,this._point){var Hr=this._x2-_t,ti=this._y2-br;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(Hr*Hr+ti*ti,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:Gt(this,_t,br);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=_t,this._y0=this._y1,this._y1=this._y2,this._y2=br}};var ri=function _t(br){function Hr(ti){return br?new jr(ti,br):new Se(ti,0)}return Hr.alpha=function(ti){return _t(+ti)},Hr}(.5);function bi(_t){this._context=_t}bi.prototype={areaStart:Ht,areaEnd:Ht,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(_t,br){_t=+_t,br=+br,this._point?this._context.lineTo(_t,br):(this._point=1,this._context.moveTo(_t,br))}};function nn(_t){return new bi(_t)}function Wi(_t){return _t<0?-1:1}function Ni(_t,br,Hr){var ti=_t._x1-_t._x0,zi=br-_t._x1,Yi=(_t._y1-_t._y0)/(ti||zi<0&&-0),an=(Hr-_t._y1)/(zi||ti<0&&-0),hi=(Yi*zi+an*ti)/(ti+zi);return(Wi(Yi)+Wi(an))*Math.min(Math.abs(Yi),Math.abs(an),.5*Math.abs(hi))||0}function _n(_t,br){var Hr=_t._x1-_t._x0;return Hr?(3*(_t._y1-_t._y0)/Hr-br)/2:br}function $i(_t,br,Hr){var ti=_t._x0,zi=_t._y0,Yi=_t._x1,an=_t._y1,hi=(Yi-ti)/3;_t._context.bezierCurveTo(ti+hi,zi+hi*br,Yi-hi,an-hi*Hr,Yi,an)}function zn(_t){this._context=_t}zn.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:$i(this,this._t0,_n(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(_t,br){var Hr=NaN;if(_t=+_t,br=+br,!(_t===this._x1&&br===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,br):this._context.moveTo(_t,br);break;case 1:this._point=2;break;case 2:this._point=3,$i(this,_n(this,Hr=Ni(this,_t,br)),Hr);break;default:$i(this,this._t0,Hr=Ni(this,_t,br));break}this._x0=this._x1,this._x1=_t,this._y0=this._y1,this._y1=br,this._t0=Hr}}};function Wn(_t){this._context=new It(_t)}(Wn.prototype=Object.create(zn.prototype)).point=function(_t,br){zn.prototype.point.call(this,br,_t)};function It(_t){this._context=_t}It.prototype={moveTo:function(_t,br){this._context.moveTo(br,_t)},closePath:function(){this._context.closePath()},lineTo:function(_t,br){this._context.lineTo(br,_t)},bezierCurveTo:function(_t,br,Hr,ti,zi,Yi){this._context.bezierCurveTo(br,_t,ti,Hr,Yi,zi)}};function ft(_t){return new zn(_t)}function jt(_t){return new Wn(_t)}function Zt(_t){this._context=_t}Zt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var _t=this._x,br=this._y,Hr=_t.length;if(Hr)if(this._line?this._context.lineTo(_t[0],br[0]):this._context.moveTo(_t[0],br[0]),Hr===2)this._context.lineTo(_t[1],br[1]);else for(var ti=yr(_t),zi=yr(br),Yi=0,an=1;an<Hr;++Yi,++an)this._context.bezierCurveTo(ti[0][Yi],zi[0][Yi],ti[1][Yi],zi[1][Yi],_t[an],br[an]);(this._line||this._line!==0&&Hr===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(_t,br){this._x.push(+_t),this._y.push(+br)}};function yr(_t){var br,Hr=_t.length-1,ti,zi=new Array(Hr),Yi=new Array(Hr),an=new Array(Hr);for(zi[0]=0,Yi[0]=2,an[0]=_t[0]+2*_t[1],br=1;br<Hr-1;++br)zi[br]=1,Yi[br]=4,an[br]=4*_t[br]+2*_t[br+1];for(zi[Hr-1]=2,Yi[Hr-1]=7,an[Hr-1]=8*_t[Hr-1]+_t[Hr],br=1;br<Hr;++br)ti=zi[br]/Yi[br-1],Yi[br]-=ti,an[br]-=ti*an[br-1];for(zi[Hr-1]=an[Hr-1]/Yi[Hr-1],br=Hr-2;br>=0;--br)zi[br]=(an[br]-zi[br+1])/Yi[br];for(Yi[Hr-1]=(_t[Hr]+zi[Hr-1])/2,br=0;br<Hr-1;++br)Yi[br]=2*_t[br+1]-zi[br+1];return[zi,Yi]}function Fr(_t){return new Zt(_t)}function Zr(_t,br){this._context=_t,this._t=br}Zr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(_t,br){switch(_t=+_t,br=+br,this._point){case 0:this._point=1,this._line?this._context.lineTo(_t,br):this._context.moveTo(_t,br);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,br),this._context.lineTo(_t,br);else{var Hr=this._x*(1-this._t)+_t*this._t;this._context.lineTo(Hr,this._y),this._context.lineTo(Hr,br)}break}}this._x=_t,this._y=br}};function Vr(_t){return new Zr(_t,.5)}function gi(_t){return new Zr(_t,0)}function Si(_t){return new Zr(_t,1)}function Mi(_t,br){if((an=_t.length)>1)for(var Hr=1,ti,zi,Yi=_t[br[0]],an,hi=Yi.length;Hr<an;++Hr)for(zi=Yi,Yi=_t[br[Hr]],ti=0;ti<hi;++ti)Yi[ti][1]+=Yi[ti][0]=isNaN(zi[ti][1])?zi[ti][0]:zi[ti][1]}function Pi(_t){for(var br=_t.length,Hr=new Array(br);--br>=0;)Hr[br]=br;return Hr}function Gi(_t,br){return _t[br]}function Ki(){var _t=r([]),br=Pi,Hr=Mi,ti=Gi;function zi(Yi){var an=_t.apply(this,arguments),hi,Ji=Yi.length,ua=an.length,Fn=new Array(ua),Sa;for(hi=0;hi<ua;++hi){for(var go=an[hi],Oo=Fn[hi]=new Array(Ji),ho=0,Mo;ho<Ji;++ho)Oo[ho]=Mo=[0,+ti(Yi[ho],go,ho,Yi)],Mo.data=Yi[ho];Oo.key=go}for(hi=0,Sa=br(Fn);hi<ua;++hi)Fn[Sa[hi]].index=hi;return Hr(Fn,Sa),Fn}return zi.keys=function(Yi){return arguments.length?(_t=typeof Yi=="function"?Yi:r(ke.call(Yi)),zi):_t},zi.value=function(Yi){return arguments.length?(ti=typeof Yi=="function"?Yi:r(+Yi),zi):ti},zi.order=function(Yi){return arguments.length?(br=Yi==null?Pi:typeof Yi=="function"?Yi:r(ke.call(Yi)),zi):br},zi.offset=function(Yi){return arguments.length?(Hr=Yi==null?Mi:Yi,zi):Hr},zi}function ka(_t,br){if((ti=_t.length)>0){for(var Hr,ti,zi=0,Yi=_t[0].length,an;zi<Yi;++zi){for(an=Hr=0;Hr<ti;++Hr)an+=_t[Hr][zi][1]||0;if(an)for(Hr=0;Hr<ti;++Hr)_t[Hr][zi][1]/=an}Mi(_t,br)}}function jn(_t,br){if((Ji=_t.length)>0)for(var Hr,ti=0,zi,Yi,an,hi,Ji,ua=_t[br[0]].length;ti<ua;++ti)for(an=hi=0,Hr=0;Hr<Ji;++Hr)(Yi=(zi=_t[br[Hr]][ti])[1]-zi[0])>0?(zi[0]=an,zi[1]=an+=Yi):Yi<0?(zi[1]=hi,zi[0]=hi+=Yi):(zi[0]=0,zi[1]=Yi)}function la(_t,br){if((zi=_t.length)>0){for(var Hr=0,ti=_t[br[0]],zi,Yi=ti.length;Hr<Yi;++Hr){for(var an=0,hi=0;an<zi;++an)hi+=_t[an][Hr][1]||0;ti[Hr][1]+=ti[Hr][0]=-hi/2}Mi(_t,br)}}function Fa(_t,br){if(!(!((an=_t.length)>0)||!((Yi=(zi=_t[br[0]]).length)>0))){for(var Hr=0,ti=1,zi,Yi,an;ti<Yi;++ti){for(var hi=0,Ji=0,ua=0;hi<an;++hi){for(var Fn=_t[br[hi]],Sa=Fn[ti][1]||0,go=Fn[ti-1][1]||0,Oo=(Sa-go)/2,ho=0;ho<hi;++ho){var Mo=_t[br[ho]],xo=Mo[ti][1]||0,zs=Mo[ti-1][1]||0;Oo+=xo-zs}Ji+=Sa,ua+=Oo*Sa}zi[ti-1][1]+=zi[ti-1][0]=Hr,Ji&&(Hr-=ua/Ji)}zi[ti-1][1]+=zi[ti-1][0]=Hr,Mi(_t,br)}}function Ra(_t){var br=_t.map(jo);return Pi(_t).sort(function(Hr,ti){return br[Hr]-br[ti]})}function jo(_t){for(var br=-1,Hr=0,ti=_t.length,zi,Yi=-1/0;++br<ti;)(zi=+_t[br][1])>Yi&&(Yi=zi,Hr=br);return Hr}function oa(_t){var br=_t.map(Sn);return Pi(_t).sort(function(Hr,ti){return br[Hr]-br[ti]})}function Sn(_t){for(var br=0,Hr=-1,ti=_t.length,zi;++Hr<ti;)(zi=+_t[Hr][1])&&(br+=zi);return br}function Ha(_t){return oa(_t).reverse()}function oo(_t){var br=_t.length,Hr,ti,zi=_t.map(Sn),Yi=Ra(_t),an=0,hi=0,Ji=[],ua=[];for(Hr=0;Hr<br;++Hr)ti=Yi[Hr],an<hi?(an+=zi[ti],Ji.push(ti)):(hi+=zi[ti],ua.push(ti));return ua.reverse().concat(Ji)}function xn(_t){return Pi(_t).reverse()}e.arc=C,e.area=q,e.areaRadial=_e,e.curveBasis=_r,e.curveBasisClosed=Or,e.curveBasisOpen=ut,e.curveBundle=Ye,e.curveCardinal=ht,e.curveCardinalClosed=xe,e.curveCardinalOpen=lt,e.curveCatmullRom=ar,e.curveCatmullRomClosed=ai,e.curveCatmullRomOpen=ri,e.curveLinear=g,e.curveLinearClosed=nn,e.curveMonotoneX=ft,e.curveMonotoneY=jt,e.curveNatural=Fr,e.curveStep=Vr,e.curveStepAfter=Si,e.curveStepBefore=gi,e.line=F,e.lineRadial=ae,e.linkHorizontal=Ce,e.linkRadial=Re,e.linkVertical=me,e.pie=X,e.pointRadial=Me,e.radialArea=_e,e.radialLine=ae,e.stack=Ki,e.stackOffsetDiverging=jn,e.stackOffsetExpand=ka,e.stackOffsetNone=Mi,e.stackOffsetSilhouette=la,e.stackOffsetWiggle=Fa,e.stackOrderAppearance=Ra,e.stackOrderAscending=oa,e.stackOrderDescending=Ha,e.stackOrderInsideOut=oo,e.stackOrderNone=Pi,e.stackOrderReverse=xn,e.symbol=dt,e.symbolCircle=ce,e.symbolCross=Ge,e.symbolDiamond=qt,e.symbolSquare=Yt,e.symbolStar=Ct,e.symbolTriangle=er,e.symbolWye=St,e.symbols=Et,Object.defineProperty(e,"__esModule",{value:!0})})});var Mje=ye((_7,Sje)=>{(function(e,t){typeof _7=="object"&&typeof Sje!="undefined"?t(_7,$E(),d7(),PJ()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3)})(_7,function(e,t,r,n){"use strict";function i(g){return g.target.depth}function a(g){return g.depth}function o(g,P){return P-1-g.height}function s(g,P){return g.sourceLinks.length?g.depth:P-1}function l(g){return g.targetLinks.length?g.depth:g.sourceLinks.length?t.min(g.sourceLinks,i)-1:0}function u(g){return function(){return g}}function c(g,P){return h(g.source,P.source)||g.index-P.index}function f(g,P){return h(g.target,P.target)||g.index-P.index}function h(g,P){return g.y0-P.y0}function d(g){return g.value}function v(g){return(g.y0+g.y1)/2}function x(g){return v(g.source)*g.value}function b(g){return v(g.target)*g.value}function p(g){return g.index}function E(g){return g.nodes}function k(g){return g.links}function A(g,P){var T=g.get(P);if(!T)throw new Error("missing: "+P);return T}var L=function(){var g=0,P=0,T=1,F=1,q=24,V=8,H=p,X=s,G=E,N=k,W=32,re=2/3;function ae(){var Te={nodes:G.apply(null,arguments),links:N.apply(null,arguments)};return _e(Te),Me(Te),ke(Te),ge(Te,W),ie(Te),Te}ae.update=function(Te){return ie(Te),Te},ae.nodeId=function(Te){return arguments.length?(H=typeof Te=="function"?Te:u(Te),ae):H},ae.nodeAlign=function(Te){return arguments.length?(X=typeof Te=="function"?Te:u(Te),ae):X},ae.nodeWidth=function(Te){return arguments.length?(q=+Te,ae):q},ae.nodePadding=function(Te){return arguments.length?(V=+Te,ae):V},ae.nodes=function(Te){return arguments.length?(G=typeof Te=="function"?Te:u(Te),ae):G},ae.links=function(Te){return arguments.length?(N=typeof Te=="function"?Te:u(Te),ae):N},ae.size=function(Te){return arguments.length?(g=P=0,T=+Te[0],F=+Te[1],ae):[T-g,F-P]},ae.extent=function(Te){return arguments.length?(g=+Te[0][0],T=+Te[1][0],P=+Te[0][1],F=+Te[1][1],ae):[[g,P],[T,F]]},ae.iterations=function(Te){return arguments.length?(W=+Te,ae):W};function _e(Te){Te.nodes.forEach(function(Ae,ze){Ae.index=ze,Ae.sourceLinks=[],Ae.targetLinks=[]});var Ee=r.map(Te.nodes,H);Te.links.forEach(function(Ae,ze){Ae.index=ze;var Ce=Ae.source,me=Ae.target;typeof Ce!="object"&&(Ce=Ae.source=A(Ee,Ce)),typeof me!="object"&&(me=Ae.target=A(Ee,me)),Ce.sourceLinks.push(Ae),me.targetLinks.push(Ae)})}function Me(Te){Te.nodes.forEach(function(Ee){Ee.value=Math.max(t.sum(Ee.sourceLinks,d),t.sum(Ee.targetLinks,d))})}function ke(Te){var Ee,Ae,ze;for(Ee=Te.nodes,Ae=[],ze=0;Ee.length;++ze,Ee=Ae,Ae=[])Ee.forEach(function(me){me.depth=ze,me.sourceLinks.forEach(function(Re){Ae.indexOf(Re.target)<0&&Ae.push(Re.target)})});for(Ee=Te.nodes,Ae=[],ze=0;Ee.length;++ze,Ee=Ae,Ae=[])Ee.forEach(function(me){me.height=ze,me.targetLinks.forEach(function(Re){Ae.indexOf(Re.source)<0&&Ae.push(Re.source)})});var Ce=(T-g-q)/(ze-1);Te.nodes.forEach(function(me){me.x1=(me.x0=g+Math.max(0,Math.min(ze-1,Math.floor(X.call(null,me,ze))))*Ce)+q})}function ge(Te){var Ee=r.nest().key(function(Ge){return Ge.x0}).sortKeys(t.ascending).entries(Te.nodes).map(function(Ge){return Ge.values});Ce(),ce();for(var Ae=1,ze=W;ze>0;--ze)Re(Ae*=.99),ce(),me(Ae),ce();function Ce(){var Ge=t.max(Ee,function(qt){return qt.length}),nt=re*(F-P)/(Ge-1);V>nt&&(V=nt);var ct=t.min(Ee,function(qt){return(F-P-(qt.length-1)*V)/t.sum(qt,d)});Ee.forEach(function(qt){qt.forEach(function(rt,ot){rt.y1=(rt.y0=ot)+rt.value*ct})}),Te.links.forEach(function(qt){qt.width=qt.value*ct})}function me(Ge){Ee.forEach(function(nt){nt.forEach(function(ct){if(ct.targetLinks.length){var qt=(t.sum(ct.targetLinks,x)/t.sum(ct.targetLinks,d)-v(ct))*Ge;ct.y0+=qt,ct.y1+=qt}})})}function Re(Ge){Ee.slice().reverse().forEach(function(nt){nt.forEach(function(ct){if(ct.sourceLinks.length){var qt=(t.sum(ct.sourceLinks,b)/t.sum(ct.sourceLinks,d)-v(ct))*Ge;ct.y0+=qt,ct.y1+=qt}})})}function ce(){Ee.forEach(function(Ge){var nt,ct,qt=P,rt=Ge.length,ot;for(Ge.sort(h),ot=0;ot<rt;++ot)nt=Ge[ot],ct=qt-nt.y0,ct>0&&(nt.y0+=ct,nt.y1+=ct),qt=nt.y1+V;if(ct=qt-V-F,ct>0)for(qt=nt.y0-=ct,nt.y1-=ct,ot=rt-2;ot>=0;--ot)nt=Ge[ot],ct=nt.y1+V-qt,ct>0&&(nt.y0-=ct,nt.y1-=ct),qt=nt.y0})}}function ie(Te){Te.nodes.forEach(function(Ee){Ee.sourceLinks.sort(f),Ee.targetLinks.sort(c)}),Te.nodes.forEach(function(Ee){var Ae=Ee.y0,ze=Ae;Ee.sourceLinks.forEach(function(Ce){Ce.y0=Ae+Ce.width/2,Ae+=Ce.width}),Ee.targetLinks.forEach(function(Ce){Ce.y1=ze+Ce.width/2,ze+=Ce.width})})}return ae};function _(g){return[g.source.x1,g.y0]}function C(g){return[g.target.x0,g.y1]}var M=function(){return n.linkHorizontal().source(_).target(C)};e.sankey=L,e.sankeyCenter=l,e.sankeyLeft=a,e.sankeyRight=o,e.sankeyJustify=s,e.sankeyLinkHorizontal=M,Object.defineProperty(e,"__esModule",{value:!0})})});var kje=ye((__r,Eje)=>{var SWt=LJ();Eje.exports=function(t,r){var n=[],i=[],a=[],o={},s=[],l;function u(k){a[k]=!1,o.hasOwnProperty(k)&&Object.keys(o[k]).forEach(function(A){delete o[k][A],a[A]&&u(A)})}function c(k){var A=!1;i.push(k),a[k]=!0;var L,_;for(L=0;L<s[k].length;L++)_=s[k][L],_===l?(f(l,i),A=!0):a[_]||(A=c(_));if(A)u(k);else for(L=0;L<s[k].length;L++){_=s[k][L];var C=o[_];C||(C={},o[_]=C),C[_]=!0}return i.pop(),A}function f(k,A){var L=[].concat(A).concat(k);r?r(c):n.push(L)}function h(k){for(var A=0;A<t.length;A++)A<k&&(t[A]=[]),t[A]=t[A].filter(function(L){return L>=k})}function d(k){h(k);for(var A=t,L=SWt(A),_=L.components.filter(function(q){return q.length>1}),C=1/0,M,g=0;g<_.length;g++)for(var P=0;P<_[g].length;P++)_[g][P]<C&&(C=_[g][P],M=g);var T=_[M];if(!T)return!1;var F=t.map(function(q,V){return T.indexOf(V)===-1?[]:q.filter(function(H){return T.indexOf(H)!==-1})});return{leastVertex:C,adjList:F}}l=0;for(var v=t.length;l<v;){var x=d(l);if(l=x.leastVertex,s=x.adjList,s){for(var b=0;b<s.length;b++)for(var p=0;p<s[b].length;p++){var E=s[b][p];a[+E]=!1,o[E]={}}c(l),l=l+1}else l=v}if(!r)return n}});var Lje=ye((x7,Cje)=>{(function(e,t){typeof x7=="object"&&typeof Cje!="undefined"?t(x7,$E(),d7(),PJ(),kje()):t(e.d3=e.d3||{},e.d3,e.d3,e.d3,null)})(x7,function(e,t,r,n,i){"use strict";i=i&&i.hasOwnProperty("default")?i.default:i;function a(rt){return rt.target.depth}function o(rt){return rt.depth}function s(rt,ot){return ot-1-rt.height}function l(rt,ot){return rt.sourceLinks.length?rt.depth:ot-1}function u(rt){return rt.targetLinks.length?rt.depth:rt.sourceLinks.length?t.min(rt.sourceLinks,a)-1:0}function c(rt){return function(){return rt}}var f=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(rt){return typeof rt}:function(rt){return rt&&typeof Symbol=="function"&&rt.constructor===Symbol&&rt!==Symbol.prototype?"symbol":typeof rt};function h(rt,ot){return v(rt.source,ot.source)||rt.index-ot.index}function d(rt,ot){return v(rt.target,ot.target)||rt.index-ot.index}function v(rt,ot){return rt.partOfCycle===ot.partOfCycle?rt.y0-ot.y0:rt.circularLinkType==="top"||ot.circularLinkType==="bottom"?-1:1}function x(rt){return rt.value}function b(rt){return(rt.y0+rt.y1)/2}function p(rt){return b(rt.source)}function E(rt){return b(rt.target)}function k(rt){return rt.index}function A(rt){return rt.nodes}function L(rt){return rt.links}function _(rt,ot){var Rt=rt.get(ot);if(!Rt)throw new Error("missing: "+ot);return Rt}function C(rt,ot){return ot(rt)}var M=25,g=10,P=.3;function T(){var rt=0,ot=0,Rt=1,kt=1,Ct=24,Yt,xr=k,er=l,Ke=A,xt=L,bt=32,Lt=2,St,Et=null;function dt(){var ut={nodes:Ke.apply(null,arguments),links:xt.apply(null,arguments)};Ht(ut),F(ut,xr,Et),$t(ut),Br(ut),q(ut,xr),Or(ut,bt,xr),Nr(ut);for(var Ne=4,Ye=0;Ye<Ne;Ye++)Re(ut,kt,xr),ce(ut,kt,xr),ze(ut,ot,kt,xr),Re(ut,kt,xr),ce(ut,kt,xr);return qt(ut,ot,kt),W(ut,Lt,kt,xr),ut}dt.nodeId=function(ut){return arguments.length?(xr=typeof ut=="function"?ut:c(ut),dt):xr},dt.nodeAlign=function(ut){return arguments.length?(er=typeof ut=="function"?ut:c(ut),dt):er},dt.nodeWidth=function(ut){return arguments.length?(Ct=+ut,dt):Ct},dt.nodePadding=function(ut){return arguments.length?(Yt=+ut,dt):Yt},dt.nodes=function(ut){return arguments.length?(Ke=typeof ut=="function"?ut:c(ut),dt):Ke},dt.links=function(ut){return arguments.length?(xt=typeof ut=="function"?ut:c(ut),dt):xt},dt.size=function(ut){return arguments.length?(rt=ot=0,Rt=+ut[0],kt=+ut[1],dt):[Rt-rt,kt-ot]},dt.extent=function(ut){return arguments.length?(rt=+ut[0][0],Rt=+ut[1][0],ot=+ut[0][1],kt=+ut[1][1],dt):[[rt,ot],[Rt,kt]]},dt.iterations=function(ut){return arguments.length?(bt=+ut,dt):bt},dt.circularLinkGap=function(ut){return arguments.length?(Lt=+ut,dt):Lt},dt.nodePaddingRatio=function(ut){return arguments.length?(St=+ut,dt):St},dt.sortNodes=function(ut){return arguments.length?(Et=ut,dt):Et},dt.update=function(ut){return q(ut,xr),Nr(ut),ut.links.forEach(function(Ne){Ne.circular&&(Ne.circularLinkType=Ne.y0+Ne.y1<kt?"top":"bottom",Ne.source.circularLinkType=Ne.circularLinkType,Ne.target.circularLinkType=Ne.circularLinkType)}),Re(ut,kt,xr,!1),ce(ut,kt,xr),W(ut,Lt,kt,xr),ut};function Ht(ut){ut.nodes.forEach(function(Ye,Ve){Ye.index=Ve,Ye.sourceLinks=[],Ye.targetLinks=[]});var Ne=r.map(ut.nodes,xr);return ut.links.forEach(function(Ye,Ve){Ye.index=Ve;var Xe=Ye.source,ht=Ye.target;(typeof Xe=="undefined"?"undefined":f(Xe))!=="object"&&(Xe=Ye.source=_(Ne,Xe)),(typeof ht=="undefined"?"undefined":f(ht))!=="object"&&(ht=Ye.target=_(Ne,ht)),Xe.sourceLinks.push(Ye),ht.targetLinks.push(Ye)}),ut}function $t(ut){ut.nodes.forEach(function(Ne){Ne.partOfCycle=!1,Ne.value=Math.max(t.sum(Ne.sourceLinks,x),t.sum(Ne.targetLinks,x)),Ne.sourceLinks.forEach(function(Ye){Ye.circular&&(Ne.partOfCycle=!0,Ne.circularLinkType=Ye.circularLinkType)}),Ne.targetLinks.forEach(function(Ye){Ye.circular&&(Ne.partOfCycle=!0,Ne.circularLinkType=Ye.circularLinkType)})})}function fr(ut){var Ne=0,Ye=0,Ve=0,Xe=0,ht=t.max(ut.nodes,function(Le){return Le.column});return ut.links.forEach(function(Le){Le.circular&&(Le.circularLinkType=="top"?Ne=Ne+Le.width:Ye=Ye+Le.width,Le.target.column==0&&(Xe=Xe+Le.width),Le.source.column==ht&&(Ve=Ve+Le.width))}),Ne=Ne>0?Ne+M+g:Ne,Ye=Ye>0?Ye+M+g:Ye,Ve=Ve>0?Ve+M+g:Ve,Xe=Xe>0?Xe+M+g:Xe,{top:Ne,bottom:Ye,left:Xe,right:Ve}}function _r(ut,Ne){var Ye=t.max(ut.nodes,function(lt){return lt.column}),Ve=Rt-rt,Xe=kt-ot,ht=Ve+Ne.right+Ne.left,Le=Xe+Ne.top+Ne.bottom,xe=Ve/ht,Se=Xe/Le;return rt=rt*xe+Ne.left,Rt=Ne.right==0?Rt:Rt*xe,ot=ot*Se+Ne.top,kt=kt*Se,ut.nodes.forEach(function(lt){lt.x0=rt+lt.column*((Rt-rt-Ct)/Ye),lt.x1=lt.x0+Ct}),Se}function Br(ut){var Ne,Ye,Ve;for(Ne=ut.nodes,Ye=[],Ve=0;Ne.length;++Ve,Ne=Ye,Ye=[])Ne.forEach(function(Xe){Xe.depth=Ve,Xe.sourceLinks.forEach(function(ht){Ye.indexOf(ht.target)<0&&!ht.circular&&Ye.push(ht.target)})});for(Ne=ut.nodes,Ye=[],Ve=0;Ne.length;++Ve,Ne=Ye,Ye=[])Ne.forEach(function(Xe){Xe.height=Ve,Xe.targetLinks.forEach(function(ht){Ye.indexOf(ht.source)<0&&!ht.circular&&Ye.push(ht.source)})});ut.nodes.forEach(function(Xe){Xe.column=Math.floor(er.call(null,Xe,Ve))})}function Or(ut,Ne,Ye){var Ve=r.nest().key(function(lt){return lt.column}).sortKeys(t.ascending).entries(ut.nodes).map(function(lt){return lt.values});Le(Ye),Se();for(var Xe=1,ht=Ne;ht>0;--ht)xe(Xe*=.99,Ye),Se();function Le(lt){if(St){var Gt=1/0;Ve.forEach(function(ai){var jr=kt*St/(ai.length+1);Gt=jr<Gt?jr:Gt}),Yt=Gt}var Vt=t.min(Ve,function(ai){return(kt-ot-(ai.length-1)*Yt)/t.sum(ai,x)});Vt=Vt*P,ut.links.forEach(function(ai){ai.width=ai.value*Vt});var ar=fr(ut),Qr=_r(ut,ar);Vt=Vt*Qr,ut.links.forEach(function(ai){ai.width=ai.value*Vt}),Ve.forEach(function(ai){var jr=ai.length;ai.forEach(function(ri,bi){ri.depth==Ve.length-1&&jr==1||ri.depth==0&&jr==1?(ri.y0=kt/2-ri.value*Vt,ri.y1=ri.y0+ri.value*Vt):ri.partOfCycle?X(ri,lt)==0?(ri.y0=kt/2+bi,ri.y1=ri.y0+ri.value*Vt):ri.circularLinkType=="top"?(ri.y0=ot+bi,ri.y1=ri.y0+ri.value*Vt):(ri.y0=kt-ri.value*Vt-bi,ri.y1=ri.y0+ri.value*Vt):ar.top==0||ar.bottom==0?(ri.y0=(kt-ot)/jr*bi,ri.y1=ri.y0+ri.value*Vt):(ri.y0=(kt-ot)/2-jr/2+bi,ri.y1=ri.y0+ri.value*Vt)})})}function xe(lt,Gt){var Vt=Ve.length;Ve.forEach(function(ar){var Qr=ar.length,ai=ar[0].depth;ar.forEach(function(jr){var ri;if((jr.sourceLinks.length||jr.targetLinks.length)&&!(jr.partOfCycle&&X(jr,Gt)>0))if(ai==0&&Qr==1)ri=jr.y1-jr.y0,jr.y0=kt/2-ri/2,jr.y1=kt/2+ri/2;else if(ai==Vt-1&&Qr==1)ri=jr.y1-jr.y0,jr.y0=kt/2-ri/2,jr.y1=kt/2+ri/2;else{var bi=0,nn=t.mean(jr.sourceLinks,E),Wi=t.mean(jr.targetLinks,p);nn&&Wi?bi=(nn+Wi)/2:bi=nn||Wi;var Ni=(bi-b(jr))*lt;jr.y0+=Ni,jr.y1+=Ni}})})}function Se(){Ve.forEach(function(lt){var Gt,Vt,ar=ot,Qr=lt.length,ai;for(lt.sort(v),ai=0;ai<Qr;++ai)Gt=lt[ai],Vt=ar-Gt.y0,Vt>0&&(Gt.y0+=Vt,Gt.y1+=Vt),ar=Gt.y1+Yt;if(Vt=ar-Yt-kt,Vt>0)for(ar=Gt.y0-=Vt,Gt.y1-=Vt,ai=Qr-2;ai>=0;--ai)Gt=lt[ai],Vt=Gt.y1+Yt-ar,Vt>0&&(Gt.y0-=Vt,Gt.y1-=Vt),ar=Gt.y0})}}function Nr(ut){ut.nodes.forEach(function(Ne){Ne.sourceLinks.sort(d),Ne.targetLinks.sort(h)}),ut.nodes.forEach(function(Ne){var Ye=Ne.y0,Ve=Ye,Xe=Ne.y1,ht=Xe;Ne.sourceLinks.forEach(function(Le){Le.circular?(Le.y0=Xe-Le.width/2,Xe=Xe-Le.width):(Le.y0=Ye+Le.width/2,Ye+=Le.width)}),Ne.targetLinks.forEach(function(Le){Le.circular?(Le.y1=ht-Le.width/2,ht=ht-Le.width):(Le.y1=Ve+Le.width/2,Ve+=Le.width)})})}return dt}function F(rt,ot,Rt){var kt=0;if(Rt===null){for(var Ct=[],Yt=0;Yt<rt.links.length;Yt++){var xr=rt.links[Yt],er=xr.source.index,Ke=xr.target.index;Ct[er]||(Ct[er]=[]),Ct[Ke]||(Ct[Ke]=[]),Ct[er].indexOf(Ke)===-1&&Ct[er].push(Ke)}var xt=i(Ct);xt.sort(function(Et,dt){return Et.length-dt.length});var bt={};for(Yt=0;Yt<xt.length;Yt++){var Lt=xt[Yt],St=Lt.slice(-2);bt[St[0]]||(bt[St[0]]={}),bt[St[0]][St[1]]=!0}rt.links.forEach(function(Et){var dt=Et.target.index,Ht=Et.source.index;dt===Ht||bt[Ht]&&bt[Ht][dt]?(Et.circular=!0,Et.circularLinkID=kt,kt=kt+1):Et.circular=!1})}else rt.links.forEach(function(Et){Et.source[Rt]<Et.target[Rt]?Et.circular=!1:(Et.circular=!0,Et.circularLinkID=kt,kt=kt+1)})}function q(rt,ot){var Rt=0,kt=0;rt.links.forEach(function(Ct){Ct.circular&&(Ct.source.circularLinkType||Ct.target.circularLinkType?Ct.circularLinkType=Ct.source.circularLinkType?Ct.source.circularLinkType:Ct.target.circularLinkType:Ct.circularLinkType=Rt<kt?"top":"bottom",Ct.circularLinkType=="top"?Rt=Rt+1:kt=kt+1,rt.nodes.forEach(function(Yt){(C(Yt,ot)==C(Ct.source,ot)||C(Yt,ot)==C(Ct.target,ot))&&(Yt.circularLinkType=Ct.circularLinkType)}))}),rt.links.forEach(function(Ct){Ct.circular&&(Ct.source.circularLinkType==Ct.target.circularLinkType&&(Ct.circularLinkType=Ct.source.circularLinkType),ct(Ct,ot)&&(Ct.circularLinkType=Ct.source.circularLinkType))})}function V(rt){var ot=Math.abs(rt.y1-rt.y0),Rt=Math.abs(rt.target.x0-rt.source.x1);return Math.atan(Rt/ot)}function H(rt,ot){return rt.source.column<ot.target.column?!1:!(rt.target.column>ot.source.column)}function X(rt,ot){var Rt=0;rt.sourceLinks.forEach(function(Ct){Rt=Ct.circular&&!ct(Ct,ot)?Rt+1:Rt});var kt=0;return rt.targetLinks.forEach(function(Ct){kt=Ct.circular&&!ct(Ct,ot)?kt+1:kt}),Rt+kt}function G(rt){var ot=rt.source.sourceLinks,Rt=0;ot.forEach(function(Yt){Rt=Yt.circular?Rt+1:Rt});var kt=rt.target.targetLinks,Ct=0;return kt.forEach(function(Yt){Ct=Yt.circular?Ct+1:Ct}),!(Rt>1||Ct>1)}function N(rt,ot,Rt){return rt.sort(ae),rt.forEach(function(kt,Ct){var Yt=0;if(ct(kt,Rt)&&G(kt))kt.circularPathData.verticalBuffer=Yt+kt.width/2;else{var xr=0;for(xr;xr<Ct;xr++)if(H(rt[Ct],rt[xr])){var er=rt[xr].circularPathData.verticalBuffer+rt[xr].width/2+ot;Yt=er>Yt?er:Yt}kt.circularPathData.verticalBuffer=Yt+kt.width/2}}),rt}function W(rt,ot,Rt,kt){var Ct=5,Yt=t.min(rt.links,function(Ke){return Ke.source.y0});rt.links.forEach(function(Ke){Ke.circular&&(Ke.circularPathData={})});var xr=rt.links.filter(function(Ke){return Ke.circularLinkType=="top"});N(xr,ot,kt);var er=rt.links.filter(function(Ke){return Ke.circularLinkType=="bottom"});N(er,ot,kt),rt.links.forEach(function(Ke){if(Ke.circular){if(Ke.circularPathData.arcRadius=Ke.width+g,Ke.circularPathData.leftNodeBuffer=Ct,Ke.circularPathData.rightNodeBuffer=Ct,Ke.circularPathData.sourceWidth=Ke.source.x1-Ke.source.x0,Ke.circularPathData.sourceX=Ke.source.x0+Ke.circularPathData.sourceWidth,Ke.circularPathData.targetX=Ke.target.x0,Ke.circularPathData.sourceY=Ke.y0,Ke.circularPathData.targetY=Ke.y1,ct(Ke,kt)&&G(Ke))Ke.circularPathData.leftSmallArcRadius=g+Ke.width/2,Ke.circularPathData.leftLargeArcRadius=g+Ke.width/2,Ke.circularPathData.rightSmallArcRadius=g+Ke.width/2,Ke.circularPathData.rightLargeArcRadius=g+Ke.width/2,Ke.circularLinkType=="bottom"?(Ke.circularPathData.verticalFullExtent=Ke.source.y1+M+Ke.circularPathData.verticalBuffer,Ke.circularPathData.verticalLeftInnerExtent=Ke.circularPathData.verticalFullExtent-Ke.circularPathData.leftLargeArcRadius,Ke.circularPathData.verticalRightInnerExtent=Ke.circularPathData.verticalFullExtent-Ke.circularPathData.rightLargeArcRadius):(Ke.circularPathData.verticalFullExtent=Ke.source.y0-M-Ke.circularPathData.verticalBuffer,Ke.circularPathData.verticalLeftInnerExtent=Ke.circularPathData.verticalFullExtent+Ke.circularPathData.leftLargeArcRadius,Ke.circularPathData.verticalRightInnerExtent=Ke.circularPathData.verticalFullExtent+Ke.circularPathData.rightLargeArcRadius);else{var xt=Ke.source.column,bt=Ke.circularLinkType,Lt=rt.links.filter(function(dt){return dt.source.column==xt&&dt.circularLinkType==bt});Ke.circularLinkType=="bottom"?Lt.sort(Me):Lt.sort(_e);var St=0;Lt.forEach(function(dt,Ht){dt.circularLinkID==Ke.circularLinkID&&(Ke.circularPathData.leftSmallArcRadius=g+Ke.width/2+St,Ke.circularPathData.leftLargeArcRadius=g+Ke.width/2+Ht*ot+St),St=St+dt.width}),xt=Ke.target.column,Lt=rt.links.filter(function(dt){return dt.target.column==xt&&dt.circularLinkType==bt}),Ke.circularLinkType=="bottom"?Lt.sort(ge):Lt.sort(ke),St=0,Lt.forEach(function(dt,Ht){dt.circularLinkID==Ke.circularLinkID&&(Ke.circularPathData.rightSmallArcRadius=g+Ke.width/2+St,Ke.circularPathData.rightLargeArcRadius=g+Ke.width/2+Ht*ot+St),St=St+dt.width}),Ke.circularLinkType=="bottom"?(Ke.circularPathData.verticalFullExtent=Math.max(Rt,Ke.source.y1,Ke.target.y1)+M+Ke.circularPathData.verticalBuffer,Ke.circularPathData.verticalLeftInnerExtent=Ke.circularPathData.verticalFullExtent-Ke.circularPathData.leftLargeArcRadius,Ke.circularPathData.verticalRightInnerExtent=Ke.circularPathData.verticalFullExtent-Ke.circularPathData.rightLargeArcRadius):(Ke.circularPathData.verticalFullExtent=Yt-M-Ke.circularPathData.verticalBuffer,Ke.circularPathData.verticalLeftInnerExtent=Ke.circularPathData.verticalFullExtent+Ke.circularPathData.leftLargeArcRadius,Ke.circularPathData.verticalRightInnerExtent=Ke.circularPathData.verticalFullExtent+Ke.circularPathData.rightLargeArcRadius)}Ke.circularPathData.leftInnerExtent=Ke.circularPathData.sourceX+Ke.circularPathData.leftNodeBuffer,Ke.circularPathData.rightInnerExtent=Ke.circularPathData.targetX-Ke.circularPathData.rightNodeBuffer,Ke.circularPathData.leftFullExtent=Ke.circularPathData.sourceX+Ke.circularPathData.leftLargeArcRadius+Ke.circularPathData.leftNodeBuffer,Ke.circularPathData.rightFullExtent=Ke.circularPathData.targetX-Ke.circularPathData.rightLargeArcRadius-Ke.circularPathData.rightNodeBuffer}if(Ke.circular)Ke.path=re(Ke);else{var Et=n.linkHorizontal().source(function(dt){var Ht=dt.source.x0+(dt.source.x1-dt.source.x0),$t=dt.y0;return[Ht,$t]}).target(function(dt){var Ht=dt.target.x0,$t=dt.y1;return[Ht,$t]});Ke.path=Et(Ke)}})}function re(rt){var ot="";return rt.circularLinkType=="top"?ot="M"+rt.circularPathData.sourceX+" "+rt.circularPathData.sourceY+" L"+rt.circularPathData.leftInnerExtent+" "+rt.circularPathData.sourceY+" A"+rt.circularPathData.leftLargeArcRadius+" "+rt.circularPathData.leftSmallArcRadius+" 0 0 0 "+rt.circularPathData.leftFullExtent+" "+(rt.circularPathData.sourceY-rt.circularPathData.leftSmallArcRadius)+" L"+rt.circularPathData.leftFullExtent+" "+rt.circularPathData.verticalLeftInnerExtent+" A"+rt.circularPathData.leftLargeArcRadius+" "+rt.circularPathData.leftLargeArcRadius+" 0 0 0 "+rt.circularPathData.leftInnerExtent+" "+rt.circularPathData.verticalFullExtent+" L"+rt.circularPathData.rightInnerExtent+" "+rt.circularPathData.verticalFullExtent+" A"+rt.circularPathData.rightLargeArcRadius+" "+rt.circularPathData.rightLargeArcRadius+" 0 0 0 "+rt.circularPathData.rightFullExtent+" "+rt.circularPathData.verticalRightInnerExtent+" L"+rt.circularPathData.rightFullExtent+" "+(rt.circularPathData.targetY-rt.circularPathData.rightSmallArcRadius)+" A"+rt.circularPathData.rightLargeArcRadius+" "+rt.circularPathData.rightSmallArcRadius+" 0 0 0 "+rt.circularPathData.rightInnerExtent+" "+rt.circularPathData.targetY+" L"+rt.circularPathData.targetX+" "+rt.circularPathData.targetY:ot="M"+rt.circularPathData.sourceX+" "+rt.circularPathData.sourceY+" L"+rt.circularPathData.leftInnerExtent+" "+rt.circularPathData.sourceY+" A"+rt.circularPathData.leftLargeArcRadius+" "+rt.circularPathData.leftSmallArcRadius+" 0 0 1 "+rt.circularPathData.leftFullExtent+" "+(rt.circularPathData.sourceY+rt.circularPathData.leftSmallArcRadius)+" L"+rt.circularPathData.leftFullExtent+" "+rt.circularPathData.verticalLeftInnerExtent+" A"+rt.circularPathData.leftLargeArcRadius+" "+rt.circularPathData.leftLargeArcRadius+" 0 0 1 "+rt.circularPathData.leftInnerExtent+" "+rt.circularPathData.verticalFullExtent+" L"+rt.circularPathData.rightInnerExtent+" "+rt.circularPathData.verticalFullExtent+" A"+rt.circularPathData.rightLargeArcRadius+" "+rt.circularPathData.rightLargeArcRadius+" 0 0 1 "+rt.circularPathData.rightFullExtent+" "+rt.circularPathData.verticalRightInnerExtent+" L"+rt.circularPathData.rightFullExtent+" "+(rt.circularPathData.targetY+rt.circularPathData.rightSmallArcRadius)+" A"+rt.circularPathData.rightLargeArcRadius+" "+rt.circularPathData.rightSmallArcRadius+" 0 0 1 "+rt.circularPathData.rightInnerExtent+" "+rt.circularPathData.targetY+" L"+rt.circularPathData.targetX+" "+rt.circularPathData.targetY,ot}function ae(rt,ot){return ie(rt)==ie(ot)?rt.circularLinkType=="bottom"?Me(rt,ot):_e(rt,ot):ie(ot)-ie(rt)}function _e(rt,ot){return rt.y0-ot.y0}function Me(rt,ot){return ot.y0-rt.y0}function ke(rt,ot){return rt.y1-ot.y1}function ge(rt,ot){return ot.y1-rt.y1}function ie(rt){return rt.target.column-rt.source.column}function Te(rt){return rt.target.x0-rt.source.x1}function Ee(rt,ot){var Rt=V(rt),kt=Te(ot)/Math.tan(Rt),Ct=nt(rt)=="up"?rt.y1+kt:rt.y1-kt;return Ct}function Ae(rt,ot){var Rt=V(rt),kt=Te(ot)/Math.tan(Rt),Ct=nt(rt)=="up"?rt.y1-kt:rt.y1+kt;return Ct}function ze(rt,ot,Rt,kt){rt.links.forEach(function(Ct){if(!Ct.circular&&Ct.target.column-Ct.source.column>1){var Yt=Ct.source.column+1,xr=Ct.target.column-1,er=1,Ke=xr-Yt+1;for(er=1;Yt<=xr;Yt++,er++)rt.nodes.forEach(function(xt){if(xt.column==Yt){var bt=er/(Ke+1),Lt=Math.pow(1-bt,3),St=3*bt*Math.pow(1-bt,2),Et=3*Math.pow(bt,2)*(1-bt),dt=Math.pow(bt,3),Ht=Lt*Ct.y0+St*Ct.y0+Et*Ct.y1+dt*Ct.y1,$t=Ht-Ct.width/2,fr=Ht+Ct.width/2,_r;$t>xt.y0&&$t<xt.y1?(_r=xt.y1-$t+10,_r=xt.circularLinkType=="bottom"?_r:-_r,xt=me(xt,_r,ot,Rt),rt.nodes.forEach(function(Br){C(Br,kt)==C(xt,kt)||Br.column!=xt.column||Ce(xt,Br)&&me(Br,_r,ot,Rt)})):fr>xt.y0&&fr<xt.y1?(_r=fr-xt.y0+10,xt=me(xt,_r,ot,Rt),rt.nodes.forEach(function(Br){C(Br,kt)==C(xt,kt)||Br.column!=xt.column||Br.y0<xt.y1&&Br.y1>xt.y1&&me(Br,_r,ot,Rt)})):$t<xt.y0&&fr>xt.y1&&(_r=fr-xt.y0+10,xt=me(xt,_r,ot,Rt),rt.nodes.forEach(function(Br){C(Br,kt)==C(xt,kt)||Br.column!=xt.column||Br.y0<xt.y1&&Br.y1>xt.y1&&me(Br,_r,ot,Rt)}))}})}})}function Ce(rt,ot){return rt.y0>ot.y0&&rt.y0<ot.y1||rt.y1>ot.y0&&rt.y1<ot.y1?!0:rt.y0<ot.y0&&rt.y1>ot.y1}function me(rt,ot,Rt,kt){return rt.y0+ot>=Rt&&rt.y1+ot<=kt&&(rt.y0=rt.y0+ot,rt.y1=rt.y1+ot,rt.targetLinks.forEach(function(Ct){Ct.y1=Ct.y1+ot}),rt.sourceLinks.forEach(function(Ct){Ct.y0=Ct.y0+ot})),rt}function Re(rt,ot,Rt,kt){rt.nodes.forEach(function(Ct){kt&&Ct.y+(Ct.y1-Ct.y0)>ot&&(Ct.y=Ct.y-(Ct.y+(Ct.y1-Ct.y0)-ot));var Yt=rt.links.filter(function(Ke){return C(Ke.source,Rt)==C(Ct,Rt)}),xr=Yt.length;xr>1&&Yt.sort(function(Ke,xt){if(!Ke.circular&&!xt.circular){if(Ke.target.column==xt.target.column)return Ke.y1-xt.y1;if(Ge(Ke,xt)){if(Ke.target.column>xt.target.column){var bt=Ae(xt,Ke);return Ke.y1-bt}if(xt.target.column>Ke.target.column){var Lt=Ae(Ke,xt);return Lt-xt.y1}}else return Ke.y1-xt.y1}if(Ke.circular&&!xt.circular)return Ke.circularLinkType=="top"?-1:1;if(xt.circular&&!Ke.circular)return xt.circularLinkType=="top"?1:-1;if(Ke.circular&&xt.circular)return Ke.circularLinkType===xt.circularLinkType&&Ke.circularLinkType=="top"?Ke.target.column===xt.target.column?Ke.target.y1-xt.target.y1:xt.target.column-Ke.target.column:Ke.circularLinkType===xt.circularLinkType&&Ke.circularLinkType=="bottom"?Ke.target.column===xt.target.column?xt.target.y1-Ke.target.y1:Ke.target.column-xt.target.column:Ke.circularLinkType=="top"?-1:1});var er=Ct.y0;Yt.forEach(function(Ke){Ke.y0=er+Ke.width/2,er=er+Ke.width}),Yt.forEach(function(Ke,xt){if(Ke.circularLinkType=="bottom"){var bt=xt+1,Lt=0;for(bt;bt<xr;bt++)Lt=Lt+Yt[bt].width;Ke.y0=Ct.y1-Lt-Ke.width/2}})})}function ce(rt,ot,Rt){rt.nodes.forEach(function(kt){var Ct=rt.links.filter(function(er){return C(er.target,Rt)==C(kt,Rt)}),Yt=Ct.length;Yt>1&&Ct.sort(function(er,Ke){if(!er.circular&&!Ke.circular){if(er.source.column==Ke.source.column)return er.y0-Ke.y0;if(Ge(er,Ke)){if(Ke.source.column<er.source.column){var xt=Ee(Ke,er);return er.y0-xt}if(er.source.column<Ke.source.column){var bt=Ee(er,Ke);return bt-Ke.y0}}else return er.y0-Ke.y0}if(er.circular&&!Ke.circular)return er.circularLinkType=="top"?-1:1;if(Ke.circular&&!er.circular)return Ke.circularLinkType=="top"?1:-1;if(er.circular&&Ke.circular)return er.circularLinkType===Ke.circularLinkType&&er.circularLinkType=="top"?er.source.column===Ke.source.column?er.source.y1-Ke.source.y1:er.source.column-Ke.source.column:er.circularLinkType===Ke.circularLinkType&&er.circularLinkType=="bottom"?er.source.column===Ke.source.column?er.source.y1-Ke.source.y1:Ke.source.column-er.source.column:er.circularLinkType=="top"?-1:1});var xr=kt.y0;Ct.forEach(function(er){er.y1=xr+er.width/2,xr=xr+er.width}),Ct.forEach(function(er,Ke){if(er.circularLinkType=="bottom"){var xt=Ke+1,bt=0;for(xt;xt<Yt;xt++)bt=bt+Ct[xt].width;er.y1=kt.y1-bt-er.width/2}})})}function Ge(rt,ot){return nt(rt)==nt(ot)}function nt(rt){return rt.y0-rt.y1>0?"up":"down"}function ct(rt,ot){return C(rt.source,ot)==C(rt.target,ot)}function qt(rt,ot,Rt){var kt=rt.nodes,Ct=rt.links,Yt=!1,xr=!1;if(Ct.forEach(function(St){St.circularLinkType=="top"?Yt=!0:St.circularLinkType=="bottom"&&(xr=!0)}),Yt==!1||xr==!1){var er=t.min(kt,function(St){return St.y0}),Ke=t.max(kt,function(St){return St.y1}),xt=Ke-er,bt=Rt-ot,Lt=bt/xt;kt.forEach(function(St){var Et=(St.y1-St.y0)*Lt;St.y0=(St.y0-er)*Lt,St.y1=St.y0+Et}),Ct.forEach(function(St){St.y0=(St.y0-er)*Lt,St.y1=(St.y1-er)*Lt,St.width=St.width*Lt})}}e.sankeyCircular=T,e.sankeyCenter=u,e.sankeyLeft=o,e.sankeyRight=s,e.sankeyJustify=l,Object.defineProperty(e,"__esModule",{value:!0})})});var IJ=ye((x_r,Pje)=>{"use strict";Pje.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}});var Gje=ye((b_r,Hje)=>{"use strict";var Ije=bje(),MWt=(R2(),B1(I2)).interpolateNumber,CA=xa(),Gk=Mje(),EWt=Lje(),pu=IJ(),LA=id(),aw=va(),kWt=ao(),p1=Mr(),zJ=p1.strTranslate,CWt=p1.strRotate,FJ=Km(),jk=FJ.keyFun,b7=FJ.repeat,Oje=FJ.unwrap,Rje=Pl(),LWt=ba(),Bje=Nh(),PWt=Bje.CAP_SHIFT,IWt=Bje.LINE_SPACING,RWt=3;function DWt(e,t,r){var n=Oje(t),i=n.trace,a=i.domain,o=i.orientation==="h",s=i.node.pad,l=i.node.thickness,u={justify:Gk.sankeyJustify,left:Gk.sankeyLeft,right:Gk.sankeyRight,center:Gk.sankeyCenter}[i.node.align],c=e.width*(a.x[1]-a.x[0]),f=e.height*(a.y[1]-a.y[0]),h=n._nodes,d=n._links,v=n.circular,x;v?x=EWt.sankeyCircular().circularLinkGap(0):x=Gk.sankey(),x.iterations(pu.sankeyIterations).size(o?[c,f]:[f,c]).nodeWidth(l).nodePadding(s).nodeId(function(V){return V.pointNumber}).nodeAlign(u).nodes(h).links(d);var b=x();x.nodePadding()<s&&p1.warn("node.pad was reduced to ",x.nodePadding()," to fit within the figure.");var p,E,k;for(var A in n._groupLookup){var L=parseInt(n._groupLookup[A]),_;for(p=0;p<b.nodes.length;p++)if(b.nodes[p].pointNumber===L){_=b.nodes[p];break}if(_){var C={pointNumber:parseInt(A),x0:_.x0,x1:_.x1,y0:_.y0,y1:_.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};b.nodes.unshift(C),_.childrenNodes.unshift(C)}}function M(){for(p=0;p<b.nodes.length;p++){var V=b.nodes[p],H={},X,G;for(E=0;E<V.targetLinks.length;E++)G=V.targetLinks[E],X=G.source.pointNumber+":"+G.target.pointNumber,H.hasOwnProperty(X)||(H[X]=[]),H[X].push(G);var N=Object.keys(H);for(E=0;E<N.length;E++){X=N[E];var W=H[X],re=0,ae={};for(k=0;k<W.length;k++)G=W[k],ae[G.label]||(ae[G.label]=0),ae[G.label]+=G.value,re+=G.value;for(k=0;k<W.length;k++)G=W[k],G.flow={value:re,labelConcentration:ae[G.label]/re,concentration:G.value/re,links:W},G.concentrationscale&&(G.color=LA(G.concentrationscale(G.flow.labelConcentration)))}var _e=0;for(E=0;E<V.sourceLinks.length;E++)_e+=V.sourceLinks[E].value;for(E=0;E<V.sourceLinks.length;E++)G=V.sourceLinks[E],G.concentrationOut=G.value/_e;var Me=0;for(E=0;E<V.targetLinks.length;E++)Me+=V.targetLinks[E].value;for(E=0;E<V.targetLinks.length;E++)G=V.targetLinks[E],G.concenrationIn=G.value/Me}}M();function g(V){V.forEach(function(H){var X,G,N=0,W=H.length,re;for(H.sort(function(ae,_e){return ae.y0-_e.y0}),re=0;re<W;++re)X=H[re],X.y0>=N||(G=N-X.y0,G>1e-6&&(X.y0+=G,X.y1+=G)),N=X.y1+s})}function P(V){var H=V.map(function(_e,Me){return{x0:_e.x0,index:Me}}).sort(function(_e,Me){return _e.x0-Me.x0}),X=[],G=-1,N,W=-1/0,re;for(p=0;p<H.length;p++){var ae=V[H[p].index];ae.x0>W+l&&(G+=1,N=ae.x0),W=ae.x0,X[G]||(X[G]=[]),X[G].push(ae),re=N-ae.x0,ae.x0+=re,ae.x1+=re}return X}if(i.node.x.length&&i.node.y.length){for(p=0;p<Math.min(i.node.x.length,i.node.y.length,b.nodes.length);p++)if(i.node.x[p]&&i.node.y[p]){var T=[i.node.x[p]*c,i.node.y[p]*f];b.nodes[p].x0=T[0]-l/2,b.nodes[p].x1=T[0]+l/2;var F=b.nodes[p].y1-b.nodes[p].y0;b.nodes[p].y0=T[1]-F/2,b.nodes[p].y1=T[1]+F/2}if(i.arrangement==="snap"){h=b.nodes;var q=P(h);g(q)}x.update(b)}return{circular:v,key:r,trace:i,guid:p1.randstr(),horizontal:o,width:c,height:f,nodePad:i.node.pad,nodeLineColor:i.node.line.color,nodeLineWidth:i.node.line.width,linkLineColor:i.link.line.color,linkLineWidth:i.link.line.width,linkArrowLength:i.link.arrowlen,valueFormat:i.valueformat,valueSuffix:i.valuesuffix,textFont:i.textfont,translateX:a.x[0]*e.width+e.margin.l,translateY:e.height-a.y[1]*e.height+e.margin.t,dragParallel:o?f:c,dragPerpendicular:o?c:f,arrangement:i.arrangement,sankey:x,graph:b,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function zWt(e,t,r){var n=LA(t.color),i=LA(t.hovercolor),a=t.source.label+"|"+t.target.label,o=a+"__"+r;return t.trace=e.trace,t.curveNumber=e.trace.index,{circular:e.circular,key:o,traceId:e.key,pointNumber:t.pointNumber,link:t,tinyColorHue:aw.tinyRGB(n),tinyColorAlpha:n.getAlpha(),tinyColorHoverHue:aw.tinyRGB(i),tinyColorHoverAlpha:i.getAlpha(),linkPath:qJ,linkLineColor:e.linkLineColor,linkLineWidth:e.linkLineWidth,linkArrowLength:e.linkArrowLength,valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,parent:e,interactionState:e.interactionState,flow:t.flow}}function FWt(e,t){var r="",n=e.width/2,i=e.circularPathData,a=i.sourceX+i.verticalBuffer<i.targetX,o=i.rightFullExtent-i.rightLargeArcRadius-t<=i.leftFullExtent-n,s=Math.abs(i.rightFullExtent-i.leftFullExtent-n)<n;return e.circularLinkType==="top"?(r="M "+(i.targetX-t)+" "+(i.targetY+n)+" L "+(i.rightInnerExtent-t)+" "+(i.targetY+n)+"A "+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 1 "+(i.rightFullExtent-n-t)+" "+(i.targetY-i.rightSmallArcRadius)+"L "+(i.rightFullExtent-n-t)+" "+i.verticalRightInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 1 "+(i.rightFullExtent+n-t-(i.rightLargeArcRadius-n))+" "+(i.verticalRightInnerExtent-(i.rightLargeArcRadius+n))+" L "+(i.rightFullExtent+n-(i.rightLargeArcRadius-n)-t)+" "+(i.verticalRightInnerExtent-(i.rightLargeArcRadius+n))+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalRightInnerExtent:a?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 0 "+(i.rightFullExtent-n-t-(i.rightLargeArcRadius-n))+" "+(i.verticalRightInnerExtent-(i.rightLargeArcRadius-n))+" L "+(i.leftFullExtent+n+(i.rightLargeArcRadius-n))+" "+(i.verticalRightInnerExtent-(i.rightLargeArcRadius-n))+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 1 "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent-n)+" L "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent,r+=" L "+(i.leftFullExtent+n)+" "+(i.sourceY-i.leftSmallArcRadius)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.sourceY+n)+" L "+i.sourceX+" "+(i.sourceY+n)+" L "+i.sourceX+" "+(i.sourceY-n)+" L "+i.leftInnerExtent+" "+(i.sourceY-n)+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 0 "+(i.leftFullExtent-n)+" "+(i.sourceY-i.leftSmallArcRadius)+" L "+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent,a&&o?r+=" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+(i.leftFullExtent-n)+" "+(i.verticalFullExtent+n)+"L"+(i.rightFullExtent+n-t)+" "+(i.verticalFullExtent+n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:a?r+=" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+(i.verticalFullExtent-n)+" L "+(i.rightFullExtent-n-t)+" "+(i.verticalFullExtent-n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:r+=" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+" L "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 0 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent,r+=" L "+(i.rightFullExtent+n-t)+" "+(i.targetY-i.rightSmallArcRadius)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 0 "+(i.rightInnerExtent-t)+" "+(i.targetY-n)+" L "+(i.targetX-t)+" "+(i.targetY-n)+(t>0?" L "+i.targetX+" "+i.targetY:"")+"Z"):(r="M "+(i.targetX-t)+" "+(i.targetY-n)+" L "+(i.rightInnerExtent-t)+" "+(i.targetY-n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightSmallArcRadius+n)+" 0 0 0 "+(i.rightFullExtent-n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" L "+(i.rightFullExtent-n-t)+" "+i.verticalRightInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-n-t)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent+n-t-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:a?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent-t-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.leftFullExtent+n+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent:r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent+n)+" L "+i.leftInnerExtent+" "+(i.verticalFullExtent+n)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+i.verticalLeftInnerExtent,r+=" L "+(i.leftFullExtent+n)+" "+(i.sourceY+i.leftSmallArcRadius)+" A "+(i.leftLargeArcRadius+n)+" "+(i.leftSmallArcRadius+n)+" 0 0 0 "+i.leftInnerExtent+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY-n)+" L "+i.sourceX+" "+(i.sourceY+n)+" L "+i.leftInnerExtent+" "+(i.sourceY+n)+" A "+(i.leftLargeArcRadius-n)+" "+(i.leftSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n)+" "+(i.sourceY+i.leftSmallArcRadius)+" L "+(i.leftFullExtent-n)+" "+i.verticalLeftInnerExtent,a&&o?r+=" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.leftFullExtent-n-(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" L "+(i.rightFullExtent+n-t+(i.rightLargeArcRadius-n))+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:a?r+=" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.leftFullExtent+n)+" "+(i.verticalFullExtent+n)+" L "+(i.rightFullExtent-t-n)+" "+(i.verticalFullExtent+n)+" A "+(i.rightLargeArcRadius+n)+" "+(i.rightLargeArcRadius+n)+" 0 0 0 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent:r+=" A "+(i.leftLargeArcRadius-n)+" "+(i.leftLargeArcRadius-n)+" 0 0 1 "+i.leftInnerExtent+" "+(i.verticalFullExtent-n)+" L "+(i.rightInnerExtent-t)+" "+(i.verticalFullExtent-n)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightLargeArcRadius-n)+" 0 0 1 "+(i.rightFullExtent+n-t)+" "+i.verticalRightInnerExtent,r+=" L "+(i.rightFullExtent+n-t)+" "+(i.targetY+i.rightSmallArcRadius)+" A "+(i.rightLargeArcRadius-n)+" "+(i.rightSmallArcRadius-n)+" 0 0 1 "+(i.rightInnerExtent-t)+" "+(i.targetY+n)+" L "+(i.targetX-t)+" "+(i.targetY+n)+(t>0?" L "+i.targetX+" "+i.targetY:"")+"Z"),r}function qJ(){var e=.5;function t(r){var n=r.linkArrowLength;if(r.link.circular)return FWt(r.link,n);var i=Math.abs((r.link.target.x0-r.link.source.x1)/2);n>i&&(n=i);var a=r.link.source.x1,o=r.link.target.x0-n,s=MWt(a,o),l=s(e),u=s(1-e),c=r.link.y0-r.link.width/2,f=r.link.y0+r.link.width/2,h=r.link.y1-r.link.width/2,d=r.link.y1+r.link.width/2,v="M"+a+","+c,x="C"+l+","+c+" "+u+","+h+" "+o+","+h,b="C"+u+","+d+" "+l+","+f+" "+a+","+f,p=n>0?"L"+(o+n)+","+(h+r.link.width/2):"";return p+="L"+o+","+d,v+x+p+b+"Z"}return t}function qWt(e,t){var r=LA(t.color),n=pu.nodePadAcross,i=e.nodePad/2;t.dx=t.x1-t.x0,t.dy=t.y1-t.y0;var a=t.dx,o=Math.max(.5,t.dy),s="node_"+t.pointNumber;return t.group&&(s=p1.randstr()),t.trace=e.trace,t.curveNumber=e.trace.index,{index:t.pointNumber,key:s,partOfGroup:t.partOfGroup||!1,group:t.group,traceId:e.key,trace:e.trace,node:t,nodePad:e.nodePad,nodeLineColor:e.nodeLineColor,nodeLineWidth:e.nodeLineWidth,textFont:e.textFont,size:e.horizontal?e.height:e.width,visibleWidth:Math.ceil(a),visibleHeight:o,zoneX:-n,zoneY:-i,zoneWidth:a+2*n,zoneHeight:o+2*i,labelY:e.horizontal?t.dy/2+1:t.dx/2+1,left:t.originalLayer===1,sizeAcross:e.width,forceLayouts:e.forceLayouts,horizontal:e.horizontal,darkBackground:r.getBrightness()<=128,tinyColorHue:aw.tinyRGB(r),tinyColorAlpha:r.getAlpha(),valueFormat:e.valueFormat,valueSuffix:e.valueSuffix,sankey:e.sankey,graph:e.graph,arrangement:e.arrangement,uniqueNodeLabelPathId:[e.guid,e.key,s].join("_"),interactionState:e.interactionState,figure:e}}function DJ(e){e.attr("transform",function(t){return zJ(t.node.x0.toFixed(3),t.node.y0.toFixed(3))})}function OWt(e){e.call(DJ)}function Nje(e,t){e.call(OWt),t.attr("d",qJ())}function Dje(e){e.attr("width",function(t){return t.node.x1-t.node.x0}).attr("height",function(t){return t.visibleHeight})}function RJ(e){return e.link.width>1||e.linkLineWidth>0}function zje(e){var t=zJ(e.translateX,e.translateY);return t+(e.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function Fje(e,t,r){e.on(".basic",null).on("mouseover.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.hover(this,n,t),n.interactionState.hovered=[this,n])}).on("mousemove.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.follow(this,n),n.interactionState.hovered=[this,n])}).on("mouseout.basic",function(n){!n.interactionState.dragInProgress&&!n.partOfGroup&&(r.unhover(this,n,t),n.interactionState.hovered=!1)}).on("click.basic",function(n){n.interactionState.hovered&&(r.unhover(this,n,t),n.interactionState.hovered=!1),!n.interactionState.dragInProgress&&!n.partOfGroup&&r.select(this,n,t)})}function BWt(e,t,r,n){var i=CA.behavior.drag().origin(function(a){return{x:a.node.x0+a.visibleWidth/2,y:a.node.y0+a.visibleHeight/2}}).on("dragstart",function(a){if(a.arrangement!=="fixed"&&(p1.ensureSingle(n._fullLayout._infolayer,"g","dragcover",function(s){n._fullLayout._dragCover=s}),p1.raiseToTop(this),a.interactionState.dragInProgress=a.node,qje(a.node),a.interactionState.hovered&&(r.nodeEvents.unhover.apply(0,a.interactionState.hovered),a.interactionState.hovered=!1),a.arrangement==="snap")){var o=a.traceId+"|"+a.key;a.forceLayouts[o]?a.forceLayouts[o].alpha(1):NWt(e,o,a,n),UWt(e,t,a,o,n)}}).on("drag",function(a){if(a.arrangement!=="fixed"){var o=CA.event.x,s=CA.event.y;a.arrangement==="snap"?(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2,a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2):(a.arrangement==="freeform"&&(a.node.x0=o-a.visibleWidth/2,a.node.x1=o+a.visibleWidth/2),s=Math.max(0,Math.min(a.size-a.visibleHeight/2,s)),a.node.y0=s-a.visibleHeight/2,a.node.y1=s+a.visibleHeight/2),qje(a.node),a.arrangement!=="snap"&&(a.sankey.update(a.graph),Nje(e.filter(Vje(a)),t))}}).on("dragend",function(a){if(a.arrangement!=="fixed"){a.interactionState.dragInProgress=!1;for(var o=0;o<a.node.childrenNodes.length;o++)a.node.childrenNodes[o].x=a.node.x,a.node.childrenNodes[o].y=a.node.y;a.arrangement!=="snap"&&Uje(a,n)}});e.on(".drag",null).call(i)}function NWt(e,t,r,n){GWt(r.graph.nodes);var i=r.graph.nodes.filter(function(a){return a.originalX===r.node.originalX}).filter(function(a){return!a.partOfGroup});r.forceLayouts[t]=Ije.forceSimulation(i).alphaDecay(0).force("collide",Ije.forceCollide().radius(function(a){return a.dy/2+r.nodePad/2}).strength(1).iterations(pu.forceIterations)).force("constrain",VWt(e,t,i,r,n)).stop()}function UWt(e,t,r,n,i){window.requestAnimationFrame(function a(){var o;for(o=0;o<pu.forceTicksPerFrame;o++)r.forceLayouts[n].tick();var s=r.graph.nodes;if(jWt(s),r.sankey.update(r.graph),Nje(e.filter(Vje(r)),t),r.forceLayouts[n].alpha()>0)window.requestAnimationFrame(a);else{var l=r.node.originalX;r.node.x0=l-r.visibleWidth/2,r.node.x1=l+r.visibleWidth/2,Uje(r,i)}})}function VWt(e,t,r,n){return function(){for(var a=0,o=0;o<r.length;o++){var s=r[o];s===n.interactionState.dragInProgress?(s.x=s.lastDraggedX,s.y=s.lastDraggedY):(s.vx=(s.originalX-s.x)/pu.forceTicksPerFrame,s.y=Math.min(n.size-s.dy/2,Math.max(s.dy/2,s.y))),a=Math.max(a,Math.abs(s.vx),Math.abs(s.vy))}!n.interactionState.dragInProgress&&a<.1&&n.forceLayouts[t].alpha()>0&&n.forceLayouts[t].alpha(0)}}function Uje(e,t){for(var r=[],n=[],i=0;i<e.graph.nodes.length;i++){var a=(e.graph.nodes[i].x0+e.graph.nodes[i].x1)/2,o=(e.graph.nodes[i].y0+e.graph.nodes[i].y1)/2;r.push(a/e.figure.width),n.push(o/e.figure.height)}LWt.call("_guiRestyle",t,{"node.x":[r],"node.y":[n]},e.trace.index).then(function(){t._fullLayout._dragCover&&t._fullLayout._dragCover.remove()})}function HWt(e){var t=[],r;for(r=0;r<e.length;r++)e[r].originalX=(e[r].x0+e[r].x1)/2,e[r].originalY=(e[r].y0+e[r].y1)/2,t.indexOf(e[r].originalX)===-1&&t.push(e[r].originalX);for(t.sort(function(n,i){return n-i}),r=0;r<e.length;r++)e[r].originalLayerIndex=t.indexOf(e[r].originalX),e[r].originalLayer=e[r].originalLayerIndex/(t.length-1)}function qje(e){e.lastDraggedX=e.x0+e.dx/2,e.lastDraggedY=e.y0+e.dy/2}function Vje(e){return function(t){return t.node.originalX===e.node.originalX}}function GWt(e){for(var t=0;t<e.length;t++)e[t].y=(e[t].y0+e[t].y1)/2,e[t].x=(e[t].x0+e[t].x1)/2}function jWt(e){for(var t=0;t<e.length;t++)e[t].y0=e[t].y-e[t].dy/2,e[t].y1=e[t].y0+e[t].dy,e[t].x0=e[t].x-e[t].dx/2,e[t].x1=e[t].x0+e[t].dx}Hje.exports=function(e,t,r,n,i){var a=e._context.staticPlot,o=!1;p1.ensureSingle(e._fullLayout._infolayer,"g","first-render",function(){o=!0});var s=e._fullLayout._dragCover,l=r.filter(function(b){return Oje(b).trace.visible}).map(DWt.bind(null,n)),u=t.selectAll("."+pu.cn.sankey).data(l,jk);u.exit().remove(),u.enter().append("g").classed(pu.cn.sankey,!0).style("box-sizing","content-box").style("position","absolute").style("left",0).style("shape-rendering","geometricPrecision").style("pointer-events",a?"none":"auto").attr("transform",zje),u.each(function(b,p){e._fullData[p]._sankey=b;var E="bgsankey-"+b.trace.uid+"-"+p;p1.ensureSingle(e._fullLayout._draggers,"rect",E),e._fullData[p]._bgRect=CA.select("."+E),e._fullData[p]._bgRect.style("pointer-events",a?"none":"all").attr("width",b.width).attr("height",b.height).attr("x",b.translateX).attr("y",b.translateY).classed("bgsankey",!0).style({fill:"transparent","stroke-width":0})}),u.transition().ease(pu.ease).duration(pu.duration).attr("transform",zje);var c=u.selectAll("."+pu.cn.sankeyLinks).data(b7,jk);c.enter().append("g").classed(pu.cn.sankeyLinks,!0).style("fill","none");var f=c.selectAll("."+pu.cn.sankeyLink).data(function(b){var p=b.graph.links;return p.filter(function(E){return E.value}).map(zWt.bind(null,b))},jk);f.enter().append("path").classed(pu.cn.sankeyLink,!0).call(Fje,u,i.linkEvents),f.style("stroke",function(b){return RJ(b)?aw.tinyRGB(LA(b.linkLineColor)):b.tinyColorHue}).style("stroke-opacity",function(b){return RJ(b)?aw.opacity(b.linkLineColor):b.tinyColorAlpha}).style("fill",function(b){return b.tinyColorHue}).style("fill-opacity",function(b){return b.tinyColorAlpha}).style("stroke-width",function(b){return RJ(b)?b.linkLineWidth:1}).attr("d",qJ()),f.style("opacity",function(){return e._context.staticPlot||o||s?1:0}).transition().ease(pu.ease).duration(pu.duration).style("opacity",1),f.exit().transition().ease(pu.ease).duration(pu.duration).style("opacity",0).remove();var h=u.selectAll("."+pu.cn.sankeyNodeSet).data(b7,jk);h.enter().append("g").classed(pu.cn.sankeyNodeSet,!0),h.style("cursor",function(b){switch(b.arrangement){case"fixed":return"default";case"perpendicular":return"ns-resize";default:return"move"}});var d=h.selectAll("."+pu.cn.sankeyNode).data(function(b){var p=b.graph.nodes;return HWt(p),p.map(qWt.bind(null,b))},jk);d.enter().append("g").classed(pu.cn.sankeyNode,!0).call(DJ).style("opacity",function(b){return(e._context.staticPlot||o)&&!b.partOfGroup?1:0}),d.call(Fje,u,i.nodeEvents).call(BWt,f,i,e),d.transition().ease(pu.ease).duration(pu.duration).call(DJ).style("opacity",function(b){return b.partOfGroup?0:1}),d.exit().transition().ease(pu.ease).duration(pu.duration).style("opacity",0).remove();var v=d.selectAll("."+pu.cn.nodeRect).data(b7);v.enter().append("rect").classed(pu.cn.nodeRect,!0).call(Dje),v.style("stroke-width",function(b){return b.nodeLineWidth}).style("stroke",function(b){return aw.tinyRGB(LA(b.nodeLineColor))}).style("stroke-opacity",function(b){return aw.opacity(b.nodeLineColor)}).style("fill",function(b){return b.tinyColorHue}).style("fill-opacity",function(b){return b.tinyColorAlpha}),v.transition().ease(pu.ease).duration(pu.duration).call(Dje);var x=d.selectAll("."+pu.cn.nodeLabel).data(b7);x.enter().append("text").classed(pu.cn.nodeLabel,!0).style("cursor","default"),x.attr("data-notex",1).text(function(b){return b.node.label}).each(function(b){var p=CA.select(this);kWt.font(p,b.textFont),Rje.convertToTspans(p,e)}).attr("text-anchor",function(b){return b.horizontal&&b.left?"end":"start"}).attr("transform",function(b){var p=CA.select(this),E=Rje.lineCount(p),k=b.textFont.size*((E-1)*IWt-PWt),A=b.nodeLineWidth/2+RWt,L=((b.horizontal?b.visibleHeight:b.visibleWidth)-k)/2;b.horizontal&&(b.left?A=-A:A+=b.visibleWidth);var _=b.horizontal?"":"scale(-1,1)"+CWt(90);return zJ(b.horizontal?A:L,b.horizontal?L:A)+_}),x.transition().ease(pu.ease).duration(pu.duration)}});var NJ=ye((w_r,Qje)=>{"use strict";var Zv=xa(),BJ=Mr(),w7=BJ.numberFormat,WWt=Gje(),PA=Nc(),ZWt=va(),Sx=IJ().cn,Wk=BJ._;function jje(e){return e!==""}function IA(e,t){return e.filter(function(r){return r.key===t.traceId})}function Wje(e,t){Zv.select(e).select("path").style("fill-opacity",t),Zv.select(e).select("rect").style("fill-opacity",t)}function Zje(e){Zv.select(e).select("text.name").style("fill","black")}function Xje(e){return function(t){return e.node.sourceLinks.indexOf(t.link)!==-1||e.node.targetLinks.indexOf(t.link)!==-1}}function Yje(e){return function(t){return t.node.sourceLinks.indexOf(e.link)!==-1||t.node.targetLinks.indexOf(e.link)!==-1}}function Kje(e,t,r){t&&r&&IA(r,t).selectAll("."+Sx.sankeyLink).filter(Xje(t)).call(Jje.bind(0,t,r,!1))}function OJ(e,t,r){t&&r&&IA(r,t).selectAll("."+Sx.sankeyLink).filter(Xje(t)).call($je.bind(0,t,r,!1))}function Jje(e,t,r,n){n.style("fill",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverHue}).style("fill-opacity",function(i){if(!i.link.concentrationscale)return i.tinyColorHoverAlpha}),n.each(function(i){var a=i.link.label;a!==""&&IA(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverHue}).style("fill-opacity",function(o){if(!o.link.concentrationscale)return o.tinyColorHoverAlpha})}),r&&IA(t,e).selectAll("."+Sx.sankeyNode).filter(Yje(e)).call(Kje)}function $je(e,t,r,n){n.style("fill",function(i){return i.tinyColorHue}).style("fill-opacity",function(i){return i.tinyColorAlpha}),n.each(function(i){var a=i.link.label;a!==""&&IA(t,e).selectAll("."+Sx.sankeyLink).filter(function(o){return o.link.label===a}).style("fill",function(o){return o.tinyColorHue}).style("fill-opacity",function(o){return o.tinyColorAlpha})}),r&&IA(t,e).selectAll(Sx.sankeyNode).filter(Yje(e)).call(OJ)}function lf(e,t){var r=e.hoverlabel||{},n=BJ.nestedProperty(r,t).get();return Array.isArray(n)?!1:n}Qje.exports=function(t,r){for(var n=t._fullLayout,i=n._paper,a=n._size,o=0;o<t._fullData.length;o++)if(t._fullData[o].visible&&t._fullData[o].type===Sx.sankey&&!t._fullData[o]._viewInitial){var s=t._fullData[o].node;t._fullData[o]._viewInitial={node:{groups:s.groups.slice(),x:s.x.slice(),y:s.y.slice()}}}var l=function(L,_){var C=_.link;C.originalEvent=Zv.event,t._hoverdata=[C],PA.click(t,{target:!0})},u=function(L,_,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call(Jje.bind(0,_,C,!0)),_.link.trace.link.hoverinfo!=="skip"&&(_.link.fullData=_.link.trace,t.emit("plotly_hover",{event:Zv.event,points:[_.link]})))},c=Wk(t,"source:")+" ",f=Wk(t,"target:")+" ",h=Wk(t,"concentration:")+" ",d=Wk(t,"incoming flow count:")+" ",v=Wk(t,"outgoing flow count:")+" ",x=function(L,_){if(t._fullLayout.hovermode===!1)return;var C=_.link.trace.link;if(C.hoverinfo==="none"||C.hoverinfo==="skip")return;var M=[];function g(X){var G,N;X.circular?(G=(X.circularPathData.leftInnerExtent+X.circularPathData.rightInnerExtent)/2,N=X.circularPathData.verticalFullExtent):(G=(X.source.x1+X.target.x0)/2,N=(X.y0+X.y1)/2);var W=[G,N];return X.trace.orientation==="v"&&W.reverse(),W[0]+=_.parent.translateX,W[1]+=_.parent.translateY,W}for(var P=0,T=0;T<_.flow.links.length;T++){var F=_.flow.links[T];if(!(t._fullLayout.hovermode==="closest"&&_.link.pointNumber!==F.pointNumber)){_.link.pointNumber===F.pointNumber&&(P=T),F.fullData=F.trace,C=_.link.trace.link;var q=g(F),V={valueLabel:w7(_.valueFormat)(F.value)+_.valueSuffix};M.push({x:q[0],y:q[1],name:V.valueLabel,text:[F.label||"",c+F.source.label,f+F.target.label,F.concentrationscale?h+w7("%0.2f")(F.flow.labelConcentration):""].filter(jje).join("<br>"),color:lf(C,"bgcolor")||ZWt.addOpacity(F.color,1),borderColor:lf(C,"bordercolor"),fontFamily:lf(C,"font.family"),fontSize:lf(C,"font.size"),fontColor:lf(C,"font.color"),fontWeight:lf(C,"font.weight"),fontStyle:lf(C,"font.style"),fontVariant:lf(C,"font.variant"),fontTextcase:lf(C,"font.textcase"),fontLineposition:lf(C,"font.lineposition"),fontShadow:lf(C,"font.shadow"),nameLength:lf(C,"namelength"),textAlign:lf(C,"align"),idealAlign:Zv.event.x<q[0]?"right":"left",hovertemplate:C.hovertemplate,hovertemplateLabels:V,eventData:[F]})}}var H=PA.loneHover(M,{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t,anchorIndex:P});H.each(function(){var X=this;_.link.concentrationscale||Wje(X,.65),Zje(X)})},b=function(L,_,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call($je.bind(0,_,C,!0)),_.link.trace.link.hoverinfo!=="skip"&&(_.link.fullData=_.link.trace,t.emit("plotly_unhover",{event:Zv.event,points:[_.link]})),PA.loneUnhover(n._hoverlayer.node()))},p=function(L,_,C){var M=_.node;M.originalEvent=Zv.event,t._hoverdata=[M],Zv.select(L).call(OJ,_,C),PA.click(t,{target:!0})},E=function(L,_,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call(Kje,_,C),_.node.trace.node.hoverinfo!=="skip"&&(_.node.fullData=_.node.trace,t.emit("plotly_hover",{event:Zv.event,points:[_.node]})))},k=function(L,_){if(t._fullLayout.hovermode!==!1){var C=_.node.trace.node;if(!(C.hoverinfo==="none"||C.hoverinfo==="skip")){var M=Zv.select(L).select("."+Sx.nodeRect),g=t._fullLayout._paperdiv.node().getBoundingClientRect(),P=M.node().getBoundingClientRect(),T=P.left-2-g.left,F=P.right+2-g.left,q=P.top+P.height/4-g.top,V={valueLabel:w7(_.valueFormat)(_.node.value)+_.valueSuffix};_.node.fullData=_.node.trace,t._fullLayout._calcInverseTransform(t);var H=t._fullLayout._invScaleX,X=t._fullLayout._invScaleY,G=PA.loneHover({x0:H*T,x1:H*F,y:X*q,name:w7(_.valueFormat)(_.node.value)+_.valueSuffix,text:[_.node.label,d+_.node.targetLinks.length,v+_.node.sourceLinks.length].filter(jje).join("<br>"),color:lf(C,"bgcolor")||_.tinyColorHue,borderColor:lf(C,"bordercolor"),fontFamily:lf(C,"font.family"),fontSize:lf(C,"font.size"),fontColor:lf(C,"font.color"),fontWeight:lf(C,"font.weight"),fontStyle:lf(C,"font.style"),fontVariant:lf(C,"font.variant"),fontTextcase:lf(C,"font.textcase"),fontLineposition:lf(C,"font.lineposition"),fontShadow:lf(C,"font.shadow"),nameLength:lf(C,"namelength"),textAlign:lf(C,"align"),idealAlign:"left",hovertemplate:C.hovertemplate,hovertemplateLabels:V,eventData:[_.node]},{container:n._hoverlayer.node(),outerContainer:n._paper.node(),gd:t});Wje(G,.85),Zje(G)}}},A=function(L,_,C){t._fullLayout.hovermode!==!1&&(Zv.select(L).call(OJ,_,C),_.node.trace.node.hoverinfo!=="skip"&&(_.node.fullData=_.node.trace,t.emit("plotly_unhover",{event:Zv.event,points:[_.node]})),PA.loneUnhover(n._hoverlayer.node()))};WWt(t,i,r,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},{linkEvents:{hover:u,follow:x,unhover:b,select:l},nodeEvents:{hover:E,follow:k,unhover:A,select:p}})}});var eWe=ye(ow=>{"use strict";var XWt=Bu().overrideAll,YWt=kd().getModuleCalcData,KWt=NJ(),JWt=N1(),$Wt=Tg(),QWt=gv(),eZt=wf().prepSelect,UJ=Mr(),tZt=ba(),T7="sankey";ow.name=T7;ow.baseLayoutAttrOverrides=XWt({hoverlabel:JWt.hoverlabel},"plot","nested");ow.plot=function(e){var t=YWt(e.calcdata,T7)[0];KWt(e,t),ow.updateFx(e)};ow.clean=function(e,t,r,n){var i=n._has&&n._has(T7),a=t._has&&t._has(T7);i&&!a&&(n._paperdiv.selectAll(".sankey").remove(),n._paperdiv.selectAll(".bgsankey").remove())};ow.updateFx=function(e){for(var t=0;t<e._fullData.length;t++)rZt(e,t)};function rZt(e,t){var r=e._fullData[t],n=e._fullLayout,i=n.dragmode,a=n.dragmode==="pan"?"move":"crosshair",o=r._bgRect;if(o&&!(i==="pan"||i==="zoom")){$Wt(o,a);var s={_id:"x",c2p:UJ.identity,_offset:r._sankey.translateX,_length:r._sankey.width},l={_id:"y",c2p:UJ.identity,_offset:r._sankey.translateY,_length:r._sankey.height},u={gd:e,element:o.node(),plotinfo:{id:t,xaxis:s,yaxis:l,fillRangeItems:UJ.noop},subplot:t,xaxes:[s],yaxes:[l],doneFnCompleted:function(c){var f=e._fullData[t],h,d=f.node.groups.slice(),v=[];function x(k){for(var A=f._sankey.graph.nodes,L=0;L<A.length;L++)if(A[L].pointNumber===k)return A[L]}for(var b=0;b<c.length;b++){var p=x(c[b].pointNumber);if(p)if(p.group){for(var E=0;E<p.childrenNodes.length;E++)v.push(p.childrenNodes[E].pointNumber);d[p.pointNumber-f.node._count]=!1}else v.push(p.pointNumber)}h=d.filter(Boolean).concat([v]),tZt.call("_guiRestyle",e,{"node.groups":[h]},t)}};u.prepFn=function(c,f,h){eZt(c,f,h,u,i)},QWt.init(u)}}});var rWe=ye((A_r,tWe)=>{"use strict";tWe.exports=function(t,r){for(var n=t.cd,i=[],a=n[0].trace,o=a._sankey.graph.nodes,s=0;s<o.length;s++){var l=o[s];if(!l.partOfGroup){var u=[(l.x0+l.x1)/2,(l.y0+l.y1)/2];a.orientation==="v"&&u.reverse(),r&&r.contains(u,!1,s,t)&&i.push({pointNumber:l.pointNumber})}}return i}});var nWe=ye((S_r,iWe)=>{"use strict";iWe.exports={attributes:CJ(),supplyDefaults:sje(),calc:hje(),plot:NJ(),moduleType:"trace",name:"sankey",basePlotModule:eWe(),selectPoints:rWe(),categories:["noOpacity"],meta:{}}});var oWe=ye((M_r,aWe)=>{"use strict";aWe.exports=nWe()});var lWe=ye(RA=>{"use strict";var sWe=Xu();RA.name="indicator";RA.plot=function(e,t,r,n){sWe.plotBasePlot(RA.name,e,t,r,n)};RA.clean=function(e,t,r,n){sWe.cleanBasePlot(RA.name,e,t,r,n)}});var HJ=ye((k_r,vWe)=>{"use strict";var Mx=no().extendFlat,cWe=no().extendDeep,iZt=Bu().overrideAll,fWe=Su(),hWe=dh(),nZt=Ju().attributes,Sf=Cd(),aZt=Vs().templatedArray,A7=HT(),uWe=Oc().descriptionOnlyNumbers,VJ=fWe({editType:"plot",colorEditType:"plot"}),Zk={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:hWe.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"},dWe={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},oZt=aZt("step",cWe({},Zk,{range:dWe}));vWe.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:nZt({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:Mx({},VJ,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:uWe("value")},font:Mx({},VJ,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:uWe("value")},increasing:{symbol:{valType:"string",dflt:A7.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:A7.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:A7.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:A7.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:Mx({},VJ,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:cWe({},Zk,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:hWe.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:iZt({range:dWe,visible:Mx({},Sf.visible,{dflt:!0}),tickmode:Sf.minor.tickmode,nticks:Sf.nticks,tick0:Sf.tick0,dtick:Sf.dtick,tickvals:Sf.tickvals,ticktext:Sf.ticktext,ticks:Mx({},Sf.ticks,{dflt:"outside"}),ticklen:Sf.ticklen,tickwidth:Sf.tickwidth,tickcolor:Sf.tickcolor,ticklabelstep:Sf.ticklabelstep,showticklabels:Sf.showticklabels,labelalias:Sf.labelalias,tickfont:fWe({}),tickangle:Sf.tickangle,tickformat:Sf.tickformat,tickformatstops:Sf.tickformatstops,tickprefix:Sf.tickprefix,showtickprefix:Sf.showtickprefix,ticksuffix:Sf.ticksuffix,showticksuffix:Sf.showticksuffix,separatethousands:Sf.separatethousands,exponentformat:Sf.exponentformat,minexponent:Sf.minexponent,showexponent:Sf.showexponent,editType:"plot"},"plot"),steps:oZt,threshold:{line:{color:Mx({},Zk.line.color,{}),width:Mx({},Zk.line.width,{dflt:1}),editType:"plot"},thickness:Mx({},Zk.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}});var GJ=ye((C_r,pWe)=>{"use strict";pWe.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}});var yWe=ye((L_r,mWe)=>{"use strict";var ey=Mr(),M7=HJ(),sZt=Ju().defaults,gWe=Vs(),lZt=Zd(),S7=GJ(),uZt=xb(),cZt=T3(),fZt=t_(),hZt=r_();function dZt(e,t,r,n){function i(_,C){return ey.coerce(e,t,M7,_,C)}sZt(t,n,i),i("mode"),t._hasNumber=t.mode.indexOf("number")!==-1,t._hasDelta=t.mode.indexOf("delta")!==-1,t._hasGauge=t.mode.indexOf("gauge")!==-1;var a=i("value");t._range=[0,typeof a=="number"?1.5*a:1];var o=new Array(2),s;if(t._hasNumber){i("number.valueformat");var l=ey.extendFlat({},n.font);l.size=void 0,ey.coerceFont(i,"number.font",l),t.number.font.size===void 0&&(t.number.font.size=S7.defaultNumberFontSize,o[0]=!0),i("number.prefix"),i("number.suffix"),s=t.number.font.size}var u;if(t._hasDelta){var c=ey.extendFlat({},n.font);c.size=void 0,ey.coerceFont(i,"delta.font",c),t.delta.font.size===void 0&&(t.delta.font.size=(t._hasNumber?.5:1)*(s||S7.defaultNumberFontSize),o[1]=!0),i("delta.reference",t.value),i("delta.relative"),i("delta.valueformat",t.delta.relative?"2%":""),i("delta.increasing.symbol"),i("delta.increasing.color"),i("delta.decreasing.symbol"),i("delta.decreasing.color"),i("delta.position"),i("delta.prefix"),i("delta.suffix"),u=t.delta.font.size}t._scaleNumbers=(!t._hasNumber||o[0])&&(!t._hasDelta||o[1])||!1;var f=ey.extendFlat({},n.font);f.size=.25*(s||u||S7.defaultNumberFontSize),ey.coerceFont(i,"title.font",f),i("title.text");var h,d,v,x;function b(_,C){return ey.coerce(h,d,M7.gauge,_,C)}function p(_,C){return ey.coerce(v,x,M7.gauge.axis,_,C)}if(t._hasGauge){h=e.gauge,h||(h={}),d=gWe.newContainer(t,"gauge"),b("shape");var E=t._isBullet=t.gauge.shape==="bullet";E||i("title.align","center");var k=t._isAngular=t.gauge.shape==="angular";k||i("align","center"),b("bgcolor",n.paper_bgcolor),b("borderwidth"),b("bordercolor"),b("bar.color"),b("bar.line.color"),b("bar.line.width");var A=S7.valueThickness*(t.gauge.shape==="bullet"?.5:1);b("bar.thickness",A),lZt(h,d,{name:"steps",handleItemDefaults:vZt}),b("threshold.value"),b("threshold.thickness"),b("threshold.line.width"),b("threshold.line.color"),v={},h&&(v=h.axis||{}),x=gWe.newContainer(d,"axis"),p("visible"),t._range=p("range",t._range);var L={font:n.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};uZt(v,x,p,"linear"),hZt(v,x,p,"linear",L),fZt(v,x,p,"linear",L),cZt(v,x,p,L)}else i("title.align","center"),i("align","center"),t._isAngular=t._isBullet=!1;t._length=null}function vZt(e,t){function r(n,i){return ey.coerce(e,t,M7.gauge.steps,n,i)}r("color"),r("line.color"),r("line.width"),r("range"),r("thickness")}mWe.exports={supplyDefaults:dZt}});var xWe=ye((P_r,_We)=>{"use strict";function pZt(e,t){var r=[],n=t.value;typeof t._lastValue!="number"&&(t._lastValue=t.value);var i=t._lastValue,a=i;return t._hasDelta&&typeof t.delta.reference=="number"&&(a=t.delta.reference),r[0]={y:n,lastY:i,delta:n-a,relativeDelta:(n-a)/a},r}_We.exports={calc:pZt}});var MWe=ye((I_r,SWe)=>{"use strict";var fw=xa(),gZt=(R2(),B1(I2)).interpolate,bWe=(R2(),B1(I2)).interpolateNumber,Ex=Mr(),mZt=Ex.strScale,Yk=Ex.strTranslate,yZt=Ex.rad2deg,_Zt=Nh().MID_SHIFT,cw=ao(),sw=GJ(),k7=Pl(),av=Qa(),xZt=JM(),bZt=iI(),wZt=Cd(),DA=va(),jJ={left:"start",center:"middle",right:"end"},lw={left:0,center:.5,right:1},wWe=/[yzafpnµmkMGTPEZY]/;function Kk(e){return e&&e.duration>0}SWe.exports=function(t,r,n,i){var a=t._fullLayout,o;Kk(n)&&i&&(o=i()),Ex.makeTraceGroups(a._indicatorlayer,r,"trace").each(function(s){var l=s[0],u=l.trace,c=fw.select(this),f=u._hasGauge,h=u._isAngular,d=u._isBullet,v=u.domain,x={w:a._size.w*(v.x[1]-v.x[0]),h:a._size.h*(v.y[1]-v.y[0]),l:a._size.l+a._size.w*v.x[0],r:a._size.r+a._size.w*(1-v.x[1]),t:a._size.t+a._size.h*(1-v.y[1]),b:a._size.b+a._size.h*v.y[0]},b=x.l+x.w/2,p=x.t+x.h/2,E=Math.min(x.w/2,x.h),k=sw.innerRadius*E,A,L,_,C=u.align||"center";if(L=p,!f)A=x.l+lw[C]*x.w,_=function(G){return TWe(G,x.w,x.h)};else if(h&&(A=b,L=p+E/2,_=function(G){return EZt(G,.9*k)}),d){var M=sw.bulletPadding,g=1-sw.bulletNumberDomainSize+M;A=x.l+(g+(1-g)*lw[C])*x.w,_=function(G){return TWe(G,(sw.bulletNumberDomainSize-M)*x.w,x.h)}}SZt(t,c,s,{numbersX:A,numbersY:L,numbersScaler:_,transitionOpts:n,onComplete:o});var P,T;f&&(P={range:u.gauge.axis.range,color:u.gauge.bgcolor,line:{color:u.gauge.bordercolor,width:0},thickness:1},T={range:u.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:u.gauge.bordercolor,width:u.gauge.borderwidth},thickness:1});var F=c.selectAll("g.angular").data(h?s:[]);F.exit().remove();var q=c.selectAll("g.angularaxis").data(h?s:[]);q.exit().remove(),h&&AZt(t,c,s,{radius:E,innerRadius:k,gauge:F,layer:q,size:x,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var V=c.selectAll("g.bullet").data(d?s:[]);V.exit().remove();var H=c.selectAll("g.bulletaxis").data(d?s:[]);H.exit().remove(),d&&TZt(t,c,s,{gauge:V,layer:H,size:x,gaugeBg:P,gaugeOutline:T,transitionOpts:n,onComplete:o});var X=c.selectAll("text.title").data(s);X.exit().remove(),X.enter().append("text").classed("title",!0),X.attr("text-anchor",function(){return d?jJ.right:jJ[u.title.align]}).text(u.title.text).call(cw.font,u.title.font).call(k7.convertToTspans,t),X.attr("transform",function(){var G=x.l+x.w*lw[u.title.align],N,W=sw.titlePadding,re=cw.bBox(X.node());if(f){if(h)if(u.gauge.axis.visible){var ae=cw.bBox(q.node());N=ae.top-W-re.bottom}else N=x.t+x.h/2-E/2-re.bottom-W;d&&(N=L-(re.top+re.bottom)/2,G=x.l-sw.bulletPadding*x.w)}else N=u._numbersTop-W-re.bottom;return Yk(G,N)})})};function TZt(e,t,r,n){var i=r[0].trace,a=n.gauge,o=n.layer,s=n.gaugeBg,l=n.gaugeOutline,u=n.size,c=i.domain,f=n.transitionOpts,h=n.onComplete,d,v,x,b,p;a.enter().append("g").classed("bullet",!0),a.attr("transform",Yk(u.l,u.t)),o.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),o.selectAll("g.xbulletaxistick,path,text").remove();var E=u.h,k=i.gauge.bar.thickness*E,A=c.x[0],L=c.x[0]+(c.x[1]-c.x[0])*(i._hasNumber||i._hasDelta?1-sw.bulletNumberDomainSize:1);d=Xk(e,i.gauge.axis),d._id="xbulletaxis",d.domain=[A,L],d.setScale(),v=av.calcTicks(d),x=av.makeTransTickFn(d),b=av.getTickSigns(d)[2],p=u.t+u.h,d.visible&&(av.drawTicks(e,d,{vals:d.ticks==="inside"?av.clipEnds(d,v):v,layer:o,path:av.makeTickPath(d,p,b),transFn:x}),av.drawLabels(e,d,{vals:v,layer:o,transFn:x,labelFns:av.makeLabelFns(d,p)}));function _(q){q.attr("width",function(V){return Math.max(0,d.c2p(V.range[1])-d.c2p(V.range[0]))}).attr("x",function(V){return d.c2p(V.range[0])}).attr("y",function(V){return .5*(1-V.thickness)*E}).attr("height",function(V){return V.thickness*E})}var C=[s].concat(i.gauge.steps),M=a.selectAll("g.bg-bullet").data(C);M.enter().append("g").classed("bg-bullet",!0).append("rect"),M.select("rect").call(_).call(uw),M.exit().remove();var g=a.selectAll("g.value-bullet").data([i.gauge.bar]);g.enter().append("g").classed("value-bullet",!0).append("rect"),g.select("rect").attr("height",k).attr("y",(E-k)/2).call(uw),Kk(f)?g.select("rect").transition().duration(f.duration).ease(f.easing).each("end",function(){h&&h()}).each("interrupt",function(){h&&h()}).attr("width",Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y)))):g.select("rect").attr("width",typeof r[0].y=="number"?Math.max(0,d.c2p(Math.min(i.gauge.axis.range[1],r[0].y))):0),g.exit().remove();var P=r.filter(function(){return i.gauge.threshold.value||i.gauge.threshold.value===0}),T=a.selectAll("g.threshold-bullet").data(P);T.enter().append("g").classed("threshold-bullet",!0).append("line"),T.select("line").attr("x1",d.c2p(i.gauge.threshold.value)).attr("x2",d.c2p(i.gauge.threshold.value)).attr("y1",(1-i.gauge.threshold.thickness)/2*E).attr("y2",(1-(1-i.gauge.threshold.thickness)/2)*E).call(DA.stroke,i.gauge.threshold.line.color).style("stroke-width",i.gauge.threshold.line.width),T.exit().remove();var F=a.selectAll("g.gauge-outline").data([l]);F.enter().append("g").classed("gauge-outline",!0).append("rect"),F.select("rect").call(_).call(uw),F.exit().remove()}function AZt(e,t,r,n){var i=r[0].trace,a=n.size,o=n.radius,s=n.innerRadius,l=n.gaugeBg,u=n.gaugeOutline,c=[a.l+a.w/2,a.t+a.h/2+o/2],f=n.gauge,h=n.layer,d=n.transitionOpts,v=n.onComplete,x=Math.PI/2;function b(_e){var Me=i.gauge.axis.range[0],ke=i.gauge.axis.range[1],ge=(_e-Me)/(ke-Me)*Math.PI-x;return ge<-x?-x:ge>x?x:ge}function p(_e){return fw.svg.arc().innerRadius((s+o)/2-_e/2*(o-s)).outerRadius((s+o)/2+_e/2*(o-s)).startAngle(-x)}function E(_e){_e.attr("d",function(Me){return p(Me.thickness).startAngle(b(Me.range[0])).endAngle(b(Me.range[1]))()})}var k,A,L,_;f.enter().append("g").classed("angular",!0),f.attr("transform",Yk(c[0],c[1])),h.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),h.selectAll("g.xangularaxistick,path,text").remove(),k=Xk(e,i.gauge.axis),k.type="linear",k.range=i.gauge.axis.range,k._id="xangularaxis",k.ticklabeloverflow="allow",k.setScale();var C=function(_e){return(k.range[0]-_e.x)/(k.range[1]-k.range[0])*Math.PI+Math.PI},M={},g=av.makeLabelFns(k,0),P=g.labelStandoff;M.xFn=function(_e){var Me=C(_e);return Math.cos(Me)*P},M.yFn=function(_e){var Me=C(_e),ke=Math.sin(Me)>0?.2:1;return-Math.sin(Me)*(P+_e.fontSize*ke)+Math.abs(Math.cos(Me))*(_e.fontSize*_Zt)},M.anchorFn=function(_e){var Me=C(_e),ke=Math.cos(Me);return Math.abs(ke)<.1?"middle":ke>0?"start":"end"},M.heightFn=function(_e,Me,ke){var ge=C(_e);return-.5*(1+Math.sin(ge))*ke};var T=function(_e){return Yk(c[0]+o*Math.cos(_e),c[1]-o*Math.sin(_e))};L=function(_e){return T(C(_e))};var F=function(_e){var Me=C(_e);return T(Me)+"rotate("+-yZt(Me)+")"};if(A=av.calcTicks(k),_=av.getTickSigns(k)[2],k.visible){_=k.ticks==="inside"?-1:1;var q=(k.linewidth||1)/2;av.drawTicks(e,k,{vals:A,layer:h,path:"M"+_*q+",0h"+_*k.ticklen,transFn:F}),av.drawLabels(e,k,{vals:A,layer:h,transFn:L,labelFns:M})}var V=[l].concat(i.gauge.steps),H=f.selectAll("g.bg-arc").data(V);H.enter().append("g").classed("bg-arc",!0).append("path"),H.select("path").call(E).call(uw),H.exit().remove();var X=p(i.gauge.bar.thickness),G=f.selectAll("g.value-arc").data([i.gauge.bar]);G.enter().append("g").classed("value-arc",!0).append("path");var N=G.select("path");Kk(d)?(N.transition().duration(d.duration).ease(d.easing).each("end",function(){v&&v()}).each("interrupt",function(){v&&v()}).attrTween("d",MZt(X,b(r[0].lastY),b(r[0].y))),i._lastValue=r[0].y):N.attr("d",typeof r[0].y=="number"?X.endAngle(b(r[0].y)):"M0,0Z"),N.call(uw),G.exit().remove(),V=[];var W=i.gauge.threshold.value;(W||W===0)&&V.push({range:[W,W],color:i.gauge.threshold.color,line:{color:i.gauge.threshold.line.color,width:i.gauge.threshold.line.width},thickness:i.gauge.threshold.thickness});var re=f.selectAll("g.threshold-arc").data(V);re.enter().append("g").classed("threshold-arc",!0).append("path"),re.select("path").call(E).call(uw),re.exit().remove();var ae=f.selectAll("g.gauge-outline").data([u]);ae.enter().append("g").classed("gauge-outline",!0).append("path"),ae.select("path").call(E).call(uw),ae.exit().remove()}function SZt(e,t,r,n){var i=r[0].trace,a=n.numbersX,o=n.numbersY,s=i.align||"center",l=jJ[s],u=n.transitionOpts,c=n.onComplete,f=Ex.ensureSingle(t,"g","numbers"),h,d,v,x=[];i._hasNumber&&x.push("number"),i._hasDelta&&(x.push("delta"),i.delta.position==="left"&&x.reverse());var b=f.selectAll("text").data(x);b.enter().append("text"),b.attr("text-anchor",function(){return l}).attr("class",function(T){return T}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),b.exit().remove();function p(T,F,q,V){if(T.match("s")&&q>=0!=V>=0&&!F(q).slice(-1).match(wWe)&&!F(V).slice(-1).match(wWe)){var H=T.slice().replace("s","f").replace(/\d+/,function(G){return parseInt(G)-1}),X=Xk(e,{tickformat:H});return function(G){return Math.abs(G)<1?av.tickText(X,G).text:F(G)}}else return F}function E(){var T=Xk(e,{tickformat:i.number.valueformat},i._range);T.setScale(),av.prepTicks(T);var F=function(G){return av.tickText(T,G).text},q=i.number.suffix,V=i.number.prefix,H=f.select("text.number");function X(){var G=typeof r[0].y=="number"?V+F(r[0].y)+q:"-";H.text(G).call(cw.font,i.number.font).call(k7.convertToTspans,e)}return Kk(u)?H.transition().duration(u.duration).ease(u.easing).each("end",function(){X(),c&&c()}).each("interrupt",function(){X(),c&&c()}).attrTween("text",function(){var G=fw.select(this),N=bWe(r[0].lastY,r[0].y);i._lastValue=r[0].y;var W=p(i.number.valueformat,F,r[0].lastY,r[0].y);return function(re){G.text(V+W(N(re))+q)}}):X(),h=AWe(V+F(r[0].y)+q,i.number.font,l,e),H}function k(){var T=Xk(e,{tickformat:i.delta.valueformat},i._range);T.setScale(),av.prepTicks(T);var F=function(re){return av.tickText(T,re).text},q=i.delta.suffix,V=i.delta.prefix,H=function(re){var ae=i.delta.relative?re.relativeDelta:re.delta;return ae},X=function(re,ae){return re===0||typeof re!="number"||isNaN(re)?"-":(re>0?i.delta.increasing.symbol:i.delta.decreasing.symbol)+V+ae(re)+q},G=function(re){return re.delta>=0?i.delta.increasing.color:i.delta.decreasing.color};i._deltaLastValue===void 0&&(i._deltaLastValue=H(r[0]));var N=f.select("text.delta");N.call(cw.font,i.delta.font).call(DA.fill,G({delta:i._deltaLastValue}));function W(){N.text(X(H(r[0]),F)).call(DA.fill,G(r[0])).call(k7.convertToTspans,e)}return Kk(u)?N.transition().duration(u.duration).ease(u.easing).tween("text",function(){var re=fw.select(this),ae=H(r[0]),_e=i._deltaLastValue,Me=p(i.delta.valueformat,F,_e,ae),ke=bWe(_e,ae);return i._deltaLastValue=ae,function(ge){re.text(X(ke(ge),Me)),re.call(DA.fill,G({delta:ke(ge)}))}}).each("end",function(){W(),c&&c()}).each("interrupt",function(){W(),c&&c()}):W(),d=AWe(X(H(r[0]),F),i.delta.font,l,e),N}var A=i.mode+i.align,L;if(i._hasDelta&&(L=k(),A+=i.delta.position+i.delta.font.size+i.delta.font.family+i.delta.valueformat,A+=i.delta.increasing.symbol+i.delta.decreasing.symbol,v=d),i._hasNumber&&(E(),A+=i.number.font.size+i.number.font.family+i.number.valueformat+i.number.suffix+i.number.prefix,v=h),i._hasDelta&&i._hasNumber){var _=[(h.left+h.right)/2,(h.top+h.bottom)/2],C=[(d.left+d.right)/2,(d.top+d.bottom)/2],M,g,P=.75*i.delta.font.size;i.delta.position==="left"&&(M=E7(i,"deltaPos",0,-1*(h.width*lw[i.align]+d.width*(1-lw[i.align])+P),A,Math.min),g=_[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:d.left+M,right:h.right,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="right"&&(M=E7(i,"deltaPos",0,h.width*(1-lw[i.align])+d.width*lw[i.align]+P,A,Math.max),g=_[1]-C[1],v={width:h.width+d.width+P,height:Math.max(h.height,d.height),left:h.left,right:d.right+M,top:Math.min(h.top,d.top+g),bottom:Math.max(h.bottom,d.bottom+g)}),i.delta.position==="bottom"&&(M=null,g=d.height,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height,bottom:h.bottom+d.height}),i.delta.position==="top"&&(M=null,g=h.top,v={width:Math.max(h.width,d.width),height:h.height+d.height,left:Math.min(h.left,d.left),right:Math.max(h.right,d.right),top:h.bottom-h.height-d.height,bottom:h.bottom}),L.attr({dx:M,dy:g})}(i._hasNumber||i._hasDelta)&&f.attr("transform",function(){var T=n.numbersScaler(v);A+=T[2];var F=E7(i,"numbersScale",1,T[0],A,Math.min),q;i._scaleNumbers||(F=1),i._isAngular?q=o-F*v.bottom:q=o-F*(v.top+v.bottom)/2,i._numbersTop=F*v.top+q;var V=v[s];s==="center"&&(V=(v.left+v.right)/2);var H=a-F*V;return H=E7(i,"numbersTranslate",0,H,A,Math.max),Yk(H,q)+mZt(F)})}function uw(e){e.each(function(t){DA.stroke(fw.select(this),t.line.color)}).each(function(t){DA.fill(fw.select(this),t.color)}).style("stroke-width",function(t){return t.line.width})}function MZt(e,t,r){return function(){var n=gZt(t,r);return function(i){return e.endAngle(n(i))()}}}function Xk(e,t,r){var n=e._fullLayout,i=Ex.extendFlat({type:"linear",ticks:"outside",range:r,showline:!0},t),a={type:"linear",_id:"x"+t._id},o={letter:"x",font:n.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function s(l,u){return Ex.coerce(i,a,wZt,l,u)}return xZt(i,a,s,o,n),bZt(i,a,s,o),a}function TWe(e,t,r){var n=Math.min(t/e.width,r/e.height);return[n,e,t+"x"+r]}function EZt(e,t){var r=Math.sqrt(e.width/2*(e.width/2)+e.height*e.height),n=t/r;return[n,e,t]}function AWe(e,t,r,n){var i=document.createElementNS("http://www.w3.org/2000/svg","text"),a=fw.select(i);return a.text(e).attr("x",0).attr("y",0).attr("text-anchor",r).attr("data-unformatted",e).call(k7.convertToTspans,n).call(cw.font,t),cw.bBox(a.node())}function E7(e,t,r,n,i,a){var o="_cache"+t;e[o]&&e[o].key===i||(e[o]={key:i,value:r});var s=Ex.aggNums(a,null,[e[o].value,n],2);return e[o].value=s,s}});var kWe=ye((R_r,EWe)=>{"use strict";EWe.exports={moduleType:"trace",name:"indicator",basePlotModule:lWe(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:HJ(),supplyDefaults:yWe().supplyDefaults,calc:xWe().calc,plot:MWe(),meta:{}}});var LWe=ye((D_r,CWe)=>{"use strict";CWe.exports=kWe()});var WJ=ye((F_r,DWe)=>{"use strict";var PWe=Nb(),C7=no().extendFlat,kZt=Bu().overrideAll,IWe=Su(),CZt=Ju().attributes,RWe=Oc().descriptionOnlyNumbers,z_r=DWe.exports=kZt({domain:CZt({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:RWe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:C7({},PWe.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:C7({},IWe({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:RWe("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:C7({},PWe.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:C7({},IWe({arrayOk:!0}))}},"calc","from-root")});var FWe=ye((q_r,zWe)=>{"use strict";var ZJ=Mr(),LZt=WJ(),PZt=Ju().defaults;function IZt(e,t){for(var r=e.columnorder||[],n=e.header.values.length,i=r.slice(0,n),a=i.slice().sort(function(l,u){return l-u}),o=i.map(function(l){return a.indexOf(l)}),s=o.length;s<n;s++)o.push(s);t("columnorder",o)}zWe.exports=function(t,r,n,i){function a(o,s){return ZJ.coerce(t,r,LZt,o,s)}PZt(r,i,a),a("columnwidth"),a("header.values"),a("header.format"),a("header.align"),a("header.prefix"),a("header.suffix"),a("header.height"),a("header.line.width"),a("header.line.color"),a("header.fill.color"),ZJ.coerceFont(a,"header.font",i.font),IZt(r,a),a("cells.values"),a("cells.format"),a("cells.align"),a("cells.prefix"),a("cells.suffix"),a("cells.height"),a("cells.line.width"),a("cells.line.color"),a("cells.fill.color"),ZJ.coerceFont(a,"cells.font",i.font),r._length=null}});var OWe=ye((O_r,qWe)=>{"use strict";var RZt=Km().wrap;qWe.exports=function(){return RZt({})}});var XJ=ye((B_r,BWe)=>{"use strict";BWe.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"}}});var XWe=ye((N_r,ZWe)=>{"use strict";var NWe=XJ(),KJ=no().extendFlat,DZt=uo(),zZt=vv().isTypedArray,L7=vv().isArrayOrTypedArray;ZWe.exports=function(t,r){var n=YJ(r.cells.values),i=function(g){return g.slice(r.header.values.length,g.length)},a=YJ(r.header.values);a.length&&!a[0].length&&(a[0]=[""],a=YJ(a));var o=a.concat(i(n).map(function(){return WWe((a[0]||[""]).length)})),s=r.domain,l=Math.floor(t._fullLayout._size.w*(s.x[1]-s.x[0])),u=Math.floor(t._fullLayout._size.h*(s.y[1]-s.y[0])),c=r.header.values.length?o[0].map(function(){return r.header.height}):[NWe.emptyHeaderHeight],f=n.length?n[0].map(function(){return r.cells.height}):[],h=c.reduce(UWe,0),d=u-h,v=d+NWe.uplift,x=GWe(f,v),b=GWe(c,h),p=HWe(b,[]),E=HWe(x,p),k={},A=r._fullInput.columnorder;L7(A)&&(A=Array.from(A)),A=A.concat(i(n.map(function(g,P){return P})));var L=o.map(function(g,P){var T=L7(r.columnwidth)?r.columnwidth[Math.min(P,r.columnwidth.length-1)]:r.columnwidth;return DZt(T)?Number(T):1}),_=L.reduce(UWe,0);L=L.map(function(g){return g/_*l});var C=Math.max(JJ(r.header.line.width),JJ(r.cells.line.width)),M={key:r.uid+t._context.staticPlot,translateX:s.x[0]*t._fullLayout._size.w,translateY:t._fullLayout._size.h*(1-s.y[1]),size:t._fullLayout._size,width:l,maxLineWidth:C,height:u,columnOrder:A,groupHeight:u,rowBlocks:E,headerRowBlocks:p,scrollY:0,cells:KJ({},r.cells,{values:n}),headerCells:KJ({},r.header,{values:o}),gdColumns:o.map(function(g){return g[0]}),gdColumnsOriginalOrder:o.map(function(g){return g[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:o.map(function(g,P){var T=k[g];k[g]=(T||0)+1;var F=g+"__"+k[g];return{key:F,label:g,specIndex:P,xIndex:A[P],xScale:VWe,x:void 0,calcdata:void 0,columnWidth:L[P]}})};return M.columns.forEach(function(g){g.calcdata=M,g.x=VWe(g)}),M};function JJ(e){if(L7(e)){for(var t=0,r=0;r<e.length;r++)t=Math.max(t,JJ(e[r]));return t}return e}function UWe(e,t){return e+t}function YJ(e){var t=e.slice(),r=1/0,n=0,i;for(i=0;i<t.length;i++)zZt(t[i])?t[i]=Array.from(t[i]):L7(t[i])||(t[i]=[t[i]]),r=Math.min(r,t[i].length),n=Math.max(n,t[i].length);if(r!==n)for(i=0;i<t.length;i++){var a=n-t[i].length;a&&(t[i]=t[i].concat(WWe(a)))}return t}function WWe(e){for(var t=new Array(e),r=0;r<e;r++)t[r]="";return t}function VWe(e){return e.calcdata.columns.reduce(function(t,r){return r.xIndex<e.xIndex?t+r.columnWidth:t},0)}function HWe(e,t){var r=Object.keys(e);return r.map(function(n){return KJ({},e[n],{auxiliaryBlocks:t})})}function GWe(e,t){for(var r={},n,i=0,a=0,o=jWe(),s=0,l=0,u=0;u<e.length;u++)n=e[u],o.rows.push({rowIndex:u,rowHeight:n}),a+=n,(a>=t||u===e.length-1)&&(r[i]=o,o.key=l++,o.firstRowIndex=s,o.lastRowIndex=u,o=jWe(),i+=a,s=u+1,a=0);return r}function jWe(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}});var YWe=ye($J=>{"use strict";var P7=no().extendFlat;$J.splitToPanels=function(e){var t=[0,0],r=P7({},e,{key:"header",type:"header",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!0,values:e.calcdata.headerCells.values[e.specIndex],rowBlocks:e.calcdata.headerRowBlocks,calcdata:P7({},e.calcdata,{cells:e.calcdata.headerCells})}),n=P7({},e,{key:"cells1",type:"cells",page:0,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks}),i=P7({},e,{key:"cells2",type:"cells",page:1,prevPages:t,currentRepaint:[null,null],dragHandle:!1,values:e.calcdata.cells.values[e.specIndex],rowBlocks:e.calcdata.rowBlocks});return[n,i,r]};$J.splitToCells=function(e){var t=FZt(e);return(e.values||[]).slice(t[0],t[1]).map(function(r,n){var i=typeof r=="string"&&r.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:n+i,key:t[0]+n,column:e,calcdata:e.calcdata,page:e.page,rowBlocks:e.rowBlocks,value:r}})};function FZt(e){var t=e.rowBlocks[e.page],r=t?t.rows[0].rowIndex:0,n=t?r+t.rows.length:0;return[r,n]}});var l$=ye((V_r,oZe)=>{"use strict";var Ia=XJ(),Mc=xa(),QJ=Mr(),qZt=QJ.numberFormat,gu=Km(),e$=ao(),OZt=Pl(),BZt=Mr().raiseToTop,og=Mr().strTranslate,NZt=Mr().cancelTransition,UZt=XWe(),rZe=YWe(),KWe=va();oZe.exports=function(t,r){var n=!t._context.staticPlot,i=t._fullLayout._paper.selectAll("."+Ia.cn.table).data(r.map(function(E){var k=gu.unwrap(E),A=k.trace;return UZt(t,A)}),gu.keyFun);i.exit().remove(),i.enter().append("g").classed(Ia.cn.table,!0).attr("overflow","visible").style("box-sizing","content-box").style("position","absolute").style("left",0).style("overflow","visible").style("shape-rendering","crispEdges").style("pointer-events","all"),i.attr("width",function(E){return E.width+E.size.l+E.size.r}).attr("height",function(E){return E.height+E.size.t+E.size.b}).attr("transform",function(E){return og(E.translateX,E.translateY)});var a=i.selectAll("."+Ia.cn.tableControlView).data(gu.repeat,gu.keyFun),o=a.enter().append("g").classed(Ia.cn.tableControlView,!0).style("box-sizing","content-box");if(n){var s="onwheel"in document?"wheel":"mousewheel";o.on("mousemove",function(E){a.filter(function(k){return E===k}).call(Jk,t)}).on(s,function(E){if(!E.scrollbarState.wheeling){E.scrollbarState.wheeling=!0;var k=E.scrollY+Mc.event.deltaY,A=R7(t,a,null,k)(E);A||(Mc.event.stopPropagation(),Mc.event.preventDefault()),E.scrollbarState.wheeling=!1}}).call(Jk,t,!0)}a.attr("transform",function(E){return og(E.size.l,E.size.t)});var l=a.selectAll("."+Ia.cn.scrollBackground).data(gu.repeat,gu.keyFun);l.enter().append("rect").classed(Ia.cn.scrollBackground,!0).attr("fill","none"),l.attr("width",function(E){return E.width}).attr("height",function(E){return E.height}),a.each(function(E){e$.setClipUrl(Mc.select(this),JWe(t,E),t)});var u=a.selectAll("."+Ia.cn.yColumn).data(function(E){return E.columns},gu.keyFun);u.enter().append("g").classed(Ia.cn.yColumn,!0),u.exit().remove(),u.attr("transform",function(E){return og(E.x,0)}),n&&u.call(Mc.behavior.drag().origin(function(E){var k=Mc.select(this);return eZe(k,E,-Ia.uplift),BZt(this),E.calcdata.columnDragInProgress=!0,Jk(a.filter(function(A){return E.calcdata.key===A.key}),t),E}).on("drag",function(E){var k=Mc.select(this),A=function(C){return(E===C?Mc.event.x:C.x)+C.columnWidth/2};E.x=Math.max(-Ia.overdrag,Math.min(E.calcdata.width+Ia.overdrag-E.columnWidth,Mc.event.x));var L=iZe(u).filter(function(C){return C.calcdata.key===E.calcdata.key}),_=L.sort(function(C,M){return A(C)-A(M)});_.forEach(function(C,M){C.xIndex=M,C.x=E===C?C.x:C.xScale(C)}),u.filter(function(C){return E!==C}).transition().ease(Ia.transitionEase).duration(Ia.transitionDuration).attr("transform",function(C){return og(C.x,0)}),k.call(NZt).attr("transform",og(E.x,-Ia.uplift))}).on("dragend",function(E){var k=Mc.select(this),A=E.calcdata;E.x=E.xScale(E),E.calcdata.columnDragInProgress=!1,eZe(k,E,0),JZt(t,A,A.columns.map(function(L){return L.xIndex}))})),u.each(function(E){e$.setClipUrl(Mc.select(this),$We(t,E),t)});var c=u.selectAll("."+Ia.cn.columnBlock).data(rZe.splitToPanels,gu.keyFun);c.enter().append("g").classed(Ia.cn.columnBlock,!0).attr("id",function(E){return E.key}),c.style("cursor",function(E){return E.dragHandle?"ew-resize":E.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var f=c.filter($Zt),h=c.filter(a$);n&&h.call(Mc.behavior.drag().origin(function(E){return Mc.event.stopPropagation(),E}).on("drag",R7(t,a,-1)).on("dragend",function(){})),t$(t,a,f,c),t$(t,a,h,c);var d=a.selectAll("."+Ia.cn.scrollAreaClip).data(gu.repeat,gu.keyFun);d.enter().append("clipPath").classed(Ia.cn.scrollAreaClip,!0).attr("id",function(E){return JWe(t,E)});var v=d.selectAll("."+Ia.cn.scrollAreaClipRect).data(gu.repeat,gu.keyFun);v.enter().append("rect").classed(Ia.cn.scrollAreaClipRect,!0).attr("x",-Ia.overdrag).attr("y",-Ia.uplift).attr("fill","none"),v.attr("width",function(E){return E.width+2*Ia.overdrag}).attr("height",function(E){return E.height+Ia.uplift});var x=u.selectAll("."+Ia.cn.columnBoundary).data(gu.repeat,gu.keyFun);x.enter().append("g").classed(Ia.cn.columnBoundary,!0);var b=u.selectAll("."+Ia.cn.columnBoundaryClippath).data(gu.repeat,gu.keyFun);b.enter().append("clipPath").classed(Ia.cn.columnBoundaryClippath,!0),b.attr("id",function(E){return $We(t,E)});var p=b.selectAll("."+Ia.cn.columnBoundaryRect).data(gu.repeat,gu.keyFun);p.enter().append("rect").classed(Ia.cn.columnBoundaryRect,!0).attr("fill","none"),p.attr("width",function(E){return E.columnWidth+2*I7(E)}).attr("height",function(E){return E.calcdata.height+2*I7(E)+Ia.uplift}).attr("x",function(E){return-I7(E)}).attr("y",function(E){return-I7(E)}),o$(null,h,a)};function I7(e){return Math.ceil(e.calcdata.maxLineWidth/2)}function JWe(e,t){return"clip"+e._fullLayout._uid+"_scrollAreaBottomClip_"+t.key}function $We(e,t){return"clip"+e._fullLayout._uid+"_columnBoundaryClippath_"+t.calcdata.key+"_"+t.specIndex}function iZe(e){return[].concat.apply([],e.map(function(t){return t})).map(function(t){return t.__data__})}function Jk(e,t,r){function n(u){var c=u.rowBlocks;return i$(c,c.length-1)+(c.length?D7(c[c.length-1],1/0):1)}var i=e.selectAll("."+Ia.cn.scrollbarKit).data(gu.repeat,gu.keyFun);i.enter().append("g").classed(Ia.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),i.each(function(u){var c=u.scrollbarState;c.totalHeight=n(u),c.scrollableAreaHeight=u.groupHeight-r$(u),c.currentlyVisibleHeight=Math.min(c.totalHeight,c.scrollableAreaHeight),c.ratio=c.currentlyVisibleHeight/c.totalHeight,c.barLength=Math.max(c.ratio*c.currentlyVisibleHeight,Ia.goldenRatio*Ia.scrollbarWidth),c.barWiggleRoom=c.currentlyVisibleHeight-c.barLength,c.wiggleRoom=Math.max(0,c.totalHeight-c.scrollableAreaHeight),c.topY=c.barWiggleRoom===0?0:u.scrollY/c.wiggleRoom*c.barWiggleRoom,c.bottomY=c.topY+c.barLength,c.dragMultiplier=c.wiggleRoom/c.barWiggleRoom}).attr("transform",function(u){var c=u.width+Ia.scrollbarWidth/2+Ia.scrollbarOffset;return og(c,r$(u))});var a=i.selectAll("."+Ia.cn.scrollbar).data(gu.repeat,gu.keyFun);a.enter().append("g").classed(Ia.cn.scrollbar,!0);var o=a.selectAll("."+Ia.cn.scrollbarSlider).data(gu.repeat,gu.keyFun);o.enter().append("g").classed(Ia.cn.scrollbarSlider,!0),o.attr("transform",function(u){return og(0,u.scrollbarState.topY||0)});var s=o.selectAll("."+Ia.cn.scrollbarGlyph).data(gu.repeat,gu.keyFun);s.enter().append("line").classed(Ia.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",Ia.scrollbarWidth).attr("stroke-linecap","round").attr("y1",Ia.scrollbarWidth/2),s.attr("y2",function(u){return u.scrollbarState.barLength-Ia.scrollbarWidth/2}).attr("stroke-opacity",function(u){return u.columnDragInProgress||!u.scrollbarState.barWiggleRoom||r?0:.4}),s.transition().delay(0).duration(0),s.transition().delay(Ia.scrollbarHideDelay).duration(Ia.scrollbarHideDuration).attr("stroke-opacity",0);var l=a.selectAll("."+Ia.cn.scrollbarCaptureZone).data(gu.repeat,gu.keyFun);l.enter().append("line").classed(Ia.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",Ia.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(u){var c=Mc.event.y,f=this.getBoundingClientRect(),h=u.scrollbarState,d=c-f.top,v=Mc.scale.linear().domain([0,h.scrollableAreaHeight]).range([0,h.totalHeight]).clamp(!0);h.topY<=d&&d<=h.bottomY||R7(t,e,null,v(d-h.barLength/2))(u)}).call(Mc.behavior.drag().origin(function(u){return Mc.event.stopPropagation(),u.scrollbarState.scrollbarScrollInProgress=!0,u}).on("drag",R7(t,e)).on("dragend",function(){})),l.attr("y2",function(u){return u.scrollbarState.scrollableAreaHeight}),t._context.staticPlot&&(s.remove(),l.remove())}function t$(e,t,r,n){var i=VZt(r),a=HZt(i);ZZt(a);var o=GZt(a);YZt(o);var s=WZt(a),l=jZt(s);XZt(l),nZe(l,t,n,e),s$(a)}function VZt(e){var t=e.selectAll("."+Ia.cn.columnCells).data(gu.repeat,gu.keyFun);return t.enter().append("g").classed(Ia.cn.columnCells,!0),t.exit().remove(),t}function HZt(e){var t=e.selectAll("."+Ia.cn.columnCell).data(rZe.splitToCells,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ia.cn.columnCell,!0),t.exit().remove(),t}function GZt(e){var t=e.selectAll("."+Ia.cn.cellRect).data(gu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("rect").classed(Ia.cn.cellRect,!0),t}function jZt(e){var t=e.selectAll("."+Ia.cn.cellText).data(gu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("text").classed(Ia.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){Mc.event.stopPropagation()}),t}function WZt(e){var t=e.selectAll("."+Ia.cn.cellTextHolder).data(gu.repeat,function(r){return r.keyWithinBlock});return t.enter().append("g").classed(Ia.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),t}function ZZt(e){e.each(function(t,r){var n=t.calcdata.cells.font,i=t.column.specIndex,a={size:Xv(n.size,i,r),color:Xv(n.color,i,r),family:Xv(n.family,i,r),weight:Xv(n.weight,i,r),style:Xv(n.style,i,r),variant:Xv(n.variant,i,r),textcase:Xv(n.textcase,i,r),lineposition:Xv(n.lineposition,i,r),shadow:Xv(n.shadow,i,r)};t.rowNumber=t.key,t.align=Xv(t.calcdata.cells.align,i,r),t.cellBorderWidth=Xv(t.calcdata.cells.line.width,i,r),t.font=a})}function XZt(e){e.each(function(t){e$.font(Mc.select(this),t.font)})}function YZt(e){e.attr("width",function(t){return t.column.columnWidth}).attr("stroke-width",function(t){return t.cellBorderWidth}).each(function(t){var r=Mc.select(this);KWe.stroke(r,Xv(t.calcdata.cells.line.color,t.column.specIndex,t.rowNumber)),KWe.fill(r,Xv(t.calcdata.cells.fill.color,t.column.specIndex,t.rowNumber))})}function nZe(e,t,r,n){e.text(function(i){var a=i.column.specIndex,o=i.rowNumber,s=i.value,l=typeof s=="string",u=l&&s.match(/<br>/i),c=!l||u;i.mayHaveMarkup=l&&s.match(/[<&>]/);var f=KZt(s);i.latex=f;var h=f?"":Xv(i.calcdata.cells.prefix,a,o)||"",d=f?"":Xv(i.calcdata.cells.suffix,a,o)||"",v=f?null:Xv(i.calcdata.cells.format,a,o)||null,x=h+(v?qZt(v)(i.value):i.value)+d,b;i.wrappingNeeded=!i.wrapped&&!c&&!f&&(b=QWe(x)),i.cellHeightMayIncrease=u||f||i.mayHaveMarkup||(b===void 0?QWe(x):b),i.needsConvertToTspans=i.mayHaveMarkup||i.wrappingNeeded||i.latex;var p;if(i.wrappingNeeded){var E=Ia.wrapSplitCharacter===" "?x.replace(/<a href=/ig,"<a_href="):x,k=E.split(Ia.wrapSplitCharacter),A=Ia.wrapSplitCharacter===" "?k.map(function(L){return L.replace(/<a_href=/ig,"<a href=")}):k;i.fragments=A.map(function(L){return{text:L,width:null}}),i.fragments.push({fragment:Ia.wrapSpacer,width:null}),p=A.join(Ia.lineBreaker)+Ia.lineBreaker+Ia.wrapSpacer}else delete i.fragments,p=x;return p}).attr("dy",function(i){return i.needsConvertToTspans?0:"0.75em"}).each(function(i){var a=this,o=Mc.select(a),s=i.wrappingNeeded?eXt:tXt;i.needsConvertToTspans?OZt.convertToTspans(o,n,s(r,a,t,n,i)):Mc.select(a.parentNode).attr("transform",function(l){return og(aZe(l),Ia.cellPad)}).attr("text-anchor",function(l){return{left:"start",center:"middle",right:"end"}[l.align]})})}function KZt(e){return typeof e=="string"&&e.match(Ia.latexCheck)}function QWe(e){return e.indexOf(Ia.wrapSplitCharacter)!==-1}function JZt(e,t,r){var n=t.gdColumnsOriginalOrder;t.gdColumns.sort(function(i,a){return r[n.indexOf(i)]-r[n.indexOf(a)]}),t.columnorder=r,e.emit("plotly_restyle")}function Xv(e,t,r){if(QJ.isArrayOrTypedArray(e)){var n=e[Math.min(t,e.length-1)];return QJ.isArrayOrTypedArray(n)?n[Math.min(r,n.length-1)]:n}else return e}function eZe(e,t,r){e.transition().ease(Ia.releaseTransitionEase).duration(Ia.releaseTransitionDuration).attr("transform",og(t.x,r))}function a$(e){return e.type==="cells"}function $Zt(e){return e.type==="header"}function r$(e){var t=e.rowBlocks.length?e.rowBlocks[0].auxiliaryBlocks:[];return t.reduce(function(r,n){return r+D7(n,1/0)},0)}function QZt(e,t,r){for(var n=[],i=0,a=0;a<e.length;a++){for(var o=e[a],s=o.rows,l=0,u=0;u<s.length;u++)l+=s[u].rowHeight;o.allRowsHeight=l;var c=i+l,f=t,h=f+r;f<c&&h>i&&n.push(a),i+=l}return n}function o$(e,t,r){var n=iZe(t)[0];if(n!==void 0){var i=n.rowBlocks,a=n.calcdata,o=i$(i,i.length),s=n.calcdata.groupHeight-r$(n),l=a.scrollY=Math.max(0,Math.min(o-s,a.scrollY)),u=QZt(i,l,s);u.length===1&&(u[0]===i.length-1?u.unshift(u[0]-1):u.push(u[0]+1)),u[0]%2&&u.reverse(),t.each(function(c,f){c.page=u[f],c.scrollY=l}),t.attr("transform",function(c){var f=i$(c.rowBlocks,c.page)-c.scrollY;return og(0,f)}),e&&(tZe(e,r,t,u,n.prevPages,n,0),tZe(e,r,t,u,n.prevPages,n,1),Jk(r,e))}}function R7(e,t,r,n){return function(a){var o=a.calcdata?a.calcdata:a,s=t.filter(function(f){return o.key===f.key}),l=r||o.scrollbarState.dragMultiplier,u=o.scrollY;o.scrollY=n===void 0?o.scrollY+l*Mc.event.dy:n;var c=s.selectAll("."+Ia.cn.yColumn).selectAll("."+Ia.cn.columnBlock).filter(a$);return o$(e,c,s),o.scrollY===u}}function tZe(e,t,r,n,i,a,o){var s=n[o]!==i[o];s&&(clearTimeout(a.currentRepaint[o]),a.currentRepaint[o]=setTimeout(function(){var l=r.filter(function(u,c){return c===o&&n[c]!==i[c]});t$(e,t,l,r),i[o]=n[o]}))}function eXt(e,t,r,n){return function(){var a=Mc.select(t.parentNode);a.each(function(o){var s=o.fragments;a.selectAll("tspan.line").each(function(x,b){s[b].width=this.getComputedTextLength()});var l=s[s.length-1].width,u=s.slice(0,-1),c=[],f,h,d=0,v=o.column.columnWidth-2*Ia.cellPad;for(o.value="";u.length;)f=u.shift(),h=f.width+l,d+h>v&&(o.value+=c.join(Ia.wrapSpacer)+Ia.lineBreaker,c=[],d=0),c.push(f.text),d+=h;d&&(o.value+=c.join(Ia.wrapSpacer)),o.wrapped=!0}),a.selectAll("tspan.line").remove(),nZe(a.select("."+Ia.cn.cellText),r,e,n),Mc.select(t.parentNode.parentNode).call(s$)}}function tXt(e,t,r,n,i){return function(){if(!i.settledY){var o=Mc.select(t.parentNode),s=n$(i),l=i.key-s.firstRowIndex,u=s.rows[l].rowHeight,c=i.cellHeightMayIncrease?t.parentNode.getBoundingClientRect().height+2*Ia.cellPad:u,f=Math.max(c,u),h=f-s.rows[l].rowHeight;h&&(s.rows[l].rowHeight=f,e.selectAll("."+Ia.cn.columnCell).call(s$),o$(null,e.filter(a$),0),Jk(r,n,!0)),o.attr("transform",function(){var d=this,v=d.parentNode,x=v.getBoundingClientRect(),b=Mc.select(d.parentNode).select("."+Ia.cn.cellRect).node().getBoundingClientRect(),p=d.transform.baseVal.consolidate(),E=b.top-x.top+(p?p.matrix.f:Ia.cellPad);return og(aZe(i,Mc.select(d.parentNode).select("."+Ia.cn.cellTextHolder).node().getBoundingClientRect().width),E)}),i.settledY=!0}}}function aZe(e,t){switch(e.align){case"left":return Ia.cellPad;case"right":return e.column.columnWidth-(t||0)-Ia.cellPad;case"center":return(e.column.columnWidth-(t||0))/2;default:return Ia.cellPad}}function s$(e){e.attr("transform",function(t){var r=t.rowBlocks[0].auxiliaryBlocks.reduce(function(o,s){return o+D7(s,1/0)},0),n=n$(t),i=D7(n,t.key),a=i+r;return og(0,a)}).selectAll("."+Ia.cn.cellRect).attr("height",function(t){return iXt(n$(t),t.key).rowHeight})}function i$(e,t){for(var r=0,n=t-1;n>=0;n--)r+=rXt(e[n]);return r}function D7(e,t){for(var r=0,n=0;n<e.rows.length&&e.rows[n].rowIndex<t;n++)r+=e.rows[n].rowHeight;return r}function rXt(e){var t=e.allRowsHeight;if(t!==void 0)return t;for(var r=0,n=0;n<e.rows.length;n++)r+=e.rows[n].rowHeight;return e.allRowsHeight=r,r}function n$(e){return e.rowBlocks[e.page]}function iXt(e,t){return e.rows[t-e.firstRowIndex]}});var sZe=ye(F7=>{"use strict";var nXt=kd().getModuleCalcData,aXt=l$(),z7="table";F7.name=z7;F7.plot=function(e){var t=nXt(e.calcdata,z7)[0];t.length&&aXt(e,t)};F7.clean=function(e,t,r,n){var i=n._has&&n._has(z7),a=t._has&&t._has(z7);i&&!a&&n._paperdiv.selectAll(".table").remove()}});var uZe=ye((G_r,lZe)=>{"use strict";lZe.exports={attributes:WJ(),supplyDefaults:FWe(),calc:OWe(),plot:l$(),moduleType:"trace",name:"table",basePlotModule:sZe(),categories:["noOpacity"],meta:{}}});var fZe=ye((j_r,cZe)=>{"use strict";cZe.exports=uZe()});var gZe=ye((W_r,pZe)=>{"use strict";var hZe=Su(),dZe=dh(),u$=Cd(),oXt=Oc().descriptionWithDates,sXt=Bu().overrideAll,vZe=Ed().dash,c$=no().extendFlat;pZe.exports={color:{valType:"color",editType:"calc"},smoothing:{valType:"number",dflt:1,min:0,max:1.3,editType:"calc"},title:{text:{valType:"string",dflt:"",editType:"calc"},font:hZe({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:u$.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:c$({},u$.labelalias,{editType:"calc"}),tickfont:hZe({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"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:oXt("tick label")},tickformatstops:sXt(u$.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:dZe.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:c$({},vZe,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:c$({},vZe,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:dZe.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}});var O7=ye((Z_r,_Ze)=>{"use strict";var lXt=Su(),mZe=gZe(),yZe=dh(),q7=lXt({editType:"calc"}),uXt=Uc().zorder;q7.family.dflt='"Open Sans", verdana, arial, sans-serif';q7.size.dflt=12;q7.color.dflt=yZe.defaultLine;_Ze.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:mZe,baxis:mZe,font:q7,color:{valType:"color",dflt:yZe.defaultLine,editType:"plot"},zorder:uXt}});var wZe=ye((X_r,bZe)=>{"use strict";var xZe=Mr().isArray1D;bZe.exports=function(t,r,n){var i=n("x"),a=i&&i.length,o=n("y"),s=o&&o.length;if(!a&&!s)return!1;if(r._cheater=!i,(!a||xZe(i))&&(!s||xZe(o))){var l=a?i.length:1/0;s&&(l=Math.min(l,o.length)),r.a&&r.a.length&&(l=Math.min(l,r.a.length)),r.b&&r.b.length&&(l=Math.min(l,r.b.length)),r._length=l}else r._length=null;return!0}});var SZe=ye((Y_r,AZe)=>{"use strict";var cXt=O7(),TZe=va().addOpacity,fXt=ba(),$k=Mr(),hXt=xb(),dXt=t_(),vXt=r_(),pXt=eI(),gXt=ym(),mXt=L3();AZe.exports=function(t,r,n){var i=n.letter,a=n.font||{},o=cXt[i+"axis"];function s(g,P){return $k.coerce(t,r,o,g,P)}function l(g,P){return $k.coerce2(t,r,o,g,P)}n.name&&(r._name=n.name,r._id=n.name),s("autotypenumbers",n.autotypenumbersDflt);var u=s("type");if(u==="-"&&(n.data&&yXt(r,n.data),r.type==="-"?r.type="linear":u=t.type=r.type),s("smoothing"),s("cheatertype"),s("showticklabels"),s("labelprefix",i+" = "),s("labelsuffix"),s("showtickprefix"),s("showticksuffix"),s("separatethousands"),s("tickformat"),s("exponentformat"),s("minexponent"),s("showexponent"),s("categoryorder"),s("tickmode"),s("tickvals"),s("ticktext"),s("tick0"),s("dtick"),r.tickmode==="array"&&(s("arraytick0"),s("arraydtick")),s("labelpadding"),r._hovertitle=i,u==="date"){var c=fXt.getComponentMethod("calendars","handleDefaults");c(t,r,"calendar",n.calendar)}gXt(r,n.fullLayout),r.c2p=$k.identity;var f=s("color",n.dfltColor),h=f===t.color?f:a.color,d=s("title.text");d&&($k.coerceFont(s,"title.font",a,{overrideDflt:{size:$k.bigFont(a.size),color:h}}),s("title.offset")),s("tickangle");var v=s("autorange",!r.isValidRange(t.range));v&&s("rangemode"),s("range"),r.cleanRange(),s("fixedrange"),hXt(t,r,s,u),vXt(t,r,s,u,n),dXt(t,r,s,u,n),pXt(t,r,s,{data:n.data,dataAttr:i});var x=l("gridcolor",TZe(f,.3)),b=l("gridwidth"),p=l("griddash"),E=s("showgrid");E||(delete r.gridcolor,delete r.gridwidth,delete r.griddash);var k=l("startlinecolor",f),A=l("startlinewidth",b),L=s("startline",r.showgrid||!!k||!!A);L||(delete r.startlinecolor,delete r.startlinewidth);var _=l("endlinecolor",f),C=l("endlinewidth",b),M=s("endline",r.showgrid||!!_||!!C);return M||(delete r.endlinecolor,delete r.endlinewidth),E?(s("minorgridcount"),s("minorgridwidth",b),s("minorgriddash",p),s("minorgridcolor",TZe(x,.06)),r.minorgridcount||(delete r.minorgridwidth,delete r.minorgriddash,delete r.minorgridcolor)):(delete r.gridcolor,delete r.gridwidth,delete r.griddash),r.showticklabels==="none"&&(delete r.tickfont,delete r.tickangle,delete r.showexponent,delete r.exponentformat,delete r.minexponent,delete r.tickformat,delete r.showticksuffix,delete r.showtickprefix),r.showticksuffix||delete r.ticksuffix,r.showtickprefix||delete r.tickprefix,s("tickmode"),r};function yXt(e,t){if(e.type==="-"){var r=e._id,n=r.charAt(0),i=n+"calendar",a=e[i];e.type=mXt(t,a,{autotypenumbers:e.autotypenumbers})}}});var EZe=ye((K_r,MZe)=>{"use strict";var _Xt=SZe(),xXt=Vs();MZe.exports=function(t,r,n,i,a){var o=i("a");o||(i("da"),i("a0"));var s=i("b");s||(i("db"),i("b0")),bXt(t,r,n,a)};function bXt(e,t,r,n){var i=["aaxis","baxis"];i.forEach(function(a){var o=a.charAt(0),s=e[a]||{},l=xXt.newContainer(t,a),u={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:o+"axis",letter:o,font:t.font,name:a,data:e[o],calendar:t.calendar,dfltColor:n,bgColor:r.paper_bgcolor,autotypenumbersDflt:r.autotypenumbers,fullLayout:r};_Xt(s,l,u),l._categories=l._categories||[],!e[a]&&s.type!=="-"&&(e[a]={type:s.type})})}});var LZe=ye((J_r,CZe)=>{"use strict";var kZe=Mr(),wXt=wZe(),TXt=EZe(),AXt=O7(),SXt=dh();CZe.exports=function(t,r,n,i){function a(l,u){return kZe.coerce(t,r,AXt,l,u)}r._clipPathId="clip"+r.uid+"carpet";var o=a("color",SXt.defaultLine);if(kZe.coerceFont(a,"font",i.font),a("carpet"),TXt(t,r,i,a,o),!r.a||!r.b){r.visible=!1;return}r.a.length<3&&(r.aaxis.smoothing=0),r.b.length<3&&(r.baxis.smoothing=0);var s=wXt(t,r,a);s||(r.visible=!1),r._cheater&&a("cheaterslope"),a("zorder")}});var f$=ye(($_r,PZe)=>{"use strict";var MXt=Mr().isArrayOrTypedArray;PZe.exports=function(t,r,n){var i;for(MXt(t)?t.length>r.length&&(t=t.slice(0,r.length)):t=[],i=0;i<r.length;i++)t[i]=n(r[i]);return t}});var h$=ye((Q_r,IZe)=>{"use strict";IZe.exports=function(t,r,n){if(t.length===0)return"";var i,a=[],o=n?3:1;for(i=0;i<t.length;i+=o)a.push(t[i]+","+r[i]),n&&i<t.length-o&&(a.push("C"),a.push([t[i+1]+","+r[i+1],t[i+2]+","+r[i+2]+" "].join(" ")));return a.join(n?"":"L")}});var DZe=ye((exr,RZe)=>{"use strict";RZe.exports=function(t,r,n,i,a,o){var s=a[0]*t.dpdx(r),l=a[1]*t.dpdy(n),u=1,c=1;if(o){var f=Math.sqrt(a[0]*a[0]+a[1]*a[1]),h=Math.sqrt(o[0]*o[0]+o[1]*o[1]),d=(a[0]*o[0]+a[1]*o[1])/f/h;c=Math.max(0,d)}var v=Math.atan2(l,s)*180/Math.PI;return v<-90?(v+=180,u=-u):v>90&&(v-=180,u=-u),{angle:v,flip:u,p:t.c2p(i,r,n),offsetMultplier:c}}});var VZe=ye((txr,UZe)=>{"use strict";var V7=xa(),B7=ao(),N7=f$(),qZe=h$(),Qk=DZe(),d$=Pl(),Up=Mr(),OZe=Up.strRotate,U7=Up.strTranslate,BZe=Nh();UZe.exports=function(t,r,n,i){var a=t._context.staticPlot,o=r.xaxis,s=r.yaxis,l=t._fullLayout,u=l._clips;Up.makeTraceGroups(i,n,"trace").each(function(c){var f=V7.select(this),h=c[0],d=h.trace,v=d.aaxis,x=d.baxis,b=Up.ensureSingle(f,"g","minorlayer"),p=Up.ensureSingle(f,"g","majorlayer"),E=Up.ensureSingle(f,"g","boundarylayer"),k=Up.ensureSingle(f,"g","labellayer");f.style("opacity",d.opacity),zA(o,s,p,v,"a",v._gridlines,!0,a),zA(o,s,p,x,"b",x._gridlines,!0,a),zA(o,s,b,v,"a",v._minorgridlines,!0,a),zA(o,s,b,x,"b",x._minorgridlines,!0,a),zA(o,s,E,v,"a-boundary",v._boundarylines,a),zA(o,s,E,x,"b-boundary",x._boundarylines,a);var A=zZe(t,o,s,d,h,k,v._labels,"a-label"),L=zZe(t,o,s,d,h,k,x._labels,"b-label");kXt(t,k,d,h,o,s,A,L),EXt(d,h,u,o,s)})};function EXt(e,t,r,n,i){var a,o,s,l,u=r.select("#"+e._clipPathId);u.size()||(u=r.append("clipPath").classed("carpetclip",!0));var c=Up.ensureSingle(u,"path","carpetboundary"),f=t.clipsegments,h=[];for(l=0;l<f.length;l++)a=f[l],o=N7([],a.x,n.c2p),s=N7([],a.y,i.c2p),h.push(qZe(o,s,a.bicubic));var d="M"+h.join("L")+"Z";u.attr("id",e._clipPathId),c.attr("d",d)}function zA(e,t,r,n,i,a,o){var s="const-"+i+"-lines",l=r.selectAll("."+s).data(a);l.enter().append("path").classed(s,!0).style("vector-effect",o?"none":"non-scaling-stroke"),l.each(function(u){var c=u,f=c.x,h=c.y,d=N7([],f,e.c2p),v=N7([],h,t.c2p),x="M"+qZe(d,v,c.smoothing),b=V7.select(this);b.attr("d",x).style("stroke-width",c.width).style("stroke",c.color).style("stroke-dasharray",B7.dashStyle(c.dash,c.width)).style("fill","none")}),l.exit().remove()}function zZe(e,t,r,n,i,a,o,s){var l=a.selectAll("text."+s).data(o);l.enter().append("text").classed(s,!0);var u=0,c={};return l.each(function(f,h){var d;if(f.axis.tickangle==="auto")d=Qk(n,t,r,f.xy,f.dxy);else{var v=(f.axis.tickangle+180)*Math.PI/180;d=Qk(n,t,r,f.xy,[Math.cos(v),Math.sin(v)])}h||(c={angle:d.angle,flip:d.flip});var x=(f.endAnchor?-1:1)*d.flip,b=V7.select(this).attr({"text-anchor":x>0?"start":"end","data-notex":1}).call(B7.font,f.font).text(f.text).call(d$.convertToTspans,e),p=B7.bBox(this);b.attr("transform",U7(d.p[0],d.p[1])+OZe(d.angle)+U7(f.axis.labelpadding*x,p.height*.3)),u=Math.max(u,p.width+f.axis.labelpadding)}),l.exit().remove(),c.maxExtent=u,c}function kXt(e,t,r,n,i,a,o,s){var l,u,c,f,h=Up.aggNums(Math.min,null,r.a),d=Up.aggNums(Math.max,null,r.a),v=Up.aggNums(Math.min,null,r.b),x=Up.aggNums(Math.max,null,r.b);l=.5*(h+d),u=v,c=r.ab2xy(l,u,!0),f=r.dxyda_rough(l,u),o.angle===void 0&&Up.extendFlat(o,Qk(r,i,a,c,r.dxydb_rough(l,u))),FZe(e,t,r,n,c,f,r.aaxis,i,a,o,"a-title"),l=h,u=.5*(v+x),c=r.ab2xy(l,u,!0),f=r.dxydb_rough(l,u),s.angle===void 0&&Up.extendFlat(s,Qk(r,i,a,c,r.dxyda_rough(l,u))),FZe(e,t,r,n,c,f,r.baxis,i,a,s,"b-title")}var NZe=BZe.LINE_SPACING,CXt=(1-BZe.MID_SHIFT)/NZe+1;function FZe(e,t,r,n,i,a,o,s,l,u,c){var f=[];o.title.text&&f.push(o.title.text);var h=t.selectAll("text."+c).data(f),d=u.maxExtent;h.enter().append("text").classed(c,!0),h.each(function(){var v=Qk(r,s,l,i,a);["start","both"].indexOf(o.showticklabels)===-1&&(d=0);var x=o.title.font.size;d+=x+o.title.offset;var b=u.angle+(u.flip<0?180:0),p=(b-v.angle+450)%360,E=p>90&&p<270,k=V7.select(this);k.text(o.title.text).call(d$.convertToTspans,e),E&&(d=(-d$.lineCount(k)+CXt)*NZe*x-d),k.attr("transform",U7(v.p[0],v.p[1])+OZe(v.angle)+U7(0,d)).attr("text-anchor","middle").call(B7.font,o.title.font)}),h.exit().remove()}});var GZe=ye((rxr,HZe)=>{"use strict";var H7=Mr().isArrayOrTypedArray;HZe.exports=function(e,t,r){var n,i,a,o,s,l,u=[],c=H7(e)?e.length:e,f=H7(t)?t.length:t,h=H7(e)?e:null,d=H7(t)?t:null;h&&(a=(h.length-1)/(h[h.length-1]-h[0])/(c-1)),d&&(o=(d.length-1)/(d[d.length-1]-d[0])/(f-1));var v,x=1/0,b=-1/0;for(i=0;i<f;i++)for(u[i]=[],l=d?(d[i]-d[0])*o:i/(f-1),n=0;n<c;n++)s=h?(h[n]-h[0])*a:n/(c-1),v=s-l*r,x=Math.min(v,x),b=Math.max(v,b),u[i][n]=v;var p=1/(b-x),E=-x*p;for(i=0;i<f;i++)for(n=0;n<c;n++)u[i][n]=p*u[i][n]+E;return u}});var XZe=ye((ixr,ZZe)=>{"use strict";var jZe=Mr().isArrayOrTypedArray;ZZe.exports=function(e){return WZe(e,0)};function WZe(e,t){if(!jZe(e)||t>=10)return null;for(var r=1/0,n=-1/0,i=e.length,a=0;a<i;a++){var o=e[a];if(jZe(o)){var s=WZe(o,t+1);s&&(r=Math.min(s[0],r),n=Math.max(s[1],n))}else r=Math.min(o,r),n=Math.max(o,n)}return[r,n]}});var KZe=ye((nxr,YZe)=>{"use strict";var LXt=Qa(),kx=no().extendFlat;YZe.exports=function(t,r,n){var i,a,o,s,l,u,c,f,h,d,v,x,b,p,E=t["_"+r],k=t[r+"axis"],A=k._gridlines=[],L=k._minorgridlines=[],_=k._boundarylines=[],C=t["_"+n],M=t[n+"axis"];k.tickmode==="array"&&(k.tickvals=E.slice());var g=t._xctrl,P=t._yctrl,T=g[0].length,F=g.length,q=t._a.length,V=t._b.length;LXt.prepTicks(k),k.tickmode==="array"&&delete k.tickvals;var H=k.smoothing?3:1;function X(N){var W,re,ae,_e,Me,ke,ge,ie,Te,Ee,Ae,ze,Ce=[],me=[],Re={};if(r==="b")for(re=t.b2j(N),ae=Math.floor(Math.max(0,Math.min(V-2,re))),_e=re-ae,Re.length=V,Re.crossLength=q,Re.xy=function(ce){return t.evalxy([],ce,re)},Re.dxy=function(ce,Ge){return t.dxydi([],ce,ae,Ge,_e)},W=0;W<q;W++)ke=Math.min(q-2,W),ge=W-ke,ie=t.evalxy([],W,re),M.smoothing&&W>0&&(Te=t.dxydi([],W-1,ae,0,_e),Ce.push(Me[0]+Te[0]/3),me.push(Me[1]+Te[1]/3),Ee=t.dxydi([],W-1,ae,1,_e),Ce.push(ie[0]-Ee[0]/3),me.push(ie[1]-Ee[1]/3)),Ce.push(ie[0]),me.push(ie[1]),Me=ie;else for(W=t.a2i(N),ke=Math.floor(Math.max(0,Math.min(q-2,W))),ge=W-ke,Re.length=q,Re.crossLength=V,Re.xy=function(ce){return t.evalxy([],W,ce)},Re.dxy=function(ce,Ge){return t.dxydj([],ke,ce,ge,Ge)},re=0;re<V;re++)ae=Math.min(V-2,re),_e=re-ae,ie=t.evalxy([],W,re),M.smoothing&&re>0&&(Ae=t.dxydj([],ke,re-1,ge,0),Ce.push(Me[0]+Ae[0]/3),me.push(Me[1]+Ae[1]/3),ze=t.dxydj([],ke,re-1,ge,1),Ce.push(ie[0]-ze[0]/3),me.push(ie[1]-ze[1]/3)),Ce.push(ie[0]),me.push(ie[1]),Me=ie;return Re.axisLetter=r,Re.axis=k,Re.crossAxis=M,Re.value=N,Re.constvar=n,Re.index=f,Re.x=Ce,Re.y=me,Re.smoothing=M.smoothing,Re}function G(N){var W,re,ae,_e,Me,ke=[],ge=[],ie={};if(ie.length=E.length,ie.crossLength=C.length,r==="b")for(ae=Math.max(0,Math.min(V-2,N)),Me=Math.min(1,Math.max(0,N-ae)),ie.xy=function(Te){return t.evalxy([],Te,N)},ie.dxy=function(Te,Ee){return t.dxydi([],Te,ae,Ee,Me)},W=0;W<T;W++)ke[W]=g[N*H][W],ge[W]=P[N*H][W];else for(re=Math.max(0,Math.min(q-2,N)),_e=Math.min(1,Math.max(0,N-re)),ie.xy=function(Te){return t.evalxy([],N,Te)},ie.dxy=function(Te,Ee){return t.dxydj([],re,Te,_e,Ee)},W=0;W<F;W++)ke[W]=g[W][N*H],ge[W]=P[W][N*H];return ie.axisLetter=r,ie.axis=k,ie.crossAxis=M,ie.value=E[N],ie.constvar=n,ie.index=N,ie.x=ke,ie.y=ge,ie.smoothing=M.smoothing,ie}if(k.tickmode==="array"){for(s=5e-15,l=[Math.floor((E.length-1-k.arraytick0)/k.arraydtick*(1+s)),Math.ceil(-k.arraytick0/k.arraydtick/(1+s))].sort(function(N,W){return N-W}),u=l[0]-1,c=l[1]+1,f=u;f<c;f++)a=k.arraytick0+k.arraydtick*f,!(a<0||a>E.length-1)&&A.push(kx(G(a),{color:k.gridcolor,width:k.gridwidth,dash:k.griddash}));for(f=u;f<c;f++)if(o=k.arraytick0+k.arraydtick*f,v=Math.min(o+k.arraydtick,E.length-1),!(o<0||o>E.length-1)&&!(v<0||v>E.length-1))for(x=E[o],b=E[v],i=0;i<k.minorgridcount;i++)p=v-o,!(p<=0)&&(d=x+(b-x)*(i+1)/(k.minorgridcount+1)*(k.arraydtick/p),!(d<E[0]||d>E[E.length-1])&&L.push(kx(X(d),{color:k.minorgridcolor,width:k.minorgridwidth,dash:k.minorgriddash})));k.startline&&_.push(kx(G(0),{color:k.startlinecolor,width:k.startlinewidth})),k.endline&&_.push(kx(G(E.length-1),{color:k.endlinecolor,width:k.endlinewidth}))}else{for(s=5e-15,l=[Math.floor((E[E.length-1]-k.tick0)/k.dtick*(1+s)),Math.ceil((E[0]-k.tick0)/k.dtick/(1+s))].sort(function(N,W){return N-W}),u=l[0],c=l[1],f=u;f<=c;f++)h=k.tick0+k.dtick*f,A.push(kx(X(h),{color:k.gridcolor,width:k.gridwidth,dash:k.griddash}));for(f=u-1;f<c+1;f++)for(h=k.tick0+k.dtick*f,i=0;i<k.minorgridcount;i++)d=h+k.dtick*(i+1)/(k.minorgridcount+1),!(d<E[0]||d>E[E.length-1])&&L.push(kx(X(d),{color:k.minorgridcolor,width:k.minorgridwidth,dash:k.minorgriddash}));k.startline&&_.push(kx(X(E[0]),{color:k.startlinecolor,width:k.startlinewidth})),k.endline&&_.push(kx(X(E[E.length-1]),{color:k.endlinecolor,width:k.endlinewidth}))}}});var eXe=ye((axr,QZe)=>{"use strict";var JZe=Qa(),$Ze=no().extendFlat;QZe.exports=function(t,r){var n,i,a,o,s,l=r._labels=[],u=r._gridlines;for(n=0;n<u.length;n++)s=u[n],["start","both"].indexOf(r.showticklabels)!==-1&&(i=JZe.tickText(r,s.value),$Ze(i,{prefix:a,suffix:o,endAnchor:!0,xy:s.xy(0),dxy:s.dxy(0,0),axis:s.axis,length:s.crossAxis.length,font:s.axis.tickfont,isFirst:n===0,isLast:n===u.length-1}),l.push(i)),["end","both"].indexOf(r.showticklabels)!==-1&&(i=JZe.tickText(r,s.value),$Ze(i,{endAnchor:!1,xy:s.xy(s.crossLength-1),dxy:s.dxy(s.crossLength-2,1),axis:s.axis,length:s.crossAxis.length,font:s.axis.tickfont,isFirst:n===0,isLast:n===u.length-1}),l.push(i))}});var rXe=ye((oxr,tXe)=>{"use strict";tXe.exports=function(t,r,n,i){var a,o,s,l=[],u=!!n.smoothing,c=!!i.smoothing,f=t[0].length-1,h=t.length-1;for(a=0,o=[],s=[];a<=f;a++)o[a]=t[0][a],s[a]=r[0][a];for(l.push({x:o,y:s,bicubic:u}),a=0,o=[],s=[];a<=h;a++)o[a]=t[a][f],s[a]=r[a][f];for(l.push({x:o,y:s,bicubic:c}),a=f,o=[],s=[];a>=0;a--)o[f-a]=t[h][a],s[f-a]=r[h][a];for(l.push({x:o,y:s,bicubic:u}),a=h,o=[],s=[];a>=0;a--)o[h-a]=t[a][0],s[h-a]=r[a][0];return l.push({x:o,y:s,bicubic:c}),l}});var nXe=ye((sxr,iXe)=>{"use strict";var PXt=Mr();iXe.exports=function(t,r,n){var i,a,o,s=[],l=[],u=t[0].length,c=t.length;function f(ae,_e){var Me=0,ke,ge=0;return ae>0&&(ke=t[_e][ae-1])!==void 0&&(ge++,Me+=ke),ae<u-1&&(ke=t[_e][ae+1])!==void 0&&(ge++,Me+=ke),_e>0&&(ke=t[_e-1][ae])!==void 0&&(ge++,Me+=ke),_e<c-1&&(ke=t[_e+1][ae])!==void 0&&(ge++,Me+=ke),Me/Math.max(1,ge)}var h=0;for(i=0;i<u;i++)for(a=0;a<c;a++)t[a][i]===void 0&&(s.push(i),l.push(a),t[a][i]=f(i,a)),h=Math.max(h,Math.abs(t[a][i]));if(!s.length)return t;var d,v,x,b,p,E,k,A,L,_,C,M=1e-5,g=0,P=100,T=0,F=s.length;do{for(g=0,o=0;o<F;o++){i=s[o],a=l[o];var q=0,V=0,H,X,G,N,W,re;i===0?(W=Math.min(u-1,2),G=r[W],N=r[1],H=t[a][W],X=t[a][1],V+=X+(X-H)*(r[0]-N)/(N-G),q++):i===u-1&&(W=Math.max(0,u-3),G=r[W],N=r[u-2],H=t[a][W],X=t[a][u-2],V+=X+(X-H)*(r[u-1]-N)/(N-G),q++),(i===0||i===u-1)&&a>0&&a<c-1&&(d=n[a+1]-n[a],v=n[a]-n[a-1],V+=(v*t[a+1][i]+d*t[a-1][i])/(v+d),q++),a===0?(re=Math.min(c-1,2),G=n[re],N=n[1],H=t[re][i],X=t[1][i],V+=X+(X-H)*(n[0]-N)/(N-G),q++):a===c-1&&(re=Math.max(0,c-3),G=n[re],N=n[c-2],H=t[re][i],X=t[c-2][i],V+=X+(X-H)*(n[c-1]-N)/(N-G),q++),(a===0||a===c-1)&&i>0&&i<u-1&&(d=r[i+1]-r[i],v=r[i]-r[i-1],V+=(v*t[a][i+1]+d*t[a][i-1])/(v+d),q++),q?V/=q:(x=r[i+1]-r[i],b=r[i]-r[i-1],p=n[a+1]-n[a],E=n[a]-n[a-1],k=x*b*(x+b),A=p*E*(p+E),V=(k*(E*t[a+1][i]+p*t[a-1][i])+A*(b*t[a][i+1]+x*t[a][i-1]))/(A*(b+x)+k*(E+p))),L=V-t[a][i],_=L/h,g+=_*_,C=q?0:.85,t[a][i]+=L*(1+C)}g=Math.sqrt(g)}while(T++<P&&g>M);return PXt.log("Smoother converged to",g,"after",T,"iterations"),t}});var oXe=ye((lxr,aXe)=>{"use strict";aXe.exports={RELATIVE_CULL_TOLERANCE:1e-6}});var uXe=ye((uxr,lXe)=>{"use strict";var sXe=.5;lXe.exports=function(t,r,n,i){var a=t[0]-r[0],o=t[1]-r[1],s=n[0]-r[0],l=n[1]-r[1],u=Math.pow(a*a+o*o,sXe/2),c=Math.pow(s*s+l*l,sXe/2),f=(c*c*a-u*u*s)*i,h=(c*c*o-u*u*l)*i,d=c*(u+c)*3,v=u*(u+c)*3;return[[r[0]+(d&&f/d),r[1]+(d&&h/d)],[r[0]-(v&&f/v),r[1]-(v&&h/v)]]}});var fXe=ye((cxr,cXe)=>{"use strict";var v$=uXe(),G7=Mr().ensureArray;function FA(e,t,r){var n=-.5*r[0]+1.5*t[0],i=-.5*r[1]+1.5*t[1];return[(2*n+e[0])/3,(2*i+e[1])/3]}cXe.exports=function(t,r,n,i,a,o){var s,l,u,c,f,h,d,v,x,b,p=n[0].length,E=n.length,k=a?3*p-2:p,A=o?3*E-2:E;for(t=G7(t,A),r=G7(r,A),u=0;u<A;u++)t[u]=G7(t[u],k),r[u]=G7(r[u],k);for(l=0,c=0;l<E;l++,c+=o?3:1)for(f=t[c],h=r[c],d=n[l],v=i[l],s=0,u=0;s<p;s++,u+=a?3:1)f[u]=d[s],h[u]=v[s];if(a)for(l=0,c=0;l<E;l++,c+=o?3:1){for(s=1,u=3;s<p-1;s++,u+=3)x=v$([n[l][s-1],i[l][s-1]],[n[l][s],i[l][s]],[n[l][s+1],i[l][s+1]],a),t[c][u-1]=x[0][0],r[c][u-1]=x[0][1],t[c][u+1]=x[1][0],r[c][u+1]=x[1][1];b=FA([t[c][0],r[c][0]],[t[c][2],r[c][2]],[t[c][3],r[c][3]]),t[c][1]=b[0],r[c][1]=b[1],b=FA([t[c][k-1],r[c][k-1]],[t[c][k-3],r[c][k-3]],[t[c][k-4],r[c][k-4]]),t[c][k-2]=b[0],r[c][k-2]=b[1]}if(o)for(u=0;u<k;u++){for(c=3;c<A-3;c+=3)x=v$([t[c-3][u],r[c-3][u]],[t[c][u],r[c][u]],[t[c+3][u],r[c+3][u]],o),t[c-1][u]=x[0][0],r[c-1][u]=x[0][1],t[c+1][u]=x[1][0],r[c+1][u]=x[1][1];b=FA([t[0][u],r[0][u]],[t[2][u],r[2][u]],[t[3][u],r[3][u]]),t[1][u]=b[0],r[1][u]=b[1],b=FA([t[A-1][u],r[A-1][u]],[t[A-3][u],r[A-3][u]],[t[A-4][u],r[A-4][u]]),t[A-2][u]=b[0],r[A-2][u]=b[1]}if(a&&o)for(c=1;c<A;c+=(c+1)%3===0?2:1){for(u=3;u<k-3;u+=3)x=v$([t[c][u-3],r[c][u-3]],[t[c][u],r[c][u]],[t[c][u+3],r[c][u+3]],a),t[c][u-1]=.5*(t[c][u-1]+x[0][0]),r[c][u-1]=.5*(r[c][u-1]+x[0][1]),t[c][u+1]=.5*(t[c][u+1]+x[1][0]),r[c][u+1]=.5*(r[c][u+1]+x[1][1]);b=FA([t[c][0],r[c][0]],[t[c][2],r[c][2]],[t[c][3],r[c][3]]),t[c][1]=.5*(t[c][1]+b[0]),r[c][1]=.5*(r[c][1]+b[1]),b=FA([t[c][k-1],r[c][k-1]],[t[c][k-3],r[c][k-3]],[t[c][k-4],r[c][k-4]]),t[c][k-2]=.5*(t[c][k-2]+b[0]),r[c][k-2]=.5*(r[c][k-2]+b[1])}return[t,r]}});var dXe=ye((fxr,hXe)=>{"use strict";hXe.exports=function(e,t,r,n,i){var a=t-2,o=r-2;return n&&i?function(s,l,u){s||(s=[]);var c,f,h,d,v,x,b=Math.max(0,Math.min(Math.floor(l),a)),p=Math.max(0,Math.min(Math.floor(u),o)),E=Math.max(0,Math.min(1,l-b)),k=Math.max(0,Math.min(1,u-p));b*=3,p*=3;var A=E*E,L=A*E,_=1-E,C=_*_,M=C*_,g=k*k,P=g*k,T=1-k,F=T*T,q=F*T;for(x=0;x<e.length;x++)v=e[x],c=M*v[p][b]+3*(C*E*v[p][b+1]+_*A*v[p][b+2])+L*v[p][b+3],f=M*v[p+1][b]+3*(C*E*v[p+1][b+1]+_*A*v[p+1][b+2])+L*v[p+1][b+3],h=M*v[p+2][b]+3*(C*E*v[p+2][b+1]+_*A*v[p+2][b+2])+L*v[p+2][b+3],d=M*v[p+3][b]+3*(C*E*v[p+3][b+1]+_*A*v[p+3][b+2])+L*v[p+3][b+3],s[x]=q*c+3*(F*k*f+T*g*h)+P*d;return s}:n?function(s,l,u){s||(s=[]);var c=Math.max(0,Math.min(Math.floor(l),a)),f=Math.max(0,Math.min(Math.floor(u),o)),h=Math.max(0,Math.min(1,l-c)),d=Math.max(0,Math.min(1,u-f)),v,x,b,p,E,k;c*=3;var A=h*h,L=A*h,_=1-h,C=_*_,M=C*_,g=1-d;for(E=0;E<e.length;E++)k=e[E],v=g*k[f][c]+d*k[f+1][c],x=g*k[f][c+1]+d*k[f+1][c+1],b=g*k[f][c+2]+d*k[f+1][c+1],p=g*k[f][c+3]+d*k[f+1][c+1],s[E]=M*v+3*(C*h*x+_*A*b)+L*p;return s}:i?function(s,l,u){s||(s=[]);var c=Math.max(0,Math.min(Math.floor(l),a)),f=Math.max(0,Math.min(Math.floor(u),o)),h=Math.max(0,Math.min(1,l-c)),d=Math.max(0,Math.min(1,u-f)),v,x,b,p,E,k;f*=3;var A=d*d,L=A*d,_=1-d,C=_*_,M=C*_,g=1-h;for(E=0;E<e.length;E++)k=e[E],v=g*k[f][c]+h*k[f][c+1],x=g*k[f+1][c]+h*k[f+1][c+1],b=g*k[f+2][c]+h*k[f+2][c+1],p=g*k[f+3][c]+h*k[f+3][c+1],s[E]=M*v+3*(C*d*x+_*A*b)+L*p;return s}:function(s,l,u){s||(s=[]);var c=Math.max(0,Math.min(Math.floor(l),a)),f=Math.max(0,Math.min(Math.floor(u),o)),h=Math.max(0,Math.min(1,l-c)),d=Math.max(0,Math.min(1,u-f)),v,x,b,p,E=1-d,k=1-h;for(b=0;b<e.length;b++)p=e[b],v=k*p[f][c]+h*p[f][c+1],x=k*p[f+1][c]+h*p[f+1][c+1],s[b]=E*v+d*x;return s}}});var pXe=ye((hxr,vXe)=>{"use strict";vXe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,x=1-o,b=x*x,p=x*o*2,E=-3*b,k=3*(b-p),A=3*(p-v),L=3*v,_=s*s,C=_*s,M=1-s,g=M*M,P=g*M;for(d=0;d<e.length;d++)h=e[d],l=E*h[a][i]+k*h[a][i+1]+A*h[a][i+2]+L*h[a][i+3],u=E*h[a+1][i]+k*h[a+1][i+1]+A*h[a+1][i+2]+L*h[a+1][i+3],c=E*h[a+2][i]+k*h[a+2][i+1]+A*h[a+2][i+2]+L*h[a+2][i+3],f=E*h[a+3][i]+k*h[a+3][i+1]+A*h[a+3][i+2]+L*h[a+3][i+3],n[d]=P*l+3*(g*s*u+M*_*c)+C*f;return n}:t?function(n,i,a,o,s){n||(n=[]);var l,u,c,f;i*=3;var h=o*o,d=1-o,v=d*d,x=d*o*2,b=-3*v,p=3*(v-x),E=3*(x-h),k=3*h,A=1-s;for(c=0;c<e.length;c++)f=e[c],l=b*f[a][i]+p*f[a][i+1]+E*f[a][i+2]+k*f[a][i+3],u=b*f[a+1][i]+p*f[a+1][i+1]+E*f[a+1][i+2]+k*f[a+1][i+3],n[c]=A*l+s*u;return n}:r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;a*=3;var v=s*s,x=v*s,b=1-s,p=b*b,E=p*b;for(h=0;h<e.length;h++)d=e[h],l=d[a][i+1]-d[a][i],u=d[a+1][i+1]-d[a+1][i],c=d[a+2][i+1]-d[a+2][i],f=d[a+3][i+1]-d[a+3][i],n[h]=E*l+3*(p*s*u+b*v*c)+x*f;return n}:function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h=1-s;for(c=0;c<e.length;c++)f=e[c],l=f[a][i+1]-f[a][i],u=f[a+1][i+1]-f[a+1][i],n[c]=h*l+s*u;return n}}});var mXe=ye((dxr,gXe)=>{"use strict";gXe.exports=function(e,t,r){return t&&r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3,a*=3;var v=o*o,x=v*o,b=1-o,p=b*b,E=p*b,k=s*s,A=1-s,L=A*A,_=A*s*2,C=-3*L,M=3*(L-_),g=3*(_-k),P=3*k;for(d=0;d<e.length;d++)h=e[d],l=C*h[a][i]+M*h[a+1][i]+g*h[a+2][i]+P*h[a+3][i],u=C*h[a][i+1]+M*h[a+1][i+1]+g*h[a+2][i+1]+P*h[a+3][i+1],c=C*h[a][i+2]+M*h[a+1][i+2]+g*h[a+2][i+2]+P*h[a+3][i+2],f=C*h[a][i+3]+M*h[a+1][i+3]+g*h[a+2][i+3]+P*h[a+3][i+3],n[d]=E*l+3*(p*o*u+b*v*c)+x*f;return n}:t?function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h,d;i*=3;var v=s*s,x=v*s,b=1-s,p=b*b,E=p*b;for(h=0;h<e.length;h++)d=e[h],l=d[a+1][i]-d[a][i],u=d[a+1][i+1]-d[a][i+1],c=d[a+1][i+2]-d[a][i+2],f=d[a+1][i+3]-d[a][i+3],n[h]=E*l+3*(p*s*u+b*v*c)+x*f;return n}:r?function(n,i,a,o,s){n||(n=[]);var l,u,c,f;a*=3;var h=1-o,d=s*s,v=1-s,x=v*v,b=v*s*2,p=-3*x,E=3*(x-b),k=3*(b-d),A=3*d;for(c=0;c<e.length;c++)f=e[c],l=p*f[a][i]+E*f[a+1][i]+k*f[a+2][i]+A*f[a+3][i],u=p*f[a][i+1]+E*f[a+1][i+1]+k*f[a+2][i+1]+A*f[a+3][i+1],n[c]=h*l+o*u;return n}:function(n,i,a,o,s){n||(n=[]);var l,u,c,f,h=1-o;for(c=0;c<e.length;c++)f=e[c],l=f[a+1][i]-f[a][i],u=f[a+1][i+1]-f[a][i+1],n[c]=h*l+o*u;return n}}});var bXe=ye((vxr,xXe)=>{"use strict";var yXe=oXe(),_Xe=k6().findBin,IXt=fXe(),RXt=dXe(),DXt=pXe(),zXt=mXe();xXe.exports=function(t){var r=t._a,n=t._b,i=r.length,a=n.length,o=t.aaxis,s=t.baxis,l=r[0],u=r[i-1],c=n[0],f=n[a-1],h=r[r.length-1]-r[0],d=n[n.length-1]-n[0],v=h*yXe.RELATIVE_CULL_TOLERANCE,x=d*yXe.RELATIVE_CULL_TOLERANCE;l-=v,u+=v,c-=x,f+=x,t.isVisible=function(b,p){return b>l&&b<u&&p>c&&p<f},t.isOccluded=function(b,p){return b<l||b>u||p<c||p>f},t.setScale=function(){var b=t._x,p=t._y,E=IXt(t._xctrl,t._yctrl,b,p,o.smoothing,s.smoothing);t._xctrl=E[0],t._yctrl=E[1],t.evalxy=RXt([t._xctrl,t._yctrl],i,a,o.smoothing,s.smoothing),t.dxydi=DXt([t._xctrl,t._yctrl],o.smoothing,s.smoothing),t.dxydj=zXt([t._xctrl,t._yctrl],o.smoothing,s.smoothing)},t.i2a=function(b){var p=Math.max(0,Math.floor(b[0]),i-2),E=b[0]-p;return(1-E)*r[p]+E*r[p+1]},t.j2b=function(b){var p=Math.max(0,Math.floor(b[1]),i-2),E=b[1]-p;return(1-E)*n[p]+E*n[p+1]},t.ij2ab=function(b){return[t.i2a(b[0]),t.j2b(b[1])]},t.a2i=function(b){var p=Math.max(0,Math.min(_Xe(b,r),i-2)),E=r[p],k=r[p+1];return Math.max(0,Math.min(i-1,p+(b-E)/(k-E)))},t.b2j=function(b){var p=Math.max(0,Math.min(_Xe(b,n),a-2)),E=n[p],k=n[p+1];return Math.max(0,Math.min(a-1,p+(b-E)/(k-E)))},t.ab2ij=function(b){return[t.a2i(b[0]),t.b2j(b[1])]},t.i2c=function(b,p){return t.evalxy([],b,p)},t.ab2xy=function(b,p,E){if(!E&&(b<r[0]||b>r[i-1]|p<n[0]||p>n[a-1]))return[!1,!1];var k=t.a2i(b),A=t.b2j(p),L=t.evalxy([],k,A);if(E){var _=0,C=0,M=[],g,P,T,F;b<r[0]?(g=0,P=0,_=(b-r[0])/(r[1]-r[0])):b>r[i-1]?(g=i-2,P=1,_=(b-r[i-1])/(r[i-1]-r[i-2])):(g=Math.max(0,Math.min(i-2,Math.floor(k))),P=k-g),p<n[0]?(T=0,F=0,C=(p-n[0])/(n[1]-n[0])):p>n[a-1]?(T=a-2,F=1,C=(p-n[a-1])/(n[a-1]-n[a-2])):(T=Math.max(0,Math.min(a-2,Math.floor(A))),F=A-T),_&&(t.dxydi(M,g,T,P,F),L[0]+=M[0]*_,L[1]+=M[1]*_),C&&(t.dxydj(M,g,T,P,F),L[0]+=M[0]*C,L[1]+=M[1]*C)}return L},t.c2p=function(b,p,E){return[p.c2p(b[0]),E.c2p(b[1])]},t.p2x=function(b,p,E){return[p.p2c(b[0]),E.p2c(b[1])]},t.dadi=function(b){var p=Math.max(0,Math.min(r.length-2,b));return r[p+1]-r[p]},t.dbdj=function(b){var p=Math.max(0,Math.min(n.length-2,b));return n[p+1]-n[p]},t.dxyda=function(b,p,E,k){var A=t.dxydi(null,b,p,E,k),L=t.dadi(b,E);return[A[0]/L,A[1]/L]},t.dxydb=function(b,p,E,k){var A=t.dxydj(null,b,p,E,k),L=t.dbdj(p,k);return[A[0]/L,A[1]/L]},t.dxyda_rough=function(b,p,E){var k=h*(E||.1),A=t.ab2xy(b+k,p,!0),L=t.ab2xy(b-k,p,!0);return[(A[0]-L[0])*.5/k,(A[1]-L[1])*.5/k]},t.dxydb_rough=function(b,p,E){var k=d*(E||.1),A=t.ab2xy(b,p+k,!0),L=t.ab2xy(b,p-k,!0);return[(A[0]-L[0])*.5/k,(A[1]-L[1])*.5/k]},t.dpdx=function(b){return b._m},t.dpdy=function(b){return b._m}}});var CXe=ye((pxr,kXe)=>{"use strict";var j7=Qa(),wXe=Mr().isArray1D,FXt=GZe(),TXe=XZe(),AXe=KZe(),SXe=eXe(),qXt=rXe(),MXe=QI(),EXe=nXe(),OXt=JI(),BXt=bXe();kXe.exports=function(t,r){var n=j7.getFromId(t,r.xaxis),i=j7.getFromId(t,r.yaxis),a=r.aaxis,o=r.baxis,s=r.x,l=r.y,u=[];s&&wXe(s)&&u.push("x"),l&&wXe(l)&&u.push("y"),u.length&&OXt(r,a,o,"a","b",u);var c=r._a=r._a||r.a,f=r._b=r._b||r.b;s=r._x||r.x,l=r._y||r.y;var h={};if(r._cheater){var d=a.cheatertype==="index"?c.length:c,v=o.cheatertype==="index"?f.length:f;s=FXt(d,v,r.cheaterslope)}r._x=s=MXe(s),r._y=l=MXe(l),EXe(s,c,f),EXe(l,c,f),BXt(r),r.setScale();var x=TXe(s),b=TXe(l),p=.5*(x[1]-x[0]),E=.5*(x[1]+x[0]),k=.5*(b[1]-b[0]),A=.5*(b[1]+b[0]),L=1.3;return x=[E-p*L,E+p*L],b=[A-k*L,A+k*L],r._extremes[n._id]=j7.findExtremes(n,x,{padded:!0}),r._extremes[i._id]=j7.findExtremes(i,b,{padded:!0}),AXe(r,"a","b"),AXe(r,"b","a"),SXe(r,a),SXe(r,o),h.clipsegments=qXt(r._xctrl,r._yctrl,a,o),h.x=s,h.y=l,h.a=c,h.b=f,[h]}});var PXe=ye((gxr,LXe)=>{"use strict";LXe.exports={attributes:O7(),supplyDefaults:LZe(),plot:VZe(),calc:CXe(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Jf(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}});var RXe=ye((mxr,IXe)=>{"use strict";IXe.exports=PXe()});var p$=ye((yxr,zXe)=>{"use strict";var NXt=Eg(),u0=Uc(),UXt=vl(),VXt=Wo().hovertemplateAttrs,HXt=Wo().texttemplateAttrs,DXe=Jl(),Cx=no().extendFlat,sg=u0.marker,qA=u0.line,GXt=sg.line;zXe.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:Cx({},u0.mode,{dflt:"markers"}),text:Cx({},u0.text,{}),texttemplate:HXt({editType:"plot"},{keys:["a","b","text"]}),hovertext:Cx({},u0.hovertext,{}),line:{color:qA.color,width:qA.width,dash:qA.dash,backoff:qA.backoff,shape:Cx({},qA.shape,{values:["linear","spline"]}),smoothing:qA.smoothing,editType:"calc"},connectgaps:u0.connectgaps,fill:Cx({},u0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:NXt(),marker:Cx({symbol:sg.symbol,opacity:sg.opacity,maxdisplayed:sg.maxdisplayed,angle:sg.angle,angleref:sg.angleref,standoff:sg.standoff,size:sg.size,sizeref:sg.sizeref,sizemin:sg.sizemin,sizemode:sg.sizemode,line:Cx({width:GXt.width,editType:"calc"},DXe("marker.line")),gradient:sg.gradient,editType:"calc"},DXe("marker")),textfont:u0.textfont,textposition:u0.textposition,selected:u0.selected,unselected:u0.unselected,hoverinfo:Cx({},UXt.hoverinfo,{flags:["a","b","text","name"]}),hoveron:u0.hoveron,hovertemplate:VXt(),zorder:u0.zorder}});var BXe=ye((_xr,OXe)=>{"use strict";var FXe=Mr(),jXt=Sm(),OA=lu(),WXt=$p(),ZXt=R0(),qXe=J3(),XXt=D0(),YXt=Ig(),KXt=p$();OXe.exports=function(t,r,n,i){function a(h,d){return FXe.coerce(t,r,KXt,h,d)}a("carpet"),r.xaxis="x",r.yaxis="y";var o=a("a"),s=a("b"),l=Math.min(o.length,s.length);if(!l){r.visible=!1;return}r._length=l,a("text"),a("texttemplate"),a("hovertext");var u=l<jXt.PTS_LINESONLY?"lines+markers":"lines";a("mode",u),OA.hasMarkers(r)&&WXt(t,r,n,i,a,{gradient:!0}),OA.hasLines(r)&&(ZXt(t,r,n,i,a,{backoff:!0}),qXe(t,r,a),a("connectgaps")),OA.hasText(r)&&XXt(t,r,i,a);var c=[];(OA.hasMarkers(r)||OA.hasText(r))&&(a("marker.maxdisplayed"),c.push("points")),a("fill"),r.fill!=="none"&&(YXt(t,r,n,a),OA.hasLines(r)||qXe(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&c.push("fills");var f=a("hoveron",c.join("+")||"points");f!=="fills"&&a("hovertemplate"),a("zorder"),FXe.coerceSelectionMarkerOpacity(r,a)}});var UXe=ye((xxr,NXe)=>{"use strict";NXe.exports=function(t,r){var n={},i=r._carpet,a=i.ab2ij([t.a,t.b]),o=Math.floor(a[0]),s=a[0]-o,l=Math.floor(a[1]),u=a[1]-l,c=i.evalxy([],o,l,s,u);return n.yLabel=c[1].toFixed(3),n}});var W7=ye((bxr,VXe)=>{"use strict";VXe.exports=function(e,t){for(var r=e._fullData.length,n,i=0;i<r;i++){var a=e._fullData[i];if(a.index!==t.index&&a.type==="carpet"&&(n||(n=a),a.carpet===t.carpet))return a}return n}});var jXe=ye((wxr,GXe)=>{"use strict";var HXe=uo(),JXt=z0(),$Xt=km(),QXt=F0(),eYt=q0().calcMarkerSize,tYt=W7();GXe.exports=function(t,r){var n=r._carpetTrace=tYt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){var i;r.xaxis=n.xaxis,r.yaxis=n.yaxis;var a=r._length,o=new Array(a),s,l,u=!1;for(i=0;i<a;i++)if(s=r.a[i],l=r.b[i],HXe(s)&&HXe(l)){var c=n.ab2xy(+s,+l,!0),f=n.isVisible(+s,+l);f||(u=!0),o[i]={x:c[0],y:c[1],a:s,b:l,vis:f}}else o[i]={x:!1,y:!1};return r._needsCull=u,o[0].carpet=n,o[0].trace=r,eYt(r,a),JXt(t,r),$Xt(o,r),QXt(o,r),o}}});var XXe=ye((Txr,ZXe)=>{"use strict";var rYt=iT(),WXe=Qa(),iYt=ao();ZXe.exports=function(t,r,n,i){var a,o,s,l=n[0][0].carpet,u=WXe.getFromId(t,l.xaxis||"x"),c=WXe.getFromId(t,l.yaxis||"y"),f={xaxis:u,yaxis:c,plot:r.plot};for(a=0;a<n.length;a++)o=n[a][0].trace,o._xA=u,o._yA=c;for(rYt(t,f,n,i),a=0;a<n.length;a++)o=n[a][0].trace,s=i.selectAll("g.trace"+o.uid+" .js-line"),iYt.setClipUrl(s,n[a][0].carpet._clipPathId,t)}});var KXe=ye((Axr,YXe)=>{"use strict";var nYt=sT(),aYt=Mr().fillText;YXe.exports=function(t,r,n,i){var a=nYt(t,r,n,i);if(!a||a[0].index===!1)return;var o=a[0];if(o.index===void 0){var s=1-o.y0/t.ya._length,l=t.xa._length,u=l*s/2,c=l-u;return o.x0=Math.max(Math.min(o.x0,c),u),o.x1=Math.max(Math.min(o.x1,c),u),a}var f=o.cd[o.index];o.a=f.a,o.b=f.b,o.xLabelVal=void 0,o.yLabelVal=void 0;var h=o.trace,d=h._carpet,v=h._module.formatLabels(f,h);o.yLabel=v.yLabel,delete o.text;var x=[];function b(k,A){var L;k.labelprefix&&k.labelprefix.length>0?L=k.labelprefix.replace(/ = $/,""):L=k._hovertitle,x.push(L+": "+A.toFixed(3)+k.labelsuffix)}if(!h.hovertemplate){var p=f.hi||h.hoverinfo,E=p.split("+");E.indexOf("all")!==-1&&(E=["a","b","text"]),E.indexOf("a")!==-1&&b(d.aaxis,f.a),E.indexOf("b")!==-1&&b(d.baxis,f.b),x.push("y: "+o.yLabel),E.indexOf("text")!==-1&&aYt(f,h,x),o.extraText=x.join("<br>")}return a}});var $Xe=ye((Sxr,JXe)=>{"use strict";JXe.exports=function(t,r,n,i,a){var o=i[a];return t.a=o.a,t.b=o.b,t.y=o.y,t}});var eYe=ye((Mxr,QXe)=>{"use strict";QXe.exports={attributes:p$(),supplyDefaults:BXe(),colorbar:Kd(),formatLabels:UXe(),calc:jXe(),plot:XXe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:KXe(),selectPoints:lT(),eventData:$Xe(),moduleType:"trace",name:"scattercarpet",basePlotModule:Jf(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}});var rYe=ye((Exr,tYe)=>{"use strict";tYe.exports=eYe()});var g$=ye((kxr,iYe)=>{"use strict";var lg=ET(),g1=T4(),oYt=Jl(),sYt=no().extendFlat,ty=g1.contours;iYe.exports=sYt({carpet:{valType:"string",editType:"calc"},z:lg.z,a:lg.x,a0:lg.x0,da:lg.dx,b:lg.y,b0:lg.y0,db:lg.dy,text:lg.text,hovertext:lg.hovertext,transpose:lg.transpose,atype:lg.xtype,btype:lg.ytype,fillcolor:g1.fillcolor,autocontour:g1.autocontour,ncontours:g1.ncontours,contours:{type:ty.type,start:ty.start,end:ty.end,size:ty.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:ty.showlines,showlabels:ty.showlabels,labelfont:ty.labelfont,labelformat:ty.labelformat,operation:ty.operation,value:ty.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:g1.line.color,width:g1.line.width,dash:g1.line.dash,smoothing:g1.line.smoothing,editType:"plot"},zorder:g1.zorder},oYt("",{cLetter:"z",autoColorDflt:!1}))});var m$=ye((Cxr,oYe)=>{"use strict";var nYe=Mr(),lYt=XI(),aYe=g$(),uYt=yH(),cYt=y8(),fYt=_8();oYe.exports=function(t,r,n,i){function a(u,c){return nYe.coerce(t,r,aYe,u,c)}function o(u){return nYe.coerce2(t,r,aYe,u)}if(a("carpet"),t.a&&t.b){var s=lYt(t,r,a,i,"a","b");if(!s){r.visible=!1;return}a("text");var l=a("contours.type")==="constraint";l?uYt(t,r,a,i,n,{hasHover:!1}):(cYt(t,r,a,o),fYt(t,r,a,i,{hasHover:!1}))}else r._defaultColor=n,r._length=null;a("zorder")}});var cYe=ye((Lxr,uYe)=>{"use strict";var hYt=zv(),sYe=Mr(),dYt=JI(),vYt=QI(),pYt=e8(),gYt=t8(),lYe=VV(),mYt=m$(),yYt=W7(),_Yt=oH();uYe.exports=function(t,r){var n=r._carpetTrace=yYt(t,r);if(!(!n||!n.visible||n.visible==="legendonly")){if(!r.a||!r.b){var i=t.data[n.index],a=t.data[r.index];a.a||(a.a=i.a),a.b||(a.b=i.b),mYt(a,r,r._defaultColor,t._fullLayout)}var o=xYt(t,r);return _Yt(r,r._z),o}};function xYt(e,t){var r=t._carpetTrace,n=r.aaxis,i=r.baxis,a,o,s,l,u,c,f;n._minDtick=0,i._minDtick=0,sYe.isArray1D(t.z)&&dYt(t,n,i,"a","b",["z"]),a=t._a=t._a||t.a,l=t._b=t._b||t.b,a=a?n.makeCalcdata(t,"_a"):[],l=l?i.makeCalcdata(t,"_b"):[],o=t.a0||0,s=t.da||1,u=t.b0||0,c=t.db||1,f=t._z=vYt(t._z||t.z,t.transpose),t._emptypoints=gYt(f),pYt(f,t._emptypoints);var h=sYe.maxRowLength(f),d=t.xtype==="scaled"?"":a,v=lYe(t,d,o,s,h,n),x=t.ytype==="scaled"?"":l,b=lYe(t,x,u,c,f.length,i),p={a:v,b,z:f};return t.contours.type==="levels"&&t.contours.coloring!=="none"&&hYt(e,t,{vals:f,containerStr:"",cLetter:"z"}),[p]}});var hYe=ye((Pxr,fYe)=>{"use strict";var bYt=Mr().isArrayOrTypedArray;fYe.exports=function(e,t,r,n){var i,a,o,s,l,u,c,f,h,d,v,x,b,p=bYt(r)?"a":"b",E=p==="a"?e.aaxis:e.baxis,k=E.smoothing,A=p==="a"?e.a2i:e.b2j,L=p==="a"?r:n,_=p==="a"?n:r,C=p==="a"?t.a.length:t.b.length,M=p==="a"?t.b.length:t.a.length,g=Math.floor(p==="a"?e.b2j(_):e.a2i(_)),P=p==="a"?function(_e){return e.evalxy([],_e,g)}:function(_e){return e.evalxy([],g,_e)};k&&(o=Math.max(0,Math.min(M-2,g)),s=g-o,a=p==="a"?function(_e,Me){return e.dxydi([],_e,o,Me,s)}:function(_e,Me){return e.dxydj([],o,_e,s,Me)});var T=A(L[0]),F=A(L[1]),q=T<F?1:-1,V=(F-T)*1e-8,H=q>0?Math.floor:Math.ceil,X=q>0?Math.ceil:Math.floor,G=q>0?Math.min:Math.max,N=q>0?Math.max:Math.min,W=H(T+V),re=X(F-V);c=P(T);var ae=[[c]];for(i=W;i*q<re*q;i+=q)l=[],v=N(T,i),x=G(F,i+q),b=x-v,u=Math.max(0,Math.min(C-2,Math.floor(.5*(v+x)))),f=P(x),k&&(h=a(u,v-u),d=a(u,x-u),l.push([c[0]+h[0]/3*b,c[1]+h[1]/3*b]),l.push([f[0]-d[0]/3*b,f[1]-d[1]/3*b])),l.push(f),ae.push(l),c=f;return ae}});var _Ye=ye((Ixr,yYe)=>{"use strict";var X7=xa(),Y7=f$(),mYe=h$(),eC=ao(),m1=Mr(),wYt=lH(),TYt=uH(),hw=w8(),Z7=S4(),AYt=dH(),SYt=hH(),MYt=vH(),EYt=W7(),dYe=hYe();yYe.exports=function(t,r,n,i){var a=r.xaxis,o=r.yaxis;m1.makeTraceGroups(i,n,"contour").each(function(s){var l=X7.select(this),u=s[0],c=u.trace,f=c._carpetTrace=EYt(t,c),h=t.calcdata[f.index][0];if(!f.visible||f.visible==="legendonly")return;var d=u.a,v=u.b,x=c.contours,b=SYt(x,r,u),p=x.type==="constraint",E=x._operation,k=p?E==="="?"lines":"fill":x.coloring;function A(H){var X=f.ab2xy(H[0],H[1],!0);return[a.c2p(X[0]),o.c2p(X[1])]}var L=[[d[0],v[v.length-1]],[d[d.length-1],v[v.length-1]],[d[d.length-1],v[0]],[d[0],v[0]]];wYt(b);var _=(d[d.length-1]-d[0])*1e-8,C=(v[v.length-1]-v[0])*1e-8;TYt(b,_,C);var M=b;x.type==="constraint"&&(M=AYt(b,E)),kYt(b,A);var g,P,T,F,q=[];for(F=h.clipsegments.length-1;F>=0;F--)g=h.clipsegments[F],P=Y7([],g.x,a.c2p),T=Y7([],g.y,o.c2p),P.reverse(),T.reverse(),q.push(mYe(P,T,g.bicubic));var V="M"+q.join("L")+"Z";PYt(l,h.clipsegments,a,o,p,k),IYt(c,l,a,o,M,L,A,f,h,k,V),CYt(l,b,t,u,x,r,f),eC.setClipUrl(l,f._clipPathId,t)})};function kYt(e,t){var r,n,i,a,o,s,l,u,c;for(r=0;r<e.length;r++){for(a=e[r],o=a.pedgepaths=[],s=a.ppaths=[],n=0;n<a.edgepaths.length;n++){for(c=a.edgepaths[n],l=[],i=0;i<c.length;i++)l[i]=t(c[i]);o.push(l)}for(n=0;n<a.paths.length;n++){for(c=a.paths[n],u=[],i=0;i<c.length;i++)u[i]=t(c[i]);s.push(u)}}}function CYt(e,t,r,n,i,a,o){var s=r._context.staticPlot,l=m1.ensureSingle(e,"g","contourlines"),u=i.showlines!==!1,c=i.showlabels,f=u&&c,h=hw.createLines(l,u||c,t,s),d=hw.createLineClip(l,f,r,n.trace.uid),v=e.selectAll("g.contourlabels").data(c?[0]:[]);if(v.exit().remove(),v.enter().append("g").classed("contourlabels",!0),c){var x=a.xaxis,b=a.yaxis,p=x._length,E=b._length,k=[[[0,0],[p,0],[p,E],[0,E]]],A=[];m1.clearLocationCache();var L=hw.labelFormatter(r,n),_=eC.tester.append("text").attr("data-notex",1).call(eC.font,i.labelfont),C={left:0,right:p,center:p/2,top:0,bottom:E,middle:E/2},M=Math.sqrt(p*p+E*E),g=Z7.LABELDISTANCE*M/Math.max(1,t.length/Z7.LABELINCREASE);h.each(function(P){var T=hw.calcTextOpts(P.level,L,_,r);X7.select(this).selectAll("path").each(function(F){var q=this,V=m1.getVisibleSegment(q,C,T.height/2);if(V&&(LYt(q,F,P,V,o,T.height),!(V.len<(T.width+T.height)*Z7.LABELMIN)))for(var H=Math.min(Math.ceil(V.len/g),Z7.LABELMAX),X=0;X<H;X++){var G=hw.findBestTextLocation(q,V,T,A,C);if(!G)break;hw.addLabelData(G,T,A,k)}})}),_.remove(),hw.drawLabels(v,A,r,d,f?k:null)}c&&!u&&h.remove()}function LYt(e,t,r,n,i,a){for(var o,s=0;s<r.pedgepaths.length;s++)t===r.pedgepaths[s]&&(o=r.edgepaths[s]);if(!o)return;var l=i.a[0],u=i.a[i.a.length-1],c=i.b[0],f=i.b[i.b.length-1];function h(p,E){var k=0,A,L=.1;return(Math.abs(p[0]-l)<L||Math.abs(p[0]-u)<L)&&(A=pYe(i.dxydb_rough(p[0],p[1],L)),k=Math.max(k,a*gYe(E,A)/2)),(Math.abs(p[1]-c)<L||Math.abs(p[1]-f)<L)&&(A=pYe(i.dxyda_rough(p[0],p[1],L)),k=Math.max(k,a*gYe(E,A)/2)),k}var d=vYe(e,0,1),v=vYe(e,n.total,n.total-1),x=h(o[0],d),b=n.total-h(o[o.length-1],v);n.min<x&&(n.min=x),n.max>b&&(n.max=b),n.len=n.max-n.min}function vYe(e,t,r){var n=e.getPointAtLength(t),i=e.getPointAtLength(r),a=i.x-n.x,o=i.y-n.y,s=Math.sqrt(a*a+o*o);return[a/s,o/s]}function pYe(e){var t=Math.sqrt(e[0]*e[0]+e[1]*e[1]);return[e[0]/t,e[1]/t]}function gYe(e,t){var r=Math.abs(e[0]*t[0]+e[1]*t[1]),n=Math.sqrt(1-r*r);return n/r}function PYt(e,t,r,n,i,a){var o,s,l,u,c=m1.ensureSingle(e,"g","contourbg"),f=c.selectAll("path").data(a==="fill"&&!i?[0]:[]);f.enter().append("path"),f.exit().remove();var h=[];for(u=0;u<t.length;u++)o=t[u],s=Y7([],o.x,r.c2p),l=Y7([],o.y,n.c2p),h.push(mYe(s,l,o.bicubic));f.attr("d","M"+h.join("L")+"Z").style("stroke","none")}function IYt(e,t,r,n,i,a,o,s,l,u,c){var f=u==="fill";f&&MYt(i,e.contours);var h=m1.ensureSingle(t,"g","contourfill"),d=h.selectAll("path").data(f?i:[]);d.enter().append("path"),d.exit().remove(),d.each(function(v){var x=(v.prefixBoundary?c:"")+RYt(e,v,a,o,s,l,r,n);x?X7.select(this).attr("d",x).style("stroke","none"):X7.select(this).remove()})}function RYt(e,t,r,n,i,a,o,s){var l,u="",c=t.edgepaths.map(function(T,F){return F}),f=!0,h,d,v,x,b,p,E=Math.abs(r[0][0]-r[2][0])*1e-4,k=Math.abs(r[0][1]-r[2][1])*1e-4;function A(T){return Math.abs(T[1]-r[0][1])<k}function L(T){return Math.abs(T[1]-r[2][1])<k}function _(T){return Math.abs(T[0]-r[0][0])<E}function C(T){return Math.abs(T[0]-r[2][0])<E}function M(T,F){var q,V,H,X,G="";for(A(T)&&!C(T)||L(T)&&!_(T)?(X=i.aaxis,H=dYe(i,a,[T[0],F[0]],.5*(T[1]+F[1]))):(X=i.baxis,H=dYe(i,a,.5*(T[0]+F[0]),[T[1],F[1]])),q=1;q<H.length;q++)for(G+=X.smoothing?"C":"L",V=0;V<H[q].length;V++){var N=H[q][V];G+=[o.c2p(N[0]),s.c2p(N[1])]+" "}return G}for(l=0,h=null;c.length;){var g=t.edgepaths[l][0];for(h&&(u+=M(h,g)),p=eC.smoothopen(t.edgepaths[l].map(n),t.smoothing),u+=f?p:p.replace(/^M/,"L"),c.splice(c.indexOf(l),1),h=t.edgepaths[l][t.edgepaths[l].length-1],x=-1,v=0;v<4;v++){if(!h){m1.log("Missing end?",l,t);break}for(A(h)&&!C(h)?d=r[1]:_(h)?d=r[0]:L(h)?d=r[3]:C(h)&&(d=r[2]),b=0;b<t.edgepaths.length;b++){var P=t.edgepaths[b][0];Math.abs(h[0]-d[0])<E?Math.abs(h[0]-P[0])<E&&(P[1]-h[1])*(d[1]-P[1])>=0&&(d=P,x=b):Math.abs(h[1]-d[1])<k?Math.abs(h[1]-P[1])<k&&(P[0]-h[0])*(d[0]-P[0])>=0&&(d=P,x=b):m1.log("endpt to newendpt is not vert. or horz.",h,d,P)}if(x>=0)break;u+=M(h,d),h=d}if(x===t.edgepaths.length){m1.log("unclosed perimeter path");break}l=x,f=c.indexOf(l)===-1,f&&(l=c[0],u+=M(h,d)+"Z",h=null)}for(l=0;l<t.paths.length;l++)u+=eC.smoothclosed(t.paths[l].map(n),t.smoothing);return u}});var bYe=ye((Rxr,xYe)=>{"use strict";xYe.exports={attributes:g$(),supplyDefaults:m$(),colorbar:S8(),calc:cYe(),plot:_Ye(),style:A8(),moduleType:"trace",name:"contourcarpet",basePlotModule:Jf(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}});var TYe=ye((Dxr,wYe)=>{"use strict";wYe.exports=bYe()});var J7=ye((zxr,kYe)=>{"use strict";var K7=Mr().extendFlat,tC=Uc(),AYe=Oc().axisHoverFormat,MYe=Ed().dash,DYt=i3(),EYe=HT(),zYt=EYe.INCREASING.COLOR,FYt=EYe.DECREASING.COLOR,y$=tC.line;function SYe(e){return{line:{color:K7({},y$.color,{dflt:e}),width:y$.width,dash:MYe,editType:"style"},editType:"style"}}kYe.exports={xperiod:tC.xperiod,xperiod0:tC.xperiod0,xperiodalignment:tC.xperiodalignment,xhoverformat:AYe("x"),yhoverformat:AYe("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:K7({},y$.width,{}),dash:K7({},MYe,{}),editType:"style"},increasing:SYe(zYt),decreasing:SYe(FYt),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:K7({},DYt.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:tC.zorder}});var _$=ye((Fxr,CYe)=>{"use strict";var qYt=ba(),OYt=Mr();CYe.exports=function(t,r,n,i){var a=n("x"),o=n("open"),s=n("high"),l=n("low"),u=n("close");n("hoverlabel.split");var c=qYt.getComponentMethod("calendars","handleTraceDefaults");if(c(t,r,["x"],i),!!(o&&s&&l&&u)){var f=Math.min(o.length,s.length,l.length,u.length);return a&&(f=Math.min(f,OYt.minRowLength(a))),r._length=f,f}}});var IYe=ye((qxr,PYe)=>{"use strict";var BYt=Mr(),NYt=_$(),UYt=Pg(),VYt=J7();PYe.exports=function(t,r,n,i){function a(s,l){return BYt.coerce(t,r,VYt,s,l)}var o=NYt(t,r,a,i);if(!o){r.visible=!1;return}UYt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),a("line.dash"),LYe(t,r,a,"increasing"),LYe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("tickwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function LYe(e,t,r,n){r(n+".line.color"),r(n+".line.width",t.line.width),r(n+".line.dash",t.line.dash)}});var x$=ye((Oxr,DYe)=>{"use strict";var BA=Mr(),$7=BA._,Q7=Qa(),HYt=Rg(),rC=es().BADNUM;function GYt(e,t){var r=Q7.getFromId(e,t.xaxis),n=Q7.getFromId(e,t.yaxis),i=WYt(e,r,t),a=t._minDiff;t._minDiff=null;var o=t._origX;t._origX=null;var s=t._xcalc;t._xcalc=null;var l=RYe(e,t,o,s,n,jYt);return t._extremes[r._id]=Q7.findExtremes(r,s,{vpad:a/2}),l.length?(BA.extendFlat(l[0].t,{wHover:a/2,tickLen:i}),l):[{t:{empty:!0}}]}function jYt(e,t,r,n){return{o:e,h:t,l:r,c:n}}function RYe(e,t,r,n,i,a){for(var o=i.makeCalcdata(t,"open"),s=i.makeCalcdata(t,"high"),l=i.makeCalcdata(t,"low"),u=i.makeCalcdata(t,"close"),c=BA.isArrayOrTypedArray(t.text),f=BA.isArrayOrTypedArray(t.hovertext),h=!0,d=null,v=!!t.xperiodalignment,x=[],b=0;b<n.length;b++){var p=n[b],E=o[b],k=s[b],A=l[b],L=u[b];if(p!==rC&&E!==rC&&k!==rC&&A!==rC&&L!==rC){L===E?d!==null&&L!==d&&(h=L>d):h=L>E,d=L;var _=a(E,k,A,L);_.pos=p,_.yc=(E+L)/2,_.i=b,_.dir=h?"increasing":"decreasing",_.x=_.pos,_.y=[A,k],v&&(_.orig_p=r[b]),c&&(_.tx=t.text[b]),f&&(_.htx=t.hovertext[b]),x.push(_)}else x.push({pos:p,empty:!0})}return t._extremes[i._id]=Q7.findExtremes(i,BA.concat(l,s),{padded:!0}),x.length&&(x[0].t={labels:{open:$7(e,"open:")+" ",high:$7(e,"high:")+" ",low:$7(e,"low:")+" ",close:$7(e,"close:")+" "}}),x}function WYt(e,t,r){var n=r._minDiff;if(!n){var i=e._fullData,a=[];n=1/0;var o;for(o=0;o<i.length;o++){var s=i[o];if(s.type==="ohlc"&&s.visible===!0&&s.xaxis===t._id){a.push(s);var l=t.makeCalcdata(s,"x");s._origX=l;var u=HYt(r,t,"x",l).vals;s._xcalc=u;var c=BA.distinctVals(u).minDiff;c&&isFinite(c)&&(n=Math.min(n,c))}}for(n===1/0&&(n=1),o=0;o<a.length;o++)a[o]._minDiff=n}return n*r.tickwidth}DYe.exports={calc:GYt,calcCommon:RYe}});var qYe=ye((Bxr,FYe)=>{"use strict";var ZYt=xa(),zYe=Mr();FYe.exports=function(t,r,n,i){var a=r.yaxis,o=r.xaxis,s=!!o.rangebreaks;zYe.makeTraceGroups(i,n,"trace ohlc").each(function(l){var u=ZYt.select(this),c=l[0],f=c.t,h=c.trace;if(h.visible!==!0||f.empty){u.remove();return}var d=f.tickLen,v=u.selectAll("path").data(zYe.identity);v.enter().append("path"),v.exit().remove(),v.attr("d",function(x){if(x.empty)return"M0,0Z";var b=o.c2p(x.pos-d,!0),p=o.c2p(x.pos+d,!0),E=s?(b+p)/2:o.c2p(x.pos,!0),k=a.c2p(x.o,!0),A=a.c2p(x.h,!0),L=a.c2p(x.l,!0),_=a.c2p(x.c,!0);return"M"+b+","+k+"H"+E+"M"+E+","+A+"V"+L+"M"+p+","+_+"H"+E})})}});var BYe=ye((Nxr,OYe)=>{"use strict";var b$=xa(),XYt=ao(),YYt=va();OYe.exports=function(t,r,n){var i=n||b$.select(t).selectAll("g.ohlclayer").selectAll("g.trace");i.style("opacity",function(a){return a[0].trace.opacity}),i.each(function(a){var o=a[0].trace;b$.select(this).selectAll("path").each(function(s){if(!s.empty){var l=o[s.dir].line;b$.select(this).style("fill","none").call(YYt.stroke,l.color).call(XYt.dashLine,l.dash,l.width).style("opacity",o.selectedpoints&&!s.selected?.3:1)}})})}});var T$=ye((Uxr,GYe)=>{"use strict";var w$=Qa(),KYt=Mr(),e9=Nc(),JYt=va(),$Yt=Mr().fillText,NYe=HT(),QYt={increasing:NYe.INCREASING.SYMBOL,decreasing:NYe.DECREASING.SYMBOL};function eKt(e,t,r,n){var i=e.cd,a=i[0].trace;return a.hoverlabel.split?VYe(e,t,r,n):HYe(e,t,r,n)}function UYe(e,t,r,n){var i=e.cd,a=e.xa,o=i[0].trace,s=i[0].t,l=o.type,u=l==="ohlc"?"l":"min",c=l==="ohlc"?"h":"max",f,h,d=s.bPos||0,v=function(P){return P.pos+d-t},x=s.bdPos||s.tickLen,b=s.wHover,p=Math.min(1,x/Math.abs(a.r2c(a.range[1])-a.r2c(a.range[0])));f=e.maxHoverDistance-p,h=e.maxSpikeDistance-p;function E(P){var T=v(P);return e9.inbox(T-b,T+b,f)}function k(P){var T=P[u],F=P[c];return T===F||e9.inbox(T-r,F-r,f)}function A(P){return(E(P)+k(P))/2}var L=e9.getDistanceFunction(n,E,k,A);if(e9.getClosest(i,L,e),e.index===!1)return null;var _=i[e.index];if(_.empty)return null;var C=_.dir,M=o[C],g=M.line.color;return JYt.opacity(g)&&M.line.width?e.color=g:e.color=M.fillcolor,e.x0=a.c2p(_.pos+d-x,!0),e.x1=a.c2p(_.pos+d+x,!0),e.xLabelVal=_.orig_p!==void 0?_.orig_p:_.pos,e.spikeDistance=A(_)*h/f,e.xSpike=a.c2p(_.pos,!0),e}function VYe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=[],u=UYe(e,t,r,n);if(!u)return[];var c=u.index,f=i[c],h=f.hi||o.hoverinfo,d=h.split("+"),v=h==="all",x=v||d.indexOf("y")!==-1;if(!x)return[];for(var b=["high","open","close","low"],p={},E=0;E<b.length;E++){var k=b[E],A=o[k][u.index],L=a.c2p(A,!0),_;A in p?(_=p[A],_.yLabel+="<br>"+s.labels[k]+w$.hoverLabelText(a,A,o.yhoverformat)):(_=KYt.extendFlat({},u),_.y0=_.y1=L,_.yLabelVal=A,_.yLabel=s.labels[k]+w$.hoverLabelText(a,A,o.yhoverformat),_.name="",l.push(_),p[A]=_)}return l}function HYe(e,t,r,n){var i=e.cd,a=e.ya,o=i[0].trace,s=i[0].t,l=UYe(e,t,r,n);if(!l)return[];var u=l.index,c=i[u],f=l.index=c.i,h=c.dir;function d(A){return s.labels[A]+w$.hoverLabelText(a,o[A][f],o.yhoverformat)}var v=c.hi||o.hoverinfo,x=v.split("+"),b=v==="all",p=b||x.indexOf("y")!==-1,E=b||x.indexOf("text")!==-1,k=p?[d("open"),d("high"),d("low"),d("close")+" "+QYt[h]]:[];return E&&$Yt(c,o,k),l.extraText=k.join("<br>"),l.y0=l.y1=a.c2p(c.yc,!0),[l]}GYe.exports={hoverPoints:eKt,hoverSplit:VYe,hoverOnPoints:HYe}});var A$=ye((Vxr,jYe)=>{"use strict";jYe.exports=function(t,r){var n=t.cd,i=t.xaxis,a=t.yaxis,o=[],s,l=n[0].t.bPos||0;if(r===!1)for(s=0;s<n.length;s++)n[s].selected=0;else for(s=0;s<n.length;s++){var u=n[s];r.contains([i.c2p(u.pos+l),a.c2p(u.yc)],null,u.i,t)?(o.push({pointNumber:u.i,x:i.c2d(u.pos),y:a.c2d(u.yc)}),u.selected=1):u.selected=0}return o}});var ZYe=ye((Hxr,WYe)=>{"use strict";WYe.exports={moduleType:"trace",name:"ohlc",basePlotModule:Jf(),categories:["cartesian","svg","showLegend"],meta:{},attributes:J7(),supplyDefaults:IYe(),calc:x$().calc,plot:qYe(),style:BYe(),hoverPoints:T$().hoverPoints,selectPoints:A$()}});var YYe=ye((Gxr,XYe)=>{"use strict";XYe.exports=ZYe()});var M$=ye((jxr,$Ye)=>{"use strict";var S$=Mr().extendFlat,KYe=Oc().axisHoverFormat,c0=J7(),NA=v4();function JYe(e){return{line:{color:S$({},NA.line.color,{dflt:e}),width:NA.line.width,editType:"style"},fillcolor:NA.fillcolor,editType:"style"}}$Ye.exports={xperiod:c0.xperiod,xperiod0:c0.xperiod0,xperiodalignment:c0.xperiodalignment,xhoverformat:KYe("x"),yhoverformat:KYe("y"),x:c0.x,open:c0.open,high:c0.high,low:c0.low,close:c0.close,line:{width:S$({},NA.line.width,{}),editType:"style"},increasing:JYe(c0.increasing.line.color.dflt),decreasing:JYe(c0.decreasing.line.color.dflt),text:c0.text,hovertext:c0.hovertext,whiskerwidth:S$({},NA.whiskerwidth,{dflt:0}),hoverlabel:c0.hoverlabel,zorder:NA.zorder}});var tKe=ye((Wxr,eKe)=>{"use strict";var tKt=Mr(),rKt=va(),iKt=_$(),nKt=Pg(),aKt=M$();eKe.exports=function(t,r,n,i){function a(s,l){return tKt.coerce(t,r,aKt,s,l)}var o=iKt(t,r,a,i);if(!o){r.visible=!1;return}nKt(t,r,i,a,{x:!0}),a("xhoverformat"),a("yhoverformat"),a("line.width"),QYe(t,r,a,"increasing"),QYe(t,r,a,"decreasing"),a("text"),a("hovertext"),a("whiskerwidth"),i._requestRangeslider[r.xaxis]=!0,a("zorder")};function QYe(e,t,r,n){var i=r(n+".line.color");r(n+".line.width",t.line.width),r(n+".fillcolor",rKt.addOpacity(i,.5))}});var aKe=ye((Zxr,nKe)=>{"use strict";var rKe=Mr(),iKe=Qa(),oKt=Rg(),sKt=x$().calcCommon;nKe.exports=function(e,t){var r=e._fullLayout,n=iKe.getFromId(e,t.xaxis),i=iKe.getFromId(e,t.yaxis),a=n.makeCalcdata(t,"x"),o=oKt(t,n,"x",a).vals,s=sKt(e,t,a,o,i,lKt);return s.length?(rKe.extendFlat(s[0].t,{num:r._numBoxes,dPos:rKe.distinctVals(o).minDiff/2,posLetter:"x",valLetter:"y"}),r._numBoxes++,s):[{t:{empty:!0}}]};function lKt(e,t,r,n){return{min:r,q1:Math.min(e,n),med:n,q3:Math.max(e,n),max:t}}});var sKe=ye((Xxr,oKe)=>{"use strict";oKe.exports={moduleType:"trace",name:"candlestick",basePlotModule:Jf(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:M$(),layoutAttributes:p4(),supplyLayoutDefaults:VI().supplyLayoutDefaults,crossTraceCalc:GI().crossTraceCalc,supplyDefaults:tKe(),calc:aKe(),plot:jI().plot,layerName:"boxlayer",style:WI().style,hoverPoints:T$().hoverPoints,selectPoints:A$()}});var uKe=ye((Yxr,lKe)=>{"use strict";lKe.exports=sKe()});var k$=ye((Kxr,cKe)=>{"use strict";var r9=Mr(),uKt=ym(),t9=r9.deg2rad,E$=r9.rad2deg;cKe.exports=function(t,r,n){switch(uKt(t,n),t._id){case"x":case"radialaxis":cKt(t,r);break;case"angularaxis":dKt(t,r);break}};function cKt(e,t){var r=t._subplot;e.setGeometry=function(){var n=e._rl[0],i=e._rl[1],a=r.innerRadius,o=(r.radius-a)/(i-n),s=a/o,l=n>i?function(u){return u<=0}:function(u){return u>=0};e.c2g=function(u){var c=e.c2l(u)-n;return(l(c)?c:0)+s},e.g2c=function(u){return e.l2c(u+n-s)},e.g2p=function(u){return u*o},e.c2p=function(u){return e.g2p(e.c2g(u))}}}function fKt(e,t){return t==="degrees"?t9(e):e}function hKt(e,t){return t==="degrees"?E$(e):e}function dKt(e,t){var r=e.type;if(r==="linear"){var n=e.d2c,i=e.c2d;e.d2c=function(a,o){return fKt(n(a),o)},e.c2d=function(a,o){return i(hKt(a,o))}}e.makeCalcdata=function(a,o){var s=a[o],l=a._length,u,c,f=function(b){return e.d2c(b,a.thetaunit)};if(s)for(u=new Array(l),c=0;c<l;c++)u[c]=f(s[c]);else{var h=o+"0",d="d"+o,v=h in a?f(a[h]):0,x=a[d]?f(a[d]):(e.period||2*Math.PI)/l;for(u=new Array(l),c=0;c<l;c++)u[c]=v+c*x}return u},e.setGeometry=function(){var a=t.sector,o=a.map(t9),s={clockwise:-1,counterclockwise:1}[e.direction],l=t9(e.rotation),u=function(p){return s*p+l},c=function(p){return(p-l)/s},f,h,d,v;switch(r){case"linear":h=f=r9.identity,v=t9,d=E$,e.range=r9.isFullCircle(o)?[a[0],a[0]+360]:o.map(c).map(E$);break;case"category":var x=e._categories.length,b=e.period?Math.max(e.period,x):x;b===0&&(b=1),h=v=function(p){return p*2*Math.PI/b},f=d=function(p){return p*b/Math.PI/2},e.range=[0,b];break}e.c2g=function(p){return u(h(p))},e.g2c=function(p){return f(c(p))},e.t2g=function(p){return u(v(p))},e.g2t=function(p){return d(c(p))}}}});var i9=ye((Jxr,fKe)=>{"use strict";fKe.exports={attr:"subplot",name:"polar",axisNames:["angularaxis","radialaxis"],axisName2dataArray:{angularaxis:"theta",radialaxis:"r"},layerNames:["draglayer","plotbg","backplot","angular-grid","radial-grid","frontplot","angular-line","radial-line","angular-axis","radial-axis"],radialDragBoxSize:50,angularDragBoxSize:30,cornerLen:25,cornerHalfWidth:2,MINDRAG:8,MINZOOM:20,OFFEDGE:20}});var a9=ye(($xr,gKe)=>{"use strict";var dw=Mr(),hKe=wM().tester,C$=dw.findIndexOfMin,vKe=dw.isAngleInsideSector,vKt=dw.angleDelta,dKe=dw.angleDist;function pKt(e,t,r,n,i){if(!vKe(t,n))return!1;var a,o;r[0]<r[1]?(a=r[0],o=r[1]):(a=r[1],o=r[0]);var s=hKe(UA(a,n[0],n[1],i)),l=hKe(UA(o,n[0],n[1],i)),u=[e*Math.cos(t),e*Math.sin(t)];return l.contains(u)&&!s.contains(u)}function pKe(e,t,r,n){var i,a,o=n[0],s=n[1],l=n9(Math.sin(t)-Math.sin(e)),u=n9(Math.cos(t)-Math.cos(e)),c=Math.tan(r),f=n9(1/c),h=l/u,d=s-h*o;return f?l&&u?(i=d/(c-h),a=c*i):u?(i=s*f,a=s):(i=o,a=o*c):l&&u?(i=0,a=d):u?(i=0,a=s):i=a=NaN,[i,a]}function gKt(e,t,r,n){var i=-t*r,a=t*t+1,o=2*(t*i-r),s=i*i+r*r-e*e,l=Math.sqrt(o*o-4*a*s),u=(-o+l)/(2*a),c=(-o-l)/(2*a);return[[u,t*u+i+n],[c,t*c+i+n]]}function mKt(e,t){var r=t.length,n=new Array(r+1),i;for(i=0;i<r;i++){var a=t[i];n[i]=[e*Math.cos(a),e*Math.sin(a)]}return n[i]=n[0].slice(),n}function yKt(e,t,r,n){var i=n.length,a=[],o,s;function l(p){return[e*Math.cos(p),e*Math.sin(p)]}function u(p,E,k){return pKe(p,E,k,l(p))}function c(p){return dw.mod(p,i)}function f(p){return vKe(p,[t,r])}var h=C$(n,function(p){return f(p)?dKe(p,t):1/0}),d=u(n[h],n[c(h-1)],t);for(a.push(d),o=h,s=0;s<i;o++,s++){var v=n[c(o)];if(!f(v))break;a.push(l(v))}var x=C$(n,function(p){return f(p)?dKe(p,r):1/0}),b=u(n[x],n[c(x+1)],r);return a.push(b),a.push([0,0]),a.push(a[0].slice()),a}function UA(e,t,r,n){return dw.isFullCircle([t,r])?mKt(e,n):yKt(e,t,r,n)}function _Kt(e,t,r,n){for(var i=1/0,a=1/0,o=UA(e,t,r,n),s=0;s<o.length;s++){var l=o[s];i=Math.min(i,l[0]),a=Math.min(a,-l[1])}return[i,a]}function xKt(e,t){var r=function(a){var o=vKt(a,e);return o>0?o:1/0},n=C$(t,r),i=dw.mod(n+1,t.length);return[t[n],t[i]]}function n9(e){return Math.abs(e)>1e-10?e:0}function L$(e,t,r){t=t||0,r=r||0;for(var n=e.length,i=new Array(n),a=0;a<n;a++){var o=e[a];i[a]=[t+o[0],r-o[1]]}return i}function bKt(e,t,r,n,i,a){var o=UA(e,t,r,n);return"M"+L$(o,i,a).join("L")}function wKt(e,t,r,n,i,a,o){var s,l;e<t?(s=e,l=t):(s=t,l=e);var u=L$(UA(s,r,n,i),a,o),c=L$(UA(l,r,n,i),a,o);return"M"+c.reverse().join("L")+"M"+u.join("L")}gKe.exports={isPtInsidePolygon:pKt,findPolygonOffset:_Kt,findEnclosingVertexAngles:xKt,findIntersectionXY:pKe,findXYatLength:gKt,clampTiny:n9,pathPolygon:bKt,pathPolygonAnnulus:wKt}});var P$=ye((Qxr,_Ke)=>{"use strict";function mKe(e){return e<0?-1:e>0?1:0}function VA(e){var t=e[0],r=e[1];if(!isFinite(t)||!isFinite(r))return[1,0];var n=(t+1)*(t+1)+r*r;return[(t*t+r*r-1)/n,2*r/n]}function HA(e,t){var r=t[0],n=t[1];return[r*e.radius+e.cx,-n*e.radius+e.cy]}function yKe(e,t){return t*e.radius}function TKt(e,t,r,n){var i=HA(e,VA([r,t])),a=i[0],o=i[1],s=HA(e,VA([n,t])),l=s[0],u=s[1];if(t===0)return["M"+a+","+o,"L"+l+","+u].join(" ");var c=yKe(e,1/Math.abs(t));return["M"+a+","+o,"A"+c+","+c+" 0 0,"+(t<0?1:0)+" "+l+","+u].join(" ")}function AKt(e,t,r,n){var i=yKe(e,1/(t+1)),a=HA(e,VA([t,r])),o=a[0],s=a[1],l=HA(e,VA([t,n])),u=l[0],c=l[1];if(mKe(r)!==mKe(n)){var f=HA(e,VA([t,0])),h=f[0],d=f[1];return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(0<r?0:1)+" "+h+","+d,"A"+i+","+i+" 0 0,"+(n<0?0:1)+u+","+c].join(" ")}return["M"+o+","+s,"A"+i+","+i+" 0 0,"+(n<r?0:1)+" "+u+","+c].join(" ")}_Ke.exports={smith:VA,reactanceArc:TKt,resistanceArc:AKt,smithTransform:HA}});var D$=ye((ebr,kKe)=>{"use strict";var vw=xa(),SKt=id(),gw=ba(),cc=Mr(),ry=cc.strRotate,dd=cc.strTranslate,I$=va(),iC=ao(),MKt=Xu(),dp=Qa(),EKt=ym(),kKt=k$(),CKt=wg().doAutoRange,y1=DN(),l9=gv(),xKe=Nc(),LKt=Mb(),PKt=wf().prepSelect,IKt=wf().selectOnClick,R$=wf().clearOutline,bKe=Tg(),wKe=lM(),TKe=gM().redrawReglTraces,RKt=Nh().MID_SHIFT,Lx=i9(),_1=a9(),u9=P$(),o9=u9.smith,DKt=u9.reactanceArc,zKt=u9.resistanceArc,s9=u9.smithTransform,FKt=cc._,AKe=cc.mod,Px=cc.deg2rad,pw=cc.rad2deg;function SKe(e,t,r){this.isSmith=r||!1,this.id=t,this.gd=e,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var n=e._fullLayout,i="clip"+n._uid+t;this.clipIds.forTraces=i+"-for-traces",this.clipPaths.forTraces=n._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=n["_"+(r?"smith":"polar")+"layer"].append("g").attr("class",t),this.getHole=function(a){return this.isSmith?0:a.hole},this.getSector=function(a){return this.isSmith?[0,360]:a.sector},this.getRadial=function(a){return this.isSmith?a.realaxis:a.radialaxis},this.getAngular=function(a){return this.isSmith?a.imaginaryaxis:a.angularaxis},r||(this.radialTickLayout=null,this.angularTickLayout=null)}var Fd=SKe.prototype;kKe.exports=function(t,r,n){return new SKe(t,r,n)};Fd.plot=function(e,t){for(var r=this,n=t[r.id],i=!1,a=0;a<e.length;a++){var o=e[a][0].trace;if(o.cliponaxis===!1){i=!0;break}}r._hasClipOnAxisFalse=i,r.updateLayers(t,n),r.updateLayout(t,n),MKt.generalUpdatePerTraceModule(r.gd,r,e,n),r.updateFx(t,n),r.isSmith&&(delete n.realaxis.range,delete n.imaginaryaxis.range)};Fd.updateLayers=function(e,t){var r=this,n=r.isSmith,i=r.layers,a=r.getRadial(t),o=r.getAngular(t),s=Lx.layerNames,l=s.indexOf("frontplot"),u=s.slice(0,l),c=o.layer==="below traces",f=a.layer==="below traces";c&&u.push("angular-line"),f&&u.push("radial-line"),c&&u.push("angular-axis"),f&&u.push("radial-axis"),u.push("frontplot"),c||u.push("angular-line"),f||u.push("radial-line"),c||u.push("angular-axis"),f||u.push("radial-axis");var h=(n?"smith":"polar")+"sublayer",d=r.framework.selectAll("."+h).data(u,String);d.enter().append("g").attr("class",function(v){return h+" "+v}).each(function(v){var x=i[v]=vw.select(this);switch(v){case"frontplot":n||x.append("g").classed("barlayer",!0),x.append("g").classed("scatterlayer",!0);break;case"backplot":x.append("g").classed("maplayer",!0);break;case"plotbg":i.bg=x.append("path");break;case"radial-grid":x.style("fill","none");break;case"angular-grid":x.style("fill","none");break;case"radial-line":x.append("line").style("fill","none");break;case"angular-line":x.append("path").style("fill","none");break}}),d.order()};Fd.updateLayout=function(e,t){var r=this,n=r.layers,i=e._size,a=r.getRadial(t),o=r.getAngular(t),s=t.domain.x,l=t.domain.y;r.xOffset=i.l+i.w*s[0],r.yOffset=i.t+i.h*(1-l[1]);var u=r.xLength=i.w*(s[1]-s[0]),c=r.yLength=i.h*(l[1]-l[0]),f=r.getSector(t);r.sectorInRad=f.map(Px);var h=r.sectorBBox=qKt(f),d=h[2]-h[0],v=h[3]-h[1],x=c/u,b=Math.abs(v/d),p,E,k,A,L;x>b?(p=u,E=u*b,L=(c-E)/i.h/2,k=[s[0],s[1]],A=[l[0]+L,l[1]-L]):(p=c/b,E=c,L=(u-p)/i.w/2,k=[s[0]+L,s[1]-L],A=[l[0],l[1]]),r.xLength2=p,r.yLength2=E,r.xDomain2=k,r.yDomain2=A;var _=r.xOffset2=i.l+i.w*k[0],C=r.yOffset2=i.t+i.h*(1-A[1]),M=r.radius=p/d,g=r.innerRadius=r.getHole(t)*M,P=r.cx=_-M*h[0],T=r.cy=C+M*h[3],F=r.cxx=P-_,q=r.cyy=T-C,V=a.side,H;V==="counterclockwise"?(H=V,V="top"):V==="clockwise"&&(H=V,V="bottom"),r.radialAxis=r.mockAxis(e,t,a,{_id:"x",side:V,_trueSide:H,domain:[g/i.w,M/i.w]}),r.angularAxis=r.mockAxis(e,t,o,{side:"right",domain:[0,Math.PI],autorange:!1}),r.doAutoRange(e,t),r.updateAngularAxis(e,t),r.updateRadialAxis(e,t),r.updateRadialAxisTitle(e,t),r.xaxis=r.mockCartesianAxis(e,t,{_id:"x",domain:k}),r.yaxis=r.mockCartesianAxis(e,t,{_id:"y",domain:A});var X=r.pathSubplot();r.clipPaths.forTraces.select("path").attr("d",X).attr("transform",dd(F,q)),n.frontplot.attr("transform",dd(_,C)).call(iC.setClipUrl,r._hasClipOnAxisFalse?null:r.clipIds.forTraces,r.gd),n.bg.attr("d",X).attr("transform",dd(P,T)).call(I$.fill,t.bgcolor)};Fd.mockAxis=function(e,t,r,n){var i=cc.extendFlat({},r,n);return kKt(i,t,e),i};Fd.mockCartesianAxis=function(e,t,r){var n=this,i=n.isSmith,a=r._id,o=cc.extendFlat({type:"linear"},r);EKt(o,e);var s={x:[0,2],y:[1,3]};return o.setRange=function(){var l=n.sectorBBox,u=s[a],c=n.radialAxis._rl,f=(c[1]-c[0])/(1-n.getHole(t));o.range=[l[u[0]]*f,l[u[1]]*f]},o.isPtWithinRange=a==="x"&&!i?function(l){return n.isPtInside(l)}:function(){return!0},o.setRange(),o.setScale(),o};Fd.doAutoRange=function(e,t){var r=this,n=r.gd,i=r.radialAxis,a=r.getRadial(t);CKt(n,i);var o=i.range;if(a.range=o.slice(),a._input.range=o.slice(),i._rl=[i.r2l(o[0],null,"gregorian"),i.r2l(o[1],null,"gregorian")],i.minallowed!==void 0){var s=i.r2l(i.minallowed);i._rl[0]>i._rl[1]?i._rl[1]=Math.max(i._rl[1],s):i._rl[0]=Math.max(i._rl[0],s)}if(i.maxallowed!==void 0){var l=i.r2l(i.maxallowed);i._rl[0]<i._rl[1]?i._rl[1]=Math.min(i._rl[1],l):i._rl[0]=Math.min(i._rl[0],l)}};Fd.updateRadialAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,l=r.cy,u=r.getRadial(t),c=AKe(r.getSector(t)[0],360),f=r.radialAxis,h=o<a,d=r.isSmith;d||(r.fillViewInitialKey("radialaxis.angle",u.angle),r.fillViewInitialKey("radialaxis.range",f.range.slice()),f.setGeometry()),f.tickangle==="auto"&&c>90&&c<=270&&(f.tickangle=180);var v=d?function(M){var g=s9(r,o9([M.x,0]));return dd(g[0]-s,g[1]-l)}:function(M){return dd(f.l2p(M.x)+o,0)},x=d?function(M){return zKt(r,M.x,-1/0,1/0)}:function(M){return r.pathArc(f.r2p(M.x)+o)},b=MKe(u);if(r.radialTickLayout!==b&&(i["radial-axis"].selectAll(".xtick").remove(),r.radialTickLayout=b),h){f.setScale();var p=0,E=d?(f.tickvals||[]).filter(function(M){return M>=0}).map(function(M){return dp.tickText(f,M,!0,!1)}):dp.calcTicks(f),k=d?E:dp.clipEnds(f,E),A=dp.getTickSigns(f)[2];d&&((f.ticks==="top"&&f.side==="bottom"||f.ticks==="bottom"&&f.side==="top")&&(A=-A),f.ticks==="top"&&f.side==="top"&&(p=-f.ticklen),f.ticks==="bottom"&&f.side==="bottom"&&(p=f.ticklen)),dp.drawTicks(n,f,{vals:E,layer:i["radial-axis"],path:dp.makeTickPath(f,0,A),transFn:v,crisp:!1}),dp.drawGrid(n,f,{vals:k,layer:i["radial-grid"],path:x,transFn:cc.noop,crisp:!1}),dp.drawLabels(n,f,{vals:E,layer:i["radial-axis"],transFn:v,labelFns:dp.makeLabelFns(f,p)})}var L=r.radialAxisAngle=r.vangles?pw(EKe(Px(u.angle),r.vangles)):u.angle,_=dd(s,l),C=_+ry(-L);nC(i["radial-axis"],h&&(u.showticklabels||u.ticks),{transform:C}),nC(i["radial-grid"],h&&u.showgrid,{transform:d?"":_}),nC(i["radial-line"].select("line"),h&&u.showline,{x1:d?-a:o,y1:0,x2:a,y2:0,transform:C}).attr("stroke-width",u.linewidth).call(I$.stroke,u.linecolor)};Fd.updateRadialAxisTitle=function(e,t,r){if(!this.isSmith){var n=this,i=n.gd,a=n.radius,o=n.cx,s=n.cy,l=n.getRadial(t),u=n.id+"title",c=0;if(l.title){var f=iC.bBox(n.layers["radial-axis"].node()).height,h=l.title.font.size,d=l.side;c=d==="top"?h:d==="counterclockwise"?-(f+h*.4):f+h*.8}var v=r!==void 0?r:n.radialAxisAngle,x=Px(v),b=Math.cos(x),p=Math.sin(x),E=o+a/2*b+c*p,k=s-a/2*p+c*b;n.layers["radial-axis-title"]=LKt.draw(i,u,{propContainer:l,propName:n.id+".radialaxis.title",placeholder:FKt(i,"Click to enter radial axis title"),attributes:{x:E,y:k,"text-anchor":"middle"},transform:{rotate:-v}})}};Fd.updateAngularAxis=function(e,t){var r=this,n=r.gd,i=r.layers,a=r.radius,o=r.innerRadius,s=r.cx,l=r.cy,u=r.getAngular(t),c=r.angularAxis,f=r.isSmith;f||(r.fillViewInitialKey("angularaxis.rotation",u.rotation),c.setGeometry(),c.setScale());var h=f?function(g){var P=s9(r,o9([0,g.x]));return Math.atan2(P[0]-s,P[1]-l)-Math.PI/2}:function(g){return c.t2g(g.x)};c.type==="linear"&&c.thetaunit==="radians"&&(c.tick0=pw(c.tick0),c.dtick=pw(c.dtick));var d=function(g){return dd(s+a*Math.cos(g),l-a*Math.sin(g))},v=f?function(g){var P=s9(r,o9([0,g.x]));return dd(P[0],P[1])}:function(g){return d(h(g))},x=f?function(g){var P=s9(r,o9([0,g.x])),T=Math.atan2(P[0]-s,P[1]-l)-Math.PI/2;return dd(P[0],P[1])+ry(-pw(T))}:function(g){var P=h(g);return d(P)+ry(-pw(P))},b=f?function(g){return DKt(r,g.x,0,1/0)}:function(g){var P=h(g),T=Math.cos(P),F=Math.sin(P);return"M"+[s+o*T,l-o*F]+"L"+[s+a*T,l-a*F]},p=dp.makeLabelFns(c,0),E=p.labelStandoff,k={};k.xFn=function(g){var P=h(g);return Math.cos(P)*E},k.yFn=function(g){var P=h(g),T=Math.sin(P)>0?.2:1;return-Math.sin(P)*(E+g.fontSize*T)+Math.abs(Math.cos(P))*(g.fontSize*RKt)},k.anchorFn=function(g){var P=h(g),T=Math.cos(P);return Math.abs(T)<.1?"middle":T>0?"start":"end"},k.heightFn=function(g,P,T){var F=h(g);return-.5*(1+Math.sin(F))*T};var A=MKe(u);r.angularTickLayout!==A&&(i["angular-axis"].selectAll("."+c._id+"tick").remove(),r.angularTickLayout=A);var L=f?[1/0].concat(c.tickvals||[]).map(function(g){return dp.tickText(c,g,!0,!1)}):dp.calcTicks(c);f&&(L[0].text="\u221E",L[0].fontSize*=1.75);var _;if(t.gridshape==="linear"?(_=L.map(h),cc.angleDelta(_[0],_[1])<0&&(_=_.slice().reverse())):_=null,r.vangles=_,c.type==="category"&&(L=L.filter(function(g){return cc.isAngleInsideSector(h(g),r.sectorInRad)})),c.visible){var C=c.ticks==="inside"?-1:1,M=(c.linewidth||1)/2;dp.drawTicks(n,c,{vals:L,layer:i["angular-axis"],path:"M"+C*M+",0h"+C*c.ticklen,transFn:x,crisp:!1}),dp.drawGrid(n,c,{vals:L,layer:i["angular-grid"],path:b,transFn:cc.noop,crisp:!1}),dp.drawLabels(n,c,{vals:L,layer:i["angular-axis"],repositionOnUpdate:!0,transFn:v,labelFns:k})}nC(i["angular-line"].select("path"),u.showline,{d:r.pathSubplot(),transform:dd(s,l)}).attr("stroke-width",u.linewidth).call(I$.stroke,u.linecolor)};Fd.updateFx=function(e,t){if(!this.gd._context.staticPlot){var r=!this.isSmith;r&&(this.updateAngularDrag(e),this.updateRadialDrag(e,t,0),this.updateRadialDrag(e,t,1)),this.updateHoverAndMainDrag(e)}};Fd.updateHoverAndMainDrag=function(e){var t=this,r=t.isSmith,n=t.gd,i=t.layers,a=e._zoomlayer,o=Lx.MINZOOM,s=Lx.OFFEDGE,l=t.radius,u=t.innerRadius,c=t.cx,f=t.cy,h=t.cxx,d=t.cyy,v=t.sectorInRad,x=t.vangles,b=t.radialAxis,p=_1.clampTiny,E=_1.findXYatLength,k=_1.findEnclosingVertexAngles,A=Lx.cornerHalfWidth,L=Lx.cornerLen/2,_,C,M=y1.makeDragger(i,"path","maindrag",e.dragmode===!1?"none":"crosshair");vw.select(M).attr("d",t.pathSubplot()).attr("transform",dd(c,f)),M.onmousemove=function(ce){xKe.hover(n,ce,t.id),n._fullLayout._lasthover=M,n._fullLayout._hoversubplot=t.id},M.onmouseout=function(ce){n._dragging||l9.unhover(n,ce)};var g={element:M,gd:n,subplot:t.id,plotinfo:{id:t.id,xaxis:t.xaxis,yaxis:t.yaxis},xaxes:[t.xaxis],yaxes:[t.yaxis]},P,T,F,q,V,H,X,G,N;function W(ce,Ge){return Math.sqrt(ce*ce+Ge*Ge)}function re(ce,Ge){return W(ce-h,Ge-d)}function ae(ce,Ge){return Math.atan2(d-Ge,ce-h)}function _e(ce,Ge){return[ce*Math.cos(Ge),ce*Math.sin(-Ge)]}function Me(ce,Ge){if(ce===0)return t.pathSector(2*A);var nt=L/ce,ct=Ge-nt,qt=Ge+nt,rt=Math.max(0,Math.min(ce,l)),ot=rt-A,Rt=rt+A;return"M"+_e(ot,ct)+"A"+[ot,ot]+" 0,0,0 "+_e(ot,qt)+"L"+_e(Rt,qt)+"A"+[Rt,Rt]+" 0,0,1 "+_e(Rt,ct)+"Z"}function ke(ce,Ge,nt){if(ce===0)return t.pathSector(2*A);var ct=_e(ce,Ge),qt=_e(ce,nt),rt=p((ct[0]+qt[0])/2),ot=p((ct[1]+qt[1])/2),Rt,kt;if(rt&&ot){var Ct=ot/rt,Yt=-1/Ct,xr=E(A,Ct,rt,ot);Rt=E(L,Yt,xr[0][0],xr[0][1]),kt=E(L,Yt,xr[1][0],xr[1][1])}else{var er,Ke;ot?(er=L,Ke=A):(er=A,Ke=L),Rt=[[rt-er,ot-Ke],[rt+er,ot-Ke]],kt=[[rt-er,ot+Ke],[rt+er,ot+Ke]]}return"M"+Rt.join("L")+"L"+kt.reverse().join("L")+"Z"}function ge(){F=null,q=null,V=t.pathSubplot(),H=!1;var ce=n._fullLayout[t.id];X=SKt(ce.bgcolor).getLuminance(),G=y1.makeZoombox(a,X,c,f,V),G.attr("fill-rule","evenodd"),N=y1.makeCorners(a,c,f),R$(n)}function ie(ce,Ge){return Ge=Math.max(Math.min(Ge,l),u),ce<s?ce=0:l-ce<s?ce=l:Ge<s?Ge=0:l-Ge<s&&(Ge=l),Math.abs(Ge-ce)>o?(ce<Ge?(F=ce,q=Ge):(F=Ge,q=ce),!0):(F=null,q=null,!1)}function Te(ce,Ge){ce=ce||V,Ge=Ge||"M0,0Z",G.attr("d",ce),N.attr("d",Ge),y1.transitionZoombox(G,N,H,X),H=!0;var nt={};me(nt),n.emit("plotly_relayouting",nt)}function Ee(ce,Ge){ce=ce*_,Ge=Ge*C;var nt=P+ce,ct=T+Ge,qt=re(P,T),rt=Math.min(re(nt,ct),l),ot=ae(P,T),Rt,kt;ie(qt,rt)&&(Rt=V+t.pathSector(q),F&&(Rt+=t.pathSector(F)),kt=Me(F,ot)+Me(q,ot)),Te(Rt,kt)}function Ae(ce,Ge,nt,ct){var qt=_1.findIntersectionXY(nt,ct,nt,[ce-h,d-Ge]);return W(qt[0],qt[1])}function ze(ce,Ge){var nt=P+ce,ct=T+Ge,qt=ae(P,T),rt=ae(nt,ct),ot=k(qt,x),Rt=k(rt,x),kt=Ae(P,T,ot[0],ot[1]),Ct=Math.min(Ae(nt,ct,Rt[0],Rt[1]),l),Yt,xr;ie(kt,Ct)&&(Yt=V+t.pathSector(q),F&&(Yt+=t.pathSector(F)),xr=[ke(F,ot[0],ot[1]),ke(q,ot[0],ot[1])].join(" ")),Te(Yt,xr)}function Ce(){if(y1.removeZoombox(n),!(F===null||q===null)){var ce={};me(ce),y1.showDoubleClickNotifier(n),gw.call("_guiRelayout",n,ce)}}function me(ce){var Ge=b._rl,nt=(Ge[1]-Ge[0])/(1-u/l)/l,ct=[Ge[0]+(F-u)*nt,Ge[0]+(q-u)*nt];ce[t.id+".radialaxis.range"]=ct}function Re(ce,Ge){var nt=n._fullLayout.clickmode;if(y1.removeZoombox(n),ce===2){var ct={};for(var qt in t.viewInitial)ct[t.id+"."+qt]=t.viewInitial[qt];n.emit("plotly_doubleclick",null),gw.call("_guiRelayout",n,ct)}nt.indexOf("select")>-1&&ce===1&&IKt(Ge,n,[t.xaxis],[t.yaxis],t.id,g),nt.indexOf("event")>-1&&xKe.click(n,Ge,t.id)}g.prepFn=function(ce,Ge,nt){var ct=n._fullLayout.dragmode,qt=M.getBoundingClientRect();n._fullLayout._calcInverseTransform(n);var rt=n._fullLayout._invTransform;_=n._fullLayout._invScaleX,C=n._fullLayout._invScaleY;var ot=cc.apply3DTransform(rt)(Ge-qt.left,nt-qt.top);if(P=ot[0],T=ot[1],x){var Rt=_1.findPolygonOffset(l,v[0],v[1],x);P+=h+Rt[0],T+=d+Rt[1]}switch(ct){case"zoom":g.clickFn=Re,r||(x?g.moveFn=ze:g.moveFn=Ee,g.doneFn=Ce,ge(ce,Ge,nt));break;case"select":case"lasso":PKt(ce,Ge,nt,g,ct);break}},l9.init(g)};Fd.updateRadialDrag=function(e,t,r){var n=this,i=n.gd,a=n.layers,o=n.radius,s=n.innerRadius,l=n.cx,u=n.cy,c=n.radialAxis,f=Lx.radialDragBoxSize,h=f/2;if(!c.visible)return;var d=Px(n.radialAxisAngle),v=c._rl,x=v[0],b=v[1],p=v[r],E=.75*(v[1]-v[0])/(1-n.getHole(t))/o,k,A,L;r?(k=l+(o+h)*Math.cos(d),A=u-(o+h)*Math.sin(d),L="radialdrag"):(k=l+(s-h)*Math.cos(d),A=u-(s-h)*Math.sin(d),L="radialdrag-inner");var _=y1.makeRectDragger(a,L,"crosshair",-h,-h,f,f),C={element:_,gd:i};e.dragmode===!1&&(C.dragmode=!1),nC(vw.select(_),c.visible&&s<o,{transform:dd(k,A)});var M,g,P;function T(X,G){if(M)M(X,G);else{var N=[X,-G],W=[Math.cos(d),Math.sin(d)],re=Math.abs(cc.dot(N,W)/Math.sqrt(cc.dot(N,N)));isNaN(re)||(M=re<.5?V:H)}var ae={};F(ae),i.emit("plotly_relayouting",ae)}function F(X){g!==null?X[n.id+".radialaxis.angle"]=g:P!==null&&(X[n.id+".radialaxis.range["+r+"]"]=P)}function q(){g!==null?gw.call("_guiRelayout",i,n.id+".radialaxis.angle",g):P!==null&&gw.call("_guiRelayout",i,n.id+".radialaxis.range["+r+"]",P)}function V(X,G){if(r!==0){var N=k+X,W=A+G;g=Math.atan2(u-W,N-l),n.vangles&&(g=EKe(g,n.vangles)),g=pw(g);var re=dd(l,u)+ry(-g);a["radial-axis"].attr("transform",re),a["radial-line"].select("line").attr("transform",re);var ae=n.gd._fullLayout,_e=ae[n.id];n.updateRadialAxisTitle(ae,_e,g)}}function H(X,G){var N=cc.dot([X,-G],[Math.cos(d),Math.sin(d)]);if(P=p-E*N,E>0!=(r?P>x:P<b)){P=null;return}var W=i._fullLayout,re=W[n.id];c.range[r]=P,c._rl[r]=P,n.updateRadialAxis(W,re),n.xaxis.setRange(),n.xaxis.setScale(),n.yaxis.setRange(),n.yaxis.setScale();var ae=!1;for(var _e in n.traceHash){var Me=n.traceHash[_e],ke=cc.filterVisible(Me),ge=Me[0][0].trace._module;ge.plot(i,n,ke,re),gw.traceIs(_e,"gl")&&ke.length&&(ae=!0)}ae&&(wKe(i),TKe(i))}C.prepFn=function(){M=null,g=null,P=null,C.moveFn=T,C.doneFn=q,R$(i)},C.clampFn=function(X,G){return Math.sqrt(X*X+G*G)<Lx.MINDRAG&&(X=0,G=0),[X,G]},l9.init(C)};Fd.updateAngularDrag=function(e){var t=this,r=t.gd,n=t.layers,i=t.radius,a=t.angularAxis,o=t.cx,s=t.cy,l=t.cxx,u=t.cyy,c=Lx.angularDragBoxSize,f=y1.makeDragger(n,"path","angulardrag",e.dragmode===!1?"none":"move"),h={element:f,gd:r};e.dragmode===!1?h.dragmode=!1:vw.select(f).attr("d",t.pathAnnulus(i,i+c)).attr("transform",dd(o,s)).call(bKe,"move");function d(P,T){return Math.atan2(u+c-T,P-l-c)}var v=n.frontplot.select(".scatterlayer").selectAll(".trace"),x=v.selectAll(".point"),b=v.selectAll(".textpoint"),p,E,k,A,L,_;function C(P,T){var F=t.gd._fullLayout,q=F[t.id],V=p+P*e._invScaleX,H=E+T*e._invScaleY,X=d(V,H),G=pw(X-_);if(A=k+G,n.frontplot.attr("transform",dd(t.xOffset2,t.yOffset2)+ry([-G,l,u])),t.vangles){L=t.radialAxisAngle+G;var N=dd(o,s)+ry(-G),W=dd(o,s)+ry(-L);n.bg.attr("transform",N),n["radial-grid"].attr("transform",N),n["radial-axis"].attr("transform",W),n["radial-line"].select("line").attr("transform",W),t.updateRadialAxisTitle(F,q,L)}else t.clipPaths.forTraces.select("path").attr("transform",dd(l,u)+ry(G));x.each(function(){var ie=vw.select(this),Te=iC.getTranslate(ie);ie.attr("transform",dd(Te.x,Te.y)+ry([G]))}),b.each(function(){var ie=vw.select(this),Te=ie.select("text"),Ee=iC.getTranslate(ie);ie.attr("transform",ry([G,Te.attr("x"),Te.attr("y")])+dd(Ee.x,Ee.y))}),a.rotation=cc.modHalf(A,360),t.updateAngularAxis(F,q),t._hasClipOnAxisFalse&&!cc.isFullCircle(t.sectorInRad)&&v.call(iC.hideOutsideRangePoints,t);var re=!1;for(var ae in t.traceHash)if(gw.traceIs(ae,"gl")){var _e=t.traceHash[ae],Me=cc.filterVisible(_e),ke=_e[0][0].trace._module;ke.plot(r,t,Me,q),Me.length&&(re=!0)}re&&(wKe(r),TKe(r));var ge={};M(ge),r.emit("plotly_relayouting",ge)}function M(P){P[t.id+".angularaxis.rotation"]=A,t.vangles&&(P[t.id+".radialaxis.angle"]=L)}function g(){b.select("text").attr("transform",null);var P={};M(P),gw.call("_guiRelayout",r,P)}h.prepFn=function(P,T,F){var q=e[t.id];k=q.angularaxis.rotation;var V=f.getBoundingClientRect();p=T-V.left,E=F-V.top,r._fullLayout._calcInverseTransform(r);var H=cc.apply3DTransform(e._invTransform)(p,E);p=H[0],E=H[1],_=d(p,E),h.moveFn=C,h.doneFn=g,R$(r)},t.vangles&&!cc.isFullCircle(t.sectorInRad)&&(h.prepFn=cc.noop,bKe(vw.select(f),null)),l9.init(h)};Fd.isPtInside=function(e){if(this.isSmith)return!0;var t=this.sectorInRad,r=this.vangles,n=this.angularAxis.c2g(e.theta),i=this.radialAxis,a=i.c2l(e.r),o=i._rl,s=r?_1.isPtInsidePolygon:cc.isPtInsideSector;return s(a,n,o,t,r)};Fd.pathArc=function(e){var t=this.sectorInRad,r=this.vangles,n=r?_1.pathPolygon:cc.pathArc;return n(e,t[0],t[1],r)};Fd.pathSector=function(e){var t=this.sectorInRad,r=this.vangles,n=r?_1.pathPolygon:cc.pathSector;return n(e,t[0],t[1],r)};Fd.pathAnnulus=function(e,t){var r=this.sectorInRad,n=this.vangles,i=n?_1.pathPolygonAnnulus:cc.pathAnnulus;return i(e,t,r[0],r[1],n)};Fd.pathSubplot=function(){var e=this.innerRadius,t=this.radius;return e?this.pathAnnulus(e,t):this.pathSector(t)};Fd.fillViewInitialKey=function(e,t){e in this.viewInitial||(this.viewInitial[e]=t)};function MKe(e){var t=e.ticks+String(e.ticklen)+String(e.showticklabels);return"side"in e&&(t+=e.side),t}function qKt(e){var t=e[0],r=e[1],n=r-t,i=AKe(t,360),a=i+n,o=Math.cos(Px(i)),s=Math.sin(Px(i)),l=Math.cos(Px(a)),u=Math.sin(Px(a)),c,f,h,d;return i<=90&&a>=90||i>90&&a>=450?d=1:s<=0&&u<=0?d=0:d=Math.max(s,u),i<=180&&a>=180||i>180&&a>=540?c=-1:o>=0&&l>=0?c=0:c=Math.min(o,l),i<=270&&a>=270||i>270&&a>=630?f=-1:s>=0&&u>=0?f=0:f=Math.min(s,u),a>=360?h=1:o<=0&&l<=0?h=0:h=Math.max(o,l),[c,f,h,d]}function EKe(e,t){var r=function(i){return cc.angleDist(e,i)},n=cc.findIndexOfMin(t,r);return t[n]}function nC(e,t,r){return t?(e.attr("display",null),e.attr(r)):e&&e.attr("display","none"),e}});var z$=ye((tbr,DKe)=>{"use strict";var OKt=dh(),Yo=Cd(),BKt=Ju().attributes,f0=Mr().extendFlat,CKe=Bu().overrideAll,LKe=CKe({color:Yo.color,showline:f0({},Yo.showline,{dflt:!0}),linecolor:Yo.linecolor,linewidth:Yo.linewidth,showgrid:f0({},Yo.showgrid,{dflt:!0}),gridcolor:Yo.gridcolor,gridwidth:Yo.gridwidth,griddash:Yo.griddash},"plot","from-root"),PKe=CKe({tickmode:Yo.minor.tickmode,nticks:Yo.nticks,tick0:Yo.tick0,dtick:Yo.dtick,tickvals:Yo.tickvals,ticktext:Yo.ticktext,ticks:Yo.ticks,ticklen:Yo.ticklen,tickwidth:Yo.tickwidth,tickcolor:Yo.tickcolor,ticklabelstep:Yo.ticklabelstep,showticklabels:Yo.showticklabels,labelalias:Yo.labelalias,showtickprefix:Yo.showtickprefix,tickprefix:Yo.tickprefix,showticksuffix:Yo.showticksuffix,ticksuffix:Yo.ticksuffix,showexponent:Yo.showexponent,exponentformat:Yo.exponentformat,minexponent:Yo.minexponent,separatethousands:Yo.separatethousands,tickfont:Yo.tickfont,tickangle:Yo.tickangle,tickformat:Yo.tickformat,tickformatstops:Yo.tickformatstops,layer:Yo.layer},"plot","from-root"),IKe={visible:f0({},Yo.visible,{dflt:!0}),type:f0({},Yo.type,{values:["-","linear","log","date","category"]}),autotypenumbers:Yo.autotypenumbers,autorangeoptions:{minallowed:Yo.autorangeoptions.minallowed,maxallowed:Yo.autorangeoptions.maxallowed,clipmin:Yo.autorangeoptions.clipmin,clipmax:Yo.autorangeoptions.clipmax,include:Yo.autorangeoptions.include,editType:"plot"},autorange:f0({},Yo.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:f0({},Yo.minallowed,{editType:"plot"}),maxallowed:f0({},Yo.maxallowed,{editType:"plot"}),range:f0({},Yo.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:Yo.categoryorder,categoryarray:Yo.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:Yo.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:f0({},Yo.title.text,{editType:"plot",dflt:""}),font:f0({},Yo.title.font,{editType:"plot"}),editType:"plot"},hoverformat:Yo.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(IKe,LKe,PKe);var RKe={visible:f0({},Yo.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:Yo.autotypenumbers,categoryorder:Yo.categoryorder,categoryarray:Yo.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:Yo.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};f0(RKe,LKe,PKe);DKe.exports={domain:BKt({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:OKt.background},radialaxis:IKe,angularaxis:RKe,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}});var OKe=ye((rbr,qKe)=>{"use strict";var c9=Mr(),NKt=va(),UKt=Vs(),VKt=C_(),HKt=kd().getSubplotData,GKt=xb(),jKt=T3(),WKt=t_(),ZKt=r_(),XKt=eI(),YKt=YM(),KKt=hB(),JKt=L3(),FKe=z$(),$Kt=k$(),f9=i9(),zKe=f9.axisNames;function QKt(e,t,r,n){var i=r("bgcolor");n.bgColor=NKt.combine(i,n.paper_bgcolor);var a=r("sector");r("hole");var o=HKt(n.fullData,f9.name,n.id),s=n.layoutOut,l;function u(G,N){return r(l+"."+G,N)}for(var c=0;c<zKe.length;c++){l=zKe[c],c9.isPlainObject(e[l])||(e[l]={});var f=e[l],h=UKt.newContainer(t,l);h._id=h._name=l,h._attr=n.id+"."+l,h._traceIndices=o.map(function(G){return G.index});var d=f9.axisName2dataArray[l],v=eJt(f,h,u,o,d,n);XKt(f,h,u,{axData:o,dataAttr:d});var x=u("visible");switch($Kt(h,t,s),u("uirevision",t.uirevision),h._m=1,l){case"radialaxis":u("minallowed"),u("maxallowed");var b=u("range"),p=h.getAutorangeDflt(b),E=u("autorange",p),k;b&&(b[0]===null&&b[1]===null||(b[0]===null||b[1]===null)&&(E==="reversed"||E===!0)||b[0]!==null&&(E==="min"||E==="max reversed")||b[1]!==null&&(E==="max"||E==="min reversed"))&&(b=void 0,delete h.range,h.autorange=!0,k=!0),k||(p=h.getAutorangeDflt(b),E=u("autorange",p)),f.autorange=E,E&&(KKt(u,E,b),(v==="linear"||v==="-")&&u("rangemode"),h.isReversed()&&(h._m=-1)),h.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(v==="date"){c9.log("Polar plots do not support date angular axes yet.");for(var A=0;A<o.length;A++)o[A].visible=!1;v=f.type=h.type="linear"}u(v==="linear"?"thetaunit":"period");var L=u("direction");u("rotation",{counterclockwise:0,clockwise:90}[L]);break}if(ZKt(f,h,u,h.type,{tickSuffixDflt:h.thetaunit==="degrees"?"\xB0":void 0}),x){var _,C,M,g,P,T,F,q,V,H,X=n.font||{};_=u("color"),C=_===f.color?_:X.color,M=X.size,g=X.family,P=X.weight,T=X.style,F=X.variant,q=X.textcase,V=X.lineposition,H=X.shadow,GKt(f,h,u,h.type),WKt(f,h,u,h.type,{font:{weight:P,style:T,variant:F,textcase:q,lineposition:V,shadow:H,color:C,size:M,family:g},noAutotickangles:l==="angularaxis",noTicklabelshift:!0,noTicklabelstandoff:!0}),jKt(f,h,u,{outerTicks:!0}),YKt(f,h,u,{dfltColor:_,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:FKe[l]}),u("layer"),l==="radialaxis"&&(u("side"),u("angle",a[0]),u("title.text"),c9.coerceFont(u,"title.font",{weight:P,style:T,variant:F,textcase:q,lineposition:V,shadow:H,color:C,size:c9.bigFont(M),family:g}))}v!=="category"&&u("hoverformat"),h._input=f}t.angularaxis.type==="category"&&r("gridshape")}function eJt(e,t,r,n,i,a){var o=r("autotypenumbers",a.autotypenumbersDflt),s=r("type");if(s==="-"){for(var l,u=0;u<n.length;u++)if(n[u].visible){l=n[u];break}l&&l[i]&&(t.type=JKt(l[i],"gregorian",{noMultiCategory:!0,autotypenumbers:o})),t.type==="-"?t.type="linear":e.type=t.type}return t.type}qKe.exports=function(t,r,n){VKt(t,r,n,{type:f9.name,attributes:FKe,handleDefaults:QKt,font:r.font,autotypenumbersDflt:r.autotypenumbers,paper_bgcolor:r.paper_bgcolor,fullData:n,layoutOut:r})}});var h9=ye((ibr,HKe)=>{"use strict";var tJt=kd().getSubplotCalcData,rJt=Mr().counterRegex,iJt=D$(),NKe=i9(),UKe=NKe.attr,mw=NKe.name,BKe=rJt(mw),VKe={};VKe[UKe]={valType:"subplotid",dflt:mw,editType:"calc"};function nJt(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[mw],i=0;i<n.length;i++){var a=n[i],o=tJt(r,mw,a),s=t[a]._subplot;s||(s=iJt(e,a),t[a]._subplot=s),s.plot(o,t,e._promises)}}function aJt(e,t,r,n){for(var i=n._subplots[mw]||[],a=n._has&&n._has("gl"),o=t._has&&t._has("gl"),s=a&&!o,l=0;l<i.length;l++){var u=i[l],c=n[u]._subplot;if(!t[u]&&c){c.framework.remove(),c.layers["radial-axis-title"].remove();for(var f in c.clipPaths)c.clipPaths[f].remove()}s&&c._scene&&(c._scene.destroy(),c._scene=null)}}HKe.exports={attr:UKe,name:mw,idRoot:mw,idRegex:BKe,attrRegex:BKe,attributes:VKe,layoutAttributes:z$(),supplyLayoutDefaults:OKe(),plot:nJt,clean:aJt,toSVG:Jf().toSVG}});var aC=ye((nbr,GKe)=>{"use strict";var oJt=Wo().hovertemplateAttrs,sJt=Wo().texttemplateAttrs,d9=no().extendFlat,lJt=Eg(),h0=Uc(),uJt=vl(),GA=h0.line;GKe.exports={mode:h0.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:h0.text,texttemplate:sJt({editType:"plot"},{keys:["r","theta","text"]}),hovertext:h0.hovertext,line:{color:GA.color,width:GA.width,dash:GA.dash,backoff:GA.backoff,shape:d9({},GA.shape,{values:["linear","spline"]}),smoothing:GA.smoothing,editType:"calc"},connectgaps:h0.connectgaps,marker:h0.marker,cliponaxis:d9({},h0.cliponaxis,{dflt:!1}),textposition:h0.textposition,textfont:h0.textfont,fill:d9({},h0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:lJt(),hoverinfo:d9({},uJt.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:h0.hoveron,hovertemplate:oJt(),selected:h0.selected,unselected:h0.unselected}});var p9=ye((abr,ZKe)=>{"use strict";var v9=Mr(),jA=lu(),cJt=$p(),fJt=R0(),jKe=J3(),hJt=D0(),dJt=Ig(),vJt=Sm().PTS_LINESONLY,pJt=aC();function gJt(e,t,r,n){function i(s,l){return v9.coerce(e,t,pJt,s,l)}var a=WKe(e,t,n,i);if(!a){t.visible=!1;return}i("thetaunit"),i("mode",a<vJt?"lines+markers":"lines"),i("text"),i("hovertext"),t.hoveron!=="fills"&&i("hovertemplate"),jA.hasMarkers(t)&&cJt(e,t,r,n,i,{gradient:!0}),jA.hasLines(t)&&(fJt(e,t,r,n,i,{backoff:!0}),jKe(e,t,i),i("connectgaps")),jA.hasText(t)&&(i("texttemplate"),hJt(e,t,n,i));var o=[];(jA.hasMarkers(t)||jA.hasText(t))&&(i("cliponaxis"),i("marker.maxdisplayed"),o.push("points")),i("fill"),t.fill!=="none"&&(dJt(e,t,r,i),jA.hasLines(t)||jKe(e,t,i)),(t.fill==="tonext"||t.fill==="toself")&&o.push("fills"),i("hoveron",o.join("+")||"points"),v9.coerceSelectionMarkerOpacity(t,i)}function WKe(e,t,r,n){var i=n("r"),a=n("theta");v9.isTypedArray(i)&&(t.r=i=Array.from(i)),v9.isTypedArray(a)&&(t.theta=a=Array.from(a));var o;if(i)a?o=Math.min(i.length,a.length):(o=i.length,n("theta0"),n("dtheta"));else{if(!a)return 0;o=t.theta.length,n("r0"),n("dr")}return t._length=o,o}ZKe.exports={handleRThetaDefaults:WKe,supplyDefaults:gJt}});var g9=ye((obr,YKe)=>{"use strict";var mJt=Mr(),XKe=Qa();YKe.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot,o,s;a?(o=a.radialAxis,s=a.angularAxis):(a=n[r.subplot],o=a.radialaxis,s=a.angularaxis);var l=o.c2l(t.r);i.rLabel=XKe.tickText(o,l,!0).text;var u=s.thetaunit==="degrees"?mJt.rad2deg(t.theta):t.theta;return i.thetaLabel=XKe.tickText(s,u,!0).text,i}});var $Ke=ye((sbr,JKe)=>{"use strict";var KKe=uo(),yJt=es().BADNUM,_Jt=Qa(),xJt=z0(),bJt=km(),wJt=F0(),TJt=q0().calcMarkerSize;JKe.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=a.makeCalcdata(r,"r"),l=o.makeCalcdata(r,"theta"),u=r._length,c=new Array(u),f=0;f<u;f++){var h=s[f],d=l[f],v=c[f]={};KKe(h)&&KKe(d)?(v.r=h,v.theta=d):v.r=yJt}var x=TJt(r,u);return r._extremes.x=_Jt.findExtremes(a,s,{ppad:x}),xJt(t,r),bJt(c,r),wJt(c,r),c}});var tJe=ye((lbr,eJe)=>{"use strict";var AJt=iT(),QKe=es().BADNUM;eJe.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=r.radialAxis,u=r.angularAxis,c=0;c<n.length;c++)for(var f=n[c],h=0;h<f.length;h++){h===0&&(f[0].trace._xA=a,f[0].trace._yA=o);var d=f[h],v=d.r;if(v===QKe)d.x=d.y=QKe;else{var x=l.c2g(v),b=u.c2g(d.theta);d.x=x*Math.cos(b),d.y=x*Math.sin(b)}}AJt(t,s,n,i)}});var m9=ye((ubr,iJe)=>{"use strict";var SJt=sT();function MJt(e,t,r,n){var i=SJt(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,rJe(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function rJe(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="r",a._hovertitle="\u03B8";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.rLabel=s.rLabel,n.thetaLabel=s.thetaLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["r","theta","text"]),f.indexOf("r")!==-1&&c(i,n.rLabel),f.indexOf("theta")!==-1&&c(a,n.thetaLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("<br>")}}iJe.exports={hoverPoints:MJt,makeHoverPointText:rJe}});var aJe=ye((cbr,nJe)=>{"use strict";nJe.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:h9(),categories:["polar","symbols","showLegend","scatter-like"],attributes:aC(),supplyDefaults:p9().supplyDefaults,colorbar:Kd(),formatLabels:g9(),calc:$Ke(),plot:tJe(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:m9().hoverPoints,selectPoints:lT(),meta:{}}});var sJe=ye((fbr,oJe)=>{"use strict";oJe.exports=aJe()});var F$=ye((hbr,lJe)=>{"use strict";var Vp=aC(),x1=tk(),EJt=Wo().texttemplateAttrs;lJe.exports={mode:Vp.mode,r:Vp.r,theta:Vp.theta,r0:Vp.r0,dr:Vp.dr,theta0:Vp.theta0,dtheta:Vp.dtheta,thetaunit:Vp.thetaunit,text:Vp.text,texttemplate:EJt({editType:"plot"},{keys:["r","theta","text"]}),hovertext:Vp.hovertext,hovertemplate:Vp.hovertemplate,line:{color:x1.line.color,width:x1.line.width,dash:x1.line.dash,editType:"calc"},connectgaps:x1.connectgaps,marker:x1.marker,fill:x1.fill,fillcolor:x1.fillcolor,textposition:x1.textposition,textfont:x1.textfont,hoverinfo:Vp.hoverinfo,selected:Vp.selected,unselected:Vp.unselected}});var fJe=ye((dbr,cJe)=>{"use strict";var uJe=Mr(),q$=lu(),kJt=p9().handleRThetaDefaults,CJt=$p(),LJt=R0(),PJt=D0(),IJt=Ig(),RJt=Sm().PTS_LINESONLY,DJt=F$();cJe.exports=function(t,r,n,i){function a(s,l){return uJe.coerce(t,r,DJt,s,l)}var o=kJt(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("mode",o<RJt?"lines+markers":"lines"),a("text"),a("hovertext"),r.hoveron!=="fills"&&a("hovertemplate"),q$.hasMarkers(r)&&CJt(t,r,n,i,a,{noAngleRef:!0,noStandOff:!0}),q$.hasLines(r)&&(LJt(t,r,n,i,a),a("connectgaps")),q$.hasText(r)&&(a("texttemplate"),PJt(t,r,i,a,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0})),a("fill"),r.fill!=="none"&&IJt(t,r,n,a),uJe.coerceSelectionMarkerOpacity(r,a)}});var dJe=ye((vbr,hJe)=>{"use strict";var zJt=g9();hJe.exports=function(t,r,n){var i=t.i;return"r"in t||(t.r=r._r[i]),"theta"in t||(t.theta=r._theta[i]),zJt(t,r,n)}});var pJe=ye((pbr,vJe)=>{"use strict";var FJt=z0(),qJt=q0().calcMarkerSize,OJt=Y2(),BJt=Qa(),NJt=sx().TOO_MANY_POINTS;vJe.exports=function(t,r){var n=t._fullLayout,i=r.subplot,a=n[i].radialaxis,o=n[i].angularaxis,s=r._r=a.makeCalcdata(r,"r"),l=r._theta=o.makeCalcdata(r,"theta"),u=r._length,c={};u<s.length&&(s=s.slice(0,u)),u<l.length&&(l=l.slice(0,u)),c.r=s,c.theta=l,FJt(t,r);var f=c.opts=OJt.style(t,r),h;return u<NJt?h=qJt(r,u):f.marker&&(h=2*(f.marker.sizeAvg||Math.max(f.marker.size,3))),r._extremes.x=BJt.findExtremes(a,s,{ppad:h}),[{x:!1,y:!1,t:c,trace:r}]}});var mJe=ye((gbr,gJe)=>{"use strict";var UJt=zz(),VJt=m9().makeHoverPointText;function HJt(e,t,r,n){var i=e.cd,a=i[0].t,o=a.r,s=a.theta,l=UJt.hoverPoints(e,t,r,n);if(!(!l||l[0].index===!1)){var u=l[0];if(u.index===void 0)return l;var c=e.subplot,f=u.cd[u.index],h=u.trace;if(f.r=o[u.index],f.theta=s[u.index],!!c.isPtInside(f))return u.xLabelVal=void 0,u.yLabelVal=void 0,VJt(f,h,c,u),l}}gJe.exports={hoverPoints:HJt}});var _Je=ye((mbr,yJe)=>{"use strict";yJe.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:h9(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:F$(),supplyDefaults:fJe(),colorbar:Kd(),formatLabels:dJe(),calc:pJe(),hoverPoints:mJe().hoverPoints,selectPoints:KX(),meta:{}}});var xJe=ye((ybr,O$)=>{"use strict";var GJt=Oz(),jJt=uo(),WJt=QY(),ZJt=ZX(),y9=Y2(),_9=Mr(),XJt=sx().TOO_MANY_POINTS,YJt={};O$.exports=function(t,r,n){if(n.length){var i=r.radialAxis,a=r.angularAxis,o=ZJt(t,r);return n.forEach(function(s){if(!(!s||!s[0]||!s[0].trace)){var l=s[0],u=l.trace,c=l.t,f=u._length,h=c.r,d=c.theta,v=c.opts,x,b=h.slice(),p=d.slice();for(x=0;x<h.length;x++)r.isPtInside({r:h[x],theta:d[x]})||(b[x]=NaN,p[x]=NaN);var E=new Array(f*2),k=Array(f),A=Array(f);for(x=0;x<f;x++){var L=b[x],_,C;if(jJt(L)){var M=i.c2g(L),g=a.c2g(p[x],u.thetaunit);_=M*Math.cos(g),C=M*Math.sin(g)}else _=C=NaN;k[x]=E[x*2]=_,A[x]=E[x*2+1]=C}c.tree=GJt(E),v.marker&&f>=XJt&&(v.marker.cluster=c.tree),v.marker&&(v.markerSel.positions=v.markerUnsel.positions=v.marker.positions=E),v.line&&E.length>1&&_9.extendFlat(v.line,y9.linePositions(t,u,E)),v.text&&(_9.extendFlat(v.text,{positions:E},y9.textPosition(t,u,v.text,v.marker)),_9.extendFlat(v.textSel,{positions:E},y9.textPosition(t,u,v.text,v.markerSel)),_9.extendFlat(v.textUnsel,{positions:E},y9.textPosition(t,u,v.text,v.markerUnsel))),v.fill&&!o.fill2d&&(o.fill2d=!0),v.marker&&!o.scatter2d&&(o.scatter2d=!0),v.line&&!o.line2d&&(o.line2d=!0),v.text&&!o.glText&&(o.glText=!0),o.lineOptions.push(v.line),o.fillOptions.push(v.fill),o.markerOptions.push(v.marker),o.markerSelectedOptions.push(v.markerSel),o.markerUnselectedOptions.push(v.markerUnsel),o.textOptions.push(v.text),o.textSelectedOptions.push(v.textSel),o.textUnselectedOptions.push(v.textUnsel),o.selectBatch.push([]),o.unselectBatch.push([]),c.x=k,c.y=A,c.rawx=k,c.rawy=A,c.r=h,c.theta=d,c.positions=E,c._scene=o,c.index=o.count,o.count++}}),WJt(t,r,n)}};O$.exports.reglPrecompiled=YJt});var TJe=ye((_br,wJe)=>{"use strict";var bJe=_Je();bJe.plot=xJe();wJe.exports=bJe});var SJe=ye((xbr,AJe)=>{"use strict";AJe.exports=TJe()});var B$=ye((bbr,MJe)=>{"use strict";var KJt=Wo().hovertemplateAttrs,WA=no().extendFlat,Ix=aC(),Rx=Lm();MJe.exports={r:Ix.r,theta:Ix.theta,r0:Ix.r0,dr:Ix.dr,theta0:Ix.theta0,dtheta:Ix.dtheta,thetaunit:Ix.thetaunit,base:WA({},Rx.base,{}),offset:WA({},Rx.offset,{}),width:WA({},Rx.width,{}),text:WA({},Rx.text,{}),hovertext:WA({},Rx.hovertext,{}),marker:JJt(),hoverinfo:Ix.hoverinfo,hovertemplate:KJt(),selected:Rx.selected,unselected:Rx.unselected};function JJt(){var e=WA({},Rx.marker);return delete e.cornerradius,e}});var N$=ye((wbr,EJe)=>{"use strict";EJe.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}});var LJe=ye((Tbr,CJe)=>{"use strict";var kJe=Mr(),$Jt=p9().handleRThetaDefaults,QJt=FI(),e$t=B$();CJe.exports=function(t,r,n,i){function a(s,l){return kJe.coerce(t,r,e$t,s,l)}var o=$Jt(t,r,i,a);if(!o){r.visible=!1;return}a("thetaunit"),a("base"),a("offset"),a("width"),a("text"),a("hovertext"),a("hovertemplate"),QJt(t,r,a,n,i),kJe.coerceSelectionMarkerOpacity(r,a)}});var IJe=ye((Abr,PJe)=>{"use strict";var t$t=Mr(),r$t=N$();PJe.exports=function(e,t,r){var n={},i;function a(l,u){return t$t.coerce(e[i]||{},t[i],r$t,l,u)}for(var o=0;o<r.length;o++){var s=r[o];s.type==="barpolar"&&s.visible===!0&&(i=s.subplot,n[i]||(a("barmode"),a("bargap"),n[i]=1))}}});var U$=ye((Sbr,zJe)=>{"use strict";var RJe=Dv().hasColorscale,DJe=zv(),i$t=Mr().isArrayOrTypedArray,n$t=c4(),a$t=Gb().setGroupPositions,o$t=F0(),s$t=ba().traceIs,l$t=Mr().extendFlat;function u$t(e,t){for(var r=e._fullLayout,n=t.subplot,i=r[n].radialaxis,a=r[n].angularaxis,o=i.makeCalcdata(t,"r"),s=a.makeCalcdata(t,"theta"),l=t._length,u=new Array(l),c=o,f=s,h=0;h<l;h++)u[h]={p:f[h],s:c[h]};function d(v){var x=t[v];x!==void 0&&(t["_"+v]=i$t(x)?a.makeCalcdata(t,v):a.d2c(x,t.thetaunit))}return a.type==="linear"&&(d("width"),d("offset")),RJe(t,"marker")&&DJe(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),RJe(t,"marker.line")&&DJe(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}),n$t(u,t),o$t(u,t),u}function c$t(e,t,r){for(var n=e.calcdata,i=[],a=0;a<n.length;a++){var o=n[a],s=o[0].trace;s.visible===!0&&s$t(s,"bar")&&s.subplot===r&&i.push(o)}var l=l$t({},t.radialaxis,{_id:"x"}),u=t.angularaxis;a$t(e,u,l,i,{mode:t.barmode,norm:t.barnorm,gap:t.bargap,groupgap:t.bargroupgap})}zJe.exports={calc:u$t,crossTraceCalc:c$t}});var OJe=ye((Mbr,qJe)=>{"use strict";var FJe=xa(),x9=uo(),ZA=Mr(),f$t=ao(),V$=a9();qJe.exports=function(t,r,n){var i=t._context.staticPlot,a=r.xaxis,o=r.yaxis,s=r.radialAxis,l=r.angularAxis,u=h$t(r),c=r.layers.frontplot.select("g.barlayer");ZA.makeTraceGroups(c,n,"trace bars").each(function(){var f=FJe.select(this),h=ZA.ensureSingle(f,"g","points"),d=h.selectAll("g.point").data(ZA.identity);d.enter().append("g").style("vector-effect",i?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),d.exit().remove(),d.each(function(v){var x=FJe.select(this),b=v.rp0=s.c2p(v.s0),p=v.rp1=s.c2p(v.s1),E=v.thetag0=l.c2g(v.p0),k=v.thetag1=l.c2g(v.p1),A;if(!x9(b)||!x9(p)||!x9(E)||!x9(k)||b===p||E===k)A="M0,0Z";else{var L=s.c2g(v.s1),_=(E+k)/2;v.ct=[a.c2p(L*Math.cos(_)),o.c2p(L*Math.sin(_))],A=u(b,p,E,k)}ZA.ensureSingle(x,"path").attr("d",A)}),f$t.setClipUrl(f,r._hasClipOnAxisFalse?r.clipIds.forTraces:null,t)})};function h$t(e){var t=e.cxx,r=e.cyy;return e.vangles?function(n,i,a,o){var s,l;ZA.angleDelta(a,o)>0?(s=a,l=o):(s=o,l=a);var u=V$.findEnclosingVertexAngles(s,e.vangles)[0],c=V$.findEnclosingVertexAngles(l,e.vangles)[1],f=[u,(s+l)/2,c];return V$.pathPolygonAnnulus(n,i,s,l,f,t,r)}:function(n,i,a,o){return ZA.pathAnnulus(n,i,a,o,t,r)}}});var NJe=ye((Ebr,BJe)=>{"use strict";var d$t=Nc(),H$=Mr(),v$t=TT().getTraceColor,p$t=H$.fillText,g$t=m9().makeHoverPointText,m$t=a9().isPtInsidePolygon;BJe.exports=function(t,r,n){var i=t.cd,a=i[0].trace,o=t.subplot,s=o.radialAxis,l=o.angularAxis,u=o.vangles,c=u?m$t:H$.isPtInsideSector,f=t.maxHoverDistance,h=l._period||2*Math.PI,d=Math.abs(s.g2p(Math.sqrt(r*r+n*n))),v=Math.atan2(n,r);s.range[0]>s.range[1]&&(v+=Math.PI);var x=function(k){return c(d,v,[k.rp0,k.rp1],[k.thetag0,k.thetag1],u)?f+Math.min(1,Math.abs(k.thetag1-k.thetag0)/h)-1+(k.rp1-d)/(k.rp1-k.rp0)-1:1/0};if(d$t.getClosest(i,x,t),t.index!==!1){var b=t.index,p=i[b];t.x0=t.x1=p.ct[0],t.y0=t.y1=p.ct[1];var E=H$.extendFlat({},p,{r:p.s,theta:p.p});return p$t(p,a,t),g$t(E,a,o,t),t.hovertemplate=a.hovertemplate,t.color=v$t(a,p),t.xLabelVal=t.yLabelVal=void 0,p.s<0&&(t.idealAlign="left"),[t]}}});var VJe=ye((kbr,UJe)=>{"use strict";UJe.exports={moduleType:"trace",name:"barpolar",basePlotModule:h9(),categories:["polar","bar","showLegend"],attributes:B$(),layoutAttributes:N$(),supplyDefaults:LJe(),supplyLayoutDefaults:IJe(),calc:U$().calc,crossTraceCalc:U$().crossTraceCalc,plot:OJe(),colorbar:Kd(),formatLabels:g9(),style:N0().style,styleOnSelect:N0().styleOnSelect,hoverPoints:NJe(),selectPoints:AT(),meta:{}}});var GJe=ye((Cbr,HJe)=>{"use strict";HJe.exports=VJe()});var G$=ye((Lbr,jJe)=>{"use strict";jJe.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}});var j$=ye((Pbr,YJe)=>{"use strict";var y$t=dh(),Mf=Cd(),_$t=Ju().attributes,Dx=Mr().extendFlat,WJe=Bu().overrideAll,ZJe=WJe({color:Mf.color,showline:Dx({},Mf.showline,{dflt:!0}),linecolor:Mf.linecolor,linewidth:Mf.linewidth,showgrid:Dx({},Mf.showgrid,{dflt:!0}),gridcolor:Mf.gridcolor,gridwidth:Mf.gridwidth,griddash:Mf.griddash},"plot","from-root"),XJe=WJe({ticklen:Mf.ticklen,tickwidth:Dx({},Mf.tickwidth,{dflt:2}),tickcolor:Mf.tickcolor,showticklabels:Mf.showticklabels,labelalias:Mf.labelalias,showtickprefix:Mf.showtickprefix,tickprefix:Mf.tickprefix,showticksuffix:Mf.showticksuffix,ticksuffix:Mf.ticksuffix,tickfont:Mf.tickfont,tickformat:Mf.tickformat,hoverformat:Mf.hoverformat,layer:Mf.layer},"plot","from-root"),x$t=Dx({visible:Dx({},Mf.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:Dx({},Mf.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},ZJe,XJe),b$t=Dx({visible:Dx({},Mf.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:Mf.ticks,editType:"calc"},ZJe,XJe);YJe.exports={domain:_$t({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:y$t.background},realaxis:x$t,imaginaryaxis:b$t,editType:"calc"}});var $Je=ye((Ibr,JJe)=>{"use strict";var XA=Mr(),w$t=va(),T$t=Vs(),A$t=C_(),S$t=kd().getSubplotData,M$t=r_(),E$t=t_(),k$t=YM(),C$t=ym(),YA=j$(),W$=G$(),KJe=W$.axisNames,L$t=I$t(function(e){return XA.isTypedArray(e)&&(e=Array.from(e)),e.slice().reverse().map(function(t){return-t}).concat([0]).concat(e)},String);function P$t(e,t,r,n){var i=r("bgcolor");n.bgColor=w$t.combine(i,n.paper_bgcolor);var a=S$t(n.fullData,W$.name,n.id),o=n.layoutOut,s;function l(L,_){return r(s+"."+L,_)}for(var u=0;u<KJe.length;u++){s=KJe[u],XA.isPlainObject(e[s])||(e[s]={});var c=e[s],f=T$t.newContainer(t,s);f._id=f._name=s,f._attr=n.id+"."+s,f._traceIndices=a.map(function(L){return L.index});var h=l("visible");if(f.type="linear",C$t(f,o),M$t(c,f,l,f.type),h){var d=s==="realaxis";if(d&&l("side"),d)l("tickvals");else{var v=L$t(t.realaxis.tickvals||YA.realaxis.tickvals.dflt);l("tickvals",v)}XA.isTypedArray(f.tickvals)&&(f.tickvals=Array.from(f.tickvals));var x,b,p,E,k=n.font||{};h&&(x=l("color"),b=x===c.color?x:k.color,p=k.size,E=k.family),E$t(c,f,l,f.type,{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noAng:!d,noExp:!0,font:{color:b,size:p,family:E}}),XA.coerce2(e,t,YA,s+".ticklen"),XA.coerce2(e,t,YA,s+".tickwidth"),XA.coerce2(e,t,YA,s+".tickcolor",t.color);var A=l("ticks");A||(delete t[s].ticklen,delete t[s].tickwidth,delete t[s].tickcolor),k$t(c,f,l,{dfltColor:x,bgColor:n.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:YA[s]}),l("layer")}l("hoverformat"),delete f.type,f._input=c}}JJe.exports=function(t,r,n){A$t(t,r,n,{noUirevision:!0,type:W$.name,attributes:YA,handleDefaults:P$t,font:r.font,paper_bgcolor:r.paper_bgcolor,fullData:n,layoutOut:r})};function I$t(e,t){var r={};return function(n){var i=t?t(n):n;if(i in r)return r[i];var a=e(n);return r[i]=a,a}}});var n$e=ye((Rbr,i$e)=>{"use strict";var R$t=kd().getSubplotCalcData,D$t=Mr().counterRegex,z$t=D$(),e$e=G$(),t$e=e$e.attr,yw=e$e.name,QJe=D$t(yw),r$e={};r$e[t$e]={valType:"subplotid",dflt:yw,editType:"calc"};function F$t(e){for(var t=e._fullLayout,r=e.calcdata,n=t._subplots[yw],i=0;i<n.length;i++){var a=n[i],o=R$t(r,yw,a),s=t[a]._subplot;s||(s=z$t(e,a,!0),t[a]._subplot=s),s.plot(o,t,e._promises)}}function q$t(e,t,r,n){for(var i=n._subplots[yw]||[],a=0;a<i.length;a++){var o=i[a],s=n[o]._subplot;if(!t[o]&&s){s.framework.remove();for(var l in s.clipPaths)s.clipPaths[l].remove()}}}i$e.exports={attr:t$e,name:yw,idRoot:yw,idRegex:QJe,attrRegex:QJe,attributes:r$e,layoutAttributes:j$(),supplyLayoutDefaults:$Je(),plot:F$t,clean:q$t,toSVG:Jf().toSVG}});var Z$=ye((Dbr,a$e)=>{"use strict";var O$t=Wo().hovertemplateAttrs,B$t=Wo().texttemplateAttrs,b9=no().extendFlat,N$t=Eg(),d0=Uc(),U$t=vl(),KA=d0.line;a$e.exports={mode:d0.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:d0.text,texttemplate:B$t({editType:"plot"},{keys:["real","imag","text"]}),hovertext:d0.hovertext,line:{color:KA.color,width:KA.width,dash:KA.dash,backoff:KA.backoff,shape:b9({},KA.shape,{values:["linear","spline"]}),smoothing:KA.smoothing,editType:"calc"},connectgaps:d0.connectgaps,marker:d0.marker,cliponaxis:b9({},d0.cliponaxis,{dflt:!1}),textposition:d0.textposition,textfont:d0.textfont,fill:b9({},d0.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:N$t(),hoverinfo:b9({},U$t.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:d0.hoveron,hovertemplate:O$t(),selected:d0.selected,unselected:d0.unselected}});var l$e=ye((zbr,s$e)=>{"use strict";var w9=Mr(),JA=lu(),V$t=$p(),H$t=R0(),o$e=J3(),G$t=D0(),j$t=Ig(),W$t=Sm().PTS_LINESONLY,Z$t=Z$();s$e.exports=function(t,r,n,i){function a(l,u){return w9.coerce(t,r,Z$t,l,u)}var o=X$t(t,r,i,a);if(!o){r.visible=!1;return}a("mode",o<W$t?"lines+markers":"lines"),a("text"),a("hovertext"),r.hoveron!=="fills"&&a("hovertemplate"),JA.hasMarkers(r)&&V$t(t,r,n,i,a,{gradient:!0}),JA.hasLines(r)&&(H$t(t,r,n,i,a,{backoff:!0}),o$e(t,r,a),a("connectgaps")),JA.hasText(r)&&(a("texttemplate"),G$t(t,r,i,a));var s=[];(JA.hasMarkers(r)||JA.hasText(r))&&(a("cliponaxis"),a("marker.maxdisplayed"),s.push("points")),a("fill"),r.fill!=="none"&&(j$t(t,r,n,a),JA.hasLines(r)||o$e(t,r,a)),(r.fill==="tonext"||r.fill==="toself")&&s.push("fills"),a("hoveron",s.join("+")||"points"),w9.coerceSelectionMarkerOpacity(r,a)};function X$t(e,t,r,n){var i=n("real"),a=n("imag"),o;return i&&a&&(o=Math.min(i.length,a.length)),w9.isTypedArray(i)&&(t.real=i=Array.from(i)),w9.isTypedArray(a)&&(t.imag=a=Array.from(a)),t._length=o,o}});var f$e=ye((Fbr,c$e)=>{"use strict";var u$e=Qa();c$e.exports=function(t,r,n){var i={},a=n[r.subplot]._subplot;return i.realLabel=u$e.tickText(a.radialAxis,t.real,!0).text,i.imagLabel=u$e.tickText(a.angularAxis,t.imag,!0).text,i}});var v$e=ye((qbr,d$e)=>{"use strict";var h$e=uo(),Y$t=es().BADNUM,K$t=z0(),J$t=km(),$$t=F0(),Q$t=q0().calcMarkerSize;d$e.exports=function(t,r){for(var n=t._fullLayout,i=r.subplot,a=n[i].realaxis,o=n[i].imaginaryaxis,s=a.makeCalcdata(r,"real"),l=o.makeCalcdata(r,"imag"),u=r._length,c=new Array(u),f=0;f<u;f++){var h=s[f],d=l[f],v=c[f]={};h$e(h)&&h$e(d)?(v.real=h,v.imag=d):v.real=Y$t}return Q$t(r,u),K$t(t,r),J$t(c,r),$$t(c,r),c}});var m$e=ye((Obr,g$e)=>{"use strict";var eQt=iT(),p$e=es().BADNUM,tQt=P$(),rQt=tQt.smith;g$e.exports=function(t,r,n){for(var i=r.layers.frontplot.select("g.scatterlayer"),a=r.xaxis,o=r.yaxis,s={xaxis:a,yaxis:o,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},l=0;l<n.length;l++)for(var u=n[l],c=0;c<u.length;c++){c===0&&(u[0].trace._xA=a,u[0].trace._yA=o);var f=u[c],h=f.real;if(h===p$e)f.x=f.y=p$e;else{var d=rQt([h,f.imag]);f.x=d[0],f.y=d[1]}}eQt(t,s,n,i)}});var x$e=ye((Bbr,_$e)=>{"use strict";var iQt=sT();function nQt(e,t,r,n){var i=iQt(e,t,r,n);if(!(!i||i[0].index===!1)){var a=i[0];if(a.index===void 0)return i;var o=e.subplot,s=a.cd[a.index],l=a.trace;if(o.isPtInside(s))return a.xLabelVal=void 0,a.yLabelVal=void 0,y$e(s,l,o,a),a.hovertemplate=l.hovertemplate,i}}function y$e(e,t,r,n){var i=r.radialAxis,a=r.angularAxis;i._hovertitle="real",a._hovertitle="imag";var o={};o[t.subplot]={_subplot:r};var s=t._module.formatLabels(e,t,o);n.realLabel=s.realLabel,n.imagLabel=s.imagLabel;var l=e.hi||t.hoverinfo,u=[];function c(h,d){u.push(h._hovertitle+": "+d)}if(!t.hovertemplate){var f=l.split("+");f.indexOf("all")!==-1&&(f=["real","imag","text"]),f.indexOf("real")!==-1&&c(i,n.realLabel),f.indexOf("imag")!==-1&&c(a,n.imagLabel),f.indexOf("text")!==-1&&n.text&&(u.push(n.text),delete n.text),n.extraText=u.join("<br>")}}_$e.exports={hoverPoints:nQt,makeHoverPointText:y$e}});var w$e=ye((Nbr,b$e)=>{"use strict";b$e.exports={moduleType:"trace",name:"scattersmith",basePlotModule:n$e(),categories:["smith","symbols","showLegend","scatter-like"],attributes:Z$(),supplyDefaults:l$e(),colorbar:Kd(),formatLabels:f$e(),calc:v$e(),plot:m$e(),style:op().style,styleOnSelect:op().styleOnSelect,hoverPoints:x$e().hoverPoints,selectPoints:lT(),meta:{}}});var A$e=ye((Ubr,T$e)=>{"use strict";T$e.exports=w$e()});var Sv=ye((Vbr,M$e)=>{var A9=bh();function S$e(){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={}}A9(S$e.prototype,{instance:function(e,t){e=(e||"gregorian").toLowerCase(),t=t||"";var r=this._localCals[e+"-"+t];if(!r&&this.calendars[e]&&(r=new this.calendars[e](t),this._localCals[e+"-"+t]=r),!r)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,e);return r},newDate:function(e,t,r,n,i){return n=(e!=null&&e.year?e.calendar():typeof n=="string"?this.instance(n,i):n)||this.instance(),n.newDate(e,t,r)},substituteDigits:function(e){return function(t){return(t+"").replace(/[0-9]/g,function(r){return e[r]})}},substituteChineseDigits:function(e,t){return function(r){for(var n="",i=0;r>0;){var a=r%10;n=(a===0?"":e[a]+t[i])+n,i++,r=Math.floor(r/10)}return n.indexOf(e[1]+t[1])===0&&(n=n.substr(1)),n||e[0]}}});function X$(e,t,r,n){if(this._calendar=e,this._year=t,this._month=r,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(Es.local.invalidDate||Es.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function T9(e,t){return e=""+e,"000000".substring(0,t-e.length)+e}A9(X$.prototype,{newDate:function(e,t,r){return this._calendar.newDate(e==null?this:e,t,r)},year:function(e){return arguments.length===0?this._year:this.set(e,"y")},month:function(e){return arguments.length===0?this._month:this.set(e,"m")},day:function(e){return arguments.length===0?this._day:this.set(e,"d")},date:function(e,t,r){if(!this._calendar.isValid(e,t,r))throw(Es.local.invalidDate||Es.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=e,this._month=t,this._day=r,this},leapYear:function(){return this._calendar.leapYear(this)},epoch:function(){return this._calendar.epoch(this)},formatYear:function(){return this._calendar.formatYear(this)},monthOfYear:function(){return this._calendar.monthOfYear(this)},weekOfYear:function(){return this._calendar.weekOfYear(this)},daysInYear:function(){return this._calendar.daysInYear(this)},dayOfYear:function(){return this._calendar.dayOfYear(this)},daysInMonth:function(){return this._calendar.daysInMonth(this)},dayOfWeek:function(){return this._calendar.dayOfWeek(this)},weekDay:function(){return this._calendar.weekDay(this)},extraInfo:function(){return this._calendar.extraInfo(this)},add:function(e,t){return this._calendar.add(this,e,t)},set:function(e,t){return this._calendar.set(this,e,t)},compareTo:function(e){if(this._calendar.name!==e._calendar.name)throw(Es.local.differentCalendars||Es.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,e._calendar.local.name);var t=this._year!==e._year?this._year-e._year:this._month!==e._month?this.monthOfYear()-e.monthOfYear():this._day-e._day;return t===0?0:t<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(e){return this._calendar.fromJD(e)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(e){return this._calendar.fromJSDate(e)},toString:function(){return(this.year()<0?"-":"")+T9(Math.abs(this.year()),4)+"-"+T9(this.month(),2)+"-"+T9(this.day(),2)}});function Y$(){this.shortYearCutoff="+10"}A9(Y$.prototype,{_validateLevel:0,newDate:function(e,t,r){return e==null?this.today():(e.year&&(this._validate(e,t,r,Es.local.invalidDate||Es.regionalOptions[""].invalidDate),r=e.day(),t=e.month(),e=e.year()),new X$(this,e,t,r))},today:function(){return this.fromJSDate(new Date)},epoch:function(e){var t=this._validate(e,this.minMonth,this.minDay,Es.local.invalidYear||Es.regionalOptions[""].invalidYear);return t.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Es.local.invalidYear||Es.regionalOptions[""].invalidYear);return(t.year()<0?"-":"")+T9(Math.abs(t.year()),4)},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Es.local.invalidYear||Es.regionalOptions[""].invalidYear),12},monthOfYear:function(e,t){var r=this._validate(e,t,this.minDay,Es.local.invalidMonth||Es.regionalOptions[""].invalidMonth);return(r.month()+this.monthsInYear(r)-this.firstMonth)%this.monthsInYear(r)+this.minMonth},fromMonthOfYear:function(e,t){var r=(t+this.firstMonth-2*this.minMonth)%this.monthsInYear(e)+this.minMonth;return this._validate(e,r,this.minDay,Es.local.invalidMonth||Es.regionalOptions[""].invalidMonth),r},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Es.local.invalidYear||Es.regionalOptions[""].invalidYear);return this.leapYear(t)?366:365},dayOfYear:function(e,t,r){var n=this._validate(e,t,r,Es.local.invalidDate||Es.regionalOptions[""].invalidDate);return n.toJD()-this.newDate(n.year(),this.fromMonthOfYear(n.year(),this.minMonth),this.minDay).toJD()+1},daysInWeek:function(){return 7},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,Es.local.invalidDate||Es.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(e,t,r){return this._validate(e,t,r,Es.local.invalidDate||Es.regionalOptions[""].invalidDate),{}},add:function(e,t,r){return this._validate(e,this.minMonth,this.minDay,Es.local.invalidDate||Es.regionalOptions[""].invalidDate),this._correctAdd(e,this._add(e,t,r),t,r)},_add:function(e,t,r){if(this._validateLevel++,r==="d"||r==="w"){var n=e.toJD()+t*(r==="w"?this.daysInWeek():1),i=e.calendar().fromJD(n);return this._validateLevel--,[i.year(),i.month(),i.day()]}try{var a=e.year()+(r==="y"?t:0),o=e.monthOfYear()+(r==="m"?t:0),i=e.day(),s=function(c){for(;o<c.minMonth;)a--,o+=c.monthsInYear(a);for(var f=c.monthsInYear(a);o>f-1+c.minMonth;)a++,o-=f,f=c.monthsInYear(a)};r==="y"?(e.month()!==this.fromMonthOfYear(a,o)&&(o=this.newDate(a,e.month(),this.minDay).monthOfYear()),o=Math.min(o,this.monthsInYear(a)),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o)))):r==="m"&&(s(this),i=Math.min(i,this.daysInMonth(a,this.fromMonthOfYear(a,o))));var l=[a,this.fromMonthOfYear(a,o),i];return this._validateLevel--,l}catch(u){throw this._validateLevel--,u}},_correctAdd:function(e,t,r,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(t[0]===0||e.year()>0!=t[0]>0)){var i={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],a=r<0?-1:1;t=this._add(e,r*i[0]+a*i[1],i[2])}return e.date(t[0],t[1],t[2])},set:function(e,t,r){this._validate(e,this.minMonth,this.minDay,Es.local.invalidDate||Es.regionalOptions[""].invalidDate);var n=r==="y"?t:e.year(),i=r==="m"?t:e.month(),a=r==="d"?t:e.day();return(r==="y"||r==="m")&&(a=Math.min(a,this.daysInMonth(n,i))),e.date(n,i,a)},isValid:function(e,t,r){this._validateLevel++;var n=this.hasYearZero||e!==0;if(n){var i=this.newDate(e,t,this.minDay);n=t>=this.minMonth&&t-this.minMonth<this.monthsInYear(i)&&r>=this.minDay&&r-this.minDay<this.daysInMonth(i)}return this._validateLevel--,n},toJSDate:function(e,t,r){var n=this._validate(e,t,r,Es.local.invalidDate||Es.regionalOptions[""].invalidDate);return Es.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(e){return this.fromJD(Es.instance().fromJSDate(e).toJD())},_validate:function(e,t,r,n){if(e.year){if(this._validateLevel===0&&this.name!==e.calendar().name)throw(Es.local.differentCalendars||Es.regionalOptions[""].differentCalendars).replace(/\{0\}/,this.local.name).replace(/\{1\}/,e.calendar().local.name);return e}try{if(this._validateLevel++,this._validateLevel===1&&!this.isValid(e,t,r))throw n.replace(/\{0\}/,this.local.name);var i=this.newDate(e,t,r);return this._validateLevel--,i}catch(a){throw this._validateLevel--,a}}});function K$(e){this.local=this.regionalOptions[e]||this.regionalOptions[""]}K$.prototype=new Y$;A9(K$.prototype,{name:"Gregorian",jdEpoch:17214255e-1,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(r){var t=this._validate(r,this.minMonth,this.minDay,Es.local.invalidYear||Es.regionalOptions[""].invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===0&&(r%100!==0||r%400===0)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Es.local.invalidMonth||Es.regionalOptions[""].invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,Es.local.invalidDate||Es.regionalOptions[""].invalidDate);e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<3&&(t+=12,e--);var i=Math.floor(e/100),a=2-i+Math.floor(i/4);return Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r+a-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=Math.floor((t-186721625e-2)/36524.25);r=t+1+r-Math.floor(r/4);var n=r+1524,i=Math.floor((n-122.1)/365.25),a=Math.floor(365.25*i),o=Math.floor((n-a)/30.6001),s=n-a-Math.floor(o*30.6001),l=o-(o>13.5?13:1),u=i-(l>2.5?4716:4715);return u<=0&&u--,this.newDate(u,l,s)},toJSDate:function(e,t,r){var n=this._validate(e,t,r,Es.local.invalidDate||Es.regionalOptions[""].invalidDate),i=new Date(n.year(),n.month()-1,n.day());return i.setHours(0),i.setMinutes(0),i.setSeconds(0),i.setMilliseconds(0),i.setHours(i.getHours()>12?i.getHours()+2:0),i},fromJSDate:function(e){return this.newDate(e.getFullYear(),e.getMonth()+1,e.getDate())}});var Es=M$e.exports=new S$e;Es.cdate=X$;Es.baseCalendar=Y$;Es.calendars.gregorian=K$});var E$e=ye(()=>{var J$=bh(),qd=Sv();J$(qd.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"});qd.local=qd.regionalOptions[""];J$(qd.cdate.prototype,{formatDate:function(e,t){return typeof e!="string"&&(t=e,e=""),this._calendar.formatDate(e||"",this,t)}});J$(qd.baseCalendar.prototype,{UNIX_EPOCH:qd.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:qd.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(e,t,r){if(typeof e!="string"&&(r=t,t=e,e=""),!t)return"";if(t.calendar()!==this)throw qd.local.invalidFormat||qd.regionalOptions[""].invalidFormat;e=e||this.local.dateFormat,r=r||{};for(var n=r.dayNamesShort||this.local.dayNamesShort,i=r.dayNames||this.local.dayNames,a=r.monthNumbers||this.local.monthNumbers,o=r.monthNamesShort||this.local.monthNamesShort,s=r.monthNames||this.local.monthNames,l=r.calculateWeek||this.local.calculateWeek,u=function(A,L){for(var _=1;k+_<e.length&&e.charAt(k+_)===A;)_++;return k+=_-1,Math.floor(_/(L||1))>1},c=function(A,L,_,C){var M=""+L;if(u(A,C))for(;M.length<_;)M="0"+M;return M},f=function(A,L,_,C){return u(A)?C[L]:_[L]},h=this,d=function(A){return typeof a=="function"?a.call(h,A,u("m")):b(c("m",A.month(),2))},v=function(A,L){return L?typeof s=="function"?s.call(h,A):s[A.month()-h.minMonth]:typeof o=="function"?o.call(h,A):o[A.month()-h.minMonth]},x=this.local.digits,b=function(A){return r.localNumbers&&x?x(A):A},p="",E=!1,k=0;k<e.length;k++)if(E)e.charAt(k)==="'"&&!u("'")?E=!1:p+=e.charAt(k);else switch(e.charAt(k)){case"d":p+=b(c("d",t.day(),2));break;case"D":p+=f("D",t.dayOfWeek(),n,i);break;case"o":p+=c("o",t.dayOfYear(),3);break;case"w":p+=c("w",t.weekOfYear(),2);break;case"m":p+=d(t);break;case"M":p+=v(t,u("M"));break;case"y":p+=u("y",2)?t.year():(t.year()%100<10?"0":"")+t.year()%100;break;case"Y":u("Y",2),p+=t.formatYear();break;case"J":p+=t.toJD();break;case"@":p+=(t.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case"!":p+=(t.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case"'":u("'")?p+="'":E=!0;break;default:p+=e.charAt(k)}return p},parseDate:function(e,t,r){if(t==null)throw qd.local.invalidArguments||qd.regionalOptions[""].invalidArguments;if(t=typeof t=="object"?t.toString():t+"",t==="")return null;e=e||this.local.dateFormat,r=r||{};var n=r.shortYearCutoff||this.shortYearCutoff;n=typeof n!="string"?n:this.today().year()%100+parseInt(n,10);for(var i=r.dayNamesShort||this.local.dayNamesShort,a=r.dayNames||this.local.dayNames,o=r.parseMonth||this.local.parseMonth,s=r.monthNumbers||this.local.monthNumbers,l=r.monthNamesShort||this.local.monthNamesShort,u=r.monthNames||this.local.monthNames,c=-1,f=-1,h=-1,d=-1,v=-1,x=!1,b=!1,p=function(F,q){for(var V=1;g+V<e.length&&e.charAt(g+V)===F;)V++;return g+=V-1,Math.floor(V/(q||1))>1},E=function(F,q){var V=p(F,q),H=[2,3,V?4:2,V?4:2,10,11,20]["oyYJ@!".indexOf(F)+1],X=new RegExp("^-?\\d{1,"+H+"}"),G=t.substring(M).match(X);if(!G)throw(qd.local.missingNumberAt||qd.regionalOptions[""].missingNumberAt).replace(/\{0\}/,M);return M+=G[0].length,parseInt(G[0],10)},k=this,A=function(){if(typeof s=="function"){p("m");var F=s.call(k,t.substring(M));return M+=F.length,F}return E("m")},L=function(F,q,V,H){for(var X=p(F,H)?V:q,G=0;G<X.length;G++)if(t.substr(M,X[G].length).toLowerCase()===X[G].toLowerCase())return M+=X[G].length,G+k.minMonth;throw(qd.local.unknownNameAt||qd.regionalOptions[""].unknownNameAt).replace(/\{0\}/,M)},_=function(){if(typeof u=="function"){var F=p("M")?u.call(k,t.substring(M)):l.call(k,t.substring(M));return M+=F.length,F}return L("M",l,u)},C=function(){if(t.charAt(M)!==e.charAt(g))throw(qd.local.unexpectedLiteralAt||qd.regionalOptions[""].unexpectedLiteralAt).replace(/\{0\}/,M);M++},M=0,g=0;g<e.length;g++)if(b)e.charAt(g)==="'"&&!p("'")?b=!1:C();else switch(e.charAt(g)){case"d":d=E("d");break;case"D":L("D",i,a);break;case"o":v=E("o");break;case"w":E("w");break;case"m":h=A();break;case"M":h=_();break;case"y":var P=g;x=!p("y",2),g=P,f=E("y",2);break;case"Y":f=E("Y",2);break;case"J":c=E("J")+.5,t.charAt(M)==="."&&(M++,E("J"));break;case"@":c=E("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":c=E("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":M=t.length;break;case"'":p("'")?C():b=!0;break;default:C()}if(M<t.length)throw qd.local.unexpectedText||qd.regionalOptions[""].unexpectedText;if(f===-1?f=this.today().year():f<100&&x&&(f+=n===-1?1900:this.today().year()-this.today().year()%100-(f<=n?0:100)),typeof h=="string"&&(h=o.call(this,f,h)),v>-1){h=1,d=v;for(var T=this.daysInMonth(f,h);d>T;T=this.daysInMonth(f,h))h++,d-=T}return c>-1?this.fromJD(c):this.newDate(f,h,d)},determineDate:function(e,t,r,n,i){r&&typeof r!="object"&&(i=n,n=r,r=null),typeof n!="string"&&(i=n,n="");var a=this,o=function(s){try{return a.parseDate(n,s,i)}catch(f){}s=s.toLowerCase();for(var l=(s.match(/^c/)&&r?r.newDate():null)||a.today(),u=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,c=u.exec(s);c;)l.add(parseInt(c[1],10),c[2]||"d"),c=u.exec(s);return l};return t=t?t.newDate():null,e=e==null?t:typeof e=="string"?o(e):typeof e=="number"?isNaN(e)||e===1/0||e===-1/0?t:a.today().add(e,"d"):a.newDate(e),e}})});var k$e=ye(()=>{var zx=Sv(),aQt=bh(),$$=zx.instance();function S9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}S9.prototype=new zx.baseCalendar;aQt(S9.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(e,t){if(typeof e=="string"){var r=e.match(sQt);return r?r[0]:""}var n=this._validateYear(e),i=e.month(),a=""+this.toChineseMonth(n,i);return t&&a.length<2&&(a="0"+a),this.isIntercalaryMonth(n,i)&&(a+="i"),a},monthNames:function(e){if(typeof e=="string"){var t=e.match(lQt);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00\u6708","\u4E8C\u6708","\u4E09\u6708","\u56DB\u6708","\u4E94\u6708","\u516D\u6708","\u4E03\u6708","\u516B\u6708","\u4E5D\u6708","\u5341\u6708","\u5341\u4E00\u6708","\u5341\u4E8C\u6708"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},monthNamesShort:function(e){if(typeof e=="string"){var t=e.match(uQt);return t?t[0]:""}var r=this._validateYear(e),n=e.month(),i=this.toChineseMonth(r,n),a=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][i-1];return this.isIntercalaryMonth(r,n)&&(a="\u95F0"+a),a},parseMonth:function(e,t){e=this._validateYear(e);var r=parseInt(t),n;if(isNaN(r))t[0]==="\u95F0"&&(n=!0,t=t.substring(1)),t[t.length-1]==="\u6708"&&(t=t.substring(0,t.length-1)),r=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(t);else{var i=t[t.length-1];n=i==="i"||i==="I"}var a=this.toMonthIndex(e,r,n);return a},dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},_validateYear:function(e,t){if(e.year&&(e=e.year()),typeof e!="number"||e<1888||e>2111)throw t.replace(/\{0\}/,this.local.name);return e},toMonthIndex:function(e,t,r){var n=this.intercalaryMonth(e),i=r&&t!==n;if(i||t<1||t>12)throw zx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a;return n?!r&&t<=n?a=t-1:a=t:a=t-1,a},toChineseMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e),n=r?12:11;if(t<0||t>n)throw zx.local.invalidMonth.replace(/\{0\}/,this.local.name);var i;return r?t<r?i=t+1:i=t:i=t+1,i},intercalaryMonth:function(e){e=this._validateYear(e);var t=Fx[e-Fx[0]],r=t>>13;return r},isIntercalaryMonth:function(e,t){e.year&&(e=e.year(),t=e.month());var r=this.intercalaryMonth(e);return!!r&&r===t},leapYear:function(e){return this.intercalaryMonth(e)!==0},weekOfYear:function(e,t,r){var n=this._validateYear(e,zx.local.invalidyear),i=qx[n-qx[0]],a=i>>9&4095,o=i>>5&15,s=i&31,l;l=$$.newDate(a,o,s),l.add(4-(l.dayOfWeek()||7),"d");var u=this.toJD(e,t,r)-l.toJD();return 1+Math.floor(u/7)},monthsInYear:function(e){return this.leapYear(e)?13:12},daysInMonth:function(e,t){e.year&&(t=e.month(),e=e.year()),e=this._validateYear(e);var r=Fx[e-Fx[0]],n=r>>13,i=n?12:11;if(t>i)throw zx.local.invalidMonth.replace(/\{0\}/,this.local.name);var a=r&1<<12-t?30:29;return a},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,a,r,zx.local.invalidDate);e=this._validateYear(n.year()),t=n.month(),r=n.day();var i=this.isIntercalaryMonth(e,t),a=this.toChineseMonth(e,t),o=fQt(e,a,r,i);return $$.toJD(o.year,o.month,o.day)},fromJD:function(e){var t=$$.fromJD(e),r=cQt(t.year(),t.month(),t.day()),n=this.toMonthIndex(r.year,r.month,r.isIntercalary);return this.newDate(r.year,n,r.day)},fromString:function(e){var t=e.match(oQt),r=this._validateYear(+t[1]),n=+t[2],i=!!t[3],a=this.toMonthIndex(r,n,i),o=+t[4];return this.newDate(r,a,o)},add:function(e,t,r){var n=e.year(),i=e.month(),a=this.isIntercalaryMonth(n,i),o=this.toChineseMonth(n,i),s=Object.getPrototypeOf(S9.prototype).add.call(this,e,t,r);if(r==="y"){var l=s.year(),u=s.month(),c=this.isIntercalaryMonth(l,o),f=a&&c?this.toMonthIndex(l,o,!0):this.toMonthIndex(l,o,!1);f!==u&&s.month(f)}return s}});var oQt=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,sQt=/^\d?\d[iI]?/m,lQt=/^闰?十?[一二三四五六七八九]?月/m,uQt=/^闰?十?[一二三四五六七八九]?/m;zx.calendars.chinese=S9;var Fx=[1887,5780,5802,19157,2742,50359,1198,2646,46378,7466,3412,30122,5482,67949,2396,5294,43597,6732,6954,36181,2772,4954,18781,2396,54427,5274,6730,47781,5800,6868,21210,4790,59703,2350,5270,46667,3402,3496,38325,1388,4782,18735,2350,52374,6804,7498,44457,2906,1388,29294,4700,63789,6442,6804,56138,5802,2772,38235,1210,4698,22827,5418,63125,3476,5802,43701,2484,5302,27223,2646,70954,7466,3412,54698,5482,2412,38062,5294,2636,32038,6954,60245,2772,4826,43357,2394,5274,39501,6730,72357,5800,5844,53978,4790,2358,38039,5270,87627,3402,3496,54708,5484,4782,43311,2350,3222,27978,7498,68965,2904,5484,45677,4700,6444,39573,6804,6986,19285,2772,62811,1210,4698,47403,5418,5780,38570,5546,76469,2420,5302,51799,2646,5414,36501,3412,5546,18869,2412,54446,5276,6732,48422,6822,2900,28010,4826,92509,2394,5274,55883,6730,6820,47956,5812,2778,18779,2358,62615,5270,5450,46757,3492,5556,27318,4718,67887,2350,3222,52554,7498,3428,38252,5468,4700,31022,6444,64149,6804,6986,43861,2772,5338,35421,2650,70955,5418,5780,54954,5546,2740,38074,5302,2646,29991,3366,61011,3412,5546,43445,2412,5294,35406,6732,72998,6820,6996,52586,2778,2396,38045,5274,6698,23333,6820,64338,5812,2746,43355,2358,5270,39499,5450,79525,3492,5548],qx=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function cQt(e,t,r,n){var i,a;if(typeof e=="object")i=e,a=t||{};else{var o=typeof e=="number"&&e>=1888&&e<=2111;if(!o)throw new Error("Solar year outside range 1888-2111");var s=typeof t=="number"&&t>=1&&t<=12;if(!s)throw new Error("Solar month outside range 1 - 12");var l=typeof r=="number"&&r>=1&&r<=31;if(!l)throw new Error("Solar day outside range 1 - 31");i={year:e,month:t,day:r},a=n||{}}var u=qx[i.year-qx[0]],c=i.year<<9|i.month<<5|i.day;a.year=c>=u?i.year:i.year-1,u=qx[a.year-qx[0]];var f=u>>9&4095,h=u>>5&15,d=u&31,v,x=new Date(f,h-1,d),b=new Date(i.year,i.month-1,i.day);v=Math.round((b-x)/(24*3600*1e3));var p=Fx[a.year-Fx[0]],E;for(E=0;E<13;E++){var k=p&1<<12-E?30:29;if(v<k)break;v-=k}var A=p>>13;return!A||E<A?(a.isIntercalary=!1,a.month=1+E):E===A?(a.isIntercalary=!0,a.month=E):(a.isIntercalary=!1,a.month=E),a.day=1+v,a}function fQt(e,t,r,n,i){var a,o;if(typeof e=="object")o=e,a=t||{};else{var s=typeof e=="number"&&e>=1888&&e<=2111;if(!s)throw new Error("Lunar year outside range 1888-2111");var l=typeof t=="number"&&t>=1&&t<=12;if(!l)throw new Error("Lunar month outside range 1 - 12");var u=typeof r=="number"&&r>=1&&r<=30;if(!u)throw new Error("Lunar day outside range 1 - 30");var c;typeof n=="object"?(c=!1,a=n):(c=!!n,a=i||{}),o={year:e,month:t,day:r,isIntercalary:c}}var f;f=o.day-1;var h=Fx[o.year-Fx[0]],d=h>>13,v;d&&(o.month>d||o.isIntercalary)?v=o.month:v=o.month-1;for(var x=0;x<v;x++){var b=h&1<<12-x?30:29;f+=b}var p=qx[o.year-qx[0]],E=p>>9&4095,k=p>>5&15,A=p&31,L=new Date(E,k-1,A+f);return a.year=L.getFullYear(),a.month=1+L.getMonth(),a.day=L.getDate(),a}});var C$e=ye(()=>{var _w=Sv(),hQt=bh();function Q$(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}Q$.prototype=new _w.baseCalendar;hQt(Q$.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,_w.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,_w.local.invalidYear||_w.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,_w.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,_w.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});_w.calendars.coptic=Q$});var L$e=ye(()=>{var b1=Sv(),dQt=bh();function eQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}eQ.prototype=new b1.baseCalendar;dQt(eQ.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,b1.local.invalidYear),!1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,b1.local.invalidYear),13},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,b1.local.invalidYear),400},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/8)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,b1.local.invalidMonth);return this.daysPerMonth[r.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,b1.local.invalidDate);return(n.day()+1)%8},weekDay:function(e,t,r){var n=this.dayOfWeek(e,t,r);return n>=2&&n<=6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,b1.local.invalidDate);return{century:vQt[Math.floor((n.year()-1)/100)+1]||""}},toJD:function(e,t,r){var n=this._validate(e,t,r,b1.local.invalidDate);return e=n.year()+(n.year()<0?1:0),t=n.month(),r=n.day(),r+(t>1?16:0)+(t>2?(t-2)*32:0)+(e-1)*400+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e+.5)-Math.floor(this.jdEpoch)-1;var t=Math.floor(e/400)+1;e-=(t-1)*400,e+=e>15?16:0;var r=Math.floor(e/32)+1,n=e-(r-1)*32+1;return this.newDate(t<=0?t-1:t,r,n)}});var vQt={20:"Fruitbat",21:"Anchovy"};b1.calendars.discworld=eQ});var P$e=ye(()=>{var xw=Sv(),pQt=bh();function tQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}tQ.prototype=new xw.baseCalendar;pQt(tQ.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,xw.local.invalidYear),r=t.year()+(t.year()<0?1:0);return r%4===3||r%4===-1},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,xw.local.invalidYear||xw.regionalOptions[""].invalidYear),13},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,xw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===13&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,xw.local.invalidDate);return e=n.year(),e<0&&e++,n.day()+(n.month()-1)*30+(e-1)*365+Math.floor(e/4)+this.jdEpoch-1},fromJD:function(e){var t=Math.floor(e)+.5-this.jdEpoch,r=Math.floor((t-Math.floor((t+366)/1461))/365)+1;r<=0&&r--,t=Math.floor(e)+.5-this.newDate(r,1,1).toJD();var n=Math.floor(t/30)+1,i=t-(n-1)*30+1;return this.newDate(r,n,i)}});xw.calendars.ethiopian=tQ});var I$e=ye(()=>{var Ox=Sv(),gQt=bh();function rQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}rQ.prototype=new Ox.baseCalendar;gQt(rQ.prototype,{name:"Hebrew",jdEpoch:347995.5,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29,29],hasYearZero:!1,minMonth:1,firstMonth:7,minDay:1,regionalOptions:{"":{name:"Hebrew",epochs:["BAM","AM"],monthNames:["Nisan","Iyar","Sivan","Tammuz","Av","Elul","Tishrei","Cheshvan","Kislev","Tevet","Shevat","Adar","Adar II"],monthNamesShort:["Nis","Iya","Siv","Tam","Av","Elu","Tis","Che","Kis","Tev","She","Ada","Ad2"],dayNames:["Yom Rishon","Yom Sheni","Yom Shlishi","Yom Revi'i","Yom Chamishi","Yom Shishi","Yom Shabbat"],dayNamesShort:["Ris","She","Shl","Rev","Cha","Shi","Sha"],dayNamesMin:["Ri","She","Shl","Re","Ch","Shi","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear);return this._leapYear(t.year())},_leapYear:function(e){return e=e<0?e+1:e,M9(e*7+1,19)<7},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear),this._leapYear(e.year?e.year():e)?13:12},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Ox.local.invalidYear);return e=t.year(),this.toJD(e===-1?1:e+1,7,1)-this.toJD(e,7,1)},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,Ox.local.invalidMonth),t===12&&this.leapYear(e)||t===8&&M9(this.daysInYear(e),10)===5?30:t===9&&M9(this.daysInYear(e),10)===3?29:this.daysPerMonth[t-1]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},extraInfo:function(e,t,r){var n=this._validate(e,t,r,Ox.local.invalidDate);return{yearType:(this.leapYear(n)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(n)%10-3]}},toJD:function(e,t,r){var n=this._validate(e,t,r,Ox.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e<=0?e+1:e,a=this.jdEpoch+this._delay1(i)+this._delay2(i)+r+1;if(t<7){for(var o=7;o<=this.monthsInYear(e);o++)a+=this.daysInMonth(e,o);for(var o=1;o<t;o++)a+=this.daysInMonth(e,o)}else for(var o=7;o<t;o++)a+=this.daysInMonth(e,o);return a},_delay1:function(e){var t=Math.floor((235*e-234)/19),r=12084+13753*t,n=t*29+Math.floor(r/25920);return M9(3*(n+1),7)<3&&n++,n},_delay2:function(e){var t=this._delay1(e-1),r=this._delay1(e),n=this._delay1(e+1);return n-r===356?2:r-t===382?1:0},fromJD:function(e){e=Math.floor(e)+.5;for(var t=Math.floor((e-this.jdEpoch)*98496/35975351)-1;e>=this.toJD(t===-1?1:t+1,7,1);)t++;for(var r=e<this.toJD(t,1,1)?7:1;e>this.toJD(t,r,this.daysInMonth(t,r));)r++;var n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});function M9(e,t){return e-t*Math.floor(e/t)}Ox.calendars.hebrew=rQ});var R$e=ye(()=>{var oC=Sv(),mQt=bh();function iQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}iQ.prototype=new oC.baseCalendar;mQt(iQ.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,oC.local.invalidYear);return(t.year()*11+14)%30<11},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){return this.leapYear(e)?355:354},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,oC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,oC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e=e<=0?e+1:e,r+Math.ceil(29.5*(t-1))+(e-1)*354+Math.floor((3+11*e)/30)+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=Math.floor((30*(e-this.jdEpoch)+10646)/10631);t=t<=0?t-1:t;var r=Math.min(12,Math.ceil((e-29-this.toJD(t,1,1))/29.5)+1),n=e-this.toJD(t,r,1)+1;return this.newDate(t,r,n)}});oC.calendars.islamic=iQ});var D$e=ye(()=>{var sC=Sv(),yQt=bh();function nQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}nQ.prototype=new sC.baseCalendar;yQt(nQ.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,sC.local.invalidYear),r=t.year()<0?t.year()+1:t.year();return r%4===0},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,sC.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(e,t,r){var n=this._validate(e,t,r,sC.local.invalidDate);return e=n.year(),t=n.month(),r=n.day(),e<0&&e++,t<=2&&(e--,t+=12),Math.floor(365.25*(e+4716))+Math.floor(30.6001*(t+1))+r-1524.5},fromJD:function(e){var t=Math.floor(e+.5),r=t+1524,n=Math.floor((r-122.1)/365.25),i=Math.floor(365.25*n),a=Math.floor((r-i)/30.6001),o=a-Math.floor(a<14?1:13),s=n-Math.floor(o>2?4716:4715),l=r-i-Math.floor(30.6001*a);return s<=0&&s--,this.newDate(s,o,l)}});sC.calendars.julian=nQ});var F$e=ye(()=>{var ug=Sv(),_Qt=bh();function oQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}oQ.prototype=new ug.baseCalendar;_Qt(oQ.prototype,{name:"Mayan",jdEpoch:584282.5,hasYearZero:!0,minMonth:0,firstMonth:0,minDay:0,regionalOptions:{"":{name:"Mayan",epochs:["",""],monthNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],monthNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17"],dayNames:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesShort:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],dayNamesMin:["0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19"],digits:null,dateFormat:"YYYY.m.d",firstDay:0,isRTL:!1,haabMonths:["Pop","Uo","Zip","Zotz","Tzec","Xul","Yaxkin","Mol","Chen","Yax","Zac","Ceh","Mac","Kankin","Muan","Pax","Kayab","Cumku","Uayeb"],tzolkinMonths:["Imix","Ik","Akbal","Kan","Chicchan","Cimi","Manik","Lamat","Muluc","Oc","Chuen","Eb","Ben","Ix","Men","Cib","Caban","Etznab","Cauac","Ahau"]}},leapYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),!1},formatYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear);e=t.year();var r=Math.floor(e/400);e=e%400,e+=e<0?400:0;var n=Math.floor(e/20);return r+"."+n+"."+e%20},forYear:function(e){if(e=e.split("."),e.length<3)throw"Invalid Mayan year";for(var t=0,r=0;r<e.length;r++){var n=parseInt(e[r],10);if(Math.abs(n)>19||r>0&&n<0)throw"Invalid Mayan year";t=t*20+n}return t},monthsInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),18},weekOfYear:function(e,t,r){return this._validate(e,t,r,ug.local.invalidDate),0},daysInYear:function(e){return this._validate(e,this.minMonth,this.minDay,ug.local.invalidYear),360},daysInMonth:function(e,t){return this._validate(e,t,this.minDay,ug.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate);return n.day()},weekDay:function(e,t,r){return this._validate(e,t,r,ug.local.invalidDate),!0},extraInfo:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate),i=n.toJD(),a=this._toHaab(i),o=this._toTzolkin(i);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[o[0]-1],tzolkinDay:o[0],tzolkinTrecena:o[1]}},_toHaab:function(e){e-=this.jdEpoch;var t=aQ(e+8+17*20,365);return[Math.floor(t/20)+1,aQ(t,20)]},_toTzolkin:function(e){return e-=this.jdEpoch,[z$e(e+20,20),z$e(e+4,13)]},toJD:function(e,t,r){var n=this._validate(e,t,r,ug.local.invalidDate);return n.day()+n.month()*20+n.year()*360+this.jdEpoch},fromJD:function(e){e=Math.floor(e)+.5-this.jdEpoch;var t=Math.floor(e/360);e=e%360,e+=e<0?360:0;var r=Math.floor(e/20),n=e%20;return this.newDate(t,r,n)}});function aQ(e,t){return e-t*Math.floor(e/t)}function z$e(e,t){return aQ(e-1,t)+1}ug.calendars.mayan=oQ});var O$e=ye(()=>{var bw=Sv(),xQt=bh();function sQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}sQ.prototype=new bw.baseCalendar;var q$e=bw.instance("gregorian");xQt(sQ.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,bw.local.invalidYear||bw.regionalOptions[""].invalidYear);return q$e.leapYear(t.year()+(t.year()<1?1:0)+1469)},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(1-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,bw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,bw.local.invalidMonth),i=n.year();i<0&&i++;for(var a=n.day(),o=1;o<n.month();o++)a+=this.daysPerMonth[o-1];return a+q$e.toJD(i+1468,3,13)},fromJD:function(e){e=Math.floor(e+.5);for(var t=Math.floor((e-(this.jdEpoch-1))/366);e>=this.toJD(t+1,1,1);)t++;for(var r=e-Math.floor(this.toJD(t,1,1)+.5)+1,n=1;r>this.daysInMonth(t,n);)r-=this.daysInMonth(t,n),n++;return this.newDate(t,n,r)}});bw.calendars.nanakshahi=sQ});var B$e=ye(()=>{var ww=Sv(),bQt=bh();function lQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}lQ.prototype=new ww.baseCalendar;bQt(lQ.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(e){return this.daysInYear(e)!==this.daysPerYear},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,ww.local.invalidYear);if(e=t.year(),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined")return this.daysPerYear;for(var r=0,n=this.minMonth;n<=12;n++)r+=this.NEPALI_CALENDAR_DATA[e][n];return r},daysInMonth:function(e,t){return e.year&&(t=e.month(),e=e.year()),this._validate(e,t,this.minDay,ww.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[e]=="undefined"?this.daysPerMonth[t-1]:this.NEPALI_CALENDAR_DATA[e][t]},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==6},toJD:function(e,t,r){var n=this._validate(e,t,r,ww.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=ww.instance(),a=0,o=t,s=e;this._createMissingCalendarData(e);var l=e-(o>9||o===9&&r>=this.NEPALI_CALENDAR_DATA[s][0]?56:57);for(t!==9&&(a=r,o--);o!==9;)o<=0&&(o=12,s--),a+=this.NEPALI_CALENDAR_DATA[s][o],o--;return t===9?(a+=r-this.NEPALI_CALENDAR_DATA[s][0],a<0&&(a+=i.daysInYear(l))):a+=this.NEPALI_CALENDAR_DATA[s][9]-this.NEPALI_CALENDAR_DATA[s][0],i.newDate(l,1,1).add(a,"d").toJD()},fromJD:function(e){var t=ww.instance(),r=t.fromJD(e),n=r.year(),i=r.dayOfYear(),a=n+56;this._createMissingCalendarData(a);for(var o=9,s=this.NEPALI_CALENDAR_DATA[a][0],l=this.NEPALI_CALENDAR_DATA[a][o]-s+1;i>l;)o++,o>12&&(o=1,a++),l+=this.NEPALI_CALENDAR_DATA[a][o];var u=this.NEPALI_CALENDAR_DATA[a][o]-(l-i);return this.newDate(a,o,u)},_createMissingCalendarData:function(e){var t=this.daysPerMonth.slice(0);t.unshift(17);for(var r=e-1;r<e+2;r++)typeof this.NEPALI_CALENDAR_DATA[r]=="undefined"&&(this.NEPALI_CALENDAR_DATA[r]=t)},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]}});ww.calendars.nepali=lQ});var N$e=ye(()=>{var $A=Sv(),wQt=bh();function E9(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}E9.prototype=new $A.baseCalendar;wQt(E9.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","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(e){var t=this._validate(e,this.minMonth,this.minDay,$A.local.invalidYear);return((t.year()-(t.year()>0?474:473))%2820+474+38)*682%2816<682},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-((n.dayOfWeek()+1)%7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,$A.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===12&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,$A.local.invalidDate);e=n.year(),t=n.month(),r=n.day();var i=e-(e>=0?474:473),a=474+uQ(i,2820);return r+(t<=7?(t-1)*31:(t-1)*30+6)+Math.floor((a*682-110)/2816)+(a-1)*365+Math.floor(i/2820)*1029983+this.jdEpoch-1},fromJD:function(e){e=Math.floor(e)+.5;var t=e-this.toJD(475,1,1),r=Math.floor(t/1029983),n=uQ(t,1029983),i=2820;if(n!==1029982){var a=Math.floor(n/366),o=uQ(n,366);i=Math.floor((2134*a+2816*o+2815)/1028522)+a+1}var s=i+2820*r+474;s=s<=0?s-1:s;var l=e-this.toJD(s,1,1)+1,u=l<=186?Math.ceil(l/31):Math.ceil((l-6)/30),c=e-this.toJD(s,u,1)+1;return this.newDate(s,u,c)}});function uQ(e,t){return e-t*Math.floor(e/t)}$A.calendars.persian=E9;$A.calendars.jalali=E9});var U$e=ye(()=>{var Tw=Sv(),TQt=bh(),k9=Tw.instance();function cQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}cQ.prototype=new Tw.baseCalendar;TQt(cQ.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Tw.local.invalidYear),r=this._t2gYear(t.year());return k9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Tw.local.invalidYear),i=this._t2gYear(n.year());return k9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Tw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Tw.local.invalidDate),i=this._t2gYear(n.year());return k9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=k9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)},_g2tYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)}});Tw.calendars.taiwan=cQ});var V$e=ye(()=>{var Aw=Sv(),AQt=bh(),C9=Aw.instance();function fQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}fQ.prototype=new Aw.baseCalendar;AQt(fQ.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(r){var t=this._validate(r,this.minMonth,this.minDay,Aw.local.invalidYear),r=this._t2gYear(t.year());return C9.leapYear(r)},weekOfYear:function(i,t,r){var n=this._validate(i,this.minMonth,this.minDay,Aw.local.invalidYear),i=this._t2gYear(n.year());return C9.weekOfYear(i,n.month(),n.day())},daysInMonth:function(e,t){var r=this._validate(e,t,this.minDay,Aw.local.invalidMonth);return this.daysPerMonth[r.month()-1]+(r.month()===2&&this.leapYear(r.year())?1:0)},weekDay:function(e,t,r){return(this.dayOfWeek(e,t,r)||7)<6},toJD:function(i,t,r){var n=this._validate(i,t,r,Aw.local.invalidDate),i=this._t2gYear(n.year());return C9.toJD(i,n.month(),n.day())},fromJD:function(e){var t=C9.fromJD(e),r=this._g2tYear(t.year());return this.newDate(r,t.month(),t.day())},_t2gYear:function(e){return e-this.yearsOffset-(e>=1&&e<=this.yearsOffset?1:0)},_g2tYear:function(e){return e+this.yearsOffset+(e>=-this.yearsOffset&&e<=-1?1:0)}});Aw.calendars.thai=fQ});var H$e=ye(()=>{var Sw=Sv(),SQt=bh();function hQ(e){this.local=this.regionalOptions[e||""]||this.regionalOptions[""]}hQ.prototype=new Sw.baseCalendar;SQt(hQ.prototype,{name:"UmmAlQura",hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Umm al-Qura",epochs:["BH","AH"],monthNames:["Al-Muharram","Safar","Rabi' al-awwal","Rabi' Al-Thani","Jumada Al-Awwal","Jumada Al-Thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-Ahad","Yawm al-Ithnain","Yawm al-Thal\u0101th\u0101\u2019","Yawm al-Arba\u2018\u0101\u2019","Yawm al-Kham\u012Bs","Yawm al-Jum\u2018a","Yawm al-Sabt"],dayNamesMin:["Ah","Ith","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!0}},leapYear:function(e){var t=this._validate(e,this.minMonth,this.minDay,Sw.local.invalidYear);return this.daysInYear(t.year())===355},weekOfYear:function(e,t,r){var n=this.newDate(e,t,r);return n.add(-n.dayOfWeek(),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInYear:function(e){for(var t=0,r=1;r<=12;r++)t+=this.daysInMonth(e,r);return t},daysInMonth:function(e,t){for(var r=this._validate(e,t,this.minDay,Sw.local.invalidMonth),n=r.toJD()-24e5+.5,i=0,a=0;a<Bx.length;a++){if(Bx[a]>n)return Bx[i]-Bx[i-1];i++}return 30},weekDay:function(e,t,r){return this.dayOfWeek(e,t,r)!==5},toJD:function(e,t,r){var n=this._validate(e,t,r,Sw.local.invalidDate),i=12*(n.year()-1)+n.month()-15292,a=n.day()+Bx[i-1]-1;return a+24e5-.5},fromJD:function(e){for(var t=e-24e5+.5,r=0,n=0;n<Bx.length&&!(Bx[n]>t);n++)r++;var i=r+15292,a=Math.floor((i-1)/12),o=a+1,s=i-12*a,l=t-Bx[r-1]+1;return this.newDate(o,s,l)},isValid:function(e,t,r){var n=Sw.baseCalendar.prototype.isValid.apply(this,arguments);return n&&(e=e.year!=null?e.year:e,n=e>=1276&&e<=1500),n},_validate:function(e,t,r,n){var i=Sw.baseCalendar.prototype._validate.apply(this,arguments);if(i.year<1276||i.year>1500)throw n.replace(/\{0\}/,this.local.name);return i}});Sw.calendars.ummalqura=hQ;var Bx=[20,50,79,109,138,168,197,227,256,286,315,345,374,404,433,463,492,522,551,581,611,641,670,700,729,759,788,818,847,877,906,936,965,995,1024,1054,1083,1113,1142,1172,1201,1231,1260,1290,1320,1350,1379,1409,1438,1468,1497,1527,1556,1586,1615,1645,1674,1704,1733,1763,1792,1822,1851,1881,1910,1940,1969,1999,2028,2058,2087,2117,2146,2176,2205,2235,2264,2294,2323,2353,2383,2413,2442,2472,2501,2531,2560,2590,2619,2649,2678,2708,2737,2767,2796,2826,2855,2885,2914,2944,2973,3003,3032,3062,3091,3121,3150,3180,3209,3239,3268,3298,3327,3357,3386,3416,3446,3476,3505,3535,3564,3594,3623,3653,3682,3712,3741,3771,3800,3830,3859,3889,3918,3948,3977,4007,4036,4066,4095,4125,4155,4185,4214,4244,4273,4303,4332,4362,4391,4421,4450,4480,4509,4539,4568,4598,4627,4657,4686,4716,4745,4775,4804,4834,4863,4893,4922,4952,4981,5011,5040,5070,5099,5129,5158,5188,5218,5248,5277,5307,5336,5366,5395,5425,5454,5484,5513,5543,5572,5602,5631,5661,5690,5720,5749,5779,5808,5838,5867,5897,5926,5956,5985,6015,6044,6074,6103,6133,6162,6192,6221,6251,6281,6311,6340,6370,6399,6429,6458,6488,6517,6547,6576,6606,6635,6665,6694,6724,6753,6783,6812,6842,6871,6901,6930,6960,6989,7019,7048,7078,7107,7137,7166,7196,7225,7255,7284,7314,7344,7374,7403,7433,7462,7492,7521,7551,7580,7610,7639,7669,7698,7728,7757,7787,7816,7846,7875,7905,7934,7964,7993,8023,8053,8083,8112,8142,8171,8201,8230,8260,8289,8319,8348,8378,8407,8437,8466,8496,8525,8555,8584,8614,8643,8673,8702,8732,8761,8791,8821,8850,8880,8909,8938,8968,8997,9027,9056,9086,9115,9145,9175,9205,9234,9264,9293,9322,9352,9381,9410,9440,9470,9499,9529,9559,9589,9618,9648,9677,9706,9736,9765,9794,9824,9853,9883,9913,9943,9972,10002,10032,10061,10090,10120,10149,10178,10208,10237,10267,10297,10326,10356,10386,10415,10445,10474,10504,10533,10562,10592,10621,10651,10680,10710,10740,10770,10799,10829,10858,10888,10917,10947,10976,11005,11035,11064,11094,11124,11153,11183,11213,11242,11272,11301,11331,11360,11389,11419,11448,11478,11507,11537,11567,11596,11626,11655,11685,11715,11744,11774,11803,11832,11862,11891,11921,11950,11980,12010,12039,12069,12099,12128,12158,12187,12216,12246,12275,12304,12334,12364,12393,12423,12453,12483,12512,12542,12571,12600,12630,12659,12688,12718,12747,12777,12807,12837,12866,12896,12926,12955,12984,13014,13043,13072,13102,13131,13161,13191,13220,13250,13280,13310,13339,13368,13398,13427,13456,13486,13515,13545,13574,13604,13634,13664,13693,13723,13752,13782,13811,13840,13870,13899,13929,13958,13988,14018,14047,14077,14107,14136,14166,14195,14224,14254,14283,14313,14342,14372,14401,14431,14461,14490,14520,14550,14579,14609,14638,14667,14697,14726,14756,14785,14815,14844,14874,14904,14933,14963,14993,15021,15051,15081,15110,15140,15169,15199,15228,15258,15287,15317,15347,15377,15406,15436,15465,15494,15524,15553,15582,15612,15641,15671,15701,15731,15760,15790,15820,15849,15878,15908,15937,15966,15996,16025,16055,16085,16114,16144,16174,16204,16233,16262,16292,16321,16350,16380,16409,16439,16468,16498,16528,16558,16587,16617,16646,16676,16705,16734,16764,16793,16823,16852,16882,16912,16941,16971,17001,17030,17060,17089,17118,17148,17177,17207,17236,17266,17295,17325,17355,17384,17414,17444,17473,17502,17532,17561,17591,17620,17650,17679,17709,17738,17768,17798,17827,17857,17886,17916,17945,17975,18004,18034,18063,18093,18122,18152,18181,18211,18241,18270,18300,18330,18359,18388,18418,18447,18476,18506,18535,18565,18595,18625,18654,18684,18714,18743,18772,18802,18831,18860,18890,18919,18949,18979,19008,19038,19068,19098,19127,19156,19186,19215,19244,19274,19303,19333,19362,19392,19422,19452,19481,19511,19540,19570,19599,19628,19658,19687,19717,19746,19776,19806,19836,19865,19895,19924,19954,19983,20012,20042,20071,20101,20130,20160,20190,20219,20249,20279,20308,20338,20367,20396,20426,20455,20485,20514,20544,20573,20603,20633,20662,20692,20721,20751,20780,20810,20839,20869,20898,20928,20957,20987,21016,21046,21076,21105,21135,21164,21194,21223,21253,21282,21312,21341,21371,21400,21430,21459,21489,21519,21548,21578,21607,21637,21666,21696,21725,21754,21784,21813,21843,21873,21902,21932,21962,21991,22021,22050,22080,22109,22138,22168,22197,22227,22256,22286,22316,22346,22375,22405,22434,22464,22493,22522,22552,22581,22611,22640,22670,22700,22730,22759,22789,22818,22848,22877,22906,22936,22965,22994,23024,23054,23083,23113,23143,23173,23202,23232,23261,23290,23320,23349,23379,23408,23438,23467,23497,23527,23556,23586,23616,23645,23674,23704,23733,23763,23792,23822,23851,23881,23910,23940,23970,23999,24029,24058,24088,24117,24147,24176,24206,24235,24265,24294,24324,24353,24383,24413,24442,24472,24501,24531,24560,24590,24619,24648,24678,24707,24737,24767,24796,24826,24856,24885,24915,24944,24974,25003,25032,25062,25091,25121,25150,25180,25210,25240,25269,25299,25328,25358,25387,25416,25446,25475,25505,25534,25564,25594,25624,25653,25683,25712,25742,25771,25800,25830,25859,25888,25918,25948,25977,26007,26037,26067,26096,26126,26155,26184,26214,26243,26272,26302,26332,26361,26391,26421,26451,26480,26510,26539,26568,26598,26627,26656,26686,26715,26745,26775,26805,26834,26864,26893,26923,26952,26982,27011,27041,27070,27099,27129,27159,27188,27218,27248,27277,27307,27336,27366,27395,27425,27454,27484,27513,27542,27572,27602,27631,27661,27691,27720,27750,27779,27809,27838,27868,27897,27926,27956,27985,28015,28045,28074,28104,28134,28163,28193,28222,28252,28281,28310,28340,28369,28399,28428,28458,28488,28517,28547,28577,28607,28636,28665,28695,28724,28754,28783,28813,28843,28872,28901,28931,28960,28990,29019,29049,29078,29108,29137,29167,29196,29226,29255,29285,29315,29345,29375,29404,29434,29463,29492,29522,29551,29580,29610,29640,29669,29699,29729,29759,29788,29818,29847,29876,29906,29935,29964,29994,30023,30053,30082,30112,30141,30171,30200,30230,30259,30289,30318,30348,30378,30408,30437,30467,30496,30526,30555,30585,30614,30644,30673,30703,30732,30762,30791,30821,30850,30880,30909,30939,30968,30998,31027,31057,31086,31116,31145,31175,31204,31234,31263,31293,31322,31352,31381,31411,31441,31471,31500,31530,31559,31589,31618,31648,31676,31706,31736,31766,31795,31825,31854,31884,31913,31943,31972,32002,32031,32061,32090,32120,32150,32180,32209,32239,32268,32298,32327,32357,32386,32416,32445,32475,32504,32534,32563,32593,32622,32652,32681,32711,32740,32770,32799,32829,32858,32888,32917,32947,32976,33006,33035,33065,33094,33124,33153,33183,33213,33243,33272,33302,33331,33361,33390,33420,33450,33479,33509,33539,33568,33598,33627,33657,33686,33716,33745,33775,33804,33834,33863,33893,33922,33952,33981,34011,34040,34069,34099,34128,34158,34187,34217,34247,34277,34306,34336,34365,34395,34424,34454,34483,34512,34542,34571,34601,34631,34660,34690,34719,34749,34778,34808,34837,34867,34896,34926,34955,34985,35015,35044,35074,35103,35133,35162,35192,35222,35251,35280,35310,35340,35370,35399,35429,35458,35488,35517,35547,35576,35605,35635,35665,35694,35723,35753,35782,35811,35841,35871,35901,35930,35960,35989,36019,36048,36078,36107,36136,36166,36195,36225,36254,36284,36314,36343,36373,36403,36433,36462,36492,36521,36551,36580,36610,36639,36669,36698,36728,36757,36786,36816,36845,36875,36904,36934,36963,36993,37022,37052,37081,37111,37141,37170,37200,37229,37259,37288,37318,37347,37377,37406,37436,37465,37495,37524,37554,37584,37613,37643,37672,37701,37731,37760,37790,37819,37849,37878,37908,37938,37967,37997,38027,38056,38085,38115,38144,38174,38203,38233,38262,38292,38322,38351,38381,38410,38440,38469,38499,38528,38558,38587,38617,38646,38676,38705,38735,38764,38794,38823,38853,38882,38912,38941,38971,39001,39030,39059,39089,39118,39148,39178,39208,39237,39267,39297,39326,39355,39385,39414,39444,39473,39503,39532,39562,39592,39621,39650,39680,39709,39739,39768,39798,39827,39857,39886,39916,39946,39975,40005,40035,40064,40094,40123,40153,40182,40212,40241,40271,40300,40330,40359,40389,40418,40448,40477,40507,40536,40566,40595,40625,40655,40685,40714,40744,40773,40803,40832,40862,40892,40921,40951,40980,41009,41039,41068,41098,41127,41157,41186,41216,41245,41275,41304,41334,41364,41393,41422,41452,41481,41511,41540,41570,41599,41629,41658,41688,41718,41748,41777,41807,41836,41865,41894,41924,41953,41983,42012,42042,42072,42102,42131,42161,42190,42220,42249,42279,42308,42337,42367,42397,42426,42456,42485,42515,42545,42574,42604,42633,42662,42692,42721,42751,42780,42810,42839,42869,42899,42929,42958,42988,43017,43046,43076,43105,43135,43164,43194,43223,43253,43283,43312,43342,43371,43401,43430,43460,43489,43519,43548,43578,43607,43637,43666,43696,43726,43755,43785,43814,43844,43873,43903,43932,43962,43991,44021,44050,44080,44109,44139,44169,44198,44228,44258,44287,44317,44346,44375,44405,44434,44464,44493,44523,44553,44582,44612,44641,44671,44700,44730,44759,44788,44818,44847,44877,44906,44936,44966,44996,45025,45055,45084,45114,45143,45172,45202,45231,45261,45290,45320,45350,45380,45409,45439,45468,45498,45527,45556,45586,45615,45644,45674,45704,45733,45763,45793,45823,45852,45882,45911,45940,45970,45999,46028,46058,46088,46117,46147,46177,46206,46236,46265,46295,46324,46354,46383,46413,46442,46472,46501,46531,46560,46590,46620,46649,46679,46708,46738,46767,46797,46826,46856,46885,46915,46944,46974,47003,47033,47063,47092,47122,47151,47181,47210,47240,47269,47298,47328,47357,47387,47417,47446,47476,47506,47535,47565,47594,47624,47653,47682,47712,47741,47771,47800,47830,47860,47890,47919,47949,47978,48008,48037,48066,48096,48125,48155,48184,48214,48244,48273,48303,48333,48362,48392,48421,48450,48480,48509,48538,48568,48598,48627,48657,48687,48717,48746,48776,48805,48834,48864,48893,48922,48952,48982,49011,49041,49071,49100,49130,49160,49189,49218,49248,49277,49306,49336,49365,49395,49425,49455,49484,49514,49543,49573,49602,49632,49661,49690,49720,49749,49779,49809,49838,49868,49898,49927,49957,49986,50016,50045,50075,50104,50133,50163,50192,50222,50252,50281,50311,50340,50370,50400,50429,50459,50488,50518,50547,50576,50606,50635,50665,50694,50724,50754,50784,50813,50843,50872,50902,50931,50960,50990,51019,51049,51078,51108,51138,51167,51197,51227,51256,51286,51315,51345,51374,51403,51433,51462,51492,51522,51552,51582,51611,51641,51670,51699,51729,51758,51787,51816,51846,51876,51906,51936,51965,51995,52025,52054,52083,52113,52142,52171,52200,52230,52260,52290,52319,52349,52379,52408,52438,52467,52497,52526,52555,52585,52614,52644,52673,52703,52733,52762,52792,52822,52851,52881,52910,52939,52969,52998,53028,53057,53087,53116,53146,53176,53205,53235,53264,53294,53324,53353,53383,53412,53441,53471,53500,53530,53559,53589,53619,53648,53678,53708,53737,53767,53796,53825,53855,53884,53913,53943,53973,54003,54032,54062,54092,54121,54151,54180,54209,54239,54268,54297,54327,54357,54387,54416,54446,54476,54505,54535,54564,54593,54623,54652,54681,54711,54741,54770,54800,54830,54859,54889,54919,54948,54977,55007,55036,55066,55095,55125,55154,55184,55213,55243,55273,55302,55332,55361,55391,55420,55450,55479,55508,55538,55567,55597,55627,55657,55686,55716,55745,55775,55804,55834,55863,55892,55922,55951,55981,56011,56040,56070,56100,56129,56159,56188,56218,56247,56276,56306,56335,56365,56394,56424,56454,56483,56513,56543,56572,56601,56631,56660,56690,56719,56749,56778,56808,56837,56867,56897,56926,56956,56985,57015,57044,57074,57103,57133,57162,57192,57221,57251,57280,57310,57340,57369,57399,57429,57458,57487,57517,57546,57576,57605,57634,57664,57694,57723,57753,57783,57813,57842,57871,57901,57930,57959,57989,58018,58048,58077,58107,58137,58167,58196,58226,58255,58285,58314,58343,58373,58402,58432,58461,58491,58521,58551,58580,58610,58639,58669,58698,58727,58757,58786,58816,58845,58875,58905,58934,58964,58994,59023,59053,59082,59111,59141,59170,59200,59229,59259,59288,59318,59348,59377,59407,59436,59466,59495,59525,59554,59584,59613,59643,59672,59702,59731,59761,59791,59820,59850,59879,59909,59939,59968,59997,60027,60056,60086,60115,60145,60174,60204,60234,60264,60293,60323,60352,60381,60411,60440,60469,60499,60528,60558,60588,60618,60648,60677,60707,60736,60765,60795,60824,60853,60883,60912,60942,60972,61002,61031,61061,61090,61120,61149,61179,61208,61237,61267,61296,61326,61356,61385,61415,61445,61474,61504,61533,61563,61592,61621,61651,61680,61710,61739,61769,61799,61828,61858,61888,61917,61947,61976,62006,62035,62064,62094,62123,62153,62182,62212,62242,62271,62301,62331,62360,62390,62419,62448,62478,62507,62537,62566,62596,62625,62655,62685,62715,62744,62774,62803,62832,62862,62891,62921,62950,62980,63009,63039,63069,63099,63128,63157,63187,63216,63246,63275,63305,63334,63363,63393,63423,63453,63482,63512,63541,63571,63600,63630,63659,63689,63718,63747,63777,63807,63836,63866,63895,63925,63955,63984,64014,64043,64073,64102,64131,64161,64190,64220,64249,64279,64309,64339,64368,64398,64427,64457,64486,64515,64545,64574,64603,64633,64663,64692,64722,64752,64782,64811,64841,64870,64899,64929,64958,64987,65017,65047,65076,65106,65136,65166,65195,65225,65254,65283,65313,65342,65371,65401,65431,65460,65490,65520,65549,65579,65608,65638,65667,65697,65726,65755,65785,65815,65844,65874,65903,65933,65963,65992,66022,66051,66081,66110,66140,66169,66199,66228,66258,66287,66317,66346,66376,66405,66435,66465,66494,66524,66553,66583,66612,66641,66671,66700,66730,66760,66789,66819,66849,66878,66908,66937,66967,66996,67025,67055,67084,67114,67143,67173,67203,67233,67262,67292,67321,67351,67380,67409,67439,67468,67497,67527,67557,67587,67617,67646,67676,67705,67735,67764,67793,67823,67852,67882,67911,67941,67971,68e3,68030,68060,68089,68119,68148,68177,68207,68236,68266,68295,68325,68354,68384,68414,68443,68473,68502,68532,68561,68591,68620,68650,68679,68708,68738,68768,68797,68827,68857,68886,68916,68946,68975,69004,69034,69063,69092,69122,69152,69181,69211,69240,69270,69300,69330,69359,69388,69418,69447,69476,69506,69535,69565,69595,69624,69654,69684,69713,69743,69772,69802,69831,69861,69890,69919,69949,69978,70008,70038,70067,70097,70126,70156,70186,70215,70245,70274,70303,70333,70362,70392,70421,70451,70481,70510,70540,70570,70599,70629,70658,70687,70717,70746,70776,70805,70835,70864,70894,70924,70954,70983,71013,71042,71071,71101,71130,71159,71189,71218,71248,71278,71308,71337,71367,71397,71426,71455,71485,71514,71543,71573,71602,71632,71662,71691,71721,71751,71781,71810,71839,71869,71898,71927,71957,71986,72016,72046,72075,72105,72135,72164,72194,72223,72253,72282,72311,72341,72370,72400,72429,72459,72489,72518,72548,72577,72607,72637,72666,72695,72725,72754,72784,72813,72843,72872,72902,72931,72961,72991,73020,73050,73080,73109,73139,73168,73197,73227,73256,73286,73315,73345,73375,73404,73434,73464,73493,73523,73552,73581,73611,73640,73669,73699,73729,73758,73788,73818,73848,73877,73907,73936,73965,73995,74024,74053,74083,74113,74142,74172,74202,74231,74261,74291,74320,74349,74379,74408,74437,74467,74497,74526,74556,74586,74615,74645,74675,74704,74733,74763,74792,74822,74851,74881,74910,74940,74969,74999,75029,75058,75088,75117,75147,75176,75206,75235,75264,75294,75323,75353,75383,75412,75442,75472,75501,75531,75560,75590,75619,75648,75678,75707,75737,75766,75796,75826,75856,75885,75915,75944,75974,76003,76032,76062,76091,76121,76150,76180,76210,76239,76269,76299,76328,76358,76387,76416,76446,76475,76505,76534,76564,76593,76623,76653,76682,76712,76741,76771,76801,76830,76859,76889,76918,76948,76977,77007,77036,77066,77096,77125,77155,77185,77214,77243,77273,77302,77332,77361,77390,77420,77450,77479,77509,77539,77569,77598,77627,77657,77686,77715,77745,77774,77804,77833,77863,77893,77923,77952,77982,78011,78041,78070,78099,78129,78158,78188,78217,78247,78277,78307,78336,78366,78395,78425,78454,78483,78513,78542,78572,78601,78631,78661,78690,78720,78750,78779,78808,78838,78867,78897,78926,78956,78985,79015,79044,79074,79104,79133,79163,79192,79222,79251,79281,79310,79340,79369,79399,79428,79458,79487,79517,79546,79576,79606,79635,79665,79695,79724,79753,79783,79812,79841,79871,79900,79930,79960,79990]});var j$e=ye((_2r,G$e)=>{"use strict";G$e.exports=Sv();E$e();k$e();C$e();L$e();P$e();I$e();R$e();D$e();F$e();O$e();B$e();N$e();U$e();V$e();H$e()});var $$e=ye((x2r,J$e)=>{"use strict";var Z$e=j$e(),lC=Mr(),X$e=es(),MQt=X$e.EPOCHJD,EQt=X$e.ONEDAY,pQ={valType:"enumerated",values:lC.sortObjectKeys(Z$e.calendars),editType:"calc",dflt:"gregorian"},Y$e=function(e,t,r,n){var i={};return i[r]=pQ,lC.coerce(e,t,i,r,n)},kQt=function(e,t,r,n){for(var i=0;i<r.length;i++)Y$e(e,t,r[i]+"calendar",n.calendar)},CQt={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"},LQt={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"},PQt={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"]},L9="##",IQt={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:L9,w:L9,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};function RQt(e,t,r){for(var n=Math.floor((t+.05)/EQt)+MQt,i=K$e(r).fromJD(n),a=0,o,s,l,u,c;(a=e.indexOf("%",a))!==-1;)o=e.charAt(a+1),o==="0"||o==="-"||o==="_"?(l=3,s=e.charAt(a+2),o==="_"&&(o="-")):(s=o,o="0",l=2),u=IQt[s],u?(u===L9?c=L9:c=i.formatDate(u[o]),e=e.substr(0,a)+c+e.substr(a+l),a+=c.length):a+=l;return e}var W$e={};function K$e(e){var t=W$e[e];return t||(t=W$e[e]=Z$e.instance(e),t)}function uC(e){return lC.extendFlat({},pQ,{description:e})}function gQ(e){return"Sets the calendar system to use with `"+e+"` date data."}var vQ={xcalendar:uC(gQ("x"))},iy=lC.extendFlat({},vQ,{ycalendar:uC(gQ("y"))}),dQ=lC.extendFlat({},iy,{zcalendar:uC(gQ("z"))}),QA=uC(["Sets the calendar system to use for `range` and `tick0`","if this is a date axis. This does not set the calendar for","interpreting data on this axis, that's specified in the trace","or via the global `layout.calendar`"].join(" "));J$e.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:iy,bar:iy,box:iy,heatmap:iy,contour:iy,histogram:iy,histogram2d:iy,histogram2dcontour:iy,scatter3d:dQ,surface:dQ,mesh3d:dQ,scattergl:iy,ohlc:vQ,candlestick:vQ},layout:{calendar:uC(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:QA},yaxis:{calendar:QA},scene:{xaxis:{calendar:QA},yaxis:{calendar:QA},zaxis:{calendar:QA}},polar:{radialaxis:{calendar:QA}}}},layoutAttributes:pQ,handleDefaults:Y$e,handleTraceDefaults:kQt,CANONICAL_SUNDAY:LQt,CANONICAL_TICK:CQt,DFLTRANGE:PQt,getCal:K$e,worldCalFmt:RQt}});var eQe=ye((b2r,Q$e)=>{"use strict";Q$e.exports=$$e()});var DQt=ye((w2r,rQe)=>{var tQe=Wme();tQe.register([Xye(),z1e(),Z_e(),dxe(),Mxe(),wbe(),zbe(),b2e(),K2e(),Pwe(),m3e(),j4e(),REe(),TCe(),c6e(),N6e(),uLe(),RPe(),$Pe(),gIe(),kIe(),VIe(),i8e(),_8e(),WRe(),hDe(),EOe(),EBe(),qNe(),lUe(),mVe(),IVe(),rHe(),dGe(),kGe(),$Ge(),oWe(),LWe(),fZe(),RXe(),rYe(),TYe(),YYe(),uKe(),sJe(),SJe(),GJe(),A$e(),eQe()]);rQe.exports=tQe});return DQt();})();
+/*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ */
+/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
+/*!
+ * Determine if an object is a Buffer
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ */
+/*!
+ * pad-left <https://github.com/jonschlinkert/pad-left>
+ *
+ * Copyright (c) 2014-2015, Jon Schlinkert.
+ * Licensed under the MIT license.
+ */
+/*!
+ * repeat-string <https://github.com/jonschlinkert/repeat-string>
+ *
+ * Copyright (c) 2014-2015, Jon Schlinkert.
+ * Licensed under the MIT License.
+ */
+/*! Bundled license information:
+
+native-promise-only/lib/npo.src.js:
+ (*! Native Promise Only
+ v0.8.1 (c) Kyle Simpson
+ MIT License: http://getify.mit-license.org
+ *)
+
+polybooljs/index.js:
+ (*
+ * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc
+ * @license MIT
+ * @preserve Project Home: https://github.com/voidqk/polybooljs
+ *)
+
+ieee754/index.js:
+ (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+
+buffer/index.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ *)
+
+safe-buffer/index.js:
+ (*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+
+assert/build/internal/util/comparisons.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
+ * @license MIT
+ *)
+
+object-assign/index.js:
+ (*
+ object-assign
+ (c) Sindre Sorhus
+ @license MIT
+ *)
+
+maplibre-gl/dist/maplibre-gl.js:
+ (**
+ * MapLibre GL JS
+ * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt
+ *)
+*/
+
+window.Plotly = Plotly;
+return Plotly;
+})); \ No newline at end of file
diff --git a/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js b/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js
new file mode 100644
index 0000000..c9806b0
--- /dev/null
+++ b/venv/lib/python3.8/site-packages/plotly/package_data/widgetbundle.js
@@ -0,0 +1,3906 @@
+var OW=Object.create;var jC=Object.defineProperty;var BW=Object.getOwnPropertyDescriptor;var NW=Object.getOwnPropertyNames;var UW=Object.getPrototypeOf,jW=Object.prototype.hasOwnProperty;var VW=(le,me)=>()=>(me||le((me={exports:{}}).exports,me),me.exports);var qW=(le,me,Xe,Mt)=>{if(me&&typeof me=="object"||typeof me=="function")for(let rr of NW(me))!jW.call(le,rr)&&rr!==Xe&&jC(le,rr,{get:()=>me[rr],enumerable:!(Mt=BW(me,rr))||Mt.enumerable});return le};var HW=(le,me,Xe)=>(Xe=le!=null?OW(UW(le)):{},qW(me||!le||!le.__esModule?jC(Xe,"default",{value:le,enumerable:!0}):Xe,le));var $8=VW((J8,l2)=>{(function(le,me){typeof l2=="object"&&l2.exports?l2.exports=me():le.moduleName=me()})(typeof self<"u"?self:J8,()=>{"use strict";var le=(()=>{var me=Object.create,Xe=Object.defineProperty,Mt=Object.defineProperties,rr=Object.getOwnPropertyDescriptor,Nr=Object.getOwnPropertyDescriptors,xa=Object.getOwnPropertyNames,Ha=Object.getOwnPropertySymbols,Za=Object.getPrototypeOf,un=Object.prototype.hasOwnProperty,Ji=Object.prototype.propertyIsEnumerable,gn=(X,H,g)=>H in X?Xe(X,H,{enumerable:!0,configurable:!0,writable:!0,value:g}):X[H]=g,wo=(X,H)=>{for(var g in H||(H={}))un.call(H,g)&&gn(X,g,H[g]);if(Ha)for(var g of Ha(H))Ji.call(H,g)&&gn(X,g,H[g]);return X},ps=(X,H)=>Mt(X,Nr(H)),Qn=(X,H)=>function(){return X&&(H=(0,X[xa(X)[0]])(X=0)),H},Ye=(X,H)=>function(){return H||(0,X[xa(X)[0]])((H={exports:{}}).exports,H),H.exports},Ps=(X,H)=>{for(var g in H)Xe(X,g,{get:H[g],enumerable:!0})},Ml=(X,H,g,x)=>{if(H&&typeof H=="object"||typeof H=="function")for(let A of xa(H))!un.call(X,A)&&A!==g&&Xe(X,A,{get:()=>H[A],enumerable:!(x=rr(H,A))||x.enumerable});return X},Ul=(X,H,g)=>(g=X!=null?me(Za(X)):{},Ml(H||!X||!X.__esModule?Xe(g,"default",{value:X,enumerable:!0}):g,X)),Hf=X=>Ml(Xe({},"__esModule",{value:!0}),X),xh=Ye({"src/version.js"(X){"use strict";X.version="3.0.1"}}),Bp=Ye({"node_modules/native-promise-only/lib/npo.src.js"(X,H){(function(x,A,M){A[x]=A[x]||M(),typeof H<"u"&&H.exports&&(H.exports=A[x])})("Promise",typeof window<"u"?window:X,function(){"use strict";var x,A,M,e=Object.prototype.toString,t=typeof setImmediate<"u"?function(_){return setImmediate(_)}:setTimeout;try{Object.defineProperty({},"x",{}),x=function(_,w,S,E){return Object.defineProperty(_,w,{value:S,writable:!0,configurable:E!==!1})}}catch{x=function(w,S,E){return w[S]=E,w}}M=function(){var _,w,S;function E(m,b){this.fn=m,this.self=b,this.next=void 0}return{add:function(b,d){S=new E(b,d),w?w.next=S:_=S,w=S,S=void 0},drain:function(){var b=_;for(_=w=A=void 0;b;)b.fn.call(b.self),b=b.next}}}();function r(l,_){M.add(l,_),A||(A=t(M.drain))}function o(l){var _,w=typeof l;return l!=null&&(w=="object"||w=="function")&&(_=l.then),typeof _=="function"?_:!1}function a(){for(var l=0;l<this.chain.length;l++)i(this,this.state===1?this.chain[l].success:this.chain[l].failure,this.chain[l]);this.chain.length=0}function i(l,_,w){var S,E;try{_===!1?w.reject(l.msg):(_===!0?S=l.msg:S=_.call(void 0,l.msg),S===w.promise?w.reject(TypeError("Promise-chain cycle")):(E=o(S))?E.call(S,w.resolve,w.reject):w.resolve(S))}catch(m){w.reject(m)}}function n(l){var _,w=this;if(!w.triggered){w.triggered=!0,w.def&&(w=w.def);try{(_=o(l))?r(function(){var S=new h(w);try{_.call(l,function(){n.apply(S,arguments)},function(){s.apply(S,arguments)})}catch(E){s.call(S,E)}}):(w.msg=l,w.state=1,w.chain.length>0&&r(a,w))}catch(S){s.call(new h(w),S)}}}function s(l){var _=this;_.triggered||(_.triggered=!0,_.def&&(_=_.def),_.msg=l,_.state=2,_.chain.length>0&&r(a,_))}function c(l,_,w,S){for(var E=0;E<_.length;E++)(function(b){l.resolve(_[b]).then(function(u){w(b,u)},S)})(E)}function h(l){this.def=l,this.triggered=!1}function v(l){this.promise=l,this.state=0,this.triggered=!1,this.chain=[],this.msg=void 0}function p(l){if(typeof l!="function")throw TypeError("Not a function");if(this.__NPO__!==0)throw TypeError("Not a promise");this.__NPO__=1;var _=new v(this);this.then=function(S,E){var m={success:typeof S=="function"?S:!0,failure:typeof E=="function"?E:!1};return m.promise=new this.constructor(function(d,u){if(typeof d!="function"||typeof u!="function")throw TypeError("Not a function");m.resolve=d,m.reject=u}),_.chain.push(m),_.state!==0&&r(a,_),m.promise},this.catch=function(S){return this.then(void 0,S)};try{l.call(void 0,function(S){n.call(_,S)},function(S){s.call(_,S)})}catch(w){s.call(_,w)}}var T=x({},"constructor",p,!1);return p.prototype=T,x(T,"__NPO__",0,!1),x(p,"resolve",function(_){var w=this;return _&&typeof _=="object"&&_.__NPO__===1?_:new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");E(_)})}),x(p,"reject",function(_){return new this(function(S,E){if(typeof S!="function"||typeof E!="function")throw TypeError("Not a function");E(_)})}),x(p,"all",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):_.length===0?w.resolve([]):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");var b=_.length,d=Array(b),u=0;c(w,_,function(f,P){d[f]=P,++u===b&&E(d)},m)})}),x(p,"race",function(_){var w=this;return e.call(_)!="[object Array]"?w.reject(TypeError("Not an array")):new w(function(E,m){if(typeof E!="function"||typeof m!="function")throw TypeError("Not a function");c(w,_,function(d,u){E(u)},m)})}),p})}}),_n=Ye({"node_modules/@plotly/d3/d3.js"(X,H){(function(){var g={version:"3.8.2"},x=[].slice,A=function(de){return x.call(de)},M=self.document;function e(de){return de&&(de.ownerDocument||de.document||de).documentElement}function t(de){return de&&(de.ownerDocument&&de.ownerDocument.defaultView||de.document&&de||de.defaultView)}if(M)try{A(M.documentElement.childNodes)[0].nodeType}catch{A=function(Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=Re[$e];return pt}}if(Date.now||(Date.now=function(){return+new Date}),M)try{M.createElement("DIV").style.setProperty("opacity",0,"")}catch{var r=this.Element.prototype,o=r.setAttribute,a=r.setAttributeNS,i=this.CSSStyleDeclaration.prototype,n=i.setProperty;r.setAttribute=function(Re,$e){o.call(this,Re,$e+"")},r.setAttributeNS=function(Re,$e,pt){a.call(this,Re,$e,pt+"")},i.setProperty=function(Re,$e,pt){n.call(this,Re,$e+"",pt)}}g.ascending=s;function s(de,Re){return de<Re?-1:de>Re?1:de>=Re?0:NaN}g.descending=function(de,Re){return Re<de?-1:Re>de?1:Re>=de?0:NaN},g.min=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&vt>wt&&(vt=wt)}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&vt>wt&&(vt=wt)}return vt},g.max=function(de,Re){var $e=-1,pt=de.length,vt,wt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&wt>vt&&(vt=wt)}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&wt>vt&&(vt=wt)}return vt},g.extent=function(de,Re){var $e=-1,pt=de.length,vt,wt,Jt;if(arguments.length===1){for(;++$e<pt;)if((wt=de[$e])!=null&&wt>=wt){vt=Jt=wt;break}for(;++$e<pt;)(wt=de[$e])!=null&&(vt>wt&&(vt=wt),Jt<wt&&(Jt=wt))}else{for(;++$e<pt;)if((wt=Re.call(de,de[$e],$e))!=null&&wt>=wt){vt=Jt=wt;break}for(;++$e<pt;)(wt=Re.call(de,de[$e],$e))!=null&&(vt>wt&&(vt=wt),Jt<wt&&(Jt=wt))}return[vt,Jt]};function c(de){return de===null?NaN:+de}function h(de){return!isNaN(de)}g.sum=function(de,Re){var $e=0,pt=de.length,vt,wt=-1;if(arguments.length===1)for(;++wt<pt;)h(vt=+de[wt])&&($e+=vt);else for(;++wt<pt;)h(vt=+Re.call(de,de[wt],wt))&&($e+=vt);return $e},g.mean=function(de,Re){var $e=0,pt=de.length,vt,wt=-1,Jt=pt;if(arguments.length===1)for(;++wt<pt;)h(vt=c(de[wt]))?$e+=vt:--Jt;else for(;++wt<pt;)h(vt=c(Re.call(de,de[wt],wt)))?$e+=vt:--Jt;if(Jt)return $e/Jt},g.quantile=function(de,Re){var $e=(de.length-1)*Re+1,pt=Math.floor($e),vt=+de[pt-1],wt=$e-pt;return wt?vt+wt*(de[pt]-vt):vt},g.median=function(de,Re){var $e=[],pt=de.length,vt,wt=-1;if(arguments.length===1)for(;++wt<pt;)h(vt=c(de[wt]))&&$e.push(vt);else for(;++wt<pt;)h(vt=c(Re.call(de,de[wt],wt)))&&$e.push(vt);if($e.length)return g.quantile($e.sort(s),.5)},g.variance=function(de,Re){var $e=de.length,pt=0,vt,wt,Jt=0,Rt=-1,or=0;if(arguments.length===1)for(;++Rt<$e;)h(vt=c(de[Rt]))&&(wt=vt-pt,pt+=wt/++or,Jt+=wt*(vt-pt));else for(;++Rt<$e;)h(vt=c(Re.call(de,de[Rt],Rt)))&&(wt=vt-pt,pt+=wt/++or,Jt+=wt*(vt-pt));if(or>1)return Jt/(or-1)},g.deviation=function(){var de=g.variance.apply(this,arguments);return de&&Math.sqrt(de)};function v(de){return{left:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt<vt;){var wt=pt+vt>>>1;de(Re[wt],$e)<0?pt=wt+1:vt=wt}return pt},right:function(Re,$e,pt,vt){for(arguments.length<3&&(pt=0),arguments.length<4&&(vt=Re.length);pt<vt;){var wt=pt+vt>>>1;de(Re[wt],$e)>0?vt=wt:pt=wt+1}return pt}}}var p=v(s);g.bisectLeft=p.left,g.bisect=g.bisectRight=p.right,g.bisector=function(de){return v(de.length===1?function(Re,$e){return s(de(Re),$e)}:de)},g.shuffle=function(de,Re,$e){(pt=arguments.length)<3&&($e=de.length,pt<2&&(Re=0));for(var pt=$e-Re,vt,wt;pt;)wt=Math.random()*pt--|0,vt=de[pt+Re],de[pt+Re]=de[wt+Re],de[wt+Re]=vt;return de},g.permute=function(de,Re){for(var $e=Re.length,pt=new Array($e);$e--;)pt[$e]=de[Re[$e]];return pt},g.pairs=function(de){for(var Re=0,$e=de.length-1,pt,vt=de[0],wt=new Array($e<0?0:$e);Re<$e;)wt[Re]=[pt=vt,vt=de[++Re]];return wt},g.transpose=function(de){if(!(wt=de.length))return[];for(var Re=-1,$e=g.min(de,T),pt=new Array($e);++Re<$e;)for(var vt=-1,wt,Jt=pt[Re]=new Array(wt);++vt<wt;)Jt[vt]=de[vt][Re];return pt};function T(de){return de.length}g.zip=function(){return g.transpose(arguments)},g.keys=function(de){var Re=[];for(var $e in de)Re.push($e);return Re},g.values=function(de){var Re=[];for(var $e in de)Re.push(de[$e]);return Re},g.entries=function(de){var Re=[];for(var $e in de)Re.push({key:$e,value:de[$e]});return Re},g.merge=function(de){for(var Re=de.length,$e,pt=-1,vt=0,wt,Jt;++pt<Re;)vt+=de[pt].length;for(wt=new Array(vt);--Re>=0;)for(Jt=de[Re],$e=Jt.length;--$e>=0;)wt[--vt]=Jt[$e];return wt};var l=Math.abs;g.range=function(de,Re,$e){if(arguments.length<3&&($e=1,arguments.length<2&&(Re=de,de=0)),(Re-de)/$e===1/0)throw new Error("infinite range");var pt=[],vt=_(l($e)),wt=-1,Jt;if(de*=vt,Re*=vt,$e*=vt,$e<0)for(;(Jt=de+$e*++wt)>Re;)pt.push(Jt/vt);else for(;(Jt=de+$e*++wt)<Re;)pt.push(Jt/vt);return pt};function _(de){for(var Re=1;de*Re%1;)Re*=10;return Re}function w(de,Re){for(var $e in Re)Object.defineProperty(de.prototype,$e,{value:Re[$e],enumerable:!1})}g.map=function(de,Re){var $e=new S;if(de instanceof S)de.forEach(function(Rt,or){$e.set(Rt,or)});else if(Array.isArray(de)){var pt=-1,vt=de.length,wt;if(arguments.length===1)for(;++pt<vt;)$e.set(pt,de[pt]);else for(;++pt<vt;)$e.set(Re.call(de,wt=de[pt],pt),wt)}else for(var Jt in de)$e.set(Jt,de[Jt]);return $e};function S(){this._=Object.create(null)}var E="__proto__",m="\0";w(S,{has:u,get:function(de){return this._[b(de)]},set:function(de,Re){return this._[b(de)]=Re},remove:y,keys:f,values:function(){var de=[];for(var Re in this._)de.push(this._[Re]);return de},entries:function(){var de=[];for(var Re in this._)de.push({key:d(Re),value:this._[Re]});return de},size:P,empty:L,forEach:function(de){for(var Re in this._)de.call(this,d(Re),this._[Re])}});function b(de){return(de+="")===E||de[0]===m?m+de:de}function d(de){return(de+="")[0]===m?de.slice(1):de}function u(de){return b(de)in this._}function y(de){return(de=b(de))in this._&&delete this._[de]}function f(){var de=[];for(var Re in this._)de.push(d(Re));return de}function P(){var de=0;for(var Re in this._)++de;return de}function L(){for(var de in this._)return!1;return!0}g.nest=function(){var de={},Re=[],$e=[],pt,vt;function wt(Rt,or,Dr){if(Dr>=Re.length)return vt?vt.call(de,or):pt?or.sort(pt):or;for(var Or=-1,va=or.length,fa=Re[Dr++],Va,Xa,_a,Ra=new S,Na;++Or<va;)(Na=Ra.get(Va=fa(Xa=or[Or])))?Na.push(Xa):Ra.set(Va,[Xa]);return Rt?(Xa=Rt(),_a=function(Qa,Ya){Xa.set(Qa,wt(Rt,Ya,Dr))}):(Xa={},_a=function(Qa,Ya){Xa[Qa]=wt(Rt,Ya,Dr)}),Ra.forEach(_a),Xa}function Jt(Rt,or){if(or>=Re.length)return Rt;var Dr=[],Or=$e[or++];return Rt.forEach(function(va,fa){Dr.push({key:va,values:Jt(fa,or)})}),Or?Dr.sort(function(va,fa){return Or(va.key,fa.key)}):Dr}return de.map=function(Rt,or){return wt(or,Rt,0)},de.entries=function(Rt){return Jt(wt(g.map,Rt,0),0)},de.key=function(Rt){return Re.push(Rt),de},de.sortKeys=function(Rt){return $e[Re.length-1]=Rt,de},de.sortValues=function(Rt){return pt=Rt,de},de.rollup=function(Rt){return vt=Rt,de},de},g.set=function(de){var Re=new z;if(de)for(var $e=0,pt=de.length;$e<pt;++$e)Re.add(de[$e]);return Re};function z(){this._=Object.create(null)}w(z,{has:u,add:function(de){return this._[b(de+="")]=!0,de},remove:y,values:f,size:P,empty:L,forEach:function(de){for(var Re in this._)de.call(this,d(Re))}}),g.behavior={};function F(de){return de}g.rebind=function(de,Re){for(var $e=1,pt=arguments.length,vt;++$e<pt;)de[vt=arguments[$e]]=B(de,Re,Re[vt]);return de};function B(de,Re,$e){return function(){var pt=$e.apply(Re,arguments);return pt===Re?de:pt}}function O(de,Re){if(Re in de)return Re;Re=Re.charAt(0).toUpperCase()+Re.slice(1);for(var $e=0,pt=I.length;$e<pt;++$e){var vt=I[$e]+Re;if(vt in de)return vt}}var I=["webkit","ms","moz","Moz","o","O"];function N(){}g.dispatch=function(){for(var de=new U,Re=-1,$e=arguments.length;++Re<$e;)de[arguments[Re]]=W(de);return de};function U(){}U.prototype.on=function(de,Re){var $e=de.indexOf("."),pt="";if($e>=0&&(pt=de.slice($e+1),de=de.slice(0,$e)),de)return arguments.length<2?this[de].on(pt):this[de].on(pt,Re);if(arguments.length===2){if(Re==null)for(de in this)this.hasOwnProperty(de)&&this[de].on(pt,null);return this}};function W(de){var Re=[],$e=new S;function pt(){for(var vt=Re,wt=-1,Jt=vt.length,Rt;++wt<Jt;)(Rt=vt[wt].on)&&Rt.apply(this,arguments);return de}return pt.on=function(vt,wt){var Jt=$e.get(vt),Rt;return arguments.length<2?Jt&&Jt.on:(Jt&&(Jt.on=null,Re=Re.slice(0,Rt=Re.indexOf(Jt)).concat(Re.slice(Rt+1)),$e.remove(vt)),wt&&Re.push($e.set(vt,{on:wt})),de)},pt}g.event=null;function Q(){g.event.preventDefault()}function ue(){for(var de=g.event,Re;Re=de.sourceEvent;)de=Re;return de}function se(de){for(var Re=new U,$e=0,pt=arguments.length;++$e<pt;)Re[arguments[$e]]=W(Re);return Re.of=function(vt,wt){return function(Jt){try{var Rt=Jt.sourceEvent=g.event;Jt.target=de,g.event=Jt,Re[Jt.type].apply(vt,wt)}finally{g.event=Rt}}},Re}g.requote=function(de){return de.replace(he,"\\$&")};var he=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g,G={}.__proto__?function(de,Re){de.__proto__=Re}:function(de,Re){for(var $e in Re)de[$e]=Re[$e]};function $(de){return G(de,ne),de}var J=function(de,Re){return Re.querySelector(de)},Z=function(de,Re){return Re.querySelectorAll(de)},re=function(de,Re){var $e=de.matches||de[O(de,"matchesSelector")];return re=function(pt,vt){return $e.call(pt,vt)},re(de,Re)};typeof Sizzle=="function"&&(J=function(de,Re){return Sizzle(de,Re)[0]||null},Z=Sizzle,re=Sizzle.matchesSelector),g.selection=function(){return g.select(M.documentElement)};var ne=g.selection.prototype=[];ne.select=function(de){var Re=[],$e,pt,vt,wt;de=j(de);for(var Jt=-1,Rt=this.length;++Jt<Rt;){Re.push($e=[]),$e.parentNode=(vt=this[Jt]).parentNode;for(var or=-1,Dr=vt.length;++or<Dr;)(wt=vt[or])?($e.push(pt=de.call(wt,wt.__data__,or,Jt)),pt&&"__data__"in wt&&(pt.__data__=wt.__data__)):$e.push(null)}return $(Re)};function j(de){return typeof de=="function"?de:function(){return J(de,this)}}ne.selectAll=function(de){var Re=[],$e,pt;de=ee(de);for(var vt=-1,wt=this.length;++vt<wt;)for(var Jt=this[vt],Rt=-1,or=Jt.length;++Rt<or;)(pt=Jt[Rt])&&(Re.push($e=A(de.call(pt,pt.__data__,Rt,vt))),$e.parentNode=pt);return $(Re)};function ee(de){return typeof de=="function"?de:function(){return Z(de,this)}}var ie="http://www.w3.org/1999/xhtml",fe={svg:"http://www.w3.org/2000/svg",xhtml:ie,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};g.ns={prefix:fe,qualify:function(de){var Re=de.indexOf(":"),$e=de;return Re>=0&&($e=de.slice(0,Re))!=="xmlns"&&(de=de.slice(Re+1)),fe.hasOwnProperty($e)?{space:fe[$e],local:de}:de}},ne.attr=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node();return de=g.ns.qualify(de),de.local?$e.getAttributeNS(de.space,de.local):$e.getAttribute(de)}for(Re in de)this.each(be(Re,de[Re]));return this}return this.each(be(de,Re))};function be(de,Re){de=g.ns.qualify(de);function $e(){this.removeAttribute(de)}function pt(){this.removeAttributeNS(de.space,de.local)}function vt(){this.setAttribute(de,Re)}function wt(){this.setAttributeNS(de.space,de.local,Re)}function Jt(){var or=Re.apply(this,arguments);or==null?this.removeAttribute(de):this.setAttribute(de,or)}function Rt(){var or=Re.apply(this,arguments);or==null?this.removeAttributeNS(de.space,de.local):this.setAttributeNS(de.space,de.local,or)}return Re==null?de.local?pt:$e:typeof Re=="function"?de.local?Rt:Jt:de.local?wt:vt}function Ae(de){return de.trim().replace(/\s+/g," ")}ne.classed=function(de,Re){if(arguments.length<2){if(typeof de=="string"){var $e=this.node(),pt=(de=Ie(de)).length,vt=-1;if(Re=$e.classList){for(;++vt<pt;)if(!Re.contains(de[vt]))return!1}else for(Re=$e.getAttribute("class");++vt<pt;)if(!Be(de[vt]).test(Re))return!1;return!0}for(Re in de)this.each(Ze(Re,de[Re]));return this}return this.each(Ze(de,Re))};function Be(de){return new RegExp("(?:^|\\s+)"+g.requote(de)+"(?:\\s+|$)","g")}function Ie(de){return(de+"").trim().split(/^|\s+/)}function Ze(de,Re){de=Ie(de).map(at);var $e=de.length;function pt(){for(var wt=-1;++wt<$e;)de[wt](this,Re)}function vt(){for(var wt=-1,Jt=Re.apply(this,arguments);++wt<$e;)de[wt](this,Jt)}return typeof Re=="function"?vt:pt}function at(de){var Re=Be(de);return function($e,pt){if(vt=$e.classList)return pt?vt.add(de):vt.remove(de);var vt=$e.getAttribute("class")||"";pt?(Re.lastIndex=0,Re.test(vt)||$e.setAttribute("class",Ae(vt+" "+de))):$e.setAttribute("class",Ae(vt.replace(Re," ")))}}ne.style=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re="");for($e in de)this.each(it($e,de[$e],Re));return this}if(pt<2){var vt=this.node();return t(vt).getComputedStyle(vt,null).getPropertyValue(de)}$e=""}return this.each(it(de,Re,$e))};function it(de,Re,$e){function pt(){this.style.removeProperty(de)}function vt(){this.style.setProperty(de,Re,$e)}function wt(){var Jt=Re.apply(this,arguments);Jt==null?this.style.removeProperty(de):this.style.setProperty(de,Jt,$e)}return Re==null?pt:typeof Re=="function"?wt:vt}ne.property=function(de,Re){if(arguments.length<2){if(typeof de=="string")return this.node()[de];for(Re in de)this.each(et(Re,de[Re]));return this}return this.each(et(de,Re))};function et(de,Re){function $e(){delete this[de]}function pt(){this[de]=Re}function vt(){var wt=Re.apply(this,arguments);wt==null?delete this[de]:this[de]=wt}return Re==null?$e:typeof Re=="function"?vt:pt}ne.text=function(de){return arguments.length?this.each(typeof de=="function"?function(){var Re=de.apply(this,arguments);this.textContent=Re??""}:de==null?function(){this.textContent=""}:function(){this.textContent=de}):this.node().textContent},ne.html=function(de){return arguments.length?this.each(typeof de=="function"?function(){var Re=de.apply(this,arguments);this.innerHTML=Re??""}:de==null?function(){this.innerHTML=""}:function(){this.innerHTML=de}):this.node().innerHTML},ne.append=function(de){return de=lt(de),this.select(function(){return this.appendChild(de.apply(this,arguments))})};function lt(de){function Re(){var pt=this.ownerDocument,vt=this.namespaceURI;return vt===ie&&pt.documentElement.namespaceURI===ie?pt.createElement(de):pt.createElementNS(vt,de)}function $e(){return this.ownerDocument.createElementNS(de.space,de.local)}return typeof de=="function"?de:(de=g.ns.qualify(de)).local?$e:Re}ne.insert=function(de,Re){return de=lt(de),Re=j(Re),this.select(function(){return this.insertBefore(de.apply(this,arguments),Re.apply(this,arguments)||null)})},ne.remove=function(){return this.each(Me)};function Me(){var de=this.parentNode;de&&de.removeChild(this)}ne.data=function(de,Re){var $e=-1,pt=this.length,vt,wt;if(!arguments.length){for(de=new Array(pt=(vt=this[0]).length);++$e<pt;)(wt=vt[$e])&&(de[$e]=wt.__data__);return de}function Jt(Or,va){var fa,Va=Or.length,Xa=va.length,_a=Math.min(Va,Xa),Ra=new Array(Xa),Na=new Array(Xa),Qa=new Array(Va),Ya,Da;if(Re){var zi=new S,Ni=new Array(Va),Qi;for(fa=-1;++fa<Va;)(Ya=Or[fa])&&(zi.has(Qi=Re.call(Ya,Ya.__data__,fa))?Qa[fa]=Ya:zi.set(Qi,Ya),Ni[fa]=Qi);for(fa=-1;++fa<Xa;)(Ya=zi.get(Qi=Re.call(va,Da=va[fa],fa)))?Ya!==!0&&(Ra[fa]=Ya,Ya.__data__=Da):Na[fa]=ge(Da),zi.set(Qi,!0);for(fa=-1;++fa<Va;)fa in Ni&&zi.get(Ni[fa])!==!0&&(Qa[fa]=Or[fa])}else{for(fa=-1;++fa<_a;)Ya=Or[fa],Da=va[fa],Ya?(Ya.__data__=Da,Ra[fa]=Ya):Na[fa]=ge(Da);for(;fa<Xa;++fa)Na[fa]=ge(va[fa]);for(;fa<Va;++fa)Qa[fa]=Or[fa]}Na.update=Ra,Na.parentNode=Ra.parentNode=Qa.parentNode=Or.parentNode,Rt.push(Na),or.push(Ra),Dr.push(Qa)}var Rt=nt([]),or=$([]),Dr=$([]);if(typeof de=="function")for(;++$e<pt;)Jt(vt=this[$e],de.call(vt,vt.parentNode.__data__,$e));else for(;++$e<pt;)Jt(vt=this[$e],de);return or.enter=function(){return Rt},or.exit=function(){return Dr},or};function ge(de){return{__data__:de}}ne.datum=function(de){return arguments.length?this.property("__data__",de):this.property("__data__")},ne.filter=function(de){var Re=[],$e,pt,vt;typeof de!="function"&&(de=ce(de));for(var wt=0,Jt=this.length;wt<Jt;wt++){Re.push($e=[]),$e.parentNode=(pt=this[wt]).parentNode;for(var Rt=0,or=pt.length;Rt<or;Rt++)(vt=pt[Rt])&&de.call(vt,vt.__data__,Rt,wt)&&$e.push(vt)}return $(Re)};function ce(de){return function(){return re(this,de)}}ne.order=function(){for(var de=-1,Re=this.length;++de<Re;)for(var $e=this[de],pt=$e.length-1,vt=$e[pt],wt;--pt>=0;)(wt=$e[pt])&&(vt&&vt!==wt.nextSibling&&vt.parentNode.insertBefore(wt,vt),vt=wt);return this},ne.sort=function(de){de=ze.apply(this,arguments);for(var Re=-1,$e=this.length;++Re<$e;)this[Re].sort(de);return this.order()};function ze(de){return arguments.length||(de=s),function(Re,$e){return Re&&$e?de(Re.__data__,$e.__data__):!Re-!$e}}ne.each=function(de){return tt(this,function(Re,$e,pt){de.call(Re,Re.__data__,$e,pt)})};function tt(de,Re){for(var $e=0,pt=de.length;$e<pt;$e++)for(var vt=de[$e],wt=0,Jt=vt.length,Rt;wt<Jt;wt++)(Rt=vt[wt])&&Re(Rt,wt,$e);return de}ne.call=function(de){var Re=A(arguments);return de.apply(Re[0]=this,Re),this},ne.empty=function(){return!this.node()},ne.node=function(){for(var de=0,Re=this.length;de<Re;de++)for(var $e=this[de],pt=0,vt=$e.length;pt<vt;pt++){var wt=$e[pt];if(wt)return wt}return null},ne.size=function(){var de=0;return tt(this,function(){++de}),de};function nt(de){return G(de,Qe),de}var Qe=[];g.selection.enter=nt,g.selection.enter.prototype=Qe,Qe.append=ne.append,Qe.empty=ne.empty,Qe.node=ne.node,Qe.call=ne.call,Qe.size=ne.size,Qe.select=function(de){for(var Re=[],$e,pt,vt,wt,Jt,Rt=-1,or=this.length;++Rt<or;){vt=(wt=this[Rt]).update,Re.push($e=[]),$e.parentNode=wt.parentNode;for(var Dr=-1,Or=wt.length;++Dr<Or;)(Jt=wt[Dr])?($e.push(vt[Dr]=pt=de.call(wt.parentNode,Jt.__data__,Dr,Rt)),pt.__data__=Jt.__data__):$e.push(null)}return $(Re)},Qe.insert=function(de,Re){return arguments.length<2&&(Re=Ct(this)),ne.insert.call(this,de,Re)};function Ct(de){var Re,$e;return function(pt,vt,wt){var Jt=de[wt].update,Rt=Jt.length,or;for(wt!=$e&&($e=wt,Re=0),vt>=Re&&(Re=vt+1);!(or=Jt[Re])&&++Re<Rt;);return or}}g.select=function(de){var Re;return typeof de=="string"?(Re=[J(de,M)],Re.parentNode=M.documentElement):(Re=[de],Re.parentNode=e(de)),$([Re])},g.selectAll=function(de){var Re;return typeof de=="string"?(Re=A(Z(de,M)),Re.parentNode=M.documentElement):(Re=A(de),Re.parentNode=null),$([Re])},ne.on=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re=!1);for($e in de)this.each(St($e,de[$e],Re));return this}if(pt<2)return(pt=this.node()["__on"+de])&&pt._;$e=!1}return this.each(St(de,Re,$e))};function St(de,Re,$e){var pt="__on"+de,vt=de.indexOf("."),wt=jt;vt>0&&(de=de.slice(0,vt));var Jt=Ot.get(de);Jt&&(de=Jt,wt=ur);function Rt(){var Or=this[pt];Or&&(this.removeEventListener(de,Or,Or.$),delete this[pt])}function or(){var Or=wt(Re,A(arguments));Rt.call(this),this.addEventListener(de,this[pt]=Or,Or.$=$e),Or._=Re}function Dr(){var Or=new RegExp("^__on([^.]+)"+g.requote(de)+"$"),va;for(var fa in this)if(va=fa.match(Or)){var Va=this[fa];this.removeEventListener(va[1],Va,Va.$),delete this[fa]}}return vt?Re?or:Rt:Re?N:Dr}var Ot=g.map({mouseenter:"mouseover",mouseleave:"mouseout"});M&&Ot.forEach(function(de){"on"+de in M&&Ot.remove(de)});function jt(de,Re){return function($e){var pt=g.event;g.event=$e,Re[0]=this.__data__;try{de.apply(this,Re)}finally{g.event=pt}}}function ur(de,Re){var $e=jt(de,Re);return function(pt){var vt=this,wt=pt.relatedTarget;(!wt||wt!==vt&&!(wt.compareDocumentPosition(vt)&8))&&$e.call(vt,pt)}}var ar,Cr=0;function vr(de){var Re=".dragsuppress-"+ ++Cr,$e="click"+Re,pt=g.select(t(de)).on("touchmove"+Re,Q).on("dragstart"+Re,Q).on("selectstart"+Re,Q);if(ar==null&&(ar="onselectstart"in de?!1:O(de.style,"userSelect")),ar){var vt=e(de).style,wt=vt[ar];vt[ar]="none"}return function(Jt){if(pt.on(Re,null),ar&&(vt[ar]=wt),Jt){var Rt=function(){pt.on($e,null)};pt.on($e,function(){Q(),Rt()},!0),setTimeout(Rt,0)}}}g.mouse=function(de){return yt(de,ue())};var _r=this.navigator&&/WebKit/.test(this.navigator.userAgent)?-1:0;function yt(de,Re){Re.changedTouches&&(Re=Re.changedTouches[0]);var $e=de.ownerSVGElement||de;if($e.createSVGPoint){var pt=$e.createSVGPoint();if(_r<0){var vt=t(de);if(vt.scrollX||vt.scrollY){$e=g.select("body").append("svg").style({position:"absolute",top:0,left:0,margin:0,padding:0,border:"none"},"important");var wt=$e[0][0].getScreenCTM();_r=!(wt.f||wt.e),$e.remove()}}return _r?(pt.x=Re.pageX,pt.y=Re.pageY):(pt.x=Re.clientX,pt.y=Re.clientY),pt=pt.matrixTransform(de.getScreenCTM().inverse()),[pt.x,pt.y]}var Jt=de.getBoundingClientRect();return[Re.clientX-Jt.left-de.clientLeft,Re.clientY-Jt.top-de.clientTop]}g.touch=function(de,Re,$e){if(arguments.length<3&&($e=Re,Re=ue().changedTouches),Re){for(var pt=0,vt=Re.length,wt;pt<vt;++pt)if((wt=Re[pt]).identifier===$e)return yt(de,wt)}},g.behavior.drag=function(){var de=se(vt,"drag","dragstart","dragend"),Re=null,$e=wt(N,g.mouse,t,"mousemove","mouseup"),pt=wt(Fe,g.touch,F,"touchmove","touchend");function vt(){this.on("mousedown.drag",$e).on("touchstart.drag",pt)}function wt(Jt,Rt,or,Dr,Or){return function(){var va=this,fa=g.event.target.correspondingElement||g.event.target,Va=va.parentNode,Xa=de.of(va,arguments),_a=0,Ra=Jt(),Na=".drag"+(Ra==null?"":"-"+Ra),Qa,Ya=g.select(or(fa)).on(Dr+Na,Ni).on(Or+Na,Qi),Da=vr(fa),zi=Rt(Va,Ra);Re?(Qa=Re.apply(va,arguments),Qa=[Qa.x-zi[0],Qa.y-zi[1]]):Qa=[0,0],Xa({type:"dragstart"});function Ni(){var hn=Rt(Va,Ra),Un,Vn;hn&&(Un=hn[0]-zi[0],Vn=hn[1]-zi[1],_a|=Un|Vn,zi=hn,Xa({type:"drag",x:hn[0]+Qa[0],y:hn[1]+Qa[1],dx:Un,dy:Vn}))}function Qi(){Rt(Va,Ra)&&(Ya.on(Dr+Na,null).on(Or+Na,null),Da(_a),Xa({type:"dragend"}))}}}return vt.origin=function(Jt){return arguments.length?(Re=Jt,vt):Re},g.rebind(vt,de,"on")};function Fe(){return g.event.changedTouches[0].identifier}g.touches=function(de,Re){return arguments.length<2&&(Re=ue().touches),Re?A(Re).map(function($e){var pt=yt(de,$e);return pt.identifier=$e.identifier,pt}):[]};var Ke=1e-6,Ne=Ke*Ke,Ee=Math.PI,Ve=2*Ee,ke=Ve-Ke,Te=Ee/2,Le=Ee/180,rt=180/Ee;function dt(de){return de>0?1:de<0?-1:0}function xt(de,Re,$e){return(Re[0]-de[0])*($e[1]-de[1])-(Re[1]-de[1])*($e[0]-de[0])}function It(de){return de>1?0:de<-1?Ee:Math.acos(de)}function Bt(de){return de>1?Te:de<-1?-Te:Math.asin(de)}function Gt(de){return((de=Math.exp(de))-1/de)/2}function Kt(de){return((de=Math.exp(de))+1/de)/2}function sr(de){return((de=Math.exp(2*de))-1)/(de+1)}function sa(de){return(de=Math.sin(de/2))*de}var Aa=Math.SQRT2,La=2,ka=4;g.interpolateZoom=function(de,Re){var $e=de[0],pt=de[1],vt=de[2],wt=Re[0],Jt=Re[1],Rt=Re[2],or=wt-$e,Dr=Jt-pt,Or=or*or+Dr*Dr,va,fa;if(Or<Ne)fa=Math.log(Rt/vt)/Aa,va=function(Qa){return[$e+Qa*or,pt+Qa*Dr,vt*Math.exp(Aa*Qa*fa)]};else{var Va=Math.sqrt(Or),Xa=(Rt*Rt-vt*vt+ka*Or)/(2*vt*La*Va),_a=(Rt*Rt-vt*vt-ka*Or)/(2*Rt*La*Va),Ra=Math.log(Math.sqrt(Xa*Xa+1)-Xa),Na=Math.log(Math.sqrt(_a*_a+1)-_a);fa=(Na-Ra)/Aa,va=function(Qa){var Ya=Qa*fa,Da=Kt(Ra),zi=vt/(La*Va)*(Da*sr(Aa*Ya+Ra)-Gt(Ra));return[$e+zi*or,pt+zi*Dr,vt*Da/Kt(Aa*Ya+Ra)]}}return va.duration=fa*1e3,va},g.behavior.zoom=function(){var de={x:0,y:0,k:1},Re,$e,pt,vt=[960,500],wt=Ga,Jt=250,Rt=0,or="mousedown.zoom",Dr="mousemove.zoom",Or="mouseup.zoom",va,fa="touchstart.zoom",Va,Xa=se(Ya,"zoomstart","zoom","zoomend"),_a,Ra,Na,Qa;Ua||(Ua="onwheel"in M?(Ma=function(){return-g.event.deltaY*(g.event.deltaMode?120:1)},"wheel"):"onmousewheel"in M?(Ma=function(){return g.event.wheelDelta},"mousewheel"):(Ma=function(){return-g.event.detail},"MozMousePixelScroll"));function Ya(Vi){Vi.on(or,Fo).on(Ua+".zoom",Gs).on("dblclick.zoom",sl).on(fa,Ks)}Ya.event=function(Vi){Vi.each(function(){var ao=Xa.of(this,arguments),ns=de;ls?g.select(this).transition().each("start.zoom",function(){de=this.__chart__||{x:0,y:0,k:1},Vn(ao)}).tween("zoom:zoom",function(){var hs=vt[0],hl=vt[1],Dl=$e?$e[0]:hs/2,hu=$e?$e[1]:hl/2,Ll=g.interpolateZoom([(Dl-de.x)/de.k,(hu-de.y)/de.k,hs/de.k],[(Dl-ns.x)/ns.k,(hu-ns.y)/ns.k,hs/ns.k]);return function(dc){var Qt=Ll(dc),ra=hs/Qt[2];this.__chart__=de={x:Dl-Qt[0]*ra,y:hu-Qt[1]*ra,k:ra},No(ao)}}).each("interrupt.zoom",function(){Gn(ao)}).each("end.zoom",function(){Gn(ao)}):(this.__chart__=de,Vn(ao),No(ao),Gn(ao))})},Ya.translate=function(Vi){return arguments.length?(de={x:+Vi[0],y:+Vi[1],k:de.k},Un(),Ya):[de.x,de.y]},Ya.scale=function(Vi){return arguments.length?(de={x:de.x,y:de.y,k:null},Ni(+Vi),Un(),Ya):de.k},Ya.scaleExtent=function(Vi){return arguments.length?(wt=Vi==null?Ga:[+Vi[0],+Vi[1]],Ya):wt},Ya.center=function(Vi){return arguments.length?(pt=Vi&&[+Vi[0],+Vi[1]],Ya):pt},Ya.size=function(Vi){return arguments.length?(vt=Vi&&[+Vi[0],+Vi[1]],Ya):vt},Ya.duration=function(Vi){return arguments.length?(Jt=+Vi,Ya):Jt},Ya.x=function(Vi){return arguments.length?(Ra=Vi,_a=Vi.copy(),de={x:0,y:0,k:1},Ya):Ra},Ya.y=function(Vi){return arguments.length?(Qa=Vi,Na=Vi.copy(),de={x:0,y:0,k:1},Ya):Qa};function Da(Vi){return[(Vi[0]-de.x)/de.k,(Vi[1]-de.y)/de.k]}function zi(Vi){return[Vi[0]*de.k+de.x,Vi[1]*de.k+de.y]}function Ni(Vi){de.k=Math.max(wt[0],Math.min(wt[1],Vi))}function Qi(Vi,ao){ao=zi(ao),de.x+=Vi[0]-ao[0],de.y+=Vi[1]-ao[1]}function hn(Vi,ao,ns,hs){Vi.__chart__={x:de.x,y:de.y,k:de.k},Ni(Math.pow(2,hs)),Qi($e=ao,ns),Vi=g.select(Vi),Jt>0&&(Vi=Vi.transition().duration(Jt)),Vi.call(Ya.event)}function Un(){Ra&&Ra.domain(_a.range().map(function(Vi){return(Vi-de.x)/de.k}).map(_a.invert)),Qa&&Qa.domain(Na.range().map(function(Vi){return(Vi-de.y)/de.k}).map(Na.invert))}function Vn(Vi){Rt++||Vi({type:"zoomstart"})}function No(Vi){Un(),Vi({type:"zoom",scale:de.k,translate:[de.x,de.y]})}function Gn(Vi){--Rt||(Vi({type:"zoomend"}),$e=null)}function Fo(){var Vi=this,ao=Xa.of(Vi,arguments),ns=0,hs=g.select(t(Vi)).on(Dr,hu).on(Or,Ll),hl=Da(g.mouse(Vi)),Dl=vr(Vi);Sn.call(Vi),Vn(ao);function hu(){ns=1,Qi(g.mouse(Vi),hl),No(ao)}function Ll(){hs.on(Dr,null).on(Or,null),Dl(ns),Gn(ao)}}function Ks(){var Vi=this,ao=Xa.of(Vi,arguments),ns={},hs=0,hl,Dl=".zoom-"+g.event.changedTouches[0].identifier,hu="touchmove"+Dl,Ll="touchend"+Dl,dc=[],Qt=g.select(Vi),ra=vr(Vi);si(),Vn(ao),Qt.on(or,null).on(fa,si);function Ta(){var bi=g.touches(Vi);return hl=de.k,bi.forEach(function(Fi){Fi.identifier in ns&&(ns[Fi.identifier]=Da(Fi))}),bi}function si(){var bi=g.event.target;g.select(bi).on(hu,wi).on(Ll,xi),dc.push(bi);for(var Fi=g.event.changedTouches,cn=0,fn=Fi.length;cn<fn;++cn)ns[Fi[cn].identifier]=null;var Gi=Ta(),Io=Date.now();if(Gi.length===1){if(Io-Va<500){var nn=Gi[0];hn(Vi,nn,ns[nn.identifier],Math.floor(Math.log(de.k)/Math.LN2)+1),Q()}Va=Io}else if(Gi.length>1){var nn=Gi[0],on=Gi[1],Oi=nn[0]-on[0],ui=nn[1]-on[1];hs=Oi*Oi+ui*ui}}function wi(){var bi=g.touches(Vi),Fi,cn,fn,Gi;Sn.call(Vi);for(var Io=0,nn=bi.length;Io<nn;++Io,Gi=null)if(fn=bi[Io],Gi=ns[fn.identifier]){if(cn)break;Fi=fn,cn=Gi}if(Gi){var on=(on=fn[0]-Fi[0])*on+(on=fn[1]-Fi[1])*on,Oi=hs&&Math.sqrt(on/hs);Fi=[(Fi[0]+fn[0])/2,(Fi[1]+fn[1])/2],cn=[(cn[0]+Gi[0])/2,(cn[1]+Gi[1])/2],Ni(Oi*hl)}Va=null,Qi(Fi,cn),No(ao)}function xi(){if(g.event.touches.length){for(var bi=g.event.changedTouches,Fi=0,cn=bi.length;Fi<cn;++Fi)delete ns[bi[Fi].identifier];for(var fn in ns)return void Ta()}g.selectAll(dc).on(Dl,null),Qt.on(or,Fo).on(fa,Ks),ra(),Gn(ao)}}function Gs(){var Vi=Xa.of(this,arguments);va?clearTimeout(va):(Sn.call(this),Re=Da($e=pt||g.mouse(this)),Vn(Vi)),va=setTimeout(function(){va=null,Gn(Vi)},50),Q(),Ni(Math.pow(2,Ma()*.002)*de.k),Qi($e,Re),No(Vi)}function sl(){var Vi=g.mouse(this),ao=Math.log(de.k)/Math.LN2;hn(this,Vi,Da(Vi),g.event.shiftKey?Math.ceil(ao)-1:Math.floor(ao)+1)}return g.rebind(Ya,Xa,"on")};var Ga=[0,1/0],Ma,Ua;g.color=ni;function ni(){}ni.prototype.toString=function(){return this.rgb()+""},g.hsl=Wt;function Wt(de,Re,$e){return this instanceof Wt?(this.h=+de,this.s=+Re,void(this.l=+$e)):arguments.length<2?de instanceof Wt?new Wt(de.h,de.s,de.l):Jr(""+de,oa,Wt):new Wt(de,Re,$e)}var zt=Wt.prototype=new ni;zt.brighter=function(de){return de=Math.pow(.7,arguments.length?de:1),new Wt(this.h,this.s,this.l/de)},zt.darker=function(de){return de=Math.pow(.7,arguments.length?de:1),new Wt(this.h,this.s,de*this.l)},zt.rgb=function(){return Vt(this.h,this.s,this.l)};function Vt(de,Re,$e){var pt,vt;de=isNaN(de)?0:(de%=360)<0?de+360:de,Re=isNaN(Re)||Re<0?0:Re>1?1:Re,$e=$e<0?0:$e>1?1:$e,vt=$e<=.5?$e*(1+Re):$e+Re-$e*Re,pt=2*$e-vt;function wt(Rt){return Rt>360?Rt-=360:Rt<0&&(Rt+=360),Rt<60?pt+(vt-pt)*Rt/60:Rt<180?vt:Rt<240?pt+(vt-pt)*(240-Rt)/60:pt}function Jt(Rt){return Math.round(wt(Rt)*255)}return new br(Jt(de+120),Jt(de),Jt(de-120))}g.hcl=Ut;function Ut(de,Re,$e){return this instanceof Ut?(this.h=+de,this.c=+Re,void(this.l=+$e)):arguments.length<2?de instanceof Ut?new Ut(de.h,de.c,de.l):de instanceof pa?mt(de.l,de.a,de.b):mt((de=ca((de=g.rgb(de)).r,de.g,de.b)).l,de.a,de.b):new Ut(de,Re,$e)}var xr=Ut.prototype=new ni;xr.brighter=function(de){return new Ut(this.h,this.c,Math.min(100,this.l+Xr*(arguments.length?de:1)))},xr.darker=function(de){return new Ut(this.h,this.c,Math.max(0,this.l-Xr*(arguments.length?de:1)))},xr.rgb=function(){return Zr(this.h,this.c,this.l).rgb()};function Zr(de,Re,$e){return isNaN(de)&&(de=0),isNaN(Re)&&(Re=0),new pa($e,Math.cos(de*=Le)*Re,Math.sin(de)*Re)}g.lab=pa;function pa(de,Re,$e){return this instanceof pa?(this.l=+de,this.a=+Re,void(this.b=+$e)):arguments.length<2?de instanceof pa?new pa(de.l,de.a,de.b):de instanceof Ut?Zr(de.h,de.c,de.l):ca((de=br(de)).r,de.g,de.b):new pa(de,Re,$e)}var Xr=18,Ea=.95047,Fa=1,qa=1.08883,ya=pa.prototype=new ni;ya.brighter=function(de){return new pa(Math.min(100,this.l+Xr*(arguments.length?de:1)),this.a,this.b)},ya.darker=function(de){return new pa(Math.max(0,this.l-Xr*(arguments.length?de:1)),this.a,this.b)},ya.rgb=function(){return $a(this.l,this.a,this.b)};function $a(de,Re,$e){var pt=(de+16)/116,vt=pt+Re/500,wt=pt-$e/200;return vt=gt(vt)*Ea,pt=gt(pt)*Fa,wt=gt(wt)*qa,new br(kr(3.2404542*vt-1.5371385*pt-.4985314*wt),kr(-.969266*vt+1.8760108*pt+.041556*wt),kr(.0556434*vt-.2040259*pt+1.0572252*wt))}function mt(de,Re,$e){return de>0?new Ut(Math.atan2($e,Re)*rt,Math.sqrt(Re*Re+$e*$e),de):new Ut(NaN,NaN,de)}function gt(de){return de>.206893034?de*de*de:(de-4/29)/7.787037}function Er(de){return de>.008856?Math.pow(de,1/3):7.787037*de+4/29}function kr(de){return Math.round(255*(de<=.00304?12.92*de:1.055*Math.pow(de,1/2.4)-.055))}g.rgb=br;function br(de,Re,$e){return this instanceof br?(this.r=~~de,this.g=~~Re,void(this.b=~~$e)):arguments.length<2?de instanceof br?new br(de.r,de.g,de.b):Jr(""+de,br,Vt):new br(de,Re,$e)}function Tr(de){return new br(de>>16,de>>8&255,de&255)}function Mr(de){return Tr(de)+""}var Fr=br.prototype=new ni;Fr.brighter=function(de){de=Math.pow(.7,arguments.length?de:1);var Re=this.r,$e=this.g,pt=this.b,vt=30;return!Re&&!$e&&!pt?new br(vt,vt,vt):(Re&&Re<vt&&(Re=vt),$e&&$e<vt&&($e=vt),pt&&pt<vt&&(pt=vt),new br(Math.min(255,Re/de),Math.min(255,$e/de),Math.min(255,pt/de)))},Fr.darker=function(de){return de=Math.pow(.7,arguments.length?de:1),new br(de*this.r,de*this.g,de*this.b)},Fr.hsl=function(){return oa(this.r,this.g,this.b)},Fr.toString=function(){return"#"+Lr(this.r)+Lr(this.g)+Lr(this.b)};function Lr(de){return de<16?"0"+Math.max(0,de).toString(16):Math.min(255,de).toString(16)}function Jr(de,Re,$e){var pt=0,vt=0,wt=0,Jt,Rt,or;if(Jt=/([a-z]+)\((.*)\)/.exec(de=de.toLowerCase()),Jt)switch(Rt=Jt[2].split(","),Jt[1]){case"hsl":return $e(parseFloat(Rt[0]),parseFloat(Rt[1])/100,parseFloat(Rt[2])/100);case"rgb":return Re(ir(Rt[0]),ir(Rt[1]),ir(Rt[2]))}return(or=mr.get(de))?Re(or.r,or.g,or.b):(de!=null&&de.charAt(0)==="#"&&!isNaN(or=parseInt(de.slice(1),16))&&(de.length===4?(pt=(or&3840)>>4,pt=pt>>4|pt,vt=or&240,vt=vt>>4|vt,wt=or&15,wt=wt<<4|wt):de.length===7&&(pt=(or&16711680)>>16,vt=(or&65280)>>8,wt=or&255)),Re(pt,vt,wt))}function oa(de,Re,$e){var pt=Math.min(de/=255,Re/=255,$e/=255),vt=Math.max(de,Re,$e),wt=vt-pt,Jt,Rt,or=(vt+pt)/2;return wt?(Rt=or<.5?wt/(vt+pt):wt/(2-vt-pt),de==vt?Jt=(Re-$e)/wt+(Re<$e?6:0):Re==vt?Jt=($e-de)/wt+2:Jt=(de-Re)/wt+4,Jt*=60):(Jt=NaN,Rt=or>0&&or<1?0:Jt),new Wt(Jt,Rt,or)}function ca(de,Re,$e){de=kt(de),Re=kt(Re),$e=kt($e);var pt=Er((.4124564*de+.3575761*Re+.1804375*$e)/Ea),vt=Er((.2126729*de+.7151522*Re+.072175*$e)/Fa),wt=Er((.0193339*de+.119192*Re+.9503041*$e)/qa);return pa(116*vt-16,500*(pt-vt),200*(vt-wt))}function kt(de){return(de/=255)<=.04045?de/12.92:Math.pow((de+.055)/1.055,2.4)}function ir(de){var Re=parseFloat(de);return de.charAt(de.length-1)==="%"?Math.round(Re*2.55):Re}var mr=g.map({aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074});mr.forEach(function(de,Re){mr.set(de,Tr(Re))});function $r(de){return typeof de=="function"?de:function(){return de}}g.functor=$r,g.xhr=ma(F);function ma(de){return function(Re,$e,pt){return arguments.length===2&&typeof $e=="function"&&(pt=$e,$e=null),Ba(Re,$e,de,pt)}}function Ba(de,Re,$e,pt){var vt={},wt=g.dispatch("beforesend","progress","load","error"),Jt={},Rt=new XMLHttpRequest,or=null;self.XDomainRequest&&!("withCredentials"in Rt)&&/^(http(s)?:)?\/\//.test(de)&&(Rt=new XDomainRequest),"onload"in Rt?Rt.onload=Rt.onerror=Dr:Rt.onreadystatechange=function(){Rt.readyState>3&&Dr()};function Dr(){var Or=Rt.status,va;if(!Or&&da(Rt)||Or>=200&&Or<300||Or===304){try{va=$e.call(vt,Rt)}catch(fa){wt.error.call(vt,fa);return}wt.load.call(vt,va)}else wt.error.call(vt,Rt)}return Rt.onprogress=function(Or){var va=g.event;g.event=Or;try{wt.progress.call(vt,Rt)}finally{g.event=va}},vt.header=function(Or,va){return Or=(Or+"").toLowerCase(),arguments.length<2?Jt[Or]:(va==null?delete Jt[Or]:Jt[Or]=va+"",vt)},vt.mimeType=function(Or){return arguments.length?(Re=Or==null?null:Or+"",vt):Re},vt.responseType=function(Or){return arguments.length?(or=Or,vt):or},vt.response=function(Or){return $e=Or,vt},["get","post"].forEach(function(Or){vt[Or]=function(){return vt.send.apply(vt,[Or].concat(A(arguments)))}}),vt.send=function(Or,va,fa){if(arguments.length===2&&typeof va=="function"&&(fa=va,va=null),Rt.open(Or,de,!0),Re!=null&&!("accept"in Jt)&&(Jt.accept=Re+",*/*"),Rt.setRequestHeader)for(var Va in Jt)Rt.setRequestHeader(Va,Jt[Va]);return Re!=null&&Rt.overrideMimeType&&Rt.overrideMimeType(Re),or!=null&&(Rt.responseType=or),fa!=null&&vt.on("error",fa).on("load",function(Xa){fa(null,Xa)}),wt.beforesend.call(vt,Rt),Rt.send(va??null),vt},vt.abort=function(){return Rt.abort(),vt},g.rebind(vt,wt,"on"),pt==null?vt:vt.get(Ca(pt))}function Ca(de){return de.length===1?function(Re,$e){de(Re==null?$e:null)}:de}function da(de){var Re=de.responseType;return Re&&Re!=="text"?de.response:de.responseText}g.dsv=function(de,Re){var $e=new RegExp('["'+de+`
+]`),pt=de.charCodeAt(0);function vt(Dr,Or,va){arguments.length<3&&(va=Or,Or=null);var fa=Ba(Dr,Re,Or==null?wt:Jt(Or),va);return fa.row=function(Va){return arguments.length?fa.response((Or=Va)==null?wt:Jt(Va)):Or},fa}function wt(Dr){return vt.parse(Dr.responseText)}function Jt(Dr){return function(Or){return vt.parse(Or.responseText,Dr)}}vt.parse=function(Dr,Or){var va;return vt.parseRows(Dr,function(fa,Va){if(va)return va(fa,Va-1);var Xa=function(_a){for(var Ra={},Na=fa.length,Qa=0;Qa<Na;++Qa)Ra[fa[Qa]]=_a[Qa];return Ra};va=Or?function(_a,Ra){return Or(Xa(_a),Ra)}:Xa})},vt.parseRows=function(Dr,Or){var va={},fa={},Va=[],Xa=Dr.length,_a=0,Ra=0,Na,Qa;function Ya(){if(_a>=Xa)return fa;if(Qa)return Qa=!1,va;var zi=_a;if(Dr.charCodeAt(zi)===34){for(var Ni=zi;Ni++<Xa;)if(Dr.charCodeAt(Ni)===34){if(Dr.charCodeAt(Ni+1)!==34)break;++Ni}_a=Ni+2;var Qi=Dr.charCodeAt(Ni+1);return Qi===13?(Qa=!0,Dr.charCodeAt(Ni+2)===10&&++_a):Qi===10&&(Qa=!0),Dr.slice(zi+1,Ni).replace(/""/g,'"')}for(;_a<Xa;){var Qi=Dr.charCodeAt(_a++),hn=1;if(Qi===10)Qa=!0;else if(Qi===13)Qa=!0,Dr.charCodeAt(_a)===10&&(++_a,++hn);else if(Qi!==pt)continue;return Dr.slice(zi,_a-hn)}return Dr.slice(zi)}for(;(Na=Ya())!==fa;){for(var Da=[];Na!==va&&Na!==fa;)Da.push(Na),Na=Ya();Or&&(Da=Or(Da,Ra++))==null||Va.push(Da)}return Va},vt.format=function(Dr){if(Array.isArray(Dr[0]))return vt.formatRows(Dr);var Or=new z,va=[];return Dr.forEach(function(fa){for(var Va in fa)Or.has(Va)||va.push(Or.add(Va))}),[va.map(or).join(de)].concat(Dr.map(function(fa){return va.map(function(Va){return or(fa[Va])}).join(de)})).join(`
+`)},vt.formatRows=function(Dr){return Dr.map(Rt).join(`
+`)};function Rt(Dr){return Dr.map(or).join(de)}function or(Dr){return $e.test(Dr)?'"'+Dr.replace(/\"/g,'""')+'"':Dr}return vt},g.csv=g.dsv(",","text/csv"),g.tsv=g.dsv(" ","text/tab-separated-values");var Sa,Ti,ai,an,sn=this[O(this,"requestAnimationFrame")]||function(de){setTimeout(de,17)};g.timer=function(){Mn.apply(this,arguments)};function Mn(de,Re,$e){var pt=arguments.length;pt<2&&(Re=0),pt<3&&($e=Date.now());var vt=$e+Re,wt={c:de,t:vt,n:null};return Ti?Ti.n=wt:Sa=wt,Ti=wt,ai||(an=clearTimeout(an),ai=1,sn(On)),wt}function On(){var de=$n(),Re=Cn()-de;Re>24?(isFinite(Re)&&(clearTimeout(an),an=setTimeout(On,Re)),ai=0):(ai=1,sn(On))}g.timer.flush=function(){$n(),Cn()};function $n(){for(var de=Date.now(),Re=Sa;Re;)de>=Re.t&&Re.c(de-Re.t)&&(Re.c=null),Re=Re.n;return de}function Cn(){for(var de,Re=Sa,$e=1/0;Re;)Re.c?(Re.t<$e&&($e=Re.t),Re=(de=Re).n):Re=de?de.n=Re.n:Sa=Re.n;return Ti=de,$e}g.round=function(de,Re){return Re?Math.round(de*(Re=Math.pow(10,Re)))/Re:Math.round(de)},g.geom={};function Lo(de){return de[0]}function Xi(de){return de[1]}g.geom.hull=function(de){var Re=Lo,$e=Xi;if(arguments.length)return pt(de);function pt(vt){if(vt.length<3)return[];var wt=$r(Re),Jt=$r($e),Rt,or=vt.length,Dr=[],Or=[];for(Rt=0;Rt<or;Rt++)Dr.push([+wt.call(this,vt[Rt],Rt),+Jt.call(this,vt[Rt],Rt),Rt]);for(Dr.sort(zo),Rt=0;Rt<or;Rt++)Or.push([Dr[Rt][0],-Dr[Rt][1]]);var va=Jo(Dr),fa=Jo(Or),Va=fa[0]===va[0],Xa=fa[fa.length-1]===va[va.length-1],_a=[];for(Rt=va.length-1;Rt>=0;--Rt)_a.push(vt[Dr[va[Rt]][2]]);for(Rt=+Va;Rt<fa.length-Xa;++Rt)_a.push(vt[Dr[fa[Rt]][2]]);return _a}return pt.x=function(vt){return arguments.length?(Re=vt,pt):Re},pt.y=function(vt){return arguments.length?($e=vt,pt):$e},pt};function Jo(de){for(var Re=de.length,$e=[0,1],pt=2,vt=2;vt<Re;vt++){for(;pt>1&&xt(de[$e[pt-2]],de[$e[pt-1]],de[vt])<=0;)--pt;$e[pt++]=vt}return $e.slice(0,pt)}function zo(de,Re){return de[0]-Re[0]||de[1]-Re[1]}g.geom.polygon=function(de){return G(de,as),de};var as=g.geom.polygon.prototype=[];as.area=function(){for(var de=-1,Re=this.length,$e,pt=this[Re-1],vt=0;++de<Re;)$e=pt,pt=this[de],vt+=$e[1]*pt[0]-$e[0]*pt[1];return vt*.5},as.centroid=function(de){var Re=-1,$e=this.length,pt=0,vt=0,wt,Jt=this[$e-1],Rt;for(arguments.length||(de=-1/(6*this.area()));++Re<$e;)wt=Jt,Jt=this[Re],Rt=wt[0]*Jt[1]-Jt[0]*wt[1],pt+=(wt[0]+Jt[0])*Rt,vt+=(wt[1]+Jt[1])*Rt;return[pt*de,vt*de]},as.clip=function(de){for(var Re,$e=In(de),pt=-1,vt=this.length-In(this),wt,Jt,Rt=this[vt-1],or,Dr,Or;++pt<vt;){for(Re=de.slice(),de.length=0,or=this[pt],Dr=Re[(Jt=Re.length-$e)-1],wt=-1;++wt<Jt;)Or=Re[wt],Pn(Or,Rt,or)?(Pn(Dr,Rt,or)||de.push(go(Dr,Or,Rt,or)),de.push(Or)):Pn(Dr,Rt,or)&&de.push(go(Dr,Or,Rt,or)),Dr=Or;$e&&de.push(de[0]),Rt=or}return de};function Pn(de,Re,$e){return($e[0]-Re[0])*(de[1]-Re[1])<($e[1]-Re[1])*(de[0]-Re[0])}function go(de,Re,$e,pt){var vt=de[0],wt=$e[0],Jt=Re[0]-vt,Rt=pt[0]-wt,or=de[1],Dr=$e[1],Or=Re[1]-or,va=pt[1]-Dr,fa=(Rt*(or-Dr)-va*(vt-wt))/(va*Jt-Rt*Or);return[vt+fa*Jt,or+fa*Or]}function In(de){var Re=de[0],$e=de[de.length-1];return!(Re[0]-$e[0]||Re[1]-$e[1])}var Do,Ho,Qo,Xn=[],po,ys,Is=[];function Fs(){qs(this),this.edge=this.site=this.circle=null}function $o(de){var Re=Xn.pop()||new Fs;return Re.site=de,Re}function fi(de){To(de),Qo.remove(de),Xn.push(de),qs(de)}function mn(de){var Re=de.circle,$e=Re.x,pt=Re.cy,vt={x:$e,y:pt},wt=de.P,Jt=de.N,Rt=[de];fi(de);for(var or=wt;or.circle&&l($e-or.circle.x)<Ke&&l(pt-or.circle.cy)<Ke;)wt=or.P,Rt.unshift(or),fi(or),or=wt;Rt.unshift(or),To(or);for(var Dr=Jt;Dr.circle&&l($e-Dr.circle.x)<Ke&&l(pt-Dr.circle.cy)<Ke;)Jt=Dr.N,Rt.push(Dr),fi(Dr),Dr=Jt;Rt.push(Dr),To(Dr);var Or=Rt.length,va;for(va=1;va<Or;++va)Dr=Rt[va],or=Rt[va-1],ml(Dr.edge,or.site,Dr.site,vt);or=Rt[0],Dr=Rt[Or-1],Dr.edge=Wl(or.site,Dr.site,null,vt),ji(or),ji(Dr)}function ol(de){for(var Re=de.x,$e=de.y,pt,vt,wt,Jt,Rt=Qo._;Rt;)if(wt=Os(Rt,$e)-Re,wt>Ke)Rt=Rt.L;else if(Jt=Re-so(Rt,$e),Jt>Ke){if(!Rt.R){pt=Rt;break}Rt=Rt.R}else{wt>-Ke?(pt=Rt.P,vt=Rt):Jt>-Ke?(pt=Rt,vt=Rt.N):pt=vt=Rt;break}var or=$o(de);if(Qo.insert(pt,or),!(!pt&&!vt)){if(pt===vt){To(pt),vt=$o(pt.site),Qo.insert(or,vt),or.edge=vt.edge=Wl(pt.site,or.site),ji(pt),ji(vt);return}if(!vt){or.edge=Wl(pt.site,or.site);return}To(pt),To(vt);var Dr=pt.site,Or=Dr.x,va=Dr.y,fa=de.x-Or,Va=de.y-va,Xa=vt.site,_a=Xa.x-Or,Ra=Xa.y-va,Na=2*(fa*Ra-Va*_a),Qa=fa*fa+Va*Va,Ya=_a*_a+Ra*Ra,Da={x:(Ra*Qa-Va*Ya)/Na+Or,y:(fa*Ya-_a*Qa)/Na+va};ml(vt.edge,Dr,Xa,Da),or.edge=Wl(Dr,de,null,Da),vt.edge=Wl(de,Xa,null,Da),ji(pt),ji(vt)}}function Os(de,Re){var $e=de.site,pt=$e.x,vt=$e.y,wt=vt-Re;if(!wt)return pt;var Jt=de.P;if(!Jt)return-1/0;$e=Jt.site;var Rt=$e.x,or=$e.y,Dr=or-Re;if(!Dr)return Rt;var Or=Rt-pt,va=1/wt-1/Dr,fa=Or/Dr;return va?(-fa+Math.sqrt(fa*fa-2*va*(Or*Or/(-2*Dr)-or+Dr/2+vt-wt/2)))/va+pt:(pt+Rt)/2}function so(de,Re){var $e=de.N;if($e)return Os($e,Re);var pt=de.site;return pt.y===Re?pt.x:1/0}function Ns(de){this.site=de,this.edges=[]}Ns.prototype.prepare=function(){for(var de=this.edges,Re=de.length,$e;Re--;)$e=de[Re].edge,(!$e.b||!$e.a)&&de.splice(Re,1);return de.sort(al),de.length};function fs(de){for(var Re=de[0][0],$e=de[1][0],pt=de[0][1],vt=de[1][1],wt,Jt,Rt,or,Dr=Ho,Or=Dr.length,va,fa,Va,Xa,_a,Ra;Or--;)if(va=Dr[Or],!(!va||!va.prepare()))for(Va=va.edges,Xa=Va.length,fa=0;fa<Xa;)Ra=Va[fa].end(),Rt=Ra.x,or=Ra.y,_a=Va[++fa%Xa].start(),wt=_a.x,Jt=_a.y,(l(Rt-wt)>Ke||l(or-Jt)>Ke)&&(Va.splice(fa,0,new Bu(Zu(va.site,Ra,l(Rt-Re)<Ke&&vt-or>Ke?{x:Re,y:l(wt-Re)<Ke?Jt:vt}:l(or-vt)<Ke&&$e-Rt>Ke?{x:l(Jt-vt)<Ke?wt:$e,y:vt}:l(Rt-$e)<Ke&&or-pt>Ke?{x:$e,y:l(wt-$e)<Ke?Jt:pt}:l(or-pt)<Ke&&Rt-Re>Ke?{x:l(Jt-pt)<Ke?wt:Re,y:pt}:null),va.site,null)),++Xa)}function al(de,Re){return Re.angle-de.angle}function vl(){qs(this),this.x=this.y=this.arc=this.site=this.cy=null}function ji(de){var Re=de.P,$e=de.N;if(!(!Re||!$e)){var pt=Re.site,vt=de.site,wt=$e.site;if(pt!==wt){var Jt=vt.x,Rt=vt.y,or=pt.x-Jt,Dr=pt.y-Rt,Or=wt.x-Jt,Ra=wt.y-Rt,va=2*(or*Ra-Dr*Or);if(!(va>=-Ne)){var fa=or*or+Dr*Dr,Va=Or*Or+Ra*Ra,Xa=(Ra*fa-Dr*Va)/va,_a=(or*Va-Or*fa)/va,Ra=_a+Rt,Na=Is.pop()||new vl;Na.arc=de,Na.site=vt,Na.x=Xa+Jt,Na.y=Ra+Math.sqrt(Xa*Xa+_a*_a),Na.cy=Ra,de.circle=Na;for(var Qa=null,Ya=ys._;Ya;)if(Na.y<Ya.y||Na.y===Ya.y&&Na.x<=Ya.x)if(Ya.L)Ya=Ya.L;else{Qa=Ya.P;break}else if(Ya.R)Ya=Ya.R;else{Qa=Ya;break}ys.insert(Qa,Na),Qa||(po=Na)}}}}function To(de){var Re=de.circle;Re&&(Re.P||(po=Re.N),ys.remove(Re),Is.push(Re),qs(Re),de.circle=null)}function Yn(de,Re,$e,pt){return function(vt){var wt=vt.a,Jt=vt.b,Rt=wt.x,or=wt.y,Dr=Jt.x,Or=Jt.y,va=0,fa=1,Va=Dr-Rt,Xa=Or-or,_a;if(_a=de-Rt,!(!Va&&_a>0)){if(_a/=Va,Va<0){if(_a<va)return;_a<fa&&(fa=_a)}else if(Va>0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=$e-Rt,!(!Va&&_a<0)){if(_a/=Va,Va<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Va>0){if(_a<va)return;_a<fa&&(fa=_a)}if(_a=Re-or,!(!Xa&&_a>0)){if(_a/=Xa,Xa<0){if(_a<va)return;_a<fa&&(fa=_a)}else if(Xa>0){if(_a>fa)return;_a>va&&(va=_a)}if(_a=pt-or,!(!Xa&&_a<0)){if(_a/=Xa,Xa<0){if(_a>fa)return;_a>va&&(va=_a)}else if(Xa>0){if(_a<va)return;_a<fa&&(fa=_a)}return va>0&&(vt.a={x:Rt+va*Va,y:or+va*Xa}),fa<1&&(vt.b={x:Rt+fa*Va,y:or+fa*Xa}),vt}}}}}}function _s(de){for(var Re=Do,$e=Yn(de[0][0],de[0][1],de[1][0],de[1][1]),pt=Re.length,vt;pt--;)vt=Re[pt],(!Yo(vt,de)||!$e(vt)||l(vt.a.x-vt.b.x)<Ke&&l(vt.a.y-vt.b.y)<Ke)&&(vt.a=vt.b=null,Re.splice(pt,1))}function Yo(de,Re){var $e=de.b;if($e)return!0;var pt=de.a,vt=Re[0][0],wt=Re[1][0],Jt=Re[0][1],Rt=Re[1][1],or=de.l,Dr=de.r,Or=or.x,va=or.y,fa=Dr.x,Va=Dr.y,Xa=(Or+fa)/2,_a=(va+Va)/2,Ra,Na;if(Va===va){if(Xa<vt||Xa>=wt)return;if(Or>fa){if(!pt)pt={x:Xa,y:Jt};else if(pt.y>=Rt)return;$e={x:Xa,y:Rt}}else{if(!pt)pt={x:Xa,y:Rt};else if(pt.y<Jt)return;$e={x:Xa,y:Jt}}}else if(Ra=(Or-fa)/(Va-va),Na=_a-Ra*Xa,Ra<-1||Ra>1)if(Or>fa){if(!pt)pt={x:(Jt-Na)/Ra,y:Jt};else if(pt.y>=Rt)return;$e={x:(Rt-Na)/Ra,y:Rt}}else{if(!pt)pt={x:(Rt-Na)/Ra,y:Rt};else if(pt.y<Jt)return;$e={x:(Jt-Na)/Ra,y:Jt}}else if(va<Va){if(!pt)pt={x:vt,y:Ra*vt+Na};else if(pt.x>=wt)return;$e={x:wt,y:Ra*wt+Na}}else{if(!pt)pt={x:wt,y:Ra*wt+Na};else if(pt.x<vt)return;$e={x:vt,y:Ra*vt+Na}}return de.a=pt,de.b=$e,!0}function Nn(de,Re){this.l=de,this.r=Re,this.a=this.b=null}function Wl(de,Re,$e,pt){var vt=new Nn(de,Re);return Do.push(vt),$e&&ml(vt,de,Re,$e),pt&&ml(vt,Re,de,pt),Ho[de.i].edges.push(new Bu(vt,de,Re)),Ho[Re.i].edges.push(new Bu(vt,Re,de)),vt}function Zu(de,Re,$e){var pt=new Nn(de,null);return pt.a=Re,pt.b=$e,Do.push(pt),pt}function ml(de,Re,$e,pt){!de.a&&!de.b?(de.a=pt,de.l=Re,de.r=$e):de.l===$e?de.b=pt:de.a=pt}function Bu(de,Re,$e){var pt=de.a,vt=de.b;this.edge=de,this.site=Re,this.angle=$e?Math.atan2($e.y-Re.y,$e.x-Re.x):de.l===Re?Math.atan2(vt.x-pt.x,pt.y-vt.y):Math.atan2(pt.x-vt.x,vt.y-pt.y)}Bu.prototype={start:function(){return this.edge.l===this.site?this.edge.a:this.edge.b},end:function(){return this.edge.l===this.site?this.edge.b:this.edge.a}};function El(){this._=null}function qs(de){de.U=de.C=de.L=de.R=de.P=de.N=null}El.prototype={insert:function(de,Re){var $e,pt,vt;if(de){if(Re.P=de,Re.N=de.N,de.N&&(de.N.P=Re),de.N=Re,de.R){for(de=de.R;de.L;)de=de.L;de.L=Re}else de.R=Re;$e=de}else this._?(de=Ic(this._),Re.P=null,Re.N=de,de.P=de.L=Re,$e=de):(Re.P=Re.N=null,this._=Re,$e=null);for(Re.L=Re.R=null,Re.U=$e,Re.C=!0,de=Re;$e&&$e.C;)pt=$e.U,$e===pt.L?(vt=pt.R,vt&&vt.C?($e.C=vt.C=!1,pt.C=!0,de=pt):(de===$e.R&&(Jl(this,$e),de=$e,$e=de.U),$e.C=!1,pt.C=!0,Nu(this,pt))):(vt=pt.L,vt&&vt.C?($e.C=vt.C=!1,pt.C=!0,de=pt):(de===$e.L&&(Nu(this,$e),de=$e,$e=de.U),$e.C=!1,pt.C=!0,Jl(this,pt))),$e=de.U;this._.C=!1},remove:function(de){de.N&&(de.N.P=de.P),de.P&&(de.P.N=de.N),de.N=de.P=null;var Re=de.U,$e,pt=de.L,vt=de.R,wt,Jt;if(pt?vt?wt=Ic(vt):wt=pt:wt=vt,Re?Re.L===de?Re.L=wt:Re.R=wt:this._=wt,pt&&vt?(Jt=wt.C,wt.C=de.C,wt.L=pt,pt.U=wt,wt!==vt?(Re=wt.U,wt.U=de.U,de=wt.R,Re.L=de,wt.R=vt,vt.U=wt):(wt.U=Re,Re=wt,de=wt.R)):(Jt=de.C,de=wt),de&&(de.U=Re),!Jt){if(de&&de.C){de.C=!1;return}do{if(de===this._)break;if(de===Re.L){if($e=Re.R,$e.C&&($e.C=!1,Re.C=!0,Jl(this,Re),$e=Re.R),$e.L&&$e.L.C||$e.R&&$e.R.C){(!$e.R||!$e.R.C)&&($e.L.C=!1,$e.C=!0,Nu(this,$e),$e=Re.R),$e.C=Re.C,Re.C=$e.R.C=!1,Jl(this,Re),de=this._;break}}else if($e=Re.L,$e.C&&($e.C=!1,Re.C=!0,Nu(this,Re),$e=Re.L),$e.L&&$e.L.C||$e.R&&$e.R.C){(!$e.L||!$e.L.C)&&($e.R.C=!1,$e.C=!0,Jl(this,$e),$e=Re.L),$e.C=Re.C,Re.C=$e.L.C=!1,Nu(this,Re),de=this._;break}$e.C=!0,de=Re,Re=Re.U}while(!de.C);de&&(de.C=!1)}}};function Jl(de,Re){var $e=Re,pt=Re.R,vt=$e.U;vt?vt.L===$e?vt.L=pt:vt.R=pt:de._=pt,pt.U=vt,$e.U=pt,$e.R=pt.L,$e.R&&($e.R.U=$e),pt.L=$e}function Nu(de,Re){var $e=Re,pt=Re.L,vt=$e.U;vt?vt.L===$e?vt.L=pt:vt.R=pt:de._=pt,pt.U=vt,$e.U=pt,$e.L=pt.R,$e.L&&($e.L.U=$e),pt.R=$e}function Ic(de){for(;de.L;)de=de.L;return de}function Xu(de,Re){var $e=de.sort(Th).pop(),pt,vt,wt;for(Do=[],Ho=new Array(de.length),Qo=new El,ys=new El;;)if(wt=po,$e&&(!wt||$e.y<wt.y||$e.y===wt.y&&$e.x<wt.x))($e.x!==pt||$e.y!==vt)&&(Ho[$e.i]=new Ns($e),ol($e),pt=$e.x,vt=$e.y),$e=de.pop();else if(wt)mn(wt.arc);else break;Re&&(_s(Re),fs(Re));var Jt={cells:Ho,edges:Do};return Qo=ys=Do=Ho=null,Jt}function Th(de,Re){return Re.y-de.y||Re.x-de.x}g.geom.voronoi=function(de){var Re=Lo,$e=Xi,pt=Re,vt=$e,wt=bf;if(de)return Jt(de);function Jt(or){var Dr=new Array(or.length),Or=wt[0][0],va=wt[0][1],fa=wt[1][0],Va=wt[1][1];return Xu(Rt(or),wt).cells.forEach(function(Xa,_a){var Ra=Xa.edges,Na=Xa.site,Qa=Dr[_a]=Ra.length?Ra.map(function(Ya){var Da=Ya.start();return[Da.x,Da.y]}):Na.x>=Or&&Na.x<=fa&&Na.y>=va&&Na.y<=Va?[[Or,Va],[fa,Va],[fa,va],[Or,va]]:[];Qa.point=or[_a]}),Dr}function Rt(or){return or.map(function(Dr,Or){return{x:Math.round(pt(Dr,Or)/Ke)*Ke,y:Math.round(vt(Dr,Or)/Ke)*Ke,i:Or}})}return Jt.links=function(or){return Xu(Rt(or)).edges.filter(function(Dr){return Dr.l&&Dr.r}).map(function(Dr){return{source:or[Dr.l.i],target:or[Dr.r.i]}})},Jt.triangles=function(or){var Dr=[];return Xu(Rt(or)).cells.forEach(function(Or,va){for(var fa=Or.site,Va=Or.edges.sort(al),Xa=-1,_a=Va.length,Ra,Na,Qa=Va[_a-1].edge,Ya=Qa.l===fa?Qa.r:Qa.l;++Xa<_a;)Ra=Qa,Na=Ya,Qa=Va[Xa].edge,Ya=Qa.l===fa?Qa.r:Qa.l,va<Na.i&&va<Ya.i&&Rs(fa,Na,Ya)<0&&Dr.push([or[va],or[Na.i],or[Ya.i]])}),Dr},Jt.x=function(or){return arguments.length?(pt=$r(Re=or),Jt):Re},Jt.y=function(or){return arguments.length?(vt=$r($e=or),Jt):$e},Jt.clipExtent=function(or){return arguments.length?(wt=or??bf,Jt):wt===bf?null:wt},Jt.size=function(or){return arguments.length?Jt.clipExtent(or&&[[0,0],or]):wt===bf?null:wt&&wt[1]},Jt};var bf=[[-1e6,-1e6],[1e6,1e6]];function Rs(de,Re,$e){return(de.x-$e.x)*(Re.y-de.y)-(de.x-Re.x)*($e.y-de.y)}g.geom.delaunay=function(de){return g.geom.voronoi().triangles(de)},g.geom.quadtree=function(de,Re,$e,pt,vt){var wt=Lo,Jt=Xi,Rt;if(Rt=arguments.length)return wt=Yc,Jt=If,Rt===3&&(vt=$e,pt=Re,$e=Re=0),or(de);function or(Dr){var Or,va=$r(wt),fa=$r(Jt),Va,Xa,_a,Ra,Na,Qa,Ya,Da;if(Re!=null)Na=Re,Qa=$e,Ya=pt,Da=vt;else if(Ya=Da=-(Na=Qa=1/0),Va=[],Xa=[],Ra=Dr.length,Rt)for(_a=0;_a<Ra;++_a)Or=Dr[_a],Or.x<Na&&(Na=Or.x),Or.y<Qa&&(Qa=Or.y),Or.x>Ya&&(Ya=Or.x),Or.y>Da&&(Da=Or.y),Va.push(Or.x),Xa.push(Or.y);else for(_a=0;_a<Ra;++_a){var zi=+va(Or=Dr[_a],_a),Ni=+fa(Or,_a);zi<Na&&(Na=zi),Ni<Qa&&(Qa=Ni),zi>Ya&&(Ya=zi),Ni>Da&&(Da=Ni),Va.push(zi),Xa.push(Ni)}var Qi=Ya-Na,hn=Da-Qa;Qi>hn?Da=Qa+Qi:Ya=Na+hn;function Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){if(!(isNaN(Ks)||isNaN(Gs)))if(Gn.leaf){var hs=Gn.x,hl=Gn.y;if(hs!=null)if(l(hs-Ks)+l(hl-Gs)<.01)Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns);else{var Dl=Gn.point;Gn.x=Gn.y=Gn.point=null,Vn(Gn,Dl,hs,hl,sl,Vi,ao,ns),Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}else Gn.x=Ks,Gn.y=Gs,Gn.point=Fo}else Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}function Vn(Gn,Fo,Ks,Gs,sl,Vi,ao,ns){var hs=(sl+ao)*.5,hl=(Vi+ns)*.5,Dl=Ks>=hs,hu=Gs>=hl,Ll=hu<<1|Dl;Gn.leaf=!1,Gn=Gn.nodes[Ll]||(Gn.nodes[Ll]=Zl()),Dl?sl=hs:ao=hs,hu?Vi=hl:ns=hl,Un(Gn,Fo,Ks,Gs,sl,Vi,ao,ns)}var No=Zl();if(No.add=function(Gn){Un(No,Gn,+va(Gn,++_a),+fa(Gn,_a),Na,Qa,Ya,Da)},No.visit=function(Gn){yl(Gn,No,Na,Qa,Ya,Da)},No.find=function(Gn){return oc(No,Gn[0],Gn[1],Na,Qa,Ya,Da)},_a=-1,Re==null){for(;++_a<Ra;)Un(No,Dr[_a],Va[_a],Xa[_a],Na,Qa,Ya,Da);--_a}else Dr.forEach(No.add);return Va=Xa=Dr=Or=null,No}return or.x=function(Dr){return arguments.length?(wt=Dr,or):wt},or.y=function(Dr){return arguments.length?(Jt=Dr,or):Jt},or.extent=function(Dr){return arguments.length?(Dr==null?Re=$e=pt=vt=null:(Re=+Dr[0][0],$e=+Dr[0][1],pt=+Dr[1][0],vt=+Dr[1][1]),or):Re==null?null:[[Re,$e],[pt,vt]]},or.size=function(Dr){return arguments.length?(Dr==null?Re=$e=pt=vt=null:(Re=$e=0,pt=+Dr[0],vt=+Dr[1]),or):Re==null?null:[pt-Re,vt-$e]},or};function Yc(de){return de.x}function If(de){return de.y}function Zl(){return{leaf:!0,nodes:[],point:null,x:null,y:null}}function yl(de,Re,$e,pt,vt,wt){if(!de(Re,$e,pt,vt,wt)){var Jt=($e+vt)*.5,Rt=(pt+wt)*.5,or=Re.nodes;or[0]&&yl(de,or[0],$e,pt,Jt,Rt),or[1]&&yl(de,or[1],Jt,pt,vt,Rt),or[2]&&yl(de,or[2],$e,Rt,Jt,wt),or[3]&&yl(de,or[3],Jt,Rt,vt,wt)}}function oc(de,Re,$e,pt,vt,wt,Jt){var Rt=1/0,or;return function Dr(Or,va,fa,Va,Xa){if(!(va>wt||fa>Jt||Va<pt||Xa<vt)){if(_a=Or.point){var _a,Ra=Re-Or.x,Na=$e-Or.y,Qa=Ra*Ra+Na*Na;if(Qa<Rt){var Ya=Math.sqrt(Rt=Qa);pt=Re-Ya,vt=$e-Ya,wt=Re+Ya,Jt=$e+Ya,or=_a}}for(var Da=Or.nodes,zi=(va+Va)*.5,Ni=(fa+Xa)*.5,Qi=Re>=zi,hn=$e>=Ni,Un=hn<<1|Qi,Vn=Un+4;Un<Vn;++Un)if(Or=Da[Un&3])switch(Un&3){case 0:Dr(Or,va,fa,zi,Ni);break;case 1:Dr(Or,zi,fa,Va,Ni);break;case 2:Dr(Or,va,Ni,zi,Xa);break;case 3:Dr(Or,zi,Ni,Va,Xa);break}}}(de,pt,vt,wt,Jt),or}g.interpolateRgb=_c;function _c(de,Re){de=g.rgb(de),Re=g.rgb(Re);var $e=de.r,pt=de.g,vt=de.b,wt=Re.r-$e,Jt=Re.g-pt,Rt=Re.b-vt;return function(or){return"#"+Lr(Math.round($e+wt*or))+Lr(Math.round(pt+Jt*or))+Lr(Math.round(vt+Rt*or))}}g.interpolateObject=Zs;function Zs(de,Re){var $e={},pt={},vt;for(vt in de)vt in Re?$e[vt]=zl(de[vt],Re[vt]):pt[vt]=de[vt];for(vt in Re)vt in de||(pt[vt]=Re[vt]);return function(wt){for(vt in $e)pt[vt]=$e[vt](wt);return pt}}g.interpolateNumber=_l;function _l(de,Re){return de=+de,Re=+Re,function($e){return de*(1-$e)+Re*$e}}g.interpolateString=Bs;function Bs(de,Re){var $e=$s.lastIndex=sc.lastIndex=0,pt,vt,wt,Jt=-1,Rt=[],or=[];for(de=de+"",Re=Re+"";(pt=$s.exec(de))&&(vt=sc.exec(Re));)(wt=vt.index)>$e&&(wt=Re.slice($e,wt),Rt[Jt]?Rt[Jt]+=wt:Rt[++Jt]=wt),(pt=pt[0])===(vt=vt[0])?Rt[Jt]?Rt[Jt]+=vt:Rt[++Jt]=vt:(Rt[++Jt]=null,or.push({i:Jt,x:_l(pt,vt)})),$e=sc.lastIndex;return $e<Re.length&&(wt=Re.slice($e),Rt[Jt]?Rt[Jt]+=wt:Rt[++Jt]=wt),Rt.length<2?or[0]?(Re=or[0].x,function(Dr){return Re(Dr)+""}):function(){return Re}:(Re=or.length,function(Dr){for(var Or=0,va;Or<Re;++Or)Rt[(va=or[Or]).i]=va.x(Dr);return Rt.join("")})}var $s=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,sc=new RegExp($s.source,"g");g.interpolate=zl;function zl(de,Re){for(var $e=g.interpolators.length,pt;--$e>=0&&!(pt=g.interpolators[$e](de,Re)););return pt}g.interpolators=[function(de,Re){var $e=typeof Re;return($e==="string"?mr.has(Re.toLowerCase())||/^(#|rgb\(|hsl\()/i.test(Re)?_c:Bs:Re instanceof ni?_c:Array.isArray(Re)?Yu:$e==="object"&&isNaN(Re)?Zs:_l)(de,Re)}],g.interpolateArray=Yu;function Yu(de,Re){var $e=[],pt=[],vt=de.length,wt=Re.length,Jt=Math.min(de.length,Re.length),Rt;for(Rt=0;Rt<Jt;++Rt)$e.push(zl(de[Rt],Re[Rt]));for(;Rt<vt;++Rt)pt[Rt]=de[Rt];for(;Rt<wt;++Rt)pt[Rt]=Re[Rt];return function(or){for(Rt=0;Rt<Jt;++Rt)pt[Rt]=$e[Rt](or);return pt}}var Qs=function(){return F},fp=g.map({linear:Qs,poly:Zf,quad:function(){return hf},cubic:function(){return Ku},sin:function(){return Rc},exp:function(){return pf},circle:function(){return Fl},elastic:lh,back:Xf,bounce:function(){return Rf}}),es=g.map({in:F,out:Ss,"in-out":So,"out-in":function(de){return So(Ss(de))}});g.ease=function(de){var Re=de.indexOf("-"),$e=Re>=0?de.slice(0,Re):de,pt=Re>=0?de.slice(Re+1):"in";return $e=fp.get($e)||Qs,pt=es.get(pt)||F,Wh(pt($e.apply(null,x.call(arguments,1))))};function Wh(de){return function(Re){return Re<=0?0:Re>=1?1:de(Re)}}function Ss(de){return function(Re){return 1-de(1-Re)}}function So(de){return function(Re){return .5*(Re<.5?de(2*Re):2-de(2-2*Re))}}function hf(de){return de*de}function Ku(de){return de*de*de}function cu(de){if(de<=0)return 0;if(de>=1)return 1;var Re=de*de,$e=Re*de;return 4*(de<.5?$e:3*(de-Re)+$e-.75)}function Zf(de){return function(Re){return Math.pow(Re,de)}}function Rc(de){return 1-Math.cos(de*Te)}function pf(de){return Math.pow(2,10*(de-1))}function Fl(de){return 1-Math.sqrt(1-de*de)}function lh(de,Re){var $e;return arguments.length<2&&(Re=.45),arguments.length?$e=Re/Ve*Math.asin(1/de):(de=1,$e=Re/4),function(pt){return 1+de*Math.pow(2,-10*pt)*Math.sin((pt-$e)*Ve/Re)}}function Xf(de){return de||(de=1.70158),function(Re){return Re*Re*((de+1)*Re-de)}}function Rf(de){return de<1/2.75?7.5625*de*de:de<2/2.75?7.5625*(de-=1.5/2.75)*de+.75:de<2.5/2.75?7.5625*(de-=2.25/2.75)*de+.9375:7.5625*(de-=2.625/2.75)*de+.984375}g.interpolateHcl=Kc;function Kc(de,Re){de=g.hcl(de),Re=g.hcl(Re);var $e=de.h,pt=de.c,vt=de.l,wt=Re.h-$e,Jt=Re.c-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.c:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Zr($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateHsl=Yf;function Yf(de,Re){de=g.hsl(de),Re=g.hsl(Re);var $e=de.h,pt=de.s,vt=de.l,wt=Re.h-$e,Jt=Re.s-pt,Rt=Re.l-vt;return isNaN(Jt)&&(Jt=0,pt=isNaN(pt)?Re.s:pt),isNaN(wt)?(wt=0,$e=isNaN($e)?Re.h:$e):wt>180?wt-=360:wt<-180&&(wt+=360),function(or){return Vt($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateLab=uh;function uh(de,Re){de=g.lab(de),Re=g.lab(Re);var $e=de.l,pt=de.a,vt=de.b,wt=Re.l-$e,Jt=Re.a-pt,Rt=Re.b-vt;return function(or){return $a($e+wt*or,pt+Jt*or,vt+Rt*or)+""}}g.interpolateRound=Ju;function Ju(de,Re){return Re-=de,function($e){return Math.round(de+Re*$e)}}g.transform=function(de){var Re=M.createElementNS(g.ns.prefix.svg,"g");return(g.transform=function($e){if($e!=null){Re.setAttribute("transform",$e);var pt=Re.transform.baseVal.consolidate()}return new Df(pt?pt.matrix:wf)})(de)};function Df(de){var Re=[de.a,de.b],$e=[de.c,de.d],pt=Jc(Re),vt=Dc(Re,$e),wt=Jc(Eu($e,Re,-vt))||0;Re[0]*$e[1]<$e[0]*Re[1]&&(Re[0]*=-1,Re[1]*=-1,pt*=-1,vt*=-1),this.rotate=(pt?Math.atan2(Re[1],Re[0]):Math.atan2(-$e[0],$e[1]))*rt,this.translate=[de.e,de.f],this.scale=[pt,wt],this.skew=wt?Math.atan2(vt,wt)*rt:0}Df.prototype.toString=function(){return"translate("+this.translate+")rotate("+this.rotate+")skewX("+this.skew+")scale("+this.scale+")"};function Dc(de,Re){return de[0]*Re[0]+de[1]*Re[1]}function Jc(de){var Re=Math.sqrt(Dc(de,de));return Re&&(de[0]/=Re,de[1]/=Re),Re}function Eu(de,Re,$e){return de[0]+=$e*Re[0],de[1]+=$e*Re[1],de}var wf={a:1,b:0,c:0,d:1,e:0,f:0};g.interpolateTransform=df;function zc(de){return de.length?de.pop()+",":""}function Us(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push("translate(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]||Re[1])&&$e.push("translate("+Re+")")}function Kf(de,Re,$e,pt){de!==Re?(de-Re>180?Re+=360:Re-de>180&&(de+=360),pt.push({i:$e.push(zc($e)+"rotate(",null,")")-2,x:_l(de,Re)})):Re&&$e.push(zc($e)+"rotate("+Re+")")}function Zh(de,Re,$e,pt){de!==Re?pt.push({i:$e.push(zc($e)+"skewX(",null,")")-2,x:_l(de,Re)}):Re&&$e.push(zc($e)+"skewX("+Re+")")}function ch(de,Re,$e,pt){if(de[0]!==Re[0]||de[1]!==Re[1]){var vt=$e.push(zc($e)+"scale(",null,",",null,")");pt.push({i:vt-4,x:_l(de[0],Re[0])},{i:vt-2,x:_l(de[1],Re[1])})}else(Re[0]!==1||Re[1]!==1)&&$e.push(zc($e)+"scale("+Re+")")}function df(de,Re){var $e=[],pt=[];return de=g.transform(de),Re=g.transform(Re),Us(de.translate,Re.translate,$e,pt),Kf(de.rotate,Re.rotate,$e,pt),Zh(de.skew,Re.skew,$e,pt),ch(de.scale,Re.scale,$e,pt),de=Re=null,function(vt){for(var wt=-1,Jt=pt.length,Rt;++wt<Jt;)$e[(Rt=pt[wt]).i]=Rt.x(vt);return $e.join("")}}function Ah(de,Re){return Re=(Re-=de=+de)||1/Re,function($e){return($e-de)/Re}}function ku(de,Re){return Re=(Re-=de=+de)||1/Re,function($e){return Math.max(0,Math.min(1,($e-de)/Re))}}g.layout={},g.layout.bundle=function(){return function(de){for(var Re=[],$e=-1,pt=de.length;++$e<pt;)Re.push(fh(de[$e]));return Re}};function fh(de){for(var Re=de.source,$e=de.target,pt=Cu(Re,$e),vt=[Re];Re!==pt;)Re=Re.parent,vt.push(Re);for(var wt=vt.length;$e!==pt;)vt.splice(wt,0,$e),$e=$e.parent;return vt}function ru(de){for(var Re=[],$e=de.parent;$e!=null;)Re.push(de),de=$e,$e=$e.parent;return Re.push(de),Re}function Cu(de,Re){if(de===Re)return de;for(var $e=ru(de),pt=ru(Re),vt=$e.pop(),wt=pt.pop(),Jt=null;vt===wt;)Jt=vt,vt=$e.pop(),wt=pt.pop();return Jt}g.layout.chord=function(){var de={},Re,$e,pt,vt,wt=0,Jt,Rt,or;function Dr(){var va={},fa=[],Va=g.range(vt),Xa=[],_a,Ra,Na,Qa,Ya;for(Re=[],$e=[],_a=0,Qa=-1;++Qa<vt;){for(Ra=0,Ya=-1;++Ya<vt;)Ra+=pt[Qa][Ya];fa.push(Ra),Xa.push(g.range(vt)),_a+=Ra}for(Jt&&Va.sort(function(No,Gn){return Jt(fa[No],fa[Gn])}),Rt&&Xa.forEach(function(No,Gn){No.sort(function(Fo,Ks){return Rt(pt[Gn][Fo],pt[Gn][Ks])})}),_a=(Ve-wt*vt)/_a,Ra=0,Qa=-1;++Qa<vt;){for(Na=Ra,Ya=-1;++Ya<vt;){var Da=Va[Qa],zi=Xa[Da][Ya],Ni=pt[Da][zi],Qi=Ra,hn=Ra+=Ni*_a;va[Da+"-"+zi]={index:Da,subindex:zi,startAngle:Qi,endAngle:hn,value:Ni}}$e[Da]={index:Da,startAngle:Na,endAngle:Ra,value:fa[Da]},Ra+=wt}for(Qa=-1;++Qa<vt;)for(Ya=Qa-1;++Ya<vt;){var Un=va[Qa+"-"+Ya],Vn=va[Ya+"-"+Qa];(Un.value||Vn.value)&&Re.push(Un.value<Vn.value?{source:Vn,target:Un}:{source:Un,target:Vn})}or&&Or()}function Or(){Re.sort(function(va,fa){return or((va.source.value+va.target.value)/2,(fa.source.value+fa.target.value)/2)})}return de.matrix=function(va){return arguments.length?(vt=(pt=va)&&pt.length,Re=$e=null,de):pt},de.padding=function(va){return arguments.length?(wt=va,Re=$e=null,de):wt},de.sortGroups=function(va){return arguments.length?(Jt=va,Re=$e=null,de):Jt},de.sortSubgroups=function(va){return arguments.length?(Rt=va,Re=null,de):Rt},de.sortChords=function(va){return arguments.length?(or=va,Re&&Or(),de):or},de.chords=function(){return Re||Dr(),Re},de.groups=function(){return $e||Dr(),$e},de},g.layout.force=function(){var de={},Re=g.dispatch("start","tick","end"),$e,pt=[1,1],vt,wt,Jt=.9,Rt=xl,or=hh,Dr=-30,Or=Sh,va=.1,fa=.64,Va=[],Xa=[],_a,Ra,Na;function Qa(Da){return function(zi,Ni,Qi,hn){if(zi.point!==Da){var Un=zi.cx-Da.x,Vn=zi.cy-Da.y,No=hn-Ni,Gn=Un*Un+Vn*Vn;if(No*No/fa<Gn){if(Gn<Or){var Fo=zi.charge/Gn;Da.px-=Un*Fo,Da.py-=Vn*Fo}return!0}if(zi.point&&Gn&&Gn<Or){var Fo=zi.pointCharge/Gn;Da.px-=Un*Fo,Da.py-=Vn*Fo}}return!zi.charge}}de.tick=function(){if((wt*=.99)<.005)return $e=null,Re.end({type:"end",alpha:wt=0}),!0;var Da=Va.length,zi=Xa.length,Ni,Qi,hn,Un,Vn,No,Gn,Fo,Ks;for(Qi=0;Qi<zi;++Qi)hn=Xa[Qi],Un=hn.source,Vn=hn.target,Fo=Vn.x-Un.x,Ks=Vn.y-Un.y,(No=Fo*Fo+Ks*Ks)&&(No=wt*Ra[Qi]*((No=Math.sqrt(No))-_a[Qi])/No,Fo*=No,Ks*=No,Vn.x-=Fo*(Gn=Un.weight+Vn.weight?Un.weight/(Un.weight+Vn.weight):.5),Vn.y-=Ks*Gn,Un.x+=Fo*(Gn=1-Gn),Un.y+=Ks*Gn);if((Gn=wt*va)&&(Fo=pt[0]/2,Ks=pt[1]/2,Qi=-1,Gn))for(;++Qi<Da;)hn=Va[Qi],hn.x+=(Fo-hn.x)*Gn,hn.y+=(Ks-hn.y)*Gn;if(Dr)for(vu(Ni=g.geom.quadtree(Va),wt,Na),Qi=-1;++Qi<Da;)(hn=Va[Qi]).fixed||Ni.visit(Qa(hn));for(Qi=-1;++Qi<Da;)hn=Va[Qi],hn.fixed?(hn.x=hn.px,hn.y=hn.py):(hn.x-=(hn.px-(hn.px=hn.x))*Jt,hn.y-=(hn.py-(hn.py=hn.y))*Jt);Re.tick({type:"tick",alpha:wt})},de.nodes=function(Da){return arguments.length?(Va=Da,de):Va},de.links=function(Da){return arguments.length?(Xa=Da,de):Xa},de.size=function(Da){return arguments.length?(pt=Da,de):pt},de.linkDistance=function(Da){return arguments.length?(Rt=typeof Da=="function"?Da:+Da,de):Rt},de.distance=de.linkDistance,de.linkStrength=function(Da){return arguments.length?(or=typeof Da=="function"?Da:+Da,de):or},de.friction=function(Da){return arguments.length?(Jt=+Da,de):Jt},de.charge=function(Da){return arguments.length?(Dr=typeof Da=="function"?Da:+Da,de):Dr},de.chargeDistance=function(Da){return arguments.length?(Or=Da*Da,de):Math.sqrt(Or)},de.gravity=function(Da){return arguments.length?(va=+Da,de):va},de.theta=function(Da){return arguments.length?(fa=Da*Da,de):Math.sqrt(fa)},de.alpha=function(Da){return arguments.length?(Da=+Da,wt?Da>0?wt=Da:($e.c=null,$e.t=NaN,$e=null,Re.end({type:"end",alpha:wt=0})):Da>0&&(Re.start({type:"start",alpha:wt=Da}),$e=Mn(de.tick)),de):wt},de.start=function(){var Da,zi=Va.length,Ni=Xa.length,Qi=pt[0],hn=pt[1],Un,Vn;for(Da=0;Da<zi;++Da)(Vn=Va[Da]).index=Da,Vn.weight=0;for(Da=0;Da<Ni;++Da)Vn=Xa[Da],typeof Vn.source=="number"&&(Vn.source=Va[Vn.source]),typeof Vn.target=="number"&&(Vn.target=Va[Vn.target]),++Vn.source.weight,++Vn.target.weight;for(Da=0;Da<zi;++Da)Vn=Va[Da],isNaN(Vn.x)&&(Vn.x=No("x",Qi)),isNaN(Vn.y)&&(Vn.y=No("y",hn)),isNaN(Vn.px)&&(Vn.px=Vn.x),isNaN(Vn.py)&&(Vn.py=Vn.y);if(_a=[],typeof Rt=="function")for(Da=0;Da<Ni;++Da)_a[Da]=+Rt.call(this,Xa[Da],Da);else for(Da=0;Da<Ni;++Da)_a[Da]=Rt;if(Ra=[],typeof or=="function")for(Da=0;Da<Ni;++Da)Ra[Da]=+or.call(this,Xa[Da],Da);else for(Da=0;Da<Ni;++Da)Ra[Da]=or;if(Na=[],typeof Dr=="function")for(Da=0;Da<zi;++Da)Na[Da]=+Dr.call(this,Va[Da],Da);else for(Da=0;Da<zi;++Da)Na[Da]=Dr;function No(Gn,Fo){if(!Un){for(Un=new Array(zi),sl=0;sl<zi;++sl)Un[sl]=[];for(sl=0;sl<Ni;++sl){var Ks=Xa[sl];Un[Ks.source.index].push(Ks.target),Un[Ks.target.index].push(Ks.source)}}for(var Gs=Un[Da],sl=-1,Vi=Gs.length,ao;++sl<Vi;)if(!isNaN(ao=Gs[sl][Gn]))return ao;return Math.random()*Fo}return de.resume()},de.resume=function(){return de.alpha(.1)},de.stop=function(){return de.alpha(0)},de.drag=function(){if(vt||(vt=g.behavior.drag().origin(F).on("dragstart.force",xc).on("drag.force",Ya).on("dragend.force",kl)),!arguments.length)return vt;this.on("mouseover.force",Fc).on("mouseout.force",$u).call(vt)};function Ya(Da){Da.px=g.event.x,Da.py=g.event.y,de.resume()}return g.rebind(de,Re,"on")};function xc(de){de.fixed|=2}function kl(de){de.fixed&=-7}function Fc(de){de.fixed|=4,de.px=de.x,de.py=de.y}function $u(de){de.fixed&=-5}function vu(de,Re,$e){var pt=0,vt=0;if(de.charge=0,!de.leaf)for(var wt=de.nodes,Jt=wt.length,Rt=-1,or;++Rt<Jt;)or=wt[Rt],or!=null&&(vu(or,Re,$e),de.charge+=or.charge,pt+=or.charge*or.cx,vt+=or.charge*or.cy);if(de.point){de.leaf||(de.point.x+=Math.random()-.5,de.point.y+=Math.random()-.5);var Dr=Re*$e[de.point.index];de.charge+=de.pointCharge=Dr,pt+=Dr*de.point.x,vt+=Dr*de.point.y}de.cx=pt/de.charge,de.cy=vt/de.charge}var xl=20,hh=1,Sh=1/0;g.layout.hierarchy=function(){var de=Tf,Re=hp,$e=vf;function pt(vt){var wt=[vt],Jt=[],Rt;for(vt.depth=0;(Rt=wt.pop())!=null;)if(Jt.push(Rt),(Dr=Re.call(pt,Rt,Rt.depth))&&(or=Dr.length)){for(var or,Dr,Or;--or>=0;)wt.push(Or=Dr[or]),Or.parent=Rt,Or.depth=Rt.depth+1;$e&&(Rt.value=0),Rt.children=Dr}else $e&&(Rt.value=+$e.call(pt,Rt,Rt.depth)||0),delete Rt.children;return lc(vt,function(va){var fa,Va;de&&(fa=va.children)&&fa.sort(de),$e&&(Va=va.parent)&&(Va.value+=va.value)}),Jt}return pt.sort=function(vt){return arguments.length?(de=vt,pt):de},pt.children=function(vt){return arguments.length?(Re=vt,pt):Re},pt.value=function(vt){return arguments.length?($e=vt,pt):$e},pt.revalue=function(vt){return $e&&(bc(vt,function(wt){wt.children&&(wt.value=0)}),lc(vt,function(wt){var Jt;wt.children||(wt.value=+$e.call(pt,wt,wt.depth)||0),(Jt=wt.parent)&&(Jt.value+=wt.value)})),vt},pt};function Uu(de,Re){return g.rebind(de,Re,"sort","children","value"),de.nodes=de,de.links=Lu,de}function bc(de,Re){for(var $e=[de];(de=$e.pop())!=null;)if(Re(de),(vt=de.children)&&(pt=vt.length))for(var pt,vt;--pt>=0;)$e.push(vt[pt])}function lc(de,Re){for(var $e=[de],pt=[];(de=$e.pop())!=null;)if(pt.push(de),(Jt=de.children)&&(wt=Jt.length))for(var vt=-1,wt,Jt;++vt<wt;)$e.push(Jt[vt]);for(;(de=pt.pop())!=null;)Re(de)}function hp(de){return de.children}function vf(de){return de.value}function Tf(de,Re){return Re.value-de.value}function Lu(de){return g.merge(de.map(function(Re){return(Re.children||[]).map(function($e){return{source:Re,target:$e}})}))}g.layout.partition=function(){var de=g.layout.hierarchy(),Re=[1,1];function $e(wt,Jt,Rt,or){var Dr=wt.children;if(wt.x=Jt,wt.y=wt.depth*or,wt.dx=Rt,wt.dy=or,Dr&&(va=Dr.length)){var Or=-1,va,fa,Va;for(Rt=wt.value?Rt/wt.value:0;++Or<va;)$e(fa=Dr[Or],Jt,Va=fa.value*Rt,or),Jt+=Va}}function pt(wt){var Jt=wt.children,Rt=0;if(Jt&&(Dr=Jt.length))for(var or=-1,Dr;++or<Dr;)Rt=Math.max(Rt,pt(Jt[or]));return 1+Rt}function vt(wt,Jt){var Rt=de.call(this,wt,Jt);return $e(Rt[0],0,Re[0],Re[1]/pt(Rt[0])),Rt}return vt.size=function(wt){return arguments.length?(Re=wt,vt):Re},Uu(vt,de)},g.layout.pie=function(){var de=Number,Re=zf,$e=0,pt=Ve,vt=0;function wt(Jt){var Rt=Jt.length,or=Jt.map(function(Qa,Ya){return+de.call(wt,Qa,Ya)}),Dr=+(typeof $e=="function"?$e.apply(this,arguments):$e),Or=(typeof pt=="function"?pt.apply(this,arguments):pt)-Dr,va=Math.min(Math.abs(Or)/Rt,+(typeof vt=="function"?vt.apply(this,arguments):vt)),fa=va*(Or<0?-1:1),Va=g.sum(or),Xa=Va?(Or-Rt*fa)/Va:0,_a=g.range(Rt),Ra=[],Na;return Re!=null&&_a.sort(Re===zf?function(Qa,Ya){return or[Ya]-or[Qa]}:function(Qa,Ya){return Re(Jt[Qa],Jt[Ya])}),_a.forEach(function(Qa){Ra[Qa]={data:Jt[Qa],value:Na=or[Qa],startAngle:Dr,endAngle:Dr+=Na*Xa+fa,padAngle:va}}),Ra}return wt.value=function(Jt){return arguments.length?(de=Jt,wt):de},wt.sort=function(Jt){return arguments.length?(Re=Jt,wt):Re},wt.startAngle=function(Jt){return arguments.length?($e=Jt,wt):$e},wt.endAngle=function(Jt){return arguments.length?(pt=Jt,wt):pt},wt.padAngle=function(Jt){return arguments.length?(vt=Jt,wt):vt},wt};var zf={};g.layout.stack=function(){var de=F,Re=mu,$e=gu,pt=Mh,vt=au,wt=$c;function Jt(Rt,or){if(!(Xa=Rt.length))return Rt;var Dr=Rt.map(function(Qa,Ya){return de.call(Jt,Qa,Ya)}),Or=Dr.map(function(Qa){return Qa.map(function(Ya,Da){return[vt.call(Jt,Ya,Da),wt.call(Jt,Ya,Da)]})}),va=Re.call(Jt,Or,or);Dr=g.permute(Dr,va),Or=g.permute(Or,va);var fa=$e.call(Jt,Or,or),Va=Dr[0].length,Xa,_a,Ra,Na;for(Ra=0;Ra<Va;++Ra)for(pt.call(Jt,Dr[0][Ra],Na=fa[Ra],Or[0][Ra][1]),_a=1;_a<Xa;++_a)pt.call(Jt,Dr[_a][Ra],Na+=Or[_a-1][Ra][1],Or[_a][Ra][1]);return Rt}return Jt.values=function(Rt){return arguments.length?(de=Rt,Jt):de},Jt.order=function(Rt){return arguments.length?(Re=typeof Rt=="function"?Rt:Ff.get(Rt)||mu,Jt):Re},Jt.offset=function(Rt){return arguments.length?($e=typeof Rt=="function"?Rt:il.get(Rt)||gu,Jt):$e},Jt.x=function(Rt){return arguments.length?(vt=Rt,Jt):vt},Jt.y=function(Rt){return arguments.length?(wt=Rt,Jt):wt},Jt.out=function(Rt){return arguments.length?(pt=Rt,Jt):pt},Jt};function au(de){return de.x}function $c(de){return de.y}function Mh(de,Re,$e){de.y0=Re,de.y=$e}var Ff=g.map({"inside-out":function(de){var Re=de.length,$e,pt,vt=de.map(Jf),wt=de.map(el),Jt=g.range(Re).sort(function(va,fa){return vt[va]-vt[fa]}),Rt=0,or=0,Dr=[],Or=[];for($e=0;$e<Re;++$e)pt=Jt[$e],Rt<or?(Rt+=wt[pt],Dr.push(pt)):(or+=wt[pt],Or.push(pt));return Or.reverse().concat(Dr)},reverse:function(de){return g.range(de.length).reverse()},default:mu}),il=g.map({silhouette:function(de){var Re=de.length,$e=de[0].length,pt=[],vt=0,wt,Jt,Rt,or=[];for(Jt=0;Jt<$e;++Jt){for(wt=0,Rt=0;wt<Re;wt++)Rt+=de[wt][Jt][1];Rt>vt&&(vt=Rt),pt.push(Rt)}for(Jt=0;Jt<$e;++Jt)or[Jt]=(vt-pt[Jt])/2;return or},wiggle:function(de){var Re=de.length,$e=de[0],pt=$e.length,vt,wt,Jt,Rt,or,Dr,Or,va,fa,Va=[];for(Va[0]=va=fa=0,wt=1;wt<pt;++wt){for(vt=0,Rt=0;vt<Re;++vt)Rt+=de[vt][wt][1];for(vt=0,or=0,Or=$e[wt][0]-$e[wt-1][0];vt<Re;++vt){for(Jt=0,Dr=(de[vt][wt][1]-de[vt][wt-1][1])/(2*Or);Jt<vt;++Jt)Dr+=(de[Jt][wt][1]-de[Jt][wt-1][1])/Or;or+=Dr*de[vt][wt][1]}Va[wt]=va-=Rt?or/Rt*Or:0,va<fa&&(fa=va)}for(wt=0;wt<pt;++wt)Va[wt]-=fa;return Va},expand:function(de){var Re=de.length,$e=de[0].length,pt=1/Re,vt,wt,Jt,Rt=[];for(wt=0;wt<$e;++wt){for(vt=0,Jt=0;vt<Re;vt++)Jt+=de[vt][wt][1];if(Jt)for(vt=0;vt<Re;vt++)de[vt][wt][1]/=Jt;else for(vt=0;vt<Re;vt++)de[vt][wt][1]=pt}for(wt=0;wt<$e;++wt)Rt[wt]=0;return Rt},zero:gu});function mu(de){return g.range(de.length)}function gu(de){for(var Re=-1,$e=de[0].length,pt=[];++Re<$e;)pt[Re]=0;return pt}function Jf(de){for(var Re=1,$e=0,pt=de[0][1],vt,wt=de.length;Re<wt;++Re)(vt=de[Re][1])>pt&&($e=Re,pt=vt);return $e}function el(de){return de.reduce(mf,0)}function mf(de,Re){return de+Re[1]}g.layout.histogram=function(){var de=!0,Re=Number,$e=Af,pt=wc;function vt(wt,fa){for(var Rt=[],or=wt.map(Re,this),Dr=$e.call(this,or,fa),Or=pt.call(this,Dr,or,fa),va,fa=-1,Va=or.length,Xa=Or.length-1,_a=de?1:1/Va,Ra;++fa<Xa;)va=Rt[fa]=[],va.dx=Or[fa+1]-(va.x=Or[fa]),va.y=0;if(Xa>0)for(fa=-1;++fa<Va;)Ra=or[fa],Ra>=Dr[0]&&Ra<=Dr[1]&&(va=Rt[g.bisect(Or,Ra,1,Xa)-1],va.y+=_a,va.push(wt[fa]));return Rt}return vt.value=function(wt){return arguments.length?(Re=wt,vt):Re},vt.range=function(wt){return arguments.length?($e=$r(wt),vt):$e},vt.bins=function(wt){return arguments.length?(pt=typeof wt=="number"?function(Jt){return ju(Jt,wt)}:$r(wt),vt):pt},vt.frequency=function(wt){return arguments.length?(de=!!wt,vt):de},vt};function wc(de,Re){return ju(de,Math.ceil(Math.log(Re.length)/Math.LN2+1))}function ju(de,Re){for(var $e=-1,pt=+de[0],vt=(de[1]-pt)/Re,wt=[];++$e<=Re;)wt[$e]=vt*$e+pt;return wt}function Af(de){return[g.min(de),g.max(de)]}g.layout.pack=function(){var de=g.layout.hierarchy().sort(uc),Re=0,$e=[1,1],pt;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr=$e[0],Or=$e[1],va=pt==null?Math.sqrt:typeof pt=="function"?pt:function(){return pt};if(or.x=or.y=0,lc(or,function(Va){Va.r=+va(Va.value)}),lc(or,Qf),Re){var fa=Re*(pt?1:Math.max(2*or.r/Dr,2*or.r/Or))/2;lc(or,function(Va){Va.r+=fa}),lc(or,Qf),lc(or,function(Va){Va.r-=fa})}return cc(or,Dr/2,Or/2,pt?1:1/Math.max(2*or.r/Dr,2*or.r/Or)),Rt}return vt.size=function(wt){return arguments.length?($e=wt,vt):$e},vt.radius=function(wt){return arguments.length?(pt=wt==null||typeof wt=="function"?wt:+wt,vt):pt},vt.padding=function(wt){return arguments.length?(Re=+wt,vt):Re},Uu(vt,de)};function uc(de,Re){return de.value-Re.value}function Qc(de,Re){var $e=de._pack_next;de._pack_next=Re,Re._pack_prev=de,Re._pack_next=$e,$e._pack_prev=Re}function $f(de,Re){de._pack_next=Re,Re._pack_prev=de}function Vl(de,Re){var $e=Re.x-de.x,pt=Re.y-de.y,vt=de.r+Re.r;return .999*vt*vt>$e*$e+pt*pt}function Qf(de){if(!(Re=de.children)||!(fa=Re.length))return;var Re,$e=1/0,pt=-1/0,vt=1/0,wt=-1/0,Jt,Rt,or,Dr,Or,va,fa;function Va(Da){$e=Math.min(Da.x-Da.r,$e),pt=Math.max(Da.x+Da.r,pt),vt=Math.min(Da.y-Da.r,vt),wt=Math.max(Da.y+Da.r,wt)}if(Re.forEach(Vu),Jt=Re[0],Jt.x=-Jt.r,Jt.y=0,Va(Jt),fa>1&&(Rt=Re[1],Rt.x=Rt.r,Rt.y=0,Va(Rt),fa>2))for(or=Re[2],Cl(Jt,Rt,or),Va(or),Qc(Jt,or),Jt._pack_prev=or,Qc(or,Rt),Rt=Jt._pack_next,Dr=3;Dr<fa;Dr++){Cl(Jt,Rt,or=Re[Dr]);var Xa=0,_a=1,Ra=1;for(Or=Rt._pack_next;Or!==Rt;Or=Or._pack_next,_a++)if(Vl(Or,or)){Xa=1;break}if(Xa==1)for(va=Jt._pack_prev;va!==Or._pack_prev&&!Vl(va,or);va=va._pack_prev,Ra++);Xa?(_a<Ra||_a==Ra&&Rt.r<Jt.r?$f(Jt,Rt=Or):$f(Jt=va,Rt),Dr--):(Qc(Jt,or),Rt=or,Va(or))}var Na=($e+pt)/2,Qa=(vt+wt)/2,Ya=0;for(Dr=0;Dr<fa;Dr++)or=Re[Dr],or.x-=Na,or.y-=Qa,Ya=Math.max(Ya,or.r+Math.sqrt(or.x*or.x+or.y*or.y));de.r=Ya,Re.forEach(Tc)}function Vu(de){de._pack_next=de._pack_prev=de}function Tc(de){delete de._pack_next,delete de._pack_prev}function cc(de,Re,$e,pt){var vt=de.children;if(de.x=Re+=pt*de.x,de.y=$e+=pt*de.y,de.r*=pt,vt)for(var wt=-1,Jt=vt.length;++wt<Jt;)cc(vt[wt],Re,$e,pt)}function Cl(de,Re,$e){var pt=de.r+$e.r,vt=Re.x-de.x,wt=Re.y-de.y;if(pt&&(vt||wt)){var Jt=Re.r+$e.r,Rt=vt*vt+wt*wt;Jt*=Jt,pt*=pt;var or=.5+(pt-Jt)/(2*Rt),Dr=Math.sqrt(Math.max(0,2*Jt*(pt+Rt)-(pt-=Rt)*pt-Jt*Jt))/(2*Rt);$e.x=de.x+or*vt+Dr*wt,$e.y=de.y+or*wt-Dr*vt}else $e.x=de.x+pt,$e.y=de.y}g.layout.tree=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=iu,$e=[1,1],pt=null;function vt(Or,va){var fa=de.call(this,Or,va),Va=fa[0],Xa=wt(Va);if(lc(Xa,Jt),Xa.parent.m=-Xa.z,bc(Xa,Rt),pt)bc(Va,Dr);else{var _a=Va,Ra=Va,Na=Va;bc(Va,function(zi){zi.x<_a.x&&(_a=zi),zi.x>Ra.x&&(Ra=zi),zi.depth>Na.depth&&(Na=zi)});var Qa=Re(_a,Ra)/2-_a.x,Ya=$e[0]/(Ra.x+Re(Ra,_a)/2+Qa),Da=$e[1]/(Na.depth||1);bc(Va,function(zi){zi.x=(zi.x+Qa)*Ya,zi.y=zi.depth*Da})}return fa}function wt(Or){for(var va={A:null,children:[Or]},fa=[va],Va;(Va=fa.pop())!=null;)for(var Xa=Va.children,_a,Ra=0,Na=Xa.length;Ra<Na;++Ra)fa.push((Xa[Ra]=_a={_:Xa[Ra],parent:Va,children:(_a=Xa[Ra].children)&&_a.slice()||[],A:null,a:null,z:0,m:0,c:0,s:0,t:null,i:Ra}).a=_a);return va.children[0]}function Jt(Or){var va=Or.children,fa=Or.parent.children,Va=Or.i?fa[Or.i-1]:null;if(va.length){ef(Or);var Xa=(va[0].z+va[va.length-1].z)/2;Va?(Or.z=Va.z+Re(Or._,Va._),Or.m=Or.z-Xa):Or.z=Xa}else Va&&(Or.z=Va.z+Re(Or._,Va._));Or.parent.A=or(Or,Va,Or.parent.A||fa[0])}function Rt(Or){Or._.x=Or.z+Or.parent.m,Or.m+=Or.parent.m}function or(Or,va,fa){if(va){for(var Va=Or,Xa=Or,_a=va,Ra=Va.parent.children[0],Na=Va.m,Qa=Xa.m,Ya=_a.m,Da=Ra.m,zi;_a=Oc(_a),Va=fc(Va),_a&&Va;)Ra=fc(Ra),Xa=Oc(Xa),Xa.a=Or,zi=_a.z+Ya-Va.z-Na+Re(_a._,Va._),zi>0&&(Qu(Zt(_a,Or,fa),Or,zi),Na+=zi,Qa+=zi),Ya+=_a.m,Na+=Va.m,Da+=Ra.m,Qa+=Xa.m;_a&&!Oc(Xa)&&(Xa.t=_a,Xa.m+=Ya-Qa),Va&&!fc(Ra)&&(Ra.t=Va,Ra.m+=Na-Da,fa=Or)}return fa}function Dr(Or){Or.x*=$e[0],Or.y=Or.depth*$e[1]}return vt.separation=function(Or){return arguments.length?(Re=Or,vt):Re},vt.size=function(Or){return arguments.length?(pt=($e=Or)==null?Dr:null,vt):pt?null:$e},vt.nodeSize=function(Or){return arguments.length?(pt=($e=Or)==null?null:Dr,vt):pt?$e:null},Uu(vt,de)};function iu(de,Re){return de.parent==Re.parent?1:2}function fc(de){var Re=de.children;return Re.length?Re[0]:de.t}function Oc(de){var Re=de.children,$e;return($e=Re.length)?Re[$e-1]:de.t}function Qu(de,Re,$e){var pt=$e/(Re.i-de.i);Re.c-=pt,Re.s+=$e,de.c+=pt,Re.z+=$e,Re.m+=$e}function ef(de){for(var Re=0,$e=0,pt=de.children,vt=pt.length,wt;--vt>=0;)wt=pt[vt],wt.z+=Re,wt.m+=Re,Re+=wt.s+($e+=wt.c)}function Zt(de,Re,$e){return de.a.parent===Re.parent?de.a:$e}g.layout.cluster=function(){var de=g.layout.hierarchy().sort(null).value(null),Re=iu,$e=[1,1],pt=!1;function vt(wt,Jt){var Rt=de.call(this,wt,Jt),or=Rt[0],Dr,Or=0;lc(or,function(_a){var Ra=_a.children;Ra&&Ra.length?(_a.x=Yr(Ra),_a.y=fr(Ra)):(_a.x=Dr?Or+=Re(_a,Dr):0,_a.y=0,Dr=_a)});var va=qr(or),fa=ba(or),Va=va.x-Re(va,fa)/2,Xa=fa.x+Re(fa,va)/2;return lc(or,pt?function(_a){_a.x=(_a.x-or.x)*$e[0],_a.y=(or.y-_a.y)*$e[1]}:function(_a){_a.x=(_a.x-Va)/(Xa-Va)*$e[0],_a.y=(1-(or.y?_a.y/or.y:1))*$e[1]}),Rt}return vt.separation=function(wt){return arguments.length?(Re=wt,vt):Re},vt.size=function(wt){return arguments.length?(pt=($e=wt)==null,vt):pt?null:$e},vt.nodeSize=function(wt){return arguments.length?(pt=($e=wt)!=null,vt):pt?$e:null},Uu(vt,de)};function fr(de){return 1+g.max(de,function(Re){return Re.y})}function Yr(de){return de.reduce(function(Re,$e){return Re+$e.x},0)/de.length}function qr(de){var Re=de.children;return Re&&Re.length?qr(Re[0]):de}function ba(de){var Re=de.children,$e;return Re&&($e=Re.length)?ba(Re[$e-1]):de}g.layout.treemap=function(){var de=g.layout.hierarchy(),Re=Math.round,$e=[1,1],pt=null,vt=Ka,wt=!1,Jt,Rt="squarify",or=.5*(1+Math.sqrt(5));function Dr(_a,Ra){for(var Na=-1,Qa=_a.length,Ya,Da;++Na<Qa;)Da=(Ya=_a[Na]).value*(Ra<0?0:Ra),Ya.area=isNaN(Da)||Da<=0?0:Da}function Or(_a){var Ra=_a.children;if(Ra&&Ra.length){var Na=vt(_a),Qa=[],Ya=Ra.slice(),Da,zi=1/0,Ni,Qi=Rt==="slice"?Na.dx:Rt==="dice"?Na.dy:Rt==="slice-dice"?_a.depth&1?Na.dy:Na.dx:Math.min(Na.dx,Na.dy),hn;for(Dr(Ya,Na.dx*Na.dy/_a.value),Qa.area=0;(hn=Ya.length)>0;)Qa.push(Da=Ya[hn-1]),Qa.area+=Da.area,Rt!=="squarify"||(Ni=fa(Qa,Qi))<=zi?(Ya.pop(),zi=Ni):(Qa.area-=Qa.pop().area,Va(Qa,Qi,Na,!1),Qi=Math.min(Na.dx,Na.dy),Qa.length=Qa.area=0,zi=1/0);Qa.length&&(Va(Qa,Qi,Na,!0),Qa.length=Qa.area=0),Ra.forEach(Or)}}function va(_a){var Ra=_a.children;if(Ra&&Ra.length){var Na=vt(_a),Qa=Ra.slice(),Ya,Da=[];for(Dr(Qa,Na.dx*Na.dy/_a.value),Da.area=0;Ya=Qa.pop();)Da.push(Ya),Da.area+=Ya.area,Ya.z!=null&&(Va(Da,Ya.z?Na.dx:Na.dy,Na,!Qa.length),Da.length=Da.area=0);Ra.forEach(va)}}function fa(_a,Ra){for(var Na=_a.area,Qa,Ya=0,Da=1/0,zi=-1,Ni=_a.length;++zi<Ni;)(Qa=_a[zi].area)&&(Qa<Da&&(Da=Qa),Qa>Ya&&(Ya=Qa));return Na*=Na,Ra*=Ra,Na?Math.max(Ra*Ya*or/Na,Na/(Ra*Da*or)):1/0}function Va(_a,Ra,Na,Qa){var Ya=-1,Da=_a.length,zi=Na.x,Ni=Na.y,Qi=Ra?Re(_a.area/Ra):0,hn;if(Ra==Na.dx){for((Qa||Qi>Na.dy)&&(Qi=Na.dy);++Ya<Da;)hn=_a[Ya],hn.x=zi,hn.y=Ni,hn.dy=Qi,zi+=hn.dx=Math.min(Na.x+Na.dx-zi,Qi?Re(hn.area/Qi):0);hn.z=!0,hn.dx+=Na.x+Na.dx-zi,Na.y+=Qi,Na.dy-=Qi}else{for((Qa||Qi>Na.dx)&&(Qi=Na.dx);++Ya<Da;)hn=_a[Ya],hn.x=zi,hn.y=Ni,hn.dx=Qi,Ni+=hn.dy=Math.min(Na.y+Na.dy-Ni,Qi?Re(hn.area/Qi):0);hn.z=!1,hn.dy+=Na.y+Na.dy-Ni,Na.x+=Qi,Na.dx-=Qi}}function Xa(_a){var Ra=Jt||de(_a),Na=Ra[0];return Na.x=Na.y=0,Na.value?(Na.dx=$e[0],Na.dy=$e[1]):Na.dx=Na.dy=0,Jt&&de.revalue(Na),Dr([Na],Na.dx*Na.dy/Na.value),(Jt?va:Or)(Na),wt&&(Jt=Ra),Ra}return Xa.size=function(_a){return arguments.length?($e=_a,Xa):$e},Xa.padding=function(_a){if(!arguments.length)return pt;function Ra(Ya){var Da=_a.call(Xa,Ya,Ya.depth);return Da==null?Ka(Ya):oi(Ya,typeof Da=="number"?[Da,Da,Da,Da]:Da)}function Na(Ya){return oi(Ya,_a)}var Qa;return vt=(pt=_a)==null?Ka:(Qa=typeof _a)=="function"?Ra:(Qa==="number"&&(_a=[_a,_a,_a,_a]),Na),Xa},Xa.round=function(_a){return arguments.length?(Re=_a?Math.round:Number,Xa):Re!=Number},Xa.sticky=function(_a){return arguments.length?(wt=_a,Jt=null,Xa):wt},Xa.ratio=function(_a){return arguments.length?(or=_a,Xa):or},Xa.mode=function(_a){return arguments.length?(Rt=_a+"",Xa):Rt},Uu(Xa,de)};function Ka(de){return{x:de.x,y:de.y,dx:de.dx,dy:de.dy}}function oi(de,Re){var $e=de.x+Re[3],pt=de.y+Re[0],vt=de.dx-Re[1]-Re[3],wt=de.dy-Re[0]-Re[2];return vt<0&&($e+=vt/2,vt=0),wt<0&&(pt+=wt/2,wt=0),{x:$e,y:pt,dx:vt,dy:wt}}g.random={normal:function(de,Re){var $e=arguments.length;return $e<2&&(Re=1),$e<1&&(de=0),function(){var pt,vt,wt;do pt=Math.random()*2-1,vt=Math.random()*2-1,wt=pt*pt+vt*vt;while(!wt||wt>1);return de+Re*pt*Math.sqrt(-2*Math.log(wt)/wt)}},logNormal:function(){var de=g.random.normal.apply(g,arguments);return function(){return Math.exp(de())}},bates:function(de){var Re=g.random.irwinHall(de);return function(){return Re()/de}},irwinHall:function(de){return function(){for(var Re=0,$e=0;$e<de;$e++)Re+=Math.random();return Re}}},g.scale={};function yi(de){var Re=de[0],$e=de[de.length-1];return Re<$e?[Re,$e]:[$e,Re]}function ki(de){return de.rangeExtent?de.rangeExtent():yi(de.range())}function Bi(de,Re,$e,pt){var vt=$e(de[0],de[1]),wt=pt(Re[0],Re[1]);return function(Jt){return wt(vt(Jt))}}function li(de,Re){var $e=0,pt=de.length-1,vt=de[$e],wt=de[pt],Jt;return wt<vt&&(Jt=$e,$e=pt,pt=Jt,Jt=vt,vt=wt,wt=Jt),de[$e]=Re.floor(vt),de[pt]=Re.ceil(wt),de}function _i(de){return de?{floor:function(Re){return Math.floor(Re/de)*de},ceil:function(Re){return Math.ceil(Re/de)*de}}:vi}var vi={floor:F,ceil:F};function ti(de,Re,$e,pt){var vt=[],wt=[],Jt=0,Rt=Math.min(de.length,Re.length)-1;for(de[Rt]<de[0]&&(de=de.slice().reverse(),Re=Re.slice().reverse());++Jt<=Rt;)vt.push($e(de[Jt-1],de[Jt])),wt.push(pt(Re[Jt-1],Re[Jt]));return function(or){var Dr=g.bisect(de,or,1,Rt)-1;return wt[Dr](vt[Dr](or))}}g.scale.linear=function(){return rn([0,1],[0,1],zl,!1)};function rn(de,Re,$e,pt){var vt,wt;function Jt(){var or=Math.min(de.length,Re.length)>2?ti:Bi,Dr=pt?ku:Ah;return vt=or(de,Re,Dr,$e),wt=or(Re,de,Dr,zl),Rt}function Rt(or){return vt(or)}return Rt.invert=function(or){return wt(or)},Rt.domain=function(or){return arguments.length?(de=or.map(Number),Jt()):de},Rt.range=function(or){return arguments.length?(Re=or,Jt()):Re},Rt.rangeRound=function(or){return Rt.range(or).interpolate(Ju)},Rt.clamp=function(or){return arguments.length?(pt=or,Jt()):pt},Rt.interpolate=function(or){return arguments.length?($e=or,Jt()):$e},Rt.ticks=function(or){return no(de,or)},Rt.tickFormat=function(or,Dr){return d3_scale_linearTickFormat(de,or,Dr)},Rt.nice=function(or){return Wn(de,or),Jt()},Rt.copy=function(){return rn(de,Re,$e,pt)},Jt()}function Kn(de,Re){return g.rebind(de,Re,"range","rangeRound","interpolate","clamp")}function Wn(de,Re){return li(de,_i(Jn(de,Re)[2])),li(de,_i(Jn(de,Re)[2])),de}function Jn(de,Re){Re==null&&(Re=10);var $e=yi(de),pt=$e[1]-$e[0],vt=Math.pow(10,Math.floor(Math.log(pt/Re)/Math.LN10)),wt=Re/pt*vt;return wt<=.15?vt*=10:wt<=.35?vt*=5:wt<=.75&&(vt*=2),$e[0]=Math.ceil($e[0]/vt)*vt,$e[1]=Math.floor($e[1]/vt)*vt+vt*.5,$e[2]=vt,$e}function no(de,Re){return g.range.apply(g,Jn(de,Re))}var en={s:1,g:1,p:1,r:1,e:1};function Ri(de){return-Math.floor(Math.log(de)/Math.LN10+.01)}function co(de,Re){var $e=Ri(Re[2]);return de in en?Math.abs($e-Ri(Math.max(l(Re[0]),l(Re[1]))))+ +(de!=="e"):$e-(de==="%")*2}g.scale.log=function(){return Wo(g.scale.linear().domain([0,1]),10,!0,[1,10])};function Wo(de,Re,$e,pt){function vt(Rt){return($e?Math.log(Rt<0?0:Rt):-Math.log(Rt>0?0:-Rt))/Math.log(Re)}function wt(Rt){return $e?Math.pow(Re,Rt):-Math.pow(Re,-Rt)}function Jt(Rt){return de(vt(Rt))}return Jt.invert=function(Rt){return wt(de.invert(Rt))},Jt.domain=function(Rt){return arguments.length?($e=Rt[0]>=0,de.domain((pt=Rt.map(Number)).map(vt)),Jt):pt},Jt.base=function(Rt){return arguments.length?(Re=+Rt,de.domain(pt.map(vt)),Jt):Re},Jt.nice=function(){var Rt=li(pt.map(vt),$e?Math:bs);return de.domain(Rt),pt=Rt.map(wt),Jt},Jt.ticks=function(){var Rt=yi(pt),or=[],Dr=Rt[0],Or=Rt[1],va=Math.floor(vt(Dr)),fa=Math.ceil(vt(Or)),Va=Re%1?2:Re;if(isFinite(fa-va)){if($e){for(;va<fa;va++)for(var Xa=1;Xa<Va;Xa++)or.push(wt(va)*Xa);or.push(wt(va))}else for(or.push(wt(va));va++<fa;)for(var Xa=Va-1;Xa>0;Xa--)or.push(wt(va)*Xa);for(va=0;or[va]<Dr;va++);for(fa=or.length;or[fa-1]>Or;fa--);or=or.slice(va,fa)}return or},Jt.copy=function(){return Wo(de.copy(),Re,$e,pt)},Kn(Jt,de)}var bs={floor:function(de){return-Math.ceil(-de)},ceil:function(de){return-Math.floor(-de)}};g.scale.pow=function(){return Xs(g.scale.linear(),1,[0,1])};function Xs(de,Re,$e){var pt=Ms(Re),vt=Ms(1/Re);function wt(Jt){return de(pt(Jt))}return wt.invert=function(Jt){return vt(de.invert(Jt))},wt.domain=function(Jt){return arguments.length?(de.domain(($e=Jt.map(Number)).map(pt)),wt):$e},wt.ticks=function(Jt){return no($e,Jt)},wt.tickFormat=function(Jt,Rt){return d3_scale_linearTickFormat($e,Jt,Rt)},wt.nice=function(Jt){return wt.domain(Wn($e,Jt))},wt.exponent=function(Jt){return arguments.length?(pt=Ms(Re=Jt),vt=Ms(1/Re),de.domain($e.map(pt)),wt):Re},wt.copy=function(){return Xs(de.copy(),Re,$e)},Kn(wt,de)}function Ms(de){return function(Re){return Re<0?-Math.pow(-Re,de):Math.pow(Re,de)}}g.scale.sqrt=function(){return g.scale.pow().exponent(.5)},g.scale.ordinal=function(){return Hs([],{t:"range",a:[[]]})};function Hs(de,Re){var $e,pt,vt;function wt(Rt){return pt[(($e.get(Rt)||(Re.t==="range"?$e.set(Rt,de.push(Rt)):NaN))-1)%pt.length]}function Jt(Rt,or){return g.range(de.length).map(function(Dr){return Rt+or*Dr})}return wt.domain=function(Rt){if(!arguments.length)return de;de=[],$e=new S;for(var or=-1,Dr=Rt.length,Or;++or<Dr;)$e.has(Or=Rt[or])||$e.set(Or,de.push(Or));return wt[Re.t].apply(wt,Re.a)},wt.range=function(Rt){return arguments.length?(pt=Rt,vt=0,Re={t:"range",a:arguments},wt):pt},wt.rangePoints=function(Rt,or){arguments.length<2&&(or=0);var Dr=Rt[0],Or=Rt[1],va=de.length<2?(Dr=(Dr+Or)/2,0):(Or-Dr)/(de.length-1+or);return pt=Jt(Dr+va*or/2,va),vt=0,Re={t:"rangePoints",a:arguments},wt},wt.rangeRoundPoints=function(Rt,or){arguments.length<2&&(or=0);var Dr=Rt[0],Or=Rt[1],va=de.length<2?(Dr=Or=Math.round((Dr+Or)/2),0):(Or-Dr)/(de.length-1+or)|0;return pt=Jt(Dr+Math.round(va*or/2+(Or-Dr-(de.length-1+or)*va)/2),va),vt=0,Re={t:"rangeRoundPoints",a:arguments},wt},wt.rangeBands=function(Rt,or,Dr){arguments.length<2&&(or=0),arguments.length<3&&(Dr=or);var Or=Rt[1]<Rt[0],va=Rt[Or-0],fa=Rt[1-Or],Va=(fa-va)/(de.length-or+2*Dr);return pt=Jt(va+Va*Dr,Va),Or&&pt.reverse(),vt=Va*(1-or),Re={t:"rangeBands",a:arguments},wt},wt.rangeRoundBands=function(Rt,or,Dr){arguments.length<2&&(or=0),arguments.length<3&&(Dr=or);var Or=Rt[1]<Rt[0],va=Rt[Or-0],fa=Rt[1-Or],Va=Math.floor((fa-va)/(de.length-or+2*Dr));return pt=Jt(va+Math.round((fa-va-(de.length-or)*Va)/2),Va),Or&&pt.reverse(),vt=Math.round(Va*(1-or)),Re={t:"rangeRoundBands",a:arguments},wt},wt.rangeBand=function(){return vt},wt.rangeExtent=function(){return yi(Re.a[0])},wt.copy=function(){return Hs(de,Re)},wt.domain(de)}g.scale.category10=function(){return g.scale.ordinal().range(vs)},g.scale.category20=function(){return g.scale.ordinal().range(Il)},g.scale.category20b=function(){return g.scale.ordinal().range(fl)},g.scale.category20c=function(){return g.scale.ordinal().range(tl)};var vs=[2062260,16744206,2924588,14034728,9725885,9197131,14907330,8355711,12369186,1556175].map(Mr),Il=[2062260,11454440,16744206,16759672,2924588,10018698,14034728,16750742,9725885,12955861,9197131,12885140,14907330,16234194,8355711,13092807,12369186,14408589,1556175,10410725].map(Mr),fl=[3750777,5395619,7040719,10264286,6519097,9216594,11915115,13556636,9202993,12426809,15186514,15190932,8666169,11356490,14049643,15177372,8077683,10834324,13528509,14589654].map(Mr),tl=[3244733,7057110,10406625,13032431,15095053,16616764,16625259,16634018,3253076,7652470,10607003,13101504,7695281,10394312,12369372,14342891,6513507,9868950,12434877,14277081].map(Mr);g.scale.quantile=function(){return Ln([],[])};function Ln(de,Re){var $e;function pt(){var wt=0,Jt=Re.length;for($e=[];++wt<Jt;)$e[wt-1]=g.quantile(de,wt/Jt);return vt}function vt(wt){if(!isNaN(wt=+wt))return Re[g.bisect($e,wt)]}return vt.domain=function(wt){return arguments.length?(de=wt.map(c).filter(h).sort(s),pt()):de},vt.range=function(wt){return arguments.length?(Re=wt,pt()):Re},vt.quantiles=function(){return $e},vt.invertExtent=function(wt){return wt=Re.indexOf(wt),wt<0?[NaN,NaN]:[wt>0?$e[wt-1]:de[0],wt<$e.length?$e[wt]:de[de.length-1]]},vt.copy=function(){return Ln(de,Re)},pt()}g.scale.quantize=function(){return Ao(0,1,[0,1])};function Ao(de,Re,$e){var pt,vt;function wt(Rt){return $e[Math.max(0,Math.min(vt,Math.floor(pt*(Rt-de))))]}function Jt(){return pt=$e.length/(Re-de),vt=$e.length-1,wt}return wt.domain=function(Rt){return arguments.length?(de=+Rt[0],Re=+Rt[Rt.length-1],Jt()):[de,Re]},wt.range=function(Rt){return arguments.length?($e=Rt,Jt()):$e},wt.invertExtent=function(Rt){return Rt=$e.indexOf(Rt),Rt=Rt<0?NaN:Rt/pt+de,[Rt,Rt+1/pt]},wt.copy=function(){return Ao(de,Re,$e)},Jt()}g.scale.threshold=function(){return js([.5],[0,1])};function js(de,Re){function $e(pt){if(pt<=pt)return Re[g.bisect(de,pt)]}return $e.domain=function(pt){return arguments.length?(de=pt,$e):de},$e.range=function(pt){return arguments.length?(Re=pt,$e):Re},$e.invertExtent=function(pt){return pt=Re.indexOf(pt),[de[pt-1],de[pt]]},$e.copy=function(){return js(de,Re)},$e}g.scale.identity=function(){return Ts([0,1])};function Ts(de){function Re($e){return+$e}return Re.invert=Re,Re.domain=Re.range=function($e){return arguments.length?(de=$e.map(Re),Re):de},Re.ticks=function($e){return no(de,$e)},Re.tickFormat=function($e,pt){return d3_scale_linearTickFormat(de,$e,pt)},Re.copy=function(){return Ts(de)},Re}g.svg={};function nu(){return 0}g.svg.arc=function(){var de=ec,Re=tf,$e=nu,pt=Pu,vt=yu,wt=Bc,Jt=Iu;function Rt(){var Dr=Math.max(0,+de.apply(this,arguments)),Or=Math.max(0,+Re.apply(this,arguments)),va=vt.apply(this,arguments)-Te,fa=wt.apply(this,arguments)-Te,Va=Math.abs(fa-va),Xa=va>fa?0:1;if(Or<Dr&&(_a=Or,Or=Dr,Dr=_a),Va>=ke)return or(Or,Xa)+(Dr?or(Dr,1-Xa):"")+"Z";var _a,Ra,Na,Qa,Ya=0,Da=0,zi,Ni,Qi,hn,Un,Vn,No,Gn,Fo=[];if((Qa=(+Jt.apply(this,arguments)||0)/2)&&(Na=pt===Pu?Math.sqrt(Dr*Dr+Or*Or):+pt.apply(this,arguments),Xa||(Da*=-1),Or&&(Da=Bt(Na/Or*Math.sin(Qa))),Dr&&(Ya=Bt(Na/Dr*Math.sin(Qa)))),Or){zi=Or*Math.cos(va+Da),Ni=Or*Math.sin(va+Da),Qi=Or*Math.cos(fa-Da),hn=Or*Math.sin(fa-Da);var Ks=Math.abs(fa-va-2*Da)<=Ee?0:1;if(Da&&Ac(zi,Ni,Qi,hn)===Xa^Ks){var Gs=(va+fa)/2;zi=Or*Math.cos(Gs),Ni=Or*Math.sin(Gs),Qi=hn=null}}else zi=Ni=0;if(Dr){Un=Dr*Math.cos(fa-Ya),Vn=Dr*Math.sin(fa-Ya),No=Dr*Math.cos(va+Ya),Gn=Dr*Math.sin(va+Ya);var sl=Math.abs(va-fa+2*Ya)<=Ee?0:1;if(Ya&&Ac(Un,Vn,No,Gn)===1-Xa^sl){var Vi=(va+fa)/2;Un=Dr*Math.cos(Vi),Vn=Dr*Math.sin(Vi),No=Gn=null}}else Un=Vn=0;if(Va>Ke&&(_a=Math.min(Math.abs(Or-Dr)/2,+$e.apply(this,arguments)))>.001){Ra=Dr<Or^Xa?0:1;var ao=_a,ns=_a;if(Va<Ee){var hs=No==null?[Un,Vn]:Qi==null?[zi,Ni]:go([zi,Ni],[No,Gn],[Qi,hn],[Un,Vn]),hl=zi-hs[0],Dl=Ni-hs[1],hu=Qi-hs[0],Ll=hn-hs[1],dc=1/Math.sin(Math.acos((hl*hu+Dl*Ll)/(Math.sqrt(hl*hl+Dl*Dl)*Math.sqrt(hu*hu+Ll*Ll)))/2),Qt=Math.sqrt(hs[0]*hs[0]+hs[1]*hs[1]);ns=Math.min(_a,(Dr-Qt)/(dc-1)),ao=Math.min(_a,(Or-Qt)/(dc+1))}if(Qi!=null){var ra=ro(No==null?[Un,Vn]:[No,Gn],[zi,Ni],Or,ao,Xa),Ta=ro([Qi,hn],[Un,Vn],Or,ao,Xa);_a===ao?Fo.push("M",ra[0],"A",ao,",",ao," 0 0,",Ra," ",ra[1],"A",Or,",",Or," 0 ",1-Xa^Ac(ra[1][0],ra[1][1],Ta[1][0],Ta[1][1]),",",Xa," ",Ta[1],"A",ao,",",ao," 0 0,",Ra," ",Ta[0]):Fo.push("M",ra[0],"A",ao,",",ao," 0 1,",Ra," ",Ta[0])}else Fo.push("M",zi,",",Ni);if(No!=null){var si=ro([zi,Ni],[No,Gn],Dr,-ns,Xa),wi=ro([Un,Vn],Qi==null?[zi,Ni]:[Qi,hn],Dr,-ns,Xa);_a===ns?Fo.push("L",wi[0],"A",ns,",",ns," 0 0,",Ra," ",wi[1],"A",Dr,",",Dr," 0 ",Xa^Ac(wi[1][0],wi[1][1],si[1][0],si[1][1]),",",1-Xa," ",si[1],"A",ns,",",ns," 0 0,",Ra," ",si[0]):Fo.push("L",wi[0],"A",ns,",",ns," 0 0,",Ra," ",si[0])}else Fo.push("L",Un,",",Vn)}else Fo.push("M",zi,",",Ni),Qi!=null&&Fo.push("A",Or,",",Or," 0 ",Ks,",",Xa," ",Qi,",",hn),Fo.push("L",Un,",",Vn),No!=null&&Fo.push("A",Dr,",",Dr," 0 ",sl,",",1-Xa," ",No,",",Gn);return Fo.push("Z"),Fo.join("")}function or(Dr,Or){return"M0,"+Dr+"A"+Dr+","+Dr+" 0 1,"+Or+" 0,"+-Dr+"A"+Dr+","+Dr+" 0 1,"+Or+" 0,"+Dr}return Rt.innerRadius=function(Dr){return arguments.length?(de=$r(Dr),Rt):de},Rt.outerRadius=function(Dr){return arguments.length?(Re=$r(Dr),Rt):Re},Rt.cornerRadius=function(Dr){return arguments.length?($e=$r(Dr),Rt):$e},Rt.padRadius=function(Dr){return arguments.length?(pt=Dr==Pu?Pu:$r(Dr),Rt):pt},Rt.startAngle=function(Dr){return arguments.length?(vt=$r(Dr),Rt):vt},Rt.endAngle=function(Dr){return arguments.length?(wt=$r(Dr),Rt):wt},Rt.padAngle=function(Dr){return arguments.length?(Jt=$r(Dr),Rt):Jt},Rt.centroid=function(){var Dr=(+de.apply(this,arguments)+ +Re.apply(this,arguments))/2,Or=(+vt.apply(this,arguments)+ +wt.apply(this,arguments))/2-Te;return[Math.cos(Or)*Dr,Math.sin(Or)*Dr]},Rt};var Pu="auto";function ec(de){return de.innerRadius}function tf(de){return de.outerRadius}function yu(de){return de.startAngle}function Bc(de){return de.endAngle}function Iu(de){return de&&de.padAngle}function Ac(de,Re,$e,pt){return(de-$e)*Re-(Re-pt)*de>0?0:1}function ro(de,Re,$e,pt,vt){var wt=de[0]-Re[0],Jt=de[1]-Re[1],Rt=(vt?pt:-pt)/Math.sqrt(wt*wt+Jt*Jt),or=Rt*Jt,Dr=-Rt*wt,Or=de[0]+or,va=de[1]+Dr,fa=Re[0]+or,Va=Re[1]+Dr,Xa=(Or+fa)/2,_a=(va+Va)/2,Ra=fa-Or,Na=Va-va,Qa=Ra*Ra+Na*Na,Ya=$e-pt,Da=Or*Va-fa*va,zi=(Na<0?-1:1)*Math.sqrt(Math.max(0,Ya*Ya*Qa-Da*Da)),Ni=(Da*Na-Ra*zi)/Qa,Qi=(-Da*Ra-Na*zi)/Qa,hn=(Da*Na+Ra*zi)/Qa,Un=(-Da*Ra+Na*zi)/Qa,Vn=Ni-Xa,No=Qi-_a,Gn=hn-Xa,Fo=Un-_a;return Vn*Vn+No*No>Gn*Gn+Fo*Fo&&(Ni=hn,Qi=Un),[[Ni-or,Qi-Dr],[Ni*$e/Ya,Qi*$e/Ya]]}function Po(){return!0}function Nc(de){var Re=Lo,$e=Xi,pt=Po,vt=pc,wt=vt.key,Jt=.7;function Rt(or){var Dr=[],Or=[],va=-1,fa=or.length,Va,Xa=$r(Re),_a=$r($e);function Ra(){Dr.push("M",vt(de(Or),Jt))}for(;++va<fa;)pt.call(this,Va=or[va],va)?Or.push([+Xa.call(this,Va,va),+_a.call(this,Va,va)]):Or.length&&(Ra(),Or=[]);return Or.length&&Ra(),Dr.length?Dr.join(""):null}return Rt.x=function(or){return arguments.length?(Re=or,Rt):Re},Rt.y=function(or){return arguments.length?($e=or,Rt):$e},Rt.defined=function(or){return arguments.length?(pt=or,Rt):pt},Rt.interpolate=function(or){return arguments.length?(typeof or=="function"?wt=vt=or:wt=(vt=hc.get(or)||pc).key,Rt):wt},Rt.tension=function(or){return arguments.length?(Jt=or,Rt):Jt},Rt}g.svg.line=function(){return Nc(F)};var hc=g.map({linear:pc,"linear-closed":Oe,step:R,"step-before":ae,"step-after":we,basis:Yt,"basis-open":cr,"basis-closed":hr,bundle:jr,cardinal:ft,"cardinal-open":Se,"cardinal-closed":De,monotone:er});hc.forEach(function(de,Re){Re.key=de,Re.closed=/-closed$/.test(de)});function pc(de){return de.length>1?de.join("L"):de+"Z"}function Oe(de){return de.join("L")+"Z"}function R(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt[0]+(pt=de[Re])[0])/2,"V",pt[1]);return $e>1&&vt.push("H",pt[0]),vt.join("")}function ae(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("V",(pt=de[Re])[1],"H",pt[0]);return vt.join("")}function we(de){for(var Re=0,$e=de.length,pt=de[0],vt=[pt[0],",",pt[1]];++Re<$e;)vt.push("H",(pt=de[Re])[0],"V",pt[1]);return vt.join("")}function Se(de,Re){return de.length<4?pc(de):de[1]+bt(de.slice(1,-1),Dt(de,Re))}function De(de,Re){return de.length<3?Oe(de):de[0]+bt((de.push(de[0]),de),Dt([de[de.length-2]].concat(de,[de[1]]),Re))}function ft(de,Re){return de.length<3?pc(de):de[0]+bt(de,Dt(de,Re))}function bt(de,Re){if(Re.length<1||de.length!=Re.length&&de.length!=Re.length+2)return pc(de);var $e=de.length!=Re.length,pt="",vt=de[0],wt=de[1],Jt=Re[0],Rt=Jt,or=1;if($e&&(pt+="Q"+(wt[0]-Jt[0]*2/3)+","+(wt[1]-Jt[1]*2/3)+","+wt[0]+","+wt[1],vt=de[1],or=2),Re.length>1){Rt=Re[1],wt=de[or],or++,pt+="C"+(vt[0]+Jt[0])+","+(vt[1]+Jt[1])+","+(wt[0]-Rt[0])+","+(wt[1]-Rt[1])+","+wt[0]+","+wt[1];for(var Dr=2;Dr<Re.length;Dr++,or++)wt=de[or],Rt=Re[Dr],pt+="S"+(wt[0]-Rt[0])+","+(wt[1]-Rt[1])+","+wt[0]+","+wt[1]}if($e){var Or=de[or];pt+="Q"+(wt[0]+Rt[0]*2/3)+","+(wt[1]+Rt[1]*2/3)+","+Or[0]+","+Or[1]}return pt}function Dt(de,Re){for(var $e=[],pt=(1-Re)/2,vt,wt=de[0],Jt=de[1],Rt=1,or=de.length;++Rt<or;)vt=wt,wt=Jt,Jt=de[Rt],$e.push([pt*(Jt[0]-vt[0]),pt*(Jt[1]-vt[1])]);return $e}function Yt(de){if(de.length<3)return pc(de);var Re=1,$e=de.length,pt=de[0],vt=pt[0],wt=pt[1],Jt=[vt,vt,vt,(pt=de[1])[0]],Rt=[wt,wt,wt,pt[1]],or=[vt,",",wt,"L",ea(ot,Jt),",",ea(ot,Rt)];for(de.push(de[$e-1]);++Re<=$e;)pt=de[Re],Jt.shift(),Jt.push(pt[0]),Rt.shift(),Rt.push(pt[1]),ht(or,Jt,Rt);return de.pop(),or.push("L",pt),or.join("")}function cr(de){if(de.length<4)return pc(de);for(var Re=[],$e=-1,pt=de.length,vt,wt=[0],Jt=[0];++$e<3;)vt=de[$e],wt.push(vt[0]),Jt.push(vt[1]);for(Re.push(ea(ot,wt)+","+ea(ot,Jt)),--$e;++$e<pt;)vt=de[$e],wt.shift(),wt.push(vt[0]),Jt.shift(),Jt.push(vt[1]),ht(Re,wt,Jt);return Re.join("")}function hr(de){for(var Re,$e=-1,pt=de.length,vt=pt+4,wt,Jt=[],Rt=[];++$e<4;)wt=de[$e%pt],Jt.push(wt[0]),Rt.push(wt[1]);for(Re=[ea(ot,Jt),",",ea(ot,Rt)],--$e;++$e<vt;)wt=de[$e%pt],Jt.shift(),Jt.push(wt[0]),Rt.shift(),Rt.push(wt[1]),ht(Re,Jt,Rt);return Re.join("")}function jr(de,Re){var $e=de.length-1;if($e)for(var pt=de[0][0],vt=de[0][1],wt=de[$e][0]-pt,Jt=de[$e][1]-vt,Rt=-1,or,Dr;++Rt<=$e;)or=de[Rt],Dr=Rt/$e,or[0]=Re*or[0]+(1-Re)*(pt+Dr*wt),or[1]=Re*or[1]+(1-Re)*(vt+Dr*Jt);return Yt(de)}function ea(de,Re){return de[0]*Re[0]+de[1]*Re[1]+de[2]*Re[2]+de[3]*Re[3]}var qe=[0,2/3,1/3,0],Je=[0,1/3,2/3,0],ot=[0,1/6,2/3,1/6];function ht(de,Re,$e){de.push("C",ea(qe,Re),",",ea(qe,$e),",",ea(Je,Re),",",ea(Je,$e),",",ea(ot,Re),",",ea(ot,$e))}function At(de,Re){return(Re[1]-de[1])/(Re[0]-de[0])}function _t(de){for(var Re=0,$e=de.length-1,pt=[],vt=de[0],wt=de[1],Jt=pt[0]=At(vt,wt);++Re<$e;)pt[Re]=(Jt+(Jt=At(vt=wt,wt=de[Re+1])))/2;return pt[Re]=Jt,pt}function Pt(de){for(var Re=[],$e,pt,vt,wt,Jt=_t(de),Rt=-1,or=de.length-1;++Rt<or;)$e=At(de[Rt],de[Rt+1]),l($e)<Ke?Jt[Rt]=Jt[Rt+1]=0:(pt=Jt[Rt]/$e,vt=Jt[Rt+1]/$e,wt=pt*pt+vt*vt,wt>9&&(wt=$e*3/Math.sqrt(wt),Jt[Rt]=wt*pt,Jt[Rt+1]=wt*vt));for(Rt=-1;++Rt<=or;)wt=(de[Math.min(or,Rt+1)][0]-de[Math.max(0,Rt-1)][0])/(6*(1+Jt[Rt]*Jt[Rt])),Re.push([wt||0,Jt[Rt]*wt||0]);return Re}function er(de){return de.length<3?pc(de):de[0]+bt(de,Pt(de))}g.svg.line.radial=function(){var de=Nc(nr);return de.radius=de.x,delete de.x,de.angle=de.y,delete de.y,de};function nr(de){for(var Re,$e=-1,pt=de.length,vt,wt;++$e<pt;)Re=de[$e],vt=Re[0],wt=Re[1]-Te,Re[0]=vt*Math.cos(wt),Re[1]=vt*Math.sin(wt);return de}function pr(de){var Re=Lo,$e=Lo,pt=0,vt=Xi,wt=Po,Jt=pc,Rt=Jt.key,or=Jt,Dr="L",Or=.7;function va(fa){var Va=[],Xa=[],_a=[],Ra=-1,Na=fa.length,Qa,Ya=$r(Re),Da=$r(pt),zi=Re===$e?function(){return Qi}:$r($e),Ni=pt===vt?function(){return hn}:$r(vt),Qi,hn;function Un(){Va.push("M",Jt(de(_a),Or),Dr,or(de(Xa.reverse()),Or),"Z")}for(;++Ra<Na;)wt.call(this,Qa=fa[Ra],Ra)?(Xa.push([Qi=+Ya.call(this,Qa,Ra),hn=+Da.call(this,Qa,Ra)]),_a.push([+zi.call(this,Qa,Ra),+Ni.call(this,Qa,Ra)])):Xa.length&&(Un(),Xa=[],_a=[]);return Xa.length&&Un(),Va.length?Va.join(""):null}return va.x=function(fa){return arguments.length?(Re=$e=fa,va):$e},va.x0=function(fa){return arguments.length?(Re=fa,va):Re},va.x1=function(fa){return arguments.length?($e=fa,va):$e},va.y=function(fa){return arguments.length?(pt=vt=fa,va):vt},va.y0=function(fa){return arguments.length?(pt=fa,va):pt},va.y1=function(fa){return arguments.length?(vt=fa,va):vt},va.defined=function(fa){return arguments.length?(wt=fa,va):wt},va.interpolate=function(fa){return arguments.length?(typeof fa=="function"?Rt=Jt=fa:Rt=(Jt=hc.get(fa)||pc).key,or=Jt.reverse||Jt,Dr=Jt.closed?"M":"L",va):Rt},va.tension=function(fa){return arguments.length?(Or=fa,va):Or},va}ae.reverse=we,we.reverse=ae,g.svg.area=function(){return pr(F)},g.svg.area.radial=function(){var de=pr(nr);return de.radius=de.x,delete de.x,de.innerRadius=de.x0,delete de.x0,de.outerRadius=de.x1,delete de.x1,de.angle=de.y,delete de.y,de.startAngle=de.y0,delete de.y0,de.endAngle=de.y1,delete de.y1,de};function Sr(de){return de.source}function Wr(de){return de.target}g.svg.chord=function(){var de=Sr,Re=Wr,$e=ha,pt=yu,vt=Bc;function wt(Or,va){var fa=Jt(this,de,Or,va),Va=Jt(this,Re,Or,va);return"M"+fa.p0+or(fa.r,fa.p1,fa.a1-fa.a0)+(Rt(fa,Va)?Dr(fa.r,fa.p1,fa.r,fa.p0):Dr(fa.r,fa.p1,Va.r,Va.p0)+or(Va.r,Va.p1,Va.a1-Va.a0)+Dr(Va.r,Va.p1,fa.r,fa.p0))+"Z"}function Jt(Or,va,fa,Va){var Xa=va.call(Or,fa,Va),_a=$e.call(Or,Xa,Va),Ra=pt.call(Or,Xa,Va)-Te,Na=vt.call(Or,Xa,Va)-Te;return{r:_a,a0:Ra,a1:Na,p0:[_a*Math.cos(Ra),_a*Math.sin(Ra)],p1:[_a*Math.cos(Na),_a*Math.sin(Na)]}}function Rt(Or,va){return Or.a0==va.a0&&Or.a1==va.a1}function or(Or,va,fa){return"A"+Or+","+Or+" 0 "+ +(fa>Ee)+",1 "+va}function Dr(Or,va,fa,Va){return"Q 0,0 "+Va}return wt.radius=function(Or){return arguments.length?($e=$r(Or),wt):$e},wt.source=function(Or){return arguments.length?(de=$r(Or),wt):de},wt.target=function(Or){return arguments.length?(Re=$r(Or),wt):Re},wt.startAngle=function(Or){return arguments.length?(pt=$r(Or),wt):pt},wt.endAngle=function(Or){return arguments.length?(vt=$r(Or),wt):vt},wt};function ha(de){return de.radius}g.svg.diagonal=function(){var de=Sr,Re=Wr,$e=ga;function pt(vt,wt){var Jt=de.call(this,vt,wt),Rt=Re.call(this,vt,wt),or=(Jt.y+Rt.y)/2,Dr=[Jt,{x:Jt.x,y:or},{x:Rt.x,y:or},Rt];return Dr=Dr.map($e),"M"+Dr[0]+"C"+Dr[1]+" "+Dr[2]+" "+Dr[3]}return pt.source=function(vt){return arguments.length?(de=$r(vt),pt):de},pt.target=function(vt){return arguments.length?(Re=$r(vt),pt):Re},pt.projection=function(vt){return arguments.length?($e=vt,pt):$e},pt};function ga(de){return[de.x,de.y]}g.svg.diagonal.radial=function(){var de=g.svg.diagonal(),Re=ga,$e=de.projection;return de.projection=function(pt){return arguments.length?$e(Pa(Re=pt)):Re},de};function Pa(de){return function(){var Re=de.apply(this,arguments),$e=Re[0],pt=Re[1]-Te;return[$e*Math.cos(pt),$e*Math.sin(pt)]}}g.svg.symbol=function(){var de=di,Re=Ja;function $e(pt,vt){return(Ci.get(de.call(this,pt,vt))||pi)(Re.call(this,pt,vt))}return $e.type=function(pt){return arguments.length?(de=$r(pt),$e):de},$e.size=function(pt){return arguments.length?(Re=$r(pt),$e):Re},$e};function Ja(){return 64}function di(){return"circle"}function pi(de){var Re=Math.sqrt(de/Ee);return"M0,"+Re+"A"+Re+","+Re+" 0 1,1 0,"+-Re+"A"+Re+","+Re+" 0 1,1 0,"+Re+"Z"}var Ci=g.map({circle:pi,cross:function(de){var Re=Math.sqrt(de/5)/2;return"M"+-3*Re+","+-Re+"H"+-Re+"V"+-3*Re+"H"+Re+"V"+-Re+"H"+3*Re+"V"+Re+"H"+Re+"V"+3*Re+"H"+-Re+"V"+Re+"H"+-3*Re+"Z"},diamond:function(de){var Re=Math.sqrt(de/(2*Bn)),$e=Re*Bn;return"M0,"+-Re+"L"+$e+",0 0,"+Re+" "+-$e+",0Z"},square:function(de){var Re=Math.sqrt(de)/2;return"M"+-Re+","+-Re+"L"+Re+","+-Re+" "+Re+","+Re+" "+-Re+","+Re+"Z"},"triangle-down":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+$e+"L"+Re+","+-$e+" "+-Re+","+-$e+"Z"},"triangle-up":function(de){var Re=Math.sqrt(de/$i),$e=Re*$i/2;return"M0,"+-$e+"L"+Re+","+$e+" "+-Re+","+$e+"Z"}});g.svg.symbolTypes=Ci.keys();var $i=Math.sqrt(3),Bn=Math.tan(30*Le);ne.transition=function(de){for(var Re=ls||++Vo,$e=Go(de),pt=[],vt,wt,Jt=rl||{time:Date.now(),ease:cu,delay:0,duration:250},Rt=-1,or=this.length;++Rt<or;){pt.push(vt=[]);for(var Dr=this[Rt],Or=-1,va=Dr.length;++Or<va;)(wt=Dr[Or])&&Rl(wt,Or,$e,Re,Jt),vt.push(wt)}return ts(pt,$e,Re)},ne.interrupt=function(de){return this.each(de==null?Sn:ho(Go(de)))};var Sn=ho(Go());function ho(de){return function(){var Re,$e,pt;(Re=this[de])&&(pt=Re[$e=Re.active])&&(pt.timer.c=null,pt.timer.t=NaN,--Re.count?delete Re[$e]:delete this[de],Re.active+=.5,pt.event&&pt.event.interrupt.call(this,this.__data__,pt.index))}}function ts(de,Re,$e){return G(de,yo),de.namespace=Re,de.id=$e,de}var yo=[],Vo=0,ls,rl;yo.call=ne.call,yo.empty=ne.empty,yo.node=ne.node,yo.size=ne.size,g.transition=function(de,Re){return de&&de.transition?ls?de.transition(Re):de:g.selection().transition(de)},g.transition.prototype=yo,yo.select=function(de){var Re=this.id,$e=this.namespace,pt=[],vt,wt,Jt;de=j(de);for(var Rt=-1,or=this.length;++Rt<or;){pt.push(vt=[]);for(var Dr=this[Rt],Or=-1,va=Dr.length;++Or<va;)(Jt=Dr[Or])&&(wt=de.call(Jt,Jt.__data__,Or,Rt))?("__data__"in Jt&&(wt.__data__=Jt.__data__),Rl(wt,Or,$e,Re,Jt[$e][Re]),vt.push(wt)):vt.push(null)}return ts(pt,$e,Re)},yo.selectAll=function(de){var Re=this.id,$e=this.namespace,pt=[],vt,wt,Jt,Rt,or;de=ee(de);for(var Dr=-1,Or=this.length;++Dr<Or;)for(var va=this[Dr],fa=-1,Va=va.length;++fa<Va;)if(Jt=va[fa]){or=Jt[$e][Re],wt=de.call(Jt,Jt.__data__,fa,Dr),pt.push(vt=[]);for(var Xa=-1,_a=wt.length;++Xa<_a;)(Rt=wt[Xa])&&Rl(Rt,Xa,$e,Re,or),vt.push(Rt)}return ts(pt,$e,Re)},yo.filter=function(de){var Re=[],$e,pt,vt;typeof de!="function"&&(de=ce(de));for(var wt=0,Jt=this.length;wt<Jt;wt++){Re.push($e=[]);for(var pt=this[wt],Rt=0,or=pt.length;Rt<or;Rt++)(vt=pt[Rt])&&de.call(vt,vt.__data__,Rt,wt)&&$e.push(vt)}return ts(Re,this.namespace,this.id)},yo.tween=function(de,Re){var $e=this.id,pt=this.namespace;return arguments.length<2?this.node()[pt][$e].tween.get(de):tt(this,Re==null?function(vt){vt[pt][$e].tween.remove(de)}:function(vt){vt[pt][$e].tween.set(de,Re)})};function Ys(de,Re,$e,pt){var vt=de.id,wt=de.namespace;return tt(de,typeof $e=="function"?function(Jt,Rt,or){Jt[wt][vt].tween.set(Re,pt($e.call(Jt,Jt.__data__,Rt,or)))}:($e=pt($e),function(Jt){Jt[wt][vt].tween.set(Re,$e)}))}yo.attr=function(de,Re){if(arguments.length<2){for(Re in de)this.attr(Re,de[Re]);return this}var $e=de=="transform"?df:zl,pt=g.ns.qualify(de);function vt(){this.removeAttribute(pt)}function wt(){this.removeAttributeNS(pt.space,pt.local)}function Jt(or){return or==null?vt:(or+="",function(){var Dr=this.getAttribute(pt),Or;return Dr!==or&&(Or=$e(Dr,or),function(va){this.setAttribute(pt,Or(va))})})}function Rt(or){return or==null?wt:(or+="",function(){var Dr=this.getAttributeNS(pt.space,pt.local),Or;return Dr!==or&&(Or=$e(Dr,or),function(va){this.setAttributeNS(pt.space,pt.local,Or(va))})})}return Ys(this,"attr."+de,Re,pt.local?Rt:Jt)},yo.attrTween=function(de,Re){var $e=g.ns.qualify(de);function pt(wt,Jt){var Rt=Re.call(this,wt,Jt,this.getAttribute($e));return Rt&&function(or){this.setAttribute($e,Rt(or))}}function vt(wt,Jt){var Rt=Re.call(this,wt,Jt,this.getAttributeNS($e.space,$e.local));return Rt&&function(or){this.setAttributeNS($e.space,$e.local,Rt(or))}}return this.tween("attr."+de,$e.local?vt:pt)},yo.style=function(de,Re,$e){var pt=arguments.length;if(pt<3){if(typeof de!="string"){pt<2&&(Re="");for($e in de)this.style($e,de[$e],Re);return this}$e=""}function vt(){this.style.removeProperty(de)}function wt(Jt){return Jt==null?vt:(Jt+="",function(){var Rt=t(this).getComputedStyle(this,null).getPropertyValue(de),or;return Rt!==Jt&&(or=zl(Rt,Jt),function(Dr){this.style.setProperty(de,or(Dr),$e)})})}return Ys(this,"style."+de,Re,wt)},yo.styleTween=function(de,Re,$e){arguments.length<3&&($e="");function pt(vt,wt){var Jt=Re.call(this,vt,wt,t(this).getComputedStyle(this,null).getPropertyValue(de));return Jt&&function(Rt){this.style.setProperty(de,Jt(Rt),$e)}}return this.tween("style."+de,pt)},yo.text=function(de){return Ys(this,"text",de,Zo)};function Zo(de){return de==null&&(de=""),function(){this.textContent=de}}yo.remove=function(){var de=this.namespace;return this.each("end.transition",function(){var Re;this[de].count<2&&(Re=this.parentNode)&&Re.removeChild(this)})},yo.ease=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].ease:(typeof de!="function"&&(de=g.ease.apply(g,arguments)),tt(this,function(pt){pt[$e][Re].ease=de}))},yo.delay=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].delay:tt(this,typeof de=="function"?function(pt,vt,wt){pt[$e][Re].delay=+de.call(pt,pt.__data__,vt,wt)}:(de=+de,function(pt){pt[$e][Re].delay=de}))},yo.duration=function(de){var Re=this.id,$e=this.namespace;return arguments.length<1?this.node()[$e][Re].duration:tt(this,typeof de=="function"?function(pt,vt,wt){pt[$e][Re].duration=Math.max(1,de.call(pt,pt.__data__,vt,wt))}:(de=Math.max(1,de),function(pt){pt[$e][Re].duration=de}))},yo.each=function(de,Re){var $e=this.id,pt=this.namespace;if(arguments.length<2){var vt=rl,wt=ls;try{ls=$e,tt(this,function(Jt,Rt,or){rl=Jt[pt][$e],de.call(Jt,Jt.__data__,Rt,or)})}finally{rl=vt,ls=wt}}else tt(this,function(Jt){var Rt=Jt[pt][$e];(Rt.event||(Rt.event=g.dispatch("start","end","interrupt"))).on(de,Re)});return this},yo.transition=function(){for(var de=this.id,Re=++Vo,$e=this.namespace,pt=[],vt,wt,Jt,Rt,or=0,Dr=this.length;or<Dr;or++){pt.push(vt=[]);for(var wt=this[or],Or=0,va=wt.length;Or<va;Or++)(Jt=wt[Or])&&(Rt=Jt[$e][de],Rl(Jt,Or,$e,Re,{time:Rt.time,ease:Rt.ease,delay:Rt.delay+Rt.duration,duration:Rt.duration})),vt.push(Jt)}return ts(pt,$e,Re)};function Go(de){return de==null?"__transition__":"__transition_"+de+"__"}function Rl(de,Re,$e,pt,vt){var wt=de[$e]||(de[$e]={active:0,count:0}),Jt=wt[pt],Rt,or,Dr,Or,va;function fa(_a){var Ra=Jt.delay;if(or.t=Ra+Rt,Ra<=_a)return Va(_a-Ra);or.c=Va}function Va(_a){var Ra=wt.active,Na=wt[Ra];Na&&(Na.timer.c=null,Na.timer.t=NaN,--wt.count,delete wt[Ra],Na.event&&Na.event.interrupt.call(de,de.__data__,Na.index));for(var Qa in wt)if(+Qa<pt){var Ya=wt[Qa];Ya.timer.c=null,Ya.timer.t=NaN,--wt.count,delete wt[Qa]}or.c=Xa,Mn(function(){return or.c&&Xa(_a||1)&&(or.c=null,or.t=NaN),1},0,Rt),wt.active=pt,Jt.event&&Jt.event.start.call(de,de.__data__,Re),va=[],Jt.tween.forEach(function(Da,zi){(zi=zi.call(de,de.__data__,Re))&&va.push(zi)}),Or=Jt.ease,Dr=Jt.duration}function Xa(_a){for(var Ra=_a/Dr,Na=Or(Ra),Qa=va.length;Qa>0;)va[--Qa].call(de,Na);if(Ra>=1)return Jt.event&&Jt.event.end.call(de,de.__data__,Re),--wt.count?delete wt[pt]:delete de[$e],1}Jt||(Rt=vt.time,or=Mn(fa,0,Rt),Jt=wt[pt]={tween:new S,time:Rt,timer:or,delay:vt.delay,duration:vt.duration,ease:vt.ease,index:Re},vt=null,++wt.count)}g.svg.axis=function(){var de=g.scale.linear(),Re=Xl,$e=6,pt=6,vt=3,wt=[10],Jt=null,Rt;function or(Dr){Dr.each(function(){var Or=g.select(this),va=this.__chart__||de,fa=this.__chart__=de.copy(),Va=Jt??(fa.ticks?fa.ticks.apply(fa,wt):fa.domain()),Xa=Rt??(fa.tickFormat?fa.tickFormat.apply(fa,wt):F),_a=Or.selectAll(".tick").data(Va,fa),Ra=_a.enter().insert("g",".domain").attr("class","tick").style("opacity",Ke),Na=g.transition(_a.exit()).style("opacity",Ke).remove(),Qa=g.transition(_a.order()).style("opacity",1),Ya=Math.max($e,0)+vt,Da,zi=ki(fa),Ni=Or.selectAll(".domain").data([0]),Qi=(Ni.enter().append("path").attr("class","domain"),g.transition(Ni));Ra.append("line"),Ra.append("text");var hn=Ra.select("line"),Un=Qa.select("line"),Vn=_a.select("text").text(Xa),No=Ra.select("text"),Gn=Qa.select("text"),Fo=Re==="top"||Re==="left"?-1:1,Ks,Gs,sl,Vi;if(Re==="bottom"||Re==="top"?(Da=fu,Ks="x",sl="y",Gs="x2",Vi="y2",Vn.attr("dy",Fo<0?"0em":".71em").style("text-anchor","middle"),Qi.attr("d","M"+zi[0]+","+Fo*pt+"V0H"+zi[1]+"V"+Fo*pt)):(Da=bl,Ks="y",sl="x",Gs="y2",Vi="x2",Vn.attr("dy",".32em").style("text-anchor",Fo<0?"end":"start"),Qi.attr("d","M"+Fo*pt+","+zi[0]+"H0V"+zi[1]+"H"+Fo*pt)),hn.attr(Vi,Fo*$e),No.attr(sl,Fo*Ya),Un.attr(Gs,0).attr(Vi,Fo*$e),Gn.attr(Ks,0).attr(sl,Fo*Ya),fa.rangeBand){var ao=fa,ns=ao.rangeBand()/2;va=fa=function(hs){return ao(hs)+ns}}else va.rangeBand?va=fa:Na.call(Da,fa,va);Ra.call(Da,va,fa),Qa.call(Da,fa,fa)})}return or.scale=function(Dr){return arguments.length?(de=Dr,or):de},or.orient=function(Dr){return arguments.length?(Re=Dr in qu?Dr+"":Xl,or):Re},or.ticks=function(){return arguments.length?(wt=A(arguments),or):wt},or.tickValues=function(Dr){return arguments.length?(Jt=Dr,or):Jt},or.tickFormat=function(Dr){return arguments.length?(Rt=Dr,or):Rt},or.tickSize=function(Dr){var Or=arguments.length;return Or?($e=+Dr,pt=+arguments[Or-1],or):$e},or.innerTickSize=function(Dr){return arguments.length?($e=+Dr,or):$e},or.outerTickSize=function(Dr){return arguments.length?(pt=+Dr,or):pt},or.tickPadding=function(Dr){return arguments.length?(vt=+Dr,or):vt},or.tickSubdivide=function(){return arguments.length&&or},or};var Xl="bottom",qu={top:1,right:1,bottom:1,left:1};function fu(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate("+(isFinite(vt)?vt:$e(pt))+",0)"})}function bl(de,Re,$e){de.attr("transform",function(pt){var vt=Re(pt);return"translate(0,"+(isFinite(vt)?vt:$e(pt))+")"})}g.svg.brush=function(){var de=se(Or,"brushstart","brush","brushend"),Re=null,$e=null,pt=[0,0],vt=[0,0],wt,Jt,Rt=!0,or=!0,Dr=Sc[0];function Or(_a){_a.each(function(){var Ra=g.select(this).style("pointer-events","all").style("-webkit-tap-highlight-color","rgba(0,0,0,0)").on("mousedown.brush",Xa).on("touchstart.brush",Xa),Na=Ra.selectAll(".background").data([0]);Na.enter().append("rect").attr("class","background").style("visibility","hidden").style("cursor","crosshair"),Ra.selectAll(".extent").data([0]).enter().append("rect").attr("class","extent").style("cursor","move");var Qa=Ra.selectAll(".resize").data(Dr,F);Qa.exit().remove(),Qa.enter().append("g").attr("class",function(Ni){return"resize "+Ni}).style("cursor",function(Ni){return ou[Ni]}).append("rect").attr("x",function(Ni){return/[ew]$/.test(Ni)?-3:null}).attr("y",function(Ni){return/^[ns]/.test(Ni)?-3:null}).attr("width",6).attr("height",6).style("visibility","hidden"),Qa.style("display",Or.empty()?"none":null);var Ya=g.transition(Ra),Da=g.transition(Na),zi;Re&&(zi=ki(Re),Da.attr("x",zi[0]).attr("width",zi[1]-zi[0]),fa(Ya)),$e&&(zi=ki($e),Da.attr("y",zi[0]).attr("height",zi[1]-zi[0]),Va(Ya)),va(Ya)})}Or.event=function(_a){_a.each(function(){var Ra=de.of(this,arguments),Na={x:pt,y:vt,i:wt,j:Jt},Qa=this.__chart__||Na;this.__chart__=Na,ls?g.select(this).transition().each("start.brush",function(){wt=Qa.i,Jt=Qa.j,pt=Qa.x,vt=Qa.y,Ra({type:"brushstart"})}).tween("brush:brush",function(){var Ya=Yu(pt,Na.x),Da=Yu(vt,Na.y);return wt=Jt=null,function(zi){pt=Na.x=Ya(zi),vt=Na.y=Da(zi),Ra({type:"brush",mode:"resize"})}}).each("end.brush",function(){wt=Na.i,Jt=Na.j,Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"})}):(Ra({type:"brushstart"}),Ra({type:"brush",mode:"resize"}),Ra({type:"brushend"}))})};function va(_a){_a.selectAll(".resize").attr("transform",function(Ra){return"translate("+pt[+/e$/.test(Ra)]+","+vt[+/^s/.test(Ra)]+")"})}function fa(_a){_a.select(".extent").attr("x",pt[0]),_a.selectAll(".extent,.n>rect,.s>rect").attr("width",pt[1]-pt[0])}function Va(_a){_a.select(".extent").attr("y",vt[0]),_a.selectAll(".extent,.e>rect,.w>rect").attr("height",vt[1]-vt[0])}function Xa(){var _a=this,Ra=g.select(g.event.target),Na=de.of(_a,arguments),Qa=g.select(_a),Ya=Ra.datum(),Da=!/^(n|s)$/.test(Ya)&&Re,zi=!/^(e|w)$/.test(Ya)&&$e,Ni=Ra.classed("extent"),Qi=vr(_a),hn,Un=g.mouse(_a),Vn,No=g.select(t(_a)).on("keydown.brush",Ks).on("keyup.brush",Gs);if(g.event.changedTouches?No.on("touchmove.brush",sl).on("touchend.brush",ao):No.on("mousemove.brush",sl).on("mouseup.brush",ao),Qa.interrupt().selectAll("*").interrupt(),Ni)Un[0]=pt[0]-Un[0],Un[1]=vt[0]-Un[1];else if(Ya){var Gn=+/w$/.test(Ya),Fo=+/^n/.test(Ya);Vn=[pt[1-Gn]-Un[0],vt[1-Fo]-Un[1]],Un[0]=pt[Gn],Un[1]=vt[Fo]}else g.event.altKey&&(hn=Un.slice());Qa.style("pointer-events","none").selectAll(".resize").style("display",null),g.select("body").style("cursor",Ra.style("cursor")),Na({type:"brushstart"}),sl();function Ks(){g.event.keyCode==32&&(Ni||(hn=null,Un[0]-=pt[1],Un[1]-=vt[1],Ni=2),Q())}function Gs(){g.event.keyCode==32&&Ni==2&&(Un[0]+=pt[1],Un[1]+=vt[1],Ni=0,Q())}function sl(){var ns=g.mouse(_a),hs=!1;Vn&&(ns[0]+=Vn[0],ns[1]+=Vn[1]),Ni||(g.event.altKey?(hn||(hn=[(pt[0]+pt[1])/2,(vt[0]+vt[1])/2]),Un[0]=pt[+(ns[0]<hn[0])],Un[1]=vt[+(ns[1]<hn[1])]):hn=null),Da&&Vi(ns,Re,0)&&(fa(Qa),hs=!0),zi&&Vi(ns,$e,1)&&(Va(Qa),hs=!0),hs&&(va(Qa),Na({type:"brush",mode:Ni?"move":"resize"}))}function Vi(ns,hs,hl){var Dl=ki(hs),hu=Dl[0],Ll=Dl[1],dc=Un[hl],Qt=hl?vt:pt,ra=Qt[1]-Qt[0],Ta,si;if(Ni&&(hu-=dc,Ll-=ra+dc),Ta=(hl?or:Rt)?Math.max(hu,Math.min(Ll,ns[hl])):ns[hl],Ni?si=(Ta+=dc)+ra:(hn&&(dc=Math.max(hu,Math.min(Ll,2*hn[hl]-Ta))),dc<Ta?(si=Ta,Ta=dc):si=dc),Qt[0]!=Ta||Qt[1]!=si)return hl?Jt=null:wt=null,Qt[0]=Ta,Qt[1]=si,!0}function ao(){sl(),Qa.style("pointer-events","all").selectAll(".resize").style("display",Or.empty()?"none":null),g.select("body").style("cursor",null),No.on("mousemove.brush",null).on("mouseup.brush",null).on("touchmove.brush",null).on("touchend.brush",null).on("keydown.brush",null).on("keyup.brush",null),Qi(),Na({type:"brushend"})}}return Or.x=function(_a){return arguments.length?(Re=_a,Dr=Sc[!Re<<1|!$e],Or):Re},Or.y=function(_a){return arguments.length?($e=_a,Dr=Sc[!Re<<1|!$e],Or):$e},Or.clamp=function(_a){return arguments.length?(Re&&$e?(Rt=!!_a[0],or=!!_a[1]):Re?Rt=!!_a:$e&&(or=!!_a),Or):Re&&$e?[Rt,or]:Re?Rt:$e?or:null},Or.extent=function(_a){var Ra,Na,Qa,Ya,Da;return arguments.length?(Re&&(Ra=_a[0],Na=_a[1],$e&&(Ra=Ra[0],Na=Na[0]),wt=[Ra,Na],Re.invert&&(Ra=Re(Ra),Na=Re(Na)),Na<Ra&&(Da=Ra,Ra=Na,Na=Da),(Ra!=pt[0]||Na!=pt[1])&&(pt=[Ra,Na])),$e&&(Qa=_a[0],Ya=_a[1],Re&&(Qa=Qa[1],Ya=Ya[1]),Jt=[Qa,Ya],$e.invert&&(Qa=$e(Qa),Ya=$e(Ya)),Ya<Qa&&(Da=Qa,Qa=Ya,Ya=Da),(Qa!=vt[0]||Ya!=vt[1])&&(vt=[Qa,Ya])),Or):(Re&&(wt?(Ra=wt[0],Na=wt[1]):(Ra=pt[0],Na=pt[1],Re.invert&&(Ra=Re.invert(Ra),Na=Re.invert(Na)),Na<Ra&&(Da=Ra,Ra=Na,Na=Da))),$e&&(Jt?(Qa=Jt[0],Ya=Jt[1]):(Qa=vt[0],Ya=vt[1],$e.invert&&(Qa=$e.invert(Qa),Ya=$e.invert(Ya)),Ya<Qa&&(Da=Qa,Qa=Ya,Ya=Da))),Re&&$e?[[Ra,Qa],[Na,Ya]]:Re?[Ra,Na]:$e&&[Qa,Ya])},Or.clear=function(){return Or.empty()||(pt=[0,0],vt=[0,0],wt=Jt=null),Or},Or.empty=function(){return!!Re&&pt[0]==pt[1]||!!$e&&vt[0]==vt[1]},g.rebind(Or,de,"on")};var ou={n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Sc=[["n","e","s","w","nw","ne","se","sw"],["e","w"],["n","s"],[]];g.text=ma(function(de){return de.responseText}),g.json=function(de,Re){return Ba(de,"application/json",ql,Re)};function ql(de){return JSON.parse(de.responseText)}g.html=function(de,Re){return Ba(de,"text/html",Hl,Re)};function Hl(de){var Re=M.createRange();return Re.selectNode(M.body),Re.createContextualFragment(de.responseText)}g.xml=ma(function(de){return de.responseXML}),typeof H=="object"&&H.exports?H.exports=g:this.d3=g}).apply(self)}}),$p=Ye({"node_modules/d3-time/dist/d3-time.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=new Date,A=new Date;function M(ce,ze,tt,nt){function Qe(Ct){return ce(Ct=arguments.length===0?new Date:new Date(+Ct)),Ct}return Qe.floor=function(Ct){return ce(Ct=new Date(+Ct)),Ct},Qe.ceil=function(Ct){return ce(Ct=new Date(Ct-1)),ze(Ct,1),ce(Ct),Ct},Qe.round=function(Ct){var St=Qe(Ct),Ot=Qe.ceil(Ct);return Ct-St<Ot-Ct?St:Ot},Qe.offset=function(Ct,St){return ze(Ct=new Date(+Ct),St==null?1:Math.floor(St)),Ct},Qe.range=function(Ct,St,Ot){var jt=[],ur;if(Ct=Qe.ceil(Ct),Ot=Ot==null?1:Math.floor(Ot),!(Ct<St)||!(Ot>0))return jt;do jt.push(ur=new Date(+Ct)),ze(Ct,Ot),ce(Ct);while(ur<Ct&&Ct<St);return jt},Qe.filter=function(Ct){return M(function(St){if(St>=St)for(;ce(St),!Ct(St);)St.setTime(St-1)},function(St,Ot){if(St>=St)if(Ot<0)for(;++Ot<=0;)for(;ze(St,-1),!Ct(St););else for(;--Ot>=0;)for(;ze(St,1),!Ct(St););})},tt&&(Qe.count=function(Ct,St){return x.setTime(+Ct),A.setTime(+St),ce(x),ce(A),Math.floor(tt(x,A))},Qe.every=function(Ct){return Ct=Math.floor(Ct),!isFinite(Ct)||!(Ct>0)?null:Ct>1?Qe.filter(nt?function(St){return nt(St)%Ct===0}:function(St){return Qe.count(0,St)%Ct===0}):Qe}),Qe}var e=M(function(){},function(ce,ze){ce.setTime(+ce+ze)},function(ce,ze){return ze-ce});e.every=function(ce){return ce=Math.floor(ce),!isFinite(ce)||!(ce>0)?null:ce>1?M(function(ze){ze.setTime(Math.floor(ze/ce)*ce)},function(ze,tt){ze.setTime(+ze+tt*ce)},function(ze,tt){return(tt-ze)/ce}):e};var t=e.range,r=1e3,o=6e4,a=36e5,i=864e5,n=6048e5,s=M(function(ce){ce.setTime(ce-ce.getMilliseconds())},function(ce,ze){ce.setTime(+ce+ze*r)},function(ce,ze){return(ze-ce)/r},function(ce){return ce.getUTCSeconds()}),c=s.range,h=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getMinutes()}),v=h.range,p=M(function(ce){ce.setTime(ce-ce.getMilliseconds()-ce.getSeconds()*r-ce.getMinutes()*o)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getHours()}),T=p.range,l=M(function(ce){ce.setHours(0,0,0,0)},function(ce,ze){ce.setDate(ce.getDate()+ze)},function(ce,ze){return(ze-ce-(ze.getTimezoneOffset()-ce.getTimezoneOffset())*o)/i},function(ce){return ce.getDate()-1}),_=l.range;function w(ce){return M(function(ze){ze.setDate(ze.getDate()-(ze.getDay()+7-ce)%7),ze.setHours(0,0,0,0)},function(ze,tt){ze.setDate(ze.getDate()+tt*7)},function(ze,tt){return(tt-ze-(tt.getTimezoneOffset()-ze.getTimezoneOffset())*o)/n})}var S=w(0),E=w(1),m=w(2),b=w(3),d=w(4),u=w(5),y=w(6),f=S.range,P=E.range,L=m.range,z=b.range,F=d.range,B=u.range,O=y.range,I=M(function(ce){ce.setDate(1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setMonth(ce.getMonth()+ze)},function(ce,ze){return ze.getMonth()-ce.getMonth()+(ze.getFullYear()-ce.getFullYear())*12},function(ce){return ce.getMonth()}),N=I.range,U=M(function(ce){ce.setMonth(0,1),ce.setHours(0,0,0,0)},function(ce,ze){ce.setFullYear(ce.getFullYear()+ze)},function(ce,ze){return ze.getFullYear()-ce.getFullYear()},function(ce){return ce.getFullYear()});U.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setFullYear(Math.floor(ze.getFullYear()/ce)*ce),ze.setMonth(0,1),ze.setHours(0,0,0,0)},function(ze,tt){ze.setFullYear(ze.getFullYear()+tt*ce)})};var W=U.range,Q=M(function(ce){ce.setUTCSeconds(0,0)},function(ce,ze){ce.setTime(+ce+ze*o)},function(ce,ze){return(ze-ce)/o},function(ce){return ce.getUTCMinutes()}),ue=Q.range,se=M(function(ce){ce.setUTCMinutes(0,0,0)},function(ce,ze){ce.setTime(+ce+ze*a)},function(ce,ze){return(ze-ce)/a},function(ce){return ce.getUTCHours()}),he=se.range,G=M(function(ce){ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCDate(ce.getUTCDate()+ze)},function(ce,ze){return(ze-ce)/i},function(ce){return ce.getUTCDate()-1}),$=G.range;function J(ce){return M(function(ze){ze.setUTCDate(ze.getUTCDate()-(ze.getUTCDay()+7-ce)%7),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCDate(ze.getUTCDate()+tt*7)},function(ze,tt){return(tt-ze)/n})}var Z=J(0),re=J(1),ne=J(2),j=J(3),ee=J(4),ie=J(5),fe=J(6),be=Z.range,Ae=re.range,Be=ne.range,Ie=j.range,Ze=ee.range,at=ie.range,it=fe.range,et=M(function(ce){ce.setUTCDate(1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCMonth(ce.getUTCMonth()+ze)},function(ce,ze){return ze.getUTCMonth()-ce.getUTCMonth()+(ze.getUTCFullYear()-ce.getUTCFullYear())*12},function(ce){return ce.getUTCMonth()}),lt=et.range,Me=M(function(ce){ce.setUTCMonth(0,1),ce.setUTCHours(0,0,0,0)},function(ce,ze){ce.setUTCFullYear(ce.getUTCFullYear()+ze)},function(ce,ze){return ze.getUTCFullYear()-ce.getUTCFullYear()},function(ce){return ce.getUTCFullYear()});Me.every=function(ce){return!isFinite(ce=Math.floor(ce))||!(ce>0)?null:M(function(ze){ze.setUTCFullYear(Math.floor(ze.getUTCFullYear()/ce)*ce),ze.setUTCMonth(0,1),ze.setUTCHours(0,0,0,0)},function(ze,tt){ze.setUTCFullYear(ze.getUTCFullYear()+tt*ce)})};var ge=Me.range;g.timeDay=l,g.timeDays=_,g.timeFriday=u,g.timeFridays=B,g.timeHour=p,g.timeHours=T,g.timeInterval=M,g.timeMillisecond=e,g.timeMilliseconds=t,g.timeMinute=h,g.timeMinutes=v,g.timeMonday=E,g.timeMondays=P,g.timeMonth=I,g.timeMonths=N,g.timeSaturday=y,g.timeSaturdays=O,g.timeSecond=s,g.timeSeconds=c,g.timeSunday=S,g.timeSundays=f,g.timeThursday=d,g.timeThursdays=F,g.timeTuesday=m,g.timeTuesdays=L,g.timeWednesday=b,g.timeWednesdays=z,g.timeWeek=S,g.timeWeeks=f,g.timeYear=U,g.timeYears=W,g.utcDay=G,g.utcDays=$,g.utcFriday=ie,g.utcFridays=at,g.utcHour=se,g.utcHours=he,g.utcMillisecond=e,g.utcMilliseconds=t,g.utcMinute=Q,g.utcMinutes=ue,g.utcMonday=re,g.utcMondays=Ae,g.utcMonth=et,g.utcMonths=lt,g.utcSaturday=fe,g.utcSaturdays=it,g.utcSecond=s,g.utcSeconds=c,g.utcSunday=Z,g.utcSundays=be,g.utcThursday=ee,g.utcThursdays=Ze,g.utcTuesday=ne,g.utcTuesdays=Be,g.utcWednesday=j,g.utcWednesdays=Ie,g.utcWeek=Z,g.utcWeeks=be,g.utcYear=Me,g.utcYears=ge,Object.defineProperty(g,"__esModule",{value:!0})})}}),Np=Ye({"node_modules/d3-time-format/dist/d3-time-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,$p()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L);return Ke.setFullYear(Fe.y),Ke}return new Date(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L)}function M(Fe){if(0<=Fe.y&&Fe.y<100){var Ke=new Date(Date.UTC(-1,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L));return Ke.setUTCFullYear(Fe.y),Ke}return new Date(Date.UTC(Fe.y,Fe.m,Fe.d,Fe.H,Fe.M,Fe.S,Fe.L))}function e(Fe,Ke,Ne){return{y:Fe,m:Ke,d:Ne,H:0,M:0,S:0,L:0}}function t(Fe){var Ke=Fe.dateTime,Ne=Fe.date,Ee=Fe.time,Ve=Fe.periods,ke=Fe.days,Te=Fe.shortDays,Le=Fe.months,rt=Fe.shortMonths,dt=c(Ve),xt=h(Ve),It=c(ke),Bt=h(ke),Gt=c(Te),Kt=h(Te),sr=c(Le),sa=h(Le),Aa=c(rt),La=h(rt),ka={a:Fa,A:qa,b:ya,B:$a,c:null,d:I,e:I,f:ue,H:N,I:U,j:W,L:Q,m:se,M:he,p:mt,q:gt,Q:St,s:Ot,S:G,u:$,U:J,V:Z,w:re,W:ne,x:null,X:null,y:j,Y:ee,Z:ie,"%":Ct},Ga={a:Er,A:kr,b:br,B:Tr,c:null,d:fe,e:fe,f:Ze,H:be,I:Ae,j:Be,L:Ie,m:at,M:it,p:Mr,q:Fr,Q:St,s:Ot,S:et,u:lt,U:Me,V:ge,w:ce,W:ze,x:null,X:null,y:tt,Y:nt,Z:Qe,"%":Ct},Ma={a:Vt,A:Ut,b:xr,B:Zr,c:pa,d,e:d,f:z,H:y,I:y,j:u,L,m:b,M:f,p:zt,q:m,Q:B,s:O,S:P,u:p,U:T,V:l,w:v,W:_,x:Xr,X:Ea,y:S,Y:w,Z:E,"%":F};ka.x=Ua(Ne,ka),ka.X=Ua(Ee,ka),ka.c=Ua(Ke,ka),Ga.x=Ua(Ne,Ga),Ga.X=Ua(Ee,Ga),Ga.c=Ua(Ke,Ga);function Ua(Lr,Jr){return function(oa){var ca=[],kt=-1,ir=0,mr=Lr.length,$r,ma,Ba;for(oa instanceof Date||(oa=new Date(+oa));++kt<mr;)Lr.charCodeAt(kt)===37&&(ca.push(Lr.slice(ir,kt)),(ma=r[$r=Lr.charAt(++kt)])!=null?$r=Lr.charAt(++kt):ma=$r==="e"?" ":"0",(Ba=Jr[$r])&&($r=Ba(oa,ma)),ca.push($r),ir=kt+1);return ca.push(Lr.slice(ir,kt)),ca.join("")}}function ni(Lr,Jr){return function(oa){var ca=e(1900,void 0,1),kt=Wt(ca,Lr,oa+="",0),ir,mr;if(kt!=oa.length)return null;if("Q"in ca)return new Date(ca.Q);if("s"in ca)return new Date(ca.s*1e3+("L"in ca?ca.L:0));if(Jr&&!("Z"in ca)&&(ca.Z=0),"p"in ca&&(ca.H=ca.H%12+ca.p*12),ca.m===void 0&&(ca.m="q"in ca?ca.q:0),"V"in ca){if(ca.V<1||ca.V>53)return null;"w"in ca||(ca.w=1),"Z"in ca?(ir=M(e(ca.y,0,1)),mr=ir.getUTCDay(),ir=mr>4||mr===0?x.utcMonday.ceil(ir):x.utcMonday(ir),ir=x.utcDay.offset(ir,(ca.V-1)*7),ca.y=ir.getUTCFullYear(),ca.m=ir.getUTCMonth(),ca.d=ir.getUTCDate()+(ca.w+6)%7):(ir=A(e(ca.y,0,1)),mr=ir.getDay(),ir=mr>4||mr===0?x.timeMonday.ceil(ir):x.timeMonday(ir),ir=x.timeDay.offset(ir,(ca.V-1)*7),ca.y=ir.getFullYear(),ca.m=ir.getMonth(),ca.d=ir.getDate()+(ca.w+6)%7)}else("W"in ca||"U"in ca)&&("w"in ca||(ca.w="u"in ca?ca.u%7:"W"in ca?1:0),mr="Z"in ca?M(e(ca.y,0,1)).getUTCDay():A(e(ca.y,0,1)).getDay(),ca.m=0,ca.d="W"in ca?(ca.w+6)%7+ca.W*7-(mr+5)%7:ca.w+ca.U*7-(mr+6)%7);return"Z"in ca?(ca.H+=ca.Z/100|0,ca.M+=ca.Z%100,M(ca)):A(ca)}}function Wt(Lr,Jr,oa,ca){for(var kt=0,ir=Jr.length,mr=oa.length,$r,ma;kt<ir;){if(ca>=mr)return-1;if($r=Jr.charCodeAt(kt++),$r===37){if($r=Jr.charAt(kt++),ma=Ma[$r in r?Jr.charAt(kt++):$r],!ma||(ca=ma(Lr,oa,ca))<0)return-1}else if($r!=oa.charCodeAt(ca++))return-1}return ca}function zt(Lr,Jr,oa){var ca=dt.exec(Jr.slice(oa));return ca?(Lr.p=xt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Vt(Lr,Jr,oa){var ca=Gt.exec(Jr.slice(oa));return ca?(Lr.w=Kt[ca[0].toLowerCase()],oa+ca[0].length):-1}function Ut(Lr,Jr,oa){var ca=It.exec(Jr.slice(oa));return ca?(Lr.w=Bt[ca[0].toLowerCase()],oa+ca[0].length):-1}function xr(Lr,Jr,oa){var ca=Aa.exec(Jr.slice(oa));return ca?(Lr.m=La[ca[0].toLowerCase()],oa+ca[0].length):-1}function Zr(Lr,Jr,oa){var ca=sr.exec(Jr.slice(oa));return ca?(Lr.m=sa[ca[0].toLowerCase()],oa+ca[0].length):-1}function pa(Lr,Jr,oa){return Wt(Lr,Ke,Jr,oa)}function Xr(Lr,Jr,oa){return Wt(Lr,Ne,Jr,oa)}function Ea(Lr,Jr,oa){return Wt(Lr,Ee,Jr,oa)}function Fa(Lr){return Te[Lr.getDay()]}function qa(Lr){return ke[Lr.getDay()]}function ya(Lr){return rt[Lr.getMonth()]}function $a(Lr){return Le[Lr.getMonth()]}function mt(Lr){return Ve[+(Lr.getHours()>=12)]}function gt(Lr){return 1+~~(Lr.getMonth()/3)}function Er(Lr){return Te[Lr.getUTCDay()]}function kr(Lr){return ke[Lr.getUTCDay()]}function br(Lr){return rt[Lr.getUTCMonth()]}function Tr(Lr){return Le[Lr.getUTCMonth()]}function Mr(Lr){return Ve[+(Lr.getUTCHours()>=12)]}function Fr(Lr){return 1+~~(Lr.getUTCMonth()/3)}return{format:function(Lr){var Jr=Ua(Lr+="",ka);return Jr.toString=function(){return Lr},Jr},parse:function(Lr){var Jr=ni(Lr+="",!1);return Jr.toString=function(){return Lr},Jr},utcFormat:function(Lr){var Jr=Ua(Lr+="",Ga);return Jr.toString=function(){return Lr},Jr},utcParse:function(Lr){var Jr=ni(Lr+="",!0);return Jr.toString=function(){return Lr},Jr}}}var r={"-":"",_:" ",0:"0"},o=/^\s*\d+/,a=/^%/,i=/[\\^$*+?|[\]().{}]/g;function n(Fe,Ke,Ne){var Ee=Fe<0?"-":"",Ve=(Ee?-Fe:Fe)+"",ke=Ve.length;return Ee+(ke<Ne?new Array(Ne-ke+1).join(Ke)+Ve:Ve)}function s(Fe){return Fe.replace(i,"\\$&")}function c(Fe){return new RegExp("^(?:"+Fe.map(s).join("|")+")","i")}function h(Fe){for(var Ke={},Ne=-1,Ee=Fe.length;++Ne<Ee;)Ke[Fe[Ne].toLowerCase()]=Ne;return Ke}function v(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.w=+Ee[0],Ne+Ee[0].length):-1}function p(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.u=+Ee[0],Ne+Ee[0].length):-1}function T(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.U=+Ee[0],Ne+Ee[0].length):-1}function l(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.V=+Ee[0],Ne+Ee[0].length):-1}function _(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.W=+Ee[0],Ne+Ee[0].length):-1}function w(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+4));return Ee?(Fe.y=+Ee[0],Ne+Ee[0].length):-1}function S(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.y=+Ee[0]+(+Ee[0]>68?1900:2e3),Ne+Ee[0].length):-1}function E(Fe,Ke,Ne){var Ee=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.Z=Ee[1]?0:-(Ee[2]+(Ee[3]||"00")),Ne+Ee[0].length):-1}function m(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+1));return Ee?(Fe.q=Ee[0]*3-3,Ne+Ee[0].length):-1}function b(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.m=Ee[0]-1,Ne+Ee[0].length):-1}function d(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.d=+Ee[0],Ne+Ee[0].length):-1}function u(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.m=0,Fe.d=+Ee[0],Ne+Ee[0].length):-1}function y(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.H=+Ee[0],Ne+Ee[0].length):-1}function f(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.M=+Ee[0],Ne+Ee[0].length):-1}function P(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+2));return Ee?(Fe.S=+Ee[0],Ne+Ee[0].length):-1}function L(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+3));return Ee?(Fe.L=+Ee[0],Ne+Ee[0].length):-1}function z(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne,Ne+6));return Ee?(Fe.L=Math.floor(Ee[0]/1e3),Ne+Ee[0].length):-1}function F(Fe,Ke,Ne){var Ee=a.exec(Ke.slice(Ne,Ne+1));return Ee?Ne+Ee[0].length:-1}function B(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.Q=+Ee[0],Ne+Ee[0].length):-1}function O(Fe,Ke,Ne){var Ee=o.exec(Ke.slice(Ne));return Ee?(Fe.s=+Ee[0],Ne+Ee[0].length):-1}function I(Fe,Ke){return n(Fe.getDate(),Ke,2)}function N(Fe,Ke){return n(Fe.getHours(),Ke,2)}function U(Fe,Ke){return n(Fe.getHours()%12||12,Ke,2)}function W(Fe,Ke){return n(1+x.timeDay.count(x.timeYear(Fe),Fe),Ke,3)}function Q(Fe,Ke){return n(Fe.getMilliseconds(),Ke,3)}function ue(Fe,Ke){return Q(Fe,Ke)+"000"}function se(Fe,Ke){return n(Fe.getMonth()+1,Ke,2)}function he(Fe,Ke){return n(Fe.getMinutes(),Ke,2)}function G(Fe,Ke){return n(Fe.getSeconds(),Ke,2)}function $(Fe){var Ke=Fe.getDay();return Ke===0?7:Ke}function J(Fe,Ke){return n(x.timeSunday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function Z(Fe,Ke){var Ne=Fe.getDay();return Fe=Ne>=4||Ne===0?x.timeThursday(Fe):x.timeThursday.ceil(Fe),n(x.timeThursday.count(x.timeYear(Fe),Fe)+(x.timeYear(Fe).getDay()===4),Ke,2)}function re(Fe){return Fe.getDay()}function ne(Fe,Ke){return n(x.timeMonday.count(x.timeYear(Fe)-1,Fe),Ke,2)}function j(Fe,Ke){return n(Fe.getFullYear()%100,Ke,2)}function ee(Fe,Ke){return n(Fe.getFullYear()%1e4,Ke,4)}function ie(Fe){var Ke=Fe.getTimezoneOffset();return(Ke>0?"-":(Ke*=-1,"+"))+n(Ke/60|0,"0",2)+n(Ke%60,"0",2)}function fe(Fe,Ke){return n(Fe.getUTCDate(),Ke,2)}function be(Fe,Ke){return n(Fe.getUTCHours(),Ke,2)}function Ae(Fe,Ke){return n(Fe.getUTCHours()%12||12,Ke,2)}function Be(Fe,Ke){return n(1+x.utcDay.count(x.utcYear(Fe),Fe),Ke,3)}function Ie(Fe,Ke){return n(Fe.getUTCMilliseconds(),Ke,3)}function Ze(Fe,Ke){return Ie(Fe,Ke)+"000"}function at(Fe,Ke){return n(Fe.getUTCMonth()+1,Ke,2)}function it(Fe,Ke){return n(Fe.getUTCMinutes(),Ke,2)}function et(Fe,Ke){return n(Fe.getUTCSeconds(),Ke,2)}function lt(Fe){var Ke=Fe.getUTCDay();return Ke===0?7:Ke}function Me(Fe,Ke){return n(x.utcSunday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function ge(Fe,Ke){var Ne=Fe.getUTCDay();return Fe=Ne>=4||Ne===0?x.utcThursday(Fe):x.utcThursday.ceil(Fe),n(x.utcThursday.count(x.utcYear(Fe),Fe)+(x.utcYear(Fe).getUTCDay()===4),Ke,2)}function ce(Fe){return Fe.getUTCDay()}function ze(Fe,Ke){return n(x.utcMonday.count(x.utcYear(Fe)-1,Fe),Ke,2)}function tt(Fe,Ke){return n(Fe.getUTCFullYear()%100,Ke,2)}function nt(Fe,Ke){return n(Fe.getUTCFullYear()%1e4,Ke,4)}function Qe(){return"+0000"}function Ct(){return"%"}function St(Fe){return+Fe}function Ot(Fe){return Math.floor(+Fe/1e3)}var jt;ur({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function ur(Fe){return jt=t(Fe),g.timeFormat=jt.format,g.timeParse=jt.parse,g.utcFormat=jt.utcFormat,g.utcParse=jt.utcParse,jt}var ar="%Y-%m-%dT%H:%M:%S.%LZ";function Cr(Fe){return Fe.toISOString()}var vr=Date.prototype.toISOString?Cr:g.utcFormat(ar);function _r(Fe){var Ke=new Date(Fe);return isNaN(Ke)?null:Ke}var yt=+new Date("2000-01-01T00:00:00.000Z")?_r:g.utcParse(ar);g.isoFormat=vr,g.isoParse=yt,g.timeFormatDefaultLocale=ur,g.timeFormatLocale=t,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zy=Ye({"node_modules/d3-format/dist/d3-format.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){return Math.abs(b=Math.round(b))>=1e21?b.toLocaleString("en").replace(/,/g,""):b.toString(10)}function A(b,d){if((u=(b=d?b.toExponential(d-1):b.toExponential()).indexOf("e"))<0)return null;var u,y=b.slice(0,u);return[y.length>1?y[0]+y.slice(2):y,+b.slice(u+1)]}function M(b){return b=A(Math.abs(b)),b?b[1]:NaN}function e(b,d){return function(u,y){for(var f=u.length,P=[],L=0,z=b[0],F=0;f>0&&z>0&&(F+z+1>y&&(z=Math.max(1,y-F)),P.push(u.substring(f-=z,f+z)),!((F+=z+1)>y));)z=b[L=(L+1)%b.length];return P.reverse().join(d)}}function t(b){return function(d){return d.replace(/[0-9]/g,function(u){return b[+u]})}}var r=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function o(b){if(!(d=r.exec(b)))throw new Error("invalid format: "+b);var d;return new a({fill:d[1],align:d[2],sign:d[3],symbol:d[4],zero:d[5],width:d[6],comma:d[7],precision:d[8]&&d[8].slice(1),trim:d[9],type:d[10]})}o.prototype=a.prototype;function a(b){this.fill=b.fill===void 0?" ":b.fill+"",this.align=b.align===void 0?">":b.align+"",this.sign=b.sign===void 0?"-":b.sign+"",this.symbol=b.symbol===void 0?"":b.symbol+"",this.zero=!!b.zero,this.width=b.width===void 0?void 0:+b.width,this.comma=!!b.comma,this.precision=b.precision===void 0?void 0:+b.precision,this.trim=!!b.trim,this.type=b.type===void 0?"":b.type+""}a.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function i(b){e:for(var d=b.length,u=1,y=-1,f;u<d;++u)switch(b[u]){case".":y=f=u;break;case"0":y===0&&(y=u),f=u;break;default:if(!+b[u])break e;y>0&&(y=0);break}return y>0?b.slice(0,y)+b.slice(f+1):b}var n;function s(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1],P=f-(n=Math.max(-8,Math.min(8,Math.floor(f/3)))*3)+1,L=y.length;return P===L?y:P>L?y+new Array(P-L+1).join("0"):P>0?y.slice(0,P)+"."+y.slice(P):"0."+new Array(1-P).join("0")+A(b,Math.max(0,d+P-1))[0]}function c(b,d){var u=A(b,d);if(!u)return b+"";var y=u[0],f=u[1];return f<0?"0."+new Array(-f).join("0")+y:y.length>f+1?y.slice(0,f+1)+"."+y.slice(f+1):y+new Array(f-y.length+2).join("0")}var h={"%":function(b,d){return(b*100).toFixed(d)},b:function(b){return Math.round(b).toString(2)},c:function(b){return b+""},d:x,e:function(b,d){return b.toExponential(d)},f:function(b,d){return b.toFixed(d)},g:function(b,d){return b.toPrecision(d)},o:function(b){return Math.round(b).toString(8)},p:function(b,d){return c(b*100,d)},r:c,s,X:function(b){return Math.round(b).toString(16).toUpperCase()},x:function(b){return Math.round(b).toString(16)}};function v(b){return b}var p=Array.prototype.map,T=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function l(b){var d=b.grouping===void 0||b.thousands===void 0?v:e(p.call(b.grouping,Number),b.thousands+""),u=b.currency===void 0?"":b.currency[0]+"",y=b.currency===void 0?"":b.currency[1]+"",f=b.decimal===void 0?".":b.decimal+"",P=b.numerals===void 0?v:t(p.call(b.numerals,String)),L=b.percent===void 0?"%":b.percent+"",z=b.minus===void 0?"-":b.minus+"",F=b.nan===void 0?"NaN":b.nan+"";function B(I){I=o(I);var N=I.fill,U=I.align,W=I.sign,Q=I.symbol,ue=I.zero,se=I.width,he=I.comma,G=I.precision,$=I.trim,J=I.type;J==="n"?(he=!0,J="g"):h[J]||(G===void 0&&(G=12),$=!0,J="g"),(ue||N==="0"&&U==="=")&&(ue=!0,N="0",U="=");var Z=Q==="$"?u:Q==="#"&&/[boxX]/.test(J)?"0"+J.toLowerCase():"",re=Q==="$"?y:/[%p]/.test(J)?L:"",ne=h[J],j=/[defgprs%]/.test(J);G=G===void 0?6:/[gprs]/.test(J)?Math.max(1,Math.min(21,G)):Math.max(0,Math.min(20,G));function ee(ie){var fe=Z,be=re,Ae,Be,Ie;if(J==="c")be=ne(ie)+be,ie="";else{ie=+ie;var Ze=ie<0||1/ie<0;if(ie=isNaN(ie)?F:ne(Math.abs(ie),G),$&&(ie=i(ie)),Ze&&+ie==0&&W!=="+"&&(Ze=!1),fe=(Ze?W==="("?W:z:W==="-"||W==="("?"":W)+fe,be=(J==="s"?T[8+n/3]:"")+be+(Ze&&W==="("?")":""),j){for(Ae=-1,Be=ie.length;++Ae<Be;)if(Ie=ie.charCodeAt(Ae),48>Ie||Ie>57){be=(Ie===46?f+ie.slice(Ae+1):ie.slice(Ae))+be,ie=ie.slice(0,Ae);break}}}he&&!ue&&(ie=d(ie,1/0));var at=fe.length+ie.length+be.length,it=at<se?new Array(se-at+1).join(N):"";switch(he&&ue&&(ie=d(it+ie,it.length?se-be.length:1/0),it=""),U){case"<":ie=fe+ie+be+it;break;case"=":ie=fe+it+ie+be;break;case"^":ie=it.slice(0,at=it.length>>1)+fe+ie+be+it.slice(at);break;default:ie=it+fe+ie+be;break}return P(ie)}return ee.toString=function(){return I+""},ee}function O(I,N){var U=B((I=o(I),I.type="f",I)),W=Math.max(-8,Math.min(8,Math.floor(M(N)/3)))*3,Q=Math.pow(10,-W),ue=T[8+W/3];return function(se){return U(Q*se)+ue}}return{format:B,formatPrefix:O}}var _;w({decimal:".",thousands:",",grouping:[3],currency:["$",""],minus:"-"});function w(b){return _=l(b),g.format=_.format,g.formatPrefix=_.formatPrefix,_}function S(b){return Math.max(0,-M(Math.abs(b)))}function E(b,d){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(M(d)/3)))*3-M(Math.abs(b)))}function m(b,d){return b=Math.abs(b),d=Math.abs(d)-b,Math.max(0,M(d)-M(b))+1}g.FormatSpecifier=a,g.formatDefaultLocale=w,g.formatLocale=l,g.formatSpecifier=o,g.precisionFixed=S,g.precisionPrefix=E,g.precisionRound=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),aF=Ye({"node_modules/is-string-blank/index.js"(X,H){"use strict";H.exports=function(g){for(var x=g.length,A,M=0;M<x;M++)if(A=g.charCodeAt(M),(A<9||A>13)&&A!==32&&A!==133&&A!==160&&A!==5760&&A!==6158&&(A<8192||A>8205)&&A!==8232&&A!==8233&&A!==8239&&A!==8287&&A!==8288&&A!==12288&&A!==65279)return!1;return!0}}}),jo=Ye({"node_modules/fast-isnumeric/index.js"(X,H){"use strict";var g=aF();H.exports=function(x){var A=typeof x;if(A==="string"){var M=x;if(x=+x,x===0&&g(M))return!1}else if(A!=="number")return!1;return x-x<1}}}),ks=Ye({"src/constants/numerical.js"(X,H){"use strict";H.exports={BADNUM:void 0,FP_SAFE:Number.MAX_VALUE*1e-4,ONEMAXYEAR:316224e5,ONEAVGYEAR:315576e5,ONEMINYEAR:31536e6,ONEMAXQUARTER:79488e5,ONEAVGQUARTER:78894e5,ONEMINQUARTER:76896e5,ONEMAXMONTH:26784e5,ONEAVGMONTH:26298e5,ONEMINMONTH:24192e5,ONEWEEK:6048e5,ONEDAY:864e5,ONEHOUR:36e5,ONEMIN:6e4,ONESEC:1e3,ONEMILLI:1,ONEMICROSEC:.001,EPOCHJD:24405875e-1,ALMOST_EQUAL:1-1e-6,LOG_CLIP:10,MINUS_SIGN:"\u2212"}}}),XA=Ye({"node_modules/base64-arraybuffer/dist/base64-arraybuffer.umd.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=typeof globalThis<"u"?globalThis:g||self,x(g["base64-arraybuffer"]={}))})(X,function(g){"use strict";for(var x="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",A=typeof Uint8Array>"u"?[]:new Uint8Array(256),M=0;M<x.length;M++)A[x.charCodeAt(M)]=M;var e=function(r){var o=new Uint8Array(r),a,i=o.length,n="";for(a=0;a<i;a+=3)n+=x[o[a]>>2],n+=x[(o[a]&3)<<4|o[a+1]>>4],n+=x[(o[a+1]&15)<<2|o[a+2]>>6],n+=x[o[a+2]&63];return i%3===2?n=n.substring(0,n.length-1)+"=":i%3===1&&(n=n.substring(0,n.length-2)+"=="),n},t=function(r){var o=r.length*.75,a=r.length,i,n=0,s,c,h,v;r[r.length-1]==="="&&(o--,r[r.length-2]==="="&&o--);var p=new ArrayBuffer(o),T=new Uint8Array(p);for(i=0;i<a;i+=4)s=A[r.charCodeAt(i)],c=A[r.charCodeAt(i+1)],h=A[r.charCodeAt(i+2)],v=A[r.charCodeAt(i+3)],T[n++]=s<<2|c>>4,T[n++]=(c&15)<<4|h>>2,T[n++]=(h&3)<<6|v&63;return p};g.decode=t,g.encode=e,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zv=Ye({"src/lib/is_plain_object.js"(X,H){"use strict";H.exports=function(x){return window&&window.process&&window.process.versions?Object.prototype.toString.call(x)==="[object Object]":Object.prototype.toString.call(x)==="[object Object]"&&Object.getPrototypeOf(x).hasOwnProperty("hasOwnProperty")}}}),xp=Ye({"src/lib/array.js"(X){"use strict";var H=XA().decode,g=Zv(),x=Array.isArray,A=ArrayBuffer,M=DataView;function e(s){return A.isView(s)&&!(s instanceof M)}X.isTypedArray=e;function t(s){return x(s)||e(s)}X.isArrayOrTypedArray=t;function r(s){return!t(s[0])}X.isArray1D=r,X.ensureArray=function(s,c){return x(s)||(s=[]),s.length=c,s};var o={u1c:typeof Uint8ClampedArray>"u"?void 0:Uint8ClampedArray,i1:typeof Int8Array>"u"?void 0:Int8Array,u1:typeof Uint8Array>"u"?void 0:Uint8Array,i2:typeof Int16Array>"u"?void 0:Int16Array,u2:typeof Uint16Array>"u"?void 0:Uint16Array,i4:typeof Int32Array>"u"?void 0:Int32Array,u4:typeof Uint32Array>"u"?void 0:Uint32Array,f4:typeof Float32Array>"u"?void 0:Float32Array,f8:typeof Float64Array>"u"?void 0:Float64Array};o.uint8c=o.u1c,o.uint8=o.u1,o.int8=o.i1,o.uint16=o.u2,o.int16=o.i2,o.uint32=o.u4,o.int32=o.i4,o.float32=o.f4,o.float64=o.f8;function a(s){return s.constructor===ArrayBuffer}X.isArrayBuffer=a,X.decodeTypedArraySpec=function(s){var c=[],h=i(s),v=h.dtype,p=o[v];if(!p)throw new Error('Error in dtype: "'+v+'"');var T=p.BYTES_PER_ELEMENT,l=h.bdata;a(l)||(l=H(l));var _=h.shape===void 0?[l.byteLength/T]:(""+h.shape).split(",");_.reverse();var w=_.length,S,E,m=+_[0],b=T*m,d=0;if(w===1)c=new p(l);else if(w===2)for(S=+_[1],E=0;E<S;E++)c[E]=new p(l,d,m),d+=b;else if(w===3){S=+_[1];for(var u=+_[2],y=0;y<u;y++)for(c[y]=[],E=0;E<S;E++)c[y][E]=new p(l,d,m),d+=b}else throw new Error("ndim: "+w+'is not supported with the shape:"'+h.shape+'"');return c.bdata=h.bdata,c.dtype=h.dtype,c.shape=_.reverse().join(","),s._inputArray=c,c},X.isTypedArraySpec=function(s){return g(s)&&s.hasOwnProperty("dtype")&&typeof s.dtype=="string"&&s.hasOwnProperty("bdata")&&(typeof s.bdata=="string"||a(s.bdata))&&(s.shape===void 0||s.hasOwnProperty("shape")&&(typeof s.shape=="string"||typeof s.shape=="number"))};function i(s){return{bdata:s.bdata,dtype:s.dtype,shape:s.shape}}X.concat=function(){var s=[],c=!0,h=0,v,p,T,l,_,w,S,E;for(T=0;T<arguments.length;T++)l=arguments[T],w=l.length,w&&(p?s.push(l):(p=l,_=w),x(l)?v=!1:(c=!1,h?v!==l.constructor&&(v=!1):v=l.constructor),h+=w);if(!h)return[];if(!s.length)return p;if(c)return p.concat.apply(p,s);if(v){for(S=new v(h),S.set(p),T=0;T<s.length;T++)l=s[T],S.set(l,_),_+=l.length;return S}for(S=new Array(h),E=0;E<p.length;E++)S[E]=p[E];for(T=0;T<s.length;T++){for(l=s[T],E=0;E<l.length;E++)S[_+E]=l[E];_+=E}return S},X.maxRowLength=function(s){return n(s,Math.max,0)},X.minRowLength=function(s){return n(s,Math.min,1/0)};function n(s,c,h){if(t(s))if(t(s[0])){for(var v=h,p=0;p<s.length;p++)v=c(v,s[p].length);return v}else return s.length;return 0}}}),__=Ye({"src/lib/nested_property.js"(X,H){"use strict";var g=jo(),x=xp().isArrayOrTypedArray;H.exports=function(s,c){if(g(c))c=String(c);else if(typeof c!="string"||c.substr(c.length-4)==="[-1]")throw"bad property string";var h=c.split("."),v,p,T,l;for(l=0;l<h.length;l++)if(String(h[l]).slice(0,2)==="__")throw"bad property string";for(l=0;l<h.length;){if(v=String(h[l]).match(/^([^\[\]]*)((\[\-?[0-9]*\])+)$/),v){if(v[1])h[l]=v[1];else if(l===0)h.splice(0,1);else throw"bad property string";for(p=v[2].substr(1,v[2].length-2).split("]["),T=0;T<p.length;T++)l++,h.splice(l,0,Number(p[T]))}l++}return typeof s!="object"?i(s,c,h):{set:t(s,h,c),get:A(s,h),astr:c,parts:h,obj:s}};function A(n,s){return function(c){var h=n,v,p,T,l,_;for(l=0;l<s.length-1;l++){if(v=s[l],v===-1){for(p=!0,T=[],_=0;_<h.length;_++)T[_]=A(h[_],s.slice(l+1))(c),T[_]!==T[0]&&(p=!1);return p?T[0]:T}if(typeof v=="number"&&!x(h)||(h=h[v],typeof h!="object"||h===null))return}if(!(typeof h!="object"||h===null)&&(T=h[s[l]],!(!c&&T===null)))return T}}var M=/(^|\.)args\[/;function e(n,s){return n===void 0||n===null&&!s.match(M)}function t(n,s,c){return function(h){var v=n,p="",T=[[n,p]],l=e(h,c),_,w;for(w=0;w<s.length-1;w++){if(_=s[w],typeof _=="number"&&!x(v))throw"array index but container is not an array";if(_===-1){if(l=!o(v,s.slice(w+1),h,c),l)break;return}if(!a(v,_,s[w+1],l))break;if(v=v[_],typeof v!="object"||v===null)throw"container is not an object";p=r(p,_),T.push([v,p])}if(l){if(w===s.length-1&&(delete v[s[w]],Array.isArray(v)&&+s[w]===v.length-1))for(;v.length&&v[v.length-1]===void 0;)v.pop()}else v[s[w]]=h}}function r(n,s){var c=s;return g(s)?c="["+s+"]":n&&(c="."+s),n+c}function o(n,s,c,h){var v=x(c),p=!0,T=c,l=h.replace("-1",0),_=v?!1:e(c,l),w=s[0],S;for(S=0;S<n.length;S++)l=h.replace("-1",S),v&&(T=c[S%c.length],_=e(T,l)),_&&(p=!1),a(n,S,w,_)&&t(n[S],s,h.replace("-1",S))(T);return p}function a(n,s,c,h){if(n[s]===void 0){if(h)return!1;typeof c=="number"?n[s]=[]:n[s]={}}return!0}function i(n,s,c){return{set:function(){throw"bad container"},get:function(){},astr:s,parts:c,obj:n}}}}),iF=Ye({"src/lib/keyed_container.js"(X,H){"use strict";var g=__(),x=/^\w*$/,A=0,M=1,e=2,t=3,r=4;H.exports=function(a,i,n,s){n=n||"name",s=s||"value";var c,h,v,p={};i&&i.length?(v=g(a,i),h=v.get()):h=a,i=i||"";var T={};if(h)for(c=0;c<h.length;c++)T[h[c][n]]=c;var l=x.test(s),_={set:function(w,S){var E=S===null?r:A;if(!h){if(!v||E===r)return;h=[],v.set(h)}var m=T[w];if(m===void 0){if(E===r)return;E=E|t,m=h.length,T[w]=m}else S!==(l?h[m][s]:g(h[m],s).get())&&(E=E|e);var b=h[m]=h[m]||{};return b[n]=w,l?b[s]=S:g(b,s).set(S),S!==null&&(E=E&~r),p[m]=p[m]|E,_},get:function(w){if(h){var S=T[w];if(S!==void 0)return l?h[S][s]:g(h[S],s).get()}},rename:function(w,S){var E=T[w];return E===void 0||(p[E]=p[E]|M,T[S]=E,delete T[w],h[E][n]=S),_},remove:function(w){var S=T[w];if(S===void 0)return _;var E=h[S];if(Object.keys(E).length>2)return p[S]=p[S]|e,_.set(w,null);if(l){for(c=S;c<h.length;c++)p[c]=p[c]|t;for(c=S;c<h.length;c++)T[h[c][n]]--;h.splice(S,1),delete T[w]}else g(E,s).set(null),p[S]=p[S]|e|r;return _},constructUpdate:function(){for(var w,S,E={},m=Object.keys(p),b=0;b<m.length;b++)S=m[b],w=i+"["+S+"]",h[S]?(p[S]&M&&(E[w+"."+n]=h[S][n]),p[S]&e&&(l?E[w+"."+s]=p[S]&r?null:h[S][s]:E[w+"."+s]=p[S]&r?null:g(h[S],s).get())):E[w]=null;return E}};return _}}}),nF=Ye({"src/lib/relative_attr.js"(X,H){"use strict";var g=/^(.*)(\.[^\.\[\]]+|\[\d\])$/,x=/^[^\.\[\]]+$/;H.exports=function(A,M){for(;M;){var e=A.match(g);if(e)A=e[1];else if(A.match(x))A="";else throw new Error("bad relativeAttr call:"+[A,M]);if(M.charAt(0)==="^")M=M.slice(1);else break}return A&&M.charAt(0)!=="["?A+"."+M:A+M}}}),c2=Ye({"src/lib/to_log_range.js"(X,H){"use strict";var g=jo();H.exports=function(A,M){if(A>0)return Math.log(A)/Math.LN10;var e=Math.log(Math.min(M[0],M[1]))/Math.LN10;return g(e)||(e=Math.log(Math.max(M[0],M[1]))/Math.LN10-6),e}}}),oF=Ye({"src/lib/relink_private.js"(X,H){"use strict";var g=xp().isArrayOrTypedArray,x=Zv();H.exports=function A(M,e){for(var t in e){var r=e[t],o=M[t];if(o!==r)if(t.charAt(0)==="_"||typeof r=="function"){if(t in M)continue;M[t]=r}else if(g(r)&&g(o)&&x(r[0])){if(t==="customdata"||t==="ids")continue;for(var a=Math.min(r.length,o.length),i=0;i<a;i++)o[i]!==r[i]&&x(r[i])&&x(o[i])&&A(o[i],r[i])}else x(r)&&x(o)&&(A(o,r),Object.keys(o).length||delete M[t])}}}}),Xy=Ye({"src/lib/mod.js"(X,H){"use strict";function g(A,M){var e=A%M;return e<0?e+M:e}function x(A,M){return Math.abs(A)>M/2?A-Math.round(A/M)*M:A}H.exports={mod:g,modHalf:x}}}),bh=Ye({"node_modules/tinycolor2/tinycolor.js"(X,H){(function(g){var x=/^\s+/,A=/\s+$/,M=0,e=g.round,t=g.min,r=g.max,o=g.random;function a(j,ee){if(j=j||"",ee=ee||{},j instanceof a)return j;if(!(this instanceof a))return new a(j,ee);var ie=i(j);this._originalInput=j,this._r=ie.r,this._g=ie.g,this._b=ie.b,this._a=ie.a,this._roundA=e(100*this._a)/100,this._format=ee.format||ie.format,this._gradientType=ee.gradientType,this._r<1&&(this._r=e(this._r)),this._g<1&&(this._g=e(this._g)),this._b<1&&(this._b=e(this._b)),this._ok=ie.ok,this._tc_id=M++}a.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var j=this.toRgb();return(j.r*299+j.g*587+j.b*114)/1e3},getLuminance:function(){var j=this.toRgb(),ee,ie,fe,be,Ae,Be;return ee=j.r/255,ie=j.g/255,fe=j.b/255,ee<=.03928?be=ee/12.92:be=g.pow((ee+.055)/1.055,2.4),ie<=.03928?Ae=ie/12.92:Ae=g.pow((ie+.055)/1.055,2.4),fe<=.03928?Be=fe/12.92:Be=g.pow((fe+.055)/1.055,2.4),.2126*be+.7152*Ae+.0722*Be},setAlpha:function(j){return this._a=I(j),this._roundA=e(100*this._a)/100,this},toHsv:function(){var j=h(this._r,this._g,this._b);return{h:j.h*360,s:j.s,v:j.v,a:this._a}},toHsvString:function(){var j=h(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.v*100);return this._a==1?"hsv("+ee+", "+ie+"%, "+fe+"%)":"hsva("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHsl:function(){var j=s(this._r,this._g,this._b);return{h:j.h*360,s:j.s,l:j.l,a:this._a}},toHslString:function(){var j=s(this._r,this._g,this._b),ee=e(j.h*360),ie=e(j.s*100),fe=e(j.l*100);return this._a==1?"hsl("+ee+", "+ie+"%, "+fe+"%)":"hsla("+ee+", "+ie+"%, "+fe+"%, "+this._roundA+")"},toHex:function(j){return p(this._r,this._g,this._b,j)},toHexString:function(j){return"#"+this.toHex(j)},toHex8:function(j){return T(this._r,this._g,this._b,this._a,j)},toHex8String:function(j){return"#"+this.toHex8(j)},toRgb:function(){return{r:e(this._r),g:e(this._g),b:e(this._b),a:this._a}},toRgbString:function(){return this._a==1?"rgb("+e(this._r)+", "+e(this._g)+", "+e(this._b)+")":"rgba("+e(this._r)+", "+e(this._g)+", "+e(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:e(N(this._r,255)*100)+"%",g:e(N(this._g,255)*100)+"%",b:e(N(this._b,255)*100)+"%",a:this._a}},toPercentageRgbString:function(){return this._a==1?"rgb("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%)":"rgba("+e(N(this._r,255)*100)+"%, "+e(N(this._g,255)*100)+"%, "+e(N(this._b,255)*100)+"%, "+this._roundA+")"},toName:function(){return this._a===0?"transparent":this._a<1?!1:B[p(this._r,this._g,this._b,!0)]||!1},toFilter:function(j){var ee="#"+l(this._r,this._g,this._b,this._a),ie=ee,fe=this._gradientType?"GradientType = 1, ":"";if(j){var be=a(j);ie="#"+l(be._r,be._g,be._b,be._a)}return"progid:DXImageTransform.Microsoft.gradient("+fe+"startColorstr="+ee+",endColorstr="+ie+")"},toString:function(j){var ee=!!j;j=j||this._format;var ie=!1,fe=this._a<1&&this._a>=0,be=!ee&&fe&&(j==="hex"||j==="hex6"||j==="hex3"||j==="hex4"||j==="hex8"||j==="name");return be?j==="name"&&this._a===0?this.toName():this.toRgbString():(j==="rgb"&&(ie=this.toRgbString()),j==="prgb"&&(ie=this.toPercentageRgbString()),(j==="hex"||j==="hex6")&&(ie=this.toHexString()),j==="hex3"&&(ie=this.toHexString(!0)),j==="hex4"&&(ie=this.toHex8String(!0)),j==="hex8"&&(ie=this.toHex8String()),j==="name"&&(ie=this.toName()),j==="hsl"&&(ie=this.toHslString()),j==="hsv"&&(ie=this.toHsvString()),ie||this.toHexString())},clone:function(){return a(this.toString())},_applyModification:function(j,ee){var ie=j.apply(null,[this].concat([].slice.call(ee)));return this._r=ie._r,this._g=ie._g,this._b=ie._b,this.setAlpha(ie._a),this},lighten:function(){return this._applyModification(E,arguments)},brighten:function(){return this._applyModification(m,arguments)},darken:function(){return this._applyModification(b,arguments)},desaturate:function(){return this._applyModification(_,arguments)},saturate:function(){return this._applyModification(w,arguments)},greyscale:function(){return this._applyModification(S,arguments)},spin:function(){return this._applyModification(d,arguments)},_applyCombination:function(j,ee){return j.apply(null,[this].concat([].slice.call(ee)))},analogous:function(){return this._applyCombination(L,arguments)},complement:function(){return this._applyCombination(u,arguments)},monochromatic:function(){return this._applyCombination(z,arguments)},splitcomplement:function(){return this._applyCombination(P,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(f,arguments)}},a.fromRatio=function(j,ee){if(typeof j=="object"){var ie={};for(var fe in j)j.hasOwnProperty(fe)&&(fe==="a"?ie[fe]=j[fe]:ie[fe]=he(j[fe]));j=ie}return a(j,ee)};function i(j){var ee={r:0,g:0,b:0},ie=1,fe=null,be=null,Ae=null,Be=!1,Ie=!1;return typeof j=="string"&&(j=re(j)),typeof j=="object"&&(Z(j.r)&&Z(j.g)&&Z(j.b)?(ee=n(j.r,j.g,j.b),Be=!0,Ie=String(j.r).substr(-1)==="%"?"prgb":"rgb"):Z(j.h)&&Z(j.s)&&Z(j.v)?(fe=he(j.s),be=he(j.v),ee=v(j.h,fe,be),Be=!0,Ie="hsv"):Z(j.h)&&Z(j.s)&&Z(j.l)&&(fe=he(j.s),Ae=he(j.l),ee=c(j.h,fe,Ae),Be=!0,Ie="hsl"),j.hasOwnProperty("a")&&(ie=j.a)),ie=I(ie),{ok:Be,format:j.format||Ie,r:t(255,r(ee.r,0)),g:t(255,r(ee.g,0)),b:t(255,r(ee.b,0)),a:ie}}function n(j,ee,ie){return{r:N(j,255)*255,g:N(ee,255)*255,b:N(ie,255)*255}}function s(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=(fe+be)/2;if(fe==be)Ae=Be=0;else{var Ze=fe-be;switch(Be=Ie>.5?Ze/(2-fe-be):Ze/(fe+be),fe){case j:Ae=(ee-ie)/Ze+(ee<ie?6:0);break;case ee:Ae=(ie-j)/Ze+2;break;case ie:Ae=(j-ee)/Ze+4;break}Ae/=6}return{h:Ae,s:Be,l:Ie}}function c(j,ee,ie){var fe,be,Ae;j=N(j,360),ee=N(ee,100),ie=N(ie,100);function Be(at,it,et){return et<0&&(et+=1),et>1&&(et-=1),et<1/6?at+(it-at)*6*et:et<1/2?it:et<2/3?at+(it-at)*(2/3-et)*6:at}if(ee===0)fe=be=Ae=ie;else{var Ie=ie<.5?ie*(1+ee):ie+ee-ie*ee,Ze=2*ie-Ie;fe=Be(Ze,Ie,j+1/3),be=Be(Ze,Ie,j),Ae=Be(Ze,Ie,j-1/3)}return{r:fe*255,g:be*255,b:Ae*255}}function h(j,ee,ie){j=N(j,255),ee=N(ee,255),ie=N(ie,255);var fe=r(j,ee,ie),be=t(j,ee,ie),Ae,Be,Ie=fe,Ze=fe-be;if(Be=fe===0?0:Ze/fe,fe==be)Ae=0;else{switch(fe){case j:Ae=(ee-ie)/Ze+(ee<ie?6:0);break;case ee:Ae=(ie-j)/Ze+2;break;case ie:Ae=(j-ee)/Ze+4;break}Ae/=6}return{h:Ae,s:Be,v:Ie}}function v(j,ee,ie){j=N(j,360)*6,ee=N(ee,100),ie=N(ie,100);var fe=g.floor(j),be=j-fe,Ae=ie*(1-ee),Be=ie*(1-be*ee),Ie=ie*(1-(1-be)*ee),Ze=fe%6,at=[ie,Be,Ae,Ae,Ie,ie][Ze],it=[Ie,ie,ie,Be,Ae,Ae][Ze],et=[Ae,Ae,Ie,ie,ie,Be][Ze];return{r:at*255,g:it*255,b:et*255}}function p(j,ee,ie,fe){var be=[se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16))];return fe&&be[0].charAt(0)==be[0].charAt(1)&&be[1].charAt(0)==be[1].charAt(1)&&be[2].charAt(0)==be[2].charAt(1)?be[0].charAt(0)+be[1].charAt(0)+be[2].charAt(0):be.join("")}function T(j,ee,ie,fe,be){var Ae=[se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16)),se(G(fe))];return be&&Ae[0].charAt(0)==Ae[0].charAt(1)&&Ae[1].charAt(0)==Ae[1].charAt(1)&&Ae[2].charAt(0)==Ae[2].charAt(1)&&Ae[3].charAt(0)==Ae[3].charAt(1)?Ae[0].charAt(0)+Ae[1].charAt(0)+Ae[2].charAt(0)+Ae[3].charAt(0):Ae.join("")}function l(j,ee,ie,fe){var be=[se(G(fe)),se(e(j).toString(16)),se(e(ee).toString(16)),se(e(ie).toString(16))];return be.join("")}a.equals=function(j,ee){return!j||!ee?!1:a(j).toRgbString()==a(ee).toRgbString()},a.random=function(){return a.fromRatio({r:o(),g:o(),b:o()})};function _(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.s-=ee/100,ie.s=U(ie.s),a(ie)}function w(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.s+=ee/100,ie.s=U(ie.s),a(ie)}function S(j){return a(j).desaturate(100)}function E(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.l+=ee/100,ie.l=U(ie.l),a(ie)}function m(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toRgb();return ie.r=r(0,t(255,ie.r-e(255*-(ee/100)))),ie.g=r(0,t(255,ie.g-e(255*-(ee/100)))),ie.b=r(0,t(255,ie.b-e(255*-(ee/100)))),a(ie)}function b(j,ee){ee=ee===0?0:ee||10;var ie=a(j).toHsl();return ie.l-=ee/100,ie.l=U(ie.l),a(ie)}function d(j,ee){var ie=a(j).toHsl(),fe=(ie.h+ee)%360;return ie.h=fe<0?360+fe:fe,a(ie)}function u(j){var ee=a(j).toHsl();return ee.h=(ee.h+180)%360,a(ee)}function y(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+120)%360,s:ee.s,l:ee.l}),a({h:(ie+240)%360,s:ee.s,l:ee.l})]}function f(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+90)%360,s:ee.s,l:ee.l}),a({h:(ie+180)%360,s:ee.s,l:ee.l}),a({h:(ie+270)%360,s:ee.s,l:ee.l})]}function P(j){var ee=a(j).toHsl(),ie=ee.h;return[a(j),a({h:(ie+72)%360,s:ee.s,l:ee.l}),a({h:(ie+216)%360,s:ee.s,l:ee.l})]}function L(j,ee,ie){ee=ee||6,ie=ie||30;var fe=a(j).toHsl(),be=360/ie,Ae=[a(j)];for(fe.h=(fe.h-(be*ee>>1)+720)%360;--ee;)fe.h=(fe.h+be)%360,Ae.push(a(fe));return Ae}function z(j,ee){ee=ee||6;for(var ie=a(j).toHsv(),fe=ie.h,be=ie.s,Ae=ie.v,Be=[],Ie=1/ee;ee--;)Be.push(a({h:fe,s:be,v:Ae})),Ae=(Ae+Ie)%1;return Be}a.mix=function(j,ee,ie){ie=ie===0?0:ie||50;var fe=a(j).toRgb(),be=a(ee).toRgb(),Ae=ie/100,Be={r:(be.r-fe.r)*Ae+fe.r,g:(be.g-fe.g)*Ae+fe.g,b:(be.b-fe.b)*Ae+fe.b,a:(be.a-fe.a)*Ae+fe.a};return a(Be)},a.readability=function(j,ee){var ie=a(j),fe=a(ee);return(g.max(ie.getLuminance(),fe.getLuminance())+.05)/(g.min(ie.getLuminance(),fe.getLuminance())+.05)},a.isReadable=function(j,ee,ie){var fe=a.readability(j,ee),be,Ae;switch(Ae=!1,be=ne(ie),be.level+be.size){case"AAsmall":case"AAAlarge":Ae=fe>=4.5;break;case"AAlarge":Ae=fe>=3;break;case"AAAsmall":Ae=fe>=7;break}return Ae},a.mostReadable=function(j,ee,ie){var fe=null,be=0,Ae,Be,Ie,Ze;ie=ie||{},Be=ie.includeFallbackColors,Ie=ie.level,Ze=ie.size;for(var at=0;at<ee.length;at++)Ae=a.readability(j,ee[at]),Ae>be&&(be=Ae,fe=a(ee[at]));return a.isReadable(j,fe,{level:Ie,size:Ze})||!Be?fe:(ie.includeFallbackColors=!1,a.mostReadable(j,["#fff","#000"],ie))};var F=a.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"},B=a.hexNames=O(F);function O(j){var ee={};for(var ie in j)j.hasOwnProperty(ie)&&(ee[j[ie]]=ie);return ee}function I(j){return j=parseFloat(j),(isNaN(j)||j<0||j>1)&&(j=1),j}function N(j,ee){Q(j)&&(j="100%");var ie=ue(j);return j=t(ee,r(0,parseFloat(j))),ie&&(j=parseInt(j*ee,10)/100),g.abs(j-ee)<1e-6?1:j%ee/parseFloat(ee)}function U(j){return t(1,r(0,j))}function W(j){return parseInt(j,16)}function Q(j){return typeof j=="string"&&j.indexOf(".")!=-1&&parseFloat(j)===1}function ue(j){return typeof j=="string"&&j.indexOf("%")!=-1}function se(j){return j.length==1?"0"+j:""+j}function he(j){return j<=1&&(j=j*100+"%"),j}function G(j){return g.round(parseFloat(j)*255).toString(16)}function $(j){return W(j)/255}var J=function(){var j="[-\\+]?\\d+%?",ee="[-\\+]?\\d*\\.\\d+%?",ie="(?:"+ee+")|(?:"+j+")",fe="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?",be="[\\s|\\(]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")[,|\\s]+("+ie+")\\s*\\)?";return{CSS_UNIT:new RegExp(ie),rgb:new RegExp("rgb"+fe),rgba:new RegExp("rgba"+be),hsl:new RegExp("hsl"+fe),hsla:new RegExp("hsla"+be),hsv:new RegExp("hsv"+fe),hsva:new RegExp("hsva"+be),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();function Z(j){return!!J.CSS_UNIT.exec(j)}function re(j){j=j.replace(x,"").replace(A,"").toLowerCase();var ee=!1;if(F[j])j=F[j],ee=!0;else if(j=="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var ie;return(ie=J.rgb.exec(j))?{r:ie[1],g:ie[2],b:ie[3]}:(ie=J.rgba.exec(j))?{r:ie[1],g:ie[2],b:ie[3],a:ie[4]}:(ie=J.hsl.exec(j))?{h:ie[1],s:ie[2],l:ie[3]}:(ie=J.hsla.exec(j))?{h:ie[1],s:ie[2],l:ie[3],a:ie[4]}:(ie=J.hsv.exec(j))?{h:ie[1],s:ie[2],v:ie[3]}:(ie=J.hsva.exec(j))?{h:ie[1],s:ie[2],v:ie[3],a:ie[4]}:(ie=J.hex8.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),a:$(ie[4]),format:ee?"name":"hex8"}:(ie=J.hex6.exec(j))?{r:W(ie[1]),g:W(ie[2]),b:W(ie[3]),format:ee?"name":"hex"}:(ie=J.hex4.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),a:$(ie[4]+""+ie[4]),format:ee?"name":"hex8"}:(ie=J.hex3.exec(j))?{r:W(ie[1]+""+ie[1]),g:W(ie[2]+""+ie[2]),b:W(ie[3]+""+ie[3]),format:ee?"name":"hex"}:!1}function ne(j){var ee,ie;return j=j||{level:"AA",size:"small"},ee=(j.level||"AA").toUpperCase(),ie=(j.size||"small").toLowerCase(),ee!=="AA"&&ee!=="AAA"&&(ee="AA"),ie!=="small"&&ie!=="large"&&(ie="small"),{level:ee,size:ie}}typeof H<"u"&&H.exports?H.exports=a:window.tinycolor=a})(Math)}}),Oo=Ye({"src/lib/extend.js"(X){"use strict";var H=Zv(),g=Array.isArray;function x(M,e){var t,r;for(t=0;t<M.length;t++){if(r=M[t],r!==null&&typeof r=="object")return!1;r!==void 0&&(e[t]=r)}return!0}X.extendFlat=function(){return A(arguments,!1,!1,!1)},X.extendDeep=function(){return A(arguments,!0,!1,!1)},X.extendDeepAll=function(){return A(arguments,!0,!0,!1)},X.extendDeepNoArrays=function(){return A(arguments,!0,!1,!0)};function A(M,e,t,r){var o=M[0],a=M.length,i,n,s,c,h,v,p;if(a===2&&g(o)&&g(M[1])&&o.length===0){if(p=x(M[1],o),p)return o;o.splice(0,o.length)}for(var T=1;T<a;T++){i=M[T];for(n in i)s=o[n],c=i[n],r&&g(c)?o[n]=c:e&&c&&(H(c)||(h=g(c)))?(h?(h=!1,v=s&&g(s)?s:[]):v=s&&H(s)?s:{},o[n]=A([v,c],e,t,r)):(typeof c<"u"||t)&&(o[n]=c)}return o}}}),Au=Ye({"src/plots/font_attributes.js"(X,H){"use strict";H.exports=function(g){var x=g.variantValues,A=g.editType,M=g.colorEditType;M===void 0&&(M=A);var e={editType:A,valType:"integer",min:1,max:1e3,extras:["normal","bold"],dflt:"normal"};g.noNumericWeightValues&&(e.valType="enumerated",e.values=e.extras,e.extras=void 0,e.min=void 0,e.max=void 0);var t={family:{valType:"string",noBlank:!0,strict:!0,editType:A},size:{valType:"number",min:1,editType:A},color:{valType:"color",editType:M},weight:e,style:{editType:A,valType:"enumerated",values:["normal","italic"],dflt:"normal"},variant:g.noFontVariant?void 0:{editType:A,valType:"enumerated",values:x||["normal","small-caps","all-small-caps","all-petite-caps","petite-caps","unicase"],dflt:"normal"},textcase:g.noFontTextcase?void 0:{editType:A,valType:"enumerated",values:["normal","word caps","upper","lower"],dflt:"normal"},lineposition:g.noFontLineposition?void 0:{editType:A,valType:"flaglist",flags:["under","over","through"],extras:["none"],dflt:"none"},shadow:g.noFontShadow?void 0:{editType:A,valType:"string",dflt:g.autoShadowDflt?"auto":"none"},editType:A};return g.autoSize&&(t.size.dflt="auto"),g.autoColor&&(t.color.dflt="auto"),g.arrayOk&&(t.family.arrayOk=!0,t.weight.arrayOk=!0,t.style.arrayOk=!0,g.noFontVariant||(t.variant.arrayOk=!0),g.noFontTextcase||(t.textcase.arrayOk=!0),g.noFontLineposition||(t.lineposition.arrayOk=!0),g.noFontShadow||(t.shadow.arrayOk=!0),t.size.arrayOk=!0,t.color.arrayOk=!0),t}}}),x_=Ye({"src/components/fx/constants.js"(X,H){"use strict";H.exports={YANGLE:60,HOVERARROWSIZE:6,HOVERTEXTPAD:3,HOVERFONTSIZE:13,HOVERFONT:"Arial, sans-serif",HOVERMINTIME:50,HOVERID:"-hover"}}}),Zm=Ye({"src/components/fx/layout_attributes.js"(X,H){"use strict";var g=x_(),x=Au(),A=x({editType:"none"});A.family.dflt=g.HOVERFONT,A.size.dflt=g.HOVERFONTSIZE,H.exports={clickmode:{valType:"flaglist",flags:["event","select"],dflt:"event",editType:"plot",extras:["none"]},dragmode:{valType:"enumerated",values:["zoom","pan","select","lasso","drawclosedpath","drawopenpath","drawline","drawrect","drawcircle","orbit","turntable",!1],dflt:"zoom",editType:"modebar"},hovermode:{valType:"enumerated",values:["x","y","closest",!1,"x unified","y unified"],dflt:"closest",editType:"modebar"},hoversubplots:{valType:"enumerated",values:["single","overlaying","axis"],dflt:"overlaying",editType:"none"},hoverdistance:{valType:"integer",min:-1,dflt:20,editType:"none"},spikedistance:{valType:"integer",min:-1,dflt:-1,editType:"none"},hoverlabel:{bgcolor:{valType:"color",editType:"none"},bordercolor:{valType:"color",editType:"none"},font:A,grouptitlefont:x({editType:"none"}),align:{valType:"enumerated",values:["left","right","auto"],dflt:"auto",editType:"none"},namelength:{valType:"integer",min:-1,dflt:15,editType:"none"},editType:"none"},selectdirection:{valType:"enumerated",values:["h","v","d","any"],dflt:"any",editType:"none"}}}}),Yy=Ye({"src/components/fx/attributes.js"(X,H){"use strict";var g=Au(),x=Zm().hoverlabel,A=Oo().extendFlat;H.exports={hoverlabel:{bgcolor:A({},x.bgcolor,{arrayOk:!0}),bordercolor:A({},x.bordercolor,{arrayOk:!0}),font:g({arrayOk:!0,editType:"none"}),align:A({},x.align,{arrayOk:!0}),namelength:A({},x.namelength,{arrayOk:!0}),editType:"none"}}}}),Pl=Ye({"src/plots/attributes.js"(X,H){"use strict";var g=Au(),x=Yy();H.exports={type:{valType:"enumerated",values:[],dflt:"scatter",editType:"calc+clearAxisTypes",_noTemplating:!0},visible:{valType:"enumerated",values:[!0,!1,"legendonly"],dflt:!0,editType:"calc"},showlegend:{valType:"boolean",dflt:!0,editType:"style"},legend:{valType:"subplotid",dflt:"legend",editType:"style"},legendgroup:{valType:"string",dflt:"",editType:"style"},legendgrouptitle:{text:{valType:"string",dflt:"",editType:"style"},font:g({editType:"style"}),editType:"style"},legendrank:{valType:"number",dflt:1e3,editType:"style"},legendwidth:{valType:"number",min:0,editType:"style"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"style"},name:{valType:"string",editType:"style"},uid:{valType:"string",editType:"plot",anim:!0},ids:{valType:"data_array",editType:"calc",anim:!0},customdata:{valType:"data_array",editType:"calc"},meta:{valType:"any",arrayOk:!0,editType:"plot"},selectedpoints:{valType:"any",editType:"calc"},hoverinfo:{valType:"flaglist",flags:["x","y","z","text","name"],extras:["all","none","skip"],arrayOk:!0,dflt:"all",editType:"none"},hoverlabel:x.hoverlabel,stream:{token:{valType:"string",noBlank:!0,strict:!0,editType:"calc"},maxpoints:{valType:"number",min:0,max:1e4,dflt:500,editType:"calc"},editType:"calc"},uirevision:{valType:"any",editType:"none"}}}}),Hg=Ye({"src/components/colorscale/scales.js"(X,H){"use strict";var g=bh(),x={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)"]]},A=x.RdBu;function M(r,o){if(o||(o=A),!r)return o;function a(){try{r=x[r]||JSON.parse(r)}catch{r=o}}return typeof r=="string"&&(a(),typeof r=="string"&&a()),e(r)?r:o}function e(r){var o=0;if(!Array.isArray(r)||r.length<2||!r[0]||!r[r.length-1]||+r[0][0]!=0||+r[r.length-1][0]!=1)return!1;for(var a=0;a<r.length;a++){var i=r[a];if(i.length!==2||+i[0]<o||!g(i[1]).isValid())return!1;o=+i[0]}return!0}function t(r){return x[r]!==void 0?!0:e(r)}H.exports={scales:x,defaultScale:A,get:M,isValid:t}}}),Gf=Ye({"src/components/color/attributes.js"(X){"use strict";X.defaults=["#1f77b4","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf"],X.defaultLine="#444",X.lightLine="#eee",X.background="#fff",X.borderLine="#BEC8D9",X.lightFraction=100*10/11}}),Fn=Ye({"src/components/color/index.js"(X,H){"use strict";var g=bh(),x=jo(),A=xp().isTypedArray,M=H.exports={},e=Gf();M.defaults=e.defaults;var t=M.defaultLine=e.defaultLine;M.lightLine=e.lightLine;var r=M.background=e.background;M.tinyRGB=function(a){var i=a.toRgb();return"rgb("+Math.round(i.r)+", "+Math.round(i.g)+", "+Math.round(i.b)+")"},M.rgb=function(a){return M.tinyRGB(g(a))},M.opacity=function(a){return a?g(a).getAlpha():0},M.addOpacity=function(a,i){var n=g(a).toRgb();return"rgba("+Math.round(n.r)+", "+Math.round(n.g)+", "+Math.round(n.b)+", "+i+")"},M.combine=function(a,i){var n=g(a).toRgb();if(n.a===1)return g(a).toRgbString();var s=g(i||r).toRgb(),c=s.a===1?s:{r:255*(1-s.a)+s.r*s.a,g:255*(1-s.a)+s.g*s.a,b:255*(1-s.a)+s.b*s.a},h={r:c.r*(1-n.a)+n.r*n.a,g:c.g*(1-n.a)+n.g*n.a,b:c.b*(1-n.a)+n.b*n.a};return g(h).toRgbString()},M.interpolate=function(a,i,n){var s=g(a).toRgb(),c=g(i).toRgb(),h={r:n*s.r+(1-n)*c.r,g:n*s.g+(1-n)*c.g,b:n*s.b+(1-n)*c.b};return g(h).toRgbString()},M.contrast=function(a,i,n){var s=g(a);s.getAlpha()!==1&&(s=g(M.combine(a,r)));var c=s.isDark()?i?s.lighten(i):r:n?s.darken(n):t;return c.toString()},M.stroke=function(a,i){var n=g(i);a.style({stroke:M.tinyRGB(n),"stroke-opacity":n.getAlpha()})},M.fill=function(a,i){var n=g(i);a.style({fill:M.tinyRGB(n),"fill-opacity":n.getAlpha()})},M.clean=function(a){if(!(!a||typeof a!="object")){var i=Object.keys(a),n,s,c,h;for(n=0;n<i.length;n++)if(c=i[n],h=a[c],c.substr(c.length-5)==="color")if(Array.isArray(h))for(s=0;s<h.length;s++)h[s]=o(h[s]);else a[c]=o(h);else if(c.substr(c.length-10)==="colorscale"&&Array.isArray(h))for(s=0;s<h.length;s++)Array.isArray(h[s])&&(h[s][1]=o(h[s][1]));else if(Array.isArray(h)){var v=h[0];if(!Array.isArray(v)&&v&&typeof v=="object")for(s=0;s<h.length;s++)M.clean(h[s])}else h&&typeof h=="object"&&!A(h)&&M.clean(h)}};function o(a){if(x(a)||typeof a!="string")return a;var i=a.trim();if(i.substr(0,3)!=="rgb")return a;var n=i.match(/^rgba?\s*\(([^()]*)\)$/);if(!n)return a;var s=n[1].trim().split(/\s*[\s,]\s*/),c=i.charAt(3)==="a"&&s.length===4;if(!c&&s.length!==3)return a;for(var h=0;h<s.length;h++){if(!s[h].length||(s[h]=Number(s[h]),!(s[h]>=0)))return a;if(h===3)s[h]>1&&(s[h]=1);else if(s[h]>=1)return a}var v=Math.round(s[0]*255)+", "+Math.round(s[1]*255)+", "+Math.round(s[2]*255);return c?"rgba("+v+", "+s[3]+")":"rgb("+v+")"}}}),Xm=Ye({"src/constants/interactions.js"(X,H){"use strict";H.exports={SHOW_PLACEHOLDER:100,HIDE_PLACEHOLDER:1e3,DESELECTDIM:.2}}}),Ky=Ye({"src/lib/regex.js"(X){"use strict";X.counter=function(H,g,x,A){var M=(g||"")+(x?"":"$"),e=A===!1?"":"^";return H==="xy"?new RegExp(e+"x([2-9]|[1-9][0-9]+)?y([2-9]|[1-9][0-9]+)?"+M):new RegExp(e+H+"([2-9]|[1-9][0-9]+)?"+M)}}}),sF=Ye({"src/lib/coerce.js"(X){"use strict";var H=jo(),g=bh(),x=Oo().extendFlat,A=Pl(),M=Hg(),e=Fn(),t=Xm().DESELECTDIM,r=__(),o=Ky().counter,a=Xy().modHalf,i=xp().isArrayOrTypedArray,n=xp().isTypedArraySpec,s=xp().decodeTypedArraySpec;X.valObjectMeta={data_array:{coerceFunction:function(h,v,p){v.set(i(h)?h:n(h)?s(h):p)}},enumerated:{coerceFunction:function(h,v,p,T){T.coerceNumber&&(h=+h),T.values.indexOf(h)===-1?v.set(p):v.set(h)},validateFunction:function(h,v){v.coerceNumber&&(h=+h);for(var p=v.values,T=0;T<p.length;T++){var l=String(p[T]);if(l.charAt(0)==="/"&&l.charAt(l.length-1)==="/"){var _=new RegExp(l.substr(1,l.length-2));if(_.test(h))return!0}else if(h===p[T])return!0}return!1}},boolean:{coerceFunction:function(h,v,p){h===!0||h===!1?v.set(h):v.set(p)}},number:{coerceFunction:function(h,v,p,T){n(h)&&(h=s(h)),!H(h)||T.min!==void 0&&h<T.min||T.max!==void 0&&h>T.max?v.set(p):v.set(+h)}},integer:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}n(h)&&(h=s(h)),h%1||!H(h)||T.min!==void 0&&h<T.min||T.max!==void 0&&h>T.max?v.set(p):v.set(+h)}},string:{coerceFunction:function(h,v,p,T){if(typeof h!="string"){var l=typeof h=="number";T.strict===!0||!l?v.set(p):v.set(String(h))}else T.noBlank&&!h?v.set(p):v.set(h)}},color:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),g(h).isValid()?v.set(h):v.set(p)}},colorlist:{coerceFunction:function(h,v,p){function T(l){return g(l).isValid()}!Array.isArray(h)||!h.length?v.set(p):h.every(T)?v.set(h):v.set(p)}},colorscale:{coerceFunction:function(h,v,p){v.set(M.get(h,p))}},angle:{coerceFunction:function(h,v,p){n(h)&&(h=s(h)),h==="auto"?v.set("auto"):H(h)?v.set(a(+h,360)):v.set(p)}},subplotid:{coerceFunction:function(h,v,p,T){var l=T.regex||o(p);if(typeof h=="string"&&l.test(h)){v.set(h);return}v.set(p)},validateFunction:function(h,v){var p=v.dflt;return h===p?!0:typeof h!="string"?!1:!!o(p).test(h)}},flaglist:{coerceFunction:function(h,v,p,T){if((T.extras||[]).indexOf(h)!==-1){v.set(h);return}if(typeof h!="string"){v.set(p);return}for(var l=h.split("+"),_=0;_<l.length;){var w=l[_];T.flags.indexOf(w)===-1||l.indexOf(w)<_?l.splice(_,1):_++}l.length?v.set(l.join("+")):v.set(p)}},any:{coerceFunction:function(h,v,p){h===void 0?v.set(p):v.set(n(h)?s(h):h)}},info_array:{coerceFunction:function(h,v,p,T){function l(F,B,O){var I,N={set:function(U){I=U}};return O===void 0&&(O=B.dflt),X.valObjectMeta[B.valType].coerceFunction(F,N,O,B),I}if(n(h)&&(h=s(h)),!i(h)){v.set(p);return}var _=T.dimensions===2||T.dimensions==="1-2"&&Array.isArray(h)&&i(h[0]),w=T.items,S=[],E=Array.isArray(w),m=E&&_&&i(w[0]),b=_&&E&&!m,d=E&&!b?w.length:h.length,u,y,f,P,L,z;if(p=Array.isArray(p)?p:[],_)for(u=0;u<d;u++)for(S[u]=[],f=i(h[u])?h[u]:[],b?L=w.length:E?L=w[u].length:L=f.length,y=0;y<L;y++)b?P=w[y]:E?P=w[u][y]:P=w,z=l(f[y],P,(p[u]||[])[y]),z!==void 0&&(S[u][y]=z);else for(u=0;u<d;u++)z=l(h[u],E?w[u]:w,p[u]),z!==void 0&&(S[u]=z);v.set(S)},validateFunction:function(h,v){if(!i(h))return!1;var p=v.items,T=Array.isArray(p),l=v.dimensions===2;if(!v.freeLength&&h.length!==p.length)return!1;for(var _=0;_<h.length;_++)if(l){if(!i(h[_])||!v.freeLength&&h[_].length!==p[_].length)return!1;for(var w=0;w<h[_].length;w++)if(!c(h[_][w],T?p[_][w]:p))return!1}else if(!c(h[_],T?p[_]:p))return!1;return!0}}},X.coerce=function(h,v,p,T,l){var _=r(p,T).get(),w=r(h,T),S=r(v,T),E=w.get(),m=v._template;if(E===void 0&&m&&(E=r(m,T).get(),m=0),l===void 0&&(l=_.dflt),_.arrayOk){if(i(E))return S.set(E),E;if(n(E))return E=s(E),S.set(E),E}var b=X.valObjectMeta[_.valType].coerceFunction;b(E,S,l,_);var d=S.get();return m&&d===l&&!c(E,_)&&(E=r(m,T).get(),b(E,S,l,_),d=S.get()),d},X.coerce2=function(h,v,p,T,l){var _=r(h,T),w=X.coerce(h,v,p,T,l),S=_.get();return S!=null?w:!1},X.coerceFont=function(h,v,p,T){T||(T={}),p=x({},p),p=x(p,T.overrideDflt||{});var l={family:h(v+".family",p.family),size:h(v+".size",p.size),color:h(v+".color",p.color),weight:h(v+".weight",p.weight),style:h(v+".style",p.style)};if(T.noFontVariant||(l.variant=h(v+".variant",p.variant)),T.noFontLineposition||(l.lineposition=h(v+".lineposition",p.lineposition)),T.noFontTextcase||(l.textcase=h(v+".textcase",p.textcase)),!T.noFontShadow){var _=p.shadow;_==="none"&&T.autoShadowDflt&&(_="auto"),l.shadow=h(v+".shadow",_)}return l},X.coercePattern=function(h,v,p,T){var l=h(v+".shape");if(l){h(v+".solidity"),h(v+".size");var _=h(v+".fillmode"),w=_==="overlay";if(!T){var S=h(v+".bgcolor",w?p:void 0);h(v+".fgcolor",w?e.contrast(S):p)}h(v+".fgopacity",w?.5:1)}},X.coerceHoverinfo=function(h,v,p){var T=v._module.attributes,l=T.hoverinfo?T:A,_=l.hoverinfo,w;if(p._dataLength===1){var S=_.dflt==="all"?_.flags.slice():_.dflt.split("+");S.splice(S.indexOf("name"),1),w=S.join("+")}return X.coerce(h,v,l,"hoverinfo",w)},X.coerceSelectionMarkerOpacity=function(h,v){if(h.marker){var p=h.marker.opacity;if(p!==void 0){var T,l;!i(p)&&!h.selected&&!h.unselected&&(T=p,l=t*p),v("selected.marker.opacity",T),v("unselected.marker.opacity",l)}}};function c(h,v){var p=X.valObjectMeta[v.valType];if(v.arrayOk&&i(h))return!0;if(p.validateFunction)return p.validateFunction(h,v);var T={},l=T,_={set:function(w){l=w}};return p.coerceFunction(h,_,T,v),l!==T}X.validate=c}}),Gg=Ye({"src/plot_api/plot_config.js"(X,H){"use strict";var g={staticPlot:{valType:"boolean",dflt:!1},typesetMath:{valType:"boolean",dflt:!0},plotlyServerURL:{valType:"string",dflt:""},editable:{valType:"boolean",dflt:!1},edits:{annotationPosition:{valType:"boolean",dflt:!1},annotationTail:{valType:"boolean",dflt:!1},annotationText:{valType:"boolean",dflt:!1},axisTitleText:{valType:"boolean",dflt:!1},colorbarPosition:{valType:"boolean",dflt:!1},colorbarTitleText:{valType:"boolean",dflt:!1},legendPosition:{valType:"boolean",dflt:!1},legendText:{valType:"boolean",dflt:!1},shapePosition:{valType:"boolean",dflt:!1},titleText:{valType:"boolean",dflt:!1}},editSelection:{valType:"boolean",dflt:!0},autosizable:{valType:"boolean",dflt:!1},responsive:{valType:"boolean",dflt:!1},fillFrame:{valType:"boolean",dflt:!1},frameMargins:{valType:"number",dflt:0,min:0,max:.5},scrollZoom:{valType:"flaglist",flags:["cartesian","gl3d","geo","mapbox","map"],extras:[!0,!1],dflt:"gl3d+geo+map"},doubleClick:{valType:"enumerated",values:[!1,"reset","autosize","reset+autosize"],dflt:"reset+autosize"},doubleClickDelay:{valType:"number",dflt:300,min:0},showAxisDragHandles:{valType:"boolean",dflt:!0},showAxisRangeEntryBoxes:{valType:"boolean",dflt:!0},showTips:{valType:"boolean",dflt:!0},showLink:{valType:"boolean",dflt:!1},linkText:{valType:"string",dflt:"Edit chart",noBlank:!0},sendData:{valType:"boolean",dflt:!0},showSources:{valType:"any",dflt:!1},displayModeBar:{valType:"enumerated",values:["hover",!0,!1],dflt:"hover"},showSendToCloud:{valType:"boolean",dflt:!1},showEditInChartStudio:{valType:"boolean",dflt:!1},modeBarButtonsToRemove:{valType:"any",dflt:[]},modeBarButtonsToAdd:{valType:"any",dflt:[]},modeBarButtons:{valType:"any",dflt:!1},toImageButtonOptions:{valType:"any",dflt:{}},displaylogo:{valType:"boolean",dflt:!0},watermark:{valType:"boolean",dflt:!1},plotGlPixelRatio:{valType:"number",dflt:2,min:1,max:4},setBackground:{valType:"any",dflt:"transparent"},topojsonURL:{valType:"string",noBlank:!0,dflt:"https://cdn.plot.ly/"},mapboxAccessToken:{valType:"string",dflt:null},logging:{valType:"integer",min:0,max:2,dflt:1},notifyOnLogging:{valType:"integer",min:0,max:2,dflt:0},queueLength:{valType:"integer",min:0,dflt:0},locale:{valType:"string",dflt:"en-US"},locales:{valType:"any",dflt:{}}},x={};function A(M,e){for(var t in M){var r=M[t];r.valType?e[t]=r.dflt:(e[t]||(e[t]={}),A(r,e[t]))}}A(g,x),H.exports={configAttributes:g,dfltConfig:x}}}),YA=Ye({"src/lib/notifier.js"(X,H){"use strict";var g=_n(),x=jo(),A=[];H.exports=function(M,e){if(A.indexOf(M)!==-1)return;A.push(M);var t=1e3;x(e)?t=e:e==="long"&&(t=3e3);var r=g.select("body").selectAll(".plotly-notifier").data([0]);r.enter().append("div").classed("plotly-notifier",!0);var o=r.selectAll(".notifier-note").data(A);function a(i){i.duration(700).style("opacity",0).each("end",function(n){var s=A.indexOf(n);s!==-1&&A.splice(s,1),g.select(this).remove()})}o.enter().append("div").classed("notifier-note",!0).style("opacity",0).each(function(i){var n=g.select(this);n.append("button").classed("notifier-close",!0).html("&times;").on("click",function(){n.transition().call(a)});for(var s=n.append("p"),c=i.split(/<br\s*\/?>/g),h=0;h<c.length;h++)h&&s.append("br"),s.append("span").text(c[h]);e==="stick"?n.transition().duration(350).style("opacity",1):n.transition().duration(700).style("opacity",1).transition().delay(t).call(a)})}}}),Ym=Ye({"src/lib/loggers.js"(X,H){"use strict";var g=Gg().dfltConfig,x=YA(),A=H.exports={};A.log=function(){var M;if(g.logging>1){var e=["LOG:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.trace.apply(console,e)}if(g.notifyOnLogging>1){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"long")}},A.warn=function(){var M;if(g.logging>0){var e=["WARN:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.trace.apply(console,e)}if(g.notifyOnLogging>0){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"stick")}},A.error=function(){var M;if(g.logging>0){var e=["ERROR:"];for(M=0;M<arguments.length;M++)e.push(arguments[M]);console.error.apply(console,e)}if(g.notifyOnLogging>0){var t=[];for(M=0;M<arguments.length;M++)t.push(arguments[M]);x(t.join("<br>"),"stick")}}}}),f2=Ye({"src/lib/noop.js"(X,H){"use strict";H.exports=function(){}}}),KA=Ye({"src/lib/push_unique.js"(X,H){"use strict";H.exports=function(x,A){if(A instanceof RegExp){for(var M=A.toString(),e=0;e<x.length;e++)if(x[e]instanceof RegExp&&x[e].toString()===M)return x;x.push(A)}else(A||A===0)&&x.indexOf(A)===-1&&x.push(A);return x}}}),lF=Ye({"node_modules/gl-mat4/create.js"(X,H){H.exports=g;function g(){var x=new Float32Array(16);return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),uF=Ye({"node_modules/gl-mat4/clone.js"(X,H){H.exports=g;function g(x){var A=new Float32Array(16);return A[0]=x[0],A[1]=x[1],A[2]=x[2],A[3]=x[3],A[4]=x[4],A[5]=x[5],A[6]=x[6],A[7]=x[7],A[8]=x[8],A[9]=x[9],A[10]=x[10],A[11]=x[11],A[12]=x[12],A[13]=x[13],A[14]=x[14],A[15]=x[15],A}}}),cF=Ye({"node_modules/gl-mat4/copy.js"(X,H){H.exports=g;function g(x,A){return x[0]=A[0],x[1]=A[1],x[2]=A[2],x[3]=A[3],x[4]=A[4],x[5]=A[5],x[6]=A[6],x[7]=A[7],x[8]=A[8],x[9]=A[9],x[10]=A[10],x[11]=A[11],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15],x}}}),JA=Ye({"node_modules/gl-mat4/identity.js"(X,H){H.exports=g;function g(x){return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),fF=Ye({"node_modules/gl-mat4/transpose.js"(X,H){H.exports=g;function g(x,A){if(x===A){var M=A[1],e=A[2],t=A[3],r=A[6],o=A[7],a=A[11];x[1]=A[4],x[2]=A[8],x[3]=A[12],x[4]=M,x[6]=A[9],x[7]=A[13],x[8]=e,x[9]=r,x[11]=A[14],x[12]=t,x[13]=o,x[14]=a}else x[0]=A[0],x[1]=A[4],x[2]=A[8],x[3]=A[12],x[4]=A[1],x[5]=A[5],x[6]=A[9],x[7]=A[13],x[8]=A[2],x[9]=A[6],x[10]=A[10],x[11]=A[14],x[12]=A[3],x[13]=A[7],x[14]=A[11],x[15]=A[15];return x}}}),hF=Ye({"node_modules/gl-mat4/invert.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=A[4],a=A[5],i=A[6],n=A[7],s=A[8],c=A[9],h=A[10],v=A[11],p=A[12],T=A[13],l=A[14],_=A[15],w=M*a-e*o,S=M*i-t*o,E=M*n-r*o,m=e*i-t*a,b=e*n-r*a,d=t*n-r*i,u=s*T-c*p,y=s*l-h*p,f=s*_-v*p,P=c*l-h*T,L=c*_-v*T,z=h*_-v*l,F=w*z-S*L+E*P+m*f-b*y+d*u;return F?(F=1/F,x[0]=(a*z-i*L+n*P)*F,x[1]=(t*L-e*z-r*P)*F,x[2]=(T*d-l*b+_*m)*F,x[3]=(h*b-c*d-v*m)*F,x[4]=(i*f-o*z-n*y)*F,x[5]=(M*z-t*f+r*y)*F,x[6]=(l*E-p*d-_*S)*F,x[7]=(s*d-h*E+v*S)*F,x[8]=(o*L-a*f+n*u)*F,x[9]=(e*f-M*L-r*u)*F,x[10]=(p*b-T*E+_*w)*F,x[11]=(c*E-s*b-v*w)*F,x[12]=(a*y-o*P-i*u)*F,x[13]=(M*P-e*y+t*u)*F,x[14]=(T*S-p*m-l*w)*F,x[15]=(s*m-c*S+h*w)*F,x):null}}}),pF=Ye({"node_modules/gl-mat4/adjoint.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=A[4],a=A[5],i=A[6],n=A[7],s=A[8],c=A[9],h=A[10],v=A[11],p=A[12],T=A[13],l=A[14],_=A[15];return x[0]=a*(h*_-v*l)-c*(i*_-n*l)+T*(i*v-n*h),x[1]=-(e*(h*_-v*l)-c*(t*_-r*l)+T*(t*v-r*h)),x[2]=e*(i*_-n*l)-a*(t*_-r*l)+T*(t*n-r*i),x[3]=-(e*(i*v-n*h)-a*(t*v-r*h)+c*(t*n-r*i)),x[4]=-(o*(h*_-v*l)-s*(i*_-n*l)+p*(i*v-n*h)),x[5]=M*(h*_-v*l)-s*(t*_-r*l)+p*(t*v-r*h),x[6]=-(M*(i*_-n*l)-o*(t*_-r*l)+p*(t*n-r*i)),x[7]=M*(i*v-n*h)-o*(t*v-r*h)+s*(t*n-r*i),x[8]=o*(c*_-v*T)-s*(a*_-n*T)+p*(a*v-n*c),x[9]=-(M*(c*_-v*T)-s*(e*_-r*T)+p*(e*v-r*c)),x[10]=M*(a*_-n*T)-o*(e*_-r*T)+p*(e*n-r*a),x[11]=-(M*(a*v-n*c)-o*(e*v-r*c)+s*(e*n-r*a)),x[12]=-(o*(c*l-h*T)-s*(a*l-i*T)+p*(a*h-i*c)),x[13]=M*(c*l-h*T)-s*(e*l-t*T)+p*(e*h-t*c),x[14]=-(M*(a*l-i*T)-o*(e*l-t*T)+p*(e*i-t*a)),x[15]=M*(a*h-i*c)-o*(e*h-t*c)+s*(e*i-t*a),x}}}),dF=Ye({"node_modules/gl-mat4/determinant.js"(X,H){H.exports=g;function g(x){var A=x[0],M=x[1],e=x[2],t=x[3],r=x[4],o=x[5],a=x[6],i=x[7],n=x[8],s=x[9],c=x[10],h=x[11],v=x[12],p=x[13],T=x[14],l=x[15],_=A*o-M*r,w=A*a-e*r,S=A*i-t*r,E=M*a-e*o,m=M*i-t*o,b=e*i-t*a,d=n*p-s*v,u=n*T-c*v,y=n*l-h*v,f=s*T-c*p,P=s*l-h*p,L=c*l-h*T;return _*L-w*P+S*f+E*y-m*u+b*d}}}),vF=Ye({"node_modules/gl-mat4/multiply.js"(X,H){H.exports=g;function g(x,A,M){var e=A[0],t=A[1],r=A[2],o=A[3],a=A[4],i=A[5],n=A[6],s=A[7],c=A[8],h=A[9],v=A[10],p=A[11],T=A[12],l=A[13],_=A[14],w=A[15],S=M[0],E=M[1],m=M[2],b=M[3];return x[0]=S*e+E*a+m*c+b*T,x[1]=S*t+E*i+m*h+b*l,x[2]=S*r+E*n+m*v+b*_,x[3]=S*o+E*s+m*p+b*w,S=M[4],E=M[5],m=M[6],b=M[7],x[4]=S*e+E*a+m*c+b*T,x[5]=S*t+E*i+m*h+b*l,x[6]=S*r+E*n+m*v+b*_,x[7]=S*o+E*s+m*p+b*w,S=M[8],E=M[9],m=M[10],b=M[11],x[8]=S*e+E*a+m*c+b*T,x[9]=S*t+E*i+m*h+b*l,x[10]=S*r+E*n+m*v+b*_,x[11]=S*o+E*s+m*p+b*w,S=M[12],E=M[13],m=M[14],b=M[15],x[12]=S*e+E*a+m*c+b*T,x[13]=S*t+E*i+m*h+b*l,x[14]=S*r+E*n+m*v+b*_,x[15]=S*o+E*s+m*p+b*w,x}}}),mF=Ye({"node_modules/gl-mat4/translate.js"(X,H){H.exports=g;function g(x,A,M){var e=M[0],t=M[1],r=M[2],o,a,i,n,s,c,h,v,p,T,l,_;return A===x?(x[12]=A[0]*e+A[4]*t+A[8]*r+A[12],x[13]=A[1]*e+A[5]*t+A[9]*r+A[13],x[14]=A[2]*e+A[6]*t+A[10]*r+A[14],x[15]=A[3]*e+A[7]*t+A[11]*r+A[15]):(o=A[0],a=A[1],i=A[2],n=A[3],s=A[4],c=A[5],h=A[6],v=A[7],p=A[8],T=A[9],l=A[10],_=A[11],x[0]=o,x[1]=a,x[2]=i,x[3]=n,x[4]=s,x[5]=c,x[6]=h,x[7]=v,x[8]=p,x[9]=T,x[10]=l,x[11]=_,x[12]=o*e+s*t+p*r+A[12],x[13]=a*e+c*t+T*r+A[13],x[14]=i*e+h*t+l*r+A[14],x[15]=n*e+v*t+_*r+A[15]),x}}}),gF=Ye({"node_modules/gl-mat4/scale.js"(X,H){H.exports=g;function g(x,A,M){var e=M[0],t=M[1],r=M[2];return x[0]=A[0]*e,x[1]=A[1]*e,x[2]=A[2]*e,x[3]=A[3]*e,x[4]=A[4]*t,x[5]=A[5]*t,x[6]=A[6]*t,x[7]=A[7]*t,x[8]=A[8]*r,x[9]=A[9]*r,x[10]=A[10]*r,x[11]=A[11]*r,x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15],x}}}),yF=Ye({"node_modules/gl-mat4/rotate.js"(X,H){H.exports=g;function g(x,A,M,e){var t=e[0],r=e[1],o=e[2],a=Math.sqrt(t*t+r*r+o*o),i,n,s,c,h,v,p,T,l,_,w,S,E,m,b,d,u,y,f,P,L,z,F,B;return Math.abs(a)<1e-6?null:(a=1/a,t*=a,r*=a,o*=a,i=Math.sin(M),n=Math.cos(M),s=1-n,c=A[0],h=A[1],v=A[2],p=A[3],T=A[4],l=A[5],_=A[6],w=A[7],S=A[8],E=A[9],m=A[10],b=A[11],d=t*t*s+n,u=r*t*s+o*i,y=o*t*s-r*i,f=t*r*s-o*i,P=r*r*s+n,L=o*r*s+t*i,z=t*o*s+r*i,F=r*o*s-t*i,B=o*o*s+n,x[0]=c*d+T*u+S*y,x[1]=h*d+l*u+E*y,x[2]=v*d+_*u+m*y,x[3]=p*d+w*u+b*y,x[4]=c*f+T*P+S*L,x[5]=h*f+l*P+E*L,x[6]=v*f+_*P+m*L,x[7]=p*f+w*P+b*L,x[8]=c*z+T*F+S*B,x[9]=h*z+l*F+E*B,x[10]=v*z+_*F+m*B,x[11]=p*z+w*F+b*B,A!==x&&(x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x)}}}),_F=Ye({"node_modules/gl-mat4/rotateX.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[4],o=A[5],a=A[6],i=A[7],n=A[8],s=A[9],c=A[10],h=A[11];return A!==x&&(x[0]=A[0],x[1]=A[1],x[2]=A[2],x[3]=A[3],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[4]=r*t+n*e,x[5]=o*t+s*e,x[6]=a*t+c*e,x[7]=i*t+h*e,x[8]=n*t-r*e,x[9]=s*t-o*e,x[10]=c*t-a*e,x[11]=h*t-i*e,x}}}),xF=Ye({"node_modules/gl-mat4/rotateY.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[0],o=A[1],a=A[2],i=A[3],n=A[8],s=A[9],c=A[10],h=A[11];return A!==x&&(x[4]=A[4],x[5]=A[5],x[6]=A[6],x[7]=A[7],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[0]=r*t-n*e,x[1]=o*t-s*e,x[2]=a*t-c*e,x[3]=i*t-h*e,x[8]=r*e+n*t,x[9]=o*e+s*t,x[10]=a*e+c*t,x[11]=i*e+h*t,x}}}),bF=Ye({"node_modules/gl-mat4/rotateZ.js"(X,H){H.exports=g;function g(x,A,M){var e=Math.sin(M),t=Math.cos(M),r=A[0],o=A[1],a=A[2],i=A[3],n=A[4],s=A[5],c=A[6],h=A[7];return A!==x&&(x[8]=A[8],x[9]=A[9],x[10]=A[10],x[11]=A[11],x[12]=A[12],x[13]=A[13],x[14]=A[14],x[15]=A[15]),x[0]=r*t+n*e,x[1]=o*t+s*e,x[2]=a*t+c*e,x[3]=i*t+h*e,x[4]=n*t-r*e,x[5]=s*t-o*e,x[6]=c*t-a*e,x[7]=h*t-i*e,x}}}),wF=Ye({"node_modules/gl-mat4/fromRotation.js"(X,H){H.exports=g;function g(x,A,M){var e,t,r,o=M[0],a=M[1],i=M[2],n=Math.sqrt(o*o+a*a+i*i);return Math.abs(n)<1e-6?null:(n=1/n,o*=n,a*=n,i*=n,e=Math.sin(A),t=Math.cos(A),r=1-t,x[0]=o*o*r+t,x[1]=a*o*r+i*e,x[2]=i*o*r-a*e,x[3]=0,x[4]=o*a*r-i*e,x[5]=a*a*r+t,x[6]=i*a*r+o*e,x[7]=0,x[8]=o*i*r+a*e,x[9]=a*i*r-o*e,x[10]=i*i*r+t,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x)}}}),TF=Ye({"node_modules/gl-mat4/fromRotationTranslation.js"(X,H){H.exports=g;function g(x,A,M){var e=A[0],t=A[1],r=A[2],o=A[3],a=e+e,i=t+t,n=r+r,s=e*a,c=e*i,h=e*n,v=t*i,p=t*n,T=r*n,l=o*a,_=o*i,w=o*n;return x[0]=1-(v+T),x[1]=c+w,x[2]=h-_,x[3]=0,x[4]=c-w,x[5]=1-(s+T),x[6]=p+l,x[7]=0,x[8]=h+_,x[9]=p-l,x[10]=1-(s+v),x[11]=0,x[12]=M[0],x[13]=M[1],x[14]=M[2],x[15]=1,x}}}),AF=Ye({"node_modules/gl-mat4/fromScaling.js"(X,H){H.exports=g;function g(x,A){return x[0]=A[0],x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=A[1],x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=A[2],x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),SF=Ye({"node_modules/gl-mat4/fromTranslation.js"(X,H){H.exports=g;function g(x,A){return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=A[0],x[13]=A[1],x[14]=A[2],x[15]=1,x}}}),MF=Ye({"node_modules/gl-mat4/fromXRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=1,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=e,x[6]=M,x[7]=0,x[8]=0,x[9]=-M,x[10]=e,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),EF=Ye({"node_modules/gl-mat4/fromYRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=e,x[1]=0,x[2]=-M,x[3]=0,x[4]=0,x[5]=1,x[6]=0,x[7]=0,x[8]=M,x[9]=0,x[10]=e,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),kF=Ye({"node_modules/gl-mat4/fromZRotation.js"(X,H){H.exports=g;function g(x,A){var M=Math.sin(A),e=Math.cos(A);return x[0]=e,x[1]=M,x[2]=0,x[3]=0,x[4]=-M,x[5]=e,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=1,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),$A=Ye({"node_modules/gl-mat4/fromQuat.js"(X,H){H.exports=g;function g(x,A){var M=A[0],e=A[1],t=A[2],r=A[3],o=M+M,a=e+e,i=t+t,n=M*o,s=e*o,c=e*a,h=t*o,v=t*a,p=t*i,T=r*o,l=r*a,_=r*i;return x[0]=1-c-p,x[1]=s+_,x[2]=h-l,x[3]=0,x[4]=s-_,x[5]=1-n-p,x[6]=v+T,x[7]=0,x[8]=h+l,x[9]=v-T,x[10]=1-n-c,x[11]=0,x[12]=0,x[13]=0,x[14]=0,x[15]=1,x}}}),CF=Ye({"node_modules/gl-mat4/frustum.js"(X,H){H.exports=g;function g(x,A,M,e,t,r,o){var a=1/(M-A),i=1/(t-e),n=1/(r-o);return x[0]=r*2*a,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=r*2*i,x[6]=0,x[7]=0,x[8]=(M+A)*a,x[9]=(t+e)*i,x[10]=(o+r)*n,x[11]=-1,x[12]=0,x[13]=0,x[14]=o*r*2*n,x[15]=0,x}}}),LF=Ye({"node_modules/gl-mat4/perspective.js"(X,H){H.exports=g;function g(x,A,M,e,t){var r=1/Math.tan(A/2),o=1/(e-t);return x[0]=r/M,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=r,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=(t+e)*o,x[11]=-1,x[12]=0,x[13]=0,x[14]=2*t*e*o,x[15]=0,x}}}),PF=Ye({"node_modules/gl-mat4/perspectiveFromFieldOfView.js"(X,H){H.exports=g;function g(x,A,M,e){var t=Math.tan(A.upDegrees*Math.PI/180),r=Math.tan(A.downDegrees*Math.PI/180),o=Math.tan(A.leftDegrees*Math.PI/180),a=Math.tan(A.rightDegrees*Math.PI/180),i=2/(o+a),n=2/(t+r);return x[0]=i,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=n,x[6]=0,x[7]=0,x[8]=-((o-a)*i*.5),x[9]=(t-r)*n*.5,x[10]=e/(M-e),x[11]=-1,x[12]=0,x[13]=0,x[14]=e*M/(M-e),x[15]=0,x}}}),IF=Ye({"node_modules/gl-mat4/ortho.js"(X,H){H.exports=g;function g(x,A,M,e,t,r,o){var a=1/(A-M),i=1/(e-t),n=1/(r-o);return x[0]=-2*a,x[1]=0,x[2]=0,x[3]=0,x[4]=0,x[5]=-2*i,x[6]=0,x[7]=0,x[8]=0,x[9]=0,x[10]=2*n,x[11]=0,x[12]=(A+M)*a,x[13]=(t+e)*i,x[14]=(o+r)*n,x[15]=1,x}}}),RF=Ye({"node_modules/gl-mat4/lookAt.js"(X,H){var g=JA();H.exports=x;function x(A,M,e,t){var r,o,a,i,n,s,c,h,v,p,T=M[0],l=M[1],_=M[2],w=t[0],S=t[1],E=t[2],m=e[0],b=e[1],d=e[2];return Math.abs(T-m)<1e-6&&Math.abs(l-b)<1e-6&&Math.abs(_-d)<1e-6?g(A):(c=T-m,h=l-b,v=_-d,p=1/Math.sqrt(c*c+h*h+v*v),c*=p,h*=p,v*=p,r=S*v-E*h,o=E*c-w*v,a=w*h-S*c,p=Math.sqrt(r*r+o*o+a*a),p?(p=1/p,r*=p,o*=p,a*=p):(r=0,o=0,a=0),i=h*a-v*o,n=v*r-c*a,s=c*o-h*r,p=Math.sqrt(i*i+n*n+s*s),p?(p=1/p,i*=p,n*=p,s*=p):(i=0,n=0,s=0),A[0]=r,A[1]=i,A[2]=c,A[3]=0,A[4]=o,A[5]=n,A[6]=h,A[7]=0,A[8]=a,A[9]=s,A[10]=v,A[11]=0,A[12]=-(r*T+o*l+a*_),A[13]=-(i*T+n*l+s*_),A[14]=-(c*T+h*l+v*_),A[15]=1,A)}}}),DF=Ye({"node_modules/gl-mat4/str.js"(X,H){H.exports=g;function g(x){return"mat4("+x[0]+", "+x[1]+", "+x[2]+", "+x[3]+", "+x[4]+", "+x[5]+", "+x[6]+", "+x[7]+", "+x[8]+", "+x[9]+", "+x[10]+", "+x[11]+", "+x[12]+", "+x[13]+", "+x[14]+", "+x[15]+")"}}}),QA=Ye({"node_modules/gl-mat4/index.js"(X,H){H.exports={create:lF(),clone:uF(),copy:cF(),identity:JA(),transpose:fF(),invert:hF(),adjoint:pF(),determinant:dF(),multiply:vF(),translate:mF(),scale:gF(),rotate:yF(),rotateX:_F(),rotateY:xF(),rotateZ:bF(),fromRotation:wF(),fromRotationTranslation:TF(),fromScaling:AF(),fromTranslation:SF(),fromXRotation:MF(),fromYRotation:EF(),fromZRotation:kF(),fromQuat:$A(),frustum:CF(),perspective:LF(),perspectiveFromFieldOfView:PF(),ortho:IF(),lookAt:RF(),str:DF()}}}),h2=Ye({"src/lib/matrix.js"(X){"use strict";var H=QA();X.init2dArray=function(g,x){for(var A=new Array(g),M=0;M<g;M++)A[M]=new Array(x);return A},X.transposeRagged=function(g){var x=0,A=g.length,M,e;for(M=0;M<A;M++)x=Math.max(x,g[M].length);var t=new Array(x);for(M=0;M<x;M++)for(t[M]=new Array(A),e=0;e<A;e++)t[M][e]=g[e][M];return t},X.dot=function(g,x){if(!(g.length&&x.length)||g.length!==x.length)return null;var A=g.length,M,e;if(g[0].length)for(M=new Array(A),e=0;e<A;e++)M[e]=X.dot(g[e],x);else if(x[0].length){var t=X.transposeRagged(x);for(M=new Array(t.length),e=0;e<t.length;e++)M[e]=X.dot(g,t[e])}else for(M=0,e=0;e<A;e++)M+=g[e]*x[e];return M},X.translationMatrix=function(g,x){return[[1,0,g],[0,1,x],[0,0,1]]},X.rotationMatrix=function(g){var x=g*Math.PI/180;return[[Math.cos(x),-Math.sin(x),0],[Math.sin(x),Math.cos(x),0],[0,0,1]]},X.rotationXYMatrix=function(g,x,A){return X.dot(X.dot(X.translationMatrix(x,A),X.rotationMatrix(g)),X.translationMatrix(-x,-A))},X.apply3DTransform=function(g){return function(){var x=arguments,A=arguments.length===1?x[0]:[x[0],x[1],x[2]||0];return X.dot(g,[A[0],A[1],A[2],1]).slice(0,3)}},X.apply2DTransform=function(g){return function(){var x=arguments;x.length===3&&(x=x[0]);var A=arguments.length===1?x[0]:[x[0],x[1]];return X.dot(g,[A[0],A[1],1]).slice(0,2)}},X.apply2DTransform2=function(g){var x=X.apply2DTransform(g);return function(A){return x(A.slice(0,2)).concat(x(A.slice(2,4)))}},X.convertCssMatrix=function(g){if(g){var x=g.length;if(x===16)return g;if(x===6)return[g[0],g[1],0,0,g[2],g[3],0,0,0,0,1,0,g[4],g[5],0,1]}return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},X.inverseTransformMatrix=function(g){var x=[];return H.invert(x,g),[[x[0],x[1],x[2],x[3]],[x[4],x[5],x[6],x[7]],[x[8],x[9],x[10],x[11]],[x[12],x[13],x[14],x[15]]]}}}),b_=Ye({"src/lib/dom.js"(X,H){"use strict";var g=_n(),x=Ym(),A=h2(),M=QA();function e(T){var l;if(typeof T=="string"){if(l=document.getElementById(T),l===null)throw new Error("No DOM element with id '"+T+"' exists on the page.");return l}else if(T==null)throw new Error("DOM element provided is null or undefined");return T}function t(T){var l=g.select(T);return l.node()instanceof HTMLElement&&l.size()&&l.classed("js-plotly-plot")}function r(T){var l=T&&T.parentNode;l&&l.removeChild(T)}function o(T,l){a("global",T,l)}function a(T,l,_){var w="plotly.js-style-"+T,S=document.getElementById(w);if(!(S&&S.matches(".no-inline-styles"))){S||(S=document.createElement("style"),S.setAttribute("id",w),S.appendChild(document.createTextNode("")),document.head.appendChild(S));var E=S.sheet;E?E.insertRule?E.insertRule(l+"{"+_+"}",0):E.addRule?E.addRule(l,_,0):x.warn("addStyleRule failed"):x.warn("Cannot addRelatedStyleRule, probably due to strict CSP...")}}function i(T){var l="plotly.js-style-"+T,_=document.getElementById(l);_&&r(_)}function n(T,l,_,w,S,E){var m=w.split(":"),b=S.split(":"),d="data-btn-style-event-added";E||(E=document),E.querySelectorAll(T).forEach(function(u){u.getAttribute(d)||(u.addEventListener("mouseenter",function(){var y=this.querySelector(_);y&&(y.style[m[0]]=m[1])}),u.addEventListener("mouseleave",function(){var y=this.querySelector(_);y&&(l&&this.matches(l)?y.style[m[0]]=m[1]:y.style[b[0]]=b[1])}),u.setAttribute(d,!0))})}function s(T){var l=h(T),_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return l.forEach(function(w){var S=c(w);if(S){var E=A.convertCssMatrix(S);_=M.multiply(_,_,E)}}),_}function c(T){var l=window.getComputedStyle(T,null),_=l.getPropertyValue("-webkit-transform")||l.getPropertyValue("-moz-transform")||l.getPropertyValue("-ms-transform")||l.getPropertyValue("-o-transform")||l.getPropertyValue("transform");return _==="none"?null:_.replace("matrix","").replace("3d","").slice(1,-1).split(",").map(function(w){return+w})}function h(T){for(var l=[];v(T);)l.push(T),T=T.parentNode,typeof ShadowRoot=="function"&&T instanceof ShadowRoot&&(T=T.host);return l}function v(T){return T&&(T instanceof Element||T instanceof HTMLElement)}function p(T,l){return T&&l&&T.top===l.top&&T.left===l.left&&T.right===l.right&&T.bottom===l.bottom}H.exports={getGraphDiv:e,isPlotDiv:t,removeElement:r,addStyleRule:o,addRelatedStyleRule:a,deleteRelatedStyleRule:i,setStyleOnHover:n,getFullTransformMatrix:s,getElementTransformMatrix:c,getElementAndAncestors:h,equalDomRects:p}}}),w_=Ye({"src/plots/animation_attributes.js"(X,H){"use strict";H.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"}}}}}),Ou=Ye({"src/plot_api/edit_types.js"(X,H){"use strict";var g=Oo().extendFlat,x=Zv(),A={valType:"flaglist",extras:["none"],flags:["calc","clearAxisTypes","plot","style","markerSize","colorbars"]},M={valType:"flaglist",extras:["none"],flags:["calc","plot","legend","ticks","axrange","layoutstyle","modebar","camera","arraydraw","colorbars"]},e=A.flags.slice().concat(["fullReplot"]),t=M.flags.slice().concat("layoutReplot");H.exports={traces:A,layout:M,traceFlags:function(){return r(e)},layoutFlags:function(){return r(t)},update:function(i,n){var s=n.editType;if(s&&s!=="none")for(var c=s.split("+"),h=0;h<c.length;h++)i[c[h]]=!0},overrideAll:o};function r(i){for(var n={},s=0;s<i.length;s++)n[i[s]]=!1;return n}function o(i,n,s){var c=g({},i);for(var h in c){var v=c[h];x(v)&&(c[h]=a(v,n,s,h))}return s==="from-root"&&(c.editType=n),c}function a(i,n,s,c){if(i.valType){var h=g({},i);if(h.editType=n,Array.isArray(i.items)){h.items=new Array(i.items.length);for(var v=0;v<i.items.length;v++)h.items[v]=a(i.items[v],n,"from-root")}return h}else return o(i,n,c.charAt(0)==="_"?"nested":"from-root")}}}),Uh=Ye({"src/components/drawing/attributes.js"(X){"use strict";X.dash={valType:"string",values:["solid","dot","dash","longdash","dashdot","longdashdot"],dflt:"solid",editType:"style"},X.pattern={shape:{valType:"enumerated",values:["","/","\\","x","-","|","+","."],dflt:"",arrayOk:!0,editType:"style"},fillmode:{valType:"enumerated",values:["replace","overlay"],dflt:"replace",editType:"style"},bgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgcolor:{valType:"color",arrayOk:!0,editType:"style"},fgopacity:{valType:"number",editType:"style",min:0,max:1},size:{valType:"number",min:0,dflt:8,arrayOk:!0,editType:"style"},solidity:{valType:"number",min:0,max:1,dflt:.3,arrayOk:!0,editType:"style"},editType:"style"}}}),eS=Ye({"src/constants/docs.js"(X,H){"use strict";H.exports={FORMAT_LINK:"https://github.com/d3/d3-format/tree/v1.4.5#d3-format",DATE_FORMAT_LINK:"https://github.com/d3/d3-time-format/tree/v2.2.3#locale_format"}}}),xs=Ye({"src/plots/template_attributes.js"(X){"use strict";var H=eS(),g=H.FORMAT_LINK,x=H.DATE_FORMAT_LINK;function A(M){var e=M.description?" "+M.description:"",t=M.keys||[];if(t.length>0){for(var r=[],o=0;o<t.length;o++)r[o]="`"+t[o]+"`";e=e+"Finally, the template string has access to ",t.length===1?e=e+"variable "+r[0]:e=e+"variables "+r.slice(0,-1).join(", ")+" and "+r.slice(-1)+"."}return e}X.hovertemplateAttrs=function(M,e){M=M||{},e=e||{};var t=A(e),r={valType:"string",dflt:"",editType:M.editType||"none"};return M.arrayOk!==!1&&(r.arrayOk=!0),r},X.texttemplateAttrs=function(M,e){M=M||{},e=e||{};var t=A(e),r={valType:"string",dflt:"",editType:M.editType||"calc"};return M.arrayOk!==!1&&(r.arrayOk=!0),r},X.shapeTexttemplateAttrs=function(M,e){M=M||{},e=e||{};var t=M.newshape?"new ":"",r=A(e),o={valType:"string",dflt:"",editType:M.editType||"arraydraw"};return o}}}),p2=Ye({"src/components/shapes/label_texttemplate.js"(X,H){"use strict";function g(_,w){return w?w.d2l(_):_}function x(_,w){return w?w.l2d(_):_}function A(_){return _.x0}function M(_){return _.x1}function e(_){return _.y0}function t(_){return _.y1}function r(_){return _.x0shift||0}function o(_){return _.x1shift||0}function a(_){return _.y0shift||0}function i(_){return _.y1shift||0}function n(_,w){return g(_.x1,w)+o(_)-g(_.x0,w)-r(_)}function s(_,w,S){return g(_.y1,S)+i(_)-g(_.y0,S)-a(_)}function c(_,w){return Math.abs(n(_,w))}function h(_,w,S){return Math.abs(s(_,w,S))}function v(_,w,S){return _.type!=="line"?void 0:Math.sqrt(Math.pow(n(_,w),2)+Math.pow(s(_,w,S),2))}function p(_,w){return x((g(_.x1,w)+o(_)+g(_.x0,w)+r(_))/2,w)}function T(_,w,S){return x((g(_.y1,S)+i(_)+g(_.y0,S)+a(_))/2,S)}function l(_,w,S){return _.type!=="line"?void 0:s(_,w,S)/n(_,w)}H.exports={x0:A,x1:M,y0:e,y1:t,slope:l,dx:n,dy:s,width:c,height:h,length:v,xcenter:p,ycenter:T}}}),zF=Ye({"src/components/shapes/draw_newshape/attributes.js"(X,H){"use strict";var g=Ou().overrideAll,x=Pl(),A=Au(),M=Uh().dash,e=Oo().extendFlat,t=xs().shapeTexttemplateAttrs,r=p2();H.exports=g({newshape:{visible:e({},x.visible,{}),showlegend:{valType:"boolean",dflt:!1},legend:e({},x.legend,{}),legendgroup:e({},x.legendgroup,{}),legendgrouptitle:{text:e({},x.legendgrouptitle.text,{}),font:A({})},legendrank:e({},x.legendrank,{}),legendwidth:e({},x.legendwidth,{}),line:{color:{valType:"color"},width:{valType:"number",min:0,dflt:4},dash:e({},M,{dflt:"solid"})},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd"},opacity:{valType:"number",min:0,max:1,dflt:1},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above"},drawdirection:{valType:"enumerated",values:["ortho","horizontal","vertical","diagonal"],dflt:"diagonal"},name:e({},x.name,{}),label:{text:{valType:"string",dflt:""},texttemplate:t({newshape:!0},{keys:Object.keys(r)}),font:A({}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"]},textangle:{valType:"angle",dflt:"auto"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},padding:{valType:"number",dflt:3,min:0}}},activeshape:{fillcolor:{valType:"color",dflt:"rgb(255,0,255)"},opacity:{valType:"number",min:0,max:1,dflt:.5}}},"none","from-root")}}),FF=Ye({"src/components/selections/draw_newselection/attributes.js"(X,H){"use strict";var g=Uh().dash,x=Oo().extendFlat;H.exports={newselection:{mode:{valType:"enumerated",values:["immediate","gradual"],dflt:"immediate",editType:"none"},line:{color:{valType:"color",editType:"none"},width:{valType:"number",min:1,dflt:1,editType:"none"},dash:x({},g,{dflt:"dot",editType:"none"}),editType:"none"},editType:"none"},activeselection:{fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"none"},opacity:{valType:"number",min:0,max:1,dflt:.5,editType:"none"},editType:"none"}}}}),d2=Ye({"src/plots/pad_attributes.js"(X,H){"use strict";H.exports=function(g){var x=g.editType;return{t:{valType:"number",dflt:0,editType:x},r:{valType:"number",dflt:0,editType:x},b:{valType:"number",dflt:0,editType:x},l:{valType:"number",dflt:0,editType:x},editType:x}}}}),Jy=Ye({"src/plots/layout_attributes.js"(X,H){"use strict";var g=Au(),x=w_(),A=Gf(),M=zF(),e=FF(),t=d2(),r=Oo().extendFlat,o=g({editType:"calc"});o.family.dflt='"Open Sans", verdana, arial, sans-serif',o.size.dflt=12,o.color.dflt=A.defaultLine,H.exports={font:o,title:{text:{valType:"string",editType:"layoutstyle"},font:g({editType:"layoutstyle"}),subtitle:{text:{valType:"string",editType:"layoutstyle"},font:g({editType:"layoutstyle"}),editType:"layoutstyle"},xref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},yref:{valType:"enumerated",dflt:"container",values:["container","paper"],editType:"layoutstyle"},x:{valType:"number",min:0,max:1,dflt:.5,editType:"layoutstyle"},y:{valType:"number",min:0,max:1,dflt:"auto",editType:"layoutstyle"},xanchor:{valType:"enumerated",dflt:"auto",values:["auto","left","center","right"],editType:"layoutstyle"},yanchor:{valType:"enumerated",dflt:"auto",values:["auto","top","middle","bottom"],editType:"layoutstyle"},pad:r(t({editType:"layoutstyle"}),{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},editType:"layoutstyle"},uniformtext:{mode:{valType:"enumerated",values:[!1,"hide","show"],dflt:!1,editType:"plot"},minsize:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"},autosize:{valType:"boolean",dflt:!1,editType:"none"},width:{valType:"number",min:10,dflt:700,editType:"plot"},height:{valType:"number",min:10,dflt:450,editType:"plot"},minreducedwidth:{valType:"number",min:2,dflt:64,editType:"plot"},minreducedheight:{valType:"number",min:2,dflt:64,editType:"plot"},margin:{l:{valType:"number",min:0,dflt:80,editType:"plot"},r:{valType:"number",min:0,dflt:80,editType:"plot"},t:{valType:"number",min:0,dflt:100,editType:"plot"},b:{valType:"number",min:0,dflt:80,editType:"plot"},pad:{valType:"number",min:0,dflt:0,editType:"plot"},autoexpand:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},computed:{valType:"any",editType:"none"},paper_bgcolor:{valType:"color",dflt:A.background,editType:"plot"},plot_bgcolor:{valType:"color",dflt:A.background,editType:"layoutstyle"},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},separators:{valType:"string",editType:"plot"},hidesources:{valType:"boolean",dflt:!1,editType:"plot"},showlegend:{valType:"boolean",editType:"legend"},colorway:{valType:"colorlist",dflt:A.defaults,editType:"calc"},datarevision:{valType:"any",editType:"calc"},uirevision:{valType:"any",editType:"none"},editrevision:{valType:"any",editType:"none"},selectionrevision:{valType:"any",editType:"none"},template:{valType:"any",editType:"calc"},newshape:M.newshape,activeshape:M.activeshape,newselection:e.newselection,activeselection:e.activeselection,meta:{valType:"any",arrayOk:!0,editType:"plot"},transition:r({},x.transition,{editType:"none"})}}}),OF=Qn({"temp_stylePlugin:node_modules/maplibre-gl/dist/maplibre-gl.css"(){}}),Qfe={},BF=Qn({"stylePlugin:/Users/ekl/code/plotly.js/node_modules/maplibre-gl/dist/maplibre-gl.css"(){OF()}}),Hn=Ye({"src/registry.js"(X){"use strict";var H=Ym(),g=f2(),x=KA(),A=Zv(),M=b_().addStyleRule,e=Oo(),t=Pl(),r=Jy(),o=e.extendFlat,a=e.extendDeepAll;X.modules={},X.allCategories={},X.allTypes=[],X.subplotsRegistry={},X.componentsRegistry={},X.layoutArrayContainers=[],X.layoutArrayRegexes=[],X.traceLayoutAttributes={},X.localeRegistry={},X.apiMethodRegistry={},X.collectableSubplotTypes=null,X.register=function(w){if(X.collectableSubplotTypes=null,w)w&&!Array.isArray(w)&&(w=[w]);else throw new Error("No argument passed to Plotly.register.");for(var S=0;S<w.length;S++){var E=w[S];if(!E)throw new Error("Invalid module was attempted to be registered!");switch(E.moduleType){case"trace":i(E);break;case"transform":c(E);break;case"component":s(E);break;case"locale":h(E);break;case"apiMethod":var m=E.name;X.apiMethodRegistry[m]=E.fn;break;default:throw new Error("Invalid module was attempted to be registered!")}}},X.getModule=function(_){var w=X.modules[l(_)];return w?w._module:!1},X.traceIs=function(_,w){if(_=l(_),_==="various")return!1;var S=X.modules[_];return S||(_&&H.log("Unrecognized trace type "+_+"."),S=X.modules[t.type.dflt]),!!S.categories[w]},X.getComponentMethod=function(_,w){var S=X.componentsRegistry[_];return S&&S[w]||g},X.call=function(){var _=arguments[0],w=[].slice.call(arguments,1);return X.apiMethodRegistry[_].apply(null,w)};function i(_){var w=_.name,S=_.categories,E=_.meta;if(X.modules[w]){H.log("Type "+w+" already registered");return}X.subplotsRegistry[_.basePlotModule.name]||n(_.basePlotModule);for(var m={},b=0;b<S.length;b++)m[S[b]]=!0,X.allCategories[S[b]]=!0;X.modules[w]={_module:_,categories:m},E&&Object.keys(E).length&&(X.modules[w].meta=E),X.allTypes.push(w);for(var d in X.componentsRegistry)p(d,w);_.layoutAttributes&&o(X.traceLayoutAttributes,_.layoutAttributes);var u=_.basePlotModule,y=u.name;if(y==="mapbox"){var f=u.constants.styleRules;for(var P in f)M(".js-plotly-plot .plotly .mapboxgl-"+P,f[P])}y==="map"&&BF(),(y==="geo"||y==="mapbox"||y==="map")&&window.PlotlyGeoAssets===void 0&&(window.PlotlyGeoAssets={topojson:{}})}function n(_){var w=_.name;if(X.subplotsRegistry[w]){H.log("Plot type "+w+" already registered.");return}v(_),X.subplotsRegistry[w]=_;for(var S in X.componentsRegistry)T(S,_.name)}function s(_){if(typeof _.name!="string")throw new Error("Component module *name* must be a string.");var w=_.name;X.componentsRegistry[w]=_,_.layoutAttributes&&(_.layoutAttributes._isLinkedToArray&&x(X.layoutArrayContainers,w),v(_));for(var S in X.modules)p(w,S);for(var E in X.subplotsRegistry)T(w,E);_.schema&&_.schema.layout&&a(r,_.schema.layout)}function c(_){if(typeof _.name!="string")throw new Error("Transform module *name* must be a string.");var w="Transform module "+_.name,S=typeof _.transform=="function",E=typeof _.calcTransform=="function";if(!S&&!E)throw new Error(w+" is missing a *transform* or *calcTransform* method.");S&&E&&H.log([w+" has both a *transform* and *calcTransform* methods.","Please note that all *transform* methods are executed","before all *calcTransform* methods."].join(" ")),A(_.attributes)||H.log(w+" registered without an *attributes* object."),typeof _.supplyDefaults!="function"&&H.log(w+" registered without a *supplyDefaults* method.")}function h(_){var w=_.name,S=w.split("-")[0],E=_.dictionary,m=_.format,b=E&&Object.keys(E).length,d=m&&Object.keys(m).length,u=X.localeRegistry,y=u[w];if(y||(u[w]=y={}),S!==w){var f=u[S];f||(u[S]=f={}),b&&f.dictionary===y.dictionary&&(f.dictionary=E),d&&f.format===y.format&&(f.format=m)}b&&(y.dictionary=E),d&&(y.format=m)}function v(_){if(_.layoutAttributes){var w=_.layoutAttributes._arrayAttrRegexps;if(w)for(var S=0;S<w.length;S++)x(X.layoutArrayRegexes,w[S])}}function p(_,w){var S=X.componentsRegistry[_].schema;if(!(!S||!S.traces)){var E=S.traces[w];E&&a(X.modules[w]._module.attributes,E)}}function T(_,w){var S=X.componentsRegistry[_].schema;if(!(!S||!S.subplots)){var E=X.subplotsRegistry[w],m=E.layoutAttributes,b=E.attr==="subplot"?E.name:E.attr;Array.isArray(b)&&(b=b[0]);var d=S.subplots[b];m&&d&&a(m,d)}}function l(_){return typeof _=="object"&&(_=_.type),_}}}),NF=Ye({"src/lib/dates.js"(X){"use strict";var H=Np().timeFormat,g=jo(),x=Ym(),A=Xy().mod,M=ks(),e=M.BADNUM,t=M.ONEDAY,r=M.ONEHOUR,o=M.ONEMIN,a=M.ONESEC,i=M.EPOCHJD,n=Hn(),s=Np().utcFormat,c=/^\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,h=/^\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,v=new Date().getFullYear()-70;function p(F){return F&&n.componentsRegistry.calendars&&typeof F=="string"&&F!=="gregorian"}X.dateTick0=function(F,B){var O=T(F,!!B);if(B<2)return O;var I=X.dateTime2ms(O,F);return I+=t*(B-1),X.ms2DateTime(I,0,F)};function T(F,B){return p(F)?B?n.getComponentMethod("calendars","CANONICAL_SUNDAY")[F]:n.getComponentMethod("calendars","CANONICAL_TICK")[F]:B?"2000-01-02":"2000-01-01"}X.dfltRange=function(F){return p(F)?n.getComponentMethod("calendars","DFLTRANGE")[F]:["2000-01-01","2001-01-01"]},X.isJSDate=function(F){return typeof F=="object"&&F!==null&&typeof F.getTime=="function"};var l,_;X.dateTime2ms=function(F,B){if(X.isJSDate(F)){var O=F.getTimezoneOffset()*o,I=(F.getUTCMinutes()-F.getMinutes())*o+(F.getUTCSeconds()-F.getSeconds())*a+(F.getUTCMilliseconds()-F.getMilliseconds());if(I){var N=3*o;O=O-N/2+A(I-O+N/2,N)}return F=Number(F)-O,F>=l&&F<=_?F:e}if(typeof F!="string"&&typeof F!="number")return e;F=String(F);var U=p(B),W=F.charAt(0);U&&(W==="G"||W==="g")&&(F=F.substr(1),B="");var Q=U&&B.substr(0,7)==="chinese",ue=F.match(Q?h:c);if(!ue)return e;var se=ue[1],he=ue[3]||"1",G=Number(ue[5]||1),$=Number(ue[7]||0),J=Number(ue[9]||0),Z=Number(ue[11]||0);if(U){if(se.length===2)return e;se=Number(se);var re;try{var ne=n.getComponentMethod("calendars","getCal")(B);if(Q){var j=he.charAt(he.length-1)==="i";he=parseInt(he,10),re=ne.newDate(se,ne.toMonthIndex(se,he,j),G)}else re=ne.newDate(se,Number(he),G)}catch{return e}return re?(re.toJD()-i)*t+$*r+J*o+Z*a:e}se.length===2?se=(Number(se)+2e3-v)%100+v:se=Number(se),he-=1;var ee=new Date(Date.UTC(2e3,he,G,$,J));return ee.setUTCFullYear(se),ee.getUTCMonth()!==he||ee.getUTCDate()!==G?e:ee.getTime()+Z*a},l=X.MIN_MS=X.dateTime2ms("-9999"),_=X.MAX_MS=X.dateTime2ms("9999-12-31 23:59:59.9999"),X.isDateTime=function(F,B){return X.dateTime2ms(F,B)!==e};function w(F,B){return String(F+Math.pow(10,B)).substr(1)}var S=90*t,E=3*r,m=5*o;X.ms2DateTime=function(F,B,O){if(typeof F!="number"||!(F>=l&&F<=_))return e;B||(B=0);var I=Math.floor(A(F+.05,1)*10),N=Math.round(F-I/10),U,W,Q,ue,se,he;if(p(O)){var G=Math.floor(N/t)+i,$=Math.floor(A(F,t));try{U=n.getComponentMethod("calendars","getCal")(O).fromJD(G).formatDate("yyyy-mm-dd")}catch{U=s("G%Y-%m-%d")(new Date(N))}if(U.charAt(0)==="-")for(;U.length<11;)U="-0"+U.substr(1);else for(;U.length<10;)U="0"+U;W=B<S?Math.floor($/r):0,Q=B<S?Math.floor($%r/o):0,ue=B<E?Math.floor($%o/a):0,se=B<m?$%a*10+I:0}else he=new Date(N),U=s("%Y-%m-%d")(he),W=B<S?he.getUTCHours():0,Q=B<S?he.getUTCMinutes():0,ue=B<E?he.getUTCSeconds():0,se=B<m?he.getUTCMilliseconds()*10+I:0;return b(U,W,Q,ue,se)},X.ms2DateTimeLocal=function(F){if(!(F>=l+t&&F<=_-t))return e;var B=Math.floor(A(F+.05,1)*10),O=new Date(Math.round(F-B/10)),I=H("%Y-%m-%d")(O),N=O.getHours(),U=O.getMinutes(),W=O.getSeconds(),Q=O.getUTCMilliseconds()*10+B;return b(I,N,U,W,Q)};function b(F,B,O,I,N){if((B||O||I||N)&&(F+=" "+w(B,2)+":"+w(O,2),(I||N)&&(F+=":"+w(I,2),N))){for(var U=4;N%10===0;)U-=1,N/=10;F+="."+w(N,U)}return F}X.cleanDate=function(F,B,O){if(F===e)return B;if(X.isJSDate(F)||typeof F=="number"&&isFinite(F)){if(p(O))return x.error("JS Dates and milliseconds are incompatible with world calendars",F),B;if(F=X.ms2DateTimeLocal(+F),!F&&B!==void 0)return B}else if(!X.isDateTime(F,O))return x.error("unrecognized date",F),B;return F};var d=/%\d?f/g,u=/%h/g,y={1:"1",2:"1",3:"2",4:"2"};function f(F,B,O,I){F=F.replace(d,function(U){var W=Math.min(+U.charAt(1)||6,6),Q=(B/1e3%1+2).toFixed(W).substr(2).replace(/0+$/,"")||"0";return Q});var N=new Date(Math.floor(B+.05));if(F=F.replace(u,function(){return y[O("%q")(N)]}),p(I))try{F=n.getComponentMethod("calendars","worldCalFmt")(F,B,I)}catch{return"Invalid"}return O(F)(N)}var P=[59,59.9,59.99,59.999,59.9999];function L(F,B){var O=A(F+.05,t),I=w(Math.floor(O/r),2)+":"+w(A(Math.floor(O/o),60),2);if(B!=="M"){g(B)||(B=0);var N=Math.min(A(F/a,60),P[B]),U=(100+N).toFixed(B).substr(1);B>0&&(U=U.replace(/0+$/,"").replace(/[\.]$/,"")),I+=":"+U}return I}X.formatDate=function(F,B,O,I,N,U){if(N=p(N)&&N,!B)if(O==="y")B=U.year;else if(O==="m")B=U.month;else if(O==="d")B=U.dayMonth+`
+`+U.year;else return L(F,O)+`
+`+f(U.dayMonthYear,F,I,N);return f(B,F,I,N)};var z=3*t;X.incrementMonth=function(F,B,O){O=p(O)&&O;var I=A(F,t);if(F=Math.round(F-I),O)try{var N=Math.round(F/t)+i,U=n.getComponentMethod("calendars","getCal")(O),W=U.fromJD(N);return B%12?U.add(W,B,"m"):U.add(W,B/12,"y"),(W.toJD()-i)*t+I}catch{x.error("invalid ms "+F+" in calendar "+O)}var Q=new Date(F+z);return Q.setUTCMonth(Q.getUTCMonth()+B)+I-z},X.findExactDates=function(F,B){for(var O=0,I=0,N=0,U=0,W,Q,ue=p(B)&&n.getComponentMethod("calendars","getCal")(B),se=0;se<F.length;se++){if(Q=F[se],!g(Q)){U++;continue}if(!(Q%t))if(ue)try{W=ue.fromJD(Q/t+i),W.day()===1?W.month()===1?O++:I++:N++}catch{}else W=new Date(Q),W.getUTCDate()===1?W.getUTCMonth()===0?O++:I++:N++}I+=O,N+=I;var he=F.length-U;return{exactYears:O/he,exactMonths:I/he,exactDays:N/he}}}}),T_=Ye({"src/lib/identity.js"(X,H){"use strict";H.exports=function(x){return x}}}),v2=Ye({"src/lib/search.js"(X){"use strict";var H=jo(),g=Ym(),x=T_(),A=ks().BADNUM,M=1e-9;X.findBin=function(a,i,n){if(H(i.start))return n?Math.ceil((a-i.start)/i.size-M)-1:Math.floor((a-i.start)/i.size+M);var s=0,c=i.length,h=0,v=c>1?(i[c-1]-i[0])/(c-1):1,p,T;for(v>=0?T=n?e:t:T=n?o:r,a+=v*M*(n?-1:1)*(v>=0?1:-1);s<c&&h++<100;)p=Math.floor((s+c)/2),T(i[p],a)?s=p+1:c=p;return h>90&&g.log("Long binary search..."),s-1};function e(a,i){return a<i}function t(a,i){return a<=i}function r(a,i){return a>i}function o(a,i){return a>=i}X.sorterAsc=function(a,i){return a-i},X.sorterDes=function(a,i){return i-a},X.distinctVals=function(a){var i=a.slice();i.sort(X.sorterAsc);var n;for(n=i.length-1;n>-1&&i[n]===A;n--);for(var s=i[n]-i[0]||1,c=s/(n||1)/1e4,h=[],v,p=0;p<=n;p++){var T=i[p],l=T-v;v===void 0?(h.push(T),v=T):l>c&&(s=Math.min(s,l),h.push(T),v=T)}return{vals:h,minDiff:s}},X.roundUp=function(a,i,n){for(var s=0,c=i.length-1,h,v=0,p=n?0:1,T=n?1:0,l=n?Math.ceil:Math.floor;s<c&&v++<100;)h=l((s+c)/2),i[h]<=a?s=h+p:c=h-T;return i[s]},X.sort=function(a,i){for(var n=0,s=0,c=1;c<a.length;c++){var h=i(a[c],a[c-1]);if(h<0?n=1:h>0&&(s=1),n&&s)return a.sort(i)}return s?a:a.reverse()},X.findIndexOfMin=function(a,i){i=i||x;for(var n=1/0,s,c=0;c<a.length;c++){var h=i(a[c]);h<n&&(n=h,s=c)}return s}}}),Km=Ye({"src/lib/sort_object_keys.js"(X,H){"use strict";H.exports=function(x){return Object.keys(x).sort()}}}),UF=Ye({"src/lib/stats.js"(X){"use strict";var H=jo(),g=xp().isArrayOrTypedArray;X.aggNums=function(x,A,M,e){var t,r;if((!e||e>M.length)&&(e=M.length),H(A)||(A=!1),g(M[0])){for(r=new Array(e),t=0;t<e;t++)r[t]=X.aggNums(x,A,M[t]);M=r}for(t=0;t<e;t++)H(A)?H(M[t])&&(A=x(+A,+M[t])):A=M[t];return A},X.len=function(x){return X.aggNums(function(A){return A+1},0,x)},X.mean=function(x,A){return A||(A=X.len(x)),X.aggNums(function(M,e){return M+e},0,x)/A},X.geometricMean=function(x,A){return A||(A=X.len(x)),Math.pow(X.aggNums(function(M,e){return M*e},1,x),1/A)},X.midRange=function(x){if(!(x===void 0||x.length===0))return(X.aggNums(Math.max,null,x)+X.aggNums(Math.min,null,x))/2},X.variance=function(x,A,M){return A||(A=X.len(x)),H(M)||(M=X.mean(x,A)),X.aggNums(function(e,t){return e+Math.pow(t-M,2)},0,x)/A},X.stdev=function(x,A,M){return Math.sqrt(X.variance(x,A,M))},X.median=function(x){var A=x.slice().sort();return X.interp(A,.5)},X.interp=function(x,A){if(!H(A))throw"n should be a finite number";if(A=A*x.length-.5,A<0)return x[0];if(A>x.length-1)return x[x.length-1];var M=A%1;return M*x[Math.ceil(A)]+(1-M)*x[Math.floor(A)]}}}),jF=Ye({"src/lib/angles.js"(X,H){"use strict";var g=Xy(),x=g.mod,A=g.modHalf,M=Math.PI,e=2*M;function t(T){return T/180*M}function r(T){return T/M*180}function o(T){return Math.abs(T[1]-T[0])>e-1e-14}function a(T,l){return A(l-T,e)}function i(T,l){return Math.abs(a(T,l))}function n(T,l){if(o(l))return!0;var _,w;l[0]<l[1]?(_=l[0],w=l[1]):(_=l[1],w=l[0]),_=x(_,e),w=x(w,e),_>w&&(w+=e);var S=x(T,e),E=S+e;return S>=_&&S<=w||E>=_&&E<=w}function s(T,l,_,w){if(!n(l,w))return!1;var S,E;return _[0]<_[1]?(S=_[0],E=_[1]):(S=_[1],E=_[0]),T>=S&&T<=E}function c(T,l,_,w,S,E,m){S=S||0,E=E||0;var b=o([_,w]),d,u,y,f,P;b?(d=0,u=M,y=e):_<w?(d=_,y=w):(d=w,y=_),T<l?(f=T,P=l):(f=l,P=T);function L(O,I){return[O*Math.cos(I)+S,E-O*Math.sin(I)]}var z=Math.abs(y-d)<=M?0:1;function F(O,I,N){return"A"+[O,O]+" "+[0,z,N]+" "+L(O,I)}var B;return b?f===null?B="M"+L(P,d)+F(P,u,0)+F(P,y,0)+"Z":B="M"+L(f,d)+F(f,u,0)+F(f,y,0)+"ZM"+L(P,d)+F(P,u,1)+F(P,y,1)+"Z":f===null?(B="M"+L(P,d)+F(P,y,0),m&&(B+="L0,0Z")):B="M"+L(f,d)+"L"+L(P,d)+F(P,y,0)+"L"+L(f,y)+F(f,d,1)+"Z",B}function h(T,l,_,w,S){return c(null,T,l,_,w,S,0)}function v(T,l,_,w,S){return c(null,T,l,_,w,S,1)}function p(T,l,_,w,S,E){return c(T,l,_,w,S,E,1)}H.exports={deg2rad:t,rad2deg:r,angleDelta:a,angleDist:i,isFullCircle:o,isAngleInsideSector:n,isPtInsideSector:s,pathArc:h,pathSector:v,pathAnnulus:p}}}),VF=Ye({"src/lib/anchor_utils.js"(X){"use strict";X.isLeftAnchor=function(g){return g.xanchor==="left"||g.xanchor==="auto"&&g.x<=1/3},X.isCenterAnchor=function(g){return g.xanchor==="center"||g.xanchor==="auto"&&g.x>1/3&&g.x<2/3},X.isRightAnchor=function(g){return g.xanchor==="right"||g.xanchor==="auto"&&g.x>=2/3},X.isTopAnchor=function(g){return g.yanchor==="top"||g.yanchor==="auto"&&g.y>=2/3},X.isMiddleAnchor=function(g){return g.yanchor==="middle"||g.yanchor==="auto"&&g.y>1/3&&g.y<2/3},X.isBottomAnchor=function(g){return g.yanchor==="bottom"||g.yanchor==="auto"&&g.y<=1/3}}}),qF=Ye({"src/lib/geometry2d.js"(X){"use strict";var H=Xy().mod;X.segmentsIntersect=g;function g(t,r,o,a,i,n,s,c){var h=o-t,v=i-t,p=s-i,T=a-r,l=n-r,_=c-n,w=h*_-p*T;if(w===0)return null;var S=(v*_-p*l)/w,E=(v*T-h*l)/w;return E<0||E>1||S<0||S>1?null:{x:t+h*S,y:r+T*S}}X.segmentDistance=function(r,o,a,i,n,s,c,h){if(g(r,o,a,i,n,s,c,h))return 0;var v=a-r,p=i-o,T=c-n,l=h-s,_=v*v+p*p,w=T*T+l*l,S=Math.min(x(v,p,_,n-r,s-o),x(v,p,_,c-r,h-o),x(T,l,w,r-n,o-s),x(T,l,w,a-n,i-s));return Math.sqrt(S)};function x(t,r,o,a,i){var n=a*t+i*r;if(n<0)return a*a+i*i;if(n>o){var s=a-t,c=i-r;return s*s+c*c}else{var h=a*r-i*t;return h*h/o}}var A,M,e;X.getTextLocation=function(r,o,a,i){if((r!==M||i!==e)&&(A={},M=r,e=i),A[a])return A[a];var n=r.getPointAtLength(H(a-i/2,o)),s=r.getPointAtLength(H(a+i/2,o)),c=Math.atan((s.y-n.y)/(s.x-n.x)),h=r.getPointAtLength(H(a,o)),v=(h.x*4+n.x+s.x)/6,p=(h.y*4+n.y+s.y)/6,T={x:v,y:p,theta:c};return A[a]=T,T},X.clearLocationCache=function(){M=null},X.getVisibleSegment=function(r,o,a){var i=o.left,n=o.right,s=o.top,c=o.bottom,h=0,v=r.getTotalLength(),p=v,T,l;function _(S){var E=r.getPointAtLength(S);S===0?T=E:S===v&&(l=E);var m=E.x<i?i-E.x:E.x>n?E.x-n:0,b=E.y<s?s-E.y:E.y>c?E.y-c:0;return Math.sqrt(m*m+b*b)}for(var w=_(h);w;){if(h+=w+a,h>p)return;w=_(h)}for(w=_(p);w;){if(p-=w+a,h>p)return;w=_(p)}return{min:h,max:p,len:p-h,total:v,isClosed:h===0&&p===v&&Math.abs(T.x-l.x)<.1&&Math.abs(T.y-l.y)<.1}},X.findPointOnPath=function(r,o,a,i){i=i||{};for(var n=i.pathLength||r.getTotalLength(),s=i.tolerance||.001,c=i.iterationLimit||30,h=r.getPointAtLength(0)[a]>r.getPointAtLength(n)[a]?-1:1,v=0,p=0,T=n,l,_,w;v<c;){if(l=(p+T)/2,_=r.getPointAtLength(l),w=_[a]-o,Math.abs(w)<s)return _;h*w>0?T=l:p=l,v++}return _}}}),m2=Ye({"src/lib/throttle.js"(X){"use strict";var H={};X.throttle=function(A,M,e){var t=H[A],r=Date.now();if(!t){for(var o in H)H[o].ts<r-6e4&&delete H[o];t=H[A]={ts:0,timer:null}}g(t);function a(){e(),t.ts=Date.now(),t.onDone&&(t.onDone(),t.onDone=null)}if(r>t.ts+M){a();return}t.timer=setTimeout(function(){a(),t.timer=null},M)},X.done=function(x){var A=H[x];return!A||!A.timer?Promise.resolve():new Promise(function(M){var e=A.onDone;A.onDone=function(){e&&e(),M(),A.onDone=null}})},X.clear=function(x){if(x)g(H[x]),delete H[x];else for(var A in H)X.clear(A)};function g(x){x&&x.timer!==null&&(clearTimeout(x.timer),x.timer=null)}}}),HF=Ye({"src/lib/clear_responsive.js"(X,H){"use strict";H.exports=function(x){x._responsiveChartHandler&&(window.removeEventListener("resize",x._responsiveChartHandler),delete x._responsiveChartHandler)}}}),GF=Ye({"node_modules/is-mobile/index.js"(X,H){"use strict";H.exports=M,H.exports.isMobile=M,H.exports.default=M;var g=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,x=/CrOS/,A=/android|ipad|playbook|silk/i;function M(e){e||(e={});let t=e.ua;if(!t&&typeof navigator<"u"&&(t=navigator.userAgent),t&&t.headers&&typeof t.headers["user-agent"]=="string"&&(t=t.headers["user-agent"]),typeof t!="string")return!1;let r=g.test(t)&&!x.test(t)||!!e.tablet&&A.test(t);return!r&&e.tablet&&e.featureDetect&&navigator&&navigator.maxTouchPoints>1&&t.indexOf("Macintosh")!==-1&&t.indexOf("Safari")!==-1&&(r=!0),r}}}),WF=Ye({"src/lib/preserve_drawing_buffer.js"(X,H){"use strict";var g=jo(),x=GF();H.exports=function(e){var t;if(e&&e.hasOwnProperty("userAgent")?t=e.userAgent:t=A(),typeof t!="string")return!0;var r=x({ua:{headers:{"user-agent":t}},tablet:!0,featureDetect:!1});if(!r)for(var o=t.split(" "),a=1;a<o.length;a++){var i=o[a];if(i.indexOf("Safari")!==-1)for(var n=a-1;n>-1;n--){var s=o[n];if(s.substr(0,8)==="Version/"){var c=s.substr(8).split(".")[0];if(g(c)&&(c=+c),c>=13)return!0}}}return r};function A(){var M;return typeof navigator<"u"&&(M=navigator.userAgent),M&&M.headers&&typeof M.headers["user-agent"]=="string"&&(M=M.headers["user-agent"]),M}}}),ZF=Ye({"src/lib/make_trace_groups.js"(X,H){"use strict";var g=_n();H.exports=function(A,M,e){var t=A.selectAll("g."+e.replace(/\s/g,".")).data(M,function(o){return o[0].trace.uid});t.exit().remove(),t.enter().append("g").attr("class",e),t.order();var r=A.classed("rangeplot")?"nodeRangePlot3":"node3";return t.each(function(o){o[0][r]=g.select(this)}),t}}}),XF=Ye({"src/lib/localize.js"(X,H){"use strict";var g=Hn();H.exports=function(A,M){for(var e=A._context.locale,t=0;t<2;t++){for(var r=A._context.locales,o=0;o<2;o++){var a=(r[e]||{}).dictionary;if(a){var i=a[M];if(i)return i}r=g.localeRegistry}var n=e.split("-")[0];if(n===e)break;e=n}return M}}}),tS=Ye({"src/lib/filter_unique.js"(X,H){"use strict";H.exports=function(x){for(var A={},M=[],e=0,t=0;t<x.length;t++){var r=x[t];A[r]!==1&&(A[r]=1,M[e++]=r)}return M}}}),YF=Ye({"src/lib/filter_visible.js"(X,H){"use strict";H.exports=function(e){for(var t=A(e)?x:g,r=[],o=0;o<e.length;o++){var a=e[o];t(a)&&r.push(a)}return r};function g(M){return M.visible===!0}function x(M){var e=M[0].trace;return e.visible===!0&&e._length!==0}function A(M){return Array.isArray(M)&&Array.isArray(M[0])&&M[0][0]&&M[0][0].trace}}}),KF=Ye({"src/lib/increment.js"(X,H){"use strict";H.exports=function(x,A){if(!A)return x;var M=1/Math.abs(A),e=M>1?(M*x+M*A)/M:x+A,t=String(e).length;if(t>16){var r=String(A).length,o=String(x).length;if(t>=o+r){var a=parseFloat(e).toPrecision(12);a.indexOf("e+")===-1&&(e=+a)}}return e}}}),JF=Ye({"src/lib/clean_number.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=/^['"%,$#\s']+|[, ]|['"%,$#\s']+$/g;H.exports=function(e){return typeof e=="string"&&(e=e.replace(A,"")),g(e)?Number(e):x}}}),ta=Ye({"src/lib/index.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=Zy().format,M=jo(),e=ks(),t=e.FP_SAFE,r=-t,o=e.BADNUM,a=H.exports={};a.adjustFormat=function(ne){return!ne||/^\d[.]\df/.test(ne)||/[.]\d%/.test(ne)?ne:ne==="0.f"?"~f":/^\d%/.test(ne)?"~%":/^\ds/.test(ne)?"~s":!/^[~,.0$]/.test(ne)&&/[&fps]/.test(ne)?"~"+ne:ne};var i={};a.warnBadFormat=function(re){var ne=String(re);i[ne]||(i[ne]=1,a.warn('encountered bad format: "'+ne+'"'))},a.noFormat=function(re){return String(re)},a.numberFormat=function(re){var ne;try{ne=A(a.adjustFormat(re))}catch{return a.warnBadFormat(re),a.noFormat}return ne},a.nestedProperty=__(),a.keyedContainer=iF(),a.relativeAttr=nF(),a.isPlainObject=Zv(),a.toLogRange=c2(),a.relinkPrivateKeys=oF();var n=xp();a.isArrayBuffer=n.isArrayBuffer,a.isTypedArray=n.isTypedArray,a.isArrayOrTypedArray=n.isArrayOrTypedArray,a.isArray1D=n.isArray1D,a.ensureArray=n.ensureArray,a.concat=n.concat,a.maxRowLength=n.maxRowLength,a.minRowLength=n.minRowLength;var s=Xy();a.mod=s.mod,a.modHalf=s.modHalf;var c=sF();a.valObjectMeta=c.valObjectMeta,a.coerce=c.coerce,a.coerce2=c.coerce2,a.coerceFont=c.coerceFont,a.coercePattern=c.coercePattern,a.coerceHoverinfo=c.coerceHoverinfo,a.coerceSelectionMarkerOpacity=c.coerceSelectionMarkerOpacity,a.validate=c.validate;var h=NF();a.dateTime2ms=h.dateTime2ms,a.isDateTime=h.isDateTime,a.ms2DateTime=h.ms2DateTime,a.ms2DateTimeLocal=h.ms2DateTimeLocal,a.cleanDate=h.cleanDate,a.isJSDate=h.isJSDate,a.formatDate=h.formatDate,a.incrementMonth=h.incrementMonth,a.dateTick0=h.dateTick0,a.dfltRange=h.dfltRange,a.findExactDates=h.findExactDates,a.MIN_MS=h.MIN_MS,a.MAX_MS=h.MAX_MS;var v=v2();a.findBin=v.findBin,a.sorterAsc=v.sorterAsc,a.sorterDes=v.sorterDes,a.distinctVals=v.distinctVals,a.roundUp=v.roundUp,a.sort=v.sort,a.findIndexOfMin=v.findIndexOfMin,a.sortObjectKeys=Km();var p=UF();a.aggNums=p.aggNums,a.len=p.len,a.mean=p.mean,a.geometricMean=p.geometricMean,a.median=p.median,a.midRange=p.midRange,a.variance=p.variance,a.stdev=p.stdev,a.interp=p.interp;var T=h2();a.init2dArray=T.init2dArray,a.transposeRagged=T.transposeRagged,a.dot=T.dot,a.translationMatrix=T.translationMatrix,a.rotationMatrix=T.rotationMatrix,a.rotationXYMatrix=T.rotationXYMatrix,a.apply3DTransform=T.apply3DTransform,a.apply2DTransform=T.apply2DTransform,a.apply2DTransform2=T.apply2DTransform2,a.convertCssMatrix=T.convertCssMatrix,a.inverseTransformMatrix=T.inverseTransformMatrix;var l=jF();a.deg2rad=l.deg2rad,a.rad2deg=l.rad2deg,a.angleDelta=l.angleDelta,a.angleDist=l.angleDist,a.isFullCircle=l.isFullCircle,a.isAngleInsideSector=l.isAngleInsideSector,a.isPtInsideSector=l.isPtInsideSector,a.pathArc=l.pathArc,a.pathSector=l.pathSector,a.pathAnnulus=l.pathAnnulus;var _=VF();a.isLeftAnchor=_.isLeftAnchor,a.isCenterAnchor=_.isCenterAnchor,a.isRightAnchor=_.isRightAnchor,a.isTopAnchor=_.isTopAnchor,a.isMiddleAnchor=_.isMiddleAnchor,a.isBottomAnchor=_.isBottomAnchor;var w=qF();a.segmentsIntersect=w.segmentsIntersect,a.segmentDistance=w.segmentDistance,a.getTextLocation=w.getTextLocation,a.clearLocationCache=w.clearLocationCache,a.getVisibleSegment=w.getVisibleSegment,a.findPointOnPath=w.findPointOnPath;var S=Oo();a.extendFlat=S.extendFlat,a.extendDeep=S.extendDeep,a.extendDeepAll=S.extendDeepAll,a.extendDeepNoArrays=S.extendDeepNoArrays;var E=Ym();a.log=E.log,a.warn=E.warn,a.error=E.error;var m=Ky();a.counterRegex=m.counter;var b=m2();a.throttle=b.throttle,a.throttleDone=b.done,a.clearThrottle=b.clear;var d=b_();a.getGraphDiv=d.getGraphDiv,a.isPlotDiv=d.isPlotDiv,a.removeElement=d.removeElement,a.addStyleRule=d.addStyleRule,a.addRelatedStyleRule=d.addRelatedStyleRule,a.deleteRelatedStyleRule=d.deleteRelatedStyleRule,a.setStyleOnHover=d.setStyleOnHover,a.getFullTransformMatrix=d.getFullTransformMatrix,a.getElementTransformMatrix=d.getElementTransformMatrix,a.getElementAndAncestors=d.getElementAndAncestors,a.equalDomRects=d.equalDomRects,a.clearResponsive=HF(),a.preserveDrawingBuffer=WF(),a.makeTraceGroups=ZF(),a._=XF(),a.notifier=YA(),a.filterUnique=tS(),a.filterVisible=YF(),a.pushUnique=KA(),a.increment=KF(),a.cleanNumber=JF(),a.ensureNumber=function(ne){return M(ne)?(ne=Number(ne),ne>t||ne<r?o:ne):o},a.isIndex=function(re,ne){return ne!==void 0&&re>=ne?!1:M(re)&&re>=0&&re%1===0},a.noop=f2(),a.identity=T_(),a.repeat=function(re,ne){for(var j=new Array(ne),ee=0;ee<ne;ee++)j[ee]=re;return j},a.swapAttrs=function(re,ne,j,ee){j||(j="x"),ee||(ee="y");for(var ie=0;ie<ne.length;ie++){var fe=ne[ie],be=a.nestedProperty(re,fe.replace("?",j)),Ae=a.nestedProperty(re,fe.replace("?",ee)),Be=be.get();be.set(Ae.get()),Ae.set(Be)}},a.raiseToTop=function(ne){ne.parentNode.appendChild(ne)},a.cancelTransition=function(re){return re.transition().duration(0)},a.constrain=function(re,ne,j){return ne>j?Math.max(j,Math.min(ne,re)):Math.max(ne,Math.min(j,re))},a.bBoxIntersect=function(re,ne,j){return j=j||0,re.left<=ne.right+j&&ne.left<=re.right+j&&re.top<=ne.bottom+j&&ne.top<=re.bottom+j},a.simpleMap=function(re,ne,j,ee,ie){for(var fe=re.length,be=new Array(fe),Ae=0;Ae<fe;Ae++)be[Ae]=ne(re[Ae],j,ee,ie);return be},a.randstr=function re(ne,j,ee,ie){if(ee||(ee=16),j===void 0&&(j=24),j<=0)return"0";var fe=Math.log(Math.pow(2,j))/Math.log(ee),be="",Ae,Be,Ie;for(Ae=2;fe===1/0;Ae*=2)fe=Math.log(Math.pow(2,j/Ae))/Math.log(ee)*Ae;var Ze=fe-Math.floor(fe);for(Ae=0;Ae<Math.floor(fe);Ae++)Ie=Math.floor(Math.random()*ee).toString(ee),be=Ie+be;Ze&&(Be=Math.pow(ee,Ze),Ie=Math.floor(Math.random()*Be).toString(ee),be=Ie+be);var at=parseInt(be,ee);return ne&&ne[be]||at!==1/0&&at>=Math.pow(2,j)?ie>10?(a.warn("randstr failed uniqueness"),be):re(ne,j,ee,(ie||0)+1):be},a.OptionControl=function(re,ne){re||(re={}),ne||(ne="opt");var j={};return j.optionList=[],j._newoption=function(ee){ee[ne]=re,j[ee.name]=ee,j.optionList.push(ee)},j["_"+ne]=re,j},a.smooth=function(re,ne){if(ne=Math.round(ne)||0,ne<2)return re;var j=re.length,ee=2*j,ie=2*ne-1,fe=new Array(ie),be=new Array(j),Ae,Be,Ie,Ze;for(Ae=0;Ae<ie;Ae++)fe[Ae]=(1-Math.cos(Math.PI*(Ae+1)/ne))/(2*ne);for(Ae=0;Ae<j;Ae++){for(Ze=0,Be=0;Be<ie;Be++)Ie=Ae+Be+1-ne,Ie<-j?Ie-=ee*Math.round(Ie/ee):Ie>=ee&&(Ie-=ee*Math.floor(Ie/ee)),Ie<0?Ie=-1-Ie:Ie>=j&&(Ie=ee-1-Ie),Ze+=re[Ie]*fe[Be];be[Ae]=Ze}return be},a.syncOrAsync=function(re,ne,j){var ee,ie;function fe(){return a.syncOrAsync(re,ne,j)}for(;re.length;)if(ie=re.splice(0,1)[0],ee=ie(ne),ee&&ee.then)return ee.then(fe);return j&&j(ne)},a.stripTrailingSlash=function(re){return re.substr(-1)==="/"?re.substr(0,re.length-1):re},a.noneOrAll=function(re,ne,j){if(re){var ee=!1,ie=!0,fe,be;for(fe=0;fe<j.length;fe++)be=re[j[fe]],be!=null?ee=!0:ie=!1;if(ee&&!ie)for(fe=0;fe<j.length;fe++)re[j[fe]]=ne[j[fe]]}},a.mergeArray=function(re,ne,j,ee){var ie=typeof ee=="function";if(a.isArrayOrTypedArray(re))for(var fe=Math.min(re.length,ne.length),be=0;be<fe;be++){var Ae=re[be];ne[be][j]=ie?ee(Ae):Ae}},a.mergeArrayCastPositive=function(re,ne,j){return a.mergeArray(re,ne,j,function(ee){var ie=+ee;return isFinite(ie)&&ie>0?ie:0})},a.fillArray=function(re,ne,j,ee){if(ee=ee||a.identity,a.isArrayOrTypedArray(re))for(var ie=0;ie<ne.length;ie++)ne[ie][j]=ee(re[ie])},a.castOption=function(re,ne,j,ee){ee=ee||a.identity;var ie=a.nestedProperty(re,j).get();return a.isArrayOrTypedArray(ie)?Array.isArray(ne)&&a.isArrayOrTypedArray(ie[ne[0]])?ee(ie[ne[0]][ne[1]]):ee(ie[ne]):ie},a.extractOption=function(re,ne,j,ee){if(j in re)return re[j];var ie=a.nestedProperty(ne,ee).get();if(!Array.isArray(ie))return ie};function u(re){var ne={};for(var j in re)for(var ee=re[j],ie=0;ie<ee.length;ie++)ne[ee[ie]]=+j;return ne}a.tagSelected=function(re,ne,j){var ee=ne.selectedpoints,ie=ne._indexToPoints,fe;ie&&(fe=u(ie));function be(at){return at!==void 0&&at<re.length}for(var Ae=0;Ae<ee.length;Ae++){var Be=ee[Ae];if(a.isIndex(Be)||a.isArrayOrTypedArray(Be)&&a.isIndex(Be[0])&&a.isIndex(Be[1])){var Ie=fe?fe[Be]:Be,Ze=j?j[Ie]:Ie;be(Ze)&&(re[Ze].selected=1)}}},a.selIndices2selPoints=function(re){var ne=re.selectedpoints,j=re._indexToPoints;if(j){for(var ee=u(j),ie=[],fe=0;fe<ne.length;fe++){var be=ne[fe];if(a.isIndex(be)){var Ae=ee[be];a.isIndex(Ae)&&ie.push(Ae)}}return ie}else return ne},a.getTargetArray=function(re,ne){var j=ne.target;if(typeof j=="string"&&j){var ee=a.nestedProperty(re,j).get();return a.isArrayOrTypedArray(ee)?ee:!1}else if(a.isArrayOrTypedArray(j))return j;return!1};function y(re,ne,j){var ee={};typeof ne!="object"&&(ne={});var ie=j==="pieLike"?-1:3,fe=Object.keys(re),be,Ae,Be;for(be=0;be<fe.length;be++)Ae=fe[be],Be=re[Ae],!(Ae.charAt(0)==="_"||typeof Be=="function")&&(Ae==="module"?ee[Ae]=Be:Array.isArray(Be)?Ae==="colorscale"||ie===-1?ee[Ae]=Be.slice():ee[Ae]=Be.slice(0,ie):a.isTypedArray(Be)?ie===-1?ee[Ae]=Be.subarray():ee[Ae]=Be.subarray(0,ie):Be&&typeof Be=="object"?ee[Ae]=y(re[Ae],ne[Ae],j):ee[Ae]=Be);for(fe=Object.keys(ne),be=0;be<fe.length;be++)Ae=fe[be],Be=ne[Ae],(typeof Be!="object"||!(Ae in ee)||typeof ee[Ae]!="object")&&(ee[Ae]=Be);return ee}a.minExtend=y,a.titleCase=function(re){return re.charAt(0).toUpperCase()+re.substr(1)},a.containsAny=function(re,ne){for(var j=0;j<ne.length;j++)if(re.indexOf(ne[j])!==-1)return!0;return!1};var f=/Version\/[\d\.]+.*Safari/;a.isSafari=function(){return f.test(window.navigator.userAgent)};var P=/iPad|iPhone|iPod/;a.isIOS=function(){return P.test(window.navigator.userAgent)};var L=/Firefox\/(\d+)\.\d+/;a.getFirefoxVersion=function(){var re=L.exec(window.navigator.userAgent);if(re&&re.length===2){var ne=parseInt(re[1]);if(!isNaN(ne))return ne}return null},a.isD3Selection=function(re){return re instanceof g.selection},a.ensureSingle=function(re,ne,j,ee){var ie=re.select(ne+(j?"."+j:""));if(ie.size())return ie;var fe=re.append(ne);return j&&fe.classed(j,!0),ee&&fe.call(ee),fe},a.ensureSingleById=function(re,ne,j,ee){var ie=re.select(ne+"#"+j);if(ie.size())return ie;var fe=re.append(ne).attr("id",j);return ee&&fe.call(ee),fe},a.objectFromPath=function(re,ne){for(var j=re.split("."),ee,ie=ee={},fe=0;fe<j.length;fe++){var be=j[fe],Ae=null,Be=j[fe].match(/(.*)\[([0-9]+)\]/);Be?(be=Be[1],Ae=Be[2],ee=ee[be]=[],fe===j.length-1?ee[Ae]=ne:ee[Ae]={},ee=ee[Ae]):(fe===j.length-1?ee[be]=ne:ee[be]={},ee=ee[be])}return ie};var z=/^([^\[\.]+)\.(.+)?/,F=/^([^\.]+)\[([0-9]+)\](\.)?(.+)?/;function B(re){return re.slice(0,2)==="__"}a.expandObjectPaths=function(re){var ne,j,ee,ie,fe,be,Ae;if(typeof re=="object"&&!Array.isArray(re)){for(j in re)if(re.hasOwnProperty(j))if(ne=j.match(z)){if(ie=re[j],ee=ne[1],B(ee))continue;delete re[j],re[ee]=a.extendDeepNoArrays(re[ee]||{},a.objectFromPath(j,a.expandObjectPaths(ie))[ee])}else if(ne=j.match(F)){if(ie=re[j],ee=ne[1],B(ee))continue;if(fe=parseInt(ne[2]),delete re[j],re[ee]=re[ee]||[],ne[3]===".")Ae=ne[4],be=re[ee][fe]=re[ee][fe]||{},a.extendDeepNoArrays(be,a.objectFromPath(Ae,a.expandObjectPaths(ie)));else{if(B(ee))continue;re[ee][fe]=a.expandObjectPaths(ie)}}else{if(B(j))continue;re[j]=a.expandObjectPaths(re[j])}}return re},a.numSeparate=function(re,ne,j){if(j||(j=!1),typeof ne!="string"||ne.length===0)throw new Error("Separator string required for formatting!");typeof re=="number"&&(re=String(re));var ee=/(\d+)(\d{3})/,ie=ne.charAt(0),fe=ne.charAt(1),be=re.split("."),Ae=be[0],Be=be.length>1?ie+be[1]:"";if(fe&&(be.length>1||Ae.length>4||j))for(;ee.test(Ae);)Ae=Ae.replace(ee,"$1"+fe+"$2");return Ae+Be},a.TEMPLATE_STRING_REGEX=/%{([^\s%{}:]*)([:|\|][^}]*)?}/g;var O=/^\w*$/;a.templateString=function(re,ne){var j={};return re.replace(a.TEMPLATE_STRING_REGEX,function(ee,ie){var fe;return O.test(ie)?fe=ne[ie]:(j[ie]=j[ie]||a.nestedProperty(ne,ie).get,fe=j[ie](!0)),fe!==void 0?fe:""})};var I={max:10,count:0,name:"hovertemplate"};a.hovertemplateString=function(){return se.apply(I,arguments)};var N={max:10,count:0,name:"texttemplate"};a.texttemplateString=function(){return se.apply(N,arguments)};var U=/^(\S+)([\*\/])(-?\d+(\.\d+)?)$/;function W(re){var ne=re.match(U);return ne?{key:ne[1],op:ne[2],number:Number(ne[3])}:{key:re,op:null,number:null}}var Q={max:10,count:0,name:"texttemplate",parseMultDiv:!0};a.texttemplateStringForShapes=function(){return se.apply(Q,arguments)};var ue=/^[:|\|]/;function se(re,ne,j){var ee=this,ie=arguments;return ne||(ne={}),re.replace(a.TEMPLATE_STRING_REGEX,function(fe,be,Ae){var Be=be==="xother"||be==="yother",Ie=be==="_xother"||be==="_yother",Ze=be==="_xother_"||be==="_yother_",at=be==="xother_"||be==="yother_",it=Be||Ie||at||Ze,et=be;(Ie||Ze)&&(et=et.substring(1)),(at||Ze)&&(et=et.substring(0,et.length-1));var lt=null,Me=null;if(ee.parseMultDiv){var ge=W(et);et=ge.key,lt=ge.op,Me=ge.number}var ce;if(it){if(ce=ne[et],ce===void 0)return""}else{var ze,tt;for(tt=3;tt<ie.length;tt++)if(ze=ie[tt],!!ze){if(ze.hasOwnProperty(et)){ce=ze[et];break}if(O.test(et)||(ce=a.nestedProperty(ze,et).get(!0)),ce!==void 0)break}}if(ce!==void 0&&(lt==="*"&&(ce*=Me),lt==="/"&&(ce/=Me)),ce===void 0&&ee)return ee.count<ee.max&&(a.warn("Variable '"+et+"' in "+ee.name+" could not be found!"),ce=fe),ee.count===ee.max&&a.warn("Too many "+ee.name+" warnings - additional warnings will be suppressed"),ee.count++,fe;if(Ae){var nt;if(Ae[0]===":"&&(nt=j?j.numberFormat:a.numberFormat,ce!==""&&(ce=nt(Ae.replace(ue,""))(ce))),Ae[0]==="|"){nt=j?j.timeFormat:x;var Qe=a.dateTime2ms(ce);ce=a.formatDate(Qe,Ae.replace(ue,""),!1,nt)}}else{var Ct=et+"Label";ne.hasOwnProperty(Ct)&&(ce=ne[Ct])}return it&&(ce="("+ce+")",(Ie||Ze)&&(ce=" "+ce),(at||Ze)&&(ce=ce+" ")),ce})}var he=48,G=57;a.subplotSort=function(re,ne){for(var j=Math.min(re.length,ne.length)+1,ee=0,ie=0,fe=0;fe<j;fe++){var be=re.charCodeAt(fe)||0,Ae=ne.charCodeAt(fe)||0,Be=be>=he&&be<=G,Ie=Ae>=he&&Ae<=G;if(Be&&(ee=10*ee+be-he),Ie&&(ie=10*ie+Ae-he),!Be||!Ie){if(ee!==ie)return ee-ie;if(be!==Ae)return be-Ae}}return ie-ee};var $=2e9;a.seedPseudoRandom=function(){$=2e9},a.pseudoRandom=function(){var re=$;return $=(69069*$+1)%4294967296,Math.abs($-re)<429496729?a.pseudoRandom():$/4294967296},a.fillText=function(re,ne,j){var ee=Array.isArray(j)?function(be){j.push(be)}:function(be){j.text=be},ie=a.extractOption(re,ne,"htx","hovertext");if(a.isValidTextValue(ie))return ee(ie);var fe=a.extractOption(re,ne,"tx","text");if(a.isValidTextValue(fe))return ee(fe)},a.isValidTextValue=function(re){return re||re===0},a.formatPercent=function(re,ne){ne=ne||0;for(var j=(Math.round(100*re*Math.pow(10,ne))*Math.pow(.1,ne)).toFixed(ne)+"%",ee=0;ee<ne;ee++)j.indexOf(".")!==-1&&(j=j.replace("0%","%"),j=j.replace(".%","%"));return j},a.isHidden=function(re){var ne=window.getComputedStyle(re).display;return!ne||ne==="none"},a.strTranslate=function(re,ne){return re||ne?"translate("+re+","+ne+")":""},a.strRotate=function(re){return re?"rotate("+re+")":""},a.strScale=function(re){return re!==1?"scale("+re+")":""},a.getTextTransform=function(re){var ne=re.noCenter,j=re.textX,ee=re.textY,ie=re.targetX,fe=re.targetY,be=re.anchorX||0,Ae=re.anchorY||0,Be=re.rotate,Ie=re.scale;return Ie?Ie>1&&(Ie=1):Ie=0,a.strTranslate(ie-Ie*(j+be),fe-Ie*(ee+Ae))+a.strScale(Ie)+(Be?"rotate("+Be+(ne?"":" "+j+" "+ee)+")":"")},a.setTransormAndDisplay=function(re,ne){re.attr("transform",a.getTextTransform(ne)),re.style("display",ne.scale?null:"none")},a.ensureUniformFontSize=function(re,ne){var j=a.extendFlat({},ne);return j.size=Math.max(ne.size,re._fullLayout.uniformtext.minsize||0),j},a.join2=function(re,ne,j){var ee=re.length;return ee>1?re.slice(0,-1).join(ne)+j+re[ee-1]:re.join(ne)},a.bigFont=function(re){return Math.round(1.2*re)};var J=a.getFirefoxVersion(),Z=J!==null&&J<86;a.getPositionFromD3Event=function(){return Z?[g.event.layerX,g.event.layerY]:[g.event.offsetX,g.event.offsetY]}}}),$F=Ye({"build/plotcss.js"(){"use strict";var X=ta(),H={"X,X div":'direction:ltr;font-family:"Open Sans",verdana,arial,sans-serif;margin:0;padding:0;',"X input,X button":'font-family:"Open Sans",verdana,arial,sans-serif;',"X input:focus,X button:focus":"outline:none;","X a":"text-decoration:none;","X a:hover":"text-decoration:none;","X .crisp":"shape-rendering:crispEdges;","X .user-select-none":"-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;","X svg a":"fill:#447adb;","X svg a:hover":"fill:#3c6dc5;","X .main-svg":"position:absolute;top:0;left:0;pointer-events:none;","X .main-svg .draglayer":"pointer-events:all;","X .cursor-default":"cursor:default;","X .cursor-pointer":"cursor:pointer;","X .cursor-crosshair":"cursor:crosshair;","X .cursor-move":"cursor:move;","X .cursor-col-resize":"cursor:col-resize;","X .cursor-row-resize":"cursor:row-resize;","X .cursor-ns-resize":"cursor:ns-resize;","X .cursor-ew-resize":"cursor:ew-resize;","X .cursor-sw-resize":"cursor:sw-resize;","X .cursor-s-resize":"cursor:s-resize;","X .cursor-se-resize":"cursor:se-resize;","X .cursor-w-resize":"cursor:w-resize;","X .cursor-e-resize":"cursor:e-resize;","X .cursor-nw-resize":"cursor:nw-resize;","X .cursor-n-resize":"cursor:n-resize;","X .cursor-ne-resize":"cursor:ne-resize;","X .cursor-grab":"cursor:-webkit-grab;cursor:grab;","X .modebar":"position:absolute;top:2px;right:2px;","X .ease-bg":"-webkit-transition:background-color .3s ease 0s;-moz-transition:background-color .3s ease 0s;-ms-transition:background-color .3s ease 0s;-o-transition:background-color .3s ease 0s;transition:background-color .3s ease 0s;","X .modebar--hover>:not(.watermark)":"opacity:0;-webkit-transition:opacity .3s ease 0s;-moz-transition:opacity .3s ease 0s;-ms-transition:opacity .3s ease 0s;-o-transition:opacity .3s ease 0s;transition:opacity .3s ease 0s;","X:hover .modebar--hover .modebar-group":"opacity:1;","X .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:rgba(0,0,0,0);border:6px solid rgba(0,0,0,0);z-index:1002;margin-top:-12px;border-bottom-color:#69738a;margin-right:-6px;',"X [data-title]:after":"content:attr(data-title);background:#69738a;color:#fff;padding:8px 10px;font-size:12px;line-height:12px;white-space:nowrap;margin-right:-18px;border-radius:2px;","X .vertical [data-title]:before,X .vertical [data-title]:after":"top:0%;right:200%;","X .vertical [data-title]:before":"border:6px solid rgba(0,0,0,0);border-left-color:#69738a;margin-top:8px;margin-right:-30px;",Y:'font-family:"Open Sans",verdana,arial,sans-serif;position:fixed;top:50px;right:20px;z-index:10000;font-size:10pt;max-width:180px;',"Y p":"margin:0;","Y .notifier-note":"min-width:180px;max-width:250px;border:1px solid #fff;z-index:3000;margin:0;background-color:#8c97af;background-color:rgba(140,151,175,.9);color:#fff;padding:10px;overflow-wrap:break-word;word-wrap:break-word;-ms-hyphens:auto;-webkit-hyphens:auto;hyphens:auto;","Y .notifier-close":"color:#fff;opacity:.8;float:right;padding:0 5px;background:none;border:none;font-size:20px;font-weight:bold;line-height:20px;","Y .notifier-close:hover":"color:#444;text-decoration:none;cursor:pointer;"};for(x in H)g=x.replace(/^,/," ,").replace(/X/g,".js-plotly-plot .plotly").replace(/Y/g,".plotly-notifier"),X.addStyleRule(g,H[x]);var g,x}}),rS=Ye({"node_modules/is-browser/client.js"(X,H){H.exports=!0}}),aS=Ye({"node_modules/has-hover/index.js"(X,H){"use strict";var g=rS(),x;typeof window.matchMedia=="function"?x=!window.matchMedia("(hover: none)").matches:x=g,H.exports=x}}),Wg=Ye({"node_modules/events/events.js"(X,H){"use strict";var g=typeof Reflect=="object"?Reflect:null,x=g&&typeof g.apply=="function"?g.apply:function(E,m,b){return Function.prototype.apply.call(E,m,b)},A;g&&typeof g.ownKeys=="function"?A=g.ownKeys:Object.getOwnPropertySymbols?A=function(E){return Object.getOwnPropertyNames(E).concat(Object.getOwnPropertySymbols(E))}:A=function(E){return Object.getOwnPropertyNames(E)};function M(S){console&&console.warn&&console.warn(S)}var e=Number.isNaN||function(E){return E!==E};function t(){t.init.call(this)}H.exports=t,H.exports.once=l,t.EventEmitter=t,t.prototype._events=void 0,t.prototype._eventsCount=0,t.prototype._maxListeners=void 0;var r=10;function o(S){if(typeof S!="function")throw new TypeError('The "listener" argument must be of type Function. Received type '+typeof S)}Object.defineProperty(t,"defaultMaxListeners",{enumerable:!0,get:function(){return r},set:function(S){if(typeof S!="number"||S<0||e(S))throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+S+".");r=S}}),t.init=function(){(this._events===void 0||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},t.prototype.setMaxListeners=function(E){if(typeof E!="number"||E<0||e(E))throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+E+".");return this._maxListeners=E,this};function a(S){return S._maxListeners===void 0?t.defaultMaxListeners:S._maxListeners}t.prototype.getMaxListeners=function(){return a(this)},t.prototype.emit=function(E){for(var m=[],b=1;b<arguments.length;b++)m.push(arguments[b]);var d=E==="error",u=this._events;if(u!==void 0)d=d&&u.error===void 0;else if(!d)return!1;if(d){var y;if(m.length>0&&(y=m[0]),y instanceof Error)throw y;var f=new Error("Unhandled error."+(y?" ("+y.message+")":""));throw f.context=y,f}var P=u[E];if(P===void 0)return!1;if(typeof P=="function")x(P,this,m);else for(var L=P.length,z=v(P,L),b=0;b<L;++b)x(z[b],this,m);return!0};function i(S,E,m,b){var d,u,y;if(o(m),u=S._events,u===void 0?(u=S._events=Object.create(null),S._eventsCount=0):(u.newListener!==void 0&&(S.emit("newListener",E,m.listener?m.listener:m),u=S._events),y=u[E]),y===void 0)y=u[E]=m,++S._eventsCount;else if(typeof y=="function"?y=u[E]=b?[m,y]:[y,m]:b?y.unshift(m):y.push(m),d=a(S),d>0&&y.length>d&&!y.warned){y.warned=!0;var f=new Error("Possible EventEmitter memory leak detected. "+y.length+" "+String(E)+" listeners added. Use emitter.setMaxListeners() to increase limit");f.name="MaxListenersExceededWarning",f.emitter=S,f.type=E,f.count=y.length,M(f)}return S}t.prototype.addListener=function(E,m){return i(this,E,m,!1)},t.prototype.on=t.prototype.addListener,t.prototype.prependListener=function(E,m){return i(this,E,m,!0)};function n(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,arguments.length===0?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function s(S,E,m){var b={fired:!1,wrapFn:void 0,target:S,type:E,listener:m},d=n.bind(b);return d.listener=m,b.wrapFn=d,d}t.prototype.once=function(E,m){return o(m),this.on(E,s(this,E,m)),this},t.prototype.prependOnceListener=function(E,m){return o(m),this.prependListener(E,s(this,E,m)),this},t.prototype.removeListener=function(E,m){var b,d,u,y,f;if(o(m),d=this._events,d===void 0)return this;if(b=d[E],b===void 0)return this;if(b===m||b.listener===m)--this._eventsCount===0?this._events=Object.create(null):(delete d[E],d.removeListener&&this.emit("removeListener",E,b.listener||m));else if(typeof b!="function"){for(u=-1,y=b.length-1;y>=0;y--)if(b[y]===m||b[y].listener===m){f=b[y].listener,u=y;break}if(u<0)return this;u===0?b.shift():p(b,u),b.length===1&&(d[E]=b[0]),d.removeListener!==void 0&&this.emit("removeListener",E,f||m)}return this},t.prototype.off=t.prototype.removeListener,t.prototype.removeAllListeners=function(E){var m,b,d;if(b=this._events,b===void 0)return this;if(b.removeListener===void 0)return arguments.length===0?(this._events=Object.create(null),this._eventsCount=0):b[E]!==void 0&&(--this._eventsCount===0?this._events=Object.create(null):delete b[E]),this;if(arguments.length===0){var u=Object.keys(b),y;for(d=0;d<u.length;++d)y=u[d],y!=="removeListener"&&this.removeAllListeners(y);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if(m=b[E],typeof m=="function")this.removeListener(E,m);else if(m!==void 0)for(d=m.length-1;d>=0;d--)this.removeListener(E,m[d]);return this};function c(S,E,m){var b=S._events;if(b===void 0)return[];var d=b[E];return d===void 0?[]:typeof d=="function"?m?[d.listener||d]:[d]:m?T(d):v(d,d.length)}t.prototype.listeners=function(E){return c(this,E,!0)},t.prototype.rawListeners=function(E){return c(this,E,!1)},t.listenerCount=function(S,E){return typeof S.listenerCount=="function"?S.listenerCount(E):h.call(S,E)},t.prototype.listenerCount=h;function h(S){var E=this._events;if(E!==void 0){var m=E[S];if(typeof m=="function")return 1;if(m!==void 0)return m.length}return 0}t.prototype.eventNames=function(){return this._eventsCount>0?A(this._events):[]};function v(S,E){for(var m=new Array(E),b=0;b<E;++b)m[b]=S[b];return m}function p(S,E){for(;E+1<S.length;E++)S[E]=S[E+1];S.pop()}function T(S){for(var E=new Array(S.length),m=0;m<E.length;++m)E[m]=S[m].listener||S[m];return E}function l(S,E){return new Promise(function(m,b){function d(y){S.removeListener(E,u),b(y)}function u(){typeof S.removeListener=="function"&&S.removeListener("error",d),m([].slice.call(arguments))}w(S,E,u,{once:!0}),E!=="error"&&_(S,d,{once:!0})})}function _(S,E,m){typeof S.on=="function"&&w(S,"error",E,m)}function w(S,E,m,b){if(typeof S.on=="function")b.once?S.once(E,m):S.on(E,m);else if(typeof S.addEventListener=="function")S.addEventListener(E,function d(u){b.once&&S.removeEventListener(E,d),m(u)});else throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof S)}}}),$y=Ye({"src/lib/events.js"(X,H){"use strict";var g=Wg().EventEmitter,x={init:function(A){if(A._ev instanceof g)return A;var M=new g,e=new g;return A._ev=M,A._internalEv=e,A.on=M.on.bind(M),A.once=M.once.bind(M),A.removeListener=M.removeListener.bind(M),A.removeAllListeners=M.removeAllListeners.bind(M),A._internalOn=e.on.bind(e),A._internalOnce=e.once.bind(e),A._removeInternalListener=e.removeListener.bind(e),A._removeAllInternalListeners=e.removeAllListeners.bind(e),A.emit=function(t,r){M.emit(t,r),e.emit(t,r)},A},triggerHandler:function(A,M,e){var t,r=A._ev;if(!r)return;var o=r._events[M];if(!o)return;function a(n){if(n.listener){if(r.removeListener(M,n.listener),!n.fired)return n.fired=!0,n.listener.apply(r,[e])}else return n.apply(r,[e])}o=Array.isArray(o)?o:[o];var i;for(i=0;i<o.length-1;i++)a(o[i]);return t=a(o[i]),t},purge:function(A){return delete A._ev,delete A.on,delete A.once,delete A.removeListener,delete A.removeAllListeners,delete A.emit,delete A._ev,delete A._internalEv,delete A._internalOn,delete A._internalOnce,delete A._removeInternalListener,delete A._removeAllInternalListeners,A}};H.exports=x}}),QF=Ye({"src/lib/queue.js"(X,H){"use strict";var g=ta(),x=Gg().dfltConfig;function A(e,t){for(var r=[],o,a=0;a<t.length;a++)o=t[a],o===e?r[a]=o:typeof o=="object"?r[a]=Array.isArray(o)?g.extendDeep([],o):g.extendDeepAll({},o):r[a]=o;return r}var M={};M.add=function(e,t,r,o,a){var i,n;if(e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},n=e.undoQueue.index,e.autoplay){e.undoQueue.inSequence||(e.autoplay=!1);return}!e.undoQueue.sequence||e.undoQueue.beginSequence?(i={undo:{calls:[],args:[]},redo:{calls:[],args:[]}},e.undoQueue.queue.splice(n,e.undoQueue.queue.length-n,i),e.undoQueue.index+=1):i=e.undoQueue.queue[n-1],e.undoQueue.beginSequence=!1,i&&(i.undo.calls.unshift(t),i.undo.args.unshift(r),i.redo.calls.push(o),i.redo.args.push(a)),e.undoQueue.queue.length>x.queueLength&&(e.undoQueue.queue.shift(),e.undoQueue.index--)},M.startSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!0,e.undoQueue.beginSequence=!0},M.stopSequence=function(e){e.undoQueue=e.undoQueue||{index:0,queue:[],sequence:!1},e.undoQueue.sequence=!1,e.undoQueue.beginSequence=!1},M.undo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index<=0)){for(t.undoQueue.index--,r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o<r.undo.calls.length;o++)M.plotDo(t,r.undo.calls[o],r.undo.args[o]);t.undoQueue.inSequence=!1,t.autoplay=!1}},M.redo=function(t){var r,o;if(!(t.undoQueue===void 0||isNaN(t.undoQueue.index)||t.undoQueue.index>=t.undoQueue.queue.length)){for(r=t.undoQueue.queue[t.undoQueue.index],t.undoQueue.inSequence=!0,o=0;o<r.redo.calls.length;o++)M.plotDo(t,r.redo.calls[o],r.redo.args[o]);t.undoQueue.inSequence=!1,t.autoplay=!1,t.undoQueue.index++}},M.plotDo=function(e,t,r){e.autoplay=!0,r=A(e,r),t.apply(null,r)},H.exports=M}}),iS=Ye({"src/plots/frame_attributes.js"(X,H){"use strict";H.exports={_isLinkedToArray:"frames_entry",group:{valType:"string"},name:{valType:"string"},traces:{valType:"any"},baseframe:{valType:"string"},data:{valType:"any"},layout:{valType:"any"}}}}),Qy=Ye({"src/plot_api/plot_schema.js"(X){"use strict";var H=Hn(),g=ta(),x=Pl(),A=Jy(),M=iS(),e=w_(),t=Gg().configAttributes,r=Ou(),o=g.extendDeepAll,a=g.isPlainObject,i=g.isArrayOrTypedArray,n=g.nestedProperty,s=g.valObjectMeta,c="_isSubplotObj",h="_isLinkedToArray",v="_arrayAttrRegexps",p="_deprecated",T=[c,h,v,p];X.IS_SUBPLOT_OBJ=c,X.IS_LINKED_TO_ARRAY=h,X.DEPRECATED=p,X.UNDERSCORE_ATTRS=T,X.get=function(){var L={};return H.allTypes.forEach(function(z){L[z]=S(z)}),{defs:{valObjects:s,metaKeys:T.concat(["description","role","editType","impliedEdits"]),editType:{traces:r.traces,layout:r.layout},impliedEdits:{}},traces:L,layout:E(),frames:m(),animation:b(e),config:b(t)}},X.crawl=function(L,z,F,B){var O=F||0;B=B||"",Object.keys(L).forEach(function(I){var N=L[I];if(T.indexOf(I)===-1){var U=(B?B+".":"")+I;z(N,I,L,O,U),!X.isValObject(N)&&a(N)&&I!=="impliedEdits"&&X.crawl(N,z,O+1,U)}})},X.isValObject=function(L){return L&&L.valType!==void 0},X.findArrayAttributes=function(L){var z=[],F=[],B=[],O,I;function N(W,Q,ue,se){F=F.slice(0,se).concat([Q]),B=B.slice(0,se).concat([W&&W._isLinkedToArray]);var he=W&&(W.valType==="data_array"||W.arrayOk===!0)&&!(F[se-1]==="colorbar"&&(Q==="ticktext"||Q==="tickvals"));he&&U(O,0,"")}function U(W,Q,ue){var se=W[F[Q]],he=ue+F[Q];if(Q===F.length-1)i(se)&&z.push(I+he);else if(B[Q]){if(Array.isArray(se))for(var G=0;G<se.length;G++)a(se[G])&&U(se[G],Q+1,he+"["+G+"].")}else a(se)&&U(se,Q+1,he+".")}return O=L,I="",X.crawl(x,N),L._module&&L._module.attributes&&X.crawl(L._module.attributes,N),z},X.getTraceValObject=function(L,z){var F=z[0],B=1,O,I,N=L._module;if(N||(N=(H.modules[L.type||x.type.dflt]||{})._module),!N)return!1;if(O=N.attributes,I=O&&O[F],!I){var U=N.basePlotModule;U&&U.attributes&&(I=U.attributes[F])}return I||(I=x[F]),_(I,z,B)},X.getLayoutValObject=function(L,z){var F=l(L,z[0]);return _(F,z,1)};function l(L,z){var F,B,O,I,N=L._basePlotModules;if(N){var U;for(F=0;F<N.length;F++){if(O=N[F],O.attrRegex&&O.attrRegex.test(z)){if(O.layoutAttrOverrides)return O.layoutAttrOverrides;!U&&O.layoutAttributes&&(U=O.layoutAttributes)}var W=O.baseLayoutAttrOverrides;if(W&&z in W)return W[z]}if(U)return U}var Q=L._modules;if(Q){for(F=0;F<Q.length;F++)if(I=Q[F].layoutAttributes,I&&z in I)return I[z]}for(B in H.componentsRegistry){if(O=H.componentsRegistry[B],O.name==="colorscale"&&z.indexOf("coloraxis")===0)return O.layoutAttributes[z];if(!O.schema&&z===O.name)return O.layoutAttributes}return z in A?A[z]:!1}function _(L,z,F){if(!L)return!1;if(L._isLinkedToArray){if(w(z[F]))F++;else if(F<z.length)return!1}for(;F<z.length;F++){var B=L[z[F]];if(a(B))L=B;else break;if(F===z.length-1)break;if(L._isLinkedToArray){if(F++,!w(z[F]))return!1}else if(L.valType==="info_array"){F++;var O=z[F];if(!w(O))return!1;var I=L.items;if(Array.isArray(I)){if(O>=I.length)return!1;if(L.dimensions===2){if(F++,z.length===F)return L;var N=z[F];if(!w(N))return!1;L=I[O][N]}else L=I[O]}else L=I}}return L}function w(L){return L===Math.round(L)&&L>=0}function S(L){var z,F;z=H.modules[L]._module,F=z.basePlotModule;var B={};B.type=null;var O=o({},x),I=o({},z.attributes);X.crawl(I,function(W,Q,ue,se,he){n(O,he).set(void 0),W===void 0&&n(I,he).set(void 0)}),o(B,O),H.traceIs(L,"noOpacity")&&delete B.opacity,H.traceIs(L,"showLegend")||(delete B.showlegend,delete B.legendgroup),H.traceIs(L,"noHover")&&(delete B.hoverinfo,delete B.hoverlabel),z.selectPoints||delete B.selectedpoints,o(B,I),F.attributes&&o(B,F.attributes),B.type=L;var N={meta:z.meta||{},categories:z.categories||{},animatable:!!z.animatable,type:L,attributes:b(B)};if(z.layoutAttributes){var U={};o(U,z.layoutAttributes),N.layoutAttributes=b(U)}return z.animatable||X.crawl(N,function(W){X.isValObject(W)&&"anim"in W&&delete W.anim}),N}function E(){var L={},z,F;o(L,A);for(z in H.subplotsRegistry)if(F=H.subplotsRegistry[z],!!F.layoutAttributes)if(Array.isArray(F.attr))for(var B=0;B<F.attr.length;B++)f(L,F,F.attr[B]);else{var O=F.attr==="subplot"?F.name:F.attr;f(L,F,O)}for(z in H.componentsRegistry){F=H.componentsRegistry[z];var I=F.schema;if(I&&(I.subplots||I.layout)){var N=I.subplots;if(N&&N.xaxis&&!N.yaxis)for(var U in N.xaxis)delete L.yaxis[U];delete L.xaxis.shift,delete L.xaxis.autoshift}else F.name==="colorscale"?o(L,F.layoutAttributes):F.layoutAttributes&&P(L,F.layoutAttributes,F.name)}return{layoutAttributes:b(L)}}function m(){var L={frames:o({},M)};return b(L),L.frames}function b(L){return d(L),u(L),y(L),L}function d(L){function z(B){return{valType:"string",editType:"none"}}function F(B,O,I){X.isValObject(B)?(B.arrayOk===!0||B.valType==="data_array")&&(I[O+"src"]=z(O)):a(B)&&(B.role="object")}X.crawl(L,F)}function u(L){function z(F,B,O){if(F){var I=F[h];I&&(delete F[h],O[B]={items:{}},O[B].items[I]=F,O[B].role="object")}}X.crawl(L,z)}function y(L){function z(F){for(var B in F)if(a(F[B]))z(F[B]);else if(Array.isArray(F[B]))for(var O=0;O<F[B].length;O++)z(F[B][O]);else F[B]instanceof RegExp&&(F[B]=F[B].toString())}z(L)}function f(L,z,F){var B=n(L,F),O=o({},z.layoutAttributes);O[c]=!0,B.set(O)}function P(L,z,F){var B=n(L,F);B.set(o(B.get()||{},z))}}}),cl=Ye({"src/plot_api/plot_template.js"(X){"use strict";var H=ta(),g=Pl(),x="templateitemname",A={name:{valType:"string",editType:"none"}};A[x]={valType:"string",editType:"calc"},X.templatedArray=function(t,r){return r._isLinkedToArray=t,r.name=A.name,r[x]=A[x],r},X.traceTemplater=function(t){var r={},o,a;for(o in t)a=t[o],Array.isArray(a)&&a.length&&(r[o]=0);function i(n){o=H.coerce(n,{},g,"type");var s={type:o,_template:null};if(o in r){a=t[o];var c=r[o]%a.length;r[o]++,s._template=a[c]}return s}return{newTrace:i}},X.newContainer=function(t,r,o){var a=t._template,i=a&&(a[r]||o&&a[o]);H.isPlainObject(i)||(i=null);var n=t[r]={_template:i};return n},X.arrayTemplater=function(t,r,o){var a=t._template,i=a&&a[e(r)],n=a&&a[r];(!Array.isArray(n)||!n.length)&&(n=[]);var s={};function c(v){var p={name:v.name,_input:v},T=p[x]=v[x];if(!M(T))return p._template=i,p;for(var l=0;l<n.length;l++){var _=n[l];if(_.name===T)return s[T]=1,p._template=_,p}return p[o]=v[o]||!1,p._template=!1,p}function h(){for(var v=[],p=0;p<n.length;p++){var T=n[p],l=T.name;if(M(l)&&!s[l]){var _={_template:T,name:l,_input:{_templateitemname:l}};_[x]=T[x],v.push(_),s[l]=1}}return v}return{newItem:c,defaultItems:h}};function M(t){return t&&typeof t=="string"}function e(t){var r=t.length-1;return t.charAt(r)!=="s"&&H.warn("bad argument to arrayDefaultKey: "+t),t.substr(0,t.length-1)+"defaults"}X.arrayDefaultKey=e,X.arrayEditor=function(t,r,o){var a=(H.nestedProperty(t,r).get()||[]).length,i=o._index,n=i>=a&&(o._input||{})._templateitemname;n&&(i=a);var s=r+"["+i+"]",c;function h(){c={},n&&(c[s]={},c[s][x]=n)}h();function v(_,w){c[_]=w}function p(_,w){n?H.nestedProperty(c[s],_).set(w):c[s+"."+_]=w}function T(){var _=c;return h(),_}function l(_,w){_&&p(_,w);var S=T();for(var E in S)H.nestedProperty(t,E).set(S[E])}return{modifyBase:v,modifyItem:p,getUpdateObj:T,applyUpdate:l}}}}),wh=Ye({"src/plots/cartesian/constants.js"(X,H){"use strict";var g=Ky().counter;H.exports={idRegex:{x:g("x","( domain)?"),y:g("y","( domain)?")},attrRegex:g("[xy]axis"),xAxisMatch:g("xaxis"),yAxisMatch:g("yaxis"),AX_ID_PATTERN:/^[xyz][0-9]*( domain)?$/,AX_NAME_PATTERN:/^[xyz]axis[0-9]*$/,SUBPLOT_PATTERN:/^x([0-9]*)y([0-9]*)$/,HOUR_PATTERN:"hour",WEEKDAY_PATTERN:"day of week",MINDRAG:8,MINZOOM:20,DRAGGERSIZE:20,REDRAWDELAY:50,DFLTRANGEX:[-1,6],DFLTRANGEY:[-1,4],traceLayerClasses:["imagelayer","heatmaplayer","contourcarpetlayer","contourlayer","funnellayer","waterfalllayer","barlayer","carpetlayer","violinlayer","boxlayer","ohlclayer","scattercarpetlayer","scatterlayer"],clipOnAxisFalseQuery:[".scatterlayer",".barlayer",".funnellayer",".waterfalllayer"],layerValue2layerClass:{"above traces":"above","below traces":"below"},zindexSeparator:"z"}}}),Xc=Ye({"src/plots/cartesian/axis_ids.js"(X){"use strict";var H=Hn(),g=wh();X.id2name=function(M){if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))){var e=M.split(" ")[0].substr(1);return e==="1"&&(e=""),M.charAt(0)+"axis"+e}},X.name2id=function(M){if(M.match(g.AX_NAME_PATTERN)){var e=M.substr(5);return e==="1"&&(e=""),M.charAt(0)+e}},X.cleanId=function(M,e,t){var r=/( domain)$/.test(M);if(!(typeof M!="string"||!M.match(g.AX_ID_PATTERN))&&!(e&&M.charAt(0)!==e)&&!(r&&!t)){var o=M.split(" ")[0].substr(1).replace(/^0+/,"");return o==="1"&&(o=""),M.charAt(0)+o+(r&&t?" domain":"")}},X.list=function(A,M,e){var t=A._fullLayout;if(!t)return[];var r=X.listIds(A,M),o=new Array(r.length),a;for(a=0;a<r.length;a++){var i=r[a];o[a]=t[i.charAt(0)+"axis"+i.substr(1)]}if(!e){var n=t._subplots.gl3d||[];for(a=0;a<n.length;a++){var s=t[n[a]];M?o.push(s[M+"axis"]):o.push(s.xaxis,s.yaxis,s.zaxis)}}return o},X.listIds=function(A,M){var e=A._fullLayout;if(!e)return[];var t=e._subplots;return M?t[M+"axis"]:t.xaxis.concat(t.yaxis)},X.getFromId=function(A,M,e){var t=A._fullLayout;return M=M===void 0||typeof M!="string"?M:M.replace(" domain",""),e==="x"?M=M.replace(/y[0-9]*/,""):e==="y"&&(M=M.replace(/x[0-9]*/,"")),t[X.id2name(M)]},X.getFromTrace=function(A,M,e){var t=A._fullLayout,r=null;if(H.traceIs(M,"gl3d")){var o=M.scene;o.substr(0,5)==="scene"&&(r=t[o][e+"axis"])}else r=X.getFromId(A,M[e+"axis"]||e);return r},X.idSort=function(A,M){var e=A.charAt(0),t=M.charAt(0);return e!==t?e>t?1:-1:+(A.substr(1)||1)-+(M.substr(1)||1)},X.ref2id=function(A){return/^[xyz]/.test(A)?A.split(" ")[0]:!1};function x(A,M){if(M&&M.length){for(var e=0;e<M.length;e++)if(M[e][A])return!0}return!1}X.isLinked=function(A,M){return x(M,A._axisMatchGroups)||x(M,A._axisConstraintGroups)}}}),Jm=Ye({"src/components/shapes/handle_outline.js"(X,H){"use strict";function g(A){var M=A._fullLayout._zoomlayer;M&&M.selectAll(".outline-controllers").remove()}function x(A){var M=A._fullLayout._zoomlayer;M&&M.selectAll(".select-outline").remove(),A._fullLayout._outlining=!1}H.exports={clearOutlineControllers:g,clearOutline:x}}}),g2=Ye({"src/traces/scatter/layout_attributes.js"(X,H){"use strict";H.exports={scattermode:{valType:"enumerated",values:["group","overlay"],dflt:"overlay",editType:"calc"},scattergap:{valType:"number",min:0,max:1,editType:"calc"}}}}),jh=Ye({"src/plots/get_data.js"(X){"use strict";var H=Hn(),g=wh().SUBPLOT_PATTERN;X.getSubplotCalcData=function(x,A,M){var e=H.subplotsRegistry[A];if(!e)return[];for(var t=e.attr,r=[],o=0;o<x.length;o++){var a=x[o],i=a[0].trace;i[t]===M&&r.push(a)}return r},X.getModuleCalcData=function(x,A,M){var e=[],t=[],r;if(typeof A=="string"?r=H.getModule(A).plot:typeof A=="function"?r=A:r=A.plot,!r)return[e,x];for(var o=M,a=0;a<x.length;a++){var i=x[a],n=i[0].trace,s=n.zorder!==void 0;n.visible!==!0||n._length===0||(n._module&&n._module.plot===r&&(!s||n.zorder===o)?e.push(i):t.push(i))}return[e,t]},X.getSubplotData=function(A,M,e){if(!H.subplotsRegistry[M])return[];for(var t=H.subplotsRegistry[M].attr,r=[],o,a,i,n=0;n<A.length;n++)o=A[n],o[t]===e&&r.push(o);return r}}}),eO=Ye({"src/plots/command.js"(X){"use strict";var H=Hn(),g=ta();X.manageCommandObserver=function(r,o,a,i){var n={},s=!0;o&&o._commandObserver&&(n=o._commandObserver),n.cache||(n.cache={}),n.lookupTable={};var c=X.hasSimpleAPICommandBindings(r,a,n.lookupTable);if(o&&o._commandObserver){if(c)return n;if(o._commandObserver.remove)return o._commandObserver.remove(),o._commandObserver=null,n}if(c){x(r,c,n.cache),n.check=function(){if(s){var T=x(r,c,n.cache);return T.changed&&i&&n.lookupTable[T.value]!==void 0&&(n.disable(),Promise.resolve(i({value:T.value,type:c.type,prop:c.prop,traces:c.traces,index:n.lookupTable[T.value]})).then(n.enable,n.enable)),T.changed}};for(var h=["plotly_relayout","plotly_redraw","plotly_restyle","plotly_update","plotly_animatingframe","plotly_afterplot"],v=0;v<h.length;v++)r._internalOn(h[v],n.check);n.remove=function(){for(var p=0;p<h.length;p++)r._removeInternalListener(h[p],n.check)}}else g.log("Unable to automatically bind plot updates to API command"),n.lookupTable={},n.remove=function(){};return n.disable=function(){s=!1},n.enable=function(){s=!0},o&&(o._commandObserver=n),n},X.hasSimpleAPICommandBindings=function(r,o,a){var i,n=o.length,s;for(i=0;i<n;i++){var c,h=o[i],v=h.method,p=h.args;if(Array.isArray(p)||(p=[]),!v)return!1;var T=X.computeAPICommandBindings(r,v,p);if(T.length!==1)return!1;if(!s)s=T[0],Array.isArray(s.traces)&&s.traces.sort();else{if(c=T[0],c.type!==s.type||c.prop!==s.prop)return!1;if(Array.isArray(s.traces))if(Array.isArray(c.traces)){c.traces.sort();for(var l=0;l<s.traces.length;l++)if(s.traces[l]!==c.traces[l])return!1}else return!1;else if(c.prop!==s.prop)return!1}c=T[0];var _=c.value;if(Array.isArray(_))if(_.length===1)_=_[0];else return!1;a&&(a[_]=i)}return s};function x(r,o,a){var i,n,s,c=!1;if(o.type==="data")i=r._fullData[o.traces!==null?o.traces[0]:0];else if(o.type==="layout")i=r._fullLayout;else return!1;return n=g.nestedProperty(i,o.prop).get(),s=a[o.type]=a[o.type]||{},s.hasOwnProperty(o.prop)&&s[o.prop]!==n&&(c=!0),s[o.prop]=n,{changed:c,value:n}}X.executeAPICommand=function(r,o,a){if(o==="skip")return Promise.resolve();var i=H.apiMethodRegistry[o],n=[r];Array.isArray(a)||(a=[]);for(var s=0;s<a.length;s++)n.push(a[s]);return i.apply(null,n).catch(function(c){return g.warn("API call to Plotly."+o+" rejected.",c),Promise.reject(c)})},X.computeAPICommandBindings=function(r,o,a){var i;switch(Array.isArray(a)||(a=[]),o){case"restyle":i=e(r,a);break;case"relayout":i=M(r,a);break;case"update":i=e(r,[a[0],a[2]]).concat(M(r,[a[1]]));break;case"animate":i=A(r,a);break;default:i=[]}return i};function A(r,o){return Array.isArray(o[0])&&o[0].length===1&&["string","number"].indexOf(typeof o[0][0])!==-1?[{type:"layout",prop:"_currentFrame",value:o[0][0].toString()}]:[]}function M(r,o){var a=[],i=o[0],n={};if(typeof i=="string")n[i]=o[1];else if(g.isPlainObject(i))n=i;else return a;return t(n,function(s,c,h){a.push({type:"layout",prop:s,value:h})},"",0),a}function e(r,o){var a,i,n,s,c=[];if(i=o[0],n=o[1],a=o[2],s={},typeof i=="string")s[i]=n;else if(g.isPlainObject(i))s=i,a===void 0&&(a=n);else return c;return a===void 0&&(a=null),t(s,function(h,v,p){var T,l;if(Array.isArray(p)){l=p.slice();var _=Math.min(l.length,r.data.length);a&&(_=Math.min(_,a.length)),T=[];for(var w=0;w<_;w++)T[w]=a?a[w]:w}else l=p,T=a?a.slice():null;if(T===null)Array.isArray(l)&&(l=l[0]);else if(Array.isArray(T)){if(!Array.isArray(l)){var S=l;l=[];for(var E=0;E<T.length;E++)l[E]=S}l.length=Math.min(T.length,l.length)}c.push({type:"data",prop:h,traces:T,value:l})},"",0),c}function t(r,o,a,i){Object.keys(r).forEach(function(n){var s=r[n];if(n[0]!=="_"){var c=a+(i>0?".":"")+n;g.isPlainObject(s)?t(s,o,c,i+1):o(c,n,s)}})}}}),Gu=Ye({"src/plots/plots.js"(X,H){"use strict";var g=_n(),x=Np().timeFormatLocale,A=Zy().formatLocale,M=jo(),e=XA(),t=Hn(),r=Qy(),o=cl(),a=ta(),i=Fn(),n=ks().BADNUM,s=Xc(),c=Jm().clearOutline,h=g2(),v=w_(),p=iS(),T=jh().getModuleCalcData,l=a.relinkPrivateKeys,_=a._,w=H.exports={};a.extendFlat(w,t),w.attributes=Pl(),w.attributes.type.values=w.allTypes,w.fontAttrs=Au(),w.layoutAttributes=Jy();var S=eO();w.executeAPICommand=S.executeAPICommand,w.computeAPICommandBindings=S.computeAPICommandBindings,w.manageCommandObserver=S.manageCommandObserver,w.hasSimpleAPICommandBindings=S.hasSimpleAPICommandBindings,w.redrawText=function(G){return G=a.getGraphDiv(G),new Promise(function($){setTimeout(function(){G._fullLayout&&(t.getComponentMethod("annotations","draw")(G),t.getComponentMethod("legend","draw")(G),t.getComponentMethod("colorbar","draw")(G),$(w.previousPromises(G)))},300)})},w.resize=function(G){G=a.getGraphDiv(G);var $,J=new Promise(function(Z,re){(!G||a.isHidden(G))&&re(new Error("Resize must be passed a displayed plot div element.")),G._redrawTimer&&clearTimeout(G._redrawTimer),G._resolveResize&&($=G._resolveResize),G._resolveResize=Z,G._redrawTimer=setTimeout(function(){if(!G.layout||G.layout.width&&G.layout.height||a.isHidden(G)){Z(G);return}delete G.layout.width,delete G.layout.height;var ne=G.changed;G.autoplay=!0,t.call("relayout",G,{autosize:!0}).then(function(){G.changed=ne,G._resolveResize===Z&&(delete G._resolveResize,Z(G))})},100)});return $&&$(J),J},w.previousPromises=function(G){if((G._promises||[]).length)return Promise.all(G._promises).then(function(){G._promises=[]})},w.addLinks=function(G){if(!(!G._context.showLink&&!G._context.showSources)){var $=G._fullLayout,J=a.ensureSingle($._paper,"text","js-plot-link-container",function(ie){ie.style({"font-family":'"Open Sans", Arial, sans-serif',"font-size":"12px",fill:i.defaultLine,"pointer-events":"all"}).each(function(){var fe=g.select(this);fe.append("tspan").classed("js-link-to-tool",!0),fe.append("tspan").classed("js-link-spacer",!0),fe.append("tspan").classed("js-sourcelinks",!0)})}),Z=J.node(),re={y:$._paper.attr("height")-9};document.body.contains(Z)&&Z.getComputedTextLength()>=$.width-20?(re["text-anchor"]="start",re.x=5):(re["text-anchor"]="end",re.x=$._paper.attr("width")-7),J.attr(re);var ne=J.select(".js-link-to-tool"),j=J.select(".js-link-spacer"),ee=J.select(".js-sourcelinks");G._context.showSources&&G._context.showSources(G),G._context.showLink&&E(G,ne),j.text(ne.text()&&ee.text()?" - ":"")}};function E(G,$){$.text("");var J=$.append("a").attr({"xlink:xlink:href":"#",class:"link--impt link--embedview","font-weight":"bold"}).text(G._context.linkText+" \xBB");if(G._context.sendData)J.on("click",function(){w.sendDataToCloud(G)});else{var Z=window.location.pathname.split("/"),re=window.location.search;J.attr({"xlink:xlink:show":"new","xlink:xlink:href":"/"+Z[2].split(".")[0]+"/"+Z[1]+re})}}w.sendDataToCloud=function(G){var $=(window.PLOTLYENV||{}).BASE_URL||G._context.plotlyServerURL;if($){G.emit("plotly_beforeexport");var J=g.select(G).append("div").attr("id","hiddenform").style("display","none"),Z=J.append("form").attr({action:$+"/external",method:"post",target:"_blank"}),re=Z.append("input").attr({type:"text",name:"data"});return re.node().value=w.graphJson(G,!1,"keepdata"),Z.node().submit(),J.remove(),G.emit("plotly_afterexport"),!1}};var m=["days","shortDays","months","shortMonths","periods","dateTime","date","time","decimal","thousands","grouping","currency"],b=["year","month","dayMonth","dayMonthYear"];w.supplyDefaults=function(G,$){var J=$&&$.skipUpdateCalc,Z=G._fullLayout||{};if(Z._skipDefaults){delete Z._skipDefaults;return}var re=G._fullLayout={},ne=G.layout||{},j=G._fullData||[],ee=G._fullData=[],ie=G.data||[],fe=G.calcdata||[],be=G._context||{},Ae;G._transitionData||w.createTransitionData(G),re._dfltTitle={plot:_(G,"Click to enter Plot title"),subtitle:_(G,"Click to enter Plot subtitle"),x:_(G,"Click to enter X axis title"),y:_(G,"Click to enter Y axis title"),colorbar:_(G,"Click to enter Colorscale title"),annotation:_(G,"new text")},re._traceWord=_(G,"trace");var Be=y(G,m);if(re._mapboxAccessToken=be.mapboxAccessToken,Z._initialAutoSizeIsDone){var Ie=Z.width,Ze=Z.height;w.supplyLayoutGlobalDefaults(ne,re,Be),ne.width||(re.width=Ie),ne.height||(re.height=Ze),w.sanitizeMargins(re)}else{w.supplyLayoutGlobalDefaults(ne,re,Be);var at=!ne.width||!ne.height,it=re.autosize,et=be.autosizable,lt=at&&(it||et);lt?w.plotAutoSize(G,ne,re):at&&w.sanitizeMargins(re),!it&&at&&(ne.width=re.width,ne.height=re.height)}re._d3locale=f(Be,re.separators),re._extraFormat=y(G,b),re._initialAutoSizeIsDone=!0,re._dataLength=ie.length,re._modules=[],re._visibleModules=[],re._basePlotModules=[];var Me=re._subplots=u(),ge=re._splomAxes={x:{},y:{}},ce=re._splomSubplots={};re._splomGridDflt={},re._scatterStackOpts={},re._firstScatter={},re._alignmentOpts={},re._colorAxes={},re._requestRangeslider={},re._traceUids=d(j,ie),w.supplyDataDefaults(ie,ee,ne,re);var ze=Object.keys(ge.x),tt=Object.keys(ge.y);if(ze.length>1&&tt.length>1){for(t.getComponentMethod("grid","sizeDefaults")(ne,re),Ae=0;Ae<ze.length;Ae++)a.pushUnique(Me.xaxis,ze[Ae]);for(Ae=0;Ae<tt.length;Ae++)a.pushUnique(Me.yaxis,tt[Ae]);for(var nt in ce)a.pushUnique(Me.cartesian,nt)}if(re._has=w._hasPlotType.bind(re),j.length===ee.length)for(Ae=0;Ae<ee.length;Ae++)l(ee[Ae],j[Ae]);w.supplyLayoutModuleDefaults(ne,re,ee,G._transitionData);var Qe=re._visibleModules,Ct=[];for(Ae=0;Ae<Qe.length;Ae++){var St=Qe[Ae].crossTraceDefaults;St&&a.pushUnique(Ct,St)}for(Ae=0;Ae<Ct.length;Ae++)Ct[Ae](ee,re);re._hasOnlyLargeSploms=re._basePlotModules.length===1&&re._basePlotModules[0].name==="splom"&&ze.length>15&&tt.length>15&&re.shapes.length===0&&re.images.length===0,w.linkSubplots(ee,re,j,Z),w.cleanPlot(ee,re,j,Z);var Ot=!!(Z._has&&Z._has("cartesian")),jt=!!(re._has&&re._has("cartesian")),ur=Ot,ar=jt;ur&&!ar?Z._bgLayer.remove():ar&&!ur&&(re._shouldCreateBgLayer=!0),Z._zoomlayer&&!G._dragging&&c({_fullLayout:Z}),P(ee,re),l(re,Z),t.getComponentMethod("colorscale","crossTraceDefaults")(ee,re),re._preGUI||(re._preGUI={}),re._tracePreGUI||(re._tracePreGUI={});var Cr=re._tracePreGUI,vr={},_r;for(_r in Cr)vr[_r]="old";for(Ae=0;Ae<ee.length;Ae++)_r=ee[Ae]._fullInput.uid,vr[_r]||(Cr[_r]={}),vr[_r]="new";for(_r in vr)vr[_r]==="old"&&delete Cr[_r];F(re),t.getComponentMethod("rangeslider","makeData")(re),!J&&fe.length===ee.length&&w.supplyDefaultsUpdateCalc(fe,ee)},w.supplyDefaultsUpdateCalc=function(G,$){for(var J=0;J<$.length;J++){var Z=$[J],re=(G[J]||[])[0];if(re&&re.trace){var ne=re.trace;if(ne._hasCalcTransform){var j=ne._arrayAttrs,ee,ie,fe;for(ee=0;ee<j.length;ee++)ie=j[ee],fe=a.nestedProperty(ne,ie).get().slice(),a.nestedProperty(Z,ie).set(fe)}re.trace=Z}}};function d(G,$){var J=$.length,Z=[],re,ne;for(re=0;re<G.length;re++){var j=G[re]._fullInput;j!==ne&&Z.push(j),ne=j}var ee=Z.length,ie=new Array(J),fe={};function be(Ie,Ze){ie[Ze]=Ie,fe[Ie]=1}function Ae(Ie,Ze){if(Ie&&typeof Ie=="string"&&!fe[Ie])return be(Ie,Ze),!0}for(re=0;re<J;re++){var Be=$[re].uid;typeof Be=="number"&&(Be=String(Be)),!Ae(Be,re)&&(re<ee&&Ae(Z[re].uid,re)||be(a.randstr(fe),re))}return ie}function u(){var G=t.collectableSubplotTypes,$={},J,Z;if(!G){G=[];var re=t.subplotsRegistry;for(var ne in re){var j=re[ne],ee=j.attr;if(ee&&(G.push(ne),Array.isArray(ee)))for(Z=0;Z<ee.length;Z++)a.pushUnique(G,ee[Z])}}for(J=0;J<G.length;J++)$[G[J]]=[];return $}function y(G,$){var J=G._context.locale;J||(J="en-US");var Z=!1,re={};function ne(Ae){for(var Be=!0,Ie=0;Ie<$.length;Ie++){var Ze=$[Ie];re[Ze]||(Ae[Ze]?re[Ze]=Ae[Ze]:Be=!1)}Be&&(Z=!0)}for(var j=0;j<2;j++){for(var ee=G._context.locales,ie=0;ie<2;ie++){var fe=(ee[J]||{}).format;if(fe&&(ne(fe),Z))break;ee=t.localeRegistry}var be=J.split("-")[0];if(Z||be===J)break;J=be}return Z||ne(t.localeRegistry.en.format),re}function f(G,$){return G.decimal=$.charAt(0),G.thousands=$.charAt(1),{numberFormat:function(J){try{J=A(G).format(a.adjustFormat(J))}catch{return a.warnBadFormat(J),a.noFormat}return J},timeFormat:x(G).utcFormat}}function P(G,$){var J,Z=[];$.meta&&(J=$._meta={meta:$.meta,layout:{meta:$.meta}});for(var re=0;re<G.length;re++){var ne=G[re];ne.meta?Z[ne.index]=ne._meta={meta:ne.meta}:$.meta&&(ne._meta={meta:$.meta}),$.meta&&(ne._meta.layout={meta:$.meta})}Z.length&&(J||(J=$._meta={}),J.data=Z)}w.createTransitionData=function(G){G._transitionData||(G._transitionData={}),G._transitionData._frames||(G._transitionData._frames=[]),G._transitionData._frameHash||(G._transitionData._frameHash={}),G._transitionData._counter||(G._transitionData._counter=0),G._transitionData._interruptCallbacks||(G._transitionData._interruptCallbacks=[])},w._hasPlotType=function(G){var $,J=this._basePlotModules||[];for($=0;$<J.length;$++)if(J[$].name===G)return!0;var Z=this._modules||[];for($=0;$<Z.length;$++){var re=Z[$].name;if(re===G)return!0;var ne=t.modules[re];if(ne&&ne.categories[G])return!0}return!1},w.cleanPlot=function(G,$,J,Z){var re,ne,j=Z._basePlotModules||[];for(re=0;re<j.length;re++){var ee=j[re];ee.clean&&ee.clean(G,$,J,Z)}var ie=Z._has&&Z._has("gl"),fe=$._has&&$._has("gl");ie&&!fe&&Z._glcontainer!==void 0&&(Z._glcontainer.selectAll(".gl-canvas").remove(),Z._glcontainer.selectAll(".no-webgl").remove(),Z._glcanvas=null);var be=!!Z._infolayer;e:for(re=0;re<J.length;re++){var Ae=J[re],Be=Ae.uid;for(ne=0;ne<G.length;ne++){var Ie=G[ne];if(Be===Ie.uid)continue e}be&&Z._infolayer.select(".cb"+Be).remove()}},w.linkSubplots=function(G,$,J,Z){var re,ne,j=Z._plots||{},ee=$._plots={},ie=$._subplots,fe={_fullData:G,_fullLayout:$},be=ie.cartesian||[];for(re=0;re<be.length;re++){var Ae=be[re],Be=j[Ae],Ie=s.getFromId(fe,Ae,"x"),Ze=s.getFromId(fe,Ae,"y"),at;for(Be?at=ee[Ae]=Be:(at=ee[Ae]={},at.id=Ae),Ie._counterAxes.push(Ze._id),Ze._counterAxes.push(Ie._id),Ie._subplotsWith.push(Ae),Ze._subplotsWith.push(Ae),at.xaxis=Ie,at.yaxis=Ze,at._hasClipOnAxisFalse=!1,ne=0;ne<G.length;ne++){var it=G[ne];if(it.xaxis===at.xaxis._id&&it.yaxis===at.yaxis._id&&it.cliponaxis===!1){at._hasClipOnAxisFalse=!0;break}}}var et=s.list(fe,null,!0),lt;for(re=0;re<et.length;re++){lt=et[re];var Me=null;lt.overlaying&&(Me=s.getFromId(fe,lt.overlaying),Me&&Me.overlaying&&(lt.overlaying=!1,Me=null)),lt._mainAxis=Me||lt,Me&&(lt.domain=Me.domain.slice()),lt._anchorAxis=lt.anchor==="free"?null:s.getFromId(fe,lt.anchor)}for(re=0;re<et.length;re++)if(lt=et[re],lt._counterAxes.sort(s.idSort),lt._subplotsWith.sort(a.subplotSort),lt._mainSubplot=L(lt,$),lt._counterAxes.length&&(lt.spikemode&&lt.spikemode.indexOf("across")!==-1||lt.automargin&&lt.mirror&&lt.anchor!=="free"||t.getComponentMethod("rangeslider","isVisible")(lt))){var ge=1,ce=0;for(ne=0;ne<lt._counterAxes.length;ne++){var ze=s.getFromId(fe,lt._counterAxes[ne]);ge=Math.min(ge,ze.domain[0]),ce=Math.max(ce,ze.domain[1])}ge<ce&&(lt._counterDomainMin=ge,lt._counterDomainMax=ce)}};function L(G,$){var J={_fullLayout:$},Z=G._id.charAt(0)==="x",re=G._mainAxis._anchorAxis,ne="",j="",ee="";if(re&&(ee=re._mainAxis._id,ne=Z?G._id+ee:ee+G._id),!ne||!$._plots[ne]){ne="";for(var ie=G._counterAxes,fe=0;fe<ie.length;fe++){var be=ie[fe],Ae=Z?G._id+be:be+G._id;j||(j=Ae);var Be=s.getFromId(J,be);if(ee&&Be.overlaying===ee){ne=Ae;break}}}return ne||j}w.clearExpandedTraceDefaultColors=function(G){var $,J,Z;function re(j,ee,ie,fe){J[fe]=ee,J.length=fe+1,j.valType==="color"&&j.dflt===void 0&&$.push(J.join("."))}for(J=[],$=G._module._colorAttrs,$||(G._module._colorAttrs=$=[],r.crawl(G._module.attributes,re)),Z=0;Z<$.length;Z++){var ne=a.nestedProperty(G,"_input."+$[Z]);ne.get()||a.nestedProperty(G,$[Z]).set(null)}},w.supplyDataDefaults=function(G,$,J,Z){var re=Z._modules,ne=Z._visibleModules,j=Z._basePlotModules,ee=0,ie=0,fe,be,Ae;Z._transformModules=[];function Be(lt){$.push(lt);var Me=lt._module;Me&&(a.pushUnique(re,Me),lt.visible===!0&&a.pushUnique(ne,Me),a.pushUnique(j,lt._module.basePlotModule),ee++,lt._input.visible!==!1&&ie++)}var Ie={},Ze=[],at=(J.template||{}).data||{},it=o.traceTemplater(at);for(fe=0;fe<G.length;fe++)Ae=G[fe],be=it.newTrace(Ae),be.uid=Z._traceUids[fe],w.supplyTraceDefaults(Ae,be,ie,Z,fe),be.index=fe,be._input=Ae,be._fullInput=be,Be(be),t.traceIs(be,"carpetAxis")&&(Ie[be.carpet]=be),t.traceIs(be,"carpetDependent")&&Ze.push(fe);for(fe=0;fe<Ze.length;fe++)if(be=$[Ze[fe]],!!be.visible){var et=Ie[be.carpet];if(be._carpet=et,!et||!et.visible){be.visible=!1;continue}be.xaxis=et.xaxis,be.yaxis=et.yaxis}},w.supplyAnimationDefaults=function(G){G=G||{};var $,J={};function Z(re,ne){return a.coerce(G||{},J,v,re,ne)}if(Z("mode"),Z("direction"),Z("fromcurrent"),Array.isArray(G.frame))for(J.frame=[],$=0;$<G.frame.length;$++)J.frame[$]=w.supplyAnimationFrameDefaults(G.frame[$]||{});else J.frame=w.supplyAnimationFrameDefaults(G.frame||{});if(Array.isArray(G.transition))for(J.transition=[],$=0;$<G.transition.length;$++)J.transition[$]=w.supplyAnimationTransitionDefaults(G.transition[$]||{});else J.transition=w.supplyAnimationTransitionDefaults(G.transition||{});return J},w.supplyAnimationFrameDefaults=function(G){var $={};function J(Z,re){return a.coerce(G||{},$,v.frame,Z,re)}return J("duration"),J("redraw"),$},w.supplyAnimationTransitionDefaults=function(G){var $={};function J(Z,re){return a.coerce(G||{},$,v.transition,Z,re)}return J("duration"),J("easing"),$},w.supplyFrameDefaults=function(G){var $={};function J(Z,re){return a.coerce(G,$,p,Z,re)}return J("group"),J("name"),J("traces"),J("baseframe"),J("data"),J("layout"),$},w.supplyTraceDefaults=function(G,$,J,Z,re){var ne=Z.colorway||i.defaults,j=ne[J%ne.length],ee;function ie(Me,ge){return a.coerce(G,$,w.attributes,Me,ge)}var fe=ie("visible");ie("type"),ie("name",Z._traceWord+" "+re),ie("uirevision",Z.uirevision);var be=w.getModule($);if($._module=be,be){var Ae=be.basePlotModule,Be=Ae.attr,Ie=Ae.attributes;if(Be&&Ie){var Ze=Z._subplots,at="";if(Array.isArray(Be))for(ee=0;ee<Be.length;ee++){var it=Be[ee],et=a.coerce(G,$,Ie,it);Ze[it]&&a.pushUnique(Ze[it],et),at+=et}else at=a.coerce(G,$,Ie,Be);Ze[Ae.name]&&a.pushUnique(Ze[Ae.name],at)}}if(fe&&(ie("customdata"),ie("ids"),ie("meta"),t.traceIs($,"showLegend")?(a.coerce(G,$,be.attributes.showlegend?be.attributes:w.attributes,"showlegend"),ie("legend"),ie("legendwidth"),ie("legendgroup"),ie("legendgrouptitle.text"),ie("legendrank"),$._dfltShowLegend=!0):$._dfltShowLegend=!1,be&&be.supplyDefaults(G,$,j,Z),t.traceIs($,"noOpacity")||ie("opacity"),t.traceIs($,"notLegendIsolatable")&&($.visible=!!$.visible),t.traceIs($,"noHover")||($.hovertemplate||a.coerceHoverinfo(G,$,Z),$.type!=="parcats"&&t.getComponentMethod("fx","supplyDefaults")(G,$,j,Z)),be&&be.selectPoints)){var lt=ie("selectedpoints");a.isTypedArray(lt)&&($.selectedpoints=Array.from(lt))}return $},w.supplyLayoutGlobalDefaults=function(G,$,J){function Z(Ae,Be){return a.coerce(G,$,w.layoutAttributes,Ae,Be)}var re=G.template;a.isPlainObject(re)&&($.template=re,$._template=re.layout,$._dataTemplate=re.data),Z("autotypenumbers");var ne=a.coerceFont(Z,"font"),j=ne.size;a.coerceFont(Z,"title.font",ne,{overrideDflt:{size:Math.round(j*1.4)}}),Z("title.text",$._dfltTitle.plot),Z("title.xref");var ee=Z("title.yref");Z("title.pad.t"),Z("title.pad.r"),Z("title.pad.b"),Z("title.pad.l");var ie=Z("title.automargin");Z("title.x"),Z("title.xanchor"),Z("title.y"),Z("title.yanchor"),Z("title.subtitle.text",$._dfltTitle.subtitle),a.coerceFont(Z,"title.subtitle.font",ne,{overrideDflt:{size:Math.round($.title.font.size*.7)}}),ie&&(ee==="paper"&&($.title.y!==0&&($.title.y=1),$.title.yanchor==="auto"&&($.title.yanchor=$.title.y===0?"top":"bottom")),ee==="container"&&($.title.y==="auto"&&($.title.y=1),$.title.yanchor==="auto"&&($.title.yanchor=$.title.y<.5?"bottom":"top")));var fe=Z("uniformtext.mode");fe&&Z("uniformtext.minsize"),Z("autosize",!(G.width&&G.height)),Z("width"),Z("height"),Z("minreducedwidth"),Z("minreducedheight"),Z("margin.l"),Z("margin.r"),Z("margin.t"),Z("margin.b"),Z("margin.pad"),Z("margin.autoexpand"),G.width&&G.height&&w.sanitizeMargins($),t.getComponentMethod("grid","sizeDefaults")(G,$),Z("paper_bgcolor"),Z("separators",J.decimal+J.thousands),Z("hidesources"),Z("colorway"),Z("datarevision");var be=Z("uirevision");Z("editrevision",be),Z("selectionrevision",be),t.getComponentMethod("modebar","supplyLayoutDefaults")(G,$),t.getComponentMethod("shapes","supplyDrawNewShapeDefaults")(G,$,Z),t.getComponentMethod("selections","supplyDrawNewSelectionDefaults")(G,$,Z),Z("meta"),a.isPlainObject(G.transition)&&(Z("transition.duration"),Z("transition.easing"),Z("transition.ordering")),t.getComponentMethod("calendars","handleDefaults")(G,$,"calendar"),t.getComponentMethod("fx","supplyLayoutGlobalDefaults")(G,$,Z),a.coerce(G,$,h,"scattermode")};function z(G){return typeof G=="string"&&G.substr(G.length-2)==="px"&&parseFloat(G)}w.plotAutoSize=function($,J,Z){var re=$._context||{},ne=re.frameMargins,j,ee,ie=a.isPlotDiv($);if(ie&&$.emit("plotly_autosize"),re.fillFrame)j=window.innerWidth,ee=window.innerHeight,document.body.style.overflow="hidden";else{var fe=ie?window.getComputedStyle($):{};if(j=z(fe.width)||z(fe.maxWidth)||Z.width,ee=z(fe.height)||z(fe.maxHeight)||Z.height,M(ne)&&ne>0){var be=1-2*ne;j=Math.round(be*j),ee=Math.round(be*ee)}}var Ae=w.layoutAttributes.width.min,Be=w.layoutAttributes.height.min;j<Ae&&(j=Ae),ee<Be&&(ee=Be);var Ie=!J.width&&Math.abs(Z.width-j)>1,Ze=!J.height&&Math.abs(Z.height-ee)>1;(Ze||Ie)&&(Ie&&(Z.width=j),Ze&&(Z.height=ee)),$._initialAutoSize||($._initialAutoSize={width:j,height:ee}),w.sanitizeMargins(Z)},w.supplyLayoutModuleDefaults=function(G,$,J,Z){var re=t.componentsRegistry,ne=$._basePlotModules,j,ee,ie,fe=t.subplotsRegistry.cartesian;for(j in re)ie=re[j],ie.includeBasePlot&&ie.includeBasePlot(G,$);ne.length||ne.push(fe),$._has("cartesian")&&(t.getComponentMethod("grid","contentDefaults")(G,$),fe.finalizeSubplots(G,$));for(var be in $._subplots)$._subplots[be].sort(a.subplotSort);for(ee=0;ee<ne.length;ee++)ie=ne[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J);var Ae=$._modules;for(ee=0;ee<Ae.length;ee++)ie=Ae[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J);var Be=$._transformModules;for(ee=0;ee<Be.length;ee++)ie=Be[ee],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J,Z);for(j in re)ie=re[j],ie.supplyLayoutDefaults&&ie.supplyLayoutDefaults(G,$,J)},w.purge=function(G){var $=G._fullLayout||{};$._glcontainer!==void 0&&($._glcontainer.selectAll(".gl-canvas").remove(),$._glcontainer.remove(),$._glcanvas=null),$._modeBar&&$._modeBar.destroy(),G._transitionData&&(G._transitionData._interruptCallbacks&&(G._transitionData._interruptCallbacks.length=0),G._transitionData._animationRaf&&window.cancelAnimationFrame(G._transitionData._animationRaf)),a.clearThrottle(),a.clearResponsive(G),delete G.data,delete G.layout,delete G._fullData,delete G._fullLayout,delete G.calcdata,delete G.empty,delete G.fid,delete G.undoqueue,delete G.undonum,delete G.autoplay,delete G.changed,delete G._promises,delete G._redrawTimer,delete G._hmlumcount,delete G._hmpixcount,delete G._transitionData,delete G._transitioning,delete G._initialAutoSize,delete G._transitioningWithDuration,delete G._dragging,delete G._dragged,delete G._dragdata,delete G._hoverdata,delete G._snapshotInProgress,delete G._editing,delete G._mouseDownTime,delete G._legendMouseDownTime,G.removeAllListeners&&G.removeAllListeners()},w.style=function(G){var $=G._fullLayout._visibleModules,J=[],Z;for(Z=0;Z<$.length;Z++){var re=$[Z];re.style&&a.pushUnique(J,re.style)}for(Z=0;Z<J.length;Z++)J[Z](G)},w.sanitizeMargins=function(G){if(!(!G||!G.margin)){var $=G.width,J=G.height,Z=G.margin,re=$-(Z.l+Z.r),ne=J-(Z.t+Z.b),j;re<0&&(j=($-1)/(Z.l+Z.r),Z.l=Math.floor(j*Z.l),Z.r=Math.floor(j*Z.r)),ne<0&&(j=(J-1)/(Z.t+Z.b),Z.t=Math.floor(j*Z.t),Z.b=Math.floor(j*Z.b))}},w.clearAutoMarginIds=function(G){G._fullLayout._pushmarginIds={}},w.allowAutoMargin=function(G,$){G._fullLayout._pushmarginIds[$]=1};function F(G){var $=G.margin;if(!G._size){var J=G._size={l:Math.round($.l),r:Math.round($.r),t:Math.round($.t),b:Math.round($.b),p:Math.round($.pad)};J.w=Math.round(G.width)-J.l-J.r,J.h=Math.round(G.height)-J.t-J.b}G._pushmargin||(G._pushmargin={}),G._pushmarginIds||(G._pushmarginIds={}),G._reservedMargin||(G._reservedMargin={})}var B=2,O=2;w.autoMargin=function(G,$,J){var Z=G._fullLayout,re=Z.width,ne=Z.height,j=Z.margin,ee=Z.minreducedwidth,ie=Z.minreducedheight,fe=a.constrain(re-j.l-j.r,B,ee),be=a.constrain(ne-j.t-j.b,O,ie),Ae=Math.max(0,re-fe),Be=Math.max(0,ne-be),Ie=Z._pushmargin,Ze=Z._pushmarginIds;if(j.autoexpand!==!1){if(!J)delete Ie[$],delete Ze[$];else{var at=J.pad;if(at===void 0&&(at=Math.min(12,j.l,j.r,j.t,j.b)),Ae){var it=(J.l+J.r)/Ae;it>1&&(J.l/=it,J.r/=it)}if(Be){var et=(J.t+J.b)/Be;et>1&&(J.t/=et,J.b/=et)}var lt=J.xl!==void 0?J.xl:J.x,Me=J.xr!==void 0?J.xr:J.x,ge=J.yt!==void 0?J.yt:J.y,ce=J.yb!==void 0?J.yb:J.y;Ie[$]={l:{val:lt,size:J.l+at},r:{val:Me,size:J.r+at},b:{val:ce,size:J.b+at},t:{val:ge,size:J.t+at}},Ze[$]=1}if(!Z._replotting)return w.doAutoMargin(G)}};function I(G){if("_redrawFromAutoMarginCount"in G._fullLayout)return!1;var $=s.list(G,"",!0);for(var J in $)if($[J].autoshift||$[J].shift)return!0;return!1}w.doAutoMargin=function(G){var $=G._fullLayout,J=$.width,Z=$.height;$._size||($._size={}),F($);var re=$._size,ne=$.margin,j={t:0,b:0,l:0,r:0},ee=a.extendFlat({},re),ie=ne.l,fe=ne.r,be=ne.t,Ae=ne.b,Be=$._pushmargin,Ie=$._pushmarginIds,Ze=$.minreducedwidth,at=$.minreducedheight;if(ne.autoexpand!==!1){for(var it in Be)Ie[it]||delete Be[it];var et=G._fullLayout._reservedMargin;for(var lt in et)for(var Me in et[lt]){var ge=et[lt][Me];j[Me]=Math.max(j[Me],ge)}Be.base={l:{val:0,size:ie},r:{val:1,size:fe},t:{val:1,size:be},b:{val:0,size:Ae}};for(var ce in j){var ze=0;for(var tt in Be)tt!=="base"&&M(Be[tt][ce].size)&&(ze=Be[tt][ce].size>ze?Be[tt][ce].size:ze);var nt=Math.max(0,ne[ce]-ze);j[ce]=Math.max(0,j[ce]-nt)}for(var Qe in Be){var Ct=Be[Qe].l||{},St=Be[Qe].b||{},Ot=Ct.val,jt=Ct.size,ur=St.val,ar=St.size,Cr=J-j.r-j.l,vr=Z-j.t-j.b;for(var _r in Be){if(M(jt)&&Be[_r].r){var yt=Be[_r].r.val,Fe=Be[_r].r.size;if(yt>Ot){var Ke=(jt*yt+(Fe-Cr)*Ot)/(yt-Ot),Ne=(Fe*(1-Ot)+(jt-Cr)*(1-yt))/(yt-Ot);Ke+Ne>ie+fe&&(ie=Ke,fe=Ne)}}if(M(ar)&&Be[_r].t){var Ee=Be[_r].t.val,Ve=Be[_r].t.size;if(Ee>ur){var ke=(ar*Ee+(Ve-vr)*ur)/(Ee-ur),Te=(Ve*(1-ur)+(ar-vr)*(1-Ee))/(Ee-ur);ke+Te>Ae+be&&(Ae=ke,be=Te)}}}}}var Le=a.constrain(J-ne.l-ne.r,B,Ze),rt=a.constrain(Z-ne.t-ne.b,O,at),dt=Math.max(0,J-Le),xt=Math.max(0,Z-rt);if(dt){var It=(ie+fe)/dt;It>1&&(ie/=It,fe/=It)}if(xt){var Bt=(Ae+be)/xt;Bt>1&&(Ae/=Bt,be/=Bt)}if(re.l=Math.round(ie)+j.l,re.r=Math.round(fe)+j.r,re.t=Math.round(be)+j.t,re.b=Math.round(Ae)+j.b,re.p=Math.round(ne.pad),re.w=Math.round(J)-re.l-re.r,re.h=Math.round(Z)-re.t-re.b,!$._replotting&&(w.didMarginChange(ee,re)||I(G))){"_redrawFromAutoMarginCount"in $?$._redrawFromAutoMarginCount++:$._redrawFromAutoMarginCount=1;var Gt=3*(1+Object.keys(Ie).length);if($._redrawFromAutoMarginCount<Gt)return t.call("_doPlot",G);$._size=ee,a.warn("Too many auto-margin redraws.")}N(G)};function N(G){var $=s.list(G,"",!0);["_adjustTickLabelsOverflow","_hideCounterAxisInsideTickLabels"].forEach(function(J){for(var Z=0;Z<$.length;Z++){var re=$[Z][J];re&&re()}})}var U=["l","r","t","b","p","w","h"];w.didMarginChange=function(G,$){for(var J=0;J<U.length;J++){var Z=U[J],re=G[Z],ne=$[Z];if(!M(re)||Math.abs(ne-re)>1)return!0}return!1},w.graphJson=function(G,$,J,Z,re,ne){(re&&$&&!G._fullData||re&&!$&&!G._fullLayout)&&w.supplyDefaults(G);var j=re?G._fullData:G.data,ee=re?G._fullLayout:G.layout,ie=(G._transitionData||{})._frames;function fe(Be,Ie){if(typeof Be=="function")return Ie?"_function_":null;if(a.isPlainObject(Be)){var Ze={},at;return Object.keys(Be).sort().forEach(function(Me){if(["_","["].indexOf(Me.charAt(0))===-1){if(typeof Be[Me]=="function"){Ie&&(Ze[Me]="_function");return}if(J==="keepdata"){if(Me.substr(Me.length-3)==="src")return}else if(J==="keepstream"){if(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0&&!a.isPlainObject(Be.stream))return}else if(J!=="keepall"&&(at=Be[Me+"src"],typeof at=="string"&&at.indexOf(":")>0))return;Ze[Me]=fe(Be[Me],Ie)}}),Ze}var it=Array.isArray(Be),et=a.isTypedArray(Be);if((it||et)&&Be.dtype&&Be.shape){var lt=Be.bdata;return fe({dtype:Be.dtype,shape:Be.shape,bdata:a.isArrayBuffer(lt)?e.encode(lt):lt},Ie)}return it?Be.map(function(Me){return fe(Me,Ie)}):et?a.simpleMap(Be,a.identity):a.isJSDate(Be)?a.ms2DateTimeLocal(+Be):Be}var be={data:(j||[]).map(function(Be){var Ie=fe(Be);return $&&delete Ie.fit,Ie})};if(!$&&(be.layout=fe(ee),re)){var Ae=ee._size;be.layout.computed={margin:{b:Ae.b,l:Ae.l,r:Ae.r,t:Ae.t}}}return ie&&(be.frames=fe(ie)),ne&&(be.config=fe(G._context,!0)),Z==="object"?be:JSON.stringify(be)},w.modifyFrames=function(G,$){var J,Z,re,ne=G._transitionData._frames,j=G._transitionData._frameHash;for(J=0;J<$.length;J++)switch(Z=$[J],Z.type){case"replace":re=Z.value;var ee=(ne[Z.index]||{}).name,ie=re.name;ne[Z.index]=j[ie]=re,ie!==ee&&(delete j[ee],j[ie]=re);break;case"insert":re=Z.value,j[re.name]=re,ne.splice(Z.index,0,re);break;case"delete":re=ne[Z.index],delete j[re.name],ne.splice(Z.index,1);break}return Promise.resolve()},w.computeFrame=function(G,$){var J=G._transitionData._frameHash,Z,re,ne,j;if(!$)throw new Error("computeFrame must be given a string frame name");var ee=J[$.toString()];if(!ee)return!1;for(var ie=[ee],fe=[ee.name];ee.baseframe&&(ee=J[ee.baseframe.toString()])&&fe.indexOf(ee.name)===-1;)ie.push(ee),fe.push(ee.name);for(var be={};ee=ie.pop();)if(ee.layout&&(be.layout=w.extendLayout(be.layout,ee.layout)),ee.data){if(be.data||(be.data=[]),re=ee.traces,!re)for(re=[],Z=0;Z<ee.data.length;Z++)re[Z]=Z;for(be.traces||(be.traces=[]),Z=0;Z<ee.data.length;Z++)ne=re[Z],ne!=null&&(j=be.traces.indexOf(ne),j===-1&&(j=be.data.length,be.traces[j]=ne),be.data[j]=w.extendTrace(be.data[j],ee.data[Z]))}return be},w.recomputeFrameHash=function(G){for(var $=G._transitionData._frameHash={},J=G._transitionData._frames,Z=0;Z<J.length;Z++){var re=J[Z];re&&re.name&&($[re.name]=re)}},w.extendObjectWithContainers=function(G,$,J){var Z,re,ne,j,ee,ie,fe,be,Ae=a.extendDeepNoArrays({},$||{}),Be=a.expandObjectPaths(Ae),Ie={};if(J&&J.length)for(ne=0;ne<J.length;ne++)Z=a.nestedProperty(Be,J[ne]),re=Z.get(),re===void 0?a.nestedProperty(Ie,J[ne]).set(null):(Z.set(null),a.nestedProperty(Ie,J[ne]).set(re));if(G=a.extendDeepNoArrays(G||{},Be),J&&J.length){for(ne=0;ne<J.length;ne++)if(ee=a.nestedProperty(Ie,J[ne]),fe=ee.get(),!!fe){for(ie=a.nestedProperty(G,J[ne]),be=ie.get(),Array.isArray(be)||(be=[],ie.set(be)),j=0;j<fe.length;j++){var Ze=fe[j];Ze===null?be[j]=null:be[j]=w.extendObjectWithContainers(be[j],Ze)}ie.set(be)}}return G},w.dataArrayContainers=["transforms","dimensions"],w.layoutArrayContainers=t.layoutArrayContainers,w.extendTrace=function(G,$){return w.extendObjectWithContainers(G,$,w.dataArrayContainers)},w.extendLayout=function(G,$){return w.extendObjectWithContainers(G,$,w.layoutArrayContainers)},w.transition=function(G,$,J,Z,re,ne){var j={redraw:re.redraw},ee={},ie=[];return j.prepareFn=function(){for(var fe=Array.isArray($)?$.length:0,be=Z.slice(0,fe),Ae=0;Ae<be.length;Ae++){var Be=be[Ae],Ie=G._fullData[Be],Ze=Ie._module;if(Ze){if(Ze.animatable){var at=Ze.basePlotModule.name;ee[at]||(ee[at]=[]),ee[at].push(Be)}G.data[be[Ae]]=w.extendTrace(G.data[be[Ae]],$[Ae])}}var it=a.expandObjectPaths(a.extendDeepNoArrays({},J)),et=/^[xy]axis[0-9]*$/;for(var lt in it)et.test(lt)&&delete it[lt].range;w.extendLayout(G.layout,it),delete G.calcdata,w.supplyDefaults(G),w.doCalcdata(G);var Me=a.expandObjectPaths(J);if(Me){var ge=G._fullLayout._plots;for(var ce in ge){var ze=ge[ce],tt=ze.xaxis,nt=ze.yaxis,Qe=tt.range.slice(),Ct=nt.range.slice(),St=null,Ot=null,jt=null,ur=null;Array.isArray(Me[tt._name+".range"])?St=Me[tt._name+".range"].slice():Array.isArray((Me[tt._name]||{}).range)&&(St=Me[tt._name].range.slice()),Array.isArray(Me[nt._name+".range"])?Ot=Me[nt._name+".range"].slice():Array.isArray((Me[nt._name]||{}).range)&&(Ot=Me[nt._name].range.slice()),Qe&&St&&(tt.r2l(Qe[0])!==tt.r2l(St[0])||tt.r2l(Qe[1])!==tt.r2l(St[1]))&&(jt={xr0:Qe,xr1:St}),Ct&&Ot&&(nt.r2l(Ct[0])!==nt.r2l(Ot[0])||nt.r2l(Ct[1])!==nt.r2l(Ot[1]))&&(ur={yr0:Ct,yr1:Ot}),(jt||ur)&&ie.push(a.extendFlat({plotinfo:ze},jt,ur))}}return Promise.resolve()},j.runFn=function(fe){var be,Ae=G._fullLayout._basePlotModules,Be=ie.length,Ie;if(J)for(Ie=0;Ie<Ae.length;Ie++)Ae[Ie].transitionAxes&&Ae[Ie].transitionAxes(G,ie,ne,fe);Be?(be=a.extendFlat({},ne),be.duration=0,delete ee.cartesian):be=ne;for(var Ze in ee){var at=ee[Ze],it=G._fullData[at[0]]._module;it.basePlotModule.plot(G,at,be,fe)}},W(G,ne,j)},w.transitionFromReact=function(G,$,J,Z){var re=G._fullLayout,ne=re.transition,j={},ee=[];return j.prepareFn=function(){var ie=re._plots;j.redraw=!1,$.anim==="some"&&(j.redraw=!0),J.anim==="some"&&(j.redraw=!0);for(var fe in ie){var be=ie[fe],Ae=be.xaxis,Be=be.yaxis,Ie=Z[Ae._name].range.slice(),Ze=Z[Be._name].range.slice(),at=Ae.range.slice(),it=Be.range.slice();Ae.setScale(),Be.setScale();var et=null,lt=null;(Ae.r2l(Ie[0])!==Ae.r2l(at[0])||Ae.r2l(Ie[1])!==Ae.r2l(at[1]))&&(et={xr0:Ie,xr1:at}),(Be.r2l(Ze[0])!==Be.r2l(it[0])||Be.r2l(Ze[1])!==Be.r2l(it[1]))&&(lt={yr0:Ze,yr1:it}),(et||lt)&&ee.push(a.extendFlat({plotinfo:be},et,lt))}return Promise.resolve()},j.runFn=function(ie){for(var fe=G._fullData,be=G._fullLayout,Ae=be._basePlotModules,Be,Ie,Ze,at=[],it=0;it<fe.length;it++)at.push(it);function et(){if(G._fullLayout)for(var Me=0;Me<Ae.length;Me++)Ae[Me].transitionAxes&&Ae[Me].transitionAxes(G,ee,Be,ie)}function lt(){if(G._fullLayout)for(var Me=0;Me<Ae.length;Me++)Ae[Me].plot(G,Ze,Ie,ie)}ee.length&&$.anim?ne.ordering==="traces first"?(Be=a.extendFlat({},ne,{duration:0}),Ze=at,Ie=ne,setTimeout(et,ne.duration),lt()):(Be=ne,Ze=null,Ie=a.extendFlat({},ne,{duration:0}),setTimeout(lt,Be.duration),et()):ee.length?(Be=ne,et()):$.anim&&(Ze=at,Ie=ne,lt())},W(G,ne,j)};function W(G,$,J){var Z=!1;function re(Ae){var Be=Promise.resolve();if(!Ae)return Be;for(;Ae.length;)Be=Be.then(Ae.shift());return Be}function ne(Ae){if(Ae)for(;Ae.length;)Ae.shift()}function j(){return G.emit("plotly_transitioning",[]),new Promise(function(Ae){G._transitioning=!0,$.duration>0&&(G._transitioningWithDuration=!0),G._transitionData._interruptCallbacks.push(function(){Z=!0}),J.redraw&&G._transitionData._interruptCallbacks.push(function(){return t.call("redraw",G)}),G._transitionData._interruptCallbacks.push(function(){G.emit("plotly_transitioninterrupted",[])});var Be=0,Ie=0;function Ze(){return Be++,function(){Ie++,!Z&&Ie===Be&&ee(Ae)}}J.runFn(Ze),setTimeout(Ze())})}function ee(Ae){if(G._transitionData)return ne(G._transitionData._interruptCallbacks),Promise.resolve().then(function(){if(J.redraw)return t.call("redraw",G)}).then(function(){G._transitioning=!1,G._transitioningWithDuration=!1,G.emit("plotly_transitioned",[])}).then(Ae)}function ie(){if(G._transitionData)return G._transitioning=!1,re(G._transitionData._interruptCallbacks)}var fe=[w.previousPromises,ie,J.prepareFn,w.rehover,w.reselect,j],be=a.syncOrAsync(fe,G);return(!be||!be.then)&&(be=Promise.resolve()),be.then(function(){return G})}w.doCalcdata=function(G,$){var J=s.list(G),Z=G._fullData,re=G._fullLayout,ne,j,ee,ie,fe=new Array(Z.length),be=(G.calcdata||[]).slice();for(G.calcdata=fe,re._numBoxes=0,re._numViolins=0,re._violinScaleGroupStats={},G._hmpixcount=0,G._hmlumcount=0,re._piecolormap={},re._sunburstcolormap={},re._treemapcolormap={},re._iciclecolormap={},re._funnelareacolormap={},ee=0;ee<Z.length;ee++)if(Array.isArray($)&&$.indexOf(ee)===-1){fe[ee]=be[ee];continue}for(ee=0;ee<Z.length;ee++)ne=Z[ee],ne._arrayAttrs=r.findArrayAttributes(ne),ne._extremes={};var Ae=re._subplots.polar||[];for(ee=0;ee<Ae.length;ee++)J.push(re[Ae[ee]].radialaxis,re[Ae[ee]].angularaxis);for(var Be in re._colorAxes){var Ie=re[Be];Ie.cauto!==!1&&(delete Ie.cmin,delete Ie.cmax)}var Ze=!1;function at(lt){if(ne=Z[lt],j=ne._module,ne.visible===!0&&ne.transforms){if(j&&j.calc){var Me=j.calc(G,ne);Me[0]&&Me[0].t&&Me[0].t._scene&&delete Me[0].t._scene.dirty}for(ie=0;ie<ne.transforms.length;ie++){var ge=ne.transforms[ie];j=transformsRegistry[ge.type],j&&j.calcTransform&&(ne._hasCalcTransform=!0,Ze=!0,j.calcTransform(G,ne,ge))}}}function it(lt,Me){if(ne=Z[lt],j=ne._module,!!j.isContainer===Me){var ge=[];if(ne.visible===!0&&ne._length!==0){delete ne._indexToPoints;var ce=ne.transforms||[];for(ie=ce.length-1;ie>=0;ie--)if(ce[ie].enabled){ne._indexToPoints=ce[ie]._indexToPoints;break}j&&j.calc&&(ge=j.calc(G,ne))}(!Array.isArray(ge)||!ge[0])&&(ge=[{x:n,y:n}]),ge[0].t||(ge[0].t={}),ge[0].trace=ne,fe[lt]=ge}}for(se(J,Z,re),ee=0;ee<Z.length;ee++)it(ee,!0);for(ee=0;ee<Z.length;ee++)at(ee);for(Ze&&se(J,Z,re),ee=0;ee<Z.length;ee++)it(ee,!0);for(ee=0;ee<Z.length;ee++)it(ee,!1);he(G);var et=ue(J,G);if(et.length){for(re._numBoxes=0,re._numViolins=0,ee=0;ee<et.length;ee++)it(et[ee],!0);for(ee=0;ee<et.length;ee++)it(et[ee],!1);he(G)}t.getComponentMethod("fx","calc")(G),t.getComponentMethod("errorbars","calc")(G)};var Q=/(total|sum|min|max|mean|geometric mean|median) (ascending|descending)/;function ue(G,$){var J=[],Z,re,ne,j,ee;function ie(_r,yt,Fe){var Ke=yt._id.charAt(0);if(_r==="histogram2dcontour"){var Ne=yt._counterAxes[0],Ee=s.getFromId($,Ne),Ve=Ke==="x"||Ne==="x"&&Ee.type==="category",ke=Ke==="y"||Ne==="y"&&Ee.type==="category";return function(Te,Le){return Te===0||Le===0||Ve&&Te===Fe[Le].length-1||ke&&Le===Fe.length-1?-1:(Ke==="y"?Le:Te)-1}}else return function(Te,Le){return Ke==="y"?Le:Te}}var fe={min:function(_r){return a.aggNums(Math.min,null,_r)},max:function(_r){return a.aggNums(Math.max,null,_r)},sum:function(_r){return a.aggNums(function(yt,Fe){return yt+Fe},null,_r)},total:function(_r){return a.aggNums(function(yt,Fe){return yt+Fe},null,_r)},mean:function(_r){return a.mean(_r)},"geometric mean":function(_r){return a.geometricMean(_r)},median:function(_r){return a.median(_r)}};function be(_r,yt){return _r[1]-yt[1]}function Ae(_r,yt){return yt[1]-_r[1]}for(Z=0;Z<G.length;Z++){var Be=G[Z];if(Be.type==="category"){var Ie=Be.categoryorder.match(Q);if(Ie){var Ze=Ie[1],at=Ie[2],it=Be._id.charAt(0),et=it==="x",lt=[];for(re=0;re<Be._categories.length;re++)lt.push([Be._categories[re],[]]);for(re=0;re<Be._traceIndices.length;re++){var Me=Be._traceIndices[re],ge=$._fullData[Me];if(ge.visible===!0){var ce=ge.type;t.traceIs(ge,"histogram")&&(delete ge._xautoBinFinished,delete ge._yautoBinFinished);var ze=ce==="splom",tt=ce==="scattergl",nt=$.calcdata[Me];for(ne=0;ne<nt.length;ne++){var Qe=nt[ne],Ct,St;if(ze){var Ot=ge._axesDim[Be._id];if(!et){var jt=ge._diag[Ot][0];jt&&(Be=$._fullLayout[s.id2name(jt)])}var ur=Qe.trace.dimensions[Ot].values;for(j=0;j<ur.length;j++)for(Ct=Be._categoriesMap[ur[j]],ee=0;ee<Qe.trace.dimensions.length;ee++)if(ee!==Ot){var ar=Qe.trace.dimensions[ee];lt[Ct][1].push(ar.values[j])}}else if(tt){for(j=0;j<Qe.t.x.length;j++)et?(Ct=Qe.t.x[j],St=Qe.t.y[j]):(Ct=Qe.t.y[j],St=Qe.t.x[j]),lt[Ct][1].push(St);Qe.t&&Qe.t._scene&&delete Qe.t._scene.dirty}else if(Qe.hasOwnProperty("z")){St=Qe.z;var Cr=ie(ge.type,Be,St);for(j=0;j<St.length;j++)for(ee=0;ee<St[j].length;ee++)Ct=Cr(ee,j),Ct+1&&lt[Ct][1].push(St[j][ee])}else for(Ct=Qe.p,Ct===void 0&&(Ct=Qe[it]),St=Qe.s,St===void 0&&(St=Qe.v),St===void 0&&(St=et?Qe.y:Qe.x),Array.isArray(St)||(St===void 0?St=[]:St=[St]),j=0;j<St.length;j++)lt[Ct][1].push(St[j])}}}Be._categoriesValue=lt;var vr=[];for(re=0;re<lt.length;re++)vr.push([lt[re][0],fe[Ze](lt[re][1])]);vr.sort(at==="descending"?Ae:be),Be._categoriesAggregatedValue=vr,Be._initialCategories=vr.map(function(_r){return _r[0]}),J=J.concat(Be.sortByInitialCategories())}}}return J}function se(G,$,J){var Z={};function re(ie){ie.clearCalc(),ie.type==="multicategory"&&ie.setupMultiCategory($),Z[ie._id]=1}a.simpleMap(G,re);for(var ne=J._axisMatchGroups||[],j=0;j<ne.length;j++)for(var ee in ne[j])Z[ee]||re(J[s.id2name(ee)])}function he(G){var $=G._fullLayout,J=$._visibleModules,Z={},re,ne,j;for(ne=0;ne<J.length;ne++){var ee=J[ne],ie=ee.crossTraceCalc;if(ie){var fe=ee.basePlotModule.name;Z[fe]?a.pushUnique(Z[fe],ie):Z[fe]=[ie]}}for(j in Z){var be=Z[j],Ae=$._subplots[j];if(Array.isArray(Ae))for(re=0;re<Ae.length;re++){var Be=Ae[re],Ie=j==="cartesian"?$._plots[Be]:$[Be];for(ne=0;ne<be.length;ne++)be[ne](G,Ie,Be)}else for(ne=0;ne<be.length;ne++)be[ne](G)}}w.rehover=function(G){G._fullLayout._rehover&&G._fullLayout._rehover()},w.redrag=function(G){G._fullLayout._redrag&&G._fullLayout._redrag()},w.reselect=function(G){var $=G._fullLayout,J=(G.layout||{}).selections,Z=$._previousSelections;$._previousSelections=J;var re=$._reselect||JSON.stringify(J)!==JSON.stringify(Z);t.getComponentMethod("selections","reselect")(G,re)},w.generalUpdatePerTraceModule=function(G,$,J,Z){var re=$.traceHash,ne={},j;for(j=0;j<J.length;j++){var ee=J[j],ie=ee[0].trace;ie.visible&&(ne[ie.type]=ne[ie.type]||[],ne[ie.type].push(ee))}for(var fe in re)if(!ne[fe]){var be=re[fe][0],Ae=be[0].trace;Ae.visible=!1,ne[fe]=[be]}for(var Be in ne){var Ie=ne[Be],Ze=Ie[0][0].trace._module;Ze.plot(G,$,a.filterVisible(Ie),Z)}$.traceHash=ne},w.plotBasePlot=function(G,$,J,Z,re){var ne=t.getModule(G),j=T($.calcdata,ne)[0];ne.plot($,j,Z,re)},w.cleanBasePlot=function(G,$,J,Z,re){var ne=re._has&&re._has(G),j=J._has&&J._has(G);ne&&!j&&re["_"+G+"layer"].selectAll("g.trace").remove()}}}),vd=Ye({"src/constants/xmlns_namespaces.js"(X){"use strict";X.xmlns="http://www.w3.org/2000/xmlns/",X.svg="http://www.w3.org/2000/svg",X.xlink="http://www.w3.org/1999/xlink",X.svgAttrs={xmlns:X.svg,"xmlns:xlink":X.xlink}}}),oh=Ye({"src/constants/alignment.js"(X,H){"use strict";H.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"}}}}),jl=Ye({"src/lib/svg_text_utils.js"(X){"use strict";var H=_n(),g=ta(),x=g.strTranslate,A=vd(),M=oh().LINE_SPACING,e=/([^$]*)([$]+[^$]*[$]+)([^$]*)/;X.convertToTspans=function(O,I,N){var U=O.text(),W=!O.attr("data-notex")&&I&&I._context.typesetMath&&typeof MathJax<"u"&&U.match(e),Q=H.select(O.node().parentNode);if(Q.empty())return;var ue=O.attr("class")?O.attr("class").split(" ")[0]:"text";ue+="-math",Q.selectAll("svg."+ue).remove(),Q.selectAll("g."+ue+"-group").remove(),O.style("display",null).attr({"data-unformatted":U,"data-math":"N"});function se(){Q.empty()||(ue=O.attr("class")+"-math",Q.select("svg."+ue).remove()),O.text("").style("white-space","pre");var he=L(O.node(),U);he&&O.style("pointer-events","all"),X.positionText(O),N&&N.call(O)}return W?(I&&I._promises||[]).push(new Promise(function(he){O.style("display","none");var G=parseInt(O.node().style.fontSize,10),$={fontSize:G};i(W[2],$,function(J,Z,re){Q.selectAll("svg."+ue).remove(),Q.selectAll("g."+ue+"-group").remove();var ne=J&&J.select("svg");if(!ne||!ne.node()){se(),he();return}var j=Q.append("g").classed(ue+"-group",!0).attr({"pointer-events":"none","data-unformatted":U,"data-math":"Y"});j.node().appendChild(ne.node()),Z&&Z.node()&&ne.node().insertBefore(Z.node().cloneNode(!0),ne.node().firstChild);var ee=re.width,ie=re.height;ne.attr({class:ue,height:ie,preserveAspectRatio:"xMinYMin meet"}).style({overflow:"visible","pointer-events":"none"});var fe=O.node().style.fill||"black",be=ne.select("g");be.attr({fill:fe,stroke:fe});var Ae=be.node().getBoundingClientRect(),Be=Ae.width,Ie=Ae.height;(Be>ee||Ie>ie)&&(ne.style("overflow","hidden"),Ae=ne.node().getBoundingClientRect(),Be=Ae.width,Ie=Ae.height);var Ze=+O.attr("x"),at=+O.attr("y"),it=G||O.node().getBoundingClientRect().height,et=-it/4;if(ue[0]==="y")j.attr({transform:"rotate("+[-90,Ze,at]+")"+x(-Be/2,et-Ie/2)});else if(ue[0]==="l")at=et-Ie/2;else if(ue[0]==="a"&&ue.indexOf("atitle")!==0)Ze=0,at=et;else{var lt=O.attr("text-anchor");Ze=Ze-Be*(lt==="middle"?.5:lt==="end"?1:0),at=at+et-Ie/2}ne.attr({x:Ze,y:at}),N&&N.call(O,j),he(j)})})):se(),O};var t=/(<|&lt;|&#60;)/g,r=/(>|&gt;|&#62;)/g;function o(O){return O.replace(t,"\\lt ").replace(r,"\\gt ")}var a=[["$","$"],["\\(","\\)"]];function i(O,I,N){var U=parseInt((MathJax.version||"").split(".")[0]);if(U!==2&&U!==3){g.warn("No MathJax version:",MathJax.version);return}var W,Q,ue,se,he=function(){return Q=g.extendDeepAll({},MathJax.Hub.config),ue=MathJax.Hub.processSectionDelay,MathJax.Hub.processSectionDelay!==void 0&&(MathJax.Hub.processSectionDelay=0),MathJax.Hub.Config({messageStyle:"none",tex2jax:{inlineMath:a},displayAlign:"left"})},G=function(){Q=g.extendDeepAll({},MathJax.config),MathJax.config.tex||(MathJax.config.tex={}),MathJax.config.tex.inlineMath=a},$=function(){if(W=MathJax.Hub.config.menuSettings.renderer,W!=="SVG")return MathJax.Hub.setRenderer("SVG")},J=function(){W=MathJax.config.startup.output,W!=="svg"&&(MathJax.config.startup.output="svg")},Z=function(){var fe="math-output-"+g.randstr({},64);se=H.select("body").append("div").attr({id:fe}).style({visibility:"hidden",position:"absolute","font-size":I.fontSize+"px"}).text(o(O));var be=se.node();return U===2?MathJax.Hub.Typeset(be):MathJax.typeset([be])},re=function(){var fe=se.select(U===2?".MathJax_SVG":".MathJax"),be=!fe.empty()&&se.select("svg").node();if(!be)g.log("There was an error in the tex syntax.",O),N();else{var Ae=be.getBoundingClientRect(),Be;U===2?Be=H.select("body").select("#MathJax_SVG_glyphs"):Be=fe.select("defs"),N(fe,Be,Ae)}se.remove()},ne=function(){if(W!=="SVG")return MathJax.Hub.setRenderer(W)},j=function(){W!=="svg"&&(MathJax.config.startup.output=W)},ee=function(){return ue!==void 0&&(MathJax.Hub.processSectionDelay=ue),MathJax.Hub.Config(Q)},ie=function(){MathJax.config=Q};U===2?MathJax.Hub.Queue(he,$,Z,re,ne,ee):U===3&&(G(),J(),MathJax.startup.defaultReady(),MathJax.startup.promise.then(function(){Z(),re(),j(),ie()}))}var n={sup:"font-size:70%",sub:"font-size:70%",s:"text-decoration:line-through",u:"text-decoration:underline",b:"font-weight:bold",i:"font-style:italic",a:"cursor:pointer",span:"",em:"font-style:italic;font-weight:bold"},s={sub:"0.3em",sup:"-0.6em"},c={sub:"-0.21em",sup:"0.42em"},h="\u200B",v=["http:","https:","mailto:","",void 0,":"],p=X.NEWLINES=/(\r\n?|\n)/g,T=/(<[^<>]*>)/,l=/<(\/?)([^ >]*)(\s+(.*))?>/i,_=/<br(\s+.*)?>/i;X.BR_TAG_ALL=/<br(\s+.*)?>/gi;var w=/(^|[\s"'])style\s*=\s*("([^"]*);?"|'([^']*);?')/i,S=/(^|[\s"'])href\s*=\s*("([^"]*)"|'([^']*)')/i,E=/(^|[\s"'])target\s*=\s*("([^"\s]*)"|'([^'\s]*)')/i,m=/(^|[\s"'])popup\s*=\s*("([\w=,]*)"|'([\w=,]*)')/i;function b(O,I){if(!O)return null;var N=O.match(I),U=N&&(N[3]||N[4]);return U&&f(U)}var d=/(^|;)\s*color:/;X.plainText=function(O,I){I=I||{};for(var N=I.len!==void 0&&I.len!==-1?I.len:1/0,U=I.allowedTags!==void 0?I.allowedTags:["br"],W="...",Q=W.length,ue=O.split(T),se=[],he="",G=0,$=0;$<ue.length;$++){var J=ue[$],Z=J.match(l),re=Z&&Z[2].toLowerCase();if(re)U.indexOf(re)!==-1&&(se.push(J),he=re);else{var ne=J.length;if(G+ne<N)se.push(J),G+=ne;else if(G<N){var j=N-G;he&&(he!=="br"||j<=Q||ne<=Q)&&se.pop(),N>Q?se.push(J.substr(0,j-Q)+W):se.push(J.substr(0,j));break}he=""}}return se.join("")};var u={mu:"\u03BC",amp:"&",lt:"<",gt:">",nbsp:"\xA0",times:"\xD7",plusmn:"\xB1",deg:"\xB0"},y=/&(#\d+|#x[\da-fA-F]+|[a-z]+);/g;function f(O){return O.replace(y,function(I,N){var U;return N.charAt(0)==="#"?U=P(N.charAt(1)==="x"?parseInt(N.substr(2),16):parseInt(N.substr(1),10)):U=u[N],U||I})}X.convertEntities=f;function P(O){if(!(O>1114111)){var I=String.fromCodePoint;if(I)return I(O);var N=String.fromCharCode;return O<=65535?N(O):N((O>>10)+55232,O%1024+56320)}}function L(O,I){I=I.replace(p," ");var N=!1,U=[],W,Q=-1;function ue(){Q++;var Ie=document.createElementNS(A.svg,"tspan");H.select(Ie).attr({class:"line",dy:Q*M+"em"}),O.appendChild(Ie),W=Ie;var Ze=U;if(U=[{node:Ie}],Ze.length>1)for(var at=1;at<Ze.length;at++)se(Ze[at])}function se(Ie){var Ze=Ie.type,at={},it;if(Ze==="a"){it="a";var et=Ie.target,lt=Ie.href,Me=Ie.popup;lt&&(at={"xlink:xlink:show":et==="_blank"||et.charAt(0)!=="_"?"new":"replace",target:et,"xlink:xlink:href":lt},Me&&(at.onclick='window.open(this.href.baseVal,this.target.baseVal,"'+Me+'");return false;'))}else it="tspan";Ie.style&&(at.style=Ie.style);var ge=document.createElementNS(A.svg,it);if(Ze==="sup"||Ze==="sub"){he(W,h),W.appendChild(ge);var ce=document.createElementNS(A.svg,"tspan");he(ce,h),H.select(ce).attr("dy",c[Ze]),at.dy=s[Ze],W.appendChild(ge),W.appendChild(ce)}else W.appendChild(ge);H.select(ge).attr(at),W=Ie.node=ge,U.push(Ie)}function he(Ie,Ze){Ie.appendChild(document.createTextNode(Ze))}function G(Ie){if(U.length===1){g.log("Ignoring unexpected end tag </"+Ie+">.",I);return}var Ze=U.pop();Ie!==Ze.type&&g.log("Start tag <"+Ze.type+"> doesnt match end tag <"+Ie+">. Pretending it did match.",I),W=U[U.length-1].node}var $=_.test(I);$?ue():(W=O,U=[{node:O}]);for(var J=I.split(T),Z=0;Z<J.length;Z++){var re=J[Z],ne=re.match(l),j=ne&&ne[2].toLowerCase(),ee=n[j];if(j==="br")ue();else if(ee===void 0)he(W,f(re));else if(ne[1])G(j);else{var ie=ne[4],fe={type:j},be=b(ie,w);if(be?(be=be.replace(d,"$1 fill:"),ee&&(be+=";"+ee)):ee&&(be=ee),be&&(fe.style=be),j==="a"){N=!0;var Ae=b(ie,S);if(Ae){var Be=z(Ae);Be&&(fe.href=Be,fe.target=b(ie,E)||"_blank",fe.popup=b(ie,m))}}se(fe)}}return N}function z(O){var I=encodeURI(decodeURI(O)),N=document.createElement("a"),U=document.createElement("a");N.href=O,U.href=I;var W=N.protocol,Q=U.protocol;return v.indexOf(W)!==-1&&v.indexOf(Q)!==-1?I:""}X.sanitizeHTML=function(I){I=I.replace(p," ");for(var N=document.createElement("p"),U=N,W=[],Q=I.split(T),ue=0;ue<Q.length;ue++){var se=Q[ue],he=se.match(l),G=he&&he[2].toLowerCase();if(G in n)if(he[1])W.length&&(U=W.pop());else{var $=he[4],J=b($,w),Z=J?{style:J}:{};if(G==="a"){var re=b($,S);if(re){var ne=z(re);if(ne){Z.href=ne;var j=b($,E);j&&(Z.target=j)}}}var ee=document.createElement(G);U.appendChild(ee),H.select(ee).attr(Z),U=ee,W.push(ee)}else U.appendChild(document.createTextNode(f(se)))}var ie="innerHTML";return N[ie]},X.lineCount=function(I){return I.selectAll("tspan.line").size()||1},X.positionText=function(I,N,U){return I.each(function(){var W=H.select(this);function Q(he,G){return G===void 0?(G=W.attr(he),G===null&&(W.attr(he,0),G=0)):W.attr(he,G),G}var ue=Q("x",N),se=Q("y",U);this.nodeName==="text"&&W.selectAll("tspan.line").attr({x:ue,y:se})})};function F(O,I,N){var U=N.horizontalAlign,W=N.verticalAlign||"top",Q=O.node().getBoundingClientRect(),ue=I.node().getBoundingClientRect(),se,he,G;return W==="bottom"?he=function(){return Q.bottom-se.height}:W==="middle"?he=function(){return Q.top+(Q.height-se.height)/2}:he=function(){return Q.top},U==="right"?G=function(){return Q.right-se.width}:U==="center"?G=function(){return Q.left+(Q.width-se.width)/2}:G=function(){return Q.left},function(){se=this.node().getBoundingClientRect();var $=G()-ue.left,J=he()-ue.top,Z=N.gd||{};if(N.gd){Z._fullLayout._calcInverseTransform(Z);var re=g.apply3DTransform(Z._fullLayout._invTransform)($,J);$=re[0],J=re[1]}return this.style({top:J+"px",left:$+"px","z-index":1e3}),this}}var B="1px ";X.makeTextShadow=function(O){var I=B,N=B,U=B;return I+N+U+O+", -"+I+"-"+N+U+O+", "+I+"-"+N+U+O+", -"+I+N+U+O},X.makeEditable=function(O,I){var N=I.gd,U=I.delegate,W=H.dispatch("edit","input","cancel"),Q=U||O;if(O.style({"pointer-events":U?"none":"all"}),O.size()!==1)throw new Error("boo");function ue(){he(),O.style({opacity:0});var G=Q.attr("class"),$;G?$="."+G.split(" ")[0]+"-math-group":$="[class*=-math-group]",$&&H.select(O.node().parentNode).select($).style({opacity:0})}function se(G){var $=G.node(),J=document.createRange();J.selectNodeContents($);var Z=window.getSelection();Z.removeAllRanges(),Z.addRange(J),$.focus()}function he(){var G=H.select(N),$=G.select(".svg-container"),J=$.append("div"),Z=O.node().style,re=parseFloat(Z.fontSize||12),ne=I.text;ne===void 0&&(ne=O.attr("data-unformatted")),J.classed("plugin-editable editable",!0).style({position:"absolute","font-family":Z.fontFamily||"Arial","font-size":re,color:I.fill||Z.fill||"black",opacity:1,"background-color":I.background||"transparent",outline:"#ffffff33 1px solid",margin:[-re/8+1,0,0,-1].join("px ")+"px",padding:"0","box-sizing":"border-box"}).attr({contenteditable:!0}).text(ne).call(F(O,$,I)).on("blur",function(){N._editing=!1,O.text(this.textContent).style({opacity:1});var j=H.select(this).attr("class"),ee;j?ee="."+j.split(" ")[0]+"-math-group":ee="[class*=-math-group]",ee&&H.select(O.node().parentNode).select(ee).style({opacity:0});var ie=this.textContent;H.select(this).transition().duration(0).remove(),H.select(document).on("mouseup",null),W.edit.call(O,ie)}).on("focus",function(){var j=this;N._editing=!0,H.select(document).on("mouseup",function(){if(H.event.target===j)return!1;document.activeElement===J.node()&&J.node().blur()})}).on("keyup",function(){H.event.which===27?(N._editing=!1,O.style({opacity:1}),H.select(this).style({opacity:0}).on("blur",function(){return!1}).transition().remove(),W.cancel.call(O,this.textContent)):(W.input.call(O,this.textContent),H.select(this).call(F(O,$,I)))}).on("keydown",function(){H.event.which===13&&this.blur()}).call(se)}return I.immediate?ue():Q.on("click",ue),H.rebind(O,W,"on")}}}),Up=Ye({"src/components/colorscale/helpers.js"(X,H){"use strict";var g=_n(),x=bh(),A=jo(),M=ta(),e=Fn(),t=Hg().isValid;function r(p,T,l){var _=T?M.nestedProperty(p,T).get()||{}:p,w=_[l||"color"];w&&w._inputArray&&(w=w._inputArray);var S=!1;if(M.isArrayOrTypedArray(w)){for(var E=0;E<w.length;E++)if(A(w[E])){S=!0;break}}return M.isPlainObject(_)&&(S||_.showscale===!0||A(_.cmin)&&A(_.cmax)||t(_.colorscale)||M.isPlainObject(_.colorbar))}var o=["showscale","autocolorscale","colorscale","reversescale","colorbar"],a=["min","max","mid","auto"];function i(p){var T=p._colorAx,l=T||p,_={},w,S,E;for(S=0;S<o.length;S++)E=o[S],_[E]=l[E];if(T)for(w="c",S=0;S<a.length;S++)E=a[S],_[E]=l["c"+E];else{var m;for(S=0;S<a.length;S++){if(E=a[S],m="c"+E,m in l){_[E]=l[m];continue}m="z"+E,m in l&&(_[E]=l[m])}w=m.charAt(0)}return _._sync=function(b,d){var u=a.indexOf(b)!==-1?w+b:b;l[u]=l["_"+u]=d},_}function n(p){for(var T=i(p),l=T.min,_=T.max,w=T.reversescale?s(T.colorscale):T.colorscale,S=w.length,E=new Array(S),m=new Array(S),b=0;b<S;b++){var d=w[b];E[b]=l+d[0]*(_-l),m[b]=d[1]}return{domain:E,range:m}}function s(p){for(var T=p.length,l=new Array(T),_=T-1,w=0;_>=0;_--,w++){var S=p[_];l[w]=[1-S[0],S[1]]}return l}function c(p,T){T=T||{};for(var l=p.domain,_=p.range,w=_.length,S=new Array(w),E=0;E<w;E++){var m=x(_[E]).toRgb();S[E]=[m.r,m.g,m.b,m.a]}var b=g.scale.linear().domain(l).range(S).clamp(!0),d=T.noNumericCheck,u=T.returnArray,y;return d&&u?y=b:d?y=function(f){return v(b(f))}:u?y=function(f){return A(f)?b(f):x(f).isValid()?f:e.defaultLine}:y=function(f){return A(f)?v(b(f)):x(f).isValid()?f:e.defaultLine},y.domain=b.domain,y.range=function(){return _},y}function h(p,T){return c(n(p),T)}function v(p){var T={r:p[0],g:p[1],b:p[2],a:p[3]};return x(T).toRgbString()}H.exports={hasColorscale:r,extractOpts:i,extractScale:n,flipScale:s,makeColorScaleFunc:c,makeColorScaleFuncFromTrace:h}}}),Cc=Ye({"src/plots/cartesian/axis_format_attributes.js"(X,H){"use strict";var g=eS(),x=g.FORMAT_LINK,A=g.DATE_FORMAT_LINK;function M(r,o){return{valType:"string",dflt:"",editType:"none",description:(o?e:t)("hover text",r)+["By default the values are formatted using "+(o?"generic number format":"`"+r+"axis.hoverformat`")+"."].join(" ")}}function e(r,o){return["Sets the "+r+" formatting rule"+(o?"for `"+o+"` ":""),"using d3 formatting mini-languages","which are very similar to those in Python. For numbers, see: "+x+"."].join(" ")}function t(r,o){return e(r,o)+[" And for dates see: "+A+".","We add two items to d3's date formatter:","*%h* for half of the year as a decimal number as well as","*%{n}f* for fractional seconds","with n digits. For example, *2016-10-13 09:15:23.456* with tickformat","*%H~%M~%S.%2f* would display *09~15~23.46*"].join(" ")}H.exports={axisHoverFormat:M,descriptionOnlyNumbers:e,descriptionWithDates:t}}}),Vh=Ye({"src/plots/cartesian/layout_attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Uh().dash,M=Oo().extendFlat,e=cl().templatedArray,t=Cc().descriptionWithDates,r=ks().ONEDAY,o=wh(),a=o.HOUR_PATTERN,i=o.WEEKDAY_PATTERN,n={valType:"enumerated",values:["auto","linear","array"],editType:"ticks",impliedEdits:{tick0:void 0,dtick:void 0}},s=M({},n,{values:n.values.slice().concat(["sync"])});function c(d){return{valType:"integer",min:0,dflt:d?5:0,editType:"ticks"}}var h={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},v={valType:"any",editType:"ticks",impliedEdits:{tickmode:"linear"}},p={valType:"data_array",editType:"ticks"},T={valType:"enumerated",values:["outside","inside",""],editType:"ticks"};function l(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=5),u}function _(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=1),u}var w={valType:"color",dflt:x.defaultLine,editType:"ticks"},S={valType:"color",dflt:x.lightLine,editType:"ticks"};function E(d){var u={valType:"number",min:0,editType:"ticks"};return d||(u.dflt=1),u}var m=M({},A,{editType:"ticks"}),b={valType:"boolean",editType:"ticks"};H.exports={visible:{valType:"boolean",editType:"plot"},color:{valType:"color",dflt:x.defaultLine,editType:"ticks"},title:{text:{valType:"string",editType:"ticks"},font:g({editType:"ticks"}),standoff:{valType:"number",min:0,editType:"ticks"},editType:"ticks"},type:{valType:"enumerated",values:["-","linear","log","date","category","multicategory"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:{valType:"enumerated",values:["convert types","strict"],dflt:"convert types",editType:"calc"},autorange:{valType:"enumerated",values:[!0,!1,"reversed","min reversed","max reversed","min","max"],dflt:!0,editType:"axrange",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},autorangeoptions:{minallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmin:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},clipmax:{valType:"any",editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},include:{valType:"any",arrayOk:!0,editType:"plot",impliedEdits:{"range[0]":void 0,"range[1]":void 0}},editType:"plot"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"plot"},range:{valType:"info_array",items:[{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0},{valType:"any",editType:"axrange",impliedEdits:{"^autorange":!1},anim:!0}],editType:"axrange",impliedEdits:{autorange:!1},anim:!0},minallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},maxallowed:{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},insiderange:{valType:"info_array",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},scaleanchor:{valType:"enumerated",values:[o.idRegex.x.toString(),o.idRegex.y.toString(),!1],editType:"plot"},scaleratio:{valType:"number",min:0,dflt:1,editType:"plot"},constrain:{valType:"enumerated",values:["range","domain"],editType:"plot"},constraintoward:{valType:"enumerated",values:["left","center","right","top","middle","bottom"],editType:"plot"},matches:{valType:"enumerated",values:[o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"calc"},rangebreaks:e("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:[i,a,""],editType:"calc"},values:{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"any",editType:"calc"}},dvalue:{valType:"number",editType:"calc",min:0,dflt:r},editType:"calc"}),tickmode:s,nticks:c(),tick0:h,dtick:v,ticklabelstep:{valType:"integer",min:1,dflt:1,editType:"ticks"},tickvals:p,ticktext:{valType:"data_array",editType:"ticks"},ticks:T,tickson:{valType:"enumerated",values:["labels","boundaries"],dflt:"labels",editType:"ticks"},ticklabelmode:{valType:"enumerated",values:["instant","period"],dflt:"instant",editType:"ticks"},ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside",editType:"calc"},ticklabeloverflow:{valType:"enumerated",values:["allow","hide past div","hide past domain"],editType:"calc"},ticklabelshift:{valType:"integer",dflt:0,editType:"ticks"},ticklabelstandoff:{valType:"integer",dflt:0,editType:"ticks"},ticklabelindex:{valType:"integer",arrayOk:!0,editType:"calc"},mirror:{valType:"enumerated",values:[!0,"ticks",!1,"all","allticks"],dflt:!1,editType:"ticks+layoutstyle"},ticklen:l(),tickwidth:_(),tickcolor:w,showticklabels:{valType:"boolean",dflt:!0,editType:"ticks"},labelalias:{valType:"any",dflt:!1,editType:"ticks"},automargin:{valType:"flaglist",flags:["height","width","left","right","top","bottom"],extras:[!0,!1],dflt:!1,editType:"ticks"},showspikes:{valType:"boolean",dflt:!1,editType:"modebar"},spikecolor:{valType:"color",dflt:null,editType:"none"},spikethickness:{valType:"number",dflt:3,editType:"none"},spikedash:M({},A,{dflt:"dash",editType:"none"}),spikemode:{valType:"flaglist",flags:["toaxis","across","marker"],dflt:"toaxis",editType:"none"},spikesnap:{valType:"enumerated",values:["data","cursor","hovered data"],dflt:"hovered data",editType:"none"},tickfont:g({editType:"ticks"}),tickangle:{valType:"angle",dflt:"auto",editType:"ticks"},autotickangles:{valType:"info_array",freeLength:!0,items:{valType:"angle"},dflt:[0,30,90],editType:"ticks"},tickprefix:{valType:"string",dflt:"",editType:"ticks"},showtickprefix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},ticksuffix:{valType:"string",dflt:"",editType:"ticks"},showticksuffix:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},showexponent:{valType:"enumerated",values:["all","first","last","none"],dflt:"all",editType:"ticks"},exponentformat:{valType:"enumerated",values:["none","e","E","power","SI","B"],dflt:"B",editType:"ticks"},minexponent:{valType:"number",dflt:3,min:0,editType:"ticks"},separatethousands:{valType:"boolean",dflt:!1,editType:"ticks"},tickformat:{valType:"string",dflt:"",editType:"ticks",description:t("tick label")},tickformatstops:e("tickformatstop",{enabled:{valType:"boolean",dflt:!0,editType:"ticks"},dtickrange:{valType:"info_array",items:[{valType:"any",editType:"ticks"},{valType:"any",editType:"ticks"}],editType:"ticks"},value:{valType:"string",dflt:"",editType:"ticks"},editType:"ticks"}),hoverformat:{valType:"string",dflt:"",editType:"none",description:t("hover text")},showline:{valType:"boolean",dflt:!1,editType:"ticks+layoutstyle"},linecolor:{valType:"color",dflt:x.defaultLine,editType:"layoutstyle"},linewidth:{valType:"number",min:0,dflt:1,editType:"ticks+layoutstyle"},showgrid:b,gridcolor:S,gridwidth:E(),griddash:m,zeroline:{valType:"boolean",editType:"ticks"},zerolinecolor:{valType:"color",dflt:x.defaultLine,editType:"ticks"},zerolinewidth:{valType:"number",dflt:1,editType:"ticks"},showdividers:{valType:"boolean",dflt:!0,editType:"ticks"},dividercolor:{valType:"color",dflt:x.defaultLine,editType:"ticks"},dividerwidth:{valType:"number",dflt:1,editType:"ticks"},anchor:{valType:"enumerated",values:["free",o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"plot"},side:{valType:"enumerated",values:["top","bottom","left","right"],editType:"plot"},overlaying:{valType:"enumerated",values:["free",o.idRegex.x.toString(),o.idRegex.y.toString()],editType:"plot"},minor:{tickmode:n,nticks:c("minor"),tick0:h,dtick:v,tickvals:p,ticks:T,ticklen:l("minor"),tickwidth:_("minor"),tickcolor:w,gridcolor:S,gridwidth:E("minor"),griddash:m,showgrid:b,editType:"ticks"},layer:{valType:"enumerated",values:["above traces","below traces"],dflt:"above traces",editType:"plot"},domain:{valType:"info_array",items:[{valType:"number",min:0,max:1,editType:"plot"},{valType:"number",min:0,max:1,editType:"plot"}],dflt:[0,1],editType:"plot"},position:{valType:"number",min:0,max:1,dflt:0,editType:"plot"},autoshift:{valType:"boolean",dflt:!1,editType:"plot"},shift:{valType:"number",editType:"plot"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array","total ascending","total descending","min ascending","min descending","max ascending","max descending","sum ascending","sum descending","mean ascending","mean descending","geometric mean ascending","geometric mean descending","median ascending","median descending"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),y2=Ye({"src/components/colorbar/attributes.js"(X,H){"use strict";var g=Vh(),x=Au(),A=Oo().extendFlat,M=Ou().overrideAll;H.exports=M({orientation:{valType:"enumerated",values:["h","v"],dflt:"v"},thicknessmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels"},thickness:{valType:"number",min:0,dflt:30},lenmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"fraction"},len:{valType:"number",min:0,dflt:1},x:{valType:"number"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["left","center","right"]},xpad:{valType:"number",min:0,dflt:10},y:{valType:"number"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["top","middle","bottom"]},ypad:{valType:"number",min:0,dflt:10},outlinecolor:g.linecolor,outlinewidth:g.linewidth,bordercolor:g.linecolor,borderwidth:{valType:"number",min:0,dflt:0},bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)"},tickmode:g.minor.tickmode,nticks:g.nticks,tick0:g.tick0,dtick:g.dtick,tickvals:g.tickvals,ticktext:g.ticktext,ticks:A({},g.ticks,{dflt:""}),ticklabeloverflow:A({},g.ticklabeloverflow,{}),ticklabelposition:{valType:"enumerated",values:["outside","inside","outside top","inside top","outside left","inside left","outside right","inside right","outside bottom","inside bottom"],dflt:"outside"},ticklen:g.ticklen,tickwidth:g.tickwidth,tickcolor:g.tickcolor,ticklabelstep:g.ticklabelstep,showticklabels:g.showticklabels,labelalias:g.labelalias,tickfont:x({}),tickangle:g.tickangle,tickformat:g.tickformat,tickformatstops:g.tickformatstops,tickprefix:g.tickprefix,showtickprefix:g.showtickprefix,ticksuffix:g.ticksuffix,showticksuffix:g.showticksuffix,separatethousands:g.separatethousands,exponentformat:g.exponentformat,minexponent:g.minexponent,showexponent:g.showexponent,title:{text:{valType:"string"},font:x({}),side:{valType:"enumerated",values:["right","top","bottom"]}}},"colorbars","from-root")}}),tu=Ye({"src/components/colorscale/attributes.js"(X,H){"use strict";var g=y2(),x=Ky().counter,A=Km(),M=Hg().scales,e=A(M);function t(r){return"`"+r+"`"}H.exports=function(o,a){o=o||"",a=a||{};var i=a.cLetter||"c",n="onlyIfNumerical"in a?a.onlyIfNumerical:!!o,s="noScale"in a?a.noScale:o==="marker.line",c="showScaleDflt"in a?a.showScaleDflt:i==="z",h=typeof a.colorscaleDflt=="string"?M[a.colorscaleDflt]:null,v=a.editTypeOverride||"",p=o?o+".":"",T,l;"colorAttr"in a?(T=a.colorAttr,l=a.colorAttr):(T={z:"z",c:"color"}[i],l="in "+t(p+T));var _=n?" Has an effect only if "+l+" is set to a numerical array.":"",w=i+"auto",S=i+"min",E=i+"max",m=i+"mid",b=t(p+w),d=t(p+S),u=t(p+E),y=d+" and "+u,f={};f[S]=f[E]=void 0;var P={};P[w]=!1;var L={};return T==="color"&&(L.color={valType:"color",arrayOk:!0,editType:v||"style"},a.anim&&(L.color.anim=!0)),L[w]={valType:"boolean",dflt:!0,editType:"calc",impliedEdits:f},L[S]={valType:"number",dflt:null,editType:v||"plot",impliedEdits:P},L[E]={valType:"number",dflt:null,editType:v||"plot",impliedEdits:P},L[m]={valType:"number",dflt:null,editType:"calc",impliedEdits:f},L.colorscale={valType:"colorscale",editType:"calc",dflt:h,impliedEdits:{autocolorscale:!1}},L.autocolorscale={valType:"boolean",dflt:a.autoColorDflt!==!1,editType:"calc",impliedEdits:{colorscale:void 0}},L.reversescale={valType:"boolean",dflt:!1,editType:"plot"},s||(L.showscale={valType:"boolean",dflt:c,editType:"calc"},L.colorbar=g),a.noColorAxis||(L.coloraxis={valType:"subplotid",regex:x("coloraxis"),dflt:null,editType:"calc"}),L}}}),nS=Ye({"src/components/colorscale/layout_attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=tu(),A=Hg().scales;H.exports={editType:"calc",colorscale:{editType:"calc",sequential:{valType:"colorscale",dflt:A.Reds,editType:"calc"},sequentialminus:{valType:"colorscale",dflt:A.Blues,editType:"calc"},diverging:{valType:"colorscale",dflt:A.RdBu,editType:"calc"}},coloraxis:g({_isSubplotObj:!0,editType:"calc"},x("",{colorAttr:"corresponding trace color array(s)",noColorAxis:!0,showScaleDflt:!0}))}}}),oS=Ye({"src/components/colorbar/has_colorbar.js"(X,H){"use strict";var g=ta();H.exports=function(A){return g.isPlainObject(A.colorbar)}}}),sS=Ye({"src/plots/cartesian/clean_ticks.js"(X){"use strict";var H=jo(),g=ta(),x=ks(),A=x.ONEDAY,M=x.ONEWEEK;X.dtick=function(e,t){var r=t==="log",o=t==="date",a=t==="category",i=o?A:1;if(!e)return i;if(H(e))return e=Number(e),e<=0?i:a?Math.max(1,Math.round(e)):o?Math.max(.1,e):e;if(typeof e!="string"||!(o||r))return i;var n=e.charAt(0),s=e.substr(1);return s=H(s)?Number(s):0,s<=0||!(o&&n==="M"&&s===Math.round(s)||r&&n==="L"||r&&n==="D"&&(s===1||s===2))?i:e},X.tick0=function(e,t,r,o){if(t==="date")return g.cleanDate(e,g.dateTick0(r,o%M===0?1:0));if(!(o==="D1"||o==="D2"))return H(e)?Number(e):0}}}),Zg=Ye({"src/plots/cartesian/tick_value_defaults.js"(X,H){"use strict";var g=sS(),x=ta().isArrayOrTypedArray,A=xp().isTypedArraySpec,M=xp().decodeTypedArraySpec;H.exports=function(t,r,o,a,i){i||(i={});var n=i.isMinor,s=n?t.minor||{}:t,c=n?r.minor:r,h=n?"minor.":"";function v(m){var b=s[m];return A(b)&&(b=M(b)),b!==void 0?b:(c._template||{})[m]}var p=v("tick0"),T=v("dtick"),l=v("tickvals"),_=x(l)?"array":T?"linear":"auto",w=o(h+"tickmode",_);if(w==="auto"||w==="sync")o(h+"nticks");else if(w==="linear"){var S=c.dtick=g.dtick(T,a);c.tick0=g.tick0(p,a,r.calendar,S)}else if(a!=="multicategory"){var E=o(h+"tickvals");E===void 0?c.tickmode="auto":n||o("ticktext")}}}}),e1=Ye({"src/plots/cartesian/tick_mark_defaults.js"(X,H){"use strict";var g=ta(),x=Vh();H.exports=function(M,e,t,r){var o=r.isMinor,a=o?M.minor||{}:M,i=o?e.minor:e,n=o?x.minor:x,s=o?"minor.":"",c=g.coerce2(a,i,n,"ticklen",o?(e.ticklen||5)*.6:void 0),h=g.coerce2(a,i,n,"tickwidth",o?e.tickwidth||1:void 0),v=g.coerce2(a,i,n,"tickcolor",(o?e.tickcolor:void 0)||i.color),p=t(s+"ticks",!o&&r.outerTicks||c||h||v?"outside":"");p||(delete i.ticklen,delete i.tickwidth,delete i.tickcolor)}}}),lS=Ye({"src/plots/cartesian/show_dflt.js"(X,H){"use strict";H.exports=function(x){var A=["showexponent","showtickprefix","showticksuffix"],M=A.filter(function(t){return x[t]!==void 0}),e=function(t){return x[t]===x[M[0]]};if(M.every(e)||M.length===1)return x[M[0]]}}}),up=Ye({"src/plots/array_container_defaults.js"(X,H){"use strict";var g=ta(),x=cl();H.exports=function(M,e,t){var r=t.name,o=t.inclusionAttr||"visible",a=e[r],i=g.isArrayOrTypedArray(M[r])?M[r]:[],n=e[r]=[],s=x.arrayTemplater(e,r,o),c,h;for(c=0;c<i.length;c++){var v=i[c];g.isPlainObject(v)?h=s.newItem(v):(h=s.newItem({}),h[o]=!1),h._index=c,h[o]!==!1&&t.handleItemDefaults(v,h,e,t),n.push(h)}var p=s.defaultItems();for(c=0;c<p.length;c++)h=p[c],h._index=n.length,t.handleItemDefaults({},h,e,t,{}),n.push(h);if(g.isArrayOrTypedArray(a)){var T=Math.min(a.length,n.length);for(c=0;c<T;c++)g.relinkPrivateKeys(n[c],a[c])}return n}}}),$m=Ye({"src/plots/cartesian/tick_label_defaults.js"(X,H){"use strict";var g=ta(),x=Fn().contrast,A=Vh(),M=lS(),e=up();H.exports=function(o,a,i,n,s){s||(s={});var c=i("labelalias");g.isPlainObject(c)||delete a.labelalias;var h=M(o),v=i("showticklabels");if(v){s.noTicklabelshift||i("ticklabelshift"),s.noTicklabelstandoff||i("ticklabelstandoff");var p=s.font||{},T=a.color,l=a.ticklabelposition||"",_=l.indexOf("inside")!==-1?x(s.bgColor):T&&T!==A.color.dflt?T:p.color;if(g.coerceFont(i,"tickfont",p,{overrideDflt:{color:_}}),!s.noTicklabelstep&&n!=="multicategory"&&n!=="log"&&i("ticklabelstep"),!s.noAng){var w=i("tickangle");!s.noAutotickangles&&w==="auto"&&i("autotickangles")}if(n!=="category"){var S=i("tickformat");e(o,a,{name:"tickformatstops",inclusionAttr:"enabled",handleItemDefaults:t}),a.tickformatstops.length||delete a.tickformatstops,!s.noExp&&!S&&n!=="date"&&(i("showexponent",h),i("exponentformat"),i("minexponent"),i("separatethousands"))}}};function t(r,o){function a(n,s){return g.coerce(r,o,A.tickformatstops,n,s)}var i=a("enabled");i&&(a("dtickrange"),a("value"))}}}),Qm=Ye({"src/plots/cartesian/prefix_suffix_defaults.js"(X,H){"use strict";var g=lS();H.exports=function(A,M,e,t,r){r||(r={});var o=r.tickSuffixDflt,a=g(A),i=e("tickprefix");i&&e("showtickprefix",a);var n=e("ticksuffix",o);n&&e("showticksuffix",a)}}}),uS=Ye({"src/components/colorbar/defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Zg(),M=e1(),e=$m(),t=Qm(),r=y2();H.exports=function(a,i,n){var s=x.newContainer(i,"colorbar"),c=a.colorbar||{};function h(I,N){return g.coerce(c,s,r,I,N)}var v=n.margin||{t:0,b:0,l:0,r:0},p=n.width-v.l-v.r,T=n.height-v.t-v.b,l=h("orientation"),_=l==="v",w=h("thicknessmode");h("thickness",w==="fraction"?30/(_?p:T):30);var S=h("lenmode");h("len",S==="fraction"?1:_?T:p);var E=h("yref"),m=h("xref"),b=E==="paper",d=m==="paper",u,y,f,P="left";_?(f="middle",P=d?"left":"right",u=d?1.02:1,y=.5):(f=b?"bottom":"top",P="center",u=.5,y=b?1.02:1),g.coerce(c,s,{x:{valType:"number",min:d?-2:0,max:d?3:1,dflt:u}},"x"),g.coerce(c,s,{y:{valType:"number",min:b?-2:0,max:b?3:1,dflt:y}},"y"),h("xanchor",P),h("xpad"),h("yanchor",f),h("ypad"),g.noneOrAll(c,s,["x","y"]),h("outlinecolor"),h("outlinewidth"),h("bordercolor"),h("borderwidth"),h("bgcolor");var L=g.coerce(c,s,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:_?["outside","inside","outside top","inside top","outside bottom","inside bottom"]:["outside","inside","outside left","inside left","outside right","inside right"]}},"ticklabelposition");h("ticklabeloverflow",L.indexOf("inside")!==-1?"hide past domain":"hide past div"),A(c,s,h,"linear");var z=n.font,F={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,outerTicks:!1,font:z};L.indexOf("inside")!==-1&&(F.bgColor="black"),t(c,s,h,"linear",F),e(c,s,h,"linear",F),M(c,s,h,"linear",F),h("title.text",n._dfltTitle.colorbar);var B=s.showticklabels?s.tickfont:z,O=g.extendFlat({},z,{family:B.family,size:g.bigFont(B.size)});g.coerceFont(h,"title.font",O),h("title.side",_?"top":"right")}}}),sh=Ye({"src/components/colorscale/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=oS(),M=uS(),e=Hg().isValid,t=Hn().traceIs;function r(o,a){var i=a.slice(0,a.length-1);return a?x.nestedProperty(o,i).get()||{}:o}H.exports=function o(a,i,n,s,c){var h=c.prefix,v=c.cLetter,p="_module"in i,T=r(a,h),l=r(i,h),_=r(i._template||{},h)||{},w=function(){return delete a.coloraxis,delete i.coloraxis,o(a,i,n,s,c)};if(p){var S=n._colorAxes||{},E=s(h+"coloraxis");if(E){var m=t(i,"contour")&&x.nestedProperty(i,"contours.coloring").get()||"heatmap",b=S[E];b?(b[2].push(w),b[0]!==m&&(b[0]=!1,x.warn(["Ignoring coloraxis:",E,"setting","as it is linked to incompatible colorscales."].join(" ")))):S[E]=[m,i,[w]];return}}var d=T[v+"min"],u=T[v+"max"],y=g(d)&&g(u)&&d<u,f=s(h+v+"auto",!y);f?s(h+v+"mid"):(s(h+v+"min"),s(h+v+"max"));var P=T.colorscale,L=_.colorscale,z;if(P!==void 0&&(z=!e(P)),L!==void 0&&(z=!e(L)),s(h+"autocolorscale",z),s(h+"colorscale"),s(h+"reversescale"),h!=="marker.line."){var F;h&&p&&(F=A(T));var B=s(h+"showscale",F);B&&(h&&_&&(l._template=_),M(T,l,n))}}}}),tO=Ye({"src/components/colorscale/layout_defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=nS(),M=sh();H.exports=function(t,r){function o(p,T){return g.coerce(t,r,A,p,T)}o("colorscale.sequential"),o("colorscale.sequentialminus"),o("colorscale.diverging");var a=r._colorAxes,i,n;function s(p,T){return g.coerce(i,n,A.coloraxis,p,T)}for(var c in a){var h=a[c];if(h[0])i=t[c]||{},n=x.newContainer(r,c,"coloraxis"),n._name=c,M(i,n,r,s,{prefix:"",cLetter:"c"});else{for(var v=0;v<h[2].length;v++)h[2][v]();delete r._colorAxes[c]}}}}}),rO=Ye({"src/components/colorscale/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=Up().extractOpts;H.exports=function(e,t){function r(h,v){var p=h["_"+v];p!==void 0&&(h[v]=p)}function o(h,v){var p=v.container?g.nestedProperty(h,v.container).get():h;if(p)if(p.coloraxis)p._colorAx=t[p.coloraxis];else{var T=A(p),l=T.auto;(l||T.min===void 0)&&r(p,v.min),(l||T.max===void 0)&&r(p,v.max),T.autocolorscale&&r(p,"colorscale")}}for(var a=0;a<e.length;a++){var i=e[a],n=i._module.colorbar;if(n)if(Array.isArray(n))for(var s=0;s<n.length;s++)o(i,n[s]);else o(i,n);x(i,"marker.line")&&o(i,{container:"marker.line",min:"cmin",max:"cmax"})}for(var c in t._colorAxes)o(t[c],{min:"cmin",max:"cmax"})}}}),jp=Ye({"src/components/colorscale/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Up().extractOpts;H.exports=function(e,t,r){var o=e._fullLayout,a=r.vals,i=r.containerStr,n=i?x.nestedProperty(t,i).get():t,s=A(n),c=s.auto!==!1,h=s.min,v=s.max,p=s.mid,T=function(){return x.aggNums(Math.min,null,a)},l=function(){return x.aggNums(Math.max,null,a)};if(h===void 0?h=T():c&&(n._colorAx&&g(h)?h=Math.min(h,T()):h=T()),v===void 0?v=l():c&&(n._colorAx&&g(v)?v=Math.max(v,l()):v=l()),c&&p!==void 0&&(v-p>p-h?h=p-(v-p):v-p<p-h&&(v=p+(p-h))),h===v&&(h-=.5,v+=.5),s._sync("min",h),s._sync("max",v),s.autocolorscale){var _;h*v<0?_=o.colorscale.diverging:h>=0?_=o.colorscale.sequential:_=o.colorscale.sequentialminus,s._sync("colorscale",_)}}}}),Su=Ye({"src/components/colorscale/index.js"(X,H){"use strict";var g=Hg(),x=Up();H.exports={moduleType:"component",name:"colorscale",attributes:tu(),layoutAttributes:nS(),supplyLayoutDefaults:tO(),handleDefaults:sh(),crossTraceDefaults:rO(),calc:jp(),scales:g.scales,defaultScale:g.defaultScale,getScale:g.get,isValidScale:g.isValid,hasColorscale:x.hasColorscale,extractOpts:x.extractOpts,extractScale:x.extractScale,flipScale:x.flipScale,makeColorScaleFunc:x.makeColorScaleFunc,makeColorScaleFuncFromTrace:x.makeColorScaleFuncFromTrace}}}),uu=Ye({"src/traces/scatter/subtypes.js"(X,H){"use strict";var g=ta(),x=xp().isTypedArraySpec;H.exports={hasLines:function(A){return A.visible&&A.mode&&A.mode.indexOf("lines")!==-1},hasMarkers:function(A){return A.visible&&(A.mode&&A.mode.indexOf("markers")!==-1||A.type==="splom")},hasText:function(A){return A.visible&&A.mode&&A.mode.indexOf("text")!==-1},isBubble:function(A){var M=A.marker;return g.isPlainObject(M)&&(g.isArrayOrTypedArray(M.size)||x(M.size))}}}}),t1=Ye({"src/traces/scatter/make_bubble_size_func.js"(X,H){"use strict";var g=jo();H.exports=function(A,M){M||(M=2);var e=A.marker,t=e.sizeref||1,r=e.sizemin||0,o=e.sizemode==="area"?function(a){return Math.sqrt(a/t)}:function(a){return a/t};return function(a){var i=o(a/M);return g(i)&&i>0?Math.max(i,r):0}}}}),Qp=Ye({"src/components/fx/helpers.js"(X){"use strict";var H=ta();X.getSubplot=function(t){return t.subplot||t.xaxis+t.yaxis||t.geo},X.isTraceInSubplots=function(t,r){if(t.type==="splom"){for(var o=t.xaxes||[],a=t.yaxes||[],i=0;i<o.length;i++)for(var n=0;n<a.length;n++)if(r.indexOf(o[i]+a[n])!==-1)return!0;return!1}return r.indexOf(X.getSubplot(t))!==-1},X.flat=function(t,r){for(var o=new Array(t.length),a=0;a<t.length;a++)o[a]=r;return o},X.p2c=function(t,r){for(var o=new Array(t.length),a=0;a<t.length;a++)o[a]=t[a].p2c(r);return o},X.getDistanceFunction=function(t,r,o,a){return t==="closest"?a||X.quadrature(r,o):t.charAt(0)==="x"?r:o},X.getClosest=function(t,r,o){if(o.index!==!1)o.index>=0&&o.index<t.length?o.distance=0:o.index=!1;else for(var a=1/0,i=t.length,n=0;n<i;n++)a=r(t[n]),a<=o.distance&&(o.index=n,o.distance=a);return o},X.inbox=function(t,r,o){return t*r<0||t===0?o:1/0},X.quadrature=function(t,r){return function(o){var a=t(o),i=r(o);return Math.sqrt(a*a+i*i)}},X.makeEventData=function(t,r,o){var a="index"in t?t.index:t.pointNumber,i={data:r._input,fullData:r,curveNumber:r.index,pointNumber:a};if(r._indexToPoints){var n=r._indexToPoints[a];n.length===1?i.pointIndex=n[0]:i.pointIndices=n}else i.pointIndex=a;return r._module.eventData?i=r._module.eventData(i,t,r,o,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),t.zLabelVal!==void 0&&(i.z=t.zLabelVal)),X.appendArrayPointValue(i,r,a),i},X.appendArrayPointValue=function(t,r,o){var a=r._arrayAttrs;if(a)for(var i=0;i<a.length;i++){var n=a[i],s=x(n);if(t[s]===void 0){var c=H.nestedProperty(r,n).get(),h=A(c,o);h!==void 0&&(t[s]=h)}}},X.appendArrayMultiPointValues=function(t,r,o){var a=r._arrayAttrs;if(a)for(var i=0;i<a.length;i++){var n=a[i],s=x(n);if(t[s]===void 0){for(var c=H.nestedProperty(r,n).get(),h=new Array(o.length),v=0;v<o.length;v++)h[v]=A(c,o[v]);t[s]=h}}};var g={ids:"id",locations:"location",labels:"label",values:"value","marker.colors":"color",parents:"parent"};function x(t){return g[t]||t}function A(t,r){if(Array.isArray(r)){if(Array.isArray(t)&&Array.isArray(t[r[0]]))return t[r[0]][r[1]]}else return t[r]}var M={x:!0,y:!0},e={"x unified":!0,"y unified":!0};X.isUnifiedHover=function(t){return typeof t!="string"?!1:!!e[t]},X.isXYhover=function(t){return typeof t!="string"?!1:!!M[t]}}}),A_=Ye({"node_modules/parse-svg-path/index.js"(X,H){H.exports=A;var g={a:7,c:6,h:1,l:2,m:2,q:4,s:4,t:2,v:1,z:0},x=/([astvzqmhlc])([^astvzqmhlc]*)/ig;function A(t){var r=[];return t.replace(x,function(o,a,i){var n=a.toLowerCase();for(i=e(i),n=="m"&&i.length>2&&(r.push([a].concat(i.splice(0,2))),n="l",a=a=="m"?"l":"L");;){if(i.length==g[n])return i.unshift(a),r.push(i);if(i.length<g[n])throw new Error("malformed path data");r.push([a].concat(i.splice(0,g[n])))}}),r}var M=/-?[0-9]*\.?[0-9]+(?:e[-+]?\d+)?/ig;function e(t){var r=t.match(M);return r?r.map(Number):[]}}}),aO=Ye({"src/components/drawing/symbol_defs.js"(X,H){"use strict";var g=A_(),x=function(v,p){return p?Math.round(v*(p=Math.pow(10,p)))/p:Math.round(v)},A="M0,0Z",M=Math.sqrt(2),e=Math.sqrt(3),t=Math.PI,r=Math.cos,o=Math.sin;H.exports={circle:{n:0,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_="M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z";return T?h(p,T,_):_}},square:{n:1,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")}},diamond:{n:2,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"Z")}},cross:{n:3,f:function(v,p,T){if(a(p))return A;var l=x(v*.4,2),_=x(v*1.2,2);return h(p,T,"M"+_+","+l+"H"+l+"V"+_+"H-"+l+"V"+l+"H-"+_+"V-"+l+"H-"+l+"V-"+_+"H"+l+"V-"+l+"H"+_+"Z")}},x:{n:4,f:function(v,p,T){if(a(p))return A;var l=x(v*.8/M,2),_="l"+l+","+l,w="l"+l+",-"+l,S="l-"+l+",-"+l,E="l-"+l+","+l;return h(p,T,"M0,"+l+_+w+S+w+S+E+S+E+_+E+_+"Z")}},"triangle-up":{n:5,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+l+","+_+"H"+l+"L0,-"+w+"Z")}},"triangle-down":{n:6,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+l+",-"+_+"H"+l+"L0,"+w+"Z")}},"triangle-left":{n:7,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M"+_+",-"+l+"V"+l+"L-"+w+",0Z")}},"triangle-right":{n:8,f:function(v,p,T){if(a(p))return A;var l=x(v*2/e,2),_=x(v/2,2),w=x(v,2);return h(p,T,"M-"+_+",-"+l+"V"+l+"L"+w+",0Z")}},"triangle-ne":{n:9,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M-"+_+",-"+l+"H"+l+"V"+_+"Z")}},"triangle-se":{n:10,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M"+l+",-"+_+"V"+l+"H-"+_+"Z")}},"triangle-sw":{n:11,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M"+_+","+l+"H-"+l+"V-"+_+"Z")}},"triangle-nw":{n:12,f:function(v,p,T){if(a(p))return A;var l=x(v*.6,2),_=x(v*1.2,2);return h(p,T,"M-"+l+","+_+"V-"+l+"H"+_+"Z")}},pentagon:{n:13,f:function(v,p,T){if(a(p))return A;var l=x(v*.951,2),_=x(v*.588,2),w=x(-v,2),S=x(v*-.309,2),E=x(v*.809,2);return h(p,T,"M"+l+","+S+"L"+_+","+E+"H-"+_+"L-"+l+","+S+"L0,"+w+"Z")}},hexagon:{n:14,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/2,2),w=x(v*e/2,2);return h(p,T,"M"+w+",-"+_+"V"+_+"L0,"+l+"L-"+w+","+_+"V-"+_+"L0,-"+l+"Z")}},hexagon2:{n:15,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/2,2),w=x(v*e/2,2);return h(p,T,"M-"+_+","+w+"H"+_+"L"+l+",0L"+_+",-"+w+"H-"+_+"L-"+l+",0Z")}},octagon:{n:16,f:function(v,p,T){if(a(p))return A;var l=x(v*.924,2),_=x(v*.383,2);return h(p,T,"M-"+_+",-"+l+"H"+_+"L"+l+",-"+_+"V"+_+"L"+_+","+l+"H-"+_+"L-"+l+","+_+"V-"+_+"Z")}},star:{n:17,f:function(v,p,T){if(a(p))return A;var l=v*1.4,_=x(l*.225,2),w=x(l*.951,2),S=x(l*.363,2),E=x(l*.588,2),m=x(-l,2),b=x(l*-.309,2),d=x(l*.118,2),u=x(l*.809,2),y=x(l*.382,2);return h(p,T,"M"+_+","+b+"H"+w+"L"+S+","+d+"L"+E+","+u+"L0,"+y+"L-"+E+","+u+"L-"+S+","+d+"L-"+w+","+b+"H-"+_+"L0,"+m+"Z")}},hexagram:{n:18,f:function(v,p,T){if(a(p))return A;var l=x(v*.66,2),_=x(v*.38,2),w=x(v*.76,2);return h(p,T,"M-"+w+",0l-"+_+",-"+l+"h"+w+"l"+_+",-"+l+"l"+_+","+l+"h"+w+"l-"+_+","+l+"l"+_+","+l+"h-"+w+"l-"+_+","+l+"l-"+_+",-"+l+"h-"+w+"Z")}},"star-triangle-up":{n:19,f:function(v,p,T){if(a(p))return A;var l=x(v*e*.8,2),_=x(v*.8,2),w=x(v*1.6,2),S=x(v*4,2),E="A "+S+","+S+" 0 0 1 ";return h(p,T,"M-"+l+","+_+E+l+","+_+E+"0,-"+w+E+"-"+l+","+_+"Z")}},"star-triangle-down":{n:20,f:function(v,p,T){if(a(p))return A;var l=x(v*e*.8,2),_=x(v*.8,2),w=x(v*1.6,2),S=x(v*4,2),E="A "+S+","+S+" 0 0 1 ";return h(p,T,"M"+l+",-"+_+E+"-"+l+",-"+_+E+"0,"+w+E+l+",-"+_+"Z")}},"star-square":{n:21,f:function(v,p,T){if(a(p))return A;var l=x(v*1.1,2),_=x(v*2,2),w="A "+_+","+_+" 0 0 1 ";return h(p,T,"M-"+l+",-"+l+w+"-"+l+","+l+w+l+","+l+w+l+",-"+l+w+"-"+l+",-"+l+"Z")}},"star-diamond":{n:22,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2),_=x(v*1.9,2),w="A "+_+","+_+" 0 0 1 ";return h(p,T,"M-"+l+",0"+w+"0,"+l+w+l+",0"+w+"0,-"+l+w+"-"+l+",0Z")}},"diamond-tall":{n:23,f:function(v,p,T){if(a(p))return A;var l=x(v*.7,2),_=x(v*1.4,2);return h(p,T,"M0,"+_+"L"+l+",0L0,-"+_+"L-"+l+",0Z")}},"diamond-wide":{n:24,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2),_=x(v*.7,2);return h(p,T,"M0,"+_+"L"+l+",0L0,-"+_+"L-"+l+",0Z")}},hourglass:{n:25,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"H-"+l+"L"+l+",-"+l+"H-"+l+"Z")},noDot:!0},bowtie:{n:26,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"V-"+l+"L-"+l+","+l+"V-"+l+"Z")},noDot:!0},"circle-cross":{n:27,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z")},needLine:!0,noDot:!0},"circle-x":{n:28,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v/M,2);return h(p,T,"M"+_+","+_+"L-"+_+",-"+_+"M"+_+",-"+_+"L-"+_+","+_+"M"+l+",0A"+l+","+l+" 0 1,1 0,-"+l+"A"+l+","+l+" 0 0,1 "+l+",0Z")},needLine:!0,noDot:!0},"square-cross":{n:29,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")},needLine:!0,noDot:!0},"square-x":{n:30,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l+"M"+l+",-"+l+"L-"+l+","+l+"M"+l+","+l+"H-"+l+"V-"+l+"H"+l+"Z")},needLine:!0,noDot:!0},"diamond-cross":{n:31,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"ZM0,-"+l+"V"+l+"M-"+l+",0H"+l)},needLine:!0,noDot:!0},"diamond-x":{n:32,f:function(v,p,T){if(a(p))return A;var l=x(v*1.3,2),_=x(v*.65,2);return h(p,T,"M"+l+",0L0,"+l+"L-"+l+",0L0,-"+l+"ZM-"+_+",-"+_+"L"+_+","+_+"M-"+_+","+_+"L"+_+",-"+_)},needLine:!0,noDot:!0},"cross-thin":{n:33,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l)},needLine:!0,noDot:!0,noFill:!0},"x-thin":{n:34,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l+"M"+l+",-"+l+"L-"+l+","+l)},needLine:!0,noDot:!0,noFill:!0},asterisk:{n:35,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*.85,2);return h(p,T,"M0,"+l+"V-"+l+"M"+l+",0H-"+l+"M"+_+","+_+"L-"+_+",-"+_+"M"+_+",-"+_+"L-"+_+","+_)},needLine:!0,noDot:!0,noFill:!0},hash:{n:36,f:function(v,p,T){if(a(p))return A;var l=x(v/2,2),_=x(v,2);return h(p,T,"M"+l+","+_+"V-"+_+"M"+(l-_)+",-"+_+"V"+_+"M"+_+","+l+"H-"+_+"M-"+_+","+(l-_)+"H"+_)},needLine:!0,noFill:!0},"y-up":{n:37,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+l+","+w+"L0,0M"+l+","+w+"L0,0M0,-"+_+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-down":{n:38,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+l+",-"+w+"L0,0M"+l+",-"+w+"L0,0M0,"+_+"L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-left":{n:39,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M"+w+","+l+"L0,0M"+w+",-"+l+"L0,0M-"+_+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"y-right":{n:40,f:function(v,p,T){if(a(p))return A;var l=x(v*1.2,2),_=x(v*1.6,2),w=x(v*.8,2);return h(p,T,"M-"+w+","+l+"L0,0M-"+w+",-"+l+"L0,0M"+_+",0L0,0")},needLine:!0,noDot:!0,noFill:!0},"line-ew":{n:41,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M"+l+",0H-"+l)},needLine:!0,noDot:!0,noFill:!0},"line-ns":{n:42,f:function(v,p,T){if(a(p))return A;var l=x(v*1.4,2);return h(p,T,"M0,"+l+"V-"+l)},needLine:!0,noDot:!0,noFill:!0},"line-ne":{n:43,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+",-"+l+"L-"+l+","+l)},needLine:!0,noDot:!0,noFill:!0},"line-nw":{n:44,f:function(v,p,T){if(a(p))return A;var l=x(v,2);return h(p,T,"M"+l+","+l+"L-"+l+",-"+l)},needLine:!0,noDot:!0,noFill:!0},"arrow-up":{n:45,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M0,0L-"+l+","+_+"H"+l+"Z")},backoff:1,noDot:!0},"arrow-down":{n:46,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M0,0L-"+l+",-"+_+"H"+l+"Z")},noDot:!0},"arrow-left":{n:47,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,0L"+l+",-"+_+"V"+_+"Z")},noDot:!0},"arrow-right":{n:48,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,0L-"+l+",-"+_+"V"+_+"Z")},noDot:!0},"arrow-bar-up":{n:49,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M-"+l+",0H"+l+"M0,0L-"+l+","+_+"H"+l+"Z")},backoff:1,needLine:!0,noDot:!0},"arrow-bar-down":{n:50,f:function(v,p,T){if(a(p))return A;var l=x(v,2),_=x(v*2,2);return h(p,T,"M-"+l+",0H"+l+"M0,0L-"+l+",-"+_+"H"+l+"Z")},needLine:!0,noDot:!0},"arrow-bar-left":{n:51,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,-"+_+"V"+_+"M0,0L"+l+",-"+_+"V"+_+"Z")},needLine:!0,noDot:!0},"arrow-bar-right":{n:52,f:function(v,p,T){if(a(p))return A;var l=x(v*2,2),_=x(v,2);return h(p,T,"M0,-"+_+"V"+_+"M0,0L-"+l+",-"+_+"V"+_+"Z")},needLine:!0,noDot:!0},arrow:{n:53,f:function(v,p,T){if(a(p))return A;var l=t/2.5,_=2*v*r(l),w=2*v*o(l);return h(p,T,"M0,0L"+-_+","+w+"L"+_+","+w+"Z")},backoff:.9,noDot:!0},"arrow-wide":{n:54,f:function(v,p,T){if(a(p))return A;var l=t/4,_=2*v*r(l),w=2*v*o(l);return h(p,T,"M0,0L"+-_+","+w+"A "+2*v+","+2*v+" 0 0 1 "+_+","+w+"Z")},backoff:.4,noDot:!0}};function a(v){return v===null}var i,n,s,c;function h(v,p,T){if((!v||v%360===0)&&!p)return T;if(s===v&&c===p&&i===T)return n;s=v,c=p,i=T;function l(z,F){var B=r(z),O=o(z),I=F[0],N=F[1]+(p||0);return[I*B-N*O,I*O+N*B]}for(var _=v/180*t,w=0,S=0,E=g(T),m="",b=0;b<E.length;b++){var d=E[b],u=d[0],y=w,f=S;if(u==="M"||u==="L")w=+d[1],S=+d[2];else if(u==="m"||u==="l")w+=+d[1],S+=+d[2];else if(u==="H")w=+d[1];else if(u==="h")w+=+d[1];else if(u==="V")S=+d[1];else if(u==="v")S+=+d[1];else if(u==="A"){w=+d[1],S=+d[2];var P=l(_,[+d[6],+d[7]]);d[6]=P[0],d[7]=P[1],d[3]=+d[3]+v}(u==="H"||u==="V")&&(u="L"),(u==="h"||u==="v")&&(u="l"),(u==="m"||u==="l")&&(w-=y,S-=f);var L=l(_,[w,S]);(u==="H"||u==="V")&&(u="L"),(u==="M"||u==="L"||u==="m"||u==="l")&&(d[1]=L[0],d[2]=L[1]),d[0]=u,m+=d[0]+d.slice(1).join(",")}return n=m,m}}}),Bo=Ye({"src/components/drawing/index.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=jo(),e=bh(),t=Hn(),r=Fn(),o=Su(),a=x.strTranslate,i=jl(),n=vd(),s=oh(),c=s.LINE_SPACING,h=Xm().DESELECTDIM,v=uu(),p=t1(),T=Qp().appendArrayPointValue,l=H.exports={};l.font=function(Me,ge){var ce=ge.variant,ze=ge.style,tt=ge.weight,nt=ge.color,Qe=ge.size,Ct=ge.family,St=ge.shadow,Ot=ge.lineposition,jt=ge.textcase;Ct&&Me.style("font-family",Ct),Qe+1&&Me.style("font-size",Qe+"px"),nt&&Me.call(r.fill,nt),tt&&Me.style("font-weight",tt),ze&&Me.style("font-style",ze),ce&&Me.style("font-variant",ce),jt&&Me.style("text-transform",_(S(jt))),St&&Me.style("text-shadow",St==="auto"?i.makeTextShadow(r.contrast(nt)):_(St)),Ot&&Me.style("text-decoration-line",_(E(Ot)))};function _(Me){return Me==="none"?void 0:Me}var w={normal:"none",lower:"lowercase",upper:"uppercase","word caps":"capitalize"};function S(Me){return w[Me]}function E(Me){return Me.replace("under","underline").replace("over","overline").replace("through","line-through").split("+").join(" ")}l.setPosition=function(Me,ge,ce){Me.attr("x",ge).attr("y",ce)},l.setSize=function(Me,ge,ce){Me.attr("width",ge).attr("height",ce)},l.setRect=function(Me,ge,ce,ze,tt){Me.call(l.setPosition,ge,ce).call(l.setSize,ze,tt)},l.translatePoint=function(Me,ge,ce,ze){var tt=ce.c2p(Me.x),nt=ze.c2p(Me.y);if(M(tt)&&M(nt)&&ge.node())ge.node().nodeName==="text"?ge.attr("x",tt).attr("y",nt):ge.attr("transform",a(tt,nt));else return!1;return!0},l.translatePoints=function(Me,ge,ce){Me.each(function(ze){var tt=g.select(this);l.translatePoint(ze,tt,ge,ce)})},l.hideOutsideRangePoint=function(Me,ge,ce,ze,tt,nt){ge.attr("display",ce.isPtWithinRange(Me,tt)&&ze.isPtWithinRange(Me,nt)?null:"none")},l.hideOutsideRangePoints=function(Me,ge){if(ge._hasClipOnAxisFalse){var ce=ge.xaxis,ze=ge.yaxis;Me.each(function(tt){var nt=tt[0].trace,Qe=nt.xcalendar,Ct=nt.ycalendar,St=t.traceIs(nt,"bar-like")?".bartext":".point,.textpoint";Me.selectAll(St).each(function(Ot){l.hideOutsideRangePoint(Ot,g.select(this),ce,ze,Qe,Ct)})})}},l.crispRound=function(Me,ge,ce){return!ge||!M(ge)?ce||0:Me._context.staticPlot?ge:ge<1?1:Math.round(ge)},l.singleLineStyle=function(Me,ge,ce,ze,tt){ge.style("fill","none");var nt=(((Me||[])[0]||{}).trace||{}).line||{},Qe=ce||nt.width||0,Ct=tt||nt.dash||"";r.stroke(ge,ze||nt.color),l.dashLine(ge,Ct,Qe)},l.lineGroupStyle=function(Me,ge,ce,ze){Me.style("fill","none").each(function(tt){var nt=(((tt||[])[0]||{}).trace||{}).line||{},Qe=ge||nt.width||0,Ct=ze||nt.dash||"";g.select(this).call(r.stroke,ce||nt.color).call(l.dashLine,Ct,Qe)})},l.dashLine=function(Me,ge,ce){ce=+ce||0,ge=l.dashStyle(ge,ce),Me.style({"stroke-dasharray":ge,"stroke-width":ce+"px"})},l.dashStyle=function(Me,ge){ge=+ge||1;var ce=Math.max(ge,3);return Me==="solid"?Me="":Me==="dot"?Me=ce+"px,"+ce+"px":Me==="dash"?Me=3*ce+"px,"+3*ce+"px":Me==="longdash"?Me=5*ce+"px,"+5*ce+"px":Me==="dashdot"?Me=3*ce+"px,"+ce+"px,"+ce+"px,"+ce+"px":Me==="longdashdot"&&(Me=5*ce+"px,"+2*ce+"px,"+ce+"px,"+2*ce+"px"),Me};function m(Me,ge,ce,ze){var tt=ge.fillpattern,nt=ge.fillgradient,Qe=tt&&l.getPatternAttr(tt.shape,0,"");if(Qe){var Ct=l.getPatternAttr(tt.bgcolor,0,null),St=l.getPatternAttr(tt.fgcolor,0,null),Ot=tt.fgopacity,jt=l.getPatternAttr(tt.size,0,8),ur=l.getPatternAttr(tt.solidity,0,.3),ar=ge.uid;l.pattern(Me,"point",ce,ar,Qe,jt,ur,void 0,tt.fillmode,Ct,St,Ot)}else if(nt&&nt.type!=="none"){var Cr=nt.type,vr="scatterfill-"+ge.uid;if(ze&&(vr="legendfill-"+ge.uid),!ze&&(nt.start!==void 0||nt.stop!==void 0)){var _r,yt;Cr==="horizontal"?(_r={x:nt.start,y:0},yt={x:nt.stop,y:0}):Cr==="vertical"&&(_r={x:0,y:nt.start},yt={x:0,y:nt.stop}),_r.x=ge._xA.c2p(_r.x===void 0?ge._extremes.x.min[0].val:_r.x,!0),_r.y=ge._yA.c2p(_r.y===void 0?ge._extremes.y.min[0].val:_r.y,!0),yt.x=ge._xA.c2p(yt.x===void 0?ge._extremes.x.max[0].val:yt.x,!0),yt.y=ge._yA.c2p(yt.y===void 0?ge._extremes.y.max[0].val:yt.y,!0),Me.call(L,ce,vr,"linear",nt.colorscale,"fill",_r,yt,!0,!1)}else Cr==="horizontal"&&(Cr=Cr+"reversed"),Me.call(l.gradient,ce,vr,Cr,nt.colorscale,"fill")}else ge.fillcolor&&Me.call(r.fill,ge.fillcolor)}l.singleFillStyle=function(Me,ge){var ce=g.select(Me.node()),ze=ce.data(),tt=((ze[0]||[])[0]||{}).trace||{};m(Me,tt,ge,!1)},l.fillGroupStyle=function(Me,ge,ce){Me.style("stroke-width",0).each(function(ze){var tt=g.select(this);ze[0].trace&&m(tt,ze[0].trace,ge,ce)})};var b=aO();l.symbolNames=[],l.symbolFuncs=[],l.symbolBackOffs=[],l.symbolNeedLines={},l.symbolNoDot={},l.symbolNoFill={},l.symbolList=[],Object.keys(b).forEach(function(Me){var ge=b[Me],ce=ge.n;l.symbolList.push(ce,String(ce),Me,ce+100,String(ce+100),Me+"-open"),l.symbolNames[ce]=Me,l.symbolFuncs[ce]=ge.f,l.symbolBackOffs[ce]=ge.backoff||0,ge.needLine&&(l.symbolNeedLines[ce]=!0),ge.noDot?l.symbolNoDot[ce]=!0:l.symbolList.push(ce+200,String(ce+200),Me+"-dot",ce+300,String(ce+300),Me+"-open-dot"),ge.noFill&&(l.symbolNoFill[ce]=!0)});var d=l.symbolNames.length,u="M0,0.5L0.5,0L0,-0.5L-0.5,0Z";l.symbolNumber=function(Me){if(M(Me))Me=+Me;else if(typeof Me=="string"){var ge=0;Me.indexOf("-open")>0&&(ge=100,Me=Me.replace("-open","")),Me.indexOf("-dot")>0&&(ge+=200,Me=Me.replace("-dot","")),Me=l.symbolNames.indexOf(Me),Me>=0&&(Me+=ge)}return Me%100>=d||Me>=400?0:Math.floor(Math.max(Me,0))};function y(Me,ge,ce,ze){var tt=Me%100;return l.symbolFuncs[tt](ge,ce,ze)+(Me>=200?u:"")}var f=A("~f"),P={radial:{type:"radial"},radialreversed:{type:"radial",reversed:!0},horizontal:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0}},horizontalreversed:{type:"linear",start:{x:1,y:0},stop:{x:0,y:0},reversed:!0},vertical:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0}},verticalreversed:{type:"linear",start:{x:0,y:1},stop:{x:0,y:0},reversed:!0}};l.gradient=function(Me,ge,ce,ze,tt,nt){var Qe=P[ze];return L(Me,ge,ce,Qe.type,tt,nt,Qe.start,Qe.stop,!1,Qe.reversed)};function L(Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot){var jt=tt.length,ur;ze==="linear"?ur={node:"linearGradient",attrs:{x1:Qe.x,y1:Qe.y,x2:Ct.x,y2:Ct.y,gradientUnits:St?"userSpaceOnUse":"objectBoundingBox"},reversed:Ot}:ze==="radial"&&(ur={node:"radialGradient",reversed:Ot});for(var ar=new Array(jt),Cr=0;Cr<jt;Cr++)ur.reversed?ar[jt-1-Cr]=[f((1-tt[Cr][0])*100),tt[Cr][1]]:ar[Cr]=[f(tt[Cr][0]*100),tt[Cr][1]];var vr=ge._fullLayout,_r="g"+vr._uid+"-"+ce,yt=vr._defs.select(".gradients").selectAll("#"+_r).data([ze+ar.join(";")],x.identity);yt.exit().remove(),yt.enter().append(ur.node).each(function(){var Fe=g.select(this);ur.attrs&&Fe.attr(ur.attrs),Fe.attr("id",_r);var Ke=Fe.selectAll("stop").data(ar);Ke.exit().remove(),Ke.enter().append("stop"),Ke.each(function(Ne){var Ee=e(Ne[1]);g.select(this).attr({offset:Ne[0]+"%","stop-color":r.tinyRGB(Ee),"stop-opacity":Ee.getAlpha()})})}),Me.style(nt,re(_r,ge)).style(nt+"-opacity",null),Me.classed("gradient_filled",!0)}l.pattern=function(Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur){var ar=ge==="legend";Ct&&(St==="overlay"?(Ot=Ct,jt=r.contrast(Ot)):(Ot=void 0,jt=Ct));var Cr=ce._fullLayout,vr="p"+Cr._uid+"-"+ze,_r,yt,Fe=function(Bt,Gt,Kt,sr,sa){return sr+(sa-sr)*(Bt-Gt)/(Kt-Gt)},Ke,Ne,Ee,Ve,ke={},Te=e(jt),Le=r.tinyRGB(Te),rt=Te.getAlpha(),dt=ur*rt;switch(tt){case"/":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M-"+_r/4+","+yt/4+"l"+_r/2+",-"+yt/2+"M0,"+yt+"L"+_r+",0M"+_r/4*3+","+yt/4*5+"l"+_r/2+",-"+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"\\":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M"+_r/4*3+",-"+yt/4+"l"+_r/2+","+yt/2+"M0,0L"+_r+","+yt+"M-"+_r/4+","+yt/4*3+"l"+_r/2+","+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"x":_r=nt*Math.sqrt(2),yt=nt*Math.sqrt(2),Ke="M-"+_r/4+","+yt/4+"l"+_r/2+",-"+yt/2+"M0,"+yt+"L"+_r+",0M"+_r/4*3+","+yt/4*5+"l"+_r/2+",-"+yt/2+"M"+_r/4*3+",-"+yt/4+"l"+_r/2+","+yt/2+"M0,0L"+_r+","+yt+"M-"+_r/4+","+yt/4*3+"l"+_r/2+","+yt/2,Ne=nt-nt*Math.sqrt(1-Qe),Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"|":_r=nt,yt=nt,Ve="path",Ke="M"+_r/2+",0L"+_r/2+","+yt,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"-":_r=nt,yt=nt,Ve="path",Ke="M0,"+yt/2+"L"+_r+","+yt/2,Ne=Qe*nt,Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case"+":_r=nt,yt=nt,Ve="path",Ke="M"+_r/2+",0L"+_r/2+","+yt+"M0,"+yt/2+"L"+_r+","+yt/2,Ne=nt-nt*Math.sqrt(1-Qe),Ve="path",ke={d:Ke,opacity:dt,stroke:Le,"stroke-width":Ne+"px"};break;case".":_r=nt,yt=nt,Qe<Math.PI/4?Ee=Math.sqrt(Qe*nt*nt/Math.PI):Ee=Fe(Qe,Math.PI/4,1,nt/2,nt/Math.sqrt(2)),Ve="circle",ke={cx:_r/2,cy:yt/2,r:Ee,opacity:dt,fill:Le};break}var xt=[tt||"noSh",Ot||"noBg",jt||"noFg",nt,Qe].join(";"),It=Cr._defs.select(".patterns").selectAll("#"+vr).data([xt],x.identity);It.exit().remove(),It.enter().append("pattern").each(function(){var Bt=g.select(this);if(Bt.attr({id:vr,width:_r+"px",height:yt+"px",patternUnits:"userSpaceOnUse",patternTransform:ar?"scale(0.8)":""}),Ot){var Gt=e(Ot),Kt=r.tinyRGB(Gt),sr=Gt.getAlpha(),sa=Bt.selectAll("rect").data([0]);sa.exit().remove(),sa.enter().append("rect").attr({width:_r+"px",height:yt+"px",fill:Kt,"fill-opacity":sr})}var Aa=Bt.selectAll(Ve).data([0]);Aa.exit().remove(),Aa.enter().append(Ve).attr(ke)}),Me.style("fill",re(vr,ce)).style("fill-opacity",null),Me.classed("pattern_filled",!0)},l.initGradients=function(Me){var ge=Me._fullLayout,ce=x.ensureSingle(ge._defs,"g","gradients");ce.selectAll("linearGradient,radialGradient").remove(),g.select(Me).selectAll(".gradient_filled").classed("gradient_filled",!1)},l.initPatterns=function(Me){var ge=Me._fullLayout,ce=x.ensureSingle(ge._defs,"g","patterns");ce.selectAll("pattern").remove(),g.select(Me).selectAll(".pattern_filled").classed("pattern_filled",!1)},l.getPatternAttr=function(Me,ge,ce){return Me&&x.isArrayOrTypedArray(Me)?ge<Me.length?Me[ge]:ce:Me},l.pointStyle=function(Me,ge,ce,ze){if(Me.size()){var tt=l.makePointStyleFns(ge);Me.each(function(nt){l.singlePointStyle(nt,g.select(this),ge,tt,ce,ze)})}},l.singlePointStyle=function(Me,ge,ce,ze,tt,nt){var Qe=ce.marker,Ct=Qe.line;if(nt&&nt.i>=0&&Me.i===void 0&&(Me.i=nt.i),ge.style("opacity",ze.selectedOpacityFn?ze.selectedOpacityFn(Me):Me.mo===void 0?Qe.opacity:Me.mo),ze.ms2mrc){var St;Me.ms==="various"||Qe.size==="various"?St=3:St=ze.ms2mrc(Me.ms),Me.mrc=St,ze.selectedSizeFn&&(St=Me.mrc=ze.selectedSizeFn(Me));var Ot=l.symbolNumber(Me.mx||Qe.symbol)||0;Me.om=Ot%200>=100;var jt=lt(Me,ce),ur=ee(Me,ce);ge.attr("d",y(Ot,St,jt,ur))}var ar=!1,Cr,vr,_r;if(Me.so)_r=Ct.outlierwidth,vr=Ct.outliercolor,Cr=Qe.outliercolor;else{var yt=(Ct||{}).width;_r=(Me.mlw+1||yt+1||(Me.trace?(Me.trace.marker.line||{}).width:0)+1)-1||0,"mlc"in Me?vr=Me.mlcc=ze.lineScale(Me.mlc):x.isArrayOrTypedArray(Ct.color)?vr=r.defaultLine:vr=Ct.color,x.isArrayOrTypedArray(Qe.color)&&(Cr=r.defaultLine,ar=!0),"mc"in Me?Cr=Me.mcc=ze.markerScale(Me.mc):Cr=Qe.color||Qe.colors||"rgba(0,0,0,0)",ze.selectedColorFn&&(Cr=ze.selectedColorFn(Me))}if(Me.om)ge.call(r.stroke,Cr).style({"stroke-width":(_r||1)+"px",fill:"none"});else{ge.style("stroke-width",(Me.isBlank?0:_r)+"px");var Fe=Qe.gradient,Ke=Me.mgt;Ke?ar=!0:Ke=Fe&&Fe.type,x.isArrayOrTypedArray(Ke)&&(Ke=Ke[0],P[Ke]||(Ke=0));var Ne=Qe.pattern,Ee=Ne&&l.getPatternAttr(Ne.shape,Me.i,"");if(Ke&&Ke!=="none"){var Ve=Me.mgc;Ve?ar=!0:Ve=Fe.color;var ke=ce.uid;ar&&(ke+="-"+Me.i),l.gradient(ge,tt,ke,Ke,[[0,Ve],[1,Cr]],"fill")}else if(Ee){var Te=!1,Le=Ne.fgcolor;!Le&&nt&&nt.color&&(Le=nt.color,Te=!0);var rt=l.getPatternAttr(Le,Me.i,nt&&nt.color||null),dt=l.getPatternAttr(Ne.bgcolor,Me.i,null),xt=Ne.fgopacity,It=l.getPatternAttr(Ne.size,Me.i,8),Bt=l.getPatternAttr(Ne.solidity,Me.i,.3);Te=Te||Me.mcc||x.isArrayOrTypedArray(Ne.shape)||x.isArrayOrTypedArray(Ne.bgcolor)||x.isArrayOrTypedArray(Ne.fgcolor)||x.isArrayOrTypedArray(Ne.size)||x.isArrayOrTypedArray(Ne.solidity);var Gt=ce.uid;Te&&(Gt+="-"+Me.i),l.pattern(ge,"point",tt,Gt,Ee,It,Bt,Me.mcc,Ne.fillmode,dt,rt,xt)}else x.isArrayOrTypedArray(Cr)?r.fill(ge,Cr[Me.i]):r.fill(ge,Cr);_r&&r.stroke(ge,vr)}},l.makePointStyleFns=function(Me){var ge={},ce=Me.marker;return ge.markerScale=l.tryColorscale(ce,""),ge.lineScale=l.tryColorscale(ce,"line"),t.traceIs(Me,"symbols")&&(ge.ms2mrc=v.isBubble(Me)?p(Me):function(){return(ce.size||6)/2}),Me.selectedpoints&&x.extendFlat(ge,l.makeSelectedPointStyleFns(Me)),ge},l.makeSelectedPointStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.marker||{},nt=ce.marker||{},Qe=ze.marker||{},Ct=tt.opacity,St=nt.opacity,Ot=Qe.opacity,jt=St!==void 0,ur=Ot!==void 0;(x.isArrayOrTypedArray(Ct)||jt||ur)&&(ge.selectedOpacityFn=function(Ee){var Ve=Ee.mo===void 0?tt.opacity:Ee.mo;return Ee.selected?jt?St:Ve:ur?Ot:h*Ve});var ar=tt.color,Cr=nt.color,vr=Qe.color;(Cr||vr)&&(ge.selectedColorFn=function(Ee){var Ve=Ee.mcc||ar;return Ee.selected?Cr||Ve:vr||Ve});var _r=tt.size,yt=nt.size,Fe=Qe.size,Ke=yt!==void 0,Ne=Fe!==void 0;return t.traceIs(Me,"symbols")&&(Ke||Ne)&&(ge.selectedSizeFn=function(Ee){var Ve=Ee.mrc||_r/2;return Ee.selected?Ke?yt/2:Ve:Ne?Fe/2:Ve}),ge},l.makeSelectedTextStyleFns=function(Me){var ge={},ce=Me.selected||{},ze=Me.unselected||{},tt=Me.textfont||{},nt=ce.textfont||{},Qe=ze.textfont||{},Ct=tt.color,St=nt.color,Ot=Qe.color;return ge.selectedTextColorFn=function(jt){var ur=jt.tc||Ct;return jt.selected?St||ur:Ot||(St?ur:r.addOpacity(ur,h))},ge},l.selectedPointStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedPointStyleFns(ge),ze=ge.marker||{},tt=[];ce.selectedOpacityFn&&tt.push(function(nt,Qe){nt.style("opacity",ce.selectedOpacityFn(Qe))}),ce.selectedColorFn&&tt.push(function(nt,Qe){r.fill(nt,ce.selectedColorFn(Qe))}),ce.selectedSizeFn&&tt.push(function(nt,Qe){var Ct=Qe.mx||ze.symbol||0,St=ce.selectedSizeFn(Qe);nt.attr("d",y(l.symbolNumber(Ct),St,lt(Qe,ge),ee(Qe,ge))),Qe.mrc2=St}),tt.length&&Me.each(function(nt){for(var Qe=g.select(this),Ct=0;Ct<tt.length;Ct++)tt[Ct](Qe,nt)})}},l.tryColorscale=function(Me,ge){var ce=ge?x.nestedProperty(Me,ge).get():Me;if(ce){var ze=ce.color;if((ce.colorscale||ce._colorAx)&&x.isArrayOrTypedArray(ze))return o.makeColorScaleFuncFromTrace(ce)}return x.identity};var z={start:1,end:-1,middle:0,bottom:1,top:-1};function F(Me,ge,ce,ze,tt){var nt=g.select(Me.node().parentNode),Qe=ge.indexOf("top")!==-1?"top":ge.indexOf("bottom")!==-1?"bottom":"middle",Ct=ge.indexOf("left")!==-1?"end":ge.indexOf("right")!==-1?"start":"middle",St=ze?ze/.8+1:0,Ot=(i.lineCount(Me)-1)*c+1,jt=z[Ct]*St,ur=ce*.75+z[Qe]*St+(z[Qe]-1)*Ot*ce/2;Me.attr("text-anchor",Ct),tt||nt.attr("transform",a(jt,ur))}function B(Me,ge){var ce=Me.ts||ge.textfont.size;return M(ce)&&ce>0?ce:0}l.textPointStyle=function(Me,ge,ce){if(Me.size()){var ze;if(ge.selectedpoints){var tt=l.makeSelectedTextStyleFns(ge);ze=tt.selectedTextColorFn}var nt=ge.texttemplate,Qe=ce._fullLayout;Me.each(function(Ct){var St=g.select(this),Ot=nt?x.extractOption(Ct,ge,"txt","texttemplate"):x.extractOption(Ct,ge,"tx","text");if(!Ot&&Ot!==0){St.remove();return}if(nt){var jt=ge._module.formatLabels,ur=jt?jt(Ct,ge,Qe):{},ar={};T(ar,ge,Ct.i);var Cr=ge._meta||{};Ot=x.texttemplateString(Ot,ur,Qe._d3locale,ar,Ct,Cr)}var vr=Ct.tp||ge.textposition,_r=B(Ct,ge),yt=ze?ze(Ct):Ct.tc||ge.textfont.color;St.call(l.font,{family:Ct.tf||ge.textfont.family,weight:Ct.tw||ge.textfont.weight,style:Ct.ty||ge.textfont.style,variant:Ct.tv||ge.textfont.variant,textcase:Ct.tC||ge.textfont.textcase,lineposition:Ct.tE||ge.textfont.lineposition,shadow:Ct.tS||ge.textfont.shadow,size:_r,color:yt}).text(Ot).call(i.convertToTspans,ce).call(F,vr,_r,Ct.mrc)})}},l.selectedTextStyle=function(Me,ge){if(!(!Me.size()||!ge.selectedpoints)){var ce=l.makeSelectedTextStyleFns(ge);Me.each(function(ze){var tt=g.select(this),nt=ce.selectedTextColorFn(ze),Qe=ze.tp||ge.textposition,Ct=B(ze,ge);r.fill(tt,nt);var St=t.traceIs(ge,"bar-like");F(tt,Qe,Ct,ze.mrc2||ze.mrc,St)})}};var O=.5;l.smoothopen=function(Me,ge){if(Me.length<3)return"M"+Me.join("L");var ce="M"+Me[0],ze=[],tt;for(tt=1;tt<Me.length-1;tt++)ze.push(ue(Me[tt-1],Me[tt],Me[tt+1],ge));for(ce+="Q"+ze[0][0]+" "+Me[1],tt=2;tt<Me.length-1;tt++)ce+="C"+ze[tt-2][1]+" "+ze[tt-1][0]+" "+Me[tt];return ce+="Q"+ze[Me.length-3][1]+" "+Me[Me.length-1],ce},l.smoothclosed=function(Me,ge){if(Me.length<3)return"M"+Me.join("L")+"Z";var ce="M"+Me[0],ze=Me.length-1,tt=[ue(Me[ze],Me[0],Me[1],ge)],nt;for(nt=1;nt<ze;nt++)tt.push(ue(Me[nt-1],Me[nt],Me[nt+1],ge));for(tt.push(ue(Me[ze-1],Me[ze],Me[0],ge)),nt=1;nt<=ze;nt++)ce+="C"+tt[nt-1][1]+" "+tt[nt][0]+" "+Me[nt];return ce+="C"+tt[ze][1]+" "+tt[0][0]+" "+Me[0]+"Z",ce};var I,N;function U(Me,ge,ce){return ce&&(Me=G(Me)),ge?Q(Me[1]):W(Me[0])}function W(Me){var ge=g.round(Me,2);return I=ge,ge}function Q(Me){var ge=g.round(Me,2);return N=ge,ge}function ue(Me,ge,ce,ze){var tt=Me[0]-ge[0],nt=Me[1]-ge[1],Qe=ce[0]-ge[0],Ct=ce[1]-ge[1],St=Math.pow(tt*tt+nt*nt,O/2),Ot=Math.pow(Qe*Qe+Ct*Ct,O/2),jt=(Ot*Ot*tt-St*St*Qe)*ze,ur=(Ot*Ot*nt-St*St*Ct)*ze,ar=3*Ot*(St+Ot),Cr=3*St*(St+Ot);return[[W(ge[0]+(ar&&jt/ar)),Q(ge[1]+(ar&&ur/ar))],[W(ge[0]-(Cr&&jt/Cr)),Q(ge[1]-(Cr&&ur/Cr))]]}var se={hv:function(Me,ge,ce){return"H"+W(ge[0])+"V"+U(ge,1,ce)},vh:function(Me,ge,ce){return"V"+Q(ge[1])+"H"+U(ge,0,ce)},hvh:function(Me,ge,ce){return"H"+W((Me[0]+ge[0])/2)+"V"+Q(ge[1])+"H"+U(ge,0,ce)},vhv:function(Me,ge,ce){return"V"+Q((Me[1]+ge[1])/2)+"H"+W(ge[0])+"V"+U(ge,1,ce)}},he=function(Me,ge,ce){return"L"+U(ge,0,ce)+","+U(ge,1,ce)};l.steps=function(Me){var ge=se[Me]||he;return function(ce){for(var ze="M"+W(ce[0][0])+","+Q(ce[0][1]),tt=ce.length,nt=1;nt<tt;nt++)ze+=ge(ce[nt-1],ce[nt],nt===tt-1);return ze}};function G(Me,ge){var ce=Me.backoff,ze=Me.trace,tt=Me.d,nt=Me.i;if(ce&&ze&&ze.marker&&ze.marker.angle%360===0&&ze.line&&ze.line.shape!=="spline"){var Qe=x.isArrayOrTypedArray(ce),Ct=Me,St=ge?ge[0]:I||0,Ot=ge?ge[1]:N||0,jt=Ct[0],ur=Ct[1],ar=jt-St,Cr=ur-Ot,vr=Math.atan2(Cr,ar),_r=Qe?ce[nt]:ce;if(_r==="auto"){var yt=Ct.i;ze.type==="scatter"&&yt--;var Fe=Ct.marker,Ke=Fe.symbol;x.isArrayOrTypedArray(Ke)&&(Ke=Ke[yt]);var Ne=Fe.size;x.isArrayOrTypedArray(Ne)&&(Ne=Ne[yt]),_r=Fe?l.symbolBackOffs[l.symbolNumber(Ke)]*Ne:0,_r+=l.getMarkerStandoff(tt[yt],ze)||0}var Ee=jt-_r*Math.cos(vr),Ve=ur-_r*Math.sin(vr);(Ee<=jt&&Ee>=St||Ee>=jt&&Ee<=St)&&(Ve<=ur&&Ve>=Ot||Ve>=ur&&Ve<=Ot)&&(Me=[Ee,Ve])}return Me}l.applyBackoff=G,l.makeTester=function(){var Me=x.ensureSingleById(g.select("body"),"svg","js-plotly-tester",function(ce){ce.attr(n.svgAttrs).style({position:"absolute",left:"-10000px",top:"-10000px",width:"9000px",height:"9000px","z-index":"1"})}),ge=x.ensureSingle(Me,"path","js-reference-point",function(ce){ce.attr("d","M0,0H1V1H0Z").style({"stroke-width":0,fill:"black"})});l.tester=Me,l.testref=ge},l.savedBBoxes={};var $=0,J=1e4;l.bBox=function(Me,ge,ce){ce||(ce=Z(Me));var ze;if(ce){if(ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}else if(Me.childNodes.length===1){var tt=Me.childNodes[0];if(ce=Z(tt),ce){var nt=+tt.getAttribute("x")||0,Qe=+tt.getAttribute("y")||0,Ct=tt.getAttribute("transform");if(!Ct){var St=l.bBox(tt,!1,ce);return nt&&(St.left+=nt,St.right+=nt),Qe&&(St.top+=Qe,St.bottom+=Qe),St}if(ce+="~"+nt+"~"+Qe+"~"+Ct,ze=l.savedBBoxes[ce],ze)return x.extendFlat({},ze)}}var Ot,jt;ge?Ot=Me:(jt=l.tester.node(),Ot=Me.cloneNode(!0),jt.appendChild(Ot)),g.select(Ot).attr("transform",null).call(i.positionText,0,0);var ur=Ot.getBoundingClientRect(),ar=l.testref.node().getBoundingClientRect();ge||jt.removeChild(Ot);var Cr={height:ur.height,width:ur.width,left:ur.left-ar.left,top:ur.top-ar.top,right:ur.right-ar.left,bottom:ur.bottom-ar.top};return $>=J&&(l.savedBBoxes={},$=0),ce&&(l.savedBBoxes[ce]=Cr),$++,x.extendFlat({},Cr)};function Z(Me){var ge=Me.getAttribute("data-unformatted");if(ge!==null)return ge+Me.getAttribute("data-math")+Me.getAttribute("text-anchor")+Me.getAttribute("style")}l.setClipUrl=function(Me,ge,ce){Me.attr("clip-path",re(ge,ce))};function re(Me,ge){if(!Me)return null;var ce=ge._context,ze=ce._exportedPlot?"":ce._baseUrl||"";return ze?"url('"+ze+"#"+Me+"')":"url(#"+Me+")"}l.getTranslate=function(Me){var ge=/.*\btranslate\((-?\d*\.?\d*)[^-\d]*(-?\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||0,y:+tt[1]||0}},l.setTranslate=function(Me,ge,ce){var ze=/(\btranslate\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||0,ce=ce||0,Qe=Qe.replace(ze,"").trim(),Qe+=a(ge,ce),Qe=Qe.trim(),Me[nt]("transform",Qe),Qe},l.getScale=function(Me){var ge=/.*\bscale\((\d*\.?\d*)[^\d]*(\d*\.?\d*)[^\d].*/,ce=Me.attr?"attr":"getAttribute",ze=Me[ce]("transform")||"",tt=ze.replace(ge,function(nt,Qe,Ct){return[Qe,Ct].join(" ")}).split(" ");return{x:+tt[0]||1,y:+tt[1]||1}},l.setScale=function(Me,ge,ce){var ze=/(\bscale\(.*?\);?)/,tt=Me.attr?"attr":"getAttribute",nt=Me.attr?"attr":"setAttribute",Qe=Me[tt]("transform")||"";return ge=ge||1,ce=ce||1,Qe=Qe.replace(ze,"").trim(),Qe+="scale("+ge+","+ce+")",Qe=Qe.trim(),Me[nt]("transform",Qe),Qe};var ne=/\s*sc.*/;l.setPointGroupScale=function(Me,ge,ce){if(ge=ge||1,ce=ce||1,!!Me){var ze=ge===1&&ce===1?"":"scale("+ge+","+ce+")";Me.each(function(){var tt=(this.getAttribute("transform")||"").replace(ne,"");tt+=ze,tt=tt.trim(),this.setAttribute("transform",tt)})}};var j=/translate\([^)]*\)\s*$/;l.setTextPointsScale=function(Me,ge,ce){Me&&Me.each(function(){var ze,tt=g.select(this),nt=tt.select("text");if(nt.node()){var Qe=parseFloat(nt.attr("x")||0),Ct=parseFloat(nt.attr("y")||0),St=(tt.attr("transform")||"").match(j);ge===1&&ce===1?ze=[]:ze=[a(Qe,Ct),"scale("+ge+","+ce+")",a(-Qe,-Ct)],St&&ze.push(St),tt.attr("transform",ze.join(""))}})};function ee(Me,ge){var ce;return Me&&(ce=Me.mf),ce===void 0&&(ce=ge.marker&&ge.marker.standoff||0),!ge._geo&&!ge._xA?-ce:ce}l.getMarkerStandoff=ee;var ie=Math.atan2,fe=Math.cos,be=Math.sin;function Ae(Me,ge){var ce=ge[0],ze=ge[1];return[ce*fe(Me)-ze*be(Me),ce*be(Me)+ze*fe(Me)]}var Be,Ie,Ze,at,it,et;function lt(Me,ge){var ce=Me.ma;ce===void 0&&(ce=ge.marker.angle,(!ce||x.isArrayOrTypedArray(ce))&&(ce=0));var ze,tt,nt=ge.marker.angleref;if(nt==="previous"||nt==="north"){if(ge._geo){var Qe=ge._geo.project(Me.lonlat);ze=Qe[0],tt=Qe[1]}else{var Ct=ge._xA,St=ge._yA;if(Ct&&St)ze=Ct.c2p(Me.x),tt=St.c2p(Me.y);else return 90}if(ge._geo){var Ot=Me.lonlat[0],jt=Me.lonlat[1],ur=ge._geo.project([Ot,jt+1e-5]),ar=ge._geo.project([Ot+1e-5,jt]),Cr=ie(ar[1]-tt,ar[0]-ze),vr=ie(ur[1]-tt,ur[0]-ze),_r;if(nt==="north")_r=ce/180*Math.PI;else if(nt==="previous"){var yt=Ot/180*Math.PI,Fe=jt/180*Math.PI,Ke=Be/180*Math.PI,Ne=Ie/180*Math.PI,Ee=Ke-yt,Ve=fe(Ne)*be(Ee),ke=be(Ne)*fe(Fe)-fe(Ne)*be(Fe)*fe(Ee);_r=-ie(Ve,ke)-Math.PI,Be=Ot,Ie=jt}var Te=Ae(Cr,[fe(_r),0]),Le=Ae(vr,[be(_r),0]);ce=ie(Te[1]+Le[1],Te[0]+Le[0])/Math.PI*180,nt==="previous"&&!(et===ge.uid&&Me.i===it+1)&&(ce=null)}if(nt==="previous"&&!ge._geo)if(et===ge.uid&&Me.i===it+1&&M(ze)&&M(tt)){var rt=ze-Ze,dt=tt-at,xt=ge.line&&ge.line.shape||"",It=xt.slice(xt.length-1);It==="h"&&(dt=0),It==="v"&&(rt=0),ce+=ie(dt,rt)/Math.PI*180+90}else ce=null}return Ze=ze,at=tt,it=Me.i,et=ge.uid,ce}l.getMarkerAngle=lt}}),Xg=Ye({"src/components/titles/index.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=Bo(),o=Fn(),a=jl(),i=Xm(),n=oh().OPPOSITE_SIDE,s=/ [XY][0-9]* /,c=1.6,h=1.6;function v(p,T,l){var _=p._fullLayout,w=l.propContainer,S=l.propName,E=l.placeholder,m=l.traceIndex,b=l.avoid||{},d=l.attributes,u=l.transform,y=l.containerGroup,f=1,P=w.title,L=(P&&P.text?P.text:"").trim(),z=!1,F=P&&P.font?P.font:{},B=F.family,O=F.size,I=F.color,N=F.weight,U=F.style,W=F.variant,Q=F.textcase,ue=F.lineposition,se=F.shadow,he=l.subtitlePropName,G=!!he,$=l.subtitlePlaceholder,J=(w.title||{}).subtitle||{text:"",font:{}},Z=J.text.trim(),re=!1,ne=1,j=J.font,ee=j.family,ie=j.size,fe=j.color,be=j.weight,Ae=j.style,Be=j.variant,Ie=j.textcase,Ze=j.lineposition,at=j.shadow,it;S==="title.text"?it="titleText":S.indexOf("axis")!==-1?it="axisTitleText":S.indexOf("colorbar"!==-1)&&(it="colorbarTitleText");var et=p._context.edits[it];function lt(ar,Cr){return ar===void 0||Cr===void 0?!1:ar.replace(s," % ")===Cr.replace(s," % ")}L===""?f=0:lt(L,E)&&(et||(L=""),f=.2,z=!0),G&&(Z===""?ne=0:lt(Z,$)&&(et||(Z=""),ne=.2,re=!0)),l._meta?L=e.templateString(L,l._meta):_._meta&&(L=e.templateString(L,_._meta));var Me=L||Z||et,ge;y||(y=e.ensureSingle(_._infolayer,"g","g-"+T),ge=_._hColorbarMoveTitle);var ce=y.selectAll("text."+T).data(Me?[0]:[]);ce.enter().append("text"),ce.text(L).attr("class",T),ce.exit().remove();var ze=null,tt=T+"-subtitle",nt=Z||et;if(G&&nt&&(ze=y.selectAll("text."+tt).data(nt?[0]:[]),ze.enter().append("text"),ze.text(Z).attr("class",tt),ze.exit().remove()),!Me)return y;function Qe(ar,Cr){e.syncOrAsync([Ct,St],{title:ar,subtitle:Cr})}function Ct(ar){var Cr=ar.title,vr=ar.subtitle,_r;!u&&ge&&(u={}),u?(_r="",u.rotate&&(_r+="rotate("+[u.rotate,d.x,d.y]+")"),(u.offset||ge)&&(_r+=t(0,(u.offset||0)-(ge||0)))):_r=null,Cr.attr("transform",_r);function yt(ke){if(ke){var Te=g.select(ke.node().parentNode).select("."+tt);if(!Te.empty()){var Le=ke.node().getBBox();if(Le.height){var rt=Le.y+Le.height+c*ie;Te.attr("y",rt)}}}}if(Cr.style("opacity",f*o.opacity(I)).call(r.font,{color:o.rgb(I),size:g.round(O,2),family:B,weight:N,style:U,variant:W,textcase:Q,shadow:se,lineposition:ue}).attr(d).call(a.convertToTspans,p,yt),vr){var Fe=y.select("."+T+"-math-group"),Ke=Cr.node().getBBox(),Ne=Fe.node()?Fe.node().getBBox():void 0,Ee=Ne?Ne.y+Ne.height+c*ie:Ke.y+Ke.height+h*ie,Ve=e.extendFlat({},d,{y:Ee});vr.attr("transform",_r),vr.style("opacity",ne*o.opacity(fe)).call(r.font,{color:o.rgb(fe),size:g.round(ie,2),family:ee,weight:be,style:Ae,variant:Be,textcase:Ie,shadow:at,lineposition:Ze}).attr(Ve).call(a.convertToTspans,p)}return A.previousPromises(p)}function St(ar){var Cr=ar.title,vr=g.select(Cr.node().parentNode);if(b&&b.selection&&b.side&&L){vr.attr("transform",null);var _r=n[b.side],yt=b.side==="left"||b.side==="top"?-1:1,Fe=x(b.pad)?b.pad:2,Ke=r.bBox(vr.node()),Ne={t:0,b:0,l:0,r:0},Ee=p._fullLayout._reservedMargin;for(var Ve in Ee)for(var ke in Ee[Ve]){var Te=Ee[Ve][ke];Ne[ke]=Math.max(Ne[ke],Te)}var Le={left:Ne.l,top:Ne.t,right:_.width-Ne.r,bottom:_.height-Ne.b},rt=b.maxShift||yt*(Le[b.side]-Ke[b.side]),dt=0;if(rt<0)dt=rt;else{var xt=b.offsetLeft||0,It=b.offsetTop||0;Ke.left-=xt,Ke.right-=xt,Ke.top-=It,Ke.bottom-=It,b.selection.each(function(){var Gt=r.bBox(this);e.bBoxIntersect(Ke,Gt,Fe)&&(dt=Math.max(dt,yt*(Gt[b.side]-Ke[_r])+Fe))}),dt=Math.min(rt,dt),w._titleScoot=Math.abs(dt)}if(dt>0||rt<0){var Bt={left:[-dt,0],right:[dt,0],top:[0,-dt],bottom:[0,dt]}[b.side];vr.attr("transform",t(Bt[0],Bt[1]))}}}ce.call(Qe,ze);function Ot(ar,Cr){ar.text(Cr).on("mouseover.opacity",function(){g.select(this).transition().duration(i.SHOW_PLACEHOLDER).style("opacity",1)}).on("mouseout.opacity",function(){g.select(this).transition().duration(i.HIDE_PLACEHOLDER).style("opacity",0)})}if(et&&(L?ce.on(".opacity",null):(Ot(ce,E),z=!0),ce.call(a.makeEditable,{gd:p}).on("edit",function(ar){m!==void 0?M.call("_guiRestyle",p,S,ar,m):M.call("_guiRelayout",p,S,ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,d.x,d.y)}),G)){if(G&&!L){var jt=ce.node().getBBox(),ur=jt.y+jt.height+h*ie;ze.attr("y",ur)}Z?ze.on(".opacity",null):(Ot(ze,$),re=!0),ze.call(a.makeEditable,{gd:p}).on("edit",function(ar){M.call("_guiRelayout",p,"title.subtitle.text",ar)}).on("cancel",function(){this.text(this.attr("data-unformatted")).call(Qe)}).on("input",function(ar){this.text(ar||" ").call(a.positionText,ze.attr("x"),ze.attr("y"))})}return ce.classed("js-placeholder",z),ze&&ze.classed("js-placeholder",re),y}H.exports={draw:v,SUBTITLE_PADDING_EM:h,SUBTITLE_PADDING_MATHJAX_EM:c}}}),wv=Ye({"src/plots/cartesian/set_convert.js"(X,H){"use strict";var g=_n(),x=Np().utcFormat,A=ta(),M=A.numberFormat,e=jo(),t=A.cleanNumber,r=A.ms2DateTime,o=A.dateTime2ms,a=A.ensureNumber,i=A.isArrayOrTypedArray,n=ks(),s=n.FP_SAFE,c=n.BADNUM,h=n.LOG_CLIP,v=n.ONEWEEK,p=n.ONEDAY,T=n.ONEHOUR,l=n.ONEMIN,_=n.ONESEC,w=Xc(),S=wh(),E=S.HOUR_PATTERN,m=S.WEEKDAY_PATTERN;function b(u){return Math.pow(10,u)}function d(u){return u!=null}H.exports=function(y,f){f=f||{};var P=y._id||"x",L=P.charAt(0);function z(Z,re){if(Z>0)return Math.log(Z)/Math.LN10;if(Z<=0&&re&&y.range&&y.range.length===2){var ne=y.range[0],j=y.range[1];return .5*(ne+j-2*h*Math.abs(ne-j))}else return c}function F(Z,re,ne,j){if((j||{}).msUTC&&e(Z))return+Z;var ee=o(Z,ne||y.calendar);if(ee===c)if(e(Z)){Z=+Z;var ie=Math.floor(A.mod(Z+.05,1)*10),fe=Math.round(Z-ie/10);ee=o(new Date(fe))+ie/10}else return c;return ee}function B(Z,re,ne){return r(Z,re,ne||y.calendar)}function O(Z){return y._categories[Math.round(Z)]}function I(Z){if(d(Z)){if(y._categoriesMap===void 0&&(y._categoriesMap={}),y._categoriesMap[Z]!==void 0)return y._categoriesMap[Z];y._categories.push(typeof Z=="number"?String(Z):Z);var re=y._categories.length-1;return y._categoriesMap[Z]=re,re}return c}function N(Z,re){for(var ne=new Array(re),j=0;j<re;j++){var ee=(Z[0]||[])[j],ie=(Z[1]||[])[j];ne[j]=U([ee,ie])}return ne}function U(Z){if(y._categoriesMap)return y._categoriesMap[Z]}function W(Z){var re=U(Z);if(re!==void 0)return re;if(e(Z))return+Z}function Q(Z){return e(Z)?+Z:U(Z)}function ue(Z,re,ne){return g.round(ne+re*Z,2)}function se(Z,re,ne){return(Z-ne)/re}var he=function(re){return e(re)?ue(re,y._m,y._b):c},G=function(Z){return se(Z,y._m,y._b)};if(y.rangebreaks){var $=L==="y";he=function(Z){if(!e(Z))return c;var re=y._rangebreaks.length;if(!re)return ue(Z,y._m,y._b);var ne=$;y.range[0]>y.range[1]&&(ne=!ne);for(var j=ne?-1:1,ee=j*Z,ie=0,fe=0;fe<re;fe++){var be=j*y._rangebreaks[fe].min,Ae=j*y._rangebreaks[fe].max;if(ee<be)break;if(ee>Ae)ie=fe+1;else{ie=ee<(be+Ae)/2?fe:fe+1;break}}var Be=y._B[ie]||0;return isFinite(Be)?ue(Z,y._m2,Be):0},G=function(Z){var re=y._rangebreaks.length;if(!re)return se(Z,y._m,y._b);for(var ne=0,j=0;j<re&&!(Z<y._rangebreaks[j].pmin);j++)Z>y._rangebreaks[j].pmax&&(ne=j+1);return se(Z,y._m2,y._B[ne])}}y.c2l=y.type==="log"?z:a,y.l2c=y.type==="log"?b:a,y.l2p=he,y.p2l=G,y.c2p=y.type==="log"?function(Z,re){return he(z(Z,re))}:he,y.p2c=y.type==="log"?function(Z){return b(G(Z))}:G,["linear","-"].indexOf(y.type)!==-1?(y.d2r=y.r2d=y.d2c=y.r2c=y.d2l=y.r2l=t,y.c2d=y.c2r=y.l2d=y.l2r=a,y.d2p=y.r2p=function(Z){return y.l2p(t(Z))},y.p2d=y.p2r=G,y.cleanPos=a):y.type==="log"?(y.d2r=y.d2l=function(Z,re){return z(t(Z),re)},y.r2d=y.r2c=function(Z){return b(t(Z))},y.d2c=y.r2l=t,y.c2d=y.l2r=a,y.c2r=z,y.l2d=b,y.d2p=function(Z,re){return y.l2p(y.d2r(Z,re))},y.p2d=function(Z){return b(G(Z))},y.r2p=function(Z){return y.l2p(t(Z))},y.p2r=G,y.cleanPos=a):y.type==="date"?(y.d2r=y.r2d=A.identity,y.d2c=y.r2c=y.d2l=y.r2l=F,y.c2d=y.c2r=y.l2d=y.l2r=B,y.d2p=y.r2p=function(Z,re,ne){return y.l2p(F(Z,0,ne))},y.p2d=y.p2r=function(Z,re,ne){return B(G(Z),re,ne)},y.cleanPos=function(Z){return A.cleanDate(Z,c,y.calendar)}):y.type==="category"?(y.d2c=y.d2l=I,y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=Q(Z);return re!==void 0?re:y.fraction2r(.5)},y.l2r=y.c2r=a,y.r2l=Q,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return typeof Z=="string"&&Z!==""?Z:a(Z)}):y.type==="multicategory"&&(y.r2d=y.c2d=y.l2d=O,y.d2r=y.d2l_noadd=W,y.r2c=function(Z){var re=W(Z);return re!==void 0?re:y.fraction2r(.5)},y.r2c_just_indices=U,y.l2r=y.c2r=a,y.r2l=W,y.d2p=function(Z){return y.l2p(y.r2c(Z))},y.p2d=function(Z){return O(G(Z))},y.r2p=y.d2p,y.p2r=G,y.cleanPos=function(Z){return Array.isArray(Z)||typeof Z=="string"&&Z!==""?Z:a(Z)},y.setupMultiCategory=function(Z){var re=y._traceIndices,ne,j,ee=y._matchGroup;if(ee&&y._categories.length===0){for(var ie in ee)if(ie!==P){var fe=f[w.id2name(ie)];re=re.concat(fe._traceIndices)}}var be=[[0,{}],[0,{}]],Ae=[];for(ne=0;ne<re.length;ne++){var Be=Z[re[ne]];if(L in Be){var Ie=Be[L],Ze=Be._length||A.minRowLength(Ie);if(i(Ie[0])&&i(Ie[1]))for(j=0;j<Ze;j++){var at=Ie[0][j],it=Ie[1][j];d(at)&&d(it)&&(Ae.push([at,it]),at in be[0][1]||(be[0][1][at]=be[0][0]++),it in be[1][1]||(be[1][1][it]=be[1][0]++))}}}for(Ae.sort(function(et,lt){var Me=be[0][1],ge=Me[et[0]]-Me[lt[0]];if(ge)return ge;var ce=be[1][1];return ce[et[1]]-ce[lt[1]]}),ne=0;ne<Ae.length;ne++)I(Ae[ne])}),y.fraction2r=function(Z){var re=y.r2l(y.range[0]),ne=y.r2l(y.range[1]);return y.l2r(re+Z*(ne-re))},y.r2fraction=function(Z){var re=y.r2l(y.range[0]),ne=y.r2l(y.range[1]);return(y.r2l(Z)-re)/(ne-re)},y.limitRange=function(Z){var re=y.minallowed,ne=y.maxallowed;if(!(re===void 0&&ne===void 0)){Z||(Z="range");var j=A.nestedProperty(y,Z).get(),ee=A.simpleMap(j,y.r2l),ie=ee[1]<ee[0];ie&&ee.reverse();var fe=A.simpleMap([re,ne],y.r2l);if(re!==void 0&&ee[0]<fe[0]&&(j[ie?1:0]=re),ne!==void 0&&ee[1]>fe[1]&&(j[ie?0:1]=ne),j[0]===j[1]){var be=y.l2r(re),Ae=y.l2r(ne);if(re!==void 0){var Be=be+1;ne!==void 0&&(Be=Math.min(Be,Ae)),j[ie?1:0]=Be}if(ne!==void 0){var Ie=Ae+1;re!==void 0&&(Ie=Math.max(Ie,be)),j[ie?0:1]=Ie}}}},y.cleanRange=function(Z,re){y._cleanRange(Z,re),y.limitRange(Z)},y._cleanRange=function(Z,re){re||(re={}),Z||(Z="range");var ne=A.nestedProperty(y,Z).get(),j,ee;if(y.type==="date"?ee=A.dfltRange(y.calendar):L==="y"?ee=S.DFLTRANGEY:y._name==="realaxis"?ee=[0,1]:ee=re.dfltRange||S.DFLTRANGEX,ee=ee.slice(),(y.rangemode==="tozero"||y.rangemode==="nonnegative")&&(ee[0]=0),!ne||ne.length!==2){A.nestedProperty(y,Z).set(ee);return}var ie=ne[0]===null,fe=ne[1]===null;for(y.type==="date"&&!y.autorange&&(ne[0]=A.cleanDate(ne[0],c,y.calendar),ne[1]=A.cleanDate(ne[1],c,y.calendar)),j=0;j<2;j++)if(y.type==="date"){if(!A.isDateTime(ne[j],y.calendar)){y[Z]=ee;break}if(y.r2l(ne[0])===y.r2l(ne[1])){var be=A.constrain(y.r2l(ne[0]),A.MIN_MS+1e3,A.MAX_MS-1e3);ne[0]=y.l2r(be-1e3),ne[1]=y.l2r(be+1e3);break}}else{if(!e(ne[j]))if(!(ie||fe)&&e(ne[1-j]))ne[j]=ne[1-j]*(j?10:.1);else{y[Z]=ee;break}if(ne[j]<-s?ne[j]=-s:ne[j]>s&&(ne[j]=s),ne[0]===ne[1]){var Ae=Math.max(1,Math.abs(ne[0]*1e-6));ne[0]-=Ae,ne[1]+=Ae}}},y.setScale=function(Z){var re=f._size;if(y.overlaying){var ne=w.getFromId({_fullLayout:f},y.overlaying);y.domain=ne.domain}var j=Z&&y._r?"_r":"range",ee=y.calendar;y.cleanRange(j);var ie=y.r2l(y[j][0],ee),fe=y.r2l(y[j][1],ee),be=L==="y";if(be?(y._offset=re.t+(1-y.domain[1])*re.h,y._length=re.h*(y.domain[1]-y.domain[0]),y._m=y._length/(ie-fe),y._b=-y._m*fe):(y._offset=re.l+y.domain[0]*re.w,y._length=re.w*(y.domain[1]-y.domain[0]),y._m=y._length/(fe-ie),y._b=-y._m*ie),y._rangebreaks=[],y._lBreaks=0,y._m2=0,y._B=[],y.rangebreaks){var Ae,Be;if(y._rangebreaks=y.locateBreaks(Math.min(ie,fe),Math.max(ie,fe)),y._rangebreaks.length){for(Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],y._lBreaks+=Math.abs(Be.max-Be.min);var Ie=be;ie>fe&&(Ie=!Ie),Ie&&y._rangebreaks.reverse();var Ze=Ie?-1:1;for(y._m2=Ze*y._length/(Math.abs(fe-ie)-y._lBreaks),y._B.push(-y._m2*(be?fe:ie)),Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],y._B.push(y._B[y._B.length-1]-Ze*y._m2*(Be.max-Be.min));for(Ae=0;Ae<y._rangebreaks.length;Ae++)Be=y._rangebreaks[Ae],Be.pmin=he(Be.min),Be.pmax=he(Be.max)}}if(!isFinite(y._m)||!isFinite(y._b)||y._length<0)throw f._replotting=!1,new Error("Something went wrong with axis scaling")},y.maskBreaks=function(Z){var re=y.rangebreaks||[],ne,j,ee,ie,fe;re._cachedPatterns||(re._cachedPatterns=re.map(function(Me){return Me.enabled&&Me.bounds?A.simpleMap(Me.bounds,Me.pattern?t:y.d2c):null})),re._cachedValues||(re._cachedValues=re.map(function(Me){return Me.enabled&&Me.values?A.simpleMap(Me.values,y.d2c).sort(A.sorterAsc):null}));for(var be=0;be<re.length;be++){var Ae=re[be];if(Ae.enabled){if(Ae.bounds){var Be=Ae.pattern;switch(ne=re._cachedPatterns[be],j=ne[0],ee=ne[1],Be){case m:fe=new Date(Z),ie=fe.getUTCDay(),j>ee&&(ee+=7,ie<j&&(ie+=7));break;case E:fe=new Date(Z);var Ie=fe.getUTCHours(),Ze=fe.getUTCMinutes(),at=fe.getUTCSeconds(),it=fe.getUTCMilliseconds();ie=Ie+(Ze/60+at/3600+it/36e5),j>ee&&(ee+=24,ie<j&&(ie+=24));break;case"":ie=Z;break}if(ie>=j&&ie<ee)return c}else for(var et=re._cachedValues[be],lt=0;lt<et.length;lt++)if(j=et[lt],ee=j+Ae.dvalue,Z>=j&&Z<ee)return c}}return Z},y.locateBreaks=function(Z,re){var ne,j,ee,ie,fe=[];if(!y.rangebreaks)return fe;var be=y.rangebreaks.slice().sort(function(ce,ze){return ce.pattern===m&&ze.pattern===E?-1:ze.pattern===m&&ce.pattern===E?1:0}),Ae=function(ce,ze){if(ce=A.constrain(ce,Z,re),ze=A.constrain(ze,Z,re),ce!==ze){for(var tt=!0,nt=0;nt<fe.length;nt++){var Qe=fe[nt];ce<Qe.max&&ze>=Qe.min&&(ce<Qe.min&&(Qe.min=ce),ze>Qe.max&&(Qe.max=ze),tt=!1)}tt&&fe.push({min:ce,max:ze})}};for(ne=0;ne<be.length;ne++){var Be=be[ne];if(Be.enabled)if(Be.bounds){var Ie=Z,Ze=re;Be.pattern&&(Ie=Math.floor(Ie)),j=A.simpleMap(Be.bounds,Be.pattern?t:y.r2l),ee=j[0],ie=j[1];var at=new Date(Ie),it,et;switch(Be.pattern){case m:et=v,it=((ie<ee?7:0)+(ie-ee))*p,Ie+=ee*p-(at.getUTCDay()*p+at.getUTCHours()*T+at.getUTCMinutes()*l+at.getUTCSeconds()*_+at.getUTCMilliseconds());break;case E:et=p,it=((ie<ee?24:0)+(ie-ee))*T,Ie+=ee*T-(at.getUTCHours()*T+at.getUTCMinutes()*l+at.getUTCSeconds()*_+at.getUTCMilliseconds());break;default:Ie=Math.min(j[0],j[1]),Ze=Math.max(j[0],j[1]),et=Ze-Ie,it=et}for(var lt=Ie;lt<Ze;lt+=et)Ae(lt,lt+it)}else for(var Me=A.simpleMap(Be.values,y.d2c),ge=0;ge<Me.length;ge++)ee=Me[ge],ie=ee+Be.dvalue,Ae(ee,ie)}return fe.sort(function(ce,ze){return ce.min-ze.min}),fe},y.makeCalcdata=function(Z,re,ne){var j,ee,ie,fe,be=y.type,Ae=be==="date"&&Z[re+"calendar"];if(re in Z){if(j=Z[re],fe=Z._length||A.minRowLength(j),A.isTypedArray(j)&&(be==="linear"||be==="log")){if(fe===j.length)return j;if(j.subarray)return j.subarray(0,fe)}if(be==="multicategory")return N(j,fe);for(ee=new Array(fe),ie=0;ie<fe;ie++)ee[ie]=y.d2c(j[ie],0,Ae,ne)}else{var Be=re+"0"in Z?y.d2c(Z[re+"0"],0,Ae):0,Ie=Z["d"+re]?Number(Z["d"+re]):1;for(j=Z[{x:"y",y:"x"}[re]],fe=Z._length||j.length,ee=new Array(fe),ie=0;ie<fe;ie++)ee[ie]=Be+ie*Ie}if(y.rangebreaks)for(ie=0;ie<fe;ie++)ee[ie]=y.maskBreaks(ee[ie]);return ee},y.isValidRange=function(Z,re){return Array.isArray(Z)&&Z.length===2&&(re&&Z[0]===null||e(y.r2l(Z[0])))&&(re&&Z[1]===null||e(y.r2l(Z[1])))},y.getAutorangeDflt=function(Z,re){var ne=!y.isValidRange(Z,"nullOk");return ne&&re&&re.reverseDflt?ne="reversed":Z&&(Z[0]===null&&Z[1]===null?ne=!0:Z[0]===null&&Z[1]!==null?ne="min":Z[0]!==null&&Z[1]===null&&(ne="max")),ne},y.isReversed=function(){var Z=y.autorange;return Z==="reversed"||Z==="min reversed"||Z==="max reversed"},y.isPtWithinRange=function(Z,re){var ne=y.c2l(Z[L],null,re),j=y.r2l(y.range[0]),ee=y.r2l(y.range[1]);return j<ee?j<=ne&&ne<=ee:ee<=ne&&ne<=j},y._emptyCategories=function(){y._categories=[],y._categoriesMap={}},y.clearCalc=function(){var Z=y._matchGroup;if(Z){var re=null,ne=null;for(var j in Z){var ee=f[w.id2name(j)];if(ee._categories){re=ee._categories,ne=ee._categoriesMap;break}}re&&ne?(y._categories=re,y._categoriesMap=ne):y._emptyCategories()}else y._emptyCategories();if(y._initialCategories)for(var ie=0;ie<y._initialCategories.length;ie++)I(y._initialCategories[ie])},y.sortByInitialCategories=function(){var Z=[];if(y._emptyCategories(),y._initialCategories)for(var re=0;re<y._initialCategories.length;re++)I(y._initialCategories[re]);Z=Z.concat(y._traceIndices);var ne=y._matchGroup;for(var j in ne)if(P!==j){var ee=f[w.id2name(j)];ee._categories=y._categories,ee._categoriesMap=y._categoriesMap,Z=Z.concat(ee._traceIndices)}return Z};var J=f._d3locale;y.type==="date"&&(y._dateFormat=J?J.timeFormat:x,y._extraFormat=f._extraFormat),y._separators=f.separators,y._numFormat=J?J.numberFormat:M,delete y._minDtick,delete y._forceTick0}}}),r1=Ye({"src/plots/cartesian/axis_autotype.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=x.isArrayOrTypedArray,e=x.isDateTime,t=x.cleanNumber,r=Math.round;H.exports=function(v,p,T){var l=v,_=T.noMultiCategory;if(M(l)&&!l.length)return"-";if(!_&&c(l))return"multicategory";if(_&&Array.isArray(l[0])){for(var w=[],S=0;S<l.length;S++)if(M(l[S]))for(var E=0;E<l[S].length;E++)w.push(l[S][E]);l=w}if(i(l,p))return"date";var m=T.autotypenumbers!=="strict";return s(l,m)?"category":a(l,m)?"linear":"-"};function o(h,v){return v?g(h):typeof h=="number"}function a(h,v){for(var p=h.length,T=0;T<p;T++)if(o(h[T],v))return!0;return!1}function i(h,v){for(var p=h.length,T=n(p),l=0,_=0,w={},S=0;S<p;S+=T){var E=r(S),m=h[E],b=String(m);w[b]||(w[b]=1,e(m,v)&&l++,g(m)&&_++)}return l>_*2}function n(h){return Math.max(1,(h-1)/1e3)}function s(h,v){for(var p=h.length,T=n(p),l=0,_=0,w={},S=0;S<p;S+=T){var E=r(S),m=h[E],b=String(m);if(!w[b]){w[b]=1;var d=typeof m;d==="boolean"?_++:(v?t(m)!==A:d==="number")?l++:d==="string"&&_++}}return _>l*2}function c(h){return M(h[0])&&M(h[1])}}}),Yd=Ye({"src/plots/cartesian/autorange.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=ks().FP_SAFE,e=Hn(),t=Bo(),r=Xc(),o=r.getFromId,a=r.isLinked;H.exports={applyAutorangeOptions:y,getAutoRange:i,makePadFn:s,doAutoRange:p,findExtremes:T,concatExtremes:v};function i(f,P){var L,z,F=[],B=f._fullLayout,O=s(B,P,0),I=s(B,P,1),N=v(f,P),U=N.min,W=N.max;if(U.length===0||W.length===0)return A.simpleMap(P.range,P.r2l);var Q=U[0].val,ue=W[0].val;for(L=1;L<U.length&&Q===ue;L++)Q=Math.min(Q,U[L].val);for(L=1;L<W.length&&Q===ue;L++)ue=Math.max(ue,W[L].val);var se=P.autorange,he=se==="reversed"||se==="min reversed"||se==="max reversed";if(!he&&P.range){var G=A.simpleMap(P.range,P.r2l);he=G[1]<G[0]}P.autorange==="reversed"&&(P.autorange=!0);var $=P.rangemode,J=$==="tozero",Z=$==="nonnegative",re=P._length,ne=re/10,j=0,ee,ie,fe,be,Ae,Be;for(L=0;L<U.length;L++)for(ee=U[L],z=0;z<W.length;z++)ie=W[z],Be=ie.val-ee.val-n(P,ee.val,ie.val),Be>0&&(Ae=re-O(ee)-I(ie),Ae>ne?Be/Ae>j&&(fe=ee,be=ie,j=Be/Ae):Be/re>j&&(fe={val:ee.val,nopad:1},be={val:ie.val,nopad:1},j=Be/re));function Ie(lt,Me){return Math.max(lt,I(Me))}if(Q===ue){var Ze=Q-1,at=Q+1;if(J)if(Q===0)F=[0,1];else{var it=(Q>0?W:U).reduce(Ie,0),et=Q/(1-Math.min(.5,it/re));F=Q>0?[0,et]:[et,0]}else Z?F=[Math.max(0,Ze),Math.max(1,at)]:F=[Ze,at]}else J?(fe.val>=0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:0,nopad:1})):Z&&(fe.val-j*O(fe)<0&&(fe={val:0,nopad:1}),be.val<=0&&(be={val:1,nopad:1})),j=(be.val-fe.val-n(P,ee.val,ie.val))/(re-O(fe)-I(be)),F=[fe.val-j*O(fe),be.val+j*I(be)];return F=y(F,P),P.limitRange&&P.limitRange(),he&&F.reverse(),A.simpleMap(F,P.l2r||Number)}function n(f,P,L){var z=0;if(f.rangebreaks)for(var F=f.locateBreaks(P,L),B=0;B<F.length;B++){var O=F[B];z+=O.max-O.min}return z}function s(f,P,L){var z=.05*P._length,F=P._anchorAxis||{};if((P.ticklabelposition||"").indexOf("inside")!==-1||(F.ticklabelposition||"").indexOf("inside")!==-1){var B=P.isReversed();if(!B){var O=A.simpleMap(P.range,P.r2l);B=O[1]<O[0]}B&&(L=!L)}var I=0;return a(f,P._id)||(I=h(f,P,L)),z=Math.max(I,z),P.constrain==="domain"&&P._inputDomain&&(z*=(P._inputDomain[1]-P._inputDomain[0])/(P.domain[1]-P.domain[0])),function(U){return U.nopad?0:U.pad+(U.extrapad?z:I)}}var c=3;function h(f,P,L){var z=0,F=P._id.charAt(0)==="x";for(var B in f._plots){var O=f._plots[B];if(!(P._id!==O.xaxis._id&&P._id!==O.yaxis._id)){var I=(F?O.yaxis:O.xaxis)||{};if((I.ticklabelposition||"").indexOf("inside")!==-1&&(!L&&(I.side==="left"||I.side==="bottom")||L&&(I.side==="top"||I.side==="right"))){if(I._vals){var N=A.deg2rad(I._tickAngles[I._id+"tick"]||0),U=Math.abs(Math.cos(N)),W=Math.abs(Math.sin(N));if(!I._vals[0].bb){var Q=I._id+"tick",ue=I._selections[Q];ue.each(function(Z){var re=g.select(this),ne=re.select(".text-math-group");ne.empty()&&(Z.bb=t.bBox(re.node()))})}for(var se=0;se<I._vals.length;se++){var he=I._vals[se],G=he.bb;if(G){var $=2*c+G.width,J=2*c+G.height;z=Math.max(z,F?Math.max($*U,J*W):Math.max(J*U,$*W))}}}I.ticks==="inside"&&I.ticklabelposition==="inside"&&(z+=I.ticklen||0)}}}return z}function v(f,P,L){var z=P._id,F=f._fullData,B=f._fullLayout,O=[],I=[],N,U,W;function Q($,J){for(N=0;N<J.length;N++){var Z=$[J[N]],re=(Z._extremes||{})[z];if(Z.visible===!0&&re){for(U=0;U<re.min.length;U++)W=re.min[U],l(O,W.val,W.pad,{extrapad:W.extrapad});for(U=0;U<re.max.length;U++)W=re.max[U],_(I,W.val,W.pad,{extrapad:W.extrapad})}}}if(Q(F,P._traceIndices),Q(B.annotations||[],P._annIndices||[]),Q(B.shapes||[],P._shapeIndices||[]),P._matchGroup&&!L){for(var ue in P._matchGroup)if(ue!==P._id){var se=o(f,ue),he=v(f,se,!0),G=P._length/se._length;for(U=0;U<he.min.length;U++)W=he.min[U],l(O,W.val,W.pad*G,{extrapad:W.extrapad});for(U=0;U<he.max.length;U++)W=he.max[U],_(I,W.val,W.pad*G,{extrapad:W.extrapad})}}return{min:O,max:I}}function p(f,P,L){if(P.setScale(),P.autorange){P.range=L?L.slice():i(f,P),P._r=P.range.slice(),P._rl=A.simpleMap(P._r,P.r2l);var z=P._input,F={};F[P._attr+".range"]=P.range,F[P._attr+".autorange"]=P.autorange,e.call("_storeDirectGUIEdit",f.layout,f._fullLayout._preGUI,F),z.range=P.range.slice(),z.autorange=P.autorange}var B=P._anchorAxis;if(B&&B.rangeslider){var O=B.rangeslider[P._name];O&&O.rangemode==="auto"&&(O.range=i(f,P)),B._input.rangeslider[P._name]=A.extendFlat({},O)}}function T(f,P,L){L||(L={}),f._m||f.setScale();var z=[],F=[],B=P.length,O=L.padded||!1,I=L.tozero&&(f.type==="linear"||f.type==="-"),N=f.type==="log",U=!1,W=L.vpadLinearized||!1,Q,ue,se,he,G,$,J,Z,re;function ne(Ie){if(Array.isArray(Ie))return U=!0,function(at){return Math.max(Number(Ie[at]||0),0)};var Ze=Math.max(Number(Ie||0),0);return function(){return Ze}}var j=ne((f._m>0?L.ppadplus:L.ppadminus)||L.ppad||0),ee=ne((f._m>0?L.ppadminus:L.ppadplus)||L.ppad||0),ie=ne(L.vpadplus||L.vpad),fe=ne(L.vpadminus||L.vpad);if(!U){if(Z=1/0,re=-1/0,N)for(Q=0;Q<B;Q++)ue=P[Q],ue<Z&&ue>0&&(Z=ue),ue>re&&ue<M&&(re=ue);else for(Q=0;Q<B;Q++)ue=P[Q],ue<Z&&ue>-M&&(Z=ue),ue>re&&ue<M&&(re=ue);P=[Z,re],B=2}var be={tozero:I,extrapad:O};function Ae(Ie){se=P[Ie],x(se)&&($=j(Ie),J=ee(Ie),W?(he=f.c2l(se)-fe(Ie),G=f.c2l(se)+ie(Ie)):(Z=se-fe(Ie),re=se+ie(Ie),N&&Z<re/10&&(Z=re/10),he=f.c2l(Z),G=f.c2l(re)),I&&(he=Math.min(0,he),G=Math.max(0,G)),S(he)&&l(z,he,J,be),S(G)&&_(F,G,$,be))}var Be=Math.min(6,B);for(Q=0;Q<Be;Q++)Ae(Q);for(Q=B-1;Q>=Be;Q--)Ae(Q);return{min:z,max:F,opts:L}}function l(f,P,L,z){w(f,P,L,z,E)}function _(f,P,L,z){w(f,P,L,z,m)}function w(f,P,L,z,F){for(var B=z.tozero,O=z.extrapad,I=!0,N=0;N<f.length&&I;N++){var U=f[N];if(F(U.val,P)&&U.pad>=L&&(U.extrapad||!O)){I=!1;break}else F(P,U.val)&&U.pad<=L&&(O||!U.extrapad)&&(f.splice(N,1),N--)}if(I){var W=B&&P===0;f.push({val:P,pad:W?0:L,extrapad:W?!1:O})}}function S(f){return x(f)&&Math.abs(f)<M}function E(f,P){return f<=P}function m(f,P){return f>=P}function b(f,P){var L=P.autorangeoptions;return L&&L.minallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.minallowed:L&&L.clipmin!==void 0&&u(P,L.clipmin,L.clipmax)?Math.max(f,P.d2l(L.clipmin)):f}function d(f,P){var L=P.autorangeoptions;return L&&L.maxallowed!==void 0&&u(P,L.minallowed,L.maxallowed)?L.maxallowed:L&&L.clipmax!==void 0&&u(P,L.clipmin,L.clipmax)?Math.min(f,P.d2l(L.clipmax)):f}function u(f,P,L){return P!==void 0&&L!==void 0?(P=f.d2l(P),L=f.d2l(L),P<L):!0}function y(f,P){if(!P||!P.autorangeoptions)return f;var L=f[0],z=f[1],F=P.autorangeoptions.include;if(F!==void 0){var B=P.d2l(L),O=P.d2l(z);A.isArrayOrTypedArray(F)||(F=[F]);for(var I=0;I<F.length;I++){var N=P.d2l(F[I]);B>=N&&(B=N,L=N),O<=N&&(O=N,z=N)}}return L=b(L,P),z=d(z,P),[L,z]}}}),Co=Ye({"src/plots/cartesian/axes.js"(X,H){"use strict";var g=_n(),x=jo(),A=Gu(),M=Hn(),e=ta(),t=e.strTranslate,r=jl(),o=Xg(),a=Fn(),i=Bo(),n=Vh(),s=sS(),c=ks(),h=c.ONEMAXYEAR,v=c.ONEAVGYEAR,p=c.ONEMINYEAR,T=c.ONEMAXQUARTER,l=c.ONEAVGQUARTER,_=c.ONEMINQUARTER,w=c.ONEMAXMONTH,S=c.ONEAVGMONTH,E=c.ONEMINMONTH,m=c.ONEWEEK,b=c.ONEDAY,d=b/2,u=c.ONEHOUR,y=c.ONEMIN,f=c.ONESEC,P=c.ONEMILLI,L=c.ONEMICROSEC,z=c.MINUS_SIGN,F=c.BADNUM,B={K:"zeroline"},O={K:"gridline",L:"path"},I={K:"minor-gridline",L:"path"},N={K:"tick",L:"path"},U={K:"tick",L:"text"},W={width:["x","r","l","xl","xr"],height:["y","t","b","yt","yb"],right:["r","xr"],left:["l","xl"],top:["t","yt"],bottom:["b","yb"]},Q=oh(),ue=Q.MID_SHIFT,se=Q.CAP_SHIFT,he=Q.LINE_SPACING,G=Q.OPPOSITE_SIDE,$=3,J=H.exports={};J.setConvert=wv();var Z=r1(),re=Xc(),ne=re.idSort,j=re.isLinked;J.id2name=re.id2name,J.name2id=re.name2id,J.cleanId=re.cleanId,J.list=re.list,J.listIds=re.listIds,J.getFromId=re.getFromId,J.getFromTrace=re.getFromTrace;var ee=Yd();J.getAutoRange=ee.getAutoRange,J.findExtremes=ee.findExtremes;var ie=1e-4;function fe(mt){var gt=(mt[1]-mt[0])*ie;return[mt[0]-gt,mt[1]+gt]}J.coerceRef=function(mt,gt,Er,kr,br,Tr){var Mr=kr.charAt(kr.length-1),Fr=Er._fullLayout._subplots[Mr+"axis"],Lr=kr+"ref",Jr={};return br||(br=Fr[0]||(typeof Tr=="string"?Tr:Tr[0])),Tr||(Tr=br),Fr=Fr.concat(Fr.map(function(oa){return oa+" domain"})),Jr[Lr]={valType:"enumerated",values:Fr.concat(Tr?typeof Tr=="string"?[Tr]:Tr:[]),dflt:br},e.coerce(mt,gt,Jr,Lr)},J.getRefType=function(mt){return mt===void 0?mt:mt==="paper"?"paper":mt==="pixel"?"pixel":/( domain)$/.test(mt)?"domain":"range"},J.coercePosition=function(mt,gt,Er,kr,br,Tr){var Mr,Fr,Lr=J.getRefType(kr);if(Lr!=="range")Mr=e.ensureNumber,Fr=Er(br,Tr);else{var Jr=J.getFromId(gt,kr);Tr=Jr.fraction2r(Tr),Fr=Er(br,Tr),Mr=Jr.cleanPos}mt[br]=Mr(Fr)},J.cleanPosition=function(mt,gt,Er){var kr=Er==="paper"||Er==="pixel"?e.ensureNumber:J.getFromId(gt,Er).cleanPos;return kr(mt)},J.redrawComponents=function(mt,gt){gt=gt||J.listIds(mt);var Er=mt._fullLayout;function kr(br,Tr,Mr,Fr){for(var Lr=M.getComponentMethod(br,Tr),Jr={},oa=0;oa<gt.length;oa++)for(var ca=Er[J.id2name(gt[oa])],kt=ca[Mr],ir=0;ir<kt.length;ir++){var mr=kt[ir];if(!Jr[mr]&&(Lr(mt,mr),Jr[mr]=1,Fr))return}}kr("annotations","drawOne","_annIndices"),kr("shapes","drawOne","_shapeIndices"),kr("images","draw","_imgIndices",!0),kr("selections","drawOne","_selectionIndices")};var be=J.getDataConversions=function(mt,gt,Er,kr){var br,Tr=Er==="x"||Er==="y"||Er==="z"?Er:kr;if(e.isArrayOrTypedArray(Tr)){if(br={type:Z(kr,void 0,{autotypenumbers:mt._fullLayout.autotypenumbers}),_categories:[]},J.setConvert(br),br.type==="category")for(var Mr=0;Mr<kr.length;Mr++)br.d2c(kr[Mr])}else br=J.getFromTrace(mt,gt,Tr);return br?{d2c:br.d2c,c2d:br.c2d}:Tr==="ids"?{d2c:Be,c2d:Be}:{d2c:Ae,c2d:Ae}};function Ae(mt){return+mt}function Be(mt){return String(mt)}J.getDataToCoordFunc=function(mt,gt,Er,kr){return be(mt,gt,Er,kr).d2c},J.counterLetter=function(mt){var gt=mt.charAt(0);if(gt==="x")return"y";if(gt==="y")return"x"},J.minDtick=function(mt,gt,Er,kr){["log","category","multicategory"].indexOf(mt.type)!==-1||!kr?mt._minDtick=0:mt._minDtick===void 0?(mt._minDtick=gt,mt._forceTick0=Er):mt._minDtick&&((mt._minDtick/gt+1e-6)%1<2e-6&&((Er-mt._forceTick0)/gt%1+1.000001)%1<2e-6?(mt._minDtick=gt,mt._forceTick0=Er):((gt/mt._minDtick+1e-6)%1>2e-6||((Er-mt._forceTick0)/mt._minDtick%1+1.000001)%1>2e-6)&&(mt._minDtick=0))},J.saveRangeInitial=function(mt,gt){for(var Er=J.list(mt,"",!0),kr=!1,br=0;br<Er.length;br++){var Tr=Er[br],Mr=Tr._rangeInitial0===void 0&&Tr._rangeInitial1===void 0,Fr=Mr||Tr.range[0]!==Tr._rangeInitial0||Tr.range[1]!==Tr._rangeInitial1,Lr=Tr.autorange;(Mr&&Lr!==!0||gt&&Fr)&&(Tr._rangeInitial0=Lr==="min"||Lr==="max reversed"?void 0:Tr.range[0],Tr._rangeInitial1=Lr==="max"||Lr==="min reversed"?void 0:Tr.range[1],Tr._autorangeInitial=Lr,kr=!0)}return kr},J.saveShowSpikeInitial=function(mt,gt){for(var Er=J.list(mt,"",!0),kr=!1,br="on",Tr=0;Tr<Er.length;Tr++){var Mr=Er[Tr],Fr=Mr._showSpikeInitial===void 0,Lr=Fr||Mr.showspikes!==Mr._showspikes;(Fr||gt&&Lr)&&(Mr._showSpikeInitial=Mr.showspikes,kr=!0),br==="on"&&!Mr.showspikes&&(br="off")}return mt._fullLayout._cartesianSpikesEnabled=br,kr},J.autoBin=function(mt,gt,Er,kr,br,Tr){var Mr=e.aggNums(Math.min,null,mt),Fr=e.aggNums(Math.max,null,mt);if(gt.type==="category"||gt.type==="multicategory")return{start:Mr-.5,end:Fr+.5,size:Math.max(1,Math.round(Tr)||1),_dataSpan:Fr-Mr};br||(br=gt.calendar);var Lr;if(gt.type==="log"?Lr={type:"linear",range:[Mr,Fr]}:Lr={type:gt.type,range:e.simpleMap([Mr,Fr],gt.c2r,0,br),calendar:br},J.setConvert(Lr),Tr=Tr&&s.dtick(Tr,Lr.type),Tr)Lr.dtick=Tr,Lr.tick0=s.tick0(void 0,Lr.type,br);else{var Jr;if(Er)Jr=(Fr-Mr)/Er;else{var oa=e.distinctVals(mt),ca=Math.pow(10,Math.floor(Math.log(oa.minDiff)/Math.LN10)),kt=ca*e.roundUp(oa.minDiff/ca,[.9,1.9,4.9,9.9],!0);Jr=Math.max(kt,2*e.stdev(mt)/Math.pow(mt.length,kr?.25:.4)),x(Jr)||(Jr=1)}J.autoTicks(Lr,Jr)}var ir=Lr.dtick,mr=J.tickIncrement(J.tickFirst(Lr),ir,"reverse",br),$r,ma;if(typeof ir=="number")mr=Ie(mr,mt,Lr,Mr,Fr),ma=1+Math.floor((Fr-mr)/ir),$r=mr+ma*ir;else for(Lr.dtick.charAt(0)==="M"&&(mr=Ze(mr,mt,ir,Mr,br)),$r=mr,ma=0;$r<=Fr;)$r=J.tickIncrement($r,ir,!1,br),ma++;return{start:gt.c2r(mr,0,br),end:gt.c2r($r,0,br),size:ir,_dataSpan:Fr-Mr}};function Ie(mt,gt,Er,kr,br){var Tr=0,Mr=0,Fr=0,Lr=0;function Jr(ir){return(1+(ir-mt)*100/Er.dtick)%100<2}for(var oa=0;oa<gt.length;oa++)gt[oa]%1===0?Fr++:x(gt[oa])||Lr++,Jr(gt[oa])&&Tr++,Jr(gt[oa]+Er.dtick/2)&&Mr++;var ca=gt.length-Lr;if(Fr===ca&&Er.type!=="date")Er.dtick<1?mt=kr-.5*Er.dtick:(mt-=.5,mt+Er.dtick<kr&&(mt+=Er.dtick));else if(Mr<ca*.1&&(Tr>ca*.3||Jr(kr)||Jr(br))){var kt=Er.dtick/2;mt+=mt+kt<kr?kt:-kt}return mt}function Ze(mt,gt,Er,kr,br){var Tr=e.findExactDates(gt,br),Mr=.8;if(Tr.exactDays>Mr){var Fr=Number(Er.substr(1));Tr.exactYears>Mr&&Fr%12===0?mt=J.tickIncrement(mt,"M6","reverse")+b*1.5:Tr.exactMonths>Mr?mt=J.tickIncrement(mt,"M1","reverse")+b*15.5:mt-=d;var Lr=J.tickIncrement(mt,Er);if(Lr<=kr)return Lr}return mt}J.prepMinorTicks=function(mt,gt,Er){if(!gt.minor.dtick){delete mt.dtick;var kr=gt.dtick&&x(gt._tmin),br;if(kr){var Tr=J.tickIncrement(gt._tmin,gt.dtick,!0);br=[gt._tmin,Tr*.99+gt._tmin*.01]}else{var Mr=e.simpleMap(gt.range,gt.r2l);br=[Mr[0],.8*Mr[0]+.2*Mr[1]]}if(mt.range=e.simpleMap(br,gt.l2r),mt._isMinor=!0,J.prepTicks(mt,Er),kr){var Fr=x(gt.dtick),Lr=x(mt.dtick),Jr=Fr?gt.dtick:+gt.dtick.substring(1),oa=Lr?mt.dtick:+mt.dtick.substring(1);Fr&&Lr?at(Jr,oa)?Jr===2*m&&oa===2*b&&(mt.dtick=m):Jr===2*m&&oa===3*b?mt.dtick=m:Jr===m&&!(gt._input.minor||{}).nticks?mt.dtick=b:it(Jr/oa,2.5)?mt.dtick=Jr/2:mt.dtick=Jr:String(gt.dtick).charAt(0)==="M"?Lr?mt.dtick="M1":at(Jr,oa)?Jr>=12&&oa===2&&(mt.dtick="M3"):mt.dtick=gt.dtick:String(mt.dtick).charAt(0)==="L"?String(gt.dtick).charAt(0)==="L"?at(Jr,oa)||(mt.dtick=it(Jr/oa,2.5)?gt.dtick/2:gt.dtick):mt.dtick="D1":mt.dtick==="D2"&&+gt.dtick>1&&(mt.dtick=1)}mt.range=gt.range}gt.minor._tick0Init===void 0&&(mt.tick0=gt.tick0)};function at(mt,gt){return Math.abs((mt/gt+.5)%1-.5)<.001}function it(mt,gt){return Math.abs(mt/gt-1)<.001}J.prepTicks=function(mt,gt){var Er=e.simpleMap(mt.range,mt.r2l,void 0,void 0,gt);if(mt.tickmode==="auto"||!mt.dtick){var kr=mt.nticks,br;kr||(mt.type==="category"||mt.type==="multicategory"?(br=mt.tickfont?e.bigFont(mt.tickfont.size||12):15,kr=mt._length/br):(br=mt._id.charAt(0)==="y"?40:80,kr=e.constrain(mt._length/br,4,9)+1),mt._name==="radialaxis"&&(kr*=2)),mt.minor&&mt.minor.tickmode!=="array"||mt.tickmode==="array"&&(kr*=100),mt._roughDTick=Math.abs(Er[1]-Er[0])/kr,J.autoTicks(mt,mt._roughDTick),mt._minDtick>0&&mt.dtick<mt._minDtick*2&&(mt.dtick=mt._minDtick,mt.tick0=mt.l2r(mt._forceTick0))}mt.ticklabelmode==="period"&&lt(mt),mt.tick0||(mt.tick0=mt.type==="date"?"2000-01-01":0),mt.type==="date"&&mt.dtick<.1&&(mt.dtick=.1),ar(mt)};function et(mt){return+mt.substring(1)}function lt(mt){var gt;function Er(){return!(x(mt.dtick)||mt.dtick.charAt(0)!=="M")}var kr=Er(),br=J.getTickFormat(mt);if(br){var Tr=mt._dtickInit!==mt.dtick;/%[fLQsSMX]/.test(br)||(/%[HI]/.test(br)?(gt=u,Tr&&!kr&&mt.dtick<u&&(mt.dtick=u)):/%p/.test(br)?(gt=d,Tr&&!kr&&mt.dtick<d&&(mt.dtick=d)):/%[Aadejuwx]/.test(br)?(gt=b,Tr&&!kr&&mt.dtick<b&&(mt.dtick=b)):/%[UVW]/.test(br)?(gt=m,Tr&&!kr&&mt.dtick<m&&(mt.dtick=m)):/%[Bbm]/.test(br)?(gt=S,Tr&&(kr?et(mt.dtick)<1:mt.dtick<E)&&(mt.dtick="M1")):/%[q]/.test(br)?(gt=l,Tr&&(kr?et(mt.dtick)<3:mt.dtick<_)&&(mt.dtick="M3")):/%[Yy]/.test(br)&&(gt=v,Tr&&(kr?et(mt.dtick)<12:mt.dtick<p)&&(mt.dtick="M12")))}kr=Er(),kr&&mt.tick0===mt._dowTick0&&(mt.tick0=mt._rawTick0),mt._definedDelta=gt}function Me(mt,gt,Er){for(var kr=0;kr<mt.length;kr++){var br=mt[kr].value,Tr=kr,Mr=kr+1;kr<mt.length-1?(Tr=kr,Mr=kr+1):kr>0?(Tr=kr-1,Mr=kr):(Tr=kr,Mr=kr);var Fr=mt[Tr].value,Lr=mt[Mr].value,Jr=Math.abs(Lr-Fr),oa=Er||Jr,ca=0;oa>=p?Jr>=p&&Jr<=h?ca=Jr:ca=v:Er===l&&oa>=_?Jr>=_&&Jr<=T?ca=Jr:ca=l:oa>=E?Jr>=E&&Jr<=w?ca=Jr:ca=S:Er===m&&oa>=m?ca=m:oa>=b?ca=b:Er===d&&oa>=d?ca=d:Er===u&&oa>=u&&(ca=u);var kt;ca>=Jr&&(ca=Jr,kt=!0);var ir=br+ca;if(gt.rangebreaks&&ca>0){for(var mr=84,$r=0,ma=0;ma<mr;ma++){var Ba=(ma+.5)/mr;gt.maskBreaks(br*(1-Ba)+Ba*ir)!==F&&$r++}ca*=$r/mr,ca||(mt[kr].drop=!0),kt&&Jr>m&&(ca=Jr)}(ca>0||kr===0)&&(mt[kr].periodX=br+ca/2)}}J.calcTicks=function(gt,Er){for(var kr=gt.type,br=gt.calendar,Tr=gt.ticklabelstep,Mr=gt.ticklabelmode==="period",Fr=gt.range[0]>gt.range[1],Lr=!gt.ticklabelindex||e.isArrayOrTypedArray(gt.ticklabelindex)?gt.ticklabelindex:[gt.ticklabelindex],Jr=e.simpleMap(gt.range,gt.r2l,void 0,void 0,Er),oa=Jr[1]<Jr[0],ca=Math.min(Jr[0],Jr[1]),kt=Math.max(Jr[0],Jr[1]),ir=Math.max(1e3,gt._length||0),mr=[],$r=[],ma=[],Ba=[],Ca=[],da=gt.minor&&(gt.minor.ticks||gt.minor.showgrid),Sa=1;Sa>=(da?0:1);Sa--){var Ti=!Sa;Sa?(gt._dtickInit=gt.dtick,gt._tick0Init=gt.tick0):(gt.minor._dtickInit=gt.minor.dtick,gt.minor._tick0Init=gt.minor.tick0);var ai=Sa?gt:e.extendFlat({},gt,gt.minor);if(Ti?J.prepMinorTicks(ai,gt,Er):J.prepTicks(ai,Er),ai.tickmode==="array"){Sa?(ma=[],mr=ze(gt,!Ti)):(Ba=[],$r=ze(gt,!Ti));continue}if(ai.tickmode==="sync"){ma=[],mr=ce(gt);continue}var an=fe(Jr),sn=an[0],Mn=an[1],On=x(ai.dtick),$n=kr==="log"&&!(On||ai.dtick.charAt(0)==="L"),Cn=J.tickFirst(ai,Er);if(Sa){if(gt._tmin=Cn,Cn<sn!==oa)break;(kr==="category"||kr==="multicategory")&&(Mn=oa?Math.max(-.5,Mn):Math.min(gt._categories.length-.5,Mn))}var Lo=null,Xi=Cn,Jo;if(Sa){var zo;On?zo=gt.dtick:kr==="date"?typeof gt.dtick=="string"&&gt.dtick.charAt(0)==="M"&&(zo=S*gt.dtick.substring(1)):zo=gt._roughDTick,Jo=Math.round((gt.r2l(Xi)-gt.r2l(gt.tick0))/zo)-1}var as=ai.dtick;for(ai.rangebreaks&&ai._tick0Init!==ai.tick0&&(Xi=Xr(Xi,gt),oa||(Xi=J.tickIncrement(Xi,as,!oa,br))),Sa&&Mr&&(Xi=J.tickIncrement(Xi,as,!oa,br),Jo--);oa?Xi>=Mn:Xi<=Mn;Xi=J.tickIncrement(Xi,as,oa,br)){if(Sa&&Jo++,ai.rangebreaks&&!oa){if(Xi<sn)continue;if(ai.maskBreaks(Xi)===F&&Xr(Xi,ai)>=kt)break}if(ma.length>ir||Xi===Lo)break;Lo=Xi;var Pn={value:Xi};Sa?($n&&Xi!==(Xi|0)&&(Pn.simpleLabel=!0),Tr>1&&Jo%Tr&&(Pn.skipLabel=!0),ma.push(Pn)):(Pn.minor=!0,Ba.push(Pn))}}if(!Ba||Ba.length<2)Lr=!1;else{var go=(Ba[1].value-Ba[0].value)*(Fr?-1:1);$a(go,gt.tickformat)||(Lr=!1)}if(!Lr)Ca=ma;else{var In=ma.concat(Ba);Mr&&ma.length&&(In=In.slice(1)),In=In.sort(function(Yn,_s){return Yn.value-_s.value}).filter(function(Yn,_s,Yo){return _s===0||Yn.value!==Yo[_s-1].value});var Do=In.map(function(Yn,_s){return Yn.minor===void 0&&!Yn.skipLabel?_s:null}).filter(function(Yn){return Yn!==null});Do.forEach(function(Yn){Lr.map(function(_s){var Yo=Yn+_s;Yo>=0&&Yo<In.length&&e.pushUnique(Ca,In[Yo])})})}if(da){var Ho=gt.minor.ticks==="inside"&&gt.ticks==="outside"||gt.minor.ticks==="outside"&&gt.ticks==="inside";if(!Ho){for(var Qo=ma.map(function(Yn){return Yn.value}),Xn=[],po=0;po<Ba.length;po++){var ys=Ba[po],Is=ys.value;if(Qo.indexOf(Is)===-1){for(var Fs=!1,$o=0;!Fs&&$o<ma.length;$o++)1e7+ma[$o].value===1e7+Is&&(Fs=!0);Fs||Xn.push(ys)}}Ba=Xn}}Mr&&Me(Ca,gt,gt._definedDelta);var fi;if(gt.rangebreaks){var mn=gt._id.charAt(0)==="y",ol=1;gt.tickmode==="auto"&&(ol=gt.tickfont?gt.tickfont.size:12);var Os=NaN;for(fi=ma.length-1;fi>-1;fi--){if(ma[fi].drop){ma.splice(fi,1);continue}ma[fi].value=Xr(ma[fi].value,gt);var so=gt.c2p(ma[fi].value);(mn?Os>so-ol:Os<so+ol)?ma.splice(oa?fi+1:fi,1):Os=so}}pa(gt)&&Math.abs(Jr[1]-Jr[0])===360&&ma.pop(),gt._tmax=(ma[ma.length-1]||{}).value,gt._prevDateHead="",gt._inCalcTicks=!0;var Ns,fs=function(Yn){Yn.text="",gt._prevDateHead=Ns};ma=ma.concat(Ba);function al(Yn,_s){var Yo=J.tickText(Yn,_s.value,!1,_s.simpleLabel),Nn=_s.periodX;return Nn!==void 0&&(Yo.periodX=Nn,(Nn>kt||Nn<ca)&&(Nn>kt&&(Yo.periodX=kt),Nn<ca&&(Yo.periodX=ca),fs(Yo))),Yo}var vl;for(fi=0;fi<ma.length;fi++){var ji=ma[fi].minor,To=ma[fi].value;ji?(Lr&&Ca.indexOf(ma[fi])!==-1?vl=al(gt,ma[fi]):vl={x:To},vl.minor=!0,$r.push(vl)):(Ns=gt._prevDateHead,vl=al(gt,ma[fi]),(ma[fi].skipLabel||Lr&&Ca.indexOf(ma[fi])===-1)&&fs(vl),mr.push(vl))}return mr=mr.concat($r),gt._inCalcTicks=!1,Mr&&mr.length&&(mr[0].noTick=!0),mr};function ge(mt,gt){return mt.rangebreaks&&(gt=gt.filter(function(Er){return mt.maskBreaks(Er.x)!==F})),gt}function ce(mt){var gt=mt._mainAxis,Er=[];if(gt._vals){for(var kr=0;kr<gt._vals.length;kr++)if(!gt._vals[kr].noTick){var br=gt.l2p(gt._vals[kr].x),Tr=mt.p2l(br),Mr=J.tickText(mt,Tr);gt._vals[kr].minor&&(Mr.minor=!0,Mr.text=""),Er.push(Mr)}}return Er=ge(mt,Er),Er}function ze(mt,gt){var Er=e.simpleMap(mt.range,mt.r2l),kr=fe(Er),br=Math.min(kr[0],kr[1]),Tr=Math.max(kr[0],kr[1]),Mr=mt.type==="category"?mt.d2l_noadd:mt.d2l;mt.type==="log"&&String(mt.dtick).charAt(0)!=="L"&&(mt.dtick="L"+Math.pow(10,Math.floor(Math.min(mt.range[0],mt.range[1]))-1));for(var Fr=[],Lr=0;Lr<=1;Lr++)if(!(gt!==void 0&&(gt&&Lr||gt===!1&&!Lr))&&!(Lr&&!mt.minor)){var Jr=Lr?mt.minor.tickvals:mt.tickvals,oa=Lr?[]:mt.ticktext;if(Jr){e.isArrayOrTypedArray(oa)||(oa=[]);for(var ca=0;ca<Jr.length;ca++){var kt=Mr(Jr[ca]);if(kt>br&&kt<Tr){var ir=J.tickText(mt,kt,!1,String(oa[ca]));Lr&&(ir.minor=!0,ir.text=""),Fr.push(ir)}}}}return Fr=ge(mt,Fr),Fr}var tt=[2,5,10],nt=[1,2,3,6,12],Qe=[1,2,5,10,15,30],Ct=[1,2,3,7,14],St=[-.046,0,.301,.477,.602,.699,.778,.845,.903,.954,1],Ot=[-.301,0,.301,.699,1],jt=[15,30,45,90,180];function ur(mt,gt,Er){return gt*e.roundUp(mt/gt,Er)}J.autoTicks=function(mt,gt,Er){var kr;function br(ca){return Math.pow(ca,Math.floor(Math.log(gt)/Math.LN10))}if(mt.type==="date"){mt.tick0=e.dateTick0(mt.calendar,0);var Tr=2*gt;if(Tr>v)gt/=v,kr=br(10),mt.dtick="M"+12*ur(gt,kr,tt);else if(Tr>S)gt/=S,mt.dtick="M"+ur(gt,1,nt);else if(Tr>b){if(mt.dtick=ur(gt,b,mt._hasDayOfWeekBreaks?[1,2,7,14]:Ct),!Er){var Mr=J.getTickFormat(mt),Fr=mt.ticklabelmode==="period";Fr&&(mt._rawTick0=mt.tick0),/%[uVW]/.test(Mr)?mt.tick0=e.dateTick0(mt.calendar,2):mt.tick0=e.dateTick0(mt.calendar,1),Fr&&(mt._dowTick0=mt.tick0)}}else Tr>u?mt.dtick=ur(gt,u,nt):Tr>y?mt.dtick=ur(gt,y,Qe):Tr>f?mt.dtick=ur(gt,f,Qe):(kr=br(10),mt.dtick=ur(gt,kr,tt))}else if(mt.type==="log"){mt.tick0=0;var Lr=e.simpleMap(mt.range,mt.r2l);if(mt._isMinor&&(gt*=1.5),gt>.7)mt.dtick=Math.ceil(gt);else if(Math.abs(Lr[1]-Lr[0])<1){var Jr=1.5*Math.abs((Lr[1]-Lr[0])/gt);gt=Math.abs(Math.pow(10,Lr[1])-Math.pow(10,Lr[0]))/Jr,kr=br(10),mt.dtick="L"+ur(gt,kr,tt)}else mt.dtick=gt>.3?"D2":"D1"}else mt.type==="category"||mt.type==="multicategory"?(mt.tick0=0,mt.dtick=Math.ceil(Math.max(gt,1))):pa(mt)?(mt.tick0=0,kr=1,mt.dtick=ur(gt,kr,jt)):(mt.tick0=0,kr=br(10),mt.dtick=ur(gt,kr,tt));if(mt.dtick===0&&(mt.dtick=1),!x(mt.dtick)&&typeof mt.dtick!="string"){var oa=mt.dtick;throw mt.dtick=1,"ax.dtick error: "+String(oa)}};function ar(mt){var gt=mt.dtick;if(mt._tickexponent=0,!x(gt)&&typeof gt!="string"&&(gt=1),(mt.type==="category"||mt.type==="multicategory")&&(mt._tickround=null),mt.type==="date"){var Er=mt.r2l(mt.tick0),kr=mt.l2r(Er).replace(/(^-|i)/g,""),br=kr.length;if(String(gt).charAt(0)==="M")br>10||kr.substr(5)!=="01-01"?mt._tickround="d":mt._tickround=+gt.substr(1)%12===0?"y":"m";else if(gt>=b&&br<=10||gt>=b*15)mt._tickround="d";else if(gt>=y&&br<=16||gt>=u)mt._tickround="M";else if(gt>=f&&br<=19||gt>=y)mt._tickround="S";else{var Tr=mt.l2r(Er+gt).replace(/^-/,"").length;mt._tickround=Math.max(br,Tr)-20,mt._tickround<0&&(mt._tickround=4)}}else if(x(gt)||gt.charAt(0)==="L"){var Mr=mt.range.map(mt.r2d||Number);x(gt)||(gt=Number(gt.substr(1))),mt._tickround=2-Math.floor(Math.log(gt)/Math.LN10+.01);var Fr=Math.max(Math.abs(Mr[0]),Math.abs(Mr[1])),Lr=Math.floor(Math.log(Fr)/Math.LN10+.01),Jr=mt.minexponent===void 0?3:mt.minexponent;Math.abs(Lr)>Jr&&(ke(mt.exponentformat)&&!Te(Lr)?mt._tickexponent=3*Math.round((Lr-1)/3):mt._tickexponent=Lr)}else mt._tickround=null}J.tickIncrement=function(mt,gt,Er,kr){var br=Er?-1:1;if(x(gt))return e.increment(mt,br*gt);var Tr=gt.charAt(0),Mr=br*Number(gt.substr(1));if(Tr==="M")return e.incrementMonth(mt,Mr,kr);if(Tr==="L")return Math.log(Math.pow(10,mt)+Mr)/Math.LN10;if(Tr==="D"){var Fr=gt==="D2"?Ot:St,Lr=mt+br*.01,Jr=e.roundUp(e.mod(Lr,1),Fr,Er);return Math.floor(Lr)+Math.log(g.round(Math.pow(10,Jr),1))/Math.LN10}throw"unrecognized dtick "+String(gt)},J.tickFirst=function(mt,gt){var Er=mt.r2l||Number,kr=e.simpleMap(mt.range,Er,void 0,void 0,gt),br=kr[1]<kr[0],Tr=br?Math.floor:Math.ceil,Mr=fe(kr)[0],Fr=mt.dtick,Lr=Er(mt.tick0);if(x(Fr)){var Jr=Tr((Mr-Lr)/Fr)*Fr+Lr;return(mt.type==="category"||mt.type==="multicategory")&&(Jr=e.constrain(Jr,0,mt._categories.length-1)),Jr}var oa=Fr.charAt(0),ca=Number(Fr.substr(1));if(oa==="M"){for(var kt=0,ir=Lr,mr,$r,ma;kt<10;){if(mr=J.tickIncrement(ir,Fr,br,mt.calendar),(mr-Mr)*(ir-Mr)<=0)return br?Math.min(ir,mr):Math.max(ir,mr);$r=(Mr-(ir+mr)/2)/(mr-ir),ma=oa+(Math.abs(Math.round($r))||1)*ca,ir=J.tickIncrement(ir,ma,$r<0?!br:br,mt.calendar),kt++}return e.error("tickFirst did not converge",mt),ir}else{if(oa==="L")return Math.log(Tr((Math.pow(10,Mr)-Lr)/ca)*ca+Lr)/Math.LN10;if(oa==="D"){var Ba=Fr==="D2"?Ot:St,Ca=e.roundUp(e.mod(Mr,1),Ba,br);return Math.floor(Mr)+Math.log(g.round(Math.pow(10,Ca),1))/Math.LN10}else throw"unrecognized dtick "+String(Fr)}},J.tickText=function(mt,gt,Er,kr){var br=Cr(mt,gt),Tr=mt.tickmode==="array",Mr=Er||Tr,Fr=mt.type,Lr=Fr==="category"?mt.d2l_noadd:mt.d2l,Jr,oa=function(ma){var Ba=mt.l2p(ma);return Ba>=0&&Ba<=mt._length?ma:null};if(Tr&&e.isArrayOrTypedArray(mt.ticktext)){var ca=e.simpleMap(mt.range,mt.r2l),kt=(Math.abs(ca[1]-ca[0])-(mt._lBreaks||0))/1e4;for(Jr=0;Jr<mt.ticktext.length&&!(Math.abs(gt-Lr(mt.tickvals[Jr]))<kt);Jr++);if(Jr<mt.ticktext.length)return br.text=String(mt.ticktext[Jr]),br.xbnd=[oa(br.x-.5),oa(br.x+mt.dtick-.5)],br}function ir(ma){if(ma===void 0)return!0;if(Er)return ma==="none";var Ba={first:mt._tmin,last:mt._tmax}[ma];return ma!=="all"&&gt!==Ba}var mr=Er?"never":mt.exponentformat!=="none"&&ir(mt.showexponent)?"hide":"";if(Fr==="date"?vr(mt,br,Er,Mr):Fr==="log"?_r(mt,br,Er,Mr,mr):Fr==="category"?yt(mt,br):Fr==="multicategory"?Fe(mt,br,Er):pa(mt)?Ne(mt,br,Er,Mr,mr):Ke(mt,br,Er,Mr,mr),kr||(mt.tickprefix&&!ir(mt.showtickprefix)&&(br.text=mt.tickprefix+br.text),mt.ticksuffix&&!ir(mt.showticksuffix)&&(br.text+=mt.ticksuffix)),mt.labelalias&&mt.labelalias.hasOwnProperty(br.text)){var $r=mt.labelalias[br.text];typeof $r=="string"&&(br.text=$r)}return(mt.tickson==="boundaries"||mt.showdividers)&&(br.xbnd=[oa(br.x-.5),oa(br.x+mt.dtick-.5)]),br},J.hoverLabelText=function(mt,gt,Er){Er&&(mt=e.extendFlat({},mt,{hoverformat:Er}));var kr=e.isArrayOrTypedArray(gt)?gt[0]:gt,br=e.isArrayOrTypedArray(gt)?gt[1]:void 0;if(br!==void 0&&br!==kr)return J.hoverLabelText(mt,kr,Er)+" - "+J.hoverLabelText(mt,br,Er);var Tr=mt.type==="log"&&kr<=0,Mr=J.tickText(mt,mt.c2l(Tr?-kr:kr),"hover").text;return Tr?kr===0?"0":z+Mr:Mr};function Cr(mt,gt,Er){var kr=mt.tickfont||{};return{x:gt,dx:0,dy:0,text:Er||"",fontSize:kr.size,font:kr.family,fontWeight:kr.weight,fontStyle:kr.style,fontVariant:kr.variant,fontTextcase:kr.textcase,fontLineposition:kr.lineposition,fontShadow:kr.shadow,fontColor:kr.color}}function vr(mt,gt,Er,kr){var br=mt._tickround,Tr=Er&&mt.hoverformat||J.getTickFormat(mt);kr=!Tr&&kr,kr&&(x(br)?br=4:br={y:"m",m:"d",d:"M",M:"S",S:4}[br]);var Mr=e.formatDate(gt.x,Tr,br,mt._dateFormat,mt.calendar,mt._extraFormat),Fr,Lr=Mr.indexOf(`
+`);if(Lr!==-1&&(Fr=Mr.substr(Lr+1),Mr=Mr.substr(0,Lr)),kr&&(Fr!==void 0&&(Mr==="00:00:00"||Mr==="00:00")?(Mr=Fr,Fr=""):Mr.length===8&&(Mr=Mr.replace(/:00$/,""))),Fr)if(Er)br==="d"?Mr+=", "+Fr:Mr=Fr+(Mr?", "+Mr:"");else if(!mt._inCalcTicks||mt._prevDateHead!==Fr)mt._prevDateHead=Fr,Mr+="<br>"+Fr;else{var Jr=Ea(mt),oa=mt._trueSide||mt.side;(!Jr&&oa==="top"||Jr&&oa==="bottom")&&(Mr+="<br> ")}gt.text=Mr}function _r(mt,gt,Er,kr,br){var Tr=mt.dtick,Mr=gt.x,Fr=mt.tickformat,Lr=typeof Tr=="string"&&Tr.charAt(0);if(br==="never"&&(br=""),kr&&Lr!=="L"&&(Tr="L3",Lr="L"),Fr||Lr==="L")gt.text=Le(Math.pow(10,Mr),mt,br,kr);else if(x(Tr)||Lr==="D"&&e.mod(Mr+.01,1)<.1){var Jr=Math.round(Mr),oa=Math.abs(Jr),ca=mt.exponentformat;ca==="power"||ke(ca)&&Te(Jr)?(Jr===0?gt.text=1:Jr===1?gt.text="10":gt.text="10<sup>"+(Jr>1?"":z)+oa+"</sup>",gt.fontSize*=1.25):(ca==="e"||ca==="E")&&oa>2?gt.text="1"+ca+(Jr>0?"+":z)+oa:(gt.text=Le(Math.pow(10,Mr),mt,"","fakehover"),Tr==="D1"&&mt._id.charAt(0)==="y"&&(gt.dy-=gt.fontSize/6))}else if(Lr==="D")gt.text=String(Math.round(Math.pow(10,e.mod(Mr,1)))),gt.fontSize*=.75;else throw"unrecognized dtick "+String(Tr);if(mt.dtick==="D1"){var kt=String(gt.text).charAt(0);(kt==="0"||kt==="1")&&(mt._id.charAt(0)==="y"?gt.dx-=gt.fontSize/4:(gt.dy+=gt.fontSize/2,gt.dx+=(mt.range[1]>mt.range[0]?1:-1)*gt.fontSize*(Mr<0?.5:.25)))}}function yt(mt,gt){var Er=mt._categories[Math.round(gt.x)];Er===void 0&&(Er=""),gt.text=String(Er)}function Fe(mt,gt,Er){var kr=Math.round(gt.x),br=mt._categories[kr]||[],Tr=br[1]===void 0?"":String(br[1]),Mr=br[0]===void 0?"":String(br[0]);Er?gt.text=Mr+" - "+Tr:(gt.text=Tr,gt.text2=Mr)}function Ke(mt,gt,Er,kr,br){br==="never"?br="":mt.showexponent==="all"&&Math.abs(gt.x/mt.dtick)<1e-6&&(br="hide"),gt.text=Le(gt.x,mt,br,kr)}function Ne(mt,gt,Er,kr,br){if(mt.thetaunit==="radians"&&!Er){var Tr=gt.x/180;if(Tr===0)gt.text="0";else{var Mr=Ee(Tr);if(Mr[1]>=100)gt.text=Le(e.deg2rad(gt.x),mt,br,kr);else{var Fr=gt.x<0;Mr[1]===1?Mr[0]===1?gt.text="\u03C0":gt.text=Mr[0]+"\u03C0":gt.text=["<sup>",Mr[0],"</sup>","\u2044","<sub>",Mr[1],"</sub>","\u03C0"].join(""),Fr&&(gt.text=z+gt.text)}}}else gt.text=Le(gt.x,mt,br,kr)}function Ee(mt){function gt(Fr,Lr){return Math.abs(Fr-Lr)<=1e-6}function Er(Fr,Lr){return gt(Lr,0)?Fr:Er(Lr,Fr%Lr)}function kr(Fr){for(var Lr=1;!gt(Math.round(Fr*Lr)/Lr,Fr);)Lr*=10;return Lr}var br=kr(mt),Tr=mt*br,Mr=Math.abs(Er(Tr,br));return[Math.round(Tr/Mr),Math.round(br/Mr)]}var Ve=["f","p","n","\u03BC","m","","k","M","G","T"];function ke(mt){return mt==="SI"||mt==="B"}function Te(mt){return mt>14||mt<-15}function Le(mt,gt,Er,kr){var br=mt<0,Tr=gt._tickround,Mr=Er||gt.exponentformat||"B",Fr=gt._tickexponent,Lr=J.getTickFormat(gt),Jr=gt.separatethousands;if(kr){var oa={exponentformat:Mr,minexponent:gt.minexponent,dtick:gt.showexponent==="none"?gt.dtick:x(mt)&&Math.abs(mt)||1,range:gt.showexponent==="none"?gt.range.map(gt.r2d):[0,mt||1]};ar(oa),Tr=(Number(oa._tickround)||0)+4,Fr=oa._tickexponent,gt.hoverformat&&(Lr=gt.hoverformat)}if(Lr)return gt._numFormat(Lr)(mt).replace(/-/g,z);var ca=Math.pow(10,-Tr)/2;if(Mr==="none"&&(Fr=0),mt=Math.abs(mt),mt<ca)mt="0",br=!1;else{if(mt+=ca,Fr&&(mt*=Math.pow(10,-Fr),Tr+=Fr),Tr===0)mt=String(Math.floor(mt));else if(Tr<0){mt=String(Math.round(mt)),mt=mt.substr(0,mt.length+Tr);for(var kt=Tr;kt<0;kt++)mt+="0"}else{mt=String(mt);var ir=mt.indexOf(".")+1;ir&&(mt=mt.substr(0,ir+Tr).replace(/\.?0+$/,""))}mt=e.numSeparate(mt,gt._separators,Jr)}if(Fr&&Mr!=="hide"){ke(Mr)&&Te(Fr)&&(Mr="power");var mr;Fr<0?mr=z+-Fr:Mr!=="power"?mr="+"+Fr:mr=String(Fr),Mr==="e"||Mr==="E"?mt+=Mr+mr:Mr==="power"?mt+="\xD710<sup>"+mr+"</sup>":Mr==="B"&&Fr===9?mt+="B":ke(Mr)&&(mt+=Ve[Fr/3+5])}return br?z+mt:mt}J.getTickFormat=function(mt){var gt;function Er(Lr){return typeof Lr!="string"?Lr:Number(Lr.replace("M",""))*S}function kr(Lr,Jr){var oa=["L","D"];if(typeof Lr==typeof Jr){if(typeof Lr=="number")return Lr-Jr;var ca=oa.indexOf(Lr.charAt(0)),kt=oa.indexOf(Jr.charAt(0));return ca===kt?Number(Lr.replace(/(L|D)/g,""))-Number(Jr.replace(/(L|D)/g,"")):ca-kt}else return typeof Lr=="number"?1:-1}function br(Lr,Jr,oa){var ca=oa||function(mr){return mr},kt=Jr[0],ir=Jr[1];return(!kt&&typeof kt!="number"||ca(kt)<=ca(Lr))&&(!ir&&typeof ir!="number"||ca(ir)>=ca(Lr))}function Tr(Lr,Jr){var oa=Jr[0]===null,ca=Jr[1]===null,kt=kr(Lr,Jr[0])>=0,ir=kr(Lr,Jr[1])<=0;return(oa||kt)&&(ca||ir)}var Mr,Fr;if(mt.tickformatstops&&mt.tickformatstops.length>0)switch(mt.type){case"date":case"linear":{for(gt=0;gt<mt.tickformatstops.length;gt++)if(Fr=mt.tickformatstops[gt],Fr.enabled&&br(mt.dtick,Fr.dtickrange,Er)){Mr=Fr;break}break}case"log":{for(gt=0;gt<mt.tickformatstops.length;gt++)if(Fr=mt.tickformatstops[gt],Fr.enabled&&Tr(mt.dtick,Fr.dtickrange)){Mr=Fr;break}break}default:}return Mr?Mr.value:mt.tickformat},J.getSubplots=function(mt,gt){var Er=mt._fullLayout._subplots,kr=Er.cartesian.concat(Er.gl2d||[]),br=gt?J.findSubplotsWithAxis(kr,gt):kr;return br.sort(function(Tr,Mr){var Fr=Tr.substr(1).split("y"),Lr=Mr.substr(1).split("y");return Fr[0]===Lr[0]?+Fr[1]-+Lr[1]:+Fr[0]-+Lr[0]}),br},J.findSubplotsWithAxis=function(mt,gt){for(var Er=new RegExp(gt._id.charAt(0)==="x"?"^"+gt._id+"y":gt._id+"$"),kr=[],br=0;br<mt.length;br++){var Tr=mt[br];Er.test(Tr)&&kr.push(Tr)}return kr},J.makeClipPaths=function(mt){var gt=mt._fullLayout;if(!gt._hasOnlyLargeSploms){var Er={_offset:0,_length:gt.width,_id:""},kr={_offset:0,_length:gt.height,_id:""},br=J.list(mt,"x",!0),Tr=J.list(mt,"y",!0),Mr=[],Fr,Lr;for(Fr=0;Fr<br.length;Fr++)for(Mr.push({x:br[Fr],y:kr}),Lr=0;Lr<Tr.length;Lr++)Fr===0&&Mr.push({x:Er,y:Tr[Lr]}),Mr.push({x:br[Fr],y:Tr[Lr]});var Jr=gt._clips.selectAll(".axesclip").data(Mr,function(oa){return oa.x._id+oa.y._id});Jr.enter().append("clipPath").classed("axesclip",!0).attr("id",function(oa){return"clip"+gt._uid+oa.x._id+oa.y._id}).append("rect"),Jr.exit().remove(),Jr.each(function(oa){g.select(this).select("rect").attr({x:oa.x._offset||0,y:oa.y._offset||0,width:oa.x._length||1,height:oa.y._length||1})})}},J.draw=function(mt,gt,Er){var kr=mt._fullLayout;gt==="redraw"&&kr._paper.selectAll("g.subplot").each(function(Lr){var Jr=Lr[0],oa=kr._plots[Jr];if(oa){var ca=oa.xaxis,kt=oa.yaxis;oa.xaxislayer.selectAll("."+ca._id+"tick").remove(),oa.yaxislayer.selectAll("."+kt._id+"tick").remove(),oa.xaxislayer.selectAll("."+ca._id+"tick2").remove(),oa.yaxislayer.selectAll("."+kt._id+"tick2").remove(),oa.xaxislayer.selectAll("."+ca._id+"divider").remove(),oa.yaxislayer.selectAll("."+kt._id+"divider").remove(),oa.minorGridlayer&&oa.minorGridlayer.selectAll("path").remove(),oa.gridlayer&&oa.gridlayer.selectAll("path").remove(),oa.zerolinelayer&&oa.zerolinelayer.selectAll("path").remove(),kr._infolayer.select(".g-"+ca._id+"title").remove(),kr._infolayer.select(".g-"+kt._id+"title").remove()}});var br=!gt||gt==="redraw"?J.listIds(mt):gt,Tr=J.list(mt),Mr=Tr.filter(function(Lr){return Lr.autoshift}).map(function(Lr){return Lr.overlaying});br.map(function(Lr){var Jr=J.getFromId(mt,Lr);if(Jr.tickmode==="sync"&&Jr.overlaying){var oa=br.findIndex(function(ca){return ca===Jr.overlaying});oa>=0&&br.unshift(br.splice(oa,1).shift())}});var Fr={false:{left:0,right:0}};return e.syncOrAsync(br.map(function(Lr){return function(){if(Lr){var Jr=J.getFromId(mt,Lr);Er||(Er={}),Er.axShifts=Fr,Er.overlayingShiftedAx=Mr;var oa=J.drawOne(mt,Jr,Er);return Jr._shiftPusher&&qa(Jr,Jr._fullDepth||0,Fr,!0),Jr._r=Jr.range.slice(),Jr._rl=e.simpleMap(Jr._r,Jr.r2l),oa}}}))},J.drawOne=function(mt,gt,Er){Er=Er||{};var kr=Er.axShifts||{},br=Er.overlayingShiftedAx||[],Tr,Mr,Fr;gt.setScale();var Lr=mt._fullLayout,Jr=gt._id,oa=Jr.charAt(0),ca=J.counterLetter(Jr),kt=Lr._plots[gt._mainSubplot];if(!kt)return;if(gt._shiftPusher=gt.autoshift||br.indexOf(gt._id)!==-1||br.indexOf(gt.overlaying)!==-1,gt._shiftPusher&gt.anchor==="free"){var ir=gt.linewidth/2||0;gt.ticks==="inside"&&(ir+=gt.ticklen),qa(gt,ir,kr,!0),qa(gt,gt.shift||0,kr,!1)}(Er.skipTitle!==!0||gt._shift===void 0)&&(gt._shift=ya(gt,kr));var mr=kt[oa+"axislayer"],$r=gt._mainLinePosition,ma=$r+=gt._shift,Ba=gt._mainMirrorPosition,Ca=gt._vals=J.calcTicks(gt),da=[gt.mirror,ma,Ba].join("_");for(Tr=0;Tr<Ca.length;Tr++)Ca[Tr].axInfo=da;gt._selections={},gt._tickAngles&&(gt._prevTickAngles=gt._tickAngles),gt._tickAngles={},gt._depth=null;var Sa={};function Ti(ji){var To=Jr+(ji||"tick");return Sa[To]||(Sa[To]=Bt(gt,To,ma)),Sa[To]}if(gt.visible){var ai=J.makeTransTickFn(gt),an=J.makeTransTickLabelFn(gt),sn,Mn,On=gt.ticks==="inside",$n=gt.ticks==="outside";if(gt.tickson==="boundaries"){var Cn=dt(gt,Ca);Mn=J.clipEnds(gt,Cn),sn=On?Mn:Cn}else Mn=J.clipEnds(gt,Ca),sn=On&&gt.ticklabelmode!=="period"?Mn:Ca;var Lo=gt._gridVals=Mn,Xi=It(gt,Ca);if(!Lr._hasOnlyLargeSploms){var Jo=gt._subplotsWith,zo={};for(Tr=0;Tr<Jo.length;Tr++){Mr=Jo[Tr],Fr=Lr._plots[Mr];var as=Fr[ca+"axis"],Pn=as._mainAxis._id;if(!zo[Pn]){zo[Pn]=1;var go=oa==="x"?"M0,"+as._offset+"v"+as._length:"M"+as._offset+",0h"+as._length;J.drawGrid(mt,gt,{vals:Lo,counterAxis:as,layer:Fr.gridlayer.select("."+Jr),minorLayer:Fr.minorGridlayer.select("."+Jr),path:go,transFn:ai}),J.drawZeroLine(mt,gt,{counterAxis:as,layer:Fr.zerolinelayer,path:go,transFn:ai})}}}var In,Do=J.getTickSigns(gt),Ho=J.getTickSigns(gt,"minor");if(gt.ticks||gt.minor&&gt.minor.ticks){var Qo=J.makeTickPath(gt,ma,Do[2]),Xn=J.makeTickPath(gt,ma,Ho[2],{minor:!0}),po,ys,Is,Fs;if(gt._anchorAxis&&gt.mirror&&gt.mirror!==!0?(po=J.makeTickPath(gt,Ba,Do[3]),ys=J.makeTickPath(gt,Ba,Ho[3],{minor:!0}),Is=Qo+po,Fs=Xn+ys):(po="",ys="",Is=Qo,Fs=Xn),gt.showdividers&&$n&&gt.tickson==="boundaries"){var $o={};for(Tr=0;Tr<Xi.length;Tr++)$o[Xi[Tr].x]=1;In=function(ji){return $o[ji.x]?po:Is}}else In=function(ji){return ji.minor?Fs:Is}}if(J.drawTicks(mt,gt,{vals:sn,layer:mr,path:In,transFn:ai}),gt.mirror==="allticks"){var fi=Object.keys(gt._linepositions||{});for(Tr=0;Tr<fi.length;Tr++){Mr=fi[Tr],Fr=Lr._plots[Mr];var mn=gt._linepositions[Mr]||[],ol=mn[0],Os=mn[1],so=mn[2],Ns=J.makeTickPath(gt,ol,so?Do[0]:Ho[0],{minor:so})+J.makeTickPath(gt,Os,so?Do[1]:Ho[1],{minor:so});J.drawTicks(mt,gt,{vals:sn,layer:Fr[oa+"axislayer"],path:Ns,transFn:ai})}}var fs=[];if(fs.push(function(){return J.drawLabels(mt,gt,{vals:Ca,layer:mr,plotinfo:Fr,transFn:an,labelFns:J.makeLabelFns(gt,ma)})}),gt.type==="multicategory"){var al={x:2,y:10}[oa];fs.push(function(){var ji={x:"height",y:"width"}[oa],To=Ti()[ji]+al+(gt._tickAngles[Jr+"tick"]?gt.tickfont.size*he:0);return J.drawLabels(mt,gt,{vals:xt(gt,Ca),layer:mr,cls:Jr+"tick2",repositionOnUpdate:!0,secondary:!0,transFn:ai,labelFns:J.makeLabelFns(gt,ma+To*Do[4])})}),fs.push(function(){return gt._depth=Do[4]*(Ti("tick2")[gt.side]-ma),sa(mt,gt,{vals:Xi,layer:mr,path:J.makeTickPath(gt,ma,Do[4],{len:gt._depth}),transFn:ai})})}else gt.title.hasOwnProperty("standoff")&&fs.push(function(){gt._depth=Do[4]*(Ti()[gt.side]-ma)});var vl=M.getComponentMethod("rangeslider","isVisible")(gt);return!Er.skipTitle&&!(vl&&gt.side==="bottom")&&fs.push(function(){return La(mt,gt)}),fs.push(function(){var ji=gt.side.charAt(0),To=G[gt.side].charAt(0),Yn=J.getPxPosition(mt,gt),_s=$n?gt.ticklen:0,Yo,Nn,Wl,Zu;(gt.automargin||vl||gt._shiftPusher)&&(gt.type==="multicategory"?Yo=Ti("tick2"):(Yo=Ti(),oa==="x"&&ji==="b"&&(gt._depth=Math.max(Yo.width>0?Yo.bottom-Yn:0,_s))));var ml=0,Bu=0;if(gt._shiftPusher&&(ml=Math.max(_s,Yo.height>0?ji==="l"?Yn-Yo.left:Yo.right-Yn:0),gt.title.text!==Lr._dfltTitle[oa]&&(Bu=(gt._titleStandoff||0)+(gt._titleScoot||0),ji==="l"&&(Bu+=Aa(gt))),gt._fullDepth=Math.max(ml,Bu)),gt.automargin){Nn={x:0,y:0,r:0,l:0,t:0,b:0};var El=[0,1],qs=typeof gt._shift=="number"?gt._shift:0;if(oa==="x"){if(ji==="b"?Nn[ji]=gt._depth:(Nn[ji]=gt._depth=Math.max(Yo.width>0?Yn-Yo.top:0,_s),El.reverse()),Yo.width>0){var Jl=Yo.right-(gt._offset+gt._length);Jl>0&&(Nn.xr=1,Nn.r=Jl);var Nu=gt._offset-Yo.left;Nu>0&&(Nn.xl=0,Nn.l=Nu)}}else if(ji==="l"?(gt._depth=Math.max(Yo.height>0?Yn-Yo.left:0,_s),Nn[ji]=gt._depth-qs):(gt._depth=Math.max(Yo.height>0?Yo.right-Yn:0,_s),Nn[ji]=gt._depth+qs,El.reverse()),Yo.height>0){var Ic=Yo.bottom-(gt._offset+gt._length);Ic>0&&(Nn.yb=0,Nn.b=Ic);var Xu=gt._offset-Yo.top;Xu>0&&(Nn.yt=1,Nn.t=Xu)}Nn[ca]=gt.anchor==="free"?gt.position:gt._anchorAxis.domain[El[0]],gt.title.text!==Lr._dfltTitle[oa]&&(Nn[ji]+=Aa(gt)+(gt.title.standoff||0)),gt.mirror&&gt.anchor!=="free"&&(Wl={x:0,y:0,r:0,l:0,t:0,b:0},Wl[To]=gt.linewidth,gt.mirror&&gt.mirror!==!0&&(Wl[To]+=_s),gt.mirror===!0||gt.mirror==="ticks"?Wl[ca]=gt._anchorAxis.domain[El[1]]:(gt.mirror==="all"||gt.mirror==="allticks")&&(Wl[ca]=[gt._counterDomainMin,gt._counterDomainMax][El[1]]))}vl&&(Zu=M.getComponentMethod("rangeslider","autoMarginOpts")(mt,gt)),typeof gt.automargin=="string"&&(rt(Nn,gt.automargin),rt(Wl,gt.automargin)),A.autoMargin(mt,ni(gt),Nn),A.autoMargin(mt,Wt(gt),Wl),A.autoMargin(mt,zt(gt),Zu)}),e.syncOrAsync(fs)}};function rt(mt,gt){if(mt){var Er=Object.keys(W).reduce(function(kr,br){return gt.indexOf(br)!==-1&&W[br].forEach(function(Tr){kr[Tr]=1}),kr},{});Object.keys(mt).forEach(function(kr){Er[kr]||(kr.length===1?mt[kr]=0:delete mt[kr])})}}function dt(mt,gt){var Er=[],kr,br=function(Tr,Mr){var Fr=Tr.xbnd[Mr];Fr!==null&&Er.push(e.extendFlat({},Tr,{x:Fr}))};if(gt.length){for(kr=0;kr<gt.length;kr++)br(gt[kr],0);br(gt[kr-1],1)}return Er}function xt(mt,gt){for(var Er=[],kr={},br=0;br<gt.length;br++){var Tr=gt[br];kr[Tr.text2]?kr[Tr.text2].push(Tr.x):kr[Tr.text2]=[Tr.x]}for(var Mr in kr)Er.push(Cr(mt,e.interp(kr[Mr],.5),Mr));return Er}function It(mt,gt){var Er=[],kr,br,Tr=gt.length&&gt[gt.length-1].x<gt[0].x,Mr=function(Lr,Jr){var oa=Lr.xbnd[Jr];oa!==null&&Er.push(e.extendFlat({},Lr,{x:oa}))};if(mt.showdividers&&gt.length){for(kr=0;kr<gt.length;kr++){var Fr=gt[kr];Fr.text2!==br&&Mr(Fr,Tr?1:0),br=Fr.text2}Mr(gt[kr-1],Tr?0:1)}return Er}function Bt(mt,gt,Er){var kr,br,Tr,Mr;if(mt._selections[gt].size())kr=1/0,br=-1/0,Tr=1/0,Mr=-1/0,mt._selections[gt].each(function(){var Lr=Ua(this),Jr=i.bBox(Lr.node().parentNode);kr=Math.min(kr,Jr.top),br=Math.max(br,Jr.bottom),Tr=Math.min(Tr,Jr.left),Mr=Math.max(Mr,Jr.right)});else{var Fr=J.makeLabelFns(mt,Er);kr=br=Fr.yFn({dx:0,dy:0,fontSize:0}),Tr=Mr=Fr.xFn({dx:0,dy:0,fontSize:0})}return{top:kr,bottom:br,left:Tr,right:Mr,height:br-kr,width:Mr-Tr}}J.getTickSigns=function(mt,gt){var Er=mt._id.charAt(0),kr={x:"top",y:"right"}[Er],br=mt.side===kr?1:-1,Tr=[-1,1,br,-br],Mr=gt?(mt.minor||{}).ticks:mt.ticks;return Mr!=="inside"==(Er==="x")&&(Tr=Tr.map(function(Fr){return-Fr})),mt.side&&Tr.push({l:-1,t:-1,r:1,b:1}[mt.side.charAt(0)]),Tr},J.makeTransTickFn=function(mt){return mt._id.charAt(0)==="x"?function(gt){return t(mt._offset+mt.l2p(gt.x),0)}:function(gt){return t(0,mt._offset+mt.l2p(gt.x))}},J.makeTransTickLabelFn=function(mt){var gt=Kt(mt),Er=mt.ticklabelshift||0,kr=mt.ticklabelstandoff||0,br=gt[0],Tr=gt[1],Mr=mt.range[0]>mt.range[1],Fr=mt.ticklabelposition&&mt.ticklabelposition.indexOf("inside")!==-1,Lr=!Fr;if(Er){var Jr=Mr?-1:1;Er=Er*Jr}if(kr){var oa=mt.side,ca=Fr&&(oa==="top"||oa==="left")||Lr&&(oa==="bottom"||oa==="right")?1:-1;kr=kr*ca}return mt._id.charAt(0)==="x"?function(kt){return t(br+mt._offset+mt.l2p(Gt(kt))+Er,Tr+kr)}:function(kt){return t(Tr+kr,br+mt._offset+mt.l2p(Gt(kt))+Er)}};function Gt(mt){return mt.periodX!==void 0?mt.periodX:mt.x}function Kt(mt){var gt=mt.ticklabelposition||"",Er=function(ir){return gt.indexOf(ir)!==-1},kr=Er("top"),br=Er("left"),Tr=Er("right"),Mr=Er("bottom"),Fr=Er("inside"),Lr=Mr||br||kr||Tr;if(!Lr&&!Fr)return[0,0];var Jr=mt.side,oa=Lr?(mt.tickwidth||0)/2:0,ca=$,kt=mt.tickfont?mt.tickfont.size:12;return(Mr||kr)&&(oa+=kt*se,ca+=(mt.linewidth||0)/2),(br||Tr)&&(oa+=(mt.linewidth||0)/2,ca+=$),Fr&&Jr==="top"&&(ca-=kt*(1-se)),(br||kr)&&(oa=-oa),(Jr==="bottom"||Jr==="right")&&(ca=-ca),[Lr?oa:0,Fr?ca:0]}J.makeTickPath=function(mt,gt,Er,kr){kr||(kr={});var br=kr.minor;if(br&&!mt.minor)return"";var Tr=kr.len!==void 0?kr.len:br?mt.minor.ticklen:mt.ticklen,Mr=mt._id.charAt(0),Fr=(mt.linewidth||1)/2;return Mr==="x"?"M0,"+(gt+Fr*Er)+"v"+Tr*Er:"M"+(gt+Fr*Er)+",0h"+Tr*Er},J.makeLabelFns=function(mt,gt,Er){var kr=mt.ticklabelposition||"",br=function(Cn){return kr.indexOf(Cn)!==-1},Tr=br("top"),Mr=br("left"),Fr=br("right"),Lr=br("bottom"),Jr=Lr||Mr||Tr||Fr,oa=br("inside"),ca=kr==="inside"&&mt.ticks==="inside"||!oa&&mt.ticks==="outside"&&mt.tickson!=="boundaries",kt=0,ir=0,mr=ca?mt.ticklen:0;if(oa?mr*=-1:Jr&&(mr=0),ca&&(kt+=mr,Er)){var $r=e.deg2rad(Er);kt=mr*Math.cos($r)+1,ir=mr*Math.sin($r)}mt.showticklabels&&(ca||mt.showline)&&(kt+=.2*mt.tickfont.size),kt+=(mt.linewidth||1)/2*(oa?-1:1);var ma={labelStandoff:kt,labelShift:ir},Ba,Ca,da,Sa,Ti=0,ai=mt.side,an=mt._id.charAt(0),sn=mt.tickangle,Mn;if(an==="x")Mn=!oa&&ai==="bottom"||oa&&ai==="top",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=ir*Sa,Ca=gt+kt*Sa,da=Mn?1:-.2,Math.abs(sn)===90&&(oa?da+=ue:sn===-90&&ai==="bottom"?da=se:sn===90&&ai==="top"?da=ue:da=.5,Ti=ue/2*(sn/90)),ma.xFn=function(Cn){return Cn.dx+Ba+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*da},ma.anchorFn=function(Cn,Lo){if(Jr){if(Mr)return"end";if(Fr)return"start"}return!x(Lo)||Lo===0||Lo===180?"middle":Lo*Sa<0!==oa?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return Lo<-60||Lo>60?-.5*Xi:mt.side==="top"!==oa?-Xi:0};else if(an==="y"){if(Mn=!oa&&ai==="left"||oa&&ai==="right",Sa=Mn?1:-1,oa&&(Sa*=-1),Ba=kt,Ca=ir*Sa,da=0,!oa&&Math.abs(sn)===90&&(sn===-90&&ai==="left"||sn===90&&ai==="right"?da=se:da=.5),oa){var On=x(sn)?+sn:0;if(On!==0){var $n=e.deg2rad(On);Ti=Math.abs(Math.sin($n))*se*Sa,da=0}}ma.xFn=function(Cn){return Cn.dx+gt-(Ba+Cn.fontSize*da)*Sa+Ti*Cn.fontSize},ma.yFn=function(Cn){return Cn.dy+Ca+Cn.fontSize*ue},ma.anchorFn=function(Cn,Lo){return x(Lo)&&Math.abs(Lo)===90?"middle":Mn?"end":"start"},ma.heightFn=function(Cn,Lo,Xi){return mt.side==="right"&&(Lo*=-1),Lo<-30?-Xi:Lo<30?-.5*Xi:0}}return ma};function sr(mt){return[mt.text,mt.x,mt.axInfo,mt.font,mt.fontSize,mt.fontColor].join("_")}J.drawTicks=function(mt,gt,Er){Er=Er||{};var kr=gt._id+"tick",br=[].concat(gt.minor&&gt.minor.ticks?Er.vals.filter(function(Mr){return Mr.minor&&!Mr.noTick}):[]).concat(gt.ticks?Er.vals.filter(function(Mr){return!Mr.minor&&!Mr.noTick}):[]),Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("ticks",1).classed("crisp",Er.crisp!==!1).each(function(Mr){return a.stroke(g.select(this),Mr.minor?gt.minor.tickcolor:gt.tickcolor)}).style("stroke-width",function(Mr){return i.crispRound(mt,Mr.minor?gt.minor.tickwidth:gt.tickwidth,1)+"px"}).attr("d",Er.path).style("display",null),Fa(gt,[N]),Tr.attr("transform",Er.transFn)},J.drawGrid=function(mt,gt,Er){if(Er=Er||{},gt.tickmode!=="sync"){var kr=gt._id+"grid",br=gt.minor&&gt.minor.showgrid,Tr=br?Er.vals.filter(function(Ba){return Ba.minor}):[],Mr=gt.showgrid?Er.vals.filter(function(Ba){return!Ba.minor}):[],Fr=Er.counterAxis;if(Fr&&J.shouldShowZeroLine(mt,gt,Fr))for(var Lr=gt.tickmode==="array",Jr=0;Jr<Mr.length;Jr++){var oa=Mr[Jr].x;if(Lr?!oa:Math.abs(oa)<gt.dtick/100)if(Mr=Mr.slice(0,Jr).concat(Mr.slice(Jr+1)),Lr)Jr--;else break}gt._gw=i.crispRound(mt,gt.gridwidth,1);for(var ca=br?i.crispRound(mt,gt.minor.gridwidth,1):0,kt=Er.layer,ir=Er.minorLayer,mr=1;mr>=0;mr--){var $r=mr?kt:ir;if($r){var ma=$r.selectAll("path."+kr).data(mr?Mr:Tr,sr);ma.exit().remove(),ma.enter().append("path").classed(kr,1).classed("crisp",Er.crisp!==!1),ma.attr("transform",Er.transFn).attr("d",Er.path).each(function(Ba){return a.stroke(g.select(this),Ba.minor?gt.minor.gridcolor:gt.gridcolor||"#ddd")}).style("stroke-dasharray",function(Ba){return i.dashStyle(Ba.minor?gt.minor.griddash:gt.griddash,Ba.minor?gt.minor.gridwidth:gt.gridwidth)}).style("stroke-width",function(Ba){return(Ba.minor?ca:gt._gw)+"px"}).style("display",null),typeof Er.path=="function"&&ma.attr("d",Er.path)}}Fa(gt,[O,I])}},J.drawZeroLine=function(mt,gt,Er){Er=Er||Er;var kr=gt._id+"zl",br=J.shouldShowZeroLine(mt,gt,Er.counterAxis),Tr=Er.layer.selectAll("path."+kr).data(br?[{x:0,id:gt._id}]:[]);Tr.exit().remove(),Tr.enter().append("path").classed(kr,1).classed("zl",1).classed("crisp",Er.crisp!==!1).each(function(){Er.layer.selectAll("path").sort(function(Mr,Fr){return ne(Mr.id,Fr.id)})}),Tr.attr("transform",Er.transFn).attr("d",Er.path).call(a.stroke,gt.zerolinecolor||a.defaultLine).style("stroke-width",i.crispRound(mt,gt.zerolinewidth,gt._gw||1)+"px").style("display",null),Fa(gt,[B])},J.drawLabels=function(mt,gt,Er){Er=Er||{};var kr=mt._fullLayout,br=gt._id,Tr=Er.cls||br+"tick",Mr=Er.vals.filter(function(Pn){return Pn.text}),Fr=Er.labelFns,Lr=Er.secondary?0:gt.tickangle,Jr=(gt._prevTickAngles||{})[Tr],oa=Er.layer.selectAll("g."+Tr).data(gt.showticklabels?Mr:[],sr),ca=[];oa.enter().append("g").classed(Tr,1).append("text").attr("text-anchor","middle").each(function(Pn){var go=g.select(this),In=mt._promises.length;go.call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn)).call(i.font,{family:Pn.font,size:Pn.fontSize,color:Pn.fontColor,weight:Pn.fontWeight,style:Pn.fontStyle,variant:Pn.fontVariant,textcase:Pn.fontTextcase,lineposition:Pn.fontLineposition,shadow:Pn.fontShadow}).text(Pn.text).call(r.convertToTspans,mt),mt._promises[In]?ca.push(mt._promises.pop().then(function(){kt(go,Lr)})):kt(go,Lr)}),Fa(gt,[U]),oa.exit().remove(),Er.repositionOnUpdate&&oa.each(function(Pn){g.select(this).select("text").call(r.positionText,Fr.xFn(Pn),Fr.yFn(Pn))});function kt(Pn,go){Pn.each(function(In){var Do=g.select(this),Ho=Do.select(".text-math-group"),Qo=Fr.anchorFn(In,go),Xn=Er.transFn.call(Do.node(),In)+(x(go)&&+go!=0?" rotate("+go+","+Fr.xFn(In)+","+(Fr.yFn(In)-In.fontSize/2)+")":""),po=r.lineCount(Do),ys=he*In.fontSize,Is=Fr.heightFn(In,x(go)?+go:0,(po-1)*ys);if(Is&&(Xn+=t(0,Is)),Ho.empty()){var Fs=Do.select("text");Fs.attr({transform:Xn,"text-anchor":Qo}),Fs.style("opacity",1),gt._adjustTickLabelsOverflow&&gt._adjustTickLabelsOverflow()}else{var $o=i.bBox(Ho.node()).width,fi=$o*{end:-.5,start:.5}[Qo];Ho.attr("transform",Xn+t(fi,0))}})}gt._adjustTickLabelsOverflow=function(){var Pn=gt.ticklabeloverflow;if(!(!Pn||Pn==="allow")){var go=Pn.indexOf("hide")!==-1,In=gt._id.charAt(0)==="x",Do=0,Ho=In?mt._fullLayout.width:mt._fullLayout.height;if(Pn.indexOf("domain")!==-1){var Qo=e.simpleMap(gt.range,gt.r2l);Do=gt.l2p(Qo[0])+gt._offset,Ho=gt.l2p(Qo[1])+gt._offset}var Xn=Math.min(Do,Ho),po=Math.max(Do,Ho),ys=gt.side,Is=1/0,Fs=-1/0;oa.each(function(ol){var Os=g.select(this),so=Os.select(".text-math-group");if(so.empty()){var Ns=i.bBox(Os.node()),fs=0;In?(Ns.right>po||Ns.left<Xn)&&(fs=1):(Ns.bottom>po||Ns.top+(gt.tickangle?0:ol.fontSize/4)<Xn)&&(fs=1);var al=Os.select("text");fs?go&&al.style("opacity",0):(al.style("opacity",1),ys==="bottom"||ys==="right"?Is=Math.min(Is,In?Ns.top:Ns.left):Is=-1/0,ys==="top"||ys==="left"?Fs=Math.max(Fs,In?Ns.bottom:Ns.right):Fs=1/0)}});for(var $o in kr._plots){var fi=kr._plots[$o];if(!(gt._id!==fi.xaxis._id&&gt._id!==fi.yaxis._id)){var mn=In?fi.yaxis:fi.xaxis;mn&&(mn["_visibleLabelMin_"+gt._id]=Is,mn["_visibleLabelMax_"+gt._id]=Fs)}}}},gt._hideCounterAxisInsideTickLabels=function(Pn){var go=gt._id.charAt(0)==="x",In=[];for(var Do in kr._plots){var Ho=kr._plots[Do];gt._id!==Ho.xaxis._id&&gt._id!==Ho.yaxis._id||In.push(go?Ho.yaxis:Ho.xaxis)}In.forEach(function(Qo,Xn){Qo&&Ea(Qo)&&(Pn||[B,I,O,N,U]).forEach(function(po){var ys=po.K==="tick"&&po.L==="text"&&gt.ticklabelmode==="period",Is=kr._plots[gt._mainSubplot],Fs;po.K===B.K?Fs=Is.zerolinelayer.selectAll("."+gt._id+"zl"):po.K===I.K?Fs=Is.minorGridlayer.selectAll("."+gt._id):po.K===O.K?Fs=Is.gridlayer.selectAll("."+gt._id):Fs=Is[gt._id.charAt(0)+"axislayer"],Fs.each(function(){var $o=g.select(this);po.L&&($o=$o.selectAll(po.L)),$o.each(function(fi){var mn=gt.l2p(ys?Gt(fi):fi.x)+gt._offset,ol=g.select(this);mn<gt["_visibleLabelMax_"+Qo._id]&&mn>gt["_visibleLabelMin_"+Qo._id]?ol.style("display","none"):po.K==="tick"&&!Xn&&ol.style("display",null)})})})})},kt(oa,Jr+1?Jr:Lr);function ir(){return ca.length&&Promise.all(ca)}var mr=null;function $r(){if(kt(oa,Lr),Mr.length&&gt.autotickangles&&(gt.type!=="log"||String(gt.dtick).charAt(0)!=="D")){mr=gt.autotickangles[0];var Pn=0,go=[],In,Do=1;oa.each(function(Yo){Pn=Math.max(Pn,Yo.fontSize);var Nn=gt.l2p(Yo.x),Wl=Ua(this),Zu=i.bBox(Wl.node());Do=Math.max(Do,r.lineCount(Wl)),go.push({top:0,bottom:10,height:10,left:Nn-Zu.width/2,right:Nn+Zu.width/2+2,width:Zu.width+2})});var Ho=(gt.tickson==="boundaries"||gt.showdividers)&&!Er.secondary,Qo=Mr.length,Xn=Math.abs((Mr[Qo-1].x-Mr[0].x)*gt._m)/(Qo-1),po=Ho?Xn/2:Xn,ys=Ho?gt.ticklen:Pn*1.25*Do,Is=Math.sqrt(Math.pow(po,2)+Math.pow(ys,2)),Fs=po/Is,$o=gt.autotickangles.map(function(Yo){return Yo*Math.PI/180}),fi=$o.find(function(Yo){return Math.abs(Math.cos(Yo))<=Fs});fi===void 0&&(fi=$o.reduce(function(Yo,Nn){return Math.abs(Math.cos(Yo))<Math.abs(Math.cos(Nn))?Yo:Nn},$o[0]));var mn=fi*(180/Math.PI);if(Ho){var ol=2;for(gt.ticks&&(ol+=gt.tickwidth/2),In=0;In<go.length;In++){var Os=Mr[In].xbnd,so=go[In];if(Os[0]!==null&&so.left-gt.l2p(Os[0])<ol||Os[1]!==null&&gt.l2p(Os[1])-so.right<ol){mr=mn;break}}}else{var Ns=gt.ticklabelposition||"",fs=function(Yo){return Ns.indexOf(Yo)!==-1},al=fs("top"),vl=fs("left"),ji=fs("right"),To=fs("bottom"),Yn=To||vl||al||ji,_s=Yn?(gt.tickwidth||0)+2*$:0;for(In=0;In<go.length-1;In++)if(e.bBoxIntersect(go[In],go[In+1],_s)){mr=mn;break}}mr&&kt(oa,mr)}}gt._selections&&(gt._selections[Tr]=oa);var ma=[ir];gt.automargin&&kr._redrawFromAutoMarginCount&&Jr===90?(mr=Jr,ma.push(function(){kt(oa,Jr)})):ma.push($r),gt._tickAngles&&ma.push(function(){gt._tickAngles[Tr]=mr===null?x(Lr)?Lr:0:mr});var Ba=function(){var Pn=0,go=0;return oa.each(function(In,Do){var Ho=Ua(this),Qo=Ho.select(".text-math-group");if(Qo.empty()){var Xn;gt._vals[Do]&&(Xn=gt._vals[Do].bb||i.bBox(Ho.node()),gt._vals[Do].bb=Xn),Pn=Math.max(Pn,Xn.width),go=Math.max(go,Xn.height)}}),{labelsMaxW:Pn,labelsMaxH:go}},Ca=gt._anchorAxis;if(Ca&&(Ca.autorange||Ca.insiderange)&&Ea(gt)&&!j(kr,gt._id)&&(kr._insideTickLabelsUpdaterange||(kr._insideTickLabelsUpdaterange={}),Ca.autorange&&(kr._insideTickLabelsUpdaterange[Ca._name+".autorange"]=Ca.autorange,ma.push(Ba)),Ca.insiderange)){var da=Ba(),Sa=gt._id.charAt(0)==="y"?da.labelsMaxW:da.labelsMaxH;Sa+=2*$,gt.ticklabelposition==="inside"&&(Sa+=gt.ticklen||0);var Ti=gt.side==="right"||gt.side==="top"?1:-1,ai=Ti===1?1:0,an=Ti===1?0:1,sn=[];sn[an]=Ca.range[an];var Mn=Ca.range,On=Ca.r2p(Mn[ai]),$n=Ca.r2p(Mn[an]),Cn=kr._insideTickLabelsUpdaterange[Ca._name+".range"];if(Cn){var Lo=Ca.r2p(Cn[ai]),Xi=Ca.r2p(Cn[an]),Jo=Ti*(gt._id.charAt(0)==="y"?1:-1);Jo*On<Jo*Lo&&(On=Lo,sn[ai]=Mn[ai]=Cn[ai]),Jo*$n>Jo*Xi&&($n=Xi,sn[an]=Mn[an]=Cn[an])}var zo=Math.abs($n-On);zo-Sa>0?(zo-=Sa,Sa*=1+Sa/zo):Sa=0,gt._id.charAt(0)!=="y"&&(Sa=-Sa),sn[ai]=Ca.p2r(Ca.r2p(Mn[ai])+Ti*Sa),Ca.autorange==="min"||Ca.autorange==="max reversed"?(sn[0]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0):(Ca.autorange==="max"||Ca.autorange==="min reversed")&&(sn[1]=null,Ca._rangeInitial0=void 0,Ca._rangeInitial1=void 0),kr._insideTickLabelsUpdaterange[Ca._name+".range"]=sn}var as=e.syncOrAsync(ma);return as&&as.then&&mt._promises.push(as),as};function sa(mt,gt,Er){var kr=gt._id+"divider",br=Er.vals,Tr=Er.layer.selectAll("path."+kr).data(br,sr);Tr.exit().remove(),Tr.enter().insert("path",":first-child").classed(kr,1).classed("crisp",1).call(a.stroke,gt.dividercolor).style("stroke-width",i.crispRound(mt,gt.dividerwidth,1)+"px"),Tr.attr("transform",Er.transFn).attr("d",Er.path)}J.getPxPosition=function(mt,gt){var Er=mt._fullLayout._size,kr=gt._id.charAt(0),br=gt.side,Tr;if(gt.anchor!=="free"?Tr=gt._anchorAxis:kr==="x"?Tr={_offset:Er.t+(1-(gt.position||0))*Er.h,_length:0}:kr==="y"&&(Tr={_offset:Er.l+(gt.position||0)*Er.w+gt._shift,_length:0}),br==="top"||br==="left")return Tr._offset;if(br==="bottom"||br==="right")return Tr._offset+Tr._length};function Aa(mt){var gt=mt.title.font.size,Er=(mt.title.text.match(r.BR_TAG_ALL)||[]).length;return mt.title.hasOwnProperty("standoff")?gt*(se+Er*he):Er?gt*(Er+1)*he:gt}function La(mt,gt){var Er=mt._fullLayout,kr=gt._id,br=kr.charAt(0),Tr=gt.title.font.size,Mr,Fr=(gt.title.text.match(r.BR_TAG_ALL)||[]).length;if(gt.title.hasOwnProperty("standoff"))gt.side==="bottom"||gt.side==="right"?Mr=gt._depth+gt.title.standoff+Tr*se:(gt.side==="top"||gt.side==="left")&&(Mr=gt._depth+gt.title.standoff+Tr*(ue+Fr*he));else{var Lr=Ea(gt);if(gt.type==="multicategory")Mr=gt._depth;else{var Jr=1.5*Tr;Lr&&(Jr=.5*Tr,gt.ticks==="outside"&&(Jr+=gt.ticklen)),Mr=10+Jr+(gt.linewidth?gt.linewidth-1:0)}Lr||(br==="x"?Mr+=gt.side==="top"?Tr*(gt.showticklabels?1:0):Tr*(gt.showticklabels?1.5:.5):Mr+=gt.side==="right"?Tr*(gt.showticklabels?1:.5):Tr*(gt.showticklabels?.5:0))}var oa=J.getPxPosition(mt,gt),ca,kt,ir;br==="x"?(kt=gt._offset+gt._length/2,ir=gt.side==="top"?oa-Mr:oa+Mr):(ir=gt._offset+gt._length/2,kt=gt.side==="right"?oa+Mr:oa-Mr,ca={rotate:"-90",offset:0});var mr;if(gt.type!=="multicategory"){var $r=gt._selections[gt._id+"tick"];if(mr={selection:$r,side:gt.side},$r&&$r.node()&&$r.node().parentNode){var ma=i.getTranslate($r.node().parentNode);mr.offsetLeft=ma.x,mr.offsetTop=ma.y}gt.title.hasOwnProperty("standoff")&&(mr.pad=0)}return gt._titleStandoff=Mr,o.draw(mt,kr+"title",{propContainer:gt,propName:gt._name+".title.text",placeholder:Er._dfltTitle[br],avoid:mr,transform:ca,attributes:{x:kt,y:ir,"text-anchor":"middle"}})}J.shouldShowZeroLine=function(mt,gt,Er){var kr=e.simpleMap(gt.range,gt.r2l);return kr[0]*kr[1]<=0&&gt.zeroline&&(gt.type==="linear"||gt.type==="-")&&!(gt.rangebreaks&&gt.maskBreaks(0)===F)&&(ka(gt,0)||!Ga(mt,gt,Er,kr)||Ma(mt,gt))},J.clipEnds=function(mt,gt){return gt.filter(function(Er){return ka(mt,Er.x)})};function ka(mt,gt){var Er=mt.l2p(gt);return Er>1&&Er<mt._length-1}function Ga(mt,gt,Er,kr){var br=Er._mainAxis;if(!br)return;var Tr=mt._fullLayout,Mr=gt._id.charAt(0),Fr=J.counterLetter(gt._id),Lr=gt._offset+(Math.abs(kr[0])<Math.abs(kr[1])==(Mr==="x")?0:gt._length);function Jr(mr){if(!mr.showline||!mr.linewidth)return!1;var $r=Math.max((mr.linewidth+gt.zerolinewidth)/2,1);function ma(da){return typeof da=="number"&&Math.abs(da-Lr)<$r}if(ma(mr._mainLinePosition)||ma(mr._mainMirrorPosition))return!0;var Ba=mr._linepositions||{};for(var Ca in Ba)if(ma(Ba[Ca][0])||ma(Ba[Ca][1]))return!0}var oa=Tr._plots[Er._mainSubplot];if(!(oa.mainplotinfo||oa).overlays.length)return Jr(Er,Lr);for(var ca=J.list(mt,Fr),kt=0;kt<ca.length;kt++){var ir=ca[kt];if(ir._mainAxis===br&&Jr(ir,Lr))return!0}}function Ma(mt,gt){for(var Er=mt._fullData,kr=gt._mainSubplot,br=gt._id.charAt(0),Tr=0;Tr<Er.length;Tr++){var Mr=Er[Tr];if(Mr.visible===!0&&Mr.xaxis+Mr.yaxis===kr&&(M.traceIs(Mr,"bar-like")&&Mr.orientation==={x:"h",y:"v"}[br]||Mr.fill&&Mr.fill.charAt(Mr.fill.length-1)===br))return!0}return!1}function Ua(mt){var gt=g.select(mt),Er=gt.select(".text-math-group");return Er.empty()?gt.select("text"):Er}J.allowAutoMargin=function(mt){for(var gt=J.list(mt,"",!0),Er=0;Er<gt.length;Er++){var kr=gt[Er];kr.automargin&&(A.allowAutoMargin(mt,ni(kr)),kr.mirror&&A.allowAutoMargin(mt,Wt(kr))),M.getComponentMethod("rangeslider","isVisible")(kr)&&A.allowAutoMargin(mt,zt(kr))}};function ni(mt){return mt._id+".automargin"}function Wt(mt){return ni(mt)+".mirror"}function zt(mt){return mt._id+".rangeslider"}J.swap=function(mt,gt){for(var Er=Vt(mt,gt),kr=0;kr<Er.length;kr++)xr(mt,Er[kr].x,Er[kr].y)};function Vt(mt,gt){var Er=[],kr,br;for(kr=0;kr<gt.length;kr++){var Tr=[],Mr=mt._fullData[gt[kr]].xaxis,Fr=mt._fullData[gt[kr]].yaxis;if(!(!Mr||!Fr)){for(br=0;br<Er.length;br++)(Er[br].x.indexOf(Mr)!==-1||Er[br].y.indexOf(Fr)!==-1)&&Tr.push(br);if(!Tr.length){Er.push({x:[Mr],y:[Fr]});continue}var Lr=Er[Tr[0]],Jr;if(Tr.length>1)for(br=1;br<Tr.length;br++)Jr=Er[Tr[br]],Ut(Lr.x,Jr.x),Ut(Lr.y,Jr.y);Ut(Lr.x,[Mr]),Ut(Lr.y,[Fr])}}return Er}function Ut(mt,gt){for(var Er=0;Er<gt.length;Er++)mt.indexOf(gt[Er])===-1&&mt.push(gt[Er])}function xr(mt,gt,Er){var kr=[],br=[],Tr=mt.layout,Mr,Fr;for(Mr=0;Mr<gt.length;Mr++)kr.push(J.getFromId(mt,gt[Mr]));for(Mr=0;Mr<Er.length;Mr++)br.push(J.getFromId(mt,Er[Mr]));var Lr=Object.keys(n),Jr=["anchor","domain","overlaying","position","side","tickangle","editType"],oa=["linear","log"];for(Mr=0;Mr<Lr.length;Mr++){var ca=Lr[Mr],kt=kr[0][ca],ir=br[0][ca],mr=!0,$r=!1,ma=!1;if(!(ca.charAt(0)==="_"||typeof kt=="function"||Jr.indexOf(ca)!==-1)){for(Fr=1;Fr<kr.length&&mr;Fr++){var Ba=kr[Fr][ca];ca==="type"&&oa.indexOf(kt)!==-1&&oa.indexOf(Ba)!==-1&&kt!==Ba?$r=!0:Ba!==kt&&(mr=!1)}for(Fr=1;Fr<br.length&&mr;Fr++){var Ca=br[Fr][ca];ca==="type"&&oa.indexOf(ir)!==-1&&oa.indexOf(Ca)!==-1&&ir!==Ca?ma=!0:br[Fr][ca]!==ir&&(mr=!1)}mr&&($r&&(Tr[kr[0]._name].type="linear"),ma&&(Tr[br[0]._name].type="linear"),Zr(Tr,ca,kr,br,mt._fullLayout._dfltTitle))}}for(Mr=0;Mr<mt._fullLayout.annotations.length;Mr++){var da=mt._fullLayout.annotations[Mr];gt.indexOf(da.xref)!==-1&&Er.indexOf(da.yref)!==-1&&e.swapAttrs(Tr.annotations[Mr],["?"])}}function Zr(mt,gt,Er,kr,br){var Tr=e.nestedProperty,Mr=Tr(mt[Er[0]._name],gt).get(),Fr=Tr(mt[kr[0]._name],gt).get(),Lr;for(gt==="title"&&(Mr&&Mr.text===br.x&&(Mr.text=br.y),Fr&&Fr.text===br.y&&(Fr.text=br.x)),Lr=0;Lr<Er.length;Lr++)Tr(mt,Er[Lr]._name+"."+gt).set(Fr);for(Lr=0;Lr<kr.length;Lr++)Tr(mt,kr[Lr]._name+"."+gt).set(Mr)}function pa(mt){return mt._id==="angularaxis"}function Xr(mt,gt){for(var Er=gt._rangebreaks.length,kr=0;kr<Er;kr++){var br=gt._rangebreaks[kr];if(mt>=br.min&&mt<br.max)return br.max}return mt}function Ea(mt){return(mt.ticklabelposition||"").indexOf("inside")!==-1}function Fa(mt,gt){Ea(mt._anchorAxis||{})&&mt._hideCounterAxisInsideTickLabels&&mt._hideCounterAxisInsideTickLabels(gt)}function qa(mt,gt,Er,kr){var br=mt.anchor!=="free"&&(mt.overlaying===void 0||mt.overlaying===!1)?mt._id:mt.overlaying,Tr;kr?Tr=mt.side==="right"?gt:-gt:Tr=gt,br in Er||(Er[br]={}),mt.side in Er[br]||(Er[br][mt.side]=0),Er[br][mt.side]+=Tr}function ya(mt,gt){return mt.autoshift?gt[mt.overlaying][mt.side]:mt.shift||0}function $a(mt,gt){return/%f/.test(gt)?mt>=L:/%L/.test(gt)?mt>=P:/%[SX]/.test(gt)?mt>=f:/%M/.test(gt)?mt>=y:/%[HI]/.test(gt)?mt>=u:/%p/.test(gt)?mt>=d:/%[Aadejuwx]/.test(gt)?mt>=b:/%[UVW]/.test(gt)?mt>=m:/%[Bbm]/.test(gt)?mt>=E:/%[q]/.test(gt)?mt>=_:/%[Yy]/.test(gt)?mt>=p:!0}}}),cS=Ye({"src/plots/cartesian/autorange_options_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e,t;if(M){var r=A==="reversed"||A==="min reversed"||A==="max reversed";e=M[r?1:0],t=M[r?0:1]}var o=x("autorangeoptions.minallowed",t===null?e:void 0),a=x("autorangeoptions.maxallowed",e===null?t:void 0);o===void 0&&x("autorangeoptions.clipmin"),a===void 0&&x("autorangeoptions.clipmax"),x("autorangeoptions.include")}}}),fS=Ye({"src/plots/cartesian/range_defaults.js"(X,H){"use strict";var g=cS();H.exports=function(A,M,e,t){var r=M._template||{},o=M.type||r.type||"-";e("minallowed"),e("maxallowed");var a=e("range");if(!a){var i;!t.noInsiderange&&o!=="log"&&(i=e("insiderange"),i&&(i[0]===null||i[1]===null)&&(M.insiderange=!1,i=void 0),i&&(a=e("range",i)))}var n=M.getAutorangeDflt(a,t),s=e("autorange",n),c;a&&(a[0]===null&&a[1]===null||(a[0]===null||a[1]===null)&&(s==="reversed"||s===!0)||a[0]!==null&&(s==="min"||s==="max reversed")||a[1]!==null&&(s==="max"||s==="min reversed"))&&(a=void 0,delete M.range,M.autorange=!0,c=!0),c||(n=M.getAutorangeDflt(a,t),s=e("autorange",n)),s&&(g(e,s,a),(o==="linear"||o==="-")&&e("rangemode")),M.cleanRange()}}}),iO=Ye({"node_modules/mouse-event-offset/index.js"(X,H){var g={left:0,top:0};H.exports=x;function x(M,e,t){e=e||M.currentTarget||M.srcElement,Array.isArray(t)||(t=[0,0]);var r=M.clientX||0,o=M.clientY||0,a=A(e);return t[0]=r-a.left,t[1]=o-a.top,t}function A(M){return M===window||M===document||M===document.body?g:M.getBoundingClientRect()}}}),_2=Ye({"node_modules/has-passive-events/index.js"(X,H){"use strict";var g=rS();function x(){var A=!1;try{var M=Object.defineProperty({},"passive",{get:function(){A=!0}});window.addEventListener("test",null,M),window.removeEventListener("test",null,M)}catch{A=!1}return A}H.exports=g&&x()}}),nO=Ye({"src/components/dragelement/align.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=(x-M)/(e-M),o=r+A/(e-M),a=(r+o)/2;return t==="left"||t==="bottom"?r:t==="center"||t==="middle"?a:t==="right"||t==="top"?o:r<2/3-a?r:o>4/3-a?o:a}}}),oO=Ye({"src/components/dragelement/cursor.js"(X,H){"use strict";var g=ta(),x=[["sw-resize","s-resize","se-resize"],["w-resize","move","e-resize"],["nw-resize","n-resize","ne-resize"]];H.exports=function(M,e,t,r){return t==="left"?M=0:t==="center"?M=1:t==="right"?M=2:M=g.constrain(Math.floor(M*3),0,2),r==="bottom"?e=0:r==="middle"?e=1:r==="top"?e=2:e=g.constrain(Math.floor(e*3),0,2),x[e][M]}}}),sO=Ye({"src/components/dragelement/unhover.js"(X,H){"use strict";var g=$y(),x=m2(),A=b_().getGraphDiv,M=x_(),e=H.exports={};e.wrapped=function(t,r,o){t=A(t),t._fullLayout&&x.clear(t._fullLayout._uid+M.HOVERID),e.raw(t,r,o)},e.raw=function(r,o){var a=r._fullLayout,i=r._hoverdata;o||(o={}),!(o.target&&!r._dragged&&g.triggerHandler(r,"plotly_beforehover",o)===!1)&&(a._hoverlayer.selectAll("g").remove(),a._hoverlayer.selectAll("line").remove(),a._hoverlayer.selectAll("circle").remove(),r._hoverdata=void 0,o.target&&i&&r.emit("plotly_unhover",{event:o,points:i}))}}}),bp=Ye({"src/components/dragelement/index.js"(X,H){"use strict";var g=iO(),x=aS(),A=_2(),M=ta().removeElement,e=wh(),t=H.exports={};t.align=nO(),t.getCursor=oO();var r=sO();t.unhover=r.wrapped,t.unhoverRaw=r.raw,t.init=function(n){var s=n.gd,c=1,h=s._context.doubleClickDelay,v=n.element,p,T,l,_,w,S,E,m;s._mouseDownTime||(s._mouseDownTime=0),v.style.pointerEvents="all",v.onmousedown=u,A?(v._ontouchstart&&v.removeEventListener("touchstart",v._ontouchstart),v._ontouchstart=u,v.addEventListener("touchstart",u,{passive:!1})):v.ontouchstart=u;function b(P,L,z){return Math.abs(P)<z&&(P=0),Math.abs(L)<z&&(L=0),[P,L]}var d=n.clampFn||b;function u(P){s._dragged=!1,s._dragging=!0;var L=a(P);p=L[0],T=L[1],E=P.target,S=P,m=P.buttons===2||P.ctrlKey,typeof P.clientX>"u"&&typeof P.clientY>"u"&&(P.clientX=p,P.clientY=T),l=new Date().getTime(),l-s._mouseDownTime<h?c+=1:(c=1,s._mouseDownTime=l),n.prepFn&&n.prepFn(P,p,T),x&&!m?(w=o(),w.style.cursor=window.getComputedStyle(v).cursor):x||(w=document,_=window.getComputedStyle(document.documentElement).cursor,document.documentElement.style.cursor=window.getComputedStyle(v).cursor),document.addEventListener("mouseup",f),document.addEventListener("touchend",f),n.dragmode!==!1&&(P.preventDefault(),document.addEventListener("mousemove",y),document.addEventListener("touchmove",y,{passive:!1}))}function y(P){P.preventDefault();var L=a(P),z=n.minDrag||e.MINDRAG,F=d(L[0]-p,L[1]-T,z),B=F[0],O=F[1];(B||O)&&(s._dragged=!0,t.unhover(s,P)),s._dragged&&n.moveFn&&!m&&(s._dragdata={element:v,dx:B,dy:O},n.moveFn(B,O))}function f(P){if(delete s._dragdata,n.dragmode!==!1&&(P.preventDefault(),document.removeEventListener("mousemove",y),document.removeEventListener("touchmove",y)),document.removeEventListener("mouseup",f),document.removeEventListener("touchend",f),x?M(w):_&&(w.documentElement.style.cursor=_,_=null),!s._dragging){s._dragged=!1;return}if(s._dragging=!1,new Date().getTime()-s._mouseDownTime>h&&(c=Math.max(c-1,1)),s._dragged)n.doneFn&&n.doneFn();else{var L;S.target===E?L=S:(L={target:E,srcElement:E,toElement:E},Object.keys(S).concat(Object.keys(S.__proto__)).forEach(z=>{var F=S[z];!L[z]&&typeof F!="function"&&(L[z]=F)})),n.clickFn&&n.clickFn(c,L),m||E.dispatchEvent(new MouseEvent("click",P))}s._dragging=!1,s._dragged=!1}};function o(){var i=document.createElement("div");i.className="dragcover";var n=i.style;return n.position="fixed",n.left=0,n.right=0,n.top=0,n.bottom=0,n.zIndex=999999999,n.background="none",document.body.appendChild(i),i}t.coverSlip=o;function a(i){return g(i.changedTouches?i.changedTouches[0]:i,document.body)}}}),Kd=Ye({"src/lib/setcursor.js"(X,H){"use strict";H.exports=function(x,A){(x.attr("class")||"").split(" ").forEach(function(M){M.indexOf("cursor-")===0&&x.classed(M,!1)}),A&&x.classed("cursor-"+A,!0)}}}),lO=Ye({"src/lib/override_cursor.js"(X,H){"use strict";var g=Kd(),x="data-savedcursor",A="!!";H.exports=function(e,t){var r=e.attr(x);if(t){if(!r){for(var o=(e.attr("class")||"").split(" "),a=0;a<o.length;a++){var i=o[a];i.indexOf("cursor-")===0&&e.attr(x,i.substr(7)).classed(i,!1)}e.attr(x)||e.attr(x,A)}g(e,t)}else r&&(e.attr(x,null),r===A?g(e):g(e,r))}}}),hS=Ye({"src/components/legend/attributes.js"(X,H){"use strict";var g=Au(),x=Gf();H.exports={_isSubplotObj:!0,visible:{valType:"boolean",dflt:!0,editType:"legend"},bgcolor:{valType:"color",editType:"legend"},bordercolor:{valType:"color",dflt:x.defaultLine,editType:"legend"},borderwidth:{valType:"number",min:0,dflt:0,editType:"legend"},font:g({editType:"legend"}),grouptitlefont:g({editType:"legend"}),orientation:{valType:"enumerated",values:["v","h"],dflt:"v",editType:"legend"},traceorder:{valType:"flaglist",flags:["reversed","grouped"],extras:["normal"],editType:"legend"},tracegroupgap:{valType:"number",min:0,dflt:10,editType:"legend"},entrywidth:{valType:"number",min:0,editType:"legend"},entrywidthmode:{valType:"enumerated",values:["fraction","pixels"],dflt:"pixels",editType:"legend"},indentation:{valType:"number",min:-15,dflt:0,editType:"legend"},itemsizing:{valType:"enumerated",values:["trace","constant"],dflt:"trace",editType:"legend"},itemwidth:{valType:"number",min:30,dflt:30,editType:"legend"},itemclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggle",editType:"legend"},itemdoubleclick:{valType:"enumerated",values:["toggle","toggleothers",!1],dflt:"toggleothers",editType:"legend"},groupclick:{valType:"enumerated",values:["toggleitem","togglegroup"],dflt:"togglegroup",editType:"legend"},x:{valType:"number",editType:"legend"},xref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"left",editType:"legend"},y:{valType:"number",editType:"legend"},yref:{valType:"enumerated",dflt:"paper",values:["container","paper"],editType:"layoutstyle"},yanchor:{valType:"enumerated",values:["auto","top","middle","bottom"],editType:"legend"},uirevision:{valType:"any",editType:"none"},valign:{valType:"enumerated",values:["top","middle","bottom"],dflt:"middle",editType:"legend"},title:{text:{valType:"string",dflt:"",editType:"legend"},font:g({editType:"legend"}),side:{valType:"enumerated",values:["top","left","top left","top center","top right"],editType:"legend"},editType:"legend"},editType:"legend"}}}),x2=Ye({"src/components/legend/helpers.js"(X){"use strict";X.isGrouped=function(g){return(g.traceorder||"").indexOf("grouped")!==-1},X.isVertical=function(g){return g.orientation!=="h"},X.isReversed=function(g){return(g.traceorder||"").indexOf("reversed")!==-1}}}),pS=Ye({"src/components/legend/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=cl(),M=Pl(),e=hS(),t=Jy(),r=x2();function o(a,i,n,s){var c=i[a]||{},h=A.newContainer(n,a);function v(he,G){return x.coerce(c,h,e,he,G)}var p=x.coerceFont(v,"font",n.font);v("bgcolor",n.paper_bgcolor),v("bordercolor");var T=v("visible");if(T){for(var l,_=function(he,G){var $=l._input,J=l;return x.coerce($,J,M,he,G)},w=n.font||{},S=x.coerceFont(v,"grouptitlefont",w,{overrideDflt:{size:Math.round(w.size*1.1)}}),E=0,m=!1,b="normal",d=(n.shapes||[]).filter(function(he){return he.showlegend}),u=s.concat(d).filter(function(he){return a===(he.legend||"legend")}),y=0;y<u.length;y++)if(l=u[y],!!l.visible){var f=l._isShape;(l.showlegend||l._dfltShowLegend&&!(l._module&&l._module.attributes&&l._module.attributes.showlegend&&l._module.attributes.showlegend.dflt===!1))&&(E++,l.showlegend&&(m=!0,(!f&&g.traceIs(l,"pie-like")||l._input.showlegend===!0)&&E++),x.coerceFont(_,"legendgrouptitle.font",S)),(!f&&g.traceIs(l,"bar")&&n.barmode==="stack"||["tonextx","tonexty"].indexOf(l.fill)!==-1)&&(b=r.isGrouped({traceorder:b})?"grouped+reversed":"reversed"),l.legendgroup!==void 0&&l.legendgroup!==""&&(b=r.isReversed({traceorder:b})?"reversed+grouped":"grouped")}var P=x.coerce(i,n,t,"showlegend",m&&E>(a==="legend"?1:0));if(P===!1&&(n[a]=void 0),!(P===!1&&!c.uirevision)&&(v("uirevision",n.uirevision),P!==!1)){v("borderwidth");var L=v("orientation"),z=v("yref"),F=v("xref"),B=L==="h",O=z==="paper",I=F==="paper",N,U,W,Q="left";B?(N=0,g.getComponentMethod("rangeslider","isVisible")(i.xaxis)?O?(U=1.1,W="bottom"):(U=1,W="top"):O?(U=-.1,W="top"):(U=0,W="bottom")):(U=1,W="auto",I?N=1.02:(N=1,Q="right")),x.coerce(c,h,{x:{valType:"number",editType:"legend",min:I?-2:0,max:I?3:1,dflt:N}},"x"),x.coerce(c,h,{y:{valType:"number",editType:"legend",min:O?-2:0,max:O?3:1,dflt:U}},"y"),v("traceorder",b),r.isGrouped(n[a])&&v("tracegroupgap"),v("entrywidth"),v("entrywidthmode"),v("indentation"),v("itemsizing"),v("itemwidth"),v("itemclick"),v("itemdoubleclick"),v("groupclick"),v("xanchor",Q),v("yanchor",W),v("valign"),x.noneOrAll(c,h,["x","y"]);var ue=v("title.text");if(ue){v("title.side",B?"left":"top");var se=x.extendFlat({},p,{size:x.bigFont(p.size)});x.coerceFont(v,"title.font",se)}}}}H.exports=function(i,n,s){var c,h=s.slice(),v=n.shapes;if(v)for(c=0;c<v.length;c++){var p=v[c];if(p.showlegend){var T={_input:p._input,visible:p.visible,showlegend:p.showlegend,legend:p.legend};h.push(T)}}var l=["legend"];for(c=0;c<h.length;c++)x.pushUnique(l,h[c].legend);for(n._legends=[],c=0;c<l.length;c++){var _=l[c];o(_,i,n,h),n[_]&&n[_].visible&&(n[_]._id=_),n._legends.push(_)}}}}),uO=Ye({"src/components/legend/handle_click.js"(X,H){"use strict";var g=Hn(),x=ta(),A=x.pushUnique,M=!0;H.exports=function(t,r,o){var a=r._fullLayout;if(r._dragged||r._editing)return;var i=a.legend.itemclick,n=a.legend.itemdoubleclick,s=a.legend.groupclick;o===1&&i==="toggle"&&n==="toggleothers"&&M&&r.data&&r._context.showTips&&x.notifier(x._(r,"Double-click on legend to isolate one trace"),"long"),M=!1;var c;if(o===1?c=i:o===2&&(c=n),!c)return;var h=s==="togglegroup",v=a.hiddenlabels?a.hiddenlabels.slice():[],p=t.data()[0][0];if(p.groupTitle&&p.noClick)return;var T=r._fullData,l=(a.shapes||[]).filter(function(Me){return Me.showlegend}),_=T.concat(l),w=p.trace;w._isShape&&(w=w._fullInput);var S=w.legendgroup,E,m,b,d,u,y,f={},P=[],L=[],z=[];function F(Me,ge){var ce=P.indexOf(Me),ze=f.visible;return ze||(ze=f.visible=[]),P.indexOf(Me)===-1&&(P.push(Me),ce=P.length-1),ze[ce]=ge,ce}var B=(a.shapes||[]).map(function(Me){return Me._input}),O=!1;function I(Me,ge){B[Me].visible=ge,O=!0}function N(Me,ge){if(!(p.groupTitle&&!h)){var ce=Me._fullInput||Me,ze=ce._isShape,tt=ce.index;tt===void 0&&(tt=ce._index);var nt=ce.visible===!1?!1:ge;ze?I(tt,nt):F(tt,nt)}}var U=w.legend,W=w._fullInput,Q=W&&W._isShape;if(!Q&&g.traceIs(w,"pie-like")){var ue=p.label,se=v.indexOf(ue);if(c==="toggle")se===-1?v.push(ue):v.splice(se,1);else if(c==="toggleothers"){var he=se!==-1,G=[];for(E=0;E<r.calcdata.length;E++){var $=r.calcdata[E];for(m=0;m<$.length;m++){var J=$[m],Z=J.label;U===$[0].trace.legend&&ue!==Z&&(v.indexOf(Z)===-1&&(he=!0),A(v,Z),G.push(Z))}}if(!he)for(var re=0;re<G.length;re++){var ne=v.indexOf(G[re]);ne!==-1&&v.splice(ne,1)}}g.call("_guiRelayout",r,"hiddenlabels",v)}else{var j=S&&S.length,ee=[],ie;if(j)for(E=0;E<_.length;E++)ie=_[E],ie.visible&&ie.legendgroup===S&&ee.push(E);if(c==="toggle"){var fe;switch(w.visible){case!0:fe="legendonly";break;case!1:fe=!1;break;case"legendonly":fe=!0;break}if(j)if(h)for(E=0;E<_.length;E++){var be=_[E];be.visible!==!1&&be.legendgroup===S&&N(be,fe)}else N(w,fe);else N(w,fe)}else if(c==="toggleothers"){var Ae,Be,Ie,Ze,at,it=!0;for(E=0;E<_.length;E++)if(at=_[E],Ae=at===w,Ie=at.showlegend!==!0,!(Ae||Ie)&&(Be=j&&at.legendgroup===S,!Be&&at.legend===U&&at.visible===!0&&!g.traceIs(at,"notLegendIsolatable"))){it=!1;break}for(E=0;E<_.length;E++)if(at=_[E],!(at.visible===!1||at.legend!==U)&&!g.traceIs(at,"notLegendIsolatable"))switch(w.visible){case"legendonly":N(at,!0);break;case!0:Ze=it?!0:"legendonly",Ae=at===w,Ie=at.showlegend!==!0&&!at.legendgroup,Be=Ae||j&&at.legendgroup===S,N(at,Be||Ie?!0:Ze);break}}for(E=0;E<L.length;E++)if(b=L[E],!!b){var et=b.constructUpdate(),lt=Object.keys(et);for(m=0;m<lt.length;m++)d=lt[m],y=f[d]=f[d]||[],y[z[E]]=et[d]}for(u=Object.keys(f),E=0;E<u.length;E++)for(d=u[E],m=0;m<P.length;m++)f[d].hasOwnProperty(m)||(f[d][m]=void 0);O?g.call("_guiUpdate",r,f,{shapes:B},P):g.call("_guiRestyle",r,f,P)}}}}),dS=Ye({"src/components/legend/constants.js"(X,H){"use strict";H.exports={scrollBarWidth:6,scrollBarMinHeight:20,scrollBarColor:"#808BA4",scrollBarMargin:4,scrollBarEnterAttrs:{rx:20,ry:3,width:0,height:0},titlePad:2,itemGap:5}}}),cO=Ye({"src/components/legend/get_legend_data.js"(X,H){"use strict";var g=Hn(),x=x2();H.exports=function(M,e,t){var r=e._inHover,o=x.isGrouped(e),a=x.isReversed(e),i={},n=[],s=!1,c={},h=0,v=0,p,T;function l(N,U,W){if(e.visible!==!1&&!(t&&N!==e._id))if(U===""||!x.isGrouped(e)){var Q="~~i"+h;n.push(Q),i[Q]=[W],h++}else n.indexOf(U)===-1?(n.push(U),s=!0,i[U]=[W]):i[U].push(W)}for(p=0;p<M.length;p++){var _=M[p],w=_[0],S=w.trace,E=S.legend,m=S.legendgroup;if(!(!r&&(!S.visible||!S.showlegend)))if(g.traceIs(S,"pie-like"))for(c[m]||(c[m]={}),T=0;T<_.length;T++){var b=_[T].label;c[m][b]||(l(E,m,{label:b,color:_[T].color,i:_[T].i,trace:S,pts:_[T].pts}),c[m][b]=!0,v=Math.max(v,(b||"").length))}else l(E,m,w),v=Math.max(v,(S.name||"").length)}if(!n.length)return[];var d=!s||!o,u=[];for(p=0;p<n.length;p++){var y=i[n[p]];d?u.push(y[0]):u.push(y)}for(d&&(u=[u]),p=0;p<u.length;p++){var f=1/0;for(T=0;T<u[p].length;T++){var P=u[p][T].trace.legendrank;f>P&&(f=P)}u[p][0]._groupMinRank=f,u[p][0]._preGroupSort=p}var L=function(N,U){return N[0]._groupMinRank-U[0]._groupMinRank||N[0]._preGroupSort-U[0]._preGroupSort},z=function(N,U){return N.trace.legendrank-U.trace.legendrank||N._preSort-U._preSort};for(u.forEach(function(N,U){N[0]._preGroupSort=U}),u.sort(L),p=0;p<u.length;p++){u[p].forEach(function(N,U){N._preSort=U}),u[p].sort(z);var F=u[p][0].trace,B=null;for(T=0;T<u[p].length;T++){var O=u[p][T].trace.legendgrouptitle;if(O&&O.text){B=O,r&&(O.font=e._groupTitleFont);break}}if(a&&u[p].reverse(),B){var I=!1;for(T=0;T<u[p].length;T++)if(g.traceIs(u[p][T].trace,"pie-like")){I=!0;break}u[p].unshift({i:-1,groupTitle:B,noClick:I,trace:{showlegend:F.showlegend,legendgroup:F.legendgroup,visible:e.groupclick==="toggleitem"?!0:F.visible}})}for(T=0;T<u[p].length;T++)u[p][T]=[u[p][T]]}return e._lgroupsLength=u.length,e._maxNameLength=v,u}}}),eg=Ye({"src/traces/pie/helpers.js"(X){"use strict";var H=ta();function g(x){return x.indexOf("e")!==-1?x.replace(/[.]?0+e/,"e"):x.indexOf(".")!==-1?x.replace(/[.]?0+$/,""):x}X.formatPiePercent=function(A,M){var e=g((A*100).toPrecision(3));return H.numSeparate(e,M)+"%"},X.formatPieValue=function(A,M){var e=g(A.toPrecision(10));return H.numSeparate(e,M)},X.getFirstFilled=function(A,M){if(H.isArrayOrTypedArray(A))for(var e=0;e<M.length;e++){var t=A[M[e]];if(t||t===0||t==="")return t}},X.castOption=function(A,M){if(H.isArrayOrTypedArray(A))return X.getFirstFilled(A,M);if(A)return A},X.getRotationAngle=function(x){return(x==="auto"?0:x)*Math.PI/180}}}),fO=Ye({"src/traces/pie/fill_one.js"(X,H){"use strict";var g=Bo(),x=Fn();H.exports=function(M,e,t,r){var o=t.marker.pattern;o&&o.shape?g.pointStyle(M,t,r,e):x.fill(M,e.color)}}}),a1=Ye({"src/traces/pie/style_one.js"(X,H){"use strict";var g=Fn(),x=eg().castOption,A=fO();H.exports=function(e,t,r,o){var a=r.marker.line,i=x(a.color,t.pts)||g.defaultLine,n=x(a.width,t.pts)||0;e.call(A,t,r,o).style("stroke-width",n).call(g.stroke,i)}}}),vS=Ye({"src/components/legend/style.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=A.strTranslate,e=Bo(),t=Fn(),r=Up().extractOpts,o=uu(),a=a1(),i=eg().castOption,n=dS(),s=12,c=5,h=2,v=10,p=5;H.exports=function(S,E,m){var b=E._fullLayout;m||(m=b.legend);var d=m.itemsizing==="constant",u=m.itemwidth,y=(u+n.itemGap*2)/2,f=M(y,0),P=function(G,$,J,Z){var re;if(G+1)re=G;else if($&&$.width>0)re=$.width;else return 0;return d?Z:Math.min(re,J)};S.each(function(G){var $=g.select(this),J=A.ensureSingle($,"g","layers");J.style("opacity",G[0].trace.opacity);var Z=m.indentation,re=m.valign,ne=G[0].lineHeight,j=G[0].height;if(re==="middle"&&Z===0||!ne||!j)J.attr("transform",null);else{var ee={top:1,bottom:-1}[re],ie=ee*(.5*(ne-j+3))||0,fe=m.indentation;J.attr("transform",M(fe,ie))}var be=J.selectAll("g.legendfill").data([G]);be.enter().append("g").classed("legendfill",!0);var Ae=J.selectAll("g.legendlines").data([G]);Ae.enter().append("g").classed("legendlines",!0);var Be=J.selectAll("g.legendsymbols").data([G]);Be.enter().append("g").classed("legendsymbols",!0),Be.selectAll("g.legendpoints").data([G]).enter().append("g").classed("legendpoints",!0)}).each(he).each(F).each(O).each(B).each(N).each(ue).each(Q).each(L).each(z).each(U).each(W);function L(G){var $=l(G),J=$.showFill,Z=$.showLine,re=$.showGradientLine,ne=$.showGradientFill,j=$.anyFill,ee=$.anyLine,ie=G[0],fe=ie.trace,be,Ae,Be=r(fe),Ie=Be.colorscale,Ze=Be.reversescale,at=function(ze){if(ze.size())if(J)e.fillGroupStyle(ze,E,!0);else{var tt="legendfill-"+fe.uid;e.gradient(ze,E,tt,T(Ze),Ie,"fill")}},it=function(ze){if(ze.size()){var tt="legendline-"+fe.uid;e.lineGroupStyle(ze),e.gradient(ze,E,tt,T(Ze),Ie,"stroke")}},et=o.hasMarkers(fe)||!j?"M5,0":ee?"M5,-2":"M5,-3",lt=g.select(this),Me=lt.select(".legendfill").selectAll("path").data(J||ne?[G]:[]);if(Me.enter().append("path").classed("js-fill",!0),Me.exit().remove(),Me.attr("d",et+"h"+u+"v6h-"+u+"z").call(at),Z||re){var ge=P(void 0,fe.line,v,c);Ae=A.minExtend(fe,{line:{width:ge}}),be=[A.minExtend(ie,{trace:Ae})]}var ce=lt.select(".legendlines").selectAll("path").data(Z||re?[be]:[]);ce.enter().append("path").classed("js-line",!0),ce.exit().remove(),ce.attr("d",et+(re?"l"+u+",0.0001":"h"+u)).call(Z?e.lineGroupStyle:it)}function z(G){var $=l(G),J=$.anyFill,Z=$.anyLine,re=$.showLine,ne=$.showMarker,j=G[0],ee=j.trace,ie=!ne&&!Z&&!J&&o.hasText(ee),fe,be;function Ae(Me,ge,ce,ze){var tt=A.nestedProperty(ee,Me).get(),nt=A.isArrayOrTypedArray(tt)&&ge?ge(tt):tt;if(d&&nt&&ze!==void 0&&(nt=ze),ce){if(nt<ce[0])return ce[0];if(nt>ce[1])return ce[1]}return nt}function Be(Me){return j._distinct&&j.index&&Me[j.index]?Me[j.index]:Me[0]}if(ne||ie||re){var Ie={},Ze={};if(ne){Ie.mc=Ae("marker.color",Be),Ie.mx=Ae("marker.symbol",Be),Ie.mo=Ae("marker.opacity",A.mean,[.2,1]),Ie.mlc=Ae("marker.line.color",Be),Ie.mlw=Ae("marker.line.width",A.mean,[0,5],h),Ze.marker={sizeref:1,sizemin:1,sizemode:"diameter"};var at=Ae("marker.size",A.mean,[2,16],s);Ie.ms=at,Ze.marker.size=at}re&&(Ze.line={width:Ae("line.width",Be,[0,10],c)}),ie&&(Ie.tx="Aa",Ie.tp=Ae("textposition",Be),Ie.ts=10,Ie.tc=Ae("textfont.color",Be),Ie.tf=Ae("textfont.family",Be),Ie.tw=Ae("textfont.weight",Be),Ie.ty=Ae("textfont.style",Be),Ie.tv=Ae("textfont.variant",Be),Ie.tC=Ae("textfont.textcase",Be),Ie.tE=Ae("textfont.lineposition",Be),Ie.tS=Ae("textfont.shadow",Be)),fe=[A.minExtend(j,Ie)],be=A.minExtend(ee,Ze),be.selectedpoints=null,be.texttemplate=null}var it=g.select(this).select("g.legendpoints"),et=it.selectAll("path.scatterpts").data(ne?fe:[]);et.enter().insert("path",":first-child").classed("scatterpts",!0).attr("transform",f),et.exit().remove(),et.call(e.pointStyle,be,E),ne&&(fe[0].mrc=3);var lt=it.selectAll("g.pointtext").data(ie?fe:[]);lt.enter().append("g").classed("pointtext",!0).append("text").attr("transform",f),lt.exit().remove(),lt.selectAll("text").call(e.textPointStyle,be,E)}function F(G){var $=G[0].trace,J=$.type==="waterfall";if(G[0]._distinct&&J){var Z=G[0].trace[G[0].dir].marker;return G[0].mc=Z.color,G[0].mlw=Z.line.width,G[0].mlc=Z.line.color,I(G,this,"waterfall")}var re=[];$.visible&&J&&(re=G[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 ne=g.select(this).select("g.legendpoints").selectAll("path.legendwaterfall").data(re);ne.enter().append("path").classed("legendwaterfall",!0).attr("transform",f).style("stroke-miterlimit",1),ne.exit().remove(),ne.each(function(j){var ee=g.select(this),ie=$[j[0]].marker,fe=P(void 0,ie.line,p,h);ee.attr("d",j[1]).style("stroke-width",fe+"px").call(t.fill,ie.color),fe&&ee.call(t.stroke,ie.line.color)})}function B(G){I(G,this)}function O(G){I(G,this,"funnel")}function I(G,$,J){var Z=G[0].trace,re=Z.marker||{},ne=re.line||{},j=re.cornerradius?"M6,3a3,3,0,0,1-3,3H-3a3,3,0,0,1-3-3V-3a3,3,0,0,1,3-3H3a3,3,0,0,1,3,3Z":"M6,6H-6V-6H6Z",ee=J?Z.visible&&Z.type===J:x.traceIs(Z,"bar"),ie=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ee?[G]:[]);ie.enter().append("path").classed("legend"+J,!0).attr("d",j).attr("transform",f),ie.exit().remove(),ie.each(function(fe){var be=g.select(this),Ae=fe[0],Be=P(Ae.mlw,re.line,p,h);be.style("stroke-width",Be+"px");var Ie=Ae.mcc;if(!m._inHover&&"mc"in Ae){var Ze=r(re),at=Ze.mid;at===void 0&&(at=(Ze.max+Ze.min)/2),Ie=e.tryColorscale(re,"")(at)}var it=Ie||Ae.mc||re.color,et=re.pattern,lt=et&&e.getPatternAttr(et.shape,0,"");if(lt){var Me=e.getPatternAttr(et.bgcolor,0,null),ge=e.getPatternAttr(et.fgcolor,0,null),ce=et.fgopacity,ze=_(et.size,8,10),tt=_(et.solidity,.5,1),nt="legend-"+Z.uid;be.call(e.pattern,"legend",E,nt,lt,ze,tt,Ie,et.fillmode,Me,ge,ce)}else be.call(t.fill,it);Be&&t.stroke(be,Ae.mlc||ne.color)})}function N(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendbox").data($.visible&&x.traceIs($,"box-violin")?[G]:[]);J.enter().append("path").classed("legendbox",!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),J.exit().remove(),J.each(function(){var Z=g.select(this);if(($.boxpoints==="all"||$.points==="all")&&t.opacity($.fillcolor)===0&&t.opacity(($.line||{}).color)===0){var re=A.minExtend($,{marker:{size:d?s:A.constrain($.marker.size,2,16),sizeref:1,sizemin:1,sizemode:"diameter"}});J.call(e.pointStyle,re,E)}else{var ne=P(void 0,$.line,p,h);Z.style("stroke-width",ne+"px").call(t.fill,$.fillcolor),ne&&t.stroke(Z,$.line.color)}})}function U(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendcandle").data($.visible&&$.type==="candlestick"?[G,G]:[]);J.enter().append("path").classed("legendcandle",!0).attr("d",function(Z,re){return re?"M-15,0H-8M-8,6V-6H8Z":"M15,0H8M8,-6V6H-8Z"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("stroke-width",ee+"px").call(t.fill,j.fillcolor),ee&&t.stroke(ne,j.line.color)})}function W(G){var $=G[0].trace,J=g.select(this).select("g.legendpoints").selectAll("path.legendohlc").data($.visible&&$.type==="ohlc"?[G,G]:[]);J.enter().append("path").classed("legendohlc",!0).attr("d",function(Z,re){return re?"M-15,0H0M-8,-6V0":"M15,0H0M8,6V0"}).attr("transform",f).style("stroke-miterlimit",1),J.exit().remove(),J.each(function(Z,re){var ne=g.select(this),j=$[re?"increasing":"decreasing"],ee=P(void 0,j.line,p,h);ne.style("fill","none").call(e.dashLine,j.line.dash,ee),ee&&t.stroke(ne,j.line.color)})}function Q(G){se(G,this,"pie")}function ue(G){se(G,this,"funnelarea")}function se(G,$,J){var Z=G[0],re=Z.trace,ne=J?re.visible&&re.type===J:x.traceIs(re,J),j=g.select($).select("g.legendpoints").selectAll("path.legend"+J).data(ne?[G]:[]);if(j.enter().append("path").classed("legend"+J,!0).attr("d","M6,6H-6V-6H6Z").attr("transform",f),j.exit().remove(),j.size()){var ee=re.marker||{},ie=P(i(ee.line.width,Z.pts),ee.line,p,h),fe="pieLike",be=A.minExtend(re,{marker:{line:{width:ie}}},fe),Ae=A.minExtend(Z,{trace:be},fe);a(j,Ae,be,E)}}function he(G){var $=G[0].trace,J,Z=[];if($.visible)switch($.type){case"histogram2d":case"heatmap":Z=[["M-15,-2V4H15V-2Z"]],J=!0;break;case"choropleth":case"choroplethmapbox":case"choroplethmap":Z=[["M-6,-6V6H6V-6Z"]],J=!0;break;case"densitymapbox":case"densitymap":Z=[["M-6,0 a6,6 0 1,0 12,0 a 6,6 0 1,0 -12,0"]],J="radial";break;case"cone":Z=[["M-6,2 A2,2 0 0,0 -6,6 V6L6,4Z"],["M-6,-6 A2,2 0 0,0 -6,-2 L6,-4Z"],["M-6,-2 A2,2 0 0,0 -6,2 L6,0Z"]],J=!1;break;case"streamtube":Z=[["M-6,2 A2,2 0 0,0 -6,6 H6 A2,2 0 0,1 6,2 Z"],["M-6,-6 A2,2 0 0,0 -6,-2 H6 A2,2 0 0,1 6,-6 Z"],["M-6,-2 A2,2 0 0,0 -6,2 H6 A2,2 0 0,1 6,-2 Z"]],J=!1;break;case"surface":Z=[["M-6,-6 A2,3 0 0,0 -6,0 H6 A2,3 0 0,1 6,-6 Z"],["M-6,1 A2,3 0 0,1 -6,6 H6 A2,3 0 0,0 6,0 Z"]],J=!0;break;case"mesh3d":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!1;break;case"volume":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6H6L0,6Z"]],J=!0;break;case"isosurface":Z=[["M-6,6H0L-6,-6Z"],["M6,6H0L6,-6Z"],["M-6,-6 A12,24 0 0,0 6,-6 L0,6Z"]],J=!1;break}var re=g.select(this).select("g.legendpoints").selectAll("path.legend3dandfriends").data(Z);re.enter().append("path").classed("legend3dandfriends",!0).attr("transform",f).style("stroke-miterlimit",1),re.exit().remove(),re.each(function(ne,j){var ee=g.select(this),ie=r($),fe=ie.colorscale,be=ie.reversescale,Ae=function(at){if(at.size()){var it="legendfill-"+$.uid;e.gradient(at,E,it,T(be,J==="radial"),fe,"fill")}},Be;if(fe){if(!J){var Ze=fe.length;Be=j===0?fe[be?Ze-1:0][1]:j===1?fe[be?0:Ze-1][1]:fe[Math.floor((Ze-1)/2)][1]}}else{var Ie=$.vertexcolor||$.facecolor||$.color;Be=A.isArrayOrTypedArray(Ie)?Ie[j]||Ie[0]:Ie}ee.attr("d",ne[0]),Be?ee.call(t.fill,Be):ee.call(Ae)})}};function T(w,S){var E=S?"radial":"horizontal";return E+(w?"":"reversed")}function l(w){var S=w[0].trace,E=S.contours,m=o.hasLines(S),b=o.hasMarkers(S),d=S.visible&&S.fill&&S.fill!=="none",u=!1,y=!1;if(E){var f=E.coloring;f==="lines"?u=!0:m=f==="none"||f==="heatmap"||E.showlines,E.type==="constraint"?d=E._operation!=="=":(f==="fill"||f==="heatmap")&&(y=!0)}return{showMarker:b,showLine:m,showFill:d,showGradientLine:u,showGradientFill:y,anyLine:m||u,anyFill:d||y}}function _(w,S,E){return w&&A.isArrayOrTypedArray(w)?S:w>E?E:w}}}),mS=Ye({"src/components/legend/draw.js"(X,H){"use strict";var g=_n(),x=ta(),A=Gu(),M=Hn(),e=$y(),t=bp(),r=Bo(),o=Fn(),a=jl(),i=uO(),n=dS(),s=oh(),c=s.LINE_SPACING,h=s.FROM_TL,v=s.FROM_BR,p=cO(),T=vS(),l=x2(),_=1,w=/^legend[0-9]*$/;H.exports=function(U,W){if(W)E(U,W);else{var Q=U._fullLayout,ue=Q._legends,se=Q._infolayer.selectAll('[class^="legend"]');se.each(function(){var J=g.select(this),Z=J.attr("class"),re=Z.split(" ")[0];re.match(w)&&ue.indexOf(re)===-1&&J.remove()});for(var he=0;he<ue.length;he++){var G=ue[he],$=U._fullLayout[G];E(U,$)}}};function S(N,U,W){if(!(U.title.side!=="top center"&&U.title.side!=="top right")){var Q=U.title.font,ue=Q.size*c,se=0,he=N.node(),G=r.bBox(he).width;U.title.side==="top center"?se=.5*(U._width-2*W-2*n.titlePad-G):U.title.side==="top right"&&(se=U._width-2*W-2*n.titlePad-G),a.positionText(N,W+n.titlePad+se,W+ue)}}function E(N,U){var W=U||{},Q=N._fullLayout,ue=I(W),se,he,G=W._inHover;if(G?(he=W.layer,se="hover"):(he=Q._infolayer,se=ue),!!he){se+=Q._uid,N._legendMouseDownTime||(N._legendMouseDownTime=0);var $;if(G){if(!W.entries)return;$=p(W.entries,W)}else{for(var J=(N.calcdata||[]).slice(),Z=Q.shapes,re=0;re<Z.length;re++){var ne=Z[re];if(ne.showlegend){var j={_isShape:!0,_fullInput:ne,index:ne._index,name:ne.name||ne.label.text||"shape "+ne._index,legend:ne.legend,legendgroup:ne.legendgroup,legendgrouptitle:ne.legendgrouptitle,legendrank:ne.legendrank,legendwidth:ne.legendwidth,showlegend:ne.showlegend,visible:ne.visible,opacity:ne.opacity,mode:ne.type==="line"?"lines":"markers",line:ne.line,marker:{line:ne.line,color:ne.fillcolor,size:12,symbol:ne.type==="rect"?"square":ne.type==="circle"?"circle":"hexagon2"}};J.push([{trace:j}])}}$=Q.showlegend&&p(J,W,Q._legends.length>1)}var ee=Q.hiddenlabels||[];if(!G&&(!Q.showlegend||!$.length))return he.selectAll("."+ue).remove(),Q._topdefs.select("#"+se).remove(),A.autoMargin(N,ue);var ie=x.ensureSingle(he,"g",ue,function(et){G||et.attr("pointer-events","all")}),fe=x.ensureSingleById(Q._topdefs,"clipPath",se,function(et){et.append("rect")}),be=x.ensureSingle(ie,"rect","bg",function(et){et.attr("shape-rendering","crispEdges")});be.call(o.stroke,W.bordercolor).call(o.fill,W.bgcolor).style("stroke-width",W.borderwidth+"px");var Ae=x.ensureSingle(ie,"g","scrollbox"),Be=W.title;W._titleWidth=0,W._titleHeight=0;var Ie;Be.text?(Ie=x.ensureSingle(Ae,"text",ue+"titletext"),Ie.attr("text-anchor","start").call(r.font,Be.font).text(Be.text),f(Ie,Ae,N,W,_)):Ae.selectAll("."+ue+"titletext").remove();var Ze=x.ensureSingle(ie,"rect","scrollbar",function(et){et.attr(n.scrollBarEnterAttrs).call(o.fill,n.scrollBarColor)}),at=Ae.selectAll("g.groups").data($);at.enter().append("g").attr("class","groups"),at.exit().remove();var it=at.selectAll("g.traces").data(x.identity);it.enter().append("g").attr("class","traces"),it.exit().remove(),it.style("opacity",function(et){var lt=et[0].trace;return M.traceIs(lt,"pie-like")?ee.indexOf(et[0].label)!==-1?.5:1:lt.visible==="legendonly"?.5:1}).each(function(){g.select(this).call(d,N,W)}).call(T,N,W).each(function(){G||g.select(this).call(y,N,ue)}),x.syncOrAsync([A.previousPromises,function(){return z(N,at,it,W)},function(){var et=Q._size,lt=W.borderwidth,Me=W.xref==="paper",ge=W.yref==="paper";if(Be.text&&S(Ie,W,lt),!G){var ce,ze;Me?ce=et.l+et.w*W.x-h[B(W)]*W._width:ce=Q.width*W.x-h[B(W)]*W._width,ge?ze=et.t+et.h*(1-W.y)-h[O(W)]*W._effHeight:ze=Q.height*(1-W.y)-h[O(W)]*W._effHeight;var tt=F(N,ue,ce,ze);if(tt)return;if(Q.margin.autoexpand){var nt=ce,Qe=ze;ce=Me?x.constrain(ce,0,Q.width-W._width):nt,ze=ge?x.constrain(ze,0,Q.height-W._effHeight):Qe,ce!==nt&&x.log("Constrain "+ue+".x to make legend fit inside graph"),ze!==Qe&&x.log("Constrain "+ue+".y to make legend fit inside graph")}r.setTranslate(ie,ce,ze)}if(Ze.on(".drag",null),ie.on("wheel",null),G||W._height<=W._maxHeight||N._context.staticPlot){var Ct=W._effHeight;G&&(Ct=W._height),be.attr({width:W._width-lt,height:Ct-lt,x:lt/2,y:lt/2}),r.setTranslate(Ae,0,0),fe.select("rect").attr({width:W._width-2*lt,height:Ct-2*lt,x:lt,y:lt}),r.setClipUrl(Ae,se,N),r.setRect(Ze,0,0,0,0),delete W._scrollY}else{var St=Math.max(n.scrollBarMinHeight,W._effHeight*W._effHeight/W._height),Ot=W._effHeight-St-2*n.scrollBarMargin,jt=W._height-W._effHeight,ur=Ot/jt,ar=Math.min(W._scrollY||0,jt);be.attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-lt,x:lt/2,y:lt/2}),fe.select("rect").attr({width:W._width-2*lt+n.scrollBarWidth+n.scrollBarMargin,height:W._effHeight-2*lt,x:lt,y:lt+ar}),r.setClipUrl(Ae,se,N),Ee(ar,St,ur),ie.on("wheel",function(){ar=x.constrain(W._scrollY+g.event.deltaY/Ot*jt,0,jt),Ee(ar,St,ur),ar!==0&&ar!==jt&&g.event.preventDefault()});var Cr,vr,_r,yt=function(rt,dt,xt){var It=(xt-dt)/ur+rt;return x.constrain(It,0,jt)},Fe=function(rt,dt,xt){var It=(dt-xt)/ur+rt;return x.constrain(It,0,jt)},Ke=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"?Cr=rt.changedTouches[0].clientY:Cr=rt.clientY,_r=ar}).on("drag",function(){var rt=g.event.sourceEvent;rt.buttons===2||rt.ctrlKey||(rt.type==="touchmove"?vr=rt.changedTouches[0].clientY:vr=rt.clientY,ar=yt(_r,Cr,vr),Ee(ar,St,ur))});Ze.call(Ke);var Ne=g.behavior.drag().on("dragstart",function(){var rt=g.event.sourceEvent;rt.type==="touchstart"&&(Cr=rt.changedTouches[0].clientY,_r=ar)}).on("drag",function(){var rt=g.event.sourceEvent;rt.type==="touchmove"&&(vr=rt.changedTouches[0].clientY,ar=Fe(_r,Cr,vr),Ee(ar,St,ur))});Ae.call(Ne)}function Ee(rt,dt,xt){W._scrollY=N._fullLayout[ue]._scrollY=rt,r.setTranslate(Ae,0,-rt),r.setRect(Ze,W._width,n.scrollBarMargin+rt*xt,n.scrollBarWidth,dt),fe.select("rect").attr("y",lt+rt)}if(N._context.edits.legendPosition){var Ve,ke,Te,Le;ie.classed("cursor-move",!0),t.init({element:ie.node(),gd:N,prepFn:function(rt){if(rt.target!==Ze.node()){var dt=r.getTranslate(ie);Te=dt.x,Le=dt.y}},moveFn:function(rt,dt){if(Te!==void 0&&Le!==void 0){var xt=Te+rt,It=Le+dt;r.setTranslate(ie,xt,It),Ve=t.align(xt,W._width,et.l,et.l+et.w,W.xanchor),ke=t.align(It+W._height,-W._height,et.t+et.h,et.t,W.yanchor)}},doneFn:function(){if(Ve!==void 0&&ke!==void 0){var rt={};rt[ue+".x"]=Ve,rt[ue+".y"]=ke,M.call("_guiRelayout",N,rt)}},clickFn:function(rt,dt){var xt=he.selectAll("g.traces").filter(function(){var It=this.getBoundingClientRect();return dt.clientX>=It.left&&dt.clientX<=It.right&&dt.clientY>=It.top&&dt.clientY<=It.bottom});xt.size()>0&&b(N,ie,xt,rt,dt)}})}}],N)}}function m(N,U,W){var Q=N[0],ue=Q.width,se=U.entrywidthmode,he=Q.trace.legendwidth||U.entrywidth;return se==="fraction"?U._maxWidth*he:W+(he||ue)}function b(N,U,W,Q,ue){var se=W.data()[0][0].trace,he={event:ue,node:W.node(),curveNumber:se.index,expandedIndex:se.index,data:N.data,layout:N.layout,frames:N._transitionData._frames,config:N._context,fullData:N._fullData,fullLayout:N._fullLayout};se._group&&(he.group=se._group),M.traceIs(se,"pie-like")&&(he.label=W.datum()[0].label);var G=e.triggerHandler(N,"plotly_legendclick",he);if(Q===1){if(G===!1)return;U._clickTimeout=setTimeout(function(){N._fullLayout&&i(W,N,Q)},N._context.doubleClickDelay)}else if(Q===2){U._clickTimeout&&clearTimeout(U._clickTimeout),N._legendMouseDownTime=0;var $=e.triggerHandler(N,"plotly_legenddoubleclick",he);$!==!1&&G!==!1&&i(W,N,Q)}}function d(N,U,W){var Q=I(W),ue=N.data()[0][0],se=ue.trace,he=M.traceIs(se,"pie-like"),G=!W._inHover&&U._context.edits.legendText&&!he,$=W._maxNameLength,J,Z;ue.groupTitle?(J=ue.groupTitle.text,Z=ue.groupTitle.font):(Z=W.font,W.entries?J=ue.text:(J=he?ue.label:se.name,se._meta&&(J=x.templateString(J,se._meta))));var re=x.ensureSingle(N,"text",Q+"text");re.attr("text-anchor","start").call(r.font,Z).text(G?u(J,$):J);var ne=W.indentation+W.itemwidth+n.itemGap*2;a.positionText(re,ne,0),G?re.call(a.makeEditable,{gd:U,text:J}).call(f,N,U,W).on("edit",function(j){this.text(u(j,$)).call(f,N,U,W);var ee=ue.trace._fullInput||{},ie={};return ie.name=j,ee._isShape?M.call("_guiRelayout",U,"shapes["+se.index+"].name",ie.name):M.call("_guiRestyle",U,ie,se.index)}):f(re,N,U,W)}function u(N,U){var W=Math.max(4,U);if(N&&N.trim().length>=W/2)return N;N=N||"";for(var Q=W-N.length;Q>0;Q--)N+=" ";return N}function y(N,U,W){var Q=U._context.doubleClickDelay,ue,se=1,he=x.ensureSingle(N,"rect",W+"toggle",function(G){U._context.staticPlot||G.style("cursor","pointer").attr("pointer-events","all"),G.call(o.fill,"rgba(0,0,0,0)")});U._context.staticPlot||(he.on("mousedown",function(){ue=new Date().getTime(),ue-U._legendMouseDownTime<Q?se+=1:(se=1,U._legendMouseDownTime=ue)}),he.on("mouseup",function(){if(!(U._dragged||U._editing)){var G=U._fullLayout[W];new Date().getTime()-U._legendMouseDownTime>Q&&(se=Math.max(se-1,1)),b(U,G,N,se,g.event)}}))}function f(N,U,W,Q,ue){Q._inHover&&N.attr("data-notex",!0),a.convertToTspans(N,W,function(){P(U,W,Q,ue)})}function P(N,U,W,Q){var ue=N.data()[0][0];if(!W._inHover&&ue&&!ue.trace.showlegend){N.remove();return}var se=N.select("g[class*=math-group]"),he=se.node(),G=I(W);W||(W=U._fullLayout[G]);var $=W.borderwidth,J;Q===_?J=W.title.font:ue.groupTitle?J=ue.groupTitle.font:J=W.font;var Z=J.size*c,re,ne;if(he){var j=r.bBox(he);re=j.height,ne=j.width,Q===_?r.setTranslate(se,$,$+re*.75):r.setTranslate(se,0,re*.25)}else{var ee="."+G+(Q===_?"title":"")+"text",ie=N.select(ee),fe=a.lineCount(ie),be=ie.node();if(re=Z*fe,ne=be?r.bBox(be).width:0,Q===_)W.title.side==="left"&&(ne+=n.itemGap*2),a.positionText(ie,$+n.titlePad,$+Z);else{var Ae=n.itemGap*2+W.indentation+W.itemwidth;ue.groupTitle&&(Ae=n.itemGap,ne-=W.indentation+W.itemwidth),a.positionText(ie,Ae,-Z*((fe-1)/2-.3))}}Q===_?(W._titleWidth=ne,W._titleHeight=re):(ue.lineHeight=Z,ue.height=Math.max(re,16)+3,ue.width=ne)}function L(N){var U=0,W=0,Q=N.title.side;return Q&&(Q.indexOf("left")!==-1&&(U=N._titleWidth),Q.indexOf("top")!==-1&&(W=N._titleHeight)),[U,W]}function z(N,U,W,Q){var ue=N._fullLayout,se=I(Q);Q||(Q=ue[se]);var he=ue._size,G=l.isVertical(Q),$=l.isGrouped(Q),J=Q.entrywidthmode==="fraction",Z=Q.borderwidth,re=2*Z,ne=n.itemGap,j=Q.indentation+Q.itemwidth+ne*2,ee=2*(Z+ne),ie=O(Q),fe=Q.y<0||Q.y===0&&ie==="top",be=Q.y>1||Q.y===1&&ie==="bottom",Ae=Q.tracegroupgap,Be={};Q._maxHeight=Math.max(fe||be?ue.height/2:he.h,30);var Ie=0;Q._width=0,Q._height=0;var Ze=L(Q);if(G)W.each(function(_r){var yt=_r[0].height;r.setTranslate(this,Z+Ze[0],Z+Ze[1]+Q._height+yt/2+ne),Q._height+=yt,Q._width=Math.max(Q._width,_r[0].width)}),Ie=j+Q._width,Q._width+=ne+j+re,Q._height+=ee,$&&(U.each(function(_r,yt){r.setTranslate(this,0,yt*Q.tracegroupgap)}),Q._height+=(Q._lgroupsLength-1)*Q.tracegroupgap);else{var at=B(Q),it=Q.x<0||Q.x===0&&at==="right",et=Q.x>1||Q.x===1&&at==="left",lt=be||fe,Me=ue.width/2;Q._maxWidth=Math.max(it?lt&&at==="left"?he.l+he.w:Me:et?lt&&at==="right"?he.r+he.w:Me:he.w,2*j);var ge=0,ce=0;W.each(function(_r){var yt=m(_r,Q,j);ge=Math.max(ge,yt),ce+=yt}),Ie=null;var ze=0;if($){var tt=0,nt=0,Qe=0;U.each(function(){var _r=0,yt=0;g.select(this).selectAll("g.traces").each(function(Ke){var Ne=m(Ke,Q,j),Ee=Ke[0].height;r.setTranslate(this,Ze[0],Ze[1]+Z+ne+Ee/2+yt),yt+=Ee,_r=Math.max(_r,Ne),Be[Ke[0].trace.legendgroup]=_r});var Fe=_r+ne;nt>0&&Fe+Z+nt>Q._maxWidth?(ze=Math.max(ze,nt),nt=0,Qe+=tt+Ae,tt=yt):tt=Math.max(tt,yt),r.setTranslate(this,nt,Qe),nt+=Fe}),Q._width=Math.max(ze,nt)+Z,Q._height=Qe+tt+ee}else{var Ct=W.size(),St=ce+re+(Ct-1)*ne<Q._maxWidth,Ot=0,jt=0,ur=0,ar=0;W.each(function(_r){var yt=_r[0].height,Fe=m(_r,Q,j,$),Ke=St?Fe:ge;J||(Ke+=ne),Ke+Z+jt-ne>=Q._maxWidth&&(ze=Math.max(ze,ar),jt=0,ur+=Ot,Q._height+=Ot,Ot=0),r.setTranslate(this,Ze[0]+Z+jt,Ze[1]+Z+ur+yt/2+ne),ar=jt+Fe+ne,jt+=Ke,Ot=Math.max(Ot,yt)}),St?(Q._width=jt+re,Q._height=Ot+ee):(Q._width=Math.max(ze,ar)+re,Q._height+=Ot+ee)}}Q._width=Math.ceil(Math.max(Q._width+Ze[0],Q._titleWidth+2*(Z+n.titlePad))),Q._height=Math.ceil(Math.max(Q._height+Ze[1],Q._titleHeight+2*(Z+n.itemGap))),Q._effHeight=Math.min(Q._height,Q._maxHeight);var Cr=N._context.edits,vr=Cr.legendText||Cr.legendPosition;W.each(function(_r){var yt=g.select(this).select("."+se+"toggle"),Fe=_r[0].height,Ke=_r[0].trace.legendgroup,Ne=m(_r,Q,j);$&&Ke!==""&&(Ne=Be[Ke]);var Ee=vr?j:Ie||Ne;!G&&!J&&(Ee+=ne/2),r.setRect(yt,0,-Fe/2,Ee,Fe)})}function F(N,U,W,Q){var ue=N._fullLayout,se=ue[U],he=B(se),G=O(se),$=se.xref==="paper",J=se.yref==="paper";N._fullLayout._reservedMargin[U]={};var Z=se.y<.5?"b":"t",re=se.x<.5?"l":"r",ne={r:ue.width-W,l:W+se._width,b:ue.height-Q,t:Q+se._effHeight};if($&&J)return A.autoMargin(N,U,{x:se.x,y:se.y,l:se._width*h[he],r:se._width*v[he],b:se._effHeight*v[G],t:se._effHeight*h[G]});$?N._fullLayout._reservedMargin[U][Z]=ne[Z]:J||se.orientation==="v"?N._fullLayout._reservedMargin[U][re]=ne[re]:N._fullLayout._reservedMargin[U][Z]=ne[Z]}function B(N){return x.isRightAnchor(N)?"right":x.isCenterAnchor(N)?"center":"left"}function O(N){return x.isBottomAnchor(N)?"bottom":x.isMiddleAnchor(N)?"middle":"top"}function I(N){return N._id||"legend"}}}),gS=Ye({"src/components/fx/hover.js"(X){"use strict";var H=_n(),g=jo(),x=bh(),A=ta(),M=A.pushUnique,e=A.strTranslate,t=A.strRotate,r=$y(),o=jl(),a=lO(),i=Bo(),n=Fn(),s=bp(),c=Co(),h=wh().zindexSeparator,v=Hn(),p=Qp(),T=x_(),l=pS(),_=mS(),w=T.YANGLE,S=Math.PI*w/180,E=1/Math.sin(S),m=Math.cos(S),b=Math.sin(S),d=T.HOVERARROWSIZE,u=T.HOVERTEXTPAD,y={box:!0,ohlc:!0,violin:!0,candlestick:!0},f={scatter:!0,scattergl:!0,splom:!0};function P(j,ee){return j.distance-ee.distance}X.hover=function(ee,ie,fe,be){ee=A.getGraphDiv(ee);var Ae=ie.target;A.throttle(ee._fullLayout._uid+T.HOVERID,T.HOVERMINTIME,function(){L(ee,ie,fe,be,Ae)})},X.loneHover=function(ee,ie){var fe=!0;Array.isArray(ee)||(fe=!1,ee=[ee]);var be=ie.gd,Ae=Z(be),Be=re(be),Ie=ee.map(function(ze){var tt=ze._x0||ze.x0||ze.x||0,nt=ze._x1||ze.x1||ze.x||0,Qe=ze._y0||ze.y0||ze.y||0,Ct=ze._y1||ze.y1||ze.y||0,St=ze.eventData;if(St){var Ot=Math.min(tt,nt),jt=Math.max(tt,nt),ur=Math.min(Qe,Ct),ar=Math.max(Qe,Ct),Cr=ze.trace;if(v.traceIs(Cr,"gl3d")){var vr=be._fullLayout[Cr.scene]._scene.container,_r=vr.offsetLeft,yt=vr.offsetTop;Ot+=_r,jt+=_r,ur+=yt,ar+=yt}St.bbox={x0:Ot+Be,x1:jt+Be,y0:ur+Ae,y1:ar+Ae},ie.inOut_bbox&&ie.inOut_bbox.push(St.bbox)}else St=!1;return{color:ze.color||n.defaultLine,x0:ze.x0||ze.x||0,x1:ze.x1||ze.x||0,y0:ze.y0||ze.y||0,y1:ze.y1||ze.y||0,xLabel:ze.xLabel,yLabel:ze.yLabel,zLabel:ze.zLabel,text:ze.text,name:ze.name,idealAlign:ze.idealAlign,borderColor:ze.borderColor,fontFamily:ze.fontFamily,fontSize:ze.fontSize,fontColor:ze.fontColor,fontWeight:ze.fontWeight,fontStyle:ze.fontStyle,fontVariant:ze.fontVariant,nameLength:ze.nameLength,textAlign:ze.textAlign,trace:ze.trace||{index:0,hoverinfo:""},xa:{_offset:0},ya:{_offset:0},index:0,hovertemplate:ze.hovertemplate||!1,hovertemplateLabels:ze.hovertemplateLabels||!1,eventData:St}}),Ze=!1,at=B(Ie,{gd:be,hovermode:"closest",rotateLabels:Ze,bgColor:ie.bgColor||n.background,container:H.select(ie.container),outerContainer:ie.outerContainer||ie.container}),it=at.hoverLabels,et=5,lt=0,Me=0;it.sort(function(ze,tt){return ze.y0-tt.y0}).each(function(ze,tt){var nt=ze.y0-ze.by/2;nt-et<lt?ze.offset=lt-nt+et:ze.offset=0,lt=nt+ze.by+ze.offset,tt===ie.anchorIndex&&(Me=ze.offset)}).each(function(ze){ze.offset-=Me});var ge=be._fullLayout._invScaleX,ce=be._fullLayout._invScaleY;return W(it,Ze,ge,ce),fe?it:it.node()};function L(j,ee,ie,fe,be){ie||(ie="xy"),typeof ie=="string"&&(ie=ie.split(h)[0]);var Ae=Array.isArray(ie)?ie:[ie],Be,Ie=j._fullLayout,Ze=Ie.hoversubplots,at=Ie._plots||[],it=at[ie],et=Ie._has("cartesian"),lt=ee.hovermode||Ie.hovermode,Me=(lt||"").charAt(0)==="x",ge=(lt||"").charAt(0)==="y",ce,ze;if(et&&(Me||ge)&&Ze==="axis"){for(var tt=Ae.length,nt=0;nt<tt;nt++)if(Be=Ae[nt],at[Be]){ce=c.getFromId(j,Be,"x"),ze=c.getFromId(j,Be,"y");var Qe=(Me?ce:ze)._subplotsWith;if(Qe&&Qe.length)for(var Ct=0;Ct<Qe.length;Ct++)M(Ae,Qe[Ct])}}if(it&&Ze!=="single"){var St=it.overlays.map(function(Xi){return Xi.id});Ae=Ae.concat(St)}for(var Ot=Ae.length,jt=new Array(Ot),ur=new Array(Ot),ar=!1,Cr=0;Cr<Ot;Cr++)if(Be=Ae[Cr],at[Be])ar=!0,jt[Cr]=at[Be].xaxis,ur[Cr]=at[Be].yaxis;else if(Ie[Be]&&Ie[Be]._subplot){var vr=Ie[Be]._subplot;jt[Cr]=vr.xaxis,ur[Cr]=vr.yaxis}else{A.warn("Unrecognized subplot: "+Be);return}if(lt&&!ar&&(lt="closest"),["x","y","closest","x unified","y unified"].indexOf(lt)===-1||!j.calcdata||j.querySelector(".zoombox")||j._dragging)return s.unhoverRaw(j,ee);var _r=Ie.hoverdistance;_r===-1&&(_r=1/0);var yt=Ie.spikedistance;yt===-1&&(yt=1/0);var Fe=[],Ke=[],Ne,Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt,Kt,sr={hLinePoint:null,vLinePoint:null},sa=!1;if(Array.isArray(ee))for(lt="array",Ve=0;Ve<ee.length;Ve++)Te=j.calcdata[ee[Ve].curveNumber||0],Te&&(Le=Te[0].trace,Te[0].trace.hoverinfo!=="skip"&&(Ke.push(Te),Le.orientation==="h"&&(sa=!0)));else{var Aa=j.calcdata.slice();for(Aa.sort(function(Xi,Jo){var zo=Xi[0].trace.zorder||0,as=Jo[0].trace.zorder||0;return zo-as}),ke=0;ke<Aa.length;ke++)Te=Aa[ke],Le=Te[0].trace,Le.hoverinfo!=="skip"&&p.isTraceInSubplots(Le,Ae)&&(Ke.push(Te),Le.orientation==="h"&&(sa=!0));var La=!be,ka,Ga;if(La)"xpx"in ee?ka=ee.xpx:ka=jt[0]._length/2,"ypx"in ee?Ga=ee.ypx:Ga=ur[0]._length/2;else{if(r.triggerHandler(j,"plotly_beforehover",ee)===!1)return;var Ma=be.getBoundingClientRect();ka=ee.clientX-Ma.left,Ga=ee.clientY-Ma.top,Ie._calcInverseTransform(j);var Ua=A.apply3DTransform(Ie._invTransform)(ka,Ga);if(ka=Ua[0],Ga=Ua[1],ka<0||ka>jt[0]._length||Ga<0||Ga>ur[0]._length)return s.unhoverRaw(j,ee)}if(ee.pointerX=ka+jt[0]._offset,ee.pointerY=Ga+ur[0]._offset,"xval"in ee?Ne=p.flat(Ae,ee.xval):Ne=p.p2c(jt,ka),"yval"in ee?Ee=p.flat(Ae,ee.yval):Ee=p.p2c(ur,Ga),!g(Ne[0])||!g(Ee[0]))return A.warn("Fx.hover failed",ee,j),s.unhoverRaw(j,ee)}var ni=1/0;function Wt(Xi,Jo){for(ke=0;ke<Ke.length;ke++)if(Te=Ke[ke],!(!Te||!Te[0]||!Te[0].trace)&&(Le=Te[0].trace,!(Le.visible!==!0||Le._length===0)&&["carpet","contourcarpet"].indexOf(Le._module.name)===-1)){if(xt=lt,p.isUnifiedHover(xt)&&(xt=xt.charAt(0)),Le.type==="splom"?(dt=0,rt=Ae[dt]):(rt=p.getSubplot(Le),dt=Ae.indexOf(rt)),Gt={cd:Te,trace:Le,xa:jt[dt],ya:ur[dt],maxHoverDistance:_r,maxSpikeDistance:yt,index:!1,distance:Math.min(ni,_r),spikeDistance:1/0,xSpike:void 0,ySpike:void 0,color:n.defaultLine,name:Le.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},Ie[rt]&&(Gt.subplot=Ie[rt]._subplot),Ie._splomScenes&&Ie._splomScenes[Le.uid]&&(Gt.scene=Ie._splomScenes[Le.uid]),xt==="array"){var zo=ee[ke];"pointNumber"in zo?(Gt.index=zo.pointNumber,xt="closest"):(xt="","xval"in zo&&(It=zo.xval,xt="x"),"yval"in zo&&(Bt=zo.yval,xt=xt?"closest":"y"))}else Xi!==void 0&&Jo!==void 0?(It=Xi,Bt=Jo):(It=Ne[dt],Bt=Ee[dt]);if(Kt=Fe.length,_r!==0)if(Le._module&&Le._module.hoverPoints){var as=Le._module.hoverPoints(Gt,It,Bt,xt,{finiteRange:!0,hoverLayer:Ie._hoverlayer,hoversubplots:Ze,gd:j});if(as)for(var Pn,go=0;go<as.length;go++)Pn=as[go],g(Pn.x0)&&g(Pn.y0)&&Fe.push(Q(Pn,lt))}else A.log("Unrecognized trace type in hover:",Le);if(lt==="closest"&&Fe.length>Kt&&(Fe.splice(0,Kt),ni=Fe[0].distance),et&&yt!==0&&Fe.length===0){Gt.distance=yt,Gt.index=!1;var In=Le._module.hoverPoints(Gt,It,Bt,"closest",{hoverLayer:Ie._hoverlayer});if(In&&(In=In.filter(function(ys){return ys.spikeDistance<=yt})),In&&In.length){var Do,Ho=In.filter(function(ys){return ys.xa.showspikes&&ys.xa.spikesnap!=="hovered data"});if(Ho.length){var Qo=Ho[0];g(Qo.x0)&&g(Qo.y0)&&(Do=Vt(Qo),(!sr.vLinePoint||sr.vLinePoint.spikeDistance>Do.spikeDistance)&&(sr.vLinePoint=Do))}var Xn=In.filter(function(ys){return ys.ya.showspikes&&ys.ya.spikesnap!=="hovered data"});if(Xn.length){var po=Xn[0];g(po.x0)&&g(po.y0)&&(Do=Vt(po),(!sr.hLinePoint||sr.hLinePoint.spikeDistance>Do.spikeDistance)&&(sr.hLinePoint=Do))}}}}}Wt();function zt(Xi,Jo,zo){for(var as=null,Pn=1/0,go,In=0;In<Xi.length;In++)ce&&ce._id!==Xi[In].xa._id||ze&&ze._id!==Xi[In].ya._id||(go=Xi[In].spikeDistance,zo&&In===0&&(go=-1/0),go<=Pn&&go<=Jo&&(as=Xi[In],Pn=go));return as}function Vt(Xi){return Xi?{xa:Xi.xa,ya:Xi.ya,x:Xi.xSpike!==void 0?Xi.xSpike:(Xi.x0+Xi.x1)/2,y:Xi.ySpike!==void 0?Xi.ySpike:(Xi.y0+Xi.y1)/2,distance:Xi.distance,spikeDistance:Xi.spikeDistance,curveNumber:Xi.trace.index,color:Xi.color,pointNumber:Xi.index}:null}var Ut={fullLayout:Ie,container:Ie._hoverlayer,event:ee},xr=j._spikepoints,Zr={vLinePoint:sr.vLinePoint,hLinePoint:sr.hLinePoint};j._spikepoints=Zr;var pa=function(){var Xi=Fe.filter(function(zo){return ce&&ce._id===zo.xa._id&&ze&&ze._id===zo.ya._id}),Jo=Fe.filter(function(zo){return!(ce&&ce._id===zo.xa._id&&ze&&ze._id===zo.ya._id)});Xi.sort(P),Jo.sort(P),Fe=Xi.concat(Jo),Fe=$(Fe,lt)};pa();var Xr=lt.charAt(0),Ea=(Xr==="x"||Xr==="y")&&Fe[0]&&f[Fe[0].trace.type];if(et&&yt!==0&&Fe.length!==0){var Fa=Fe.filter(function(Xi){return Xi.ya.showspikes}),qa=zt(Fa,yt,Ea);sr.hLinePoint=Vt(qa);var ya=Fe.filter(function(Xi){return Xi.xa.showspikes}),$a=zt(ya,yt,Ea);sr.vLinePoint=Vt($a)}if(Fe.length===0){var mt=s.unhoverRaw(j,ee);return et&&(sr.hLinePoint!==null||sr.vLinePoint!==null)&&he(xr)&&ue(j,sr,Ut),mt}if(et&&he(xr)&&ue(j,sr,Ut),p.isXYhover(xt)&&Fe[0].length!==0&&Fe[0].trace.type!=="splom"){var gt=Fe[0];y[gt.trace.type]?Fe=Fe.filter(function(Xi){return Xi.trace.index===gt.trace.index}):Fe=[gt];var Er=Fe.length,kr=J("x",gt,Ie),br=J("y",gt,Ie);Wt(kr,br);var Tr=[],Mr={},Fr=0,Lr=function(Xi){var Jo=y[Xi.trace.type]?z(Xi):Xi.trace.index;if(!Mr[Jo])Fr++,Mr[Jo]=Fr,Tr.push(Xi);else{var zo=Mr[Jo]-1,as=Tr[zo];zo>0&&Math.abs(Xi.distance)<Math.abs(as.distance)&&(Tr[zo]=Xi)}},Jr;for(Jr=0;Jr<Er;Jr++)Lr(Fe[Jr]);for(Jr=Fe.length-1;Jr>Er-1;Jr--)Lr(Fe[Jr]);Fe=Tr,pa()}var oa=j._hoverdata,ca=[],kt=Z(j),ir=re(j);for(Ve=0;Ve<Fe.length;Ve++){var mr=Fe[Ve],$r=p.makeEventData(mr,mr.trace,mr.cd);if(mr.hovertemplate!==!1){var ma=!1;mr.cd[mr.index]&&mr.cd[mr.index].ht&&(ma=mr.cd[mr.index].ht),mr.hovertemplate=ma||mr.trace.hovertemplate||!1}if(mr.xa&&mr.ya){var Ba=mr.x0+mr.xa._offset,Ca=mr.x1+mr.xa._offset,da=mr.y0+mr.ya._offset,Sa=mr.y1+mr.ya._offset,Ti=Math.min(Ba,Ca),ai=Math.max(Ba,Ca),an=Math.min(da,Sa),sn=Math.max(da,Sa);$r.bbox={x0:Ti+ir,x1:ai+ir,y0:an+kt,y1:sn+kt}}mr.eventData=[$r],ca.push($r)}j._hoverdata=ca;var Mn=lt==="y"&&(Ke.length>1||Fe.length>1)||lt==="closest"&&sa&&Fe.length>1,On=n.combine(Ie.plot_bgcolor||n.background,Ie.paper_bgcolor),$n=B(Fe,{gd:j,hovermode:lt,rotateLabels:Mn,bgColor:On,container:Ie._hoverlayer,outerContainer:Ie._paper.node(),commonLabelOpts:Ie.hoverlabel,hoverdistance:Ie.hoverdistance}),Cn=$n.hoverLabels;if(p.isUnifiedHover(lt)||(I(Cn,Mn,Ie,$n.commonLabelBoundingBox),W(Cn,Mn,Ie._invScaleX,Ie._invScaleY)),be&&be.tagName){var Lo=v.getComponentMethod("annotations","hasClickToShow")(j,ca);a(H.select(be),Lo?"pointer":"")}!be||fe||!se(j,ee,oa)||(oa&&j.emit("plotly_unhover",{event:ee,points:oa}),j.emit("plotly_hover",{event:ee,points:j._hoverdata,xaxes:jt,yaxes:ur,xvals:Ne,yvals:Ee}))}function z(j){return[j.trace.index,j.index,j.x0,j.y0,j.name,j.attr,j.xa?j.xa._id:"",j.ya?j.ya._id:""].join(",")}var F=/<extra>([\s\S]*)<\/extra>/;function B(j,ee){var ie=ee.gd,fe=ie._fullLayout,be=ee.hovermode,Ae=ee.rotateLabels,Be=ee.bgColor,Ie=ee.container,Ze=ee.outerContainer,at=ee.commonLabelOpts||{};if(j.length===0)return[[]];var it=ee.fontFamily||T.HOVERFONT,et=ee.fontSize||T.HOVERFONTSIZE,lt=ee.fontWeight||fe.font.weight,Me=ee.fontStyle||fe.font.style,ge=ee.fontVariant||fe.font.variant,ce=ee.fontTextcase||fe.font.textcase,ze=ee.fontLineposition||fe.font.lineposition,tt=ee.fontShadow||fe.font.shadow,nt=j[0],Qe=nt.xa,Ct=nt.ya,St=be.charAt(0),Ot=St+"Label",jt=nt[Ot];if(jt===void 0&&Qe.type==="multicategory")for(var ur=0;ur<j.length&&(jt=j[ur][Ot],jt===void 0);ur++);var ar=ne(ie,Ze),Cr=ar.top,vr=ar.width,_r=ar.height,yt=jt!==void 0&&nt.distance<=ee.hoverdistance&&(be==="x"||be==="y");if(yt){var Fe=!0,Ke,Ne;for(Ke=0;Ke<j.length;Ke++)if(Fe&&j[Ke].zLabel===void 0&&(Fe=!1),Ne=j[Ke].hoverinfo||j[Ke].trace.hoverinfo,Ne){var Ee=Array.isArray(Ne)?Ne:Ne.split("+");if(Ee.indexOf("all")===-1&&Ee.indexOf(be)===-1){yt=!1;break}}Fe&&(yt=!1)}var Ve=Ie.selectAll("g.axistext").data(yt?[0]:[]);Ve.enter().append("g").classed("axistext",!0),Ve.exit().remove();var ke={minX:0,maxX:0,minY:0,maxY:0};if(Ve.each(function(){var ya=H.select(this),$a=A.ensureSingle(ya,"path","",function(Ti){Ti.style({"stroke-width":"1px"})}),mt=A.ensureSingle(ya,"text","",function(Ti){Ti.attr("data-notex",1)}),gt=at.bgcolor||n.defaultLine,Er=at.bordercolor||n.contrast(gt),kr=n.contrast(gt),br=at.font,Tr={weight:br.weight||lt,style:br.style||Me,variant:br.variant||ge,textcase:br.textcase||ce,lineposition:br.lineposition||ze,shadow:br.shadow||tt,family:br.family||it,size:br.size||et,color:br.color||kr};$a.style({fill:gt,stroke:Er}),mt.text(jt).call(i.font,Tr).call(o.positionText,0,0).call(o.convertToTspans,ie),ya.attr("transform","");var Mr=ne(ie,mt.node()),Fr,Lr;if(be==="x"){var Jr=Qe.side==="top"?"-":"";mt.attr("text-anchor","middle").call(o.positionText,0,Qe.side==="top"?Cr-Mr.bottom-d-u:Cr-Mr.top+d+u),Fr=Qe._offset+(nt.x0+nt.x1)/2,Lr=Ct._offset+(Qe.side==="top"?0:Ct._length);var oa=Mr.width/2+u,ca=Fr;Fr<oa?ca=oa:Fr>fe.width-oa&&(ca=fe.width-oa),$a.attr("d","M"+(Fr-ca)+",0L"+(Fr-ca+d)+","+Jr+d+"H"+oa+"v"+Jr+(u*2+Mr.height)+"H"+-oa+"V"+Jr+d+"H"+(Fr-ca-d)+"Z"),Fr=ca,ke.minX=Fr-oa,ke.maxX=Fr+oa,Qe.side==="top"?(ke.minY=Lr-(u*2+Mr.height),ke.maxY=Lr-u):(ke.minY=Lr+u,ke.maxY=Lr+(u*2+Mr.height))}else{var kt,ir,mr;Ct.side==="right"?(kt="start",ir=1,mr="",Fr=Qe._offset+Qe._length):(kt="end",ir=-1,mr="-",Fr=Qe._offset),Lr=Ct._offset+(nt.y0+nt.y1)/2,mt.attr("text-anchor",kt),$a.attr("d","M0,0L"+mr+d+","+d+"V"+(u+Mr.height/2)+"h"+mr+(u*2+Mr.width)+"V-"+(u+Mr.height/2)+"H"+mr+d+"V-"+d+"Z"),ke.minY=Lr-(u+Mr.height/2),ke.maxY=Lr+(u+Mr.height/2),Ct.side==="right"?(ke.minX=Fr+d,ke.maxX=Fr+d+(u*2+Mr.width)):(ke.minX=Fr-d-(u*2+Mr.width),ke.maxX=Fr-d);var $r=Mr.height/2,ma=Cr-Mr.top-$r,Ba="clip"+fe._uid+"commonlabel"+Ct._id,Ca;if(Fr<Mr.width+2*u+d){Ca="M-"+(d+u)+"-"+$r+"h-"+(Mr.width-u)+"V"+$r+"h"+(Mr.width-u)+"Z";var da=Mr.width-Fr+u;o.positionText(mt,da,ma),kt==="end"&&mt.selectAll("tspan").each(function(){var Ti=H.select(this),ai=i.tester.append("text").text(Ti.text()).call(i.font,Tr),an=ne(ie,ai.node());Math.round(an.width)<Math.round(Mr.width)&&Ti.attr("x",da-an.width),ai.remove()})}else o.positionText(mt,ir*(u+d),ma),Ca=null;var Sa=fe._topclips.selectAll("#"+Ba).data(Ca?[0]:[]);Sa.enter().append("clipPath").attr("id",Ba).append("path"),Sa.exit().remove(),Sa.select("path").attr("d",Ca),i.setClipUrl(mt,Ca?Ba:null,ie)}ya.attr("transform",e(Fr,Lr))}),p.isUnifiedHover(be)){Ie.selectAll("g.hovertext").remove();var Te=j.filter(function(ya){return ya.hoverinfo!=="none"});if(Te.length===0)return[];var Le=fe.hoverlabel,rt=Le.font,dt={showlegend:!0,legend:{title:{text:jt,font:rt},font:rt,bgcolor:Le.bgcolor,bordercolor:Le.bordercolor,borderwidth:1,tracegroupgap:7,traceorder:fe.legend?fe.legend.traceorder:void 0,orientation:"v"}},xt={font:rt};l(dt,xt,ie._fullData);var It=xt.legend;It.entries=[];for(var Bt=0;Bt<Te.length;Bt++){var Gt=Te[Bt];if(Gt.hoverinfo!=="none"){var Kt=O(Gt,!0,be,fe,jt),sr=Kt[0],sa=Kt[1];Gt.name=sa,sa!==""?Gt.text=sa+" : "+sr:Gt.text=sr;var Aa=Gt.cd[Gt.index];Aa&&(Aa.mc&&(Gt.mc=Aa.mc),Aa.mcc&&(Gt.mc=Aa.mcc),Aa.mlc&&(Gt.mlc=Aa.mlc),Aa.mlcc&&(Gt.mlc=Aa.mlcc),Aa.mlw&&(Gt.mlw=Aa.mlw),Aa.mrc&&(Gt.mrc=Aa.mrc),Aa.dir&&(Gt.dir=Aa.dir)),Gt._distinct=!0,It.entries.push([Gt])}}It.entries.sort(function(ya,$a){return ya[0].trace.index-$a[0].trace.index}),It.layer=Ie,It._inHover=!0,It._groupTitleFont=Le.grouptitlefont,_(ie,It);var La=Ie.select("g.legend"),ka=ne(ie,La.node()),Ga=ka.width+2*u,Ma=ka.height+2*u,Ua=Te[0],ni=(Ua.x0+Ua.x1)/2,Wt=(Ua.y0+Ua.y1)/2,zt=!(v.traceIs(Ua.trace,"bar-like")||v.traceIs(Ua.trace,"box-violin")),Vt,Ut;St==="y"?zt?(Ut=Wt-u,Vt=Wt+u):(Ut=Math.min.apply(null,Te.map(function(ya){return Math.min(ya.y0,ya.y1)})),Vt=Math.max.apply(null,Te.map(function(ya){return Math.max(ya.y0,ya.y1)}))):Ut=Vt=A.mean(Te.map(function(ya){return(ya.y0+ya.y1)/2}))-Ma/2;var xr,Zr;St==="x"?zt?(xr=ni+u,Zr=ni-u):(xr=Math.max.apply(null,Te.map(function(ya){return Math.max(ya.x0,ya.x1)})),Zr=Math.min.apply(null,Te.map(function(ya){return Math.min(ya.x0,ya.x1)}))):xr=Zr=A.mean(Te.map(function(ya){return(ya.x0+ya.x1)/2}))-Ga/2;var pa=Qe._offset,Xr=Ct._offset;Vt+=Xr,xr+=pa,Zr+=pa-Ga,Ut+=Xr-Ma;var Ea,Fa;return xr+Ga<vr&&xr>=0?Ea=xr:Zr+Ga<vr&&Zr>=0?Ea=Zr:pa+Ga<vr?Ea=pa:xr-ni<ni-Zr+Ga?Ea=vr-Ga:Ea=0,Ea+=u,Vt+Ma<_r&&Vt>=0?Fa=Vt:Ut+Ma<_r&&Ut>=0?Fa=Ut:Xr+Ma<_r?Fa=Xr:Vt-Wt<Wt-Ut+Ma?Fa=_r-Ma:Fa=0,Fa+=u,La.attr("transform",e(Ea-1,Fa-1)),La}var qa=Ie.selectAll("g.hovertext").data(j,function(ya){return z(ya)});return qa.enter().append("g").classed("hovertext",!0).each(function(){var ya=H.select(this);ya.append("rect").call(n.fill,n.addOpacity(Be,.8)),ya.append("text").classed("name",!0),ya.append("path").style("stroke-width","1px"),ya.append("text").classed("nums",!0).call(i.font,{weight:lt,style:Me,variant:ge,textcase:ce,lineposition:ze,shadow:tt,family:it,size:et})}),qa.exit().remove(),qa.each(function(ya){var $a=H.select(this).attr("transform",""),mt=ya.color;Array.isArray(mt)&&(mt=mt[ya.eventData[0].pointNumber]);var gt=ya.bgcolor||mt,Er=n.combine(n.opacity(gt)?gt:n.defaultLine,Be),kr=n.combine(n.opacity(mt)?mt:n.defaultLine,Be),br=ya.borderColor||n.contrast(Er),Tr=O(ya,yt,be,fe,jt,$a),Mr=Tr[0],Fr=Tr[1],Lr=$a.select("text.nums").call(i.font,{family:ya.fontFamily||it,size:ya.fontSize||et,color:ya.fontColor||br,weight:ya.fontWeight||lt,style:ya.fontStyle||Me,variant:ya.fontVariant||ge,textcase:ya.fontTextcase||ce,lineposition:ya.fontLineposition||ze,shadow:ya.fontShadow||tt}).text(Mr).attr("data-notex",1).call(o.positionText,0,0).call(o.convertToTspans,ie),Jr=$a.select("text.name"),oa=0,ca=0;if(Fr&&Fr!==Mr){Jr.call(i.font,{family:ya.fontFamily||it,size:ya.fontSize||et,color:kr,weight:ya.fontWeight||lt,style:ya.fontStyle||Me,variant:ya.fontVariant||ge,textcase:ya.fontTextcase||ce,lineposition:ya.fontLineposition||ze,shadow:ya.fontShadow||tt}).text(Fr).attr("data-notex",1).call(o.positionText,0,0).call(o.convertToTspans,ie);var kt=ne(ie,Jr.node());oa=kt.width+2*u,ca=kt.height+2*u}else Jr.remove(),$a.select("rect").remove();$a.select("path").style({fill:Er,stroke:br});var ir=ya.xa._offset+(ya.x0+ya.x1)/2,mr=ya.ya._offset+(ya.y0+ya.y1)/2,$r=Math.abs(ya.x1-ya.x0),ma=Math.abs(ya.y1-ya.y0),Ba=ne(ie,Lr.node()),Ca=Ba.width/fe._invScaleX,da=Ba.height/fe._invScaleY;ya.ty0=(Cr-Ba.top)/fe._invScaleY,ya.bx=Ca+2*u,ya.by=Math.max(da+2*u,ca),ya.anchor="start",ya.txwidth=Ca,ya.tx2width=oa,ya.offset=0;var Sa=(Ca+d+u+oa)*fe._invScaleX,Ti,ai;if(Ae)ya.pos=ir,Ti=mr+ma/2+Sa<=_r,ai=mr-ma/2-Sa>=0,(ya.idealAlign==="top"||!Ti)&&ai?(mr-=ma/2,ya.anchor="end"):Ti?(mr+=ma/2,ya.anchor="start"):ya.anchor="middle",ya.crossPos=mr;else{if(ya.pos=mr,Ti=ir+$r/2+Sa<=vr,ai=ir-$r/2-Sa>=0,(ya.idealAlign==="left"||!Ti)&&ai)ir-=$r/2,ya.anchor="end";else if(Ti)ir+=$r/2,ya.anchor="start";else{ya.anchor="middle";var an=Sa/2,sn=ir+an-vr,Mn=ir-an;sn>0&&(ir-=sn),Mn<0&&(ir+=-Mn)}ya.crossPos=ir}Lr.attr("text-anchor",ya.anchor),oa&&Jr.attr("text-anchor",ya.anchor),$a.attr("transform",e(ir,mr)+(Ae?t(w):""))}),{hoverLabels:qa,commonLabelBoundingBox:ke}}function O(j,ee,ie,fe,be,Ae){var Be="",Ie="";j.nameOverride!==void 0&&(j.name=j.nameOverride),j.name&&(j.trace._meta&&(j.name=A.templateString(j.name,j.trace._meta)),Be=G(j.name,j.nameLength));var Ze=ie.charAt(0),at=Ze==="x"?"y":"x";j.zLabel!==void 0?(j.xLabel!==void 0&&(Ie+="x: "+j.xLabel+"<br>"),j.yLabel!==void 0&&(Ie+="y: "+j.yLabel+"<br>"),j.trace.type!=="choropleth"&&j.trace.type!=="choroplethmapbox"&&j.trace.type!=="choroplethmap"&&(Ie+=(Ie?"z: ":"")+j.zLabel)):ee&&j[Ze+"Label"]===be?Ie=j[at+"Label"]||"":j.xLabel===void 0?j.yLabel!==void 0&&j.trace.type!=="scattercarpet"&&(Ie=j.yLabel):j.yLabel===void 0?Ie=j.xLabel:Ie="("+j.xLabel+", "+j.yLabel+")",(j.text||j.text===0)&&!Array.isArray(j.text)&&(Ie+=(Ie?"<br>":"")+j.text),j.extraText!==void 0&&(Ie+=(Ie?"<br>":"")+j.extraText),Ae&&Ie===""&&!j.hovertemplate&&(Be===""&&Ae.remove(),Ie=Be);var it=j.hovertemplate||!1;if(it){var et=j.hovertemplateLabels||j;j[Ze+"Label"]!==be&&(et[Ze+"other"]=et[Ze+"Val"],et[Ze+"otherLabel"]=et[Ze+"Label"]),Ie=A.hovertemplateString(it,et,fe._d3locale,j.eventData[0]||{},j.trace._meta),Ie=Ie.replace(F,function(lt,Me){return Be=G(Me,j.nameLength),""})}return[Ie,Be]}function I(j,ee,ie,fe){var be=ee?"xa":"ya",Ae=ee?"ya":"xa",Be=0,Ie=1,Ze=j.size(),at=new Array(Ze),it=0,et=fe.minX,lt=fe.maxX,Me=fe.minY,ge=fe.maxY,ce=function(Ne){return Ne*ie._invScaleX},ze=function(Ne){return Ne*ie._invScaleY};j.each(function(Ne){var Ee=Ne[be],Ve=Ne[Ae],ke=Ee._id.charAt(0)==="x",Te=Ee.range;it===0&&Te&&Te[0]>Te[1]!==ke&&(Ie=-1);var Le=0,rt=ke?ie.width:ie.height;if(ie.hovermode==="x"||ie.hovermode==="y"){var dt=N(Ne,ee),xt=Ne.anchor,It=xt==="end"?-1:1,Bt,Gt;if(xt==="middle")Bt=Ne.crossPos+(ke?ze(dt.y-Ne.by/2):ce(Ne.bx/2+Ne.tx2width/2)),Gt=Bt+(ke?ze(Ne.by):ce(Ne.bx));else if(ke)Bt=Ne.crossPos+ze(d+dt.y)-ze(Ne.by/2-d),Gt=Bt+ze(Ne.by);else{var Kt=ce(It*d+dt.x),sr=Kt+ce(It*Ne.bx);Bt=Ne.crossPos+Math.min(Kt,sr),Gt=Ne.crossPos+Math.max(Kt,sr)}ke?Me!==void 0&&ge!==void 0&&Math.min(Gt,ge)-Math.max(Bt,Me)>1&&(Ve.side==="left"?(Le=Ve._mainLinePosition,rt=ie.width):rt=Ve._mainLinePosition):et!==void 0&&lt!==void 0&&Math.min(Gt,lt)-Math.max(Bt,et)>1&&(Ve.side==="top"?(Le=Ve._mainLinePosition,rt=ie.height):rt=Ve._mainLinePosition)}at[it++]=[{datum:Ne,traceIndex:Ne.trace.index,dp:0,pos:Ne.pos,posref:Ne.posref,size:Ne.by*(ke?E:1)/2,pmin:Le,pmax:rt}]}),at.sort(function(Ne,Ee){return Ne[0].posref-Ee[0].posref||Ie*(Ee[0].traceIndex-Ne[0].traceIndex)});var tt,nt,Qe,Ct,St,Ot,jt;function ur(Ne){var Ee=Ne[0],Ve=Ne[Ne.length-1];if(nt=Ee.pmin-Ee.pos-Ee.dp+Ee.size,Qe=Ve.pos+Ve.dp+Ve.size-Ee.pmax,nt>.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp+=nt;tt=!1}if(!(Qe<.01)){if(nt<-.01){for(St=Ne.length-1;St>=0;St--)Ne[St].dp-=Qe;tt=!1}if(tt){var ke=0;for(Ct=0;Ct<Ne.length;Ct++)Ot=Ne[Ct],Ot.pos+Ot.dp+Ot.size>Ee.pmax&&ke++;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos>Ee.pmax-1&&(Ot.del=!0,ke--);for(Ct=0;Ct<Ne.length&&!(ke<=0);Ct++)if(Ot=Ne[Ct],Ot.pos<Ee.pmin+1)for(Ot.del=!0,ke--,Qe=Ot.size*2,St=Ne.length-1;St>=0;St--)Ne[St].dp-=Qe;for(Ct=Ne.length-1;Ct>=0&&!(ke<=0);Ct--)Ot=Ne[Ct],Ot.pos+Ot.dp+Ot.size>Ee.pmax&&(Ot.del=!0,ke--)}}}for(;!tt&&Be<=Ze;){for(Be++,tt=!0,Ct=0;Ct<at.length-1;){var ar=at[Ct],Cr=at[Ct+1],vr=ar[ar.length-1],_r=Cr[0];if(nt=vr.pos+vr.dp+vr.size-_r.pos-_r.dp+_r.size,nt>.01){for(St=Cr.length-1;St>=0;St--)Cr[St].dp+=nt;for(ar.push.apply(ar,Cr),at.splice(Ct+1,1),jt=0,St=ar.length-1;St>=0;St--)jt+=ar[St].dp;for(Qe=jt/ar.length,St=ar.length-1;St>=0;St--)ar[St].dp-=Qe;tt=!1}else Ct++}at.forEach(ur)}for(Ct=at.length-1;Ct>=0;Ct--){var yt=at[Ct];for(St=yt.length-1;St>=0;St--){var Fe=yt[St],Ke=Fe.datum;Ke.offset=Fe.dp,Ke.del=Fe.del}}}function N(j,ee){var ie=0,fe=j.offset;return ee&&(fe*=-b,ie=j.offset*m),{x:ie,y:fe}}function U(j){var ee={start:1,end:-1,middle:0}[j.anchor],ie=ee*(d+u),fe=ie+ee*(j.txwidth+u),be=j.anchor==="middle";return be&&(ie-=j.tx2width/2,fe+=j.txwidth/2+u),{alignShift:ee,textShiftX:ie,text2ShiftX:fe}}function W(j,ee,ie,fe){var be=function(Be){return Be*ie},Ae=function(Be){return Be*fe};j.each(function(Be){var Ie=H.select(this);if(Be.del)return Ie.remove();var Ze=Ie.select("text.nums"),at=Be.anchor,it=at==="end"?-1:1,et=U(Be),lt=N(Be,ee),Me=lt.x,ge=lt.y,ce=at==="middle";Ie.select("path").attr("d",ce?"M-"+be(Be.bx/2+Be.tx2width/2)+","+Ae(ge-Be.by/2)+"h"+be(Be.bx)+"v"+Ae(Be.by)+"h-"+be(Be.bx)+"Z":"M0,0L"+be(it*d+Me)+","+Ae(d+ge)+"v"+Ae(Be.by/2-d)+"h"+be(it*Be.bx)+"v-"+Ae(Be.by)+"H"+be(it*d+Me)+"V"+Ae(ge-d)+"Z");var ze=Me+et.textShiftX,tt=ge+Be.ty0-Be.by/2+u,nt=Be.textAlign||"auto";nt!=="auto"&&(nt==="left"&&at!=="start"?(Ze.attr("text-anchor","start"),ze=ce?-Be.bx/2-Be.tx2width/2+u:-Be.bx-u):nt==="right"&&at!=="end"&&(Ze.attr("text-anchor","end"),ze=ce?Be.bx/2-Be.tx2width/2-u:Be.bx+u)),Ze.call(o.positionText,be(ze),Ae(tt)),Be.tx2width&&(Ie.select("text.name").call(o.positionText,be(et.text2ShiftX+et.alignShift*u+Me),Ae(ge+Be.ty0-Be.by/2+u)),Ie.select("rect").call(i.setRect,be(et.text2ShiftX+(et.alignShift-1)*Be.tx2width/2+Me),Ae(ge-Be.by/2-1),be(Be.tx2width),Ae(Be.by+2)))})}function Q(j,ee){var ie=j.index,fe=j.trace||{},be=j.cd[0],Ae=j.cd[ie]||{};function Be(lt){return lt||g(lt)&&lt===0}var Ie=Array.isArray(ie)?function(lt,Me){var ge=A.castOption(be,ie,lt);return Be(ge)?ge:A.extractOption({},fe,"",Me)}:function(lt,Me){return A.extractOption(Ae,fe,lt,Me)};function Ze(lt,Me,ge){var ce=Ie(Me,ge);Be(ce)&&(j[lt]=ce)}if(Ze("hoverinfo","hi","hoverinfo"),Ze("bgcolor","hbg","hoverlabel.bgcolor"),Ze("borderColor","hbc","hoverlabel.bordercolor"),Ze("fontFamily","htf","hoverlabel.font.family"),Ze("fontSize","hts","hoverlabel.font.size"),Ze("fontColor","htc","hoverlabel.font.color"),Ze("fontWeight","htw","hoverlabel.font.weight"),Ze("fontStyle","hty","hoverlabel.font.style"),Ze("fontVariant","htv","hoverlabel.font.variant"),Ze("nameLength","hnl","hoverlabel.namelength"),Ze("textAlign","hta","hoverlabel.align"),j.posref=ee==="y"||ee==="closest"&&fe.orientation==="h"?j.xa._offset+(j.x0+j.x1)/2:j.ya._offset+(j.y0+j.y1)/2,j.x0=A.constrain(j.x0,0,j.xa._length),j.x1=A.constrain(j.x1,0,j.xa._length),j.y0=A.constrain(j.y0,0,j.ya._length),j.y1=A.constrain(j.y1,0,j.ya._length),j.xLabelVal!==void 0&&(j.xLabel="xLabel"in j?j.xLabel:c.hoverLabelText(j.xa,j.xLabelVal,fe.xhoverformat),j.xVal=j.xa.c2d(j.xLabelVal)),j.yLabelVal!==void 0&&(j.yLabel="yLabel"in j?j.yLabel:c.hoverLabelText(j.ya,j.yLabelVal,fe.yhoverformat),j.yVal=j.ya.c2d(j.yLabelVal)),j.zLabelVal!==void 0&&j.zLabel===void 0&&(j.zLabel=String(j.zLabelVal)),!isNaN(j.xerr)&&!(j.xa.type==="log"&&j.xerr<=0)){var at=c.tickText(j.xa,j.xa.c2l(j.xerr),"hover").text;j.xerrneg!==void 0?j.xLabel+=" +"+at+" / -"+c.tickText(j.xa,j.xa.c2l(j.xerrneg),"hover").text:j.xLabel+=" \xB1 "+at,ee==="x"&&(j.distance+=1)}if(!isNaN(j.yerr)&&!(j.ya.type==="log"&&j.yerr<=0)){var it=c.tickText(j.ya,j.ya.c2l(j.yerr),"hover").text;j.yerrneg!==void 0?j.yLabel+=" +"+it+" / -"+c.tickText(j.ya,j.ya.c2l(j.yerrneg),"hover").text:j.yLabel+=" \xB1 "+it,ee==="y"&&(j.distance+=1)}var et=j.hoverinfo||j.trace.hoverinfo;return et&&et!=="all"&&(et=Array.isArray(et)?et:et.split("+"),et.indexOf("x")===-1&&(j.xLabel=void 0),et.indexOf("y")===-1&&(j.yLabel=void 0),et.indexOf("z")===-1&&(j.zLabel=void 0),et.indexOf("text")===-1&&(j.text=void 0),et.indexOf("name")===-1&&(j.name=void 0)),j}function ue(j,ee,ie){var fe=ie.container,be=ie.fullLayout,Ae=be._size,Be=ie.event,Ie=!!ee.hLinePoint,Ze=!!ee.vLinePoint,at,it;if(fe.selectAll(".spikeline").remove(),!!(Ze||Ie)){var et=n.combine(be.plot_bgcolor,be.paper_bgcolor);if(Ie){var lt=ee.hLinePoint,Me,ge;at=lt&&lt.xa,it=lt&&lt.ya;var ce=it.spikesnap;ce==="cursor"?(Me=Be.pointerX,ge=Be.pointerY):(Me=at._offset+lt.x,ge=it._offset+lt.y);var ze=x.readability(lt.color,et)<1.5?n.contrast(et):lt.color,tt=it.spikemode,nt=it.spikethickness,Qe=it.spikecolor||ze,Ct=c.getPxPosition(j,it),St,Ot;if(tt.indexOf("toaxis")!==-1||tt.indexOf("across")!==-1){if(tt.indexOf("toaxis")!==-1&&(St=Ct,Ot=Me),tt.indexOf("across")!==-1){var jt=it._counterDomainMin,ur=it._counterDomainMax;it.anchor==="free"&&(jt=Math.min(jt,it.position),ur=Math.max(ur,it.position)),St=Ae.l+jt*Ae.w,Ot=Ae.l+ur*Ae.w}fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt,stroke:Qe,"stroke-dasharray":i.dashStyle(it.spikedash,nt)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:St,x2:Ot,y1:ge,y2:ge,"stroke-width":nt+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}tt.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Ct+(it.side!=="right"?nt:-nt),cy:ge,r:nt,fill:Qe}).classed("spikeline",!0)}if(Ze){var ar=ee.vLinePoint,Cr,vr;at=ar&&ar.xa,it=ar&&ar.ya;var _r=at.spikesnap;_r==="cursor"?(Cr=Be.pointerX,vr=Be.pointerY):(Cr=at._offset+ar.x,vr=it._offset+ar.y);var yt=x.readability(ar.color,et)<1.5?n.contrast(et):ar.color,Fe=at.spikemode,Ke=at.spikethickness,Ne=at.spikecolor||yt,Ee=c.getPxPosition(j,at),Ve,ke;if(Fe.indexOf("toaxis")!==-1||Fe.indexOf("across")!==-1){if(Fe.indexOf("toaxis")!==-1&&(Ve=Ee,ke=vr),Fe.indexOf("across")!==-1){var Te=at._counterDomainMin,Le=at._counterDomainMax;at.anchor==="free"&&(Te=Math.min(Te,at.position),Le=Math.max(Le,at.position)),Ve=Ae.t+(1-Le)*Ae.h,ke=Ae.t+(1-Te)*Ae.h}fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke,stroke:Ne,"stroke-dasharray":i.dashStyle(at.spikedash,Ke)}).classed("spikeline",!0).classed("crisp",!0),fe.insert("line",":first-child").attr({x1:Cr,x2:Cr,y1:Ve,y2:ke,"stroke-width":Ke+2,stroke:et}).classed("spikeline",!0).classed("crisp",!0)}Fe.indexOf("marker")!==-1&&fe.insert("circle",":first-child").attr({cx:Cr,cy:Ee-(at.side!=="top"?Ke:-Ke),r:Ke,fill:Ne}).classed("spikeline",!0)}}}function se(j,ee,ie){if(!ie||ie.length!==j._hoverdata.length)return!0;for(var fe=ie.length-1;fe>=0;fe--){var be=ie[fe],Ae=j._hoverdata[fe];if(be.curveNumber!==Ae.curveNumber||String(be.pointNumber)!==String(Ae.pointNumber)||String(be.pointNumbers)!==String(Ae.pointNumbers))return!0}return!1}function he(j,ee){return!ee||ee.vLinePoint!==j._spikepoints.vLinePoint||ee.hLinePoint!==j._spikepoints.hLinePoint}function G(j,ee){return o.plainText(j||"",{len:ee,allowedTags:["br","sub","sup","b","i","em","s","u"]})}function $(j,ee){for(var ie=ee.charAt(0),fe=[],be=[],Ae=[],Be=0;Be<j.length;Be++){var Ie=j[Be];v.traceIs(Ie.trace,"bar-like")||v.traceIs(Ie.trace,"box-violin")?Ae.push(Ie):Ie.trace[ie+"period"]?be.push(Ie):fe.push(Ie)}return fe.concat(be).concat(Ae)}function J(j,ee,ie){var fe=ee[j+"a"],be=ee[j+"Val"],Ae=ee.cd[0];if(fe.type==="category"||fe.type==="multicategory")be=fe._categoriesMap[be];else if(fe.type==="date"){var Be=ee.trace[j+"periodalignment"];if(Be){var Ie=ee.cd[ee.index],Ze=Ie[j+"Start"];Ze===void 0&&(Ze=Ie[j]);var at=Ie[j+"End"];at===void 0&&(at=Ie[j]);var it=at-Ze;Be==="end"?be+=it:Be==="middle"&&(be+=it/2)}be=fe.d2c(be)}return Ae&&Ae.t&&Ae.t.posLetter===fe._id&&(ie.boxmode==="group"||ie.violinmode==="group")&&(be+=Ae.t.dPos),be}function Z(j){return j.offsetTop+j.clientTop}function re(j){return j.offsetLeft+j.clientLeft}function ne(j,ee){var ie=j._fullLayout,fe=ee.getBoundingClientRect(),be=fe.left,Ae=fe.top,Be=be+fe.width,Ie=Ae+fe.height,Ze=A.apply3DTransform(ie._invTransform)(be,Ae),at=A.apply3DTransform(ie._invTransform)(Be,Ie),it=Ze[0],et=Ze[1],lt=at[0],Me=at[1];return{x:it,y:et,width:lt-it,height:Me-et,top:Math.min(et,Me),left:Math.min(it,lt),right:Math.max(it,lt),bottom:Math.max(et,Me)}}}}),S_=Ye({"src/components/fx/hoverlabel_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Qp().isUnifiedHover;H.exports=function(e,t,r,o){o=o||{};var a=t.legend;function i(n){o.font[n]||(o.font[n]=a?t.legend.font[n]:t.font[n])}t&&A(t.hovermode)&&(o.font||(o.font={}),i("size"),i("family"),i("color"),i("weight"),i("style"),i("variant"),a?(o.bgcolor||(o.bgcolor=x.combine(t.legend.bgcolor,t.paper_bgcolor)),o.bordercolor||(o.bordercolor=t.legend.bordercolor)):o.bgcolor||(o.bgcolor=t.paper_bgcolor)),r("hoverlabel.bgcolor",o.bgcolor),r("hoverlabel.bordercolor",o.bordercolor),r("hoverlabel.namelength",o.namelength),g.coerceFont(r,"hoverlabel.font",o.font),r("hoverlabel.align",o.align)}}}),hO=Ye({"src/components/fx/layout_global_defaults.js"(X,H){"use strict";var g=ta(),x=S_(),A=Zm();H.exports=function(e,t){function r(o,a){return g.coerce(e,t,A,o,a)}x(e,t,r)}}}),pO=Ye({"src/components/fx/defaults.js"(X,H){"use strict";var g=ta(),x=Yy(),A=S_();H.exports=function(e,t,r,o){function a(n,s){return g.coerce(e,t,x,n,s)}var i=g.extendFlat({},o.hoverlabel);t.hovertemplate&&(i.namelength=-1),A(e,t,a,i)}}}),yS=Ye({"src/components/fx/hovermode_defaults.js"(X,H){"use strict";var g=ta(),x=Zm();H.exports=function(M,e){function t(r,o){return e[r]!==void 0?e[r]:g.coerce(M,e,x,r,o)}return t("clickmode"),t("hoversubplots"),t("hovermode")}}}),dO=Ye({"src/components/fx/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Zm(),A=yS(),M=S_();H.exports=function(t,r){function o(v,p){return g.coerce(t,r,x,v,p)}var a=A(t,r);a&&(o("hoverdistance"),o("spikedistance"));var i=o("dragmode");i==="select"&&o("selectdirection");var n=r._has("mapbox"),s=r._has("map"),c=r._has("geo"),h=r._basePlotModules.length;r.dragmode==="zoom"&&((n||s||c)&&h===1||(n||s)&&c&&h===2)&&(r.dragmode="pan"),M(t,r,o),g.coerceFont(o,"hoverlabel.grouptitlefont",r.hoverlabel.font)}}}),vO=Ye({"src/components/fx/calc.js"(X,H){"use strict";var g=ta(),x=Hn();H.exports=function(e){var t=e.calcdata,r=e._fullLayout;function o(c){return function(h){return g.coerceHoverinfo({hoverinfo:h},{_module:c._module},r)}}for(var a=0;a<t.length;a++){var i=t[a],n=i[0].trace;if(!x.traceIs(n,"pie-like")){var s=x.traceIs(n,"2dMap")?A:g.fillArray;s(n.hoverinfo,i,"hi",o(n)),n.hovertemplate&&s(n.hovertemplate,i,"ht"),n.hoverlabel&&(s(n.hoverlabel.bgcolor,i,"hbg"),s(n.hoverlabel.bordercolor,i,"hbc"),s(n.hoverlabel.font.size,i,"hts"),s(n.hoverlabel.font.color,i,"htc"),s(n.hoverlabel.font.family,i,"htf"),s(n.hoverlabel.font.weight,i,"htw"),s(n.hoverlabel.font.style,i,"hty"),s(n.hoverlabel.font.variant,i,"htv"),s(n.hoverlabel.namelength,i,"hnl"),s(n.hoverlabel.align,i,"hta"))}}};function A(M,e,t,r){r=r||g.identity,Array.isArray(M)&&(e[0][t]=r(M))}}}),mO=Ye({"src/components/fx/click.js"(X,H){"use strict";var g=Hn(),x=gS().hover;H.exports=function(M,e,t){var r=g.getComponentMethod("annotations","onClick")(M,M._hoverdata);t!==void 0&&x(M,e,t,!0);function o(){M.emit("plotly_click",{points:M._hoverdata,event:e})}M._hoverdata&&e&&e.target&&(r&&r.then?r.then(o):o(),e.stopImmediatePropagation&&e.stopImmediatePropagation())}}}),Lc=Ye({"src/components/fx/index.js"(X,H){"use strict";var g=_n(),x=ta(),A=bp(),M=Qp(),e=Zm(),t=gS();H.exports={moduleType:"component",name:"fx",constants:x_(),schema:{layout:e},attributes:Yy(),layoutAttributes:e,supplyLayoutGlobalDefaults:hO(),supplyDefaults:pO(),supplyLayoutDefaults:dO(),calc:vO(),getDistanceFunction:M.getDistanceFunction,getClosest:M.getClosest,inbox:M.inbox,quadrature:M.quadrature,appendArrayPointValue:M.appendArrayPointValue,castHoverOption:o,castHoverinfo:a,hover:t.hover,unhover:A.unhover,loneHover:t.loneHover,loneUnhover:r,click:mO()};function r(i){var n=x.isD3Selection(i)?i:g.select(i);n.selectAll("g.hovertext").remove(),n.selectAll(".spikeline").remove()}function o(i,n,s){return x.castOption(i,n,"hoverlabel."+s)}function a(i,n,s){function c(h){return x.coerceHoverinfo({hoverinfo:h},{_module:i._module},n)}return x.castOption(i,s,"hoverinfo",c)}}}),Jd=Ye({"src/components/dragelement/helpers.js"(X){"use strict";X.selectMode=function(H){return H==="lasso"||H==="select"},X.drawMode=function(H){return H==="drawclosedpath"||H==="drawopenpath"||H==="drawline"||H==="drawrect"||H==="drawcircle"},X.openMode=function(H){return H==="drawline"||H==="drawopenpath"},X.rectMode=function(H){return H==="select"||H==="drawline"||H==="drawrect"||H==="drawcircle"},X.freeMode=function(H){return H==="lasso"||H==="drawclosedpath"||H==="drawopenpath"},X.selectingOrDrawing=function(H){return X.freeMode(H)||X.rectMode(H)}}}),M_=Ye({"src/lib/clear_gl_canvases.js"(X,H){"use strict";H.exports=function(x){var A=x._fullLayout;A._glcanvas&&A._glcanvas.size()&&A._glcanvas.each(function(M){M.regl&&M.regl.clear({color:!0,depth:!0})})}}}),b2=Ye({"src/fonts/ploticon.js"(X,H){"use strict";H.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'>"," <title>plotly-logomark</title>"," <g id='symbol'>"," <rect fill='#000' x='0' y='0' width='132' height='132' rx='18' ry='18'/>"," <circle fill='#9EF' cx='102' cy='30' r='6'/>"," <circle fill='#BAC' cx='78' cy='30' r='6'/>"," <circle fill='#BAC' cx='78' cy='54' r='6'/>"," <circle fill='#D69' cx='54' cy='30' r='6'/>"," <circle fill='#F26' cx='30' cy='30' r='6'/>"," <circle fill='#F26' cx='30' cy='54' r='6'/>"," <path fill='#FFF' d='M30,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,30,72Z'/>"," <path fill='#FFF' d='M78,72a6,6,0,0,0-6,6v24a6,6,0,0,0,12,0V78A6,6,0,0,0,78,72Z'/>"," <path fill='#FFF' d='M54,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,54,48Z'/>"," <path fill='#FFF' d='M102,48a6,6,0,0,0-6,6v48a6,6,0,0,0,12,0V54A6,6,0,0,0,102,48Z'/>"," </g>","</svg>"].join("")}}}}),w2=Ye({"src/components/shapes/draw_newshape/constants.js"(X,H){"use strict";var g=32;H.exports={CIRCLE_SIDES:g,i000:0,i090:g/4,i180:g/2,i270:g/4*3,cos45:Math.cos(Math.PI/4),sin45:Math.sin(Math.PI/4),SQRT2:Math.sqrt(2)}}}),T2=Ye({"src/components/selections/helpers.js"(X,H){"use strict";var g=ta().strTranslate;function x(t,r){switch(t.type){case"log":return t.p2d(r);case"date":return t.p2r(r,0,t.calendar);default:return t.p2r(r)}}function A(t,r){switch(t.type){case"log":return t.d2p(r);case"date":return t.r2p(r,0,t.calendar);default:return t.r2p(r)}}function M(t){var r=t._id.charAt(0)==="y"?1:0;return function(o){return x(t,o[r])}}function e(t){return g(t.xaxis._offset,t.yaxis._offset)}H.exports={p2r:x,r2p:A,axValue:M,getTransform:e}}}),tg=Ye({"src/components/shapes/draw_newshape/helpers.js"(X){"use strict";var H=A_(),g=w2(),x=g.CIRCLE_SIDES,A=g.SQRT2,M=T2(),e=M.p2r,t=M.r2p,r=[0,3,4,5,6,1,2],o=[0,3,4,1,2];X.writePaths=function(n){var s=n.length;if(!s)return"M0,0Z";for(var c="",h=0;h<s;h++)for(var v=n[h].length,p=0;p<v;p++){var T=n[h][p][0];if(T==="Z")c+="Z";else for(var l=n[h][p].length,_=0;_<l;_++){var w=_;T==="Q"||T==="S"?w=o[_]:T==="C"&&(w=r[_]),c+=n[h][p][w],_>0&&_<l-1&&(c+=",")}}return c},X.readPaths=function(n,s,c,h){var v=H(n),p=[],T=-1,l=function(){T++,p[T]=[]},_,w=0,S=0,E,m,b=function(){E=w,m=S};b();for(var d=0;d<v.length;d++){var u=[],y,f,P,L,z=v[d][0],F=z;switch(z){case"M":l(),w=+v[d][1],S=+v[d][2],u.push([F,w,S]),b();break;case"Q":case"S":y=+v[d][1],P=+v[d][2],w=+v[d][3],S=+v[d][4],u.push([F,w,S,y,P]);break;case"C":y=+v[d][1],P=+v[d][2],f=+v[d][3],L=+v[d][4],w=+v[d][5],S=+v[d][6],u.push([F,w,S,y,P,f,L]);break;case"T":case"L":w=+v[d][1],S=+v[d][2],u.push([F,w,S]);break;case"H":F="L",w=+v[d][1],u.push([F,w,S]);break;case"V":F="L",S=+v[d][1],u.push([F,w,S]);break;case"A":F="L";var B=+v[d][1],O=+v[d][2];+v[d][4]||(B=-B,O=-O);var I=w-B,N=S;for(_=1;_<=x/2;_++){var U=2*Math.PI*_/x;u.push([F,I+B*Math.cos(U),N+O*Math.sin(U)])}break;case"Z":(w!==E||S!==m)&&(w=E,S=m,u.push([F,w,S]));break}for(var W=(c||{}).domain,Q=s._fullLayout._size,ue=c&&c.xsizemode==="pixel",se=c&&c.ysizemode==="pixel",he=h===!1,G=0;G<u.length;G++){for(_=0;_+2<7;_+=2){var $=u[G][_+1],J=u[G][_+2];$===void 0||J===void 0||(w=$,S=J,c&&(c.xaxis&&c.xaxis.p2r?(he&&($-=c.xaxis._offset),ue?$=t(c.xaxis,c.xanchor)+$:$=e(c.xaxis,$)):(he&&($-=Q.l),W?$=W.x[0]+$/Q.w:$=$/Q.w),c.yaxis&&c.yaxis.p2r?(he&&(J-=c.yaxis._offset),se?J=t(c.yaxis,c.yanchor)-J:J=e(c.yaxis,J)):(he&&(J-=Q.t),W?J=W.y[1]-J/Q.h:J=1-J/Q.h)),u[G][_+1]=$,u[G][_+2]=J)}p[T].push(u[G].slice())}}return p};function a(n,s){return Math.abs(n-s)<=1e-6}function i(n,s){var c=s[1]-n[1],h=s[2]-n[2];return Math.sqrt(c*c+h*h)}X.pointsOnRectangle=function(n){var s=n.length;if(s!==5)return!1;for(var c=1;c<3;c++){var h=n[0][c]-n[1][c],v=n[3][c]-n[2][c];if(!a(h,v))return!1;var p=n[0][c]-n[3][c],T=n[1][c]-n[2][c];if(!a(p,T))return!1}return!a(n[0][1],n[1][1])&&!a(n[0][1],n[3][1])?!1:!!(i(n[0],n[1])*i(n[0],n[3]))},X.pointsOnEllipse=function(n){var s=n.length;if(s!==x+1)return!1;s=x;for(var c=0;c<s;c++){var h=(s*2-c)%s,v=(s/2+h)%s,p=(s/2+c)%s;if(!a(i(n[c],n[p]),i(n[h],n[v])))return!1}return!0},X.handleEllipse=function(n,s,c){if(!n)return[s,c];var h=X.ellipseOver({x0:s[0],y0:s[1],x1:c[0],y1:c[1]}),v=(h.x1+h.x0)/2,p=(h.y1+h.y0)/2,T=(h.x1-h.x0)/2,l=(h.y1-h.y0)/2;T||(T=l=l/A),l||(l=T=T/A);for(var _=[],w=0;w<x;w++){var S=w*2*Math.PI/x;_.push([v+T*Math.cos(S),p+l*Math.sin(S)])}return _},X.ellipseOver=function(n){var s=n.x0,c=n.y0,h=n.x1,v=n.y1,p=h-s,T=v-c;s-=p,c-=T;var l=(s+h)/2,_=(c+v)/2,w=A;return p*=w,T*=w,{x0:l-p,y0:_-T,x1:l+p,y1:_+T}},X.fixDatesForPaths=function(n,s,c){var h=s.type==="date",v=c.type==="date";if(!h&&!v)return n;for(var p=0;p<n.length;p++)for(var T=0;T<n[p].length;T++)for(var l=0;l+2<n[p][T].length;l+=2)h&&(n[p][T][l+1]=n[p][T][l+1].replace(" ","_")),v&&(n[p][T][l+2]=n[p][T][l+2].replace(" ","_"));return n}}}),A2=Ye({"src/components/shapes/draw_newshape/newshapes.js"(X,H){"use strict";var g=Jd(),x=g.drawMode,A=g.openMode,M=w2(),e=M.i000,t=M.i090,r=M.i180,o=M.i270,a=M.cos45,i=M.sin45,n=T2(),s=n.p2r,c=n.r2p,h=Jm(),v=h.clearOutline,p=tg(),T=p.readPaths,l=p.writePaths,_=p.ellipseOver,w=p.fixDatesForPaths;function S(m,b){if(m.length){var d=m[0][0];if(d){var u=b.gd,y=b.isActiveShape,f=b.dragmode,P=(u.layout||{}).shapes||[];if(!x(f)&&y!==void 0){var L=u._fullLayout._activeShapeIndex;if(L<P.length)switch(u._fullLayout.shapes[L].type){case"rect":f="drawrect";break;case"circle":f="drawcircle";break;case"line":f="drawline";break;case"path":var z=P[L].path||"";z[z.length-1]==="Z"?f="drawclosedpath":f="drawopenpath";break}}var F=E(m,b,f);v(u);for(var B=b.editHelpers,O=(B||{}).modifyItem,I=[],N=0;N<P.length;N++){var U=u._fullLayout.shapes[N];if(I[N]=U._input,y!==void 0&&N===u._fullLayout._activeShapeIndex){var W=F;switch(U.type){case"line":case"rect":case"circle":O("x0",W.x0-(U.x0shift||0)),O("x1",W.x1-(U.x1shift||0)),O("y0",W.y0-(U.y0shift||0)),O("y1",W.y1-(U.y1shift||0));break;case"path":O("path",W.path);break}}}return y===void 0?(I.push(F),I):B?B.getUpdateObj():{}}}}function E(m,b,d){var u=m[0][0],y=b.gd,f=u.getAttribute("d"),P=y._fullLayout.newshape,L=b.plotinfo,z=b.isActiveShape,F=L.xaxis,B=L.yaxis,O=!!L.domain||!L.xaxis,I=!!L.domain||!L.yaxis,N=A(d),U=T(f,y,L,z),W={editable:!0,visible:P.visible,name:P.name,showlegend:P.showlegend,legend:P.legend,legendwidth:P.legendwidth,legendgroup:P.legendgroup,legendgrouptitle:{text:P.legendgrouptitle.text,font:P.legendgrouptitle.font},legendrank:P.legendrank,label:P.label,xref:O?"paper":F._id,yref:I?"paper":B._id,layer:P.layer,opacity:P.opacity,line:{color:P.line.color,width:P.line.width,dash:P.line.dash}};N||(W.fillcolor=P.fillcolor,W.fillrule=P.fillrule);var Q;if(U.length===1&&(Q=U[0]),Q&&Q.length===5&&d==="drawrect")W.type="rect",W.x0=Q[0][1],W.y0=Q[0][2],W.x1=Q[2][1],W.y1=Q[2][2];else if(Q&&d==="drawline")W.type="line",W.x0=Q[0][1],W.y0=Q[0][2],W.x1=Q[1][1],W.y1=Q[1][2];else if(Q&&d==="drawcircle"){W.type="circle";var ue=Q[e][1],se=Q[t][1],he=Q[r][1],G=Q[o][1],$=Q[e][2],J=Q[t][2],Z=Q[r][2],re=Q[o][2],ne=L.xaxis&&(L.xaxis.type==="date"||L.xaxis.type==="log"),j=L.yaxis&&(L.yaxis.type==="date"||L.yaxis.type==="log");ne&&(ue=c(L.xaxis,ue),se=c(L.xaxis,se),he=c(L.xaxis,he),G=c(L.xaxis,G)),j&&($=c(L.yaxis,$),J=c(L.yaxis,J),Z=c(L.yaxis,Z),re=c(L.yaxis,re));var ee=(se+G)/2,ie=($+Z)/2,fe=(G-se+he-ue)/2,be=(re-J+Z-$)/2,Ae=_({x0:ee,y0:ie,x1:ee+fe*a,y1:ie+be*i});ne&&(Ae.x0=s(L.xaxis,Ae.x0),Ae.x1=s(L.xaxis,Ae.x1)),j&&(Ae.y0=s(L.yaxis,Ae.y0),Ae.y1=s(L.yaxis,Ae.y1)),W.x0=Ae.x0,W.y0=Ae.y0,W.x1=Ae.x1,W.y1=Ae.y1}else W.type="path",F&&B&&w(U,F,B),W.path=l(U),Q=null;return W}H.exports={newShapes:S,createShapeObj:E}}}),_S=Ye({"src/components/selections/draw_newselection/newselections.js"(X,H){"use strict";var g=Jd(),x=g.selectMode,A=Jm(),M=A.clearOutline,e=tg(),t=e.readPaths,r=e.writePaths,o=e.fixDatesForPaths;H.exports=function(i,n){if(i.length){var s=i[0][0];if(s){var c=s.getAttribute("d"),h=n.gd,v=h._fullLayout.newselection,p=n.plotinfo,T=p.xaxis,l=p.yaxis,_=n.isActiveSelection,w=n.dragmode,S=(h.layout||{}).selections||[];if(!x(w)&&_!==void 0){var E=h._fullLayout._activeSelectionIndex;if(E<S.length)switch(h._fullLayout.selections[E].type){case"rect":w="select";break;case"path":w="lasso";break}}var m=t(c,h,p,_),b={xref:T._id,yref:l._id,opacity:v.opacity,line:{color:v.line.color,width:v.line.width,dash:v.line.dash}},d;m.length===1&&(d=m[0]),d&&d.length===5&&w==="select"?(b.type="rect",b.x0=d[0][1],b.y0=d[0][2],b.x1=d[2][1],b.y1=d[2][2]):(b.type="path",T&&l&&o(m,T,l),b.path=r(m),d=null),M(h);for(var u=n.editHelpers,y=(u||{}).modifyItem,f=[],P=0;P<S.length;P++){var L=h._fullLayout.selections[P];if(!L){f[P]=L;continue}if(f[P]=L._input,_!==void 0&&P===h._fullLayout._activeSelectionIndex){var z=b;switch(L.type){case"rect":y("x0",z.x0),y("x1",z.x1),y("y0",z.y0),y("y1",z.y1);break;case"path":y("path",z.path);break}}}return _===void 0?(f.push(b),f):u?u.getUpdateObj():{}}}}}}),E_=Ye({"src/components/shapes/constants.js"(X,H){"use strict";H.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}}}}),rg=Ye({"src/components/shapes/helpers.js"(X){"use strict";var H=E_(),g=ta(),x=Co();X.rangeToShapePosition=function(e){return e.type==="log"?e.r2d:function(t){return t}},X.shapePositionToRange=function(e){return e.type==="log"?e.d2r:function(t){return t}},X.decodeDate=function(e){return function(t){return t.replace&&(t=t.replace("_"," ")),e(t)}},X.encodeDate=function(e){return function(t){return e(t).replace(" ","_")}},X.extractPathCoords=function(e,t,r){var o=[],a=e.match(H.segmentRE);return a.forEach(function(i){var n=t[i.charAt(0)].drawn;if(n!==void 0){var s=i.substr(1).match(H.paramRE);if(!(!s||s.length<n)){var c=s[n],h=r?c:g.cleanNumber(c);o.push(h)}}}),o},X.getDataToPixel=function(e,t,r,o,a){var i=e._fullLayout._size,n;if(t)if(a==="domain")n=function(c){return t._length*(o?1-c:c)+t._offset};else{var s=X.shapePositionToRange(t);n=function(c){var h=M(t,r);return t._offset+t.r2p(s(c,!0))+h},t.type==="date"&&(n=X.decodeDate(n))}else o?n=function(c){return i.t+i.h*(1-c)}:n=function(c){return i.l+i.w*c};return n},X.getPixelToData=function(e,t,r,o){var a=e._fullLayout._size,i;if(t)if(o==="domain")i=function(s){var c=(s-t._offset)/t._length;return r?1-c:c};else{var n=X.rangeToShapePosition(t);i=function(s){return n(t.p2r(s-t._offset))}}else r?i=function(s){return 1-(s-a.t)/a.h}:i=function(s){return(s-a.l)/a.w};return i},X.roundPositionForSharpStrokeRendering=function(e,t){var r=Math.round(t%2)===1,o=Math.round(e);return r?o+.5:o},X.makeShapesOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.shapes[t]||{},o=e._fullLayout._plots[r.xref+r.yref],a=!!o;return a?o._hadPlotinfo=!0:(o={},r.xref&&r.xref!=="paper"&&(o.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&r.yref!=="paper"&&(o.yaxis=e._fullLayout[r.yref+"axis"])),o.xsizemode=r.xsizemode,o.ysizemode=r.ysizemode,o.xanchor=r.xanchor,o.yanchor=r.yanchor,{options:r,plotinfo:o}},X.makeSelectionsOptionsAndPlotinfo=function(e,t){var r=e._fullLayout.selections[t]||{},o=e._fullLayout._plots[r.xref+r.yref],a=!!o;return a?o._hadPlotinfo=!0:(o={},r.xref&&(o.xaxis=e._fullLayout[r.xref+"axis"]),r.yref&&(o.yaxis=e._fullLayout[r.yref+"axis"])),{options:r,plotinfo:o}},X.getPathString=function(e,t){var r=t.type,o=x.getRefType(t.xref),a=x.getRefType(t.yref),i=x.getFromId(e,t.xref),n=x.getFromId(e,t.yref),s=e._fullLayout._size,c,h,v,p,T=M(i,t.x0shift),l=M(i,t.x1shift),_=M(n,t.y0shift),w=M(n,t.y1shift),S,E,m,b;if(i?o==="domain"?h=function(O){return i._offset+i._length*O}:(c=X.shapePositionToRange(i),h=function(O){return i._offset+i.r2p(c(O,!0))}):h=function(O){return s.l+s.w*O},n?a==="domain"?p=function(O){return n._offset+n._length*(1-O)}:(v=X.shapePositionToRange(n),p=function(O){return n._offset+n.r2p(v(O,!0))}):p=function(O){return s.t+s.h*(1-O)},r==="path")return i&&i.type==="date"&&(h=X.decodeDate(h)),n&&n.type==="date"&&(p=X.decodeDate(p)),A(t,h,p);if(t.xsizemode==="pixel"){var d=h(t.xanchor);S=d+t.x0+T,E=d+t.x1+l}else S=h(t.x0)+T,E=h(t.x1)+l;if(t.ysizemode==="pixel"){var u=p(t.yanchor);m=u-t.y0+_,b=u-t.y1+w}else m=p(t.y0)+_,b=p(t.y1)+w;if(r==="line")return"M"+S+","+m+"L"+E+","+b;if(r==="rect")return"M"+S+","+m+"H"+E+"V"+b+"H"+S+"Z";var y=(S+E)/2,f=(m+b)/2,P=Math.abs(y-S),L=Math.abs(f-m),z="A"+P+","+L,F=y+P+","+f,B=y+","+(f-L);return"M"+F+z+" 0 1,1 "+B+z+" 0 0,1 "+F+"Z"};function A(e,t,r){var o=e.path,a=e.xsizemode,i=e.ysizemode,n=e.xanchor,s=e.yanchor;return o.replace(H.segmentRE,function(c){var h=0,v=c.charAt(0),p=H.paramIsX[v],T=H.paramIsY[v],l=H.numParams[v],_=c.substr(1).replace(H.paramRE,function(w){return p[h]?a==="pixel"?w=t(n)+Number(w):w=t(w):T[h]&&(i==="pixel"?w=r(s)-Number(w):w=r(w)),h++,h>l&&(w="X"),w});return h>l&&(_=_.replace(/[\s,]*X.*/,""),g.log("Ignoring extra params in segment "+c)),v+_})}function M(e,t){t=t||0;var r=0;return t&&e&&(e.type==="category"||e.type==="multicategory")&&(r=(e.r2p(1)-e.r2p(0))*t),r}}}),xS=Ye({"src/components/shapes/display_labels.js"(X,H){"use strict";var g=ta(),x=Co(),A=jl(),M=Bo(),e=tg().readPaths,t=rg(),r=t.getPathString,o=p2(),a=oh().FROM_TL;H.exports=function(c,h,v,p){if(p.selectAll(".shape-label").remove(),!!(v.label.text||v.label.texttemplate)){var T;if(v.label.texttemplate){var l={};if(v.type!=="path"){var _=x.getFromId(c,v.xref),w=x.getFromId(c,v.yref);for(var S in o){var E=o[S](v,_,w);E!==void 0&&(l[S]=E)}}T=g.texttemplateStringForShapes(v.label.texttemplate,{},c._fullLayout._d3locale,l)}else T=v.label.text;var m={"data-index":h},b=v.label.font,d={"data-notex":1},u=p.append("g").attr(m).classed("shape-label",!0),y=u.append("text").attr(d).classed("shape-label-text",!0).text(T),f,P,L,z;if(v.path){var F=r(c,v),B=e(F,c);f=1/0,L=1/0,P=-1/0,z=-1/0;for(var O=0;O<B.length;O++)for(var I=0;I<B[O].length;I++)for(var N=B[O][I],U=1;U<N.length;U+=2){var W=N[U],Q=N[U+1];f=Math.min(f,W),P=Math.max(P,W),L=Math.min(L,Q),z=Math.max(z,Q)}}else{var ue=x.getFromId(c,v.xref),se=v.x0shift,he=v.x1shift,G=x.getRefType(v.xref),$=x.getFromId(c,v.yref),J=v.y0shift,Z=v.y1shift,re=x.getRefType(v.yref),ne=function(Ie,Ze){var at=t.getDataToPixel(c,ue,Ze,!1,G);return at(Ie)},j=function(Ie,Ze){var at=t.getDataToPixel(c,$,Ze,!0,re);return at(Ie)};f=ne(v.x0,se),P=ne(v.x1,he),L=j(v.y0,J),z=j(v.y1,Z)}var ee=v.label.textangle;ee==="auto"&&(v.type==="line"?ee=i(f,L,P,z):ee=0),y.call(function(Ie){return Ie.call(M.font,b).attr({}),A.convertToTspans(Ie,c),Ie});var ie=M.bBox(y.node()),fe=n(f,L,P,z,v,ee,ie),be=fe.textx,Ae=fe.texty,Be=fe.xanchor;y.attr({"text-anchor":{left:"start",center:"middle",right:"end"}[Be],y:Ae,x:be,transform:"rotate("+ee+","+be+","+Ae+")"}).call(A.positionText,be,Ae)}};function i(s,c,h,v){var p,T;return T=Math.abs(h-s),h>=s?p=c-v:p=v-c,-180/Math.PI*Math.atan2(p,T)}function n(s,c,h,v,p,T,l){var _=p.label.textposition,w=p.label.textangle,S=p.label.padding,E=p.type,m=Math.PI/180*T,b=Math.sin(m),d=Math.cos(m),u=p.label.xanchor,y=p.label.yanchor,f,P,L,z;if(E==="line"){_==="start"?(f=s,P=c):_==="end"?(f=h,P=v):(f=(s+h)/2,P=(c+v)/2),u==="auto"&&(_==="start"?w==="auto"?h>s?u="left":h<s?u="right":u="center":h>s?u="right":h<s?u="left":u="center":_==="end"?w==="auto"?h>s?u="right":h<s?u="left":u="center":h>s?u="left":h<s?u="right":u="center":u="center");var F={left:1,center:0,right:-1},B={bottom:-1,middle:0,top:1};if(w==="auto"){var O=B[y];L=-S*b*O,z=S*d*O}else{var I=F[u],N=B[y];L=S*I,z=S*N}f=f+L,P=P+z}else L=S+3,_.indexOf("right")!==-1?(f=Math.max(s,h)-L,u==="auto"&&(u="right")):_.indexOf("left")!==-1?(f=Math.min(s,h)+L,u==="auto"&&(u="left")):(f=(s+h)/2,u==="auto"&&(u="center")),_.indexOf("top")!==-1?P=Math.min(c,v):_.indexOf("bottom")!==-1?P=Math.max(c,v):P=(c+v)/2,z=S,y==="bottom"?P=P-z:y==="top"&&(P=P+z);var U=a[y],W=p.label.font.size,Q=l.height,ue=(Q*U-W)*b,se=-(Q*U-W)*d;return{textx:f+ue,texty:P+se,xanchor:u}}}}),S2=Ye({"src/components/shapes/display_outlines.js"(X,H){"use strict";var g=ta(),x=g.strTranslate,A=bp(),M=Jd(),e=M.drawMode,t=M.selectMode,r=Hn(),o=Fn(),a=w2(),i=a.i000,n=a.i090,s=a.i180,c=a.i270,h=Jm(),v=h.clearOutlineControllers,p=tg(),T=p.pointsOnRectangle,l=p.pointsOnEllipse,_=p.writePaths,w=A2().newShapes,S=A2().createShapeObj,E=_S(),m=xS();H.exports=function y(f,P,L,z){z||(z=0);var F=L.gd;function B(){y(f,P,L,z++),(l(f[0])||L.hasText)&&O({redrawing:!0})}function O(et){var lt={};L.isActiveShape!==void 0&&(L.isActiveShape=!1,lt=w(P,L)),L.isActiveSelection!==void 0&&(L.isActiveSelection=!1,lt=E(P,L),F._fullLayout._reselect=!0),Object.keys(lt).length&&r.call((et||{}).redrawing?"relayout":"_guiRelayout",F,lt)}var I=F._fullLayout,N=I._zoomlayer,U=L.dragmode,W=e(U),Q=t(U);(W||Q)&&(F._fullLayout._outlining=!0),v(F),P.attr("d",_(f));var ue,se,he,G,$;if(!z&&(L.isActiveShape||L.isActiveSelection)){$=b([],f);var J=N.append("g").attr("class","outline-controllers");be(J),it()}if(W&&L.hasText){var Z=N.select(".label-temp"),re=S(P,L,L.dragmode);m(F,"label-temp",re,Z)}function ne(et){he=+et.srcElement.getAttribute("data-i"),G=+et.srcElement.getAttribute("data-j"),ue[he][G].moveFn=j}function j(et,lt){if(f.length){var Me=$[he][G][1],ge=$[he][G][2],ce=f[he],ze=ce.length;if(T(ce)){var tt=et,nt=lt;if(L.isActiveSelection){var Qe=d(ce,G);Qe[1]===ce[G][1]?nt=0:tt=0}for(var Ct=0;Ct<ze;Ct++)if(Ct!==G){var St=ce[Ct];St[1]===ce[G][1]&&(St[1]=Me+tt),St[2]===ce[G][2]&&(St[2]=ge+nt)}if(ce[G][1]=Me+tt,ce[G][2]=ge+nt,!T(ce))for(var Ot=0;Ot<ze;Ot++)for(var jt=0;jt<ce[Ot].length;jt++)ce[Ot][jt]=$[he][Ot][jt]}else ce[G][1]=Me+et,ce[G][2]=ge+lt;B()}}function ee(){O()}function ie(){if(f.length&&f[he]&&f[he].length){for(var et=[],lt=0;lt<f[he].length;lt++)lt!==G&&et.push(f[he][lt]);et.length>1&&!(et.length===2&&et[1][0]==="Z")&&(G===0&&(et[0][0]="M"),f[he]=et,B(),O())}}function fe(et,lt){if(et===2){he=+lt.srcElement.getAttribute("data-i"),G=+lt.srcElement.getAttribute("data-j");var Me=f[he];!T(Me)&&!l(Me)&&ie()}}function be(et){ue=[];for(var lt=0;lt<f.length;lt++){var Me=f[lt],ge=T(Me),ce=!ge&&l(Me);ue[lt]=[];for(var ze=Me.length,tt=0;tt<ze;tt++)if(Me[tt][0]!=="Z"&&!(ce&&tt!==i&&tt!==n&&tt!==s&&tt!==c)){var nt=ge&&L.isActiveSelection,Qe;nt&&(Qe=d(Me,tt));var Ct=Me[tt][1],St=Me[tt][2],Ot=et.append(nt?"rect":"circle").attr("data-i",lt).attr("data-j",tt).style({fill:o.background,stroke:o.defaultLine,"stroke-width":1,"shape-rendering":"crispEdges"});if(nt){var jt=Qe[1]-Ct,ur=Qe[2]-St,ar=ur?5:Math.max(Math.min(25,Math.abs(jt)-5),5),Cr=jt?5:Math.max(Math.min(25,Math.abs(ur)-5),5);Ot.classed(ur?"cursor-ew-resize":"cursor-ns-resize",!0).attr("width",ar).attr("height",Cr).attr("x",Ct-ar/2).attr("y",St-Cr/2).attr("transform",x(jt/2,ur/2))}else Ot.classed("cursor-grab",!0).attr("r",5).attr("cx",Ct).attr("cy",St);ue[lt][tt]={element:Ot.node(),gd:F,prepFn:ne,doneFn:ee,clickFn:fe},A.init(ue[lt][tt])}}}function Ae(et,lt){if(f.length)for(var Me=0;Me<f.length;Me++)for(var ge=0;ge<f[Me].length;ge++)for(var ce=0;ce+2<f[Me][ge].length;ce+=2)f[Me][ge][ce+1]=$[Me][ge][ce+1]+et,f[Me][ge][ce+2]=$[Me][ge][ce+2]+lt}function Be(et,lt){Ae(et,lt),B()}function Ie(et){he=+et.srcElement.getAttribute("data-i"),he||(he=0),se[he].moveFn=Be}function Ze(){O()}function at(et){et===2&&u(F)}function it(){if(se=[],!!f.length){var et=0;se[et]={element:P[0][0],gd:F,prepFn:Ie,doneFn:Ze,clickFn:at},A.init(se[et])}}};function b(y,f){for(var P=0;P<f.length;P++){var L=f[P];y[P]=[];for(var z=0;z<L.length;z++){y[P][z]=[];for(var F=0;F<L[z].length;F++)y[P][z][F]=L[z][F]}}return y}function d(y,f){var P=y[f][1],L=y[f][2],z=y.length,F,B,O;return F=(f+1)%z,B=y[F][1],O=y[F][2],B===P&&O===L&&(F=(f+2)%z,B=y[F][1],O=y[F][2]),[F,B,O]}function u(y){if(t(y._fullLayout.dragmode)){v(y);var f=y._fullLayout._activeSelectionIndex,P=(y.layout||{}).selections||[];if(f<P.length){for(var L=[],z=0;z<P.length;z++)z!==f&&L.push(P[z]);delete y._fullLayout._activeSelectionIndex;var F=y._fullLayout.selections[f];y._fullLayout._deselect={xref:F.xref,yref:F.yref},r.call("_guiRelayout",y,{selections:L})}}}}}),M2=Ye({"src/components/shapes/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=Co(),e=tg().readPaths,t=S2(),r=xS(),o=Jm().clearOutlineControllers,a=Fn(),i=Bo(),n=cl().arrayEditor,s=bp(),c=Kd(),h=E_(),v=rg(),p=v.getPathString;H.exports={draw:T,drawOne:w,eraseActiveShape:u,drawLabel:r};function T(y){var f=y._fullLayout;f._shapeUpperLayer.selectAll("path").remove(),f._shapeLowerLayer.selectAll("path").remove(),f._shapeUpperLayer.selectAll("text").remove(),f._shapeLowerLayer.selectAll("text").remove();for(var P in f._plots){var L=f._plots[P].shapelayer;L&&(L.selectAll("path").remove(),L.selectAll("text").remove())}for(var z=0;z<f.shapes.length;z++)f.shapes[z].visible===!0&&w(y,z)}function l(y){return!!y._fullLayout._outlining}function _(y){return!y._context.edits.shapePosition}function w(y,f){y._fullLayout._paperdiv.selectAll('.shapelayer [data-index="'+f+'"]').remove();var P=v.makeShapesOptionsAndPlotinfo(y,f),L=P.options,z=P.plotinfo;if(!L._input||L.visible!==!0)return;if(L.layer==="above")B(y._fullLayout._shapeUpperLayer);else if(L.xref==="paper"||L.yref==="paper")B(y._fullLayout._shapeLowerLayer);else if(L.layer==="between")B(z.shapelayerBetween);else if(z._hadPlotinfo){var F=z.mainplotinfo||z;B(F.shapelayer)}else B(y._fullLayout._shapeLowerLayer);function B(O){var I=p(y,L),N={"data-index":f,"fill-rule":L.fillrule,d:I},U=L.opacity,W=L.fillcolor,Q=L.line.width?L.line.color:"rgba(0,0,0,0)",ue=L.line.width,se=L.line.dash;!ue&&L.editable===!0&&(ue=5,se="solid");var he=I[I.length-1]!=="Z",G=_(y)&&L.editable&&y._fullLayout._activeShapeIndex===f;G&&(W=he?"rgba(0,0,0,0)":y._fullLayout.activeshape.fillcolor,U=y._fullLayout.activeshape.opacity);var $=O.append("g").classed("shape-group",!0).attr({"data-index":f}),J=$.append("path").attr(N).style("opacity",U).call(a.stroke,Q).call(a.fill,W).call(i.dashLine,se,ue);S($,y,L),r(y,f,L,$);var Z;if((G||y._context.edits.shapePosition)&&(Z=n(y.layout,"shapes",L)),G){J.style({cursor:"move"});var re={element:J.node(),plotinfo:z,gd:y,editHelpers:Z,hasText:L.label.text||L.label.texttemplate,isActiveShape:!0},ne=e(I,y);t(ne,J,re)}else y._context.edits.shapePosition?E(y,J,L,f,O,Z):L.editable===!0&&J.style("pointer-events",he||a.opacity(W)*U<=.5?"stroke":"all");J.node().addEventListener("click",function(){return b(y,J)})}}function S(y,f,P){var L=(P.xref+P.yref).replace(/paper/g,"").replace(/[xyz][1-9]* *domain/g,"");i.setClipUrl(y,L?"clip"+f._fullLayout._uid+L:null,f)}function E(y,f,P,L,z,F){var B=10,O=10,I=P.xsizemode==="pixel",N=P.ysizemode==="pixel",U=P.type==="line",W=P.type==="path",Q=F.modifyItem,ue,se,he,G,$,J,Z,re,ne,j,ee,ie,fe,be,Ae,Be=g.select(f.node().parentNode),Ie=M.getFromId(y,P.xref),Ze=M.getRefType(P.xref),at=M.getFromId(y,P.yref),it=M.getRefType(P.yref),et=P.x0shift,lt=P.x1shift,Me=P.y0shift,ge=P.y1shift,ce=function(Ee,Ve){var ke=v.getDataToPixel(y,Ie,Ve,!1,Ze);return ke(Ee)},ze=function(Ee,Ve){var ke=v.getDataToPixel(y,at,Ve,!0,it);return ke(Ee)},tt=v.getPixelToData(y,Ie,!1,Ze),nt=v.getPixelToData(y,at,!0,it),Qe=Ot(),Ct={element:Qe.node(),gd:y,prepFn:ar,doneFn:Cr,clickFn:vr},St;s.init(Ct),Qe.node().onmousemove=ur;function Ot(){return U?jt():f}function jt(){var Ee=10,Ve=Math.max(P.line.width,Ee),ke=z.append("g").attr("data-index",L).attr("drag-helper",!0);ke.append("path").attr("d",f.attr("d")).style({cursor:"move","stroke-width":Ve,"stroke-opacity":"0"});var Te={"fill-opacity":"0"},Le=Math.max(Ve/2,Ee);return ke.append("circle").attr({"data-line-point":"start-point",cx:I?ce(P.xanchor)+P.x0:ce(P.x0,et),cy:N?ze(P.yanchor)-P.y0:ze(P.y0,Me),r:Le}).style(Te).classed("cursor-grab",!0),ke.append("circle").attr({"data-line-point":"end-point",cx:I?ce(P.xanchor)+P.x1:ce(P.x1,lt),cy:N?ze(P.yanchor)-P.y1:ze(P.y1,ge),r:Le}).style(Te).classed("cursor-grab",!0),ke}function ur(Ee){if(l(y)){St=null;return}if(U)Ee.target.tagName==="path"?St="move":St=Ee.target.attributes["data-line-point"].value==="start-point"?"resize-over-start-point":"resize-over-end-point";else{var Ve=Ct.element.getBoundingClientRect(),ke=Ve.right-Ve.left,Te=Ve.bottom-Ve.top,Le=Ee.clientX-Ve.left,rt=Ee.clientY-Ve.top,dt=!W&&ke>B&&Te>O&&!Ee.shiftKey?s.getCursor(Le/ke,1-rt/Te):"move";c(f,dt),St=dt.split("-")[0]}}function ar(Ee){l(y)||(I&&($=ce(P.xanchor)),N&&(J=ze(P.yanchor)),P.type==="path"?Ae=P.path:(ue=I?P.x0:ce(P.x0),se=N?P.y0:ze(P.y0),he=I?P.x1:ce(P.x1),G=N?P.y1:ze(P.y1)),ue<he?(ne=ue,fe="x0",j=he,be="x1"):(ne=he,fe="x1",j=ue,be="x0"),!N&&se<G||N&&se>G?(Z=se,ee="y0",re=G,ie="y1"):(Z=G,ee="y1",re=se,ie="y0"),ur(Ee),Fe(z,P),Ne(f,P,y),Ct.moveFn=St==="move"?_r:yt,Ct.altKey=Ee.altKey)}function Cr(){l(y)||(c(f),Ke(z),S(f,y,P),x.call("_guiRelayout",y,F.getUpdateObj()))}function vr(){l(y)||Ke(z)}function _r(Ee,Ve){if(P.type==="path"){var ke=function(rt){return rt},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(dt){return tt(ce(dt)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(dt){return nt(ze(dt)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else I?Q("xanchor",P.xanchor=tt($+Ee)):(Q("x0",P.x0=tt(ue+Ee)),Q("x1",P.x1=tt(he+Ee))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Q("y0",P.y0=nt(se+Ve)),Q("y1",P.y1=nt(G+Ve)));f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function yt(Ee,Ve){if(W){var ke=function(Ma){return Ma},Te=ke,Le=ke;I?Q("xanchor",P.xanchor=tt($+Ee)):(Te=function(Ua){return tt(ce(Ua)+Ee)},Ie&&Ie.type==="date"&&(Te=v.encodeDate(Te))),N?Q("yanchor",P.yanchor=nt(J+Ve)):(Le=function(Ua){return nt(ze(Ua)+Ve)},at&&at.type==="date"&&(Le=v.encodeDate(Le))),Q("path",P.path=m(Ae,Te,Le))}else if(U){if(St==="resize-over-start-point"){var rt=ue+Ee,dt=N?se-Ve:se+Ve;Q("x0",P.x0=I?rt:tt(rt)),Q("y0",P.y0=N?dt:nt(dt))}else if(St==="resize-over-end-point"){var xt=he+Ee,It=N?G-Ve:G+Ve;Q("x1",P.x1=I?xt:tt(xt)),Q("y1",P.y1=N?It:nt(It))}}else{var Bt=function(Ma){return St.indexOf(Ma)!==-1},Gt=Bt("n"),Kt=Bt("s"),sr=Bt("w"),sa=Bt("e"),Aa=Gt?Z+Ve:Z,La=Kt?re+Ve:re,ka=sr?ne+Ee:ne,Ga=sa?j+Ee:j;N&&(Gt&&(Aa=Z-Ve),Kt&&(La=re-Ve)),(!N&&La-Aa>O||N&&Aa-La>O)&&(Q(ee,P[ee]=N?Aa:nt(Aa)),Q(ie,P[ie]=N?La:nt(La))),Ga-ka>B&&(Q(fe,P[fe]=I?ka:tt(ka)),Q(be,P[be]=I?Ga:tt(Ga)))}f.attr("d",p(y,P)),Fe(z,P),r(y,L,P,Be)}function Fe(Ee,Ve){(I||N)&&ke();function ke(){var Te=Ve.type!=="path",Le=Ee.selectAll(".visual-cue").data([0]),rt=1;Le.enter().append("path").attr({fill:"#fff","fill-rule":"evenodd",stroke:"#000","stroke-width":rt}).classed("visual-cue",!0);var dt=ce(I?Ve.xanchor:A.midRange(Te?[Ve.x0,Ve.x1]:v.extractPathCoords(Ve.path,h.paramIsX))),xt=ze(N?Ve.yanchor:A.midRange(Te?[Ve.y0,Ve.y1]:v.extractPathCoords(Ve.path,h.paramIsY)));if(dt=v.roundPositionForSharpStrokeRendering(dt,rt),xt=v.roundPositionForSharpStrokeRendering(xt,rt),I&&N){var It="M"+(dt-1-rt)+","+(xt-1-rt)+"h-8v2h8 v8h2v-8 h8v-2h-8 v-8h-2 Z";Le.attr("d",It)}else if(I){var Bt="M"+(dt-1-rt)+","+(xt-9-rt)+"v18 h2 v-18 Z";Le.attr("d",Bt)}else{var Gt="M"+(dt-9-rt)+","+(xt-1-rt)+"h18 v2 h-18 Z";Le.attr("d",Gt)}}}function Ke(Ee){Ee.selectAll(".visual-cue").remove()}function Ne(Ee,Ve,ke){var Te=Ve.xref,Le=Ve.yref,rt=M.getFromId(ke,Te),dt=M.getFromId(ke,Le),xt="";Te!=="paper"&&!rt.autorange&&(xt+=Te),Le!=="paper"&&!dt.autorange&&(xt+=Le),i.setClipUrl(Ee,xt?"clip"+ke._fullLayout._uid+xt:null,ke)}}function m(y,f,P){return y.replace(h.segmentRE,function(L){var z=0,F=L.charAt(0),B=h.paramIsX[F],O=h.paramIsY[F],I=h.numParams[F],N=L.substr(1).replace(h.paramRE,function(U){return z>=I||(B[z]?U=f(U):O[z]&&(U=P(U)),z++),U});return F+N})}function b(y,f){if(_(y)){var P=f.node(),L=+P.getAttribute("data-index");if(L>=0){if(L===y._fullLayout._activeShapeIndex){d(y);return}y._fullLayout._activeShapeIndex=L,y._fullLayout._deactivateShape=d,T(y)}}}function d(y){if(_(y)){var f=y._fullLayout._activeShapeIndex;f>=0&&(o(y),delete y._fullLayout._activeShapeIndex,T(y))}}function u(y){if(_(y)){o(y);var f=y._fullLayout._activeShapeIndex,P=(y.layout||{}).shapes||[];if(f<P.length){for(var L=[],z=0;z<P.length;z++)z!==f&&L.push(P[z]);return delete y._fullLayout._activeShapeIndex,x.call("_guiRelayout",y,{shapes:L})}}}}}),bS=Ye({"src/components/modebar/buttons.js"(X,H){"use strict";var g=Hn(),x=Gu(),A=Xc(),M=b2(),e=M2().eraseActiveShape,t=ta(),r=t._,o=H.exports={};o.toImage={name:"toImage",title:function(E){var m=E._context.toImageButtonOptions||{},b=m.format||"png";return b==="png"?r(E,"Download plot as a png"):r(E,"Download plot")},icon:M.camera,click:function(E){var m=E._context.toImageButtonOptions,b={format:m.format||"png"};t.notifier(r(E,"Taking snapshot - this may take a few seconds"),"long"),["filename","width","height","scale"].forEach(function(d){d in m&&(b[d]=m[d])}),g.call("downloadImage",E,b).then(function(d){t.notifier(r(E,"Snapshot succeeded")+" - "+d,"long")}).catch(function(){t.notifier(r(E,"Sorry, there was a problem downloading your snapshot!"),"long")})}},o.sendDataToCloud={name:"sendDataToCloud",title:function(E){return r(E,"Edit in Chart Studio")},icon:M.disk,click:function(E){x.sendDataToCloud(E)}},o.editInChartStudio={name:"editInChartStudio",title:function(E){return r(E,"Edit in Chart Studio")},icon:M.pencil,click:function(E){x.sendDataToCloud(E)}},o.zoom2d={name:"zoom2d",_cat:"zoom",title:function(E){return r(E,"Zoom")},attr:"dragmode",val:"zoom",icon:M.zoombox,click:a},o.pan2d={name:"pan2d",_cat:"pan",title:function(E){return r(E,"Pan")},attr:"dragmode",val:"pan",icon:M.pan,click:a},o.select2d={name:"select2d",_cat:"select",title:function(E){return r(E,"Box Select")},attr:"dragmode",val:"select",icon:M.selectbox,click:a},o.lasso2d={name:"lasso2d",_cat:"lasso",title:function(E){return r(E,"Lasso Select")},attr:"dragmode",val:"lasso",icon:M.lasso,click:a},o.drawclosedpath={name:"drawclosedpath",title:function(E){return r(E,"Draw closed freeform")},attr:"dragmode",val:"drawclosedpath",icon:M.drawclosedpath,click:a},o.drawopenpath={name:"drawopenpath",title:function(E){return r(E,"Draw open freeform")},attr:"dragmode",val:"drawopenpath",icon:M.drawopenpath,click:a},o.drawline={name:"drawline",title:function(E){return r(E,"Draw line")},attr:"dragmode",val:"drawline",icon:M.drawline,click:a},o.drawrect={name:"drawrect",title:function(E){return r(E,"Draw rectangle")},attr:"dragmode",val:"drawrect",icon:M.drawrect,click:a},o.drawcircle={name:"drawcircle",title:function(E){return r(E,"Draw circle")},attr:"dragmode",val:"drawcircle",icon:M.drawcircle,click:a},o.eraseshape={name:"eraseshape",title:function(E){return r(E,"Erase active shape")},icon:M.eraseshape,click:e},o.zoomIn2d={name:"zoomIn2d",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:a},o.zoomOut2d={name:"zoomOut2d",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:a},o.autoScale2d={name:"autoScale2d",_cat:"autoscale",title:function(E){return r(E,"Autoscale")},attr:"zoom",val:"auto",icon:M.autoscale,click:a},o.resetScale2d={name:"resetScale2d",_cat:"resetscale",title:function(E){return r(E,"Reset axes")},attr:"zoom",val:"reset",icon:M.home,click:a},o.hoverClosestCartesian={name:"hoverClosestCartesian",_cat:"hoverclosest",title:function(E){return r(E,"Show closest data on hover")},attr:"hovermode",val:"closest",icon:M.tooltip_basic,gravity:"ne",click:a},o.hoverCompareCartesian={name:"hoverCompareCartesian",_cat:"hoverCompare",title:function(E){return r(E,"Compare data on hover")},attr:"hovermode",val:function(E){return E._fullLayout._isHoriz?"y":"x"},icon:M.tooltip_compare,gravity:"ne",click:a};function a(E,m){var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout,f={},P=A.list(E,null,!0),L=y._cartesianSpikesEnabled,z,F;if(d==="zoom"){var B=u==="in"?.5:2,O=(1+B)/2,I=(1-B)/2,N;for(F=0;F<P.length;F++)if(z=P[F],!z.fixedrange)if(N=z._name,u==="auto")f[N+".autorange"]=!0;else if(u==="reset")z._rangeInitial0===void 0&&z._rangeInitial1===void 0?f[N+".autorange"]=!0:z._rangeInitial0===void 0?(f[N+".autorange"]=z._autorangeInitial,f[N+".range"]=[null,z._rangeInitial1]):z._rangeInitial1===void 0?(f[N+".range"]=[z._rangeInitial0,null],f[N+".autorange"]=z._autorangeInitial):f[N+".range"]=[z._rangeInitial0,z._rangeInitial1],z._showSpikeInitial!==void 0&&(f[N+".showspikes"]=z._showSpikeInitial,L==="on"&&!z._showSpikeInitial&&(L="off"));else{var U=[z.r2l(z.range[0]),z.r2l(z.range[1])],W=[O*U[0]+I*U[1],O*U[1]+I*U[0]];f[N+".range[0]"]=z.l2r(W[0]),f[N+".range[1]"]=z.l2r(W[1])}}else d==="hovermode"&&(u==="x"||u==="y")&&(u=y._isHoriz?"y":"x",b.setAttribute("data-val",u)),f[d]=u;y._cartesianSpikesEnabled=L,g.call("_guiRelayout",E,f)}o.zoom3d={name:"zoom3d",_cat:"zoom",title:function(E){return r(E,"Zoom")},attr:"scene.dragmode",val:"zoom",icon:M.zoombox,click:i},o.pan3d={name:"pan3d",_cat:"pan",title:function(E){return r(E,"Pan")},attr:"scene.dragmode",val:"pan",icon:M.pan,click:i},o.orbitRotation={name:"orbitRotation",title:function(E){return r(E,"Orbital rotation")},attr:"scene.dragmode",val:"orbit",icon:M["3d_rotate"],click:i},o.tableRotation={name:"tableRotation",title:function(E){return r(E,"Turntable rotation")},attr:"scene.dragmode",val:"turntable",icon:M["z-axis"],click:i};function i(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout._subplots.gl3d||[],f={},P=d.split("."),L=0;L<y.length;L++)f[y[L]+"."+P[1]]=u;var z=u==="pan"?u:"zoom";f.dragmode=z,g.call("_guiRelayout",E,f)}o.resetCameraDefault3d={name:"resetCameraDefault3d",_cat:"resetCameraDefault",title:function(E){return r(E,"Reset camera to default")},attr:"resetDefault",icon:M.home,click:n},o.resetCameraLastSave3d={name:"resetCameraLastSave3d",_cat:"resetCameraLastSave",title:function(E){return r(E,"Reset camera to last save")},attr:"resetLastSave",icon:M.movie,click:n};function n(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=d==="resetLastSave",y=d==="resetDefault",f=E._fullLayout,P=f._subplots.gl3d||[],L={},z=0;z<P.length;z++){var F=P[z],B=F+".camera",O=F+".aspectratio",I=F+".aspectmode",N=f[F]._scene,U;u?(L[B+".up"]=N.viewInitial.up,L[B+".eye"]=N.viewInitial.eye,L[B+".center"]=N.viewInitial.center,U=!0):y&&(L[B+".up"]=null,L[B+".eye"]=null,L[B+".center"]=null,U=!0),U&&(L[O+".x"]=N.viewInitial.aspectratio.x,L[O+".y"]=N.viewInitial.aspectratio.y,L[O+".z"]=N.viewInitial.aspectratio.z,L[I]=N.viewInitial.aspectmode)}g.call("_guiRelayout",E,L)}o.hoverClosest3d={name:"hoverClosest3d",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:c};function s(E,m){var b=m.currentTarget,d=b._previousVal,u=E._fullLayout,y=u._subplots.gl3d||[],f=["xaxis","yaxis","zaxis"],P={},L={};if(d)L=d,b._previousVal=null;else{for(var z=0;z<y.length;z++){var F=y[z],B=u[F],O=F+".hovermode";P[O]=B.hovermode,L[O]=!1;for(var I=0;I<3;I++){var N=f[I],U=F+"."+N+".showspikes";L[U]=!1,P[U]=B[N].showspikes}}b._previousVal=P}return L}function c(E,m){var b=s(E,m);g.call("_guiRelayout",E,b)}o.zoomInGeo={name:"zoomInGeo",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:h},o.zoomOutGeo={name:"zoomOutGeo",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:h},o.resetGeo={name:"resetGeo",_cat:"reset",title:function(E){return r(E,"Reset")},attr:"reset",val:null,icon:M.autoscale,click:h},o.hoverClosestGeo={name:"hoverClosestGeo",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:p};function h(E,m){for(var b=m.currentTarget,d=b.getAttribute("data-attr"),u=b.getAttribute("data-val")||!0,y=E._fullLayout,f=y._subplots.geo||[],P=0;P<f.length;P++){var L=f[P],z=y[L];if(d==="zoom"){var F=z.projection.scale,B=u==="in"?2*F:.5*F;g.call("_guiRelayout",E,L+".projection.scale",B)}}d==="reset"&&S(E,"geo")}o.hoverClosestPie={name:"hoverClosestPie",_cat:"hoverclosest",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:"closest",icon:M.tooltip_basic,gravity:"ne",click:p};function v(E){var m=E._fullLayout;return m.hovermode?!1:m._has("cartesian")?m._isHoriz?"y":"x":"closest"}function p(E){var m=v(E);g.call("_guiRelayout",E,"hovermode",m)}o.resetViewSankey={name:"resetSankeyGroup",title:function(E){return r(E,"Reset view")},icon:M.home,click:function(E){for(var m={"node.groups":[],"node.x":[],"node.y":[]},b=0;b<E._fullData.length;b++){var d=E._fullData[b]._viewInitial;m["node.groups"].push(d.node.groups.slice()),m["node.x"].push(d.node.x.slice()),m["node.y"].push(d.node.y.slice())}g.call("restyle",E,m)}},o.toggleHover={name:"toggleHover",title:function(E){return r(E,"Toggle show closest data on hover")},attr:"hovermode",val:null,toggle:!0,icon:M.tooltip_basic,gravity:"ne",click:function(E,m){var b=s(E,m);b.hovermode=v(E),g.call("_guiRelayout",E,b)}},o.resetViews={name:"resetViews",title:function(E){return r(E,"Reset views")},icon:M.home,click:function(E,m){var b=m.currentTarget;b.setAttribute("data-attr","zoom"),b.setAttribute("data-val","reset"),a(E,m),b.setAttribute("data-attr","resetLastSave"),n(E,m),S(E,"geo"),S(E,"mapbox"),S(E,"map")}},o.toggleSpikelines={name:"toggleSpikelines",title:function(E){return r(E,"Toggle Spike Lines")},icon:M.spikeline,attr:"_cartesianSpikesEnabled",val:"on",click:function(E){var m=E._fullLayout,b=m._cartesianSpikesEnabled;m._cartesianSpikesEnabled=b==="on"?"off":"on",g.call("_guiRelayout",E,T(E))}};function T(E){for(var m=E._fullLayout,b=m._cartesianSpikesEnabled==="on",d=A.list(E,null,!0),u={},y=0;y<d.length;y++){var f=d[y];u[f._name+".showspikes"]=b?!0:f._showSpikeInitial}return u}o.resetViewMapbox={name:"resetViewMapbox",_cat:"resetView",title:function(E){return r(E,"Reset view")},attr:"reset",icon:M.home,click:function(E){S(E,"mapbox")}},o.resetViewMap={name:"resetViewMap",_cat:"resetView",title:function(E){return r(E,"Reset view")},attr:"reset",icon:M.home,click:function(E){S(E,"map")}},o.zoomInMapbox={name:"zoomInMapbox",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:l},o.zoomInMap={name:"zoomInMap",_cat:"zoomin",title:function(E){return r(E,"Zoom in")},attr:"zoom",val:"in",icon:M.zoom_plus,click:_},o.zoomOutMapbox={name:"zoomOutMapbox",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:l},o.zoomOutMap={name:"zoomOutMap",_cat:"zoomout",title:function(E){return r(E,"Zoom out")},attr:"zoom",val:"out",icon:M.zoom_minus,click:_};function l(E,m){w(E,m,"mapbox")}function _(E,m){w(E,m,"map")}function w(E,m,b){for(var d=m.currentTarget,u=d.getAttribute("data-val"),y=E._fullLayout,f=y._subplots[b]||[],P=1.05,L={},z=0;z<f.length;z++){var F=f[z],B=y[F].zoom,O=u==="in"?P*B:B/P;L[F+".zoom"]=O}g.call("_guiRelayout",E,L)}function S(E,m){for(var b=E._fullLayout,d=b._subplots[m]||[],u={},y=0;y<d.length;y++)for(var f=d[y],P=b[f]._subplot,L=P.viewInitial,z=Object.keys(L),F=0;F<z.length;F++){var B=z[F];u[f+"."+B]=L[B]}g.call("_guiRelayout",E,u)}}}),wS=Ye({"src/components/modebar/constants.js"(X,H){"use strict";var g=bS(),x=Object.keys(g),A=["drawline","drawopenpath","drawclosedpath","drawcircle","drawrect","eraseshape"],M=["v1hovermode","hoverclosest","hovercompare","togglehover","togglespikelines"].concat(A),e=[],t=function(r){if(M.indexOf(r._cat||r.name)===-1){var o=r.name,a=(r._cat||r.name).toLowerCase();e.indexOf(o)===-1&&e.push(o),e.indexOf(a)===-1&&e.push(a)}};x.forEach(function(r){t(g[r])}),e.sort(),H.exports={DRAW_MODES:A,backButtons:M,foreButtons:e}}}),TS=Ye({"src/components/modebar/attributes.js"(X,H){"use strict";var g=wS();H.exports={editType:"modebar",orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"modebar"},bgcolor:{valType:"color",editType:"modebar"},color:{valType:"color",editType:"modebar"},activecolor:{valType:"color",editType:"modebar"},uirevision:{valType:"any",editType:"none"},add:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"},remove:{valType:"string",arrayOk:!0,dflt:"",editType:"modebar"}}}}),gO=Ye({"src/components/modebar/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=TS();H.exports=function(t,r){var o=t.modebar||{},a=A.newContainer(r,"modebar");function i(s,c){return g.coerce(o,a,M,s,c)}i("orientation"),i("bgcolor",x.addOpacity(r.paper_bgcolor,.5));var n=x.contrast(x.rgb(r.modebar.bgcolor));i("color",x.addOpacity(n,.3)),i("activecolor",x.addOpacity(n,.7)),i("uirevision",r.uirevision),i("add"),i("remove")}}}),yO=Ye({"src/components/modebar/modebar.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=b2(),e=xh().version,t=new DOMParser;function r(n){this.container=n.container,this.element=document.createElement("div"),this.update(n.graphInfo,n.buttons),this.container.appendChild(this.element)}var o=r.prototype;o.update=function(n,s){this.graphInfo=n;var c=this.graphInfo._context,h=this.graphInfo._fullLayout,v="modebar-"+h._uid;this.element.setAttribute("id",v),this._uid=v,this.element.className="modebar",c.displayModeBar==="hover"&&(this.element.className+=" modebar--hover ease-bg"),h.modebar.orientation==="v"&&(this.element.className+=" vertical",s=s.reverse());var p=h.modebar,T="#"+v+" .modebar-group";document.querySelectorAll(T).forEach(function(E){E.style.backgroundColor=p.bgcolor});var l=!this.hasButtons(s),_=this.hasLogo!==c.displaylogo,w=this.locale!==c.locale;if(this.locale=c.locale,(l||_||w)&&(this.removeAllButtons(),this.updateButtons(s),c.watermark||c.displaylogo)){var S=this.getLogo();c.watermark&&(S.className=S.className+" watermark"),h.modebar.orientation==="v"?this.element.insertBefore(S,this.element.childNodes[0]):this.element.appendChild(S),this.hasLogo=!0}this.updateActiveButton(),A.setStyleOnHover("#"+v+" .modebar-btn",".active",".icon path","fill: "+p.activecolor,"fill: "+p.color,this.element)},o.updateButtons=function(n){var s=this;this.buttons=n,this.buttonElements=[],this.buttonsNames=[],this.buttons.forEach(function(c){var h=s.createGroup();c.forEach(function(v){var p=v.name;if(!p)throw new Error("must provide button 'name' in button config");if(s.buttonsNames.indexOf(p)!==-1)throw new Error("button name '"+p+"' is taken");s.buttonsNames.push(p);var T=s.createButton(v);s.buttonElements.push(T),h.appendChild(T)}),s.element.appendChild(h)})},o.createGroup=function(){var n=document.createElement("div");n.className="modebar-group";var s=this.graphInfo._fullLayout.modebar;return n.style.backgroundColor=s.bgcolor,n},o.createButton=function(n){var s=this,c=document.createElement("a");c.setAttribute("rel","tooltip"),c.className="modebar-btn";var h=n.title;h===void 0?h=n.name:typeof h=="function"&&(h=h(this.graphInfo)),(h||h===0)&&c.setAttribute("data-title",h),n.attr!==void 0&&c.setAttribute("data-attr",n.attr);var v=n.val;v!==void 0&&(typeof v=="function"&&(v=v(this.graphInfo)),c.setAttribute("data-val",v));var p=n.click;if(typeof p!="function")throw new Error("must provide button 'click' function in button config");c.addEventListener("click",function(l){n.click(s.graphInfo,l),s.updateActiveButton(l.currentTarget)}),c.setAttribute("data-toggle",n.toggle||!1),n.toggle&&g.select(c).classed("active",!0);var T=n.icon;return typeof T=="function"?c.appendChild(T()):c.appendChild(this.createIcon(T||M.question)),c.setAttribute("data-gravity",n.gravity||"n"),c},o.createIcon=function(n){var s=x(n.height)?Number(n.height):n.ascent-n.descent,c="http://www.w3.org/2000/svg",h;if(n.path){h=document.createElementNS(c,"svg"),h.setAttribute("viewBox",[0,0,n.width,s].join(" ")),h.setAttribute("class","icon");var v=document.createElementNS(c,"path");v.setAttribute("d",n.path),n.transform?v.setAttribute("transform",n.transform):n.ascent!==void 0&&v.setAttribute("transform","matrix(1 0 0 -1 0 "+n.ascent+")"),h.appendChild(v)}if(n.svg){var p=t.parseFromString(n.svg,"application/xml");h=p.childNodes[0]}return h.setAttribute("height","1em"),h.setAttribute("width","1em"),h},o.updateActiveButton=function(n){var s=this.graphInfo._fullLayout,c=n!==void 0?n.getAttribute("data-attr"):null;this.buttonElements.forEach(function(h){var v=h.getAttribute("data-val")||!0,p=h.getAttribute("data-attr"),T=h.getAttribute("data-toggle")==="true",l=g.select(h),_=function(E,m){var b=s.modebar,d=E.querySelector(".icon path");d&&(m||E.matches(":hover")?d.style.fill=b.activecolor:d.style.fill=b.color)};if(T){if(p===c){var w=!l.classed("active");l.classed("active",w),_(h,w)}}else{var S=p===null?p:A.nestedProperty(s,p).get();l.classed("active",S===v),_(h,S===v)}})},o.hasButtons=function(n){var s=this.buttons;if(!s||n.length!==s.length)return!1;for(var c=0;c<n.length;++c){if(n[c].length!==s[c].length)return!1;for(var h=0;h<n[c].length;h++)if(n[c][h].name!==s[c][h].name)return!1}return!0};function a(n){return n+" (v"+e+")"}o.getLogo=function(){var n=this.createGroup(),s=document.createElement("a");return s.href="https://plotly.com/",s.target="_blank",s.setAttribute("data-title",a(A._(this.graphInfo,"Produced with Plotly.js"))),s.className="modebar-btn plotlyjsicon modebar-btn--logo",s.appendChild(this.createIcon(M.newplotlylogo)),n.appendChild(s),n},o.removeAllButtons=function(){for(;this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.hasLogo=!1},o.destroy=function(){A.removeElement(this.container.querySelector(".modebar"))};function i(n,s){var c=n._fullLayout,h=new r({graphInfo:n,container:c._modebardiv.node(),buttons:s});return c._privateplot&&g.select(h.element).append("span").classed("badge-private float--left",!0).text("PRIVATE"),h}H.exports=i}}),_O=Ye({"src/components/modebar/manage.js"(X,H){"use strict";var g=Xc(),x=uu(),A=Hn(),M=Qp().isUnifiedHover,e=yO(),t=bS(),r=wS().DRAW_MODES,o=ta().extendDeep;H.exports=function(p){var T=p._fullLayout,l=p._context,_=T._modeBar;if(!l.displayModeBar&&!l.watermark){_&&(_.destroy(),delete T._modeBar);return}if(!Array.isArray(l.modeBarButtonsToRemove))throw new Error(["*modeBarButtonsToRemove* configuration options","must be an array."].join(" "));if(!Array.isArray(l.modeBarButtonsToAdd))throw new Error(["*modeBarButtonsToAdd* configuration options","must be an array."].join(" "));var w=l.modeBarButtons,S;Array.isArray(w)&&w.length?S=h(w):!l.displayModeBar&&l.watermark?S=[]:S=a(p),_?_.update(p,S):T._modeBar=e(p,S)};function a(v){var p=v._fullLayout,T=v._fullData,l=v._context;function _(j,ee){if(typeof ee=="string"){if(ee.toLowerCase()===j.toLowerCase())return!0}else{var ie=ee.name,fe=ee._cat||ee.name;if(ie===j||fe===j.toLowerCase())return!0}return!1}var w=p.modebar.add;typeof w=="string"&&(w=[w]);var S=p.modebar.remove;typeof S=="string"&&(S=[S]);var E=l.modeBarButtonsToAdd.concat(w.filter(function(j){for(var ee=0;ee<l.modeBarButtonsToRemove.length;ee++)if(_(j,l.modeBarButtonsToRemove[ee]))return!1;return!0})),m=l.modeBarButtonsToRemove.concat(S.filter(function(j){for(var ee=0;ee<l.modeBarButtonsToAdd.length;ee++)if(_(j,l.modeBarButtonsToAdd[ee]))return!1;return!0})),b=p._has("cartesian"),d=p._has("gl3d"),u=p._has("geo"),y=p._has("pie"),f=p._has("funnelarea"),P=p._has("ternary"),L=p._has("mapbox"),z=p._has("map"),F=p._has("polar"),B=p._has("smith"),O=p._has("sankey"),I=i(p),N=M(p.hovermode),U=[];function W(j){if(j.length){for(var ee=[],ie=0;ie<j.length;ie++){for(var fe=j[ie],be=t[fe],Ae=be.name.toLowerCase(),Be=(be._cat||be.name).toLowerCase(),Ie=!1,Ze=0;Ze<m.length;Ze++){var at=m[Ze].toLowerCase();if(at===Ae||at===Be){Ie=!0;break}}Ie||ee.push(t[fe])}U.push(ee)}}var Q=["toImage"];l.showEditInChartStudio?Q.push("editInChartStudio"):l.showSendToCloud&&Q.push("sendDataToCloud"),W(Q);var ue=[],se=[],he=[],G=[];(b||y||f||P)+u+d+L+z+F+B>1?(se=["toggleHover"],he=["resetViews"]):u?(ue=["zoomInGeo","zoomOutGeo"],se=["hoverClosestGeo"],he=["resetGeo"]):d?(se=["hoverClosest3d"],he=["resetCameraDefault3d","resetCameraLastSave3d"]):L?(ue=["zoomInMapbox","zoomOutMapbox"],se=["toggleHover"],he=["resetViewMapbox"]):z?(ue=["zoomInMap","zoomOutMap"],se=["toggleHover"],he=["resetViewMap"]):y?se=["hoverClosestPie"]:O?(se=["hoverClosestCartesian","hoverCompareCartesian"],he=["resetViewSankey"]):se=["toggleHover"],b&&se.push("toggleSpikelines","hoverClosestCartesian","hoverCompareCartesian"),(s(T)||N)&&(se=[]),b&&!I&&(ue=["zoomIn2d","zoomOut2d","autoScale2d"],he[0]!=="resetViews"&&(he=["resetScale2d"])),d?G=["zoom3d","pan3d","orbitRotation","tableRotation"]:b&&!I||P?G=["zoom2d","pan2d"]:L||z||u?G=["pan2d"]:F&&(G=["zoom2d"]),n(T)&&G.push("select2d","lasso2d");var $=[],J=function(j){$.indexOf(j)===-1&&se.indexOf(j)!==-1&&$.push(j)};if(Array.isArray(E)){for(var Z=[],re=0;re<E.length;re++){var ne=E[re];typeof ne=="string"?(ne=ne.toLowerCase(),r.indexOf(ne)!==-1?(p._has("mapbox")||p._has("map")||p._has("cartesian"))&&G.push(ne):ne==="togglespikelines"?J("toggleSpikelines"):ne==="togglehover"?J("toggleHover"):ne==="hovercompare"?J("hoverCompareCartesian"):ne==="hoverclosest"?(J("hoverClosestCartesian"),J("hoverClosestGeo"),J("hoverClosest3d"),J("hoverClosestPie")):ne==="v1hovermode"&&(J("hoverClosestCartesian"),J("hoverCompareCartesian"),J("hoverClosestGeo"),J("hoverClosest3d"),J("hoverClosestPie"))):Z.push(ne)}E=Z}return W(G),W(ue.concat(he)),W($),c(U,E)}function i(v){for(var p=g.list({_fullLayout:v},null,!0),T=0;T<p.length;T++)if(!p[T].fixedrange)return!1;return!0}function n(v){for(var p=!1,T=0;T<v.length&&!p;T++){var l=v[T];!l._module||!l._module.selectPoints||(A.traceIs(l,"scatter-like")?(x.hasMarkers(l)||x.hasText(l))&&(p=!0):A.traceIs(l,"box-violin")?(l.boxpoints==="all"||l.points==="all")&&(p=!0):p=!0)}return p}function s(v){for(var p=0;p<v.length;p++)if(!A.traceIs(v[p],"noHover"))return!1;return!0}function c(v,p){if(p.length)if(Array.isArray(p[0]))for(var T=0;T<p.length;T++)v.push(p[T]);else v.push(p);return v}function h(v){for(var p=o([],v),T=0;T<p.length;T++)for(var l=p[T],_=0;_<l.length;_++){var w=l[_];if(typeof w=="string")if(t[w]!==void 0)p[T][_]=t[w];else throw new Error(["*modeBarButtons* configuration options","invalid button name"].join(" "))}return p}}}),AS=Ye({"src/components/modebar/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"modebar",layoutAttributes:TS(),supplyLayoutDefaults:gO(),manage:_O()}}}),SS=Ye({"src/plots/cartesian/scale_zoom.js"(X,H){"use strict";var g=oh().FROM_BL;H.exports=function(A,M,e){e===void 0&&(e=g[A.constraintoward||"center"]);var t=[A.r2l(A.range[0]),A.r2l(A.range[1])],r=t[0]+(t[1]-t[0])*e;A.range=A._input.range=[A.l2r(r+(t[0]-r)*M),A.l2r(r+(t[1]-r)*M)],A.setScale()}}}),Yg=Ye({"src/plots/cartesian/constraints.js"(X){"use strict";var H=ta(),g=Yd(),x=Xc().id2name,A=Vh(),M=SS(),e=wv(),t=ks().ALMOST_EQUAL,r=oh().FROM_BL;X.handleDefaults=function(v,p,T){var l=T.axIds,_=T.axHasImage,w=p._axisConstraintGroups=[],S=p._axisMatchGroups=[],E,m,b,d,u,y,f,P;for(E=0;E<l.length;E++)d=x(l[E]),u=v[d],y=p[d],o(u,y,{axIds:l,layoutOut:p,hasImage:_[d]});function L(Q,ue){for(E=0;E<Q.length;E++){m=Q[E];for(b in m)p[x(b)][ue]=m}}for(L(S,"_matchGroup"),E=0;E<w.length;E++){m=w[E];for(b in m)if(y=p[x(b)],y.fixedrange){for(var z in m){var F=x(z);(v[F]||{}).fixedrange===!1&&H.warn("fixedrange was specified as false for axis "+F+" but was overridden because another axis in its constraint group has fixedrange true"),p[F].fixedrange=!0}break}}for(E=0;E<w.length;){m=w[E];for(b in m){y=p[x(b)],y._matchGroup&&Object.keys(y._matchGroup).length===Object.keys(m).length&&(w.splice(E,1),E--);break}E++}L(w,"_constraintGroup");var B=["constrain","range","autorange","rangemode","rangebreaks","categoryorder","categoryarray"],O=!1,I=!1;function N(){P=y[f],f==="rangebreaks"&&(I=y._hasDayOfWeekBreaks)}for(E=0;E<S.length;E++){m=S[E];for(var U=0;U<B.length;U++){f=B[U],P=null;var W;for(b in m)if(d=x(b),u=v[d],y=p[d],f in y){if(!y.matches&&(W=y,f in u)){N();break}P===null&&f in u&&N()}if(f==="range"&&P&&u.range&&u.range.length===2&&u.range[0]!==null&&u.range[1]!==null&&(O=!0),f==="autorange"&&P===null&&O&&(P=!1),P===null&&f in W&&(P=W[f]),P!==null)for(b in m)y=p[x(b)],y[f]=f==="range"?P.slice():P,f==="rangebreaks"&&(y._hasDayOfWeekBreaks=I,e(y,p))}}};function o(v,p,T){var l=T.axIds,_=T.layoutOut,w=T.hasImage,S=_._axisConstraintGroups,E=_._axisMatchGroups,m=p._id,b=m.charAt(0),d=((_._splomAxes||{})[b]||{})[m]||{},u=p._id,y=u.charAt(0)==="x";p._matchGroup=null,p._constraintGroup=null;function f(G,$){return H.coerce(v,p,A,G,$)}f("constrain",w?"domain":"range"),H.coerce(v,p,{constraintoward:{valType:"enumerated",values:y?["left","center","right"]:["bottom","middle","top"],dflt:y?"center":"middle"}},"constraintoward");var P=p.type,L,z,F=[];for(L=0;L<l.length;L++)if(z=l[L],z!==u){var B=_[x(z)];B.type===P&&F.push(z)}var O=i(S,u);if(O){var I=[];for(L=0;L<F.length;L++)z=F[L],O[z]||I.push(z);F=I}var N=F.length,U,W;N&&(v.matches||d.matches)&&(U=H.coerce(v,p,{matches:{valType:"enumerated",values:F,dflt:F.indexOf(d.matches)!==-1?d.matches:void 0}},"matches"));var Q=w&&!y?p.anchor:void 0;if(N&&!U&&(v.scaleanchor||Q)&&(W=H.coerce(v,p,{scaleanchor:{valType:"enumerated",values:F.concat([!1])}},"scaleanchor",Q)),U){p._matchGroup=n(E,u,U,1);var ue=_[x(U)],se=a(_,p)/a(_,ue);y!==(U.charAt(0)==="x")&&(se=(y?"x":"y")+se),n(S,u,U,se)}else v.matches&&l.indexOf(v.matches)!==-1&&H.warn("ignored "+p._name+'.matches: "'+v.matches+'" to avoid an infinite loop');if(W){var he=f("scaleratio");he||(he=p.scaleratio=1),n(S,u,W,he)}else v.scaleanchor&&l.indexOf(v.scaleanchor)!==-1&&H.warn("ignored "+p._name+'.scaleanchor: "'+v.scaleanchor+'" to avoid either an infinite loop and possibly inconsistent scaleratios, or because this axis declares a *matches* constraint.')}function a(v,p){var T=p.domain;return T||(T=v[x(p.overlaying)].domain),T[1]-T[0]}function i(v,p){for(var T=0;T<v.length;T++)if(v[T][p])return v[T];return null}function n(v,p,T,l){var _,w,S,E,m,b=i(v,p);b===null?(b={},b[p]=1,m=v.length,v.push(b)):m=v.indexOf(b);var d=Object.keys(b);for(_=0;_<v.length;_++)if(S=v[_],_!==m&&S[T]){var u=S[T];for(w=0;w<d.length;w++)E=d[w],S[E]=s(u,s(l,b[E]));v.splice(m,1);return}if(l!==1)for(w=0;w<d.length;w++){var y=d[w];b[y]=s(l,b[y])}b[T]=1}function s(v,p){var T="",l="",_,w;typeof v=="string"&&(T=v.match(/^[xy]*/)[0],_=T.length,v=+v.substr(_)),typeof p=="string"&&(l=p.match(/^[xy]*/)[0],w=l.length,p=+p.substr(w));var S=v*p;return!_&&!w?S:!_||!w||T.charAt(0)===l.charAt(0)?T+l+v*p:_===w?S:(_>w?T.substr(w):l.substr(_))+S}function c(v,p){for(var T=p._size,l=T.h/T.w,_={},w=Object.keys(v),S=0;S<w.length;S++){var E=w[S],m=v[E];if(typeof m=="string"){var b=m.match(/^[xy]*/)[0],d=b.length;m=+m.substr(d);for(var u=b.charAt(0)==="y"?l:1/l,y=0;y<d;y++)m*=u}_[E]=m}return _}X.enforce=function(p){var T=p._fullLayout,l=T._axisConstraintGroups||[],_,w,S,E,m,b,d,u;for(_=0;_<l.length;_++){S=c(l[_],T);var y=Object.keys(S),f=1/0,P=0,L=1/0,z={},F={},B=!1;for(w=0;w<y.length;w++)E=y[w],F[E]=m=T[x(E)],m._inputDomain?m.domain=m._inputDomain.slice():m._inputDomain=m.domain.slice(),m._inputRange||(m._inputRange=m.range.slice()),m.setScale(),z[E]=b=Math.abs(m._m)/S[E],f=Math.min(f,b),(m.constrain==="domain"||!m._constraintShrinkable)&&(L=Math.min(L,b)),delete m._constraintShrinkable,P=Math.max(P,b),m.constrain==="domain"&&(B=!0);if(!(f>t*P&&!B)){for(w=0;w<y.length;w++)if(E=y[w],b=z[E],m=F[E],d=m.constrain,b!==L||d==="domain")if(u=b/L,d==="range")M(m,u);else{var O=m._inputDomain,I=(m.domain[1]-m.domain[0])/(O[1]-O[0]),N=(m.r2l(m.range[1])-m.r2l(m.range[0]))/(m.r2l(m._inputRange[1])-m.r2l(m._inputRange[0]));if(u/=I,u*N<1){m.domain=m._input.domain=O.slice(),M(m,u);continue}if(N<1&&(m.range=m._input.range=m._inputRange.slice(),u*=N),m.autorange){var U=m.r2l(m.range[0]),W=m.r2l(m.range[1]),Q=(U+W)/2,ue=Q,se=Q,he=Math.abs(W-Q),G=Q-he*u*1.0001,$=Q+he*u*1.0001,J=g.makePadFn(T,m,0),Z=g.makePadFn(T,m,1);h(m,u);var re=Math.abs(m._m),ne=g.concatExtremes(p,m),j=ne.min,ee=ne.max,ie,fe;for(fe=0;fe<j.length;fe++)ie=j[fe].val-J(j[fe])/re,ie>G&&ie<ue&&(ue=ie);for(fe=0;fe<ee.length;fe++)ie=ee[fe].val+Z(ee[fe])/re,ie<$&&ie>se&&(se=ie);var be=(se-ue)/(2*he);u/=be,ue=m.l2r(ue),se=m.l2r(se),m.range=m._input.range=U<W?[ue,se]:[se,ue]}h(m,u)}}}},X.getAxisGroup=function(p,T){for(var l=p._axisMatchGroups,_=0;_<l.length;_++){var w=l[_];if(w[T])return"g"+_}return T},X.clean=function(p,T){if(T._inputDomain){for(var l=!1,_=T._id,w=p._fullLayout._axisConstraintGroups,S=0;S<w.length;S++)if(w[S][_]){l=!0;break}(!l||T.constrain!=="domain")&&(T._input.domain=T.domain=T._inputDomain,delete T._inputDomain)}};function h(v,p){var T=v._inputDomain,l=r[v.constraintoward],_=T[0]+(T[1]-T[0])*l;v.domain=v._input.domain=[_+(T[0]-_)/p,_+(T[1]-_)/p],v.setScale()}}}),k_=Ye({"src/plot_api/subroutines.js"(X){"use strict";var H=_n(),g=Hn(),x=Gu(),A=ta(),M=jl(),e=M_(),t=Fn(),r=Bo(),o=Xg(),a=AS(),i=Co(),n=oh(),s=Yg(),c=s.enforce,h=s.clean,v=Yd().doAutoRange,p="start",T="middle",l="end",_=wh().zindexSeparator;X.layoutStyles=function(O){return A.syncOrAsync([x.doAutoMargin,S],O)};function w(O,I,N){for(var U=0;U<N.length;U++){var W=N[U][0],Q=N[U][1];if(!(W[0]>=O[1]||W[1]<=O[0])&&Q[0]<I[1]&&Q[1]>I[0])return!0}return!1}function S(O){var I=O._fullLayout,N=I._size,U=N.p,W=i.list(O,"",!0),Q,ue,se,he,G,$;if(I._paperdiv.style({width:O._context.responsive&&I.autosize&&!O._context._hasZeroWidth&&!O.layout.width?"100%":I.width+"px",height:O._context.responsive&&I.autosize&&!O._context._hasZeroHeight&&!O.layout.height?"100%":I.height+"px"}).selectAll(".main-svg").call(r.setSize,I.width,I.height),O._context.setBackground(O,I.paper_bgcolor),X.drawMainTitle(O),a.manage(O),!I._has("cartesian"))return x.previousPromises(O);function J(Ne,Ee,Ve){var ke=Ne._lw/2;if(Ne._id.charAt(0)==="x"){if(Ee){if(Ve==="top")return Ee._offset-U-ke}else return N.t+N.h*(1-(Ne.position||0))+ke%1;return Ee._offset+Ee._length+U+ke}if(Ee){if(Ve==="right")return Ee._offset+Ee._length+U+ke}else return N.l+N.w*(Ne.position||0)+ke%1;return Ee._offset-U-ke}for(Q=0;Q<W.length;Q++){he=W[Q];var Z=he._anchorAxis;he._linepositions={},he._lw=r.crispRound(O,he.linewidth,1),he._mainLinePosition=J(he,Z,he.side),he._mainMirrorPosition=he.mirror&&Z?J(he,Z,n.OPPOSITE_SIDE[he.side]):null}var re=[],ne=[],j=[],ee=t.opacity(I.paper_bgcolor)===1&&t.opacity(I.plot_bgcolor)===1&&I.paper_bgcolor===I.plot_bgcolor;for(ue in I._plots)if(se=I._plots[ue],se.mainplot)se.bg&&se.bg.remove(),se.bg=void 0;else{var ie=se.xaxis.domain,fe=se.yaxis.domain,be=se.plotgroup;if(w(ie,fe,j)&&ue.indexOf(_)===-1){var Ae=be.node(),Be=se.bg=A.ensureSingle(be,"rect","bg");Ae.insertBefore(Be.node(),Ae.childNodes[0]),ne.push(ue)}else be.select("rect.bg").remove(),j.push([ie,fe]),ee||(re.push(ue),ne.push(ue))}var Ie=I._bgLayer.selectAll(".bg").data(re);for(Ie.enter().append("rect").classed("bg",!0),Ie.exit().remove(),Ie.each(function(Ne){I._plots[Ne].bg=H.select(this)}),Q=0;Q<ne.length;Q++)se=I._plots[ne[Q]],G=se.xaxis,$=se.yaxis,se.bg&&G._offset!==void 0&&$._offset!==void 0&&se.bg.call(r.setRect,G._offset-U,$._offset-U,G._length+2*U,$._length+2*U).call(t.fill,I.plot_bgcolor).style("stroke-width",0);if(!I._hasOnlyLargeSploms)for(ue in I._plots){se=I._plots[ue],G=se.xaxis,$=se.yaxis;var Ze=se.clipId="clip"+I._uid+ue+"plot",at=A.ensureSingleById(I._clips,"clipPath",Ze,function(Ne){Ne.classed("plotclip",!0).append("rect")});se.clipRect=at.select("rect").attr({width:G._length,height:$._length}),r.setTranslate(se.plot,G._offset,$._offset);var it,et;se._hasClipOnAxisFalse?(it=null,et=Ze):(it=Ze,et=null),r.setClipUrl(se.plot,it,O),se.layerClipId=et}var lt,Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur;function ar(Ne){return"M"+lt+","+Ne+"H"+Me}function Cr(Ne){return"M"+G._offset+","+Ne+"h"+G._length}function vr(Ne){return"M"+Ne+","+Qe+"V"+nt}function _r(Ne){return $._shift!==void 0&&(Ne+=$._shift),"M"+Ne+","+$._offset+"v"+$._length}function yt(Ne,Ee,Ve){if(!Ne.showline||ue!==Ne._mainSubplot)return"";if(!Ne._anchorAxis)return Ve(Ne._mainLinePosition);var ke=Ee(Ne._mainLinePosition);return Ne.mirror&&(ke+=Ee(Ne._mainMirrorPosition)),ke}for(ue in I._plots){se=I._plots[ue],G=se.xaxis,$=se.yaxis;var Fe="M0,0";E(G,ue)&&(ze=b(G,"left",$,W),lt=G._offset-(ze?U+ze:0),tt=b(G,"right",$,W),Me=G._offset+G._length+(tt?U+tt:0),ge=J(G,$,"bottom"),ce=J(G,$,"top"),ur=!G._anchorAxis||ue!==G._mainSubplot,ur&&(G.mirror==="allticks"||G.mirror==="all")&&(G._linepositions[ue]=[ge,ce]),Fe=yt(G,ar,Cr),ur&&G.showline&&(G.mirror==="all"||G.mirror==="allticks")&&(Fe+=ar(ge)+ar(ce)),se.xlines.style("stroke-width",G._lw+"px").call(t.stroke,G.showline?G.linecolor:"rgba(0,0,0,0)")),se.xlines.attr("d",Fe);var Ke="M0,0";E($,ue)&&(Ot=b($,"bottom",G,W),nt=$._offset+$._length+(Ot?U:0),jt=b($,"top",G,W),Qe=$._offset-(jt?U:0),Ct=J($,G,"left"),St=J($,G,"right"),ur=!$._anchorAxis||ue!==$._mainSubplot,ur&&($.mirror==="allticks"||$.mirror==="all")&&($._linepositions[ue]=[Ct,St]),Ke=yt($,vr,_r),ur&&$.showline&&($.mirror==="all"||$.mirror==="allticks")&&(Ke+=vr(Ct)+vr(St)),se.ylines.style("stroke-width",$._lw+"px").call(t.stroke,$.showline?$.linecolor:"rgba(0,0,0,0)")),se.ylines.attr("d",Ke)}return i.makeClipPaths(O),x.previousPromises(O)}function E(O,I){return(O.ticks||O.showline)&&(I===O._mainSubplot||O.mirror==="all"||O.mirror==="allticks")}function m(O,I,N){if(!N.showline||!N._lw)return!1;if(N.mirror==="all"||N.mirror==="allticks")return!0;var U=N._anchorAxis;if(!U)return!1;var W=n.FROM_BL[I];return N.side===I?U.domain[W]===O.domain[W]:N.mirror&&U.domain[1-W]===O.domain[1-W]}function b(O,I,N,U){if(m(O,I,N))return N._lw;for(var W=0;W<U.length;W++){var Q=U[W];if(Q._mainAxis===N._mainAxis&&m(O,I,Q))return Q._lw}return 0}X.drawMainTitle=function(O){var I=O._fullLayout.title,N=O._fullLayout,U=F(N),W=B(N),Q=L(N,W),ue=P(N,U);if(o.draw(O,"gtitle",{propContainer:N,propName:"title.text",subtitlePropName:"title.subtitle.text",placeholder:N._dfltTitle.plot,subtitlePlaceholder:N._dfltTitle.subtitle,attributes:{x:ue,y:Q,"text-anchor":U,dy:W}}),I.text&&I.automargin){var se=H.selectAll(".gtitle"),he=r.bBox(H.selectAll(".g-gtitle").node()).height,G=y(O,I,he);if(G>0){f(O,Q,G,he),se.attr({x:ue,y:Q,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,Q);var $=(I.text.match(M.BR_TAG_ALL)||[]).length;if($){var J=n.LINE_SPACING*$+n.MID_SHIFT;I.y===0&&(J=-J),se.selectAll(".line").each(function(){var ee=+this.getAttribute("dy").slice(0,-2)-J+"em";this.setAttribute("dy",ee)})}var Z=H.selectAll(".gtitle-subtitle");if(Z.node()){var re=se.node().getBBox(),ne=re.y+re.height,j=ne+o.SUBTITLE_PADDING_EM*I.subtitle.font.size;Z.attr({x:ue,y:j,"text-anchor":U,dy:z(I.yanchor)}).call(M.positionText,ue,j)}}}};function d(O,I,N,U,W){var Q=I.yref==="paper"?O._fullLayout._size.h:O._fullLayout.height,ue=A.isTopAnchor(I)?U:U-W,se=N==="b"?Q-ue:ue;return A.isTopAnchor(I)&&N==="t"||A.isBottomAnchor(I)&&N==="b"?!1:se<W}function u(O,I,N,U,W){var Q=0;return N==="middle"&&(Q+=W/2),O==="t"?(N==="top"&&(Q+=W),Q+=U-I*U):(N==="bottom"&&(Q+=W),Q+=I*U),Q}function y(O,I,N){var U=I.y,W=I.yanchor,Q=U>.5?"t":"b",ue=O._fullLayout.margin[Q],se=0;return I.yref==="paper"?se=N+I.pad.t+I.pad.b:I.yref==="container"&&(se=u(Q,U,W,O._fullLayout.height,N)+I.pad.t+I.pad.b),se>ue?se:0}function f(O,I,N,U){var W="title.automargin",Q=O._fullLayout.title,ue=Q.y>.5?"t":"b",se={x:Q.x,y:Q.y,t:0,b:0},he={};Q.yref==="paper"&&d(O,Q,ue,I,U)?se[ue]=N:Q.yref==="container"&&(he[ue]=N,O._fullLayout._reservedMargin[W]=he),x.allowAutoMargin(O,W),x.autoMargin(O,W,se)}function P(O,I){var N=O.title,U=O._size,W=0;switch(I===p?W=N.pad.l:I===l&&(W=-N.pad.r),N.xref){case"paper":return U.l+U.w*N.x+W;case"container":default:return O.width*N.x+W}}function L(O,I){var N=O.title,U=O._size,W=0;if(I==="0em"||!I?W=-N.pad.b:I===n.CAP_SHIFT+"em"&&(W=N.pad.t),N.y==="auto")return U.t/2;switch(N.yref){case"paper":return U.t+U.h-U.h*N.y+W;case"container":default:return O.height-O.height*N.y+W}}function z(O){return O==="top"?n.CAP_SHIFT+.3+"em":O==="bottom"?"-0.3em":n.MID_SHIFT+"em"}function F(O){var I=O.title,N=T;return A.isRightAnchor(I)?N=l:A.isLeftAnchor(I)&&(N=p),N}function B(O){var I=O.title,N="0em";return A.isTopAnchor(I)?N=n.CAP_SHIFT+"em":A.isMiddleAnchor(I)&&(N=n.MID_SHIFT+"em"),N}X.doTraceStyle=function(O){var I=O.calcdata,N=[],U;for(U=0;U<I.length;U++){var W=I[U],Q=W[0]||{},ue=Q.trace||{},se=ue._module||{},he=se.arraysToCalcdata;he&&he(W,ue);var G=se.editStyle;G&&N.push({fn:G,cd0:Q})}if(N.length){for(U=0;U<N.length;U++){var $=N[U];$.fn(O,$.cd0)}e(O),X.redrawReglTraces(O)}return x.style(O),g.getComponentMethod("legend","draw")(O),x.previousPromises(O)},X.doColorBars=function(O){return g.getComponentMethod("colorbar","draw")(O),x.previousPromises(O)},X.layoutReplot=function(O){var I=O.layout;return O.layout=void 0,g.call("_doPlot",O,"",I)},X.doLegend=function(O){return g.getComponentMethod("legend","draw")(O),x.previousPromises(O)},X.doTicksRelayout=function(O){return i.draw(O,"redraw"),O._fullLayout._hasOnlyLargeSploms&&(g.subplotsRegistry.splom.updateGrid(O),e(O),X.redrawReglTraces(O)),X.drawMainTitle(O),x.previousPromises(O)},X.doModeBar=function(O){var I=O._fullLayout;a.manage(O);for(var N=0;N<I._basePlotModules.length;N++){var U=I._basePlotModules[N].updateFx;U&&U(O)}return x.previousPromises(O)},X.doCamera=function(O){for(var I=O._fullLayout,N=I._subplots.gl3d,U=0;U<N.length;U++){var W=I[N[U]],Q=W._scene;Q.setViewport(W)}},X.drawData=function(O){var I=O._fullLayout;e(O);for(var N=I._basePlotModules,U=0;U<N.length;U++)N[U].plot(O);return X.redrawReglTraces(O),x.style(O),g.getComponentMethod("selections","draw")(O),g.getComponentMethod("shapes","draw")(O),g.getComponentMethod("annotations","draw")(O),g.getComponentMethod("images","draw")(O),I._replotting=!1,x.previousPromises(O)},X.redrawReglTraces=function(O){var I=O._fullLayout;if(I._has("regl")){var N=O._fullData,U=[],W=[],Q,ue;for(I._hasOnlyLargeSploms&&I._splomGrid.draw(),Q=0;Q<N.length;Q++){var se=N[Q];se.visible===!0&&se._length!==0&&(se.type==="splom"?I._splomScenes[se.uid].draw():se.type==="scattergl"?A.pushUnique(U,se.xaxis+se.yaxis):se.type==="scatterpolargl"&&A.pushUnique(W,se.subplot))}for(Q=0;Q<U.length;Q++)ue=I._plots[U[Q]],ue._scene&&ue._scene.draw();for(Q=0;Q<W.length;Q++)ue=I[W[Q]]._subplot,ue._scene&&ue._scene.draw()}},X.doAutoRangeAndConstraints=function(O){for(var I=i.list(O,"",!0),N,U={},W=0;W<I.length;W++)if(N=I[W],!U[N._id]){U[N._id]=1,h(O,N),v(O,N);var Q=N._matchGroup;if(Q)for(var ue in Q){var se=i.getFromId(O,ue);v(O,se,N.range),U[ue]=1}}c(O)},X.finalDraw=function(O){g.getComponentMethod("rangeslider","draw")(O),g.getComponentMethod("rangeselector","draw")(O)},X.drawMarginPushers=function(O){g.getComponentMethod("legend","draw")(O),g.getComponentMethod("rangeselector","draw")(O),g.getComponentMethod("sliders","draw")(O),g.getComponentMethod("updatemenus","draw")(O),g.getComponentMethod("colorbar","draw")(O)}}}),MS=Ye({"src/components/selections/draw.js"(X,H){"use strict";var g=tg().readPaths,x=S2(),A=Jm().clearOutlineControllers,M=Fn(),e=Bo(),t=cl().arrayEditor,r=rg(),o=r.getPathString;H.exports={draw:a,drawOne:n,activateLastSelection:h};function a(p){var T=p._fullLayout;A(p),T._selectionLayer.selectAll("path").remove();for(var l in T._plots){var _=T._plots[l].selectionLayer;_&&_.selectAll("path").remove()}for(var w=0;w<T.selections.length;w++)n(p,w)}function i(p){return p._context.editSelection}function n(p,T){p._fullLayout._paperdiv.selectAll('.selectionlayer [data-index="'+T+'"]').remove();var l=r.makeSelectionsOptionsAndPlotinfo(p,T),_=l.options,w=l.plotinfo;if(!_._input)return;S(p._fullLayout._selectionLayer);function S(E){var m=o(p,_),b={"data-index":T,"fill-rule":"evenodd",d:m},d=_.opacity,u="rgba(0,0,0,0)",y=_.line.color||M.contrast(p._fullLayout.plot_bgcolor),f=_.line.width,P=_.line.dash;f||(f=5,P="solid");var L=i(p)&&p._fullLayout._activeSelectionIndex===T;L&&(u=p._fullLayout.activeselection.fillcolor,d=p._fullLayout.activeselection.opacity);for(var z=[],F=1;F>=0;F--){var B=E.append("path").attr(b).style("opacity",F?.1:d).call(M.stroke,y).call(M.fill,u).call(e.dashLine,F?"solid":P,F?4+f:f);if(s(B,p,_),L){var O=t(p.layout,"selections",_);B.style({cursor:"move"});var I={element:B.node(),plotinfo:w,gd:p,editHelpers:O,isActiveSelection:!0},N=g(m,p);x(N,B,I)}else B.style("pointer-events",F?"all":"none");z[F]=B}var U=z[0],W=z[1];W.node().addEventListener("click",function(){return c(p,U)})}}function s(p,T,l){var _=l.xref+l.yref;e.setClipUrl(p,"clip"+T._fullLayout._uid+_,T)}function c(p,T){if(i(p)){var l=T.node(),_=+l.getAttribute("data-index");if(_>=0){if(_===p._fullLayout._activeSelectionIndex){v(p);return}p._fullLayout._activeSelectionIndex=_,p._fullLayout._deactivateSelection=v,a(p)}}}function h(p){if(i(p)){var T=p._fullLayout.selections.length-1;p._fullLayout._activeSelectionIndex=T,p._fullLayout._deactivateSelection=v,a(p)}}function v(p){if(i(p)){var T=p._fullLayout._activeSelectionIndex;T>=0&&(A(p),delete p._fullLayout._activeSelectionIndex,a(p))}}}}),xO=Ye({"node_modules/polybooljs/lib/build-log.js"(X,H){function g(){var x,A=0,M=!1;function e(t,r){return x.list.push({type:t,data:r?JSON.parse(JSON.stringify(r)):void 0}),x}return x={list:[],segmentId:function(){return A++},checkIntersection:function(t,r){return e("check",{seg1:t,seg2:r})},segmentChop:function(t,r){return e("div_seg",{seg:t,pt:r}),e("chop",{seg:t,pt:r})},statusRemove:function(t){return e("pop_seg",{seg:t})},segmentUpdate:function(t){return e("seg_update",{seg:t})},segmentNew:function(t,r){return e("new_seg",{seg:t,primary:r})},segmentRemove:function(t){return e("rem_seg",{seg:t})},tempStatus:function(t,r,o){return e("temp_status",{seg:t,above:r,below:o})},rewind:function(t){return e("rewind",{seg:t})},status:function(t,r,o){return e("status",{seg:t,above:r,below:o})},vert:function(t){return t===M?x:(M=t,e("vert",{x:t}))},log:function(t){return typeof t!="string"&&(t=JSON.stringify(t,!1," ")),e("log",{txt:t})},reset:function(){return e("reset")},selected:function(t){return e("selected",{segs:t})},chainStart:function(t){return e("chain_start",{seg:t})},chainRemoveHead:function(t,r){return e("chain_rem_head",{index:t,pt:r})},chainRemoveTail:function(t,r){return e("chain_rem_tail",{index:t,pt:r})},chainNew:function(t,r){return e("chain_new",{pt1:t,pt2:r})},chainMatch:function(t){return e("chain_match",{index:t})},chainClose:function(t){return e("chain_close",{index:t})},chainAddHead:function(t,r){return e("chain_add_head",{index:t,pt:r})},chainAddTail:function(t,r){return e("chain_add_tail",{index:t,pt:r})},chainConnect:function(t,r){return e("chain_con",{index1:t,index2:r})},chainReverse:function(t){return e("chain_rev",{index:t})},chainJoin:function(t,r){return e("chain_join",{index1:t,index2:r})},done:function(){return e("done")}},x}H.exports=g}}),bO=Ye({"node_modules/polybooljs/lib/epsilon.js"(X,H){function g(x){typeof x!="number"&&(x=1e-10);var A={epsilon:function(M){return typeof M=="number"&&(x=M),x},pointAboveOrOnLine:function(M,e,t){var r=e[0],o=e[1],a=t[0],i=t[1],n=M[0],s=M[1];return(a-r)*(s-o)-(i-o)*(n-r)>=-x},pointBetween:function(M,e,t){var r=M[1]-e[1],o=t[0]-e[0],a=M[0]-e[0],i=t[1]-e[1],n=a*o+r*i;if(n<x)return!1;var s=o*o+i*i;return!(n-s>-x)},pointsSameX:function(M,e){return Math.abs(M[0]-e[0])<x},pointsSameY:function(M,e){return Math.abs(M[1]-e[1])<x},pointsSame:function(M,e){return A.pointsSameX(M,e)&&A.pointsSameY(M,e)},pointsCompare:function(M,e){return A.pointsSameX(M,e)?A.pointsSameY(M,e)?0:M[1]<e[1]?-1:1:M[0]<e[0]?-1:1},pointsCollinear:function(M,e,t){var r=M[0]-e[0],o=M[1]-e[1],a=e[0]-t[0],i=e[1]-t[1];return Math.abs(r*i-a*o)<x},linesIntersect:function(M,e,t,r){var o=e[0]-M[0],a=e[1]-M[1],i=r[0]-t[0],n=r[1]-t[1],s=o*n-a*i;if(Math.abs(s)<x)return!1;var c=M[0]-t[0],h=M[1]-t[1],v=(i*h-n*c)/s,p=(o*h-a*c)/s,T={alongA:0,alongB:0,pt:[M[0]+v*o,M[1]+v*a]};return v<=-x?T.alongA=-2:v<x?T.alongA=-1:v-1<=-x?T.alongA=0:v-1<x?T.alongA=1:T.alongA=2,p<=-x?T.alongB=-2:p<x?T.alongB=-1:p-1<=-x?T.alongB=0:p-1<x?T.alongB=1:T.alongB=2,T},pointInsideRegion:function(M,e){for(var t=M[0],r=M[1],o=e[e.length-1][0],a=e[e.length-1][1],i=!1,n=0;n<e.length;n++){var s=e[n][0],c=e[n][1];c-r>x!=a-r>x&&(o-s)*(r-c)/(a-c)+s-t>x&&(i=!i),o=s,a=c}return i}};return A}H.exports=g}}),wO=Ye({"node_modules/polybooljs/lib/linked-list.js"(X,H){var g={create:function(){var x={root:{root:!0,next:null},exists:function(A){return!(A===null||A===x.root)},isEmpty:function(){return x.root.next===null},getHead:function(){return x.root.next},insertBefore:function(A,M){for(var e=x.root,t=x.root.next;t!==null;){if(M(t)){A.prev=t.prev,A.next=t,t.prev.next=A,t.prev=A;return}e=t,t=t.next}e.next=A,A.prev=e,A.next=null},findTransition:function(A){for(var M=x.root,e=x.root.next;e!==null&&!A(e);)M=e,e=e.next;return{before:M===x.root?null:M,after:e,insert:function(t){return t.prev=M,t.next=e,M.next=t,e!==null&&(e.prev=t),t}}}};return x},node:function(x){return x.prev=null,x.next=null,x.remove=function(){x.prev.next=x.next,x.next&&(x.next.prev=x.prev),x.prev=null,x.next=null},x}};H.exports=g}}),TO=Ye({"node_modules/polybooljs/lib/intersecter.js"(X,H){var g=wO();function x(A,M,e){function t(T,l){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:null,below:null},otherFill:null}}function r(T,l,_){return{id:e?e.segmentId():-1,start:T,end:l,myFill:{above:_.myFill.above,below:_.myFill.below},otherFill:null}}var o=g.create();function a(T,l,_,w,S,E){var m=M.pointsCompare(l,S);return m!==0?m:M.pointsSame(_,E)?0:T!==w?T?1:-1:M.pointAboveOrOnLine(_,w?S:E,w?E:S)?1:-1}function i(T,l){o.insertBefore(T,function(_){var w=a(T.isStart,T.pt,l,_.isStart,_.pt,_.other.pt);return w<0})}function n(T,l){var _=g.node({isStart:!0,pt:T.start,seg:T,primary:l,other:null,status:null});return i(_,T.end),_}function s(T,l,_){var w=g.node({isStart:!1,pt:l.end,seg:l,primary:_,other:T,status:null});T.other=w,i(w,T.pt)}function c(T,l){var _=n(T,l);return s(_,T,l),_}function h(T,l){e&&e.segmentChop(T.seg,l),T.other.remove(),T.seg.end=l,T.other.pt=l,i(T.other,T.pt)}function v(T,l){var _=r(l,T.seg.end,T.seg);return h(T,l),c(_,T.primary)}function p(T,l){var _=g.create();function w(O,I){var N=O.seg.start,U=O.seg.end,W=I.seg.start,Q=I.seg.end;return M.pointsCollinear(N,W,Q)?M.pointsCollinear(U,W,Q)||M.pointAboveOrOnLine(U,W,Q)?1:-1:M.pointAboveOrOnLine(N,W,Q)?1:-1}function S(O){return _.findTransition(function(I){var N=w(O,I.ev);return N>0})}function E(O,I){var N=O.seg,U=I.seg,W=N.start,Q=N.end,ue=U.start,se=U.end;e&&e.checkIntersection(N,U);var he=M.linesIntersect(W,Q,ue,se);if(he===!1){if(!M.pointsCollinear(W,Q,ue)||M.pointsSame(W,se)||M.pointsSame(Q,ue))return!1;var G=M.pointsSame(W,ue),$=M.pointsSame(Q,se);if(G&&$)return I;var J=!G&&M.pointBetween(W,ue,se),Z=!$&&M.pointBetween(Q,ue,se);if(G)return Z?v(I,Q):v(O,se),I;J&&($||(Z?v(I,Q):v(O,se)),v(I,W))}else he.alongA===0&&(he.alongB===-1?v(O,ue):he.alongB===0?v(O,he.pt):he.alongB===1&&v(O,se)),he.alongB===0&&(he.alongA===-1?v(I,W):he.alongA===0?v(I,he.pt):he.alongA===1&&v(I,Q));return!1}for(var m=[];!o.isEmpty();){var b=o.getHead();if(e&&e.vert(b.pt[0]),b.isStart){let O=function(){if(y){var I=E(b,y);if(I)return I}return f?E(b,f):!1};var d=O;e&&e.segmentNew(b.seg,b.primary);var u=S(b),y=u.before?u.before.ev:null,f=u.after?u.after.ev:null;e&&e.tempStatus(b.seg,y?y.seg:!1,f?f.seg:!1);var P=O();if(P){if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,L&&(P.seg.myFill.above=!P.seg.myFill.above)}else P.seg.otherFill=b.seg.myFill;e&&e.segmentUpdate(P.seg),b.other.remove(),b.remove()}if(o.getHead()!==b){e&&e.rewind(b.seg);continue}if(A){var L;b.seg.myFill.below===null?L=!0:L=b.seg.myFill.above!==b.seg.myFill.below,f?b.seg.myFill.below=f.seg.myFill.above:b.seg.myFill.below=T,L?b.seg.myFill.above=!b.seg.myFill.below:b.seg.myFill.above=b.seg.myFill.below}else if(b.seg.otherFill===null){var z;f?b.primary===f.primary?z=f.seg.otherFill.above:z=f.seg.myFill.above:z=b.primary?l:T,b.seg.otherFill={above:z,below:z}}e&&e.status(b.seg,y?y.seg:!1,f?f.seg:!1),b.other.status=u.insert(g.node({ev:b}))}else{var F=b.status;if(F===null)throw new Error("PolyBool: Zero-length segment detected; your epsilon is probably too small or too large");if(_.exists(F.prev)&&_.exists(F.next)&&E(F.prev.ev,F.next.ev),e&&e.statusRemove(F.ev.seg),F.remove(),!b.primary){var B=b.seg.myFill;b.seg.myFill=b.seg.otherFill,b.seg.otherFill=B}m.push(b.seg)}o.getHead().remove()}return e&&e.done(),m}return A?{addRegion:function(T){for(var l,_=T[T.length-1],w=0;w<T.length;w++){l=_,_=T[w];var S=M.pointsCompare(l,_);S!==0&&c(t(S<0?l:_,S<0?_:l),!0)}},calculate:function(T){return p(T,!1)}}:{calculate:function(T,l,_,w){return T.forEach(function(S){c(r(S.start,S.end,S),!0)}),_.forEach(function(S){c(r(S.start,S.end,S),!1)}),p(l,w)}}}H.exports=x}}),AO=Ye({"node_modules/polybooljs/lib/segment-chainer.js"(X,H){function g(x,A,M){var e=[],t=[];return x.forEach(function(r){var o=r.start,a=r.end;if(A.pointsSame(o,a)){console.warn("PolyBool: Warning: Zero-length segment detected; your epsilon is probably too small or too large");return}M&&M.chainStart(r);var i={index:0,matches_head:!1,matches_pt1:!1},n={index:0,matches_head:!1,matches_pt1:!1},s=i;function c(F,B,O){return s.index=F,s.matches_head=B,s.matches_pt1=O,s===i?(s=n,!1):(s=null,!0)}for(var h=0;h<e.length;h++){var v=e[h],p=v[0],T=v[1],l=v[v.length-1],_=v[v.length-2];if(A.pointsSame(p,o)){if(c(h,!0,!0))break}else if(A.pointsSame(p,a)){if(c(h,!0,!1))break}else if(A.pointsSame(l,o)){if(c(h,!1,!0))break}else if(A.pointsSame(l,a)&&c(h,!1,!1))break}if(s===i){e.push([o,a]),M&&M.chainNew(o,a);return}if(s===n){M&&M.chainMatch(i.index);var w=i.index,S=i.matches_pt1?a:o,E=i.matches_head,v=e[w],m=E?v[0]:v[v.length-1],b=E?v[1]:v[v.length-2],d=E?v[v.length-1]:v[0],u=E?v[v.length-2]:v[1];if(A.pointsCollinear(b,m,S)&&(E?(M&&M.chainRemoveHead(i.index,S),v.shift()):(M&&M.chainRemoveTail(i.index,S),v.pop()),m=b),A.pointsSame(d,S)){e.splice(w,1),A.pointsCollinear(u,d,m)&&(E?(M&&M.chainRemoveTail(i.index,m),v.pop()):(M&&M.chainRemoveHead(i.index,m),v.shift())),M&&M.chainClose(i.index),t.push(v);return}E?(M&&M.chainAddHead(i.index,S),v.unshift(S)):(M&&M.chainAddTail(i.index,S),v.push(S));return}function y(F){M&&M.chainReverse(F),e[F].reverse()}function f(F,B){var O=e[F],I=e[B],N=O[O.length-1],U=O[O.length-2],W=I[0],Q=I[1];A.pointsCollinear(U,N,W)&&(M&&M.chainRemoveTail(F,N),O.pop(),N=U),A.pointsCollinear(N,W,Q)&&(M&&M.chainRemoveHead(B,W),I.shift()),M&&M.chainJoin(F,B),e[F]=O.concat(I),e.splice(B,1)}var P=i.index,L=n.index;M&&M.chainConnect(P,L);var z=e[P].length<e[L].length;i.matches_head?n.matches_head?z?(y(P),f(P,L)):(y(L),f(L,P)):f(L,P):n.matches_head?f(P,L):z?(y(P),f(L,P)):(y(L),f(P,L))}),t}H.exports=g}}),SO=Ye({"node_modules/polybooljs/lib/segment-selector.js"(X,H){function g(A,M,e){var t=[];return A.forEach(function(r){var o=(r.myFill.above?8:0)+(r.myFill.below?4:0)+(r.otherFill&&r.otherFill.above?2:0)+(r.otherFill&&r.otherFill.below?1:0);M[o]!==0&&t.push({id:e?e.segmentId():-1,start:r.start,end:r.end,myFill:{above:M[o]===1,below:M[o]===2},otherFill:null})}),e&&e.selected(t),t}var x={union:function(A,M){return g(A,[0,2,1,0,2,2,0,0,1,0,1,0,0,0,0,0],M)},intersect:function(A,M){return g(A,[0,0,0,0,0,2,0,2,0,0,1,1,0,2,1,0],M)},difference:function(A,M){return g(A,[0,0,0,0,2,0,2,0,1,1,0,0,0,1,2,0],M)},differenceRev:function(A,M){return g(A,[0,2,1,0,0,0,1,1,0,2,0,2,0,0,0,0],M)},xor:function(A,M){return g(A,[0,2,1,0,2,0,0,1,1,0,0,2,0,1,2,0],M)}};H.exports=x}}),MO=Ye({"node_modules/polybooljs/lib/geojson.js"(X,H){var g={toPolygon:function(x,A){function M(r){if(r.length<=0)return x.segments({inverted:!1,regions:[]});function o(n){var s=n.slice(0,n.length-1);return x.segments({inverted:!1,regions:[s]})}for(var a=o(r[0]),i=1;i<r.length;i++)a=x.selectDifference(x.combine(a,o(r[i])));return a}if(A.type==="Polygon")return x.polygon(M(A.coordinates));if(A.type==="MultiPolygon"){for(var e=x.segments({inverted:!1,regions:[]}),t=0;t<A.coordinates.length;t++)e=x.selectUnion(x.combine(e,M(A.coordinates[t])));return x.polygon(e)}throw new Error("PolyBool: Cannot convert GeoJSON object to PolyBool polygon")},fromPolygon:function(x,A,M){M=x.polygon(x.segments(M));function e(v,p){return A.pointInsideRegion([(v[0][0]+v[1][0])*.5,(v[0][1]+v[1][1])*.5],p)}function t(v){return{region:v,children:[]}}var r=t(null);function o(v,p){for(var T=0;T<v.children.length;T++){var l=v.children[T];if(e(p,l.region)){o(l,p);return}}for(var _=t(p),T=0;T<v.children.length;T++){var l=v.children[T];e(l.region,p)&&(_.children.push(l),v.children.splice(T,1),T--)}v.children.push(_)}for(var a=0;a<M.regions.length;a++){var i=M.regions[a];i.length<3||o(r,i)}function n(v,p){for(var T=0,l=v[v.length-1][0],_=v[v.length-1][1],w=[],S=0;S<v.length;S++){var E=v[S][0],m=v[S][1];w.push([E,m]),T+=m*l-E*_,l=E,_=m}var b=T<0;return b!==p&&w.reverse(),w.push([w[0][0],w[0][1]]),w}var s=[];function c(v){var p=[n(v.region,!1)];s.push(p);for(var T=0;T<v.children.length;T++)p.push(h(v.children[T]))}function h(v){for(var p=0;p<v.children.length;p++)c(v.children[p]);return n(v.region,!0)}for(var a=0;a<r.children.length;a++)c(r.children[a]);return s.length<=0?{type:"Polygon",coordinates:[]}:s.length==1?{type:"Polygon",coordinates:s[0]}:{type:"MultiPolygon",coordinates:s}}};H.exports=g}}),EO=Ye({"node_modules/polybooljs/index.js"(X,H){var g=xO(),x=bO(),A=TO(),M=AO(),e=SO(),t=MO(),r=!1,o=x(),a;a={buildLog:function(n){return n===!0?r=g():n===!1&&(r=!1),r===!1?!1:r.list},epsilon:function(n){return o.epsilon(n)},segments:function(n){var s=A(!0,o,r);return n.regions.forEach(s.addRegion),{segments:s.calculate(n.inverted),inverted:n.inverted}},combine:function(n,s){var c=A(!1,o,r);return{combined:c.calculate(n.segments,n.inverted,s.segments,s.inverted),inverted1:n.inverted,inverted2:s.inverted}},selectUnion:function(n){return{segments:e.union(n.combined,r),inverted:n.inverted1||n.inverted2}},selectIntersect:function(n){return{segments:e.intersect(n.combined,r),inverted:n.inverted1&&n.inverted2}},selectDifference:function(n){return{segments:e.difference(n.combined,r),inverted:n.inverted1&&!n.inverted2}},selectDifferenceRev:function(n){return{segments:e.differenceRev(n.combined,r),inverted:!n.inverted1&&n.inverted2}},selectXor:function(n){return{segments:e.xor(n.combined,r),inverted:n.inverted1!==n.inverted2}},polygon:function(n){return{regions:M(n.segments,o,r),inverted:n.inverted}},polygonFromGeoJSON:function(n){return t.toPolygon(a,n)},polygonToGeoJSON:function(n){return t.fromPolygon(a,o,n)},union:function(n,s){return i(n,s,a.selectUnion)},intersect:function(n,s){return i(n,s,a.selectIntersect)},difference:function(n,s){return i(n,s,a.selectDifference)},differenceRev:function(n,s){return i(n,s,a.selectDifferenceRev)},xor:function(n,s){return i(n,s,a.selectXor)}};function i(n,s,c){var h=a.segments(n),v=a.segments(s),p=a.combine(h,v),T=c(p);return a.polygon(T)}typeof window=="object"&&(window.PolyBool=a),H.exports=a}}),kO=Ye({"node_modules/point-in-polygon/nested.js"(X,H){H.exports=function(x,A,M,e){var t=x[0],r=x[1],o=!1;M===void 0&&(M=0),e===void 0&&(e=A.length);for(var a=e-M,i=0,n=a-1;i<a;n=i++){var s=A[i+M][0],c=A[i+M][1],h=A[n+M][0],v=A[n+M][1],p=c>r!=v>r&&t<(h-s)*(r-c)/(v-c)+s;p&&(o=!o)}return o}}}),C_=Ye({"src/lib/polygon.js"(X,H){"use strict";var g=h2().dot,x=ks().BADNUM,A=H.exports={};A.tester=function(e){var t=e.slice(),r=t[0][0],o=r,a=t[0][1],i=a,n;for((t[t.length-1][0]!==t[0][0]||t[t.length-1][1]!==t[0][1])&&t.push(t[0]),n=1;n<t.length;n++)r=Math.min(r,t[n][0]),o=Math.max(o,t[n][0]),a=Math.min(a,t[n][1]),i=Math.max(i,t[n][1]);var s=!1,c;t.length===5&&(t[0][0]===t[1][0]?t[2][0]===t[3][0]&&t[0][1]===t[3][1]&&t[1][1]===t[2][1]&&(s=!0,c=function(l){return l[0]===t[0][0]}):t[0][1]===t[1][1]&&t[2][1]===t[3][1]&&t[0][0]===t[3][0]&&t[1][0]===t[2][0]&&(s=!0,c=function(l){return l[1]===t[0][1]}));function h(l,_){var w=l[0],S=l[1];return!(w===x||w<r||w>o||S===x||S<a||S>i||_&&c(l))}function v(l,_){var w=l[0],S=l[1];if(w===x||w<r||w>o||S===x||S<a||S>i)return!1;var E=t.length,m=t[0][0],b=t[0][1],d=0,u,y,f,P,L;for(u=1;u<E;u++)if(y=m,f=b,m=t[u][0],b=t[u][1],P=Math.min(y,m),!(w<P||w>Math.max(y,m)||S>Math.max(f,b)))if(S<Math.min(f,b))w!==P&&d++;else{if(m===y?L=S:L=f+(w-y)*(b-f)/(m-y),S===L)return!(u===1&&_);S<=L&&w!==P&&d++}return d%2===1}var p=!0,T=t[0];for(n=1;n<t.length;n++)if(T[0]!==t[n][0]||T[1]!==t[n][1]){p=!1;break}return{xmin:r,xmax:o,ymin:a,ymax:i,pts:t,contains:s?h:v,isRect:s,degenerate:p}},A.isSegmentBent=function(e,t,r,o){var a=e[t],i=[e[r][0]-a[0],e[r][1]-a[1]],n=g(i,i),s=Math.sqrt(n),c=[-i[1]/s,i[0]/s],h,v,p;for(h=t+1;h<r;h++)if(v=[e[h][0]-a[0],e[h][1]-a[1]],p=g(v,i),p<0||p>n||Math.abs(g(v,c))>o)return!0;return!1},A.filter=function(e,t){var r=[e[0]],o=0,a=0;function i(s){e.push(s);var c=r.length,h=o;r.splice(a+1);for(var v=h+1;v<e.length;v++)(v===e.length-1||A.isSegmentBent(e,h,v+1,t))&&(r.push(e[v]),r.length<c-2&&(o=v,a=r.length-1),h=v)}if(e.length>1){var n=e.pop();i(n)}return{addPt:i,raw:e,filtered:r}}}}),CO=Ye({"src/components/selections/constants.js"(X,H){"use strict";H.exports={BENDPX:1.5,MINSELECT:12,SELECTDELAY:100,SELECTID:"-select"}}}),LO=Ye({"src/components/selections/select.js"(X,H){"use strict";var g=EO(),x=kO(),A=Hn(),M=Bo().dashStyle,e=Fn(),t=Lc(),r=Qp().makeEventData,o=Jd(),a=o.freeMode,i=o.rectMode,n=o.drawMode,s=o.openMode,c=o.selectMode,h=rg(),v=E_(),p=S2(),T=Jm().clearOutline,l=tg(),_=l.handleEllipse,w=l.readPaths,S=A2().newShapes,E=_S(),m=MS().activateLastSelection,b=ta(),d=b.sorterAsc,u=C_(),y=m2(),f=Xc().getFromId,P=M_(),L=k_().redrawReglTraces,z=CO(),F=z.MINSELECT,B=u.filter,O=u.tester,I=T2(),N=I.p2r,U=I.axValue,W=I.getTransform;function Q(Fe){return Fe.subplot!==void 0}function ue(Fe,Ke,Ne,Ee,Ve){var ke=!Q(Ee),Te=a(Ve),Le=i(Ve),rt=s(Ve),dt=n(Ve),xt=c(Ve),It=Ve==="drawline",Bt=Ve==="drawcircle",Gt=It||Bt,Kt=Ee.gd,sr=Kt._fullLayout,sa=xt&&sr.newselection.mode==="immediate"&&ke,Aa=sr._zoomlayer,La=Ee.element.getBoundingClientRect(),ka=Ee.plotinfo,Ga=W(ka),Ma=Ke-La.left,Ua=Ne-La.top;sr._calcInverseTransform(Kt);var ni=b.apply3DTransform(sr._invTransform)(Ma,Ua);Ma=ni[0],Ua=ni[1];var Wt=sr._invScaleX,zt=sr._invScaleY,Vt=Ma,Ut=Ua,xr="M"+Ma+","+Ua,Zr=Ee.xaxes[0],pa=Ee.yaxes[0],Xr=Zr._length,Ea=pa._length,Fa=Fe.altKey&&!(n(Ve)&&rt),qa,ya,$a,mt,gt,Er,kr;Z(Fe,Kt,Ee),Te&&(qa=B([[Ma,Ua]],z.BENDPX));var br=Aa.selectAll("path.select-outline-"+ka.id).data([1]),Tr=dt?sr.newshape:sr.newselection;dt&&(Ee.hasText=Tr.label.text||Tr.label.texttemplate);var Mr=dt&&!rt?Tr.fillcolor:"rgba(0,0,0,0)",Fr=Tr.line.color||(ke?e.contrast(Kt._fullLayout.plot_bgcolor):"#7f7f7f");br.enter().append("path").attr("class","select-outline select-outline-"+ka.id).style({opacity:dt?Tr.opacity/2:1,"stroke-dasharray":M(Tr.line.dash,Tr.line.width),"stroke-width":Tr.line.width+"px","shape-rendering":"crispEdges"}).call(e.stroke,Fr).call(e.fill,Mr).attr("fill-rule","evenodd").classed("cursor-move",!!dt).attr("transform",Ga).attr("d",xr+"Z");var Lr=Aa.append("path").attr("class","zoombox-corners").style({fill:e.background,stroke:e.defaultLine,"stroke-width":1}).attr("transform",Ga).attr("d","M0,0Z");if(dt&&Ee.hasText){var Jr=Aa.select(".label-temp");Jr.empty()&&(Jr=Aa.append("g").classed("label-temp",!0).classed("select-outline",!0).style({opacity:.8}))}var oa=sr._uid+z.SELECTID,ca=[],kt=ie(Kt,Ee.xaxes,Ee.yaxes,Ee.subplot);sa&&!Fe.shiftKey&&(Ee._clearSubplotSelections=function(){if(ke){var mr=Zr._id,$r=pa._id;nt(Kt,mr,$r,kt);for(var ma=(Kt.layout||{}).selections||[],Ba=[],Ca=!1,da=0;da<ma.length;da++){var Sa=sr.selections[da];!Sa||Sa.xref!==mr||Sa.yref!==$r?Ba.push(ma[da]):Ca=!0}Ca&&(Kt._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Kt,{selections:Ba}))}});var ir=Cr(Ee);Ee.moveFn=function(mr,$r){Ee._clearSubplotSelections&&(Ee._clearSubplotSelections(),Ee._clearSubplotSelections=void 0),Vt=Math.max(0,Math.min(Xr,Wt*mr+Ma)),Ut=Math.max(0,Math.min(Ea,zt*$r+Ua));var ma=Math.abs(Vt-Ma),Ba=Math.abs(Ut-Ua);if(Le){var Ca,da,Sa;if(xt){var Ti=sr.selectdirection;switch(Ti==="any"?Ba<Math.min(ma*.6,F)?Ca="h":ma<Math.min(Ba*.6,F)?Ca="v":Ca="d":Ca=Ti,Ca){case"h":da=Bt?Ea/2:0,Sa=Ea;break;case"v":da=Bt?Xr/2:0,Sa=Xr;break}}if(dt)switch(sr.newshape.drawdirection){case"vertical":Ca="h",da=Bt?Ea/2:0,Sa=Ea;break;case"horizontal":Ca="v",da=Bt?Xr/2:0,Sa=Xr;break;case"ortho":ma<Ba?(Ca="h",da=Ua,Sa=Ut):(Ca="v",da=Ma,Sa=Vt);break;default:Ca="d"}Ca==="h"?(mt=Gt?_(Bt,[Vt,da],[Vt,Sa]):[[Ma,da],[Ma,Sa],[Vt,Sa],[Vt,da]],mt.xmin=Gt?Vt:Math.min(Ma,Vt),mt.xmax=Gt?Vt:Math.max(Ma,Vt),mt.ymin=Math.min(da,Sa),mt.ymax=Math.max(da,Sa),Lr.attr("d","M"+mt.xmin+","+(Ua-F)+"h-4v"+2*F+"h4ZM"+(mt.xmax-1)+","+(Ua-F)+"h4v"+2*F+"h-4Z")):Ca==="v"?(mt=Gt?_(Bt,[da,Ut],[Sa,Ut]):[[da,Ua],[da,Ut],[Sa,Ut],[Sa,Ua]],mt.xmin=Math.min(da,Sa),mt.xmax=Math.max(da,Sa),mt.ymin=Gt?Ut:Math.min(Ua,Ut),mt.ymax=Gt?Ut:Math.max(Ua,Ut),Lr.attr("d","M"+(Ma-F)+","+mt.ymin+"v-4h"+2*F+"v4ZM"+(Ma-F)+","+(mt.ymax-1)+"v4h"+2*F+"v-4Z")):Ca==="d"&&(mt=Gt?_(Bt,[Ma,Ua],[Vt,Ut]):[[Ma,Ua],[Ma,Ut],[Vt,Ut],[Vt,Ua]],mt.xmin=Math.min(Ma,Vt),mt.xmax=Math.max(Ma,Vt),mt.ymin=Math.min(Ua,Ut),mt.ymax=Math.max(Ua,Ut),Lr.attr("d","M0,0Z"))}else Te&&(qa.addPt([Vt,Ut]),mt=qa.filtered);if(Ee.selectionDefs&&Ee.selectionDefs.length?($a=et(Ee.mergedPolygons,mt,Fa),mt.subtract=Fa,ya=J(Ee.selectionDefs.concat([mt]))):($a=[mt],ya=O(mt)),p(Me($a,rt),br,Ee),xt){var ai=ce(Kt,!1),an=ai.eventData?ai.eventData.points.slice():[];ai=ce(Kt,!1,ya,kt,Ee),ya=ai.selectionTesters,kr=ai.eventData;var sn;qa?sn=qa.filtered:sn=jt($a),y.throttle(oa,z.SELECTDELAY,function(){ca=ge(ya,kt);for(var Mn=ca.slice(),On=0;On<an.length;On++){for(var $n=an[On],Cn=!1,Lo=0;Lo<Mn.length;Lo++)if(Mn[Lo].curveNumber===$n.curveNumber&&Mn[Lo].pointNumber===$n.pointNumber){Cn=!0;break}Cn||Mn.push($n)}Mn.length&&(kr||(kr={}),kr.points=Mn),ir(kr,sn),vr(Kt,kr)})}},Ee.clickFn=function(mr,$r){if(Lr.remove(),Kt._fullLayout._activeShapeIndex>=0){Kt._fullLayout._deactivateShape(Kt);return}if(!dt){var ma=sr.clickmode;y.done(oa).then(function(){if(y.clear(oa),mr===2){for(br.remove(),gt=0;gt<kt.length;gt++)Er=kt[gt],Er._module.selectPoints(Er,!1);if(at(Kt,kt),j(Ee),yt(Kt),kt.length){var Ba=kt[0].xaxis,Ca=kt[0].yaxis;if(Ba&&Ca){for(var da=[],Sa=Kt._fullLayout.selections,Ti=0;Ti<Sa.length;Ti++){var ai=Sa[Ti];ai&&(ai.xref!==Ba._id||ai.yref!==Ca._id)&&da.push(ai)}da.length<Sa.length&&(Kt._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Kt,{selections:da}))}}}else ma.indexOf("select")>-1&&se($r,Kt,Ee.xaxes,Ee.yaxes,Ee.subplot,Ee,br),ma==="event"&&_r(Kt,void 0);t.click(Kt,$r,ka.id)}).catch(b.error)}},Ee.doneFn=function(){Lr.remove(),y.done(oa).then(function(){y.clear(oa),!sa&&mt&&Ee.selectionDefs&&(mt.subtract=Fa,Ee.selectionDefs.push(mt),Ee.mergedPolygons.length=0,[].push.apply(Ee.mergedPolygons,$a)),(sa||dt)&&j(Ee,sa),Ee.doneFnCompleted&&Ee.doneFnCompleted(ca),xt&&_r(Kt,kr)}).catch(b.error)}}function se(Fe,Ke,Ne,Ee,Ve,ke,Te){var Le=Ke._hoverdata,rt=Ke._fullLayout,dt=rt.clickmode,xt=dt.indexOf("event")>-1,It=[],Bt,Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma;if(be(Le)){Z(Fe,Ke,ke),Bt=ie(Ke,Ne,Ee,Ve);var Ua=Ae(Le,Bt),ni=Ua.pointNumbers.length>0;if(ni?Ie(Bt,Ua):Ze(Bt)&&(La=Be(Ua))){for(Te&&Te.remove(),Ma=0;Ma<Bt.length;Ma++)Gt=Bt[Ma],Gt._module.selectPoints(Gt,!1);at(Ke,Bt),j(ke),xt&&yt(Ke)}else{ka=Fe.shiftKey&&(La!==void 0?La:Be(Ua)),Kt=he(Ua.pointNumber,Ua.searchInfo,ka);var Wt=ke.selectionDefs.concat([Kt]);for(sr=J(Wt,sr),Ma=0;Ma<Bt.length;Ma++)if(sa=Bt[Ma]._module.selectPoints(Bt[Ma],sr),Aa=lt(sa,Bt[Ma]),It.length)for(var zt=0;zt<Aa.length;zt++)It.push(Aa[zt]);else It=Aa;if(Ga={points:It},at(Ke,Bt,Ga),Kt&&ke&&ke.selectionDefs.push(Kt),Te){var Vt=ke.mergedPolygons,Ut=s(ke.dragmode);p(Me(Vt,Ut),Te,ke)}xt&&_r(Ke,Ga)}}}function he(Fe,Ke,Ne){return{pointNumber:Fe,searchInfo:Ke,subtract:!!Ne}}function G(Fe){return"pointNumber"in Fe&&"searchInfo"in Fe}function $(Fe){return{xmin:0,xmax:0,ymin:0,ymax:0,pts:[],contains:function(Ke,Ne,Ee,Ve){var ke=Fe.searchInfo.cd[0].trace.index,Te=Ve.cd[0].trace.index;return Te===ke&&Ee===Fe.pointNumber},isRect:!1,degenerate:!1,subtract:!!Fe.subtract}}function J(Fe){if(!Fe.length)return;for(var Ke=[],Ne=G(Fe[0])?0:Fe[0][0][0],Ee=Ne,Ve=G(Fe[0])?0:Fe[0][0][1],ke=Ve,Te=0;Te<Fe.length;Te++)if(G(Fe[Te]))Ke.push($(Fe[Te]));else{var Le=O(Fe[Te]);Le.subtract=!!Fe[Te].subtract,Ke.push(Le),Ne=Math.min(Ne,Le.xmin),Ee=Math.max(Ee,Le.xmax),Ve=Math.min(Ve,Le.ymin),ke=Math.max(ke,Le.ymax)}function rt(dt,xt,It,Bt){for(var Gt=!1,Kt=0;Kt<Ke.length;Kt++)Ke[Kt].contains(dt,xt,It,Bt)&&(Gt=!Ke[Kt].subtract);return Gt}return{xmin:Ne,xmax:Ee,ymin:Ve,ymax:ke,pts:[],contains:rt,isRect:!1,degenerate:!1}}function Z(Fe,Ke,Ne){var Ee=Ke._fullLayout,Ve=Ne.plotinfo,ke=Ne.dragmode,Te=Ee._lastSelectedSubplot&&Ee._lastSelectedSubplot===Ve.id,Le=(Fe.shiftKey||Fe.altKey)&&!(n(ke)&&s(ke));Te&&Le&&Ve.selection&&Ve.selection.selectionDefs&&!Ne.selectionDefs?(Ne.selectionDefs=Ve.selection.selectionDefs,Ne.mergedPolygons=Ve.selection.mergedPolygons):(!Le||!Ve.selection)&&j(Ne),Te||(T(Ke),Ee._lastSelectedSubplot=Ve.id)}function re(Fe){return Fe._fullLayout._activeShapeIndex>=0}function ne(Fe){return Fe._fullLayout._activeSelectionIndex>=0}function j(Fe,Ke){var Ne=Fe.dragmode,Ee=Fe.plotinfo,Ve=Fe.gd;re(Ve)&&Ve._fullLayout._deactivateShape(Ve),ne(Ve)&&Ve._fullLayout._deactivateSelection(Ve);var ke=Ve._fullLayout,Te=ke._zoomlayer,Le=n(Ne),rt=c(Ne);if(Le||rt){var dt=Te.selectAll(".select-outline-"+Ee.id);if(dt&&Ve._fullLayout._outlining){var xt;Le&&(xt=S(dt,Fe)),xt&&A.call("_guiRelayout",Ve,{shapes:xt});var It;rt&&!Q(Fe)&&(It=E(dt,Fe)),It&&(Ve._fullLayout._noEmitSelectedAtStart=!0,A.call("_guiRelayout",Ve,{selections:It}).then(function(){Ke&&m(Ve)})),Ve._fullLayout._outlining=!1}}Ee.selection={},Ee.selection.selectionDefs=Fe.selectionDefs=[],Ee.selection.mergedPolygons=Fe.mergedPolygons=[]}function ee(Fe){return Fe._id}function ie(Fe,Ke,Ne,Ee){if(!Fe.calcdata)return[];var Ve=[],ke=Ke.map(ee),Te=Ne.map(ee),Le,rt,dt;for(dt=0;dt<Fe.calcdata.length;dt++)if(Le=Fe.calcdata[dt],rt=Le[0].trace,!(rt.visible!==!0||!rt._module||!rt._module.selectPoints))if(Q({subplot:Ee})&&(rt.subplot===Ee||rt.geo===Ee))Ve.push(fe(rt._module,Le,Ke[0],Ne[0]));else if(rt.type==="splom"){if(rt._xaxes[ke[0]]&&rt._yaxes[Te[0]]){var xt=fe(rt._module,Le,Ke[0],Ne[0]);xt.scene=Fe._fullLayout._splomScenes[rt.uid],Ve.push(xt)}}else if(rt.type==="sankey"){var It=fe(rt._module,Le,Ke[0],Ne[0]);Ve.push(It)}else{if(ke.indexOf(rt.xaxis)===-1&&(!rt._xA||!rt._xA.overlaying)||Te.indexOf(rt.yaxis)===-1&&(!rt._yA||!rt._yA.overlaying))continue;Ve.push(fe(rt._module,Le,f(Fe,rt.xaxis),f(Fe,rt.yaxis)))}return Ve}function fe(Fe,Ke,Ne,Ee){return{_module:Fe,cd:Ke,xaxis:Ne,yaxis:Ee}}function be(Fe){return Fe&&Array.isArray(Fe)&&Fe[0].hoverOnBox!==!0}function Ae(Fe,Ke){var Ne=Fe[0],Ee=-1,Ve=[],ke,Te;for(Te=0;Te<Ke.length;Te++)if(ke=Ke[Te],Ne.fullData.index===ke.cd[0].trace.index){if(Ne.hoverOnBox===!0)break;Ne.pointNumber!==void 0?Ee=Ne.pointNumber:Ne.binNumber!==void 0&&(Ee=Ne.binNumber,Ve=Ne.pointNumbers);break}return{pointNumber:Ee,pointNumbers:Ve,searchInfo:ke}}function Be(Fe){var Ke=Fe.searchInfo.cd[0].trace,Ne=Fe.pointNumber,Ee=Fe.pointNumbers,Ve=Ee.length>0,ke=Ve?Ee[0]:Ne;return Ke.selectedpoints?Ke.selectedpoints.indexOf(ke)>-1:!1}function Ie(Fe,Ke){var Ne=[],Ee,Ve,ke,Te;for(Te=0;Te<Fe.length;Te++)Ee=Fe[Te],Ee.cd[0].trace.selectedpoints&&Ee.cd[0].trace.selectedpoints.length>0&&Ne.push(Ee);if(Ne.length===1&&(ke=Ne[0]===Ke.searchInfo,ke&&(Ve=Ke.searchInfo.cd[0].trace,Ve.selectedpoints.length===Ke.pointNumbers.length))){for(Te=0;Te<Ke.pointNumbers.length;Te++)if(Ve.selectedpoints.indexOf(Ke.pointNumbers[Te])<0)return!1;return!0}return!1}function Ze(Fe){var Ke=0,Ne,Ee,Ve;for(Ve=0;Ve<Fe.length;Ve++)if(Ne=Fe[Ve],Ee=Ne.cd[0].trace,Ee.selectedpoints&&(Ee.selectedpoints.length>1||(Ke+=Ee.selectedpoints.length,Ke>1)))return!1;return Ke===1}function at(Fe,Ke,Ne){var Ee;for(Ee=0;Ee<Ke.length;Ee++){var Ve=Ke[Ee].cd[0].trace._fullInput,ke=Fe._fullLayout._tracePreGUI[Ve.uid]||{};ke.selectedpoints===void 0&&(ke.selectedpoints=Ve._input.selectedpoints||null)}var Te;if(Ne){var Le=Ne.points||[];for(Ee=0;Ee<Ke.length;Ee++)Te=Ke[Ee].cd[0].trace,Te._input.selectedpoints=Te._fullInput.selectedpoints=[],Te._fullInput!==Te&&(Te.selectedpoints=[]);for(var rt=0;rt<Le.length;rt++){var dt=Le[rt],xt=dt.data,It=dt.fullData,Bt=dt.pointIndex,Gt=dt.pointIndices;Gt?([].push.apply(xt.selectedpoints,Gt),Te._fullInput!==Te&&[].push.apply(It.selectedpoints,Gt)):(xt.selectedpoints.push(Bt),Te._fullInput!==Te&&It.selectedpoints.push(Bt))}}else for(Ee=0;Ee<Ke.length;Ee++)Te=Ke[Ee].cd[0].trace,delete Te.selectedpoints,delete Te._input.selectedpoints,Te._fullInput!==Te&&delete Te._fullInput.selectedpoints;it(Fe,Ke)}function it(Fe,Ke){for(var Ne=!1,Ee=0;Ee<Ke.length;Ee++){var Ve=Ke[Ee],ke=Ve.cd;A.traceIs(ke[0].trace,"regl")&&(Ne=!0);var Te=Ve._module,Le=Te.styleOnSelect||Te.style;Le&&(Le(Fe,ke,ke[0].node3),ke[0].nodeRangePlot3&&Le(Fe,ke,ke[0].nodeRangePlot3))}Ne&&(P(Fe),L(Fe))}function et(Fe,Ke,Ne){for(var Ee=Ne?g.difference:g.union,Ve=Ee({regions:Fe},{regions:[Ke]}),ke=Ve.regions.reverse(),Te=0;Te<ke.length;Te++){var Le=ke[Te];Le.subtract=St(Le,ke.slice(0,Te))}return ke}function lt(Fe,Ke){if(Array.isArray(Fe))for(var Ne=Ke.cd,Ee=Ke.cd[0].trace,Ve=0;Ve<Fe.length;Ve++)Fe[Ve]=r(Fe[Ve],Ee,Ne);return Fe}function Me(Fe,Ke){for(var Ne=[],Ee=0;Ee<Fe.length;Ee++){Ne[Ee]=[];for(var Ve=0;Ve<Fe[Ee].length;Ve++){Ne[Ee][Ve]=[],Ne[Ee][Ve][0]=Ve?"L":"M";for(var ke=0;ke<Fe[Ee][Ve].length;ke++)Ne[Ee][Ve].push(Fe[Ee][Ve][ke])}Ke||Ne[Ee].push(["Z",Ne[Ee][0][1],Ne[Ee][0][2]])}return Ne}function ge(Fe,Ke){for(var Ne=[],Ee,Ve=[],ke,Te=0;Te<Ke.length;Te++){var Le=Ke[Te];ke=Le._module.selectPoints(Le,Fe),Ve.push(ke),Ee=lt(ke,Le),Ne=Ne.concat(Ee)}return Ne}function ce(Fe,Ke,Ne,Ee,Ve){var ke=!!Ee,Te,Le,rt;Ve&&(Te=Ve.plotinfo,Le=Ve.xaxes[0]._id,rt=Ve.yaxes[0]._id);var dt=[],xt=[],It=Ct(Fe),Bt=Fe._fullLayout;if(Te){var Gt=Bt._zoomlayer,Kt=Bt.dragmode,sr=n(Kt),sa=c(Kt);if(sr||sa){var Aa=f(Fe,Le,"x"),La=f(Fe,rt,"y");if(Aa&&La){var ka=Gt.selectAll(".select-outline-"+Te.id);if(ka&&Fe._fullLayout._outlining&&ka.length){for(var Ga=ka[0][0],Ma=Ga.getAttribute("d"),Ua=w(Ma,Fe,Te),ni=[],Wt=0;Wt<Ua.length;Wt++){for(var zt=Ua[Wt],Vt=[],Ut=0;Ut<zt.length;Ut++)Vt.push([Ot(Aa,zt[Ut][1]),Ot(La,zt[Ut][2])]);Vt.xref=Le,Vt.yref=rt,Vt.subtract=St(Vt,ni),ni.push(Vt)}It=It.concat(ni)}}}}var xr=Le&&rt?[Le+rt]:Bt._subplots.cartesian;ze(Fe);for(var Zr={},pa=0;pa<xr.length;pa++){var Xr=xr[pa],Ea=Xr.indexOf("y"),Fa=Xr.slice(0,Ea),qa=Xr.slice(Ea),ya=Le&&rt?Ne:void 0;if(ya=Qe(It,Fa,qa,ya),ya){var $a=Ee;if(!ke){var mt=f(Fe,Fa,"x"),gt=f(Fe,qa,"y");$a=ie(Fe,[mt],[gt],Xr);for(var Er=0;Er<$a.length;Er++){var kr=$a[Er],br=kr.cd[0],Tr=br.trace;if(kr._module.name==="scattergl"&&!br.t.xpx){var Mr=Tr.x,Fr=Tr.y,Lr=Tr._length;br.t.xpx=[],br.t.ypx=[];for(var Jr=0;Jr<Lr;Jr++)br.t.xpx[Jr]=mt.c2p(Mr[Jr]),br.t.ypx[Jr]=gt.c2p(Fr[Jr])}kr._module.name==="splom"&&(Zr[Tr.uid]||(Zr[Tr.uid]=!0))}}var oa=ge(ya,$a);dt=dt.concat(oa),xt=xt.concat($a)}}var ca={points:dt};at(Fe,xt,ca);var kt=Bt.clickmode,ir=kt.indexOf("event")>-1&&Ke;if(!Te&&Ke){var mr=Ct(Fe,!0);if(mr.length){var $r=mr[0].xref,ma=mr[0].yref;if($r&&ma){var Ba=jt(mr),Ca=ar([f(Fe,$r,"x"),f(Fe,ma,"y")]);Ca(ca,Ba)}}Fe._fullLayout._noEmitSelectedAtStart?Fe._fullLayout._noEmitSelectedAtStart=!1:ir&&_r(Fe,ca),Bt._reselect=!1}if(!Te&&Bt._deselect){var da=Bt._deselect;Le=da.xref,rt=da.yref,tt(Le,rt,xt)||nt(Fe,Le,rt,Ee),ir&&(ca.points.length?_r(Fe,ca):yt(Fe)),Bt._deselect=!1}return{eventData:ca,selectionTesters:Ne}}function ze(Fe){var Ke=Fe.calcdata;if(Ke)for(var Ne=0;Ne<Ke.length;Ne++){var Ee=Ke[Ne][0],Ve=Ee.trace,ke=Fe._fullLayout._splomScenes;if(ke){var Te=ke[Ve.uid];Te&&(Te.selectBatch=[])}}}function tt(Fe,Ke,Ne){for(var Ee=0;Ee<Ne.length;Ee++){var Ve=Ne[Ee];if(Ve.xaxis&&Ve.xaxis._id===Fe&&Ve.yaxis&&Ve.yaxis._id===Ke)return!0}return!1}function nt(Fe,Ke,Ne,Ee){Ee=ie(Fe,[f(Fe,Ke,"x")],[f(Fe,Ne,"y")],Ke+Ne);for(var Ve=0;Ve<Ee.length;Ve++){var ke=Ee[Ve];ke._module.selectPoints(ke,!1)}at(Fe,Ee)}function Qe(Fe,Ke,Ne,Ee){for(var Ve,ke=0;ke<Fe.length;ke++){var Te=Fe[ke];if(!(Ke!==Te.xref||Ne!==Te.yref))if(Ve){var Le=!!Te.subtract;Ve=et(Ve,Te,Le),Ee=J(Ve)}else Ve=[Te],Ee=O(Te)}return Ee}function Ct(Fe,Ke){for(var Ne=[],Ee=Fe._fullLayout,Ve=Ee.selections,ke=Ve.length,Te=0;Te<ke;Te++)if(!(Ke&&Te!==Ee._activeSelectionIndex)){var Le=Ve[Te];if(Le){var rt=Le.xref,dt=Le.yref,xt=f(Fe,rt,"x"),It=f(Fe,dt,"y"),Bt,Gt,Kt,sr,sa;if(Le.type==="rect"){sa=[];var Aa=Ot(xt,Le.x0),La=Ot(xt,Le.x1),ka=Ot(It,Le.y0),Ga=Ot(It,Le.y1);sa=[[Aa,ka],[Aa,Ga],[La,Ga],[La,ka]],Bt=Math.min(Aa,La),Gt=Math.max(Aa,La),Kt=Math.min(ka,Ga),sr=Math.max(ka,Ga),sa.xmin=Bt,sa.xmax=Gt,sa.ymin=Kt,sa.ymax=sr,sa.xref=rt,sa.yref=dt,sa.subtract=!1,sa.isRect=!0,Ne.push(sa)}else if(Le.type==="path")for(var Ma=Le.path.split("Z"),Ua=[],ni=0;ni<Ma.length;ni++){var Wt=Ma[ni];if(Wt){Wt+="Z";var zt=h.extractPathCoords(Wt,v.paramIsX,"raw"),Vt=h.extractPathCoords(Wt,v.paramIsY,"raw");Bt=1/0,Gt=-1/0,Kt=1/0,sr=-1/0,sa=[];for(var Ut=0;Ut<zt.length;Ut++){var xr=Ot(xt,zt[Ut]),Zr=Ot(It,Vt[Ut]);sa.push([xr,Zr]),Bt=Math.min(xr,Bt),Gt=Math.max(xr,Gt),Kt=Math.min(Zr,Kt),sr=Math.max(Zr,sr)}sa.xmin=Bt,sa.xmax=Gt,sa.ymin=Kt,sa.ymax=sr,sa.xref=rt,sa.yref=dt,sa.subtract=St(sa,Ua),Ua.push(sa),Ne.push(sa)}}}}return Ne}function St(Fe,Ke){for(var Ne=!1,Ee=0;Ee<Ke.length;Ee++)for(var Ve=Ke[Ee],ke=0;ke<Fe.length;ke++)if(x(Fe[ke],Ve)){Ne=!Ne;break}return Ne}function Ot(Fe,Ke){return Fe.type==="date"&&(Ke=Ke.replace("_"," ")),Fe.type==="log"?Fe.c2p(Ke):Fe.r2p(Ke,null,Fe.calendar)}function jt(Fe){for(var Ke=Fe.length,Ne=[],Ee=0;Ee<Ke;Ee++){var Ve=Fe[Ee];Ne=Ne.concat(Ve),Ne=Ne.concat([Ve[0]])}return ur(Ne)}function ur(Fe){return Fe.isRect=Fe.length===5&&Fe[0][0]===Fe[4][0]&&Fe[0][1]===Fe[4][1]&&Fe[0][0]===Fe[1][0]&&Fe[2][0]===Fe[3][0]&&Fe[0][1]===Fe[3][1]&&Fe[1][1]===Fe[2][1]||Fe[0][1]===Fe[1][1]&&Fe[2][1]===Fe[3][1]&&Fe[0][0]===Fe[3][0]&&Fe[1][0]===Fe[2][0],Fe.isRect&&(Fe.xmin=Math.min(Fe[0][0],Fe[2][0]),Fe.xmax=Math.max(Fe[0][0],Fe[2][0]),Fe.ymin=Math.min(Fe[0][1],Fe[2][1]),Fe.ymax=Math.max(Fe[0][1],Fe[2][1])),Fe}function ar(Fe){return function(Ke,Ne){for(var Ee,Ve,ke=0;ke<Fe.length;ke++){var Te=Fe[ke],Le=Te._id,rt=Le.charAt(0);if(Ne.isRect){Ee||(Ee={});var dt=Ne[rt+"min"],xt=Ne[rt+"max"];dt!==void 0&&xt!==void 0&&(Ee[Le]=[N(Te,dt),N(Te,xt)].sort(d))}else Ve||(Ve={}),Ve[Le]=Ne.map(U(Te))}Ee&&(Ke.range=Ee),Ve&&(Ke.lassoPoints=Ve)}}function Cr(Fe){var Ke=Fe.plotinfo;return Ke.fillRangeItems||ar(Fe.xaxes.concat(Fe.yaxes))}function vr(Fe,Ke){Fe.emit("plotly_selecting",Ke)}function _r(Fe,Ke){Ke&&(Ke.selections=(Fe.layout||{}).selections||[]),Fe.emit("plotly_selected",Ke)}function yt(Fe){Fe.emit("plotly_deselect",null)}H.exports={reselect:ce,prepSelect:ue,clearOutline:T,clearSelectionsCache:j,selectOnClick:se}}}),ES=Ye({"src/components/annotations/arrow_paths.js"(X,H){"use strict";H.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}]}}),L_=Ye({"src/constants/axis_placeable_objects.js"(X,H){"use strict";H.exports={axisRefDescription:function(g,x,A){return["If set to a",g,"axis id (e.g. *"+g+"* or","*"+g+"2*), the `"+g+"` position refers to a",g,"coordinate. If set to *paper*, the `"+g+"`","position refers to the distance from the",x,"of the plotting","area in normalized coordinates where *0* (*1*) corresponds to the",x,"("+A+"). If set to a",g,"axis ID followed by","*domain* (separated by a space), the position behaves like for","*paper*, but refers to the distance in fractions of the domain","length from the",x,"of the domain of that axis: e.g.,","*"+g+"2 domain* refers to the domain of the second",g," axis and a",g,"position of 0.5 refers to the","point between the",x,"and the",A,"of the domain of the","second",g,"axis."].join(" ")}}}}),Kg=Ye({"src/components/annotations/attributes.js"(X,H){"use strict";var g=ES(),x=Au(),A=wh(),M=cl().templatedArray,e=L_();H.exports=M("annotation",{visible:{valType:"boolean",dflt:!0,editType:"calc+arraydraw"},text:{valType:"string",editType:"calc+arraydraw"},textangle:{valType:"angle",dflt:0,editType:"calc+arraydraw"},font:x({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:g.length,dflt:1,editType:"arraydraw"},startarrowhead:{valType:"integer",min:0,max:g.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",A.idRegex.x.toString()],editType:"calc"},ayref:{valType:"enumerated",dflt:"pixel",values:["pixel",A.idRegex.y.toString()],editType:"calc"},xref:{valType:"enumerated",values:["paper",A.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",A.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:x({editType:"arraydraw"}),editType:"arraydraw"},captureevents:{valType:"boolean",editType:"arraydraw"},editType:"calc"})}}),Tv=Ye({"src/traces/scatter/constants.js"(X,H){"use strict";H.exports={PTS_LINESONLY:20,minTolerance:.2,toleranceGrowth:10,maxScreensAway:20,eventDataKeys:[]}}}),$d=Ye({"src/traces/scatter/fillcolor_attribute.js"(X,H){"use strict";H.exports=function(x){return{valType:"color",editType:"style",anim:!0}}}}),Pc=Ye({"src/traces/scatter/attributes.js"(X,H){"use strict";var g=Cc().axisHoverFormat,x=xs().texttemplateAttrs,A=xs().hovertemplateAttrs,M=tu(),e=Au(),t=Uh().dash,r=Uh().pattern,o=Bo(),a=Tv(),i=Oo().extendFlat,n=$d();function s(v){return{valType:"any",dflt:0,editType:"calc"}}function c(v){return{valType:"any",editType:"calc"}}function h(v){return{valType:"enumerated",values:["start","middle","end"],dflt:"middle",editType:"calc"}}H.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},x0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dx:{valType:"number",dflt:1,editType:"calc",anim:!0},y:{valType:"data_array",editType:"calc+clearAxisTypes",anim:!0},y0:{valType:"any",dflt:0,editType:"calc+clearAxisTypes",anim:!0},dy:{valType:"number",dflt:1,editType:"calc",anim:!0},xperiod:s("x"),yperiod:s("y"),xperiod0:c("x0"),yperiod0:c("y0"),xperiodalignment:h("x"),yperiodalignment:h("y"),xhoverformat:g("x"),yhoverformat:g("y"),offsetgroup:{valType:"string",dflt:"",editType:"calc"},alignmentgroup:{valType:"string",dflt:"",editType:"calc"},stackgroup:{valType:"string",dflt:"",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc"},groupnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},stackgaps:{valType:"enumerated",values:["infer zero","interpolate"],dflt:"infer zero",editType:"calc"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},texttemplate:x({},{}),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:a.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:i({},t,{editType:"style"}),backoff:{valType:"number",min:0,dflt:"auto",arrayOk:!0,editType:"plot"},simplify:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},cliponaxis:{valType:"boolean",dflt:!0,editType:"plot"},fill:{valType:"enumerated",values:["none","tozeroy","tozerox","tonexty","tonextx","toself","tonext"],editType:"calc"},fillcolor:n(!0),fillgradient:i({type:{valType:"enumerated",values:["radial","horizontal","vertical","none"],dflt:"none",editType:"calc"},start:{valType:"number",editType:"calc"},stop:{valType:"number",editType:"calc"},colorscale:{valType:"colorscale",editType:"style"},editType:"calc"}),fillpattern:r,marker:i({symbol:{valType:"enumerated",values:o.symbolList,dflt:"circle",arrayOk:!0,editType:"style"},opacity:{valType:"number",min:0,max:1,arrayOk:!0,editType:"style",anim:!0},angle:{valType:"angle",dflt:0,arrayOk:!0,editType:"plot",anim:!1},angleref:{valType:"enumerated",values:["previous","up"],dflt:"up",editType:"plot",anim:!1},standoff:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"plot",anim:!0},size:{valType:"number",min:0,dflt:6,arrayOk:!0,editType:"calc",anim:!0},maxdisplayed:{valType:"number",min:0,dflt:0,editType:"plot"},sizeref:{valType:"number",dflt:1,editType:"calc"},sizemin:{valType:"number",min:0,dflt:0,editType:"calc"},sizemode:{valType:"enumerated",values:["diameter","area"],dflt:"diameter",editType:"calc"},line:i({width:{valType:"number",min:0,arrayOk:!0,editType:"style",anim:!0},editType:"calc"},M("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"},M("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:e({editType:"calc",colorEditType:"style",arrayOk:!0}),zorder:{valType:"integer",dflt:0,editType:"plot"}}}}),kS=Ye({"src/components/selections/attributes.js"(X,H){"use strict";var g=Kg(),x=Pc().line,A=Uh().dash,M=Oo().extendFlat,e=Ou().overrideAll,t=cl().templatedArray,r=L_();H.exports=e(t("selection",{type:{valType:"enumerated",values:["rect","path"]},xref:M({},g.xref,{}),yref:M({},g.yref,{}),x0:{valType:"any"},x1:{valType:"any"},y0:{valType:"any"},y1:{valType:"any"},path:{valType:"string",editType:"arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:.7,editType:"arraydraw"},line:{color:x.color,width:M({},x.width,{min:1,dflt:1}),dash:M({},A,{dflt:"dot"})}}),"arraydraw","from-root")}}),PO=Ye({"src/components/selections/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=kS(),e=rg();H.exports=function(o,a){A(o,a,{name:"selections",handleItemDefaults:t});for(var i=a.selections,n=0;n<i.length;n++){var s=i[n];s&&s.path===void 0&&(s.x0===void 0||s.x1===void 0||s.y0===void 0||s.y1===void 0)&&(a.selections[n]=null)}};function t(r,o,a){function i(P,L){return g.coerce(r,o,M,P,L)}var n=i("path"),s=n?"path":"rect",c=i("type",s),h=c!=="path";h&&delete o.path,i("opacity"),i("line.color"),i("line.width"),i("line.dash");for(var v=["x","y"],p=0;p<2;p++){var T=v[p],l={_fullLayout:a},_,w,S,E=x.coerceRef(r,o,l,T);if(_=x.getFromId(l,E),_._selectionIndices.push(o._index),S=e.rangeToShapePosition(_),w=e.shapePositionToRange(_),h){var m=T+"0",b=T+"1",d=r[m],u=r[b];r[m]=w(r[m],!0),r[b]=w(r[b],!0),x.coercePosition(o,l,i,E,m),x.coercePosition(o,l,i,E,b);var y=o[m],f=o[b];y!==void 0&&f!==void 0&&(o[m]=S(y),o[b]=S(f),r[m]=d,r[b]=u)}}h&&g.noneOrAll(r,o,["x0","x1","y0","y1"])}}}),IO=Ye({"src/components/selections/draw_newselection/defaults.js"(X,H){"use strict";H.exports=function(x,A,M){M("newselection.mode");var e=M("newselection.line.width");e&&(M("newselection.line.color"),M("newselection.line.dash")),M("activeselection.fillcolor"),M("activeselection.opacity")}}}),P_=Ye({"src/plots/cartesian/include_components.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Xc();H.exports=function(e){return function(r,o){var a=r[e];if(Array.isArray(a))for(var i=g.subplotsRegistry.cartesian,n=i.idRegex,s=o._subplots,c=s.xaxis,h=s.yaxis,v=s.cartesian,p=o._has("cartesian"),T=0;T<a.length;T++){var l=a[T];if(x.isPlainObject(l)){var _=A.cleanId(l.xref,"x",!1),w=A.cleanId(l.yref,"y",!1),S=n.x.test(_),E=n.y.test(w);if(S||E){p||x.pushUnique(o._basePlotModules,i);var m=!1;S&&c.indexOf(_)===-1&&(c.push(_),m=!0),E&&h.indexOf(w)===-1&&(h.push(w),m=!0),m&&S&&E&&v.push(_+w)}}}}}}}),ff=Ye({"src/components/selections/index.js"(X,H){"use strict";var g=MS(),x=LO();H.exports={moduleType:"component",name:"selections",layoutAttributes:kS(),supplyLayoutDefaults:PO(),supplyDrawNewSelectionDefaults:IO(),includeBasePlot:P_()("selections"),draw:g.draw,drawOne:g.drawOne,reselect:x.reselect,prepSelect:x.prepSelect,clearOutline:x.clearOutline,clearSelectionsCache:x.clearSelectionsCache,selectOnClick:x.selectOnClick}}}),CS=Ye({"src/plots/cartesian/dragbox.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=bh(),e=_2(),t=Hn(),r=x.strTranslate,o=jl(),a=Fn(),i=Bo(),n=Lc(),s=Co(),c=Kd(),h=bp(),v=Jd(),p=v.selectingOrDrawing,T=v.freeMode,l=oh().FROM_TL,_=M_(),w=k_().redrawReglTraces,S=Gu(),E=Xc().getFromId,m=ff().prepSelect,b=ff().clearOutline,d=ff().selectOnClick,u=SS(),y=wh(),f=y.MINDRAG,P=y.MINZOOM,L=!0;function z(fe,be,Ae,Be,Ie,Ze,at,it){var et=fe._fullLayout._zoomlayer,lt=at+it==="nsew",Me=(at+it).length===1,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur,ar,Cr,vr,_r,yt,Fe,Ke,Ne,Ee,Ve,ke,Te;Ae+=be.yaxis._shift;function Le(){if(ge=be.xaxis,ce=be.yaxis,Ot=ge._length,jt=ce._length,Ct=ge._offset,St=ce._offset,ze={},ze[ge._id]=ge,tt={},tt[ce._id]=ce,at&&it)for(var br=be.overlays,Tr=0;Tr<br.length;Tr++){var Mr=br[Tr].xaxis;ze[Mr._id]=Mr;var Fr=br[Tr].yaxis;tt[Fr._id]=Fr}nt=ie(ze),Qe=ie(tt),Cr=O(nt,it),vr=O(Qe,at),_r=!vr&&!Cr,ar=j(fe,fe._fullLayout._axisMatchGroups,ze,tt),ur=j(fe,fe._fullLayout._axisConstraintGroups,ze,tt,ar);var Lr=ur.isSubplotConstrained||ar.isSubplotConstrained;yt=it||Lr,Fe=at||Lr;var Jr=fe._fullLayout;Ke=Jr._has("scattergl"),Ne=Jr._has("splom"),Ee=Jr._has("svg")}Le();var rt=Q(vr+Cr,fe._fullLayout.dragmode,lt),dt=B(be,at+it+"drag",rt,Ae,Be,Ie,Ze);if(_r&&!lt)return dt.onmousedown=null,dt.style.pointerEvents="none",dt;var xt={element:dt,gd:fe,plotinfo:be};xt.prepFn=function(br,Tr,Mr){var Fr=xt.dragmode,Lr=fe._fullLayout.dragmode;Lr!==Fr&&(xt.dragmode=Lr),Le(),ke=fe._fullLayout._invScaleX,Te=fe._fullLayout._invScaleY,_r||(lt?br.shiftKey?Lr==="pan"?Lr="zoom":p(Lr)||(Lr="pan"):br.ctrlKey&&(Lr="pan"):Lr="pan"),T(Lr)?xt.minDrag=1:xt.minDrag=void 0,p(Lr)?(xt.xaxes=nt,xt.yaxes=Qe,m(br,Tr,Mr,xt,Lr)):(xt.clickFn=Bt,p(Fr)&&It(),_r||(Lr==="zoom"?(xt.moveFn=Wt,xt.doneFn=Vt,xt.minDrag=1,ni(br,Tr,Mr)):Lr==="pan"&&(xt.moveFn=Ea,xt.doneFn=$a))),fe._fullLayout._redrag=function(){var Jr=fe._dragdata;if(Jr&&Jr.element===dt){var oa=fe._fullLayout.dragmode;p(oa)||(Le(),mt([0,0,Ot,jt]),xt.moveFn(Jr.dx,Jr.dy))}}};function It(){xt.plotinfo.selection=!1,b(fe)}function Bt(br,Tr){var Mr=xt.gd;if(Mr._fullLayout._activeShapeIndex>=0){Mr._fullLayout._deactivateShape(Mr);return}var Fr=Mr._fullLayout.clickmode;if($(Mr),br===2&&!Me&&ya(),lt)Fr.indexOf("select")>-1&&d(Tr,Mr,nt,Qe,be.id,xt),Fr.indexOf("event")>-1&&n.click(Mr,Tr,be.id);else if(br===1&&Me){var Lr=at?ce:ge,Jr=at==="s"||it==="w"?0:1,oa=Lr._name+".range["+Jr+"]",ca=I(Lr,Jr),kt="left",ir="middle";if(Lr.fixedrange)return;at?(ir=at==="n"?"top":"bottom",Lr.side==="right"&&(kt="right")):it==="e"&&(kt="right"),Mr._context.showAxisRangeEntryBoxes&&g.select(dt).call(o.makeEditable,{gd:Mr,immediate:!0,background:Mr._fullLayout.paper_bgcolor,text:String(ca),fill:Lr.tickfont?Lr.tickfont.color:"#444",horizontalAlign:kt,verticalAlign:ir}).on("edit",function(mr){var $r=Lr.d2r(mr);$r!==void 0&&t.call("_guiRelayout",Mr,oa,$r)})}}h.init(xt);var Gt,Kt,sr,sa,Aa,La,ka,Ga,Ma,Ua;function ni(br,Tr,Mr){var Fr=dt.getBoundingClientRect();Gt=Tr-Fr.left,Kt=Mr-Fr.top,fe._fullLayout._calcInverseTransform(fe);var Lr=x.apply3DTransform(fe._fullLayout._invTransform)(Gt,Kt);Gt=Lr[0],Kt=Lr[1],sr={l:Gt,r:Gt,w:0,t:Kt,b:Kt,h:0},sa=fe._hmpixcount?fe._hmlumcount/fe._hmpixcount:M(fe._fullLayout.plot_bgcolor).getLuminance(),Aa="M0,0H"+Ot+"V"+jt+"H0V0",La=!1,ka="xy",Ua=!1,Ga=ue(et,sa,Ct,St,Aa),Ma=se(et,Ct,St)}function Wt(br,Tr){if(fe._transitioningWithDuration)return!1;var Mr=Math.max(0,Math.min(Ot,ke*br+Gt)),Fr=Math.max(0,Math.min(jt,Te*Tr+Kt)),Lr=Math.abs(Mr-Gt),Jr=Math.abs(Fr-Kt);sr.l=Math.min(Gt,Mr),sr.r=Math.max(Gt,Mr),sr.t=Math.min(Kt,Fr),sr.b=Math.max(Kt,Fr);function oa(){ka="",sr.r=sr.l,sr.t=sr.b,Ma.attr("d","M0,0Z")}if(ur.isSubplotConstrained)Lr>P||Jr>P?(ka="xy",Lr/Ot>Jr/jt?(Jr=Lr*jt/Ot,Kt>Fr?sr.t=Kt-Jr:sr.b=Kt+Jr):(Lr=Jr*Ot/jt,Gt>Mr?sr.l=Gt-Lr:sr.r=Gt+Lr),Ma.attr("d",ne(sr))):oa();else if(ar.isSubplotConstrained)if(Lr>P||Jr>P){ka="xy";var ca=Math.min(sr.l/Ot,(jt-sr.b)/jt),kt=Math.max(sr.r/Ot,(jt-sr.t)/jt);sr.l=ca*Ot,sr.r=kt*Ot,sr.b=(1-ca)*jt,sr.t=(1-kt)*jt,Ma.attr("d",ne(sr))}else oa();else!vr||Jr<Math.min(Math.max(Lr*.6,f),P)?Lr<f||!Cr?oa():(sr.t=0,sr.b=jt,ka="x",Ma.attr("d",Z(sr,Kt))):!Cr||Lr<Math.min(Jr*.6,P)?(sr.l=0,sr.r=Ot,ka="y",Ma.attr("d",re(sr,Gt))):(ka="xy",Ma.attr("d",ne(sr)));sr.w=sr.r-sr.l,sr.h=sr.b-sr.t,ka&&(Ua=!0),fe._dragged=Ua,he(Ga,Ma,sr,Aa,La,sa),zt(),fe.emit("plotly_relayouting",Ve),La=!0}function zt(){Ve={},(ka==="xy"||ka==="x")&&(N(nt,sr.l/Ot,sr.r/Ot,Ve,ur.xaxes),Fa("x",Ve)),(ka==="xy"||ka==="y")&&(N(Qe,(jt-sr.b)/jt,(jt-sr.t)/jt,Ve,ur.yaxes),Fa("y",Ve))}function Vt(){zt(),$(fe),$a(),J(fe)}var Ut=[0,0,Ot,jt],xr=null,Zr=y.REDRAWDELAY,pa=be.mainplot?fe._fullLayout._plots[be.mainplot]:be;function Xr(br){if(!fe._context._scrollZoom.cartesian&&!fe._fullLayout._enablescrollzoom)return;if(It(),fe._transitioningWithDuration){br.preventDefault(),br.stopPropagation();return}Le(),clearTimeout(xr);var Tr=-br.deltaY;if(isFinite(Tr)||(Tr=br.wheelDelta/10),!isFinite(Tr)){x.log("Did not find wheel motion attributes: ",br);return}var Mr=Math.exp(-Math.min(Math.max(Tr,-20),20)/200),Fr=pa.draglayer.select(".nsewdrag").node().getBoundingClientRect(),Lr=(br.clientX-Fr.left)/Fr.width,Jr=(Fr.bottom-br.clientY)/Fr.height,oa;function ca(kt,ir,mr){if(kt.fixedrange)return;var $r=x.simpleMap(kt.range,kt.r2l),ma=$r[0]+($r[1]-$r[0])*ir;function Ba(Ca){return kt.l2r(ma+(Ca-ma)*mr)}kt.range=$r.map(Ba)}if(yt){for(it||(Lr=.5),oa=0;oa<nt.length;oa++)ca(nt[oa],Lr,Mr);Fa("x"),Ut[2]*=Mr,Ut[0]+=Ut[2]*Lr*(1/Mr-1)}if(Fe){for(at||(Jr=.5),oa=0;oa<Qe.length;oa++)ca(Qe[oa],Jr,Mr);Fa("y"),Ut[3]*=Mr,Ut[1]+=Ut[3]*(1-Jr)*(1/Mr-1)}mt(Ut),qa(),fe.emit("plotly_relayouting",Ve),xr=setTimeout(function(){fe._fullLayout&&(Ut=[0,0,Ot,jt],$a())},Zr),br.preventDefault()}at.length*it.length!==1&&ee(dt,Xr);function Ea(br,Tr){if(br=br*ke,Tr=Tr*Te,fe._transitioningWithDuration)return;if(fe._fullLayout._replotting=!0,Cr==="ew"||vr==="ns"){var Mr=Cr?-br:0,Fr=vr?-Tr:0;if(ar.isSubplotConstrained){if(Cr&&vr){var Lr=(br/Ot-Tr/jt)/2;br=Lr*Ot,Tr=-Lr*jt,Mr=-br,Fr=-Tr}vr?Mr=-Fr*Ot/jt:Fr=-Mr*jt/Ot}Cr&&(U(nt,br),Fa("x")),vr&&(U(Qe,Tr),Fa("y")),mt([Mr,Fr,Ot,jt]),qa(),fe.emit("plotly_relayouting",Ve);return}function Jr(Ba,Ca,da){for(var Sa=1-Ca,Ti,ai,an=0;an<Ba.length;an++){var sn=Ba[an];if(!sn.fixedrange){Ti=sn,ai=sn._rl[Sa]+(sn._rl[Ca]-sn._rl[Sa])/W(da/sn._length);var Mn=sn.l2r(ai);Mn!==!1&&Mn!==void 0&&(sn.range[Ca]=Mn)}}return Ti._length*(Ti._rl[Ca]-ai)/(Ti._rl[Ca]-Ti._rl[Sa])}var oa=Cr==="w"==(vr==="n")?1:-1;if(Cr&&vr&&(ur.isSubplotConstrained||ar.isSubplotConstrained)){var ca=(br/Ot+oa*Tr/jt)/2;br=ca*Ot,Tr=oa*ca*jt}var kt,ir;if(Cr==="w"?br=Jr(nt,0,br):Cr==="e"?br=Jr(nt,1,-br):Cr||(br=0),vr==="n"?Tr=Jr(Qe,1,Tr):vr==="s"?Tr=Jr(Qe,0,-Tr):vr||(Tr=0),kt=Cr==="w"?br:0,ir=vr==="n"?Tr:0,ur.isSubplotConstrained&&!ar.isSubplotConstrained||ar.isSubplotConstrained&&Cr&&vr&&oa>0){var mr;if(ar.isSubplotConstrained||!Cr&&vr.length===1){for(mr=0;mr<nt.length;mr++)nt[mr].range=nt[mr]._r.slice(),u(nt[mr],1-Tr/jt);br=Tr*Ot/jt,kt=br/2}if(ar.isSubplotConstrained||!vr&&Cr.length===1){for(mr=0;mr<Qe.length;mr++)Qe[mr].range=Qe[mr]._r.slice(),u(Qe[mr],1-br/Ot);Tr=br*jt/Ot,ir=Tr/2}}(!ar.isSubplotConstrained||!vr)&&Fa("x"),(!ar.isSubplotConstrained||!Cr)&&Fa("y");var $r=Ot-br,ma=jt-Tr;ar.isSubplotConstrained&&!(Cr&&vr)&&(Cr?(ir=kt?0:br*jt/Ot,ma=$r*jt/Ot):(kt=ir?0:Tr*Ot/jt,$r=ma*Ot/jt)),mt([kt,ir,$r,ma]),qa(),fe.emit("plotly_relayouting",Ve)}function Fa(br,Tr){for(var Mr=ar.isSubplotConstrained?{x:Qe,y:nt}[br]:ar[br+"axes"],Fr=ar.isSubplotConstrained?{x:nt,y:Qe}[br]:[],Lr=0;Lr<Mr.length;Lr++){var Jr=Mr[Lr],oa=Jr._id,ca=ar.xLinks[oa]||ar.yLinks[oa],kt=Fr[0]||ze[ca]||tt[ca];kt&&(Tr?(Tr[Jr._name+".range[0]"]=Tr[kt._name+".range[0]"],Tr[Jr._name+".range[1]"]=Tr[kt._name+".range[1]"]):Jr.range=kt.range.slice())}}function qa(){var br=[],Tr;function Mr(oa){for(Tr=0;Tr<oa.length;Tr++)oa[Tr].fixedrange||br.push(oa[Tr]._id)}function Fr(oa,ca){for(Tr=0;Tr<oa.length;Tr++){var kt=oa[Tr],ir=kt[ca];!kt.fixedrange&&ir.tickmode==="sync"&&br.push(ir._id)}}for(yt&&(Mr(nt),Mr(ur.xaxes),Mr(ar.xaxes),Fr(be.overlays,"xaxis")),Fe&&(Mr(Qe),Mr(ur.yaxes),Mr(ar.yaxes),Fr(be.overlays,"yaxis")),Ve={},Tr=0;Tr<br.length;Tr++){var Lr=br[Tr],Jr=E(fe,Lr);s.drawOne(fe,Jr,{skipTitle:!0}),Ve[Jr._name+".range[0]"]=Jr.range[0],Ve[Jr._name+".range[1]"]=Jr.range[1]}s.redrawComponents(fe,br)}function ya(){if(!fe._transitioningWithDuration){var br=fe._context.doubleClick,Tr=[];Cr&&(Tr=Tr.concat(nt)),vr&&(Tr=Tr.concat(Qe)),ar.xaxes&&(Tr=Tr.concat(ar.xaxes)),ar.yaxes&&(Tr=Tr.concat(ar.yaxes));var Mr={},Fr,Lr;if(br==="reset+autosize")for(br="autosize",Lr=0;Lr<Tr.length;Lr++){Fr=Tr[Lr];var Jr=Fr._rangeInitial0,oa=Fr._rangeInitial1,ca=Jr!==void 0||oa!==void 0;if(ca&&(Jr!==void 0&&Jr!==Fr.range[0]||oa!==void 0&&oa!==Fr.range[1])||!ca&&Fr.autorange!==!0){br="reset";break}}if(br==="autosize")for(Lr=0;Lr<Tr.length;Lr++)Fr=Tr[Lr],Fr.fixedrange||(Mr[Fr._name+".autorange"]=!0);else if(br==="reset"){for((Cr||ur.isSubplotConstrained)&&(Tr=Tr.concat(ur.xaxes)),vr&&!ur.isSubplotConstrained&&(Tr=Tr.concat(ur.yaxes)),ur.isSubplotConstrained&&(Cr?vr||(Tr=Tr.concat(Qe)):Tr=Tr.concat(nt)),Lr=0;Lr<Tr.length;Lr++)if(Fr=Tr[Lr],!Fr.fixedrange){var kt=Fr._name,ir=Fr._autorangeInitial;Fr._rangeInitial0===void 0&&Fr._rangeInitial1===void 0?Mr[kt+".autorange"]=!0:Fr._rangeInitial0===void 0?(Mr[kt+".autorange"]=ir,Mr[kt+".range"]=[null,Fr._rangeInitial1]):Fr._rangeInitial1===void 0?(Mr[kt+".range"]=[Fr._rangeInitial0,null],Mr[kt+".autorange"]=ir):Mr[kt+".range"]=[Fr._rangeInitial0,Fr._rangeInitial1]}}fe.emit("plotly_doubleclick",null),t.call("_guiRelayout",fe,Mr)}}function $a(){mt([0,0,Ot,jt]),x.syncOrAsync([S.previousPromises,function(){fe._fullLayout._replotting=!1,t.call("_guiRelayout",fe,Ve)}],fe)}function mt(br){var Tr=fe._fullLayout,Mr=Tr._plots,Fr=Tr._subplots.cartesian,Lr,Jr,oa,ca;if(Ne&&t.subplotsRegistry.splom.drag(fe),Ke){for(Lr=0;Lr<Fr.length;Lr++)if(Jr=Mr[Fr[Lr]],oa=Jr.xaxis,ca=Jr.yaxis,Jr._scene){oa.limitRange&&oa.limitRange(),ca.limitRange&&ca.limitRange();var kt=x.simpleMap(oa.range,oa.r2l),ir=x.simpleMap(ca.range,ca.r2l);Jr._scene.update({range:[kt[0],ir[0],kt[1],ir[1]]})}}if((Ne||Ke)&&(_(fe),w(fe)),Ee){var mr=br[2]/ge._length,$r=br[3]/ce._length;for(Lr=0;Lr<Fr.length;Lr++){Jr=Mr[Fr[Lr]],oa=Jr.xaxis,ca=Jr.yaxis;var ma=(yt||ar.isSubplotConstrained)&&!oa.fixedrange&&ze[oa._id],Ba=(Fe||ar.isSubplotConstrained)&&!ca.fixedrange&&tt[ca._id],Ca,da,Sa,Ti;if(ma?(Ca=mr,Sa=it||ar.isSubplotConstrained?br[0]:kr(oa,Ca)):ar.xaHash[oa._id]?(Ca=mr,Sa=br[0]*oa._length/ge._length):ar.yaHash[oa._id]?(Ca=$r,Sa=vr==="ns"?-br[1]*oa._length/ce._length:kr(oa,Ca,{n:"top",s:"bottom"}[vr])):(Ca=gt(oa,mr,$r),Sa=Er(oa,Ca)),Ca>1&&(oa.maxallowed!==void 0&&yt===(oa.range[0]<oa.range[1]?"e":"w")||oa.minallowed!==void 0&&yt===(oa.range[0]<oa.range[1]?"w":"e"))&&(Ca=1,Sa=0),Ba?(da=$r,Ti=at||ar.isSubplotConstrained?br[1]:kr(ca,da)):ar.yaHash[ca._id]?(da=$r,Ti=br[1]*ca._length/ce._length):ar.xaHash[ca._id]?(da=mr,Ti=Cr==="ew"?-br[0]*ca._length/ge._length:kr(ca,da,{e:"right",w:"left"}[Cr])):(da=gt(ca,mr,$r),Ti=Er(ca,da)),da>1&&(ca.maxallowed!==void 0&&Fe===(ca.range[0]<ca.range[1]?"n":"s")||ca.minallowed!==void 0&&Fe===(ca.range[0]<ca.range[1]?"s":"n"))&&(da=1,Ti=0),!(!Ca&&!da)){Ca||(Ca=1),da||(da=1);var ai=oa._offset-Sa/Ca,an=ca._offset-Ti/da;Jr.clipRect.call(i.setTranslate,Sa,Ti).call(i.setScale,Ca,da),Jr.plot.call(i.setTranslate,ai,an).call(i.setScale,1/Ca,1/da),(Ca!==Jr.xScaleFactor||da!==Jr.yScaleFactor)&&(i.setPointGroupScale(Jr.zoomScalePts,Ca,da),i.setTextPointsScale(Jr.zoomScaleTxt,Ca,da)),i.hideOutsideRangePoints(Jr.clipOnAxisFalseTraces,Jr),Jr.xScaleFactor=Ca,Jr.yScaleFactor=da}}}}function gt(br,Tr,Mr){return br.fixedrange?0:yt&&ur.xaHash[br._id]?Tr:Fe&&(ur.isSubplotConstrained?ur.xaHash:ur.yaHash)[br._id]?Mr:0}function Er(br,Tr){return Tr?(br.range=br._r.slice(),u(br,Tr),kr(br,Tr)):0}function kr(br,Tr,Mr){return br._length*(1-Tr)*l[Mr||br.constraintoward||"middle"]}return dt}function F(fe,be,Ae,Be){var Ie=x.ensureSingle(fe.draglayer,be,Ae,function(Ze){Ze.classed("drag",!0).style({fill:"transparent","stroke-width":0}).attr("data-subplot",fe.id)});return Ie.call(c,Be),Ie.node()}function B(fe,be,Ae,Be,Ie,Ze,at){var it=F(fe,"rect",be,Ae);return g.select(it).call(i.setRect,Be,Ie,Ze,at),it}function O(fe,be){for(var Ae=0;Ae<fe.length;Ae++)if(!fe[Ae].fixedrange)return be;return""}function I(fe,be){var Ae=fe.range[be],Be=Math.abs(Ae-fe.range[1-be]),Ie;return fe.type==="date"?Ae:fe.type==="log"?(Ie=Math.ceil(Math.max(0,-Math.log(Be)/Math.LN10))+3,A("."+Ie+"g")(Math.pow(10,Ae))):(Ie=Math.floor(Math.log(Math.abs(Ae))/Math.LN10)-Math.floor(Math.log(Be)/Math.LN10)+4,A("."+String(Ie)+"g")(Ae))}function N(fe,be,Ae,Be,Ie){for(var Ze=0;Ze<fe.length;Ze++){var at=fe[Ze];if(!at.fixedrange)if(at.rangebreaks){var it=at._id.charAt(0)==="y",et=it?1-be:be,lt=it?1-Ae:Ae;Be[at._name+".range[0]"]=at.l2r(at.p2l(et*at._length)),Be[at._name+".range[1]"]=at.l2r(at.p2l(lt*at._length))}else{var Me=at._rl[0],ge=at._rl[1]-Me;Be[at._name+".range[0]"]=at.l2r(Me+ge*be),Be[at._name+".range[1]"]=at.l2r(Me+ge*Ae)}}if(Ie&&Ie.length){var ce=(be+(1-Ae))/2;N(Ie,ce,1-ce,Be,[])}}function U(fe,be){for(var Ae=0;Ae<fe.length;Ae++){var Be=fe[Ae];if(!Be.fixedrange){if(Be.rangebreaks){var Ie=0,Ze=Be._length,at=Be.p2l(Ie+be)-Be.p2l(Ie),it=Be.p2l(Ze+be)-Be.p2l(Ze),et=(at+it)/2;Be.range=[Be.l2r(Be._rl[0]-et),Be.l2r(Be._rl[1]-et)]}else Be.range=[Be.l2r(Be._rl[0]-be/Be._m),Be.l2r(Be._rl[1]-be/Be._m)];Be.limitRange&&Be.limitRange()}}}function W(fe){return 1-(fe>=0?Math.min(fe,.9):1/(1/Math.max(fe,-.3)+3.222))}function Q(fe,be,Ae){return fe?fe==="nsew"?Ae?"":be==="pan"?"move":"crosshair":fe.toLowerCase()+"-resize":"pointer"}function ue(fe,be,Ae,Be,Ie){return fe.append("path").attr("class","zoombox").style({fill:be>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("transform",r(Ae,Be)).attr("d",Ie+"Z")}function se(fe,be,Ae){return fe.append("path").attr("class","zoombox-corners").style({fill:a.background,stroke:a.defaultLine,"stroke-width":1,opacity:0}).attr("transform",r(be,Ae)).attr("d","M0,0Z")}function he(fe,be,Ae,Be,Ie,Ze){fe.attr("d",Be+"M"+Ae.l+","+Ae.t+"v"+Ae.h+"h"+Ae.w+"v-"+Ae.h+"h-"+Ae.w+"Z"),G(fe,be,Ie,Ze)}function G(fe,be,Ae,Be){Ae||(fe.transition().style("fill",Be>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),be.transition().style("opacity",1).duration(200))}function $(fe){g.select(fe).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}function J(fe){L&&fe.data&&fe._context.showTips&&(x.notifier(x._(fe,"Double-click to zoom back out"),"long"),L=!1)}function Z(fe,be){return"M"+(fe.l-.5)+","+(be-P-.5)+"h-3v"+(2*P+1)+"h3ZM"+(fe.r+.5)+","+(be-P-.5)+"h3v"+(2*P+1)+"h-3Z"}function re(fe,be){return"M"+(be-P-.5)+","+(fe.t-.5)+"v-3h"+(2*P+1)+"v3ZM"+(be-P-.5)+","+(fe.b+.5)+"v3h"+(2*P+1)+"v-3Z"}function ne(fe){var be=Math.floor(Math.min(fe.b-fe.t,fe.r-fe.l,P)/2);return"M"+(fe.l-3.5)+","+(fe.t-.5+be)+"h3v"+-be+"h"+be+"v-3h-"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.t-.5+be)+"h-3v"+-be+"h"+-be+"v-3h"+(be+3)+"ZM"+(fe.r+3.5)+","+(fe.b+.5-be)+"h-3v"+be+"h"+-be+"v3h"+(be+3)+"ZM"+(fe.l-3.5)+","+(fe.b+.5-be)+"h3v"+be+"h"+be+"v3h-"+(be+3)+"Z"}function j(fe,be,Ae,Be,Ie){for(var Ze=!1,at={},it={},et,lt,Me,ge,ce=(Ie||{}).xaHash,ze=(Ie||{}).yaHash,tt=0;tt<be.length;tt++){var nt=be[tt];for(et in Ae)if(nt[et]){for(Me in nt)!(Ie&&(ce[Me]||ze[Me]))&&!(Me.charAt(0)==="x"?Ae:Be)[Me]&&(at[Me]=et);for(lt in Be)!(Ie&&(ce[lt]||ze[lt]))&&nt[lt]&&(Ze=!0)}for(lt in Be)if(nt[lt])for(ge in nt)!(Ie&&(ce[ge]||ze[ge]))&&!(ge.charAt(0)==="x"?Ae:Be)[ge]&&(it[ge]=lt)}Ze&&(x.extendFlat(at,it),it={});var Qe={},Ct=[];for(Me in at){var St=E(fe,Me);Ct.push(St),Qe[St._id]=St}var Ot={},jt=[];for(ge in it){var ur=E(fe,ge);jt.push(ur),Ot[ur._id]=ur}return{xaHash:Qe,yaHash:Ot,xaxes:Ct,yaxes:jt,xLinks:at,yLinks:it,isSubplotConstrained:Ze}}function ee(fe,be){if(!e)fe.onwheel!==void 0?fe.onwheel=be:fe.onmousewheel!==void 0?fe.onmousewheel=be:fe.isAddedWheelEvent||(fe.isAddedWheelEvent=!0,fe.addEventListener("wheel",be,{passive:!1}));else{var Ae=fe.onwheel!==void 0?"wheel":"mousewheel";fe._onwheel&&fe.removeEventListener(Ae,fe._onwheel),fe._onwheel=be,fe.addEventListener(Ae,be,{passive:!1})}}function ie(fe){var be=[];for(var Ae in fe)be.push(fe[Ae]);return be}H.exports={makeDragBox:z,makeDragger:F,makeRectDragger:B,makeZoombox:ue,makeCorners:se,updateZoombox:he,xyCorners:ne,transitionZoombox:G,removeZoombox:$,showDoubleClickNotifier:J,attachWheelEventHandler:ee}}}),LS=Ye({"src/plots/cartesian/graph_interact.js"(X){"use strict";var H=_n(),g=Lc(),x=bp(),A=Kd(),M=CS().makeDragBox,e=wh().DRAGGERSIZE;X.initInteractions=function(r){var o=r._fullLayout;if(r._context.staticPlot){H.select(r).selectAll(".drag").remove();return}if(!(!o._has("cartesian")&&!o._has("splom"))){var a=Object.keys(o._plots||{}).sort(function(n,s){if((o._plots[n].mainplot&&!0)===(o._plots[s].mainplot&&!0)){var c=n.split("y"),h=s.split("y");return c[0]===h[0]?Number(c[1]||1)-Number(h[1]||1):Number(c[0]||1)-Number(h[0]||1)}return o._plots[n].mainplot?1:-1});a.forEach(function(n){var s=o._plots[n],c=s.xaxis,h=s.yaxis;if(!s.mainplot){var v=M(r,s,c._offset,h._offset,c._length,h._length,"ns","ew");v.onmousemove=function(l){r._fullLayout._rehover=function(){r._fullLayout._hoversubplot===n&&r._fullLayout._plots[n]&&g.hover(r,l,n)},g.hover(r,l,n),r._fullLayout._lasthover=v,r._fullLayout._hoversubplot=n},v.onmouseout=function(l){r._dragging||(r._fullLayout._hoversubplot=null,x.unhover(r,l))},r._context.showAxisDragHandles&&(M(r,s,c._offset-e,h._offset-e,e,e,"n","w"),M(r,s,c._offset+c._length,h._offset-e,e,e,"n","e"),M(r,s,c._offset-e,h._offset+h._length,e,e,"s","w"),M(r,s,c._offset+c._length,h._offset+h._length,e,e,"s","e"))}if(r._context.showAxisDragHandles){if(n===c._mainSubplot){var p=c._mainLinePosition;c.side==="top"&&(p-=e),M(r,s,c._offset+c._length*.1,p,c._length*.8,e,"","ew"),M(r,s,c._offset,p,c._length*.1,e,"","w"),M(r,s,c._offset+c._length*.9,p,c._length*.1,e,"","e")}if(n===h._mainSubplot){var T=h._mainLinePosition;h.side!=="right"&&(T-=e),M(r,s,T,h._offset+h._length*.1,e,h._length*.8,"ns",""),M(r,s,T,h._offset+h._length*.9,e,h._length*.1,"s",""),M(r,s,T,h._offset,e,h._length*.1,"n","")}}});var i=o._hoverlayer.node();i.onmousemove=function(n){n.target=r._fullLayout._lasthover,g.hover(r,n,o._hoversubplot)},i.onclick=function(n){n.target=r._fullLayout._lasthover,g.click(r,n)},i.onmousedown=function(n){r._fullLayout._lasthover.onmousedown(n)},X.updateFx(r)}},X.updateFx=function(t){var r=t._fullLayout,o=r.dragmode==="pan"?"move":"crosshair";A(r._draggers,o)}}}),RO=Ye({"src/plot_api/container_array_match.js"(X,H){"use strict";var g=Hn();H.exports=function(A){for(var M=g.layoutArrayContainers,e=g.layoutArrayRegexes,t=A.split("[")[0],r,o,a=0;a<e.length;a++)if(o=A.match(e[a]),o&&o.index===0){r=o[0];break}if(r||(r=M[M.indexOf(t)]),!r)return!1;var i=A.substr(r.length);return i?(o=i.match(/^\[(0|[1-9][0-9]*)\](\.(.+))?$/),o?{array:r,index:Number(o[1]),property:o[3]||""}:!1):{array:r,index:"",property:""}}}}),DO=Ye({"src/plot_api/manage_arrays.js"(X){"use strict";var H=Zv(),g=f2(),x=Ym(),A=v2().sorterAsc,M=Hn();X.containerArrayMatch=RO();var e=X.isAddVal=function(o){return o==="add"||H(o)},t=X.isRemoveVal=function(o){return o===null||o==="remove"};X.applyContainerArrayChanges=function(o,a,i,n,s){var c=a.astr,h=M.getComponentMethod(c,"supplyLayoutDefaults"),v=M.getComponentMethod(c,"draw"),p=M.getComponentMethod(c,"drawOne"),T=n.replot||n.recalc||h===g||v===g,l=o.layout,_=o._fullLayout;if(i[""]){Object.keys(i).length>1&&x.warn("Full array edits are incompatible with other edits",c);var w=i[""][""];if(t(w))a.set(null);else if(Array.isArray(w))a.set(w);else return x.warn("Unrecognized full array edit value",c,w),!0;return T?!1:(h(l,_),v(o),!0)}var S=Object.keys(i).map(Number).sort(A),E=a.get(),m=E||[],b=s(_,c).get(),d=[],u=-1,y=m.length,f,P,L,z,F,B,O,I;for(f=0;f<S.length;f++){if(L=S[f],z=i[L],F=Object.keys(z),B=z[""],O=e(B),L<0||L>m.length-(O?0:1)){x.warn("index out of range",c,L);continue}if(B!==void 0)F.length>1&&x.warn("Insertion & removal are incompatible with edits to the same index.",c,L),t(B)?d.push(L):O?(B==="add"&&(B={}),m.splice(L,0,B),b&&b.splice(L,0,{})):x.warn("Unrecognized full object edit value",c,L,B),u===-1&&(u=L);else for(P=0;P<F.length;P++)I=c+"["+L+"].",s(m[L],F[P],I).set(z[F[P]])}for(f=d.length-1;f>=0;f--)m.splice(d[f],1),b&&b.splice(d[f],1);if(m.length?E||a.set(m):a.set(null),T)return!1;if(h(l,_),p!==g){var N;if(u===-1)N=S;else{for(y=Math.max(m.length,y),N=[],f=0;f<S.length&&(L=S[f],!(L>=u));f++)N.push(L);for(f=u;f<y;f++)N.push(f)}for(f=0;f<N.length;f++)p(o,N[f])}else v(o);return!0}}}),zO=Ye({"src/plot_api/helpers.js"(X){"use strict";var H=jo(),g=$A(),x=Hn(),A=ta(),M=Gu(),e=Xc(),t=Fn(),r=e.cleanId,o=e.getFromTrace,a=x.traceIs;X.clearPromiseQueue=function(l){Array.isArray(l._promises)&&l._promises.length>0&&A.log("Clearing previous rejected promises from queue."),l._promises=[]},X.cleanLayout=function(l){var _,w;l||(l={}),l.xaxis1&&(l.xaxis||(l.xaxis=l.xaxis1),delete l.xaxis1),l.yaxis1&&(l.yaxis||(l.yaxis=l.yaxis1),delete l.yaxis1),l.scene1&&(l.scene||(l.scene=l.scene1),delete l.scene1);var S=(M.subplotsRegistry.cartesian||{}).attrRegex,E=(M.subplotsRegistry.polar||{}).attrRegex,m=(M.subplotsRegistry.ternary||{}).attrRegex,b=(M.subplotsRegistry.gl3d||{}).attrRegex,d=Object.keys(l);for(_=0;_<d.length;_++){var u=d[_];if(S&&S.test(u)){var y=l[u];y.anchor&&y.anchor!=="free"&&(y.anchor=r(y.anchor)),y.overlaying&&(y.overlaying=r(y.overlaying)),y.type||(y.isdate?y.type="date":y.islog?y.type="log":y.isdate===!1&&y.islog===!1&&(y.type="linear")),(y.autorange==="withzero"||y.autorange==="tozero")&&(y.autorange=!0,y.rangemode="tozero"),y.insiderange&&delete y.range,delete y.islog,delete y.isdate,delete y.categories,h(y,"domain")&&delete y.domain}}var f=Array.isArray(l.annotations)?l.annotations.length:0;for(_=0;_<f;_++){var P=l.annotations[_];A.isPlainObject(P)&&(i(P,"xref"),i(P,"yref"))}var L=Array.isArray(l.shapes)?l.shapes.length:0;for(_=0;_<L;_++){var z=l.shapes[_];A.isPlainObject(z)&&(i(z,"xref"),i(z,"yref"))}var F=Array.isArray(l.images)?l.images.length:0;for(_=0;_<F;_++){var B=l.images[_];A.isPlainObject(B)&&(i(B,"xref"),i(B,"yref"))}var O=l.legend;return O&&(O.x>3?(O.x=1.02,O.xanchor="left"):O.x<-2&&(O.x=-.02,O.xanchor="right"),O.y>3?(O.y=1.02,O.yanchor="bottom"):O.y<-2&&(O.y=-.02,O.yanchor="top")),l.dragmode==="rotate"&&(l.dragmode="orbit"),t.clean(l),l.template&&l.template.layout&&X.cleanLayout(l.template.layout),l};function i(l,_){var w=l[_],S=_.charAt(0);w&&w!=="paper"&&(l[_]=r(w,S,!0))}X.cleanData=function(l){for(var _=0;_<l.length;_++){var w=l[_],S;if(w.type==="histogramy"&&"xbins"in w&&!("ybins"in w)&&(w.ybins=w.xbins,delete w.xbins),w.type==="histogramy"&&X.swapXYData(w),(w.type==="histogramx"||w.type==="histogramy")&&(w.type="histogram"),"scl"in w&&!("colorscale"in w)&&(w.colorscale=w.scl,delete w.scl),"reversescl"in w&&!("reversescale"in w)&&(w.reversescale=w.reversescl,delete w.reversescl),w.xaxis&&(w.xaxis=r(w.xaxis,"x")),w.yaxis&&(w.yaxis=r(w.yaxis,"y")),a(w,"gl3d")&&w.scene&&(w.scene=M.subplotsRegistry.gl3d.cleanId(w.scene)),!a(w,"pie-like")&&!a(w,"bar-like"))if(Array.isArray(w.textposition))for(S=0;S<w.textposition.length;S++)w.textposition[S]=c(w.textposition[S]);else w.textposition&&(w.textposition=c(w.textposition));var E=x.getModule(w);if(E&&E.colorbar){var m=E.colorbar.container,b=m?w[m]:w;b&&b.colorscale&&(b.colorscale==="YIGnBu"&&(b.colorscale="YlGnBu"),b.colorscale==="YIOrRd"&&(b.colorscale="YlOrRd"))}if(w.type==="surface"&&A.isPlainObject(w.contours)){var d=["x","y","z"];for(S=0;S<d.length;S++){var u=w.contours[d[S]];A.isPlainObject(u)&&(u.highlightColor&&(u.highlightcolor=u.highlightColor,delete u.highlightColor),u.highlightWidth&&(u.highlightwidth=u.highlightWidth,delete u.highlightWidth))}}if(w.type==="candlestick"||w.type==="ohlc"){var y=(w.increasing||{}).showlegend!==!1,f=(w.decreasing||{}).showlegend!==!1,P=n(w.increasing),L=n(w.decreasing);if(P!==!1&&L!==!1){var z=s(P,L,y,f);z&&(w.name=z)}else(P||L)&&!w.name&&(w.name=P||L)}h(w,"line")&&delete w.line,"marker"in w&&(h(w.marker,"line")&&delete w.marker.line,h(w,"marker")&&delete w.marker),t.clean(w),w.autobinx&&(delete w.autobinx,delete w.xbins),w.autobiny&&(delete w.autobiny,delete w.ybins)}};function n(l){if(!A.isPlainObject(l))return!1;var _=l.name;return delete l.name,delete l.showlegend,(typeof _=="string"||typeof _=="number")&&String(_)}function s(l,_,w,S){if(w&&!S)return l;if(S&&!w||!l.trim())return _;if(!_.trim())return l;var E=Math.min(l.length,_.length),m;for(m=0;m<E&&l.charAt(m)===_.charAt(m);m++);var b=l.substr(0,m);return b.trim()}function c(l){var _="middle",w="center";return typeof l=="string"&&(l.indexOf("top")!==-1?_="top":l.indexOf("bottom")!==-1&&(_="bottom"),l.indexOf("left")!==-1?w="left":l.indexOf("right")!==-1&&(w="right")),_+" "+w}function h(l,_){return _ in l&&typeof l[_]=="object"&&Object.keys(l[_]).length===0}X.swapXYData=function(l){var _;if(A.swapAttrs(l,["?","?0","d?","?bins","nbins?","autobin?","?src","error_?"]),Array.isArray(l.z)&&Array.isArray(l.z[0])&&(l.transpose?delete l.transpose:l.transpose=!0),l.error_x&&l.error_y){var w=l.error_y,S="copy_ystyle"in w?w.copy_ystyle:!(w.color||w.thickness||w.width);A.swapAttrs(l,["error_?.copy_ystyle"]),S&&A.swapAttrs(l,["error_?.color","error_?.thickness","error_?.width"])}if(typeof l.hoverinfo=="string"){var E=l.hoverinfo.split("+");for(_=0;_<E.length;_++)E[_]==="x"?E[_]="y":E[_]==="y"&&(E[_]="x");l.hoverinfo=E.join("+")}},X.coerceTraceIndices=function(l,_){if(H(_))return[_];if(!Array.isArray(_)||!_.length)return l.data.map(function(E,m){return m});if(Array.isArray(_)){for(var w=[],S=0;S<_.length;S++)A.isIndex(_[S],l.data.length)?w.push(_[S]):A.warn("trace index (",_[S],") is not a number or is out of bounds");return w}return _},X.manageArrayContainers=function(l,_,w){var S=l.obj,E=l.parts,m=E.length,b=E[m-1],d=H(b);if(d&&_===null){var u=E.slice(0,m-1).join("."),y=A.nestedProperty(S,u).get();y.splice(b,1)}else d&&l.get()===void 0&&l.get()===void 0&&(w[l.astr]=null),l.set(_)};var v=/(\.[^\[\]\.]+|\[[^\[\]\.]+\])$/;function p(l){var _=l.search(v);if(_>0)return l.substr(0,_)}X.hasParent=function(l,_){for(var w=p(_);w;){if(w in l)return!0;w=p(w)}return!1};var T=["x","y","z"];X.clearAxisTypes=function(l,_,w){for(var S=0;S<_.length;S++)for(var E=l._fullData[S],m=0;m<3;m++){var b=o(l,E,T[m]);if(b&&b.type!=="log"){var d=b._name,u=b._id.substr(1);if(u.substr(0,5)==="scene"){if(w[u]!==void 0)continue;d=u+"."+d}var y=d+".type";w[d]===void 0&&w[y]===void 0&&A.nestedProperty(l.layout,y).set(null)}}}}}),E2=Ye({"src/plot_api/plot_api.js"(X){"use strict";var H=_n(),g=jo(),x=aS(),A=ta(),M=A.nestedProperty,e=$y(),t=QF(),r=Hn(),o=Qy(),a=Gu(),i=Co(),n=fS(),s=Vh(),c=Bo(),h=Fn(),v=LS().initInteractions,p=vd(),T=ff().clearOutline,l=Gg().dfltConfig,_=DO(),w=zO(),S=k_(),E=Ou(),m=wh().AX_NAME_PATTERN,b=0,d=5;function u(Ee,Ve,ke,Te){var Le;if(Ee=A.getGraphDiv(Ee),e.init(Ee),A.isPlainObject(Ve)){var rt=Ve;Ve=rt.data,ke=rt.layout,Te=rt.config,Le=rt.frames}var dt=e.triggerHandler(Ee,"plotly_beforeplot",[Ve,ke,Te]);if(dt===!1)return Promise.reject();!Ve&&!ke&&!A.isPlotDiv(Ee)&&A.warn("Calling _doPlot as if redrawing but this container doesn't yet have a plot.",Ee);function xt(){if(Le)return X.addFrames(Ee,Le)}z(Ee,Te),ke||(ke={}),H.select(Ee).classed("js-plotly-plot",!0),c.makeTester(),Array.isArray(Ee._promises)||(Ee._promises=[]);var It=(Ee.data||[]).length===0&&Array.isArray(Ve);Array.isArray(Ve)&&(w.cleanData(Ve),It?Ee.data=Ve:Ee.data.push.apply(Ee.data,Ve),Ee.empty=!1),(!Ee.layout||It)&&(Ee.layout=w.cleanLayout(ke)),a.supplyDefaults(Ee);var Bt=Ee._fullLayout,Gt=Bt._has("cartesian");Bt._replotting=!0,(It||Bt._shouldCreateBgLayer)&&(Ne(Ee),Bt._shouldCreateBgLayer&&delete Bt._shouldCreateBgLayer),c.initGradients(Ee),c.initPatterns(Ee),It&&i.saveShowSpikeInitial(Ee);var Kt=!Ee.calcdata||Ee.calcdata.length!==(Ee._fullData||[]).length;Kt&&a.doCalcdata(Ee);for(var sr=0;sr<Ee.calcdata.length;sr++)Ee.calcdata[sr][0].trace=Ee._fullData[sr];Ee._context.responsive?Ee._responsiveChartHandler||(Ee._responsiveChartHandler=function(){A.isHidden(Ee)||a.resize(Ee)},window.addEventListener("resize",Ee._responsiveChartHandler)):A.clearResponsive(Ee);var sa=A.extendFlat({},Bt._size),Aa=0;function La(){for(var Vt=Bt._basePlotModules,Ut=0;Ut<Vt.length;Ut++)Vt[Ut].drawFramework&&Vt[Ut].drawFramework(Ee);!Bt._glcanvas&&Bt._has("gl")&&(Bt._glcanvas=Bt._glcontainer.selectAll(".gl-canvas").data([{key:"contextLayer",context:!0,pick:!1},{key:"focusLayer",context:!1,pick:!1},{key:"pickLayer",context:!1,pick:!0}],function(Xr){return Xr.key}),Bt._glcanvas.enter().append("canvas").attr("class",function(Xr){return"gl-canvas gl-canvas-"+Xr.key.replace("Layer","")}).style({position:"absolute",top:0,left:0,overflow:"visible","pointer-events":"none"}));var xr=Ee._context.plotGlPixelRatio;if(Bt._glcanvas){Bt._glcanvas.attr("width",Bt.width*xr).attr("height",Bt.height*xr).style("width",Bt.width+"px").style("height",Bt.height+"px");var Zr=Bt._glcanvas.data()[0].regl;if(Zr&&(Math.floor(Bt.width*xr)!==Zr._gl.drawingBufferWidth||Math.floor(Bt.height*xr)!==Zr._gl.drawingBufferHeight)){var pa="WebGL context buffer and canvas dimensions do not match due to browser/WebGL bug.";if(Aa)A.error(pa);else return A.log(pa+" Clearing graph and plotting again."),a.cleanPlot([],{},Ee._fullData,Bt),a.supplyDefaults(Ee),Bt=Ee._fullLayout,a.doCalcdata(Ee),Aa++,La()}}return Bt.modebar.orientation==="h"?Bt._modebardiv.style("height",null).style("width","100%"):Bt._modebardiv.style("width",null).style("height",Bt.height+"px"),a.previousPromises(Ee)}function ka(){if(a.clearAutoMarginIds(Ee),S.drawMarginPushers(Ee),i.allowAutoMargin(Ee),Ee._fullLayout.title.text&&Ee._fullLayout.title.automargin&&a.allowAutoMargin(Ee,"title.automargin"),Bt._has("pie"))for(var Vt=Ee._fullData,Ut=0;Ut<Vt.length;Ut++){var xr=Vt[Ut];xr.type==="pie"&&xr.automargin&&a.allowAutoMargin(Ee,"pie."+xr.uid+".automargin")}return a.doAutoMargin(Ee),a.previousPromises(Ee)}function Ga(){if(a.didMarginChange(sa,Bt._size))return A.syncOrAsync([ka,S.layoutStyles],Ee)}function Ma(){if(!Kt){Ua();return}return A.syncOrAsync([r.getComponentMethod("shapes","calcAutorange"),r.getComponentMethod("annotations","calcAutorange"),Ua],Ee)}function Ua(){Ee._transitioning||(S.doAutoRangeAndConstraints(Ee),It&&i.saveRangeInitial(Ee),r.getComponentMethod("rangeslider","calcAutorange")(Ee))}function ni(){return i.draw(Ee,It?"":"redraw")}var Wt=[a.previousPromises,xt,La,ka,Ga];Gt&&Wt.push(Ma),Wt.push(S.layoutStyles),Gt&&Wt.push(ni,function(Ut){var xr=Ut._fullLayout._insideTickLabelsUpdaterange;if(xr)return Ut._fullLayout._insideTickLabelsUpdaterange=void 0,be(Ut,xr).then(function(){i.saveRangeInitial(Ut,!0)})}),Wt.push(S.drawData,S.finalDraw,v,a.addLinks,a.rehover,a.redrag,a.reselect,a.doAutoMargin,a.previousPromises);var zt=A.syncOrAsync(Wt,Ee);return(!zt||!zt.then)&&(zt=Promise.resolve()),zt.then(function(){return y(Ee),Ee})}function y(Ee){var Ve=Ee._fullLayout;Ve._redrawFromAutoMarginCount?Ve._redrawFromAutoMarginCount--:Ee.emit("plotly_afterplot")}function f(Ee){return A.extendFlat(l,Ee)}function P(Ee,Ve){try{Ee._fullLayout._paper.style("background",Ve)}catch(ke){A.error(ke)}}function L(Ee,Ve){var ke=h.combine(Ve,"white");P(Ee,ke)}function z(Ee,Ve){if(!Ee._context){Ee._context=A.extendDeep({},l);var ke=H.select("base");Ee._context._baseUrl=ke.size()&&ke.attr("href")?window.location.href.split("#")[0]:""}var Te=Ee._context,Le,rt,dt;if(Ve){for(rt=Object.keys(Ve),Le=0;Le<rt.length;Le++)dt=rt[Le],!(dt==="editable"||dt==="edits")&&dt in Te&&(dt==="setBackground"&&Ve[dt]==="opaque"?Te[dt]=L:Te[dt]=Ve[dt]);var xt=Ve.editable;if(xt!==void 0)for(Te.editable=xt,rt=Object.keys(Te.edits),Le=0;Le<rt.length;Le++)Te.edits[rt[Le]]=xt;if(Ve.edits)for(rt=Object.keys(Ve.edits),Le=0;Le<rt.length;Le++)dt=rt[Le],dt in Te.edits&&(Te.edits[dt]=Ve.edits[dt]);Te._exportedPlot=Ve._exportedPlot}Te.staticPlot&&(Te.editable=!1,Te.edits={},Te.autosizable=!1,Te.scrollZoom=!1,Te.doubleClick=!1,Te.showTips=!1,Te.showLink=!1,Te.displayModeBar=!1),Te.displayModeBar==="hover"&&!x&&(Te.displayModeBar=!0),(Te.setBackground==="transparent"||typeof Te.setBackground!="function")&&(Te.setBackground=P),Te._hasZeroHeight=Te._hasZeroHeight||Ee.clientHeight===0,Te._hasZeroWidth=Te._hasZeroWidth||Ee.clientWidth===0;var It=Te.scrollZoom,Bt=Te._scrollZoom={};if(It===!0)Bt.cartesian=1,Bt.gl3d=1,Bt.geo=1,Bt.mapbox=1,Bt.map=1;else if(typeof It=="string"){var Gt=It.split("+");for(Le=0;Le<Gt.length;Le++)Bt[Gt[Le]]=1}else It!==!1&&(Bt.gl3d=1,Bt.geo=1,Bt.mapbox=1,Bt.map=1)}function F(Ee){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee);return w.cleanData(Ee.data),w.cleanLayout(Ee.layout),Ee.calcdata=void 0,X._doPlot(Ee).then(function(){return Ee.emit("plotly_redraw"),Ee})}function B(Ee,Ve,ke,Te){return Ee=A.getGraphDiv(Ee),a.cleanPlot([],{},Ee._fullData||[],Ee._fullLayout||{}),a.purge(Ee),X._doPlot(Ee,Ve,ke,Te)}function O(Ee,Ve){var ke=Ve+1,Te=[],Le,rt;for(Le=0;Le<Ee.length;Le++)rt=Ee[Le],rt<0?Te.push(ke+rt):Te.push(rt);return Te}function I(Ee,Ve,ke){var Te,Le;for(Te=0;Te<Ve.length;Te++){if(Le=Ve[Te],Le!==parseInt(Le,10))throw new Error("all values in "+ke+" must be integers");if(Le>=Ee.data.length||Le<-Ee.data.length)throw new Error(ke+" must be valid indices for gd.data.");if(Ve.indexOf(Le,Te+1)>-1||Le>=0&&Ve.indexOf(-Ee.data.length+Le)>-1||Le<0&&Ve.indexOf(Ee.data.length+Le)>-1)throw new Error("each index in "+ke+" must be unique.")}}function N(Ee,Ve,ke){if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("currentIndices is a required argument.");if(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"currentIndices"),typeof ke<"u"&&!Array.isArray(ke)&&(ke=[ke]),typeof ke<"u"&&I(Ee,ke,"newIndices"),typeof ke<"u"&&Ve.length!==ke.length)throw new Error("current and new indices must be of equal length.")}function U(Ee,Ve,ke){var Te,Le;if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array.");if(typeof Ve>"u")throw new Error("traces must be defined.");for(Array.isArray(Ve)||(Ve=[Ve]),Te=0;Te<Ve.length;Te++)if(Le=Ve[Te],typeof Le!="object"||Array.isArray(Le)||Le===null)throw new Error("all values in traces array must be non-array objects");if(typeof ke<"u"&&!Array.isArray(ke)&&(ke=[ke]),typeof ke<"u"&&ke.length!==Ve.length)throw new Error("if indices is specified, traces.length must equal indices.length")}function W(Ee,Ve,ke,Te){var Le=A.isPlainObject(Te);if(!Array.isArray(Ee.data))throw new Error("gd.data must be an array");if(!A.isPlainObject(Ve))throw new Error("update must be a key:value object");if(typeof ke>"u")throw new Error("indices must be an integer or array of integers");I(Ee,ke,"indices");for(var rt in Ve){if(!Array.isArray(Ve[rt])||Ve[rt].length!==ke.length)throw new Error("attribute "+rt+" must be an array of length equal to indices array length");if(Le&&(!(rt in Te)||!Array.isArray(Te[rt])||Te[rt].length!==Ve[rt].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")}}function Q(Ee,Ve,ke,Te){var Le=A.isPlainObject(Te),rt=[],dt,xt,It,Bt,Gt;Array.isArray(ke)||(ke=[ke]),ke=O(ke,Ee.data.length-1);for(var Kt in Ve)for(var sr=0;sr<ke.length;sr++){if(dt=Ee.data[ke[sr]],It=M(dt,Kt),xt=It.get(),Bt=Ve[Kt][sr],!A.isArrayOrTypedArray(Bt))throw new Error("attribute: "+Kt+" index: "+sr+" must be an array");if(!A.isArrayOrTypedArray(xt))throw new Error("cannot extend missing or non-array attribute: "+Kt);if(xt.constructor!==Bt.constructor)throw new Error("cannot extend array with an array of a different type: "+Kt);Gt=Le?Te[Kt][sr]:Te,g(Gt)||(Gt=-1),rt.push({prop:It,target:xt,insert:Bt,maxp:Math.floor(Gt)})}return rt}function ue(Ee,Ve,ke,Te,Le){W(Ee,Ve,ke,Te);for(var rt=Q(Ee,Ve,ke,Te),dt={},xt={},It=0;It<rt.length;It++){var Bt=rt[It].prop,Gt=rt[It].maxp,Kt=Le(rt[It].target,rt[It].insert,Gt);Bt.set(Kt[0]),Array.isArray(dt[Bt.astr])||(dt[Bt.astr]=[]),dt[Bt.astr].push(Kt[1]),Array.isArray(xt[Bt.astr])||(xt[Bt.astr]=[]),xt[Bt.astr].push(rt[It].target.length)}return{update:dt,maxPoints:xt}}function se(Ee,Ve){var ke=new Ee.constructor(Ee.length+Ve.length);return ke.set(Ee),ke.set(Ve,Ee.length),ke}function he(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee);function Le(It,Bt,Gt){var Kt,sr;if(A.isTypedArray(It))if(Gt<0){var sa=new It.constructor(0),Aa=se(It,Bt);Gt<0?(Kt=Aa,sr=sa):(Kt=sa,sr=Aa)}else if(Kt=new It.constructor(Gt),sr=new It.constructor(It.length+Bt.length-Gt),Gt===Bt.length)Kt.set(Bt),sr.set(It);else if(Gt<Bt.length){var La=Bt.length-Gt;Kt.set(Bt.subarray(La)),sr.set(It),sr.set(Bt.subarray(0,La),It.length)}else{var ka=Gt-Bt.length,Ga=It.length-ka;Kt.set(It.subarray(Ga)),Kt.set(Bt,ka),sr.set(It.subarray(0,Ga))}else Kt=It.concat(Bt),sr=Gt>=0&&Gt<Kt.length?Kt.splice(0,Kt.length-Gt):[];return[Kt,sr]}var rt=ue(Ee,Ve,ke,Te,Le),dt=X.redraw(Ee),xt=[Ee,rt.update,ke,rt.maxPoints];return t.add(Ee,X.prependTraces,xt,he,arguments),dt}function G(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee);function Le(It,Bt,Gt){var Kt,sr;if(A.isTypedArray(It))if(Gt<=0){var sa=new It.constructor(0),Aa=se(Bt,It);Gt<0?(Kt=Aa,sr=sa):(Kt=sa,sr=Aa)}else if(Kt=new It.constructor(Gt),sr=new It.constructor(It.length+Bt.length-Gt),Gt===Bt.length)Kt.set(Bt),sr.set(It);else if(Gt<Bt.length){var La=Bt.length-Gt;Kt.set(Bt.subarray(0,La)),sr.set(Bt.subarray(La)),sr.set(It,La)}else{var ka=Gt-Bt.length;Kt.set(Bt),Kt.set(It.subarray(0,ka),Bt.length),sr.set(It.subarray(ka))}else Kt=Bt.concat(It),sr=Gt>=0&&Gt<Kt.length?Kt.splice(Gt,Kt.length):[];return[Kt,sr]}var rt=ue(Ee,Ve,ke,Te,Le),dt=X.redraw(Ee),xt=[Ee,rt.update,ke,rt.maxPoints];return t.add(Ee,X.extendTraces,xt,G,arguments),dt}function $(Ee,Ve,ke){Ee=A.getGraphDiv(Ee);var Te=[],Le=X.deleteTraces,rt=$,dt=[Ee,Te],xt=[Ee,Ve],It,Bt;for(U(Ee,Ve,ke),Array.isArray(Ve)||(Ve=[Ve]),Ve=Ve.map(function(Gt){return A.extendFlat({},Gt)}),w.cleanData(Ve),It=0;It<Ve.length;It++)Ee.data.push(Ve[It]);for(It=0;It<Ve.length;It++)Te.push(-Ve.length+It);if(typeof ke>"u")return Bt=X.redraw(Ee),t.add(Ee,Le,dt,rt,xt),Bt;Array.isArray(ke)||(ke=[ke]);try{N(Ee,Te,ke)}catch(Gt){throw Ee.data.splice(Ee.data.length-Ve.length,Ve.length),Gt}return t.startSequence(Ee),t.add(Ee,Le,dt,rt,xt),Bt=X.moveTraces(Ee,Te,ke),t.stopSequence(Ee),Bt}function J(Ee,Ve){Ee=A.getGraphDiv(Ee);var ke=[],Te=X.addTraces,Le=J,rt=[Ee,ke,Ve],dt=[Ee,Ve],xt,It;if(typeof Ve>"u")throw new Error("indices must be an integer or array of integers.");for(Array.isArray(Ve)||(Ve=[Ve]),I(Ee,Ve,"indices"),Ve=O(Ve,Ee.data.length-1),Ve.sort(A.sorterDes),xt=0;xt<Ve.length;xt+=1)It=Ee.data.splice(Ve[xt],1)[0],ke.push(It);var Bt=X.redraw(Ee);return t.add(Ee,Te,rt,Le,dt),Bt}function Z(Ee,Ve,ke){Ee=A.getGraphDiv(Ee);var Te=[],Le=[],rt=Z,dt=Z,xt=[Ee,ke,Ve],It=[Ee,Ve,ke],Bt;if(N(Ee,Ve,ke),Ve=Array.isArray(Ve)?Ve:[Ve],typeof ke>"u")for(ke=[],Bt=0;Bt<Ve.length;Bt++)ke.push(-Ve.length+Bt);for(ke=Array.isArray(ke)?ke:[ke],Ve=O(Ve,Ee.data.length-1),ke=O(ke,Ee.data.length-1),Bt=0;Bt<Ee.data.length;Bt++)Ve.indexOf(Bt)===-1&&Te.push(Ee.data[Bt]);for(Bt=0;Bt<Ve.length;Bt++)Le.push({newIndex:ke[Bt],trace:Ee.data[Ve[Bt]]});for(Le.sort(function(Kt,sr){return Kt.newIndex-sr.newIndex}),Bt=0;Bt<Le.length;Bt+=1)Te.splice(Le[Bt].newIndex,0,Le[Bt].trace);Ee.data=Te;var Gt=X.redraw(Ee);return t.add(Ee,rt,xt,dt,It),Gt}function re(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var Le={};if(typeof Ve=="string")Le[Ve]=ke;else if(A.isPlainObject(Ve))Le=A.extendFlat({},Ve),Te===void 0&&(Te=ke);else return A.warn("Restyle fail.",Ve,ke,Te),Promise.reject();Object.keys(Le).length&&(Ee.changed=!0);var rt=w.coerceTraceIndices(Ee,Te),dt=fe(Ee,Le,rt),xt=dt.flags;xt.calc&&(Ee.calcdata=void 0),xt.clearAxisTypes&&w.clearAxisTypes(Ee,rt,{});var It=[];xt.fullReplot?It.push(X._doPlot):(It.push(a.previousPromises),a.supplyDefaults(Ee),xt.markerSize&&(a.doCalcdata(Ee),Be(It)),xt.style&&It.push(S.doTraceStyle),xt.colorbars&&It.push(S.doColorBars),It.push(y)),It.push(a.rehover,a.redrag,a.reselect),t.add(Ee,re,[Ee,dt.undoit,dt.traces],re,[Ee,dt.redoit,dt.traces]);var Bt=A.syncOrAsync(It,Ee);return(!Bt||!Bt.then)&&(Bt=Promise.resolve()),Bt.then(function(){return Ee.emit("plotly_restyle",dt.eventData),Ee})}function ne(Ee){return Ee===void 0?null:Ee}function j(Ee,Ve){return Ve?function(ke,Te,Le){var rt=M(ke,Te),dt=rt.set;return rt.set=function(xt){var It=(Le||"")+Te;ee(It,rt.get(),xt,Ee),dt(xt)},rt}:M}function ee(Ee,Ve,ke,Te){if(Array.isArray(Ve)||Array.isArray(ke))for(var Le=Array.isArray(Ve)?Ve:[],rt=Array.isArray(ke)?ke:[],dt=Math.max(Le.length,rt.length),xt=0;xt<dt;xt++)ee(Ee+"["+xt+"]",Le[xt],rt[xt],Te);else if(A.isPlainObject(Ve)||A.isPlainObject(ke)){var It=A.isPlainObject(Ve)?Ve:{},Bt=A.isPlainObject(ke)?ke:{},Gt=A.extendFlat({},It,Bt);for(var Kt in Gt)ee(Ee+"."+Kt,It[Kt],Bt[Kt],Te)}else Te[Ee]===void 0&&(Te[Ee]=ne(Ve))}function ie(Ee,Ve,ke){for(var Te in ke){var Le=M(Ee,Te);ee(Te,Le.get(),ke[Te],Ve)}}function fe(Ee,Ve,ke){var Te=Ee._fullLayout,Le=Ee._fullData,rt=Ee.data,dt=Te._guiEditing,xt=j(Te._preGUI,dt),It=A.extendDeepAll({},Ve),Bt,Gt=E.traceFlags(),Kt={},sr={},sa;function Aa(){return ke.map(function(){})}function La(mr){var $r=i.id2name(mr);sa.indexOf($r)===-1&&sa.push($r)}function ka(mr){return"LAYOUT"+mr+".autorange"}function Ga(mr){return"LAYOUT"+mr+".range"}function Ma(mr){for(var $r=mr;$r<Le.length;$r++)if(Le[$r]._input===rt[mr])return Le[$r]}function Ua(mr,$r,ma){if(Array.isArray(mr)){mr.forEach(function(Sa){Ua(Sa,$r,ma)});return}if(!(mr in Ve||w.hasParent(Ve,mr))){var Ba;if(mr.substr(0,6)==="LAYOUT")Ba=xt(Ee.layout,mr.replace("LAYOUT",""));else{var Ca=ke[ma],da=Te._tracePreGUI[Ma(Ca)._fullInput.uid];Ba=j(da,dt)(rt[Ca],mr)}mr in sr||(sr[mr]=Aa()),sr[mr][ma]===void 0&&(sr[mr][ma]=ne(Ba.get())),$r!==void 0&&Ba.set($r)}}function ni(mr){return function($r){return Le[$r][mr]}}function Wt(mr){return function($r,ma){return $r===!1?Le[ke[ma]][mr]:null}}for(var zt in Ve){if(w.hasParent(Ve,zt))throw new Error("cannot set "+zt+" and a parent attribute simultaneously");var Vt=Ve[zt],Ut,xr,Zr,pa,Xr,Ea;if((zt==="autobinx"||zt==="autobiny")&&(zt=zt.charAt(zt.length-1)+"bins",Array.isArray(Vt)?Vt=Vt.map(Wt(zt)):Vt===!1?Vt=ke.map(ni(zt)):Vt=null),Kt[zt]=Vt,zt.substr(0,6)==="LAYOUT"){Zr=xt(Ee.layout,zt.replace("LAYOUT","")),sr[zt]=[ne(Zr.get())],Zr.set(Array.isArray(Vt)?Vt[0]:Vt),Gt.calc=!0;continue}for(sr[zt]=Aa(),Bt=0;Bt<ke.length;Bt++){Ut=rt[ke[Bt]],xr=Ma(ke[Bt]);var Fa=Te._tracePreGUI[xr._fullInput.uid];if(Zr=j(Fa,dt)(Ut,zt),pa=Zr.get(),Xr=Array.isArray(Vt)?Vt[Bt%Vt.length]:Vt,Xr!==void 0){var qa=Zr.parts[Zr.parts.length-1],ya=zt.substr(0,zt.length-qa.length-1),$a=ya?ya+".":"",mt=ya?M(xr,ya).get():xr;if(Ea=o.getTraceValObject(xr,Zr.parts),Ea&&Ea.impliedEdits&&Xr!==null)for(var gt in Ea.impliedEdits)Ua(A.relativeAttr(zt,gt),Ea.impliedEdits[gt],Bt);else if((qa==="thicknessmode"||qa==="lenmode")&&pa!==Xr&&(Xr==="fraction"||Xr==="pixels")&&mt){var Er=Te._size,kr=mt.orient,br=kr==="top"||kr==="bottom";if(qa==="thicknessmode"){var Tr=br?Er.h:Er.w;Ua($a+"thickness",mt.thickness*(Xr==="fraction"?1/Tr:Tr),Bt)}else{var Mr=br?Er.w:Er.h;Ua($a+"len",mt.len*(Xr==="fraction"?1/Mr:Mr),Bt)}}else if(zt==="type"&&(Xr==="pie"!=(pa==="pie")||Xr==="funnelarea"!=(pa==="funnelarea"))){var Fr="x",Lr="y";(Xr==="bar"||pa==="bar")&&Ut.orientation==="h"&&(Fr="y",Lr="x"),A.swapAttrs(Ut,["?","?src"],"labels",Fr),A.swapAttrs(Ut,["d?","?0"],"label",Fr),A.swapAttrs(Ut,["?","?src"],"values",Lr),pa==="pie"||pa==="funnelarea"?(M(Ut,"marker.color").set(M(Ut,"marker.colors").get()),Te._pielayer.selectAll("g.trace").remove()):r.traceIs(Ut,"cartesian")&&M(Ut,"marker.colors").set(M(Ut,"marker.color").get())}sr[zt][Bt]=ne(pa);var Jr=["swapxy","swapxyaxes","orientation","orientationaxes"];if(Jr.indexOf(zt)!==-1){if(zt==="orientation"){Zr.set(Xr);var oa=Ut.x&&!Ut.y?"h":"v";if((Zr.get()||oa)===xr.orientation)continue}else zt==="orientationaxes"&&(Ut.orientation={v:"h",h:"v"}[xr.orientation]);w.swapXYData(Ut),Gt.calc=Gt.clearAxisTypes=!0}else a.dataArrayContainers.indexOf(Zr.parts[0])!==-1?(w.manageArrayContainers(Zr,Xr,sr),Gt.calc=!0):(Ea?Ea.arrayOk&&!r.traceIs(xr,"regl")&&(A.isArrayOrTypedArray(Xr)||A.isArrayOrTypedArray(pa))?Gt.calc=!0:E.update(Gt,Ea):Gt.calc=!0,Zr.set(Xr))}}if(["swapxyaxes","orientationaxes"].indexOf(zt)!==-1&&i.swap(Ee,ke),zt==="orientationaxes"){var ca=M(Ee.layout,"hovermode"),kt=ca.get();kt==="x"?ca.set("y"):kt==="y"?ca.set("x"):kt==="x unified"?ca.set("y unified"):kt==="y unified"&&ca.set("x unified")}if(["orientation","type"].indexOf(zt)!==-1){for(sa=[],Bt=0;Bt<ke.length;Bt++){var ir=rt[ke[Bt]];r.traceIs(ir,"cartesian")&&(La(ir.xaxis||"x"),La(ir.yaxis||"y"))}Ua(sa.map(ka),!0,0),Ua(sa.map(Ga),[0,1],0)}}return(Gt.calc||Gt.plot)&&(Gt.fullReplot=!0),{flags:Gt,undoit:sr,redoit:Kt,traces:ke,eventData:A.extendDeepNoArrays([],[It,ke])}}function be(Ee,Ve,ke){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var Te={};if(typeof Ve=="string")Te[Ve]=ke;else if(A.isPlainObject(Ve))Te=A.extendFlat({},Ve);else return A.warn("Relayout fail.",Ve,ke),Promise.reject();Object.keys(Te).length&&(Ee.changed=!0);var Le=it(Ee,Te),rt=Le.flags;rt.calc&&(Ee.calcdata=void 0);var dt=[a.previousPromises];rt.layoutReplot?dt.push(S.layoutReplot):Object.keys(Te).length&&(Ae(Ee,rt,Le)||a.supplyDefaults(Ee),rt.legend&&dt.push(S.doLegend),rt.layoutstyle&&dt.push(S.layoutStyles),rt.axrange&&Be(dt,Le.rangesAltered),rt.ticks&&dt.push(S.doTicksRelayout),rt.modebar&&dt.push(S.doModeBar),rt.camera&&dt.push(S.doCamera),rt.colorbars&&dt.push(S.doColorBars),dt.push(y)),dt.push(a.rehover,a.redrag,a.reselect),t.add(Ee,be,[Ee,Le.undoit],be,[Ee,Le.redoit]);var xt=A.syncOrAsync(dt,Ee);return(!xt||!xt.then)&&(xt=Promise.resolve(Ee)),xt.then(function(){return Ee.emit("plotly_relayout",Le.eventData),Ee})}function Ae(Ee,Ve,ke){var Te=Ee._fullLayout;if(!Ve.axrange)return!1;for(var Le in Ve)if(Le!=="axrange"&&Ve[Le])return!1;var rt,dt,xt=function(sa,Aa){return A.coerce(rt,dt,s,sa,Aa)},It={};for(var Bt in ke.rangesAltered){var Gt=i.id2name(Bt);if(rt=Ee.layout[Gt],dt=Te[Gt],n(rt,dt,xt,It),dt._matchGroup){for(var Kt in dt._matchGroup)if(Kt!==Bt){var sr=Te[i.id2name(Kt)];sr.autorange=dt.autorange,sr.range=dt.range.slice(),sr._input.range=dt.range.slice()}}}return!0}function Be(Ee,Ve){var ke=Ve?function(Te){var Le=[],rt=!0;for(var dt in Ve){var xt=i.getFromId(Te,dt);if(Le.push(dt),(xt.ticklabelposition||"").indexOf("inside")!==-1&&xt._anchorAxis&&Le.push(xt._anchorAxis._id),xt._matchGroup)for(var It in xt._matchGroup)Ve[It]||Le.push(It)}return i.draw(Te,Le,{skipTitle:rt})}:function(Te){return i.draw(Te,"redraw")};Ee.push(T,S.doAutoRangeAndConstraints,ke,S.drawData,S.finalDraw)}var Ie=/^[xyz]axis[0-9]*\.range(\[[0|1]\])?$/,Ze=/^[xyz]axis[0-9]*\.autorange$/,at=/^[xyz]axis[0-9]*\.domain(\[[0|1]\])?$/;function it(Ee,Ve){var ke=Ee.layout,Te=Ee._fullLayout,Le=Te._guiEditing,rt=j(Te._preGUI,Le),dt=Object.keys(Ve),xt=i.list(Ee),It=A.extendDeepAll({},Ve),Bt={},Gt,Kt,sr;for(dt=Object.keys(Ve),Kt=0;Kt<dt.length;Kt++)if(dt[Kt].indexOf("allaxes")===0){for(sr=0;sr<xt.length;sr++){var sa=xt[sr]._id.substr(1),Aa=sa.indexOf("scene")!==-1?sa+".":"",La=dt[Kt].replace("allaxes",Aa+xt[sr]._name);Ve[La]||(Ve[La]=Ve[dt[Kt]])}delete Ve[dt[Kt]]}var ka=E.layoutFlags(),Ga={},Ma={};function Ua(da,Sa){if(Array.isArray(da)){da.forEach(function(ai){Ua(ai,Sa)});return}if(!(da in Ve||w.hasParent(Ve,da))){var Ti=rt(ke,da);da in Ma||(Ma[da]=ne(Ti.get())),Sa!==void 0&&Ti.set(Sa)}}var ni={},Wt;function zt(da){var Sa=i.name2id(da.split(".")[0]);return ni[Sa]=1,Sa}for(var Vt in Ve){if(w.hasParent(Ve,Vt))throw new Error("cannot set "+Vt+" and a parent attribute simultaneously");for(var Ut=rt(ke,Vt),xr=Ve[Vt],Zr=Ut.parts.length,pa=Zr-1;pa>0&&typeof Ut.parts[pa]!="string";)pa--;var Xr=Ut.parts[pa],Ea=Ut.parts[pa-1]+"."+Xr,Fa=Ut.parts.slice(0,pa).join("."),qa=M(Ee.layout,Fa).get(),ya=M(Te,Fa).get(),$a=Ut.get();if(xr!==void 0){Ga[Vt]=xr,Ma[Vt]=Xr==="reverse"?xr:ne($a);var mt=o.getLayoutValObject(Te,Ut.parts);if(mt&&mt.impliedEdits&&xr!==null)for(var gt in mt.impliedEdits)Ua(A.relativeAttr(Vt,gt),mt.impliedEdits[gt]);if(["width","height"].indexOf(Vt)!==-1)if(xr){Ua("autosize",null);var Er=Vt==="height"?"width":"height";Ua(Er,Te[Er])}else Te[Vt]=Ee._initialAutoSize[Vt];else if(Vt==="autosize")Ua("width",xr?null:Te.width),Ua("height",xr?null:Te.height);else if(Ea.match(Ie))zt(Ea),M(Te,Fa+"._inputRange").set(null);else if(Ea.match(Ze)){zt(Ea),M(Te,Fa+"._inputRange").set(null);var kr=M(Te,Fa).get();kr._inputDomain&&(kr._input.domain=kr._inputDomain.slice())}else Ea.match(at)&&M(Te,Fa+"._inputDomain").set(null);if(Xr==="type"){Wt=qa;var br=ya.type==="linear"&&xr==="log",Tr=ya.type==="log"&&xr==="linear";if(br||Tr){if(!Wt||!Wt.range)Ua(Fa+".autorange",!0);else if(ya.autorange)br&&(Wt.range=Wt.range[1]>Wt.range[0]?[1,2]:[2,1]);else{var Mr=Wt.range[0],Fr=Wt.range[1];br?(Mr<=0&&Fr<=0&&Ua(Fa+".autorange",!0),Mr<=0?Mr=Fr/1e6:Fr<=0&&(Fr=Mr/1e6),Ua(Fa+".range[0]",Math.log(Mr)/Math.LN10),Ua(Fa+".range[1]",Math.log(Fr)/Math.LN10)):(Ua(Fa+".range[0]",Math.pow(10,Mr)),Ua(Fa+".range[1]",Math.pow(10,Fr)))}Array.isArray(Te._subplots.polar)&&Te._subplots.polar.length&&Te[Ut.parts[0]]&&Ut.parts[1]==="radialaxis"&&delete Te[Ut.parts[0]]._subplot.viewInitial["radialaxis.range"],r.getComponentMethod("annotations","convertCoords")(Ee,ya,xr,Ua),r.getComponentMethod("images","convertCoords")(Ee,ya,xr,Ua)}else Ua(Fa+".autorange",!0),Ua(Fa+".range",null);M(Te,Fa+"._inputRange").set(null)}else if(Xr.match(m)){var Lr=M(Te,Vt).get(),Jr=(xr||{}).type;(!Jr||Jr==="-")&&(Jr="linear"),r.getComponentMethod("annotations","convertCoords")(Ee,Lr,Jr,Ua),r.getComponentMethod("images","convertCoords")(Ee,Lr,Jr,Ua)}var oa=_.containerArrayMatch(Vt);if(oa){Gt=oa.array,Kt=oa.index;var ca=oa.property,kt=mt||{editType:"calc"};Kt!==""&&ca===""&&(_.isAddVal(xr)?Ma[Vt]=null:_.isRemoveVal(xr)?Ma[Vt]=(M(ke,Gt).get()||[])[Kt]:A.warn("unrecognized full object value",Ve)),E.update(ka,kt),Bt[Gt]||(Bt[Gt]={});var ir=Bt[Gt][Kt];ir||(ir=Bt[Gt][Kt]={}),ir[ca]=xr,delete Ve[Vt]}else Xr==="reverse"?(qa.range?qa.range.reverse():(Ua(Fa+".autorange",!0),qa.range=[1,0]),ya.autorange?ka.calc=!0:ka.plot=!0):(Vt==="dragmode"&&(xr===!1&&$a!==!1||xr!==!1&&$a===!1)||Te._has("scatter-like")&&Te._has("regl")&&Vt==="dragmode"&&(xr==="lasso"||xr==="select")&&!($a==="lasso"||$a==="select")?ka.plot=!0:mt?E.update(ka,mt):ka.calc=!0,Ut.set(xr))}}for(Gt in Bt){var mr=_.applyContainerArrayChanges(Ee,rt(ke,Gt),Bt[Gt],ka,rt);mr||(ka.plot=!0)}for(var $r in ni){Wt=i.getFromId(Ee,$r);var ma=Wt&&Wt._constraintGroup;if(ma){ka.calc=!0;for(var Ba in ma)ni[Ba]||(i.getFromId(Ee,Ba)._constraintShrinkable=!0)}}(et(Ee)||Ve.height||Ve.width)&&(ka.plot=!0);var Ca=Te.shapes;for(Kt=0;Kt<Ca.length;Kt++)if(Ca[Kt].showlegend){ka.calc=!0;break}return(ka.plot||ka.calc)&&(ka.layoutReplot=!0),{flags:ka,rangesAltered:ni,undoit:Ma,redoit:Ga,eventData:It}}function et(Ee){var Ve=Ee._fullLayout,ke=Ve.width,Te=Ve.height;return Ee.layout.autosize&&a.plotAutoSize(Ee,Ee.layout,Ve),Ve.width!==ke||Ve.height!==Te}function lt(Ee,Ve,ke,Te){Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee),A.isPlainObject(Ve)||(Ve={}),A.isPlainObject(ke)||(ke={}),Object.keys(Ve).length&&(Ee.changed=!0),Object.keys(ke).length&&(Ee.changed=!0);var Le=w.coerceTraceIndices(Ee,Te),rt=fe(Ee,A.extendFlat({},Ve),Le),dt=rt.flags,xt=it(Ee,A.extendFlat({},ke)),It=xt.flags;(dt.calc||It.calc)&&(Ee.calcdata=void 0),dt.clearAxisTypes&&w.clearAxisTypes(Ee,Le,ke);var Bt=[];It.layoutReplot?Bt.push(S.layoutReplot):dt.fullReplot?Bt.push(X._doPlot):(Bt.push(a.previousPromises),Ae(Ee,It,xt)||a.supplyDefaults(Ee),dt.style&&Bt.push(S.doTraceStyle),(dt.colorbars||It.colorbars)&&Bt.push(S.doColorBars),It.legend&&Bt.push(S.doLegend),It.layoutstyle&&Bt.push(S.layoutStyles),It.axrange&&Be(Bt,xt.rangesAltered),It.ticks&&Bt.push(S.doTicksRelayout),It.modebar&&Bt.push(S.doModeBar),It.camera&&Bt.push(S.doCamera),Bt.push(y)),Bt.push(a.rehover,a.redrag,a.reselect),t.add(Ee,lt,[Ee,rt.undoit,xt.undoit,rt.traces],lt,[Ee,rt.redoit,xt.redoit,rt.traces]);var Gt=A.syncOrAsync(Bt,Ee);return(!Gt||!Gt.then)&&(Gt=Promise.resolve(Ee)),Gt.then(function(){return Ee.emit("plotly_update",{data:rt.eventData,layout:xt.eventData}),Ee})}function Me(Ee){return function(ke){ke._fullLayout._guiEditing=!0;var Te=Ee.apply(null,arguments);return ke._fullLayout._guiEditing=!1,Te}}var ge=[{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:/^(map\d*)\.(center|zoom|bearing|pitch)/},{pattern:/^legend\.(x|y)$/,attr:"editrevision"},{pattern:/^(shapes|annotations)/,attr:"editrevision"},{pattern:/^title\.text$/,attr:"editrevision"}],ce=[{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 ze(Ee,Ve){for(var ke=0;ke<Ve.length;ke++){var Te=Ve[ke],Le=Ee.match(Te.pattern);if(Le){var rt=Le[1]||"";return{head:rt,tail:Ee.substr(rt.length+1),attr:Te.attr}}}}function tt(Ee,Ve){var ke=M(Ve,Ee).get();if(ke!==void 0)return ke;var Te=Ee.split(".");for(Te.pop();Te.length>1;)if(Te.pop(),ke=M(Ve,Te.join(".")+".uirevision").get(),ke!==void 0)return ke;return Ve.uirevision}function nt(Ee,Ve){for(var ke=0;ke<Ve.length;ke++)if(Ve[ke]._fullInput.uid===Ee)return ke;return-1}function Qe(Ee,Ve,ke){for(var Te=0;Te<Ve.length;Te++)if(Ve[Te].uid===Ee)return Te;return!Ve[ke]||Ve[ke].uid?-1:ke}function Ct(Ee,Ve){var ke=A.isPlainObject(Ee),Te=Array.isArray(Ee);return ke||Te?(ke&&A.isPlainObject(Ve)||Te&&Array.isArray(Ve))&&JSON.stringify(Ee)===JSON.stringify(Ve):Ee===Ve}function St(Ee,Ve,ke,Te){var Le=Te._preGUI,rt,dt,xt,It,Bt,Gt,Kt,sr,sa,Aa,La=[],ka={},Ga={};for(rt in Le){if(Bt=ze(rt,ge),Bt){if(sa=Bt.head,Aa=Bt.tail,dt=Bt.attr||sa+".uirevision",xt=M(Te,dt).get(),It=xt&&tt(dt,Ve),It&&It===xt){if(Gt=Le[rt],Gt===null&&(Gt=void 0),Kt=M(Ve,rt),sr=Kt.get(),Ct(sr,Gt)){sr===void 0&&Aa==="autorange"&&La.push(sa),Kt.set(ne(M(Te,rt).get()));continue}else if(Aa==="autorange"||Aa.substr(0,6)==="range["){var Ma=Le[sa+".range[0]"],Ua=Le[sa+".range[1]"],ni=Le[sa+".autorange"];if(ni||ni===null&&Ma===null&&Ua===null){if(!(sa in ka)){var Wt=M(Ve,sa).get();ka[sa]=Wt&&(Wt.autorange||Wt.autorange!==!1&&(!Wt.range||Wt.range.length!==2))}if(ka[sa]){Kt.set(ne(M(Te,rt).get()));continue}}}}}else A.warn("unrecognized GUI edit: "+rt);delete Le[rt],Bt&&Bt.tail.substr(0,6)==="range["&&(Ga[Bt.head]=1)}for(var zt=0;zt<La.length;zt++){var Vt=La[zt];if(Ga[Vt]){var Ut=M(Ve,Vt).get();Ut&&delete Ut.autorange}}var xr=Te._tracePreGUI;for(var Zr in xr){var pa=xr[Zr],Xr=null,Ea;for(rt in pa){if(!Xr){var Fa=nt(Zr,ke);if(Fa<0){delete xr[Zr];break}var qa=ke[Fa];Ea=qa._fullInput;var ya=Qe(Zr,Ee,Ea.index);if(ya<0){delete xr[Zr];break}Xr=Ee[ya]}if(Bt=ze(rt,ce),Bt){if(Bt.attr?(xt=M(Te,Bt.attr).get(),It=xt&&tt(Bt.attr,Ve)):(xt=Ea.uirevision,It=Xr.uirevision,It===void 0&&(It=Ve.uirevision)),It&&It===xt&&(Gt=pa[rt],Gt===null&&(Gt=void 0),Kt=M(Xr,rt),sr=Kt.get(),Ct(sr,Gt))){Kt.set(ne(M(Ea,rt).get()));continue}}else A.warn("unrecognized GUI edit: "+rt+" in trace uid "+Zr);delete pa[rt]}}}function Ot(Ee,Ve,ke,Te){var Le,rt;function dt(){return X.addFrames(Ee,Le)}Ee=A.getGraphDiv(Ee),w.clearPromiseQueue(Ee);var xt=Ee._fullData,It=Ee._fullLayout;if(!A.isPlotDiv(Ee)||!xt||!It)rt=X.newPlot(Ee,Ve,ke,Te);else{if(A.isPlainObject(Ve)){var Bt=Ve;Ve=Bt.data,ke=Bt.layout,Te=Bt.config,Le=Bt.frames}var Gt=!1;if(Te){var Kt=A.extendDeep({},Ee._context);Ee._context=void 0,z(Ee,Te),Gt=Cr(Kt,Ee._context)}Ee.data=Ve||[],w.cleanData(Ee.data),Ee.layout=ke||{},w.cleanLayout(Ee.layout),St(Ee.data,Ee.layout,xt,It),a.supplyDefaults(Ee,{skipUpdateCalc:!0});var sr=Ee._fullData,sa=Ee._fullLayout,Aa=sa.datarevision===void 0,La=sa.transition,ka=ur(Ee,It,sa,Aa,La),Ga=ka.newDataRevision,Ma=jt(Ee,xt,sr,Aa,La,Ga);if(et(Ee)&&(ka.layoutReplot=!0),Ma.calc||ka.calc){Ee.calcdata=void 0;for(var Ua=Object.getOwnPropertyNames(sa),ni=0;ni<Ua.length;ni++){var Wt=Ua[ni],zt=Wt.substring(0,5);if(zt==="xaxis"||zt==="yaxis"){var Vt=sa[Wt]._emptyCategories;Vt&&Vt()}}}else a.supplyDefaultsUpdateCalc(Ee.calcdata,sr);var Ut=[];if(Le&&(Ee._transitionData={},a.createTransitionData(Ee),Ut.push(dt)),sa.transition&&!Gt&&(Ma.anim||ka.anim))ka.ticks&&Ut.push(S.doTicksRelayout),a.doCalcdata(Ee),S.doAutoRangeAndConstraints(Ee),Ut.push(function(){return a.transitionFromReact(Ee,Ma,ka,It)});else if(Ma.fullReplot||ka.layoutReplot||Gt)Ee._fullLayout._skipDefaults=!0,Ut.push(X._doPlot);else{for(var xr in ka.arrays){var Zr=ka.arrays[xr];if(Zr.length){var pa=r.getComponentMethod(xr,"drawOne");if(pa!==A.noop)for(var Xr=0;Xr<Zr.length;Xr++)pa(Ee,Zr[Xr]);else{var Ea=r.getComponentMethod(xr,"draw");if(Ea===A.noop)throw new Error("cannot draw components: "+xr);Ea(Ee)}}}Ut.push(a.previousPromises),Ma.style&&Ut.push(S.doTraceStyle),(Ma.colorbars||ka.colorbars)&&Ut.push(S.doColorBars),ka.legend&&Ut.push(S.doLegend),ka.layoutstyle&&Ut.push(S.layoutStyles),ka.axrange&&Be(Ut),ka.ticks&&Ut.push(S.doTicksRelayout),ka.modebar&&Ut.push(S.doModeBar),ka.camera&&Ut.push(S.doCamera),Ut.push(y)}Ut.push(a.rehover,a.redrag,a.reselect),rt=A.syncOrAsync(Ut,Ee),(!rt||!rt.then)&&(rt=Promise.resolve(Ee))}return rt.then(function(){return Ee.emit("plotly_react",{data:Ve,layout:ke}),Ee})}function jt(Ee,Ve,ke,Te,Le,rt){var dt=Ve.length===ke.length;if(!Le&&!dt)return{fullReplot:!0,calc:!0};var xt=E.traceFlags();xt.arrays={},xt.nChanges=0,xt.nChangesAnim=0;var It,Bt;function Gt(sa){var Aa=o.getTraceValObject(Bt,sa);return!Bt._module.animatable&&Aa.anim&&(Aa.anim=!1),Aa}var Kt={getValObject:Gt,flags:xt,immutable:Te,transition:Le,newDataRevision:rt,gd:Ee},sr={};for(It=0;It<Ve.length;It++)if(ke[It]){if(Bt=ke[It]._fullInput,sr[Bt.uid])continue;sr[Bt.uid]=1,ar(Ve[It]._fullInput,Bt,[],Kt)}return(xt.calc||xt.plot)&&(xt.fullReplot=!0),Le&&xt.nChanges&&xt.nChangesAnim&&(xt.anim=xt.nChanges===xt.nChangesAnim&&dt?"all":"some"),xt}function ur(Ee,Ve,ke,Te,Le){var rt=E.layoutFlags();rt.arrays={},rt.rangesAltered={},rt.nChanges=0,rt.nChangesAnim=0;function dt(sr){return o.getLayoutValObject(ke,sr)}for(var xt in ke)if(!(!xt.startsWith("xaxis")&&!xt.startsWith("yaxis"))&&Ve[xt]){var It=ke[xt].domain,Bt=Ve[xt].domain,Gt=Ve[xt]._inputDomain;Ve[xt]._inputDomain&&(It[0]===Gt[0]&&It[1]===Gt[1]?ke[xt].domain=Ve[xt].domain:(It[0]!==Bt[0]||It[1]!==Bt[1])&&(ke[xt]._inputDomain=null))}var Kt={getValObject:dt,flags:rt,immutable:Te,transition:Le,gd:Ee};return ar(Ve,ke,[],Kt),(rt.plot||rt.calc)&&(rt.layoutReplot=!0),Le&&rt.nChanges&&rt.nChangesAnim&&(rt.anim=rt.nChanges===rt.nChangesAnim?"all":"some"),rt}function ar(Ee,Ve,ke,Te){var Le,rt,dt,xt=Te.getValObject,It=Te.flags,Bt=Te.immutable,Gt=Te.inArray,Kt=Te.arrayIndex;function sr(){var Fa=Le.editType;if(Gt&&Fa.indexOf("arraydraw")!==-1){A.pushUnique(It.arrays[Gt],Kt);return}E.update(It,Le),Fa!=="none"&&It.nChanges++,Te.transition&&Le.anim&&It.nChangesAnim++,(Ie.test(dt)||Ze.test(dt))&&(It.rangesAltered[ke[0]]=1),rt==="datarevision"&&(It.newDataRevision=1)}function sa(Fa){return Fa.valType==="data_array"||Fa.arrayOk}for(rt in Ee){if(It.calc&&!Te.transition)return;var Aa=Ee[rt],La=Ve[rt],ka=ke.concat(rt);if(dt=ka.join("."),!(rt.charAt(0)==="_"||typeof Aa=="function"||Aa===La)){if((rt==="tick0"||rt==="dtick")&&ke[0]!=="geo"){var Ga=Ve.tickmode;if(Ga==="auto"||Ga==="array"||!Ga)continue}if(!(rt==="range"&&Ve.autorange)&&!((rt==="zmin"||rt==="zmax")&&Ve.type==="contourcarpet")&&(Le=xt(ka),!!Le&&!(Le._compareAsJSON&&JSON.stringify(Aa)===JSON.stringify(La)))){var Ma=Le.valType,Ua,ni=sa(Le),Wt=Array.isArray(Aa),zt=Array.isArray(La);if(Wt&&zt){var Vt="_input_"+rt,Ut=Ee[Vt],xr=Ve[Vt];if(Array.isArray(Ut)&&Ut===xr)continue}if(La===void 0)ni&&Wt?It.calc=!0:sr();else if(Le._isLinkedToArray){var Zr=[],pa=!1;Gt||(It.arrays[rt]=Zr);var Xr=Math.min(Aa.length,La.length),Ea=Math.max(Aa.length,La.length);if(Xr!==Ea)if(Le.editType==="arraydraw")pa=!0;else{sr();continue}for(Ua=0;Ua<Xr;Ua++)ar(Aa[Ua],La[Ua],ka.concat(Ua),A.extendFlat({inArray:rt,arrayIndex:Ua},Te));if(pa)for(Ua=Xr;Ua<Ea;Ua++)Zr.push(Ua)}else!Ma&&A.isPlainObject(Aa)?ar(Aa,La,ka,Te):ni?Wt&&zt?(Bt&&(It.calc=!0),(Bt||Te.newDataRevision)&&sr()):Wt!==zt?It.calc=!0:sr():Wt&&zt?(Aa.length!==La.length||String(Aa)!==String(La))&&sr():sr()}}}for(rt in Ve)if(!(rt in Ee||rt.charAt(0)==="_"||typeof Ve[rt]=="function"))if(Le=xt(ke.concat(rt)),sa(Le)&&Array.isArray(Ve[rt])){It.calc=!0;return}else sr()}function Cr(Ee,Ve){var ke;for(ke in Ee)if(ke.charAt(0)!=="_"){var Te=Ee[ke],Le=Ve[ke];if(Te!==Le)if(A.isPlainObject(Te)&&A.isPlainObject(Le)){if(Cr(Te,Le))return!0}else if(Array.isArray(Te)&&Array.isArray(Le)){if(Te.length!==Le.length)return!0;for(var rt=0;rt<Te.length;rt++)if(Te[rt]!==Le[rt])if(A.isPlainObject(Te[rt])&&A.isPlainObject(Le[rt])){if(Cr(Te[rt],Le[rt]))return!0}else return!0}else return!0}}function vr(Ee,Ve,ke){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee+". It's likely that you've failed to create a plot before animating it. For more details, see https://plotly.com/javascript/animations/");var Te=Ee._transitionData;Te._frameQueue||(Te._frameQueue=[]),ke=a.supplyAnimationDefaults(ke);var Le=ke.transition,rt=ke.frame;Te._frameWaitingCnt===void 0&&(Te._frameWaitingCnt=0);function dt(Bt){return Array.isArray(Le)?Bt>=Le.length?Le[0]:Le[Bt]:Le}function xt(Bt){return Array.isArray(rt)?Bt>=rt.length?rt[0]:rt[Bt]:rt}function It(Bt,Gt){var Kt=0;return function(){if(Bt&&++Kt===Gt)return Bt()}}return new Promise(function(Bt,Gt){function Kt(){if(Te._frameQueue.length!==0){for(;Te._frameQueue.length;){var Xr=Te._frameQueue.pop();Xr.onInterrupt&&Xr.onInterrupt()}Ee.emit("plotly_animationinterrupted",[])}}function sr(Xr){if(Xr.length!==0){for(var Ea=0;Ea<Xr.length;Ea++){var Fa;Xr[Ea].type==="byname"?Fa=a.computeFrame(Ee,Xr[Ea].name):Fa=Xr[Ea].data;var qa=xt(Ea),ya=dt(Ea);ya.duration=Math.min(ya.duration,qa.duration);var $a={frame:Fa,name:Xr[Ea].name,frameOpts:qa,transitionOpts:ya};Ea===Xr.length-1&&($a.onComplete=It(Bt,2),$a.onInterrupt=Gt),Te._frameQueue.push($a)}ke.mode==="immediate"&&(Te._lastFrameAt=-1/0),Te._animationRaf||La()}}function sa(){Ee.emit("plotly_animated"),window.cancelAnimationFrame(Te._animationRaf),Te._animationRaf=null}function Aa(){Te._currentFrame&&Te._currentFrame.onComplete&&Te._currentFrame.onComplete();var Xr=Te._currentFrame=Te._frameQueue.shift();if(Xr){var Ea=Xr.name?Xr.name.toString():null;Ee._fullLayout._currentFrame=Ea,Te._lastFrameAt=Date.now(),Te._timeToNext=Xr.frameOpts.duration,a.transition(Ee,Xr.frame.data,Xr.frame.layout,w.coerceTraceIndices(Ee,Xr.frame.traces),Xr.frameOpts,Xr.transitionOpts).then(function(){Xr.onComplete&&Xr.onComplete()}),Ee.emit("plotly_animatingframe",{name:Ea,frame:Xr.frame,animation:{frame:Xr.frameOpts,transition:Xr.transitionOpts}})}else sa()}function La(){Ee.emit("plotly_animating"),Te._lastFrameAt=-1/0,Te._timeToNext=0,Te._runningTransitions=0,Te._currentFrame=null;var Xr=function(){Te._animationRaf=window.requestAnimationFrame(Xr),Date.now()-Te._lastFrameAt>Te._timeToNext&&Aa()};Xr()}var ka=0;function Ga(Xr){return Array.isArray(Le)?ka>=Le.length?Xr.transitionOpts=Le[ka]:Xr.transitionOpts=Le[0]:Xr.transitionOpts=Le,ka++,Xr}var Ma,Ua,ni=[],Wt=Ve==null,zt=Array.isArray(Ve),Vt=!Wt&&!zt&&A.isPlainObject(Ve);if(Vt)ni.push({type:"object",data:Ga(A.extendFlat({},Ve))});else if(Wt||["string","number"].indexOf(typeof Ve)!==-1)for(Ma=0;Ma<Te._frames.length;Ma++)Ua=Te._frames[Ma],Ua&&(Wt||String(Ua.group)===String(Ve))&&ni.push({type:"byname",name:String(Ua.name),data:Ga({name:Ua.name})});else if(zt)for(Ma=0;Ma<Ve.length;Ma++){var Ut=Ve[Ma];["number","string"].indexOf(typeof Ut)!==-1?(Ut=String(Ut),ni.push({type:"byname",name:Ut,data:Ga({name:Ut})})):A.isPlainObject(Ut)&&ni.push({type:"object",data:Ga(A.extendFlat({},Ut))})}for(Ma=0;Ma<ni.length;Ma++)if(Ua=ni[Ma],Ua.type==="byname"&&!Te._frameHash[Ua.data.name]){A.warn('animate failure: frame not found: "'+Ua.data.name+'"'),Gt();return}["next","immediate"].indexOf(ke.mode)!==-1&&Kt(),ke.direction==="reverse"&&ni.reverse();var xr=Ee._fullLayout._currentFrame;if(xr&&ke.fromcurrent){var Zr=-1;for(Ma=0;Ma<ni.length;Ma++)if(Ua=ni[Ma],Ua.type==="byname"&&Ua.name===xr){Zr=Ma;break}if(Zr>0&&Zr<ni.length-1){var pa=[];for(Ma=0;Ma<ni.length;Ma++)Ua=ni[Ma],(ni[Ma].type!=="byname"||Ma>Zr)&&pa.push(Ua);ni=pa}}ni.length>0?sr(ni):(Ee.emit("plotly_animated"),Bt())})}function _r(Ee,Ve,ke){if(Ee=A.getGraphDiv(Ee),Ve==null)return Promise.resolve();if(!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee+". It's likely that you've failed to create a plot before adding frames. For more details, see https://plotly.com/javascript/animations/");var Te,Le,rt,dt,xt=Ee._transitionData._frames,It=Ee._transitionData._frameHash;if(!Array.isArray(Ve))throw new Error("addFrames failure: frameList must be an Array of frame definitions"+Ve);var Bt=xt.length+Ve.length*2,Gt=[],Kt={};for(Te=Ve.length-1;Te>=0;Te--)if(A.isPlainObject(Ve[Te])){var sr=Ve[Te].name,sa=(It[sr]||Kt[sr]||{}).name,Aa=Ve[Te].name,La=It[sa]||Kt[sa];sa&&Aa&&typeof Aa=="number"&&La&&b<d&&(b++,A.warn('addFrames: overwriting frame "'+(It[sa]||Kt[sa]).name+'" with a frame whose name of type "number" also equates to "'+sa+'". This is valid but may potentially lead to unexpected behavior since all plotly.js frame names are stored internally as strings.'),b===d&&A.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.")),Kt[sr]={name:sr},Gt.push({frame:a.supplyFrameDefaults(Ve[Te]),index:ke&&ke[Te]!==void 0&&ke[Te]!==null?ke[Te]:Bt+Te})}Gt.sort(function(Vt,Ut){return Vt.index>Ut.index?-1:Vt.index<Ut.index?1:0});var ka=[],Ga=[],Ma=xt.length;for(Te=Gt.length-1;Te>=0;Te--){if(Le=Gt[Te].frame,typeof Le.name=="number"&&A.warn("Warning: addFrames accepts frames with numeric names, but the numbers areimplicitly cast to strings"),!Le.name)for(;It[Le.name="frame "+Ee._transitionData._counter++];);if(It[Le.name]){for(rt=0;rt<xt.length&&(xt[rt]||{}).name!==Le.name;rt++);ka.push({type:"replace",index:rt,value:Le}),Ga.unshift({type:"replace",index:rt,value:xt[rt]})}else dt=Math.max(0,Math.min(Gt[Te].index,Ma)),ka.push({type:"insert",index:dt,value:Le}),Ga.unshift({type:"delete",index:dt}),Ma++}var Ua=a.modifyFrames,ni=a.modifyFrames,Wt=[Ee,Ga],zt=[Ee,ka];return t&&t.add(Ee,Ua,Wt,ni,zt),a.modifyFrames(Ee,ka)}function yt(Ee,Ve){if(Ee=A.getGraphDiv(Ee),!A.isPlotDiv(Ee))throw new Error("This element is not a Plotly plot: "+Ee);var ke,Te,Le=Ee._transitionData._frames,rt=[],dt=[];if(!Ve)for(Ve=[],ke=0;ke<Le.length;ke++)Ve.push(ke);for(Ve=Ve.slice(),Ve.sort(),ke=Ve.length-1;ke>=0;ke--)Te=Ve[ke],rt.push({type:"delete",index:Te}),dt.unshift({type:"insert",index:Te,value:Le[Te]});var xt=a.modifyFrames,It=a.modifyFrames,Bt=[Ee,dt],Gt=[Ee,rt];return t&&t.add(Ee,xt,Bt,It,Gt),a.modifyFrames(Ee,rt)}function Fe(Ee){Ee=A.getGraphDiv(Ee);var Ve=Ee._fullLayout||{},ke=Ee._fullData||[];return a.cleanPlot([],{},ke,Ve),a.purge(Ee),e.purge(Ee),Ve._container&&Ve._container.remove(),delete Ee._context,Ee}function Ke(Ee){var Ve=Ee._fullLayout,ke=Ee.getBoundingClientRect();if(!A.equalDomRects(ke,Ve._lastBBox)){var Te=Ve._invTransform=A.inverseTransformMatrix(A.getFullTransformMatrix(Ee));Ve._invScaleX=Math.sqrt(Te[0][0]*Te[0][0]+Te[0][1]*Te[0][1]+Te[0][2]*Te[0][2]),Ve._invScaleY=Math.sqrt(Te[1][0]*Te[1][0]+Te[1][1]*Te[1][1]+Te[1][2]*Te[1][2]),Ve._lastBBox=ke}}function Ne(Ee){var Ve=H.select(Ee),ke=Ee._fullLayout;if(ke._calcInverseTransform=Ke,ke._calcInverseTransform(Ee),ke._container=Ve.selectAll(".plot-container").data([0]),ke._container.enter().insert("div",":first-child").classed("plot-container",!0).classed("plotly",!0).style({width:"100%",height:"100%"}),ke._paperdiv=ke._container.selectAll(".svg-container").data([0]),ke._paperdiv.enter().append("div").classed("user-select-none",!0).classed("svg-container",!0).style("position","relative"),ke._glcontainer=ke._paperdiv.selectAll(".gl-container").data([{}]),ke._glcontainer.enter().append("div").classed("gl-container",!0),ke._paperdiv.selectAll(".main-svg").remove(),ke._paperdiv.select(".modebar-container").remove(),ke._paper=ke._paperdiv.insert("svg",":first-child").classed("main-svg",!0),ke._toppaper=ke._paperdiv.append("svg").classed("main-svg",!0),ke._modebardiv=ke._paperdiv.append("div"),delete ke._modeBar,ke._hoverpaper=ke._paperdiv.append("svg").classed("main-svg",!0),!ke._uid){var Te={};H.selectAll("defs").each(function(){this.id&&(Te[this.id.split("-")[1]]=1)}),ke._uid=A.randstr(Te)}ke._paperdiv.selectAll(".main-svg").attr(p.svgAttrs),ke._defs=ke._paper.append("defs").attr("id","defs-"+ke._uid),ke._clips=ke._defs.append("g").classed("clips",!0),ke._topdefs=ke._toppaper.append("defs").attr("id","topdefs-"+ke._uid),ke._topclips=ke._topdefs.append("g").classed("clips",!0),ke._bgLayer=ke._paper.append("g").classed("bglayer",!0),ke._draggers=ke._paper.append("g").classed("draglayer",!0);var Le=ke._paper.append("g").classed("layer-below",!0);ke._imageLowerLayer=Le.append("g").classed("imagelayer",!0),ke._shapeLowerLayer=Le.append("g").classed("shapelayer",!0),ke._cartesianlayer=ke._paper.append("g").classed("cartesianlayer",!0),ke._polarlayer=ke._paper.append("g").classed("polarlayer",!0),ke._smithlayer=ke._paper.append("g").classed("smithlayer",!0),ke._ternarylayer=ke._paper.append("g").classed("ternarylayer",!0),ke._geolayer=ke._paper.append("g").classed("geolayer",!0),ke._funnelarealayer=ke._paper.append("g").classed("funnelarealayer",!0),ke._pielayer=ke._paper.append("g").classed("pielayer",!0),ke._iciclelayer=ke._paper.append("g").classed("iciclelayer",!0),ke._treemaplayer=ke._paper.append("g").classed("treemaplayer",!0),ke._sunburstlayer=ke._paper.append("g").classed("sunburstlayer",!0),ke._indicatorlayer=ke._toppaper.append("g").classed("indicatorlayer",!0),ke._glimages=ke._paper.append("g").classed("glimages",!0);var rt=ke._toppaper.append("g").classed("layer-above",!0);ke._imageUpperLayer=rt.append("g").classed("imagelayer",!0),ke._shapeUpperLayer=rt.append("g").classed("shapelayer",!0),ke._selectionLayer=ke._toppaper.append("g").classed("selectionlayer",!0),ke._infolayer=ke._toppaper.append("g").classed("infolayer",!0),ke._menulayer=ke._toppaper.append("g").classed("menulayer",!0),ke._zoomlayer=ke._toppaper.append("g").classed("zoomlayer",!0),ke._hoverlayer=ke._hoverpaper.append("g").classed("hoverlayer",!0),ke._modebardiv.classed("modebar-container",!0).style("position","absolute").style("top","0px").style("right","0px"),Ee.emit("plotly_framework")}X.animate=vr,X.addFrames=_r,X.deleteFrames=yt,X.addTraces=$,X.deleteTraces=J,X.extendTraces=he,X.moveTraces=Z,X.prependTraces=G,X.newPlot=B,X._doPlot=u,X.purge=Fe,X.react=Ot,X.redraw=F,X.relayout=be,X.restyle=re,X.setPlotConfig=f,X.update=lt,X._guiRelayout=Me(be),X._guiRestyle=Me(re),X._guiUpdate=Me(lt),X._storeDirectGUIEdit=ie}}),Xv=Ye({"src/snapshot/helpers.js"(X){"use strict";var H=Hn();X.getDelay=function(A){return A._has&&(A._has("gl3d")||A._has("mapbox")||A._has("map"))?500:0},X.getRedrawFunc=function(A){return function(){H.getComponentMethod("colorbar","draw")(A)}},X.encodeSVG=function(A){return"data:image/svg+xml,"+encodeURIComponent(A)},X.encodeJSON=function(A){return"data:application/json,"+encodeURIComponent(A)};var g=window.URL||window.webkitURL;X.createObjectURL=function(A){return g.createObjectURL(A)},X.revokeObjectURL=function(A){return g.revokeObjectURL(A)},X.createBlob=function(A,M){if(M==="svg")return new window.Blob([A],{type:"image/svg+xml;charset=utf-8"});if(M==="full-json")return new window.Blob([A],{type:"application/json;charset=utf-8"});var e=x(window.atob(A));return new window.Blob([e],{type:"image/"+M})},X.octetStream=function(A){document.location.href="data:application/octet-stream"+A};function x(A){for(var M=A.length,e=new ArrayBuffer(M),t=new Uint8Array(e),r=0;r<M;r++)t[r]=A.charCodeAt(r);return e}X.IMAGE_URL_PREFIX=/^data:image\/\w+;base64,/}}),k2=Ye({"src/snapshot/tosvg.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=Fn(),e=vd(),t=/"/g,r="TOBESTRIPPED",o=new RegExp('("'+r+")|("+r+'")',"g");function a(n){var s=g.select("body").append("div").style({display:"none"}).html(""),c=n.replace(/(&[^;]*;)/gi,function(h){return h==="&lt;"?"&#60;":h==="&rt;"?"&#62;":h.indexOf("<")!==-1||h.indexOf(">")!==-1?"":s.html(h).text()});return s.remove(),c}function i(n){return n.replace(/&(?!\w+;|\#[0-9]+;| \#x[0-9A-F]+;)/g,"&amp;")}H.exports=function(s,c,h){var v=s._fullLayout,p=v._paper,T=v._toppaper,l=v.width,_=v.height,w;p.insert("rect",":first-child").call(A.setRect,0,0,l,_).call(M.fill,v.paper_bgcolor);var S=v._basePlotModules||[];for(w=0;w<S.length;w++){var E=S[w];E.toSVG&&E.toSVG(s)}if(T){var m=T.node().childNodes,b=Array.prototype.slice.call(m);for(w=0;w<b.length;w++){var d=b[w];d.childNodes.length&&p.node().appendChild(d)}}v._draggers&&v._draggers.remove(),p.node().style.background="",p.selectAll("text").attr({"data-unformatted":null,"data-math":null}).each(function(){var y=g.select(this);if(this.style.visibility==="hidden"||this.style.display==="none"){y.remove();return}else y.style({visibility:null,display:null});var f=this.style.fontFamily;f&&f.indexOf('"')!==-1&&y.style("font-family",f.replace(t,r));var P=this.style.fontWeight;P&&(P==="normal"||P==="400")&&y.style("font-weight",void 0);var L=this.style.fontStyle;L&&L==="normal"&&y.style("font-style",void 0);var z=this.style.fontVariant;z&&z==="normal"&&y.style("font-variant",void 0)}),p.selectAll(".gradient_filled,.pattern_filled").each(function(){var y=g.select(this),f=this.style.fill;f&&f.indexOf("url(")!==-1&&y.style("fill",f.replace(t,r));var P=this.style.stroke;P&&P.indexOf("url(")!==-1&&y.style("stroke",P.replace(t,r))}),(c==="pdf"||c==="eps")&&p.selectAll("#MathJax_SVG_glyphs path").attr("stroke-width",0),c==="svg"&&h&&(p.attr("width",h*l),p.attr("height",h*_),p.attr("viewBox","0 0 "+l+" "+_));var u=new window.XMLSerializer().serializeToString(p.node());return u=a(u),u=i(u),u=u.replace(o,"'"),u}}}),C2=Ye({"src/snapshot/svgtoimg.js"(X,H){"use strict";var g=ta(),x=Wg().EventEmitter,A=Xv();function M(e){var t=e.emitter||new x,r=new Promise(function(o,a){var i=window.Image,n=e.svg,s=e.format||"png",c=e.canvas,h=e.scale||1,v=e.width||300,p=e.height||150,T=h*v,l=h*p,_=c.getContext("2d",{willReadFrequently:!0}),w=new i,S,E;s==="svg"||g.isSafari()?E=A.encodeSVG(n):(S=A.createBlob(n,"svg"),E=A.createObjectURL(S)),c.width=T,c.height=l,w.onload=function(){var m;switch(S=null,A.revokeObjectURL(E),s!=="svg"&&_.drawImage(w,0,0,T,l),s){case"jpeg":m=c.toDataURL("image/jpeg");break;case"png":m=c.toDataURL("image/png");break;case"webp":m=c.toDataURL("image/webp");break;case"svg":m=E;break;default:var b="Image format is not jpeg, png, svg or webp.";if(a(new Error(b)),!e.promise)return t.emit("error",b)}o(m),e.promise||t.emit("success",m)},w.onerror=function(m){if(S=null,A.revokeObjectURL(E),a(m),!e.promise)return t.emit("error",m)},w.src=E});return e.promise?r:t}H.exports=M}}),PS=Ye({"src/plot_api/to_image.js"(X,H){"use strict";var g=jo(),x=E2(),A=Gu(),M=ta(),e=Xv(),t=k2(),r=C2(),o=xh().version,a={format:{valType:"enumerated",values:["png","jpeg","webp","svg","full-json"],dflt:"png"},width:{valType:"number",min:1},height:{valType:"number",min:1},scale:{valType:"number",min:0,dflt:1},setBackground:{valType:"any",dflt:!1},imageDataOnly:{valType:"boolean",dflt:!1}};function i(n,s){s=s||{};var c,h,v,p;M.isPlainObject(n)?(c=n.data||[],h=n.layout||{},v=n.config||{},p={}):(n=M.getGraphDiv(n),c=M.extendDeep([],n.data),h=M.extendDeep({},n.layout),v=n._context,p=n._fullLayout||{});function T(B){return!(B in s)||M.validate(s[B],a[B])}if(!T("width")&&s.width!==null||!T("height")&&s.height!==null)throw new Error("Height and width should be pixel values.");if(!T("format"))throw new Error("Export format is not "+M.join2(a.format.values,", "," or ")+".");var l={};function _(B,O){return M.coerce(s,l,a,B,O)}var w=_("format"),S=_("width"),E=_("height"),m=_("scale"),b=_("setBackground"),d=_("imageDataOnly"),u=document.createElement("div");u.style.position="absolute",u.style.left="-5000px",document.body.appendChild(u);var y=M.extendFlat({},h);S?y.width=S:s.width===null&&g(p.width)&&(y.width=p.width),E?y.height=E:s.height===null&&g(p.height)&&(y.height=p.height);var f=M.extendFlat({},v,{_exportedPlot:!0,staticPlot:!0,setBackground:b}),P=e.getRedrawFunc(u);function L(){return new Promise(function(B){setTimeout(B,e.getDelay(u._fullLayout))})}function z(){return new Promise(function(B,O){var I=t(u,w,m),N=u._fullLayout.width,U=u._fullLayout.height;function W(){x.purge(u),document.body.removeChild(u)}if(w==="full-json"){var Q=A.graphJson(u,!1,"keepdata","object",!0,!0);return Q.version=o,Q=JSON.stringify(Q),W(),B(d?Q:e.encodeJSON(Q))}if(W(),w==="svg")return B(d?I:e.encodeSVG(I));var ue=document.createElement("canvas");ue.id=M.randstr(),r({format:w,width:N,height:U,scale:m,canvas:ue,svg:I,promise:!0}).then(B).catch(O)})}function F(B){return d?B.replace(e.IMAGE_URL_PREFIX,""):B}return new Promise(function(B,O){x.newPlot(u,c,y,f).then(P).then(L).then(z).then(function(I){B(F(I))}).catch(function(I){O(I)})})}H.exports=i}}),FO=Ye({"src/plot_api/validate.js"(X,H){"use strict";var g=ta(),x=Gu(),A=Qy(),M=Gg().dfltConfig,e=g.isPlainObject,t=Array.isArray,r=g.isArrayOrTypedArray;H.exports=function(_,w){_===void 0&&(_=[]),w===void 0&&(w={});var S=A.get(),E=[],m={_context:g.extendFlat({},M)},b,d;t(_)?(m.data=g.extendDeep([],_),b=_):(m.data=[],b=[],E.push(s("array","data"))),e(w)?(m.layout=g.extendDeep({},w),d=w):(m.layout={},d={},arguments.length>1&&E.push(s("object","layout"))),x.supplyDefaults(m);for(var u=m._fullData,y=b.length,f=0;f<y;f++){var P=b[f],L=["data",f];if(!e(P)){E.push(s("object",L));continue}var z=u[f],F=z.type,B=S.traces[F].attributes;B.type={valType:"enumerated",values:[F]},z.visible===!1&&P.visible!==!1&&E.push(s("invisible",L)),o(P,z,B,E,L)}var O=m._fullLayout,I=a(S,u);return o(d,O,I,E,"layout"),E.length===0?void 0:E};function o(l,_,w,S,E,m){m=m||[];for(var b=Object.keys(l),d=0;d<b.length;d++){var u=b[d],y=m.slice();y.push(u);var f=l[u],P=_[u],L=h(w,u),z=(L||{}).valType,F=z==="info_array",B=z==="colorscale",O=(L||{}).items;if(!c(w,u))S.push(s("schema",E,y));else if(e(f)&&e(P)&&z!=="any")o(f,P,L,S,E,y);else if(F&&t(f)){f.length>P.length&&S.push(s("unused",E,y.concat(P.length)));var I=P.length,N=Array.isArray(O);N&&(I=Math.min(I,O.length));var U,W,Q,ue,se;if(L.dimensions===2)for(W=0;W<I;W++)if(t(f[W])){f[W].length>P[W].length&&S.push(s("unused",E,y.concat(W,P[W].length)));var he=P[W].length;for(U=0;U<(N?Math.min(he,O[W].length):he);U++)Q=N?O[W][U]:O,ue=f[W][U],se=P[W][U],g.validate(ue,Q)?se!==ue&&se!==+ue&&S.push(s("dynamic",E,y.concat(W,U),ue,se)):S.push(s("value",E,y.concat(W,U),ue))}else S.push(s("array",E,y.concat(W),f[W]));else for(W=0;W<I;W++)Q=N?O[W]:O,ue=f[W],se=P[W],g.validate(ue,Q)?se!==ue&&se!==+ue&&S.push(s("dynamic",E,y.concat(W),ue,se)):S.push(s("value",E,y.concat(W),ue))}else if(L.items&&!F&&t(f)){var G=O[Object.keys(O)[0]],$=[],J,Z;for(J=0;J<P.length;J++){var re=P[J]._index||J;if(Z=y.slice(),Z.push(re),e(f[re])&&e(P[J])){$.push(re);var ne=f[re],j=P[J];e(ne)&&ne.visible!==!1&&j.visible===!1?S.push(s("invisible",E,Z)):o(ne,j,G,S,E,Z)}}for(J=0;J<f.length;J++)Z=y.slice(),Z.push(J),e(f[J])?$.indexOf(J)===-1&&S.push(s("unused",E,Z)):S.push(s("object",E,Z,f[J]))}else!e(f)&&e(P)?S.push(s("object",E,y,f)):!r(f)&&r(P)&&!F&&!B?S.push(s("array",E,y,f)):u in _?g.validate(f,L)?L.valType==="enumerated"&&(L.coerceNumber&&f!==+P||f!==P)&&S.push(s("dynamic",E,y,f,P)):S.push(s("value",E,y,f)):S.push(s("unused",E,y,f))}return S}function a(l,_){for(var w=l.layout.layoutAttributes,S=0;S<_.length;S++){var E=_[S],m=l.traces[E.type],b=m.layoutAttributes;b&&(E.subplot?g.extendFlat(w[m.attributes.subplot.dflt],b):g.extendFlat(w,b))}return w}var i={object:function(l,_){var w;return l==="layout"&&_===""?w="The layout argument":l[0]==="data"&&_===""?w="Trace "+l[1]+" in the data argument":w=n(l)+"key "+_,w+" must be linked to an object container"},array:function(l,_){var w;return l==="data"?w="The data argument":w=n(l)+"key "+_,w+" must be linked to an array container"},schema:function(l,_){return n(l)+"key "+_+" is not part of the schema"},unused:function(l,_,w){var S=e(w)?"container":"key";return n(l)+S+" "+_+" did not get coerced"},dynamic:function(l,_,w,S){return[n(l)+"key",_,"(set to '"+w+"')","got reset to","'"+S+"'","during defaults."].join(" ")},invisible:function(l,_){return(_?n(l)+"item "+_:"Trace "+l[1])+" got defaulted to be not visible"},value:function(l,_,w){return[n(l)+"key "+_,"is set to an invalid value ("+w+")"].join(" ")}};function n(l){return t(l)?"In data trace "+l[1]+", ":"In "+l+", "}function s(l,_,w,S,E){w=w||"";var m,b;t(_)?(m=_[0],b=_[1]):(m=_,b=null);var d=T(w),u=i[l](_,d,S,E);return g.log(u),{code:l,container:m,trace:b,path:w,astr:d,msg:u}}function c(l,_){var w=p(_),S=w.keyMinusId,E=w.id;return S in l&&l[S]._isSubplotObj&&E?!0:_ in l}function h(l,_){if(_ in l)return l[_];var w=p(_);return l[w.keyMinusId]}var v=g.counterRegex("([a-z]+)");function p(l){var _=l.match(v);return{keyMinusId:_&&_[1],id:_&&_[2]}}function T(l){if(!t(l))return String(l);for(var _="",w=0;w<l.length;w++){var S=l[w];typeof S=="number"?_=_.substr(0,_.length-1)+"["+S+"]":_+=S,w<l.length-1&&(_+=".")}return _}}}),OO=Ye({"src/snapshot/filesaver.js"(X,H){"use strict";var g=ta(),x=Xv();function A(M,e,t){var r=document.createElement("a"),o="download"in r,a=new Promise(function(i,n){var s,c;if(o)return s=x.createBlob(M,t),c=x.createObjectURL(s),r.href=c,r.download=e,document.body.appendChild(r),r.click(),document.body.removeChild(r),x.revokeObjectURL(c),s=null,i(e);if(g.isSafari()){var h=t==="svg"?",":";base64,";return x.octetStream(h+encodeURIComponent(M)),i(e)}n(new Error("download error"))});return a}H.exports=A}}),IS=Ye({"src/snapshot/download.js"(X,H){"use strict";var g=ta(),x=PS(),A=OO(),M=Xv();function e(t,r){var o;return g.isPlainObject(t)||(o=g.getGraphDiv(t)),r=r||{},r.format=r.format||"png",r.width=r.width||null,r.height=r.height||null,r.imageDataOnly=!0,new Promise(function(a,i){o&&o._snapshotInProgress&&i(new Error("Snapshotting already in progress.")),o&&(o._snapshotInProgress=!0);var n=x(t,r),s=r.filename||t.fn||"newplot";s+="."+r.format.replace("-","."),n.then(function(c){return o&&(o._snapshotInProgress=!1),A(c,s,r.format)}).then(function(c){a(c)}).catch(function(c){o&&(o._snapshotInProgress=!1),i(c)})})}H.exports=e}}),BO=Ye({"src/plot_api/template_api.js"(X){"use strict";var H=ta(),g=H.isPlainObject,x=Qy(),A=Gu(),M=Pl(),e=cl(),t=Gg().dfltConfig;X.makeTemplate=function(v){v=H.isPlainObject(v)?v:H.getGraphDiv(v),v=H.extendDeep({_context:t},{data:v.data,layout:v.layout}),A.supplyDefaults(v);var p=v.data||[],T=v.layout||{};T._basePlotModules=v._fullLayout._basePlotModules,T._modules=v._fullLayout._modules;var l={data:{},layout:{}};p.forEach(function(f){var P={};a(f,P,n.bind(null,f));var L=H.coerce(f,{},M,"type"),z=l.data[L];z||(z=l.data[L]=[]),z.push(P)}),a(T,l.layout,i.bind(null,T)),delete l.layout.template;var _=T.template;if(g(_)){var w=_.layout,S,E,m,b,d,u;g(w)&&r(w,l.layout);var y=_.data;if(g(y)){for(E in l.data)if(m=y[E],Array.isArray(m)){for(d=l.data[E],u=d.length,b=m.length,S=0;S<u;S++)r(m[S%b],d[S]);for(S=u;S<b;S++)d.push(H.extendDeep({},m[S]))}for(E in y)E in l.data||(l.data[E]=H.extendDeep([],y[E]))}}return l};function r(v,p){v=H.extendDeep({},v);var T=Object.keys(v).sort(),l,_;function w(d,u,y){if(g(u)&&g(d))r(d,u);else if(Array.isArray(u)&&Array.isArray(d)){var f=e.arrayTemplater({_template:v},y);for(_=0;_<u.length;_++){var P=u[_],L=f.newItem(P)._template;L&&r(L,P)}var z=f.defaultItems();for(_=0;_<z.length;_++)u.push(z[_]._template);for(_=0;_<u.length;_++)delete u[_].templateitemname}}for(l=0;l<T.length;l++){var S=T[l],E=v[S];if(S in p?w(E,p[S],S):p[S]=E,o(S)===S)for(var m in p){var b=o(m);m!==b&&b===S&&!(m in v)&&w(E,p[m],S)}}}function o(v){return v.replace(/[0-9]+$/,"")}function a(v,p,T,l,_){var w=_&&T(_);for(var S in v){var E=v[S],m=s(v,S,l),b=s(v,S,_),d=T(b);if(!d){var u=o(S);u!==S&&(b=s(v,u,_),d=T(b))}if(!(w&&w===d)&&!(!d||d._noTemplating||d.valType==="data_array"||d.arrayOk&&Array.isArray(E)))if(!d.valType&&g(E))a(E,p,T,m,b);else if(d._isLinkedToArray&&Array.isArray(E))for(var y=!1,f=0,P={},L=0;L<E.length;L++){var z=E[L];if(g(z)){var F=z.name;if(F)P[F]||(a(z,p,T,s(E,f,m),s(E,f,b)),f++,P[F]=1);else if(!y){var B=e.arrayDefaultKey(S),O=s(v,B,l),I=s(E,f,m);a(z,p,T,I,s(E,f,b));var N=H.nestedProperty(p,I),U=H.nestedProperty(p,O);U.set(N.get()),N.set(null),y=!0}}}else{var W=H.nestedProperty(p,m);W.set(E)}}}function i(v,p){return x.getLayoutValObject(v,H.nestedProperty({},p).parts)}function n(v,p){return x.getTraceValObject(v,H.nestedProperty({},p).parts)}function s(v,p,T){var l;return T?Array.isArray(v)?l=T+"["+p+"]":l=T+"."+p:l=p,l}X.validateTemplate=function(v,p){var T=H.extendDeep({},{_context:t,data:v.data,layout:v.layout}),l=T.layout||{};g(p)||(p=l.template||{});var _=p.layout,w=p.data,S=[];T.layout=l,T.layout.template=p,A.supplyDefaults(T);var E=T._fullLayout,m=T._fullData,b={};function d(O,I){for(var N in O)if(N.charAt(0)!=="_"&&g(O[N])){var U=o(N),W=[],Q;for(Q=0;Q<I.length;Q++)W.push(s(O,N,I[Q])),U!==N&&W.push(s(O,U,I[Q]));for(Q=0;Q<W.length;Q++)b[W[Q]]=1;d(O[N],W)}}function u(O,I){for(var N in O)if(N.indexOf("defaults")===-1&&g(O[N])){var U=s(O,N,I);b[U]?u(O[N],U):S.push({code:"unused",path:U})}}if(g(_)?(d(E,["layout"]),u(_,"layout")):S.push({code:"layout"}),!g(w))S.push({code:"data"});else{for(var y={},f,P=0;P<m.length;P++){var L=m[P];f=L.type,y[f]=(y[f]||0)+1,L._fullInput._template||S.push({code:"missing",index:L.index,traceType:f})}for(f in w){var z=w[f].length,F=y[f]||0;z>F?S.push({code:"unused",traceType:f,templateCount:z,dataCount:F}):F>z&&S.push({code:"reused",traceType:f,templateCount:z,dataCount:F})}}function B(O,I){for(var N in O)if(N.charAt(0)!=="_"){var U=O[N],W=s(O,N,I);g(U)?(Array.isArray(O)&&U._template===!1&&U.templateitemname&&S.push({code:"missing",path:W,templateitemname:U.templateitemname}),B(U,W)):Array.isArray(U)&&c(U)&&B(U,W)}}if(B({data:m,layout:E},""),S.length)return S.map(h)};function c(v){for(var p=0;p<v.length;p++)if(g(v[p]))return!0}function h(v){var p;switch(v.code){case"data":p="The template has no key data.";break;case"layout":p="The template has no key layout.";break;case"missing":v.path?p="There are no templates for item "+v.path+" with name "+v.templateitemname:p="There are no templates for trace "+v.index+", of type "+v.traceType+".";break;case"unused":v.path?p="The template item at "+v.path+" was not used in constructing the plot.":v.dataCount?p="Some of the templates of type "+v.traceType+" were not used. The template has "+v.templateCount+" traces, the data only has "+v.dataCount+" of this type.":p="The template has "+v.templateCount+" traces of type "+v.traceType+" but there are none in the data.";break;case"reused":p="Some of the templates of type "+v.traceType+" were used more than once. The template has "+v.templateCount+" traces, the data has "+v.dataCount+" of this type.";break}return v.msg=p,v}}}),NO=Ye({"src/plot_api/index.js"(X){"use strict";var H=E2();X._doPlot=H._doPlot,X.newPlot=H.newPlot,X.restyle=H.restyle,X.relayout=H.relayout,X.redraw=H.redraw,X.update=H.update,X._guiRestyle=H._guiRestyle,X._guiRelayout=H._guiRelayout,X._guiUpdate=H._guiUpdate,X._storeDirectGUIEdit=H._storeDirectGUIEdit,X.react=H.react,X.extendTraces=H.extendTraces,X.prependTraces=H.prependTraces,X.addTraces=H.addTraces,X.deleteTraces=H.deleteTraces,X.moveTraces=H.moveTraces,X.purge=H.purge,X.addFrames=H.addFrames,X.deleteFrames=H.deleteFrames,X.animate=H.animate,X.setPlotConfig=H.setPlotConfig;var g=b_().getGraphDiv,x=M2().eraseActiveShape;X.deleteActiveShape=function(M){return x(g(M))},X.toImage=PS(),X.validate=FO(),X.downloadImage=IS();var A=BO();X.makeTemplate=A.makeTemplate,X.validateTemplate=A.validateTemplate}}),i1=Ye({"src/traces/scatter/xy_defaults.js"(X,H){"use strict";var g=ta(),x=Hn();H.exports=function(M,e,t,r){var o=r("x"),a=r("y"),i,n=x.getComponentMethod("calendars","handleTraceDefaults");if(n(M,e,["x","y"],t),o){var s=g.minRowLength(o);a?i=Math.min(s,g.minRowLength(a)):(i=s,r("y0"),r("dy"))}else{if(!a)return 0;i=g.minRowLength(a),r("x0"),r("dx")}return e._length=i,i}}}),Qd=Ye({"src/traces/scatter/period_defaults.js"(X,H){"use strict";var g=ta().dateTick0,x=ks(),A=x.ONEWEEK;function M(e,t){return e%A===0?g(t,1):g(t,0)}H.exports=function(t,r,o,a,i){if(i||(i={x:!0,y:!0}),i.x){var n=a("xperiod");n&&(a("xperiod0",M(n,r.xcalendar)),a("xperiodalignment"))}if(i.y){var s=a("yperiod");s&&(a("yperiod0",M(s,r.ycalendar)),a("yperiodalignment"))}}}}),UO=Ye({"src/traces/scatter/stack_defaults.js"(X,H){"use strict";var g=["orientation","groupnorm","stackgaps"];H.exports=function(A,M,e,t){var r=e._scatterStackOpts,o=t("stackgroup");if(o){var a=M.xaxis+M.yaxis,i=r[a];i||(i=r[a]={});var n=i[o],s=!1;n?n.traces.push(M):(n=i[o]={traceIndices:[],traces:[M]},s=!0);for(var c={orientation:M.x&&!M.y?"h":"v"},h=0;h<g.length;h++){var v=g[h],p=v+"Found";if(!n[p]){var T=A[v]!==void 0,l=v==="orientation";if((T||s)&&(n[v]=t(v,c[v]),l&&(n.fillDflt=n[v]==="h"?"tonextx":"tonexty"),T&&(n[p]=!0,!s&&(delete n.traces[0][v],l))))for(var _=0;_<n.traces.length-1;_++){var w=n.traces[_];w._input.fill!==w.fill&&(w.fill=n.fillDflt)}}}return n}}}}),md=Ye({"src/traces/scatter/marker_defaults.js"(X,H){"use strict";var g=Fn(),x=Up().hasColorscale,A=sh(),M=uu();H.exports=function(t,r,o,a,i,n){var s=M.isBubble(t),c=(t.line||{}).color,h;if(n=n||{},c&&(o=c),i("marker.symbol"),i("marker.opacity",s?.7:1),i("marker.size"),n.noAngle||(i("marker.angle"),n.noAngleRef||i("marker.angleref"),n.noStandOff||i("marker.standoff")),i("marker.color",o),x(t,"marker")&&A(t,r,a,i,{prefix:"marker.",cLetter:"c"}),n.noSelect||(i("selected.marker.color"),i("unselected.marker.color"),i("selected.marker.size"),i("unselected.marker.size")),n.noLine||(c&&!Array.isArray(c)&&r.marker.color!==c?h=c:s?h=g.background:h=g.defaultLine,i("marker.line.color",h),x(t,"marker.line")&&A(t,r,a,i,{prefix:"marker.line.",cLetter:"c"}),i("marker.line.width",s?1:0)),s&&(i("marker.sizeref"),i("marker.sizemin"),i("marker.sizemode")),n.gradient){var v=i("marker.gradient.type");v!=="none"&&i("marker.gradient.color")}}}}),Dd=Ye({"src/traces/scatter/line_defaults.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray,x=Up().hasColorscale,A=sh();H.exports=function(e,t,r,o,a,i){i||(i={});var n=(e.marker||{}).color;if(n&&n._inputArray&&(n=n._inputArray),a("line.color",r),x(e,"line"))A(e,t,o,a,{prefix:"line.",cLetter:"c"});else{var s=(g(n)?!1:n)||r;a("line.color",s)}a("line.width"),i.noDash||a("line.dash"),i.backoff&&a("line.backoff")}}}),n1=Ye({"src/traces/scatter/line_shape_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e=M("line.shape");e==="spline"&&M("line.smoothing")}}}),zd=Ye({"src/traces/scatter/text_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(x,A,M,e,t){t=t||{},e("textposition"),g.coerceFont(e,"textfont",t.font||M.font,t),t.noSelect||(e("selected.textfont.color"),e("unselected.textfont.color"))}}}),ev=Ye({"src/traces/scatter/fillcolor_defaults.js"(X,H){"use strict";var g=Fn(),x=ta().isArrayOrTypedArray;function A(M){for(var e=g.interpolate(M[0][1],M[1][1],.5),t=2;t<M.length;t++){var r=g.interpolate(M[t-1][1],M[t][1],.5);e=g.interpolate(e,r,M[t-1][0]/M[t][0])}return e}H.exports=function(e,t,r,o,a){a||(a={});var i=!1;if(t.marker){var n=t.marker.color,s=(t.marker.line||{}).color;n&&!x(n)?i=n:s&&!x(s)&&(i=s)}var c;if(a.moduleHasFillgradient){var h=o("fillgradient.type");if(h!=="none"){o("fillgradient.start"),o("fillgradient.stop");var v=o("fillgradient.colorscale");v&&(c=A(v))}}o("fillcolor",g.addOpacity((t.line||{}).color||i||c||r,.5))}}}),jO=Ye({"src/traces/scatter/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=Pc(),M=Tv(),e=uu(),t=i1(),r=Qd(),o=UO(),a=md(),i=Dd(),n=n1(),s=zd(),c=ev(),h=ta().coercePattern;H.exports=function(p,T,l,_){function w(f,P){return g.coerce(p,T,A,f,P)}var S=t(p,T,_,w);if(S||(T.visible=!1),!!T.visible){r(p,T,_,w),w("xhoverformat"),w("yhoverformat"),w("zorder");var E=o(p,T,_,w);_.scattermode==="group"&&T.orientation===void 0&&w("orientation","v");var m=!E&&S<M.PTS_LINESONLY?"lines+markers":"lines";w("text"),w("hovertext"),w("mode",m),e.hasMarkers(T)&&a(p,T,l,_,w,{gradient:!0}),e.hasLines(T)&&(i(p,T,l,_,w,{backoff:!0}),n(p,T,w),w("connectgaps"),w("line.simplify")),e.hasText(T)&&(w("texttemplate"),s(p,T,_,w));var b=[];(e.hasMarkers(T)||e.hasText(T))&&(w("cliponaxis"),w("marker.maxdisplayed"),b.push("points")),w("fill",E?E.fillDflt:"none"),T.fill!=="none"&&(c(p,T,l,w,{moduleHasFillgradient:!0}),e.hasLines(T)||n(p,T,w),h(w,"fillpattern",T.fillcolor,!1));var d=(T.line||{}).color,u=(T.marker||{}).color;(T.fill==="tonext"||T.fill==="toself")&&b.push("fills"),w("hoveron",b.join("+")||"points"),T.hoveron!=="fills"&&w("hovertemplate");var y=x.getComponentMethod("errorbars","supplyDefaults");y(p,T,d||u||l,{axis:"y"}),y(p,T,d||u||l,{axis:"x",inherit:"y"}),g.coerceSelectionMarkerOpacity(T,w)}}}}),Jg=Ye({"src/traces/scatter/grouping_defaults.js"(X,H){"use strict";var g=Yg().getAxisGroup;H.exports=function(A,M,e,t,r){var o=M.orientation,a=M[{v:"x",h:"y"}[o]+"axis"],i=g(e,a)+o,n=e._alignmentOpts||{},s=t("alignmentgroup"),c=n[i];c||(c=n[i]={});var h=c[s];h?h.traces.push(M):h=c[s]={traces:[M],alignmentIndex:Object.keys(c).length,offsetGroups:{}};var v=t("offsetgroup")||"",p=h.offsetGroups,T=p[v];M._offsetIndex=0,(r!=="group"||v)&&(T||(T=p[v]={offsetIndex:Object.keys(p).length}),M._offsetIndex=T.offsetIndex)}}}),RS=Ye({"src/traces/scatter/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=Pc();H.exports=function(e,t){var r,o,a,i=t.scattermode;function n(p){return g.coerce(o._input,o,A,p)}if(t.scattermode==="group")for(a=0;a<e.length;a++)o=e[a],o.type==="scatter"&&(r=o._input,x(r,o,t,n,i));for(a=0;a<e.length;a++){var s=e[a];if(s.type==="scatter"){var c=s.fill;if(!(c==="none"||c==="toself")&&(s.opacity=void 0,c==="tonexty"||c==="tonextx"))for(var h=a-1;h>=0;h--){var v=e[h];if(v.type==="scatter"&&v.xaxis===s.xaxis&&v.yaxis===s.yaxis){v.opacity=void 0;break}}}}}}}),VO=Ye({"src/traces/scatter/layout_defaults.js"(X,H){"use strict";var g=ta(),x=g2();H.exports=function(A,M){function e(r,o){return g.coerce(A,M,x,r,o)}var t=M.barmode==="group";M.scattermode==="group"&&e("scattergap",t?M.bargap:.2)}}}),tv=Ye({"src/plots/cartesian/align_period.js"(X,H){"use strict";var g=jo(),x=ta(),A=x.dateTime2ms,M=x.incrementMonth,e=ks(),t=e.ONEAVGMONTH;H.exports=function(o,a,i,n){if(a.type!=="date")return{vals:n};var s=o[i+"periodalignment"];if(!s)return{vals:n};var c=o[i+"period"],h;if(g(c)){if(c=+c,c<=0)return{vals:n}}else if(typeof c=="string"&&c.charAt(0)==="M"){var v=+c.substring(1);if(v>0&&Math.round(v)===v)h=v;else return{vals:n}}for(var p=a.calendar,T=s==="start",l=s==="end",_=o[i+"period0"],w=A(_,p)||0,S=[],E=[],m=[],b=n.length,d=0;d<b;d++){var u=n[d],y,f,P;if(h){for(y=Math.round((u-w)/(h*t)),P=M(w,h*y,p);P>u;)P=M(P,-h,p);for(;P<=u;)P=M(P,h,p);f=M(P,-h,p)}else{for(y=Math.round((u-w)/c),P=w+y*c;P>u;)P-=c;for(;P<=u;)P+=c;f=P-c}S[d]=T?f:l?P:(f+P)/2,E[d]=f,m[d]=P}return{vals:S,starts:E,ends:m}}}}),Fd=Ye({"src/traces/scatter/colorscale_calc.js"(X,H){"use strict";var g=Up().hasColorscale,x=jp(),A=uu();H.exports=function(e,t){A.hasLines(t)&&g(t,"line")&&x(e,t,{vals:t.line.color,containerStr:"line",cLetter:"c"}),A.hasMarkers(t)&&(g(t,"marker")&&x(e,t,{vals:t.marker.color,containerStr:"marker",cLetter:"c"}),g(t,"marker.line")&&x(e,t,{vals:t.marker.line.color,containerStr:"marker.line",cLetter:"c"}))}}}),Av=Ye({"src/traces/scatter/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.texttemplate,A,"txt"),g.mergeArray(M.hovertext,A,"htx"),g.mergeArray(M.customdata,A,"data"),g.mergeArray(M.textposition,A,"tp"),M.textfont&&(g.mergeArrayCastPositive(M.textfont.size,A,"ts"),g.mergeArray(M.textfont.color,A,"tc"),g.mergeArray(M.textfont.family,A,"tf"),g.mergeArray(M.textfont.weight,A,"tw"),g.mergeArray(M.textfont.style,A,"ty"),g.mergeArray(M.textfont.variant,A,"tv"),g.mergeArray(M.textfont.textcase,A,"tC"),g.mergeArray(M.textfont.lineposition,A,"tE"),g.mergeArray(M.textfont.shadow,A,"tS"));var t=M.marker;if(t){g.mergeArrayCastPositive(t.size,A,"ms"),g.mergeArrayCastPositive(t.opacity,A,"mo"),g.mergeArray(t.symbol,A,"mx"),g.mergeArray(t.angle,A,"ma"),g.mergeArray(t.standoff,A,"mf"),g.mergeArray(t.color,A,"mc");var r=t.line;t.line&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"));var o=t.gradient;o&&o.type!=="none"&&(g.mergeArray(o.type,A,"mgt"),g.mergeArray(o.color,A,"mgc"))}}}}),Od=Ye({"src/traces/scatter/calc_selection.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){g.isArrayOrTypedArray(M.selectedpoints)&&g.tagSelected(A,M)}}}),Bd=Ye({"src/traces/scatter/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Co(),M=tv(),e=ks().BADNUM,t=uu(),r=Fd(),o=Av(),a=Od();function i(p,T){var l=p._fullLayout,_=T._xA=A.getFromId(p,T.xaxis||"x","x"),w=T._yA=A.getFromId(p,T.yaxis||"y","y"),S=_.makeCalcdata(T,"x"),E=w.makeCalcdata(T,"y"),m=M(T,_,"x",S),b=M(T,w,"y",E),d=m.vals,u=b.vals,y=T._length,f=new Array(y),P=T.ids,L=v(T,l,_,w),z=!1,F,B,O,I,N,U;c(l,T);var W="x",Q="y",ue;if(L)x.pushUnique(L.traceIndices,T.index),F=L.orientation==="v",F?(Q="s",ue="x"):(W="s",ue="y"),N=L.stackgaps==="interpolate";else{var se=s(T,y);n(p,T,_,w,d,u,se)}var he=!!T.xperiodalignment,G=!!T.yperiodalignment;for(B=0;B<y;B++){var $=f[B]={},J=g(d[B]),Z=g(u[B]);J&&Z?($[W]=d[B],$[Q]=u[B],he&&($.orig_x=S[B],$.xEnd=m.ends[B],$.xStart=m.starts[B]),G&&($.orig_y=E[B],$.yEnd=b.ends[B],$.yStart=b.starts[B])):L&&(F?J:Z)?($[ue]=F?d[B]:u[B],$.gap=!0,N?($.s=e,z=!0):$.s=0):$[W]=$[Q]=e,P&&($.id=String(P[B]))}if(o(f,T),r(p,T),a(f,T),L){for(B=0;B<f.length;)f[B][ue]===e?f.splice(B,1):B++;if(x.sort(f,function(ee,ie){return ee[ue]-ie[ue]||ee.i-ie.i}),z){for(B=0;B<f.length-1&&f[B].gap;)B++;for(U=f[B].s,U||(U=f[B].s=0),O=0;O<B;O++)f[O].s=U;for(I=f.length-1;I>B&&f[I].gap;)I--;for(U=f[I].s,O=f.length-1;O>I;O--)f[O].s=U;for(;B<I;)if(B++,f[B].gap){for(O=B+1;f[O].gap;)O++;for(var re=f[B-1][ue],ne=f[B-1].s,j=(f[O].s-ne)/(f[O][ue]-re);B<O;)f[B].s=ne+(f[B][ue]-re)*j,B++}}}return f}function n(p,T,l,_,w,S,E){var m=T._length,b=p._fullLayout,d=l._id,u=_._id,y=b._firstScatter[h(T)]===T.uid,f=(v(T,b,l,_)||{}).orientation,P=T.fill;l._minDtick=0,_._minDtick=0;var L={padded:!0},z={padded:!0};E&&(L.ppad=z.ppad=E);var F=m<2||w[0]!==w[m-1]||S[0]!==S[m-1];F&&(P==="tozerox"||P==="tonextx"&&(y||f==="h"))?L.tozero=!0:!(T.error_y||{}).visible&&(P==="tonexty"||P==="tozeroy"||!t.hasMarkers(T)&&!t.hasText(T))&&(L.padded=!1,L.ppad=0),F&&(P==="tozeroy"||P==="tonexty"&&(y||f==="v"))?z.tozero=!0:(P==="tonextx"||P==="tozerox")&&(z.padded=!1),d&&(T._extremes[d]=A.findExtremes(l,w,L)),u&&(T._extremes[u]=A.findExtremes(_,S,z))}function s(p,T){if(t.hasMarkers(p)){var l=p.marker,_=1.6*(p.marker.sizeref||1),w;if(p.marker.sizemode==="area"?w=function(d){return Math.max(Math.sqrt((d||0)/_),3)}:w=function(d){return Math.max((d||0)/_,3)},x.isArrayOrTypedArray(l.size)){var S={type:"linear"};A.setConvert(S);for(var E=S.makeCalcdata(p.marker,"size"),m=new Array(T),b=0;b<T;b++)m[b]=w(E[b]);return m}else return w(l.size)}}function c(p,T){var l=h(T),_=p._firstScatter;_[l]||(_[l]=T.uid)}function h(p){var T=p.stackgroup;return p.xaxis+p.yaxis+p.type+(T?"-"+T:"")}function v(p,T,l,_){var w=p.stackgroup;if(w){var S=T._scatterStackOpts[l._id+_._id][w],E=S.orientation==="v"?_:l;if(E.type==="linear"||E.type==="log")return S}}H.exports={calc:i,calcMarkerSize:s,calcAxisExpansion:n,setFirstScatter:c,getStackOpts:v}}}),qO=Ye({"src/traces/bar/sieve.js"(X,H){"use strict";H.exports=x;var g=ta().distinctVals;function x(A,M){this.traces=A,this.sepNegVal=M.sepNegVal,this.overlapNoMerge=M.overlapNoMerge;for(var e=1/0,t=M.posAxis._id.charAt(0),r=[],o=0;o<A.length;o++){for(var a=A[o],i=0;i<a.length;i++){var n=a[i],s=n.p;s===void 0&&(s=n[t]),s!==void 0&&r.push(s)}a[0]&&a[0].width1&&(e=Math.min(a[0].width1,e))}this.positions=r;var c=g(r);this.distinctPositions=c.vals,c.vals.length===1&&e!==1/0?this.minDiff=e:this.minDiff=Math.min(c.minDiff,e);var h=(M.posAxis||{}).type;(h==="category"||h==="multicategory")&&(this.minDiff=1),this.binWidth=this.minDiff,this.bins={}}x.prototype.put=function(M,e,t){var r=this.getLabel(M,e,t),o=this.bins[r]||0;return this.bins[r]=o+t,o},x.prototype.get=function(M,e,t){var r=this.getLabel(M,e,t);return this.bins[r]||0},x.prototype.getLabel=function(M,e,t){var r=t<0&&this.sepNegVal?"v":"^",o=this.overlapNoMerge?M:Math.round(M/this.binWidth);return r+o+"g"+e}}}),$g=Ye({"src/traces/bar/cross_trace_calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=Hn(),e=Co(),t=Yg().getAxisGroup,r=qO();function o(f,P){for(var L=P.xaxis,z=P.yaxis,F=f._fullLayout,B=f._fullData,O=f.calcdata,I=[],N=[],U=0;U<B.length;U++){var W=B[U];if(W.visible===!0&&M.traceIs(W,"bar")&&W.xaxis===L._id&&W.yaxis===z._id&&(W.orientation==="h"?I.push(O[U]):N.push(O[U]),W._computePh))for(var Q=f.calcdata[U],ue=0;ue<Q.length;ue++)typeof Q[ue].ph0=="function"&&(Q[ue].ph0=Q[ue].ph0()),typeof Q[ue].ph1=="function"&&(Q[ue].ph1=Q[ue].ph1())}var se={xCat:L.type==="category"||L.type==="multicategory",yCat:z.type==="category"||z.type==="multicategory",mode:F.barmode,norm:F.barnorm,gap:F.bargap,groupgap:F.bargroupgap};a(f,L,z,N,se),a(f,z,L,I,se)}function a(f,P,L,z,F){if(z.length){var B,O,I,N,U;switch(s(L,z),F.mode){case"overlay":c(f,P,L,z,F);break;case"group":for(B=[],O=[],I=0;I<z.length;I++)N=z[I],U=N[0].trace,U.offset===void 0?O.push(N):B.push(N);O.length&&h(f,P,L,O,F),B.length&&c(f,P,L,B,F);break;case"stack":case"relative":for(B=[],O=[],I=0;I<z.length;I++)N=z[I],U=N[0].trace,U.base===void 0?O.push(N):B.push(N);n(O),O.length&&v(f,P,L,O,F),B.length&&c(f,P,L,B,F);break}i(z),u(z,P)}}function i(f){var P,L,z,F,B,O,I;for(P=0;P<f.length;P++)L=f[P],z=L[0].trace,F=L[0].t,F.cornerradiusvalue===void 0&&(B=z.marker?z.marker.cornerradius:void 0,B!==void 0&&(O=g(B)?+B:+B.slice(0,-1),I=g(B)?"px":"%",F.cornerradiusvalue=O,F.cornerradiusform=I))}function n(f){if(!(f.length<2)){var P,L,z,F,B,O,I;for(P=0;P<f.length&&(L=f[P],z=L[0].trace,B=z.marker?z.marker.cornerradius:void 0,B===void 0);P++);if(B!==void 0)for(O=g(B)?+B:+B.slice(0,-1),I=g(B)?"px":"%",P=0;P<f.length;P++)L=f[P],F=L[0].t,F.cornerradiusvalue=O,F.cornerradiusform=I}}function s(f,P){var L,z;for(L=0;L<P.length;L++){var F=P[L],B=F[0].trace,O=B.type==="funnel"?B._base:B.base,I,N=B.orientation==="h"?B.xcalendar:B.ycalendar,U=f.type==="category"||f.type==="multicategory"?function(){return null}:f.d2c;if(x(O)){for(z=0;z<Math.min(O.length,F.length);z++)I=U(O[z],0,N),g(I)?(F[z].b=+I,F[z].hasB=1):F[z].b=0;for(;z<F.length;z++)F[z].b=0}else{I=U(O,0,N);var W=g(I);for(I=W?I:0,z=0;z<F.length;z++)F[z].b=I,W&&(F[z].hasB=1)}}}function c(f,P,L,z,F){for(var B=0;B<z.length;B++){var O=z[B],I=new r([O],{posAxis:P,sepNegVal:!1,overlapNoMerge:!F.norm});p(f,P,I,F),F.norm?(E(I),b(L,I,F)):w(L,I)}}function h(f,P,L,z,F){var B=new r(z,{posAxis:P,sepNegVal:!1,overlapNoMerge:!F.norm});p(f,P,B,F),m(B,P),F.norm?(E(B),b(L,B,F)):w(L,B)}function v(f,P,L,z,F){var B=new r(z,{posAxis:P,sepNegVal:F.mode==="relative",overlapNoMerge:!(F.norm||F.mode==="stack"||F.mode==="relative")});p(f,P,B,F),S(L,B,F);for(var O=0;O<z.length;O++)for(var I=z[O],N=I[0].t.offsetindex,U=0;U<I.length;U++){var W=I[U];if(W.s!==A){var Q=W.b+W.s===B.get(W.p,N,W.s);Q&&(W._outmost=!0)}}F.norm&&b(L,B,F)}function p(f,P,L,z){var F=f._fullLayout,B=L.positions,O=L.distinctPositions,I=L.minDiff,N=L.traces,U=N.length,W=B.length!==O.length,Q=I*(1-z.gap),ue,se,he,G;if(P._id==="angularaxis")ue=Q,se=ue*(1-(z.groupgap||0)),he=-se/2;else{var $=t(F,P._id)+N[0][0].trace.orientation;G=F._alignmentOpts[$]||{}}for(var J=0;J<U;J++){var Z=N[J],re=Z[0].trace;if(P._id!=="angularaxis"){var ne=G[re.alignmentgroup]||{},j=Object.keys(ne.offsetGroups||{}).length;j?ue=Q/j:ue=W?Q/U:Q,se=ue*(1-(z.groupgap||0)),j?he=((2*re._offsetIndex+1-j)*ue-se)/2:he=W?((2*J+1-U)*ue-se)/2:-se/2}var ee=Z[0].t;ee.barwidth=se,ee.offsetindex=re._offsetIndex||0,ee.poffset=he,ee.bargroupwidth=Q,ee.bardelta=I}L.binWidth=N[0][0].t.barwidth/100,T(L),l(P,L),P._id==="angularaxis"?_(P,L):_(P,L,W)}function T(f){var P=f.traces,L,z;for(L=0;L<P.length;L++){var F=P[L],B=F[0],O=B.trace,I=B.t,N=O._offset||O.offset,U=I.poffset,W;if(x(N)){for(W=Array.prototype.slice.call(N,0,F.length),z=0;z<W.length;z++)g(W[z])||(W[z]=U);for(z=W.length;z<F.length;z++)W.push(U);I.poffset=W}else N!==void 0&&(I.poffset=N);var Q=O._width||O.width,ue=I.barwidth;if(x(Q)){var se=Array.prototype.slice.call(Q,0,F.length);for(z=0;z<se.length;z++)g(se[z])||(se[z]=ue);for(z=se.length;z<F.length;z++)se.push(ue);if(I.barwidth=se,N===void 0){for(W=[],z=0;z<F.length;z++)W.push(U+(ue-se[z])/2);I.poffset=W}}else Q!==void 0&&(I.barwidth=Q,N===void 0&&(I.poffset=U+(ue-Q)/2))}}function l(f,P){for(var L=P.traces,z=y(f),F=0;F<L.length;F++)for(var B=L[F],O=B[0].t,I=O.poffset,N=x(I),U=O.barwidth,W=x(U),Q=0;Q<B.length;Q++){var ue=B[Q],se=ue.w=W?U[Q]:U;ue.p===void 0&&(ue.p=ue[z],ue["orig_"+z]=ue[z]);var he=(N?I[Q]:I)+se/2;ue[z]=ue.p+he}}function _(f,P,L){var z=P.traces,F=P.minDiff,B=F/2;e.minDtick(f,P.minDiff,P.distinctPositions[0],L);for(var O=0;O<z.length;O++){var I=z[O],N=I[0],U=N.trace,W=[],Q,ue,se,he;for(he=0;he<I.length;he++)Q=I[he],ue=Q.p-B,se=Q.p+B,W.push(ue,se);if(U.width||U.offset){var G=N.t,$=G.poffset,J=G.barwidth,Z=x($),re=x(J);for(he=0;he<I.length;he++){Q=I[he];var ne=Z?$[he]:$,j=re?J[he]:J;ue=Q.p+ne,se=ue+j,W.push(ue,se)}}U._extremes[f._id]=e.findExtremes(f,W,{padded:!1})}}function w(f,P){for(var L=P.traces,z=y(f),F=0;F<L.length;F++){for(var B=L[F],O=B[0].trace,I=O.type==="scatter",N=O.orientation==="v",U=[],W=!1,Q=0;Q<B.length;Q++){var ue=B[Q],se=I?0:ue.b,he=I?N?ue.y:ue.x:se+ue.s;ue[z]=he,U.push(he),ue.hasB&&U.push(se),(!ue.hasB||!ue.b)&&(W=!0)}O._extremes[f._id]=e.findExtremes(f,U,{tozero:W,padded:!0})}}function S(f,P,L){var z=y(f),F=P.traces,B,O,I,N,U,W,Q;for(N=0;N<F.length;N++)if(B=F[N],O=B[0].trace,O.type==="funnel")for(Q=B[0].t.offsetindex,U=0;U<B.length;U++)W=B[U],W.s!==A&&P.put(W.p,Q,-.5*W.s);for(N=0;N<F.length;N++){B=F[N],O=B[0].trace,I=O.type==="funnel",Q=O.type==="barpolar"?0:B[0].t.offsetindex;var ue=[];for(U=0;U<B.length;U++)if(W=B[U],W.s!==A){var se;I?se=W.s:se=W.s+W.b;var he=P.put(W.p,Q,se),G=he+se;W.b=he,W[z]=G,L.norm||(ue.push(G),W.hasB&&ue.push(he))}L.norm||(O._extremes[f._id]=e.findExtremes(f,ue,{tozero:!0,padded:!0}))}}function E(f){for(var P=f.traces,L=0;L<P.length;L++)for(var z=P[L],F=z[0].t.offsetindex,B=0;B<z.length;B++){var O=z[B];O.s!==A&&f.put(O.p,F,O.b+O.s)}}function m(f,P){for(var L=f.traces,z=0;z<L.length;z++){var F=L[z],B=F[0].trace,O=F[0].t.offsetindex;if(B.base===void 0)for(var I=new r([F],{posAxis:P,sepNegVal:!0,overlapNoMerge:!0}),N=0;N<F.length;N++){var U=F[N];if(U.p!==A){var W=I.put(U.p,O,U.b+U.s);W&&(U.b=W)}}}}function b(f,P,L){var z=P.traces,F=y(f),B=L.norm==="fraction"?1:100,O=B/1e9,I=f.l2c(f.c2l(0)),N=L.mode==="stack"?B:I;function U(ee){return g(f.c2l(ee))&&(ee<I-O||ee>N+O||!g(I))}for(var W=0;W<z.length;W++){for(var Q=z[W],ue=Q[0].t.offsetindex,se=Q[0].trace,he=[],G=!1,$=!1,J=0;J<Q.length;J++){var Z=Q[J];if(Z.s!==A){var re=Math.abs(B/P.get(Z.p,ue,Z.s));Z.b*=re,Z.s*=re;var ne=Z.b,j=ne+Z.s;Z[F]=j,he.push(j),$=$||U(j),Z.hasB&&(he.push(ne),$=$||U(ne)),(!Z.hasB||!Z.b)&&(G=!0)}}se._extremes[f._id]=e.findExtremes(f,he,{tozero:G,padded:$})}}function d(f,P,L,z){for(var F=y(z),B=0;B<f.length;B++)for(var O=f[B],I=0;I<O.length;I++){var N=O[I],U=N[F];N._sMin=P[U],N._sMax=L[U]}}function u(f,P){var L=y(P),z={},F,B,O,I=1/0,N=-1/0;for(F=0;F<f.length;F++)for(O=f[F],B=0;B<O.length;B++){var U=O[B].p;g(U)&&(I=Math.min(I,U),N=Math.max(N,U))}var W=1e4/(N-I),Q=z.round=function(fe){return String(Math.round(W*(fe-I)))},ue={},se={},he=f.some(function(fe){var be=fe[0].trace;return"marker"in be&&be.marker.cornerradius});for(F=0;F<f.length;F++){O=f[F],O[0].t.extents=z;var G=O[0].t.poffset,$=x(G);for(B=0;B<O.length;B++){var J=O[B],Z=J[L]-J.w/2;if(g(Z)){var re=J[L]+J.w/2,ne=Q(J.p);z[ne]?z[ne]=[Math.min(Z,z[ne][0]),Math.max(re,z[ne][1])]:z[ne]=[Z,re]}if(J.p0=J.p+($?G[B]:G),J.p1=J.p0+J.w,J.s0=J.b,J.s1=J.s0+J.s,he){var j=Math.min(J.s0,J.s1)||0,ee=Math.max(J.s0,J.s1)||0,ie=J[L];ue[ie]=ie in ue?Math.min(ue[ie],j):j,se[ie]=ie in se?Math.max(se[ie],ee):ee}}}he&&d(f,ue,se,P)}function y(f){return f._id.charAt(0)}H.exports={crossTraceCalc:o,setGroupPositions:a}}}),HO=Ye({"src/traces/scatter/cross_trace_calc.js"(X,H){"use strict";var g=Bd(),x=$g().setGroupPositions;function A(t,r){for(var o=r.xaxis,a=r.yaxis,i=t._fullLayout,n=t._fullData,s=t.calcdata,c=[],h=[],v=0;v<n.length;v++){var p=n[v];p.visible===!0&&p.type==="scatter"&&p.xaxis===o._id&&p.yaxis===a._id&&(p.orientation==="h"?c.push(s[v]):p.orientation==="v"&&h.push(s[v]))}var T={mode:i.scattermode,gap:i.scattergap};x(t,o,a,h,T),x(t,a,o,c,T)}H.exports=function(r,o){r._fullLayout.scattermode==="group"&&A(r,o);var a=o.xaxis,i=o.yaxis,n=a._id+i._id,s=r._fullLayout._scatterStackOpts[n];if(s){var c=r.calcdata,h,v,p,T,l,_,w,S,E,m,b,d,u,y,f;for(var P in s){m=s[P];var L=m.traceIndices;if(L.length){for(b=m.stackgaps==="interpolate",d=m.groupnorm,m.orientation==="v"?(u="x",y="y"):(u="y",y="x"),f=new Array(L.length),h=0;h<f.length;h++)f[h]=!1;_=c[L[0]];var z=new Array(_.length);for(h=0;h<_.length;h++)z[h]=_[h][u];for(h=1;h<L.length;h++){for(l=c[L[h]],v=p=0;v<l.length;v++){for(w=l[v][u];w>z[p]&&p<z.length;p++)M(l,v,z[p],h,f,b,u),v++;if(w!==z[p]){for(T=0;T<h;T++)M(c[L[T]],p,w,T,f,b,u);z.splice(p,0,w)}p++}for(;p<z.length;p++)M(l,v,z[p],h,f,b,u),v++}var F=z.length;for(v=0;v<_.length;v++){for(S=_[v][y]=_[v].s,h=1;h<L.length;h++)l=c[L[h]],l[0].trace._rawLength=l[0].trace._length,l[0].trace._length=F,S+=l[v].s,l[v][y]=S;if(d)for(E=(d==="fraction"?S:S/100)||1,h=0;h<L.length;h++){var B=c[L[h]][v];B[y]/=E,B.sNorm=B.s/E}}for(h=0;h<L.length;h++){l=c[L[h]];var O=l[0].trace,I=g.calcMarkerSize(O,O._rawLength),N=Array.isArray(I);if(I&&f[h]||N){var U=I;for(I=new Array(F),v=0;v<F;v++)I[v]=l[v].gap?0:N?U[l[v].i]:U}var W=new Array(F),Q=new Array(F);for(v=0;v<F;v++)W[v]=l[v].x,Q[v]=l[v].y;g.calcAxisExpansion(r,O,a,i,W,Q,I),l[0].t.orientation=m.orientation}}}}};function M(t,r,o,a,i,n,s){i[a]=!0;var c={i:null,gap:!0,s:0};if(c[s]=o,t.splice(r,0,c),r&&o===t[r-1][s]){var h=t[r-1];c.s=h.s,c.i=h.i,c.gap=h.gap}else n&&(c.s=e(t,r,o,s));r||(t[0].t=t[1].t,t[0].trace=t[1].trace,delete t[1].t,delete t[1].trace)}function e(t,r,o,a){var i=t[r-1],n=t[r+1];return n?i?i.s+(n.s-i.s)*(o-i[a])/(n[a]-i[a]):n.s:i.s}}}),DS=Ye({"src/traces/scatter/line_points.js"(X,H){"use strict";var g=Bo(),x=ks(),A=x.BADNUM,M=x.LOG_CLIP,e=M+.5,t=M-.5,r=ta(),o=r.segmentsIntersect,a=r.constrain,i=Tv();H.exports=function(s,c){var h=c.trace||{},v=c.xaxis,p=c.yaxis,T=v.type==="log",l=p.type==="log",_=v._length,w=p._length,S=c.backoff,E=h.marker,m=c.connectGaps,b=c.baseTolerance,d=c.shape,u=d==="linear",y=h.fill&&h.fill!=="none",f=[],P=i.minTolerance,L=s.length,z=new Array(L),F=0,B,O,I,N,U,W,Q,ue,se,he,G,$,J,Z,re,ne;function j(dt){var xt=s[dt];if(!xt)return!1;var It=c.linearized?v.l2p(xt.x):v.c2p(xt.x),Bt=c.linearized?p.l2p(xt.y):p.c2p(xt.y);if(It===A){if(T&&(It=v.c2p(xt.x,!0)),It===A)return!1;l&&Bt===A&&(It*=Math.abs(v._m*w*(v._m>0?e:t)/(p._m*_*(p._m>0?e:t)))),It*=1e3}if(Bt===A){if(l&&(Bt=p.c2p(xt.y,!0)),Bt===A)return!1;Bt*=1e3}return[It,Bt]}function ee(dt,xt,It,Bt){var Gt=It-dt,Kt=Bt-xt,sr=.5-dt,sa=.5-xt,Aa=Gt*Gt+Kt*Kt,La=Gt*sr+Kt*sa;if(La>0&&La<Aa){var ka=sr*Kt-sa*Gt;if(ka*ka<Aa)return!0}}var ie,fe;function be(dt,xt){var It=dt[0]/_,Bt=dt[1]/w,Gt=Math.max(0,-It,It-1,-Bt,Bt-1);return Gt&&ie!==void 0&&ee(It,Bt,ie,fe)&&(Gt=0),Gt&&xt&&ee(It,Bt,xt[0]/_,xt[1]/w)&&(Gt=0),(1+i.toleranceGrowth*Gt)*b}function Ae(dt,xt){var It=dt[0]-xt[0],Bt=dt[1]-xt[1];return Math.sqrt(It*It+Bt*Bt)}var Be=i.maxScreensAway,Ie=-_*Be,Ze=_*(1+Be),at=-w*Be,it=w*(1+Be),et=[[Ie,at,Ze,at],[Ze,at,Ze,it],[Ze,it,Ie,it],[Ie,it,Ie,at]],lt,Me,ge,ce,ze,tt;function nt(dt,xt){for(var It=[],Bt=0,Gt=0;Gt<4;Gt++){var Kt=et[Gt],sr=o(dt[0],dt[1],xt[0],xt[1],Kt[0],Kt[1],Kt[2],Kt[3]);sr&&(!Bt||Math.abs(sr.x-It[0][0])>1||Math.abs(sr.y-It[0][1])>1)&&(sr=[sr.x,sr.y],Bt&&Ae(sr,dt)<Ae(It[0],dt)?It.unshift(sr):It.push(sr),Bt++)}return It}function Qe(dt){if(dt[0]<Ie||dt[0]>Ze||dt[1]<at||dt[1]>it)return[a(dt[0],Ie,Ze),a(dt[1],at,it)]}function Ct(dt,xt){if(dt[0]===xt[0]&&(dt[0]===Ie||dt[0]===Ze)||dt[1]===xt[1]&&(dt[1]===at||dt[1]===it))return!0}function St(dt,xt){var It=[],Bt=Qe(dt),Gt=Qe(xt);return Bt&&Gt&&Ct(Bt,Gt)||(Bt&&It.push(Bt),Gt&&It.push(Gt)),It}function Ot(dt,xt,It){return function(Bt,Gt){var Kt=Qe(Bt),sr=Qe(Gt),sa=[];if(Kt&&sr&&Ct(Kt,sr))return sa;Kt&&sa.push(Kt),sr&&sa.push(sr);var Aa=2*r.constrain((Bt[dt]+Gt[dt])/2,xt,It)-((Kt||Bt)[dt]+(sr||Gt)[dt]);if(Aa){var La;Kt&&sr?La=Aa>0==Kt[dt]>sr[dt]?Kt:sr:La=Kt||sr,La[dt]+=Aa}return sa}}var jt;d==="linear"||d==="spline"?jt=nt:d==="hv"||d==="vh"?jt=St:d==="hvh"?jt=Ot(0,Ie,Ze):d==="vhv"&&(jt=Ot(1,at,it));function ur(dt,xt){var It=xt[0]-dt[0],Bt=(xt[1]-dt[1])/It,Gt=(dt[1]*xt[0]-xt[1]*dt[0])/It;return Gt>0?[Bt>0?Ie:Ze,it]:[Bt>0?Ze:Ie,at]}function ar(dt){var xt=dt[0],It=dt[1],Bt=xt===z[F-1][0],Gt=It===z[F-1][1];if(!(Bt&&Gt))if(F>1){var Kt=xt===z[F-2][0],sr=It===z[F-2][1];Bt&&(xt===Ie||xt===Ze)&&Kt?sr?F--:z[F-1]=dt:Gt&&(It===at||It===it)&&sr?Kt?F--:z[F-1]=dt:z[F++]=dt}else z[F++]=dt}function Cr(dt){z[F-1][0]!==dt[0]&&z[F-1][1]!==dt[1]&&ar([ge,ce]),ar(dt),ze=null,ge=ce=0}var vr=r.isArrayOrTypedArray(E);function _r(dt){if(dt&&S&&(dt.i=B,dt.d=s,dt.trace=h,dt.marker=vr?E[dt.i]:E,dt.backoff=S),ie=dt[0]/_,fe=dt[1]/w,lt=dt[0]<Ie?Ie:dt[0]>Ze?Ze:0,Me=dt[1]<at?at:dt[1]>it?it:0,lt||Me){if(!F)z[F++]=[lt||dt[0],Me||dt[1]];else if(ze){var xt=jt(ze,dt);xt.length>1&&(Cr(xt[0]),z[F++]=xt[1])}else tt=jt(z[F-1],dt)[0],z[F++]=tt;var It=z[F-1];lt&&Me&&(It[0]!==lt||It[1]!==Me)?(ze&&(ge!==lt&&ce!==Me?ar(ge&&ce?ur(ze,dt):[ge||lt,ce||Me]):ge&&ce&&ar([ge,ce])),ar([lt,Me])):ge-lt&&ce-Me&&ar([lt||ge,Me||ce]),ze=dt,ge=lt,ce=Me}else ze&&Cr(jt(ze,dt)[0]),z[F++]=dt}for(B=0;B<L;B++)if(O=j(B),!!O){for(F=0,ze=null,_r(O),B++;B<L;B++){if(N=j(B),!N){if(m)continue;break}if(!u||!c.simplify){_r(N);continue}var yt=j(B+1);if(he=Ae(N,O),!(!(y&&(F===0||F===L-1))&&he<be(N,yt)*P)){for(ue=[(N[0]-O[0])/he,(N[1]-O[1])/he],U=O,G=he,$=Z=re=0,Q=!1,I=N,B++;B<s.length;B++){if(W=yt,yt=j(B+1),!W){if(m)continue;break}if(se=[W[0]-O[0],W[1]-O[1]],ne=se[0]*ue[1]-se[1]*ue[0],Z=Math.min(Z,ne),re=Math.max(re,ne),re-Z>be(W,yt))break;I=W,J=se[0]*ue[0]+se[1]*ue[1],J>G?(G=J,N=W,Q=!1):J<$&&($=J,U=W,Q=!0)}if(Q?(_r(N),I!==U&&_r(U)):(U!==O&&_r(U),I!==N&&_r(N)),_r(I),B>=s.length||!W)break;_r(W),O=W}}ze&&ar([ge||ze[0],ce||ze[1]]),f.push(z.slice(0,F))}var Fe=d.slice(d.length-1);if(S&&Fe!=="h"&&Fe!=="v"){for(var Ke=!1,Ne=-1,Ee=[],Ve=0;Ve<f.length;Ve++)for(var ke=0;ke<f[Ve].length-1;ke++){var Te=f[Ve][ke],Le=f[Ve][ke+1],rt=g.applyBackoff(Le,Te);(rt[0]!==Le[0]||rt[1]!==Le[1])&&(Ke=!0),Ee[Ne+1]||(Ne++,Ee[Ne]=[Te,[rt[0],rt[1]]])}return Ke?Ee:f}return f}}}),zS=Ye({"src/traces/scatter/link_traces.js"(X,H){"use strict";var g={tonextx:1,tonexty:1,tonext:1};H.exports=function(A,M,e){var t,r,o,a,i,n={},s=!1,c=-1,h=0,v=-1;for(r=0;r<e.length;r++)t=e[r][0].trace,o=t.stackgroup||"",o?o in n?i=n[o]:(i=n[o]=h,h++):t.fill in g&&v>=0?i=v:(i=v=h,h++),i<c&&(s=!0),t._groupIndex=c=i;var p=e.slice();s&&p.sort(function(l,_){var w=l[0].trace,S=_[0].trace;return w._groupIndex-S._groupIndex||w.index-S.index});var T={};for(r=0;r<p.length;r++)t=p[r][0].trace,o=t.stackgroup||"",t.visible===!0?(t._nexttrace=null,t.fill in g&&(a=T[o],t._prevtrace=a||null,a&&(a._nexttrace=t)),t._ownfill=t.fill&&(t.fill.substr(0,6)==="tozero"||t.fill==="toself"||t.fill.substr(0,2)==="to"&&!t._prevtrace),T[o]=t):t._prevtrace=t._nexttrace=t._ownfill=null;return p}}}),o1=Ye({"src/traces/scatter/plot.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=A.ensureSingle,e=A.identity,t=Bo(),r=uu(),o=DS(),a=zS(),i=C_().tester;H.exports=function(v,p,T,l,_,w){var S,E,m=!_,b=!!_&&_.duration>0,d=a(v,p,T);if(S=l.selectAll("g.trace").data(d,function(y){return y[0].trace.uid}),S.enter().append("g").attr("class",function(y){return"trace scatter trace"+y[0].trace.uid}).style("stroke-miterlimit",2),S.order(),n(v,S,p),b){w&&(E=w());var u=g.transition().duration(_.duration).ease(_.easing).each("end",function(){E&&E()}).each("interrupt",function(){E&&E()});u.each(function(){l.selectAll("g.trace").each(function(y,f){s(v,f,p,y,d,this,_)})})}else S.each(function(y,f){s(v,f,p,y,d,this,_)});m&&S.exit().remove(),l.selectAll("path:not([d])").remove()};function n(h,v,p){v.each(function(T){var l=M(g.select(this),"g","fills");t.setClipUrl(l,p.layerClipId,h);var _=T[0].trace,w=[];_._ownfill&&w.push("_ownFill"),_._nexttrace&&w.push("_nextFill");var S=l.selectAll("g").data(w,e);S.enter().append("g"),S.exit().each(function(E){_[E]=null}).remove(),S.order().each(function(E){_[E]=M(g.select(this),"path","js-fill")})})}function s(h,v,p,T,l,_,w){var S=h._context.staticPlot,E;c(h,v,p,T,l);var m=!!w&&w.duration>0;function b(ar){return m?ar.transition():ar}var d=p.xaxis,u=p.yaxis,y=T[0].trace,f=y.line,P=g.select(_),L=M(P,"g","errorbars"),z=M(P,"g","lines"),F=M(P,"g","points"),B=M(P,"g","text");if(x.getComponentMethod("errorbars","plot")(h,L,p,w),y.visible!==!0)return;b(P).style("opacity",y.opacity);var O,I,N=y.fill.charAt(y.fill.length-1);N!=="x"&&N!=="y"&&(N="");var U,W;N==="y"?(U=1,W=u.c2p(0,!0)):N==="x"&&(U=0,W=d.c2p(0,!0)),T[0][p.isRangePlot?"nodeRangePlot3":"node3"]=P;var Q="",ue=[],se=y._prevtrace,he=null,G=null;se&&(Q=se._prevRevpath||"",I=se._nextFill,ue=se._ownPolygons,he=se._fillsegments,G=se._fillElement);var $,J,Z="",re="",ne,j,ee,ie,fe,be,Ae=[];y._polygons=[];var Be=[],Ie=[],Ze=A.noop;if(O=y._ownFill,r.hasLines(y)||y.fill!=="none"){I&&I.datum(T),["hv","vh","hvh","vhv"].indexOf(f.shape)!==-1?(ne=t.steps(f.shape),j=t.steps(f.shape.split("").reverse().join(""))):f.shape==="spline"?ne=j=function(ar){var Cr=ar[ar.length-1];return ar.length>1&&ar[0][0]===Cr[0]&&ar[0][1]===Cr[1]?t.smoothclosed(ar.slice(1),f.smoothing):t.smoothopen(ar,f.smoothing)}:ne=j=function(ar){return"M"+ar.join("L")},ee=function(ar){return j(ar.reverse())},Ie=o(T,{xaxis:d,yaxis:u,trace:y,connectGaps:y.connectgaps,baseTolerance:Math.max(f.width||1,3)/4,shape:f.shape,backoff:f.backoff,simplify:f.simplify,fill:y.fill}),Be=new Array(Ie.length);var at=0;for(E=0;E<Ie.length;E++){var it,et=Ie[E];!it||!N?(it=et.slice(),Be[at]=it,at++):it.push.apply(it,et)}y._fillElement=null,y._fillExclusionElement=G,y._fillsegments=Be.slice(0,at),Be=y._fillsegments,Ie.length&&(ie=Ie[0][0].slice(),fe=Ie[Ie.length-1],be=fe[fe.length-1].slice()),Ze=function(ar){return function(Cr){if($=ne(Cr),J=ee(Cr),Z?N?(Z+="L"+$.substr(1),re=J+("L"+re.substr(1))):(Z+="Z"+$,re=J+"Z"+re):(Z=$,re=J),r.hasLines(y)){var vr=g.select(this);if(vr.datum(T),ar)b(vr.style("opacity",0).attr("d",$).call(t.lineGroupStyle)).style("opacity",1);else{var _r=b(vr);_r.attr("d",$),t.singleLineStyle(T,_r)}}}}}var lt=z.selectAll(".js-line").data(Ie);b(lt.exit()).style("opacity",0).remove(),lt.each(Ze(!1)),lt.enter().append("path").classed("js-line",!0).style("vector-effect",S?"none":"non-scaling-stroke").call(t.lineGroupStyle).each(Ze(!0)),t.setClipUrl(lt,p.layerClipId,h);function Me(ar){b(ar).attr("d","M0,0Z")}var ge=function(){var ar=new Array(Be.length);for(E=0;E<Be.length;E++)ar[E]=i(Be[E]);return ar},ce=function(ar){var Cr,vr;if(!ar||ar.length===0)for(Cr=new Array(Be.length),vr=0;vr<Be.length;vr++){var _r=Be[vr][0].slice(),yt=Be[vr][Be[vr].length-1].slice();_r[U]=yt[U]=W;var Fe=[yt,_r],Ke=Fe.concat(Be[vr]);Cr[vr]=i(Ke)}else{for(Cr=new Array(ar.length-1+Be.length),vr=0;vr<ar.length-1;vr++)Cr[vr]=i(ar[vr]);var Ne=ar[ar.length-1].slice();for(Ne.reverse(),vr=0;vr<Be.length;vr++)Cr[ar.length-1+vr]=i(Be[vr].concat(Ne))}return Cr};Ie.length?(O?(O.datum(T),ie&&be&&(N?(ie[U]=be[U]=W,b(O).attr("d","M"+be+"L"+ie+"L"+Z.substr(1)).call(t.singleFillStyle,h),Ae=ce(null)):(b(O).attr("d",Z+"Z").call(t.singleFillStyle,h),Ae=ge())),y._polygons=Ae,y._fillElement=O):I&&(y.fill.substr(0,6)==="tonext"&&Z&&Q?(y.fill==="tonext"?(b(I).attr("d",Z+"Z"+Q+"Z").call(t.singleFillStyle,h),Ae=ge(),y._polygons=Ae.concat(ue)):(b(I).attr("d",Z+"L"+Q.substr(1)+"Z").call(t.singleFillStyle,h),Ae=ce(he),y._polygons=Ae),y._fillElement=I):Me(I)),y._prevRevpath=re):(O?Me(O):I&&Me(I),y._prevRevpath=null),y._ownPolygons=Ae;function ze(ar){return ar.filter(function(Cr){return!Cr.gap&&Cr.vis})}function tt(ar){return ar.filter(function(Cr){return Cr.vis})}function nt(ar){return ar.filter(function(Cr){return!Cr.gap})}function Qe(ar){return ar.id}function Ct(ar){if(ar.ids)return Qe}function St(){return!1}function Ot(ar,Cr,vr){var _r,yt,Fe,Ke=vr[0].trace,Ne=r.hasMarkers(Ke),Ee=r.hasText(Ke),Ve=Ct(Ke),ke=St,Te=St;if(Ne||Ee){var Le=e,rt=Ke.stackgroup,dt=rt&&h._fullLayout._scatterStackOpts[d._id+u._id][rt].stackgaps==="infer zero";Ke.marker.maxdisplayed||Ke._needsCull?Le=dt?tt:ze:rt&&!dt&&(Le=nt),Ne&&(ke=Le),Ee&&(Te=Le)}yt=ar.selectAll("path.point"),_r=yt.data(ke,Ve);var xt=_r.enter().append("path").classed("point",!0);m&&xt.call(t.pointStyle,Ke,h).call(t.translatePoints,d,u).style("opacity",0).transition().style("opacity",1),_r.order();var It;Ne&&(It=t.makePointStyleFns(Ke)),_r.each(function(Bt){var Gt=g.select(this),Kt=b(Gt);Fe=t.translatePoint(Bt,Kt,d,u),Fe?(t.singlePointStyle(Bt,Kt,Ke,It,h),p.layerClipId&&t.hideOutsideRangePoint(Bt,Kt,d,u,Ke.xcalendar,Ke.ycalendar),Ke.customdata&&Gt.classed("plotly-customdata",Bt.data!==null&&Bt.data!==void 0)):Kt.remove()}),m?_r.exit().transition().style("opacity",0).remove():_r.exit().remove(),yt=Cr.selectAll("g"),_r=yt.data(Te,Ve),_r.enter().append("g").classed("textpoint",!0).append("text"),_r.order(),_r.each(function(Bt){var Gt=g.select(this),Kt=b(Gt.select("text"));Fe=t.translatePoint(Bt,Kt,d,u),Fe?p.layerClipId&&t.hideOutsideRangePoint(Bt,Gt,d,u,Ke.xcalendar,Ke.ycalendar):Gt.remove()}),_r.selectAll("text").call(t.textPointStyle,Ke,h).each(function(Bt){var Gt=d.c2p(Bt.x),Kt=u.c2p(Bt.y);g.select(this).selectAll("tspan.line").each(function(){b(g.select(this)).attr({x:Gt,y:Kt})})}),_r.exit().remove()}F.datum(T),B.datum(T),Ot(F,B,T);var jt=y.cliponaxis===!1,ur=jt?null:p.layerClipId;t.setClipUrl(F,ur,h),t.setClipUrl(B,ur,h)}function c(h,v,p,T,l){var _=p.xaxis,w=p.yaxis,S=g.extent(A.simpleMap(_.range,_.r2c)),E=g.extent(A.simpleMap(w.range,w.r2c)),m=T[0].trace;if(r.hasMarkers(m)){var b=m.marker.maxdisplayed;if(b!==0){var d=T.filter(function(P){return P.x>=S[0]&&P.x<=S[1]&&P.y>=E[0]&&P.y<=E[1]}),u=Math.ceil(d.length/b),y=0;l.forEach(function(P,L){var z=P[0].trace;r.hasMarkers(z)&&z.marker.maxdisplayed>0&&L<v&&y++});var f=Math.round(y*u/3+Math.floor(y/3)*u/7.1);T.forEach(function(P){delete P.vis}),d.forEach(function(P,L){Math.round((L+f)%u)===0&&(P.vis=!0)})}}}}}),cp=Ye({"src/traces/scatter/marker_colorbar.js"(X,H){"use strict";H.exports={container:"marker",min:"cmin",max:"cmax"}}}),L2=Ye({"src/traces/scatter/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r={_fullLayout:e},o=g.getFromTrace(r,M,"x"),a=g.getFromTrace(r,M,"y"),i=A.orig_x;i===void 0&&(i=A.x);var n=A.orig_y;return n===void 0&&(n=A.y),t.xLabel=g.tickText(o,o.c2l(i),!0).text,t.yLabel=g.tickText(a,a.c2l(n),!0).text,t}}}),ed=Ye({"src/traces/scatter/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Hn();function M(o){var a=g.select(o).selectAll("g.trace.scatter");a.style("opacity",function(i){return i[0].trace.opacity}),a.selectAll("g.points").each(function(i){var n=g.select(this),s=i.trace||i[0].trace;e(n,s,o)}),a.selectAll("g.text").each(function(i){var n=g.select(this),s=i.trace||i[0].trace;t(n,s,o)}),a.selectAll("g.trace path.js-line").call(x.lineGroupStyle),a.selectAll("g.trace path.js-fill").call(x.fillGroupStyle,o,!1),A.getComponentMethod("errorbars","style")(a)}function e(o,a,i){x.pointStyle(o.selectAll("path.point"),a,i)}function t(o,a,i){x.textPointStyle(o.selectAll("text"),a,i)}function r(o,a,i){var n=a[0].trace;n.selectedpoints?(x.selectedPointStyle(i.selectAll("path.point"),n),x.selectedTextStyle(i.selectAll("text"),n)):(e(i,n,o),t(i,n,o))}H.exports={style:M,stylePoints:e,styleText:t,styleOnSelect:r}}}),s1=Ye({"src/traces/scatter/get_trace_color.js"(X,H){"use strict";var g=Fn(),x=uu();H.exports=function(M,e){var t,r;if(M.mode==="lines")return t=M.line.color,t&&g.opacity(t)?t:M.fillcolor;if(M.mode==="none")return M.fill?M.fillcolor:"";var o=e.mcc||(M.marker||{}).color,a=e.mlcc||((M.marker||{}).line||{}).color;return r=o&&g.opacity(o)?o:a&&g.opacity(a)&&(e.mlw||((M.marker||{}).line||{}).width)?a:"",r?g.opacity(r)<.3?g.addOpacity(r,.3):r:(t=(M.line||{}).color,t&&g.opacity(t)&&x.hasLines(M)&&M.line.width?t:M.fillcolor)}}}),l1=Ye({"src/traces/scatter/hover.js"(X,H){"use strict";var g=ta(),x=Lc(),A=Hn(),M=s1(),e=Fn(),t=g.fillText;H.exports=function(o,a,i,n){var s=o.cd,c=s[0].trace,h=o.xa,v=o.ya,p=h.c2p(a),T=v.c2p(i),l=[p,T],_=c.hoveron||"",w=c.mode.indexOf("markers")!==-1?3:.5,S=!!c.xperiodalignment,E=!!c.yperiodalignment;if(_.indexOf("points")!==-1){var m=function(ue){if(S){var se=h.c2p(ue.xStart),he=h.c2p(ue.xEnd);return p>=Math.min(se,he)&&p<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(h.c2p(ue.x)-p);return J<G?$*J/G:J-G+$},b=function(ue){if(E){var se=v.c2p(ue.yStart),he=v.c2p(ue.yEnd);return T>=Math.min(se,he)&&T<=Math.max(se,he)?0:1/0}var G=Math.max(3,ue.mrc||0),$=1-1/G,J=Math.abs(v.c2p(ue.y)-T);return J<G?$*J/G:J-G+$},d=function(ue){var se=Math.max(w,ue.mrc||0),he=h.c2p(ue.x)-p,G=v.c2p(ue.y)-T;return Math.max(Math.sqrt(he*he+G*G)-se,1-w/se)},u=x.getDistanceFunction(n,m,b,d);if(x.getClosest(s,u,o),o.index!==!1){var y=s[o.index],f=h.c2p(y.x,!0),P=v.c2p(y.y,!0),L=y.mrc||1;o.index=y.i;var z=s[0].t.orientation,F=z&&(y.sNorm||y.s),B=z==="h"?F:y.orig_x!==void 0?y.orig_x:y.x,O=z==="v"?F:y.orig_y!==void 0?y.orig_y:y.y;return g.extendFlat(o,{color:M(c,y),x0:f-L,x1:f+L,xLabelVal:B,y0:P-L,y1:P+L,yLabelVal:O,spikeDistance:d(y),hovertemplate:c.hovertemplate}),t(y,c,o),A.getComponentMethod("errorbars","hoverInfo")(y,c,o),[o]}}function I(ue){if(!ue)return!1;var se=ue.node();try{var he=new DOMPoint(l[0],l[1]);return se.isPointInFill(he)}catch{var G=se.ownerSVGElement.createSVGPoint();return G.x=l[0],G.y=l[1],se.isPointInFill(G)}}function N(ue){var se,he=[],G=1/0,$=-1/0,J=1/0,Z=-1/0,re;for(se=0;se<ue.length;se++){var ne=ue[se];ne.contains(l)&&(he.push(ne),J=Math.min(J,ne.ymin),Z=Math.max(Z,ne.ymax))}if(he.length===0)return null;J=Math.max(J,0),Z=Math.min(Z,v._length),re=(J+Z)/2;var j,ee,ie,fe,be,Ae,Be;for(se=0;se<he.length;se++)for(ee=he[se].pts,j=1;j<ee.length;j++)Ae=ee[j-1][1],Be=ee[j][1],Ae>re!=Be>=re&&(fe=ee[j-1][0],be=ee[j][0],Be-Ae&&(ie=fe+(be-fe)*(re-Ae)/(Be-Ae),G=Math.min(G,ie),$=Math.max($,ie)));return G=Math.max(G,0),$=Math.min($,h._length),{x0:G,x1:$,y0:re,y1:re}}if(_.indexOf("fills")!==-1&&c._fillElement){var U=I(c._fillElement)&&!I(c._fillExclusionElement);if(U){var W=N(c._polygons);W===null&&(W={x0:l[0],x1:l[0],y0:l[1],y1:l[1]});var Q=e.defaultLine;return e.opacity(c.fillcolor)?Q=c.fillcolor:e.opacity((c.line||{}).color)&&(Q=c.line.color),g.extendFlat(o,{distance:o.maxHoverDistance,x0:W.x0,x1:W.x1,y0:W.y0,y1:W.y1,color:Q,hovertemplate:!1}),delete o.index,c.text&&!g.isArrayOrTypedArray(c.text)?o.text=String(c.text):o.text=c.name,[o]}}}}}),u1=Ye({"src/traces/scatter/select.js"(X,H){"use strict";var g=uu();H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=[],a=e[0].trace,i,n,s,c,h=!g.hasMarkers(a)&&!g.hasText(a);if(h)return[];if(M===!1)for(i=0;i<e.length;i++)e[i].selected=0;else for(i=0;i<e.length;i++)n=e[i],s=t.c2p(n.x),c=r.c2p(n.y),n.i!==null&&M.contains([s,c],!1,i,A)?(o.push({pointNumber:n.i,x:t.c2d(n.x),y:r.c2d(n.y)}),n.selected=1):n.selected=0;return o}}}),GO=Ye({"src/plots/cartesian/attributes.js"(X,H){"use strict";H.exports={xaxis:{valType:"subplotid",dflt:"x",editType:"calc+clearAxisTypes"},yaxis:{valType:"subplotid",dflt:"y",editType:"calc+clearAxisTypes"}}}}),FS=Ye({"src/plots/cartesian/type_defaults.js"(X,H){"use strict";var g=Hn().traceIs,x=r1();H.exports=function(o,a,i,n){i("autotypenumbers",n.autotypenumbersDflt);var s=i("type",(n.splomStash||{}).type);s==="-"&&(A(a,n.data),a.type==="-"?a.type="linear":o.type=a.type)};function A(r,o){if(r.type==="-"){var a=r._id,i=a.charAt(0),n;a.indexOf("scene")!==-1&&(a=i);var s=M(o,a,i);if(s){if(s.type==="histogram"&&i==={v:"y",h:"x"}[s.orientation||"v"]){r.type="linear";return}var c=i+"calendar",h=s[c],v={noMultiCategory:!g(s,"cartesian")||g(s,"noMultiCategory")};if(s.type==="box"&&s._hasPreCompStats&&i==={h:"x",v:"y"}[s.orientation||"v"]&&(v.noMultiCategory=!0),v.autotypenumbers=r.autotypenumbers,t(s,i)){var p=e(s),T=[];for(n=0;n<o.length;n++){var l=o[n];!g(l,"box-violin")||(l[i+"axis"]||i)!==a||(l[p]!==void 0?T.push(l[p][0]):l.name!==void 0?T.push(l.name):T.push("text"),l[c]!==h&&(h=void 0))}r.type=x(T,h,v)}else if(s.type==="splom"){var _=s.dimensions,w=_[s._axesDim[a]];w.visible&&(r.type=x(w.values,h,v))}else r.type=x(s[i]||[s[i+"0"]],h,v)}}}function M(r,o,a){for(var i=0;i<r.length;i++){var n=r[i];if(n.type==="splom"&&n._length>0&&(n["_"+a+"axes"]||{})[o])return n;if((n[a+"axis"]||a)===o){if(t(n,a))return n;if((n[a]||[]).length||n[a+"0"])return n}}}function e(r){return{v:"x",h:"y"}[r.orientation||"v"]}function t(r,o){var a=e(r),i=g(r,"box-violin"),n=g(r._fullInput||{},"candlestick");return i&&!n&&o===a&&r[a]===void 0&&r[a+"0"]===void 0}}}),P2=Ye({"src/plots/cartesian/category_order_defaults.js"(X,H){"use strict";var g=xp().isTypedArraySpec;function x(A,M){var e=M.dataAttr||A._id.charAt(0),t={},r,o,a;if(M.axData)r=M.axData;else for(r=[],o=0;o<M.data.length;o++){var i=M.data[o];i[e+"axis"]===A._id&&r.push(i)}for(o=0;o<r.length;o++){var n=r[o][e];for(a=0;a<n.length;a++){var s=n[a];s!=null&&(t[s]=1)}}return Object.keys(t)}H.exports=function(M,e,t,r){if(e.type==="category"){var o=M.categoryarray,a=Array.isArray(o)&&o.length>0||g(o),i;a&&(i="array");var n=t("categoryorder",i),s;n==="array"&&(s=t("categoryarray")),!a&&n==="array"&&(n=e.categoryorder="trace"),n==="trace"?e._initialCategories=[]:n==="array"?e._initialCategories=s.slice():(s=x(e,r).sort(),n==="category ascending"?e._initialCategories=s:n==="category descending"&&(e._initialCategories=s.reverse()))}}}}),I_=Ye({"src/plots/cartesian/line_grid_defaults.js"(X,H){"use strict";var g=bh().mix,x=Gf(),A=ta();H.exports=function(e,t,r,o){o=o||{};var a=o.dfltColor;function i(y,f){return A.coerce2(e,t,o.attributes,y,f)}var n=i("linecolor",a),s=i("linewidth"),c=r("showline",o.showLine||!!n||!!s);c||(delete t.linecolor,delete t.linewidth);var h=g(a,o.bgColor,o.blend||x.lightFraction).toRgbString(),v=i("gridcolor",h),p=i("gridwidth"),T=i("griddash"),l=r("showgrid",o.showGrid||!!v||!!p||!!T);if(l||(delete t.gridcolor,delete t.gridwidth,delete t.griddash),o.hasMinor){var _=g(t.gridcolor,o.bgColor,67).toRgbString(),w=i("minor.gridcolor",_),S=i("minor.gridwidth",t.gridwidth||1),E=i("minor.griddash",t.griddash||"solid"),m=r("minor.showgrid",!!w||!!S||!!E);m||(delete t.minor.gridcolor,delete t.minor.gridwidth,delete t.minor.griddash)}if(!o.noZeroLine){var b=i("zerolinecolor",a),d=i("zerolinewidth"),u=r("zeroline",o.showGrid||!!b||!!d);u||(delete t.zerolinecolor,delete t.zerolinewidth)}}}}),R_=Ye({"src/plots/cartesian/axis_defaults.js"(X,H){"use strict";var g=jo(),x=Hn(),A=ta(),M=cl(),e=up(),t=Vh(),r=Zg(),o=e1(),a=$m(),i=Qm(),n=P2(),s=I_(),c=fS(),h=wv(),v=wh().WEEKDAY_PATTERN,p=wh().HOUR_PATTERN;H.exports=function(S,E,m,b,d){var u=b.letter,y=b.font||{},f=b.splomStash||{},P=m("visible",!b.visibleDflt),L=E._template||{},z=E.type||L.type||"-",F;if(z==="date"){var B=x.getComponentMethod("calendars","handleDefaults");B(S,E,"calendar",b.calendar),b.noTicklabelmode||(F=m("ticklabelmode"))}!b.noTicklabelindex&&(z==="date"||z==="linear")&&m("ticklabelindex");var O="";(!b.noTicklabelposition||z==="multicategory")&&(O=A.coerce(S,E,{ticklabelposition:{valType:"enumerated",dflt:"outside",values:F==="period"?["outside","inside"]:u==="x"?["outside","inside","outside left","inside left","outside right","inside right"]:["outside","inside","outside top","inside top","outside bottom","inside bottom"]}},"ticklabelposition")),b.noTicklabeloverflow||m("ticklabeloverflow",O.indexOf("inside")!==-1?"hide past domain":z==="category"||z==="multicategory"?"allow":"hide past div"),h(E,d),c(S,E,m,b),n(S,E,m,b),z!=="category"&&!b.noHover&&m("hoverformat");var I=m("color"),N=I!==t.color.dflt?I:y.color,U=f.label||d._dfltTitle[u];if(i(S,E,m,z,b),!P)return E;m("title.text",U),A.coerceFont(m,"title.font",y,{overrideDflt:{size:A.bigFont(y.size),color:N}}),r(S,E,m,z);var W=b.hasMinor;if(W&&(M.newContainer(E,"minor"),r(S,E,m,z,{isMinor:!0})),a(S,E,m,z,b),o(S,E,m,b),W){var Q=b.isMinor;b.isMinor=!0,o(S,E,m,b),b.isMinor=Q}s(S,E,m,{dfltColor:I,bgColor:b.bgColor,showGrid:b.showGrid,hasMinor:W,attributes:t}),W&&!E.minor.ticks&&!E.minor.showgrid&&delete E.minor,(E.showline||E.ticks)&&m("mirror");var ue=z==="multicategory";if(!b.noTickson&&(z==="category"||ue)&&(E.ticks||E.showgrid)){var se;ue&&(se="boundaries");var he=m("tickson",se);he==="boundaries"&&delete E.ticklabelposition}if(ue){var G=m("showdividers");G&&(m("dividercolor"),m("dividerwidth"))}if(z==="date")if(e(S,E,{name:"rangebreaks",inclusionAttr:"enabled",handleItemDefaults:T}),!E.rangebreaks.length)delete E.rangebreaks;else{for(var $=0;$<E.rangebreaks.length;$++)if(E.rangebreaks[$].pattern===v){E._hasDayOfWeekBreaks=!0;break}if(h(E,d),d._has("scattergl")||d._has("splom"))for(var J=0;J<b.data.length;J++){var Z=b.data[J];(Z.type==="scattergl"||Z.type==="splom")&&(Z.visible=!1,A.warn(Z.type+" traces do not work on axes with rangebreaks. Setting trace "+Z.index+" to `visible: false`."))}}return E};function T(w,S,E){function m(F,B){return A.coerce(w,S,t.rangebreaks,F,B)}var b=m("enabled");if(b){var d=m("bounds");if(d&&d.length>=2){var u="",y,f;if(d.length===2){for(y=0;y<2;y++)if(f=_(d[y]),f){u=v;break}}var P=m("pattern",u);if(P===v)for(y=0;y<2;y++)f=_(d[y]),f&&(S.bounds[y]=d[y]=f-1);if(P)for(y=0;y<2;y++)switch(f=d[y],P){case v:if(!g(f)){S.enabled=!1;return}if(f=+f,f!==Math.floor(f)||f<0||f>=7){S.enabled=!1;return}S.bounds[y]=d[y]=f;break;case p:if(!g(f)){S.enabled=!1;return}if(f=+f,f<0||f>24){S.enabled=!1;return}S.bounds[y]=d[y]=f;break}if(E.autorange===!1){var L=E.range;if(L[0]<L[1]){if(d[0]<L[0]&&d[1]>L[1]){S.enabled=!1;return}}else if(d[0]>L[0]&&d[1]<L[1]){S.enabled=!1;return}}}else{var z=m("values");if(z&&z.length)m("dvalue");else{S.enabled=!1;return}}}}var l={sun:1,mon:2,tue:3,wed:4,thu:5,fri:6,sat:7};function _(w){if(typeof w=="string")return l[w.substr(0,3).toLowerCase()]}}}),I2=Ye({"src/plots/cartesian/position_defaults.js"(X,H){"use strict";var g=jo(),x=ta();H.exports=function(M,e,t,r){var o=r.counterAxes||[],a=r.overlayableAxes||[],i=r.letter,n=r.grid,s=r.overlayingDomain,c,h,v,p,T,l;n&&(h=n._domains[i][n._axisMap[e._id]],c=n._anchors[e._id],h&&(v=n[i+"side"].split(" ")[0],p=n.domain[i][v==="right"||v==="top"?1:0])),h=h||[0,1],c=c||(g(M.position)?"free":o[0]||"free"),v=v||(i==="x"?"bottom":"left"),p=p||0,T=0,l=!1;var _=x.coerce(M,e,{anchor:{valType:"enumerated",values:["free"].concat(o),dflt:c}},"anchor"),w=x.coerce(M,e,{side:{valType:"enumerated",values:i==="x"?["bottom","top"]:["left","right"],dflt:v}},"side");if(_==="free"){if(i==="y"){var S=t("autoshift");S&&(p=w==="left"?s[0]:s[1],l=e.automargin?e.automargin:!0,T=w==="left"?-3:3),t("shift",T)}t("position",p)}t("automargin",l);var E=!1;if(a.length&&(E=x.coerce(M,e,{overlaying:{valType:"enumerated",values:[!1].concat(a),dflt:!1}},"overlaying")),!E){var m=t("domain",h);m[0]>m[1]-1/4096&&(e.domain=h),x.noneOrAll(M.domain,e.domain,h),e.tickmode==="sync"&&(e.tickmode="auto")}return t("layer"),e}}}),WO=Ye({"src/plots/cartesian/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Qp().isUnifiedHover,M=yS(),e=cl(),t=Jy(),r=Vh(),o=FS(),a=R_(),i=Yg(),n=I2(),s=Xc(),c=s.id2name,h=s.name2id,v=wh().AX_ID_PATTERN,p=Hn(),T=p.traceIs,l=p.getComponentMethod;function _(w,S,E){Array.isArray(w[S])?w[S].push(E):w[S]=[E]}H.exports=function(S,E,m){var b=E.autotypenumbers,d={},u={},y={},f={},P={},L={},z={},F={},B={},O={},I,N;for(I=0;I<m.length;I++){var U=m[I];if(T(U,"cartesian")){var W;if(U.xaxis)W=c(U.xaxis),_(d,W,U);else if(U.xaxes)for(N=0;N<U.xaxes.length;N++)_(d,c(U.xaxes[N]),U);var Q;if(U.yaxis)Q=c(U.yaxis),_(d,Q,U);else if(U.yaxes)for(N=0;N<U.yaxes.length;N++)_(d,c(U.yaxes[N]),U);if(U.type==="funnel"?U.orientation==="h"?(W&&(u[W]=!0),Q&&(z[Q]=!0)):Q&&(y[Q]=!0):U.type==="image"?(Q&&(F[Q]=!0),W&&(F[W]=!0)):(Q&&(P[Q]=!0,L[Q]=!0),(!T(U,"carpet")||U.type==="carpet"&&!U._cheater)&&W&&(f[W]=!0)),U.type==="carpet"&&U._cheater&&W&&(u[W]=!0),T(U,"2dMap")&&(B[W]=!0,B[Q]=!0),T(U,"oriented")){var ue=U.orientation==="h"?Q:W;O[ue]=!0}}}var se=E._subplots,he=se.xaxis,G=se.yaxis,$=g.simpleMap(he,c),J=g.simpleMap(G,c),Z=$.concat(J),re=x.background;he.length&&G.length&&(re=g.coerce(S,E,t,"plot_bgcolor"));var ne=x.combine(re,E.paper_bgcolor),j,ee,ie,fe,be;function Ae(){var ke=d[j]||[];be._traceIndices=ke.map(function(Te){return Te.index}),be._annIndices=[],be._shapeIndices=[],be._selectionIndices=[],be._imgIndices=[],be._subplotsWith=[],be._counterAxes=[],be._name=be._attr=j,be._id=ee}function Be(ke,Te){return g.coerce(fe,be,r,ke,Te)}function Ie(ke,Te){return g.coerce2(fe,be,r,ke,Te)}function Ze(ke){return ke==="x"?G:he}function at(ke,Te){for(var Le=ke==="x"?$:J,rt=[],dt=0;dt<Le.length;dt++){var xt=Le[dt];xt!==Te&&!(S[xt]||{}).overlaying&&rt.push(h(xt))}return rt}var it={x:Ze("x"),y:Ze("y")},et=it.x.concat(it.y),lt={},Me=[];function ge(){var ke=fe.matches;v.test(ke)&&et.indexOf(ke)===-1&&(lt[ke]=fe.type,Me=Object.keys(lt))}var ce=M(S,E),ze=A(ce);for(I=0;I<Z.length;I++){j=Z[I],ee=h(j),ie=j.charAt(0),g.isPlainObject(S[j])||(S[j]={}),fe=S[j],be=e.newContainer(E,j,ie+"axis"),Ae();var tt=ie==="x"&&!f[j]&&u[j]||ie==="y"&&!P[j]&&y[j],nt=ie==="y"&&(!L[j]&&z[j]||F[j]),Qe={hasMinor:!0,letter:ie,font:E.font,outerTicks:B[j],showGrid:!O[j],data:d[j]||[],bgColor:ne,calendar:E.calendar,automargin:!0,visibleDflt:tt,reverseDflt:nt,autotypenumbersDflt:b,splomStash:((E._splomAxes||{})[ie]||{})[ee],noAutotickangles:ie==="y"};Be("uirevision",E.uirevision),o(fe,be,Be,Qe),a(fe,be,Be,Qe,E);var Ct=ze&&ie===ce.charAt(0),St=Ie("spikecolor",ze?be.color:void 0),Ot=Ie("spikethickness",ze?1.5:void 0),jt=Ie("spikedash",ze?"dot":void 0),ur=Ie("spikemode",ze?"across":void 0),ar=Ie("spikesnap"),Cr=Be("showspikes",!!Ct||!!St||!!Ot||!!jt||!!ur||!!ar);Cr||(delete be.spikecolor,delete be.spikethickness,delete be.spikedash,delete be.spikemode,delete be.spikesnap);var vr=c(fe.overlaying),_r=[0,1];if(E[vr]!==void 0){var yt=c(E[vr].anchor);E[yt]!==void 0&&(_r=E[yt].domain)}n(fe,be,Be,{letter:ie,counterAxes:it[ie],overlayableAxes:at(ie,j),grid:E.grid,overlayingDomain:_r}),Be("title.standoff"),ge(),be._input=fe}for(I=0;I<Me.length;){ee=Me[I++],j=c(ee),ie=j.charAt(0),g.isPlainObject(S[j])||(S[j]={}),fe=S[j],be=e.newContainer(E,j,ie+"axis"),Ae();var Fe={letter:ie,font:E.font,outerTicks:B[j],showGrid:!O[j],data:[],bgColor:ne,calendar:E.calendar,automargin:!0,visibleDflt:!1,reverseDflt:!1,autotypenumbersDflt:b,splomStash:((E._splomAxes||{})[ie]||{})[ee]};Be("uirevision",E.uirevision),be.type=lt[ee]||"linear",a(fe,be,Be,Fe,E),n(fe,be,Be,{letter:ie,counterAxes:it[ie],overlayableAxes:at(ie,j),grid:E.grid}),Be("fixedrange"),ge(),be._input=fe}var Ke=l("rangeslider","handleDefaults"),Ne=l("rangeselector","handleDefaults");for(I=0;I<$.length;I++)j=$[I],fe=S[j],be=E[j],Ke(S,E,j),be.type==="date"&&Ne(fe,be,E,J,be.calendar),Be("fixedrange");for(I=0;I<J.length;I++){j=J[I],fe=S[j],be=E[j];var Ee=E[c(be.anchor)],Ve=l("rangeslider","isVisible")(Ee);Be("fixedrange",Ve)}i.handleDefaults(S,E,{axIds:et.concat(Me).sort(s.idSort),axHasImage:F})}}}),ZO=Ye({"src/plots/cartesian/transition_axes.js"(X,H){"use strict";var g=_n(),x=Hn(),A=ta(),M=Bo(),e=Co();H.exports=function(r,o,a,i){var n=r._fullLayout;if(o.length===0){e.redrawComponents(r);return}function s(E){var m=E.xaxis,b=E.yaxis;n._defs.select("#"+E.clipId+"> rect").call(M.setTranslate,0,0).call(M.setScale,1,1),E.plot.call(M.setTranslate,m._offset,b._offset).call(M.setScale,1,1);var d=E.plot.selectAll(".scatterlayer .trace");d.selectAll(".point").call(M.setPointGroupScale,1,1),d.selectAll(".textpoint").call(M.setTextPointsScale,1,1),d.call(M.hideOutsideRangePoints,E)}function c(E,m){var b=E.plotinfo,d=b.xaxis,u=b.yaxis,y=d._length,f=u._length,P=!!E.xr1,L=!!E.yr1,z=[];if(P){var F=A.simpleMap(E.xr0,d.r2l),B=A.simpleMap(E.xr1,d.r2l),O=F[1]-F[0],I=B[1]-B[0];z[0]=(F[0]*(1-m)+m*B[0]-F[0])/(F[1]-F[0])*y,z[2]=y*(1-m+m*I/O),d.range[0]=d.l2r(F[0]*(1-m)+m*B[0]),d.range[1]=d.l2r(F[1]*(1-m)+m*B[1])}else z[0]=0,z[2]=y;if(L){var N=A.simpleMap(E.yr0,u.r2l),U=A.simpleMap(E.yr1,u.r2l),W=N[1]-N[0],Q=U[1]-U[0];z[1]=(N[1]*(1-m)+m*U[1]-N[1])/(N[0]-N[1])*f,z[3]=f*(1-m+m*Q/W),u.range[0]=d.l2r(N[0]*(1-m)+m*U[0]),u.range[1]=u.l2r(N[1]*(1-m)+m*U[1])}else z[1]=0,z[3]=f;e.drawOne(r,d,{skipTitle:!0}),e.drawOne(r,u,{skipTitle:!0}),e.redrawComponents(r,[d._id,u._id]);var ue=P?y/z[2]:1,se=L?f/z[3]:1,he=P?z[0]:0,G=L?z[1]:0,$=P?z[0]/z[2]*y:0,J=L?z[1]/z[3]*f:0,Z=d._offset-$,re=u._offset-J;b.clipRect.call(M.setTranslate,he,G).call(M.setScale,1/ue,1/se),b.plot.call(M.setTranslate,Z,re).call(M.setScale,ue,se),M.setPointGroupScale(b.zoomScalePts,1/ue,1/se),M.setTextPointsScale(b.zoomScaleTxt,1/ue,1/se)}var h;i&&(h=i());function v(){for(var E={},m=0;m<o.length;m++){var b=o[m],d=b.plotinfo.xaxis,u=b.plotinfo.yaxis;b.xr1&&(E[d._name+".range"]=b.xr1.slice()),b.yr1&&(E[u._name+".range"]=b.yr1.slice())}return h&&h(),x.call("relayout",r,E).then(function(){for(var y=0;y<o.length;y++)s(o[y].plotinfo)})}function p(){for(var E={},m=0;m<o.length;m++){var b=o[m],d=b.plotinfo.xaxis,u=b.plotinfo.yaxis;b.xr0&&(E[d._name+".range"]=b.xr0.slice()),b.yr0&&(E[u._name+".range"]=b.yr0.slice())}return x.call("relayout",r,E).then(function(){for(var y=0;y<o.length;y++)s(o[y].plotinfo)})}var T,l,_,w=g.ease(a.easing);r._transitionData._interruptCallbacks.push(function(){return window.cancelAnimationFrame(_),_=null,p()});function S(){l=Date.now();for(var E=Math.min(1,(l-T)/a.duration),m=w(E),b=0;b<o.length;b++)c(o[b],m);l-T>a.duration?(v(),_=window.cancelAnimationFrame(S)):_=window.requestAnimationFrame(S)}return T=Date.now(),_=window.requestAnimationFrame(S),Promise.resolve()}}}),Pf=Ye({"src/plots/cartesian/index.js"(X){"use strict";var H=_n(),g=Hn(),x=ta(),A=Gu(),M=Bo(),e=jh().getModuleCalcData,t=Xc(),r=wh(),o=vd(),a=x.ensureSingle;function i(T,l,_){return x.ensureSingle(T,l,_,function(w){w.datum(_)})}var n=r.zindexSeparator;X.name="cartesian",X.attr=["xaxis","yaxis"],X.idRoot=["x","y"],X.idRegex=r.idRegex,X.attrRegex=r.attrRegex,X.attributes=GO(),X.layoutAttributes=Vh(),X.supplyLayoutDefaults=WO(),X.transitionAxes=ZO(),X.finalizeSubplots=function(T,l){var _=l._subplots,w=_.xaxis,S=_.yaxis,E=_.cartesian,m=E,b={},d={},u,y,f;for(u=0;u<m.length;u++){var P=m[u].split("y");b[P[0]]=1,d["y"+P[1]]=1}for(u=0;u<w.length;u++)y=w[u],b[y]||(f=(T[t.id2name(y)]||{}).anchor,r.idRegex.y.test(f)||(f="y"),E.push(y+f),m.push(y+f),d[f]||(d[f]=1,x.pushUnique(S,f)));for(u=0;u<S.length;u++)f=S[u],d[f]||(y=(T[t.id2name(f)]||{}).anchor,r.idRegex.x.test(y)||(y="x"),E.push(y+f),m.push(y+f),b[y]||(b[y]=1,x.pushUnique(w,y)));if(!m.length){y="",f="";for(var L in T)if(r.attrRegex.test(L)){var z=L.charAt(0);z==="x"?(!y||+L.substr(5)<+y.substr(5))&&(y=L):(!f||+L.substr(5)<+f.substr(5))&&(f=L)}y=y?t.name2id(y):"x",f=f?t.name2id(f):"y",w.push(y),S.push(f),E.push(y+f)}},X.plot=function(T,l,_,w){var S=T._fullLayout,E=S._subplots.cartesian,m=T.calcdata,b;if(!Array.isArray(l))for(l=[],b=0;b<m.length;b++)l.push(b);for(var d=S._zindices,u=0;u<d.length;u++){var y=d[u];for(b=0;b<E.length;b++){var f=E[b],P=S._plots[f];if(u>0){var L=P.id;if(L.indexOf(n)!==-1)continue;L+=n+(u+1),P=x.extendFlat({},P,{id:L,plot:S._cartesianlayer.selectAll(".subplot").select("."+L)})}for(var z=[],F,B=0;B<m.length;B++){var O=m[B],I=O[0].trace;y===(I.zorder||0)&&I.xaxis+I.yaxis===f&&((l.indexOf(I.index)!==-1||I.carpet)&&(F&&F[0].trace.xaxis+F[0].trace.yaxis===f&&["tonextx","tonexty","tonext"].indexOf(I.fill)!==-1&&z.indexOf(F)===-1&&z.push(F),z.push(O)),F=O)}s(T,P,z,_,w)}}};function s(T,l,_,w,S){for(var E=r.traceLayerClasses,m=T._fullLayout,b=m._zindices,d=m._modules,u,y,f,P=[],L=[],z=0;z<b.length;z++)for(var F=b[z],B=0;B<d.length;B++){u=d[B];var O=u.name,I=g.modules[O].categories;if(I.svg){var N=u.layerName||O+"layer",U=N+(z?Number(z)+1:""),W=u.plot;y=e(_,W,F),f=y[0],_=y[1],f.length&&P.push({i:E.indexOf(N),zindex:z,className:U,plotMethod:W,cdModule:f}),I.zoomScale&&L.push("."+U)}}P.sort(function(se,he){return(se.zindex||0)-(he.zindex||0)||se.i-he.i});var Q=l.plot.selectAll("g.mlayer").data(P,function(se){return se.className});if(Q.enter().append("g").attr("class",function(se){return se.className}).classed("mlayer",!0).classed("rangeplot",l.isRangePlot),Q.exit().remove(),Q.order(),Q.each(function(se){var he=H.select(this),G=se.className;se.plotMethod(T,l,se.cdModule,he,w,S),r.clipOnAxisFalseQuery.indexOf("."+G)===-1&&M.setClipUrl(he,l.layerClipId,T)}),m._has("scattergl")&&(u=g.getModule("scattergl"),f=e(_,u)[0],u.plot(T,l,f)),!T._context.staticPlot&&(l._hasClipOnAxisFalse&&(l.clipOnAxisFalseTraces=l.plot.selectAll(r.clipOnAxisFalseQuery.join(",")).selectAll(".trace")),L.length)){var ue=l.plot.selectAll(L.join(",")).selectAll(".trace");l.zoomScalePts=ue.selectAll("path.point"),l.zoomScaleTxt=ue.selectAll(".textpoint")}}X.clean=function(T,l,_,w){var S=w._plots||{},E=l._plots||{},m=w._subplots||{},b,d,u;if(w._hasOnlyLargeSploms&&!l._hasOnlyLargeSploms)for(u in S)b=S[u],b.plotgroup&&b.plotgroup.remove();var y=w._has&&w._has("gl"),f=l._has&&l._has("gl");if(y&&!f)for(u in S)b=S[u],b._scene&&b._scene.destroy();if(m.xaxis&&m.yaxis){var P=t.listIds({_fullLayout:w});for(d=0;d<P.length;d++){var L=P[d];l[t.id2name(L)]||w._infolayer.selectAll(".g-"+L+"title").remove()}}var z=w._has&&w._has("cartesian"),F=l._has&&l._has("cartesian");if(z&&!F)v(w._cartesianlayer.selectAll(".subplot"),w),w._defs.selectAll(".axesclip").remove(),delete w._axisConstraintGroups,delete w._axisMatchGroups;else if(m.cartesian)for(d=0;d<m.cartesian.length;d++){var B=m.cartesian[d];if(B.indexOf(n)===-1&&!E[B]){var O="."+B+",."+B+"-x,."+B+"-y";w._cartesianlayer.selectAll(O).remove(),p(B,w)}}},X.drawFramework=function(T){var l=T._fullLayout,_=T.calcdata,w,S={};for(w=0;w<_.length;w++){var E=_[w][0],m=E.trace,b=m.zorder||0;S[b]||(S[b]=[]),S[b].push(E)}var d=Object.keys(S).map(Number).sort(x.sorterAsc);d.length||(d=[0]),l._zindices=d;var u=c(T),y=u.length,f=[];for(w=0;w<y;w++)f[w]=u[w].slice();for(var P=1;P<d.length;P++){var L=[];for(w=0;w<y;w++)L[w]=u[w].slice(),L[w][0]+=n+(P+1);f=f.concat(L)}var z=l._cartesianlayer.selectAll(".subplot").data(f,String);z.enter().append("g").attr("class",function(F){return"subplot "+F[0]}),z.order(),z.exit().call(v,l),z.each(function(F){var B=F[0],O=B.indexOf(n),I=O!==-1,N=I?B.slice(0,O):B,U=l._plots[B];U||(U=x.extendFlat({},l._plots[N]),U&&(U.id=B,l._plots[B]=U,l._subplots.cartesian.push(B))),U&&(U.plotgroup=H.select(this),h(T,U),I||(U.draglayer=a(l._draggers,"g",B)))})},X.rangePlot=function(T,l,_){h(T,l),s(T,l,_),A.style(T)};function c(T){var l=T._fullLayout,_=l._zindices.length,w=l._subplots.cartesian,S=w.length,E,m,b,d,u,y,f=[],P=[];for(E=0;E<S;E++){b=w[E],d=l._plots[b],u=d.xaxis,y=d.yaxis;var L=u._mainAxis,z=y._mainAxis,F=L._id+z._id,B=l._plots[F];d.overlays=[],F!==b&&B?(d.mainplot=F,d.mainplotinfo=B,P.push(b)):(d.mainplot=void 0,d.mainplotinfo=void 0,f.push(b))}for(E=0;E<P.length;E++)b=P[E],d=l._plots[b],d.mainplotinfo.overlays.push(d);var O=f.concat(P),I=[];for(E=0;E<S;E++){b=O[E],d=l._plots[b],u=d.xaxis,y=d.yaxis;for(var N=[],U=1;U<=_;U++){var W="";for(U>1&&(W+=n+U),N.push(b+W),m=0;m<d.overlays.length;m++)N.push(d.overlays[m].id+W)}N=N.concat([u.layer,y.layer,u.overlaying||"",y.overlaying||""]),I.push(N)}return I}function h(T,l){var _=T._fullLayout,w=l.plotgroup,S=l.id,E=S.indexOf(n),m=E!==-1,b=r.layerValue2layerClass[l.xaxis.layer],d=r.layerValue2layerClass[l.yaxis.layer],u=_._hasOnlyLargeSploms,y=_._zindices.length>1,f=l.mainplotinfo;if(!l.mainplot||y)if(u)l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.xaxislayer=a(w,"g","xaxislayer-above"),l.yaxislayer=a(w,"g","yaxislayer-above");else{if(!m){var P=a(w,"g","layer-subplot");l.shapelayer=a(P,"g","shapelayer"),l.imagelayer=a(P,"g","imagelayer"),f&&y?(l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer):(l.minorGridlayer=a(w,"g","minor-gridlayer"),l.gridlayer=a(w,"g","gridlayer"),l.zerolinelayer=a(w,"g","zerolinelayer"));var L=a(w,"g","layer-between");l.shapelayerBetween=a(L,"g","shapelayer"),l.imagelayerBetween=a(L,"g","imagelayer"),a(w,"path","xlines-below"),a(w,"path","ylines-below"),l.overlinesBelow=a(w,"g","overlines-below"),a(w,"g","xaxislayer-below"),a(w,"g","yaxislayer-below"),l.overaxesBelow=a(w,"g","overaxes-below")}l.overplot=a(w,"g","overplot"),l.plot=a(l.overplot,"g",S),m||(l.xlines=a(w,"path","xlines-above"),l.ylines=a(w,"path","ylines-above"),l.overlinesAbove=a(w,"g","overlines-above"),a(w,"g","xaxislayer-above"),a(w,"g","yaxislayer-above"),l.overaxesAbove=a(w,"g","overaxes-above"),l.xlines=w.select(".xlines-"+b),l.ylines=w.select(".ylines-"+d),l.xaxislayer=w.select(".xaxislayer-"+b),l.yaxislayer=w.select(".yaxislayer-"+d))}else{var z=f.plotgroup,F=S+"-x",B=S+"-y";l.minorGridlayer=f.minorGridlayer,l.gridlayer=f.gridlayer,l.zerolinelayer=f.zerolinelayer,a(f.overlinesBelow,"path",F),a(f.overlinesBelow,"path",B),a(f.overaxesBelow,"g",F),a(f.overaxesBelow,"g",B),l.plot=a(f.overplot,"g",S),a(f.overlinesAbove,"path",F),a(f.overlinesAbove,"path",B),a(f.overaxesAbove,"g",F),a(f.overaxesAbove,"g",B),l.xlines=z.select(".overlines-"+b).select("."+F),l.ylines=z.select(".overlines-"+d).select("."+B),l.xaxislayer=z.select(".overaxes-"+b).select("."+F),l.yaxislayer=z.select(".overaxes-"+d).select("."+B)}m||(u||(i(l.minorGridlayer,"g",l.xaxis._id),i(l.minorGridlayer,"g",l.yaxis._id),l.minorGridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort),i(l.gridlayer,"g",l.xaxis._id),i(l.gridlayer,"g",l.yaxis._id),l.gridlayer.selectAll("g").map(function(O){return O[0]}).sort(t.idSort)),l.xlines.style("fill","none").classed("crisp",!0),l.ylines.style("fill","none").classed("crisp",!0))}function v(T,l){if(T){var _={};T.each(function(d){var u=d[0],y=H.select(this);y.remove(),p(u,l),_[u]=!0});for(var w in l._plots)for(var S=l._plots[w],E=S.overlays||[],m=0;m<E.length;m++){var b=E[m];_[b.id]&&b.plot.selectAll(".trace").remove()}}}function p(T,l){l._draggers.selectAll("g."+T).remove(),l._defs.select("#clip"+l._uid+T+"plot").remove()}X.toSVG=function(T){var l=T._fullLayout._glimages,_=H.select(T).selectAll(".svg-container"),w=_.filter(function(E,m){return m===_.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function S(){var E=this,m=E.toDataURL("image/png"),b=l.append("svg:image");b.attr({xmlns:o.svg,"xlink:href":m,preserveAspectRatio:"none",x:0,y:0,width:E.style.width,height:E.style.height})}w.each(S)},X.updateFx=LS().updateFx}}),XO=Ye({"src/traces/scatter/index.js"(X,H){"use strict";var g=uu();H.exports={hasLines:g.hasLines,hasMarkers:g.hasMarkers,hasText:g.hasText,isBubble:g.isBubble,attributes:Pc(),layoutAttributes:g2(),supplyDefaults:jO(),crossTraceDefaults:RS(),supplyLayoutDefaults:VO(),calc:Bd().calc,crossTraceCalc:HO(),arraysToCalcdata:Av(),plot:o1(),colorbar:cp(),formatLabels:L2(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:l1(),selectPoints:u1(),animatable:!0,moduleType:"trace",name:"scatter",basePlotModule:Pf(),categories:["cartesian","svg","symbols","errorBarsOK","showLegend","scatter-like","zoomScale"],meta:{}}}}),YO=Ye({"src/components/annotations/draw_arrow_head.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ES(),M=ta(),e=M.strScale,t=M.strRotate,r=M.strTranslate;H.exports=function(a,i,n){var s=a.node(),c=A[n.arrowhead||0],h=A[n.startarrowhead||0],v=(n.arrowwidth||1)*(n.arrowsize||1),p=(n.arrowwidth||1)*(n.startarrowsize||1),T=i.indexOf("start")>=0,l=i.indexOf("end")>=0,_=c.backoff*v+n.standoff,w=h.backoff*p+n.startstandoff,S,E,m,b;if(s.nodeName==="line"){S={x:+a.attr("x1"),y:+a.attr("y1")},E={x:+a.attr("x2"),y:+a.attr("y2")};var d=S.x-E.x,u=S.y-E.y;if(m=Math.atan2(u,d),b=m+Math.PI,_&&w&&_+w>Math.sqrt(d*d+u*u)){W();return}if(_){if(_*_>d*d+u*u){W();return}var y=_*Math.cos(m),f=_*Math.sin(m);E.x+=y,E.y+=f,a.attr({x2:E.x,y2:E.y})}if(w){if(w*w>d*d+u*u){W();return}var P=w*Math.cos(m),L=w*Math.sin(m);S.x-=P,S.y-=L,a.attr({x1:S.x,y1:S.y})}}else if(s.nodeName==="path"){var z=s.getTotalLength(),F="";if(z<_+w){W();return}var B=s.getPointAtLength(0),O=s.getPointAtLength(.1);m=Math.atan2(B.y-O.y,B.x-O.x),S=s.getPointAtLength(Math.min(w,z)),F="0px,"+w+"px,";var I=s.getPointAtLength(z),N=s.getPointAtLength(z-.1);b=Math.atan2(I.y-N.y,I.x-N.x),E=s.getPointAtLength(Math.max(0,z-_));var U=F?w+_:_;F+=z-U+"px,"+z+"px",a.style("stroke-dasharray",F)}function W(){a.style("stroke-dasharray","0px,100px")}function Q(ue,se,he,G){ue.path&&(ue.noRotate&&(he=0),g.select(s.parentNode).append("path").attr({class:a.attr("class"),d:ue.path,transform:r(se.x,se.y)+t(he*180/Math.PI)+e(G)}).style({fill:x.rgb(n.arrowcolor),"stroke-width":0}))}T&&Q(h,S,m,p),l&&Q(c,E,b,v)}}}),R2=Ye({"src/components/annotations/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=ta(),e=M.strTranslate,t=Co(),r=Fn(),o=Bo(),a=Lc(),i=jl(),n=Kd(),s=bp(),c=cl().arrayEditor,h=YO();H.exports={draw:v,drawOne:p,drawRaw:l};function v(_){var w=_._fullLayout;w._infolayer.selectAll(".annotation").remove();for(var S=0;S<w.annotations.length;S++)w.annotations[S].visible&&p(_,S);return A.previousPromises(_)}function p(_,w){var S=_._fullLayout,E=S.annotations[w]||{},m=t.getFromId(_,E.xref),b=t.getFromId(_,E.yref);m&&m.setScale(),b&&b.setScale(),l(_,E,w,!1,m,b)}function T(_,w,S,E,m){var b=m[S],d=m[S+"ref"],u=S.indexOf("y")!==-1,y=t.getRefType(d)==="domain",f=u?E.h:E.w;return _?y?b+(u?-w:w)/_._length:_.p2r(_.r2p(b)+w):b+(u?-w:w)/f}function l(_,w,S,E,m,b){var d=_._fullLayout,u=_._fullLayout._size,y=_._context.edits,f,P;E?(f="annotation-"+E,P=E+".annotations"):(f="annotation",P="annotations");var L=c(_.layout,P,w),z=L.modifyBase,F=L.modifyItem,B=L.getUpdateObj;d._infolayer.selectAll("."+f+'[data-index="'+S+'"]').remove();var O="clip"+d._uid+"_ann"+S;if(!w._input||w.visible===!1){g.selectAll("#"+O).remove();return}var I={x:{},y:{}},N=+w.textangle||0,U=d._infolayer.append("g").classed(f,!0).attr("data-index",String(S)).style("opacity",w.opacity),W=U.append("g").classed("annotation-text-g",!0),Q=y[w.showarrow?"annotationTail":"annotationPosition"],ue=w.captureevents||y.annotationText||Q;function se(Ae){var Be={index:S,annotation:w._input,fullAnnotation:w,event:Ae};return E&&(Be.subplotId=E),Be}var he=W.append("g").style("pointer-events",ue?"all":null).call(n,"pointer").on("click",function(){_._dragging=!1,_.emit("plotly_clickannotation",se(g.event))});w.hovertext&&he.on("mouseover",function(){var Ae=w.hoverlabel,Be=Ae.font,Ie=this.getBoundingClientRect(),Ze=_.getBoundingClientRect();a.loneHover({x0:Ie.left-Ze.left,x1:Ie.right-Ze.left,y:(Ie.top+Ie.bottom)/2-Ze.top,text:w.hovertext,color:Ae.bgcolor,borderColor:Ae.bordercolor,fontFamily:Be.family,fontSize:Be.size,fontColor:Be.color,fontWeight:Be.weight,fontStyle:Be.style,fontVariant:Be.variant,fontShadow:Be.fontShadow,fontLineposition:Be.fontLineposition,fontTextcase:Be.fontTextcase},{container:d._hoverlayer.node(),outerContainer:d._paper.node(),gd:_})}).on("mouseout",function(){a.loneUnhover(d._hoverlayer.node())});var G=w.borderwidth,$=w.borderpad,J=G+$,Z=he.append("rect").attr("class","bg").style("stroke-width",G+"px").call(r.stroke,w.bordercolor).call(r.fill,w.bgcolor),re=w.width||w.height,ne=d._topclips.selectAll("#"+O).data(re?[0]:[]);ne.enter().append("clipPath").classed("annclip",!0).attr("id",O).append("rect"),ne.exit().remove();var j=w.font,ee=d._meta?M.templateString(w.text,d._meta):w.text,ie=he.append("text").classed("annotation-text",!0).text(ee);function fe(Ae){return Ae.call(o.font,j).attr({"text-anchor":{left:"start",right:"end"}[w.align]||"middle"}),i.convertToTspans(Ae,_,be),Ae}function be(){var Ae=ie.selectAll("a");if(Ae.size()===1&&Ae.text()===ie.text()){var Be=he.insert("a",":first-child").attr({"xlink:xlink:href":Ae.attr("xlink:href"),"xlink:xlink:show":Ae.attr("xlink:show")}).style({cursor:"pointer"});Be.node().appendChild(Z.node())}var Ie=he.select(".annotation-text-math-group"),Ze=!Ie.empty(),at=o.bBox((Ze?Ie:ie).node()),it=at.width,et=at.height,lt=w.width||it,Me=w.height||et,ge=Math.round(lt+2*J),ce=Math.round(Me+2*J);function ze(Ga,Ma){return Ma==="auto"&&(Ga<1/3?Ma="left":Ga>2/3?Ma="right":Ma="center"),{center:0,middle:0,left:.5,bottom:-.5,right:-.5,top:.5}[Ma]}for(var tt=!1,nt=["x","y"],Qe=0;Qe<nt.length;Qe++){var Ct=nt[Qe],St=w[Ct+"ref"]||Ct,Ot=w["a"+Ct+"ref"],jt={x:m,y:b}[Ct],ur=(N+(Ct==="x"?0:-90))*Math.PI/180,ar=ge*Math.cos(ur),Cr=ce*Math.sin(ur),vr=Math.abs(ar)+Math.abs(Cr),_r=w[Ct+"anchor"],yt=w[Ct+"shift"]*(Ct==="x"?1:-1),Fe=I[Ct],Ke,Ne,Ee,Ve,ke,Te=t.getRefType(St);if(jt&&Te!=="domain"){var Le=jt.r2fraction(w[Ct]);(Le<0||Le>1)&&(Ot===St?(Le=jt.r2fraction(w["a"+Ct]),(Le<0||Le>1)&&(tt=!0)):tt=!0),Ke=jt._offset+jt.r2p(w[Ct]),Ve=.5}else{var rt=Te==="domain";Ct==="x"?(Ee=w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.l+u.w*Ee):(Ee=1-w[Ct],Ke=rt?jt._offset+jt._length*Ee:Ke=u.t+u.h*Ee),Ve=w.showarrow?.5:Ee}if(w.showarrow){Fe.head=Ke;var dt=w["a"+Ct];if(ke=ar*ze(.5,w.xanchor)-Cr*ze(.5,w.yanchor),Ot===St){var xt=t.getRefType(Ot);xt==="domain"?(Ct==="y"&&(dt=1-dt),Fe.tail=jt._offset+jt._length*dt):xt==="paper"?Ct==="y"?(dt=1-dt,Fe.tail=u.t+u.h*dt):Fe.tail=u.l+u.w*dt:Fe.tail=jt._offset+jt.r2p(dt),Ne=ke}else Fe.tail=Ke+dt,Ne=ke+dt;Fe.text=Fe.tail+ke;var It=d[Ct==="x"?"width":"height"];if(St==="paper"&&(Fe.head=M.constrain(Fe.head,1,It-1)),Ot==="pixel"){var Bt=-Math.max(Fe.tail-3,Fe.text),Gt=Math.min(Fe.tail+3,Fe.text)-It;Bt>0?(Fe.tail+=Bt,Fe.text+=Bt):Gt>0&&(Fe.tail-=Gt,Fe.text-=Gt)}Fe.tail+=yt,Fe.head+=yt}else ke=vr*ze(Ve,_r),Ne=ke,Fe.text=Ke+ke;Fe.text+=yt,ke+=yt,Ne+=yt,w["_"+Ct+"padplus"]=vr/2+Ne,w["_"+Ct+"padminus"]=vr/2-Ne,w["_"+Ct+"size"]=vr,w["_"+Ct+"shift"]=ke}if(tt){he.remove();return}var Kt=0,sr=0;if(w.align!=="left"&&(Kt=(lt-it)*(w.align==="center"?.5:1)),w.valign!=="top"&&(sr=(Me-et)*(w.valign==="middle"?.5:1)),Ze)Ie.select("svg").attr({x:J+Kt-1,y:J+sr}).call(o.setClipUrl,re?O:null,_);else{var sa=J+sr-at.top,Aa=J+Kt-at.left;ie.call(i.positionText,Aa,sa).call(o.setClipUrl,re?O:null,_)}ne.select("rect").call(o.setRect,J,J,lt,Me),Z.call(o.setRect,G/2,G/2,ge-G,ce-G),he.call(o.setTranslate,Math.round(I.x.text-ge/2),Math.round(I.y.text-ce/2)),W.attr({transform:"rotate("+N+","+I.x.text+","+I.y.text+")"});var La=function(Ga,Ma){U.selectAll(".annotation-arrow-g").remove();var Ua=I.x.head,ni=I.y.head,Wt=I.x.tail+Ga,zt=I.y.tail+Ma,Vt=I.x.text+Ga,Ut=I.y.text+Ma,xr=M.rotationXYMatrix(N,Vt,Ut),Zr=M.apply2DTransform(xr),pa=M.apply2DTransform2(xr),Xr=+Z.attr("width"),Ea=+Z.attr("height"),Fa=Vt-.5*Xr,qa=Fa+Xr,ya=Ut-.5*Ea,$a=ya+Ea,mt=[[Fa,ya,Fa,$a],[Fa,$a,qa,$a],[qa,$a,qa,ya],[qa,ya,Fa,ya]].map(pa);if(!mt.reduce(function(kt,ir){return kt^!!M.segmentsIntersect(Ua,ni,Ua+1e6,ni+1e6,ir[0],ir[1],ir[2],ir[3])},!1)){mt.forEach(function(kt){var ir=M.segmentsIntersect(Wt,zt,Ua,ni,kt[0],kt[1],kt[2],kt[3]);ir&&(Wt=ir.x,zt=ir.y)});var gt=w.arrowwidth,Er=w.arrowcolor,kr=w.arrowside,br=U.append("g").style({opacity:r.opacity(Er)}).classed("annotation-arrow-g",!0),Tr=br.append("path").attr("d","M"+Wt+","+zt+"L"+Ua+","+ni).style("stroke-width",gt+"px").call(r.stroke,r.rgb(Er));if(h(Tr,kr,w),y.annotationPosition&&Tr.node().parentNode&&!E){var Mr=Ua,Fr=ni;if(w.standoff){var Lr=Math.sqrt(Math.pow(Ua-Wt,2)+Math.pow(ni-zt,2));Mr+=w.standoff*(Wt-Ua)/Lr,Fr+=w.standoff*(zt-ni)/Lr}var Jr=br.append("path").classed("annotation-arrow",!0).classed("anndrag",!0).classed("cursor-move",!0).attr({d:"M3,3H-3V-3H3ZM0,0L"+(Wt-Mr)+","+(zt-Fr),transform:e(Mr,Fr)}).style("stroke-width",gt+6+"px").call(r.stroke,"rgba(0,0,0,0)").call(r.fill,"rgba(0,0,0,0)"),oa,ca;s.init({element:Jr.node(),gd:_,prepFn:function(){var kt=o.getTranslate(he);oa=kt.x,ca=kt.y,m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0)},moveFn:function(kt,ir){var mr=Zr(oa,ca),$r=mr[0]+kt,ma=mr[1]+ir;he.call(o.setTranslate,$r,ma),F("x",T(m,kt,"x",u,w)),F("y",T(b,ir,"y",u,w)),w.axref===w.xref&&F("ax",T(m,kt,"ax",u,w)),w.ayref===w.yref&&F("ay",T(b,ir,"ay",u,w)),br.attr("transform",e(kt,ir)),W.attr({transform:"rotate("+N+","+$r+","+ma+")"})},doneFn:function(){x.call("_guiRelayout",_,B());var kt=document.querySelector(".js-notes-box-panel");kt&&kt.redraw(kt.selectedObj)}})}}};if(w.showarrow&&La(0,0),Q){var ka;s.init({element:he.node(),gd:_,prepFn:function(){ka=W.attr("transform")},moveFn:function(Ga,Ma){var Ua="pointer";if(w.showarrow)w.axref===w.xref?F("ax",T(m,Ga,"ax",u,w)):F("ax",w.ax+Ga),w.ayref===w.yref?F("ay",T(b,Ma,"ay",u.w,w)):F("ay",w.ay+Ma),La(Ga,Ma);else{if(E)return;var ni,Wt;if(m)ni=T(m,Ga,"x",u,w);else{var zt=w._xsize/u.w,Vt=w.x+(w._xshift-w.xshift)/u.w-zt/2;ni=s.align(Vt+Ga/u.w,zt,0,1,w.xanchor)}if(b)Wt=T(b,Ma,"y",u,w);else{var Ut=w._ysize/u.h,xr=w.y-(w._yshift+w.yshift)/u.h-Ut/2;Wt=s.align(xr-Ma/u.h,Ut,0,1,w.yanchor)}F("x",ni),F("y",Wt),(!m||!b)&&(Ua=s.getCursor(m?.5:ni,b?.5:Wt,w.xanchor,w.yanchor))}W.attr({transform:e(Ga,Ma)+ka}),n(he,Ua)},clickFn:function(Ga,Ma){w.captureevents&&_.emit("plotly_clickannotation",se(Ma))},doneFn:function(){n(he),x.call("_guiRelayout",_,B());var Ga=document.querySelector(".js-notes-box-panel");Ga&&Ga.redraw(Ga.selectedObj)}})}}y.annotationText?ie.call(i.makeEditable,{delegate:he,gd:_}).call(fe).on("edit",function(Ae){w.text=Ae,this.call(fe),F("text",Ae),m&&m.autorange&&z(m._name+".autorange",!0),b&&b.autorange&&z(b._name+".autorange",!0),x.call("_guiRelayout",_,B())}):ie.call(fe)}}}),KO=Ye({"src/components/annotations/click.js"(X,H){"use strict";var g=ta(),x=Hn(),A=cl().arrayEditor;H.exports={hasClickToShow:M,onClick:e};function M(o,a){var i=t(o,a);return i.on.length>0||i.explicitOff.length>0}function e(o,a){var i=t(o,a),n=i.on,s=i.off.concat(i.explicitOff),c={},h=o._fullLayout.annotations,v,p;if(n.length||s.length){for(v=0;v<n.length;v++)p=A(o.layout,"annotations",h[n[v]]),p.modifyItem("visible",!0),g.extendFlat(c,p.getUpdateObj());for(v=0;v<s.length;v++)p=A(o.layout,"annotations",h[s[v]]),p.modifyItem("visible",!1),g.extendFlat(c,p.getUpdateObj());return x.call("update",o,{},c)}}function t(o,a){var i=o._fullLayout.annotations,n=[],s=[],c=[],h=(a||[]).length,v,p,T,l,_,w,S,E;for(v=0;v<i.length;v++)if(T=i[v],l=T.clicktoshow,l){for(p=0;p<h;p++)if(_=a[p],w=_.xaxis,S=_.yaxis,w._id===T.xref&&S._id===T.yref&&w.d2r(_.x)===r(T._xclick,w)&&S.d2r(_.y)===r(T._yclick,S)){T.visible?l==="onout"?E=s:E=c:E=n,E.push(v);break}p===h&&T.visible&&l==="onout"&&s.push(v)}return{on:n,off:s,explicitOff:c}}function r(o,a){return a.type==="log"?a.l2r(o):a.d2r(o)}}}),OS=Ye({"src/components/annotations/common_defaults.js"(X,H){"use strict";var g=ta(),x=Fn();H.exports=function(M,e,t,r){r("opacity");var o=r("bgcolor"),a=r("bordercolor"),i=x.opacity(a);r("borderpad");var n=r("borderwidth"),s=r("showarrow");r("text",s?" ":t._dfltTitle.annotation),r("textangle"),g.coerceFont(r,"font",t.font),r("width"),r("align");var c=r("height");if(c&&r("valign"),s){var h=r("arrowside"),v,p;h.indexOf("end")!==-1&&(v=r("arrowhead"),p=r("arrowsize")),h.indexOf("start")!==-1&&(r("startarrowhead",v),r("startarrowsize",p)),r("arrowcolor",i?e.bordercolor:x.defaultLine),r("arrowwidth",(i&&n||1)*2),r("standoff"),r("startstandoff")}var T=r("hovertext"),l=t.hoverlabel||{};if(T){var _=r("hoverlabel.bgcolor",l.bgcolor||(x.opacity(o)?x.rgb(o):x.defaultLine)),w=r("hoverlabel.bordercolor",l.bordercolor||x.contrast(_)),S=g.extendFlat({},l.font);S.color||(S.color=w),g.coerceFont(r,"hoverlabel.font",S)}r("captureevents",!!T)}}}),JO=Ye({"src/components/annotations/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=OS(),e=Kg();H.exports=function(o,a){A(o,a,{name:"annotations",handleItemDefaults:t})};function t(r,o,a){function i(u,y){return g.coerce(r,o,e,u,y)}var n=i("visible"),s=i("clicktoshow");if(n||s){M(r,o,a,i);for(var c=o.showarrow,h=["x","y"],v=[-10,-30],p={_fullLayout:a},T=0;T<2;T++){var l=h[T],_=x.coerceRef(r,o,p,l,"","paper");if(_!=="paper"){var w=x.getFromId(p,_);w._annIndices.push(o._index)}if(x.coercePosition(o,p,i,_,l,.5),c){var S="a"+l,E=x.coerceRef(r,o,p,S,"pixel",["pixel","paper"]);E!=="pixel"&&E!==_&&(E=o[S]="pixel");var m=E==="pixel"?v[T]:.4;x.coercePosition(o,p,i,E,S,m)}i(l+"anchor"),i(l+"shift")}if(g.noneOrAll(r,o,["x","y"]),c&&g.noneOrAll(r,o,["ax","ay"]),s){var b=i("xclick"),d=i("yclick");o._xclick=b===void 0?o.x:x.cleanPosition(b,p,o.xref),o._yclick=d===void 0?o.y:x.cleanPosition(d,p,o.yref)}}}}}),$O=Ye({"src/components/annotations/calc_autorange.js"(X,H){"use strict";var g=ta(),x=Co(),A=R2().draw;H.exports=function(r){var o=r._fullLayout,a=g.filterVisible(o.annotations);if(a.length&&r._fullData.length)return g.syncOrAsync([A,M],r)};function M(t){var r=t._fullLayout;g.filterVisible(r.annotations).forEach(function(o){var a=x.getFromId(t,o.xref),i=x.getFromId(t,o.yref),n=x.getRefType(o.xref),s=x.getRefType(o.yref);o._extremes={},n==="range"&&e(o,a),s==="range"&&e(o,i)})}function e(t,r){var o=r._id,a=o.charAt(0),i=t[a],n=t["a"+a],s=t[a+"ref"],c=t["a"+a+"ref"],h=t["_"+a+"padplus"],v=t["_"+a+"padminus"],p={x:1,y:-1}[a]*t[a+"shift"],T=3*t.arrowsize*t.arrowwidth||0,l=T+p,_=T-p,w=3*t.startarrowsize*t.arrowwidth||0,S=w+p,E=w-p,m;if(c===s){var b=x.findExtremes(r,[r.r2c(i)],{ppadplus:l,ppadminus:_}),d=x.findExtremes(r,[r.r2c(n)],{ppadplus:Math.max(h,S),ppadminus:Math.max(v,E)});m={min:[b.min[0],d.min[0]],max:[b.max[0],d.max[0]]}}else S=n?S+n:S,E=n?E-n:E,m=x.findExtremes(r,[r.r2c(i)],{ppadplus:Math.max(h,l,S),ppadminus:Math.max(v,_,E)});t._extremes[o]=m}}}),QO=Ye({"src/components/annotations/convert_coords.js"(X,H){"use strict";var g=jo(),x=c2();H.exports=function(M,e,t,r){e=e||{};var o=t==="log"&&e.type==="linear",a=t==="linear"&&e.type==="log";if(!(o||a))return;var i=M._fullLayout.annotations,n=e._id.charAt(0),s,c;function h(p){var T=s[p],l=null;o?l=x(T,e.range):l=Math.pow(10,T),g(l)||(l=null),r(c+p,l)}for(var v=0;v<i.length;v++)s=i[v],c="annotations["+v+"].",s[n+"ref"]===e._id&&h(n),s["a"+n+"ref"]===e._id&&h("a"+n)}}}),eB=Ye({"src/components/annotations/index.js"(X,H){"use strict";var g=R2(),x=KO();H.exports={moduleType:"component",name:"annotations",layoutAttributes:Kg(),supplyLayoutDefaults:JO(),includeBasePlot:P_()("annotations"),calcAutorange:$O(),draw:g.draw,drawOne:g.drawOne,drawRaw:g.drawRaw,hasClickToShow:x.hasClickToShow,onClick:x.onClick,convertCoords:QO()}}}),D2=Ye({"src/components/annotations3d/attributes.js"(X,H){"use strict";var g=Kg(),x=Ou().overrideAll,A=cl().templatedArray;H.exports=x(A("annotation",{visible:g.visible,x:{valType:"any"},y:{valType:"any"},z:{valType:"any"},ax:{valType:"number"},ay:{valType:"number"},xanchor:g.xanchor,xshift:g.xshift,yanchor:g.yanchor,yshift:g.yshift,text:g.text,textangle:g.textangle,font:g.font,width:g.width,height:g.height,opacity:g.opacity,align:g.align,valign:g.valign,bgcolor:g.bgcolor,bordercolor:g.bordercolor,borderpad:g.borderpad,borderwidth:g.borderwidth,showarrow:g.showarrow,arrowcolor:g.arrowcolor,arrowhead:g.arrowhead,startarrowhead:g.startarrowhead,arrowside:g.arrowside,arrowsize:g.arrowsize,startarrowsize:g.startarrowsize,arrowwidth:g.arrowwidth,standoff:g.standoff,startstandoff:g.startstandoff,hovertext:g.hovertext,hoverlabel:g.hoverlabel,captureevents:g.captureevents}),"calc","from-root")}}),tB=Ye({"src/components/annotations3d/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=OS(),e=D2();H.exports=function(o,a,i){A(o,a,{name:"annotations",handleItemDefaults:t,fullLayout:i.fullLayout})};function t(r,o,a,i){function n(h,v){return g.coerce(r,o,e,h,v)}function s(h){var v=h+"axis",p={_fullLayout:{}};return p._fullLayout[v]=a[v],x.coercePosition(o,p,n,h,h,.5)}var c=n("visible");c&&(M(r,o,i.fullLayout,n),s("x"),s("y"),s("z"),g.noneOrAll(r,o,["x","y","z"]),o.xref="x",o.yref="y",o.zref="z",n("xanchor"),n("yanchor"),n("xshift"),n("yshift"),o.showarrow&&(o.axref="pixel",o.ayref="pixel",n("ax",-10),n("ay",-30),g.noneOrAll(r,o,["ax","ay"])))}}}),rB=Ye({"src/components/annotations3d/convert.js"(X,H){"use strict";var g=ta(),x=Co();H.exports=function(e){for(var t=e.fullSceneLayout,r=t.annotations,o=0;o<r.length;o++)A(r[o],e);e.fullLayout._infolayer.selectAll(".annotation-"+e.id).remove()};function A(M,e){var t=e.fullSceneLayout,r=t.domain,o=e.fullLayout._size,a={pdata:null,type:"linear",autorange:!1,range:[-1/0,1/0]};M._xa={},g.extendFlat(M._xa,a),x.setConvert(M._xa),M._xa._offset=o.l+r.x[0]*o.w,M._xa.l2p=function(){return .5*(1+M._pdata[0]/M._pdata[3])*o.w*(r.x[1]-r.x[0])},M._ya={},g.extendFlat(M._ya,a),x.setConvert(M._ya),M._ya._offset=o.t+(1-r.y[1])*o.h,M._ya.l2p=function(){return .5*(1-M._pdata[1]/M._pdata[3])*o.h*(r.y[1]-r.y[0])}}}}),BS=Ye({"src/plots/gl3d/project.js"(X,H){"use strict";function g(A,M){var e=[0,0,0,0],t,r;for(t=0;t<4;++t)for(r=0;r<4;++r)e[r]+=A[4*t+r]*M[t];return e}function x(A,M){var e=g(A.projection,g(A.view,g(A.model,[M[0],M[1],M[2],1])));return e}H.exports=x}}),aB=Ye({"src/components/annotations3d/draw.js"(X,H){"use strict";var g=R2().drawRaw,x=BS(),A=["x","y","z"];H.exports=function(e){for(var t=e.fullSceneLayout,r=e.dataScale,o=t.annotations,a=0;a<o.length;a++){for(var i=o[a],n=!1,s=0;s<3;s++){var c=A[s],h=i[c],v=t[c+"axis"],p=v.r2fraction(h);if(p<0||p>1){n=!0;break}}n?e.fullLayout._infolayer.select(".annotation-"+e.id+'[data-index="'+a+'"]').remove():(i._pdata=x(e.glplot.cameraParams,[t.xaxis.r2l(i.x)*r[0],t.yaxis.r2l(i.y)*r[1],t.zaxis.r2l(i.z)*r[2]]),g(e.graphDiv,i,a,e.id,i._xa,i._ya))}}}}),iB=Ye({"src/components/annotations3d/index.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports={moduleType:"component",name:"annotations3d",schema:{subplots:{scene:{annotations:D2()}}},layoutAttributes:D2(),handleDefaults:tB(),includeBasePlot:A,convert:rB(),draw:aB()};function A(M,e){var t=g.subplotsRegistry.gl3d;if(t)for(var r=t.attrRegex,o=Object.keys(M),a=0;a<o.length;a++){var i=o[a];r.test(i)&&(M[i].annotations||[]).length&&(x.pushUnique(e._basePlotModules,t),x.pushUnique(e._subplots.gl3d,i))}}}}),NS=Ye({"src/components/shapes/attributes.js"(X,H){"use strict";var g=Kg(),x=Au(),A=Pc().line,M=Uh().dash,e=Oo().extendFlat,t=cl().templatedArray,r=L_(),o=Pl(),a=xs().shapeTexttemplateAttrs,i=p2();H.exports=t("shape",{visible:e({},o.visible,{editType:"calc+arraydraw"}),showlegend:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},legend:e({},o.legend,{editType:"calc+arraydraw"}),legendgroup:e({},o.legendgroup,{editType:"calc+arraydraw"}),legendgrouptitle:{text:e({},o.legendgrouptitle.text,{editType:"calc+arraydraw"}),font:x({editType:"calc+arraydraw"}),editType:"calc+arraydraw"},legendrank:e({},o.legendrank,{editType:"calc+arraydraw"}),legendwidth:e({},o.legendwidth,{editType:"calc+arraydraw"}),type:{valType:"enumerated",values:["circle","rect","path","line"],editType:"calc+arraydraw"},layer:{valType:"enumerated",values:["below","above","between"],dflt:"above",editType:"arraydraw"},xref:e({},g.xref,{}),xsizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},xanchor:{valType:"any",editType:"calc+arraydraw"},x0:{valType:"any",editType:"calc+arraydraw"},x1:{valType:"any",editType:"calc+arraydraw"},x0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},x1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},yref:e({},g.yref,{}),ysizemode:{valType:"enumerated",values:["scaled","pixel"],dflt:"scaled",editType:"calc+arraydraw"},yanchor:{valType:"any",editType:"calc+arraydraw"},y0:{valType:"any",editType:"calc+arraydraw"},y1:{valType:"any",editType:"calc+arraydraw"},y0shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},y1shift:{valType:"number",dflt:0,min:-1,max:1,editType:"calc"},path:{valType:"string",editType:"calc+arraydraw"},opacity:{valType:"number",min:0,max:1,dflt:1,editType:"arraydraw"},line:{color:e({},A.color,{editType:"arraydraw"}),width:e({},A.width,{editType:"calc+arraydraw"}),dash:e({},M,{editType:"arraydraw"}),editType:"calc+arraydraw"},fillcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"arraydraw"},fillrule:{valType:"enumerated",values:["evenodd","nonzero"],dflt:"evenodd",editType:"arraydraw"},editable:{valType:"boolean",dflt:!1,editType:"calc+arraydraw"},label:{text:{valType:"string",dflt:"",editType:"arraydraw"},texttemplate:a({},{keys:Object.keys(i)}),font:x({editType:"calc+arraydraw",colorEditType:"arraydraw"}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right","start","middle","end"],editType:"arraydraw"},textangle:{valType:"angle",dflt:"auto",editType:"calc+arraydraw"},xanchor:{valType:"enumerated",values:["auto","left","center","right"],dflt:"auto",editType:"calc+arraydraw"},yanchor:{valType:"enumerated",values:["top","middle","bottom"],editType:"calc+arraydraw"},padding:{valType:"number",dflt:3,min:0,editType:"arraydraw"},editType:"arraydraw"},editType:"arraydraw"})}}),nB=Ye({"src/components/shapes/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=NS(),e=rg();H.exports=function(a,i){A(a,i,{name:"shapes",handleItemDefaults:r})};function t(o,a){return o?"bottom":a.indexOf("top")!==-1?"top":a.indexOf("bottom")!==-1?"bottom":"middle"}function r(o,a,i){function n(G,$){return g.coerce(o,a,M,G,$)}a._isShape=!0;var s=n("visible");if(s){var c=n("showlegend");c&&(n("legend"),n("legendwidth"),n("legendgroup"),n("legendgrouptitle.text"),g.coerceFont(n,"legendgrouptitle.font"),n("legendrank"));var h=n("path"),v=h?"path":"rect",p=n("type",v),T=p!=="path";T&&delete a.path,n("editable"),n("layer"),n("opacity"),n("fillcolor"),n("fillrule");var l=n("line.width");l&&(n("line.color"),n("line.dash"));for(var _=n("xsizemode"),w=n("ysizemode"),S=["x","y"],E=0;E<2;E++){var m=S[E],b=m+"anchor",d=m==="x"?_:w,u={_fullLayout:i},y,f,P,L=x.coerceRef(o,a,u,m,void 0,"paper"),z=x.getRefType(L);if(z==="range"?(y=x.getFromId(u,L),y._shapeIndices.push(a._index),P=e.rangeToShapePosition(y),f=e.shapePositionToRange(y),(y.type==="category"||y.type==="multicategory")&&(n(m+"0shift"),n(m+"1shift"))):f=P=g.identity,T){var F=.25,B=.75,O=m+"0",I=m+"1",N=o[O],U=o[I];o[O]=f(o[O],!0),o[I]=f(o[I],!0),d==="pixel"?(n(O,0),n(I,10)):(x.coercePosition(a,u,n,L,O,F),x.coercePosition(a,u,n,L,I,B)),a[O]=P(a[O]),a[I]=P(a[I]),o[O]=N,o[I]=U}if(d==="pixel"){var W=o[b];o[b]=f(o[b],!0),x.coercePosition(a,u,n,L,b,.25),a[b]=P(a[b]),o[b]=W}}T&&g.noneOrAll(o,a,["x0","x1","y0","y1"]);var Q=p==="line",ue,se;if(T&&(ue=n("label.texttemplate")),ue||(se=n("label.text")),se||ue){n("label.textangle");var he=n("label.textposition",Q?"middle":"middle center");n("label.xanchor"),n("label.yanchor",t(Q,he)),n("label.padding"),g.coerceFont(n,"label.font",i.font)}}}}}),oB=Ye({"src/components/shapes/draw_newshape/defaults.js"(X,H){"use strict";var g=Fn(),x=ta();function A(M,e){return M?"bottom":e.indexOf("top")!==-1?"top":e.indexOf("bottom")!==-1?"bottom":"middle"}H.exports=function(e,t,r){r("newshape.visible"),r("newshape.name"),r("newshape.showlegend"),r("newshape.legend"),r("newshape.legendwidth"),r("newshape.legendgroup"),r("newshape.legendgrouptitle.text"),x.coerceFont(r,"newshape.legendgrouptitle.font"),r("newshape.legendrank"),r("newshape.drawdirection"),r("newshape.layer"),r("newshape.fillcolor"),r("newshape.fillrule"),r("newshape.opacity");var o=r("newshape.line.width");if(o){var a=(e||{}).plot_bgcolor||"#FFF";r("newshape.line.color",g.contrast(a)),r("newshape.line.dash")}var i=e.dragmode==="drawline",n=r("newshape.label.text"),s=r("newshape.label.texttemplate");if(n||s){r("newshape.label.textangle");var c=r("newshape.label.textposition",i?"middle":"middle center");r("newshape.label.xanchor"),r("newshape.label.yanchor",A(i,c)),r("newshape.label.padding"),x.coerceFont(r,"newshape.label.font",t.font)}r("activeshape.fillcolor"),r("activeshape.opacity")}}}),sB=Ye({"src/components/shapes/calc_autorange.js"(X,H){"use strict";var g=ta(),x=Co(),A=E_(),M=rg();H.exports=function(i){var n=i._fullLayout,s=g.filterVisible(n.shapes);if(!(!s.length||!i._fullData.length))for(var c=0;c<s.length;c++){var h=s[c];h._extremes={};var v,p,T=x.getRefType(h.xref),l=x.getRefType(h.yref);h.xref!=="paper"&&T!=="domain"&&(v=x.getFromId(i,h.xref),p=o(v,h,A.paramIsX),p&&(h._extremes[v._id]=x.findExtremes(v,p,e(h)))),h.yref!=="paper"&&l!=="domain"&&(v=x.getFromId(i,h.yref),p=o(v,h,A.paramIsY),p&&(h._extremes[v._id]=x.findExtremes(v,p,t(h))))}};function e(a){return r(a.line.width,a.xsizemode,a.x0,a.x1,a.path,!1)}function t(a){return r(a.line.width,a.ysizemode,a.y0,a.y1,a.path,!0)}function r(a,i,n,s,c,h){var v=a/2,p=h;if(i==="pixel"){var T=c?M.extractPathCoords(c,h?A.paramIsY:A.paramIsX):[n,s],l=g.aggNums(Math.max,null,T),_=g.aggNums(Math.min,null,T),w=_<0?Math.abs(_)+v:v,S=l>0?l+v:v;return{ppad:v,ppadplus:p?w:S,ppadminus:p?S:w}}else return{ppad:v}}function o(a,i,n){var s=a._id.charAt(0)==="x"?"x":"y",c=a.type==="category"||a.type==="multicategory",h,v,p=0,T=0,l=c?a.r2c:a.d2c,_=i[s+"sizemode"]==="scaled";if(_?(h=i[s+"0"],v=i[s+"1"],c&&(p=i[s+"0shift"],T=i[s+"1shift"])):(h=i[s+"anchor"],v=i[s+"anchor"]),h!==void 0)return[l(h)+p,l(v)+T];if(i.path){var w=1/0,S=-1/0,E=i.path.match(A.segmentRE),m,b,d,u,y;for(a.type==="date"&&(l=M.decodeDate(l)),m=0;m<E.length;m++)b=E[m],d=n[b.charAt(0)].drawn,d!==void 0&&(u=E[m].substr(1).match(A.paramRE),!(!u||u.length<d)&&(y=l(u[d]),y<w&&(w=y),y>S&&(S=y)));if(S>=w)return[w,S]}}}}),lB=Ye({"src/components/shapes/index.js"(X,H){"use strict";var g=M2();H.exports={moduleType:"component",name:"shapes",layoutAttributes:NS(),supplyLayoutDefaults:nB(),supplyDrawNewShapeDefaults:oB(),includeBasePlot:P_()("shapes"),calcAutorange:sB(),draw:g.draw,drawOne:g.drawOne}}}),US=Ye({"src/components/images/attributes.js"(X,H){"use strict";var g=wh(),x=cl().templatedArray,A=L_();H.exports=x("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",g.idRegex.x.toString()],dflt:"paper",editType:"arraydraw"},yref:{valType:"enumerated",values:["paper",g.idRegex.y.toString()],dflt:"paper",editType:"arraydraw"},editType:"arraydraw"})}}),uB=Ye({"src/components/images/defaults.js"(X,H){"use strict";var g=ta(),x=Co(),A=up(),M=US(),e="images";H.exports=function(o,a){var i={name:e,handleItemDefaults:t};A(o,a,i)};function t(r,o,a){function i(_,w){return g.coerce(r,o,M,_,w)}var n=i("source"),s=i("visible",!!n);if(!s)return o;i("layer"),i("xanchor"),i("yanchor"),i("sizex"),i("sizey"),i("sizing"),i("opacity");for(var c={_fullLayout:a},h=["x","y"],v=0;v<2;v++){var p=h[v],T=x.coerceRef(r,o,c,p,"paper",void 0);if(T!=="paper"){var l=x.getFromId(c,T);l._imgIndices.push(o._index)}x.coercePosition(o,c,i,T,p,0)}return o}}}),cB=Ye({"src/components/images/draw.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Co(),M=Xc(),e=vd();H.exports=function(r){var o=r._fullLayout,a=[],i={},n=[],s,c;for(c=0;c<o.images.length;c++){var h=o.images[c];if(h.visible)if(h.layer==="below"&&h.xref!=="paper"&&h.yref!=="paper"){s=M.ref2id(h.xref)+M.ref2id(h.yref);var v=o._plots[s];if(!v){n.push(h);continue}v.mainplot&&(s=v.mainplot.id),i[s]||(i[s]=[]),i[s].push(h)}else h.layer==="above"?a.push(h):n.push(h)}var p={x:{left:{sizing:"xMin",offset:0},center:{sizing:"xMid",offset:-1/2},right:{sizing:"xMax",offset:-1}},y:{top:{sizing:"YMin",offset:0},middle:{sizing:"YMid",offset:-1/2},bottom:{sizing:"YMax",offset:-1}}};function T(u){var y=g.select(this);if(this._imgSrc!==u.source)if(y.attr("xmlns",e.svg),!r._context.staticPlot||u.source&&u.source.slice(0,5)==="data:")y.attr("xlink:href",u.source),this._imgSrc=u.source;else{var f=new Promise(function(P){var L=new Image;this.img=L,L.setAttribute("crossOrigin","anonymous"),L.onerror=z,L.onload=function(){var F=document.createElement("canvas");F.width=this.width,F.height=this.height;var B=F.getContext("2d",{willReadFrequently:!0});B.drawImage(this,0,0);var O=F.toDataURL("image/png");y.attr("xlink:href",O),P()},y.on("error",z),L.src=u.source,this._imgSrc=u.source;function z(){y.remove(),P()}}.bind(this));r._promises.push(f)}}function l(u){var y=g.select(this),f=A.getFromId(r,u.xref),P=A.getFromId(r,u.yref),L=A.getRefType(u.xref)==="domain",z=A.getRefType(u.yref)==="domain",F=o._size,B,O;f!==void 0?B=typeof u.xref=="string"&&L?f._length*u.sizex:Math.abs(f.l2p(u.sizex)-f.l2p(0)):B=u.sizex*F.w,P!==void 0?O=typeof u.yref=="string"&&z?P._length*u.sizey:Math.abs(P.l2p(u.sizey)-P.l2p(0)):O=u.sizey*F.h;var I=B*p.x[u.xanchor].offset,N=O*p.y[u.yanchor].offset,U=p.x[u.xanchor].sizing+p.y[u.yanchor].sizing,W,Q;switch(f!==void 0?W=typeof u.xref=="string"&&L?f._length*u.x+f._offset:f.r2p(u.x)+f._offset:W=u.x*F.w+F.l,W+=I,P!==void 0?Q=typeof u.yref=="string"&&z?P._length*(1-u.y)+P._offset:P.r2p(u.y)+P._offset:Q=F.h-u.y*F.h+F.t,Q+=N,u.sizing){case"fill":U+=" slice";break;case"stretch":U="none";break}y.attr({x:W,y:Q,width:B,height:O,preserveAspectRatio:U,opacity:u.opacity});var ue=f&&A.getRefType(u.xref)!=="domain"?f._id:"",se=P&&A.getRefType(u.yref)!=="domain"?P._id:"",he=ue+se;x.setClipUrl(y,he?"clip"+o._uid+he:null,r)}function _(u){return[u.xref,u.x,u.sizex,u.yref,u.y,u.sizey].join("_")}function w(u,y){return u._index-y._index}var S=o._imageLowerLayer.selectAll("image").data(n,_),E=o._imageUpperLayer.selectAll("image").data(a,_);S.enter().append("image"),E.enter().append("image"),S.exit().remove(),E.exit().remove(),S.each(function(u){T.bind(this)(u),l.bind(this)(u)}),E.each(function(u){T.bind(this)(u),l.bind(this)(u)}),S.sort(w),E.sort(w);var m=Object.keys(o._plots);for(c=0;c<m.length;c++){s=m[c];var b=o._plots[s];if(b.imagelayer){var d=b.imagelayer.selectAll("image").data(i[s]||[],_);d.enter().append("image"),d.exit().remove(),d.each(function(u){T.bind(this)(u),l.bind(this)(u)}),d.sort(w)}}}}}),fB=Ye({"src/components/images/convert_coords.js"(X,H){"use strict";var g=jo(),x=c2();H.exports=function(M,e,t,r){e=e||{};var o=t==="log"&&e.type==="linear",a=t==="linear"&&e.type==="log";if(o||a){for(var i=M._fullLayout.images,n=e._id.charAt(0),s,c,h=0;h<i.length;h++)if(s=i[h],c="images["+h+"].",s[n+"ref"]===e._id){var v=s[n],p=s["size"+n],T=null,l=null;if(o){T=x(v,e.range);var _=p/Math.pow(10,T)/2;l=2*Math.log(_+Math.sqrt(1+_*_))/Math.LN10}else T=Math.pow(10,v),l=T*(Math.pow(10,p/2)-Math.pow(10,-p/2));g(T)?g(l)||(l=null):(T=null,l=null),r(c+n,T),r(c+"size"+n,l)}}}}}),hB=Ye({"src/components/images/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"images",layoutAttributes:US(),supplyLayoutDefaults:uB(),includeBasePlot:P_()("images"),draw:cB(),convertCoords:fB()}}}),z2=Ye({"src/components/updatemenus/constants.js"(X,H){"use strict";H.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"}}}}),jS=Ye({"src/components/updatemenus/attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Oo().extendFlat,M=Ou().overrideAll,e=d2(),t=cl().templatedArray,r=t("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}});H.exports=M(t("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:r,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:A(e({editType:"arraydraw"}),{}),font:g({}),bgcolor:{valType:"color"},bordercolor:{valType:"color",dflt:x.borderLine},borderwidth:{valType:"number",min:0,dflt:1,editType:"arraydraw"}}),"arraydraw","from-root")}}),pB=Ye({"src/components/updatemenus/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=jS(),M=z2(),e=M.name,t=A.buttons;H.exports=function(i,n){var s={name:e,handleItemDefaults:r};x(i,n,s)};function r(a,i,n){function s(v,p){return g.coerce(a,i,A,v,p)}var c=x(a,i,{name:"buttons",handleItemDefaults:o}),h=s("visible",c.length>0);h&&(s("active"),s("direction"),s("type"),s("showactive"),s("x"),s("y"),g.noneOrAll(a,i,["x","y"]),s("xanchor"),s("yanchor"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",n.font),s("bgcolor",n.paper_bgcolor),s("bordercolor"),s("borderwidth"))}function o(a,i){function n(c,h){return g.coerce(a,i,t,c,h)}var s=n("visible",a.method==="skip"||Array.isArray(a.args));s&&(n("method"),n("args"),n("args2"),n("label"),n("execute"))}}}),dB=Ye({"src/components/updatemenus/scrollbox.js"(X,H){"use strict";H.exports=e;var g=_n(),x=Fn(),A=Bo(),M=ta();function e(t,r,o){this.gd=t,this.container=r,this.id=o,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})}e.barWidth=2,e.barLength=20,e.barRadius=2,e.barPad=1,e.barColor="#808BA4",e.prototype.enable=function(r,o,a){var i=this.gd._fullLayout,n=i.width,s=i.height;this.position=r;var c=this.position.l,h=this.position.w,v=this.position.t,p=this.position.h,T=this.position.direction,l=T==="down",_=T==="left",w=T==="right",S=T==="up",E=h,m=p,b,d,u,y;!l&&!_&&!w&&!S&&(this.position.direction="down",l=!0);var f=l||S;f?(b=c,d=b+E,l?(u=v,y=Math.min(u+m,s),m=y-u):(y=v+m,u=Math.max(y-m,0),m=y-u)):(u=v,y=u+m,_?(d=c+E,b=Math.max(d-E,0),E=d-b):(b=c,d=Math.min(b+E,n),E=d-b)),this._box={l:b,t:u,w:E,h:m};var P=h>E,L=e.barLength+2*e.barPad,z=e.barWidth+2*e.barPad,F=c,B=v+p;B+z>s&&(B=s-z);var O=this.container.selectAll("rect.scrollbar-horizontal").data(P?[0]:[]);O.exit().on(".drag",null).remove(),O.enter().append("rect").classed("scrollbar-horizontal",!0).call(x.fill,e.barColor),P?(this.hbar=O.attr({rx:e.barRadius,ry:e.barRadius,x:F,y:B,width:L,height:z}),this._hbarXMin=F+L/2,this._hbarTranslateMax=E-L):(delete this.hbar,delete this._hbarXMin,delete this._hbarTranslateMax);var I=p>m,N=e.barWidth+2*e.barPad,U=e.barLength+2*e.barPad,W=c+h,Q=v;W+N>n&&(W=n-N);var ue=this.container.selectAll("rect.scrollbar-vertical").data(I?[0]:[]);ue.exit().on(".drag",null).remove(),ue.enter().append("rect").classed("scrollbar-vertical",!0).call(x.fill,e.barColor),I?(this.vbar=ue.attr({rx:e.barRadius,ry:e.barRadius,x:W,y:Q,width:N,height:U}),this._vbarYMin=Q+U/2,this._vbarTranslateMax=m-U):(delete this.vbar,delete this._vbarYMin,delete this._vbarTranslateMax);var se=this.id,he=b-.5,G=I?d+N+.5:d+.5,$=u-.5,J=P?y+z+.5:y+.5,Z=i._topdefs.selectAll("#"+se).data(P||I?[0]:[]);if(Z.exit().remove(),Z.enter().append("clipPath").attr("id",se).append("rect"),P||I?(this._clipRect=Z.select("rect").attr({x:Math.floor(he),y:Math.floor($),width:Math.ceil(G)-Math.floor(he),height:Math.ceil(J)-Math.floor($)}),this.container.call(A.setClipUrl,se,this.gd),this.bg.attr({x:c,y:v,width:h,height:p})):(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.setClipUrl,null),delete this._clipRect),P||I){var re=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault()}).on("drag",this._onBoxDrag.bind(this));this.container.on("wheel",null).on("wheel",this._onBoxWheel.bind(this)).on(".drag",null).call(re);var ne=g.behavior.drag().on("dragstart",function(){g.event.sourceEvent.preventDefault(),g.event.sourceEvent.stopPropagation()}).on("drag",this._onBarDrag.bind(this));P&&this.hbar.on(".drag",null).call(ne),I&&this.vbar.on(".drag",null).call(ne)}this.setTranslate(o,a)},e.prototype.disable=function(){(this.hbar||this.vbar)&&(this.bg.attr({width:0,height:0}),this.container.on("wheel",null).on(".drag",null).call(A.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)},e.prototype._onBoxDrag=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r-=g.event.dx),this.vbar&&(o-=g.event.dy),this.setTranslate(r,o)},e.prototype._onBoxWheel=function(){var r=this.translateX,o=this.translateY;this.hbar&&(r+=g.event.deltaY),this.vbar&&(o+=g.event.deltaY),this.setTranslate(r,o)},e.prototype._onBarDrag=function(){var r=this.translateX,o=this.translateY;if(this.hbar){var a=r+this._hbarXMin,i=a+this._hbarTranslateMax,n=M.constrain(g.event.x,a,i),s=(n-a)/(i-a),c=this.position.w-this._box.w;r=s*c}if(this.vbar){var h=o+this._vbarYMin,v=h+this._vbarTranslateMax,p=M.constrain(g.event.y,h,v),T=(p-h)/(v-h),l=this.position.h-this._box.h;o=T*l}this.setTranslate(r,o)},e.prototype.setTranslate=function(r,o){var a=this.position.w-this._box.w,i=this.position.h-this._box.h;if(r=M.constrain(r||0,0,a),o=M.constrain(o||0,0,i),this.translateX=r,this.translateY=o,this.container.call(A.setTranslate,this._box.l-this.position.l-r,this._box.t-this.position.t-o),this._clipRect&&this._clipRect.attr({x:Math.floor(this.position.l+r-.5),y:Math.floor(this.position.t+o-.5)}),this.hbar){var n=r/a;this.hbar.call(A.setTranslate,r+n*this._hbarTranslateMax,o)}if(this.vbar){var s=o/i;this.vbar.call(A.setTranslate,r,o+s*this._vbarTranslateMax)}}}}),vB=Ye({"src/components/updatemenus/draw.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Fn(),M=Bo(),e=ta(),t=jl(),r=cl().arrayEditor,o=oh().LINE_SPACING,a=z2(),i=dB();H.exports=function(L){var z=L._fullLayout,F=e.filterVisible(z[a.name]);function B(se){x.autoMargin(L,u(se))}var O=z._menulayer.selectAll("g."+a.containerClassName).data(F.length>0?[0]:[]);if(O.enter().append("g").classed(a.containerClassName,!0).style("cursor","pointer"),O.exit().each(function(){g.select(this).selectAll("g."+a.headerGroupClassName).each(B)}).remove(),F.length!==0){var I=O.selectAll("g."+a.headerGroupClassName).data(F,n);I.enter().append("g").classed(a.headerGroupClassName,!0);for(var N=e.ensureSingle(O,"g",a.dropdownButtonGroupClassName,function(se){se.style("pointer-events","all")}),U=0;U<F.length;U++){var W=F[U];d(L,W)}var Q="updatemenus"+z._uid,ue=new i(L,N,Q);I.enter().size()&&(N.node().parentNode.appendChild(N.node()),N.call(f)),I.exit().each(function(se){N.call(f),B(se)}).remove(),I.each(function(se){var he=g.select(this),G=se.type==="dropdown"?N:null;x.manageCommandObserver(L,se,se.buttons,function($){h(L,se,se.buttons[$.index],he,G,ue,$.index,!0)}),se.type==="dropdown"?(v(L,he,N,ue,se),c(N,se)&&p(L,he,N,ue,se)):p(L,he,null,null,se)})}};function n(P){return P._index}function s(P){return+P.attr(a.menuIndexAttrName)==-1}function c(P,L){return+P.attr(a.menuIndexAttrName)===L._index}function h(P,L,z,F,B,O,I,N){L.active=I,r(P.layout,a.name,L).applyUpdate("active",I),L.type==="buttons"?p(P,F,null,null,L):L.type==="dropdown"&&(B.attr(a.menuIndexAttrName,"-1"),v(P,F,B,O,L),N||p(P,F,B,O,L))}function v(P,L,z,F,B){var O=e.ensureSingle(L,"g",a.headerClassName,function(se){se.style("pointer-events","all")}),I=B._dims,N=B.active,U=B.buttons[N]||a.blankHeaderOpts,W={y:B.pad.t,yPad:0,x:B.pad.l,xPad:0,index:0},Q={width:I.headerWidth,height:I.headerHeight};O.call(_,B,U,P).call(y,B,W,Q);var ue=e.ensureSingle(L,"text",a.headerArrowClassName,function(se){se.attr("text-anchor","end").call(M.font,B.font).text(a.arrowSymbol[B.direction])});ue.attr({x:I.headerWidth-a.arrowOffsetX+B.pad.l,y:I.headerHeight/2+a.textOffsetY+B.pad.t}),O.on("click",function(){z.call(f,String(c(z,B)?-1:B._index)),p(P,L,z,F,B)}),O.on("mouseover",function(){O.call(m)}),O.on("mouseout",function(){O.call(b,B)}),M.setTranslate(L,I.lx,I.ly)}function p(P,L,z,F,B){z||(z=L,z.attr("pointer-events","all"));var O=!s(z)||B.type==="buttons"?B.buttons:[],I=B.type==="dropdown"?a.dropdownButtonClassName:a.buttonClassName,N=z.selectAll("g."+I).data(e.filterVisible(O)),U=N.enter().append("g").classed(I,!0),W=N.exit();B.type==="dropdown"?(U.attr("opacity","0").transition().attr("opacity","1"),W.transition().attr("opacity","0").remove()):W.remove();var Q=0,ue=0,se=B._dims,he=["up","down"].indexOf(B.direction)!==-1;B.type==="dropdown"&&(he?ue=se.headerHeight+a.gapButtonHeader:Q=se.headerWidth+a.gapButtonHeader),B.type==="dropdown"&&B.direction==="up"&&(ue=-a.gapButtonHeader+a.gapButton-se.openHeight),B.type==="dropdown"&&B.direction==="left"&&(Q=-a.gapButtonHeader+a.gapButton-se.openWidth);var G={x:se.lx+Q+B.pad.l,y:se.ly+ue+B.pad.t,yPad:a.gapButton,xPad:a.gapButton,index:0},$={l:G.x+B.borderwidth,t:G.y+B.borderwidth};N.each(function(J,Z){var re=g.select(this);re.call(_,B,J,P).call(y,B,G),re.on("click",function(){g.event.defaultPrevented||(J.execute&&(J.args2&&B.active===Z?(h(P,B,J,L,z,F,-1),x.executeAPICommand(P,J.method,J.args2)):(h(P,B,J,L,z,F,Z),x.executeAPICommand(P,J.method,J.args))),P.emit("plotly_buttonclicked",{menu:B,button:J,active:B.active}))}),re.on("mouseover",function(){re.call(m)}),re.on("mouseout",function(){re.call(b,B),N.call(E,B)})}),N.call(E,B),he?($.w=Math.max(se.openWidth,se.headerWidth),$.h=G.y-$.t):($.w=G.x-$.l,$.h=Math.max(se.openHeight,se.headerHeight)),$.direction=B.direction,F&&(N.size()?T(P,L,z,F,B,$):l(F))}function T(P,L,z,F,B,O){var I=B.direction,N=I==="up"||I==="down",U=B._dims,W=B.active,Q,ue,se;if(N)for(ue=0,se=0;se<W;se++)ue+=U.heights[se]+a.gapButton;else for(Q=0,se=0;se<W;se++)Q+=U.widths[se]+a.gapButton;F.enable(O,Q,ue),F.hbar&&F.hbar.attr("opacity","0").transition().attr("opacity","1"),F.vbar&&F.vbar.attr("opacity","0").transition().attr("opacity","1")}function l(P){var L=!!P.hbar,z=!!P.vbar;L&&P.hbar.transition().attr("opacity","0").each("end",function(){L=!1,z||P.disable()}),z&&P.vbar.transition().attr("opacity","0").each("end",function(){z=!1,L||P.disable()})}function _(P,L,z,F){P.call(w,L).call(S,L,z,F)}function w(P,L){var z=e.ensureSingle(P,"rect",a.itemRectClassName,function(F){F.attr({rx:a.rx,ry:a.ry,"shape-rendering":"crispEdges"})});z.call(A.stroke,L.bordercolor).call(A.fill,L.bgcolor).style("stroke-width",L.borderwidth+"px")}function S(P,L,z,F){var B=e.ensureSingle(P,"text",a.itemTextClassName,function(N){N.attr({"text-anchor":"start","data-notex":1})}),O=z.label,I=F._fullLayout._meta;I&&(O=e.templateString(O,I)),B.call(M.font,L.font).text(O).call(t.convertToTspans,F)}function E(P,L){var z=L.active;P.each(function(F,B){var O=g.select(this);B===z&&L.showactive&&O.select("rect."+a.itemRectClassName).call(A.fill,a.activeColor)})}function m(P){P.select("rect."+a.itemRectClassName).call(A.fill,a.hoverColor)}function b(P,L){P.select("rect."+a.itemRectClassName).call(A.fill,L.bgcolor)}function d(P,L){var z=L._dims={width1:0,height1:0,heights:[],widths:[],totalWidth:0,totalHeight:0,openWidth:0,openHeight:0,lx:0,ly:0},F=M.tester.selectAll("g."+a.dropdownButtonClassName).data(e.filterVisible(L.buttons));F.enter().append("g").classed(a.dropdownButtonClassName,!0);var B=["up","down"].indexOf(L.direction)!==-1;F.each(function(Q,ue){var se=g.select(this);se.call(_,L,Q,P);var he=se.select("."+a.itemTextClassName),G=he.node()&&M.bBox(he.node()).width,$=Math.max(G+a.textPadX,a.minWidth),J=L.font.size*o,Z=t.lineCount(he),re=Math.max(J*Z,a.minHeight)+a.textOffsetY;re=Math.ceil(re),$=Math.ceil($),z.widths[ue]=$,z.heights[ue]=re,z.height1=Math.max(z.height1,re),z.width1=Math.max(z.width1,$),B?(z.totalWidth=Math.max(z.totalWidth,$),z.openWidth=z.totalWidth,z.totalHeight+=re+a.gapButton,z.openHeight+=re+a.gapButton):(z.totalWidth+=$+a.gapButton,z.openWidth+=$+a.gapButton,z.totalHeight=Math.max(z.totalHeight,re),z.openHeight=z.totalHeight)}),B?z.totalHeight-=a.gapButton:z.totalWidth-=a.gapButton,z.headerWidth=z.width1+a.arrowPadX,z.headerHeight=z.height1,L.type==="dropdown"&&(B?(z.width1+=a.arrowPadX,z.totalHeight=z.height1):z.totalWidth=z.width1,z.totalWidth+=a.arrowPadX),F.remove();var O=z.totalWidth+L.pad.l+L.pad.r,I=z.totalHeight+L.pad.t+L.pad.b,N=P._fullLayout._size;z.lx=N.l+N.w*L.x,z.ly=N.t+N.h*(1-L.y);var U="left";e.isRightAnchor(L)&&(z.lx-=O,U="right"),e.isCenterAnchor(L)&&(z.lx-=O/2,U="center");var W="top";e.isBottomAnchor(L)&&(z.ly-=I,W="bottom"),e.isMiddleAnchor(L)&&(z.ly-=I/2,W="middle"),z.totalWidth=Math.ceil(z.totalWidth),z.totalHeight=Math.ceil(z.totalHeight),z.lx=Math.round(z.lx),z.ly=Math.round(z.ly),x.autoMargin(P,u(L),{x:L.x,y:L.y,l:O*({right:1,center:.5}[U]||0),r:O*({left:1,center:.5}[U]||0),b:I*({top:1,middle:.5}[W]||0),t:I*({bottom:1,middle:.5}[W]||0)})}function u(P){return a.autoMarginIdRoot+P._index}function y(P,L,z,F){F=F||{};var B=P.select("."+a.itemRectClassName),O=P.select("."+a.itemTextClassName),I=L.borderwidth,N=z.index,U=L._dims;M.setTranslate(P,I+z.x,I+z.y);var W=["up","down"].indexOf(L.direction)!==-1,Q=F.height||(W?U.heights[N]:U.height1);B.attr({x:0,y:0,width:F.width||(W?U.width1:U.widths[N]),height:Q});var ue=L.font.size*o,se=t.lineCount(O),he=(se-1)*ue/2;t.positionText(O,a.textOffsetX,Q/2-he+a.textOffsetY),W?z.y+=U.heights[N]+z.yPad:z.x+=U.widths[N]+z.xPad,z.index++}function f(P,L){P.attr(a.menuIndexAttrName,L||"-1").selectAll("g."+a.dropdownButtonClassName).remove()}}}),mB=Ye({"src/components/updatemenus/index.js"(X,H){"use strict";var g=z2();H.exports={moduleType:"component",name:g.name,layoutAttributes:jS(),supplyLayoutDefaults:pB(),draw:vB()}}}),D_=Ye({"src/components/sliders/constants.js"(X,H){"use strict";H.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}}}),VS=Ye({"src/components/sliders/attributes.js"(X,H){"use strict";var g=Au(),x=d2(),A=Oo().extendDeepAll,M=Ou().overrideAll,e=w_(),t=cl().templatedArray,r=D_(),o=t("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}});H.exports=M(t("slider",{visible:{valType:"boolean",dflt:!0},active:{valType:"number",min:0,dflt:0},steps:o,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:A(x({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:e.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:g({})},font:g({}),activebgcolor:{valType:"color",dflt:r.gripBgActiveColor},bgcolor:{valType:"color",dflt:r.railBgColor},bordercolor:{valType:"color",dflt:r.railBorderColor},borderwidth:{valType:"number",min:0,dflt:r.railBorderWidth},ticklen:{valType:"number",min:0,dflt:r.tickLength},tickcolor:{valType:"color",dflt:r.tickColor},tickwidth:{valType:"number",min:0,dflt:1},minorticklen:{valType:"number",min:0,dflt:r.minorTickLength}}),"arraydraw","from-root")}}),gB=Ye({"src/components/sliders/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=VS(),M=D_(),e=M.name,t=A.steps;H.exports=function(i,n){x(i,n,{name:e,handleItemDefaults:r})};function r(a,i,n){function s(w,S){return g.coerce(a,i,A,w,S)}for(var c=x(a,i,{name:"steps",handleItemDefaults:o}),h=0,v=0;v<c.length;v++)c[v].visible&&h++;var p;if(h<2?p=i.visible=!1:p=s("visible"),!!p){i._stepCount=h;var T=i._visibleSteps=g.filterVisible(c),l=s("active");(c[l]||{}).visible||(i.active=T[0]._index),s("x"),s("y"),g.noneOrAll(a,i,["x","y"]),s("xanchor"),s("yanchor"),s("len"),s("lenmode"),s("pad.t"),s("pad.r"),s("pad.b"),s("pad.l"),g.coerceFont(s,"font",n.font);var _=s("currentvalue.visible");_&&(s("currentvalue.xanchor"),s("currentvalue.prefix"),s("currentvalue.suffix"),s("currentvalue.offset"),g.coerceFont(s,"currentvalue.font",i.font)),s("transition.duration"),s("transition.easing"),s("bgcolor"),s("activebgcolor"),s("bordercolor"),s("borderwidth"),s("ticklen"),s("tickwidth"),s("tickcolor"),s("minorticklen")}}function o(a,i){function n(h,v){return g.coerce(a,i,t,h,v)}var s;if(a.method!=="skip"&&!Array.isArray(a.args)?s=i.visible=!1:s=n("visible"),s){n("method"),n("args");var c=n("label","step-"+i._index);n("value",c),n("execute")}}}}),yB=Ye({"src/components/sliders/draw.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Fn(),M=Bo(),e=ta(),t=e.strTranslate,r=jl(),o=cl().arrayEditor,a=D_(),i=oh(),n=i.LINE_SPACING,s=i.FROM_TL,c=i.FROM_BR;H.exports=function(O){var I=O._context.staticPlot,N=O._fullLayout,U=v(N,O),W=N._infolayer.selectAll("g."+a.containerClassName).data(U.length>0?[0]:[]);W.enter().append("g").classed(a.containerClassName,!0).style("cursor",I?null:"ew-resize");function Q(G){G._commandObserver&&(G._commandObserver.remove(),delete G._commandObserver),x.autoMargin(O,h(G))}if(W.exit().each(function(){g.select(this).selectAll("g."+a.groupClassName).each(Q)}).remove(),U.length!==0){var ue=W.selectAll("g."+a.groupClassName).data(U,p);ue.enter().append("g").classed(a.groupClassName,!0),ue.exit().each(Q).remove();for(var se=0;se<U.length;se++){var he=U[se];T(O,he)}ue.each(function(G){var $=g.select(this);y(G),x.manageCommandObserver(O,G,G._visibleSteps,function(J){var Z=$.data()[0];Z.active!==J.index&&(Z._dragging||b(O,$,Z,J.index,!1,!0))}),l(O,g.select(this),G)})}};function h(B){return a.autoMarginIdRoot+B._index}function v(B,O){for(var I=B[a.name],N=[],U=0;U<I.length;U++){var W=I[U];W.visible&&(W._gd=O,N.push(W))}return N}function p(B){return B._index}function T(B,O){var I=M.tester.selectAll("g."+a.labelGroupClass).data(O._visibleSteps);I.enter().append("g").classed(a.labelGroupClass,!0);var N=0,U=0;I.each(function(re){var ne=g.select(this),j=S(ne,{step:re},O),ee=j.node();if(ee){var ie=M.bBox(ee);U=Math.max(U,ie.height),N=Math.max(N,ie.width)}}),I.remove();var W=O._dims={};W.inputAreaWidth=Math.max(a.railWidth,a.gripHeight);var Q=B._fullLayout._size;W.lx=Q.l+Q.w*O.x,W.ly=Q.t+Q.h*(1-O.y),O.lenmode==="fraction"?W.outerLength=Math.round(Q.w*O.len):W.outerLength=O.len,W.inputAreaStart=0,W.inputAreaLength=Math.round(W.outerLength-O.pad.l-O.pad.r);var ue=W.inputAreaLength-2*a.stepInset,se=ue/(O._stepCount-1),he=N+a.labelPadding;if(W.labelStride=Math.max(1,Math.ceil(he/se)),W.labelHeight=U,W.currentValueMaxWidth=0,W.currentValueHeight=0,W.currentValueTotalHeight=0,W.currentValueMaxLines=1,O.currentvalue.visible){var G=M.tester.append("g");I.each(function(re){var ne=_(G,O,re.label),j=ne.node()&&M.bBox(ne.node())||{width:0,height:0},ee=r.lineCount(ne);W.currentValueMaxWidth=Math.max(W.currentValueMaxWidth,Math.ceil(j.width)),W.currentValueHeight=Math.max(W.currentValueHeight,Math.ceil(j.height)),W.currentValueMaxLines=Math.max(W.currentValueMaxLines,ee)}),W.currentValueTotalHeight=W.currentValueHeight+O.currentvalue.offset,G.remove()}W.height=W.currentValueTotalHeight+a.tickOffset+O.ticklen+a.labelOffset+W.labelHeight+O.pad.t+O.pad.b;var $="left";e.isRightAnchor(O)&&(W.lx-=W.outerLength,$="right"),e.isCenterAnchor(O)&&(W.lx-=W.outerLength/2,$="center");var J="top";e.isBottomAnchor(O)&&(W.ly-=W.height,J="bottom"),e.isMiddleAnchor(O)&&(W.ly-=W.height/2,J="middle"),W.outerLength=Math.ceil(W.outerLength),W.height=Math.ceil(W.height),W.lx=Math.round(W.lx),W.ly=Math.round(W.ly);var Z={y:O.y,b:W.height*c[J],t:W.height*s[J]};O.lenmode==="fraction"?(Z.l=0,Z.xl=O.x-O.len*s[$],Z.r=0,Z.xr=O.x+O.len*c[$]):(Z.x=O.x,Z.l=W.outerLength*s[$],Z.r=W.outerLength*c[$]),x.autoMargin(B,h(O),Z)}function l(B,O,I){(I.steps[I.active]||{}).visible||(I.active=I._visibleSteps[0]._index),O.call(_,I).call(F,I).call(E,I).call(u,I).call(z,B,I).call(w,B,I);var N=I._dims;M.setTranslate(O,N.lx+I.pad.l,N.ly+I.pad.t),O.call(f,I,!1),O.call(_,I)}function _(B,O,I){if(O.currentvalue.visible){var N=O._dims,U,W;switch(O.currentvalue.xanchor){case"right":U=N.inputAreaLength-a.currentValueInset-N.currentValueMaxWidth,W="left";break;case"center":U=N.inputAreaLength*.5,W="middle";break;default:U=a.currentValueInset,W="left"}var Q=e.ensureSingle(B,"text",a.labelClass,function(J){J.attr({"text-anchor":W,"data-notex":1})}),ue=O.currentvalue.prefix?O.currentvalue.prefix:"";if(typeof I=="string")ue+=I;else{var se=O.steps[O.active].label,he=O._gd._fullLayout._meta;he&&(se=e.templateString(se,he)),ue+=se}O.currentvalue.suffix&&(ue+=O.currentvalue.suffix),Q.call(M.font,O.currentvalue.font).text(ue).call(r.convertToTspans,O._gd);var G=r.lineCount(Q),$=(N.currentValueMaxLines+1-G)*O.currentvalue.font.size*n;return r.positionText(Q,U,$),Q}}function w(B,O,I){var N=e.ensureSingle(B,"rect",a.gripRectClass,function(U){U.call(d,O,B,I).style("pointer-events","all")});N.attr({width:a.gripWidth,height:a.gripHeight,rx:a.gripRadius,ry:a.gripRadius}).call(A.stroke,I.bordercolor).call(A.fill,I.bgcolor).style("stroke-width",I.borderwidth+"px")}function S(B,O,I){var N=e.ensureSingle(B,"text",a.labelClass,function(Q){Q.attr({"text-anchor":"middle","data-notex":1})}),U=O.step.label,W=I._gd._fullLayout._meta;return W&&(U=e.templateString(U,W)),N.call(M.font,I.font).text(U).call(r.convertToTspans,I._gd),N}function E(B,O){var I=e.ensureSingle(B,"g",a.labelsClass),N=O._dims,U=I.selectAll("g."+a.labelGroupClass).data(N.labelSteps);U.enter().append("g").classed(a.labelGroupClass,!0),U.exit().remove(),U.each(function(W){var Q=g.select(this);Q.call(S,W,O),M.setTranslate(Q,P(O,W.fraction),a.tickOffset+O.ticklen+O.font.size*n+a.labelOffset+N.currentValueTotalHeight)})}function m(B,O,I,N,U){var W=Math.round(N*(I._stepCount-1)),Q=I._visibleSteps[W]._index;Q!==I.active&&b(B,O,I,Q,!0,U)}function b(B,O,I,N,U,W){var Q=I.active;I.active=N,o(B.layout,a.name,I).applyUpdate("active",N);var ue=I.steps[I.active];O.call(f,I,W),O.call(_,I),B.emit("plotly_sliderchange",{slider:I,step:I.steps[I.active],interaction:U,previousActive:Q}),ue&&ue.method&&U&&(O._nextMethod?(O._nextMethod.step=ue,O._nextMethod.doCallback=U,O._nextMethod.doTransition=W):(O._nextMethod={step:ue,doCallback:U,doTransition:W},O._nextMethodRaf=window.requestAnimationFrame(function(){var se=O._nextMethod.step;se.method&&(se.execute&&x.executeAPICommand(B,se.method,se.args),O._nextMethod=null,O._nextMethodRaf=null)})))}function d(B,O,I){if(O._context.staticPlot)return;var N=I.node(),U=g.select(O);function W(){return I.data()[0]}function Q(){var ue=W();O.emit("plotly_sliderstart",{slider:ue});var se=I.select("."+a.gripRectClass);g.event.stopPropagation(),g.event.preventDefault(),se.call(A.fill,ue.activebgcolor);var he=L(ue,g.mouse(N)[0]);m(O,I,ue,he,!0),ue._dragging=!0;function G(){var J=W(),Z=L(J,g.mouse(N)[0]);m(O,I,J,Z,!1)}U.on("mousemove",G),U.on("touchmove",G);function $(){var J=W();J._dragging=!1,se.call(A.fill,J.bgcolor),U.on("mouseup",null),U.on("mousemove",null),U.on("touchend",null),U.on("touchmove",null),O.emit("plotly_sliderend",{slider:J,step:J.steps[J.active]})}U.on("mouseup",$),U.on("touchend",$)}B.on("mousedown",Q),B.on("touchstart",Q)}function u(B,O){var I=B.selectAll("rect."+a.tickRectClass).data(O._visibleSteps),N=O._dims;I.enter().append("rect").classed(a.tickRectClass,!0),I.exit().remove(),I.attr({width:O.tickwidth+"px","shape-rendering":"crispEdges"}),I.each(function(U,W){var Q=W%N.labelStride===0,ue=g.select(this);ue.attr({height:Q?O.ticklen:O.minorticklen}).call(A.fill,O.tickcolor),M.setTranslate(ue,P(O,W/(O._stepCount-1))-.5*O.tickwidth,(Q?a.tickOffset:a.minorTickOffset)+N.currentValueTotalHeight)})}function y(B){var O=B._dims;O.labelSteps=[];for(var I=B._stepCount,N=0;N<I;N+=O.labelStride)O.labelSteps.push({fraction:N/(I-1),step:B._visibleSteps[N]})}function f(B,O,I){for(var N=B.select("rect."+a.gripRectClass),U=0,W=0;W<O._stepCount;W++)if(O._visibleSteps[W]._index===O.active){U=W;break}var Q=P(O,U/(O._stepCount-1));if(!O._invokingCommand){var ue=N;I&&O.transition.duration>0&&(ue=ue.transition().duration(O.transition.duration).ease(O.transition.easing)),ue.attr("transform",t(Q-a.gripWidth*.5,O._dims.currentValueTotalHeight))}}function P(B,O){var I=B._dims;return I.inputAreaStart+a.stepInset+(I.inputAreaLength-2*a.stepInset)*Math.min(1,Math.max(0,O))}function L(B,O){var I=B._dims;return Math.min(1,Math.max(0,(O-a.stepInset-I.inputAreaStart)/(I.inputAreaLength-2*a.stepInset-2*I.inputAreaStart)))}function z(B,O,I){var N=I._dims,U=e.ensureSingle(B,"rect",a.railTouchRectClass,function(W){W.call(d,O,B,I).style("pointer-events","all")});U.attr({width:N.inputAreaLength,height:Math.max(N.inputAreaWidth,a.tickOffset+I.ticklen+N.labelHeight)}).call(A.fill,I.bgcolor).attr("opacity",0),M.setTranslate(U,0,N.currentValueTotalHeight)}function F(B,O){var I=O._dims,N=I.inputAreaLength-a.railInset*2,U=e.ensureSingle(B,"rect",a.railRectClass);U.attr({width:N,height:a.railWidth,rx:a.railRadius,ry:a.railRadius,"shape-rendering":"crispEdges"}).call(A.stroke,O.bordercolor).call(A.fill,O.bgcolor).style("stroke-width",O.borderwidth+"px"),M.setTranslate(U,a.railInset,(I.inputAreaWidth-a.railWidth)*.5+I.currentValueTotalHeight)}}}),_B=Ye({"src/components/sliders/index.js"(X,H){"use strict";var g=D_();H.exports={moduleType:"component",name:g.name,layoutAttributes:VS(),supplyLayoutDefaults:gB(),draw:yB()}}}),F2=Ye({"src/components/rangeslider/attributes.js"(X,H){"use strict";var g=Gf();H.exports={bgcolor:{valType:"color",dflt:g.background,editType:"plot"},bordercolor:{valType:"color",dflt:g.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"}}}),qS=Ye({"src/components/rangeslider/oppaxis_attributes.js"(X,H){"use strict";H.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"}}}),O2=Ye({"src/components/rangeslider/constants.js"(X,H){"use strict";H.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}}}),xB=Ye({"src/components/rangeslider/helpers.js"(X){"use strict";var H=Xc(),g=jl(),x=O2(),A=oh().LINE_SPACING,M=x.name;function e(t){var r=t&&t[M];return r&&r.visible}X.isVisible=e,X.makeData=function(t){for(var r=H.list({_fullLayout:t},"x",!0),o=t.margin,a=[],i=0;i<r.length;i++){var n=r[i];if(e(n)){a.push(n);var s=n[M];s._id=M+n._id,s._height=(t.height-o.b-o.t)*s.thickness,s._offsetShift=Math.floor(s.borderwidth/2)}}t._rangeSliderData=a},X.autoMarginOpts=function(t,r){var o=t._fullLayout,a=r[M],i=r._id.charAt(0),n=0,s=0;if(r.side==="bottom"&&(n=r._depth,r.title.text!==o._dfltTitle[i])){s=1.5*r.title.font.size+10+a._offsetShift;var c=(r.title.text.match(g.BR_TAG_ALL)||[]).length;s+=c*r.title.font.size*A}return{x:0,y:r._counterDomainMin,l:0,r:0,t:0,b:a._height+n+Math.max(o.margin.b,s),pad:x.extraPad+a._offsetShift*2}}}}),bB=Ye({"src/components/rangeslider/defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Xc(),M=F2(),e=qS();H.exports=function(r,o,a){var i=r[a],n=o[a];if(!(i.rangeslider||o._requestRangeslider[n._id]))return;g.isPlainObject(i.rangeslider)||(i.rangeslider={});var s=i.rangeslider,c=x.newContainer(n,"rangeslider");function h(y,f){return g.coerce(s,c,M,y,f)}var v,p;function T(y,f){return g.coerce(v,p,e,y,f)}var l=h("visible");if(l){h("bgcolor",o.plot_bgcolor),h("bordercolor"),h("borderwidth"),h("thickness"),h("autorange",!n.isValidRange(s.range)),h("range");var _=o._subplots;if(_)for(var w=_.cartesian.filter(function(y){return y.substr(0,y.indexOf("y"))===A.name2id(a)}).map(function(y){return y.substr(y.indexOf("y"),y.length)}),S=g.simpleMap(w,A.id2name),E=0;E<S.length;E++){var m=S[E];v=s[m]||{},p=x.newContainer(c,m,"yaxis");var b=o[m],d;v.range&&b.isValidRange(v.range)&&(d="fixed");var u=T("rangemode",d);u!=="match"&&T("range",b.range.slice())}c._input=s}}}}),wB=Ye({"src/components/rangeslider/calc_autorange.js"(X,H){"use strict";var g=Xc().list,x=Yd().getAutoRange,A=O2();H.exports=function(e){for(var t=g(e,"x",!0),r=0;r<t.length;r++){var o=t[r],a=o[A.name];a&&a.visible&&a.autorange&&(a._input.autorange=!0,a._input.range=a.range=x(e,o))}}}}),TB=Ye({"src/components/rangeslider/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=ta(),e=M.strTranslate,t=Bo(),r=Fn(),o=Xg(),a=Pf(),i=Xc(),n=bp(),s=Kd(),c=O2();H.exports=function(d){for(var u=d._fullLayout,y=u._rangeSliderData,f=0;f<y.length;f++){var P=y[f][c.name];P._clipId=P._id+"-"+u._uid}function L(F){return F._name}var z=u._infolayer.selectAll("g."+c.containerClassName).data(y,L);z.exit().each(function(F){var B=F[c.name];u._topdefs.select("#"+B._clipId).remove()}).remove(),y.length!==0&&(z.enter().append("g").classed(c.containerClassName,!0).attr("pointer-events","all"),z.each(function(F){var B=g.select(this),O=F[c.name],I=u[i.id2name(F.anchor)],N=O[i.id2name(F.anchor)];if(O.range){var U=M.simpleMap(O.range,F.r2l),W=M.simpleMap(F.range,F.r2l),Q;W[0]<W[1]?Q=[Math.min(U[0],W[0]),Math.max(U[1],W[1])]:Q=[Math.max(U[0],W[0]),Math.min(U[1],W[1])],O.range=O._input.range=M.simpleMap(Q,F.l2r)}F.cleanRange("rangeslider.range");var ue=u._size,se=F.domain;O._width=ue.w*(se[1]-se[0]);var he=Math.round(ue.l+ue.w*se[0]),G=Math.round(ue.t+ue.h*(1-F._counterDomainMin)+(F.side==="bottom"?F._depth:0)+O._offsetShift+c.extraPad);B.attr("transform",e(he,G)),O._rl=M.simpleMap(O.range,F.r2l);var $=O._rl[0],J=O._rl[1],Z=J-$;if(O.p2d=function(Ie){return Ie/O._width*Z+$},O.d2p=function(Ie){return(Ie-$)/Z*O._width},F.rangebreaks){var re=F.locateBreaks($,J);if(re.length){var ne,j,ee=0;for(ne=0;ne<re.length;ne++)j=re[ne],ee+=j.max-j.min;var ie=O._width/(J-$-ee),fe=[-ie*$];for(ne=0;ne<re.length;ne++)j=re[ne],fe.push(fe[fe.length-1]-ie*(j.max-j.min));for(O.d2p=function(Ie){for(var Ze=fe[0],at=0;at<re.length;at++){var it=re[at];if(Ie>=it.max)Ze=fe[at+1];else if(Ie<it.min)break}return Ze+ie*Ie},ne=0;ne<re.length;ne++)j=re[ne],j.pmin=O.d2p(j.min),j.pmax=O.d2p(j.max);O.p2d=function(Ie){for(var Ze=fe[0],at=0;at<re.length;at++){var it=re[at];if(Ie>=it.pmax)Ze=fe[at+1];else if(Ie<it.pmin)break}return(Ie-Ze)/ie}}}if(N.rangemode!=="match"){var be=I.r2l(N.range[0]),Ae=I.r2l(N.range[1]),Be=Ae-be;O.d2pOppAxis=function(Ie){return(Ie-be)/Be*O._height}}B.call(l,d,F,O).call(_,d,F,O).call(w,d,F,O).call(E,d,F,O,N).call(m,d,F,O).call(b,d,F,O),v(B,d,F,O),T(B,d,F,O,I,N),F.side==="bottom"&&o.draw(d,F._id+"title",{propContainer:F,propName:F._name+".title",placeholder:u._dfltTitle.x,attributes:{x:F._offset+F._length/2,y:G+O._height+O._offsetShift+10+1.5*F.title.font.size,"text-anchor":"middle"}})}))};function h(d){return typeof d.clientX=="number"?d.clientX:d.touches&&d.touches.length>0?d.touches[0].clientX:0}function v(d,u,y,f){if(u._context.staticPlot)return;var P=d.select("rect."+c.slideBoxClassName).node(),L=d.select("rect."+c.grabAreaMinClassName).node(),z=d.select("rect."+c.grabAreaMaxClassName).node();function F(){var B=g.event,O=B.target,I=h(B),N=I-d.node().getBoundingClientRect().left,U=f.d2p(y._rl[0]),W=f.d2p(y._rl[1]),Q=n.coverSlip();this.addEventListener("touchmove",ue),this.addEventListener("touchend",se),Q.addEventListener("mousemove",ue),Q.addEventListener("mouseup",se);function ue(he){var G=h(he),$=+G-I,J,Z,re;switch(O){case P:if(re="ew-resize",U+$>y._length||W+$<0)return;J=U+$,Z=W+$;break;case L:if(re="col-resize",U+$>y._length)return;J=U+$,Z=W;break;case z:if(re="col-resize",W+$<0)return;J=U,Z=W+$;break;default:re="ew-resize",J=N,Z=N+$;break}if(Z<J){var ne=Z;Z=J,J=ne}f._pixelMin=J,f._pixelMax=Z,s(g.select(Q),re),p(d,u,y,f)}function se(){Q.removeEventListener("mousemove",ue),Q.removeEventListener("mouseup",se),this.removeEventListener("touchmove",ue),this.removeEventListener("touchend",se),M.removeElement(Q)}}d.on("mousedown",F),d.on("touchstart",F)}function p(d,u,y,f){function P(F){return y.l2r(M.constrain(F,f._rl[0],f._rl[1]))}var L=P(f.p2d(f._pixelMin)),z=P(f.p2d(f._pixelMax));window.requestAnimationFrame(function(){x.call("_guiRelayout",u,y._name+".range",[L,z])})}function T(d,u,y,f,P,L){var z=c.handleWidth/2;function F(he){return M.constrain(he,0,f._width)}function B(he){return M.constrain(he,0,f._height)}function O(he){return M.constrain(he,-z,f._width+z)}var I=F(f.d2p(y._rl[0])),N=F(f.d2p(y._rl[1]));if(d.select("rect."+c.slideBoxClassName).attr("x",I).attr("width",N-I),d.select("rect."+c.maskMinClassName).attr("width",I),d.select("rect."+c.maskMaxClassName).attr("x",N).attr("width",f._width-N),L.rangemode!=="match"){var U=f._height-B(f.d2pOppAxis(P._rl[1])),W=f._height-B(f.d2pOppAxis(P._rl[0]));d.select("rect."+c.maskMinOppAxisClassName).attr("x",I).attr("height",U).attr("width",N-I),d.select("rect."+c.maskMaxOppAxisClassName).attr("x",I).attr("y",W).attr("height",f._height-W).attr("width",N-I),d.select("rect."+c.slideBoxClassName).attr("y",U).attr("height",W-U)}var Q=.5,ue=Math.round(O(I-z))-Q,se=Math.round(O(N-z))+Q;d.select("g."+c.grabberMinClassName).attr("transform",e(ue,Q)),d.select("g."+c.grabberMaxClassName).attr("transform",e(se,Q))}function l(d,u,y,f){var P=M.ensureSingle(d,"rect",c.bgClassName,function(B){B.attr({x:0,y:0,"shape-rendering":"crispEdges"})}),L=f.borderwidth%2===0?f.borderwidth:f.borderwidth-1,z=-f._offsetShift,F=t.crispRound(u,f.borderwidth);P.attr({width:f._width+L,height:f._height+L,transform:e(z,z),"stroke-width":F}).call(r.stroke,f.bordercolor).call(r.fill,f.bgcolor)}function _(d,u,y,f){var P=u._fullLayout,L=M.ensureSingleById(P._topdefs,"clipPath",f._clipId,function(z){z.append("rect").attr({x:0,y:0})});L.select("rect").attr({width:f._width,height:f._height})}function w(d,u,y,f){var P=u.calcdata,L=d.selectAll("g."+c.rangePlotClassName).data(y._subplotsWith,M.identity);L.enter().append("g").attr("class",function(F){return c.rangePlotClassName+" "+F}).call(t.setClipUrl,f._clipId,u),L.order(),L.exit().remove();var z;L.each(function(F,B){var O=g.select(this),I=B===0,N=i.getFromId(u,F,"y"),U=N._name,W=f[U],Q={data:[],layout:{xaxis:{type:y.type,domain:[0,1],range:f.range.slice(),calendar:y.calendar},width:f._width,height:f._height,margin:{t:0,b:0,l:0,r:0}},_context:u._context};y.rangebreaks&&(Q.layout.xaxis.rangebreaks=y.rangebreaks),Q.layout[U]={type:N.type,domain:[0,1],range:W.rangemode!=="match"?W.range.slice():N.range.slice(),calendar:N.calendar},N.rangebreaks&&(Q.layout[U].rangebreaks=N.rangebreaks),A.supplyDefaults(Q);var ue=Q._fullLayout.xaxis,se=Q._fullLayout[U];ue.clearCalc(),ue.setScale(),se.clearCalc(),se.setScale();var he={id:F,plotgroup:O,xaxis:ue,yaxis:se,isRangePlot:!0};I?z=he:(he.mainplot="xy",he.mainplotinfo=z),a.rangePlot(u,he,S(P,F))})}function S(d,u){for(var y=[],f=0;f<d.length;f++){var P=d[f],L=P[0].trace;L.xaxis+L.yaxis===u&&y.push(P)}return y}function E(d,u,y,f,P){var L=M.ensureSingle(d,"rect",c.maskMinClassName,function(O){O.attr({x:0,y:0,"shape-rendering":"crispEdges"})});L.attr("height",f._height).call(r.fill,c.maskColor);var z=M.ensureSingle(d,"rect",c.maskMaxClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});if(z.attr("height",f._height).call(r.fill,c.maskColor),P.rangemode!=="match"){var F=M.ensureSingle(d,"rect",c.maskMinOppAxisClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});F.attr("width",f._width).call(r.fill,c.maskOppAxisColor);var B=M.ensureSingle(d,"rect",c.maskMaxOppAxisClassName,function(O){O.attr({y:0,"shape-rendering":"crispEdges"})});B.attr("width",f._width).style("border-top",c.maskOppBorder).call(r.fill,c.maskOppAxisColor)}}function m(d,u,y,f){if(!u._context.staticPlot){var P=M.ensureSingle(d,"rect",c.slideBoxClassName,function(L){L.attr({y:0,cursor:c.slideBoxCursor,"shape-rendering":"crispEdges"})});P.attr({height:f._height,fill:c.slideBoxFill})}}function b(d,u,y,f){var P=M.ensureSingle(d,"g",c.grabberMinClassName),L=M.ensureSingle(d,"g",c.grabberMaxClassName),z={x:0,width:c.handleWidth,rx:c.handleRadius,fill:r.background,stroke:r.defaultLine,"stroke-width":c.handleStrokeWidth,"shape-rendering":"crispEdges"},F={y:Math.round(f._height/4),height:Math.round(f._height/2)},B=M.ensureSingle(P,"rect",c.handleMinClassName,function(W){W.attr(z)});B.attr(F);var O=M.ensureSingle(L,"rect",c.handleMaxClassName,function(W){W.attr(z)});O.attr(F);var I={width:c.grabAreaWidth,x:0,y:0,fill:c.grabAreaFill,cursor:u._context.staticPlot?void 0:c.grabAreaCursor},N=M.ensureSingle(P,"rect",c.grabAreaMinClassName,function(W){W.attr(I)});N.attr("height",f._height);var U=M.ensureSingle(L,"rect",c.grabAreaMaxClassName,function(W){W.attr(I)});U.attr("height",f._height)}}}),AB=Ye({"src/components/rangeslider/index.js"(X,H){"use strict";var g=ta(),x=F2(),A=qS(),M=xB();H.exports={moduleType:"component",name:"rangeslider",schema:{subplots:{xaxis:{rangeslider:g.extendFlat({},x,{yaxis:A})}}},layoutAttributes:F2(),handleDefaults:bB(),calcAutorange:wB(),draw:TB(),isVisible:M.isVisible,makeData:M.makeData,autoMarginOpts:M.autoMarginOpts}}}),B2=Ye({"src/components/rangeselector/attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=cl().templatedArray,M=A("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"});H.exports={visible:{valType:"boolean",editType:"plot"},buttons:M,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:g({editType:"plot"}),bgcolor:{valType:"color",dflt:x.lightLine,editType:"plot"},activecolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:x.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"plot"}}}),HS=Ye({"src/components/rangeselector/constants.js"(X,H){"use strict";H.exports={yPad:.02,minButtonWidth:30,rx:3,ry:3,lightAmount:25,darkAmount:10}}}),SB=Ye({"src/components/rangeselector/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=up(),e=B2(),t=HS();H.exports=function(i,n,s,c,h){var v=i.rangeselector||{},p=A.newContainer(n,"rangeselector");function T(E,m){return g.coerce(v,p,e,E,m)}var l=M(v,p,{name:"buttons",handleItemDefaults:r,calendar:h}),_=T("visible",l.length>0);if(_){var w=o(n,s,c);T("x",w[0]),T("y",w[1]),g.noneOrAll(i,n,["x","y"]),T("xanchor"),T("yanchor"),g.coerceFont(T,"font",s.font);var S=T("bgcolor");T("activecolor",x.contrast(S,t.lightAmount,t.darkAmount)),T("bordercolor"),T("borderwidth")}};function r(a,i,n,s){var c=s.calendar;function h(T,l){return g.coerce(a,i,e.buttons,T,l)}var v=h("visible");if(v){var p=h("step");p!=="all"&&(c&&c!=="gregorian"&&(p==="month"||p==="year")?i.stepmode="backward":h("stepmode"),h("count")),h("label")}}function o(a,i,n){for(var s=n.filter(function(p){return i[p].anchor===a._id}),c=0,h=0;h<s.length;h++){var v=i[s[h]].domain;v&&(c=Math.max(v[1],c))}return[a.domain[0],c+t.yPad]}}}),MB=Ye({"src/components/rangeselector/get_update_object.js"(X,H){"use strict";var g=$p(),x=ta().titleCase;H.exports=function(e,t){var r=e._name,o={};if(t.step==="all")o[r+".autorange"]=!0;else{var a=A(e,t);o[r+".range[0]"]=a[0],o[r+".range[1]"]=a[1]}return o};function A(M,e){var t=M.range,r=new Date(M.r2l(t[1])),o=e.step,a=g["utc"+x(o)],i=e.count,n;switch(e.stepmode){case"backward":n=M.l2r(+a.offset(r,-i));break;case"todate":var s=a.offset(r,-i);n=M.l2r(+a.ceil(s));break}var c=t[1];return[n,c]}}}),EB=Ye({"src/components/rangeselector/draw.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Gu(),M=Fn(),e=Bo(),t=ta(),r=t.strTranslate,o=jl(),a=Xc(),i=oh(),n=i.LINE_SPACING,s=i.FROM_TL,c=i.FROM_BR,h=HS(),v=MB();H.exports=function(d){var u=d._fullLayout,y=u._infolayer.selectAll(".rangeselector").data(p(d),T);y.enter().append("g").classed("rangeselector",!0),y.exit().remove(),y.style({cursor:"pointer","pointer-events":"all"}),y.each(function(f){var P=g.select(this),L=f,z=L.rangeselector,F=P.selectAll("g.button").data(t.filterVisible(z.buttons));F.enter().append("g").classed("button",!0),F.exit().remove(),F.each(function(B){var O=g.select(this),I=v(L,B);B._isActive=l(L,B,I),O.call(_,z,B),O.call(S,z,B,d),O.on("click",function(){d._dragged||x.call("_guiRelayout",d,I)}),O.on("mouseover",function(){B._isHovered=!0,O.call(_,z,B)}),O.on("mouseout",function(){B._isHovered=!1,O.call(_,z,B)})}),m(d,F,z,L._name,P)})};function p(b){for(var d=a.list(b,"x",!0),u=[],y=0;y<d.length;y++){var f=d[y];f.rangeselector&&f.rangeselector.visible&&u.push(f)}return u}function T(b){return b._id}function l(b,d,u){if(d.step==="all")return b.autorange===!0;var y=Object.keys(u);return b.range[0]===u[y[0]]&&b.range[1]===u[y[1]]}function _(b,d,u){var y=t.ensureSingle(b,"rect","selector-rect",function(f){f.attr("shape-rendering","crispEdges")});y.attr({rx:h.rx,ry:h.ry}),y.call(M.stroke,d.bordercolor).call(M.fill,w(d,u)).style("stroke-width",d.borderwidth+"px")}function w(b,d){return d._isActive||d._isHovered?b.activecolor:b.bgcolor}function S(b,d,u,y){function f(L){o.convertToTspans(L,y)}var P=t.ensureSingle(b,"text","selector-text",function(L){L.attr("text-anchor","middle")});P.call(e.font,d.font).text(E(u,y._fullLayout._meta)).call(f)}function E(b,d){return b.label?d?t.templateString(b.label,d):b.label:b.step==="all"?"all":b.count+b.step.charAt(0)}function m(b,d,u,y,f){var P=0,L=0,z=u.borderwidth;d.each(function(){var U=g.select(this),W=U.select(".selector-text"),Q=u.font.size*n,ue=Math.max(Q*o.lineCount(W),16)+3;L=Math.max(L,ue)}),d.each(function(){var U=g.select(this),W=U.select(".selector-rect"),Q=U.select(".selector-text"),ue=Q.node()&&e.bBox(Q.node()).width,se=u.font.size*n,he=o.lineCount(Q),G=Math.max(ue+10,h.minButtonWidth);U.attr("transform",r(z+P,z)),W.attr({x:0,y:0,width:G,height:L}),o.positionText(Q,G/2,L/2-(he-1)*se/2+3),P+=G+5});var F=b._fullLayout._size,B=F.l+F.w*u.x,O=F.t+F.h*(1-u.y),I="left";t.isRightAnchor(u)&&(B-=P,I="right"),t.isCenterAnchor(u)&&(B-=P/2,I="center");var N="top";t.isBottomAnchor(u)&&(O-=L,N="bottom"),t.isMiddleAnchor(u)&&(O-=L/2,N="middle"),P=Math.ceil(P),L=Math.ceil(L),B=Math.round(B),O=Math.round(O),A.autoMargin(b,y+"-range-selector",{x:u.x,y:u.y,l:P*s[I],r:P*c[I],b:L*c[N],t:L*s[N]}),f.attr("transform",r(B,O))}}}),kB=Ye({"src/components/rangeselector/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"rangeselector",schema:{subplots:{xaxis:{rangeselector:B2()}}},layoutAttributes:B2(),handleDefaults:SB(),draw:EB()}}}),Wu=Ye({"src/plots/domain.js"(X){"use strict";var H=Oo().extendFlat;X.attributes=function(g,x){g=g||{},x=x||{};var A={valType:"info_array",editType:g.editType,items:[{valType:"number",min:0,max:1,editType:g.editType},{valType:"number",min:0,max:1,editType:g.editType}],dflt:[0,1]},M=g.name?g.name+" ":"",e=g.trace?"trace ":"subplot ",t=x.description?" "+x.description:"",r={x:H({},A,{}),y:H({},A,{}),editType:g.editType};return g.noGridCell||(r.row={valType:"integer",min:0,dflt:0,editType:g.editType},r.column={valType:"integer",min:0,dflt:0,editType:g.editType}),r},X.defaults=function(g,x,A,M){var e=M&&M.x||[0,1],t=M&&M.y||[0,1],r=x.grid;if(r){var o=A("domain.column");o!==void 0&&(o<r.columns?e=r._domains.x[o]:delete g.domain.column);var a=A("domain.row");a!==void 0&&(a<r.rows?t=r._domains.y[a]:delete g.domain.row)}var i=A("domain.x",e),n=A("domain.y",t);i[0]<i[1]||(g.domain.x=e.slice()),n[0]<n[1]||(g.domain.y=t.slice())}}}),GS=Ye({"src/components/grid/index.js"(X,H){"use strict";var g=ta(),x=Ky().counter,A=Wu().attributes,M=wh().idRegex,e=cl(),t={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:[x("xy").toString(),""],editType:"plot"},editType:"plot"},xaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[M.x.toString(),""],editType:"plot"},editType:"plot"},yaxes:{valType:"info_array",freeLength:!0,items:{valType:"enumerated",values:[M.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:A({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 r(s,c,h){var v=c[h+"axes"],p=Object.keys((s._splomAxes||{})[h]||{});if(Array.isArray(v))return v;if(p.length)return p}function o(s,c){var h=s.grid||{},v=r(c,h,"x"),p=r(c,h,"y");if(!s.grid&&!v&&!p)return;var T=Array.isArray(h.subplots)&&Array.isArray(h.subplots[0]),l=Array.isArray(v),_=Array.isArray(p),w=l&&v!==h.xaxes&&_&&p!==h.yaxes,S,E;T?(S=h.subplots.length,E=h.subplots[0].length):(_&&(S=p.length),l&&(E=v.length));var m=e.newContainer(c,"grid");function b(O,I){return g.coerce(h,m,t,O,I)}var d=b("rows",S),u=b("columns",E);if(!(d*u>1)){delete c.grid;return}if(!T&&!l&&!_){var y=b("pattern")==="independent";y&&(T=!0)}m._hasSubplotGrid=T;var f=b("roworder"),P=f==="top to bottom",L=T?.2:.1,z=T?.3:.1,F,B;w&&c._splomGridDflt&&(F=c._splomGridDflt.xside,B=c._splomGridDflt.yside),m._domains={x:a("x",b,L,F,u),y:a("y",b,z,B,d,P)}}function a(s,c,h,v,p,T){var l=c(s+"gap",h),_=c("domain."+s);c(s+"side",v);for(var w=new Array(p),S=_[0],E=(_[1]-S)/(p-l),m=E*(1-l),b=0;b<p;b++){var d=S+E*b;w[T?p-1-b:b]=[d,d+m]}return w}function i(s,c){var h=c.grid;if(!(!h||!h._domains)){var v=s.grid||{},p=c._subplots,T=h._hasSubplotGrid,l=h.rows,_=h.columns,w=h.pattern==="independent",S,E,m,b,d,u,y,f=h._axisMap={};if(T){var P=v.subplots||[];u=h.subplots=new Array(l);var L=1;for(S=0;S<l;S++){var z=u[S]=new Array(_),F=P[S]||[];for(E=0;E<_;E++)if(w?(d=L===1?"xy":"x"+L+"y"+L,L++):d=F[E],z[E]="",p.cartesian.indexOf(d)!==-1){if(y=d.indexOf("y"),m=d.slice(0,y),b=d.slice(y),f[m]!==void 0&&f[m]!==E||f[b]!==void 0&&f[b]!==S)continue;z[E]=d,f[m]=E,f[b]=S}}}else{var B=r(c,v,"x"),O=r(c,v,"y");h.xaxes=n(B,p.xaxis,_,f,"x"),h.yaxes=n(O,p.yaxis,l,f,"y")}var I=h._anchors={},N=h.roworder==="top to bottom";for(var U in f){var W=U.charAt(0),Q=h[W+"side"],ue,se,he;if(Q.length<8)I[U]="free";else if(W==="x"){if(Q.charAt(0)==="t"===N?(ue=0,se=1,he=l):(ue=l-1,se=-1,he=-1),T){var G=f[U];for(S=ue;S!==he;S+=se)if(d=u[S][G],!!d&&(y=d.indexOf("y"),d.slice(0,y)===U)){I[U]=d.slice(y);break}}else for(S=ue;S!==he;S+=se)if(b=h.yaxes[S],p.cartesian.indexOf(U+b)!==-1){I[U]=b;break}}else if(Q.charAt(0)==="l"?(ue=0,se=1,he=_):(ue=_-1,se=-1,he=-1),T){var $=f[U];for(S=ue;S!==he;S+=se)if(d=u[$][S],!!d&&(y=d.indexOf("y"),d.slice(y)===U)){I[U]=d.slice(0,y);break}}else for(S=ue;S!==he;S+=se)if(m=h.xaxes[S],p.cartesian.indexOf(m+U)!==-1){I[U]=m;break}}}}function n(s,c,h,v,p){var T=new Array(h),l;function _(w,S){c.indexOf(S)!==-1&&v[S]===void 0?(T[w]=S,v[S]=w):T[w]=""}if(Array.isArray(s))for(l=0;l<h;l++)_(l,s[l]);else for(_(0,p),l=1;l<h;l++)_(l,p+(l+1));return T}H.exports={moduleType:"component",name:"grid",schema:{layout:{grid:t}},layoutAttributes:t,sizeDefaults:o,contentDefaults:i}}}),WS=Ye({"src/components/errorbars/attributes.js"(X,H){"use strict";H.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"}}}),CB=Ye({"src/components/errorbars/defaults.js"(X,H){"use strict";var g=jo(),x=Hn(),A=ta(),M=cl(),e=WS();H.exports=function(t,r,o,a){var i="error_"+a.axis,n=M.newContainer(r,i),s=t[i]||{};function c(w,S){return A.coerce(s,n,e,w,S)}var h=s.array!==void 0||s.value!==void 0||s.type==="sqrt",v=c("visible",h);if(v!==!1){var p=c("type","array"in s?"data":"percent"),T=!0;p!=="sqrt"&&(T=c("symmetric",!((p==="data"?"arrayminus":"valueminus")in s))),p==="data"?(c("array"),c("traceref"),T||(c("arrayminus"),c("tracerefminus"))):(p==="percent"||p==="constant")&&(c("value"),T||c("valueminus"));var l="copy_"+a.inherit+"style";if(a.inherit){var _=r["error_"+a.inherit];(_||{}).visible&&c(l,!(s.color||g(s.thickness)||g(s.width)))}(!a.inherit||!n[l])&&(c("color",o),c("thickness"),c("width",x.traceIs(r,"gl3d")?0:4))}}}}),ZS=Ye({"src/components/errorbars/compute_error.js"(X,H){"use strict";H.exports=function(A){var M=A.type,e=A.symmetric;if(M==="data"){var t=A.array||[];if(e)return function(n,s){var c=+t[s];return[c,c]};var r=A.arrayminus||[];return function(n,s){var c=+t[s],h=+r[s];return!isNaN(c)||!isNaN(h)?[h||0,c||0]:[NaN,NaN]}}else{var o=g(M,A.value),a=g(M,A.valueminus);return e||A.valueminus===void 0?function(n){var s=o(n);return[s,s]}:function(n){return[a(n),o(n)]}}};function g(x,A){if(x==="percent")return function(M){return Math.abs(M*A/100)};if(x==="constant")return function(){return Math.abs(A)};if(x==="sqrt")return function(M){return Math.sqrt(Math.abs(M))}}}}),LB=Ye({"src/components/errorbars/calc.js"(X,H){"use strict";var g=jo(),x=Hn(),A=Co(),M=ta(),e=ZS();H.exports=function(o){for(var a=o.calcdata,i=0;i<a.length;i++){var n=a[i],s=n[0].trace;if(s.visible===!0&&x.traceIs(s,"errorBarsOK")){var c=A.getFromId(o,s.xaxis),h=A.getFromId(o,s.yaxis);t(n,s,c,"x"),t(n,s,h,"y")}}};function t(r,o,a,i){var n=o["error_"+i]||{},s=n.visible&&["linear","log"].indexOf(a.type)!==-1,c=[];if(s){for(var h=e(n),v=0;v<r.length;v++){var p=r[v],T=p.i;if(T===void 0)T=v;else if(T===null)continue;var l=p[i];if(g(a.c2l(l))){var _=h(l,T);if(g(_[0])&&g(_[1])){var w=p[i+"s"]=l-_[0],S=p[i+"h"]=l+_[1];c.push(w,S)}}}var E=a._id,m=o._extremes[E],b=A.findExtremes(a,c,M.extendFlat({tozero:m.opts.tozero},{padded:!0}));m.min=m.min.concat(b.min),m.max=m.max.concat(b.max)}}}}),PB=Ye({"src/components/errorbars/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=Bo(),M=uu();H.exports=function(r,o,a,i){var n,s=a.xaxis,c=a.yaxis,h=i&&i.duration>0,v=r._context.staticPlot;o.each(function(p){var T=p[0].trace,l=T.error_x||{},_=T.error_y||{},w;T.ids&&(w=function(b){return b.id});var S=M.hasMarkers(T)&&T.marker.maxdisplayed>0;!_.visible&&!l.visible&&(p=[]);var E=g.select(this).selectAll("g.errorbar").data(p,w);if(E.exit().remove(),!!p.length){l.visible||E.selectAll("path.xerror").remove(),_.visible||E.selectAll("path.yerror").remove(),E.style("opacity",1);var m=E.enter().append("g").classed("errorbar",!0);h&&m.style("opacity",0).transition().duration(i.duration).style("opacity",1),A.setClipUrl(E,a.layerClipId,r),E.each(function(b){var d=g.select(this),u=e(b,s,c);if(!(S&&!b.vis)){var y,f=d.select("path.yerror");if(_.visible&&x(u.x)&&x(u.yh)&&x(u.ys)){var P=_.width;y="M"+(u.x-P)+","+u.yh+"h"+2*P+"m-"+P+",0V"+u.ys,u.noYS||(y+="m-"+P+",0h"+2*P),n=!f.size(),n?f=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("yerror",!0):h&&(f=f.transition().duration(i.duration).ease(i.easing)),f.attr("d",y)}else f.remove();var L=d.select("path.xerror");if(l.visible&&x(u.y)&&x(u.xh)&&x(u.xs)){var z=(l.copy_ystyle?_:l).width;y="M"+u.xh+","+(u.y-z)+"v"+2*z+"m0,-"+z+"H"+u.xs,u.noXS||(y+="m0,-"+z+"v"+2*z),n=!L.size(),n?L=d.append("path").style("vector-effect",v?"none":"non-scaling-stroke").classed("xerror",!0):h&&(L=L.transition().duration(i.duration).ease(i.easing)),L.attr("d",y)}else L.remove()}})}})};function e(t,r,o){var a={x:r.c2p(t.x),y:o.c2p(t.y)};return t.yh!==void 0&&(a.yh=o.c2p(t.yh),a.ys=o.c2p(t.ys),x(a.ys)||(a.noYS=!0,a.ys=o.c2p(t.ys,!0))),t.xh!==void 0&&(a.xh=r.c2p(t.xh),a.xs=r.c2p(t.xs),x(a.xs)||(a.noXS=!0,a.xs=r.c2p(t.xs,!0))),a}}}),IB=Ye({"src/components/errorbars/style.js"(X,H){"use strict";var g=_n(),x=Fn();H.exports=function(M){M.each(function(e){var t=e[0].trace,r=t.error_y||{},o=t.error_x||{},a=g.select(this);a.selectAll("path.yerror").style("stroke-width",r.thickness+"px").call(x.stroke,r.color),o.copy_ystyle&&(o=r),a.selectAll("path.xerror").style("stroke-width",o.thickness+"px").call(x.stroke,o.color)})}}}),RB=Ye({"src/components/errorbars/index.js"(X,H){"use strict";var g=ta(),x=Ou().overrideAll,A=WS(),M={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A)};delete M.error_x.copy_zstyle,delete M.error_y.copy_zstyle,delete M.error_y.copy_ystyle;var e={error_x:g.extendFlat({},A),error_y:g.extendFlat({},A),error_z:g.extendFlat({},A)};delete e.error_x.copy_ystyle,delete e.error_y.copy_ystyle,delete e.error_z.copy_ystyle,delete e.error_z.copy_zstyle,H.exports={moduleType:"component",name:"errorbars",schema:{traces:{scatter:M,bar:M,histogram:M,scatter3d:x(e,"calc","nested"),scattergl:x(M,"calc","nested")}},supplyDefaults:CB(),calc:LB(),makeComputeError:ZS(),plot:PB(),style:IB(),hoverInfo:t};function t(r,o,a){(o.error_y||{}).visible&&(a.yerr=r.yh-r.y,o.error_y.symmetric||(a.yerrneg=r.y-r.ys)),(o.error_x||{}).visible&&(a.xerr=r.xh-r.x,o.error_x.symmetric||(a.xerrneg=r.x-r.xs))}}}),DB=Ye({"src/components/colorbar/constants.js"(X,H){"use strict";H.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"}}}}),zB=Ye({"src/components/colorbar/draw.js"(X,H){"use strict";var g=_n(),x=bh(),A=Gu(),M=Hn(),e=Co(),t=bp(),r=ta(),o=r.strTranslate,a=Oo().extendFlat,i=Kd(),n=Bo(),s=Fn(),c=Xg(),h=jl(),v=Up().flipScale,p=R_(),T=I2(),l=Vh(),_=oh(),w=_.LINE_SPACING,S=_.FROM_TL,E=_.FROM_BR,m=DB().cn;function b(L){var z=L._fullLayout,F=z._infolayer.selectAll("g."+m.colorbar).data(d(L),function(B){return B._id});F.enter().append("g").attr("class",function(B){return B._id}).classed(m.colorbar,!0),F.each(function(B){var O=g.select(this);r.ensureSingle(O,"rect",m.cbbg),r.ensureSingle(O,"g",m.cbfills),r.ensureSingle(O,"g",m.cblines),r.ensureSingle(O,"g",m.cbaxis,function(N){N.classed(m.crisp,!0)}),r.ensureSingle(O,"g",m.cbtitleunshift,function(N){N.append("g").classed(m.cbtitle,!0)}),r.ensureSingle(O,"rect",m.cboutline);var I=u(O,B,L);I&&I.then&&(L._promises||[]).push(I),L._context.edits.colorbarPosition&&y(O,B,L)}),F.exit().each(function(B){A.autoMargin(L,B._id)}).remove(),F.order()}function d(L){var z=L._fullLayout,F=L.calcdata,B=[],O,I,N,U;function W(j){return a(j,{_fillcolor:null,_line:{color:null,width:null,dash:null},_levels:{start:null,end:null,size:null},_filllevels:null,_fillgradient:null,_zrange:null})}function Q(){typeof U.calc=="function"?U.calc(L,N,O):(O._fillgradient=I.reversescale?v(I.colorscale):I.colorscale,O._zrange=[I[U.min],I[U.max]])}for(var ue=0;ue<F.length;ue++){var se=F[ue];if(N=se[0].trace,!!N._module){var he=N._module.colorbar;if(N.visible===!0&&he)for(var G=Array.isArray(he),$=G?he:[he],J=0;J<$.length;J++){U=$[J];var Z=U.container;I=Z?N[Z]:N,I&&I.showscale&&(O=W(I.colorbar),O._id="cb"+N.uid+(G&&Z?"-"+Z:""),O._traceIndex=N.index,O._propPrefix=(Z?Z+".":"")+"colorbar.",O._meta=N._meta,Q(),B.push(O))}}}for(var re in z._colorAxes)if(I=z[re],I.showscale){var ne=z._colorAxes[re];O=W(I.colorbar),O._id="cb"+re,O._propPrefix=re+".colorbar.",O._meta=z._meta,U={min:"cmin",max:"cmax"},ne[0]!=="heatmap"&&(N=ne[1],U.calc=N._module.colorbar.calc),Q(),B.push(O)}return B}function u(L,z,F){var B=z.orientation==="v",O=z.len,I=z.lenmode,N=z.thickness,U=z.thicknessmode,W=z.outlinewidth,Q=z.borderwidth,ue=z.bgcolor,se=z.xanchor,he=z.yanchor,G=z.xpad,$=z.ypad,J=z.x,Z=B?z.y:1-z.y,re=z.yref==="paper",ne=z.xref==="paper",j=F._fullLayout,ee=j._size,ie=z._fillcolor,fe=z._line,be=z.title,Ae=be.side,Be=z._zrange||g.extent((typeof ie=="function"?ie:fe.color).domain()),Ie=typeof fe.color=="function"?fe.color:function(){return fe.color},Ze=typeof ie=="function"?ie:function(){return ie},at=z._levels,it=f(F,z,Be),et=it.fill,lt=it.line,Me=Math.round(N*(U==="fraction"?B?ee.w:ee.h:1)),ge=Me/(B?ee.w:ee.h),ce=Math.round(O*(I==="fraction"?B?ee.h:ee.w:1)),ze=ce/(B?ee.h:ee.w),tt=ne?ee.w:F._fullLayout.width,nt=re?ee.h:F._fullLayout.height,Qe=Math.round(B?J*tt+G:Z*nt+$),Ct={center:.5,right:1}[se]||0,St={top:1,middle:.5}[he]||0,Ot=B?J-Ct*ge:Z-St*ge,jt=B?Z-St*ze:J-Ct*ze,ur=Math.round(B?nt*(1-jt):tt*jt);z._lenFrac=ze,z._thickFrac=ge,z._uFrac=Ot,z._vFrac=jt;var ar=z._axis=P(F,z,Be);ar.position=ge+(B?J+G/ee.w:Z+$/ee.h);var Cr=["top","bottom"].indexOf(Ae)!==-1;if(B&&Cr&&(ar.title.side=Ae,ar.titlex=J+G/ee.w,ar.titley=jt+(be.side==="top"?ze-$/ee.h:$/ee.h)),!B&&!Cr&&(ar.title.side=Ae,ar.titley=Z+$/ee.h,ar.titlex=jt+G/ee.w),fe.color&&z.tickmode==="auto"){ar.tickmode="linear",ar.tick0=at.start;var vr=at.size,_r=r.constrain(ce/50,4,15)+1,yt=(Be[1]-Be[0])/((z.nticks||_r)*vr);if(yt>1){var Fe=Math.pow(10,Math.floor(Math.log(yt)/Math.LN10));vr*=Fe*r.roundUp(yt/Fe,[2,5,10]),(Math.abs(at.start)/at.size+1e-6)%1<2e-6&&(ar.tick0=0)}ar.dtick=vr}ar.domain=B?[jt+$/ee.h,jt+ze-$/ee.h]:[jt+G/ee.w,jt+ze-G/ee.w],ar.setScale(),L.attr("transform",o(Math.round(ee.l),Math.round(ee.t)));var Ke=L.select("."+m.cbtitleunshift).attr("transform",o(-Math.round(ee.l),-Math.round(ee.t))),Ne=ar.ticklabelposition,Ee=ar.title.font.size,Ve=L.select("."+m.cbaxis),ke,Te=0,Le=0;function rt(Gt,Kt){var sr={propContainer:ar,propName:z._propPrefix+"title",traceIndex:z._traceIndex,_meta:z._meta,placeholder:j._dfltTitle.colorbar,containerGroup:L.select("."+m.cbtitle)},sa=Gt.charAt(0)==="h"?Gt.substr(1):"h"+Gt;L.selectAll("."+sa+",."+sa+"-math-group").remove(),c.draw(F,Gt,a(sr,Kt||{}))}function dt(){if(B&&Cr||!B&&!Cr){var Gt,Kt;Ae==="top"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt-ze)+3+Ee*.75),Ae==="bottom"&&(Gt=G+ee.l+tt*J,Kt=$+ee.t+nt*(1-jt)-3-Ee*.25),Ae==="right"&&(Kt=$+ee.t+nt*Z+3+Ee*.75,Gt=G+ee.l+tt*jt),rt(ar._id+"title",{attributes:{x:Gt,y:Kt,"text-anchor":B?"start":"middle"}})}}function xt(){if(B&&!Cr||!B&&Cr){var Gt=ar.position||0,Kt=ar._offset+ar._length/2,sr,sa;if(Ae==="right")sa=Kt,sr=ee.l+tt*Gt+10+Ee*(ar.showticklabels?1:.5);else if(sr=Kt,Ae==="bottom"&&(sa=ee.t+nt*Gt+10+(Ne.indexOf("inside")===-1?ar.tickfont.size:0)+(ar.ticks!=="intside"&&z.ticklen||0)),Ae==="top"){var Aa=be.text.split("<br>").length;sa=ee.t+nt*Gt+10-Me-w*Ee*Aa}rt((B?"h":"v")+ar._id+"title",{avoid:{selection:g.select(F).selectAll("g."+ar._id+"tick"),side:Ae,offsetTop:B?0:ee.t,offsetLeft:B?ee.l:0,maxShift:B?j.width:j.height},attributes:{x:sr,y:sa,"text-anchor":"middle"},transform:{rotate:B?-90:0,offset:0}})}}function It(){if(!B&&!Cr||B&&Cr){var Gt=L.select("."+m.cbtitle),Kt=Gt.select("text"),sr=[-W/2,W/2],sa=Gt.select(".h"+ar._id+"title-math-group").node(),Aa=15.6;Kt.node()&&(Aa=parseInt(Kt.node().style.fontSize,10)*w);var La;if(sa?(La=n.bBox(sa),Le=La.width,Te=La.height,Te>Aa&&(sr[1]-=(Te-Aa)/2)):Kt.node()&&!Kt.classed(m.jsPlaceholder)&&(La=n.bBox(Kt.node()),Le=La.width,Te=La.height),B){if(Te){if(Te+=5,Ae==="top")ar.domain[1]-=Te/ee.h,sr[1]*=-1;else{ar.domain[0]+=Te/ee.h;var ka=h.lineCount(Kt);sr[1]+=(1-ka)*Aa}Gt.attr("transform",o(sr[0],sr[1])),ar.setScale()}}else Le&&(Ae==="right"&&(ar.domain[0]+=(Le+Ee/2)/ee.w),Gt.attr("transform",o(sr[0],sr[1])),ar.setScale())}L.selectAll("."+m.cbfills+",."+m.cblines).attr("transform",B?o(0,Math.round(ee.h*(1-ar.domain[1]))):o(Math.round(ee.w*ar.domain[0]),0)),Ve.attr("transform",B?o(0,Math.round(-ee.t)):o(Math.round(-ee.l),0));var Ga=L.select("."+m.cbfills).selectAll("rect."+m.cbfill).attr("style","").data(et);Ga.enter().append("rect").classed(m.cbfill,!0).attr("style",""),Ga.exit().remove();var Ma=Be.map(ar.c2p).map(Math.round).sort(function(Vt,Ut){return Vt-Ut});Ga.each(function(Vt,Ut){var xr=[Ut===0?Be[0]:(et[Ut]+et[Ut-1])/2,Ut===et.length-1?Be[1]:(et[Ut]+et[Ut+1])/2].map(ar.c2p).map(Math.round);B&&(xr[1]=r.constrain(xr[1]+(xr[1]>xr[0])?1:-1,Ma[0],Ma[1]));var Zr=g.select(this).attr(B?"x":"y",Qe).attr(B?"y":"x",g.min(xr)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(g.max(xr)-g.min(xr),2));if(z._fillgradient)n.gradient(Zr,F,z._id,B?"vertical":"horizontalreversed",z._fillgradient,"fill");else{var pa=Ze(Vt).replace("e-","");Zr.attr("fill",x(pa).toHexString())}});var Ua=L.select("."+m.cblines).selectAll("path."+m.cbline).data(fe.color&&fe.width?lt:[]);Ua.enter().append("path").classed(m.cbline,!0),Ua.exit().remove(),Ua.each(function(Vt){var Ut=Qe,xr=Math.round(ar.c2p(Vt))+fe.width/2%1;g.select(this).attr("d","M"+(B?Ut+","+xr:xr+","+Ut)+(B?"h":"v")+Me).call(n.lineGroupStyle,fe.width,Ie(Vt),fe.dash)}),Ve.selectAll("g."+ar._id+"tick,path").remove();var ni=Qe+Me+(W||0)/2-(z.ticks==="outside"?1:0),Wt=e.calcTicks(ar),zt=e.getTickSigns(ar)[2];return e.drawTicks(F,ar,{vals:ar.ticks==="inside"?e.clipEnds(ar,Wt):Wt,layer:Ve,path:e.makeTickPath(ar,ni,zt),transFn:e.makeTransTickFn(ar)}),e.drawLabels(F,ar,{vals:Wt,layer:Ve,transFn:e.makeTransTickLabelFn(ar),labelFns:e.makeLabelFns(ar,ni)})}function Bt(){var Gt,Kt=Me+W/2;Ne.indexOf("inside")===-1&&(Gt=n.bBox(Ve.node()),Kt+=B?Gt.width:Gt.height),ke=Ke.select("text");var sr=0,sa=B&&Ae==="top",Aa=!B&&Ae==="right",La=0;if(ke.node()&&!ke.classed(m.jsPlaceholder)){var ka,Ga=Ke.select(".h"+ar._id+"title-math-group").node();Ga&&(B&&Cr||!B&&!Cr)?(Gt=n.bBox(Ga),sr=Gt.width,ka=Gt.height):(Gt=n.bBox(Ke.node()),sr=Gt.right-ee.l-(B?Qe:ur),ka=Gt.bottom-ee.t-(B?ur:Qe),!B&&Ae==="top"&&(Kt+=Gt.height,La=Gt.height)),Aa&&(ke.attr("transform",o(sr/2+Ee/2,0)),sr*=2),Kt=Math.max(Kt,B?sr:ka)}var Ma=(B?G:$)*2+Kt+Q+W/2,Ua=0;!B&&be.text&&he==="bottom"&&Z<=0&&(Ua=Ma/2,Ma+=Ua,La+=Ua),j._hColorbarMoveTitle=Ua,j._hColorbarMoveCBTitle=La;var ni=Q+W,Wt=(B?Qe:ur)-ni/2-(B?G:0),zt=(B?ur:Qe)-(B?ce:$+La-Ua);L.select("."+m.cbbg).attr("x",Wt).attr("y",zt).attr(B?"width":"height",Math.max(Ma-Ua,2)).attr(B?"height":"width",Math.max(ce+ni,2)).call(s.fill,ue).call(s.stroke,z.bordercolor).style("stroke-width",Q);var Vt=Aa?Math.max(sr-10,0):0;L.selectAll("."+m.cboutline).attr("x",(B?Qe:ur+G)+Vt).attr("y",(B?ur+$-ce:Qe)+(sa?Te:0)).attr(B?"width":"height",Math.max(Me,2)).attr(B?"height":"width",Math.max(ce-(B?2*$+Te:2*G+Vt),2)).call(s.stroke,z.outlinecolor).style({fill:"none","stroke-width":W});var Ut=B?Ct*Ma:0,xr=B?0:(1-St)*Ma-La;if(Ut=ne?ee.l-Ut:-Ut,xr=re?ee.t-xr:-xr,L.attr("transform",o(Ut,xr)),!B&&(Q||x(ue).getAlpha()&&!x.equals(j.paper_bgcolor,ue))){var Zr=Ve.selectAll("text"),pa=Zr[0].length,Xr=L.select("."+m.cbbg).node(),Ea=n.bBox(Xr),Fa=n.getTranslate(L),qa=2;Zr.each(function(Fr,Lr){var Jr=0,oa=pa-1;if(Lr===Jr||Lr===oa){var ca=n.bBox(this),kt=n.getTranslate(this),ir;if(Lr===oa){var mr=ca.right+kt.x,$r=Ea.right+Fa.x+ur-Q-qa+J;ir=$r-mr,ir>0&&(ir=0)}else if(Lr===Jr){var ma=ca.left+kt.x,Ba=Ea.left+Fa.x+ur+Q+qa;ir=Ba-ma,ir<0&&(ir=0)}ir&&(pa<3?this.setAttribute("transform","translate("+ir+",0) "+this.getAttribute("transform")):this.setAttribute("visibility","hidden"))}})}var ya={},$a=S[se],mt=E[se],gt=S[he],Er=E[he],kr=Ma-Me;B?(I==="pixels"?(ya.y=Z,ya.t=ce*gt,ya.b=ce*Er):(ya.t=ya.b=0,ya.yt=Z+O*gt,ya.yb=Z-O*Er),U==="pixels"?(ya.x=J,ya.l=Ma*$a,ya.r=Ma*mt):(ya.l=kr*$a,ya.r=kr*mt,ya.xl=J-N*$a,ya.xr=J+N*mt)):(I==="pixels"?(ya.x=J,ya.l=ce*$a,ya.r=ce*mt):(ya.l=ya.r=0,ya.xl=J+O*$a,ya.xr=J-O*mt),U==="pixels"?(ya.y=1-Z,ya.t=Ma*gt,ya.b=Ma*Er):(ya.t=kr*gt,ya.b=kr*Er,ya.yt=Z-N*gt,ya.yb=Z+N*Er));var br=z.y<.5?"b":"t",Tr=z.x<.5?"l":"r";F._fullLayout._reservedMargin[z._id]={};var Mr={r:j.width-Wt-Ut,l:Wt+ya.r,b:j.height-zt-xr,t:zt+ya.b};ne&&re?A.autoMargin(F,z._id,ya):ne?F._fullLayout._reservedMargin[z._id][br]=Mr[br]:re||B?F._fullLayout._reservedMargin[z._id][Tr]=Mr[Tr]:F._fullLayout._reservedMargin[z._id][br]=Mr[br]}return r.syncOrAsync([A.previousPromises,dt,It,xt,A.previousPromises,Bt],F)}function y(L,z,F){var B=z.orientation==="v",O=F._fullLayout,I=O._size,N,U,W;t.init({element:L.node(),gd:F,prepFn:function(){N=L.attr("transform"),i(L)},moveFn:function(Q,ue){L.attr("transform",N+o(Q,ue)),U=t.align((B?z._uFrac:z._vFrac)+Q/I.w,B?z._thickFrac:z._lenFrac,0,1,z.xanchor),W=t.align((B?z._vFrac:1-z._uFrac)-ue/I.h,B?z._lenFrac:z._thickFrac,0,1,z.yanchor);var se=t.getCursor(U,W,z.xanchor,z.yanchor);i(L,se)},doneFn:function(){if(i(L),U!==void 0&&W!==void 0){var Q={};Q[z._propPrefix+"x"]=U,Q[z._propPrefix+"y"]=W,z._traceIndex!==void 0?M.call("_guiRestyle",F,Q,z._traceIndex):M.call("_guiRelayout",F,Q)}}})}function f(L,z,F){var B=z._levels,O=[],I=[],N,U,W=B.end+B.size/100,Q=B.size,ue=1.001*F[0]-.001*F[1],se=1.001*F[1]-.001*F[0];for(U=0;U<1e5&&(N=B.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>ue&&N<se&&O.push(N);if(z._fillgradient)I=[0];else if(typeof z._fillcolor=="function"){var he=z._filllevels;if(he)for(W=he.end+he.size/100,Q=he.size,U=0;U<1e5&&(N=he.start+U*Q,!(Q>0?N>=W:N<=W));U++)N>F[0]&&N<F[1]&&I.push(N);else I=O.map(function(G){return G-B.size/2}),I.push(I[I.length-1]+B.size)}else z._fillcolor&&typeof z._fillcolor=="string"&&(I=[0]);return B.size<0&&(O.reverse(),I.reverse()),{line:O,fill:I}}function P(L,z,F){var B=L._fullLayout,O=z.orientation==="v",I={type:"linear",range:F,tickmode:z.tickmode,nticks:z.nticks,tick0:z.tick0,dtick:z.dtick,tickvals:z.tickvals,ticktext:z.ticktext,ticks:z.ticks,ticklen:z.ticklen,tickwidth:z.tickwidth,tickcolor:z.tickcolor,showticklabels:z.showticklabels,labelalias:z.labelalias,ticklabelposition:z.ticklabelposition,ticklabeloverflow:z.ticklabeloverflow,ticklabelstep:z.ticklabelstep,tickfont:z.tickfont,tickangle:z.tickangle,tickformat:z.tickformat,exponentformat:z.exponentformat,minexponent:z.minexponent,separatethousands:z.separatethousands,showexponent:z.showexponent,showtickprefix:z.showtickprefix,tickprefix:z.tickprefix,showticksuffix:z.showticksuffix,ticksuffix:z.ticksuffix,title:z.title,showline:!0,anchor:"free",side:O?"right":"bottom",position:1},N=O?"y":"x",U={type:"linear",_id:N+z._id},W={letter:N,font:B.font,noAutotickangles:N==="y",noHover:!0,noTickson:!0,noTicklabelmode:!0,noInsideRange:!0,calendar:B.calendar};function Q(ue,se){return r.coerce(I,U,l,ue,se)}return p(I,U,Q,W,B),T(I,U,Q,W),U}H.exports={draw:b}}}),FB=Ye({"src/components/colorbar/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"colorbar",attributes:y2(),supplyDefaults:uS(),draw:zB().draw,hasColorbar:oS()}}}),OB=Ye({"src/components/legend/index.js"(X,H){"use strict";H.exports={moduleType:"component",name:"legend",layoutAttributes:hS(),supplyLayoutDefaults:pS(),draw:mS(),style:vS()}}}),BB=Ye({"src/locale-en.js"(X,H){"use strict";H.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"}}}}),NB=Ye({"src/locale-en-us.js"(X,H){"use strict";H.exports={moduleType:"locale",name:"en-US",dictionary:{"Click to enter Colorscale title":"Click to enter Colorscale title"},format:{date:"%m/%d/%Y"}}}}),XS=Ye({"src/snapshot/cloneplot.js"(X,H){"use strict";var g=Hn(),x=ta(),A=x.extendFlat,M=x.extendDeep;function e(r){var o;switch(r){case"themes__thumb":o={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":o={title:{text:""},hidesources:!0,showlegend:!1,borderwidth:0,bordercolor:"",margin:{l:1,r:1,t:1,b:1,pad:0},annotations:[]};break;default:o={}}return o}function t(r){var o=["xaxis","yaxis","zaxis"];return o.indexOf(r.slice(0,5))>-1}H.exports=function(o,a){var i,n=o.data,s=o.layout,c=M([],n),h=M({},s,e(a.tileClass)),v=o._context||{};if(a.width&&(h.width=a.width),a.height&&(h.height=a.height),a.tileClass==="thumbnail"||a.tileClass==="themes__thumb"){h.annotations=[];var p=Object.keys(h);for(i=0;i<p.length;i++)t(p[i])&&(h[p[i]].title={text:""});for(i=0;i<c.length;i++){var T=c[i];T.showscale=!1,T.marker&&(T.marker.showscale=!1),g.traceIs(T,"pie-like")&&(T.textposition="none")}}if(Array.isArray(a.annotations))for(i=0;i<a.annotations.length;i++)h.annotations.push(a.annotations[i]);var l=Object.keys(h).filter(function(m){return m.match(/^scene\d*$/)});if(l.length){var _={};for(a.tileClass==="thumbnail"&&(_={title:{text:""},showaxeslabels:!1,showticklabels:!1,linetickenable:!1}),i=0;i<l.length;i++){var w=h[l[i]];w.xaxis||(w.xaxis={}),w.yaxis||(w.yaxis={}),w.zaxis||(w.zaxis={}),A(w.xaxis,_),A(w.yaxis,_),A(w.zaxis,_),w._scene=null}}var S=document.createElement("div");a.tileClass&&(S.className=a.tileClass);var E={gd:S,td:S,layout:h,data:c,config:{staticPlot:a.staticPlot===void 0?!0:a.staticPlot,plotGlPixelRatio:a.plotGlPixelRatio===void 0?2:a.plotGlPixelRatio,displaylogo:a.displaylogo||!1,showLink:a.showLink||!1,showTips:a.showTips||!1,mapboxAccessToken:v.mapboxAccessToken}};return a.setBackground!=="transparent"&&(E.config.setBackground=a.setBackground||"opaque"),E.gd.defaultLayout=e(a.tileClass),E}}}),UB=Ye({"src/snapshot/toimage.js"(X,H){"use strict";var g=Wg().EventEmitter,x=Hn(),A=ta(),M=Xv(),e=XS(),t=k2(),r=C2();function o(a,i){var n=new g,s=e(a,{format:"png"}),c=s.gd;c.style.position="absolute",c.style.left="-5000px",document.body.appendChild(c);function h(){var p=M.getDelay(c._fullLayout);setTimeout(function(){var T=t(c),l=document.createElement("canvas");l.id=A.randstr(),n=r({format:i.format,width:c._fullLayout.width,height:c._fullLayout.height,canvas:l,emitter:n,svg:T}),n.clean=function(){c&&document.body.removeChild(c)}},p)}var v=M.getRedrawFunc(c);return x.call("_doPlot",c,s.data,s.layout,s.config).then(v).then(h).catch(function(p){n.emit("error",p)}),n}H.exports=o}}),jB=Ye({"src/snapshot/index.js"(X,H){"use strict";var g=Xv(),x={getDelay:g.getDelay,getRedrawFunc:g.getRedrawFunc,clone:XS(),toSVG:k2(),svgToImg:C2(),toImage:UB(),downloadImage:IS()};H.exports=x}}),VB=Ye({"src/core.js"(X){"use strict";X.version=xh().version,Bp(),$F();var H=Hn(),g=X.register=H.register,x=NO(),A=Object.keys(x);for(e=0;e<A.length;e++)M=A[e],M.charAt(0)!=="_"&&(X[M]=x[M]),g({moduleType:"apiMethod",name:M,fn:x[M]});var M,e;g(XO()),g([eB(),iB(),ff(),lB(),hB(),mB(),_B(),AB(),kB(),GS(),RB(),Su(),FB(),OB(),Lc(),AS()]),g([BB(),NB()]),window.PlotlyLocales&&Array.isArray(window.PlotlyLocales)&&(g(window.PlotlyLocales),delete window.PlotlyLocales),X.Icons=b2();var t=Lc(),r=Gu();X.Plots={resize:r.resize,graphJson:r.graphJson,sendDataToCloud:r.sendDataToCloud},X.Fx={hover:t.hover,unhover:t.unhover,loneHover:t.loneHover,loneUnhover:t.loneUnhover},X.Snapshot=jB(),X.PlotSchema=Qy()}}),qB=Ye({"lib/core.js"(X,H){"use strict";H.exports=VB()}}),Qg=Ye({"src/traces/bar/constants.js"(X,H){"use strict";H.exports={TEXTPAD:3,eventDataKeys:["value","label"]}}}),Sv=Ye({"src/traces/bar/attributes.js"(X,H){"use strict";var g=Pc(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=xs().texttemplateAttrs,e=tu(),t=Au(),r=Qg(),o=Uh().pattern,a=Oo().extendFlat,i=t({editType:"calc",arrayOk:!0,colorEditType:"style"}),n=g.marker,s=n.line,c=a({},s.width,{dflt:0}),h=a({width:c,editType:"calc"},e("marker.line")),v=a({line:h,editType:"calc"},e("marker"),{opacity:{valType:"number",arrayOk:!0,dflt:1,min:0,max:1,editType:"style"},pattern:o,cornerradius:{valType:"any",editType:"calc"}});H.exports={x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:x("x"),yhoverformat:x("y"),text:g.text,texttemplate:M({editType:"plot"},{keys:r.eventDataKeys}),hovertext:g.hovertext,hovertemplate:A({},{keys:r.eventDataKeys}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"calc"},insidetextanchor:{valType:"enumerated",values:["end","middle","start"],dflt:"end",editType:"plot"},textangle:{valType:"angle",dflt:"auto",editType:"plot"},textfont:a({},i,{}),insidetextfont:a({},i,{}),outsidetextfont:a({},i,{}),constraintext:{valType:"enumerated",values:["inside","outside","both","none"],dflt:"both",editType:"calc"},cliponaxis:a({},g.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:v,offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:{marker:{opacity:g.selected.marker.opacity,color:g.selected.marker.color,editType:"style"},textfont:g.selected.textfont,editType:"style"},unselected:{marker:{opacity:g.unselected.marker.opacity,color:g.unselected.marker.color,editType:"style"},textfont:g.unselected.textfont,editType:"style"},zorder:g.zorder}}}),N2=Ye({"src/traces/bar/layout_attributes.js"(X,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","group","overlay","relative"],dflt:"group",editType:"calc"},barnorm:{valType:"enumerated",values:["","fraction","percent"],dflt:"",editType:"calc"},bargap:{valType:"number",min:0,max:1,editType:"calc"},bargroupgap:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},barcornerradius:{valType:"any",editType:"calc"}}}}),U2=Ye({"src/traces/bar/style_defaults.js"(X,H){"use strict";var g=Fn(),x=Up().hasColorscale,A=sh(),M=ta().coercePattern;H.exports=function(t,r,o,a,i){var n=o("marker.color",a),s=x(t,"marker");s&&A(t,r,i,o,{prefix:"marker.",cLetter:"c"}),o("marker.line.color",g.defaultLine),x(t,"marker.line")&&A(t,r,i,o,{prefix:"marker.line.",cLetter:"c"}),o("marker.line.width"),o("marker.opacity"),M(o,"marker.pattern",n,s),o("selected.marker.color"),o("unselected.marker.color")}}}),gd=Ye({"src/traces/bar/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Hn(),e=i1(),t=Qd(),r=U2(),o=Jg(),a=Sv(),i=x.coerceFont;function n(v,p,T,l){function _(b,d){return x.coerce(v,p,a,b,d)}var w=e(v,p,l,_);if(!w){p.visible=!1;return}t(v,p,l,_),_("xhoverformat"),_("yhoverformat"),_("zorder"),_("orientation",p.x&&!p.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var S=_("textposition");h(v,p,l,_,S,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),r(v,p,_,T,l);var E=(p.marker.line||{}).color,m=M.getComponentMethod("errorbars","supplyDefaults");m(v,p,E||A.defaultLine,{axis:"y"}),m(v,p,E||A.defaultLine,{axis:"x",inherit:"y"}),x.coerceSelectionMarkerOpacity(p,_)}function s(v,p){var T,l;function _(E,m){return x.coerce(l._input,l,a,E,m)}for(var w=0;w<v.length;w++)if(l=v[w],l.type==="bar"){T=l._input;var S=_("marker.cornerradius",p.barcornerradius);l.marker&&(l.marker.cornerradius=c(S)),o(T,l,p,_,p.barmode)}}function c(v){if(g(v)){if(v=+v,v>=0)return v}else if(typeof v=="string"&&(v=v.trim(),v.slice(-1)==="%"&&g(v.slice(0,-1))&&(v=+v.slice(0,-1),v>=0)))return v+"%"}function h(v,p,T,l,_,w){w=w||{};var S=w.moduleHasSelected!==!1,E=w.moduleHasUnselected!==!1,m=w.moduleHasConstrain!==!1,b=w.moduleHasCliponaxis!==!1,d=w.moduleHasTextangle!==!1,u=w.moduleHasInsideanchor!==!1,y=!!w.hasPathbar,f=Array.isArray(_)||_==="auto",P=f||_==="inside",L=f||_==="outside";if(P||L){var z=i(l,"textfont",T.font),F=x.extendFlat({},z),B=v.textfont&&v.textfont.color,O=!B;if(O&&delete F.color,i(l,"insidetextfont",F),y){var I=x.extendFlat({},z);O&&delete I.color,i(l,"pathbar.textfont",I)}L&&i(l,"outsidetextfont",z),S&&l("selected.textfont.color"),E&&l("unselected.textfont.color"),m&&l("constraintext"),b&&l("cliponaxis"),d&&l("textangle"),l("texttemplate")}P&&u&&l("insidetextanchor")}H.exports={supplyDefaults:n,crossTraceDefaults:s,handleText:h,validateCornerradius:c}}}),YS=Ye({"src/traces/bar/layout_defaults.js"(X,H){"use strict";var g=Hn(),x=Co(),A=ta(),M=N2(),e=gd().validateCornerradius;H.exports=function(t,r,o){function a(S,E){return A.coerce(t,r,M,S,E)}for(var i=!1,n=!1,s=!1,c={},h=a("barmode"),v=h==="group",p=0;p<o.length;p++){var T=o[p];if(g.traceIs(T,"bar")&&T.visible)i=!0;else continue;var l=T.xaxis+T.yaxis;if(v?(c[l]&&(s=!0),c[l]=!0):(l+=T._input.offsetgroup,c.length>0&&!c[l]&&(s=!0),c[l]=!0),T.visible&&T.type==="histogram"){var _=x.getFromId({_fullLayout:r},T[T.orientation==="v"?"xaxis":"yaxis"]);_.type!=="category"&&(n=!0)}}if(!i){delete r.barmode;return}h!=="overlay"&&a("barnorm"),a("bargap",n&&!s?0:.2),a("bargroupgap");var w=a("barcornerradius");r.barcornerradius=e(w)}}}),z_=Ye({"src/traces/bar/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.hovertext,A,"htx");var t=M.marker;if(t){g.mergeArray(t.opacity,A,"mo",!0),g.mergeArray(t.color,A,"mc");var r=t.line;r&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"))}}}}),HB=Ye({"src/traces/bar/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=Up().hasColorscale,M=jp(),e=z_(),t=Od();H.exports=function(o,a){var i=g.getFromId(o,a.xaxis||"x"),n=g.getFromId(o,a.yaxis||"y"),s,c,h,v,p,T,l={msUTC:!!(a.base||a.base===0)};a.orientation==="h"?(s=i.makeCalcdata(a,"x",l),h=n.makeCalcdata(a,"y"),v=x(a,n,"y",h),p=!!a.yperiodalignment,T="y"):(s=n.makeCalcdata(a,"y",l),h=i.makeCalcdata(a,"x"),v=x(a,i,"x",h),p=!!a.xperiodalignment,T="x"),c=v.vals;for(var _=Math.min(c.length,s.length),w=new Array(_),S=0;S<_;S++)w[S]={p:c[S],s:s[S]},p&&(w[S].orig_p=h[S],w[S][T+"End"]=v.ends[S],w[S][T+"Start"]=v.starts[S]),a.ids&&(w[S].id=String(a.ids[S]));return A(a,"marker")&&M(o,a,{vals:a.marker.color,containerStr:"marker",cLetter:"c"}),A(a,"marker.line")&&M(o,a,{vals:a.marker.line.color,containerStr:"marker.line",cLetter:"c"}),e(w,a),t(w,a),w}}}),wp=Ye({"src/traces/bar/uniform_text.js"(X,H){"use strict";var g=_n(),x=ta();function A(r,o,a){var i=r._fullLayout,n=i["_"+a+"Text_minsize"];if(n){var s=i.uniformtext.mode==="hide",c;switch(a){case"funnelarea":case"pie":case"sunburst":c="g.slice";break;case"treemap":case"icicle":c="g.slice, g.pathbar";break;default:c="g.points > g.point"}o.selectAll(c).each(function(h){var v=h.transform;if(v){v.scale=s&&v.hide?0:n/v.fontSize;var p=g.select(this).select("text");x.setTransormAndDisplay(p,v)}})}}function M(r,o,a){if(a.uniformtext.mode){var i=t(r),n=a.uniformtext.minsize,s=o.scale*o.fontSize;o.hide=s<n,a[i]=a[i]||1/0,o.hide||(a[i]=Math.min(a[i],Math.max(s,n)))}}function e(r,o){var a=t(r);o[a]=void 0}function t(r){return"_"+r+"Text_minsize"}H.exports={recordMinTextSize:M,clearMinTextSize:e,resizeText:A}}}),j2=Ye({"src/traces/bar/helpers.js"(X){"use strict";var H=jo(),g=bh(),x=ta().isArrayOrTypedArray;X.coerceString=function(A,M,e){if(typeof M=="string"){if(M||!A.noBlank)return M}else if((typeof M=="number"||M===!0)&&!A.strict)return String(M);return e!==void 0?e:A.dflt},X.coerceNumber=function(A,M,e){if(H(M)){M=+M;var t=A.min,r=A.max,o=t!==void 0&&M<t||r!==void 0&&M>r;if(!o)return M}return e!==void 0?e:A.dflt},X.coerceColor=function(A,M,e){return g(M).isValid()?M:e!==void 0?e:A.dflt},X.coerceEnumerated=function(A,M,e){return A.coerceNumber&&(M=+M),A.values.indexOf(M)!==-1?M:e!==void 0?e:A.dflt},X.getValue=function(A,M){var e;return x(A)?M<A.length&&(e=A[M]):e=A,e},X.getLineWidth=function(A,M){var e=0<M.mlw?M.mlw:x(A.marker.line.width)?0:A.marker.line.width;return e}}}),Nd=Ye({"src/traces/bar/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo(),M=ta(),e=Hn(),t=wp().resizeText,r=Sv(),o=r.textfont,a=r.insidetextfont,i=r.outsidetextfont,n=j2();function s(b){var d=g.select(b).selectAll('g[class^="barlayer"]').selectAll("g.trace");t(b,d,"bar");var u=d.size(),y=b._fullLayout;d.style("opacity",function(f){return f[0].trace.opacity}).each(function(f){(y.barmode==="stack"&&u>1||y.bargap===0&&y.bargroupgap===0&&!f[0].trace.marker.line.width)&&g.select(this).attr("shape-rendering","crispEdges")}),d.selectAll("g.points").each(function(f){var P=g.select(this),L=f[0].trace;c(P,L,b)}),e.getComponentMethod("errorbars","style")(d)}function c(b,d,u){A.pointStyle(b.selectAll("path"),d,u),h(b,d,u)}function h(b,d,u){b.selectAll("text").each(function(y){var f=g.select(this),P=M.ensureUniformFontSize(u,l(f,y,d,u));A.font(f,P)})}function v(b,d,u){var y=d[0].trace;y.selectedpoints?p(u,y,b):(c(u,y,b),e.getComponentMethod("errorbars","style")(u))}function p(b,d,u){A.selectedPointStyle(b.selectAll("path"),d),T(b.selectAll("text"),d,u)}function T(b,d,u){b.each(function(y){var f=g.select(this),P;if(y.selected){P=M.ensureUniformFontSize(u,l(f,y,d,u));var L=d.selected.textfont&&d.selected.textfont.color;L&&(P.color=L),A.font(f,P)}else A.selectedTextStyle(f,d)})}function l(b,d,u,y){var f=y._fullLayout.font,P=u.textfont;if(b.classed("bartext-inside")){var L=m(d,u);P=w(u,d.i,f,L)}else b.classed("bartext-outside")&&(P=S(u,d.i,f));return P}function _(b,d,u){return E(o,b.textfont,d,u)}function w(b,d,u,y){var f=_(b,d,u),P=b._input.textfont===void 0||b._input.textfont.color===void 0||Array.isArray(b.textfont.color)&&b.textfont.color[d]===void 0;return P&&(f={color:x.contrast(y),family:f.family,size:f.size,weight:f.weight,style:f.style,variant:f.variant,textcase:f.textcase,lineposition:f.lineposition,shadow:f.shadow}),E(a,b.insidetextfont,d,f)}function S(b,d,u){var y=_(b,d,u);return E(i,b.outsidetextfont,d,y)}function E(b,d,u,y){d=d||{};var f=n.getValue(d.family,u),P=n.getValue(d.size,u),L=n.getValue(d.color,u),z=n.getValue(d.weight,u),F=n.getValue(d.style,u),B=n.getValue(d.variant,u),O=n.getValue(d.textcase,u),I=n.getValue(d.lineposition,u),N=n.getValue(d.shadow,u);return{family:n.coerceString(b.family,f,y.family),size:n.coerceNumber(b.size,P,y.size),color:n.coerceColor(b.color,L,y.color),weight:n.coerceString(b.weight,z,y.weight),style:n.coerceString(b.style,F,y.style),variant:n.coerceString(b.variant,B,y.variant),textcase:n.coerceString(b.variant,O,y.textcase),lineposition:n.coerceString(b.variant,I,y.lineposition),shadow:n.coerceString(b.variant,N,y.shadow)}}function m(b,d){return d.type==="waterfall"?d[b.dir].marker.color:b.mcc||b.mc||d.marker.color}H.exports={style:s,styleTextPoints:h,styleOnSelect:v,getInsideTextFont:w,getOutsideTextFont:S,getBarColor:m,resizeText:t}}}),e0=Ye({"src/traces/bar/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=jl(),e=Fn(),t=Bo(),r=Hn(),o=Co().tickText,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=Nd(),c=j2(),h=Qg(),v=Sv(),p=v.text,T=v.textposition,l=Qp().appendArrayPointValue,_=h.TEXTPAD;function w(Q){return Q.id}function S(Q){if(Q.ids)return w}function E(Q){return(Q>0)-(Q<0)}function m(Q,ue){return Q<ue?1:-1}function b(Q,ue,se,he){var G=[],$=[],J=he?ue:se,Z=he?se:ue;return G[0]=J.c2p(Q.s0,!0),$[0]=Z.c2p(Q.p0,!0),G[1]=J.c2p(Q.s1,!0),$[1]=Z.c2p(Q.p1,!0),he?[G,$]:[$,G]}function d(Q,ue,se,he){if(!ue.uniformtext.mode&&u(se)){var G;return he&&(G=he()),Q.transition().duration(se.duration).ease(se.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()})}else return Q}function u(Q){return Q&&Q.duration>0}function y(Q,ue,se,he,G,$){var J=ue.xaxis,Z=ue.yaxis,re=Q._fullLayout,ne=Q._context.staticPlot;G||(G={mode:re.barmode,norm:re.barmode,gap:re.bargap,groupgap:re.bargroupgap},n("bar",re));var j=A.makeTraceGroups(he,se,"trace bars").each(function(ee){var ie=g.select(this),fe=ee[0].trace,be=ee[0].t,Ae=fe.type==="waterfall",Be=fe.type==="funnel",Ie=fe.type==="histogram",Ze=fe.type==="bar",at=Ze||Be,it=0;Ae&&fe.connector.visible&&fe.connector.mode==="between"&&(it=fe.connector.line.width/2);var et=fe.orientation==="h",lt=u(G),Me=A.ensureSingle(ie,"g","points"),ge=S(fe),ce=Me.selectAll("g.point").data(A.identity,ge);ce.enter().append("g").classed("point",!0),ce.exit().remove(),ce.each(function(tt,nt){var Qe=g.select(this),Ct=b(tt,J,Z,et),St=Ct[0][0],Ot=Ct[0][1],jt=Ct[1][0],ur=Ct[1][1],ar=(et?Ot-St:ur-jt)===0;ar&&at&&c.getLineWidth(fe,tt)&&(ar=!1),ar||(ar=!x(St)||!x(Ot)||!x(jt)||!x(ur)),tt.isBlank=ar,ar&&(et?Ot=St:ur=jt),it&&!ar&&(et?(St-=m(St,Ot)*it,Ot+=m(St,Ot)*it):(jt-=m(jt,ur)*it,ur+=m(jt,ur)*it));var Cr,vr;if(fe.type==="waterfall"){if(!ar){var _r=fe[tt.dir].marker;Cr=_r.line.width,vr=_r.color}}else Cr=c.getLineWidth(fe,tt),vr=tt.mc||fe.marker.color;function yt(ni){var Wt=g.round(Cr/2%1,2);return G.gap===0&&G.groupgap===0?g.round(Math.round(ni)-Wt,2):ni}function Fe(ni,Wt,zt){return zt&&ni===Wt?ni:Math.abs(ni-Wt)>=2?yt(ni):ni>Wt?Math.ceil(ni):Math.floor(ni)}var Ke=e.opacity(vr),Ne=Ke<1||Cr>.01?yt:Fe;Q._context.staticPlot||(St=Ne(St,Ot,et),Ot=Ne(Ot,St,et),jt=Ne(jt,ur,!et),ur=Ne(ur,jt,!et));var Ee=et?J.c2p:Z.c2p,Ve;tt.s0>0?Ve=tt._sMax:tt.s0<0?Ve=tt._sMin:Ve=tt.s1>0?tt._sMax:tt._sMin;function ke(ni,Wt){if(!ni)return 0;var zt=Math.abs(et?ur-jt:Ot-St),Vt=Math.abs(et?Ot-St:ur-jt),Ut=Ne(Math.abs(Ee(Ve,!0)-Ee(0,!0))),xr=tt.hasB?Math.min(zt/2,Vt/2):Math.min(zt/2,Ut),Zr;if(Wt==="%"){var pa=Math.min(50,ni);Zr=zt*(pa/100)}else Zr=ni;return Ne(Math.max(Math.min(Zr,xr),0))}var Te=Ze||Ie?ke(be.cornerradiusvalue,be.cornerradiusform):0,Le,rt,dt="M"+St+","+jt+"V"+ur+"H"+Ot+"V"+jt+"Z",xt=0;if(Te&&tt.s){var It=E(tt.s0)===0||E(tt.s)===E(tt.s0)?tt.s1:tt.s0;if(xt=Ne(tt.hasB?0:Math.abs(Ee(Ve,!0)-Ee(It,!0))),xt<Te){var Bt=m(St,Ot),Gt=m(jt,ur),Kt=Bt===-Gt?1:0;if(et)if(tt.hasB)Le="M"+(St+Te*Bt)+","+jt+"A "+Te+","+Te+" 0 0 "+Kt+" "+St+","+(jt+Te*Gt)+"V"+(ur-Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt)+","+ur+"H"+(Ot-Te*Bt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt)+"V"+(jt+Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-Te*Bt)+","+jt+"Z";else{rt=Math.abs(Ot-St)+xt;var sr=rt<Te?Te-Math.sqrt(rt*(2*Te-rt)):0,sa=xt>0?Math.sqrt(xt*(2*Te-xt)):0,Aa=Bt>0?Math.max:Math.min;Le="M"+St+","+jt+"V"+(ur-sr*Gt)+"H"+Aa(Ot-(Te-xt)*Bt,St)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt-sa)+"V"+(jt+Te*Gt+sa)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Aa(Ot-(Te-xt)*Bt,St)+","+(jt+sr*Gt)+"Z"}else if(tt.hasB)Le="M"+(St+Te*Bt)+","+jt+"A "+Te+","+Te+" 0 0 "+Kt+" "+St+","+(jt+Te*Gt)+"V"+(ur-Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt)+","+ur+"H"+(Ot-Te*Bt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+Ot+","+(ur-Te*Gt)+"V"+(jt+Te*Gt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-Te*Bt)+","+jt+"Z";else{rt=Math.abs(ur-jt)+xt;var La=rt<Te?Te-Math.sqrt(rt*(2*Te-rt)):0,ka=xt>0?Math.sqrt(xt*(2*Te-xt)):0,Ga=Gt>0?Math.max:Math.min;Le="M"+(St+La*Bt)+","+jt+"V"+Ga(ur-(Te-xt)*Gt,jt)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(St+Te*Bt-ka)+","+ur+"H"+(Ot-Te*Bt+ka)+"A "+Te+","+Te+" 0 0 "+Kt+" "+(Ot-La*Bt)+","+Ga(ur-(Te-xt)*Gt,jt)+"V"+jt+"Z"}}else Le=dt}else Le=dt;var Ma=d(A.ensureSingle(Qe,"path"),re,G,$);if(Ma.style("vector-effect",ne?"none":"non-scaling-stroke").attr("d",isNaN((Ot-St)*(ur-jt))||ar&&Q._context.staticPlot?"M0,0Z":Le).call(t.setClipUrl,ue.layerClipId,Q),!re.uniformtext.mode&&lt){var Ua=t.makePointStyleFns(fe);t.singlePointStyle(tt,Ma,fe,Ua,Q)}f(Q,ue,Qe,ee,nt,St,Ot,jt,ur,Te,xt,G,$),ue.layerClipId&&t.hideOutsideRangePoint(tt,Qe.select("text"),J,Z,fe.xcalendar,fe.ycalendar)});var ze=fe.cliponaxis===!1;t.setClipUrl(ie,ze?null:ue.layerClipId,Q)});r.getComponentMethod("errorbars","plot")(Q,j,ue,G)}function f(Q,ue,se,he,G,$,J,Z,re,ne,j,ee,ie){var fe=ue.xaxis,be=ue.yaxis,Ae=Q._fullLayout,Be;function Ie(rt,dt,xt){var It=A.ensureSingle(rt,"text").text(dt).attr({class:"bartext bartext-"+Be,"text-anchor":"middle","data-notex":1}).call(t.font,xt).call(M.convertToTspans,Q);return It}var Ze=he[0].trace,at=Ze.orientation==="h",it=I(Ae,he,G,fe,be);Be=N(Ze,G);var et=ee.mode==="stack"||ee.mode==="relative",lt=he[G],Me=!et||lt._outmost,ge=lt.hasB,ce=ne&&ne-j>_;if(!it||Be==="none"||(lt.isBlank||$===J||Z===re)&&(Be==="auto"||Be==="inside")){se.select("text").remove();return}var ze=Ae.font,tt=s.getBarColor(he[G],Ze),nt=s.getInsideTextFont(Ze,G,ze,tt),Qe=s.getOutsideTextFont(Ze,G,ze),Ct=Ze.insidetextanchor||"end",St=se.datum();at?fe.type==="log"&&St.s0<=0&&(fe.range[0]<fe.range[1]?$=0:$=fe._length):be.type==="log"&&St.s0<=0&&(be.range[0]<be.range[1]?Z=be._length:Z=0);var Ot=Math.abs(J-$),jt=Math.abs(re-Z),ur=Ot-2*_,ar=jt-2*_,Cr,vr,_r,yt,Fe;if(Be==="outside"&&!Me&&!lt.hasB&&(Be="inside"),Be==="auto")if(Me){Be="inside",Fe=A.ensureUniformFontSize(Q,nt),Cr=Ie(se,it,Fe),vr=t.bBox(Cr.node()),_r=vr.width,yt=vr.height;var Ke=_r>0&&yt>0,Ne;ce?ge?Ne=P(ur-2*ne,ar,_r,yt,at)||P(ur,ar-2*ne,_r,yt,at):at?Ne=P(ur-(ne-j),ar,_r,yt,at)||P(ur,ar-2*(ne-j),_r,yt,at):Ne=P(ur,ar-(ne-j),_r,yt,at)||P(ur-2*(ne-j),ar,_r,yt,at):Ne=P(ur,ar,_r,yt,at),Ke&&Ne?Be="inside":(Be="outside",Cr.remove(),Cr=null)}else Be="inside";if(!Cr){Fe=A.ensureUniformFontSize(Q,Be==="outside"?Qe:nt),Cr=Ie(se,it,Fe);var Ee=Cr.attr("transform");if(Cr.attr("transform",""),vr=t.bBox(Cr.node()),_r=vr.width,yt=vr.height,Cr.attr("transform",Ee),_r<=0||yt<=0){Cr.remove();return}}var Ve=Ze.textangle,ke,Te;Be==="outside"?(Te=Ze.constraintext==="both"||Ze.constraintext==="outside",ke=O($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve})):(Te=Ze.constraintext==="both"||Ze.constraintext==="inside",ke=F($,J,Z,re,vr,{isHorizontal:at,constrained:Te,angle:Ve,anchor:Ct,hasB:ge,r:ne,overhead:j})),ke.fontSize=Fe.size,i(Ze.type==="histogram"?"bar":Ze.type,ke,Ae),lt.transform=ke;var Le=d(Cr,Ae,ee,ie);A.setTransormAndDisplay(Le,ke)}function P(Q,ue,se,he,G){if(Q<0||ue<0)return!1;var $=se<=Q&&he<=ue,J=se<=ue&&he<=Q,Z=G?Q>=se*(ue/he):ue>=he*(Q/se);return $||J||Z}function L(Q){return Q==="auto"?0:Q}function z(Q,ue){var se=Math.PI/180*ue,he=Math.abs(Math.sin(se)),G=Math.abs(Math.cos(se));return{x:Q.width*G+Q.height*he,y:Q.width*he+Q.height*G}}function F(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=$.anchor,j=ne==="end",ee=ne==="start",ie=$.leftToRight||0,fe=(ie+1)/2,be=1-fe,Ae=$.hasB,Be=$.r,Ie=$.overhead,Ze=G.width,at=G.height,it=Math.abs(ue-Q),et=Math.abs(he-se),lt=it>2*_&&et>2*_?_:0;it-=2*lt,et-=2*lt;var Me=L(re);re==="auto"&&!(Ze<=it&&at<=et)&&(Ze>it||at>et)&&(!(Ze>et||at>it)||Ze<at!=it<et)&&(Me+=90);var ge=z(G,Me),ce,ze;if(Be&&Be-Ie>_){var tt=B(Q,ue,se,he,ge,Be,Ie,J,Ae);ce=tt.scale,ze=tt.pad}else ce=1,Z&&(ce=Math.min(1,it/ge.x,et/ge.y)),ze=0;var nt=G.left*be+G.right*fe,Qe=(G.top+G.bottom)/2,Ct=(Q+_)*be+(ue-_)*fe,St=(se+he)/2,Ot=0,jt=0;if(ee||j){var ur=(J?ge.x:ge.y)/2;Be&&(j||Ae)&&(lt+=ze);var ar=J?m(Q,ue):m(se,he);J?ee?(Ct=Q+ar*lt,Ot=-ar*ur):(Ct=ue-ar*lt,Ot=ar*ur):ee?(St=se+ar*lt,jt=-ar*ur):(St=he-ar*lt,jt=ar*ur)}return{textX:nt,textY:Qe,targetX:Ct,targetY:St,anchorX:Ot,anchorY:jt,scale:ce,rotate:Me}}function B(Q,ue,se,he,G,$,J,Z,re){var ne=Math.max(0,Math.abs(ue-Q)-2*_),j=Math.max(0,Math.abs(he-se)-2*_),ee=$-_,ie=J?ee-Math.sqrt(ee*ee-(ee-J)*(ee-J)):ee,fe=re?ee*2:Z?ee-J:2*ie,be=re?ee*2:Z?2*ie:ee-J,Ae,Be,Ie,Ze,at;return G.y/G.x>=j/(ne-fe)?Ze=j/G.y:G.y/G.x<=(j-be)/ne?Ze=ne/G.x:!re&&Z?(Ae=G.x*G.x+G.y*G.y/4,Be=-2*G.x*(ne-ee)-G.y*(j/2-ee),Ie=(ne-ee)*(ne-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):re?(Ae=(G.x*G.x+G.y*G.y)/4,Be=-G.x*(ne/2-ee)-G.y*(j/2-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j/2-ee)*(j/2-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)):(Ae=G.x*G.x/4+G.y*G.y,Be=-G.x*(ne/2-ee)-2*G.y*(j-ee),Ie=(ne/2-ee)*(ne/2-ee)+(j-ee)*(j-ee)-ee*ee,Ze=(-Be+Math.sqrt(Be*Be-4*Ae*Ie))/(2*Ae)),Ze=Math.min(1,Ze),Z?at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(j-G.y*Ze)/2)*(ee-(j-G.y*Ze)/2)))-J):at=Math.max(0,ee-Math.sqrt(Math.max(0,ee*ee-(ee-(ne-G.x*Ze)/2)*(ee-(ne-G.x*Ze)/2)))-J),{scale:Ze,pad:at}}function O(Q,ue,se,he,G,$){var J=!!$.isHorizontal,Z=!!$.constrained,re=$.angle||0,ne=G.width,j=G.height,ee=Math.abs(ue-Q),ie=Math.abs(he-se),fe;J?fe=ie>2*_?_:0:fe=ee>2*_?_:0;var be=1;Z&&(be=J?Math.min(1,ie/j):Math.min(1,ee/ne));var Ae=L(re),Be=z(G,Ae),Ie=(J?Be.x:Be.y)/2,Ze=(G.left+G.right)/2,at=(G.top+G.bottom)/2,it=(Q+ue)/2,et=(se+he)/2,lt=0,Me=0,ge=J?m(ue,Q):m(se,he);return J?(it=ue-ge*fe,lt=ge*Ie):(et=he+ge*fe,Me=-ge*Ie),{textX:Ze,textY:at,targetX:it,targetY:et,anchorX:lt,anchorY:Me,scale:be,rotate:Ae}}function I(Q,ue,se,he,G){var $=ue[0].trace,J=$.texttemplate,Z;return J?Z=U(Q,ue,se,he,G):$.textinfo?Z=W(ue,se,he,G):Z=c.getValue($.text,se),c.coerceString(p,Z)}function N(Q,ue){var se=c.getValue(Q.textposition,ue);return c.coerceEnumerated(T,se)}function U(Q,ue,se,he,G){var $=ue[0].trace,J=A.castOption($,se,"texttemplate");if(!J)return"";var Z=$.type==="histogram",re=$.type==="waterfall",ne=$.type==="funnel",j=$.orientation==="h",ee,ie,fe,be;j?(ee="y",ie=G,fe="x",be=he):(ee="x",ie=he,fe="y",be=G);function Ae(lt){return o(ie,ie.c2l(lt),!0).text}function Be(lt){return o(be,be.c2l(lt),!0).text}var Ie=ue[se],Ze={};Ze.label=Ie.p,Ze.labelLabel=Ze[ee+"Label"]=Ae(Ie.p);var at=A.castOption($,Ie.i,"text");(at===0||at)&&(Ze.text=at),Ze.value=Ie.s,Ze.valueLabel=Ze[fe+"Label"]=Be(Ie.s);var it={};l(it,$,Ie.i),(Z||it.x===void 0)&&(it.x=j?Ze.value:Ze.label),(Z||it.y===void 0)&&(it.y=j?Ze.label:Ze.value),(Z||it.xLabel===void 0)&&(it.xLabel=j?Ze.valueLabel:Ze.labelLabel),(Z||it.yLabel===void 0)&&(it.yLabel=j?Ze.labelLabel:Ze.valueLabel),re&&(Ze.delta=+Ie.rawS||Ie.s,Ze.deltaLabel=Be(Ze.delta),Ze.final=Ie.v,Ze.finalLabel=Be(Ze.final),Ze.initial=Ze.final-Ze.delta,Ze.initialLabel=Be(Ze.initial)),ne&&(Ze.value=Ie.s,Ze.valueLabel=Be(Ze.value),Ze.percentInitial=Ie.begR,Ze.percentInitialLabel=A.formatPercent(Ie.begR),Ze.percentPrevious=Ie.difR,Ze.percentPreviousLabel=A.formatPercent(Ie.difR),Ze.percentTotal=Ie.sumR,Ze.percenTotalLabel=A.formatPercent(Ie.sumR));var et=A.castOption($,Ie.i,"customdata");return et&&(Ze.customdata=et),A.texttemplateString(J,Ze,Q._d3locale,it,Ze,$._meta||{})}function W(Q,ue,se,he){var G=Q[0].trace,$=G.orientation==="h",J=G.type==="waterfall",Z=G.type==="funnel";function re(et){var lt=$?he:se;return o(lt,et,!0).text}function ne(et){var lt=$?se:he;return o(lt,+et,!0).text}var j=G.textinfo,ee=Q[ue],ie=j.split("+"),fe=[],be,Ae=function(et){return ie.indexOf(et)!==-1};if(Ae("label")&&fe.push(re(Q[ue].p)),Ae("text")&&(be=A.castOption(G,ee.i,"text"),(be===0||be)&&fe.push(be)),J){var Be=+ee.rawS||ee.s,Ie=ee.v,Ze=Ie-Be;Ae("initial")&&fe.push(ne(Ze)),Ae("delta")&&fe.push(ne(Be)),Ae("final")&&fe.push(ne(Ie))}if(Z){Ae("value")&&fe.push(ne(ee.s));var at=0;Ae("percent initial")&&at++,Ae("percent previous")&&at++,Ae("percent total")&&at++;var it=at>1;Ae("percent initial")&&(be=A.formatPercent(ee.begR),it&&(be+=" of initial"),fe.push(be)),Ae("percent previous")&&(be=A.formatPercent(ee.difR),it&&(be+=" of previous"),fe.push(be)),Ae("percent total")&&(be=A.formatPercent(ee.sumR),it&&(be+=" of total"),fe.push(be))}return fe.join("<br>")}H.exports={plot:y,toMoveInsideBar:F}}}),c1=Ye({"src/traces/bar/hover.js"(X,H){"use strict";var g=Lc(),x=Hn(),A=Fn(),M=ta().fillText,e=j2().getLineWidth,t=Co().hoverLabelText,r=ks().BADNUM;function o(n,s,c,h,v){var p=a(n,s,c,h,v);if(p){var T=p.cd,l=T[0].trace,_=T[p.index];return p.color=i(l,_),x.getComponentMethod("errorbars","hoverInfo")(_,l,p),[p]}}function a(n,s,c,h,v){var p=n.cd,T=p[0].trace,l=p[0].t,_=h==="closest",w=T.type==="waterfall",S=n.maxHoverDistance,E=n.maxSpikeDistance,m,b,d,u,y,f,P;T.orientation==="h"?(m=c,b=s,d="y",u="x",y=he,f=Q):(m=s,b=c,d="x",u="y",f=he,y=Q);var L=T[d+"period"],z=_||L;function F(be){return O(be,-1)}function B(be){return O(be,1)}function O(be,Ae){var Be=be.w;return be[d]+Ae*Be/2}function I(be){return be[d+"End"]-be[d+"Start"]}var N=_?F:L?function(be){return be.p-I(be)/2}:function(be){return Math.min(F(be),be.p-l.bardelta/2)},U=_?B:L?function(be){return be.p+I(be)/2}:function(be){return Math.max(B(be),be.p+l.bardelta/2)};function W(be,Ae,Be){return v.finiteRange&&(Be=0),g.inbox(be-m,Ae-m,Be+Math.min(1,Math.abs(Ae-be)/P)-1)}function Q(be){return W(N(be),U(be),S)}function ue(be){return W(F(be),B(be),E)}function se(be){var Ae=be[u];if(w){var Be=Math.abs(be.rawS)||0;b>0?Ae+=Be:b<0&&(Ae-=Be)}return Ae}function he(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,S+(Ie-Ae)/(Ie-Be)-1)}function G(be){var Ae=b,Be=be.b,Ie=se(be);return g.inbox(Be-Ae,Ie-Ae,E+(Ie-Ae)/(Ie-Be)-1)}var $=n[d+"a"],J=n[u+"a"];P=Math.abs($.r2c($.range[1])-$.r2c($.range[0]));function Z(be){return(y(be)+f(be))/2}var re=g.getDistanceFunction(h,y,f,Z);if(g.getClosest(p,re,n),n.index!==!1&&p[n.index].p!==r){z||(N=function(be){return Math.min(F(be),be.p-l.bargroupwidth/2)},U=function(be){return Math.max(B(be),be.p+l.bargroupwidth/2)});var ne=n.index,j=p[ne],ee=T.base?j.b+j.s:j.s;n[u+"0"]=n[u+"1"]=J.c2p(j[u],!0),n[u+"LabelVal"]=ee;var ie=l.extents[l.extents.round(j.p)];n[d+"0"]=$.c2p(_?N(j):ie[0],!0),n[d+"1"]=$.c2p(_?U(j):ie[1],!0);var fe=j.orig_p!==void 0;return n[d+"LabelVal"]=fe?j.orig_p:j.p,n.labelLabel=t($,n[d+"LabelVal"],T[d+"hoverformat"]),n.valueLabel=t(J,n[u+"LabelVal"],T[u+"hoverformat"]),n.baseLabel=t(J,j.b,T[u+"hoverformat"]),n.spikeDistance=(G(j)+ue(j))/2,n[d+"Spike"]=$.c2p(j.p,!0),M(j,T,n),n.hovertemplate=T.hovertemplate,n}}function i(n,s){var c=s.mcc||n.marker.color,h=s.mlcc||n.marker.line.color,v=e(n,s);if(A.opacity(c))return c;if(A.opacity(h)&&v)return h}H.exports={hoverPoints:o,hoverOnBars:a,getTraceColor:i}}}),GB=Ye({"src/traces/bar/event_data.js"(X,H){"use strict";H.exports=function(x,A,M){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),M.orientation==="h"?(x.label=x.y,x.value=x.x):(x.label=x.x,x.value=x.y),x}}}),f1=Ye({"src/traces/bar/select.js"(X,H){"use strict";H.exports=function(A,M){var e=A.cd,t=A.xaxis,r=A.yaxis,o=e[0].trace,a=o.type==="funnel",i=o.orientation==="h",n=[],s;if(M===!1)for(s=0;s<e.length;s++)e[s].selected=0;else for(s=0;s<e.length;s++){var c=e[s],h="ct"in c?c.ct:g(c,t,r,i,a);M.contains(h,!1,s,A)?(n.push({pointNumber:s,x:t.c2d(c.x),y:r.c2d(c.y)}),c.selected=1):c.selected=0}return n};function g(x,A,M,e,t){var r=A.c2p(e?x.s0:x.p0,!0),o=A.c2p(e?x.s1:x.p1,!0),a=M.c2p(e?x.p0:x.s0,!0),i=M.c2p(e?x.p1:x.s1,!0);return t?[(r+o)/2,(a+i)/2]:e?[o,(a+i)/2]:[(r+o)/2,i]}}}),WB=Ye({"src/traces/bar/index.js"(X,H){"use strict";H.exports={attributes:Sv(),layoutAttributes:N2(),supplyDefaults:gd().supplyDefaults,crossTraceDefaults:gd().crossTraceDefaults,supplyLayoutDefaults:YS(),calc:HB(),crossTraceCalc:$g().crossTraceCalc,colorbar:cp(),arraysToCalcdata:z_(),plot:e0().plot,style:Nd().style,styleOnSelect:Nd().styleOnSelect,hoverPoints:c1().hoverPoints,eventData:GB(),selectPoints:f1(),moduleType:"trace",name:"bar",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","bar","oriented","errorBarsOK","showLegend","zoomScale"],animatable:!0,meta:{}}}}),ZB=Ye({"lib/bar.js"(X,H){"use strict";H.exports=WB()}}),F_=Ye({"src/traces/box/attributes.js"(X,H){"use strict";var g=$d(),x=Pc(),A=Sv(),M=Gf(),e=Cc().axisHoverFormat,t=xs().hovertemplateAttrs,r=Oo().extendFlat,o=x.marker,a=o.line;H.exports={y:{valType:"data_array",editType:"calc+clearAxisTypes"},x:{valType:"data_array",editType:"calc+clearAxisTypes"},x0:{valType:"any",editType:"calc+clearAxisTypes"},y0:{valType:"any",editType:"calc+clearAxisTypes"},dx:{valType:"number",editType:"calc"},dy:{valType:"number",editType:"calc"},xperiod:x.xperiod,yperiod:x.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:x.xperiodalignment,yperiodalignment:x.yperiodalignment,xhoverformat:e("x"),yhoverformat:e("y"),name:{valType:"string",editType:"calc+clearAxisTypes"},q1:{valType:"data_array",editType:"calc+clearAxisTypes"},median:{valType:"data_array",editType:"calc+clearAxisTypes"},q3:{valType:"data_array",editType:"calc+clearAxisTypes"},lowerfence:{valType:"data_array",editType:"calc"},upperfence:{valType:"data_array",editType:"calc"},notched:{valType:"boolean",editType:"calc"},notchwidth:{valType:"number",min:0,max:.5,dflt:.25,editType:"calc"},notchspan:{valType:"data_array",editType:"calc"},boxpoints:{valType:"enumerated",values:["all","outliers","suspectedoutliers",!1],editType:"calc"},jitter:{valType:"number",min:0,max:1,editType:"calc"},pointpos:{valType:"number",min:-2,max:2,editType:"calc"},sdmultiple:{valType:"number",min:0,editType:"calc",dflt:1},sizemode:{valType:"enumerated",values:["quartiles","sd"],editType:"calc",dflt:"quartiles"},boxmean:{valType:"enumerated",values:[!0,"sd",!1],editType:"calc"},mean:{valType:"data_array",editType:"calc"},sd:{valType:"data_array",editType:"calc"},orientation:{valType:"enumerated",values:["v","h"],editType:"calc+clearAxisTypes"},quartilemethod:{valType:"enumerated",values:["linear","exclusive","inclusive"],dflt:"linear",editType:"calc"},width:{valType:"number",min:0,dflt:0,editType:"calc"},marker:{outliercolor:{valType:"color",dflt:"rgba(0, 0, 0, 0)",editType:"style"},symbol:r({},o.symbol,{arrayOk:!1,editType:"plot"}),opacity:r({},o.opacity,{arrayOk:!1,dflt:1,editType:"style"}),angle:r({},o.angle,{arrayOk:!1,editType:"calc"}),size:r({},o.size,{arrayOk:!1,editType:"calc"}),color:r({},o.color,{arrayOk:!1,editType:"style"}),line:{color:r({},a.color,{arrayOk:!1,dflt:M.defaultLine,editType:"style"}),width:r({},a.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:g(),whiskerwidth:{valType:"number",min:0,max:1,dflt:.5,editType:"calc"},showwhiskers:{valType:"boolean",editType:"calc"},offsetgroup:A.offsetgroup,alignmentgroup:A.alignmentgroup,selected:{marker:x.selected.marker,editType:"style"},unselected:{marker:x.unselected.marker,editType:"style"},text:r({},x.text,{}),hovertext:r({},x.hovertext,{}),hovertemplate:t({}),hoveron:{valType:"flaglist",flags:["boxes","points"],dflt:"boxes+points",editType:"style"},zorder:x.zorder}}}),O_=Ye({"src/traces/box/layout_attributes.js"(X,H){"use strict";H.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"}}}}),B_=Ye({"src/traces/box/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=Fn(),M=Qd(),e=Jg(),t=r1(),r=F_();function o(s,c,h,v){function p(u,y){return g.coerce(s,c,r,u,y)}if(a(s,c,p,v),c.visible!==!1){M(s,c,v,p),p("xhoverformat"),p("yhoverformat");var T=c._hasPreCompStats;T&&(p("lowerfence"),p("upperfence")),p("line.color",(s.marker||{}).color||h),p("line.width"),p("fillcolor",A.addOpacity(c.line.color,.5));var l=!1;if(T){var _=p("mean"),w=p("sd");_&&_.length&&(l=!0,w&&w.length&&(l="sd"))}p("whiskerwidth");var S=p("sizemode"),E;S==="quartiles"&&(E=p("boxmean",l)),p("showwhiskers",S==="quartiles"),(S==="sd"||E==="sd")&&p("sdmultiple"),p("width"),p("quartilemethod");var m=!1;if(T){var b=p("notchspan");b&&b.length&&(m=!0)}else g.validate(s.notchwidth,r.notchwidth)&&(m=!0);var d=p("notched",m);d&&p("notchwidth"),i(s,c,p,{prefix:"box"}),p("zorder")}}function a(s,c,h,v){function p(W){var Q=0;return W&&W.length&&(Q+=1,g.isArrayOrTypedArray(W[0])&&W[0].length&&(Q+=1)),Q}function T(W){return g.validate(s[W],r[W])}var l=h("y"),_=h("x"),w;if(c.type==="box"){var S=h("q1"),E=h("median"),m=h("q3");c._hasPreCompStats=S&&S.length&&E&&E.length&&m&&m.length,w=Math.min(g.minRowLength(S),g.minRowLength(E),g.minRowLength(m))}var b=p(l),d=p(_),u=b&&g.minRowLength(l),y=d&&g.minRowLength(_),f=v.calendar,P={autotypenumbers:v.autotypenumbers},L,z;if(c._hasPreCompStats)switch(String(d)+String(b)){case"00":var F=T("x0")||T("dx"),B=T("y0")||T("dy");B&&!F?L="h":L="v",z=w;break;case"10":L="v",z=Math.min(w,y);break;case"20":L="h",z=Math.min(w,_.length);break;case"01":L="h",z=Math.min(w,u);break;case"02":L="v",z=Math.min(w,l.length);break;case"12":L="v",z=Math.min(w,y,l.length);break;case"21":L="h",z=Math.min(w,_.length,u);break;case"11":z=0;break;case"22":var O=!1,I;for(I=0;I<_.length;I++)if(t(_[I],f,P)==="category"){O=!0;break}if(O)L="v",z=Math.min(w,y,l.length);else{for(I=0;I<l.length;I++)if(t(l[I],f,P)==="category"){O=!0;break}O?(L="h",z=Math.min(w,_.length,u)):(L="v",z=Math.min(w,y,l.length))}break}else b>0?(L="v",d>0?z=Math.min(y,u):z=Math.min(u)):d>0?(L="h",z=Math.min(y)):z=0;if(!z){c.visible=!1;return}c._length=z;var N=h("orientation",L);c._hasPreCompStats?N==="v"&&d===0?(h("x0",0),h("dx",1)):N==="h"&&b===0&&(h("y0",0),h("dy",1)):N==="v"&&d===0?h("x0"):N==="h"&&b===0&&h("y0");var U=x.getComponentMethod("calendars","handleTraceDefaults");U(s,c,["x","y"],v)}function i(s,c,h,v){var p=v.prefix,T=g.coerce2(s,c,r,"marker.outliercolor"),l=h("marker.line.outliercolor"),_="outliers";c._hasPreCompStats?_="all":(T||l)&&(_="suspectedoutliers");var w=h(p+"points",_);w?(h("jitter",w==="all"?.3:0),h("pointpos",w==="all"?-1.5:0),h("marker.symbol"),h("marker.opacity"),h("marker.size"),h("marker.angle"),h("marker.color",c.line.color),h("marker.line.color"),h("marker.line.width"),w==="suspectedoutliers"&&(h("marker.line.outliercolor",c.marker.color),h("marker.line.outlierwidth")),h("selected.marker.color"),h("unselected.marker.color"),h("selected.marker.size"),h("unselected.marker.size"),h("text"),h("hovertext")):delete c.marker;var S=h("hoveron");(S==="all"||S.indexOf("points")!==-1)&&h("hovertemplate"),g.coerceSelectionMarkerOpacity(c,h)}function n(s,c){var h,v;function p(w){return g.coerce(v._input,v,r,w)}for(var T=0;T<s.length;T++){v=s[T];var l=v.type;if(l==="box"||l==="violin"){h=v._input;var _=c[l+"mode"];_==="group"&&e(h,v,c,p,_)}}}H.exports={supplyDefaults:o,crossTraceDefaults:n,handleSampleDefaults:a,handlePointsDefaults:i}}}),V2=Ye({"src/traces/box/layout_defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=O_();function M(t,r,o,a,i){for(var n=i+"Layout",s=!1,c=0;c<o.length;c++){var h=o[c];if(g.traceIs(h,n)){s=!0;break}}s&&(a(i+"mode"),a(i+"gap"),a(i+"groupgap"))}function e(t,r,o){function a(i,n){return x.coerce(t,r,A,i,n)}M(t,r,o,a,"box")}H.exports={supplyLayoutDefaults:e,_supply:M}}}),KS=Ye({"src/traces/box/calc.js"(X,H){"use strict";var g=jo(),x=Co(),A=tv(),M=ta(),e=ks().BADNUM,t=M._;H.exports=function(S,E){var m=S._fullLayout,b=x.getFromId(S,E.xaxis||"x"),d=x.getFromId(S,E.yaxis||"y"),u=[],y=E.type==="violin"?"_numViolins":"_numBoxes",f,P,L,z,F,B,O;E.orientation==="h"?(L=b,z="x",F=d,B="y",O=!!E.yperiodalignment):(L=d,z="y",F=b,B="x",O=!!E.xperiodalignment);var I=r(E,B,F,m[y]),N=I[0],U=I[1],W=M.distinctVals(N,F),Q=W.vals,ue=W.minDiff/2,se,he,G,$,J,Z,re=(E.boxpoints||E.points)==="all"?M.identity:function(ar){return ar.v<se.lf||ar.v>se.uf};if(E._hasPreCompStats){var ne=E[z],j=function(ar){return L.d2c((E[ar]||[])[f])},ee=1/0,ie=-1/0;for(f=0;f<E._length;f++){var fe=N[f];if(g(fe)){if(se={},se.pos=se[B]=fe,O&&U&&(se.orig_p=U[f]),se.q1=j("q1"),se.med=j("median"),se.q3=j("q3"),he=[],ne&&M.isArrayOrTypedArray(ne[f]))for(P=0;P<ne[f].length;P++)Z=L.d2c(ne[f][P]),Z!==e&&(J={v:Z,i:[f,P]},n(J,E,[f,P]),he.push(J));if(se.pts=he.sort(c),G=se[z]=he.map(h),$=G.length,se.med!==e&&se.q1!==e&&se.q3!==e&&se.med>=se.q1&&se.q3>=se.med){var be=j("lowerfence");se.lf=be!==e&&be<=se.q1?be:v(se,G,$);var Ae=j("upperfence");se.uf=Ae!==e&&Ae>=se.q3?Ae:p(se,G,$);var Be=j("mean");se.mean=Be!==e?Be:$?M.mean(G,$):(se.q1+se.q3)/2;var Ie=j("sd");se.sd=Be!==e&&Ie>=0?Ie:$?M.stdev(G,$,se.mean):se.q3-se.q1,se.lo=T(se),se.uo=l(se);var Ze=j("notchspan");Ze=Ze!==e&&Ze>0?Ze:_(se,$),se.ln=se.med-Ze,se.un=se.med+Ze;var at=se.lf,it=se.uf;E.boxpoints&&G.length&&(at=Math.min(at,G[0]),it=Math.max(it,G[$-1])),E.notched&&(at=Math.min(at,se.ln),it=Math.max(it,se.un)),se.min=at,se.max=it}else{M.warn(["Invalid input - make sure that q1 <= median <= q3","q1 = "+se.q1,"median = "+se.med,"q3 = "+se.q3].join(`
+`));var et;se.med!==e?et=se.med:se.q1!==e?se.q3!==e?et=(se.q1+se.q3)/2:et=se.q1:se.q3!==e?et=se.q3:et=0,se.med=et,se.q1=se.q3=et,se.lf=se.uf=et,se.mean=se.sd=et,se.ln=se.un=et,se.min=se.max=et}ee=Math.min(ee,se.min),ie=Math.max(ie,se.max),se.pts2=he.filter(re),u.push(se)}}E._extremes[L._id]=x.findExtremes(L,[ee,ie],{padded:!0})}else{var lt=L.makeCalcdata(E,z),Me=o(Q,ue),ge=Q.length,ce=a(ge);for(f=0;f<E._length;f++)if(Z=lt[f],!!g(Z)){var ze=M.findBin(N[f],Me);ze>=0&&ze<ge&&(J={v:Z,i:f},n(J,E,f),ce[ze].push(J))}var tt=1/0,nt=-1/0,Qe=E.quartilemethod,Ct=Qe==="exclusive",St=Qe==="inclusive";for(f=0;f<ge;f++)if(ce[f].length>0){if(se={},se.pos=se[B]=Q[f],he=se.pts=ce[f].sort(c),G=se[z]=he.map(h),$=G.length,se.min=G[0],se.max=G[$-1],se.mean=M.mean(G,$),se.sd=M.stdev(G,$,se.mean)*E.sdmultiple,se.med=M.interp(G,.5),$%2&&(Ct||St)){var Ot,jt;Ct?(Ot=G.slice(0,$/2),jt=G.slice($/2+1)):St&&(Ot=G.slice(0,$/2+1),jt=G.slice($/2)),se.q1=M.interp(Ot,.5),se.q3=M.interp(jt,.5)}else se.q1=M.interp(G,.25),se.q3=M.interp(G,.75);se.lf=v(se,G,$),se.uf=p(se,G,$),se.lo=T(se),se.uo=l(se);var ur=_(se,$);se.ln=se.med-ur,se.un=se.med+ur,tt=Math.min(tt,se.ln),nt=Math.max(nt,se.un),se.pts2=he.filter(re),u.push(se)}E.notched&&M.isTypedArray(lt)&&(lt=Array.from(lt)),E._extremes[L._id]=x.findExtremes(L,E.notched?lt.concat([tt,nt]):lt,{padded:!0})}return s(u,E),u.length>0?(u[0].t={num:m[y],dPos:ue,posLetter:B,valLetter:z,labels:{med:t(S,"median:"),min:t(S,"min:"),q1:t(S,"q1:"),q3:t(S,"q3:"),max:t(S,"max:"),mean:E.boxmean==="sd"||E.sizemode==="sd"?t(S,"mean \xB1 \u03C3:").replace("\u03C3",E.sdmultiple===1?"\u03C3":E.sdmultiple+"\u03C3"):t(S,"mean:"),lf:t(S,"lower fence:"),uf:t(S,"upper fence:")}},m[y]++,u):[{t:{empty:!0}}]};function r(w,S,E,m){var b=S in w,d=S+"0"in w,u="d"+S in w;if(b||d&&u){var y=E.makeCalcdata(w,S),f=A(w,E,S,y).vals;return[f,y]}var P;d?P=w[S+"0"]:"name"in w&&(E.type==="category"||g(w.name)&&["linear","log"].indexOf(E.type)!==-1||M.isDateTime(w.name)&&E.type==="date")?P=w.name:P=m;for(var L=E.type==="multicategory"?E.r2c_just_indices(P):E.d2c(P,0,w[S+"calendar"]),z=w._length,F=new Array(z),B=0;B<z;B++)F[B]=L;return[F]}function o(w,S){for(var E=w.length,m=new Array(E+1),b=0;b<E;b++)m[b]=w[b]-S;return m[E]=w[E-1]+S,m}function a(w){for(var S=new Array(w),E=0;E<w;E++)S[E]=[];return S}var i={text:"tx",hovertext:"htx"};function n(w,S,E){for(var m in i)M.isArrayOrTypedArray(S[m])&&(Array.isArray(E)?M.isArrayOrTypedArray(S[m][E[0]])&&(w[i[m]]=S[m][E[0]][E[1]]):w[i[m]]=S[m][E])}function s(w,S){if(M.isArrayOrTypedArray(S.selectedpoints))for(var E=0;E<w.length;E++){for(var m=w[E].pts||[],b={},d=0;d<m.length;d++)b[m[d].i]=d;M.tagSelected(m,S,b)}}function c(w,S){return w.v-S.v}function h(w){return w.v}function v(w,S,E){return E===0?w.q1:Math.min(w.q1,S[Math.min(M.findBin(2.5*w.q1-1.5*w.q3,S,!0)+1,E-1)])}function p(w,S,E){return E===0?w.q3:Math.max(w.q3,S[Math.max(M.findBin(2.5*w.q3-1.5*w.q1,S),0)])}function T(w){return 4*w.q1-3*w.q3}function l(w){return 4*w.q3-3*w.q1}function _(w,S){return S===0?0:1.57*(w.q3-w.q1)/Math.sqrt(S)}}}),q2=Ye({"src/traces/box/cross_trace_calc.js"(X,H){"use strict";var g=Co(),x=ta(),A=Yg().getAxisGroup,M=["v","h"];function e(r,o){for(var a=r.calcdata,i=o.xaxis,n=o.yaxis,s=0;s<M.length;s++){for(var c=M[s],h=c==="h"?n:i,v=[],p=0;p<a.length;p++){var T=a[p],l=T[0].t,_=T[0].trace;_.visible===!0&&(_.type==="box"||_.type==="candlestick")&&!l.empty&&(_.orientation||"v")===c&&_.xaxis===i._id&&_.yaxis===n._id&&v.push(p)}t("box",r,v,h)}}function t(r,o,a,i){var n=o.calcdata,s=o._fullLayout,c=i._id,h=c.charAt(0),v,p,T,l=[],_=0;for(v=0;v<a.length;v++)for(T=n[a[v]],p=0;p<T.length;p++)l.push(i.c2l(T[p].pos,!0)),_+=(T[p].pts2||[]).length;if(l.length){var w=x.distinctVals(l);(i.type==="category"||i.type==="multicategory")&&(w.minDiff=1);var S=w.minDiff/2;g.minDtick(i,w.minDiff,w.vals[0],!0);var E=r==="violin"?"_numViolins":"_numBoxes",m=s[E],b=s[r+"mode"]==="group"&&m>1,d=1-s[r+"gap"],u=1-s[r+"groupgap"];for(v=0;v<a.length;v++){T=n[a[v]];var y=T[0].trace,f=T[0].t,P=y.width,L=y.side,z,F,B,O;if(P)z=F=O=P/2,B=0;else if(z=S,b){var I=A(s,i._id)+y.orientation,N=s._alignmentOpts[I]||{},U=N[y.alignmentgroup]||{},W=Object.keys(U.offsetGroups||{}).length,Q=W||m,ue=W?y._offsetIndex:f.num;F=z*d*u/Q,B=2*z*(-.5+(ue+.5)/Q)*d,O=z*d/Q}else F=z*d*u,B=0,O=z;f.dPos=z,f.bPos=B,f.bdPos=F,f.wHover=O;var se,he,G=B+F,$,J,Z,re,ne,j,ee=!!P,ie=(y.boxpoints||y.points)&&_>0;if(L==="positive"?(se=z*(P?1:.5),$=G,he=$=B):L==="negative"?(se=$=B,he=z*(P?1:.5),J=G):(se=he=z,$=J=G),ie){var fe=y.pointpos,be=y.jitter,Ae=y.marker.size/2,Be=0;fe+be>=0&&(Be=G*(fe+be),Be>se?(ee=!0,ne=Ae,Z=Be):Be>$&&(ne=Ae,Z=se)),Be<=se&&(Z=se);var Ie=0;fe-be<=0&&(Ie=-G*(fe-be),Ie>he?(ee=!0,j=Ae,re=Ie):Ie>J&&(j=Ae,re=he)),Ie<=he&&(re=he)}else Z=se,re=he;var Ze=new Array(T.length);for(p=0;p<T.length;p++)Ze[p]=T[p].pos;y._extremes[c]=g.findExtremes(i,Ze,{padded:ee,vpadminus:re,vpadplus:Z,vpadLinearized:!0,ppadminus:{x:j,y:ne}[h],ppadplus:{x:ne,y:j}[h]})}}}H.exports={crossTraceCalc:e,setPositionOffset:t}}}),H2=Ye({"src/traces/box/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=5,e=.01;function t(i,n,s,c){var h=i._context.staticPlot,v=n.xaxis,p=n.yaxis;x.makeTraceGroups(c,s,"trace boxes").each(function(T){var l=g.select(this),_=T[0],w=_.t,S=_.trace;if(w.wdPos=w.bdPos*S.whiskerwidth,S.visible!==!0||w.empty){l.remove();return}var E,m;S.orientation==="h"?(E=p,m=v):(E=v,m=p),r(l,{pos:E,val:m},S,w,h),o(l,{x:v,y:p},S,w),a(l,{pos:E,val:m},S,w)})}function r(i,n,s,c,h){var v=s.orientation==="h",p=n.val,T=n.pos,l=!!T.rangebreaks,_=c.bPos,w=c.wdPos||0,S=c.bPosPxOffset||0,E=s.whiskerwidth||0,m=s.showwhiskers!==!1,b=s.notched||!1,d=b?1-2*s.notchwidth:1,u,y;Array.isArray(c.bdPos)?(u=c.bdPos[0],y=c.bdPos[1]):(u=c.bdPos,y=c.bdPos);var f=i.selectAll("path.box").data(s.type!=="violin"||s.box.visible?x.identity:[]);f.enter().append("path").style("vector-effect",h?"none":"non-scaling-stroke").attr("class","box"),f.exit().remove(),f.each(function(P){if(P.empty)return g.select(this).attr("d","M0,0Z");var L=T.c2l(P.pos+_,!0),z=T.l2p(L-u)+S,F=T.l2p(L+y)+S,B=l?(z+F)/2:T.l2p(L)+S,O=s.whiskerwidth,I=l?z*O+(1-O)*B:T.l2p(L-w)+S,N=l?F*O+(1-O)*B:T.l2p(L+w)+S,U=T.l2p(L-u*d)+S,W=T.l2p(L+y*d)+S,Q=s.sizemode==="sd",ue=p.c2p(Q?P.mean-P.sd:P.q1,!0),se=Q?p.c2p(P.mean+P.sd,!0):p.c2p(P.q3,!0),he=x.constrain(Q?p.c2p(P.mean,!0):p.c2p(P.med,!0),Math.min(ue,se)+1,Math.max(ue,se)-1),G=P.lf===void 0||s.boxpoints===!1||Q,$=p.c2p(G?P.min:P.lf,!0),J=p.c2p(G?P.max:P.uf,!0),Z=p.c2p(P.ln,!0),re=p.c2p(P.un,!0);v?g.select(this).attr("d","M"+he+","+U+"V"+W+"M"+ue+","+z+"V"+F+(b?"H"+Z+"L"+he+","+W+"L"+re+","+F:"")+"H"+se+"V"+z+(b?"H"+re+"L"+he+","+U+"L"+Z+","+z:"")+"Z"+(m?"M"+ue+","+B+"H"+$+"M"+se+","+B+"H"+J+(E===0?"":"M"+$+","+I+"V"+N+"M"+J+","+I+"V"+N):"")):g.select(this).attr("d","M"+U+","+he+"H"+W+"M"+z+","+ue+"H"+F+(b?"V"+Z+"L"+W+","+he+"L"+F+","+re:"")+"V"+se+"H"+z+(b?"V"+re+"L"+U+","+he+"L"+z+","+Z:"")+"Z"+(m?"M"+B+","+ue+"V"+$+"M"+B+","+se+"V"+J+(E===0?"":"M"+I+","+$+"H"+N+"M"+I+","+J+"H"+N):""))})}function o(i,n,s,c){var h=n.x,v=n.y,p=c.bdPos,T=c.bPos,l=s.boxpoints||s.points;x.seedPseudoRandom();var _=function(E){return E.forEach(function(m){m.t=c,m.trace=s}),E},w=i.selectAll("g.points").data(l?_:[]);w.enter().append("g").attr("class","points"),w.exit().remove();var S=w.selectAll("path").data(function(E){var m,b=E.pts2,d=Math.max((E.max-E.min)/10,E.q3-E.q1),u=d*1e-9,y=d*e,f=[],P=0,L;if(s.jitter){if(d===0)for(P=1,f=new Array(b.length),m=0;m<b.length;m++)f[m]=1;else for(m=0;m<b.length;m++){var z=Math.max(0,m-M),F=b[z].v,B=Math.min(b.length-1,m+M),O=b[B].v;l!=="all"&&(b[m].v<E.lf?O=Math.min(O,E.lf):F=Math.max(F,E.uf));var I=Math.sqrt(y*(B-z)/(O-F+u))||0;I=x.constrain(Math.abs(I),0,1),f.push(I),P=Math.max(I,P)}L=s.jitter*2/(P||1)}for(m=0;m<b.length;m++){var N=b[m],U=N.v,W=s.jitter?L*f[m]*(x.pseudoRandom()-.5):0,Q=E.pos+T+p*(s.pointpos+W);s.orientation==="h"?(N.y=Q,N.x=U):(N.x=Q,N.y=U),l==="suspectedoutliers"&&U<E.uo&&U>E.lo&&(N.so=!0)}return b});S.enter().append("path").classed("point",!0),S.exit().remove(),S.call(A.translatePoints,h,v)}function a(i,n,s,c){var h=n.val,v=n.pos,p=!!v.rangebreaks,T=c.bPos,l=c.bPosPxOffset||0,_=s.boxmean||(s.meanline||{}).visible,w,S;Array.isArray(c.bdPos)?(w=c.bdPos[0],S=c.bdPos[1]):(w=c.bdPos,S=c.bdPos);var E=i.selectAll("path.mean").data(s.type==="box"&&s.boxmean||s.type==="violin"&&s.box.visible&&s.meanline.visible?x.identity:[]);E.enter().append("path").attr("class","mean").style({fill:"none","vector-effect":"non-scaling-stroke"}),E.exit().remove(),E.each(function(m){var b=v.c2l(m.pos+T,!0),d=v.l2p(b-w)+l,u=v.l2p(b+S)+l,y=p?(d+u)/2:v.l2p(b)+l,f=h.c2p(m.mean,!0),P=h.c2p(m.mean-m.sd,!0),L=h.c2p(m.mean+m.sd,!0);s.orientation==="h"?g.select(this).attr("d","M"+f+","+d+"V"+u+(_==="sd"?"m0,0L"+P+","+y+"L"+f+","+d+"L"+L+","+y+"Z":"")):g.select(this).attr("d","M"+d+","+f+"H"+u+(_==="sd"?"m0,0L"+y+","+P+"L"+d+","+f+"L"+y+","+L+"Z":""))})}H.exports={plot:t,plotBoxAndWhiskers:r,plotPoints:o,plotBoxMean:a}}}),G2=Ye({"src/traces/box/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo();function M(t,r,o){var a=o||g.select(t).selectAll("g.trace.boxes");a.style("opacity",function(i){return i[0].trace.opacity}),a.each(function(i){var n=g.select(this),s=i[0].trace,c=s.line.width;function h(T,l,_,w){T.style("stroke-width",l+"px").call(x.stroke,_).call(x.fill,w)}var v=n.selectAll("path.box");if(s.type==="candlestick")v.each(function(T){if(!T.empty){var l=g.select(this),_=s[T.dir];h(l,_.line.width,_.line.color,_.fillcolor),l.style("opacity",s.selectedpoints&&!T.selected?.3:1)}});else{h(v,c,s.line.color,s.fillcolor),n.selectAll("path.mean").style({"stroke-width":c,"stroke-dasharray":2*c+"px,"+c+"px"}).call(x.stroke,s.line.color);var p=n.selectAll("path.point");A.pointStyle(p,s,t)}})}function e(t,r,o){var a=r[0].trace,i=o.selectAll("path.point");a.selectedpoints?A.selectedPointStyle(i,a):A.pointStyle(i,a,t)}H.exports={style:M,styleOnSelect:e}}}),JS=Ye({"src/traces/box/hover.js"(X,H){"use strict";var g=Co(),x=ta(),A=Lc(),M=Fn(),e=x.fillText;function t(a,i,n,s){var c=a.cd,h=c[0].trace,v=h.hoveron,p=[],T;return v.indexOf("boxes")!==-1&&(p=p.concat(r(a,i,n,s))),v.indexOf("points")!==-1&&(T=o(a,i,n)),s==="closest"?T?[T]:p:(T&&p.push(T),p)}function r(a,i,n,s){var c=a.cd,h=a.xa,v=a.ya,p=c[0].trace,T=c[0].t,l=p.type==="violin",_,w,S,E,m,b,d,u,y,f,P,L=T.bdPos,z,F,B=T.wHover,O=function(Ie){return S.c2l(Ie.pos)+T.bPos-S.c2l(b)};l&&p.side!=="both"?(p.side==="positive"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze,Ze+B,f)},z=L,F=0),p.side==="negative"&&(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze,f)},z=0,F=L)):(y=function(Ie){var Ze=O(Ie);return A.inbox(Ze-B,Ze+B,f)},z=F=L);var I;l?I=function(Ie){return A.inbox(Ie.span[0]-m,Ie.span[1]-m,f)}:I=function(Ie){return A.inbox(Ie.min-m,Ie.max-m,f)},p.orientation==="h"?(m=i,b=n,d=I,u=y,_="y",S=v,w="x",E=h):(m=n,b=i,d=y,u=I,_="x",S=h,w="y",E=v);var N=Math.min(1,L/Math.abs(S.r2c(S.range[1])-S.r2c(S.range[0])));f=a.maxHoverDistance-N,P=a.maxSpikeDistance-N;function U(Ie){return(d(Ie)+u(Ie))/2}var W=A.getDistanceFunction(s,d,u,U);if(A.getClosest(c,W,a),a.index===!1)return[];var Q=c[a.index],ue=p.line.color,se=(p.marker||{}).color;M.opacity(ue)&&p.line.width?a.color=ue:M.opacity(se)&&p.boxpoints?a.color=se:a.color=p.fillcolor,a[_+"0"]=S.c2p(Q.pos+T.bPos-F,!0),a[_+"1"]=S.c2p(Q.pos+T.bPos+z,!0),a[_+"LabelVal"]=Q.orig_p!==void 0?Q.orig_p:Q.pos;var he=_+"Spike";a.spikeDistance=U(Q)*P/f,a[he]=S.c2p(Q.pos,!0);var G=p.boxmean||p.sizemode==="sd"||(p.meanline||{}).visible,$=p.boxpoints||p.points,J=$&&G?["max","uf","q3","med","mean","q1","lf","min"]:$&&!G?["max","uf","q3","med","q1","lf","min"]:!$&&G?["max","q3","med","mean","q1","min"]:["max","q3","med","q1","min"],Z=E.range[1]<E.range[0];p.orientation===(Z?"v":"h")&&J.reverse();for(var re=a.spikeDistance,ne=a[he],j=[],ee=0;ee<J.length;ee++){var ie=J[ee];if(ie in Q){var fe=Q[ie],be=E.c2p(fe,!0),Ae=x.extendFlat({},a);Ae.attr=ie,Ae[w+"0"]=Ae[w+"1"]=be,Ae[w+"LabelVal"]=fe,Ae[w+"Label"]=(T.labels?T.labels[ie]+" ":"")+g.hoverLabelText(E,fe,p[w+"hoverformat"]),Ae.hoverOnBox=!0,ie==="mean"&&"sd"in Q&&(p.boxmean==="sd"||p.sizemode==="sd")&&(Ae[w+"err"]=Q.sd),Ae.hovertemplate=!1,j.push(Ae)}}a.name="",a.spikeDistance=void 0,a[he]=void 0;for(var Be=0;Be<j.length;Be++)j[Be].attr!=="med"?(j[Be].name="",j[Be].spikeDistance=void 0,j[Be][he]=void 0):(j[Be].spikeDistance=re,j[Be][he]=ne);return j}function o(a,i,n){for(var s=a.cd,c=a.xa,h=a.ya,v=s[0].trace,p=c.c2p(i),T=h.c2p(n),l,_=function(I){var N=Math.max(3,I.mrc||0);return Math.max(Math.abs(c.c2p(I.x)-p)-N,1-3/N)},w=function(I){var N=Math.max(3,I.mrc||0);return Math.max(Math.abs(h.c2p(I.y)-T)-N,1-3/N)},S=A.quadrature(_,w),E=!1,m,b,d=0;d<s.length;d++){m=s[d];for(var u=0;u<(m.pts||[]).length;u++){b=m.pts[u];var y=S(b);y<=a.distance&&(a.distance=y,E=[d,u])}}if(!E)return!1;m=s[E[0]],b=m.pts[E[1]];var f=c.c2p(b.x,!0),P=h.c2p(b.y,!0),L=b.mrc||1;l=x.extendFlat({},a,{index:b.i,color:(v.marker||{}).color,name:v.name,x0:f-L,x1:f+L,y0:P-L,y1:P+L,spikeDistance:a.distance,hovertemplate:v.hovertemplate});var z=m.orig_p,F=z!==void 0?z:m.pos,B;v.orientation==="h"?(B=h,l.xLabelVal=b.x,l.yLabelVal=F):(B=c,l.xLabelVal=F,l.yLabelVal=b.y);var O=B._id.charAt(0);return l[O+"Spike"]=B.c2p(m.pos,!0),e(b,v,l),l}H.exports={hoverPoints:t,hoverOnBoxes:r,hoverOnPoints:o}}}),XB=Ye({"src/traces/box/event_data.js"(X,H){"use strict";H.exports=function(x,A){return A.hoverOnBox&&(x.hoverOnBox=A.hoverOnBox),"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),$S=Ye({"src/traces/box/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a;if(A===!1)for(o=0;o<M.length;o++)for(a=0;a<(M[o].pts||[]).length;a++)M[o].pts[a].selected=0;else for(o=0;o<M.length;o++)for(a=0;a<(M[o].pts||[]).length;a++){var i=M[o].pts[a],n=e.c2p(i.x),s=t.c2p(i.y);A.contains([n,s],null,i.i,x)?(r.push({pointNumber:i.i,x:e.c2d(i.x),y:t.c2d(i.y)}),i.selected=1):i.selected=0}return r}}}),YB=Ye({"src/traces/box/index.js"(X,H){"use strict";H.exports={attributes:F_(),layoutAttributes:O_(),supplyDefaults:B_().supplyDefaults,crossTraceDefaults:B_().crossTraceDefaults,supplyLayoutDefaults:V2().supplyLayoutDefaults,calc:KS(),crossTraceCalc:q2().crossTraceCalc,plot:H2().plot,style:G2().style,styleOnSelect:G2().styleOnSelect,hoverPoints:JS().hoverPoints,eventData:XB(),selectPoints:$S(),moduleType:"trace",name:"box",basePlotModule:Pf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","boxLayout","zoomScale"],meta:{}}}}),KB=Ye({"lib/box.js"(X,H){"use strict";H.exports=YB()}}),h1=Ye({"src/traces/heatmap/attributes.js"(X,H){"use strict";var g=Pc(),x=Pl(),A=Au(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=tu(),o=Oo().extendFlat;H.exports=o({z:{valType:"data_array",editType:"calc"},x:o({},g.x,{impliedEdits:{xtype:"array"}}),x0:o({},g.x0,{impliedEdits:{xtype:"scaled"}}),dx:o({},g.dx,{impliedEdits:{xtype:"scaled"}}),y:o({},g.y,{impliedEdits:{ytype:"array"}}),y0:o({},g.y0,{impliedEdits:{ytype:"scaled"}}),dy:o({},g.dy,{impliedEdits:{ytype:"scaled"}}),xperiod:o({},g.xperiod,{impliedEdits:{xtype:"scaled"}}),yperiod:o({},g.yperiod,{impliedEdits:{ytype:"scaled"}}),xperiod0:o({},g.xperiod0,{impliedEdits:{xtype:"scaled"}}),yperiod0:o({},g.yperiod0,{impliedEdits:{ytype:"scaled"}}),xperiodalignment:o({},g.xperiodalignment,{impliedEdits:{xtype:"scaled"}}),yperiodalignment:o({},g.yperiodalignment,{impliedEdits:{ytype:"scaled"}}),text:{valType:"data_array",editType:"calc"},hovertext:{valType:"data_array",editType:"calc"},transpose:{valType:"boolean",dflt:!1,editType:"calc"},xtype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},ytype:{valType:"enumerated",values:["array","scaled"],editType:"calc+clearAxisTypes"},zsmooth:{valType:"enumerated",values:["fast","best",!1],dflt:!1,editType:"calc"},hoverongaps:{valType:"boolean",dflt:!0,editType:"none"},connectgaps:{valType:"boolean",editType:"calc"},xgap:{valType:"number",dflt:0,min:0,editType:"plot"},ygap:{valType:"number",dflt:0,min:0,editType:"plot"},xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:e(),texttemplate:t({arrayOk:!1,editType:"plot"},{keys:["x","y","z","text"]}),textfont:A({editType:"plot",autoSize:!0,autoColor:!0,colorEditType:"style"}),showlegend:o({},x.showlegend,{dflt:!1}),zorder:g.zorder},r("",{cLetter:"z",autoColorDflt:!1}))}}),W2=Ye({"src/traces/heatmap/xyz_defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=Hn();H.exports=function(r,o,a,i,n,s){var c=a("z");n=n||"x",s=s||"y";var h,v;if(c===void 0||!c.length)return 0;if(x.isArray1D(c)){h=a(n),v=a(s);var p=x.minRowLength(h),T=x.minRowLength(v);if(p===0||T===0)return 0;o._length=Math.min(p,T,c.length)}else{if(h=M(n,a),v=M(s,a),!e(c))return 0;a("transpose"),o._length=null}var l=A.getComponentMethod("calendars","handleTraceDefaults");return l(r,o,[n,s],i),!0};function M(t,r){var o=r(t),a=o?r(t+"type","array"):"scaled";return a==="scaled"&&(r(t+"0"),r("d"+t)),o}function e(t){for(var r=!0,o=!1,a=!1,i,n=0;n<t.length;n++){if(i=t[n],!x.isArrayOrTypedArray(i)){r=!1;break}i.length>0&&(o=!0);for(var s=0;s<i.length;s++)if(g(i[s])){a=!0;break}}return r&&o&&a}}}),N_=Ye({"src/traces/heatmap/label_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){A("texttemplate");var e=g.extendFlat({},M.font,{color:"auto",size:"auto"});g.coerceFont(A,"textfont",e)}}}),QS=Ye({"src/traces/heatmap/style_defaults.js"(X,H){"use strict";H.exports=function(x,A,M){var e=M("zsmooth");e===!1&&(M("xgap"),M("ygap")),M("zhoverformat")}}}),JB=Ye({"src/traces/heatmap/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=N_(),M=Qd(),e=QS(),t=sh(),r=h1();H.exports=function(a,i,n,s){function c(v,p){return g.coerce(a,i,r,v,p)}var h=x(a,i,c,s);if(!h){i.visible=!1;return}M(a,i,s,c),c("xhoverformat"),c("yhoverformat"),c("text"),c("hovertext"),c("hovertemplate"),A(c,s),e(a,i,c,s),c("hoverongaps"),c("connectgaps",g.isArray1D(i.z)&&i.zsmooth!==!1),t(a,i,s,c,{prefix:"",cLetter:"z"}),c("zorder")}}}),eM=Ye({"src/traces/histogram/bin_functions.js"(X,H){"use strict";var g=jo();H.exports={count:function(x,A,M){return M[x]++,1},sum:function(x,A,M,e){var t=e[A];return g(t)?(t=Number(t),M[x]+=t,t):0},avg:function(x,A,M,e,t){var r=e[A];return g(r)&&(r=Number(r),M[x]+=r,t[x]++),0},min:function(x,A,M,e){var t=e[A];if(g(t))if(t=Number(t),g(M[x])){if(M[x]>t){var r=t-M[x];return M[x]=t,r}}else return M[x]=t,t;return 0},max:function(x,A,M,e){var t=e[A];if(g(t))if(t=Number(t),g(M[x])){if(M[x]<t){var r=t-M[x];return M[x]=t,r}}else return M[x]=t,t;return 0}}}}),tM=Ye({"src/traces/histogram/norm_functions.js"(X,H){"use strict";H.exports={percent:function(g,x){for(var A=g.length,M=100/x,e=0;e<A;e++)g[e]*=M},probability:function(g,x){for(var A=g.length,M=0;M<A;M++)g[M]/=x},density:function(g,x,A,M){var e=g.length;M=M||1;for(var t=0;t<e;t++)g[t]*=A[t]*M},"probability density":function(g,x,A,M){var e=g.length;M&&(x/=M);for(var t=0;t<e;t++)g[t]*=A[t]/x}}}}),rM=Ye({"src/traces/histogram/average.js"(X,H){"use strict";H.exports=function(x,A){for(var M=x.length,e=0,t=0;t<M;t++)A[t]?(x[t]/=A[t],e+=x[t]):x[t]=null;return e}}}),aM=Ye({"src/traces/histogram/bin_label_vals.js"(X,H){"use strict";var g=ks(),x=g.ONEAVGYEAR,A=g.ONEAVGMONTH,M=g.ONEDAY,e=g.ONEHOUR,t=g.ONEMIN,r=g.ONESEC,o=Co().tickIncrement;H.exports=function(h,v,p,T,l){var _=-1.1*v,w=-.1*v,S=h-w,E=p[0],m=p[1],b=Math.min(a(E+w,E+S,T,l),a(m+w,m+S,T,l)),d=Math.min(a(E+_,E+w,T,l),a(m+_,m+w,T,l)),u,y;if(b>d&&d<Math.abs(m-E)/4e3?(u=b,y=!1):(u=Math.min(b,d),y=!0),T.type==="date"&&u>M){var f=u===x?1:6,P=u===x?"M12":"M1";return function(L,z){var F=T.c2d(L,x,l),B=F.indexOf("-",f);B>0&&(F=F.substr(0,B));var O=T.d2c(F,0,l);if(O<L){var I=o(O,P,!1,l);(O+I)/2<L+h&&(O=I)}return z&&y?o(O,P,!0,l):O}}return function(L,z){var F=u*Math.round(L/u);return F+u/10<L&&F+u*.9<L+h&&(F+=u),z&&y&&(F-=u),F}};function a(c,h,v,p){if(c*h<=0)return 1/0;for(var T=Math.abs(h-c),l=v.type==="date",_=i(T,l),w=0;w<10;w++){var S=i(_*80,l);if(_===S)break;if(n(S,c,h,l,v,p))_=S;else break}return _}function i(c,h){return h&&c>r?c>M?c>x*1.1?x:c>A*1.1?A:M:c>e?e:c>t?t:r:Math.pow(10,Math.floor(Math.log(c)/Math.LN10))}function n(c,h,v,p,T,l){if(p&&c>M){var _=s(h,T,l),w=s(v,T,l),S=c===x?0:1;return _[S]!==w[S]}return Math.floor(v/c)-Math.floor(h/c)>.1}function s(c,h,v){var p=h.c2d(c,x,v).split("-");return p[0]===""&&(p.unshift(),p[0]="-"+p[0]),p}}}),iM=Ye({"src/traces/histogram/calc.js"(X,H){"use strict";var g=jo(),x=ta(),A=Hn(),M=Co(),e=z_(),t=eM(),r=tM(),o=rM(),a=aM();function i(v,p){var T=[],l=[],_=p.orientation==="h",w=M.getFromId(v,_?p.yaxis:p.xaxis),S=_?"y":"x",E={x:"y",y:"x"}[S],m=p[S+"calendar"],b=p.cumulative,d,u=n(v,p,w,S),y=u[0],f=u[1],P=typeof y.size=="string",L=[],z=P?L:y,F=[],B=[],O=[],I=0,N=p.histnorm,U=p.histfunc,W=N.indexOf("density")!==-1,Q,ue,se;b.enabled&&W&&(N=N.replace(/ ?density$/,""),W=!1);var he=U==="max"||U==="min",G=he?null:0,$=t.count,J=r[N],Z=!1,re=function(ge){return w.r2c(ge,0,m)},ne;for(x.isArrayOrTypedArray(p[E])&&U!=="count"&&(ne=p[E],Z=U==="avg",$=t[U]),d=re(y.start),ue=re(y.end)+(d-M.tickIncrement(d,y.size,!1,m))/1e6;d<ue&&T.length<1e6&&(Q=M.tickIncrement(d,y.size,!1,m),T.push((d+Q)/2),l.push(G),O.push([]),L.push(d),W&&F.push(1/(Q-d)),Z&&B.push(0),!(Q<=d));)d=Q;L.push(d),!P&&w.type==="date"&&(z={start:re(z.start),end:re(z.end),size:z.size}),v._fullLayout._roundFnOpts||(v._fullLayout._roundFnOpts={});var j=p["_"+S+"bingroup"],ee={leftGap:1/0,rightGap:1/0};j&&(v._fullLayout._roundFnOpts[j]||(v._fullLayout._roundFnOpts[j]=ee),ee=v._fullLayout._roundFnOpts[j]);var ie=l.length,fe=!0,be=ee.leftGap,Ae=ee.rightGap,Be={};for(d=0;d<f.length;d++){var Ie=f[d];se=x.findBin(Ie,z),se>=0&&se<ie&&(I+=$(se,d,l,ne,B),fe&&O[se].length&&Ie!==f[O[se][0]]&&(fe=!1),O[se].push(d),Be[d]=se,be=Math.min(be,Ie-L[se]),Ae=Math.min(Ae,L[se+1]-Ie))}ee.leftGap=be,ee.rightGap=Ae;var Ze;fe||(Ze=function(ge,ce){return function(){var ze=v._fullLayout._roundFnOpts[j];return a(ze.leftGap,ze.rightGap,L,w,m)(ge,ce)}}),Z&&(I=o(l,B)),J&&J(l,I,F),b.enabled&&h(l,b.direction,b.currentbin);var at=Math.min(T.length,l.length),it=[],et=0,lt=at-1;for(d=0;d<at;d++)if(l[d]){et=d;break}for(d=at-1;d>=et;d--)if(l[d]){lt=d;break}for(d=et;d<=lt;d++)if(g(T[d])&&g(l[d])){var Me={p:T[d],s:l[d],b:0};b.enabled||(Me.pts=O[d],fe?Me.ph0=Me.ph1=O[d].length?f[O[d][0]]:T[d]:(p._computePh=!0,Me.ph0=Ze(L[d]),Me.ph1=Ze(L[d+1],!0))),it.push(Me)}return it.length===1&&(it[0].width1=M.tickIncrement(it[0].p,y.size,!1,m)-it[0].p),e(it,p),x.isArrayOrTypedArray(p.selectedpoints)&&x.tagSelected(it,p,Be),it}function n(v,p,T,l,_){var w=l+"bins",S=v._fullLayout,E=p["_"+l+"bingroup"],m=S._histogramBinOpts[E],b=S.barmode==="overlay",d,u,y,f,P,L,z,F=function(Ie){return T.r2c(Ie,0,f)},B=function(Ie){return T.c2r(Ie,0,f)},O=T.type==="date"?function(Ie){return Ie||Ie===0?x.cleanDate(Ie,null,f):null}:function(Ie){return g(Ie)?Number(Ie):null};function I(Ie,Ze,at){Ze[Ie+"Found"]?(Ze[Ie]=O(Ze[Ie]),Ze[Ie]===null&&(Ze[Ie]=at[Ie])):(L[Ie]=Ze[Ie]=at[Ie],x.nestedProperty(u[0],w+"."+Ie).set(at[Ie]))}if(p["_"+l+"autoBinFinished"])delete p["_"+l+"autoBinFinished"];else{u=m.traces;var N=[],U=!0,W=!1,Q=!1;for(d=0;d<u.length;d++)if(y=u[d],y.visible){var ue=m.dirs[d];P=y["_"+ue+"pos0"]=T.makeCalcdata(y,ue),N=x.concat(N,P),delete y["_"+l+"autoBinFinished"],p.visible===!0&&(U?U=!1:(delete y._autoBin,y["_"+l+"autoBinFinished"]=1),A.traceIs(y,"2dMap")&&(W=!0),y.type==="histogram2dcontour"&&(Q=!0))}f=u[0][l+"calendar"];var se=M.autoBin(N,T,m.nbins,W,f,m.sizeFound&&m.size),he=u[0]._autoBin={};if(L=he[m.dirs[0]]={},Q&&(m.size||(se.start=B(M.tickIncrement(F(se.start),se.size,!0,f))),m.end===void 0&&(se.end=B(M.tickIncrement(F(se.end),se.size,!1,f)))),b&&!A.traceIs(p,"2dMap")&&se._dataSpan===0&&T.type!=="category"&&T.type!=="multicategory"&&p.bingroup===""&&typeof p.xbins>"u"){if(_)return[se,P,!0];se=s(v,p,T,l,w)}z=y.cumulative||{},z.enabled&&z.currentbin!=="include"&&(z.direction==="decreasing"?se.start=B(M.tickIncrement(F(se.start),se.size,!0,f)):se.end=B(M.tickIncrement(F(se.end),se.size,!1,f))),m.size=se.size,m.sizeFound||(L.size=se.size,x.nestedProperty(u[0],w+".size").set(se.size)),I("start",m,se),I("end",m,se)}P=p["_"+l+"pos0"],delete p["_"+l+"pos0"];var G=p._input[w]||{},$=x.extendFlat({},m),J=m.start,Z=T.r2l(G.start),re=Z!==void 0;if((m.startFound||re)&&Z!==T.r2l(J)){var ne=re?Z:x.aggNums(Math.min,null,P),j={type:T.type==="category"||T.type==="multicategory"?"linear":T.type,r2l:T.r2l,dtick:m.size,tick0:J,calendar:f,range:[ne,M.tickIncrement(ne,m.size,!1,f)].map(T.l2r)},ee=M.tickFirst(j);ee>T.r2l(ne)&&(ee=M.tickIncrement(ee,m.size,!0,f)),$.start=T.l2r(ee),re||x.nestedProperty(p,w+".start").set($.start)}var ie=m.end,fe=T.r2l(G.end),be=fe!==void 0;if((m.endFound||be)&&fe!==T.r2l(ie)){var Ae=be?fe:x.aggNums(Math.max,null,P);$.end=T.l2r(Ae),be||x.nestedProperty(p,w+".start").set($.end)}var Be="autobin"+l;return p._input[Be]===!1&&(p._input[w]=x.extendFlat({},p[w]||{}),delete p._input[Be],delete p[Be]),[$,P]}function s(v,p,T,l,_){var w=v._fullLayout,S=c(v,p),E=!1,m=1/0,b=[p],d,u,y;for(d=0;d<S.length;d++)if(u=S[d],u===p)E=!0;else if(!E)y=w._histogramBinOpts[u["_"+l+"bingroup"]],m=Math.min(m,y.size||u[_].size);else{var f=n(v,u,T,l,!0),P=f[0],L=f[2];u["_"+l+"autoBinFinished"]=1,u["_"+l+"pos0"]=f[1],L?b.push(u):m=Math.min(m,P.size)}var z=new Array(b.length);for(d=0;d<b.length;d++)for(var F=b[d]["_"+l+"pos0"],B=0;B<F.length;B++)if(F[B]!==void 0){z[d]=F[B];break}for(isFinite(m)||(m=x.distinctVals(z).minDiff),d=0;d<b.length;d++){u=b[d];var O=u[l+"calendar"],I={start:T.c2r(z[d]-m/2,0,O),end:T.c2r(z[d]+m/2,0,O),size:m};u._input[_]=u[_]=I,y=w._histogramBinOpts[u["_"+l+"bingroup"]],y&&x.extendFlat(y,I)}return p[_]}function c(v,p){for(var T=p.xaxis,l=p.yaxis,_=p.orientation,w=[],S=v._fullData,E=0;E<S.length;E++){var m=S[E];m.type==="histogram"&&m.visible===!0&&m.orientation===_&&m.xaxis===T&&m.yaxis===l&&w.push(m)}return w}function h(v,p,T){var l,_,w;function S(m){w=v[m],v[m]/=2}function E(m){_=v[m],v[m]=w+_/2,w+=_}if(T==="half")if(p==="increasing")for(S(0),l=1;l<v.length;l++)E(l);else for(S(v.length-1),l=v.length-2;l>=0;l--)E(l);else if(p==="increasing"){for(l=1;l<v.length;l++)v[l]+=v[l-1];T==="exclude"&&(v.unshift(0),v.pop())}else{for(l=v.length-2;l>=0;l--)v[l]+=v[l+1];T==="exclude"&&(v.push(0),v.shift())}}H.exports={calc:i,calcAllAutoBins:n}}}),$B=Ye({"src/traces/histogram2d/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=eM(),M=tM(),e=rM(),t=aM(),r=iM().calcAllAutoBins;H.exports=function(s,c){var h=x.getFromId(s,c.xaxis),v=x.getFromId(s,c.yaxis),p=c.xcalendar,T=c.ycalendar,l=function(Fe){return h.r2c(Fe,0,p)},_=function(Fe){return v.r2c(Fe,0,T)},w=function(Fe){return h.c2r(Fe,0,p)},S=function(Fe){return v.c2r(Fe,0,T)},E,m,b,d,u=r(s,c,h,"x"),y=u[0],f=u[1],P=r(s,c,v,"y"),L=P[0],z=P[1],F=c._length;f.length>F&&f.splice(F,f.length-F),z.length>F&&z.splice(F,z.length-F);var B=[],O=[],I=[],N=typeof y.size=="string",U=typeof L.size=="string",W=[],Q=[],ue=N?W:y,se=U?Q:L,he=0,G=[],$=[],J=c.histnorm,Z=c.histfunc,re=J.indexOf("density")!==-1,ne=Z==="max"||Z==="min",j=ne?null:0,ee=A.count,ie=M[J],fe=!1,be=[],Ae=[],Be="z"in c?c.z:"marker"in c&&Array.isArray(c.marker.color)?c.marker.color:"";Be&&Z!=="count"&&(fe=Z==="avg",ee=A[Z]);var Ie=y.size,Ze=l(y.start),at=l(y.end)+(Ze-x.tickIncrement(Ze,Ie,!1,p))/1e6;for(E=Ze;E<at;E=x.tickIncrement(E,Ie,!1,p))O.push(j),W.push(E),fe&&I.push(0);W.push(E);var it=O.length,et=(E-Ze)/it,lt=w(Ze+et/2),Me=L.size,ge=_(L.start),ce=_(L.end)+(ge-x.tickIncrement(ge,Me,!1,T))/1e6;for(E=ge;E<ce;E=x.tickIncrement(E,Me,!1,T)){B.push(O.slice()),Q.push(E);var ze=new Array(it);for(m=0;m<it;m++)ze[m]=[];$.push(ze),fe&&G.push(I.slice())}Q.push(E);var tt=B.length,nt=(E-ge)/tt,Qe=S(ge+nt/2);re&&(be=o(O.length,ue,et,N),Ae=o(B.length,se,nt,U)),!N&&h.type==="date"&&(ue=a(l,ue)),!U&&v.type==="date"&&(se=a(_,se));var Ct=!0,St=!0,Ot=new Array(it),jt=new Array(tt),ur=1/0,ar=1/0,Cr=1/0,vr=1/0;for(E=0;E<F;E++){var _r=f[E],yt=z[E];b=g.findBin(_r,ue),d=g.findBin(yt,se),b>=0&&b<it&&d>=0&&d<tt&&(he+=ee(b,E,B[d],Be,G[d]),$[d][b].push(E),Ct&&(Ot[b]===void 0?Ot[b]=_r:Ot[b]!==_r&&(Ct=!1)),St&&(jt[d]===void 0?jt[d]=yt:jt[d]!==yt&&(St=!1)),ur=Math.min(ur,_r-W[b]),ar=Math.min(ar,W[b+1]-_r),Cr=Math.min(Cr,yt-Q[d]),vr=Math.min(vr,Q[d+1]-yt))}if(fe)for(d=0;d<tt;d++)he+=e(B[d],G[d]);if(ie)for(d=0;d<tt;d++)ie(B[d],he,be,Ae[d]);return{x:f,xRanges:i(W,Ct&&Ot,ur,ar,h,p),x0:lt,dx:et,y:z,yRanges:i(Q,St&&jt,Cr,vr,v,T),y0:Qe,dy:nt,z:B,pts:$}};function o(n,s,c,h){var v=new Array(n),p;if(h)for(p=0;p<n;p++)v[p]=1/(s[p+1]-s[p]);else{var T=1/c;for(p=0;p<n;p++)v[p]=T}return v}function a(n,s){return{start:n(s.start),end:n(s.end),size:s.size}}function i(n,s,c,h,v,p){var T,l=n.length-1,_=new Array(l),w=t(c,h,n,v,p);for(T=0;T<l;T++){var S=(s||[])[T];_[T]=S===void 0?[w(n[T]),w(n[T+1],!0)]:[S,S]}return _}}}),Z2=Ye({"src/traces/heatmap/convert_column_xyz.js"(X,H){"use strict";var g=ta(),x=ks().BADNUM,A=tv();H.exports=function(e,t,r,o,a,i){var n=e._length,s=t.makeCalcdata(e,o),c=r.makeCalcdata(e,a);s=A(e,t,o,s).vals,c=A(e,r,a,c).vals;var h=e.text,v=h!==void 0&&g.isArray1D(h),p=e.hovertext,T=p!==void 0&&g.isArray1D(p),l,_,w=g.distinctVals(s),S=w.vals,E=g.distinctVals(c),m=E.vals,b=[],d,u,y=m.length,f=S.length;for(l=0;l<i.length;l++)b[l]=g.init2dArray(y,f);v&&(d=g.init2dArray(y,f)),T&&(u=g.init2dArray(y,f));var P=g.init2dArray(y,f);for(l=0;l<n;l++)if(s[l]!==x&&c[l]!==x){var L=g.findBin(s[l]+w.minDiff/2,S),z=g.findBin(c[l]+E.minDiff/2,m);for(_=0;_<i.length;_++){var F=i[_],B=e[F],O=b[_];O[z][L]=B[l],P[z][L]=l}v&&(d[z][L]=h[l]),T&&(u[z][L]=p[l])}for(e["_"+o]=S,e["_"+a]=m,_=0;_<i.length;_++)e["_"+i[_]]=b[_];v&&(e._text=d),T&&(e._hovertext=u),t&&t.type==="category"&&(e["_"+o+"CategoryMap"]=S.map(function(I){return t._categories[I]})),r&&r.type==="category"&&(e["_"+a+"CategoryMap"]=m.map(function(I){return r._categories[I]})),e._after2before=P}}}),X2=Ye({"src/traces/heatmap/clean_2d_array.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM;H.exports=function(e,t,r,o){var a,i,n,s,c,h;function v(S){if(g(S))return+S}if(t&&t.transpose){for(a=0,c=0;c<e.length;c++)a=Math.max(a,e[c].length);if(a===0)return!1;n=function(S){return S.length},s=function(S,E,m){return(S[m]||[])[E]}}else a=e.length,n=function(S,E){return S[E].length},s=function(S,E,m){return(S[E]||[])[m]};var p=function(S,E,m){return E===A||m===A?A:s(S,E,m)};function T(S){if(t&&t.type!=="carpet"&&t.type!=="contourcarpet"&&S&&S.type==="category"&&t["_"+S._id.charAt(0)].length){var E=S._id.charAt(0),m={},b=t["_"+E+"CategoryMap"]||t[E];for(c=0;c<b.length;c++)m[b[c]]=c;return function(d){var u=m[S._categories[d]];return u+1?u:A}}else return x.identity}var l=T(r),_=T(o);o&&o.type==="category"&&(a=o._categories.length);var w=new Array(a);for(c=0;c<a;c++)for(r&&r.type==="category"?i=r._categories.length:i=n(e,c),w[c]=new Array(i),h=0;h<i;h++)w[c][h]=v(p(e,_(c),l(h)));return w}}}),Y2=Ye({"src/traces/heatmap/interp2d.js"(X,H){"use strict";var g=ta(),x=.01,A=[[-1,0],[1,0],[0,-1],[0,1]];function M(t){return .5-.25*Math.min(1,t*.5)}H.exports=function(r,o){var a=1,i;for(e(r,o),i=0;i<o.length&&!(o[i][2]<4);i++);for(o=o.slice(i),i=0;i<100&&a>x;i++)a=e(r,o,M(a));return a>x&&g.log("interp2d didn't converge quickly",a),r};function e(t,r,o){var a=0,i,n,s,c,h,v,p,T,l,_,w,S,E;for(c=0;c<r.length;c++){for(i=r[c],n=i[0],s=i[1],w=t[n][s],_=0,l=0,h=0;h<4;h++)v=A[h],p=t[n+v[0]],p&&(T=p[s+v[1]],T!==void 0&&(_===0?S=E=T:(S=Math.min(S,T),E=Math.max(E,T)),l++,_+=T));if(l===0)throw"iterateInterp2d order is wrong: no defined neighbors";t[n][s]=_/l,w===void 0?l<4&&(a=1):(t[n][s]=(1+o)*t[n][s]-o*w,E>S&&(a=Math.max(a,Math.abs(t[n][s]-w)/(E-S))))}return a}}}),K2=Ye({"src/traces/heatmap/find_empties.js"(X,H){"use strict";var g=ta().maxRowLength;H.exports=function(A){var M=[],e={},t=[],r=A[0],o=[],a=[0,0,0],i=g(A),n,s,c,h,v,p,T,l;for(s=0;s<A.length;s++)for(n=o,o=r,r=A[s+1]||[],c=0;c<i;c++)o[c]===void 0&&(p=(o[c-1]!==void 0?1:0)+(o[c+1]!==void 0?1:0)+(n[c]!==void 0?1:0)+(r[c]!==void 0?1:0),p?(s===0&&p++,c===0&&p++,s===A.length-1&&p++,c===o.length-1&&p++,p<4&&(e[[s,c]]=[s,c,p]),M.push([s,c,p])):t.push([s,c]));for(;t.length;){for(T={},l=!1,v=t.length-1;v>=0;v--)h=t[v],s=h[0],c=h[1],p=((e[[s-1,c]]||a)[2]+(e[[s+1,c]]||a)[2]+(e[[s,c-1]]||a)[2]+(e[[s,c+1]]||a)[2])/20,p&&(T[h]=[s,c,p],t.splice(v,1),l=!0);if(!l)throw"findEmpties iterated with no new neighbors";for(h in T)e[h]=T[h],M.push(T[h])}return M.sort(function(_,w){return w[2]-_[2]})}}}),nM=Ye({"src/traces/heatmap/make_bound_array.js"(X,H){"use strict";var g=Hn(),x=ta().isArrayOrTypedArray;H.exports=function(M,e,t,r,o,a){var i=[],n=g.traceIs(M,"contour"),s=g.traceIs(M,"histogram"),c,h,v,p=x(e)&&e.length>1;if(p&&!s&&a.type!=="category"){var T=e.length;if(T<=o){if(n)i=Array.from(e).slice(0,o);else if(o===1)a.type==="log"?i=[.5*e[0],2*e[0]]:i=[e[0]-.5,e[0]+.5];else if(a.type==="log"){for(i=[Math.pow(e[0],1.5)/Math.pow(e[1],.5)],v=1;v<T;v++)i.push(Math.sqrt(e[v-1]*e[v]));i.push(Math.pow(e[T-1],1.5)/Math.pow(e[T-2],.5))}else{for(i=[1.5*e[0]-.5*e[1]],v=1;v<T;v++)i.push((e[v-1]+e[v])*.5);i.push(1.5*e[T-1]-.5*e[T-2])}if(T<o){var l=i[i.length-1],_;if(a.type==="log")for(_=l/i[i.length-2],v=T;v<o;v++)l*=_,i.push(l);else for(_=l-i[i.length-2],v=T;v<o;v++)l+=_,i.push(l)}}else return n?e.slice(0,o):e.slice(0,o+1)}else{var w=M[a._id.charAt(0)+"calendar"];if(s)c=a.r2c(t,0,w);else if(x(e)&&e.length===1)c=e[0];else if(t===void 0)c=0;else{var S=a.type==="log"?a.d2c:a.r2c;c=S(t,0,w)}for(h=r||1,v=n?0:-.5;v<o;v++)i.push(c+h*v)}return i}}}),J2=Ye({"src/traces/heatmap/calc.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Co(),M=tv(),e=$B(),t=jp(),r=Z2(),o=X2(),a=Y2(),i=K2(),n=nM(),s=ks().BADNUM;H.exports=function(p,T){var l=A.getFromId(p,T.xaxis||"x"),_=A.getFromId(p,T.yaxis||"y"),w=g.traceIs(T,"contour"),S=g.traceIs(T,"histogram"),E=w?"best":T.zsmooth,m,b,d,u,y,f,P,L,z,F,B;if(l._minDtick=0,_._minDtick=0,S)B=e(p,T),u=B.orig_x,m=B.x,b=B.x0,d=B.dx,L=B.orig_y,y=B.y,f=B.y0,P=B.dy,z=B.z;else{var O=T.z;x.isArray1D(O)?(r(T,l,_,"x","y",["z"]),m=T._x,y=T._y,O=T._z):(u=T.x?l.makeCalcdata(T,"x"):[],L=T.y?_.makeCalcdata(T,"y"):[],m=M(T,l,"x",u).vals,y=M(T,_,"y",L).vals,T._x=m,T._y=y),b=T.x0,d=T.dx,f=T.y0,P=T.dy,z=o(O,T,l,_)}(l.rangebreaks||_.rangebreaks)&&(z=h(m,y,z),S||(m=c(m),y=c(y),T._x=m,T._y=y)),!S&&(w||T.connectgaps)&&(T._emptypoints=i(z),a(z,T._emptypoints));function I($){E=T._input.zsmooth=T.zsmooth=!1,x.warn('cannot use zsmooth: "fast": '+$)}function N($){if($.length>1){var J=($[$.length-1]-$[0])/($.length-1),Z=Math.abs(J/100);for(F=0;F<$.length-1;F++)if(Math.abs($[F+1]-$[F]-J)>Z)return!1}return!0}T._islinear=!1,l.type==="log"||_.type==="log"?E==="fast"&&I("log axis found"):N(m)?N(y)?T._islinear=!0:E==="fast"&&I("y scale is not linear"):E==="fast"&&I("x scale is not linear");var U=x.maxRowLength(z),W=T.xtype==="scaled"?"":m,Q=n(T,W,b,d,U,l),ue=T.ytype==="scaled"?"":y,se=n(T,ue,f,P,z.length,_);T._extremes[l._id]=A.findExtremes(l,Q),T._extremes[_._id]=A.findExtremes(_,se);var he={x:Q,y:se,z,text:T._text||T.text,hovertext:T._hovertext||T.hovertext};if(T.xperiodalignment&&u&&(he.orig_x=u),T.yperiodalignment&&L&&(he.orig_y=L),W&&W.length===Q.length-1&&(he.xCenter=W),ue&&ue.length===se.length-1&&(he.yCenter=ue),S&&(he.xRanges=B.xRanges,he.yRanges=B.yRanges,he.pts=B.pts),w||t(p,T,{vals:z,cLetter:"z"}),w&&T.contours&&T.contours.coloring==="heatmap"){var G={type:T.type==="contour"?"heatmap":"histogram2d",xcalendar:T.xcalendar,ycalendar:T.ycalendar};he.xfill=n(G,W,b,d,U,l),he.yfill=n(G,ue,f,P,z.length,_)}return[he]};function c(v){for(var p=[],T=v.length,l=0;l<T;l++){var _=v[l];_!==s&&p.push(_)}return p}function h(v,p,T){for(var l=[],_=-1,w=0;w<T.length;w++)if(p[w]!==s){_++,l[_]=[];for(var S=0;S<T[w].length;S++)v[S]!==s&&l[_].push(T[w][S])}return l}}}),$2=Ye({"src/constants/pixelated_image.js"(X){"use strict";X.CSS_DECLARATIONS=[["image-rendering","optimizeSpeed"],["image-rendering","-moz-crisp-edges"],["image-rendering","-o-crisp-edges"],["image-rendering","-webkit-optimize-contrast"],["image-rendering","optimize-contrast"],["image-rendering","crisp-edges"],["image-rendering","pixelated"]],X.STYLE=X.CSS_DECLARATIONS.map(function(H){return H.join(": ")+"; "}).join("")}}),oM=Ye({"src/lib/supports_pixelated_image.js"(X,H){"use strict";var g=$2(),x=Bo(),A=ta(),M=null;function e(){if(M!==null)return M;M=!1;var t=A.isSafari()||A.isIOS();if(window.navigator.userAgent&&!t){var r=Array.from(g.CSS_DECLARATIONS).reverse(),o=window.CSS&&window.CSS.supports||window.supportsCSS;if(typeof o=="function")M=r.some(function(s){return o.apply(null,s)});else{var a=x.tester.append("image").attr("style",g.STYLE),i=window.getComputedStyle(a.node()),n=i.imageRendering;M=r.some(function(s){var c=s[1];return n===c||n===c.toLowerCase()}),a.remove()}}return M}H.exports=e}}),Q2=Ye({"src/traces/heatmap/plot.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=Bo(),e=Co(),t=ta(),r=jl(),o=L2(),a=Fn(),i=Su().extractOpts,n=Su().makeColorScaleFuncFromTrace,s=vd(),c=oh(),h=c.LINE_SPACING,v=oM(),p=$2().STYLE,T="heatmap-label";function l(m){return m.selectAll("g."+T)}function _(m){l(m).remove()}H.exports=function(m,b,d,u){var y=b.xaxis,f=b.yaxis;t.makeTraceGroups(u,d,"hm").each(function(P){var L=g.select(this),z=P[0],F=z.trace,B=F.xgap||0,O=F.ygap||0,I=z.z,N=z.x,U=z.y,W=z.xCenter,Q=z.yCenter,ue=A.traceIs(F,"contour"),se=ue?"best":F.zsmooth,he=I.length,G=t.maxRowLength(I),$=!1,J=!1,Z,re,ne,j,ee,ie,fe,be;for(ie=0;Z===void 0&&ie<N.length-1;)Z=y.c2p(N[ie]),ie++;for(ie=N.length-1;re===void 0&&ie>0;)re=y.c2p(N[ie]),ie--;for(re<Z&&(ne=re,re=Z,Z=ne,$=!0),ie=0;j===void 0&&ie<U.length-1;)j=f.c2p(U[ie]),ie++;for(ie=U.length-1;ee===void 0&&ie>0;)ee=f.c2p(U[ie]),ie--;ee<j&&(ne=j,j=ee,ee=ne,J=!0),ue&&(W=N,Q=U,N=z.xfill,U=z.yfill);var Ae="default";if(se?Ae=se==="best"?"smooth":"fast":F._islinear&&B===0&&O===0&&v()&&(Ae="fast"),Ae!=="fast"){var Be=se==="best"?0:.5;Z=Math.max(-Be*y._length,Z),re=Math.min((1+Be)*y._length,re),j=Math.max(-Be*f._length,j),ee=Math.min((1+Be)*f._length,ee)}var Ie=Math.round(re-Z),Ze=Math.round(ee-j),at=Z>=y._length||re<=0||j>=f._length||ee<=0;if(at){var it=L.selectAll("image").data([]);it.exit().remove(),_(L);return}var et,lt;Ae==="fast"?(et=G,lt=he):(et=Ie,lt=Ze);var Me=document.createElement("canvas");Me.width=et,Me.height=lt;var ge=Me.getContext("2d",{willReadFrequently:!0}),ce=n(F,{noNumericCheck:!0,returnArray:!0}),ze,tt;Ae==="fast"?(ze=$?function(Sa){return G-1-Sa}:t.identity,tt=J?function(Sa){return he-1-Sa}:t.identity):(ze=function(Sa){return t.constrain(Math.round(y.c2p(N[Sa])-Z),0,Ie)},tt=function(Sa){return t.constrain(Math.round(f.c2p(U[Sa])-j),0,Ze)});var nt=tt(0),Qe=[nt,nt],Ct=$?0:1,St=J?0:1,Ot=0,jt=0,ur=0,ar=0,Cr,vr,_r,yt,Fe;function Ke(Sa,Ti){if(Sa!==void 0){var ai=ce(Sa);return ai[0]=Math.round(ai[0]),ai[1]=Math.round(ai[1]),ai[2]=Math.round(ai[2]),Ot+=Ti,jt+=ai[0]*Ti,ur+=ai[1]*Ti,ar+=ai[2]*Ti,ai}return[0,0,0,0]}function Ne(Sa,Ti,ai,an){var sn=Sa[ai.bin0];if(sn===void 0)return Ke(void 0,1);var Mn=Sa[ai.bin1],On=Ti[ai.bin0],$n=Ti[ai.bin1],Cn=Mn-sn||0,Lo=On-sn||0,Xi;return Mn===void 0?$n===void 0?Xi=0:On===void 0?Xi=2*($n-sn):Xi=(2*$n-On-sn)*2/3:$n===void 0?On===void 0?Xi=0:Xi=(2*sn-Mn-On)*2/3:On===void 0?Xi=(2*$n-Mn-sn)*2/3:Xi=$n+sn-Mn-On,Ke(sn+ai.frac*Cn+an.frac*(Lo+ai.frac*Xi))}if(Ae!=="default"){var Ee=0,Ve;try{Ve=new Uint8Array(et*lt*4)}catch{Ve=new Array(et*lt*4)}if(Ae==="smooth"){var ke=W||N,Te=Q||U,Le=new Array(ke.length),rt=new Array(Te.length),dt=new Array(Ie),xt=W?S:w,It=Q?S:w,Bt,Gt,Kt;for(ie=0;ie<ke.length;ie++)Le[ie]=Math.round(y.c2p(ke[ie])-Z);for(ie=0;ie<Te.length;ie++)rt[ie]=Math.round(f.c2p(Te[ie])-j);for(ie=0;ie<Ie;ie++)dt[ie]=xt(ie,Le);for(fe=0;fe<Ze;fe++)for(Bt=It(fe,rt),Gt=I[Bt.bin0],Kt=I[Bt.bin1],ie=0;ie<Ie;ie++,Ee+=4)Fe=Ne(Gt,Kt,dt[ie],Bt),E(Ve,Ee,Fe)}else for(fe=0;fe<he;fe++)for(yt=I[fe],Qe=tt(fe),ie=0;ie<G;ie++)Fe=Ke(yt[ie],1),Ee=(Qe*G+ze(ie))*4,E(Ve,Ee,Fe);var sr=ge.createImageData(et,lt);try{sr.data.set(Ve)}catch{var sa=sr.data,Aa=sa.length;for(fe=0;fe<Aa;fe++)sa[fe]=Ve[fe]}ge.putImageData(sr,0,0)}else{var La=Math.floor(B/2),ka=Math.floor(O/2);for(fe=0;fe<he;fe++)if(yt=I[fe],Qe.reverse(),Qe[St]=tt(fe+1),!(Qe[0]===Qe[1]||Qe[0]===void 0||Qe[1]===void 0))for(vr=ze(0),Cr=[vr,vr],ie=0;ie<G;ie++)Cr.reverse(),Cr[Ct]=ze(ie+1),!(Cr[0]===Cr[1]||Cr[0]===void 0||Cr[1]===void 0)&&(_r=yt[ie],Fe=Ke(_r,(Cr[1]-Cr[0])*(Qe[1]-Qe[0])),ge.fillStyle="rgba("+Fe.join(",")+")",ge.fillRect(Cr[0]+La,Qe[0]+ka,Cr[1]-Cr[0]-B,Qe[1]-Qe[0]-O))}jt=Math.round(jt/Ot),ur=Math.round(ur/Ot),ar=Math.round(ar/Ot);var Ga=x("rgb("+jt+","+ur+","+ar+")");m._hmpixcount=(m._hmpixcount||0)+Ot,m._hmlumcount=(m._hmlumcount||0)+Ot*Ga.getLuminance();var Ma=L.selectAll("image").data(P);Ma.enter().append("svg:image").attr({xmlns:s.svg,preserveAspectRatio:"none"}),Ma.attr({height:Ze,width:Ie,x:Z,y:j,"xlink:href":Me.toDataURL("image/png")}),Ae==="fast"&&!se&&Ma.attr("style",p),_(L);var Ua=F.texttemplate;if(Ua){var ni=i(F),Wt={type:"linear",range:[ni.min,ni.max],_separators:y._separators,_numFormat:y._numFormat},zt=F.type==="histogram2dcontour",Vt=F.type==="contour",Ut=Vt?1:0,xr=Vt?he-1:he,Zr=Vt?1:0,pa=Vt?G-1:G,Xr=[];for(ie=Ut;ie<xr;ie++){var Ea;if(Vt)Ea=z.y[ie];else if(zt){if(ie===0||ie===he-1)continue;Ea=z.y[ie]}else if(z.yCenter)Ea=z.yCenter[ie];else{if(ie+1===he&&z.y[ie+1]===void 0)continue;Ea=(z.y[ie]+z.y[ie+1])/2}var Fa=Math.round(f.c2p(Ea));if(!(0>Fa||Fa>f._length))for(fe=Zr;fe<pa;fe++){var qa;if(Vt)qa=z.x[fe];else if(zt){if(fe===0||fe===G-1)continue;qa=z.x[fe]}else if(z.xCenter)qa=z.xCenter[fe];else{if(fe+1===G&&z.x[fe+1]===void 0)continue;qa=(z.x[fe]+z.x[fe+1])/2}var ya=Math.round(y.c2p(qa));if(!(0>ya||ya>y._length)){var $a=o({x:qa,y:Ea},F,m._fullLayout);$a.x=qa,$a.y=Ea;var mt=z.z[ie][fe];mt===void 0?($a.z="",$a.zLabel=""):($a.z=mt,$a.zLabel=e.tickText(Wt,mt,"hover").text);var gt=z.text&&z.text[ie]&&z.text[ie][fe];(gt===void 0||gt===!1)&&(gt=""),$a.text=gt;var Er=t.texttemplateString(Ua,$a,m._fullLayout._d3locale,$a,F._meta||{});if(Er){var kr=Er.split("<br>"),br=kr.length,Tr=0;for(be=0;be<br;be++)Tr=Math.max(Tr,kr[be].length);Xr.push({l:br,c:Tr,t:Er,x:ya,y:Fa,z:mt})}}}}var Mr=F.textfont,Fr=Mr.size,Lr=m._fullLayout.font.size;if(!Fr||Fr==="auto"){var Jr=1/0,oa=1/0,ca=0,kt=0;for(be=0;be<Xr.length;be++){var ir=Xr[be];if(ca=Math.max(ca,ir.l),kt=Math.max(kt,ir.c),be<Xr.length-1){var mr=Xr[be+1],$r=Math.abs(mr.x-ir.x),ma=Math.abs(mr.y-ir.y);$r&&(Jr=Math.min(Jr,$r)),ma&&(oa=Math.min(oa,ma))}}!isFinite(Jr)||!isFinite(oa)?Fr=Lr:(Jr-=B,oa-=O,Jr/=kt,oa/=ca,Jr/=h/2,oa/=h,Fr=Math.min(Math.floor(Jr),Math.floor(oa),Lr))}if(Fr<=0||!isFinite(Fr))return;var Ba=function(Sa){return Sa.x},Ca=function(Sa){return Sa.y-Fr*(Sa.l*h/2-1)},da=l(L).data(Xr);da.enter().append("g").classed(T,1).append("text").attr("text-anchor","middle").each(function(Sa){var Ti=g.select(this),ai=Mr.color;(!ai||ai==="auto")&&(ai=a.contrast(Sa.z===void 0?m._fullLayout.plot_bgcolor:"rgba("+ce(Sa.z).join()+")")),Ti.attr("data-notex",1).call(r.positionText,Ba(Sa),Ca(Sa)).call(M.font,{family:Mr.family,size:Fr,color:ai,weight:Mr.weight,style:Mr.style,variant:Mr.variant,textcase:Mr.textcase,lineposition:Mr.lineposition,shadow:Mr.shadow}).text(Sa.t).call(r.convertToTspans,m)})}})};function w(m,b){var d=b.length-2,u=t.constrain(t.findBin(m,b),0,d),y=b[u],f=b[u+1],P=t.constrain(u+(m-y)/(f-y)-.5,0,d),L=Math.round(P),z=Math.abs(P-L);return!P||P===d||!z?{bin0:L,bin1:L,frac:0}:{bin0:L,frac:z,bin1:Math.round(L+z/(P-L))}}function S(m,b){var d=b.length-1,u=t.constrain(t.findBin(m,b),0,d),y=b[u],f=b[u+1],P=(m-y)/(f-y)||0;return P<=0?{bin0:u,bin1:u,frac:0}:P<.5?{bin0:u,bin1:u+1,frac:P}:{bin0:u+1,bin1:u,frac:1-P}}function E(m,b,d){m[b]=d[0],m[b+1]=d[1],m[b+2]=d[2],m[b+3]=Math.round(d[3]*255)}}}),ag=Ye({"src/traces/heatmap/colorbar.js"(X,H){"use strict";H.exports={min:"zmin",max:"zmax"}}}),e3=Ye({"src/traces/heatmap/style.js"(X,H){"use strict";var g=_n();H.exports=function(A){g.select(A).selectAll(".hm image").style("opacity",function(M){return M.trace.opacity})}}}),t3=Ye({"src/traces/heatmap/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=x.isArrayOrTypedArray,M=Co(),e=Su().extractOpts;H.exports=function(r,o,a,i,n){n||(n={});var s=n.isContour,c=r.cd[0],h=c.trace,v=r.xa,p=r.ya,T=c.x,l=c.y,_=c.z,w=c.xCenter,S=c.yCenter,E=c.zmask,m=h.zhoverformat,b=T,d=l,u,y,f,P;if(r.index!==!1){try{f=Math.round(r.index[1]),P=Math.round(r.index[0])}catch{x.error("Error hovering on heatmap, pointNumber must be [row,col], found:",r.index);return}if(f<0||f>=_[0].length||P<0||P>_.length)return}else{if(g.inbox(o-T[0],o-T[T.length-1],0)>0||g.inbox(a-l[0],a-l[l.length-1],0)>0)return;if(s){var L;for(b=[2*T[0]-T[1]],L=1;L<T.length;L++)b.push((T[L]+T[L-1])/2);for(b.push([2*T[T.length-1]-T[T.length-2]]),d=[2*l[0]-l[1]],L=1;L<l.length;L++)d.push((l[L]+l[L-1])/2);d.push([2*l[l.length-1]-l[l.length-2]])}f=Math.max(0,Math.min(b.length-2,x.findBin(o,b))),P=Math.max(0,Math.min(d.length-2,x.findBin(a,d)))}var z=v.c2p(T[f]),F=v.c2p(T[f+1]),B=p.c2p(l[P]),O=p.c2p(l[P+1]),I,N;s?(I=c.orig_x||T,N=c.orig_y||l,F=z,u=I[f],O=B,y=N[P]):(I=c.orig_x||w||T,N=c.orig_y||S||l,u=w?I[f]:(I[f]+I[f+1])/2,y=S?N[P]:(N[P]+N[P+1])/2,v&&v.type==="category"&&(u=T[f]),p&&p.type==="category"&&(y=l[P]),h.zsmooth&&(z=F=v.c2p(u),B=O=p.c2p(y)));var U=_[P][f];if(E&&!E[P][f]&&(U=void 0),!(U===void 0&&!h.hoverongaps)){var W;A(c.hovertext)&&A(c.hovertext[P])?W=c.hovertext[P][f]:A(c.text)&&A(c.text[P])&&(W=c.text[P][f]);var Q=e(h),ue={type:"linear",range:[Q.min,Q.max],hoverformat:m,_separators:v._separators,_numFormat:v._numFormat},se=M.tickText(ue,U,"hover").text;return[x.extendFlat(r,{index:h._after2before?h._after2before[P][f]:[P,f],distance:r.maxHoverDistance,spikeDistance:r.maxSpikeDistance,x0:z,x1:F,y0:B,y1:O,xLabelVal:u,yLabelVal:y,zLabelVal:U,zLabel:se,text:W})]}}}}),QB=Ye({"src/traces/heatmap/index.js"(X,H){"use strict";H.exports={attributes:h1(),supplyDefaults:JB(),calc:J2(),plot:Q2(),colorbar:ag(),style:e3(),hoverPoints:t3(),moduleType:"trace",name:"heatmap",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","showLegend"],meta:{}}}}),e7=Ye({"lib/heatmap.js"(X,H){"use strict";H.exports=QB()}}),sM=Ye({"src/traces/histogram/bin_attributes.js"(X,H){"use strict";H.exports=function(x,A){return{start:{valType:"any",editType:"calc"},end:{valType:"any",editType:"calc"},size:{valType:"any",editType:"calc"},editType:"calc"}}}}),t7=Ye({"src/traces/histogram/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["binNumber"]}}}),r3=Ye({"src/traces/histogram/attributes.js"(X,H){"use strict";var g=Sv(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=xs().texttemplateAttrs,e=Au(),t=sM(),r=t7(),o=Oo().extendFlat;H.exports={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},xhoverformat:x("x"),yhoverformat:x("y"),text:o({},g.text,{}),hovertext:o({},g.hovertext,{}),orientation:g.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:t("x",!0),nbinsy:{valType:"integer",min:0,dflt:0,editType:"calc"},ybins:t("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:r.eventDataKeys}),texttemplate:M({arrayOk:!1,editType:"plot"},{keys:["label","value"]}),textposition:o({},g.textposition,{arrayOk:!1}),textfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),outsidetextfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextfont:e({arrayOk:!1,editType:"plot",colorEditType:"style"}),insidetextanchor:g.insidetextanchor,textangle:g.textangle,cliponaxis:g.cliponaxis,constraintext:g.constraintext,marker:g.marker,offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:g.selected,unselected:g.unselected,zorder:g.zorder}}}),r7=Ye({"src/traces/histogram/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=Fn(),M=gd().handleText,e=U2(),t=r3();H.exports=function(o,a,i,n){function s(d,u){return x.coerce(o,a,t,d,u)}var c=s("x"),h=s("y"),v=s("cumulative.enabled");v&&(s("cumulative.direction"),s("cumulative.currentbin")),s("text");var p=s("textposition");M(o,a,n,s,p,{moduleHasSelected:!0,moduleHasUnselected:!0,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s("hovertext"),s("hovertemplate"),s("xhoverformat"),s("yhoverformat");var T=s("orientation",h&&!c?"h":"v"),l=T==="v"?"x":"y",_=T==="v"?"y":"x",w=c&&h?Math.min(x.minRowLength(c)&&x.minRowLength(h)):x.minRowLength(a[l]||[]);if(!w){a.visible=!1;return}a._length=w;var S=g.getComponentMethod("calendars","handleTraceDefaults");S(o,a,["x","y"],n);var E=a[_];E&&s("histfunc"),s("histnorm"),s("autobin"+l),e(o,a,s,i,n),x.coerceSelectionMarkerOpacity(a,s);var m=(a.marker.line||{}).color,b=g.getComponentMethod("errorbars","supplyDefaults");b(o,a,m||A.defaultLine,{axis:"y"}),b(o,a,m||A.defaultLine,{axis:"x",inherit:"y"}),s("zorder")}}}),a3=Ye({"src/traces/histogram/cross_trace_defaults.js"(X,H){"use strict";var g=ta(),x=Xc(),A=Hn().traceIs,M=Jg(),e=gd().validateCornerradius,t=g.nestedProperty,r=Yg().getAxisGroup,o=[{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"}],a=["x","y"];H.exports=function(n,s){var c=s._histogramBinOpts={},h=[],v={},p=[],T,l,_,w,S,E,m;function b(se,he){return g.coerce(T._input,T,T._module.attributes,se,he)}function d(se){return se.orientation==="v"?"x":"y"}function u(se,he){var G=x.getFromTrace({_fullLayout:s},se,he);return G.type}function y(se,he,G){var $=se.uid+"__"+G;he||(he=$);var J=u(se,G),Z=se[G+"calendar"]||"",re=c[he],ne=!0;re&&(J===re.axType&&Z===re.calendar?(ne=!1,re.traces.push(se),re.dirs.push(G)):(he=$,J!==re.axType&&g.warn(["Attempted to group the bins of trace",se.index,"set on a","type:"+J,"axis","with bins on","type:"+re.axType,"axis."].join(" ")),Z!==re.calendar&&g.warn(["Attempted to group the bins of trace",se.index,"set with a",Z,"calendar","with bins",re.calendar?"on a "+re.calendar+" calendar":"w/o a set calendar"].join(" ")))),ne&&(c[he]={traces:[se],dirs:[G],axType:J,calendar:se[G+"calendar"]||""}),se["_"+G+"bingroup"]=he}for(S=0;S<n.length;S++)if(T=n[S],A(T,"histogram")){if(h.push(T),delete T._xautoBinFinished,delete T._yautoBinFinished,T.type==="histogram"){var f=b("marker.cornerradius",s.barcornerradius);T.marker&&(T.marker.cornerradius=e(f))}A(T,"2dMap")||M(T._input,T,s,b,s.barmode)}var P=s._alignmentOpts||{};for(S=0;S<h.length;S++){if(T=h[S],_="",!A(T,"2dMap")){if(w=d(T),s.barmode==="group"&&T.alignmentgroup){var L=T[w+"axis"],z=r(s,L)+T.orientation;(P[z]||{})[T.alignmentgroup]&&(_=z)}!_&&s.barmode!=="overlay"&&(_=r(s,T.xaxis)+r(s,T.yaxis)+d(T))}_?(v[_]||(v[_]=[]),v[_].push(T)):p.push(T)}for(_ in v){if(l=v[_],l.length===1){p.push(l[0]);continue}var F=!1;for(l.length&&(T=l[0],F=b("bingroup")),_=F||_,S=0;S<l.length;S++){T=l[S];var B=T._input.bingroup;B&&B!==_&&g.warn(["Trace",T.index,"must match","within bingroup",_+".","Ignoring its bingroup:",B,"setting."].join(" ")),T.bingroup=_,y(T,_,d(T))}}for(S=0;S<p.length;S++){T=p[S];var O=b("bingroup");if(A(T,"2dMap"))for(m=0;m<2;m++){w=a[m];var I=b(w+"bingroup",O?O+"__"+w:null);y(T,I,w)}else y(T,O,d(T))}for(_ in c){var N=c[_];for(l=N.traces,E=0;E<o.length;E++){var U=o[E],W=U.name,Q,ue;if(!(W==="nbins"&&N.sizeFound)){for(S=0;S<l.length;S++){if(T=l[S],w=N.dirs[S],Q=U.aStr[w],t(T._input,Q).get()!==void 0){N[W]=b(Q),N[W+"Found"]=!0;break}ue=(T._autoBin||{})[w]||{},ue[W]&&t(T,Q).set(ue[W])}if(W==="start"||W==="end")for(;S<l.length;S++)T=l[S],T["_"+w+"bingroup"]&&(ue=(T._autoBin||{})[w]||{},b(Q,ue[W]));W==="nbins"&&!N.sizeFound&&!N.nbinsFound&&(T=l[0],N[W]=b(Q))}}}}}}),a7=Ye({"src/traces/histogram/hover.js"(X,H){"use strict";var g=c1().hoverPoints,x=Co().hoverLabelText;H.exports=function(M,e,t,r,o){var a=g(M,e,t,r,o);if(a){M=a[0];var i=M.cd[M.index],n=M.cd[0].trace;if(!n.cumulative.enabled){var s=n.orientation==="h"?"y":"x";M[s+"Label"]=x(M[s+"a"],[i.ph0,i.ph1],n[s+"hoverformat"])}return a}}}}),lM=Ye({"src/traces/histogram/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){if(x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"zLabelVal"in A&&(x.z=A.zLabelVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),!(M.cumulative||{}).enabled){var r=Array.isArray(t)?e[0].pts[t[0]][t[1]]:e[t].pts;x.pointNumbers=r,x.binNumber=x.pointNumber,delete x.pointNumber,delete x.pointIndex;var o;if(M._indexToPoints){o=[];for(var a=0;a<r.length;a++)o=o.concat(M._indexToPoints[r[a]])}else o=r;x.pointIndices=o}return x}}}),i7=Ye({"src/traces/histogram/index.js"(X,H){"use strict";H.exports={attributes:r3(),layoutAttributes:N2(),supplyDefaults:r7(),crossTraceDefaults:a3(),supplyLayoutDefaults:YS(),calc:iM().calc,crossTraceCalc:$g().crossTraceCalc,plot:e0().plot,layerName:"barlayer",style:Nd().style,styleOnSelect:Nd().styleOnSelect,colorbar:cp(),hoverPoints:a7(),selectPoints:f1(),eventData:lM(),moduleType:"trace",name:"histogram",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","bar","histogram","oriented","errorBarsOK","showLegend"],meta:{}}}}),n7=Ye({"lib/histogram.js"(X,H){"use strict";H.exports=i7()}}),i3=Ye({"src/traces/histogram2d/attributes.js"(X,H){"use strict";var g=r3(),x=sM(),A=h1(),M=Pl(),e=Cc().axisHoverFormat,t=xs().hovertemplateAttrs,r=xs().texttemplateAttrs,o=tu(),a=Oo().extendFlat;H.exports=a({x:g.x,y:g.y,z:{valType:"data_array",editType:"calc"},marker:{color:{valType:"data_array",editType:"calc"},editType:"calc"},histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:x("x"),nbinsy:g.nbinsy,ybins:x("y"),autobinx:g.autobinx,autobiny:g.autobiny,bingroup:a({},g.bingroup,{}),xbingroup:a({},g.bingroup,{}),ybingroup:a({},g.bingroup,{}),xgap:A.xgap,ygap:A.ygap,zsmooth:A.zsmooth,xhoverformat:e("x"),yhoverformat:e("y"),zhoverformat:e("z",1),hovertemplate:t({},{keys:"z"}),texttemplate:r({arrayOk:!1,editType:"plot"},{keys:"z"}),textfont:A.textfont,showlegend:a({},M.showlegend,{dflt:!1})},o("",{cLetter:"z",autoColorDflt:!1}))}}),uM=Ye({"src/traces/histogram2d/sample_defaults.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports=function(M,e,t,r){var o=t("x"),a=t("y"),i=x.minRowLength(o),n=x.minRowLength(a);if(!i||!n){e.visible=!1;return}e._length=Math.min(i,n);var s=g.getComponentMethod("calendars","handleTraceDefaults");s(M,e,["x","y"],r);var c=t("z")||t("marker.color");c&&t("histfunc"),t("histnorm"),t("autobinx"),t("autobiny")}}}),o7=Ye({"src/traces/histogram2d/defaults.js"(X,H){"use strict";var g=ta(),x=uM(),A=QS(),M=sh(),e=N_(),t=i3();H.exports=function(o,a,i,n){function s(c,h){return g.coerce(o,a,t,c,h)}x(o,a,s,n),a.visible!==!1&&(A(o,a,s,n),M(o,a,n,s,{prefix:"",cLetter:"z"}),s("hovertemplate"),e(s,n),s("xhoverformat"),s("yhoverformat"))}}}),s7=Ye({"src/traces/histogram2d/hover.js"(X,H){"use strict";var g=t3(),x=Co().hoverLabelText;H.exports=function(M,e,t,r,o){var a=g(M,e,t,r,o);if(a){M=a[0];var i=M.index,n=i[0],s=i[1],c=M.cd[0],h=c.trace,v=c.xRanges[s],p=c.yRanges[n];return M.xLabel=x(M.xa,[v[0],v[1]],h.xhoverformat),M.yLabel=x(M.ya,[p[0],p[1]],h.yhoverformat),a}}}}),l7=Ye({"src/traces/histogram2d/index.js"(X,H){"use strict";H.exports={attributes:i3(),supplyDefaults:o7(),crossTraceDefaults:a3(),calc:J2(),plot:Q2(),layerName:"heatmaplayer",colorbar:ag(),style:e3(),hoverPoints:s7(),eventData:lM(),moduleType:"trace",name:"histogram2d",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","histogram","showLegend"],meta:{}}}}),u7=Ye({"lib/histogram2d.js"(X,H){"use strict";H.exports=l7()}}),n3=Ye({"src/constants/filter_ops.js"(X,H){"use strict";H.exports={COMPARISON_OPS:["=","!=","<",">=",">","<="],COMPARISON_OPS2:["=","<",">=",">","<="],INTERVAL_OPS:["[]","()","[)","(]","][",")(","](",")["],SET_OPS:["{}","}{"],CONSTRAINT_REDUCTION:{"=":"=","<":"<","<=":"<",">":">",">=":">","[]":"[]","()":"[]","[)":"[]","(]":"[]","][":"][",")(":"][","](":"][",")[":"]["}}}}),U_=Ye({"src/traces/contour/attributes.js"(X,H){"use strict";var g=h1(),x=Pc(),A=Cc(),M=A.axisHoverFormat,e=A.descriptionOnlyNumbers,t=tu(),r=Uh().dash,o=Au(),a=Oo().extendFlat,i=n3(),n=i.COMPARISON_OPS2,s=i.INTERVAL_OPS,c=x.line;H.exports=a({z:g.z,x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:x.xperiod0,yperiod0:x.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,text:g.text,hovertext:g.hovertext,transpose:g.transpose,xtype:g.xtype,ytype:g.ytype,xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:a({},g.texttemplate,{}),textfont:a({},g.textfont,{}),hoverongaps:g.hoverongaps,connectgaps:a({},g.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:o({editType:"plot",colorEditType:"style"}),labelformat:{valType:"string",dflt:"",editType:"plot",description:e("contour label")},operation:{valType:"enumerated",values:[].concat(n).concat(s),dflt:"=",editType:"calc"},value:{valType:"any",dflt:0,editType:"calc"},editType:"calc",impliedEdits:{autocontour:!1}},line:{color:a({},c.color,{editType:"style+colorbars"}),width:{valType:"number",min:0,editType:"style+colorbars"},dash:r,smoothing:a({},c.smoothing,{}),editType:"plot"},zorder:x.zorder},t("",{cLetter:"z",autoColorDflt:!1,editTypeOverride:"calc"}))}}),cM=Ye({"src/traces/histogram2dcontour/attributes.js"(X,H){"use strict";var g=i3(),x=U_(),A=tu(),M=Cc().axisHoverFormat,e=Oo().extendFlat;H.exports=e({x:g.x,y:g.y,z:g.z,marker:g.marker,histnorm:g.histnorm,histfunc:g.histfunc,nbinsx:g.nbinsx,xbins:g.xbins,nbinsy:g.nbinsy,ybins:g.ybins,autobinx:g.autobinx,autobiny:g.autobiny,bingroup:g.bingroup,xbingroup:g.xbingroup,ybingroup:g.ybingroup,autocontour:x.autocontour,ncontours:x.ncontours,contours:x.contours,line:{color:x.line.color,width:e({},x.line.width,{dflt:.5}),dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z",1),hovertemplate:g.hovertemplate,texttemplate:x.texttemplate,textfont:x.textfont},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),o3=Ye({"src/traces/contour/contours_defaults.js"(X,H){"use strict";H.exports=function(x,A,M,e){var t=e("contours.start"),r=e("contours.end"),o=t===!1||r===!1,a=M("contours.size"),i;o?i=A.autocontour=!0:i=M("autocontour",!1),(i||!a)&&M("ncontours")}}}),fM=Ye({"src/traces/contour/label_defaults.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e,t){t||(t={});var r=A("contours.showlabels");if(r){var o=M.font;g.coerceFont(A,"contours.labelfont",o,{overrideDflt:{color:e}}),A("contours.labelformat")}t.hasHover!==!1&&A("zhoverformat")}}}),s3=Ye({"src/traces/contour/style_defaults.js"(X,H){"use strict";var g=sh(),x=fM();H.exports=function(M,e,t,r,o){var a=t("contours.coloring"),i,n="";a==="fill"&&(i=t("contours.showlines")),i!==!1&&(a!=="lines"&&(n=t("line.color","#000")),t("line.width",.5),t("line.dash")),a!=="none"&&(M.showlegend!==!0&&(e.showlegend=!1),e._dfltShowLegend=!1,g(M,e,r,t,{prefix:"",cLetter:"z"})),t("line.smoothing"),x(t,r,n,o)}}}),c7=Ye({"src/traces/histogram2dcontour/defaults.js"(X,H){"use strict";var g=ta(),x=uM(),A=o3(),M=s3(),e=N_(),t=cM();H.exports=function(o,a,i,n){function s(h,v){return g.coerce(o,a,t,h,v)}function c(h){return g.coerce2(o,a,t,h)}x(o,a,s,n),a.visible!==!1&&(A(o,a,s,c),M(o,a,s,n),s("xhoverformat"),s("yhoverformat"),s("hovertemplate"),a.contours&&a.contours.coloring==="heatmap"&&e(s,n))}}}),hM=Ye({"src/traces/contour/set_contours.js"(X,H){"use strict";var g=Co(),x=ta();H.exports=function(e,t){var r=e.contours;if(e.autocontour){var o=e.zmin,a=e.zmax;(e.zauto||o===void 0)&&(o=x.aggNums(Math.min,null,t)),(e.zauto||a===void 0)&&(a=x.aggNums(Math.max,null,t));var i=A(o,a,e.ncontours);r.size=i.dtick,r.start=g.tickFirst(i),i.range.reverse(),r.end=g.tickFirst(i),r.start===o&&(r.start+=r.size),r.end===a&&(r.end-=r.size),r.start>r.end&&(r.start=r.end=(r.start+r.end)/2),e._input.contours||(e._input.contours={}),x.extendFlat(e._input.contours,{start:r.start,end:r.end,size:r.size}),e._input.autocontour=!0}else if(r.type!=="constraint"){var n=r.start,s=r.end,c=e._input.contours;if(n>s&&(r.start=c.start=s,s=r.end=c.end=n,n=r.start),!(r.size>0)){var h;n===s?h=1:h=A(n,s,e.ncontours).dtick,c.size=r.size=h}}};function A(M,e,t){var r={type:"linear",range:[M,e]};return g.autoTicks(r,(e-M)/(t||15)),r}}}),j_=Ye({"src/traces/contour/end_plus.js"(X,H){"use strict";H.exports=function(x){return x.end+x.size/1e6}}}),pM=Ye({"src/traces/contour/calc.js"(X,H){"use strict";var g=Su(),x=J2(),A=hM(),M=j_();H.exports=function(t,r){var o=x(t,r),a=o[0].z;A(r,a);var i=r.contours,n=g.extractOpts(r),s;if(i.coloring==="heatmap"&&n.auto&&r.autocontour===!1){var c=i.start,h=M(i),v=i.size||1,p=Math.floor((h-c)/v)+1;isFinite(v)||(v=1,p=1);var T=c-v/2,l=T+p*v;s=[T,l]}else s=a;return g.calc(t,r,{vals:s,cLetter:"z"}),o}}}),V_=Ye({"src/traces/contour/constants.js"(X,H){"use strict";H.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}}}}),dM=Ye({"src/traces/contour/make_crossings.js"(X,H){"use strict";var g=V_();H.exports=function(M){var e=M[0].z,t=e.length,r=e[0].length,o=t===2||r===2,a,i,n,s,c,h,v,p,T;for(i=0;i<t-1;i++)for(s=[],i===0&&(s=s.concat(g.BOTTOMSTART)),i===t-2&&(s=s.concat(g.TOPSTART)),a=0;a<r-1;a++)for(n=s.slice(),a===0&&(n=n.concat(g.LEFTSTART)),a===r-2&&(n=n.concat(g.RIGHTSTART)),c=a+","+i,h=[[e[i][a],e[i][a+1]],[e[i+1][a],e[i+1][a+1]]],T=0;T<M.length;T++)p=M[T],v=x(p.level,h),v&&(p.crossings[c]=v,n.indexOf(v)!==-1&&(p.starts.push([a,i]),o&&n.indexOf(v,n.indexOf(v)+1)!==-1&&p.starts.push([a,i])))};function x(A,M){var e=(M[0][0]>A?0:1)+(M[0][1]>A?0:2)+(M[1][1]>A?0:4)+(M[1][0]>A?0:8);if(e===5||e===10){var t=(M[0][0]+M[0][1]+M[1][0]+M[1][1])/4;return A>t?e===5?713:1114:e===5?104:208}return e===15?0:e}}}),vM=Ye({"src/traces/contour/find_all_paths.js"(X,H){"use strict";var g=ta(),x=V_();H.exports=function(a,i,n){var s,c,h,v,p;for(i=i||.01,n=n||.01,h=0;h<a.length;h++){for(v=a[h],p=0;p<v.starts.length;p++)c=v.starts[p],e(v,c,"edge",i,n);for(s=0;Object.keys(v.crossings).length&&s<1e4;)s++,c=Object.keys(v.crossings)[0].split(",").map(Number),e(v,c,void 0,i,n);s===1e4&&g.log("Infinite loop in contour?")}};function A(o,a,i,n){return Math.abs(o[0]-a[0])<i&&Math.abs(o[1]-a[1])<n}function M(o,a){var i=o[2]-a[2],n=o[3]-a[3];return Math.sqrt(i*i+n*n)}function e(o,a,i,n,s){var c=a.join(","),h=o.crossings[c],v=t(h,i,a),p=[r(o,a,[-v[0],-v[1]])],T=o.z.length,l=o.z[0].length,_=a.slice(),w=v.slice(),S;for(S=0;S<1e4;S++){if(h>20?(h=x.CHOOSESADDLE[h][(v[0]||v[1])<0?0:1],o.crossings[c]=x.SADDLEREMAINDER[h]):delete o.crossings[c],v=x.NEWDELTA[h],!v){g.log("Found bad marching index:",h,a,o.level);break}p.push(r(o,a,v)),a[0]+=v[0],a[1]+=v[1],c=a.join(","),A(p[p.length-1],p[p.length-2],n,s)&&p.pop();var E=v[0]&&(a[0]<0||a[0]>l-2)||v[1]&&(a[1]<0||a[1]>T-2),m=a[0]===_[0]&&a[1]===_[1]&&v[0]===w[0]&&v[1]===w[1];if(m||i&&E)break;h=o.crossings[c]}S===1e4&&g.log("Infinite loop in contour?");var b=A(p[0],p[p.length-1],n,s),d=0,u=.2*o.smoothing,y=[],f=0,P,L,z,F,B,O,I,N,U,W,Q;for(S=1;S<p.length;S++)I=M(p[S],p[S-1]),d+=I,y.push(I);var ue=d/y.length*u;function se($){return p[$%p.length]}for(S=p.length-2;S>=f;S--)if(P=y[S],P<ue){for(z=0,L=S-1;L>=f&&P+y[L]<ue;L--)P+=y[L];if(b&&S===p.length-2)for(z=0;z<L&&P+y[z]<ue;z++)P+=y[z];B=S-L+z+1,O=Math.floor((S+L+z+2)/2),!b&&S===p.length-2?F=p[p.length-1]:!b&&L===-1?F=p[0]:B%2?F=se(O):F=[(se(O)[0]+se(O+1)[0])/2,(se(O)[1]+se(O+1)[1])/2],p.splice(L+1,S-L+1,F),S=L+1,z&&(f=z),b&&(S===p.length-2?p[z]=p[p.length-1]:S===0&&(p[p.length-1]=p[0]))}for(p.splice(0,f),S=0;S<p.length;S++)p[S].length=2;if(!(p.length<2))if(b)p.pop(),o.paths.push(p);else{i||g.log("Unclosed interior contour?",o.level,_.join(","),p.join("L"));var he=!1;for(N=0;N<o.edgepaths.length;N++)if(W=o.edgepaths[N],!he&&A(W[0],p[p.length-1],n,s)){p.pop(),he=!0;var G=!1;for(U=0;U<o.edgepaths.length;U++)if(Q=o.edgepaths[U],A(Q[Q.length-1],p[0],n,s)){G=!0,p.shift(),o.edgepaths.splice(N,1),U===N?o.paths.push(p.concat(Q)):(U>N&&U--,o.edgepaths[U]=Q.concat(p,W));break}G||(o.edgepaths[N]=p.concat(W))}for(N=0;N<o.edgepaths.length&&!he;N++)W=o.edgepaths[N],A(W[W.length-1],p[0],n,s)&&(p.shift(),o.edgepaths[N]=W.concat(p),he=!0);he||o.edgepaths.push(p)}}function t(o,a,i){var n=0,s=0;return o>20&&a?o===208||o===1114?n=i[0]===0?1:-1:s=i[1]===0?1:-1:x.BOTTOMSTART.indexOf(o)!==-1?s=1:x.LEFTSTART.indexOf(o)!==-1?n=1:x.TOPSTART.indexOf(o)!==-1?s=-1:n=-1,[n,s]}function r(o,a,i){var n=a[0]+Math.max(i[0],0),s=a[1]+Math.max(i[1],0),c=o.z[s][n],h=o.xaxis,v=o.yaxis;if(i[1]){var p=(o.level-c)/(o.z[s][n+1]-c),T=(p!==1?(1-p)*h.c2l(o.x[n]):0)+(p!==0?p*h.c2l(o.x[n+1]):0);return[h.c2p(h.l2c(T),!0),v.c2p(o.y[s],!0),n+p,s]}else{var l=(o.level-c)/(o.z[s+1][n]-c),_=(l!==1?(1-l)*v.c2l(o.y[s]):0)+(l!==0?l*v.c2l(o.y[s+1]):0);return[h.c2p(o.x[n],!0),v.c2p(v.l2c(_),!0),n,s+l]}}}}),f7=Ye({"src/traces/contour/constraint_mapping.js"(X,H){"use strict";var g=n3(),x=jo();H.exports={"[]":M("[]"),"][":M("]["),">":e(">"),"<":e("<"),"=":e("=")};function A(t,r){var o=Array.isArray(r),a;function i(n){return x(n)?+n:null}return g.COMPARISON_OPS2.indexOf(t)!==-1?a=i(o?r[0]:r):g.INTERVAL_OPS.indexOf(t)!==-1?a=o?[i(r[0]),i(r[1])]:[i(r),i(r)]:g.SET_OPS.indexOf(t)!==-1&&(a=o?r.map(i):[i(r)]),a}function M(t){return function(r){r=A(t,r);var o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);return{start:o,end:a,size:a-o}}}function e(t){return function(r){return r=A(t,r),{start:r,end:1/0,size:1/0}}}}}),mM=Ye({"src/traces/contour/empty_pathinfo.js"(X,H){"use strict";var g=ta(),x=f7(),A=j_();H.exports=function(e,t,r){for(var o=e.type==="constraint"?x[e._operation](e.value):e,a=o.size,i=[],n=A(o),s=r.trace._carpetTrace,c=s?{xaxis:s.aaxis,yaxis:s.baxis,x:r.a,y:r.b}:{xaxis:t.xaxis,yaxis:t.yaxis,x:r.x,y:r.y},h=o.start;h<n;h+=a)if(i.push(g.extendFlat({level:h,crossings:{},starts:[],edgepaths:[],paths:[],z:r.z,smoothing:r.trace.line.smoothing},c)),i.length>1e3){g.warn("Too many contours, clipping at 1000",e);break}return i}}}),gM=Ye({"src/traces/contour/convert_to_constraints.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e,t,r,o=function(n){return n.reverse()},a=function(n){return n};switch(M){case"=":case"<":return A;case">":for(A.length!==1&&g.warn("Contour data invalid for the specified inequality operation."),t=A[0],e=0;e<t.edgepaths.length;e++)t.edgepaths[e]=o(t.edgepaths[e]);for(e=0;e<t.paths.length;e++)t.paths[e]=o(t.paths[e]);for(e=0;e<t.starts.length;e++)t.starts[e]=o(t.starts[e]);return A;case"][":var i=o;o=a,a=i;case"[]":for(A.length!==2&&g.warn("Contour data invalid for the specified inequality range operation."),t=x(A[0]),r=x(A[1]),e=0;e<t.edgepaths.length;e++)t.edgepaths[e]=o(t.edgepaths[e]);for(e=0;e<t.paths.length;e++)t.paths[e]=o(t.paths[e]);for(e=0;e<t.starts.length;e++)t.starts[e]=o(t.starts[e]);for(;r.edgepaths.length;)t.edgepaths.push(a(r.edgepaths.shift()));for(;r.paths.length;)t.paths.push(a(r.paths.shift()));for(;r.starts.length;)t.starts.push(a(r.starts.shift()));return[t]}};function x(A){return g.extendFlat({},A,{edgepaths:g.extendDeep([],A.edgepaths),paths:g.extendDeep([],A.paths),starts:g.extendDeep([],A.starts)})}}}),yM=Ye({"src/traces/contour/close_boundaries.js"(X,H){"use strict";H.exports=function(g,x){var A=g[0],M=A.z,e;switch(x.type){case"levels":var t=Math.min(M[0][0],M[0][1]);for(e=0;e<g.length;e++){var r=g[e];r.prefixBoundary=!r.edgepaths.length&&(t>r.level||r.starts.length&&t===r.level)}break;case"constraint":if(A.prefixBoundary=!1,A.edgepaths.length)return;var o=A.x.length,a=A.y.length,i=-1/0,n=1/0;for(e=0;e<a;e++)n=Math.min(n,M[e][0]),n=Math.min(n,M[e][o-1]),i=Math.max(i,M[e][0]),i=Math.max(i,M[e][o-1]);for(e=1;e<o-1;e++)n=Math.min(n,M[0][e]),n=Math.min(n,M[a-1][e]),i=Math.max(i,M[0][e]),i=Math.max(i,M[a-1][e]);var s=x.value,c,h;switch(x._operation){case">":s>i&&(A.prefixBoundary=!0);break;case"<":(s<n||A.starts.length&&s===n)&&(A.prefixBoundary=!0);break;case"[]":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),(h<n||c>i||A.starts.length&&h===n)&&(A.prefixBoundary=!0);break;case"][":c=Math.min(s[0],s[1]),h=Math.max(s[0],s[1]),c<n&&h>i&&(A.prefixBoundary=!0);break}break}}}}),l3=Ye({"src/traces/contour/plot.js"(X){"use strict";var H=_n(),g=ta(),x=Bo(),A=Su(),M=jl(),e=Co(),t=wv(),r=Q2(),o=dM(),a=vM(),i=mM(),n=gM(),s=yM(),c=V_(),h=c.LABELOPTIMIZER;X.plot=function(m,b,d,u){var y=b.xaxis,f=b.yaxis;g.makeTraceGroups(u,d,"contour").each(function(P){var L=H.select(this),z=P[0],F=z.trace,B=z.x,O=z.y,I=F.contours,N=i(I,b,z),U=g.ensureSingle(L,"g","heatmapcoloring"),W=[];I.coloring==="heatmap"&&(W=[P]),r(m,b,W,U),o(N),a(N);var Q=y.c2p(B[0],!0),ue=y.c2p(B[B.length-1],!0),se=f.c2p(O[0],!0),he=f.c2p(O[O.length-1],!0),G=[[Q,he],[ue,he],[ue,se],[Q,se]],$=N;I.type==="constraint"&&($=n(N,I._operation)),v(L,G,I),p(L,$,G,I),l(L,N,m,z,I),w(L,b,m,z,G)})};function v(E,m,b){var d=g.ensureSingle(E,"g","contourbg"),u=d.selectAll("path").data(b.coloring==="fill"?[0]:[]);u.enter().append("path"),u.exit().remove(),u.attr("d","M"+m.join("L")+"Z").style("stroke","none")}function p(E,m,b,d){var u=d.coloring==="fill"||d.type==="constraint"&&d._operation!=="=",y="M"+b.join("L")+"Z";u&&s(m,d);var f=g.ensureSingle(E,"g","contourfill"),P=f.selectAll("path").data(u?m:[]);P.enter().append("path"),P.exit().remove(),P.each(function(L){var z=(L.prefixBoundary?y:"")+T(L,b);z?H.select(this).attr("d",z).style("stroke","none"):H.select(this).remove()})}function T(E,m){var b="",d=0,u=E.edgepaths.map(function(Q,ue){return ue}),y=!0,f,P,L,z,F,B;function O(Q){return Math.abs(Q[1]-m[0][1])<.01}function I(Q){return Math.abs(Q[1]-m[2][1])<.01}function N(Q){return Math.abs(Q[0]-m[0][0])<.01}function U(Q){return Math.abs(Q[0]-m[2][0])<.01}for(;u.length;){for(B=x.smoothopen(E.edgepaths[d],E.smoothing),b+=y?B:B.replace(/^M/,"L"),u.splice(u.indexOf(d),1),f=E.edgepaths[d][E.edgepaths[d].length-1],z=-1,L=0;L<4;L++){if(!f){g.log("Missing end?",d,E);break}for(O(f)&&!U(f)?P=m[1]:N(f)?P=m[0]:I(f)?P=m[3]:U(f)&&(P=m[2]),F=0;F<E.edgepaths.length;F++){var W=E.edgepaths[F][0];Math.abs(f[0]-P[0])<.01?Math.abs(f[0]-W[0])<.01&&(W[1]-f[1])*(P[1]-W[1])>=0&&(P=W,z=F):Math.abs(f[1]-P[1])<.01?Math.abs(f[1]-W[1])<.01&&(W[0]-f[0])*(P[0]-W[0])>=0&&(P=W,z=F):g.log("endpt to newendpt is not vert. or horz.",f,P,W)}if(f=P,z>=0)break;b+="L"+P}if(z===E.edgepaths.length){g.log("unclosed perimeter path");break}d=z,y=u.indexOf(d)===-1,y&&(d=u[0],b+="Z")}for(d=0;d<E.paths.length;d++)b+=x.smoothclosed(E.paths[d],E.smoothing);return b}function l(E,m,b,d,u){var y=b._context.staticPlot,f=g.ensureSingle(E,"g","contourlines"),P=u.showlines!==!1,L=u.showlabels,z=P&&L,F=X.createLines(f,P||L,m,y),B=X.createLineClip(f,z,b,d.trace.uid),O=E.selectAll("g.contourlabels").data(L?[0]:[]);if(O.exit().remove(),O.enter().append("g").classed("contourlabels",!0),L){var I=[],N=[];g.clearLocationCache();var U=X.labelFormatter(b,d),W=x.tester.append("text").attr("data-notex",1).call(x.font,u.labelfont),Q=m[0].xaxis,ue=m[0].yaxis,se=Q._length,he=ue._length,G=Q.range,$=ue.range,J=g.aggNums(Math.min,null,d.x),Z=g.aggNums(Math.max,null,d.x),re=g.aggNums(Math.min,null,d.y),ne=g.aggNums(Math.max,null,d.y),j=Math.max(Q.c2p(J,!0),0),ee=Math.min(Q.c2p(Z,!0),se),ie=Math.max(ue.c2p(ne,!0),0),fe=Math.min(ue.c2p(re,!0),he),be={};G[0]<G[1]?(be.left=j,be.right=ee):(be.left=ee,be.right=j),$[0]<$[1]?(be.top=ie,be.bottom=fe):(be.top=fe,be.bottom=ie),be.middle=(be.top+be.bottom)/2,be.center=(be.left+be.right)/2,I.push([[be.left,be.top],[be.right,be.top],[be.right,be.bottom],[be.left,be.bottom]]);var Ae=Math.sqrt(se*se+he*he),Be=c.LABELDISTANCE*Ae/Math.max(1,m.length/c.LABELINCREASE);F.each(function(Ie){var Ze=X.calcTextOpts(Ie.level,U,W,b);H.select(this).selectAll("path").each(function(){var at=this,it=g.getVisibleSegment(at,be,Ze.height/2);if(it&&!(it.len<(Ze.width+Ze.height)*c.LABELMIN))for(var et=Math.min(Math.ceil(it.len/Be),c.LABELMAX),lt=0;lt<et;lt++){var Me=X.findBestTextLocation(at,it,Ze,N,be);if(!Me)break;X.addLabelData(Me,Ze,N,I)}})}),W.remove(),X.drawLabels(O,N,b,B,z?I:null)}L&&!P&&F.remove()}X.createLines=function(E,m,b,d){var u=b[0].smoothing,y=E.selectAll("g.contourlevel").data(m?b:[]);if(y.exit().remove(),y.enter().append("g").classed("contourlevel",!0),m){var f=y.selectAll("path.openline").data(function(L){return L.pedgepaths||L.edgepaths});f.exit().remove(),f.enter().append("path").classed("openline",!0),f.attr("d",function(L){return x.smoothopen(L,u)}).style("stroke-miterlimit",1).style("vector-effect",d?"none":"non-scaling-stroke");var P=y.selectAll("path.closedline").data(function(L){return L.ppaths||L.paths});P.exit().remove(),P.enter().append("path").classed("closedline",!0),P.attr("d",function(L){return x.smoothclosed(L,u)}).style("stroke-miterlimit",1).style("vector-effect",d?"none":"non-scaling-stroke")}return y},X.createLineClip=function(E,m,b,d){var u=b._fullLayout._clips,y=m?"clipline"+d:null,f=u.selectAll("#"+y).data(m?[0]:[]);return f.exit().remove(),f.enter().append("clipPath").classed("contourlineclip",!0).attr("id",y),x.setClipUrl(E,y,b),f},X.labelFormatter=function(E,m){var b=E._fullLayout,d=m.trace,u=d.contours,y={type:"linear",_id:"ycontour",showexponent:"all",exponentformat:"B"};if(u.labelformat)y.tickformat=u.labelformat,t(y,b);else{var f=A.extractOpts(d);if(f&&f.colorbar&&f.colorbar._axis)y=f.colorbar._axis;else{if(u.type==="constraint"){var P=u.value;g.isArrayOrTypedArray(P)?y.range=[P[0],P[P.length-1]]:y.range=[P,P]}else y.range=[u.start,u.end],y.nticks=(u.end-u.start)/u.size;y.range[0]===y.range[1]&&(y.range[1]+=y.range[0]||1),y.nticks||(y.nticks=1e3),t(y,b),e.prepTicks(y),y._tmin=null,y._tmax=null}}return function(L){return e.tickText(y,L).text}},X.calcTextOpts=function(E,m,b,d){var u=m(E);b.text(u).call(M.convertToTspans,d);var y=b.node(),f=x.bBox(y,!0);return{text:u,width:f.width,height:f.height,fontSize:+y.style["font-size"].replace("px",""),level:E,dy:(f.top+f.bottom)/2}},X.findBestTextLocation=function(E,m,b,d,u){var y=b.width,f,P,L,z,F;m.isClosed?(P=m.len/h.INITIALSEARCHPOINTS,f=m.min+P/2,L=m.max):(P=(m.len-y)/(h.INITIALSEARCHPOINTS+1),f=m.min+P+y/2,L=m.max-(P+y)/2);for(var B=1/0,O=0;O<h.ITERATIONS;O++){for(var I=f;I<L;I+=P){var N=g.getTextLocation(E,m.total,I,y),U=_(N,b,d,u);U<B&&(B=U,F=N,z=I)}if(B>h.MAXCOST*2)break;O&&(P/=2),f=z-P/2,L=f+P*1.5}if(B<=h.MAXCOST)return F};function _(E,m,b,d){var u=m.width/2,y=m.height/2,f=E.x,P=E.y,L=E.theta,z=Math.cos(L)*u,F=Math.sin(L)*u,B=(f>d.center?d.right-f:f-d.left)/(z+Math.abs(Math.sin(L)*y)),O=(P>d.middle?d.bottom-P:P-d.top)/(Math.abs(F)+Math.cos(L)*y);if(B<1||O<1)return 1/0;var I=h.EDGECOST*(1/(B-1)+1/(O-1));I+=h.ANGLECOST*L*L;for(var N=f-z,U=P-F,W=f+z,Q=P+F,ue=0;ue<b.length;ue++){var se=b[ue],he=Math.cos(se.theta)*se.width/2,G=Math.sin(se.theta)*se.width/2,$=g.segmentDistance(N,U,W,Q,se.x-he,se.y-G,se.x+he,se.y+G)*2/(m.height+se.height),J=se.level===m.level,Z=J?h.SAMELEVELDISTANCE:1;if($<=Z)return 1/0;var re=h.NEIGHBORCOST*(J?h.SAMELEVELFACTOR:1);I+=re/($-Z)}return I}X.addLabelData=function(E,m,b,d){var u=m.fontSize,y=m.width+u/3,f=Math.max(0,m.height-u/3),P=E.x,L=E.y,z=E.theta,F=Math.sin(z),B=Math.cos(z),O=function(N,U){return[P+N*B-U*F,L+N*F+U*B]},I=[O(-y/2,-f/2),O(-y/2,f/2),O(y/2,f/2),O(y/2,-f/2)];b.push({text:m.text,x:P,y:L,dy:m.dy,theta:z,level:m.level,width:y,height:f}),d.push(I)},X.drawLabels=function(E,m,b,d,u){var y=E.selectAll("text").data(m,function(z){return z.text+","+z.x+","+z.y+","+z.theta});if(y.exit().remove(),y.enter().append("text").attr({"data-notex":1,"text-anchor":"middle"}).each(function(z){var F=z.x+Math.sin(z.theta)*z.dy,B=z.y-Math.cos(z.theta)*z.dy;H.select(this).text(z.text).attr({x:F,y:B,transform:"rotate("+180*z.theta/Math.PI+" "+F+" "+B+")"}).call(M.convertToTspans,b)}),u){for(var f="",P=0;P<u.length;P++)f+="M"+u[P].join("L")+"Z";var L=g.ensureSingle(d,"path","");L.attr("d",f)}};function w(E,m,b,d,u){var y=d.trace,f=b._fullLayout._clips,P="clip"+y.uid,L=f.selectAll("#"+P).data(y.connectgaps?[]:[0]);if(L.enter().append("clipPath").classed("contourclip",!0).attr("id",P),L.exit().remove(),y.connectgaps===!1){var z={level:.9,crossings:{},starts:[],edgepaths:[],paths:[],xaxis:m.xaxis,yaxis:m.yaxis,x:d.x,y:d.y,z:S(d),smoothing:0};o([z]),a([z]),s([z],{type:"levels"});var F=g.ensureSingle(L,"path","");F.attr("d",(z.prefixBoundary?"M"+u.join("L")+"Z":"")+T(z,u))}else P=null;x.setClipUrl(E,P,b)}function S(E){var m=E.trace._emptypoints,b=[],d=E.z.length,u=E.z[0].length,y,f=[],P;for(y=0;y<u;y++)f.push(1);for(y=0;y<d;y++)b.push(f.slice());for(y=0;y<m.length;y++)P=m[y],b[P[0]][P[1]]=0;return E.zmask=b,b}}}),_M=Ye({"src/traces/contour/make_color_map.js"(X,H){"use strict";var g=_n(),x=Su(),A=j_();H.exports=function(e){var t=e.contours,r=t.start,o=A(t),a=t.size||1,i=Math.floor((o-r)/a)+1,n=t.coloring==="lines"?0:1,s=x.extractOpts(e);isFinite(a)||(a=1,i=1);var c=s.reversescale?x.flipScale(s.colorscale):s.colorscale,h=c.length,v=new Array(h),p=new Array(h),T,l,_=s.min,w=s.max;if(t.coloring==="heatmap"){for(l=0;l<h;l++)T=c[l],v[l]=T[0]*(w-_)+_,p[l]=T[1];var S=g.extent([_,w,t.start,t.start+a*(i-1)]),E=S[_<w?0:1],m=S[_<w?1:0];E!==_&&(v.splice(0,0,E),p.splice(0,0,p[0])),m!==w&&(v.push(m),p.push(p[p.length-1]))}else{var b=e._input&&typeof e._input.zmin=="number"&&typeof e._input.zmax=="number";for(b&&(r<=_||o>=w)&&(r<=_&&(r=_),o>=w&&(o=w),i=Math.floor((o-r)/a)+1,n=0),l=0;l<h;l++)T=c[l],v[l]=(T[0]*(i+n-1)-n/2)*a+r,p[l]=T[1];(b||e.autocontour)&&(v[0]>_&&(v.unshift(_),p.unshift(p[0])),v[v.length-1]<w&&(v.push(w),p.push(p[p.length-1])))}return x.makeColorScaleFunc({domain:v,range:p},{noNumericCheck:!0})}}}),u3=Ye({"src/traces/contour/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=e3(),M=_M();H.exports=function(t){var r=g.select(t).selectAll("g.contour");r.style("opacity",function(o){return o[0].trace.opacity}),r.each(function(o){var a=g.select(this),i=o[0].trace,n=i.contours,s=i.line,c=n.size||1,h=n.start,v=n.type==="constraint",p=!v&&n.coloring==="lines",T=!v&&n.coloring==="fill",l=p||T?M(i):null;a.selectAll("g.contourlevel").each(function(S){g.select(this).selectAll("path").call(x.lineGroupStyle,s.width,p?l(S.level):s.color,s.dash)});var _=n.labelfont;if(a.selectAll("g.contourlabels text").each(function(S){x.font(g.select(this),{weight:_.weight,style:_.style,variant:_.variant,textcase:_.textcase,lineposition:_.lineposition,shadow:_.shadow,family:_.family,size:_.size,color:_.color||(p?l(S.level):s.color)})}),v)a.selectAll("g.contourfill path").style("fill",i.fillcolor);else if(T){var w;a.selectAll("g.contourfill path").style("fill",function(S){return w===void 0&&(w=S.level),l(S.level+.5*c)}),w===void 0&&(w=h),a.selectAll("g.contourbg path").style("fill",l(w-.5*c))}}),A(t)}}}),c3=Ye({"src/traces/contour/colorbar.js"(X,H){"use strict";var g=Su(),x=_M(),A=j_();function M(e,t,r){var o=t.contours,a=t.line,i=o.size||1,n=o.coloring,s=x(t,{isColorbar:!0});if(n==="heatmap"){var c=g.extractOpts(t);r._fillgradient=c.reversescale?g.flipScale(c.colorscale):c.colorscale,r._zrange=[c.min,c.max]}else n==="fill"&&(r._fillcolor=s);r._line={color:n==="lines"?s:a.color,width:o.showlines!==!1?a.width:0,dash:a.dash},r._levels={start:o.start,end:A(o),size:i}}H.exports={min:"zmin",max:"zmax",calc:M}}}),xM=Ye({"src/traces/contour/hover.js"(X,H){"use strict";var g=Fn(),x=t3();H.exports=function(M,e,t,r,o){o||(o={}),o.isContour=!0;var a=x(M,e,t,r,o);return a&&a.forEach(function(i){var n=i.trace;n.contours.type==="constraint"&&(n.fillcolor&&g.opacity(n.fillcolor)?i.color=g.addOpacity(n.fillcolor,1):n.contours.showlines&&g.opacity(n.line.color)&&(i.color=g.addOpacity(n.line.color,1)))}),a}}}),h7=Ye({"src/traces/histogram2dcontour/index.js"(X,H){"use strict";H.exports={attributes:cM(),supplyDefaults:c7(),crossTraceDefaults:a3(),calc:pM(),plot:l3().plot,layerName:"contourlayer",style:u3(),colorbar:c3(),hoverPoints:xM(),moduleType:"trace",name:"histogram2dcontour",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","contour","histogram","showLegend"],meta:{}}}}),p7=Ye({"lib/histogram2dcontour.js"(X,H){"use strict";H.exports=h7()}}),bM=Ye({"src/traces/contour/constraint_defaults.js"(X,H){"use strict";var g=jo(),x=fM(),A=Fn(),M=A.addOpacity,e=A.opacity,t=n3(),r=ta().isArrayOrTypedArray,o=t.CONSTRAINT_REDUCTION,a=t.COMPARISON_OPS2;H.exports=function(s,c,h,v,p,T){var l=c.contours,_,w,S,E=h("contours.operation");if(l._operation=o[E],i(h,l),E==="="?_=l.showlines=!0:(_=h("contours.showlines"),S=h("fillcolor",M((s.line||{}).color||p,.5))),_){var m=S&&e(S)?M(c.fillcolor,1):p;w=h("line.color",m),h("line.width",2),h("line.dash")}h("line.smoothing"),x(h,v,w,T)};function i(n,s){var c;a.indexOf(s.operation)===-1?(n("contours.value",[0,1]),r(s.value)?s.value.length>2?s.value=s.value.slice(2):s.length===0?s.value=[0,1]:s.length<2?(c=parseFloat(s.value[0]),s.value=[c,c+1]):s.value=[parseFloat(s.value[0]),parseFloat(s.value[1])]:g(s.value)&&(c=parseFloat(s.value),s.value=[c,c+1])):(n("contours.value",0),g(s.value)||(r(s.value)?s.value=parseFloat(s.value[0]):s.value=0))}}}),d7=Ye({"src/traces/contour/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Qd(),M=bM(),e=o3(),t=s3(),r=N_(),o=U_();H.exports=function(i,n,s,c){function h(l,_){return g.coerce(i,n,o,l,_)}function v(l){return g.coerce2(i,n,o,l)}var p=x(i,n,h,c);if(!p){n.visible=!1;return}A(i,n,c,h),h("xhoverformat"),h("yhoverformat"),h("text"),h("hovertext"),h("hoverongaps"),h("hovertemplate");var T=h("contours.type")==="constraint";h("connectgaps",g.isArray1D(n.z)),T?M(i,n,h,c,s):(e(i,n,h,v),t(i,n,h,c)),n.contours&&n.contours.coloring==="heatmap"&&r(h,c),h("zorder")}}}),v7=Ye({"src/traces/contour/index.js"(X,H){"use strict";H.exports={attributes:U_(),supplyDefaults:d7(),calc:pM(),plot:l3().plot,style:u3(),colorbar:c3(),hoverPoints:xM(),moduleType:"trace",name:"contour",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","contour","showLegend"],meta:{}}}}),m7=Ye({"lib/contour.js"(X,H){"use strict";H.exports=v7()}}),wM=Ye({"src/traces/scatterternary/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=Pc(),e=Pl(),t=tu(),r=Uh().dash,o=Oo().extendFlat,a=M.marker,i=M.line,n=a.line;H.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:o({},M.mode,{dflt:"markers"}),text:o({},M.text,{}),texttemplate:x({editType:"plot"},{keys:["a","b","c","text"]}),hovertext:o({},M.hovertext,{}),line:{color:i.color,width:i.width,dash:r,backoff:i.backoff,shape:o({},i.shape,{values:["linear","spline"]}),smoothing:i.smoothing,editType:"calc"},connectgaps:M.connectgaps,cliponaxis:M.cliponaxis,fill:o({},M.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:A(),marker:o({symbol:a.symbol,opacity:a.opacity,angle:a.angle,angleref:a.angleref,standoff:a.standoff,maxdisplayed:a.maxdisplayed,size:a.size,sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,line:o({width:n.width,editType:"calc"},t("marker.line")),gradient:a.gradient,editType:"calc"},t("marker")),textfont:M.textfont,textposition:M.textposition,selected:M.selected,unselected:M.unselected,hoverinfo:o({},e.hoverinfo,{flags:["a","b","c","text","name"]}),hoveron:M.hoveron,hovertemplate:g()}}}),g7=Ye({"src/traces/scatterternary/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=wM();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}var p=v("a"),T=v("b"),l=v("c"),_;if(p?(_=p.length,T?(_=Math.min(_,T.length),l&&(_=Math.min(_,l.length))):l?_=Math.min(_,l.length):_=0):T&&l&&(_=Math.min(T.length,l.length)),!_){s.visible=!1;return}s._length=_,v("sum"),v("text"),v("hovertext"),s.hoveron!=="fills"&&v("hovertemplate");var w=_<x.PTS_LINESONLY?"lines+markers":"lines";v("mode",w),A.hasMarkers(s)&&M(n,s,c,h,v,{gradient:!0}),A.hasLines(s)&&(e(n,s,c,h,v,{backoff:!0}),t(n,s,v),v("connectgaps")),A.hasText(s)&&(v("texttemplate"),r(n,s,h,v));var S=[];(A.hasMarkers(s)||A.hasText(s))&&(v("cliponaxis"),v("marker.maxdisplayed"),S.push("points")),v("fill"),s.fill!=="none"&&(o(n,s,c,v),A.hasLines(s)||t(n,s,v)),(s.fill==="tonext"||s.fill==="toself")&&S.push("fills"),v("hoveron",S.join("+")||"points"),g.coerceSelectionMarkerOpacity(s,v)}}}),y7=Ye({"src/traces/scatterternary/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot;return t.aLabel=g.tickText(r.aaxis,A.a,!0).text,t.bLabel=g.tickText(r.baxis,A.b,!0).text,t.cLabel=g.tickText(r.caxis,A.c,!0).text,t}}}),_7=Ye({"src/traces/scatterternary/calc.js"(X,H){"use strict";var g=jo(),x=Fd(),A=Av(),M=Od(),e=Bd().calcMarkerSize,t=["a","b","c"],r={a:["b","c"],b:["a","c"],c:["a","b"]};H.exports=function(a,i){var n=a._fullLayout[i.subplot],s=n.sum,c=i.sum||s,h={a:i.a,b:i.b,c:i.c},v=i.ids,p,T,l,_,w,S;for(p=0;p<t.length;p++)if(l=t[p],!h[l]){for(w=h[r[l][0]],S=h[r[l][1]],_=new Array(w.length),T=0;T<w.length;T++)_[T]=c-w[T]-S[T];h[l]=_}var E=i._length,m=new Array(E),b,d,u,y,f,P;for(p=0;p<E;p++)b=h.a[p],d=h.b[p],u=h.c[p],g(b)&&g(d)&&g(u)?(b=+b,d=+d,u=+u,y=s/(b+d+u),y!==1&&(b*=y,d*=y,u*=y),P=b,f=u-d,m[p]={x:f,y:P,a:b,b:d,c:u},v&&(m[p].id=v[p])):m[p]={x:!1,y:!1};return e(i,E),x(a,i),A(m,i),M(m,i),m}}}),x7=Ye({"src/traces/scatterternary/plot.js"(X,H){"use strict";var g=o1();H.exports=function(A,M,e){var t=M.plotContainer;t.select(".scatterlayer").selectAll("*").remove();for(var r=M.xaxis,o=M.yaxis,a={xaxis:r,yaxis:o,plot:t,layerClipId:M._hasClipOnAxisFalse?M.clipIdRelative:null},i=M.layers.frontplot.select("g.scatterlayer"),n=0;n<e.length;n++){var s=e[n];s.length&&(s[0].trace._xA=r,s[0].trace._yA=o)}g(A,a,e,i)}}}),b7=Ye({"src/traces/scatterternary/hover.js"(X,H){"use strict";var g=l1();H.exports=function(A,M,e,t){var r=g(A,M,e,t);if(!r||r[0].index===!1)return;var o=r[0];if(o.index===void 0){var a=1-o.y0/A.ya._length,i=A.xa._length,n=i*a/2,s=i-n;return o.x0=Math.max(Math.min(o.x0,s),n),o.x1=Math.max(Math.min(o.x1,s),n),r}var c=o.cd[o.index],h=o.trace,v=o.subplot;o.a=c.a,o.b=c.b,o.c=c.c,o.xLabelVal=void 0,o.yLabelVal=void 0;var p={};p[h.subplot]={_subplot:v};var T=h._module.formatLabels(c,h,p);o.aLabel=T.aLabel,o.bLabel=T.bLabel,o.cLabel=T.cLabel;var l=c.hi||h.hoverinfo,_=[];function w(E,m){_.push(E._hovertitle+": "+m)}if(!h.hovertemplate){var S=l.split("+");S.indexOf("all")!==-1&&(S=["a","b","c"]),S.indexOf("a")!==-1&&w(v.aaxis,o.aLabel),S.indexOf("b")!==-1&&w(v.baxis,o.bLabel),S.indexOf("c")!==-1&&w(v.caxis,o.cLabel)}return o.extraText=_.join("<br>"),o.hovertemplate=h.hovertemplate,r}}}),w7=Ye({"src/traces/scatterternary/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){if(A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),e[t]){var r=e[t];x.a=r.a,x.b=r.b,x.c=r.c}else x.a=A.a,x.b=A.b,x.c=A.c;return x}}}),T7=Ye({"src/plots/ternary/ternary.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=ta(),e=M.strTranslate,t=M._,r=Fn(),o=Bo(),a=wv(),i=Oo().extendFlat,n=Gu(),s=Co(),c=bp(),h=Lc(),v=Jd(),p=v.freeMode,T=v.rectMode,l=Xg(),_=ff().prepSelect,w=ff().selectOnClick,S=ff().clearOutline,E=ff().clearSelectionsCache,m=wh();function b(I,N){this.id=I.id,this.graphDiv=I.graphDiv,this.init(N),this.makeFramework(N),this.updateFx(N),this.aTickLayout=null,this.bTickLayout=null,this.cTickLayout=null}H.exports=b;var d=b.prototype;d.init=function(I){this.container=I._ternarylayer,this.defs=I._defs,this.layoutId=I._uid,this.traceHash={},this.layers={}},d.plot=function(I,N){var U=this,W=N[U.id],Q=N._size;U._hasClipOnAxisFalse=!1;for(var ue=0;ue<I.length;ue++){var se=I[ue][0].trace;if(se.cliponaxis===!1){U._hasClipOnAxisFalse=!0;break}}U.updateLayers(W),U.adjustLayout(W,Q),n.generalUpdatePerTraceModule(U.graphDiv,U,I,W),U.layers.plotbg.select("path").call(r.fill,W.bgcolor)},d.makeFramework=function(I){var N=this,U=N.graphDiv,W=I[N.id],Q=N.clipId="clip"+N.layoutId+N.id,ue=N.clipIdRelative="clip-relative"+N.layoutId+N.id;N.clipDef=M.ensureSingleById(I._clips,"clipPath",Q,function(se){se.append("path").attr("d","M0,0Z")}),N.clipDefRelative=M.ensureSingleById(I._clips,"clipPath",ue,function(se){se.append("path").attr("d","M0,0Z")}),N.plotContainer=M.ensureSingle(N.container,"g",N.id),N.updateLayers(W),o.setClipUrl(N.layers.backplot,Q,U),o.setClipUrl(N.layers.grids,Q,U)},d.updateFx=function(I){I._ternarylayer.selectAll("g.toplevel").style("cursor",I.dragmode==="pan"?"move":"crosshair")},d.updateLayers=function(I){var N=this,U=N.layers,W=["draglayer","plotbg","backplot","grids"];I.aaxis.layer==="below traces"&&W.push("aaxis","aline"),I.baxis.layer==="below traces"&&W.push("baxis","bline"),I.caxis.layer==="below traces"&&W.push("caxis","cline"),W.push("frontplot"),I.aaxis.layer==="above traces"&&W.push("aaxis","aline"),I.baxis.layer==="above traces"&&W.push("baxis","bline"),I.caxis.layer==="above traces"&&W.push("caxis","cline");var Q=N.plotContainer.selectAll("g.toplevel").data(W,String),ue=["agrid","bgrid","cgrid"];Q.enter().append("g").attr("class",function(se){return"toplevel "+se}).each(function(se){var he=g.select(this);U[se]=he,se==="frontplot"?he.append("g").classed("scatterlayer",!0):se==="backplot"?he.append("g").classed("maplayer",!0):se==="plotbg"?he.append("path").attr("d","M0,0Z"):se==="aline"||se==="bline"||se==="cline"?he.append("path"):se==="grids"&&ue.forEach(function(G){U[G]=he.append("g").classed("grid "+G,!0)})}),Q.order()};var u=Math.sqrt(4/3);d.adjustLayout=function(I,N){var U=this,W=I.domain,Q=(W.x[0]+W.x[1])/2,ue=(W.y[0]+W.y[1])/2,se=W.x[1]-W.x[0],he=W.y[1]-W.y[0],G=se*N.w,$=he*N.h,J=I.sum,Z=I.aaxis.min,re=I.baxis.min,ne=I.caxis.min,j,ee,ie,fe,be,Ae;G>u*$?(fe=$,ie=fe*u):(ie=G,fe=ie/u),be=se*ie/G,Ae=he*fe/$,j=N.l+N.w*Q-ie/2,ee=N.t+N.h*(1-ue)-fe/2,U.x0=j,U.y0=ee,U.w=ie,U.h=fe,U.sum=J,U.xaxis={type:"linear",range:[Z+2*ne-J,J-Z-2*re],domain:[Q-be/2,Q+be/2],_id:"x"},a(U.xaxis,U.graphDiv._fullLayout),U.xaxis.setScale(),U.xaxis.isPtWithinRange=function(ze){return ze.a>=U.aaxis.range[0]&&ze.a<=U.aaxis.range[1]&&ze.b>=U.baxis.range[1]&&ze.b<=U.baxis.range[0]&&ze.c>=U.caxis.range[1]&&ze.c<=U.caxis.range[0]},U.yaxis={type:"linear",range:[Z,J-re-ne],domain:[ue-Ae/2,ue+Ae/2],_id:"y"},a(U.yaxis,U.graphDiv._fullLayout),U.yaxis.setScale(),U.yaxis.isPtWithinRange=function(){return!0};var Be=U.yaxis.domain[0],Ie=U.aaxis=i({},I.aaxis,{range:[Z,J-re-ne],side:"left",tickangle:(+I.aaxis.tickangle||0)-30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(Ie,U.graphDiv._fullLayout),Ie.setScale();var Ze=U.baxis=i({},I.baxis,{range:[J-Z-ne,re],side:"bottom",domain:U.xaxis.domain,anchor:"free",position:0,_id:"x",_length:ie});a(Ze,U.graphDiv._fullLayout),Ze.setScale();var at=U.caxis=i({},I.caxis,{range:[J-Z-re,ne],side:"right",tickangle:(+I.caxis.tickangle||0)+30,domain:[Be,Be+Ae*u],anchor:"free",position:0,_id:"y",_length:ie});a(at,U.graphDiv._fullLayout),at.setScale();var it="M"+j+","+(ee+fe)+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDef.select("path").attr("d",it),U.layers.plotbg.select("path").attr("d",it);var et="M0,"+fe+"h"+ie+"l-"+ie/2+",-"+fe+"Z";U.clipDefRelative.select("path").attr("d",et);var lt=e(j,ee);U.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",lt),U.clipDefRelative.select("path").attr("transform",null);var Me=e(j-Ze._offset,ee+fe);U.layers.baxis.attr("transform",Me),U.layers.bgrid.attr("transform",Me);var ge=e(j+ie/2,ee)+"rotate(30)"+e(0,-Ie._offset);U.layers.aaxis.attr("transform",ge),U.layers.agrid.attr("transform",ge);var ce=e(j+ie/2,ee)+"rotate(-30)"+e(0,-at._offset);U.layers.caxis.attr("transform",ce),U.layers.cgrid.attr("transform",ce),U.drawAxes(!0),U.layers.aline.select("path").attr("d",Ie.showline?"M"+j+","+(ee+fe)+"l"+ie/2+",-"+fe:"M0,0").call(r.stroke,Ie.linecolor||"#000").style("stroke-width",(Ie.linewidth||0)+"px"),U.layers.bline.select("path").attr("d",Ze.showline?"M"+j+","+(ee+fe)+"h"+ie:"M0,0").call(r.stroke,Ze.linecolor||"#000").style("stroke-width",(Ze.linewidth||0)+"px"),U.layers.cline.select("path").attr("d",at.showline?"M"+(j+ie/2)+","+ee+"l"+ie/2+","+fe:"M0,0").call(r.stroke,at.linecolor||"#000").style("stroke-width",(at.linewidth||0)+"px"),U.graphDiv._context.staticPlot||U.initInteractions(),o.setClipUrl(U.layers.frontplot,U._hasClipOnAxisFalse?null:U.clipId,U.graphDiv)},d.drawAxes=function(I){var N=this,U=N.graphDiv,W=N.id.substr(7)+"title",Q=N.layers,ue=N.aaxis,se=N.baxis,he=N.caxis;if(N.drawAx(ue),N.drawAx(se),N.drawAx(he),I){var G=Math.max(ue.showticklabels?ue.tickfont.size/2:0,(he.showticklabels?he.tickfont.size*.75:0)+(he.ticks==="outside"?he.ticklen*.87:0)),$=(se.showticklabels?se.tickfont.size:0)+(se.ticks==="outside"?se.ticklen:0)+3;Q["a-title"]=l.draw(U,"a"+W,{propContainer:ue,propName:N.id+".aaxis.title",placeholder:t(U,"Click to enter Component A title"),attributes:{x:N.x0+N.w/2,y:N.y0-ue.title.font.size/3-G,"text-anchor":"middle"}}),Q["b-title"]=l.draw(U,"b"+W,{propContainer:se,propName:N.id+".baxis.title",placeholder:t(U,"Click to enter Component B title"),attributes:{x:N.x0-$,y:N.y0+N.h+se.title.font.size*.83+$,"text-anchor":"middle"}}),Q["c-title"]=l.draw(U,"c"+W,{propContainer:he,propName:N.id+".caxis.title",placeholder:t(U,"Click to enter Component C title"),attributes:{x:N.x0+N.w+$,y:N.y0+N.h+he.title.font.size*.83+$,"text-anchor":"middle"}})}},d.drawAx=function(I){var N=this,U=N.graphDiv,W=I._name,Q=W.charAt(0),ue=I._id,se=N.layers[W],he=30,G=Q+"tickLayout",$=y(I);N[G]!==$&&(se.selectAll("."+ue+"tick").remove(),N[G]=$),I.setScale();var J=s.calcTicks(I),Z=s.clipEnds(I,J),re=s.makeTransTickFn(I),ne=s.getTickSigns(I)[2],j=M.deg2rad(he),ee=ne*(I.linewidth||1)/2,ie=ne*I.ticklen,fe=N.w,be=N.h,Ae=Q==="b"?"M0,"+ee+"l"+Math.sin(j)*ie+","+Math.cos(j)*ie:"M"+ee+",0l"+Math.cos(j)*ie+","+-Math.sin(j)*ie,Be={a:"M0,0l"+be+",-"+fe/2,b:"M0,0l-"+fe/2+",-"+be,c:"M0,0l-"+be+","+fe/2}[Q];s.drawTicks(U,I,{vals:I.ticks==="inside"?Z:J,layer:se,path:Ae,transFn:re,crisp:!1}),s.drawGrid(U,I,{vals:Z,layer:N.layers[Q+"grid"],path:Be,transFn:re,crisp:!1}),s.drawLabels(U,I,{vals:J,layer:se,transFn:re,labelFns:s.makeLabelFns(I,0,he)})};function y(I){return I.ticks+String(I.ticklen)+String(I.showticklabels)}var f=m.MINZOOM/2+.87,P="m-0.87,.5h"+f+"v3h-"+(f+5.2)+"l"+(f/2+2.6)+",-"+(f*.87+4.5)+"l2.6,1.5l-"+f/2+","+f*.87+"Z",L="m0.87,.5h-"+f+"v3h"+(f+5.2)+"l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-2.6,1.5l"+f/2+","+f*.87+"Z",z="m0,1l"+f/2+","+f*.87+"l2.6,-1.5l-"+(f/2+2.6)+",-"+(f*.87+4.5)+"l-"+(f/2+2.6)+","+(f*.87+4.5)+"l2.6,1.5l"+f/2+",-"+f*.87+"Z",F="m0.5,0.5h5v-2h-5v-5h-2v5h-5v2h5v5h2Z",B=!0;d.clearOutline=function(){E(this.dragOptions),S(this.dragOptions.gd)},d.initInteractions=function(){var I=this,N=I.layers.plotbg.select("path").node(),U=I.graphDiv,W=U._fullLayout._zoomlayer,Q,ue;this.dragOptions={element:N,gd:U,plotinfo:{id:I.id,domain:U._fullLayout[I.id].domain,xaxis:I.xaxis,yaxis:I.yaxis},subplot:I.id,prepFn:function(Me,ge,ce){I.dragOptions.xaxes=[I.xaxis],I.dragOptions.yaxes=[I.yaxis],Q=U._fullLayout._invScaleX,ue=U._fullLayout._invScaleY;var ze=I.dragOptions.dragmode=U._fullLayout.dragmode;p(ze)?I.dragOptions.minDrag=1:I.dragOptions.minDrag=void 0,ze==="zoom"?(I.dragOptions.moveFn=Ze,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=at,be(Me,ge,ce)):ze==="pan"?(I.dragOptions.moveFn=et,I.dragOptions.clickFn=fe,I.dragOptions.doneFn=lt,it(),I.clearOutline(U)):(T(ze)||p(ze))&&_(Me,ge,ce,I.dragOptions,ze)}};var se,he,G,$,J,Z,re,ne,j,ee;function ie(Me){var ge={};return ge[I.id+".aaxis.min"]=Me.a,ge[I.id+".baxis.min"]=Me.b,ge[I.id+".caxis.min"]=Me.c,ge}function fe(Me,ge){var ce=U._fullLayout.clickmode;O(U),Me===2&&(U.emit("plotly_doubleclick",null),A.call("_guiRelayout",U,ie({a:0,b:0,c:0}))),ce.indexOf("select")>-1&&Me===1&&w(ge,U,[I.xaxis],[I.yaxis],I.id,I.dragOptions),ce.indexOf("event")>-1&&h.click(U,ge,I.id)}function be(Me,ge,ce){var ze=N.getBoundingClientRect();se=ge-ze.left,he=ce-ze.top,U._fullLayout._calcInverseTransform(U);var tt=U._fullLayout._invTransform,nt=M.apply3DTransform(tt)(se,he);se=nt[0],he=nt[1],G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G,$=I.aaxis.range[1]-G.a,Z=x(I.graphDiv._fullLayout[I.id].bgcolor).getLuminance(),re="M0,"+I.h+"L"+I.w/2+", 0L"+I.w+","+I.h+"Z",ne=!1,j=W.append("path").attr("class","zoombox").attr("transform",e(I.x0,I.y0)).style({fill:Z>.2?"rgba(0,0,0,0)":"rgba(255,255,255,0)","stroke-width":0}).attr("d",re),ee=W.append("path").attr("class","zoombox-corners").attr("transform",e(I.x0,I.y0)).style({fill:r.background,stroke:r.defaultLine,"stroke-width":1,opacity:0}).attr("d","M0,0Z"),I.clearOutline(U)}function Ae(Me,ge){return 1-ge/I.h}function Be(Me,ge){return 1-(Me+(I.h-ge)/Math.sqrt(3))/I.w}function Ie(Me,ge){return(Me-(I.h-ge)/Math.sqrt(3))/I.w}function Ze(Me,ge){var ce=se+Me*Q,ze=he+ge*ue,tt=Math.max(0,Math.min(1,Ae(se,he),Ae(ce,ze))),nt=Math.max(0,Math.min(1,Be(se,he),Be(ce,ze))),Qe=Math.max(0,Math.min(1,Ie(se,he),Ie(ce,ze))),Ct=(tt/2+Qe)*I.w,St=(1-tt/2-nt)*I.w,Ot=(Ct+St)/2,jt=St-Ct,ur=(1-tt)*I.h,ar=ur-jt/u;jt<m.MINZOOM?(J=G,j.attr("d",re),ee.attr("d","M0,0Z")):(J={a:G.a+tt*$,b:G.b+nt*$,c:G.c+Qe*$},j.attr("d",re+"M"+Ct+","+ur+"H"+St+"L"+Ot+","+ar+"L"+Ct+","+ur+"Z"),ee.attr("d","M"+se+","+he+F+"M"+Ct+","+ur+P+"M"+St+","+ur+L+"M"+Ot+","+ar+z)),ne||(j.transition().style("fill",Z>.2?"rgba(0,0,0,0.4)":"rgba(255,255,255,0.3)").duration(200),ee.transition().style("opacity",1).duration(200),ne=!0),U.emit("plotly_relayouting",ie(J))}function at(){O(U),J!==G&&(A.call("_guiRelayout",U,ie(J)),B&&U.data&&U._context.showTips&&(M.notifier(t(U,"Double-click to zoom back out"),"long"),B=!1))}function it(){G={a:I.aaxis.range[0],b:I.baxis.range[1],c:I.caxis.range[1]},J=G}function et(Me,ge){var ce=Me/I.xaxis._m,ze=ge/I.yaxis._m;J={a:G.a-ze,b:G.b+(ce+ze)/2,c:G.c-(ce-ze)/2};var tt=[J.a,J.b,J.c].sort(M.sorterAsc),nt={a:tt.indexOf(J.a),b:tt.indexOf(J.b),c:tt.indexOf(J.c)};tt[0]<0&&(tt[1]+tt[0]/2<0?(tt[2]+=tt[0]+tt[1],tt[0]=tt[1]=0):(tt[2]+=tt[0]/2,tt[1]+=tt[0]/2,tt[0]=0),J={a:tt[nt.a],b:tt[nt.b],c:tt[nt.c]},ge=(G.a-J.a)*I.yaxis._m,Me=(G.c-J.c-G.b+J.b)*I.xaxis._m);var Qe=e(I.x0+Me,I.y0+ge);I.plotContainer.selectAll(".scatterlayer,.maplayer").attr("transform",Qe);var Ct=e(-Me,-ge);I.clipDefRelative.select("path").attr("transform",Ct),I.aaxis.range=[J.a,I.sum-J.b-J.c],I.baxis.range=[I.sum-J.a-J.c,J.b],I.caxis.range=[I.sum-J.a-J.b,J.c],I.drawAxes(!1),I._hasClipOnAxisFalse&&I.plotContainer.select(".scatterlayer").selectAll(".trace").call(o.hideOutsideRangePoints,I),U.emit("plotly_relayouting",ie(J))}function lt(){A.call("_guiRelayout",U,ie(J))}N.onmousemove=function(Me){h.hover(U,Me,I.id),U._fullLayout._lasthover=N,U._fullLayout._hoversubplot=I.id},N.onmouseout=function(Me){U._dragging||c.unhover(U,Me)},c.init(this.dragOptions)};function O(I){g.select(I).selectAll(".zoombox,.js-zoombox-backdrop,.js-zoombox-menu,.zoombox-corners").remove()}}}),TM=Ye({"src/plots/ternary/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Vh(),M=Ou().overrideAll,e=Oo().extendFlat,t={title:{text:A.title.text,font:A.title.font},color:A.color,tickmode:A.minor.tickmode,nticks:e({},A.nticks,{dflt:6,min:1}),tick0:A.tick0,dtick:A.dtick,tickvals:A.tickvals,ticktext:A.ticktext,ticks:A.ticks,ticklen:A.ticklen,tickwidth:A.tickwidth,tickcolor:A.tickcolor,ticklabelstep:A.ticklabelstep,showticklabels:A.showticklabels,labelalias:A.labelalias,showtickprefix:A.showtickprefix,tickprefix:A.tickprefix,showticksuffix:A.showticksuffix,ticksuffix:A.ticksuffix,showexponent:A.showexponent,exponentformat:A.exponentformat,minexponent:A.minexponent,separatethousands:A.separatethousands,tickfont:A.tickfont,tickangle:A.tickangle,tickformat:A.tickformat,tickformatstops:A.tickformatstops,hoverformat:A.hoverformat,showline:e({},A.showline,{dflt:!0}),linecolor:A.linecolor,linewidth:A.linewidth,showgrid:e({},A.showgrid,{dflt:!0}),gridcolor:A.gridcolor,gridwidth:A.gridwidth,griddash:A.griddash,layer:A.layer,min:{valType:"number",dflt:0,min:0}},r=H.exports=M({domain:x({name:"ternary"}),bgcolor:{valType:"color",dflt:g.background},sum:{valType:"number",dflt:1,min:0},aaxis:t,baxis:t,caxis:t},"plot","from-root");r.uirevision={valType:"any",editType:"none"},r.aaxis.uirevision=r.baxis.uirevision=r.caxis.uirevision={valType:"any",editType:"none"}}}),ig=Ye({"src/plots/subplot_defaults.js"(X,H){"use strict";var g=ta(),x=cl(),A=Wu().defaults;H.exports=function(e,t,r,o){var a=o.type,i=o.attributes,n=o.handleDefaults,s=o.partition||"x",c=t._subplots[a],h=c.length,v=h&&c[0].replace(/\d+$/,""),p,T;function l(E,m){return g.coerce(p,T,i,E,m)}for(var _=0;_<h;_++){var w=c[_];e[w]?p=e[w]:p=e[w]={},T=x.newContainer(t,w,v),o.noUirevision||l("uirevision",t.uirevision);var S={};S[s]=[_/h,(_+1)/h],A(T,t,l,S),o.id=w,n(p,T,l,o)}}}}),A7=Ye({"src/plots/ternary/layout_defaults.js"(X,H){"use strict";var g=Fn(),x=cl(),A=ta(),M=ig(),e=$m(),t=Qm(),r=e1(),o=Zg(),a=I_(),i=TM(),n=["aaxis","baxis","caxis"];H.exports=function(v,p,T){M(v,p,T,{type:"ternary",attributes:i,handleDefaults:s,font:p.font,paper_bgcolor:p.paper_bgcolor})};function s(h,v,p,T){var l=p("bgcolor"),_=p("sum");T.bgColor=g.combine(l,T.paper_bgcolor);for(var w,S,E,m=0;m<n.length;m++)w=n[m],S=h[w]||{},E=x.newContainer(v,w),E._name=w,c(S,E,T,v);var b=v.aaxis,d=v.baxis,u=v.caxis;b.min+d.min+u.min>=_&&(b.min=0,d.min=0,u.min=0,h.aaxis&&delete h.aaxis.min,h.baxis&&delete h.baxis.min,h.caxis&&delete h.caxis.min)}function c(h,v,p,T){var l=i[v._name];function _(y,f){return A.coerce(h,v,l,y,f)}_("uirevision",T.uirevision),v.type="linear";var w=_("color"),S=w!==l.color.dflt?w:p.font.color,E=v._name,m=E.charAt(0).toUpperCase(),b="Component "+m,d=_("title.text",b);v._hovertitle=d===b?d:m,A.coerceFont(_,"title.font",p.font,{overrideDflt:{size:A.bigFont(p.font.size),color:S}}),_("min"),o(h,v,_,"linear"),t(h,v,_,"linear"),e(h,v,_,"linear",{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0}),r(h,v,_,{outerTicks:!0});var u=_("showticklabels");u&&(A.coerceFont(_,"tickfont",p.font,{overrideDflt:{color:S}}),_("tickangle"),_("tickformat")),a(h,v,_,{dfltColor:w,bgColor:p.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:l}),_("hoverformat"),_("layer")}}}),S7=Ye({"src/plots/ternary/index.js"(X){"use strict";var H=T7(),g=jh().getSubplotCalcData,x=ta().counterRegex,A="ternary";X.name=A;var M=X.attr="subplot";X.idRoot=A,X.idRegex=X.attrRegex=x(A);var e=X.attributes={};e[M]={valType:"subplotid",dflt:"ternary",editType:"calc"},X.layoutAttributes=TM(),X.supplyLayoutDefaults=A7(),X.plot=function(r){for(var o=r._fullLayout,a=r.calcdata,i=o._subplots[A],n=0;n<i.length;n++){var s=i[n],c=g(a,A,s),h=o[s]._subplot;h||(h=new H({id:s,graphDiv:r,container:o._ternarylayer.node()},o),o[s]._subplot=h),h.plot(c,o,r._promises)}},X.clean=function(t,r,o,a){for(var i=a._subplots[A]||[],n=0;n<i.length;n++){var s=i[n],c=a[s]._subplot;!r[s]&&c&&(c.plotContainer.remove(),c.clipDef.remove(),c.clipDefRelative.remove(),c.layers["a-title"].remove(),c.layers["b-title"].remove(),c.layers["c-title"].remove())}},X.updateFx=function(t){var r=t._fullLayout;r._ternarylayer.selectAll("g.toplevel").style("cursor",r.dragmode==="pan"?"move":"crosshair")}}}),M7=Ye({"src/traces/scatterternary/index.js"(X,H){"use strict";H.exports={attributes:wM(),supplyDefaults:g7(),colorbar:cp(),formatLabels:y7(),calc:_7(),plot:x7(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:b7(),selectPoints:u1(),eventData:w7(),moduleType:"trace",name:"scatterternary",basePlotModule:S7(),categories:["ternary","symbols","showLegend","scatter-like"],meta:{}}}}),E7=Ye({"lib/scatterternary.js"(X,H){"use strict";H.exports=M7()}}),AM=Ye({"src/traces/violin/attributes.js"(X,H){"use strict";var g=F_(),x=Oo().extendFlat,A=Cc().axisHoverFormat;H.exports={y:g.y,x:g.x,x0:g.x0,y0:g.y0,xhoverformat:A("x"),yhoverformat:A("y"),name:x({},g.name,{}),orientation:x({},g.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:g.fillcolor,points:x({},g.boxpoints,{}),jitter:x({},g.jitter,{}),pointpos:x({},g.pointpos,{}),width:x({},g.width,{}),marker:g.marker,text:g.text,hovertext:g.hovertext,hovertemplate:g.hovertemplate,quartilemethod:g.quartilemethod,box:{visible:{valType:"boolean",dflt:!1,editType:"plot"},width:{valType:"number",min:0,max:1,dflt:.25,editType:"plot"},fillcolor:{valType:"color",editType:"style"},line:{color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"style"},editType:"plot"},meanline:{visible:{valType:"boolean",dflt:!1,editType:"plot"},color:{valType:"color",editType:"style"},width:{valType:"number",min:0,editType:"style"},editType:"plot"},side:{valType:"enumerated",values:["both","positive","negative"],dflt:"both",editType:"calc"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,selected:g.selected,unselected:g.unselected,hoveron:{valType:"flaglist",flags:["violins","points","kde"],dflt:"violins+points+kde",extras:["all"],editType:"style"},zorder:g.zorder}}}),SM=Ye({"src/traces/violin/layout_attributes.js"(X,H){"use strict";var g=O_(),x=ta().extendFlat;H.exports={violinmode:x({},g.boxmode,{}),violingap:x({},g.boxgap,{}),violingroupgap:x({},g.boxgroupgap,{})}}}),k7=Ye({"src/traces/violin/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=B_(),M=AM();H.exports=function(t,r,o,a){function i(u,y){return g.coerce(t,r,M,u,y)}function n(u,y){return g.coerce2(t,r,M,u,y)}if(A.handleSampleDefaults(t,r,i,a),r.visible!==!1){i("bandwidth"),i("side");var s=i("width");s||(i("scalegroup",r.name),i("scalemode"));var c=i("span"),h;Array.isArray(c)&&(h="manual"),i("spanmode",h);var v=i("line.color",(t.marker||{}).color||o),p=i("line.width"),T=i("fillcolor",x.addOpacity(r.line.color,.5));A.handlePointsDefaults(t,r,i,{prefix:""});var l=n("box.width"),_=n("box.fillcolor",T),w=n("box.line.color",v),S=n("box.line.width",p),E=i("box.visible",!!(l||_||w||S));E||(r.box={visible:!1});var m=n("meanline.color",v),b=n("meanline.width",p),d=i("meanline.visible",!!(m||b));d||(r.meanline={visible:!1}),i("quartilemethod"),i("zorder")}}}}),C7=Ye({"src/traces/violin/layout_defaults.js"(X,H){"use strict";var g=ta(),x=SM(),A=V2();H.exports=function(e,t,r){function o(a,i){return g.coerce(e,t,x,a,i)}A._supply(e,t,r,o,"violin")}}}),f3=Ye({"src/traces/violin/helpers.js"(X){"use strict";var H=ta(),g={gaussian:function(x){return 1/Math.sqrt(2*Math.PI)*Math.exp(-.5*x*x)}};X.makeKDE=function(x,A,M){var e=M.length,t=g.gaussian,r=x.bandwidth,o=1/(e*r);return function(a){for(var i=0,n=0;n<e;n++)i+=t((a-M[n])/r);return o*i}},X.getPositionOnKdePath=function(x,A,M){var e,t;A.orientation==="h"?(e="y",t="x"):(e="x",t="y");var r=H.findPointOnPath(x.path,M,t,{pathLength:x.pathLength}),o=x.posCenterPx,a=r[e],i=A.side==="both"?2*o-a:o;return[a,i]},X.getKdeValue=function(x,A,M){var e=x.pts.map(X.extractVal),t=X.makeKDE(x,A,e);return t(M)/x.posDensityScale},X.extractVal=function(x){return x.v}}}),L7=Ye({"src/traces/violin/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=KS(),M=f3(),e=ks().BADNUM;H.exports=function(i,n){var s=A(i,n);if(s[0].t.empty)return s;for(var c=i._fullLayout,h=x.getFromId(i,n[n.orientation==="h"?"xaxis":"yaxis"]),v=1/0,p=-1/0,T=0,l=0,_=0;_<s.length;_++){var w=s[_],S=w.pts.map(M.extractVal),E=w.bandwidth=r(n,w,S),m=w.span=o(n,w,h,E);if(w.min===w.max&&E===0)m=w.span=[w.min,w.max],w.density=[{v:1,t:m[0]}],w.bandwidth=E,T=Math.max(T,1);else{var b=m[1]-m[0],d=Math.ceil(b/(E/3)),u=b/d;if(!isFinite(u)||!isFinite(d))return g.error("Something went wrong with computing the violin span"),s[0].t.empty=!0,s;var y=M.makeKDE(w,n,S);w.density=new Array(d);for(var f=0,P=m[0];P<m[1]+u/2;f++,P+=u){var L=y(P);w.density[f]={v:L,t:P},T=Math.max(T,L)}}l=Math.max(l,S.length),v=Math.min(v,m[0]),p=Math.max(p,m[1])}var z=x.findExtremes(h,[v,p],{padded:!0});if(n._extremes[h._id]=z,n.width)s[0].t.maxKDE=T;else{var F=c._violinScaleGroupStats,B=n.scalegroup,O=F[B];O?(O.maxKDE=Math.max(O.maxKDE,T),O.maxCount=Math.max(O.maxCount,l)):F[B]={maxKDE:T,maxCount:l}}return s[0].t.labels.kde=g._(i,"kde:"),s};function t(a,i,n){var s=Math.min(i,n/1.349);return 1.059*s*Math.pow(a,-.2)}function r(a,i,n){var s=i.max-i.min;if(!s)return a.bandwidth?a.bandwidth:0;if(a.bandwidth)return Math.max(a.bandwidth,s/1e4);var c=n.length,h=g.stdev(n,c-1,i.mean);return Math.max(t(c,h,i.q3-i.q1),s/100)}function o(a,i,n,s){var c=a.spanmode,h=a.span||[],v=[i.min,i.max],p=[i.min-2*s,i.max+2*s],T;function l(w){var S=h[w],E=n.type==="multicategory"?n.r2c(S):n.d2c(S,0,a[i.valLetter+"calendar"]);return E===e?p[w]:E}c==="soft"?T=p:c==="hard"?T=v:T=[l(0),l(1)];var _={type:"linear",range:T};return x.setConvert(_),_.cleanRange(),T}}}),P7=Ye({"src/traces/violin/cross_trace_calc.js"(X,H){"use strict";var g=q2().setPositionOffset,x=["v","h"];H.exports=function(M,e){for(var t=M.calcdata,r=e.xaxis,o=e.yaxis,a=0;a<x.length;a++){for(var i=x[a],n=i==="h"?o:r,s=[],c=0;c<t.length;c++){var h=t[c],v=h[0].t,p=h[0].trace;p.visible===!0&&p.type==="violin"&&!v.empty&&p.orientation===i&&p.xaxis===r._id&&p.yaxis===o._id&&s.push(c)}g("violin",M,s,n)}}}}),I7=Ye({"src/traces/violin/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=H2(),e=DS(),t=f3();H.exports=function(o,a,i,n){var s=o._context.staticPlot,c=o._fullLayout,h=a.xaxis,v=a.yaxis;function p(T,l){var _=e(T,{xaxis:h,yaxis:v,trace:l,connectGaps:!0,baseTolerance:.75,shape:"spline",simplify:!0,linearized:!0});return A.smoothopen(_[0],1)}x.makeTraceGroups(n,i,"trace violins").each(function(T){var l=g.select(this),_=T[0],w=_.t,S=_.trace;if(S.visible!==!0||w.empty){l.remove();return}var E=w.bPos,m=w.bdPos,b=a[w.valLetter+"axis"],d=a[w.posLetter+"axis"],u=S.side==="both",y=u||S.side==="positive",f=u||S.side==="negative",P=l.selectAll("path.violin").data(x.identity);P.enter().append("path").style("vector-effect",s?"none":"non-scaling-stroke").attr("class","violin"),P.exit().remove(),P.each(function(U){var W=g.select(this),Q=U.density,ue=Q.length,se=d.c2l(U.pos+E,!0),he=d.l2p(se),G;if(S.width)G=w.maxKDE/m;else{var $=c._violinScaleGroupStats[S.scalegroup];G=S.scalemode==="count"?$.maxKDE/m*($.maxCount/U.pts.length):$.maxKDE/m}var J,Z,re,ne,j,ee,ie;if(y){for(ee=new Array(ue),ne=0;ne<ue;ne++)ie=ee[ne]={},ie[w.posLetter]=se+Q[ne].v/G,ie[w.valLetter]=b.c2l(Q[ne].t,!0);J=p(ee,S)}if(f){for(ee=new Array(ue),j=0,ne=ue-1;j<ue;j++,ne--)ie=ee[j]={},ie[w.posLetter]=se-Q[ne].v/G,ie[w.valLetter]=b.c2l(Q[ne].t,!0);Z=p(ee,S)}if(u)re=J+"L"+Z.substr(1)+"Z";else{var fe=[he,b.c2p(Q[0].t)],be=[he,b.c2p(Q[ue-1].t)];S.orientation==="h"&&(fe.reverse(),be.reverse()),y?re="M"+fe+"L"+J.substr(1)+"L"+be:re="M"+be+"L"+Z.substr(1)+"L"+fe}W.attr("d",re),U.posCenterPx=he,U.posDensityScale=G*m,U.path=W.node(),U.pathLength=U.path.getTotalLength()/(u?2:1)});var L=S.box,z=L.width,F=(L.line||{}).width,B,O;u?(B=m*z,O=0):y?(B=[0,m*z/2],O=F*{x:1,y:-1}[w.posLetter]):(B=[m*z/2,0],O=F*{x:-1,y:1}[w.posLetter]),M.plotBoxAndWhiskers(l,{pos:d,val:b},S,{bPos:E,bdPos:B,bPosPxOffset:O}),M.plotBoxMean(l,{pos:d,val:b},S,{bPos:E,bdPos:B,bPosPxOffset:O});var I;!S.box.visible&&S.meanline.visible&&(I=x.identity);var N=l.selectAll("path.meanline").data(I||[]);N.enter().append("path").attr("class","meanline").style("fill","none").style("vector-effect",s?"none":"non-scaling-stroke"),N.exit().remove(),N.each(function(U){var W=b.c2p(U.mean,!0),Q=t.getPositionOnKdePath(U,S,W);g.select(this).attr("d",S.orientation==="h"?"M"+W+","+Q[0]+"V"+Q[1]:"M"+Q[0]+","+W+"H"+Q[1])}),M.plotPoints(l,{x:h,y:v},S,w)})}}}),R7=Ye({"src/traces/violin/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ed().stylePoints;H.exports=function(e){var t=g.select(e).selectAll("g.trace.violins");t.style("opacity",function(r){return r[0].trace.opacity}),t.each(function(r){var o=r[0].trace,a=g.select(this),i=o.box||{},n=i.line||{},s=o.meanline||{},c=s.width;a.selectAll("path.violin").style("stroke-width",o.line.width+"px").call(x.stroke,o.line.color).call(x.fill,o.fillcolor),a.selectAll("path.box").style("stroke-width",n.width+"px").call(x.stroke,n.color).call(x.fill,i.fillcolor);var h={"stroke-width":c+"px","stroke-dasharray":2*c+"px,"+c+"px"};a.selectAll("path.mean").style(h).call(x.stroke,s.color),a.selectAll("path.meanline").style(h).call(x.stroke,s.color),A(a,o,e)})}}}),D7=Ye({"src/traces/violin/hover.js"(X,H){"use strict";var g=Fn(),x=ta(),A=Co(),M=JS(),e=f3();H.exports=function(r,o,a,i,n){n||(n={});var s=n.hoverLayer,c=r.cd,h=c[0].trace,v=h.hoveron,p=v.indexOf("violins")!==-1,T=v.indexOf("kde")!==-1,l=[],_,w;if(p||T){var S=M.hoverOnBoxes(r,o,a,i);if(T&&S.length>0){var E=r.xa,m=r.ya,b,d,u,y,f;h.orientation==="h"?(f=o,b="y",u=m,d="x",y=E):(f=a,b="x",u=E,d="y",y=m);var P=c[r.index];if(f>=P.span[0]&&f<=P.span[1]){var L=x.extendFlat({},r),z=y.c2p(f,!0),F=e.getKdeValue(P,h,f),B=e.getPositionOnKdePath(P,h,z),O=u._offset,I=u._length;L[b+"0"]=B[0],L[b+"1"]=B[1],L[d+"0"]=L[d+"1"]=z,L[d+"Label"]=d+": "+A.hoverLabelText(y,f,h[d+"hoverformat"])+", "+c[0].t.labels.kde+" "+F.toFixed(3);for(var N=0,U=0;U<S.length;U++)if(S[U].attr==="med"){N=U;break}L.spikeDistance=S[N].spikeDistance;var W=b+"Spike";L[W]=S[N][W],S[N].spikeDistance=void 0,S[N][W]=void 0,L.hovertemplate=!1,l.push(L),w={},w[b+"1"]=x.constrain(O+B[0],O,O+I),w[b+"2"]=x.constrain(O+B[1],O,O+I),w[d+"1"]=w[d+"2"]=y._offset+z}}p&&(l=l.concat(S))}v.indexOf("points")!==-1&&(_=M.hoverOnPoints(r,o,a));var Q=s.selectAll(".violinline-"+h.uid).data(w?[0]:[]);return Q.enter().append("line").classed("violinline-"+h.uid,!0).attr("stroke-width",1.5),Q.exit().remove(),Q.attr(w).call(g.stroke,r.color),i==="closest"?_?[_]:l:(_&&l.push(_),l)}}}),z7=Ye({"src/traces/violin/index.js"(X,H){"use strict";H.exports={attributes:AM(),layoutAttributes:SM(),supplyDefaults:k7(),crossTraceDefaults:B_().crossTraceDefaults,supplyLayoutDefaults:C7(),calc:L7(),crossTraceCalc:P7(),plot:I7(),style:R7(),styleOnSelect:ed().styleOnSelect,hoverPoints:D7(),selectPoints:$S(),moduleType:"trace",name:"violin",basePlotModule:Pf(),categories:["cartesian","svg","symbols","oriented","box-violin","showLegend","violinLayout","zoomScale"],meta:{}}}}),F7=Ye({"lib/violin.js"(X,H){"use strict";H.exports=z7()}}),O7=Ye({"src/traces/funnel/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["percentInitial","percentPrevious","percentTotal"]}}}),MM=Ye({"src/traces/funnel/attributes.js"(X,H){"use strict";var g=Sv(),x=Pc().line,A=Pl(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=O7(),o=Oo().extendFlat,a=Fn();H.exports={x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:M("x"),yhoverformat:M("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.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:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),text:g.text,textposition:g.textposition,insidetextanchor:o({},g.insidetextanchor,{dflt:"middle"}),textangle:o({},g.textangle,{dflt:0}),textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:o({},g.orientation,{}),offset:o({},g.offset,{arrayOk:!1}),width:o({},g.width,{arrayOk:!1}),marker:i(),connector:{fillcolor:{valType:"color",editType:"style"},line:{color:o({},x.color,{dflt:a.defaultLine}),width:o({},x.width,{dflt:0,editType:"plot"}),dash:x.dash,editType:"style"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder};function i(){var n=o({},g.marker);return delete n.pattern,delete n.cornerradius,n}}}),EM=Ye({"src/traces/funnel/layout_attributes.js"(X,H){"use strict";H.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"}}}}),kM=Ye({"src/traces/funnel/defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=gd().handleText,M=i1(),e=Qd(),t=MM(),r=Fn();function o(n,s,c,h){function v(E,m){return g.coerce(n,s,t,E,m)}var p=M(n,s,h,v);if(!p){s.visible=!1;return}e(n,s,h,v),v("xhoverformat"),v("yhoverformat"),v("orientation",s.y&&!s.x?"v":"h"),v("offset"),v("width");var T=v("text");v("hovertext"),v("hovertemplate");var l=v("textposition");A(n,s,h,v,l,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),s.textposition!=="none"&&!s.texttemplate&&v("textinfo",g.isArrayOrTypedArray(T)?"text+value":"value");var _=v("marker.color",c);v("marker.line.color",r.defaultLine),v("marker.line.width");var w=v("connector.visible");if(w){v("connector.fillcolor",a(_));var S=v("connector.line.width");S&&(v("connector.line.color"),v("connector.line.dash"))}v("zorder")}function a(n){var s=g.isArrayOrTypedArray(n)?"#000":n;return r.addOpacity(s,.5*r.opacity(s))}function i(n,s){var c,h;function v(T){return g.coerce(h._input,h,t,T)}for(var p=0;p<n.length;p++)h=n[p],h.type==="funnel"&&(c=h._input,x(c,h,s,v,s.funnelmode))}H.exports={supplyDefaults:o,crossTraceDefaults:i}}}),B7=Ye({"src/traces/funnel/layout_defaults.js"(X,H){"use strict";var g=ta(),x=EM();H.exports=function(A,M,e){var t=!1;function r(i,n){return g.coerce(A,M,x,i,n)}for(var o=0;o<e.length;o++){var a=e[o];if(a.visible&&a.type==="funnel"){t=!0;break}}t&&(r("funnelmode"),r("funnelgap",.2),r("funnelgroupgap"))}}}),N7=Ye({"src/traces/funnel/arrays_to_calcdata.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){for(var e=0;e<A.length;e++)A[e].i=e;g.mergeArray(M.text,A,"tx"),g.mergeArray(M.hovertext,A,"htx");var t=M.marker;if(t){g.mergeArray(t.opacity,A,"mo"),g.mergeArray(t.color,A,"mc");var r=t.line;r&&(g.mergeArray(r.color,A,"mlc"),g.mergeArrayCastPositive(r.width,A,"mlw"))}}}}),U7=Ye({"src/traces/funnel/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=N7(),M=Od(),e=ks().BADNUM;H.exports=function(o,a){var i=g.getFromId(o,a.xaxis||"x"),n=g.getFromId(o,a.yaxis||"y"),s,c,h,v,p,T,l,_;a.orientation==="h"?(s=i.makeCalcdata(a,"x"),h=n.makeCalcdata(a,"y"),v=x(a,n,"y",h),p=!!a.yperiodalignment,T="y"):(s=n.makeCalcdata(a,"y"),h=i.makeCalcdata(a,"x"),v=x(a,i,"x",h),p=!!a.xperiodalignment,T="x"),c=v.vals;var w=Math.min(c.length,s.length),S=new Array(w);for(a._base=[],l=0;l<w;l++){s[l]<0&&(s[l]=e);var E=!1;s[l]!==e&&l+1<w&&s[l+1]!==e&&(E=!0),_=S[l]={p:c[l],s:s[l],cNext:E},a._base[l]=-.5*_.s,p&&(S[l].orig_p=h[l],S[l][T+"End"]=v.ends[l],S[l][T+"Start"]=v.starts[l]),a.ids&&(_.id=String(a.ids[l])),l===0&&(S[0].vTotal=0),S[0].vTotal+=t(_.s),_.begR=t(_.s)/t(S[0].s)}var m;for(l=0;l<w;l++)_=S[l],_.s!==e&&(_.sumR=_.s/S[0].vTotal,_.difR=m!==void 0?_.s/m:1,m=_.s);return A(S,a),M(S,a),S};function t(r){return r===e?0:r}}}),j7=Ye({"src/traces/funnel/cross_trace_calc.js"(X,H){"use strict";var g=$g().setGroupPositions;H.exports=function(A,M){var e=A._fullLayout,t=A._fullData,r=A.calcdata,o=M.xaxis,a=M.yaxis,i=[],n=[],s=[],c,h;for(h=0;h<t.length;h++){var v=t[h],p=v.orientation==="h";v.visible===!0&&v.xaxis===o._id&&v.yaxis===a._id&&v.type==="funnel"&&(c=r[h],p?s.push(c):n.push(c),i.push(c))}var T={mode:e.funnelmode,norm:e.funnelnorm,gap:e.funnelgap,groupgap:e.funnelgroupgap};for(g(A,o,a,n,T),g(A,a,o,s,T),h=0;h<i.length;h++){c=i[h];for(var l=0;l<c.length;l++)l+1<c.length&&(c[l].nextP0=c[l+1].p0,c[l].nextS0=c[l+1].s0,c[l].nextP1=c[l+1].p1,c[l].nextS1=c[l+1].s1)}}}}),V7=Ye({"src/traces/funnel/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=ks().BADNUM,e=e0(),t=wp().clearMinTextSize;H.exports=function(n,s,c,h){var v=n._fullLayout;t("funnel",v),r(n,s,c,h),o(n,s,c,h),e.plot(n,s,c,h,{mode:v.funnelmode,norm:v.funnelmode,gap:v.funnelgap,groupgap:v.funnelgroupgap})};function r(i,n,s,c){var h=n.xaxis,v=n.yaxis;x.makeTraceGroups(c,s,"trace bars").each(function(p){var T=g.select(this),l=p[0].trace,_=x.ensureSingle(T,"g","regions");if(!l.connector||!l.connector.visible){_.remove();return}var w=l.orientation==="h",S=_.selectAll("g.region").data(x.identity);S.enter().append("g").classed("region",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=a(m,h,v,w),u=d[0],y=d[1],f="";u[0]!==M&&y[0]!==M&&u[1]!==M&&y[1]!==M&&u[2]!==M&&y[2]!==M&&u[3]!==M&&y[3]!==M&&(w?f+="M"+u[0]+","+y[1]+"L"+u[2]+","+y[2]+"H"+u[3]+"L"+u[1]+","+y[1]+"Z":f+="M"+u[1]+","+y[1]+"L"+u[2]+","+y[3]+"V"+y[2]+"L"+u[1]+","+y[0]+"Z"),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,n.layerClipId,i)}})})}function o(i,n,s,c){var h=n.xaxis,v=n.yaxis;x.makeTraceGroups(c,s,"trace bars").each(function(p){var T=g.select(this),l=p[0].trace,_=x.ensureSingle(T,"g","lines");if(!l.connector||!l.connector.visible||!l.connector.line.width){_.remove();return}var w=l.orientation==="h",S=_.selectAll("g.line").data(x.identity);S.enter().append("g").classed("line",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=a(m,h,v,w),u=d[0],y=d[1],f="";u[3]!==void 0&&y[3]!==void 0&&(w?(f+="M"+u[0]+","+y[1]+"L"+u[2]+","+y[2],f+="M"+u[1]+","+y[1]+"L"+u[3]+","+y[2]):(f+="M"+u[1]+","+y[1]+"L"+u[2]+","+y[3],f+="M"+u[1]+","+y[0]+"L"+u[2]+","+y[2])),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,n.layerClipId,i)}})})}function a(i,n,s,c){var h=[],v=[],p=c?n:s,T=c?s:n;return h[0]=p.c2p(i.s0,!0),v[0]=T.c2p(i.p0,!0),h[1]=p.c2p(i.s1,!0),v[1]=T.c2p(i.p1,!0),h[2]=p.c2p(i.nextS0,!0),v[2]=T.c2p(i.nextP0,!0),h[3]=p.c2p(i.nextS1,!0),v[3]=T.c2p(i.nextP1,!0),c?[h,v]:[v,h]}}}),q7=Ye({"src/traces/funnel/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=Xm().DESELECTDIM,e=Nd(),t=wp().resizeText,r=e.styleTextPoints;function o(a,i,n){var s=n||g.select(a).selectAll('g[class^="funnellayer"]').selectAll("g.trace");t(a,s,"funnel"),s.style("opacity",function(c){return c[0].trace.opacity}),s.each(function(c){var h=g.select(this),v=c[0].trace;h.selectAll(".point > path").each(function(p){if(!p.isBlank){var T=v.marker;g.select(this).call(A.fill,p.mc||T.color).call(A.stroke,p.mlc||T.line.color).call(x.dashLine,T.line.dash,p.mlw||T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".regions").each(function(){g.select(this).selectAll("path").style("stroke-width",0).call(A.fill,v.connector.fillcolor)}),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),H7=Ye({"src/traces/funnel/hover.js"(X,H){"use strict";var g=Fn().opacity,x=c1().hoverOnBars,A=ta().formatPercent;H.exports=function(t,r,o,a,i){var n=x(t,r,o,a,i);if(n){var s=n.cd,c=s[0].trace,h=c.orientation==="h",v=n.index,p=s[v],T=h?"x":"y";n[T+"LabelVal"]=p.s,n.percentInitial=p.begR,n.percentInitialLabel=A(p.begR,1),n.percentPrevious=p.difR,n.percentPreviousLabel=A(p.difR,1),n.percentTotal=p.sumR,n.percentTotalLabel=A(p.sumR,1);var l=p.hi||c.hoverinfo,_=[];if(l&&l!=="none"&&l!=="skip"){var w=l==="all",S=l.split("+"),E=function(m){return w||S.indexOf(m)!==-1};E("percent initial")&&_.push(n.percentInitialLabel+" of initial"),E("percent previous")&&_.push(n.percentPreviousLabel+" of previous"),E("percent total")&&_.push(n.percentTotalLabel+" of total")}return n.extraText=_.join("<br>"),n.color=M(c,p),[n]}};function M(e,t){var r=e.marker,o=t.mc||r.color,a=t.mlc||r.line.color,i=t.mlw||r.line.width;if(g(o))return o;if(g(a)&&i)return a}}}),G7=Ye({"src/traces/funnel/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"percentInitial"in A&&(x.percentInitial=A.percentInitial),"percentPrevious"in A&&(x.percentPrevious=A.percentPrevious),"percentTotal"in A&&(x.percentTotal=A.percentTotal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),W7=Ye({"src/traces/funnel/index.js"(X,H){"use strict";H.exports={attributes:MM(),layoutAttributes:EM(),supplyDefaults:kM().supplyDefaults,crossTraceDefaults:kM().crossTraceDefaults,supplyLayoutDefaults:B7(),calc:U7(),crossTraceCalc:j7(),plot:V7(),style:q7().style,hoverPoints:H7(),eventData:G7(),selectPoints:f1(),moduleType:"trace",name:"funnel",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),Z7=Ye({"lib/funnel.js"(X,H){"use strict";H.exports=W7()}}),X7=Ye({"src/traces/waterfall/constants.js"(X,H){"use strict";H.exports={eventDataKeys:["initial","delta","final"]}}}),CM=Ye({"src/traces/waterfall/attributes.js"(X,H){"use strict";var g=Sv(),x=Pc().line,A=Pl(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=X7(),o=Oo().extendFlat,a=Fn();function i(n){return{marker:{color:o({},g.marker.color,{arrayOk:!1,editType:"style"}),line:{color:o({},g.marker.line.color,{arrayOk:!1,editType:"style"}),width:o({},g.marker.line.width,{arrayOk:!1,editType:"style"}),editType:"style"},editType:"style"},editType:"style"}}H.exports={measure:{valType:"data_array",dflt:[],editType:"calc"},base:{valType:"number",dflt:null,arrayOk:!1,editType:"calc"},x:g.x,x0:g.x0,dx:g.dx,y:g.y,y0:g.y0,dy:g.dy,xperiod:g.xperiod,yperiod:g.yperiod,xperiod0:g.xperiod0,yperiod0:g.yperiod0,xperiodalignment:g.xperiodalignment,yperiodalignment:g.yperiodalignment,xhoverformat:M("x"),yhoverformat:M("y"),hovertext:g.hovertext,hovertemplate:e({},{keys:r.eventDataKeys}),hoverinfo:o({},A.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:t({editType:"plot"},{keys:r.eventDataKeys.concat(["label"])}),text:g.text,textposition:g.textposition,insidetextanchor:g.insidetextanchor,textangle:g.textangle,textfont:g.textfont,insidetextfont:g.insidetextfont,outsidetextfont:g.outsidetextfont,constraintext:g.constraintext,cliponaxis:g.cliponaxis,orientation:g.orientation,offset:g.offset,width:g.width,increasing:i("increasing"),decreasing:i("decreasing"),totals:i("intermediate sums and total"),connector:{line:{color:o({},x.color,{dflt:a.defaultLine}),width:o({},x.width,{editType:"plot"}),dash:x.dash,editType:"plot"},mode:{valType:"enumerated",values:["spanning","between"],dflt:"between",editType:"plot"},visible:{valType:"boolean",dflt:!0,editType:"plot"},editType:"plot"},offsetgroup:g.offsetgroup,alignmentgroup:g.alignmentgroup,zorder:g.zorder}}}),LM=Ye({"src/traces/waterfall/layout_attributes.js"(X,H){"use strict";H.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"}}}}),p1=Ye({"src/constants/delta.js"(X,H){"use strict";H.exports={INCREASING:{COLOR:"#3D9970",SYMBOL:"\u25B2"},DECREASING:{COLOR:"#FF4136",SYMBOL:"\u25BC"}}}}),PM=Ye({"src/traces/waterfall/defaults.js"(X,H){"use strict";var g=ta(),x=Jg(),A=gd().handleText,M=i1(),e=Qd(),t=CM(),r=Fn(),o=p1(),a=o.INCREASING.COLOR,i=o.DECREASING.COLOR,n="#4499FF";function s(v,p,T){v(p+".marker.color",T),v(p+".marker.line.color",r.defaultLine),v(p+".marker.line.width")}function c(v,p,T,l){function _(b,d){return g.coerce(v,p,t,b,d)}var w=M(v,p,l,_);if(!w){p.visible=!1;return}e(v,p,l,_),_("xhoverformat"),_("yhoverformat"),_("measure"),_("orientation",p.x&&!p.y?"h":"v"),_("base"),_("offset"),_("width"),_("text"),_("hovertext"),_("hovertemplate");var S=_("textposition");A(v,p,l,_,S,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!0,moduleHasCliponaxis:!0,moduleHasTextangle:!0,moduleHasInsideanchor:!0}),p.textposition!=="none"&&(_("texttemplate"),p.texttemplate||_("textinfo")),s(_,"increasing",a),s(_,"decreasing",i),s(_,"totals",n);var E=_("connector.visible");if(E){_("connector.mode");var m=_("connector.line.width");m&&(_("connector.line.color"),_("connector.line.dash"))}_("zorder")}function h(v,p){var T,l;function _(S){return g.coerce(l._input,l,t,S)}if(p.waterfallmode==="group")for(var w=0;w<v.length;w++)l=v[w],T=l._input,x(T,l,p,_,p.waterfallmode)}H.exports={supplyDefaults:c,crossTraceDefaults:h}}}),Y7=Ye({"src/traces/waterfall/layout_defaults.js"(X,H){"use strict";var g=ta(),x=LM();H.exports=function(A,M,e){var t=!1;function r(i,n){return g.coerce(A,M,x,i,n)}for(var o=0;o<e.length;o++){var a=e[o];if(a.visible&&a.type==="waterfall"){t=!0;break}}t&&(r("waterfallmode"),r("waterfallgap",.2),r("waterfallgroupgap"))}}}),K7=Ye({"src/traces/waterfall/calc.js"(X,H){"use strict";var g=Co(),x=tv(),A=ta().mergeArray,M=Od(),e=ks().BADNUM;function t(o){return o==="a"||o==="absolute"}function r(o){return o==="t"||o==="total"}H.exports=function(a,i){var n=g.getFromId(a,i.xaxis||"x"),s=g.getFromId(a,i.yaxis||"y"),c,h,v,p,T,l;i.orientation==="h"?(c=n.makeCalcdata(i,"x"),v=s.makeCalcdata(i,"y"),p=x(i,s,"y",v),T=!!i.yperiodalignment,l="y"):(c=s.makeCalcdata(i,"y"),v=n.makeCalcdata(i,"x"),p=x(i,n,"x",v),T=!!i.xperiodalignment,l="x"),h=p.vals;for(var _=Math.min(h.length,c.length),w=new Array(_),S=0,E,m=!1,b=0;b<_;b++){var d=c[b]||0,u=!1;(c[b]!==e||r(i.measure[b])||t(i.measure[b]))&&b+1<_&&(c[b+1]!==e||r(i.measure[b+1])||t(i.measure[b+1]))&&(u=!0);var y=w[b]={i:b,p:h[b],s:d,rawS:d,cNext:u};t(i.measure[b])?(S=y.s,y.isSum=!0,y.dir="totals",y.s=S):r(i.measure[b])?(y.isSum=!0,y.dir="totals",y.s=S):(y.isSum=!1,y.dir=y.rawS<0?"decreasing":"increasing",E=y.s,y.s=S+E,S+=E),y.dir==="totals"&&(m=!0),T&&(w[b].orig_p=v[b],w[b][l+"End"]=p.ends[b],w[b][l+"Start"]=p.starts[b]),i.ids&&(y.id=String(i.ids[b])),y.v=(i.base||0)+S}return w.length&&(w[0].hasTotals=m),A(i.text,w,"tx"),A(i.hovertext,w,"htx"),M(w,i),w}}}),J7=Ye({"src/traces/waterfall/cross_trace_calc.js"(X,H){"use strict";var g=$g().setGroupPositions;H.exports=function(A,M){var e=A._fullLayout,t=A._fullData,r=A.calcdata,o=M.xaxis,a=M.yaxis,i=[],n=[],s=[],c,h;for(h=0;h<t.length;h++){var v=t[h];v.visible===!0&&v.xaxis===o._id&&v.yaxis===a._id&&v.type==="waterfall"&&(c=r[h],v.orientation==="h"?s.push(c):n.push(c),i.push(c))}var p={mode:e.waterfallmode,norm:e.waterfallnorm,gap:e.waterfallgap,groupgap:e.waterfallgroupgap};for(g(A,o,a,n,p),g(A,a,o,s,p),h=0;h<i.length;h++){c=i[h];for(var T=0;T<c.length;T++){var l=c[T];l.isSum===!1&&(l.s0+=T===0?0:c[T-1].s),T+1<c.length&&(c[T].nextP0=c[T+1].p0,c[T].nextS0=c[T+1].s0)}}}}}),$7=Ye({"src/traces/waterfall/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=ks().BADNUM,e=e0(),t=wp().clearMinTextSize;H.exports=function(i,n,s,c){var h=i._fullLayout;t("waterfall",h),e.plot(i,n,s,c,{mode:h.waterfallmode,norm:h.waterfallmode,gap:h.waterfallgap,groupgap:h.waterfallgroupgap}),r(i,n,s,c)};function r(a,i,n,s){var c=i.xaxis,h=i.yaxis;x.makeTraceGroups(s,n,"trace bars").each(function(v){var p=g.select(this),T=v[0].trace,l=x.ensureSingle(p,"g","lines");if(!T.connector||!T.connector.visible){l.remove();return}var _=T.orientation==="h",w=T.connector.mode,S=l.selectAll("g.line").data(x.identity);S.enter().append("g").classed("line",!0),S.exit().remove();var E=S.size();S.each(function(m,b){if(!(b!==E-1&&!m.cNext)){var d=o(m,c,h,_),u=d[0],y=d[1],f="";u[0]!==M&&y[0]!==M&&u[1]!==M&&y[1]!==M&&(w==="spanning"&&!m.isSum&&b>0&&(_?f+="M"+u[0]+","+y[1]+"V"+y[0]:f+="M"+u[1]+","+y[0]+"H"+u[0]),w!=="between"&&(m.isSum||b<E-1)&&(_?f+="M"+u[1]+","+y[0]+"V"+y[1]:f+="M"+u[0]+","+y[1]+"H"+u[1]),u[2]!==M&&y[2]!==M&&(_?f+="M"+u[1]+","+y[1]+"V"+y[2]:f+="M"+u[1]+","+y[1]+"H"+u[2])),f===""&&(f="M0,0Z"),x.ensureSingle(g.select(this),"path").attr("d",f).call(A.setClipUrl,i.layerClipId,a)}})})}function o(a,i,n,s){var c=[],h=[],v=s?i:n,p=s?n:i;return c[0]=v.c2p(a.s0,!0),h[0]=p.c2p(a.p0,!0),c[1]=v.c2p(a.s1,!0),h[1]=p.c2p(a.p1,!0),c[2]=v.c2p(a.nextS0,!0),h[2]=p.c2p(a.nextP0,!0),s?[c,h]:[h,c]}}}),Q7=Ye({"src/traces/waterfall/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=Xm().DESELECTDIM,e=Nd(),t=wp().resizeText,r=e.styleTextPoints;function o(a,i,n){var s=n||g.select(a).selectAll('g[class^="waterfalllayer"]').selectAll("g.trace");t(a,s,"waterfall"),s.style("opacity",function(c){return c[0].trace.opacity}),s.each(function(c){var h=g.select(this),v=c[0].trace;h.selectAll(".point > path").each(function(p){if(!p.isBlank){var T=v[p.dir].marker;g.select(this).call(A.fill,T.color).call(A.stroke,T.line.color).call(x.dashLine,T.line.dash,T.line.width).style("opacity",v.selectedpoints&&!p.selected?M:1)}}),r(h,v,a),h.selectAll(".lines").each(function(){var p=v.connector.line;x.lineGroupStyle(g.select(this).selectAll("path"),p.width,p.color,p.dash)})})}H.exports={style:o}}}),e4=Ye({"src/traces/waterfall/hover.js"(X,H){"use strict";var g=Co().hoverLabelText,x=Fn().opacity,A=c1().hoverOnBars,M=p1(),e={increasing:M.INCREASING.SYMBOL,decreasing:M.DECREASING.SYMBOL};H.exports=function(o,a,i,n,s){var c=A(o,a,i,n,s);if(!c)return;var h=c.cd,v=h[0].trace,p=v.orientation==="h",T=p?"x":"y",l=p?o.xa:o.ya;function _(P){return g(l,P,v[T+"hoverformat"])}var w=c.index,S=h[w],E=S.isSum?S.b+S.s:S.rawS;c.initial=S.b+S.s-E,c.delta=E,c.final=c.initial+c.delta;var m=_(Math.abs(c.delta));c.deltaLabel=E<0?"("+m+")":m,c.finalLabel=_(c.final),c.initialLabel=_(c.initial);var b=S.hi||v.hoverinfo,d=[];if(b&&b!=="none"&&b!=="skip"){var u=b==="all",y=b.split("+"),f=function(P){return u||y.indexOf(P)!==-1};S.isSum||(f("final")&&(p?!f("x"):!f("y"))&&d.push(c.finalLabel),f("delta")&&(E<0?d.push(c.deltaLabel+" "+e.decreasing):d.push(c.deltaLabel+" "+e.increasing)),f("initial")&&d.push("Initial: "+c.initialLabel))}return d.length&&(c.extraText=d.join("<br>")),c.color=t(v,S),[c]};function t(r,o){var a=r[o.dir].marker,i=a.color,n=a.line.color,s=a.line.width;if(x(i))return i;if(x(n)&&s)return n}}}),t4=Ye({"src/traces/waterfall/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.x="xVal"in A?A.xVal:A.x,x.y="yVal"in A?A.yVal:A.y,"initial"in A&&(x.initial=A.initial),"delta"in A&&(x.delta=A.delta),"final"in A&&(x.final=A.final),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x}}}),r4=Ye({"src/traces/waterfall/index.js"(X,H){"use strict";H.exports={attributes:CM(),layoutAttributes:LM(),supplyDefaults:PM().supplyDefaults,crossTraceDefaults:PM().crossTraceDefaults,supplyLayoutDefaults:Y7(),calc:K7(),crossTraceCalc:J7(),plot:$7(),style:Q7().style,hoverPoints:e4(),eventData:t4(),selectPoints:f1(),moduleType:"trace",name:"waterfall",basePlotModule:Pf(),categories:["bar-like","cartesian","svg","oriented","showLegend","zoomScale"],meta:{}}}}),a4=Ye({"lib/waterfall.js"(X,H){"use strict";H.exports=r4()}}),d1=Ye({"src/traces/image/constants.js"(X,H){"use strict";H.exports={colormodel:{rgb:{min:[0,0,0],max:[255,255,255],fmt:function(g){return g.slice(0,3)},suffix:["","",""]},rgba:{min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},rgba256:{colormodel:"rgba",zminDflt:[0,0,0,0],zmaxDflt:[255,255,255,255],min:[0,0,0,0],max:[255,255,255,1],fmt:function(g){return g.slice(0,4)},suffix:["","","",""]},hsl:{min:[0,0,0],max:[360,100,100],fmt:function(g){var x=g.slice(0,3);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%"]},hsla:{min:[0,0,0,0],max:[360,100,100,1],fmt:function(g){var x=g.slice(0,4);return x[1]=x[1]+"%",x[2]=x[2]+"%",x},suffix:["\xB0","%","%",""]}}}}}),IM=Ye({"src/traces/image/attributes.js"(X,H){"use strict";var g=Pl(),x=Pc().zorder,A=xs().hovertemplateAttrs,M=Oo().extendFlat,e=d1().colormodel,t=["rgb","rgba","rgba256","hsl","hsla"],r=[],o=[];for(i=0;i<t.length;i++)a=e[t[i]],r.push("For the `"+t[i]+"` colormodel, it is ["+(a.zminDflt||a.min).join(", ")+"]."),o.push("For the `"+t[i]+"` colormodel, it is ["+(a.zmaxDflt||a.max).join(", ")+"].");var a,i;H.exports=M({source:{valType:"string",editType:"calc"},z:{valType:"data_array",editType:"calc"},colormodel:{valType:"enumerated",values:t,editType:"calc"},zsmooth:{valType:"enumerated",values:["fast",!1],dflt:!1,editType:"plot"},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:M({},g.hoverinfo,{flags:["x","y","z","color","name","text"],dflt:"x+y+z+text+name"}),hovertemplate:A({},{keys:["z","color","colormodel"]}),zorder:x})}}),i4=Ye({"src/traces/image/defaults.js"(X,H){"use strict";var g=ta(),x=IM(),A=d1(),M=Xv().IMAGE_URL_PREFIX;H.exports=function(t,r){function o(n,s){return g.coerce(t,r,x,n,s)}o("source"),r.source&&!r.source.match(M)&&delete r.source,r._hasSource=!!r.source;var a=o("z");if(r._hasZ=!(a===void 0||!a.length||!a[0]||!a[0].length),!r._hasZ&&!r._hasSource){r.visible=!1;return}o("x0"),o("y0"),o("dx"),o("dy");var i;r._hasZ?(o("colormodel","rgb"),i=A.colormodel[r.colormodel],o("zmin",i.zminDflt||i.min),o("zmax",i.zmaxDflt||i.max)):r._hasSource&&(r.colormodel="rgba256",i=A.colormodel[r.colormodel],r.zmin=i.zminDflt,r.zmax=i.zmaxDflt),o("zsmooth"),o("text"),o("hovertext"),o("hovertemplate"),r._length=null,o("zorder")}}}),Yv=Ye({"node_modules/inherits/inherits_browser.js"(X,H){typeof Object.create=="function"?H.exports=function(x,A){A&&(x.super_=A,x.prototype=Object.create(A.prototype,{constructor:{value:x,enumerable:!1,writable:!0,configurable:!0}}))}:H.exports=function(x,A){if(A){x.super_=A;var M=function(){};M.prototype=A.prototype,x.prototype=new M,x.prototype.constructor=x}}}}),RM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/stream-browser.js"(X,H){H.exports=Wg().EventEmitter}}),n4=Ye({"node_modules/base64-js/index.js"(X){"use strict";X.byteLength=r,X.toByteArray=a,X.fromByteArray=s;var H=[],g=[],x=typeof Uint8Array<"u"?Uint8Array:Array,A="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(M=0,e=A.length;M<e;++M)H[M]=A[M],g[A.charCodeAt(M)]=M;var M,e;g[45]=62,g[95]=63;function t(c){var h=c.length;if(h%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var v=c.indexOf("=");v===-1&&(v=h);var p=v===h?0:4-v%4;return[v,p]}function r(c){var h=t(c),v=h[0],p=h[1];return(v+p)*3/4-p}function o(c,h,v){return(h+v)*3/4-v}function a(c){var h,v=t(c),p=v[0],T=v[1],l=new x(o(c,p,T)),_=0,w=T>0?p-4:p,S;for(S=0;S<w;S+=4)h=g[c.charCodeAt(S)]<<18|g[c.charCodeAt(S+1)]<<12|g[c.charCodeAt(S+2)]<<6|g[c.charCodeAt(S+3)],l[_++]=h>>16&255,l[_++]=h>>8&255,l[_++]=h&255;return T===2&&(h=g[c.charCodeAt(S)]<<2|g[c.charCodeAt(S+1)]>>4,l[_++]=h&255),T===1&&(h=g[c.charCodeAt(S)]<<10|g[c.charCodeAt(S+1)]<<4|g[c.charCodeAt(S+2)]>>2,l[_++]=h>>8&255,l[_++]=h&255),l}function i(c){return H[c>>18&63]+H[c>>12&63]+H[c>>6&63]+H[c&63]}function n(c,h,v){for(var p,T=[],l=h;l<v;l+=3)p=(c[l]<<16&16711680)+(c[l+1]<<8&65280)+(c[l+2]&255),T.push(i(p));return T.join("")}function s(c){for(var h,v=c.length,p=v%3,T=[],l=16383,_=0,w=v-p;_<w;_+=l)T.push(n(c,_,_+l>w?w:_+l));return p===1?(h=c[v-1],T.push(H[h>>2]+H[h<<4&63]+"==")):p===2&&(h=(c[v-2]<<8)+c[v-1],T.push(H[h>>10]+H[h>>4&63]+H[h<<2&63]+"=")),T.join("")}}}),o4=Ye({"node_modules/ieee754/index.js"(X){X.read=function(H,g,x,A,M){var e,t,r=M*8-A-1,o=(1<<r)-1,a=o>>1,i=-7,n=x?M-1:0,s=x?-1:1,c=H[g+n];for(n+=s,e=c&(1<<-i)-1,c>>=-i,i+=r;i>0;e=e*256+H[g+n],n+=s,i-=8);for(t=e&(1<<-i)-1,e>>=-i,i+=A;i>0;t=t*256+H[g+n],n+=s,i-=8);if(e===0)e=1-a;else{if(e===o)return t?NaN:(c?-1:1)*(1/0);t=t+Math.pow(2,A),e=e-a}return(c?-1:1)*t*Math.pow(2,e-A)},X.write=function(H,g,x,A,M,e){var t,r,o,a=e*8-M-1,i=(1<<a)-1,n=i>>1,s=M===23?Math.pow(2,-24)-Math.pow(2,-77):0,c=A?0:e-1,h=A?1:-1,v=g<0||g===0&&1/g<0?1:0;for(g=Math.abs(g),isNaN(g)||g===1/0?(r=isNaN(g)?1:0,t=i):(t=Math.floor(Math.log(g)/Math.LN2),g*(o=Math.pow(2,-t))<1&&(t--,o*=2),t+n>=1?g+=s/o:g+=s*Math.pow(2,1-n),g*o>=2&&(t++,o/=2),t+n>=i?(r=0,t=i):t+n>=1?(r=(g*o-1)*Math.pow(2,M),t=t+n):(r=g*Math.pow(2,n-1)*Math.pow(2,M),t=0));M>=8;H[x+c]=r&255,c+=h,r/=256,M-=8);for(t=t<<M|r,a+=M;a>0;H[x+c]=t&255,c+=h,t/=256,a-=8);H[x+c-h]|=v*128}}}),t0=Ye({"node_modules/buffer/index.js"(X){"use strict";var H=n4(),g=o4(),x=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;X.Buffer=t,X.SlowBuffer=T,X.INSPECT_MAX_BYTES=50;var A=2147483647;X.kMaxLength=A,t.TYPED_ARRAY_SUPPORT=M(),!t.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function M(){try{let Me=new Uint8Array(1),ge={foo:function(){return 42}};return Object.setPrototypeOf(ge,Uint8Array.prototype),Object.setPrototypeOf(Me,ge),Me.foo()===42}catch{return!1}}Object.defineProperty(t.prototype,"parent",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.buffer}}),Object.defineProperty(t.prototype,"offset",{enumerable:!0,get:function(){if(t.isBuffer(this))return this.byteOffset}});function e(Me){if(Me>A)throw new RangeError('The value "'+Me+'" is invalid for option "size"');let ge=new Uint8Array(Me);return Object.setPrototypeOf(ge,t.prototype),ge}function t(Me,ge,ce){if(typeof Me=="number"){if(typeof ge=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return i(Me)}return r(Me,ge,ce)}t.poolSize=8192;function r(Me,ge,ce){if(typeof Me=="string")return n(Me,ge);if(ArrayBuffer.isView(Me))return c(Me);if(Me==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me);if(Ze(Me,ArrayBuffer)||Me&&Ze(Me.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Ze(Me,SharedArrayBuffer)||Me&&Ze(Me.buffer,SharedArrayBuffer)))return h(Me,ge,ce);if(typeof Me=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');let ze=Me.valueOf&&Me.valueOf();if(ze!=null&&ze!==Me)return t.from(ze,ge,ce);let tt=v(Me);if(tt)return tt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof Me[Symbol.toPrimitive]=="function")return t.from(Me[Symbol.toPrimitive]("string"),ge,ce);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof Me)}t.from=function(Me,ge,ce){return r(Me,ge,ce)},Object.setPrototypeOf(t.prototype,Uint8Array.prototype),Object.setPrototypeOf(t,Uint8Array);function o(Me){if(typeof Me!="number")throw new TypeError('"size" argument must be of type number');if(Me<0)throw new RangeError('The value "'+Me+'" is invalid for option "size"')}function a(Me,ge,ce){return o(Me),Me<=0?e(Me):ge!==void 0?typeof ce=="string"?e(Me).fill(ge,ce):e(Me).fill(ge):e(Me)}t.alloc=function(Me,ge,ce){return a(Me,ge,ce)};function i(Me){return o(Me),e(Me<0?0:p(Me)|0)}t.allocUnsafe=function(Me){return i(Me)},t.allocUnsafeSlow=function(Me){return i(Me)};function n(Me,ge){if((typeof ge!="string"||ge==="")&&(ge="utf8"),!t.isEncoding(ge))throw new TypeError("Unknown encoding: "+ge);let ce=l(Me,ge)|0,ze=e(ce),tt=ze.write(Me,ge);return tt!==ce&&(ze=ze.slice(0,tt)),ze}function s(Me){let ge=Me.length<0?0:p(Me.length)|0,ce=e(ge);for(let ze=0;ze<ge;ze+=1)ce[ze]=Me[ze]&255;return ce}function c(Me){if(Ze(Me,Uint8Array)){let ge=new Uint8Array(Me);return h(ge.buffer,ge.byteOffset,ge.byteLength)}return s(Me)}function h(Me,ge,ce){if(ge<0||Me.byteLength<ge)throw new RangeError('"offset" is outside of buffer bounds');if(Me.byteLength<ge+(ce||0))throw new RangeError('"length" is outside of buffer bounds');let ze;return ge===void 0&&ce===void 0?ze=new Uint8Array(Me):ce===void 0?ze=new Uint8Array(Me,ge):ze=new Uint8Array(Me,ge,ce),Object.setPrototypeOf(ze,t.prototype),ze}function v(Me){if(t.isBuffer(Me)){let ge=p(Me.length)|0,ce=e(ge);return ce.length===0||Me.copy(ce,0,0,ge),ce}if(Me.length!==void 0)return typeof Me.length!="number"||at(Me.length)?e(0):s(Me);if(Me.type==="Buffer"&&Array.isArray(Me.data))return s(Me.data)}function p(Me){if(Me>=A)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+A.toString(16)+" bytes");return Me|0}function T(Me){return+Me!=Me&&(Me=0),t.alloc(+Me)}t.isBuffer=function(ge){return ge!=null&&ge._isBuffer===!0&&ge!==t.prototype},t.compare=function(ge,ce){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),Ze(ce,Uint8Array)&&(ce=t.from(ce,ce.offset,ce.byteLength)),!t.isBuffer(ge)||!t.isBuffer(ce))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(ge===ce)return 0;let ze=ge.length,tt=ce.length;for(let nt=0,Qe=Math.min(ze,tt);nt<Qe;++nt)if(ge[nt]!==ce[nt]){ze=ge[nt],tt=ce[nt];break}return ze<tt?-1:tt<ze?1:0},t.isEncoding=function(ge){switch(String(ge).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},t.concat=function(ge,ce){if(!Array.isArray(ge))throw new TypeError('"list" argument must be an Array of Buffers');if(ge.length===0)return t.alloc(0);let ze;if(ce===void 0)for(ce=0,ze=0;ze<ge.length;++ze)ce+=ge[ze].length;let tt=t.allocUnsafe(ce),nt=0;for(ze=0;ze<ge.length;++ze){let Qe=ge[ze];if(Ze(Qe,Uint8Array))nt+Qe.length>tt.length?(t.isBuffer(Qe)||(Qe=t.from(Qe)),Qe.copy(tt,nt)):Uint8Array.prototype.set.call(tt,Qe,nt);else if(t.isBuffer(Qe))Qe.copy(tt,nt);else throw new TypeError('"list" argument must be an Array of Buffers');nt+=Qe.length}return tt};function l(Me,ge){if(t.isBuffer(Me))return Me.length;if(ArrayBuffer.isView(Me)||Ze(Me,ArrayBuffer))return Me.byteLength;if(typeof Me!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof Me);let ce=Me.length,ze=arguments.length>2&&arguments[2]===!0;if(!ze&&ce===0)return 0;let tt=!1;for(;;)switch(ge){case"ascii":case"latin1":case"binary":return ce;case"utf8":case"utf-8":return fe(Me).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ce*2;case"hex":return ce>>>1;case"base64":return Be(Me).length;default:if(tt)return ze?-1:fe(Me).length;ge=(""+ge).toLowerCase(),tt=!0}}t.byteLength=l;function _(Me,ge,ce){let ze=!1;if((ge===void 0||ge<0)&&(ge=0),ge>this.length||((ce===void 0||ce>this.length)&&(ce=this.length),ce<=0)||(ce>>>=0,ge>>>=0,ce<=ge))return"";for(Me||(Me="utf8");;)switch(Me){case"hex":return O(this,ge,ce);case"utf8":case"utf-8":return P(this,ge,ce);case"ascii":return F(this,ge,ce);case"latin1":case"binary":return B(this,ge,ce);case"base64":return f(this,ge,ce);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,ge,ce);default:if(ze)throw new TypeError("Unknown encoding: "+Me);Me=(Me+"").toLowerCase(),ze=!0}}t.prototype._isBuffer=!0;function w(Me,ge,ce){let ze=Me[ge];Me[ge]=Me[ce],Me[ce]=ze}t.prototype.swap16=function(){let ge=this.length;if(ge%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(let ce=0;ce<ge;ce+=2)w(this,ce,ce+1);return this},t.prototype.swap32=function(){let ge=this.length;if(ge%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(let ce=0;ce<ge;ce+=4)w(this,ce,ce+3),w(this,ce+1,ce+2);return this},t.prototype.swap64=function(){let ge=this.length;if(ge%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(let ce=0;ce<ge;ce+=8)w(this,ce,ce+7),w(this,ce+1,ce+6),w(this,ce+2,ce+5),w(this,ce+3,ce+4);return this},t.prototype.toString=function(){let ge=this.length;return ge===0?"":arguments.length===0?P(this,0,ge):_.apply(this,arguments)},t.prototype.toLocaleString=t.prototype.toString,t.prototype.equals=function(ge){if(!t.isBuffer(ge))throw new TypeError("Argument must be a Buffer");return this===ge?!0:t.compare(this,ge)===0},t.prototype.inspect=function(){let ge="",ce=X.INSPECT_MAX_BYTES;return ge=this.toString("hex",0,ce).replace(/(.{2})/g,"$1 ").trim(),this.length>ce&&(ge+=" ... "),"<Buffer "+ge+">"},x&&(t.prototype[x]=t.prototype.inspect),t.prototype.compare=function(ge,ce,ze,tt,nt){if(Ze(ge,Uint8Array)&&(ge=t.from(ge,ge.offset,ge.byteLength)),!t.isBuffer(ge))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof ge);if(ce===void 0&&(ce=0),ze===void 0&&(ze=ge?ge.length:0),tt===void 0&&(tt=0),nt===void 0&&(nt=this.length),ce<0||ze>ge.length||tt<0||nt>this.length)throw new RangeError("out of range index");if(tt>=nt&&ce>=ze)return 0;if(tt>=nt)return-1;if(ce>=ze)return 1;if(ce>>>=0,ze>>>=0,tt>>>=0,nt>>>=0,this===ge)return 0;let Qe=nt-tt,Ct=ze-ce,St=Math.min(Qe,Ct),Ot=this.slice(tt,nt),jt=ge.slice(ce,ze);for(let ur=0;ur<St;++ur)if(Ot[ur]!==jt[ur]){Qe=Ot[ur],Ct=jt[ur];break}return Qe<Ct?-1:Ct<Qe?1:0};function S(Me,ge,ce,ze,tt){if(Me.length===0)return-1;if(typeof ce=="string"?(ze=ce,ce=0):ce>2147483647?ce=2147483647:ce<-2147483648&&(ce=-2147483648),ce=+ce,at(ce)&&(ce=tt?0:Me.length-1),ce<0&&(ce=Me.length+ce),ce>=Me.length){if(tt)return-1;ce=Me.length-1}else if(ce<0)if(tt)ce=0;else return-1;if(typeof ge=="string"&&(ge=t.from(ge,ze)),t.isBuffer(ge))return ge.length===0?-1:E(Me,ge,ce,ze,tt);if(typeof ge=="number")return ge=ge&255,typeof Uint8Array.prototype.indexOf=="function"?tt?Uint8Array.prototype.indexOf.call(Me,ge,ce):Uint8Array.prototype.lastIndexOf.call(Me,ge,ce):E(Me,[ge],ce,ze,tt);throw new TypeError("val must be string, number or Buffer")}function E(Me,ge,ce,ze,tt){let nt=1,Qe=Me.length,Ct=ge.length;if(ze!==void 0&&(ze=String(ze).toLowerCase(),ze==="ucs2"||ze==="ucs-2"||ze==="utf16le"||ze==="utf-16le")){if(Me.length<2||ge.length<2)return-1;nt=2,Qe/=2,Ct/=2,ce/=2}function St(jt,ur){return nt===1?jt[ur]:jt.readUInt16BE(ur*nt)}let Ot;if(tt){let jt=-1;for(Ot=ce;Ot<Qe;Ot++)if(St(Me,Ot)===St(ge,jt===-1?0:Ot-jt)){if(jt===-1&&(jt=Ot),Ot-jt+1===Ct)return jt*nt}else jt!==-1&&(Ot-=Ot-jt),jt=-1}else for(ce+Ct>Qe&&(ce=Qe-Ct),Ot=ce;Ot>=0;Ot--){let jt=!0;for(let ur=0;ur<Ct;ur++)if(St(Me,Ot+ur)!==St(ge,ur)){jt=!1;break}if(jt)return Ot}return-1}t.prototype.includes=function(ge,ce,ze){return this.indexOf(ge,ce,ze)!==-1},t.prototype.indexOf=function(ge,ce,ze){return S(this,ge,ce,ze,!0)},t.prototype.lastIndexOf=function(ge,ce,ze){return S(this,ge,ce,ze,!1)};function m(Me,ge,ce,ze){ce=Number(ce)||0;let tt=Me.length-ce;ze?(ze=Number(ze),ze>tt&&(ze=tt)):ze=tt;let nt=ge.length;ze>nt/2&&(ze=nt/2);let Qe;for(Qe=0;Qe<ze;++Qe){let Ct=parseInt(ge.substr(Qe*2,2),16);if(at(Ct))return Qe;Me[ce+Qe]=Ct}return Qe}function b(Me,ge,ce,ze){return Ie(fe(ge,Me.length-ce),Me,ce,ze)}function d(Me,ge,ce,ze){return Ie(be(ge),Me,ce,ze)}function u(Me,ge,ce,ze){return Ie(Be(ge),Me,ce,ze)}function y(Me,ge,ce,ze){return Ie(Ae(ge,Me.length-ce),Me,ce,ze)}t.prototype.write=function(ge,ce,ze,tt){if(ce===void 0)tt="utf8",ze=this.length,ce=0;else if(ze===void 0&&typeof ce=="string")tt=ce,ze=this.length,ce=0;else if(isFinite(ce))ce=ce>>>0,isFinite(ze)?(ze=ze>>>0,tt===void 0&&(tt="utf8")):(tt=ze,ze=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");let nt=this.length-ce;if((ze===void 0||ze>nt)&&(ze=nt),ge.length>0&&(ze<0||ce<0)||ce>this.length)throw new RangeError("Attempt to write outside buffer bounds");tt||(tt="utf8");let Qe=!1;for(;;)switch(tt){case"hex":return m(this,ge,ce,ze);case"utf8":case"utf-8":return b(this,ge,ce,ze);case"ascii":case"latin1":case"binary":return d(this,ge,ce,ze);case"base64":return u(this,ge,ce,ze);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return y(this,ge,ce,ze);default:if(Qe)throw new TypeError("Unknown encoding: "+tt);tt=(""+tt).toLowerCase(),Qe=!0}},t.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function f(Me,ge,ce){return ge===0&&ce===Me.length?H.fromByteArray(Me):H.fromByteArray(Me.slice(ge,ce))}function P(Me,ge,ce){ce=Math.min(Me.length,ce);let ze=[],tt=ge;for(;tt<ce;){let nt=Me[tt],Qe=null,Ct=nt>239?4:nt>223?3:nt>191?2:1;if(tt+Ct<=ce){let St,Ot,jt,ur;switch(Ct){case 1:nt<128&&(Qe=nt);break;case 2:St=Me[tt+1],(St&192)===128&&(ur=(nt&31)<<6|St&63,ur>127&&(Qe=ur));break;case 3:St=Me[tt+1],Ot=Me[tt+2],(St&192)===128&&(Ot&192)===128&&(ur=(nt&15)<<12|(St&63)<<6|Ot&63,ur>2047&&(ur<55296||ur>57343)&&(Qe=ur));break;case 4:St=Me[tt+1],Ot=Me[tt+2],jt=Me[tt+3],(St&192)===128&&(Ot&192)===128&&(jt&192)===128&&(ur=(nt&15)<<18|(St&63)<<12|(Ot&63)<<6|jt&63,ur>65535&&ur<1114112&&(Qe=ur))}}Qe===null?(Qe=65533,Ct=1):Qe>65535&&(Qe-=65536,ze.push(Qe>>>10&1023|55296),Qe=56320|Qe&1023),ze.push(Qe),tt+=Ct}return z(ze)}var L=4096;function z(Me){let ge=Me.length;if(ge<=L)return String.fromCharCode.apply(String,Me);let ce="",ze=0;for(;ze<ge;)ce+=String.fromCharCode.apply(String,Me.slice(ze,ze+=L));return ce}function F(Me,ge,ce){let ze="";ce=Math.min(Me.length,ce);for(let tt=ge;tt<ce;++tt)ze+=String.fromCharCode(Me[tt]&127);return ze}function B(Me,ge,ce){let ze="";ce=Math.min(Me.length,ce);for(let tt=ge;tt<ce;++tt)ze+=String.fromCharCode(Me[tt]);return ze}function O(Me,ge,ce){let ze=Me.length;(!ge||ge<0)&&(ge=0),(!ce||ce<0||ce>ze)&&(ce=ze);let tt="";for(let nt=ge;nt<ce;++nt)tt+=it[Me[nt]];return tt}function I(Me,ge,ce){let ze=Me.slice(ge,ce),tt="";for(let nt=0;nt<ze.length-1;nt+=2)tt+=String.fromCharCode(ze[nt]+ze[nt+1]*256);return tt}t.prototype.slice=function(ge,ce){let ze=this.length;ge=~~ge,ce=ce===void 0?ze:~~ce,ge<0?(ge+=ze,ge<0&&(ge=0)):ge>ze&&(ge=ze),ce<0?(ce+=ze,ce<0&&(ce=0)):ce>ze&&(ce=ze),ce<ge&&(ce=ge);let tt=this.subarray(ge,ce);return Object.setPrototypeOf(tt,t.prototype),tt};function N(Me,ge,ce){if(Me%1!==0||Me<0)throw new RangeError("offset is not uint");if(Me+ge>ce)throw new RangeError("Trying to access beyond buffer length")}t.prototype.readUintLE=t.prototype.readUIntLE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe<ce&&(nt*=256);)tt+=this[ge+Qe]*nt;return tt},t.prototype.readUintBE=t.prototype.readUIntBE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge+--ce],nt=1;for(;ce>0&&(nt*=256);)tt+=this[ge+--ce]*nt;return tt},t.prototype.readUint8=t.prototype.readUInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]},t.prototype.readUint16LE=t.prototype.readUInt16LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]|this[ge+1]<<8},t.prototype.readUint16BE=t.prototype.readUInt16BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,2,this.length),this[ge]<<8|this[ge+1]},t.prototype.readUint32LE=t.prototype.readUInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),(this[ge]|this[ge+1]<<8|this[ge+2]<<16)+this[ge+3]*16777216},t.prototype.readUint32BE=t.prototype.readUInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]*16777216+(this[ge+1]<<16|this[ge+2]<<8|this[ge+3])},t.prototype.readBigUInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce+this[++ge]*2**8+this[++ge]*2**16+this[++ge]*2**24,nt=this[++ge]+this[++ge]*2**8+this[++ge]*2**16+ze*2**24;return BigInt(tt)+(BigInt(nt)<<BigInt(32))}),t.prototype.readBigUInt64BE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=ce*2**24+this[++ge]*2**16+this[++ge]*2**8+this[++ge],nt=this[++ge]*2**24+this[++ge]*2**16+this[++ge]*2**8+ze;return(BigInt(tt)<<BigInt(32))+BigInt(nt)}),t.prototype.readIntLE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=this[ge],nt=1,Qe=0;for(;++Qe<ce&&(nt*=256);)tt+=this[ge+Qe]*nt;return nt*=128,tt>=nt&&(tt-=Math.pow(2,8*ce)),tt},t.prototype.readIntBE=function(ge,ce,ze){ge=ge>>>0,ce=ce>>>0,ze||N(ge,ce,this.length);let tt=ce,nt=1,Qe=this[ge+--tt];for(;tt>0&&(nt*=256);)Qe+=this[ge+--tt]*nt;return nt*=128,Qe>=nt&&(Qe-=Math.pow(2,8*ce)),Qe},t.prototype.readInt8=function(ge,ce){return ge=ge>>>0,ce||N(ge,1,this.length),this[ge]&128?(255-this[ge]+1)*-1:this[ge]},t.prototype.readInt16LE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge]|this[ge+1]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt16BE=function(ge,ce){ge=ge>>>0,ce||N(ge,2,this.length);let ze=this[ge+1]|this[ge]<<8;return ze&32768?ze|4294901760:ze},t.prototype.readInt32LE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]|this[ge+1]<<8|this[ge+2]<<16|this[ge+3]<<24},t.prototype.readInt32BE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),this[ge]<<24|this[ge+1]<<16|this[ge+2]<<8|this[ge+3]},t.prototype.readBigInt64LE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=this[ge+4]+this[ge+5]*2**8+this[ge+6]*2**16+(ze<<24);return(BigInt(tt)<<BigInt(32))+BigInt(ce+this[++ge]*2**8+this[++ge]*2**16+this[++ge]*2**24)}),t.prototype.readBigInt64BE=et(function(ge){ge=ge>>>0,ne(ge,"offset");let ce=this[ge],ze=this[ge+7];(ce===void 0||ze===void 0)&&j(ge,this.length-8);let tt=(ce<<24)+this[++ge]*2**16+this[++ge]*2**8+this[++ge];return(BigInt(tt)<<BigInt(32))+BigInt(this[++ge]*2**24+this[++ge]*2**16+this[++ge]*2**8+ze)}),t.prototype.readFloatLE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),g.read(this,ge,!0,23,4)},t.prototype.readFloatBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,4,this.length),g.read(this,ge,!1,23,4)},t.prototype.readDoubleLE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!0,52,8)},t.prototype.readDoubleBE=function(ge,ce){return ge=ge>>>0,ce||N(ge,8,this.length),g.read(this,ge,!1,52,8)};function U(Me,ge,ce,ze,tt,nt){if(!t.isBuffer(Me))throw new TypeError('"buffer" argument must be a Buffer instance');if(ge>tt||ge<nt)throw new RangeError('"value" argument is out of bounds');if(ce+ze>Me.length)throw new RangeError("Index out of range")}t.prototype.writeUintLE=t.prototype.writeUIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=1,Qe=0;for(this[ce]=ge&255;++Qe<ze&&(nt*=256);)this[ce+Qe]=ge/nt&255;return ce+ze},t.prototype.writeUintBE=t.prototype.writeUIntBE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,ze=ze>>>0,!tt){let Ct=Math.pow(2,8*ze)-1;U(this,ge,ce,ze,Ct,0)}let nt=ze-1,Qe=1;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)this[ce+nt]=ge/Qe&255;return ce+ze},t.prototype.writeUint8=t.prototype.writeUInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,255,0),this[ce]=ge&255,ce+1},t.prototype.writeUint16LE=t.prototype.writeUInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeUint16BE=t.prototype.writeUInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,65535,0),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeUint32LE=t.prototype.writeUInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce+3]=ge>>>24,this[ce+2]=ge>>>16,this[ce+1]=ge>>>8,this[ce]=ge&255,ce+4},t.prototype.writeUint32BE=t.prototype.writeUInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,4294967295,0),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4};function W(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt,nt=nt>>8,Me[ce++]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,Qe=Qe>>8,Me[ce++]=Qe,ce}function Q(Me,ge,ce,ze,tt){re(ge,ze,tt,Me,ce,7);let nt=Number(ge&BigInt(4294967295));Me[ce+7]=nt,nt=nt>>8,Me[ce+6]=nt,nt=nt>>8,Me[ce+5]=nt,nt=nt>>8,Me[ce+4]=nt;let Qe=Number(ge>>BigInt(32)&BigInt(4294967295));return Me[ce+3]=Qe,Qe=Qe>>8,Me[ce+2]=Qe,Qe=Qe>>8,Me[ce+1]=Qe,Qe=Qe>>8,Me[ce]=Qe,ce+8}t.prototype.writeBigUInt64LE=et(function(ge,ce=0){return W(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeBigUInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,BigInt(0),BigInt("0xffffffffffffffff"))}),t.prototype.writeIntLE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=0,Qe=1,Ct=0;for(this[ce]=ge&255;++nt<ze&&(Qe*=256);)ge<0&&Ct===0&&this[ce+nt-1]!==0&&(Ct=1),this[ce+nt]=(ge/Qe>>0)-Ct&255;return ce+ze},t.prototype.writeIntBE=function(ge,ce,ze,tt){if(ge=+ge,ce=ce>>>0,!tt){let St=Math.pow(2,8*ze-1);U(this,ge,ce,ze,St-1,-St)}let nt=ze-1,Qe=1,Ct=0;for(this[ce+nt]=ge&255;--nt>=0&&(Qe*=256);)ge<0&&Ct===0&&this[ce+nt+1]!==0&&(Ct=1),this[ce+nt]=(ge/Qe>>0)-Ct&255;return ce+ze},t.prototype.writeInt8=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,1,127,-128),ge<0&&(ge=255+ge+1),this[ce]=ge&255,ce+1},t.prototype.writeInt16LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge&255,this[ce+1]=ge>>>8,ce+2},t.prototype.writeInt16BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,2,32767,-32768),this[ce]=ge>>>8,this[ce+1]=ge&255,ce+2},t.prototype.writeInt32LE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),this[ce]=ge&255,this[ce+1]=ge>>>8,this[ce+2]=ge>>>16,this[ce+3]=ge>>>24,ce+4},t.prototype.writeInt32BE=function(ge,ce,ze){return ge=+ge,ce=ce>>>0,ze||U(this,ge,ce,4,2147483647,-2147483648),ge<0&&(ge=4294967295+ge+1),this[ce]=ge>>>24,this[ce+1]=ge>>>16,this[ce+2]=ge>>>8,this[ce+3]=ge&255,ce+4},t.prototype.writeBigInt64LE=et(function(ge,ce=0){return W(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),t.prototype.writeBigInt64BE=et(function(ge,ce=0){return Q(this,ge,ce,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function ue(Me,ge,ce,ze,tt,nt){if(ce+ze>Me.length)throw new RangeError("Index out of range");if(ce<0)throw new RangeError("Index out of range")}function se(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,4,34028234663852886e22,-34028234663852886e22),g.write(Me,ge,ce,ze,23,4),ce+4}t.prototype.writeFloatLE=function(ge,ce,ze){return se(this,ge,ce,!0,ze)},t.prototype.writeFloatBE=function(ge,ce,ze){return se(this,ge,ce,!1,ze)};function he(Me,ge,ce,ze,tt){return ge=+ge,ce=ce>>>0,tt||ue(Me,ge,ce,8,17976931348623157e292,-17976931348623157e292),g.write(Me,ge,ce,ze,52,8),ce+8}t.prototype.writeDoubleLE=function(ge,ce,ze){return he(this,ge,ce,!0,ze)},t.prototype.writeDoubleBE=function(ge,ce,ze){return he(this,ge,ce,!1,ze)},t.prototype.copy=function(ge,ce,ze,tt){if(!t.isBuffer(ge))throw new TypeError("argument should be a Buffer");if(ze||(ze=0),!tt&&tt!==0&&(tt=this.length),ce>=ge.length&&(ce=ge.length),ce||(ce=0),tt>0&&tt<ze&&(tt=ze),tt===ze||ge.length===0||this.length===0)return 0;if(ce<0)throw new RangeError("targetStart out of bounds");if(ze<0||ze>=this.length)throw new RangeError("Index out of range");if(tt<0)throw new RangeError("sourceEnd out of bounds");tt>this.length&&(tt=this.length),ge.length-ce<tt-ze&&(tt=ge.length-ce+ze);let nt=tt-ze;return this===ge&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(ce,ze,tt):Uint8Array.prototype.set.call(ge,this.subarray(ze,tt),ce),nt},t.prototype.fill=function(ge,ce,ze,tt){if(typeof ge=="string"){if(typeof ce=="string"?(tt=ce,ce=0,ze=this.length):typeof ze=="string"&&(tt=ze,ze=this.length),tt!==void 0&&typeof tt!="string")throw new TypeError("encoding must be a string");if(typeof tt=="string"&&!t.isEncoding(tt))throw new TypeError("Unknown encoding: "+tt);if(ge.length===1){let Qe=ge.charCodeAt(0);(tt==="utf8"&&Qe<128||tt==="latin1")&&(ge=Qe)}}else typeof ge=="number"?ge=ge&255:typeof ge=="boolean"&&(ge=Number(ge));if(ce<0||this.length<ce||this.length<ze)throw new RangeError("Out of range index");if(ze<=ce)return this;ce=ce>>>0,ze=ze===void 0?this.length:ze>>>0,ge||(ge=0);let nt;if(typeof ge=="number")for(nt=ce;nt<ze;++nt)this[nt]=ge;else{let Qe=t.isBuffer(ge)?ge:t.from(ge,tt),Ct=Qe.length;if(Ct===0)throw new TypeError('The value "'+ge+'" is invalid for argument "value"');for(nt=0;nt<ze-ce;++nt)this[nt+ce]=Qe[nt%Ct]}return this};var G={};function $(Me,ge,ce){G[Me]=class extends ce{constructor(){super(),Object.defineProperty(this,"message",{value:ge.apply(this,arguments),writable:!0,configurable:!0}),this.name=`${this.name} [${Me}]`,this.stack,delete this.name}get code(){return Me}set code(tt){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:tt,writable:!0})}toString(){return`${this.name} [${Me}]: ${this.message}`}}}$("ERR_BUFFER_OUT_OF_BOUNDS",function(Me){return Me?`${Me} is outside of buffer bounds`:"Attempt to access memory outside buffer bounds"},RangeError),$("ERR_INVALID_ARG_TYPE",function(Me,ge){return`The "${Me}" argument must be of type number. Received type ${typeof ge}`},TypeError),$("ERR_OUT_OF_RANGE",function(Me,ge,ce){let ze=`The value of "${Me}" is out of range.`,tt=ce;return Number.isInteger(ce)&&Math.abs(ce)>2**32?tt=J(String(ce)):typeof ce=="bigint"&&(tt=String(ce),(ce>BigInt(2)**BigInt(32)||ce<-(BigInt(2)**BigInt(32)))&&(tt=J(tt)),tt+="n"),ze+=` It must be ${ge}. Received ${tt}`,ze},RangeError);function J(Me){let ge="",ce=Me.length,ze=Me[0]==="-"?1:0;for(;ce>=ze+4;ce-=3)ge=`_${Me.slice(ce-3,ce)}${ge}`;return`${Me.slice(0,ce)}${ge}`}function Z(Me,ge,ce){ne(ge,"offset"),(Me[ge]===void 0||Me[ge+ce]===void 0)&&j(ge,Me.length-(ce+1))}function re(Me,ge,ce,ze,tt,nt){if(Me>ce||Me<ge){let Qe=typeof ge=="bigint"?"n":"",Ct;throw nt>3?ge===0||ge===BigInt(0)?Ct=`>= 0${Qe} and < 2${Qe} ** ${(nt+1)*8}${Qe}`:Ct=`>= -(2${Qe} ** ${(nt+1)*8-1}${Qe}) and < 2 ** ${(nt+1)*8-1}${Qe}`:Ct=`>= ${ge}${Qe} and <= ${ce}${Qe}`,new G.ERR_OUT_OF_RANGE("value",Ct,Me)}Z(ze,tt,nt)}function ne(Me,ge){if(typeof Me!="number")throw new G.ERR_INVALID_ARG_TYPE(ge,"number",Me)}function j(Me,ge,ce){throw Math.floor(Me)!==Me?(ne(Me,ce),new G.ERR_OUT_OF_RANGE(ce||"offset","an integer",Me)):ge<0?new G.ERR_BUFFER_OUT_OF_BOUNDS:new G.ERR_OUT_OF_RANGE(ce||"offset",`>= ${ce?1:0} and <= ${ge}`,Me)}var ee=/[^+/0-9A-Za-z-_]/g;function ie(Me){if(Me=Me.split("=")[0],Me=Me.trim().replace(ee,""),Me.length<2)return"";for(;Me.length%4!==0;)Me=Me+"=";return Me}function fe(Me,ge){ge=ge||1/0;let ce,ze=Me.length,tt=null,nt=[];for(let Qe=0;Qe<ze;++Qe){if(ce=Me.charCodeAt(Qe),ce>55295&&ce<57344){if(!tt){if(ce>56319){(ge-=3)>-1&&nt.push(239,191,189);continue}else if(Qe+1===ze){(ge-=3)>-1&&nt.push(239,191,189);continue}tt=ce;continue}if(ce<56320){(ge-=3)>-1&&nt.push(239,191,189),tt=ce;continue}ce=(tt-55296<<10|ce-56320)+65536}else tt&&(ge-=3)>-1&&nt.push(239,191,189);if(tt=null,ce<128){if((ge-=1)<0)break;nt.push(ce)}else if(ce<2048){if((ge-=2)<0)break;nt.push(ce>>6|192,ce&63|128)}else if(ce<65536){if((ge-=3)<0)break;nt.push(ce>>12|224,ce>>6&63|128,ce&63|128)}else if(ce<1114112){if((ge-=4)<0)break;nt.push(ce>>18|240,ce>>12&63|128,ce>>6&63|128,ce&63|128)}else throw new Error("Invalid code point")}return nt}function be(Me){let ge=[];for(let ce=0;ce<Me.length;++ce)ge.push(Me.charCodeAt(ce)&255);return ge}function Ae(Me,ge){let ce,ze,tt,nt=[];for(let Qe=0;Qe<Me.length&&!((ge-=2)<0);++Qe)ce=Me.charCodeAt(Qe),ze=ce>>8,tt=ce%256,nt.push(tt),nt.push(ze);return nt}function Be(Me){return H.toByteArray(ie(Me))}function Ie(Me,ge,ce,ze){let tt;for(tt=0;tt<ze&&!(tt+ce>=ge.length||tt>=Me.length);++tt)ge[tt+ce]=Me[tt];return tt}function Ze(Me,ge){return Me instanceof ge||Me!=null&&Me.constructor!=null&&Me.constructor.name!=null&&Me.constructor.name===ge.name}function at(Me){return Me!==Me}var it=function(){let Me="0123456789abcdef",ge=new Array(256);for(let ce=0;ce<16;++ce){let ze=ce*16;for(let tt=0;tt<16;++tt)ge[ze+tt]=Me[ce]+Me[tt]}return ge}();function et(Me){return typeof BigInt>"u"?lt:Me}function lt(){throw new Error("BigInt not supported")}}}),h3=Ye({"node_modules/has-symbols/shams.js"(X,H){"use strict";H.exports=function(){if(typeof Symbol!="function"||typeof Object.getOwnPropertySymbols!="function")return!1;if(typeof Symbol.iterator=="symbol")return!0;var x={},A=Symbol("test"),M=Object(A);if(typeof A=="string"||Object.prototype.toString.call(A)!=="[object Symbol]"||Object.prototype.toString.call(M)!=="[object Symbol]")return!1;var e=42;x[A]=e;for(A in x)return!1;if(typeof Object.keys=="function"&&Object.keys(x).length!==0||typeof Object.getOwnPropertyNames=="function"&&Object.getOwnPropertyNames(x).length!==0)return!1;var t=Object.getOwnPropertySymbols(x);if(t.length!==1||t[0]!==A||!Object.prototype.propertyIsEnumerable.call(x,A))return!1;if(typeof Object.getOwnPropertyDescriptor=="function"){var r=Object.getOwnPropertyDescriptor(x,A);if(r.value!==e||r.enumerable!==!0)return!1}return!0}}}),q_=Ye({"node_modules/has-tostringtag/shams.js"(X,H){"use strict";var g=h3();H.exports=function(){return g()&&!!Symbol.toStringTag}}}),s4=Ye({"node_modules/es-errors/index.js"(X,H){"use strict";H.exports=Error}}),l4=Ye({"node_modules/es-errors/eval.js"(X,H){"use strict";H.exports=EvalError}}),u4=Ye({"node_modules/es-errors/range.js"(X,H){"use strict";H.exports=RangeError}}),c4=Ye({"node_modules/es-errors/ref.js"(X,H){"use strict";H.exports=ReferenceError}}),DM=Ye({"node_modules/es-errors/syntax.js"(X,H){"use strict";H.exports=SyntaxError}}),H_=Ye({"node_modules/es-errors/type.js"(X,H){"use strict";H.exports=TypeError}}),f4=Ye({"node_modules/es-errors/uri.js"(X,H){"use strict";H.exports=URIError}}),h4=Ye({"node_modules/has-symbols/index.js"(X,H){"use strict";var g=typeof Symbol<"u"&&Symbol,x=h3();H.exports=function(){return typeof g!="function"||typeof Symbol!="function"||typeof g("foo")!="symbol"||typeof Symbol("bar")!="symbol"?!1:x()}}}),p4=Ye({"node_modules/has-proto/index.js"(X,H){"use strict";var g={foo:{}},x=Object;H.exports=function(){return{__proto__:g}.foo===g.foo&&!({__proto__:null}instanceof x)}}}),d4=Ye({"node_modules/function-bind/implementation.js"(X,H){"use strict";var g="Function.prototype.bind called on incompatible ",x=Object.prototype.toString,A=Math.max,M="[object Function]",e=function(a,i){for(var n=[],s=0;s<a.length;s+=1)n[s]=a[s];for(var c=0;c<i.length;c+=1)n[c+a.length]=i[c];return n},t=function(a,i){for(var n=[],s=i||0,c=0;s<a.length;s+=1,c+=1)n[c]=a[s];return n},r=function(o,a){for(var i="",n=0;n<o.length;n+=1)i+=o[n],n+1<o.length&&(i+=a);return i};H.exports=function(a){var i=this;if(typeof i!="function"||x.apply(i)!==M)throw new TypeError(g+i);for(var n=t(arguments,1),s,c=function(){if(this instanceof s){var l=i.apply(this,e(n,arguments));return Object(l)===l?l:this}return i.apply(a,e(n,arguments))},h=A(0,i.length-n.length),v=[],p=0;p<h;p++)v[p]="$"+p;if(s=Function("binder","return function ("+r(v,",")+"){ return binder.apply(this,arguments); }")(c),i.prototype){var T=function(){};T.prototype=i.prototype,s.prototype=new T,T.prototype=null}return s}}}),p3=Ye({"node_modules/function-bind/index.js"(X,H){"use strict";var g=d4();H.exports=Function.prototype.bind||g}}),v4=Ye({"node_modules/hasown/index.js"(X,H){"use strict";var g=Function.prototype.call,x=Object.prototype.hasOwnProperty,A=p3();H.exports=A.call(g,x)}}),v1=Ye({"node_modules/get-intrinsic/index.js"(X,H){"use strict";var g,x=s4(),A=l4(),M=u4(),e=c4(),t=DM(),r=H_(),o=f4(),a=Function,i=function(O){try{return a('"use strict"; return ('+O+").constructor;")()}catch{}},n=Object.getOwnPropertyDescriptor;if(n)try{n({},"")}catch{n=null}var s=function(){throw new r},c=n?function(){try{return arguments.callee,s}catch{try{return n(arguments,"callee").get}catch{return s}}}():s,h=h4()(),v=p4()(),p=Object.getPrototypeOf||(v?function(O){return O.__proto__}:null),T={},l=typeof Uint8Array>"u"||!p?g:p(Uint8Array),_={__proto__:null,"%AggregateError%":typeof AggregateError>"u"?g:AggregateError,"%Array%":Array,"%ArrayBuffer%":typeof ArrayBuffer>"u"?g:ArrayBuffer,"%ArrayIteratorPrototype%":h&&p?p([][Symbol.iterator]()):g,"%AsyncFromSyncIteratorPrototype%":g,"%AsyncFunction%":T,"%AsyncGenerator%":T,"%AsyncGeneratorFunction%":T,"%AsyncIteratorPrototype%":T,"%Atomics%":typeof Atomics>"u"?g:Atomics,"%BigInt%":typeof BigInt>"u"?g:BigInt,"%BigInt64Array%":typeof BigInt64Array>"u"?g:BigInt64Array,"%BigUint64Array%":typeof BigUint64Array>"u"?g:BigUint64Array,"%Boolean%":Boolean,"%DataView%":typeof DataView>"u"?g:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":x,"%eval%":eval,"%EvalError%":A,"%Float32Array%":typeof Float32Array>"u"?g:Float32Array,"%Float64Array%":typeof Float64Array>"u"?g:Float64Array,"%FinalizationRegistry%":typeof FinalizationRegistry>"u"?g:FinalizationRegistry,"%Function%":a,"%GeneratorFunction%":T,"%Int8Array%":typeof Int8Array>"u"?g:Int8Array,"%Int16Array%":typeof Int16Array>"u"?g:Int16Array,"%Int32Array%":typeof Int32Array>"u"?g:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":h&&p?p(p([][Symbol.iterator]())):g,"%JSON%":typeof JSON=="object"?JSON:g,"%Map%":typeof Map>"u"?g:Map,"%MapIteratorPrototype%":typeof Map>"u"||!h||!p?g:p(new Map()[Symbol.iterator]()),"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":typeof Promise>"u"?g:Promise,"%Proxy%":typeof Proxy>"u"?g:Proxy,"%RangeError%":M,"%ReferenceError%":e,"%Reflect%":typeof Reflect>"u"?g:Reflect,"%RegExp%":RegExp,"%Set%":typeof Set>"u"?g:Set,"%SetIteratorPrototype%":typeof Set>"u"||!h||!p?g:p(new Set()[Symbol.iterator]()),"%SharedArrayBuffer%":typeof SharedArrayBuffer>"u"?g:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":h&&p?p(""[Symbol.iterator]()):g,"%Symbol%":h?Symbol:g,"%SyntaxError%":t,"%ThrowTypeError%":c,"%TypedArray%":l,"%TypeError%":r,"%Uint8Array%":typeof Uint8Array>"u"?g:Uint8Array,"%Uint8ClampedArray%":typeof Uint8ClampedArray>"u"?g:Uint8ClampedArray,"%Uint16Array%":typeof Uint16Array>"u"?g:Uint16Array,"%Uint32Array%":typeof Uint32Array>"u"?g:Uint32Array,"%URIError%":o,"%WeakMap%":typeof WeakMap>"u"?g:WeakMap,"%WeakRef%":typeof WeakRef>"u"?g:WeakRef,"%WeakSet%":typeof WeakSet>"u"?g:WeakSet};if(p)try{null.error}catch(O){w=p(p(O)),_["%Error.prototype%"]=w}var w,S=function O(I){var N;if(I==="%AsyncFunction%")N=i("async function () {}");else if(I==="%GeneratorFunction%")N=i("function* () {}");else if(I==="%AsyncGeneratorFunction%")N=i("async function* () {}");else if(I==="%AsyncGenerator%"){var U=O("%AsyncGeneratorFunction%");U&&(N=U.prototype)}else if(I==="%AsyncIteratorPrototype%"){var W=O("%AsyncGenerator%");W&&p&&(N=p(W.prototype))}return _[I]=N,N},E={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},m=p3(),b=v4(),d=m.call(Function.call,Array.prototype.concat),u=m.call(Function.apply,Array.prototype.splice),y=m.call(Function.call,String.prototype.replace),f=m.call(Function.call,String.prototype.slice),P=m.call(Function.call,RegExp.prototype.exec),L=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,z=/\\(\\)?/g,F=function(I){var N=f(I,0,1),U=f(I,-1);if(N==="%"&&U!=="%")throw new t("invalid intrinsic syntax, expected closing `%`");if(U==="%"&&N!=="%")throw new t("invalid intrinsic syntax, expected opening `%`");var W=[];return y(I,L,function(Q,ue,se,he){W[W.length]=se?y(he,z,"$1"):ue||Q}),W},B=function(I,N){var U=I,W;if(b(E,U)&&(W=E[U],U="%"+W[0]+"%"),b(_,U)){var Q=_[U];if(Q===T&&(Q=S(U)),typeof Q>"u"&&!N)throw new r("intrinsic "+I+" exists, but is not available. Please file an issue!");return{alias:W,name:U,value:Q}}throw new t("intrinsic "+I+" does not exist!")};H.exports=function(I,N){if(typeof I!="string"||I.length===0)throw new r("intrinsic name must be a non-empty string");if(arguments.length>1&&typeof N!="boolean")throw new r('"allowMissing" argument must be a boolean');if(P(/^%?[^%]*%?$/,I)===null)throw new t("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var U=F(I),W=U.length>0?U[0]:"",Q=B("%"+W+"%",N),ue=Q.name,se=Q.value,he=!1,G=Q.alias;G&&(W=G[0],u(U,d([0,1],G)));for(var $=1,J=!0;$<U.length;$+=1){var Z=U[$],re=f(Z,0,1),ne=f(Z,-1);if((re==='"'||re==="'"||re==="`"||ne==='"'||ne==="'"||ne==="`")&&re!==ne)throw new t("property names with quotes must have matching quotes");if((Z==="constructor"||!J)&&(he=!0),W+="."+Z,ue="%"+W+"%",b(_,ue))se=_[ue];else if(se!=null){if(!(Z in se)){if(!N)throw new r("base intrinsic for "+I+" exists, but the property is not available.");return}if(n&&$+1>=U.length){var j=n(se,Z);J=!!j,J&&"get"in j&&!("originalValue"in j.get)?se=j.get:se=se[Z]}else J=b(se,Z),se=se[Z];J&&!he&&(_[ue]=se)}}return se}}}),d3=Ye({"node_modules/es-define-property/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.defineProperty%",!0)||!1;if(x)try{x({},"a",{value:1})}catch{x=!1}H.exports=x}}),G_=Ye({"node_modules/gopd/index.js"(X,H){"use strict";var g=v1(),x=g("%Object.getOwnPropertyDescriptor%",!0);if(x)try{x([],"length")}catch{x=null}H.exports=x}}),m4=Ye({"node_modules/define-data-property/index.js"(X,H){"use strict";var g=d3(),x=DM(),A=H_(),M=G_();H.exports=function(t,r,o){if(!t||typeof t!="object"&&typeof t!="function")throw new A("`obj` must be an object or a function`");if(typeof r!="string"&&typeof r!="symbol")throw new A("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!="boolean"&&arguments[3]!==null)throw new A("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!="boolean"&&arguments[4]!==null)throw new A("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!="boolean"&&arguments[5]!==null)throw new A("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!="boolean")throw new A("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,i=arguments.length>4?arguments[4]:null,n=arguments.length>5?arguments[5]:null,s=arguments.length>6?arguments[6]:!1,c=!!M&&M(t,r);if(g)g(t,r,{configurable:n===null&&c?c.configurable:!n,enumerable:a===null&&c?c.enumerable:!a,value:o,writable:i===null&&c?c.writable:!i});else if(s||!a&&!i&&!n)t[r]=o;else throw new x("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}}}),zM=Ye({"node_modules/has-property-descriptors/index.js"(X,H){"use strict";var g=d3(),x=function(){return!!g};x.hasArrayLengthDefineBug=function(){if(!g)return null;try{return g([],"length",{value:1}).length!==1}catch{return!0}},H.exports=x}}),g4=Ye({"node_modules/set-function-length/index.js"(X,H){"use strict";var g=v1(),x=m4(),A=zM()(),M=G_(),e=H_(),t=g("%Math.floor%");H.exports=function(o,a){if(typeof o!="function")throw new e("`fn` is not a function");if(typeof a!="number"||a<0||a>4294967295||t(a)!==a)throw new e("`length` must be a positive 32-bit integer");var i=arguments.length>2&&!!arguments[2],n=!0,s=!0;if("length"in o&&M){var c=M(o,"length");c&&!c.configurable&&(n=!1),c&&!c.writable&&(s=!1)}return(n||s||!i)&&(A?x(o,"length",a,!0,!0):x(o,"length",a)),o}}}),W_=Ye({"node_modules/call-bind/index.js"(X,H){"use strict";var g=p3(),x=v1(),A=g4(),M=H_(),e=x("%Function.prototype.apply%"),t=x("%Function.prototype.call%"),r=x("%Reflect.apply%",!0)||g.call(t,e),o=d3(),a=x("%Math.max%");H.exports=function(s){if(typeof s!="function")throw new M("a function is required");var c=r(g,t,arguments);return A(c,1+a(0,s.length-(arguments.length-1)),!0)};var i=function(){return r(g,e,arguments)};o?o(H.exports,"apply",{value:i}):H.exports.apply=i}}),m1=Ye({"node_modules/call-bind/callBound.js"(X,H){"use strict";var g=v1(),x=W_(),A=x(g("String.prototype.indexOf"));H.exports=function(e,t){var r=g(e,!!t);return typeof r=="function"&&A(e,".prototype.")>-1?x(r):r}}}),y4=Ye({"node_modules/is-arguments/index.js"(X,H){"use strict";var g=q_()(),x=m1(),A=x("Object.prototype.toString"),M=function(o){return g&&o&&typeof o=="object"&&Symbol.toStringTag in o?!1:A(o)==="[object Arguments]"},e=function(o){return M(o)?!0:o!==null&&typeof o=="object"&&typeof o.length=="number"&&o.length>=0&&A(o)!=="[object Array]"&&A(o.callee)==="[object Function]"},t=function(){return M(arguments)}();M.isLegacyArguments=e,H.exports=t?M:e}}),_4=Ye({"node_modules/is-generator-function/index.js"(X,H){"use strict";var g=Object.prototype.toString,x=Function.prototype.toString,A=/^\s*(?:function)?\*/,M=q_()(),e=Object.getPrototypeOf,t=function(){if(!M)return!1;try{return Function("return function*() {}")()}catch{}},r;H.exports=function(a){if(typeof a!="function")return!1;if(A.test(x.call(a)))return!0;if(!M){var i=g.call(a);return i==="[object GeneratorFunction]"}if(!e)return!1;if(typeof r>"u"){var n=t();r=n?e(n):!1}return e(a)===r}}}),x4=Ye({"node_modules/is-callable/index.js"(X,H){"use strict";var g=Function.prototype.toString,x=typeof Reflect=="object"&&Reflect!==null&&Reflect.apply,A,M;if(typeof x=="function"&&typeof Object.defineProperty=="function")try{A=Object.defineProperty({},"length",{get:function(){throw M}}),M={},x(function(){throw 42},null,A)}catch(_){_!==M&&(x=null)}else x=null;var e=/^\s*class\b/,t=function(w){try{var S=g.call(w);return e.test(S)}catch{return!1}},r=function(w){try{return t(w)?!1:(g.call(w),!0)}catch{return!1}},o=Object.prototype.toString,a="[object Object]",i="[object Function]",n="[object GeneratorFunction]",s="[object HTMLAllCollection]",c="[object HTML document.all class]",h="[object HTMLCollection]",v=typeof Symbol=="function"&&!!Symbol.toStringTag,p=!(0 in[,]),T=function(){return!1};typeof document=="object"&&(l=document.all,o.call(l)===o.call(document.all)&&(T=function(w){if((p||!w)&&(typeof w>"u"||typeof w=="object"))try{var S=o.call(w);return(S===s||S===c||S===h||S===a)&&w("")==null}catch{}return!1}));var l;H.exports=x?function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;try{x(w,null,A)}catch(S){if(S!==M)return!1}return!t(w)&&r(w)}:function(w){if(T(w))return!0;if(!w||typeof w!="function"&&typeof w!="object")return!1;if(v)return r(w);if(t(w))return!1;var S=o.call(w);return S!==i&&S!==n&&!/^\[object HTML/.test(S)?!1:r(w)}}}),FM=Ye({"node_modules/for-each/index.js"(X,H){"use strict";var g=x4(),x=Object.prototype.toString,A=Object.prototype.hasOwnProperty,M=function(a,i,n){for(var s=0,c=a.length;s<c;s++)A.call(a,s)&&(n==null?i(a[s],s,a):i.call(n,a[s],s,a))},e=function(a,i,n){for(var s=0,c=a.length;s<c;s++)n==null?i(a.charAt(s),s,a):i.call(n,a.charAt(s),s,a)},t=function(a,i,n){for(var s in a)A.call(a,s)&&(n==null?i(a[s],s,a):i.call(n,a[s],s,a))},r=function(a,i,n){if(!g(i))throw new TypeError("iterator must be a function");var s;arguments.length>=3&&(s=n),x.call(a)==="[object Array]"?M(a,i,s):typeof a=="string"?e(a,i,s):t(a,i,s)};H.exports=r}}),OM=Ye({"node_modules/available-typed-arrays/index.js"(X,H){"use strict";var g=["BigInt64Array","BigUint64Array","Float32Array","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Uint8Array","Uint8ClampedArray"],x=typeof globalThis>"u"?window:globalThis;H.exports=function(){for(var M=[],e=0;e<g.length;e++)typeof x[g[e]]=="function"&&(M[M.length]=g[e]);return M}}}),b4=Ye({"node_modules/which-typed-array/index.js"(X,H){"use strict";var g=FM(),x=OM(),A=W_(),M=m1(),e=G_(),t=M("Object.prototype.toString"),r=q_()(),o=typeof globalThis>"u"?window:globalThis,a=x(),i=M("String.prototype.slice"),n=Object.getPrototypeOf,s=M("Array.prototype.indexOf",!0)||function(T,l){for(var _=0;_<T.length;_+=1)if(T[_]===l)return _;return-1},c={__proto__:null};r&&e&&n?g(a,function(p){var T=new o[p];if(Symbol.toStringTag in T){var l=n(T),_=e(l,Symbol.toStringTag);if(!_){var w=n(l);_=e(w,Symbol.toStringTag)}c["$"+p]=A(_.get)}}):g(a,function(p){var T=new o[p],l=T.slice||T.set;l&&(c["$"+p]=A(l))});var h=function(T){var l=!1;return g(c,function(_,w){if(!l)try{"$"+_(T)===w&&(l=i(w,1))}catch{}}),l},v=function(T){var l=!1;return g(c,function(_,w){if(!l)try{_(T),l=i(w,1)}catch{}}),l};H.exports=function(T){if(!T||typeof T!="object")return!1;if(!r){var l=i(t(T),8,-1);return s(a,l)>-1?l:l!=="Object"?!1:v(T)}return e?h(T):null}}}),w4=Ye({"node_modules/is-typed-array/index.js"(X,H){"use strict";var g=FM(),x=OM(),A=m1(),M=A("Object.prototype.toString"),e=q_()(),t=G_(),r=typeof globalThis>"u"?window:globalThis,o=x(),a=A("Array.prototype.indexOf",!0)||function(v,p){for(var T=0;T<v.length;T+=1)if(v[T]===p)return T;return-1},i=A("String.prototype.slice"),n={},s=Object.getPrototypeOf;e&&t&&s&&g(o,function(h){var v=new r[h];if(Symbol.toStringTag in v){var p=s(v),T=t(p,Symbol.toStringTag);if(!T){var l=s(p);T=t(l,Symbol.toStringTag)}n[h]=T.get}});var c=function(v){var p=!1;return g(n,function(T,l){if(!p)try{p=T.call(v)===l}catch{}}),p};H.exports=function(v){if(!v||typeof v!="object")return!1;if(!e||!(Symbol.toStringTag in v)){var p=i(M(v),8,-1);return a(o,p)>-1}return t?c(v):!1}}}),BM=Ye({"node_modules/util/support/types.js"(X){"use strict";var H=y4(),g=_4(),x=b4(),A=w4();function M(Ae){return Ae.call.bind(Ae)}var e=typeof BigInt<"u",t=typeof Symbol<"u",r=M(Object.prototype.toString),o=M(Number.prototype.valueOf),a=M(String.prototype.valueOf),i=M(Boolean.prototype.valueOf);e&&(n=M(BigInt.prototype.valueOf));var n;t&&(s=M(Symbol.prototype.valueOf));var s;function c(Ae,Be){if(typeof Ae!="object")return!1;try{return Be(Ae),!0}catch{return!1}}X.isArgumentsObject=H,X.isGeneratorFunction=g,X.isTypedArray=A;function h(Ae){return typeof Promise<"u"&&Ae instanceof Promise||Ae!==null&&typeof Ae=="object"&&typeof Ae.then=="function"&&typeof Ae.catch=="function"}X.isPromise=h;function v(Ae){return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?ArrayBuffer.isView(Ae):A(Ae)||W(Ae)}X.isArrayBufferView=v;function p(Ae){return x(Ae)==="Uint8Array"}X.isUint8Array=p;function T(Ae){return x(Ae)==="Uint8ClampedArray"}X.isUint8ClampedArray=T;function l(Ae){return x(Ae)==="Uint16Array"}X.isUint16Array=l;function _(Ae){return x(Ae)==="Uint32Array"}X.isUint32Array=_;function w(Ae){return x(Ae)==="Int8Array"}X.isInt8Array=w;function S(Ae){return x(Ae)==="Int16Array"}X.isInt16Array=S;function E(Ae){return x(Ae)==="Int32Array"}X.isInt32Array=E;function m(Ae){return x(Ae)==="Float32Array"}X.isFloat32Array=m;function b(Ae){return x(Ae)==="Float64Array"}X.isFloat64Array=b;function d(Ae){return x(Ae)==="BigInt64Array"}X.isBigInt64Array=d;function u(Ae){return x(Ae)==="BigUint64Array"}X.isBigUint64Array=u;function y(Ae){return r(Ae)==="[object Map]"}y.working=typeof Map<"u"&&y(new Map);function f(Ae){return typeof Map>"u"?!1:y.working?y(Ae):Ae instanceof Map}X.isMap=f;function P(Ae){return r(Ae)==="[object Set]"}P.working=typeof Set<"u"&&P(new Set);function L(Ae){return typeof Set>"u"?!1:P.working?P(Ae):Ae instanceof Set}X.isSet=L;function z(Ae){return r(Ae)==="[object WeakMap]"}z.working=typeof WeakMap<"u"&&z(new WeakMap);function F(Ae){return typeof WeakMap>"u"?!1:z.working?z(Ae):Ae instanceof WeakMap}X.isWeakMap=F;function B(Ae){return r(Ae)==="[object WeakSet]"}B.working=typeof WeakSet<"u"&&B(new WeakSet);function O(Ae){return B(Ae)}X.isWeakSet=O;function I(Ae){return r(Ae)==="[object ArrayBuffer]"}I.working=typeof ArrayBuffer<"u"&&I(new ArrayBuffer);function N(Ae){return typeof ArrayBuffer>"u"?!1:I.working?I(Ae):Ae instanceof ArrayBuffer}X.isArrayBuffer=N;function U(Ae){return r(Ae)==="[object DataView]"}U.working=typeof ArrayBuffer<"u"&&typeof DataView<"u"&&U(new DataView(new ArrayBuffer(1),0,1));function W(Ae){return typeof DataView>"u"?!1:U.working?U(Ae):Ae instanceof DataView}X.isDataView=W;var Q=typeof SharedArrayBuffer<"u"?SharedArrayBuffer:void 0;function ue(Ae){return r(Ae)==="[object SharedArrayBuffer]"}function se(Ae){return typeof Q>"u"?!1:(typeof ue.working>"u"&&(ue.working=ue(new Q)),ue.working?ue(Ae):Ae instanceof Q)}X.isSharedArrayBuffer=se;function he(Ae){return r(Ae)==="[object AsyncFunction]"}X.isAsyncFunction=he;function G(Ae){return r(Ae)==="[object Map Iterator]"}X.isMapIterator=G;function $(Ae){return r(Ae)==="[object Set Iterator]"}X.isSetIterator=$;function J(Ae){return r(Ae)==="[object Generator]"}X.isGeneratorObject=J;function Z(Ae){return r(Ae)==="[object WebAssembly.Module]"}X.isWebAssemblyCompiledModule=Z;function re(Ae){return c(Ae,o)}X.isNumberObject=re;function ne(Ae){return c(Ae,a)}X.isStringObject=ne;function j(Ae){return c(Ae,i)}X.isBooleanObject=j;function ee(Ae){return e&&c(Ae,n)}X.isBigIntObject=ee;function ie(Ae){return t&&c(Ae,s)}X.isSymbolObject=ie;function fe(Ae){return re(Ae)||ne(Ae)||j(Ae)||ee(Ae)||ie(Ae)}X.isBoxedPrimitive=fe;function be(Ae){return typeof Uint8Array<"u"&&(N(Ae)||se(Ae))}X.isAnyArrayBuffer=be,["isProxy","isExternal","isModuleNamespaceObject"].forEach(function(Ae){Object.defineProperty(X,Ae,{enumerable:!1,value:function(){throw new Error(Ae+" is not supported in userland")}})})}}),NM=Ye({"node_modules/util/support/isBufferBrowser.js"(X,H){H.exports=function(x){return x&&typeof x=="object"&&typeof x.copy=="function"&&typeof x.fill=="function"&&typeof x.readUInt8=="function"}}}),UM=Ye({"(disabled):node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se<Q.length;se++)ue[Q[se]]=Object.getOwnPropertyDescriptor(W,Q[se]);return ue},g=/%[sdj%]/g;X.format=function(U){if(!w(U)){for(var W=[],Q=0;Q<arguments.length;Q++)W.push(e(arguments[Q]));return W.join(" ")}for(var Q=1,ue=arguments,se=ue.length,he=String(U).replace(g,function($){if($==="%%")return"%";if(Q>=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q<se;G=ue[++Q])T(G)||!b(G)?he+=" "+G:he+=" "+e(G);return he},X.deprecate=function(U,W){if(typeof process<"u"&&process.noDeprecation===!0)return U;if(typeof process>"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.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]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(`
+`)>-1&&(he?$=$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`).slice(2):$=`
+`+$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(`
+`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+`
+ `)+" "+U.join(`,
+ `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$<arguments.length;$++)G.push(arguments[$]);G.push(function(J,Z){J?se(J):ue(Z)});try{W.apply(this,G)}catch(J){se(J)}return he}return Object.setPrototypeOf(Q,Object.getPrototypeOf(W)),O&&Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(Q,H(W))},X.promisify.custom=O;function I(U,W){if(!U){var Q=new Error("Promise was rejected with a falsy value");Q.reason=U,U=Q}return W(U)}function N(U){if(typeof U!="function")throw new TypeError('The "original" argument must be of type Function');function W(){for(var Q=[],ue=0;ue<arguments.length;ue++)Q.push(arguments[ue]);var se=Q.pop();if(typeof se!="function")throw new TypeError("The last argument must be of type Function");var he=this,G=function(){return se.apply(he,arguments)};U.apply(this,Q).then(function($){process.nextTick(G.bind(null,null,$))},function($){process.nextTick(I.bind(null,$,G))})}return Object.setPrototypeOf(W,Object.getPrototypeOf(U)),Object.defineProperties(W,H(U)),W}X.callbackify=N}}),T4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/buffer_list.js"(X,H){"use strict";function g(c,h){var v=Object.keys(c);if(Object.getOwnPropertySymbols){var p=Object.getOwnPropertySymbols(c);h&&(p=p.filter(function(T){return Object.getOwnPropertyDescriptor(c,T).enumerable})),v.push.apply(v,p)}return v}function x(c){for(var h=1;h<arguments.length;h++){var v=arguments[h]!=null?arguments[h]:{};h%2?g(Object(v),!0).forEach(function(p){A(c,p,v[p])}):Object.getOwnPropertyDescriptors?Object.defineProperties(c,Object.getOwnPropertyDescriptors(v)):g(Object(v)).forEach(function(p){Object.defineProperty(c,p,Object.getOwnPropertyDescriptor(v,p))})}return c}function A(c,h,v){return h in c?Object.defineProperty(c,h,{value:v,enumerable:!0,configurable:!0,writable:!0}):c[h]=v,c}function M(c,h){if(!(c instanceof h))throw new TypeError("Cannot call a class as a function")}function e(c,h){for(var v=0;v<h.length;v++){var p=h[v];p.enumerable=p.enumerable||!1,p.configurable=!0,"value"in p&&(p.writable=!0),Object.defineProperty(c,p.key,p)}}function t(c,h,v){return h&&e(c.prototype,h),v&&e(c,v),c}var r=t0(),o=r.Buffer,a=UM(),i=a.inspect,n=i&&i.custom||"inspect";function s(c,h,v){o.prototype.copy.call(c,h,v)}H.exports=function(){function c(){M(this,c),this.head=null,this.tail=null,this.length=0}return t(c,[{key:"push",value:function(v){var p={data:v,next:null};this.length>0?this.tail.next=p:this.head=p,this.tail=p,++this.length}},{key:"unshift",value:function(v){var p={data:v,next:this.head};this.length===0&&(this.tail=p),this.head=p,++this.length}},{key:"shift",value:function(){if(this.length!==0){var v=this.head.data;return this.length===1?this.head=this.tail=null:this.head=this.head.next,--this.length,v}}},{key:"clear",value:function(){this.head=this.tail=null,this.length=0}},{key:"join",value:function(v){if(this.length===0)return"";for(var p=this.head,T=""+p.data;p=p.next;)T+=v+p.data;return T}},{key:"concat",value:function(v){if(this.length===0)return o.alloc(0);for(var p=o.allocUnsafe(v>>>0),T=this.head,l=0;T;)s(T.data,p,l),l+=T.data.length,T=T.next;return p}},{key:"consume",value:function(v,p){var T;return v<this.head.data.length?(T=this.head.data.slice(0,v),this.head.data=this.head.data.slice(v)):v===this.head.data.length?T=this.shift():T=p?this._getString(v):this._getBuffer(v),T}},{key:"first",value:function(){return this.head.data}},{key:"_getString",value:function(v){var p=this.head,T=1,l=p.data;for(v-=l.length;p=p.next;){var _=p.data,w=v>_.length?_.length:v;if(w===_.length?l+=_:l+=_.slice(0,v),v-=w,v===0){w===_.length?(++T,p.next?this.head=p.next:this.head=this.tail=null):(this.head=p,p.data=_.slice(w));break}++T}return this.length-=T,l}},{key:"_getBuffer",value:function(v){var p=o.allocUnsafe(v),T=this.head,l=1;for(T.data.copy(p),v-=T.data.length;T=T.next;){var _=T.data,w=v>_.length?_.length:v;if(_.copy(p,p.length-v,0,w),v-=w,v===0){w===_.length?(++l,T.next?this.head=T.next:this.head=this.tail=null):(this.head=T,T.data=_.slice(w));break}++l}return this.length-=l,p}},{key:n,value:function(v,p){return i(this,x({},p,{depth:0,customInspect:!1}))}}]),c}()}}),jM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/destroy.js"(X,H){"use strict";function g(r,o){var a=this,i=this._readableState&&this._readableState.destroyed,n=this._writableState&&this._writableState.destroyed;return i||n?(o?o(r):r&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,process.nextTick(e,this,r)):process.nextTick(e,this,r)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(r||null,function(s){!o&&s?a._writableState?a._writableState.errorEmitted?process.nextTick(A,a):(a._writableState.errorEmitted=!0,process.nextTick(x,a,s)):process.nextTick(x,a,s):o?(process.nextTick(A,a),o(s)):process.nextTick(A,a)}),this)}function x(r,o){e(r,o),A(r)}function A(r){r._writableState&&!r._writableState.emitClose||r._readableState&&!r._readableState.emitClose||r.emit("close")}function M(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}function e(r,o){r.emit("error",o)}function t(r,o){var a=r._readableState,i=r._writableState;a&&a.autoDestroy||i&&i.autoDestroy?r.destroy(o):r.emit("error",o)}H.exports={destroy:g,undestroy:M,errorOrDestroy:t}}}),r0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/errors-browser.js"(X,H){"use strict";function g(o,a){o.prototype=Object.create(a.prototype),o.prototype.constructor=o,o.__proto__=a}var x={};function A(o,a,i){i||(i=Error);function n(c,h,v){return typeof a=="string"?a:a(c,h,v)}var s=function(c){g(h,c);function h(v,p,T){return c.call(this,n(v,p,T))||this}return h}(i);s.prototype.name=i.name,s.prototype.code=o,x[o]=s}function M(o,a){if(Array.isArray(o)){var i=o.length;return o=o.map(function(n){return String(n)}),i>2?"one of ".concat(a," ").concat(o.slice(0,i-1).join(", "),", or ")+o[i-1]:i===2?"one of ".concat(a," ").concat(o[0]," or ").concat(o[1]):"of ".concat(a," ").concat(o[0])}else return"of ".concat(a," ").concat(String(o))}function e(o,a,i){return o.substr(!i||i<0?0:+i,a.length)===a}function t(o,a,i){return(i===void 0||i>o.length)&&(i=o.length),o.substring(i-a.length,i)===a}function r(o,a,i){return typeof i!="number"&&(i=0),i+a.length>o.length?!1:o.indexOf(a,i)!==-1}A("ERR_INVALID_OPT_VALUE",function(o,a){return'The value "'+a+'" is invalid for option "'+o+'"'},TypeError),A("ERR_INVALID_ARG_TYPE",function(o,a,i){var n;typeof a=="string"&&e(a,"not ")?(n="must not be",a=a.replace(/^not /,"")):n="must be";var s;if(t(o," argument"))s="The ".concat(o," ").concat(n," ").concat(M(a,"type"));else{var c=r(o,".")?"property":"argument";s='The "'.concat(o,'" ').concat(c," ").concat(n," ").concat(M(a,"type"))}return s+=". Received type ".concat(typeof i),s},TypeError),A("ERR_STREAM_PUSH_AFTER_EOF","stream.push() after EOF"),A("ERR_METHOD_NOT_IMPLEMENTED",function(o){return"The "+o+" method is not implemented"}),A("ERR_STREAM_PREMATURE_CLOSE","Premature close"),A("ERR_STREAM_DESTROYED",function(o){return"Cannot call "+o+" after a stream was destroyed"}),A("ERR_MULTIPLE_CALLBACK","Callback called multiple times"),A("ERR_STREAM_CANNOT_PIPE","Cannot pipe, not readable"),A("ERR_STREAM_WRITE_AFTER_END","write after end"),A("ERR_STREAM_NULL_VALUES","May not write null values to stream",TypeError),A("ERR_UNKNOWN_ENCODING",function(o){return"Unknown encoding: "+o},TypeError),A("ERR_STREAM_UNSHIFT_AFTER_END_EVENT","stream.unshift() after end event"),H.exports.codes=x}}),VM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/state.js"(X,H){"use strict";var g=r0().codes.ERR_INVALID_OPT_VALUE;function x(M,e,t){return M.highWaterMark!=null?M.highWaterMark:e?M[t]:null}function A(M,e,t,r){var o=x(e,r,t);if(o!=null){if(!(isFinite(o)&&Math.floor(o)===o)||o<0){var a=r?t:"highWaterMark";throw new g(a,o)}return Math.floor(o)}return M.objectMode?16:16*1024}H.exports={getHighWaterMark:A}}}),A4=Ye({"node_modules/util-deprecate/browser.js"(X,H){H.exports=g;function g(A,M){if(x("noDeprecation"))return A;var e=!1;function t(){if(!e){if(x("throwDeprecation"))throw new Error(M);x("traceDeprecation")?console.trace(M):console.warn(M),e=!0}return A.apply(this,arguments)}return t}function x(A){try{if(!window.localStorage)return!1}catch{return!1}var M=window.localStorage[A];return M==null?!1:String(M).toLowerCase()==="true"}}}),qM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_writable.js"(X,H){"use strict";H.exports=d;function g(G){var $=this;this.next=null,this.entry=null,this.finish=function(){he($,G)}}var x;d.WritableState=m;var A={deprecate:A4()},M=RM(),e=t0().Buffer,t=window.Uint8Array||function(){};function r(G){return e.from(G)}function o(G){return e.isBuffer(G)||G instanceof t}var a=jM(),i=VM(),n=i.getHighWaterMark,s=r0().codes,c=s.ERR_INVALID_ARG_TYPE,h=s.ERR_METHOD_NOT_IMPLEMENTED,v=s.ERR_MULTIPLE_CALLBACK,p=s.ERR_STREAM_CANNOT_PIPE,T=s.ERR_STREAM_DESTROYED,l=s.ERR_STREAM_NULL_VALUES,_=s.ERR_STREAM_WRITE_AFTER_END,w=s.ERR_UNKNOWN_ENCODING,S=a.errorOrDestroy;Yv()(d,M);function E(){}function m(G,$,J){x=x||a0(),G=G||{},typeof J!="boolean"&&(J=$ instanceof x),this.objectMode=!!G.objectMode,J&&(this.objectMode=this.objectMode||!!G.writableObjectMode),this.highWaterMark=n(this,G,"writableHighWaterMark",J),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var Z=G.decodeStrings===!1;this.decodeStrings=!Z,this.defaultEncoding=G.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(re){B($,re)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.emitClose=G.emitClose!==!1,this.autoDestroy=!!G.autoDestroy,this.bufferedRequestCount=0,this.corkedRequestsFree=new g(this)}m.prototype.getBuffer=function(){for(var $=this.bufferedRequest,J=[];$;)J.push($),$=$.next;return J},function(){try{Object.defineProperty(m.prototype,"buffer",{get:A.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch{}}();var b;typeof Symbol=="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]=="function"?(b=Function.prototype[Symbol.hasInstance],Object.defineProperty(d,Symbol.hasInstance,{value:function($){return b.call(this,$)?!0:this!==d?!1:$&&$._writableState instanceof m}})):b=function($){return $ instanceof this};function d(G){x=x||a0();var $=this instanceof x;if(!$&&!b.call(d,this))return new d(G);this._writableState=new m(G,this,$),this.writable=!0,G&&(typeof G.write=="function"&&(this._write=G.write),typeof G.writev=="function"&&(this._writev=G.writev),typeof G.destroy=="function"&&(this._destroy=G.destroy),typeof G.final=="function"&&(this._final=G.final)),M.call(this)}d.prototype.pipe=function(){S(this,new p)};function u(G,$){var J=new _;S(G,J),process.nextTick($,J)}function y(G,$,J,Z){var re;return J===null?re=new l:typeof J!="string"&&!$.objectMode&&(re=new c("chunk",["string","Buffer"],J)),re?(S(G,re),process.nextTick(Z,re),!1):!0}d.prototype.write=function(G,$,J){var Z=this._writableState,re=!1,ne=!Z.objectMode&&o(G);return ne&&!e.isBuffer(G)&&(G=r(G)),typeof $=="function"&&(J=$,$=null),ne?$="buffer":$||($=Z.defaultEncoding),typeof J!="function"&&(J=E),Z.ending?u(this,J):(ne||y(this,Z,G,J))&&(Z.pendingcb++,re=P(this,Z,ne,G,$,J)),re},d.prototype.cork=function(){this._writableState.corked++},d.prototype.uncork=function(){var G=this._writableState;G.corked&&(G.corked--,!G.writing&&!G.corked&&!G.bufferProcessing&&G.bufferedRequest&&N(this,G))},d.prototype.setDefaultEncoding=function($){if(typeof $=="string"&&($=$.toLowerCase()),!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf(($+"").toLowerCase())>-1))throw new w($);return this._writableState.defaultEncoding=$,this},Object.defineProperty(d.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}});function f(G,$,J){return!G.objectMode&&G.decodeStrings!==!1&&typeof $=="string"&&($=e.from($,J)),$}Object.defineProperty(d.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}});function P(G,$,J,Z,re,ne){if(!J){var j=f($,Z,re);Z!==j&&(J=!0,re="buffer",Z=j)}var ee=$.objectMode?1:Z.length;$.length+=ee;var ie=$.length<$.highWaterMark;if(ie||($.needDrain=!0),$.writing||$.corked){var fe=$.lastBufferedRequest;$.lastBufferedRequest={chunk:Z,encoding:re,isBuf:J,callback:ne,next:null},fe?fe.next=$.lastBufferedRequest:$.bufferedRequest=$.lastBufferedRequest,$.bufferedRequestCount+=1}else L(G,$,!1,ee,Z,re,ne);return ie}function L(G,$,J,Z,re,ne,j){$.writelen=Z,$.writecb=j,$.writing=!0,$.sync=!0,$.destroyed?$.onwrite(new T("write")):J?G._writev(re,$.onwrite):G._write(re,ne,$.onwrite),$.sync=!1}function z(G,$,J,Z,re){--$.pendingcb,J?(process.nextTick(re,Z),process.nextTick(ue,G,$),G._writableState.errorEmitted=!0,S(G,Z)):(re(Z),G._writableState.errorEmitted=!0,S(G,Z),ue(G,$))}function F(G){G.writing=!1,G.writecb=null,G.length-=G.writelen,G.writelen=0}function B(G,$){var J=G._writableState,Z=J.sync,re=J.writecb;if(typeof re!="function")throw new v;if(F(J),$)z(G,J,Z,$,re);else{var ne=U(J)||G.destroyed;!ne&&!J.corked&&!J.bufferProcessing&&J.bufferedRequest&&N(G,J),Z?process.nextTick(O,G,J,ne,re):O(G,J,ne,re)}}function O(G,$,J,Z){J||I(G,$),$.pendingcb--,Z(),ue(G,$)}function I(G,$){$.length===0&&$.needDrain&&($.needDrain=!1,G.emit("drain"))}function N(G,$){$.bufferProcessing=!0;var J=$.bufferedRequest;if(G._writev&&J&&J.next){var Z=$.bufferedRequestCount,re=new Array(Z),ne=$.corkedRequestsFree;ne.entry=J;for(var j=0,ee=!0;J;)re[j]=J,J.isBuf||(ee=!1),J=J.next,j+=1;re.allBuffers=ee,L(G,$,!0,$.length,re,"",ne.finish),$.pendingcb++,$.lastBufferedRequest=null,ne.next?($.corkedRequestsFree=ne.next,ne.next=null):$.corkedRequestsFree=new g($),$.bufferedRequestCount=0}else{for(;J;){var ie=J.chunk,fe=J.encoding,be=J.callback,Ae=$.objectMode?1:ie.length;if(L(G,$,!1,Ae,ie,fe,be),J=J.next,$.bufferedRequestCount--,$.writing)break}J===null&&($.lastBufferedRequest=null)}$.bufferedRequest=J,$.bufferProcessing=!1}d.prototype._write=function(G,$,J){J(new h("_write()"))},d.prototype._writev=null,d.prototype.end=function(G,$,J){var Z=this._writableState;return typeof G=="function"?(J=G,G=null,$=null):typeof $=="function"&&(J=$,$=null),G!=null&&this.write(G,$),Z.corked&&(Z.corked=1,this.uncork()),Z.ending||se(this,Z,J),this},Object.defineProperty(d.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function U(G){return G.ending&&G.length===0&&G.bufferedRequest===null&&!G.finished&&!G.writing}function W(G,$){G._final(function(J){$.pendingcb--,J&&S(G,J),$.prefinished=!0,G.emit("prefinish"),ue(G,$)})}function Q(G,$){!$.prefinished&&!$.finalCalled&&(typeof G._final=="function"&&!$.destroyed?($.pendingcb++,$.finalCalled=!0,process.nextTick(W,G,$)):($.prefinished=!0,G.emit("prefinish")))}function ue(G,$){var J=U($);if(J&&(Q(G,$),$.pendingcb===0&&($.finished=!0,G.emit("finish"),$.autoDestroy))){var Z=G._readableState;(!Z||Z.autoDestroy&&Z.endEmitted)&&G.destroy()}return J}function se(G,$,J){$.ending=!0,ue(G,$),J&&($.finished?process.nextTick(J):G.once("finish",J)),$.ended=!0,G.writable=!1}function he(G,$,J){var Z=G.entry;for(G.entry=null;Z;){var re=Z.callback;$.pendingcb--,re(J),Z=Z.next}$.corkedRequestsFree.next=G}Object.defineProperty(d.prototype,"destroyed",{enumerable:!1,get:function(){return this._writableState===void 0?!1:this._writableState.destroyed},set:function($){this._writableState&&(this._writableState.destroyed=$)}}),d.prototype.destroy=a.destroy,d.prototype._undestroy=a.undestroy,d.prototype._destroy=function(G,$){$(G)}}}),a0=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_duplex.js"(X,H){"use strict";var g=Object.keys||function(i){var n=[];for(var s in i)n.push(s);return n};H.exports=r;var x=GM(),A=qM();for(Yv()(r,x),M=g(A.prototype),t=0;t<M.length;t++)e=M[t],r.prototype[e]||(r.prototype[e]=A.prototype[e]);var M,e,t;function r(i){if(!(this instanceof r))return new r(i);x.call(this,i),A.call(this,i),this.allowHalfOpen=!0,i&&(i.readable===!1&&(this.readable=!1),i.writable===!1&&(this.writable=!1),i.allowHalfOpen===!1&&(this.allowHalfOpen=!1,this.once("end",o)))}Object.defineProperty(r.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),Object.defineProperty(r.prototype,"writableBuffer",{enumerable:!1,get:function(){return this._writableState&&this._writableState.getBuffer()}}),Object.defineProperty(r.prototype,"writableLength",{enumerable:!1,get:function(){return this._writableState.length}});function o(){this._writableState.ended||process.nextTick(a,this)}function a(i){i.end()}Object.defineProperty(r.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0||this._writableState===void 0?!1:this._readableState.destroyed&&this._writableState.destroyed},set:function(n){this._readableState===void 0||this._writableState===void 0||(this._readableState.destroyed=n,this._writableState.destroyed=n)}})}}),S4=Ye({"node_modules/safe-buffer/index.js"(X,H){var g=t0(),x=g.Buffer;function A(e,t){for(var r in e)t[r]=e[r]}x.from&&x.alloc&&x.allocUnsafe&&x.allocUnsafeSlow?H.exports=g:(A(g,X),X.Buffer=M);function M(e,t,r){return x(e,t,r)}M.prototype=Object.create(x.prototype),A(x,M),M.from=function(e,t,r){if(typeof e=="number")throw new TypeError("Argument must not be a number");return x(e,t,r)},M.alloc=function(e,t,r){if(typeof e!="number")throw new TypeError("Argument must be a number");var o=x(e);return t!==void 0?typeof r=="string"?o.fill(t,r):o.fill(t):o.fill(0),o},M.allocUnsafe=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return x(e)},M.allocUnsafeSlow=function(e){if(typeof e!="number")throw new TypeError("Argument must be a number");return g.SlowBuffer(e)}}}),HM=Ye({"node_modules/stream-browserify/node_modules/string_decoder/lib/string_decoder.js"(X){"use strict";var H=S4().Buffer,g=H.isEncoding||function(T){switch(T=""+T,T&&T.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function x(T){if(!T)return"utf8";for(var l;;)switch(T){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return T;default:if(l)return;T=(""+T).toLowerCase(),l=!0}}function A(T){var l=x(T);if(typeof l!="string"&&(H.isEncoding===g||!g(T)))throw new Error("Unknown encoding: "+T);return l||T}X.StringDecoder=M;function M(T){this.encoding=A(T);var l;switch(this.encoding){case"utf16le":this.text=n,this.end=s,l=4;break;case"utf8":this.fillLast=o,l=4;break;case"base64":this.text=c,this.end=h,l=3;break;default:this.write=v,this.end=p;return}this.lastNeed=0,this.lastTotal=0,this.lastChar=H.allocUnsafe(l)}M.prototype.write=function(T){if(T.length===0)return"";var l,_;if(this.lastNeed){if(l=this.fillLast(T),l===void 0)return"";_=this.lastNeed,this.lastNeed=0}else _=0;return _<T.length?l?l+this.text(T,_):this.text(T,_):l||""},M.prototype.end=i,M.prototype.text=a,M.prototype.fillLast=function(T){if(this.lastNeed<=T.length)return T.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,this.lastTotal-this.lastNeed,0,T.length),this.lastNeed-=T.length};function e(T){return T<=127?0:T>>5===6?2:T>>4===14?3:T>>3===30?4:T>>6===2?-1:-2}function t(T,l,_){var w=l.length-1;if(w<_)return 0;var S=e(l[w]);return S>=0?(S>0&&(T.lastNeed=S-1),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(T.lastNeed=S-2),S):--w<_||S===-2?0:(S=e(l[w]),S>=0?(S>0&&(S===2?S=0:T.lastNeed=S-3),S):0))}function r(T,l,_){if((l[0]&192)!==128)return T.lastNeed=0,"\uFFFD";if(T.lastNeed>1&&l.length>1){if((l[1]&192)!==128)return T.lastNeed=1,"\uFFFD";if(T.lastNeed>2&&l.length>2&&(l[2]&192)!==128)return T.lastNeed=2,"\uFFFD"}}function o(T){var l=this.lastTotal-this.lastNeed,_=r(this,T,l);if(_!==void 0)return _;if(this.lastNeed<=T.length)return T.copy(this.lastChar,l,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);T.copy(this.lastChar,l,0,T.length),this.lastNeed-=T.length}function a(T,l){var _=t(this,T,l);if(!this.lastNeed)return T.toString("utf8",l);this.lastTotal=_;var w=T.length-(_-this.lastNeed);return T.copy(this.lastChar,0,w),T.toString("utf8",l,w)}function i(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+"\uFFFD":l}function n(T,l){if((T.length-l)%2===0){var _=T.toString("utf16le",l);if(_){var w=_.charCodeAt(_.length-1);if(w>=55296&&w<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1],_.slice(0,-1)}return _}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=T[T.length-1],T.toString("utf16le",l,T.length-1)}function s(T){var l=T&&T.length?this.write(T):"";if(this.lastNeed){var _=this.lastTotal-this.lastNeed;return l+this.lastChar.toString("utf16le",0,_)}return l}function c(T,l){var _=(T.length-l)%3;return _===0?T.toString("base64",l):(this.lastNeed=3-_,this.lastTotal=3,_===1?this.lastChar[0]=T[T.length-1]:(this.lastChar[0]=T[T.length-2],this.lastChar[1]=T[T.length-1]),T.toString("base64",l,T.length-_))}function h(T){var l=T&&T.length?this.write(T):"";return this.lastNeed?l+this.lastChar.toString("base64",0,3-this.lastNeed):l}function v(T){return T.toString(this.encoding)}function p(T){return T&&T.length?this.write(T):""}}}),v3=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/end-of-stream.js"(X,H){"use strict";var g=r0().codes.ERR_STREAM_PREMATURE_CLOSE;function x(t){var r=!1;return function(){if(!r){r=!0;for(var o=arguments.length,a=new Array(o),i=0;i<o;i++)a[i]=arguments[i];t.apply(this,a)}}}function A(){}function M(t){return t.setHeader&&typeof t.abort=="function"}function e(t,r,o){if(typeof r=="function")return e(t,null,r);r||(r={}),o=x(o||A);var a=r.readable||r.readable!==!1&&t.readable,i=r.writable||r.writable!==!1&&t.writable,n=function(){t.writable||c()},s=t._writableState&&t._writableState.finished,c=function(){i=!1,s=!0,a||o.call(t)},h=t._readableState&&t._readableState.endEmitted,v=function(){a=!1,h=!0,i||o.call(t)},p=function(w){o.call(t,w)},T=function(){var w;if(a&&!h)return(!t._readableState||!t._readableState.ended)&&(w=new g),o.call(t,w);if(i&&!s)return(!t._writableState||!t._writableState.ended)&&(w=new g),o.call(t,w)},l=function(){t.req.on("finish",c)};return M(t)?(t.on("complete",c),t.on("abort",T),t.req?l():t.on("request",l)):i&&!t._writableState&&(t.on("end",n),t.on("close",n)),t.on("end",v),t.on("finish",c),r.error!==!1&&t.on("error",p),t.on("close",T),function(){t.removeListener("complete",c),t.removeListener("abort",T),t.removeListener("request",l),t.req&&t.req.removeListener("finish",c),t.removeListener("end",n),t.removeListener("close",n),t.removeListener("finish",c),t.removeListener("end",v),t.removeListener("error",p),t.removeListener("close",T)}}H.exports=e}}),M4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/async_iterator.js"(X,H){"use strict";var g;function x(l,_,w){return _ in l?Object.defineProperty(l,_,{value:w,enumerable:!0,configurable:!0,writable:!0}):l[_]=w,l}var A=v3(),M=Symbol("lastResolve"),e=Symbol("lastReject"),t=Symbol("error"),r=Symbol("ended"),o=Symbol("lastPromise"),a=Symbol("handlePromise"),i=Symbol("stream");function n(l,_){return{value:l,done:_}}function s(l){var _=l[M];if(_!==null){var w=l[i].read();w!==null&&(l[o]=null,l[M]=null,l[e]=null,_(n(w,!1)))}}function c(l){process.nextTick(s,l)}function h(l,_){return function(w,S){l.then(function(){if(_[r]){w(n(void 0,!0));return}_[a](w,S)},S)}}var v=Object.getPrototypeOf(function(){}),p=Object.setPrototypeOf((g={get stream(){return this[i]},next:function(){var _=this,w=this[t];if(w!==null)return Promise.reject(w);if(this[r])return Promise.resolve(n(void 0,!0));if(this[i].destroyed)return new Promise(function(b,d){process.nextTick(function(){_[t]?d(_[t]):b(n(void 0,!0))})});var S=this[o],E;if(S)E=new Promise(h(S,this));else{var m=this[i].read();if(m!==null)return Promise.resolve(n(m,!1));E=new Promise(this[a])}return this[o]=E,E}},x(g,Symbol.asyncIterator,function(){return this}),x(g,"return",function(){var _=this;return new Promise(function(w,S){_[i].destroy(null,function(E){if(E){S(E);return}w(n(void 0,!0))})})}),g),v),T=function(_){var w,S=Object.create(p,(w={},x(w,i,{value:_,writable:!0}),x(w,M,{value:null,writable:!0}),x(w,e,{value:null,writable:!0}),x(w,t,{value:null,writable:!0}),x(w,r,{value:_._readableState.endEmitted,writable:!0}),x(w,a,{value:function(m,b){var d=S[i].read();d?(S[o]=null,S[M]=null,S[e]=null,m(n(d,!1))):(S[M]=m,S[e]=b)},writable:!0}),w));return S[o]=null,A(_,function(E){if(E&&E.code!=="ERR_STREAM_PREMATURE_CLOSE"){var m=S[e];m!==null&&(S[o]=null,S[M]=null,S[e]=null,m(E)),S[t]=E;return}var b=S[M];b!==null&&(S[o]=null,S[M]=null,S[e]=null,b(n(void 0,!0))),S[r]=!0}),_.on("readable",c.bind(null,S)),S};H.exports=T}}),E4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/from-browser.js"(X,H){H.exports=function(){throw new Error("Readable.from is not available in the browser")}}}),GM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_readable.js"(X,H){"use strict";H.exports=y;var g;y.ReadableState=u;var x=Wg().EventEmitter,A=function(ee,ie){return ee.listeners(ie).length},M=RM(),e=t0().Buffer,t=window.Uint8Array||function(){};function r(j){return e.from(j)}function o(j){return e.isBuffer(j)||j instanceof t}var a=UM(),i;a&&a.debuglog?i=a.debuglog("stream"):i=function(){};var n=T4(),s=jM(),c=VM(),h=c.getHighWaterMark,v=r0().codes,p=v.ERR_INVALID_ARG_TYPE,T=v.ERR_STREAM_PUSH_AFTER_EOF,l=v.ERR_METHOD_NOT_IMPLEMENTED,_=v.ERR_STREAM_UNSHIFT_AFTER_END_EVENT,w,S,E;Yv()(y,M);var m=s.errorOrDestroy,b=["error","close","destroy","pause","resume"];function d(j,ee,ie){if(typeof j.prependListener=="function")return j.prependListener(ee,ie);!j._events||!j._events[ee]?j.on(ee,ie):Array.isArray(j._events[ee])?j._events[ee].unshift(ie):j._events[ee]=[ie,j._events[ee]]}function u(j,ee,ie){g=g||a0(),j=j||{},typeof ie!="boolean"&&(ie=ee instanceof g),this.objectMode=!!j.objectMode,ie&&(this.objectMode=this.objectMode||!!j.readableObjectMode),this.highWaterMark=h(this,j,"readableHighWaterMark",ie),this.buffer=new n,this.length=0,this.pipes=null,this.pipesCount=0,this.flowing=null,this.ended=!1,this.endEmitted=!1,this.reading=!1,this.sync=!0,this.needReadable=!1,this.emittedReadable=!1,this.readableListening=!1,this.resumeScheduled=!1,this.paused=!0,this.emitClose=j.emitClose!==!1,this.autoDestroy=!!j.autoDestroy,this.destroyed=!1,this.defaultEncoding=j.defaultEncoding||"utf8",this.awaitDrain=0,this.readingMore=!1,this.decoder=null,this.encoding=null,j.encoding&&(w||(w=HM().StringDecoder),this.decoder=new w(j.encoding),this.encoding=j.encoding)}function y(j){if(g=g||a0(),!(this instanceof y))return new y(j);var ee=this instanceof g;this._readableState=new u(j,this,ee),this.readable=!0,j&&(typeof j.read=="function"&&(this._read=j.read),typeof j.destroy=="function"&&(this._destroy=j.destroy)),M.call(this)}Object.defineProperty(y.prototype,"destroyed",{enumerable:!1,get:function(){return this._readableState===void 0?!1:this._readableState.destroyed},set:function(ee){this._readableState&&(this._readableState.destroyed=ee)}}),y.prototype.destroy=s.destroy,y.prototype._undestroy=s.undestroy,y.prototype._destroy=function(j,ee){ee(j)},y.prototype.push=function(j,ee){var ie=this._readableState,fe;return ie.objectMode?fe=!0:typeof j=="string"&&(ee=ee||ie.defaultEncoding,ee!==ie.encoding&&(j=e.from(j,ee),ee=""),fe=!0),f(this,j,ee,!1,fe)},y.prototype.unshift=function(j){return f(this,j,null,!0,!1)};function f(j,ee,ie,fe,be){i("readableAddChunk",ee);var Ae=j._readableState;if(ee===null)Ae.reading=!1,O(j,Ae);else{var Be;if(be||(Be=L(Ae,ee)),Be)m(j,Be);else if(Ae.objectMode||ee&&ee.length>0)if(typeof ee!="string"&&!Ae.objectMode&&Object.getPrototypeOf(ee)!==e.prototype&&(ee=r(ee)),fe)Ae.endEmitted?m(j,new _):P(j,Ae,ee,!0);else if(Ae.ended)m(j,new T);else{if(Ae.destroyed)return!1;Ae.reading=!1,Ae.decoder&&!ie?(ee=Ae.decoder.write(ee),Ae.objectMode||ee.length!==0?P(j,Ae,ee,!1):U(j,Ae)):P(j,Ae,ee,!1)}else fe||(Ae.reading=!1,U(j,Ae))}return!Ae.ended&&(Ae.length<Ae.highWaterMark||Ae.length===0)}function P(j,ee,ie,fe){ee.flowing&&ee.length===0&&!ee.sync?(ee.awaitDrain=0,j.emit("data",ie)):(ee.length+=ee.objectMode?1:ie.length,fe?ee.buffer.unshift(ie):ee.buffer.push(ie),ee.needReadable&&I(j)),U(j,ee)}function L(j,ee){var ie;return!o(ee)&&typeof ee!="string"&&ee!==void 0&&!j.objectMode&&(ie=new p("chunk",["string","Buffer","Uint8Array"],ee)),ie}y.prototype.isPaused=function(){return this._readableState.flowing===!1},y.prototype.setEncoding=function(j){w||(w=HM().StringDecoder);var ee=new w(j);this._readableState.decoder=ee,this._readableState.encoding=this._readableState.decoder.encoding;for(var ie=this._readableState.buffer.head,fe="";ie!==null;)fe+=ee.write(ie.data),ie=ie.next;return this._readableState.buffer.clear(),fe!==""&&this._readableState.buffer.push(fe),this._readableState.length=fe.length,this};var z=1073741824;function F(j){return j>=z?j=z:(j--,j|=j>>>1,j|=j>>>2,j|=j>>>4,j|=j>>>8,j|=j>>>16,j++),j}function B(j,ee){return j<=0||ee.length===0&&ee.ended?0:ee.objectMode?1:j!==j?ee.flowing&&ee.length?ee.buffer.head.data.length:ee.length:(j>ee.highWaterMark&&(ee.highWaterMark=F(j)),j<=ee.length?j:ee.ended?ee.length:(ee.needReadable=!0,0))}y.prototype.read=function(j){i("read",j),j=parseInt(j,10);var ee=this._readableState,ie=j;if(j!==0&&(ee.emittedReadable=!1),j===0&&ee.needReadable&&((ee.highWaterMark!==0?ee.length>=ee.highWaterMark:ee.length>0)||ee.ended))return i("read: emitReadable",ee.length,ee.ended),ee.length===0&&ee.ended?Z(this):I(this),null;if(j=B(j,ee),j===0&&ee.ended)return ee.length===0&&Z(this),null;var fe=ee.needReadable;i("need readable",fe),(ee.length===0||ee.length-j<ee.highWaterMark)&&(fe=!0,i("length less than watermark",fe)),ee.ended||ee.reading?(fe=!1,i("reading or ended",fe)):fe&&(i("do read"),ee.reading=!0,ee.sync=!0,ee.length===0&&(ee.needReadable=!0),this._read(ee.highWaterMark),ee.sync=!1,ee.reading||(j=B(ie,ee)));var be;return j>0?be=J(j,ee):be=null,be===null?(ee.needReadable=ee.length<=ee.highWaterMark,j=0):(ee.length-=j,ee.awaitDrain=0),ee.length===0&&(ee.ended||(ee.needReadable=!0),ie!==j&&ee.ended&&Z(this)),be!==null&&this.emit("data",be),be};function O(j,ee){if(i("onEofChunk"),!ee.ended){if(ee.decoder){var ie=ee.decoder.end();ie&&ie.length&&(ee.buffer.push(ie),ee.length+=ee.objectMode?1:ie.length)}ee.ended=!0,ee.sync?I(j):(ee.needReadable=!1,ee.emittedReadable||(ee.emittedReadable=!0,N(j)))}}function I(j){var ee=j._readableState;i("emitReadable",ee.needReadable,ee.emittedReadable),ee.needReadable=!1,ee.emittedReadable||(i("emitReadable",ee.flowing),ee.emittedReadable=!0,process.nextTick(N,j))}function N(j){var ee=j._readableState;i("emitReadable_",ee.destroyed,ee.length,ee.ended),!ee.destroyed&&(ee.length||ee.ended)&&(j.emit("readable"),ee.emittedReadable=!1),ee.needReadable=!ee.flowing&&!ee.ended&&ee.length<=ee.highWaterMark,$(j)}function U(j,ee){ee.readingMore||(ee.readingMore=!0,process.nextTick(W,j,ee))}function W(j,ee){for(;!ee.reading&&!ee.ended&&(ee.length<ee.highWaterMark||ee.flowing&&ee.length===0);){var ie=ee.length;if(i("maybeReadMore read 0"),j.read(0),ie===ee.length)break}ee.readingMore=!1}y.prototype._read=function(j){m(this,new l("_read()"))},y.prototype.pipe=function(j,ee){var ie=this,fe=this._readableState;switch(fe.pipesCount){case 0:fe.pipes=j;break;case 1:fe.pipes=[fe.pipes,j];break;default:fe.pipes.push(j);break}fe.pipesCount+=1,i("pipe count=%d opts=%j",fe.pipesCount,ee);var be=(!ee||ee.end!==!1)&&j!==process.stdout&&j!==process.stderr,Ae=be?Ie:ce;fe.endEmitted?process.nextTick(Ae):ie.once("end",Ae),j.on("unpipe",Be);function Be(ze,tt){i("onunpipe"),ze===ie&&tt&&tt.hasUnpiped===!1&&(tt.hasUnpiped=!0,it())}function Ie(){i("onend"),j.end()}var Ze=Q(ie);j.on("drain",Ze);var at=!1;function it(){i("cleanup"),j.removeListener("close",Me),j.removeListener("finish",ge),j.removeListener("drain",Ze),j.removeListener("error",lt),j.removeListener("unpipe",Be),ie.removeListener("end",Ie),ie.removeListener("end",ce),ie.removeListener("data",et),at=!0,fe.awaitDrain&&(!j._writableState||j._writableState.needDrain)&&Ze()}ie.on("data",et);function et(ze){i("ondata");var tt=j.write(ze);i("dest.write",tt),tt===!1&&((fe.pipesCount===1&&fe.pipes===j||fe.pipesCount>1&&ne(fe.pipes,j)!==-1)&&!at&&(i("false write response, pause",fe.awaitDrain),fe.awaitDrain++),ie.pause())}function lt(ze){i("onerror",ze),ce(),j.removeListener("error",lt),A(j,"error")===0&&m(j,ze)}d(j,"error",lt);function Me(){j.removeListener("finish",ge),ce()}j.once("close",Me);function ge(){i("onfinish"),j.removeListener("close",Me),ce()}j.once("finish",ge);function ce(){i("unpipe"),ie.unpipe(j)}return j.emit("pipe",ie),fe.flowing||(i("pipe resume"),ie.resume()),j};function Q(j){return function(){var ie=j._readableState;i("pipeOnDrain",ie.awaitDrain),ie.awaitDrain&&ie.awaitDrain--,ie.awaitDrain===0&&A(j,"data")&&(ie.flowing=!0,$(j))}}y.prototype.unpipe=function(j){var ee=this._readableState,ie={hasUnpiped:!1};if(ee.pipesCount===0)return this;if(ee.pipesCount===1)return j&&j!==ee.pipes?this:(j||(j=ee.pipes),ee.pipes=null,ee.pipesCount=0,ee.flowing=!1,j&&j.emit("unpipe",this,ie),this);if(!j){var fe=ee.pipes,be=ee.pipesCount;ee.pipes=null,ee.pipesCount=0,ee.flowing=!1;for(var Ae=0;Ae<be;Ae++)fe[Ae].emit("unpipe",this,{hasUnpiped:!1});return this}var Be=ne(ee.pipes,j);return Be===-1?this:(ee.pipes.splice(Be,1),ee.pipesCount-=1,ee.pipesCount===1&&(ee.pipes=ee.pipes[0]),j.emit("unpipe",this,ie),this)},y.prototype.on=function(j,ee){var ie=M.prototype.on.call(this,j,ee),fe=this._readableState;return j==="data"?(fe.readableListening=this.listenerCount("readable")>0,fe.flowing!==!1&&this.resume()):j==="readable"&&!fe.endEmitted&&!fe.readableListening&&(fe.readableListening=fe.needReadable=!0,fe.flowing=!1,fe.emittedReadable=!1,i("on readable",fe.length,fe.reading),fe.length?I(this):fe.reading||process.nextTick(se,this)),ie},y.prototype.addListener=y.prototype.on,y.prototype.removeListener=function(j,ee){var ie=M.prototype.removeListener.call(this,j,ee);return j==="readable"&&process.nextTick(ue,this),ie},y.prototype.removeAllListeners=function(j){var ee=M.prototype.removeAllListeners.apply(this,arguments);return(j==="readable"||j===void 0)&&process.nextTick(ue,this),ee};function ue(j){var ee=j._readableState;ee.readableListening=j.listenerCount("readable")>0,ee.resumeScheduled&&!ee.paused?ee.flowing=!0:j.listenerCount("data")>0&&j.resume()}function se(j){i("readable nexttick read 0"),j.read(0)}y.prototype.resume=function(){var j=this._readableState;return j.flowing||(i("resume"),j.flowing=!j.readableListening,he(this,j)),j.paused=!1,this};function he(j,ee){ee.resumeScheduled||(ee.resumeScheduled=!0,process.nextTick(G,j,ee))}function G(j,ee){i("resume",ee.reading),ee.reading||j.read(0),ee.resumeScheduled=!1,j.emit("resume"),$(j),ee.flowing&&!ee.reading&&j.read(0)}y.prototype.pause=function(){return i("call pause flowing=%j",this._readableState.flowing),this._readableState.flowing!==!1&&(i("pause"),this._readableState.flowing=!1,this.emit("pause")),this._readableState.paused=!0,this};function $(j){var ee=j._readableState;for(i("flow",ee.flowing);ee.flowing&&j.read()!==null;);}y.prototype.wrap=function(j){var ee=this,ie=this._readableState,fe=!1;j.on("end",function(){if(i("wrapped end"),ie.decoder&&!ie.ended){var Be=ie.decoder.end();Be&&Be.length&&ee.push(Be)}ee.push(null)}),j.on("data",function(Be){if(i("wrapped data"),ie.decoder&&(Be=ie.decoder.write(Be)),!(ie.objectMode&&Be==null)&&!(!ie.objectMode&&(!Be||!Be.length))){var Ie=ee.push(Be);Ie||(fe=!0,j.pause())}});for(var be in j)this[be]===void 0&&typeof j[be]=="function"&&(this[be]=function(Ie){return function(){return j[Ie].apply(j,arguments)}}(be));for(var Ae=0;Ae<b.length;Ae++)j.on(b[Ae],this.emit.bind(this,b[Ae]));return this._read=function(Be){i("wrapped _read",Be),fe&&(fe=!1,j.resume())},this},typeof Symbol=="function"&&(y.prototype[Symbol.asyncIterator]=function(){return S===void 0&&(S=M4()),S(this)}),Object.defineProperty(y.prototype,"readableHighWaterMark",{enumerable:!1,get:function(){return this._readableState.highWaterMark}}),Object.defineProperty(y.prototype,"readableBuffer",{enumerable:!1,get:function(){return this._readableState&&this._readableState.buffer}}),Object.defineProperty(y.prototype,"readableFlowing",{enumerable:!1,get:function(){return this._readableState.flowing},set:function(ee){this._readableState&&(this._readableState.flowing=ee)}}),y._fromList=J,Object.defineProperty(y.prototype,"readableLength",{enumerable:!1,get:function(){return this._readableState.length}});function J(j,ee){if(ee.length===0)return null;var ie;return ee.objectMode?ie=ee.buffer.shift():!j||j>=ee.length?(ee.decoder?ie=ee.buffer.join(""):ee.buffer.length===1?ie=ee.buffer.first():ie=ee.buffer.concat(ee.length),ee.buffer.clear()):ie=ee.buffer.consume(j,ee.decoder),ie}function Z(j){var ee=j._readableState;i("endReadable",ee.endEmitted),ee.endEmitted||(ee.ended=!0,process.nextTick(re,ee,j))}function re(j,ee){if(i("endReadableNT",j.endEmitted,j.length),!j.endEmitted&&j.length===0&&(j.endEmitted=!0,ee.readable=!1,ee.emit("end"),j.autoDestroy)){var ie=ee._writableState;(!ie||ie.autoDestroy&&ie.finished)&&ee.destroy()}}typeof Symbol=="function"&&(y.from=function(j,ee){return E===void 0&&(E=E4()),E(y,j,ee)});function ne(j,ee){for(var ie=0,fe=j.length;ie<fe;ie++)if(j[ie]===ee)return ie;return-1}}}),WM=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_transform.js"(X,H){"use strict";H.exports=o;var g=r0().codes,x=g.ERR_METHOD_NOT_IMPLEMENTED,A=g.ERR_MULTIPLE_CALLBACK,M=g.ERR_TRANSFORM_ALREADY_TRANSFORMING,e=g.ERR_TRANSFORM_WITH_LENGTH_0,t=a0();Yv()(o,t);function r(n,s){var c=this._transformState;c.transforming=!1;var h=c.writecb;if(h===null)return this.emit("error",new A);c.writechunk=null,c.writecb=null,s!=null&&this.push(s),h(n);var v=this._readableState;v.reading=!1,(v.needReadable||v.length<v.highWaterMark)&&this._read(v.highWaterMark)}function o(n){if(!(this instanceof o))return new o(n);t.call(this,n),this._transformState={afterTransform:r.bind(this),needTransform:!1,transforming:!1,writecb:null,writechunk:null,writeencoding:null},this._readableState.needReadable=!0,this._readableState.sync=!1,n&&(typeof n.transform=="function"&&(this._transform=n.transform),typeof n.flush=="function"&&(this._flush=n.flush)),this.on("prefinish",a)}function a(){var n=this;typeof this._flush=="function"&&!this._readableState.destroyed?this._flush(function(s,c){i(n,s,c)}):i(this,null,null)}o.prototype.push=function(n,s){return this._transformState.needTransform=!1,t.prototype.push.call(this,n,s)},o.prototype._transform=function(n,s,c){c(new x("_transform()"))},o.prototype._write=function(n,s,c){var h=this._transformState;if(h.writecb=c,h.writechunk=n,h.writeencoding=s,!h.transforming){var v=this._readableState;(h.needTransform||v.needReadable||v.length<v.highWaterMark)&&this._read(v.highWaterMark)}},o.prototype._read=function(n){var s=this._transformState;s.writechunk!==null&&!s.transforming?(s.transforming=!0,this._transform(s.writechunk,s.writeencoding,s.afterTransform)):s.needTransform=!0},o.prototype._destroy=function(n,s){t.prototype._destroy.call(this,n,function(c){s(c)})};function i(n,s,c){if(s)return n.emit("error",s);if(c!=null&&n.push(c),n._writableState.length)throw new e;if(n._transformState.transforming)throw new M;return n.push(null)}}}),k4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/_stream_passthrough.js"(X,H){"use strict";H.exports=x;var g=WM();Yv()(x,g);function x(A){if(!(this instanceof x))return new x(A);g.call(this,A)}x.prototype._transform=function(A,M,e){e(null,A)}}}),C4=Ye({"node_modules/stream-browserify/node_modules/readable-stream/lib/internal/streams/pipeline.js"(X,H){"use strict";var g;function x(c){var h=!1;return function(){h||(h=!0,c.apply(void 0,arguments))}}var A=r0().codes,M=A.ERR_MISSING_ARGS,e=A.ERR_STREAM_DESTROYED;function t(c){if(c)throw c}function r(c){return c.setHeader&&typeof c.abort=="function"}function o(c,h,v,p){p=x(p);var T=!1;c.on("close",function(){T=!0}),g===void 0&&(g=v3()),g(c,{readable:h,writable:v},function(_){if(_)return p(_);T=!0,p()});var l=!1;return function(_){if(!T&&!l){if(l=!0,r(c))return c.abort();if(typeof c.destroy=="function")return c.destroy();p(_||new e("pipe"))}}}function a(c){c()}function i(c,h){return c.pipe(h)}function n(c){return!c.length||typeof c[c.length-1]!="function"?t:c.pop()}function s(){for(var c=arguments.length,h=new Array(c),v=0;v<c;v++)h[v]=arguments[v];var p=n(h);if(Array.isArray(h[0])&&(h=h[0]),h.length<2)throw new M("streams");var T,l=h.map(function(_,w){var S=w<h.length-1,E=w>0;return o(_,S,E,function(m){T||(T=m),m&&l.forEach(a),!S&&(l.forEach(a),p(T))})});return h.reduce(i)}H.exports=s}}),L4=Ye({"node_modules/stream-browserify/index.js"(X,H){H.exports=A;var g=Wg().EventEmitter,x=Yv();x(A,g),A.Readable=GM(),A.Writable=qM(),A.Duplex=a0(),A.Transform=WM(),A.PassThrough=k4(),A.finished=v3(),A.pipeline=C4(),A.Stream=A;function A(){g.call(this)}A.prototype.pipe=function(M,e){var t=this;function r(h){M.writable&&M.write(h)===!1&&t.pause&&t.pause()}t.on("data",r);function o(){t.readable&&t.resume&&t.resume()}M.on("drain",o),!M._isStdio&&(!e||e.end!==!1)&&(t.on("end",i),t.on("close",n));var a=!1;function i(){a||(a=!0,M.end())}function n(){a||(a=!0,typeof M.destroy=="function"&&M.destroy())}function s(h){if(c(),g.listenerCount(this,"error")===0)throw h}t.on("error",s),M.on("error",s);function c(){t.removeListener("data",r),M.removeListener("drain",o),t.removeListener("end",i),t.removeListener("close",n),t.removeListener("error",s),M.removeListener("error",s),t.removeListener("end",c),t.removeListener("close",c),M.removeListener("close",c)}return t.on("end",c),t.on("close",c),M.on("close",c),M.emit("pipe",t),M}}}),g1=Ye({"node_modules/util/util.js"(X){var H=Object.getOwnPropertyDescriptors||function(W){for(var Q=Object.keys(W),ue={},se=0;se<Q.length;se++)ue[Q[se]]=Object.getOwnPropertyDescriptor(W,Q[se]);return ue},g=/%[sdj%]/g;X.format=function(U){if(!w(U)){for(var W=[],Q=0;Q<arguments.length;Q++)W.push(e(arguments[Q]));return W.join(" ")}for(var Q=1,ue=arguments,se=ue.length,he=String(U).replace(g,function($){if($==="%%")return"%";if(Q>=se)return $;switch($){case"%s":return String(ue[Q++]);case"%d":return Number(ue[Q++]);case"%j":try{return JSON.stringify(ue[Q++])}catch{return"[Circular]"}default:return $}}),G=ue[Q];Q<se;G=ue[++Q])T(G)||!b(G)?he+=" "+G:he+=" "+e(G);return he},X.deprecate=function(U,W){if(typeof process<"u"&&process.noDeprecation===!0)return U;if(typeof process>"u")return function(){return X.deprecate(U,W).apply(this,arguments)};var Q=!1;function ue(){if(!Q){if(process.throwDeprecation)throw new Error(W);process.traceDeprecation?console.trace(W):console.error(W),Q=!0}return U.apply(this,arguments)}return ue};var x={},A=/^$/;M="false",M=M.replace(/[|\\{}()[\]^$+?.]/g,"\\$&").replace(/\*/g,".*").replace(/,/g,"$|^").toUpperCase(),A=new RegExp("^"+M+"$","i");var M;X.debuglog=function(U){if(U=U.toUpperCase(),!x[U])if(A.test(U)){var W=process.pid;x[U]=function(){var Q=X.format.apply(X,arguments);console.error("%s %d: %s",U,W,Q)}}else x[U]=function(){};return x[U]};function e(U,W){var Q={seen:[],stylize:r};return arguments.length>=3&&(Q.depth=arguments[2]),arguments.length>=4&&(Q.colors=arguments[3]),p(W)?Q.showHidden=W:W&&X._extend(Q,W),E(Q.showHidden)&&(Q.showHidden=!1),E(Q.depth)&&(Q.depth=2),E(Q.colors)&&(Q.colors=!1),E(Q.customInspect)&&(Q.customInspect=!0),Q.colors&&(Q.stylize=t),a(Q,U,Q.depth)}X.inspect=e,e.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]},e.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"};function t(U,W){var Q=e.styles[W];return Q?"\x1B["+e.colors[Q][0]+"m"+U+"\x1B["+e.colors[Q][1]+"m":U}function r(U,W){return U}function o(U){var W={};return U.forEach(function(Q,ue){W[Q]=!0}),W}function a(U,W,Q){if(U.customInspect&&W&&y(W.inspect)&&W.inspect!==X.inspect&&!(W.constructor&&W.constructor.prototype===W)){var ue=W.inspect(Q,U);return w(ue)||(ue=a(U,ue,Q)),ue}var se=i(U,W);if(se)return se;var he=Object.keys(W),G=o(he);if(U.showHidden&&(he=Object.getOwnPropertyNames(W)),u(W)&&(he.indexOf("message")>=0||he.indexOf("description")>=0))return n(W);if(he.length===0){if(y(W)){var $=W.name?": "+W.name:"";return U.stylize("[Function"+$+"]","special")}if(m(W))return U.stylize(RegExp.prototype.toString.call(W),"regexp");if(d(W))return U.stylize(Date.prototype.toString.call(W),"date");if(u(W))return n(W)}var J="",Z=!1,re=["{","}"];if(v(W)&&(Z=!0,re=["[","]"]),y(W)){var ne=W.name?": "+W.name:"";J=" [Function"+ne+"]"}if(m(W)&&(J=" "+RegExp.prototype.toString.call(W)),d(W)&&(J=" "+Date.prototype.toUTCString.call(W)),u(W)&&(J=" "+n(W)),he.length===0&&(!Z||W.length==0))return re[0]+J+re[1];if(Q<0)return m(W)?U.stylize(RegExp.prototype.toString.call(W),"regexp"):U.stylize("[Object]","special");U.seen.push(W);var j;return Z?j=s(U,W,Q,G,he):j=he.map(function(ee){return c(U,W,Q,G,ee,Z)}),U.seen.pop(),h(j,J,re)}function i(U,W){if(E(W))return U.stylize("undefined","undefined");if(w(W)){var Q="'"+JSON.stringify(W).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return U.stylize(Q,"string")}if(_(W))return U.stylize(""+W,"number");if(p(W))return U.stylize(""+W,"boolean");if(T(W))return U.stylize("null","null")}function n(U){return"["+Error.prototype.toString.call(U)+"]"}function s(U,W,Q,ue,se){for(var he=[],G=0,$=W.length;G<$;++G)B(W,String(G))?he.push(c(U,W,Q,ue,String(G),!0)):he.push("");return se.forEach(function(J){J.match(/^\d+$/)||he.push(c(U,W,Q,ue,J,!0))}),he}function c(U,W,Q,ue,se,he){var G,$,J;if(J=Object.getOwnPropertyDescriptor(W,se)||{value:W[se]},J.get?J.set?$=U.stylize("[Getter/Setter]","special"):$=U.stylize("[Getter]","special"):J.set&&($=U.stylize("[Setter]","special")),B(ue,se)||(G="["+se+"]"),$||(U.seen.indexOf(J.value)<0?(T(Q)?$=a(U,J.value,null):$=a(U,J.value,Q-1),$.indexOf(`
+`)>-1&&(he?$=$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`).slice(2):$=`
+`+$.split(`
+`).map(function(Z){return" "+Z}).join(`
+`))):$=U.stylize("[Circular]","special")),E(G)){if(he&&se.match(/^\d+$/))return $;G=JSON.stringify(""+se),G.match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(G=G.slice(1,-1),G=U.stylize(G,"name")):(G=G.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),G=U.stylize(G,"string"))}return G+": "+$}function h(U,W,Q){var ue=0,se=U.reduce(function(he,G){return ue++,G.indexOf(`
+`)>=0&&ue++,he+G.replace(/\u001b\[\d\d?m/g,"").length+1},0);return se>60?Q[0]+(W===""?"":W+`
+ `)+" "+U.join(`,
+ `)+" "+Q[1]:Q[0]+W+" "+U.join(", ")+" "+Q[1]}X.types=BM();function v(U){return Array.isArray(U)}X.isArray=v;function p(U){return typeof U=="boolean"}X.isBoolean=p;function T(U){return U===null}X.isNull=T;function l(U){return U==null}X.isNullOrUndefined=l;function _(U){return typeof U=="number"}X.isNumber=_;function w(U){return typeof U=="string"}X.isString=w;function S(U){return typeof U=="symbol"}X.isSymbol=S;function E(U){return U===void 0}X.isUndefined=E;function m(U){return b(U)&&P(U)==="[object RegExp]"}X.isRegExp=m,X.types.isRegExp=m;function b(U){return typeof U=="object"&&U!==null}X.isObject=b;function d(U){return b(U)&&P(U)==="[object Date]"}X.isDate=d,X.types.isDate=d;function u(U){return b(U)&&(P(U)==="[object Error]"||U instanceof Error)}X.isError=u,X.types.isNativeError=u;function y(U){return typeof U=="function"}X.isFunction=y;function f(U){return U===null||typeof U=="boolean"||typeof U=="number"||typeof U=="string"||typeof U=="symbol"||typeof U>"u"}X.isPrimitive=f,X.isBuffer=NM();function P(U){return Object.prototype.toString.call(U)}function L(U){return U<10?"0"+U.toString(10):U.toString(10)}var z=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function F(){var U=new Date,W=[L(U.getHours()),L(U.getMinutes()),L(U.getSeconds())].join(":");return[U.getDate(),z[U.getMonth()],W].join(" ")}X.log=function(){console.log("%s - %s",F(),X.format.apply(X,arguments))},X.inherits=Yv(),X._extend=function(U,W){if(!W||!b(W))return U;for(var Q=Object.keys(W),ue=Q.length;ue--;)U[Q[ue]]=W[Q[ue]];return U};function B(U,W){return Object.prototype.hasOwnProperty.call(U,W)}var O=typeof Symbol<"u"?Symbol("util.promisify.custom"):void 0;X.promisify=function(W){if(typeof W!="function")throw new TypeError('The "original" argument must be of type Function');if(O&&W[O]){var Q=W[O];if(typeof Q!="function")throw new TypeError('The "util.promisify.custom" argument must be of type Function');return Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Q}function Q(){for(var ue,se,he=new Promise(function(J,Z){ue=J,se=Z}),G=[],$=0;$<arguments.length;$++)G.push(arguments[$]);G.push(function(J,Z){J?se(J):ue(Z)});try{W.apply(this,G)}catch(J){se(J)}return he}return Object.setPrototypeOf(Q,Object.getPrototypeOf(W)),O&&Object.defineProperty(Q,O,{value:Q,enumerable:!1,writable:!1,configurable:!0}),Object.defineProperties(Q,H(W))},X.promisify.custom=O;function I(U,W){if(!U){var Q=new Error("Promise was rejected with a falsy value");Q.reason=U,U=Q}return W(U)}function N(U){if(typeof U!="function")throw new TypeError('The "original" argument must be of type Function');function W(){for(var Q=[],ue=0;ue<arguments.length;ue++)Q.push(arguments[ue]);var se=Q.pop();if(typeof se!="function")throw new TypeError("The last argument must be of type Function");var he=this,G=function(){return se.apply(he,arguments)};U.apply(this,Q).then(function($){process.nextTick(G.bind(null,null,$))},function($){process.nextTick(I.bind(null,$,G))})}return Object.setPrototypeOf(W,Object.getPrototypeOf(U)),Object.defineProperties(W,H(U)),W}X.callbackify=N}}),ZM=Ye({"node_modules/assert/build/internal/errors.js"(X,H){"use strict";function g(E){"@babel/helpers - typeof";return g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(m){return typeof m}:function(m){return m&&typeof Symbol=="function"&&m.constructor===Symbol&&m!==Symbol.prototype?"symbol":typeof m},g(E)}function x(E,m){for(var b=0;b<m.length;b++){var d=m[b];d.enumerable=d.enumerable||!1,d.configurable=!0,"value"in d&&(d.writable=!0),Object.defineProperty(E,M(d.key),d)}}function A(E,m,b){return m&&x(E.prototype,m),b&&x(E,b),Object.defineProperty(E,"prototype",{writable:!1}),E}function M(E){var m=e(E,"string");return g(m)==="symbol"?m:String(m)}function e(E,m){if(g(E)!=="object"||E===null)return E;var b=E[Symbol.toPrimitive];if(b!==void 0){var d=b.call(E,m||"default");if(g(d)!=="object")return d;throw new TypeError("@@toPrimitive must return a primitive value.")}return(m==="string"?String:Number)(E)}function t(E,m){if(!(E instanceof m))throw new TypeError("Cannot call a class as a function")}function r(E,m){if(typeof m!="function"&&m!==null)throw new TypeError("Super expression must either be null or a function");E.prototype=Object.create(m&&m.prototype,{constructor:{value:E,writable:!0,configurable:!0}}),Object.defineProperty(E,"prototype",{writable:!1}),m&&o(E,m)}function o(E,m){return o=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(d,u){return d.__proto__=u,d},o(E,m)}function a(E){var m=s();return function(){var d=c(E),u;if(m){var y=c(this).constructor;u=Reflect.construct(d,arguments,y)}else u=d.apply(this,arguments);return i(this,u)}}function i(E,m){if(m&&(g(m)==="object"||typeof m=="function"))return m;if(m!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return n(E)}function n(E){if(E===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return E}function s(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function c(E){return c=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(b){return b.__proto__||Object.getPrototypeOf(b)},c(E)}var h={},v,p;function T(E,m,b){b||(b=Error);function d(y,f,P){return typeof m=="string"?m:m(y,f,P)}var u=function(y){r(P,y);var f=a(P);function P(L,z,F){var B;return t(this,P),B=f.call(this,d(L,z,F)),B.code=E,B}return A(P)}(b);h[E]=u}function l(E,m){if(Array.isArray(E)){var b=E.length;return E=E.map(function(d){return String(d)}),b>2?"one of ".concat(m," ").concat(E.slice(0,b-1).join(", "),", or ")+E[b-1]:b===2?"one of ".concat(m," ").concat(E[0]," or ").concat(E[1]):"of ".concat(m," ").concat(E[0])}else return"of ".concat(m," ").concat(String(E))}function _(E,m,b){return E.substr(!b||b<0?0:+b,m.length)===m}function w(E,m,b){return(b===void 0||b>E.length)&&(b=E.length),E.substring(b-m.length,b)===m}function S(E,m,b){return typeof b!="number"&&(b=0),b+m.length>E.length?!1:E.indexOf(m,b)!==-1}T("ERR_AMBIGUOUS_ARGUMENT",'The "%s" argument is ambiguous. %s',TypeError),T("ERR_INVALID_ARG_TYPE",function(E,m,b){v===void 0&&(v=X_()),v(typeof E=="string","'name' must be a string");var d;typeof m=="string"&&_(m,"not ")?(d="must not be",m=m.replace(/^not /,"")):d="must be";var u;if(w(E," argument"))u="The ".concat(E," ").concat(d," ").concat(l(m,"type"));else{var y=S(E,".")?"property":"argument";u='The "'.concat(E,'" ').concat(y," ").concat(d," ").concat(l(m,"type"))}return u+=". Received type ".concat(g(b)),u},TypeError),T("ERR_INVALID_ARG_VALUE",function(E,m){var b=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"is invalid";p===void 0&&(p=g1());var d=p.inspect(m);return d.length>128&&(d="".concat(d.slice(0,128),"...")),"The argument '".concat(E,"' ").concat(b,". Received ").concat(d)},TypeError,RangeError),T("ERR_INVALID_RETURN_VALUE",function(E,m,b){var d;return b&&b.constructor&&b.constructor.name?d="instance of ".concat(b.constructor.name):d="type ".concat(g(b)),"Expected ".concat(E,' to be returned from the "').concat(m,'"')+" function but got ".concat(d,".")},TypeError),T("ERR_MISSING_ARGS",function(){for(var E=arguments.length,m=new Array(E),b=0;b<E;b++)m[b]=arguments[b];v===void 0&&(v=X_()),v(m.length>0,"At least one arg needs to be specified");var d="The ",u=m.length;switch(m=m.map(function(y){return'"'.concat(y,'"')}),u){case 1:d+="".concat(m[0]," argument");break;case 2:d+="".concat(m[0]," and ").concat(m[1]," arguments");break;default:d+=m.slice(0,u-1).join(", "),d+=", and ".concat(m[u-1]," arguments");break}return"".concat(d," must be specified")},TypeError),H.exports.codes=h}}),P4=Ye({"node_modules/assert/build/internal/assert/assertion_error.js"(X,H){"use strict";function g(N,U){var W=Object.keys(N);if(Object.getOwnPropertySymbols){var Q=Object.getOwnPropertySymbols(N);U&&(Q=Q.filter(function(ue){return Object.getOwnPropertyDescriptor(N,ue).enumerable})),W.push.apply(W,Q)}return W}function x(N){for(var U=1;U<arguments.length;U++){var W=arguments[U]!=null?arguments[U]:{};U%2?g(Object(W),!0).forEach(function(Q){A(N,Q,W[Q])}):Object.getOwnPropertyDescriptors?Object.defineProperties(N,Object.getOwnPropertyDescriptors(W)):g(Object(W)).forEach(function(Q){Object.defineProperty(N,Q,Object.getOwnPropertyDescriptor(W,Q))})}return N}function A(N,U,W){return U=r(U),U in N?Object.defineProperty(N,U,{value:W,enumerable:!0,configurable:!0,writable:!0}):N[U]=W,N}function M(N,U){if(!(N instanceof U))throw new TypeError("Cannot call a class as a function")}function e(N,U){for(var W=0;W<U.length;W++){var Q=U[W];Q.enumerable=Q.enumerable||!1,Q.configurable=!0,"value"in Q&&(Q.writable=!0),Object.defineProperty(N,r(Q.key),Q)}}function t(N,U,W){return U&&e(N.prototype,U),W&&e(N,W),Object.defineProperty(N,"prototype",{writable:!1}),N}function r(N){var U=o(N,"string");return _(U)==="symbol"?U:String(U)}function o(N,U){if(_(N)!=="object"||N===null)return N;var W=N[Symbol.toPrimitive];if(W!==void 0){var Q=W.call(N,U||"default");if(_(Q)!=="object")return Q;throw new TypeError("@@toPrimitive must return a primitive value.")}return(U==="string"?String:Number)(N)}function a(N,U){if(typeof U!="function"&&U!==null)throw new TypeError("Super expression must either be null or a function");N.prototype=Object.create(U&&U.prototype,{constructor:{value:N,writable:!0,configurable:!0}}),Object.defineProperty(N,"prototype",{writable:!1}),U&&T(N,U)}function i(N){var U=v();return function(){var Q=l(N),ue;if(U){var se=l(this).constructor;ue=Reflect.construct(Q,arguments,se)}else ue=Q.apply(this,arguments);return n(this,ue)}}function n(N,U){if(U&&(_(U)==="object"||typeof U=="function"))return U;if(U!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return s(N)}function s(N){if(N===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return N}function c(N){var U=typeof Map=="function"?new Map:void 0;return c=function(Q){if(Q===null||!p(Q))return Q;if(typeof Q!="function")throw new TypeError("Super expression must either be null or a function");if(typeof U<"u"){if(U.has(Q))return U.get(Q);U.set(Q,ue)}function ue(){return h(Q,arguments,l(this).constructor)}return ue.prototype=Object.create(Q.prototype,{constructor:{value:ue,enumerable:!1,writable:!0,configurable:!0}}),T(ue,Q)},c(N)}function h(N,U,W){return v()?h=Reflect.construct.bind():h=function(ue,se,he){var G=[null];G.push.apply(G,se);var $=Function.bind.apply(ue,G),J=new $;return he&&T(J,he.prototype),J},h.apply(null,arguments)}function v(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function p(N){return Function.toString.call(N).indexOf("[native code]")!==-1}function T(N,U){return T=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Q,ue){return Q.__proto__=ue,Q},T(N,U)}function l(N){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(W){return W.__proto__||Object.getPrototypeOf(W)},l(N)}function _(N){"@babel/helpers - typeof";return _=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(U){return typeof U}:function(U){return U&&typeof Symbol=="function"&&U.constructor===Symbol&&U!==Symbol.prototype?"symbol":typeof U},_(N)}var w=g1(),S=w.inspect,E=ZM(),m=E.codes.ERR_INVALID_ARG_TYPE;function b(N,U,W){return(W===void 0||W>N.length)&&(W=N.length),N.substring(W-U.length,W)===U}function d(N,U){if(U=Math.floor(U),N.length==0||U==0)return"";var W=N.length*U;for(U=Math.floor(Math.log(U)/Math.log(2));U;)N+=N,U--;return N+=N.substring(0,W-N.length),N}var u="",y="",f="",P="",L={deepStrictEqual:"Expected values to be strictly deep-equal:",strictEqual:"Expected values to be strictly equal:",strictEqualObject:'Expected "actual" to be reference-equal to "expected":',deepEqual:"Expected values to be loosely deep-equal:",equal:"Expected values to be loosely equal:",notDeepStrictEqual:'Expected "actual" not to be strictly deep-equal to:',notStrictEqual:'Expected "actual" to be strictly unequal to:',notStrictEqualObject:'Expected "actual" not to be reference-equal to "expected":',notDeepEqual:'Expected "actual" not to be loosely deep-equal to:',notEqual:'Expected "actual" to be loosely unequal to:',notIdentical:"Values identical but not reference-equal:"},z=10;function F(N){var U=Object.keys(N),W=Object.create(Object.getPrototypeOf(N));return U.forEach(function(Q){W[Q]=N[Q]}),Object.defineProperty(W,"message",{value:N.message}),W}function B(N){return S(N,{compact:!1,customInspect:!1,depth:1e3,maxArrayLength:1/0,showHidden:!1,breakLength:1/0,showProxy:!1,sorted:!0,getters:!0})}function O(N,U,W){var Q="",ue="",se=0,he="",G=!1,$=B(N),J=$.split(`
+`),Z=B(U).split(`
+`),re=0,ne="";if(W==="strictEqual"&&_(N)==="object"&&_(U)==="object"&&N!==null&&U!==null&&(W="strictEqualObject"),J.length===1&&Z.length===1&&J[0]!==Z[0]){var j=J[0].length+Z[0].length;if(j<=z){if((_(N)!=="object"||N===null)&&(_(U)!=="object"||U===null)&&(N!==0||U!==0))return"".concat(L[W],`
+
+`)+"".concat(J[0]," !== ").concat(Z[0],`
+`)}else if(W!=="strictEqualObject"){var ee=process.stderr&&process.stderr.isTTY?process.stderr.columns:80;if(j<ee){for(;J[0][re]===Z[0][re];)re++;re>2&&(ne=`
+ `.concat(d(" ",re),"^"),re=0)}}}for(var ie=J[J.length-1],fe=Z[Z.length-1];ie===fe&&(re++<2?he=`
+ `.concat(ie).concat(he):Q=ie,J.pop(),Z.pop(),!(J.length===0||Z.length===0));)ie=J[J.length-1],fe=Z[Z.length-1];var be=Math.max(J.length,Z.length);if(be===0){var Ae=$.split(`
+`);if(Ae.length>30)for(Ae[26]="".concat(u,"...").concat(P);Ae.length>27;)Ae.pop();return"".concat(L.notIdentical,`
+
+`).concat(Ae.join(`
+`),`
+`)}re>3&&(he=`
+`.concat(u,"...").concat(P).concat(he),G=!0),Q!==""&&(he=`
+ `.concat(Q).concat(he),Q="");var Be=0,Ie=L[W]+`
+`.concat(y,"+ actual").concat(P," ").concat(f,"- expected").concat(P),Ze=" ".concat(u,"...").concat(P," Lines skipped");for(re=0;re<be;re++){var at=re-se;if(J.length<re+1)at>1&&re>2&&(at>4?(ue+=`
+`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
+ `.concat(Z[re-2]),Be++),ue+=`
+ `.concat(Z[re-1]),Be++),se=re,Q+=`
+`.concat(f,"-").concat(P," ").concat(Z[re]),Be++;else if(Z.length<re+1)at>1&&re>2&&(at>4?(ue+=`
+`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
+ `.concat(J[re-2]),Be++),ue+=`
+ `.concat(J[re-1]),Be++),se=re,ue+=`
+`.concat(y,"+").concat(P," ").concat(J[re]),Be++;else{var it=Z[re],et=J[re],lt=et!==it&&(!b(et,",")||et.slice(0,-1)!==it);lt&&b(it,",")&&it.slice(0,-1)===et&&(lt=!1,et+=","),lt?(at>1&&re>2&&(at>4?(ue+=`
+`.concat(u,"...").concat(P),G=!0):at>3&&(ue+=`
+ `.concat(J[re-2]),Be++),ue+=`
+ `.concat(J[re-1]),Be++),se=re,ue+=`
+`.concat(y,"+").concat(P," ").concat(et),Q+=`
+`.concat(f,"-").concat(P," ").concat(it),Be+=2):(ue+=Q,Q="",(at===1||re===0)&&(ue+=`
+ `.concat(et),Be++))}if(Be>20&&re<be-2)return"".concat(Ie).concat(Ze,`
+`).concat(ue,`
+`).concat(u,"...").concat(P).concat(Q,`
+`)+"".concat(u,"...").concat(P)}return"".concat(Ie).concat(G?Ze:"",`
+`).concat(ue).concat(Q).concat(he).concat(ne)}var I=function(N,U){a(Q,N);var W=i(Q);function Q(ue){var se;if(M(this,Q),_(ue)!=="object"||ue===null)throw new m("options","Object",ue);var he=ue.message,G=ue.operator,$=ue.stackStartFn,J=ue.actual,Z=ue.expected,re=Error.stackTraceLimit;if(Error.stackTraceLimit=0,he!=null)se=W.call(this,String(he));else if(process.stderr&&process.stderr.isTTY&&(process.stderr&&process.stderr.getColorDepth&&process.stderr.getColorDepth()!==1?(u="\x1B[34m",y="\x1B[32m",P="\x1B[39m",f="\x1B[31m"):(u="",y="",P="",f="")),_(J)==="object"&&J!==null&&_(Z)==="object"&&Z!==null&&"stack"in J&&J instanceof Error&&"stack"in Z&&Z instanceof Error&&(J=F(J),Z=F(Z)),G==="deepStrictEqual"||G==="strictEqual")se=W.call(this,O(J,Z,G));else if(G==="notDeepStrictEqual"||G==="notStrictEqual"){var ne=L[G],j=B(J).split(`
+`);if(G==="notStrictEqual"&&_(J)==="object"&&J!==null&&(ne=L.notStrictEqualObject),j.length>30)for(j[26]="".concat(u,"...").concat(P);j.length>27;)j.pop();j.length===1?se=W.call(this,"".concat(ne," ").concat(j[0])):se=W.call(this,"".concat(ne,`
+
+`).concat(j.join(`
+`),`
+`))}else{var ee=B(J),ie="",fe=L[G];G==="notDeepEqual"||G==="notEqual"?(ee="".concat(L[G],`
+
+`).concat(ee),ee.length>1024&&(ee="".concat(ee.slice(0,1021),"..."))):(ie="".concat(B(Z)),ee.length>512&&(ee="".concat(ee.slice(0,509),"...")),ie.length>512&&(ie="".concat(ie.slice(0,509),"...")),G==="deepEqual"||G==="equal"?ee="".concat(fe,`
+
+`).concat(ee,`
+
+should equal
+
+`):ie=" ".concat(G," ").concat(ie)),se=W.call(this,"".concat(ee).concat(ie))}return Error.stackTraceLimit=re,se.generatedMessage=!he,Object.defineProperty(s(se),"name",{value:"AssertionError [ERR_ASSERTION]",enumerable:!1,writable:!0,configurable:!0}),se.code="ERR_ASSERTION",se.actual=J,se.expected=Z,se.operator=G,Error.captureStackTrace&&Error.captureStackTrace(s(se),$),se.stack,se.name="AssertionError",n(se)}return t(Q,[{key:"toString",value:function(){return"".concat(this.name," [").concat(this.code,"]: ").concat(this.message)}},{key:U,value:function(se,he){return S(this,x(x({},he),{},{customInspect:!1,depth:0}))}}]),Q}(c(Error),S.custom);H.exports=I}}),XM=Ye({"node_modules/object-keys/isArguments.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(A){var M=g.call(A),e=M==="[object Arguments]";return e||(e=M!=="[object Array]"&&A!==null&&typeof A=="object"&&typeof A.length=="number"&&A.length>=0&&g.call(A.callee)==="[object Function]"),e}}}),I4=Ye({"node_modules/object-keys/implementation.js"(X,H){"use strict";var g;Object.keys||(x=Object.prototype.hasOwnProperty,A=Object.prototype.toString,M=XM(),e=Object.prototype.propertyIsEnumerable,t=!e.call({toString:null},"toString"),r=e.call(function(){},"prototype"),o=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],a=function(c){var h=c.constructor;return h&&h.prototype===c},i={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},n=function(){if(typeof window>"u")return!1;for(var c in window)try{if(!i["$"+c]&&x.call(window,c)&&window[c]!==null&&typeof window[c]=="object")try{a(window[c])}catch{return!0}}catch{return!0}return!1}(),s=function(c){if(typeof window>"u"||!n)return a(c);try{return a(c)}catch{return!1}},g=function(h){var v=h!==null&&typeof h=="object",p=A.call(h)==="[object Function]",T=M(h),l=v&&A.call(h)==="[object String]",_=[];if(!v&&!p&&!T)throw new TypeError("Object.keys called on a non-object");var w=r&&p;if(l&&h.length>0&&!x.call(h,0))for(var S=0;S<h.length;++S)_.push(String(S));if(T&&h.length>0)for(var E=0;E<h.length;++E)_.push(String(E));else for(var m in h)!(w&&m==="prototype")&&x.call(h,m)&&_.push(String(m));if(t)for(var b=s(h),d=0;d<o.length;++d)!(b&&o[d]==="constructor")&&x.call(h,o[d])&&_.push(o[d]);return _});var x,A,M,e,t,r,o,a,i,n,s;H.exports=g}}),YM=Ye({"node_modules/object-keys/index.js"(X,H){"use strict";var g=Array.prototype.slice,x=XM(),A=Object.keys,M=A?function(r){return A(r)}:I4(),e=Object.keys;M.shim=function(){if(Object.keys){var r=function(){var o=Object.keys(arguments);return o&&o.length===arguments.length}(1,2);r||(Object.keys=function(a){return x(a)?e(g.call(a)):e(a)})}else Object.keys=M;return Object.keys||M},H.exports=M}}),R4=Ye({"node_modules/object.assign/implementation.js"(X,H){"use strict";var g=YM(),x=h3()(),A=m1(),M=Object,e=A("Array.prototype.push"),t=A("Object.prototype.propertyIsEnumerable"),r=x?Object.getOwnPropertySymbols:null;H.exports=function(a,i){if(a==null)throw new TypeError("target must be an object");var n=M(a);if(arguments.length===1)return n;for(var s=1;s<arguments.length;++s){var c=M(arguments[s]),h=g(c),v=x&&(Object.getOwnPropertySymbols||r);if(v)for(var p=v(c),T=0;T<p.length;++T){var l=p[T];t(c,l)&&e(h,l)}for(var _=0;_<h.length;++_){var w=h[_];if(t(c,w)){var S=c[w];n[w]=S}}}return n}}}),D4=Ye({"node_modules/object.assign/polyfill.js"(X,H){"use strict";var g=R4(),x=function(){if(!Object.assign)return!1;for(var M="abcdefghijklmnopqrst",e=M.split(""),t={},r=0;r<e.length;++r)t[e[r]]=e[r];var o=Object.assign({},t),a="";for(var i in o)a+=i;return M!==a},A=function(){if(!Object.assign||!Object.preventExtensions)return!1;var M=Object.preventExtensions({1:2});try{Object.assign(M,"xy")}catch{return M[1]==="y"}return!1};H.exports=function(){return!Object.assign||x()||A()?g:Object.assign}}}),KM=Ye({"node_modules/object-is/implementation.js"(X,H){"use strict";var g=function(x){return x!==x};H.exports=function(A,M){return A===0&&M===0?1/A===1/M:!!(A===M||g(A)&&g(M))}}}),m3=Ye({"node_modules/object-is/polyfill.js"(X,H){"use strict";var g=KM();H.exports=function(){return typeof Object.is=="function"?Object.is:g}}}),Z_=Ye({"node_modules/define-properties/index.js"(X,H){"use strict";var g=YM(),x=typeof Symbol=="function"&&typeof Symbol("foo")=="symbol",A=Object.prototype.toString,M=Array.prototype.concat,e=Object.defineProperty,t=function(n){return typeof n=="function"&&A.call(n)==="[object Function]"},r=zM()(),o=e&&r,a=function(n,s,c,h){if(s in n){if(h===!0){if(n[s]===c)return}else if(!t(h)||!h())return}o?e(n,s,{configurable:!0,enumerable:!1,value:c,writable:!0}):n[s]=c},i=function(n,s){var c=arguments.length>2?arguments[2]:{},h=g(s);x&&(h=M.call(h,Object.getOwnPropertySymbols(s)));for(var v=0;v<h.length;v+=1)a(n,h[v],s[h[v]],c[h[v]])};i.supportsDescriptors=!!o,H.exports=i}}),z4=Ye({"node_modules/object-is/shim.js"(X,H){"use strict";var g=m3(),x=Z_();H.exports=function(){var M=g();return x(Object,{is:M},{is:function(){return Object.is!==M}}),M}}}),F4=Ye({"node_modules/object-is/index.js"(X,H){"use strict";var g=Z_(),x=W_(),A=KM(),M=m3(),e=z4(),t=x(M(),Object);g(t,{getPolyfill:M,implementation:A,shim:e}),H.exports=t}}),JM=Ye({"node_modules/is-nan/implementation.js"(X,H){"use strict";H.exports=function(x){return x!==x}}}),$M=Ye({"node_modules/is-nan/polyfill.js"(X,H){"use strict";var g=JM();H.exports=function(){return Number.isNaN&&Number.isNaN(NaN)&&!Number.isNaN("a")?Number.isNaN:g}}}),O4=Ye({"node_modules/is-nan/shim.js"(X,H){"use strict";var g=Z_(),x=$M();H.exports=function(){var M=x();return g(Number,{isNaN:M},{isNaN:function(){return Number.isNaN!==M}}),M}}}),B4=Ye({"node_modules/is-nan/index.js"(X,H){"use strict";var g=W_(),x=Z_(),A=JM(),M=$M(),e=O4(),t=g(M(),Number);x(t,{getPolyfill:M,implementation:A,shim:e}),H.exports=t}}),N4=Ye({"node_modules/assert/build/internal/util/comparisons.js"(X,H){"use strict";function g(Me,ge){return t(Me)||e(Me,ge)||A(Me,ge)||x()}function x(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function A(Me,ge){if(Me){if(typeof Me=="string")return M(Me,ge);var ce=Object.prototype.toString.call(Me).slice(8,-1);if(ce==="Object"&&Me.constructor&&(ce=Me.constructor.name),ce==="Map"||ce==="Set")return Array.from(Me);if(ce==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(ce))return M(Me,ge)}}function M(Me,ge){(ge==null||ge>Me.length)&&(ge=Me.length);for(var ce=0,ze=new Array(ge);ce<ge;ce++)ze[ce]=Me[ce];return ze}function e(Me,ge){var ce=Me==null?null:typeof Symbol<"u"&&Me[Symbol.iterator]||Me["@@iterator"];if(ce!=null){var ze,tt,nt,Qe,Ct=[],St=!0,Ot=!1;try{if(nt=(ce=ce.call(Me)).next,ge===0){if(Object(ce)!==ce)return;St=!1}else for(;!(St=(ze=nt.call(ce)).done)&&(Ct.push(ze.value),Ct.length!==ge);St=!0);}catch(jt){Ot=!0,tt=jt}finally{try{if(!St&&ce.return!=null&&(Qe=ce.return(),Object(Qe)!==Qe))return}finally{if(Ot)throw tt}}return Ct}}function t(Me){if(Array.isArray(Me))return Me}function r(Me){"@babel/helpers - typeof";return r=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(ge){return typeof ge}:function(ge){return ge&&typeof Symbol=="function"&&ge.constructor===Symbol&&ge!==Symbol.prototype?"symbol":typeof ge},r(Me)}var o=/a/g.flags!==void 0,a=function(ge){var ce=[];return ge.forEach(function(ze){return ce.push(ze)}),ce},i=function(ge){var ce=[];return ge.forEach(function(ze,tt){return ce.push([tt,ze])}),ce},n=Object.is?Object.is:F4(),s=Object.getOwnPropertySymbols?Object.getOwnPropertySymbols:function(){return[]},c=Number.isNaN?Number.isNaN:B4();function h(Me){return Me.call.bind(Me)}var v=h(Object.prototype.hasOwnProperty),p=h(Object.prototype.propertyIsEnumerable),T=h(Object.prototype.toString),l=g1().types,_=l.isAnyArrayBuffer,w=l.isArrayBufferView,S=l.isDate,E=l.isMap,m=l.isRegExp,b=l.isSet,d=l.isNativeError,u=l.isBoxedPrimitive,y=l.isNumberObject,f=l.isStringObject,P=l.isBooleanObject,L=l.isBigIntObject,z=l.isSymbolObject,F=l.isFloat32Array,B=l.isFloat64Array;function O(Me){if(Me.length===0||Me.length>10)return!0;for(var ge=0;ge<Me.length;ge++){var ce=Me.charCodeAt(ge);if(ce<48||ce>57)return!0}return Me.length===10&&Me>=Math.pow(2,32)}function I(Me){return Object.keys(Me).filter(O).concat(s(Me).filter(Object.prototype.propertyIsEnumerable.bind(Me)))}function N(Me,ge){if(Me===ge)return 0;for(var ce=Me.length,ze=ge.length,tt=0,nt=Math.min(ce,ze);tt<nt;++tt)if(Me[tt]!==ge[tt]){ce=Me[tt],ze=ge[tt];break}return ce<ze?-1:ze<ce?1:0}var U=void 0,W=!0,Q=!1,ue=0,se=1,he=2,G=3;function $(Me,ge){return o?Me.source===ge.source&&Me.flags===ge.flags:RegExp.prototype.toString.call(Me)===RegExp.prototype.toString.call(ge)}function J(Me,ge){if(Me.byteLength!==ge.byteLength)return!1;for(var ce=0;ce<Me.byteLength;ce++)if(Me[ce]!==ge[ce])return!1;return!0}function Z(Me,ge){return Me.byteLength!==ge.byteLength?!1:N(new Uint8Array(Me.buffer,Me.byteOffset,Me.byteLength),new Uint8Array(ge.buffer,ge.byteOffset,ge.byteLength))===0}function re(Me,ge){return Me.byteLength===ge.byteLength&&N(new Uint8Array(Me),new Uint8Array(ge))===0}function ne(Me,ge){return y(Me)?y(ge)&&n(Number.prototype.valueOf.call(Me),Number.prototype.valueOf.call(ge)):f(Me)?f(ge)&&String.prototype.valueOf.call(Me)===String.prototype.valueOf.call(ge):P(Me)?P(ge)&&Boolean.prototype.valueOf.call(Me)===Boolean.prototype.valueOf.call(ge):L(Me)?L(ge)&&BigInt.prototype.valueOf.call(Me)===BigInt.prototype.valueOf.call(ge):z(ge)&&Symbol.prototype.valueOf.call(Me)===Symbol.prototype.valueOf.call(ge)}function j(Me,ge,ce,ze){if(Me===ge)return Me!==0?!0:ce?n(Me,ge):!0;if(ce){if(r(Me)!=="object")return typeof Me=="number"&&c(Me)&&c(ge);if(r(ge)!=="object"||Me===null||ge===null||Object.getPrototypeOf(Me)!==Object.getPrototypeOf(ge))return!1}else{if(Me===null||r(Me)!=="object")return ge===null||r(ge)!=="object"?Me==ge:!1;if(ge===null||r(ge)!=="object")return!1}var tt=T(Me),nt=T(ge);if(tt!==nt)return!1;if(Array.isArray(Me)){if(Me.length!==ge.length)return!1;var Qe=I(Me,U),Ct=I(ge,U);return Qe.length!==Ct.length?!1:ie(Me,ge,ce,ze,se,Qe)}if(tt==="[object Object]"&&(!E(Me)&&E(ge)||!b(Me)&&b(ge)))return!1;if(S(Me)){if(!S(ge)||Date.prototype.getTime.call(Me)!==Date.prototype.getTime.call(ge))return!1}else if(m(Me)){if(!m(ge)||!$(Me,ge))return!1}else if(d(Me)||Me instanceof Error){if(Me.message!==ge.message||Me.name!==ge.name)return!1}else if(w(Me)){if(!ce&&(F(Me)||B(Me))){if(!J(Me,ge))return!1}else if(!Z(Me,ge))return!1;var St=I(Me,U),Ot=I(ge,U);return St.length!==Ot.length?!1:ie(Me,ge,ce,ze,ue,St)}else{if(b(Me))return!b(ge)||Me.size!==ge.size?!1:ie(Me,ge,ce,ze,he);if(E(Me))return!E(ge)||Me.size!==ge.size?!1:ie(Me,ge,ce,ze,G);if(_(Me)){if(!re(Me,ge))return!1}else if(u(Me)&&!ne(Me,ge))return!1}return ie(Me,ge,ce,ze,ue)}function ee(Me,ge){return ge.filter(function(ce){return p(Me,ce)})}function ie(Me,ge,ce,ze,tt,nt){if(arguments.length===5){nt=Object.keys(Me);var Qe=Object.keys(ge);if(nt.length!==Qe.length)return!1}for(var Ct=0;Ct<nt.length;Ct++)if(!v(ge,nt[Ct]))return!1;if(ce&&arguments.length===5){var St=s(Me);if(St.length!==0){var Ot=0;for(Ct=0;Ct<St.length;Ct++){var jt=St[Ct];if(p(Me,jt)){if(!p(ge,jt))return!1;nt.push(jt),Ot++}else if(p(ge,jt))return!1}var ur=s(ge);if(St.length!==ur.length&&ee(ge,ur).length!==Ot)return!1}else{var ar=s(ge);if(ar.length!==0&&ee(ge,ar).length!==0)return!1}}if(nt.length===0&&(tt===ue||tt===se&&Me.length===0||Me.size===0))return!0;if(ze===void 0)ze={val1:new Map,val2:new Map,position:0};else{var Cr=ze.val1.get(Me);if(Cr!==void 0){var vr=ze.val2.get(ge);if(vr!==void 0)return Cr===vr}ze.position++}ze.val1.set(Me,ze.position),ze.val2.set(ge,ze.position);var _r=it(Me,ge,ce,nt,ze,tt);return ze.val1.delete(Me),ze.val2.delete(ge),_r}function fe(Me,ge,ce,ze){for(var tt=a(Me),nt=0;nt<tt.length;nt++){var Qe=tt[nt];if(j(ge,Qe,ce,ze))return Me.delete(Qe),!0}return!1}function be(Me){switch(r(Me)){case"undefined":return null;case"object":return;case"symbol":return!1;case"string":Me=+Me;case"number":if(c(Me))return!1}return!0}function Ae(Me,ge,ce){var ze=be(ce);return ze??(ge.has(ze)&&!Me.has(ze))}function Be(Me,ge,ce,ze,tt){var nt=be(ce);if(nt!=null)return nt;var Qe=ge.get(nt);return Qe===void 0&&!ge.has(nt)||!j(ze,Qe,!1,tt)?!1:!Me.has(nt)&&j(ze,Qe,!1,tt)}function Ie(Me,ge,ce,ze){for(var tt=null,nt=a(Me),Qe=0;Qe<nt.length;Qe++){var Ct=nt[Qe];if(r(Ct)==="object"&&Ct!==null)tt===null&&(tt=new Set),tt.add(Ct);else if(!ge.has(Ct)){if(ce||!Ae(Me,ge,Ct))return!1;tt===null&&(tt=new Set),tt.add(Ct)}}if(tt!==null){for(var St=a(ge),Ot=0;Ot<St.length;Ot++){var jt=St[Ot];if(r(jt)==="object"&&jt!==null){if(!fe(tt,jt,ce,ze))return!1}else if(!ce&&!Me.has(jt)&&!fe(tt,jt,ce,ze))return!1}return tt.size===0}return!0}function Ze(Me,ge,ce,ze,tt,nt){for(var Qe=a(Me),Ct=0;Ct<Qe.length;Ct++){var St=Qe[Ct];if(j(ce,St,tt,nt)&&j(ze,ge.get(St),tt,nt))return Me.delete(St),!0}return!1}function at(Me,ge,ce,ze){for(var tt=null,nt=i(Me),Qe=0;Qe<nt.length;Qe++){var Ct=g(nt[Qe],2),St=Ct[0],Ot=Ct[1];if(r(St)==="object"&&St!==null)tt===null&&(tt=new Set),tt.add(St);else{var jt=ge.get(St);if(jt===void 0&&!ge.has(St)||!j(Ot,jt,ce,ze)){if(ce||!Be(Me,ge,St,Ot,ze))return!1;tt===null&&(tt=new Set),tt.add(St)}}}if(tt!==null){for(var ur=i(ge),ar=0;ar<ur.length;ar++){var Cr=g(ur[ar],2),vr=Cr[0],_r=Cr[1];if(r(vr)==="object"&&vr!==null){if(!Ze(tt,Me,vr,_r,ce,ze))return!1}else if(!ce&&(!Me.has(vr)||!j(Me.get(vr),_r,!1,ze))&&!Ze(tt,Me,vr,_r,!1,ze))return!1}return tt.size===0}return!0}function it(Me,ge,ce,ze,tt,nt){var Qe=0;if(nt===he){if(!Ie(Me,ge,ce,tt))return!1}else if(nt===G){if(!at(Me,ge,ce,tt))return!1}else if(nt===se)for(;Qe<Me.length;Qe++)if(v(Me,Qe)){if(!v(ge,Qe)||!j(Me[Qe],ge[Qe],ce,tt))return!1}else{if(v(ge,Qe))return!1;for(var Ct=Object.keys(Me);Qe<Ct.length;Qe++){var St=Ct[Qe];if(!v(ge,St)||!j(Me[St],ge[St],ce,tt))return!1}return Ct.length===Object.keys(ge).length}for(Qe=0;Qe<ze.length;Qe++){var Ot=ze[Qe];if(!j(Me[Ot],ge[Ot],ce,tt))return!1}return!0}function et(Me,ge){return j(Me,ge,Q)}function lt(Me,ge){return j(Me,ge,W)}H.exports={isDeepEqual:et,isDeepStrictEqual:lt}}}),X_=Ye({"node_modules/assert/build/assert.js"(X,H){"use strict";function g($){"@babel/helpers - typeof";return g=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(J){return typeof J}:function(J){return J&&typeof Symbol=="function"&&J.constructor===Symbol&&J!==Symbol.prototype?"symbol":typeof J},g($)}function x($,J){for(var Z=0;Z<J.length;Z++){var re=J[Z];re.enumerable=re.enumerable||!1,re.configurable=!0,"value"in re&&(re.writable=!0),Object.defineProperty($,M(re.key),re)}}function A($,J,Z){return J&&x($.prototype,J),Z&&x($,Z),Object.defineProperty($,"prototype",{writable:!1}),$}function M($){var J=e($,"string");return g(J)==="symbol"?J:String(J)}function e($,J){if(g($)!=="object"||$===null)return $;var Z=$[Symbol.toPrimitive];if(Z!==void 0){var re=Z.call($,J||"default");if(g(re)!=="object")return re;throw new TypeError("@@toPrimitive must return a primitive value.")}return(J==="string"?String:Number)($)}function t($,J){if(!($ instanceof J))throw new TypeError("Cannot call a class as a function")}var r=ZM(),o=r.codes,a=o.ERR_AMBIGUOUS_ARGUMENT,i=o.ERR_INVALID_ARG_TYPE,n=o.ERR_INVALID_ARG_VALUE,s=o.ERR_INVALID_RETURN_VALUE,c=o.ERR_MISSING_ARGS,h=P4(),v=g1(),p=v.inspect,T=g1().types,l=T.isPromise,_=T.isRegExp,w=D4()(),S=m3()(),E=m1()("RegExp.prototype.test"),m,b;function d(){var $=N4();m=$.isDeepEqual,b=$.isDeepStrictEqual}var u=!1,y=H.exports=F,f={};function P($){throw $.message instanceof Error?$.message:new h($)}function L($,J,Z,re,ne){var j=arguments.length,ee;if(j===0)ee="Failed";else if(j===1)Z=$,$=void 0;else{if(u===!1){u=!0;var ie=process.emitWarning?process.emitWarning:console.warn.bind(console);ie("assert.fail() with more than one argument is deprecated. Please use assert.strictEqual() instead or only pass a message.","DeprecationWarning","DEP0094")}j===2&&(re="!=")}if(Z instanceof Error)throw Z;var fe={actual:$,expected:J,operator:re===void 0?"fail":re,stackStartFn:ne||L};Z!==void 0&&(fe.message=Z);var be=new h(fe);throw ee&&(be.message=ee,be.generatedMessage=!0),be}y.fail=L,y.AssertionError=h;function z($,J,Z,re){if(!Z){var ne=!1;if(J===0)ne=!0,re="No value argument passed to `assert.ok()`";else if(re instanceof Error)throw re;var j=new h({actual:Z,expected:!0,message:re,operator:"==",stackStartFn:$});throw j.generatedMessage=ne,j}}function F(){for(var $=arguments.length,J=new Array($),Z=0;Z<$;Z++)J[Z]=arguments[Z];z.apply(void 0,[F,J.length].concat(J))}y.ok=F,y.equal=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");J!=Z&&P({actual:J,expected:Z,message:re,operator:"==",stackStartFn:$})},y.notEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");J==Z&&P({actual:J,expected:Z,message:re,operator:"!=",stackStartFn:$})},y.deepEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),m(J,Z)||P({actual:J,expected:Z,message:re,operator:"deepEqual",stackStartFn:$})},y.notDeepEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),m(J,Z)&&P({actual:J,expected:Z,message:re,operator:"notDeepEqual",stackStartFn:$})},y.deepStrictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),b(J,Z)||P({actual:J,expected:Z,message:re,operator:"deepStrictEqual",stackStartFn:$})},y.notDeepStrictEqual=B;function B($,J,Z){if(arguments.length<2)throw new c("actual","expected");m===void 0&&d(),b($,J)&&P({actual:$,expected:J,message:Z,operator:"notDeepStrictEqual",stackStartFn:B})}y.strictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");S(J,Z)||P({actual:J,expected:Z,message:re,operator:"strictEqual",stackStartFn:$})},y.notStrictEqual=function $(J,Z,re){if(arguments.length<2)throw new c("actual","expected");S(J,Z)&&P({actual:J,expected:Z,message:re,operator:"notStrictEqual",stackStartFn:$})};var O=A(function $(J,Z,re){var ne=this;t(this,$),Z.forEach(function(j){j in J&&(re!==void 0&&typeof re[j]=="string"&&_(J[j])&&E(J[j],re[j])?ne[j]=re[j]:ne[j]=J[j])})});function I($,J,Z,re,ne,j){if(!(Z in $)||!b($[Z],J[Z])){if(!re){var ee=new O($,ne),ie=new O(J,ne,$),fe=new h({actual:ee,expected:ie,operator:"deepStrictEqual",stackStartFn:j});throw fe.actual=$,fe.expected=J,fe.operator=j.name,fe}P({actual:$,expected:J,message:re,operator:j.name,stackStartFn:j})}}function N($,J,Z,re){if(typeof J!="function"){if(_(J))return E(J,$);if(arguments.length===2)throw new i("expected",["Function","RegExp"],J);if(g($)!=="object"||$===null){var ne=new h({actual:$,expected:J,message:Z,operator:"deepStrictEqual",stackStartFn:re});throw ne.operator=re.name,ne}var j=Object.keys(J);if(J instanceof Error)j.push("name","message");else if(j.length===0)throw new n("error",J,"may not be an empty object");return m===void 0&&d(),j.forEach(function(ee){typeof $[ee]=="string"&&_(J[ee])&&E(J[ee],$[ee])||I($,J,ee,Z,j,re)}),!0}return J.prototype!==void 0&&$ instanceof J?!0:Error.isPrototypeOf(J)?!1:J.call({},$)===!0}function U($){if(typeof $!="function")throw new i("fn","Function",$);try{$()}catch(J){return J}return f}function W($){return l($)||$!==null&&g($)==="object"&&typeof $.then=="function"&&typeof $.catch=="function"}function Q($){return Promise.resolve().then(function(){var J;if(typeof $=="function"){if(J=$(),!W(J))throw new s("instance of Promise","promiseFn",J)}else if(W($))J=$;else throw new i("promiseFn",["Function","Promise"],$);return Promise.resolve().then(function(){return J}).then(function(){return f}).catch(function(Z){return Z})})}function ue($,J,Z,re){if(typeof Z=="string"){if(arguments.length===4)throw new i("error",["Object","Error","Function","RegExp"],Z);if(g(J)==="object"&&J!==null){if(J.message===Z)throw new a("error/message",'The error message "'.concat(J.message,'" is identical to the message.'))}else if(J===Z)throw new a("error/message",'The error "'.concat(J,'" is identical to the message.'));re=Z,Z=void 0}else if(Z!=null&&g(Z)!=="object"&&typeof Z!="function")throw new i("error",["Object","Error","Function","RegExp"],Z);if(J===f){var ne="";Z&&Z.name&&(ne+=" (".concat(Z.name,")")),ne+=re?": ".concat(re):".";var j=$.name==="rejects"?"rejection":"exception";P({actual:void 0,expected:Z,operator:$.name,message:"Missing expected ".concat(j).concat(ne),stackStartFn:$})}if(Z&&!N(J,Z,re,$))throw J}function se($,J,Z,re){if(J!==f){if(typeof Z=="string"&&(re=Z,Z=void 0),!Z||N(J,Z)){var ne=re?": ".concat(re):".",j=$.name==="doesNotReject"?"rejection":"exception";P({actual:J,expected:Z,operator:$.name,message:"Got unwanted ".concat(j).concat(ne,`
+`)+'Actual message: "'.concat(J&&J.message,'"'),stackStartFn:$})}throw J}}y.throws=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];ue.apply(void 0,[$,U(J)].concat(re))},y.rejects=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];return Q(J).then(function(j){return ue.apply(void 0,[$,j].concat(re))})},y.doesNotThrow=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];se.apply(void 0,[$,U(J)].concat(re))},y.doesNotReject=function $(J){for(var Z=arguments.length,re=new Array(Z>1?Z-1:0),ne=1;ne<Z;ne++)re[ne-1]=arguments[ne];return Q(J).then(function(j){return se.apply(void 0,[$,j].concat(re))})},y.ifError=function $(J){if(J!=null){var Z="ifError got unwanted exception: ";g(J)==="object"&&typeof J.message=="string"?J.message.length===0&&J.constructor?Z+=J.constructor.name:Z+=J.message:Z+=p(J);var re=new h({actual:J,expected:null,operator:"ifError",message:Z,stackStartFn:$}),ne=J.stack;if(typeof ne=="string"){var j=ne.split(`
+`);j.shift();for(var ee=re.stack.split(`
+`),ie=0;ie<j.length;ie++){var fe=ee.indexOf(j[ie]);if(fe!==-1){ee=ee.slice(0,fe);break}}re.stack="".concat(ee.join(`
+`),`
+`).concat(j.join(`
+`))}throw re}};function he($,J,Z,re,ne){if(!_(J))throw new i("regexp","RegExp",J);var j=ne==="match";if(typeof $!="string"||E(J,$)!==j){if(Z instanceof Error)throw Z;var ee=!Z;Z=Z||(typeof $!="string"?'The "string" argument must be of type string. Received type '+"".concat(g($)," (").concat(p($),")"):(j?"The input did not match the regular expression ":"The input was expected to not match the regular expression ")+"".concat(p(J),`. Input:
+
+`).concat(p($),`
+`));var ie=new h({actual:$,expected:J,message:Z,operator:ne,stackStartFn:re});throw ie.generatedMessage=ee,ie}}y.match=function $(J,Z,re){he(J,Z,re,$,"match")},y.doesNotMatch=function $(J,Z,re){he(J,Z,re,$,"doesNotMatch")};function G(){for(var $=arguments.length,J=new Array($),Z=0;Z<$;Z++)J[Z]=arguments[Z];z.apply(void 0,[G,J.length].concat(J))}y.strict=w(G,y,{equal:y.strictEqual,deepEqual:y.deepStrictEqual,notEqual:y.notStrictEqual,notDeepEqual:y.notDeepStrictEqual}),y.strict.strict=y.strict}}),U4=Ye({"node_modules/stream-parser/node_modules/ms/index.js"(X,H){var g=1e3,x=g*60,A=x*60,M=A*24,e=M*365.25;H.exports=function(i,n){n=n||{};var s=typeof i;if(s==="string"&&i.length>0)return t(i);if(s==="number"&&isNaN(i)===!1)return n.long?o(i):r(i);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(i))};function t(i){if(i=String(i),!(i.length>100)){var n=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(i);if(n){var s=parseFloat(n[1]),c=(n[2]||"ms").toLowerCase();switch(c){case"years":case"year":case"yrs":case"yr":case"y":return s*e;case"days":case"day":case"d":return s*M;case"hours":case"hour":case"hrs":case"hr":case"h":return s*A;case"minutes":case"minute":case"mins":case"min":case"m":return s*x;case"seconds":case"second":case"secs":case"sec":case"s":return s*g;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}function r(i){return i>=M?Math.round(i/M)+"d":i>=A?Math.round(i/A)+"h":i>=x?Math.round(i/x)+"m":i>=g?Math.round(i/g)+"s":i+"ms"}function o(i){return a(i,M,"day")||a(i,A,"hour")||a(i,x,"minute")||a(i,g,"second")||i+" ms"}function a(i,n,s){if(!(i<n))return i<n*1.5?Math.floor(i/n)+" "+s:Math.ceil(i/n)+" "+s+"s"}}}),j4=Ye({"node_modules/stream-parser/node_modules/debug/src/debug.js"(X,H){X=H.exports=A.debug=A.default=A,X.coerce=r,X.disable=e,X.enable=M,X.enabled=t,X.humanize=U4(),X.names=[],X.skips=[],X.formatters={};var g;function x(o){var a=0,i;for(i in o)a=(a<<5)-a+o.charCodeAt(i),a|=0;return X.colors[Math.abs(a)%X.colors.length]}function A(o){function a(){if(a.enabled){var i=a,n=+new Date,s=n-(g||n);i.diff=s,i.prev=g,i.curr=n,g=n;for(var c=new Array(arguments.length),h=0;h<c.length;h++)c[h]=arguments[h];c[0]=X.coerce(c[0]),typeof c[0]!="string"&&c.unshift("%O");var v=0;c[0]=c[0].replace(/%([a-zA-Z%])/g,function(T,l){if(T==="%%")return T;v++;var _=X.formatters[l];if(typeof _=="function"){var w=c[v];T=_.call(i,w),c.splice(v,1),v--}return T}),X.formatArgs.call(i,c);var p=a.log||X.log||console.log.bind(console);p.apply(i,c)}}return a.namespace=o,a.enabled=X.enabled(o),a.useColors=X.useColors(),a.color=x(o),typeof X.init=="function"&&X.init(a),a}function M(o){X.save(o),X.names=[],X.skips=[];for(var a=(typeof o=="string"?o:"").split(/[\s,]+/),i=a.length,n=0;n<i;n++)a[n]&&(o=a[n].replace(/\*/g,".*?"),o[0]==="-"?X.skips.push(new RegExp("^"+o.substr(1)+"$")):X.names.push(new RegExp("^"+o+"$")))}function e(){X.enable("")}function t(o){var a,i;for(a=0,i=X.skips.length;a<i;a++)if(X.skips[a].test(o))return!1;for(a=0,i=X.names.length;a<i;a++)if(X.names[a].test(o))return!0;return!1}function r(o){return o instanceof Error?o.stack||o.message:o}}}),V4=Ye({"node_modules/stream-parser/node_modules/debug/src/browser.js"(X,H){X=H.exports=j4(),X.log=A,X.formatArgs=x,X.save=M,X.load=e,X.useColors=g,X.storage=typeof chrome<"u"&&typeof chrome.storage<"u"?chrome.storage.local:t(),X.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function g(){return typeof window<"u"&&window.process&&window.process.type==="renderer"?!0:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}X.formatters.j=function(r){try{return JSON.stringify(r)}catch(o){return"[UnexpectedJSONParseError]: "+o.message}};function x(r){var o=this.useColors;if(r[0]=(o?"%c":"")+this.namespace+(o?" %c":" ")+r[0]+(o?"%c ":" ")+"+"+X.humanize(this.diff),!!o){var a="color: "+this.color;r.splice(1,0,a,"color: inherit");var i=0,n=0;r[0].replace(/%[a-zA-Z%]/g,function(s){s!=="%%"&&(i++,s==="%c"&&(n=i))}),r.splice(n,0,a)}}function A(){return typeof console=="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function M(r){try{r==null?X.storage.removeItem("debug"):X.storage.debug=r}catch{}}function e(){var r;try{r=X.storage.debug}catch{}return!r&&typeof process<"u"&&"env"in process&&(r=process.env.DEBUG),r}X.enable(e());function t(){try{return window.localStorage}catch{}}}}),q4=Ye({"node_modules/stream-parser/index.js"(X,H){var g=X_(),x=V4()("stream-parser");H.exports=r;var A=-1,M=0,e=1,t=2;function r(l){var _=l&&typeof l._transform=="function",w=l&&typeof l._write=="function";if(!_&&!w)throw new Error("must pass a Writable or Transform stream in");x("extending Parser into stream"),l._bytes=a,l._skipBytes=i,_&&(l._passthrough=n),_?l._transform=c:l._write=s}function o(l){x("initializing parser stream"),l._parserBytesLeft=0,l._parserBuffers=[],l._parserBuffered=0,l._parserState=A,l._parserCallback=null,typeof l.push=="function"&&(l._parserOutput=l.push.bind(l)),l._parserInit=!0}function a(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(isFinite(l)&&l>0,'can only buffer a finite number of bytes > 0, got "'+l+'"'),this._parserInit||o(this),x("buffering %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=M}function i(l,_){g(!this._parserCallback,'there is already a "callback" set!'),g(l>0,'can only skip > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("skipping %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=e}function n(l,_){g(!this._parserCallback,'There is already a "callback" set!'),g(l>0,'can only pass through > 0 bytes, got "'+l+'"'),this._parserInit||o(this),x("passing through %o bytes",l),this._parserBytesLeft=l,this._parserCallback=_,this._parserState=t}function s(l,_,w){this._parserInit||o(this),x("write(%o bytes)",l.length),typeof _=="function"&&(w=_),p(this,l,null,w)}function c(l,_,w){this._parserInit||o(this),x("transform(%o bytes)",l.length),typeof _!="function"&&(_=this._parserOutput),p(this,l,_,w)}function h(l,_,w,S){return l._parserBytesLeft<=0?S(new Error("got data but not currently parsing anything")):_.length<=l._parserBytesLeft?function(){return v(l,_,w,S)}:function(){var E=_.slice(0,l._parserBytesLeft);return v(l,E,w,function(m){if(m)return S(m);if(_.length>E.length)return function(){return h(l,_.slice(E.length),w,S)}})}}function v(l,_,w,S){if(l._parserBytesLeft-=_.length,x("%o bytes left for stream piece",l._parserBytesLeft),l._parserState===M?(l._parserBuffers.push(_),l._parserBuffered+=_.length):l._parserState===t&&w(_),l._parserBytesLeft===0){var E=l._parserCallback;if(E&&l._parserState===M&&l._parserBuffers.length>1&&(_=Buffer.concat(l._parserBuffers,l._parserBuffered)),l._parserState!==M&&(_=null),l._parserCallback=null,l._parserBuffered=0,l._parserState=A,l._parserBuffers.splice(0),E){var m=[];_&&m.push(_),w&&m.push(w);var b=E.length>m.length;b&&m.push(T(S));var d=E.apply(l,m);if(!b||S===d)return S}}else return S}var p=T(h);function T(l){return function(){for(var _=l.apply(this,arguments);typeof _=="function";)_=_();return _}}}}),Mu=Ye({"node_modules/probe-image-size/lib/common.js"(X){"use strict";var H=L4().Transform,g=q4();function x(){H.call(this,{readableObjectMode:!0})}x.prototype=Object.create(H.prototype),x.prototype.constructor=x,g(x.prototype),X.ParserStream=x,X.sliceEq=function(M,e,t){for(var r=e,o=0;o<t.length;)if(M[r++]!==t[o++])return!1;return!0},X.str2arr=function(M,e){var t=[],r=0;if(e&&e==="hex")for(;r<M.length;)t.push(parseInt(M.slice(r,r+2),16)),r+=2;else for(;r<M.length;r++)t.push(M.charCodeAt(r)&255);return t},X.readUInt16LE=function(M,e){return M[e]|M[e+1]<<8},X.readUInt16BE=function(M,e){return M[e+1]|M[e]<<8},X.readUInt32LE=function(M,e){return M[e]|M[e+1]<<8|M[e+2]<<16|M[e+3]*16777216},X.readUInt32BE=function(M,e){return M[e+3]|M[e+2]<<8|M[e+1]<<16|M[e]*16777216};function A(M,e,t){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||"",this.name=this.constructor.name,this.message=M,e&&(this.code=e),t&&(this.statusCode=t)}A.prototype=Object.create(Error.prototype),A.prototype.constructor=A,X.ProbeError=A}}),H4=Ye({"node_modules/probe-image-size/lib/miaf_utils.js"(X,H){"use strict";var g=Mu().readUInt16BE,x=Mu().readUInt32BE;function A(n,s){if(n.length<4+s)return null;var c=x(n,s);return n.length<c+s||c<8?null:{boxtype:String.fromCharCode.apply(null,n.slice(s+4,s+8)),data:n.slice(s+8,s+c),end:s+c}}H.exports.unbox=A;function M(n,s){for(var c=0;;){var h=A(n,c);if(!h)break;switch(h.boxtype){case"ispe":s.sizes.push({width:x(h.data,4),height:x(h.data,8)});break;case"irot":s.transforms.push({type:"irot",value:h.data[0]&3});break;case"imir":s.transforms.push({type:"imir",value:h.data[0]&1});break}c=h.end}}function e(n,s,c){for(var h=0,v=0;v<c;v++)h=h*256+(n[s+v]||0);return h}function t(n,s){for(var c=n[4]>>4&15,h=n[4]&15,v=n[5]>>4&15,p=g(n,6),T=8,l=0;l<p;l++){var _=g(n,T);T+=2;var w=g(n,T);T+=2;var S=e(n,T,v);T+=v;var E=g(n,T);if(T+=2,w===0&&E===1){var m=e(n,T,c),b=e(n,T+c,h);s.item_loc[_]={length:b,offset:m+S}}T+=E*(c+h)}}function r(n,s){for(var c=g(n,4),h=6,v=0;v<c;v++){var p=A(n,h);if(!p)break;if(p.boxtype==="infe"){for(var T=g(p.data,4),l="",_=8;_<p.data.length&&p.data[_];_++)l+=String.fromCharCode(p.data[_]);s.item_inf[l]=T}h=p.end}}function o(n,s){for(var c=0;;){var h=A(n,c);if(!h)break;h.boxtype==="ipco"&&M(h.data,s),c=h.end}}function a(n,s){for(var c=4;;){var h=A(n,c);if(!h)break;h.boxtype==="iprp"&&o(h.data,s),h.boxtype==="iloc"&&t(h.data,s),h.boxtype==="iinf"&&r(h.data,s),c=h.end}}function i(n){var s=n.reduce(function(v,p){return v.width>p.width||v.width===p.width&&v.height>p.height?v:p}),c=n.reduce(function(v,p){return v.height>p.height||v.height===p.height&&v.width>p.width?v:p}),h;return s.width>c.height||s.width===c.height&&s.height>c.width?h=s:h=c,h}H.exports.readSizeFromMeta=function(n){var s={sizes:[],transforms:[],item_inf:{},item_loc:{}};if(a(n,s),!!s.sizes.length){var c=i(s.sizes),h=1;s.transforms.forEach(function(p){var T={1:6,2:5,3:8,4:7,5:4,6:3,7:2,8:1},l={1:4,2:3,3:2,4:1,5:6,6:5,7:8,8:7};if(p.type==="imir"&&(p.value===0?h=l[h]:(h=l[h],h=T[h],h=T[h])),p.type==="irot")for(var _=0;_<p.value;_++)h=T[h]});var v=null;return s.item_inf.Exif&&(v=s.item_loc[s.item_inf.Exif]),{width:c.width,height:c.height,orientation:s.transforms.length?h:null,variants:s.sizes,exif_location:v}}},H.exports.getMimeType=function(n){var s=String.fromCharCode.apply(null,n.slice(0,4)),c={};c[s]=!0;for(var h=8;h<n.length;h+=4)c[String.fromCharCode.apply(null,n.slice(h,h+4))]=!0;if(!(!c.mif1&&!c.msf1&&!c.miaf))return s==="avif"||s==="avis"||s==="avio"?{type:"avif",mime:"image/avif"}:s==="heic"||s==="heix"?{type:"heic",mime:"image/heic"}:s==="hevc"||s==="hevx"?{type:"heic",mime:"image/heic-sequence"}:c.avif||c.avis?{type:"avif",mime:"image/avif"}:c.heic||c.heix||c.hevc||c.hevx||c.heis?c.msf1?{type:"heif",mime:"image/heif-sequence"}:{type:"heif",mime:"image/heif"}:{type:"avif",mime:"image/avif"}}}}),g3=Ye({"node_modules/probe-image-size/lib/exif_utils.js"(X,H){"use strict";function g(M,e){var t=new Error(M);return t.code=e,t}function x(M){try{return decodeURIComponent(escape(M))}catch{return M}}function A(M,e,t){this.input=M.subarray(e,t),this.start=e;var r=String.fromCharCode.apply(null,this.input.subarray(0,4));if(r!=="II*\0"&&r!=="MM\0*")throw g("invalid TIFF signature","EBADDATA");this.big_endian=r[0]==="M"}A.prototype.each=function(M){this.aborted=!1;var e=this.read_uint32(4);for(this.ifds_to_read=[{id:0,offset:e}];this.ifds_to_read.length>0&&!this.aborted;){var t=this.ifds_to_read.shift();t.offset&&this.scan_ifd(t.id,t.offset,M)}},A.prototype.read_uint16=function(M){var e=this.input;if(M+2>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*256+e[M+1]:e[M]+e[M+1]*256},A.prototype.read_uint32=function(M){var e=this.input;if(M+4>e.length)throw g("unexpected EOF","EBADDATA");return this.big_endian?e[M]*16777216+e[M+1]*65536+e[M+2]*256+e[M+3]:e[M]+e[M+1]*256+e[M+2]*65536+e[M+3]*16777216},A.prototype.is_subifd_link=function(M,e){return M===0&&e===34665||M===0&&e===34853||M===34665&&e===40965},A.prototype.exif_format_length=function(M){switch(M){case 1:case 2:case 6:case 7:return 1;case 3:case 8:return 2;case 4:case 9:case 11:return 4;case 5:case 10:case 12:return 8;default:return 0}},A.prototype.exif_format_read=function(M,e){var t;switch(M){case 1:case 2:return t=this.input[e],t;case 6:return t=this.input[e],t|(t&128)*33554430;case 3:return t=this.read_uint16(e),t;case 8:return t=this.read_uint16(e),t|(t&32768)*131070;case 4:return t=this.read_uint32(e),t;case 9:return t=this.read_uint32(e),t|0;case 5:case 10:case 11:case 12:return null;case 7:return null;default:return null}},A.prototype.scan_ifd=function(M,e,t){var r=this.read_uint16(e);e+=2;for(var o=0;o<r;o++){var a=this.read_uint16(e),i=this.read_uint16(e+2),n=this.read_uint32(e+4),s=this.exif_format_length(i),c=n*s,h=c<=4?e+8:this.read_uint32(e+8),v=!1;if(h+c>this.input.length)throw g("unexpected EOF","EBADDATA");for(var p=[],T=h,l=0;l<n;l++,T+=s){var _=this.exif_format_read(i,T);if(_===null){p=null;break}p.push(_)}Array.isArray(p)&&i===2&&(p=x(String.fromCharCode.apply(null,p)),p&&p[p.length-1]==="\0"&&(p=p.slice(0,-1))),this.is_subifd_link(M,a)&&Array.isArray(p)&&Number.isInteger(p[0])&&p[0]>0&&(this.ifds_to_read.push({id:a,offset:p[0]}),v=!0);var w={is_big_endian:this.big_endian,ifd:M,tag:a,format:i,count:n,entry_offset:e+this.start,data_length:c,data_offset:h+this.start,value:p,is_subifd_link:v};if(t(w)===!1){this.aborted=!0;return}e+=12}M===0&&this.ifds_to_read.push({id:1,offset:this.read_uint32(e)})},H.exports.ExifParser=A,H.exports.get_orientation=function(M){var e=0;try{return new A(M,0,M.length).each(function(t){if(t.ifd===0&&t.tag===274&&Array.isArray(t.value))return e=t.value[0],!1}),e}catch{return-1}}}}),G4=Ye({"node_modules/probe-image-size/lib/parse_sync/avif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=H4(),e=g3(),t=g("ftyp");H.exports=function(r){if(x(r,4,t)){var o=M.unbox(r,0);if(o){var a=M.getMimeType(o.data);if(a){for(var i,n=o.end;;){var s=M.unbox(r,n);if(!s)break;if(n=s.end,s.boxtype==="mdat")return;if(s.boxtype==="meta"){i=s.data;break}}if(i){var c=M.readSizeFromMeta(i);if(c){var h={width:c.width,height:c.height,type:a.type,mime:a.mime,wUnits:"px",hUnits:"px"};if(c.variants.length>1&&(h.variants=c.variants),c.orientation&&(h.orientation=c.orientation),c.exif_location&&c.exif_location.offset+c.exif_location.length<=r.length){var v=A(r,c.exif_location.offset),p=r.slice(c.exif_location.offset+v+4,c.exif_location.offset+c.exif_location.length),T=e.get_orientation(p);T>0&&(h.orientation=T)}return h}}}}}}}}),W4=Ye({"node_modules/probe-image-size/lib/parse_sync/bmp.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("BM");H.exports=function(e){if(!(e.length<26)&&x(e,0,M))return{width:A(e,18),height:A(e,22),type:"bmp",mime:"image/bmp",wUnits:"px",hUnits:"px"}}}}),Z4=Ye({"node_modules/probe-image-size/lib/parse_sync/gif.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=g("GIF87a"),e=g("GIF89a");H.exports=function(t){if(!(t.length<10)&&!(!x(t,0,M)&&!x(t,0,e)))return{width:A(t,6),height:A(t,8),type:"gif",mime:"image/gif",wUnits:"px",hUnits:"px"}}}}),X4=Ye({"node_modules/probe-image-size/lib/parse_sync/ico.js"(X,H){"use strict";var g=Mu().readUInt16LE,x=0,A=1,M=16;H.exports=function(e){var t=g(e,0),r=g(e,2),o=g(e,4);if(!(t!==x||r!==A||!o)){for(var a=[],i={width:0,height:0},n=0;n<o;n++){var s=e[6+M*n]||256,c=e[6+M*n+1]||256,h={width:s,height:c};a.push(h),(s>i.width||c>i.height)&&(i=h)}return{width:i.width,height:i.height,variants:a,type:"ico",mime:"image/x-icon",wUnits:"px",hUnits:"px"}}}}}),Y4=Ye({"node_modules/probe-image-size/lib/parse_sync/jpeg.js"(X,H){"use strict";var g=Mu().readUInt16BE,x=Mu().str2arr,A=Mu().sliceEq,M=g3(),e=x("Exif\0\0");H.exports=function(t){if(!(t.length<2)&&!(t[0]!==255||t[1]!==216||t[2]!==255))for(var r=2;;){for(;;){if(t.length-r<2)return;if(t[r++]===255)break}for(var o=t[r++],a;o===255;)o=t[r++];if(208<=o&&o<=217||o===1)a=0;else if(192<=o&&o<=254){if(t.length-r<2)return;a=g(t,r)-2,r+=2}else return;if(o===217||o===218)return;var i;if(o===225&&a>=10&&A(t,r,e)&&(i=M.get_orientation(t.slice(r+6,r+a))),a>=5&&192<=o&&o<=207&&o!==196&&o!==200&&o!==204){if(t.length-r<a)return;var n={width:g(t,r+3),height:g(t,r+1),type:"jpg",mime:"image/jpeg",wUnits:"px",hUnits:"px"};return i>0&&(n.orientation=i),n}r+=a}}}}),K4=Ye({"node_modules/probe-image-size/lib/parse_sync/png.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g(`\x89PNG\r
+
+`),e=g("IHDR");H.exports=function(t){if(!(t.length<24)&&x(t,0,M)&&x(t,12,e))return{width:A(t,16),height:A(t,20),type:"png",mime:"image/png",wUnits:"px",hUnits:"px"}}}}),J4=Ye({"node_modules/probe-image-size/lib/parse_sync/psd.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt32BE,M=g("8BPS\0");H.exports=function(e){if(!(e.length<22)&&x(e,0,M))return{width:A(e,18),height:A(e,14),type:"psd",mime:"image/vnd.adobe.photoshop",wUnits:"px",hUnits:"px"}}}}),$4=Ye({"node_modules/probe-image-size/lib/parse_sync/svg.js"(X,H){"use strict";function g(s){return s===32||s===9||s===13||s===10}function x(s){return typeof s=="number"&&isFinite(s)&&s>0}function A(s){var c=0,h=s.length;for(s[0]===239&&s[1]===187&&s[2]===191&&(c=3);c<h&&g(s[c]);)c++;return c===h?!1:s[c]===60}var M=/<[-_.:a-zA-Z0-9][^>]*>/,e=/^<([-_.:a-zA-Z0-9]+:)?svg\s/,t=/[^-]\bwidth="([^%]+?)"|[^-]\bwidth='([^%]+?)'/,r=/\bheight="([^%]+?)"|\bheight='([^%]+?)'/,o=/\bview[bB]ox="(.+?)"|\bview[bB]ox='(.+?)'/,a=/in$|mm$|cm$|pt$|pc$|px$|em$|ex$/;function i(s){var c=s.match(t),h=s.match(r),v=s.match(o);return{width:c&&(c[1]||c[2]),height:h&&(h[1]||h[2]),viewbox:v&&(v[1]||v[2])}}function n(s){return a.test(s)?s.match(a)[0]:"px"}H.exports=function(s){if(A(s)){for(var c="",h=0;h<s.length;h++)c+=String.fromCharCode(s[h]);var v=(c.match(M)||[""])[0];if(e.test(v)){var p=i(v),T=parseFloat(p.width),l=parseFloat(p.height);if(p.width&&p.height)return!x(T)||!x(l)?void 0:{width:T,height:l,type:"svg",mime:"image/svg+xml",wUnits:n(p.width),hUnits:n(p.height)};var _=(p.viewbox||"").split(" "),w={width:_[2],height:_[3]},S=parseFloat(w.width),E=parseFloat(w.height);if(!(!x(S)||!x(E))&&n(w.width)===n(w.height)){var m=S/E;return p.width?x(T)?{width:T,height:T/m,type:"svg",mime:"image/svg+xml",wUnits:n(p.width),hUnits:n(p.width)}:void 0:p.height?x(l)?{width:l*m,height:l,type:"svg",mime:"image/svg+xml",wUnits:n(p.height),hUnits:n(p.height)}:void 0:{width:S,height:E,type:"svg",mime:"image/svg+xml",wUnits:n(w.width),hUnits:n(w.height)}}}}}}}),Q4=Ye({"node_modules/probe-image-size/lib/parse_sync/tiff.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=Mu().readUInt16BE,e=Mu().readUInt32LE,t=Mu().readUInt32BE,r=g("II*\0"),o=g("MM\0*");function a(s,c,h){return h?M(s,c):A(s,c)}function i(s,c,h){return h?t(s,c):e(s,c)}function n(s,c,h){var v=a(s,c+2,h),p=i(s,c+4,h);return p!==1||v!==3&&v!==4?null:v===3?a(s,c+8,h):i(s,c+8,h)}H.exports=function(s){if(!(s.length<8)&&!(!x(s,0,r)&&!x(s,0,o))){var c=s[0]===77,h=i(s,4,c)-8;if(!(h<0)){var v=h+8;if(!(s.length-v<2)){var p=a(s,v+0,c)*12;if(!(p<=0)&&(v+=2,!(s.length-v<p))){var T,l,_,w;for(T=0;T<p;T+=12)w=a(s,v+T,c),w===256?l=n(s,v+T,c):w===257&&(_=n(s,v+T,c));if(l&&_)return{width:l,height:_,type:"tiff",mime:"image/tiff",wUnits:"px",hUnits:"px"}}}}}}}}),e9=Ye({"node_modules/probe-image-size/lib/parse_sync/webp.js"(X,H){"use strict";var g=Mu().str2arr,x=Mu().sliceEq,A=Mu().readUInt16LE,M=Mu().readUInt32LE,e=g3(),t=g("RIFF"),r=g("WEBP");function o(n,s){if(!(n[s+3]!==157||n[s+4]!==1||n[s+5]!==42))return{width:A(n,s+6)&16383,height:A(n,s+8)&16383,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}function a(n,s){if(n[s]===47){var c=M(n,s+1);return{width:(c&16383)+1,height:(c>>14&16383)+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}}function i(n,s){return{width:(n[s+6]<<16|n[s+5]<<8|n[s+4])+1,height:(n[s+9]<<s|n[s+8]<<8|n[s+7])+1,type:"webp",mime:"image/webp",wUnits:"px",hUnits:"px"}}H.exports=function(n){if(!(n.length<16)&&!(!x(n,0,t)&&!x(n,8,r))){var s=12,c=null,h=0,v=M(n,4)+8;if(!(v>n.length)){for(;s+8<v;){if(n[s]===0){s++;continue}var p=String.fromCharCode.apply(null,n.slice(s,s+4)),T=M(n,s+4);p==="VP8 "&&T>=10?c=c||o(n,s+8):p==="VP8L"&&T>=9?c=c||a(n,s+8):p==="VP8X"&&T>=10?c=c||i(n,s+8):p==="EXIF"&&(h=e.get_orientation(n.slice(s+8,s+8+T)),s=1/0),s+=8+T}if(c)return h>0&&(c.orientation=h),c}}}}}),t9=Ye({"node_modules/probe-image-size/lib/parsers_sync.js"(X,H){"use strict";H.exports={avif:G4(),bmp:W4(),gif:Z4(),ico:X4(),jpeg:Y4(),png:K4(),psd:J4(),svg:$4(),tiff:Q4(),webp:e9()}}}),r9=Ye({"node_modules/probe-image-size/sync.js"(X,H){"use strict";var g=t9();function x(A){for(var M=Object.keys(g),e=0;e<M.length;e++){var t=g[M[e]](A);if(t)return t}return null}H.exports=function(M){return x(M)},H.exports.parsers=g}}),a9=Ye({"src/traces/image/helpers.js"(X){"use strict";var H=r9(),g=Xv().IMAGE_URL_PREFIX,x=t0().Buffer;X.getImageSize=function(A){var M=A.replace(g,""),e=new x(M,"base64");return H(e)}}}),i9=Ye({"src/traces/image/calc.js"(X,H){"use strict";var g=ta(),x=d1(),A=jo(),M=Co(),e=ta().maxRowLength,t=a9().getImageSize;H.exports=function(n,s){var c,h;if(s._hasZ)c=s.z.length,h=e(s.z);else if(s._hasSource){var v=t(s.source);c=v.height,h=v.width}var p=M.getFromId(n,s.xaxis||"x"),T=M.getFromId(n,s.yaxis||"y"),l=p.d2c(s.x0)-s.dx/2,_=T.d2c(s.y0)-s.dy/2,w,S=[l,l+h*s.dx],E=[_,_+c*s.dy];if(p&&p.type==="log")for(w=0;w<h;w++)S.push(l+w*s.dx);if(T&&T.type==="log")for(w=0;w<c;w++)E.push(_+w*s.dy);s._extremes[p._id]=M.findExtremes(p,S),s._extremes[T._id]=M.findExtremes(T,E),s._scaler=a(s);var m={x0:l,y0:_,z:s.z,w:h,h:c};return[m]};function r(i,n,s,c){return function(h){return g.constrain((h-i)*n,s,c)}}function o(i,n){return function(s){return g.constrain(s,i,n)}}function a(i){var n=x.colormodel[i.colormodel],s=n.colormodel||i.colormodel,c=s.length;i._sArray=[];for(var h=0;h<c;h++)n.min[h]!==i.zmin[h]||n.max[h]!==i.zmax[h]?i._sArray.push(r(i.zmin[h],(n.max[h]-n.min[h])/(i.zmax[h]-i.zmin[h]),n.min[h],n.max[h])):i._sArray.push(o(n.min[h],n.max[h]));return function(v){for(var p=v.slice(0,c),T=0;T<c;T++){var l=p[T];if(!A(l))return!1;p[T]=i._sArray[T](l)}return p}}}}),n9=Ye({"src/traces/image/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.strTranslate,M=vd(),e=d1(),t=oM(),r=$2().STYLE;H.exports=function(a,i,n,s){var c=i.xaxis,h=i.yaxis,v=!a._context._exportedPlot&&t();x.makeTraceGroups(s,n,"im").each(function(p){var T=g.select(this),l=p[0],_=l.trace,w=(_.zsmooth==="fast"||_.zsmooth===!1&&v)&&!_._hasZ&&_._hasSource&&c.type==="linear"&&h.type==="linear";_._realImage=w;var S=l.z,E=l.x0,m=l.y0,b=l.w,d=l.h,u=_.dx,y=_.dy,f,P,L,z,F,B;for(B=0;f===void 0&&B<b;)f=c.c2p(E+B*u),B++;for(B=b;P===void 0&&B>0;)P=c.c2p(E+B*u),B--;for(B=0;z===void 0&&B<d;)z=h.c2p(m+B*y),B++;for(B=d;F===void 0&&B>0;)F=h.c2p(m+B*y),B--;if(P<f&&(L=P,P=f,f=L),F<z&&(L=z,z=F,F=L),!w){var O=.5;f=Math.max(-O*c._length,f),P=Math.min((1+O)*c._length,P),z=Math.max(-O*h._length,z),F=Math.min((1+O)*h._length,F)}var I=Math.round(P-f),N=Math.round(F-z),U=I<=0||N<=0;if(U){var W=T.selectAll("image").data([]);W.exit().remove();return}function Q(j){var ee=document.createElement("canvas");ee.width=I,ee.height=N;var ie=ee.getContext("2d",{willReadFrequently:!0}),fe=function(ge){return x.constrain(Math.round(c.c2p(E+ge*u)-f),0,I)},be=function(ge){return x.constrain(Math.round(h.c2p(m+ge*y)-z),0,N)},Ae=e.colormodel[_.colormodel],Be=Ae.colormodel||_.colormodel,Ie=Ae.fmt,Ze;for(B=0;B<l.w;B++){var at=fe(B),it=fe(B+1);if(!(it===at||isNaN(it)||isNaN(at)))for(var et=0;et<l.h;et++){var lt=be(et),Me=be(et+1);Me===lt||isNaN(Me)||isNaN(lt)||!j(B,et)||(Ze=_._scaler(j(B,et)),Ze?ie.fillStyle=Be+"("+Ie(Ze).join(",")+")":ie.fillStyle="rgba(0,0,0,0)",ie.fillRect(at,lt,it-at,Me-lt))}}return ee}var ue=T.selectAll("image").data([p]);ue.enter().append("svg:image").attr({xmlns:M.svg,preserveAspectRatio:"none"}),ue.exit().remove();var se=_.zsmooth===!1?r:"";if(w){var he=x.simpleMap(c.range,c.r2l),G=x.simpleMap(h.range,h.r2l),$=he[1]<he[0],J=G[1]>G[0];if($||J){var Z=f+I/2,re=z+N/2;se+="transform:"+A(Z+"px",re+"px")+"scale("+($?-1:1)+","+(J?-1:1)+")"+A(-Z+"px",-re+"px")+";"}}ue.attr("style",se);var ne=new Promise(function(j){if(_._hasZ)j();else if(_._hasSource)if(_._canvas&&_._canvas.el.width===b&&_._canvas.el.height===d&&_._canvas.source===_.source)j();else{var ee=document.createElement("canvas");ee.width=b,ee.height=d;var ie=ee.getContext("2d",{willReadFrequently:!0});_._image=_._image||new Image;var fe=_._image;fe.onload=function(){ie.drawImage(fe,0,0),_._canvas={el:ee,source:_.source},j()},fe.setAttribute("src",_.source)}}).then(function(){var j,ee;if(_._hasZ)ee=Q(function(be,Ae){var Be=S[Ae][be];return x.isTypedArray(Be)&&(Be=Array.from(Be)),Be}),j=ee.toDataURL("image/png");else if(_._hasSource)if(w)j=_.source;else{var ie=_._canvas.el.getContext("2d",{willReadFrequently:!0}),fe=ie.getImageData(0,0,b,d).data;ee=Q(function(be,Ae){var Be=4*(Ae*b+be);return[fe[Be],fe[Be+1],fe[Be+2],fe[Be+3]]}),j=ee.toDataURL("image/png")}ue.attr({"xlink:href":j,height:N,width:I,x:f,y:z})});a._promises.push(ne)})}}}),o9=Ye({"src/traces/image/style.js"(X,H){"use strict";var g=_n();H.exports=function(A){g.select(A).selectAll(".im image").style("opacity",function(M){return M[0].trace.opacity})}}}),s9=Ye({"src/traces/image/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=x.isArrayOrTypedArray,M=d1();H.exports=function(t,r,o){var a=t.cd[0],i=a.trace,n=t.xa,s=t.ya;if(!(g.inbox(r-a.x0,r-(a.x0+a.w*i.dx),0)>0||g.inbox(o-a.y0,o-(a.y0+a.h*i.dy),0)>0)){var c=Math.floor((r-a.x0)/i.dx),h=Math.floor(Math.abs(o-a.y0)/i.dy),v;if(i._hasZ?v=a.z[h][c]:i._hasSource&&(v=i._canvas.el.getContext("2d",{willReadFrequently:!0}).getImageData(c,h,1,1).data),!!v){var p=a.hi||i.hoverinfo,T;if(p){var l=p.split("+");l.indexOf("all")!==-1&&(l=["color"]),l.indexOf("color")!==-1&&(T=!0)}var _=M.colormodel[i.colormodel],w=_.colormodel||i.colormodel,S=w.length,E=i._scaler(v),m=_.suffix,b=[];(i.hovertemplate||T)&&(b.push("["+[E[0]+m[0],E[1]+m[1],E[2]+m[2]].join(", ")),S===4&&b.push(", "+E[3]+m[3]),b.push("]"),b=b.join(""),t.extraText=w.toUpperCase()+": "+b);var d;A(i.hovertext)&&A(i.hovertext[h])?d=i.hovertext[h][c]:A(i.text)&&A(i.text[h])&&(d=i.text[h][c]);var u=s.c2p(a.y0+(h+.5)*i.dy),y=a.x0+(c+.5)*i.dx,f=a.y0+(h+.5)*i.dy,P="["+v.slice(0,i.colormodel.length).join(", ")+"]";return[x.extendFlat(t,{index:[h,c],x0:n.c2p(a.x0+c*i.dx),x1:n.c2p(a.x0+(c+1)*i.dx),y0:u,y1:u,color:E,xVal:y,xLabelVal:y,yVal:f,yLabelVal:f,zLabelVal:P,text:d,hovertemplateLabels:{zLabel:P,colorLabel:b,"color[0]Label":E[0]+m[0],"color[1]Label":E[1]+m[1],"color[2]Label":E[2]+m[2],"color[3]Label":E[3]+m[3]}})]}}}}}),l9=Ye({"src/traces/image/event_data.js"(X,H){"use strict";H.exports=function(x,A){return"xVal"in A&&(x.x=A.xVal),"yVal"in A&&(x.y=A.yVal),A.xa&&(x.xaxis=A.xa),A.ya&&(x.yaxis=A.ya),x.color=A.color,x.colormodel=A.trace.colormodel,x.z||(x.z=A.color),x}}}),u9=Ye({"src/traces/image/index.js"(X,H){"use strict";H.exports={attributes:IM(),supplyDefaults:i4(),calc:i9(),plot:n9(),style:o9(),hoverPoints:s9(),eventData:l9(),moduleType:"trace",name:"image",basePlotModule:Pf(),categories:["cartesian","svg","2dMap","noSortingByValue"],animatable:!1,meta:{}}}}),c9=Ye({"lib/image.js"(X,H){"use strict";H.exports=u9()}}),i0=Ye({"src/traces/pie/attributes.js"(X,H){"use strict";var g=Pl(),x=Wu().attributes,A=Au(),M=Gf(),e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Oo().extendFlat,o=Uh().pattern,a=A({editType:"plot",arrayOk:!0,colorEditType:"plot"});H.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:M.defaultLine,arrayOk:!0,editType:"style"},width:{valType:"number",min:0,dflt:0,arrayOk:!0,editType:"style"},editType:"calc"},pattern:o,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:r({},g.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:e({},{keys:["label","color","value","percent","text"]}),texttemplate:t({editType:"plot"},{keys:["label","color","value","percent","text"]}),textposition:{valType:"enumerated",values:["inside","outside","auto","none"],dflt:"auto",arrayOk:!0,editType:"plot"},textfont:r({},a,{}),insidetextorientation:{valType:"enumerated",values:["horizontal","radial","tangential","auto"],dflt:"auto",editType:"plot"},insidetextfont:r({},a,{}),outsidetextfont:r({},a,{}),automargin:{valType:"boolean",dflt:!1,editType:"plot"},title:{text:{valType:"string",dflt:"",editType:"plot"},font:r({},a,{}),position:{valType:"enumerated",values:["top left","top center","top right","middle center","bottom left","bottom center","bottom right"],editType:"plot"},editType:"plot"},domain:x({name:"pie",trace:!0,editType:"calc"}),hole:{valType:"number",min:0,max:1,dflt:0,editType:"calc"},sort:{valType:"boolean",dflt:!0,editType:"calc"},direction:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"counterclockwise",editType:"calc"},rotation:{valType:"angle",dflt:0,editType:"calc"},pull:{valType:"number",min:0,max:1,dflt:0,arrayOk:!0,editType:"calc"}}}}),n0=Ye({"src/traces/pie/defaults.js"(X,H){"use strict";var g=jo(),x=ta(),A=i0(),M=Wu().defaults,e=gd().handleText,t=ta().coercePattern;function r(i,n){var s=x.isArrayOrTypedArray(i),c=x.isArrayOrTypedArray(n),h=Math.min(s?i.length:1/0,c?n.length:1/0);if(isFinite(h)||(h=0),h&&c){for(var v,p=0;p<h;p++){var T=n[p];if(g(T)&&T>0){v=!0;break}}v||(h=0)}return{hasLabels:s,hasValues:c,len:h}}function o(i,n,s,c,h){var v=c("marker.line.width");v&&c("marker.line.color",h?void 0:s.paper_bgcolor);var p=c("marker.colors");t(c,"marker.pattern",p),i.marker&&!n.marker.pattern.fgcolor&&(n.marker.pattern.fgcolor=i.marker.colors),n.marker.pattern.bgcolor||(n.marker.pattern.bgcolor=s.paper_bgcolor)}function a(i,n,s,c){function h(f,P){return x.coerce(i,n,A,f,P)}var v=h("labels"),p=h("values"),T=r(v,p),l=T.len;if(n._hasLabels=T.hasLabels,n._hasValues=T.hasValues,!n._hasLabels&&n._hasValues&&(h("label0"),h("dlabel")),!l){n.visible=!1;return}n._length=l,o(i,n,c,h,!0),h("scalegroup");var _=h("text"),w=h("texttemplate"),S;if(w||(S=h("textinfo",x.isArrayOrTypedArray(_)?"text+percent":"percent")),h("hovertext"),h("hovertemplate"),w||S&&S!=="none"){var E=h("textposition");e(i,n,c,h,E,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1});var m=Array.isArray(E)||E==="auto",b=m||E==="outside";b&&h("automargin"),(E==="inside"||E==="auto"||Array.isArray(E))&&h("insidetextorientation")}else S==="none"&&h("textposition","none");M(n,c,h);var d=h("hole"),u=h("title.text");if(u){var y=h("title.position",d?"middle center":"top center");!d&&y==="middle center"&&(n.title.position="top center"),x.coerceFont(h,"title.font",c.font)}h("sort"),h("direction"),h("rotation"),h("pull")}H.exports={handleLabelsAndValues:r,handleMarkerDefaults:o,supplyDefaults:a}}}),y3=Ye({"src/traces/pie/layout_attributes.js"(X,H){"use strict";H.exports={hiddenlabels:{valType:"data_array",editType:"calc"},piecolorway:{valType:"colorlist",editType:"calc"},extendpiecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),f9=Ye({"src/traces/pie/layout_defaults.js"(X,H){"use strict";var g=ta(),x=y3();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("piecolorway",e.colorway),t("extendpiecolors")}}}),y1=Ye({"src/traces/pie/calc.js"(X,H){"use strict";var g=jo(),x=bh(),A=Fn(),M={};function e(a,i){var n=[],s=a._fullLayout,c=s.hiddenlabels||[],h=i.labels,v=i.marker.colors||[],p=i.values,T=i._length,l=i._hasValues&&T,_,w;if(i.dlabel)for(h=new Array(T),_=0;_<T;_++)h[_]=String(i.label0+_*i.dlabel);var S={},E=t(s["_"+i.type+"colormap"]),m=0,b=!1;for(_=0;_<T;_++){var d,u,y;if(l){if(d=p[_],!g(d))continue;d=+d}else d=1;u=h[_],(u===void 0||u==="")&&(u=_),u=String(u);var f=S[u];f===void 0?(S[u]=n.length,y=c.indexOf(u)!==-1,y||(m+=d),n.push({v:d,label:u,color:E(v[_],u),i:_,pts:[_],hidden:y})):(b=!0,w=n[f],w.v+=d,w.pts.push(_),w.hidden||(m+=d),w.color===!1&&v[_]&&(w.color=E(v[_],u)))}n=n.filter(function(L){return L.v>=0});var P=i.type==="funnelarea"?b:i.sort;return P&&n.sort(function(L,z){return z.v-L.v}),n[0]&&(n[0].vTotal=m),n}function t(a){return function(n,s){return!n||(n=x(n),!n.isValid())?!1:(n=A.addOpacity(n,n.getAlpha()),a[s]||(a[s]=n),n)}}function r(a,i){var n=(i||{}).type;n||(n="pie");var s=a._fullLayout,c=a.calcdata,h=s[n+"colorway"],v=s["_"+n+"colormap"];s["extend"+n+"colors"]&&(h=o(h,M));for(var p=0,T=0;T<c.length;T++){var l=c[T],_=l[0].trace.type;if(_===n)for(var w=0;w<l.length;w++){var S=l[w];S.color===!1&&(v[S.label]?S.color=v[S.label]:(v[S.label]=S.color=h[p%h.length],p++))}}}function o(a,i){var n,s=JSON.stringify(a),c=i[s];if(!c){for(c=a.slice(),n=0;n<a.length;n++)c.push(x(a[n]).lighten(20).toHexString());for(n=0;n<a.length;n++)c.push(x(a[n]).darken(20).toHexString());i[s]=c}return c}H.exports={calc:e,crossTraceCalc:r,makePullColorFn:t,generateExtendedColors:o}}}),h9=Ye({"src/traces/pie/event_data.js"(X,H){"use strict";var g=Qp().appendArrayMultiPointValues;H.exports=function(A,M){var e={curveNumber:M.index,pointNumbers:A.pts,data:M._input,fullData:M,label:A.label,color:A.color,value:A.v,percent:A.percent,text:A.text,bbox:A.bbox,v:A.v};return A.pts.length===1&&(e.pointNumber=e.i=A.pts[0]),g(e,M,A.pts),M.type==="funnelarea"&&(delete e.v,delete e.i),e}}}),_3=Ye({"src/traces/pie/plot.js"(X,H){"use strict";var g=_n(),x=Gu(),A=Lc(),M=Fn(),e=Bo(),t=ta(),r=t.strScale,o=t.strTranslate,a=jl(),i=wp(),n=i.recordMinTextSize,s=i.clearMinTextSize,c=Qg().TEXTPAD,h=eg(),v=h9(),p=ta().isValidTextValue;function T($,J){var Z=$._context.staticPlot,re=$._fullLayout,ne=re._size;s("pie",re),E(J,$),W(J,ne);var j=t.makeTraceGroups(re._pielayer,J,"trace").each(function(ee){var ie=g.select(this),fe=ee[0],be=fe.trace;ue(ee),ie.attr("stroke-linejoin","round"),ie.each(function(){var Ae=g.select(this).selectAll("g.slice").data(ee);Ae.enter().append("g").classed("slice",!0),Ae.exit().remove();var Be=[[[],[]],[[],[]]],Ie=!1;Ae.each(function(ce,ze){if(ce.hidden){g.select(this).selectAll("path,g").remove();return}ce.pointNumber=ce.i,ce.curveNumber=be.index,Be[ce.pxmid[1]<0?0:1][ce.pxmid[0]<0?0:1].push(ce);var tt=fe.cx,nt=fe.cy,Qe=g.select(this),Ct=Qe.selectAll("path.surface").data([ce]);if(Ct.enter().append("path").classed("surface",!0).style({"pointer-events":Z?"none":"all"}),Qe.call(_,$,ee),be.pull){var St=+h.castOption(be.pull,ce.pts)||0;St>0&&(tt+=St*ce.pxmid[0],nt+=St*ce.pxmid[1])}ce.cxFinal=tt,ce.cyFinal=nt;function Ot(yt,Fe,Ke,Ne){var Ee=Ne*(Fe[0]-yt[0]),Ve=Ne*(Fe[1]-yt[1]);return"a"+Ne*fe.r+","+Ne*fe.r+" 0 "+ce.largeArc+(Ke?" 1 ":" 0 ")+Ee+","+Ve}var jt=be.hole;if(ce.v===fe.vTotal){var ur="M"+(tt+ce.px0[0])+","+(nt+ce.px0[1])+Ot(ce.px0,ce.pxmid,!0,1)+Ot(ce.pxmid,ce.px0,!0,1)+"Z";jt?Ct.attr("d","M"+(tt+jt*ce.px0[0])+","+(nt+jt*ce.px0[1])+Ot(ce.px0,ce.pxmid,!1,jt)+Ot(ce.pxmid,ce.px0,!1,jt)+"Z"+ur):Ct.attr("d",ur)}else{var ar=Ot(ce.px0,ce.px1,!0,1);if(jt){var Cr=1-jt;Ct.attr("d","M"+(tt+jt*ce.px1[0])+","+(nt+jt*ce.px1[1])+Ot(ce.px1,ce.px0,!1,jt)+"l"+Cr*ce.px0[0]+","+Cr*ce.px0[1]+ar+"Z")}else Ct.attr("d","M"+tt+","+nt+"l"+ce.px0[0]+","+ce.px0[1]+ar+"Z")}he($,ce,fe);var vr=h.castOption(be.textposition,ce.pts),_r=Qe.selectAll("g.slicetext").data(ce.text&&vr!=="none"?[0]:[]);_r.enter().append("g").classed("slicetext",!0),_r.exit().remove(),_r.each(function(){var yt=t.ensureSingle(g.select(this),"text","",function(Le){Le.attr("data-notex",1)}),Fe=t.ensureUniformFontSize($,vr==="outside"?w(be,ce,re.font):S(be,ce,re.font));yt.text(ce.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(e.font,Fe).call(a.convertToTspans,$);var Ke=e.bBox(yt.node()),Ne;if(vr==="outside")Ne=z(Ke,ce);else if(Ne=m(Ke,ce,fe),vr==="auto"&&Ne.scale<1){var Ee=t.ensureUniformFontSize($,be.outsidetextfont);yt.call(e.font,Ee),Ke=e.bBox(yt.node()),Ne=z(Ke,ce)}var Ve=Ne.textPosAngle,ke=Ve===void 0?ce.pxmid:se(fe.r,Ve);if(Ne.targetX=tt+ke[0]*Ne.rCenter+(Ne.x||0),Ne.targetY=nt+ke[1]*Ne.rCenter+(Ne.y||0),G(Ne,Ke),Ne.outside){var Te=Ne.targetY;ce.yLabelMin=Te-Ke.height/2,ce.yLabelMid=Te,ce.yLabelMax=Te+Ke.height/2,ce.labelExtraX=0,ce.labelExtraY=0,Ie=!0}Ne.fontSize=Fe.size,n(be.type,Ne,re),ee[ze].transform=Ne,t.setTransormAndDisplay(yt,Ne)})});var Ze=g.select(this).selectAll("g.titletext").data(be.title.text?[0]:[]);if(Ze.enter().append("g").classed("titletext",!0),Ze.exit().remove(),Ze.each(function(){var ce=t.ensureSingle(g.select(this),"text","",function(nt){nt.attr("data-notex",1)}),ze=be.title.text;be._meta&&(ze=t.templateString(ze,be._meta)),ce.text(ze).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(e.font,be.title.font).call(a.convertToTspans,$);var tt;be.title.position==="middle center"?tt=F(fe):tt=B(fe,ne),ce.attr("transform",o(tt.x,tt.y)+r(Math.min(1,tt.scale))+o(tt.tx,tt.ty))}),Ie&&U(Be,be),l(Ae,be),Ie&&be.automargin){var at=e.bBox(ie.node()),it=be.domain,et=ne.w*(it.x[1]-it.x[0]),lt=ne.h*(it.y[1]-it.y[0]),Me=(.5*et-fe.r)/ne.w,ge=(.5*lt-fe.r)/ne.h;x.autoMargin($,"pie."+be.uid+".automargin",{xl:it.x[0]-Me,xr:it.x[1]+Me,yb:it.y[0]-ge,yt:it.y[1]+ge,l:Math.max(fe.cx-fe.r-at.left,0),r:Math.max(at.right-(fe.cx+fe.r),0),b:Math.max(at.bottom-(fe.cy+fe.r),0),t:Math.max(fe.cy-fe.r-at.top,0),pad:5})}})});setTimeout(function(){j.selectAll("tspan").each(function(){var ee=g.select(this);ee.attr("dy")&&ee.attr("dy",ee.attr("dy"))})},0)}function l($,J){$.each(function(Z){var re=g.select(this);if(!Z.labelExtraX&&!Z.labelExtraY){re.select("path.textline").remove();return}var ne=re.select("g.slicetext text");Z.transform.targetX+=Z.labelExtraX,Z.transform.targetY+=Z.labelExtraY,t.setTransormAndDisplay(ne,Z.transform);var j=Z.cxFinal+Z.pxmid[0],ee=Z.cyFinal+Z.pxmid[1],ie="M"+j+","+ee,fe=(Z.yLabelMax-Z.yLabelMin)*(Z.pxmid[0]<0?-1:1)/4;if(Z.labelExtraX){var be=Z.labelExtraX*Z.pxmid[1]/Z.pxmid[0],Ae=Z.yLabelMid+Z.labelExtraY-(Z.cyFinal+Z.pxmid[1]);Math.abs(be)>Math.abs(Ae)?ie+="l"+Ae*Z.pxmid[0]/Z.pxmid[1]+","+Ae+"H"+(j+Z.labelExtraX+fe):ie+="l"+Z.labelExtraX+","+be+"v"+(Ae-be)+"h"+fe}else ie+="V"+(Z.yLabelMid+Z.labelExtraY)+"h"+fe;t.ensureSingle(re,"path","textline").call(M.stroke,J.outsidetextfont.color).attr({"stroke-width":Math.min(2,J.outsidetextfont.size/8),d:ie,fill:"none"})})}function _($,J,Z){var re=Z[0],ne=re.cx,j=re.cy,ee=re.trace,ie=ee.type==="funnelarea";"_hasHoverLabel"in ee||(ee._hasHoverLabel=!1),"_hasHoverEvent"in ee||(ee._hasHoverEvent=!1),$.on("mouseover",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];if(!(J._dragging||be.hovermode===!1)){var Be=Ae.hoverinfo;if(Array.isArray(Be)&&(Be=A.castHoverinfo({hoverinfo:[h.castOption(Be,fe.pts)],_module:ee._module},be,0)),Be==="all"&&(Be="label+text+value+percent+name"),Ae.hovertemplate||Be!=="none"&&Be!=="skip"&&Be){var Ie=fe.rInscribed||0,Ze=ne+fe.pxmid[0]*(1-Ie),at=j+fe.pxmid[1]*(1-Ie),it=be.separators,et=[];if(Be&&Be.indexOf("label")!==-1&&et.push(fe.label),fe.text=h.castOption(Ae.hovertext||Ae.text,fe.pts),Be&&Be.indexOf("text")!==-1){var lt=fe.text;t.isValidTextValue(lt)&&et.push(lt)}fe.value=fe.v,fe.valueLabel=h.formatPieValue(fe.v,it),Be&&Be.indexOf("value")!==-1&&et.push(fe.valueLabel),fe.percent=fe.v/re.vTotal,fe.percentLabel=h.formatPiePercent(fe.percent,it),Be&&Be.indexOf("percent")!==-1&&et.push(fe.percentLabel);var Me=Ae.hoverlabel,ge=Me.font,ce=[];A.loneHover({trace:ee,x0:Ze-Ie*re.r,x1:Ze+Ie*re.r,y:at,_x0:ie?ne+fe.TL[0]:Ze-Ie*re.r,_x1:ie?ne+fe.TR[0]:Ze+Ie*re.r,_y0:ie?j+fe.TL[1]:at-Ie*re.r,_y1:ie?j+fe.BL[1]:at+Ie*re.r,text:et.join("<br>"),name:Ae.hovertemplate||Be.indexOf("name")!==-1?Ae.name:void 0,idealAlign:fe.pxmid[0]<0?"left":"right",color:h.castOption(Me.bgcolor,fe.pts)||fe.color,borderColor:h.castOption(Me.bordercolor,fe.pts),fontFamily:h.castOption(ge.family,fe.pts),fontSize:h.castOption(ge.size,fe.pts),fontColor:h.castOption(ge.color,fe.pts),nameLength:h.castOption(Me.namelength,fe.pts),textAlign:h.castOption(Me.align,fe.pts),hovertemplate:h.castOption(Ae.hovertemplate,fe.pts),hovertemplateLabels:fe,eventData:[v(fe,Ae)]},{container:be._hoverlayer.node(),outerContainer:be._paper.node(),gd:J,inOut_bbox:ce}),fe.bbox=ce[0],ee._hasHoverLabel=!0}ee._hasHoverEvent=!0,J.emit("plotly_hover",{points:[v(fe,Ae)],event:g.event})}}),$.on("mouseout",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index],Be=g.select(this).datum();ee._hasHoverEvent&&(fe.originalEvent=g.event,J.emit("plotly_unhover",{points:[v(Be,Ae)],event:g.event}),ee._hasHoverEvent=!1),ee._hasHoverLabel&&(A.loneUnhover(be._hoverlayer.node()),ee._hasHoverLabel=!1)}),$.on("click",function(fe){var be=J._fullLayout,Ae=J._fullData[ee.index];J._dragging||be.hovermode===!1||(J._hoverdata=[v(fe,Ae)],A.click(J,g.event))})}function w($,J,Z){var re=h.castOption($.outsidetextfont.color,J.pts)||h.castOption($.textfont.color,J.pts)||Z.color,ne=h.castOption($.outsidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.outsidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.outsidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.outsidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.outsidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.outsidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.outsidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.outsidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re,family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function S($,J,Z){var re=h.castOption($.insidetextfont.color,J.pts);!re&&$._input.textfont&&(re=h.castOption($._input.textfont.color,J.pts));var ne=h.castOption($.insidetextfont.family,J.pts)||h.castOption($.textfont.family,J.pts)||Z.family,j=h.castOption($.insidetextfont.size,J.pts)||h.castOption($.textfont.size,J.pts)||Z.size,ee=h.castOption($.insidetextfont.weight,J.pts)||h.castOption($.textfont.weight,J.pts)||Z.weight,ie=h.castOption($.insidetextfont.style,J.pts)||h.castOption($.textfont.style,J.pts)||Z.style,fe=h.castOption($.insidetextfont.variant,J.pts)||h.castOption($.textfont.variant,J.pts)||Z.variant,be=h.castOption($.insidetextfont.textcase,J.pts)||h.castOption($.textfont.textcase,J.pts)||Z.textcase,Ae=h.castOption($.insidetextfont.lineposition,J.pts)||h.castOption($.textfont.lineposition,J.pts)||Z.lineposition,Be=h.castOption($.insidetextfont.shadow,J.pts)||h.castOption($.textfont.shadow,J.pts)||Z.shadow;return{color:re||M.contrast(J.color),family:ne,size:j,weight:ee,style:ie,variant:fe,textcase:be,lineposition:Ae,shadow:Be}}function E($,J){for(var Z,re,ne=0;ne<$.length;ne++)if(Z=$[ne][0],re=Z.trace,re.title.text){var j=re.title.text;re._meta&&(j=t.templateString(j,re._meta));var ee=e.tester.append("text").attr("data-notex",1).text(j).call(e.font,re.title.font).call(a.convertToTspans,J),ie=e.bBox(ee.node(),!0);Z.titleBox={width:ie.width,height:ie.height},ee.remove()}}function m($,J,Z){var re=Z.r||J.rpx1,ne=J.rInscribed,j=J.startangle===J.stopangle;if(j)return{rCenter:1-ne,scale:0,rotate:0,textPosAngle:0};var ee=J.ring,ie=ee===1&&Math.abs(J.startangle-J.stopangle)===Math.PI*2,fe=J.halfangle,be=J.midangle,Ae=Z.trace.insidetextorientation,Be=Ae==="horizontal",Ie=Ae==="tangential",Ze=Ae==="radial",at=Ae==="auto",it=[],et;if(!at){var lt=function(Qe,Ct){if(b(J,Qe)){var St=Math.abs(Qe-J.startangle),Ot=Math.abs(Qe-J.stopangle),jt=St<Ot?St:Ot;Ct==="tan"?et=u($,re,ee,jt,0):et=d($,re,ee,jt,Math.PI/2),et.textPosAngle=Qe,it.push(et)}},Me;if(Be||Ie){for(Me=4;Me>=-4;Me-=2)lt(Math.PI*Me,"tan");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1),"tan")}if(Be||Ze){for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+1.5),"rad");for(Me=4;Me>=-4;Me-=2)lt(Math.PI*(Me+.5),"rad")}}if(ie||at||Be){var ge=Math.sqrt($.width*$.width+$.height*$.height);if(et={scale:ne*re*2/ge,rCenter:1-ne,rotate:0},et.textPosAngle=(J.startangle+J.stopangle)/2,et.scale>=1)return et;it.push(et)}(at||Ze)&&(et=d($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et)),(at||Ie)&&(et=u($,re,ee,fe,be),et.textPosAngle=(J.startangle+J.stopangle)/2,it.push(et));for(var ce=0,ze=0,tt=0;tt<it.length;tt++){var nt=it[tt].scale;if(ze<nt&&(ze=nt,ce=tt),!at&&ze>=1)break}return it[ce]}function b($,J){var Z=$.startangle,re=$.stopangle;return Z>J&&J>re||Z<J&&J<re}function d($,J,Z,re,ne){J=Math.max(0,J-2*c);var j=$.width/$.height,ee=P(j,re,J,Z);return{scale:ee*2/$.height,rCenter:y(j,ee/J),rotate:f(ne)}}function u($,J,Z,re,ne){J=Math.max(0,J-2*c);var j=$.height/$.width,ee=P(j,re,J,Z);return{scale:ee*2/$.width,rCenter:y(j,ee/J),rotate:f(ne+Math.PI/2)}}function y($,J){return Math.cos(J)-$*J}function f($){return(180/Math.PI*$+720)%180-90}function P($,J,Z,re){var ne=$+1/(2*Math.tan(J));return Z*Math.min(1/(Math.sqrt(ne*ne+.5)+ne),re/(Math.sqrt($*$+re/2)+$))}function L($,J){return $.v===J.vTotal&&!J.trace.hole?1:Math.min(1/(1+1/Math.sin($.halfangle)),$.ring/2)}function z($,J){var Z=J.pxmid[0],re=J.pxmid[1],ne=$.width/2,j=$.height/2;return Z<0&&(ne*=-1),re<0&&(j*=-1),{scale:1,rCenter:1,rotate:0,x:ne+Math.abs(j)*(ne>0?1:-1)/2,y:j/(1+Z*Z/(re*re)),outside:!0}}function F($){var J=Math.sqrt($.titleBox.width*$.titleBox.width+$.titleBox.height*$.titleBox.height);return{x:$.cx,y:$.cy,scale:$.trace.hole*$.r*2/J,tx:0,ty:-$.titleBox.height/2+$.trace.title.font.size}}function B($,J){var Z=1,re=1,ne,j=$.trace,ee={x:$.cx,y:$.cy},ie={tx:0,ty:0};ie.ty+=j.title.font.size,ne=N(j),j.title.position.indexOf("top")!==-1?(ee.y-=(1+ne)*$.r,ie.ty-=$.titleBox.height):j.title.position.indexOf("bottom")!==-1&&(ee.y+=(1+ne)*$.r);var fe=O($.r,$.trace.aspectratio),be=J.w*(j.domain.x[1]-j.domain.x[0])/2;return j.title.position.indexOf("left")!==-1?(be=be+fe,ee.x-=(1+ne)*fe,ie.tx+=$.titleBox.width/2):j.title.position.indexOf("center")!==-1?be*=2:j.title.position.indexOf("right")!==-1&&(be=be+fe,ee.x+=(1+ne)*fe,ie.tx-=$.titleBox.width/2),Z=be/$.titleBox.width,re=I($,J)/$.titleBox.height,{x:ee.x,y:ee.y,scale:Math.min(Z,re),tx:ie.tx,ty:ie.ty}}function O($,J){return $/(J===void 0?1:J)}function I($,J){var Z=$.trace,re=J.h*(Z.domain.y[1]-Z.domain.y[0]);return Math.min($.titleBox.height,re/2)}function N($){var J=$.pull;if(!J)return 0;var Z;if(t.isArrayOrTypedArray(J))for(J=0,Z=0;Z<$.pull.length;Z++)$.pull[Z]>J&&(J=$.pull[Z]);return J}function U($,J){var Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at;function it(ge,ce){return ge.pxmid[1]-ce.pxmid[1]}function et(ge,ce){return ce.pxmid[1]-ge.pxmid[1]}function lt(ge,ce){ce||(ce={});var ze=ce.labelExtraY+(re?ce.yLabelMax:ce.yLabelMin),tt=re?ge.yLabelMin:ge.yLabelMax,nt=re?ge.yLabelMax:ge.yLabelMin,Qe=ge.cyFinal+ee(ge.px0[1],ge.px1[1]),Ct=ze-tt,St,Ot,jt,ur,ar,Cr;if(Ct*fe>0&&(ge.labelExtraY=Ct),!!t.isArrayOrTypedArray(J.pull))for(Ot=0;Ot<Be.length;Ot++)jt=Be[Ot],!(jt===ge||(h.castOption(J.pull,ge.pts)||0)>=(h.castOption(J.pull,jt.pts)||0))&&((ge.pxmid[1]-jt.pxmid[1])*fe>0?(ur=jt.cyFinal+ee(jt.px0[1],jt.px1[1]),Ct=ur-tt-ge.labelExtraY,Ct*fe>0&&(ge.labelExtraY+=Ct)):(nt+ge.labelExtraY-Qe)*fe>0&&(St=3*ie*Math.abs(Ot-Be.indexOf(ge)),ar=jt.cxFinal+j(jt.px0[0],jt.px1[0]),Cr=ar+St-(ge.cxFinal+ge.pxmid[0])-ge.labelExtraX,Cr*ie>0&&(ge.labelExtraX+=Cr)))}for(re=0;re<2;re++)for(ne=re?it:et,ee=re?Math.max:Math.min,fe=re?1:-1,Z=0;Z<2;Z++){for(j=Z?Math.max:Math.min,ie=Z?1:-1,be=$[re][Z],be.sort(ne),Ae=$[1-re][Z],Be=Ae.concat(be),Ze=[],Ie=0;Ie<be.length;Ie++)be[Ie].yLabelMid!==void 0&&Ze.push(be[Ie]);for(at=!1,Ie=0;re&&Ie<Ae.length;Ie++)if(Ae[Ie].yLabelMid!==void 0){at=Ae[Ie];break}for(Ie=0;Ie<Ze.length;Ie++){var Me=Ie&&Ze[Ie-1];at&&!Ie&&(Me=at),lt(Ze[Ie],Me)}}}function W($,J){for(var Z=[],re=0;re<$.length;re++){var ne=$[re][0],j=ne.trace,ee=j.domain,ie=J.w*(ee.x[1]-ee.x[0]),fe=J.h*(ee.y[1]-ee.y[0]);j.title.text&&j.title.position!=="middle center"&&(fe-=I(ne,J));var be=ie/2,Ae=fe/2;j.type==="funnelarea"&&!j.scalegroup&&(Ae/=j.aspectratio),ne.r=Math.min(be,Ae)/(1+N(j)),ne.cx=J.l+J.w*(j.domain.x[1]+j.domain.x[0])/2,ne.cy=J.t+J.h*(1-j.domain.y[0])-fe/2,j.title.text&&j.title.position.indexOf("bottom")!==-1&&(ne.cy-=I(ne,J)),j.scalegroup&&Z.indexOf(j.scalegroup)===-1&&Z.push(j.scalegroup)}Q($,Z)}function Q($,J){for(var Z,re,ne,j=0;j<J.length;j++){var ee=1/0,ie=J[j];for(re=0;re<$.length;re++)if(Z=$[re][0],ne=Z.trace,ne.scalegroup===ie){var fe;if(ne.type==="pie")fe=Z.r*Z.r;else if(ne.type==="funnelarea"){var be,Ae;ne.aspectratio>1?(be=Z.r,Ae=be/ne.aspectratio):(Ae=Z.r,be=Ae*ne.aspectratio),be*=(1+ne.baseratio)/2,fe=be*Ae}ee=Math.min(ee,fe/Z.vTotal)}for(re=0;re<$.length;re++)if(Z=$[re][0],ne=Z.trace,ne.scalegroup===ie){var Be=ee*Z.vTotal;ne.type==="funnelarea"&&(Be/=(1+ne.baseratio)/2,Be/=ne.aspectratio),Z.r=Math.sqrt(Be)}}}function ue($){var J=$[0],Z=J.r,re=J.trace,ne=h.getRotationAngle(re.rotation),j=2*Math.PI/J.vTotal,ee="px0",ie="px1",fe,be,Ae;if(re.direction==="counterclockwise"){for(fe=0;fe<$.length&&$[fe].hidden;fe++);if(fe===$.length)return;ne+=j*$[fe].v,j*=-1,ee="px1",ie="px0"}for(Ae=se(Z,ne),fe=0;fe<$.length;fe++)be=$[fe],!be.hidden&&(be[ee]=Ae,be.startangle=ne,ne+=j*be.v/2,be.pxmid=se(Z,ne),be.midangle=ne,ne+=j*be.v/2,Ae=se(Z,ne),be.stopangle=ne,be[ie]=Ae,be.largeArc=be.v>J.vTotal/2?1:0,be.halfangle=Math.PI*Math.min(be.v/J.vTotal,.5),be.ring=1-re.hole,be.rInscribed=L(be,J))}function se($,J){return[$*Math.sin(J),-$*Math.cos(J)]}function he($,J,Z){var re=$._fullLayout,ne=Z.trace,j=ne.texttemplate,ee=ne.textinfo;if(!j&&ee&&ee!=="none"){var ie=ee.split("+"),fe=function(ce){return ie.indexOf(ce)!==-1},be=fe("label"),Ae=fe("text"),Be=fe("value"),Ie=fe("percent"),Ze=re.separators,at;if(at=be?[J.label]:[],Ae){var it=h.getFirstFilled(ne.text,J.pts);p(it)&&at.push(it)}Be&&at.push(h.formatPieValue(J.v,Ze)),Ie&&at.push(h.formatPiePercent(J.v/Z.vTotal,Ze)),J.text=at.join("<br>")}function et(ce){return{label:ce.label,value:ce.v,valueLabel:h.formatPieValue(ce.v,re.separators),percent:ce.v/Z.vTotal,percentLabel:h.formatPiePercent(ce.v/Z.vTotal,re.separators),color:ce.color,text:ce.text,customdata:t.castOption(ne,ce.i,"customdata")}}if(j){var lt=t.castOption(ne,J.i,"texttemplate");if(!lt)J.text="";else{var Me=et(J),ge=h.getFirstFilled(ne.text,J.pts);(p(ge)||ge==="")&&(Me.text=ge),J.text=t.texttemplateString(lt,Me,$._fullLayout._d3locale,Me,ne._meta||{})}}}function G($,J){var Z=$.rotate*Math.PI/180,re=Math.cos(Z),ne=Math.sin(Z),j=(J.left+J.right)/2,ee=(J.top+J.bottom)/2;$.textX=j*re-ee*ne,$.textY=j*ne+ee*re,$.noCenter=!0}H.exports={plot:T,formatSliceLabel:he,transformInsideText:m,determineInsideTextFont:S,positionTitleOutside:B,prerenderTitles:E,layoutAreas:W,attachFxHandlers:_,computeTransform:G}}}),p9=Ye({"src/traces/pie/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._pielayer.selectAll(".trace");A(e,t,"pie"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),d9=Ye({"src/traces/pie/base_plot.js"(X){"use strict";var H=Gu();X.name="pie",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),v9=Ye({"src/traces/pie/index.js"(X,H){"use strict";H.exports={attributes:i0(),supplyDefaults:n0().supplyDefaults,supplyLayoutDefaults:f9(),layoutAttributes:y3(),calc:y1().calc,crossTraceCalc:y1().crossTraceCalc,plot:_3().plot,style:p9(),styleOne:a1(),moduleType:"trace",name:"pie",basePlotModule:d9(),categories:["pie-like","pie","showLegend"],meta:{}}}}),m9=Ye({"lib/pie.js"(X,H){"use strict";H.exports=v9()}}),g9=Ye({"src/traces/sunburst/base_plot.js"(X){"use strict";var H=Gu();X.name="sunburst",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),QM=Ye({"src/traces/sunburst/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"linear",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"]}}}),Y_=Ye({"src/traces/sunburst/attributes.js"(X,H){"use strict";var g=Pl(),x=xs().hovertemplateAttrs,A=xs().texttemplateAttrs,M=tu(),e=Wu().attributes,t=i0(),r=QM(),o=Oo().extendFlat,a=Uh().pattern;H.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:o({colors:{valType:"data_array",editType:"calc"},line:{color:o({},t.marker.line.color,{dflt:null}),width:o({},t.marker.line.width,{dflt:1}),editType:"calc"},pattern:a,editType:"calc"},M("marker",{colorAttr:"colors",anim:!1})),leaf:{opacity:{valType:"number",editType:"style",min:0,max:1},editType:"plot"},text:t.text,textinfo:{valType:"flaglist",flags:["label","text","value","current path","percent root","percent entry","percent parent"],extras:["none"],editType:"plot"},texttemplate:A({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:t.hovertext,hoverinfo:o({},g.hoverinfo,{flags:["label","text","value","name","current path","percent root","percent entry","percent parent"],dflt:"label+text+value+name"}),hovertemplate:x({},{keys:r.eventDataKeys}),textfont:t.textfont,insidetextorientation:t.insidetextorientation,insidetextfont:t.insidetextfont,outsidetextfont:o({},t.outsidetextfont,{}),rotation:{valType:"angle",dflt:0,editType:"plot"},sort:t.sort,root:{color:{valType:"color",editType:"calc",dflt:"rgba(0,0,0,0)"},editType:"calc"},domain:e({name:"sunburst",trace:!0,editType:"calc"})}}}),eE=Ye({"src/traces/sunburst/layout_attributes.js"(X,H){"use strict";H.exports={sunburstcolorway:{valType:"colorlist",editType:"calc"},extendsunburstcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),y9=Ye({"src/traces/sunburst/defaults.js"(X,H){"use strict";var g=ta(),x=Y_(),A=Wu().defaults,M=gd().handleText,e=n0().handleMarkerDefaults,t=Su(),r=t.hasColorscale,o=t.handleDefaults;H.exports=function(i,n,s,c){function h(S,E){return g.coerce(i,n,x,S,E)}var v=h("labels"),p=h("parents");if(!v||!v.length||!p||!p.length){n.visible=!1;return}var T=h("values");T&&T.length?h("branchvalues"):h("count"),h("level"),h("maxdepth"),e(i,n,c,h);var l=n._hasColorscale=r(i,"marker","colors")||(i.marker||{}).coloraxis;l&&o(i,n,c,h,{prefix:"marker.",cLetter:"c"}),h("leaf.opacity",l?1:.7);var _=h("text");h("texttemplate"),n.texttemplate||h("textinfo",g.isArrayOrTypedArray(_)?"text+label":"label"),h("hovertext"),h("hovertemplate");var w="auto";M(i,n,c,h,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),h("insidetextorientation"),h("sort"),h("rotation"),h("root.color"),A(n,c,h),n._length=null}}}),_9=Ye({"src/traces/sunburst/layout_defaults.js"(X,H){"use strict";var g=ta(),x=eE();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("sunburstcolorway",e.colorway),t("extendsunburstcolors")}}}),K_=Ye({"node_modules/d3-hierarchy/dist/d3-hierarchy.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(Ne,Ee){return Ne.parent===Ee.parent?1:2}function A(Ne){return Ne.reduce(M,0)/Ne.length}function M(Ne,Ee){return Ne+Ee.x}function e(Ne){return 1+Ne.reduce(t,0)}function t(Ne,Ee){return Math.max(Ne,Ee.y)}function r(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[0];return Ne}function o(Ne){for(var Ee;Ee=Ne.children;)Ne=Ee[Ee.length-1];return Ne}function a(){var Ne=x,Ee=1,Ve=1,ke=!1;function Te(Le){var rt,dt=0;Le.eachAfter(function(Kt){var sr=Kt.children;sr?(Kt.x=A(sr),Kt.y=e(sr)):(Kt.x=rt?dt+=Ne(Kt,rt):0,Kt.y=0,rt=Kt)});var xt=r(Le),It=o(Le),Bt=xt.x-Ne(xt,It)/2,Gt=It.x+Ne(It,xt)/2;return Le.eachAfter(ke?function(Kt){Kt.x=(Kt.x-Le.x)*Ee,Kt.y=(Le.y-Kt.y)*Ve}:function(Kt){Kt.x=(Kt.x-Bt)/(Gt-Bt)*Ee,Kt.y=(1-(Le.y?Kt.y/Le.y:1))*Ve})}return Te.separation=function(Le){return arguments.length?(Ne=Le,Te):Ne},Te.size=function(Le){return arguments.length?(ke=!1,Ee=+Le[0],Ve=+Le[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(Le){return arguments.length?(ke=!0,Ee=+Le[0],Ve=+Le[1],Te):ke?[Ee,Ve]:null},Te}function i(Ne){var Ee=0,Ve=Ne.children,ke=Ve&&Ve.length;if(!ke)Ee=1;else for(;--ke>=0;)Ee+=Ve[ke].value;Ne.value=Ee}function n(){return this.eachAfter(i)}function s(Ne){var Ee=this,Ve,ke=[Ee],Te,Le,rt;do for(Ve=ke.reverse(),ke=[];Ee=Ve.pop();)if(Ne(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le<rt;++Le)ke.push(Te[Le]);while(ke.length);return this}function c(Ne){for(var Ee=this,Ve=[Ee],ke,Te;Ee=Ve.pop();)if(Ne(Ee),ke=Ee.children,ke)for(Te=ke.length-1;Te>=0;--Te)Ve.push(ke[Te]);return this}function h(Ne){for(var Ee=this,Ve=[Ee],ke=[],Te,Le,rt;Ee=Ve.pop();)if(ke.push(Ee),Te=Ee.children,Te)for(Le=0,rt=Te.length;Le<rt;++Le)Ve.push(Te[Le]);for(;Ee=ke.pop();)Ne(Ee);return this}function v(Ne){return this.eachAfter(function(Ee){for(var Ve=+Ne(Ee.data)||0,ke=Ee.children,Te=ke&&ke.length;--Te>=0;)Ve+=ke[Te].value;Ee.value=Ve})}function p(Ne){return this.eachBefore(function(Ee){Ee.children&&Ee.children.sort(Ne)})}function T(Ne){for(var Ee=this,Ve=l(Ee,Ne),ke=[Ee];Ee!==Ve;)Ee=Ee.parent,ke.push(Ee);for(var Te=ke.length;Ne!==Ve;)ke.splice(Te,0,Ne),Ne=Ne.parent;return ke}function l(Ne,Ee){if(Ne===Ee)return Ne;var Ve=Ne.ancestors(),ke=Ee.ancestors(),Te=null;for(Ne=Ve.pop(),Ee=ke.pop();Ne===Ee;)Te=Ne,Ne=Ve.pop(),Ee=ke.pop();return Te}function _(){for(var Ne=this,Ee=[Ne];Ne=Ne.parent;)Ee.push(Ne);return Ee}function w(){var Ne=[];return this.each(function(Ee){Ne.push(Ee)}),Ne}function S(){var Ne=[];return this.eachBefore(function(Ee){Ee.children||Ne.push(Ee)}),Ne}function E(){var Ne=this,Ee=[];return Ne.each(function(Ve){Ve!==Ne&&Ee.push({source:Ve.parent,target:Ve})}),Ee}function m(Ne,Ee){var Ve=new f(Ne),ke=+Ne.value&&(Ve.value=Ne.value),Te,Le=[Ve],rt,dt,xt,It;for(Ee==null&&(Ee=d);Te=Le.pop();)if(ke&&(Te.value=+Te.data.value),(dt=Ee(Te.data))&&(It=dt.length))for(Te.children=new Array(It),xt=It-1;xt>=0;--xt)Le.push(rt=Te.children[xt]=new f(dt[xt])),rt.parent=Te,rt.depth=Te.depth+1;return Ve.eachBefore(y)}function b(){return m(this).eachBefore(u)}function d(Ne){return Ne.children}function u(Ne){Ne.data=Ne.data.data}function y(Ne){var Ee=0;do Ne.height=Ee;while((Ne=Ne.parent)&&Ne.height<++Ee)}function f(Ne){this.data=Ne,this.depth=this.height=0,this.parent=null}f.prototype=m.prototype={constructor:f,count:n,each:s,eachAfter:h,eachBefore:c,sum:v,sort:p,path:T,ancestors:_,descendants:w,leaves:S,links:E,copy:b};var P=Array.prototype.slice;function L(Ne){for(var Ee=Ne.length,Ve,ke;Ee;)ke=Math.random()*Ee--|0,Ve=Ne[Ee],Ne[Ee]=Ne[ke],Ne[ke]=Ve;return Ne}function z(Ne){for(var Ee=0,Ve=(Ne=L(P.call(Ne))).length,ke=[],Te,Le;Ee<Ve;)Te=Ne[Ee],Le&&O(Le,Te)?++Ee:(Le=N(ke=F(ke,Te)),Ee=0);return Le}function F(Ne,Ee){var Ve,ke;if(I(Ee,Ne))return[Ee];for(Ve=0;Ve<Ne.length;++Ve)if(B(Ee,Ne[Ve])&&I(W(Ne[Ve],Ee),Ne))return[Ne[Ve],Ee];for(Ve=0;Ve<Ne.length-1;++Ve)for(ke=Ve+1;ke<Ne.length;++ke)if(B(W(Ne[Ve],Ne[ke]),Ee)&&B(W(Ne[Ve],Ee),Ne[ke])&&B(W(Ne[ke],Ee),Ne[Ve])&&I(Q(Ne[Ve],Ne[ke],Ee),Ne))return[Ne[Ve],Ne[ke],Ee];throw new Error}function B(Ne,Ee){var Ve=Ne.r-Ee.r,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve<0||Ve*Ve<ke*ke+Te*Te}function O(Ne,Ee){var Ve=Ne.r-Ee.r+1e-6,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve>0&&Ve*Ve>ke*ke+Te*Te}function I(Ne,Ee){for(var Ve=0;Ve<Ee.length;++Ve)if(!O(Ne,Ee[Ve]))return!1;return!0}function N(Ne){switch(Ne.length){case 1:return U(Ne[0]);case 2:return W(Ne[0],Ne[1]);case 3:return Q(Ne[0],Ne[1],Ne[2])}}function U(Ne){return{x:Ne.x,y:Ne.y,r:Ne.r}}function W(Ne,Ee){var Ve=Ne.x,ke=Ne.y,Te=Ne.r,Le=Ee.x,rt=Ee.y,dt=Ee.r,xt=Le-Ve,It=rt-ke,Bt=dt-Te,Gt=Math.sqrt(xt*xt+It*It);return{x:(Ve+Le+xt/Gt*Bt)/2,y:(ke+rt+It/Gt*Bt)/2,r:(Gt+Te+dt)/2}}function Q(Ne,Ee,Ve){var ke=Ne.x,Te=Ne.y,Le=Ne.r,rt=Ee.x,dt=Ee.y,xt=Ee.r,It=Ve.x,Bt=Ve.y,Gt=Ve.r,Kt=ke-rt,sr=ke-It,sa=Te-dt,Aa=Te-Bt,La=xt-Le,ka=Gt-Le,Ga=ke*ke+Te*Te-Le*Le,Ma=Ga-rt*rt-dt*dt+xt*xt,Ua=Ga-It*It-Bt*Bt+Gt*Gt,ni=sr*sa-Kt*Aa,Wt=(sa*Ua-Aa*Ma)/(ni*2)-ke,zt=(Aa*La-sa*ka)/ni,Vt=(sr*Ma-Kt*Ua)/(ni*2)-Te,Ut=(Kt*ka-sr*La)/ni,xr=zt*zt+Ut*Ut-1,Zr=2*(Le+Wt*zt+Vt*Ut),pa=Wt*Wt+Vt*Vt-Le*Le,Xr=-(xr?(Zr+Math.sqrt(Zr*Zr-4*xr*pa))/(2*xr):pa/Zr);return{x:ke+Wt+zt*Xr,y:Te+Vt+Ut*Xr,r:Xr}}function ue(Ne,Ee,Ve){var ke=Ne.x-Ee.x,Te,Le,rt=Ne.y-Ee.y,dt,xt,It=ke*ke+rt*rt;It?(Le=Ee.r+Ve.r,Le*=Le,xt=Ne.r+Ve.r,xt*=xt,Le>xt?(Te=(It+xt-Le)/(2*It),dt=Math.sqrt(Math.max(0,xt/It-Te*Te)),Ve.x=Ne.x-Te*ke-dt*rt,Ve.y=Ne.y-Te*rt+dt*ke):(Te=(It+Le-xt)/(2*It),dt=Math.sqrt(Math.max(0,Le/It-Te*Te)),Ve.x=Ee.x+Te*ke-dt*rt,Ve.y=Ee.y+Te*rt+dt*ke)):(Ve.x=Ee.x+Ve.r,Ve.y=Ee.y)}function se(Ne,Ee){var Ve=Ne.r+Ee.r-1e-6,ke=Ee.x-Ne.x,Te=Ee.y-Ne.y;return Ve>0&&Ve*Ve>ke*ke+Te*Te}function he(Ne){var Ee=Ne._,Ve=Ne.next._,ke=Ee.r+Ve.r,Te=(Ee.x*Ve.r+Ve.x*Ee.r)/ke,Le=(Ee.y*Ve.r+Ve.y*Ee.r)/ke;return Te*Te+Le*Le}function G(Ne){this._=Ne,this.next=null,this.previous=null}function $(Ne){if(!(Te=Ne.length))return 0;var Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt;if(Ee=Ne[0],Ee.x=0,Ee.y=0,!(Te>1))return Ee.r;if(Ve=Ne[1],Ee.x=-Ve.r,Ve.x=Ee.r,Ve.y=0,!(Te>2))return Ee.r+Ve.r;ue(Ve,Ee,ke=Ne[2]),Ee=new G(Ee),Ve=new G(Ve),ke=new G(ke),Ee.next=ke.previous=Ve,Ve.next=Ee.previous=ke,ke.next=Ve.previous=Ee;e:for(dt=3;dt<Te;++dt){ue(Ee._,Ve._,ke=Ne[dt]),ke=new G(ke),xt=Ve.next,It=Ee.previous,Bt=Ve._.r,Gt=Ee._.r;do if(Bt<=Gt){if(se(xt._,ke._)){Ve=xt,Ee.next=Ve,Ve.previous=Ee,--dt;continue e}Bt+=xt._.r,xt=xt.next}else{if(se(It._,ke._)){Ee=It,Ee.next=Ve,Ve.previous=Ee,--dt;continue e}Gt+=It._.r,It=It.previous}while(xt!==It.next);for(ke.previous=Ee,ke.next=Ve,Ee.next=Ve.previous=Ve=ke,Le=he(Ee);(ke=ke.next)!==Ve;)(rt=he(ke))<Le&&(Ee=ke,Le=rt);Ve=Ee.next}for(Ee=[Ve._],ke=Ve;(ke=ke.next)!==Ve;)Ee.push(ke._);for(ke=z(Ee),dt=0;dt<Te;++dt)Ee=Ne[dt],Ee.x-=ke.x,Ee.y-=ke.y;return ke.r}function J(Ne){return $(Ne),Ne}function Z(Ne){return Ne==null?null:re(Ne)}function re(Ne){if(typeof Ne!="function")throw new Error;return Ne}function ne(){return 0}function j(Ne){return function(){return Ne}}function ee(Ne){return Math.sqrt(Ne.value)}function ie(){var Ne=null,Ee=1,Ve=1,ke=ne;function Te(Le){return Le.x=Ee/2,Le.y=Ve/2,Ne?Le.eachBefore(fe(Ne)).eachAfter(be(ke,.5)).eachBefore(Ae(1)):Le.eachBefore(fe(ee)).eachAfter(be(ne,1)).eachAfter(be(ke,Le.r/Math.min(Ee,Ve))).eachBefore(Ae(Math.min(Ee,Ve)/(2*Le.r))),Le}return Te.radius=function(Le){return arguments.length?(Ne=Z(Le),Te):Ne},Te.size=function(Le){return arguments.length?(Ee=+Le[0],Ve=+Le[1],Te):[Ee,Ve]},Te.padding=function(Le){return arguments.length?(ke=typeof Le=="function"?Le:j(+Le),Te):ke},Te}function fe(Ne){return function(Ee){Ee.children||(Ee.r=Math.max(0,+Ne(Ee)||0))}}function be(Ne,Ee){return function(Ve){if(ke=Ve.children){var ke,Te,Le=ke.length,rt=Ne(Ve)*Ee||0,dt;if(rt)for(Te=0;Te<Le;++Te)ke[Te].r+=rt;if(dt=$(ke),rt)for(Te=0;Te<Le;++Te)ke[Te].r-=rt;Ve.r=dt+rt}}}function Ae(Ne){return function(Ee){var Ve=Ee.parent;Ee.r*=Ne,Ve&&(Ee.x=Ve.x+Ne*Ee.x,Ee.y=Ve.y+Ne*Ee.y)}}function Be(Ne){Ne.x0=Math.round(Ne.x0),Ne.y0=Math.round(Ne.y0),Ne.x1=Math.round(Ne.x1),Ne.y1=Math.round(Ne.y1)}function Ie(Ne,Ee,Ve,ke,Te){for(var Le=Ne.children,rt,dt=-1,xt=Le.length,It=Ne.value&&(ke-Ee)/Ne.value;++dt<xt;)rt=Le[dt],rt.y0=Ve,rt.y1=Te,rt.x0=Ee,rt.x1=Ee+=rt.value*It}function Ze(){var Ne=1,Ee=1,Ve=0,ke=!1;function Te(rt){var dt=rt.height+1;return rt.x0=rt.y0=Ve,rt.x1=Ne,rt.y1=Ee/dt,rt.eachBefore(Le(Ee,dt)),ke&&rt.eachBefore(Be),rt}function Le(rt,dt){return function(xt){xt.children&&Ie(xt,xt.x0,rt*(xt.depth+1)/dt,xt.x1,rt*(xt.depth+2)/dt);var It=xt.x0,Bt=xt.y0,Gt=xt.x1-Ve,Kt=xt.y1-Ve;Gt<It&&(It=Gt=(It+Gt)/2),Kt<Bt&&(Bt=Kt=(Bt+Kt)/2),xt.x0=It,xt.y0=Bt,xt.x1=Gt,xt.y1=Kt}}return Te.round=function(rt){return arguments.length?(ke=!!rt,Te):ke},Te.size=function(rt){return arguments.length?(Ne=+rt[0],Ee=+rt[1],Te):[Ne,Ee]},Te.padding=function(rt){return arguments.length?(Ve=+rt,Te):Ve},Te}var at="$",it={depth:-1},et={};function lt(Ne){return Ne.id}function Me(Ne){return Ne.parentId}function ge(){var Ne=lt,Ee=Me;function Ve(ke){var Te,Le,rt=ke.length,dt,xt,It,Bt=new Array(rt),Gt,Kt,sr={};for(Le=0;Le<rt;++Le)Te=ke[Le],It=Bt[Le]=new f(Te),(Gt=Ne(Te,Le,ke))!=null&&(Gt+="")&&(Kt=at+(It.id=Gt),sr[Kt]=Kt in sr?et:It);for(Le=0;Le<rt;++Le)if(It=Bt[Le],Gt=Ee(ke[Le],Le,ke),Gt==null||!(Gt+="")){if(dt)throw new Error("multiple roots");dt=It}else{if(xt=sr[at+Gt],!xt)throw new Error("missing: "+Gt);if(xt===et)throw new Error("ambiguous: "+Gt);xt.children?xt.children.push(It):xt.children=[It],It.parent=xt}if(!dt)throw new Error("no root");if(dt.parent=it,dt.eachBefore(function(sa){sa.depth=sa.parent.depth+1,--rt}).eachBefore(y),dt.parent=null,rt>0)throw new Error("cycle");return dt}return Ve.id=function(ke){return arguments.length?(Ne=re(ke),Ve):Ne},Ve.parentId=function(ke){return arguments.length?(Ee=re(ke),Ve):Ee},Ve}function ce(Ne,Ee){return Ne.parent===Ee.parent?1:2}function ze(Ne){var Ee=Ne.children;return Ee?Ee[0]:Ne.t}function tt(Ne){var Ee=Ne.children;return Ee?Ee[Ee.length-1]:Ne.t}function nt(Ne,Ee,Ve){var ke=Ve/(Ee.i-Ne.i);Ee.c-=ke,Ee.s+=Ve,Ne.c+=ke,Ee.z+=Ve,Ee.m+=Ve}function Qe(Ne){for(var Ee=0,Ve=0,ke=Ne.children,Te=ke.length,Le;--Te>=0;)Le=ke[Te],Le.z+=Ee,Le.m+=Ee,Ee+=Le.s+(Ve+=Le.c)}function Ct(Ne,Ee,Ve){return Ne.a.parent===Ee.parent?Ne.a:Ve}function St(Ne,Ee){this._=Ne,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=Ee}St.prototype=Object.create(f.prototype);function Ot(Ne){for(var Ee=new St(Ne,0),Ve,ke=[Ee],Te,Le,rt,dt;Ve=ke.pop();)if(Le=Ve._.children)for(Ve.children=new Array(dt=Le.length),rt=dt-1;rt>=0;--rt)ke.push(Te=Ve.children[rt]=new St(Le[rt],rt)),Te.parent=Ve;return(Ee.parent=new St(null,0)).children=[Ee],Ee}function jt(){var Ne=ce,Ee=1,Ve=1,ke=null;function Te(It){var Bt=Ot(It);if(Bt.eachAfter(Le),Bt.parent.m=-Bt.z,Bt.eachBefore(rt),ke)It.eachBefore(xt);else{var Gt=It,Kt=It,sr=It;It.eachBefore(function(Ga){Ga.x<Gt.x&&(Gt=Ga),Ga.x>Kt.x&&(Kt=Ga),Ga.depth>sr.depth&&(sr=Ga)});var sa=Gt===Kt?1:Ne(Gt,Kt)/2,Aa=sa-Gt.x,La=Ee/(Kt.x+sa+Aa),ka=Ve/(sr.depth||1);It.eachBefore(function(Ga){Ga.x=(Ga.x+Aa)*La,Ga.y=Ga.depth*ka})}return It}function Le(It){var Bt=It.children,Gt=It.parent.children,Kt=It.i?Gt[It.i-1]:null;if(Bt){Qe(It);var sr=(Bt[0].z+Bt[Bt.length-1].z)/2;Kt?(It.z=Kt.z+Ne(It._,Kt._),It.m=It.z-sr):It.z=sr}else Kt&&(It.z=Kt.z+Ne(It._,Kt._));It.parent.A=dt(It,Kt,It.parent.A||Gt[0])}function rt(It){It._.x=It.z+It.parent.m,It.m+=It.parent.m}function dt(It,Bt,Gt){if(Bt){for(var Kt=It,sr=It,sa=Bt,Aa=Kt.parent.children[0],La=Kt.m,ka=sr.m,Ga=sa.m,Ma=Aa.m,Ua;sa=tt(sa),Kt=ze(Kt),sa&&Kt;)Aa=ze(Aa),sr=tt(sr),sr.a=It,Ua=sa.z+Ga-Kt.z-La+Ne(sa._,Kt._),Ua>0&&(nt(Ct(sa,It,Gt),It,Ua),La+=Ua,ka+=Ua),Ga+=sa.m,La+=Kt.m,Ma+=Aa.m,ka+=sr.m;sa&&!tt(sr)&&(sr.t=sa,sr.m+=Ga-ka),Kt&&!ze(Aa)&&(Aa.t=Kt,Aa.m+=La-Ma,Gt=It)}return Gt}function xt(It){It.x*=Ee,It.y=It.depth*Ve}return Te.separation=function(It){return arguments.length?(Ne=It,Te):Ne},Te.size=function(It){return arguments.length?(ke=!1,Ee=+It[0],Ve=+It[1],Te):ke?null:[Ee,Ve]},Te.nodeSize=function(It){return arguments.length?(ke=!0,Ee=+It[0],Ve=+It[1],Te):ke?[Ee,Ve]:null},Te}function ur(Ne,Ee,Ve,ke,Te){for(var Le=Ne.children,rt,dt=-1,xt=Le.length,It=Ne.value&&(Te-Ve)/Ne.value;++dt<xt;)rt=Le[dt],rt.x0=Ee,rt.x1=ke,rt.y0=Ve,rt.y1=Ve+=rt.value*It}var ar=(1+Math.sqrt(5))/2;function Cr(Ne,Ee,Ve,ke,Te,Le){for(var rt=[],dt=Ee.children,xt,It,Bt=0,Gt=0,Kt=dt.length,sr,sa,Aa=Ee.value,La,ka,Ga,Ma,Ua,ni,Wt;Bt<Kt;){sr=Te-Ve,sa=Le-ke;do La=dt[Gt++].value;while(!La&&Gt<Kt);for(ka=Ga=La,ni=Math.max(sa/sr,sr/sa)/(Aa*Ne),Wt=La*La*ni,Ua=Math.max(Ga/Wt,Wt/ka);Gt<Kt;++Gt){if(La+=It=dt[Gt].value,It<ka&&(ka=It),It>Ga&&(Ga=It),Wt=La*La*ni,Ma=Math.max(Ga/Wt,Wt/ka),Ma>Ua){La-=It;break}Ua=Ma}rt.push(xt={value:La,dice:sr<sa,children:dt.slice(Bt,Gt)}),xt.dice?Ie(xt,Ve,ke,Te,Aa?ke+=sa*La/Aa:Le):ur(xt,Ve,ke,Aa?Ve+=sr*La/Aa:Te,Le),Aa-=La,Bt=Gt}return rt}var vr=function Ne(Ee){function Ve(ke,Te,Le,rt,dt){Cr(Ee,ke,Te,Le,rt,dt)}return Ve.ratio=function(ke){return Ne((ke=+ke)>1?ke:1)},Ve}(ar);function _r(){var Ne=vr,Ee=!1,Ve=1,ke=1,Te=[0],Le=ne,rt=ne,dt=ne,xt=ne,It=ne;function Bt(Kt){return Kt.x0=Kt.y0=0,Kt.x1=Ve,Kt.y1=ke,Kt.eachBefore(Gt),Te=[0],Ee&&Kt.eachBefore(Be),Kt}function Gt(Kt){var sr=Te[Kt.depth],sa=Kt.x0+sr,Aa=Kt.y0+sr,La=Kt.x1-sr,ka=Kt.y1-sr;La<sa&&(sa=La=(sa+La)/2),ka<Aa&&(Aa=ka=(Aa+ka)/2),Kt.x0=sa,Kt.y0=Aa,Kt.x1=La,Kt.y1=ka,Kt.children&&(sr=Te[Kt.depth+1]=Le(Kt)/2,sa+=It(Kt)-sr,Aa+=rt(Kt)-sr,La-=dt(Kt)-sr,ka-=xt(Kt)-sr,La<sa&&(sa=La=(sa+La)/2),ka<Aa&&(Aa=ka=(Aa+ka)/2),Ne(Kt,sa,Aa,La,ka))}return Bt.round=function(Kt){return arguments.length?(Ee=!!Kt,Bt):Ee},Bt.size=function(Kt){return arguments.length?(Ve=+Kt[0],ke=+Kt[1],Bt):[Ve,ke]},Bt.tile=function(Kt){return arguments.length?(Ne=re(Kt),Bt):Ne},Bt.padding=function(Kt){return arguments.length?Bt.paddingInner(Kt).paddingOuter(Kt):Bt.paddingInner()},Bt.paddingInner=function(Kt){return arguments.length?(Le=typeof Kt=="function"?Kt:j(+Kt),Bt):Le},Bt.paddingOuter=function(Kt){return arguments.length?Bt.paddingTop(Kt).paddingRight(Kt).paddingBottom(Kt).paddingLeft(Kt):Bt.paddingTop()},Bt.paddingTop=function(Kt){return arguments.length?(rt=typeof Kt=="function"?Kt:j(+Kt),Bt):rt},Bt.paddingRight=function(Kt){return arguments.length?(dt=typeof Kt=="function"?Kt:j(+Kt),Bt):dt},Bt.paddingBottom=function(Kt){return arguments.length?(xt=typeof Kt=="function"?Kt:j(+Kt),Bt):xt},Bt.paddingLeft=function(Kt){return arguments.length?(It=typeof Kt=="function"?Kt:j(+Kt),Bt):It},Bt}function yt(Ne,Ee,Ve,ke,Te){var Le=Ne.children,rt,dt=Le.length,xt,It=new Array(dt+1);for(It[0]=xt=rt=0;rt<dt;++rt)It[rt+1]=xt+=Le[rt].value;Bt(0,dt,Ne.value,Ee,Ve,ke,Te);function Bt(Gt,Kt,sr,sa,Aa,La,ka){if(Gt>=Kt-1){var Ga=Le[Gt];Ga.x0=sa,Ga.y0=Aa,Ga.x1=La,Ga.y1=ka;return}for(var Ma=It[Gt],Ua=sr/2+Ma,ni=Gt+1,Wt=Kt-1;ni<Wt;){var zt=ni+Wt>>>1;It[zt]<Ua?ni=zt+1:Wt=zt}Ua-It[ni-1]<It[ni]-Ua&&Gt+1<ni&&--ni;var Vt=It[ni]-Ma,Ut=sr-Vt;if(La-sa>ka-Aa){var xr=(sa*Ut+La*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,xr,ka),Bt(ni,Kt,Ut,xr,Aa,La,ka)}else{var Zr=(Aa*Ut+ka*Vt)/sr;Bt(Gt,ni,Vt,sa,Aa,La,Zr),Bt(ni,Kt,Ut,sa,Zr,La,ka)}}}function Fe(Ne,Ee,Ve,ke,Te){(Ne.depth&1?ur:Ie)(Ne,Ee,Ve,ke,Te)}var Ke=function Ne(Ee){function Ve(ke,Te,Le,rt,dt){if((xt=ke._squarify)&&xt.ratio===Ee)for(var xt,It,Bt,Gt,Kt=-1,sr,sa=xt.length,Aa=ke.value;++Kt<sa;){for(It=xt[Kt],Bt=It.children,Gt=It.value=0,sr=Bt.length;Gt<sr;++Gt)It.value+=Bt[Gt].value;It.dice?Ie(It,Te,Le,rt,Le+=(dt-Le)*It.value/Aa):ur(It,Te,Le,Te+=(rt-Te)*It.value/Aa,dt),Aa-=It.value}else ke._squarify=xt=Cr(Ee,ke,Te,Le,rt,dt),xt.ratio=Ee}return Ve.ratio=function(ke){return Ne((ke=+ke)>1?ke:1)},Ve}(ar);g.cluster=a,g.hierarchy=m,g.pack=ie,g.packEnclose=z,g.packSiblings=J,g.partition=Ze,g.stratify=ge,g.tree=jt,g.treemap=_r,g.treemapBinary=yt,g.treemapDice=Ie,g.treemapResquarify=Ke,g.treemapSlice=ur,g.treemapSliceDice=Fe,g.treemapSquarify=vr,Object.defineProperty(g,"__esModule",{value:!0})})}}),J_=Ye({"src/traces/sunburst/calc.js"(X){"use strict";var H=K_(),g=jo(),x=ta(),A=Su().makeColorScaleFuncFromTrace,M=y1().makePullColorFn,e=y1().generateExtendedColors,t=Su().calc,r=ks().ALMOST_EQUAL,o={},a={},i={};X.calc=function(s,c){var h=s._fullLayout,v=c.ids,p=x.isArrayOrTypedArray(v),T=c.labels,l=c.parents,_=c.values,w=x.isArrayOrTypedArray(_),S=[],E={},m={},b=function(J,Z){E[J]?E[J].push(Z):E[J]=[Z],m[Z]=1},d=function(J){return J||typeof J=="number"},u=function(J){return!w||g(_[J])&&_[J]>=0},y,f,P;p?(y=Math.min(v.length,l.length),f=function(J){return d(v[J])&&u(J)},P=function(J){return String(v[J])}):(y=Math.min(T.length,l.length),f=function(J){return d(T[J])&&u(J)},P=function(J){return String(T[J])}),w&&(y=Math.min(y,_.length));for(var L=0;L<y;L++)if(f(L)){var z=P(L),F=d(l[L])?String(l[L]):"",B={i:L,id:z,pid:F,label:d(T[L])?String(T[L]):""};w&&(B.v=+_[L]),S.push(B),b(F,z)}if(E[""]){if(E[""].length>1){for(var N=x.randstr(),U=0;U<S.length;U++)S[U].pid===""&&(S[U].pid=N);S.unshift({hasMultipleRoots:!0,id:N,pid:"",label:""})}}else{var O=[],I;for(I in E)m[I]||O.push(I);if(O.length===1)I=O[0],S.unshift({hasImpliedRoot:!0,id:I,pid:"",label:I});else return x.warn(["Multiple implied roots, cannot build",c.type,"hierarchy of",c.name+".","These roots include:",O.join(", ")].join(" "))}var W;try{W=H.stratify().id(function(J){return J.id}).parentId(function(J){return J.pid})(S)}catch(J){return x.warn(["Failed to build",c.type,"hierarchy of",c.name+".","Error:",J.message].join(" "))}var Q=H.hierarchy(W),ue=!1;if(w)switch(c.branchvalues){case"remainder":Q.sum(function(J){return J.data.v});break;case"total":Q.each(function(J){var Z=J.data.data,re=Z.v;if(J.children){var ne=J.children.reduce(function(j,ee){return j+ee.data.data.v},0);if((Z.hasImpliedRoot||Z.hasMultipleRoots)&&(re=ne),re<ne*r)return ue=!0,x.warn(["Total value for node",J.data.data.id,"of",c.name,"is smaller than the sum of its children.",`
+parent value =`,re,`
+children sum =`,ne].join(" "))}J.value=re});break}else n(Q,c,{branches:c.count.indexOf("branches")!==-1,leaves:c.count.indexOf("leaves")!==-1});if(!ue){c.sort&&Q.sort(function(J,Z){return Z.value-J.value});var se,he,G=c.marker.colors||[],$=!!G.length;return c._hasColorscale?($||(G=w?c.values:c._values),t(s,c,{vals:G,containerStr:"marker",cLetter:"c"}),he=A(c.marker)):se=M(h["_"+c.type+"colormap"]),Q.each(function(J){var Z=J.data.data;Z.color=c._hasColorscale?he(G[Z.i]):se(G[Z.i],Z.id)}),S[0].hierarchy=Q,S}},X._runCrossTraceCalc=function(s,c){var h=c._fullLayout,v=c.calcdata,p=h[s+"colorway"],T=h["_"+s+"colormap"];h["extend"+s+"colors"]&&(p=e(p,s==="icicle"?i:s==="treemap"?a:o));var l=0,_;function w(b){var d=b.data.data,u=d.id;d.color===!1&&(T[u]?d.color=T[u]:b.parent?b.parent.parent?d.color=b.parent.data.data.color:(T[u]=d.color=p[l%p.length],l++):d.color=_)}for(var S=0;S<v.length;S++){var E=v[S],m=E[0];m.trace.type===s&&m.hierarchy&&(_=m.trace.root.color,m.hierarchy.each(w))}},X.crossTraceCalc=function(s){return X._runCrossTraceCalc("sunburst",s)};function n(s,c,h){var v=0,p=s.children;if(p){for(var T=p.length,l=0;l<T;l++)v+=n(p[l],c,h);h.branches&&v++}else h.leaves&&v++;return s.value=s.data.data.value=v,c._values||(c._values=[]),c._values[s.data.data.i]=v,v}}});function o0(X,H,g){X.prototype=H.prototype=g,g.constructor=X}function _1(X,H){var g=Object.create(X.prototype);for(var x in H)g[x]=H[x];return g}var x3=Qn({"node_modules/d3-color/src/define.js"(){}});function Kv(){}function tE(){return this.rgb().formatHex()}function x9(){return this.rgb().formatHex8()}function b9(){return sE(this).formatHsl()}function rE(){return this.rgb().formatRgb()}function x1(X){var H,g;return X=(X+"").trim().toLowerCase(),(H=uE.exec(X))?(g=H[1].length,H=parseInt(H[1],16),g===6?aE(H):g===3?new qh(H>>8&15|H>>4&240,H>>4&15|H&240,(H&15)<<4|H&15,1):g===8?$_(H>>24&255,H>>16&255,H>>8&255,(H&255)/255):g===4?$_(H>>12&15|H>>8&240,H>>8&15|H>>4&240,H>>4&15|H&240,((H&15)<<4|H&15)/255):null):(H=cE.exec(X))?new qh(H[1],H[2],H[3],1):(H=fE.exec(X))?new qh(H[1]*255/100,H[2]*255/100,H[3]*255/100,1):(H=hE.exec(X))?$_(H[1],H[2],H[3],H[4]):(H=pE.exec(X))?$_(H[1]*255/100,H[2]*255/100,H[3]*255/100,H[4]):(H=dE.exec(X))?oE(H[1],H[2]/100,H[3]/100,1):(H=vE.exec(X))?oE(H[1],H[2]/100,H[3]/100,H[4]):A3.hasOwnProperty(X)?aE(A3[X]):X==="transparent"?new qh(NaN,NaN,NaN,0):null}function aE(X){return new qh(X>>16&255,X>>8&255,X&255,1)}function $_(X,H,g,x){return x<=0&&(X=H=g=NaN),new qh(X,H,g,x)}function b3(X){return X instanceof Kv||(X=x1(X)),X?(X=X.rgb(),new qh(X.r,X.g,X.b,X.opacity)):new qh}function Q_(X,H,g,x){return arguments.length===1?b3(X):new qh(X,H,g,x??1)}function qh(X,H,g,x){this.r=+X,this.g=+H,this.b=+g,this.opacity=+x}function iE(){return`#${og(this.r)}${og(this.g)}${og(this.b)}`}function w9(){return`#${og(this.r)}${og(this.g)}${og(this.b)}${og((isNaN(this.opacity)?1:this.opacity)*255)}`}function nE(){let X=ex(this.opacity);return`${X===1?"rgb(":"rgba("}${ng(this.r)}, ${ng(this.g)}, ${ng(this.b)}${X===1?")":`, ${X})`}`}function ex(X){return isNaN(X)?1:Math.max(0,Math.min(1,X))}function ng(X){return Math.max(0,Math.min(255,Math.round(X)||0))}function og(X){return X=ng(X),(X<16?"0":"")+X.toString(16)}function oE(X,H,g,x){return x<=0?X=H=g=NaN:g<=0||g>=1?X=H=NaN:H<=0&&(X=NaN),new Ud(X,H,g,x)}function sE(X){if(X instanceof Ud)return new Ud(X.h,X.s,X.l,X.opacity);if(X instanceof Kv||(X=x1(X)),!X)return new Ud;if(X instanceof Ud)return X;X=X.rgb();var H=X.r/255,g=X.g/255,x=X.b/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=NaN,t=M-A,r=(M+A)/2;return t?(H===M?e=(g-x)/t+(g<x)*6:g===M?e=(x-H)/t+2:e=(H-g)/t+4,t/=r<.5?M+A:2-M-A,e*=60):t=r>0&&r<1?0:e,new Ud(e,t,r,X.opacity)}function w3(X,H,g,x){return arguments.length===1?sE(X):new Ud(X,H,g,x??1)}function Ud(X,H,g,x){this.h=+X,this.s=+H,this.l=+g,this.opacity=+x}function lE(X){return X=(X||0)%360,X<0?X+360:X}function tx(X){return Math.max(0,Math.min(1,X||0))}function T3(X,H,g){return(X<60?H+(g-H)*X/60:X<180?g:X<240?H+(g-H)*(240-X)/60:H)*255}var Jv,sg,lg,s0,jd,uE,cE,fE,hE,pE,dE,vE,A3,S3=Qn({"node_modules/d3-color/src/color.js"(){x3(),Jv=.7,sg=1/Jv,lg="\\s*([+-]?\\d+)\\s*",s0="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",jd="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",uE=/^#([0-9a-f]{3,8})$/,cE=new RegExp(`^rgb\\(${lg},${lg},${lg}\\)$`),fE=new RegExp(`^rgb\\(${jd},${jd},${jd}\\)$`),hE=new RegExp(`^rgba\\(${lg},${lg},${lg},${s0}\\)$`),pE=new RegExp(`^rgba\\(${jd},${jd},${jd},${s0}\\)$`),dE=new RegExp(`^hsl\\(${s0},${jd},${jd}\\)$`),vE=new RegExp(`^hsla\\(${s0},${jd},${jd},${s0}\\)$`),A3={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},o0(Kv,x1,{copy(X){return Object.assign(new this.constructor,this,X)},displayable(){return this.rgb().displayable()},hex:tE,formatHex:tE,formatHex8:x9,formatHsl:b9,formatRgb:rE,toString:rE}),o0(qh,Q_,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new qh(this.r*X,this.g*X,this.b*X,this.opacity)},rgb(){return this},clamp(){return new qh(ng(this.r),ng(this.g),ng(this.b),ex(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:iE,formatHex:iE,formatHex8:w9,formatRgb:nE,toString:nE})),o0(Ud,w3,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new Ud(this.h,this.s,this.l*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new Ud(this.h,this.s,this.l*X,this.opacity)},rgb(){var X=this.h%360+(this.h<0)*360,H=isNaN(X)||isNaN(this.s)?0:this.s,g=this.l,x=g+(g<.5?g:1-g)*H,A=2*g-x;return new qh(T3(X>=240?X-240:X+120,A,x),T3(X,A,x),T3(X<120?X+240:X-120,A,x),this.opacity)},clamp(){return new Ud(lE(this.h),tx(this.s),tx(this.l),ex(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let X=ex(this.opacity);return`${X===1?"hsl(":"hsla("}${lE(this.h)}, ${tx(this.s)*100}%, ${tx(this.l)*100}%${X===1?")":`, ${X})`}`}}))}}),M3,E3,mE=Qn({"node_modules/d3-color/src/math.js"(){M3=Math.PI/180,E3=180/Math.PI}});function gE(X){if(X instanceof rv)return new rv(X.l,X.a,X.b,X.opacity);if(X instanceof Mv)return yE(X);X instanceof qh||(X=b3(X));var H=I3(X.r),g=I3(X.g),x=I3(X.b),A=C3((.2225045*H+.7168786*g+.0606169*x)/z3),M,e;return H===g&&g===x?M=e=A:(M=C3((.4360747*H+.3850649*g+.1430804*x)/D3),e=C3((.0139322*H+.0971045*g+.7141733*x)/F3)),new rv(116*A-16,500*(M-A),200*(A-e),X.opacity)}function k3(X,H,g,x){return arguments.length===1?gE(X):new rv(X,H,g,x??1)}function rv(X,H,g,x){this.l=+X,this.a=+H,this.b=+g,this.opacity=+x}function C3(X){return X>_E?Math.pow(X,.3333333333333333):X/B3+O3}function L3(X){return X>ug?X*X*X:B3*(X-O3)}function P3(X){return 255*(X<=.0031308?12.92*X:1.055*Math.pow(X,.4166666666666667)-.055)}function I3(X){return(X/=255)<=.04045?X/12.92:Math.pow((X+.055)/1.055,2.4)}function T9(X){if(X instanceof Mv)return new Mv(X.h,X.c,X.l,X.opacity);if(X instanceof rv||(X=gE(X)),X.a===0&&X.b===0)return new Mv(NaN,0<X.l&&X.l<100?0:NaN,X.l,X.opacity);var H=Math.atan2(X.b,X.a)*E3;return new Mv(H<0?H+360:H,Math.sqrt(X.a*X.a+X.b*X.b),X.l,X.opacity)}function R3(X,H,g,x){return arguments.length===1?T9(X):new Mv(X,H,g,x??1)}function Mv(X,H,g,x){this.h=+X,this.c=+H,this.l=+g,this.opacity=+x}function yE(X){if(isNaN(X.h))return new rv(X.l,0,0,X.opacity);var H=X.h*M3;return new rv(X.l,Math.cos(H)*X.c,Math.sin(H)*X.c,X.opacity)}var b1,D3,z3,F3,O3,ug,B3,_E,A9=Qn({"node_modules/d3-color/src/lab.js"(){x3(),S3(),mE(),b1=18,D3=.96422,z3=1,F3=.82521,O3=4/29,ug=6/29,B3=3*ug*ug,_E=ug*ug*ug,o0(rv,k3,_1(Kv,{brighter(X){return new rv(this.l+b1*(X??1),this.a,this.b,this.opacity)},darker(X){return new rv(this.l-b1*(X??1),this.a,this.b,this.opacity)},rgb(){var X=(this.l+16)/116,H=isNaN(this.a)?X:X+this.a/500,g=isNaN(this.b)?X:X-this.b/200;return H=D3*L3(H),X=z3*L3(X),g=F3*L3(g),new qh(P3(3.1338561*H-1.6168667*X-.4906146*g),P3(-.9787684*H+1.9161415*X+.033454*g),P3(.0719453*H-.2289914*X+1.4052427*g),this.opacity)}})),o0(Mv,R3,_1(Kv,{brighter(X){return new Mv(this.h,this.c,this.l+b1*(X??1),this.opacity)},darker(X){return new Mv(this.h,this.c,this.l-b1*(X??1),this.opacity)},rgb(){return yE(this).rgb()}}))}});function S9(X){if(X instanceof cg)return new cg(X.h,X.s,X.l,X.opacity);X instanceof qh||(X=b3(X));var H=X.r/255,g=X.g/255,x=X.b/255,A=(q3*x+j3*H-V3*g)/(q3+j3-V3),M=x-A,e=(l0*(g-A)-ax*M)/w1,t=Math.sqrt(e*e+M*M)/(l0*A*(1-A)),r=t?Math.atan2(e,M)*E3-120:NaN;return new cg(r<0?r+360:r,t,A,X.opacity)}function N3(X,H,g,x){return arguments.length===1?S9(X):new cg(X,H,g,x??1)}function cg(X,H,g,x){this.h=+X,this.s=+H,this.l=+g,this.opacity=+x}var U3,rx,ax,w1,l0,j3,V3,q3,M9=Qn({"node_modules/d3-color/src/cubehelix.js"(){x3(),S3(),mE(),U3=-.14861,rx=1.78277,ax=-.29227,w1=-.90649,l0=1.97294,j3=l0*w1,V3=l0*rx,q3=rx*ax-w1*U3,o0(cg,N3,_1(Kv,{brighter(X){return X=X==null?sg:Math.pow(sg,X),new cg(this.h,this.s,this.l*X,this.opacity)},darker(X){return X=X==null?Jv:Math.pow(Jv,X),new cg(this.h,this.s,this.l*X,this.opacity)},rgb(){var X=isNaN(this.h)?0:(this.h+120)*M3,H=+this.l,g=isNaN(this.s)?0:this.s*H*(1-H),x=Math.cos(X),A=Math.sin(X);return new qh(255*(H+g*(U3*x+rx*A)),255*(H+g*(ax*x+w1*A)),255*(H+g*(l0*x)),this.opacity)}}))}}),u0=Qn({"node_modules/d3-color/src/index.js"(){S3(),A9(),M9()}});function xE(X,H,g,x,A){var M=X*X,e=M*X;return((1-3*X+3*M-e)*H+(4-6*M+3*e)*g+(1+3*X+3*M-3*e)*x+e*A)/6}function bE(X){var H=X.length-1;return function(g){var x=g<=0?g=0:g>=1?(g=1,H-1):Math.floor(g*H),A=X[x],M=X[x+1],e=x>0?X[x-1]:2*A-M,t=x<H-1?X[x+2]:2*M-A;return xE((g-x/H)*H,e,A,M,t)}}var H3=Qn({"node_modules/d3-interpolate/src/basis.js"(){}});function wE(X){var H=X.length;return function(g){var x=Math.floor(((g%=1)<0?++g:g)*H),A=X[(x+H-1)%H],M=X[x%H],e=X[(x+1)%H],t=X[(x+2)%H];return xE((g-x/H)*H,A,M,e,t)}}var TE=Qn({"node_modules/d3-interpolate/src/basisClosed.js"(){H3()}}),T1,AE=Qn({"node_modules/d3-interpolate/src/constant.js"(){T1=X=>()=>X}});function SE(X,H){return function(g){return X+g*H}}function E9(X,H,g){return X=Math.pow(X,g),H=Math.pow(H,g)-X,g=1/g,function(x){return Math.pow(X+x*H,g)}}function ix(X,H){var g=H-X;return g?SE(X,g>180||g<-180?g-360*Math.round(g/360):g):T1(isNaN(X)?H:X)}function k9(X){return(X=+X)==1?Hh:function(H,g){return g-H?E9(H,g,X):T1(isNaN(H)?g:H)}}function Hh(X,H){var g=H-X;return g?SE(X,g):T1(isNaN(X)?H:X)}var c0=Qn({"node_modules/d3-interpolate/src/color.js"(){AE()}});function ME(X){return function(H){var g=H.length,x=new Array(g),A=new Array(g),M=new Array(g),e,t;for(e=0;e<g;++e)t=Q_(H[e]),x[e]=t.r||0,A[e]=t.g||0,M[e]=t.b||0;return x=X(x),A=X(A),M=X(M),t.opacity=1,function(r){return t.r=x(r),t.g=A(r),t.b=M(r),t+""}}}var nx,EE,kE,CE=Qn({"node_modules/d3-interpolate/src/rgb.js"(){u0(),H3(),TE(),c0(),nx=function X(H){var g=k9(H);function x(A,M){var e=g((A=Q_(A)).r,(M=Q_(M)).r),t=g(A.g,M.g),r=g(A.b,M.b),o=Hh(A.opacity,M.opacity);return function(a){return A.r=e(a),A.g=t(a),A.b=r(a),A.opacity=o(a),A+""}}return x.gamma=X,x}(1),EE=ME(bE),kE=ME(wE)}});function G3(X,H){H||(H=[]);var g=X?Math.min(H.length,X.length):0,x=H.slice(),A;return function(M){for(A=0;A<g;++A)x[A]=X[A]*(1-M)+H[A]*M;return x}}function LE(X){return ArrayBuffer.isView(X)&&!(X instanceof DataView)}var W3=Qn({"node_modules/d3-interpolate/src/numberArray.js"(){}});function C9(X,H){return(LE(H)?G3:PE)(X,H)}function PE(X,H){var g=H?H.length:0,x=X?Math.min(g,X.length):0,A=new Array(x),M=new Array(g),e;for(e=0;e<x;++e)A[e]=ux(X[e],H[e]);for(;e<g;++e)M[e]=H[e];return function(t){for(e=0;e<x;++e)M[e]=A[e](t);return M}}var IE=Qn({"node_modules/d3-interpolate/src/array.js"(){cx(),W3()}});function RE(X,H){var g=new Date;return X=+X,H=+H,function(x){return g.setTime(X*(1-x)+H*x),g}}var DE=Qn({"node_modules/d3-interpolate/src/date.js"(){}});function av(X,H){return X=+X,H=+H,function(g){return X*(1-g)+H*g}}var ox=Qn({"node_modules/d3-interpolate/src/number.js"(){}});function zE(X,H){var g={},x={},A;(X===null||typeof X!="object")&&(X={}),(H===null||typeof H!="object")&&(H={});for(A in H)A in X?g[A]=ux(X[A],H[A]):x[A]=H[A];return function(M){for(A in g)x[A]=g[A](M);return x}}var FE=Qn({"node_modules/d3-interpolate/src/object.js"(){cx()}});function L9(X){return function(){return X}}function P9(X){return function(H){return X(H)+""}}function OE(X,H){var g=sx.lastIndex=lx.lastIndex=0,x,A,M,e=-1,t=[],r=[];for(X=X+"",H=H+"";(x=sx.exec(X))&&(A=lx.exec(H));)(M=A.index)>g&&(M=H.slice(g,M),t[e]?t[e]+=M:t[++e]=M),(x=x[0])===(A=A[0])?t[e]?t[e]+=A:t[++e]=A:(t[++e]=null,r.push({i:e,x:av(x,A)})),g=lx.lastIndex;return g<H.length&&(M=H.slice(g),t[e]?t[e]+=M:t[++e]=M),t.length<2?r[0]?P9(r[0].x):L9(H):(H=r.length,function(o){for(var a=0,i;a<H;++a)t[(i=r[a]).i]=i.x(o);return t.join("")})}var sx,lx,BE=Qn({"node_modules/d3-interpolate/src/string.js"(){ox(),sx=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,lx=new RegExp(sx.source,"g")}});function ux(X,H){var g=typeof H,x;return H==null||g==="boolean"?T1(H):(g==="number"?av:g==="string"?(x=x1(H))?(H=x,nx):OE:H instanceof x1?nx:H instanceof Date?RE:LE(H)?G3:Array.isArray(H)?PE:typeof H.valueOf!="function"&&typeof H.toString!="function"||isNaN(H)?zE:av)(X,H)}var cx=Qn({"node_modules/d3-interpolate/src/value.js"(){u0(),CE(),IE(),DE(),ox(),FE(),BE(),AE(),W3()}});function I9(X){var H=X.length;return function(g){return X[Math.max(0,Math.min(H-1,Math.floor(g*H)))]}}var R9=Qn({"node_modules/d3-interpolate/src/discrete.js"(){}});function D9(X,H){var g=ix(+X,+H);return function(x){var A=g(x);return A-360*Math.floor(A/360)}}var z9=Qn({"node_modules/d3-interpolate/src/hue.js"(){c0()}});function F9(X,H){return X=+X,H=+H,function(g){return Math.round(X*(1-g)+H*g)}}var O9=Qn({"node_modules/d3-interpolate/src/round.js"(){}});function NE(X,H,g,x,A,M){var e,t,r;return(e=Math.sqrt(X*X+H*H))&&(X/=e,H/=e),(r=X*g+H*x)&&(g-=X*r,x-=H*r),(t=Math.sqrt(g*g+x*x))&&(g/=t,x/=t,r/=t),X*x<H*g&&(X=-X,H=-H,r=-r,e=-e),{translateX:A,translateY:M,rotate:Math.atan2(H,X)*Z3,skewX:Math.atan(r)*Z3,scaleX:e,scaleY:t}}var Z3,fx,B9=Qn({"node_modules/d3-interpolate/src/transform/decompose.js"(){Z3=180/Math.PI,fx={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1}}});function N9(X){let H=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(X+"");return H.isIdentity?fx:NE(H.a,H.b,H.c,H.d,H.e,H.f)}function U9(X){return X==null||(hx||(hx=document.createElementNS("http://www.w3.org/2000/svg","g")),hx.setAttribute("transform",X),!(X=hx.transform.baseVal.consolidate()))?fx:(X=X.matrix,NE(X.a,X.b,X.c,X.d,X.e,X.f))}var hx,j9=Qn({"node_modules/d3-interpolate/src/transform/parse.js"(){B9()}});function UE(X,H,g,x){function A(o){return o.length?o.pop()+" ":""}function M(o,a,i,n,s,c){if(o!==i||a!==n){var h=s.push("translate(",null,H,null,g);c.push({i:h-4,x:av(o,i)},{i:h-2,x:av(a,n)})}else(i||n)&&s.push("translate("+i+H+n+g)}function e(o,a,i,n){o!==a?(o-a>180?a+=360:a-o>180&&(o+=360),n.push({i:i.push(A(i)+"rotate(",null,x)-2,x:av(o,a)})):a&&i.push(A(i)+"rotate("+a+x)}function t(o,a,i,n){o!==a?n.push({i:i.push(A(i)+"skewX(",null,x)-2,x:av(o,a)}):a&&i.push(A(i)+"skewX("+a+x)}function r(o,a,i,n,s,c){if(o!==i||a!==n){var h=s.push(A(s)+"scale(",null,",",null,")");c.push({i:h-4,x:av(o,i)},{i:h-2,x:av(a,n)})}else(i!==1||n!==1)&&s.push(A(s)+"scale("+i+","+n+")")}return function(o,a){var i=[],n=[];return o=X(o),a=X(a),M(o.translateX,o.translateY,a.translateX,a.translateY,i,n),e(o.rotate,a.rotate,i,n),t(o.skewX,a.skewX,i,n),r(o.scaleX,o.scaleY,a.scaleX,a.scaleY,i,n),o=a=null,function(s){for(var c=-1,h=n.length,v;++c<h;)i[(v=n[c]).i]=v.x(s);return i.join("")}}}var jE,VE,V9=Qn({"node_modules/d3-interpolate/src/transform/index.js"(){ox(),j9(),jE=UE(N9,"px, ","px)","deg)"),VE=UE(U9,", ",")",")")}});function qE(X){return((X=Math.exp(X))+1/X)/2}function q9(X){return((X=Math.exp(X))-1/X)/2}function H9(X){return((X=Math.exp(2*X))-1)/(X+1)}var HE,GE,G9=Qn({"node_modules/d3-interpolate/src/zoom.js"(){HE=1e-12,GE=function X(H,g,x){function A(M,e){var t=M[0],r=M[1],o=M[2],a=e[0],i=e[1],n=e[2],s=a-t,c=i-r,h=s*s+c*c,v,p;if(h<HE)p=Math.log(n/o)/H,v=function(E){return[t+E*s,r+E*c,o*Math.exp(H*E*p)]};else{var T=Math.sqrt(h),l=(n*n-o*o+x*h)/(2*o*g*T),_=(n*n-o*o-x*h)/(2*n*g*T),w=Math.log(Math.sqrt(l*l+1)-l),S=Math.log(Math.sqrt(_*_+1)-_);p=(S-w)/H,v=function(E){var m=E*p,b=qE(w),d=o/(g*T)*(b*H9(H*m+w)-q9(w));return[t+d*s,r+d*c,o*b/qE(H*m+w)]}}return v.duration=p*1e3*H/Math.SQRT2,v}return A.rho=function(M){var e=Math.max(.001,+M),t=e*e,r=t*t;return X(e,t,r)},A}(Math.SQRT2,2,4)}});function WE(X){return function(H,g){var x=X((H=w3(H)).h,(g=w3(g)).h),A=Hh(H.s,g.s),M=Hh(H.l,g.l),e=Hh(H.opacity,g.opacity);return function(t){return H.h=x(t),H.s=A(t),H.l=M(t),H.opacity=e(t),H+""}}}var ZE,XE,W9=Qn({"node_modules/d3-interpolate/src/hsl.js"(){u0(),c0(),ZE=WE(ix),XE=WE(Hh)}});function Z9(X,H){var g=Hh((X=k3(X)).l,(H=k3(H)).l),x=Hh(X.a,H.a),A=Hh(X.b,H.b),M=Hh(X.opacity,H.opacity);return function(e){return X.l=g(e),X.a=x(e),X.b=A(e),X.opacity=M(e),X+""}}var X9=Qn({"node_modules/d3-interpolate/src/lab.js"(){u0(),c0()}});function YE(X){return function(H,g){var x=X((H=R3(H)).h,(g=R3(g)).h),A=Hh(H.c,g.c),M=Hh(H.l,g.l),e=Hh(H.opacity,g.opacity);return function(t){return H.h=x(t),H.c=A(t),H.l=M(t),H.opacity=e(t),H+""}}}var KE,JE,Y9=Qn({"node_modules/d3-interpolate/src/hcl.js"(){u0(),c0(),KE=YE(ix),JE=YE(Hh)}});function $E(X){return function H(g){g=+g;function x(A,M){var e=X((A=N3(A)).h,(M=N3(M)).h),t=Hh(A.s,M.s),r=Hh(A.l,M.l),o=Hh(A.opacity,M.opacity);return function(a){return A.h=e(a),A.s=t(a),A.l=r(Math.pow(a,g)),A.opacity=o(a),A+""}}return x.gamma=H,x}(1)}var QE,e5,K9=Qn({"node_modules/d3-interpolate/src/cubehelix.js"(){u0(),c0(),QE=$E(ix),e5=$E(Hh)}});function J9(X,H){H===void 0&&(H=X,X=ux);for(var g=0,x=H.length-1,A=H[0],M=new Array(x<0?0:x);g<x;)M[g]=X(A,A=H[++g]);return function(e){var t=Math.max(0,Math.min(x-1,Math.floor(e*=x)));return M[t](e-t)}}var $9=Qn({"node_modules/d3-interpolate/src/piecewise.js"(){cx()}});function Q9(X,H){for(var g=new Array(H),x=0;x<H;++x)g[x]=X(x/(H-1));return g}var eN=Qn({"node_modules/d3-interpolate/src/quantize.js"(){}}),fg={};Ps(fg,{interpolate:()=>ux,interpolateArray:()=>C9,interpolateBasis:()=>bE,interpolateBasisClosed:()=>wE,interpolateCubehelix:()=>QE,interpolateCubehelixLong:()=>e5,interpolateDate:()=>RE,interpolateDiscrete:()=>I9,interpolateHcl:()=>KE,interpolateHclLong:()=>JE,interpolateHsl:()=>ZE,interpolateHslLong:()=>XE,interpolateHue:()=>D9,interpolateLab:()=>Z9,interpolateNumber:()=>av,interpolateNumberArray:()=>G3,interpolateObject:()=>zE,interpolateRgb:()=>nx,interpolateRgbBasis:()=>EE,interpolateRgbBasisClosed:()=>kE,interpolateRound:()=>F9,interpolateString:()=>OE,interpolateTransformCss:()=>jE,interpolateTransformSvg:()=>VE,interpolateZoom:()=>GE,piecewise:()=>J9,quantize:()=>Q9});var f0=Qn({"node_modules/d3-interpolate/src/index.js"(){cx(),IE(),H3(),TE(),DE(),R9(),z9(),ox(),W3(),FE(),O9(),BE(),V9(),G9(),CE(),W9(),X9(),Y9(),K9(),$9(),eN()}}),X3=Ye({"src/traces/sunburst/fill_one.js"(X,H){"use strict";var g=Bo(),x=Fn();H.exports=function(M,e,t,r,o){var a=e.data.data,i=a.i,n=o||a.color;if(i>=0){e.i=a.i;var s=t.marker;s.pattern?(!s.colors||!s.pattern.shape)&&(s.color=n,e.color=n):(s.color=n,e.color=n),g.pointStyle(M,t,r,e)}else x.fill(M,n)}}}),t5=Ye({"src/traces/sunburst/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._sunburstlayer.selectAll(".trace");M(o,a,"sunburst"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),$v=Ye({"src/traces/sunburst/helpers.js"(X){"use strict";var H=ta(),g=Fn(),x=Kd(),A=eg();X.findEntryWithLevel=function(r,o){var a;return o&&r.eachAfter(function(i){if(X.getPtId(i)===o)return a=i.copy()}),a||r},X.findEntryWithChild=function(r,o){var a;return r.eachAfter(function(i){for(var n=i.children||[],s=0;s<n.length;s++){var c=n[s];if(X.getPtId(c)===o)return a=i.copy()}}),a||r},X.isEntry=function(r){return!r.parent},X.isLeaf=function(r){return!r.children},X.getPtId=function(r){return r.data.data.id},X.getPtLabel=function(r){return r.data.data.label},X.getValue=function(r){return r.value},X.isHierarchyRoot=function(r){return t(r)===""},X.setSliceCursor=function(r,o,a){var i=a.isTransitioning;if(!i){var n=r.datum();i=a.hideOnRoot&&X.isHierarchyRoot(n)||a.hideOnLeaves&&X.isLeaf(n)}x(r,i?null:"pointer")};function M(r,o,a){return{color:X.getOutsideTextFontKey("color",r,o,a),family:X.getOutsideTextFontKey("family",r,o,a),size:X.getOutsideTextFontKey("size",r,o,a),weight:X.getOutsideTextFontKey("weight",r,o,a),style:X.getOutsideTextFontKey("style",r,o,a),variant:X.getOutsideTextFontKey("variant",r,o,a),textcase:X.getOutsideTextFontKey("textcase",r,o,a),lineposition:X.getOutsideTextFontKey("lineposition",r,o,a),shadow:X.getOutsideTextFontKey("shadow",r,o,a)}}function e(r,o,a,i){var n=(i||{}).onPathbar,s=o.data.data,c=s.i,h=H.castOption(r,c,(n?"pathbar.textfont":"insidetextfont")+".color");return!h&&r._input.textfont&&(h=H.castOption(r._input,c,"textfont.color")),{color:h||g.contrast(s.color),family:X.getInsideTextFontKey("family",r,o,a,i),size:X.getInsideTextFontKey("size",r,o,a,i),weight:X.getInsideTextFontKey("weight",r,o,a,i),style:X.getInsideTextFontKey("style",r,o,a,i),variant:X.getInsideTextFontKey("variant",r,o,a,i),textcase:X.getInsideTextFontKey("textcase",r,o,a,i),lineposition:X.getInsideTextFontKey("lineposition",r,o,a,i),shadow:X.getInsideTextFontKey("shadow",r,o,a,i)}}X.getInsideTextFontKey=function(r,o,a,i,n){var s=(n||{}).onPathbar,c=s?"pathbar.textfont":"insidetextfont",h=a.data.data.i;return H.castOption(o,h,c+"."+r)||H.castOption(o,h,"textfont."+r)||i.size},X.getOutsideTextFontKey=function(r,o,a,i){var n=a.data.data.i;return H.castOption(o,n,"outsidetextfont."+r)||H.castOption(o,n,"textfont."+r)||i.size},X.isOutsideText=function(r,o){return!r._hasColorscale&&X.isHierarchyRoot(o)},X.determineTextFont=function(r,o,a,i){return X.isOutsideText(r,o)?M(r,o,a):e(r,o,a,i)},X.hasTransition=function(r){return!!(r&&r.duration>0)},X.getMaxDepth=function(r){return r.maxdepth>=0?r.maxdepth:1/0},X.isHeader=function(r,o){return!(X.isLeaf(r)||r.depth===o._maxDepth-1)};function t(r){return r.data.data.pid}X.getParent=function(r,o){return X.findEntryWithLevel(r,t(o))},X.listPath=function(r,o){var a=r.parent;if(!a)return[];var i=o?[a.data[o]]:[a];return X.listPath(a,o).concat(i)},X.getPath=function(r){return X.listPath(r,"label").join("/")+"/"},X.formatValue=A.formatPieValue,X.formatPercent=function(r,o){var a=H.formatPercent(r,0);return a==="0%"&&(a=A.formatPiePercent(r,o)),a}}}),px=Ye({"src/traces/sunburst/fx.js"(X,H){"use strict";var g=_n(),x=Hn(),A=Qp().appendArrayPointValue,M=Lc(),e=ta(),t=$y(),r=$v(),o=eg(),a=o.formatPieValue;H.exports=function(s,c,h,v,p){var T=v[0],l=T.trace,_=T.hierarchy,w=l.type==="sunburst",S=l.type==="treemap"||l.type==="icicle";"_hasHoverLabel"in l||(l._hasHoverLabel=!1),"_hasHoverEvent"in l||(l._hasHoverEvent=!1);var E=function(d){var u=h._fullLayout;if(!(h._dragging||u.hovermode===!1)){var y=h._fullData[l.index],f=d.data.data,P=f.i,L=r.isHierarchyRoot(d),z=r.getParent(_,d),F=r.getValue(d),B=function(ee){return e.castOption(y,P,ee)},O=B("hovertemplate"),I=M.castHoverinfo(y,u,P),N=u.separators,U;if(O||I&&I!=="none"&&I!=="skip"){var W,Q;w&&(W=T.cx+d.pxmid[0]*(1-d.rInscribed),Q=T.cy+d.pxmid[1]*(1-d.rInscribed)),S&&(W=d._hoverX,Q=d._hoverY);var ue={},se=[],he=[],G=function(ee){return se.indexOf(ee)!==-1};I&&(se=I==="all"?y._module.attributes.hoverinfo.flags:I.split("+")),ue.label=f.label,G("label")&&ue.label&&he.push(ue.label),f.hasOwnProperty("v")&&(ue.value=f.v,ue.valueLabel=a(ue.value,N),G("value")&&he.push(ue.valueLabel)),ue.currentPath=d.currentPath=r.getPath(d.data),G("current path")&&!L&&he.push(ue.currentPath);var $,J=[],Z=function(){J.indexOf($)===-1&&(he.push($),J.push($))};ue.percentParent=d.percentParent=F/r.getValue(z),ue.parent=d.parentString=r.getPtLabel(z),G("percent parent")&&($=r.formatPercent(ue.percentParent,N)+" of "+ue.parent,Z()),ue.percentEntry=d.percentEntry=F/r.getValue(c),ue.entry=d.entry=r.getPtLabel(c),G("percent entry")&&!L&&!d.onPathbar&&($=r.formatPercent(ue.percentEntry,N)+" of "+ue.entry,Z()),ue.percentRoot=d.percentRoot=F/r.getValue(_),ue.root=d.root=r.getPtLabel(_),G("percent root")&&!L&&($=r.formatPercent(ue.percentRoot,N)+" of "+ue.root,Z()),ue.text=B("hovertext")||B("text"),G("text")&&($=ue.text,e.isValidTextValue($)&&he.push($)),U=[i(d,y,p.eventDataKeys)];var re={trace:y,y:Q,_x0:d._x0,_x1:d._x1,_y0:d._y0,_y1:d._y1,text:he.join("<br>"),name:O||G("name")?y.name:void 0,color:B("hoverlabel.bgcolor")||f.color,borderColor:B("hoverlabel.bordercolor"),fontFamily:B("hoverlabel.font.family"),fontSize:B("hoverlabel.font.size"),fontColor:B("hoverlabel.font.color"),fontWeight:B("hoverlabel.font.weight"),fontStyle:B("hoverlabel.font.style"),fontVariant:B("hoverlabel.font.variant"),nameLength:B("hoverlabel.namelength"),textAlign:B("hoverlabel.align"),hovertemplate:O,hovertemplateLabels:ue,eventData:U};w&&(re.x0=W-d.rInscribed*d.rpx1,re.x1=W+d.rInscribed*d.rpx1,re.idealAlign=d.pxmid[0]<0?"left":"right"),S&&(re.x=W,re.idealAlign=W<0?"left":"right");var ne=[];M.loneHover(re,{container:u._hoverlayer.node(),outerContainer:u._paper.node(),gd:h,inOut_bbox:ne}),U[0].bbox=ne[0],l._hasHoverLabel=!0}if(S){var j=s.select("path.surface");p.styleOne(j,d,y,h,{hovered:!0})}l._hasHoverEvent=!0,h.emit("plotly_hover",{points:U||[i(d,y,p.eventDataKeys)],event:g.event})}},m=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=g.select(this).datum();if(l._hasHoverEvent&&(d.originalEvent=g.event,h.emit("plotly_unhover",{points:[i(f,y,p.eventDataKeys)],event:g.event}),l._hasHoverEvent=!1),l._hasHoverLabel&&(M.loneUnhover(u._hoverlayer.node()),l._hasHoverLabel=!1),S){var P=s.select("path.surface");p.styleOne(P,f,y,h,{hovered:!1})}},b=function(d){var u=h._fullLayout,y=h._fullData[l.index],f=w&&(r.isHierarchyRoot(d)||r.isLeaf(d)),P=r.getPtId(d),L=r.isEntry(d)?r.findEntryWithChild(_,P):r.findEntryWithLevel(_,P),z=r.getPtId(L),F={points:[i(d,y,p.eventDataKeys)],event:g.event};f||(F.nextLevel=z);var B=t.triggerHandler(h,"plotly_"+l.type+"click",F);if(B!==!1&&u.hovermode&&(h._hoverdata=[i(d,y,p.eventDataKeys)],M.click(h,g.event)),!f&&B!==!1&&!h._dragging&&!h._transitioning){x.call("_storeDirectGUIEdit",y,u._tracePreGUI[y.uid],{level:y.level});var O={data:[{level:z}],traces:[l.index]},I={frame:{redraw:!1,duration:p.transitionTime},transition:{duration:p.transitionTime,easing:p.transitionEasing},mode:"immediate",fromcurrent:!0};M.loneUnhover(u._hoverlayer.node()),x.call("animate",h,O,I)}};s.on("mouseover",E),s.on("mouseout",m),s.on("click",b)};function i(n,s,c){for(var h=n.data.data,v={curveNumber:s.index,pointNumber:h.i,data:s._input,fullData:s},p=0;p<c.length;p++){var T=c[p];T in n&&(v[T]=n[T])}return"parentString"in n&&!r.isHierarchyRoot(n)&&(v.parent=n.parentString),A(v,s,h.i),v}}}),Y3=Ye({"src/traces/sunburst/plot.js"(X){"use strict";var H=_n(),g=K_(),x=(f0(),Hf(fg)).interpolate,A=Bo(),M=ta(),e=jl(),t=wp(),r=t.recordMinTextSize,o=t.clearMinTextSize,a=_3(),i=eg().getRotationAngle,n=a.computeTransform,s=a.transformInsideText,c=t5().styleOne,h=Nd().resizeText,v=px(),p=QM(),T=$v();X.plot=function(m,b,d,u){var y=m._fullLayout,f=y._sunburstlayer,P,L,z=!d,F=!y.uniformtext.mode&&T.hasTransition(d);if(o("sunburst",y),P=f.selectAll("g.trace.sunburst").data(b,function(O){return O[0].trace.uid}),P.enter().append("g").classed("trace",!0).classed("sunburst",!0).attr("stroke-linejoin","round"),P.order(),F){u&&(L=u());var B=H.transition().duration(d.duration).ease(d.easing).each("end",function(){L&&L()}).each("interrupt",function(){L&&L()});B.each(function(){f.selectAll("g.trace").each(function(O){l(m,O,this,d)})})}else P.each(function(O){l(m,O,this,d)}),y.uniformtext.mode&&h(m,y._sunburstlayer.selectAll(".trace"),"sunburst");z&&P.exit().remove()};function l(m,b,d,u){var y=m._context.staticPlot,f=m._fullLayout,P=!f.uniformtext.mode&&T.hasTransition(u),L=H.select(d),z=L.selectAll("g.slice"),F=b[0],B=F.trace,O=F.hierarchy,I=T.findEntryWithLevel(O,B.level),N=T.getMaxDepth(B),U=f._size,W=B.domain,Q=U.w*(W.x[1]-W.x[0]),ue=U.h*(W.y[1]-W.y[0]),se=.5*Math.min(Q,ue),he=F.cx=U.l+U.w*(W.x[1]+W.x[0])/2,G=F.cy=U.t+U.h*(1-W.y[0])-ue/2;if(!I)return z.remove();var $=null,J={};P&&z.each(function(ce){J[T.getPtId(ce)]={rpx0:ce.rpx0,rpx1:ce.rpx1,x0:ce.x0,x1:ce.x1,transform:ce.transform},!$&&T.isEntry(ce)&&($=ce)});var Z=_(I).descendants(),re=I.height+1,ne=0,j=N;F.hasMultipleRoots&&T.isHierarchyRoot(I)&&(Z=Z.slice(1),re-=1,ne=1,j+=1),Z=Z.filter(function(ce){return ce.y1<=j});var ee=i(B.rotation);ee&&Z.forEach(function(ce){ce.x0+=ee,ce.x1+=ee});var ie=Math.min(re,N),fe=function(ce){return(ce-ne)/ie*se},be=function(ce,ze){return[ce*Math.cos(ze),-ce*Math.sin(ze)]},Ae=function(ce){return M.pathAnnulus(ce.rpx0,ce.rpx1,ce.x0,ce.x1,he,G)},Be=function(ce){return he+S(ce)[0]*(ce.transform.rCenter||0)+(ce.transform.x||0)},Ie=function(ce){return G+S(ce)[1]*(ce.transform.rCenter||0)+(ce.transform.y||0)};z=z.data(Z,T.getPtId),z.enter().append("g").classed("slice",!0),P?z.exit().transition().each(function(){var ce=H.select(this),ze=ce.select("path.surface");ze.transition().attrTween("d",function(nt){var Qe=et(nt);return function(Ct){return Ae(Qe(Ct))}});var tt=ce.select("g.slicetext");tt.attr("opacity",0)}).remove():z.exit().remove(),z.order();var Ze=null;if(P&&$){var at=T.getPtId($);z.each(function(ce){Ze===null&&T.getPtId(ce)===at&&(Ze=ce.x1)})}var it=z;P&&(it=it.transition().each("end",function(){var ce=H.select(this);T.setSliceCursor(ce,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:!1})})),it.each(function(ce){var ze=H.select(this),tt=M.ensureSingle(ze,"path","surface",function(jt){jt.style("pointer-events",y?"none":"all")});ce.rpx0=fe(ce.y0),ce.rpx1=fe(ce.y1),ce.xmid=(ce.x0+ce.x1)/2,ce.pxmid=be(ce.rpx1,ce.xmid),ce.midangle=-(ce.xmid-Math.PI/2),ce.startangle=-(ce.x0-Math.PI/2),ce.stopangle=-(ce.x1-Math.PI/2),ce.halfangle=.5*Math.min(M.angleDelta(ce.x0,ce.x1)||Math.PI,Math.PI),ce.ring=1-ce.rpx0/ce.rpx1,ce.rInscribed=w(ce,B),P?tt.transition().attrTween("d",function(jt){var ur=lt(jt);return function(ar){return Ae(ur(ar))}}):tt.attr("d",Ae),ze.call(v,I,m,b,{eventDataKeys:p.eventDataKeys,transitionTime:p.CLICK_TRANSITION_TIME,transitionEasing:p.CLICK_TRANSITION_EASING}).call(T.setSliceCursor,m,{hideOnRoot:!0,hideOnLeaves:!0,isTransitioning:m._transitioning}),tt.call(c,ce,B,m);var nt=M.ensureSingle(ze,"g","slicetext"),Qe=M.ensureSingle(nt,"text","",function(jt){jt.attr("data-notex",1)}),Ct=M.ensureUniformFontSize(m,T.determineTextFont(B,ce,f.font));Qe.text(X.formatSliceLabel(ce,I,B,b,f)).classed("slicetext",!0).attr("text-anchor","middle").call(A.font,Ct).call(e.convertToTspans,m);var St=A.bBox(Qe.node());ce.transform=s(St,ce,F),ce.transform.targetX=Be(ce),ce.transform.targetY=Ie(ce);var Ot=function(jt,ur){var ar=jt.transform;return n(ar,ur),ar.fontSize=Ct.size,r(B.type,ar,f),M.getTextTransform(ar)};P?Qe.transition().attrTween("transform",function(jt){var ur=Me(jt);return function(ar){return Ot(ur(ar),St)}}):Qe.attr("transform",Ot(ce,St))});function et(ce){var ze=T.getPtId(ce),tt=J[ze],nt=J[T.getPtId(I)],Qe;if(nt){var Ct=(ce.x1>nt.x1?2*Math.PI:0)+ee;Qe=ce.rpx1<nt.rpx1?{x0:ce.x0,x1:ce.x1,rpx0:0,rpx1:0}:{x0:Ct,x1:Ct,rpx0:ce.rpx0,rpx1:ce.rpx1}}else{var St,Ot=T.getPtId(ce.parent);z.each(function(vr){if(T.getPtId(vr)===Ot)return St=vr});var jt=St.children,ur;jt.forEach(function(vr,_r){if(T.getPtId(vr)===ze)return ur=_r});var ar=jt.length,Cr=x(St.x0,St.x1);Qe={rpx0:se,rpx1:se,x0:Cr(ur/ar),x1:Cr((ur+1)/ar)}}return x(tt,Qe)}function lt(ce){var ze=J[T.getPtId(ce)],tt,nt={x0:ce.x0,x1:ce.x1,rpx0:ce.rpx0,rpx1:ce.rpx1};if(ze)tt=ze;else if($)if(ce.parent)if(Ze){var Qe=(ce.x1>Ze?2*Math.PI:0)+ee;tt={x0:Qe,x1:Qe}}else tt={rpx0:se,rpx1:se},M.extendFlat(tt,ge(ce));else tt={rpx0:0,rpx1:0};else tt={x0:ee,x1:ee};return x(tt,nt)}function Me(ce){var ze=J[T.getPtId(ce)],tt,nt=ce.transform;if(ze)tt=ze;else if(tt={rpx1:ce.rpx1,transform:{textPosAngle:nt.textPosAngle,scale:0,rotate:nt.rotate,rCenter:nt.rCenter,x:nt.x,y:nt.y}},$)if(ce.parent)if(Ze){var Qe=ce.x1>Ze?2*Math.PI:0;tt.x0=tt.x1=Qe}else M.extendFlat(tt,ge(ce));else tt.x0=tt.x1=ee;else tt.x0=tt.x1=ee;var Ct=x(tt.transform.textPosAngle,ce.transform.textPosAngle),St=x(tt.rpx1,ce.rpx1),Ot=x(tt.x0,ce.x0),jt=x(tt.x1,ce.x1),ur=x(tt.transform.scale,nt.scale),ar=x(tt.transform.rotate,nt.rotate),Cr=nt.rCenter===0?3:tt.transform.rCenter===0?1/3:1,vr=x(tt.transform.rCenter,nt.rCenter),_r=function(yt){return vr(Math.pow(yt,Cr))};return function(yt){var Fe=St(yt),Ke=Ot(yt),Ne=jt(yt),Ee=_r(yt),Ve=be(Fe,(Ke+Ne)/2),ke=Ct(yt),Te={pxmid:Ve,rpx1:Fe,transform:{textPosAngle:ke,rCenter:Ee,x:nt.x,y:nt.y}};return r(B.type,nt,f),{transform:{targetX:Be(Te),targetY:Ie(Te),scale:ur(yt),rotate:ar(yt),rCenter:Ee}}}}function ge(ce){var ze=ce.parent,tt=J[T.getPtId(ze)],nt={};if(tt){var Qe=ze.children,Ct=Qe.indexOf(ce),St=Qe.length,Ot=x(tt.x0,tt.x1);nt.x0=Ot(Ct/St),nt.x1=Ot(Ct/St)}else nt.x0=nt.x1=0;return nt}}function _(m){return g.partition().size([2*Math.PI,m.height+1])(m)}X.formatSliceLabel=function(m,b,d,u,y){var f=d.texttemplate,P=d.textinfo;if(!f&&(!P||P==="none"))return"";var L=y.separators,z=u[0],F=m.data.data,B=z.hierarchy,O=T.isHierarchyRoot(m),I=T.getParent(B,m),N=T.getValue(m);if(!f){var U=P.split("+"),W=function(ne){return U.indexOf(ne)!==-1},Q=[],ue;if(W("label")&&F.label&&Q.push(F.label),F.hasOwnProperty("v")&&W("value")&&Q.push(T.formatValue(F.v,L)),!O){W("current path")&&Q.push(T.getPath(m.data));var se=0;W("percent parent")&&se++,W("percent entry")&&se++,W("percent root")&&se++;var he=se>1;if(se){var G,$=function(ne){ue=T.formatPercent(G,L),he&&(ue+=" of "+ne),Q.push(ue)};W("percent parent")&&!O&&(G=N/T.getValue(I),$("parent")),W("percent entry")&&(G=N/T.getValue(b),$("entry")),W("percent root")&&(G=N/T.getValue(B),$("root"))}}return W("text")&&(ue=M.castOption(d,F.i,"text"),M.isValidTextValue(ue)&&Q.push(ue)),Q.join("<br>")}var J=M.castOption(d,F.i,"texttemplate");if(!J)return"";var Z={};F.label&&(Z.label=F.label),F.hasOwnProperty("v")&&(Z.value=F.v,Z.valueLabel=T.formatValue(F.v,L)),Z.currentPath=T.getPath(m.data),O||(Z.percentParent=N/T.getValue(I),Z.percentParentLabel=T.formatPercent(Z.percentParent,L),Z.parent=T.getPtLabel(I)),Z.percentEntry=N/T.getValue(b),Z.percentEntryLabel=T.formatPercent(Z.percentEntry,L),Z.entry=T.getPtLabel(b),Z.percentRoot=N/T.getValue(B),Z.percentRootLabel=T.formatPercent(Z.percentRoot,L),Z.root=T.getPtLabel(B),F.hasOwnProperty("color")&&(Z.color=F.color);var re=M.castOption(d,F.i,"text");return(M.isValidTextValue(re)||re==="")&&(Z.text=re),Z.customdata=M.castOption(d,F.i,"customdata"),M.texttemplateString(J,Z,y._d3locale,Z,d._meta||{})};function w(m){return m.rpx0===0&&M.isFullCircle([m.x0,m.x1])?1:Math.max(0,Math.min(1/(1+1/Math.sin(m.halfangle)),m.ring/2))}function S(m){return E(m.rpx1,m.transform.textPosAngle)}function E(m,b){return[m*Math.sin(b),-m*Math.cos(b)]}}}),tN=Ye({"src/traces/sunburst/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"sunburst",basePlotModule:g9(),categories:[],animatable:!0,attributes:Y_(),layoutAttributes:eE(),supplyDefaults:y9(),supplyLayoutDefaults:_9(),calc:J_().calc,crossTraceCalc:J_().crossTraceCalc,plot:Y3().plot,style:t5().style,colorbar:cp(),meta:{}}}}),rN=Ye({"lib/sunburst.js"(X,H){"use strict";H.exports=tN()}}),aN=Ye({"src/traces/treemap/base_plot.js"(X){"use strict";var H=Gu();X.name="treemap",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),h0=Ye({"src/traces/treemap/constants.js"(X,H){"use strict";H.exports={CLICK_TRANSITION_TIME:750,CLICK_TRANSITION_EASING:"poly",eventDataKeys:["currentPath","root","entry","percentRoot","percentEntry","percentParent"],gapWithPathbar:1}}}),K3=Ye({"src/traces/treemap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=h0(),o=Oo().extendFlat,a=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.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:o({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:t.marker.colors,pattern:a,depthfade:{valType:"enumerated",values:[!0,!1,"reversed"],editType:"style"},line:t.marker.line,cornerradius:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},A("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:o({},e.textfont,{}),editType:"calc"},text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:r.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:r.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:o({},e.outsidetextfont,{}),textposition:{valType:"enumerated",values:["top left","top center","top right","middle left","middle center","middle right","bottom left","bottom center","bottom right"],dflt:"top left",editType:"plot"},sort:e.sort,root:t.root,domain:M({name:"treemap",trace:!0,editType:"calc"})}}}),r5=Ye({"src/traces/treemap/layout_attributes.js"(X,H){"use strict";H.exports={treemapcolorway:{valType:"colorlist",editType:"calc"},extendtreemapcolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),iN=Ye({"src/traces/treemap/defaults.js"(X,H){"use strict";var g=ta(),x=K3(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(y,f){return g.coerce(s,c,x,y,f)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth");var w=p("tiling.packing");w==="squarify"&&p("tiling.squarifyratio"),p("tiling.flip"),p("tiling.pad");var S=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(S)?"text+label":"label"),p("hovertext"),p("hovertemplate");var E=p("pathbar.visible"),m="auto";e(s,c,v,p,m,{hasPathbar:E,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition");var b=c.textposition.indexOf("bottom")!==-1;r(s,c,v,p);var d=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;d?i(s,c,v,p,{prefix:"marker.",cLetter:"c"}):p("marker.depthfade",!(c.marker.colors||[]).length);var u=c.textfont.size*2;p("marker.pad.t",b?u/4:u),p("marker.pad.l",u/4),p("marker.pad.r",u/4),p("marker.pad.b",b?u:u/4),p("marker.cornerradius"),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},E&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),nN=Ye({"src/traces/treemap/layout_defaults.js"(X,H){"use strict";var g=ta(),x=r5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("treemapcolorway",e.colorway),t("extendtreemapcolors")}}}),a5=Ye({"src/traces/treemap/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("treemap",g)}}}),i5=Ye({"src/traces/treemap/flip_tree.js"(X,H){"use strict";H.exports=function g(x,A,M){var e;M.swapXY&&(e=x.x0,x.x0=x.y0,x.y0=e,e=x.x1,x.x1=x.y1,x.y1=e),M.flipX&&(e=x.x0,x.x0=A[0]-x.x1,x.x1=A[0]-e),M.flipY&&(e=x.y0,x.y0=A[1]-x.y1,x.y1=A[1]-e);var t=x.children;if(t)for(var r=0;r<t.length;r++)g(t[r],A,M)}}}),n5=Ye({"src/traces/treemap/partition.js"(X,H){"use strict";var g=K_(),x=i5();H.exports=function(e,t,r){var o=r.flipX,a=r.flipY,i=r.packing==="dice-slice",n=r.pad[a?"bottom":"top"],s=r.pad[o?"right":"left"],c=r.pad[o?"left":"right"],h=r.pad[a?"top":"bottom"],v;i&&(v=s,s=n,n=v,v=c,c=h,h=v);var p=g.treemap().tile(A(r.packing,r.squarifyratio)).paddingInner(r.pad.inner).paddingLeft(s).paddingRight(c).paddingTop(n).paddingBottom(h).size(i?[t[1],t[0]]:t)(e);return(i||o||a)&&x(p,t,{swapXY:i,flipX:o,flipY:a}),p};function A(M,e){switch(M){case"squarify":return g.treemapSquarify.ratio(e);case"binary":return g.treemapBinary;case"dice":return g.treemapDice;case"slice":return g.treemapSlice;default:return g.treemapSliceDice}}}}),J3=Ye({"src/traces/treemap/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=$v(),e=wp().resizeText,t=X3();function r(a){var i=a._fullLayout._treemaplayer.selectAll(".trace");e(a,i,"treemap"),i.each(function(n){var s=g.select(this),c=n[0],h=c.trace;s.style("opacity",h.opacity),s.selectAll("path.surface").each(function(v){g.select(this).call(o,v,h,a,{hovered:!1})})})}function o(a,i,n,s,c){var h=(c||{}).hovered,v=i.data.data,p=v.i,T,l,_=v.color,w=M.isHierarchyRoot(i),S=1;if(h)T=n._hovered.marker.line.color,l=n._hovered.marker.line.width;else if(w&&_===n.root.color)S=100,T="rgba(0,0,0,0)",l=0;else if(T=A.castOption(n,p,"marker.line.color")||x.defaultLine,l=A.castOption(n,p,"marker.line.width")||0,!n._hasColorscale&&!i.onPathbar){var E=n.marker.depthfade;if(E){var m=x.combine(x.addOpacity(n._backgroundColor,.75),_),b;if(E===!0){var d=M.getMaxDepth(n);isFinite(d)?M.isLeaf(i)?b=0:b=n._maxVisibleLayers-(i.data.depth-n._entryDepth):b=i.data.height+1}else b=i.data.depth-n._entryDepth,n._atRootLevel||b++;if(b>0)for(var u=0;u<b;u++){var y=.5*u/b;_=x.combine(x.addOpacity(m,y),_)}}}a.call(t,i,n,s,_).style("stroke-width",l).call(x.stroke,T).style("opacity",S)}H.exports={style:r,styleOne:o}}}),oN=Ye({"src/traces/treemap/draw_ancestors.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=n5(),t=J3().styleOne,r=h0(),o=$v(),a=px(),i=!0;H.exports=function(s,c,h,v,p){var T=p.barDifY,l=p.width,_=p.height,w=p.viewX,S=p.viewY,E=p.pathSlice,m=p.toMoveInsideSlice,b=p.strTransform,d=p.hasTransition,u=p.handleSlicesExit,y=p.makeUpdateSliceInterpolator,f=p.makeUpdateTextInterpolator,P={},L=s._context.staticPlot,z=s._fullLayout,F=c[0],B=F.trace,O=F.hierarchy,I=l/B._entryDepth,N=o.listPath(h.data,"id"),U=e(O.copy(),[l,_],{packing:"dice",pad:{inner:0,top:0,left:0,right:0,bottom:0}}).descendants();U=U.filter(function(Q){var ue=N.indexOf(Q.data.id);return ue===-1?!1:(Q.x0=I*ue,Q.x1=I*(ue+1),Q.y0=T,Q.y1=T+_,Q.onPathbar=!0,!0)}),U.reverse(),v=v.data(U,o.getPtId),v.enter().append("g").classed("pathbar",!0),u(v,i,P,[l,_],E),v.order();var W=v;d&&(W=W.transition().each("end",function(){var Q=g.select(this);o.setSliceCursor(Q,s,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:!1})})),W.each(function(Q){Q._x0=w(Q.x0),Q._x1=w(Q.x1),Q._y0=S(Q.y0),Q._y1=S(Q.y1),Q._hoverX=w(Q.x1-Math.min(l,_)/2),Q._hoverY=S(Q.y1-_/2);var ue=g.select(this),se=x.ensureSingle(ue,"path","surface",function(J){J.style("pointer-events",L?"none":"all")});d?se.transition().attrTween("d",function(J){var Z=y(J,i,P,[l,_]);return function(re){return E(Z(re))}}):se.attr("d",E),ue.call(a,h,s,c,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,s,{hideOnRoot:!1,hideOnLeaves:!1,isTransitioning:s._transitioning}),se.call(t,Q,B,s,{hovered:!1}),Q._text=(o.getPtLabel(Q)||"").split("<br>").join(" ")||"";var he=x.ensureSingle(ue,"g","slicetext"),G=x.ensureSingle(he,"text","",function(J){J.attr("data-notex",1)}),$=x.ensureUniformFontSize(s,o.determineTextFont(B,Q,z.font,{onPathbar:!0}));G.text(Q._text||" ").classed("slicetext",!0).attr("text-anchor","start").call(A.font,$).call(M.convertToTspans,s),Q.textBB=A.bBox(G.node()),Q.transform=m(Q,{fontSize:$.size,onPathbar:!0}),Q.transform.fontSize=$.size,d?G.transition().attrTween("transform",function(J){var Z=f(J,i,P,[l,_]);return function(re){return b(Z(re))}}):G.attr("transform",b(Q))})}}}),sN=Ye({"src/traces/treemap/plot_one.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolate,A=$v(),M=ta(),e=Qg().TEXTPAD,t=e0(),r=t.toMoveInsideBar,o=wp(),a=o.recordMinTextSize,i=h0(),n=oN();function s(c){return A.isHierarchyRoot(c)?"":A.getPtId(c)}H.exports=function(h,v,p,T,l){var _=h._fullLayout,w=v[0],S=w.trace,E=S.type,m=E==="icicle",b=w.hierarchy,d=A.findEntryWithLevel(b,S.level),u=g.select(p),y=u.selectAll("g.pathbar"),f=u.selectAll("g.slice");if(!d){y.remove(),f.remove();return}var P=A.isHierarchyRoot(d),L=!_.uniformtext.mode&&A.hasTransition(T),z=A.getMaxDepth(S),F=function(vr){return vr.data.depth-d.data.depth<z},B=_._size,O=S.domain,I=B.w*(O.x[1]-O.x[0]),N=B.h*(O.y[1]-O.y[0]),U=I,W=S.pathbar.thickness,Q=S.marker.line.width+i.gapWithPathbar,ue=S.pathbar.visible?S.pathbar.side.indexOf("bottom")>-1?N+Q:-(W+Q):0,se={x0:U,x1:U,y0:ue,y1:ue+W},he=function(vr,_r,yt){var Fe=S.tiling.pad,Ke=function(ke){return ke-Fe<=_r.x0},Ne=function(ke){return ke+Fe>=_r.x1},Ee=function(ke){return ke-Fe<=_r.y0},Ve=function(ke){return ke+Fe>=_r.y1};return vr.x0===_r.x0&&vr.x1===_r.x1&&vr.y0===_r.y0&&vr.y1===_r.y1?{x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1}:{x0:Ke(vr.x0-Fe)?0:Ne(vr.x0-Fe)?yt[0]:vr.x0,x1:Ke(vr.x1+Fe)?0:Ne(vr.x1+Fe)?yt[0]:vr.x1,y0:Ee(vr.y0-Fe)?0:Ve(vr.y0-Fe)?yt[1]:vr.y0,y1:Ee(vr.y1+Fe)?0:Ve(vr.y1+Fe)?yt[1]:vr.y1}},G=null,$={},J={},Z=null,re=function(vr,_r){return _r?$[s(vr)]:J[s(vr)]},ne=function(vr,_r,yt,Fe){if(_r)return $[s(b)]||se;var Ke=J[S.level]||yt;return F(vr)?he(vr,Ke,Fe):{}};w.hasMultipleRoots&&P&&z++,S._maxDepth=z,S._backgroundColor=_.paper_bgcolor,S._entryDepth=d.data.depth,S._atRootLevel=P;var j=-I/2+B.l+B.w*(O.x[1]+O.x[0])/2,ee=-N/2+B.t+B.h*(1-(O.y[1]+O.y[0])/2),ie=function(vr){return j+vr},fe=function(vr){return ee+vr},be=fe(0),Ae=ie(0),Be=function(vr){return Ae+vr},Ie=function(vr){return be+vr};function Ze(vr,_r){return vr+","+_r}var at=Be(0),it=function(vr){vr.x=Math.max(at,vr.x)},et=S.pathbar.edgeshape,lt=function(vr){var _r=Be(Math.max(Math.min(vr.x0,vr.x0),0)),yt=Be(Math.min(Math.max(vr.x1,vr.x1),U)),Fe=Ie(vr.y0),Ke=Ie(vr.y1),Ne=W/2,Ee={},Ve={};Ee.x=_r,Ve.x=yt,Ee.y=Ve.y=(Fe+Ke)/2;var ke={x:_r,y:Fe},Te={x:yt,y:Fe},Le={x:yt,y:Ke},rt={x:_r,y:Ke};return et===">"?(ke.x-=Ne,Te.x-=Ne,Le.x-=Ne,rt.x-=Ne):et==="/"?(Le.x-=Ne,rt.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="\\"?(ke.x-=Ne,Te.x-=Ne,Ee.x-=Ne/2,Ve.x-=Ne/2):et==="<"&&(Ee.x-=Ne,Ve.x-=Ne),it(ke),it(rt),it(Ee),it(Te),it(Le),it(Ve),"M"+Ze(ke.x,ke.y)+"L"+Ze(Te.x,Te.y)+"L"+Ze(Ve.x,Ve.y)+"L"+Ze(Le.x,Le.y)+"L"+Ze(rt.x,rt.y)+"L"+Ze(Ee.x,Ee.y)+"Z"},Me=S[m?"tiling":"marker"].pad,ge=function(vr){return S.textposition.indexOf(vr)!==-1},ce=ge("top"),ze=ge("left"),tt=ge("right"),nt=ge("bottom"),Qe=function(vr){var _r=ie(vr.x0),yt=ie(vr.x1),Fe=fe(vr.y0),Ke=fe(vr.y1),Ne=yt-_r,Ee=Ke-Fe;if(!Ne||!Ee)return"";var Ve=S.marker.cornerradius||0,ke=Math.min(Ve,Ne/2,Ee/2);ke&&vr.data&&vr.data.data&&vr.data.data.label&&(ce&&(ke=Math.min(ke,Me.t)),ze&&(ke=Math.min(ke,Me.l)),tt&&(ke=Math.min(ke,Me.r)),nt&&(ke=Math.min(ke,Me.b)));var Te=function(Le,rt){return ke?"a"+Ze(ke,ke)+" 0 0 1 "+Ze(Le,rt):""};return"M"+Ze(_r,Fe+ke)+Te(ke,-ke)+"L"+Ze(yt-ke,Fe)+Te(ke,ke)+"L"+Ze(yt,Ke-ke)+Te(-ke,ke)+"L"+Ze(_r+ke,Ke)+Te(-ke,-ke)+"Z"},Ct=function(vr,_r){var yt=vr.x0,Fe=vr.x1,Ke=vr.y0,Ne=vr.y1,Ee=vr.textBB,Ve=ce||_r.isHeader&&!nt,ke=Ve?"start":nt?"end":"middle",Te=ge("right"),Le=ge("left")||_r.onPathbar,rt=Le?-1:Te?1:0;if(_r.isHeader){if(yt+=(m?Me:Me.l)-e,Fe-=(m?Me:Me.r)-e,yt>=Fe){var dt=(yt+Fe)/2;yt=dt,Fe=dt}var xt;nt?(xt=Ne-(m?Me:Me.b),Ke<xt&&xt<Ne&&(Ke=xt)):(xt=Ke+(m?Me:Me.t),Ke<xt&&xt<Ne&&(Ne=xt))}var It=r(yt,Fe,Ke,Ne,Ee,{isHorizontal:!1,constrained:!0,angle:0,anchor:ke,leftToRight:rt});return It.fontSize=_r.fontSize,It.targetX=ie(It.targetX),It.targetY=fe(It.targetY),isNaN(It.targetX)||isNaN(It.targetY)?{}:(yt!==Fe&&Ke!==Ne&&a(S.type,It,_),{scale:It.scale,rotate:It.rotate,textX:It.textX,textY:It.textY,anchorX:It.anchorX,anchorY:It.anchorY,targetX:It.targetX,targetY:It.targetY})},St=function(vr,_r){for(var yt,Fe=0,Ke=vr;!yt&&Fe<z;)Fe++,Ke=Ke.parent,Ke?yt=re(Ke,_r):Fe=z;return yt||{}},Ot=function(vr,_r,yt,Fe){var Ke=re(vr,_r),Ne;if(_r)Ne=se;else{var Ee=re(d,_r);Ee?Ne=he(vr,Ee,Fe):Ne={}}return x(Ke,Ne)},jt=function(vr,_r,yt,Fe,Ke){var Ne=re(vr,_r),Ee;if(Ne)Ee=Ne;else if(_r)Ee=se;else if(G)if(vr.parent){var Ve=Z||yt;Ve&&!_r?Ee=he(vr,Ve,Fe):(Ee={},M.extendFlat(Ee,St(vr,_r)))}else Ee=M.extendFlat({},vr),m&&(Ke.orientation==="h"?Ke.flipX?Ee.x0=vr.x1:Ee.x1=0:Ke.flipY?Ee.y0=vr.y1:Ee.y1=0);else Ee={};return x(Ee,{x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1})},ur=function(vr,_r,yt,Fe){var Ke=re(vr,_r),Ne={},Ee=ne(vr,_r,yt,Fe);M.extendFlat(Ne,{transform:Ct({x0:Ee.x0,x1:Ee.x1,y0:Ee.y0,y1:Ee.y1,textBB:vr.textBB,_text:vr._text},{isHeader:A.isHeader(vr,S)})}),Ke?Ne=Ke:vr.parent&&M.extendFlat(Ne,St(vr,_r));var Ve=vr.transform;return vr.x0!==vr.x1&&vr.y0!==vr.y1&&a(S.type,Ve,_),x(Ne,{transform:{scale:Ve.scale,rotate:Ve.rotate,textX:Ve.textX,textY:Ve.textY,anchorX:Ve.anchorX,anchorY:Ve.anchorY,targetX:Ve.targetX,targetY:Ve.targetY}})},ar=function(vr,_r,yt,Fe,Ke){var Ne=Fe[0],Ee=Fe[1];L?vr.exit().transition().each(function(){var Ve=g.select(this),ke=Ve.select("path.surface");ke.transition().attrTween("d",function(Le){var rt=Ot(Le,_r,yt,[Ne,Ee]);return function(dt){return Ke(rt(dt))}});var Te=Ve.select("g.slicetext");Te.attr("opacity",0)}).remove():vr.exit().remove()},Cr=function(vr){var _r=vr.transform;return vr.x0!==vr.x1&&vr.y0!==vr.y1&&a(S.type,_r,_),M.getTextTransform({textX:_r.textX,textY:_r.textY,anchorX:_r.anchorX,anchorY:_r.anchorY,targetX:_r.targetX,targetY:_r.targetY,scale:_r.scale,rotate:_r.rotate})};L&&(y.each(function(vr){$[s(vr)]={x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1},vr.transform&&($[s(vr)].transform={textX:vr.transform.textX,textY:vr.transform.textY,anchorX:vr.transform.anchorX,anchorY:vr.transform.anchorY,targetX:vr.transform.targetX,targetY:vr.transform.targetY,scale:vr.transform.scale,rotate:vr.transform.rotate})}),f.each(function(vr){J[s(vr)]={x0:vr.x0,x1:vr.x1,y0:vr.y0,y1:vr.y1},vr.transform&&(J[s(vr)].transform={textX:vr.transform.textX,textY:vr.transform.textY,anchorX:vr.transform.anchorX,anchorY:vr.transform.anchorY,targetX:vr.transform.targetX,targetY:vr.transform.targetY,scale:vr.transform.scale,rotate:vr.transform.rotate}),!G&&A.isEntry(vr)&&(G=vr)})),Z=l(h,v,d,f,{width:I,height:N,viewX:ie,viewY:fe,pathSlice:Qe,toMoveInsideSlice:Ct,prevEntry:G,makeUpdateSliceInterpolator:jt,makeUpdateTextInterpolator:ur,handleSlicesExit:ar,hasTransition:L,strTransform:Cr}),S.pathbar.visible?n(h,v,d,y,{barDifY:ue,width:U,height:W,viewX:Be,viewY:Ie,pathSlice:lt,toMoveInsideSlice:Ct,makeUpdateSliceInterpolator:jt,makeUpdateTextInterpolator:ur,handleSlicesExit:ar,hasTransition:L,strTransform:Cr}):y.remove()}}}),o5=Ye({"src/traces/treemap/draw.js"(X,H){"use strict";var g=_n(),x=$v(),A=wp(),M=A.clearMinTextSize,e=Nd().resizeText,t=sN();H.exports=function(o,a,i,n,s){var c=s.type,h=s.drawDescendants,v=o._fullLayout,p=v["_"+c+"layer"],T,l,_=!i;if(M(c,v),T=p.selectAll("g.trace."+c).data(a,function(S){return S[0].trace.uid}),T.enter().append("g").classed("trace",!0).classed(c,!0),T.order(),!v.uniformtext.mode&&x.hasTransition(i)){n&&(l=n());var w=g.transition().duration(i.duration).ease(i.easing).each("end",function(){l&&l()}).each("interrupt",function(){l&&l()});w.each(function(){p.selectAll("g.trace").each(function(S){t(o,S,this,i,h)})})}else T.each(function(S){t(o,S,this,i,h)}),v.uniformtext.mode&&e(o,p.selectAll(".trace"),c);_&&T.exit().remove()}}}),lN=Ye({"src/traces/treemap/draw_descendants.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=n5(),t=J3().styleOne,r=h0(),o=$v(),a=px(),i=Y3().formatSliceLabel,n=!1;H.exports=function(c,h,v,p,T){var l=T.width,_=T.height,w=T.viewX,S=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,d=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,B=h[0],O=B.trace,I=O.textposition.indexOf("left")!==-1,N=O.textposition.indexOf("right")!==-1,U=O.textposition.indexOf("bottom")!==-1,W=!U&&!O.marker.pad.t||U&&!O.marker.pad.b,Q=e(v,[l,_],{packing:O.tiling.packing,squarifyratio:O.tiling.squarifyratio,flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1,pad:{inner:O.tiling.pad,top:O.marker.pad.t,left:O.marker.pad.l,right:O.marker.pad.r,bottom:O.marker.pad.b}}),ue=Q.descendants(),se=1/0,he=-1/0;ue.forEach(function(re){var ne=re.depth;ne>=O._maxDepth?(re.x0=re.x1=(re.x0+re.x1)/2,re.y0=re.y1=(re.y0+re.y1)/2):(se=Math.min(se,ne),he=Math.max(he,ne))}),p=p.data(ue,o.getPtId),O._maxVisibleLayers=isFinite(he)?he-se+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var G=null;if(d&&P){var $=o.getPtId(P);p.each(function(re){G===null&&o.getPtId(re)===$&&(G={x0:re.x0,x1:re.x1,y0:re.y0,y1:re.y1})})}var J=function(){return G||{x0:0,x1:l,y0:0,y1:_}},Z=p;return d&&(Z=Z.transition().each("end",function(){var re=g.select(this);o.setSliceCursor(re,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),Z.each(function(re){var ne=o.isHeader(re,O);re._x0=w(re.x0),re._x1=w(re.x1),re._y0=S(re.y0),re._y1=S(re.y1),re._hoverX=w(re.x1-O.marker.pad.r),re._hoverY=S(U?re.y1-O.marker.pad.b/2:re.y0+O.marker.pad.t/2);var j=g.select(this),ee=x.ensureSingle(j,"path","surface",function(Ie){Ie.style("pointer-events",z?"none":"all")});d?ee.transition().attrTween("d",function(Ie){var Ze=y(Ie,n,J(),[l,_]);return function(at){return E(Ze(at))}}):ee.attr("d",E),j.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ee.call(t,re,O,c,{hovered:!1}),re.x0===re.x1||re.y0===re.y1?re._text="":ne?re._text=W?"":o.getPtLabel(re)||"":re._text=i(re,v,O,h,F)||"";var ie=x.ensureSingle(j,"g","slicetext"),fe=x.ensureSingle(ie,"text","",function(Ie){Ie.attr("data-notex",1)}),be=x.ensureUniformFontSize(c,o.determineTextFont(O,re,F.font)),Ae=re._text||" ",Be=ne&&Ae.indexOf("<br>")===-1;fe.text(Ae).classed("slicetext",!0).attr("text-anchor",N?"end":I||Be?"start":"middle").call(A.font,be).call(M.convertToTspans,c),re.textBB=A.bBox(fe.node()),re.transform=m(re,{fontSize:be.size,isHeader:ne}),re.transform.fontSize=be.size,d?fe.transition().attrTween("transform",function(Ie){var Ze=f(Ie,n,J(),[l,_]);return function(at){return b(Ze(at))}}):fe.attr("transform",b(re))}),G}}}),uN=Ye({"src/traces/treemap/plot.js"(X,H){"use strict";var g=o5(),x=lN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"treemap",drawDescendants:x})}}}),cN=Ye({"src/traces/treemap/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"treemap",basePlotModule:aN(),categories:[],animatable:!0,attributes:K3(),layoutAttributes:r5(),supplyDefaults:iN(),supplyLayoutDefaults:nN(),calc:a5().calc,crossTraceCalc:a5().crossTraceCalc,plot:uN(),style:J3().style,colorbar:cp(),meta:{}}}}),fN=Ye({"lib/treemap.js"(X,H){"use strict";H.exports=cN()}}),hN=Ye({"src/traces/icicle/base_plot.js"(X){"use strict";var H=Gu();X.name="icicle",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),s5=Ye({"src/traces/icicle/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=tu(),M=Wu().attributes,e=i0(),t=Y_(),r=K3(),o=h0(),a=Oo().extendFlat,i=Uh().pattern;H.exports={labels:t.labels,parents:t.parents,values:t.values,branchvalues:t.branchvalues,count:t.count,level:t.level,maxdepth:t.maxdepth,tiling:{orientation:{valType:"enumerated",values:["v","h"],dflt:"h",editType:"plot"},flip:r.tiling.flip,pad:{valType:"number",min:0,dflt:0,editType:"plot"},editType:"calc"},marker:a({colors:t.marker.colors,line:t.marker.line,pattern:i,editType:"calc"},A("marker",{colorAttr:"colors",anim:!1})),leaf:t.leaf,pathbar:r.pathbar,text:e.text,textinfo:t.textinfo,texttemplate:x({editType:"plot"},{keys:o.eventDataKeys.concat(["label","value"])}),hovertext:e.hovertext,hoverinfo:t.hoverinfo,hovertemplate:g({},{keys:o.eventDataKeys}),textfont:e.textfont,insidetextfont:e.insidetextfont,outsidetextfont:r.outsidetextfont,textposition:r.textposition,sort:e.sort,root:t.root,domain:M({name:"icicle",trace:!0,editType:"calc"})}}}),l5=Ye({"src/traces/icicle/layout_attributes.js"(X,H){"use strict";H.exports={iciclecolorway:{valType:"colorlist",editType:"calc"},extendiciclecolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),pN=Ye({"src/traces/icicle/defaults.js"(X,H){"use strict";var g=ta(),x=s5(),A=Fn(),M=Wu().defaults,e=gd().handleText,t=Qg().TEXTPAD,r=n0().handleMarkerDefaults,o=Su(),a=o.hasColorscale,i=o.handleDefaults;H.exports=function(s,c,h,v){function p(b,d){return g.coerce(s,c,x,b,d)}var T=p("labels"),l=p("parents");if(!T||!T.length||!l||!l.length){c.visible=!1;return}var _=p("values");_&&_.length?p("branchvalues"):p("count"),p("level"),p("maxdepth"),p("tiling.orientation"),p("tiling.flip"),p("tiling.pad");var w=p("text");p("texttemplate"),c.texttemplate||p("textinfo",g.isArrayOrTypedArray(w)?"text+label":"label"),p("hovertext"),p("hovertemplate");var S=p("pathbar.visible"),E="auto";e(s,c,v,p,E,{hasPathbar:S,moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1}),p("textposition"),r(s,c,v,p);var m=c._hasColorscale=a(s,"marker","colors")||(s.marker||{}).coloraxis;m&&i(s,c,v,p,{prefix:"marker.",cLetter:"c"}),p("leaf.opacity",m?1:.7),c._hovered={marker:{line:{width:2,color:A.contrast(v.paper_bgcolor)}}},S&&(p("pathbar.thickness",c.pathbar.textfont.size+2*t),p("pathbar.side"),p("pathbar.edgeshape")),p("sort"),p("root.color"),M(c,v,p),c._length=null}}}),dN=Ye({"src/traces/icicle/layout_defaults.js"(X,H){"use strict";var g=ta(),x=l5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("iciclecolorway",e.colorway),t("extendiciclecolors")}}}),u5=Ye({"src/traces/icicle/calc.js"(X){"use strict";var H=J_();X.calc=function(g,x){return H.calc(g,x)},X.crossTraceCalc=function(g){return H._runCrossTraceCalc("icicle",g)}}}),vN=Ye({"src/traces/icicle/partition.js"(X,H){"use strict";var g=K_(),x=i5();H.exports=function(M,e,t){var r=t.flipX,o=t.flipY,a=t.orientation==="h",i=t.maxDepth,n=e[0],s=e[1];i&&(n=(M.height+1)*e[0]/Math.min(M.height+1,i),s=(M.height+1)*e[1]/Math.min(M.height+1,i));var c=g.partition().padding(t.pad.inner).size(a?[e[1],n]:[e[0],s])(M);return(a||r||o)&&x(c,e,{swapXY:a,flipX:r,flipY:o}),c}}}),c5=Ye({"src/traces/icicle/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=ta(),M=wp().resizeText,e=X3();function t(o){var a=o._fullLayout._iciclelayer.selectAll(".trace");M(o,a,"icicle"),a.each(function(i){var n=g.select(this),s=i[0],c=s.trace;n.style("opacity",c.opacity),n.selectAll("path.surface").each(function(h){g.select(this).call(r,h,c,o)})})}function r(o,a,i,n){var s=a.data.data,c=!a.children,h=s.i,v=A.castOption(i,h,"marker.line.color")||x.defaultLine,p=A.castOption(i,h,"marker.line.width")||0;o.call(e,a,i,n).style("stroke-width",p).call(x.stroke,v).style("opacity",c?i.leaf.opacity:null)}H.exports={style:t,styleOne:r}}}),mN=Ye({"src/traces/icicle/draw_descendants.js"(X,H){"use strict";var g=_n(),x=ta(),A=Bo(),M=jl(),e=vN(),t=c5().styleOne,r=h0(),o=$v(),a=px(),i=Y3().formatSliceLabel,n=!1;H.exports=function(c,h,v,p,T){var l=T.width,_=T.height,w=T.viewX,S=T.viewY,E=T.pathSlice,m=T.toMoveInsideSlice,b=T.strTransform,d=T.hasTransition,u=T.handleSlicesExit,y=T.makeUpdateSliceInterpolator,f=T.makeUpdateTextInterpolator,P=T.prevEntry,L={},z=c._context.staticPlot,F=c._fullLayout,B=h[0],O=B.trace,I=O.textposition.indexOf("left")!==-1,N=O.textposition.indexOf("right")!==-1,U=O.textposition.indexOf("bottom")!==-1,W=e(v,[l,_],{flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1,orientation:O.tiling.orientation,pad:{inner:O.tiling.pad},maxDepth:O._maxDepth}),Q=W.descendants(),ue=1/0,se=-1/0;Q.forEach(function(Z){var re=Z.depth;re>=O._maxDepth?(Z.x0=Z.x1=(Z.x0+Z.x1)/2,Z.y0=Z.y1=(Z.y0+Z.y1)/2):(ue=Math.min(ue,re),se=Math.max(se,re))}),p=p.data(Q,o.getPtId),O._maxVisibleLayers=isFinite(se)?se-ue+1:0,p.enter().append("g").classed("slice",!0),u(p,n,L,[l,_],E),p.order();var he=null;if(d&&P){var G=o.getPtId(P);p.each(function(Z){he===null&&o.getPtId(Z)===G&&(he={x0:Z.x0,x1:Z.x1,y0:Z.y0,y1:Z.y1})})}var $=function(){return he||{x0:0,x1:l,y0:0,y1:_}},J=p;return d&&(J=J.transition().each("end",function(){var Z=g.select(this);o.setSliceCursor(Z,c,{hideOnRoot:!0,hideOnLeaves:!1,isTransitioning:!1})})),J.each(function(Z){Z._x0=w(Z.x0),Z._x1=w(Z.x1),Z._y0=S(Z.y0),Z._y1=S(Z.y1),Z._hoverX=w(Z.x1-O.tiling.pad),Z._hoverY=S(U?Z.y1-O.tiling.pad/2:Z.y0+O.tiling.pad/2);var re=g.select(this),ne=x.ensureSingle(re,"path","surface",function(fe){fe.style("pointer-events",z?"none":"all")});d?ne.transition().attrTween("d",function(fe){var be=y(fe,n,$(),[l,_],{orientation:O.tiling.orientation,flipX:O.tiling.flip.indexOf("x")>-1,flipY:O.tiling.flip.indexOf("y")>-1});return function(Ae){return E(be(Ae))}}):ne.attr("d",E),re.call(a,v,c,h,{styleOne:t,eventDataKeys:r.eventDataKeys,transitionTime:r.CLICK_TRANSITION_TIME,transitionEasing:r.CLICK_TRANSITION_EASING}).call(o.setSliceCursor,c,{isTransitioning:c._transitioning}),ne.call(t,Z,O,c,{hovered:!1}),Z.x0===Z.x1||Z.y0===Z.y1?Z._text="":Z._text=i(Z,v,O,h,F)||"";var j=x.ensureSingle(re,"g","slicetext"),ee=x.ensureSingle(j,"text","",function(fe){fe.attr("data-notex",1)}),ie=x.ensureUniformFontSize(c,o.determineTextFont(O,Z,F.font));ee.text(Z._text||" ").classed("slicetext",!0).attr("text-anchor",N?"end":I?"start":"middle").call(A.font,ie).call(M.convertToTspans,c),Z.textBB=A.bBox(ee.node()),Z.transform=m(Z,{fontSize:ie.size}),Z.transform.fontSize=ie.size,d?ee.transition().attrTween("transform",function(fe){var be=f(fe,n,$(),[l,_]);return function(Ae){return b(be(Ae))}}):ee.attr("transform",b(Z))}),he}}}),gN=Ye({"src/traces/icicle/plot.js"(X,H){"use strict";var g=o5(),x=mN();H.exports=function(M,e,t,r){return g(M,e,t,r,{type:"icicle",drawDescendants:x})}}}),yN=Ye({"src/traces/icicle/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"icicle",basePlotModule:hN(),categories:[],animatable:!0,attributes:s5(),layoutAttributes:l5(),supplyDefaults:pN(),supplyLayoutDefaults:dN(),calc:u5().calc,crossTraceCalc:u5().crossTraceCalc,plot:gN(),style:c5().style,colorbar:cp(),meta:{}}}}),_N=Ye({"lib/icicle.js"(X,H){"use strict";H.exports=yN()}}),xN=Ye({"src/traces/funnelarea/base_plot.js"(X){"use strict";var H=Gu();X.name="funnelarea",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),f5=Ye({"src/traces/funnelarea/attributes.js"(X,H){"use strict";var g=i0(),x=Pl(),A=Wu().attributes,M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=Oo().extendFlat;H.exports={labels:g.labels,label0:g.label0,dlabel:g.dlabel,values:g.values,marker:{colors:g.marker.colors,line:{color:t({},g.marker.line.color,{dflt:null}),width:t({},g.marker.line.width,{dflt:1}),editType:"calc"},pattern:g.marker.pattern,editType:"calc"},text:g.text,hovertext:g.hovertext,scalegroup:t({},g.scalegroup,{}),textinfo:t({},g.textinfo,{flags:["label","text","value","percent"]}),texttemplate:e({editType:"plot"},{keys:["label","color","value","text","percent"]}),hoverinfo:t({},x.hoverinfo,{flags:["label","text","value","percent","name"]}),hovertemplate:M({},{keys:["label","color","value","text","percent"]}),textposition:t({},g.textposition,{values:["inside","none"],dflt:"inside"}),textfont:g.textfont,insidetextfont:g.insidetextfont,title:{text:g.title.text,font:g.title.font,position:t({},g.title.position,{values:["top left","top center","top right"],dflt:"top center"}),editType:"plot"},domain:A({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"}}}}),h5=Ye({"src/traces/funnelarea/layout_attributes.js"(X,H){"use strict";var g=y3().hiddenlabels;H.exports={hiddenlabels:g,funnelareacolorway:{valType:"colorlist",editType:"calc"},extendfunnelareacolors:{valType:"boolean",dflt:!0,editType:"calc"}}}}),bN=Ye({"src/traces/funnelarea/defaults.js"(X,H){"use strict";var g=ta(),x=f5(),A=Wu().defaults,M=gd().handleText,e=n0().handleLabelsAndValues,t=n0().handleMarkerDefaults;H.exports=function(o,a,i,n){function s(E,m){return g.coerce(o,a,x,E,m)}var c=s("labels"),h=s("values"),v=e(c,h),p=v.len;if(a._hasLabels=v.hasLabels,a._hasValues=v.hasValues,!a._hasLabels&&a._hasValues&&(s("label0"),s("dlabel")),!p){a.visible=!1;return}a._length=p,t(o,a,n,s),s("scalegroup");var T=s("text"),l=s("texttemplate"),_;if(l||(_=s("textinfo",Array.isArray(T)?"text+percent":"percent")),s("hovertext"),s("hovertemplate"),l||_&&_!=="none"){var w=s("textposition");M(o,a,n,s,w,{moduleHasSelected:!1,moduleHasUnselected:!1,moduleHasConstrain:!1,moduleHasCliponaxis:!1,moduleHasTextangle:!1,moduleHasInsideanchor:!1})}else _==="none"&&s("textposition","none");A(a,n,s);var S=s("title.text");S&&(s("title.position"),g.coerceFont(s,"title.font",n.font)),s("aspectratio"),s("baseratio")}}}),wN=Ye({"src/traces/funnelarea/layout_defaults.js"(X,H){"use strict";var g=ta(),x=h5();H.exports=function(M,e){function t(r,o){return g.coerce(M,e,x,r,o)}t("hiddenlabels"),t("funnelareacolorway",e.colorway),t("extendfunnelareacolors")}}}),p5=Ye({"src/traces/funnelarea/calc.js"(X,H){"use strict";var g=y1();function x(M,e){return g.calc(M,e)}function A(M){g.crossTraceCalc(M,{type:"funnelarea"})}H.exports={calc:x,crossTraceCalc:A}}}),TN=Ye({"src/traces/funnelarea/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=ta(),M=A.strScale,e=A.strTranslate,t=jl(),r=e0(),o=r.toMoveInsideBar,a=wp(),i=a.recordMinTextSize,n=a.clearMinTextSize,s=eg(),c=_3(),h=c.attachFxHandlers,v=c.determineInsideTextFont,p=c.layoutAreas,T=c.prerenderTitles,l=c.positionTitleOutside,_=c.formatSliceLabel;H.exports=function(b,d){var u=b._context.staticPlot,y=b._fullLayout;n("funnelarea",y),T(d,b),p(d,y._size),A.makeTraceGroups(y._funnelarealayer,d,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace;E(f),P.each(function(){var F=g.select(this).selectAll("g.slice").data(f);F.enter().append("g").classed("slice",!0),F.exit().remove(),F.each(function(O,I){if(O.hidden){g.select(this).selectAll("path,g").remove();return}O.pointNumber=O.i,O.curveNumber=z.index;var N=L.cx,U=L.cy,W=g.select(this),Q=W.selectAll("path.surface").data([O]);Q.enter().append("path").classed("surface",!0).style({"pointer-events":u?"none":"all"}),W.call(h,b,f);var ue="M"+(N+O.TR[0])+","+(U+O.TR[1])+w(O.TR,O.BR)+w(O.BR,O.BL)+w(O.BL,O.TL)+"Z";Q.attr("d",ue),_(b,O,L);var se=s.castOption(z.textposition,O.pts),he=W.selectAll("g.slicetext").data(O.text&&se!=="none"?[0]:[]);he.enter().append("g").classed("slicetext",!0),he.exit().remove(),he.each(function(){var G=A.ensureSingle(g.select(this),"text","",function(ie){ie.attr("data-notex",1)}),$=A.ensureUniformFontSize(b,v(z,O,y.font));G.text(O.text).attr({class:"slicetext",transform:"","text-anchor":"middle"}).call(x.font,$).call(t.convertToTspans,b);var J=x.bBox(G.node()),Z,re,ne,j=Math.min(O.BL[1],O.BR[1])+U,ee=Math.max(O.TL[1],O.TR[1])+U;re=Math.max(O.TL[0],O.BL[0])+N,ne=Math.min(O.TR[0],O.BR[0])+N,Z=o(re,ne,j,ee,J,{isHorizontal:!0,constrained:!0,angle:0,anchor:"middle"}),Z.fontSize=$.size,i(z.type,Z,y),f[I].transform=Z,A.setTransormAndDisplay(G,Z)})});var B=g.select(this).selectAll("g.titletext").data(z.title.text?[0]:[]);B.enter().append("g").classed("titletext",!0),B.exit().remove(),B.each(function(){var O=A.ensureSingle(g.select(this),"text","",function(U){U.attr("data-notex",1)}),I=z.title.text;z._meta&&(I=A.templateString(I,z._meta)),O.text(I).attr({class:"titletext",transform:"","text-anchor":"middle"}).call(x.font,z.title.font).call(t.convertToTspans,b);var N=l(L,y._size);O.attr("transform",e(N.x,N.y)+M(Math.min(1,N.scale))+e(N.tx,N.ty))})})})};function w(m,b){var d=b[0]-m[0],u=b[1]-m[1];return"l"+d+","+u}function S(m,b){return[.5*(m[0]+b[0]),.5*(m[1]+b[1])]}function E(m){if(!m.length)return;var b=m[0],d=b.trace,u=d.aspectratio,y=d.baseratio;y>.999&&(y=.999);var f=Math.pow(y,2),P=b.vTotal,L=P*f/(1-f),z=P,F=L/P;function B(){var fe=Math.sqrt(F);return{x:fe,y:-fe}}function O(){var fe=B();return[fe.x,fe.y]}var I,N=[];N.push(O());var U,W;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){var Q=W.v/z;F+=Q,N.push(O())}var ue=1/0,se=-1/0;for(U=0;U<N.length;U++)I=N[U],ue=Math.min(ue,I[1]),se=Math.max(se,I[1]);for(U=0;U<N.length;U++)N[U][1]-=(se+ue)/2;var he=N[N.length-1][0],G=b.r,$=(se-ue)/2,J=G/he,Z=G/$*u;for(b.r=Z*$,U=0;U<N.length;U++)N[U][0]*=J,N[U][1]*=Z;I=N[0];var re=[-I[0],I[1]],ne=[I[0],I[1]],j=0;for(U=m.length-1;U>-1;U--)if(W=m[U],!W.hidden){j+=1;var ee=N[j][0],ie=N[j][1];W.TL=[-ee,ie],W.TR=[ee,ie],W.BL=re,W.BR=ne,W.pxmid=S(W.TR,W.BR),re=W.TL,ne=W.TR}}}}),AN=Ye({"src/traces/funnelarea/style.js"(X,H){"use strict";var g=_n(),x=a1(),A=wp().resizeText;H.exports=function(e){var t=e._fullLayout._funnelarealayer.selectAll(".trace");A(e,t,"funnelarea"),t.each(function(r){var o=r[0],a=o.trace,i=g.select(this);i.style({opacity:a.opacity}),i.selectAll("path.surface").each(function(n){g.select(this).call(x,n,a,e)})})}}}),SN=Ye({"src/traces/funnelarea/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"funnelarea",basePlotModule:xN(),categories:["pie-like","funnelarea","showLegend"],attributes:f5(),layoutAttributes:h5(),supplyDefaults:bN(),supplyLayoutDefaults:wN(),calc:p5().calc,crossTraceCalc:p5().crossTraceCalc,plot:TN(),style:AN(),styleOne:a1(),meta:{}}}}),MN=Ye({"lib/funnelarea.js"(X,H){"use strict";H.exports=SN()}}),Gh=Ye({"stackgl_modules/index.js"(X,H){(function(){var g={1964:function(e,t,r){e.exports={alpha_shape:r(3502),convex_hull:r(7352),delaunay_triangulate:r(7642),gl_cone3d:r(6405),gl_error3d:r(9165),gl_line3d:r(5714),gl_mesh3d:r(7201),gl_plot3d:r(4100),gl_scatter3d:r(8418),gl_streamtube3d:r(7815),gl_surface3d:r(9499),ndarray:r(9618),ndarray_linear_interpolate:r(4317)}},4793:function(e,t,r){"use strict";var o;function a(ke,Te){if(!(ke instanceof Te))throw new TypeError("Cannot call a class as a function")}function i(ke,Te){for(var Le=0;Le<Te.length;Le++){var rt=Te[Le];rt.enumerable=rt.enumerable||!1,rt.configurable=!0,"value"in rt&&(rt.writable=!0),Object.defineProperty(ke,s(rt.key),rt)}}function n(ke,Te,Le){return Te&&i(ke.prototype,Te),Le&&i(ke,Le),Object.defineProperty(ke,"prototype",{writable:!1}),ke}function s(ke){var Te=c(ke,"string");return S(Te)=="symbol"?Te:Te+""}function c(ke,Te){if(S(ke)!="object"||!ke)return ke;var Le=ke[Symbol.toPrimitive];if(Le!==void 0){var rt=Le.call(ke,Te||"default");if(S(rt)!="object")return rt;throw new TypeError("@@toPrimitive must return a primitive value.")}return(Te==="string"?String:Number)(ke)}function h(ke,Te,Le){return Te=l(Te),v(ke,T()?Reflect.construct(Te,Le||[],l(ke).constructor):Te.apply(ke,Le))}function v(ke,Te){if(Te&&(S(Te)=="object"||typeof Te=="function"))return Te;if(Te!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return p(ke)}function p(ke){if(ke===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return ke}function T(){try{var ke=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(T=function(){return!!ke})()}function l(ke){return l=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(Te){return Te.__proto__||Object.getPrototypeOf(Te)},l(ke)}function _(ke,Te){if(typeof Te!="function"&&Te!==null)throw new TypeError("Super expression must either be null or a function");ke.prototype=Object.create(Te&&Te.prototype,{constructor:{value:ke,writable:!0,configurable:!0}}),Object.defineProperty(ke,"prototype",{writable:!1}),Te&&w(ke,Te)}function w(ke,Te){return w=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(Le,rt){return Le.__proto__=rt,Le},w(ke,Te)}function S(ke){"@babel/helpers - typeof";return S=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Te){return typeof Te}:function(Te){return Te&&typeof Symbol=="function"&&Te.constructor===Symbol&&Te!==Symbol.prototype?"symbol":typeof Te},S(ke)}var E=r(7507),m=r(3778),b=typeof Symbol=="function"&&typeof Symbol.for=="function"?Symbol.for("nodejs.util.inspect.custom"):null;t.hp=f,o=Q,t.IS=50;var d=2147483647;o=d,f.TYPED_ARRAY_SUPPORT=u(),!f.TYPED_ARRAY_SUPPORT&&typeof console<"u"&&typeof console.error=="function"&&console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support.");function u(){try{var ke=new Uint8Array(1),Te={foo:function(){return 42}};return Object.setPrototypeOf(Te,Uint8Array.prototype),Object.setPrototypeOf(ke,Te),ke.foo()===42}catch{return!1}}Object.defineProperty(f.prototype,"parent",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.buffer}}),Object.defineProperty(f.prototype,"offset",{enumerable:!0,get:function(){if(f.isBuffer(this))return this.byteOffset}});function y(ke){if(ke>d)throw new RangeError('The value "'+ke+'" is invalid for option "size"');var Te=new Uint8Array(ke);return Object.setPrototypeOf(Te,f.prototype),Te}function f(ke,Te,Le){if(typeof ke=="number"){if(typeof Te=="string")throw new TypeError('The "string" argument must be of type string. Received type number');return F(ke)}return P(ke,Te,Le)}f.poolSize=8192;function P(ke,Te,Le){if(typeof ke=="string")return B(ke,Te);if(ArrayBuffer.isView(ke))return I(ke);if(ke==null)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke));if(Fe(ke,ArrayBuffer)||ke&&Fe(ke.buffer,ArrayBuffer)||typeof SharedArrayBuffer<"u"&&(Fe(ke,SharedArrayBuffer)||ke&&Fe(ke.buffer,SharedArrayBuffer)))return N(ke,Te,Le);if(typeof ke=="number")throw new TypeError('The "value" argument must not be of type number. Received type number');var rt=ke.valueOf&&ke.valueOf();if(rt!=null&&rt!==ke)return f.from(rt,Te,Le);var dt=U(ke);if(dt)return dt;if(typeof Symbol<"u"&&Symbol.toPrimitive!=null&&typeof ke[Symbol.toPrimitive]=="function")return f.from(ke[Symbol.toPrimitive]("string"),Te,Le);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+S(ke))}f.from=function(ke,Te,Le){return P(ke,Te,Le)},Object.setPrototypeOf(f.prototype,Uint8Array.prototype),Object.setPrototypeOf(f,Uint8Array);function L(ke){if(typeof ke!="number")throw new TypeError('"size" argument must be of type number');if(ke<0)throw new RangeError('The value "'+ke+'" is invalid for option "size"')}function z(ke,Te,Le){return L(ke),ke<=0?y(ke):Te!==void 0?typeof Le=="string"?y(ke).fill(Te,Le):y(ke).fill(Te):y(ke)}f.alloc=function(ke,Te,Le){return z(ke,Te,Le)};function F(ke){return L(ke),y(ke<0?0:W(ke)|0)}f.allocUnsafe=function(ke){return F(ke)},f.allocUnsafeSlow=function(ke){return F(ke)};function B(ke,Te){if((typeof Te!="string"||Te==="")&&(Te="utf8"),!f.isEncoding(Te))throw new TypeError("Unknown encoding: "+Te);var Le=ue(ke,Te)|0,rt=y(Le),dt=rt.write(ke,Te);return dt!==Le&&(rt=rt.slice(0,dt)),rt}function O(ke){for(var Te=ke.length<0?0:W(ke.length)|0,Le=y(Te),rt=0;rt<Te;rt+=1)Le[rt]=ke[rt]&255;return Le}function I(ke){if(Fe(ke,Uint8Array)){var Te=new Uint8Array(ke);return N(Te.buffer,Te.byteOffset,Te.byteLength)}return O(ke)}function N(ke,Te,Le){if(Te<0||ke.byteLength<Te)throw new RangeError('"offset" is outside of buffer bounds');if(ke.byteLength<Te+(Le||0))throw new RangeError('"length" is outside of buffer bounds');var rt;return Te===void 0&&Le===void 0?rt=new Uint8Array(ke):Le===void 0?rt=new Uint8Array(ke,Te):rt=new Uint8Array(ke,Te,Le),Object.setPrototypeOf(rt,f.prototype),rt}function U(ke){if(f.isBuffer(ke)){var Te=W(ke.length)|0,Le=y(Te);return Le.length===0||ke.copy(Le,0,0,Te),Le}if(ke.length!==void 0)return typeof ke.length!="number"||Ke(ke.length)?y(0):O(ke);if(ke.type==="Buffer"&&Array.isArray(ke.data))return O(ke.data)}function W(ke){if(ke>=d)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+d.toString(16)+" bytes");return ke|0}function Q(ke){return+ke!=ke&&(ke=0),f.alloc(+ke)}f.isBuffer=function(Te){return Te!=null&&Te._isBuffer===!0&&Te!==f.prototype},f.compare=function(Te,Le){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),Fe(Le,Uint8Array)&&(Le=f.from(Le,Le.offset,Le.byteLength)),!f.isBuffer(Te)||!f.isBuffer(Le))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(Te===Le)return 0;for(var rt=Te.length,dt=Le.length,xt=0,It=Math.min(rt,dt);xt<It;++xt)if(Te[xt]!==Le[xt]){rt=Te[xt],dt=Le[xt];break}return rt<dt?-1:dt<rt?1:0},f.isEncoding=function(Te){switch(String(Te).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},f.concat=function(Te,Le){if(!Array.isArray(Te))throw new TypeError('"list" argument must be an Array of Buffers');if(Te.length===0)return f.alloc(0);var rt;if(Le===void 0)for(Le=0,rt=0;rt<Te.length;++rt)Le+=Te[rt].length;var dt=f.allocUnsafe(Le),xt=0;for(rt=0;rt<Te.length;++rt){var It=Te[rt];if(Fe(It,Uint8Array))xt+It.length>dt.length?(f.isBuffer(It)||(It=f.from(It)),It.copy(dt,xt)):Uint8Array.prototype.set.call(dt,It,xt);else if(f.isBuffer(It))It.copy(dt,xt);else throw new TypeError('"list" argument must be an Array of Buffers');xt+=It.length}return dt};function ue(ke,Te){if(f.isBuffer(ke))return ke.length;if(ArrayBuffer.isView(ke)||Fe(ke,ArrayBuffer))return ke.byteLength;if(typeof ke!="string")throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+S(ke));var Le=ke.length,rt=arguments.length>2&&arguments[2]===!0;if(!rt&&Le===0)return 0;for(var dt=!1;;)switch(Te){case"ascii":case"latin1":case"binary":return Le;case"utf8":case"utf-8":return ar(ke).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Le*2;case"hex":return Le>>>1;case"base64":return _r(ke).length;default:if(dt)return rt?-1:ar(ke).length;Te=(""+Te).toLowerCase(),dt=!0}}f.byteLength=ue;function se(ke,Te,Le){var rt=!1;if((Te===void 0||Te<0)&&(Te=0),Te>this.length||((Le===void 0||Le>this.length)&&(Le=this.length),Le<=0)||(Le>>>=0,Te>>>=0,Le<=Te))return"";for(ke||(ke="utf8");;)switch(ke){case"hex":return Ie(this,Te,Le);case"utf8":case"utf-8":return ie(this,Te,Le);case"ascii":return Ae(this,Te,Le);case"latin1":case"binary":return Be(this,Te,Le);case"base64":return ee(this,Te,Le);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return Ze(this,Te,Le);default:if(rt)throw new TypeError("Unknown encoding: "+ke);ke=(ke+"").toLowerCase(),rt=!0}}f.prototype._isBuffer=!0;function he(ke,Te,Le){var rt=ke[Te];ke[Te]=ke[Le],ke[Le]=rt}f.prototype.swap16=function(){var Te=this.length;if(Te%2!==0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var Le=0;Le<Te;Le+=2)he(this,Le,Le+1);return this},f.prototype.swap32=function(){var Te=this.length;if(Te%4!==0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var Le=0;Le<Te;Le+=4)he(this,Le,Le+3),he(this,Le+1,Le+2);return this},f.prototype.swap64=function(){var Te=this.length;if(Te%8!==0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var Le=0;Le<Te;Le+=8)he(this,Le,Le+7),he(this,Le+1,Le+6),he(this,Le+2,Le+5),he(this,Le+3,Le+4);return this},f.prototype.toString=function(){var Te=this.length;return Te===0?"":arguments.length===0?ie(this,0,Te):se.apply(this,arguments)},f.prototype.toLocaleString=f.prototype.toString,f.prototype.equals=function(Te){if(!f.isBuffer(Te))throw new TypeError("Argument must be a Buffer");return this===Te?!0:f.compare(this,Te)===0},f.prototype.inspect=function(){var Te="",Le=t.IS;return Te=this.toString("hex",0,Le).replace(/(.{2})/g,"$1 ").trim(),this.length>Le&&(Te+=" ... "),"<Buffer "+Te+">"},b&&(f.prototype[b]=f.prototype.inspect),f.prototype.compare=function(Te,Le,rt,dt,xt){if(Fe(Te,Uint8Array)&&(Te=f.from(Te,Te.offset,Te.byteLength)),!f.isBuffer(Te))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+S(Te));if(Le===void 0&&(Le=0),rt===void 0&&(rt=Te?Te.length:0),dt===void 0&&(dt=0),xt===void 0&&(xt=this.length),Le<0||rt>Te.length||dt<0||xt>this.length)throw new RangeError("out of range index");if(dt>=xt&&Le>=rt)return 0;if(dt>=xt)return-1;if(Le>=rt)return 1;if(Le>>>=0,rt>>>=0,dt>>>=0,xt>>>=0,this===Te)return 0;for(var It=xt-dt,Bt=rt-Le,Gt=Math.min(It,Bt),Kt=this.slice(dt,xt),sr=Te.slice(Le,rt),sa=0;sa<Gt;++sa)if(Kt[sa]!==sr[sa]){It=Kt[sa],Bt=sr[sa];break}return It<Bt?-1:Bt<It?1:0};function G(ke,Te,Le,rt,dt){if(ke.length===0)return-1;if(typeof Le=="string"?(rt=Le,Le=0):Le>2147483647?Le=2147483647:Le<-2147483648&&(Le=-2147483648),Le=+Le,Ke(Le)&&(Le=dt?0:ke.length-1),Le<0&&(Le=ke.length+Le),Le>=ke.length){if(dt)return-1;Le=ke.length-1}else if(Le<0)if(dt)Le=0;else return-1;if(typeof Te=="string"&&(Te=f.from(Te,rt)),f.isBuffer(Te))return Te.length===0?-1:$(ke,Te,Le,rt,dt);if(typeof Te=="number")return Te=Te&255,typeof Uint8Array.prototype.indexOf=="function"?dt?Uint8Array.prototype.indexOf.call(ke,Te,Le):Uint8Array.prototype.lastIndexOf.call(ke,Te,Le):$(ke,[Te],Le,rt,dt);throw new TypeError("val must be string, number or Buffer")}function $(ke,Te,Le,rt,dt){var xt=1,It=ke.length,Bt=Te.length;if(rt!==void 0&&(rt=String(rt).toLowerCase(),rt==="ucs2"||rt==="ucs-2"||rt==="utf16le"||rt==="utf-16le")){if(ke.length<2||Te.length<2)return-1;xt=2,It/=2,Bt/=2,Le/=2}function Gt(La,ka){return xt===1?La[ka]:La.readUInt16BE(ka*xt)}var Kt;if(dt){var sr=-1;for(Kt=Le;Kt<It;Kt++)if(Gt(ke,Kt)===Gt(Te,sr===-1?0:Kt-sr)){if(sr===-1&&(sr=Kt),Kt-sr+1===Bt)return sr*xt}else sr!==-1&&(Kt-=Kt-sr),sr=-1}else for(Le+Bt>It&&(Le=It-Bt),Kt=Le;Kt>=0;Kt--){for(var sa=!0,Aa=0;Aa<Bt;Aa++)if(Gt(ke,Kt+Aa)!==Gt(Te,Aa)){sa=!1;break}if(sa)return Kt}return-1}f.prototype.includes=function(Te,Le,rt){return this.indexOf(Te,Le,rt)!==-1},f.prototype.indexOf=function(Te,Le,rt){return G(this,Te,Le,rt,!0)},f.prototype.lastIndexOf=function(Te,Le,rt){return G(this,Te,Le,rt,!1)};function J(ke,Te,Le,rt){Le=Number(Le)||0;var dt=ke.length-Le;rt?(rt=Number(rt),rt>dt&&(rt=dt)):rt=dt;var xt=Te.length;rt>xt/2&&(rt=xt/2);var It;for(It=0;It<rt;++It){var Bt=parseInt(Te.substr(It*2,2),16);if(Ke(Bt))return It;ke[Le+It]=Bt}return It}function Z(ke,Te,Le,rt){return yt(ar(Te,ke.length-Le),ke,Le,rt)}function re(ke,Te,Le,rt){return yt(Cr(Te),ke,Le,rt)}function ne(ke,Te,Le,rt){return yt(_r(Te),ke,Le,rt)}function j(ke,Te,Le,rt){return yt(vr(Te,ke.length-Le),ke,Le,rt)}f.prototype.write=function(Te,Le,rt,dt){if(Le===void 0)dt="utf8",rt=this.length,Le=0;else if(rt===void 0&&typeof Le=="string")dt=Le,rt=this.length,Le=0;else if(isFinite(Le))Le=Le>>>0,isFinite(rt)?(rt=rt>>>0,dt===void 0&&(dt="utf8")):(dt=rt,rt=void 0);else throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");var xt=this.length-Le;if((rt===void 0||rt>xt)&&(rt=xt),Te.length>0&&(rt<0||Le<0)||Le>this.length)throw new RangeError("Attempt to write outside buffer bounds");dt||(dt="utf8");for(var It=!1;;)switch(dt){case"hex":return J(this,Te,Le,rt);case"utf8":case"utf-8":return Z(this,Te,Le,rt);case"ascii":case"latin1":case"binary":return re(this,Te,Le,rt);case"base64":return ne(this,Te,Le,rt);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,Te,Le,rt);default:if(It)throw new TypeError("Unknown encoding: "+dt);dt=(""+dt).toLowerCase(),It=!0}},f.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function ee(ke,Te,Le){return Te===0&&Le===ke.length?E.fromByteArray(ke):E.fromByteArray(ke.slice(Te,Le))}function ie(ke,Te,Le){Le=Math.min(ke.length,Le);for(var rt=[],dt=Te;dt<Le;){var xt=ke[dt],It=null,Bt=xt>239?4:xt>223?3:xt>191?2:1;if(dt+Bt<=Le){var Gt=void 0,Kt=void 0,sr=void 0,sa=void 0;switch(Bt){case 1:xt<128&&(It=xt);break;case 2:Gt=ke[dt+1],(Gt&192)===128&&(sa=(xt&31)<<6|Gt&63,sa>127&&(It=sa));break;case 3:Gt=ke[dt+1],Kt=ke[dt+2],(Gt&192)===128&&(Kt&192)===128&&(sa=(xt&15)<<12|(Gt&63)<<6|Kt&63,sa>2047&&(sa<55296||sa>57343)&&(It=sa));break;case 4:Gt=ke[dt+1],Kt=ke[dt+2],sr=ke[dt+3],(Gt&192)===128&&(Kt&192)===128&&(sr&192)===128&&(sa=(xt&15)<<18|(Gt&63)<<12|(Kt&63)<<6|sr&63,sa>65535&&sa<1114112&&(It=sa))}}It===null?(It=65533,Bt=1):It>65535&&(It-=65536,rt.push(It>>>10&1023|55296),It=56320|It&1023),rt.push(It),dt+=Bt}return be(rt)}var fe=4096;function be(ke){var Te=ke.length;if(Te<=fe)return String.fromCharCode.apply(String,ke);for(var Le="",rt=0;rt<Te;)Le+=String.fromCharCode.apply(String,ke.slice(rt,rt+=fe));return Le}function Ae(ke,Te,Le){var rt="";Le=Math.min(ke.length,Le);for(var dt=Te;dt<Le;++dt)rt+=String.fromCharCode(ke[dt]&127);return rt}function Be(ke,Te,Le){var rt="";Le=Math.min(ke.length,Le);for(var dt=Te;dt<Le;++dt)rt+=String.fromCharCode(ke[dt]);return rt}function Ie(ke,Te,Le){var rt=ke.length;(!Te||Te<0)&&(Te=0),(!Le||Le<0||Le>rt)&&(Le=rt);for(var dt="",xt=Te;xt<Le;++xt)dt+=Ne[ke[xt]];return dt}function Ze(ke,Te,Le){for(var rt=ke.slice(Te,Le),dt="",xt=0;xt<rt.length-1;xt+=2)dt+=String.fromCharCode(rt[xt]+rt[xt+1]*256);return dt}f.prototype.slice=function(Te,Le){var rt=this.length;Te=~~Te,Le=Le===void 0?rt:~~Le,Te<0?(Te+=rt,Te<0&&(Te=0)):Te>rt&&(Te=rt),Le<0?(Le+=rt,Le<0&&(Le=0)):Le>rt&&(Le=rt),Le<Te&&(Le=Te);var dt=this.subarray(Te,Le);return Object.setPrototypeOf(dt,f.prototype),dt};function at(ke,Te,Le){if(ke%1!==0||ke<0)throw new RangeError("offset is not uint");if(ke+Te>Le)throw new RangeError("Trying to access beyond buffer length")}f.prototype.readUintLE=f.prototype.readUIntLE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It<Le&&(xt*=256);)dt+=this[Te+It]*xt;return dt},f.prototype.readUintBE=f.prototype.readUIntBE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te+--Le],xt=1;Le>0&&(xt*=256);)dt+=this[Te+--Le]*xt;return dt},f.prototype.readUint8=f.prototype.readUInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]},f.prototype.readUint16LE=f.prototype.readUInt16LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]|this[Te+1]<<8},f.prototype.readUint16BE=f.prototype.readUInt16BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,2,this.length),this[Te]<<8|this[Te+1]},f.prototype.readUint32LE=f.prototype.readUInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),(this[Te]|this[Te+1]<<8|this[Te+2]<<16)+this[Te+3]*16777216},f.prototype.readUint32BE=f.prototype.readUInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]*16777216+(this[Te+1]<<16|this[Te+2]<<8|this[Te+3])},f.prototype.readBigUInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,24),xt=this[++Te]+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+rt*Math.pow(2,24);return BigInt(dt)+(BigInt(xt)<<BigInt(32))}),f.prototype.readBigUInt64BE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=Le*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te],xt=this[++Te]*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+rt;return(BigInt(dt)<<BigInt(32))+BigInt(xt)}),f.prototype.readIntLE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=this[Te],xt=1,It=0;++It<Le&&(xt*=256);)dt+=this[Te+It]*xt;return xt*=128,dt>=xt&&(dt-=Math.pow(2,8*Le)),dt},f.prototype.readIntBE=function(Te,Le,rt){Te=Te>>>0,Le=Le>>>0,rt||at(Te,Le,this.length);for(var dt=Le,xt=1,It=this[Te+--dt];dt>0&&(xt*=256);)It+=this[Te+--dt]*xt;return xt*=128,It>=xt&&(It-=Math.pow(2,8*Le)),It},f.prototype.readInt8=function(Te,Le){return Te=Te>>>0,Le||at(Te,1,this.length),this[Te]&128?(255-this[Te]+1)*-1:this[Te]},f.prototype.readInt16LE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te]|this[Te+1]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt16BE=function(Te,Le){Te=Te>>>0,Le||at(Te,2,this.length);var rt=this[Te+1]|this[Te]<<8;return rt&32768?rt|4294901760:rt},f.prototype.readInt32LE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]|this[Te+1]<<8|this[Te+2]<<16|this[Te+3]<<24},f.prototype.readInt32BE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),this[Te]<<24|this[Te+1]<<16|this[Te+2]<<8|this[Te+3]},f.prototype.readBigInt64LE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=this[Te+4]+this[Te+5]*Math.pow(2,8)+this[Te+6]*Math.pow(2,16)+(rt<<24);return(BigInt(dt)<<BigInt(32))+BigInt(Le+this[++Te]*Math.pow(2,8)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,24))}),f.prototype.readBigInt64BE=Ee(function(Te){Te=Te>>>0,St(Te,"offset");var Le=this[Te],rt=this[Te+7];(Le===void 0||rt===void 0)&&Ot(Te,this.length-8);var dt=(Le<<24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+this[++Te];return(BigInt(dt)<<BigInt(32))+BigInt(this[++Te]*Math.pow(2,24)+this[++Te]*Math.pow(2,16)+this[++Te]*Math.pow(2,8)+rt)}),f.prototype.readFloatLE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),m.read(this,Te,!0,23,4)},f.prototype.readFloatBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,4,this.length),m.read(this,Te,!1,23,4)},f.prototype.readDoubleLE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!0,52,8)},f.prototype.readDoubleBE=function(Te,Le){return Te=Te>>>0,Le||at(Te,8,this.length),m.read(this,Te,!1,52,8)};function it(ke,Te,Le,rt,dt,xt){if(!f.isBuffer(ke))throw new TypeError('"buffer" argument must be a Buffer instance');if(Te>dt||Te<xt)throw new RangeError('"value" argument is out of bounds');if(Le+rt>ke.length)throw new RangeError("Index out of range")}f.prototype.writeUintLE=f.prototype.writeUIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=1,Bt=0;for(this[Le]=Te&255;++Bt<rt&&(It*=256);)this[Le+Bt]=Te/It&255;return Le+rt},f.prototype.writeUintBE=f.prototype.writeUIntBE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,rt=rt>>>0,!dt){var xt=Math.pow(2,8*rt)-1;it(this,Te,Le,rt,xt,0)}var It=rt-1,Bt=1;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)this[Le+It]=Te/Bt&255;return Le+rt},f.prototype.writeUint8=f.prototype.writeUInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,255,0),this[Le]=Te&255,Le+1},f.prototype.writeUint16LE=f.prototype.writeUInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeUint16BE=f.prototype.writeUInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,65535,0),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeUint32LE=f.prototype.writeUInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le+3]=Te>>>24,this[Le+2]=Te>>>16,this[Le+1]=Te>>>8,this[Le]=Te&255,Le+4},f.prototype.writeUint32BE=f.prototype.writeUInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,4294967295,0),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4};function et(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt,xt=xt>>8,ke[Le++]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,It=It>>8,ke[Le++]=It,Le}function lt(ke,Te,Le,rt,dt){Ct(Te,rt,dt,ke,Le,7);var xt=Number(Te&BigInt(4294967295));ke[Le+7]=xt,xt=xt>>8,ke[Le+6]=xt,xt=xt>>8,ke[Le+5]=xt,xt=xt>>8,ke[Le+4]=xt;var It=Number(Te>>BigInt(32)&BigInt(4294967295));return ke[Le+3]=It,It=It>>8,ke[Le+2]=It,It=It>>8,ke[Le+1]=It,It=It>>8,ke[Le]=It,Le+8}f.prototype.writeBigUInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeBigUInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,BigInt(0),BigInt("0xffffffffffffffff"))}),f.prototype.writeIntLE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=0,Bt=1,Gt=0;for(this[Le]=Te&255;++It<rt&&(Bt*=256);)Te<0&&Gt===0&&this[Le+It-1]!==0&&(Gt=1),this[Le+It]=(Te/Bt>>0)-Gt&255;return Le+rt},f.prototype.writeIntBE=function(Te,Le,rt,dt){if(Te=+Te,Le=Le>>>0,!dt){var xt=Math.pow(2,8*rt-1);it(this,Te,Le,rt,xt-1,-xt)}var It=rt-1,Bt=1,Gt=0;for(this[Le+It]=Te&255;--It>=0&&(Bt*=256);)Te<0&&Gt===0&&this[Le+It+1]!==0&&(Gt=1),this[Le+It]=(Te/Bt>>0)-Gt&255;return Le+rt},f.prototype.writeInt8=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,1,127,-128),Te<0&&(Te=255+Te+1),this[Le]=Te&255,Le+1},f.prototype.writeInt16LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te&255,this[Le+1]=Te>>>8,Le+2},f.prototype.writeInt16BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,2,32767,-32768),this[Le]=Te>>>8,this[Le+1]=Te&255,Le+2},f.prototype.writeInt32LE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),this[Le]=Te&255,this[Le+1]=Te>>>8,this[Le+2]=Te>>>16,this[Le+3]=Te>>>24,Le+4},f.prototype.writeInt32BE=function(Te,Le,rt){return Te=+Te,Le=Le>>>0,rt||it(this,Te,Le,4,2147483647,-2147483648),Te<0&&(Te=4294967295+Te+1),this[Le]=Te>>>24,this[Le+1]=Te>>>16,this[Le+2]=Te>>>8,this[Le+3]=Te&255,Le+4},f.prototype.writeBigInt64LE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return et(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))}),f.prototype.writeBigInt64BE=Ee(function(Te){var Le=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return lt(this,Te,Le,-BigInt("0x8000000000000000"),BigInt("0x7fffffffffffffff"))});function Me(ke,Te,Le,rt,dt,xt){if(Le+rt>ke.length)throw new RangeError("Index out of range");if(Le<0)throw new RangeError("Index out of range")}function ge(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,4,34028234663852886e22,-34028234663852886e22),m.write(ke,Te,Le,rt,23,4),Le+4}f.prototype.writeFloatLE=function(Te,Le,rt){return ge(this,Te,Le,!0,rt)},f.prototype.writeFloatBE=function(Te,Le,rt){return ge(this,Te,Le,!1,rt)};function ce(ke,Te,Le,rt,dt){return Te=+Te,Le=Le>>>0,dt||Me(ke,Te,Le,8,17976931348623157e292,-17976931348623157e292),m.write(ke,Te,Le,rt,52,8),Le+8}f.prototype.writeDoubleLE=function(Te,Le,rt){return ce(this,Te,Le,!0,rt)},f.prototype.writeDoubleBE=function(Te,Le,rt){return ce(this,Te,Le,!1,rt)},f.prototype.copy=function(Te,Le,rt,dt){if(!f.isBuffer(Te))throw new TypeError("argument should be a Buffer");if(rt||(rt=0),!dt&&dt!==0&&(dt=this.length),Le>=Te.length&&(Le=Te.length),Le||(Le=0),dt>0&&dt<rt&&(dt=rt),dt===rt||Te.length===0||this.length===0)return 0;if(Le<0)throw new RangeError("targetStart out of bounds");if(rt<0||rt>=this.length)throw new RangeError("Index out of range");if(dt<0)throw new RangeError("sourceEnd out of bounds");dt>this.length&&(dt=this.length),Te.length-Le<dt-rt&&(dt=Te.length-Le+rt);var xt=dt-rt;return this===Te&&typeof Uint8Array.prototype.copyWithin=="function"?this.copyWithin(Le,rt,dt):Uint8Array.prototype.set.call(Te,this.subarray(rt,dt),Le),xt},f.prototype.fill=function(Te,Le,rt,dt){if(typeof Te=="string"){if(typeof Le=="string"?(dt=Le,Le=0,rt=this.length):typeof rt=="string"&&(dt=rt,rt=this.length),dt!==void 0&&typeof dt!="string")throw new TypeError("encoding must be a string");if(typeof dt=="string"&&!f.isEncoding(dt))throw new TypeError("Unknown encoding: "+dt);if(Te.length===1){var xt=Te.charCodeAt(0);(dt==="utf8"&&xt<128||dt==="latin1")&&(Te=xt)}}else typeof Te=="number"?Te=Te&255:typeof Te=="boolean"&&(Te=Number(Te));if(Le<0||this.length<Le||this.length<rt)throw new RangeError("Out of range index");if(rt<=Le)return this;Le=Le>>>0,rt=rt===void 0?this.length:rt>>>0,Te||(Te=0);var It;if(typeof Te=="number")for(It=Le;It<rt;++It)this[It]=Te;else{var Bt=f.isBuffer(Te)?Te:f.from(Te,dt),Gt=Bt.length;if(Gt===0)throw new TypeError('The value "'+Te+'" is invalid for argument "value"');for(It=0;It<rt-Le;++It)this[It+Le]=Bt[It%Gt]}return this};var ze={};function tt(ke,Te,Le){ze[ke]=function(rt){function dt(){var xt;return a(this,dt),xt=h(this,dt),Object.defineProperty(xt,"message",{value:Te.apply(xt,arguments),writable:!0,configurable:!0}),xt.name="".concat(xt.name," [").concat(ke,"]"),xt.stack,delete xt.name,xt}return _(dt,rt),n(dt,[{key:"code",get:function(){return ke},set:function(It){Object.defineProperty(this,"code",{configurable:!0,enumerable:!0,value:It,writable:!0})}},{key:"toString",value:function(){return"".concat(this.name," [").concat(ke,"]: ").concat(this.message)}}])}(Le)}tt("ERR_BUFFER_OUT_OF_BOUNDS",function(ke){return ke?"".concat(ke," is outside of buffer bounds"):"Attempt to access memory outside buffer bounds"},RangeError),tt("ERR_INVALID_ARG_TYPE",function(ke,Te){return'The "'.concat(ke,'" argument must be of type number. Received type ').concat(S(Te))},TypeError),tt("ERR_OUT_OF_RANGE",function(ke,Te,Le){var rt='The value of "'.concat(ke,'" is out of range.'),dt=Le;return Number.isInteger(Le)&&Math.abs(Le)>Math.pow(2,32)?dt=nt(String(Le)):typeof Le=="bigint"&&(dt=String(Le),(Le>Math.pow(BigInt(2),BigInt(32))||Le<-Math.pow(BigInt(2),BigInt(32)))&&(dt=nt(dt)),dt+="n"),rt+=" It must be ".concat(Te,". Received ").concat(dt),rt},RangeError);function nt(ke){for(var Te="",Le=ke.length,rt=ke[0]==="-"?1:0;Le>=rt+4;Le-=3)Te="_".concat(ke.slice(Le-3,Le)).concat(Te);return"".concat(ke.slice(0,Le)).concat(Te)}function Qe(ke,Te,Le){St(Te,"offset"),(ke[Te]===void 0||ke[Te+Le]===void 0)&&Ot(Te,ke.length-(Le+1))}function Ct(ke,Te,Le,rt,dt,xt){if(ke>Le||ke<Te){var It=typeof Te=="bigint"?"n":"",Bt;throw xt>3?Te===0||Te===BigInt(0)?Bt=">= 0".concat(It," and < 2").concat(It," ** ").concat((xt+1)*8).concat(It):Bt=">= -(2".concat(It," ** ").concat((xt+1)*8-1).concat(It,") and < 2 ** ")+"".concat((xt+1)*8-1).concat(It):Bt=">= ".concat(Te).concat(It," and <= ").concat(Le).concat(It),new ze.ERR_OUT_OF_RANGE("value",Bt,ke)}Qe(rt,dt,xt)}function St(ke,Te){if(typeof ke!="number")throw new ze.ERR_INVALID_ARG_TYPE(Te,"number",ke)}function Ot(ke,Te,Le){throw Math.floor(ke)!==ke?(St(ke,Le),new ze.ERR_OUT_OF_RANGE(Le||"offset","an integer",ke)):Te<0?new ze.ERR_BUFFER_OUT_OF_BOUNDS:new ze.ERR_OUT_OF_RANGE(Le||"offset",">= ".concat(Le?1:0," and <= ").concat(Te),ke)}var jt=/[^+/0-9A-Za-z-_]/g;function ur(ke){if(ke=ke.split("=")[0],ke=ke.trim().replace(jt,""),ke.length<2)return"";for(;ke.length%4!==0;)ke=ke+"=";return ke}function ar(ke,Te){Te=Te||1/0;for(var Le,rt=ke.length,dt=null,xt=[],It=0;It<rt;++It){if(Le=ke.charCodeAt(It),Le>55295&&Le<57344){if(!dt){if(Le>56319){(Te-=3)>-1&&xt.push(239,191,189);continue}else if(It+1===rt){(Te-=3)>-1&&xt.push(239,191,189);continue}dt=Le;continue}if(Le<56320){(Te-=3)>-1&&xt.push(239,191,189),dt=Le;continue}Le=(dt-55296<<10|Le-56320)+65536}else dt&&(Te-=3)>-1&&xt.push(239,191,189);if(dt=null,Le<128){if((Te-=1)<0)break;xt.push(Le)}else if(Le<2048){if((Te-=2)<0)break;xt.push(Le>>6|192,Le&63|128)}else if(Le<65536){if((Te-=3)<0)break;xt.push(Le>>12|224,Le>>6&63|128,Le&63|128)}else if(Le<1114112){if((Te-=4)<0)break;xt.push(Le>>18|240,Le>>12&63|128,Le>>6&63|128,Le&63|128)}else throw new Error("Invalid code point")}return xt}function Cr(ke){for(var Te=[],Le=0;Le<ke.length;++Le)Te.push(ke.charCodeAt(Le)&255);return Te}function vr(ke,Te){for(var Le,rt,dt,xt=[],It=0;It<ke.length&&!((Te-=2)<0);++It)Le=ke.charCodeAt(It),rt=Le>>8,dt=Le%256,xt.push(dt),xt.push(rt);return xt}function _r(ke){return E.toByteArray(ur(ke))}function yt(ke,Te,Le,rt){var dt;for(dt=0;dt<rt&&!(dt+Le>=Te.length||dt>=ke.length);++dt)Te[dt+Le]=ke[dt];return dt}function Fe(ke,Te){return ke instanceof Te||ke!=null&&ke.constructor!=null&&ke.constructor.name!=null&&ke.constructor.name===Te.name}function Ke(ke){return ke!==ke}var Ne=function(){for(var ke="0123456789abcdef",Te=new Array(256),Le=0;Le<16;++Le)for(var rt=Le*16,dt=0;dt<16;++dt)Te[rt+dt]=ke[Le]+ke[dt];return Te}();function Ee(ke){return typeof BigInt>"u"?Ve:ke}function Ve(){throw new Error("BigInt not supported")}},9216:function(e){"use strict";e.exports=a,e.exports.isMobile=a,e.exports.default=a;var t=/(android|bb\d+|meego).+mobile|armv7l|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series[46]0|samsungbrowser.*mobile|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i,r=/CrOS/,o=/android|ipad|playbook|silk/i;function a(i){i||(i={});var n=i.ua;if(!n&&typeof navigator<"u"&&(n=navigator.userAgent),n&&n.headers&&typeof n.headers["user-agent"]=="string"&&(n=n.headers["user-agent"]),typeof n!="string")return!1;var s=t.test(n)&&!r.test(n)||!!i.tablet&&o.test(n);return!s&&i.tablet&&i.featureDetect&&navigator&&navigator.maxTouchPoints>1&&n.indexOf("Macintosh")!==-1&&n.indexOf("Safari")!==-1&&(s=!0),s}},6296:function(e,t,r){"use strict";e.exports=c;var o=r(7261),a=r(9977),i=r(1811);function n(h,v){this._controllerNames=Object.keys(h),this._controllerList=this._controllerNames.map(function(p){return h[p]}),this._mode=v,this._active=h[v],this._active||(this._mode="turntable",this._active=h.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=n.prototype;s.flush=function(h){for(var v=this._controllerList,p=0;p<v.length;++p)v[p].flush(h)},s.idle=function(h){for(var v=this._controllerList,p=0;p<v.length;++p)v[p].idle(h)},s.lookAt=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].lookAt(h,v,p,T)},s.rotate=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].rotate(h,v,p,T)},s.pan=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].pan(h,v,p,T)},s.translate=function(h,v,p,T){for(var l=this._controllerList,_=0;_<l.length;++_)l[_].translate(h,v,p,T)},s.setMatrix=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setMatrix(h,v)},s.setDistanceLimits=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setDistanceLimits(h,v)},s.setDistance=function(h,v){for(var p=this._controllerList,T=0;T<p.length;++T)p[T].setDistance(h,v)},s.recalcMatrix=function(h){this._active.recalcMatrix(h)},s.getDistance=function(h){return this._active.getDistance(h)},s.getDistanceLimits=function(h){return this._active.getDistanceLimits(h)},s.lastT=function(){return this._active.lastT()},s.setMode=function(h){if(h!==this._mode){var v=this._controllerNames.indexOf(h);if(!(v<0)){var p=this._active,T=this._controllerList[v],l=Math.max(p.lastT(),T.lastT());p.recalcMatrix(l),T.setMatrix(l,p.computedMatrix),this._active=T,this._mode=h,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}}},s.getMode=function(){return this._mode};function c(h){h=h||{};var v=h.eye||[0,0,1],p=h.center||[0,0,0],T=h.up||[0,1,0],l=h.distanceLimits||[0,1/0],_=h.mode||"turntable",w=o(),S=a(),E=i();return w.setDistanceLimits(l[0],l[1]),w.lookAt(0,v,p,T),S.setDistanceLimits(l[0],l[1]),S.lookAt(0,v,p,T),E.setDistanceLimits(l[0],l[1]),E.lookAt(0,v,p,T),new n({turntable:w,orbit:S,matrix:E},_)}},7169:function(e,t,r){"use strict";var o=typeof WeakMap>"u"?r(1538):WeakMap,a=r(2762),i=r(8116),n=new o;function s(c){var h=n.get(c),v=h&&(h._triangleBuffer.handle||h._triangleBuffer.buffer);if(!v||!c.isBuffer(v)){var p=a(c,new Float32Array([-1,-1,-1,4,4,-1]));h=i(c,[{buffer:p,type:c.FLOAT,size:2}]),h._triangleBuffer=p,n.set(c,h)}h.bind(),c.drawArrays(c.TRIANGLES,0,3),h.unbind()}e.exports=s},1085:function(e,t,r){var o=r(1371);e.exports=a;function a(i,n,s){n=typeof n=="number"?n:1,s=s||": ";var c=i.split(/\r?\n/),h=String(c.length+n-1).length;return c.map(function(v,p){var T=p+n,l=String(T).length,_=o(T,h-l);return _+s+v}).join(`
+`)}},3952:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){for(var c=new Array(s+1),h=0;h<n.length;++h)c[h]=n[h];for(var h=0;h<=n.length;++h){for(var v=n.length;v<=s;++v){for(var p=new Array(s),T=0;T<s;++T)p[T]=Math.pow(v+1-h,T);c[v]=p}var l=o.apply(void 0,c);if(l)return!0}return!1}function i(n){var s=n.length;if(s===0)return[];if(s===1)return[0];for(var c=n[0].length,h=[n[0]],v=[0],p=1;p<s;++p){if(h.push(n[p]),!a(h,c)){h.pop();continue}if(v.push(p),v.length===c+1)return v}return v}},5995:function(e,t,r){"use strict";e.exports=i;var o=r(7642),a=r(6037);function i(n,s){return o(s).filter(function(c){for(var h=new Array(c.length),v=0;v<c.length;++v)h[v]=s[c[v]];return a(h)*n<1})}},3502:function(e,t,r){e.exports=i;var o=r(5995),a=r(9127);function i(n,s){return a(o(n,s))}},6468:function(e){e.exports=function(r){return atob(r)}},2642:function(e,t,r){"use strict";e.exports=i;var o=r(727);function a(n){for(var s=0,c=0;c<n.length;++c)s+=n[c];return s}function i(n,s){for(var c=s.length,h=new Array(c+1),v=0;v<c;++v){for(var p=new Array(c+1),T=0;T<=c;++T)p[T]=n[T][v];h[v]=p}h[c]=new Array(c+1);for(var v=0;v<=c;++v)h[c][v]=1;for(var l=new Array(c+1),v=0;v<c;++v)l[v]=s[v];l[c]=1;var _=o(h,l),w=a(_[c+1]);w===0&&(w=1);for(var S=new Array(c+1),v=0;v<=c;++v)S[v]=a(_[v])/w;return S}},7507:function(e,t){"use strict";t.byteLength=h,t.toByteArray=p,t.fromByteArray=_;for(var r=[],o=[],a=typeof Uint8Array<"u"?Uint8Array:Array,i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n=0,s=i.length;n<s;++n)r[n]=i[n],o[i.charCodeAt(n)]=n;o[45]=62,o[95]=63;function c(w){var S=w.length;if(S%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var E=w.indexOf("=");E===-1&&(E=S);var m=E===S?0:4-E%4;return[E,m]}function h(w){var S=c(w),E=S[0],m=S[1];return(E+m)*3/4-m}function v(w,S,E){return(S+E)*3/4-E}function p(w){var S,E=c(w),m=E[0],b=E[1],d=new a(v(w,m,b)),u=0,y=b>0?m-4:m,f;for(f=0;f<y;f+=4)S=o[w.charCodeAt(f)]<<18|o[w.charCodeAt(f+1)]<<12|o[w.charCodeAt(f+2)]<<6|o[w.charCodeAt(f+3)],d[u++]=S>>16&255,d[u++]=S>>8&255,d[u++]=S&255;return b===2&&(S=o[w.charCodeAt(f)]<<2|o[w.charCodeAt(f+1)]>>4,d[u++]=S&255),b===1&&(S=o[w.charCodeAt(f)]<<10|o[w.charCodeAt(f+1)]<<4|o[w.charCodeAt(f+2)]>>2,d[u++]=S>>8&255,d[u++]=S&255),d}function T(w){return r[w>>18&63]+r[w>>12&63]+r[w>>6&63]+r[w&63]}function l(w,S,E){for(var m,b=[],d=S;d<E;d+=3)m=(w[d]<<16&16711680)+(w[d+1]<<8&65280)+(w[d+2]&255),b.push(T(m));return b.join("")}function _(w){for(var S,E=w.length,m=E%3,b=[],d=16383,u=0,y=E-m;u<y;u+=d)b.push(l(w,u,u+d>y?y:u+d));return m===1?(S=w[E-1],b.push(r[S>>2]+r[S<<4&63]+"==")):m===2&&(S=(w[E-2]<<8)+w[E-1],b.push(r[S>>10]+r[S>>4&63]+r[S<<2&63]+"=")),b.join("")}},3865:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).add(n[0].mul(i[1])),i[1].mul(n[1]))}},1318:function(e){"use strict";e.exports=t;function t(r,o){return r[0].mul(o[1]).cmp(o[0].mul(r[1]))}},8697:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]),i[1].mul(n[0]))}},7842:function(e,t,r){"use strict";var o=r(6330),a=r(1533),i=r(2651),n=r(6768),s=r(869),c=r(8697);e.exports=h;function h(v,p){if(o(v))return p?c(v,h(p)):[v[0].clone(),v[1].clone()];var T=0,l,_;if(a(v))l=v.clone();else if(typeof v=="string")l=n(v);else{if(v===0)return[i(0),i(1)];if(v===Math.floor(v))l=i(v);else{for(;v!==Math.floor(v);)v=v*Math.pow(2,256),T-=256;l=i(v)}}if(o(p))l.mul(p[1]),_=p[0].clone();else if(a(p))_=p.clone();else if(typeof p=="string")_=n(p);else if(!p)_=i(1);else if(p===Math.floor(p))_=i(p);else{for(;p!==Math.floor(p);)p=p*Math.pow(2,256),T+=256;_=i(p)}return T>0?l=l.ushln(T):T<0&&(_=_.ushln(-T)),s(l,_)}},6330:function(e,t,r){"use strict";var o=r(1533);e.exports=a;function a(i){return Array.isArray(i)&&i.length===2&&o(i[0])&&o(i[1])}},5716:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i.cmp(new o(0))}},1369:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){var n=i.length,s=i.words,c=0;if(n===1)c=s[0];else if(n===2)c=s[0]+s[1]*67108864;else for(var h=0;h<n;h++){var v=s[h];c+=v*Math.pow(67108864,h)}return o(i)*c}},4025:function(e,t,r){"use strict";var o=r(2361),a=r(8828).countTrailingZeros;e.exports=i;function i(n){var s=a(o.lo(n));if(s<32)return s;var c=a(o.hi(n));return c>20?52:c+32}},1533:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return i&&typeof i=="object"&&!!i.words}},2651:function(e,t,r){"use strict";var o=r(6859),a=r(2361);e.exports=i;function i(n){var s=a.exponent(n);return s<52?new o(n):new o(n*Math.pow(2,52-s)).ushln(s-52)}},869:function(e,t,r){"use strict";var o=r(2651),a=r(5716);e.exports=i;function i(n,s){var c=a(n),h=a(s);if(c===0)return[o(0),o(1)];if(h===0)return[o(0),o(0)];h<0&&(n=n.neg(),s=s.neg());var v=n.gcd(s);return v.cmpn(1)?[n.div(v),s.div(v)]:[n,s]}},6768:function(e,t,r){"use strict";var o=r(6859);e.exports=a;function a(i){return new o(i)}},6504:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[0]),i[1].mul(n[1]))}},7721:function(e,t,r){"use strict";var o=r(5716);e.exports=a;function a(i){return o(i[0])*o(i[1])}},5572:function(e,t,r){"use strict";var o=r(869);e.exports=a;function a(i,n){return o(i[0].mul(n[1]).sub(i[1].mul(n[0])),i[1].mul(n[1]))}},946:function(e,t,r){"use strict";var o=r(1369),a=r(4025);e.exports=i;function i(n){var s=n[0],c=n[1];if(s.cmpn(0)===0)return 0;var h=s.abs().divmod(c.abs()),v=h.div,p=o(v),T=h.mod,l=s.negative!==c.negative?-1:1;if(T.cmpn(0)===0)return l*p;if(p){var _=a(p)+4,w=o(T.ushln(_).divRound(c));return l*(p+w*Math.pow(2,-_))}else{var S=c.bitLength()-T.bitLength()+53,w=o(T.ushln(S).divRound(c));return S<1023?l*w*Math.pow(2,-S):(w*=Math.pow(2,-1023),l*w*Math.pow(2,1023-S))}}},2478:function(e){"use strict";function t(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>=0?(T=l,p=l-1):v=l+1}return T}function r(s,c,h,v,p){for(var T=p+1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w>0?(T=l,p=l-1):v=l+1}return T}function o(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<0?(T=l,v=l+1):p=l-1}return T}function a(s,c,h,v,p){for(var T=v-1;v<=p;){var l=v+p>>>1,_=s[l],w=h!==void 0?h(_,c):_-c;w<=0?(T=l,v=l+1):p=l-1}return T}function i(s,c,h,v,p){for(;v<=p;){var T=v+p>>>1,l=s[T],_=h!==void 0?h(l,c):l-c;if(_===0)return T;_<=0?v=T+1:p=T-1}return-1}function n(s,c,h,v,p,T){return typeof h=="function"?T(s,c,h,v===void 0?0:v|0,p===void 0?s.length-1:p|0):T(s,c,void 0,h===void 0?0:h|0,v===void 0?s.length-1:v|0)}e.exports={ge:function(s,c,h,v,p){return n(s,c,h,v,p,t)},gt:function(s,c,h,v,p){return n(s,c,h,v,p,r)},lt:function(s,c,h,v,p){return n(s,c,h,v,p,o)},le:function(s,c,h,v,p){return n(s,c,h,v,p,a)},eq:function(s,c,h,v,p){return n(s,c,h,v,p,i)}}},8828:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<<r-1,t.sign=function(i){return(i>0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i<n)},t.max=function(i,n){return i^(i^n)&-(i<n)},t.isPow2=function(i){return!(i&i-1)&&!!i},t.log2=function(i){var n,s;return n=(i>65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<<h&255}})(a),t.reverse=function(i){return a[i&255]<<24|a[i>>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},6859:function(e,t,r){e=r.nmd(e),function(o,a){"use strict";function i(O,I){if(!O)throw new Error(I||"Assertion failed")}function n(O,I){O.super_=I;var N=function(){};N.prototype=I.prototype,O.prototype=new N,O.prototype.constructor=O}function s(O,I,N){if(s.isBN(O))return O;this.negative=0,this.words=null,this.length=0,this.red=null,O!==null&&((I==="le"||I==="be")&&(N=I,I=10),this._init(O||0,I||10,N||"be"))}typeof o=="object"?o.exports=s:a.BN=s,s.BN=s,s.wordSize=26;var c;try{typeof window<"u"&&typeof window.Buffer<"u"?c=window.Buffer:c=r(7790).Buffer}catch{}s.isBN=function(I){return I instanceof s?!0:I!==null&&typeof I=="object"&&I.constructor.wordSize===s.wordSize&&Array.isArray(I.words)},s.max=function(I,N){return I.cmp(N)>0?I:N},s.min=function(I,N){return I.cmp(N)<0?I:N},s.prototype._init=function(I,N,U){if(typeof I=="number")return this._initNumber(I,N,U);if(typeof I=="object")return this._initArray(I,N,U);N==="hex"&&(N=16),i(N===(N|0)&&N>=2&&N<=36),I=I.toString().replace(/\s+/g,"");var W=0;I[0]==="-"&&(W++,this.negative=1),W<I.length&&(N===16?this._parseHex(I,W,U):(this._parseBase(I,N,W),U==="le"&&this._initArray(this.toArray(),N,U)))},s.prototype._initNumber=function(I,N,U){I<0&&(this.negative=1,I=-I),I<67108864?(this.words=[I&67108863],this.length=1):I<4503599627370496?(this.words=[I&67108863,I/67108864&67108863],this.length=2):(i(I<9007199254740992),this.words=[I&67108863,I/67108864&67108863,1],this.length=3),U==="le"&&this._initArray(this.toArray(),N,U)},s.prototype._initArray=function(I,N,U){if(i(typeof I.length=="number"),I.length<=0)return this.words=[0],this.length=1,this;this.length=Math.ceil(I.length/3),this.words=new Array(this.length);for(var W=0;W<this.length;W++)this.words[W]=0;var Q,ue,se=0;if(U==="be")for(W=I.length-1,Q=0;W>=0;W-=3)ue=I[W]|I[W-1]<<8|I[W-2]<<16,this.words[Q]|=ue<<se&67108863,this.words[Q+1]=ue>>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);else if(U==="le")for(W=0,Q=0;W<I.length;W+=3)ue=I[W]|I[W+1]<<8|I[W+2]<<16,this.words[Q]|=ue<<se&67108863,this.words[Q+1]=ue>>>26-se&67108863,se+=24,se>=26&&(se-=26,Q++);return this.strip()};function h(O,I){var N=O.charCodeAt(I);return N>=65&&N<=70?N-55:N>=97&&N<=102?N-87:N-48&15}function v(O,I,N){var U=h(O,N);return N-1>=I&&(U|=h(O,N-1)<<4),U}s.prototype._parseHex=function(I,N,U){this.length=Math.ceil((I.length-N)/6),this.words=new Array(this.length);for(var W=0;W<this.length;W++)this.words[W]=0;var Q=0,ue=0,se;if(U==="be")for(W=I.length-1;W>=N;W-=2)se=v(I,N,W)<<Q,this.words[ue]|=se&67108863,Q>=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8;else{var he=I.length-N;for(W=he%2===0?N+1:N;W<I.length;W+=2)se=v(I,N,W)<<Q,this.words[ue]|=se&67108863,Q>=18?(Q-=18,ue+=1,this.words[ue]|=se>>>26):Q+=8}this.strip()};function p(O,I,N,U){for(var W=0,Q=Math.min(O.length,N),ue=I;ue<Q;ue++){var se=O.charCodeAt(ue)-48;W*=U,se>=49?W+=se-49+10:se>=17?W+=se-17+10:W+=se}return W}s.prototype._parseBase=function(I,N,U){this.words=[0],this.length=1;for(var W=0,Q=1;Q<=67108863;Q*=N)W++;W--,Q=Q/N|0;for(var ue=I.length-U,se=ue%W,he=Math.min(ue,ue-se)+U,G=0,$=U;$<he;$+=W)G=p(I,$,$+W,N),this.imuln(Q),this.words[0]+G<67108864?this.words[0]+=G:this._iaddn(G);if(se!==0){var J=1;for(G=p(I,$,I.length,N),$=0;$<se;$++)J*=N;this.imuln(J),this.words[0]+G<67108864?this.words[0]+=G:this._iaddn(G)}this.strip()},s.prototype.copy=function(I){I.words=new Array(this.length);for(var N=0;N<this.length;N++)I.words[N]=this.words[N];I.length=this.length,I.negative=this.negative,I.red=this.red},s.prototype.clone=function(){var I=new s(null);return this.copy(I),I},s.prototype._expand=function(I){for(;this.length<I;)this.words[this.length++]=0;return this},s.prototype.strip=function(){for(;this.length>1&&this.words[this.length-1]===0;)this.length--;return this._normSign()},s.prototype._normSign=function(){return this.length===1&&this.words[0]===0&&(this.negative=0),this},s.prototype.inspect=function(){return(this.red?"<BN-R: ":"<BN: ")+this.toString(16)+">"};var T=["","0","00","000","0000","00000","000000","0000000","00000000","000000000","0000000000","00000000000","000000000000","0000000000000","00000000000000","000000000000000","0000000000000000","00000000000000000","000000000000000000","0000000000000000000","00000000000000000000","000000000000000000000","0000000000000000000000","00000000000000000000000","000000000000000000000000","0000000000000000000000000"],l=[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],_=[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];s.prototype.toString=function(I,N){I=I||10,N=N|0||1;var U;if(I===16||I==="hex"){U="";for(var W=0,Q=0,ue=0;ue<this.length;ue++){var se=this.words[ue],he=((se<<W|Q)&16777215).toString(16);Q=se>>>24-W&16777215,Q!==0||ue!==this.length-1?U=T[6-he.length]+he+U:U=he+U,W+=2,W>=26&&(W-=26,ue--)}for(Q!==0&&(U=Q.toString(16)+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}if(I===(I|0)&&I>=2&&I<=36){var G=l[I],$=_[I];U="";var J=this.clone();for(J.negative=0;!J.isZero();){var Z=J.modn($).toString(I);J=J.idivn($),J.isZero()?U=Z+U:U=T[G-Z.length]+Z+U}for(this.isZero()&&(U="0"+U);U.length%N!==0;)U="0"+U;return this.negative!==0&&(U="-"+U),U}i(!1,"Base should be between 2 and 36")},s.prototype.toNumber=function(){var I=this.words[0];return this.length===2?I+=this.words[1]*67108864:this.length===3&&this.words[2]===1?I+=4503599627370496+this.words[1]*67108864:this.length>2&&i(!1,"Number can only safely store up to 53 bits"),this.negative!==0?-I:I},s.prototype.toJSON=function(){return this.toString(16)},s.prototype.toBuffer=function(I,N){return i(typeof c<"u"),this.toArrayLike(c,I,N)},s.prototype.toArray=function(I,N){return this.toArrayLike(Array,I,N)},s.prototype.toArrayLike=function(I,N,U){var W=this.byteLength(),Q=U||Math.max(1,W);i(W<=Q,"byte array longer than desired length"),i(Q>0,"Requested array length <= 0"),this.strip();var ue=N==="le",se=new I(Q),he,G,$=this.clone();if(ue){for(G=0;!$.isZero();G++)he=$.andln(255),$.iushrn(8),se[G]=he;for(;G<Q;G++)se[G]=0}else{for(G=0;G<Q-W;G++)se[G]=0;for(G=0;!$.isZero();G++)he=$.andln(255),$.iushrn(8),se[Q-G-1]=he}return se},Math.clz32?s.prototype._countBits=function(I){return 32-Math.clz32(I)}:s.prototype._countBits=function(I){var N=I,U=0;return N>=4096&&(U+=13,N>>>=13),N>=64&&(U+=7,N>>>=7),N>=8&&(U+=4,N>>>=4),N>=2&&(U+=2,N>>>=2),U+N},s.prototype._zeroBits=function(I){if(I===0)return 26;var N=I,U=0;return N&8191||(U+=13,N>>>=13),N&127||(U+=7,N>>>=7),N&15||(U+=4,N>>>=4),N&3||(U+=2,N>>>=2),N&1||U++,U},s.prototype.bitLength=function(){var I=this.words[this.length-1],N=this._countBits(I);return(this.length-1)*26+N};function w(O){for(var I=new Array(O.bitLength()),N=0;N<I.length;N++){var U=N/26|0,W=N%26;I[N]=(O.words[U]&1<<W)>>>W}return I}s.prototype.zeroBits=function(){if(this.isZero())return 0;for(var I=0,N=0;N<this.length;N++){var U=this._zeroBits(this.words[N]);if(I+=U,U!==26)break}return I},s.prototype.byteLength=function(){return Math.ceil(this.bitLength()/8)},s.prototype.toTwos=function(I){return this.negative!==0?this.abs().inotn(I).iaddn(1):this.clone()},s.prototype.fromTwos=function(I){return this.testn(I-1)?this.notn(I).iaddn(1).ineg():this.clone()},s.prototype.isNeg=function(){return this.negative!==0},s.prototype.neg=function(){return this.clone().ineg()},s.prototype.ineg=function(){return this.isZero()||(this.negative^=1),this},s.prototype.iuor=function(I){for(;this.length<I.length;)this.words[this.length++]=0;for(var N=0;N<I.length;N++)this.words[N]=this.words[N]|I.words[N];return this.strip()},s.prototype.ior=function(I){return i((this.negative|I.negative)===0),this.iuor(I)},s.prototype.or=function(I){return this.length>I.length?this.clone().ior(I):I.clone().ior(this)},s.prototype.uor=function(I){return this.length>I.length?this.clone().iuor(I):I.clone().iuor(this)},s.prototype.iuand=function(I){var N;this.length>I.length?N=I:N=this;for(var U=0;U<N.length;U++)this.words[U]=this.words[U]&I.words[U];return this.length=N.length,this.strip()},s.prototype.iand=function(I){return i((this.negative|I.negative)===0),this.iuand(I)},s.prototype.and=function(I){return this.length>I.length?this.clone().iand(I):I.clone().iand(this)},s.prototype.uand=function(I){return this.length>I.length?this.clone().iuand(I):I.clone().iuand(this)},s.prototype.iuxor=function(I){var N,U;this.length>I.length?(N=this,U=I):(N=I,U=this);for(var W=0;W<U.length;W++)this.words[W]=N.words[W]^U.words[W];if(this!==N)for(;W<N.length;W++)this.words[W]=N.words[W];return this.length=N.length,this.strip()},s.prototype.ixor=function(I){return i((this.negative|I.negative)===0),this.iuxor(I)},s.prototype.xor=function(I){return this.length>I.length?this.clone().ixor(I):I.clone().ixor(this)},s.prototype.uxor=function(I){return this.length>I.length?this.clone().iuxor(I):I.clone().iuxor(this)},s.prototype.inotn=function(I){i(typeof I=="number"&&I>=0);var N=Math.ceil(I/26)|0,U=I%26;this._expand(N),U>0&&N--;for(var W=0;W<N;W++)this.words[W]=~this.words[W]&67108863;return U>0&&(this.words[W]=~this.words[W]&67108863>>26-U),this.strip()},s.prototype.notn=function(I){return this.clone().inotn(I)},s.prototype.setn=function(I,N){i(typeof I=="number"&&I>=0);var U=I/26|0,W=I%26;return this._expand(U+1),N?this.words[U]=this.words[U]|1<<W:this.words[U]=this.words[U]&~(1<<W),this.strip()},s.prototype.iadd=function(I){var N;if(this.negative!==0&&I.negative===0)return this.negative=0,N=this.isub(I),this.negative^=1,this._normSign();if(this.negative===0&&I.negative!==0)return I.negative=0,N=this.isub(I),I.negative=1,N._normSign();var U,W;this.length>I.length?(U=this,W=I):(U=I,W=this);for(var Q=0,ue=0;ue<W.length;ue++)N=(U.words[ue]|0)+(W.words[ue]|0)+Q,this.words[ue]=N&67108863,Q=N>>>26;for(;Q!==0&&ue<U.length;ue++)N=(U.words[ue]|0)+Q,this.words[ue]=N&67108863,Q=N>>>26;if(this.length=U.length,Q!==0)this.words[this.length]=Q,this.length++;else if(U!==this)for(;ue<U.length;ue++)this.words[ue]=U.words[ue];return this},s.prototype.add=function(I){var N;return I.negative!==0&&this.negative===0?(I.negative=0,N=this.sub(I),I.negative^=1,N):I.negative===0&&this.negative!==0?(this.negative=0,N=I.sub(this),this.negative=1,N):this.length>I.length?this.clone().iadd(I):I.clone().iadd(this)},s.prototype.isub=function(I){if(I.negative!==0){I.negative=0;var N=this.iadd(I);return I.negative=1,N._normSign()}else if(this.negative!==0)return this.negative=0,this.iadd(I),this.negative=1,this._normSign();var U=this.cmp(I);if(U===0)return this.negative=0,this.length=1,this.words[0]=0,this;var W,Q;U>0?(W=this,Q=I):(W=I,Q=this);for(var ue=0,se=0;se<Q.length;se++)N=(W.words[se]|0)-(Q.words[se]|0)+ue,ue=N>>26,this.words[se]=N&67108863;for(;ue!==0&&se<W.length;se++)N=(W.words[se]|0)+ue,ue=N>>26,this.words[se]=N&67108863;if(ue===0&&se<W.length&&W!==this)for(;se<W.length;se++)this.words[se]=W.words[se];return this.length=Math.max(this.length,se),W!==this&&(this.negative=1),this.strip()},s.prototype.sub=function(I){return this.clone().isub(I)};function S(O,I,N){N.negative=I.negative^O.negative;var U=O.length+I.length|0;N.length=U,U=U-1|0;var W=O.words[0]|0,Q=I.words[0]|0,ue=W*Q,se=ue&67108863,he=ue/67108864|0;N.words[0]=se;for(var G=1;G<U;G++){for(var $=he>>>26,J=he&67108863,Z=Math.min(G,I.length-1),re=Math.max(0,G-O.length+1);re<=Z;re++){var ne=G-re|0;W=O.words[ne]|0,Q=I.words[re]|0,ue=W*Q+J,$+=ue/67108864|0,J=ue&67108863}N.words[G]=J|0,he=$|0}return he!==0?N.words[G]=he|0:N.length--,N.strip()}var E=function(I,N,U){var W=I.words,Q=N.words,ue=U.words,se=0,he,G,$,J=W[0]|0,Z=J&8191,re=J>>>13,ne=W[1]|0,j=ne&8191,ee=ne>>>13,ie=W[2]|0,fe=ie&8191,be=ie>>>13,Ae=W[3]|0,Be=Ae&8191,Ie=Ae>>>13,Ze=W[4]|0,at=Ze&8191,it=Ze>>>13,et=W[5]|0,lt=et&8191,Me=et>>>13,ge=W[6]|0,ce=ge&8191,ze=ge>>>13,tt=W[7]|0,nt=tt&8191,Qe=tt>>>13,Ct=W[8]|0,St=Ct&8191,Ot=Ct>>>13,jt=W[9]|0,ur=jt&8191,ar=jt>>>13,Cr=Q[0]|0,vr=Cr&8191,_r=Cr>>>13,yt=Q[1]|0,Fe=yt&8191,Ke=yt>>>13,Ne=Q[2]|0,Ee=Ne&8191,Ve=Ne>>>13,ke=Q[3]|0,Te=ke&8191,Le=ke>>>13,rt=Q[4]|0,dt=rt&8191,xt=rt>>>13,It=Q[5]|0,Bt=It&8191,Gt=It>>>13,Kt=Q[6]|0,sr=Kt&8191,sa=Kt>>>13,Aa=Q[7]|0,La=Aa&8191,ka=Aa>>>13,Ga=Q[8]|0,Ma=Ga&8191,Ua=Ga>>>13,ni=Q[9]|0,Wt=ni&8191,zt=ni>>>13;U.negative=I.negative^N.negative,U.length=19,he=Math.imul(Z,vr),G=Math.imul(Z,_r),G=G+Math.imul(re,vr)|0,$=Math.imul(re,_r);var Vt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Vt>>>26)|0,Vt&=67108863,he=Math.imul(j,vr),G=Math.imul(j,_r),G=G+Math.imul(ee,vr)|0,$=Math.imul(ee,_r),he=he+Math.imul(Z,Fe)|0,G=G+Math.imul(Z,Ke)|0,G=G+Math.imul(re,Fe)|0,$=$+Math.imul(re,Ke)|0;var Ut=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ut>>>26)|0,Ut&=67108863,he=Math.imul(fe,vr),G=Math.imul(fe,_r),G=G+Math.imul(be,vr)|0,$=Math.imul(be,_r),he=he+Math.imul(j,Fe)|0,G=G+Math.imul(j,Ke)|0,G=G+Math.imul(ee,Fe)|0,$=$+Math.imul(ee,Ke)|0,he=he+Math.imul(Z,Ee)|0,G=G+Math.imul(Z,Ve)|0,G=G+Math.imul(re,Ee)|0,$=$+Math.imul(re,Ve)|0;var xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(xr>>>26)|0,xr&=67108863,he=Math.imul(Be,vr),G=Math.imul(Be,_r),G=G+Math.imul(Ie,vr)|0,$=Math.imul(Ie,_r),he=he+Math.imul(fe,Fe)|0,G=G+Math.imul(fe,Ke)|0,G=G+Math.imul(be,Fe)|0,$=$+Math.imul(be,Ke)|0,he=he+Math.imul(j,Ee)|0,G=G+Math.imul(j,Ve)|0,G=G+Math.imul(ee,Ee)|0,$=$+Math.imul(ee,Ve)|0,he=he+Math.imul(Z,Te)|0,G=G+Math.imul(Z,Le)|0,G=G+Math.imul(re,Te)|0,$=$+Math.imul(re,Le)|0;var Zr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Zr>>>26)|0,Zr&=67108863,he=Math.imul(at,vr),G=Math.imul(at,_r),G=G+Math.imul(it,vr)|0,$=Math.imul(it,_r),he=he+Math.imul(Be,Fe)|0,G=G+Math.imul(Be,Ke)|0,G=G+Math.imul(Ie,Fe)|0,$=$+Math.imul(Ie,Ke)|0,he=he+Math.imul(fe,Ee)|0,G=G+Math.imul(fe,Ve)|0,G=G+Math.imul(be,Ee)|0,$=$+Math.imul(be,Ve)|0,he=he+Math.imul(j,Te)|0,G=G+Math.imul(j,Le)|0,G=G+Math.imul(ee,Te)|0,$=$+Math.imul(ee,Le)|0,he=he+Math.imul(Z,dt)|0,G=G+Math.imul(Z,xt)|0,G=G+Math.imul(re,dt)|0,$=$+Math.imul(re,xt)|0;var pa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(pa>>>26)|0,pa&=67108863,he=Math.imul(lt,vr),G=Math.imul(lt,_r),G=G+Math.imul(Me,vr)|0,$=Math.imul(Me,_r),he=he+Math.imul(at,Fe)|0,G=G+Math.imul(at,Ke)|0,G=G+Math.imul(it,Fe)|0,$=$+Math.imul(it,Ke)|0,he=he+Math.imul(Be,Ee)|0,G=G+Math.imul(Be,Ve)|0,G=G+Math.imul(Ie,Ee)|0,$=$+Math.imul(Ie,Ve)|0,he=he+Math.imul(fe,Te)|0,G=G+Math.imul(fe,Le)|0,G=G+Math.imul(be,Te)|0,$=$+Math.imul(be,Le)|0,he=he+Math.imul(j,dt)|0,G=G+Math.imul(j,xt)|0,G=G+Math.imul(ee,dt)|0,$=$+Math.imul(ee,xt)|0,he=he+Math.imul(Z,Bt)|0,G=G+Math.imul(Z,Gt)|0,G=G+Math.imul(re,Bt)|0,$=$+Math.imul(re,Gt)|0;var Xr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Xr>>>26)|0,Xr&=67108863,he=Math.imul(ce,vr),G=Math.imul(ce,_r),G=G+Math.imul(ze,vr)|0,$=Math.imul(ze,_r),he=he+Math.imul(lt,Fe)|0,G=G+Math.imul(lt,Ke)|0,G=G+Math.imul(Me,Fe)|0,$=$+Math.imul(Me,Ke)|0,he=he+Math.imul(at,Ee)|0,G=G+Math.imul(at,Ve)|0,G=G+Math.imul(it,Ee)|0,$=$+Math.imul(it,Ve)|0,he=he+Math.imul(Be,Te)|0,G=G+Math.imul(Be,Le)|0,G=G+Math.imul(Ie,Te)|0,$=$+Math.imul(Ie,Le)|0,he=he+Math.imul(fe,dt)|0,G=G+Math.imul(fe,xt)|0,G=G+Math.imul(be,dt)|0,$=$+Math.imul(be,xt)|0,he=he+Math.imul(j,Bt)|0,G=G+Math.imul(j,Gt)|0,G=G+Math.imul(ee,Bt)|0,$=$+Math.imul(ee,Gt)|0,he=he+Math.imul(Z,sr)|0,G=G+Math.imul(Z,sa)|0,G=G+Math.imul(re,sr)|0,$=$+Math.imul(re,sa)|0;var Ea=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Ea>>>26)|0,Ea&=67108863,he=Math.imul(nt,vr),G=Math.imul(nt,_r),G=G+Math.imul(Qe,vr)|0,$=Math.imul(Qe,_r),he=he+Math.imul(ce,Fe)|0,G=G+Math.imul(ce,Ke)|0,G=G+Math.imul(ze,Fe)|0,$=$+Math.imul(ze,Ke)|0,he=he+Math.imul(lt,Ee)|0,G=G+Math.imul(lt,Ve)|0,G=G+Math.imul(Me,Ee)|0,$=$+Math.imul(Me,Ve)|0,he=he+Math.imul(at,Te)|0,G=G+Math.imul(at,Le)|0,G=G+Math.imul(it,Te)|0,$=$+Math.imul(it,Le)|0,he=he+Math.imul(Be,dt)|0,G=G+Math.imul(Be,xt)|0,G=G+Math.imul(Ie,dt)|0,$=$+Math.imul(Ie,xt)|0,he=he+Math.imul(fe,Bt)|0,G=G+Math.imul(fe,Gt)|0,G=G+Math.imul(be,Bt)|0,$=$+Math.imul(be,Gt)|0,he=he+Math.imul(j,sr)|0,G=G+Math.imul(j,sa)|0,G=G+Math.imul(ee,sr)|0,$=$+Math.imul(ee,sa)|0,he=he+Math.imul(Z,La)|0,G=G+Math.imul(Z,ka)|0,G=G+Math.imul(re,La)|0,$=$+Math.imul(re,ka)|0;var Fa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Fa>>>26)|0,Fa&=67108863,he=Math.imul(St,vr),G=Math.imul(St,_r),G=G+Math.imul(Ot,vr)|0,$=Math.imul(Ot,_r),he=he+Math.imul(nt,Fe)|0,G=G+Math.imul(nt,Ke)|0,G=G+Math.imul(Qe,Fe)|0,$=$+Math.imul(Qe,Ke)|0,he=he+Math.imul(ce,Ee)|0,G=G+Math.imul(ce,Ve)|0,G=G+Math.imul(ze,Ee)|0,$=$+Math.imul(ze,Ve)|0,he=he+Math.imul(lt,Te)|0,G=G+Math.imul(lt,Le)|0,G=G+Math.imul(Me,Te)|0,$=$+Math.imul(Me,Le)|0,he=he+Math.imul(at,dt)|0,G=G+Math.imul(at,xt)|0,G=G+Math.imul(it,dt)|0,$=$+Math.imul(it,xt)|0,he=he+Math.imul(Be,Bt)|0,G=G+Math.imul(Be,Gt)|0,G=G+Math.imul(Ie,Bt)|0,$=$+Math.imul(Ie,Gt)|0,he=he+Math.imul(fe,sr)|0,G=G+Math.imul(fe,sa)|0,G=G+Math.imul(be,sr)|0,$=$+Math.imul(be,sa)|0,he=he+Math.imul(j,La)|0,G=G+Math.imul(j,ka)|0,G=G+Math.imul(ee,La)|0,$=$+Math.imul(ee,ka)|0,he=he+Math.imul(Z,Ma)|0,G=G+Math.imul(Z,Ua)|0,G=G+Math.imul(re,Ma)|0,$=$+Math.imul(re,Ua)|0;var qa=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(qa>>>26)|0,qa&=67108863,he=Math.imul(ur,vr),G=Math.imul(ur,_r),G=G+Math.imul(ar,vr)|0,$=Math.imul(ar,_r),he=he+Math.imul(St,Fe)|0,G=G+Math.imul(St,Ke)|0,G=G+Math.imul(Ot,Fe)|0,$=$+Math.imul(Ot,Ke)|0,he=he+Math.imul(nt,Ee)|0,G=G+Math.imul(nt,Ve)|0,G=G+Math.imul(Qe,Ee)|0,$=$+Math.imul(Qe,Ve)|0,he=he+Math.imul(ce,Te)|0,G=G+Math.imul(ce,Le)|0,G=G+Math.imul(ze,Te)|0,$=$+Math.imul(ze,Le)|0,he=he+Math.imul(lt,dt)|0,G=G+Math.imul(lt,xt)|0,G=G+Math.imul(Me,dt)|0,$=$+Math.imul(Me,xt)|0,he=he+Math.imul(at,Bt)|0,G=G+Math.imul(at,Gt)|0,G=G+Math.imul(it,Bt)|0,$=$+Math.imul(it,Gt)|0,he=he+Math.imul(Be,sr)|0,G=G+Math.imul(Be,sa)|0,G=G+Math.imul(Ie,sr)|0,$=$+Math.imul(Ie,sa)|0,he=he+Math.imul(fe,La)|0,G=G+Math.imul(fe,ka)|0,G=G+Math.imul(be,La)|0,$=$+Math.imul(be,ka)|0,he=he+Math.imul(j,Ma)|0,G=G+Math.imul(j,Ua)|0,G=G+Math.imul(ee,Ma)|0,$=$+Math.imul(ee,Ua)|0,he=he+Math.imul(Z,Wt)|0,G=G+Math.imul(Z,zt)|0,G=G+Math.imul(re,Wt)|0,$=$+Math.imul(re,zt)|0;var ya=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(ya>>>26)|0,ya&=67108863,he=Math.imul(ur,Fe),G=Math.imul(ur,Ke),G=G+Math.imul(ar,Fe)|0,$=Math.imul(ar,Ke),he=he+Math.imul(St,Ee)|0,G=G+Math.imul(St,Ve)|0,G=G+Math.imul(Ot,Ee)|0,$=$+Math.imul(Ot,Ve)|0,he=he+Math.imul(nt,Te)|0,G=G+Math.imul(nt,Le)|0,G=G+Math.imul(Qe,Te)|0,$=$+Math.imul(Qe,Le)|0,he=he+Math.imul(ce,dt)|0,G=G+Math.imul(ce,xt)|0,G=G+Math.imul(ze,dt)|0,$=$+Math.imul(ze,xt)|0,he=he+Math.imul(lt,Bt)|0,G=G+Math.imul(lt,Gt)|0,G=G+Math.imul(Me,Bt)|0,$=$+Math.imul(Me,Gt)|0,he=he+Math.imul(at,sr)|0,G=G+Math.imul(at,sa)|0,G=G+Math.imul(it,sr)|0,$=$+Math.imul(it,sa)|0,he=he+Math.imul(Be,La)|0,G=G+Math.imul(Be,ka)|0,G=G+Math.imul(Ie,La)|0,$=$+Math.imul(Ie,ka)|0,he=he+Math.imul(fe,Ma)|0,G=G+Math.imul(fe,Ua)|0,G=G+Math.imul(be,Ma)|0,$=$+Math.imul(be,Ua)|0,he=he+Math.imul(j,Wt)|0,G=G+Math.imul(j,zt)|0,G=G+Math.imul(ee,Wt)|0,$=$+Math.imul(ee,zt)|0;var $a=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+($a>>>26)|0,$a&=67108863,he=Math.imul(ur,Ee),G=Math.imul(ur,Ve),G=G+Math.imul(ar,Ee)|0,$=Math.imul(ar,Ve),he=he+Math.imul(St,Te)|0,G=G+Math.imul(St,Le)|0,G=G+Math.imul(Ot,Te)|0,$=$+Math.imul(Ot,Le)|0,he=he+Math.imul(nt,dt)|0,G=G+Math.imul(nt,xt)|0,G=G+Math.imul(Qe,dt)|0,$=$+Math.imul(Qe,xt)|0,he=he+Math.imul(ce,Bt)|0,G=G+Math.imul(ce,Gt)|0,G=G+Math.imul(ze,Bt)|0,$=$+Math.imul(ze,Gt)|0,he=he+Math.imul(lt,sr)|0,G=G+Math.imul(lt,sa)|0,G=G+Math.imul(Me,sr)|0,$=$+Math.imul(Me,sa)|0,he=he+Math.imul(at,La)|0,G=G+Math.imul(at,ka)|0,G=G+Math.imul(it,La)|0,$=$+Math.imul(it,ka)|0,he=he+Math.imul(Be,Ma)|0,G=G+Math.imul(Be,Ua)|0,G=G+Math.imul(Ie,Ma)|0,$=$+Math.imul(Ie,Ua)|0,he=he+Math.imul(fe,Wt)|0,G=G+Math.imul(fe,zt)|0,G=G+Math.imul(be,Wt)|0,$=$+Math.imul(be,zt)|0;var mt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(mt>>>26)|0,mt&=67108863,he=Math.imul(ur,Te),G=Math.imul(ur,Le),G=G+Math.imul(ar,Te)|0,$=Math.imul(ar,Le),he=he+Math.imul(St,dt)|0,G=G+Math.imul(St,xt)|0,G=G+Math.imul(Ot,dt)|0,$=$+Math.imul(Ot,xt)|0,he=he+Math.imul(nt,Bt)|0,G=G+Math.imul(nt,Gt)|0,G=G+Math.imul(Qe,Bt)|0,$=$+Math.imul(Qe,Gt)|0,he=he+Math.imul(ce,sr)|0,G=G+Math.imul(ce,sa)|0,G=G+Math.imul(ze,sr)|0,$=$+Math.imul(ze,sa)|0,he=he+Math.imul(lt,La)|0,G=G+Math.imul(lt,ka)|0,G=G+Math.imul(Me,La)|0,$=$+Math.imul(Me,ka)|0,he=he+Math.imul(at,Ma)|0,G=G+Math.imul(at,Ua)|0,G=G+Math.imul(it,Ma)|0,$=$+Math.imul(it,Ua)|0,he=he+Math.imul(Be,Wt)|0,G=G+Math.imul(Be,zt)|0,G=G+Math.imul(Ie,Wt)|0,$=$+Math.imul(Ie,zt)|0;var gt=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(gt>>>26)|0,gt&=67108863,he=Math.imul(ur,dt),G=Math.imul(ur,xt),G=G+Math.imul(ar,dt)|0,$=Math.imul(ar,xt),he=he+Math.imul(St,Bt)|0,G=G+Math.imul(St,Gt)|0,G=G+Math.imul(Ot,Bt)|0,$=$+Math.imul(Ot,Gt)|0,he=he+Math.imul(nt,sr)|0,G=G+Math.imul(nt,sa)|0,G=G+Math.imul(Qe,sr)|0,$=$+Math.imul(Qe,sa)|0,he=he+Math.imul(ce,La)|0,G=G+Math.imul(ce,ka)|0,G=G+Math.imul(ze,La)|0,$=$+Math.imul(ze,ka)|0,he=he+Math.imul(lt,Ma)|0,G=G+Math.imul(lt,Ua)|0,G=G+Math.imul(Me,Ma)|0,$=$+Math.imul(Me,Ua)|0,he=he+Math.imul(at,Wt)|0,G=G+Math.imul(at,zt)|0,G=G+Math.imul(it,Wt)|0,$=$+Math.imul(it,zt)|0;var Er=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Er>>>26)|0,Er&=67108863,he=Math.imul(ur,Bt),G=Math.imul(ur,Gt),G=G+Math.imul(ar,Bt)|0,$=Math.imul(ar,Gt),he=he+Math.imul(St,sr)|0,G=G+Math.imul(St,sa)|0,G=G+Math.imul(Ot,sr)|0,$=$+Math.imul(Ot,sa)|0,he=he+Math.imul(nt,La)|0,G=G+Math.imul(nt,ka)|0,G=G+Math.imul(Qe,La)|0,$=$+Math.imul(Qe,ka)|0,he=he+Math.imul(ce,Ma)|0,G=G+Math.imul(ce,Ua)|0,G=G+Math.imul(ze,Ma)|0,$=$+Math.imul(ze,Ua)|0,he=he+Math.imul(lt,Wt)|0,G=G+Math.imul(lt,zt)|0,G=G+Math.imul(Me,Wt)|0,$=$+Math.imul(Me,zt)|0;var kr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(kr>>>26)|0,kr&=67108863,he=Math.imul(ur,sr),G=Math.imul(ur,sa),G=G+Math.imul(ar,sr)|0,$=Math.imul(ar,sa),he=he+Math.imul(St,La)|0,G=G+Math.imul(St,ka)|0,G=G+Math.imul(Ot,La)|0,$=$+Math.imul(Ot,ka)|0,he=he+Math.imul(nt,Ma)|0,G=G+Math.imul(nt,Ua)|0,G=G+Math.imul(Qe,Ma)|0,$=$+Math.imul(Qe,Ua)|0,he=he+Math.imul(ce,Wt)|0,G=G+Math.imul(ce,zt)|0,G=G+Math.imul(ze,Wt)|0,$=$+Math.imul(ze,zt)|0;var br=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(br>>>26)|0,br&=67108863,he=Math.imul(ur,La),G=Math.imul(ur,ka),G=G+Math.imul(ar,La)|0,$=Math.imul(ar,ka),he=he+Math.imul(St,Ma)|0,G=G+Math.imul(St,Ua)|0,G=G+Math.imul(Ot,Ma)|0,$=$+Math.imul(Ot,Ua)|0,he=he+Math.imul(nt,Wt)|0,G=G+Math.imul(nt,zt)|0,G=G+Math.imul(Qe,Wt)|0,$=$+Math.imul(Qe,zt)|0;var Tr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Tr>>>26)|0,Tr&=67108863,he=Math.imul(ur,Ma),G=Math.imul(ur,Ua),G=G+Math.imul(ar,Ma)|0,$=Math.imul(ar,Ua),he=he+Math.imul(St,Wt)|0,G=G+Math.imul(St,zt)|0,G=G+Math.imul(Ot,Wt)|0,$=$+Math.imul(Ot,zt)|0;var Mr=(se+he|0)+((G&8191)<<13)|0;se=($+(G>>>13)|0)+(Mr>>>26)|0,Mr&=67108863,he=Math.imul(ur,Wt),G=Math.imul(ur,zt),G=G+Math.imul(ar,Wt)|0,$=Math.imul(ar,zt);var Fr=(se+he|0)+((G&8191)<<13)|0;return se=($+(G>>>13)|0)+(Fr>>>26)|0,Fr&=67108863,ue[0]=Vt,ue[1]=Ut,ue[2]=xr,ue[3]=Zr,ue[4]=pa,ue[5]=Xr,ue[6]=Ea,ue[7]=Fa,ue[8]=qa,ue[9]=ya,ue[10]=$a,ue[11]=mt,ue[12]=gt,ue[13]=Er,ue[14]=kr,ue[15]=br,ue[16]=Tr,ue[17]=Mr,ue[18]=Fr,se!==0&&(ue[19]=se,U.length++),U};Math.imul||(E=S);function m(O,I,N){N.negative=I.negative^O.negative,N.length=O.length+I.length;for(var U=0,W=0,Q=0;Q<N.length-1;Q++){var ue=W;W=0;for(var se=U&67108863,he=Math.min(Q,I.length-1),G=Math.max(0,Q-O.length+1);G<=he;G++){var $=Q-G,J=O.words[$]|0,Z=I.words[G]|0,re=J*Z,ne=re&67108863;ue=ue+(re/67108864|0)|0,ne=ne+se|0,se=ne&67108863,ue=ue+(ne>>>26)|0,W+=ue>>>26,ue&=67108863}N.words[Q]=se,U=ue,ue=W}return U!==0?N.words[Q]=U:N.length--,N.strip()}function b(O,I,N){var U=new d;return U.mulp(O,I,N)}s.prototype.mulTo=function(I,N){var U,W=this.length+I.length;return this.length===10&&I.length===10?U=E(this,I,N):W<63?U=S(this,I,N):W<1024?U=m(this,I,N):U=b(this,I,N),U};function d(O,I){this.x=O,this.y=I}d.prototype.makeRBT=function(I){for(var N=new Array(I),U=s.prototype._countBits(I)-1,W=0;W<I;W++)N[W]=this.revBin(W,U,I);return N},d.prototype.revBin=function(I,N,U){if(I===0||I===U-1)return I;for(var W=0,Q=0;Q<N;Q++)W|=(I&1)<<N-Q-1,I>>=1;return W},d.prototype.permute=function(I,N,U,W,Q,ue){for(var se=0;se<ue;se++)W[se]=N[I[se]],Q[se]=U[I[se]]},d.prototype.transform=function(I,N,U,W,Q,ue){this.permute(ue,I,N,U,W,Q);for(var se=1;se<Q;se<<=1)for(var he=se<<1,G=Math.cos(2*Math.PI/he),$=Math.sin(2*Math.PI/he),J=0;J<Q;J+=he)for(var Z=G,re=$,ne=0;ne<se;ne++){var j=U[J+ne],ee=W[J+ne],ie=U[J+ne+se],fe=W[J+ne+se],be=Z*ie-re*fe;fe=Z*fe+re*ie,ie=be,U[J+ne]=j+ie,W[J+ne]=ee+fe,U[J+ne+se]=j-ie,W[J+ne+se]=ee-fe,ne!==he&&(be=G*Z-$*re,re=G*re+$*Z,Z=be)}},d.prototype.guessLen13b=function(I,N){var U=Math.max(N,I)|1,W=U&1,Q=0;for(U=U/2|0;U;U=U>>>1)Q++;return 1<<Q+1+W},d.prototype.conjugate=function(I,N,U){if(!(U<=1))for(var W=0;W<U/2;W++){var Q=I[W];I[W]=I[U-W-1],I[U-W-1]=Q,Q=N[W],N[W]=-N[U-W-1],N[U-W-1]=-Q}},d.prototype.normalize13b=function(I,N){for(var U=0,W=0;W<N/2;W++){var Q=Math.round(I[2*W+1]/N)*8192+Math.round(I[2*W]/N)+U;I[W]=Q&67108863,Q<67108864?U=0:U=Q/67108864|0}return I},d.prototype.convert13b=function(I,N,U,W){for(var Q=0,ue=0;ue<N;ue++)Q=Q+(I[ue]|0),U[2*ue]=Q&8191,Q=Q>>>13,U[2*ue+1]=Q&8191,Q=Q>>>13;for(ue=2*N;ue<W;++ue)U[ue]=0;i(Q===0),i((Q&-8192)===0)},d.prototype.stub=function(I){for(var N=new Array(I),U=0;U<I;U++)N[U]=0;return N},d.prototype.mulp=function(I,N,U){var W=2*this.guessLen13b(I.length,N.length),Q=this.makeRBT(W),ue=this.stub(W),se=new Array(W),he=new Array(W),G=new Array(W),$=new Array(W),J=new Array(W),Z=new Array(W),re=U.words;re.length=W,this.convert13b(I.words,I.length,se,W),this.convert13b(N.words,N.length,$,W),this.transform(se,ue,he,G,W,Q),this.transform($,ue,J,Z,W,Q);for(var ne=0;ne<W;ne++){var j=he[ne]*J[ne]-G[ne]*Z[ne];G[ne]=he[ne]*Z[ne]+G[ne]*J[ne],he[ne]=j}return this.conjugate(he,G,W),this.transform(he,G,re,ue,W,Q),this.conjugate(re,ue,W),this.normalize13b(re,W),U.negative=I.negative^N.negative,U.length=I.length+N.length,U.strip()},s.prototype.mul=function(I){var N=new s(null);return N.words=new Array(this.length+I.length),this.mulTo(I,N)},s.prototype.mulf=function(I){var N=new s(null);return N.words=new Array(this.length+I.length),b(this,I,N)},s.prototype.imul=function(I){return this.clone().mulTo(I,this)},s.prototype.imuln=function(I){i(typeof I=="number"),i(I<67108864);for(var N=0,U=0;U<this.length;U++){var W=(this.words[U]|0)*I,Q=(W&67108863)+(N&67108863);N>>=26,N+=W/67108864|0,N+=Q>>>26,this.words[U]=Q&67108863}return N!==0&&(this.words[U]=N,this.length++),this},s.prototype.muln=function(I){return this.clone().imuln(I)},s.prototype.sqr=function(){return this.mul(this)},s.prototype.isqr=function(){return this.imul(this.clone())},s.prototype.pow=function(I){var N=w(I);if(N.length===0)return new s(1);for(var U=this,W=0;W<N.length&&N[W]===0;W++,U=U.sqr());if(++W<N.length)for(var Q=U.sqr();W<N.length;W++,Q=Q.sqr())N[W]!==0&&(U=U.mul(Q));return U},s.prototype.iushln=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=67108863>>>26-N<<26-N,Q;if(N!==0){var ue=0;for(Q=0;Q<this.length;Q++){var se=this.words[Q]&W,he=(this.words[Q]|0)-se<<N;this.words[Q]=he|ue,ue=se>>>26-N}ue&&(this.words[Q]=ue,this.length++)}if(U!==0){for(Q=this.length-1;Q>=0;Q--)this.words[Q+U]=this.words[Q];for(Q=0;Q<U;Q++)this.words[Q]=0;this.length+=U}return this.strip()},s.prototype.ishln=function(I){return i(this.negative===0),this.iushln(I)},s.prototype.iushrn=function(I,N,U){i(typeof I=="number"&&I>=0);var W;N?W=(N-N%26)/26:W=0;var Q=I%26,ue=Math.min((I-Q)/26,this.length),se=67108863^67108863>>>Q<<Q,he=U;if(W-=ue,W=Math.max(0,W),he){for(var G=0;G<ue;G++)he.words[G]=this.words[G];he.length=ue}if(ue!==0)if(this.length>ue)for(this.length-=ue,G=0;G<this.length;G++)this.words[G]=this.words[G+ue];else this.words[0]=0,this.length=1;var $=0;for(G=this.length-1;G>=0&&($!==0||G>=W);G--){var J=this.words[G]|0;this.words[G]=$<<26-Q|J>>>Q,$=J&se}return he&&$!==0&&(he.words[he.length++]=$),this.length===0&&(this.words[0]=0,this.length=1),this.strip()},s.prototype.ishrn=function(I,N,U){return i(this.negative===0),this.iushrn(I,N,U)},s.prototype.shln=function(I){return this.clone().ishln(I)},s.prototype.ushln=function(I){return this.clone().iushln(I)},s.prototype.shrn=function(I){return this.clone().ishrn(I)},s.prototype.ushrn=function(I){return this.clone().iushrn(I)},s.prototype.testn=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26,W=1<<N;if(this.length<=U)return!1;var Q=this.words[U];return!!(Q&W)},s.prototype.imaskn=function(I){i(typeof I=="number"&&I>=0);var N=I%26,U=(I-N)/26;if(i(this.negative===0,"imaskn works only with positive numbers"),this.length<=U)return this;if(N!==0&&U++,this.length=Math.min(U,this.length),N!==0){var W=67108863^67108863>>>N<<N;this.words[this.length-1]&=W}return this.strip()},s.prototype.maskn=function(I){return this.clone().imaskn(I)},s.prototype.iaddn=function(I){return i(typeof I=="number"),i(I<67108864),I<0?this.isubn(-I):this.negative!==0?this.length===1&&(this.words[0]|0)<I?(this.words[0]=I-(this.words[0]|0),this.negative=0,this):(this.negative=0,this.isubn(I),this.negative=1,this):this._iaddn(I)},s.prototype._iaddn=function(I){this.words[0]+=I;for(var N=0;N<this.length&&this.words[N]>=67108864;N++)this.words[N]-=67108864,N===this.length-1?this.words[N+1]=1:this.words[N+1]++;return this.length=Math.max(this.length,N+1),this},s.prototype.isubn=function(I){if(i(typeof I=="number"),i(I<67108864),I<0)return this.iaddn(-I);if(this.negative!==0)return this.negative=0,this.iaddn(I),this.negative=1,this;if(this.words[0]-=I,this.length===1&&this.words[0]<0)this.words[0]=-this.words[0],this.negative=1;else for(var N=0;N<this.length&&this.words[N]<0;N++)this.words[N]+=67108864,this.words[N+1]-=1;return this.strip()},s.prototype.addn=function(I){return this.clone().iaddn(I)},s.prototype.subn=function(I){return this.clone().isubn(I)},s.prototype.iabs=function(){return this.negative=0,this},s.prototype.abs=function(){return this.clone().iabs()},s.prototype._ishlnsubmul=function(I,N,U){var W=I.length+U,Q;this._expand(W);var ue,se=0;for(Q=0;Q<I.length;Q++){ue=(this.words[Q+U]|0)+se;var he=(I.words[Q]|0)*N;ue-=he&67108863,se=(ue>>26)-(he/67108864|0),this.words[Q+U]=ue&67108863}for(;Q<this.length-U;Q++)ue=(this.words[Q+U]|0)+se,se=ue>>26,this.words[Q+U]=ue&67108863;if(se===0)return this.strip();for(i(se===-1),se=0,Q=0;Q<this.length;Q++)ue=-(this.words[Q]|0)+se,se=ue>>26,this.words[Q]=ue&67108863;return this.negative=1,this.strip()},s.prototype._wordDiv=function(I,N){var U=this.length-I.length,W=this.clone(),Q=I,ue=Q.words[Q.length-1]|0,se=this._countBits(ue);U=26-se,U!==0&&(Q=Q.ushln(U),W.iushln(U),ue=Q.words[Q.length-1]|0);var he=W.length-Q.length,G;if(N!=="mod"){G=new s(null),G.length=he+1,G.words=new Array(G.length);for(var $=0;$<G.length;$++)G.words[$]=0}var J=W.clone()._ishlnsubmul(Q,1,he);J.negative===0&&(W=J,G&&(G.words[he]=1));for(var Z=he-1;Z>=0;Z--){var re=(W.words[Q.length+Z]|0)*67108864+(W.words[Q.length+Z-1]|0);for(re=Math.min(re/ue|0,67108863),W._ishlnsubmul(Q,re,Z);W.negative!==0;)re--,W.negative=0,W._ishlnsubmul(Q,1,Z),W.isZero()||(W.negative^=1);G&&(G.words[Z]=re)}return G&&G.strip(),W.strip(),N!=="div"&&U!==0&&W.iushrn(U),{div:G||null,mod:W}},s.prototype.divmod=function(I,N,U){if(i(!I.isZero()),this.isZero())return{div:new s(0),mod:new s(0)};var W,Q,ue;return this.negative!==0&&I.negative===0?(ue=this.neg().divmod(I,N),N!=="mod"&&(W=ue.div.neg()),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.iadd(I)),{div:W,mod:Q}):this.negative===0&&I.negative!==0?(ue=this.divmod(I.neg(),N),N!=="mod"&&(W=ue.div.neg()),{div:W,mod:ue.mod}):this.negative&I.negative?(ue=this.neg().divmod(I.neg(),N),N!=="div"&&(Q=ue.mod.neg(),U&&Q.negative!==0&&Q.isub(I)),{div:ue.div,mod:Q}):I.length>this.length||this.cmp(I)<0?{div:new s(0),mod:this}:I.length===1?N==="div"?{div:this.divn(I.words[0]),mod:null}:N==="mod"?{div:null,mod:new s(this.modn(I.words[0]))}:{div:this.divn(I.words[0]),mod:new s(this.modn(I.words[0]))}:this._wordDiv(I,N)},s.prototype.div=function(I){return this.divmod(I,"div",!1).div},s.prototype.mod=function(I){return this.divmod(I,"mod",!1).mod},s.prototype.umod=function(I){return this.divmod(I,"mod",!0).mod},s.prototype.divRound=function(I){var N=this.divmod(I);if(N.mod.isZero())return N.div;var U=N.div.negative!==0?N.mod.isub(I):N.mod,W=I.ushrn(1),Q=I.andln(1),ue=U.cmp(W);return ue<0||Q===1&&ue===0?N.div:N.div.negative!==0?N.div.isubn(1):N.div.iaddn(1)},s.prototype.modn=function(I){i(I<=67108863);for(var N=(1<<26)%I,U=0,W=this.length-1;W>=0;W--)U=(N*U+(this.words[W]|0))%I;return U},s.prototype.idivn=function(I){i(I<=67108863);for(var N=0,U=this.length-1;U>=0;U--){var W=(this.words[U]|0)+N*67108864;this.words[U]=W/I|0,N=W%I}return this.strip()},s.prototype.divn=function(I){return this.clone().idivn(I)},s.prototype.egcd=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=new s(0),se=new s(1),he=0;N.isEven()&&U.isEven();)N.iushrn(1),U.iushrn(1),++he;for(var G=U.clone(),$=N.clone();!N.isZero();){for(var J=0,Z=1;!(N.words[0]&Z)&&J<26;++J,Z<<=1);if(J>0)for(N.iushrn(J);J-- >0;)(W.isOdd()||Q.isOdd())&&(W.iadd(G),Q.isub($)),W.iushrn(1),Q.iushrn(1);for(var re=0,ne=1;!(U.words[0]&ne)&&re<26;++re,ne<<=1);if(re>0)for(U.iushrn(re);re-- >0;)(ue.isOdd()||se.isOdd())&&(ue.iadd(G),se.isub($)),ue.iushrn(1),se.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(ue),Q.isub(se)):(U.isub(N),ue.isub(W),se.isub(Q))}return{a:ue,b:se,gcd:U.iushln(he)}},s.prototype._invmp=function(I){i(I.negative===0),i(!I.isZero());var N=this,U=I.clone();N.negative!==0?N=N.umod(I):N=N.clone();for(var W=new s(1),Q=new s(0),ue=U.clone();N.cmpn(1)>0&&U.cmpn(1)>0;){for(var se=0,he=1;!(N.words[0]&he)&&se<26;++se,he<<=1);if(se>0)for(N.iushrn(se);se-- >0;)W.isOdd()&&W.iadd(ue),W.iushrn(1);for(var G=0,$=1;!(U.words[0]&$)&&G<26;++G,$<<=1);if(G>0)for(U.iushrn(G);G-- >0;)Q.isOdd()&&Q.iadd(ue),Q.iushrn(1);N.cmp(U)>=0?(N.isub(U),W.isub(Q)):(U.isub(N),Q.isub(W))}var J;return N.cmpn(1)===0?J=W:J=Q,J.cmpn(0)<0&&J.iadd(I),J},s.prototype.gcd=function(I){if(this.isZero())return I.abs();if(I.isZero())return this.abs();var N=this.clone(),U=I.clone();N.negative=0,U.negative=0;for(var W=0;N.isEven()&&U.isEven();W++)N.iushrn(1),U.iushrn(1);do{for(;N.isEven();)N.iushrn(1);for(;U.isEven();)U.iushrn(1);var Q=N.cmp(U);if(Q<0){var ue=N;N=U,U=ue}else if(Q===0||U.cmpn(1)===0)break;N.isub(U)}while(!0);return U.iushln(W)},s.prototype.invm=function(I){return this.egcd(I).a.umod(I)},s.prototype.isEven=function(){return(this.words[0]&1)===0},s.prototype.isOdd=function(){return(this.words[0]&1)===1},s.prototype.andln=function(I){return this.words[0]&I},s.prototype.bincn=function(I){i(typeof I=="number");var N=I%26,U=(I-N)/26,W=1<<N;if(this.length<=U)return this._expand(U+1),this.words[U]|=W,this;for(var Q=W,ue=U;Q!==0&&ue<this.length;ue++){var se=this.words[ue]|0;se+=Q,Q=se>>>26,se&=67108863,this.words[ue]=se}return Q!==0&&(this.words[ue]=Q,this.length++),this},s.prototype.isZero=function(){return this.length===1&&this.words[0]===0},s.prototype.cmpn=function(I){var N=I<0;if(this.negative!==0&&!N)return-1;if(this.negative===0&&N)return 1;this.strip();var U;if(this.length>1)U=1;else{N&&(I=-I),i(I<=67108863,"Number is too big");var W=this.words[0]|0;U=W===I?0:W<I?-1:1}return this.negative!==0?-U|0:U},s.prototype.cmp=function(I){if(this.negative!==0&&I.negative===0)return-1;if(this.negative===0&&I.negative!==0)return 1;var N=this.ucmp(I);return this.negative!==0?-N|0:N},s.prototype.ucmp=function(I){if(this.length>I.length)return 1;if(this.length<I.length)return-1;for(var N=0,U=this.length-1;U>=0;U--){var W=this.words[U]|0,Q=I.words[U]|0;if(W!==Q){W<Q?N=-1:W>Q&&(N=1);break}}return N},s.prototype.gtn=function(I){return this.cmpn(I)===1},s.prototype.gt=function(I){return this.cmp(I)===1},s.prototype.gten=function(I){return this.cmpn(I)>=0},s.prototype.gte=function(I){return this.cmp(I)>=0},s.prototype.ltn=function(I){return this.cmpn(I)===-1},s.prototype.lt=function(I){return this.cmp(I)===-1},s.prototype.lten=function(I){return this.cmpn(I)<=0},s.prototype.lte=function(I){return this.cmp(I)<=0},s.prototype.eqn=function(I){return this.cmpn(I)===0},s.prototype.eq=function(I){return this.cmp(I)===0},s.red=function(I){return new F(I)},s.prototype.toRed=function(I){return i(!this.red,"Already a number in reduction context"),i(this.negative===0,"red works only with positives"),I.convertTo(this)._forceRed(I)},s.prototype.fromRed=function(){return i(this.red,"fromRed works only with numbers in reduction context"),this.red.convertFrom(this)},s.prototype._forceRed=function(I){return this.red=I,this},s.prototype.forceRed=function(I){return i(!this.red,"Already a number in reduction context"),this._forceRed(I)},s.prototype.redAdd=function(I){return i(this.red,"redAdd works only with red numbers"),this.red.add(this,I)},s.prototype.redIAdd=function(I){return i(this.red,"redIAdd works only with red numbers"),this.red.iadd(this,I)},s.prototype.redSub=function(I){return i(this.red,"redSub works only with red numbers"),this.red.sub(this,I)},s.prototype.redISub=function(I){return i(this.red,"redISub works only with red numbers"),this.red.isub(this,I)},s.prototype.redShl=function(I){return i(this.red,"redShl works only with red numbers"),this.red.shl(this,I)},s.prototype.redMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.mul(this,I)},s.prototype.redIMul=function(I){return i(this.red,"redMul works only with red numbers"),this.red._verify2(this,I),this.red.imul(this,I)},s.prototype.redSqr=function(){return i(this.red,"redSqr works only with red numbers"),this.red._verify1(this),this.red.sqr(this)},s.prototype.redISqr=function(){return i(this.red,"redISqr works only with red numbers"),this.red._verify1(this),this.red.isqr(this)},s.prototype.redSqrt=function(){return i(this.red,"redSqrt works only with red numbers"),this.red._verify1(this),this.red.sqrt(this)},s.prototype.redInvm=function(){return i(this.red,"redInvm works only with red numbers"),this.red._verify1(this),this.red.invm(this)},s.prototype.redNeg=function(){return i(this.red,"redNeg works only with red numbers"),this.red._verify1(this),this.red.neg(this)},s.prototype.redPow=function(I){return i(this.red&&!I.red,"redPow(normalNum)"),this.red._verify1(this),this.red.pow(this,I)};var u={k256:null,p224:null,p192:null,p25519:null};function y(O,I){this.name=O,this.p=new s(I,16),this.n=this.p.bitLength(),this.k=new s(1).iushln(this.n).isub(this.p),this.tmp=this._tmp()}y.prototype._tmp=function(){var I=new s(null);return I.words=new Array(Math.ceil(this.n/13)),I},y.prototype.ireduce=function(I){var N=I,U;do this.split(N,this.tmp),N=this.imulK(N),N=N.iadd(this.tmp),U=N.bitLength();while(U>this.n);var W=U<this.n?-1:N.ucmp(this.p);return W===0?(N.words[0]=0,N.length=1):W>0?N.isub(this.p):N.strip!==void 0?N.strip():N._strip(),N},y.prototype.split=function(I,N){I.iushrn(this.n,0,N)},y.prototype.imulK=function(I){return I.imul(this.k)};function f(){y.call(this,"k256","ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff fffffffe fffffc2f")}n(f,y),f.prototype.split=function(I,N){for(var U=4194303,W=Math.min(I.length,9),Q=0;Q<W;Q++)N.words[Q]=I.words[Q];if(N.length=W,I.length<=9){I.words[0]=0,I.length=1;return}var ue=I.words[9];for(N.words[N.length++]=ue&U,Q=10;Q<I.length;Q++){var se=I.words[Q]|0;I.words[Q-10]=(se&U)<<4|ue>>>22,ue=se}ue>>>=22,I.words[Q-10]=ue,ue===0&&I.length>10?I.length-=10:I.length-=9},f.prototype.imulK=function(I){I.words[I.length]=0,I.words[I.length+1]=0,I.length+=2;for(var N=0,U=0;U<I.length;U++){var W=I.words[U]|0;N+=W*977,I.words[U]=N&67108863,N=W*64+(N/67108864|0)}return I.words[I.length-1]===0&&(I.length--,I.words[I.length-1]===0&&I.length--),I};function P(){y.call(this,"p224","ffffffff ffffffff ffffffff ffffffff 00000000 00000000 00000001")}n(P,y);function L(){y.call(this,"p192","ffffffff ffffffff ffffffff fffffffe ffffffff ffffffff")}n(L,y);function z(){y.call(this,"25519","7fffffffffffffff ffffffffffffffff ffffffffffffffff ffffffffffffffed")}n(z,y),z.prototype.imulK=function(I){for(var N=0,U=0;U<I.length;U++){var W=(I.words[U]|0)*19+N,Q=W&67108863;W>>>=26,I.words[U]=Q,N=W}return N!==0&&(I.words[I.length++]=N),I},s._prime=function(I){if(u[I])return u[I];var N;if(I==="k256")N=new f;else if(I==="p224")N=new P;else if(I==="p192")N=new L;else if(I==="p25519")N=new z;else throw new Error("Unknown prime "+I);return u[I]=N,N};function F(O){if(typeof O=="string"){var I=s._prime(O);this.m=I.p,this.prime=I}else i(O.gtn(1),"modulus must be greater than 1"),this.m=O,this.prime=null}F.prototype._verify1=function(I){i(I.negative===0,"red works only with positives"),i(I.red,"red works only with red numbers")},F.prototype._verify2=function(I,N){i((I.negative|N.negative)===0,"red works only with positives"),i(I.red&&I.red===N.red,"red works only with red numbers")},F.prototype.imod=function(I){return this.prime?this.prime.ireduce(I)._forceRed(this):I.umod(this.m)._forceRed(this)},F.prototype.neg=function(I){return I.isZero()?I.clone():this.m.sub(I)._forceRed(this)},F.prototype.add=function(I,N){this._verify2(I,N);var U=I.add(N);return U.cmp(this.m)>=0&&U.isub(this.m),U._forceRed(this)},F.prototype.iadd=function(I,N){this._verify2(I,N);var U=I.iadd(N);return U.cmp(this.m)>=0&&U.isub(this.m),U},F.prototype.sub=function(I,N){this._verify2(I,N);var U=I.sub(N);return U.cmpn(0)<0&&U.iadd(this.m),U._forceRed(this)},F.prototype.isub=function(I,N){this._verify2(I,N);var U=I.isub(N);return U.cmpn(0)<0&&U.iadd(this.m),U},F.prototype.shl=function(I,N){return this._verify1(I),this.imod(I.ushln(N))},F.prototype.imul=function(I,N){return this._verify2(I,N),this.imod(I.imul(N))},F.prototype.mul=function(I,N){return this._verify2(I,N),this.imod(I.mul(N))},F.prototype.isqr=function(I){return this.imul(I,I.clone())},F.prototype.sqr=function(I){return this.mul(I,I)},F.prototype.sqrt=function(I){if(I.isZero())return I.clone();var N=this.m.andln(3);if(i(N%2===1),N===3){var U=this.m.add(new s(1)).iushrn(2);return this.pow(I,U)}for(var W=this.m.subn(1),Q=0;!W.isZero()&&W.andln(1)===0;)Q++,W.iushrn(1);i(!W.isZero());var ue=new s(1).toRed(this),se=ue.redNeg(),he=this.m.subn(1).iushrn(1),G=this.m.bitLength();for(G=new s(2*G*G).toRed(this);this.pow(G,he).cmp(se)!==0;)G.redIAdd(se);for(var $=this.pow(G,W),J=this.pow(I,W.addn(1).iushrn(1)),Z=this.pow(I,W),re=Q;Z.cmp(ue)!==0;){for(var ne=Z,j=0;ne.cmp(ue)!==0;j++)ne=ne.redSqr();i(j<re);var ee=this.pow($,new s(1).iushln(re-j-1));J=J.redMul(ee),$=ee.redSqr(),Z=Z.redMul($),re=j}return J},F.prototype.invm=function(I){var N=I._invmp(this.m);return N.negative!==0?(N.negative=0,this.imod(N).redNeg()):this.imod(N)},F.prototype.pow=function(I,N){if(N.isZero())return new s(1).toRed(this);if(N.cmpn(1)===0)return I.clone();var U=4,W=new Array(1<<U);W[0]=new s(1).toRed(this),W[1]=I;for(var Q=2;Q<W.length;Q++)W[Q]=this.mul(W[Q-1],I);var ue=W[0],se=0,he=0,G=N.bitLength()%26;for(G===0&&(G=26),Q=N.length-1;Q>=0;Q--){for(var $=N.words[Q],J=G-1;J>=0;J--){var Z=$>>J&1;if(ue!==W[0]&&(ue=this.sqr(ue)),Z===0&&se===0){he=0;continue}se<<=1,se|=Z,he++,!(he!==U&&(Q!==0||J!==0))&&(ue=this.mul(ue,W[se]),he=0,se=0)}G=26}return ue},F.prototype.convertTo=function(I){var N=I.umod(this.m);return N===I?N.clone():N},F.prototype.convertFrom=function(I){var N=I.clone();return N.red=null,N},s.mont=function(I){return new B(I)};function B(O){F.call(this,O),this.shift=this.m.bitLength(),this.shift%26!==0&&(this.shift+=26-this.shift%26),this.r=new s(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)}n(B,F),B.prototype.convertTo=function(I){return this.imod(I.ushln(this.shift))},B.prototype.convertFrom=function(I){var N=this.imod(I.mul(this.rinv));return N.red=null,N},B.prototype.imul=function(I,N){if(I.isZero()||N.isZero())return I.words[0]=0,I.length=1,I;var U=I.imul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.mul=function(I,N){if(I.isZero()||N.isZero())return new s(0)._forceRed(this);var U=I.mul(N),W=U.maskn(this.shift).mul(this.minv).imaskn(this.shift).mul(this.m),Q=U.isub(W).iushrn(this.shift),ue=Q;return Q.cmp(this.m)>=0?ue=Q.isub(this.m):Q.cmpn(0)<0&&(ue=Q.iadd(this.m)),ue._forceRed(this)},B.prototype.invm=function(I){var N=this.imod(I._invmp(this.m).mul(this.r2));return N._forceRed(this)}}(e,this)},6204:function(e){"use strict";e.exports=t;function t(r){var o,a,i,n=r.length,s=0;for(o=0;o<n;++o)s+=r[o].length;var c=new Array(s),h=0;for(o=0;o<n;++o){var v=r[o],p=v.length;for(a=0;a<p;++a){var T=c[h++]=new Array(p-1),l=0;for(i=0;i<p;++i)i!==a&&(T[l++]=v[i]);if(a&1){var _=T[1];T[1]=T[0],T[0]=_}}}return c}},6867:function(e,t,r){"use strict";e.exports=l;var o=r(1888),a=r(855),i=r(7150);function n(_,w){for(var S=0;S<_;++S)if(!(w[S]<=w[S+_]))return!0;return!1}function s(_,w,S,E){for(var m=0,b=0,d=0,u=_.length;d<u;++d){var y=_[d];if(!n(w,y)){for(var f=0;f<2*w;++f)S[m++]=y[f];E[b++]=d}}return b}function c(_,w,S,E){var m=_.length,b=w.length;if(!(m<=0||b<=0)){var d=_[0].length>>>1;if(!(d<=0)){var u,y=o.mallocDouble(2*d*m),f=o.mallocInt32(m);if(m=s(_,d,y,f),m>0){if(d===1&&E)a.init(m),u=a.sweepComplete(d,S,0,m,y,f,0,m,y,f);else{var P=o.mallocDouble(2*d*b),L=o.mallocInt32(b);b=s(w,d,P,L),b>0&&(a.init(m+b),d===1?u=a.sweepBipartite(d,S,0,m,y,f,0,b,P,L):u=i(d,S,E,m,y,f,b,P,L),o.free(P),o.free(L))}o.free(y),o.free(f)}return u}}}var h;function v(_,w){h.push([_,w])}function p(_){return h=[],c(_,_,v,!0),h}function T(_,w){return h=[],c(_,w,v,!1),h}function l(_,w,S){switch(arguments.length){case 1:return p(_);case 2:return typeof w=="function"?c(_,_,w,!0):T(_,w);case 3:return c(_,w,S,!1);default:throw new Error("box-intersect: Invalid arguments")}}},2455:function(e,t){"use strict";function r(){function i(c,h,v,p,T,l,_,w,S,E,m){for(var b=2*c,d=p,u=b*p;d<T;++d,u+=b){var y=l[h+u],f=l[h+u+c],P=_[d];e:for(var L=w,z=b*w;L<S;++L,z+=b){var F=E[h+z],B=E[h+z+c],O=m[L];if(!(B<y||f<F)){for(var I=h+1;I<c;++I){var N=l[I+u],U=l[I+c+u],W=E[I+z],Q=E[I+c+z];if(U<W||Q<N)continue e}var ue=v(P,O);if(ue!==void 0)return ue}}}}function n(c,h,v,p,T,l,_,w,S,E,m){for(var b=2*c,d=w,u=b*w;d<S;++d,u+=b){var y=E[h+u],f=E[h+u+c],P=m[d];e:for(var L=p,z=b*p;L<T;++L,z+=b){var F=l[h+z],B=l[h+z+c],O=_[L];if(!(f<F||B<y)){for(var I=h+1;I<c;++I){var N=l[I+z],U=l[I+c+z],W=E[I+u],Q=E[I+c+u];if(U<W||Q<N)continue e}var ue=v(O,P);if(ue!==void 0)return ue}}}}function s(c,h,v,p,T,l,_,w,S,E,m){return T-p>S-w?i(c,h,v,p,T,l,_,w,S,E,m):n(c,h,v,p,T,l,_,w,S,E,m)}return s}function o(){function i(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=l,f=u*l;y<_;++y,f+=u){var P=w[p+f],L=w[p+f+v],z=S[y];e:for(var F=E,B=u*E;F<m;++F,B+=u){var O=b[p+B],I=d[F];if(!(O<=P||L<O)){for(var N=p+1;N<v;++N){var U=w[N+f],W=w[N+v+f],Q=b[N+B],ue=b[N+v+B];if(W<Q||ue<U)continue e}var se=T(I,z);if(se!==void 0)return se}}}}function n(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=l,f=u*l;y<_;++y,f+=u){var P=w[p+f],L=w[p+f+v],z=S[y];e:for(var F=E,B=u*E;F<m;++F,B+=u){var O=b[p+B],I=d[F];if(!(O<P||L<O)){for(var N=p+1;N<v;++N){var U=w[N+f],W=w[N+v+f],Q=b[N+B],ue=b[N+v+B];if(W<Q||ue<U)continue e}var se=T(z,I);if(se!==void 0)return se}}}}function s(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=E,f=u*E;y<m;++y,f+=u){var P=b[p+f],L=d[y];e:for(var z=l,F=u*l;z<_;++z,F+=u){var B=w[p+F],O=w[p+F+v],I=S[z];if(!(P<=B||O<P)){for(var N=p+1;N<v;++N){var U=w[N+F],W=w[N+v+F],Q=b[N+f],ue=b[N+v+f];if(W<Q||ue<U)continue e}var se=T(L,I);if(se!==void 0)return se}}}}function c(v,p,T,l,_,w,S,E,m,b,d){for(var u=2*v,y=E,f=u*E;y<m;++y,f+=u){var P=b[p+f],L=d[y];e:for(var z=l,F=u*l;z<_;++z,F+=u){var B=w[p+F],O=w[p+F+v],I=S[z];if(!(P<B||O<P)){for(var N=p+1;N<v;++N){var U=w[N+F],W=w[N+v+F],Q=b[N+f],ue=b[N+v+f];if(W<Q||ue<U)continue e}var se=T(I,L);if(se!==void 0)return se}}}}function h(v,p,T,l,_,w,S,E,m,b,d,u){return w-_>b-m?l?i(v,p,T,_,w,S,E,m,b,d,u):n(v,p,T,_,w,S,E,m,b,d,u):l?s(v,p,T,_,w,S,E,m,b,d,u):c(v,p,T,_,w,S,E,m,b,d,u)}return h}function a(i){return i?r():o()}t.partial=a(!1),t.full=a(!0)},7150:function(e,t,r){"use strict";e.exports=O;var o=r(1888),a=r(8828),i=r(2455),n=i.partial,s=i.full,c=r(855),h=r(3545),v=r(8105),p=128,T=1<<22,l=1<<22,_=v("!(lo>=p0)&&!(p1>=hi)"),w=v("lo===p0"),S=v("lo<p0"),E=v("hi<=p0"),m=v("lo<=p0&&p0<=hi"),b=v("lo<p0&&p0<=hi"),d=6,u=2,y=1024,f=o.mallocInt32(y),P=o.mallocDouble(y);function L(I,N){var U=8*a.log2(N+1)*(I+1)|0,W=a.nextPow2(d*U);f.length<W&&(o.free(f),f=o.mallocInt32(W));var Q=a.nextPow2(u*U);P.length<Q&&(o.free(P),P=o.mallocDouble(Q))}function z(I,N,U,W,Q,ue,se,he,G){var $=d*I;f[$]=N,f[$+1]=U,f[$+2]=W,f[$+3]=Q,f[$+4]=ue,f[$+5]=se;var J=u*I;P[J]=he,P[J+1]=G}function F(I,N,U,W,Q,ue,se,he,G,$,J){var Z=2*I,re=G*Z,ne=$[re+N];e:for(var j=Q,ee=Q*Z;j<ue;++j,ee+=Z){var ie=se[ee+N],fe=se[ee+N+I];if(!(ne<ie||fe<ne)&&!(W&&ne===ie)){for(var be=he[j],Ae=N+1;Ae<I;++Ae){var ie=se[ee+Ae],fe=se[ee+Ae+I],Be=$[re+Ae],Ie=$[re+Ae+I];if(fe<Be||Ie<ie)continue e}var Ze;if(W?Ze=U(J,be):Ze=U(be,J),Ze!==void 0)return Ze}}}function B(I,N,U,W,Q,ue,se,he,G,$){var J=2*I,Z=he*J,re=G[Z+N];e:for(var ne=W,j=W*J;ne<Q;++ne,j+=J){var ee=se[ne];if(ee!==$){var ie=ue[j+N],fe=ue[j+N+I];if(!(re<ie||fe<re)){for(var be=N+1;be<I;++be){var ie=ue[j+be],fe=ue[j+be+I],Ae=G[Z+be],Be=G[Z+be+I];if(fe<Ae||Be<ie)continue e}var Ie=U(ee,$);if(Ie!==void 0)return Ie}}}}function O(I,N,U,W,Q,ue,se,he,G){L(I,W+se);var $=0,J=2*I,Z;for(z($++,0,0,W,0,se,U?16:0,-1/0,1/0),U||z($++,0,0,se,0,W,1,-1/0,1/0);$>0;){$-=1;var re=$*d,ne=f[re],j=f[re+1],ee=f[re+2],ie=f[re+3],fe=f[re+4],be=f[re+5],Ae=$*u,Be=P[Ae],Ie=P[Ae+1],Ze=be&1,at=!!(be&16),it=Q,et=ue,lt=he,Me=G;if(Ze&&(it=he,et=G,lt=Q,Me=ue),!(be&2&&(ee=S(I,ne,j,ee,it,et,Ie),j>=ee))&&!(be&4&&(j=E(I,ne,j,ee,it,et,Be),j>=ee))){var ge=ee-j,ce=fe-ie;if(at){if(I*ge*(ge+ce)<l){if(Z=c.scanComplete(I,ne,N,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}}else if(I*Math.min(ge,ce)<p){if(Z=n(I,ne,N,Ze,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}else if(I*ge*ce<T){if(Z=c.scanBipartite(I,ne,N,Ze,j,ee,it,et,ie,fe,lt,Me),Z!==void 0)return Z;continue}var ze=_(I,ne,j,ee,it,et,Be,Ie);if(j<ze)if(I*(ze-j)<p){if(Z=s(I,ne+1,N,j,ze,it,et,ie,fe,lt,Me),Z!==void 0)return Z}else if(ne===I-2){if(Ze?Z=c.sweepBipartite(I,N,ie,fe,lt,Me,j,ze,it,et):Z=c.sweepBipartite(I,N,j,ze,it,et,ie,fe,lt,Me),Z!==void 0)return Z}else z($++,ne+1,j,ze,ie,fe,Ze,-1/0,1/0),z($++,ne+1,ie,fe,j,ze,Ze^1,-1/0,1/0);if(ze<ee){var tt=h(I,ne,ie,fe,lt,Me),nt=lt[J*tt+ne],Qe=w(I,ne,tt,fe,lt,Me,nt);if(Qe<fe&&z($++,ne,ze,ee,Qe,fe,(Ze|4)+(at?16:0),nt,Ie),ie<tt&&z($++,ne,ze,ee,ie,tt,(Ze|2)+(at?16:0),Be,nt),tt+1===Qe){if(at?Z=B(I,ne,N,ze,ee,it,et,tt,lt,Me[tt]):Z=F(I,ne,N,Ze,ze,ee,it,et,tt,lt,Me[tt]),Z!==void 0)return Z}else if(tt<Qe){var Ct;if(at){if(Ct=m(I,ne,ze,ee,it,et,nt),ze<Ct){var St=w(I,ne,ze,Ct,it,et,nt);if(ne===I-2){if(ze<St&&(Z=c.sweepComplete(I,N,ze,St,it,et,tt,Qe,lt,Me),Z!==void 0)||St<Ct&&(Z=c.sweepBipartite(I,N,St,Ct,it,et,tt,Qe,lt,Me),Z!==void 0))return Z}else ze<St&&z($++,ne+1,ze,St,tt,Qe,16,-1/0,1/0),St<Ct&&(z($++,ne+1,St,Ct,tt,Qe,0,-1/0,1/0),z($++,ne+1,tt,Qe,St,Ct,1,-1/0,1/0))}}else Ze?Ct=b(I,ne,ze,ee,it,et,nt):Ct=m(I,ne,ze,ee,it,et,nt),ze<Ct&&(ne===I-2?Ze?Z=c.sweepBipartite(I,N,tt,Qe,lt,Me,ze,Ct,it,et):Z=c.sweepBipartite(I,N,ze,Ct,it,et,tt,Qe,lt,Me):(z($++,ne+1,ze,Ct,tt,Qe,Ze,-1/0,1/0),z($++,ne+1,tt,Qe,ze,Ct,Ze^1,-1/0,1/0)))}}}}}},3545:function(e,t,r){"use strict";e.exports=s;var o=r(8105),a=o("lo<p0"),i=8;function n(c,h,v,p,T,l){for(var _=2*c,w=_*(v+1)+h,S=v+1;S<p;++S,w+=_)for(var E=T[w],m=S,b=_*(S-1);m>v&&T[b+h]>E;--m,b-=_){for(var d=b,u=b+_,y=0;y<_;++y,++d,++u){var f=T[d];T[d]=T[u],T[u]=f}var P=l[m];l[m]=l[m-1],l[m-1]=P}}function s(c,h,v,p,T,l){if(p<=v+1)return v;for(var _=v,w=p,S=p+v>>>1,E=2*c,m=S,b=T[E*S+h];_<w;){if(w-_<i){n(c,h,_,w,T,l),b=T[E*S+h];break}var d=w-_,u=Math.random()*d+_|0,y=T[E*u+h],f=Math.random()*d+_|0,P=T[E*f+h],L=Math.random()*d+_|0,z=T[E*L+h];y<=P?z>=P?(m=f,b=P):y>=z?(m=u,b=y):(m=L,b=z):P>=z?(m=f,b=P):z>=y?(m=u,b=y):(m=L,b=z);for(var O=E*(w-1),I=E*m,F=0;F<E;++F,++O,++I){var B=T[O];T[O]=T[I],T[I]=B}var N=l[w-1];l[w-1]=l[m],l[m]=N,m=a(c,h,_,w-1,T,l,b);for(var O=E*(w-1),I=E*m,F=0;F<E;++F,++O,++I){var B=T[O];T[O]=T[I],T[I]=B}var N=l[w-1];if(l[w-1]=l[m],l[m]=N,S<m){for(w=m-1;_<w&&T[E*(w-1)+h]===b;)w-=1;w+=1}else if(m<S)for(_=m+1;_<w&&T[E*_+h]===b;)_+=1;else break}return a(c,h,v,S,T,l,T[E*S+h])}},8105:function(e){"use strict";e.exports=r;var t={"lo===p0":o,"lo<p0":a,"lo<=p0":i,"hi<=p0":n,"lo<p0&&p0<=hi":c,"lo<=p0&&p0<=hi":s,"!(lo>=p0)&&!(p1>=hi)":h};function r(v){return t[v]}function o(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(P===S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function a(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u];if(P<S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function i(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function n(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+y];if(P<=S)if(d===f)d+=1,b+=E;else{for(var L=0;E>L;++L){var z=_[m+L];_[m+L]=_[b],_[b++]=z}var F=w[f];w[f]=w[d],w[d++]=F}}return d}function s(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<=S&&S<=L)if(d===f)d+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function c(v,p,T,l,_,w,S){for(var E=2*v,m=E*T,b=m,d=T,u=p,y=v+p,f=T;l>f;++f,m+=E){var P=_[m+u],L=_[m+y];if(P<S&&S<=L)if(d===f)d+=1,b+=E;else{for(var z=0;E>z;++z){var F=_[m+z];_[m+z]=_[b],_[b++]=F}var B=w[f];w[f]=w[d],w[d++]=B}}return d}function h(v,p,T,l,_,w,S,E){for(var m=2*v,b=m*T,d=b,u=T,y=p,f=v+p,P=T;l>P;++P,b+=m){var L=_[b+y],z=_[b+f];if(!(L>=S)&&!(E>=z))if(u===P)u+=1,d+=m;else{for(var F=0;m>F;++F){var B=_[b+F];_[b+F]=_[d],_[d++]=B}var O=w[P];w[P]=w[u],w[u++]=O}}return u}},4192:function(e){"use strict";e.exports=r;var t=32;function r(p,T){T<=4*t?o(0,T-1,p):v(0,T-1,p)}function o(p,T,l){for(var _=2*(p+1),w=p+1;w<=T;++w){for(var S=l[_++],E=l[_++],m=w,b=_-2;m-- >p;){var d=l[b-2],u=l[b-1];if(d<S)break;if(d===S&&u<E)break;l[b]=d,l[b+1]=u,b-=2}l[b]=S,l[b+1]=E}}function a(p,T,l){p*=2,T*=2;var _=l[p],w=l[p+1];l[p]=l[T],l[p+1]=l[T+1],l[T]=_,l[T+1]=w}function i(p,T,l){p*=2,T*=2,l[p]=l[T],l[p+1]=l[T+1]}function n(p,T,l,_){p*=2,T*=2,l*=2;var w=_[p],S=_[p+1];_[p]=_[T],_[p+1]=_[T+1],_[T]=_[l],_[T+1]=_[l+1],_[l]=w,_[l+1]=S}function s(p,T,l,_,w){p*=2,T*=2,w[p]=w[T],w[T]=l,w[p+1]=w[T+1],w[T+1]=_}function c(p,T,l){p*=2,T*=2;var _=l[p],w=l[T];return _<w?!1:_===w?l[p+1]>l[T+1]:!0}function h(p,T,l,_){p*=2;var w=_[p];return w<T?!0:w===T?_[p+1]<l:!1}function v(p,T,l){var _=(T-p+1)/6|0,w=p+_,S=T-_,E=p+T>>1,m=E-_,b=E+_,d=w,u=m,y=E,f=b,P=S,L=p+1,z=T-1,F=0;c(d,u,l)&&(F=d,d=u,u=F),c(f,P,l)&&(F=f,f=P,P=F),c(d,y,l)&&(F=d,d=y,y=F),c(u,y,l)&&(F=u,u=y,y=F),c(d,f,l)&&(F=d,d=f,f=F),c(y,f,l)&&(F=y,y=f,f=F),c(u,P,l)&&(F=u,u=P,P=F),c(u,y,l)&&(F=u,u=y,y=F),c(f,P,l)&&(F=f,f=P,P=F);for(var B=l[2*u],O=l[2*u+1],I=l[2*f],N=l[2*f+1],U=2*d,W=2*y,Q=2*P,ue=2*w,se=2*E,he=2*S,G=0;G<2;++G){var $=l[U+G],J=l[W+G],Z=l[Q+G];l[ue+G]=$,l[se+G]=J,l[he+G]=Z}i(m,p,l),i(b,T,l);for(var re=L;re<=z;++re)if(h(re,B,O,l))re!==L&&a(re,L,l),++L;else if(!h(re,I,N,l))for(;;)if(h(z,I,N,l)){h(z,B,O,l)?(n(re,L,z,l),++L,--z):(a(re,z,l),--z);break}else{if(--z<re)break;continue}s(p,L-1,B,O,l),s(T,z+1,I,N,l),L-2-p<=t?o(p,L-2,l):v(p,L-2,l),T-(z+2)<=t?o(z+2,T,l):v(z+2,T,l),z-L<=t?o(L,z,l):v(L,z,l)}},855:function(e,t,r){"use strict";e.exports={init:w,sweepBipartite:m,sweepComplete:b,scanBipartite:d,scanComplete:u};var o=r(1888),a=r(8828),i=r(4192),n=1<<28,s=1024,c=o.mallocInt32(s),h=o.mallocInt32(s),v=o.mallocInt32(s),p=o.mallocInt32(s),T=o.mallocInt32(s),l=o.mallocInt32(s),_=o.mallocDouble(s*8);function w(y){var f=a.nextPow2(y);c.length<f&&(o.free(c),c=o.mallocInt32(f)),h.length<f&&(o.free(h),h=o.mallocInt32(f)),v.length<f&&(o.free(v),v=o.mallocInt32(f)),p.length<f&&(o.free(p),p=o.mallocInt32(f)),T.length<f&&(o.free(T),T=o.mallocInt32(f)),l.length<f&&(o.free(l),l=o.mallocInt32(f));var P=8*f;_.length<P&&(o.free(_),_=o.mallocDouble(P))}function S(y,f,P,L){var z=f[L],F=y[P-1];y[z]=F,f[F]=z}function E(y,f,P,L){y[P]=L,f[L]=P}function m(y,f,P,L,z,F,B,O,I,N){for(var U=0,W=2*y,Q=y-1,ue=W-1,se=P;se<L;++se){var he=F[se],G=W*se;_[U++]=z[G+Q],_[U++]=-(he+1),_[U++]=z[G+ue],_[U++]=he}for(var se=B;se<O;++se){var he=N[se]+n,$=W*se;_[U++]=I[$+Q],_[U++]=-he,_[U++]=I[$+ue],_[U++]=he}var J=U>>>1;i(_,J);for(var Z=0,re=0,se=0;se<J;++se){var ne=_[2*se+1]|0;if(ne>=n)ne=ne-n|0,S(v,p,re--,ne);else if(ne>=0)S(c,h,Z--,ne);else if(ne<=-n){ne=-ne-n|0;for(var j=0;j<Z;++j){var ee=f(c[j],ne);if(ee!==void 0)return ee}E(v,p,re++,ne)}else{ne=-ne-1|0;for(var j=0;j<re;++j){var ee=f(ne,v[j]);if(ee!==void 0)return ee}E(c,h,Z++,ne)}}}function b(y,f,P,L,z,F,B,O,I,N){for(var U=0,W=2*y,Q=y-1,ue=W-1,se=P;se<L;++se){var he=F[se]+1<<1,G=W*se;_[U++]=z[G+Q],_[U++]=-he,_[U++]=z[G+ue],_[U++]=he}for(var se=B;se<O;++se){var he=N[se]+1<<1,$=W*se;_[U++]=I[$+Q],_[U++]=-he|1,_[U++]=I[$+ue],_[U++]=he|1}var J=U>>>1;i(_,J);for(var Z=0,re=0,ne=0,se=0;se<J;++se){var j=_[2*se+1]|0,ee=j&1;if(se<J-1&&j>>1===_[2*se+3]>>1&&(ee=2,se+=1),j<0){for(var ie=-(j>>1)-1,fe=0;fe<ne;++fe){var be=f(T[fe],ie);if(be!==void 0)return be}if(ee!==0)for(var fe=0;fe<Z;++fe){var be=f(c[fe],ie);if(be!==void 0)return be}if(ee!==1)for(var fe=0;fe<re;++fe){var be=f(v[fe],ie);if(be!==void 0)return be}ee===0?E(c,h,Z++,ie):ee===1?E(v,p,re++,ie):ee===2&&E(T,l,ne++,ie)}else{var ie=(j>>1)-1;ee===0?S(c,h,Z--,ie):ee===1?S(v,p,re--,ie):ee===2&&S(T,l,ne--,ie)}}}function d(y,f,P,L,z,F,B,O,I,N,U,W){var Q=0,ue=2*y,se=f,he=f+y,G=1,$=1;L?$=n:G=n;for(var J=z;J<F;++J){var Z=J+G,re=ue*J;_[Q++]=B[re+se],_[Q++]=-Z,_[Q++]=B[re+he],_[Q++]=Z}for(var J=I;J<N;++J){var Z=J+$,ne=ue*J;_[Q++]=U[ne+se],_[Q++]=-Z}var j=Q>>>1;i(_,j);for(var ee=0,J=0;J<j;++J){var ie=_[2*J+1]|0;if(ie<0){var Z=-ie,fe=!1;if(Z>=n?(fe=!L,Z-=n):(fe=!!L,Z-=1),fe)E(c,h,ee++,Z);else{var be=W[Z],Ae=ue*Z,Be=U[Ae+f+1],Ie=U[Ae+f+1+y];e:for(var Ze=0;Ze<ee;++Ze){var at=c[Ze],it=ue*at;if(!(Ie<B[it+f+1]||B[it+f+1+y]<Be)){for(var et=f+2;et<y;++et)if(U[Ae+et+y]<B[it+et]||B[it+et+y]<U[Ae+et])continue e;var lt=O[at],Me;if(L?Me=P(be,lt):Me=P(lt,be),Me!==void 0)return Me}}}}else S(c,h,ee--,ie-G)}}function u(y,f,P,L,z,F,B,O,I,N,U){for(var W=0,Q=2*y,ue=f,se=f+y,he=L;he<z;++he){var G=he+n,$=Q*he;_[W++]=F[$+ue],_[W++]=-G,_[W++]=F[$+se],_[W++]=G}for(var he=O;he<I;++he){var G=he+1,J=Q*he;_[W++]=N[J+ue],_[W++]=-G}var Z=W>>>1;i(_,Z);for(var re=0,he=0;he<Z;++he){var ne=_[2*he+1]|0;if(ne<0){var G=-ne;if(G>=n)c[re++]=G-n;else{G-=1;var j=U[G],ee=Q*G,ie=N[ee+f+1],fe=N[ee+f+1+y];e:for(var be=0;be<re;++be){var Ae=c[be],Be=B[Ae];if(Be===j)break;var Ie=Q*Ae;if(!(fe<F[Ie+f+1]||F[Ie+f+1+y]<ie)){for(var Ze=f+2;Ze<y;++Ze)if(N[ee+Ze+y]<F[Ie+Ze]||F[Ie+Ze+y]<N[ee+Ze])continue e;var at=P(Be,j);if(at!==void 0)return at}}}}else{for(var G=ne-n,be=re-1;be>=0;--be)if(c[be]===G){for(var Ze=be+1;Ze<re;++Ze)c[Ze-1]=c[Ze];break}--re}}}},2538:function(e,t,r){"use strict";var o=r(8902),a=r(5542),i=r(2272),n=r(5023);e.exports=p;function s(T){return[Math.min(T[0],T[1]),Math.max(T[0],T[1])]}function c(T,l){return T[0]-l[0]||T[1]-l[1]}function h(T){return T.map(s).sort(c)}function v(T,l,_){return l in T?T[l]:_}function p(T,l,_){Array.isArray(l)?(_=_||{},l=l||[]):(_=l||{},l=[]);var w=!!v(_,"delaunay",!0),S=!!v(_,"interior",!0),E=!!v(_,"exterior",!0),m=!!v(_,"infinity",!1);if(!S&&!E||T.length===0)return[];var b=o(T,l);if(w||S!==E||m){for(var d=a(T.length,h(l)),u=0;u<b.length;++u){var y=b[u];d.addTriangle(y[0],y[1],y[2])}return w&&i(T,d),E?S?m?n(d,0,m):d.cells():n(d,1,m):n(d,-1)}else return b}},2272:function(e,t,r){"use strict";var o=r(2646)[4],a=r(2478);e.exports=n;function i(s,c,h,v,p,T){var l=c.opposite(v,p);if(!(l<0)){if(p<v){var _=v;v=p,p=_,_=T,T=l,l=_}c.isConstraint(v,p)||o(s[v],s[p],s[T],s[l])<0&&h.push(v,p)}}function n(s,c){for(var h=[],v=s.length,p=c.stars,T=0;T<v;++T)for(var l=p[T],_=1;_<l.length;_+=2){var w=l[_];if(!(w<T)&&!c.isConstraint(T,w)){for(var S=l[_-1],E=-1,m=1;m<l.length;m+=2)if(l[m-1]===w){E=l[m];break}E<0||o(s[T],s[w],s[S],s[E])<0&&h.push(T,w)}}for(;h.length>0;){for(var w=h.pop(),T=h.pop(),S=-1,E=-1,l=p[T],b=1;b<l.length;b+=2){var d=l[b-1],u=l[b];d===w?E=u:u===w&&(S=d)}S<0||E<0||o(s[T],s[w],s[S],s[E])>=0||(c.flip(T,w),i(s,c,h,S,T,E),i(s,c,h,T,E,S),i(s,c,h,E,w,S),i(s,c,h,w,S,E))}}},5023:function(e,t,r){"use strict";var o=r(2478);e.exports=h;function a(v,p,T,l,_,w,S){this.cells=v,this.neighbor=p,this.flags=l,this.constraint=T,this.active=_,this.next=w,this.boundary=S}var i=a.prototype;function n(v,p){return v[0]-p[0]||v[1]-p[1]||v[2]-p[2]}i.locate=function(){var v=[0,0,0];return function(p,T,l){var _=p,w=T,S=l;return T<l?T<p&&(_=T,w=l,S=p):l<p&&(_=l,w=p,S=T),_<0?-1:(v[0]=_,v[1]=w,v[2]=S,o.eq(this.cells,v,n))}}();function s(v,p){for(var T=v.cells(),l=T.length,_=0;_<l;++_){var w=T[_],S=w[0],E=w[1],m=w[2];E<m?E<S&&(w[0]=E,w[1]=m,w[2]=S):m<S&&(w[0]=m,w[1]=S,w[2]=E)}T.sort(n);for(var b=new Array(l),_=0;_<b.length;++_)b[_]=0;var d=[],u=[],y=new Array(3*l),f=new Array(3*l),P=null;p&&(P=[]);for(var L=new a(T,y,f,b,d,u,P),_=0;_<l;++_)for(var w=T[_],z=0;z<3;++z){var S=w[z],E=w[(z+1)%3],F=y[3*_+z]=L.locate(E,S,v.opposite(E,S)),B=f[3*_+z]=v.isConstraint(S,E);F<0&&(B?u.push(_):(d.push(_),b[_]=1),p&&P.push([E,S,-1]))}return L}function c(v,p,T){for(var l=0,_=0;_<v.length;++_)p[_]===T&&(v[l++]=v[_]);return v.length=l,v}function h(v,p,T){var l=s(v,T);if(p===0)return T?l.cells.concat(l.boundary):l.cells;for(var _=1,w=l.active,S=l.next,E=l.flags,m=l.cells,b=l.constraint,d=l.neighbor;w.length>0||S.length>0;){for(;w.length>0;){var u=w.pop();if(E[u]!==-_){E[u]=_;for(var y=m[u],f=0;f<3;++f){var P=d[3*u+f];P>=0&&E[P]===0&&(b[3*u+f]?S.push(P):(w.push(P),E[P]=_))}}}var L=S;S=w,w=L,S.length=0,_=-_}var z=c(m,E,p);return T?z.concat(l.boundary):z}},8902:function(e,t,r){"use strict";var o=r(2478),a=r(3250)[3],i=0,n=1,s=2;e.exports=S;function c(E,m,b,d,u){this.a=E,this.b=m,this.idx=b,this.lowerIds=d,this.upperIds=u}function h(E,m,b,d){this.a=E,this.b=m,this.type=b,this.idx=d}function v(E,m){var b=E.a[0]-m.a[0]||E.a[1]-m.a[1]||E.type-m.type;return b||E.type!==i&&(b=a(E.a,E.b,m.b),b)?b:E.idx-m.idx}function p(E,m){return a(E.a,E.b,m)}function T(E,m,b,d,u){for(var y=o.lt(m,d,p),f=o.gt(m,d,p),P=y;P<f;++P){for(var L=m[P],z=L.lowerIds,B=z.length;B>1&&a(b[z[B-2]],b[z[B-1]],d)>0;)E.push([z[B-1],z[B-2],u]),B-=1;z.length=B,z.push(u);for(var F=L.upperIds,B=F.length;B>1&&a(b[F[B-2]],b[F[B-1]],d)<0;)E.push([F[B-2],F[B-1],u]),B-=1;F.length=B,F.push(u)}}function l(E,m){var b;return E.a[0]<m.a[0]?b=a(E.a,E.b,m.a):b=a(m.b,m.a,E.a),b||(m.b[0]<E.b[0]?b=a(E.a,E.b,m.b):b=a(m.b,m.a,E.b),b||E.idx-m.idx)}function _(E,m,b){var d=o.le(E,b,l),u=E[d],y=u.upperIds,f=y[y.length-1];u.upperIds=[f],E.splice(d+1,0,new c(b.a,b.b,b.idx,[f],y))}function w(E,m,b){var d=b.a;b.a=b.b,b.b=d;var u=o.eq(E,b,l),y=E[u],f=E[u-1];f.upperIds=y.upperIds,E.splice(u,1)}function S(E,m){for(var b=E.length,d=m.length,u=[],y=0;y<b;++y)u.push(new h(E[y],null,i,y));for(var y=0;y<d;++y){var f=m[y],P=E[f[0]],L=E[f[1]];P[0]<L[0]?u.push(new h(P,L,s,y),new h(L,P,n,y)):P[0]>L[0]&&u.push(new h(L,P,s,y),new h(P,L,n,y))}u.sort(v);for(var z=u[0].a[0]-(1+Math.abs(u[0].a[0]))*Math.pow(2,-52),F=[new c([z,1],[z,0],-1,[],[],[],[])],B=[],y=0,O=u.length;y<O;++y){var I=u[y],N=I.type;N===i?T(B,F,E,I.a,I.idx):N===s?_(F,E,I):w(F,E,I)}return B}},5542:function(e,t,r){"use strict";var o=r(2478);e.exports=s;function a(c,h){this.stars=c,this.edges=h}var i=a.prototype;function n(c,h,v){for(var p=1,T=c.length;p<T;p+=2)if(c[p-1]===h&&c[p]===v){c[p-1]=c[T-2],c[p]=c[T-1],c.length=T-2;return}}i.isConstraint=function(){var c=[0,0];function h(v,p){return v[0]-p[0]||v[1]-p[1]}return function(v,p){return c[0]=Math.min(v,p),c[1]=Math.max(v,p),o.eq(this.edges,c,h)>=0}}(),i.removeTriangle=function(c,h,v){var p=this.stars;n(p[c],h,v),n(p[h],v,c),n(p[v],c,h)},i.addTriangle=function(c,h,v){var p=this.stars;p[c].push(h,v),p[h].push(v,c),p[v].push(c,h)},i.opposite=function(c,h){for(var v=this.stars[h],p=1,T=v.length;p<T;p+=2)if(v[p]===c)return v[p-1];return-1},i.flip=function(c,h){var v=this.opposite(c,h),p=this.opposite(h,c);this.removeTriangle(c,h,v),this.removeTriangle(h,c,p),this.addTriangle(c,p,v),this.addTriangle(h,v,p)},i.edges=function(){for(var c=this.stars,h=[],v=0,p=c.length;v<p;++v)for(var T=c[v],l=0,_=T.length;l<_;l+=2)h.push([T[l],T[l+1]]);return h},i.cells=function(){for(var c=this.stars,h=[],v=0,p=c.length;v<p;++v)for(var T=c[v],l=0,_=T.length;l<_;l+=2){var w=T[l],S=T[l+1];v<Math.min(w,S)&&h.push([v,w,S])}return h};function s(c,h){for(var v=new Array(c),p=0;p<c;++p)v[p]=[];return new a(v,h)}},2419:function(e){"use strict";e.exports=t;function t(r){for(var o=1,a=1;a<r.length;++a)for(var i=0;i<a;++i)if(r[a]<r[i])o=-o;else if(r[i]===r[a])return 0;return o}},3628:function(e,t,r){"use strict";var o=r(1338),a=r(727);function i(c,h){for(var v=0,p=c.length,T=0;T<p;++T)v+=c[T]*h[T];return v}function n(c){var h=c.length;if(h===0)return[];var v=c[0].length,p=o([c.length+1,c.length+1],1),T=o([c.length+1],1);p[h][h]=0;for(var l=0;l<h;++l){for(var _=0;_<=l;++_)p[_][l]=p[l][_]=2*i(c[l],c[_]);T[l]=i(c[l],c[l])}for(var w=a(p,T),S=0,E=w[h+1],l=0;l<E.length;++l)S+=E[l];for(var m=new Array(h),l=0;l<h;++l){for(var E=w[l],b=0,_=0;_<E.length;++_)b+=E[_];m[l]=b/S}return m}function s(c){if(c.length===0)return[];for(var h=c[0].length,v=o([h]),p=n(c),T=0;T<c.length;++T)for(var l=0;l<h;++l)v[l]+=c[T][l]*p[T];return v}s.barycenetric=n,e.exports=s},6037:function(e,t,r){e.exports=a;var o=r(3628);function a(i){for(var n=o(i),s=0,c=0;c<i.length;++c)for(var h=i[c],v=0;v<n.length;++v)s+=Math.pow(h[v]-n[v],2);return Math.sqrt(s/i.length)}},332:function(e,t,r){"use strict";e.exports=P;var o=r(1755),a=r(6867),i=r(1125),n=r(7842),s=r(1318),c=r(946),h=r(5838),v=r(1278),p=r(3637);function T(L){var z=c(L);return[v(z,-1/0),v(z,1/0)]}function l(L,z){for(var F=new Array(z.length),B=0;B<z.length;++B){var O=z[B],I=L[O[0]],N=L[O[1]];F[B]=[v(Math.min(I[0],N[0]),-1/0),v(Math.min(I[1],N[1]),-1/0),v(Math.max(I[0],N[0]),1/0),v(Math.max(I[1],N[1]),1/0)]}return F}function _(L){for(var z=new Array(L.length),F=0;F<L.length;++F){var B=L[F];z[F]=[v(B[0],-1/0),v(B[1],-1/0),v(B[0],1/0),v(B[1],1/0)]}return z}function w(L,z,F){var B=[];return a(F,function(O,I){var N=z[O],U=z[I];if(!(N[0]===U[0]||N[0]===U[1]||N[1]===U[0]||N[1]===U[1])){var W=L[N[0]],Q=L[N[1]],ue=L[U[0]],se=L[U[1]];i(W,Q,ue,se)&&B.push([O,I])}}),B}function S(L,z,F,B){var O=[];return a(F,B,function(I,N){var U=z[I];if(!(U[0]===N||U[1]===N)){var W=L[N],Q=L[U[0]],ue=L[U[1]];i(Q,ue,W,W)&&O.push([I,N])}}),O}function E(L,z,F,B,O){var I,N,U=L.map(function(Ae){return[n(Ae[0]),n(Ae[1])]});for(I=0;I<F.length;++I){var W=F[I];N=W[0];var Q=W[1],ue=z[N],se=z[Q],he=p(h(L[ue[0]]),h(L[ue[1]]),h(L[se[0]]),h(L[se[1]]));if(he){var G=L.length;L.push([c(he[0]),c(he[1])]),U.push(he),B.push([N,G],[Q,G])}}for(B.sort(function(Ae,Be){if(Ae[0]!==Be[0])return Ae[0]-Be[0];var Ie=U[Ae[1]],Ze=U[Be[1]];return s(Ie[0],Ze[0])||s(Ie[1],Ze[1])}),I=B.length-1;I>=0;--I){var $=B[I];N=$[0];var J=z[N],Z=J[0],re=J[1],ne=L[Z],j=L[re];if((ne[0]-j[0]||ne[1]-j[1])<0){var ee=Z;Z=re,re=ee}J[0]=Z;var ie=J[1]=$[1],fe;for(O&&(fe=J[2]);I>0&&B[I-1][0]===N;){var $=B[--I],be=$[1];O?z.push([ie,be,fe]):z.push([ie,be]),ie=be}O?z.push([ie,re,fe]):z.push([ie,re])}return U}function m(L,z,F){for(var B=z.length,O=new o(B),I=[],N=0;N<z.length;++N){var U=z[N],W=T(U[0]),Q=T(U[1]);I.push([v(W[0],-1/0),v(Q[0],-1/0),v(W[1],1/0),v(Q[1],1/0)])}a(I,function($,J){O.link($,J)});for(var ue=!0,se=new Array(B),N=0;N<B;++N){var he=O.find(N);he!==N&&(ue=!1,L[he]=[Math.min(L[N][0],L[he][0]),Math.min(L[N][1],L[he][1])])}if(ue)return null;for(var G=0,N=0;N<B;++N){var he=O.find(N);he===N?(se[N]=G,L[G++]=L[N]):se[N]=-1}L.length=G;for(var N=0;N<B;++N)se[N]<0&&(se[N]=se[O.find(N)]);return se}function b(L,z){return L[0]-z[0]||L[1]-z[1]}function d(L,z){var F=L[0]-z[0]||L[1]-z[1];return F||(L[2]<z[2]?-1:L[2]>z[2]?1:0)}function u(L,z,F){if(L.length!==0){if(z)for(var B=0;B<L.length;++B){var O=L[B],I=z[O[0]],N=z[O[1]];O[0]=Math.min(I,N),O[1]=Math.max(I,N)}else for(var B=0;B<L.length;++B){var O=L[B],I=O[0],N=O[1];O[0]=Math.min(I,N),O[1]=Math.max(I,N)}F?L.sort(d):L.sort(b);for(var U=1,B=1;B<L.length;++B){var W=L[B-1],Q=L[B];Q[0]===W[0]&&Q[1]===W[1]&&(!F||Q[2]===W[2])||(L[U++]=Q)}L.length=U}}function y(L,z,F){var B=m(L,[],_(L));return u(z,B,F),!!B}function f(L,z,F){var B=l(L,z),O=w(L,z,B),I=_(L),N=S(L,z,B,I),U=E(L,z,O,N,F),W=m(L,U,I);return u(z,W,F),W?!0:O.length>0||N.length>0}function P(L,z,F){var B;if(F){B=z;for(var O=new Array(z.length),I=0;I<z.length;++I){var N=z[I];O[I]=[N[0],N[1],F[I]]}z=O}for(var U=y(L,z,!!F);f(L,z,!!F);)U=!0;if(F&&U){B.length=0,F.length=0;for(var I=0;I<z.length;++I){var N=z[I];B.push([N[0],N[1]]),F.push(N[2])}}return U}},3637:function(e,t,r){"use strict";e.exports=p;var o=r(6504),a=r(8697),i=r(5572),n=r(7721),s=r(544),c=r(2653),h=r(8987);function v(T,l){return i(o(T[0],l[1]),o(T[1],l[0]))}function p(T,l,_,w){var S=s(l,T),E=s(w,_),m=v(S,E);if(n(m)===0)return null;var b=s(T,_),d=v(E,b),u=a(d,m),y=h(S,u),f=c(T,y);return f}},3642:function(e){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]}],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]}]}},6729:function(e,t,r){"use strict";var o=r(3642),a=r(395);e.exports=i;function i(h){var v,p,T,l,_,w,S,E,u,m,b;if(h||(h={}),E=(h.nshades||72)-1,S=h.format||"hex",w=h.colormap,w||(w="jet"),typeof w=="string"){if(w=w.toLowerCase(),!o[w])throw Error(w+" not a supported colorscale");_=o[w]}else if(Array.isArray(w))_=w.slice();else throw Error("unsupported colormap option",w);if(_.length>E+1)throw new Error(w+" map requires nshades to be at least size "+_.length);Array.isArray(h.alpha)?h.alpha.length!==2?m=[1,1]:m=h.alpha.slice():typeof h.alpha=="number"?m=[h.alpha,h.alpha]:m=[1,1],v=_.map(function(P){return Math.round(P.index*E)}),m[0]=Math.min(Math.max(m[0],0),1),m[1]=Math.min(Math.max(m[1],0),1);var d=_.map(function(P,L){var z=_[L].index,F=_[L].rgb.slice();return F.length===4&&F[3]>=0&&F[3]<=1||(F[3]=m[0]+(m[1]-m[0])*z),F}),u=[];for(b=0;b<v.length-1;++b){l=v[b+1]-v[b],p=d[b],T=d[b+1];for(var y=0;y<l;y++){var f=y/l;u.push([Math.round(a(p[0],T[0],f)),Math.round(a(p[1],T[1],f)),Math.round(a(p[2],T[2],f)),a(p[3],T[3],f)])}}return u.push(_[_.length-1].rgb.concat(m[1])),S==="hex"?u=u.map(s):S==="rgbaString"?u=u.map(c):S==="float"&&(u=u.map(n)),u}function n(h){return[h[0]/255,h[1]/255,h[2]/255,h[3]]}function s(h){for(var v,p="#",T=0;T<3;++T)v=h[T],v=v.toString(16),p+=("00"+v).substr(v.length);return p}function c(h){return"rgba("+h.join(",")+")"}},3140:function(e,t,r){"use strict";e.exports=h;var o=r(3250),a=r(8572),i=r(9362),n=r(5382),s=r(8210);function c(v,p,T){var l=i(v[0],-p[0]),_=i(v[1],-p[1]),w=i(T[0],-p[0]),S=i(T[1],-p[1]),E=s(n(l,w),n(_,S));return E[E.length-1]>=0}function h(v,p,T,l){var _=o(p,T,l);if(_===0){var w=a(o(v,p,T)),S=a(o(v,p,l));if(w===S){if(w===0){var E=c(v,p,T),m=c(v,p,l);return E===m?0:E?1:-1}return 0}else{if(S===0)return w>0||c(v,p,l)?-1:1;if(w===0)return S>0||c(v,p,T)?1:-1}return a(S-w)}var b=o(v,p,T);if(b>0)return _>0&&o(v,p,l)>0?1:-1;if(b<0)return _>0||o(v,p,l)>0?1:-1;var d=o(v,p,l);return d>0||c(v,p,T)?1:-1}},8572:function(e){"use strict";e.exports=function(r){return r<0?-1:r>0?1:0}},8507:function(e){e.exports=o;var t=Math.min;function r(a,i){return a-i}function o(a,i){var n=a.length,s=a.length-i.length;if(s)return s;switch(n){case 0:return 0;case 1:return a[0]-i[0];case 2:return a[0]+a[1]-i[0]-i[1]||t(a[0],a[1])-t(i[0],i[1]);case 3:var c=a[0]+a[1],h=i[0]+i[1];if(s=c+a[2]-(h+i[2]),s)return s;var v=t(a[0],a[1]),p=t(i[0],i[1]);return t(v,a[2])-t(p,i[2])||t(v+a[2],c)-t(p+i[2],h);case 4:var T=a[0],l=a[1],_=a[2],w=a[3],S=i[0],E=i[1],m=i[2],b=i[3];return T+l+_+w-(S+E+m+b)||t(T,l,_,w)-t(S,E,m,b,S)||t(T+l,T+_,T+w,l+_,l+w,_+w)-t(S+E,S+m,S+b,E+m,E+b,m+b)||t(T+l+_,T+l+w,T+_+w,l+_+w)-t(S+E+m,S+E+b,S+m+b,E+m+b);default:for(var d=a.slice().sort(r),u=i.slice().sort(r),y=0;y<n;++y)if(s=d[y]-u[y],s)return s;return 0}}},3788:function(e,t,r){"use strict";var o=r(8507),a=r(2419);e.exports=i;function i(n,s){return o(n,s)||a(n)-a(s)}},7352:function(e,t,r){"use strict";var o=r(5721),a=r(4750),i=r(2690);e.exports=n;function n(s){var c=s.length;if(c===0)return[];if(c===1)return[[0]];var h=s[0].length;return h===0?[]:h===1?o(s):h===2?a(s):i(s,h)}},5721:function(e){"use strict";e.exports=t;function t(r){for(var o=0,a=0,i=1;i<r.length;++i)r[i][0]<r[o][0]&&(o=i),r[i][0]>r[a][0]&&(a=i);return o<a?[[o],[a]]:o>a?[[a],[o]]:[[o]]}},4750:function(e,t,r){"use strict";e.exports=a;var o=r(3090);function a(i){var n=o(i),s=n.length;if(s<=2)return[];for(var c=new Array(s),h=n[s-1],v=0;v<s;++v){var p=n[v];c[v]=[h,p],h=p}return c}},2690:function(e,t,r){"use strict";e.exports=s;var o=r(8954),a=r(3952);function i(c,h){for(var v=c.length,p=new Array(v),T=0;T<h.length;++T)p[T]=c[h[T]];for(var l=h.length,T=0;T<v;++T)h.indexOf(T)<0&&(p[l++]=c[T]);return p}function n(c,h){for(var v=c.length,p=h.length,T=0;T<v;++T)for(var l=c[T],_=0;_<l.length;++_){var w=l[_];if(w<p)l[_]=h[w];else{w=w-p;for(var S=0;S<p;++S)w>=h[S]&&(w+=1);l[_]=w}}return c}function s(c,h){try{return o(c,!0)}catch{var v=a(c);if(v.length<=h)return[];var p=i(c,v),T=o(p,!0);return n(T,v)}}},4769:function(e){"use strict";function t(o,a,i,n,s,c){var h=6*s*s-6*s,v=3*s*s-4*s+1,p=-6*s*s+6*s,T=3*s*s-2*s;if(o.length){c||(c=new Array(o.length));for(var l=o.length-1;l>=0;--l)c[l]=h*o[l]+v*a[l]+p*i[l]+T*n[l];return c}return h*o+v*a+p*i[l]+T*n}function r(o,a,i,n,s,c){var h=s-1,v=s*s,p=h*h,T=(1+2*s)*p,l=s*p,_=v*(3-2*s),w=v*h;if(o.length){c||(c=new Array(o.length));for(var S=o.length-1;S>=0;--S)c[S]=T*o[S]+l*a[S]+_*i[S]+w*n[S];return c}return T*o+l*a+_*i+w*n}e.exports=r,e.exports.derivative=t},7642:function(e,t,r){"use strict";var o=r(8954),a=r(1682);e.exports=c;function i(h,v){this.point=h,this.index=v}function n(h,v){for(var p=h.point,T=v.point,l=p.length,_=0;_<l;++_){var w=T[_]-p[_];if(w)return w}return 0}function s(h,v,p){if(h===1)return p?[[-1,0]]:[];var T=v.map(function(E,m){return[E[0],m]});T.sort(function(E,m){return E[0]-m[0]});for(var l=new Array(h-1),_=1;_<h;++_){var w=T[_-1],S=T[_];l[_-1]=[w[1],S[1]]}return p&&l.push([-1,l[0][1]],[l[h-1][1],-1]),l}function c(h,v){var p=h.length;if(p===0)return[];var T=h[0].length;if(T<1)return[];if(T===1)return s(p,h,v);for(var l=new Array(p),_=1,w=0;w<p;++w){for(var S=h[w],E=new Array(T+1),m=0,b=0;b<T;++b){var d=S[b];E[b]=d,m+=d*d}E[T]=m,l[w]=new i(E,w),_=Math.max(m,_)}a(l,n),p=l.length;for(var u=new Array(p+T+1),y=new Array(p+T+1),f=(T+1)*(T+1)*_,P=new Array(T+1),w=0;w<=T;++w)P[w]=0;P[T]=f,u[0]=P.slice(),y[0]=-1;for(var w=0;w<=T;++w){var E=P.slice();E[w]=1,u[w+1]=E,y[w+1]=-1}for(var w=0;w<p;++w){var L=l[w];u[w+T+1]=L.point,y[w+T+1]=L.index}var z=o(u,!1);if(v?z=z.filter(function(F){for(var B=0,O=0;O<=T;++O){var I=y[F[O]];if(I<0&&++B>=2)return!1;F[O]=I}return!0}):z=z.filter(function(F){for(var B=0;B<=T;++B){var O=y[F[B]];if(O<0)return!1;F[B]=O}return!0}),T&1)for(var w=0;w<z.length;++w){var L=z[w],E=L[0];L[0]=L[1],L[1]=E}return z}},2361:function(e){var t=!1;if(typeof Float64Array<"u"){var r=new Float64Array(1),o=new Uint32Array(r.buffer);if(r[0]=1,t=!0,o[1]===1072693248){let _=function(E,m){return o[0]=E,o[1]=m,r[0]},w=function(E){return r[0]=E,o[0]},S=function(E){return r[0]=E,o[1]};var a=_,i=w,n=S;e.exports=function(m){return r[0]=m,[o[0],o[1]]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}else if(o[0]===1072693248){let _=function(E,m){return o[1]=E,o[0]=m,r[0]},w=function(E){return r[0]=E,o[1]},S=function(E){return r[0]=E,o[0]};var s=_,c=w,h=S;e.exports=function(m){return r[0]=m,[o[1],o[0]]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}else t=!1}if(!t){let _=function(E,m){return l.writeUInt32LE(E,0,!0),l.writeUInt32LE(m,4,!0),l.readDoubleLE(0,!0)},w=function(E){return l.writeDoubleLE(E,0,!0),l.readUInt32LE(0,!0)},S=function(E){return l.writeDoubleLE(E,0,!0),l.readUInt32LE(4,!0)};var v=_,p=w,T=S,l=new Buffer(8);e.exports=function(m){return l.writeDoubleLE(m,0,!0),[l.readUInt32LE(0,!0),l.readUInt32LE(4,!0)]},e.exports.pack=_,e.exports.lo=w,e.exports.hi=S}e.exports.sign=function(_){return e.exports.hi(_)>>>31},e.exports.exponent=function(_){var w=e.exports.hi(_);return(w<<1>>>21)-1023},e.exports.fraction=function(_){var w=e.exports.lo(_),S=e.exports.hi(_),E=S&(1<<20)-1;return S&2146435072&&(E+=1048576),[w,E]},e.exports.denormalized=function(_){var w=e.exports.hi(_);return!(w&2146435072)}},1338:function(e){"use strict";function t(a,i,n){var s=a[n]|0;if(s<=0)return[];var c=new Array(s),h;if(n===a.length-1)for(h=0;h<s;++h)c[h]=i;else for(h=0;h<s;++h)c[h]=t(a,i,n+1);return c}function r(a,i){var n,s;for(n=new Array(a),s=0;s<a;++s)n[s]=i;return n}function o(a,i){switch(typeof i>"u"&&(i=0),typeof a){case"number":if(a>0)return r(a|0,i);break;case"object":if(typeof a.length=="number")return t(a,i,0);break}return[]}e.exports=o},3134:function(e,t,r){"use strict";e.exports=a;var o=r(1682);function a(i,n){var s=i.length;if(typeof n!="number"){n=0;for(var c=0;c<s;++c){var h=i[c];n=Math.max(n,h[0],h[1])}n=(n|0)+1}n=n|0;for(var v=new Array(n),c=0;c<n;++c)v[c]=[];for(var c=0;c<s;++c){var h=i[c];v[h[0]].push(h[1]),v[h[1]].push(h[0])}for(var p=0;p<n;++p)o(v[p],function(T,l){return T-l});return v}},5033:function(e){"use strict";e.exports=t;function t(r,o,a){var i=o||0,n=a||1;return[[r[12]+r[0],r[13]+r[1],r[14]+r[2],r[15]+r[3]],[r[12]-r[0],r[13]-r[1],r[14]-r[2],r[15]-r[3]],[r[12]+r[4],r[13]+r[5],r[14]+r[6],r[15]+r[7]],[r[12]-r[4],r[13]-r[5],r[14]-r[6],r[15]-r[7]],[i*r[12]+r[8],i*r[13]+r[9],i*r[14]+r[10],i*r[15]+r[11]],[n*r[12]-r[8],n*r[13]-r[9],n*r[14]-r[10],n*r[15]-r[11]]]}},9215:function(e,t,r){"use strict";e.exports=h;var o=r(4769),a=r(2478);function i(v,p,T){return Math.min(p,Math.max(v,T))}function n(v,p,T){this.dimension=v.length,this.bounds=[new Array(this.dimension),new Array(this.dimension)];for(var l=0;l<this.dimension;++l)this.bounds[0][l]=-1/0,this.bounds[1][l]=1/0;this._state=v.slice().reverse(),this._velocity=p.slice().reverse(),this._time=[T],this._scratch=[v.slice(),v.slice(),v.slice(),v.slice(),v.slice()]}var s=n.prototype;s.flush=function(v){var p=a.gt(this._time,v)-1;p<=0||(this._time.splice(0,p),this._state.splice(0,p*this.dimension),this._velocity.splice(0,p*this.dimension))},s.curve=function(v){var p=this._time,T=p.length,l=a.le(p,v),_=this._scratch[0],w=this._state,S=this._velocity,E=this.dimension,m=this.bounds;if(l<0)for(var b=E-1,d=0;d<E;++d,--b)_[d]=w[b];else if(l>=T-1)for(var b=w.length-1,u=v-p[T-1],d=0;d<E;++d,--b)_[d]=w[b]+u*S[b];else{for(var b=E*(l+1)-1,y=p[l],f=p[l+1],P=f-y||1,L=this._scratch[1],z=this._scratch[2],F=this._scratch[3],B=this._scratch[4],O=!0,d=0;d<E;++d,--b)L[d]=w[b],F[d]=S[b]*P,z[d]=w[b+E],B[d]=S[b+E]*P,O=O&&L[d]===z[d]&&F[d]===B[d]&&F[d]===0;if(O)for(var d=0;d<E;++d)_[d]=L[d];else o(L,F,z,B,(v-y)/P,_)}for(var I=m[0],N=m[1],d=0;d<E;++d)_[d]=i(I[d],N[d],_[d]);return _},s.dcurve=function(v){var p=this._time,T=p.length,l=a.le(p,v),_=this._scratch[0],w=this._state,S=this._velocity,E=this.dimension;if(l>=T-1)for(var m=w.length-1,b=v-p[T-1],d=0;d<E;++d,--m)_[d]=S[m];else{for(var m=E*(l+1)-1,u=p[l],y=p[l+1],f=y-u||1,P=this._scratch[1],L=this._scratch[2],z=this._scratch[3],F=this._scratch[4],B=!0,d=0;d<E;++d,--m)P[d]=w[m],z[d]=S[m]*f,L[d]=w[m+E],F[d]=S[m+E]*f,B=B&&P[d]===L[d]&&z[d]===F[d]&&z[d]===0;if(B)for(var d=0;d<E;++d)_[d]=0;else{o.derivative(P,z,L,F,(v-u)/f,_);for(var d=0;d<E;++d)_[d]/=f}}return _},s.lastT=function(){var v=this._time;return v[v.length-1]},s.stable=function(){for(var v=this._velocity,p=v.length,T=this.dimension-1;T>=0;--T)if(v[--p])return!1;return!0},s.jump=function(v){var p=this.lastT(),T=this.dimension;if(!(v<p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=this.bounds,E=S[0],m=S[1];this._time.push(p,v);for(var b=0;b<2;++b)for(var d=0;d<T;++d)l.push(l[w++]),_.push(0);this._time.push(v);for(var d=T;d>0;--d)l.push(i(E[d-1],m[d-1],arguments[d])),_.push(0)}},s.push=function(v){var p=this.lastT(),T=this.dimension;if(!(v<p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=v-p,E=this.bounds,m=E[0],b=E[1],d=S>1e-6?1/S:0;this._time.push(v);for(var u=T;u>0;--u){var y=i(m[u-1],b[u-1],arguments[u]);l.push(y),_.push((y-l[w++])*d)}}},s.set=function(v){var p=this.dimension;if(!(v<this.lastT()||arguments.length!==p+1)){var T=this._state,l=this._velocity,_=this.bounds,w=_[0],S=_[1];this._time.push(v);for(var E=p;E>0;--E)T.push(i(w[E-1],S[E-1],arguments[E])),l.push(0)}},s.move=function(v){var p=this.lastT(),T=this.dimension;if(!(v<=p||arguments.length!==T+1)){var l=this._state,_=this._velocity,w=l.length-this.dimension,S=this.bounds,E=S[0],m=S[1],b=v-p,d=b>1e-6?1/b:0;this._time.push(v);for(var u=T;u>0;--u){var y=arguments[u];l.push(i(E[u-1],m[u-1],l[w++]+y)),_.push(y*d)}}},s.idle=function(v){var p=this.lastT();if(!(v<p)){var T=this.dimension,l=this._state,_=this._velocity,w=l.length-T,S=this.bounds,E=S[0],m=S[1],b=v-p;this._time.push(v);for(var d=T-1;d>=0;--d)l.push(i(E[d],m[d],l[w]+b*_[w])),_.push(0),w+=1}};function c(v){for(var p=new Array(v),T=0;T<v;++T)p[T]=0;return p}function h(v,p,T){switch(arguments.length){case 0:return new n([0],[0],0);case 1:if(typeof v=="number"){var l=c(v);return new n(l,l,0)}else return new n(v,c(v.length),0);case 2:if(typeof p=="number"){var l=c(v.length);return new n(v,l,+p)}else T=0;case 3:if(v.length!==p.length)throw new Error("state and velocity lengths must match");return new n(v,p,T)}}},3840:function(e){"use strict";e.exports=E;var t=0,r=1;function o(m,b,d,u,y,f){this._color=m,this.key=b,this.value=d,this.left=u,this.right=y,this._count=f}function a(m){return new o(m._color,m.key,m.value,m.left,m.right,m._count)}function i(m,b){return new o(m,b.key,b.value,b.left,b.right,b._count)}function n(m){m._count=1+(m.left?m.left._count:0)+(m.right?m.right._count:0)}function s(m,b){this._compare=m,this.root=b}var c=s.prototype;Object.defineProperty(c,"keys",{get:function(){var m=[];return this.forEach(function(b,d){m.push(b)}),m}}),Object.defineProperty(c,"values",{get:function(){var m=[];return this.forEach(function(b,d){m.push(d)}),m}}),Object.defineProperty(c,"length",{get:function(){return this.root?this.root._count:0}}),c.insert=function(m,b){for(var d=this._compare,u=this.root,y=[],f=[];u;){var P=d(m,u.key);y.push(u),f.push(P),P<=0?u=u.left:u=u.right}y.push(new o(t,m,b,null,null,1));for(var L=y.length-2;L>=0;--L){var u=y[L];f[L]<=0?y[L]=new o(u._color,u.key,u.value,y[L+1],u.right,u._count+1):y[L]=new o(u._color,u.key,u.value,u.left,y[L+1],u._count+1)}for(var L=y.length-1;L>1;--L){var z=y[L-1],u=y[L];if(z._color===r||u._color===r)break;var F=y[L-2];if(F.left===z)if(z.left===u){var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.left=z.right,z._color=r,z.right=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.left===F?O.left=z:O.right=z}break}}else{var B=F.right;if(B&&B._color===t)z._color=r,F.right=i(r,B),F._color=t,L-=1;else{if(z.right=u.left,F._color=t,F.left=u.right,u._color=r,u.left=z,u.right=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.left===F?O.left=u:O.right=u}break}}else if(z.right===u){var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(F._color=t,F.right=z.left,z._color=r,z.left=F,y[L-2]=z,y[L-1]=u,n(F),n(z),L>=3){var O=y[L-3];O.right===F?O.right=z:O.left=z}break}}else{var B=F.left;if(B&&B._color===t)z._color=r,F.left=i(r,B),F._color=t,L-=1;else{if(z.left=u.right,F._color=t,F.right=u.left,u._color=r,u.right=z,u.left=F,y[L-2]=u,y[L-1]=z,n(F),n(z),n(u),L>=3){var O=y[L-3];O.right===F?O.right=u:O.left=u}break}}}return y[0]._color=r,new s(d,y[0])};function h(m,b){if(b.left){var d=h(m,b.left);if(d)return d}var d=m(b.key,b.value);if(d)return d;if(b.right)return h(m,b.right)}function v(m,b,d,u){var y=b(m,u.key);if(y<=0){if(u.left){var f=v(m,b,d,u.left);if(f)return f}var f=d(u.key,u.value);if(f)return f}if(u.right)return v(m,b,d,u.right)}function p(m,b,d,u,y){var f=d(m,y.key),P=d(b,y.key),L;if(f<=0&&(y.left&&(L=p(m,b,d,u,y.left),L)||P>0&&(L=u(y.key,y.value),L)))return L;if(P>0&&y.right)return p(m,b,d,u,y.right)}c.forEach=function(b,d,u){if(this.root)switch(arguments.length){case 1:return h(b,this.root);case 2:return v(d,this._compare,b,this.root);case 3:return this._compare(d,u)>=0?void 0:p(d,u,this._compare,b,this.root)}},Object.defineProperty(c,"begin",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.left;return new T(this,m)}}),Object.defineProperty(c,"end",{get:function(){for(var m=[],b=this.root;b;)m.push(b),b=b.right;return new T(this,m)}}),c.at=function(m){if(m<0)return new T(this,[]);for(var b=this.root,d=[];;){if(d.push(b),b.left){if(m<b.left._count){b=b.left;continue}m-=b.left._count}if(!m)return new T(this,d);if(m-=1,b.right){if(m>=b.right._count)break;b=b.right}else break}return new T(this,[])},c.ge=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<=0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.gt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f<0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.lt=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>0&&(y=u.length),f<=0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.le=function(m){for(var b=this._compare,d=this.root,u=[],y=0;d;){var f=b(m,d.key);u.push(d),f>=0&&(y=u.length),f<0?d=d.left:d=d.right}return u.length=y,new T(this,u)},c.find=function(m){for(var b=this._compare,d=this.root,u=[];d;){var y=b(m,d.key);if(u.push(d),y===0)return new T(this,u);y<=0?d=d.left:d=d.right}return new T(this,[])},c.remove=function(m){var b=this.find(m);return b?b.remove():this},c.get=function(m){for(var b=this._compare,d=this.root;d;){var u=b(m,d.key);if(u===0)return d.value;u<=0?d=d.left:d=d.right}};function T(m,b){this.tree=m,this._stack=b}var l=T.prototype;Object.defineProperty(l,"valid",{get:function(){return this._stack.length>0}}),Object.defineProperty(l,"node",{get:function(){return this._stack.length>0?this._stack[this._stack.length-1]:null},enumerable:!0}),l.clone=function(){return new T(this.tree,this._stack.slice())};function _(m,b){m.key=b.key,m.value=b.value,m.left=b.left,m.right=b.right,m._color=b._color,m._count=b._count}function w(m){for(var b,d,u,y,f=m.length-1;f>=0;--f){if(b=m[f],f===0){b._color=r;return}if(d=m[f-1],d.left===b){if(u=d.right,u.right&&u.right._color===t){if(u=d.right=a(u),y=u.right=a(u.right),d.right=u.left,u.left=d,u.right=y,u._color=d._color,b._color=r,d._color=r,y._color=r,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u;return}else if(u.left&&u.left._color===t){if(u=d.right=a(u),y=u.left=a(u.left),d.right=y.left,u.left=y.right,y.left=d,y.right=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.left===d?P.left=y:P.right=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.right=i(t,u);return}else{d.right=i(t,u);continue}else{if(u=a(u),d.right=u.left,u.left=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.left===d?P.left=u:P.right=u}m[f-1]=u,m[f]=d,f+1<m.length?m[f+1]=b:m.push(b),f=f+2}}else{if(u=d.left,u.left&&u.left._color===t){if(u=d.left=a(u),y=u.left=a(u.left),d.left=u.right,u.right=d,u.left=y,u._color=d._color,b._color=r,d._color=r,y._color=r,n(d),n(u),f>1){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u;return}else if(u.right&&u.right._color===t){if(u=d.left=a(u),y=u.right=a(u.right),d.left=y.right,u.right=y.left,y.right=d,y.left=u,y._color=d._color,d._color=r,u._color=r,b._color=r,n(d),n(u),n(y),f>1){var P=m[f-2];P.right===d?P.right=y:P.left=y}m[f-1]=y;return}if(u._color===r)if(d._color===t){d._color=r,d.left=i(t,u);return}else{d.left=i(t,u);continue}else{if(u=a(u),d.left=u.right,u.right=d,u._color=d._color,d._color=t,n(d),n(u),f>1){var P=m[f-2];P.right===d?P.right=u:P.left=u}m[f-1]=u,m[f]=d,f+1<m.length?m[f+1]=b:m.push(b),f=f+2}}}}l.remove=function(){var m=this._stack;if(m.length===0)return this.tree;var b=new Array(m.length),d=m[m.length-1];b[b.length-1]=new o(d._color,d.key,d.value,d.left,d.right,d._count);for(var u=m.length-2;u>=0;--u){var d=m[u];d.left===m[u+1]?b[u]=new o(d._color,d.key,d.value,b[u+1],d.right,d._count):b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count)}if(d=b[b.length-1],d.left&&d.right){var y=b.length;for(d=d.left;d.right;)b.push(d),d=d.right;var f=b[y-1];b.push(new o(d._color,f.key,f.value,d.left,d.right,d._count)),b[y-1].key=d.key,b[y-1].value=d.value;for(var u=b.length-2;u>=y;--u)d=b[u],b[u]=new o(d._color,d.key,d.value,d.left,b[u+1],d._count);b[y-1].left=b[y]}if(d=b[b.length-1],d._color===t){var P=b[b.length-2];P.left===d?P.left=null:P.right===d&&(P.right=null),b.pop();for(var u=0;u<b.length;++u)b[u]._count--;return new s(this.tree._compare,b[0])}else if(d.left||d.right){d.left?_(d,d.left):d.right&&_(d,d.right),d._color=r;for(var u=0;u<b.length-1;++u)b[u]._count--;return new s(this.tree._compare,b[0])}else{if(b.length===1)return new s(this.tree._compare,null);for(var u=0;u<b.length;++u)b[u]._count--;var L=b[b.length-2];w(b),L.left===d?L.left=null:L.right=null}return new s(this.tree._compare,b[0])},Object.defineProperty(l,"key",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].key},enumerable:!0}),Object.defineProperty(l,"value",{get:function(){if(this._stack.length>0)return this._stack[this._stack.length-1].value},enumerable:!0}),Object.defineProperty(l,"index",{get:function(){var m=0,b=this._stack;if(b.length===0){var d=this.tree.root;return d?d._count:0}else b[b.length-1].left&&(m=b[b.length-1].left._count);for(var u=b.length-2;u>=0;--u)b[u+1]===b[u].right&&(++m,b[u].left&&(m+=b[u].left._count));return m},enumerable:!0}),l.next=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.right)for(b=b.right;b;)m.push(b),b=b.left;else for(m.pop();m.length>0&&m[m.length-1].right===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasNext",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].right)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].left===m[b])return!0;return!1}}),l.update=function(m){var b=this._stack;if(b.length===0)throw new Error("Can't update empty node!");var d=new Array(b.length),u=b[b.length-1];d[d.length-1]=new o(u._color,u.key,m,u.left,u.right,u._count);for(var y=b.length-2;y>=0;--y)u=b[y],u.left===b[y+1]?d[y]=new o(u._color,u.key,u.value,d[y+1],u.right,u._count):d[y]=new o(u._color,u.key,u.value,u.left,d[y+1],u._count);return new s(this.tree._compare,d[0])},l.prev=function(){var m=this._stack;if(m.length!==0){var b=m[m.length-1];if(b.left)for(b=b.left;b;)m.push(b),b=b.right;else for(m.pop();m.length>0&&m[m.length-1].left===b;)b=m[m.length-1],m.pop()}},Object.defineProperty(l,"hasPrev",{get:function(){var m=this._stack;if(m.length===0)return!1;if(m[m.length-1].left)return!0;for(var b=m.length-1;b>0;--b)if(m[b-1].right===m[b])return!0;return!1}});function S(m,b){return m<b?-1:m>b?1:0}function E(m){return new s(m||S,null)}},3837:function(e,t,r){"use strict";e.exports=L;var o=r(4935),a=r(501),i=r(5304),n=r(6429),s=r(6444),c=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),h=ArrayBuffer,v=DataView;function p(z){return h.isView(z)&&!(z instanceof v)}function T(z){return Array.isArray(z)||p(z)}function l(z,F){return z[0]=F[0],z[1]=F[1],z[2]=F[2],z}function _(z){this.gl=z,this.pixelRatio=1,this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.autoTicks=!0,this.tickSpacing=[1,1,1],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickFontStyle=["normal","normal","normal"],this.tickFontWeight=["normal","normal","normal"],this.tickFontVariant=["normal","normal","normal"],this.tickSize=[12,12,12],this.tickAngle=[0,0,0],this.tickAlign=["auto","auto","auto"],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[10,10,10],this.lastCubeProps={cubeEdges:[0,0,0],axis:[0,0,0]},this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["sans-serif","sans-serif","sans-serif"],this.labelFontStyle=["normal","normal","normal"],this.labelFontWeight=["normal","normal","normal"],this.labelFontVariant=["normal","normal","normal"],this.labelSize=[20,20,20],this.labelAngle=[0,0,0],this.labelAlign=["auto","auto","auto"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[10,10,10],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[0,0,0],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!1,!1,!1],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._firstInit=!0,this._text=null,this._lines=null,this._background=i(z)}var w=_.prototype;w.update=function(z){z=z||{};function F(Z,re,ne){if(ne in z){var j=z[ne],ee=this[ne],ie;(Z?T(j)&&T(j[0]):T(j))?this[ne]=ie=[re(j[0]),re(j[1]),re(j[2])]:this[ne]=ie=[re(j),re(j),re(j)];for(var fe=0;fe<3;++fe)if(ie[fe]!==ee[fe])return!0}return!1}var B=F.bind(this,!1,Number),O=F.bind(this,!1,Boolean),I=F.bind(this,!1,String),N=F.bind(this,!0,function(Z){if(T(Z)){if(Z.length===3)return[+Z[0],+Z[1],+Z[2],1];if(Z.length===4)return[+Z[0],+Z[1],+Z[2],+Z[3]]}return[0,0,0,1]}),U,W=!1,Q=!1;if("bounds"in z)for(var ue=z.bounds,se=0;se<2;++se)for(var he=0;he<3;++he)ue[se][he]!==this.bounds[se][he]&&(Q=!0),this.bounds[se][he]=ue[se][he];if("ticks"in z){U=z.ticks,W=!0,this.autoTicks=!1;for(var se=0;se<3;++se)this.tickSpacing[se]=0}else B("tickSpacing")&&(this.autoTicks=!0,Q=!0);if(this._firstInit&&("ticks"in z||"tickSpacing"in z||(this.autoTicks=!0),Q=!0,W=!0,this._firstInit=!1),Q&&this.autoTicks&&(U=s.create(this.bounds,this.tickSpacing),W=!0),W){for(var se=0;se<3;++se)U[se].sort(function(re,ne){return re.x-ne.x});s.equal(U,this.ticks)?W=!1:this.ticks=U}O("tickEnable"),I("tickFont")&&(W=!0),I("tickFontStyle")&&(W=!0),I("tickFontWeight")&&(W=!0),I("tickFontVariant")&&(W=!0),B("tickSize"),B("tickAngle"),B("tickPad"),N("tickColor");var G=I("labels");I("labelFont")&&(G=!0),I("labelFontStyle")&&(G=!0),I("labelFontWeight")&&(G=!0),I("labelFontVariant")&&(G=!0),O("labelEnable"),B("labelSize"),B("labelPad"),N("labelColor"),O("lineEnable"),O("lineMirror"),B("lineWidth"),N("lineColor"),O("lineTickEnable"),O("lineTickMirror"),B("lineTickLength"),B("lineTickWidth"),N("lineTickColor"),O("gridEnable"),B("gridWidth"),N("gridColor"),O("zeroEnable"),N("zeroLineColor"),B("zeroLineWidth"),O("backgroundEnable"),N("backgroundColor");var $=[{family:this.labelFont[0],style:this.labelFontStyle[0],weight:this.labelFontWeight[0],variant:this.labelFontVariant[0]},{family:this.labelFont[1],style:this.labelFontStyle[1],weight:this.labelFontWeight[1],variant:this.labelFontVariant[1]},{family:this.labelFont[2],style:this.labelFontStyle[2],weight:this.labelFontWeight[2],variant:this.labelFontVariant[2]}],J=[{family:this.tickFont[0],style:this.tickFontStyle[0],weight:this.tickFontWeight[0],variant:this.tickFontVariant[0]},{family:this.tickFont[1],style:this.tickFontStyle[1],weight:this.tickFontWeight[1],variant:this.tickFontVariant[1]},{family:this.tickFont[2],style:this.tickFontStyle[2],weight:this.tickFontWeight[2],variant:this.tickFontVariant[2]}];this._text?this._text&&(G||W)&&this._text.update(this.bounds,this.labels,$,this.ticks,J):this._text=o(this.gl,this.bounds,this.labels,$,this.ticks,J),this._lines&&W&&(this._lines.dispose(),this._lines=null),this._lines||(this._lines=a(this.gl,this.bounds,this.ticks))};function S(){this.primalOffset=[0,0,0],this.primalMinor=[0,0,0],this.mirrorOffset=[0,0,0],this.mirrorMinor=[0,0,0]}var E=[new S,new S,new S];function m(z,F,B,O,I){for(var N=z.primalOffset,U=z.primalMinor,W=z.mirrorOffset,Q=z.mirrorMinor,ue=O[F],se=0;se<3;++se)if(F!==se){var he=N,G=W,$=U,J=Q;ue&1<<se&&(he=W,G=N,$=Q,J=U),he[se]=B[0][se],G[se]=B[1][se],I[se]>0?($[se]=-1,J[se]=0):($[se]=0,J[se]=1)}}var b=[0,0,0],d={model:c,view:c,projection:c,_ortho:!1};w.isOpaque=function(){return!0},w.isTransparent=function(){return!1},w.drawTransparent=function(z){};var u=0,y=[0,0,0],f=[0,0,0],P=[0,0,0];w.draw=function(z){z=z||d;for(var ne=this.gl,F=z.model||c,B=z.view||c,O=z.projection||c,I=this.bounds,N=z._ortho||!1,U=n(F,B,O,I,N),W=U.cubeEdges,Q=U.axis,ue=B[12],se=B[13],he=B[14],G=B[15],$=N?2:1,J=$*this.pixelRatio*(O[3]*ue+O[7]*se+O[11]*he+O[15]*G)/ne.drawingBufferHeight,Z=0;Z<3;++Z)this.lastCubeProps.cubeEdges[Z]=W[Z],this.lastCubeProps.axis[Z]=Q[Z];for(var re=E,Z=0;Z<3;++Z)m(E[Z],Z,this.bounds,W,Q);for(var ne=this.gl,j=b,Z=0;Z<3;++Z)this.backgroundEnable[Z]?j[Z]=Q[Z]:j[Z]=0;this._background.draw(F,B,O,I,j,this.backgroundColor),this._lines.bind(F,B,O,this);for(var Z=0;Z<3;++Z){var ee=[0,0,0];Q[Z]>0?ee[Z]=I[1][Z]:ee[Z]=I[0][Z];for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.gridEnable[fe]&&this._lines.drawGrid(fe,be,this.bounds,ee,this.gridColor[fe],this.gridWidth[fe]*this.pixelRatio)}for(var ie=0;ie<2;++ie){var fe=(Z+1+ie)%3,be=(Z+1+(ie^1))%3;this.zeroEnable[be]&&Math.min(I[0][be],I[1][be])<=0&&Math.max(I[0][be],I[1][be])>=0&&this._lines.drawZero(fe,be,this.bounds,ee,this.zeroLineColor[be],this.zeroLineWidth[be]*this.pixelRatio)}}for(var Z=0;Z<3;++Z){this.lineEnable[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].primalOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio),this.lineMirror[Z]&&this._lines.drawAxisLine(Z,this.bounds,re[Z].mirrorOffset,this.lineColor[Z],this.lineWidth[Z]*this.pixelRatio);for(var Ae=l(y,re[Z].primalMinor),Be=l(f,re[Z].mirrorMinor),Ie=this.lineTickLength,ie=0;ie<3;++ie){var Ze=J/F[5*ie];Ae[ie]*=Ie[ie]*Ze,Be[ie]*=Ie[ie]*Ze}this.lineTickEnable[Z]&&this._lines.drawAxisTicks(Z,re[Z].primalOffset,Ae,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio),this.lineTickMirror[Z]&&this._lines.drawAxisTicks(Z,re[Z].mirrorOffset,Be,this.lineTickColor[Z],this.lineTickWidth[Z]*this.pixelRatio)}this._lines.unbind(),this._text.bind(F,B,O,this.pixelRatio);var at,it=.5,et,lt;function Me(Qe){lt=[0,0,0],lt[Qe]=1}function ge(Qe,Ct,St){var Ot=(Qe+1)%3,jt=(Qe+2)%3,ur=Ct[Ot],ar=Ct[jt],Cr=St[Ot],vr=St[jt];if(ur>0&&vr>0){Me(Ot);return}else if(ur>0&&vr<0){Me(Ot);return}else if(ur<0&&vr>0){Me(Ot);return}else if(ur<0&&vr<0){Me(Ot);return}else if(ar>0&&Cr>0){Me(jt);return}else if(ar>0&&Cr<0){Me(jt);return}else if(ar<0&&Cr>0){Me(jt);return}else if(ar<0&&Cr<0){Me(jt);return}}for(var Z=0;Z<3;++Z){for(var ce=re[Z].primalMinor,ze=re[Z].mirrorMinor,tt=l(P,re[Z].primalOffset),ie=0;ie<3;++ie)this.lineTickEnable[Z]&&(tt[ie]+=J*ce[ie]*Math.max(this.lineTickLength[ie],0)/F[5*ie]);var nt=[0,0,0];if(nt[Z]=1,this.tickEnable[Z]){this.tickAngle[Z]===-3600?(this.tickAngle[Z]=0,this.tickAlign[Z]="auto"):this.tickAlign[Z]=-1,et=1,at=[this.tickAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]),lt=[0,0,0],ge(Z,ce,ze);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.tickPad[ie]/F[5*ie];this._text.drawTicks(Z,this.tickSize[Z],this.tickAngle[Z],tt,this.tickColor[Z],nt,lt,at)}if(this.labelEnable[Z]){et=0,lt=[0,0,0],this.labels[Z].length>4&&(Me(Z),et=1),at=[this.labelAlign[Z],it,et],at[0]==="auto"?at[0]=u:at[0]=parseInt(""+at[0]);for(var ie=0;ie<3;++ie)tt[ie]+=J*ce[ie]*this.labelPad[ie]/F[5*ie];tt[Z]+=.5*(I[0][Z]+I[1][Z]),this._text.drawLabel(Z,this.labelSize[Z],this.labelAngle[Z],tt,this.labelColor[Z],[0,0,0],lt,at)}}this._text.unbind()},w.dispose=function(){this._text.dispose(),this._lines.dispose(),this._background.dispose(),this._lines=null,this._text=null,this._background=null,this.gl=null};function L(z,F){var B=new _(z);return B.update(F),B}},5304:function(e,t,r){"use strict";e.exports=c;var o=r(2762),a=r(8116),i=r(1879).bg;function n(h,v,p,T){this.gl=h,this.buffer=v,this.vao=p,this.shader=T}var s=n.prototype;s.draw=function(h,v,p,T,l,_){for(var w=!1,S=0;S<3;++S)w=w||l[S];if(w){var E=this.gl;E.enable(E.POLYGON_OFFSET_FILL),E.polygonOffset(1,2),this.shader.bind(),this.shader.uniforms={model:h,view:v,projection:p,bounds:T,enable:l,colors:_},this.vao.bind(),this.vao.draw(this.gl.TRIANGLES,36),this.vao.unbind(),E.disable(E.POLYGON_OFFSET_FILL)}},s.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function c(h){for(var v=[],p=[],T=0,l=0;l<3;++l)for(var _=(l+1)%3,w=(l+2)%3,S=[0,0,0],E=[0,0,0],m=-1;m<=1;m+=2){p.push(T,T+2,T+1,T+1,T+2,T+3),S[l]=m,E[l]=m;for(var b=-1;b<=1;b+=2){S[_]=b;for(var d=-1;d<=1;d+=2)S[w]=d,v.push(S[0],S[1],S[2],E[0],E[1],E[2]),T+=1}var u=_;_=w,w=u}var y=o(h,new Float32Array(v)),f=o(h,new Uint16Array(p),h.ELEMENT_ARRAY_BUFFER),P=a(h,[{buffer:y,type:h.FLOAT,size:3,offset:0,stride:24},{buffer:y,type:h.FLOAT,size:3,offset:12,stride:24}],f),L=i(h);return L.attributes.position.location=0,L.attributes.normal.location=1,new n(h,y,P,L)}},6429:function(e,t,r){"use strict";e.exports=m;var o=r(8828),a=r(6760),i=r(5202),n=r(3250),s=new Array(16),c=new Array(8),h=new Array(8),v=new Array(3),p=[0,0,0];(function(){for(var b=0;b<8;++b)c[b]=[1,1,1,1],h[b]=[1,1,1]})();function T(b,d,u){for(var y=0;y<4;++y){b[y]=u[12+y];for(var f=0;f<3;++f)b[y]+=d[f]*u[4*f+y]}}var l=[[0,0,1,0,0],[0,0,-1,1,0],[0,-1,0,1,0],[0,1,0,1,0],[-1,0,0,1,0],[1,0,0,1,0]];function _(b){for(var d=0;d<l.length;++d)if(b=i.positive(b,l[d]),b.length<3)return 0;for(var u=b[0],y=u[0]/u[3],f=u[1]/u[3],P=0,d=1;d+1<b.length;++d){var L=b[d],z=b[d+1],F=L[0]/L[3],B=L[1]/L[3],O=z[0]/z[3],I=z[1]/z[3],N=F-y,U=B-f,W=O-y,Q=I-f;P+=Math.abs(N*Q-U*W)}return P}var w=[1,1,1],S=[0,0,0],E={cubeEdges:w,axis:S};function m(b,d,u,y,f){a(s,d,b),a(s,u,s);for(var P=0,L=0;L<2;++L){v[2]=y[L][2];for(var z=0;z<2;++z){v[1]=y[z][1];for(var F=0;F<2;++F)v[0]=y[F][0],T(c[P],v,s),P+=1}}for(var B=-1,L=0;L<8;++L){for(var O=c[L][3],I=0;I<3;++I)h[L][I]=c[L][I]/O;f&&(h[L][2]*=-1),O<0&&(B<0||h[L][2]<h[B][2])&&(B=L)}if(B<0){B=0;for(var N=0;N<3;++N){for(var U=(N+2)%3,W=(N+1)%3,Q=-1,ue=-1,se=0;se<2;++se){var he=se<<N,G=he+(se<<U)+(1-se<<W),$=he+(1-se<<U)+(se<<W);n(h[he],h[G],h[$],p)<0||(se?Q=1:ue=1)}if(Q<0||ue<0){ue>Q&&(B|=1<<N);continue}for(var se=0;se<2;++se){var he=se<<N,G=he+(se<<U)+(1-se<<W),$=he+(1-se<<U)+(se<<W),J=_([c[he],c[G],c[$],c[he+(1<<U)+(1<<W)]]);se?Q=J:ue=J}if(ue>Q){B|=1<<N;continue}}}for(var Z=7^B,re=-1,L=0;L<8;++L)L===B||L===Z||(re<0||h[re][1]>h[L][1])&&(re=L);for(var ne=-1,L=0;L<3;++L){var j=re^1<<L;if(!(j===B||j===Z)){ne<0&&(ne=j);var W=h[j];W[0]<h[ne][0]&&(ne=j)}}for(var ee=-1,L=0;L<3;++L){var j=re^1<<L;if(!(j===B||j===Z||j===ne)){ee<0&&(ee=j);var W=h[j];W[0]>h[ee][0]&&(ee=j)}}var ie=w;ie[0]=ie[1]=ie[2]=0,ie[o.log2(ne^re)]=re&ne,ie[o.log2(re^ee)]=re&ee;var fe=ee^7;fe===B||fe===Z?(fe=ne^7,ie[o.log2(ee^fe)]=fe&ee):ie[o.log2(ne^fe)]=fe&ne;for(var be=S,Ae=B,N=0;N<3;++N)Ae&1<<N?be[N]=-1:be[N]=1;return E}},501:function(e,t,r){"use strict";e.exports=w;var o=r(2762),a=r(8116),i=r(1879).n,n=[0,0,0],s=[0,0,0],c=[0,0,0],h=[0,0,0],v=[1,1];function p(S){return S[0]=S[1]=S[2]=0,S}function T(S,E){return S[0]=E[0],S[1]=E[1],S[2]=E[2],S}function l(S,E,m,b,d,u,y,f){this.gl=S,this.vertBuffer=E,this.vao=m,this.shader=b,this.tickCount=d,this.tickOffset=u,this.gridCount=y,this.gridOffset=f}var _=l.prototype;_.bind=function(S,E,m){this.shader.bind(),this.shader.uniforms.model=S,this.shader.uniforms.view=E,this.shader.uniforms.projection=m,v[0]=this.gl.drawingBufferWidth,v[1]=this.gl.drawingBufferHeight,this.shader.uniforms.screenShape=v,this.vao.bind()},_.unbind=function(){this.vao.unbind()},_.drawAxisLine=function(S,E,m,b,d){var u=p(s);this.shader.uniforms.majorAxis=s,u[S]=E[1][S]-E[0][S],this.shader.uniforms.minorAxis=u;var y=T(h,m);y[S]+=E[0][S],this.shader.uniforms.offset=y,this.shader.uniforms.lineWidth=d,this.shader.uniforms.color=b;var f=p(c);f[(S+2)%3]=1,this.shader.uniforms.screenAxis=f,this.vao.draw(this.gl.TRIANGLES,6);var f=p(c);f[(S+1)%3]=1,this.shader.uniforms.screenAxis=f,this.vao.draw(this.gl.TRIANGLES,6)},_.drawAxisTicks=function(S,E,m,b,d){if(this.tickCount[S]){var u=p(n);u[S]=1,this.shader.uniforms.majorAxis=u,this.shader.uniforms.offset=E,this.shader.uniforms.minorAxis=m,this.shader.uniforms.color=b,this.shader.uniforms.lineWidth=d;var y=p(c);y[S]=1,this.shader.uniforms.screenAxis=y,this.vao.draw(this.gl.TRIANGLES,this.tickCount[S],this.tickOffset[S])}},_.drawGrid=function(S,E,m,b,d,u){if(this.gridCount[S]){var y=p(s);y[E]=m[1][E]-m[0][E],this.shader.uniforms.minorAxis=y;var f=T(h,b);f[E]+=m[0][E],this.shader.uniforms.offset=f;var P=p(n);P[S]=1,this.shader.uniforms.majorAxis=P;var L=p(c);L[S]=1,this.shader.uniforms.screenAxis=L,this.shader.uniforms.lineWidth=u,this.shader.uniforms.color=d,this.vao.draw(this.gl.TRIANGLES,this.gridCount[S],this.gridOffset[S])}},_.drawZero=function(S,E,m,b,d,u){var y=p(s);this.shader.uniforms.majorAxis=y,y[S]=m[1][S]-m[0][S],this.shader.uniforms.minorAxis=y;var f=T(h,b);f[S]+=m[0][S],this.shader.uniforms.offset=f;var P=p(c);P[E]=1,this.shader.uniforms.screenAxis=P,this.shader.uniforms.lineWidth=u,this.shader.uniforms.color=d,this.vao.draw(this.gl.TRIANGLES,6)},_.dispose=function(){this.vao.dispose(),this.vertBuffer.dispose(),this.shader.dispose()};function w(S,E,m){var b=[],d=[0,0,0],u=[0,0,0],y=[0,0,0],f=[0,0,0];b.push(0,0,1,0,1,1,0,0,-1,0,0,-1,0,1,1,0,1,-1);for(var P=0;P<3;++P){for(var F=b.length/3|0,L=0;L<m[P].length;++L){var z=+m[P][L].x;b.push(z,0,1,z,1,1,z,0,-1,z,0,-1,z,1,1,z,1,-1)}var O=b.length/3|0;d[P]=F,u[P]=O-F;for(var F=b.length/3|0,B=0;B<m[P].length;++B){var z=+m[P][B].x;b.push(z,0,1,z,1,1,z,0,-1,z,0,-1,z,1,1,z,1,-1)}var O=b.length/3|0;y[P]=F,f[P]=O-F}var I=o(S,new Float32Array(b)),N=a(S,[{buffer:I,type:S.FLOAT,size:3,stride:0,offset:0}]),U=i(S);return U.attributes.position.location=0,new l(S,I,N,U,u,d,f,y)}},1879:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+uniform vec3 offset, majorAxis, minorAxis, screenAxis;
+uniform float lineWidth;
+uniform vec2 screenShape;
+
+vec3 project(vec3 p) {
+ vec4 pp = projection * (view * (model * vec4(p, 1.0)));
+ return pp.xyz / max(pp.w, 0.0001);
+}
+
+void main() {
+ vec3 major = position.x * majorAxis;
+ vec3 minor = position.y * minorAxis;
+
+ vec3 vPosition = major + minor + offset;
+ vec3 pPosition = project(vPosition);
+ vec3 offset = project(vPosition + screenAxis * position.z);
+
+ vec2 screen = normalize((offset - pPosition).xy * screenShape) / screenShape;
+
+ gl_Position = vec4(pPosition + vec3(0.5 * screen * lineWidth, 0), 1.0);
+}
+`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 color;
+void main() {
+ gl_FragColor = color;
+}`]);t.n=function(p){return a(p,i,n,null,[{name:"position",type:"vec3"}])};var s=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+uniform vec3 offset, axis, alignDir, alignOpt;
+uniform float scale, angle, pixelScale;
+uniform vec2 resolution;
+
+vec3 project(vec3 p) {
+ vec4 pp = projection * (view * (model * vec4(p, 1.0)));
+ return pp.xyz / max(pp.w, 0.0001);
+}
+
+float computeViewAngle(vec3 a, vec3 b) {
+ vec3 A = project(a);
+ vec3 B = project(b);
+
+ return atan(
+ (B.y - A.y) * resolution.y,
+ (B.x - A.x) * resolution.x
+ );
+}
+
+const float PI = 3.141592;
+const float TWO_PI = 2.0 * PI;
+const float HALF_PI = 0.5 * PI;
+const float ONE_AND_HALF_PI = 1.5 * PI;
+
+int option = int(floor(alignOpt.x + 0.001));
+float hv_ratio = alignOpt.y;
+bool enableAlign = (alignOpt.z != 0.0);
+
+float mod_angle(float a) {
+ return mod(a, PI);
+}
+
+float positive_angle(float a) {
+ return mod_angle((a < 0.0) ?
+ a + TWO_PI :
+ a
+ );
+}
+
+float look_upwards(float a) {
+ float b = positive_angle(a);
+ return ((b > HALF_PI) && (b <= ONE_AND_HALF_PI)) ?
+ b - PI :
+ b;
+}
+
+float look_horizontal_or_vertical(float a, float ratio) {
+ // ratio controls the ratio between being horizontal to (vertical + horizontal)
+ // if ratio is set to 0.5 then it is 50%, 50%.
+ // when using a higher ratio e.g. 0.75 the result would
+ // likely be more horizontal than vertical.
+
+ float b = positive_angle(a);
+
+ return
+ (b < ( ratio) * HALF_PI) ? 0.0 :
+ (b < (2.0 - ratio) * HALF_PI) ? -HALF_PI :
+ (b < (2.0 + ratio) * HALF_PI) ? 0.0 :
+ (b < (4.0 - ratio) * HALF_PI) ? HALF_PI :
+ 0.0;
+}
+
+float roundTo(float a, float b) {
+ return float(b * floor((a + 0.5 * b) / b));
+}
+
+float look_round_n_directions(float a, int n) {
+ float b = positive_angle(a);
+ float div = TWO_PI / float(n);
+ float c = roundTo(b, div);
+ return look_upwards(c);
+}
+
+float applyAlignOption(float rawAngle, float delta) {
+ return
+ (option > 2) ? look_round_n_directions(rawAngle + delta, option) : // option 3-n: round to n directions
+ (option == 2) ? look_horizontal_or_vertical(rawAngle + delta, hv_ratio) : // horizontal or vertical
+ (option == 1) ? rawAngle + delta : // use free angle, and flip to align with one direction of the axis
+ (option == 0) ? look_upwards(rawAngle) : // use free angle, and stay upwards
+ (option ==-1) ? 0.0 : // useful for backward compatibility, all texts remains horizontal
+ rawAngle; // otherwise return back raw input angle
+}
+
+bool isAxisTitle = (axis.x == 0.0) &&
+ (axis.y == 0.0) &&
+ (axis.z == 0.0);
+
+void main() {
+ //Compute world offset
+ float axisDistance = position.z;
+ vec3 dataPosition = axisDistance * axis + offset;
+
+ float beta = angle; // i.e. user defined attributes for each tick
+
+ float axisAngle;
+ float clipAngle;
+ float flip;
+
+ if (enableAlign) {
+ axisAngle = (isAxisTitle) ? HALF_PI :
+ computeViewAngle(dataPosition, dataPosition + axis);
+ clipAngle = computeViewAngle(dataPosition, dataPosition + alignDir);
+
+ axisAngle += (sin(axisAngle) < 0.0) ? PI : 0.0;
+ clipAngle += (sin(clipAngle) < 0.0) ? PI : 0.0;
+
+ flip = (dot(vec2(cos(axisAngle), sin(axisAngle)),
+ vec2(sin(clipAngle),-cos(clipAngle))) > 0.0) ? 1.0 : 0.0;
+
+ beta += applyAlignOption(clipAngle, flip * PI);
+ }
+
+ //Compute plane offset
+ vec2 planeCoord = position.xy * pixelScale;
+
+ mat2 planeXform = scale * mat2(
+ cos(beta), sin(beta),
+ -sin(beta), cos(beta)
+ );
+
+ vec2 viewOffset = 2.0 * planeXform * planeCoord / resolution;
+
+ //Compute clip position
+ vec3 clipPosition = project(dataPosition);
+
+ //Apply text offset in clip coordinates
+ clipPosition += vec3(viewOffset, 0.0);
+
+ //Done
+ gl_Position = vec4(clipPosition, 1.0);
+}
+`]),c=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 color;
+void main() {
+ gl_FragColor = color;
+}`]);t.Q=function(p){return a(p,s,c,null,[{name:"position",type:"vec3"}])};var h=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec3 normal;
+
+uniform mat4 model, view, projection;
+uniform vec3 enable;
+uniform vec3 bounds[2];
+
+varying vec3 colorChannel;
+
+void main() {
+
+ vec3 signAxis = sign(bounds[1] - bounds[0]);
+
+ vec3 realNormal = signAxis * normal;
+
+ if(dot(realNormal, enable) > 0.0) {
+ vec3 minRange = min(bounds[0], bounds[1]);
+ vec3 maxRange = max(bounds[0], bounds[1]);
+ vec3 nPosition = mix(minRange, maxRange, 0.5 * (position + 1.0));
+ gl_Position = projection * (view * (model * vec4(nPosition, 1.0)));
+ } else {
+ gl_Position = vec4(0,0,0,0);
+ }
+
+ colorChannel = abs(realNormal);
+}
+`]),v=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec4 colors[3];
+
+varying vec3 colorChannel;
+
+void main() {
+ gl_FragColor = colorChannel.x * colors[0] +
+ colorChannel.y * colors[1] +
+ colorChannel.z * colors[2];
+}`]);t.bg=function(p){return a(p,h,v,null,[{name:"position",type:"vec3"},{name:"normal",type:"vec3"}])}},4935:function(e,t,r){"use strict";e.exports=_;var o=r(2762),a=r(8116),i=r(4359),n=r(1879).Q,s=window||process.global||{},c=s.__TEXT_CACHE||{};s.__TEXT_CACHE={};var h=3;function v(w,S,E,m){this.gl=w,this.shader=S,this.buffer=E,this.vao=m,this.tickOffset=this.tickCount=this.labelOffset=this.labelCount=null}var p=v.prototype,T=[0,0];p.bind=function(w,S,E,m){this.vao.bind(),this.shader.bind();var b=this.shader.uniforms;b.model=w,b.view=S,b.projection=E,b.pixelScale=m,T[0]=this.gl.drawingBufferWidth,T[1]=this.gl.drawingBufferHeight,this.shader.uniforms.resolution=T},p.unbind=function(){this.vao.unbind()},p.update=function(w,S,E,m,b){var d=[];function u(N,U,W,Q,ue,se){var he=[W.style,W.weight,W.variant,W.family].join("_"),G=c[he];G||(G=c[he]={});var $=G[U];$||($=G[U]=l(U,{triangles:!0,font:W.family,fontStyle:W.style,fontWeight:W.weight,fontVariant:W.variant,textAlign:"center",textBaseline:"middle",lineSpacing:ue,styletags:se}));for(var J=(Q||12)/12,Z=$.positions,re=$.cells,ne=0,j=re.length;ne<j;++ne)for(var ee=re[ne],ie=2;ie>=0;--ie){var fe=Z[ee[ie]];d.push(J*fe[0],-J*fe[1],N)}}for(var y=[0,0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0],z=1.25,F={breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0},B=0;B<3;++B){P[B]=d.length/h|0,u(.5*(w[0][B]+w[1][B]),S[B],E[B],12,z,F),L[B]=(d.length/h|0)-P[B],y[B]=d.length/h|0;for(var O=0;O<m[B].length;++O)if(m[B][O].text){var I={family:m[B][O].font||b[B].family,style:b[B].fontStyle||b[B].style,weight:b[B].fontWeight||b[B].weight,variant:b[B].fontVariant||b[B].variant};u(m[B][O].x,m[B][O].text,I,m[B][O].fontSize||12,z,F)}f[B]=(d.length/h|0)-y[B]}this.buffer.update(d),this.tickOffset=y,this.tickCount=f,this.labelOffset=P,this.labelCount=L},p.drawTicks=function(w,S,E,m,b,d,u,y){this.tickCount[w]&&(this.shader.uniforms.axis=d,this.shader.uniforms.color=b,this.shader.uniforms.angle=E,this.shader.uniforms.scale=S,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=u,this.shader.uniforms.alignOpt=y,this.vao.draw(this.gl.TRIANGLES,this.tickCount[w],this.tickOffset[w]))},p.drawLabel=function(w,S,E,m,b,d,u,y){this.labelCount[w]&&(this.shader.uniforms.axis=d,this.shader.uniforms.color=b,this.shader.uniforms.angle=E,this.shader.uniforms.scale=S,this.shader.uniforms.offset=m,this.shader.uniforms.alignDir=u,this.shader.uniforms.alignOpt=y,this.vao.draw(this.gl.TRIANGLES,this.labelCount[w],this.labelOffset[w]))},p.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()};function l(w,S){try{return i(w,S)}catch(E){return console.warn('error vectorizing text:"'+w+'" error:',E),{cells:[],positions:[]}}}function _(w,S,E,m,b,d){var u=o(w),y=a(w,[{buffer:u,size:3}]),f=n(w);f.attributes.position.location=0;var P=new v(w,f,u,y);return P.update(S,E,m,b,d),P}},6444:function(e,t){"use strict";t.create=o,t.equal=a;function r(i,n){var s=i+"",c=s.indexOf("."),h=0;c>=0&&(h=s.length-c-1);var v=Math.pow(10,h),p=Math.round(i*n*v),T=p+"";if(T.indexOf("e")>=0)return T;var l=p/v,_=p%v;p<0?(l=-Math.ceil(l)|0,_=-_|0):(l=Math.floor(l)|0,_=_|0);var w=""+l;if(p<0&&(w="-"+w),h){for(var S=""+_;S.length<h;)S="0"+S;return w+"."+S}else return w}function o(i,n){for(var s=[],c=0;c<3;++c){for(var h=[],v=.5*(i[0][c]+i[1][c]),p=0;p*n[c]<=i[1][c];++p)h.push({x:p*n[c],text:r(n[c],p)});for(var p=-1;p*n[c]>=i[0][c];--p)h.push({x:p*n[c],text:r(n[c],p)});s.push(h)}return s}function a(i,n){for(var s=0;s<3;++s){if(i[s].length!==n[s].length)return!1;for(var c=0;c<i[s].length;++c){var h=i[s][c],v=n[s][c];if(h.x!==v.x||h.text!==v.text||h.font!==v.font||h.fontColor!==v.fontColor||h.fontSize!==v.fontSize||h.dx!==v.dx||h.dy!==v.dy)return!1}}return!0}},5445:function(e,t,r){"use strict";e.exports=E;var o=r(5033),a=r(5202),i=r(6429),n=r(6760),s=r(5665),c=r(5352),h=new Float32Array([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]),v=new Float32Array(16);function p(m,b,d){this.lo=m,this.hi=b,this.pixelsPerDataUnit=d}var T=[0,0,0,1],l=[0,0,0,1];function _(m,b,d,u,y){for(var f=0;f<3;++f){for(var P=T,L=l,z=0;z<3;++z)L[z]=P[z]=d[z];L[3]=P[3]=1,L[f]+=1,c(L,L,b),L[3]<0&&(m[f]=1/0),P[f]-=1,c(P,P,b),P[3]<0&&(m[f]=1/0);var F=(P[0]/P[3]-L[0]/L[3])*u,B=(P[1]/P[3]-L[1]/L[3])*y;m[f]=.25*Math.sqrt(F*F+B*B)}return m}var w=[new p(1/0,-1/0,1/0),new p(1/0,-1/0,1/0),new p(1/0,-1/0,1/0)],S=[0,0,0];function E(m,b,d,u,B){var f=b.model||h,P=b.view||h,L=b.projection||h,z=b._ortho||!1,F=m.bounds,B=B||i(f,P,L,F,z),O=B.axis;n(v,P,f),n(v,L,v);for(var I=w,N=0;N<3;++N)I[N].lo=1/0,I[N].hi=-1/0,I[N].pixelsPerDataUnit=1/0;var U=o(s(v,v));s(v,v);for(var W=0;W<3;++W){var Q=(W+1)%3,ue=(W+2)%3,se=S;e:for(var N=0;N<2;++N){var he=[];if(O[W]<0!=!!N){se[W]=F[N][W];for(var G=0;G<2;++G){se[Q]=F[G^N][Q];for(var $=0;$<2;++$)se[ue]=F[$^G^N][ue],he.push(se.slice())}for(var J=z?5:4,G=J;G===J;++G){if(he.length===0)continue e;he=a.positive(he,U[G])}for(var G=0;G<he.length;++G)for(var ue=he[G],Z=_(S,v,ue,d,u),$=0;$<3;++$)I[$].lo=Math.min(I[$].lo,ue[$]),I[$].hi=Math.max(I[$].hi,ue[$]),$!==W&&(I[$].pixelsPerDataUnit=Math.min(I[$].pixelsPerDataUnit,Math.abs(Z[$])))}}}return I}},2762:function(e,t,r){"use strict";var o=r(1888),a=r(5298),i=r(9618),n=["uint8","uint8_clamped","uint16","uint32","int8","int16","int32","float32"];function s(l,_,w,S,E){this.gl=l,this.type=_,this.handle=w,this.length=S,this.usage=E}var c=s.prototype;c.bind=function(){this.gl.bindBuffer(this.type,this.handle)},c.unbind=function(){this.gl.bindBuffer(this.type,null)},c.dispose=function(){this.gl.deleteBuffer(this.handle)};function h(l,_,w,S,E,m){var b=E.length*E.BYTES_PER_ELEMENT;if(m<0)return l.bufferData(_,E,S),b;if(b+m>w)throw new Error("gl-buffer: If resizing buffer, must not specify offset");return l.bufferSubData(_,m,E),w}function v(l,_){for(var w=o.malloc(l.length,_),S=l.length,E=0;E<S;++E)w[E]=l[E];return w}function p(l,_){for(var w=1,S=_.length-1;S>=0;--S){if(_[S]!==w)return!1;w*=l[S]}return!0}c.update=function(l,_){if(typeof _!="number"&&(_=-1),this.bind(),typeof l=="object"&&typeof l.shape<"u"){var w=l.dtype;if(n.indexOf(w)<0&&(w="float32"),this.type===this.gl.ELEMENT_ARRAY_BUFFER){var S=gl.getExtension("OES_element_index_uint");S&&w!=="uint16"?w="uint32":w="uint16"}if(w===l.dtype&&p(l.shape,l.stride))l.offset===0&&l.data.length===l.shape[0]?this.length=h(this.gl,this.type,this.length,this.usage,l.data,_):this.length=h(this.gl,this.type,this.length,this.usage,l.data.subarray(l.offset,l.shape[0]),_);else{var E=o.malloc(l.size,w),m=i(E,l.shape);a.assign(m,l),_<0?this.length=h(this.gl,this.type,this.length,this.usage,E,_):this.length=h(this.gl,this.type,this.length,this.usage,E.subarray(0,l.size),_),o.free(E)}}else if(Array.isArray(l)){var b;this.type===this.gl.ELEMENT_ARRAY_BUFFER?b=v(l,"uint16"):b=v(l,"float32"),_<0?this.length=h(this.gl,this.type,this.length,this.usage,b,_):this.length=h(this.gl,this.type,this.length,this.usage,b.subarray(0,l.length),_),o.free(b)}else if(typeof l=="object"&&typeof l.length=="number")this.length=h(this.gl,this.type,this.length,this.usage,l,_);else if(typeof l=="number"||l===void 0){if(_>=0)throw new Error("gl-buffer: Cannot specify offset when resizing buffer");l=l|0,l<=0&&(l=1),this.gl.bufferData(this.type,l|0,this.usage),this.length=l}else throw new Error("gl-buffer: Invalid data type")};function T(l,_,w,S){if(w=w||l.ARRAY_BUFFER,S=S||l.DYNAMIC_DRAW,w!==l.ARRAY_BUFFER&&w!==l.ELEMENT_ARRAY_BUFFER)throw new Error("gl-buffer: Invalid type for webgl buffer, must be either gl.ARRAY_BUFFER or gl.ELEMENT_ARRAY_BUFFER");if(S!==l.DYNAMIC_DRAW&&S!==l.STATIC_DRAW&&S!==l.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 E=l.createBuffer(),m=new s(l,w,E,0,S);return m.update(_),m}e.exports=T},6405:function(e,t,r){"use strict";var o=r(2931);e.exports=function(i,n){var s=i.positions,c=i.vectors,h={positions:[],vertexIntensity:[],vertexIntensityBounds:i.vertexIntensityBounds,vectors:[],cells:[],coneOffset:i.coneOffset,colormap:i.colormap};if(i.positions.length===0)return n&&(n[0]=[0,0,0],n[1]=[0,0,0]),h;for(var v=0,p=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,S=-1/0,E=null,m=null,b=[],d=1/0,u=!1,y=i.coneSizemode==="raw",f=0;f<s.length;f++){var P=s[f];p=Math.min(P[0],p),T=Math.max(P[0],T),l=Math.min(P[1],l),_=Math.max(P[1],_),w=Math.min(P[2],w),S=Math.max(P[2],S);var L=c[f];if(o.length(L)>v&&(v=o.length(L)),f&&!y){var z=2*o.distance(E,P)/(o.length(m)+o.length(L));z?(d=Math.min(d,z),u=!1):u=!0}u||(E=P,m=L),b.push(L)}var F=[p,l,w],B=[T,_,S];n&&(n[0]=F,n[1]=B),v===0&&(v=1);var O=1/v;isFinite(d)||(d=1),h.vectorScale=d;var I=i.coneSize||(y?1:.5);i.absoluteConeSize&&(I=i.absoluteConeSize*O),h.coneScale=I;for(var f=0,N=0;f<s.length;f++)for(var P=s[f],U=P[0],W=P[1],Q=P[2],ue=b[f],se=o.length(ue)*O,he=0,G=8;he<G;he++){h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.positions.push([U,W,Q,N++]),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vectors.push(ue),h.vertexIntensity.push(se,se,se),h.vertexIntensity.push(se,se,se);var $=h.positions.length;h.cells.push([$-6,$-5,$-4],[$-3,$-2,$-1])}return h};var a=r(614);e.exports.createMesh=r(9060),e.exports.createConeMesh=function(i,n){return e.exports.createMesh(i,n,{shaders:a,traceType:"cone"})}},9060:function(e,t,r){"use strict";var o=r(9405),a=r(2762),i=r(8116),n=r(7766),s=r(6760),c=r(7608),h=r(9618),v=r(6729),p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function T(b,d,u,y,f,P,L,z,F,B,O){this.gl=b,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=d,this.dirty=!0,this.triShader=u,this.pickShader=y,this.trianglePositions=f,this.triangleVectors=P,this.triangleColors=z,this.triangleUVs=F,this.triangleIds=L,this.triangleVAO=B,this.triangleCount=0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lightPosition=[1e5,1e5,0],this.ambientLight=.8,this.diffuseLight=.8,this.specularLight=2,this.roughness=.5,this.fresnel=1.5,this.opacity=1,this.traceType=O,this.tubeScale=1,this.coneScale=2,this.vectorScale=1,this.coneOffset=.25,this._model=p,this._view=p,this._projection=p,this._resolution=[1,1]}var l=T.prototype;l.isOpaque=function(){return this.opacity>=1},l.isTransparent=function(){return this.opacity<1},l.pickSlots=1,l.setPickBase=function(b){this.pickId=b};function _(b){for(var d=v({colormap:b,nshades:256,format:"rgba"}),u=new Uint8Array(256*4),y=0;y<256;++y){for(var f=d[y],P=0;P<3;++P)u[4*y+P]=f[P];u[4*y+3]=f[3]*255}return h(u,[256,256,4],[4,0,1])}function w(b){for(var d=b.length,u=new Array(d),y=0;y<d;++y)u[y]=b[y][2];return u}l.update=function(b){b=b||{};var d=this.gl;this.dirty=!0,"lightPosition"in b&&(this.lightPosition=b.lightPosition),"opacity"in b&&(this.opacity=b.opacity),"ambient"in b&&(this.ambientLight=b.ambient),"diffuse"in b&&(this.diffuseLight=b.diffuse),"specular"in b&&(this.specularLight=b.specular),"roughness"in b&&(this.roughness=b.roughness),"fresnel"in b&&(this.fresnel=b.fresnel),b.tubeScale!==void 0&&(this.tubeScale=b.tubeScale),b.vectorScale!==void 0&&(this.vectorScale=b.vectorScale),b.coneScale!==void 0&&(this.coneScale=b.coneScale),b.coneOffset!==void 0&&(this.coneOffset=b.coneOffset),b.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=d.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=d.LINEAR,this.texture.setPixels(_(b.colormap)),this.texture.generateMipmap());var u=b.cells,y=b.positions,f=b.vectors;if(!(!y||!u||!f)){var P=[],L=[],z=[],F=[],B=[];this.cells=u,this.positions=y,this.vectors=f;var O=b.meshColor||[1,1,1,1],I=b.vertexIntensity,N=1/0,U=-1/0;if(I)if(b.vertexIntensityBounds)N=+b.vertexIntensityBounds[0],U=+b.vertexIntensityBounds[1];else for(var W=0;W<I.length;++W){var Q=I[W];N=Math.min(N,Q),U=Math.max(U,Q)}else for(var W=0;W<y.length;++W){var Q=y[W][2];N=Math.min(N,Q),U=Math.max(U,Q)}I?this.intensity=I:this.intensity=w(y),this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var W=0;W<y.length;++W)for(var ue=y[W],se=0;se<3;++se)isNaN(ue[se])||!isFinite(ue[se])||(this.bounds[0][se]=Math.min(this.bounds[0][se],ue[se]),this.bounds[1][se]=Math.max(this.bounds[1][se],ue[se]));var he=0;e:for(var W=0;W<u.length;++W){var G=u[W];switch(G.length){case 3:for(var se=0;se<3;++se)for(var $=G[se],ue=y[$],J=0;J<3;++J)if(isNaN(ue[J])||!isFinite(ue[J]))continue e;for(var se=0;se<3;++se){var $=G[2-se],ue=y[$];P.push(ue[0],ue[1],ue[2],ue[3]);var Z=f[$];L.push(Z[0],Z[1],Z[2],Z[3]||0);var re=O;re.length===3?z.push(re[0],re[1],re[2],1):z.push(re[0],re[1],re[2],re[3]);var ne;I?ne=[(I[$]-N)/(U-N),0]:ne=[(ue[2]-N)/(U-N),0],F.push(ne[0],ne[1]),B.push(W)}he+=1;break;default:break}}this.triangleCount=he,this.trianglePositions.update(P),this.triangleVectors.update(L),this.triangleColors.update(z),this.triangleUVs.update(F),this.triangleIds.update(new Uint32Array(B))}},l.drawTransparent=l.draw=function(b){b=b||{};for(var d=this.gl,u=b.model||p,y=b.view||p,f=b.projection||p,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);var z={model:u,view:y,projection:f,inverseModel:p.slice(),clipBounds:P,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],opacity:this.opacity,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,texture:0};z.inverseModel=c(z.inverseModel,z.model),d.disable(d.CULL_FACE),this.texture.bind(0);var F=new Array(16);s(F,z.view,z.model),s(F,z.projection,F),c(F,F);for(var L=0;L<3;++L)z.eyePosition[L]=F[12+L]/F[15];for(var B=F[15],L=0;L<3;++L)B+=this.lightPosition[L]*F[4*L+3];for(var L=0;L<3;++L){for(var O=F[12+L],I=0;I<3;++I)O+=F[4*I+L]*this.lightPosition[I];z.lightPosition[L]=O/B}if(this.triangleCount>0){var N=this.triShader;N.bind(),N.uniforms=z,this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}},l.drawPick=function(b){b=b||{};for(var d=this.gl,u=b.model||p,y=b.view||p,f=b.projection||p,P=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],L=0;L<3;++L)P[0][L]=Math.max(P[0][L],this.clipBounds[0][L]),P[1][L]=Math.min(P[1][L],this.clipBounds[1][L]);this._model=[].slice.call(u),this._view=[].slice.call(y),this._projection=[].slice.call(f),this._resolution=[d.drawingBufferWidth,d.drawingBufferHeight];var z={model:u,view:y,projection:f,clipBounds:P,tubeScale:this.tubeScale,vectorScale:this.vectorScale,coneScale:this.coneScale,coneOffset:this.coneOffset,pickId:this.pickId/255},F=this.pickShader;F.bind(),F.uniforms=z,this.triangleCount>0&&(this.triangleVAO.bind(),d.drawArrays(d.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind())},l.pick=function(b){if(!b||b.id!==this.pickId)return null;var d=b.value[0]+256*b.value[1]+65536*b.value[2],u=this.cells[d],y=this.positions[u[1]].slice(0,3),f={position:y,dataCoordinate:y,index:Math.floor(u[1]/48)};return this.traceType==="cone"?f.index=Math.floor(u[1]/48):this.traceType==="streamtube"&&(f.intensity=this.intensity[u[1]],f.velocity=this.vectors[u[1]].slice(0,3),f.divergence=this.vectors[u[1]][3],f.index=d),f},l.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.pickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleVectors.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleIds.dispose()};function S(b,d){var u=o(b,d.meshShader.vertex,d.meshShader.fragment,null,d.meshShader.attributes);return u.attributes.position.location=0,u.attributes.color.location=2,u.attributes.uv.location=3,u.attributes.vector.location=4,u}function E(b,d){var u=o(b,d.pickShader.vertex,d.pickShader.fragment,null,d.pickShader.attributes);return u.attributes.position.location=0,u.attributes.id.location=1,u.attributes.vector.location=4,u}function m(b,d,u){var y=u.shaders;arguments.length===1&&(d=b,b=d.gl);var f=S(b,y),P=E(b,y),L=n(b,h(new Uint8Array([255,255,255,255]),[1,1,4]));L.generateMipmap(),L.minFilter=b.LINEAR_MIPMAP_LINEAR,L.magFilter=b.LINEAR;var z=a(b),F=a(b),B=a(b),O=a(b),I=a(b),N=i(b,[{buffer:z,type:b.FLOAT,size:4},{buffer:I,type:b.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:B,type:b.FLOAT,size:4},{buffer:O,type:b.FLOAT,size:2},{buffer:F,type:b.FLOAT,size:4}]),U=new T(b,L,f,P,z,F,I,B,O,N,u.traceType||"cone");return U.update(d),U}e.exports=m},614:function(e,t,r){var o=r(3236),a=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the cone vertex and normal at the given index.
+//
+// The returned vertex is for a cone with its top at origin and height of 1.0,
+// pointing in the direction of the vector attribute.
+//
+// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
+// These vertices are used to make up the triangles of the cone by the following:
+// segment + 0 top vertex
+// segment + 1 perimeter vertex a+1
+// segment + 2 perimeter vertex a
+// segment + 3 center base vertex
+// segment + 4 perimeter vertex a
+// segment + 5 perimeter vertex a+1
+// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
+// To go from index to segment, floor(index / 6)
+// To go from segment to angle, 2*pi * (segment/segmentCount)
+// To go from index to segment index, index - (segment*6)
+//
+vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {
+
+ const float segmentCount = 8.0;
+
+ float index = rawIndex - floor(rawIndex /
+ (segmentCount * 6.0)) *
+ (segmentCount * 6.0);
+
+ float segment = floor(0.001 + index/6.0);
+ float segmentIndex = index - (segment*6.0);
+
+ normal = -normalize(d);
+
+ if (segmentIndex > 2.99 && segmentIndex < 3.01) {
+ return mix(vec3(0.0), -d, coneOffset);
+ }
+
+ float nextAngle = (
+ (segmentIndex > 0.99 && segmentIndex < 1.01) ||
+ (segmentIndex > 4.99 && segmentIndex < 5.01)
+ ) ? 1.0 : 0.0;
+ float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);
+
+ vec3 v1 = mix(d, vec3(0.0), coneOffset);
+ vec3 v2 = v1 - d;
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d)*0.25;
+ vec3 y = v * sin(angle) * length(d)*0.25;
+ vec3 v3 = v2 + x + y;
+ if (segmentIndex < 3.0) {
+ vec3 tx = u * sin(angle);
+ vec3 ty = v * -cos(angle);
+ vec3 tangent = tx + ty;
+ normal = normalize(cross(v3 - v1, tangent));
+ }
+
+ if (segmentIndex == 0.0) {
+ return mix(d, vec3(0.0), coneOffset);
+ }
+ return v3;
+}
+
+attribute vec3 vector;
+attribute vec4 color, position;
+attribute vec2 uv;
+
+uniform float vectorScale, coneScale, coneOffset;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 eyePosition, lightPosition;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ // Scale the vector magnitude to stay constant with
+ // model & view changes.
+ vec3 normal;
+ vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector), position.w, coneOffset, normal);
+ vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * conePosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ // vec4 m_position = model * vec4(conePosition, 1.0);
+ vec4 t_position = view * conePosition;
+ gl_Position = projection * t_position;
+
+ f_color = color;
+ f_data = conePosition.xyz;
+ f_position = position.xyz;
+ f_uv = uv;
+}
+`]),i=o([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform sampler2D texture;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = f_color * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * opacity;
+}
+`]),n=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the cone vertex and normal at the given index.
+//
+// The returned vertex is for a cone with its top at origin and height of 1.0,
+// pointing in the direction of the vector attribute.
+//
+// Each cone is made up of a top vertex, a center base vertex and base perimeter vertices.
+// These vertices are used to make up the triangles of the cone by the following:
+// segment + 0 top vertex
+// segment + 1 perimeter vertex a+1
+// segment + 2 perimeter vertex a
+// segment + 3 center base vertex
+// segment + 4 perimeter vertex a
+// segment + 5 perimeter vertex a+1
+// Where segment is the number of the radial segment * 6 and a is the angle at that radial segment.
+// To go from index to segment, floor(index / 6)
+// To go from segment to angle, 2*pi * (segment/segmentCount)
+// To go from index to segment index, index - (segment*6)
+//
+vec3 getConePosition(vec3 d, float rawIndex, float coneOffset, out vec3 normal) {
+
+ const float segmentCount = 8.0;
+
+ float index = rawIndex - floor(rawIndex /
+ (segmentCount * 6.0)) *
+ (segmentCount * 6.0);
+
+ float segment = floor(0.001 + index/6.0);
+ float segmentIndex = index - (segment*6.0);
+
+ normal = -normalize(d);
+
+ if (segmentIndex > 2.99 && segmentIndex < 3.01) {
+ return mix(vec3(0.0), -d, coneOffset);
+ }
+
+ float nextAngle = (
+ (segmentIndex > 0.99 && segmentIndex < 1.01) ||
+ (segmentIndex > 4.99 && segmentIndex < 5.01)
+ ) ? 1.0 : 0.0;
+ float angle = 2.0 * 3.14159 * ((segment + nextAngle) / segmentCount);
+
+ vec3 v1 = mix(d, vec3(0.0), coneOffset);
+ vec3 v2 = v1 - d;
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d)*0.25;
+ vec3 y = v * sin(angle) * length(d)*0.25;
+ vec3 v3 = v2 + x + y;
+ if (segmentIndex < 3.0) {
+ vec3 tx = u * sin(angle);
+ vec3 ty = v * -cos(angle);
+ vec3 tangent = tx + ty;
+ normal = normalize(cross(v3 - v1, tangent));
+ }
+
+ if (segmentIndex == 0.0) {
+ return mix(d, vec3(0.0), coneOffset);
+ }
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform float vectorScale, coneScale, coneOffset;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ vec3 normal;
+ vec3 XYZ = getConePosition(mat3(model) * ((vectorScale * coneScale) * vector.xyz), position.w, coneOffset, normal);
+ vec4 conePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+ gl_Position = projection * (view * conePosition);
+ f_id = id;
+ f_position = position.xyz;
+}
+`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec3"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec3"}]}},737:function(e){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"}},5171:function(e,t,r){var o=r(737);e.exports=function(i){return o[i]}},9165:function(e,t,r){"use strict";e.exports=T;var o=r(2762),a=r(8116),i=r(3436),n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,S){this.gl=l,this.shader=S,this.buffer=_,this.vao=w,this.pixelRatio=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.lineWidth=[1,1,1],this.capSize=[10,10,10],this.lineCount=[0,0,0],this.lineOffset=[0,0,0],this.opacity=1,this.hasAlpha=!1}var c=s.prototype;c.isOpaque=function(){return!this.hasAlpha},c.isTransparent=function(){return this.hasAlpha},c.drawTransparent=c.draw=function(l){var _=this.gl,w=this.shader.uniforms;this.shader.bind();var S=w.view=l.view||n,E=w.projection=l.projection||n;w.model=l.model||n,w.clipBounds=this.clipBounds,w.opacity=this.opacity;var m=S[12],b=S[13],d=S[14],u=S[15],y=l._ortho||!1,f=y?2:1,P=f*this.pixelRatio*(E[3]*m+E[7]*b+E[11]*d+E[15]*u)/_.drawingBufferHeight;this.vao.bind();for(var L=0;L<3;++L)_.lineWidth(this.lineWidth[L]*this.pixelRatio),w.capSize=this.capSize[L]*P,this.lineCount[L]&&_.drawArrays(_.LINES,this.lineOffset[L],this.lineCount[L]);this.vao.unbind()};function h(l,_){for(var w=0;w<3;++w)l[0][w]=Math.min(l[0][w],_[w]),l[1][w]=Math.max(l[1][w],_[w])}var v=function(){for(var l=new Array(3),_=0;_<3;++_){for(var w=[],S=1;S<=2;++S)for(var E=-1;E<=1;E+=2){var m=(S+_)%3,b=[0,0,0];b[m]=E,w.push(b)}l[_]=w}return l}();function p(l,_,w,S){for(var E=v[S],m=0;m<E.length;++m){var b=E[m];l.push(_[0],_[1],_[2],w[0],w[1],w[2],w[3],b[0],b[1],b[2])}return E.length}c.update=function(l){l=l||{},"lineWidth"in l&&(this.lineWidth=l.lineWidth,Array.isArray(this.lineWidth)||(this.lineWidth=[this.lineWidth,this.lineWidth,this.lineWidth])),"capSize"in l&&(this.capSize=l.capSize,Array.isArray(this.capSize)||(this.capSize=[this.capSize,this.capSize,this.capSize])),this.hasAlpha=!1,"opacity"in l&&(this.opacity=+l.opacity,this.opacity<1&&(this.hasAlpha=!0));var _=l.color||[[0,0,0],[0,0,0],[0,0,0]],w=l.position,S=l.error;if(Array.isArray(_[0])||(_=[_,_,_]),w&&S){var E=[],m=w.length,b=0;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.lineCount=[0,0,0];for(var d=0;d<3;++d){this.lineOffset[d]=b;e:for(var u=0;u<m;++u){for(var y=w[u],f=0;f<3;++f)if(isNaN(y[f])||!isFinite(y[f]))continue e;var P=S[u],L=_[d];if(Array.isArray(L[0])&&(L=_[u]),L.length===3?L=[L[0],L[1],L[2],1]:L.length===4&&(L=[L[0],L[1],L[2],L[3]],!this.hasAlpha&&L[3]<1&&(this.hasAlpha=!0)),!(isNaN(P[0][d])||isNaN(P[1][d]))){if(P[0][d]<0){var z=y.slice();z[d]+=P[0][d],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+p(E,z,L,d)}if(P[1][d]>0){var z=y.slice();z[d]+=P[1][d],E.push(y[0],y[1],y[2],L[0],L[1],L[2],L[3],0,0,0,z[0],z[1],z[2],L[0],L[1],L[2],L[3],0,0,0),h(this.bounds,z),b+=2+p(E,z,L,d)}}}this.lineCount[d]=b-this.lineOffset[d]}this.buffer.update(E)}},c.dispose=function(){this.shader.dispose(),this.buffer.dispose(),this.vao.dispose()};function T(l){var _=l.gl,w=o(_),S=a(_,[{buffer:w,type:_.FLOAT,size:3,offset:0,stride:40},{buffer:w,type:_.FLOAT,size:4,offset:12,stride:40},{buffer:w,type:_.FLOAT,size:3,offset:28,stride:40}]),E=i(_);E.attributes.position.location=0,E.attributes.color.location=1,E.attributes.offset.location=2;var m=new s(_,w,S,E);return m.update(l),m}},3436:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, offset;
+attribute vec4 color;
+uniform mat4 model, view, projection;
+uniform float capSize;
+varying vec4 fragColor;
+varying vec3 fragPosition;
+
+void main() {
+ vec4 worldPosition = model * vec4(position, 1.0);
+ worldPosition = (worldPosition / worldPosition.w) + vec4(capSize * offset, 0.0);
+ gl_Position = projection * (view * worldPosition);
+ fragColor = color;
+ fragPosition = position;
+}`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float opacity;
+varying vec3 fragPosition;
+varying vec4 fragColor;
+
+void main() {
+ if (
+ outOfRange(clipBounds[0], clipBounds[1], fragPosition) ||
+ fragColor.a * opacity == 0.
+ ) discard;
+
+ gl_FragColor = opacity * fragColor;
+}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"offset",type:"vec3"}])}},2260:function(e,t,r){"use strict";var o=r(7766);e.exports=b;var a=null,i,n,s,c;function h(d){var u=d.getParameter(d.FRAMEBUFFER_BINDING),y=d.getParameter(d.RENDERBUFFER_BINDING),f=d.getParameter(d.TEXTURE_BINDING_2D);return[u,y,f]}function v(d,u){d.bindFramebuffer(d.FRAMEBUFFER,u[0]),d.bindRenderbuffer(d.RENDERBUFFER,u[1]),d.bindTexture(d.TEXTURE_2D,u[2])}function p(d,u){var y=d.getParameter(u.MAX_COLOR_ATTACHMENTS_WEBGL);a=new Array(y+1);for(var f=0;f<=y;++f){for(var P=new Array(y),L=0;L<f;++L)P[L]=d.COLOR_ATTACHMENT0+L;for(var L=f;L<y;++L)P[L]=d.NONE;a[f]=P}}function T(d){switch(d){case i:throw new Error("gl-fbo: Framebuffer unsupported");case n:throw new Error("gl-fbo: Framebuffer incomplete attachment");case s:throw new Error("gl-fbo: Framebuffer incomplete dimensions");case c:throw new Error("gl-fbo: Framebuffer incomplete missing attachment");default:throw new Error("gl-fbo: Framebuffer failed for unspecified reason")}}function l(d,u,y,f,P,L){if(!f)return null;var z=o(d,u,y,P,f);return z.magFilter=d.NEAREST,z.minFilter=d.NEAREST,z.mipSamples=1,z.bind(),d.framebufferTexture2D(d.FRAMEBUFFER,L,d.TEXTURE_2D,z.handle,0),z}function _(d,u,y,f,P){var L=d.createRenderbuffer();return d.bindRenderbuffer(d.RENDERBUFFER,L),d.renderbufferStorage(d.RENDERBUFFER,f,u,y),d.framebufferRenderbuffer(d.FRAMEBUFFER,P,d.RENDERBUFFER,L),L}function w(d){var u=h(d.gl),y=d.gl,f=d.handle=y.createFramebuffer(),P=d._shape[0],L=d._shape[1],z=d.color.length,F=d._ext,B=d._useStencil,O=d._useDepth,I=d._colorType;y.bindFramebuffer(y.FRAMEBUFFER,f);for(var N=0;N<z;++N)d.color[N]=l(y,P,L,I,y.RGBA,y.COLOR_ATTACHMENT0+N);z===0?(d._color_rb=_(y,P,L,y.RGBA4,y.COLOR_ATTACHMENT0),F&&F.drawBuffersWEBGL(a[0])):z>1&&F.drawBuffersWEBGL(a[z]);var U=y.getExtension("WEBGL_depth_texture");U?B?d.depth=l(y,P,L,U.UNSIGNED_INT_24_8_WEBGL,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O&&(d.depth=l(y,P,L,y.UNSIGNED_SHORT,y.DEPTH_COMPONENT,y.DEPTH_ATTACHMENT)):O&&B?d._depth_rb=_(y,P,L,y.DEPTH_STENCIL,y.DEPTH_STENCIL_ATTACHMENT):O?d._depth_rb=_(y,P,L,y.DEPTH_COMPONENT16,y.DEPTH_ATTACHMENT):B&&(d._depth_rb=_(y,P,L,y.STENCIL_INDEX,y.STENCIL_ATTACHMENT));var W=y.checkFramebufferStatus(y.FRAMEBUFFER);if(W!==y.FRAMEBUFFER_COMPLETE){d._destroyed=!0,y.bindFramebuffer(y.FRAMEBUFFER,null),y.deleteFramebuffer(d.handle),d.handle=null,d.depth&&(d.depth.dispose(),d.depth=null),d._depth_rb&&(y.deleteRenderbuffer(d._depth_rb),d._depth_rb=null);for(var N=0;N<d.color.length;++N)d.color[N].dispose(),d.color[N]=null;d._color_rb&&(y.deleteRenderbuffer(d._color_rb),d._color_rb=null),v(y,u),T(W)}v(y,u)}function S(d,u,y,f,P,L,z,F){this.gl=d,this._shape=[u|0,y|0],this._destroyed=!1,this._ext=F,this.color=new Array(P);for(var B=0;B<P;++B)this.color[B]=null;this._color_rb=null,this.depth=null,this._depth_rb=null,this._colorType=f,this._useDepth=L,this._useStencil=z;var O=this,I=[u|0,y|0];Object.defineProperties(I,{0:{get:function(){return O._shape[0]},set:function(N){return O.width=N}},1:{get:function(){return O._shape[1]},set:function(N){return O.height=N}}}),this._shapeVector=I,w(this)}var E=S.prototype;function m(d,u,y){if(d._destroyed)throw new Error("gl-fbo: Can't resize destroyed FBO");if(!(d._shape[0]===u&&d._shape[1]===y)){var f=d.gl,P=f.getParameter(f.MAX_RENDERBUFFER_SIZE);if(u<0||u>P||y<0||y>P)throw new Error("gl-fbo: Can't resize FBO, invalid dimensions");d._shape[0]=u,d._shape[1]=y;for(var L=h(f),z=0;z<d.color.length;++z)d.color[z].shape=d._shape;d._color_rb&&(f.bindRenderbuffer(f.RENDERBUFFER,d._color_rb),f.renderbufferStorage(f.RENDERBUFFER,f.RGBA4,d._shape[0],d._shape[1])),d.depth&&(d.depth.shape=d._shape),d._depth_rb&&(f.bindRenderbuffer(f.RENDERBUFFER,d._depth_rb),d._useDepth&&d._useStencil?f.renderbufferStorage(f.RENDERBUFFER,f.DEPTH_STENCIL,d._shape[0],d._shape[1]):d._useDepth?f.renderbufferStorage(f.RENDERBUFFER,f.DEPTH_COMPONENT16,d._shape[0],d._shape[1]):d._useStencil&&f.renderbufferStorage(f.RENDERBUFFER,f.STENCIL_INDEX,d._shape[0],d._shape[1])),f.bindFramebuffer(f.FRAMEBUFFER,d.handle);var F=f.checkFramebufferStatus(f.FRAMEBUFFER);F!==f.FRAMEBUFFER_COMPLETE&&(d.dispose(),v(f,L),T(F)),v(f,L)}}Object.defineProperties(E,{shape:{get:function(){return this._destroyed?[0,0]:this._shapeVector},set:function(d){if(Array.isArray(d)||(d=[d|0,d|0]),d.length!==2)throw new Error("gl-fbo: Shape vector must be length 2");var u=d[0]|0,y=d[1]|0;return m(this,u,y),[u,y]},enumerable:!1},width:{get:function(){return this._destroyed?0:this._shape[0]},set:function(d){return d=d|0,m(this,d,this._shape[1]),d},enumerable:!1},height:{get:function(){return this._destroyed?0:this._shape[1]},set:function(d){return d=d|0,m(this,this._shape[0],d),d},enumerable:!1}}),E.bind=function(){if(!this._destroyed){var d=this.gl;d.bindFramebuffer(d.FRAMEBUFFER,this.handle),d.viewport(0,0,this._shape[0],this._shape[1])}},E.dispose=function(){if(!this._destroyed){this._destroyed=!0;var d=this.gl;d.deleteFramebuffer(this.handle),this.handle=null,this.depth&&(this.depth.dispose(),this.depth=null),this._depth_rb&&(d.deleteRenderbuffer(this._depth_rb),this._depth_rb=null);for(var u=0;u<this.color.length;++u)this.color[u].dispose(),this.color[u]=null;this._color_rb&&(d.deleteRenderbuffer(this._color_rb),this._color_rb=null)}};function b(d,u,y,f){i||(i=d.FRAMEBUFFER_UNSUPPORTED,n=d.FRAMEBUFFER_INCOMPLETE_ATTACHMENT,s=d.FRAMEBUFFER_INCOMPLETE_DIMENSIONS,c=d.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT);var P=d.getExtension("WEBGL_draw_buffers");if(!a&&P&&p(d,P),Array.isArray(u)&&(f=y,y=u[1]|0,u=u[0]|0),typeof u!="number")throw new Error("gl-fbo: Missing shape parameter");var L=d.getParameter(d.MAX_RENDERBUFFER_SIZE);if(u<0||u>L||y<0||y>L)throw new Error("gl-fbo: Parameters are too large for FBO");f=f||{};var z=1;if("color"in f){if(z=Math.max(f.color|0,0),z<0)throw new Error("gl-fbo: Must specify a nonnegative number of colors");if(z>1)if(P){if(z>d.getParameter(P.MAX_COLOR_ATTACHMENTS_WEBGL))throw new Error("gl-fbo: Context does not support "+z+" draw buffers")}else throw new Error("gl-fbo: Multiple draw buffer extension not supported")}var F=d.UNSIGNED_BYTE,B=d.getExtension("OES_texture_float");if(f.float&&z>0){if(!B)throw new Error("gl-fbo: Context does not support floating point textures");F=d.FLOAT}else f.preferFloat&&z>0&&B&&(F=d.FLOAT);var O=!0;"depth"in f&&(O=!!f.depth);var I=!1;return"stencil"in f&&(I=!!f.stencil),new S(d,u,y,F,z,O,I,P)}},2992:function(e,t,r){var o=r(3387).sprintf,a=r(5171),i=r(1848),n=r(1085);e.exports=s;function s(c,h,v){"use strict";var p=i(h)||"of unknown name (see npm glsl-shader-name)",T="unknown type";v!==void 0&&(T=v===a.FRAGMENT_SHADER?"fragment":"vertex");for(var l=o(`Error compiling %s shader %s:
+`,T,p),_=o("%s%s",l,c),w=c.split(`
+`),S={},E=0;E<w.length;E++){var m=w[E];if(!(m===""||m==="\0")){var b=parseInt(m.split(":")[2]);if(isNaN(b))throw new Error(o("Could not parse error: %s",m));S[b]=m}}for(var d=n(h).split(`
+`),E=0;E<d.length;E++)if(!(!S[E+3]&&!S[E+2]&&!S[E+1])){var u=d[E];if(l+=u+`
+`,S[E+1]){var y=S[E+1];y=y.substr(y.split(":",3).join(":").length+1).trim(),l+=o(`^^^ %s
+
+`,y)}}return{long:l.trim(),short:_.trim()}}},7319:function(e,t,r){var o=r(3236),a=r(9405),i=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, nextPosition;
+attribute float arcLength, lineWidth;
+attribute vec4 color;
+
+uniform vec2 screenShape;
+uniform float pixelRatio;
+uniform mat4 model, view, projection;
+
+varying vec4 fragColor;
+varying vec3 worldPosition;
+varying float pixelArcLength;
+
+vec4 project(vec3 p) {
+ return projection * (view * (model * vec4(p, 1.0)));
+}
+
+void main() {
+ vec4 startPoint = project(position);
+ vec4 endPoint = project(nextPosition);
+
+ vec2 A = startPoint.xy / startPoint.w;
+ vec2 B = endPoint.xy / endPoint.w;
+
+ float clipAngle = atan(
+ (B.y - A.y) * screenShape.y,
+ (B.x - A.x) * screenShape.x
+ );
+
+ vec2 offset = 0.5 * pixelRatio * lineWidth * vec2(
+ sin(clipAngle),
+ -cos(clipAngle)
+ ) / screenShape;
+
+ gl_Position = vec4(startPoint.xy + startPoint.w * offset, startPoint.zw);
+
+ worldPosition = position;
+ pixelArcLength = arcLength;
+ fragColor = color;
+}
+`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform sampler2D dashTexture;
+uniform float dashScale;
+uniform float opacity;
+
+varying vec3 worldPosition;
+varying float pixelArcLength;
+varying vec4 fragColor;
+
+void main() {
+ if (
+ outOfRange(clipBounds[0], clipBounds[1], worldPosition) ||
+ fragColor.a * opacity == 0.
+ ) discard;
+
+ float dashWeight = texture2D(dashTexture, vec2(dashScale * pixelArcLength, 0)).r;
+ if(dashWeight < 0.5) {
+ discard;
+ }
+ gl_FragColor = fragColor * opacity;
+}
+`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+#define FLOAT_MAX 1.70141184e38
+#define FLOAT_MIN 1.17549435e-38
+
+// https://github.com/mikolalysenko/glsl-read-float/blob/master/index.glsl
+vec4 packFloat(float v) {
+ float av = abs(v);
+
+ //Handle special cases
+ if(av < FLOAT_MIN) {
+ return vec4(0.0, 0.0, 0.0, 0.0);
+ } else if(v > FLOAT_MAX) {
+ return vec4(127.0, 128.0, 0.0, 0.0) / 255.0;
+ } else if(v < -FLOAT_MAX) {
+ return vec4(255.0, 128.0, 0.0, 0.0) / 255.0;
+ }
+
+ vec4 c = vec4(0,0,0,0);
+
+ //Compute exponent and mantissa
+ float e = floor(log2(av));
+ float m = av * pow(2.0, -e) - 1.0;
+
+ //Unpack mantissa
+ c[1] = floor(128.0 * m);
+ m -= c[1] / 128.0;
+ c[2] = floor(32768.0 * m);
+ m -= c[2] / 32768.0;
+ c[3] = floor(8388608.0 * m);
+
+ //Unpack exponent
+ float ebias = e + 127.0;
+ c[0] = floor(ebias / 2.0);
+ ebias -= c[0] * 2.0;
+ c[1] += floor(ebias) * 128.0;
+
+ //Unpack sign bit
+ c[0] += 128.0 * step(0.0, -v);
+
+ //Scale back to range
+ return c / 255.0;
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform float pickId;
+uniform vec3 clipBounds[2];
+
+varying vec3 worldPosition;
+varying float pixelArcLength;
+varying vec4 fragColor;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], worldPosition)) discard;
+
+ gl_FragColor = vec4(pickId/255.0, packFloat(pixelArcLength).xyz);
+}`]),c=[{name:"position",type:"vec3"},{name:"nextPosition",type:"vec3"},{name:"arcLength",type:"float"},{name:"lineWidth",type:"float"},{name:"color",type:"vec4"}];t.createShader=function(h){return a(h,i,n,null,c)},t.createPickShader=function(h){return a(h,i,s,null,c)}},5714:function(e,t,r){"use strict";e.exports=d;var o=r(2762),a=r(8116),i=r(7766),n=new Uint8Array(4),s=new Float32Array(n.buffer);function c(u,y,f,P){return n[0]=P,n[1]=f,n[2]=y,n[3]=u,s[0]}var h=r(2478),v=r(9618),p=r(7319),T=p.createShader,l=p.createPickShader,_=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function w(u,y){for(var f=0,P=0;P<3;++P){var L=u[P]-y[P];f+=L*L}return Math.sqrt(f)}function S(u){for(var y=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],f=0;f<3;++f)y[0][f]=Math.max(u[0][f],y[0][f]),y[1][f]=Math.min(u[1][f],y[1][f]);return y}function E(u,y,f,P){this.arcLength=u,this.position=y,this.index=f,this.dataCoordinate=P}function m(u,y,f,P,L,z){this.gl=u,this.shader=y,this.pickShader=f,this.buffer=P,this.vao=L,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=z,this.dashScale=1,this.opacity=1,this.hasAlpha=!1,this.dirty=!0,this.pixelRatio=1}var b=m.prototype;b.isTransparent=function(){return this.hasAlpha},b.isOpaque=function(){return!this.hasAlpha},b.pickSlots=1,b.setPickBase=function(u){this.pickId=u},b.drawTransparent=b.draw=function(u){if(this.vertexCount){var y=this.gl,f=this.shader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,clipBounds:S(this.clipBounds),dashTexture:this.texture.bind(),dashScale:this.dashScale/this.arcLength[this.arcLength.length-1],opacity:this.opacity,screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.drawPick=function(u){if(this.vertexCount){var y=this.gl,f=this.pickShader,P=this.vao;f.bind(),f.uniforms={model:u.model||_,view:u.view||_,projection:u.projection||_,pickId:this.pickId,clipBounds:S(this.clipBounds),screenShape:[y.drawingBufferWidth,y.drawingBufferHeight],pixelRatio:this.pixelRatio},P.bind(),P.draw(y.TRIANGLE_STRIP,this.vertexCount),P.unbind()}},b.update=function(u){var y,f;this.dirty=!0;var P=!!u.connectGaps;"dashScale"in u&&(this.dashScale=u.dashScale),this.hasAlpha=!1,"opacity"in u&&(this.opacity=+u.opacity,this.opacity<1&&(this.hasAlpha=!0));var L=[],z=[],F=[],B=0,O=0,I=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],N=u.position||u.positions;if(N){var U=u.color||u.colors||[0,0,0,1],W=u.lineWidth||1,Q=!1;e:for(y=1;y<N.length;++y){var ue=N[y-1],se=N[y];for(z.push(B),F.push(ue.slice()),f=0;f<3;++f){if(isNaN(ue[f])||isNaN(se[f])||!isFinite(ue[f])||!isFinite(se[f])){if(!P&&L.length>0){for(var he=0;he<24;++he)L.push(L[L.length-12]);O+=2,Q=!0}continue e}I[0][f]=Math.min(I[0][f],ue[f],se[f]),I[1][f]=Math.max(I[1][f],ue[f],se[f])}var G,$;Array.isArray(U[0])?(G=U.length>y-1?U[y-1]:U.length>0?U[U.length-1]:[0,0,0,1],$=U.length>y?U[y]:U.length>0?U[U.length-1]:[0,0,0,1]):G=$=U,G.length===3&&(G=[G[0],G[1],G[2],1]),$.length===3&&($=[$[0],$[1],$[2],1]),!this.hasAlpha&&G[3]<1&&(this.hasAlpha=!0);var J;Array.isArray(W)?J=W.length>y-1?W[y-1]:W.length>0?W[W.length-1]:[0,0,0,1]:J=W;var Z=B;if(B+=w(ue,se),Q){for(f=0;f<2;++f)L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3]);O+=2,Q=!1}L.push(ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,J,G[0],G[1],G[2],G[3],ue[0],ue[1],ue[2],se[0],se[1],se[2],Z,-J,G[0],G[1],G[2],G[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,-J,$[0],$[1],$[2],$[3],se[0],se[1],se[2],ue[0],ue[1],ue[2],B,J,$[0],$[1],$[2],$[3]),O+=4}}if(this.buffer.update(L),z.push(B),F.push(N[N.length-1].slice()),this.bounds=I,this.vertexCount=O,this.points=F,this.arcLength=z,"dashes"in u){var re=u.dashes,ne=re.slice();for(ne.unshift(0),y=1;y<ne.length;++y)ne[y]=ne[y-1]+ne[y];var j=v(new Array(256*4),[256,1,4]);for(y=0;y<256;++y){for(f=0;f<4;++f)j.set(y,0,f,0);h.le(ne,ne[ne.length-1]*y/255)&1?j.set(y,0,0,0):j.set(y,0,0,255)}this.texture.setPixels(j)}},b.dispose=function(){this.shader.dispose(),this.vao.dispose(),this.buffer.dispose()},b.pick=function(u){if(!u||u.id!==this.pickId)return null;var y=c(u.value[0],u.value[1],u.value[2],0),f=h.le(this.arcLength,y);if(f<0)return null;if(f===this.arcLength.length-1)return new E(this.arcLength[this.arcLength.length-1],this.points[this.points.length-1].slice(),f);for(var P=this.points[f],L=this.points[Math.min(f+1,this.points.length-1)],z=(y-this.arcLength[f])/(this.arcLength[f+1]-this.arcLength[f]),F=1-z,B=[0,0,0],O=0;O<3;++O)B[O]=F*P[O]+z*L[O];var I=Math.min(z<.5?f:f+1,this.points.length-1);return new E(y,B,I,this.points[I])};function d(u){var y=u.gl||u.scene&&u.scene.gl,f=T(y);f.attributes.position.location=0,f.attributes.nextPosition.location=1,f.attributes.arcLength.location=2,f.attributes.lineWidth.location=3,f.attributes.color.location=4;var P=l(y);P.attributes.position.location=0,P.attributes.nextPosition.location=1,P.attributes.arcLength.location=2,P.attributes.lineWidth.location=3,P.attributes.color.location=4;for(var L=o(y),z=a(y,[{buffer:L,size:3,offset:0,stride:48},{buffer:L,size:3,offset:12,stride:48},{buffer:L,size:1,offset:24,stride:48},{buffer:L,size:1,offset:28,stride:48},{buffer:L,size:4,offset:32,stride:48}]),F=v(new Array(256*4),[256,1,4]),B=0;B<1024;++B)F.data[B]=255;var O=i(y,F);O.wrap=y.REPEAT;var I=new m(y,f,P,L,z,O);return I.update(u),I}},1903:function(e){e.exports=t;function t(r){var o=new Float32Array(16);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o[4]=r[4],o[5]=r[5],o[6]=r[6],o[7]=r[7],o[8]=r[8],o[9]=r[9],o[10]=r[10],o[11]=r[11],o[12]=r[12],o[13]=r[13],o[14]=r[14],o[15]=r[15],o}},6864:function(e){e.exports=t;function t(){var r=new Float32Array(16);return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},9921:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3],s=r[4],c=r[5],h=r[6],v=r[7],p=r[8],T=r[9],l=r[10],_=r[11],w=r[12],S=r[13],E=r[14],m=r[15],b=o*c-a*s,d=o*h-i*s,u=o*v-n*s,y=a*h-i*c,f=a*v-n*c,P=i*v-n*h,L=p*S-T*w,z=p*E-l*w,F=p*m-_*w,B=T*E-l*S,O=T*m-_*S,I=l*m-_*E;return b*I-d*O+u*B+y*F-f*z+P*L}},7399:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=a+a,h=i+i,v=n+n,p=a*c,T=i*c,l=i*h,_=n*c,w=n*h,S=n*v,E=s*c,m=s*h,b=s*v;return r[0]=1-l-S,r[1]=T+b,r[2]=_-m,r[3]=0,r[4]=T-b,r[5]=1-p-S,r[6]=w+E,r[7]=0,r[8]=_+m,r[9]=w-E,r[10]=1-p-l,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},6743:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3],h=i+i,v=n+n,p=s+s,T=i*h,l=i*v,_=i*p,w=n*v,S=n*p,E=s*p,m=c*h,b=c*v,d=c*p;return r[0]=1-(w+E),r[1]=l+d,r[2]=_-b,r[3]=0,r[4]=l-d,r[5]=1-(T+E),r[6]=S+m,r[7]=0,r[8]=_+b,r[9]=S-m,r[10]=1-(T+w),r[11]=0,r[12]=a[0],r[13]=a[1],r[14]=a[2],r[15]=1,r}},7894:function(e){e.exports=t;function t(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}},7608:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=o[4],h=o[5],v=o[6],p=o[7],T=o[8],l=o[9],_=o[10],w=o[11],S=o[12],E=o[13],m=o[14],b=o[15],d=a*h-i*c,u=a*v-n*c,y=a*p-s*c,f=i*v-n*h,P=i*p-s*h,L=n*p-s*v,z=T*E-l*S,F=T*m-_*S,B=T*b-w*S,O=l*m-_*E,I=l*b-w*E,N=_*b-w*m,U=d*N-u*I+y*O+f*B-P*F+L*z;return U?(U=1/U,r[0]=(h*N-v*I+p*O)*U,r[1]=(n*I-i*N-s*O)*U,r[2]=(E*L-m*P+b*f)*U,r[3]=(_*P-l*L-w*f)*U,r[4]=(v*B-c*N-p*F)*U,r[5]=(a*N-n*B+s*F)*U,r[6]=(m*y-S*L-b*u)*U,r[7]=(T*L-_*y+w*u)*U,r[8]=(c*I-h*B+p*z)*U,r[9]=(i*B-a*I-s*z)*U,r[10]=(S*P-E*y+b*d)*U,r[11]=(l*y-T*P-w*d)*U,r[12]=(h*F-c*O-v*z)*U,r[13]=(a*O-i*F+n*z)*U,r[14]=(E*u-S*f-m*d)*U,r[15]=(T*f-l*u+_*d)*U,r):null}},6582:function(e,t,r){var o=r(7894);e.exports=a;function a(i,n,s,c){var h,v,p,T,l,_,w,S,E,m,b=n[0],d=n[1],u=n[2],y=c[0],f=c[1],P=c[2],L=s[0],z=s[1],F=s[2];return Math.abs(b-L)<1e-6&&Math.abs(d-z)<1e-6&&Math.abs(u-F)<1e-6?o(i):(w=b-L,S=d-z,E=u-F,m=1/Math.sqrt(w*w+S*S+E*E),w*=m,S*=m,E*=m,h=f*E-P*S,v=P*w-y*E,p=y*S-f*w,m=Math.sqrt(h*h+v*v+p*p),m?(m=1/m,h*=m,v*=m,p*=m):(h=0,v=0,p=0),T=S*p-E*v,l=E*h-w*p,_=w*v-S*h,m=Math.sqrt(T*T+l*l+_*_),m?(m=1/m,T*=m,l*=m,_*=m):(T=0,l=0,_=0),i[0]=h,i[1]=T,i[2]=w,i[3]=0,i[4]=v,i[5]=l,i[6]=S,i[7]=0,i[8]=p,i[9]=_,i[10]=E,i[11]=0,i[12]=-(h*b+v*d+p*u),i[13]=-(T*b+l*d+_*u),i[14]=-(w*b+S*d+E*u),i[15]=1,i)}},6760:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3],h=o[4],v=o[5],p=o[6],T=o[7],l=o[8],_=o[9],w=o[10],S=o[11],E=o[12],m=o[13],b=o[14],d=o[15],u=a[0],y=a[1],f=a[2],P=a[3];return r[0]=u*i+y*h+f*l+P*E,r[1]=u*n+y*v+f*_+P*m,r[2]=u*s+y*p+f*w+P*b,r[3]=u*c+y*T+f*S+P*d,u=a[4],y=a[5],f=a[6],P=a[7],r[4]=u*i+y*h+f*l+P*E,r[5]=u*n+y*v+f*_+P*m,r[6]=u*s+y*p+f*w+P*b,r[7]=u*c+y*T+f*S+P*d,u=a[8],y=a[9],f=a[10],P=a[11],r[8]=u*i+y*h+f*l+P*E,r[9]=u*n+y*v+f*_+P*m,r[10]=u*s+y*p+f*w+P*b,r[11]=u*c+y*T+f*S+P*d,u=a[12],y=a[13],f=a[14],P=a[15],r[12]=u*i+y*h+f*l+P*E,r[13]=u*n+y*v+f*_+P*m,r[14]=u*s+y*p+f*w+P*b,r[15]=u*c+y*T+f*S+P*d,r}},4040:function(e){e.exports=t;function t(r,o,a,i,n,s,c){var h=1/(o-a),v=1/(i-n),p=1/(s-c);return r[0]=-2*h,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=-2*v,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=2*p,r[11]=0,r[12]=(o+a)*h,r[13]=(n+i)*v,r[14]=(c+s)*p,r[15]=1,r}},4772:function(e){e.exports=t;function t(r,o,a,i,n){var s=1/Math.tan(o/2),c=1/(i-n);return r[0]=s/a,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=s,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=(n+i)*c,r[11]=-1,r[12]=0,r[13]=0,r[14]=2*n*i*c,r[15]=0,r}},6079:function(e){e.exports=t;function t(r,o,a,i){var n=i[0],s=i[1],c=i[2],h=Math.sqrt(n*n+s*s+c*c),v,p,T,l,_,w,S,E,m,b,d,u,y,f,P,L,z,F,B,O,I,N,U,W;return Math.abs(h)<1e-6?null:(h=1/h,n*=h,s*=h,c*=h,v=Math.sin(a),p=Math.cos(a),T=1-p,l=o[0],_=o[1],w=o[2],S=o[3],E=o[4],m=o[5],b=o[6],d=o[7],u=o[8],y=o[9],f=o[10],P=o[11],L=n*n*T+p,z=s*n*T+c*v,F=c*n*T-s*v,B=n*s*T-c*v,O=s*s*T+p,I=c*s*T+n*v,N=n*c*T+s*v,U=s*c*T-n*v,W=c*c*T+p,r[0]=l*L+E*z+u*F,r[1]=_*L+m*z+y*F,r[2]=w*L+b*z+f*F,r[3]=S*L+d*z+P*F,r[4]=l*B+E*O+u*I,r[5]=_*B+m*O+y*I,r[6]=w*B+b*O+f*I,r[7]=S*B+d*O+P*I,r[8]=l*N+E*U+u*W,r[9]=_*N+m*U+y*W,r[10]=w*N+b*U+f*W,r[11]=S*N+d*U+P*W,o!==r&&(r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r)}},5567:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[4],c=o[5],h=o[6],v=o[7],p=o[8],T=o[9],l=o[10],_=o[11];return o!==r&&(r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[4]=s*n+p*i,r[5]=c*n+T*i,r[6]=h*n+l*i,r[7]=v*n+_*i,r[8]=p*n-s*i,r[9]=T*n-c*i,r[10]=l*n-h*i,r[11]=_*n-v*i,r}},2408:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[0],c=o[1],h=o[2],v=o[3],p=o[8],T=o[9],l=o[10],_=o[11];return o!==r&&(r[4]=o[4],r[5]=o[5],r[6]=o[6],r[7]=o[7],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[0]=s*n-p*i,r[1]=c*n-T*i,r[2]=h*n-l*i,r[3]=v*n-_*i,r[8]=s*i+p*n,r[9]=c*i+T*n,r[10]=h*i+l*n,r[11]=v*i+_*n,r}},7089:function(e){e.exports=t;function t(r,o,a){var i=Math.sin(a),n=Math.cos(a),s=o[0],c=o[1],h=o[2],v=o[3],p=o[4],T=o[5],l=o[6],_=o[7];return o!==r&&(r[8]=o[8],r[9]=o[9],r[10]=o[10],r[11]=o[11],r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15]),r[0]=s*n+p*i,r[1]=c*n+T*i,r[2]=h*n+l*i,r[3]=v*n+_*i,r[4]=p*n-s*i,r[5]=T*n-c*i,r[6]=l*n-h*i,r[7]=_*n-v*i,r}},2504:function(e){e.exports=t;function t(r,o,a){var i=a[0],n=a[1],s=a[2];return r[0]=o[0]*i,r[1]=o[1]*i,r[2]=o[2]*i,r[3]=o[3]*i,r[4]=o[4]*n,r[5]=o[5]*n,r[6]=o[6]*n,r[7]=o[7]*n,r[8]=o[8]*s,r[9]=o[9]*s,r[10]=o[10]*s,r[11]=o[11]*s,r[12]=o[12],r[13]=o[13],r[14]=o[14],r[15]=o[15],r}},7656:function(e){e.exports=t;function t(r,o,a){var i=a[0],n=a[1],s=a[2],c,h,v,p,T,l,_,w,S,E,m,b;return o===r?(r[12]=o[0]*i+o[4]*n+o[8]*s+o[12],r[13]=o[1]*i+o[5]*n+o[9]*s+o[13],r[14]=o[2]*i+o[6]*n+o[10]*s+o[14],r[15]=o[3]*i+o[7]*n+o[11]*s+o[15]):(c=o[0],h=o[1],v=o[2],p=o[3],T=o[4],l=o[5],_=o[6],w=o[7],S=o[8],E=o[9],m=o[10],b=o[11],r[0]=c,r[1]=h,r[2]=v,r[3]=p,r[4]=T,r[5]=l,r[6]=_,r[7]=w,r[8]=S,r[9]=E,r[10]=m,r[11]=b,r[12]=c*i+T*n+S*s+o[12],r[13]=h*i+l*n+E*s+o[13],r[14]=v*i+_*n+m*s+o[14],r[15]=p*i+w*n+b*s+o[15]),r}},5665:function(e){e.exports=t;function t(r,o){if(r===o){var a=o[1],i=o[2],n=o[3],s=o[6],c=o[7],h=o[11];r[1]=o[4],r[2]=o[8],r[3]=o[12],r[4]=a,r[6]=o[9],r[7]=o[13],r[8]=i,r[9]=s,r[11]=o[14],r[12]=n,r[13]=c,r[14]=h}else r[0]=o[0],r[1]=o[4],r[2]=o[8],r[3]=o[12],r[4]=o[1],r[5]=o[5],r[6]=o[9],r[7]=o[13],r[8]=o[2],r[9]=o[6],r[10]=o[10],r[11]=o[14],r[12]=o[3],r[13]=o[7],r[14]=o[11],r[15]=o[15];return r}},7626:function(e,t,r){"use strict";var o=r(2642),a=r(9346);e.exports=h;function i(v,p){for(var T=[0,0,0,0],l=0;l<4;++l)for(var _=0;_<4;++_)T[_]+=v[4*l+_]*p[l];return T}function n(v,p,T,l,_){for(var w=i(l,i(T,i(p,[v[0],v[1],v[2],1]))),S=0;S<3;++S)w[S]/=w[3];return[.5*_[0]*(1+w[0]),.5*_[1]*(1-w[1])]}function s(v,p){if(v.length===2){for(var T=0,l=0,_=0;_<2;++_)T+=Math.pow(p[_]-v[0][_],2),l+=Math.pow(p[_]-v[1][_],2);return T=Math.sqrt(T),l=Math.sqrt(l),T+l<1e-6?[1,0]:[l/(T+l),T/(l+T)]}else if(v.length===3){var w=[0,0];return a(v[0],v[1],v[2],p,w),o(v,w)}return[]}function c(v,p){for(var T=[0,0,0],l=0;l<v.length;++l)for(var _=v[l],w=p[l],S=0;S<3;++S)T[S]+=w*_[S];return T}function h(v,p,T,l,_,w){if(v.length===1)return[0,v[0].slice()];for(var S=new Array(v.length),E=0;E<v.length;++E)S[E]=n(v[E],T,l,_,w);for(var m=0,b=1/0,E=0;E<S.length;++E){for(var d=0,u=0;u<2;++u)d+=Math.pow(S[E][u]-p[u],2);d<b&&(b=d,m=E)}for(var y=s(S,p),f=0,E=0;E<3;++E){if(y[E]<-.001||y[E]>1.0001)return null;f+=y[E]}return Math.abs(f-1)>.001?null:[m,c(v,y),y]}},840:function(e,t,r){var o=r(3236),a=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position, normal;
+attribute vec4 color;
+attribute vec2 uv;
+
+uniform mat4 model
+ , view
+ , projection
+ , inverseModel;
+uniform vec3 eyePosition
+ , lightPosition;
+
+varying vec3 f_normal
+ , f_lightDirection
+ , f_eyeDirection
+ , f_data;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+vec4 project(vec3 p) {
+ return projection * (view * (model * vec4(p, 1.0)));
+}
+
+void main() {
+ gl_Position = project(position);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * vec4(position , 1.0);
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ f_color = color;
+ f_data = position;
+ f_uv = uv;
+}
+`]),i=o([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+//#pragma glslify: beckmann = require(glsl-specular-beckmann) // used in gl-surface3d
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness
+ , fresnel
+ , kambient
+ , kdiffuse
+ , kspecular;
+uniform sampler2D texture;
+
+varying vec3 f_normal
+ , f_lightDirection
+ , f_eyeDirection
+ , f_data;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (f_color.a == 0.0 ||
+ outOfRange(clipBounds[0], clipBounds[1], f_data)
+ ) discard;
+
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ //float specular = max(0.0, beckmann(L, V, N, roughness)); // used in gl-surface3d
+
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = vec4(f_color.rgb, 1.0) * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * f_color.a;
+}
+`]),n=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 uv;
+
+uniform mat4 model, view, projection;
+
+varying vec4 f_color;
+varying vec3 f_data;
+varying vec2 f_uv;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ f_color = color;
+ f_data = position;
+ f_uv = uv;
+}`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform sampler2D texture;
+uniform float opacity;
+
+varying vec4 f_color;
+varying vec3 f_data;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_data)) discard;
+
+ gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
+}`]),c=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 uv;
+attribute float pointSize;
+
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0.0, 0.0 ,0.0 ,0.0);
+ } else {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ }
+ gl_PointSize = pointSize;
+ f_color = color;
+ f_uv = uv;
+}`]),h=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform sampler2D texture;
+uniform float opacity;
+
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ vec2 pointR = gl_PointCoord.xy - vec2(0.5, 0.5);
+ if(dot(pointR, pointR) > 0.25) {
+ discard;
+ }
+ gl_FragColor = f_color * texture2D(texture, f_uv) * opacity;
+}`]),v=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ f_id = id;
+ f_position = position;
+}`]),p=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]),T=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute float pointSize;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0.0, 0.0, 0.0, 0.0);
+ } else {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+ gl_PointSize = pointSize;
+ }
+ f_id = id;
+ f_position = position;
+}`]),l=o([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec3 position;
+
+uniform mat4 model, view, projection;
+
+void main() {
+ gl_Position = projection * (view * (model * vec4(position, 1.0)));
+}`]),_=o([`precision highp float;
+#define GLSLIFY 1
+
+uniform vec3 contourColor;
+
+void main() {
+ gl_FragColor = vec4(contourColor, 1.0);
+}
+`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec3"},{name:"normal",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.wireShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"}]},t.pointShader={vertex:c,fragment:h,attributes:[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"pointSize",type:"float"}]},t.pickShader={vertex:v,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"id",type:"vec4"}]},t.pointPickShader={vertex:T,fragment:p,attributes:[{name:"position",type:"vec3"},{name:"pointSize",type:"float"},{name:"id",type:"vec4"}]},t.contourShader={vertex:l,fragment:_,attributes:[{name:"position",type:"vec3"}]}},7201:function(e,t,r){"use strict";var o=1e-6,a=1e-6,i=r(9405),n=r(2762),s=r(8116),c=r(7766),h=r(8406),v=r(6760),p=r(7608),T=r(9618),l=r(6729),_=r(7765),w=r(1888),S=r(840),E=r(7626),m=S.meshShader,b=S.wireShader,d=S.pointShader,u=S.pickShader,y=S.pointPickShader,f=S.contourShader,P=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function L(he,G,$,J,Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe){this.gl=he,this.pixelRatio=1,this.cells=[],this.positions=[],this.intensity=[],this.texture=G,this.dirty=!0,this.triShader=$,this.lineShader=J,this.pointShader=Z,this.pickShader=re,this.pointPickShader=ne,this.contourShader=j,this.trianglePositions=ee,this.triangleColors=fe,this.triangleNormals=Ae,this.triangleUVs=be,this.triangleIds=ie,this.triangleVAO=Be,this.triangleCount=0,this.lineWidth=1,this.edgePositions=Ie,this.edgeColors=at,this.edgeUVs=it,this.edgeIds=Ze,this.edgeVAO=et,this.edgeCount=0,this.pointPositions=lt,this.pointColors=ge,this.pointUVs=ce,this.pointSizes=ze,this.pointIds=Me,this.pointVAO=tt,this.pointCount=0,this.contourLineWidth=1,this.contourPositions=nt,this.contourVAO=Qe,this.contourCount=0,this.contourColor=[0,0,0],this.contourEnable=!0,this.pickVertex=!0,this.pickId=1,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.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=P,this._view=P,this._projection=P,this._resolution=[1,1]}var z=L.prototype;z.isOpaque=function(){return!this.hasAlpha},z.isTransparent=function(){return this.hasAlpha},z.pickSlots=1,z.setPickBase=function(he){this.pickId=he};function F(he,G){if(!G||!G.length)return 1;for(var $=0;$<G.length;++$){if(G.length<2)return 1;if(G[$][0]===he)return G[$][1];if(G[$][0]>he&&$>0){var J=(G[$][0]-he)/(G[$][0]-G[$-1][0]);return G[$][1]*(1-J)+J*G[$-1][1]}}return 1}function B(he,G){for(var $=l({colormap:he,nshades:256,format:"rgba"}),J=new Uint8Array(256*4),Z=0;Z<256;++Z){for(var re=$[Z],ne=0;ne<3;++ne)J[4*Z+ne]=re[ne];G?J[4*Z+3]=255*F(Z/255,G):J[4*Z+3]=255*re[3]}return T(J,[256,256,4],[4,0,1])}function O(he){for(var G=he.length,$=new Array(G),J=0;J<G;++J)$[J]=he[J][2];return $}z.highlight=function(he){if(!he||!this.contourEnable){this.contourCount=0;return}for(var G=_(this.cells,this.intensity,he.intensity),$=G.cells,J=G.vertexIds,Z=G.vertexWeights,re=$.length,ne=w.mallocFloat32(2*3*re),j=0,ee=0;ee<re;++ee)for(var ie=$[ee],fe=0;fe<2;++fe){var be=ie[0];ie.length===2&&(be=ie[fe]);for(var Ae=J[be][0],Be=J[be][1],Ie=Z[be],Ze=1-Ie,at=this.positions[Ae],it=this.positions[Be],et=0;et<3;++et)ne[j++]=Ie*at[et]+Ze*it[et]}this.contourCount=j/3|0,this.contourPositions.update(ne.subarray(0,j)),w.free(ne)},z.update=function(he){he=he||{};var G=this.gl;this.dirty=!0,"contourEnable"in he&&(this.contourEnable=he.contourEnable),"contourColor"in he&&(this.contourColor=he.contourColor),"lineWidth"in he&&(this.lineWidth=he.lineWidth),"lightPosition"in he&&(this.lightPosition=he.lightPosition),this.hasAlpha=!1,"opacity"in he&&(this.opacity=he.opacity,this.opacity<1&&(this.hasAlpha=!0)),"opacityscale"in he&&(this.opacityscale=he.opacityscale,this.hasAlpha=!0),"ambient"in he&&(this.ambientLight=he.ambient),"diffuse"in he&&(this.diffuseLight=he.diffuse),"specular"in he&&(this.specularLight=he.specular),"roughness"in he&&(this.roughness=he.roughness),"fresnel"in he&&(this.fresnel=he.fresnel),he.texture?(this.texture.dispose(),this.texture=c(G,he.texture)):he.colormap&&(this.texture.shape=[256,256],this.texture.minFilter=G.LINEAR_MIPMAP_LINEAR,this.texture.magFilter=G.LINEAR,this.texture.setPixels(B(he.colormap,this.opacityscale)),this.texture.generateMipmap());var $=he.cells,J=he.positions;if(!(!J||!$)){var Z=[],re=[],ne=[],j=[],ee=[],ie=[],fe=[],be=[],Ae=[],Be=[],Ie=[],Ze=[],at=[],it=[];this.cells=$,this.positions=J;var et=he.vertexNormals,lt=he.cellNormals,Me=he.vertexNormalsEpsilon===void 0?o:he.vertexNormalsEpsilon,ge=he.faceNormalsEpsilon===void 0?a:he.faceNormalsEpsilon;he.useFacetNormals&&!lt&&(lt=h.faceNormals($,J,ge)),!lt&&!et&&(et=h.vertexNormals($,J,Me));var ce=he.vertexColors,ze=he.cellColors,tt=he.meshColor||[1,1,1,1],nt=he.vertexUVs,Qe=he.vertexIntensity,Ct=he.cellUVs,St=he.cellIntensity,Ot=1/0,jt=-1/0;if(!nt&&!Ct)if(Qe)if(he.vertexIntensityBounds)Ot=+he.vertexIntensityBounds[0],jt=+he.vertexIntensityBounds[1];else for(var ur=0;ur<Qe.length;++ur){var ar=Qe[ur];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}else if(St)if(he.cellIntensityBounds)Ot=+he.cellIntensityBounds[0],jt=+he.cellIntensityBounds[1];else for(var ur=0;ur<St.length;++ur){var ar=St[ur];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}else for(var ur=0;ur<J.length;++ur){var ar=J[ur][2];Ot=Math.min(Ot,ar),jt=Math.max(jt,ar)}Qe?this.intensity=Qe:St?this.intensity=St:this.intensity=O(J),this.pickVertex=!(St||ze);var Cr=he.pointSizes,vr=he.pointSize||1;this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(var ur=0;ur<J.length;++ur)for(var _r=J[ur],yt=0;yt<3;++yt)isNaN(_r[yt])||!isFinite(_r[yt])||(this.bounds[0][yt]=Math.min(this.bounds[0][yt],_r[yt]),this.bounds[1][yt]=Math.max(this.bounds[1][yt],_r[yt]));var Fe=0,Ke=0,Ne=0;e:for(var ur=0;ur<$.length;++ur){var Ee=$[ur];switch(Ee.length){case 1:for(var Ve=Ee[0],_r=J[Ve],yt=0;yt<3;++yt)if(isNaN(_r[yt])||!isFinite(_r[yt]))continue e;Be.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?Ie.push(ke[0],ke[1],ke[2],this.opacity):(Ie.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0));var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],Ze.push(Te[0],Te[1]),Cr?at.push(Cr[Ve]):at.push(vr),it.push(ur),Ne+=1;break;case 2:for(var yt=0;yt<2;++yt)for(var Ve=Ee[yt],_r=J[Ve],Le=0;Le<3;++Le)if(isNaN(_r[Le])||!isFinite(_r[Le]))continue e;for(var yt=0;yt<2;++yt){var Ve=Ee[yt],_r=J[Ve];ie.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?fe.push(ke[0],ke[1],ke[2],this.opacity):(fe.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0));var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],be.push(Te[0],Te[1]),Ae.push(ur)}Ke+=1;break;case 3:for(var yt=0;yt<3;++yt)for(var Ve=Ee[yt],_r=J[Ve],Le=0;Le<3;++Le)if(isNaN(_r[Le])||!isFinite(_r[Le]))continue e;for(var yt=0;yt<3;++yt){var Ve=Ee[2-yt],_r=J[Ve];Z.push(_r[0],_r[1],_r[2]);var ke;ce?ke=ce[Ve]:ze?ke=ze[ur]:ke=tt,ke?this.opacityscale&&Qe?re.push(ke[0],ke[1],ke[2],this.opacity*F((Qe[Ve]-Ot)/(jt-Ot),this.opacityscale)):ke.length===3?re.push(ke[0],ke[1],ke[2],this.opacity):(re.push(ke[0],ke[1],ke[2],ke[3]*this.opacity),ke[3]<1&&(this.hasAlpha=!0)):re.push(.5,.5,.5,1);var Te;nt?Te=nt[Ve]:Qe?Te=[(Qe[Ve]-Ot)/(jt-Ot),0]:Ct?Te=Ct[ur]:St?Te=[(St[ur]-Ot)/(jt-Ot),0]:Te=[(_r[2]-Ot)/(jt-Ot),0],j.push(Te[0],Te[1]);var rt;et?rt=et[Ve]:rt=lt[ur],ne.push(rt[0],rt[1],rt[2]),ee.push(ur)}Fe+=1;break;default:break}}this.pointCount=Ne,this.edgeCount=Ke,this.triangleCount=Fe,this.pointPositions.update(Be),this.pointColors.update(Ie),this.pointUVs.update(Ze),this.pointSizes.update(at),this.pointIds.update(new Uint32Array(it)),this.edgePositions.update(ie),this.edgeColors.update(fe),this.edgeUVs.update(be),this.edgeIds.update(new Uint32Array(Ae)),this.trianglePositions.update(Z),this.triangleColors.update(re),this.triangleUVs.update(j),this.triangleNormals.update(ne),this.triangleIds.update(new Uint32Array(ee))}},z.drawTransparent=z.draw=function(he){he=he||{};for(var G=this.gl,$=he.model||P,J=he.view||P,Z=he.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ne=0;ne<3;++ne)re[0][ne]=Math.max(re[0][ne],this.clipBounds[0][ne]),re[1][ne]=Math.min(re[1][ne],this.clipBounds[1][ne]);var j={model:$,view:J,projection:Z,inverseModel:P.slice(),clipBounds:re,kambient:this.ambientLight,kdiffuse:this.diffuseLight,kspecular:this.specularLight,roughness:this.roughness,fresnel:this.fresnel,eyePosition:[0,0,0],lightPosition:[0,0,0],contourColor:this.contourColor,texture:0};j.inverseModel=p(j.inverseModel,j.model),G.disable(G.CULL_FACE),this.texture.bind(0);var ee=new Array(16);v(ee,j.view,j.model),v(ee,j.projection,ee),p(ee,ee);for(var ne=0;ne<3;++ne)j.eyePosition[ne]=ee[12+ne]/ee[15];for(var ie=ee[15],ne=0;ne<3;++ne)ie+=this.lightPosition[ne]*ee[4*ne+3];for(var ne=0;ne<3;++ne){for(var fe=ee[12+ne],be=0;be<3;++be)fe+=ee[4*be+ne]*this.lightPosition[be];j.lightPosition[ne]=fe/ie}if(this.triangleCount>0){var Ae=this.triShader;Ae.bind(),Ae.uniforms=j,this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()}if(this.edgeCount>0&&this.lineWidth>0){var Ae=this.lineShader;Ae.bind(),Ae.uniforms=j,this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()}if(this.pointCount>0){var Ae=this.pointShader;Ae.bind(),Ae.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}if(this.contourEnable&&this.contourCount>0&&this.contourLineWidth>0){var Ae=this.contourShader;Ae.bind(),Ae.uniforms=j,this.contourVAO.bind(),G.drawArrays(G.LINES,0,this.contourCount),this.contourVAO.unbind()}},z.drawPick=function(he){he=he||{};for(var G=this.gl,$=he.model||P,J=he.view||P,Z=he.projection||P,re=[[-1e6,-1e6,-1e6],[1e6,1e6,1e6]],ne=0;ne<3;++ne)re[0][ne]=Math.max(re[0][ne],this.clipBounds[0][ne]),re[1][ne]=Math.min(re[1][ne],this.clipBounds[1][ne]);this._model=[].slice.call($),this._view=[].slice.call(J),this._projection=[].slice.call(Z),this._resolution=[G.drawingBufferWidth,G.drawingBufferHeight];var j={model:$,view:J,projection:Z,clipBounds:re,pickId:this.pickId/255},ee=this.pickShader;if(ee.bind(),ee.uniforms=j,this.triangleCount>0&&(this.triangleVAO.bind(),G.drawArrays(G.TRIANGLES,0,this.triangleCount*3),this.triangleVAO.unbind()),this.edgeCount>0&&(this.edgeVAO.bind(),G.lineWidth(this.lineWidth*this.pixelRatio),G.drawArrays(G.LINES,0,this.edgeCount*2),this.edgeVAO.unbind()),this.pointCount>0){var ee=this.pointPickShader;ee.bind(),ee.uniforms=j,this.pointVAO.bind(),G.drawArrays(G.POINTS,0,this.pointCount),this.pointVAO.unbind()}},z.pick=function(he){if(!he||he.id!==this.pickId)return null;for(var G=he.value[0]+256*he.value[1]+65536*he.value[2],$=this.cells[G],J=this.positions,Z=new Array($.length),re=0;re<$.length;++re)Z[re]=J[$[re]];var ne=he.coord[0],j=he.coord[1];if(!this.pickVertex){var ee=this.positions[$[0]],ie=this.positions[$[1]],fe=this.positions[$[2]],be=[(ee[0]+ie[0]+fe[0])/3,(ee[1]+ie[1]+fe[1])/3,(ee[2]+ie[2]+fe[2])/3];return{_cellCenter:!0,position:[ne,j],index:G,cell:$,cellId:G,intensity:this.intensity[G],dataCoordinate:be}}var Ae=E(Z,[ne*this.pixelRatio,this._resolution[1]-j*this.pixelRatio],this._model,this._view,this._projection,this._resolution);if(!Ae)return null;for(var Be=Ae[2],Ie=0,re=0;re<$.length;++re)Ie+=Be[re]*this.intensity[$[re]];return{position:Ae[1],index:$[Ae[0]],cell:$,cellId:G,intensity:Ie,dataCoordinate:this.positions[$[Ae[0]]]}},z.dispose=function(){this.texture.dispose(),this.triShader.dispose(),this.lineShader.dispose(),this.pointShader.dispose(),this.pickShader.dispose(),this.pointPickShader.dispose(),this.triangleVAO.dispose(),this.trianglePositions.dispose(),this.triangleColors.dispose(),this.triangleUVs.dispose(),this.triangleNormals.dispose(),this.triangleIds.dispose(),this.edgeVAO.dispose(),this.edgePositions.dispose(),this.edgeColors.dispose(),this.edgeUVs.dispose(),this.edgeIds.dispose(),this.pointVAO.dispose(),this.pointPositions.dispose(),this.pointColors.dispose(),this.pointUVs.dispose(),this.pointSizes.dispose(),this.pointIds.dispose(),this.contourVAO.dispose(),this.contourPositions.dispose(),this.contourShader.dispose()};function I(he){var G=i(he,m.vertex,m.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.normal.location=4,G}function N(he){var G=i(he,b.vertex,b.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G}function U(he){var G=i(he,d.vertex,d.fragment);return G.attributes.position.location=0,G.attributes.color.location=2,G.attributes.uv.location=3,G.attributes.pointSize.location=4,G}function W(he){var G=i(he,u.vertex,u.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G}function Q(he){var G=i(he,y.vertex,y.fragment);return G.attributes.position.location=0,G.attributes.id.location=1,G.attributes.pointSize.location=4,G}function ue(he){var G=i(he,f.vertex,f.fragment);return G.attributes.position.location=0,G}function se(he,G){arguments.length===1&&(G=he,he=G.gl);var $=he.getExtension("OES_standard_derivatives")||he.getExtension("MOZ_OES_standard_derivatives")||he.getExtension("WEBKIT_OES_standard_derivatives");if(!$)throw new Error("derivatives not supported");var J=I(he),Z=N(he),re=U(he),ne=W(he),j=Q(he),ee=ue(he),ie=c(he,T(new Uint8Array([255,255,255,255]),[1,1,4]));ie.generateMipmap(),ie.minFilter=he.LINEAR_MIPMAP_LINEAR,ie.magFilter=he.LINEAR;var fe=n(he),be=n(he),Ae=n(he),Be=n(he),Ie=n(he),Ze=s(he,[{buffer:fe,type:he.FLOAT,size:3},{buffer:Ie,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:be,type:he.FLOAT,size:4},{buffer:Ae,type:he.FLOAT,size:2},{buffer:Be,type:he.FLOAT,size:3}]),at=n(he),it=n(he),et=n(he),lt=n(he),Me=s(he,[{buffer:at,type:he.FLOAT,size:3},{buffer:lt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:it,type:he.FLOAT,size:4},{buffer:et,type:he.FLOAT,size:2}]),ge=n(he),ce=n(he),ze=n(he),tt=n(he),nt=n(he),Qe=s(he,[{buffer:ge,type:he.FLOAT,size:3},{buffer:nt,type:he.UNSIGNED_BYTE,size:4,normalized:!0},{buffer:ce,type:he.FLOAT,size:4},{buffer:ze,type:he.FLOAT,size:2},{buffer:tt,type:he.FLOAT,size:1}]),Ct=n(he),St=s(he,[{buffer:Ct,type:he.FLOAT,size:3}]),Ot=new L(he,ie,J,Z,re,ne,j,ee,fe,Ie,be,Ae,Be,Ze,at,lt,it,et,Me,ge,nt,ce,ze,tt,Qe,Ct,St);return Ot.update(G),Ot}e.exports=se},4437:function(e,t,r){"use strict";e.exports=h;var o=r(3025),a=r(6296),i=r(351),n=r(8512),s=r(24),c=r(7520);function h(v,p){v=v||document.body,p=p||{};var T=[.01,1/0];"distanceLimits"in p&&(T[0]=p.distanceLimits[0],T[1]=p.distanceLimits[1]),"zoomMin"in p&&(T[0]=p.zoomMin),"zoomMax"in p&&(T[1]=p.zoomMax);var l=a({center:p.center||[0,0,0],up:p.up||[0,1,0],eye:p.eye||[0,0,10],mode:p.mode||"orbit",distanceLimits:T}),_=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],w=0,S=v.clientWidth,E=v.clientHeight,m={keyBindingMode:"rotate",enableWheel:!0,view:l,element:v,delay:p.delay||16,rotateSpeed:p.rotateSpeed||1,zoomSpeed:p.zoomSpeed||1,translateSpeed:p.translateSpeed||1,flipX:!!p.flipX,flipY:!!p.flipY,modes:l.modes,_ortho:p._ortho||p.projection&&p.projection.type==="orthographic"||!1,tick:function(){var b=o(),d=this.delay,u=b-2*d;l.idle(b-d),l.recalcMatrix(u),l.flush(b-(100+d*2));for(var y=!0,f=l.computedMatrix,P=0;P<16;++P)y=y&&_[P]===f[P],_[P]=f[P];var L=v.clientWidth===S&&v.clientHeight===E;return S=v.clientWidth,E=v.clientHeight,y?!L:(w=Math.exp(l.computedRadius[0]),!0)},lookAt:function(b,d,u){l.lookAt(l.lastT(),b,d,u)},rotate:function(b,d,u){l.rotate(l.lastT(),b,d,u)},pan:function(b,d,u){l.pan(l.lastT(),b,d,u)},translate:function(b,d,u){l.translate(l.lastT(),b,d,u)}};return Object.defineProperties(m,{matrix:{get:function(){return l.computedMatrix},set:function(b){return l.setMatrix(l.lastT(),b),l.computedMatrix},enumerable:!0},mode:{get:function(){return l.getMode()},set:function(b){var d=l.computedUp.slice(),u=l.computedEye.slice(),y=l.computedCenter.slice();if(l.setMode(b),b==="turntable"){var f=o();l._active.lookAt(f,u,y,d),l._active.lookAt(f+500,u,y,[0,0,1]),l._active.flush(f)}return l.getMode()},enumerable:!0},center:{get:function(){return l.computedCenter},set:function(b){return l.lookAt(l.lastT(),null,b),l.computedCenter},enumerable:!0},eye:{get:function(){return l.computedEye},set:function(b){return l.lookAt(l.lastT(),b),l.computedEye},enumerable:!0},up:{get:function(){return l.computedUp},set:function(b){return l.lookAt(l.lastT(),null,null,b),l.computedUp},enumerable:!0},distance:{get:function(){return w},set:function(b){return l.setDistance(l.lastT(),b),b},enumerable:!0},distanceLimits:{get:function(){return l.getDistanceLimits(T)},set:function(b){return l.setDistanceLimits(b),b},enumerable:!0}}),v.addEventListener("contextmenu",function(b){return b.preventDefault(),!1}),m._lastX=-1,m._lastY=-1,m._lastMods={shift:!1,control:!1,alt:!1,meta:!1},m.enableMouseListeners=function(){m.mouseListener=i(v,b),v.addEventListener("touchstart",function(d){var u=s(d.changedTouches[0],v);b(0,u[0],u[1],m._lastMods),b(1,u[0],u[1],m._lastMods)},c?{passive:!0}:!1),v.addEventListener("touchmove",function(d){var u=s(d.changedTouches[0],v);b(1,u[0],u[1],m._lastMods),d.preventDefault()},c?{passive:!1}:!1),v.addEventListener("touchend",function(d){b(0,m._lastX,m._lastY,m._lastMods)},c?{passive:!0}:!1);function b(d,u,y,f){var P=m.keyBindingMode;if(P!==!1){var L=P==="rotate",z=P==="pan",F=P==="zoom",B=!!f.control,O=!!f.alt,I=!!f.shift,N=!!(d&1),U=!!(d&2),W=!!(d&4),Q=1/v.clientHeight,ue=Q*(u-m._lastX),se=Q*(y-m._lastY),he=m.flipX?1:-1,G=m.flipY?1:-1,$=Math.PI*m.rotateSpeed,J=o();if(m._lastX!==-1&&m._lastY!==-1&&((L&&N&&!B&&!O&&!I||N&&!B&&!O&&I)&&l.rotate(J,he*$*ue,-G*$*se,0),(z&&N&&!B&&!O&&!I||U||N&&B&&!O&&!I)&&l.pan(J,-m.translateSpeed*ue*w,m.translateSpeed*se*w,0),F&&N&&!B&&!O&&!I||W||N&&!B&&O&&!I)){var Z=-m.zoomSpeed*se/window.innerHeight*(J-l.lastT())*100;l.pan(J,0,0,w*(Math.exp(Z)-1))}return m._lastX=u,m._lastY=y,m._lastMods=f,!0}}m.wheelListener=n(v,function(d,u){if(m.keyBindingMode!==!1&&m.enableWheel){var y=m.flipX?1:-1,f=m.flipY?1:-1,P=o();if(Math.abs(d)>Math.abs(u))l.rotate(P,0,0,-d*y*Math.PI*m.rotateSpeed/window.innerWidth);else if(!m._ortho){var L=-m.zoomSpeed*f*u/window.innerHeight*(P-l.lastT())/20;l.pan(P,0,0,w*(Math.exp(L)-1))}}},!0)},m.enableMouseListeners(),m}},799:function(e,t,r){var o=r(3236),a=r(9405),i=o([`precision mediump float;
+#define GLSLIFY 1
+attribute vec2 position;
+varying vec2 uv;
+void main() {
+ uv = position;
+ gl_Position = vec4(position, 0, 1);
+}`]),n=o([`precision mediump float;
+#define GLSLIFY 1
+
+uniform sampler2D accumBuffer;
+varying vec2 uv;
+
+void main() {
+ vec4 accum = texture2D(accumBuffer, 0.5 * (uv + 1.0));
+ gl_FragColor = min(vec4(1,1,1,1), accum);
+}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec2"}])}},4100:function(e,t,r){"use strict";var o=r(4437),a=r(3837),i=r(5445),n=r(4449),s=r(3589),c=r(2260),h=r(7169),v=r(351),p=r(4772),T=r(4040),l=r(799),_=r(9216)({tablet:!0,featureDetect:!0});e.exports={createScene:b,createCamera:o};function w(){this.mouse=[-1,-1],this.screen=null,this.distance=1/0,this.index=null,this.dataCoordinate=null,this.dataPosition=null,this.object=null,this.data=null}function S(u,y){var f=null;try{f=u.getContext("webgl",y),f||(f=u.getContext("experimental-webgl",y))}catch{return null}return f}function E(u){var y=Math.round(Math.log(Math.abs(u))/Math.log(10));if(y<0){var f=Math.round(Math.pow(10,-y));return Math.ceil(u*f)/f}else if(y>0){var f=Math.round(Math.pow(10,y));return Math.ceil(u/f)*f}return Math.ceil(u)}function m(u){return typeof u=="boolean"?u:!0}function b(u){u=u||{},u.camera=u.camera||{};var y=u.canvas;if(!y)if(y=document.createElement("canvas"),u.container){var f=u.container;f.appendChild(y)}else document.body.appendChild(y);var P=u.gl;if(P||(u.glOptions&&(_=!!u.glOptions.preserveDrawingBuffer),P=S(y,u.glOptions||{premultipliedAlpha:!0,antialias:!0,preserveDrawingBuffer:_})),!P)throw new Error("webgl not supported");var L=u.bounds||[[-10,-10,-10],[10,10,10]],z=new w,F=c(P,P.drawingBufferWidth,P.drawingBufferHeight,{preferFloat:!_}),B=l(P),O=u.cameraObject&&u.cameraObject._ortho===!0||u.camera.projection&&u.camera.projection.type==="orthographic"||!1,I={eye:u.camera.eye||[2,0,0],center:u.camera.center||[0,0,0],up:u.camera.up||[0,1,0],zoomMin:u.camera.zoomMax||.1,zoomMax:u.camera.zoomMin||100,mode:u.camera.mode||"turntable",_ortho:O},N=u.axes||{},U=a(P,N);U.enable=!N.disable;var W=u.spikes||{},Q=n(P,W),ue=[],se=[],he=[],G=[],$=!0,ne=!0,J=new Array(16),Z=new Array(16),re={view:null,projection:J,model:Z,_ortho:!1},ne=!0,j=[P.drawingBufferWidth,P.drawingBufferHeight],ee=u.cameraObject||o(y,I),ie={gl:P,contextLost:!1,pixelRatio:u.pixelRatio||1,canvas:y,selection:z,camera:ee,axes:U,axesPixels:null,spikes:Q,bounds:L,objects:ue,shape:j,aspect:u.aspectRatio||[1,1,1],pickRadius:u.pickRadius||10,zNear:u.zNear||.01,zFar:u.zFar||1e3,fovy:u.fovy||Math.PI/4,clearColor:u.clearColor||[0,0,0,0],autoResize:m(u.autoResize),autoBounds:m(u.autoBounds),autoScale:!!u.autoScale,autoCenter:m(u.autoCenter),clipToBounds:m(u.clipToBounds),snapToData:!!u.snapToData,onselect:u.onselect||null,onrender:u.onrender||null,onclick:u.onclick||null,cameraParams:re,oncontextloss:null,mouseListener:null,_stopped:!1,getAspectratio:function(){return{x:this.aspect[0],y:this.aspect[1],z:this.aspect[2]}},setAspectratio:function(lt){this.aspect[0]=lt.x,this.aspect[1]=lt.y,this.aspect[2]=lt.z,ne=!0},setBounds:function(lt,Me){this.bounds[0][lt]=Me.min,this.bounds[1][lt]=Me.max},setClearColor:function(lt){this.clearColor=lt},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)}},fe=[P.drawingBufferWidth/ie.pixelRatio|0,P.drawingBufferHeight/ie.pixelRatio|0];function be(){if(!ie._stopped&&ie.autoResize){var lt=y.parentNode,Me=1,ge=1;lt&&lt!==document.body?(Me=lt.clientWidth,ge=lt.clientHeight):(Me=window.innerWidth,ge=window.innerHeight);var ce=Math.ceil(Me*ie.pixelRatio)|0,ze=Math.ceil(ge*ie.pixelRatio)|0;if(ce!==y.width||ze!==y.height){y.width=ce,y.height=ze;var tt=y.style;tt.position=tt.position||"absolute",tt.left="0px",tt.top="0px",tt.width=Me+"px",tt.height=ge+"px",$=!0}}}ie.autoResize&&be(),window.addEventListener("resize",be);function Ae(){for(var lt=ue.length,Me=G.length,ge=0;ge<Me;++ge)he[ge]=0;e:for(var ge=0;ge<lt;++ge){var ce=ue[ge],ze=ce.pickSlots;if(!ze){se[ge]=-1;continue}for(var tt=0;tt<Me;++tt)if(he[tt]+ze<255){se[ge]=tt,ce.setPickBase(he[tt]+1),he[tt]+=ze;continue e}var nt=s(P,j);se[ge]=Me,G.push(nt),he.push(ze),ce.setPickBase(1),Me+=1}for(;Me>0&&he[Me-1]===0;)he.pop(),G.pop().dispose()}ie.update=function(lt){ie._stopped||(lt=lt||{},$=!0,ne=!0)},ie.add=function(lt){ie._stopped||(lt.axes=U,ue.push(lt),se.push(-1),$=!0,ne=!0,Ae())},ie.remove=function(lt){if(!ie._stopped){var Me=ue.indexOf(lt);Me<0||(ue.splice(Me,1),se.pop(),$=!0,ne=!0,Ae())}},ie.dispose=function(){if(!ie._stopped&&(ie._stopped=!0,window.removeEventListener("resize",be),y.removeEventListener("webglcontextlost",Be),ie.mouseListener.enabled=!1,!ie.contextLost)){U.dispose(),Q.dispose();for(var lt=0;lt<ue.length;++lt)ue[lt].dispose();F.dispose();for(var lt=0;lt<G.length;++lt)G[lt].dispose();B.dispose(),P=null,U=null,Q=null,ue=[]}},ie._mouseRotating=!1,ie._prevButtons=0,ie.enableMouseListeners=function(){ie.mouseListener=v(y,function(lt,Me,ge){if(!ie._stopped){var ce=G.length,ze=ue.length,tt=z.object;z.distance=1/0,z.mouse[0]=Me,z.mouse[1]=ge,z.object=null,z.screen=null,z.dataCoordinate=z.dataPosition=null;var nt=!1;if(lt&&ie._prevButtons)ie._mouseRotating=!0;else{ie._mouseRotating&&(ne=!0),ie._mouseRotating=!1;for(var Qe=0;Qe<ce;++Qe){var Ct=G[Qe].query(Me,fe[1]-ge-1,ie.pickRadius);if(Ct){if(Ct.distance>z.distance)continue;for(var St=0;St<ze;++St){var Ot=ue[St];if(se[St]===Qe){var jt=Ot.pick(Ct);jt&&(z.buttons=lt,z.screen=Ct.coord,z.distance=Ct.distance,z.object=Ot,z.index=jt.distance,z.dataPosition=jt.position,z.dataCoordinate=jt.dataCoordinate,z.data=jt,nt=!0)}}}}}tt&&tt!==z.object&&(tt.highlight&&tt.highlight(null),$=!0),z.object&&(z.object.highlight&&z.object.highlight(z.data),$=!0),nt=nt||z.object!==tt,nt&&ie.onselect&&ie.onselect(z),lt&1&&!(ie._prevButtons&1)&&ie.onclick&&ie.onclick(z),ie._prevButtons=lt}})};function Be(){if(ie.contextLost)return!0;P.isContextLost()&&(ie.contextLost=!0,ie.mouseListener.enabled=!1,ie.selection.object=null,ie.oncontextloss&&ie.oncontextloss())}y.addEventListener("webglcontextlost",Be);function Ie(){if(!Be()){P.colorMask(!0,!0,!0,!0),P.depthMask(!0),P.disable(P.BLEND),P.enable(P.DEPTH_TEST),P.depthFunc(P.LEQUAL);for(var lt=ue.length,Me=G.length,ge=0;ge<Me;++ge){var ce=G[ge];ce.shape=fe,ce.begin();for(var ze=0;ze<lt;++ze)if(se[ze]===ge){var tt=ue[ze];tt.drawPick&&(tt.pixelRatio=1,tt.drawPick(re))}ce.end()}}}var Ze=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],at=[Ze[0].slice(),Ze[1].slice()];function it(){if(!Be()){be();var lt=ie.camera.tick();re.view=ie.camera.matrix,$=$||lt,ne=ne||lt,U.pixelRatio=ie.pixelRatio,Q.pixelRatio=ie.pixelRatio;var Me=ue.length,ge=Ze[0],ce=Ze[1];ge[0]=ge[1]=ge[2]=1/0,ce[0]=ce[1]=ce[2]=-1/0;for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.pixelRatio=ie.pixelRatio,tt.axes=ie.axes,$=$||!!tt.dirty,ne=ne||!!tt.dirty;var nt=tt.bounds;if(nt)for(var Qe=nt[0],Ct=nt[1],St=0;St<3;++St)ge[St]=Math.min(ge[St],Qe[St]),ce[St]=Math.max(ce[St],Ct[St])}var Ot=ie.bounds;if(ie.autoBounds)for(var St=0;St<3;++St){if(ce[St]<ge[St])ge[St]=-1,ce[St]=1;else{ge[St]===ce[St]&&(ge[St]-=1,ce[St]+=1);var jt=.05*(ce[St]-ge[St]);ge[St]=ge[St]-jt,ce[St]=ce[St]+jt}Ot[0][St]=ge[St],Ot[1][St]=ce[St]}for(var ur=!1,St=0;St<3;++St)ur=ur||at[0][St]!==Ot[0][St]||at[1][St]!==Ot[1][St],at[0][St]=Ot[0][St],at[1][St]=Ot[1][St];if(ne=ne||ur,$=$||ur,!!$){if(ur){for(var ar=[0,0,0],ze=0;ze<3;++ze)ar[ze]=E((Ot[1][ze]-Ot[0][ze])/10);U.autoTicks?U.update({bounds:Ot,tickSpacing:ar}):U.update({bounds:Ot})}var Cr=P.drawingBufferWidth,vr=P.drawingBufferHeight;j[0]=Cr,j[1]=vr,fe[0]=Math.max(Cr/ie.pixelRatio,1)|0,fe[1]=Math.max(vr/ie.pixelRatio,1)|0,d(ie,O);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.axesBounds=Ot,ie.clipToBounds&&(tt.clipBounds=Ot)}z.object&&(ie.snapToData?Q.position=z.dataCoordinate:Q.position=z.dataPosition,Q.bounds=Ot),ne&&(ne=!1,Ie()),ie.axesPixels=i(ie.axes,re,Cr,vr),ie.onrender&&ie.onrender(),P.bindFramebuffer(P.FRAMEBUFFER,null),P.viewport(0,0,Cr,vr),ie.clearRGBA(),P.depthMask(!0),P.colorMask(!0,!0,!0,!0),P.enable(P.DEPTH_TEST),P.depthFunc(P.LEQUAL),P.disable(P.BLEND),P.disable(P.CULL_FACE);var _r=!1;U.enable&&(_r=_r||U.isTransparent(),U.draw(re)),Q.axes=U,z.object&&Q.draw(re),P.disable(P.CULL_FACE);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.axes=U,tt.pixelRatio=ie.pixelRatio,tt.isOpaque&&tt.isOpaque()&&tt.draw(re),tt.isTransparent&&tt.isTransparent()&&(_r=!0)}if(_r){F.shape=j,F.bind(),P.clear(P.DEPTH_BUFFER_BIT),P.colorMask(!1,!1,!1,!1),P.depthMask(!0),P.depthFunc(P.LESS),U.enable&&U.isTransparent()&&U.drawTransparent(re);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.isOpaque&&tt.isOpaque()&&tt.draw(re)}P.enable(P.BLEND),P.blendEquation(P.FUNC_ADD),P.blendFunc(P.ONE,P.ONE_MINUS_SRC_ALPHA),P.colorMask(!0,!0,!0,!0),P.depthMask(!1),P.clearColor(0,0,0,0),P.clear(P.COLOR_BUFFER_BIT),U.isTransparent()&&U.drawTransparent(re);for(var ze=0;ze<Me;++ze){var tt=ue[ze];tt.isTransparent&&tt.isTransparent()&&tt.drawTransparent(re)}P.bindFramebuffer(P.FRAMEBUFFER,null),P.blendFunc(P.ONE,P.ONE_MINUS_SRC_ALPHA),P.disable(P.DEPTH_TEST),B.bind(),F.color[0].bind(0),B.uniforms.accumBuffer=0,h(P),P.disable(P.BLEND)}$=!1;for(var ze=0;ze<Me;++ze)ue[ze].dirty=!1}}}function et(){ie._stopped||ie.contextLost||(it(),requestAnimationFrame(et))}return ie.enableMouseListeners(),et(),ie.redraw=function(){ie._stopped||($=!0,it())},ie}function d(u,y){var f=u.bounds,P=u.cameraParams,L=P.projection,z=P.model,F=u.gl.drawingBufferWidth,B=u.gl.drawingBufferHeight,O=u.zNear,I=u.zFar,N=u.fovy,U=F/B;y?(T(L,-U,U,-1,1,O,I),P._ortho=!0):(p(L,N,U,O,I),P._ortho=!1);for(var W=0;W<16;++W)z[W]=0;z[15]=1;for(var Q=0,W=0;W<3;++W)Q=Math.max(Q,f[1][W]-f[0][W]);for(var W=0;W<3;++W)u.autoScale?z[5*W]=u.aspect[W]/(f[1][W]-f[0][W]):z[5*W]=1/Q,u.autoCenter&&(z[12+W]=-z[5*W]*.5*(f[0][W]+f[1][W]))}},783:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2],h=o[3],v=a[0],p=a[1],T=a[2],l=a[3],_,w,S,E,m;return w=n*v+s*p+c*T+h*l,w<0&&(w=-w,v=-v,p=-p,T=-T,l=-l),1-w>1e-6?(_=Math.acos(w),S=Math.sin(_),E=Math.sin((1-i)*_)/S,m=Math.sin(i*_)/S):(E=1-i,m=i),r[0]=E*n+m*v,r[1]=E*s+m*p,r[2]=E*c+m*T,r[3]=E*h+m*l,r}},5964:function(e){"use strict";e.exports=function(t){return!t&&t!==0?"":t.toString()}},9366:function(e,t,r){"use strict";var o=r(4359);e.exports=i;var a={};function i(n,s,c){var h=[s.style,s.weight,s.variant,s.family].join("_"),v=a[h];if(v||(v=a[h]={}),n in v)return v[n];var p={textAlign:"center",textBaseline:"middle",lineHeight:1,font:s.family,fontStyle:s.style,fontWeight:s.weight,fontVariant:s.variant,lineSpacing:1.25,styletags:{breaklines:!0,bolds:!0,italics:!0,subscripts:!0,superscripts:!0}};p.triangles=!0;var T=o(n,p);p.triangles=!1;var l=o(n,p),_,w;if(c&&c!==1){for(_=0;_<T.positions.length;++_)for(w=0;w<T.positions[_].length;++w)T.positions[_][w]/=c;for(_=0;_<l.positions.length;++_)for(w=0;w<l.positions[_].length;++w)l.positions[_][w]/=c}var S=[[1/0,1/0],[-1/0,-1/0]],E=l.positions.length;for(_=0;_<E;++_){var m=l.positions[_];for(w=0;w<2;++w)S[0][w]=Math.min(S[0][w],m[w]),S[1][w]=Math.max(S[1][w],m[w])}return v[n]=[T,l,S]}},1283:function(e,t,r){var o=r(9405),a=r(3236),i=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform vec4 highlightId;
+uniform float highlightScale;
+uniform mat4 model, view, projection;
+uniform vec3 clipBounds[2];
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float scale = 1.0;
+ if(distance(highlightId, id) < 0.0001) {
+ scale = highlightScale;
+ }
+
+ vec4 worldPosition = model * vec4(position, 1);
+ vec4 viewPosition = view * worldPosition;
+ viewPosition = viewPosition / viewPosition.w;
+ vec4 clipPosition = projection * (viewPosition + scale * vec4(glyph.x, -glyph.y, 0, 0));
+
+ gl_Position = clipPosition;
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = position;
+ }
+}`]),n=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform vec2 screenSize;
+uniform vec3 clipBounds[2];
+uniform float highlightScale, pixelRatio;
+uniform vec4 highlightId;
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float scale = pixelRatio;
+ if(distance(highlightId.bgr, id.bgr) < 0.001) {
+ scale *= highlightScale;
+ }
+
+ vec4 worldPosition = model * vec4(position, 1.0);
+ vec4 viewPosition = view * worldPosition;
+ vec4 clipPosition = projection * viewPosition;
+ clipPosition /= clipPosition.w;
+
+ gl_Position = clipPosition + vec4(screenSize * scale * vec2(glyph.x, -glyph.y), 0.0, 0.0);
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = position;
+ }
+}`]),s=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+attribute vec3 position;
+attribute vec4 color;
+attribute vec2 glyph;
+attribute vec4 id;
+
+uniform float highlightScale;
+uniform vec4 highlightId;
+uniform vec3 axes[2];
+uniform mat4 model, view, projection;
+uniform vec2 screenSize;
+uniform vec3 clipBounds[2];
+uniform float scale, pixelRatio;
+
+varying vec4 interpColor;
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], position)) {
+
+ gl_Position = vec4(0,0,0,0);
+ } else {
+ float lscale = pixelRatio * scale;
+ if(distance(highlightId, id) < 0.0001) {
+ lscale *= highlightScale;
+ }
+
+ vec4 clipCenter = projection * (view * (model * vec4(position, 1)));
+ vec3 dataPosition = position + 0.5*lscale*(axes[0] * glyph.x + axes[1] * glyph.y) * clipCenter.w * screenSize.y;
+ vec4 clipPosition = projection * (view * (model * vec4(dataPosition, 1)));
+
+ gl_Position = clipPosition;
+ interpColor = color;
+ pickId = id;
+ dataCoordinate = dataPosition;
+ }
+}
+`]),c=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 fragClipBounds[2];
+uniform float opacity;
+
+varying vec4 interpColor;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (
+ outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate) ||
+ interpColor.a * opacity == 0.
+ ) discard;
+ gl_FragColor = interpColor * opacity;
+}
+`]),h=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 fragClipBounds[2];
+uniform float pickGroup;
+
+varying vec4 pickId;
+varying vec3 dataCoordinate;
+
+void main() {
+ if (outOfRange(fragClipBounds[0], fragClipBounds[1], dataCoordinate)) discard;
+
+ gl_FragColor = vec4(pickGroup, pickId.bgr);
+}`]),v=[{name:"position",type:"vec3"},{name:"color",type:"vec4"},{name:"glyph",type:"vec2"},{name:"id",type:"vec4"}],p={vertex:i,fragment:c,attributes:v},T={vertex:n,fragment:c,attributes:v},l={vertex:s,fragment:c,attributes:v},_={vertex:i,fragment:h,attributes:v},w={vertex:n,fragment:h,attributes:v},S={vertex:s,fragment:h,attributes:v};function E(m,b){var d=o(m,b),u=d.attributes;return u.position.location=0,u.color.location=1,u.glyph.location=2,u.id.location=3,d}t.createPerspective=function(m){return E(m,p)},t.createOrtho=function(m){return E(m,T)},t.createProject=function(m){return E(m,l)},t.createPickPerspective=function(m){return E(m,_)},t.createPickOrtho=function(m){return E(m,w)},t.createPickProject=function(m){return E(m,S)}},8418:function(e,t,r){"use strict";var o=r(5219),a=r(2762),i=r(8116),n=r(1888),s=r(6760),c=r(1283),h=r(9366),v=r(5964),p=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],T=ArrayBuffer,l=DataView;function _(Z){return T.isView(Z)&&!(Z instanceof l)}function w(Z){return Array.isArray(Z)||_(Z)}e.exports=J;function S(Z,re){var ne=Z[0],j=Z[1],ee=Z[2],ie=Z[3];return Z[0]=re[0]*ne+re[4]*j+re[8]*ee+re[12]*ie,Z[1]=re[1]*ne+re[5]*j+re[9]*ee+re[13]*ie,Z[2]=re[2]*ne+re[6]*j+re[10]*ee+re[14]*ie,Z[3]=re[3]*ne+re[7]*j+re[11]*ee+re[15]*ie,Z}function E(Z,re,ne,j){return S(j,j,ne),S(j,j,re),S(j,j,Z)}function m(Z,re){this.index=Z,this.dataCoordinate=this.position=re}function b(Z){return Z===!0||Z>1?1:Z}function d(Z,re,ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze){this.gl=Z,this.pixelRatio=1,this.shader=re,this.orthoShader=ne,this.projectShader=j,this.pointBuffer=ee,this.colorBuffer=ie,this.glyphBuffer=fe,this.idBuffer=be,this.vao=Ae,this.vertexCount=0,this.lineVertexCount=0,this.opacity=1,this.hasAlpha=!1,this.lineWidth=0,this.projectScale=[.6666666666666666,.6666666666666666,.6666666666666666],this.projectOpacity=[1,1,1],this.projectHasAlpha=!1,this.pickId=0,this.pickPerspectiveShader=Be,this.pickOrthoShader=Ie,this.pickProjectShader=Ze,this.points=[],this._selectResult=new m(0,[0,0,0]),this.useOrtho=!0,this.bounds=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]],this.axesProject=[!0,!0,!0],this.axesBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.highlightId=[1,1,1,1],this.highlightScale=2,this.clipBounds=[[-1/0,-1/0,-1/0],[1/0,1/0,1/0]],this.dirty=!0}var u=d.prototype;u.pickSlots=1,u.setPickBase=function(Z){this.pickId=Z},u.isTransparent=function(){if(this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&this.projectHasAlpha)return!0;return!1},u.isOpaque=function(){if(!this.hasAlpha)return!0;for(var Z=0;Z<3;++Z)if(this.axesProject[Z]&&!this.projectHasAlpha)return!0;return!1};var y=[0,0],f=[0,0,0],P=[0,0,0],L=[0,0,0,1],z=[0,0,0,1],F=p.slice(),B=[0,0,0],O=[[0,0,0],[0,0,0]];function I(Z){return Z[0]=Z[1]=Z[2]=0,Z}function N(Z,re){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[3]=1,Z}function U(Z,re,ne,j){return Z[0]=re[0],Z[1]=re[1],Z[2]=re[2],Z[ne]=j,Z}function W(Z){for(var re=O,ne=0;ne<2;++ne)for(var j=0;j<3;++j)re[ne][j]=Math.max(Math.min(Z[ne][j],1e8),-1e8);return re}function Q(Z,re,ne,j){var ee=re.axesProject,ie=re.gl,fe=Z.uniforms,be=ne.model||p,Ae=ne.view||p,Be=ne.projection||p,Ie=re.axesBounds,Ze=W(re.clipBounds),at;re.axes&&re.axes.lastCubeProps?at=re.axes.lastCubeProps.axis:at=[1,1,1],y[0]=2/ie.drawingBufferWidth,y[1]=2/ie.drawingBufferHeight,Z.bind(),fe.view=Ae,fe.projection=Be,fe.screenSize=y,fe.highlightId=re.highlightId,fe.highlightScale=re.highlightScale,fe.clipBounds=Ze,fe.pickGroup=re.pickId/255,fe.pixelRatio=j;for(var it=0;it<3;++it)if(ee[it]){fe.scale=re.projectScale[it],fe.opacity=re.projectOpacity[it];for(var et=F,lt=0;lt<16;++lt)et[lt]=0;for(var lt=0;lt<4;++lt)et[5*lt]=1;et[5*it]=0,at[it]<0?et[12+it]=Ie[0][it]:et[12+it]=Ie[1][it],s(et,be,et),fe.model=et;var Me=(it+1)%3,ge=(it+2)%3,ce=I(f),ze=I(P);ce[Me]=1,ze[ge]=1;var tt=E(Be,Ae,be,N(L,ce)),nt=E(Be,Ae,be,N(z,ze));if(Math.abs(tt[1])>Math.abs(nt[1])){var Qe=tt;tt=nt,nt=Qe,Qe=ce,ce=ze,ze=Qe;var Ct=Me;Me=ge,ge=Ct}tt[0]<0&&(ce[Me]=-1),nt[1]>0&&(ze[ge]=-1);for(var St=0,Ot=0,lt=0;lt<4;++lt)St+=Math.pow(be[4*Me+lt],2),Ot+=Math.pow(be[4*ge+lt],2);ce[Me]/=Math.sqrt(St),ze[ge]/=Math.sqrt(Ot),fe.axes[0]=ce,fe.axes[1]=ze,fe.fragClipBounds[0]=U(B,Ze[0],it,-1e8),fe.fragClipBounds[1]=U(B,Ze[1],it,1e8),re.vao.bind(),re.vao.draw(ie.TRIANGLES,re.vertexCount),re.lineWidth>0&&(ie.lineWidth(re.lineWidth*j),re.vao.draw(ie.LINES,re.lineVertexCount,re.vertexCount)),re.vao.unbind()}}var ue=[-1e8,-1e8,-1e8],se=[1e8,1e8,1e8],he=[ue,se];function G(Z,re,ne,j,ee,ie,fe){var be=ne.gl;if((ie===ne.projectHasAlpha||fe)&&Q(re,ne,j,ee),ie===ne.hasAlpha||fe){Z.bind();var Ae=Z.uniforms;Ae.model=j.model||p,Ae.view=j.view||p,Ae.projection=j.projection||p,y[0]=2/be.drawingBufferWidth,y[1]=2/be.drawingBufferHeight,Ae.screenSize=y,Ae.highlightId=ne.highlightId,Ae.highlightScale=ne.highlightScale,Ae.fragClipBounds=he,Ae.clipBounds=ne.axes.bounds,Ae.opacity=ne.opacity,Ae.pickGroup=ne.pickId/255,Ae.pixelRatio=ee,ne.vao.bind(),ne.vao.draw(be.TRIANGLES,ne.vertexCount),ne.lineWidth>0&&(be.lineWidth(ne.lineWidth*ee),ne.vao.draw(be.LINES,ne.lineVertexCount,ne.vertexCount)),ne.vao.unbind()}}u.draw=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!1,!1)},u.drawTransparent=function(Z){var re=this.useOrtho?this.orthoShader:this.shader;G(re,this.projectShader,this,Z,this.pixelRatio,!0,!1)},u.drawPick=function(Z){var re=this.useOrtho?this.pickOrthoShader:this.pickPerspectiveShader;G(re,this.pickProjectShader,this,Z,1,!0,!0)},u.pick=function(Z){if(!Z||Z.id!==this.pickId)return null;var re=Z.value[2]+(Z.value[1]<<8)+(Z.value[0]<<16);if(re>=this.pointCount||re<0)return null;var ne=this.points[re],j=this._selectResult;j.index=re;for(var ee=0;ee<3;++ee)j.position[ee]=j.dataCoordinate[ee]=ne[ee];return j},u.highlight=function(Z){if(!Z)this.highlightId=[1,1,1,1];else{var re=Z.index,ne=re&255,j=re>>8&255,ee=re>>16&255;this.highlightId=[ne/255,j/255,ee/255,0]}};function $(Z,re,ne,j){var ee;w(Z)?re<Z.length?ee=Z[re]:ee=void 0:ee=Z,ee=v(ee);var ie=!0;o(ee)&&(ee="\u25BC",ie=!1),ne||(ne={});var fe=ne.family;w(fe)&&(fe=fe[re]),fe||(fe="normal");var be=ne.weight;w(be)&&(be=be[re]),be||(be="normal");var Ae=ne.style;w(Ae)&&(Ae=Ae[re]),Ae||(Ae="normal");var Be=ne.variant;w(Be)&&(Be=Be[re]),Be||(Be="normal");var Ie=h(ee,{family:fe,weight:be,style:Ae,variant:Be},j),Ie=h(ee,ne,j);return{mesh:Ie[0],lines:Ie[1],bounds:Ie[2],visible:ie}}u.update=function(Z){if(Z=Z||{},"perspective"in Z&&(this.useOrtho=!Z.perspective),"orthographic"in Z&&(this.useOrtho=!!Z.orthographic),"lineWidth"in Z&&(this.lineWidth=Z.lineWidth),"project"in Z)if(w(Z.project))this.axesProject=Z.project;else{var re=!!Z.project;this.axesProject=[re,re,re]}if("projectScale"in Z)if(w(Z.projectScale))this.projectScale=Z.projectScale.slice();else{var ne=+Z.projectScale;this.projectScale=[ne,ne,ne]}if(this.projectHasAlpha=!1,"projectOpacity"in Z){if(w(Z.projectOpacity))this.projectOpacity=Z.projectOpacity.slice();else{var ne=+Z.projectOpacity;this.projectOpacity=[ne,ne,ne]}for(var j=0;j<3;++j)this.projectOpacity[j]=b(this.projectOpacity[j]),this.projectOpacity[j]<1&&(this.projectHasAlpha=!0)}this.hasAlpha=!1,"opacity"in Z&&(this.opacity=b(Z.opacity),this.opacity<1&&(this.hasAlpha=!0)),this.dirty=!0;var ee=Z.position,ie={family:Z.font||"normal",style:Z.fontStyle||"normal",weight:Z.fontWeight||"normal",variant:Z.fontVariant||"normal"},fe=Z.alignment||[0,0],be,Ae;if(fe.length===2)be=fe[0],Ae=fe[1];else{be=[],Ae=[];for(var j=0;j<fe.length;++j)be[j]=fe[j][0],Ae[j]=fe[j][1]}var Be=[1/0,1/0,1/0],Ie=[-1/0,-1/0,-1/0],Ze=Z.glyph,at=Z.color,it=Z.size,et=Z.angle,lt=Z.lineColor,Me=-1,ge=0,ce=0,ze=0;if(ee.length){ze=ee.length;e:for(var j=0;j<ze;++j){for(var tt=ee[j],nt=0;nt<3;++nt)if(isNaN(tt[nt])||!isFinite(tt[nt]))continue e;var Qe=$(Ze,j,ie,this.pixelRatio),Ct=Qe.mesh,St=Qe.lines,Ot=Qe.bounds;ge+=Ct.cells.length*3,ce+=St.edges.length*2}}var jt=ge+ce,ur=n.mallocFloat(3*jt),ar=n.mallocFloat(4*jt),Cr=n.mallocFloat(2*jt),vr=n.mallocUint32(jt);if(jt>0){var _r=0,yt=ge,Fe=[0,0,0,1],Ke=[0,0,0,1],Ne=w(at)&&w(at[0]),Ee=w(lt)&&w(lt[0]);e:for(var j=0;j<ze;++j){Me+=1;for(var tt=ee[j],nt=0;nt<3;++nt){if(isNaN(tt[nt])||!isFinite(tt[nt]))continue e;Ie[nt]=Math.max(Ie[nt],tt[nt]),Be[nt]=Math.min(Be[nt],tt[nt])}var Qe=$(Ze,j,ie,this.pixelRatio),Ct=Qe.mesh,St=Qe.lines,Ot=Qe.bounds,Ve=Qe.visible;if(!Ve)Fe=[1,1,1,0];else if(w(at)){var ke;if(Ne?j<at.length?ke=at[j]:ke=[0,0,0,0]:ke=at,ke.length===3){for(var nt=0;nt<3;++nt)Fe[nt]=ke[nt];Fe[3]=1}else if(ke.length===4){for(var nt=0;nt<4;++nt)Fe[nt]=ke[nt];!this.hasAlpha&&ke[3]<1&&(this.hasAlpha=!0)}}else Fe[0]=Fe[1]=Fe[2]=0,Fe[3]=1;if(!Ve)Ke=[1,1,1,0];else if(w(lt)){var ke;if(Ee?j<lt.length?ke=lt[j]:ke=[0,0,0,0]:ke=lt,ke.length===3){for(var nt=0;nt<3;++nt)Ke[nt]=ke[nt];Ke[nt]=1}else if(ke.length===4){for(var nt=0;nt<4;++nt)Ke[nt]=ke[nt];!this.hasAlpha&&ke[3]<1&&(this.hasAlpha=!0)}}else Ke[0]=Ke[1]=Ke[2]=0,Ke[3]=1;var Te=.5;Ve?w(it)?j<it.length?Te=+it[j]:Te=12:it?Te=+it:this.useOrtho&&(Te=12):Te=0;var Le=0;w(et)?j<et.length?Le=+et[j]:Le=0:et&&(Le=+et);for(var rt=Math.cos(Le),dt=Math.sin(Le),tt=ee[j],nt=0;nt<3;++nt)Ie[nt]=Math.max(Ie[nt],tt[nt]),Be[nt]=Math.min(Be[nt],tt[nt]);var xt=be,It=Ae,xt=0;w(be)?j<be.length?xt=be[j]:xt=0:be&&(xt=be);var It=0;w(Ae)?j<Ae.length?It=Ae[j]:It=0:Ae&&(It=Ae),xt*=xt>0?1-Ot[0][0]:xt<0?1+Ot[1][0]:1,It*=It>0?1-Ot[0][1]:It<0?1+Ot[1][1]:1;for(var Bt=[xt,It],Aa=Ct.cells||[],La=Ct.positions||[],nt=0;nt<Aa.length;++nt)for(var Gt=Aa[nt],Kt=0;Kt<3;++Kt){for(var sr=0;sr<3;++sr)ur[3*_r+sr]=tt[sr];for(var sr=0;sr<4;++sr)ar[4*_r+sr]=Fe[sr];vr[_r]=Me;var sa=La[Gt[Kt]];Cr[2*_r]=Te*(rt*sa[0]-dt*sa[1]+Bt[0]),Cr[2*_r+1]=Te*(dt*sa[0]+rt*sa[1]+Bt[1]),_r+=1}for(var Aa=St.edges,La=St.positions,nt=0;nt<Aa.length;++nt)for(var Gt=Aa[nt],Kt=0;Kt<2;++Kt){for(var sr=0;sr<3;++sr)ur[3*yt+sr]=tt[sr];for(var sr=0;sr<4;++sr)ar[4*yt+sr]=Ke[sr];vr[yt]=Me;var sa=La[Gt[Kt]];Cr[2*yt]=Te*(rt*sa[0]-dt*sa[1]+Bt[0]),Cr[2*yt+1]=Te*(dt*sa[0]+rt*sa[1]+Bt[1]),yt+=1}}}this.bounds=[Be,Ie],this.points=ee,this.pointCount=ee.length,this.vertexCount=ge,this.lineVertexCount=ce,this.pointBuffer.update(ur),this.colorBuffer.update(ar),this.glyphBuffer.update(Cr),this.idBuffer.update(vr),n.free(ur),n.free(ar),n.free(Cr),n.free(vr)},u.dispose=function(){this.shader.dispose(),this.orthoShader.dispose(),this.pickPerspectiveShader.dispose(),this.pickOrthoShader.dispose(),this.vao.dispose(),this.pointBuffer.dispose(),this.colorBuffer.dispose(),this.glyphBuffer.dispose(),this.idBuffer.dispose()};function J(Z){var re=Z.gl,ne=c.createPerspective(re),j=c.createOrtho(re),ee=c.createProject(re),ie=c.createPickPerspective(re),fe=c.createPickOrtho(re),be=c.createPickProject(re),Ae=a(re),Be=a(re),Ie=a(re),Ze=a(re),at=i(re,[{buffer:Ae,size:3,type:re.FLOAT},{buffer:Be,size:4,type:re.FLOAT},{buffer:Ie,size:2,type:re.FLOAT},{buffer:Ze,size:4,type:re.UNSIGNED_BYTE,normalized:!0}]),it=new d(re,ne,j,ee,Ae,Be,Ie,Ze,at,ie,fe,be);return it.update(Z),it}},3589:function(e,t,r){"use strict";e.exports=p;var o=r(2260),a=r(1888),i=r(9618),n=r(8828).nextPow2,s=function(T,l,_){for(var w=1e8,S=-1,E=-1,m=T.shape[0],b=T.shape[1],d=0;d<m;d++)for(var u=0;u<b;u++){var y=T.get(d,u,0),f=T.get(d,u,1),P=T.get(d,u,2),L=T.get(d,u,3);if(y<255||f<255||P<255||L<255){var z=l-d,F=_-u,B=z*z+F*F;B<w&&(w=B,S=d,E=u)}}return[S,E,w]};function c(T,l,_,w,S){this.coord=[T,l],this.id=_,this.value=w,this.distance=S}function h(T,l,_){this.gl=T,this.fbo=l,this.buffer=_,this._readTimeout=null;var w=this;this._readCallback=function(){w.gl&&(l.bind(),T.readPixels(0,0,l.shape[0],l.shape[1],T.RGBA,T.UNSIGNED_BYTE,w.buffer),w._readTimeout=null)}}var v=h.prototype;Object.defineProperty(v,"shape",{get:function(){return this.gl?this.fbo.shape.slice():[0,0]},set:function(T){if(this.gl){this.fbo.shape=T;var l=this.fbo.shape[0],_=this.fbo.shape[1];if(_*l*4>this.buffer.length){a.free(this.buffer);for(var w=this.buffer=a.mallocUint8(n(_*l*4)),S=0;S<_*l*4;++S)w[S]=255}return T}}}),v.begin=function(){var T=this.gl,l=this.shape;T&&(this.fbo.bind(),T.clearColor(1,1,1,1),T.clear(T.COLOR_BUFFER_BIT|T.DEPTH_BUFFER_BIT))},v.end=function(){var T=this.gl;T&&(T.bindFramebuffer(T.FRAMEBUFFER,null),this._readTimeout||clearTimeout(this._readTimeout),this._readTimeout=setTimeout(this._readCallback,1))},v.query=function(T,l,_){if(!this.gl)return null;var w=this.fbo.shape.slice();T=T|0,l=l|0,typeof _!="number"&&(_=1);var S=Math.min(Math.max(T-_,0),w[0])|0,E=Math.min(Math.max(T+_,0),w[0])|0,m=Math.min(Math.max(l-_,0),w[1])|0,b=Math.min(Math.max(l+_,0),w[1])|0;if(E<=S||b<=m)return null;var d=[E-S,b-m],u=i(this.buffer,[d[0],d[1],4],[4,w[0]*4,1],4*(S+w[0]*m)),y=s(u.hi(d[0],d[1],1),_,_),f=y[0],P=y[1];if(f<0||Math.pow(this.radius,2)<y[2])return null;var L=u.get(f,P,0),z=u.get(f,P,1),F=u.get(f,P,2),B=u.get(f,P,3);return new c(f+S|0,P+m|0,L,[z,F,B],Math.sqrt(y[2]))},v.dispose=function(){this.gl&&(this.fbo.dispose(),a.free(this.buffer),this.gl=null,this._readTimeout&&clearTimeout(this._readTimeout))};function p(T,l){var _=l[0],w=l[1],S={},E=o(T,_,w,S),m=a.mallocUint8(_*w*4);return new h(T,E,m)}},9405:function(e,t,r){"use strict";var o=r(3327),a=r(8731),i=r(216),n=r(5091),s=r(2145),c=r(8866);function h(l){this.gl=l,this.gl.lastAttribCount=0,this._vref=this._fref=this._relink=this.vertShader=this.fragShader=this.program=this.attributes=this.uniforms=this.types=null}var v=h.prototype;v.bind=function(){this.program||this._relink();var l,_=this.gl.getProgramParameter(this.program,this.gl.ACTIVE_ATTRIBUTES),w=this.gl.lastAttribCount;if(_>w)for(l=w;l<_;l++)this.gl.enableVertexAttribArray(l);else if(w>_)for(l=_;l<w;l++)this.gl.disableVertexAttribArray(l);this.gl.lastAttribCount=_,this.gl.useProgram(this.program)},v.dispose=function(){for(var l=this.gl.lastAttribCount,_=0;_<l;_++)this.gl.disableVertexAttribArray(_);this.gl.lastAttribCount=0,this._fref&&this._fref.dispose(),this._vref&&this._vref.dispose(),this.attributes=this.types=this.vertShader=this.fragShader=this.program=this._relink=this._fref=this._vref=null};function p(l,_){return l.name<_.name?-1:1}v.update=function(l,_,w,S){if(!_||arguments.length===1){var E=l;l=E.vertex,_=E.fragment,w=E.uniforms,S=E.attributes}var m=this,b=m.gl,d=m._vref;m._vref=n.shader(b,b.VERTEX_SHADER,l),d&&d.dispose(),m.vertShader=m._vref.shader;var u=this._fref;if(m._fref=n.shader(b,b.FRAGMENT_SHADER,_),u&&u.dispose(),m.fragShader=m._fref.shader,!w||!S){var y=b.createProgram();if(b.attachShader(y,m.fragShader),b.attachShader(y,m.vertShader),b.linkProgram(y),!b.getProgramParameter(y,b.LINK_STATUS)){var f=b.getProgramInfoLog(y);throw new c(f,"Error linking program:"+f)}w=w||s.uniforms(b,y),S=S||s.attributes(b,y),b.deleteProgram(y)}S=S.slice(),S.sort(p);var P=[],L=[],z=[],F;for(F=0;F<S.length;++F){var B=S[F];if(B.type.indexOf("mat")>=0){for(var O=B.type.charAt(B.type.length-1)|0,I=new Array(O),N=0;N<O;++N)I[N]=z.length,L.push(B.name+"["+N+"]"),typeof B.location=="number"?z.push(B.location+N):Array.isArray(B.location)&&B.location.length===O&&typeof B.location[N]=="number"?z.push(B.location[N]|0):z.push(-1);P.push({name:B.name,type:B.type,locations:I})}else P.push({name:B.name,type:B.type,locations:[z.length]}),L.push(B.name),typeof B.location=="number"?z.push(B.location|0):z.push(-1)}var U=0;for(F=0;F<z.length;++F)if(z[F]<0){for(;z.indexOf(U)>=0;)U+=1;z[F]=U}var W=new Array(w.length);function Q(){m.program=n.program(b,m._vref,m._fref,L,z);for(var ue=0;ue<w.length;++ue)W[ue]=b.getUniformLocation(m.program,w[ue].name)}Q(),m._relink=Q,m.types={uniforms:i(w),attributes:i(S)},m.attributes=a(b,m,P,z),Object.defineProperty(m,"uniforms",o(b,m,w,W))};function T(l,_,w,S,E){var m=new h(l);return m.update(_,w,S,E),m}e.exports=T},8866:function(e){function t(r,o,a){this.shortMessage=o||"",this.longMessage=a||"",this.rawError=r||"",this.message="gl-shader: "+(o||r||"")+(a?`
+`+a:""),this.stack=new Error().stack}t.prototype=new Error,t.prototype.name="GLError",t.prototype.constructor=t,e.exports=t},8731:function(e,t,r){"use strict";e.exports=h;var o=r(8866);function a(v,p,T,l,_,w){this._gl=v,this._wrapper=p,this._index=T,this._locations=l,this._dimension=_,this._constFunc=w}var i=a.prototype;i.pointer=function(p,T,l,_){var w=this,S=w._gl,E=w._locations[w._index];S.vertexAttribPointer(E,w._dimension,p||S.FLOAT,!!T,l||0,_||0),S.enableVertexAttribArray(E)},i.set=function(v,p,T,l){return this._constFunc(this._locations[this._index],v,p,T,l)},Object.defineProperty(i,"location",{get:function(){return this._locations[this._index]},set:function(v){return v!==this._locations[this._index]&&(this._locations[this._index]=v|0,this._wrapper.program=null),v|0}});var n=[function(v,p,T){return T.length===void 0?v.vertexAttrib1f(p,T):v.vertexAttrib1fv(p,T)},function(v,p,T,l){return T.length===void 0?v.vertexAttrib2f(p,T,l):v.vertexAttrib2fv(p,T)},function(v,p,T,l,_){return T.length===void 0?v.vertexAttrib3f(p,T,l,_):v.vertexAttrib3fv(p,T)},function(v,p,T,l,_,w){return T.length===void 0?v.vertexAttrib4f(p,T,l,_,w):v.vertexAttrib4fv(p,T)}];function s(v,p,T,l,_,w,S){var E=n[_],m=new a(v,p,T,l,_,E);Object.defineProperty(w,S,{set:function(b){return v.disableVertexAttribArray(l[T]),E(v,l[T],b),b},get:function(){return m},enumerable:!0})}function c(v,p,T,l,_,w,S){for(var E=new Array(_),m=new Array(_),b=0;b<_;++b)s(v,p,T[b],l,_,E,b),m[b]=E[b];Object.defineProperty(E,"location",{set:function(y){if(Array.isArray(y))for(var f=0;f<_;++f)m[f].location=y[f];else for(var f=0;f<_;++f)m[f].location=y+f;return y},get:function(){for(var y=new Array(_),f=0;f<_;++f)y[f]=l[T[f]];return y},enumerable:!0}),E.pointer=function(y,f,P,L){y=y||v.FLOAT,f=!!f,P=P||_*_,L=L||0;for(var z=0;z<_;++z){var F=l[T[z]];v.vertexAttribPointer(F,_,y,f,P,L+z*_),v.enableVertexAttribArray(F)}};var d=new Array(_),u=v["vertexAttrib"+_+"fv"];Object.defineProperty(w,S,{set:function(y){for(var f=0;f<_;++f){var P=l[T[f]];if(v.disableVertexAttribArray(P),Array.isArray(y[0]))u.call(v,P,y[f]);else{for(var L=0;L<_;++L)d[L]=y[_*f+L];u.call(v,P,d)}}return y},get:function(){return E},enumerable:!0})}function h(v,p,T,l){for(var _={},w=0,S=T.length;w<S;++w){var E=T[w],m=E.name,b=E.type,d=E.locations;switch(b){case"bool":case"int":case"float":s(v,p,d[0],l,1,_,m);break;default:if(b.indexOf("vec")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);s(v,p,d[0],l,u,_,m)}else if(b.indexOf("mat")>=0){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new o("","Invalid data type for attribute "+m+": "+b);c(v,p,d,l,u,_,m)}else throw new o("","Unknown data type for attribute "+m+": "+b);break}}return _}},3327:function(e,t,r){"use strict";var o=r(216),a=r(8866);e.exports=s;function i(c){return function(){return c}}function n(c,h){for(var v=new Array(c),p=0;p<c;++p)v[p]=h;return v}function s(c,h,v,p){function T(b){return function(d,u,y){return d.getUniform(u.program,y[b])}}function l(b){return function(u){for(var y=_("",b),f=0;f<y.length;++f){var P=y[f],L=P[0],z=P[1];if(p[z]){var F=u;if(typeof L=="string"&&(L.indexOf(".")===0||L.indexOf("[")===0)){var B=L;if(L.indexOf(".")===0&&(B=L.slice(1)),B.indexOf("]")===B.length-1){var O=B.indexOf("["),I=B.slice(0,O),N=B.slice(O+1,B.length-1);F=I?u[I][N]:u[N]}else F=u[B]}var U=v[z].type,W;switch(U){case"bool":case"int":case"sampler2D":case"samplerCube":c.uniform1i(p[z],F);break;case"float":c.uniform1f(p[z],F);break;default:var Q=U.indexOf("vec");if(0<=Q&&Q<=1&&U.length===4+Q){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new a("","Invalid data type");switch(U.charAt(0)){case"b":case"i":c["uniform"+W+"iv"](p[z],F);break;case"v":c["uniform"+W+"fv"](p[z],F);break;default:throw new a("","Unrecognized data type for vector "+name+": "+U)}}else if(U.indexOf("mat")===0&&U.length===4){if(W=U.charCodeAt(U.length-1)-48,W<2||W>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+U);c["uniformMatrix"+W+"fv"](p[z],!1,F);break}else throw new a("","Unknown uniform data type for "+name+": "+U)}}}}}function _(b,d){if(typeof d!="object")return[[b,d]];var u=[];for(var y in d){var f=d[y],P=b;parseInt(y)+""===y?P+="["+y+"]":P+="."+y,typeof f=="object"?u.push.apply(u,_(P,f)):u.push([P,f])}return u}function w(b){switch(b){case"bool":return!1;case"int":case"sampler2D":case"samplerCube":return 0;case"float":return 0;default:var d=b.indexOf("vec");if(0<=d&&d<=1&&b.length===4+d){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid data type");return b.charAt(0)==="b"?n(u,!1):n(u,0)}else if(b.indexOf("mat")===0&&b.length===4){var u=b.charCodeAt(b.length-1)-48;if(u<2||u>4)throw new a("","Invalid uniform dimension type for matrix "+name+": "+b);return n(u*u,0)}else throw new a("","Unknown uniform data type for "+name+": "+b)}}function S(b,d,u){if(typeof u=="object"){var y=E(u);Object.defineProperty(b,d,{get:i(y),set:l(u),enumerable:!0,configurable:!1})}else p[u]?Object.defineProperty(b,d,{get:T(u),set:l(u),enumerable:!0,configurable:!1}):b[d]=w(v[u].type)}function E(b){var d;if(Array.isArray(b)){d=new Array(b.length);for(var u=0;u<b.length;++u)S(d,u,b[u])}else{d={};for(var y in b)S(d,y,b[y])}return d}var m=o(v,!0);return{get:i(E(m)),set:l(m),enumerable:!0,configurable:!0}}},216:function(e){"use strict";e.exports=t;function t(r,o){for(var a={},i=0;i<r.length;++i)for(var n=r[i].name,s=n.split("."),c=a,h=0;h<s.length;++h){var v=s[h].split("[");if(v.length>1){v[0]in c||(c[v[0]]=[]),c=c[v[0]];for(var p=1;p<v.length;++p){var T=parseInt(v[p]);p<v.length-1||h<s.length-1?(T in c||(p<v.length-1?c[T]=[]:c[T]={}),c=c[T]):o?c[T]=i:c[T]=r[i].type}}else h<s.length-1?(v[0]in c||(c[v[0]]={}),c=c[v[0]]):o?c[v[0]]=i:c[v[0]]=r[i].type}return a}},2145:function(e,t){"use strict";t.uniforms=i,t.attributes=n;var r={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"},o=null;function a(s,c){if(!o){var h=Object.keys(r);o={};for(var v=0;v<h.length;++v){var p=h[v];o[s[p]]=r[p]}}return o[c]}function i(s,c){for(var h=s.getProgramParameter(c,s.ACTIVE_UNIFORMS),v=[],p=0;p<h;++p){var T=s.getActiveUniform(c,p);if(T){var l=a(s,T.type);if(T.size>1)for(var _=0;_<T.size;++_)v.push({name:T.name.replace("[0]","["+_+"]"),type:l});else v.push({name:T.name,type:l})}}return v}function n(s,c){for(var h=s.getProgramParameter(c,s.ACTIVE_ATTRIBUTES),v=[],p=0;p<h;++p){var T=s.getActiveAttrib(c,p);T&&v.push({name:T.name,type:a(s,T.type)})}return v}},5091:function(e,t,r){"use strict";t.shader=_,t.program=w;var o=r(8866),a=r(2992),i=typeof WeakMap>"u"?r(606):WeakMap,n=new i,s=0;function c(S,E,m,b,d,u,y){this.id=S,this.src=E,this.type=m,this.shader=b,this.count=u,this.programs=[],this.cache=y}c.prototype.dispose=function(){if(--this.count===0){for(var S=this.cache,E=S.gl,m=this.programs,b=0,d=m.length;b<d;++b){var u=S.programs[m[b]];u&&(delete S.programs[b],E.deleteProgram(u))}E.deleteShader(this.shader),delete S.shaders[this.type===E.FRAGMENT_SHADER|0][this.src]}};function h(S){this.gl=S,this.shaders=[{},{}],this.programs={}}var v=h.prototype;function p(S,E,m){var b=S.createShader(E);if(S.shaderSource(b,m),S.compileShader(b),!S.getShaderParameter(b,S.COMPILE_STATUS)){var d=S.getShaderInfoLog(b);try{var u=a(d,m,E)}catch(y){throw console.warn("Failed to format compiler error: "+y),new o(d,`Error compiling shader:
+`+d)}throw new o(d,u.short,u.long)}return b}v.getShaderReference=function(S,E){var m=this.gl,b=this.shaders[S===m.FRAGMENT_SHADER|0],d=b[E];if(!d||!m.isShader(d.shader)){var u=p(m,S,E);d=b[E]=new c(s++,E,S,u,[],1,this)}else d.count+=1;return d};function T(S,E,m,b,d){var u=S.createProgram();S.attachShader(u,E),S.attachShader(u,m);for(var y=0;y<b.length;++y)S.bindAttribLocation(u,d[y],b[y]);if(S.linkProgram(u),!S.getProgramParameter(u,S.LINK_STATUS)){var f=S.getProgramInfoLog(u);throw new o(f,"Error linking program: "+f)}return u}v.getProgram=function(S,E,m,b){var d=[S.id,E.id,m.join(":"),b.join(":")].join("@"),u=this.programs[d];return(!u||!this.gl.isProgram(u))&&(this.programs[d]=u=T(this.gl,S.shader,E.shader,m,b),S.programs.push(d),E.programs.push(d)),u};function l(S){var E=n.get(S);return E||(E=new h(S),n.set(S,E)),E}function _(S,E,m){return l(S).getShaderReference(E,m)}function w(S,E,m,b,d){return l(S).getProgram(E,m,b,d)}},1493:function(e,t,r){"use strict";var o=r(3236),a=r(9405),i=o([`precision mediump float;
+#define GLSLIFY 1
+
+attribute vec3 position, color;
+attribute float weight;
+
+uniform mat4 model, view, projection;
+uniform vec3 coordinates[3];
+uniform vec4 colors[3];
+uniform vec2 screenShape;
+uniform float lineWidth;
+
+varying vec4 fragColor;
+
+void main() {
+ vec3 vertexPosition = mix(coordinates[0],
+ mix(coordinates[2], coordinates[1], 0.5 * (position + 1.0)), abs(position));
+
+ vec4 clipPos = projection * (view * (model * vec4(vertexPosition, 1.0)));
+ vec2 clipOffset = (projection * (view * (model * vec4(color, 0.0)))).xy;
+ vec2 delta = weight * clipOffset * screenShape;
+ vec2 lineOffset = normalize(vec2(delta.y, -delta.x)) / screenShape;
+
+ gl_Position = vec4(clipPos.xy + clipPos.w * 0.5 * lineWidth * lineOffset, clipPos.z, clipPos.w);
+ fragColor = color.x * colors[0] + color.y * colors[1] + color.z * colors[2];
+}
+`]),n=o([`precision mediump float;
+#define GLSLIFY 1
+
+varying vec4 fragColor;
+
+void main() {
+ gl_FragColor = fragColor;
+}`]);e.exports=function(s){return a(s,i,n,null,[{name:"position",type:"vec3"},{name:"color",type:"vec3"},{name:"weight",type:"float"}])}},4449:function(e,t,r){"use strict";var o=r(2762),a=r(8116),i=r(1493);e.exports=T;var n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];function s(l,_,w,S){this.gl=l,this.buffer=_,this.vao=w,this.shader=S,this.pixelRatio=1,this.bounds=[[-1e3,-1e3,-1e3],[1e3,1e3,1e3]],this.position=[0,0,0],this.lineWidth=[2,2,2],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.enabled=[!0,!0,!0],this.drawSides=[!0,!0,!0],this.axes=null}var c=s.prototype,h=[0,0,0],v=[0,0,0],p=[0,0];c.isTransparent=function(){return!1},c.drawTransparent=function(l){},c.draw=function(l){var _=this.gl,w=this.vao,S=this.shader;w.bind(),S.bind();var E=l.model||n,m=l.view||n,b=l.projection||n,d;this.axes&&(d=this.axes.lastCubeProps.axis);for(var u=h,y=v,f=0;f<3;++f)d&&d[f]<0?(u[f]=this.bounds[0][f],y[f]=this.bounds[1][f]):(u[f]=this.bounds[1][f],y[f]=this.bounds[0][f]);p[0]=_.drawingBufferWidth,p[1]=_.drawingBufferHeight,S.uniforms.model=E,S.uniforms.view=m,S.uniforms.projection=b,S.uniforms.coordinates=[this.position,u,y],S.uniforms.colors=this.colors,S.uniforms.screenShape=p;for(var f=0;f<3;++f)S.uniforms.lineWidth=this.lineWidth[f]*this.pixelRatio,this.enabled[f]&&(w.draw(_.TRIANGLES,6,6*f),this.drawSides[f]&&w.draw(_.TRIANGLES,12,18+12*f));w.unbind()},c.update=function(l){l&&("bounds"in l&&(this.bounds=l.bounds),"position"in l&&(this.position=l.position),"lineWidth"in l&&(this.lineWidth=l.lineWidth),"colors"in l&&(this.colors=l.colors),"enabled"in l&&(this.enabled=l.enabled),"drawSides"in l&&(this.drawSides=l.drawSides))},c.dispose=function(){this.vao.dispose(),this.buffer.dispose(),this.shader.dispose()};function T(l,_){var w=[];function S(u,y,f,P,L,z){var F=[u,y,f,0,0,0,1];F[P+3]=1,F[P]=L,w.push.apply(w,F),F[6]=-1,w.push.apply(w,F),F[P]=z,w.push.apply(w,F),w.push.apply(w,F),F[6]=1,w.push.apply(w,F),F[P]=L,w.push.apply(w,F)}S(0,0,0,0,0,1),S(0,0,0,1,0,1),S(0,0,0,2,0,1),S(1,0,0,1,-1,1),S(1,0,0,2,-1,1),S(0,1,0,0,-1,1),S(0,1,0,2,-1,1),S(0,0,1,0,-1,1),S(0,0,1,1,-1,1);var E=o(l,w),m=a(l,[{type:l.FLOAT,buffer:E,size:3,offset:0,stride:28},{type:l.FLOAT,buffer:E,size:3,offset:12,stride:28},{type:l.FLOAT,buffer:E,size:1,offset:24,stride:28}]),b=i(l);b.attributes.position.location=0,b.attributes.color.location=1,b.attributes.weight.location=2;var d=new s(l,E,m,b);return d.update(_),d}},6740:function(e,t,r){var o=r(3236),a=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the tube vertex and normal at the given index.
+//
+// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
+//
+// Each tube segment is made up of a ring of vertices.
+// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
+// The indexes of tube segments run from 0 to 8.
+//
+vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
+ float segmentCount = 8.0;
+
+ float angle = 2.0 * 3.14159 * (index / segmentCount);
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d);
+ vec3 y = v * sin(angle) * length(d);
+ vec3 v3 = x + y;
+
+ normal = normalize(v3);
+
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 color, position;
+attribute vec2 uv;
+
+uniform float vectorScale, tubeScale;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 eyePosition, lightPosition;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ // Scale the vector magnitude to stay constant with
+ // model & view changes.
+ vec3 normal;
+ vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
+ vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * tubePosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ f_lightDirection = lightPosition - cameraCoordinate.xyz;
+ f_eyeDirection = eyePosition - cameraCoordinate.xyz;
+ f_normal = normalize((vec4(normal, 0.0) * inverseModel).xyz);
+
+ // vec4 m_position = model * vec4(tubePosition, 1.0);
+ vec4 t_position = view * tubePosition;
+ gl_Position = projection * t_position;
+
+ f_color = color;
+ f_data = tubePosition.xyz;
+ f_position = position.xyz;
+ f_uv = uv;
+}
+`]),i=o([`#extension GL_OES_standard_derivatives : enable
+
+precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float cookTorranceSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness,
+ float fresnel) {
+
+ float VdotN = max(dot(viewDirection, surfaceNormal), 0.0);
+ float LdotN = max(dot(lightDirection, surfaceNormal), 0.0);
+
+ //Half angle vector
+ vec3 H = normalize(lightDirection + viewDirection);
+
+ //Geometric term
+ float NdotH = max(dot(surfaceNormal, H), 0.0);
+ float VdotH = max(dot(viewDirection, H), 0.000001);
+ float LdotH = max(dot(lightDirection, H), 0.000001);
+ float G1 = (2.0 * NdotH * VdotN) / VdotH;
+ float G2 = (2.0 * NdotH * LdotN) / LdotH;
+ float G = min(1.0, min(G1, G2));
+
+ //Distribution term
+ float D = beckmannDistribution(NdotH, roughness);
+
+ //Fresnel term
+ float F = pow(1.0 - VdotN, fresnel);
+
+ //Multiply terms and done
+ return G * F * D / max(3.14159265 * VdotN, 0.000001);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform sampler2D texture;
+
+varying vec3 f_normal, f_lightDirection, f_eyeDirection, f_data, f_position;
+varying vec4 f_color;
+varying vec2 f_uv;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+ vec3 N = normalize(f_normal);
+ vec3 L = normalize(f_lightDirection);
+ vec3 V = normalize(f_eyeDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = min(1.0, max(0.0, cookTorranceSpecular(L, V, N, roughness, fresnel)));
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ vec4 surfaceColor = f_color * texture2D(texture, f_uv);
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = litColor * opacity;
+}
+`]),n=o([`precision highp float;
+
+precision highp float;
+#define GLSLIFY 1
+
+vec3 getOrthogonalVector(vec3 v) {
+ // Return up-vector for only-z vector.
+ // 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).
+ // From the above if-statement we have ||a|| > 0 U ||b|| > 0.
+ // Assign z = 0, x = -b, y = a:
+ // a*-b + b*a + c*0 = -ba + ba + 0 = 0
+ if (v.x*v.x > v.z*v.z || v.y*v.y > v.z*v.z) {
+ return normalize(vec3(-v.y, v.x, 0.0));
+ } else {
+ return normalize(vec3(0.0, v.z, -v.y));
+ }
+}
+
+// Calculate the tube vertex and normal at the given index.
+//
+// The returned vertex is for a tube ring with its center at origin, radius of length(d), pointing in the direction of d.
+//
+// Each tube segment is made up of a ring of vertices.
+// These vertices are used to make up the triangles of the tube by connecting them together in the vertex array.
+// The indexes of tube segments run from 0 to 8.
+//
+vec3 getTubePosition(vec3 d, float index, out vec3 normal) {
+ float segmentCount = 8.0;
+
+ float angle = 2.0 * 3.14159 * (index / segmentCount);
+
+ vec3 u = getOrthogonalVector(d);
+ vec3 v = normalize(cross(u, d));
+
+ vec3 x = u * cos(angle) * length(d);
+ vec3 y = v * sin(angle) * length(d);
+ vec3 v3 = x + y;
+
+ normal = normalize(v3);
+
+ return v3;
+}
+
+attribute vec4 vector;
+attribute vec4 position;
+attribute vec4 id;
+
+uniform mat4 model, view, projection;
+uniform float tubeScale;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ vec3 normal;
+ vec3 XYZ = getTubePosition(mat3(model) * (tubeScale * vector.w * normalize(vector.xyz)), position.w, normal);
+ vec4 tubePosition = model * vec4(position.xyz, 1.0) + vec4(XYZ, 0.0);
+
+ gl_Position = projection * (view * tubePosition);
+ f_id = id;
+ f_position = position.xyz;
+}
+`]),s=o([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying vec3 f_position;
+varying vec4 f_id;
+
+void main() {
+ if (outOfRange(clipBounds[0], clipBounds[1], f_position)) discard;
+
+ gl_FragColor = vec4(pickId, f_id.xyz);
+}`]);t.meshShader={vertex:a,fragment:i,attributes:[{name:"position",type:"vec4"},{name:"color",type:"vec4"},{name:"uv",type:"vec2"},{name:"vector",type:"vec4"}]},t.pickShader={vertex:n,fragment:s,attributes:[{name:"position",type:"vec4"},{name:"id",type:"vec4"},{name:"vector",type:"vec4"}]}},7815:function(e,t,r){"use strict";var o=r(2931),a=r(9970),i=["xyz","xzy","yxz","yzx","zxy","zyx"],n=function(S,E,m,b){for(var d=S.points,u=S.velocities,y=S.divergences,f=[],P=[],L=[],z=[],F=[],B=[],O=0,I=0,N=a.create(),U=a.create(),W=8,Q=0;Q<d.length;Q++){var ue=d[Q],se=u[Q],he=y[Q];E===0&&(he=m*.05),I=o.length(se)/b,N=a.create(),o.copy(N,se),N[3]=he;for(var G=0;G<W;G++)F[G]=[ue[0],ue[1],ue[2],G];if(z.length>0)for(var G=0;G<W;G++){var $=(G+1)%W;f.push(z[G],F[G],F[$],F[$],z[$],z[G]),L.push(U,N,N,N,U,U),B.push(O,I,I,I,O,O);var J=f.length;P.push([J-6,J-5,J-4],[J-3,J-2,J-1])}var Z=z;z=F,F=Z;var re=U;U=N,N=re;var ne=O;O=I,I=ne}return{positions:f,cells:P,vectors:L,vertexIntensity:B}},s=function(S,E,m,b){for(var d=0,u=0;u<S.length;u++)for(var y=S[u].velocities,f=0;f<y.length;f++)d=Math.max(d,o.length(y[f]));for(var P=S.map(function(Q){return n(Q,m,b,d)}),L=[],z=[],F=[],B=[],u=0;u<P.length;u++){var O=P[u],I=L.length;L=L.concat(O.positions),F=F.concat(O.vectors),B=B.concat(O.vertexIntensity);for(var f=0;f<O.cells.length;f++){var N=O.cells[f],U=[];z.push(U);for(var W=0;W<N.length;W++)U.push(N[W]+I)}}return{positions:L,cells:z,vectors:F,vertexIntensity:B,colormap:E}},c=function(S,E){var m=S.length,b;for(b=0;b<m;b++){var d=S[b];if(d===E)return b;if(d>E)return b-1}return b},h=function(S,E,m){return S<E?E:S>m?m:S},v=function(S,E,m){var b=E.vectors,d=E.meshgrid,u=S[0],y=S[1],f=S[2],P=d[0].length,L=d[1].length,z=d[2].length,F=c(d[0],u),B=c(d[1],y),O=c(d[2],f),I=F+1,N=B+1,U=O+1;if(F=h(F,0,P-1),I=h(I,0,P-1),B=h(B,0,L-1),N=h(N,0,L-1),O=h(O,0,z-1),U=h(U,0,z-1),F<0||B<0||O<0||I>P-1||N>L-1||U>z-1)return o.create();var W=d[0][F],Q=d[0][I],ue=d[1][B],se=d[1][N],he=d[2][O],G=d[2][U],$=(u-W)/(Q-W),J=(y-ue)/(se-ue),Z=(f-he)/(G-he);isFinite($)||($=.5),isFinite(J)||(J=.5),isFinite(Z)||(Z=.5);var re,ne,j,ee,ie,fe;switch(m.reversedX&&(F=P-1-F,I=P-1-I),m.reversedY&&(B=L-1-B,N=L-1-N),m.reversedZ&&(O=z-1-O,U=z-1-U),m.filled){case 5:ie=O,fe=U,j=B*z,ee=N*z,re=F*z*L,ne=I*z*L;break;case 4:ie=O,fe=U,re=F*z,ne=I*z,j=B*z*P,ee=N*z*P;break;case 3:j=B,ee=N,ie=O*L,fe=U*L,re=F*L*z,ne=I*L*z;break;case 2:j=B,ee=N,re=F*L,ne=I*L,ie=O*L*P,fe=U*L*P;break;case 1:re=F,ne=I,ie=O*P,fe=U*P,j=B*P*z,ee=N*P*z;break;default:re=F,ne=I,j=B*P,ee=N*P,ie=O*P*L,fe=U*P*L;break}var be=b[re+j+ie],Ae=b[re+j+fe],Be=b[re+ee+ie],Ie=b[re+ee+fe],Ze=b[ne+j+ie],at=b[ne+j+fe],it=b[ne+ee+ie],et=b[ne+ee+fe],lt=o.create(),Me=o.create(),ge=o.create(),ce=o.create();o.lerp(lt,be,Ze,$),o.lerp(Me,Ae,at,$),o.lerp(ge,Be,it,$),o.lerp(ce,Ie,et,$);var ze=o.create(),tt=o.create();o.lerp(ze,lt,ge,J),o.lerp(tt,Me,ce,J);var nt=o.create();return o.lerp(nt,ze,tt,Z),nt},p=function(S,E){var m=E[0],b=E[1],d=E[2];return S[0]=m<0?-m:m,S[1]=b<0?-b:b,S[2]=d<0?-d:d,S},T=function(S){var E=1/0;S.sort(function(u,y){return u-y});for(var m=S.length,b=1;b<m;b++){var d=Math.abs(S[b]-S[b-1]);d<E&&(E=d)}return E},l=function(S){for(var E=[],m=[],b=[],d={},u={},y={},f=S.length,P=0;P<f;P++){var L=S[P],z=L[0],F=L[1],B=L[2];d[z]||(E.push(z),d[z]=!0),u[F]||(m.push(F),u[F]=!0),y[B]||(b.push(B),y[B]=!0)}var O=T(E),I=T(m),N=T(b),U=Math.min(O,I,N);return isFinite(U)?U:1};e.exports=function(S,E){var m=S.startingPositions,b=S.maxLength||1e3,d=S.tubeSize||1,u=S.absoluteTubeSize,y=S.gridFill||"+x+y+z",f={};y.indexOf("-x")!==-1&&(f.reversedX=!0),y.indexOf("-y")!==-1&&(f.reversedY=!0),y.indexOf("-z")!==-1&&(f.reversedZ=!0),f.filled=i.indexOf(y.replace(/-/g,"").replace(/\+/g,""));var P=S.getVelocity||function(at){return v(at,S,f)},L=S.getDivergence||function(at,it){var et=o.create(),lt=1e-4;o.add(et,at,[lt,0,0]);var Me=P(et);o.subtract(Me,Me,it),o.scale(Me,Me,1/lt),o.add(et,at,[0,lt,0]);var ge=P(et);o.subtract(ge,ge,it),o.scale(ge,ge,1/lt),o.add(et,at,[0,0,lt]);var ce=P(et);return o.subtract(ce,ce,it),o.scale(ce,ce,1/lt),o.add(et,Me,ge),o.add(et,et,ce),et},z=[],F=E[0][0],B=E[0][1],O=E[0][2],I=E[1][0],N=E[1][1],U=E[1][2],W=function(at){var it=at[0],et=at[1],lt=at[2];return!(it<F||it>I||et<B||et>N||lt<O||lt>U)},Q=o.distance(E[0],E[1]),ue=10*Q/b,se=ue*ue,he=1,G=0,$=m.length;$>1&&(he=l(m));for(var J=0;J<$;J++){var Z=o.create();o.copy(Z,m[J]);var re=[Z],ne=[],j=P(Z),ee=Z;ne.push(j);var ie=[],fe=L(Z,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be),z.push({points:re,velocities:ne,divergences:ie});for(var Ae=0;Ae<b*100&&re.length<b&&W(Z);){Ae++;var Be=o.clone(j),Ie=o.squaredLength(Be);if(Ie===0)break;if(Ie>se&&o.scale(Be,Be,ue/Math.sqrt(Ie)),o.add(Be,Be,Z),j=P(Be),o.squaredDistance(ee,Be)-se>-1e-4*se){re.push(Be),ee=Be,ne.push(j);var fe=L(Be,j),be=o.length(fe);isFinite(be)&&be>G&&(G=be),ie.push(be)}Z=Be}}var Ze=s(z,S.colormap,G,he);return u?Ze.tubeScale=u:(G===0&&(G=1),Ze.tubeScale=d*.5*he/G),Ze};var _=r(6740),w=r(6405).createMesh;e.exports.createTubeMesh=function(S,E){return w(S,E,{shaders:_,traceType:"streamtube"})}},990:function(e,t,r){var o=r(9405),a=r(3236),i=a([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec4 uv;
+attribute vec3 f;
+attribute vec3 normal;
+
+uniform vec3 objectOffset;
+uniform mat4 model, view, projection, inverseModel;
+uniform vec3 lightPosition, eyePosition;
+uniform sampler2D colormap;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ vec3 localCoordinate = vec3(uv.zw, f.x);
+ worldCoordinate = objectOffset + localCoordinate;
+ mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
+ vec4 worldPosition = (model * objectOffsetTranslation) * vec4(localCoordinate, 1.0);
+ vec4 clipPosition = projection * (view * worldPosition);
+ gl_Position = clipPosition;
+ kill = f.y;
+ value = f.z;
+ planeCoordinate = uv.xy;
+
+ vColor = texture2D(colormap, vec2(value, value));
+
+ //Lighting geometry parameters
+ vec4 cameraCoordinate = view * worldPosition;
+ cameraCoordinate.xyz /= cameraCoordinate.w;
+ lightDirection = lightPosition - cameraCoordinate.xyz;
+ eyeDirection = eyePosition - cameraCoordinate.xyz;
+ surfaceNormal = normalize((vec4(normal,0) * inverseModel).xyz);
+}
+`]),n=a([`precision highp float;
+#define GLSLIFY 1
+
+float beckmannDistribution(float x, float roughness) {
+ float NdotH = max(x, 0.0001);
+ float cos2Alpha = NdotH * NdotH;
+ float tan2Alpha = (cos2Alpha - 1.0) / cos2Alpha;
+ float roughness2 = roughness * roughness;
+ float denom = 3.141592653589793 * roughness2 * cos2Alpha * cos2Alpha;
+ return exp(tan2Alpha / roughness2) / denom;
+}
+
+float beckmannSpecular(
+ vec3 lightDirection,
+ vec3 viewDirection,
+ vec3 surfaceNormal,
+ float roughness) {
+ return beckmannDistribution(dot(surfaceNormal, normalize(lightDirection + viewDirection)), roughness);
+}
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec3 lowerBound, upperBound;
+uniform float contourTint;
+uniform vec4 contourColor;
+uniform sampler2D colormap;
+uniform vec3 clipBounds[2];
+uniform float roughness, fresnel, kambient, kdiffuse, kspecular, opacity;
+uniform float vertexColor;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ if (
+ kill > 0.0 ||
+ vColor.a == 0.0 ||
+ outOfRange(clipBounds[0], clipBounds[1], worldCoordinate)
+ ) discard;
+
+ vec3 N = normalize(surfaceNormal);
+ vec3 V = normalize(eyeDirection);
+ vec3 L = normalize(lightDirection);
+
+ if(gl_FrontFacing) {
+ N = -N;
+ }
+
+ float specular = max(beckmannSpecular(L, V, N, roughness), 0.);
+ float diffuse = min(kambient + kdiffuse * max(dot(N, L), 0.0), 1.0);
+
+ //decide how to interpolate color \u2014 in vertex or in fragment
+ vec4 surfaceColor =
+ step(vertexColor, .5) * texture2D(colormap, vec2(value, value)) +
+ step(.5, vertexColor) * vColor;
+
+ vec4 litColor = surfaceColor.a * vec4(diffuse * surfaceColor.rgb + kspecular * vec3(1,1,1) * specular, 1.0);
+
+ gl_FragColor = mix(litColor, contourColor, contourTint) * opacity;
+}
+`]),s=a([`precision highp float;
+#define GLSLIFY 1
+
+attribute vec4 uv;
+attribute float f;
+
+uniform vec3 objectOffset;
+uniform mat3 permutation;
+uniform mat4 model, view, projection;
+uniform float height, zOffset;
+uniform sampler2D colormap;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 lightDirection, eyeDirection, surfaceNormal;
+varying vec4 vColor;
+
+void main() {
+ vec3 dataCoordinate = permutation * vec3(uv.xy, height);
+ worldCoordinate = objectOffset + dataCoordinate;
+ mat4 objectOffsetTranslation = mat4(1.0) + mat4(vec4(0), vec4(0), vec4(0), vec4(objectOffset, 0));
+ vec4 worldPosition = (model * objectOffsetTranslation) * vec4(dataCoordinate, 1.0);
+
+ vec4 clipPosition = projection * (view * worldPosition);
+ clipPosition.z += zOffset;
+
+ gl_Position = clipPosition;
+ value = f + objectOffset.z;
+ kill = -1.0;
+ planeCoordinate = uv.zw;
+
+ vColor = texture2D(colormap, vec2(value, value));
+
+ //Don't do lighting for contours
+ surfaceNormal = vec3(1,0,0);
+ eyeDirection = vec3(0,1,0);
+ lightDirection = vec3(0,0,1);
+}
+`]),c=a([`precision highp float;
+#define GLSLIFY 1
+
+bool outOfRange(float a, float b, float p) {
+ return ((p > max(a, b)) ||
+ (p < min(a, b)));
+}
+
+bool outOfRange(vec2 a, vec2 b, vec2 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y));
+}
+
+bool outOfRange(vec3 a, vec3 b, vec3 p) {
+ return (outOfRange(a.x, b.x, p.x) ||
+ outOfRange(a.y, b.y, p.y) ||
+ outOfRange(a.z, b.z, p.z));
+}
+
+bool outOfRange(vec4 a, vec4 b, vec4 p) {
+ return outOfRange(a.xyz, b.xyz, p.xyz);
+}
+
+uniform vec2 shape;
+uniform vec3 clipBounds[2];
+uniform float pickId;
+
+varying float value, kill;
+varying vec3 worldCoordinate;
+varying vec2 planeCoordinate;
+varying vec3 surfaceNormal;
+
+vec2 splitFloat(float v) {
+ float vh = 255.0 * v;
+ float upper = floor(vh);
+ float lower = fract(vh);
+ return vec2(upper / 255.0, floor(lower * 16.0) / 16.0);
+}
+
+void main() {
+ if ((kill > 0.0) ||
+ (outOfRange(clipBounds[0], clipBounds[1], worldCoordinate))) discard;
+
+ vec2 ux = splitFloat(planeCoordinate.x / shape.x);
+ vec2 uy = splitFloat(planeCoordinate.y / shape.y);
+ gl_FragColor = vec4(pickId, ux.x, uy.x, ux.y + (uy.y/16.0));
+}
+`]);t.createShader=function(h){var v=o(h,i,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createPickShader=function(h){var v=o(h,i,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"vec3"},{name:"normal",type:"vec3"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v.attributes.normal.location=2,v},t.createContourShader=function(h){var v=o(h,s,n,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v},t.createPickContourShader=function(h){var v=o(h,s,c,null,[{name:"uv",type:"vec4"},{name:"f",type:"float"}]);return v.attributes.uv.location=0,v.attributes.f.location=1,v}},9499:function(e,t,r){"use strict";e.exports=re;var o=r(8828),a=r(2762),i=r(8116),n=r(7766),s=r(1888),c=r(6729),h=r(5298),v=r(9994),p=r(9618),T=r(3711),l=r(6760),_=r(7608),w=r(2478),S=r(6199),E=r(990),m=E.createShader,b=E.createContourShader,d=E.createPickShader,u=E.createPickContourShader,y=4*10,f=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],P=[[0,0],[0,1],[1,0],[1,1],[1,0],[0,1]],L=[[0,0,0,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(){for(var ne=0;ne<3;++ne){var j=L[ne],ee=(ne+1)%3,ie=(ne+2)%3;j[ee+0]=1,j[ie+3]=1,j[ne+6]=1}})();function z(ne,j,ee,ie,fe){this.position=ne,this.index=j,this.uv=ee,this.level=ie,this.dataCoordinate=fe}var F=256;function B(ne,j,ee,ie,fe,be,Ae,Be,Ie,Ze,at,it,et,lt,Me){this.gl=ne,this.shape=j,this.bounds=ee,this.objectOffset=Me,this.intensityBounds=[],this._shader=ie,this._pickShader=fe,this._coordinateBuffer=be,this._vao=Ae,this._colorMap=Be,this._contourShader=Ie,this._contourPickShader=Ze,this._contourBuffer=at,this._contourVAO=it,this._contourOffsets=[[],[],[]],this._contourCounts=[[],[],[]],this._vertexCount=0,this._pickResult=new z([0,0,0],[0,0],[0,0],[0,0,0],[0,0,0]),this._dynamicBuffer=et,this._dynamicVAO=lt,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=[p(s.mallocFloat(1024),[0,0]),p(s.mallocFloat(1024),[0,0]),p(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.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 O=B.prototype;O.genColormap=function(ne,j){var ee=!1,ie=v([c({colormap:ne,nshades:F,format:"rgba"}).map(function(fe,be){var Ae=j?I(be/255,j):fe[3];return Ae<1&&(ee=!0),[fe[0],fe[1],fe[2],255*Ae]})]);return h.divseq(ie,255),this.hasAlphaScale=ee,ie},O.isTransparent=function(){return this.opacity<1||this.hasAlphaScale},O.isOpaque=function(){return!this.isTransparent()},O.pickSlots=1,O.setPickBase=function(ne){this.pickId=ne};function I(ne,j){if(!j||!j.length)return 1;for(var ee=0;ee<j.length;++ee){if(j.length<2)return 1;if(j[ee][0]===ne)return j[ee][1];if(j[ee][0]>ne&&ee>0){var ie=(j[ee][0]-ne)/(j[ee][0]-j[ee-1][0]);return j[ee][1]*(1-ie)+ie*j[ee-1][1]}}return 1}var N=[0,0,0],U={showSurface:!1,showContour:!1,projections:[f.slice(),f.slice(),f.slice()],clipBounds:[[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]],[[0,0,0],[0,0,0]]]};function W(ne,j){var ee,ie,fe,be=j.axes&&j.axes.lastCubeProps.axis||N,Ae=j.showSurface,Be=j.showContour;for(ee=0;ee<3;++ee)for(Ae=Ae||j.surfaceProject[ee],ie=0;ie<3;++ie)Be=Be||j.contourProject[ee][ie];for(ee=0;ee<3;++ee){var Ie=U.projections[ee];for(ie=0;ie<16;++ie)Ie[ie]=0;for(ie=0;ie<4;++ie)Ie[5*ie]=1;Ie[5*ee]=0,Ie[12+ee]=j.axesBounds[+(be[ee]>0)][ee],l(Ie,ne.model,Ie);var Ze=U.clipBounds[ee];for(fe=0;fe<2;++fe)for(ie=0;ie<3;++ie)Ze[fe][ie]=ne.clipBounds[fe][ie];Ze[0][ee]=-1e8,Ze[1][ee]=1e8}return U.showSurface=Ae,U.showContour=Be,U}var Q={model:f,view:f,projection:f,inverseModel:f.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},ue=f.slice(),se=[1,0,0,0,1,0,0,0,1];function he(ne,j){ne=ne||{};var ee=this.gl;ee.disable(ee.CULL_FACE),this._colorMap.bind(0);var ie=Q;ie.model=ne.model||f,ie.view=ne.view||f,ie.projection=ne.projection||f,ie.lowerBound=[this.bounds[0][0],this.bounds[0][1],this.colorBounds[0]||this.bounds[0][2]],ie.upperBound=[this.bounds[1][0],this.bounds[1][1],this.colorBounds[1]||this.bounds[1][2]],ie.objectOffset=this.objectOffset,ie.contourColor=this.contourColor[0],ie.inverseModel=_(ie.inverseModel,ie.model);for(var fe=0;fe<2;++fe)for(var be=ie.clipBounds[fe],Ae=0;Ae<3;++Ae)be[Ae]=Math.min(Math.max(this.clipBounds[fe][Ae],-1e8),1e8);ie.kambient=this.ambientLight,ie.kdiffuse=this.diffuseLight,ie.kspecular=this.specularLight,ie.roughness=this.roughness,ie.fresnel=this.fresnel,ie.opacity=this.opacity,ie.height=0,ie.permutation=se,ie.vertexColor=this.vertexColor;var Be=ue;for(l(Be,ie.view,ie.model),l(Be,ie.projection,Be),_(Be,Be),fe=0;fe<3;++fe)ie.eyePosition[fe]=Be[12+fe]/Be[15];var Ie=Be[15];for(fe=0;fe<3;++fe)Ie+=this.lightPosition[fe]*Be[4*fe+3];for(fe=0;fe<3;++fe){var Ze=Be[12+fe];for(Ae=0;Ae<3;++Ae)Ze+=Be[4*Ae+fe]*this.lightPosition[Ae];ie.lightPosition[fe]=Ze/Ie}var at=W(ie,this);if(at.showSurface){for(this._shader.bind(),this._shader.uniforms=ie,this._vao.bind(),this.showSurface&&this._vertexCount&&this._vao.draw(ee.TRIANGLES,this._vertexCount),fe=0;fe<3;++fe)!this.surfaceProject[fe]||!this.vertexCount||(this._shader.uniforms.model=at.projections[fe],this._shader.uniforms.clipBounds=at.clipBounds[fe],this._vao.draw(ee.TRIANGLES,this._vertexCount));this._vao.unbind()}if(at.showContour){var it=this._contourShader;ie.kambient=1,ie.kdiffuse=0,ie.kspecular=0,ie.opacity=1,it.bind(),it.uniforms=ie;var et=this._contourVAO;for(et.bind(),fe=0;fe<3;++fe)for(it.uniforms.permutation=L[fe],ee.lineWidth(this.contourWidth[fe]*this.pixelRatio),Ae=0;Ae<this.contourLevels[fe].length;++Ae)Ae===this.highlightLevel[fe]?(it.uniforms.contourColor=this.highlightColor[fe],it.uniforms.contourTint=this.highlightTint[fe]):(Ae===0||Ae-1===this.highlightLevel[fe])&&(it.uniforms.contourColor=this.contourColor[fe],it.uniforms.contourTint=this.contourTint[fe]),this._contourCounts[fe][Ae]&&(it.uniforms.height=this.contourLevels[fe][Ae],et.draw(ee.LINES,this._contourCounts[fe][Ae],this._contourOffsets[fe][Ae]));for(fe=0;fe<3;++fe)for(it.uniforms.model=at.projections[fe],it.uniforms.clipBounds=at.clipBounds[fe],Ae=0;Ae<3;++Ae)if(this.contourProject[fe][Ae]){it.uniforms.permutation=L[Ae],ee.lineWidth(this.contourWidth[Ae]*this.pixelRatio);for(var lt=0;lt<this.contourLevels[Ae].length;++lt)lt===this.highlightLevel[Ae]?(it.uniforms.contourColor=this.highlightColor[Ae],it.uniforms.contourTint=this.highlightTint[Ae]):(lt===0||lt-1===this.highlightLevel[Ae])&&(it.uniforms.contourColor=this.contourColor[Ae],it.uniforms.contourTint=this.contourTint[Ae]),this._contourCounts[Ae][lt]&&(it.uniforms.height=this.contourLevels[Ae][lt],et.draw(ee.LINES,this._contourCounts[Ae][lt],this._contourOffsets[Ae][lt]))}for(et.unbind(),et=this._dynamicVAO,et.bind(),fe=0;fe<3;++fe)if(this._dynamicCounts[fe]!==0)for(it.uniforms.model=ie.model,it.uniforms.clipBounds=ie.clipBounds,it.uniforms.permutation=L[fe],ee.lineWidth(this.dynamicWidth[fe]*this.pixelRatio),it.uniforms.contourColor=this.dynamicColor[fe],it.uniforms.contourTint=this.dynamicTint[fe],it.uniforms.height=this.dynamicLevel[fe],et.draw(ee.LINES,this._dynamicCounts[fe],this._dynamicOffsets[fe]),Ae=0;Ae<3;++Ae)this.contourProject[Ae][fe]&&(it.uniforms.model=at.projections[Ae],it.uniforms.clipBounds=at.clipBounds[Ae],et.draw(ee.LINES,this._dynamicCounts[fe],this._dynamicOffsets[fe]));et.unbind()}}O.draw=function(ne){return he.call(this,ne,!1)},O.drawTransparent=function(ne){return he.call(this,ne,!0)};var G={model:f,view:f,projection:f,inverseModel:f,clipBounds:[[0,0,0],[0,0,0]],height:0,shape:[0,0],pickId:0,lowerBound:[0,0,0],upperBound:[0,0,0],zOffset:0,objectOffset:[0,0,0],permutation:[1,0,0,0,1,0,0,0,1],lightPosition:[0,0,0],eyePosition:[0,0,0]};O.drawPick=function(ne){ne=ne||{};var j=this.gl;j.disable(j.CULL_FACE);var ee=G;ee.model=ne.model||f,ee.view=ne.view||f,ee.projection=ne.projection||f,ee.shape=this._field[2].shape,ee.pickId=this.pickId/255,ee.lowerBound=this.bounds[0],ee.upperBound=this.bounds[1],ee.objectOffset=this.objectOffset,ee.permutation=se;for(var ie=0;ie<2;++ie)for(var fe=ee.clipBounds[ie],be=0;be<3;++be)fe[be]=Math.min(Math.max(this.clipBounds[ie][be],-1e8),1e8);var Ae=W(ee,this);if(Ae.showSurface){for(this._pickShader.bind(),this._pickShader.uniforms=ee,this._vao.bind(),this._vao.draw(j.TRIANGLES,this._vertexCount),ie=0;ie<3;++ie)this.surfaceProject[ie]&&(this._pickShader.uniforms.model=Ae.projections[ie],this._pickShader.uniforms.clipBounds=Ae.clipBounds[ie],this._vao.draw(j.TRIANGLES,this._vertexCount));this._vao.unbind()}if(Ae.showContour){var Be=this._contourPickShader;Be.bind(),Be.uniforms=ee;var Ie=this._contourVAO;for(Ie.bind(),be=0;be<3;++be)for(j.lineWidth(this.contourWidth[be]*this.pixelRatio),Be.uniforms.permutation=L[be],ie=0;ie<this.contourLevels[be].length;++ie)this._contourCounts[be][ie]&&(Be.uniforms.height=this.contourLevels[be][ie],Ie.draw(j.LINES,this._contourCounts[be][ie],this._contourOffsets[be][ie]));for(ie=0;ie<3;++ie)for(Be.uniforms.model=Ae.projections[ie],Be.uniforms.clipBounds=Ae.clipBounds[ie],be=0;be<3;++be)if(this.contourProject[ie][be]){Be.uniforms.permutation=L[be],j.lineWidth(this.contourWidth[be]*this.pixelRatio);for(var Ze=0;Ze<this.contourLevels[be].length;++Ze)this._contourCounts[be][Ze]&&(Be.uniforms.height=this.contourLevels[be][Ze],Ie.draw(j.LINES,this._contourCounts[be][Ze],this._contourOffsets[be][Ze]))}Ie.unbind()}},O.pick=function(ne){if(!ne||ne.id!==this.pickId)return null;var j=this._field[2].shape,ee=this._pickResult,ie=j[0]*(ne.value[0]+(ne.value[2]>>4)/16)/255,fe=Math.floor(ie),be=ie-fe,Ae=j[1]*(ne.value[1]+(ne.value[2]&15)/16)/255,Be=Math.floor(Ae),Ie=Ae-Be;fe+=1,Be+=1;var Ze=ee.position;Ze[0]=Ze[1]=Ze[2]=0;for(var at=0;at<2;++at)for(var it=at?be:1-be,et=0;et<2;++et)for(var lt=et?Ie:1-Ie,Me=fe+at,ge=Be+et,ce=it*lt,ze=0;ze<3;++ze)Ze[ze]+=this._field[ze].get(Me,ge)*ce;for(var tt=this._pickResult.level,nt=0;nt<3;++nt)if(tt[nt]=w.le(this.contourLevels[nt],Ze[nt]),tt[nt]<0)this.contourLevels[nt].length>0&&(tt[nt]=0);else if(tt[nt]<this.contourLevels[nt].length-1){var Qe=this.contourLevels[nt][tt[nt]],Ct=this.contourLevels[nt][tt[nt]+1];Math.abs(Qe-Ze[nt])>Math.abs(Ct-Ze[nt])&&(tt[nt]+=1)}for(ee.index[0]=be<.5?fe:fe+1,ee.index[1]=Ie<.5?Be:Be+1,ee.uv[0]=ie/j[0],ee.uv[1]=Ae/j[1],ze=0;ze<3;++ze)ee.dataCoordinate[ze]=this._field[ze].get(ee.index[0],ee.index[1]);return ee},O.padField=function(ne,j){var ee=j.shape.slice(),ie=ne.shape.slice();h.assign(ne.lo(1,1).hi(ee[0],ee[1]),j),h.assign(ne.lo(1).hi(ee[0],1),j.hi(ee[0],1)),h.assign(ne.lo(1,ie[1]-1).hi(ee[0],1),j.lo(0,ee[1]-1).hi(ee[0],1)),h.assign(ne.lo(0,1).hi(1,ee[1]),j.hi(1)),h.assign(ne.lo(ie[0]-1,1).hi(1,ee[1]),j.lo(ee[0]-1)),ne.set(0,0,j.get(0,0)),ne.set(0,ie[1]-1,j.get(0,ee[1]-1)),ne.set(ie[0]-1,0,j.get(ee[0]-1,0)),ne.set(ie[0]-1,ie[1]-1,j.get(ee[0]-1,ee[1]-1))};function $(ne,j){return Array.isArray(ne)?[j(ne[0]),j(ne[1]),j(ne[2])]:[j(ne),j(ne),j(ne)]}function J(ne){return Array.isArray(ne)?ne.length===3?[ne[0],ne[1],ne[2],1]:[ne[0],ne[1],ne[2],ne[3]]:[0,0,0,1]}function Z(ne){if(Array.isArray(ne)){if(Array.isArray(ne))return[J(ne[0]),J(ne[1]),J(ne[2])];var j=J(ne);return[j.slice(),j.slice(),j.slice()]}}O.update=function(ne){ne=ne||{},this.objectOffset=ne.objectOffset||this.objectOffset,this.dirty=!0,"contourWidth"in ne&&(this.contourWidth=$(ne.contourWidth,Number)),"showContour"in ne&&(this.showContour=$(ne.showContour,Boolean)),"showSurface"in ne&&(this.showSurface=!!ne.showSurface),"contourTint"in ne&&(this.contourTint=$(ne.contourTint,Boolean)),"contourColor"in ne&&(this.contourColor=Z(ne.contourColor)),"contourProject"in ne&&(this.contourProject=$(ne.contourProject,function($a){return $($a,Boolean)})),"surfaceProject"in ne&&(this.surfaceProject=ne.surfaceProject),"dynamicColor"in ne&&(this.dynamicColor=Z(ne.dynamicColor)),"dynamicTint"in ne&&(this.dynamicTint=$(ne.dynamicTint,Number)),"dynamicWidth"in ne&&(this.dynamicWidth=$(ne.dynamicWidth,Number)),"opacity"in ne&&(this.opacity=ne.opacity),"opacityscale"in ne&&(this.opacityscale=ne.opacityscale),"colorBounds"in ne&&(this.colorBounds=ne.colorBounds),"vertexColor"in ne&&(this.vertexColor=ne.vertexColor?1:0),"colormap"in ne&&this._colorMap.setPixels(this.genColormap(ne.colormap,this.opacityscale));var j=ne.field||ne.coords&&ne.coords[2]||null,ee=!1;if(j||(this._field[2].shape[0]||this._field[2].shape[2]?j=this._field[2].lo(1,1).hi(this._field[2].shape[0]-2,this._field[2].shape[1]-2):j=this._field[2].hi(0,0)),"field"in ne||"coords"in ne){var ie=(j.shape[0]+2)*(j.shape[1]+2);ie>this._field[2].data.length&&(s.freeFloat(this._field[2].data),this._field[2].data=s.mallocFloat(o.nextPow2(ie))),this._field[2]=p(this._field[2].data,[j.shape[0]+2,j.shape[1]+2]),this.padField(this._field[2],j),this.shape=j.shape.slice();for(var fe=this.shape,be=0;be<2;++be)this._field[2].size>this._field[be].data.length&&(s.freeFloat(this._field[be].data),this._field[be].data=s.mallocFloat(this._field[2].size)),this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2]);if(ne.coords){var Ae=ne.coords;if(!Array.isArray(Ae)||Ae.length!==3)throw new Error("gl-surface: invalid coordinates for x/y");for(be=0;be<2;++be){var Be=Ae[be];for(et=0;et<2;++et)if(Be.shape[et]!==fe[et])throw new Error("gl-surface: coords have incorrect shape");this.padField(this._field[be],Be)}}else if(ne.ticks){var Ie=ne.ticks;if(!Array.isArray(Ie)||Ie.length!==2)throw new Error("gl-surface: invalid ticks");for(be=0;be<2;++be){var Ze=Ie[be];if((Array.isArray(Ze)||Ze.length)&&(Ze=p(Ze)),Ze.shape[0]!==fe[be])throw new Error("gl-surface: invalid tick length");var at=p(Ze.data,fe);at.stride[be]=Ze.stride[0],at.stride[be^1]=0,this.padField(this._field[be],at)}}else{for(be=0;be<2;++be){var it=[0,0];it[be]=1,this._field[be]=p(this._field[be].data,[fe[0]+2,fe[1]+2],it,0)}this._field[0].set(0,0,0);for(var et=0;et<fe[0];++et)this._field[0].set(et+1,0,et);for(this._field[0].set(fe[0]+1,0,fe[0]-1),this._field[1].set(0,0,0),et=0;et<fe[1];++et)this._field[1].set(0,et+1,et);this._field[1].set(0,fe[1]+1,fe[1]-1)}var lt=this._field,Me=p(s.mallocFloat(lt[2].size*3*2),[3,fe[0]+2,fe[1]+2,2]);for(be=0;be<3;++be)S(Me.pick(be),lt[be],"mirror");var ge=p(s.mallocFloat(lt[2].size*3),[fe[0]+2,fe[1]+2,3]);for(be=0;be<fe[0]+2;++be)for(et=0;et<fe[1]+2;++et){var ce=Me.get(0,be,et,0),ze=Me.get(0,be,et,1),tt=Me.get(1,be,et,0),nt=Me.get(1,be,et,1),Qe=Me.get(2,be,et,0),Ct=Me.get(2,be,et,1),St=tt*Ct-nt*Qe,Ot=Qe*ze-Ct*ce,jt=ce*nt-ze*tt,ur=Math.sqrt(St*St+Ot*Ot+jt*jt);ur<1e-8?(ur=Math.max(Math.abs(St),Math.abs(Ot),Math.abs(jt)),ur<1e-8?(jt=1,Ot=St=0,ur=1):ur=1/ur):ur=1/Math.sqrt(ur),ge.set(be,et,0,St*ur),ge.set(be,et,1,Ot*ur),ge.set(be,et,2,jt*ur)}s.free(Me.data);var ar=[1/0,1/0,1/0],Cr=[-1/0,-1/0,-1/0],vr=1/0,_r=-1/0,yt=(fe[0]-1)*(fe[1]-1)*6,Fe=s.mallocFloat(o.nextPow2(10*yt)),Ke=0,Ne=0;for(be=0;be<fe[0]-1;++be)e:for(et=0;et<fe[1]-1;++et){for(var Ee=0;Ee<2;++Ee)for(var Ve=0;Ve<2;++Ve)for(var ke=0;ke<3;++ke){var Te=this._field[ke].get(1+be+Ee,1+et+Ve);if(isNaN(Te)||!isFinite(Te))continue e}for(ke=0;ke<6;++ke){var Le=be+P[ke][0],rt=et+P[ke][1],dt=this._field[0].get(Le+1,rt+1),xt=this._field[1].get(Le+1,rt+1);Te=this._field[2].get(Le+1,rt+1),St=ge.get(Le+1,rt+1,0),Ot=ge.get(Le+1,rt+1,1),jt=ge.get(Le+1,rt+1,2),ne.intensity&&(It=ne.intensity.get(Le,rt));var It=ne.intensity?ne.intensity.get(Le,rt):Te+this.objectOffset[2];Fe[Ke++]=Le,Fe[Ke++]=rt,Fe[Ke++]=dt,Fe[Ke++]=xt,Fe[Ke++]=Te,Fe[Ke++]=0,Fe[Ke++]=It,Fe[Ke++]=St,Fe[Ke++]=Ot,Fe[Ke++]=jt,ar[0]=Math.min(ar[0],dt+this.objectOffset[0]),ar[1]=Math.min(ar[1],xt+this.objectOffset[1]),ar[2]=Math.min(ar[2],Te+this.objectOffset[2]),vr=Math.min(vr,It),Cr[0]=Math.max(Cr[0],dt+this.objectOffset[0]),Cr[1]=Math.max(Cr[1],xt+this.objectOffset[1]),Cr[2]=Math.max(Cr[2],Te+this.objectOffset[2]),_r=Math.max(_r,It),Ne+=1}}for(ne.intensityBounds&&(vr=+ne.intensityBounds[0],_r=+ne.intensityBounds[1]),be=6;be<Ke;be+=10)Fe[be]=(Fe[be]-vr)/(_r-vr);this._vertexCount=Ne,this._coordinateBuffer.update(Fe.subarray(0,Ke)),s.freeFloat(Fe),s.free(ge.data),this.bounds=[ar,Cr],this.intensity=ne.intensity||this._field[2],(this.intensityBounds[0]!==vr||this.intensityBounds[1]!==_r)&&(ee=!0),this.intensityBounds=[vr,_r]}if("levels"in ne){var Bt=ne.levels;for(Array.isArray(Bt[0])?Bt=Bt.slice():Bt=[[],[],Bt],be=0;be<3;++be)Bt[be]=Bt[be].slice(),Bt[be].sort(function($a,mt){return $a-mt});for(be=0;be<3;++be)for(et=0;et<Bt[be].length;++et)Bt[be][et]-=this.objectOffset[be];e:for(be=0;be<3;++be){if(Bt[be].length!==this.contourLevels[be].length){ee=!0;break}for(et=0;et<Bt[be].length;++et)if(Bt[be][et]!==this.contourLevels[be][et]){ee=!0;break e}}this.contourLevels=Bt}if(ee){lt=this._field,fe=this.shape;for(var Gt=[],Kt=0;Kt<3;++Kt){var sr=this.contourLevels[Kt],sa=[],Aa=[],La=[0,0,0];for(be=0;be<sr.length;++be){var ka=T(this._field[Kt],sr[be]);sa.push(Gt.length/5|0),Ne=0;e:for(et=0;et<ka.cells.length;++et){var Ga=ka.cells[et];for(ke=0;ke<2;++ke){var Ma=ka.positions[Ga[ke]],Ua=Ma[0],ni=Math.floor(Ua)|0,Wt=Ua-ni,zt=Ma[1],Vt=Math.floor(zt)|0,Ut=zt-Vt,xr=!1;t:for(var Zr=0;Zr<3;++Zr){La[Zr]=0;var pa=(Kt+Zr+1)%3;for(Ee=0;Ee<2;++Ee){var Xr=Ee?Wt:1-Wt;for(Le=Math.min(Math.max(ni+Ee,0),fe[0])|0,Ve=0;Ve<2;++Ve){var Ea=Ve?Ut:1-Ut;if(rt=Math.min(Math.max(Vt+Ve,0),fe[1])|0,Zr<2?Te=this._field[pa].get(Le,rt):Te=(this.intensity.get(Le,rt)-this.intensityBounds[0])/(this.intensityBounds[1]-this.intensityBounds[0]),!isFinite(Te)||isNaN(Te)){xr=!0;break t}var Fa=Xr*Ea;La[Zr]+=Fa*Te}}}if(!xr)Gt.push(La[0],La[1],Ma[0],Ma[1],La[2]),Ne+=1;else{if(ke>0){for(var qa=0;qa<5;++qa)Gt.pop();Ne-=1}continue e}}}Aa.push(Ne)}this._contourOffsets[Kt]=sa,this._contourCounts[Kt]=Aa}var ya=s.mallocFloat(Gt.length);for(be=0;be<Gt.length;++be)ya[be]=Gt[be];this._contourBuffer.update(ya),s.freeFloat(ya)}},O.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 ne=0;ne<3;++ne)s.freeFloat(this._field[ne].data)},O.highlight=function(ne){var j;if(!ne){this._dynamicCounts=[0,0,0],this.dyanamicLevel=[NaN,NaN,NaN],this.highlightLevel=[-1,-1,-1];return}for(j=0;j<3;++j)this.enableHighlight[j]?this.highlightLevel[j]=ne.level[j]:this.highlightLevel[j]=-1;var ee;for(this.snapToData?ee=ne.dataCoordinate:ee=ne.position,j=0;j<3;++j)ee[j]-=this.objectOffset[j];if(!((!this.enableDynamic[0]||ee[0]===this.dynamicLevel[0])&&(!this.enableDynamic[1]||ee[1]===this.dynamicLevel[1])&&(!this.enableDynamic[2]||ee[2]===this.dynamicLevel[2]))){for(var ie=0,fe=this.shape,be=s.mallocFloat(12*fe[0]*fe[1]),Ae=0;Ae<3;++Ae){if(!this.enableDynamic[Ae]){this.dynamicLevel[Ae]=NaN,this._dynamicCounts[Ae]=0;continue}this.dynamicLevel[Ae]=ee[Ae];var Be=(Ae+1)%3,Ie=(Ae+2)%3,Ze=this._field[Ae],at=this._field[Be],it=this._field[Ie],et=T(Ze,ee[Ae]),lt=et.cells,Me=et.positions;for(this._dynamicOffsets[Ae]=ie,j=0;j<lt.length;++j)for(var ge=lt[j],ce=0;ce<2;++ce){var ze=Me[ge[ce]],tt=+ze[0],nt=tt|0,Qe=Math.min(nt+1,fe[0])|0,Ct=tt-nt,St=1-Ct,Ot=+ze[1],jt=Ot|0,ur=Math.min(jt+1,fe[1])|0,ar=Ot-jt,Cr=1-ar,vr=St*Cr,_r=St*ar,yt=Ct*Cr,Fe=Ct*ar,Ke=vr*at.get(nt,jt)+_r*at.get(nt,ur)+yt*at.get(Qe,jt)+Fe*at.get(Qe,ur),Ne=vr*it.get(nt,jt)+_r*it.get(nt,ur)+yt*it.get(Qe,jt)+Fe*it.get(Qe,ur);if(isNaN(Ke)||isNaN(Ne)){ce&&(ie-=1);break}be[2*ie+0]=Ke,be[2*ie+1]=Ne,ie+=1}this._dynamicCounts[Ae]=ie-this._dynamicOffsets[Ae]}this._dynamicBuffer.update(be.subarray(0,2*ie)),s.freeFloat(be)}};function re(ne){var j=ne.gl,ee=m(j),ie=d(j),fe=b(j),be=u(j),Ae=a(j),Be=i(j,[{buffer:Ae,size:4,stride:y,offset:0},{buffer:Ae,size:3,stride:y,offset:16},{buffer:Ae,size:3,stride:y,offset:28}]),Ie=a(j),Ze=i(j,[{buffer:Ie,size:4,stride:20,offset:0},{buffer:Ie,size:1,stride:20,offset:16}]),at=a(j),it=i(j,[{buffer:at,size:2,type:j.FLOAT}]),et=n(j,1,F,j.RGBA,j.UNSIGNED_BYTE);et.minFilter=j.LINEAR,et.magFilter=j.LINEAR;var lt=new B(j,[0,0],[[0,0,0],[0,0,0]],ee,ie,Ae,Be,et,fe,be,Ie,Ze,at,it,[0,0,0]),Me={levels:[[],[],[]]};for(var ge in ne)Me[ge]=ne[ge];return Me.colormap=Me.colormap||"jet",lt.update(Me),lt}},7766:function(e,t,r){"use strict";var o=r(9618),a=r(5298),i=r(1888);e.exports=u;var n=null,s=null,c=null;function h(y){n=[y.LINEAR,y.NEAREST_MIPMAP_LINEAR,y.LINEAR_MIPMAP_NEAREST,y.LINEAR_MIPMAP_NEAREST],s=[y.NEAREST,y.LINEAR,y.NEAREST_MIPMAP_NEAREST,y.NEAREST_MIPMAP_LINEAR,y.LINEAR_MIPMAP_NEAREST,y.LINEAR_MIPMAP_LINEAR],c=[y.REPEAT,y.CLAMP_TO_EDGE,y.MIRRORED_REPEAT]}function v(y){return typeof HTMLCanvasElement<"u"&&y instanceof HTMLCanvasElement||typeof HTMLImageElement<"u"&&y instanceof HTMLImageElement||typeof HTMLVideoElement<"u"&&y instanceof HTMLVideoElement||typeof ImageData<"u"&&y instanceof ImageData}var p=function(y,f){a.muls(y,f,255)};function T(y,f,P){var L=y.gl,z=L.getParameter(L.MAX_TEXTURE_SIZE);if(f<0||f>z||P<0||P>z)throw new Error("gl-texture2d: Invalid texture size");return y._shape=[f,P],y.bind(),L.texImage2D(L.TEXTURE_2D,0,y.format,f,P,0,y.format,y.type,null),y._mipLevels=[0],y}function l(y,f,P,L,z,F){this.gl=y,this.handle=f,this.format=z,this.type=F,this._shape=[P,L],this._mipLevels=[0],this._magFilter=y.NEAREST,this._minFilter=y.NEAREST,this._wrapS=y.CLAMP_TO_EDGE,this._wrapT=y.CLAMP_TO_EDGE,this._anisoSamples=1;var B=this,O=[this._wrapS,this._wrapT];Object.defineProperties(O,[{get:function(){return B._wrapS},set:function(N){return B.wrapS=N}},{get:function(){return B._wrapT},set:function(N){return B.wrapT=N}}]),this._wrapVector=O;var I=[this._shape[0],this._shape[1]];Object.defineProperties(I,[{get:function(){return B._shape[0]},set:function(N){return B.width=N}},{get:function(){return B._shape[1]},set:function(N){return B.height=N}}]),this._shapeVector=I}var _=l.prototype;Object.defineProperties(_,{minFilter:{get:function(){return this._minFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MIN_FILTER,y),this._minFilter=y}},magFilter:{get:function(){return this._magFilter},set:function(y){this.bind();var f=this.gl;if(this.type===f.FLOAT&&n.indexOf(y)>=0&&(f.getExtension("OES_texture_float_linear")||(y=f.NEAREST)),s.indexOf(y)<0)throw new Error("gl-texture2d: Unknown filter mode "+y);return f.texParameteri(f.TEXTURE_2D,f.TEXTURE_MAG_FILTER,y),this._magFilter=y}},mipSamples:{get:function(){return this._anisoSamples},set:function(y){var f=this._anisoSamples;if(this._anisoSamples=Math.max(y,1)|0,f!==this._anisoSamples){var P=this.gl.getExtension("EXT_texture_filter_anisotropic");P&&this.gl.texParameterf(this.gl.TEXTURE_2D,P.TEXTURE_MAX_ANISOTROPY_EXT,this._anisoSamples)}return this._anisoSamples}},wrapS:{get:function(){return this._wrapS},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_S,y),this._wrapS=y}},wrapT:{get:function(){return this._wrapT},set:function(y){if(this.bind(),c.indexOf(y)<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);return this.gl.texParameteri(this.gl.TEXTURE_2D,this.gl.TEXTURE_WRAP_T,y),this._wrapT=y}},wrap:{get:function(){return this._wrapVector},set:function(y){if(Array.isArray(y)||(y=[y,y]),y.length!==2)throw new Error("gl-texture2d: Must specify wrap mode for rows and columns");for(var f=0;f<2;++f)if(c.indexOf(y[f])<0)throw new Error("gl-texture2d: Unknown wrap mode "+y);this._wrapS=y[0],this._wrapT=y[1];var P=this.gl;return this.bind(),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_S,this._wrapS),P.texParameteri(P.TEXTURE_2D,P.TEXTURE_WRAP_T,this._wrapT),y}},shape:{get:function(){return this._shapeVector},set:function(y){if(!Array.isArray(y))y=[y|0,y|0];else if(y.length!==2)throw new Error("gl-texture2d: Invalid texture shape");return T(this,y[0]|0,y[1]|0),[y[0]|0,y[1]|0]}},width:{get:function(){return this._shape[0]},set:function(y){return y=y|0,T(this,y,this._shape[1]),y}},height:{get:function(){return this._shape[1]},set:function(y){return y=y|0,T(this,this._shape[0],y),y}}}),_.bind=function(y){var f=this.gl;return y!==void 0&&f.activeTexture(f.TEXTURE0+(y|0)),f.bindTexture(f.TEXTURE_2D,this.handle),y!==void 0?y|0:f.getParameter(f.ACTIVE_TEXTURE)-f.TEXTURE0},_.dispose=function(){this.gl.deleteTexture(this.handle)},_.generateMipmap=function(){this.bind(),this.gl.generateMipmap(this.gl.TEXTURE_2D);for(var y=Math.min(this._shape[0],this._shape[1]),f=0;y>0;++f,y>>>=1)this._mipLevels.indexOf(f)<0&&this._mipLevels.push(f)},_.setPixels=function(y,f,P,L){var z=this.gl;this.bind(),Array.isArray(f)?(L=P,P=f[1]|0,f=f[0]|0):(f=f||0,P=P||0),L=L||0;var F=v(y)?y:y.raw;if(F){var B=this._mipLevels.indexOf(L)<0;B?(z.texImage2D(z.TEXTURE_2D,0,this.format,this.format,this.type,F),this._mipLevels.push(L)):z.texSubImage2D(z.TEXTURE_2D,L,f,P,this.format,this.type,F)}else if(y.shape&&y.stride&&y.data){if(y.shape.length<2||f+y.shape[1]>this._shape[1]>>>L||P+y.shape[0]>this._shape[0]>>>L||f<0||P<0)throw new Error("gl-texture2d: Texture dimensions are out of bounds");S(z,f,P,L,this.format,this.type,this._mipLevels,y)}else throw new Error("gl-texture2d: Unsupported data type")};function w(y,f){return y.length===3?f[2]===1&&f[1]===y[0]*y[2]&&f[0]===y[2]:f[0]===1&&f[1]===y[0]}function S(y,f,P,L,z,F,B,O){var I=O.dtype,N=O.shape.slice();if(N.length<2||N.length>3)throw new Error("gl-texture2d: Invalid ndarray, must be 2d or 3d");var U=0,W=0,Q=w(N,O.stride.slice());I==="float32"?U=y.FLOAT:I==="float64"?(U=y.FLOAT,Q=!1,I="float32"):I==="uint8"?U=y.UNSIGNED_BYTE:(U=y.UNSIGNED_BYTE,Q=!1,I="uint8");var ue=1;if(N.length===2)W=y.LUMINANCE,N=[N[0],N[1],1],O=o(O.data,N,[O.stride[0],O.stride[1],1],O.offset);else if(N.length===3){if(N[2]===1)W=y.ALPHA;else if(N[2]===2)W=y.LUMINANCE_ALPHA;else if(N[2]===3)W=y.RGB;else if(N[2]===4)W=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");ue=N[2]}else throw new Error("gl-texture2d: Invalid shape for texture");if((W===y.LUMINANCE||W===y.ALPHA)&&(z===y.LUMINANCE||z===y.ALPHA)&&(W=z),W!==z)throw new Error("gl-texture2d: Incompatible texture format for setPixels");var se=O.size,he=B.indexOf(L)<0;if(he&&B.push(L),U===F&&Q)O.offset===0&&O.data.length===se?he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data):he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,O.data.subarray(O.offset,O.offset+se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,O.data.subarray(O.offset,O.offset+se));else{var G;F===y.FLOAT?G=i.mallocFloat32(se):G=i.mallocUint8(se);var $=o(G,N,[N[2],N[2]*N[0],1]);U===y.FLOAT&&F===y.UNSIGNED_BYTE?p($,O):a.assign($,O),he?y.texImage2D(y.TEXTURE_2D,L,z,N[0],N[1],0,z,F,G.subarray(0,se)):y.texSubImage2D(y.TEXTURE_2D,L,f,P,N[0],N[1],z,F,G.subarray(0,se)),F===y.FLOAT?i.freeFloat32(G):i.freeUint8(G)}}function E(y){var f=y.createTexture();return y.bindTexture(y.TEXTURE_2D,f),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MIN_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_MAG_FILTER,y.NEAREST),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_S,y.CLAMP_TO_EDGE),y.texParameteri(y.TEXTURE_2D,y.TEXTURE_WRAP_T,y.CLAMP_TO_EDGE),f}function m(y,f,P,L,z){var F=y.getParameter(y.MAX_TEXTURE_SIZE);if(f<0||f>F||P<0||P>F)throw new Error("gl-texture2d: Invalid texture shape");if(z===y.FLOAT&&!y.getExtension("OES_texture_float"))throw new Error("gl-texture2d: Floating point textures not supported on this platform");var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,L,f,P,0,L,z,null),new l(y,B,f,P,L,z)}function b(y,f,P,L,z,F){var B=E(y);return y.texImage2D(y.TEXTURE_2D,0,z,z,F,f),new l(y,B,P,L,z,F)}function d(y,f){var P=f.dtype,L=f.shape.slice(),z=y.getParameter(y.MAX_TEXTURE_SIZE);if(L[0]<0||L[0]>z||L[1]<0||L[1]>z)throw new Error("gl-texture2d: Invalid texture size");var F=w(L,f.stride.slice()),B=0;P==="float32"?B=y.FLOAT:P==="float64"?(B=y.FLOAT,F=!1,P="float32"):P==="uint8"?B=y.UNSIGNED_BYTE:(B=y.UNSIGNED_BYTE,F=!1,P="uint8");var O=0;if(L.length===2)O=y.LUMINANCE,L=[L[0],L[1],1],f=o(f.data,L,[f.stride[0],f.stride[1],1],f.offset);else if(L.length===3)if(L[2]===1)O=y.ALPHA;else if(L[2]===2)O=y.LUMINANCE_ALPHA;else if(L[2]===3)O=y.RGB;else if(L[2]===4)O=y.RGBA;else throw new Error("gl-texture2d: Invalid shape for pixel coords");else throw new Error("gl-texture2d: Invalid shape for texture");B===y.FLOAT&&!y.getExtension("OES_texture_float")&&(B=y.UNSIGNED_BYTE,F=!1);var I,N,U=f.size;if(F)f.offset===0&&f.data.length===U?I=f.data:I=f.data.subarray(f.offset,f.offset+U);else{var W=[L[2],L[2]*L[0],1];N=i.malloc(U,P);var Q=o(N,L,W,0);(P==="float32"||P==="float64")&&B===y.UNSIGNED_BYTE?p(Q,f):a.assign(Q,f),I=N.subarray(0,U)}var ue=E(y);return y.texImage2D(y.TEXTURE_2D,0,O,L[0],L[1],0,O,B,I),F||i.free(N),new l(y,ue,L[0],L[1],O,B)}function u(y){if(arguments.length<=1)throw new Error("gl-texture2d: Missing arguments for texture2d constructor");if(n||h(y),typeof arguments[1]=="number")return m(y,arguments[1],arguments[2],arguments[3]||y.RGBA,arguments[4]||y.UNSIGNED_BYTE);if(Array.isArray(arguments[1]))return m(y,arguments[1][0]|0,arguments[1][1]|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(typeof arguments[1]=="object"){var f=arguments[1],P=v(f)?f:f.raw;if(P)return b(y,P,f.width|0,f.height|0,arguments[2]||y.RGBA,arguments[3]||y.UNSIGNED_BYTE);if(f.shape&&f.data&&f.stride)return d(y,f)}throw new Error("gl-texture2d: Invalid arguments for texture2d constructor")}},1433:function(e){"use strict";function t(r,o,a){o?o.bind():r.bindBuffer(r.ELEMENT_ARRAY_BUFFER,null);var i=r.getParameter(r.MAX_VERTEX_ATTRIBS)|0;if(a){if(a.length>i)throw new Error("gl-vao: Too many vertex attributes");for(var n=0;n<a.length;++n){var s=a[n];if(s.buffer){var c=s.buffer,h=s.size||4,v=s.type||r.FLOAT,p=!!s.normalized,T=s.stride||0,l=s.offset||0;c.bind(),r.enableVertexAttribArray(n),r.vertexAttribPointer(n,h,v,p,T,l)}else{if(typeof s=="number")r.vertexAttrib1f(n,s);else if(s.length===1)r.vertexAttrib1f(n,s[0]);else if(s.length===2)r.vertexAttrib2f(n,s[0],s[1]);else if(s.length===3)r.vertexAttrib3f(n,s[0],s[1],s[2]);else if(s.length===4)r.vertexAttrib4f(n,s[0],s[1],s[2],s[3]);else throw new Error("gl-vao: Invalid vertex attribute");r.disableVertexAttribArray(n)}}for(;n<i;++n)r.disableVertexAttribArray(n)}else{r.bindBuffer(r.ARRAY_BUFFER,null);for(var n=0;n<i;++n)r.disableVertexAttribArray(n)}}e.exports=t},870:function(e,t,r){"use strict";var o=r(1433);function a(n){this.gl=n,this._elements=null,this._attributes=null,this._elementsType=n.UNSIGNED_SHORT}a.prototype.bind=function(){o(this.gl,this._elements,this._attributes)},a.prototype.update=function(n,s,c){this._elements=s,this._attributes=n,this._elementsType=c||this.gl.UNSIGNED_SHORT},a.prototype.dispose=function(){},a.prototype.unbind=function(){},a.prototype.draw=function(n,s,c){c=c||0;var h=this.gl;this._elements?h.drawElements(n,s,this._elementsType,c):h.drawArrays(n,c,s)};function i(n){return new a(n)}e.exports=i},7518:function(e,t,r){"use strict";var o=r(1433);function a(s,c,h,v,p,T){this.location=s,this.dimension=c,this.a=h,this.b=v,this.c=p,this.d=T}a.prototype.bind=function(s){switch(this.dimension){case 1:s.vertexAttrib1f(this.location,this.a);break;case 2:s.vertexAttrib2f(this.location,this.a,this.b);break;case 3:s.vertexAttrib3f(this.location,this.a,this.b,this.c);break;case 4:s.vertexAttrib4f(this.location,this.a,this.b,this.c,this.d);break}};function i(s,c,h){this.gl=s,this._ext=c,this.handle=h,this._attribs=[],this._useElements=!1,this._elementsType=s.UNSIGNED_SHORT}i.prototype.bind=function(){this._ext.bindVertexArrayOES(this.handle);for(var s=0;s<this._attribs.length;++s)this._attribs[s].bind(this.gl)},i.prototype.unbind=function(){this._ext.bindVertexArrayOES(null)},i.prototype.dispose=function(){this._ext.deleteVertexArrayOES(this.handle)},i.prototype.update=function(s,c,h){if(this.bind(),o(this.gl,c,s),this.unbind(),this._attribs.length=0,s)for(var v=0;v<s.length;++v){var p=s[v];typeof p=="number"?this._attribs.push(new a(v,1,p)):Array.isArray(p)&&this._attribs.push(new a(v,p.length,p[0],p[1],p[2],p[3]))}this._useElements=!!c,this._elementsType=h||this.gl.UNSIGNED_SHORT},i.prototype.draw=function(s,c,h){h=h||0;var v=this.gl;this._useElements?v.drawElements(s,c,this._elementsType,h):v.drawArrays(s,h,c)};function n(s,c){return new i(s,c,c.createVertexArrayOES())}e.exports=n},8116:function(e,t,r){"use strict";var o=r(7518),a=r(870);function i(s){this.bindVertexArrayOES=s.bindVertexArray.bind(s),this.createVertexArrayOES=s.createVertexArray.bind(s),this.deleteVertexArrayOES=s.deleteVertexArray.bind(s)}function n(s,c,h,v){var p=s.createVertexArray?new i(s):s.getExtension("OES_vertex_array_object"),T;return p?T=o(s,p):T=a(s),T.update(c,h,v),T}e.exports=n},5632:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]+a[0],r[1]=o[1]+a[1],r[2]=o[2]+a[2],r}},8192:function(e,t,r){e.exports=n;var o=r(2825),a=r(3536),i=r(244);function n(s,c){var h=o(s[0],s[1],s[2]),v=o(c[0],c[1],c[2]);a(h,h),a(v,v);var p=i(h,v);return p>1?0:Math.acos(p)}},9226:function(e){e.exports=t;function t(r,o){return r[0]=Math.ceil(o[0]),r[1]=Math.ceil(o[1]),r[2]=Math.ceil(o[2]),r}},3126:function(e){e.exports=t;function t(r){var o=new Float32Array(3);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o}},3990:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r}},1091:function(e){e.exports=t;function t(){var r=new Float32Array(3);return r[0]=0,r[1]=0,r[2]=0,r}},5911:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2];return r[0]=n*v-s*h,r[1]=s*c-i*v,r[2]=i*h-n*c,r}},5455:function(e,t,r){e.exports=r(7056)},7056:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return Math.sqrt(a*a+i*i+n*n)}},4008:function(e,t,r){e.exports=r(6690)},6690:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r}},244:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]}},2613:function(e){e.exports=1e-6},9922:function(e,t,r){e.exports=a;var o=r(2613);function a(i,n){var s=i[0],c=i[1],h=i[2],v=n[0],p=n[1],T=n[2];return Math.abs(s-v)<=o*Math.max(1,Math.abs(s),Math.abs(v))&&Math.abs(c-p)<=o*Math.max(1,Math.abs(c),Math.abs(p))&&Math.abs(h-T)<=o*Math.max(1,Math.abs(h),Math.abs(T))}},9265:function(e){e.exports=t;function t(r,o){return r[0]===o[0]&&r[1]===o[1]&&r[2]===o[2]}},2681:function(e){e.exports=t;function t(r,o){return r[0]=Math.floor(o[0]),r[1]=Math.floor(o[1]),r[2]=Math.floor(o[2]),r}},5137:function(e,t,r){e.exports=a;var o=r(1091)();function a(i,n,s,c,h,v){var p,T;for(n||(n=3),s||(s=0),c?T=Math.min(c*n+s,i.length):T=i.length,p=s;p<T;p+=n)o[0]=i[p],o[1]=i[p+1],o[2]=i[p+2],h(o,o,v),i[p]=o[0],i[p+1]=o[1],i[p+2]=o[2];return i}},2825:function(e){e.exports=t;function t(r,o,a){var i=new Float32Array(3);return i[0]=r,i[1]=o,i[2]=a,i}},2931:function(e,t,r){e.exports={EPSILON:r(2613),create:r(1091),clone:r(3126),angle:r(8192),fromValues:r(2825),copy:r(3990),set:r(1463),equals:r(9922),exactEquals:r(9265),add:r(5632),subtract:r(6843),sub:r(2229),multiply:r(5847),mul:r(4505),divide:r(6690),div:r(4008),min:r(8107),max:r(7417),floor:r(2681),ceil:r(9226),round:r(2447),scale:r(6621),scaleAndAdd:r(8489),distance:r(7056),dist:r(5455),squaredDistance:r(2953),sqrDist:r(6141),length:r(1387),len:r(868),squaredLength:r(3066),sqrLen:r(5486),negate:r(5093),inverse:r(811),normalize:r(3536),dot:r(244),cross:r(5911),lerp:r(6658),random:r(7636),transformMat4:r(5673),transformMat3:r(492),transformQuat:r(264),rotateX:r(6894),rotateY:r(109),rotateZ:r(8692),forEach:r(5137)}},811:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r}},868:function(e,t,r){e.exports=r(1387)},1387:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2];return Math.sqrt(o*o+a*a+i*i)}},6658:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2];return r[0]=n+i*(a[0]-n),r[1]=s+i*(a[1]-s),r[2]=c+i*(a[2]-c),r}},7417:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.max(o[0],a[0]),r[1]=Math.max(o[1],a[1]),r[2]=Math.max(o[2],a[2]),r}},8107:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.min(o[0],a[0]),r[1]=Math.min(o[1],a[1]),r[2]=Math.min(o[2],a[2]),r}},4505:function(e,t,r){e.exports=r(5847)},5847:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a[0],r[1]=o[1]*a[1],r[2]=o[2]*a[2],r}},5093:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r}},3536:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=a*a+i*i+n*n;return s>0&&(s=1/Math.sqrt(s),r[0]=o[0]*s,r[1]=o[1]*s,r[2]=o[2]*s),r}},7636:function(e){e.exports=t;function t(r,o){o=o||1;var a=Math.random()*2*Math.PI,i=Math.random()*2-1,n=Math.sqrt(1-i*i)*o;return r[0]=Math.cos(a)*n,r[1]=Math.sin(a)*n,r[2]=i*o,r}},6894:function(e){e.exports=t;function t(r,o,a,i){var n=a[1],s=a[2],c=o[1]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=o[0],r[1]=n+c*p-h*v,r[2]=s+c*v+h*p,r}},109:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[2],c=o[0]-n,h=o[2]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+h*v+c*p,r[1]=o[1],r[2]=s+h*p-c*v,r}},8692:function(e){e.exports=t;function t(r,o,a,i){var n=a[0],s=a[1],c=o[0]-n,h=o[1]-s,v=Math.sin(i),p=Math.cos(i);return r[0]=n+c*p-h*v,r[1]=s+c*v+h*p,r[2]=o[2],r}},2447:function(e){e.exports=t;function t(r,o){return r[0]=Math.round(o[0]),r[1]=Math.round(o[1]),r[2]=Math.round(o[2]),r}},6621:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r}},8489:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r}},1463:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o,r[1]=a,r[2]=i,r}},6141:function(e,t,r){e.exports=r(2953)},5486:function(e,t,r){e.exports=r(3066)},2953:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2];return a*a+i*i+n*n}},3066:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2];return o*o+a*a+i*i}},2229:function(e,t,r){e.exports=r(6843)},6843:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r}},492:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2];return r[0]=i*a[0]+n*a[3]+s*a[6],r[1]=i*a[1]+n*a[4]+s*a[7],r[2]=i*a[2]+n*a[5]+s*a[8],r}},5673:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[3]*i+a[7]*n+a[11]*s+a[15];return c=c||1,r[0]=(a[0]*i+a[4]*n+a[8]*s+a[12])/c,r[1]=(a[1]*i+a[5]*n+a[9]*s+a[13])/c,r[2]=(a[2]*i+a[6]*n+a[10]*s+a[14])/c,r}},264:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r}},4361:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]+a[0],r[1]=o[1]+a[1],r[2]=o[2]+a[2],r[3]=o[3]+a[3],r}},2335:function(e){e.exports=t;function t(r){var o=new Float32Array(4);return o[0]=r[0],o[1]=r[1],o[2]=r[2],o[3]=r[3],o}},2933:function(e){e.exports=t;function t(r,o){return r[0]=o[0],r[1]=o[1],r[2]=o[2],r[3]=o[3],r}},7536:function(e){e.exports=t;function t(){var r=new Float32Array(4);return r[0]=0,r[1]=0,r[2]=0,r[3]=0,r}},4691:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return Math.sqrt(a*a+i*i+n*n+s*s)}},1373:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]/a[0],r[1]=o[1]/a[1],r[2]=o[2]/a[2],r[3]=o[3]/a[3],r}},3750:function(e){e.exports=t;function t(r,o){return r[0]*o[0]+r[1]*o[1]+r[2]*o[2]+r[3]*o[3]}},3390:function(e){e.exports=t;function t(r,o,a,i){var n=new Float32Array(4);return n[0]=r,n[1]=o,n[2]=a,n[3]=i,n}},9970:function(e,t,r){e.exports={create:r(7536),clone:r(2335),fromValues:r(3390),copy:r(2933),set:r(4578),add:r(4361),subtract:r(6860),multiply:r(3576),divide:r(1373),min:r(2334),max:r(160),scale:r(9288),scaleAndAdd:r(4844),distance:r(4691),squaredDistance:r(7960),length:r(6808),squaredLength:r(483),negate:r(1498),inverse:r(4494),normalize:r(5177),dot:r(3750),lerp:r(2573),random:r(9131),transformMat4:r(5352),transformQuat:r(4041)}},4494:function(e){e.exports=t;function t(r,o){return r[0]=1/o[0],r[1]=1/o[1],r[2]=1/o[2],r[3]=1/o[3],r}},6808:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return Math.sqrt(o*o+a*a+i*i+n*n)}},2573:function(e){e.exports=t;function t(r,o,a,i){var n=o[0],s=o[1],c=o[2],h=o[3];return r[0]=n+i*(a[0]-n),r[1]=s+i*(a[1]-s),r[2]=c+i*(a[2]-c),r[3]=h+i*(a[3]-h),r}},160:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.max(o[0],a[0]),r[1]=Math.max(o[1],a[1]),r[2]=Math.max(o[2],a[2]),r[3]=Math.max(o[3],a[3]),r}},2334:function(e){e.exports=t;function t(r,o,a){return r[0]=Math.min(o[0],a[0]),r[1]=Math.min(o[1],a[1]),r[2]=Math.min(o[2],a[2]),r[3]=Math.min(o[3],a[3]),r}},3576:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a[0],r[1]=o[1]*a[1],r[2]=o[2]*a[2],r[3]=o[3]*a[3],r}},1498:function(e){e.exports=t;function t(r,o){return r[0]=-o[0],r[1]=-o[1],r[2]=-o[2],r[3]=-o[3],r}},5177:function(e){e.exports=t;function t(r,o){var a=o[0],i=o[1],n=o[2],s=o[3],c=a*a+i*i+n*n+s*s;return c>0&&(c=1/Math.sqrt(c),r[0]=a*c,r[1]=i*c,r[2]=n*c,r[3]=s*c),r}},9131:function(e,t,r){var o=r(5177),a=r(9288);e.exports=i;function i(n,s){return s=s||1,n[0]=Math.random(),n[1]=Math.random(),n[2]=Math.random(),n[3]=Math.random(),o(n,n),a(n,n,s),n}},9288:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]*a,r[1]=o[1]*a,r[2]=o[2]*a,r[3]=o[3]*a,r}},4844:function(e){e.exports=t;function t(r,o,a,i){return r[0]=o[0]+a[0]*i,r[1]=o[1]+a[1]*i,r[2]=o[2]+a[2]*i,r[3]=o[3]+a[3]*i,r}},4578:function(e){e.exports=t;function t(r,o,a,i,n){return r[0]=o,r[1]=a,r[2]=i,r[3]=n,r}},7960:function(e){e.exports=t;function t(r,o){var a=o[0]-r[0],i=o[1]-r[1],n=o[2]-r[2],s=o[3]-r[3];return a*a+i*i+n*n+s*s}},483:function(e){e.exports=t;function t(r){var o=r[0],a=r[1],i=r[2],n=r[3];return o*o+a*a+i*i+n*n}},6860:function(e){e.exports=t;function t(r,o,a){return r[0]=o[0]-a[0],r[1]=o[1]-a[1],r[2]=o[2]-a[2],r[3]=o[3]-a[3],r}},5352:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=o[3];return r[0]=a[0]*i+a[4]*n+a[8]*s+a[12]*c,r[1]=a[1]*i+a[5]*n+a[9]*s+a[13]*c,r[2]=a[2]*i+a[6]*n+a[10]*s+a[14]*c,r[3]=a[3]*i+a[7]*n+a[11]*s+a[15]*c,r}},4041:function(e){e.exports=t;function t(r,o,a){var i=o[0],n=o[1],s=o[2],c=a[0],h=a[1],v=a[2],p=a[3],T=p*i+h*s-v*n,l=p*n+v*i-c*s,_=p*s+c*n-h*i,w=-c*i-h*n-v*s;return r[0]=T*p+w*-c+l*-v-_*-h,r[1]=l*p+w*-h+_*-c-T*-v,r[2]=_*p+w*-v+T*-h-l*-c,r[3]=o[3],r}},1848:function(e,t,r){var o=r(4905),a=r(6468);e.exports=i;function i(n){for(var s=Array.isArray(n)?n:o(n),c=0;c<s.length;c++){var h=s[c];if(h.type==="preprocessor"){var v=h.data.match(/\#define\s+SHADER_NAME(_B64)?\s+(.+)$/);if(v&&v[2]){var p=v[1],T=v[2];return(p?a(T):T).trim()}}}}},5874:function(e,t,r){e.exports=f;var o=r(620),a=r(7827),i=r(6852),n=r(7932),s=r(3508),c=999,h=9999,v=0,p=1,T=2,l=3,_=4,w=5,S=6,E=7,m=8,b=9,d=10,u=11,y=["block-comment","line-comment","preprocessor","operator","integer","float","ident","builtin","keyword","whitespace","eof","integer"];function f(P){var L=0,z=0,F=c,B,O,I=[],N=[],U=0,W=0,Q=1,ue=0,se=0,he=!1,G=!1,$="",J;P=P||{};var Z=i,re=o;P.version==="300 es"&&(Z=s,re=n);for(var ne={},j={},L=0;L<Z.length;L++)ne[Z[L]]=!0;for(var L=0;L<re.length;L++)j[re[L]]=!0;return function(ce){return N=[],ce!==null?ie(ce):fe()};function ee(ce){ce.length&&N.push({type:y[F],data:ce,position:se,line:Q,column:ue})}function ie(ce){L=0,ce.toString&&(ce=ce.toString()),$+=ce.replace(/\r\n/g,`
+`),J=$.length;for(var ze;B=$[L],L<J;){switch(ze=L,F){case v:L=Ze();break;case p:L=Ie();break;case T:L=Be();break;case l:L=at();break;case _:L=lt();break;case u:L=et();break;case w:L=Me();break;case h:L=ge();break;case b:L=Ae();break;case c:L=be();break}if(ze!==L)switch($[ze]){case`
+`:ue=0,++Q;break;default:++ue;break}}return z+=L,$=$.slice(L),N}function fe(ce){return I.length&&ee(I.join("")),F=d,ee("(eof)"),N}function be(){return I=I.length?[]:I,O==="/"&&B==="*"?(se=z+L-1,F=v,O=B,L+1):O==="/"&&B==="/"?(se=z+L-1,F=p,O=B,L+1):B==="#"?(F=T,se=z+L,L):/\s/.test(B)?(F=b,se=z+L,L):(he=/\d/.test(B),G=/[^\w_]/.test(B),se=z+L,F=he?_:G?l:h,L)}function Ae(){return/[^\s]/g.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Be(){return(B==="\r"||B===`
+`)&&O!=="\\"?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Ie(){return Be()}function Ze(){return B==="/"&&O==="*"?(I.push(B),ee(I.join("")),F=c,L+1):(I.push(B),O=B,L+1)}function at(){if(O==="."&&/\d/.test(B))return F=w,L;if(O==="/"&&B==="*")return F=v,L;if(O==="/"&&B==="/")return F=p,L;if(B==="."&&I.length){for(;it(I););return F=w,L}if(B===";"||B===")"||B==="("){if(I.length)for(;it(I););return ee(B),F=c,L+1}var ce=I.length===2&&B!=="=";if(/[\w_\d\s]/.test(B)||ce){for(;it(I););return F=c,L}return I.push(B),O=B,L+1}function it(ce){var ze=0,tt,nt;do{if(tt=a.indexOf(ce.slice(0,ce.length+ze).join("")),nt=a[tt],tt===-1){if(ze--+ce.length>0)continue;nt=ce.slice(0,1).join("")}return ee(nt),se+=nt.length,I=I.slice(nt.length),I.length}while(!0)}function et(){return/[^a-fA-F0-9]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function lt(){return B==="."||/[eE]/.test(B)?(I.push(B),F=w,O=B,L+1):B==="x"&&I.length===1&&I[0]==="0"?(F=u,I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function Me(){return B==="f"&&(I.push(B),O=B,L+=1),/[eE]/.test(B)||(B==="-"||B==="+")&&/[eE]/.test(O)?(I.push(B),O=B,L+1):/[^\d]/.test(B)?(ee(I.join("")),F=c,L):(I.push(B),O=B,L+1)}function ge(){if(/[^\d\w_]/.test(B)){var ce=I.join("");return j[ce]?F=m:ne[ce]?F=E:F=S,ee(I.join("")),F=c,L}return I.push(B),O=B,L+1}}},3508:function(e,t,r){var o=r(6852);o=o.slice().filter(function(a){return!/^(gl\_|texture)/.test(a)}),e.exports=o.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"])},6852:function(e){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"]},7932:function(e,t,r){var o=r(620);e.exports=o.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"])},620:function(e){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"]},7827:function(e){e.exports=["<<=",">>=","++","--","<<",">>","<=",">=","==","!=","&&","||","+=","-=","*=","/=","%=","&=","^^","^=","|=","(",")","[","]",".","!","~","*","/","%","+","-","<",">","&","^","|","?",":","=",",",";","{","}"]},4905:function(e,t,r){var o=r(5874);e.exports=a;function a(i,n){var s=o(n),c=[];return c=c.concat(s(i)),c=c.concat(s(null)),c}},3236:function(e){e.exports=function(t){typeof t=="string"&&(t=[t]);for(var r=[].slice.call(arguments,1),o=[],a=0;a<t.length-1;a++)o.push(t[a],r[a]||"");return o.push(t[a]),o.join("")}},7520:function(e,t,r){"use strict";var o=r(9507);function a(){var i=!1;try{var n=Object.defineProperty({},"passive",{get:function(){i=!0}});window.addEventListener("test",null,n),window.removeEventListener("test",null,n)}catch{i=!1}return i}e.exports=o&&a()},3778:function(e,t){t.read=function(r,o,a,i,n){var s,c,h=n*8-i-1,v=(1<<h)-1,p=v>>1,T=-7,l=a?n-1:0,_=a?-1:1,w=r[o+l];for(l+=_,s=w&(1<<-T)-1,w>>=-T,T+=h;T>0;s=s*256+r[o+l],l+=_,T-=8);for(c=s&(1<<-T)-1,s>>=-T,T+=i;T>0;c=c*256+r[o+l],l+=_,T-=8);if(s===0)s=1-p;else{if(s===v)return c?NaN:(w?-1:1)*(1/0);c=c+Math.pow(2,i),s=s-p}return(w?-1:1)*c*Math.pow(2,s-i)},t.write=function(r,o,a,i,n,s){var c,h,v,p=s*8-n-1,T=(1<<p)-1,l=T>>1,_=n===23?Math.pow(2,-24)-Math.pow(2,-77):0,w=i?0:s-1,S=i?1:-1,E=o<0||o===0&&1/o<0?1:0;for(o=Math.abs(o),isNaN(o)||o===1/0?(h=isNaN(o)?1:0,c=T):(c=Math.floor(Math.log(o)/Math.LN2),o*(v=Math.pow(2,-c))<1&&(c--,v*=2),c+l>=1?o+=_/v:o+=_*Math.pow(2,1-l),o*v>=2&&(c++,v/=2),c+l>=T?(h=0,c=T):c+l>=1?(h=(o*v-1)*Math.pow(2,n),c=c+l):(h=o*Math.pow(2,l-1)*Math.pow(2,n),c=0));n>=8;r[a+w]=h&255,w+=S,h/=256,n-=8);for(c=c<<n|h,p+=n;p>0;r[a+w]=c&255,w+=S,c/=256,p-=8);r[a+w-S]|=E*128}},8954:function(e,t,r){"use strict";e.exports=l;var o=r(3250),a=r(6803).Fw;function i(_,w,S){this.vertices=_,this.adjacent=w,this.boundary=S,this.lastVisited=-1}i.prototype.flip=function(){var _=this.vertices[0];this.vertices[0]=this.vertices[1],this.vertices[1]=_;var w=this.adjacent[0];this.adjacent[0]=this.adjacent[1],this.adjacent[1]=w};function n(_,w,S){this.vertices=_,this.cell=w,this.index=S}function s(_,w){return a(_.vertices,w.vertices)}function c(_){return function(){var w=this.tuple;return _.apply(this,w)}}function h(_){var w=o[_+1];return w||(w=o),c(w)}var v=[];function p(_,w,S){this.dimension=_,this.vertices=w,this.simplices=S,this.interior=S.filter(function(b){return!b.boundary}),this.tuple=new Array(_+1);for(var E=0;E<=_;++E)this.tuple[E]=this.vertices[E];var m=v[_];m||(m=v[_]=h(_)),this.orient=m}var T=p.prototype;T.handleBoundaryDegeneracy=function(_,w){var S=this.dimension,E=this.vertices.length-1,m=this.tuple,b=this.vertices,d=[_];for(_.lastVisited=-E;d.length>0;){_=d.pop();for(var u=_.adjacent,y=0;y<=S;++y){var f=u[y];if(!(!f.boundary||f.lastVisited<=-E)){for(var P=f.vertices,L=0;L<=S;++L){var z=P[L];z<0?m[L]=w:m[L]=b[z]}var F=this.orient();if(F>0)return f;f.lastVisited=-E,F===0&&d.push(f)}}}return null},T.walk=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=w?this.interior.length*Math.random()|0:this.interior.length-1,u=this.interior[d];e:for(;!u.boundary;){for(var y=u.vertices,f=u.adjacent,P=0;P<=E;++P)b[P]=m[y[P]];u.lastVisited=S;for(var P=0;P<=E;++P){var L=f[P];if(!(L.lastVisited>=S)){var z=b[P];b[P]=_;var F=this.orient();if(b[P]=z,F<0){u=L;continue e}else L.boundary?L.lastVisited=-S:L.lastVisited=S}}return}return u},T.addPeaks=function(_,w){var S=this.vertices.length-1,E=this.dimension,m=this.vertices,b=this.tuple,d=this.interior,u=this.simplices,y=[w];w.lastVisited=S,w.vertices[w.vertices.indexOf(-1)]=S,w.boundary=!1,d.push(w);for(var f=[];y.length>0;){var w=y.pop(),P=w.vertices,L=w.adjacent,z=P.indexOf(S);if(!(z<0)){for(var F=0;F<=E;++F)if(F!==z){var B=L[F];if(!(!B.boundary||B.lastVisited>=S)){var O=B.vertices;if(B.lastVisited!==-S){for(var I=0,N=0;N<=E;++N)O[N]<0?(I=N,b[N]=_):b[N]=m[O[N]];var U=this.orient();if(U>0){O[I]=S,B.boundary=!1,d.push(B),y.push(B),B.lastVisited=S;continue}else B.lastVisited=-S}var W=B.adjacent,Q=P.slice(),ue=L.slice(),se=new i(Q,ue,!0);u.push(se);var he=W.indexOf(w);if(!(he<0)){W[he]=se,ue[z]=B,Q[F]=-1,ue[F]=w,L[F]=se,se.flip();for(var N=0;N<=E;++N){var G=Q[N];if(!(G<0||G===S)){for(var $=new Array(E-1),J=0,Z=0;Z<=E;++Z){var re=Q[Z];re<0||Z===N||($[J++]=re)}f.push(new n($,se,N))}}}}}}}f.sort(s);for(var F=0;F+1<f.length;F+=2){var ne=f[F],j=f[F+1],ee=ne.index,ie=j.index;ee<0||ie<0||(ne.cell.adjacent[ne.index]=j.cell,j.cell.adjacent[j.index]=ne.cell)}},T.insert=function(_,w){var S=this.vertices;S.push(_);var E=this.walk(_,w);if(E){for(var m=this.dimension,b=this.tuple,d=0;d<=m;++d){var u=E.vertices[d];u<0?b[d]=_:b[d]=S[u]}var y=this.orient(b);y<0||y===0&&(E=this.handleBoundaryDegeneracy(E,_),!E)||this.addPeaks(_,E)}},T.boundary=function(){for(var _=this.dimension,w=[],S=this.simplices,E=S.length,m=0;m<E;++m){var b=S[m];if(b.boundary){for(var d=new Array(_),u=b.vertices,y=0,f=0,P=0;P<=_;++P)u[P]>=0?d[y++]=u[P]:f=P&1;if(f===(_&1)){var L=d[0];d[0]=d[1],d[1]=L}w.push(d)}}return w};function l(_,w){var S=_.length;if(S===0)throw new Error("Must have at least d+1 points");var E=_[0].length;if(S<=E)throw new Error("Must input at least d+1 points");var m=_.slice(0,E+1),b=o.apply(void 0,m);if(b===0)throw new Error("Input not in general position");for(var d=new Array(E+1),u=0;u<=E;++u)d[u]=u;b<0&&(d[0]=1,d[1]=0);for(var y=new i(d,new Array(E+1),!1),f=y.adjacent,P=new Array(E+2),u=0;u<=E;++u){for(var L=d.slice(),z=0;z<=E;++z)z===u&&(L[z]=-1);var F=L[0];L[0]=L[1],L[1]=F;var B=new i(L,new Array(E+1),!0);f[u]=B,P[u]=B}P[E+1]=y;for(var u=0;u<=E;++u)for(var L=f[u].vertices,O=f[u].adjacent,z=0;z<=E;++z){var I=L[z];if(I<0){O[z]=y;continue}for(var N=0;N<=E;++N)f[N].vertices.indexOf(I)<0&&(O[z]=f[N])}for(var U=new p(E,m,P),W=!!w,u=E+1;u<S;++u)U.insert(_[u],W);return U.boundary()}},3352:function(e,t,r){"use strict";var o=r(2478),a=0,i=1,n=2;e.exports=y;function s(f,P,L,z,F){this.mid=f,this.left=P,this.right=L,this.leftPoints=z,this.rightPoints=F,this.count=(P?P.count:0)+(L?L.count:0)+z.length}var c=s.prototype;function h(f,P){f.mid=P.mid,f.left=P.left,f.right=P.right,f.leftPoints=P.leftPoints,f.rightPoints=P.rightPoints,f.count=P.count}function v(f,P){var L=b(P);f.mid=L.mid,f.left=L.left,f.right=L.right,f.leftPoints=L.leftPoints,f.rightPoints=L.rightPoints,f.count=L.count}function p(f,P){var L=f.intervals([]);L.push(P),v(f,L)}function T(f,P){var L=f.intervals([]),z=L.indexOf(P);return z<0?a:(L.splice(z,1),v(f,L),i)}c.intervals=function(f){return f.push.apply(f,this.leftPoints),this.left&&this.left.intervals(f),this.right&&this.right.intervals(f),f},c.insert=function(f){var P=this.count-this.leftPoints.length;if(this.count+=1,f[1]<this.mid)this.left?4*(this.left.count+1)>3*(P+1)?p(this,f):this.left.insert(f):this.left=b([f]);else if(f[0]>this.mid)this.right?4*(this.right.count+1)>3*(P+1)?p(this,f):this.right.insert(f):this.right=b([f]);else{var L=o.ge(this.leftPoints,f,E),z=o.ge(this.rightPoints,f,m);this.leftPoints.splice(L,0,f),this.rightPoints.splice(z,0,f)}},c.remove=function(f){var P=this.count-this.leftPoints;if(f[1]<this.mid){if(!this.left)return a;var L=this.right?this.right.count:0;if(4*L>3*(P-1))return T(this,f);var z=this.left.remove(f);return z===n?(this.left=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else if(f[0]>this.mid){if(!this.right)return a;var F=this.left?this.left.count:0;if(4*F>3*(P-1))return T(this,f);var z=this.right.remove(f);return z===n?(this.right=null,this.count-=1,i):(z===i&&(this.count-=1),z)}else{if(this.count===1)return this.leftPoints[0]===f?n:a;if(this.leftPoints.length===1&&this.leftPoints[0]===f){if(this.left&&this.right){for(var B=this,O=this.left;O.right;)B=O,O=O.right;if(B===this)O.right=this.right;else{var I=this.left,z=this.right;B.count-=O.count,B.right=O.left,O.left=I,O.right=z}h(this,O),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?h(this,this.left):h(this,this.right);return i}for(var I=o.ge(this.leftPoints,f,E);I<this.leftPoints.length&&this.leftPoints[I][0]===f[0];++I)if(this.leftPoints[I]===f){this.count-=1,this.leftPoints.splice(I,1);for(var z=o.ge(this.rightPoints,f,m);z<this.rightPoints.length&&this.rightPoints[z][1]===f[1];++z)if(this.rightPoints[z]===f)return this.rightPoints.splice(z,1),i}return a}};function l(f,P,L){for(var z=0;z<f.length&&f[z][0]<=P;++z){var F=L(f[z]);if(F)return F}}function _(f,P,L){for(var z=f.length-1;z>=0&&f[z][1]>=P;--z){var F=L(f[z]);if(F)return F}}function w(f,P){for(var L=0;L<f.length;++L){var z=P(f[L]);if(z)return z}}c.queryPoint=function(f,P){if(f<this.mid){if(this.left){var L=this.left.queryPoint(f,P);if(L)return L}return l(this.leftPoints,f,P)}else if(f>this.mid){if(this.right){var L=this.right.queryPoint(f,P);if(L)return L}return _(this.rightPoints,f,P)}else return w(this.leftPoints,P)},c.queryInterval=function(f,P,L){if(f<this.mid&&this.left){var z=this.left.queryInterval(f,P,L);if(z)return z}if(P>this.mid&&this.right){var z=this.right.queryInterval(f,P,L);if(z)return z}return P<this.mid?l(this.leftPoints,P,L):f>this.mid?_(this.rightPoints,f,L):w(this.leftPoints,L)};function S(f,P){return f-P}function E(f,P){var L=f[0]-P[0];return L||f[1]-P[1]}function m(f,P){var L=f[1]-P[1];return L||f[0]-P[0]}function b(f){if(f.length===0)return null;for(var P=[],L=0;L<f.length;++L)P.push(f[L][0],f[L][1]);P.sort(S);for(var z=P[P.length>>1],F=[],B=[],O=[],L=0;L<f.length;++L){var I=f[L];I[1]<z?F.push(I):z<I[0]?B.push(I):O.push(I)}var N=O,U=O.slice();return N.sort(E),U.sort(m),new s(z,b(F),b(B),N,U)}function d(f){this.root=f}var u=d.prototype;u.insert=function(f){this.root?this.root.insert(f):this.root=new s(f[0],null,null,[f],[f])},u.remove=function(f){if(this.root){var P=this.root.remove(f);return P===n&&(this.root=null),P!==a}return!1},u.queryPoint=function(f,P){if(this.root)return this.root.queryPoint(f,P)},u.queryInterval=function(f,P,L){if(f<=P&&this.root)return this.root.queryInterval(f,P,L)},Object.defineProperty(u,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(u,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});function y(f){return!f||f.length===0?new d(null):new d(b(f))}},9507:function(e){e.exports=!0},7163:function(e){e.exports=function(o){return o!=null&&(t(o)||r(o)||!!o._isBuffer)};function t(o){return!!o.constructor&&typeof o.constructor.isBuffer=="function"&&o.constructor.isBuffer(o)}function r(o){return typeof o.readFloatLE=="function"&&typeof o.slice=="function"&&t(o.slice(0,0))}},5219:function(e){"use strict";e.exports=function(t){for(var r=t.length,o,a=0;a<r;a++)if(o=t.charCodeAt(a),(o<9||o>13)&&o!==32&&o!==133&&o!==160&&o!==5760&&o!==6158&&(o<8192||o>8205)&&o!==8232&&o!==8233&&o!==8239&&o!==8287&&o!==8288&&o!==12288&&o!==65279)return!1;return!0}},395:function(e){function t(r,o,a){return r*(1-a)+o*a}e.exports=t},2652:function(e,t,r){var o=r(4335),a=r(6864),i=r(1903),n=r(9921),s=r(7608),c=r(5665),h={length:r(1387),normalize:r(3536),dot:r(244),cross:r(5911)},v=a(),p=a(),T=[0,0,0,0],l=[[0,0,0],[0,0,0],[0,0,0]],_=[0,0,0];e.exports=function(b,d,u,y,f,P){if(d||(d=[0,0,0]),u||(u=[0,0,0]),y||(y=[0,0,0]),f||(f=[0,0,0,1]),P||(P=[0,0,0,1]),!o(v,b)||(i(p,v),p[3]=0,p[7]=0,p[11]=0,p[15]=1,Math.abs(n(p)<1e-8)))return!1;var L=v[3],z=v[7],F=v[11],B=v[12],O=v[13],I=v[14],N=v[15];if(L!==0||z!==0||F!==0){T[0]=L,T[1]=z,T[2]=F,T[3]=N;var U=s(p,p);if(!U)return!1;c(p,p),w(f,T,p)}else f[0]=f[1]=f[2]=0,f[3]=1;if(d[0]=B,d[1]=O,d[2]=I,S(l,v),u[0]=h.length(l[0]),h.normalize(l[0],l[0]),y[0]=h.dot(l[0],l[1]),E(l[1],l[1],l[0],1,-y[0]),u[1]=h.length(l[1]),h.normalize(l[1],l[1]),y[0]/=u[1],y[1]=h.dot(l[0],l[2]),E(l[2],l[2],l[0],1,-y[1]),y[2]=h.dot(l[1],l[2]),E(l[2],l[2],l[1],1,-y[2]),u[2]=h.length(l[2]),h.normalize(l[2],l[2]),y[1]/=u[2],y[2]/=u[2],h.cross(_,l[1],l[2]),h.dot(l[0],_)<0)for(var W=0;W<3;W++)u[W]*=-1,l[W][0]*=-1,l[W][1]*=-1,l[W][2]*=-1;return P[0]=.5*Math.sqrt(Math.max(1+l[0][0]-l[1][1]-l[2][2],0)),P[1]=.5*Math.sqrt(Math.max(1-l[0][0]+l[1][1]-l[2][2],0)),P[2]=.5*Math.sqrt(Math.max(1-l[0][0]-l[1][1]+l[2][2],0)),P[3]=.5*Math.sqrt(Math.max(1+l[0][0]+l[1][1]+l[2][2],0)),l[2][1]>l[1][2]&&(P[0]=-P[0]),l[0][2]>l[2][0]&&(P[1]=-P[1]),l[1][0]>l[0][1]&&(P[2]=-P[2]),!0};function w(m,b,d){var u=b[0],y=b[1],f=b[2],P=b[3];return m[0]=d[0]*u+d[4]*y+d[8]*f+d[12]*P,m[1]=d[1]*u+d[5]*y+d[9]*f+d[13]*P,m[2]=d[2]*u+d[6]*y+d[10]*f+d[14]*P,m[3]=d[3]*u+d[7]*y+d[11]*f+d[15]*P,m}function S(m,b){m[0][0]=b[0],m[0][1]=b[1],m[0][2]=b[2],m[1][0]=b[4],m[1][1]=b[5],m[1][2]=b[6],m[2][0]=b[8],m[2][1]=b[9],m[2][2]=b[10]}function E(m,b,d,u,y){m[0]=b[0]*u+d[0]*y,m[1]=b[1]*u+d[1]*y,m[2]=b[2]*u+d[2]*y}},4335:function(e){e.exports=function(r,o){var a=o[15];if(a===0)return!1;for(var i=1/a,n=0;n<16;n++)r[n]=o[n]*i;return!0}},7442:function(e,t,r){var o=r(6658),a=r(7182),i=r(2652),n=r(9921),s=r(8648),c=T(),h=T(),v=T();e.exports=p;function p(w,S,E,m){if(n(S)===0||n(E)===0)return!1;var b=i(S,c.translate,c.scale,c.skew,c.perspective,c.quaternion),d=i(E,h.translate,h.scale,h.skew,h.perspective,h.quaternion);return!b||!d?!1:(o(v.translate,c.translate,h.translate,m),o(v.skew,c.skew,h.skew,m),o(v.scale,c.scale,h.scale,m),o(v.perspective,c.perspective,h.perspective,m),s(v.quaternion,c.quaternion,h.quaternion,m),a(w,v.translate,v.scale,v.skew,v.perspective,v.quaternion),!0)}function T(){return{translate:l(),scale:l(1),skew:l(),perspective:_(),quaternion:_()}}function l(w){return[w||0,w||0,w||0]}function _(){return[0,0,0,1]}},7182:function(e,t,r){var o={identity:r(7894),translate:r(7656),multiply:r(6760),create:r(6864),scale:r(2504),fromRotationTranslation:r(6743)},a=o.create(),i=o.create();e.exports=function(s,c,h,v,p,T){return o.identity(s),o.fromRotationTranslation(s,T,c),s[3]=p[0],s[7]=p[1],s[11]=p[2],s[15]=p[3],o.identity(i),v[2]!==0&&(i[9]=v[2],o.multiply(s,s,i)),v[1]!==0&&(i[9]=0,i[8]=v[1],o.multiply(s,s,i)),v[0]!==0&&(i[8]=0,i[4]=v[0],o.multiply(s,s,i)),o.scale(s,s,h),s}},1811:function(e,t,r){"use strict";var o=r(2478),a=r(7442),i=r(7608),n=r(5567),s=r(2408),c=r(7089),h=r(6582),v=r(7656),p=r(2504),T=r(3536),l=[0,0,0];e.exports=E;function _(m){this._components=m.slice(),this._time=[0],this.prevMatrix=m.slice(),this.nextMatrix=m.slice(),this.computedMatrix=m.slice(),this.computedInverse=m.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]}var w=_.prototype;w.recalcMatrix=function(m){var b=this._time,d=o.le(b,m),u=this.computedMatrix;if(!(d<0)){var y=this._components;if(d===b.length-1)for(var f=16*d,P=0;P<16;++P)u[P]=y[f++];else{for(var L=b[d+1]-b[d],f=16*d,z=this.prevMatrix,F=!0,P=0;P<16;++P)z[P]=y[f++];for(var B=this.nextMatrix,P=0;P<16;++P)B[P]=y[f++],F=F&&z[P]===B[P];if(L<1e-6||F)for(var P=0;P<16;++P)u[P]=z[P];else a(u,z,B,(m-b[d])/L)}var O=this.computedUp;O[0]=u[1],O[1]=u[5],O[2]=u[9],T(O,O);var I=this.computedInverse;i(I,u);var N=this.computedEye,U=I[15];N[0]=I[12]/U,N[1]=I[13]/U,N[2]=I[14]/U;for(var W=this.computedCenter,Q=Math.exp(this.computedRadius[0]),P=0;P<3;++P)W[P]=N[P]-u[2+4*P]*Q}},w.idle=function(m){if(!(m<this.lastT())){for(var b=this._components,d=b.length-16,u=0;u<16;++u)b.push(b[d++]);this._time.push(m)}},w.flush=function(m){var b=o.gt(this._time,m)-2;b<0||(this._time.splice(0,b),this._components.splice(0,16*b))},w.lastT=function(){return this._time[this._time.length-1]},w.lookAt=function(m,b,d,u){this.recalcMatrix(m),b=b||this.computedEye,d=d||l,u=u||this.computedUp,this.setMatrix(m,h(this.computedMatrix,b,d,u));for(var y=0,f=0;f<3;++f)y+=Math.pow(d[f]-b[f],2);y=Math.log(Math.sqrt(y)),this.computedRadius[0]=y},w.rotate=function(m,b,d,u){this.recalcMatrix(m);var y=this.computedInverse;b&&s(y,y,b),d&&n(y,y,d),u&&c(y,y,u),this.setMatrix(m,i(this.computedMatrix,y))};var S=[0,0,0];w.pan=function(m,b,d,u){S[0]=-(b||0),S[1]=-(d||0),S[2]=-(u||0),this.recalcMatrix(m);var y=this.computedInverse;v(y,y,S),this.setMatrix(m,i(y,y))},w.translate=function(m,b,d,u){S[0]=b||0,S[1]=d||0,S[2]=u||0,this.recalcMatrix(m);var y=this.computedMatrix;v(y,y,S),this.setMatrix(m,y)},w.setMatrix=function(m,b){if(!(m<this.lastT())){this._time.push(m);for(var d=0;d<16;++d)this._components.push(b[d])}},w.setDistance=function(m,b){this.computedRadius[0]=b},w.setDistanceLimits=function(m,b){var d=this._limits;d[0]=m,d[1]=b},w.getDistanceLimits=function(m){var b=this._limits;return m?(m[0]=b[0],m[1]=b[1],m):b};function E(m){m=m||{};var b=m.matrix||[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];return new _(b)}},3090:function(e,t,r){"use strict";e.exports=a;var o=r(3250)[3];function a(i){var n=i.length;if(n<3){for(var _=new Array(n),s=0;s<n;++s)_[s]=s;return n===2&&i[0][0]===i[1][0]&&i[0][1]===i[1][1]?[0]:_}for(var c=new Array(n),s=0;s<n;++s)c[s]=s;c.sort(function(m,b){var d=i[m][0]-i[b][0];return d||i[m][1]-i[b][1]});for(var h=[c[0],c[1]],v=[c[0],c[1]],s=2;s<n;++s){for(var p=c[s],T=i[p],l=h.length;l>1&&o(i[h[l-2]],i[h[l-1]],T)<=0;)l-=1,h.pop();for(h.push(p),l=v.length;l>1&&o(i[v[l-2]],i[v[l-1]],T)>=0;)l-=1,v.pop();v.push(p)}for(var _=new Array(v.length+h.length-2),w=0,s=0,S=h.length;s<S;++s)_[w++]=h[s];for(var E=v.length-2;E>0;--E)_[w++]=v[E];return _}},351:function(e,t,r){"use strict";e.exports=a;var o=r(4687);function a(i,n){n||(n=i,i=window);var s=0,c=0,h=0,v={shift:!1,alt:!1,control:!1,meta:!1},p=!1;function T(f){var P=!1;return"altKey"in f&&(P=P||f.altKey!==v.alt,v.alt=!!f.altKey),"shiftKey"in f&&(P=P||f.shiftKey!==v.shift,v.shift=!!f.shiftKey),"ctrlKey"in f&&(P=P||f.ctrlKey!==v.control,v.control=!!f.ctrlKey),"metaKey"in f&&(P=P||f.metaKey!==v.meta,v.meta=!!f.metaKey),P}function l(f,P){var L=o.x(P),z=o.y(P);"buttons"in P&&(f=P.buttons|0),(f!==s||L!==c||z!==h||T(P))&&(s=f|0,c=L||0,h=z||0,n&&n(s,c,h,v))}function _(f){l(0,f)}function w(){(s||c||h||v.shift||v.alt||v.meta||v.control)&&(c=h=0,s=0,v.shift=v.alt=v.control=v.meta=!1,n&&n(0,0,0,v))}function S(f){T(f)&&n&&n(s,c,h,v)}function E(f){o.buttons(f)===0?l(0,f):l(s,f)}function m(f){l(s|o.buttons(f),f)}function b(f){l(s&~o.buttons(f),f)}function d(){p||(p=!0,i.addEventListener("mousemove",E),i.addEventListener("mousedown",m),i.addEventListener("mouseup",b),i.addEventListener("mouseleave",_),i.addEventListener("mouseenter",_),i.addEventListener("mouseout",_),i.addEventListener("mouseover",_),i.addEventListener("blur",w),i.addEventListener("keyup",S),i.addEventListener("keydown",S),i.addEventListener("keypress",S),i!==window&&(window.addEventListener("blur",w),window.addEventListener("keyup",S),window.addEventListener("keydown",S),window.addEventListener("keypress",S)))}function u(){p&&(p=!1,i.removeEventListener("mousemove",E),i.removeEventListener("mousedown",m),i.removeEventListener("mouseup",b),i.removeEventListener("mouseleave",_),i.removeEventListener("mouseenter",_),i.removeEventListener("mouseout",_),i.removeEventListener("mouseover",_),i.removeEventListener("blur",w),i.removeEventListener("keyup",S),i.removeEventListener("keydown",S),i.removeEventListener("keypress",S),i!==window&&(window.removeEventListener("blur",w),window.removeEventListener("keyup",S),window.removeEventListener("keydown",S),window.removeEventListener("keypress",S)))}d();var y={element:i};return Object.defineProperties(y,{enabled:{get:function(){return p},set:function(f){f?d():u()},enumerable:!0},buttons:{get:function(){return s},enumerable:!0},x:{get:function(){return c},enumerable:!0},y:{get:function(){return h},enumerable:!0},mods:{get:function(){return v},enumerable:!0}}),y}},24:function(e){var t={left:0,top:0};e.exports=r;function r(a,i,n){i=i||a.currentTarget||a.srcElement,Array.isArray(n)||(n=[0,0]);var s=a.clientX||0,c=a.clientY||0,h=o(i);return n[0]=s-h.left,n[1]=c-h.top,n}function o(a){return a===window||a===document||a===document.body?t:a.getBoundingClientRect()}},4687:function(e,t){"use strict";function r(n){if(typeof n=="object"){if("buttons"in n)return n.buttons;if("which"in n){var s=n.which;if(s===2)return 4;if(s===3)return 2;if(s>0)return 1<<s-1}else if("button"in n){var s=n.button;if(s===1)return 4;if(s===2)return 2;if(s>=0)return 1<<s}}return 0}t.buttons=r;function o(n){return n.target||n.srcElement||window}t.element=o;function a(n){if(typeof n=="object"){if("offsetX"in n)return n.offsetX;var s=o(n),c=s.getBoundingClientRect();return n.clientX-c.left}return 0}t.x=a;function i(n){if(typeof n=="object"){if("offsetY"in n)return n.offsetY;var s=o(n),c=s.getBoundingClientRect();return n.clientY-c.top}return 0}t.y=i},8512:function(e,t,r){"use strict";var o=r(665);e.exports=a;function a(i,n,s){typeof i=="function"&&(s=!!n,n=i,i=window);var c=o("ex",i),h=function(v){s&&v.preventDefault();var p=v.deltaX||0,T=v.deltaY||0,l=v.deltaZ||0,_=v.deltaMode,w=1;switch(_){case 1:w=c;break;case 2:w=window.innerHeight;break}if(p*=w,T*=w,l*=w,p||T||l)return n(p,T,l,v)};return i.addEventListener("wheel",h),h}},2640:function(e,t,r){"use strict";var o=r(1888);e.exports=n;var a={"false,0,1":function(c,h,v,p,T){return function(_,w,S,E){var m=_.shape[0]|0,b=_.shape[1]|0,d=_.data,u=_.offset|0,y=_.stride[0]|0,f=_.stride[1]|0,P=u,L,z=-y|0,F=0,B=-f|0,O=0,I=-y-f|0,N=0,U=y|0,W=f-y*m|0,Q=0,ue=0,se=0,he=2*m|0,G=p(he),$=p(he),J=0,Z=0,re=-1,ne=-1,j=0,ee=-m|0,ie=m|0,fe=0,be=-m-1|0,Ae=m-1|0,Be=0,Ie=0,Ze=0;for(Q=0;Q<m;++Q)G[J++]=v(d[P],w,S,E),P+=U;if(P+=W,b>0){if(ue=1,G[J++]=v(d[P],w,S,E),P+=U,m>0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,Q=2;Q<m;++Q)L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,N,F,Be,j,w,S,E)),J+=1,P+=U;for(P+=W,J=0,Ze=re,re=ne,ne=Ze,Ze=ee,ee=ie,ie=Ze,Ze=be,be=Ae,Ae=Ze,ue=2;ue<b;++ue){if(G[J++]=v(d[P],w,S,E),P+=U,m>0)for(Q=1,L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,O,N,fe,Be,w,S,E)),J+=1,P+=U,Q=2;Q<m;++Q)L=d[P],Z=G[J]=v(L,w,S,E),j=G[J+re],fe=G[J+ee],Be=G[J+be],(Z!==j||Z!==fe||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,j,fe,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,O,N,fe,Be,w,S,E),Be!==j&&h($[J+re],Ie,N,F,Be,j,w,S,E)),J+=1,P+=U;ue&1&&(J=0),Ze=re,re=ne,ne=Ze,Ze=ee,ee=ie,ie=Ze,Ze=be,be=Ae,Ae=Ze,P+=W}}T($),T(G)}},"false,1,0":function(c,h,v,p,T){return function(_,w,S,E){var m=_.shape[0]|0,b=_.shape[1]|0,d=_.data,u=_.offset|0,y=_.stride[0]|0,f=_.stride[1]|0,P=u,L,z=-y|0,F=0,B=-f|0,O=0,I=-y-f|0,N=0,U=f|0,W=y-f*b|0,Q=0,ue=0,se=0,he=2*b|0,G=p(he),$=p(he),J=0,Z=0,re=-1,ne=-1,j=0,ee=-b|0,ie=b|0,fe=0,be=-b-1|0,Ae=b-1|0,Be=0,Ie=0,Ze=0;for(ue=0;ue<b;++ue)G[J++]=v(d[P],w,S,E),P+=U;if(P+=W,m>0){if(Q=1,G[J++]=v(d[P],w,S,E),P+=U,b>0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++),J+=1,P+=U,ue=2;ue<b;++ue)L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,O,N,j,Be,w,S,E)),J+=1,P+=U;for(P+=W,J=0,Ze=ee,ee=ie,ie=Ze,Ze=re,re=ne,ne=Ze,Ze=be,be=Ae,Ae=Ze,Q=2;Q<m;++Q){if(G[J++]=v(d[P],w,S,E),P+=U,b>0)for(ue=1,L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==fe&&h($[J+ee],Ie,N,F,Be,fe,w,S,E)),J+=1,P+=U,ue=2;ue<b;++ue)L=d[P],Z=G[J]=v(L,w,S,E),fe=G[J+ee],j=G[J+re],Be=G[J+be],(Z!==fe||Z!==j||Z!==Be)&&(F=d[P+z],O=d[P+B],N=d[P+I],c(Q,ue,L,F,O,N,Z,fe,j,Be,w,S,E),Ie=$[J]=se++,Be!==j&&h($[J+re],Ie,O,N,j,Be,w,S,E),Be!==fe&&h($[J+ee],Ie,N,F,Be,fe,w,S,E)),J+=1,P+=U;Q&1&&(J=0),Ze=ee,ee=ie,ie=Ze,Ze=re,re=ne,ne=Ze,Ze=be,be=Ae,Ae=Ze,P+=W}}T($),T(G)}}};function i(s,c,h,v,p,T){var l=[T,p].join(","),_=a[l];return _(s,c,h,o.mallocUint32,o.freeUint32)}function n(s){function c(w){throw new Error("ndarray-extract-contour: "+w)}typeof s!="object"&&c("Must specify arguments");var h=s.order;Array.isArray(h)||c("Must specify order");var v=s.arrayArguments||1;v<1&&c("Must have at least one array argument");var p=s.scalarArguments||0;p<0&&c("Scalar arg count must be > 0"),typeof s.vertex!="function"&&c("Must specify vertex creation function"),typeof s.cell!="function"&&c("Must specify cell creation function"),typeof s.phase!="function"&&c("Must specify phase function");for(var T=s.getters||[],l=new Array(v),_=0;_<v;++_)T.indexOf(_)>=0?l[_]=!0:l[_]=!1;return i(s.vertex,s.cell,s.phase,p,h,l)}},6199:function(e,t,r){"use strict";var o=r(1338),a={zero:function(E,m,b,d){var u=E[0],y=b[0];d|=0;var f=0,P=y;for(f=0;f<u;++f)m[d]=0,d+=P},fdTemplate1:function(E,m,b,d,u,y,f){var P=E[0],L=b[0],z=y[0],F=-1*L,B=L;d|=0,f|=0;var O=0,I=L,N=z;for(O=0;O<P;++O)u[f]=.5*(m[d+F]-m[d+B]),d+=I,f+=N},fdTemplate2:function(E,m,b,d,u,y,f,P,L,z){var F=E[0],B=E[1],O=b[0],I=b[1],N=y[0],U=y[1],W=L[0],Q=L[1],ue=-1*O,se=O,he=-1*I,G=I;d|=0,f|=0,z|=0;var $=0,J=0,Z=I,re=O-B*I,ne=U,j=N-B*U,ee=Q,ie=W-B*Q;for(J=0;J<F;++J){for($=0;$<B;++$)u[f]=.5*(m[d+ue]-m[d+se]),P[z]=.5*(m[d+he]-m[d+G]),d+=Z,f+=ne,z+=ee;d+=re,f+=j,z+=ie}}},i={cdiff:function(E){var m={};return function(d,u,y){var f=d.dtype,P=d.order,L=u.dtype,z=u.order,F=y.dtype,B=y.order,O=[f,P.join(),L,z.join(),F,B.join()].join(),I=m[O];return I||(m[O]=I=E([f,P,L,z,F,B])),I(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0,y.data,y.stride,y.offset|0)}},zero:function(E){var m={};return function(d){var u=d.dtype,y=d.order,f=[u,y.join()].join(),P=m[f];return P||(m[f]=P=E([u,y])),P(d.shape.slice(0),d.data,d.stride,d.offset|0)}},fdTemplate1:function(E){var m={};return function(d,u){var y=d.dtype,f=d.order,P=u.dtype,L=u.order,z=[y,f.join(),P,L.join()].join(),F=m[z];return F||(m[z]=F=E([y,f,P,L])),F(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0)}},fdTemplate2:function(E){var m={};return function(d,u,y){var f=d.dtype,P=d.order,L=u.dtype,z=u.order,F=y.dtype,B=y.order,O=[f,P.join(),L,z.join(),F,B.join()].join(),I=m[O];return I||(m[O]=I=E([f,P,L,z,F,B])),I(d.shape.slice(0),d.data,d.stride,d.offset|0,u.data,u.stride,u.offset|0,y.data,y.stride,y.offset|0)}}};function n(E){var m=i[E.funcName];return m(s.bind(void 0,E))}function s(E){return a[E.funcName]}function c(E){return n({funcName:E.funcName})}var h={},v={},p={body:"",args:[],thisVars:[],localVars:[]},T=c({funcName:"cdiff"}),l=c({funcName:"zero"});function _(E){return E in h?h[E]:h[E]=c({funcName:"fdTemplate"+E})}function w(E,m,b,d){return function(u,y){var f=y.shape.slice();return f[0]>2&&f[1]>2&&d(y.pick(-1,-1).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,0).lo(1,1).hi(f[0]-2,f[1]-2),u.pick(-1,-1,1).lo(1,1).hi(f[0]-2,f[1]-2)),f[1]>2&&(b(y.pick(0,-1).lo(1).hi(f[1]-2),u.pick(0,-1,1).lo(1).hi(f[1]-2)),m(u.pick(0,-1,0).lo(1).hi(f[1]-2))),f[1]>2&&(b(y.pick(f[0]-1,-1).lo(1).hi(f[1]-2),u.pick(f[0]-1,-1,1).lo(1).hi(f[1]-2)),m(u.pick(f[0]-1,-1,0).lo(1).hi(f[1]-2))),f[0]>2&&(b(y.pick(-1,0).lo(1).hi(f[0]-2),u.pick(-1,0,0).lo(1).hi(f[0]-2)),m(u.pick(-1,0,1).lo(1).hi(f[0]-2))),f[0]>2&&(b(y.pick(-1,f[1]-1).lo(1).hi(f[0]-2),u.pick(-1,f[1]-1,0).lo(1).hi(f[0]-2)),m(u.pick(-1,f[1]-1,1).lo(1).hi(f[0]-2))),u.set(0,0,0,0),u.set(0,0,1,0),u.set(f[0]-1,0,0,0),u.set(f[0]-1,0,1,0),u.set(0,f[1]-1,0,0),u.set(0,f[1]-1,1,0),u.set(f[0]-1,f[1]-1,0,0),u.set(f[0]-1,f[1]-1,1,0),u}}function S(E){var m=E.join(),f=v[m];if(f)return f;for(var b=E.length,d=[T,l],u=1;u<=b;++u)d.push(_(u));var y=w,f=y.apply(void 0,d);return v[m]=f,f}e.exports=function(m,b,d){if(Array.isArray(d)||(typeof d=="string"?d=o(b.dimension,d):d=o(b.dimension,"clamp")),b.size===0)return m;if(b.dimension===0)return m.set(0),m;var u=S(d);return u(m,b)}},4317:function(e){"use strict";function t(n,s){var c=Math.floor(s),h=s-c,v=0<=c&&c<n.shape[0],p=0<=c+1&&c+1<n.shape[0],T=v?+n.get(c):0,l=p?+n.get(c+1):0;return(1-h)*T+h*l}function r(n,s,c){var h=Math.floor(s),v=s-h,p=0<=h&&h<n.shape[0],T=0<=h+1&&h+1<n.shape[0],l=Math.floor(c),_=c-l,w=0<=l&&l<n.shape[1],S=0<=l+1&&l+1<n.shape[1],E=p&&w?n.get(h,l):0,m=p&&S?n.get(h,l+1):0,b=T&&w?n.get(h+1,l):0,d=T&&S?n.get(h+1,l+1):0;return(1-_)*((1-v)*E+v*b)+_*((1-v)*m+v*d)}function o(n,s,c,h){var v=Math.floor(s),p=s-v,T=0<=v&&v<n.shape[0],l=0<=v+1&&v+1<n.shape[0],_=Math.floor(c),w=c-_,S=0<=_&&_<n.shape[1],E=0<=_+1&&_+1<n.shape[1],m=Math.floor(h),b=h-m,d=0<=m&&m<n.shape[2],u=0<=m+1&&m+1<n.shape[2],y=T&&S&&d?n.get(v,_,m):0,f=T&&E&&d?n.get(v,_+1,m):0,P=l&&S&&d?n.get(v+1,_,m):0,L=l&&E&&d?n.get(v+1,_+1,m):0,z=T&&S&&u?n.get(v,_,m+1):0,F=T&&E&&u?n.get(v,_+1,m+1):0,B=l&&S&&u?n.get(v+1,_,m+1):0,O=l&&E&&u?n.get(v+1,_+1,m+1):0;return(1-b)*((1-w)*((1-p)*y+p*P)+w*((1-p)*f+p*L))+b*((1-w)*((1-p)*z+p*B)+w*((1-p)*F+p*O))}function a(n){var s=n.shape.length|0,c=new Array(s),h=new Array(s),v=new Array(s),p=new Array(s),T,l;for(T=0;T<s;++T)l=+arguments[T+1],c[T]=Math.floor(l),h[T]=l-c[T],v[T]=0<=c[T]&&c[T]<n.shape[T],p[T]=0<=c[T]+1&&c[T]+1<n.shape[T];var _=0,w,S,E;e:for(T=0;T<1<<s;++T){for(S=1,E=n.offset,w=0;w<s;++w)if(T&1<<w){if(!p[w])continue e;S*=h[w],E+=n.stride[w]*(c[w]+1)}else{if(!v[w])continue e;S*=1-h[w],E+=n.stride[w]*c[w]}_+=S*n.data[E]}return _}function i(n,s,c,h){switch(n.shape.length){case 0:return 0;case 1:return t(n,s);case 2:return r(n,s,c);case 3:return o(n,s,c,h);default:return a.apply(void 0,arguments)}}e.exports=i,e.exports.d1=t,e.exports.d2=r,e.exports.d3=o},5298:function(e,t){"use strict";var r={"float64,2,1,0":function(){return function(v,p,T,l,_){var w=v[0],S=v[1],E=v[2],m=T[0],b=T[1],d=T[2];l|=0;var u=0,y=0,f=0,P=d,L=b-E*d,z=m-S*b;for(f=0;f<w;++f){for(y=0;y<S;++y){for(u=0;u<E;++u)p[l]/=_,l+=P;l+=L}l+=z}}},"uint8,2,0,1,float64,2,1,0":function(){return function(v,p,T,l,_,w,S,E){var m=v[0],b=v[1],d=v[2],u=T[0],y=T[1],f=T[2],P=w[0],L=w[1],z=w[2];l|=0,S|=0;for(var F=l,B=S,O=v[0]|0;O>0;){O<64?(m=O,O=0):(m=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(b=I,I=0):(b=64,I-=64),l=F+O*u+I*y,S=B+O*P+I*L;var N=0,U=0,W=0,Q=f,ue=u-d*f,se=y-m*u,he=z,G=P-d*z,$=L-m*P;for(W=0;W<b;++W){for(U=0;U<m;++U){for(N=0;N<d;++N)p[l]=_[S]*E,l+=Q,S+=he;l+=ue,S+=G}l+=se,S+=$}}}}},"float32,1,0,float32,1,0":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=T[0],d=T[1],u=w[0],y=w[1];l|=0,S|=0;var f=0,P=0,L=d,z=b-m*d,F=y,B=u-m*y;for(P=0;P<E;++P){for(f=0;f<m;++f)p[l]=_[S],l+=L,S+=F;l+=z,S+=B}}},"float32,1,0,float32,0,1":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=T[0],d=T[1],u=w[0],y=w[1];l|=0,S|=0;for(var f=l,P=S,L=v[1]|0;L>0;){L<64?(m=L,L=0):(m=64,L-=64);for(var z=v[0]|0;z>0;){z<64?(E=z,z=0):(E=64,z-=64),l=f+L*d+z*b,S=P+L*y+z*u;var F=0,B=0,O=d,I=b-m*d,N=y,U=u-m*y;for(B=0;B<E;++B){for(F=0;F<m;++F)p[l]=_[S],l+=O,S+=N;l+=I,S+=U}}}}},"uint8,2,0,1,uint8,1,2,0":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=v[2],d=T[0],u=T[1],y=T[2],f=w[0],P=w[1],L=w[2];l|=0,S|=0;for(var z=l,F=S,B=v[2]|0;B>0;){B<64?(b=B,B=0):(b=64,B-=64);for(var O=v[0]|0;O>0;){O<64?(E=O,O=0):(E=64,O-=64);for(var I=v[1]|0;I>0;){I<64?(m=I,I=0):(m=64,I-=64),l=z+B*y+O*d+I*u,S=F+B*L+O*f+I*P;var N=0,U=0,W=0,Q=y,ue=d-b*y,se=u-E*d,he=L,G=f-b*L,$=P-E*f;for(W=0;W<m;++W){for(U=0;U<E;++U){for(N=0;N<b;++N)p[l]=_[S],l+=Q,S+=he;l+=ue,S+=G}l+=se,S+=$}}}}}},"uint8,2,0,1,array,2,0,1":function(){return function(v,p,T,l,_,w,S){var E=v[0],m=v[1],b=v[2],d=T[0],u=T[1],y=T[2],f=w[0],P=w[1],L=w[2];l|=0,S|=0;var z=0,F=0,B=0,O=y,I=d-b*y,N=u-E*d,U=L,W=f-b*L,Q=P-E*f;for(B=0;B<m;++B){for(F=0;F<E;++F){for(z=0;z<b;++z)p[l]=_[S],l+=O,S+=U;l+=I,S+=W}l+=N,S+=Q}}}};function o(h,v){var p=v.join(","),T=r[p];return T()}var a=o,i={mul:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=_.dtype,d=_.order,u=[w,S.join(),E,m.join(),b,d.join()].join(),y=v[u];return y||(v[u]=y=h([w,S,E,m,b,d])),y(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_.data,_.stride,_.offset|0)}},muls:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=[w,S.join(),E,m.join()].join(),d=v[b];return d||(v[b]=d=h([w,S,E,m])),d(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_)}},mulseq:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=[_,w.join()].join(),E=v[S];return E||(v[S]=E=h([_,w])),E(T.shape.slice(0),T.data,T.stride,T.offset|0,l)}},div:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=_.dtype,d=_.order,u=[w,S.join(),E,m.join(),b,d.join()].join(),y=v[u];return y||(v[u]=y=h([w,S,E,m,b,d])),y(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_.data,_.stride,_.offset|0)}},divs:function(h){var v={};return function(T,l,_){var w=T.dtype,S=T.order,E=l.dtype,m=l.order,b=[w,S.join(),E,m.join()].join(),d=v[b];return d||(v[b]=d=h([w,S,E,m])),d(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0,_)}},divseq:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=[_,w.join()].join(),E=v[S];return E||(v[S]=E=h([_,w])),E(T.shape.slice(0),T.data,T.stride,T.offset|0,l)}},assign:function(h){var v={};return function(T,l){var _=T.dtype,w=T.order,S=l.dtype,E=l.order,m=[_,w.join(),S,E.join()].join(),b=v[m];return b||(v[m]=b=h([_,w,S,E])),b(T.shape.slice(0),T.data,T.stride,T.offset|0,l.data,l.stride,l.offset|0)}}};function n(h){var v=i[h.funcName];return v(a.bind(void 0,h))}function s(h){return n({funcName:h.funcName})}var c={mul:"*",div:"/"};(function(){for(var h in c)t[h]=s({funcName:h}),t[h+"s"]=s({funcName:h+"s"}),t[h+"seq"]=s({funcName:h+"seq"})})(),t.assign=s({funcName:"assign"})},9994:function(e,t,r){"use strict";var o=r(9618),a=r(8277);e.exports=function(n,s){for(var c=[],h=n,v=1;Array.isArray(h);)c.push(h.length),v*=h.length,h=h[0];return c.length===0?o():(s||(s=o(new Float64Array(v),c)),a(s,n),s)}},8277:function(e){"use strict";function t(){return function(s,c,h,v,p){var T=s[0],l=s[1],_=s[2],w=h[0],S=h[1],E=h[2],m=[0,0,0];v|=0;var b=0,d=0,u=0,y=E,f=S-_*E,P=w-l*S;for(u=0;u<T;++u){for(d=0;d<l;++d){for(b=0;b<_;++b){{var L=p,z;for(z=0;z<m.length-1;++z)L=L[m[z]];c[v]=L[m[m.length-1]]}v+=y,++m[2]}v+=f,m[2]-=_,++m[1]}v+=P,m[1]-=l,++m[0]}}}function r(){return t()}var o=r;function a(s){var c={};return function(v,p){var T=v.dtype,l=v.order,_=[T,l.join()].join(),w=c[_];return w||(c[_]=w=s([T,l])),w(v.shape.slice(0),v.data,v.stride,v.offset|0,p)}}function i(s){return a(o.bind(void 0,s))}function n(s){return i({funcName:s.funcName})}e.exports=n({funcName:"convert"})},7640:function(e,t,r){"use strict";var o=r(1888);function a(p){switch(p){case"uint32":return[o.mallocUint32,o.freeUint32];default:return null}}var i={"uint32,1,0":function(p,T){return function(_,w,S,E,m,b,d,u,y,f,P){var L,z,F,B=_*m+E,O,I=p(u),N,U,W,Q;for(L=_+1;L<=w;++L){for(z=L,B+=m,F=B,N=0,U=B,O=0;O<u;++O)I[N++]=S[U],U+=y;e:for(;z-- >_;){N=0,U=F-m;t:for(O=0;O<u;++O){if(W=S[U],Q=I[N],W<Q)break e;if(W>Q)break t;U+=f,N+=P}for(N=F,U=F-m,O=0;O<u;++O)S[N]=S[U],N+=y,U+=y;F-=m}for(N=F,U=0,O=0;O<u;++O)S[N]=I[U++],N+=y}T(I)}}};function n(p,T){var l=a(T),_=[T,p].join(","),w=i[_];return l?w(l[0],l[1]):w()}var s={"uint32,1,0":function(p,T,l){return function _(w,S,E,m,b,d,u,y,f,P,L){var z=(S-w+1)/6|0,F=w+z,B=S-z,O=w+S>>1,I=O-z,N=O+z,U=F,W=I,Q=O,ue=N,se=B,he=w+1,G=S-1,$=!0,J,Z,re,ne,j,ee,ie,fe,be,Ae=0,Be=0,Ie=0,Ze,at,it,et,lt,Me,ge,ce,ze,tt,nt,Qe,Ct,St,Ot,jt,ur=y,ar=T(ur),Cr=T(ur);at=b*U,it=b*W,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=W,W=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*U,it=b*ue,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=U,U=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*Q,it=b*ue,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=Q,Q=ue,ue=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=se,se=Z;break e}if(Ie<0)break e;jt+=P}at=b*W,it=b*Q,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=W,W=Q,Q=Z;break e}if(Ie<0)break e;jt+=P}at=b*ue,it=b*se,jt=m;e:for(Ze=0;Ze<y;++Ze){if(ie=at+jt,fe=it+jt,Ie=E[ie]-E[fe],Ie>0){Z=ue,ue=se,se=Z;break e}if(Ie<0)break e;jt+=P}for(at=b*U,it=b*W,et=b*Q,lt=b*ue,Me=b*se,ge=b*F,ce=b*O,ze=b*B,Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,tt=lt+jt,nt=Me+jt,Qe=ge+jt,Ct=ce+jt,St=ze+jt,ar[Ot]=E[fe],Cr[Ot]=E[tt],$=$&&ar[Ot]===Cr[Ot],re=E[ie],ne=E[be],j=E[nt],E[Qe]=re,E[Ct]=ne,E[St]=j,++Ot,jt+=f;for(at=b*I,it=b*w,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],jt+=f;for(at=b*N,it=b*S,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],jt+=f;if($)for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie!==0)if(Ie<0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie>0)G--;else if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G;break}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G;break}}}else for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ae=E[ie]-ar[Ot],Ae!==0)break e;Ot+=L,ie+=P}if(Ae<0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else{ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Be=E[ie]-Cr[Ot],Be!==0)break e;Ot+=L,ie+=P}if(Be>0)for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-Cr[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie>0){if(--G<ee)break;continue}else{ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G}break}}}}for(at=b*w,it=b*(he-1),Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],E[fe]=ar[Ot],++Ot,jt+=f;for(at=b*S,it=b*(G+1),Ot=0,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,E[ie]=E[fe],E[fe]=Cr[Ot],++Ot,jt+=f;if(he-2-w<=32?p(w,he-2,E,m,b,d,u,y,f,P,L):_(w,he-2,E,m,b,d,u,y,f,P,L),S-(G+2)<=32?p(G+2,S,E,m,b,d,u,y,f,P,L):_(G+2,S,E,m,b,d,u,y,f,P,L),$){l(ar),l(Cr);return}if(he<F&&G>B){e:for(;;){for(ie=m+he*b,Ot=0,jt=m,Ze=0;Ze<y;++Ze){if(E[ie]!==ar[Ot])break e;++Ot,ie+=f}++he}e:for(;;){for(ie=m+G*b,Ot=0,jt=m,Ze=0;Ze<y;++Ze){if(E[ie]!==Cr[Ot])break e;++Ot,ie+=f}--G}for(ee=he;ee<=G;++ee){ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ae=E[ie]-ar[Ot],Ae!==0)break e;Ot+=L,ie+=P}if(Ae===0){if(ee!==he)for(at=b*ee,it=b*he,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;++he}else{ie=m+ee*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Be=E[ie]-Cr[Ot],Be!==0)break e;Ot+=L,ie+=P}if(Be===0)for(;;){ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-Cr[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie===0){if(--G<ee)break;continue}else{ie=m+G*b,Ot=0;e:for(Ze=0;Ze<y;++Ze){if(Ie=E[ie]-ar[Ot],Ie!==0)break e;Ot+=L,ie+=P}if(Ie<0){for(at=b*ee,it=b*he,et=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,be=et+jt,J=E[ie],E[ie]=E[fe],E[fe]=E[be],E[be]=J,jt+=f;++he,--G}else{for(at=b*ee,it=b*G,jt=m,Ze=0;Ze<y;++Ze)ie=at+jt,fe=it+jt,J=E[ie],E[ie]=E[fe],E[fe]=J,jt+=f;--G}break}}}}}l(ar),l(Cr),G-he<=32?p(he,G,E,m,b,d,u,y,f,P,L):_(he,G,E,m,b,d,u,y,f,P,L)}}};function c(p,T,l){var _=a(T),w=[T,p].join(","),S=s[w];return p.length>1&&_?S(l,_[0],_[1]):S(l)}var h={"uint32,1,0":function(p,T){return function(l){var _=l.data,w=l.offset|0,S=l.shape,E=l.stride,m=E[0]|0,b=S[0]|0,d=E[1]|0,u=S[1]|0,y=d,f=d,P=1;b<=32?p(0,b-1,_,w,m,d,b,u,y,f,P):T(0,b-1,_,w,m,d,b,u,y,f,P)}}};function v(p,T){var l=[T,p].join(","),_=h[l],w=n(p,T),S=c(p,T,w);return _(w,S)}e.exports=v},446:function(e,t,r){"use strict";var o=r(7640),a={};function i(n){var s=n.order,c=n.dtype,h=[s,c],v=h.join(":"),p=a[v];return p||(a[v]=p=o(s,c)),p(n),n}e.exports=i},9618:function(e,t,r){var o=r(7163),a=typeof Float64Array<"u";function i(T,l){return T[0]-l[0]}function n(){var T=this.stride,l=new Array(T.length),_;for(_=0;_<l.length;++_)l[_]=[Math.abs(T[_]),_];l.sort(i);var w=new Array(l.length);for(_=0;_<w.length;++_)w[_]=l[_][1];return w}var s={T:function(T){function l(w){this.data=w}var _=l.prototype;return _.dtype=T,_.index=function(){return-1},_.size=0,_.dimension=-1,_.shape=_.stride=_.order=[],_.lo=_.hi=_.transpose=_.step=function(){return new l(this.data)},_.get=_.set=function(){},_.pick=function(){return null},function(S){return new l(S)}},0:function(T,l){function _(S,E){this.data=S,this.offset=E}var w=_.prototype;return w.dtype=T,w.index=function(){return this.offset},w.dimension=0,w.size=1,w.shape=w.stride=w.order=[],w.lo=w.hi=w.transpose=w.step=function(){return new _(this.data,this.offset)},w.pick=function(){return l(this.data)},w.valueOf=w.get=function(){return T==="generic"?this.data.get(this.offset):this.data[this.offset]},w.set=function(E){return T==="generic"?this.data.set(this.offset,E):this.data[this.offset]=E},function(E,m,b,d){return new _(E,d)}},1:function(T,l,_){function w(E,m,b,d){this.data=E,this.shape=[m],this.stride=[b],this.offset=d|0}var S=w.prototype;return S.dtype=T,S.dimension=1,Object.defineProperty(S,"size",{get:function(){return this.shape[0]}}),S.order=[0],S.set=function(m,b){return T==="generic"?this.data.set(this.offset+this.stride[0]*m,b):this.data[this.offset+this.stride[0]*m]=b},S.get=function(m){return T==="generic"?this.data.get(this.offset+this.stride[0]*m):this.data[this.offset+this.stride[0]*m]},S.index=function(m){return this.offset+this.stride[0]*m},S.hi=function(m){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,this.stride[0],this.offset)},S.lo=function(m){var b=this.offset,d=0,u=this.shape[0],y=this.stride[0];return typeof m=="number"&&m>=0&&(d=m|0,b+=y*d,u-=d),new w(this.data,u,y,b)},S.step=function(m){var b=this.shape[0],d=this.stride[0],u=this.offset,y=0,f=Math.ceil;return typeof m=="number"&&(y=m|0,y<0?(u+=d*(b-1),b=f(-b/y)):b=f(b/y),d*=y),new w(this.data,b,d,u)},S.transpose=function(m){m=m===void 0?0:m|0;var b=this.shape,d=this.stride;return new w(this.data,b[m],d[m],this.offset)},S.pick=function(m){var b=[],d=[],u=this.offset;typeof m=="number"&&m>=0?u=u+this.stride[0]*m|0:(b.push(this.shape[0]),d.push(this.stride[0]));var y=l[b.length+1];return y(this.data,b,d,u)},function(m,b,d,u){return new w(m,b[0],d[0],u)}},2:function(T,l,_){function w(E,m,b,d,u,y){this.data=E,this.shape=[m,b],this.stride=[d,u],this.offset=y|0}var S=w.prototype;return S.dtype=T,S.dimension=2,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]}}),Object.defineProperty(S,"order",{get:function(){return Math.abs(this.stride[0])>Math.abs(this.stride[1])?[1,0]:[0,1]}}),S.set=function(m,b,d){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b,d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]=d},S.get=function(m,b){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b):this.data[this.offset+this.stride[0]*m+this.stride[1]*b]},S.index=function(m,b){return this.offset+this.stride[0]*m+this.stride[1]*b},S.hi=function(m,b){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,this.stride[0],this.stride[1],this.offset)},S.lo=function(m,b){var d=this.offset,u=0,y=this.shape[0],f=this.shape[1],P=this.stride[0],L=this.stride[1];return typeof m=="number"&&m>=0&&(u=m|0,d+=P*u,y-=u),typeof b=="number"&&b>=0&&(u=b|0,d+=L*u,f-=u),new w(this.data,y,f,P,L,d)},S.step=function(m,b){var d=this.shape[0],u=this.shape[1],y=this.stride[0],f=this.stride[1],P=this.offset,L=0,z=Math.ceil;return typeof m=="number"&&(L=m|0,L<0?(P+=y*(d-1),d=z(-d/L)):d=z(d/L),y*=L),typeof b=="number"&&(L=b|0,L<0?(P+=f*(u-1),u=z(-u/L)):u=z(u/L),f*=L),new w(this.data,d,u,y,f,P)},S.transpose=function(m,b){m=m===void 0?0:m|0,b=b===void 0?1:b|0;var d=this.shape,u=this.stride;return new w(this.data,d[m],d[b],u[m],u[b],this.offset)},S.pick=function(m,b){var d=[],u=[],y=this.offset;typeof m=="number"&&m>=0?y=y+this.stride[0]*m|0:(d.push(this.shape[0]),u.push(this.stride[0])),typeof b=="number"&&b>=0?y=y+this.stride[1]*b|0:(d.push(this.shape[1]),u.push(this.stride[1]));var f=l[d.length+1];return f(this.data,d,u,y)},function(m,b,d,u){return new w(m,b[0],b[1],d[0],d[1],u)}},3:function(T,l,_){function w(E,m,b,d,u,y,f,P){this.data=E,this.shape=[m,b,d],this.stride=[u,y,f],this.offset=P|0}var S=w.prototype;return S.dtype=T,S.dimension=3,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]}}),Object.defineProperty(S,"order",{get:function(){var m=Math.abs(this.stride[0]),b=Math.abs(this.stride[1]),d=Math.abs(this.stride[2]);return m>b?b>d?[2,1,0]:m>d?[1,2,0]:[1,0,2]:m>d?[2,0,1]:d>b?[0,1,2]:[0,2,1]}}),S.set=function(m,b,d,u){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d,u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]=u},S.get=function(m,b,d){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d]},S.index=function(m,b,d){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d},S.hi=function(m,b,d){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,this.stride[0],this.stride[1],this.stride[2],this.offset)},S.lo=function(m,b,d){var u=this.offset,y=0,f=this.shape[0],P=this.shape[1],L=this.shape[2],z=this.stride[0],F=this.stride[1],B=this.stride[2];return typeof m=="number"&&m>=0&&(y=m|0,u+=z*y,f-=y),typeof b=="number"&&b>=0&&(y=b|0,u+=F*y,P-=y),typeof d=="number"&&d>=0&&(y=d|0,u+=B*y,L-=y),new w(this.data,f,P,L,z,F,B,u)},S.step=function(m,b,d){var u=this.shape[0],y=this.shape[1],f=this.shape[2],P=this.stride[0],L=this.stride[1],z=this.stride[2],F=this.offset,B=0,O=Math.ceil;return typeof m=="number"&&(B=m|0,B<0?(F+=P*(u-1),u=O(-u/B)):u=O(u/B),P*=B),typeof b=="number"&&(B=b|0,B<0?(F+=L*(y-1),y=O(-y/B)):y=O(y/B),L*=B),typeof d=="number"&&(B=d|0,B<0?(F+=z*(f-1),f=O(-f/B)):f=O(f/B),z*=B),new w(this.data,u,y,f,P,L,z,F)},S.transpose=function(m,b,d){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0;var u=this.shape,y=this.stride;return new w(this.data,u[m],u[b],u[d],y[m],y[b],y[d],this.offset)},S.pick=function(m,b,d){var u=[],y=[],f=this.offset;typeof m=="number"&&m>=0?f=f+this.stride[0]*m|0:(u.push(this.shape[0]),y.push(this.stride[0])),typeof b=="number"&&b>=0?f=f+this.stride[1]*b|0:(u.push(this.shape[1]),y.push(this.stride[1])),typeof d=="number"&&d>=0?f=f+this.stride[2]*d|0:(u.push(this.shape[2]),y.push(this.stride[2]));var P=l[u.length+1];return P(this.data,u,y,f)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],d[0],d[1],d[2],u)}},4:function(T,l,_){function w(E,m,b,d,u,y,f,P,L,z){this.data=E,this.shape=[m,b,d,u],this.stride=[y,f,P,L],this.offset=z|0}var S=w.prototype;return S.dtype=T,S.dimension=4,Object.defineProperty(S,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]}}),Object.defineProperty(S,"order",{get:_}),S.set=function(m,b,d,u,y){return T==="generic"?this.data.set(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u,y):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]=y},S.get=function(m,b,d,u){return T==="generic"?this.data.get(this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u):this.data[this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u]},S.index=function(m,b,d,u){return this.offset+this.stride[0]*m+this.stride[1]*b+this.stride[2]*d+this.stride[3]*u},S.hi=function(m,b,d,u){return new w(this.data,typeof m!="number"||m<0?this.shape[0]:m|0,typeof b!="number"||b<0?this.shape[1]:b|0,typeof d!="number"||d<0?this.shape[2]:d|0,typeof u!="number"||u<0?this.shape[3]:u|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.offset)},S.lo=function(m,b,d,u){var y=this.offset,f=0,P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.stride[0],O=this.stride[1],I=this.stride[2],N=this.stride[3];return typeof m=="number"&&m>=0&&(f=m|0,y+=B*f,P-=f),typeof b=="number"&&b>=0&&(f=b|0,y+=O*f,L-=f),typeof d=="number"&&d>=0&&(f=d|0,y+=I*f,z-=f),typeof u=="number"&&u>=0&&(f=u|0,y+=N*f,F-=f),new w(this.data,P,L,z,F,B,O,I,N,y)},S.step=function(m,b,d,u){var y=this.shape[0],f=this.shape[1],P=this.shape[2],L=this.shape[3],z=this.stride[0],F=this.stride[1],B=this.stride[2],O=this.stride[3],I=this.offset,N=0,U=Math.ceil;return typeof m=="number"&&(N=m|0,N<0?(I+=z*(y-1),y=U(-y/N)):y=U(y/N),z*=N),typeof b=="number"&&(N=b|0,N<0?(I+=F*(f-1),f=U(-f/N)):f=U(f/N),F*=N),typeof d=="number"&&(N=d|0,N<0?(I+=B*(P-1),P=U(-P/N)):P=U(P/N),B*=N),typeof u=="number"&&(N=u|0,N<0?(I+=O*(L-1),L=U(-L/N)):L=U(L/N),O*=N),new w(this.data,y,f,P,L,z,F,B,O,I)},S.transpose=function(m,b,d,u){m=m===void 0?0:m|0,b=b===void 0?1:b|0,d=d===void 0?2:d|0,u=u===void 0?3:u|0;var y=this.shape,f=this.stride;return new w(this.data,y[m],y[b],y[d],y[u],f[m],f[b],f[d],f[u],this.offset)},S.pick=function(m,b,d,u){var y=[],f=[],P=this.offset;typeof m=="number"&&m>=0?P=P+this.stride[0]*m|0:(y.push(this.shape[0]),f.push(this.stride[0])),typeof b=="number"&&b>=0?P=P+this.stride[1]*b|0:(y.push(this.shape[1]),f.push(this.stride[1])),typeof d=="number"&&d>=0?P=P+this.stride[2]*d|0:(y.push(this.shape[2]),f.push(this.stride[2])),typeof u=="number"&&u>=0?P=P+this.stride[3]*u|0:(y.push(this.shape[3]),f.push(this.stride[3]));var L=l[y.length+1];return L(this.data,y,f,P)},function(m,b,d,u){return new w(m,b[0],b[1],b[2],b[3],d[0],d[1],d[2],d[3],u)}},5:function(l,_,w){function S(m,b,d,u,y,f,P,L,z,F,B,O){this.data=m,this.shape=[b,d,u,y,f],this.stride=[P,L,z,F,B],this.offset=O|0}var E=S.prototype;return E.dtype=l,E.dimension=5,Object.defineProperty(E,"size",{get:function(){return this.shape[0]*this.shape[1]*this.shape[2]*this.shape[3]*this.shape[4]}}),Object.defineProperty(E,"order",{get:w}),E.set=function(b,d,u,y,f,P){return l==="generic"?this.data.set(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f,P):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]=P},E.get=function(b,d,u,y,f){return l==="generic"?this.data.get(this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f):this.data[this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f]},E.index=function(b,d,u,y,f){return this.offset+this.stride[0]*b+this.stride[1]*d+this.stride[2]*u+this.stride[3]*y+this.stride[4]*f},E.hi=function(b,d,u,y,f){return new S(this.data,typeof b!="number"||b<0?this.shape[0]:b|0,typeof d!="number"||d<0?this.shape[1]:d|0,typeof u!="number"||u<0?this.shape[2]:u|0,typeof y!="number"||y<0?this.shape[3]:y|0,typeof f!="number"||f<0?this.shape[4]:f|0,this.stride[0],this.stride[1],this.stride[2],this.stride[3],this.stride[4],this.offset)},E.lo=function(b,d,u,y,f){var P=this.offset,L=0,z=this.shape[0],F=this.shape[1],B=this.shape[2],O=this.shape[3],I=this.shape[4],N=this.stride[0],U=this.stride[1],W=this.stride[2],Q=this.stride[3],ue=this.stride[4];return typeof b=="number"&&b>=0&&(L=b|0,P+=N*L,z-=L),typeof d=="number"&&d>=0&&(L=d|0,P+=U*L,F-=L),typeof u=="number"&&u>=0&&(L=u|0,P+=W*L,B-=L),typeof y=="number"&&y>=0&&(L=y|0,P+=Q*L,O-=L),typeof f=="number"&&f>=0&&(L=f|0,P+=ue*L,I-=L),new S(this.data,z,F,B,O,I,N,U,W,Q,ue,P)},E.step=function(b,d,u,y,f){var P=this.shape[0],L=this.shape[1],z=this.shape[2],F=this.shape[3],B=this.shape[4],O=this.stride[0],I=this.stride[1],N=this.stride[2],U=this.stride[3],W=this.stride[4],Q=this.offset,ue=0,se=Math.ceil;return typeof b=="number"&&(ue=b|0,ue<0?(Q+=O*(P-1),P=se(-P/ue)):P=se(P/ue),O*=ue),typeof d=="number"&&(ue=d|0,ue<0?(Q+=I*(L-1),L=se(-L/ue)):L=se(L/ue),I*=ue),typeof u=="number"&&(ue=u|0,ue<0?(Q+=N*(z-1),z=se(-z/ue)):z=se(z/ue),N*=ue),typeof y=="number"&&(ue=y|0,ue<0?(Q+=U*(F-1),F=se(-F/ue)):F=se(F/ue),U*=ue),typeof f=="number"&&(ue=f|0,ue<0?(Q+=W*(B-1),B=se(-B/ue)):B=se(B/ue),W*=ue),new S(this.data,P,L,z,F,B,O,I,N,U,W,Q)},E.transpose=function(b,d,u,y,f){b=b===void 0?0:b|0,d=d===void 0?1:d|0,u=u===void 0?2:u|0,y=y===void 0?3:y|0,f=f===void 0?4:f|0;var P=this.shape,L=this.stride;return new S(this.data,P[b],P[d],P[u],P[y],P[f],L[b],L[d],L[u],L[y],L[f],this.offset)},E.pick=function(b,d,u,y,f){var P=[],L=[],z=this.offset;typeof b=="number"&&b>=0?z=z+this.stride[0]*b|0:(P.push(this.shape[0]),L.push(this.stride[0])),typeof d=="number"&&d>=0?z=z+this.stride[1]*d|0:(P.push(this.shape[1]),L.push(this.stride[1])),typeof u=="number"&&u>=0?z=z+this.stride[2]*u|0:(P.push(this.shape[2]),L.push(this.stride[2])),typeof y=="number"&&y>=0?z=z+this.stride[3]*y|0:(P.push(this.shape[3]),L.push(this.stride[3])),typeof f=="number"&&f>=0?z=z+this.stride[4]*f|0:(P.push(this.shape[4]),L.push(this.stride[4]));var F=_[P.length+1];return F(this.data,P,L,z)},function(b,d,u,y){return new S(b,d[0],d[1],d[2],d[3],d[4],u[0],u[1],u[2],u[3],u[4],y)}}};function c(T,l){var _=l===-1?"T":String(l),w=s[_];return l===-1?w(T):l===0?w(T,v[T][0]):w(T,v[T],n)}function h(T){if(o(T))return"buffer";if(a)switch(Object.prototype.toString.call(T)){case"[object Float64Array]":return"float64";case"[object Float32Array]":return"float32";case"[object Int8Array]":return"int8";case"[object Int16Array]":return"int16";case"[object Int32Array]":return"int32";case"[object Uint8ClampedArray]":return"uint8_clamped";case"[object Uint8Array]":return"uint8";case"[object Uint16Array]":return"uint16";case"[object Uint32Array]":return"uint32";case"[object BigInt64Array]":return"bigint64";case"[object BigUint64Array]":return"biguint64"}return Array.isArray(T)?"array":"generic"}var v={generic:[],buffer:[],array:[],float32:[],float64:[],int8:[],int16:[],int32:[],uint8_clamped:[],uint8:[],uint16:[],uint32:[],bigint64:[],biguint64:[]};function p(T,l,_,w){if(T===void 0){var u=v.array[0];return u([])}else typeof T=="number"&&(T=[T]);l===void 0&&(l=[T.length]);var S=l.length;if(_===void 0){_=new Array(S);for(var E=S-1,m=1;E>=0;--E)_[E]=m,m*=l[E]}if(w===void 0){w=0;for(var E=0;E<S;++E)_[E]<0&&(w-=(l[E]-1)*_[E])}for(var b=h(T),d=v[b];d.length<=S+1;)d.push(c(b,d.length-1));var u=d[S+1];return u(T,l,_,w)}e.exports=p},1278:function(e,t,r){"use strict";var o=r(2361),a=Math.pow(2,-1074),i=-1>>>0;e.exports=n;function n(s,c){if(isNaN(s)||isNaN(c))return NaN;if(s===c)return s;if(s===0)return c<0?-a:a;var h=o.hi(s),v=o.lo(s);return c>s==s>0?v===i?(h+=1,v=0):v+=1:v===0?(v=i,h-=1):v-=1,o.pack(v,h)}},8406:function(e,t){var r=1e-6,o=1e-6;t.vertexNormals=function(a,i,n){for(var s=i.length,c=new Array(s),h=n===void 0?r:n,v=0;v<s;++v)c[v]=[0,0,0];for(var v=0;v<a.length;++v)for(var p=a[v],T=0,l=p[p.length-1],_=p[0],w=0;w<p.length;++w){T=l,l=_,_=p[(w+1)%p.length];for(var S=i[T],E=i[l],m=i[_],b=new Array(3),d=0,u=new Array(3),y=0,f=0;f<3;++f)b[f]=S[f]-E[f],d+=b[f]*b[f],u[f]=m[f]-E[f],y+=u[f]*u[f];if(d*y>h)for(var P=c[l],L=1/Math.sqrt(d*y),f=0;f<3;++f){var z=(f+1)%3,F=(f+2)%3;P[f]+=L*(u[z]*b[F]-u[F]*b[z])}}for(var v=0;v<s;++v){for(var P=c[v],B=0,f=0;f<3;++f)B+=P[f]*P[f];if(B>h)for(var L=1/Math.sqrt(B),f=0;f<3;++f)P[f]*=L;else for(var f=0;f<3;++f)P[f]=0}return c},t.faceNormals=function(a,i,n){for(var s=a.length,c=new Array(s),h=n===void 0?o:n,v=0;v<s;++v){for(var p=a[v],T=new Array(3),l=0;l<3;++l)T[l]=i[p[l]];for(var _=new Array(3),w=new Array(3),l=0;l<3;++l)_[l]=T[1][l]-T[0][l],w[l]=T[2][l]-T[0][l];for(var S=new Array(3),E=0,l=0;l<3;++l){var m=(l+1)%3,b=(l+2)%3;S[l]=_[m]*w[b]-_[b]*w[m],E+=S[l]*S[l]}E>h?E=1/Math.sqrt(E):E=0;for(var l=0;l<3;++l)S[l]*=E;c[v]=S}return c}},4081:function(e){"use strict";e.exports=t;function t(r,o,a,i,n,s,c,h,v,p){var T=o+s+p;if(l>0){var l=Math.sqrt(T+1);r[0]=.5*(c-v)/l,r[1]=.5*(h-i)/l,r[2]=.5*(a-s)/l,r[3]=.5*l}else{var _=Math.max(o,s,p),l=Math.sqrt(2*_-T+1);o>=_?(r[0]=.5*l,r[1]=.5*(n+a)/l,r[2]=.5*(h+i)/l,r[3]=.5*(c-v)/l):s>=_?(r[0]=.5*(a+n)/l,r[1]=.5*l,r[2]=.5*(v+c)/l,r[3]=.5*(h-i)/l):(r[0]=.5*(i+h)/l,r[1]=.5*(c+v)/l,r[2]=.5*l,r[3]=.5*(a-n)/l)}return r}},9977:function(e,t,r){"use strict";e.exports=l;var o=r(9215),a=r(6582),i=r(7399),n=r(7608),s=r(4081);function c(_,w,S){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2))}function h(_,w,S,E){return Math.sqrt(Math.pow(_,2)+Math.pow(w,2)+Math.pow(S,2)+Math.pow(E,2))}function v(_,w){var S=w[0],E=w[1],m=w[2],b=w[3],d=h(S,E,m,b);d>1e-6?(_[0]=S/d,_[1]=E/d,_[2]=m/d,_[3]=b/d):(_[0]=_[1]=_[2]=0,_[3]=1)}function p(_,w,S){this.radius=o([S]),this.center=o(w),this.rotation=o(_),this.computedRadius=this.radius.curve(0),this.computedCenter=this.center.curve(0),this.computedRotation=this.rotation.curve(0),this.computedUp=[.1,0,0],this.computedEye=[.1,0,0],this.computedMatrix=[.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],this.recalcMatrix(0)}var T=p.prototype;T.lastT=function(){return Math.max(this.radius.lastT(),this.center.lastT(),this.rotation.lastT())},T.recalcMatrix=function(_){this.radius.curve(_),this.center.curve(_),this.rotation.curve(_);var w=this.computedRotation;v(w,w);var S=this.computedMatrix;i(S,w);var E=this.computedCenter,m=this.computedEye,b=this.computedUp,d=Math.exp(this.computedRadius[0]);m[0]=E[0]+d*S[2],m[1]=E[1]+d*S[6],m[2]=E[2]+d*S[10],b[0]=S[1],b[1]=S[5],b[2]=S[9];for(var u=0;u<3;++u){for(var y=0,f=0;f<3;++f)y+=S[u+4*f]*m[f];S[12+u]=-y}},T.getMatrix=function(_,w){this.recalcMatrix(_);var S=this.computedMatrix;if(w){for(var E=0;E<16;++E)w[E]=S[E];return w}return S},T.idle=function(_){this.center.idle(_),this.radius.idle(_),this.rotation.idle(_)},T.flush=function(_){this.center.flush(_),this.radius.flush(_),this.rotation.flush(_)},T.pan=function(_,w,S,E){w=w||0,S=S||0,E=E||0,this.recalcMatrix(_);var m=this.computedMatrix,b=m[1],d=m[5],u=m[9],y=c(b,d,u);b/=y,d/=y,u/=y;var f=m[0],P=m[4],L=m[8],z=f*b+P*d+L*u;f-=b*z,P-=d*z,L-=u*z;var F=c(f,P,L);f/=F,P/=F,L/=F;var B=m[2],O=m[6],I=m[10],N=B*b+O*d+I*u,U=B*f+O*P+I*L;B-=N*b+U*f,O-=N*d+U*P,I-=N*u+U*L;var W=c(B,O,I);B/=W,O/=W,I/=W;var Q=f*w+b*S,ue=P*w+d*S,se=L*w+u*S;this.center.move(_,Q,ue,se);var he=Math.exp(this.computedRadius[0]);he=Math.max(1e-4,he+E),this.radius.set(_,Math.log(he))},T.rotate=function(_,w,S,E){this.recalcMatrix(_),w=w||0,S=S||0;var m=this.computedMatrix,b=m[0],d=m[4],u=m[8],y=m[1],f=m[5],P=m[9],L=m[2],z=m[6],F=m[10],B=w*b+S*y,O=w*d+S*f,I=w*u+S*P,N=-(z*I-F*O),U=-(F*B-L*I),W=-(L*O-z*B),Q=Math.sqrt(Math.max(0,1-Math.pow(N,2)-Math.pow(U,2)-Math.pow(W,2))),ue=h(N,U,W,Q);ue>1e-6?(N/=ue,U/=ue,W/=ue,Q/=ue):(N=U=W=0,Q=1);var se=this.computedRotation,he=se[0],G=se[1],$=se[2],J=se[3],Z=he*Q+J*N+G*W-$*U,re=G*Q+J*U+$*N-he*W,ne=$*Q+J*W+he*U-G*N,j=J*Q-he*N-G*U-$*W;if(E){N=L,U=z,W=F;var ee=Math.sin(E)/c(N,U,W);N*=ee,U*=ee,W*=ee,Q=Math.cos(w),Z=Z*Q+j*N+re*W-ne*U,re=re*Q+j*U+ne*N-Z*W,ne=ne*Q+j*W+Z*U-re*N,j=j*Q-Z*N-re*U-ne*W}var ie=h(Z,re,ne,j);ie>1e-6?(Z/=ie,re/=ie,ne/=ie,j/=ie):(Z=re=ne=0,j=1),this.rotation.set(_,Z,re,ne,j)},T.lookAt=function(_,w,S,E){this.recalcMatrix(_),S=S||this.computedCenter,w=w||this.computedEye,E=E||this.computedUp;var m=this.computedMatrix;a(m,w,S,E);var b=this.computedRotation;s(b,m[0],m[1],m[2],m[4],m[5],m[6],m[8],m[9],m[10]),v(b,b),this.rotation.set(_,b[0],b[1],b[2],b[3]);for(var d=0,u=0;u<3;++u)d+=Math.pow(S[u]-w[u],2);this.radius.set(_,.5*Math.log(Math.max(d,1e-6))),this.center.set(_,S[0],S[1],S[2])},T.translate=function(_,w,S,E){this.center.move(_,w||0,S||0,E||0)},T.setMatrix=function(_,w){var S=this.computedRotation;s(S,w[0],w[1],w[2],w[4],w[5],w[6],w[8],w[9],w[10]),v(S,S),this.rotation.set(_,S[0],S[1],S[2],S[3]);var E=this.computedMatrix;n(E,w);var m=E[15];if(Math.abs(m)>1e-6){var b=E[12]/m,d=E[13]/m,u=E[14]/m;this.recalcMatrix(_);var y=Math.exp(this.computedRadius[0]);this.center.set(_,b-E[2]*y,d-E[6]*y,u-E[10]*y),this.radius.idle(_)}else this.center.idle(_),this.radius.idle(_)},T.setDistance=function(_,w){w>0&&this.radius.set(_,Math.log(w))},T.setDistanceLimits=function(_,w){_>0?_=Math.log(_):_=-1/0,w>0?w=Math.log(w):w=1/0,w=Math.max(w,_),this.radius.bounds[0][0]=_,this.radius.bounds[1][0]=w},T.getDistanceLimits=function(_){var w=this.radius.bounds;return _?(_[0]=Math.exp(w[0][0]),_[1]=Math.exp(w[1][0]),_):[Math.exp(w[0][0]),Math.exp(w[1][0])]},T.toJSON=function(){return this.recalcMatrix(this.lastT()),{center:this.computedCenter.slice(),rotation:this.computedRotation.slice(),distance:Math.log(this.computedRadius[0]),zoomMin:this.radius.bounds[0][0],zoomMax:this.radius.bounds[1][0]}},T.fromJSON=function(_){var w=this.lastT(),S=_.center;S&&this.center.set(w,S[0],S[1],S[2]);var E=_.rotation;E&&this.rotation.set(w,E[0],E[1],E[2],E[3]);var m=_.distance;m&&m>0&&this.radius.set(w,Math.log(m)),this.setDistanceLimits(_.zoomMin,_.zoomMax)};function l(_){_=_||{};var w=_.center||[0,0,0],S=_.rotation||[0,0,0,1],E=_.radius||1;w=[].slice.call(w,0,3),S=[].slice.call(S,0,4),v(S,S);var m=new p(S,w,Math.log(E));return m.setDistanceLimits(_.zoomMin,_.zoomMax),("eye"in _||"up"in _)&&m.lookAt(0,_.eye,_.center,_.up),m}},1371:function(e,t,r){"use strict";var o=r(3233);e.exports=function(i,n,s){return s=typeof s<"u"?s+"":" ",o(s,n)+i}},3202:function(e){e.exports=function(r,o){o||(o=[0,""]),r=String(r);var a=parseFloat(r,10);return o[0]=a,o[1]=r.match(/[\d.\-\+]*\s*(.*)/)[1]||"",o}},3088:function(e,t,r){"use strict";e.exports=a;var o=r(3140);function a(i,n){for(var s=n.length|0,c=i.length,h=[new Array(s),new Array(s)],v=0;v<s;++v)h[0][v]=[],h[1][v]=[];for(var v=0;v<c;++v){var p=i[v];h[0][p[0]].push(p),h[1][p[1]].push(p)}for(var T=[],v=0;v<s;++v)h[0][v].length+h[1][v].length===0&&T.push([v]);function l(u,y){var f=h[y][u[y]];f.splice(f.indexOf(u),1)}function _(u,y,f){for(var P,L,z,F=0;F<2;++F)if(h[F][y].length>0){P=h[F][y][0],z=F;break}L=P[z^1];for(var B=0;B<2;++B)for(var O=h[B][y],I=0;I<O.length;++I){var N=O[I],U=N[B^1],W=o(n[u],n[y],n[L],n[U]);W>0&&(P=N,L=U,z=B)}return f||P&&l(P,z),L}function w(u,y){var f=h[y][u][0],P=[u];l(f,y);for(var L=f[y^1],z=y;;){for(;L!==u;)P.push(L),L=_(P[P.length-2],L,!1);if(h[0][u].length+h[1][u].length===0)break;var F=P[P.length-1],B=u,O=P[1],I=_(F,B,!0);if(o(n[F],n[B],n[O],n[I])<0)break;P.push(u),L=_(F,B)}return P}function S(u,y){return y[1]===y[y.length-1]}for(var v=0;v<s;++v)for(var E=0;E<2;++E){for(var m=[];h[E][v].length>0;){var b=h[0][v].length,d=w(v,E);S(m,d)?m.push.apply(m,d):(m.length>0&&T.push(m),m=d)}m.length>0&&T.push(m)}return T}},5609:function(e,t,r){"use strict";e.exports=a;var o=r(3134);function a(i,n){for(var s=o(i,n.length),c=new Array(n.length),h=new Array(n.length),v=[],p=0;p<n.length;++p){var T=s[p].length;h[p]=T,c[p]=!0,T<=1&&v.push(p)}for(;v.length>0;){var l=v.pop();c[l]=!1;for(var _=s[l],p=0;p<_.length;++p){var w=_[p];--h[w]===0&&v.push(w)}}for(var S=new Array(n.length),E=[],p=0;p<n.length;++p)if(c[p]){var l=E.length;S[p]=l,E.push(n[p])}else S[p]=-1;for(var m=[],p=0;p<i.length;++p){var b=i[p];c[b[0]]&&c[b[1]]&&m.push([S[b[0]],S[b[1]]])}return[m,E]}},2095:function(e,t,r){"use strict";e.exports=T;var o=r(3134),a=r(3088),i=r(5085),n=r(5250),s=r(8210),c=r(1682),h=r(5609);function v(l,_){for(var w=new Array(l),S=0;S<l;++S)w[S]=_;return w}function p(l){for(var _=new Array(l),w=0;w<l;++w)_[w]=[];return _}function T(l,_){var ee=h(l,_);l=ee[0],_=ee[1];for(var w=_.length,S=l.length,E=o(l,_.length),m=0;m<w;++m)if(E[m].length%2===1)throw new Error("planar-graph-to-polyline: graph must be manifold");var b=a(l,_);function d(Ze){for(var at=Ze.length,it=[0],et=0;et<at;++et){var lt=_[Ze[et]],Me=_[Ze[(et+1)%at]],ge=n(-lt[0],lt[1]),ce=n(-lt[0],Me[1]),ze=n(Me[0],lt[1]),tt=n(Me[0],Me[1]);it=s(it,s(s(ge,ce),s(ze,tt)))}return it[it.length-1]>0}b=b.filter(d);for(var u=b.length,y=new Array(u),f=new Array(u),m=0;m<u;++m){y[m]=m;var P=new Array(u),L=b[m].map(function(at){return _[at]}),z=i([L]),F=0;e:for(var B=0;B<u;++B)if(P[B]=0,m!==B){for(var O=b[B],I=O.length,N=0;N<I;++N){var U=z(_[O[N]]);if(U!==0){U<0&&(P[B]=1,F+=1);continue e}}P[B]=1,F+=1}f[m]=[F,m,P]}f.sort(function(Ze,at){return at[0]-Ze[0]});for(var m=0;m<u;++m)for(var P=f[m],W=P[1],Q=P[2],B=0;B<u;++B)Q[B]&&(y[B]=W);for(var ue=p(u),m=0;m<u;++m)ue[m].push(y[m]),ue[y[m]].push(m);for(var se={},he=v(w,!1),m=0;m<u;++m)for(var O=b[m],I=O.length,B=0;B<I;++B){var G=O[B],$=O[(B+1)%I],J=Math.min(G,$)+":"+Math.max(G,$);if(J in se){var Z=se[J];ue[Z].push(m),ue[m].push(Z),he[G]=he[$]=!0}else se[J]=m}function re(Ze){for(var at=Ze.length,it=0;it<at;++it)if(!he[Ze[it]])return!1;return!0}for(var ne=[],j=v(u,-1),m=0;m<u;++m)y[m]===m&&!re(b[m])?(ne.push(m),j[m]=0):j[m]=-1;for(var ee=[];ne.length>0;){var ie=ne.pop(),fe=ue[ie];c(fe,function(Ze,at){return Ze-at});var be=fe.length,Ae=j[ie],Be;if(Ae===0){var O=b[ie];Be=[O]}for(var m=0;m<be;++m){var Ie=fe[m];if(!(j[Ie]>=0)&&(j[Ie]=Ae^1,ne.push(Ie),Ae===0)){var O=b[Ie];re(O)||(O.reverse(),Be.push(O))}}Ae===0&&ee.push(Be)}return ee}},5085:function(e,t,r){e.exports=_;var o=r(3250)[3],a=r(4209),i=r(3352),n=r(2478);function s(){return!0}function c(w){return function(S,E){var m=w[S];return m?!!m.queryPoint(E,s):!1}}function h(w){for(var S={},E=0;E<w.length;++E){var m=w[E],b=m[0][0],d=m[0][1],u=m[1][1],y=[Math.min(d,u),Math.max(d,u)];b in S?S[b].push(y):S[b]=[y]}for(var f={},P=Object.keys(S),E=0;E<P.length;++E){var L=S[P[E]];f[P[E]]=i(L)}return c(f)}function v(w,S){return function(E){var m=n.le(S,E[0]);if(m<0)return 1;var b=w[m];if(!b)if(m>0&&S[m]===E[0])b=w[m-1];else return 1;for(var d=1;b;){var u=b.key,y=o(E,u[0],u[1]);if(u[0][0]<u[1][0])if(y<0)b=b.left;else if(y>0)d=-1,b=b.right;else return 0;else if(y>0)b=b.left;else if(y<0)d=1,b=b.right;else return 0}return d}}function p(w){return 1}function T(w){return function(E){return w(E[0],E[1])?0:1}}function l(w,S){return function(m){return w(m[0],m[1])?0:S(m)}}function _(w){for(var S=w.length,E=[],m=[],b=0,d=0;d<S;++d)for(var u=w[d],y=u.length,f=y-1,P=0;P<y;f=P++){var L=u[f],z=u[P];L[0]===z[0]?m.push([L,z]):E.push([L,z])}if(E.length===0)return m.length===0?p:T(h(m));var F=a(E),B=v(F.slabs,F.coordinates);return m.length===0?B:l(h(m),B)}},9346:function(e){"use strict";var t=new Float64Array(4),r=new Float64Array(4),o=new Float64Array(4);function a(i,n,s,c,h){t.length<c.length&&(t=new Float64Array(c.length),r=new Float64Array(c.length),o=new Float64Array(c.length));for(var v=0;v<c.length;++v)t[v]=i[v]-c[v],r[v]=n[v]-i[v],o[v]=s[v]-i[v];for(var p=0,T=0,l=0,_=0,w=0,S=0,v=0;v<c.length;++v){var E=r[v],m=o[v],b=t[v];p+=E*E,T+=E*m,l+=m*m,_+=b*E,w+=b*m,S+=b*b}var d=Math.abs(p*l-T*T),u=T*w-l*_,y=T*_-p*w,f;if(u+y<=d)if(u<0)y<0&&_<0?(y=0,-_>=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S)):(u=0,w>=0?(y=0,f=S):-w>=l?(y=1,f=l+2*w+S):(y=-w/l,f=w*y+S));else if(y<0)y=0,_>=0?(u=0,f=S):-_>=p?(u=1,f=p+2*_+S):(u=-_/p,f=_*u+S);else{var P=1/d;u*=P,y*=P,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S}else{var L,z,F,B;u<0?(L=T+_,z=l+w,z>L?(F=z-L,B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(u=0,z<=0?(y=1,f=l+2*w+S):w>=0?(y=0,f=S):(y=-w/l,f=w*y+S))):y<0?(L=T+w,z=p+_,z>L?(F=z-L,B=p-2*T+l,F>=B?(y=1,u=0,f=l+2*w+S):(y=F/B,u=1-y,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)):(y=0,z<=0?(u=1,f=p+2*_+S):_>=0?(u=0,f=S):(u=-_/p,f=_*u+S))):(F=l+w-T-_,F<=0?(u=0,y=1,f=l+2*w+S):(B=p-2*T+l,F>=B?(u=1,y=0,f=p+2*_+S):(u=F/B,y=1-u,f=u*(p*u+T*y+2*_)+y*(T*u+l*y+2*w)+S)))}for(var O=1-u-y,v=0;v<c.length;++v)h[v]=O*i[v]+u*n[v]+y*s[v];return f<0?0:f}e.exports=a},8648:function(e,t,r){e.exports=r(783)},2653:function(e,t,r){"use strict";var o=r(3865);e.exports=a;function a(i,n){for(var s=i.length,c=new Array(s),h=0;h<s;++h)c[h]=o(i[h],n[h]);return c}},5838:function(e,t,r){"use strict";e.exports=a;var o=r(7842);function a(i){for(var n=new Array(i.length),s=0;s<i.length;++s)n[s]=o(i[s]);return n}},8987:function(e,t,r){"use strict";var o=r(7842),a=r(6504);e.exports=i;function i(n,s){for(var c=o(s),h=n.length,v=new Array(h),p=0;p<h;++p)v[p]=a(n[p],c);return v}},544:function(e,t,r){"use strict";var o=r(5572);e.exports=a;function a(i,n){for(var s=i.length,c=new Array(s),h=0;h<s;++h)c[h]=o(i[h],n[h]);return c}},5771:function(e,t,r){"use strict";var o=r(8507),a=r(3788),i=r(2419);e.exports=n;function n(s){s.sort(a);for(var c=s.length,h=0,v=0;v<c;++v){var p=s[v],T=i(p);if(T!==0){if(h>0){var l=s[h-1];if(o(p,l)===0&&i(l)!==T){h-=1;continue}}s[h++]=p}}return s.length=h,s}},3233:function(e){"use strict";var t="",r;e.exports=o;function o(a,i){if(typeof a!="string")throw new TypeError("expected a string");if(i===1)return a;if(i===2)return a+a;var n=a.length*i;if(r!==a||typeof r>"u")r=a,t="";else if(t.length>=n)return t.substr(0,n);for(;n>t.length&&i>1;)i&1&&(t+=a),i>>=1,a+=a;return t+=a,t=t.substr(0,n),t}},3025:function(e,t,r){e.exports=r.g.performance&&r.g.performance.now?function(){return performance.now()}:Date.now||function(){return+new Date}},7004:function(e){"use strict";e.exports=t;function t(r){for(var o=r.length,a=r[r.length-1],i=o,n=o-2;n>=0;--n){var s=a,c=r[n];a=s+c;var h=a-s,v=c-h;v&&(r[--i]=a,a=v)}for(var p=0,n=i;n<o;++n){var s=r[n],c=a;a=s+c;var h=a-s,v=c-h;v&&(r[p++]=v)}return r[p++]=a,r.length=p,r}},2962:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(3012),n=r(7004),s=6;function c(S,E,m,b){return function(u){return b(S(m(u[0][0],u[1][1]),m(-u[0][1],u[1][0])))}}function h(S,E,m,b){return function(u){return b(S(E(S(m(u[1][1],u[2][2]),m(-u[1][2],u[2][1])),u[0][0]),S(E(S(m(u[1][0],u[2][2]),m(-u[1][2],u[2][0])),-u[0][1]),E(S(m(u[1][0],u[2][1]),m(-u[1][1],u[2][0])),u[0][2]))))}}function v(S,E,m,b){return function(u){return b(S(S(E(S(E(S(m(u[2][2],u[3][3]),m(-u[2][3],u[3][2])),u[1][1]),S(E(S(m(u[2][1],u[3][3]),m(-u[2][3],u[3][1])),-u[1][2]),E(S(m(u[2][1],u[3][2]),m(-u[2][2],u[3][1])),u[1][3]))),u[0][0]),E(S(E(S(m(u[2][2],u[3][3]),m(-u[2][3],u[3][2])),u[1][0]),S(E(S(m(u[2][0],u[3][3]),m(-u[2][3],u[3][0])),-u[1][2]),E(S(m(u[2][0],u[3][2]),m(-u[2][2],u[3][0])),u[1][3]))),-u[0][1])),S(E(S(E(S(m(u[2][1],u[3][3]),m(-u[2][3],u[3][1])),u[1][0]),S(E(S(m(u[2][0],u[3][3]),m(-u[2][3],u[3][0])),-u[1][1]),E(S(m(u[2][0],u[3][1]),m(-u[2][1],u[3][0])),u[1][3]))),u[0][2]),E(S(E(S(m(u[2][1],u[3][2]),m(-u[2][2],u[3][1])),u[1][0]),S(E(S(m(u[2][0],u[3][2]),m(-u[2][2],u[3][0])),-u[1][1]),E(S(m(u[2][0],u[3][1]),m(-u[2][1],u[3][0])),u[1][2]))),-u[0][3]))))}}function p(S,E,m,b){return function(u){return b(S(S(E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][2]),S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),-u[2][3]),E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][4]))),u[1][1]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][3]),E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][4]))),-u[1][2])),S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][3]))),-u[1][4]))),u[0][0]),E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][2]),S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),-u[2][3]),E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][3]),E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),u[2][4]))),-u[1][2])),S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][3]))),-u[1][4]))),-u[0][1])),S(E(S(S(E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][3]),E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][3],u[4][4]),m(-u[3][4],u[4][3])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][3]),E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),u[2][4]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][4]))),u[1][3]),E(S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][3]))),-u[1][4]))),u[0][2]),S(E(S(S(E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][4]))),u[1][0]),E(S(E(S(m(u[3][2],u[4][4]),m(-u[3][4],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][4]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][4]),m(-u[3][4],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][4]),m(-u[3][4],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][4]))),u[1][2]),E(S(E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][2]))),-u[1][4]))),-u[0][3]),E(S(S(E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][1]),S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),-u[2][2]),E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][3]))),u[1][0]),E(S(E(S(m(u[3][2],u[4][3]),m(-u[3][3],u[4][2])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][2]),E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),u[2][3]))),-u[1][1])),S(E(S(E(S(m(u[3][1],u[4][3]),m(-u[3][3],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][3]),m(-u[3][3],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][3]))),u[1][2]),E(S(E(S(m(u[3][1],u[4][2]),m(-u[3][2],u[4][1])),u[2][0]),S(E(S(m(u[3][0],u[4][2]),m(-u[3][2],u[4][0])),-u[2][1]),E(S(m(u[3][0],u[4][1]),m(-u[3][1],u[4][0])),u[2][2]))),-u[1][3]))),u[0][4])))))}}function T(S){var E=S===2?c:S===3?h:S===4?v:S===5?p:void 0;return E(a,i,o,n)}var l=[function(){return[0]},function(E){return[E[0][0]]}];function _(S,E,m,b,d,u,y,f){return function(L){switch(L.length){case 0:return S(L);case 1:return E(L);case 2:return m(L);case 3:return b(L);case 4:return d(L);case 5:return u(L)}var z=y[L.length];return z||(z=y[L.length]=f(L.length)),z(L)}}function w(){for(;l.length<s;)l.push(T(l.length));e.exports=_.apply(void 0,l.concat([l,T]));for(var S=0;S<l.length;++S)e.exports[S]=l[S]}w()},1944:function(e,t,r){"use strict";var o=r(5250),a=r(8210);e.exports=i;function i(n,s){for(var c=o(n[0],s[0]),h=1;h<n.length;++h)c=a(c,o(n[h],s[h]));return c}},2646:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(8545),n=r(3012),s=6;function c(d){var u=d===3?T:d===4?l:d===5?_:w;return u(a,i,o,n)}function h(){return 0}function v(){return 0}function p(){return 0}function T(d,u,y,f){function P(L,z,F){var B=y(L[0],L[0]),O=f(B,z[0]),I=f(B,F[0]),N=y(z[0],z[0]),U=f(N,L[0]),W=f(N,F[0]),Q=y(F[0],F[0]),ue=f(Q,L[0]),se=f(Q,z[0]),he=d(u(se,W),u(U,O)),G=u(ue,I),$=u(he,G);return $[$.length-1]}return P}function l(d,u,y,f){function P(L,z,F,B){var O=d(y(L[0],L[0]),y(L[1],L[1])),I=f(O,z[0]),N=f(O,F[0]),U=f(O,B[0]),W=d(y(z[0],z[0]),y(z[1],z[1])),Q=f(W,L[0]),ue=f(W,F[0]),se=f(W,B[0]),he=d(y(F[0],F[0]),y(F[1],F[1])),G=f(he,L[0]),$=f(he,z[0]),J=f(he,B[0]),Z=d(y(B[0],B[0]),y(B[1],B[1])),re=f(Z,L[0]),ne=f(Z,z[0]),j=f(Z,F[0]),ee=d(d(f(u(j,J),z[1]),d(f(u(ne,se),-F[1]),f(u($,ue),B[1]))),d(f(u(ne,se),L[1]),d(f(u(re,U),-z[1]),f(u(Q,I),B[1])))),ie=d(d(f(u(j,J),L[1]),d(f(u(re,U),-F[1]),f(u(G,N),B[1]))),d(f(u($,ue),L[1]),d(f(u(G,N),-z[1]),f(u(Q,I),F[1])))),fe=u(ee,ie);return fe[fe.length-1]}return P}function _(d,u,y,f){function P(L,z,F,B,O){var I=d(y(L[0],L[0]),d(y(L[1],L[1]),y(L[2],L[2]))),N=f(I,z[0]),U=f(I,F[0]),W=f(I,B[0]),Q=f(I,O[0]),ue=d(y(z[0],z[0]),d(y(z[1],z[1]),y(z[2],z[2]))),se=f(ue,L[0]),he=f(ue,F[0]),G=f(ue,B[0]),$=f(ue,O[0]),J=d(y(F[0],F[0]),d(y(F[1],F[1]),y(F[2],F[2]))),Z=f(J,L[0]),re=f(J,z[0]),ne=f(J,B[0]),j=f(J,O[0]),ee=d(y(B[0],B[0]),d(y(B[1],B[1]),y(B[2],B[2]))),ie=f(ee,L[0]),fe=f(ee,z[0]),be=f(ee,F[0]),Ae=f(ee,O[0]),Be=d(y(O[0],O[0]),d(y(O[1],O[1]),y(O[2],O[2]))),Ie=f(Be,L[0]),Ze=f(Be,z[0]),at=f(Be,F[0]),it=f(Be,B[0]),et=d(d(d(f(d(f(u(it,Ae),F[1]),d(f(u(at,j),-B[1]),f(u(be,ne),O[1]))),z[2]),d(f(d(f(u(it,Ae),z[1]),d(f(u(Ze,$),-B[1]),f(u(fe,G),O[1]))),-F[2]),f(d(f(u(at,j),z[1]),d(f(u(Ze,$),-F[1]),f(u(re,he),O[1]))),B[2]))),d(f(d(f(u(be,ne),z[1]),d(f(u(fe,G),-F[1]),f(u(re,he),B[1]))),-O[2]),d(f(d(f(u(it,Ae),z[1]),d(f(u(Ze,$),-B[1]),f(u(fe,G),O[1]))),L[2]),f(d(f(u(it,Ae),L[1]),d(f(u(Ie,Q),-B[1]),f(u(ie,W),O[1]))),-z[2])))),d(d(f(d(f(u(Ze,$),L[1]),d(f(u(Ie,Q),-z[1]),f(u(se,N),O[1]))),B[2]),d(f(d(f(u(fe,G),L[1]),d(f(u(ie,W),-z[1]),f(u(se,N),B[1]))),-O[2]),f(d(f(u(be,ne),z[1]),d(f(u(fe,G),-F[1]),f(u(re,he),B[1]))),L[2]))),d(f(d(f(u(be,ne),L[1]),d(f(u(ie,W),-F[1]),f(u(Z,U),B[1]))),-z[2]),d(f(d(f(u(fe,G),L[1]),d(f(u(ie,W),-z[1]),f(u(se,N),B[1]))),F[2]),f(d(f(u(re,he),L[1]),d(f(u(Z,U),-z[1]),f(u(se,N),F[1]))),-B[2]))))),lt=d(d(d(f(d(f(u(it,Ae),F[1]),d(f(u(at,j),-B[1]),f(u(be,ne),O[1]))),L[2]),f(d(f(u(it,Ae),L[1]),d(f(u(Ie,Q),-B[1]),f(u(ie,W),O[1]))),-F[2])),d(f(d(f(u(at,j),L[1]),d(f(u(Ie,Q),-F[1]),f(u(Z,U),O[1]))),B[2]),f(d(f(u(be,ne),L[1]),d(f(u(ie,W),-F[1]),f(u(Z,U),B[1]))),-O[2]))),d(d(f(d(f(u(at,j),z[1]),d(f(u(Ze,$),-F[1]),f(u(re,he),O[1]))),L[2]),f(d(f(u(at,j),L[1]),d(f(u(Ie,Q),-F[1]),f(u(Z,U),O[1]))),-z[2])),d(f(d(f(u(Ze,$),L[1]),d(f(u(Ie,Q),-z[1]),f(u(se,N),O[1]))),F[2]),f(d(f(u(re,he),L[1]),d(f(u(Z,U),-z[1]),f(u(se,N),F[1]))),-O[2])))),Me=u(et,lt);return Me[Me.length-1]}return P}function w(d,u,y,f){function P(L,z,F,B,O,I){var N=d(d(y(L[0],L[0]),y(L[1],L[1])),d(y(L[2],L[2]),y(L[3],L[3]))),U=f(N,z[0]),W=f(N,F[0]),Q=f(N,B[0]),ue=f(N,O[0]),se=f(N,I[0]),he=d(d(y(z[0],z[0]),y(z[1],z[1])),d(y(z[2],z[2]),y(z[3],z[3]))),G=f(he,L[0]),$=f(he,F[0]),J=f(he,B[0]),Z=f(he,O[0]),re=f(he,I[0]),ne=d(d(y(F[0],F[0]),y(F[1],F[1])),d(y(F[2],F[2]),y(F[3],F[3]))),j=f(ne,L[0]),ee=f(ne,z[0]),ie=f(ne,B[0]),fe=f(ne,O[0]),be=f(ne,I[0]),Ae=d(d(y(B[0],B[0]),y(B[1],B[1])),d(y(B[2],B[2]),y(B[3],B[3]))),Be=f(Ae,L[0]),Ie=f(Ae,z[0]),Ze=f(Ae,F[0]),at=f(Ae,O[0]),it=f(Ae,I[0]),et=d(d(y(O[0],O[0]),y(O[1],O[1])),d(y(O[2],O[2]),y(O[3],O[3]))),lt=f(et,L[0]),Me=f(et,z[0]),ge=f(et,F[0]),ce=f(et,B[0]),ze=f(et,I[0]),tt=d(d(y(I[0],I[0]),y(I[1],I[1])),d(y(I[2],I[2]),y(I[3],I[3]))),nt=f(tt,L[0]),Qe=f(tt,z[0]),Ct=f(tt,F[0]),St=f(tt,B[0]),Ot=f(tt,O[0]),jt=d(d(d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),F[2]),f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),-B[2])),d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),O[2]),f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),-I[2]))),z[3]),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-B[2])),d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),O[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-I[2]))),-F[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),O[2]),f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),-I[2]))),B[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),z[2]),f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-I[2]))),-O[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),z[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-F[2])),d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-O[2]))),I[3])),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-B[2])),d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),O[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-I[2]))),L[3]),f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-B[2])),d(f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),O[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-I[2]))),-z[3])))),d(d(d(f(d(d(f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),O[2]),f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),-I[2]))),B[3]),f(d(d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-I[2]))),-O[3])),d(f(d(d(f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-O[2]))),I[3]),f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),z[2]),f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-I[2]))),L[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-I[2]))),-z[3]),f(d(d(f(d(f(u(St,it),z[1]),d(f(u(Qe,re),-B[1]),f(u(Ie,J),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-I[2]))),F[3])),d(f(d(d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),L[2]),f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-I[2]))),-B[3]),f(d(d(f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),L[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-z[2])),d(f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-B[2]))),I[3]))))),ur=d(d(d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),F[2]),f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),-B[2])),d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),O[2]),f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),-I[2]))),L[3]),d(f(d(d(f(d(f(u(Ot,ze),B[1]),d(f(u(St,it),-O[1]),f(u(ce,at),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-B[2])),d(f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),O[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-I[2]))),-F[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),O[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-I[2]))),B[3]))),d(d(f(d(d(f(d(f(u(St,it),F[1]),d(f(u(Ct,be),-B[1]),f(u(Ze,ie),I[1]))),L[2]),f(d(f(u(St,it),L[1]),d(f(u(nt,se),-B[1]),f(u(Be,Q),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-I[2]))),-O[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-F[2])),d(f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-O[2]))),I[3])),d(f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),z[2]),f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),-F[2])),d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),O[2]),f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),-I[2]))),L[3]),f(d(d(f(d(f(u(Ot,ze),F[1]),d(f(u(Ct,be),-O[1]),f(u(ge,fe),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-F[2])),d(f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),O[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-I[2]))),-z[3])))),d(d(d(f(d(d(f(d(f(u(Ot,ze),z[1]),d(f(u(Qe,re),-O[1]),f(u(Me,Z),I[1]))),L[2]),f(d(f(u(Ot,ze),L[1]),d(f(u(nt,se),-O[1]),f(u(lt,ue),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),O[2]),f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),-I[2]))),F[3]),f(d(d(f(d(f(u(Ct,be),z[1]),d(f(u(Qe,re),-F[1]),f(u(ee,$),I[1]))),L[2]),f(d(f(u(Ct,be),L[1]),d(f(u(nt,se),-F[1]),f(u(j,W),I[1]))),-z[2])),d(f(d(f(u(Qe,re),L[1]),d(f(u(nt,se),-z[1]),f(u(G,U),I[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-I[2]))),-O[3])),d(f(d(d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),L[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-O[2]))),I[3]),f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),z[2]),f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),-F[2])),d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),B[2]),f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),-O[2]))),L[3]))),d(d(f(d(d(f(d(f(u(ce,at),F[1]),d(f(u(ge,fe),-B[1]),f(u(Ze,ie),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-F[2])),d(f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),B[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-O[2]))),-z[3]),f(d(d(f(d(f(u(ce,at),z[1]),d(f(u(Me,Z),-B[1]),f(u(Ie,J),O[1]))),L[2]),f(d(f(u(ce,at),L[1]),d(f(u(lt,ue),-B[1]),f(u(Be,Q),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),B[2]),f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),-O[2]))),F[3])),d(f(d(d(f(d(f(u(ge,fe),z[1]),d(f(u(Me,Z),-F[1]),f(u(ee,$),O[1]))),L[2]),f(d(f(u(ge,fe),L[1]),d(f(u(lt,ue),-F[1]),f(u(j,W),O[1]))),-z[2])),d(f(d(f(u(Me,Z),L[1]),d(f(u(lt,ue),-z[1]),f(u(G,U),O[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-O[2]))),-B[3]),f(d(d(f(d(f(u(Ze,ie),z[1]),d(f(u(Ie,J),-F[1]),f(u(ee,$),B[1]))),L[2]),f(d(f(u(Ze,ie),L[1]),d(f(u(Be,Q),-F[1]),f(u(j,W),B[1]))),-z[2])),d(f(d(f(u(Ie,J),L[1]),d(f(u(Be,Q),-z[1]),f(u(G,U),B[1]))),F[2]),f(d(f(u(ee,$),L[1]),d(f(u(j,W),-z[1]),f(u(G,U),F[1]))),-B[2]))),O[3]))))),ar=u(jt,ur);return ar[ar.length-1]}return P}var S=[h,v,p];function E(d){var u=S[d.length];return u||(u=S[d.length]=c(d.length)),u.apply(void 0,d)}function m(d,u,y,f,P,L,z,F){function B(O,I,N,U,W,Q){switch(arguments.length){case 0:case 1:return 0;case 2:return f(O,I);case 3:return P(O,I,N);case 4:return L(O,I,N,U);case 5:return z(O,I,N,U,W);case 6:return F(O,I,N,U,W,Q)}for(var ue=new Array(arguments.length),se=0;se<arguments.length;++se)ue[se]=arguments[se];return d(ue)}return B}function b(){for(;S.length<=s;)S.push(c(S.length));e.exports=m.apply(void 0,[E].concat(S));for(var d=0;d<=s;++d)e.exports[d]=S[d]}b()},727:function(e,t,r){"use strict";var o=r(2962),a=6;function i(S){var E=S===2?c:S===3?h:S===4?v:S===5?p:T;return S<6?E(o[S]):E(o)}function n(){return[[0]]}function s(S,E){return[[E[0]],[S[0][0]]]}function c(S){return function(m,b){return[S([[+b[0],+m[0][1]],[+b[1],+m[1][1]]]),S([[+m[0][0],+b[0]],[+m[1][0],+b[1]]]),S(m)]}}function h(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2]],[+b[1],+m[1][1],+m[1][2]],[+b[2],+m[2][1],+m[2][2]]]),S([[+m[0][0],+b[0],+m[0][2]],[+m[1][0],+b[1],+m[1][2]],[+m[2][0],+b[2],+m[2][2]]]),S([[+m[0][0],+m[0][1],+b[0]],[+m[1][0],+m[1][1],+b[1]],[+m[2][0],+m[2][1],+b[2]]]),S(m)]}}function v(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3]],[+b[1],+m[1][1],+m[1][2],+m[1][3]],[+b[2],+m[2][1],+m[2][2],+m[2][3]],[+b[3],+m[3][1],+m[3][2],+m[3][3]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3]],[+m[1][0],+b[1],+m[1][2],+m[1][3]],[+m[2][0],+b[2],+m[2][2],+m[2][3]],[+m[3][0],+b[3],+m[3][2],+m[3][3]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3]],[+m[1][0],+m[1][1],+b[1],+m[1][3]],[+m[2][0],+m[2][1],+b[2],+m[2][3]],[+m[3][0],+m[3][1],+b[3],+m[3][3]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+b[3]]]),S(m)]}}function p(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3],+m[0][4]],[+b[1],+m[1][1],+m[1][2],+m[1][3],+m[1][4]],[+b[2],+m[2][1],+m[2][2],+m[2][3],+m[2][4]],[+b[3],+m[3][1],+m[3][2],+m[3][3],+m[3][4]],[+b[4],+m[4][1],+m[4][2],+m[4][3],+m[4][4]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3],+m[0][4]],[+m[1][0],+b[1],+m[1][2],+m[1][3],+m[1][4]],[+m[2][0],+b[2],+m[2][2],+m[2][3],+m[2][4]],[+m[3][0],+b[3],+m[3][2],+m[3][3],+m[3][4]],[+m[4][0],+b[4],+m[4][2],+m[4][3],+m[4][4]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3],+m[0][4]],[+m[1][0],+m[1][1],+b[1],+m[1][3],+m[1][4]],[+m[2][0],+m[2][1],+b[2],+m[2][3],+m[2][4]],[+m[3][0],+m[3][1],+b[3],+m[3][3],+m[3][4]],[+m[4][0],+m[4][1],+b[4],+m[4][3],+m[4][4]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0],+m[0][4]],[+m[1][0],+m[1][1],+m[1][2],+b[1],+m[1][4]],[+m[2][0],+m[2][1],+m[2][2],+b[2],+m[2][4]],[+m[3][0],+m[3][1],+m[3][2],+b[3],+m[3][4]],[+m[4][0],+m[4][1],+m[4][2],+b[4],+m[4][4]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+b[3]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+b[4]]]),S(m)]}}function T(S){return function(m,b){return[S([[+b[0],+m[0][1],+m[0][2],+m[0][3],+m[0][4],+m[0][5]],[+b[1],+m[1][1],+m[1][2],+m[1][3],+m[1][4],+m[1][5]],[+b[2],+m[2][1],+m[2][2],+m[2][3],+m[2][4],+m[2][5]],[+b[3],+m[3][1],+m[3][2],+m[3][3],+m[3][4],+m[3][5]],[+b[4],+m[4][1],+m[4][2],+m[4][3],+m[4][4],+m[4][5]],[+b[5],+m[5][1],+m[5][2],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+b[0],+m[0][2],+m[0][3],+m[0][4],+m[0][5]],[+m[1][0],+b[1],+m[1][2],+m[1][3],+m[1][4],+m[1][5]],[+m[2][0],+b[2],+m[2][2],+m[2][3],+m[2][4],+m[2][5]],[+m[3][0],+b[3],+m[3][2],+m[3][3],+m[3][4],+m[3][5]],[+m[4][0],+b[4],+m[4][2],+m[4][3],+m[4][4],+m[4][5]],[+m[5][0],+b[5],+m[5][2],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+b[0],+m[0][3],+m[0][4],+m[0][5]],[+m[1][0],+m[1][1],+b[1],+m[1][3],+m[1][4],+m[1][5]],[+m[2][0],+m[2][1],+b[2],+m[2][3],+m[2][4],+m[2][5]],[+m[3][0],+m[3][1],+b[3],+m[3][3],+m[3][4],+m[3][5]],[+m[4][0],+m[4][1],+b[4],+m[4][3],+m[4][4],+m[4][5]],[+m[5][0],+m[5][1],+b[5],+m[5][3],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+b[0],+m[0][4],+m[0][5]],[+m[1][0],+m[1][1],+m[1][2],+b[1],+m[1][4],+m[1][5]],[+m[2][0],+m[2][1],+m[2][2],+b[2],+m[2][4],+m[2][5]],[+m[3][0],+m[3][1],+m[3][2],+b[3],+m[3][4],+m[3][5]],[+m[4][0],+m[4][1],+m[4][2],+b[4],+m[4][4],+m[4][5]],[+m[5][0],+m[5][1],+m[5][2],+b[5],+m[5][4],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+b[0],+m[0][5]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+b[1],+m[1][5]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+b[2],+m[2][5]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+b[3],+m[3][5]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+b[4],+m[4][5]],[+m[5][0],+m[5][1],+m[5][2],+m[5][3],+b[5],+m[5][5]]]),S([[+m[0][0],+m[0][1],+m[0][2],+m[0][3],+m[0][4],+b[0]],[+m[1][0],+m[1][1],+m[1][2],+m[1][3],+m[1][4],+b[1]],[+m[2][0],+m[2][1],+m[2][2],+m[2][3],+m[2][4],+b[2]],[+m[3][0],+m[3][1],+m[3][2],+m[3][3],+m[3][4],+b[3]],[+m[4][0],+m[4][1],+m[4][2],+m[4][3],+m[4][4],+b[4]],[+m[5][0],+m[5][1],+m[5][2],+m[5][3],+m[5][4],+b[5]]]),S(m)]}}var l=[n,s];function _(S,E,m,b,d,u,y,f){return function(L,z){switch(L.length){case 0:return S(L,z);case 1:return E(L,z);case 2:return m(L,z);case 3:return b(L,z);case 4:return d(L,z);case 5:return u(L,z)}var F=y[L.length];return F||(F=y[L.length]=f(L.length)),F(L,z)}}function w(){for(;l.length<a;)l.push(i(l.length));e.exports=_.apply(void 0,l.concat([l,i]));for(var S=0;S<a;++S)e.exports[S]=l[S]}w()},3250:function(e,t,r){"use strict";var o=r(5250),a=r(8210),i=r(3012),n=r(8545),s=5,c=11102230246251565e-32,h=(3+16*c)*c,v=(7+56*c)*c;function p(u,y,f,P){return function(z,F,B){var O=u(u(y(F[1],B[0]),y(-B[1],F[0])),u(y(z[1],F[0]),y(-F[1],z[0]))),I=u(y(z[1],B[0]),y(-B[1],z[0])),N=P(O,I);return N[N.length-1]}}function T(u,y,f,P){return function(z,F,B,O){var I=u(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2])))),N=u(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2])))),U=P(I,N);return U[U.length-1]}}function l(u,y,f,P){return function(z,F,B,O,I){var N=u(u(u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),B[2]),u(f(u(y(B[1],I[0]),y(-I[1],B[0])),-O[2]),f(u(y(B[1],O[0]),y(-O[1],B[0])),I[2]))),F[3]),u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-O[2]),f(u(y(F[1],O[0]),y(-O[1],F[0])),I[2]))),-B[3]),f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),I[2]))),O[3]))),u(f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),-I[3]),u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-O[2]),f(u(y(F[1],O[0]),y(-O[1],F[0])),I[2]))),z[3]),f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-O[2]),f(u(y(z[1],O[0]),y(-O[1],z[0])),I[2]))),-F[3])))),u(u(f(u(f(u(y(F[1],I[0]),y(-I[1],F[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),I[2]))),O[3]),u(f(u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2]))),-I[3]),f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),F[2]),u(f(u(y(F[1],O[0]),y(-O[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),O[2]))),z[3]))),u(f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),-F[3]),u(f(u(f(u(y(F[1],O[0]),y(-O[1],F[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),O[2]))),B[3]),f(u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2]))),-O[3]))))),U=u(u(u(f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),B[2]),u(f(u(y(B[1],I[0]),y(-I[1],B[0])),-O[2]),f(u(y(B[1],O[0]),y(-O[1],B[0])),I[2]))),z[3]),f(u(f(u(y(O[1],I[0]),y(-I[1],O[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-O[2]),f(u(y(z[1],O[0]),y(-O[1],z[0])),I[2]))),-B[3])),u(f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),I[2]))),O[3]),f(u(f(u(y(B[1],O[0]),y(-O[1],B[0])),z[2]),u(f(u(y(z[1],O[0]),y(-O[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),O[2]))),-I[3]))),u(u(f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),F[2]),u(f(u(y(F[1],I[0]),y(-I[1],F[0])),-B[2]),f(u(y(F[1],B[0]),y(-B[1],F[0])),I[2]))),z[3]),f(u(f(u(y(B[1],I[0]),y(-I[1],B[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-B[2]),f(u(y(z[1],B[0]),y(-B[1],z[0])),I[2]))),-F[3])),u(f(u(f(u(y(F[1],I[0]),y(-I[1],F[0])),z[2]),u(f(u(y(z[1],I[0]),y(-I[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),I[2]))),B[3]),f(u(f(u(y(F[1],B[0]),y(-B[1],F[0])),z[2]),u(f(u(y(z[1],B[0]),y(-B[1],z[0])),-F[2]),f(u(y(z[1],F[0]),y(-F[1],z[0])),B[2]))),-I[3])))),W=P(N,U);return W[W.length-1]}}function _(u){var y=u===3?p:u===4?T:l;return y(a,o,i,n)}var w=_(3),S=_(4),E=[function(){return 0},function(){return 0},function(y,f){return f[0]-y[0]},function(y,f,P){var L=(y[1]-P[1])*(f[0]-P[0]),z=(y[0]-P[0])*(f[1]-P[1]),F=L-z,B;if(L>0){if(z<=0)return F;B=L+z}else if(L<0){if(z>=0)return F;B=-(L+z)}else return F;var O=h*B;return F>=O||F<=-O?F:w(y,f,P)},function(y,f,P,L){var z=y[0]-L[0],F=f[0]-L[0],B=P[0]-L[0],O=y[1]-L[1],I=f[1]-L[1],N=P[1]-L[1],U=y[2]-L[2],W=f[2]-L[2],Q=P[2]-L[2],ue=F*N,se=B*I,he=B*O,G=z*N,$=z*I,J=F*O,Z=U*(ue-se)+W*(he-G)+Q*($-J),re=(Math.abs(ue)+Math.abs(se))*Math.abs(U)+(Math.abs(he)+Math.abs(G))*Math.abs(W)+(Math.abs($)+Math.abs(J))*Math.abs(Q),ne=v*re;return Z>ne||-Z>ne?Z:S(y,f,P,L)}];function m(u){var y=E[u.length];return y||(y=E[u.length]=_(u.length)),y.apply(void 0,u)}function b(u,y,f,P,L,z,F){return function(O,I,N,U,W){switch(arguments.length){case 0:case 1:return 0;case 2:return P(O,I);case 3:return L(O,I,N);case 4:return z(O,I,N,U);case 5:return F(O,I,N,U,W)}for(var Q=new Array(arguments.length),ue=0;ue<arguments.length;++ue)Q[ue]=arguments[ue];return u(Q)}}function d(){for(;E.length<=s;)E.push(_(E.length));e.exports=b.apply(void 0,[m].concat(E));for(var u=0;u<=s;++u)e.exports[u]=E[u]}d()},5382:function(e,t,r){"use strict";var o=r(8210),a=r(3012);e.exports=i;function i(n,s){if(n.length===1)return a(s,n[0]);if(s.length===1)return a(n,s[0]);if(n.length===0||s.length===0)return[0];var c=[0];if(n.length<s.length)for(var h=0;h<n.length;++h)c=o(c,a(s,n[h]));else for(var h=0;h<s.length;++h)c=o(c,a(n,s[h]));return c}},3012:function(e,t,r){"use strict";var o=r(5250),a=r(9362);e.exports=i;function i(n,s){var c=n.length;if(c===1){var h=o(n[0],s);return h[0]?h:[h[1]]}var v=new Array(2*c),p=[.1,.1],T=[.1,.1],l=0;o(n[0],s,p),p[0]&&(v[l++]=p[0]);for(var _=1;_<c;++_){o(n[_],s,T);var w=p[1];a(w,T[0],p),p[0]&&(v[l++]=p[0]);var S=T[1],E=p[1],m=S+E,b=m-S,d=E-b;p[1]=m,d&&(v[l++]=d)}return p[1]&&(v[l++]=p[1]),l===0&&(v[l++]=0),v.length=l,v}},1125:function(e,t,r){"use strict";e.exports=i;var o=r(3250)[3];function a(n,s,c,h){for(var v=0;v<2;++v){var p=n[v],T=s[v],l=Math.min(p,T),_=Math.max(p,T),w=c[v],S=h[v],E=Math.min(w,S),m=Math.max(w,S);if(m<l||_<E)return!1}return!0}function i(n,s,c,h){var v=o(n,c,h),p=o(s,c,h);if(v>0&&p>0||v<0&&p<0)return!1;var T=o(c,n,s),l=o(h,n,s);return T>0&&l>0||T<0&&l<0?!1:v===0&&p===0&&T===0&&l===0?a(n,s,c,h):!0}},8545:function(e){"use strict";e.exports=r;function t(o,a){var i=o+a,n=i-o,s=i-n,c=a-n,h=o-s,v=h+c;return v?[v,i]:[i]}function r(o,a){var i=o.length|0,n=a.length|0;if(i===1&&n===1)return t(o[0],-a[0]);var s=i+n,c=new Array(s),h=0,v=0,p=0,T=Math.abs,l=o[v],_=T(l),w=-a[p],S=T(w),E,m;_<S?(m=l,v+=1,v<i&&(l=o[v],_=T(l))):(m=w,p+=1,p<n&&(w=-a[p],S=T(w))),v<i&&_<S||p>=n?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=-a[p],S=T(w)));for(var b=E+m,d=b-E,u=m-d,y=u,f=b,P,L,z,F,B;v<i&&p<n;)_<S?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=-a[p],S=T(w))),m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P;for(;v<i;)E=l,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,v+=1,v<i&&(l=o[v]);for(;p<n;)E=w,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,p+=1,p<n&&(w=-a[p]);return y&&(c[h++]=y),f&&(c[h++]=f),h||(c[h++]=0),c.length=h,c}},8210:function(e){"use strict";e.exports=r;function t(o,a){var i=o+a,n=i-o,s=i-n,c=a-n,h=o-s,v=h+c;return v?[v,i]:[i]}function r(o,a){var i=o.length|0,n=a.length|0;if(i===1&&n===1)return t(o[0],a[0]);var s=i+n,c=new Array(s),h=0,v=0,p=0,T=Math.abs,l=o[v],_=T(l),w=a[p],S=T(w),E,m;_<S?(m=l,v+=1,v<i&&(l=o[v],_=T(l))):(m=w,p+=1,p<n&&(w=a[p],S=T(w))),v<i&&_<S||p>=n?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=a[p],S=T(w)));for(var b=E+m,d=b-E,u=m-d,y=u,f=b,P,L,z,F,B;v<i&&p<n;)_<S?(E=l,v+=1,v<i&&(l=o[v],_=T(l))):(E=w,p+=1,p<n&&(w=a[p],S=T(w))),m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P;for(;v<i;)E=l,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,v+=1,v<i&&(l=o[v]);for(;p<n;)E=w,m=y,b=E+m,d=b-E,u=m-d,u&&(c[h++]=u),P=f+b,L=P-f,z=P-L,F=b-L,B=f-z,y=B+F,f=P,p+=1,p<n&&(w=a[p]);return y&&(c[h++]=y),f&&(c[h++]=f),h||(c[h++]=0),c.length=h,c}},9127:function(e,t,r){"use strict";e.exports=i;var o=r(6204),a=r(5771);function i(n){return a(o(n))}},7765:function(e,t,r){"use strict";e.exports=l;var o=r(9618),a=r(1888),i=r(446),n=r(1570);function s(_){for(var w=_.length,S=0,E=0;E<w;++E)S=Math.max(S,_[E].length)|0;return S-1}function c(_,w){for(var S=_.length,E=a.mallocUint8(S),m=0;m<S;++m)E[m]=_[m]<w|0;return E}function h(_,w){for(var S=_.length,E=w*(w+1)/2*S|0,m=a.mallocUint32(E*2),b=0,d=0;d<S;++d)for(var u=_[d],w=u.length,y=0;y<w;++y)for(var f=0;f<y;++f){var P=u[f],L=u[y];m[b++]=Math.min(P,L)|0,m[b++]=Math.max(P,L)|0}var z=b/2|0;i(o(m,[z,2]));for(var F=2,d=2;d<b;d+=2)m[d-2]===m[d]&&m[d-1]===m[d+1]||(m[F++]=m[d],m[F++]=m[d+1]);return o(m,[F/2|0,2])}function v(_,w,S,E){for(var m=_.data,b=_.shape[0],d=a.mallocDouble(b),u=0,y=0;y<b;++y){var f=m[2*y],P=m[2*y+1];if(S[f]!==S[P]){var L=w[f],z=w[P];m[2*u]=f,m[2*u+1]=P,d[u++]=(z-E)/(z-L)}}return _.shape[0]=u,o(d,[u])}function p(_,w){var S=a.mallocInt32(w*2),E=_.shape[0],m=_.data;S[0]=0;for(var b=0,d=0;d<E;++d){var u=m[2*d];if(u!==b){for(S[2*b+1]=d;++b<u;)S[2*b]=d,S[2*b+1]=d;S[2*b]=d}}for(S[2*b+1]=E;++b<w;)S[2*b]=S[2*b+1]=E;return S}function T(_){for(var w=_.shape[0]|0,S=_.data,E=new Array(w),m=0;m<w;++m)E[m]=[S[2*m],S[2*m+1]];return E}function l(_,w,S,E){S=S||0,typeof E>"u"&&(E=s(_));var m=_.length;if(m===0||E<1)return{cells:[],vertexIds:[],vertexWeights:[]};var b=c(w,+S),d=h(_,E),u=v(d,w,b,+S),y=p(d,w.length|0),f=n(E)(_,d.data,y,b),P=T(d),L=[].slice.call(u.data,0,u.shape[0]);return a.free(b),a.free(d.data),a.free(u.data),a.free(y),{cells:f,vertexIds:P,vertexWeights:L}}},1570:function(e){"use strict";e.exports=r;var t=[function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T)var l=n[T],_=l.length;return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===3){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2);if(w===0||w===7)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[2]),a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0]),a(c,s,l[1],l[2])]);break;case 3:p.push([a(c,s,l[0],l[2]),a(c,s,l[1],l[2])]);break;case 4:p.push([a(c,s,l[2],l[1]),a(c,s,l[2],l[0])]);break;case 5:p.push([a(c,s,l[2],l[1]),a(c,s,l[0],l[1])]);break;case 6:p.push([a(c,s,l[1],l[0]),a(c,s,l[2],l[0])]);break;case 7:break}}else if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i},function(){function a(n,s,c,h){for(var v=Math.min(c,h)|0,p=Math.max(c,h)|0,T=n[2*v],l=n[2*v+1];T<l;){var _=T+l>>1,w=s[2*_+1];if(w===p)return _;p<w?l=_:T=_+1}return T}function i(n,s,c,h){for(var v=n.length,p=[],T=0;T<v;++T){var l=n[T],_=l.length;if(_===4){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2)+(h[l[3]]<<3);if(w===0||w===15)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1]),a(c,s,l[0],l[2]),a(c,s,l[0],l[3])]);break;case 2:p.push([a(c,s,l[1],l[2]),a(c,s,l[1],l[0]),a(c,s,l[1],l[3])]);break;case 3:p.push([a(c,s,l[1],l[2]),a(c,s,l[0],l[2]),a(c,s,l[0],l[3])],[a(c,s,l[1],l[3]),a(c,s,l[1],l[2]),a(c,s,l[0],l[3])]);break;case 4:p.push([a(c,s,l[2],l[0]),a(c,s,l[2],l[1]),a(c,s,l[2],l[3])]);break;case 5:p.push([a(c,s,l[0],l[1]),a(c,s,l[2],l[1]),a(c,s,l[0],l[3])],[a(c,s,l[2],l[1]),a(c,s,l[2],l[3]),a(c,s,l[0],l[3])]);break;case 6:p.push([a(c,s,l[2],l[0]),a(c,s,l[1],l[0]),a(c,s,l[1],l[3])],[a(c,s,l[2],l[3]),a(c,s,l[2],l[0]),a(c,s,l[1],l[3])]);break;case 7:p.push([a(c,s,l[0],l[3]),a(c,s,l[1],l[3]),a(c,s,l[2],l[3])]);break;case 8:p.push([a(c,s,l[3],l[1]),a(c,s,l[3],l[0]),a(c,s,l[3],l[2])]);break;case 9:p.push([a(c,s,l[3],l[1]),a(c,s,l[0],l[1]),a(c,s,l[0],l[2])],[a(c,s,l[3],l[2]),a(c,s,l[3],l[1]),a(c,s,l[0],l[2])]);break;case 10:p.push([a(c,s,l[1],l[0]),a(c,s,l[3],l[0]),a(c,s,l[1],l[2])],[a(c,s,l[3],l[0]),a(c,s,l[3],l[2]),a(c,s,l[1],l[2])]);break;case 11:p.push([a(c,s,l[1],l[2]),a(c,s,l[0],l[2]),a(c,s,l[3],l[2])]);break;case 12:p.push([a(c,s,l[3],l[0]),a(c,s,l[2],l[0]),a(c,s,l[2],l[1])],[a(c,s,l[3],l[1]),a(c,s,l[3],l[0]),a(c,s,l[2],l[1])]);break;case 13:p.push([a(c,s,l[0],l[1]),a(c,s,l[2],l[1]),a(c,s,l[3],l[1])]);break;case 14:p.push([a(c,s,l[2],l[0]),a(c,s,l[1],l[0]),a(c,s,l[3],l[0])]);break;case 15:break}}else if(_===3){var w=(h[l[0]]<<0)+(h[l[1]]<<1)+(h[l[2]]<<2);if(w===0||w===7)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[2]),a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0]),a(c,s,l[1],l[2])]);break;case 3:p.push([a(c,s,l[0],l[2]),a(c,s,l[1],l[2])]);break;case 4:p.push([a(c,s,l[2],l[1]),a(c,s,l[2],l[0])]);break;case 5:p.push([a(c,s,l[2],l[1]),a(c,s,l[0],l[1])]);break;case 6:p.push([a(c,s,l[1],l[0]),a(c,s,l[2],l[0])]);break;case 7:break}}else if(_===2){var w=(h[l[0]]<<0)+(h[l[1]]<<1);if(w===0||w===3)continue;switch(w){case 0:break;case 1:p.push([a(c,s,l[0],l[1])]);break;case 2:p.push([a(c,s,l[1],l[0])]);break;case 3:break}}}return p}return i}];function r(o){return t[o]()}},6803:function(e,t,r){"use strict";var o,a=r(8828),i=r(1755);function n(y){for(var f=0,P=Math.max,L=0,z=y.length;L<z;++L)f=P(f,y[L].length);return f-1}o=n;function s(y){for(var f=-1,P=Math.max,L=0,z=y.length;L<z;++L)for(var F=y[L],B=0,O=F.length;B<O;++B)f=P(f,F[B]);return f+1}o=s;function c(y){for(var f=new Array(y.length),P=0,L=y.length;P<L;++P)f[P]=y[P].slice(0);return f}o=c;function h(y,f){var P=y.length,L=y.length-f.length,z=Math.min;if(L)return L;switch(P){case 0:return 0;case 1:return y[0]-f[0];case 2:var N=y[0]+y[1]-f[0]-f[1];return N||z(y[0],y[1])-z(f[0],f[1]);case 3:var F=y[0]+y[1],B=f[0]+f[1];if(N=F+y[2]-(B+f[2]),N)return N;var O=z(y[0],y[1]),I=z(f[0],f[1]),N=z(O,y[2])-z(I,f[2]);return N||z(O+y[2],F)-z(I+f[2],B);default:var U=y.slice(0);U.sort();var W=f.slice(0);W.sort();for(var Q=0;Q<P;++Q)if(L=U[Q]-W[Q],L)return L;return 0}}t.Fw=h;function v(y,f){return h(y[0],f[0])}function p(y,f){if(f){for(var P=y.length,L=new Array(P),z=0;z<P;++z)L[z]=[y[z],f[z]];L.sort(v);for(var z=0;z<P;++z)y[z]=L[z][0],f[z]=L[z][1];return y}else return y.sort(h),y}o=p;function T(y){if(y.length===0)return[];for(var f=1,P=y.length,L=1;L<P;++L){var z=y[L];if(h(z,y[L-1])){if(L===f){f++;continue}y[f++]=z}}return y.length=f,y}o=T;function l(y,f){for(var P=0,L=y.length-1,z=-1;P<=L;){var F=P+L>>1,B=h(y[F],f);B<=0?(B===0&&(z=F),P=F+1):B>0&&(L=F-1)}return z}o=l;function _(y,f){for(var P=new Array(y.length),L=0,z=P.length;L<z;++L)P[L]=[];for(var F=[],L=0,B=f.length;L<B;++L)for(var O=f[L],I=O.length,N=1,U=1<<I;N<U;++N){F.length=a.popCount(N);for(var W=0,Q=0;Q<I;++Q)N&1<<Q&&(F[W++]=O[Q]);var ue=l(y,F);if(!(ue<0))for(;P[ue++].push(L),!(ue>=y.length||h(y[ue],F)!==0););}return P}o=_;function w(y,f){if(!f)return _(T(E(y,0)),y,0);for(var P=new Array(f),L=0;L<f;++L)P[L]=[];for(var L=0,z=y.length;L<z;++L)for(var F=y[L],B=0,O=F.length;B<O;++B)P[F[B]].push(L);return P}o=w;function S(y){for(var f=[],P=0,L=y.length;P<L;++P)for(var z=y[P],F=z.length|0,B=1,O=1<<F;B<O;++B){for(var I=[],N=0;N<F;++N)B>>>N&1&&I.push(z[N]);f.push(I)}return p(f)}o=S;function E(y,f){if(f<0)return[];for(var P=[],L=(1<<f+1)-1,z=0;z<y.length;++z)for(var F=y[z],B=L;B<1<<F.length;B=a.nextCombination(B)){for(var O=new Array(f+1),I=0,N=0;N<F.length;++N)B&1<<N&&(O[I++]=F[N]);P.push(O)}return p(P)}o=E;function m(y){for(var f=[],P=0,L=y.length;P<L;++P)for(var z=y[P],F=0,B=z.length;F<B;++F){for(var O=new Array(z.length-1),I=0,N=0;I<B;++I)I!==F&&(O[N++]=z[I]);f.push(O)}return p(f)}o=m;function b(y,f){for(var P=new i(f),L=0;L<y.length;++L)for(var z=y[L],F=0;F<z.length;++F)for(var B=F+1;B<z.length;++B)P.link(z[F],z[B]);for(var O=[],I=P.ranks,L=0;L<I.length;++L)I[L]=-1;for(var L=0;L<y.length;++L){var N=P.find(y[L][0]);I[N]<0?(I[N]=O.length,O.push([y[L].slice(0)])):O[I[N]].push(y[L].slice(0))}return O}function d(y){for(var f=T(p(E(y,0))),P=new i(f.length),L=0;L<y.length;++L)for(var z=y[L],F=0;F<z.length;++F)for(var B=l(f,[z[F]]),O=F+1;O<z.length;++O)P.link(B,l(f,[z[O]]));for(var I=[],N=P.ranks,L=0;L<N.length;++L)N[L]=-1;for(var L=0;L<y.length;++L){var U=P.find(l(f,[y[L][0]]));N[U]<0?(N[U]=I.length,I.push([y[L].slice(0)])):I[N[U]].push(y[L].slice(0))}return I}function u(y,f){return f?b(y,f):d(y)}o=u},3105:function(e,t){"use strict";"use restrict";var r=32;t.INT_BITS=r,t.INT_MAX=2147483647,t.INT_MIN=-1<<r-1,t.sign=function(i){return(i>0)-(i<0)},t.abs=function(i){var n=i>>r-1;return(i^n)-n},t.min=function(i,n){return n^(i^n)&-(i<n)},t.max=function(i,n){return i^(i^n)&-(i<n)},t.isPow2=function(i){return!(i&i-1)&&!!i},t.log2=function(i){var n,s;return n=(i>65535)<<4,i>>>=n,s=(i>255)<<3,i>>>=s,n|=s,s=(i>15)<<2,i>>>=s,n|=s,s=(i>3)<<1,i>>>=s,n|=s,n|i>>1},t.log10=function(i){return i>=1e9?9:i>=1e8?8:i>=1e7?7:i>=1e6?6:i>=1e5?5:i>=1e4?4:i>=1e3?3:i>=100?2:i>=10?1:0},t.popCount=function(i){return i=i-(i>>>1&1431655765),i=(i&858993459)+(i>>>2&858993459),(i+(i>>>4)&252645135)*16843009>>>24};function o(i){var n=32;return i&=-i,i&&n--,i&65535&&(n-=16),i&16711935&&(n-=8),i&252645135&&(n-=4),i&858993459&&(n-=2),i&1431655765&&(n-=1),n}t.countTrailingZeros=o,t.nextPow2=function(i){return i+=i===0,--i,i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i+1},t.prevPow2=function(i){return i|=i>>>1,i|=i>>>2,i|=i>>>4,i|=i>>>8,i|=i>>>16,i-(i>>>1)},t.parity=function(i){return i^=i>>>16,i^=i>>>8,i^=i>>>4,i&=15,27030>>>i&1};var a=new Array(256);(function(i){for(var n=0;n<256;++n){var s=n,c=n,h=7;for(s>>>=1;s;s>>>=1)c<<=1,c|=s&1,--h;i[n]=c<<h&255}})(a),t.reverse=function(i){return a[i&255]<<24|a[i>>>8&255]<<16|a[i>>>16&255]<<8|a[i>>>24&255]},t.interleave2=function(i,n){return i&=65535,i=(i|i<<8)&16711935,i=(i|i<<4)&252645135,i=(i|i<<2)&858993459,i=(i|i<<1)&1431655765,n&=65535,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,i|n<<1},t.deinterleave2=function(i,n){return i=i>>>n&1431655765,i=(i|i>>>1)&858993459,i=(i|i>>>2)&252645135,i=(i|i>>>4)&16711935,i=(i|i>>>16)&65535,i<<16>>16},t.interleave3=function(i,n,s){return i&=1023,i=(i|i<<16)&4278190335,i=(i|i<<8)&251719695,i=(i|i<<4)&3272356035,i=(i|i<<2)&1227133513,n&=1023,n=(n|n<<16)&4278190335,n=(n|n<<8)&251719695,n=(n|n<<4)&3272356035,n=(n|n<<2)&1227133513,i|=n<<1,s&=1023,s=(s|s<<16)&4278190335,s=(s|s<<8)&251719695,s=(s|s<<4)&3272356035,s=(s|s<<2)&1227133513,i|s<<2},t.deinterleave3=function(i,n){return i=i>>>n&1227133513,i=(i|i>>>2)&3272356035,i=(i|i>>>4)&251719695,i=(i|i>>>8)&4278190335,i=(i|i>>>16)&1023,i<<22>>22},t.nextCombination=function(i){var n=i|i-1;return n+1|(~n&-~n)-1>>>o(i)+1}},2014:function(e,t,r){"use strict";"use restrict";var o=r(3105),a=r(4623);function i(u){for(var y=0,f=Math.max,P=0,L=u.length;P<L;++P)y=f(y,u[P].length);return y-1}t.dimension=i;function n(u){for(var y=-1,f=Math.max,P=0,L=u.length;P<L;++P)for(var z=u[P],F=0,B=z.length;F<B;++F)y=f(y,z[F]);return y+1}t.countVertices=n;function s(u){for(var y=new Array(u.length),f=0,P=u.length;f<P;++f)y[f]=u[f].slice(0);return y}t.cloneCells=s;function c(u,y){var f=u.length,P=u.length-y.length,L=Math.min;if(P)return P;switch(f){case 0:return 0;case 1:return u[0]-y[0];case 2:var I=u[0]+u[1]-y[0]-y[1];return I||L(u[0],u[1])-L(y[0],y[1]);case 3:var z=u[0]+u[1],F=y[0]+y[1];if(I=z+u[2]-(F+y[2]),I)return I;var B=L(u[0],u[1]),O=L(y[0],y[1]),I=L(B,u[2])-L(O,y[2]);return I||L(B+u[2],z)-L(O+y[2],F);default:var N=u.slice(0);N.sort();var U=y.slice(0);U.sort();for(var W=0;W<f;++W)if(P=N[W]-U[W],P)return P;return 0}}t.compareCells=c;function h(u,y){return c(u[0],y[0])}function v(u,y){if(y){for(var f=u.length,P=new Array(f),L=0;L<f;++L)P[L]=[u[L],y[L]];P.sort(h);for(var L=0;L<f;++L)u[L]=P[L][0],y[L]=P[L][1];return u}else return u.sort(c),u}t.normalize=v;function p(u){if(u.length===0)return[];for(var y=1,f=u.length,P=1;P<f;++P){var L=u[P];if(c(L,u[P-1])){if(P===y){y++;continue}u[y++]=L}}return u.length=y,u}t.unique=p;function T(u,y){for(var f=0,P=u.length-1,L=-1;f<=P;){var z=f+P>>1,F=c(u[z],y);F<=0?(F===0&&(L=z),f=z+1):F>0&&(P=z-1)}return L}t.findCell=T;function l(u,y){for(var f=new Array(u.length),P=0,L=f.length;P<L;++P)f[P]=[];for(var z=[],P=0,F=y.length;P<F;++P)for(var B=y[P],O=B.length,I=1,N=1<<O;I<N;++I){z.length=o.popCount(I);for(var U=0,W=0;W<O;++W)I&1<<W&&(z[U++]=B[W]);var Q=T(u,z);if(!(Q<0))for(;f[Q++].push(P),!(Q>=u.length||c(u[Q],z)!==0););}return f}t.incidence=l;function _(u,y){if(!y)return l(p(S(u,0)),u,0);for(var f=new Array(y),P=0;P<y;++P)f[P]=[];for(var P=0,L=u.length;P<L;++P)for(var z=u[P],F=0,B=z.length;F<B;++F)f[z[F]].push(P);return f}t.dual=_;function w(u){for(var y=[],f=0,P=u.length;f<P;++f)for(var L=u[f],z=L.length|0,F=1,B=1<<z;F<B;++F){for(var O=[],I=0;I<z;++I)F>>>I&1&&O.push(L[I]);y.push(O)}return v(y)}t.explode=w;function S(u,y){if(y<0)return[];for(var f=[],P=(1<<y+1)-1,L=0;L<u.length;++L)for(var z=u[L],F=P;F<1<<z.length;F=o.nextCombination(F)){for(var B=new Array(y+1),O=0,I=0;I<z.length;++I)F&1<<I&&(B[O++]=z[I]);f.push(B)}return v(f)}t.skeleton=S;function E(u){for(var y=[],f=0,P=u.length;f<P;++f)for(var L=u[f],z=0,F=L.length;z<F;++z){for(var B=new Array(L.length-1),O=0,I=0;O<F;++O)O!==z&&(B[I++]=L[O]);y.push(B)}return v(y)}t.boundary=E;function m(u,y){for(var f=new a(y),P=0;P<u.length;++P)for(var L=u[P],z=0;z<L.length;++z)for(var F=z+1;F<L.length;++F)f.link(L[z],L[F]);for(var B=[],O=f.ranks,P=0;P<O.length;++P)O[P]=-1;for(var P=0;P<u.length;++P){var I=f.find(u[P][0]);O[I]<0?(O[I]=B.length,B.push([u[P].slice(0)])):B[O[I]].push(u[P].slice(0))}return B}function b(u){for(var y=p(v(S(u,0))),f=new a(y.length),P=0;P<u.length;++P)for(var L=u[P],z=0;z<L.length;++z)for(var F=T(y,[L[z]]),B=z+1;B<L.length;++B)f.link(F,T(y,[L[B]]));for(var O=[],I=f.ranks,P=0;P<I.length;++P)I[P]=-1;for(var P=0;P<u.length;++P){var N=f.find(T(y,[u[P][0]]));I[N]<0?(I[N]=O.length,O.push([u[P].slice(0)])):O[I[N]].push(u[P].slice(0))}return O}function d(u,y){return y?m(u,y):b(u)}t.connectedComponents=d},4623:function(e){"use strict";"use restrict";e.exports=t;function t(r){this.roots=new Array(r),this.ranks=new Array(r);for(var o=0;o<r;++o)this.roots[o]=o,this.ranks[o]=0}t.prototype.length=function(){return this.roots.length},t.prototype.makeSet=function(){var r=this.roots.length;return this.roots.push(r),this.ranks.push(0),r},t.prototype.find=function(r){for(var o=this.roots;o[r]!==r;){var a=o[r];o[r]=o[a],r=a}return r},t.prototype.link=function(r,o){var a=this.find(r),i=this.find(o);if(a!==i){var n=this.ranks,s=this.roots,c=n[a],h=n[i];c<h?s[a]=i:h<c?s[i]=a:(s[i]=a,++n[a])}}},5878:function(e,t,r){"use strict";e.exports=n;var o=r(3250),a=r(2014);function i(s,c,h){var v=Math.abs(o(s,c,h)),p=Math.sqrt(Math.pow(c[0]-h[0],2)+Math.pow(c[1]-h[1],2));return v/p}function n(s,c,h){for(var v=c.length,p=s.length,T=new Array(v),l=new Array(v),_=new Array(v),w=new Array(v),S=0;S<v;++S)T[S]=l[S]=-1,_[S]=1/0,w[S]=!1;for(var S=0;S<p;++S){var E=s[S];if(E.length!==2)throw new Error("Input must be a graph");var m=E[1],b=E[0];l[b]!==-1?l[b]=-2:l[b]=m,T[m]!==-1?T[m]=-2:T[m]=b}function d(G){if(w[G])return 1/0;var $=T[G],J=l[G];return $<0||J<0?1/0:i(c[G],c[$],c[J])}function u(G,$){var J=O[G],Z=O[$];O[G]=Z,O[$]=J,I[J]=$,I[Z]=G}function y(G){return _[O[G]]}function f(G){return G&1?G-1>>1:(G>>1)-1}function P(G){for(var $=y(G);;){var J=$,Z=2*G+1,re=2*(G+1),ne=G;if(Z<U){var j=y(Z);j<J&&(ne=Z,J=j)}if(re<U){var ee=y(re);ee<J&&(ne=re)}if(ne===G)return G;u(G,ne),G=ne}}function L(G){for(var $=y(G);G>0;){var J=f(G);if(J>=0){var Z=y(J);if($<Z){u(G,J),G=J;continue}}return G}}function z(){if(U>0){var G=O[0];return u(0,U-1),U-=1,P(0),G}return-1}function F(G,$){var J=O[G];return _[J]===$?G:(_[J]=-1/0,L(G),z(),_[J]=$,U+=1,L(U-1))}function B(G){if(!w[G]){w[G]=!0;var $=T[G],J=l[G];T[J]>=0&&(T[J]=$),l[$]>=0&&(l[$]=J),I[$]>=0&&F(I[$],d($)),I[J]>=0&&F(I[J],d(J))}}for(var O=[],I=new Array(v),S=0;S<v;++S){var N=_[S]=d(S);N<1/0?(I[S]=O.length,O.push(S)):I[S]=-1}for(var U=O.length,S=U>>1;S>=0;--S)P(S);for(;;){var W=z();if(W<0||_[W]>h)break;B(W)}for(var Q=[],S=0;S<v;++S)w[S]||(I[S]=Q.length,Q.push(c[S].slice()));var ue=Q.length;function se(G,$){if(G[$]<0)return $;var J=$,Z=$;do{var re=G[Z];if(!w[Z]||re<0||re===Z||(Z=re,re=G[Z],!w[Z]||re<0||re===Z))break;Z=re,J=G[J]}while(J!==Z);for(var ne=$;ne!==Z;ne=G[ne])G[ne]=Z;return Z}var he=[];return s.forEach(function(G){var $=se(T,G[0]),J=se(l,G[1]);if($>=0&&J>=0&&$!==J){var Z=I[$],re=I[J];Z!==re&&he.push([Z,re])}}),a.unique(a.normalize(he)),{positions:Q,edges:he}}},1303:function(e,t,r){"use strict";e.exports=i;var o=r(3250);function a(n,s){var c,h;if(s[0][0]<s[1][0])c=s[0],h=s[1];else if(s[0][0]>s[1][0])c=s[1],h=s[0];else{var v=Math.min(n[0][1],n[1][1]),p=Math.max(n[0][1],n[1][1]),T=Math.min(s[0][1],s[1][1]),l=Math.max(s[0][1],s[1][1]);return p<T?p-T:v>l?v-l:p-l}var _,w;n[0][1]<n[1][1]?(_=n[0],w=n[1]):(_=n[1],w=n[0]);var S=o(h,c,_);return S||(S=o(h,c,w),S)?S:w-h}function i(n,s){var c,h;if(s[0][0]<s[1][0])c=s[0],h=s[1];else if(s[0][0]>s[1][0])c=s[1],h=s[0];else return a(s,n);var v,p;if(n[0][0]<n[1][0])v=n[0],p=n[1];else if(n[0][0]>n[1][0])v=n[1],p=n[0];else return-a(n,s);var T=o(c,h,p),l=o(c,h,v);if(T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;if(T=o(p,v,h),l=o(p,v,c),T<0){if(l<=0)return T}else if(T>0){if(l>=0)return T}else if(l)return l;return h[0]-p[0]}},4209:function(e,t,r){"use strict";e.exports=l;var o=r(2478),a=r(3840),i=r(3250),n=r(1303);function s(_,w,S){this.slabs=_,this.coordinates=w,this.horizontal=S}var c=s.prototype;function h(_,w){return _.y-w}function v(_,w){for(var S=null;_;){var E=_.key,m,b;E[0][0]<E[1][0]?(m=E[0],b=E[1]):(m=E[1],b=E[0]);var d=i(m,b,w);if(d<0)_=_.left;else if(d>0)if(w[0]!==E[1][0])S=_,_=_.right;else{var u=v(_.right,w);if(u)return u;_=_.left}else{if(w[0]!==E[1][0])return _;var u=v(_.right,w);if(u)return u;_=_.left}}return S}c.castUp=function(_){var w=o.le(this.coordinates,_[0]);if(w<0)return-1;var S=this.slabs[w],E=v(this.slabs[w],_),m=-1;if(E&&(m=E.value),this.coordinates[w]===_[0]){var b=null;if(E&&(b=E.key),w>0){var d=v(this.slabs[w-1],_);d&&(b?n(d.key,b)>0&&(b=d.key,m=d.value):(m=d.value,b=d.key))}var u=this.horizontal[w];if(u.length>0){var y=o.ge(u,_[1],h);if(y<u.length){var f=u[y];if(_[1]===f.y){if(f.closed)return f.index;for(;y<u.length-1&&u[y+1].y===_[1];)if(y=y+1,f=u[y],f.closed)return f.index;if(f.y===_[1]&&!f.start){if(y=y+1,y>=u.length)return m;f=u[y]}}if(f.start)if(b){var P=i(b[0],b[1],[_[0],f.y]);b[0][0]>b[1][0]&&(P=-P),P>0&&(m=f.index)}else m=f.index;else f.y!==_[1]&&(m=f.index)}}}return m};function p(_,w,S,E){this.y=_,this.index=w,this.start=S,this.closed=E}function T(_,w,S,E){this.x=_,this.segment=w,this.create=S,this.index=E}function l(_){for(var w=_.length,S=2*w,E=new Array(S),m=0;m<w;++m){var b=_[m],d=b[0][0]<b[1][0];E[2*m]=new T(b[0][0],b,d,m),E[2*m+1]=new T(b[1][0],b,!d,m)}E.sort(function(O,I){var N=O.x-I.x;return N||(N=O.create-I.create,N)?N:Math.min(O.segment[0][1],O.segment[1][1])-Math.min(I.segment[0][1],I.segment[1][1])});for(var u=a(n),y=[],f=[],P=[],L=-1/0,m=0;m<S;){for(var z=E[m].x,F=[];m<S;){var B=E[m];if(B.x!==z)break;m+=1,B.segment[0][0]===B.x&&B.segment[1][0]===B.x?B.create&&(B.segment[0][1]<B.segment[1][1]?(F.push(new p(B.segment[0][1],B.index,!0,!0)),F.push(new p(B.segment[1][1],B.index,!1,!1))):(F.push(new p(B.segment[1][1],B.index,!0,!1)),F.push(new p(B.segment[0][1],B.index,!1,!0)))):B.create?u=u.insert(B.segment,B.index):u=u.remove(B.segment)}y.push(u.root),f.push(z),P.push(F)}return new s(y,f,P)}},5202:function(e,t,r){"use strict";var o=r(1944),a=r(8210);e.exports=s,e.exports.positive=c,e.exports.negative=h;function i(v,p){var T=a(o(v,p),[p[p.length-1]]);return T[T.length-1]}function n(v,p,T,l){var _=l-p,w=-p/_;w<0?w=0:w>1&&(w=1);for(var S=1-w,E=v.length,m=new Array(E),b=0;b<E;++b)m[b]=w*v[b]+S*T[b];return m}function s(v,p){for(var T=[],l=[],_=i(v[v.length-1],p),w=v[v.length-1],S=v[0],E=0;E<v.length;++E,w=S){S=v[E];var m=i(S,p);if(_<0&&m>0||_>0&&m<0){var b=n(w,m,S,_);T.push(b),l.push(b.slice())}m<0?l.push(S.slice()):m>0?T.push(S.slice()):(T.push(S.slice()),l.push(S.slice())),_=m}return{positive:T,negative:l}}function c(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S<v.length;++S,_=w){w=v[S];var E=i(w,p);(l<0&&E>0||l>0&&E<0)&&T.push(n(_,E,w,l)),E>=0&&T.push(w.slice()),l=E}return T}function h(v,p){for(var T=[],l=i(v[v.length-1],p),_=v[v.length-1],w=v[0],S=0;S<v.length;++S,_=w){w=v[S];var E=i(w,p);(l<0&&E>0||l>0&&E<0)&&T.push(n(_,E,w,l)),E<=0&&T.push(w.slice()),l=E}return T}},3387:function(e,t,r){var o;(function(){"use strict";var a={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 i(v){return s(h(v),arguments)}function n(v,p){return i.apply(null,[v].concat(p||[]))}function s(v,p){var T=1,l=v.length,_,w="",S,E,m,b,d,u,y,f;for(S=0;S<l;S++)if(typeof v[S]=="string")w+=v[S];else if(typeof v[S]=="object"){if(m=v[S],m.keys)for(_=p[T],E=0;E<m.keys.length;E++){if(_==null)throw new Error(i('[sprintf] Cannot access property "%s" of undefined value "%s"',m.keys[E],m.keys[E-1]));_=_[m.keys[E]]}else m.param_no?_=p[m.param_no]:_=p[T++];if(a.not_type.test(m.type)&&a.not_primitive.test(m.type)&&_ instanceof Function&&(_=_()),a.numeric_arg.test(m.type)&&typeof _!="number"&&isNaN(_))throw new TypeError(i("[sprintf] expecting number but found %T",_));switch(a.number.test(m.type)&&(y=_>=0),m.type){case"b":_=parseInt(_,10).toString(2);break;case"c":_=String.fromCharCode(parseInt(_,10));break;case"d":case"i":_=parseInt(_,10);break;case"j":_=JSON.stringify(_,null,m.width?parseInt(m.width):0);break;case"e":_=m.precision?parseFloat(_).toExponential(m.precision):parseFloat(_).toExponential();break;case"f":_=m.precision?parseFloat(_).toFixed(m.precision):parseFloat(_);break;case"g":_=m.precision?String(Number(_.toPrecision(m.precision))):parseFloat(_);break;case"o":_=(parseInt(_,10)>>>0).toString(8);break;case"s":_=String(_),_=m.precision?_.substring(0,m.precision):_;break;case"t":_=String(!!_),_=m.precision?_.substring(0,m.precision):_;break;case"T":_=Object.prototype.toString.call(_).slice(8,-1).toLowerCase(),_=m.precision?_.substring(0,m.precision):_;break;case"u":_=parseInt(_,10)>>>0;break;case"v":_=_.valueOf(),_=m.precision?_.substring(0,m.precision):_;break;case"x":_=(parseInt(_,10)>>>0).toString(16);break;case"X":_=(parseInt(_,10)>>>0).toString(16).toUpperCase();break}a.json.test(m.type)?w+=_:(a.number.test(m.type)&&(!y||m.sign)?(f=y?"+":"-",_=_.toString().replace(a.sign,"")):f="",d=m.pad_char?m.pad_char==="0"?"0":m.pad_char.charAt(1):" ",u=m.width-(f+_).length,b=m.width&&u>0?d.repeat(u):"",w+=m.align?f+_+b:d==="0"?f+b+_:b+f+_)}return w}var c=Object.create(null);function h(v){if(c[v])return c[v];for(var p=v,T,l=[],_=0;p;){if((T=a.text.exec(p))!==null)l.push(T[0]);else if((T=a.modulo.exec(p))!==null)l.push("%");else if((T=a.placeholder.exec(p))!==null){if(T[2]){_|=1;var w=[],S=T[2],E=[];if((E=a.key.exec(S))!==null)for(w.push(E[1]);(S=S.substring(E[0].length))!=="";)if((E=a.key_access.exec(S))!==null)w.push(E[1]);else if((E=a.index_access.exec(S))!==null)w.push(E[1]);else throw new SyntaxError("[sprintf] failed to parse named argument key");else throw new SyntaxError("[sprintf] failed to parse named argument key");T[2]=w}else _|=2;if(_===3)throw new Error("[sprintf] mixing positional and named placeholders is not (yet) supported");l.push({placeholder:T[0],param_no:T[1],keys:T[2],sign:T[3],pad_char:T[4],align:T[5],width:T[6],precision:T[7],type:T[8]})}else throw new SyntaxError("[sprintf] unexpected placeholder");p=p.substring(T[0].length)}return c[v]=l}t.sprintf=i,t.vsprintf=n,typeof window<"u"&&(window.sprintf=i,window.vsprintf=n,o=function(){return{sprintf:i,vsprintf:n}}.call(t,r,t,e),o!==void 0&&(e.exports=o))})()},3711:function(e,t,r){"use strict";e.exports=h;var o=r(2640),a=r(781),i={"2d":function(v,p,T){var l=v({order:p,scalarArguments:3,getters:T==="generic"?[0]:void 0,phase:function(w,S,E,m){return w>m|0},vertex:function(w,S,E,m,b,d,u,y,f,P,L,z,F){var B=(u<<0)+(y<<1)+(f<<2)+(P<<3)|0;if(!(B===0||B===15))switch(B){case 0:L.push([w-.5,S-.5]);break;case 1:L.push([w-.25-.25*(m+E-2*F)/(E-m),S-.25-.25*(b+E-2*F)/(E-b)]);break;case 2:L.push([w-.75-.25*(-m-E+2*F)/(m-E),S-.25-.25*(d+m-2*F)/(m-d)]);break;case 3:L.push([w-.5,S-.5-.5*(b+E+d+m-4*F)/(E-b+m-d)]);break;case 4:L.push([w-.25-.25*(d+b-2*F)/(b-d),S-.75-.25*(-b-E+2*F)/(b-E)]);break;case 5:L.push([w-.5-.5*(m+E+d+b-4*F)/(E-m+b-d),S-.5]);break;case 6:L.push([w-.5-.25*(-m-E+d+b)/(m-E+b-d),S-.5-.25*(-b-E+d+m)/(b-E+m-d)]);break;case 7:L.push([w-.75-.25*(d+b-2*F)/(b-d),S-.75-.25*(d+m-2*F)/(m-d)]);break;case 8:L.push([w-.75-.25*(-d-b+2*F)/(d-b),S-.75-.25*(-d-m+2*F)/(d-m)]);break;case 9:L.push([w-.5-.25*(m+E+-d-b)/(E-m+d-b),S-.5-.25*(b+E+-d-m)/(E-b+d-m)]);break;case 10:L.push([w-.5-.5*(-m-E+-d-b+4*F)/(m-E+d-b),S-.5]);break;case 11:L.push([w-.25-.25*(-d-b+2*F)/(d-b),S-.75-.25*(b+E-2*F)/(E-b)]);break;case 12:L.push([w-.5,S-.5-.5*(-b-E+-d-m+4*F)/(b-E+d-m)]);break;case 13:L.push([w-.75-.25*(m+E-2*F)/(E-m),S-.25-.25*(-d-m+2*F)/(d-m)]);break;case 14:L.push([w-.25-.25*(-m-E+2*F)/(m-E),S-.25-.25*(-b-E+2*F)/(b-E)]);break;case 15:L.push([w-.5,S-.5]);break}},cell:function(w,S,E,m,b,d,u,y,f){b?y.push([w,S]):y.push([S,w])}});return function(_,w){var S=[],E=[];return l(_,S,E,w),{positions:S,cells:E}}}};function n(v,p){var T=v.length+"d",l=i[T];if(l)return l(o,v,p)}function s(v,p){for(var T=a(v,p),l=T.length,_=new Array(l),w=new Array(l),S=0;S<l;++S)_[S]=[T[S]],w[S]=[S];return{positions:_,cells:w}}var c={};function h(v,_){if(v.dimension<=0)return{positions:[],cells:[]};if(v.dimension===1)return s(v,_);var T=v.order.join()+"-"+v.dtype,l=c[T],_=+_||0;return l||(l=c[T]=n(v.order,v.dtype)),l(v,_)}},665:function(e,t,r){"use strict";var o=r(3202);e.exports=s;var a=96;function i(c,h){var v=o(getComputedStyle(c).getPropertyValue(h));return v[0]*s(v[1],c)}function n(c,h){var v=document.createElement("div");v.style["font-size"]="128"+c,h.appendChild(v);var p=i(v,"font-size")/128;return h.removeChild(v),p}function s(c,h){switch(h=h||document.body,c=(c||"px").trim().toLowerCase(),(h===window||h===document)&&(h=document.body),c){case"%":return h.clientHeight/100;case"ch":case"ex":return n(c,h);case"em":return i(h,"font-size");case"rem":return i(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 a;case"cm":return a/2.54;case"mm":return a/25.4;case"pt":return a/72;case"pc":return a/6}return 1}},7261:function(e,t,r){"use strict";e.exports=w;var o=r(9215),a=r(7608),i=r(6079),n=r(5911),s=r(3536),c=r(244);function h(S,E,m){return Math.sqrt(Math.pow(S,2)+Math.pow(E,2)+Math.pow(m,2))}function v(S){return Math.min(1,Math.max(-1,S))}function p(S){var E=Math.abs(S[0]),m=Math.abs(S[1]),b=Math.abs(S[2]),d=[0,0,0];E>Math.max(m,b)?d[2]=1:m>Math.max(E,b)?d[0]=1:d[1]=1;for(var u=0,y=0,f=0;f<3;++f)u+=S[f]*S[f],y+=d[f]*S[f];for(var f=0;f<3;++f)d[f]-=y/u*S[f];return s(d,d),d}function T(S,E,m,b,d,u,y,f){this.center=o(m),this.up=o(b),this.right=o(d),this.radius=o([u]),this.angle=o([y,f]),this.angle.bounds=[[-1/0,-Math.PI/2],[1/0,Math.PI/2]],this.setDistanceLimits(S,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 P=0;P<16;++P)this.computedMatrix[P]=.5;this.recalcMatrix(0)}var l=T.prototype;l.setDistanceLimits=function(S,E){S>0?S=Math.log(S):S=-1/0,E>0?E=Math.log(E):E=1/0,E=Math.max(E,S),this.radius.bounds[0][0]=S,this.radius.bounds[1][0]=E},l.getDistanceLimits=function(S){var E=this.radius.bounds[0];return S?(S[0]=Math.exp(E[0][0]),S[1]=Math.exp(E[1][0]),S):[Math.exp(E[0][0]),Math.exp(E[1][0])]},l.recalcMatrix=function(S){this.center.curve(S),this.up.curve(S),this.right.curve(S),this.radius.curve(S),this.angle.curve(S);for(var E=this.computedUp,m=this.computedRight,b=0,d=0,u=0;u<3;++u)d+=E[u]*m[u],b+=E[u]*E[u];for(var y=Math.sqrt(b),f=0,u=0;u<3;++u)m[u]-=E[u]*d/b,f+=m[u]*m[u],E[u]/=y;for(var P=Math.sqrt(f),u=0;u<3;++u)m[u]/=P;var L=this.computedToward;n(L,E,m),s(L,L);for(var z=Math.exp(this.computedRadius[0]),F=this.computedAngle[0],B=this.computedAngle[1],O=Math.cos(F),I=Math.sin(F),N=Math.cos(B),U=Math.sin(B),W=this.computedCenter,Q=O*N,ue=I*N,se=U,he=-O*U,G=-I*U,$=N,J=this.computedEye,Z=this.computedMatrix,u=0;u<3;++u){var re=Q*m[u]+ue*L[u]+se*E[u];Z[4*u+1]=he*m[u]+G*L[u]+$*E[u],Z[4*u+2]=re,Z[4*u+3]=0}var ne=Z[1],j=Z[5],ee=Z[9],ie=Z[2],fe=Z[6],be=Z[10],Ae=j*be-ee*fe,Be=ee*ie-ne*be,Ie=ne*fe-j*ie,Ze=h(Ae,Be,Ie);Ae/=Ze,Be/=Ze,Ie/=Ze,Z[0]=Ae,Z[4]=Be,Z[8]=Ie;for(var u=0;u<3;++u)J[u]=W[u]+Z[2+4*u]*z;for(var u=0;u<3;++u){for(var f=0,at=0;at<3;++at)f+=Z[u+4*at]*J[at];Z[12+u]=-f}Z[15]=1},l.getMatrix=function(S,E){this.recalcMatrix(S);var m=this.computedMatrix;if(E){for(var b=0;b<16;++b)E[b]=m[b];return E}return m};var _=[0,0,0];l.rotate=function(S,E,m,b){if(this.angle.move(S,E,m),b){this.recalcMatrix(S);var d=this.computedMatrix;_[0]=d[2],_[1]=d[6],_[2]=d[10];for(var u=this.computedUp,y=this.computedRight,f=this.computedToward,P=0;P<3;++P)d[4*P]=u[P],d[4*P+1]=y[P],d[4*P+2]=f[P];i(d,d,b,_);for(var P=0;P<3;++P)u[P]=d[4*P],y[P]=d[4*P+1];this.up.set(S,u[0],u[1],u[2]),this.right.set(S,y[0],y[1],y[2])}},l.pan=function(S,E,m,b){E=E||0,m=m||0,b=b||0,this.recalcMatrix(S);var d=this.computedMatrix,u=Math.exp(this.computedRadius[0]),y=d[1],f=d[5],P=d[9],L=h(y,f,P);y/=L,f/=L,P/=L;var z=d[0],F=d[4],B=d[8],O=z*y+F*f+B*P;z-=y*O,F-=f*O,B-=P*O;var I=h(z,F,B);z/=I,F/=I,B/=I;var N=z*E+y*m,U=F*E+f*m,W=B*E+P*m;this.center.move(S,N,U,W);var Q=Math.exp(this.computedRadius[0]);Q=Math.max(1e-4,Q+b),this.radius.set(S,Math.log(Q))},l.translate=function(S,E,m,b){this.center.move(S,E||0,m||0,b||0)},l.setMatrix=function(S,E,m,b){var d=1;typeof m=="number"&&(d=m|0),(d<0||d>3)&&(d=1);var u=(d+2)%3,y=(d+1)%3;E||(this.recalcMatrix(S),E=this.computedMatrix);var f=E[d],P=E[d+4],L=E[d+8];if(b){var F=Math.abs(f),B=Math.abs(P),O=Math.abs(L),I=Math.max(F,B,O);F===I?(f=f<0?-1:1,P=L=0):O===I?(L=L<0?-1:1,f=P=0):(P=P<0?-1:1,f=L=0)}else{var z=h(f,P,L);f/=z,P/=z,L/=z}var N=E[u],U=E[u+4],W=E[u+8],Q=N*f+U*P+W*L;N-=f*Q,U-=P*Q,W-=L*Q;var ue=h(N,U,W);N/=ue,U/=ue,W/=ue;var se=P*W-L*U,he=L*N-f*W,G=f*U-P*N,$=h(se,he,G);se/=$,he/=$,G/=$,this.center.jump(S,ge,ce,ze),this.radius.idle(S),this.up.jump(S,f,P,L),this.right.jump(S,N,U,W);var J,Z;if(d===2){var re=E[1],ne=E[5],j=E[9],ee=re*N+ne*U+j*W,ie=re*se+ne*he+j*G;Be<0?J=-Math.PI/2:J=Math.PI/2,Z=Math.atan2(ie,ee)}else{var fe=E[2],be=E[6],Ae=E[10],Be=fe*f+be*P+Ae*L,Ie=fe*N+be*U+Ae*W,Ze=fe*se+be*he+Ae*G;J=Math.asin(v(Be)),Z=Math.atan2(Ze,Ie)}this.angle.jump(S,Z,J),this.recalcMatrix(S);var at=E[2],it=E[6],et=E[10],lt=this.computedMatrix;a(lt,E);var Me=lt[15],ge=lt[12]/Me,ce=lt[13]/Me,ze=lt[14]/Me,tt=Math.exp(this.computedRadius[0]);this.center.jump(S,ge-at*tt,ce-it*tt,ze-et*tt)},l.lastT=function(){return Math.max(this.center.lastT(),this.up.lastT(),this.right.lastT(),this.radius.lastT(),this.angle.lastT())},l.idle=function(S){this.center.idle(S),this.up.idle(S),this.right.idle(S),this.radius.idle(S),this.angle.idle(S)},l.flush=function(S){this.center.flush(S),this.up.flush(S),this.right.flush(S),this.radius.flush(S),this.angle.flush(S)},l.setDistance=function(S,E){E>0&&this.radius.set(S,Math.log(E))},l.lookAt=function(S,E,m,b){this.recalcMatrix(S),E=E||this.computedEye,m=m||this.computedCenter,b=b||this.computedUp;var d=b[0],u=b[1],y=b[2],f=h(d,u,y);if(!(f<1e-6)){d/=f,u/=f,y/=f;var P=E[0]-m[0],L=E[1]-m[1],z=E[2]-m[2],F=h(P,L,z);if(!(F<1e-6)){P/=F,L/=F,z/=F;var B=this.computedRight,O=B[0],I=B[1],N=B[2],U=d*O+u*I+y*N;O-=U*d,I-=U*u,N-=U*y;var W=h(O,I,N);if(!(W<.01&&(O=u*z-y*L,I=y*P-d*z,N=d*L-u*P,W=h(O,I,N),W<1e-6))){O/=W,I/=W,N/=W,this.up.set(S,d,u,y),this.right.set(S,O,I,N),this.center.set(S,m[0],m[1],m[2]),this.radius.set(S,Math.log(F));var Q=u*N-y*I,ue=y*O-d*N,se=d*I-u*O,he=h(Q,ue,se);Q/=he,ue/=he,se/=he;var G=d*P+u*L+y*z,$=O*P+I*L+N*z,J=Q*P+ue*L+se*z,Z=Math.asin(v(G)),re=Math.atan2(J,$),ne=this.angle._state,j=ne[ne.length-1],ee=ne[ne.length-2];j=j%(2*Math.PI);var ie=Math.abs(j+2*Math.PI-re),fe=Math.abs(j-re),be=Math.abs(j-2*Math.PI-re);ie<fe&&(j+=2*Math.PI),be<fe&&(j-=2*Math.PI),this.angle.jump(this.angle.lastT(),j,ee),this.angle.set(S,re,Z)}}}};function w(S){S=S||{};var E=S.center||[0,0,0],m=S.up||[0,1,0],b=S.right||p(m),d=S.radius||1,u=S.theta||0,y=S.phi||0;if(E=[].slice.call(E,0,3),m=[].slice.call(m,0,3),s(m,m),b=[].slice.call(b,0,3),s(b,b),"eye"in S){var f=S.eye,P=[f[0]-E[0],f[1]-E[1],f[2]-E[2]];n(b,P,m),h(b[0],b[1],b[2])<1e-6?b=p(m):s(b,b),d=h(P[0],P[1],P[2]);var L=c(m,P)/d,z=c(b,P)/d;y=Math.acos(L),u=Math.acos(z)}return d=Math.log(d),new T(S.zoomMin,S.zoomMax,E,m,b,d,u,y)}},5250:function(e){"use strict";e.exports=r;var t=+(Math.pow(2,27)+1);function r(o,a,i){var n=o*a,s=t*o,c=s-o,h=s-c,v=o-h,p=t*a,T=p-a,l=p-T,_=a-l,w=n-h*l,S=w-v*l,E=S-h*_,m=v*_-E;return i?(i[0]=m,i[1]=n,i):[m,n]}},9362:function(e){"use strict";e.exports=t;function t(r,o,a){var i=r+o,n=i-r,s=i-n,c=o-n,h=r-s;return a?(a[0]=h+c,a[1]=i,a):[h+c,i]}},1888:function(e,t,r){"use strict";var o=r(8828),a=r(1338),i=r(4793).hp;r.g.__TYPEDARRAY_POOL||(r.g.__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 n=typeof Uint8ClampedArray<"u",s=typeof BigUint64Array<"u",c=typeof BigInt64Array<"u",h=r.g.__TYPEDARRAY_POOL;h.UINT8C||(h.UINT8C=a([32,0])),h.BIGUINT64||(h.BIGUINT64=a([32,0])),h.BIGINT64||(h.BIGINT64=a([32,0])),h.BUFFER||(h.BUFFER=a([32,0]));var v=h.DATA,p=h.BUFFER;t.free=function(O){if(i.isBuffer(O))p[o.log2(O.length)].push(O);else{if(Object.prototype.toString.call(O)!=="[object ArrayBuffer]"&&(O=O.buffer),!O)return;var I=O.length||O.byteLength,N=o.log2(I)|0;v[N].push(O)}};function T(B){if(B){var O=B.length||B.byteLength,I=o.log2(O);v[I].push(B)}}function l(B){T(B.buffer)}t.freeUint8=t.freeUint16=t.freeUint32=t.freeBigUint64=t.freeInt8=t.freeInt16=t.freeInt32=t.freeBigInt64=t.freeFloat32=t.freeFloat=t.freeFloat64=t.freeDouble=t.freeUint8Clamped=t.freeDataView=l,t.freeArrayBuffer=T,t.freeBuffer=function(O){p[o.log2(O.length)].push(O)},t.malloc=function(O,I){if(I===void 0||I==="arraybuffer")return _(O);switch(I){case"uint8":return w(O);case"uint16":return S(O);case"uint32":return E(O);case"int8":return m(O);case"int16":return b(O);case"int32":return d(O);case"float":case"float32":return u(O);case"double":case"float64":return y(O);case"uint8_clamped":return f(O);case"bigint64":return L(O);case"biguint64":return P(O);case"buffer":return F(O);case"data":case"dataview":return z(O);default:return null}return null};function _(O){var O=o.nextPow2(O),I=o.log2(O),N=v[I];return N.length>0?N.pop():new ArrayBuffer(O)}t.mallocArrayBuffer=_;function w(B){return new Uint8Array(_(B),0,B)}t.mallocUint8=w;function S(B){return new Uint16Array(_(2*B),0,B)}t.mallocUint16=S;function E(B){return new Uint32Array(_(4*B),0,B)}t.mallocUint32=E;function m(B){return new Int8Array(_(B),0,B)}t.mallocInt8=m;function b(B){return new Int16Array(_(2*B),0,B)}t.mallocInt16=b;function d(B){return new Int32Array(_(4*B),0,B)}t.mallocInt32=d;function u(B){return new Float32Array(_(4*B),0,B)}t.mallocFloat32=t.mallocFloat=u;function y(B){return new Float64Array(_(8*B),0,B)}t.mallocFloat64=t.mallocDouble=y;function f(B){return n?new Uint8ClampedArray(_(B),0,B):w(B)}t.mallocUint8Clamped=f;function P(B){return s?new BigUint64Array(_(8*B),0,B):null}t.mallocBigUint64=P;function L(B){return c?new BigInt64Array(_(8*B),0,B):null}t.mallocBigInt64=L;function z(B){return new DataView(_(B),0,B)}t.mallocDataView=z;function F(B){B=o.nextPow2(B);var O=o.log2(B),I=p[O];return I.length>0?I.pop():new i(B)}t.mallocBuffer=F,t.clearCache=function(){for(var O=0;O<32;++O)h.UINT8[O].length=0,h.UINT16[O].length=0,h.UINT32[O].length=0,h.INT8[O].length=0,h.INT16[O].length=0,h.INT32[O].length=0,h.FLOAT[O].length=0,h.DOUBLE[O].length=0,h.BIGUINT64[O].length=0,h.BIGINT64[O].length=0,h.UINT8C[O].length=0,v[O].length=0,p[O].length=0}},1755:function(e){"use strict";"use restrict";e.exports=t;function t(o){this.roots=new Array(o),this.ranks=new Array(o);for(var a=0;a<o;++a)this.roots[a]=a,this.ranks[a]=0}var r=t.prototype;Object.defineProperty(r,"length",{get:function(){return this.roots.length}}),r.makeSet=function(){var o=this.roots.length;return this.roots.push(o),this.ranks.push(0),o},r.find=function(o){for(var a=o,i=this.roots;i[o]!==o;)o=i[o];for(;i[a]!==o;){var n=i[a];i[a]=o,a=n}return o},r.link=function(o,a){var i=this.find(o),n=this.find(a);if(i!==n){var s=this.ranks,c=this.roots,h=s[i],v=s[n];h<v?c[i]=n:v<h?c[n]=i:(c[n]=i,++s[i])}}},1682:function(e){"use strict";function t(a,i){for(var n=1,s=a.length,c=a[0],h=a[0],v=1;v<s;++v)if(h=c,c=a[v],i(c,h)){if(v===n){n++;continue}a[n++]=c}return a.length=n,a}function r(a){for(var i=1,n=a.length,s=a[0],c=a[0],h=1;h<n;++h,c=s)if(c=s,s=a[h],s!==c){if(h===i){i++;continue}a[i++]=s}return a.length=i,a}function o(a,i,n){return a.length===0?a:i?(n||a.sort(i),t(a,i)):(n||a.sort(),r(a))}e.exports=o},4359:function(e,t,r){"use strict";e.exports=n;var o=r(7718),a=null,i=null;typeof document<"u"&&(a=document.createElement("canvas"),a.width=8192,a.height=1024,i=a.getContext("2d"));function n(s,c){return(typeof c!="object"||c===null)&&(c={}),o(s,c.canvas||a,c.context||i,c)}},7718:function(e,t,r){e.exports=L,e.exports.processPixels=P;var o=r(3711),a=r(9618),i=r(5878),n=r(332),s=r(2538),c=r(2095),h="b",v="b|",p="i",T="i|",l="sup",_="+",w="+1",S="sub",E="-",m="-1";function b(z,F,B,O){for(var I="<"+z+">",N="</"+z+">",U=I.length,W=N.length,Q=F[0]===_||F[0]===E,ue=0,se=-W;ue>-1&&(ue=B.indexOf(I,ue),!(ue===-1||(se=B.indexOf(N,ue+U),se===-1)||se<=ue));){for(var he=ue;he<se+W;++he)if(he<ue+U||he>=se)O[he]=null,B=B.substr(0,he)+" "+B.substr(he+1);else if(O[he]!==null){var G=O[he].indexOf(F[0]);G===-1?O[he]+=F:Q&&(O[he]=O[he].substr(0,G+1)+(1+parseInt(O[he][G+1]))+O[he].substr(G+2))}var $=ue+U,J=B.substr($,se-$),Z=J.indexOf(I);Z!==-1?ue=Z:ue=se+W}return O}function d(z,F,B){for(var O=F.textAlign||"start",I=F.textBaseline||"alphabetic",N=[1<<30,1<<30],U=[0,0],W=z.length,Q=0;Q<W;++Q)for(var ue=z[Q],se=0;se<2;++se)N[se]=Math.min(N[se],ue[se])|0,U[se]=Math.max(U[se],ue[se])|0;var he=0;switch(O){case"center":he=-.5*(N[0]+U[0]);break;case"right":case"end":he=-U[0];break;case"left":case"start":he=-N[0];break;default:throw new Error("vectorize-text: Unrecognized textAlign: '"+O+"'")}var G=0;switch(I){case"hanging":case"top":G=-N[1];break;case"middle":G=-.5*(N[1]+U[1]);break;case"alphabetic":case"ideographic":G=-3*B;break;case"bottom":G=-U[1];break;default:throw new Error("vectorize-text: Unrecoginized textBaseline: '"+I+"'")}var $=1/B;return"lineHeight"in F?$*=+F.lineHeight:"width"in F?$=F.width/(U[0]-N[0]):"height"in F&&($=F.height/(U[1]-N[1])),z.map(function(J){return[$*(J[0]+he),$*(J[1]+G)]})}function u(z,F,B,O,I,N){B=B.replace(/\n/g,""),N.breaklines===!0?B=B.replace(/\<br\>/g,`
+`):B=B.replace(/\<br\>/g," ");var U="",W=[];for(j=0;j<B.length;++j)W[j]=U;N.bolds===!0&&(W=b(h,v,B,W)),N.italics===!0&&(W=b(p,T,B,W)),N.superscripts===!0&&(W=b(l,w,B,W)),N.subscripts===!0&&(W=b(S,m,B,W));var Q=[],ue="";for(j=0;j<B.length;++j)W[j]!==null&&(ue+=B[j],Q.push(W[j]));var se=ue.split(`
+`),he=se.length,G=Math.round(I*O),$=O,J=O*2,Z=0,re=he*G+J;z.height<re&&(z.height=re),F.fillStyle="#000",F.fillRect(0,0,z.width,z.height),F.fillStyle="#fff";var ne,j,ee,ie,fe,be=0,Ae="";function Be(){if(Ae!==""){var ce=F.measureText(Ae).width;F.fillText(Ae,$+ee,J+ie),ee+=ce}}function Ie(){return""+Math.round(fe)+"px "}function Ze(ce,ze){var tt=""+F.font;if(N.subscripts===!0){var nt=ce.indexOf(E),Qe=ze.indexOf(E),Ct=nt>-1?parseInt(ce[1+nt]):0,St=Qe>-1?parseInt(ze[1+Qe]):0;Ct!==St&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,St-Ct),tt=tt.replace("?px ",Ie())),ie+=.25*G*(St-Ct)}if(N.superscripts===!0){var Ot=ce.indexOf(_),jt=ze.indexOf(_),ur=Ot>-1?parseInt(ce[1+Ot]):0,ar=jt>-1?parseInt(ze[1+jt]):0;ur!==ar&&(tt=tt.replace(Ie(),"?px "),fe*=Math.pow(.75,ar-ur),tt=tt.replace("?px ",Ie())),ie-=.25*G*(ar-ur)}if(N.bolds===!0){var Cr=ce.indexOf(v)>-1,vr=ze.indexOf(v)>-1;!Cr&&vr&&(_r?tt=tt.replace("italic ","italic bold "):tt="bold "+tt),Cr&&!vr&&(tt=tt.replace("bold ",""))}if(N.italics===!0){var _r=ce.indexOf(T)>-1,yt=ze.indexOf(T)>-1;!_r&&yt&&(tt="italic "+tt),_r&&!yt&&(tt=tt.replace("italic ",""))}F.font=tt}for(ne=0;ne<he;++ne){var at=se[ne]+`
+`;for(ee=0,ie=ne*G,fe=O,Ae="",j=0;j<at.length;++j){var it=j+be<Q.length?Q[j+be]:Q[Q.length-1];U===it?Ae+=at[j]:(Be(),Ae=at[j],it!==void 0&&(Ze(U,it),U=it))}Be(),be+=at.length;var et=Math.round(ee+2*$)|0;Z<et&&(Z=et)}var lt=Z,Me=J+G*he,ge=a(F.getImageData(0,0,lt,Me).data,[Me,lt,4]);return ge.pick(-1,-1,0).transpose(1,0)}function y(z,F){var B=o(z,128);return F?i(B.cells,B.positions,.25):{edges:B.cells,positions:B.positions}}function f(z,F,B,O){var I=y(z,O),N=d(I.positions,F,B),U=I.edges,W=F.orientation==="ccw";if(n(N,U),F.polygons||F.polygon||F.polyline){for(var Q=c(U,N),ue=new Array(Q.length),se=0;se<Q.length;++se){for(var he=Q[se],G=new Array(he.length),$=0;$<he.length;++$){for(var J=he[$],Z=new Array(J.length),re=0;re<J.length;++re)Z[re]=N[J[re]].slice();W&&Z.reverse(),G[$]=Z}ue[se]=G}return ue}else return F.triangles||F.triangulate||F.triangle?{cells:s(N,U,{delaunay:!1,exterior:!1,interior:!0}),positions:N}:{edges:U,positions:N}}function P(z,F,B){try{return f(z,F,B,!0)}catch{}try{return f(z,F,B,!1)}catch{}return F.polygons||F.polyline||F.polygon?[]:F.triangles||F.triangulate||F.triangle?{cells:[],positions:[]}:{edges:[],positions:[]}}function L(z,F,B,O){var I=64,N=1.25,U={breaklines:!1,bolds:!1,italics:!1,subscripts:!1,superscripts:!1};O&&(O.size&&O.size>0&&(I=O.size),O.lineSpacing&&O.lineSpacing>0&&(N=O.lineSpacing),O.styletags&&O.styletags.breaklines&&(U.breaklines=!!O.styletags.breaklines),O.styletags&&O.styletags.bolds&&(U.bolds=!!O.styletags.bolds),O.styletags&&O.styletags.italics&&(U.italics=!!O.styletags.italics),O.styletags&&O.styletags.subscripts&&(U.subscripts=!!O.styletags.subscripts),O.styletags&&O.styletags.superscripts&&(U.superscripts=!!O.styletags.superscripts)),B.font=[O.fontStyle,O.fontVariant,O.fontWeight,I+"px",O.font].filter(function(Q){return Q}).join(" "),B.textAlign="start",B.textBaseline="alphabetic",B.direction="ltr";var W=u(F,B,z,I,N,U);return P(W,O,I)}},1538:function(e){(function(){"use strict";if(typeof ses<"u"&&ses.ok&&!ses.ok())return;function r(f){f.permitHostObjects___&&f.permitHostObjects___(r)}typeof ses<"u"&&(ses.weakMapPermitHostObjects=r);var o=!1;if(typeof WeakMap=="function"){var a=WeakMap;if(!(typeof navigator<"u"&&/Firefox/.test(navigator.userAgent))){var i=new a,n=Object.freeze({});if(i.set(n,1),i.get(n)!==1)o=!0;else{e.exports=WeakMap;return}}}var s=Object.prototype.hasOwnProperty,c=Object.getOwnPropertyNames,h=Object.defineProperty,v=Object.isExtensible,p="weakmap:",T=p+"ident:"+Math.random()+"___";if(typeof crypto<"u"&&typeof crypto.getRandomValues=="function"&&typeof ArrayBuffer=="function"&&typeof Uint8Array=="function"){var l=new ArrayBuffer(25),_=new Uint8Array(l);crypto.getRandomValues(_),T=p+"rand:"+Array.prototype.map.call(_,function(f){return(f%36).toString(36)}).join("")+"___"}function w(f){return!(f.substr(0,p.length)==p&&f.substr(f.length-3)==="___")}if(h(Object,"getOwnPropertyNames",{value:function(P){return c(P).filter(w)}}),"getPropertyNames"in Object){var S=Object.getPropertyNames;h(Object,"getPropertyNames",{value:function(P){return S(P).filter(w)}})}function E(f){if(f!==Object(f))throw new TypeError("Not an object: "+f);var P=f[T];if(P&&P.key===f)return P;if(v(f)){P={key:f};try{return h(f,T,{value:P,writable:!1,enumerable:!1,configurable:!1}),P}catch{return}}}(function(){var f=Object.freeze;h(Object,"freeze",{value:function(F){return E(F),f(F)}});var P=Object.seal;h(Object,"seal",{value:function(F){return E(F),P(F)}});var L=Object.preventExtensions;h(Object,"preventExtensions",{value:function(F){return E(F),L(F)}})})();function m(f){return f.prototype=null,Object.freeze(f)}var b=!1;function d(){!b&&typeof console<"u"&&(b=!0,console.warn("WeakMap should be invoked as new WeakMap(), not WeakMap(). This will be an error in the future."))}var u=0,y=function(){this instanceof y||d();var f=[],P=[],L=u++;function z(I,N){var U,W=E(I);return W?L in W?W[L]:N:(U=f.indexOf(I),U>=0?P[U]:N)}function F(I){var N=E(I);return N?L in N:f.indexOf(I)>=0}function B(I,N){var U,W=E(I);return W?W[L]=N:(U=f.indexOf(I),U>=0?P[U]=N:(U=f.length,P[U]=N,f[U]=I)),this}function O(I){var N=E(I),U,W;return N?L in N&&delete N[L]:(U=f.indexOf(I),U<0?!1:(W=f.length-1,f[U]=void 0,P[U]=P[W],f[U]=f[W],f.length=W,P.length=W,!0))}return Object.create(y.prototype,{get___:{value:m(z)},has___:{value:m(F)},set___:{value:m(B)},delete___:{value:m(O)}})};y.prototype=Object.create(Object.prototype,{get:{value:function(P,L){return this.get___(P,L)},writable:!0,configurable:!0},has:{value:function(P){return this.has___(P)},writable:!0,configurable:!0},set:{value:function(P,L){return this.set___(P,L)},writable:!0,configurable:!0},delete:{value:function(P){return this.delete___(P)},writable:!0,configurable:!0}}),typeof a=="function"?function(){o&&typeof Proxy<"u"&&(Proxy=void 0);function f(){this instanceof y||d();var P=new a,L=void 0,z=!1;function F(N,U){return L?P.has(N)?P.get(N):L.get___(N,U):P.get(N,U)}function B(N){return P.has(N)||(L?L.has___(N):!1)}var O;o?O=function(N,U){return P.set(N,U),P.has(N)||(L||(L=new y),L.set(N,U)),this}:O=function(N,U){if(z)try{P.set(N,U)}catch{L||(L=new y),L.set___(N,U)}else P.set(N,U);return this};function I(N){var U=!!P.delete(N);return L&&L.delete___(N)||U}return Object.create(y.prototype,{get___:{value:m(F)},has___:{value:m(B)},set___:{value:m(O)},delete___:{value:m(I)},permitHostObjects___:{value:m(function(N){if(N===r)z=!0;else throw new Error("bogus call to permitHostObjects___")})}})}f.prototype=y.prototype,e.exports=f,Object.defineProperty(WeakMap.prototype,"constructor",{value:WeakMap,enumerable:!1,configurable:!0,writable:!0})}():(typeof Proxy<"u"&&(Proxy=void 0),e.exports=y)})()},236:function(e,t,r){var o=r(8284);e.exports=a;function a(){var i={};return function(n){if((typeof n!="object"||n===null)&&typeof n!="function")throw new Error("Weakmap-shim: Key must be object");var s=n.valueOf(i);return s&&s.identity===i?s:o(n,i)}}},8284:function(e){e.exports=t;function t(r,o){var a={identity:o},i=r.valueOf;return Object.defineProperty(r,"valueOf",{value:function(n){return n!==o?i.apply(this,arguments):a},writable:!0}),a}},606:function(e,t,r){var o=r(236);e.exports=a;function a(){var i=o();return{get:function(n,s){var c=i(n);return c.hasOwnProperty("value")?c.value:s},set:function(n,s){return i(n).value=s,this},has:function(n){return"value"in i(n)},delete:function(n){return delete i(n).value}}}},3349:function(e){"use strict";function t(){return function(s,c,h,v,p,T){var l=s[0],_=h[0],w=[0],S=_;v|=0;var E=0,m=_;for(E=0;E<l;++E){{var b=c[v]-T,d=c[v+S]-T;b>=0!=d>=0&&p.push(w[0]+.5+.5*(b+d)/(b-d))}v+=m,++w[0]}}}function r(){return t()}var o=r;function a(s){var c={};return function(v,p,T){var l=v.dtype,_=v.order,w=[l,_.join()].join(),S=c[w];return S||(c[w]=S=s([l,_])),S(v.shape.slice(0),v.data,v.stride,v.offset|0,p,T)}}function i(s){return a(o.bind(void 0,s))}function n(s){return i({funcName:s.funcName})}e.exports=n({funcName:"zeroCrossings"})},781:function(e,t,r){"use strict";e.exports=a;var o=r(3349);function a(i,n){var s=[];return n=+n||0,o(i.hi(i.shape[0]-1),s,n),s}},7790:function(){}},x={};function A(e){var t=x[e];if(t!==void 0)return t.exports;var r=x[e]={id:e,loaded:!1,exports:{}};return g[e].call(r.exports,r,r.exports,A),r.loaded=!0,r.exports}(function(){A.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}()})(),function(){A.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e}}();var M=A(1964);H.exports=M})()}}),d5=Ye({"node_modules/color-name/index.js"(X,H){"use strict";H.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]}}}),EN=Ye({"node_modules/color-normalize/node_modules/color-parse/index.js"(X,H){"use strict";var g=d5();H.exports=A;var x={red:0,orange:60,yellow:120,green:180,blue:240,purple:300};function A(M){var e,t=[],r=1,o;if(typeof M=="string")if(M=M.toLowerCase(),g[M])t=g[M].slice(),o="rgb";else if(M==="transparent")r=0,o="rgb",t=[0,0,0];else if(/^#[A-Fa-f0-9]+$/.test(M)){var a=M.slice(1),i=a.length,n=i<=4;r=1,n?(t=[parseInt(a[0]+a[0],16),parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16)],i===4&&(r=parseInt(a[3]+a[3],16)/255)):(t=[parseInt(a[0]+a[1],16),parseInt(a[2]+a[3],16),parseInt(a[4]+a[5],16)],i===8&&(r=parseInt(a[6]+a[7],16)/255)),t[0]||(t[0]=0),t[1]||(t[1]=0),t[2]||(t[2]=0),o="rgb"}else if(e=/^((?:rgb|hs[lvb]|hwb|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms)a?)\s*\(([^\)]*)\)/.exec(M)){var s=e[1],c=s==="rgb",a=s.replace(/a$/,"");o=a;var i=a==="cmyk"?4:a==="gray"?1:3;t=e[2].trim().split(/\s*[,\/]\s*|\s+/).map(function(p,T){if(/%$/.test(p))return T===i?parseFloat(p)/100:a==="rgb"?parseFloat(p)*255/100:parseFloat(p);if(a[T]==="h"){if(/deg$/.test(p))return parseFloat(p);if(x[p]!==void 0)return x[p]}return parseFloat(p)}),s===a&&t.push(1),r=c||t[i]===void 0?1:t[i],t=t.slice(0,i)}else M.length>10&&/[0-9](?:\s|\/)/.test(M)&&(t=M.match(/([0-9]+)/g).map(function(h){return parseFloat(h)}),o=M.match(/([a-z])/ig).join("").toLowerCase());else isNaN(M)?Array.isArray(M)||M.length?(t=[M[0],M[1],M[2]],o="rgb",r=M.length===4?M[3]:1):M instanceof Object&&(M.r!=null||M.red!=null||M.R!=null?(o="rgb",t=[M.r||M.red||M.R||0,M.g||M.green||M.G||0,M.b||M.blue||M.B||0]):(o="hsl",t=[M.h||M.hue||M.H||0,M.s||M.saturation||M.S||0,M.l||M.lightness||M.L||M.b||M.brightness]),r=M.a||M.alpha||M.opacity||1,M.opacity!=null&&(r/=100)):(o="rgb",t=[M>>>16,(M&65280)>>>8,M&255]);return{space:o,values:t,alpha:r}}}}),kN=Ye({"node_modules/color-normalize/node_modules/color-rgba/index.js"(X,H){"use strict";var g=EN();H.exports=function(M){Array.isArray(M)&&M.raw&&(M=String.raw.apply(null,arguments));var e,t,r,o=g(M);if(!o.space)return[];var a=[0,0,0],i=o.space[0]==="h"?[360,100,100]:[255,255,255];return e=Array(3),e[0]=Math.min(Math.max(o.values[0],a[0]),i[0]),e[1]=Math.min(Math.max(o.values[1],a[1]),i[1]),e[2]=Math.min(Math.max(o.values[2],a[2]),i[2]),o.space[0]==="h"&&(e=x(e)),e.push(Math.min(Math.max(o.alpha,0),1)),e};function x(A){var M=A[0]/360,e=A[1]/100,t=A[2]/100,r,o,a,i,n,s=0;if(e===0)return n=t*255,[n,n,n];for(o=t<.5?t*(1+e):t+e-t*e,r=2*t-o,i=[0,0,0];s<3;)a=M+1/3*-(s-1),a<0?a++:a>1&&a--,n=6*a<1?r+(o-r)*6*a:2*a<1?o:3*a<2?r+(o-r)*(2/3-a)*6:r,i[s++]=n*255;return i}}}),dx=Ye({"node_modules/clamp/index.js"(X,H){H.exports=g;function g(x,A,M){return A<M?x<A?A:x>M?M:x:x<M?M:x>A?A:x}}}),$3=Ye({"node_modules/dtype/index.js"(X,H){H.exports=function(g){switch(g){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}}}}),hg=Ye({"node_modules/color-normalize/index.js"(X,H){"use strict";var g=kN(),x=dx(),A=$3();H.exports=function(t,r){(r==="float"||!r)&&(r="array"),r==="uint"&&(r="uint8"),r==="uint_clamped"&&(r="uint8_clamped");var o=A(r),a=new o(4),i=r!=="uint8"&&r!=="uint8_clamped";return(!t.length||typeof t=="string")&&(t=g(t),t[0]/=255,t[1]/=255,t[2]/=255),M(t)?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:255,i&&(a[0]/=255,a[1]/=255,a[2]/=255,a[3]/=255),a):(i?(a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3]!=null?t[3]:1):(a[0]=x(Math.floor(t[0]*255),0,255),a[1]=x(Math.floor(t[1]*255),0,255),a[2]=x(Math.floor(t[2]*255),0,255),a[3]=t[3]==null?255:x(Math.floor(t[3]*255),0,255)),a)};function M(e){return!!(e instanceof Uint8Array||e instanceof Uint8ClampedArray||Array.isArray(e)&&(e[0]>1||e[0]===0)&&(e[1]>1||e[1]===0)&&(e[2]>1||e[2]===0)&&(!e[3]||e[3]>1))}}}),Qv=Ye({"src/lib/str2rgbarray.js"(X,H){"use strict";var g=hg();function x(A){return A?g(A):[0,0,0,1]}H.exports=x}}),em=Ye({"src/lib/gl_format_color.js"(X,H){"use strict";var g=jo(),x=bh(),A=hg(),M=Su(),e=Gf().defaultLine,t=xp().isArrayOrTypedArray,r=A(e),o=1;function a(h,v){var p=h;return p[3]*=v,p}function i(h){if(g(h))return r;var v=A(h);return v.length?v:r}function n(h){return g(h)?h:o}function s(h,v,p){var T=h.color;T&&T._inputArray&&(T=T._inputArray);var l=t(T),_=t(v),w=M.extractOpts(h),S=[],E,m,b,d,u;if(w.colorscale!==void 0?E=M.makeColorScaleFuncFromTrace(h):E=i,l?m=function(f,P){return f[P]===void 0?r:A(E(f[P]))}:m=i,_?b=function(f,P){return f[P]===void 0?o:n(f[P])}:b=n,l||_)for(var y=0;y<p;y++)d=m(T,y),u=b(v,y),S[y]=a(d,u);else S=a(A(T),v);return S}function c(h){var v=M.extractOpts(h),p=v.colorscale;return v.reversescale&&(p=M.flipScale(v.colorscale)),p.map(function(T){var l=T[0],_=x(T[1]),w=_.toRgb();return{index:l,rgb:[w.r,w.g,w.b,w.a]}})}H.exports={formatColor:s,parseColorScale:c}}}),v5=Ye({"src/constants/gl3d_dashes.js"(X,H){"use strict";H.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]}}}),Q3=Ye({"src/constants/gl3d_markers.js"(X,H){"use strict";H.exports={circle:"\u25CF","circle-open":"\u25CB",square:"\u25A0","square-open":"\u25A1",diamond:"\u25C6","diamond-open":"\u25C7",cross:"+",x:"\u274C"}}}),CN=Ye({"src/traces/scatter3d/calc_errors.js"(X,H){"use strict";var g=Hn();function x(e,t,r,o){if(!t||!t.visible)return null;for(var a=g.getComponentMethod("errorbars","makeComputeError")(t),i=new Array(e.length),n=0;n<e.length;n++){var s=a(+e[n],n);if(o.type==="log"){var c=o.c2l(e[n]),h=e[n]-s[0],v=e[n]+s[1];if(i[n]=[(o.c2l(h,!0)-c)*r,(o.c2l(v,!0)-c)*r],h>0){var p=o.c2l(h);o._lowerLogErrorBound||(o._lowerLogErrorBound=p),o._lowerErrorBound=Math.min(o._lowerLogErrorBound,p)}}else i[n]=[-s[0]*r,s[1]*r]}return i}function A(e){for(var t=0;t<e.length;t++)if(e[t])return e[t].length;return 0}function M(e,t,r){var o=[x(e.x,e.error_x,t[0],r.xaxis),x(e.y,e.error_y,t[1],r.yaxis),x(e.z,e.error_z,t[2],r.zaxis)],a=A(o);if(a===0)return null;for(var i=new Array(a),n=0;n<a;n++){for(var s=[[0,0,0],[0,0,0]],c=0;c<3;c++)if(o[c])for(var h=0;h<2;h++)s[h][c]=o[c][n][h];i[n]=s}return i}H.exports=M}}),LN=Ye({"src/traces/scatter3d/convert.js"(X,H){"use strict";var g=Gh().gl_line3d,x=Gh().gl_scatter3d,A=Gh().gl_error3d,M=Gh().gl_mesh3d,e=Gh().delaunay_triangulate,t=ta(),r=Qv(),o=em().formatColor,a=t1(),i=v5(),n=Q3(),s=Co(),c=Qp().appendArrayPointValue,h=CN();function v(P,L){this.scene=P,this.uid=L,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 p=v.prototype;p.handlePick=function(P){if(P.object&&(P.object===this.linePlot||P.object===this.delaunayMesh||P.object===this.textMarkers||P.object===this.scatterPlot)){var L=P.index=P.data.index;return P.object.highlight&&P.object.highlight(null),this.scatterPlot&&(P.object=this.scatterPlot,this.scatterPlot.highlight(P.data)),P.textLabel="",this.textLabels&&(t.isArrayOrTypedArray(this.textLabels)?(this.textLabels[L]||this.textLabels[L]===0)&&(P.textLabel=this.textLabels[L]):P.textLabel=this.textLabels),P.traceCoordinate=[this.data.x[L],this.data.y[L],this.data.z[L]],!0}};function T(P,L,z){var F=(z+1)%3,B=(z+2)%3,O=[],I=[],N;for(N=0;N<P.length;++N){var U=P[N];isNaN(U[F])||!isFinite(U[F])||isNaN(U[B])||!isFinite(U[B])||(O.push([U[F],U[B]]),I.push(N))}var W=e(O);for(N=0;N<W.length;++N)for(var Q=W[N],ue=0;ue<Q.length;++ue)Q[ue]=I[Q[ue]];return{positions:P,cells:W,meshColor:L}}function l(P){for(var L=[0,0,0],z=[[0,0,0],[0,0,0],[0,0,0]],F=[1,1,1],B=0;B<3;B++){var O=P[B];O&&O.copy_zstyle!==!1&&P[2].visible!==!1&&(O=P[2]),!(!O||!O.visible)&&(L[B]=O.width/2,z[B]=r(O.color),F[B]=O.thickness)}return{capSize:L,color:z,lineWidth:F}}function _(P){return P==null?0:P.indexOf("left")>-1?-1:P.indexOf("right")>-1?1:0}function w(P){return P==null?0:P.indexOf("top")>-1?-1:P.indexOf("bottom")>-1?1:0}function S(P){var L=0,z=0,F=[L,z];if(Array.isArray(P))for(var B=0;B<P.length;B++)F[B]=[L,z],P[B]&&(F[B][0]=_(P[B]),F[B][1]=w(P[B]));else F[0]=_(P),F[1]=w(P);return F}function E(P,L){return L(P*4)}function m(P){return n[P]}function b(P,L,z,F,B){var O=null;if(t.isArrayOrTypedArray(P)){O=[];for(var I=0;I<L;I++)P[I]===void 0?O[I]=F:O[I]=z(P[I],B)}else O=z(P,t.identity);return O}function d(P,L){var z=[],F=P.fullSceneLayout,B=P.dataScale,O=F.xaxis,I=F.yaxis,N=F.zaxis,U=L.marker,W=L.line,Q=L.x||[],ue=L.y||[],se=L.z||[],he=Q.length,G=L.xcalendar,$=L.ycalendar,J=L.zcalendar,Z,re,ne,j,ee,ie;for(ee=0;ee<he;ee++)Z=O.d2l(Q[ee],0,G)*B[0],re=I.d2l(ue[ee],0,$)*B[1],ne=N.d2l(se[ee],0,J)*B[2],z[ee]=[Z,re,ne];if(Array.isArray(L.text))ie=L.text;else if(t.isTypedArray(L.text))ie=Array.from(L.text);else if(L.text!==void 0)for(ie=new Array(he),ee=0;ee<he;ee++)ie[ee]=L.text;function fe(nt,Qe){var Ct=F[nt];return s.tickText(Ct,Ct.d2l(Qe),!0).text}var be=L.texttemplate;if(be){var Ae=P.fullLayout,Be=Ae._d3locale,Ie=Array.isArray(be),Ze=Ie?Math.min(be.length,he):he,at=Ie?function(nt){return be[nt]}:function(){return be};for(ie=new Array(Ze),ee=0;ee<Ze;ee++){var it={x:Q[ee],y:ue[ee],z:se[ee]},et={xLabel:fe("xaxis",Q[ee]),yLabel:fe("yaxis",ue[ee]),zLabel:fe("zaxis",se[ee])},lt={};c(lt,L,ee);var Me=L._meta||{};ie[ee]=t.texttemplateString(at(ee),et,Be,lt,it,Me)}}if(j={position:z,mode:L.mode,text:ie},"line"in L&&(j.lineColor=o(W,1,he),j.lineWidth=W.width,j.lineDashes=W.dash),"marker"in L){var ge=a(L);j.scatterColor=o(U,1,he),j.scatterSize=b(U.size,he,E,20,ge),j.scatterMarker=b(U.symbol,he,m,"\u25CF"),j.scatterLineWidth=U.line.width,j.scatterLineColor=o(U.line,1,he),j.scatterAngle=0}"textposition"in L&&(j.textOffset=S(L.textposition),j.textColor=o(L.textfont,1,he),j.textSize=b(L.textfont.size,he,t.identity,12),j.textFontFamily=L.textfont.family,j.textFontWeight=L.textfont.weight,j.textFontStyle=L.textfont.style,j.textFontVariant=L.textfont.variant,j.textAngle=0);var ce=["x","y","z"];for(j.project=[!1,!1,!1],j.projectScale=[1,1,1],j.projectOpacity=[1,1,1],ee=0;ee<3;++ee){var ze=L.projection[ce[ee]];(j.project[ee]=ze.show)&&(j.projectOpacity[ee]=ze.opacity,j.projectScale[ee]=ze.scale)}j.errorBounds=h(L,B,F);var tt=l([L.error_x,L.error_y,L.error_z]);return j.errorColor=tt.color,j.errorLineWidth=tt.lineWidth,j.errorCapSize=tt.capSize,j.delaunayAxis=L.surfaceaxis,j.delaunayColor=r(L.surfacecolor),j}function u(P){if(t.isArrayOrTypedArray(P)){var L=P[0];return t.isArrayOrTypedArray(L)&&(P=L),"rgb("+P.slice(0,3).map(function(z){return Math.round(z*255)})+")"}return null}function y(P){return t.isArrayOrTypedArray(P)?P.length===4&&typeof P[0]=="number"?u(P):P.map(u):null}p.update=function(P){var L=this.scene.glplot.gl,z,F,B,O,I=i.solid;this.data=P;var N=d(this.scene,P);"mode"in N&&(this.mode=N.mode),"lineDashes"in N&&N.lineDashes in i&&(I=i[N.lineDashes]),this.color=y(N.scatterColor)||y(N.lineColor),this.dataPoints=N.position,z={gl:this.scene.glplot.gl,position:N.position,color:N.lineColor,lineWidth:N.lineWidth||1,dashes:I[0],dashScale:I[1],opacity:P.opacity,connectGaps:P.connectgaps},this.mode.indexOf("lines")!==-1?this.linePlot?this.linePlot.update(z):(this.linePlot=g(z),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 U=P.opacity;if(P.marker&&P.marker.opacity!==void 0&&(U*=P.marker.opacity),F={gl:this.scene.glplot.gl,position:N.position,color:N.scatterColor,size:N.scatterSize,glyph:N.scatterMarker,opacity:U,orthographic:!0,lineWidth:N.scatterLineWidth,lineColor:N.scatterLineColor,project:N.project,projectScale:N.projectScale,projectOpacity:N.projectOpacity},this.mode.indexOf("markers")!==-1?this.scatterPlot?this.scatterPlot.update(F):(this.scatterPlot=x(F),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),O={gl:this.scene.glplot.gl,position:N.position,glyph:N.text,color:N.textColor,size:N.textSize,angle:N.textAngle,alignment:N.textOffset,font:N.textFontFamily,fontWeight:N.textFontWeight,fontStyle:N.textFontStyle,fontVariant:N.textFontVariant,orthographic:!0,lineWidth:0,project:!1,opacity:P.opacity},this.textLabels=P.hovertext||P.text,this.mode.indexOf("text")!==-1?this.textMarkers?this.textMarkers.update(O):(this.textMarkers=x(O),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),B={gl:this.scene.glplot.gl,position:N.position,color:N.errorColor,error:N.errorBounds,lineWidth:N.errorLineWidth,capSize:N.errorCapSize,opacity:P.opacity},this.errorBars?N.errorBounds?this.errorBars.update(B):(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose(),this.errorBars=null):N.errorBounds&&(this.errorBars=A(B),this.errorBars._trace=this,this.scene.glplot.add(this.errorBars)),N.delaunayAxis>=0){var W=T(N.position,N.delaunayColor,N.delaunayAxis);W.opacity=P.opacity,this.delaunayMesh?this.delaunayMesh.update(W):(W.gl=L,this.delaunayMesh=M(W),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)},p.dispose=function(){this.linePlot&&(this.scene.glplot.remove(this.linePlot),this.linePlot.dispose()),this.scatterPlot&&(this.scene.glplot.remove(this.scatterPlot),this.scatterPlot.dispose()),this.errorBars&&(this.scene.glplot.remove(this.errorBars),this.errorBars.dispose()),this.textMarkers&&(this.scene.glplot.remove(this.textMarkers),this.textMarkers.dispose()),this.delaunayMesh&&(this.scene.glplot.remove(this.delaunayMesh),this.delaunayMesh.dispose())};function f(P,L){var z=new v(P,L.uid);return z.update(L),z}H.exports=f}}),m5=Ye({"src/traces/scatter3d/attributes.js"(X,H){"use strict";var g=Pc(),x=Au(),A=tu(),M=Cc().axisHoverFormat,e=xs().hovertemplateAttrs,t=xs().texttemplateAttrs,r=Pl(),o=v5(),a=Q3(),i=Oo().extendFlat,n=Ou().overrideAll,s=Km(),c=g.line,h=g.marker,v=h.line,p=i({width:c.width,dash:{valType:"enumerated",values:s(o),dflt:"solid"}},A("line"));function T(_){return{show:{valType:"boolean",dflt:!1},opacity:{valType:"number",min:0,max:1,dflt:1},scale:{valType:"number",min:0,max:10,dflt:2/3}}}var l=H.exports=n({x:g.x,y:g.y,z:{valType:"data_array"},text:i({},g.text,{}),texttemplate:t({},{}),hovertext:i({},g.hovertext,{}),hovertemplate:e(),xhoverformat:M("x"),yhoverformat:M("y"),zhoverformat:M("z"),mode:i({},g.mode,{dflt:"lines+markers"}),surfaceaxis:{valType:"enumerated",values:[-1,0,1,2],dflt:-1},surfacecolor:{valType:"color"},projection:{x:T("x"),y:T("y"),z:T("z")},connectgaps:g.connectgaps,line:p,marker:i({symbol:{valType:"enumerated",values:s(a),dflt:"circle",arrayOk:!0},size:i({},h.size,{dflt:8}),sizeref:h.sizeref,sizemin:h.sizemin,sizemode:h.sizemode,opacity:i({},h.opacity,{arrayOk:!1}),colorbar:h.colorbar,line:i({width:i({},v.width,{arrayOk:!1})},A("marker.line"))},A("marker")),textposition:i({},g.textposition,{dflt:"top center"}),textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,variantValues:["normal","small-caps"]}),opacity:r.opacity,hoverinfo:i({},r.hoverinfo)},"calc","nested");l.x.editType=l.y.editType=l.z.editType="calc+clearAxisTypes"}}),PN=Ye({"src/traces/scatter3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=uu(),M=md(),e=Dd(),t=zd(),r=m5();H.exports=function(i,n,s,c){function h(E,m){return x.coerce(i,n,r,E,m)}var v=o(i,n,h,c);if(!v){n.visible=!1;return}h("text"),h("hovertext"),h("hovertemplate"),h("xhoverformat"),h("yhoverformat"),h("zhoverformat"),h("mode"),A.hasMarkers(n)&&M(i,n,s,c,h,{noSelect:!0,noAngle:!0}),A.hasLines(n)&&(h("connectgaps"),e(i,n,s,c,h)),A.hasText(n)&&(h("texttemplate"),t(i,n,c,h,{noSelect:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var p=(n.line||{}).color,T=(n.marker||{}).color;h("surfaceaxis")>=0&&h("surfacecolor",p||T);for(var l=["x","y","z"],_=0;_<3;++_){var w="projection."+l[_];h(w+".show")&&(h(w+".opacity"),h(w+".scale"))}var S=g.getComponentMethod("errorbars","supplyDefaults");S(i,n,p||T||s,{axis:"z"}),S(i,n,p||T||s,{axis:"y",inherit:"z"}),S(i,n,p||T||s,{axis:"x",inherit:"z"})};function o(a,i,n,s){var c=0,h=n("x"),v=n("y"),p=n("z"),T=g.getComponentMethod("calendars","handleTraceDefaults");return T(a,i,["x","y","z"],s),h&&v&&p&&(c=Math.min(h.length,v.length,p.length),i._length=i._xlength=i._ylength=i._zlength=c),c}}}),IN=Ye({"src/traces/scatter3d/calc.js"(X,H){"use strict";var g=Av(),x=Fd();H.exports=function(M,e){var t=[{x:!1,y:!1,trace:e,t:{}}];return g(t,e),x(M,e),t}}}),RN=Ye({"node_modules/get-canvas-context/index.js"(X,H){H.exports=g;function g(x,A){if(typeof x!="string")throw new TypeError("must specify type string");if(A=A||{},typeof document>"u"&&!A.canvas)return null;var M=A.canvas||document.createElement("canvas");typeof A.width=="number"&&(M.width=A.width),typeof A.height=="number"&&(M.height=A.height);var e=A,t;try{var r=[x];x.indexOf("webgl")===0&&r.push("experimental-"+x);for(var o=0;o<r.length;o++)if(t=M.getContext(r[o],e),t)return t}catch{t=null}return t||null}}}),DN=Ye({"node_modules/webgl-context/index.js"(X,H){var g=RN();H.exports=function(A){return g("webgl",A)}}}),g5=Ye({"src/lib/show_no_webgl_msg.js"(X,H){"use strict";var g=Fn(),x=function(){};H.exports=function(M){for(var e in M)typeof M[e]=="function"&&(M[e]=x);M.destroy=function(){M.container.parentNode.removeChild(M.container)};var t=document.createElement("div");t.className="no-webgl",t.style.cursor="pointer",t.style.fontSize="24px",t.style.color=g.defaults[0],t.style.position="absolute",t.style.left=t.style.top="0px",t.style.width=t.style.height="100%",t.style["background-color"]=g.lightLine,t.style["z-index"]=30;var r=document.createElement("p");return r.textContent="WebGL is not supported by your browser - visit https://get.webgl.org for more info",r.style.position="relative",r.style.top="50%",r.style.left="50%",r.style.height="30%",r.style.width="50%",r.style.margin="-15% 0 0 -25%",t.appendChild(r),M.container.appendChild(t),M.container.style.background="#FFFFFF",M.container.onclick=function(){window.open("https://get.webgl.org")},!1}}}),zN=Ye({"src/plots/gl3d/layout/convert.js"(X,H){"use strict";var g=Qv(),x=ta(),A=["xaxis","yaxis","zaxis"];function M(){this.bounds=[[-10,-10,-10],[10,10,10]],this.ticks=[[],[],[]],this.tickEnable=[!0,!0,!0],this.tickFont=["sans-serif","sans-serif","sans-serif"],this.tickSize=[12,12,12],this.tickFontWeight=["normal","normal","normal","normal"],this.tickFontStyle=["normal","normal","normal","normal"],this.tickFontVariant=["normal","normal","normal","normal"],this.tickAngle=[0,0,0],this.tickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.tickPad=[18,18,18],this.labels=["x","y","z"],this.labelEnable=[!0,!0,!0],this.labelFont=["Open Sans","Open Sans","Open Sans"],this.labelSize=[20,20,20],this.labelFontWeight=["normal","normal","normal","normal"],this.labelFontStyle=["normal","normal","normal","normal"],this.labelFontVariant=["normal","normal","normal","normal"],this.labelColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.labelPad=[30,30,30],this.lineEnable=[!0,!0,!0],this.lineMirror=[!1,!1,!1],this.lineWidth=[1,1,1],this.lineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.lineTickEnable=[!0,!0,!0],this.lineTickMirror=[!1,!1,!1],this.lineTickLength=[10,10,10],this.lineTickWidth=[1,1,1],this.lineTickColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.gridEnable=[!0,!0,!0],this.gridWidth=[1,1,1],this.gridColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroEnable=[!0,!0,!0],this.zeroLineColor=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.zeroLineWidth=[2,2,2],this.backgroundEnable=[!0,!0,!0],this.backgroundColor=[[.8,.8,.8,.5],[.8,.8,.8,.5],[.8,.8,.8,.5]],this._defaultTickPad=this.tickPad.slice(),this._defaultLabelPad=this.labelPad.slice(),this._defaultLineTickLength=this.lineTickLength.slice()}var e=M.prototype;e.merge=function(r,o){for(var a=this,i=0;i<3;++i){var n=o[A[i]];if(!n.visible){a.tickEnable[i]=!1,a.labelEnable[i]=!1,a.lineEnable[i]=!1,a.lineTickEnable[i]=!1,a.gridEnable[i]=!1,a.zeroEnable[i]=!1,a.backgroundEnable[i]=!1;continue}a.labels[i]=r._meta?x.templateString(n.title.text,r._meta):n.title.text,"font"in n.title&&(n.title.font.color&&(a.labelColor[i]=g(n.title.font.color)),n.title.font.family&&(a.labelFont[i]=n.title.font.family),n.title.font.size&&(a.labelSize[i]=n.title.font.size),n.title.font.weight&&(a.labelFontWeight[i]=n.title.font.weight),n.title.font.style&&(a.labelFontStyle[i]=n.title.font.style),n.title.font.variant&&(a.labelFontVariant[i]=n.title.font.variant)),"showline"in n&&(a.lineEnable[i]=n.showline),"linecolor"in n&&(a.lineColor[i]=g(n.linecolor)),"linewidth"in n&&(a.lineWidth[i]=n.linewidth),"showgrid"in n&&(a.gridEnable[i]=n.showgrid),"gridcolor"in n&&(a.gridColor[i]=g(n.gridcolor)),"gridwidth"in n&&(a.gridWidth[i]=n.gridwidth),n.type==="log"?a.zeroEnable[i]=!1:"zeroline"in n&&(a.zeroEnable[i]=n.zeroline),"zerolinecolor"in n&&(a.zeroLineColor[i]=g(n.zerolinecolor)),"zerolinewidth"in n&&(a.zeroLineWidth[i]=n.zerolinewidth),"ticks"in n&&n.ticks?a.lineTickEnable[i]=!0:a.lineTickEnable[i]=!1,"ticklen"in n&&(a.lineTickLength[i]=a._defaultLineTickLength[i]=n.ticklen),"tickcolor"in n&&(a.lineTickColor[i]=g(n.tickcolor)),"tickwidth"in n&&(a.lineTickWidth[i]=n.tickwidth),"tickangle"in n&&(a.tickAngle[i]=n.tickangle==="auto"?-3600:Math.PI*-n.tickangle/180),"showticklabels"in n&&(a.tickEnable[i]=n.showticklabels),"tickfont"in n&&(n.tickfont.color&&(a.tickColor[i]=g(n.tickfont.color)),n.tickfont.family&&(a.tickFont[i]=n.tickfont.family),n.tickfont.size&&(a.tickSize[i]=n.tickfont.size),n.tickfont.weight&&(a.tickFontWeight[i]=n.tickfont.weight),n.tickfont.style&&(a.tickFontStyle[i]=n.tickfont.style),n.tickfont.variant&&(a.tickFontVariant[i]=n.tickfont.variant)),"mirror"in n?["ticks","all","allticks"].indexOf(n.mirror)!==-1?(a.lineTickMirror[i]=!0,a.lineMirror[i]=!0):n.mirror===!0?(a.lineTickMirror[i]=!1,a.lineMirror[i]=!0):(a.lineTickMirror[i]=!1,a.lineMirror[i]=!1):a.lineMirror[i]=!1,"showbackground"in n&&n.showbackground!==!1?(a.backgroundEnable[i]=!0,a.backgroundColor[i]=g(n.backgroundcolor)):a.backgroundEnable[i]=!1}};function t(r,o){var a=new M;return a.merge(r,o),a}H.exports=t}}),FN=Ye({"src/plots/gl3d/layout/spikes.js"(X,H){"use strict";var g=Qv(),x=["xaxis","yaxis","zaxis"];function A(){this.enabled=[!0,!0,!0],this.colors=[[0,0,0,1],[0,0,0,1],[0,0,0,1]],this.drawSides=[!0,!0,!0],this.lineWidth=[1,1,1]}var M=A.prototype;M.merge=function(t){for(var r=0;r<3;++r){var o=t[x[r]];if(!o.visible){this.enabled[r]=!1,this.drawSides[r]=!1;continue}this.enabled[r]=o.showspikes,this.colors[r]=g(o.spikecolor),this.drawSides[r]=o.spikesides,this.lineWidth[r]=o.spikethickness}};function e(t){var r=new A;return r.merge(t),r}H.exports=e}}),ON=Ye({"src/plots/gl3d/layout/tick_marks.js"(X,H){"use strict";H.exports=t;var g=Co(),x=ta(),A=["xaxis","yaxis","zaxis"],M=[0,0,0];function e(r){for(var o=new Array(3),a=0;a<3;++a){for(var i=r[a],n=new Array(i.length),s=0;s<i.length;++s)n[s]=i[s].x;o[a]=n}return o}function t(r){for(var o=r.axesOptions,a=r.glplot.axesPixels,i=r.fullSceneLayout,n=[[],[],[]],s=0;s<3;++s){var c=i[A[s]];if(c._length=(a[s].hi-a[s].lo)*a[s].pixelsPerDataUnit/r.dataScale[s],Math.abs(c._length)===1/0||isNaN(c._length))n[s]=[];else{c._input_range=c.range.slice(),c.range[0]=a[s].lo/r.dataScale[s],c.range[1]=a[s].hi/r.dataScale[s],c._m=1/(r.dataScale[s]*a[s].pixelsPerDataUnit),c.range[0]===c.range[1]&&(c.range[0]-=1,c.range[1]+=1);var h=c.tickmode;if(c.tickmode==="auto"){c.tickmode="linear";var v=c.nticks||x.constrain(c._length/40,4,9);g.autoTicks(c,Math.abs(c.range[1]-c.range[0])/v)}for(var p=g.calcTicks(c,{msUTC:!0}),T=0;T<p.length;++T)p[T].x=p[T].x*r.dataScale[s],c.type==="date"&&(p[T].text=p[T].text.replace(/\<br\>/g," "));n[s]=p,c.tickmode=h}}o.ticks=n;for(var s=0;s<3;++s){M[s]=.5*(r.glplot.bounds[0][s]+r.glplot.bounds[1][s]);for(var T=0;T<2;++T)o.bounds[T][s]=r.glplot.bounds[T][s]}r.contourLevels=e(n)}}}),BN=Ye({"src/plots/gl3d/scene.js"(X,H){"use strict";var g=Gh().gl_plot3d,x=g.createCamera,A=g.createScene,M=DN(),e=_2(),t=Hn(),r=ta(),o=r.preserveDrawingBuffer(),a=Co(),i=Lc(),n=Qv(),s=g5(),c=BS(),h=zN(),v=FN(),p=ON(),T=Yd().applyAutorangeOptions,l,_,w=!1;function S(z,F){var B=document.createElement("div"),O=z.container;this.graphDiv=z.graphDiv;var I=document.createElementNS("http://www.w3.org/2000/svg","svg");I.style.position="absolute",I.style.top=I.style.left="0px",I.style.width=I.style.height="100%",I.style["z-index"]=20,I.style["pointer-events"]="none",B.appendChild(I),this.svgContainer=I,B.id=z.id,B.style.position="absolute",B.style.top=B.style.left="0px",B.style.width=B.style.height="100%",O.appendChild(B),this.fullLayout=F,this.id=z.id||"scene",this.fullSceneLayout=F[this.id],this.plotArgs=[[],{},{}],this.axesOptions=h(F,F[this.id]),this.spikeOptions=v(F[this.id]),this.container=B,this.staticMode=!!z.staticPlot,this.pixelRatio=this.pixelRatio||z.plotGlPixelRatio||2,this.dataScale=[1,1,1],this.contourLevels=[[],[],[]],this.convertAnnotations=t.getComponentMethod("annotations3d","convert"),this.drawAnnotations=t.getComponentMethod("annotations3d","draw"),this.initializeGLPlot()}var E=S.prototype;E.prepareOptions=function(){var z=this,F={canvas:z.canvas,gl:z.gl,glOptions:{preserveDrawingBuffer:o,premultipliedAlpha:!0,antialias:!0},container:z.container,axes:z.axesOptions,spikes:z.spikeOptions,pickRadius:10,snapToData:!0,autoScale:!0,autoBounds:!1,cameraObject:z.camera,pixelRatio:z.pixelRatio};if(z.staticMode){if(!_&&(l=document.createElement("canvas"),_=M({canvas:l,preserveDrawingBuffer:!0,premultipliedAlpha:!0,antialias:!0}),!_))throw new Error("error creating static canvas/context for image server");F.gl=_,F.canvas=l}return F};var m=!0;E.tryCreatePlot=function(){var z=this,F=z.prepareOptions(),B=!0;try{z.glplot=A(F)}catch{if(z.staticMode||!m||o)B=!1;else{r.warn(["webgl setup failed possibly due to","false preserveDrawingBuffer config.","The mobile/tablet device may not be detected by is-mobile module.","Enabling preserveDrawingBuffer in second attempt to create webgl scene..."].join(" "));try{o=F.glOptions.preserveDrawingBuffer=!0,z.glplot=A(F)}catch{o=F.glOptions.preserveDrawingBuffer=!1,B=!1}}}return m=!1,B},E.initializeGLCamera=function(){var z=this,F=z.fullSceneLayout.camera,B=F.projection.type==="orthographic";z.camera=x(z.container,{center:[F.center.x,F.center.y,F.center.z],eye:[F.eye.x,F.eye.y,F.eye.z],up:[F.up.x,F.up.y,F.up.z],_ortho:B,zoomMin:.01,zoomMax:100,mode:"orbit"})},E.initializeGLPlot=function(){var z=this;z.initializeGLCamera();var F=z.tryCreatePlot();if(!F)return s(z);z.traces={},z.make4thDimension();var B=z.graphDiv,O=B.layout,I=function(){var U={};return z.isCameraChanged(O)&&(U[z.id+".camera"]=z.getCamera()),z.isAspectChanged(O)&&(U[z.id+".aspectratio"]=z.glplot.getAspectratio(),O[z.id].aspectmode!=="manual"&&(z.fullSceneLayout.aspectmode=O[z.id].aspectmode=U[z.id+".aspectmode"]="manual")),U},N=function(U){if(U.fullSceneLayout.dragmode!==!1){var W=I();U.saveLayout(O),U.graphDiv.emit("plotly_relayout",W)}};return z.glplot.canvas&&(z.glplot.canvas.addEventListener("mouseup",function(){N(z)}),z.glplot.canvas.addEventListener("touchstart",function(){w=!0}),z.glplot.canvas.addEventListener("wheel",function(U){if(B._context._scrollZoom.gl3d){if(z.camera._ortho){var W=U.deltaX>U.deltaY?1.1:.9090909090909091,Q=z.glplot.getAspectratio();z.glplot.setAspectratio({x:W*Q.x,y:W*Q.y,z:W*Q.z})}N(z)}},e?{passive:!1}:!1),z.glplot.canvas.addEventListener("mousemove",function(){if(z.fullSceneLayout.dragmode!==!1&&z.camera.mouseListener.buttons!==0){var U=I();z.graphDiv.emit("plotly_relayouting",U)}}),z.staticMode||z.glplot.canvas.addEventListener("webglcontextlost",function(U){B&&B.emit&&B.emit("plotly_webglcontextlost",{event:U,layer:z.id})},!1)),z.glplot.oncontextloss=function(){z.recoverContext()},z.glplot.onrender=function(){z.render()},!0},E.render=function(){var z=this,F=z.graphDiv,B,O=z.svgContainer,I=z.container.getBoundingClientRect();F._fullLayout._calcInverseTransform(F);var N=F._fullLayout._invScaleX,U=F._fullLayout._invScaleY,W=I.width*N,Q=I.height*U;O.setAttributeNS(null,"viewBox","0 0 "+W+" "+Q),O.setAttributeNS(null,"width",W),O.setAttributeNS(null,"height",Q),p(z),z.glplot.axes.update(z.axesOptions);for(var ue=Object.keys(z.traces),se=null,he=z.glplot.selection,G=0;G<ue.length;++G)B=z.traces[ue[G]],B.data.hoverinfo!=="skip"&&B.handlePick(he)&&(se=B),B.setContourLevels&&B.setContourLevels();function $(Ze,at,it){var et=z.fullSceneLayout[Ze+"axis"];return et.type!=="log"&&(at=et.d2l(at)),a.hoverLabelText(et,at,it)}if(se!==null){var J=c(z.glplot.cameraParams,he.dataCoordinate);B=se.data;var Z=F._fullData[B.index],re=he.index,ne={xLabel:$("x",he.traceCoordinate[0],B.xhoverformat),yLabel:$("y",he.traceCoordinate[1],B.yhoverformat),zLabel:$("z",he.traceCoordinate[2],B.zhoverformat)},j=i.castHoverinfo(Z,z.fullLayout,re),ee=(j||"").split("+"),ie=j&&j==="all";!Z.hovertemplate&&!ie&&(ee.indexOf("x")===-1&&(ne.xLabel=void 0),ee.indexOf("y")===-1&&(ne.yLabel=void 0),ee.indexOf("z")===-1&&(ne.zLabel=void 0),ee.indexOf("text")===-1&&(he.textLabel=void 0),ee.indexOf("name")===-1&&(se.name=void 0));var fe,be=[];B.type==="cone"||B.type==="streamtube"?(ne.uLabel=$("x",he.traceCoordinate[3],B.uhoverformat),(ie||ee.indexOf("u")!==-1)&&be.push("u: "+ne.uLabel),ne.vLabel=$("y",he.traceCoordinate[4],B.vhoverformat),(ie||ee.indexOf("v")!==-1)&&be.push("v: "+ne.vLabel),ne.wLabel=$("z",he.traceCoordinate[5],B.whoverformat),(ie||ee.indexOf("w")!==-1)&&be.push("w: "+ne.wLabel),ne.normLabel=he.traceCoordinate[6].toPrecision(3),(ie||ee.indexOf("norm")!==-1)&&be.push("norm: "+ne.normLabel),B.type==="streamtube"&&(ne.divergenceLabel=he.traceCoordinate[7].toPrecision(3),(ie||ee.indexOf("divergence")!==-1)&&be.push("divergence: "+ne.divergenceLabel)),he.textLabel&&be.push(he.textLabel),fe=be.join("<br>")):B.type==="isosurface"||B.type==="volume"?(ne.valueLabel=a.hoverLabelText(z._mockAxis,z._mockAxis.d2l(he.traceCoordinate[3]),B.valuehoverformat),be.push("value: "+ne.valueLabel),he.textLabel&&be.push(he.textLabel),fe=be.join("<br>")):fe=he.textLabel;var Ae={x:he.traceCoordinate[0],y:he.traceCoordinate[1],z:he.traceCoordinate[2],data:Z._input,fullData:Z,curveNumber:Z.index,pointNumber:re};i.appendArrayPointValue(Ae,Z,re),B._module.eventData&&(Ae=Z._module.eventData(Ae,he,Z,{},re));var Be={points:[Ae]};if(z.fullSceneLayout.hovermode){var Ie=[];i.loneHover({trace:Z,x:(.5+.5*J[0]/J[3])*W,y:(.5-.5*J[1]/J[3])*Q,xLabel:ne.xLabel,yLabel:ne.yLabel,zLabel:ne.zLabel,text:fe,name:se.name,color:i.castHoverOption(Z,re,"bgcolor")||se.color,borderColor:i.castHoverOption(Z,re,"bordercolor"),fontFamily:i.castHoverOption(Z,re,"font.family"),fontSize:i.castHoverOption(Z,re,"font.size"),fontColor:i.castHoverOption(Z,re,"font.color"),nameLength:i.castHoverOption(Z,re,"namelength"),textAlign:i.castHoverOption(Z,re,"align"),hovertemplate:r.castOption(Z,re,"hovertemplate"),hovertemplateLabels:r.extendFlat({},Ae,ne),eventData:[Ae]},{container:O,gd:F,inOut_bbox:Ie}),Ae.bbox=Ie[0]}he.distance<5&&(he.buttons||w)?F.emit("plotly_click",Be):F.emit("plotly_hover",Be),this.oldEventData=Be}else i.loneUnhover(O),this.oldEventData&&F.emit("plotly_unhover",this.oldEventData),this.oldEventData=void 0;z.drawAnnotations(z)},E.recoverContext=function(){var z=this;z.glplot.dispose();var F=function(){if(z.glplot.gl.isContextLost()){requestAnimationFrame(F);return}if(!z.initializeGLPlot()){r.error("Catastrophic and unrecoverable WebGL error. Context lost.");return}z.plot.apply(z,z.plotArgs)};requestAnimationFrame(F)};var b=["xaxis","yaxis","zaxis"];function d(z,F,B){for(var O=z.fullSceneLayout,I=0;I<3;I++){var N=b[I],U=N.charAt(0),W=O[N],Q=F[U],ue=F[U+"calendar"],se=F["_"+U+"length"];if(!r.isArrayOrTypedArray(Q))B[0][I]=Math.min(B[0][I],0),B[1][I]=Math.max(B[1][I],se-1);else for(var he,G=0;G<(se||Q.length);G++)if(r.isArrayOrTypedArray(Q[G]))for(var $=0;$<Q[G].length;++$)he=W.d2l(Q[G][$],0,ue),!isNaN(he)&&isFinite(he)&&(B[0][I]=Math.min(B[0][I],he),B[1][I]=Math.max(B[1][I],he));else he=W.d2l(Q[G],0,ue),!isNaN(he)&&isFinite(he)&&(B[0][I]=Math.min(B[0][I],he),B[1][I]=Math.max(B[1][I],he))}}function u(z,F){for(var B=z.fullSceneLayout,O=B.annotations||[],I=0;I<3;I++)for(var N=b[I],U=N.charAt(0),W=B[N],Q=0;Q<O.length;Q++){var ue=O[Q];if(ue.visible){var se=W.r2l(ue[U]);!isNaN(se)&&isFinite(se)&&(F[0][I]=Math.min(F[0][I],se),F[1][I]=Math.max(F[1][I],se))}}}E.plot=function(z,F,B){var O=this;if(O.plotArgs=[z,F,B],!O.glplot.contextLost){var I,N,U,W,Q,ue,se=F[O.id],he=B[O.id];O.fullLayout=F,O.fullSceneLayout=se,O.axesOptions.merge(F,se),O.spikeOptions.merge(se),O.setViewport(se),O.updateFx(se.dragmode,se.hovermode),O.camera.enableWheel=O.graphDiv._context._scrollZoom.gl3d,O.glplot.setClearColor(n(se.bgcolor)),O.setConvert(Q),z?Array.isArray(z)||(z=[z]):z=[];var G=[[1/0,1/0,1/0],[-1/0,-1/0,-1/0]];for(U=0;U<z.length;++U)I=z[U],!(I.visible!==!0||I._length===0)&&d(this,I,G);u(this,G);var $=[1,1,1];for(W=0;W<3;++W)G[1][W]===G[0][W]?$[W]=1:$[W]=1/(G[1][W]-G[0][W]);for(O.dataScale=$,O.convertAnnotations(this),U=0;U<z.length;++U)I=z[U],!(I.visible!==!0||I._length===0)&&(N=O.traces[I.uid],N?N.data.type===I.type?N.update(I):(N.dispose(),N=I._module.plot(this,I),O.traces[I.uid]=N):(N=I._module.plot(this,I),O.traces[I.uid]=N),N.name=I.name);var J=Object.keys(O.traces);e:for(U=0;U<J.length;++U){for(W=0;W<z.length;++W)if(z[W].uid===J[U]&&z[W].visible===!0&&z[W]._length!==0)continue e;N=O.traces[J[U]],N.dispose(),delete O.traces[J[U]]}O.glplot.objects.sort(function(Qe,Ct){return Qe._trace.data.index-Ct._trace.data.index});var Z=[[0,0,0],[0,0,0]],re=[],ne={};for(U=0;U<3;++U){Q=se[b[U]],ue=Q.type,ue in ne?(ne[ue].acc*=$[U],ne[ue].count+=1):ne[ue]={acc:$[U],count:1};var j;if(Q.autorange){Z[0][U]=1/0,Z[1][U]=-1/0;var ee=O.glplot.objects,ie=O.fullSceneLayout.annotations||[],fe=Q._name.charAt(0);for(W=0;W<ee.length;W++){var be=ee[W],Ae=be.bounds,Be=be._trace.data._pad||0;be.constructor.name==="ErrorBars"&&Q._lowerLogErrorBound?Z[0][U]=Math.min(Z[0][U],Q._lowerLogErrorBound):Z[0][U]=Math.min(Z[0][U],Ae[0][U]/$[U]-Be),Z[1][U]=Math.max(Z[1][U],Ae[1][U]/$[U]+Be)}for(W=0;W<ie.length;W++){var Ie=ie[W];if(Ie.visible){var Ze=Q.r2l(Ie[fe]);Z[0][U]=Math.min(Z[0][U],Ze),Z[1][U]=Math.max(Z[1][U],Ze)}}if("rangemode"in Q&&Q.rangemode==="tozero"&&(Z[0][U]=Math.min(Z[0][U],0),Z[1][U]=Math.max(Z[1][U],0)),Z[0][U]>Z[1][U])Z[0][U]=-1,Z[1][U]=1;else{var at=Z[1][U]-Z[0][U];Z[0][U]-=at/32,Z[1][U]+=at/32}if(j=[Z[0][U],Z[1][U]],j=T(j,Q),Z[0][U]=j[0],Z[1][U]=j[1],Q.isReversed()){var it=Z[0][U];Z[0][U]=Z[1][U],Z[1][U]=it}}else j=Q.range,Z[0][U]=Q.r2l(j[0]),Z[1][U]=Q.r2l(j[1]);Z[0][U]===Z[1][U]&&(Z[0][U]-=1,Z[1][U]+=1),re[U]=Z[1][U]-Z[0][U],Q.range=[Z[0][U],Z[1][U]],Q.limitRange(),O.glplot.setBounds(U,{min:Q.range[0]*$[U],max:Q.range[1]*$[U]})}var et,lt=se.aspectmode;if(lt==="cube")et=[1,1,1];else if(lt==="manual"){var Me=se.aspectratio;et=[Me.x,Me.y,Me.z]}else if(lt==="auto"||lt==="data"){var ge=[1,1,1];for(U=0;U<3;++U){Q=se[b[U]],ue=Q.type;var ce=ne[ue];ge[U]=Math.pow(ce.acc,1/ce.count)/$[U]}lt==="data"||Math.max.apply(null,ge)/Math.min.apply(null,ge)<=4?et=ge:et=[1,1,1]}else throw new Error("scene.js aspectRatio was not one of the enumerated types");se.aspectratio.x=he.aspectratio.x=et[0],se.aspectratio.y=he.aspectratio.y=et[1],se.aspectratio.z=he.aspectratio.z=et[2],O.glplot.setAspectratio(se.aspectratio),O.viewInitial.aspectratio||(O.viewInitial.aspectratio={x:se.aspectratio.x,y:se.aspectratio.y,z:se.aspectratio.z}),O.viewInitial.aspectmode||(O.viewInitial.aspectmode=se.aspectmode);var ze=se.domain||null,tt=F._size||null;if(ze&&tt){var nt=O.container.style;nt.position="absolute",nt.left=tt.l+ze.x[0]*tt.w+"px",nt.top=tt.t+(1-ze.y[1])*tt.h+"px",nt.width=tt.w*(ze.x[1]-ze.x[0])+"px",nt.height=tt.h*(ze.y[1]-ze.y[0])+"px"}O.glplot.redraw()}},E.destroy=function(){var z=this;z.glplot&&(z.camera.mouseListener.enabled=!1,z.container.removeEventListener("wheel",z.camera.wheelListener),z.camera=null,z.glplot.dispose(),z.container.parentNode.removeChild(z.container),z.glplot=null)};function y(z){return[[z.eye.x,z.eye.y,z.eye.z],[z.center.x,z.center.y,z.center.z],[z.up.x,z.up.y,z.up.z]]}function f(z){return{up:{x:z.up[0],y:z.up[1],z:z.up[2]},center:{x:z.center[0],y:z.center[1],z:z.center[2]},eye:{x:z.eye[0],y:z.eye[1],z:z.eye[2]},projection:{type:z._ortho===!0?"orthographic":"perspective"}}}E.getCamera=function(){var z=this;return z.camera.view.recalcMatrix(z.camera.view.lastT()),f(z.camera)},E.setViewport=function(z){var F=this,B=z.camera;F.camera.lookAt.apply(this,y(B)),F.glplot.setAspectratio(z.aspectratio);var O=B.projection.type==="orthographic",I=F.camera._ortho;O!==I&&(F.glplot.redraw(),F.glplot.clearRGBA(),F.glplot.dispose(),F.initializeGLPlot())},E.isCameraChanged=function(z){var F=this,B=F.getCamera(),O=r.nestedProperty(z,F.id+".camera"),I=O.get();function N(ue,se,he,G){var $=["up","center","eye"],J=["x","y","z"];return se[$[he]]&&ue[$[he]][J[G]]===se[$[he]][J[G]]}var U=!1;if(I===void 0)U=!0;else{for(var W=0;W<3;W++)for(var Q=0;Q<3;Q++)if(!N(B,I,W,Q)){U=!0;break}(!I.projection||B.projection&&B.projection.type!==I.projection.type)&&(U=!0)}return U},E.isAspectChanged=function(z){var F=this,B=F.glplot.getAspectratio(),O=r.nestedProperty(z,F.id+".aspectratio"),I=O.get();return I===void 0||I.x!==B.x||I.y!==B.y||I.z!==B.z},E.saveLayout=function(z){var F=this,B=F.fullLayout,O,I,N,U,W,Q,ue=F.isCameraChanged(z),se=F.isAspectChanged(z),he=ue||se;if(he){var G={};if(ue&&(O=F.getCamera(),I=r.nestedProperty(z,F.id+".camera"),N=I.get(),G[F.id+".camera"]=N),se&&(U=F.glplot.getAspectratio(),W=r.nestedProperty(z,F.id+".aspectratio"),Q=W.get(),G[F.id+".aspectratio"]=Q),t.call("_storeDirectGUIEdit",z,B._preGUI,G),ue){I.set(O);var $=r.nestedProperty(B,F.id+".camera");$.set(O)}if(se){W.set(U);var J=r.nestedProperty(B,F.id+".aspectratio");J.set(U),F.glplot.redraw()}}return he},E.updateFx=function(z,F){var B=this,O=B.camera;if(O)if(z==="orbit")O.mode="orbit",O.keyBindingMode="rotate";else if(z==="turntable"){O.up=[0,0,1],O.mode="turntable",O.keyBindingMode="rotate";var I=B.graphDiv,N=I._fullLayout,U=B.fullSceneLayout.camera,W=U.up.x,Q=U.up.y,ue=U.up.z;if(ue/Math.sqrt(W*W+Q*Q+ue*ue)<.999){var se=B.id+".camera.up",he={x:0,y:0,z:1},G={};G[se]=he;var $=I.layout;t.call("_storeDirectGUIEdit",$,N._preGUI,G),U.up=he,r.nestedProperty($,se).set(he)}}else O.keyBindingMode=z;B.fullSceneLayout.hovermode=F};function P(z,F,B){for(var O=0,I=B-1;O<I;++O,--I)for(var N=0;N<F;++N)for(var U=0;U<4;++U){var W=4*(F*O+N)+U,Q=4*(F*I+N)+U,ue=z[W];z[W]=z[Q],z[Q]=ue}}function L(z,F,B){for(var O=0;O<B;++O)for(var I=0;I<F;++I){var N=4*(F*O+I),U=z[N+3];if(U>0)for(var W=255/U,Q=0;Q<3;++Q)z[N+Q]=Math.min(W*z[N+Q],255)}}E.toImage=function(z){var F=this;z||(z="png"),F.staticMode&&F.container.appendChild(l),F.glplot.redraw();var B=F.glplot.gl,O=B.drawingBufferWidth,I=B.drawingBufferHeight;B.bindFramebuffer(B.FRAMEBUFFER,null);var N=new Uint8Array(O*I*4);B.readPixels(0,0,O,I,B.RGBA,B.UNSIGNED_BYTE,N),P(N,O,I),L(N,O,I);var U=document.createElement("canvas");U.width=O,U.height=I;var W=U.getContext("2d",{willReadFrequently:!0}),Q=W.createImageData(O,I);Q.data.set(N),W.putImageData(Q,0,0);var ue;switch(z){case"jpeg":ue=U.toDataURL("image/jpeg");break;case"webp":ue=U.toDataURL("image/webp");break;default:ue=U.toDataURL("image/png")}return F.staticMode&&F.container.removeChild(l),ue},E.setConvert=function(){for(var z=this,F=0;F<3;F++){var B=z.fullSceneLayout[b[F]];a.setConvert(B,z.fullLayout),B.setScale=r.noop}},E.make4thDimension=function(){var z=this,F=z.graphDiv,B=F._fullLayout;z._mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},a.setConvert(z._mockAxis,B)},H.exports=S}}),NN=Ye({"src/plots/gl3d/layout/attributes.js"(X,H){"use strict";H.exports={scene:{valType:"subplotid",dflt:"scene",editType:"calc+clearAxisTypes"}}}}),y5=Ye({"src/plots/gl3d/layout/axis_attributes.js"(X,H){"use strict";var g=Fn(),x=Vh(),A=Oo().extendFlat,M=Ou().overrideAll;H.exports=M({visible:x.visible,showspikes:{valType:"boolean",dflt:!0},spikesides:{valType:"boolean",dflt:!0},spikethickness:{valType:"number",min:0,dflt:2},spikecolor:{valType:"color",dflt:g.defaultLine},showbackground:{valType:"boolean",dflt:!1},backgroundcolor:{valType:"color",dflt:"rgba(204, 204, 204, 0.5)"},showaxeslabels:{valType:"boolean",dflt:!0},color:x.color,categoryorder:x.categoryorder,categoryarray:x.categoryarray,title:{text:x.title.text,font:x.title.font},type:A({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorange:x.autorange,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},rangemode:x.rangemode,minallowed:x.minallowed,maxallowed:x.maxallowed,range:A({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],anim:!1}),tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,mirror:x.mirror,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,tickfont:x.tickfont,tickangle:x.tickangle,tickprefix:x.tickprefix,showtickprefix:x.showtickprefix,ticksuffix:x.ticksuffix,showticksuffix:x.showticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickformat:x.tickformat,tickformatstops:x.tickformatstops,hoverformat:x.hoverformat,showline:x.showline,linecolor:x.linecolor,linewidth:x.linewidth,showgrid:x.showgrid,gridcolor:A({},x.gridcolor,{dflt:"rgb(204, 204, 204)"}),gridwidth:x.gridwidth,zeroline:x.zeroline,zerolinecolor:x.zerolinecolor,zerolinewidth:x.zerolinewidth},"plot","from-root")}}),_5=Ye({"src/plots/gl3d/layout/layout_attributes.js"(X,H){"use strict";var g=y5(),x=Wu().attributes,A=Oo().extendFlat,M=ta().counterRegex;function e(t,r,o){return{x:{valType:"number",dflt:t,editType:"camera"},y:{valType:"number",dflt:r,editType:"camera"},z:{valType:"number",dflt:o,editType:"camera"},editType:"camera"}}H.exports={_arrayAttrRegexps:[M("scene",".annotations",!0)],bgcolor:{valType:"color",dflt:"rgba(0,0,0,0)",editType:"plot"},camera:{up:A(e(0,0,1),{}),center:A(e(0,0,0),{}),eye:A(e(1.25,1.25,1.25),{}),projection:{type:{valType:"enumerated",values:["perspective","orthographic"],dflt:"perspective",editType:"calc"},editType:"calc"},editType:"camera"},domain:x({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:g,yaxis:g,zaxis:g,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"}}}),UN=Ye({"src/plots/gl3d/layout/axis_defaults.js"(X,H){"use strict";var g=bh().mix,x=ta(),A=cl(),M=y5(),e=FS(),t=R_(),r=["xaxis","yaxis","zaxis"],o=100*136/187;H.exports=function(i,n,s){var c,h;function v(l,_){return x.coerce(c,h,M,l,_)}for(var p=0;p<r.length;p++){var T=r[p];c=i[T]||{},h=A.newContainer(n,T),h._id=T[0]+s.scene,h._name=T,e(c,h,v,s),t(c,h,v,{font:s.font,letter:T[0],data:s.data,showGrid:!0,noAutotickangles:!0,noTicklabelindex:!0,noTickson:!0,noTicklabelmode:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noTicklabelposition:!0,noTicklabeloverflow:!0,noInsiderange:!0,bgColor:s.bgColor,calendar:s.calendar},s.fullLayout),v("gridcolor",g(h.color,s.bgColor,o).toRgbString()),v("title.text",T[0]),h.setScale=x.noop,v("showspikes")&&(v("spikesides"),v("spikethickness"),v("spikecolor",h.color)),v("showaxeslabels"),v("showbackground")&&v("backgroundcolor")}}}}),jN=Ye({"src/plots/gl3d/layout/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Hn(),M=ig(),e=UN(),t=_5(),r=jh().getSubplotData,o="gl3d";H.exports=function(n,s,c){var h=s._basePlotModules.length>1;function v(p){if(!h){var T=g.validate(n[p],t[p]);if(T)return n[p]}}M(n,s,c,{type:o,attributes:t,handleDefaults:a,fullLayout:s,font:s.font,fullData:c,getDfltFromLayout:v,autotypenumbersDflt:s.autotypenumbers,paper_bgcolor:s.paper_bgcolor,calendar:s.calendar})};function a(i,n,s,c){for(var h=s("bgcolor"),v=x.combine(h,c.paper_bgcolor),p=["up","center","eye"],T=0;T<p.length;T++)s("camera."+p[T]+".x"),s("camera."+p[T]+".y"),s("camera."+p[T]+".z");s("camera.projection.type");var l=!!s("aspectratio.x")&&!!s("aspectratio.y")&&!!s("aspectratio.z"),_=l?"manual":"auto",w=s("aspectmode",_);l||(i.aspectratio=n.aspectratio={x:1,y:1,z:1},w==="manual"&&(n.aspectmode="auto"),i.aspectmode=n.aspectmode);var S=r(c.fullData,o,c.id);e(i,n,{font:c.font,scene:c.id,data:S,bgColor:v,calendar:c.calendar,autotypenumbersDflt:c.autotypenumbersDflt,fullLayout:c.fullLayout}),A.getComponentMethod("annotations3d","handleDefaults")(i,n,c);var E=c.getDfltFromLayout("dragmode");if(E!==!1&&!E)if(E="orbit",i.camera&&i.camera.up){var m=i.camera.up.x,b=i.camera.up.y,d=i.camera.up.z;d!==0&&(!m||!b||!d||d/Math.sqrt(m*m+b*b+d*d)>.999)&&(E="turntable")}else E="turntable";s("dragmode",E),s("hovermode",c.getDfltFromLayout("hovermode"))}}}),pg=Ye({"src/plots/gl3d/index.js"(X){"use strict";var H=Ou().overrideAll,g=Zm(),x=BN(),A=jh().getSubplotData,M=ta(),e=vd(),t="gl3d",r="scene";X.name=t,X.attr=r,X.idRoot=r,X.idRegex=X.attrRegex=M.counterRegex("scene"),X.attributes=NN(),X.layoutAttributes=_5(),X.baseLayoutAttrOverrides=H({hoverlabel:g.hoverlabel},"plot","nested"),X.supplyLayoutDefaults=jN(),X.plot=function(a){for(var i=a._fullLayout,n=a._fullData,s=i._subplots[t],c=0;c<s.length;c++){var h=s[c],v=A(n,t,h),p=i[h],T=p.camera,l=p._scene;l||(l=new x({id:h,graphDiv:a,container:a.querySelector(".gl-container"),staticPlot:a._context.staticPlot,plotGlPixelRatio:a._context.plotGlPixelRatio,camera:T},i),p._scene=l),l.viewInitial||(l.viewInitial={up:{x:T.up.x,y:T.up.y,z:T.up.z},eye:{x:T.eye.x,y:T.eye.y,z:T.eye.z},center:{x:T.center.x,y:T.center.y,z:T.center.z}}),l.plot(v,i,a.layout)}},X.clean=function(o,a,i,n){for(var s=n._subplots[t]||[],c=0;c<s.length;c++){var h=s[c];!a[h]&&n[h]._scene&&(n[h]._scene.destroy(),n._infolayer&&n._infolayer.selectAll(".annotation-"+h).remove())}},X.toSVG=function(o){for(var a=o._fullLayout,i=a._subplots[t],n=a._size,s=0;s<i.length;s++){var c=a[i[s]],h=c.domain,v=c._scene,p=v.toImage("png"),T=a._glimages.append("svg:image");T.attr({xmlns:e.svg,"xlink:href":p,x:n.l+n.w*h.x[0],y:n.t+n.h*(1-h.y[1]),width:n.w*(h.x[1]-h.x[0]),height:n.h*(h.y[1]-h.y[0]),preserveAspectRatio:"none"}),v.destroy()}},X.cleanId=function(a){if(a.match(/^scene[0-9]*$/)){var i=a.substr(5);return i==="1"&&(i=""),r+i}},X.updateFx=function(o){for(var a=o._fullLayout,i=a._subplots[t],n=0;n<i.length;n++){var s=a[i[n]]._scene;s.updateFx(a.dragmode,a.hovermode)}}}}),VN=Ye({"src/traces/scatter3d/index.js"(X,H){"use strict";H.exports={plot:LN(),attributes:m5(),markerSymbols:Q3(),supplyDefaults:PN(),colorbar:[{container:"marker",min:"cmin",max:"cmax"},{container:"line",min:"cmin",max:"cmax"}],calc:IN(),moduleType:"trace",name:"scatter3d",basePlotModule:pg(),categories:["gl3d","symbols","showLegend","scatter-like"],meta:{}}}}),qN=Ye({"lib/scatter3d.js"(X,H){"use strict";H.exports=VN()}}),vx=Ye({"src/traces/surface/attributes.js"(X,H){"use strict";var g=Fn(),x=tu(),A=Cc().axisHoverFormat,M=xs().hovertemplateAttrs,e=Pl(),t=Oo().extendFlat,r=Ou().overrideAll;function o(n){return{valType:"boolean",dflt:!1}}function a(n){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:o("x"),y:o("y"),z:o("z")},color:{valType:"color",dflt:g.defaultLine},usecolormap:{valType:"boolean",dflt:!1},width:{valType:"number",min:1,max:16,dflt:2},highlight:{valType:"boolean",dflt:!0},highlightcolor:{valType:"color",dflt:g.defaultLine},highlightwidth:{valType:"number",min:1,max:16,dflt:2}}}var i=H.exports=r(t({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:M(),xhoverformat:A("x"),yhoverformat:A("y"),zhoverformat:A("z"),connectgaps:{valType:"boolean",dflt:!1,editType:"calc"},surfacecolor:{valType:"data_array"}},x("",{colorAttr:"z or surfacecolor",showScaleDflt:!0,autoColorDflt:!1,editTypeOverride:"calc"}),{contours:{x:a("x"),y:a("y"),z:a("z")},hidesurface:{valType:"boolean",dflt:!1},lightposition:{x:{valType:"number",min:-1e5,max:1e5,dflt:10},y:{valType:"number",min:-1e5,max:1e5,dflt:1e4},z:{valType:"number",min:-1e5,max:1e5,dflt:0}},lighting:{ambient:{valType:"number",min:0,max:1,dflt:.8},diffuse:{valType:"number",min:0,max:1,dflt:.8},specular:{valType:"number",min:0,max:2,dflt:.05},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"},hoverinfo:t({},e.hoverinfo),showlegend:t({},e.showlegend,{dflt:!1})}),"calc","nested");i.x.editType=i.y.editType=i.z.editType="calc+clearAxisTypes"}}),x5=Ye({"src/traces/surface/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=sh(),M=vx(),e=.1;function t(i,n){for(var s=[],c=32,h=0;h<c;h++){var v=h/(c-1),p=n+(1-n)*(1-Math.pow(Math.sin(i*v*Math.PI),2));s.push([v,Math.max(0,Math.min(1,p))])}return s}function r(i){var n=0;if(!Array.isArray(i)||i.length<2||!i[0]||!i[i.length-1]||+i[0][0]!=0||+i[i.length-1][0]!=1)return!1;for(var s=0;s<i.length;s++){var c=i[s];if(c.length!==2||+c[0]<n)return!1;n=+c[0]}return!0}function o(i,n,s,c){var h,v;function p(u,y){return x.coerce(i,n,M,u,y)}var T=p("x"),l=p("y"),_=p("z");if(!_||!_.length||T&&T.length<1||l&&l.length<1){n.visible=!1;return}n._xlength=Array.isArray(T)&&x.isArrayOrTypedArray(T[0])?_.length:_[0].length,n._ylength=_.length;var w=g.getComponentMethod("calendars","handleTraceDefaults");w(i,n,["x","y","z"],c),p("text"),p("hovertext"),p("hovertemplate"),p("xhoverformat"),p("yhoverformat"),p("zhoverformat"),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lightposition.x","lightposition.y","lightposition.z","hidesurface","connectgaps","opacity"].forEach(function(u){p(u)});var S=p("surfacecolor"),E=["x","y","z"];for(h=0;h<3;++h){var m="contours."+E[h],b=p(m+".show"),d=p(m+".highlight");if(b||d)for(v=0;v<3;++v)p(m+".project."+E[v]);b&&(p(m+".color"),p(m+".width"),p(m+".usecolormap")),d&&(p(m+".highlightcolor"),p(m+".highlightwidth")),p(m+".start"),p(m+".end"),p(m+".size")}A(i,n,c,p,{prefix:"",cLetter:"c"}),a(i,n,c,p),n._length=null}function a(i,n,s,c){var h=c("opacityscale");h==="max"?n.opacityscale=[[0,e],[1,1]]:h==="min"?n.opacityscale=[[0,1],[1,e]]:h==="extremes"?n.opacityscale=t(1,e):r(h)||(n.opacityscale=void 0)}H.exports={supplyDefaults:o,opacityscaleDefaults:a}}}),HN=Ye({"src/traces/surface/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){M.surfacecolor?g(A,M,{vals:M.surfacecolor,containerStr:"",cLetter:"c"}):g(A,M,{vals:M.z,containerStr:"",cLetter:"c"})}}}),GN=Ye({"src/traces/surface/convert.js"(X,H){"use strict";var g=Gh().gl_surface3d,x=Gh().ndarray,A=Gh().ndarray_linear_interpolate.d2,M=Y2(),e=K2(),t=ta().isArrayOrTypedArray,r=em().parseColorScale,o=Qv(),a=Su().extractOpts;function i(y,f,P){this.scene=y,this.uid=P,this.surface=f,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 n=i.prototype;n.getXat=function(y,f,P,L){var z=t(this.data.x)?t(this.data.x[0])?this.data.x[f][y]:this.data.x[y]:y;return P===void 0?z:L.d2l(z,0,P)},n.getYat=function(y,f,P,L){var z=t(this.data.y)?t(this.data.y[0])?this.data.y[f][y]:this.data.y[f]:f;return P===void 0?z:L.d2l(z,0,P)},n.getZat=function(y,f,P,L){var z=this.data.z[f][y];return z===null&&this.data.connectgaps&&this.data._interpolatedZ&&(z=this.data._interpolatedZ[f][y]),P===void 0?z:L.d2l(z,0,P)},n.handlePick=function(y){if(y.object===this.surface){var f=(y.data.index[0]-1)/this.dataScaleX-1,P=(y.data.index[1]-1)/this.dataScaleY-1,L=Math.max(Math.min(Math.round(f),this.data.z[0].length-1),0),z=Math.max(Math.min(Math.round(P),this.data._ylength-1),0);y.index=[L,z],y.traceCoordinate=[this.getXat(L,z),this.getYat(L,z),this.getZat(L,z)],y.dataCoordinate=[this.getXat(L,z,this.data.xcalendar,this.scene.fullSceneLayout.xaxis),this.getYat(L,z,this.data.ycalendar,this.scene.fullSceneLayout.yaxis),this.getZat(L,z,this.data.zcalendar,this.scene.fullSceneLayout.zaxis)];for(var F=0;F<3;F++){var B=y.dataCoordinate[F];B!=null&&(y.dataCoordinate[F]*=this.scene.dataScale[F])}var O=this.data.hovertext||this.data.text;return t(O)&&O[z]&&O[z][L]!==void 0?y.textLabel=O[z][L]:O?y.textLabel=O:y.textLabel="",y.data.dataCoordinate=y.dataCoordinate.slice(),this.surface.highlight(y.data),this.scene.glplot.spikes.position=y.dataCoordinate,!0}};function s(y){var f=y[0].rgb,P=y[y.length-1].rgb;return f[0]===P[0]&&f[1]===P[1]&&f[2]===P[2]&&f[3]===P[3]}var c=[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 h(y,f){if(y<f)return 0;for(var P=0;Math.floor(y%f)===0;)y/=f,P++;return P}function v(y){for(var f=[],P=0;P<c.length;P++){var L=c[P];f.push(h(y,L))}return f}function p(y){for(var f=v(y),P=y,L=0;L<c.length;L++)if(f[L]>0){P=c[L];break}return P}function T(y,f){if(!(y<1||f<1)){for(var P=v(y),L=v(f),z=1,F=0;F<c.length;F++)z*=Math.pow(c[F],Math.max(P[F],L[F]));return z}}function l(y){if(y.length!==0){for(var f=1,P=0;P<y.length;P++)f=T(f,y[P]);return f}}n.calcXnums=function(y){var f,P=[];for(f=1;f<y;f++){var L=this.getXat(f-1,0),z=this.getXat(f,0);z!==L&&L!==void 0&&L!==null&&z!==void 0&&z!==null?P[f-1]=Math.abs(z-L):P[f-1]=0}var F=0;for(f=1;f<y;f++)F+=P[f-1];for(f=1;f<y;f++)P[f-1]===0?P[f-1]=1:P[f-1]=Math.round(F/P[f-1]);return P},n.calcYnums=function(y){var f,P=[];for(f=1;f<y;f++){var L=this.getYat(0,f-1),z=this.getYat(0,f);z!==L&&L!==void 0&&L!==null&&z!==void 0&&z!==null?P[f-1]=Math.abs(z-L):P[f-1]=0}var F=0;for(f=1;f<y;f++)F+=P[f-1];for(f=1;f<y;f++)P[f-1]===0?P[f-1]=1:P[f-1]=Math.round(F/P[f-1]);return P};var _=[1,2,4,6,12,24,36,48,60,120,180,240,360,720,840,1260],w=_[9],S=_[13];n.estimateScale=function(y,f){for(var P=f===0?this.calcXnums(y):this.calcYnums(y),L=1+l(P);L<w;)L*=2;for(;L>S;)L--,L/=p(L),L++,L<w&&(L=S);var z=Math.round(L/y);return z>1?z:1};function E(y,f,P){var L=P[8]+P[2]*f[0]+P[5]*f[1];return y[0]=(P[6]+P[0]*f[0]+P[3]*f[1])/L,y[1]=(P[7]+P[1]*f[0]+P[4]*f[1])/L,y}function m(y,f,P){return b(y,f,E,P),y}function b(y,f,P,L){for(var z=[0,0],F=y.shape[0],B=y.shape[1],O=0;O<F;O++)for(var I=0;I<B;I++)P(z,[O,I],L),y.set(O,I,A(f,z[0],z[1]));return y}n.refineCoords=function(y){for(var f=this.dataScaleX,P=this.dataScaleY,L=y[0].shape[0],z=y[0].shape[1],F=Math.floor(y[0].shape[0]*f+1)|0,B=Math.floor(y[0].shape[1]*P+1)|0,O=1+L+1,I=1+z+1,N=x(new Float32Array(O*I),[O,I]),U=[1/f,0,0,0,1/P,0,0,0,1],W=0;W<y.length;++W){this.surface.padField(N,y[W]);var Q=x(new Float32Array(F*B),[F,B]);m(Q,N,U),y[W]=Q}};function d(y,f){for(var P=!1,L=0;L<y.length;L++)if(f===y[L]){P=!0;break}P===!1&&y.push(f)}n.setContourLevels=function(){var y=[[],[],[]],f=[!1,!1,!1],P=!1,L,z,F;for(L=0;L<3;++L)if(this.showContour[L]&&(P=!0,this.contourSize[L]>0&&this.contourStart[L]!==null&&this.contourEnd[L]!==null&&this.contourEnd[L]>this.contourStart[L]))for(f[L]=!0,z=this.contourStart[L];z<this.contourEnd[L];z+=this.contourSize[L])F=z*this.scene.dataScale[L],d(y[L],F);if(P){var B=[[],[],[]];for(L=0;L<3;++L)this.showContour[L]&&(B[L]=f[L]?y[L]:this.scene.contourLevels[L]);this.surface.update({levels:B})}},n.update=function(y){var f=this.scene,P=f.fullSceneLayout,L=this.surface,z=r(y),F=f.dataScale,B=y.z[0].length,O=y._ylength,I=f.contourLevels;this.data=y;var N,U,W,Q,ue=[];for(N=0;N<3;N++)for(ue[N]=[],U=0;U<B;U++)ue[N][U]=[];for(U=0;U<B;U++)for(W=0;W<O;W++)ue[0][U][W]=this.getXat(U,W,y.xcalendar,P.xaxis),ue[1][U][W]=this.getYat(U,W,y.ycalendar,P.yaxis),ue[2][U][W]=this.getZat(U,W,y.zcalendar,P.zaxis);if(y.connectgaps)for(y._emptypoints=e(ue[2]),M(ue[2],y._emptypoints),y._interpolatedZ=[],U=0;U<B;U++)for(y._interpolatedZ[U]=[],W=0;W<O;W++)y._interpolatedZ[U][W]=ue[2][U][W];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q==null?ue[N][U][W]=NaN:Q=ue[N][U][W]*=F[N];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q!=null&&(this.minValues[N]>Q&&(this.minValues[N]=Q),this.maxValues[N]<Q&&(this.maxValues[N]=Q));for(N=0;N<3;N++)this.objectOffset[N]=.5*(this.minValues[N]+this.maxValues[N]);for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)Q=ue[N][U][W],Q!=null&&(ue[N][U][W]-=this.objectOffset[N]);var se=[x(new Float32Array(B*O),[B,O]),x(new Float32Array(B*O),[B,O]),x(new Float32Array(B*O),[B,O])];for(N=0;N<3;N++)for(U=0;U<B;U++)for(W=0;W<O;W++)se[N].set(U,W,ue[N][U][W]);ue=[];var he={colormap:z,levels:[[],[],[]],showContour:[!0,!0,!0],showSurface:!y.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:y.opacityscale,opacity:y.opacity},G=a(y);if(he.intensityBounds=[G.min,G.max],y.surfacecolor){var $=x(new Float32Array(B*O),[B,O]);for(U=0;U<B;U++)for(W=0;W<O;W++)$.set(U,W,y.surfacecolor[W][U]);se.push($)}else he.intensityBounds[0]*=F[2],he.intensityBounds[1]*=F[2];(S<se[0].shape[0]||S<se[0].shape[1])&&(this.refineData=!1),this.refineData===!0&&(this.dataScaleX=this.estimateScale(se[0].shape[0],0),this.dataScaleY=this.estimateScale(se[0].shape[1],1),(this.dataScaleX!==1||this.dataScaleY!==1)&&this.refineCoords(se)),y.surfacecolor&&(he.intensity=se.pop());var J=[!0,!0,!0],Z=["x","y","z"];for(N=0;N<3;++N){var re=y.contours[Z[N]];J[N]=re.highlight,he.showContour[N]=re.show||re.highlight,he.showContour[N]&&(he.contourProject[N]=[re.project.x,re.project.y,re.project.z],re.show?(this.showContour[N]=!0,he.levels[N]=I[N],L.highlightColor[N]=he.contourColor[N]=o(re.color),re.usecolormap?L.highlightTint[N]=he.contourTint[N]=0:L.highlightTint[N]=he.contourTint[N]=1,he.contourWidth[N]=re.width,this.contourStart[N]=re.start,this.contourEnd[N]=re.end,this.contourSize[N]=re.size):(this.showContour[N]=!1,this.contourStart[N]=null,this.contourEnd[N]=null,this.contourSize[N]=0),re.highlight&&(he.dynamicColor[N]=o(re.highlightcolor),he.dynamicWidth[N]=re.highlightwidth))}s(z)&&(he.vertexColor=!0),he.objectOffset=this.objectOffset,he.coords=se,L.update(he),L.visible=y.visible,L.enableDynamic=J,L.enableHighlight=J,L.snapToData=!0,"lighting"in y&&(L.ambientLight=y.lighting.ambient,L.diffuseLight=y.lighting.diffuse,L.specularLight=y.lighting.specular,L.roughness=y.lighting.roughness,L.fresnel=y.lighting.fresnel),"lightposition"in y&&(L.lightPosition=[y.lightposition.x,y.lightposition.y,y.lightposition.z])},n.dispose=function(){this.scene.glplot.remove(this.surface),this.surface.dispose()};function u(y,f){var P=y.glplot.gl,L=g({gl:P}),z=new i(y,L,f.uid);return L._trace=z,z.update(f),y.glplot.add(L),z}H.exports=u}}),WN=Ye({"src/traces/surface/index.js"(X,H){"use strict";H.exports={attributes:vx(),supplyDefaults:x5().supplyDefaults,colorbar:{min:"cmin",max:"cmax"},calc:HN(),plot:GN(),moduleType:"trace",name:"surface",basePlotModule:pg(),categories:["gl3d","2dMap","showLegend"],meta:{}}}}),ZN=Ye({"lib/surface.js"(X,H){"use strict";H.exports=WN()}}),A1=Ye({"src/traces/mesh3d/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=vx(),e=Pl(),t=Oo().extendFlat;H.exports=t({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"}),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),delaunayaxis:{valType:"enumerated",values:["x","y","z"],dflt:"z",editType:"calc"},alphahull:{valType:"number",dflt:-1,editType:"calc"},intensity:{valType:"data_array",editType:"calc"},intensitymode:{valType:"enumerated",values:["vertex","cell"],dflt:"vertex",editType:"calc"},color:{valType:"color",editType:"calc"},vertexcolor:{valType:"data_array",editType:"calc"},facecolor:{valType:"data_array",editType:"calc"}},g("",{colorAttr:"`intensity`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:M.opacity,flatshading:{valType:"boolean",dflt:!1,editType:"calc"},contour:{show:t({},M.contours.x.show,{}),color:M.contours.x.color,width:M.contours.x.width,editType:"calc"},lightposition:{x:t({},M.lightposition.x,{dflt:1e5}),y:t({},M.lightposition.y,{dflt:1e5}),z:t({},M.lightposition.z,{dflt:0}),editType:"calc"},lighting:t({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"},M.lighting),hoverinfo:t({},e.hoverinfo,{editType:"calc"}),showlegend:t({},e.showlegend,{dflt:!1})})}}),eT=Ye({"src/traces/isosurface/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r=Ou().overrideAll;function o(n){return{show:{valType:"boolean",dflt:!1},locations:{valType:"data_array",dflt:[]},fill:{valType:"number",min:0,max:1,dflt:1}}}function a(n){return{show:{valType:"boolean",dflt:!0},fill:{valType:"number",min:0,max:1,dflt:1}}}var i=H.exports=r(t({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:o("x"),y:o("y"),z:o("z")},caps:{x:a("x"),y:a("y"),z:a("z")},text:{valType:"string",dflt:"",arrayOk:!0},hovertext:{valType:"string",dflt:"",arrayOk:!0},hovertemplate:A(),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),valuehoverformat:x("value",1),showlegend:t({},e.showlegend,{dflt:!1})},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{opacity:M.opacity,lightposition:M.lightposition,lighting:M.lighting,flatshading:M.flatshading,contour:M.contour,hoverinfo:t({},e.hoverinfo)}),"calc","nested");i.flatshading.dflt=!0,i.lighting.facenormalsepsilon.dflt=0,i.x.editType=i.y.editType=i.z.editType=i.value.editType="calc+clearAxisTypes"}}),b5=Ye({"src/traces/isosurface/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=eT(),M=sh();function e(r,o,a,i){function n(s,c){return g.coerce(r,o,A,s,c)}t(r,o,a,i,n)}function t(r,o,a,i,n){var s=n("isomin"),c=n("isomax");c!=null&&s!==void 0&&s!==null&&s>c&&(o.isomin=null,o.isomax=null);var h=n("x"),v=n("y"),p=n("z"),T=n("value");if(!h||!h.length||!v||!v.length||!p||!p.length||!T||!T.length){o.visible=!1;return}var l=x.getComponentMethod("calendars","handleTraceDefaults");l(r,o,["x","y","z"],i),n("valuehoverformat"),["x","y","z"].forEach(function(E){n(E+"hoverformat");var m="caps."+E,b=n(m+".show");b&&n(m+".fill");var d="slices."+E,u=n(d+".show");u&&(n(d+".fill"),n(d+".locations"))});var _=n("spaceframe.show");_&&n("spaceframe.fill");var w=n("surface.show");w&&(n("surface.count"),n("surface.fill"),n("surface.pattern"));var S=n("contour.show");S&&(n("contour.color"),n("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(E){n(E)}),M(r,o,i,n,{prefix:"",cLetter:"c"}),o._length=null}H.exports={supplyDefaults:e,supplyIsoDefaults:t}}}),tT=Ye({"src/traces/streamtube/calc.js"(X,H){"use strict";var g=ta(),x=jp();function A(r,o){o._len=Math.min(o.u.length,o.v.length,o.w.length,o.x.length,o.y.length,o.z.length),o._u=t(o.u,o._len),o._v=t(o.v,o._len),o._w=t(o.w,o._len),o._x=t(o.x,o._len),o._y=t(o.y,o._len),o._z=t(o.z,o._len);var a=M(o);o._gridFill=a.fill,o._Xs=a.Xs,o._Ys=a.Ys,o._Zs=a.Zs,o._len=a.len;var i=0,n,s,c;o.starts&&(n=t(o.starts.x||[]),s=t(o.starts.y||[]),c=t(o.starts.z||[]),i=Math.min(n.length,s.length,c.length)),o._startsX=n||[],o._startsY=s||[],o._startsZ=c||[];var h=0,v=1/0,p;for(p=0;p<o._len;p++){var T=o._u[p],l=o._v[p],_=o._w[p],w=Math.sqrt(T*T+l*l+_*_);h=Math.max(h,w),v=Math.min(v,w)}for(x(r,o,{vals:[v,h],containerStr:"",cLetter:"c"}),p=0;p<i;p++){var S=n[p];a.xMax=Math.max(a.xMax,S),a.xMin=Math.min(a.xMin,S);var E=s[p];a.yMax=Math.max(a.yMax,E),a.yMin=Math.min(a.yMin,E);var m=c[p];a.zMax=Math.max(a.zMax,m),a.zMin=Math.min(a.zMin,m)}o._slen=i,o._normMax=h,o._xbnds=[a.xMin,a.xMax],o._ybnds=[a.yMin,a.yMax],o._zbnds=[a.zMin,a.zMax]}function M(r){var o=r._x,a=r._y,i=r._z,n=r._len,s,c,h,v=-1/0,p=1/0,T=-1/0,l=1/0,_=-1/0,w=1/0,S="",E,m,b,d,u,y,f,P,L;for(n&&(d=o[0],y=a[0],P=i[0]),n>1&&(u=o[n-1],f=a[n-1],L=i[n-1]),s=0;s<n;s++)v=Math.max(v,o[s]),p=Math.min(p,o[s]),T=Math.max(T,a[s]),l=Math.min(l,a[s]),_=Math.max(_,i[s]),w=Math.min(w,i[s]),!E&&o[s]!==d&&(E=!0,S+="x"),!m&&a[s]!==y&&(m=!0,S+="y"),!b&&i[s]!==P&&(b=!0,S+="z");E||(S+="x"),m||(S+="y"),b||(S+="z");var z=e(r._x),F=e(r._y),B=e(r._z);S=S.replace("x",(d>u?"-":"+")+"x"),S=S.replace("y",(y>f?"-":"+")+"y"),S=S.replace("z",(P>L?"-":"+")+"z");var O=function(){n=0,z=[],F=[],B=[]};(!n||n<z.length*F.length*B.length)&&O();var I=function(be){return be==="x"?o:be==="y"?a:i},N=function(be){return be==="x"?z:be==="y"?F:B},U=function(be){return be[n-1]<be[0]?-1:1},W=I(S[1]),Q=I(S[3]),ue=I(S[5]),se=N(S[1]).length,he=N(S[3]).length,G=N(S[5]).length,$=!1,J=function(be,Ae,Be){return se*(he*be+Ae)+Be},Z=U(I(S[1])),re=U(I(S[3])),ne=U(I(S[5]));for(s=0;s<G-1;s++){for(c=0;c<he-1;c++){for(h=0;h<se-1;h++){var j=J(s,c,h),ee=J(s,c,h+1),ie=J(s,c+1,h),fe=J(s+1,c,h);if((!(W[j]*Z<W[ee]*Z)||!(Q[j]*re<Q[ie]*re)||!(ue[j]*ne<ue[fe]*ne))&&($=!0),$)break}if($)break}if($)break}return $&&(g.warn("Encountered arbitrary coordinates! Unable to input data grid."),O()),{xMin:p,yMin:l,zMin:w,xMax:v,yMax:T,zMax:_,Xs:z,Ys:F,Zs:B,len:n,fill:S}}function e(r){return g.distinctVals(r).vals}function t(r,o){if(o===void 0&&(o=r.length),g.isTypedArray(r))return r.subarray(0,o);for(var a=[],i=0;i<o;i++)a[i]=+r[i];return a}H.exports={calc:A,filter:t,processGrid:M}}}),w5=Ye({"src/traces/isosurface/calc.js"(X,H){"use strict";var g=jp(),x=tT().processGrid,A=tT().filter;H.exports=function(e,t){t._len=Math.min(t.x.length,t.y.length,t.z.length,t.value.length),t._x=A(t.x,t._len),t._y=A(t.y,t._len),t._z=A(t.z,t._len),t._value=A(t.value,t._len);var r=x(t);t._gridFill=r.fill,t._Xs=r.Xs,t._Ys=r.Ys,t._Zs=r.Zs,t._len=r.len;for(var o=1/0,a=-1/0,i=0;i<t._len;i++){var n=t._value[i];o=Math.min(o,n),a=Math.max(a,n)}t._minValues=o,t._maxValues=a,t._vMin=t.isomin===void 0||t.isomin===null?o:t.isomin,t._vMax=t.isomax===void 0||t.isomax===null?a:t.isomax,g(e,t,{vals:[t._vMin,t._vMax],containerStr:"",cLetter:"c"})}}}),S1=Ye({"src/plots/gl3d/zip3.js"(X,H){"use strict";H.exports=function(x,A,M,e){e=e||x.length;for(var t=new Array(e),r=0;r<e;r++)t[r]=[x[r],A[r],M[r]];return t}}}),rT=Ye({"src/traces/isosurface/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=em().parseColorScale,A=ta().isArrayOrTypedArray,M=Qv(),e=Su().extractOpts,t=S1(),r=function(c,h){for(var v=h.length-1;v>0;v--){var p=Math.min(h[v],h[v-1]),T=Math.max(h[v],h[v-1]);if(T>p&&p<c&&c<=T)return{id:v,distRatio:(T-c)/(T-p)}}return{id:0,distRatio:0}};function o(c,h,v){this.scene=c,this.uid=v,this.mesh=h,this.name="",this.data=null,this.showContour=!1}var a=o.prototype;a.handlePick=function(c){if(c.object===this.mesh){var h=c.data.index,v=this.data._meshX[h],p=this.data._meshY[h],T=this.data._meshZ[h],l=this.data._Ys.length,_=this.data._Zs.length,w=r(v,this.data._Xs).id,S=r(p,this.data._Ys).id,E=r(T,this.data._Zs).id,m=c.index=E+_*S+_*l*w;c.traceCoordinate=[this.data._meshX[m],this.data._meshY[m],this.data._meshZ[m],this.data._value[m]];var b=this.data.hovertext||this.data.text;return A(b)&&b[m]!==void 0?c.textLabel=b[m]:b&&(c.textLabel=b),!0}},a.update=function(c){var h=this.scene,v=h.fullSceneLayout;this.data=n(c);function p(S,E,m,b){return E.map(function(d){return S.d2l(d,0,b)*m})}var T=t(p(v.xaxis,c._meshX,h.dataScale[0],c.xcalendar),p(v.yaxis,c._meshY,h.dataScale[1],c.ycalendar),p(v.zaxis,c._meshZ,h.dataScale[2],c.zcalendar)),l=t(c._meshI,c._meshJ,c._meshK),_={positions:T,cells:l,lightPosition:[c.lightposition.x,c.lightposition.y,c.lightposition.z],ambient:c.lighting.ambient,diffuse:c.lighting.diffuse,specular:c.lighting.specular,roughness:c.lighting.roughness,fresnel:c.lighting.fresnel,vertexNormalsEpsilon:c.lighting.vertexnormalsepsilon,faceNormalsEpsilon:c.lighting.facenormalsepsilon,opacity:c.opacity,contourEnable:c.contour.show,contourColor:M(c.contour.color).slice(0,3),contourWidth:c.contour.width,useFacetNormals:c.flatshading},w=e(c);_.vertexIntensity=c._meshIntensity,_.vertexIntensityBounds=[w.min,w.max],_.colormap=x(c),this.mesh.update(_)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};var i=["xyz","xzy","yxz","yzx","zxy","zyx"];function n(c){c._meshI=[],c._meshJ=[],c._meshK=[];var h=c.surface.show,v=c.spaceframe.show,p=c.surface.fill,T=c.spaceframe.fill,l=!1,_=!1,w=0,S,E,m=c._Xs,b=c._Ys,d=c._Zs,u=m.length,y=b.length,f=d.length,P=i.indexOf(c._gridFill.replace(/-/g,"").replace(/\+/g,"")),L=function(yt,Fe,Ke){switch(P){case 5:return Ke+f*Fe+f*y*yt;case 4:return Ke+f*yt+f*u*Fe;case 3:return Fe+y*Ke+y*f*yt;case 2:return Fe+y*yt+y*u*Ke;case 1:return yt+u*Ke+u*f*Fe;default:return yt+u*Fe+u*y*Ke}},z=c._minValues,F=c._maxValues,B=c._vMin,O=c._vMax,I,N,U,W;function Q(yt,Fe,Ke){for(var Ne=W.length,Ee=E;Ee<Ne;Ee++)if(yt===I[Ee]&&Fe===N[Ee]&&Ke===U[Ee])return Ee;return-1}function ue(){E=S}function se(){I=[],N=[],U=[],W=[],S=0,ue()}function he(yt,Fe,Ke,Ne){return I.push(yt),N.push(Fe),U.push(Ke),W.push(Ne),S++,S-1}function G(yt,Fe,Ke){return c._meshI.push(yt),c._meshJ.push(Fe),c._meshK.push(Ke),w++,w-1}function $(yt,Fe,Ke){for(var Ne=[],Ee=0;Ee<yt.length;Ee++)Ne[Ee]=(yt[Ee]+Fe[Ee]+Ke[Ee])/3;return Ne}function J(yt,Fe,Ke){for(var Ne=[],Ee=0;Ee<yt.length;Ee++)Ne[Ee]=yt[Ee]*(1-Ke)+Ke*Fe[Ee];return Ne}var Z;function re(yt){Z=yt}function ne(yt,Fe){var Ke=yt[0],Ne=yt[1],Ee=yt[2],Ve=$(Ke,Ne,Ee),ke=Math.sqrt(1-Z),Te=J(Ve,Ke,ke),Le=J(Ve,Ne,ke),rt=J(Ve,Ee,ke),dt=Fe[0],xt=Fe[1],It=Fe[2];return{xyzv:[[Ke,Ne,Le],[Le,Te,Ke],[Ne,Ee,rt],[rt,Le,Ne],[Ee,Ke,Te],[Te,rt,Ee]],abc:[[dt,xt,-1],[-1,-1,dt],[xt,It,-1],[-1,-1,xt],[It,dt,-1],[-1,-1,It]]}}function j(yt,Fe){return yt==="all"||yt===null?!0:yt.indexOf(Fe)>-1}function ee(yt,Fe){return yt===null?Fe:yt}function ie(yt,Fe,Ke){ue();var Ne=[Fe],Ee=[Ke];if(Z>=1)Ne=[Fe],Ee=[Ke];else if(Z>0){var Ve=ne(Fe,Ke);Ne=Ve.xyzv,Ee=Ve.abc}for(var ke=0;ke<Ne.length;ke++){Fe=Ne[ke],Ke=Ee[ke];for(var Te=[],Le=0;Le<3;Le++){var rt=Fe[Le][0],dt=Fe[Le][1],xt=Fe[Le][2],It=Fe[Le][3],Bt=Ke[Le]>-1?Ke[Le]:Q(rt,dt,xt);Bt>-1?Te[Le]=Bt:Te[Le]=he(rt,dt,xt,ee(yt,It))}G(Te[0],Te[1],Te[2])}}function fe(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(2,3,0)}function be(yt,Fe,Ke){var Ne=function(Ee,Ve,ke){ie(yt,[Fe[Ee],Fe[Ve],Fe[ke]],[Ke[Ee],Ke[Ve],Ke[ke]])};Ne(0,1,2),Ne(3,0,1),Ne(2,3,0),Ne(1,2,3)}function Ae(yt,Fe,Ke,Ne){var Ee=yt[3];Ee<Ke&&(Ee=Ke),Ee>Ne&&(Ee=Ne);for(var Ve=(yt[3]-Ee)/(yt[3]-Fe[3]+1e-9),ke=[],Te=0;Te<4;Te++)ke[Te]=(1-Ve)*yt[Te]+Ve*Fe[Te];return ke}function Be(yt,Fe,Ke){return yt>=Fe&&yt<=Ke}function Ie(yt){var Fe=.001*(O-B);return yt>=B-Fe&&yt<=O+Fe}function Ze(yt){for(var Fe=[],Ke=0;Ke<4;Ke++){var Ne=yt[Ke];Fe.push([c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne]])}return Fe}var at=3;function it(yt,Fe,Ke,Ne,Ee,Ve){Ve||(Ve=1),Ke=[-1,-1,-1];var ke=!1,Te=[Be(Fe[0][3],Ne,Ee),Be(Fe[1][3],Ne,Ee),Be(Fe[2][3],Ne,Ee)];if(!Te[0]&&!Te[1]&&!Te[2])return!1;var Le=function(dt,xt,It){return Ie(xt[0][3])&&Ie(xt[1][3])&&Ie(xt[2][3])?(ie(dt,xt,It),!0):Ve<at?it(dt,xt,It,B,O,++Ve):!1};if(Te[0]&&Te[1]&&Te[2])return Le(yt,Fe,Ke)||ke;var rt=!1;return[[0,1,2],[2,0,1],[1,2,0]].forEach(function(dt){if(Te[dt[0]]&&Te[dt[1]]&&!Te[dt[2]]){var xt=Fe[dt[0]],It=Fe[dt[1]],Bt=Fe[dt[2]],Gt=Ae(Bt,xt,Ne,Ee),Kt=Ae(Bt,It,Ne,Ee);ke=Le(yt,[Kt,Gt,xt],[-1,-1,Ke[dt[0]]])||ke,ke=Le(yt,[xt,It,Kt],[Ke[dt[0]],Ke[dt[1]],-1])||ke,rt=!0}}),rt||[[0,1,2],[1,2,0],[2,0,1]].forEach(function(dt){if(Te[dt[0]]&&!Te[dt[1]]&&!Te[dt[2]]){var xt=Fe[dt[0]],It=Fe[dt[1]],Bt=Fe[dt[2]],Gt=Ae(It,xt,Ne,Ee),Kt=Ae(Bt,xt,Ne,Ee);ke=Le(yt,[Kt,Gt,xt],[-1,-1,Ke[dt[0]]])||ke,rt=!0}}),ke}function et(yt,Fe,Ke,Ne){var Ee=!1,Ve=Ze(Fe),ke=[Be(Ve[0][3],Ke,Ne),Be(Ve[1][3],Ke,Ne),Be(Ve[2][3],Ke,Ne),Be(Ve[3][3],Ke,Ne)];if(!ke[0]&&!ke[1]&&!ke[2]&&!ke[3])return Ee;if(ke[0]&&ke[1]&&ke[2]&&ke[3])return _&&(Ee=be(yt,Ve,Fe)||Ee),Ee;var Te=!1;return[[0,1,2,3],[3,0,1,2],[2,3,0,1],[1,2,3,0]].forEach(function(Le){if(ke[Le[0]]&&ke[Le[1]]&&ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]];if(_)Ee=ie(yt,[rt,dt,xt],[Fe[Le[0]],Fe[Le[1]],Fe[Le[2]]])||Ee;else{var Bt=Ae(It,rt,Ke,Ne),Gt=Ae(It,dt,Ke,Ne),Kt=Ae(It,xt,Ke,Ne);Ee=ie(null,[Bt,Gt,Kt],[-1,-1,-1])||Ee}Te=!0}}),Te||([[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(Le){if(ke[Le[0]]&&ke[Le[1]]&&!ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]],Bt=Ae(xt,rt,Ke,Ne),Gt=Ae(xt,dt,Ke,Ne),Kt=Ae(It,dt,Ke,Ne),sr=Ae(It,rt,Ke,Ne);_?(Ee=ie(yt,[rt,sr,Bt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[dt,Gt,Kt],[Fe[Le[1]],-1,-1])||Ee):Ee=fe(null,[Bt,Gt,Kt,sr],[-1,-1,-1,-1])||Ee,Te=!0}}),Te)||[[0,1,2,3],[1,2,3,0],[2,3,0,1],[3,0,1,2]].forEach(function(Le){if(ke[Le[0]]&&!ke[Le[1]]&&!ke[Le[2]]&&!ke[Le[3]]){var rt=Ve[Le[0]],dt=Ve[Le[1]],xt=Ve[Le[2]],It=Ve[Le[3]],Bt=Ae(dt,rt,Ke,Ne),Gt=Ae(xt,rt,Ke,Ne),Kt=Ae(It,rt,Ke,Ne);_?(Ee=ie(yt,[rt,Bt,Gt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[rt,Gt,Kt],[Fe[Le[0]],-1,-1])||Ee,Ee=ie(yt,[rt,Kt,Bt],[Fe[Le[0]],-1,-1])||Ee):Ee=ie(null,[Bt,Gt,Kt],[-1,-1,-1])||Ee,Te=!0}}),Ee}function lt(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt){var xt=!1;return l&&(j(yt,"A")&&(xt=et(null,[Fe,Ke,Ne,Ve],rt,dt)||xt),j(yt,"B")&&(xt=et(null,[Ke,Ne,Ee,Le],rt,dt)||xt),j(yt,"C")&&(xt=et(null,[Ke,Ve,ke,Le],rt,dt)||xt),j(yt,"D")&&(xt=et(null,[Ne,Ve,Te,Le],rt,dt)||xt),j(yt,"E")&&(xt=et(null,[Ke,Ne,Ve,Le],rt,dt)||xt)),_&&(xt=et(yt,[Ke,Ne,Ve,Le],rt,dt)||xt),xt}function Me(yt,Fe,Ke,Ne,Ee,Ve,ke,Te){return[Te[0]===!0?!0:it(yt,Ze([Fe,Ke,Ne]),[Fe,Ke,Ne],Ve,ke),Te[1]===!0?!0:it(yt,Ze([Ne,Ee,Fe]),[Ne,Ee,Fe],Ve,ke)]}function ge(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le){return Te?Me(yt,Fe,Ke,Ee,Ne,Ve,ke,Le):Me(yt,Ke,Ee,Ne,Fe,Ve,ke,Le)}function ce(yt,Fe,Ke,Ne,Ee,Ve,ke){var Te=!1,Le,rt,dt,xt,It=function(){Te=it(yt,[Le,rt,dt],[-1,-1,-1],Ee,Ve)||Te,Te=it(yt,[dt,xt,Le],[-1,-1,-1],Ee,Ve)||Te},Bt=ke[0],Gt=ke[1],Kt=ke[2];return Bt&&(Le=J(Ze([L(Fe,Ke-0,Ne-0)])[0],Ze([L(Fe-1,Ke-0,Ne-0)])[0],Bt),rt=J(Ze([L(Fe,Ke-0,Ne-1)])[0],Ze([L(Fe-1,Ke-0,Ne-1)])[0],Bt),dt=J(Ze([L(Fe,Ke-1,Ne-1)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Bt),xt=J(Ze([L(Fe,Ke-1,Ne-0)])[0],Ze([L(Fe-1,Ke-1,Ne-0)])[0],Bt),It()),Gt&&(Le=J(Ze([L(Fe-0,Ke,Ne-0)])[0],Ze([L(Fe-0,Ke-1,Ne-0)])[0],Gt),rt=J(Ze([L(Fe-0,Ke,Ne-1)])[0],Ze([L(Fe-0,Ke-1,Ne-1)])[0],Gt),dt=J(Ze([L(Fe-1,Ke,Ne-1)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Gt),xt=J(Ze([L(Fe-1,Ke,Ne-0)])[0],Ze([L(Fe-1,Ke-1,Ne-0)])[0],Gt),It()),Kt&&(Le=J(Ze([L(Fe-0,Ke-0,Ne)])[0],Ze([L(Fe-0,Ke-0,Ne-1)])[0],Kt),rt=J(Ze([L(Fe-0,Ke-1,Ne)])[0],Ze([L(Fe-0,Ke-1,Ne-1)])[0],Kt),dt=J(Ze([L(Fe-1,Ke-1,Ne)])[0],Ze([L(Fe-1,Ke-1,Ne-1)])[0],Kt),xt=J(Ze([L(Fe-1,Ke-0,Ne)])[0],Ze([L(Fe-1,Ke-0,Ne-1)])[0],Kt),It()),Te}function ze(yt,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt,xt){var It=yt;return xt?(l&&yt==="even"&&(It=null),lt(It,Fe,Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt)):(l&&yt==="odd"&&(It=null),lt(It,Le,Te,ke,Ve,Ee,Ne,Ke,Fe,rt,dt))}function tt(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<f;rt++)for(var dt=1;dt<y;dt++)Ve.push(ge(yt,L(Le,dt-1,rt-1),L(Le,dt-1,rt),L(Le,dt,rt-1),L(Le,dt,rt),Ke,Ne,(Le+dt+rt)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function nt(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<u;rt++)for(var dt=1;dt<f;dt++)Ve.push(ge(yt,L(rt-1,Le,dt-1),L(rt,Le,dt-1),L(rt-1,Le,dt),L(rt,Le,dt),Ke,Ne,(rt+Le+dt)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function Qe(yt,Fe,Ke,Ne,Ee){for(var Ve=[],ke=0,Te=0;Te<Fe.length;Te++)for(var Le=Fe[Te],rt=1;rt<y;rt++)for(var dt=1;dt<u;dt++)Ve.push(ge(yt,L(dt-1,rt-1,Le),L(dt-1,rt,Le),L(dt,rt-1,Le),L(dt,rt,Le),Ke,Ne,(dt+rt+Le)%2,Ee&&Ee[ke]?Ee[ke]:[])),ke++;return Ve}function Ct(yt,Fe,Ke){for(var Ne=1;Ne<f;Ne++)for(var Ee=1;Ee<y;Ee++)for(var Ve=1;Ve<u;Ve++)ze(yt,L(Ve-1,Ee-1,Ne-1),L(Ve-1,Ee-1,Ne),L(Ve-1,Ee,Ne-1),L(Ve-1,Ee,Ne),L(Ve,Ee-1,Ne-1),L(Ve,Ee-1,Ne),L(Ve,Ee,Ne-1),L(Ve,Ee,Ne),Fe,Ke,(Ve+Ee+Ne)%2)}function St(yt,Fe,Ke){_=!0,Ct(yt,Fe,Ke),_=!1}function Ot(yt,Fe,Ke){l=!0,Ct(yt,Fe,Ke),l=!1}function jt(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<f;dt++)for(var xt=1;xt<y;xt++)ke.push(ce(yt,rt,xt,dt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function ur(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<u;dt++)for(var xt=1;xt<f;xt++)ke.push(ce(yt,dt,rt,xt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function ar(yt,Fe,Ke,Ne,Ee,Ve){for(var ke=[],Te=0,Le=0;Le<Fe.length;Le++)for(var rt=Fe[Le],dt=1;dt<y;dt++)for(var xt=1;xt<u;xt++)ke.push(ce(yt,xt,dt,rt,Ke,Ne,Ee[Le],Ve&&Ve[Te]?Ve[Te]:[])),Te++;return ke}function Cr(yt,Fe){for(var Ke=[],Ne=yt;Ne<Fe;Ne++)Ke.push(Ne);return Ke}function vr(){for(var yt=0;yt<u;yt++)for(var Fe=0;Fe<y;Fe++)for(var Ke=0;Ke<f;Ke++){var Ne=L(yt,Fe,Ke);he(c._x[Ne],c._y[Ne],c._z[Ne],c._value[Ne])}}function _r(){se(),vr();var yt=null;if(v&&T&&(re(T),St(yt,B,O)),h&&p){re(p);for(var Fe=c.surface.pattern,Ke=c.surface.count,Ne=0;Ne<Ke;Ne++){var Ee=Ke===1?.5:Ne/(Ke-1),Ve=(1-Ee)*B+Ee*O,ke=Math.abs(Ve-z),Te=Math.abs(Ve-F),Le=ke>Te?[z,Ve]:[Ve,F];Ot(Fe,Le[0],Le[1])}}var rt=[[Math.min(B,F),Math.max(B,F)],[Math.min(z,O),Math.max(z,O)]];["x","y","z"].forEach(function(dt){for(var xt=[],It=0;It<rt.length;It++){var Bt=0,Gt=rt[It][0],Kt=rt[It][1],sr=c.slices[dt];if(sr.show&&sr.fill){re(sr.fill);var sa=[],Aa=[],La=[];if(sr.locations.length)for(var ka=0;ka<sr.locations.length;ka++){var Ga=r(sr.locations[ka],dt==="x"?m:dt==="y"?b:d);Ga.distRatio===0?sa.push(Ga.id):Ga.id>0&&(Aa.push(Ga.id),dt==="x"?La.push([Ga.distRatio,0,0]):dt==="y"?La.push([0,Ga.distRatio,0]):La.push([0,0,Ga.distRatio]))}else dt==="x"?sa=Cr(1,u-1):dt==="y"?sa=Cr(1,y-1):sa=Cr(1,f-1);Aa.length>0&&(dt==="x"?xt[Bt]=jt(yt,Aa,Gt,Kt,La,xt[Bt]):dt==="y"?xt[Bt]=ur(yt,Aa,Gt,Kt,La,xt[Bt]):xt[Bt]=ar(yt,Aa,Gt,Kt,La,xt[Bt]),Bt++),sa.length>0&&(dt==="x"?xt[Bt]=tt(yt,sa,Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,sa,Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,sa,Gt,Kt,xt[Bt]),Bt++)}var Ma=c.caps[dt];Ma.show&&Ma.fill&&(re(Ma.fill),dt==="x"?xt[Bt]=tt(yt,[0,u-1],Gt,Kt,xt[Bt]):dt==="y"?xt[Bt]=nt(yt,[0,y-1],Gt,Kt,xt[Bt]):xt[Bt]=Qe(yt,[0,f-1],Gt,Kt,xt[Bt]),Bt++)}}),w===0&&se(),c._meshX=I,c._meshY=N,c._meshZ=U,c._meshIntensity=W,c._Xs=m,c._Ys=b,c._Zs=d}return _r(),c}function s(c,h){var v=c.glplot.gl,p=g({gl:v}),T=new o(c,p,h.uid);return p._trace=T,T.update(h),c.glplot.add(p),T}H.exports={findNearestOnAxis:r,generateIsoMeshes:n,createIsosurfaceTrace:s}}}),XN=Ye({"src/traces/isosurface/index.js"(X,H){"use strict";H.exports={attributes:eT(),supplyDefaults:b5().supplyDefaults,calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:rT().createIsosurfaceTrace,moduleType:"trace",name:"isosurface",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),YN=Ye({"lib/isosurface.js"(X,H){"use strict";H.exports=XN()}}),T5=Ye({"src/traces/volume/attributes.js"(X,H){"use strict";var g=tu(),x=eT(),A=vx(),M=Pl(),e=Oo().extendFlat,t=Ou().overrideAll,r=H.exports=t(e({x:x.x,y:x.y,z:x.z,value:x.value,isomin:x.isomin,isomax:x.isomax,surface:x.surface,spaceframe:{show:{valType:"boolean",dflt:!1},fill:{valType:"number",min:0,max:1,dflt:1}},slices:x.slices,caps:x.caps,text:x.text,hovertext:x.hovertext,xhoverformat:x.xhoverformat,yhoverformat:x.yhoverformat,zhoverformat:x.zhoverformat,valuehoverformat:x.valuehoverformat,hovertemplate:x.hovertemplate},g("",{colorAttr:"`value`",showScaleDflt:!0,editTypeOverride:"calc"}),{colorbar:x.colorbar,opacity:x.opacity,opacityscale:A.opacityscale,lightposition:x.lightposition,lighting:x.lighting,flatshading:x.flatshading,contour:x.contour,hoverinfo:e({},M.hoverinfo),showlegend:e({},M.showlegend,{dflt:!1})}),"calc","nested");r.x.editType=r.y.editType=r.z.editType=r.value.editType="calc+clearAxisTypes"}}),KN=Ye({"src/traces/volume/defaults.js"(X,H){"use strict";var g=ta(),x=T5(),A=b5().supplyIsoDefaults,M=x5().opacityscaleDefaults;H.exports=function(t,r,o,a){function i(n,s){return g.coerce(t,r,x,n,s)}A(t,r,o,a,i),M(t,r,a,i)}}}),JN=Ye({"src/traces/volume/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=em().parseColorScale,A=ta().isArrayOrTypedArray,M=Qv(),e=Su().extractOpts,t=S1(),r=rT().findNearestOnAxis,o=rT().generateIsoMeshes;function a(s,c,h){this.scene=s,this.uid=h,this.mesh=c,this.name="",this.data=null,this.showContour=!1}var i=a.prototype;i.handlePick=function(s){if(s.object===this.mesh){var c=s.data.index,h=this.data._meshX[c],v=this.data._meshY[c],p=this.data._meshZ[c],T=this.data._Ys.length,l=this.data._Zs.length,_=r(h,this.data._Xs).id,w=r(v,this.data._Ys).id,S=r(p,this.data._Zs).id,E=s.index=S+l*w+l*T*_;s.traceCoordinate=[this.data._meshX[E],this.data._meshY[E],this.data._meshZ[E],this.data._value[E]];var m=this.data.hovertext||this.data.text;return A(m)&&m[E]!==void 0?s.textLabel=m[E]:m&&(s.textLabel=m),!0}},i.update=function(s){var c=this.scene,h=c.fullSceneLayout;this.data=o(s);function v(w,S,E,m){return S.map(function(b){return w.d2l(b,0,m)*E})}var p=t(v(h.xaxis,s._meshX,c.dataScale[0],s.xcalendar),v(h.yaxis,s._meshY,c.dataScale[1],s.ycalendar),v(h.zaxis,s._meshZ,c.dataScale[2],s.zcalendar)),T=t(s._meshI,s._meshJ,s._meshK),l={positions:p,cells:T,lightPosition:[s.lightposition.x,s.lightposition.y,s.lightposition.z],ambient:s.lighting.ambient,diffuse:s.lighting.diffuse,specular:s.lighting.specular,roughness:s.lighting.roughness,fresnel:s.lighting.fresnel,vertexNormalsEpsilon:s.lighting.vertexnormalsepsilon,faceNormalsEpsilon:s.lighting.facenormalsepsilon,opacity:s.opacity,opacityscale:s.opacityscale,contourEnable:s.contour.show,contourColor:M(s.contour.color).slice(0,3),contourWidth:s.contour.width,useFacetNormals:s.flatshading},_=e(s);l.vertexIntensity=s._meshIntensity,l.vertexIntensityBounds=[_.min,_.max],l.colormap=x(s),this.mesh.update(l)},i.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function n(s,c){var h=s.glplot.gl,v=g({gl:h}),p=new a(s,v,c.uid);return v._trace=p,p.update(c),s.glplot.add(v),p}H.exports=n}}),$N=Ye({"src/traces/volume/index.js"(X,H){"use strict";H.exports={attributes:T5(),supplyDefaults:KN(),calc:w5(),colorbar:{min:"cmin",max:"cmax"},plot:JN(),moduleType:"trace",name:"volume",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),QN=Ye({"lib/volume.js"(X,H){"use strict";H.exports=$N()}}),eU=Ye({"src/traces/mesh3d/defaults.js"(X,H){"use strict";var g=Hn(),x=ta(),A=sh(),M=A1();H.exports=function(t,r,o,a){function i(v,p){return x.coerce(t,r,M,v,p)}function n(v){var p=v.map(function(T){var l=i(T);return l&&x.isArrayOrTypedArray(l)?l:null});return p.every(function(T){return T&&T.length===p[0].length})&&p}var s=n(["x","y","z"]);if(!s){r.visible=!1;return}if(n(["i","j","k"]),r.i&&(!r.j||!r.k)||r.j&&(!r.k||!r.i)||r.k&&(!r.i||!r.j)){r.visible=!1;return}var c=g.getComponentMethod("calendars","handleTraceDefaults");c(t,r,["x","y","z"],a),["lighting.ambient","lighting.diffuse","lighting.specular","lighting.roughness","lighting.fresnel","lighting.vertexnormalsepsilon","lighting.facenormalsepsilon","lightposition.x","lightposition.y","lightposition.z","flatshading","alphahull","delaunayaxis","opacity"].forEach(function(v){i(v)});var h=i("contour.show");h&&(i("contour.color"),i("contour.width")),"intensity"in t?(i("intensity"),i("intensitymode"),A(t,r,a,i,{prefix:"",cLetter:"c"})):(r.showscale=!1,"facecolor"in t?i("facecolor"):"vertexcolor"in t?i("vertexcolor"):i("color",o)),i("text"),i("hovertext"),i("hovertemplate"),i("xhoverformat"),i("yhoverformat"),i("zhoverformat"),r._length=null}}}),tU=Ye({"src/traces/mesh3d/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){M.intensity&&g(A,M,{vals:M.intensity,containerStr:"",cLetter:"c"})}}}),rU=Ye({"src/traces/mesh3d/convert.js"(X,H){"use strict";var g=Gh().gl_mesh3d,x=Gh().delaunay_triangulate,A=Gh().alpha_shape,M=Gh().convex_hull,e=em().parseColorScale,t=ta().isArrayOrTypedArray,r=Qv(),o=Su().extractOpts,a=S1();function i(l,_,w){this.scene=l,this.uid=w,this.mesh=_,this.name="",this.color="#fff",this.data=null,this.showContour=!1}var n=i.prototype;n.handlePick=function(l){if(l.object===this.mesh){var _=l.index=l.data.index;l.data._cellCenter?l.traceCoordinate=l.data.dataCoordinate:l.traceCoordinate=[this.data.x[_],this.data.y[_],this.data.z[_]];var w=this.data.hovertext||this.data.text;return t(w)&&w[_]!==void 0?l.textLabel=w[_]:w&&(l.textLabel=w),!0}};function s(l){for(var _=[],w=l.length,S=0;S<w;S++)_[S]=r(l[S]);return _}function c(l,_,w,S){for(var E=[],m=_.length,b=0;b<m;b++)E[b]=l.d2l(_[b],0,S)*w;return E}function h(l){for(var _=[],w=l.length,S=0;S<w;S++)_[S]=Math.round(l[S]);return _}function v(l,_){for(var w=["x","y","z"].indexOf(l),S=[],E=_.length,m=0;m<E;m++)S[m]=[_[m][(w+1)%3],_[m][(w+2)%3]];return x(S)}function p(l,_){for(var w=l.length,S=0;S<w;S++)if(l[S]<=-.5||l[S]>=_-.5)return!1;return!0}n.update=function(l){var _=this.scene,w=_.fullSceneLayout;this.data=l;var S=l.x.length,E=a(c(w.xaxis,l.x,_.dataScale[0],l.xcalendar),c(w.yaxis,l.y,_.dataScale[1],l.ycalendar),c(w.zaxis,l.z,_.dataScale[2],l.zcalendar)),m;if(l.i&&l.j&&l.k){if(l.i.length!==l.j.length||l.j.length!==l.k.length||!p(l.i,S)||!p(l.j,S)||!p(l.k,S))return;m=a(h(l.i),h(l.j),h(l.k))}else l.alphahull===0?m=M(E):l.alphahull>0?m=A(l.alphahull,E):m=v(l.delaunayaxis,E);var b={positions:E,cells:m,lightPosition:[l.lightposition.x,l.lightposition.y,l.lightposition.z],ambient:l.lighting.ambient,diffuse:l.lighting.diffuse,specular:l.lighting.specular,roughness:l.lighting.roughness,fresnel:l.lighting.fresnel,vertexNormalsEpsilon:l.lighting.vertexnormalsepsilon,faceNormalsEpsilon:l.lighting.facenormalsepsilon,opacity:l.opacity,contourEnable:l.contour.show,contourColor:r(l.contour.color).slice(0,3),contourWidth:l.contour.width,useFacetNormals:l.flatshading};if(l.intensity){var d=o(l);this.color="#fff";var u=l.intensitymode;b[u+"Intensity"]=l.intensity,b[u+"IntensityBounds"]=[d.min,d.max],b.colormap=e(l)}else l.vertexcolor?(this.color=l.vertexcolor[0],b.vertexColors=s(l.vertexcolor)):l.facecolor?(this.color=l.facecolor[0],b.cellColors=s(l.facecolor)):(this.color=l.color,b.meshColor=r(l.color));this.mesh.update(b)},n.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function T(l,_){var w=l.glplot.gl,S=g({gl:w}),E=new i(l,S,_.uid);return S._trace=E,E.update(_),l.glplot.add(S),E}H.exports=T}}),aU=Ye({"src/traces/mesh3d/index.js"(X,H){"use strict";H.exports={attributes:A1(),supplyDefaults:eU(),calc:tU(),colorbar:{min:"cmin",max:"cmax"},plot:rU(),moduleType:"trace",name:"mesh3d",basePlotModule:pg(),categories:["gl3d","showLegend"],meta:{}}}}),iU=Ye({"lib/mesh3d.js"(X,H){"use strict";H.exports=aU()}}),A5=Ye({"src/traces/cone/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r={x:{valType:"data_array",editType:"calc+clearAxisTypes"},y:{valType:"data_array",editType:"calc+clearAxisTypes"},z:{valType:"data_array",editType:"calc+clearAxisTypes"},u:{valType:"data_array",editType:"calc"},v:{valType:"data_array",editType:"calc"},w:{valType:"data_array",editType:"calc"},sizemode:{valType:"enumerated",values:["scaled","absolute","raw"],editType:"calc",dflt:"scaled"},sizeref:{valType:"number",editType:"calc",min:0},anchor:{valType:"enumerated",editType:"calc",values:["tip","tail","cm","center"],dflt:"cm"},text:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertext:{valType:"string",dflt:"",arrayOk:!0,editType:"calc"},hovertemplate:A({editType:"calc"},{keys:["norm"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(a){r[a]=M[a]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),nU=Ye({"src/traces/cone/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=A5();H.exports=function(e,t,r,o){function a(T,l){return g.coerce(e,t,A,T,l)}var i=a("u"),n=a("v"),s=a("w"),c=a("x"),h=a("y"),v=a("z");if(!i||!i.length||!n||!n.length||!s||!s.length||!c||!c.length||!h||!h.length||!v||!v.length){t.visible=!1;return}var p=a("sizemode");a("sizeref",p==="raw"?1:.5),a("anchor"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),x(e,t,o,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),t._length=null}}}),oU=Ye({"src/traces/cone/calc.js"(X,H){"use strict";var g=jp();H.exports=function(A,M){for(var e=M.u,t=M.v,r=M.w,o=Math.min(M.x.length,M.y.length,M.z.length,e.length,t.length,r.length),a=-1/0,i=1/0,n=0;n<o;n++){var s=e[n],c=t[n],h=r[n],v=Math.sqrt(s*s+c*c+h*h);a=Math.max(a,v),i=Math.min(i,v)}M._len=o,M._normMax=a,g(A,M,{vals:[i,a],containerStr:"",cLetter:"c"})}}}),sU=Ye({"src/traces/cone/convert.js"(X,H){"use strict";var g=Gh().gl_cone3d,x=Gh().gl_cone3d.createConeMesh,A=ta().simpleMap,M=em().parseColorScale,e=Su().extractOpts,t=ta().isArrayOrTypedArray,r=S1();function o(v,p){this.scene=v,this.uid=p,this.mesh=null,this.data=null}var a=o.prototype;a.handlePick=function(v){if(v.object===this.mesh){var p=v.index=v.data.index,T=this.data.x[p],l=this.data.y[p],_=this.data.z[p],w=this.data.u[p],S=this.data.v[p],E=this.data.w[p];v.traceCoordinate=[T,l,_,w,S,E,Math.sqrt(w*w+S*S+E*E)];var m=this.data.hovertext||this.data.text;return t(m)&&m[p]!==void 0?v.textLabel=m[p]:m&&(v.textLabel=m),!0}};var i={xaxis:0,yaxis:1,zaxis:2},n={tip:1,tail:0,cm:.25,center:.5},s={tip:1,tail:1,cm:.75,center:.5};function c(v,p){var T=v.fullSceneLayout,l=v.dataScale,_={};function w(d,u){var y=T[u],f=l[i[u]];return A(d,function(P){return y.d2l(P)*f})}_.vectors=r(w(p.u,"xaxis"),w(p.v,"yaxis"),w(p.w,"zaxis"),p._len),_.positions=r(w(p.x,"xaxis"),w(p.y,"yaxis"),w(p.z,"zaxis"),p._len);var S=e(p);_.colormap=M(p),_.vertexIntensityBounds=[S.min/p._normMax,S.max/p._normMax],_.coneOffset=n[p.anchor];var E=p.sizemode;E==="scaled"?_.coneSize=p.sizeref||.5:E==="absolute"?_.coneSize=p.sizeref&&p._normMax?p.sizeref/p._normMax:.5:E==="raw"&&(_.coneSize=p.sizeref),_.coneSizemode=E;var m=g(_),b=p.lightposition;return m.lightPosition=[b.x,b.y,b.z],m.ambient=p.lighting.ambient,m.diffuse=p.lighting.diffuse,m.specular=p.lighting.specular,m.roughness=p.lighting.roughness,m.fresnel=p.lighting.fresnel,m.opacity=p.opacity,p._pad=s[p.anchor]*m.vectorScale*m.coneScale*p._normMax,m}a.update=function(v){this.data=v;var p=c(this.scene,v);this.mesh.update(p)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function h(v,p){var T=v.glplot.gl,l=c(v,p),_=x(T,l),w=new o(v,p.uid);return w.mesh=_,w.data=p,_._trace=w,v.glplot.add(_),w}H.exports=h}}),lU=Ye({"src/traces/cone/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"cone",basePlotModule:pg(),categories:["gl3d","showLegend"],attributes:A5(),supplyDefaults:nU(),colorbar:{min:"cmin",max:"cmax"},calc:oU(),plot:sU(),eventData:function(g,x){return g.norm=x.traceCoordinate[6],g},meta:{}}}}),uU=Ye({"lib/cone.js"(X,H){"use strict";H.exports=lU()}}),S5=Ye({"src/traces/streamtube/attributes.js"(X,H){"use strict";var g=tu(),x=Cc().axisHoverFormat,A=xs().hovertemplateAttrs,M=A1(),e=Pl(),t=Oo().extendFlat,r={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"]}),uhoverformat:x("u",1),vhoverformat:x("v",1),whoverformat:x("w",1),xhoverformat:x("x"),yhoverformat:x("y"),zhoverformat:x("z"),showlegend:t({},e.showlegend,{dflt:!1})};t(r,g("",{colorAttr:"u/v/w norm",showScaleDflt:!0,editTypeOverride:"calc"}));var o=["opacity","lightposition","lighting"];o.forEach(function(a){r[a]=M[a]}),r.hoverinfo=t({},e.hoverinfo,{editType:"calc",flags:["x","y","z","u","v","w","norm","divergence","text","name"],dflt:"x+y+z+norm+text+name"}),H.exports=r}}),cU=Ye({"src/traces/streamtube/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=S5();H.exports=function(e,t,r,o){function a(p,T){return g.coerce(e,t,A,p,T)}var i=a("u"),n=a("v"),s=a("w"),c=a("x"),h=a("y"),v=a("z");if(!i||!i.length||!n||!n.length||!s||!s.length||!c||!c.length||!h||!h.length||!v||!v.length){t.visible=!1;return}a("starts.x"),a("starts.y"),a("starts.z"),a("maxdisplayed"),a("sizeref"),a("lighting.ambient"),a("lighting.diffuse"),a("lighting.specular"),a("lighting.roughness"),a("lighting.fresnel"),a("lightposition.x"),a("lightposition.y"),a("lightposition.z"),x(e,t,o,a,{prefix:"",cLetter:"c"}),a("text"),a("hovertext"),a("hovertemplate"),a("uhoverformat"),a("vhoverformat"),a("whoverformat"),a("xhoverformat"),a("yhoverformat"),a("zhoverformat"),t._length=null}}}),fU=Ye({"src/traces/streamtube/convert.js"(X,H){"use strict";var g=Gh().gl_streamtube3d,x=g.createTubeMesh,A=ta(),M=em().parseColorScale,e=Su().extractOpts,t=S1(),r={xaxis:0,yaxis:1,zaxis:2};function o(h,v){this.scene=h,this.uid=v,this.mesh=null,this.data=null}var a=o.prototype;a.handlePick=function(h){var v=this.scene.fullSceneLayout,p=this.scene.dataScale;function T(w,S){var E=v[S],m=p[r[S]];return E.l2c(w)/m}if(h.object===this.mesh){var l=h.data.position,_=h.data.velocity;return h.traceCoordinate=[T(l[0],"xaxis"),T(l[1],"yaxis"),T(l[2],"zaxis"),T(_[0],"xaxis"),T(_[1],"yaxis"),T(_[2],"zaxis"),h.data.intensity*this.data._normMax,h.data.divergence],h.textLabel=this.data.hovertext||this.data.text,!0}};function i(h){var v=h.length,p;return v>2?p=h.slice(1,v-1):v===2?p=[(h[0]+h[1])/2]:p=h,p}function n(h){var v=h.length;return v===1?[.5,.5]:[h[1]-h[0],h[v-1]-h[v-2]]}function s(h,v){var p=h.fullSceneLayout,T=h.dataScale,l=v._len,_={};function w(he,G){var $=p[G],J=T[r[G]];return A.simpleMap(he,function(Z){return $.d2l(Z)*J})}if(_.vectors=t(w(v._u,"xaxis"),w(v._v,"yaxis"),w(v._w,"zaxis"),l),!l)return{positions:[],cells:[]};var S=w(v._Xs,"xaxis"),E=w(v._Ys,"yaxis"),m=w(v._Zs,"zaxis");_.meshgrid=[S,E,m],_.gridFill=v._gridFill;var b=v._slen;if(b)_.startingPositions=t(w(v._startsX,"xaxis"),w(v._startsY,"yaxis"),w(v._startsZ,"zaxis"));else{for(var d=E[0],u=i(S),y=i(m),f=new Array(u.length*y.length),P=0,L=0;L<u.length;L++)for(var z=0;z<y.length;z++)f[P++]=[u[L],d,y[z]];_.startingPositions=f}_.colormap=M(v),_.tubeSize=v.sizeref,_.maxLength=v.maxdisplayed;var F=w(v._xbnds,"xaxis"),B=w(v._ybnds,"yaxis"),O=w(v._zbnds,"zaxis"),I=n(S),N=n(E),U=n(m),W=[[F[0]-I[0],B[0]-N[0],O[0]-U[0]],[F[1]+I[1],B[1]+N[1],O[1]+U[1]]],Q=g(_,W),ue=e(v);Q.vertexIntensityBounds=[ue.min/v._normMax,ue.max/v._normMax];var se=v.lightposition;return Q.lightPosition=[se.x,se.y,se.z],Q.ambient=v.lighting.ambient,Q.diffuse=v.lighting.diffuse,Q.specular=v.lighting.specular,Q.roughness=v.lighting.roughness,Q.fresnel=v.lighting.fresnel,Q.opacity=v.opacity,v._pad=Q.tubeScale*v.sizeref*2,Q}a.update=function(h){this.data=h;var v=s(this.scene,h);this.mesh.update(v)},a.dispose=function(){this.scene.glplot.remove(this.mesh),this.mesh.dispose()};function c(h,v){var p=h.glplot.gl,T=s(h,v),l=x(p,T),_=new o(h,v.uid);return _.mesh=l,_.data=v,l._trace=_,h.glplot.add(l),_}H.exports=c}}),hU=Ye({"src/traces/streamtube/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"streamtube",basePlotModule:pg(),categories:["gl3d","showLegend"],attributes:S5(),supplyDefaults:cU(),colorbar:{min:"cmin",max:"cmax"},calc:tT().calc,plot:fU(),eventData:function(g,x){return g.tubex=g.x,g.tubey=g.y,g.tubez=g.z,g.tubeu=x.traceCoordinate[3],g.tubev=x.traceCoordinate[4],g.tubew=x.traceCoordinate[5],g.norm=x.traceCoordinate[6],g.divergence=x.traceCoordinate[7],delete g.x,delete g.y,delete g.z,g},meta:{}}}}),pU=Ye({"lib/streamtube.js"(X,H){"use strict";H.exports=hU()}}),p0=Ye({"src/traces/scattergeo/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=Pc(),e=Pl(),t=tu(),r=Uh().dash,o=Oo().extendFlat,a=Ou().overrideAll,i=M.marker,n=M.line,s=i.line;H.exports=a({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:o({},M.mode,{dflt:"markers"}),text:o({},M.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","location","text"]}),hovertext:o({},M.hovertext,{}),textfont:M.textfont,textposition:M.textposition,line:{color:n.color,width:n.width,dash:r},connectgaps:M.connectgaps,marker:o({symbol:i.symbol,opacity:i.opacity,angle:i.angle,angleref:o({},i.angleref,{values:["previous","up","north"]}),standoff:i.standoff,size:i.size,sizeref:i.sizeref,sizemin:i.sizemin,sizemode:i.sizemode,colorbar:i.colorbar,line:o({width:s.width},t("marker.line")),gradient:i.gradient},t("marker")),fill:{valType:"enumerated",values:["none","toself"],dflt:"none"},fillcolor:A(),selected:M.selected,unselected:M.unselected,hoverinfo:o({},e.hoverinfo,{flags:["lon","lat","location","text","name"]}),hovertemplate:g()},"calc","nested")}}),dU=Ye({"src/traces/scattergeo/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=p0();H.exports=function(a,i,n,s){function c(S,E){return g.coerce(a,i,r,S,E)}var h=c("locations"),v;if(h&&h.length){var p=c("geojson"),T;(typeof p=="string"&&p!==""||g.isPlainObject(p))&&(T="geojson-id");var l=c("locationmode",T);l==="geojson-id"&&c("featureidkey"),v=h.length}else{var _=c("lon")||[],w=c("lat")||[];v=Math.min(_.length,w.length)}if(!v){i.visible=!1;return}i._length=v,c("text"),c("hovertext"),c("hovertemplate"),c("mode"),x.hasMarkers(i)&&A(a,i,n,s,c,{gradient:!0}),x.hasLines(i)&&(M(a,i,n,s,c),c("connectgaps")),x.hasText(i)&&(c("texttemplate"),e(a,i,s,c)),c("fill"),i.fill!=="none"&&t(a,i,n,c),g.coerceSelectionMarkerOpacity(i,c)}}}),vU=Ye({"src/traces/scattergeo/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.geo]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),aT=Ye({"src/traces/scattergeo/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Fd(),M=Av(),e=Od(),t=ta().isArrayOrTypedArray,r=ta()._;function o(a){return a&&typeof a=="string"}H.exports=function(i,n){var s=t(n.locations),c=s?n.locations.length:n._length,h=new Array(c),v;n.geojson?v=function(S){return o(S)||g(S)}:v=o;for(var p=0;p<c;p++){var T=h[p]={};if(s){var l=n.locations[p];T.loc=v(l)?l:null}else{var _=n.lon[p],w=n.lat[p];g(_)&&g(w)?T.lonlat=[+_,+w]:T.lonlat=[x,x]}}return M(h,n),A(i,n),e(h,n),c&&(h[0].t={labels:{lat:r(i,"lat:")+" ",lon:r(i,"lon:")+" "}}),h}}}),mx=Ye({"src/plots/geo/constants.js"(X){"use strict";X.projNames={airy:"airy",aitoff:"aitoff","albers usa":"albersUsa",albers:"albers",august:"august","azimuthal equal area":"azimuthalEqualArea","azimuthal equidistant":"azimuthalEquidistant",baker:"baker",bertin1953:"bertin1953",boggs:"boggs",bonne:"bonne",bottomley:"bottomley",bromley:"bromley",collignon:"collignon","conic conformal":"conicConformal","conic equal area":"conicEqualArea","conic equidistant":"conicEquidistant",craig:"craig",craster:"craster","cylindrical equal area":"cylindricalEqualArea","cylindrical stereographic":"cylindricalStereographic",eckert1:"eckert1",eckert2:"eckert2",eckert3:"eckert3",eckert4:"eckert4",eckert5:"eckert5",eckert6:"eckert6",eisenlohr:"eisenlohr","equal earth":"equalEarth",equirectangular:"equirectangular",fahey:"fahey","foucaut sinusoidal":"foucautSinusoidal",foucaut:"foucaut",ginzburg4:"ginzburg4",ginzburg5:"ginzburg5",ginzburg6:"ginzburg6",ginzburg8:"ginzburg8",ginzburg9:"ginzburg9",gnomonic:"gnomonic","gringorten quincuncial":"gringortenQuincuncial",gringorten:"gringorten",guyou:"guyou",hammer:"hammer",hill:"hill",homolosine:"homolosine",hufnagel:"hufnagel",hyperelliptical:"hyperelliptical",kavrayskiy7:"kavrayskiy7",lagrange:"lagrange",larrivee:"larrivee",laskowski:"laskowski",loximuthal:"loximuthal",mercator:"mercator",miller:"miller",mollweide:"mollweide","mt flat polar parabolic":"mtFlatPolarParabolic","mt flat polar quartic":"mtFlatPolarQuartic","mt flat polar sinusoidal":"mtFlatPolarSinusoidal","natural earth":"naturalEarth","natural earth1":"naturalEarth1","natural earth2":"naturalEarth2","nell hammer":"nellHammer",nicolosi:"nicolosi",orthographic:"orthographic",patterson:"patterson","peirce quincuncial":"peirceQuincuncial",polyconic:"polyconic","rectangular polyconic":"rectangularPolyconic",robinson:"robinson",satellite:"satellite","sinu mollweide":"sinuMollweide",sinusoidal:"sinusoidal",stereographic:"stereographic",times:"times","transverse mercator":"transverseMercator","van der grinten":"vanDerGrinten","van der grinten2":"vanDerGrinten2","van der grinten3":"vanDerGrinten3","van der grinten4":"vanDerGrinten4",wagner4:"wagner4",wagner6:"wagner6",wiechel:"wiechel","winkel tripel":"winkel3",winkel3:"winkel3"},X.axesNames=["lonaxis","lataxis"],X.lonaxisSpan={orthographic:180,"azimuthal equal area":360,"azimuthal equidistant":360,"conic conformal":180,gnomonic:160,stereographic:180,"transverse mercator":180,"*":360},X.lataxisSpan={"conic conformal":150,stereographic:179.5,"*":180},X.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]}},X.clipPad=.001,X.precision=.1,X.landColor="#F0DC82",X.waterColor="#3399FF",X.locationmodeToLayer={"ISO-3":"countries","USA-states":"subunits","country names":"countries"},X.sphereSVG={type:"Sphere"},X.fillLayers={ocean:1,land:1,lakes:1},X.lineLayers={subunits:1,countries:1,coastlines:1,rivers:1,frame:1},X.layers=["bg","ocean","land","lakes","subunits","countries","coastlines","rivers","lataxis","lonaxis","frame","backplot","frontplot"],X.layersForChoropleth=["bg","ocean","land","subunits","countries","coastlines","lataxis","lonaxis","frame","backplot","rivers","lakes","frontplot"],X.layerNameToAdjective={ocean:"ocean",land:"land",lakes:"lake",subunits:"subunit",countries:"country",coastlines:"coastline",rivers:"river",frame:"frame"}}}),M5=Ye({"node_modules/topojson-client/dist/topojson-client.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.topojson=g.topojson||{}))})(X,function(g){"use strict";function x(w){return w}function A(w){if(w==null)return x;var S,E,m=w.scale[0],b=w.scale[1],d=w.translate[0],u=w.translate[1];return function(y,f){f||(S=E=0);var P=2,L=y.length,z=new Array(L);for(z[0]=(S+=y[0])*m+d,z[1]=(E+=y[1])*b+u;P<L;)z[P]=y[P],++P;return z}}function M(w){var S=A(w.transform),E,m=1/0,b=m,d=-m,u=-m;function y(P){P=S(P),P[0]<m&&(m=P[0]),P[0]>d&&(d=P[0]),P[1]<b&&(b=P[1]),P[1]>u&&(u=P[1])}function f(P){switch(P.type){case"GeometryCollection":P.geometries.forEach(f);break;case"Point":y(P.coordinates);break;case"MultiPoint":P.coordinates.forEach(y);break}}w.arcs.forEach(function(P){for(var L=-1,z=P.length,F;++L<z;)F=S(P[L],L),F[0]<m&&(m=F[0]),F[0]>d&&(d=F[0]),F[1]<b&&(b=F[1]),F[1]>u&&(u=F[1])});for(E in w.objects)f(w.objects[E]);return[m,b,d,u]}function e(w,S){for(var E,m=w.length,b=m-S;b<--m;)E=w[b],w[b++]=w[m],w[m]=E}function t(w,S){return typeof S=="string"&&(S=w.objects[S]),S.type==="GeometryCollection"?{type:"FeatureCollection",features:S.geometries.map(function(E){return r(w,E)})}:r(w,S)}function r(w,S){var E=S.id,m=S.bbox,b=S.properties==null?{}:S.properties,d=o(w,S);return E==null&&m==null?{type:"Feature",properties:b,geometry:d}:m==null?{type:"Feature",id:E,properties:b,geometry:d}:{type:"Feature",id:E,bbox:m,properties:b,geometry:d}}function o(w,S){var E=A(w.transform),m=w.arcs;function b(L,z){z.length&&z.pop();for(var F=m[L<0?~L:L],B=0,O=F.length;B<O;++B)z.push(E(F[B],B));L<0&&e(z,O)}function d(L){return E(L)}function u(L){for(var z=[],F=0,B=L.length;F<B;++F)b(L[F],z);return z.length<2&&z.push(z[0]),z}function y(L){for(var z=u(L);z.length<4;)z.push(z[0]);return z}function f(L){return L.map(y)}function P(L){var z=L.type,F;switch(z){case"GeometryCollection":return{type:z,geometries:L.geometries.map(P)};case"Point":F=d(L.coordinates);break;case"MultiPoint":F=L.coordinates.map(d);break;case"LineString":F=u(L.arcs);break;case"MultiLineString":F=L.arcs.map(u);break;case"Polygon":F=f(L.arcs);break;case"MultiPolygon":F=L.arcs.map(f);break;default:return null}return{type:z,coordinates:F}}return P(S)}function a(w,S){var E={},m={},b={},d=[],u=-1;S.forEach(function(P,L){var z=w.arcs[P<0?~P:P],F;z.length<3&&!z[1][0]&&!z[1][1]&&(F=S[++u],S[u]=P,S[L]=F)}),S.forEach(function(P){var L=y(P),z=L[0],F=L[1],B,O;if(B=b[z])if(delete b[B.end],B.push(P),B.end=F,O=m[F]){delete m[O.start];var I=O===B?B:B.concat(O);m[I.start=B.start]=b[I.end=O.end]=I}else m[B.start]=b[B.end]=B;else if(B=m[F])if(delete m[B.start],B.unshift(P),B.start=z,O=b[z]){delete b[O.end];var N=O===B?B:O.concat(B);m[N.start=O.start]=b[N.end=B.end]=N}else m[B.start]=b[B.end]=B;else B=[P],m[B.start=z]=b[B.end=F]=B});function y(P){var L=w.arcs[P<0?~P:P],z=L[0],F;return w.transform?(F=[0,0],L.forEach(function(B){F[0]+=B[0],F[1]+=B[1]})):F=L[L.length-1],P<0?[F,z]:[z,F]}function f(P,L){for(var z in P){var F=P[z];delete L[F.start],delete F.start,delete F.end,F.forEach(function(B){E[B<0?~B:B]=1}),d.push(F)}}return f(b,m),f(m,b),S.forEach(function(P){E[P<0?~P:P]||d.push([P])}),d}function i(w){return o(w,n.apply(this,arguments))}function n(w,S,E){var m,b,d;if(arguments.length>1)m=s(w,S,E);else for(b=0,m=new Array(d=w.arcs.length);b<d;++b)m[b]=b;return{type:"MultiLineString",arcs:a(w,m)}}function s(w,S,E){var m=[],b=[],d;function u(z){var F=z<0?~z:z;(b[F]||(b[F]=[])).push({i:z,g:d})}function y(z){z.forEach(u)}function f(z){z.forEach(y)}function P(z){z.forEach(f)}function L(z){switch(d=z,z.type){case"GeometryCollection":z.geometries.forEach(L);break;case"LineString":y(z.arcs);break;case"MultiLineString":case"Polygon":f(z.arcs);break;case"MultiPolygon":P(z.arcs);break}}return L(S),b.forEach(E==null?function(z){m.push(z[0].i)}:function(z){E(z[0].g,z[z.length-1].g)&&m.push(z[0].i)}),m}function c(w){for(var S=-1,E=w.length,m,b=w[E-1],d=0;++S<E;)m=b,b=w[S],d+=m[0]*b[1]-m[1]*b[0];return Math.abs(d)}function h(w){return o(w,v.apply(this,arguments))}function v(w,S){var E={},m=[],b=[];S.forEach(d);function d(f){switch(f.type){case"GeometryCollection":f.geometries.forEach(d);break;case"Polygon":u(f.arcs);break;case"MultiPolygon":f.arcs.forEach(u);break}}function u(f){f.forEach(function(P){P.forEach(function(L){(E[L=L<0?~L:L]||(E[L]=[])).push(f)})}),m.push(f)}function y(f){return c(o(w,{type:"Polygon",arcs:[f]}).coordinates[0])}return m.forEach(function(f){if(!f._){var P=[],L=[f];for(f._=1,b.push(P);f=L.pop();)P.push(f),f.forEach(function(z){z.forEach(function(F){E[F<0?~F:F].forEach(function(B){B._||(B._=1,L.push(B))})})})}}),m.forEach(function(f){delete f._}),{type:"MultiPolygon",arcs:b.map(function(f){var P=[],L;if(f.forEach(function(I){I.forEach(function(N){N.forEach(function(U){E[U<0?~U:U].length<2&&P.push(U)})})}),P=a(w,P),(L=P.length)>1)for(var z=1,F=y(P[0]),B,O;z<L;++z)(B=y(P[z]))>F&&(O=P[0],P[0]=P[z],P[z]=O,F=B);return P}).filter(function(f){return f.length>0})}}function p(w,S){for(var E=0,m=w.length;E<m;){var b=E+m>>>1;w[b]<S?E=b+1:m=b}return E}function T(w){var S={},E=w.map(function(){return[]});function m(I,N){I.forEach(function(U){U<0&&(U=~U);var W=S[U];W?W.push(N):S[U]=[N]})}function b(I,N){I.forEach(function(U){m(U,N)})}function d(I,N){I.type==="GeometryCollection"?I.geometries.forEach(function(U){d(U,N)}):I.type in u&&u[I.type](I.arcs,N)}var u={LineString:m,MultiLineString:b,Polygon:b,MultiPolygon:function(I,N){I.forEach(function(U){b(U,N)})}};w.forEach(d);for(var y in S)for(var f=S[y],P=f.length,L=0;L<P;++L)for(var z=L+1;z<P;++z){var F=f[L],B=f[z],O;(O=E[F])[y=p(O,B)]!==B&&O.splice(y,0,B),(O=E[B])[y=p(O,F)]!==F&&O.splice(y,0,F)}return E}function l(w){if(w==null)return x;var S,E,m=w.scale[0],b=w.scale[1],d=w.translate[0],u=w.translate[1];return function(y,f){f||(S=E=0);var P=2,L=y.length,z=new Array(L),F=Math.round((y[0]-d)/m),B=Math.round((y[1]-u)/b);for(z[0]=F-S,S=F,z[1]=B-E,E=B;P<L;)z[P]=y[P],++P;return z}}function _(w,S){if(w.transform)throw new Error("already quantized");if(!S||!S.scale){if(!((u=Math.floor(S))>=2))throw new Error("n must be \u22652");f=w.bbox||M(w);var E=f[0],m=f[1],b=f[2],d=f[3],u;S={scale:[b-E?(b-E)/(u-1):1,d-m?(d-m)/(u-1):1],translate:[E,m]}}else f=w.bbox;var y=l(S),f,P,L=w.objects,z={};function F(I){return y(I)}function B(I){var N;switch(I.type){case"GeometryCollection":N={type:"GeometryCollection",geometries:I.geometries.map(B)};break;case"Point":N={type:"Point",coordinates:F(I.coordinates)};break;case"MultiPoint":N={type:"MultiPoint",coordinates:I.coordinates.map(F)};break;default:return I}return I.id!=null&&(N.id=I.id),I.bbox!=null&&(N.bbox=I.bbox),I.properties!=null&&(N.properties=I.properties),N}function O(I){var N=0,U=1,W=I.length,Q,ue=new Array(W);for(ue[0]=y(I[0],0);++N<W;)((Q=y(I[N],N))[0]||Q[1])&&(ue[U++]=Q);return U===1&&(ue[U++]=[0,0]),ue.length=U,ue}for(P in L)z[P]=B(L[P]);return{type:"Topology",bbox:f,transform:S,objects:z,arcs:w.arcs.map(O)}}g.bbox=M,g.feature=t,g.merge=h,g.mergeArcs=v,g.mesh=i,g.meshArcs=n,g.neighbors=T,g.quantize=_,g.transform=A,g.untransform=l,Object.defineProperty(g,"__esModule",{value:!0})})}}),iT=Ye({"src/lib/topojson_utils.js"(X,H){"use strict";var g=H.exports={},x=mx().locationmodeToLayer,A=M5().feature;g.getTopojsonName=function(M){return[M.scope.replace(/ /g,"-"),"_",M.resolution.toString(),"m"].join("")},g.getTopojsonPath=function(M,e){return M+e+".json"},g.getTopojsonFeatures=function(M,e){var t=x[M.locationmode],r=e.objects[t];return A(e,r).features}}}),dg=Ye({"src/lib/geojson_utils.js"(X){"use strict";var H=ks().BADNUM;X.calcTraceToLineCoords=function(g){for(var x=g[0].trace,A=x.connectgaps,M=[],e=[],t=0;t<g.length;t++){var r=g[t],o=r.lonlat;o[0]!==H?e.push(o):!A&&e.length>0&&(M.push(e),e=[])}return e.length>0&&M.push(e),M},X.makeLine=function(g){return g.length===1?{type:"LineString",coordinates:g[0]}:{type:"MultiLineString",coordinates:g}},X.makePolygon=function(g){if(g.length===1)return{type:"Polygon",coordinates:g};for(var x=new Array(g.length),A=0;A<g.length;A++)x[A]=[g[A]];return{type:"MultiPolygon",coordinates:x}},X.makeBlank=function(){return{type:"Point",coordinates:[]}}}}),mU=Ye({"node_modules/country-regex/index.js"(X,H){H.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"}}}),nT=Ye({"node_modules/@turf/helpers/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=63710088e-1,g={centimeters:H*100,centimetres:H*100,degrees:360/(2*Math.PI),feet:H*3.28084,inches:H*39.37,kilometers:H/1e3,kilometres:H/1e3,meters:H,metres:H,miles:H/1609.344,millimeters:H*1e3,millimetres:H*1e3,nauticalmiles:H/1852,radians:1,yards:H*1.0936},x={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,nauticalmiles:29155334959812285e-23,millimeters:1e6,millimetres:1e6,yards:1.195990046};function A(L,z,F={}){let B={type:"Feature"};return(F.id===0||F.id)&&(B.id=F.id),F.bbox&&(B.bbox=F.bbox),B.properties=z||{},B.geometry=L,B}function M(L,z,F={}){switch(L){case"Point":return e(z).geometry;case"LineString":return a(z).geometry;case"Polygon":return r(z).geometry;case"MultiPoint":return c(z).geometry;case"MultiLineString":return s(z).geometry;case"MultiPolygon":return h(z).geometry;default:throw new Error(L+" is invalid")}}function e(L,z,F={}){if(!L)throw new Error("coordinates is required");if(!Array.isArray(L))throw new Error("coordinates must be an Array");if(L.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!u(L[0])||!u(L[1]))throw new Error("coordinates must contain numbers");return A({type:"Point",coordinates:L},z,F)}function t(L,z,F={}){return n(L.map(B=>e(B,z)),F)}function r(L,z,F={}){for(let O of L){if(O.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");if(O[O.length-1].length!==O[0].length)throw new Error("First and last Position are not equivalent.");for(let I=0;I<O[O.length-1].length;I++)if(O[O.length-1][I]!==O[0][I])throw new Error("First and last Position are not equivalent.")}return A({type:"Polygon",coordinates:L},z,F)}function o(L,z,F={}){return n(L.map(B=>r(B,z)),F)}function a(L,z,F={}){if(L.length<2)throw new Error("coordinates must be an array of two or more positions");return A({type:"LineString",coordinates:L},z,F)}function i(L,z,F={}){return n(L.map(B=>a(B,z)),F)}function n(L,z={}){let F={type:"FeatureCollection"};return z.id&&(F.id=z.id),z.bbox&&(F.bbox=z.bbox),F.features=L,F}function s(L,z,F={}){return A({type:"MultiLineString",coordinates:L},z,F)}function c(L,z,F={}){return A({type:"MultiPoint",coordinates:L},z,F)}function h(L,z,F={}){return A({type:"MultiPolygon",coordinates:L},z,F)}function v(L,z,F={}){return A({type:"GeometryCollection",geometries:L},z,F)}function p(L,z=0){if(z&&!(z>=0))throw new Error("precision must be a positive number");let F=Math.pow(10,z||0);return Math.round(L*F)/F}function T(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L*F}function l(L,z="kilometers"){let F=g[z];if(!F)throw new Error(z+" units is invalid");return L/F}function _(L,z){return E(l(L,z))}function w(L){let z=L%360;return z<0&&(z+=360),z}function S(L){return L=L%360,L>0?L>180?L-360:L:L<-180?L+360:L}function E(L){return L%(2*Math.PI)*180/Math.PI}function m(L){return L%360*Math.PI/180}function b(L,z="kilometers",F="kilometers"){if(!(L>=0))throw new Error("length must be a positive number");return T(l(L,z),F)}function d(L,z="meters",F="kilometers"){if(!(L>=0))throw new Error("area must be a positive number");let B=x[z];if(!B)throw new Error("invalid original units");let O=x[F];if(!O)throw new Error("invalid final units");return L/B*O}function u(L){return!isNaN(L)&&L!==null&&!Array.isArray(L)}function y(L){return L!==null&&typeof L=="object"&&!Array.isArray(L)}function f(L){if(!L)throw new Error("bbox is required");if(!Array.isArray(L))throw new Error("bbox must be an Array");if(L.length!==4&&L.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");L.forEach(z=>{if(!u(z))throw new Error("bbox must only contain numbers")})}function P(L){if(!L)throw new Error("id is required");if(["string","number"].indexOf(typeof L)===-1)throw new Error("id must be a number or a string")}X.areaFactors=x,X.azimuthToBearing=S,X.bearingToAzimuth=w,X.convertArea=d,X.convertLength=b,X.degreesToRadians=m,X.earthRadius=H,X.factors=g,X.feature=A,X.featureCollection=n,X.geometry=M,X.geometryCollection=v,X.isNumber=u,X.isObject=y,X.lengthToDegrees=_,X.lengthToRadians=l,X.lineString=a,X.lineStrings=i,X.multiLineString=s,X.multiPoint=c,X.multiPolygon=h,X.point=e,X.points=t,X.polygon=r,X.polygons=o,X.radiansToDegrees=E,X.radiansToLength=T,X.round=p,X.validateBBox=f,X.validateId=P}}),oT=Ye({"node_modules/@turf/meta/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT();function g(l,_,w){if(l!==null)for(var S,E,m,b,d,u,y,f=0,P=0,L,z=l.type,F=z==="FeatureCollection",B=z==="Feature",O=F?l.features.length:1,I=0;I<O;I++){y=F?l.features[I].geometry:B?l.geometry:l,L=y?y.type==="GeometryCollection":!1,d=L?y.geometries.length:1;for(var N=0;N<d;N++){var U=0,W=0;if(b=L?y.geometries[N]:y,b!==null){u=b.coordinates;var Q=b.type;switch(f=w&&(Q==="Polygon"||Q==="MultiPolygon")?1:0,Q){case null:break;case"Point":if(_(u,P,I,U,W)===!1)return!1;P++,U++;break;case"LineString":case"MultiPoint":for(S=0;S<u.length;S++){if(_(u[S],P,I,U,W)===!1)return!1;P++,Q==="MultiPoint"&&U++}Q==="LineString"&&U++;break;case"Polygon":case"MultiLineString":for(S=0;S<u.length;S++){for(E=0;E<u[S].length-f;E++){if(_(u[S][E],P,I,U,W)===!1)return!1;P++}Q==="MultiLineString"&&U++,Q==="Polygon"&&W++}Q==="Polygon"&&U++;break;case"MultiPolygon":for(S=0;S<u.length;S++){for(W=0,E=0;E<u[S].length;E++){for(m=0;m<u[S][E].length-f;m++){if(_(u[S][E][m],P,I,U,W)===!1)return!1;P++}W++}U++}break;case"GeometryCollection":for(S=0;S<b.geometries.length;S++)if(g(b.geometries[S],_,w)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function x(l,_,w,S){var E=w;return g(l,function(m,b,d,u,y){b===0&&w===void 0?E=m:E=_(E,m,b,d,u,y)},S),E}function A(l,_){var w;switch(l.type){case"FeatureCollection":for(w=0;w<l.features.length&&_(l.features[w].properties,w)!==!1;w++);break;case"Feature":_(l.properties,0);break}}function M(l,_,w){var S=w;return A(l,function(E,m){m===0&&w===void 0?S=E:S=_(S,E,m)}),S}function e(l,_){if(l.type==="Feature")_(l,0);else if(l.type==="FeatureCollection")for(var w=0;w<l.features.length&&_(l.features[w],w)!==!1;w++);}function t(l,_,w){var S=w;return e(l,function(E,m){m===0&&w===void 0?S=E:S=_(S,E,m)}),S}function r(l){var _=[];return g(l,function(w){_.push(w)}),_}function o(l,_){var w,S,E,m,b,d,u,y,f,P,L=0,z=l.type==="FeatureCollection",F=l.type==="Feature",B=z?l.features.length:1;for(w=0;w<B;w++){for(d=z?l.features[w].geometry:F?l.geometry:l,y=z?l.features[w].properties:F?l.properties:{},f=z?l.features[w].bbox:F?l.bbox:void 0,P=z?l.features[w].id:F?l.id:void 0,u=d?d.type==="GeometryCollection":!1,b=u?d.geometries.length:1,E=0;E<b;E++){if(m=u?d.geometries[E]:d,m===null){if(_(null,L,y,f,P)===!1)return!1;continue}switch(m.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(_(m,L,y,f,P)===!1)return!1;break}case"GeometryCollection":{for(S=0;S<m.geometries.length;S++)if(_(m.geometries[S],L,y,f,P)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}L++}}function a(l,_,w){var S=w;return o(l,function(E,m,b,d,u){m===0&&w===void 0?S=E:S=_(S,E,m,b,d,u)}),S}function i(l,_){o(l,function(w,S,E,m,b){var d=w===null?null:w.type;switch(d){case null:case"Point":case"LineString":case"Polygon":return _(H.feature.call(void 0,w,E,{bbox:m,id:b}),S,0)===!1?!1:void 0}var u;switch(d){case"MultiPoint":u="Point";break;case"MultiLineString":u="LineString";break;case"MultiPolygon":u="Polygon";break}for(var y=0;y<w.coordinates.length;y++){var f=w.coordinates[y],P={type:u,coordinates:f};if(_(H.feature.call(void 0,P,E),S,y)===!1)return!1}})}function n(l,_,w){var S=w;return i(l,function(E,m,b){m===0&&b===0&&w===void 0?S=E:S=_(S,E,m,b)}),S}function s(l,_){i(l,function(w,S,E){var m=0;if(w.geometry){var b=w.geometry.type;if(!(b==="Point"||b==="MultiPoint")){var d,u=0,y=0,f=0;if(g(w,function(P,L,z,F,B){if(d===void 0||S>u||F>y||B>f){d=P,u=S,y=F,f=B,m=0;return}var O=H.lineString.call(void 0,[d,P],w.properties);if(_(O,S,E,B,m)===!1)return!1;m++,d=P})===!1)return!1}}})}function c(l,_,w){var S=w,E=!1;return s(l,function(m,b,d,u,y){E===!1&&w===void 0?S=m:S=_(S,m,b,d,u,y),E=!0}),S}function h(l,_){if(!l)throw new Error("geojson is required");i(l,function(w,S,E){if(w.geometry!==null){var m=w.geometry.type,b=w.geometry.coordinates;switch(m){case"LineString":if(_(w,S,E,0,0)===!1)return!1;break;case"Polygon":for(var d=0;d<b.length;d++)if(_(H.lineString.call(void 0,b[d],w.properties),S,E,d)===!1)return!1;break}}})}function v(l,_,w){var S=w;return h(l,function(E,m,b,d){m===0&&w===void 0?S=E:S=_(S,E,m,b,d)}),S}function p(l,_){if(_=_||{},!H.isObject.call(void 0,_))throw new Error("options is invalid");var w=_.featureIndex||0,S=_.multiFeatureIndex||0,E=_.geometryIndex||0,m=_.segmentIndex||0,b=_.properties,d;switch(l.type){case"FeatureCollection":w<0&&(w=l.features.length+w),b=b||l.features[w].properties,d=l.features[w].geometry;break;case"Feature":b=b||l.properties,d=l.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":d=l;break;default:throw new Error("geojson is invalid")}if(d===null)return null;var u=d.coordinates;switch(d.type){case"Point":case"MultiPoint":return null;case"LineString":return m<0&&(m=u.length+m-1),H.lineString.call(void 0,[u[m],u[m+1]],b,_);case"Polygon":return E<0&&(E=u.length+E),m<0&&(m=u[E].length+m-1),H.lineString.call(void 0,[u[E][m],u[E][m+1]],b,_);case"MultiLineString":return S<0&&(S=u.length+S),m<0&&(m=u[S].length+m-1),H.lineString.call(void 0,[u[S][m],u[S][m+1]],b,_);case"MultiPolygon":return S<0&&(S=u.length+S),E<0&&(E=u[S].length+E),m<0&&(m=u[S][E].length-m-1),H.lineString.call(void 0,[u[S][E][m],u[S][E][m+1]],b,_)}throw new Error("geojson is invalid")}function T(l,_){if(_=_||{},!H.isObject.call(void 0,_))throw new Error("options is invalid");var w=_.featureIndex||0,S=_.multiFeatureIndex||0,E=_.geometryIndex||0,m=_.coordIndex||0,b=_.properties,d;switch(l.type){case"FeatureCollection":w<0&&(w=l.features.length+w),b=b||l.features[w].properties,d=l.features[w].geometry;break;case"Feature":b=b||l.properties,d=l.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":d=l;break;default:throw new Error("geojson is invalid")}if(d===null)return null;var u=d.coordinates;switch(d.type){case"Point":return H.point.call(void 0,u,b,_);case"MultiPoint":return S<0&&(S=u.length+S),H.point.call(void 0,u[S],b,_);case"LineString":return m<0&&(m=u.length+m),H.point.call(void 0,u[m],b,_);case"Polygon":return E<0&&(E=u.length+E),m<0&&(m=u[E].length+m),H.point.call(void 0,u[E][m],b,_);case"MultiLineString":return S<0&&(S=u.length+S),m<0&&(m=u[S].length+m),H.point.call(void 0,u[S][m],b,_);case"MultiPolygon":return S<0&&(S=u.length+S),E<0&&(E=u[S].length+E),m<0&&(m=u[S][E].length-m),H.point.call(void 0,u[S][E][m],b,_)}throw new Error("geojson is invalid")}X.coordAll=r,X.coordEach=g,X.coordReduce=x,X.featureEach=e,X.featureReduce=t,X.findPoint=T,X.findSegment=p,X.flattenEach=i,X.flattenReduce=n,X.geomEach=o,X.geomReduce=a,X.lineEach=h,X.lineReduce=v,X.propEach=A,X.propReduce=M,X.segmentEach=s,X.segmentReduce=c}}),gU=Ye({"node_modules/@turf/area/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT(),g=oT();function x(a){return g.geomReduce.call(void 0,a,(i,n)=>i+A(n),0)}function A(a){let i=0,n;switch(a.type){case"Polygon":return M(a.coordinates);case"MultiPolygon":for(n=0;n<a.coordinates.length;n++)i+=M(a.coordinates[n]);return i;case"Point":case"MultiPoint":case"LineString":case"MultiLineString":return 0}return 0}function M(a){let i=0;if(a&&a.length>0){i+=Math.abs(r(a[0]));for(let n=1;n<a.length;n++)i-=Math.abs(r(a[n]))}return i}var e=H.earthRadius*H.earthRadius/2,t=Math.PI/180;function r(a){let i=a.length-1;if(i<=2)return 0;let n=0,s=0;for(;s<i;){let c=a[s],h=a[s+1===i?0:s+1],v=a[s+2>=i?(s+2)%i:s+2],p=c[0]*t,T=h[1]*t,l=v[0]*t;n+=(l-p)*Math.sin(T),s++}return n*e}var o=x;X.area=x,X.default=o}}),yU=Ye({"node_modules/@turf/centroid/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=nT(),g=oT();function x(M,e={}){let t=0,r=0,o=0;return g.coordEach.call(void 0,M,function(a){t+=a[0],r+=a[1],o++},!0),H.point.call(void 0,[t/o,r/o],e.properties)}var A=x;X.centroid=x,X.default=A}}),_U=Ye({"node_modules/@turf/bbox/dist/cjs/index.cjs"(X){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var H=oT();function g(A,M={}){if(A.bbox!=null&&M.recompute!==!0)return A.bbox;let e=[1/0,1/0,-1/0,-1/0];return H.coordEach.call(void 0,A,t=>{e[0]>t[0]&&(e[0]=t[0]),e[1]>t[1]&&(e[1]=t[1]),e[2]<t[0]&&(e[2]=t[0]),e[3]<t[1]&&(e[3]=t[1])}),e}var x=g;X.bbox=g,X.default=x}}),vg=Ye({"src/lib/geo_location_utils.js"(X,H){"use strict";var g=_n(),x=mU(),{area:A}=gU(),{centroid:M}=yU(),{bbox:e}=_U(),t=T_(),r=Ym(),o=Zv(),a=__(),i=C_(),n=Object.keys(x),s={"ISO-3":t,"USA-states":t,"country names":c};function c(S){for(var E=0;E<n.length;E++){var m=n[E],b=new RegExp(x[m]);if(b.test(S.trim().toLowerCase()))return m}return r.log("Unrecognized country name: "+S+"."),!1}function h(S,E,m){if(!E||typeof E!="string")return!1;var b=s[S](E),d,u,y;if(b){if(S==="USA-states")for(d=[],y=0;y<m.length;y++)u=m[y],u.properties&&u.properties.gu&&u.properties.gu==="USA"&&d.push(u);else d=m;for(y=0;y<d.length;y++)if(u=d[y],u.id===b)return u;r.log(["Location with id",b,"does not have a matching topojson feature at this resolution."].join(" "))}return!1}function v(S){var E=S.geometry,m=E.coordinates,b=S.id,d=[],u,y,f,P;function L(z){for(var F=0;F<z.length-1;F++)if(z[F][0]>0&&z[F+1][0]<0)return F;return null}switch(b==="RUS"||b==="FJI"?u=function(z){var F;if(L(z)===null)F=z;else for(F=new Array(z.length),P=0;P<z.length;P++)F[P]=[z[P][0]<0?z[P][0]+360:z[P][0],z[P][1]];d.push(i.tester(F))}:b==="ATA"?u=function(z){var F=L(z);if(F===null)return d.push(i.tester(z));var B=new Array(z.length+1),O=0;for(P=0;P<z.length;P++)P>F?B[O++]=[z[P][0]+360,z[P][1]]:P===F?(B[O++]=z[P],B[O++]=[z[P][0],-90]):B[O++]=z[P];var I=i.tester(B);I.pts.pop(),d.push(I)}:u=function(z){d.push(i.tester(z))},E.type){case"MultiPolygon":for(y=0;y<m.length;y++)for(f=0;f<m[y].length;f++)u(m[y][f]);break;case"Polygon":for(y=0;y<m.length;y++)u(m[y]);break}return d}function p(S){var E=S.geojson,m=window.PlotlyGeoAssets||{},b=typeof E=="string"?m[E]:E;return o(b)?b:(r.error("Oops ... something went wrong when fetching "+E),!1)}function T(S){var E=S[0].trace,m=p(E);if(!m)return!1;var b={},d=[],u;for(u=0;u<E._length;u++){var y=S[u];(y.loc||y.loc===0)&&(b[y.loc]=y)}function f(z){var F=a(z,E.featureidkey||"id").get(),B=b[F];if(B){var O=z.geometry;if(O.type==="Polygon"||O.type==="MultiPolygon"){var I={type:"Feature",id:F,geometry:O,properties:{}};I.geometry.coordinates.length>0?I.properties.ct=l(I):I.properties.ct=[NaN,NaN],B.fIn=z,B.fOut=I,d.push(I)}else r.log(["Location",B.loc,"does not have a valid GeoJSON geometry.","Traces with locationmode *geojson-id* only support","*Polygon* and *MultiPolygon* geometries."].join(" "))}delete b[F]}switch(m.type){case"FeatureCollection":var P=m.features;for(u=0;u<P.length;u++)f(P[u]);break;case"Feature":f(m);break;default:return r.warn(["Invalid GeoJSON type",(m.type||"none")+".","Traces with locationmode *geojson-id* only support","*FeatureCollection* and *Feature* types."].join(" ")),!1}for(var L in b)r.log(["Location *"+L+"*","does not have a matching feature with id-key","*"+E.featureidkey+"*."].join(" "));return d}function l(S){var E=S.geometry,m;if(E.type==="MultiPolygon")for(var b=E.coordinates,d=0,u=0;u<b.length;u++){var y={type:"Polygon",coordinates:b[u]},f=A(y);f>d&&(d=f,m=y)}else m=E;return M(m).geometry.coordinates}function _(S){var E=window.PlotlyGeoAssets||{},m=[];function b(P){return new Promise(function(L,z){g.json(P,function(F,B){if(F){delete E[P];var O=F.status===404?'GeoJSON at URL "'+P+'" does not exist.':"Unexpected error while fetching from "+P;return z(new Error(O))}return E[P]=B,L(B)})})}function d(P){return new Promise(function(L,z){var F=0,B=setInterval(function(){if(E[P]&&E[P]!=="pending")return clearInterval(B),L(E[P]);if(F>100)return clearInterval(B),z("Unexpected error while fetching from "+P);F++},50)})}for(var u=0;u<S.length;u++){var y=S[u][0].trace,f=y.geojson;typeof f=="string"&&(E[f]?E[f]==="pending"&&m.push(d(f)):(E[f]="pending",m.push(b(f))))}return m}function w(S){return e(S)}H.exports={locationToFeature:h,feature2polygons:v,getTraceGeojson:p,extractTraceFeature:T,fetchTraceGeoData:_,computeBbox:w}}}),E5=Ye({"src/traces/scattergeo/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn(),M=ed(),e=M.stylePoints,t=M.styleText;H.exports=function(a,i){i&&r(a,i)};function r(o,a){var i=a[0].trace,n=a[0].node3;n.style("opacity",a[0].trace.opacity),e(n,i,o),t(n,i,o),n.selectAll("path.js-line").style("fill","none").each(function(s){var c=g.select(this),h=s.trace,v=h.line||{};c.call(A.stroke,v.color).call(x.dashLine,v.dash||"",v.width||0),h.fill!=="none"&&c.call(A.fill,h.fillcolor)})}}}),k5=Ye({"src/traces/scattergeo/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=iT().getTopojsonFeatures,M=dg(),e=vg(),t=Yd().findExtremes,r=ks().BADNUM,o=Bd().calcMarkerSize,a=uu(),i=E5();function n(c,h,v){var p=h.layers.frontplot.select(".scatterlayer"),T=x.makeTraceGroups(p,v,"trace scattergeo");function l(_,w){_.lonlat[0]===r&&g.select(w).remove()}T.selectAll("*").remove(),T.each(function(_){var w=g.select(this),S=_[0].trace;if(a.hasLines(S)||S.fill!=="none"){var E=M.calcTraceToLineCoords(_),m=S.fill!=="none"?M.makePolygon(E):M.makeLine(E);w.selectAll("path.js-line").data([{geojson:m,trace:S}]).enter().append("path").classed("js-line",!0).style("stroke-miterlimit",2)}a.hasMarkers(S)&&w.selectAll("path.point").data(x.identity).enter().append("path").classed("point",!0).each(function(b){l(b,this)}),a.hasText(S)&&w.selectAll("g").data(x.identity).enter().append("g").append("text").each(function(b){l(b,this)}),i(c,_)})}function s(c,h){var v=c[0].trace,p=h[v.geo],T=p._subplot,l=v._length,_,w;if(x.isArrayOrTypedArray(v.locations)){var S=v.locationmode,E=S==="geojson-id"?e.extractTraceFeature(c):A(v,T.topojson);for(_=0;_<l;_++){w=c[_];var m=S==="geojson-id"?w.fOut:e.locationToFeature(S,w.loc,E);w.lonlat=m?m.properties.ct:[r,r]}}var b={padded:!0},d,u;if(p.fitbounds==="geojson"&&v.locationmode==="geojson-id"){var y=e.computeBbox(e.getTraceGeojson(v));d=[y[0],y[2]],u=[y[1],y[3]]}else{for(d=new Array(l),u=new Array(l),_=0;_<l;_++)w=c[_],d[_]=w.lonlat[0],u[_]=w.lonlat[1];b.ppad=o(v,l)}v._extremes.lon=t(p.lonaxis._ax,d,b),v._extremes.lat=t(p.lataxis._ax,u,b)}H.exports={calcGeoJSON:s,plot:n}}}),xU=Ye({"src/traces/scattergeo/hover.js"(X,H){"use strict";var g=Lc(),x=ks().BADNUM,A=s1(),M=ta().fillText,e=p0();H.exports=function(o,a,i){var n=o.cd,s=n[0].trace,c=o.xa,h=o.ya,v=o.subplot,p=v.projection.isLonLatOverEdges,T=v.project;function l(d){var u=d.lonlat;if(u[0]===x||p(u))return 1/0;var y=T(u),f=T([a,i]),P=Math.abs(y[0]-f[0]),L=Math.abs(y[1]-f[1]),z=Math.max(3,d.mrc||0);return Math.max(Math.sqrt(P*P+L*L)-z,1-3/z)}if(g.getClosest(n,l,o),o.index!==!1){var _=n[o.index],w=_.lonlat,S=[c.c2p(w),h.c2p(w)],E=_.mrc||1;o.x0=S[0]-E,o.x1=S[0]+E,o.y0=S[1]-E,o.y1=S[1]+E,o.loc=_.loc,o.lon=w[0],o.lat=w[1];var m={};m[s.geo]={_subplot:v};var b=s._module.formatLabels(_,s,m);return o.lonLabel=b.lonLabel,o.latLabel=b.latLabel,o.color=A(s,_),o.extraText=t(s,_,o,n[0].t.labels),o.hovertemplate=s.hovertemplate,[o]}};function t(r,o,a,i){if(r.hovertemplate)return;var n=o.hi||r.hoverinfo,s=n==="all"?e.hoverinfo.flags:n.split("+"),c=s.indexOf("location")!==-1&&Array.isArray(r.locations),h=s.indexOf("lon")!==-1,v=s.indexOf("lat")!==-1,p=s.indexOf("text")!==-1,T=[];function l(_){return _+"\xB0"}return c?T.push(o.loc):h&&v?T.push("("+l(a.latLabel)+", "+l(a.lonLabel)+")"):h?T.push(i.lon+l(a.lonLabel)):v&&T.push(i.lat+l(a.latLabel)),p&&M(o,r,T),T.join("<br>")}}}),bU=Ye({"src/traces/scattergeo/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.lon=A.lon,x.lat=A.lat,x.location=A.loc?A.loc:null;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x}}}),wU=Ye({"src/traces/scattergeo/select.js"(X,H){"use strict";var g=uu(),x=ks().BADNUM;H.exports=function(M,e){var t=M.cd,r=M.xaxis,o=M.yaxis,a=[],i=t[0].trace,n,s,c,h,v,p=!g.hasMarkers(i)&&!g.hasText(i);if(p)return[];if(e===!1)for(v=0;v<t.length;v++)t[v].selected=0;else for(v=0;v<t.length;v++)n=t[v],s=n.lonlat,s[0]!==x&&(c=r.c2p(s),h=o.c2p(s),e.contains([c,h],null,v,M)?(a.push({pointNumber:v,lon:s[0],lat:s[1]}),n.selected=1):n.selected=0);return a}}}),gx=Ye({"node_modules/d3-array/dist/d3-array.js"(X,H){(function(g,x){x(typeof X=="object"&&typeof H<"u"?X:g.d3=g.d3||{})})(X,function(g){"use strict";function x(J,Z){return J<Z?-1:J>Z?1:J>=Z?0:NaN}function A(J){return J.length===1&&(J=M(J)),{left:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne<j;){var ee=ne+j>>>1;J(Z[ee],re)<0?ne=ee+1:j=ee}return ne},right:function(Z,re,ne,j){for(ne==null&&(ne=0),j==null&&(j=Z.length);ne<j;){var ee=ne+j>>>1;J(Z[ee],re)>0?j=ee:ne=ee+1}return ne}}}function M(J){return function(Z,re){return x(J(Z),re)}}var e=A(x),t=e.right,r=e.left;function o(J,Z){Z==null&&(Z=a);for(var re=0,ne=J.length-1,j=J[0],ee=new Array(ne<0?0:ne);re<ne;)ee[re]=Z(j,j=J[++re]);return ee}function a(J,Z){return[J,Z]}function i(J,Z,re){var ne=J.length,j=Z.length,ee=new Array(ne*j),ie,fe,be,Ae;for(re==null&&(re=a),ie=be=0;ie<ne;++ie)for(Ae=J[ie],fe=0;fe<j;++fe,++be)ee[be]=re(Ae,Z[fe]);return ee}function n(J,Z){return Z<J?-1:Z>J?1:Z>=J?0:NaN}function s(J){return J===null?NaN:+J}function c(J,Z){var re=J.length,ne=0,j=-1,ee=0,ie,fe,be=0;if(Z==null)for(;++j<re;)isNaN(ie=s(J[j]))||(fe=ie-ee,ee+=fe/++ne,be+=fe*(ie-ee));else for(;++j<re;)isNaN(ie=s(Z(J[j],j,J)))||(fe=ie-ee,ee+=fe/++ne,be+=fe*(ie-ee));if(ne>1)return be/(ne-1)}function h(J,Z){var re=c(J,Z);return re&&Math.sqrt(re)}function v(J,Z){var re=J.length,ne=-1,j,ee,ie;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=ie=j;++ne<re;)(j=J[ne])!=null&&(ee>j&&(ee=j),ie<j&&(ie=j))}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=ie=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&(ee>j&&(ee=j),ie<j&&(ie=j));return[ee,ie]}var p=Array.prototype,T=p.slice,l=p.map;function _(J){return function(){return J}}function w(J){return J}function S(J,Z,re){J=+J,Z=+Z,re=(j=arguments.length)<2?(Z=J,J=0,1):j<3?1:+re;for(var ne=-1,j=Math.max(0,Math.ceil((Z-J)/re))|0,ee=new Array(j);++ne<j;)ee[ne]=J+ne*re;return ee}var E=Math.sqrt(50),m=Math.sqrt(10),b=Math.sqrt(2);function d(J,Z,re){var ne,j=-1,ee,ie,fe;if(Z=+Z,J=+J,re=+re,J===Z&&re>0)return[J];if((ne=Z<J)&&(ee=J,J=Z,Z=ee),(fe=u(J,Z,re))===0||!isFinite(fe))return[];if(fe>0)for(J=Math.ceil(J/fe),Z=Math.floor(Z/fe),ie=new Array(ee=Math.ceil(Z-J+1));++j<ee;)ie[j]=(J+j)*fe;else for(J=Math.floor(J*fe),Z=Math.ceil(Z*fe),ie=new Array(ee=Math.ceil(J-Z+1));++j<ee;)ie[j]=(J-j)/fe;return ne&&ie.reverse(),ie}function u(J,Z,re){var ne=(Z-J)/Math.max(0,re),j=Math.floor(Math.log(ne)/Math.LN10),ee=ne/Math.pow(10,j);return j>=0?(ee>=E?10:ee>=m?5:ee>=b?2:1)*Math.pow(10,j):-Math.pow(10,-j)/(ee>=E?10:ee>=m?5:ee>=b?2:1)}function y(J,Z,re){var ne=Math.abs(Z-J)/Math.max(0,re),j=Math.pow(10,Math.floor(Math.log(ne)/Math.LN10)),ee=ne/j;return ee>=E?j*=10:ee>=m?j*=5:ee>=b&&(j*=2),Z<J?-j:j}function f(J){return Math.ceil(Math.log(J.length)/Math.LN2)+1}function P(){var J=w,Z=v,re=f;function ne(j){var ee,ie=j.length,fe,be=new Array(ie);for(ee=0;ee<ie;++ee)be[ee]=J(j[ee],ee,j);var Ae=Z(be),Be=Ae[0],Ie=Ae[1],Ze=re(be,Be,Ie);Array.isArray(Ze)||(Ze=y(Be,Ie,Ze),Ze=S(Math.ceil(Be/Ze)*Ze,Ie,Ze));for(var at=Ze.length;Ze[0]<=Be;)Ze.shift(),--at;for(;Ze[at-1]>Ie;)Ze.pop(),--at;var it=new Array(at+1),et;for(ee=0;ee<=at;++ee)et=it[ee]=[],et.x0=ee>0?Ze[ee-1]:Be,et.x1=ee<at?Ze[ee]:Ie;for(ee=0;ee<ie;++ee)fe=be[ee],Be<=fe&&fe<=Ie&&it[t(Ze,fe,0,at)].push(j[ee]);return it}return ne.value=function(j){return arguments.length?(J=typeof j=="function"?j:_(j),ne):J},ne.domain=function(j){return arguments.length?(Z=typeof j=="function"?j:_([j[0],j[1]]),ne):Z},ne.thresholds=function(j){return arguments.length?(re=typeof j=="function"?j:Array.isArray(j)?_(T.call(j)):_(j),ne):re},ne}function L(J,Z,re){if(re==null&&(re=s),!!(ne=J.length)){if((Z=+Z)<=0||ne<2)return+re(J[0],0,J);if(Z>=1)return+re(J[ne-1],ne-1,J);var ne,j=(ne-1)*Z,ee=Math.floor(j),ie=+re(J[ee],ee,J),fe=+re(J[ee+1],ee+1,J);return ie+(fe-ie)*(j-ee)}}function z(J,Z,re){return J=l.call(J,s).sort(x),Math.ceil((re-Z)/(2*(L(J,.75)-L(J,.25))*Math.pow(J.length,-1/3)))}function F(J,Z,re){return Math.ceil((re-Z)/(3.5*h(J)*Math.pow(J.length,-1/3)))}function B(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=j;++ne<re;)(j=J[ne])!=null&&j>ee&&(ee=j)}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&j>ee&&(ee=j);return ee}function O(J,Z){var re=J.length,ne=re,j=-1,ee,ie=0;if(Z==null)for(;++j<re;)isNaN(ee=s(J[j]))?--ne:ie+=ee;else for(;++j<re;)isNaN(ee=s(Z(J[j],j,J)))?--ne:ie+=ee;if(ne)return ie/ne}function I(J,Z){var re=J.length,ne=-1,j,ee=[];if(Z==null)for(;++ne<re;)isNaN(j=s(J[ne]))||ee.push(j);else for(;++ne<re;)isNaN(j=s(Z(J[ne],ne,J)))||ee.push(j);return L(ee.sort(x),.5)}function N(J){for(var Z=J.length,re,ne=-1,j=0,ee,ie;++ne<Z;)j+=J[ne].length;for(ee=new Array(j);--Z>=0;)for(ie=J[Z],re=ie.length;--re>=0;)ee[--j]=ie[re];return ee}function U(J,Z){var re=J.length,ne=-1,j,ee;if(Z==null){for(;++ne<re;)if((j=J[ne])!=null&&j>=j)for(ee=j;++ne<re;)(j=J[ne])!=null&&ee>j&&(ee=j)}else for(;++ne<re;)if((j=Z(J[ne],ne,J))!=null&&j>=j)for(ee=j;++ne<re;)(j=Z(J[ne],ne,J))!=null&&ee>j&&(ee=j);return ee}function W(J,Z){for(var re=Z.length,ne=new Array(re);re--;)ne[re]=J[Z[re]];return ne}function Q(J,Z){if(re=J.length){var re,ne=0,j=0,ee,ie=J[j];for(Z==null&&(Z=x);++ne<re;)(Z(ee=J[ne],ie)<0||Z(ie,ie)!==0)&&(ie=ee,j=ne);if(Z(ie,ie)===0)return j}}function ue(J,Z,re){for(var ne=(re??J.length)-(Z=Z==null?0:+Z),j,ee;ne;)ee=Math.random()*ne--|0,j=J[ne+Z],J[ne+Z]=J[ee+Z],J[ee+Z]=j;return J}function se(J,Z){var re=J.length,ne=-1,j,ee=0;if(Z==null)for(;++ne<re;)(j=+J[ne])&&(ee+=j);else for(;++ne<re;)(j=+Z(J[ne],ne,J))&&(ee+=j);return ee}function he(J){if(!(ee=J.length))return[];for(var Z=-1,re=U(J,G),ne=new Array(re);++Z<re;)for(var j=-1,ee,ie=ne[Z]=new Array(ee);++j<ee;)ie[j]=J[j][Z];return ne}function G(J){return J.length}function $(){return he(arguments)}g.bisect=t,g.bisectRight=t,g.bisectLeft=r,g.ascending=x,g.bisector=A,g.cross=i,g.descending=n,g.deviation=h,g.extent=v,g.histogram=P,g.thresholdFreedmanDiaconis=z,g.thresholdScott=F,g.thresholdSturges=f,g.max=B,g.mean=O,g.median=I,g.merge=N,g.min=U,g.pairs=o,g.permute=W,g.quantile=L,g.range=S,g.scan=Q,g.shuffle=ue,g.sum=se,g.ticks=d,g.tickIncrement=u,g.tickStep=y,g.transpose=he,g.variance=c,g.zip=$,Object.defineProperty(g,"__esModule",{value:!0})})}}),C5=Ye({"node_modules/d3-geo/dist/d3-geo.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(){return new M}function M(){this.reset()}M.prototype={constructor:M,reset:function(){this.s=this.t=0},add:function(Zt){t(e,Zt,this.t),t(this,e.s,this.s),this.s?this.t+=e.t:this.s=e.t},valueOf:function(){return this.s}};var e=new M;function t(Zt,fr,Yr){var qr=Zt.s=fr+Yr,ba=qr-fr,Ka=qr-ba;Zt.t=fr-Ka+(Yr-ba)}var r=1e-6,o=1e-12,a=Math.PI,i=a/2,n=a/4,s=a*2,c=180/a,h=a/180,v=Math.abs,p=Math.atan,T=Math.atan2,l=Math.cos,_=Math.ceil,w=Math.exp,S=Math.log,E=Math.pow,m=Math.sin,b=Math.sign||function(Zt){return Zt>0?1:Zt<0?-1:0},d=Math.sqrt,u=Math.tan;function y(Zt){return Zt>1?0:Zt<-1?a:Math.acos(Zt)}function f(Zt){return Zt>1?i:Zt<-1?-i:Math.asin(Zt)}function P(Zt){return(Zt=m(Zt/2))*Zt}function L(){}function z(Zt,fr){Zt&&B.hasOwnProperty(Zt.type)&&B[Zt.type](Zt,fr)}var F={Feature:function(Zt,fr){z(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr<ba;)z(Yr[qr].geometry,fr)}},B={Sphere:function(Zt,fr){fr.sphere()},Point:function(Zt,fr){Zt=Zt.coordinates,fr.point(Zt[0],Zt[1],Zt[2])},MultiPoint:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)Zt=Yr[qr],fr.point(Zt[0],Zt[1],Zt[2])},LineString:function(Zt,fr){O(Zt.coordinates,fr,0)},MultiLineString:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)O(Yr[qr],fr,0)},Polygon:function(Zt,fr){I(Zt.coordinates,fr)},MultiPolygon:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)I(Yr[qr],fr)},GeometryCollection:function(Zt,fr){for(var Yr=Zt.geometries,qr=-1,ba=Yr.length;++qr<ba;)z(Yr[qr],fr)}};function O(Zt,fr,Yr){var qr=-1,ba=Zt.length-Yr,Ka;for(fr.lineStart();++qr<ba;)Ka=Zt[qr],fr.point(Ka[0],Ka[1],Ka[2]);fr.lineEnd()}function I(Zt,fr){var Yr=-1,qr=Zt.length;for(fr.polygonStart();++Yr<qr;)O(Zt[Yr],fr,1);fr.polygonEnd()}function N(Zt,fr){Zt&&F.hasOwnProperty(Zt.type)?F[Zt.type](Zt,fr):z(Zt,fr)}var U=A(),W=A(),Q,ue,se,he,G,$={point:L,lineStart:L,lineEnd:L,polygonStart:function(){U.reset(),$.lineStart=J,$.lineEnd=Z},polygonEnd:function(){var Zt=+U;W.add(Zt<0?s+Zt:Zt),this.lineStart=this.lineEnd=this.point=L},sphere:function(){W.add(s)}};function J(){$.point=re}function Z(){ne(Q,ue)}function re(Zt,fr){$.point=ne,Q=Zt,ue=fr,Zt*=h,fr*=h,se=Zt,he=l(fr=fr/2+n),G=m(fr)}function ne(Zt,fr){Zt*=h,fr*=h,fr=fr/2+n;var Yr=Zt-se,qr=Yr>=0?1:-1,ba=qr*Yr,Ka=l(fr),oi=m(fr),yi=G*oi,ki=he*Ka+yi*l(ba),Bi=yi*qr*m(ba);U.add(T(Bi,ki)),se=Zt,he=Ka,G=oi}function j(Zt){return W.reset(),N(Zt,$),W*2}function ee(Zt){return[T(Zt[1],Zt[0]),f(Zt[2])]}function ie(Zt){var fr=Zt[0],Yr=Zt[1],qr=l(Yr);return[qr*l(fr),qr*m(fr),m(Yr)]}function fe(Zt,fr){return Zt[0]*fr[0]+Zt[1]*fr[1]+Zt[2]*fr[2]}function be(Zt,fr){return[Zt[1]*fr[2]-Zt[2]*fr[1],Zt[2]*fr[0]-Zt[0]*fr[2],Zt[0]*fr[1]-Zt[1]*fr[0]]}function Ae(Zt,fr){Zt[0]+=fr[0],Zt[1]+=fr[1],Zt[2]+=fr[2]}function Be(Zt,fr){return[Zt[0]*fr,Zt[1]*fr,Zt[2]*fr]}function Ie(Zt){var fr=d(Zt[0]*Zt[0]+Zt[1]*Zt[1]+Zt[2]*Zt[2]);Zt[0]/=fr,Zt[1]/=fr,Zt[2]/=fr}var Ze,at,it,et,lt,Me,ge,ce,ze=A(),tt,nt,Qe={point:Ct,lineStart:Ot,lineEnd:jt,polygonStart:function(){Qe.point=ur,Qe.lineStart=ar,Qe.lineEnd=Cr,ze.reset(),$.polygonStart()},polygonEnd:function(){$.polygonEnd(),Qe.point=Ct,Qe.lineStart=Ot,Qe.lineEnd=jt,U<0?(Ze=-(it=180),at=-(et=90)):ze>r?et=90:ze<-r&&(at=-90),nt[0]=Ze,nt[1]=it},sphere:function(){Ze=-(it=180),at=-(et=90)}};function Ct(Zt,fr){tt.push(nt=[Ze=Zt,it=Zt]),fr<at&&(at=fr),fr>et&&(et=fr)}function St(Zt,fr){var Yr=ie([Zt*h,fr*h]);if(ce){var qr=be(ce,Yr),ba=[qr[1],-qr[0],0],Ka=be(ba,qr);Ie(Ka),Ka=ee(Ka);var oi=Zt-lt,yi=oi>0?1:-1,ki=Ka[0]*c*yi,Bi,li=v(oi)>180;li^(yi*lt<ki&&ki<yi*Zt)?(Bi=Ka[1]*c,Bi>et&&(et=Bi)):(ki=(ki+360)%360-180,li^(yi*lt<ki&&ki<yi*Zt)?(Bi=-Ka[1]*c,Bi<at&&(at=Bi)):(fr<at&&(at=fr),fr>et&&(et=fr))),li?Zt<lt?vr(Ze,Zt)>vr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt):it>=Ze?(Zt<Ze&&(Ze=Zt),Zt>it&&(it=Zt)):Zt>lt?vr(Ze,Zt)>vr(Ze,it)&&(it=Zt):vr(Zt,it)>vr(Ze,it)&&(Ze=Zt)}else tt.push(nt=[Ze=Zt,it=Zt]);fr<at&&(at=fr),fr>et&&(et=fr),ce=Yr,lt=Zt}function Ot(){Qe.point=St}function jt(){nt[0]=Ze,nt[1]=it,Qe.point=Ct,ce=null}function ur(Zt,fr){if(ce){var Yr=Zt-lt;ze.add(v(Yr)>180?Yr+(Yr>0?360:-360):Yr)}else Me=Zt,ge=fr;$.point(Zt,fr),St(Zt,fr)}function ar(){$.lineStart()}function Cr(){ur(Me,ge),$.lineEnd(),v(ze)>r&&(Ze=-(it=180)),nt[0]=Ze,nt[1]=it,ce=null}function vr(Zt,fr){return(fr-=Zt)<0?fr+360:fr}function _r(Zt,fr){return Zt[0]-fr[0]}function yt(Zt,fr){return Zt[0]<=Zt[1]?Zt[0]<=fr&&fr<=Zt[1]:fr<Zt[0]||Zt[1]<fr}function Fe(Zt){var fr,Yr,qr,ba,Ka,oi,yi;if(et=it=-(Ze=at=1/0),tt=[],N(Zt,Qe),Yr=tt.length){for(tt.sort(_r),fr=1,qr=tt[0],Ka=[qr];fr<Yr;++fr)ba=tt[fr],yt(qr,ba[0])||yt(qr,ba[1])?(vr(qr[0],ba[1])>vr(qr[0],qr[1])&&(qr[1]=ba[1]),vr(ba[0],qr[1])>vr(qr[0],qr[1])&&(qr[0]=ba[0])):Ka.push(qr=ba);for(oi=-1/0,Yr=Ka.length-1,fr=0,qr=Ka[Yr];fr<=Yr;qr=ba,++fr)ba=Ka[fr],(yi=vr(qr[1],ba[0]))>oi&&(oi=yi,Ze=ba[0],it=qr[1])}return tt=nt=null,Ze===1/0||at===1/0?[[NaN,NaN],[NaN,NaN]]:[[Ze,at],[it,et]]}var Ke,Ne,Ee,Ve,ke,Te,Le,rt,dt,xt,It,Bt,Gt,Kt,sr,sa,Aa={sphere:L,point:La,lineStart:Ga,lineEnd:ni,polygonStart:function(){Aa.lineStart=Wt,Aa.lineEnd=zt},polygonEnd:function(){Aa.lineStart=Ga,Aa.lineEnd=ni}};function La(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);ka(Yr*l(Zt),Yr*m(Zt),m(fr))}function ka(Zt,fr,Yr){++Ke,Ee+=(Zt-Ee)/Ke,Ve+=(fr-Ve)/Ke,ke+=(Yr-ke)/Ke}function Ga(){Aa.point=Ma}function Ma(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),Aa.point=Ua,ka(Kt,sr,sa)}function Ua(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=T(d((oi=sr*Ka-sa*ba)*oi+(oi=sa*qr-Kt*Ka)*oi+(oi=Kt*ba-sr*qr)*oi),Kt*qr+sr*ba+sa*Ka);Ne+=oi,Te+=oi*(Kt+(Kt=qr)),Le+=oi*(sr+(sr=ba)),rt+=oi*(sa+(sa=Ka)),ka(Kt,sr,sa)}function ni(){Aa.point=La}function Wt(){Aa.point=Vt}function zt(){Ut(Bt,Gt),Aa.point=La}function Vt(Zt,fr){Bt=Zt,Gt=fr,Zt*=h,fr*=h,Aa.point=Ut;var Yr=l(fr);Kt=Yr*l(Zt),sr=Yr*m(Zt),sa=m(fr),ka(Kt,sr,sa)}function Ut(Zt,fr){Zt*=h,fr*=h;var Yr=l(fr),qr=Yr*l(Zt),ba=Yr*m(Zt),Ka=m(fr),oi=sr*Ka-sa*ba,yi=sa*qr-Kt*Ka,ki=Kt*ba-sr*qr,Bi=d(oi*oi+yi*yi+ki*ki),li=f(Bi),_i=Bi&&-li/Bi;dt+=_i*oi,xt+=_i*yi,It+=_i*ki,Ne+=li,Te+=li*(Kt+(Kt=qr)),Le+=li*(sr+(sr=ba)),rt+=li*(sa+(sa=Ka)),ka(Kt,sr,sa)}function xr(Zt){Ke=Ne=Ee=Ve=ke=Te=Le=rt=dt=xt=It=0,N(Zt,Aa);var fr=dt,Yr=xt,qr=It,ba=fr*fr+Yr*Yr+qr*qr;return ba<o&&(fr=Te,Yr=Le,qr=rt,Ne<r&&(fr=Ee,Yr=Ve,qr=ke),ba=fr*fr+Yr*Yr+qr*qr,ba<o)?[NaN,NaN]:[T(Yr,fr)*c,f(qr/d(ba))*c]}function Zr(Zt){return function(){return Zt}}function pa(Zt,fr){function Yr(qr,ba){return qr=Zt(qr,ba),fr(qr[0],qr[1])}return Zt.invert&&fr.invert&&(Yr.invert=function(qr,ba){return qr=fr.invert(qr,ba),qr&&Zt.invert(qr[0],qr[1])}),Yr}function Xr(Zt,fr){return[v(Zt)>a?Zt+Math.round(-Zt/s)*s:Zt,fr]}Xr.invert=Xr;function Ea(Zt,fr,Yr){return(Zt%=s)?fr||Yr?pa(qa(Zt),ya(fr,Yr)):qa(Zt):fr||Yr?ya(fr,Yr):Xr}function Fa(Zt){return function(fr,Yr){return fr+=Zt,[fr>a?fr-s:fr<-a?fr+s:fr,Yr]}}function qa(Zt){var fr=Fa(Zt);return fr.invert=Fa(-Zt),fr}function ya(Zt,fr){var Yr=l(Zt),qr=m(Zt),ba=l(fr),Ka=m(fr);function oi(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*Yr+li*qr;return[T(_i*ba-ti*Ka,li*Yr-vi*qr),f(ti*ba+_i*Ka)]}return oi.invert=function(yi,ki){var Bi=l(ki),li=l(yi)*Bi,_i=m(yi)*Bi,vi=m(ki),ti=vi*ba-_i*Ka;return[T(_i*ba+vi*Ka,li*Yr+ti*qr),f(ti*Yr-li*qr)]},oi}function $a(Zt){Zt=Ea(Zt[0]*h,Zt[1]*h,Zt.length>2?Zt[2]*h:0);function fr(Yr){return Yr=Zt(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr}return fr.invert=function(Yr){return Yr=Zt.invert(Yr[0]*h,Yr[1]*h),Yr[0]*=c,Yr[1]*=c,Yr},fr}function mt(Zt,fr,Yr,qr,ba,Ka){if(Yr){var oi=l(fr),yi=m(fr),ki=qr*Yr;ba==null?(ba=fr+qr*s,Ka=fr-ki/2):(ba=gt(oi,ba),Ka=gt(oi,Ka),(qr>0?ba<Ka:ba>Ka)&&(ba+=qr*s));for(var Bi,li=ba;qr>0?li>Ka:li<Ka;li-=ki)Bi=ee([oi,-yi*l(li),-yi*m(li)]),Zt.point(Bi[0],Bi[1])}}function gt(Zt,fr){fr=ie(fr),fr[0]-=Zt,Ie(fr);var Yr=y(-fr[1]);return((-fr[2]<0?-Yr:Yr)+s-r)%s}function Er(){var Zt=Zr([0,0]),fr=Zr(90),Yr=Zr(6),qr,ba,Ka={point:oi};function oi(ki,Bi){qr.push(ki=ba(ki,Bi)),ki[0]*=c,ki[1]*=c}function yi(){var ki=Zt.apply(this,arguments),Bi=fr.apply(this,arguments)*h,li=Yr.apply(this,arguments)*h;return qr=[],ba=Ea(-ki[0]*h,-ki[1]*h,0).invert,mt(Ka,Bi,li,1),ki={type:"Polygon",coordinates:[qr]},qr=ba=null,ki}return yi.center=function(ki){return arguments.length?(Zt=typeof ki=="function"?ki:Zr([+ki[0],+ki[1]]),yi):Zt},yi.radius=function(ki){return arguments.length?(fr=typeof ki=="function"?ki:Zr(+ki),yi):fr},yi.precision=function(ki){return arguments.length?(Yr=typeof ki=="function"?ki:Zr(+ki),yi):Yr},yi}function kr(){var Zt=[],fr;return{point:function(Yr,qr,ba){fr.push([Yr,qr,ba])},lineStart:function(){Zt.push(fr=[])},lineEnd:L,rejoin:function(){Zt.length>1&&Zt.push(Zt.pop().concat(Zt.shift()))},result:function(){var Yr=Zt;return Zt=[],fr=null,Yr}}}function br(Zt,fr){return v(Zt[0]-fr[0])<r&&v(Zt[1]-fr[1])<r}function Tr(Zt,fr,Yr,qr){this.x=Zt,this.z=fr,this.o=Yr,this.e=qr,this.v=!1,this.n=this.p=null}function Mr(Zt,fr,Yr,qr,ba){var Ka=[],oi=[],yi,ki;if(Zt.forEach(function(rn){if(!((Kn=rn.length-1)<=0)){var Kn,Wn=rn[0],Jn=rn[Kn],no;if(br(Wn,Jn)){if(!Wn[2]&&!Jn[2]){for(ba.lineStart(),yi=0;yi<Kn;++yi)ba.point((Wn=rn[yi])[0],Wn[1]);ba.lineEnd();return}Jn[0]+=2*r}Ka.push(no=new Tr(Wn,rn,null,!0)),oi.push(no.o=new Tr(Wn,null,no,!1)),Ka.push(no=new Tr(Jn,rn,null,!1)),oi.push(no.o=new Tr(Jn,null,no,!0))}}),!!Ka.length){for(oi.sort(fr),Fr(Ka),Fr(oi),yi=0,ki=oi.length;yi<ki;++yi)oi[yi].e=Yr=!Yr;for(var Bi=Ka[0],li,_i;;){for(var vi=Bi,ti=!0;vi.v;)if((vi=vi.n)===Bi)return;li=vi.z,ba.lineStart();do{if(vi.v=vi.o.v=!0,vi.e){if(ti)for(yi=0,ki=li.length;yi<ki;++yi)ba.point((_i=li[yi])[0],_i[1]);else qr(vi.x,vi.n.x,1,ba);vi=vi.n}else{if(ti)for(li=vi.p.z,yi=li.length-1;yi>=0;--yi)ba.point((_i=li[yi])[0],_i[1]);else qr(vi.x,vi.p.x,-1,ba);vi=vi.p}vi=vi.o,li=vi.z,ti=!ti}while(!vi.v);ba.lineEnd()}}}function Fr(Zt){if(fr=Zt.length){for(var fr,Yr=0,qr=Zt[0],ba;++Yr<fr;)qr.n=ba=Zt[Yr],ba.p=qr,qr=ba;qr.n=ba=Zt[0],ba.p=qr}}var Lr=A();function Jr(Zt){return v(Zt[0])<=a?Zt[0]:b(Zt[0])*((v(Zt[0])+a)%s-a)}function oa(Zt,fr){var Yr=Jr(fr),qr=fr[1],ba=m(qr),Ka=[m(Yr),-l(Yr),0],oi=0,yi=0;Lr.reset(),ba===1?qr=i+r:ba===-1&&(qr=-i-r);for(var ki=0,Bi=Zt.length;ki<Bi;++ki)if(_i=(li=Zt[ki]).length)for(var li,_i,vi=li[_i-1],ti=Jr(vi),rn=vi[1]/2+n,Kn=m(rn),Wn=l(rn),Jn=0;Jn<_i;++Jn,ti=en,Kn=co,Wn=Wo,vi=no){var no=li[Jn],en=Jr(no),Ri=no[1]/2+n,co=m(Ri),Wo=l(Ri),bs=en-ti,Xs=bs>=0?1:-1,Ms=Xs*bs,Hs=Ms>a,vs=Kn*co;if(Lr.add(T(vs*Xs*m(Ms),Wn*Wo+vs*l(Ms))),oi+=Hs?bs+Xs*s:bs,Hs^ti>=Yr^en>=Yr){var Il=be(ie(vi),ie(no));Ie(Il);var fl=be(Ka,Il);Ie(fl);var tl=(Hs^bs>=0?-1:1)*f(fl[2]);(qr>tl||qr===tl&&(Il[0]||Il[1]))&&(yi+=Hs^bs>=0?1:-1)}}return(oi<-r||oi<r&&Lr<-r)^yi&1}function ca(Zt,fr,Yr,qr){return function(ba){var Ka=fr(ba),oi=kr(),yi=fr(oi),ki=!1,Bi,li,_i,vi={point:ti,lineStart:Kn,lineEnd:Wn,polygonStart:function(){vi.point=Jn,vi.lineStart=no,vi.lineEnd=en,li=[],Bi=[]},polygonEnd:function(){vi.point=ti,vi.lineStart=Kn,vi.lineEnd=Wn,li=x.merge(li);var Ri=oa(Bi,qr);li.length?(ki||(ba.polygonStart(),ki=!0),Mr(li,ir,Ri,Yr,ba)):Ri&&(ki||(ba.polygonStart(),ki=!0),ba.lineStart(),Yr(null,null,1,ba),ba.lineEnd()),ki&&(ba.polygonEnd(),ki=!1),li=Bi=null},sphere:function(){ba.polygonStart(),ba.lineStart(),Yr(null,null,1,ba),ba.lineEnd(),ba.polygonEnd()}};function ti(Ri,co){Zt(Ri,co)&&ba.point(Ri,co)}function rn(Ri,co){Ka.point(Ri,co)}function Kn(){vi.point=rn,Ka.lineStart()}function Wn(){vi.point=ti,Ka.lineEnd()}function Jn(Ri,co){_i.push([Ri,co]),yi.point(Ri,co)}function no(){yi.lineStart(),_i=[]}function en(){Jn(_i[0][0],_i[0][1]),yi.lineEnd();var Ri=yi.clean(),co=oi.result(),Wo,bs=co.length,Xs,Ms,Hs;if(_i.pop(),Bi.push(_i),_i=null,!!bs){if(Ri&1){if(Ms=co[0],(Xs=Ms.length-1)>0){for(ki||(ba.polygonStart(),ki=!0),ba.lineStart(),Wo=0;Wo<Xs;++Wo)ba.point((Hs=Ms[Wo])[0],Hs[1]);ba.lineEnd()}return}bs>1&&Ri&2&&co.push(co.pop().concat(co.shift())),li.push(co.filter(kt))}}return vi}}function kt(Zt){return Zt.length>1}function ir(Zt,fr){return((Zt=Zt.x)[0]<0?Zt[1]-i-r:i-Zt[1])-((fr=fr.x)[0]<0?fr[1]-i-r:i-fr[1])}var mr=ca(function(){return!0},$r,Ba,[-a,-i]);function $r(Zt){var fr=NaN,Yr=NaN,qr=NaN,ba;return{lineStart:function(){Zt.lineStart(),ba=1},point:function(Ka,oi){var yi=Ka>0?a:-a,ki=v(Ka-fr);v(ki-a)<r?(Zt.point(fr,Yr=(Yr+oi)/2>0?i:-i),Zt.point(qr,Yr),Zt.lineEnd(),Zt.lineStart(),Zt.point(yi,Yr),Zt.point(Ka,Yr),ba=0):qr!==yi&&ki>=a&&(v(fr-qr)<r&&(fr-=qr*r),v(Ka-yi)<r&&(Ka-=yi*r),Yr=ma(fr,Yr,Ka,oi),Zt.point(qr,Yr),Zt.lineEnd(),Zt.lineStart(),Zt.point(yi,Yr),ba=0),Zt.point(fr=Ka,Yr=oi),qr=yi},lineEnd:function(){Zt.lineEnd(),fr=Yr=NaN},clean:function(){return 2-ba}}}function ma(Zt,fr,Yr,qr){var ba,Ka,oi=m(Zt-Yr);return v(oi)>r?p((m(fr)*(Ka=l(qr))*m(Yr)-m(qr)*(ba=l(fr))*m(Zt))/(ba*Ka*oi)):(fr+qr)/2}function Ba(Zt,fr,Yr,qr){var ba;if(Zt==null)ba=Yr*i,qr.point(-a,ba),qr.point(0,ba),qr.point(a,ba),qr.point(a,0),qr.point(a,-ba),qr.point(0,-ba),qr.point(-a,-ba),qr.point(-a,0),qr.point(-a,ba);else if(v(Zt[0]-fr[0])>r){var Ka=Zt[0]<fr[0]?a:-a;ba=Yr*Ka/2,qr.point(-Ka,ba),qr.point(0,ba),qr.point(Ka,ba)}else qr.point(fr[0],fr[1])}function Ca(Zt){var fr=l(Zt),Yr=6*h,qr=fr>0,ba=v(fr)>r;function Ka(li,_i,vi,ti){mt(ti,Zt,Yr,vi,li,_i)}function oi(li,_i){return l(li)*l(_i)>fr}function yi(li){var _i,vi,ti,rn,Kn;return{lineStart:function(){rn=ti=!1,Kn=1},point:function(Wn,Jn){var no=[Wn,Jn],en,Ri=oi(Wn,Jn),co=qr?Ri?0:Bi(Wn,Jn):Ri?Bi(Wn+(Wn<0?a:-a),Jn):0;if(!_i&&(rn=ti=Ri)&&li.lineStart(),Ri!==ti&&(en=ki(_i,no),(!en||br(_i,en)||br(no,en))&&(no[2]=1)),Ri!==ti)Kn=0,Ri?(li.lineStart(),en=ki(no,_i),li.point(en[0],en[1])):(en=ki(_i,no),li.point(en[0],en[1],2),li.lineEnd()),_i=en;else if(ba&&_i&&qr^Ri){var Wo;!(co&vi)&&(Wo=ki(no,_i,!0))&&(Kn=0,qr?(li.lineStart(),li.point(Wo[0][0],Wo[0][1]),li.point(Wo[1][0],Wo[1][1]),li.lineEnd()):(li.point(Wo[1][0],Wo[1][1]),li.lineEnd(),li.lineStart(),li.point(Wo[0][0],Wo[0][1],3)))}Ri&&(!_i||!br(_i,no))&&li.point(no[0],no[1]),_i=no,ti=Ri,vi=co},lineEnd:function(){ti&&li.lineEnd(),_i=null},clean:function(){return Kn|(rn&&ti)<<1}}}function ki(li,_i,vi){var ti=ie(li),rn=ie(_i),Kn=[1,0,0],Wn=be(ti,rn),Jn=fe(Wn,Wn),no=Wn[0],en=Jn-no*no;if(!en)return!vi&&li;var Ri=fr*Jn/en,co=-fr*no/en,Wo=be(Kn,Wn),bs=Be(Kn,Ri),Xs=Be(Wn,co);Ae(bs,Xs);var Ms=Wo,Hs=fe(bs,Ms),vs=fe(Ms,Ms),Il=Hs*Hs-vs*(fe(bs,bs)-1);if(!(Il<0)){var fl=d(Il),tl=Be(Ms,(-Hs-fl)/vs);if(Ae(tl,bs),tl=ee(tl),!vi)return tl;var Ln=li[0],Ao=_i[0],js=li[1],Ts=_i[1],nu;Ao<Ln&&(nu=Ln,Ln=Ao,Ao=nu);var Pu=Ao-Ln,ec=v(Pu-a)<r,tf=ec||Pu<r;if(!ec&&Ts<js&&(nu=js,js=Ts,Ts=nu),tf?ec?js+Ts>0^tl[1]<(v(tl[0]-Ln)<r?js:Ts):js<=tl[1]&&tl[1]<=Ts:Pu>a^(Ln<=tl[0]&&tl[0]<=Ao)){var yu=Be(Ms,(-Hs+fl)/vs);return Ae(yu,bs),[tl,ee(yu)]}}}function Bi(li,_i){var vi=qr?Zt:a-Zt,ti=0;return li<-vi?ti|=1:li>vi&&(ti|=2),_i<-vi?ti|=4:_i>vi&&(ti|=8),ti}return ca(oi,yi,Ka,qr?[0,-Zt]:[-a,Zt-a])}function da(Zt,fr,Yr,qr,ba,Ka){var oi=Zt[0],yi=Zt[1],ki=fr[0],Bi=fr[1],li=0,_i=1,vi=ki-oi,ti=Bi-yi,rn;if(rn=Yr-oi,!(!vi&&rn>0)){if(rn/=vi,vi<0){if(rn<li)return;rn<_i&&(_i=rn)}else if(vi>0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=ba-oi,!(!vi&&rn<0)){if(rn/=vi,vi<0){if(rn>_i)return;rn>li&&(li=rn)}else if(vi>0){if(rn<li)return;rn<_i&&(_i=rn)}if(rn=qr-yi,!(!ti&&rn>0)){if(rn/=ti,ti<0){if(rn<li)return;rn<_i&&(_i=rn)}else if(ti>0){if(rn>_i)return;rn>li&&(li=rn)}if(rn=Ka-yi,!(!ti&&rn<0)){if(rn/=ti,ti<0){if(rn>_i)return;rn>li&&(li=rn)}else if(ti>0){if(rn<li)return;rn<_i&&(_i=rn)}return li>0&&(Zt[0]=oi+li*vi,Zt[1]=yi+li*ti),_i<1&&(fr[0]=oi+_i*vi,fr[1]=yi+_i*ti),!0}}}}}var Sa=1e9,Ti=-Sa;function ai(Zt,fr,Yr,qr){function ba(Bi,li){return Zt<=Bi&&Bi<=Yr&&fr<=li&&li<=qr}function Ka(Bi,li,_i,vi){var ti=0,rn=0;if(Bi==null||(ti=oi(Bi,_i))!==(rn=oi(li,_i))||ki(Bi,li)<0^_i>0)do vi.point(ti===0||ti===3?Zt:Yr,ti>1?qr:fr);while((ti=(ti+_i+4)%4)!==rn);else vi.point(li[0],li[1])}function oi(Bi,li){return v(Bi[0]-Zt)<r?li>0?0:3:v(Bi[0]-Yr)<r?li>0?2:1:v(Bi[1]-fr)<r?li>0?1:0:li>0?3:2}function yi(Bi,li){return ki(Bi.x,li.x)}function ki(Bi,li){var _i=oi(Bi,1),vi=oi(li,1);return _i!==vi?_i-vi:_i===0?li[1]-Bi[1]:_i===1?Bi[0]-li[0]:_i===2?Bi[1]-li[1]:li[0]-Bi[0]}return function(Bi){var li=Bi,_i=kr(),vi,ti,rn,Kn,Wn,Jn,no,en,Ri,co,Wo,bs={point:Xs,lineStart:Il,lineEnd:fl,polygonStart:Hs,polygonEnd:vs};function Xs(Ln,Ao){ba(Ln,Ao)&&li.point(Ln,Ao)}function Ms(){for(var Ln=0,Ao=0,js=ti.length;Ao<js;++Ao)for(var Ts=ti[Ao],nu=1,Pu=Ts.length,ec=Ts[0],tf,yu,Bc=ec[0],Iu=ec[1];nu<Pu;++nu)tf=Bc,yu=Iu,ec=Ts[nu],Bc=ec[0],Iu=ec[1],yu<=qr?Iu>qr&&(Bc-tf)*(qr-yu)>(Iu-yu)*(Zt-tf)&&++Ln:Iu<=qr&&(Bc-tf)*(qr-yu)<(Iu-yu)*(Zt-tf)&&--Ln;return Ln}function Hs(){li=_i,vi=[],ti=[],Wo=!0}function vs(){var Ln=Ms(),Ao=Wo&&Ln,js=(vi=x.merge(vi)).length;(Ao||js)&&(Bi.polygonStart(),Ao&&(Bi.lineStart(),Ka(null,null,1,Bi),Bi.lineEnd()),js&&Mr(vi,yi,Ln,Ka,Bi),Bi.polygonEnd()),li=Bi,vi=ti=rn=null}function Il(){bs.point=tl,ti&&ti.push(rn=[]),co=!0,Ri=!1,no=en=NaN}function fl(){vi&&(tl(Kn,Wn),Jn&&Ri&&_i.rejoin(),vi.push(_i.result())),bs.point=Xs,Ri&&li.lineEnd()}function tl(Ln,Ao){var js=ba(Ln,Ao);if(ti&&rn.push([Ln,Ao]),co)Kn=Ln,Wn=Ao,Jn=js,co=!1,js&&(li.lineStart(),li.point(Ln,Ao));else if(js&&Ri)li.point(Ln,Ao);else{var Ts=[no=Math.max(Ti,Math.min(Sa,no)),en=Math.max(Ti,Math.min(Sa,en))],nu=[Ln=Math.max(Ti,Math.min(Sa,Ln)),Ao=Math.max(Ti,Math.min(Sa,Ao))];da(Ts,nu,Zt,fr,Yr,qr)?(Ri||(li.lineStart(),li.point(Ts[0],Ts[1])),li.point(nu[0],nu[1]),js||li.lineEnd(),Wo=!1):js&&(li.lineStart(),li.point(Ln,Ao),Wo=!1)}no=Ln,en=Ao,Ri=js}return bs}}function an(){var Zt=0,fr=0,Yr=960,qr=500,ba,Ka,oi;return oi={stream:function(yi){return ba&&Ka===yi?ba:ba=ai(Zt,fr,Yr,qr)(Ka=yi)},extent:function(yi){return arguments.length?(Zt=+yi[0][0],fr=+yi[0][1],Yr=+yi[1][0],qr=+yi[1][1],ba=Ka=null,oi):[[Zt,fr],[Yr,qr]]}}}var sn=A(),Mn,On,$n,Cn={sphere:L,point:L,lineStart:Lo,lineEnd:L,polygonStart:L,polygonEnd:L};function Lo(){Cn.point=Jo,Cn.lineEnd=Xi}function Xi(){Cn.point=Cn.lineEnd=L}function Jo(Zt,fr){Zt*=h,fr*=h,Mn=Zt,On=m(fr),$n=l(fr),Cn.point=zo}function zo(Zt,fr){Zt*=h,fr*=h;var Yr=m(fr),qr=l(fr),ba=v(Zt-Mn),Ka=l(ba),oi=m(ba),yi=qr*oi,ki=$n*Yr-On*qr*Ka,Bi=On*Yr+$n*qr*Ka;sn.add(T(d(yi*yi+ki*ki),Bi)),Mn=Zt,On=Yr,$n=qr}function as(Zt){return sn.reset(),N(Zt,Cn),+sn}var Pn=[null,null],go={type:"LineString",coordinates:Pn};function In(Zt,fr){return Pn[0]=Zt,Pn[1]=fr,as(go)}var Do={Feature:function(Zt,fr){return Qo(Zt.geometry,fr)},FeatureCollection:function(Zt,fr){for(var Yr=Zt.features,qr=-1,ba=Yr.length;++qr<ba;)if(Qo(Yr[qr].geometry,fr))return!0;return!1}},Ho={Sphere:function(){return!0},Point:function(Zt,fr){return Xn(Zt.coordinates,fr)},MultiPoint:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(Xn(Yr[qr],fr))return!0;return!1},LineString:function(Zt,fr){return po(Zt.coordinates,fr)},MultiLineString:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(po(Yr[qr],fr))return!0;return!1},Polygon:function(Zt,fr){return ys(Zt.coordinates,fr)},MultiPolygon:function(Zt,fr){for(var Yr=Zt.coordinates,qr=-1,ba=Yr.length;++qr<ba;)if(ys(Yr[qr],fr))return!0;return!1},GeometryCollection:function(Zt,fr){for(var Yr=Zt.geometries,qr=-1,ba=Yr.length;++qr<ba;)if(Qo(Yr[qr],fr))return!0;return!1}};function Qo(Zt,fr){return Zt&&Ho.hasOwnProperty(Zt.type)?Ho[Zt.type](Zt,fr):!1}function Xn(Zt,fr){return In(Zt,fr)===0}function po(Zt,fr){for(var Yr,qr,ba,Ka=0,oi=Zt.length;Ka<oi;Ka++){if(qr=In(Zt[Ka],fr),qr===0||Ka>0&&(ba=In(Zt[Ka],Zt[Ka-1]),ba>0&&Yr<=ba&&qr<=ba&&(Yr+qr-ba)*(1-Math.pow((Yr-qr)/ba,2))<o*ba))return!0;Yr=qr}return!1}function ys(Zt,fr){return!!oa(Zt.map(Is),Fs(fr))}function Is(Zt){return Zt=Zt.map(Fs),Zt.pop(),Zt}function Fs(Zt){return[Zt[0]*h,Zt[1]*h]}function $o(Zt,fr){return(Zt&&Do.hasOwnProperty(Zt.type)?Do[Zt.type]:Qo)(Zt,fr)}function fi(Zt,fr,Yr){var qr=x.range(Zt,fr-r,Yr).concat(fr);return function(ba){return qr.map(function(Ka){return[ba,Ka]})}}function mn(Zt,fr,Yr){var qr=x.range(Zt,fr-r,Yr).concat(fr);return function(ba){return qr.map(function(Ka){return[Ka,ba]})}}function ol(){var Zt,fr,Yr,qr,ba,Ka,oi,yi,ki=10,Bi=ki,li=90,_i=360,vi,ti,rn,Kn,Wn=2.5;function Jn(){return{type:"MultiLineString",coordinates:no()}}function no(){return x.range(_(qr/li)*li,Yr,li).map(rn).concat(x.range(_(yi/_i)*_i,oi,_i).map(Kn)).concat(x.range(_(fr/ki)*ki,Zt,ki).filter(function(en){return v(en%li)>r}).map(vi)).concat(x.range(_(Ka/Bi)*Bi,ba,Bi).filter(function(en){return v(en%_i)>r}).map(ti))}return Jn.lines=function(){return no().map(function(en){return{type:"LineString",coordinates:en}})},Jn.outline=function(){return{type:"Polygon",coordinates:[rn(qr).concat(Kn(oi).slice(1),rn(Yr).reverse().slice(1),Kn(yi).reverse().slice(1))]}},Jn.extent=function(en){return arguments.length?Jn.extentMajor(en).extentMinor(en):Jn.extentMinor()},Jn.extentMajor=function(en){return arguments.length?(qr=+en[0][0],Yr=+en[1][0],yi=+en[0][1],oi=+en[1][1],qr>Yr&&(en=qr,qr=Yr,Yr=en),yi>oi&&(en=yi,yi=oi,oi=en),Jn.precision(Wn)):[[qr,yi],[Yr,oi]]},Jn.extentMinor=function(en){return arguments.length?(fr=+en[0][0],Zt=+en[1][0],Ka=+en[0][1],ba=+en[1][1],fr>Zt&&(en=fr,fr=Zt,Zt=en),Ka>ba&&(en=Ka,Ka=ba,ba=en),Jn.precision(Wn)):[[fr,Ka],[Zt,ba]]},Jn.step=function(en){return arguments.length?Jn.stepMajor(en).stepMinor(en):Jn.stepMinor()},Jn.stepMajor=function(en){return arguments.length?(li=+en[0],_i=+en[1],Jn):[li,_i]},Jn.stepMinor=function(en){return arguments.length?(ki=+en[0],Bi=+en[1],Jn):[ki,Bi]},Jn.precision=function(en){return arguments.length?(Wn=+en,vi=fi(Ka,ba,90),ti=mn(fr,Zt,Wn),rn=fi(yi,oi,90),Kn=mn(qr,Yr,Wn),Jn):Wn},Jn.extentMajor([[-180,-90+r],[180,90-r]]).extentMinor([[-180,-80-r],[180,80+r]])}function Os(){return ol()()}function so(Zt,fr){var Yr=Zt[0]*h,qr=Zt[1]*h,ba=fr[0]*h,Ka=fr[1]*h,oi=l(qr),yi=m(qr),ki=l(Ka),Bi=m(Ka),li=oi*l(Yr),_i=oi*m(Yr),vi=ki*l(ba),ti=ki*m(ba),rn=2*f(d(P(Ka-qr)+oi*ki*P(ba-Yr))),Kn=m(rn),Wn=rn?function(Jn){var no=m(Jn*=rn)/Kn,en=m(rn-Jn)/Kn,Ri=en*li+no*vi,co=en*_i+no*ti,Wo=en*yi+no*Bi;return[T(co,Ri)*c,T(Wo,d(Ri*Ri+co*co))*c]}:function(){return[Yr*c,qr*c]};return Wn.distance=rn,Wn}function Ns(Zt){return Zt}var fs=A(),al=A(),vl,ji,To,Yn,_s={point:L,lineStart:L,lineEnd:L,polygonStart:function(){_s.lineStart=Yo,_s.lineEnd=Zu},polygonEnd:function(){_s.lineStart=_s.lineEnd=_s.point=L,fs.add(v(al)),al.reset()},result:function(){var Zt=fs/2;return fs.reset(),Zt}};function Yo(){_s.point=Nn}function Nn(Zt,fr){_s.point=Wl,vl=To=Zt,ji=Yn=fr}function Wl(Zt,fr){al.add(Yn*Zt-To*fr),To=Zt,Yn=fr}function Zu(){Wl(vl,ji)}var ml=1/0,Bu=ml,El=-ml,qs=El,Jl={point:Nu,lineStart:L,lineEnd:L,polygonStart:L,polygonEnd:L,result:function(){var Zt=[[ml,Bu],[El,qs]];return El=qs=-(Bu=ml=1/0),Zt}};function Nu(Zt,fr){Zt<ml&&(ml=Zt),Zt>El&&(El=Zt),fr<Bu&&(Bu=fr),fr>qs&&(qs=fr)}var Ic=0,Xu=0,Th=0,bf=0,Rs=0,Yc=0,If=0,Zl=0,yl=0,oc,_c,Zs,_l,Bs={point:$s,lineStart:sc,lineEnd:Qs,polygonStart:function(){Bs.lineStart=fp,Bs.lineEnd=es},polygonEnd:function(){Bs.point=$s,Bs.lineStart=sc,Bs.lineEnd=Qs},result:function(){var Zt=yl?[If/yl,Zl/yl]:Yc?[bf/Yc,Rs/Yc]:Th?[Ic/Th,Xu/Th]:[NaN,NaN];return Ic=Xu=Th=bf=Rs=Yc=If=Zl=yl=0,Zt}};function $s(Zt,fr){Ic+=Zt,Xu+=fr,++Th}function sc(){Bs.point=zl}function zl(Zt,fr){Bs.point=Yu,$s(Zs=Zt,_l=fr)}function Yu(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,$s(Zs=Zt,_l=fr)}function Qs(){Bs.point=$s}function fp(){Bs.point=Wh}function es(){Ss(oc,_c)}function Wh(Zt,fr){Bs.point=Ss,$s(oc=Zs=Zt,_c=_l=fr)}function Ss(Zt,fr){var Yr=Zt-Zs,qr=fr-_l,ba=d(Yr*Yr+qr*qr);bf+=ba*(Zs+Zt)/2,Rs+=ba*(_l+fr)/2,Yc+=ba,ba=_l*Zt-Zs*fr,If+=ba*(Zs+Zt),Zl+=ba*(_l+fr),yl+=ba*3,$s(Zs=Zt,_l=fr)}function So(Zt){this._context=Zt}So.prototype={_radius:4.5,pointRadius:function(Zt){return this._radius=Zt,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._context.moveTo(Zt,fr),this._point=1;break}case 1:{this._context.lineTo(Zt,fr);break}default:{this._context.moveTo(Zt+this._radius,fr),this._context.arc(Zt,fr,this._radius,0,s);break}}},result:L};var hf=A(),Ku,cu,Zf,Rc,pf,Fl={point:L,lineStart:function(){Fl.point=lh},lineEnd:function(){Ku&&Xf(cu,Zf),Fl.point=L},polygonStart:function(){Ku=!0},polygonEnd:function(){Ku=null},result:function(){var Zt=+hf;return hf.reset(),Zt}};function lh(Zt,fr){Fl.point=Xf,cu=Rc=Zt,Zf=pf=fr}function Xf(Zt,fr){Rc-=Zt,pf-=fr,hf.add(d(Rc*Rc+pf*pf)),Rc=Zt,pf=fr}function Rf(){this._string=[]}Rf.prototype={_radius:4.5,_circle:Kc(4.5),pointRadius:function(Zt){return(Zt=+Zt)!==this._radius&&(this._radius=Zt,this._circle=null),this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._string.push("Z"),this._point=NaN},point:function(Zt,fr){switch(this._point){case 0:{this._string.push("M",Zt,",",fr),this._point=1;break}case 1:{this._string.push("L",Zt,",",fr);break}default:{this._circle==null&&(this._circle=Kc(this._radius)),this._string.push("M",Zt,",",fr,this._circle);break}}},result:function(){if(this._string.length){var Zt=this._string.join("");return this._string=[],Zt}else return null}};function Kc(Zt){return"m0,"+Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+-2*Zt+"a"+Zt+","+Zt+" 0 1,1 0,"+2*Zt+"z"}function Yf(Zt,fr){var Yr=4.5,qr,ba;function Ka(oi){return oi&&(typeof Yr=="function"&&ba.pointRadius(+Yr.apply(this,arguments)),N(oi,qr(ba))),ba.result()}return Ka.area=function(oi){return N(oi,qr(_s)),_s.result()},Ka.measure=function(oi){return N(oi,qr(Fl)),Fl.result()},Ka.bounds=function(oi){return N(oi,qr(Jl)),Jl.result()},Ka.centroid=function(oi){return N(oi,qr(Bs)),Bs.result()},Ka.projection=function(oi){return arguments.length?(qr=oi==null?(Zt=null,Ns):(Zt=oi).stream,Ka):Zt},Ka.context=function(oi){return arguments.length?(ba=oi==null?(fr=null,new Rf):new So(fr=oi),typeof Yr!="function"&&ba.pointRadius(Yr),Ka):fr},Ka.pointRadius=function(oi){return arguments.length?(Yr=typeof oi=="function"?oi:(ba.pointRadius(+oi),+oi),Ka):Yr},Ka.projection(Zt).context(fr)}function uh(Zt){return{stream:Ju(Zt)}}function Ju(Zt){return function(fr){var Yr=new Df;for(var qr in Zt)Yr[qr]=Zt[qr];return Yr.stream=fr,Yr}}function Df(){}Df.prototype={constructor:Df,point:function(Zt,fr){this.stream.point(Zt,fr)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function Dc(Zt,fr,Yr){var qr=Zt.clipExtent&&Zt.clipExtent();return Zt.scale(150).translate([0,0]),qr!=null&&Zt.clipExtent(null),N(Yr,Zt.stream(Jl)),fr(Jl.result()),qr!=null&&Zt.clipExtent(qr),Zt}function Jc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=fr[1][0]-fr[0][0],Ka=fr[1][1]-fr[0][1],oi=Math.min(ba/(qr[1][0]-qr[0][0]),Ka/(qr[1][1]-qr[0][1])),yi=+fr[0][0]+(ba-oi*(qr[1][0]+qr[0][0]))/2,ki=+fr[0][1]+(Ka-oi*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*oi).translate([yi,ki])},Yr)}function Eu(Zt,fr,Yr){return Jc(Zt,[[0,0],fr],Yr)}function wf(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][0]-qr[0][0]),oi=(ba-Ka*(qr[1][0]+qr[0][0]))/2,yi=-Ka*qr[0][1];Zt.scale(150*Ka).translate([oi,yi])},Yr)}function zc(Zt,fr,Yr){return Dc(Zt,function(qr){var ba=+fr,Ka=ba/(qr[1][1]-qr[0][1]),oi=-Ka*qr[0][0],yi=(ba-Ka*(qr[1][1]+qr[0][1]))/2;Zt.scale(150*Ka).translate([oi,yi])},Yr)}var Us=16,Kf=l(30*h);function Zh(Zt,fr){return+fr?df(Zt,fr):ch(Zt)}function ch(Zt){return Ju({point:function(fr,Yr){fr=Zt(fr,Yr),this.stream.point(fr[0],fr[1])}})}function df(Zt,fr){function Yr(qr,ba,Ka,oi,yi,ki,Bi,li,_i,vi,ti,rn,Kn,Wn){var Jn=Bi-qr,no=li-ba,en=Jn*Jn+no*no;if(en>4*fr&&Kn--){var Ri=oi+vi,co=yi+ti,Wo=ki+rn,bs=d(Ri*Ri+co*co+Wo*Wo),Xs=f(Wo/=bs),Ms=v(v(Wo)-1)<r||v(Ka-_i)<r?(Ka+_i)/2:T(co,Ri),Hs=Zt(Ms,Xs),vs=Hs[0],Il=Hs[1],fl=vs-qr,tl=Il-ba,Ln=no*fl-Jn*tl;(Ln*Ln/en>fr||v((Jn*fl+no*tl)/en-.5)>.3||oi*vi+yi*ti+ki*rn<Kf)&&(Yr(qr,ba,Ka,oi,yi,ki,vs,Il,Ms,Ri/=bs,co/=bs,Wo,Kn,Wn),Wn.point(vs,Il),Yr(vs,Il,Ms,Ri,co,Wo,Bi,li,_i,vi,ti,rn,Kn,Wn))}}return function(qr){var ba,Ka,oi,yi,ki,Bi,li,_i,vi,ti,rn,Kn,Wn={point:Jn,lineStart:no,lineEnd:Ri,polygonStart:function(){qr.polygonStart(),Wn.lineStart=co},polygonEnd:function(){qr.polygonEnd(),Wn.lineStart=no}};function Jn(Xs,Ms){Xs=Zt(Xs,Ms),qr.point(Xs[0],Xs[1])}function no(){_i=NaN,Wn.point=en,qr.lineStart()}function en(Xs,Ms){var Hs=ie([Xs,Ms]),vs=Zt(Xs,Ms);Yr(_i,vi,li,ti,rn,Kn,_i=vs[0],vi=vs[1],li=Xs,ti=Hs[0],rn=Hs[1],Kn=Hs[2],Us,qr),qr.point(_i,vi)}function Ri(){Wn.point=Jn,qr.lineEnd()}function co(){no(),Wn.point=Wo,Wn.lineEnd=bs}function Wo(Xs,Ms){en(ba=Xs,Ms),Ka=_i,oi=vi,yi=ti,ki=rn,Bi=Kn,Wn.point=en}function bs(){Yr(_i,vi,li,ti,rn,Kn,Ka,oi,ba,yi,ki,Bi,Us,qr),Wn.lineEnd=Ri,Ri()}return Wn}}var Ah=Ju({point:function(Zt,fr){this.stream.point(Zt*h,fr*h)}});function ku(Zt){return Ju({point:function(fr,Yr){var qr=Zt(fr,Yr);return this.stream.point(qr[0],qr[1])}})}function fh(Zt,fr,Yr,qr,ba){function Ka(oi,yi){return oi*=qr,yi*=ba,[fr+Zt*oi,Yr-Zt*yi]}return Ka.invert=function(oi,yi){return[(oi-fr)/Zt*qr,(Yr-yi)/Zt*ba]},Ka}function ru(Zt,fr,Yr,qr,ba,Ka){var oi=l(Ka),yi=m(Ka),ki=oi*Zt,Bi=yi*Zt,li=oi/Zt,_i=yi/Zt,vi=(yi*Yr-oi*fr)/Zt,ti=(yi*fr+oi*Yr)/Zt;function rn(Kn,Wn){return Kn*=qr,Wn*=ba,[ki*Kn-Bi*Wn+fr,Yr-Bi*Kn-ki*Wn]}return rn.invert=function(Kn,Wn){return[qr*(li*Kn-_i*Wn+vi),ba*(ti-_i*Kn-li*Wn)]},rn}function Cu(Zt){return xc(function(){return Zt})()}function xc(Zt){var fr,Yr=150,qr=480,ba=250,Ka=0,oi=0,yi=0,ki=0,Bi=0,li,_i=0,vi=1,ti=1,rn=null,Kn=mr,Wn=null,Jn,no,en,Ri=Ns,co=.5,Wo,bs,Xs,Ms,Hs;function vs(Ln){return Xs(Ln[0]*h,Ln[1]*h)}function Il(Ln){return Ln=Xs.invert(Ln[0],Ln[1]),Ln&&[Ln[0]*c,Ln[1]*c]}vs.stream=function(Ln){return Ms&&Hs===Ln?Ms:Ms=Ah(ku(li)(Kn(Wo(Ri(Hs=Ln)))))},vs.preclip=function(Ln){return arguments.length?(Kn=Ln,rn=void 0,tl()):Kn},vs.postclip=function(Ln){return arguments.length?(Ri=Ln,Wn=Jn=no=en=null,tl()):Ri},vs.clipAngle=function(Ln){return arguments.length?(Kn=+Ln?Ca(rn=Ln*h):(rn=null,mr),tl()):rn*c},vs.clipExtent=function(Ln){return arguments.length?(Ri=Ln==null?(Wn=Jn=no=en=null,Ns):ai(Wn=+Ln[0][0],Jn=+Ln[0][1],no=+Ln[1][0],en=+Ln[1][1]),tl()):Wn==null?null:[[Wn,Jn],[no,en]]},vs.scale=function(Ln){return arguments.length?(Yr=+Ln,fl()):Yr},vs.translate=function(Ln){return arguments.length?(qr=+Ln[0],ba=+Ln[1],fl()):[qr,ba]},vs.center=function(Ln){return arguments.length?(Ka=Ln[0]%360*h,oi=Ln[1]%360*h,fl()):[Ka*c,oi*c]},vs.rotate=function(Ln){return arguments.length?(yi=Ln[0]%360*h,ki=Ln[1]%360*h,Bi=Ln.length>2?Ln[2]%360*h:0,fl()):[yi*c,ki*c,Bi*c]},vs.angle=function(Ln){return arguments.length?(_i=Ln%360*h,fl()):_i*c},vs.reflectX=function(Ln){return arguments.length?(vi=Ln?-1:1,fl()):vi<0},vs.reflectY=function(Ln){return arguments.length?(ti=Ln?-1:1,fl()):ti<0},vs.precision=function(Ln){return arguments.length?(Wo=Zh(bs,co=Ln*Ln),tl()):d(co)},vs.fitExtent=function(Ln,Ao){return Jc(vs,Ln,Ao)},vs.fitSize=function(Ln,Ao){return Eu(vs,Ln,Ao)},vs.fitWidth=function(Ln,Ao){return wf(vs,Ln,Ao)},vs.fitHeight=function(Ln,Ao){return zc(vs,Ln,Ao)};function fl(){var Ln=ru(Yr,0,0,vi,ti,_i).apply(null,fr(Ka,oi)),Ao=(_i?ru:fh)(Yr,qr-Ln[0],ba-Ln[1],vi,ti,_i);return li=Ea(yi,ki,Bi),bs=pa(fr,Ao),Xs=pa(li,bs),Wo=Zh(bs,co),tl()}function tl(){return Ms=Hs=null,vs}return function(){return fr=Zt.apply(this,arguments),vs.invert=fr.invert&&Il,fl()}}function kl(Zt){var fr=0,Yr=a/3,qr=xc(Zt),ba=qr(fr,Yr);return ba.parallels=function(Ka){return arguments.length?qr(fr=Ka[0]*h,Yr=Ka[1]*h):[fr*c,Yr*c]},ba}function Fc(Zt){var fr=l(Zt);function Yr(qr,ba){return[qr*fr,m(ba)/fr]}return Yr.invert=function(qr,ba){return[qr/fr,f(ba*fr)]},Yr}function $u(Zt,fr){var Yr=m(Zt),qr=(Yr+m(fr))/2;if(v(qr)<r)return Fc(Zt);var ba=1+Yr*(2*qr-Yr),Ka=d(ba)/qr;function oi(yi,ki){var Bi=d(ba-2*qr*m(ki))/qr;return[Bi*m(yi*=qr),Ka-Bi*l(yi)]}return oi.invert=function(yi,ki){var Bi=Ka-ki,li=T(yi,v(Bi))*b(Bi);return Bi*qr<0&&(li-=a*b(yi)*b(Bi)),[li/qr,f((ba-(yi*yi+Bi*Bi)*qr*qr)/(2*qr))]},oi}function vu(){return kl($u).scale(155.424).center([0,33.6442])}function xl(){return vu().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function hh(Zt){var fr=Zt.length;return{point:function(Yr,qr){for(var ba=-1;++ba<fr;)Zt[ba].point(Yr,qr)},sphere:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].sphere()},lineStart:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].lineStart()},lineEnd:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].lineEnd()},polygonStart:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].polygonStart()},polygonEnd:function(){for(var Yr=-1;++Yr<fr;)Zt[Yr].polygonEnd()}}}function Sh(){var Zt,fr,Yr=xl(),qr,ba=vu().rotate([154,0]).center([-2,58.5]).parallels([55,65]),Ka,oi=vu().rotate([157,0]).center([-3,19.9]).parallels([8,18]),yi,ki,Bi={point:function(vi,ti){ki=[vi,ti]}};function li(vi){var ti=vi[0],rn=vi[1];return ki=null,qr.point(ti,rn),ki||(Ka.point(ti,rn),ki)||(yi.point(ti,rn),ki)}li.invert=function(vi){var ti=Yr.scale(),rn=Yr.translate(),Kn=(vi[0]-rn[0])/ti,Wn=(vi[1]-rn[1])/ti;return(Wn>=.12&&Wn<.234&&Kn>=-.425&&Kn<-.214?ba:Wn>=.166&&Wn<.234&&Kn>=-.214&&Kn<-.115?oi:Yr).invert(vi)},li.stream=function(vi){return Zt&&fr===vi?Zt:Zt=hh([Yr.stream(fr=vi),ba.stream(vi),oi.stream(vi)])},li.precision=function(vi){return arguments.length?(Yr.precision(vi),ba.precision(vi),oi.precision(vi),_i()):Yr.precision()},li.scale=function(vi){return arguments.length?(Yr.scale(vi),ba.scale(vi*.35),oi.scale(vi),li.translate(Yr.translate())):Yr.scale()},li.translate=function(vi){if(!arguments.length)return Yr.translate();var ti=Yr.scale(),rn=+vi[0],Kn=+vi[1];return qr=Yr.translate(vi).clipExtent([[rn-.455*ti,Kn-.238*ti],[rn+.455*ti,Kn+.238*ti]]).stream(Bi),Ka=ba.translate([rn-.307*ti,Kn+.201*ti]).clipExtent([[rn-.425*ti+r,Kn+.12*ti+r],[rn-.214*ti-r,Kn+.234*ti-r]]).stream(Bi),yi=oi.translate([rn-.205*ti,Kn+.212*ti]).clipExtent([[rn-.214*ti+r,Kn+.166*ti+r],[rn-.115*ti-r,Kn+.234*ti-r]]).stream(Bi),_i()},li.fitExtent=function(vi,ti){return Jc(li,vi,ti)},li.fitSize=function(vi,ti){return Eu(li,vi,ti)},li.fitWidth=function(vi,ti){return wf(li,vi,ti)},li.fitHeight=function(vi,ti){return zc(li,vi,ti)};function _i(){return Zt=fr=null,li}return li.scale(1070)}function Uu(Zt){return function(fr,Yr){var qr=l(fr),ba=l(Yr),Ka=Zt(qr*ba);return[Ka*ba*m(fr),Ka*m(Yr)]}}function bc(Zt){return function(fr,Yr){var qr=d(fr*fr+Yr*Yr),ba=Zt(qr),Ka=m(ba),oi=l(ba);return[T(fr*Ka,qr*oi),f(qr&&Yr*Ka/qr)]}}var lc=Uu(function(Zt){return d(2/(1+Zt))});lc.invert=bc(function(Zt){return 2*f(Zt/2)});function hp(){return Cu(lc).scale(124.75).clipAngle(180-.001)}var vf=Uu(function(Zt){return(Zt=y(Zt))&&Zt/m(Zt)});vf.invert=bc(function(Zt){return Zt});function Tf(){return Cu(vf).scale(79.4188).clipAngle(180-.001)}function Lu(Zt,fr){return[Zt,S(u((i+fr)/2))]}Lu.invert=function(Zt,fr){return[Zt,2*p(w(fr))-i]};function zf(){return au(Lu).scale(961/s)}function au(Zt){var fr=Cu(Zt),Yr=fr.center,qr=fr.scale,ba=fr.translate,Ka=fr.clipExtent,oi=null,yi,ki,Bi;fr.scale=function(_i){return arguments.length?(qr(_i),li()):qr()},fr.translate=function(_i){return arguments.length?(ba(_i),li()):ba()},fr.center=function(_i){return arguments.length?(Yr(_i),li()):Yr()},fr.clipExtent=function(_i){return arguments.length?(_i==null?oi=yi=ki=Bi=null:(oi=+_i[0][0],yi=+_i[0][1],ki=+_i[1][0],Bi=+_i[1][1]),li()):oi==null?null:[[oi,yi],[ki,Bi]]};function li(){var _i=a*qr(),vi=fr($a(fr.rotate()).invert([0,0]));return Ka(oi==null?[[vi[0]-_i,vi[1]-_i],[vi[0]+_i,vi[1]+_i]]:Zt===Lu?[[Math.max(vi[0]-_i,oi),yi],[Math.min(vi[0]+_i,ki),Bi]]:[[oi,Math.max(vi[1]-_i,yi)],[ki,Math.min(vi[1]+_i,Bi)]])}return li()}function $c(Zt){return u((i+Zt)/2)}function Mh(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):S(Yr/l(fr))/S($c(fr)/$c(Zt)),ba=Yr*E($c(Zt),qr)/qr;if(!qr)return Lu;function Ka(oi,yi){ba>0?yi<-i+r&&(yi=-i+r):yi>i-r&&(yi=i-r);var ki=ba/E($c(yi),qr);return[ki*m(qr*oi),ba-ki*l(qr*oi)]}return Ka.invert=function(oi,yi){var ki=ba-yi,Bi=b(qr)*d(oi*oi+ki*ki),li=T(oi,v(ki))*b(ki);return ki*qr<0&&(li-=a*b(oi)*b(ki)),[li/qr,2*p(E(ba/Bi,1/qr))-i]},Ka}function Ff(){return kl(Mh).scale(109.5).parallels([30,30])}function il(Zt,fr){return[Zt,fr]}il.invert=il;function mu(){return Cu(il).scale(152.63)}function gu(Zt,fr){var Yr=l(Zt),qr=Zt===fr?m(Zt):(Yr-l(fr))/(fr-Zt),ba=Yr/qr+Zt;if(v(qr)<r)return il;function Ka(oi,yi){var ki=ba-yi,Bi=qr*oi;return[ki*m(Bi),ba-ki*l(Bi)]}return Ka.invert=function(oi,yi){var ki=ba-yi,Bi=T(oi,v(ki))*b(ki);return ki*qr<0&&(Bi-=a*b(oi)*b(ki)),[Bi/qr,ba-b(qr)*d(oi*oi+ki*ki)]},Ka}function Jf(){return kl(gu).scale(131.154).center([0,13.9389])}var el=1.340264,mf=-.081106,wc=893e-6,ju=.003796,Af=d(3)/2,uc=12;function Qc(Zt,fr){var Yr=f(Af*m(fr)),qr=Yr*Yr,ba=qr*qr*qr;return[Zt*l(Yr)/(Af*(el+3*mf*qr+ba*(7*wc+9*ju*qr))),Yr*(el+mf*qr+ba*(wc+ju*qr))]}Qc.invert=function(Zt,fr){for(var Yr=fr,qr=Yr*Yr,ba=qr*qr*qr,Ka=0,oi,yi,ki;Ka<uc&&(yi=Yr*(el+mf*qr+ba*(wc+ju*qr))-fr,ki=el+3*mf*qr+ba*(7*wc+9*ju*qr),Yr-=oi=yi/ki,qr=Yr*Yr,ba=qr*qr*qr,!(v(oi)<o));++Ka);return[Af*Zt*(el+3*mf*qr+ba*(7*wc+9*ju*qr))/l(Yr),f(m(Yr)/Af)]};function $f(){return Cu(Qc).scale(177.158)}function Vl(Zt,fr){var Yr=l(fr),qr=l(Zt)*Yr;return[Yr*m(Zt)/qr,m(fr)/qr]}Vl.invert=bc(p);function Qf(){return Cu(Vl).scale(144.049).clipAngle(60)}function Vu(){var Zt=1,fr=0,Yr=0,qr=1,ba=1,Ka=0,oi,yi,ki=null,Bi,li,_i,vi=1,ti=1,rn=Ju({point:function(Ri,co){var Wo=en([Ri,co]);this.stream.point(Wo[0],Wo[1])}}),Kn=Ns,Wn,Jn;function no(){return vi=Zt*qr,ti=Zt*ba,Wn=Jn=null,en}function en(Ri){var co=Ri[0]*vi,Wo=Ri[1]*ti;if(Ka){var bs=Wo*oi-co*yi;co=co*oi+Wo*yi,Wo=bs}return[co+fr,Wo+Yr]}return en.invert=function(Ri){var co=Ri[0]-fr,Wo=Ri[1]-Yr;if(Ka){var bs=Wo*oi+co*yi;co=co*oi-Wo*yi,Wo=bs}return[co/vi,Wo/ti]},en.stream=function(Ri){return Wn&&Jn===Ri?Wn:Wn=rn(Kn(Jn=Ri))},en.postclip=function(Ri){return arguments.length?(Kn=Ri,ki=Bi=li=_i=null,no()):Kn},en.clipExtent=function(Ri){return arguments.length?(Kn=Ri==null?(ki=Bi=li=_i=null,Ns):ai(ki=+Ri[0][0],Bi=+Ri[0][1],li=+Ri[1][0],_i=+Ri[1][1]),no()):ki==null?null:[[ki,Bi],[li,_i]]},en.scale=function(Ri){return arguments.length?(Zt=+Ri,no()):Zt},en.translate=function(Ri){return arguments.length?(fr=+Ri[0],Yr=+Ri[1],no()):[fr,Yr]},en.angle=function(Ri){return arguments.length?(Ka=Ri%360*h,yi=m(Ka),oi=l(Ka),no()):Ka*c},en.reflectX=function(Ri){return arguments.length?(qr=Ri?-1:1,no()):qr<0},en.reflectY=function(Ri){return arguments.length?(ba=Ri?-1:1,no()):ba<0},en.fitExtent=function(Ri,co){return Jc(en,Ri,co)},en.fitSize=function(Ri,co){return Eu(en,Ri,co)},en.fitWidth=function(Ri,co){return wf(en,Ri,co)},en.fitHeight=function(Ri,co){return zc(en,Ri,co)},en}function Tc(Zt,fr){var Yr=fr*fr,qr=Yr*Yr;return[Zt*(.8707-.131979*Yr+qr*(-.013791+qr*(.003971*Yr-.001529*qr))),fr*(1.007226+Yr*(.015085+qr*(-.044475+.028874*Yr-.005916*qr)))]}Tc.invert=function(Zt,fr){var Yr=fr,qr=25,ba;do{var Ka=Yr*Yr,oi=Ka*Ka;Yr-=ba=(Yr*(1.007226+Ka*(.015085+oi*(-.044475+.028874*Ka-.005916*oi)))-fr)/(1.007226+Ka*(.015085*3+oi*(-.044475*7+.028874*9*Ka-.005916*11*oi)))}while(v(ba)>r&&--qr>0);return[Zt/(.8707+(Ka=Yr*Yr)*(-.131979+Ka*(-.013791+Ka*Ka*Ka*(.003971-.001529*Ka)))),Yr]};function cc(){return Cu(Tc).scale(175.295)}function Cl(Zt,fr){return[l(fr)*m(Zt),m(fr)]}Cl.invert=bc(f);function iu(){return Cu(Cl).scale(249.5).clipAngle(90+r)}function fc(Zt,fr){var Yr=l(fr),qr=1+l(Zt)*Yr;return[Yr*m(Zt)/qr,m(fr)/qr]}fc.invert=bc(function(Zt){return 2*p(Zt)});function Oc(){return Cu(fc).scale(250).clipAngle(142)}function Qu(Zt,fr){return[S(u((i+fr)/2)),-Zt]}Qu.invert=function(Zt,fr){return[-fr,2*p(w(Zt))-i]};function ef(){var Zt=au(Qu),fr=Zt.center,Yr=Zt.rotate;return Zt.center=function(qr){return arguments.length?fr([-qr[1],qr[0]]):(qr=fr(),[qr[1],-qr[0]])},Zt.rotate=function(qr){return arguments.length?Yr([qr[0],qr[1],qr.length>2?qr[2]+90:90]):(qr=Yr(),[qr[0],qr[1],qr[2]-90])},Yr([0,0,90]).scale(159.155)}g.geoAlbers=xl,g.geoAlbersUsa=Sh,g.geoArea=j,g.geoAzimuthalEqualArea=hp,g.geoAzimuthalEqualAreaRaw=lc,g.geoAzimuthalEquidistant=Tf,g.geoAzimuthalEquidistantRaw=vf,g.geoBounds=Fe,g.geoCentroid=xr,g.geoCircle=Er,g.geoClipAntimeridian=mr,g.geoClipCircle=Ca,g.geoClipExtent=an,g.geoClipRectangle=ai,g.geoConicConformal=Ff,g.geoConicConformalRaw=Mh,g.geoConicEqualArea=vu,g.geoConicEqualAreaRaw=$u,g.geoConicEquidistant=Jf,g.geoConicEquidistantRaw=gu,g.geoContains=$o,g.geoDistance=In,g.geoEqualEarth=$f,g.geoEqualEarthRaw=Qc,g.geoEquirectangular=mu,g.geoEquirectangularRaw=il,g.geoGnomonic=Qf,g.geoGnomonicRaw=Vl,g.geoGraticule=ol,g.geoGraticule10=Os,g.geoIdentity=Vu,g.geoInterpolate=so,g.geoLength=as,g.geoMercator=zf,g.geoMercatorRaw=Lu,g.geoNaturalEarth1=cc,g.geoNaturalEarth1Raw=Tc,g.geoOrthographic=iu,g.geoOrthographicRaw=Cl,g.geoPath=Yf,g.geoProjection=Cu,g.geoProjectionMutator=xc,g.geoRotation=$a,g.geoStereographic=Oc,g.geoStereographicRaw=fc,g.geoStream=N,g.geoTransform=uh,g.geoTransverseMercator=ef,g.geoTransverseMercatorRaw=Qu,Object.defineProperty(g,"__esModule",{value:!0})})}}),TU=Ye({"node_modules/d3-geo-projection/dist/d3-geo-projection.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,C5(),gx()):x(g.d3=g.d3||{},g.d3,g.d3)})(X,function(g,x,A){"use strict";var M=Math.abs,e=Math.atan,t=Math.atan2,r=Math.cos,o=Math.exp,a=Math.floor,i=Math.log,n=Math.max,s=Math.min,c=Math.pow,h=Math.round,v=Math.sign||function(qe){return qe>0?1:qe<0?-1:0},p=Math.sin,T=Math.tan,l=1e-6,_=1e-12,w=Math.PI,S=w/2,E=w/4,m=Math.SQRT1_2,b=F(2),d=F(w),u=w*2,y=180/w,f=w/180;function P(qe){return qe?qe/Math.sin(qe):1}function L(qe){return qe>1?S:qe<-1?-S:Math.asin(qe)}function z(qe){return qe>1?0:qe<-1?w:Math.acos(qe)}function F(qe){return qe>0?Math.sqrt(qe):0}function B(qe){return qe=o(2*qe),(qe-1)/(qe+1)}function O(qe){return(o(qe)-o(-qe))/2}function I(qe){return(o(qe)+o(-qe))/2}function N(qe){return i(qe+F(qe*qe+1))}function U(qe){return i(qe+F(qe*qe-1))}function W(qe){var Je=T(qe/2),ot=2*i(r(qe/2))/(Je*Je);function ht(At,_t){var Pt=r(At),er=r(_t),nr=p(_t),pr=er*Pt,Sr=-((1-pr?i((1+pr)/2)/(1-pr):-.5)+ot/(1+pr));return[Sr*er*p(At),Sr*nr]}return ht.invert=function(At,_t){var Pt=F(At*At+_t*_t),er=-qe/2,nr=50,pr;if(!Pt)return[0,0];do{var Sr=er/2,Wr=r(Sr),ha=p(Sr),ga=ha/Wr,Pa=-i(M(Wr));er-=pr=(2/ga*Pa-ot*ga-Pt)/(-Pa/(ha*ha)+1-ot/(2*Wr*Wr))*(Wr<0?.7:1)}while(M(pr)>l&&--nr>0);var Ja=p(er);return[t(At*Ja,Pt*r(er)),L(_t*Ja/Pt)]},ht}function Q(){var qe=S,Je=x.geoProjectionMutator(W),ot=Je(qe);return ot.radius=function(ht){return arguments.length?Je(qe=ht*f):qe*y},ot.scale(179.976).clipAngle(147)}function ue(qe,Je){var ot=r(Je),ht=P(z(ot*r(qe/=2)));return[2*ot*p(qe)*ht,p(Je)*ht]}ue.invert=function(qe,Je){if(!(qe*qe+4*Je*Je>w*w+l)){var ot=qe,ht=Je,At=25;do{var _t=p(ot),Pt=p(ot/2),er=r(ot/2),nr=p(ht),pr=r(ht),Sr=p(2*ht),Wr=nr*nr,ha=pr*pr,ga=Pt*Pt,Pa=1-ha*er*er,Ja=Pa?z(pr*er)*F(di=1/Pa):di=0,di,pi=2*Ja*pr*Pt-qe,Ci=Ja*nr-Je,$i=di*(ha*ga+Ja*pr*er*Wr),Bn=di*(.5*_t*Sr-Ja*2*nr*Pt),Sn=di*.25*(Sr*Pt-Ja*nr*ha*_t),ho=di*(Wr*er+Ja*ga*pr),ts=Bn*Sn-ho*$i;if(!ts)break;var yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]}};function se(){return x.geoProjection(ue).scale(152.63)}function he(qe){var Je=p(qe),ot=r(qe),ht=qe>=0?1:-1,At=T(ht*qe),_t=(1+Je-ot)/2;function Pt(er,nr){var pr=r(nr),Sr=r(er/=2);return[(1+pr)*p(er),(ht*nr>-t(Sr,At)-.001?0:-ht*10)+_t+p(nr)*ot-(1+pr)*Je*Sr]}return Pt.invert=function(er,nr){var pr=0,Sr=0,Wr=50;do{var ha=r(pr),ga=p(pr),Pa=r(Sr),Ja=p(Sr),di=1+Pa,pi=di*ga-er,Ci=_t+Ja*ot-di*Je*ha-nr,$i=di*ha/2,Bn=-ga*Ja,Sn=Je*di*ga/2,ho=ot*Pa+Je*ha*Ja,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts/2,Vo=(pi*Sn-Ci*$i)/ts;M(Vo)>2&&(Vo/=2),pr-=yo,Sr-=Vo}while((M(yo)>l||M(Vo)>l)&&--Wr>0);return ht*Sr>-t(r(pr),At)-.001?[pr*2,Sr]:null},Pt}function G(){var qe=20*f,Je=qe>=0?1:-1,ot=T(Je*qe),ht=x.geoProjectionMutator(he),At=ht(qe),_t=At.stream;return At.parallel=function(Pt){return arguments.length?(ot=T((Je=(qe=Pt*f)>=0?1:-1)*qe),ht(qe)):qe*y},At.stream=function(Pt){var er=At.rotate(),nr=_t(Pt),pr=(At.rotate([0,0]),_t(Pt)),Sr=At.precision();return At.rotate(er),nr.sphere=function(){pr.polygonStart(),pr.lineStart();for(var Wr=Je*-180;Je*Wr<180;Wr+=Je*90)pr.point(Wr,Je*90);if(qe)for(;Je*(Wr-=3*Je*Sr)>=-180;)pr.point(Wr,Je*-t(r(Wr*f/2),ot)*y);pr.lineEnd(),pr.polygonEnd()},nr},At.scale(218.695).center([0,28.0974])}function $(qe,Je){var ot=T(Je/2),ht=F(1-ot*ot),At=1+ht*r(qe/=2),_t=p(qe)*ht/At,Pt=ot/At,er=_t*_t,nr=Pt*Pt;return[4/3*_t*(3+er-3*nr),4/3*Pt*(3+3*er-nr)]}$.invert=function(qe,Je){if(qe*=3/8,Je*=3/8,!qe&&M(Je)>1)return null;var ot=qe*qe,ht=Je*Je,At=1+ot+ht,_t=F((At-F(At*At-4*Je*Je))/2),Pt=L(_t)/3,er=_t?U(M(Je/_t))/3:N(M(qe))/3,nr=r(Pt),pr=I(er),Sr=pr*pr-nr*nr;return[v(qe)*2*t(O(er)*nr,.25-Sr),v(Je)*2*t(pr*p(Pt),.25+Sr)]};function J(){return x.geoProjection($).scale(66.1603)}var Z=F(8),re=i(1+b);function ne(qe,Je){var ot=M(Je);return ot<E?[qe,i(T(E+Je/2))]:[qe*r(ot)*(2*b-1/p(ot)),v(Je)*(2*b*(ot-E)-i(T(ot/2)))]}ne.invert=function(qe,Je){if((_t=M(Je))<re)return[qe,2*e(o(Je))-S];var ot=E,ht=25,At,_t;do{var Pt=r(ot/2),er=T(ot/2);ot-=At=(Z*(ot-E)-i(er)-_t)/(Z-Pt*Pt/(2*er))}while(M(At)>_&&--ht>0);return[qe/(r(ot)*(Z-1/p(ot))),v(Je)*ot]};function j(){return x.geoProjection(ne).scale(112.314)}function ee(qe){var Je=2*w/qe;function ot(ht,At){var _t=x.geoAzimuthalEquidistantRaw(ht,At);if(M(ht)>S){var Pt=t(_t[1],_t[0]),er=F(_t[0]*_t[0]+_t[1]*_t[1]),nr=Je*h((Pt-S)/Je)+S,pr=t(p(Pt-=nr),2-r(Pt));Pt=nr+L(w/er*p(pr))-pr,_t[0]=er*r(Pt),_t[1]=er*p(Pt)}return _t}return ot.invert=function(ht,At){var _t=F(ht*ht+At*At);if(_t>S){var Pt=t(At,ht),er=Je*h((Pt-S)/Je)+S,nr=Pt>er?-1:1,pr=_t*r(er-Pt),Sr=1/T(nr*z((pr-w)/F(w*(w-2*pr)+_t*_t)));Pt=er+2*e((Sr+nr*F(Sr*Sr-3))/3),ht=_t*r(Pt),At=_t*p(Pt)}return x.geoAzimuthalEquidistantRaw.invert(ht,At)},ot}function ie(){var qe=5,Je=x.geoProjectionMutator(ee),ot=Je(qe),ht=ot.stream,At=.01,_t=-r(At*f),Pt=p(At*f);return ot.lobes=function(er){return arguments.length?Je(qe=+er):qe},ot.stream=function(er){var nr=ot.rotate(),pr=ht(er),Sr=(ot.rotate([0,0]),ht(er));return ot.rotate(nr),pr.sphere=function(){Sr.polygonStart(),Sr.lineStart();for(var Wr=0,ha=360/qe,ga=2*w/qe,Pa=90-180/qe,Ja=S;Wr<qe;++Wr,Pa-=ha,Ja-=ga)Sr.point(t(Pt*r(Ja),_t)*y,L(Pt*p(Ja))*y),Pa<-90?(Sr.point(-90,-180-Pa-At),Sr.point(-90,-180-Pa+At)):(Sr.point(90,Pa+At),Sr.point(90,Pa-At));Sr.lineEnd(),Sr.polygonEnd()},pr},ot.scale(87.8076).center([0,17.1875]).clipAngle(180-.001)}function fe(qe,Je){if(arguments.length<2&&(Je=qe),Je===1)return x.geoAzimuthalEqualAreaRaw;if(Je===1/0)return be;function ot(ht,At){var _t=x.geoAzimuthalEqualAreaRaw(ht/Je,At);return _t[0]*=qe,_t}return ot.invert=function(ht,At){var _t=x.geoAzimuthalEqualAreaRaw.invert(ht/qe,At);return _t[0]*=Je,_t},ot}function be(qe,Je){return[qe*r(Je)/r(Je/=2),2*p(Je)]}be.invert=function(qe,Je){var ot=2*L(Je/2);return[qe*r(ot/2)/r(ot),ot]};function Ae(){var qe=2,Je=x.geoProjectionMutator(fe),ot=Je(qe);return ot.coefficient=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(169.529)}function Be(qe,Je,ot){var ht=100,At,_t,Pt;ot=ot===void 0?0:+ot,Je=+Je;do _t=qe(ot),Pt=qe(ot+l),_t===Pt&&(Pt=_t+l),ot-=At=-1*l*(_t-Je)/(_t-Pt);while(ht-- >0&&M(At)>l);return ht<0?NaN:ot}function Ie(qe,Je,ot){return Je===void 0&&(Je=40),ot===void 0&&(ot=_),function(ht,At,_t,Pt){var er,nr,pr;_t=_t===void 0?0:+_t,Pt=Pt===void 0?0:+Pt;for(var Sr=0;Sr<Je;Sr++){var Wr=qe(_t,Pt),ha=Wr[0]-ht,ga=Wr[1]-At;if(M(ha)<ot&&M(ga)<ot)break;var Pa=ha*ha+ga*ga;if(Pa>er){_t-=nr/=2,Pt-=pr/=2;continue}er=Pa;var Ja=(_t>0?-1:1)*ot,di=(Pt>0?-1:1)*ot,pi=qe(_t+Ja,Pt),Ci=qe(_t,Pt+di),$i=(pi[0]-Wr[0])/Ja,Bn=(pi[1]-Wr[1])/Ja,Sn=(Ci[0]-Wr[0])/di,ho=(Ci[1]-Wr[1])/di,ts=ho*$i-Bn*Sn,yo=(M(ts)<.5?.5:1)/ts;if(nr=(ga*Sn-ha*ho)*yo,pr=(ha*Bn-ga*$i)*yo,_t+=nr,Pt+=pr,M(nr)<ot&&M(pr)<ot)break}return[_t,Pt]}}function Ze(){var qe=fe(1.68,2),Je=1.4,ot=12;function ht(At,_t){if(At+_t<-Je){var Pt=(At-_t+1.6)*(At+_t+Je)/8;At+=Pt,_t-=.8*Pt*p(_t+w/2)}var er=qe(At,_t),nr=(1-r(At*_t))/ot;return er[1]<0&&(er[0]*=1+nr),er[1]>0&&(er[1]*=1+nr/1.5*er[0]*er[0]),er}return ht.invert=Ie(ht),ht}function at(){return x.geoProjection(Ze()).rotate([-16.5,-42]).scale(176.57).center([7.93,.09])}function it(qe,Je){var ot=qe*p(Je),ht=30,At;do Je-=At=(Je+p(Je)-ot)/(1+r(Je));while(M(At)>l&&--ht>0);return Je/2}function et(qe,Je,ot){function ht(At,_t){return[qe*At*r(_t=it(ot,_t)),Je*p(_t)]}return ht.invert=function(At,_t){return _t=L(_t/Je),[At/(qe*r(_t)),L((2*_t+p(2*_t))/ot)]},ht}var lt=et(b/S,b,w);function Me(){return x.geoProjection(lt).scale(169.529)}var ge=2.00276,ce=1.11072;function ze(qe,Je){var ot=it(w,Je);return[ge*qe/(1/r(Je)+ce/r(ot)),(Je+b*p(ot))/ge]}ze.invert=function(qe,Je){var ot=ge*Je,ht=Je<0?-E:E,At=25,_t,Pt;do Pt=ot-b*p(ht),ht-=_t=(p(2*ht)+2*ht-w*p(Pt))/(2*r(2*ht)+2+w*r(Pt)*b*r(ht));while(M(_t)>l&&--At>0);return Pt=ot-b*p(ht),[qe*(1/r(Pt)+ce/r(ht))/ge,Pt]};function tt(){return x.geoProjection(ze).scale(160.857)}function nt(qe){var Je=0,ot=x.geoProjectionMutator(qe),ht=ot(Je);return ht.parallel=function(At){return arguments.length?ot(Je=At*f):Je*y},ht}function Qe(qe,Je){return[qe*r(Je),Je]}Qe.invert=function(qe,Je){return[qe/r(Je),Je]};function Ct(){return x.geoProjection(Qe).scale(152.63)}function St(qe){if(!qe)return Qe;var Je=1/T(qe);function ot(ht,At){var _t=Je+qe-At,Pt=_t&&ht*r(At)/_t;return[_t*p(Pt),Je-_t*r(Pt)]}return ot.invert=function(ht,At){var _t=F(ht*ht+(At=Je-At)*At),Pt=Je+qe-_t;return[_t/r(Pt)*t(ht,At),Pt]},ot}function Ot(){return nt(St).scale(123.082).center([0,26.1441]).parallel(45)}function jt(qe){function Je(ot,ht){var At=S-ht,_t=At&&ot*qe*p(At)/At;return[At*p(_t)/qe,S-At*r(_t)]}return Je.invert=function(ot,ht){var At=ot*qe,_t=S-ht,Pt=F(At*At+_t*_t),er=t(At,_t);return[(Pt?Pt/p(Pt):1)*er/qe,S-Pt]},Je}function ur(){var qe=.5,Je=x.geoProjectionMutator(jt),ot=Je(qe);return ot.fraction=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(158.837)}var ar=et(1,4/w,w);function Cr(){return x.geoProjection(ar).scale(152.63)}function vr(qe,Je,ot,ht,At,_t){var Pt=r(_t),er;if(M(qe)>1||M(_t)>1)er=z(ot*At+Je*ht*Pt);else{var nr=p(qe/2),pr=p(_t/2);er=2*L(F(nr*nr+Je*ht*pr*pr))}return M(er)>l?[er,t(ht*p(_t),Je*At-ot*ht*Pt)]:[0,0]}function _r(qe,Je,ot){return z((qe*qe+Je*Je-ot*ot)/(2*qe*Je))}function yt(qe){return qe-2*w*a((qe+w)/(2*w))}function Fe(qe,Je,ot){for(var ht=[[qe[0],qe[1],p(qe[1]),r(qe[1])],[Je[0],Je[1],p(Je[1]),r(Je[1])],[ot[0],ot[1],p(ot[1]),r(ot[1])]],At=ht[2],_t,Pt=0;Pt<3;++Pt,At=_t)_t=ht[Pt],At.v=vr(_t[1]-At[1],At[3],At[2],_t[3],_t[2],_t[0]-At[0]),At.point=[0,0];var er=_r(ht[0].v[0],ht[2].v[0],ht[1].v[0]),nr=_r(ht[0].v[0],ht[1].v[0],ht[2].v[0]),pr=w-er;ht[2].point[1]=0,ht[0].point[0]=-(ht[1].point[0]=ht[0].v[0]/2);var Sr=[ht[2].point[0]=ht[0].point[0]+ht[2].v[0]*r(er),2*(ht[0].point[1]=ht[1].point[1]=ht[2].v[0]*p(er))];function Wr(ha,ga){var Pa=p(ga),Ja=r(ga),di=new Array(3),pi;for(pi=0;pi<3;++pi){var Ci=ht[pi];if(di[pi]=vr(ga-Ci[1],Ci[3],Ci[2],Ja,Pa,ha-Ci[0]),!di[pi][0])return Ci.point;di[pi][1]=yt(di[pi][1]-Ci.v[1])}var $i=Sr.slice();for(pi=0;pi<3;++pi){var Bn=pi==2?0:pi+1,Sn=_r(ht[pi].v[0],di[pi][0],di[Bn][0]);di[pi][1]<0&&(Sn=-Sn),pi?pi==1?(Sn=nr-Sn,$i[0]-=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn)):(Sn=pr-Sn,$i[0]+=di[pi][0]*r(Sn),$i[1]+=di[pi][0]*p(Sn)):($i[0]+=di[pi][0]*r(Sn),$i[1]-=di[pi][0]*p(Sn))}return $i[0]/=3,$i[1]/=3,$i}return Wr}function Ke(qe){return qe[0]*=f,qe[1]*=f,qe}function Ne(){return Ee([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function Ee(qe,Je,ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:[qe,Je,ot]}),At=[-ht[0],-ht[1]],_t=x.geoRotation(At),Pt=Fe(Ke(_t(qe)),Ke(_t(Je)),Ke(_t(ot)));Pt.invert=Ie(Pt);var er=x.geoProjection(Pt).rotate(At),nr=er.center;return delete er.rotate,er.center=function(pr){return arguments.length?nr(_t(pr)):_t.invert(nr())},er.clipAngle(90)}function Ve(qe,Je){var ot=F(1-p(Je));return[2/d*qe*ot,d*(1-ot)]}Ve.invert=function(qe,Je){var ot=(ot=Je/d-1)*ot;return[ot>0?qe*F(w/ot)/2:0,L(1-ot)]};function ke(){return x.geoProjection(Ve).scale(95.6464).center([0,30])}function Te(qe){var Je=T(qe);function ot(ht,At){return[ht,(ht?ht/p(ht):1)*(p(At)*r(ht)-Je*r(At))]}return ot.invert=Je?function(ht,At){ht&&(At*=p(ht)/ht);var _t=r(ht);return[ht,2*t(F(_t*_t+Je*Je-At*At)-_t,Je-At)]}:function(ht,At){return[ht,L(ht?At*T(ht)/ht:At)]},ot}function Le(){return nt(Te).scale(249.828).clipAngle(90)}var rt=F(3);function dt(qe,Je){return[rt*qe*(2*r(2*Je/3)-1)/d,rt*d*p(Je/3)]}dt.invert=function(qe,Je){var ot=3*L(Je/(rt*d));return[d*qe/(rt*(2*r(2*ot/3)-1)),ot]};function xt(){return x.geoProjection(dt).scale(156.19)}function It(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,p(At)/Je]}return ot.invert=function(ht,At){return[ht/Je,L(At*Je)]},ot}function Bt(){return nt(It).parallel(38.58).scale(195.044)}function Gt(qe){var Je=r(qe);function ot(ht,At){return[ht*Je,(1+Je)*T(At/2)]}return ot.invert=function(ht,At){return[ht/Je,e(At/(1+Je))*2]},ot}function Kt(){return nt(Gt).scale(124.75)}function sr(qe,Je){var ot=F(8/(3*w));return[ot*qe*(1-M(Je)/w),ot*Je]}sr.invert=function(qe,Je){var ot=F(8/(3*w)),ht=Je/ot;return[qe/(ot*(1-M(ht)/w)),ht]};function sa(){return x.geoProjection(sr).scale(165.664)}function Aa(qe,Je){var ot=F(4-3*p(M(Je)));return[2/F(6*w)*qe*ot,v(Je)*F(2*w/3)*(2-ot)]}Aa.invert=function(qe,Je){var ot=2-M(Je)/F(2*w/3);return[qe*F(6*w)/(2*ot),v(Je)*L((4-ot*ot)/3)]};function La(){return x.geoProjection(Aa).scale(165.664)}function ka(qe,Je){var ot=F(w*(4+w));return[2/ot*qe*(1+F(1-4*Je*Je/(w*w))),4/ot*Je]}ka.invert=function(qe,Je){var ot=F(w*(4+w))/2;return[qe*ot/(1+F(1-Je*Je*(4+w)/(4*w))),Je*ot/2]};function Ga(){return x.geoProjection(ka).scale(180.739)}function Ma(qe,Je){var ot=(2+S)*p(Je);Je/=2;for(var ht=0,At=1/0;ht<10&&M(At)>l;ht++){var _t=r(Je);Je-=At=(Je+p(Je)*(_t+2)-ot)/(2*_t*(1+_t))}return[2/F(w*(4+w))*qe*(1+r(Je)),2*F(w/(4+w))*p(Je)]}Ma.invert=function(qe,Je){var ot=Je*F((4+w)/w)/2,ht=L(ot),At=r(ht);return[qe/(2/F(w*(4+w))*(1+At)),L((ht+ot*(At+2))/(2+S))]};function Ua(){return x.geoProjection(Ma).scale(180.739)}function ni(qe,Je){return[qe*(1+r(Je))/F(2+w),2*Je/F(2+w)]}ni.invert=function(qe,Je){var ot=F(2+w),ht=Je*ot/2;return[ot*qe/(1+r(ht)),ht]};function Wt(){return x.geoProjection(ni).scale(173.044)}function zt(qe,Je){for(var ot=(1+S)*p(Je),ht=0,At=1/0;ht<10&&M(At)>l;ht++)Je-=At=(Je+p(Je)-ot)/(1+r(Je));return ot=F(2+w),[qe*(1+r(Je))/ot,2*Je/ot]}zt.invert=function(qe,Je){var ot=1+S,ht=F(ot/2);return[qe*2*ht/(1+r(Je*=ht)),L((Je+p(Je))/ot)]};function Vt(){return x.geoProjection(zt).scale(173.044)}var Ut=3+2*b;function xr(qe,Je){var ot=p(qe/=2),ht=r(qe),At=F(r(Je)),_t=r(Je/=2),Pt=p(Je)/(_t+b*ht*At),er=F(2/(1+Pt*Pt)),nr=F((b*_t+(ht+ot)*At)/(b*_t+(ht-ot)*At));return[Ut*(er*(nr-1/nr)-2*i(nr)),Ut*(er*Pt*(nr+1/nr)-2*e(Pt))]}xr.invert=function(qe,Je){if(!(_t=$.invert(qe/1.2,Je*1.065)))return null;var ot=_t[0],ht=_t[1],At=20,_t;qe/=Ut,Je/=Ut;do{var Pt=ot/2,er=ht/2,nr=p(Pt),pr=r(Pt),Sr=p(er),Wr=r(er),ha=r(ht),ga=F(ha),Pa=Sr/(Wr+b*pr*ga),Ja=Pa*Pa,di=F(2/(1+Ja)),pi=b*Wr+(pr+nr)*ga,Ci=b*Wr+(pr-nr)*ga,$i=pi/Ci,Bn=F($i),Sn=Bn-1/Bn,ho=Bn+1/Bn,ts=di*Sn-2*i(Bn)-qe,yo=di*Pa*ho-2*e(Pa)-Je,Vo=Sr&&m*ga*nr*Ja/Sr,ls=(b*pr*Wr+ga)/(2*(Wr+b*pr*ga)*(Wr+b*pr*ga)*ga),rl=-.5*Pa*di*di*di,Ys=rl*Vo,Zo=rl*ls,Go=(Go=2*Wr+b*ga*(pr-nr))*Go*Bn,Rl=(b*pr*Wr*ga+ha)/Go,Xl=-(b*nr*Sr)/(ga*Go),qu=Sn*Ys-2*Rl/Bn+di*(Rl+Rl/$i),fu=Sn*Zo-2*Xl/Bn+di*(Xl+Xl/$i),bl=Pa*ho*Ys-2*Vo/(1+Ja)+di*ho*Vo+di*Pa*(Rl-Rl/$i),ou=Pa*ho*Zo-2*ls/(1+Ja)+di*ho*ls+di*Pa*(Xl-Xl/$i),Sc=fu*bl-ou*qu;if(!Sc)break;var ql=(yo*fu-ts*ou)/Sc,Hl=(ts*bl-yo*qu)/Sc;ot-=ql,ht=n(-S,s(S,ht-Hl))}while((M(ql)>l||M(Hl)>l)&&--At>0);return M(M(ht)-S)<l?[0,ht]:At&&[ot,ht]};function Zr(){return x.geoProjection(xr).scale(62.5271)}var pa=r(35*f);function Xr(qe,Je){var ot=T(Je/2);return[qe*pa*F(1-ot*ot),(1+pa)*ot]}Xr.invert=function(qe,Je){var ot=Je/(1+pa);return[qe&&qe/(pa*F(1-ot*ot)),2*e(ot)]};function Ea(){return x.geoProjection(Xr).scale(137.152)}function Fa(qe,Je){var ot=Je/2,ht=r(ot);return[2*qe/d*r(Je)*ht*ht,d*T(ot)]}Fa.invert=function(qe,Je){var ot=e(Je/d),ht=r(ot),At=2*ot;return[qe*d/2/(r(At)*ht*ht),At]};function qa(){return x.geoProjection(Fa).scale(135.264)}function ya(qe){var Je=1-qe,ot=_t(w,0)[0]-_t(-w,0)[0],ht=_t(0,S)[1]-_t(0,-S)[1],At=F(2*ht/ot);function _t(nr,pr){var Sr=r(pr),Wr=p(pr);return[Sr/(Je+qe*Sr)*nr,Je*pr+qe*Wr]}function Pt(nr,pr){var Sr=_t(nr,pr);return[Sr[0]*At,Sr[1]/At]}function er(nr){return Pt(0,nr)[1]}return Pt.invert=function(nr,pr){var Sr=Be(er,pr),Wr=nr/At*(qe+Je/r(Sr));return[Wr,Sr]},Pt}function $a(){var qe=.5,Je=x.geoProjectionMutator(ya),ot=Je(qe);return ot.alpha=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(168.725)}function mt(qe){return[qe[0]/2,L(T(qe[1]/2*f))*y]}function gt(qe){return[qe[0]*2,2*e(p(qe[1]*f))*y]}function Er(qe){qe==null&&(qe=x.geoOrthographic);var Je=qe(),ot=x.geoEquirectangular().scale(y).precision(0).clipAngle(null).translate([0,0]);function ht(_t){return Je(mt(_t))}Je.invert&&(ht.invert=function(_t){return gt(Je.invert(_t))}),ht.stream=function(_t){var Pt=Je.stream(_t),er=ot.stream({point:function(nr,pr){Pt.point(nr/2,L(T(-pr/2*f))*y)},lineStart:function(){Pt.lineStart()},lineEnd:function(){Pt.lineEnd()},polygonStart:function(){Pt.polygonStart()},polygonEnd:function(){Pt.polygonEnd()}});return er.sphere=Pt.sphere,er};function At(_t){ht[_t]=function(){return arguments.length?(Je[_t].apply(Je,arguments),ht):Je[_t]()}}return ht.rotate=function(_t){return arguments.length?(ot.rotate(_t),ht):ot.rotate()},ht.center=function(_t){return arguments.length?(Je.center(mt(_t)),ht):gt(Je.center())},At("angle"),At("clipAngle"),At("clipExtent"),At("fitExtent"),At("fitHeight"),At("fitSize"),At("fitWidth"),At("scale"),At("translate"),At("precision"),ht.scale(249.5)}function kr(qe,Je){var ot=2*w/Je,ht=qe*qe;function At(_t,Pt){var er=x.geoAzimuthalEquidistantRaw(_t,Pt),nr=er[0],pr=er[1],Sr=nr*nr+pr*pr;if(Sr>ht){var Wr=F(Sr),ha=t(pr,nr),ga=ot*h(ha/ot),Pa=ha-ga,Ja=qe*r(Pa),di=(qe*p(Pa)-Pa*p(Ja))/(S-Ja),pi=br(Pa,di),Ci=(w-qe)/Tr(pi,Ja,w);nr=Wr;var $i=50,Bn;do nr-=Bn=(qe+Tr(pi,Ja,nr)*Ci-Wr)/(pi(nr)*Ci);while(M(Bn)>l&&--$i>0);pr=Pa*p(nr),nr<S&&(pr-=di*(nr-S));var Sn=p(ga),ho=r(ga);er[0]=nr*ho-pr*Sn,er[1]=nr*Sn+pr*ho}return er}return At.invert=function(_t,Pt){var er=_t*_t+Pt*Pt;if(er>ht){var nr=F(er),pr=t(Pt,_t),Sr=ot*h(pr/ot),Wr=pr-Sr;_t=nr*r(Wr),Pt=nr*p(Wr);for(var ha=_t-S,ga=p(_t),Pa=Pt/ga,Ja=_t<S?1/0:0,di=10;;){var pi=qe*p(Pa),Ci=qe*r(Pa),$i=p(Ci),Bn=S-Ci,Sn=(pi-Pa*$i)/Bn,ho=br(Pa,Sn);if(M(Ja)<_||!--di)break;Pa-=Ja=(Pa*ga-Sn*ha-Pt)/(ga-ha*2*(Bn*(Ci+Pa*pi*r(Ci)-$i)-pi*(pi-Pa*$i))/(Bn*Bn))}nr=qe+Tr(ho,Ci,_t)*(w-qe)/Tr(ho,Ci,w),pr=Sr+Pa,_t=nr*r(pr),Pt=nr*p(pr)}return x.geoAzimuthalEquidistantRaw.invert(_t,Pt)},At}function br(qe,Je){return function(ot){var ht=qe*r(ot);return ot<S&&(ht-=Je),F(1+ht*ht)}}function Tr(qe,Je,ot){for(var ht=50,At=(ot-Je)/ht,_t=qe(Je)+qe(ot),Pt=1,er=Je;Pt<ht;++Pt)_t+=2*qe(er+=At);return _t*.5*At}function Mr(){var qe=6,Je=30*f,ot=r(Je),ht=p(Je),At=x.geoProjectionMutator(kr),_t=At(Je,qe),Pt=_t.stream,er=.01,nr=-r(er*f),pr=p(er*f);return _t.radius=function(Sr){return arguments.length?(ot=r(Je=Sr*f),ht=p(Je),At(Je,qe)):Je*y},_t.lobes=function(Sr){return arguments.length?At(Je,qe=+Sr):qe},_t.stream=function(Sr){var Wr=_t.rotate(),ha=Pt(Sr),ga=(_t.rotate([0,0]),Pt(Sr));return _t.rotate(Wr),ha.sphere=function(){ga.polygonStart(),ga.lineStart();for(var Pa=0,Ja=2*w/qe,di=0;Pa<qe;++Pa,di-=Ja)ga.point(t(pr*r(di),nr)*y,L(pr*p(di))*y),ga.point(t(ht*r(di-Ja/2),ot)*y,L(ht*p(di-Ja/2))*y);ga.lineEnd(),ga.polygonEnd()},ha},_t.rotate([90,-40]).scale(91.7095).clipAngle(180-.001)}function Fr(qe,Je,ot,ht,At,_t,Pt,er){arguments.length<8&&(er=0);function nr(pr,Sr){if(!Sr)return[qe*pr/w,0];var Wr=Sr*Sr,ha=qe+Wr*(Je+Wr*(ot+Wr*ht)),ga=Sr*(At-1+Wr*(_t-er+Wr*Pt)),Pa=(ha*ha+ga*ga)/(2*ga),Ja=pr*L(ha/Pa)/w;return[Pa*p(Ja),Sr*(1+Wr*er)+Pa*(1-r(Ja))]}return nr.invert=function(pr,Sr){var Wr=w*pr/qe,ha=Sr,ga,Pa,Ja=50;do{var di=ha*ha,pi=qe+di*(Je+di*(ot+di*ht)),Ci=ha*(At-1+di*(_t-er+di*Pt)),$i=pi*pi+Ci*Ci,Bn=2*Ci,Sn=$i/Bn,ho=Sn*Sn,ts=L(pi/Sn)/w,yo=Wr*ts,Vo=pi*pi,ls=(2*Je+di*(4*ot+di*6*ht))*ha,rl=At+di*(3*_t+di*5*Pt),Ys=2*(pi*ls+Ci*(rl-1)),Zo=2*(rl-1),Go=(Ys*Bn-$i*Zo)/(Bn*Bn),Rl=r(yo),Xl=p(yo),qu=Sn*Rl,fu=Sn*Xl,bl=Wr/w*(1/F(1-Vo/ho))*(ls*Sn-pi*Go)/ho,ou=fu-pr,Sc=ha*(1+di*er)+Sn-qu-Sr,ql=Go*Xl+qu*bl,Hl=qu*ts,de=1+Go-(Go*Rl-fu*bl),Re=fu*ts,$e=ql*Re-de*Hl;if(!$e)break;Wr-=ga=(Sc*ql-ou*de)/$e,ha-=Pa=(ou*Re-Sc*Hl)/$e}while((M(ga)>l||M(Pa)>l)&&--Ja>0);return[Wr,ha]},nr}var Lr=Fr(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555);function Jr(){return x.geoProjection(Lr).scale(149.995)}var oa=Fr(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742);function ca(){return x.geoProjection(oa).scale(153.93)}var kt=Fr(5/6*w,-.62636,-.0344,0,1.3493,-.05524,0,.045);function ir(){return x.geoProjection(kt).scale(130.945)}function mr(qe,Je){var ot=qe*qe,ht=Je*Je;return[qe*(1-.162388*ht)*(.87-952426e-9*ot*ot),Je*(1+ht/12)]}mr.invert=function(qe,Je){var ot=qe,ht=Je,At=50,_t;do{var Pt=ht*ht;ht-=_t=(ht*(1+Pt/12)-Je)/(1+Pt/4)}while(M(_t)>l&&--At>0);At=50,qe/=1-.162388*Pt;do{var er=(er=ot*ot)*er;ot-=_t=(ot*(.87-952426e-9*er)-qe)/(.87-.00476213*er)}while(M(_t)>l&&--At>0);return[ot,ht]};function $r(){return x.geoProjection(mr).scale(131.747)}var ma=Fr(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762);function Ba(){return x.geoProjection(ma).scale(131.087)}function Ca(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=ht>0?-.5:.5,Pt=qe(ht+_t*w,At);return Pt[0]-=_t*Je,Pt}return qe.invert&&(ot.invert=function(ht,At){var _t=ht>0?-.5:.5,Pt=qe.invert(ht+_t*Je,At),er=Pt[0]-_t*w;return er<-w?er+=2*w:er>w&&(er-=2*w),Pt[0]=er,Pt}),ot}function da(qe,Je){var ot=v(qe),ht=v(Je),At=r(Je),_t=r(qe)*At,Pt=p(qe)*At,er=p(ht*Je);qe=M(t(Pt,er)),Je=L(_t),M(qe-S)>l&&(qe%=S);var nr=Sa(qe>w/4?S-qe:qe,Je);return qe>w/4&&(er=nr[0],nr[0]=-nr[1],nr[1]=-er),nr[0]*=ot,nr[1]*=-ht,nr}da.invert=function(qe,Je){M(qe)>1&&(qe=v(qe)*2-qe),M(Je)>1&&(Je=v(Je)*2-Je);var ot=v(qe),ht=v(Je),At=-ot*qe,_t=-ht*Je,Pt=_t/At<1,er=Ti(Pt?_t:At,Pt?At:_t),nr=er[0],pr=er[1],Sr=r(pr);return Pt&&(nr=-S-nr),[ot*(t(p(nr)*Sr,-p(pr))+w),ht*L(r(nr)*Sr)]};function Sa(qe,Je){if(Je===S)return[0,0];var ot=p(Je),ht=ot*ot,At=ht*ht,_t=1+At,Pt=1+3*At,er=1-At,nr=L(1/F(_t)),pr=er+ht*_t*nr,Sr=(1-ot)/pr,Wr=F(Sr),ha=Sr*_t,ga=F(ha),Pa=Wr*er,Ja,di;if(qe===0)return[0,-(Pa+ht*ga)];var pi=r(Je),Ci=1/pi,$i=2*ot*pi,Bn=(-3*ht+nr*Pt)*$i,Sn=(-pr*pi-(1-ot)*Bn)/(pr*pr),ho=.5*Sn/Wr,ts=er*ho-2*ht*Wr*$i,yo=ht*_t*Sn+Sr*Pt*$i,Vo=-Ci*$i,ls=-Ci*yo,rl=-2*Ci*ts,Ys=4*qe/w,Zo;if(qe>.222*w||Je<w/4&&qe>.175*w){if(Ja=(Pa+ht*F(ha*(1+At)-Pa*Pa))/(1+At),qe>w/4)return[Ja,Ja];var Go=Ja,Rl=.5*Ja;Ja=.5*(Rl+Go),di=50;do{var Xl=F(ha-Ja*Ja),qu=Ja*(rl+Vo*Xl)+ls*L(Ja/ga)-Ys;if(!qu)break;qu<0?Rl=Ja:Go=Ja,Ja=.5*(Rl+Go)}while(M(Go-Rl)>l&&--di>0)}else{Ja=l,di=25;do{var fu=Ja*Ja,bl=F(ha-fu),ou=rl+Vo*bl,Sc=Ja*ou+ls*L(Ja/ga)-Ys,ql=ou+(ls-Vo*fu)/bl;Ja-=Zo=bl?Sc/ql:0}while(M(Zo)>l&&--di>0)}return[Ja,-Pa-ht*F(ha-Ja*Ja)]}function Ti(qe,Je){for(var ot=0,ht=1,At=.5,_t=50;;){var Pt=At*At,er=F(At),nr=L(1/F(1+Pt)),pr=1-Pt+At*(1+Pt)*nr,Sr=(1-er)/pr,Wr=F(Sr),ha=Sr*(1+Pt),ga=Wr*(1-Pt),Pa=ha-qe*qe,Ja=F(Pa),di=Je+ga+At*Ja;if(M(ht-ot)<_||--_t===0||di===0)break;di>0?ot=At:ht=At,At=.5*(ot+ht)}if(!_t)return null;var pi=L(er),Ci=r(pi),$i=1/Ci,Bn=2*er*Ci,Sn=(-3*At+nr*(1+3*Pt))*Bn,ho=(-pr*Ci-(1-er)*Sn)/(pr*pr),ts=.5*ho/Wr,yo=(1-Pt)*ts-2*At*Wr*Bn,Vo=-2*$i*yo,ls=-$i*Bn,rl=-$i*(At*(1+Pt)*ho+Sr*(1+3*Pt)*Bn);return[w/4*(qe*(Vo+ls*Ja)+rl*L(qe/F(ha))),pi]}function ai(){return x.geoProjection(Ca(da)).scale(239.75)}function an(qe,Je,ot){var ht,At,_t;return qe?(ht=sn(qe,ot),Je?(At=sn(Je,1-ot),_t=At[1]*At[1]+ot*ht[0]*ht[0]*At[0]*At[0],[[ht[0]*At[2]/_t,ht[1]*ht[2]*At[0]*At[1]/_t],[ht[1]*At[1]/_t,-ht[0]*ht[2]*At[0]*At[2]/_t],[ht[2]*At[1]*At[2]/_t,-ot*ht[0]*ht[1]*At[0]/_t]]):[[ht[0],0],[ht[1],0],[ht[2],0]]):(At=sn(Je,1-ot),[[0,At[0]/At[1]],[1/At[1],0],[At[2]/At[1],0]])}function sn(qe,Je){var ot,ht,At,_t,Pt;if(Je<l)return _t=p(qe),ht=r(qe),ot=Je*(qe-_t*ht)/4,[_t-ot*ht,ht+ot*_t,1-Je*_t*_t/2,qe-ot];if(Je>=1-l)return ot=(1-Je)/4,ht=I(qe),_t=B(qe),At=1/ht,Pt=ht*O(qe),[_t+ot*(Pt-qe)/(ht*ht),At-ot*_t*At*(Pt-qe),At+ot*_t*At*(Pt+qe),2*e(o(qe))-S+ot*(Pt-qe)/ht];var er=[1,0,0,0,0,0,0,0,0],nr=[F(Je),0,0,0,0,0,0,0,0],pr=0;for(ht=F(1-Je),Pt=1;M(nr[pr]/er[pr])>l&&pr<8;)ot=er[pr++],nr[pr]=(ot-ht)/2,er[pr]=(ot+ht)/2,ht=F(ot*ht),Pt*=2;At=Pt*er[pr]*qe;do _t=nr[pr]*p(ht=At)/er[pr],At=(L(_t)+At)/2;while(--pr);return[p(At),_t=r(At),_t/r(At-ht),At]}function Mn(qe,Je,ot){var ht=M(qe),At=M(Je),_t=O(At);if(ht){var Pt=1/p(ht),er=1/(T(ht)*T(ht)),nr=-(er+ot*(_t*_t*Pt*Pt)-1+ot),pr=(ot-1)*er,Sr=(-nr+F(nr*nr-4*pr))/2;return[On(e(1/F(Sr)),ot)*v(qe),On(e(F((Sr/er-1)/ot)),1-ot)*v(Je)]}return[0,On(e(_t),1-ot)*v(Je)]}function On(qe,Je){if(!Je)return qe;if(Je===1)return i(T(qe/2+E));for(var ot=1,ht=F(1-Je),At=F(Je),_t=0;M(At)>l;_t++){if(qe%w){var Pt=e(ht*T(qe)/ot);Pt<0&&(Pt+=w),qe+=Pt+~~(qe/w)*w}else qe+=qe;At=(ot+ht)/2,ht=F(ot*ht),At=((ot=At)-ht)/2}return qe/(c(2,_t)*ot)}function $n(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=i(T(w/4+M(Je)/2)),er=o(_t*Pt)/F(ot),nr=Cn(er*r(_t*qe),er*p(_t*qe)),pr=Mn(nr[0],nr[1],ht*ht);return[-pr[1],(Je>=0?1:-1)*(.5*At-pr[0])]}function Cn(qe,Je){var ot=qe*qe,ht=Je+1,At=1-ot-Je*Je;return[.5*((qe>=0?S:-S)-t(At,2*qe)),-.25*i(At*At+4*ot)+.5*i(ht*ht+ot)]}function Lo(qe,Je){var ot=Je[0]*Je[0]+Je[1]*Je[1];return[(qe[0]*Je[0]+qe[1]*Je[1])/ot,(qe[1]*Je[0]-qe[0]*Je[1])/ot]}$n.invert=function(qe,Je){var ot=(b-1)/(b+1),ht=F(1-ot*ot),At=On(S,ht*ht),_t=-1,Pt=an(.5*At-Je,-qe,ht*ht),er=Lo(Pt[0],Pt[1]),nr=t(er[1],er[0])/_t;return[nr,2*e(o(.5/_t*i(ot*er[0]*er[0]+ot*er[1]*er[1])))-S]};function Xi(){return x.geoProjection(Ca($n)).scale(151.496)}function Jo(qe){var Je=p(qe),ot=r(qe),ht=zo(qe);ht.invert=zo(-qe);function At(_t,Pt){var er=ht(_t,Pt);_t=er[0],Pt=er[1];var nr=p(Pt),pr=r(Pt),Sr=r(_t),Wr=z(Je*nr+ot*pr*Sr),ha=p(Wr),ga=M(ha)>l?Wr/ha:1;return[ga*ot*p(_t),(M(_t)>S?ga:-ga)*(Je*pr-ot*nr*Sr)]}return At.invert=function(_t,Pt){var er=F(_t*_t+Pt*Pt),nr=-p(er),pr=r(er),Sr=er*pr,Wr=-Pt*nr,ha=er*Je,ga=F(Sr*Sr+Wr*Wr-ha*ha),Pa=t(Sr*ha+Wr*ga,Wr*ha-Sr*ga),Ja=(er>S?-1:1)*t(_t*nr,er*r(Pa)*pr+Pt*p(Pa)*nr);return ht.invert(Ja,Pa)},At}function zo(qe){var Je=p(qe),ot=r(qe);return function(ht,At){var _t=r(At),Pt=r(ht)*_t,er=p(ht)*_t,nr=p(At);return[t(er,Pt*ot-nr*Je),L(nr*ot+Pt*Je)]}}function as(){var qe=0,Je=x.geoProjectionMutator(Jo),ot=Je(qe),ht=ot.rotate,At=ot.stream,_t=x.geoCircle();return ot.parallel=function(Pt){if(!arguments.length)return qe*y;var er=ot.rotate();return Je(qe=Pt*f).rotate(er)},ot.rotate=function(Pt){return arguments.length?(ht.call(ot,[Pt[0],Pt[1]-qe*y]),_t.center([-Pt[0],-Pt[1]]),ot):(Pt=ht.call(ot),Pt[1]+=qe*y,Pt)},ot.stream=function(Pt){return Pt=At(Pt),Pt.sphere=function(){Pt.polygonStart();var er=.01,nr=_t.radius(90-er)().coordinates[0],pr=nr.length-1,Sr=-1,Wr;for(Pt.lineStart();++Sr<pr;)Pt.point((Wr=nr[Sr])[0],Wr[1]);for(Pt.lineEnd(),nr=_t.radius(90+er)().coordinates[0],pr=nr.length-1,Pt.lineStart();--Sr>=0;)Pt.point((Wr=nr[Sr])[0],Wr[1]);Pt.lineEnd(),Pt.polygonEnd()},Pt},ot.scale(79.4187).parallel(45).clipAngle(180-.001)}var Pn=3,go=L(1-1/Pn)*y,In=It(0);function Do(qe){var Je=go*f,ot=Ve(w,Je)[0]-Ve(-w,Je)[0],ht=In(0,Je)[1],At=Ve(0,Je)[1],_t=d-At,Pt=u/qe,er=4/u,nr=ht+_t*_t*4/u;function pr(Sr,Wr){var ha,ga=M(Wr);if(ga>Je){var Pa=s(qe-1,n(0,a((Sr+w)/Pt)));Sr+=w*(qe-1)/qe-Pa*Pt,ha=Ve(Sr,ga),ha[0]=ha[0]*u/ot-u*(qe-1)/(2*qe)+Pa*u/qe,ha[1]=ht+(ha[1]-At)*4*_t/u,Wr<0&&(ha[1]=-ha[1])}else ha=In(Sr,Wr);return ha[0]*=er,ha[1]/=nr,ha}return pr.invert=function(Sr,Wr){Sr/=er,Wr*=nr;var ha=M(Wr);if(ha>ht){var ga=s(qe-1,n(0,a((Sr+w)/Pt)));Sr=(Sr+w*(qe-1)/qe-ga*Pt)*ot/u;var Pa=Ve.invert(Sr,.25*(ha-ht)*u/_t+At);return Pa[0]-=w*(qe-1)/qe-ga*Pt,Wr<0&&(Pa[1]=-Pa[1]),Pa}return In.invert(Sr,Wr)},pr}function Ho(qe,Je){return[qe,Je&1?90-l:go]}function Qo(qe,Je){return[qe,Je&1?-90+l:-go]}function Xn(qe){return[qe[0]*(1-l),qe[1]]}function po(qe){var Je=[].concat(A.range(-180,180+qe/2,qe).map(Ho),A.range(180,-180-qe/2,-qe).map(Qo));return{type:"Polygon",coordinates:[qe===180?Je.map(Xn):Je]}}function ys(){var qe=4,Je=x.geoProjectionMutator(Do),ot=Je(qe),ht=ot.stream;return ot.lobes=function(At){return arguments.length?Je(qe=+At):qe},ot.stream=function(At){var _t=ot.rotate(),Pt=ht(At),er=(ot.rotate([0,0]),ht(At));return ot.rotate(_t),Pt.sphere=function(){x.geoStream(po(180/qe),er)},Pt},ot.scale(239.75)}function Is(qe){var Je=1+qe,ot=p(1/Je),ht=L(ot),At=2*F(w/(_t=w+4*ht*Je)),_t,Pt=.5*At*(Je+F(qe*(2+qe))),er=qe*qe,nr=Je*Je;function pr(Sr,Wr){var ha=1-p(Wr),ga,Pa;if(ha&&ha<2){var Ja=S-Wr,di=25,pi;do{var Ci=p(Ja),$i=r(Ja),Bn=ht+t(Ci,Je-$i),Sn=1+nr-2*Je*$i;Ja-=pi=(Ja-er*ht-Je*Ci+Sn*Bn-.5*ha*_t)/(2*Je*Ci*Bn)}while(M(pi)>_&&--di>0);ga=At*F(Sn),Pa=Sr*Bn/w}else ga=At*(qe+ha),Pa=Sr*ht/w;return[ga*p(Pa),Pt-ga*r(Pa)]}return pr.invert=function(Sr,Wr){var ha=Sr*Sr+(Wr-=Pt)*Wr,ga=(1+nr-ha/(At*At))/(2*Je),Pa=z(ga),Ja=p(Pa),di=ht+t(Ja,Je-ga);return[L(Sr/F(ha))*w/di,L(1-2*(Pa-er*ht-Je*Ja+(1+nr-2*Je*ga)*di)/_t)]},pr}function Fs(){var qe=1,Je=x.geoProjectionMutator(Is),ot=Je(qe);return ot.ratio=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(167.774).center([0,18.67])}var $o=.7109889596207567,fi=.0528035274542;function mn(qe,Je){return Je>-$o?(qe=lt(qe,Je),qe[1]+=fi,qe):Qe(qe,Je)}mn.invert=function(qe,Je){return Je>-$o?lt.invert(qe,Je-fi):Qe.invert(qe,Je)};function ol(){return x.geoProjection(mn).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}function Os(qe,Je){return M(Je)>$o?(qe=lt(qe,Je),qe[1]-=Je>0?fi:-fi,qe):Qe(qe,Je)}Os.invert=function(qe,Je){return M(Je)>$o?lt.invert(qe,Je+(Je>0?fi:-fi)):Qe.invert(qe,Je)};function so(){return x.geoProjection(Os).scale(152.63)}function Ns(qe,Je,ot,ht){var At=F(4*w/(2*ot+(1+qe-Je/2)*p(2*ot)+(qe+Je)/2*p(4*ot)+Je/2*p(6*ot))),_t=F(ht*p(ot)*F((1+qe*r(2*ot)+Je*r(4*ot))/(1+qe+Je))),Pt=ot*nr(1);function er(Wr){return F(1+qe*r(2*Wr)+Je*r(4*Wr))}function nr(Wr){var ha=Wr*ot;return(2*ha+(1+qe-Je/2)*p(2*ha)+(qe+Je)/2*p(4*ha)+Je/2*p(6*ha))/ot}function pr(Wr){return er(Wr)*p(Wr)}var Sr=function(Wr,ha){var ga=ot*Be(nr,Pt*p(ha)/ot,ha/w);isNaN(ga)&&(ga=ot*v(ha));var Pa=At*er(ga);return[Pa*_t*Wr/w*r(ga),Pa/_t*p(ga)]};return Sr.invert=function(Wr,ha){var ga=Be(pr,ha*_t/At);return[Wr*w/(r(ga)*At*_t*er(ga)),L(ot*nr(ga/ot)/Pt)]},ot===0&&(At=F(ht/w),Sr=function(Wr,ha){return[Wr*At,p(ha)/At]},Sr.invert=function(Wr,ha){return[Wr/At,L(ha*At)]}),Sr}function fs(){var qe=1,Je=0,ot=45*f,ht=2,At=x.geoProjectionMutator(Ns),_t=At(qe,Je,ot,ht);return _t.a=function(Pt){return arguments.length?At(qe=+Pt,Je,ot,ht):qe},_t.b=function(Pt){return arguments.length?At(qe,Je=+Pt,ot,ht):Je},_t.psiMax=function(Pt){return arguments.length?At(qe,Je,ot=+Pt*f,ht):ot*y},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(180.739)}function al(qe,Je,ot,ht,At,_t,Pt,er,nr,pr,Sr){if(Sr.nanEncountered)return NaN;var Wr,ha,ga,Pa,Ja,di,pi,Ci,$i,Bn;if(Wr=ot-Je,ha=qe(Je+Wr*.25),ga=qe(ot-Wr*.25),isNaN(ha)){Sr.nanEncountered=!0;return}if(isNaN(ga)){Sr.nanEncountered=!0;return}return Pa=Wr*(ht+4*ha+At)/12,Ja=Wr*(At+4*ga+_t)/12,di=Pa+Ja,Bn=(di-Pt)/15,pr>nr?(Sr.maxDepthCount++,di+Bn):Math.abs(Bn)<er?di+Bn:(pi=Je+Wr*.5,Ci=al(qe,Je,pi,ht,ha,At,Pa,er*.5,nr,pr+1,Sr),isNaN(Ci)?(Sr.nanEncountered=!0,NaN):($i=al(qe,pi,ot,At,ga,_t,Ja,er*.5,nr,pr+1,Sr),isNaN($i)?(Sr.nanEncountered=!0,NaN):Ci+$i))}function vl(qe,Je,ot,ht,At){var _t={maxDepthCount:0,nanEncountered:!1};ht===void 0&&(ht=1e-8),At===void 0&&(At=20);var Pt=qe(Je),er=qe(.5*(Je+ot)),nr=qe(ot),pr=(Pt+4*er+nr)*(ot-Je)/6,Sr=al(qe,Je,ot,Pt,er,nr,pr,ht,At,1,_t);return Sr}function ji(qe,Je,ot){function ht(ga){return qe+(1-qe)*c(1-c(ga,Je),1/Je)}function At(ga){return vl(ht,0,ga,1e-4)}for(var _t=1/At(1),Pt=1e3,er=(1+1e-8)*_t,nr=[],pr=0;pr<=Pt;pr++)nr.push(At(pr/Pt)*er);function Sr(ga){var Pa=0,Ja=Pt,di=Pt>>1;do nr[di]>ga?Ja=di:Pa=di,di=Pa+Ja>>1;while(di>Pa);var pi=nr[di+1]-nr[di];return pi&&(pi=(ga-nr[di+1])/pi),(di+1+pi)/Pt}var Wr=2*Sr(1)/w*_t/ot,ha=function(ga,Pa){var Ja=Sr(M(p(Pa))),di=ht(Ja)*ga;return Ja/=Wr,[di,Pa>=0?Ja:-Ja]};return ha.invert=function(ga,Pa){var Ja;return Pa*=Wr,M(Pa)<1&&(Ja=v(Pa)*L(At(M(Pa))*_t)),[ga/ht(M(Pa)),Ja]},ha}function To(){var qe=0,Je=2.5,ot=1.183136,ht=x.geoProjectionMutator(ji),At=ht(qe,Je,ot);return At.alpha=function(_t){return arguments.length?ht(qe=+_t,Je,ot):qe},At.k=function(_t){return arguments.length?ht(qe,Je=+_t,ot):Je},At.gamma=function(_t){return arguments.length?ht(qe,Je,ot=+_t):ot},At.scale(152.63)}function Yn(qe,Je){return M(qe[0]-Je[0])<l&&M(qe[1]-Je[1])<l}function _s(qe,Je){for(var ot=-1,ht=qe.length,At=qe[0],_t,Pt,er,nr=[];++ot<ht;){_t=qe[ot],Pt=(_t[0]-At[0])/Je,er=(_t[1]-At[1])/Je;for(var pr=0;pr<Je;++pr)nr.push([At[0]+pr*Pt,At[1]+pr*er]);At=_t}return nr.push(_t),nr}function Yo(qe){var Je=[],ot,ht,At,_t,Pt,er,nr,pr=qe[0].length;for(nr=0;nr<pr;++nr)ot=qe[0][nr],ht=ot[0][0],At=ot[0][1],_t=ot[1][1],Pt=ot[2][0],er=ot[2][1],Je.push(_s([[ht+l,At+l],[ht+l,_t-l],[Pt-l,_t-l],[Pt-l,er+l]],30));for(nr=qe[1].length-1;nr>=0;--nr)ot=qe[1][nr],ht=ot[0][0],At=ot[0][1],_t=ot[1][1],Pt=ot[2][0],er=ot[2][1],Je.push(_s([[Pt-l,er-l],[Pt-l,_t+l],[ht+l,_t+l],[ht+l,At-l]],30));return{type:"Polygon",coordinates:[A.merge(Je)]}}function Nn(qe,Je,ot){var ht,At;function _t(nr,pr){for(var Sr=pr<0?-1:1,Wr=Je[+(pr<0)],ha=0,ga=Wr.length-1;ha<ga&&nr>Wr[ha][2][0];++ha);var Pa=qe(nr-Wr[ha][1][0],pr);return Pa[0]+=qe(Wr[ha][1][0],Sr*pr>Sr*Wr[ha][0][1]?Wr[ha][0][1]:pr)[0],Pa}ot?_t.invert=ot(_t):qe.invert&&(_t.invert=function(nr,pr){for(var Sr=At[+(pr<0)],Wr=Je[+(pr<0)],ha=0,ga=Sr.length;ha<ga;++ha){var Pa=Sr[ha];if(Pa[0][0]<=nr&&nr<Pa[1][0]&&Pa[0][1]<=pr&&pr<Pa[1][1]){var Ja=qe.invert(nr-qe(Wr[ha][1][0],0)[0],pr);return Ja[0]+=Wr[ha][1][0],Yn(_t(Ja[0],Ja[1]),[nr,pr])?Ja:null}}});var Pt=x.geoProjection(_t),er=Pt.stream;return Pt.stream=function(nr){var pr=Pt.rotate(),Sr=er(nr),Wr=(Pt.rotate([0,0]),er(nr));return Pt.rotate(pr),Sr.sphere=function(){x.geoStream(ht,Wr)},Sr},Pt.lobes=function(nr){return arguments.length?(ht=Yo(nr),Je=nr.map(function(pr){return pr.map(function(Sr){return[[Sr[0][0]*f,Sr[0][1]*f],[Sr[1][0]*f,Sr[1][1]*f],[Sr[2][0]*f,Sr[2][1]*f]]})}),At=Je.map(function(pr){return pr.map(function(Sr){var Wr=qe(Sr[0][0],Sr[0][1])[0],ha=qe(Sr[2][0],Sr[2][1])[0],ga=qe(Sr[1][0],Sr[0][1])[1],Pa=qe(Sr[1][0],Sr[1][1])[1],Ja;return ga>Pa&&(Ja=ga,ga=Pa,Pa=Ja),[[Wr,ga],[ha,Pa]]})}),Pt):Je.map(function(pr){return pr.map(function(Sr){return[[Sr[0][0]*y,Sr[0][1]*y],[Sr[1][0]*y,Sr[1][1]*y],[Sr[2][0]*y,Sr[2][1]*y]]})})},Je!=null&&Pt.lobes(Je),Pt}var Wl=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Zu(){return Nn(ze,Wl).scale(160.857)}var ml=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function Bu(){return Nn(Os,ml).scale(152.63)}var El=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]];function qs(){return Nn(lt,El).scale(169.529)}var Jl=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Nu(){return Nn(lt,Jl).scale(169.529).rotate([20,0])}var Ic=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]];function Xu(){return Nn(mn,Ic,Ie).rotate([-20,-55]).scale(164.263).center([0,-5.4036])}var Th=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]];function bf(){return Nn(Qe,Th).scale(152.63).rotate([-20,0])}function Rs(qe,Je){return[3/u*qe*F(w*w/3-Je*Je),Je]}Rs.invert=function(qe,Je){return[u/3*qe/F(w*w/3-Je*Je),Je]};function Yc(){return x.geoProjection(Rs).scale(158.837)}function If(qe){function Je(ot,ht){if(M(M(ht)-S)<l)return[0,ht<0?-2:2];var At=p(ht),_t=c((1+At)/(1-At),qe/2),Pt=.5*(_t+1/_t)+r(ot*=qe);return[2*p(ot)/Pt,(_t-1/_t)/Pt]}return Je.invert=function(ot,ht){var At=M(ht);if(M(At-2)<l)return ot?null:[0,v(ht)*S];if(At>2)return null;ot/=2,ht/=2;var _t=ot*ot,Pt=ht*ht,er=2*ht/(1+_t+Pt);return er=c((1+er)/(1-er),1/qe),[t(2*ot,1-_t-Pt)/qe,L((er-1)/(er+1))]},Je}function Zl(){var qe=.5,Je=x.geoProjectionMutator(If),ot=Je(qe);return ot.spacing=function(ht){return arguments.length?Je(qe=+ht):qe},ot.scale(124.75)}var yl=w/b;function oc(qe,Je){return[qe*(1+F(r(Je)))/2,Je/(r(Je/2)*r(qe/6))]}oc.invert=function(qe,Je){var ot=M(qe),ht=M(Je),At=l,_t=S;ht<yl?_t*=ht/yl:At+=6*z(yl/ht);for(var Pt=0;Pt<25;Pt++){var er=p(_t),nr=F(r(_t)),pr=p(_t/2),Sr=r(_t/2),Wr=p(At/6),ha=r(At/6),ga=.5*At*(1+nr)-ot,Pa=_t/(Sr*ha)-ht,Ja=nr?-.25*At*er/nr:0,di=.5*(1+nr),pi=(1+.5*_t*pr/Sr)/(Sr*ha),Ci=_t/Sr*(Wr/6)/(ha*ha),$i=Ja*Ci-pi*di,Bn=(ga*Ci-Pa*di)/$i,Sn=(Pa*Ja-ga*pi)/$i;if(_t-=Bn,At-=Sn,M(Bn)<l&&M(Sn)<l)break}return[qe<0?-At:At,Je<0?-_t:_t]};function _c(){return x.geoProjection(oc).scale(97.2672)}function Zs(qe,Je){var ot=qe*qe,ht=Je*Je;return[qe*(.975534+ht*(-.119161+ot*-.0143059+ht*-.0547009)),Je*(1.00384+ot*(.0802894+ht*-.02855+ot*199025e-9)+ht*(.0998909+ht*-.0491032))]}Zs.invert=function(qe,Je){var ot=v(qe)*w,ht=Je/2,At=50;do{var _t=ot*ot,Pt=ht*ht,er=ot*ht,nr=ot*(.975534+Pt*(-.119161+_t*-.0143059+Pt*-.0547009))-qe,pr=ht*(1.00384+_t*(.0802894+Pt*-.02855+_t*199025e-9)+Pt*(.0998909+Pt*-.0491032))-Je,Sr=.975534-Pt*(.119161+3*_t*.0143059+Pt*.0547009),Wr=-er*(2*.119161+4*.0547009*Pt+2*.0143059*_t),ha=er*(2*.0802894+4*199025e-9*_t+2*-.02855*Pt),ga=1.00384+_t*(.0802894+199025e-9*_t)+Pt*(3*(.0998909-.02855*_t)-5*.0491032*Pt),Pa=Wr*ha-ga*Sr,Ja=(pr*Wr-nr*ga)/Pa,di=(nr*ha-pr*Sr)/Pa;ot-=Ja,ht-=di}while((M(Ja)>l||M(di)>l)&&--At>0);return At&&[ot,ht]};function _l(){return x.geoProjection(Zs).scale(139.98)}function Bs(qe,Je){return[p(qe)/r(Je),T(Je)*r(qe)]}Bs.invert=function(qe,Je){var ot=qe*qe,ht=Je*Je,At=ht+1,_t=ot+At,Pt=qe?m*F((_t-F(_t*_t-4*ot))/ot):1/F(At);return[L(qe*Pt),v(Je)*z(Pt)]};function $s(){return x.geoProjection(Bs).scale(144.049).clipAngle(90-.001)}function sc(qe){var Je=r(qe),ot=T(E+qe/2);function ht(At,_t){var Pt=_t-qe,er=M(Pt)<l?At*Je:M(er=E+_t/2)<l||M(M(er)-S)<l?0:At*Pt/i(T(er)/ot);return[er,Pt]}return ht.invert=function(At,_t){var Pt,er=_t+qe;return[M(_t)<l?At/Je:M(Pt=E+er/2)<l||M(M(Pt)-S)<l?0:At*i(T(Pt)/ot)/_t,er]},ht}function zl(){return nt(sc).parallel(40).scale(158.837)}function Yu(qe,Je){return[qe,1.25*i(T(E+.4*Je))]}Yu.invert=function(qe,Je){return[qe,2.5*e(o(.8*Je))-.625*w]};function Qs(){return x.geoProjection(Yu).scale(108.318)}function fp(qe){var Je=qe.length-1;function ot(ht,At){for(var _t=r(At),Pt=2/(1+_t*r(ht)),er=Pt*_t*p(ht),nr=Pt*p(At),pr=Je,Sr=qe[pr],Wr=Sr[0],ha=Sr[1],ga;--pr>=0;)Sr=qe[pr],Wr=Sr[0]+er*(ga=Wr)-nr*ha,ha=Sr[1]+er*ha+nr*ga;return Wr=er*(ga=Wr)-nr*ha,ha=er*ha+nr*ga,[Wr,ha]}return ot.invert=function(ht,At){var _t=20,Pt=ht,er=At;do{for(var nr=Je,pr=qe[nr],Sr=pr[0],Wr=pr[1],ha=0,ga=0,Pa;--nr>=0;)pr=qe[nr],ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=pr[0]+Pt*(Pa=Sr)-er*Wr,Wr=pr[1]+Pt*Wr+er*Pa;ha=Sr+Pt*(Pa=ha)-er*ga,ga=Wr+Pt*ga+er*Pa,Sr=Pt*(Pa=Sr)-er*Wr-ht,Wr=Pt*Wr+er*Pa-At;var Ja=ha*ha+ga*ga,di,pi;Pt-=di=(Sr*ha+Wr*ga)/Ja,er-=pi=(Wr*ha-Sr*ga)/Ja}while(M(di)+M(pi)>l*l&&--_t>0);if(_t){var Ci=F(Pt*Pt+er*er),$i=2*e(Ci*.5),Bn=p($i);return[t(Pt*Bn,Ci*r($i)),Ci?L(er*Bn/Ci):0]}},ot}var es=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],Wh=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Ss=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],So=[[.9245,0],[0,0],[.01943,0]],hf=[[.721316,0],[0,0],[-.00881625,-.00617325]];function Ku(){return Fl(es,[152,-64]).scale(1400).center([-160.908,62.4864]).clipAngle(30).angle(7.8)}function cu(){return Fl(Wh,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Zf(){return Fl(Ss,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Rc(){return Fl(So,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function pf(){return Fl(hf,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Fl(qe,Je){var ot=x.geoProjection(fp(qe)).rotate(Je).clipAngle(90),ht=x.geoRotation(Je),At=ot.center;return delete ot.rotate,ot.center=function(_t){return arguments.length?At(ht(_t)):ht.invert(At())},ot}var lh=F(6),Xf=F(7);function Rf(qe,Je){var ot=L(7*p(Je)/(3*lh));return[lh*qe*(2*r(2*ot/3)-1)/Xf,9*p(ot/3)/Xf]}Rf.invert=function(qe,Je){var ot=3*L(Je*Xf/9);return[qe*Xf/(lh*(2*r(2*ot/3)-1)),L(p(ot)*3*lh/7)]};function Kc(){return x.geoProjection(Rf).scale(164.859)}function Yf(qe,Je){for(var ot=(1+m)*p(Je),ht=Je,At=0,_t;At<25&&(ht-=_t=(p(ht/2)+p(ht)-ot)/(.5*r(ht/2)+r(ht)),!(M(_t)<l));At++);return[qe*(1+2*r(ht)/r(ht/2))/(3*b),2*F(3)*p(ht/2)/F(2+b)]}Yf.invert=function(qe,Je){var ot=Je*F(2+b)/(2*F(3)),ht=2*L(ot);return[3*b*qe/(1+2*r(ht)/r(ht/2)),L((ot+p(ht))/(1+m))]};function uh(){return x.geoProjection(Yf).scale(188.209)}function Ju(qe,Je){for(var ot=F(6/(4+w)),ht=(1+w/4)*p(Je),At=Je/2,_t=0,Pt;_t<25&&(At-=Pt=(At/2+p(At)-ht)/(.5+r(At)),!(M(Pt)<l));_t++);return[ot*(.5+r(At))*qe/1.5,ot*At]}Ju.invert=function(qe,Je){var ot=F(6/(4+w)),ht=Je/ot;return M(M(ht)-S)<l&&(ht=ht<0?-S:S),[1.5*qe/(ot*(.5+r(ht))),L((ht/2+p(ht))/(1+w/4))]};function Df(){return x.geoProjection(Ju).scale(166.518)}function Dc(qe,Je){var ot=Je*Je,ht=ot*ot,At=ot*ht;return[qe*(.84719-.13063*ot+At*At*(-.04515+.05494*ot-.02326*ht+.00331*At)),Je*(1.01183+ht*ht*(-.02625+.01926*ot-.00396*ht))]}Dc.invert=function(qe,Je){var ot=Je,ht=25,At,_t,Pt,er;do _t=ot*ot,Pt=_t*_t,ot-=At=(ot*(1.01183+Pt*Pt*(-.02625+.01926*_t-.00396*Pt))-Je)/(1.01183+Pt*Pt*(9*-.02625+11*.01926*_t+13*-.00396*Pt));while(M(At)>_&&--ht>0);return _t=ot*ot,Pt=_t*_t,er=_t*Pt,[qe/(.84719-.13063*_t+er*er*(-.04515+.05494*_t-.02326*Pt+.00331*er)),ot]};function Jc(){return x.geoProjection(Dc).scale(175.295)}function Eu(qe,Je){return[qe*(1+r(Je))/2,2*(Je-T(Je/2))]}Eu.invert=function(qe,Je){for(var ot=Je/2,ht=0,At=1/0;ht<10&&M(At)>l;++ht){var _t=r(Je/2);Je-=At=(Je-T(Je/2)-ot)/(1-.5/(_t*_t))}return[2*qe/(1+r(Je)),Je]};function wf(){return x.geoProjection(Eu).scale(152.63)}var zc=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]];function Us(){return Nn(fe(1/0),zc).rotate([20,0]).scale(152.63)}function Kf(qe,Je){var ot=p(Je),ht=r(Je),At=v(qe);if(qe===0||M(Je)===S)return[0,Je];if(Je===0)return[qe,0];if(M(qe)===S)return[qe*ht,S*ot];var _t=w/(2*qe)-2*qe/w,Pt=2*Je/w,er=(1-Pt*Pt)/(ot-Pt),nr=_t*_t,pr=er*er,Sr=1+nr/pr,Wr=1+pr/nr,ha=(_t*ot/er-_t/2)/Sr,ga=(pr*ot/nr+er/2)/Wr,Pa=ha*ha+ht*ht/Sr,Ja=ga*ga-(pr*ot*ot/nr+er*ot-1)/Wr;return[S*(ha+F(Pa)*At),S*(ga+F(Ja<0?0:Ja)*v(-Je*_t)*At)]}Kf.invert=function(qe,Je){qe/=S,Je/=S;var ot=qe*qe,ht=Je*Je,At=ot+ht,_t=w*w;return[qe?(At-1+F((1-At)*(1-At)+4*ot))/(2*qe)*S:0,Be(function(Pt){return At*(w*p(Pt)-2*Pt)*w+4*Pt*Pt*(Je-p(Pt))+2*w*Pt-_t*Je},0)]};function Zh(){return x.geoProjection(Kf).scale(127.267)}var ch=1.0148,df=.23185,Ah=-.14499,ku=.02406,fh=ch,ru=5*df,Cu=7*Ah,xc=9*ku,kl=1.790857183;function Fc(qe,Je){var ot=Je*Je;return[qe,Je*(ch+ot*ot*(df+ot*(Ah+ku*ot)))]}Fc.invert=function(qe,Je){Je>kl?Je=kl:Je<-kl&&(Je=-kl);var ot=Je,ht;do{var At=ot*ot;ot-=ht=(ot*(ch+At*At*(df+At*(Ah+ku*At)))-Je)/(fh+At*At*(ru+At*(Cu+xc*At)))}while(M(ht)>l);return[qe,ot]};function $u(){return x.geoProjection(Fc).scale(139.319)}function vu(qe,Je){if(M(Je)<l)return[qe,0];var ot=T(Je),ht=qe*p(Je);return[p(ht)/ot,Je+(1-r(ht))/ot]}vu.invert=function(qe,Je){if(M(Je)<l)return[qe,0];var ot=qe*qe+Je*Je,ht=Je*.5,At=10,_t;do{var Pt=T(ht),er=1/r(ht),nr=ot-2*Je*ht+ht*ht;ht-=_t=(Pt*nr+2*(ht-Je))/(2+nr*er*er+2*(ht-Je)*Pt)}while(M(_t)>l&&--At>0);return Pt=T(ht),[(M(Je)<M(ht+1/Pt)?L(qe*Pt):v(Je)*v(qe)*(z(M(qe*Pt))+S))/p(ht),ht]};function xl(){return x.geoProjection(vu).scale(103.74)}function hh(qe,Je){var ot=bc(qe[1],qe[0]),ht=bc(Je[1],Je[0]),At=hp(ot,ht),_t=lc(ot)/lc(ht);return Uu([1,0,qe[0][0],0,1,qe[0][1]],Uu([_t,0,0,0,_t,0],Uu([r(At),p(At),0,-p(At),r(At),0],[1,0,-Je[0][0],0,1,-Je[0][1]])))}function Sh(qe){var Je=1/(qe[0]*qe[4]-qe[1]*qe[3]);return[Je*qe[4],-Je*qe[1],Je*(qe[1]*qe[5]-qe[2]*qe[4]),-Je*qe[3],Je*qe[0],Je*(qe[2]*qe[3]-qe[0]*qe[5])]}function Uu(qe,Je){return[qe[0]*Je[0]+qe[1]*Je[3],qe[0]*Je[1]+qe[1]*Je[4],qe[0]*Je[2]+qe[1]*Je[5]+qe[2],qe[3]*Je[0]+qe[4]*Je[3],qe[3]*Je[1]+qe[4]*Je[4],qe[3]*Je[2]+qe[4]*Je[5]+qe[5]]}function bc(qe,Je){return[qe[0]-Je[0],qe[1]-Je[1]]}function lc(qe){return F(qe[0]*qe[0]+qe[1]*qe[1])}function hp(qe,Je){return t(qe[0]*Je[1]-qe[1]*Je[0],qe[0]*Je[0]+qe[1]*Je[1])}function vf(qe,Je,ot){ht(qe,{transform:null});function ht(pr,Sr){if(pr.edges=au(pr.face),Sr.face){var Wr=pr.shared=zf(pr.face,Sr.face),ha=hh(Wr.map(Sr.project),Wr.map(pr.project));pr.transform=Sr.transform?Uu(Sr.transform,ha):ha;for(var ga=Sr.edges,Pa=0,Ja=ga.length;Pa<Ja;++Pa)Lu(Wr[0],ga[Pa][1])&&Lu(Wr[1],ga[Pa][0])&&(ga[Pa]=pr),Lu(Wr[0],ga[Pa][0])&&Lu(Wr[1],ga[Pa][1])&&(ga[Pa]=pr);for(ga=pr.edges,Pa=0,Ja=ga.length;Pa<Ja;++Pa)Lu(Wr[0],ga[Pa][0])&&Lu(Wr[1],ga[Pa][1])&&(ga[Pa]=Sr),Lu(Wr[0],ga[Pa][1])&&Lu(Wr[1],ga[Pa][0])&&(ga[Pa]=Sr)}else pr.transform=Sr.transform;return pr.children&&pr.children.forEach(function(di){ht(di,pr)}),pr}function At(pr,Sr){var Wr=Je(pr,Sr),ha=Wr.project([pr*y,Sr*y]),ga;return(ga=Wr.transform)?[ga[0]*ha[0]+ga[1]*ha[1]+ga[2],-(ga[3]*ha[0]+ga[4]*ha[1]+ga[5])]:(ha[1]=-ha[1],ha)}$c(qe)&&(At.invert=function(pr,Sr){var Wr=_t(qe,[pr,-Sr]);return Wr&&(Wr[0]*=f,Wr[1]*=f,Wr)});function _t(pr,Sr){var Wr=pr.project.invert,ha=pr.transform,ga=Sr;if(ha&&(ha=Sh(ha),ga=[ha[0]*ga[0]+ha[1]*ga[1]+ha[2],ha[3]*ga[0]+ha[4]*ga[1]+ha[5]]),Wr&&pr===Pt(Pa=Wr(ga)))return Pa;for(var Pa,Ja=pr.children,di=0,pi=Ja&&Ja.length;di<pi;++di)if(Pa=_t(Ja[di],Sr))return Pa}function Pt(pr){return Je(pr[0]*f,pr[1]*f)}var er=x.geoProjection(At),nr=er.stream;return er.stream=function(pr){var Sr=er.rotate(),Wr=nr(pr),ha=(er.rotate([0,0]),nr(pr));return er.rotate(Sr),Wr.sphere=function(){ha.polygonStart(),ha.lineStart(),Tf(ha,qe),ha.lineEnd(),ha.polygonEnd()},Wr},er.angle(ot==null?-30:ot*y)}function Tf(qe,Je,ot){var ht,At=Je.edges,_t=At.length,Pt,er={type:"MultiPoint",coordinates:Je.face},nr=Je.face.filter(function(Ja){return M(Ja[1])!==90}),pr=x.geoBounds({type:"MultiPoint",coordinates:nr}),Sr=!1,Wr=-1,ha=pr[1][0]-pr[0][0],ga=ha===180||ha===360?[(pr[0][0]+pr[1][0])/2,(pr[0][1]+pr[1][1])/2]:x.geoCentroid(er);if(ot)for(;++Wr<_t&&At[Wr]!==ot;);++Wr;for(var Pa=0;Pa<_t;++Pa)Pt=At[(Pa+Wr)%_t],Array.isArray(Pt)?(Sr||(qe.point((ht=x.geoInterpolate(Pt[0],ga)(l))[0],ht[1]),Sr=!0),qe.point((ht=x.geoInterpolate(Pt[1],ga)(l))[0],ht[1])):(Sr=!1,Pt!==ot&&Tf(qe,Pt,Je))}function Lu(qe,Je){return qe&&Je&&qe[0]===Je[0]&&qe[1]===Je[1]}function zf(qe,Je){for(var ot,ht,At=qe.length,_t=null,Pt=0;Pt<At;++Pt){ot=qe[Pt];for(var er=Je.length;--er>=0;)if(ht=Je[er],ot[0]===ht[0]&&ot[1]===ht[1]){if(_t)return[_t,ot];_t=ot}}}function au(qe){for(var Je=qe.length,ot=[],ht=qe[Je-1],At=0;At<Je;++At)ot.push([ht,ht=qe[At]]);return ot}function $c(qe){return qe.project.invert||qe.children&&qe.children.some($c)}var Mh=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],Ff=[[0,2,1],[0,3,2],[5,1,2],[5,2,3],[0,1,4],[0,4,3],[5,4,1],[5,3,4]].map(function(qe){return qe.map(function(Je){return Mh[Je]})});function il(qe){qe=qe||function(ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:ot});return x.geoGnomonic().scale(1).translate([0,0]).rotate([-ht[0],-ht[1]])};var Je=Ff.map(function(ot){return{face:ot,project:qe(ot)}});return[-1,0,0,1,0,1,4,5].forEach(function(ot,ht){var At=Je[ot];At&&(At.children||(At.children=[])).push(Je[ht])}),vf(Je[0],function(ot,ht){return Je[ot<-w/2?ht<0?6:4:ot<0?ht<0?2:0:ot<w/2?ht<0?3:1:ht<0?7:5]}).angle(-30).scale(101.858).center([0,45])}var mu=2/F(3);function gu(qe,Je){var ot=Ve(qe,Je);return[ot[0]*mu,ot[1]]}gu.invert=function(qe,Je){return Ve.invert(qe/mu,Je)};function Jf(qe){qe=qe||function(ot){var ht=x.geoCentroid({type:"MultiPoint",coordinates:ot});return x.geoProjection(gu).translate([0,0]).scale(1).rotate(ht[1]>0?[-ht[0],0]:[180-ht[0],180])};var Je=Ff.map(function(ot){return{face:ot,project:qe(ot)}});return[-1,0,0,1,0,1,4,5].forEach(function(ot,ht){var At=Je[ot];At&&(At.children||(At.children=[])).push(Je[ht])}),vf(Je[0],function(ot,ht){return Je[ot<-w/2?ht<0?6:4:ot<0?ht<0?2:0:ot<w/2?ht<0?3:1:ht<0?7:5]}).angle(-30).scale(121.906).center([0,48.5904])}function el(qe){qe=qe||function(Pt){var er=Pt.length===6?x.geoCentroid({type:"MultiPoint",coordinates:Pt}):Pt[0];return x.geoGnomonic().scale(1).translate([0,0]).rotate([-er[0],-er[1]])};var Je=Ff.map(function(Pt){for(var er=Pt.map(Af),nr=er.length,pr=er[nr-1],Sr,Wr=[],ha=0;ha<nr;++ha)Sr=er[ha],Wr.push(ju([pr[0]*.9486832980505138+Sr[0]*.31622776601683794,pr[1]*.9486832980505138+Sr[1]*.31622776601683794,pr[2]*.9486832980505138+Sr[2]*.31622776601683794]),ju([Sr[0]*.9486832980505138+pr[0]*.31622776601683794,Sr[1]*.9486832980505138+pr[1]*.31622776601683794,Sr[2]*.9486832980505138+pr[2]*.31622776601683794])),pr=Sr;return Wr}),ot=[],ht=[-1,0,0,1,0,1,4,5];Je.forEach(function(Pt,er){for(var nr=Ff[er],pr=nr.length,Sr=ot[er]=[],Wr=0;Wr<pr;++Wr)Je.push([nr[Wr],Pt[(Wr*2+2)%(2*pr)],Pt[(Wr*2+1)%(2*pr)]]),ht.push(er),Sr.push(wc(Af(Pt[(Wr*2+2)%(2*pr)]),Af(Pt[(Wr*2+1)%(2*pr)])))});var At=Je.map(function(Pt){return{project:qe(Pt),face:Pt}});ht.forEach(function(Pt,er){var nr=At[Pt];nr&&(nr.children||(nr.children=[])).push(At[er])});function _t(Pt,er){var nr=r(er),pr=[nr*r(Pt),nr*p(Pt),p(er)],Sr=Pt<-w/2?er<0?6:4:Pt<0?er<0?2:0:Pt<w/2?er<0?3:1:er<0?7:5,Wr=ot[Sr];return At[mf(Wr[0],pr)<0?8+3*Sr:mf(Wr[1],pr)<0?8+3*Sr+1:mf(Wr[2],pr)<0?8+3*Sr+2:Sr]}return vf(At[0],_t).angle(-30).scale(110.625).center([0,45])}function mf(qe,Je){for(var ot=0,ht=qe.length,At=0;ot<ht;++ot)At+=qe[ot]*Je[ot];return At}function wc(qe,Je){return[qe[1]*Je[2]-qe[2]*Je[1],qe[2]*Je[0]-qe[0]*Je[2],qe[0]*Je[1]-qe[1]*Je[0]]}function ju(qe){return[t(qe[1],qe[0])*y,L(n(-1,s(1,qe[2])))*y]}function Af(qe){var Je=qe[0]*f,ot=qe[1]*f,ht=r(ot);return[ht*r(Je),ht*p(Je),p(ot)]}function uc(){}function Qc(qe){if((ot=qe.length)<4)return!1;for(var Je=0,ot,ht=qe[ot-1][1]*qe[0][0]-qe[ot-1][0]*qe[0][1];++Je<ot;)ht+=qe[Je-1][1]*qe[Je][0]-qe[Je-1][0]*qe[Je][1];return ht<=0}function $f(qe,Je){for(var ot=Je[0],ht=Je[1],At=!1,_t=0,Pt=qe.length,er=Pt-1;_t<Pt;er=_t++){var nr=qe[_t],pr=nr[0],Sr=nr[1],Wr=qe[er],ha=Wr[0],ga=Wr[1];Sr>ht^ga>ht&&ot<(ha-pr)*(ht-Sr)/(ga-Sr)+pr&&(At=!At)}return At}function Vl(qe,Je){var ot=Je.stream,ht;if(!ot)throw new Error("invalid projection");switch(qe&&qe.type){case"Feature":ht=Vu;break;case"FeatureCollection":ht=Qf;break;default:ht=cc;break}return ht(qe,ot)}function Qf(qe,Je){return{type:"FeatureCollection",features:qe.features.map(function(ot){return Vu(ot,Je)})}}function Vu(qe,Je){return{type:"Feature",id:qe.id,properties:qe.properties,geometry:cc(qe.geometry,Je)}}function Tc(qe,Je){return{type:"GeometryCollection",geometries:qe.geometries.map(function(ot){return cc(ot,Je)})}}function cc(qe,Je){if(!qe)return null;if(qe.type==="GeometryCollection")return Tc(qe,Je);var ot;switch(qe.type){case"Point":ot=fc;break;case"MultiPoint":ot=fc;break;case"LineString":ot=Oc;break;case"MultiLineString":ot=Oc;break;case"Polygon":ot=Qu;break;case"MultiPolygon":ot=Qu;break;case"Sphere":ot=Qu;break;default:return null}return x.geoStream(qe,Je(ot)),ot.result()}var Cl=[],iu=[],fc={point:function(qe,Je){Cl.push([qe,Je])},result:function(){var qe=Cl.length?Cl.length<2?{type:"Point",coordinates:Cl[0]}:{type:"MultiPoint",coordinates:Cl}:null;return Cl=[],qe}},Oc={lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){Cl.length&&(iu.push(Cl),Cl=[])},result:function(){var qe=iu.length?iu.length<2?{type:"LineString",coordinates:iu[0]}:{type:"MultiLineString",coordinates:iu}:null;return iu=[],qe}},Qu={polygonStart:uc,lineStart:uc,point:function(qe,Je){Cl.push([qe,Je])},lineEnd:function(){var qe=Cl.length;if(qe){do Cl.push(Cl[0].slice());while(++qe<4);iu.push(Cl),Cl=[]}},polygonEnd:uc,result:function(){if(!iu.length)return null;var qe=[],Je=[];return iu.forEach(function(ot){Qc(ot)?qe.push([ot]):Je.push(ot)}),Je.forEach(function(ot){var ht=ot[0];qe.some(function(At){if($f(At[0],ht))return At.push(ot),!0})||qe.push([ot])}),iu=[],qe.length?qe.length>1?{type:"MultiPolygon",coordinates:qe}:{type:"Polygon",coordinates:qe[0]}:null}};function ef(qe){var Je=qe(S,0)[0]-qe(-S,0)[0];function ot(ht,At){var _t=M(ht)<S,Pt=qe(_t?ht:ht>0?ht-w:ht+w,At),er=(Pt[0]-Pt[1])*m,nr=(Pt[0]+Pt[1])*m;if(_t)return[er,nr];var pr=Je*m,Sr=er>0^nr>0?-1:1;return[Sr*er-v(nr)*pr,Sr*nr-v(er)*pr]}return qe.invert&&(ot.invert=function(ht,At){var _t=(ht+At)*m,Pt=(At-ht)*m,er=M(_t)<.5*Je&&M(Pt)<.5*Je;if(!er){var nr=Je*m,pr=_t>0^Pt>0?-1:1,Sr=-pr*ht+(Pt>0?1:-1)*nr,Wr=-pr*At+(_t>0?1:-1)*nr;_t=(-Sr-Wr)*m,Pt=(Sr-Wr)*m}var ha=qe.invert(_t,Pt);return er||(ha[0]+=_t>0?w:-w),ha}),x.geoProjection(ot).rotate([-90,-90,45]).clipAngle(180-.001)}function Zt(){return ef(da).scale(176.423)}function fr(){return ef($n).scale(111.48)}function Yr(qe,Je){if(!(0<=(Je=+Je)&&Je<=20))throw new Error("invalid digits");function ot(pr){var Sr=pr.length,Wr=2,ha=new Array(Sr);for(ha[0]=+pr[0].toFixed(Je),ha[1]=+pr[1].toFixed(Je);Wr<Sr;)ha[Wr]=pr[Wr],++Wr;return ha}function ht(pr){return pr.map(ot)}function At(pr){for(var Sr=ot(pr[0]),Wr=[Sr],ha=1;ha<pr.length;ha++){var ga=ot(pr[ha]);(ga.length>2||ga[0]!=Sr[0]||ga[1]!=Sr[1])&&(Wr.push(ga),Sr=ga)}return Wr.length===1&&pr.length>1&&Wr.push(ot(pr[pr.length-1])),Wr}function _t(pr){return pr.map(At)}function Pt(pr){if(pr==null)return pr;var Sr;switch(pr.type){case"GeometryCollection":Sr={type:"GeometryCollection",geometries:pr.geometries.map(Pt)};break;case"Point":Sr={type:"Point",coordinates:ot(pr.coordinates)};break;case"MultiPoint":Sr={type:pr.type,coordinates:ht(pr.coordinates)};break;case"LineString":Sr={type:pr.type,coordinates:At(pr.coordinates)};break;case"MultiLineString":case"Polygon":Sr={type:pr.type,coordinates:_t(pr.coordinates)};break;case"MultiPolygon":Sr={type:"MultiPolygon",coordinates:pr.coordinates.map(_t)};break;default:return pr}return pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}function er(pr){var Sr={type:"Feature",properties:pr.properties,geometry:Pt(pr.geometry)};return pr.id!=null&&(Sr.id=pr.id),pr.bbox!=null&&(Sr.bbox=pr.bbox),Sr}if(qe!=null)switch(qe.type){case"Feature":return er(qe);case"FeatureCollection":{var nr={type:"FeatureCollection",features:qe.features.map(er)};return qe.bbox!=null&&(nr.bbox=qe.bbox),nr}default:return Pt(qe)}return qe}function qr(qe){var Je=p(qe);function ot(ht,At){var _t=Je?T(ht*Je/2)/Je:ht/2;if(!At)return[2*_t,-qe];var Pt=2*e(_t*p(At)),er=1/T(At);return[p(Pt)*er,At+(1-r(Pt))*er-qe]}return ot.invert=function(ht,At){if(M(At+=qe)<l)return[Je?2*e(Je*ht/2)/Je:ht,0];var _t=ht*ht+At*At,Pt=0,er=10,nr;do{var pr=T(Pt),Sr=1/r(Pt),Wr=_t-2*At*Pt+Pt*Pt;Pt-=nr=(pr*Wr+2*(Pt-At))/(2+Wr*Sr*Sr+2*(Pt-At)*pr)}while(M(nr)>l&&--er>0);var ha=ht*(pr=T(Pt)),ga=T(M(At)<M(Pt+1/pr)?L(ha)*.5:z(ha)*.5+w/4)/p(Pt);return[Je?2*e(Je*ga)/Je:2*ga,Pt]},ot}function ba(){return nt(qr).scale(131.215)}var Ka=[[.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]];Ka.forEach(function(qe){qe[1]*=1.0144});function oi(qe,Je){var ot=s(18,M(Je)*36/w),ht=a(ot),At=ot-ht,_t=(Wr=Ka[ht])[0],Pt=Wr[1],er=(Wr=Ka[++ht])[0],nr=Wr[1],pr=(Wr=Ka[s(19,++ht)])[0],Sr=Wr[1],Wr;return[qe*(er+At*(pr-_t)/2+At*At*(pr-2*er+_t)/2),(Je>0?S:-S)*(nr+At*(Sr-Pt)/2+At*At*(Sr-2*nr+Pt)/2)]}oi.invert=function(qe,Je){var ot=Je/S,ht=ot*90,At=s(18,M(ht/5)),_t=n(0,a(At));do{var Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],pr=nr-Pt,Sr=nr-2*er+Pt,Wr=2*(M(ot)-er)/pr,ha=Sr/pr,ga=Wr*(1-ha*Wr*(1-2*ha*Wr));if(ga>=0||_t===1){ht=(Je>=0?5:-5)*(ga+At);var Pa=50,Ja;do At=s(18,M(ht)/5),_t=a(At),ga=At-_t,Pt=Ka[_t][1],er=Ka[_t+1][1],nr=Ka[s(19,_t+2)][1],ht-=(Ja=(Je>=0?S:-S)*(er+ga*(nr-Pt)/2+ga*ga*(nr-2*er+Pt)/2)-Je)*y;while(M(Ja)>_&&--Pa>0);break}}while(--_t>=0);var di=Ka[_t][0],pi=Ka[_t+1][0],Ci=Ka[s(19,_t+2)][0];return[qe/(pi+ga*(Ci-di)/2+ga*ga*(Ci-2*pi+di)/2),ht*f]};function yi(){return x.geoProjection(oi).scale(152.63)}function ki(qe){function Je(ot,ht){var At=r(ht),_t=(qe-1)/(qe-At*r(ot));return[_t*At*p(ot),_t*p(ht)]}return Je.invert=function(ot,ht){var At=ot*ot+ht*ht,_t=F(At),Pt=(qe-F(1-At*(qe+1)/(qe-1)))/((qe-1)/_t+_t/(qe-1));return[t(ot*Pt,_t*F(1-Pt*Pt)),_t?L(ht*Pt/_t):0]},Je}function Bi(qe,Je){var ot=ki(qe);if(!Je)return ot;var ht=r(Je),At=p(Je);function _t(Pt,er){var nr=ot(Pt,er),pr=nr[1],Sr=pr*At/(qe-1)+ht;return[nr[0]*ht/Sr,pr/Sr]}return _t.invert=function(Pt,er){var nr=(qe-1)/(qe-1-er*At);return ot.invert(nr*Pt,nr*er*ht)},_t}function li(){var qe=2,Je=0,ot=x.geoProjectionMutator(Bi),ht=ot(qe,Je);return ht.distance=function(At){return arguments.length?ot(qe=+At,Je):qe},ht.tilt=function(At){return arguments.length?ot(qe,Je=At*f):Je*y},ht.scale(432.147).clipAngle(z(1/qe)*y-1e-6)}var _i=1e-4,vi=1e4,ti=-180,rn=ti+_i,Kn=180,Wn=Kn-_i,Jn=-90,no=Jn+_i,en=90,Ri=en-_i;function co(qe){return qe.length>0}function Wo(qe){return Math.floor(qe*vi)/vi}function bs(qe){return qe===Jn||qe===en?[0,qe]:[ti,Wo(qe)]}function Xs(qe){var Je=qe[0],ot=qe[1],ht=!1;return Je<=rn?(Je=ti,ht=!0):Je>=Wn&&(Je=Kn,ht=!0),ot<=no?(ot=Jn,ht=!0):ot>=Ri&&(ot=en,ht=!0),ht?[Je,ot]:qe}function Ms(qe){return qe.map(Xs)}function Hs(qe,Je,ot){for(var ht=0,At=qe.length;ht<At;++ht){var _t=qe[ht].slice();ot.push({index:-1,polygon:Je,ring:_t});for(var Pt=0,er=_t.length;Pt<er;++Pt){var nr=_t[Pt],pr=nr[0],Sr=nr[1];if(pr<=rn||pr>=Wn||Sr<=no||Sr>=Ri){_t[Pt]=Xs(nr);for(var Wr=Pt+1;Wr<er;++Wr){var ha=_t[Wr],ga=ha[0],Pa=ha[1];if(ga>rn&&ga<Wn&&Pa>no&&Pa<Ri)break}if(Wr===Pt+1)continue;if(Pt){var Ja={index:-1,polygon:Je,ring:_t.slice(0,Pt+1)};Ja.ring[Ja.ring.length-1]=bs(Sr),ot[ot.length-1]=Ja}else ot.pop();if(Wr>=er)break;ot.push({index:-1,polygon:Je,ring:_t=_t.slice(Wr-1)}),_t[0]=bs(_t[0][1]),Pt=-1,er=_t.length}}}}function vs(qe){var Je,ot=qe.length,ht={},At={},_t,Pt,er,nr,pr;for(Je=0;Je<ot;++Je){if(_t=qe[Je],Pt=_t.ring[0],nr=_t.ring[_t.ring.length-1],Pt[0]===nr[0]&&Pt[1]===nr[1]){_t.polygon.push(_t.ring),qe[Je]=null;continue}_t.index=Je,ht[Pt]=At[nr]=_t}for(Je=0;Je<ot;++Je)if(_t=qe[Je],_t){if(Pt=_t.ring[0],nr=_t.ring[_t.ring.length-1],er=At[Pt],pr=ht[nr],delete ht[Pt],delete At[nr],Pt[0]===nr[0]&&Pt[1]===nr[1]){_t.polygon.push(_t.ring);continue}er?(delete At[Pt],delete ht[er.ring[0]],er.ring.pop(),qe[er.index]=null,_t={index:-1,polygon:er.polygon,ring:er.ring.concat(_t.ring)},er===pr?_t.polygon.push(_t.ring):(_t.index=ot++,qe.push(ht[_t.ring[0]]=At[_t.ring[_t.ring.length-1]]=_t))):pr?(delete ht[nr],delete At[pr.ring[pr.ring.length-1]],_t.ring.pop(),_t={index:ot++,polygon:pr.polygon,ring:_t.ring.concat(pr.ring)},qe[pr.index]=null,qe.push(ht[_t.ring[0]]=At[_t.ring[_t.ring.length-1]]=_t)):(_t.ring.push(_t.ring[0]),_t.polygon.push(_t.ring))}}function Il(qe){var Je={type:"Feature",geometry:fl(qe.geometry)};return qe.id!=null&&(Je.id=qe.id),qe.bbox!=null&&(Je.bbox=qe.bbox),qe.properties!=null&&(Je.properties=qe.properties),Je}function fl(qe){if(qe==null)return qe;var Je,ot,ht,At;switch(qe.type){case"GeometryCollection":Je={type:"GeometryCollection",geometries:qe.geometries.map(fl)};break;case"Point":Je={type:"Point",coordinates:Xs(qe.coordinates)};break;case"MultiPoint":case"LineString":Je={type:qe.type,coordinates:Ms(qe.coordinates)};break;case"MultiLineString":Je={type:"MultiLineString",coordinates:qe.coordinates.map(Ms)};break;case"Polygon":{var _t=[];Hs(qe.coordinates,_t,ot=[]),vs(ot),Je={type:"Polygon",coordinates:_t};break}case"MultiPolygon":{ot=[],ht=-1,At=qe.coordinates.length;for(var Pt=new Array(At);++ht<At;)Hs(qe.coordinates[ht],Pt[ht]=[],ot);vs(ot),Je={type:"MultiPolygon",coordinates:Pt.filter(co)};break}default:return qe}return qe.bbox!=null&&(Je.bbox=qe.bbox),Je}function tl(qe){if(qe==null)return qe;switch(qe.type){case"Feature":return Il(qe);case"FeatureCollection":{var Je={type:"FeatureCollection",features:qe.features.map(Il)};return qe.bbox!=null&&(Je.bbox=qe.bbox),Je}default:return fl(qe)}}function Ln(qe,Je){var ot=T(Je/2),ht=p(E*ot);return[qe*(.74482-.34588*ht*ht),1.70711*ot]}Ln.invert=function(qe,Je){var ot=Je/1.70711,ht=p(E*ot);return[qe/(.74482-.34588*ht*ht),2*e(ot)]};function Ao(){return x.geoProjection(Ln).scale(146.153)}function js(qe,Je,ot){var ht=x.geoInterpolate(Je,ot),At=ht(.5),_t=x.geoRotation([-At[0],-At[1]])(Je),Pt=ht.distance/2,er=-L(p(_t[1]*f)/p(Pt)),nr=[-At[0],-At[1],-(_t[0]>0?w-er:er)*y],pr=x.geoProjection(qe(Pt)).rotate(nr),Sr=x.geoRotation(nr),Wr=pr.center;return delete pr.rotate,pr.center=function(ha){return arguments.length?Wr(Sr(ha)):Sr.invert(Wr())},pr.clipAngle(90)}function Ts(qe){var Je=r(qe);function ot(ht,At){var _t=x.geoGnomonicRaw(ht,At);return _t[0]*=Je,_t}return ot.invert=function(ht,At){return x.geoGnomonicRaw.invert(ht/Je,At)},ot}function nu(){return Pu([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function Pu(qe,Je){return js(Ts,qe,Je)}function ec(qe){if(!(qe*=2))return x.geoAzimuthalEquidistantRaw;var Je=-qe/2,ot=-Je,ht=qe*qe,At=T(ot),_t=.5/p(ot);function Pt(er,nr){var pr=z(r(nr)*r(er-Je)),Sr=z(r(nr)*r(er-ot)),Wr=nr<0?-1:1;return pr*=pr,Sr*=Sr,[(pr-Sr)/(2*qe),Wr*F(4*ht*Sr-(ht-pr+Sr)*(ht-pr+Sr))/(2*qe)]}return Pt.invert=function(er,nr){var pr=nr*nr,Sr=r(F(pr+(ha=er+Je)*ha)),Wr=r(F(pr+(ha=er+ot)*ha)),ha,ga;return[t(ga=Sr-Wr,ha=(Sr+Wr)*At),(nr<0?-1:1)*z(F(ha*ha+ga*ga)*_t)]},Pt}function tf(){return yu([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function yu(qe,Je){return js(ec,qe,Je)}function Bc(qe,Je){if(M(Je)<l)return[qe,0];var ot=M(Je/S),ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,v(Je)*w*T(ht/2)];var At=r(ht),_t=M(w/qe-qe/w)/2,Pt=_t*_t,er=At/(ot+At-1),nr=er*(2/ot-1),pr=nr*nr,Sr=pr+Pt,Wr=er-pr,ha=Pt+er;return[v(qe)*w*(_t*Wr+F(Pt*Wr*Wr-Sr*(er*er-pr)))/Sr,v(Je)*w*(nr*ha-_t*F((Pt+1)*Sr-ha*ha))/Sr]}Bc.invert=function(qe,Je){if(M(Je)<l)return[qe,0];if(M(qe)<l)return[0,S*p(2*e(Je/w))];var ot=(qe/=w)*qe,ht=(Je/=w)*Je,At=ot+ht,_t=At*At,Pt=-M(Je)*(1+At),er=Pt-2*ht+ot,nr=-2*Pt+1+2*ht+_t,pr=ht/nr+(2*er*er*er/(nr*nr*nr)-9*Pt*er/(nr*nr))/27,Sr=(Pt-er*er/(3*nr))/nr,Wr=2*F(-Sr/3),ha=z(3*pr/(Sr*Wr))/3;return[w*(At-1+F(1+2*(ot-ht)+_t))/(2*qe),v(Je)*w*(-Wr*r(ha+w/3)-er/(3*nr))]};function Iu(){return x.geoProjection(Bc).scale(79.4183)}function Ac(qe,Je){if(M(Je)<l)return[qe,0];var ot=M(Je/S),ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,v(Je)*w*T(ht/2)];var At=r(ht),_t=M(w/qe-qe/w)/2,Pt=_t*_t,er=At*(F(1+Pt)-_t*At)/(1+Pt*ot*ot);return[v(qe)*w*er,v(Je)*w*F(1-er*(2*_t+er))]}Ac.invert=function(qe,Je){if(!qe)return[0,S*p(2*e(Je/w))];var ot=M(qe/w),ht=(1-ot*ot-(Je/=w)*Je)/(2*ot),At=ht*ht,_t=F(At+1);return[v(qe)*w*(_t-ht),v(Je)*S*p(2*t(F((1-2*ht*ot)*(ht+_t)-ot),F(_t+ht+ot)))]};function ro(){return x.geoProjection(Ac).scale(79.4183)}function Po(qe,Je){if(M(Je)<l)return[qe,0];var ot=Je/S,ht=L(ot);if(M(qe)<l||M(M(Je)-S)<l)return[0,w*T(ht/2)];var At=(w/qe-qe/w)/2,_t=ot/(1+r(ht));return[w*(v(qe)*F(At*At+1-_t*_t)-At),w*_t]}Po.invert=function(qe,Je){if(!Je)return[qe,0];var ot=Je/w,ht=(w*w*(1-ot*ot)-qe*qe)/(2*w*qe);return[qe?w*(v(qe)*F(ht*ht+1)-ht):0,S*p(2*e(ot))]};function Nc(){return x.geoProjection(Po).scale(79.4183)}function hc(qe,Je){if(!Je)return[qe,0];var ot=M(Je);if(!qe||ot===S)return[0,Je];var ht=ot/S,At=ht*ht,_t=(8*ht-At*(At+2)-5)/(2*At*(ht-1)),Pt=_t*_t,er=ht*_t,nr=At+Pt+2*er,pr=ht+3*_t,Sr=qe/S,Wr=Sr+1/Sr,ha=v(M(qe)-S)*F(Wr*Wr-4),ga=ha*ha,Pa=nr*(At+Pt*ga-1)+(1-At)*(At*(pr*pr+4*Pt)+12*er*Pt+4*Pt*Pt),Ja=(ha*(nr+Pt-1)+2*F(Pa))/(4*nr+ga);return[v(qe)*S*Ja,v(Je)*S*F(1+ha*M(Ja)-Ja*Ja)]}hc.invert=function(qe,Je){var ot;if(!qe||!Je)return[qe,Je];Je/=w;var ht=v(qe)*qe/S,At=(ht*ht-1+4*Je*Je)/M(ht),_t=At*At,Pt=2*Je,er=50;do{var nr=Pt*Pt,pr=(8*Pt-nr*(nr+2)-5)/(2*nr*(Pt-1)),Sr=(3*Pt-nr*Pt-10)/(2*nr*Pt),Wr=pr*pr,ha=Pt*pr,ga=Pt+pr,Pa=ga*ga,Ja=Pt+3*pr,di=Pa*(nr+Wr*_t-1)+(1-nr)*(nr*(Ja*Ja+4*Wr)+Wr*(12*ha+4*Wr)),pi=-2*ga*(4*ha*Wr+(1-4*nr+3*nr*nr)*(1+Sr)+Wr*(-6+14*nr-_t+(-8+8*nr-2*_t)*Sr)+ha*(-8+12*nr+(-10+10*nr-_t)*Sr)),Ci=F(di),$i=At*(Pa+Wr-1)+2*Ci-ht*(4*Pa+_t),Bn=At*(2*pr*Sr+2*ga*(1+Sr))+pi/Ci-8*ga*(At*(-1+Wr+Pa)+2*Ci)*(1+Sr)/(_t+4*Pa);Pt-=ot=$i/Bn}while(ot>l&&--er>0);return[v(qe)*(F(At*At+4)+At)*w/4,S*Pt]};function pc(){return x.geoProjection(hc).scale(127.16)}function Oe(qe,Je,ot,ht,At){function _t(Pt,er){var nr=ot*p(ht*er),pr=F(1-nr*nr),Sr=F(2/(1+pr*r(Pt*=At)));return[qe*pr*Sr*p(Pt),Je*nr*Sr]}return _t.invert=function(Pt,er){var nr=Pt/qe,pr=er/Je,Sr=F(nr*nr+pr*pr),Wr=2*L(Sr/2);return[t(Pt*T(Wr),qe*Sr)/At,Sr&&L(er*p(Wr)/(Je*ot*Sr))/ht]},_t}function R(qe,Je,ot,ht){var At=w/3;qe=n(qe,l),Je=n(Je,l),qe=s(qe,S),Je=s(Je,w-l),ot=n(ot,0),ot=s(ot,100-l),ht=n(ht,l);var _t=ot/100+1,Pt=ht/100,er=z(_t*r(At))/At,nr=p(qe)/p(er*S),pr=Je/w,Sr=F(Pt*p(qe/2)/p(Je/2)),Wr=Sr/F(pr*nr*er),ha=1/(Sr*F(pr*nr*er));return Oe(Wr,ha,nr,er,pr)}function ae(){var qe=65*f,Je=60*f,ot=20,ht=200,At=x.geoProjectionMutator(R),_t=At(qe,Je,ot,ht);return _t.poleline=function(Pt){return arguments.length?At(qe=+Pt*f,Je,ot,ht):qe*y},_t.parallels=function(Pt){return arguments.length?At(qe,Je=+Pt*f,ot,ht):Je*y},_t.inflation=function(Pt){return arguments.length?At(qe,Je,ot=+Pt,ht):ot},_t.ratio=function(Pt){return arguments.length?At(qe,Je,ot,ht=+Pt):ht},_t.scale(163.775)}function we(){return ae().poleline(65).parallels(60).inflation(0).ratio(200).scale(172.633)}var Se=4*w+3*F(3),De=2*F(2*w*F(3)/Se),ft=et(De*F(3)/w,De,Se/6);function bt(){return x.geoProjection(ft).scale(176.84)}function Dt(qe,Je){return[qe*F(1-3*Je*Je/(w*w)),Je]}Dt.invert=function(qe,Je){return[qe/F(1-3*Je*Je/(w*w)),Je]};function Yt(){return x.geoProjection(Dt).scale(152.63)}function cr(qe,Je){var ot=r(Je),ht=r(qe)*ot,At=1-ht,_t=r(qe=t(p(qe)*ot,-p(Je))),Pt=p(qe);return ot=F(1-ht*ht),[Pt*ot-_t*At,-_t*ot-Pt*At]}cr.invert=function(qe,Je){var ot=(qe*qe+Je*Je)/-2,ht=F(-ot*(2+ot)),At=Je*ot+qe*ht,_t=qe*ot-Je*ht,Pt=F(_t*_t+At*At);return[t(ht*At,Pt*(1+ot)),Pt?-L(ht*_t/Pt):0]};function hr(){return x.geoProjection(cr).rotate([0,-90,45]).scale(124.75).clipAngle(180-.001)}function jr(qe,Je){var ot=ue(qe,Je);return[(ot[0]+qe/S)/2,(ot[1]+Je)/2]}jr.invert=function(qe,Je){var ot=qe,ht=Je,At=25;do{var _t=r(ht),Pt=p(ht),er=p(2*ht),nr=Pt*Pt,pr=_t*_t,Sr=p(ot),Wr=r(ot/2),ha=p(ot/2),ga=ha*ha,Pa=1-pr*Wr*Wr,Ja=Pa?z(_t*Wr)*F(di=1/Pa):di=0,di,pi=.5*(2*Ja*_t*ha+ot/S)-qe,Ci=.5*(Ja*Pt+ht)-Je,$i=.5*di*(pr*ga+Ja*_t*Wr*nr)+.5/S,Bn=di*(Sr*er/4-Ja*Pt*ha),Sn=.125*di*(er*ha-Ja*Pt*pr*Sr),ho=.5*di*(nr*Wr+Ja*ga*_t)+.5,ts=Bn*Sn-ho*$i,yo=(Ci*Bn-pi*ho)/ts,Vo=(pi*Sn-Ci*$i)/ts;ot-=yo,ht-=Vo}while((M(yo)>l||M(Vo)>l)&&--At>0);return[ot,ht]};function ea(){return x.geoProjection(jr).scale(158.837)}g.geoNaturalEarth=x.geoNaturalEarth1,g.geoNaturalEarthRaw=x.geoNaturalEarth1Raw,g.geoAiry=Q,g.geoAiryRaw=W,g.geoAitoff=se,g.geoAitoffRaw=ue,g.geoArmadillo=G,g.geoArmadilloRaw=he,g.geoAugust=J,g.geoAugustRaw=$,g.geoBaker=j,g.geoBakerRaw=ne,g.geoBerghaus=ie,g.geoBerghausRaw=ee,g.geoBertin1953=at,g.geoBertin1953Raw=Ze,g.geoBoggs=tt,g.geoBoggsRaw=ze,g.geoBonne=Ot,g.geoBonneRaw=St,g.geoBottomley=ur,g.geoBottomleyRaw=jt,g.geoBromley=Cr,g.geoBromleyRaw=ar,g.geoChamberlin=Ee,g.geoChamberlinRaw=Fe,g.geoChamberlinAfrica=Ne,g.geoCollignon=ke,g.geoCollignonRaw=Ve,g.geoCraig=Le,g.geoCraigRaw=Te,g.geoCraster=xt,g.geoCrasterRaw=dt,g.geoCylindricalEqualArea=Bt,g.geoCylindricalEqualAreaRaw=It,g.geoCylindricalStereographic=Kt,g.geoCylindricalStereographicRaw=Gt,g.geoEckert1=sa,g.geoEckert1Raw=sr,g.geoEckert2=La,g.geoEckert2Raw=Aa,g.geoEckert3=Ga,g.geoEckert3Raw=ka,g.geoEckert4=Ua,g.geoEckert4Raw=Ma,g.geoEckert5=Wt,g.geoEckert5Raw=ni,g.geoEckert6=Vt,g.geoEckert6Raw=zt,g.geoEisenlohr=Zr,g.geoEisenlohrRaw=xr,g.geoFahey=Ea,g.geoFaheyRaw=Xr,g.geoFoucaut=qa,g.geoFoucautRaw=Fa,g.geoFoucautSinusoidal=$a,g.geoFoucautSinusoidalRaw=ya,g.geoGilbert=Er,g.geoGingery=Mr,g.geoGingeryRaw=kr,g.geoGinzburg4=Jr,g.geoGinzburg4Raw=Lr,g.geoGinzburg5=ca,g.geoGinzburg5Raw=oa,g.geoGinzburg6=ir,g.geoGinzburg6Raw=kt,g.geoGinzburg8=$r,g.geoGinzburg8Raw=mr,g.geoGinzburg9=Ba,g.geoGinzburg9Raw=ma,g.geoGringorten=ai,g.geoGringortenRaw=da,g.geoGuyou=Xi,g.geoGuyouRaw=$n,g.geoHammer=Ae,g.geoHammerRaw=fe,g.geoHammerRetroazimuthal=as,g.geoHammerRetroazimuthalRaw=Jo,g.geoHealpix=ys,g.geoHealpixRaw=Do,g.geoHill=Fs,g.geoHillRaw=Is,g.geoHomolosine=so,g.geoHomolosineRaw=Os,g.geoHufnagel=fs,g.geoHufnagelRaw=Ns,g.geoHyperelliptical=To,g.geoHyperellipticalRaw=ji,g.geoInterrupt=Nn,g.geoInterruptedBoggs=Zu,g.geoInterruptedHomolosine=Bu,g.geoInterruptedMollweide=qs,g.geoInterruptedMollweideHemispheres=Nu,g.geoInterruptedSinuMollweide=Xu,g.geoInterruptedSinusoidal=bf,g.geoKavrayskiy7=Yc,g.geoKavrayskiy7Raw=Rs,g.geoLagrange=Zl,g.geoLagrangeRaw=If,g.geoLarrivee=_c,g.geoLarriveeRaw=oc,g.geoLaskowski=_l,g.geoLaskowskiRaw=Zs,g.geoLittrow=$s,g.geoLittrowRaw=Bs,g.geoLoximuthal=zl,g.geoLoximuthalRaw=sc,g.geoMiller=Qs,g.geoMillerRaw=Yu,g.geoModifiedStereographic=Fl,g.geoModifiedStereographicRaw=fp,g.geoModifiedStereographicAlaska=Ku,g.geoModifiedStereographicGs48=cu,g.geoModifiedStereographicGs50=Zf,g.geoModifiedStereographicMiller=Rc,g.geoModifiedStereographicLee=pf,g.geoMollweide=Me,g.geoMollweideRaw=lt,g.geoMtFlatPolarParabolic=Kc,g.geoMtFlatPolarParabolicRaw=Rf,g.geoMtFlatPolarQuartic=uh,g.geoMtFlatPolarQuarticRaw=Yf,g.geoMtFlatPolarSinusoidal=Df,g.geoMtFlatPolarSinusoidalRaw=Ju,g.geoNaturalEarth2=Jc,g.geoNaturalEarth2Raw=Dc,g.geoNellHammer=wf,g.geoNellHammerRaw=Eu,g.geoInterruptedQuarticAuthalic=Us,g.geoNicolosi=Zh,g.geoNicolosiRaw=Kf,g.geoPatterson=$u,g.geoPattersonRaw=Fc,g.geoPolyconic=xl,g.geoPolyconicRaw=vu,g.geoPolyhedral=vf,g.geoPolyhedralButterfly=il,g.geoPolyhedralCollignon=Jf,g.geoPolyhedralWaterman=el,g.geoProject=Vl,g.geoGringortenQuincuncial=Zt,g.geoPeirceQuincuncial=fr,g.geoPierceQuincuncial=fr,g.geoQuantize=Yr,g.geoQuincuncial=ef,g.geoRectangularPolyconic=ba,g.geoRectangularPolyconicRaw=qr,g.geoRobinson=yi,g.geoRobinsonRaw=oi,g.geoSatellite=li,g.geoSatelliteRaw=Bi,g.geoSinuMollweide=ol,g.geoSinuMollweideRaw=mn,g.geoSinusoidal=Ct,g.geoSinusoidalRaw=Qe,g.geoStitch=tl,g.geoTimes=Ao,g.geoTimesRaw=Ln,g.geoTwoPointAzimuthal=Pu,g.geoTwoPointAzimuthalRaw=Ts,g.geoTwoPointAzimuthalUsa=nu,g.geoTwoPointEquidistant=yu,g.geoTwoPointEquidistantRaw=ec,g.geoTwoPointEquidistantUsa=tf,g.geoVanDerGrinten=Iu,g.geoVanDerGrintenRaw=Bc,g.geoVanDerGrinten2=ro,g.geoVanDerGrinten2Raw=Ac,g.geoVanDerGrinten3=Nc,g.geoVanDerGrinten3Raw=Po,g.geoVanDerGrinten4=pc,g.geoVanDerGrinten4Raw=hc,g.geoWagner=ae,g.geoWagner7=we,g.geoWagnerRaw=R,g.geoWagner4=bt,g.geoWagner4Raw=ft,g.geoWagner6=Yt,g.geoWagner6Raw=Dt,g.geoWiechel=hr,g.geoWiechelRaw=cr,g.geoWinkel3=ea,g.geoWinkel3Raw=jr,Object.defineProperty(g,"__esModule",{value:!0})})}}),AU=Ye({"src/plots/geo/zoom.js"(X,H){"use strict";var g=_n(),x=ta(),A=Hn(),M=Math.PI/180,e=180/Math.PI,t={cursor:"pointer"},r={cursor:"auto"};function o(y,f){var P=y.projection,L;return f._isScoped?L=n:f._isClipped?L=c:L=s,L(y,P)}H.exports=o;function a(y,f){return g.behavior.zoom().translate(f.translate()).scale(f.scale())}function i(y,f,P){var L=y.id,z=y.graphDiv,F=z.layout,B=F[L],O=z._fullLayout,I=O[L],N={},U={};function W(Q,ue){N[L+"."+Q]=x.nestedProperty(B,Q).get(),A.call("_storeDirectGUIEdit",F,O._preGUI,N);var se=x.nestedProperty(I,Q);se.get()!==ue&&(se.set(ue),x.nestedProperty(B,Q).set(ue),U[L+"."+Q]=ue)}P(W),W("projection.scale",f.scale()/y.fitScale),W("fitbounds",!1),z.emit("plotly_relayout",U)}function n(y,f){var P=a(y,f);function L(){g.select(this).style(t)}function z(){f.scale(g.event.scale).translate(g.event.translate),y.render(!0);var O=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":O[0],"geo.center.lat":O[1]})}function F(O){var I=f.invert(y.midPt);O("center.lon",I[0]),O("center.lat",I[1])}function B(){g.select(this).style(r),i(y,f,F)}return P.on("zoomstart",L).on("zoom",z).on("zoomend",B),P}function s(y,f){var P=a(y,f),L=2,z,F,B,O,I,N,U,W,Q;function ue(Z){return f.invert(Z)}function se(Z){var re=ue(Z);if(!re)return!0;var ne=f(re);return Math.abs(ne[0]-Z[0])>L||Math.abs(ne[1]-Z[1])>L}function he(){g.select(this).style(t),z=g.mouse(this),F=f.rotate(),B=f.translate(),O=F,I=ue(z)}function G(){if(N=g.mouse(this),se(z)){P.scale(f.scale()),P.translate(f.translate());return}f.scale(g.event.scale),f.translate([B[0],g.event.translate[1]]),I?ue(N)&&(W=ue(N),U=[O[0]+(W[0]-I[0]),F[1],F[2]],f.rotate(U),O=U):(z=N,I=ue(z)),Q=!0,y.render(!0);var Z=f.rotate(),re=f.invert(y.midPt);y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.center.lon":re[0],"geo.center.lat":re[1],"geo.projection.rotation.lon":-Z[0]})}function $(){g.select(this).style(r),Q&&i(y,f,J)}function J(Z){var re=f.rotate(),ne=f.invert(y.midPt);Z("projection.rotation.lon",-re[0]),Z("center.lon",ne[0]),Z("center.lat",ne[1])}return P.on("zoomstart",he).on("zoom",G).on("zoomend",$),P}function c(y,f){var P={r:f.rotate(),k:f.scale()},L=a(y,f),z=u(L,"zoomstart","zoom","zoomend"),F=0,B=L.on,O;L.on("zoomstart",function(){g.select(this).style(t);var Q=g.mouse(this),ue=f.rotate(),se=ue,he=f.translate(),G=v(ue);O=h(f,Q),B.call(L,"zoom",function(){var $=g.mouse(this);if(f.scale(P.k=g.event.scale),!O)Q=$,O=h(f,Q);else if(h(f,$)){f.rotate(ue).translate(he);var J=h(f,$),Z=T(O,J),re=E(p(G,Z)),ne=P.r=l(re,O,se);(!isFinite(ne[0])||!isFinite(ne[1])||!isFinite(ne[2]))&&(ne=se),f.rotate(ne),se=ne}N(z.of(this,arguments))}),I(z.of(this,arguments))}).on("zoomend",function(){g.select(this).style(r),B.call(L,"zoom",null),U(z.of(this,arguments)),i(y,f,W)}).on("zoom.redraw",function(){y.render(!0);var Q=f.rotate();y.graphDiv.emit("plotly_relayouting",{"geo.projection.scale":f.scale()/y.fitScale,"geo.projection.rotation.lon":-Q[0],"geo.projection.rotation.lat":-Q[1]})});function I(Q){F++||Q({type:"zoomstart"})}function N(Q){Q({type:"zoom"})}function U(Q){--F||Q({type:"zoomend"})}function W(Q){var ue=f.rotate();Q("projection.rotation.lon",-ue[0]),Q("projection.rotation.lat",-ue[1])}return g.rebind(L,z,"on")}function h(y,f){var P=y.invert(f);return P&&isFinite(P[0])&&isFinite(P[1])&&m(P)}function v(y){var f=.5*y[0]*M,P=.5*y[1]*M,L=.5*y[2]*M,z=Math.sin(f),F=Math.cos(f),B=Math.sin(P),O=Math.cos(P),I=Math.sin(L),N=Math.cos(L);return[F*O*N+z*B*I,z*O*N-F*B*I,F*B*N+z*O*I,F*O*I-z*B*N]}function p(y,f){var P=y[0],L=y[1],z=y[2],F=y[3],B=f[0],O=f[1],I=f[2],N=f[3];return[P*B-L*O-z*I-F*N,P*O+L*B+z*N-F*I,P*I-L*N+z*B+F*O,P*N+L*I-z*O+F*B]}function T(y,f){if(!(!y||!f)){var P=d(y,f),L=Math.sqrt(b(P,P)),z=.5*Math.acos(Math.max(-1,Math.min(1,b(y,f)))),F=Math.sin(z)/L;return L&&[Math.cos(z),P[2]*F,-P[1]*F,P[0]*F]}}function l(y,f,P){var L=S(f,2,y[0]);L=S(L,1,y[1]),L=S(L,0,y[2]-P[2]);var z=f[0],F=f[1],B=f[2],O=L[0],I=L[1],N=L[2],U=Math.atan2(F,z)*e,W=Math.sqrt(z*z+F*F),Q,ue;Math.abs(I)>W?(ue=(I>0?90:-90)-U,Q=0):(ue=Math.asin(I/W)*e-U,Q=Math.sqrt(W*W-I*I));var se=180-ue-2*U,he=(Math.atan2(N,O)-Math.atan2(B,Q))*e,G=(Math.atan2(N,O)-Math.atan2(B,-Q))*e,$=_(P[0],P[1],ue,he),J=_(P[0],P[1],se,G);return $<=J?[ue,he,P[2]]:[se,G,P[2]]}function _(y,f,P,L){var z=w(P-y),F=w(L-f);return Math.sqrt(z*z+F*F)}function w(y){return(y%360+540)%360-180}function S(y,f,P){var L=P*M,z=y.slice(),F=f===0?1:0,B=f===2?1:2,O=Math.cos(L),I=Math.sin(L);return z[F]=y[F]*O-y[B]*I,z[B]=y[B]*O+y[F]*I,z}function E(y){return[Math.atan2(2*(y[0]*y[1]+y[2]*y[3]),1-2*(y[1]*y[1]+y[2]*y[2]))*e,Math.asin(Math.max(-1,Math.min(1,2*(y[0]*y[2]-y[3]*y[1]))))*e,Math.atan2(2*(y[0]*y[3]+y[1]*y[2]),1-2*(y[2]*y[2]+y[3]*y[3]))*e]}function m(y){var f=y[0]*M,P=y[1]*M,L=Math.cos(P);return[L*Math.cos(f),L*Math.sin(f),Math.sin(P)]}function b(y,f){for(var P=0,L=0,z=y.length;L<z;++L)P+=y[L]*f[L];return P}function d(y,f){return[y[1]*f[2]-y[2]*f[1],y[2]*f[0]-y[0]*f[2],y[0]*f[1]-y[1]*f[0]]}function u(y){for(var f=0,P=arguments.length,L=[];++f<P;)L.push(arguments[f]);var z=g.dispatch.apply(null,L);return z.of=function(F,B){return function(O){var I;try{I=O.sourceEvent=g.event,O.target=y,g.event=O,z[O.type].apply(F,B)}finally{g.event=I}}},z}}}),SU=Ye({"src/plots/geo/geo.js"(X,H){"use strict";var g=_n(),x=C5(),A=x.geoPath,M=x.geoDistance,e=TU(),t=Hn(),r=ta(),o=r.strTranslate,a=Fn(),i=Bo(),n=Lc(),s=Gu(),c=Co(),h=Yd().getAutoRange,v=bp(),p=ff().prepSelect,T=ff().clearOutline,l=ff().selectOnClick,_=AU(),w=mx(),S=vg(),E=iT(),m=M5().feature;function b(P){this.id=P.id,this.graphDiv=P.graphDiv,this.container=P.container,this.topojsonURL=P.topojsonURL,this.isStatic=P.staticPlot,this.topojsonName=null,this.topojson=null,this.projection=null,this.scope=null,this.viewInitial=null,this.fitScale=null,this.bounds=null,this.midPt=null,this.hasChoropleth=!1,this.traceHash={},this.layers={},this.basePaths={},this.dataPaths={},this.dataPoints={},this.clipDef=null,this.clipRect=null,this.bgRect=null,this.makeFramework()}var d=b.prototype;H.exports=function(L){return new b(L)},d.plot=function(P,L,z,F){var B=this;if(F)return B.update(P,L,!0);B._geoCalcData=P,B._fullLayout=L;var O=L[this.id],I=[],N=!1;for(var U in w.layerNameToAdjective)if(U!=="frame"&&O["show"+U]){N=!0;break}for(var W=!1,Q=0;Q<P.length;Q++){var ue=P[0][0].trace;ue._geo=B,ue.locationmode&&(N=!0);var se=ue.marker;if(se){var he=se.angle,G=se.angleref;(he||G==="north"||G==="previous")&&(W=!0)}}if(this._hasMarkerAngles=W,N){var $=E.getTopojsonName(O);(B.topojson===null||$!==B.topojsonName)&&(B.topojsonName=$,PlotlyGeoAssets.topojson[B.topojsonName]===void 0&&I.push(B.fetchTopojson()))}I=I.concat(S.fetchTraceGeoData(P)),z.push(new Promise(function(J,Z){Promise.all(I).then(function(){B.topojson=PlotlyGeoAssets.topojson[B.topojsonName],B.update(P,L),J()}).catch(Z)}))},d.fetchTopojson=function(){var P=this,L=E.getTopojsonPath(P.topojsonURL,P.topojsonName);return new Promise(function(z,F){g.json(L,function(B,O){if(B)return B.status===404?F(new Error(["plotly.js could not find topojson file at",L+".","Make sure the *topojsonURL* plot config option","is set properly."].join(" "))):F(new Error(["unexpected error while fetching topojson file at",L].join(" ")));PlotlyGeoAssets.topojson[P.topojsonName]=O,z()})})},d.update=function(P,L,z){var F=L[this.id];this.hasChoropleth=!1;for(var B=0;B<P.length;B++){var O=P[B],I=O[0].trace;I.type==="choropleth"&&(this.hasChoropleth=!0),I.visible===!0&&I._length>0&&I._module.calcGeoJSON(O,L)}if(!z){var N=this.updateProjection(P,L);if(N)return;(!this.viewInitial||this.scope!==F.scope)&&this.saveViewInitial(F)}this.scope=F.scope,this.updateBaseLayers(L,F),this.updateDims(L,F),this.updateFx(L,F),s.generalUpdatePerTraceModule(this.graphDiv,this,P,F);var U=this.layers.frontplot.select(".scatterlayer");this.dataPoints.point=U.selectAll(".point"),this.dataPoints.text=U.selectAll("text"),this.dataPaths.line=U.selectAll(".js-line");var W=this.layers.backplot.select(".choroplethlayer");this.dataPaths.choropleth=W.selectAll("path"),this._render()},d.updateProjection=function(P,L){var z=this.graphDiv,F=L[this.id],B=L._size,O=F.domain,I=F.projection,N=F.lonaxis,U=F.lataxis,W=N._ax,Q=U._ax,ue=this.projection=u(F),se=[[B.l+B.w*O.x[0],B.t+B.h*(1-O.y[1])],[B.l+B.w*O.x[1],B.t+B.h*(1-O.y[0])]],he=F.center||{},G=I.rotation||{},$=N.range||[],J=U.range||[];if(F.fitbounds){W._length=se[1][0]-se[0][0],Q._length=se[1][1]-se[0][1],W.range=h(z,W),Q.range=h(z,Q);var Z=(W.range[0]+W.range[1])/2,re=(Q.range[0]+Q.range[1])/2;if(F._isScoped)he={lon:Z,lat:re};else if(F._isClipped){he={lon:Z,lat:re},G={lon:Z,lat:re,roll:G.roll};var ne=I.type,j=w.lonaxisSpan[ne]/2||180,ee=w.lataxisSpan[ne]/2||90;$=[Z-j,Z+j],J=[re-ee,re+ee]}else he={lon:Z,lat:re},G={lon:Z,lat:G.lat,roll:G.roll}}ue.center([he.lon-G.lon,he.lat-G.lat]).rotate([-G.lon,-G.lat,G.roll]).parallels(I.parallels);var ie=f($,J);ue.fitExtent(se,ie);var fe=this.bounds=ue.getBounds(ie),be=this.fitScale=ue.scale(),Ae=ue.translate();if(F.fitbounds){var Be=ue.getBounds(f(W.range,Q.range)),Ie=Math.min((fe[1][0]-fe[0][0])/(Be[1][0]-Be[0][0]),(fe[1][1]-fe[0][1])/(Be[1][1]-Be[0][1]));isFinite(Ie)?ue.scale(Ie*be):r.warn("Something went wrong during"+this.id+"fitbounds computations.")}else ue.scale(I.scale*be);var Ze=this.midPt=[(fe[0][0]+fe[1][0])/2,(fe[0][1]+fe[1][1])/2];if(ue.translate([Ae[0]+(Ze[0]-Ae[0]),Ae[1]+(Ze[1]-Ae[1])]).clipExtent(fe),F._isAlbersUsa){var at=ue([he.lon,he.lat]),it=ue.translate();ue.translate([it[0]-(at[0]-it[0]),it[1]-(at[1]-it[1])])}},d.updateBaseLayers=function(P,L){var z=this,F=z.topojson,B=z.layers,O=z.basePaths;function I(se){return se==="lonaxis"||se==="lataxis"}function N(se){return!!w.lineLayers[se]}function U(se){return!!w.fillLayers[se]}var W=this.hasChoropleth?w.layersForChoropleth:w.layers,Q=W.filter(function(se){return N(se)||U(se)?L["show"+se]:I(se)?L[se].showgrid:!0}),ue=z.framework.selectAll(".layer").data(Q,String);ue.exit().each(function(se){delete B[se],delete O[se],g.select(this).remove()}),ue.enter().append("g").attr("class",function(se){return"layer "+se}).each(function(se){var he=B[se]=g.select(this);se==="bg"?z.bgRect=he.append("rect").style("pointer-events","all"):I(se)?O[se]=he.append("path").style("fill","none"):se==="backplot"?he.append("g").classed("choroplethlayer",!0):se==="frontplot"?he.append("g").classed("scatterlayer",!0):N(se)?O[se]=he.append("path").style("fill","none").style("stroke-miterlimit",2):U(se)&&(O[se]=he.append("path").style("stroke","none"))}),ue.order(),ue.each(function(se){var he=O[se],G=w.layerNameToAdjective[se];se==="frame"?he.datum(w.sphereSVG):N(se)||U(se)?he.datum(m(F,F.objects[se])):I(se)&&he.datum(y(se,L,P)).call(a.stroke,L[se].gridcolor).call(i.dashLine,L[se].griddash,L[se].gridwidth),N(se)?he.call(a.stroke,L[G+"color"]).call(i.dashLine,"",L[G+"width"]):U(se)&&he.call(a.fill,L[G+"color"])})},d.updateDims=function(P,L){var z=this.bounds,F=(L.framewidth||0)/2,B=z[0][0]-F,O=z[0][1]-F,I=z[1][0]-B+F,N=z[1][1]-O+F;i.setRect(this.clipRect,B,O,I,N),this.bgRect.call(i.setRect,B,O,I,N).call(a.fill,L.bgcolor),this.xaxis._offset=B,this.xaxis._length=I,this.yaxis._offset=O,this.yaxis._length=N},d.updateFx=function(P,L){var z=this,F=z.graphDiv,B=z.bgRect,O=P.dragmode,I=P.clickmode;if(z.isStatic)return;function N(){var ue=z.viewInitial,se={};for(var he in ue)se[z.id+"."+he]=ue[he];t.call("_guiRelayout",F,se),F.emit("plotly_doubleclick",null)}function U(ue){return z.projection.invert([ue[0]+z.xaxis._offset,ue[1]+z.yaxis._offset])}var W=function(ue,se){if(se.isRect){var he=ue.range={};he[z.id]=[U([se.xmin,se.ymin]),U([se.xmax,se.ymax])]}else{var G=ue.lassoPoints={};G[z.id]=se.map(U)}},Q={element:z.bgRect.node(),gd:F,plotinfo:{id:z.id,xaxis:z.xaxis,yaxis:z.yaxis,fillRangeItems:W},xaxes:[z.xaxis],yaxes:[z.yaxis],subplot:z.id,clickFn:function(ue){ue===2&&T(F)}};O==="pan"?(B.node().onmousedown=null,B.call(_(z,L)),B.on("dblclick.zoom",N),F._context._scrollZoom.geo||B.on("wheel.zoom",null)):(O==="select"||O==="lasso")&&(B.on(".zoom",null),Q.prepFn=function(ue,se,he){p(ue,se,he,Q,O)},v.init(Q)),B.on("mousemove",function(){var ue=z.projection.invert(r.getPositionFromD3Event());if(!ue)return v.unhover(F,g.event);z.xaxis.p2c=function(){return ue[0]},z.yaxis.p2c=function(){return ue[1]},n.hover(F,g.event,z.id)}),B.on("mouseout",function(){F._dragging||v.unhover(F,g.event)}),B.on("click",function(){O!=="select"&&O!=="lasso"&&(I.indexOf("select")>-1&&l(g.event,F,[z.xaxis],[z.yaxis],z.id,Q),I.indexOf("event")>-1&&n.click(F,g.event))})},d.makeFramework=function(){var P=this,L=P.graphDiv,z=L._fullLayout,F="clip"+z._uid+P.id;P.clipDef=z._clips.append("clipPath").attr("id",F),P.clipRect=P.clipDef.append("rect"),P.framework=g.select(P.container).append("g").attr("class","geo "+P.id).call(i.setClipUrl,F,L),P.project=function(B){var O=P.projection(B);return O?[O[0]-P.xaxis._offset,O[1]-P.yaxis._offset]:[null,null]},P.xaxis={_id:"x",c2p:function(B){return P.project(B)[0]}},P.yaxis={_id:"y",c2p:function(B){return P.project(B)[1]}},P.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},c.setConvert(P.mockAxis,z)},d.saveViewInitial=function(P){var L=P.center||{},z=P.projection,F=z.rotation||{};this.viewInitial={fitbounds:P.fitbounds,"projection.scale":z.scale};var B;P._isScoped?B={"center.lon":L.lon,"center.lat":L.lat}:P._isClipped?B={"projection.rotation.lon":F.lon,"projection.rotation.lat":F.lat}:B={"center.lon":L.lon,"center.lat":L.lat,"projection.rotation.lon":F.lon},r.extendFlat(this.viewInitial,B)},d.render=function(P){this._hasMarkerAngles&&P?this.plot(this._geoCalcData,this._fullLayout,[],!0):this._render()},d._render=function(){var P=this.projection,L=P.getPath(),z;function F(O){var I=P(O.lonlat);return I?o(I[0],I[1]):null}function B(O){return P.isLonLatOverEdges(O.lonlat)?"none":null}for(z in this.basePaths)this.basePaths[z].attr("d",L);for(z in this.dataPaths)this.dataPaths[z].attr("d",function(O){return L(O.geojson)});for(z in this.dataPoints)this.dataPoints[z].attr("display",B).attr("transform",F)};function u(P){var L=P.projection,z=L.type,F=w.projNames[z];F="geo"+r.titleCase(F);for(var B=x[F]||e[F],O=B(),I=P._isSatellite?Math.acos(1/L.distance)*180/Math.PI:P._isClipped?w.lonaxisSpan[z]/2:null,N=["center","rotate","parallels","clipExtent"],U=function(ue){return ue?O:[]},W=0;W<N.length;W++){var Q=N[W];typeof O[Q]!="function"&&(O[Q]=U)}return O.isLonLatOverEdges=function(ue){if(O(ue)===null)return!0;if(I){var se=O.rotate(),he=M(ue,[-se[0],-se[1]]),G=I*Math.PI/180;return he>G}else return!1},O.getPath=function(){return A().projection(O)},O.getBounds=function(ue){return O.getPath().bounds(ue)},O.precision(w.precision),P._isSatellite&&O.tilt(L.tilt).distance(L.distance),I&&O.clipAngle(I-w.clipPad),O}function y(P,L,z){var F=1e-6,B=2.5,O=L[P],I=w.scopeDefaults[L.scope],N,U,W;P==="lonaxis"?(N=I.lonaxisRange,U=I.lataxisRange,W=function(re,ne){return[re,ne]}):P==="lataxis"&&(N=I.lataxisRange,U=I.lonaxisRange,W=function(re,ne){return[ne,re]});var Q={type:"linear",range:[N[0],N[1]-F],tick0:O.tick0,dtick:O.dtick};c.setConvert(Q,z);var ue=c.calcTicks(Q);!L.isScoped&&P==="lonaxis"&&ue.pop();for(var se=ue.length,he=new Array(se),G=0;G<se;G++)for(var $=ue[G].x,J=he[G]=[],Z=U[0];Z<U[1]+B;Z+=B)J.push(W($,Z));return{type:"MultiLineString",coordinates:he}}function f(P,L){var z=w.clipPad,F=P[0]+z,B=P[1]-z,O=L[0]+z,I=L[1]-z;F>0&&B<0&&(B+=360);var N=(B-F)/4;return{type:"Polygon",coordinates:[[[F,O],[F,I],[F+N,I],[F+2*N,I],[F+3*N,I],[B,I],[B,O],[B-N,O],[B-2*N,O],[B-3*N,O],[F,O]]]}}}}),L5=Ye({"src/plots/geo/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Wu().attributes,A=Uh().dash,M=mx(),e=Ou().overrideAll,t=Km(),r={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:g.lightLine},gridwidth:{valType:"number",min:0,dflt:1},griddash:A},o=H.exports=e({domain:x({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:t(M.scopeDefaults),dflt:"world"},projection:{type:{valType:"enumerated",values:t(M.projNames)},rotation:{lon:{valType:"number"},lat:{valType:"number"},roll:{valType:"number"}},tilt:{valType:"number",dflt:0},distance:{valType:"number",min:1.001,dflt:2},parallels:{valType:"info_array",items:[{valType:"number"},{valType:"number"}]},scale:{valType:"number",min:0,dflt:1}},center:{lon:{valType:"number"},lat:{valType:"number"}},visible:{valType:"boolean",dflt:!0},showcoastlines:{valType:"boolean"},coastlinecolor:{valType:"color",dflt:g.defaultLine},coastlinewidth:{valType:"number",min:0,dflt:1},showland:{valType:"boolean",dflt:!1},landcolor:{valType:"color",dflt:M.landColor},showocean:{valType:"boolean",dflt:!1},oceancolor:{valType:"color",dflt:M.waterColor},showlakes:{valType:"boolean",dflt:!1},lakecolor:{valType:"color",dflt:M.waterColor},showrivers:{valType:"boolean",dflt:!1},rivercolor:{valType:"color",dflt:M.waterColor},riverwidth:{valType:"number",min:0,dflt:1},showcountries:{valType:"boolean"},countrycolor:{valType:"color",dflt:g.defaultLine},countrywidth:{valType:"number",min:0,dflt:1},showsubunits:{valType:"boolean"},subunitcolor:{valType:"color",dflt:g.defaultLine},subunitwidth:{valType:"number",min:0,dflt:1},showframe:{valType:"boolean"},framecolor:{valType:"color",dflt:g.defaultLine},framewidth:{valType:"number",min:0,dflt:1},bgcolor:{valType:"color",dflt:g.background},lonaxis:r,lataxis:r},"plot","from-root");o.uirevision={valType:"any",editType:"none"}}}),MU=Ye({"src/plots/geo/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=jh().getSubplotData,M=mx(),e=L5(),t=M.axesNames;H.exports=function(a,i,n){x(a,i,n,{type:"geo",attributes:e,handleDefaults:r,fullData:n,partition:"y"})};function r(o,a,i,n){var s=A(n.fullData,"geo",n.id),c=s.map(function(J){return J.index}),h=i("resolution"),v=i("scope"),p=M.scopeDefaults[v],T=i("projection.type",p.projType),l=a._isAlbersUsa=T==="albers usa";l&&(v=a.scope="usa");var _=a._isScoped=v!=="world",w=a._isSatellite=T==="satellite",S=a._isConic=T.indexOf("conic")!==-1||T==="albers",E=a._isClipped=!!M.lonaxisSpan[T];if(o.visible===!1){var m=g.extendDeep({},a._template);m.showcoastlines=!1,m.showcountries=!1,m.showframe=!1,m.showlakes=!1,m.showland=!1,m.showocean=!1,m.showrivers=!1,m.showsubunits=!1,m.lonaxis&&(m.lonaxis.showgrid=!1),m.lataxis&&(m.lataxis.showgrid=!1),a._template=m}for(var b=i("visible"),d,u=0;u<t.length;u++){var y=t[u],f=[30,10][u],P;if(_)P=p[y+"Range"];else{var L=M[y+"Span"],z=(L[T]||L["*"])/2,F=i("projection.rotation."+y.substr(0,3),p.projRotate[u]);P=[F-z,F+z]}var B=i(y+".range",P);i(y+".tick0"),i(y+".dtick",f),d=i(y+".showgrid",b?void 0:!1),d&&(i(y+".gridcolor"),i(y+".gridwidth"),i(y+".griddash")),a[y]._ax={type:"linear",_id:y.slice(0,3),_traceIndices:c,setScale:g.identity,c2l:g.identity,r2l:g.identity,autorange:!0,range:B.slice(),_m:1,_input:{}}}var O=a.lonaxis.range,I=a.lataxis.range,N=O[0],U=O[1];N>0&&U<0&&(U+=360);var W=(N+U)/2,Q;if(!l){var ue=_?p.projRotate:[W,0,0];Q=i("projection.rotation.lon",ue[0]),i("projection.rotation.lat",ue[1]),i("projection.rotation.roll",ue[2]),d=i("showcoastlines",!_&&b),d&&(i("coastlinecolor"),i("coastlinewidth")),d=i("showocean",b?void 0:!1),d&&i("oceancolor")}var se,he;if(l?(se=-96.6,he=38.7):(se=_?W:Q,he=(I[0]+I[1])/2),i("center.lon",se),i("center.lat",he),w&&(i("projection.tilt"),i("projection.distance")),S){var G=p.projParallels||[0,60];i("projection.parallels",G)}i("projection.scale"),d=i("showland",b?void 0:!1),d&&i("landcolor"),d=i("showlakes",b?void 0:!1),d&&i("lakecolor"),d=i("showrivers",b?void 0:!1),d&&(i("rivercolor"),i("riverwidth")),d=i("showcountries",_&&v!=="usa"&&b),d&&(i("countrycolor"),i("countrywidth")),(v==="usa"||v==="north america"&&h===50)&&(i("showsubunits",b),i("subunitcolor"),i("subunitwidth")),_||(d=i("showframe",b),d&&(i("framecolor"),i("framewidth"))),i("bgcolor");var $=i("fitbounds");$&&(delete a.projection.scale,_?(delete a.center.lon,delete a.center.lat):E?(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon,delete a.projection.rotation.lat,delete a.lonaxis.range,delete a.lataxis.range):(delete a.center.lon,delete a.center.lat,delete a.projection.rotation.lon))}}}),P5=Ye({"src/plots/geo/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=SU(),M="geo",e=x(M),t={};t[M]={valType:"subplotid",dflt:M,editType:"calc"};function r(i){for(var n=i._fullLayout,s=i.calcdata,c=n._subplots[M],h=0;h<c.length;h++){var v=c[h],p=g(s,M,v),T=n[v],l=T._subplot;l||(l=A({id:v,graphDiv:i,container:n._geolayer.node(),topojsonURL:i._context.topojsonURL,staticPlot:i._context.staticPlot}),n[v]._subplot=l),l.plot(p,n,i._promises)}}function o(i,n,s,c){for(var h=c._subplots[M]||[],v=0;v<h.length;v++){var p=h[v],T=c[p]._subplot;!n[p]&&T&&(T.framework.remove(),T.clipDef.remove())}}function a(i){for(var n=i._fullLayout,s=n._subplots[M],c=0;c<s.length;c++){var h=n[s[c]],v=h._subplot;v.updateFx(n,h)}}H.exports={attr:M,name:M,idRoot:M,idRegex:e,attrRegex:e,attributes:t,layoutAttributes:L5(),supplyLayoutDefaults:MU(),plot:r,updateFx:a,clean:o}}}),EU=Ye({"src/traces/scattergeo/index.js"(X,H){"use strict";H.exports={attributes:p0(),supplyDefaults:dU(),colorbar:cp(),formatLabels:vU(),calc:aT(),calcGeoJSON:k5().calcGeoJSON,plot:k5().plot,style:E5(),styleOnSelect:ed().styleOnSelect,hoverPoints:xU(),eventData:bU(),selectPoints:wU(),moduleType:"trace",name:"scattergeo",basePlotModule:P5(),categories:["geo","symbols","showLegend","scatter-like"],meta:{}}}}),kU=Ye({"lib/scattergeo.js"(X,H){"use strict";H.exports=EU()}}),M1=Ye({"src/traces/choropleth/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=p0(),A=tu(),M=Pl(),e=Gf().defaultLine,t=Oo().extendFlat,r=x.marker.line;H.exports=t({locations:{valType:"data_array",editType:"calc"},locationmode:x.locationmode,z:{valType:"data_array",editType:"calc"},geojson:t({},x.geojson,{}),featureidkey:x.featureidkey,text:t({},x.text,{}),hovertext:t({},x.hovertext,{}),marker:{line:{color:t({},r.color,{dflt:e}),width:t({},r.width,{dflt:1}),editType:"calc"},opacity:{valType:"number",arrayOk:!0,min:0,max:1,dflt:1,editType:"style"},editType:"calc"},selected:{marker:{opacity:x.selected.marker.opacity,editType:"plot"},editType:"plot"},unselected:{marker:{opacity:x.unselected.marker.opacity,editType:"plot"},editType:"plot"},hoverinfo:t({},M.hoverinfo,{editType:"calc",flags:["location","z","text","name"]}),hovertemplate:g(),showlegend:t({},M.showlegend,{dflt:!1})},A("",{cLetter:"z",editTypeOverride:"calc"}))}}),CU=Ye({"src/traces/choropleth/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=M1();H.exports=function(e,t,r,o){function a(p,T){return g.coerce(e,t,A,p,T)}var i=a("locations"),n=a("z");if(!(i&&i.length&&g.isArrayOrTypedArray(n)&&n.length)){t.visible=!1;return}t._length=Math.min(i.length,n.length);var s=a("geojson"),c;(typeof s=="string"&&s!==""||g.isPlainObject(s))&&(c="geojson-id");var h=a("locationmode",c);h==="geojson-id"&&a("featureidkey"),a("text"),a("hovertext"),a("hovertemplate");var v=a("marker.line.width");v&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),sT=Ye({"src/traces/choropleth/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=jp(),M=Av(),e=Od();function t(r){return r&&typeof r=="string"}H.exports=function(o,a){var i=a._length,n=new Array(i),s;a.geojson?s=function(T){return t(T)||g(T)}:s=t;for(var c=0;c<i;c++){var h=n[c]={},v=a.locations[c],p=a.z[c];s(v)&&g(p)?(h.loc=v,h.z=p):(h.loc=null,h.z=x),h.index=c}return M(n,a),A(o,a,{vals:a.z,containerStr:"",cLetter:"z"}),e(n,a),n}}}),lT=Ye({"src/traces/choropleth/style.js"(X,H){"use strict";var g=_n(),x=Fn(),A=Bo(),M=Su();function e(o,a){a&&t(o,a)}function t(o,a){var i=a[0].trace,n=a[0].node3,s=n.selectAll(".choroplethlocation"),c=i.marker||{},h=c.line||{},v=M.makeColorScaleFuncFromTrace(i);s.each(function(p){g.select(this).attr("fill",v(p.z)).call(x.stroke,p.mlc||h.color).call(A.dashLine,"",p.mlw||h.width||0).style("opacity",c.opacity)}),A.selectedPointStyle(s,i)}function r(o,a){var i=a[0].node3,n=a[0].trace;n.selectedpoints?A.selectedPointStyle(i.selectAll(".choroplethlocation"),n):t(o,a)}H.exports={style:e,styleOnSelect:r}}}),I5=Ye({"src/traces/choropleth/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=vg(),M=iT().getTopojsonFeatures,e=Yd().findExtremes,t=lT().style;function r(a,i,n){var s=i.layers.backplot.select(".choroplethlayer");x.makeTraceGroups(s,n,"trace choropleth").each(function(c){var h=g.select(this),v=h.selectAll("path.choroplethlocation").data(x.identity);v.enter().append("path").classed("choroplethlocation",!0),v.exit().remove(),t(a,c)})}function o(a,i){for(var n=a[0].trace,s=i[n.geo],c=s._subplot,h=n.locationmode,v=n._length,p=h==="geojson-id"?A.extractTraceFeature(a):M(n,c.topojson),T=[],l=[],_=0;_<v;_++){var w=a[_],S=h==="geojson-id"?w.fOut:A.locationToFeature(h,w.loc,p);if(S){w.geojson=S,w.ct=S.properties.ct,w._polygons=A.feature2polygons(S);var E=A.computeBbox(S);T.push(E[0],E[2]),l.push(E[1],E[3])}else w.geojson=null}if(s.fitbounds==="geojson"&&h==="geojson-id"){var m=A.computeBbox(A.getTraceGeojson(n));T=[m[0],m[2]],l=[m[1],m[3]]}var b={padded:!0};n._extremes.lon=e(s.lonaxis._ax,T,b),n._extremes.lat=e(s.lataxis._ax,l,b)}H.exports={calcGeoJSON:o,plot:r}}}),uT=Ye({"src/traces/choropleth/hover.js"(X,H){"use strict";var g=Co(),x=M1(),A=ta().fillText;H.exports=function(t,r,o){var a=t.cd,i=a[0].trace,n=t.subplot,s,c,h,v,p=[r,o],T=[r+360,o];for(c=0;c<a.length;c++)if(s=a[c],v=!1,s._polygons){for(h=0;h<s._polygons.length;h++)s._polygons[h].contains(p)&&(v=!v),s._polygons[h].contains(T)&&(v=!v);if(v)break}if(!(!v||!s))return t.x0=t.x1=t.xa.c2p(s.ct),t.y0=t.y1=t.ya.c2p(s.ct),t.index=s.index,t.location=s.loc,t.z=s.z,t.zLabel=g.tickText(n.mockAxis,n.mockAxis.c2l(s.z),"hover").text,t.hovertemplate=s.hovertemplate,M(t,i,s),[t]};function M(e,t,r){if(!t.hovertemplate){var o=r.hi||t.hoverinfo,a=String(r.loc),i=o==="all"?x.hoverinfo.flags:o.split("+"),n=i.indexOf("name")!==-1,s=i.indexOf("location")!==-1,c=i.indexOf("z")!==-1,h=i.indexOf("text")!==-1,v=!n&&s,p=[];v?e.nameOverride=a:(n&&(e.nameOverride=t.name),s&&p.push(a)),c&&p.push(e.zLabel),h&&A(r,t,p),e.extraText=p.join("<br>")}}}}),cT=Ye({"src/traces/choropleth/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){x.location=A.location,x.z=A.z;var r=e[t];return r.fIn&&r.fIn.properties&&(x.properties=r.fIn.properties),x.ct=r.ct,x}}}),fT=Ye({"src/traces/choropleth/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a,i,n,s;if(A===!1)for(o=0;o<M.length;o++)M[o].selected=0;else for(o=0;o<M.length;o++)a=M[o],i=a.ct,i&&(n=e.c2p(i),s=t.c2p(i),A.contains([n,s],null,o,x)?(r.push({pointNumber:o,lon:i[0],lat:i[1]}),a.selected=1):a.selected=0);return r}}}),LU=Ye({"src/traces/choropleth/index.js"(X,H){"use strict";H.exports={attributes:M1(),supplyDefaults:CU(),colorbar:ag(),calc:sT(),calcGeoJSON:I5().calcGeoJSON,plot:I5().plot,style:lT().style,styleOnSelect:lT().styleOnSelect,hoverPoints:uT(),eventData:cT(),selectPoints:fT(),moduleType:"trace",name:"choropleth",basePlotModule:P5(),categories:["geo","noOpacity","showLegend"],meta:{}}}}),PU=Ye({"lib/choropleth.js"(X,H){"use strict";H.exports=LU()}}),hT=Ye({"src/traces/scattergl/hover.js"(X,H){"use strict";var g=Hn(),x=ta(),A=s1();function M(t,r,o,a){var i=t.cd,n=i[0].t,s=i[0].trace,c=t.xa,h=t.ya,v=n.x,p=n.y,T=c.c2p(r),l=h.c2p(o),_=t.distance,w;if(n.tree){var S=c.p2c(T-_),E=c.p2c(T+_),m=h.p2c(l-_),b=h.p2c(l+_);a==="x"?w=n.tree.range(Math.min(S,E),Math.min(h._rl[0],h._rl[1]),Math.max(S,E),Math.max(h._rl[0],h._rl[1])):w=n.tree.range(Math.min(S,E),Math.min(m,b),Math.max(S,E),Math.max(m,b))}else w=n.ids;var d,u,y,f,P,L,z,F,B,O=_;if(a==="x"){var I=!!s.xperiodalignment,N=!!s.yperiodalignment;for(P=0;P<w.length;P++){if(d=w[P],y=v[d],L=Math.abs(c.c2p(y)-T),I){var U=c.c2p(s._xStarts[d]),W=c.c2p(s._xEnds[d]);L=T>=Math.min(U,W)&&T<=Math.max(U,W)?0:1/0}if(L<O){if(O=L,f=p[d],z=h.c2p(f)-l,N){var Q=h.c2p(s._yStarts[d]),ue=h.c2p(s._yEnds[d]);z=l>=Math.min(Q,ue)&&l<=Math.max(Q,ue)?0:1/0}B=Math.sqrt(L*L+z*z),u=w[P]}}}else for(P=w.length-1;P>-1;P--)d=w[P],y=v[d],f=p[d],L=c.c2p(y)-T,z=h.c2p(f)-l,F=Math.sqrt(L*L+z*z),F<O&&(O=B=F,u=d);return t.index=u,t.distance=O,t.dxy=B,u===void 0?[t]:[e(t,v,p,s)]}function e(t,r,o,a){var i=t.xa,n=t.ya,s=t.distance,c=t.dxy,h=t.index,v={pointNumber:h,x:r[h],y:o[h]};v.tx=x.isArrayOrTypedArray(a.text)?a.text[h]:a.text,v.htx=Array.isArray(a.hovertext)?a.hovertext[h]:a.hovertext,v.data=Array.isArray(a.customdata)?a.customdata[h]:a.customdata,v.tp=Array.isArray(a.textposition)?a.textposition[h]:a.textposition;var p=a.textfont;p&&(v.ts=x.isArrayOrTypedArray(p.size)?p.size[h]:p.size,v.tc=x.isArrayOrTypedArray(p.color)?p.color[h]:p.color,v.tf=Array.isArray(p.family)?p.family[h]:p.family,v.tw=Array.isArray(p.weight)?p.weight[h]:p.weight,v.ty=Array.isArray(p.style)?p.style[h]:p.style,v.tv=Array.isArray(p.variant)?p.variant[h]:p.variant);var T=a.marker;T&&(v.ms=x.isArrayOrTypedArray(T.size)?T.size[h]:T.size,v.mo=x.isArrayOrTypedArray(T.opacity)?T.opacity[h]:T.opacity,v.mx=x.isArrayOrTypedArray(T.symbol)?T.symbol[h]:T.symbol,v.ma=x.isArrayOrTypedArray(T.angle)?T.angle[h]:T.angle,v.mc=x.isArrayOrTypedArray(T.color)?T.color[h]:T.color);var l=T&&T.line;l&&(v.mlc=Array.isArray(l.color)?l.color[h]:l.color,v.mlw=x.isArrayOrTypedArray(l.width)?l.width[h]:l.width);var _=T&&T.gradient;_&&_.type!=="none"&&(v.mgt=Array.isArray(_.type)?_.type[h]:_.type,v.mgc=Array.isArray(_.color)?_.color[h]:_.color);var w=i.c2p(v.x,!0),S=n.c2p(v.y,!0),E=v.mrc||1,m=a.hoverlabel;m&&(v.hbg=Array.isArray(m.bgcolor)?m.bgcolor[h]:m.bgcolor,v.hbc=Array.isArray(m.bordercolor)?m.bordercolor[h]:m.bordercolor,v.hts=x.isArrayOrTypedArray(m.font.size)?m.font.size[h]:m.font.size,v.htc=Array.isArray(m.font.color)?m.font.color[h]:m.font.color,v.htf=Array.isArray(m.font.family)?m.font.family[h]:m.font.family,v.hnl=x.isArrayOrTypedArray(m.namelength)?m.namelength[h]:m.namelength);var b=a.hoverinfo;b&&(v.hi=Array.isArray(b)?b[h]:b);var d=a.hovertemplate;d&&(v.ht=Array.isArray(d)?d[h]:d);var u={};u[t.index]=v;var y=a._origX,f=a._origY,P=x.extendFlat({},t,{color:A(a,v),x0:w-E,x1:w+E,xLabelVal:y?y[h]:v.x,y0:S-E,y1:S+E,yLabelVal:f?f[h]:v.y,cd:u,distance:s,spikeDistance:c,hovertemplate:v.ht});return v.htx?P.text=v.htx:v.tx?P.text=v.tx:a.text&&(P.text=a.text),x.fillText(v,a,P),g.getComponentMethod("errorbars","hoverInfo")(v,a,P),P}H.exports={hoverPoints:M,calcHover:e}}}),mg=Ye({"src/traces/scattergl/constants.js"(X,H){"use strict";var g=20;H.exports={TOO_MANY_POINTS:1e5,SYMBOL_SDF_SIZE:200,SYMBOL_SIZE:g,SYMBOL_STROKE:g/20,DOT_RE:/-dot/,OPEN_RE:/-open/,DASHES:{solid:[1],dot:[1,1],dash:[4,1],longdash:[8,1],dashdot:[4,1,1,1],longdashdot:[8,1,1,1]}}}}),yx=Ye({"src/traces/scattergl/attributes.js"(X,H){"use strict";var g=Pl(),x=Au(),A=$d(),M=Pc(),e=Cc().axisHoverFormat,t=tu(),r=Km(),o=Oo().extendFlat,a=Ou().overrideAll,i=mg().DASHES,n=M.line,s=M.marker,c=s.line,h=H.exports=a({x:M.x,x0:M.x0,dx:M.dx,y:M.y,y0:M.y0,dy:M.dy,xperiod:M.xperiod,yperiod:M.yperiod,xperiod0:M.xperiod0,yperiod0:M.yperiod0,xperiodalignment:M.xperiodalignment,yperiodalignment:M.yperiodalignment,xhoverformat:e("x"),yhoverformat:e("y"),text:M.text,hovertext:M.hovertext,textposition:M.textposition,textfont:x({noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,editType:"calc",colorEditType:"style",arrayOk:!0,noNumericWeightValues:!0,variantValues:["normal","small-caps"]}),mode:{valType:"flaglist",flags:["lines","markers","text"],extras:["none"]},line:{color:n.color,width:n.width,shape:{valType:"enumerated",values:["linear","hv","vh","hvh","vhv"],dflt:"linear",editType:"plot"},dash:{valType:"enumerated",values:r(i),dflt:"solid"}},marker:o({},t("marker"),{symbol:s.symbol,angle:s.angle,size:s.size,sizeref:s.sizeref,sizemin:s.sizemin,sizemode:s.sizemode,opacity:s.opacity,colorbar:s.colorbar,line:o({},t("marker.line"),{width:c.width})}),connectgaps:M.connectgaps,fill:o({},M.fill,{dflt:"none"}),fillcolor:A(),selected:{marker:M.selected.marker,textfont:M.selected.textfont},unselected:{marker:M.unselected.marker,textfont:M.unselected.textfont},opacity:g.opacity},"calc","nested");h.x.editType=h.y.editType=h.x0.editType=h.y0.editType="calc+clearAxisTypes",h.hovertemplate=M.hovertemplate,h.texttemplate=M.texttemplate}}),pT=Ye({"src/traces/scattergl/helpers.js"(X){"use strict";var H=mg();X.isOpenSymbol=function(g){return typeof g=="string"?H.OPEN_RE.test(g):g%200>100},X.isDotSymbol=function(g){return typeof g=="string"?H.DOT_RE.test(g):g>200}}}),IU=Ye({"src/traces/scattergl/defaults.js"(X,H){"use strict";var g=ta(),x=Hn(),A=pT(),M=yx(),e=Tv(),t=uu(),r=i1(),o=Qd(),a=md(),i=Dd(),n=ev(),s=zd();H.exports=function(h,v,p,T){function l(u,y){return g.coerce(h,v,M,u,y)}var _=h.marker?A.isOpenSymbol(h.marker.symbol):!1,w=t.isBubble(h),S=r(h,v,T,l);if(!S){v.visible=!1;return}o(h,v,T,l),l("xhoverformat"),l("yhoverformat");var E=S<e.PTS_LINESONLY?"lines+markers":"lines";l("text"),l("hovertext"),l("hovertemplate"),l("mode",E),t.hasMarkers(v)&&(a(h,v,p,T,l,{noAngleRef:!0,noStandOff:!0}),l("marker.line.width",_||w?1:0)),t.hasLines(v)&&(l("connectgaps"),i(h,v,p,T,l),l("line.shape")),t.hasText(v)&&(l("texttemplate"),s(h,v,T,l,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}));var m=(v.line||{}).color,b=(v.marker||{}).color;l("fill"),v.fill!=="none"&&n(h,v,p,l);var d=x.getComponentMethod("errorbars","supplyDefaults");d(h,v,m||b||p,{axis:"y"}),d(h,v,m||b||p,{axis:"x",inherit:"y"}),g.coerceSelectionMarkerOpacity(v,l)}}}),RU=Ye({"src/traces/scattergl/format_labels.js"(X,H){"use strict";var g=L2();H.exports=function(A,M,e){var t=A.i;return"x"in A||(A.x=M._x[t]),"y"in A||(A.y=M._y[t]),g(A,M,e)}}}),DU=Ye({"node_modules/binary-search-bounds/search-bounds.js"(X,H){"use strict";function g(r,o,a,i,n){for(var s=n+1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>=0?(s=c,n=c-1):i=c+1}return s}function x(r,o,a,i,n){for(var s=n+1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v>0?(s=c,n=c-1):i=c+1}return s}function A(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<0?(s=c,i=c+1):n=c-1}return s}function M(r,o,a,i,n){for(var s=i-1;i<=n;){var c=i+n>>>1,h=r[c],v=a!==void 0?a(h,o):h-o;v<=0?(s=c,i=c+1):n=c-1}return s}function e(r,o,a,i,n){for(;i<=n;){var s=i+n>>>1,c=r[s],h=a!==void 0?a(c,o):c-o;if(h===0)return s;h<=0?i=s+1:n=s-1}return-1}function t(r,o,a,i,n,s){return typeof a=="function"?s(r,o,a,i===void 0?0:i|0,n===void 0?r.length-1:n|0):s(r,o,void 0,a===void 0?0:a|0,i===void 0?r.length-1:i|0)}H.exports={ge:function(r,o,a,i,n){return t(r,o,a,i,n,g)},gt:function(r,o,a,i,n){return t(r,o,a,i,n,x)},lt:function(r,o,a,i,n){return t(r,o,a,i,n,A)},le:function(r,o,a,i,n){return t(r,o,a,i,n,M)},eq:function(r,o,a,i,n){return t(r,o,a,i,n,e)}}}}),Ev=Ye({"node_modules/pick-by-alias/index.js"(X,H){"use strict";H.exports=function(M,e,t){var r={},o,a;if(typeof e=="string"&&(e=x(e)),Array.isArray(e)){var i={};for(a=0;a<e.length;a++)i[e[a]]=!0;e=i}for(o in e)e[o]=x(e[o]);var n={};for(o in e){var s=e[o];if(Array.isArray(s))for(a=0;a<s.length;a++){var c=s[a];if(t&&(n[c]=!0),c in M){if(r[o]=M[c],t)for(var h=a;h<s.length;h++)n[s[h]]=!0;break}}else o in M&&(e[o]&&(r[o]=M[o]),t&&(n[o]=!0))}if(t)for(o in M)n[o]||(r[o]=M[o]);return r};var g={};function x(A){return g[A]?g[A]:(typeof A=="string"&&(A=g[A]=A.split(/\s*,\s*|\s+/)),A)}}}),E1=Ye({"node_modules/parse-rect/index.js"(X,H){"use strict";var g=Ev();H.exports=x;function x(A){var M;return arguments.length>1&&(A=arguments),typeof A=="string"?A=A.split(/\s/).map(parseFloat):typeof A=="number"&&(A=[A]),A.length&&typeof A[0]=="number"?A.length===1?M={width:A[0],height:A[0],x:0,y:0}:A.length===2?M={width:A[0],height:A[1],x:0,y:0}:M={x:A[0],y:A[1],width:A[2]-A[0]||0,height:A[3]-A[1]||0}:A&&(A=g(A,{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"}),M={x:A.left||0,y:A.top||0},A.width==null?A.right?M.width=A.right-M.x:M.width=0:M.width=A.width,A.height==null?A.bottom?M.height=A.bottom-M.y:M.height=0:M.height=A.height),M}}}),d0=Ye({"node_modules/array-bounds/index.js"(X,H){"use strict";H.exports=g;function g(x,A){if(!x||x.length==null)throw Error("Argument should be an array");A==null?A=1:A=Math.floor(A);for(var M=Array(A*2),e=0;e<A;e++){for(var t=-1/0,r=1/0,o=e,a=x.length;o<a;o+=A)x[o]>t&&(t=x[o]),x[o]<r&&(r=x[o]);M[e]=r,M[A+e]=t}return M}}}),zU=Ye({"node_modules/defined/index.js"(X,H){H.exports=function(){for(var g=0;g<arguments.length;g++)if(arguments[g]!==void 0)return arguments[g]}}}),v0=Ye({"node_modules/flatten-vertex-data/index.js"(X,H){var g=$3();H.exports=x;function x(A,M,e){if(!A)throw new TypeError("must specify data as first parameter");if(e=+(e||0)|0,Array.isArray(A)&&A[0]&&typeof A[0][0]=="number"){var t=A[0].length,r=A.length*t,o,a,i,n;(!M||typeof M=="string")&&(M=new(g(M||"float32"))(r+e));var s=M.length-e;if(r!==s)throw new Error("source length "+r+" ("+t+"x"+A.length+") does not match destination length "+s);for(o=0,i=e;o<A.length;o++)for(a=0;a<t;a++)M[i++]=A[o][a]===null?NaN:A[o][a]}else if(!M||typeof M=="string"){var c=g(M||"float32");if(Array.isArray(A)||M==="array")for(M=new c(A.length+e),o=0,i=e,n=M.length;i<n;i++,o++)M[i]=A[o]===null?NaN:A[o];else e===0?M=new c(A):(M=new c(A.length+e),M.set(A,e))}else M.set(A,e);return M}}}),FU=Ye({"node_modules/is-obj/index.js"(X,H){"use strict";H.exports=function(g){var x=typeof g;return g!==null&&(x==="object"||x==="function")}}}),OU=Ye({"node_modules/math-log2/index.js"(X,H){"use strict";H.exports=Math.log2||function(g){return Math.log(g)*Math.LOG2E}}}),BU=Ye({"node_modules/@plotly/point-cluster/quad.js"(X,H){"use strict";var g=DU(),x=dx(),A=E1(),M=d0(),e=Ev(),t=zU(),r=v0(),o=FU(),a=$3(),i=OU(),n=1073741824;H.exports=function(h,v){v||(v={}),h=r(h,"float64"),v=e(v,{bounds:"range bounds dataBox databox",maxDepth:"depth maxDepth maxdepth level maxLevel maxlevel levels",dtype:"type dtype format out dst output destination"});let p=t(v.maxDepth,255),T=t(v.bounds,M(h,2));T[0]===T[2]&&T[2]++,T[1]===T[3]&&T[3]++;let l=s(h,T),_=h.length>>>1,w;v.dtype||(v.dtype="array"),typeof v.dtype=="string"?w=new(a(v.dtype))(_):v.dtype&&(w=v.dtype,Array.isArray(w)&&(w.length=_));for(let L=0;L<_;++L)w[L]=L;let S=[],E=[],m=[],b=[];u(0,0,1,w,0,1);let d=0;for(let L=0;L<S.length;L++){let z=S[L];if(w.set)w.set(z,d);else for(let B=0,O=z.length;B<O;B++)w[B+d]=z[B];let F=d+S[L].length;b[L]=[d,F],d=F}return w.range=y,w;function u(L,z,F,B,O,I){if(!B.length)return null;let N=S[O]||(S[O]=[]),U=m[O]||(m[O]=[]),W=E[O]||(E[O]=[]),Q=N.length;if(O++,O>p||I>n){for(let re=0;re<B.length;re++)N.push(B[re]),U.push(I),W.push(null,null,null,null);return Q}if(N.push(B[0]),U.push(I),B.length<=1)return W.push(null,null,null,null),Q;let ue=F*.5,se=L+ue,he=z+ue,G=[],$=[],J=[],Z=[];for(let re=1,ne=B.length;re<ne;re++){let j=B[re],ee=l[j*2],ie=l[j*2+1];ee<se?ie<he?G.push(j):$.push(j):ie<he?J.push(j):Z.push(j)}return I<<=2,W.push(u(L,z,ue,G,O,I),u(L,he,ue,$,O,I+1),u(se,z,ue,J,O,I+2),u(se,he,ue,Z,O,I+3)),Q}function y(...L){let z;if(o(L[L.length-1])){let J=L.pop();!L.length&&(J.x!=null||J.l!=null||J.left!=null)&&(L=[J],z={}),z=e(J,{level:"level maxLevel",d:"d diam diameter r radius px pxSize pixel pixelSize maxD size minSize",lod:"lod details ranges offsets"})}else z={};L.length||(L=T);let F=A(...L),[B,O,I,N]=[Math.min(F.x,F.x+F.width),Math.min(F.y,F.y+F.height),Math.max(F.x,F.x+F.width),Math.max(F.y,F.y+F.height)],[U,W,Q,ue]=s([B,O,I,N],T),se=t(z.level,S.length);if(z.d!=null){let J;typeof z.d=="number"?J=[z.d,z.d]:z.d.length&&(J=z.d),se=Math.min(Math.max(Math.ceil(-i(Math.abs(J[0])/(T[2]-T[0]))),Math.ceil(-i(Math.abs(J[1])/(T[3]-T[1])))),se)}if(se=Math.min(se,S.length),z.lod)return f(U,W,Q,ue,se);let he=[];G(0,0,1,0,0,1);function G(J,Z,re,ne,j,ee){if(j===null||ee===null)return;let ie=J+re,fe=Z+re;if(U>ie||W>fe||Q<J||ue<Z||ne>=se||j===ee)return;let be=S[ne];ee===void 0&&(ee=be.length);for(let Me=j;Me<ee;Me++){let ge=be[Me],ce=h[ge*2],ze=h[ge*2+1];ce>=B&&ce<=I&&ze>=O&&ze<=N&&he.push(ge)}let Ae=E[ne],Be=Ae[j*4+0],Ie=Ae[j*4+1],Ze=Ae[j*4+2],at=Ae[j*4+3],it=$(Ae,j+1),et=re*.5,lt=ne+1;G(J,Z,et,lt,Be,Ie||Ze||at||it),G(J,Z+et,et,lt,Ie,Ze||at||it),G(J+et,Z,et,lt,Ze,at||it),G(J+et,Z+et,et,lt,at,it)}function $(J,Z){let re=null,ne=0;for(;re===null;)if(re=J[Z*4+ne],ne++,ne>J.length)return null;return re}return he}function f(L,z,F,B,O){let I=[];for(let N=0;N<O;N++){let U=m[N],W=b[N][0],Q=P(L,z,N),ue=P(F,B,N),se=g.ge(U,Q),he=g.gt(U,ue,se,U.length-1);I[N]=[se+W,he+W]}return I}function P(L,z,F){let B=1,O=.5,I=.5,N=.5;for(let U=0;U<F;U++)B<<=2,B+=L<O?z<I?0:1:z<I?2:3,N*=.5,O+=L<O?-N:N,I+=z<I?-N:N;return B}};function s(c,h){let[v,p,T,l]=h,_=1/(T-v),w=1/(l-p),S=new Array(c.length);for(let E=0,m=c.length/2;E<m;E++)S[2*E]=x((c[2*E]-v)*_,0,1),S[2*E+1]=x((c[2*E+1]-p)*w,0,1);return S}}}),dT=Ye({"node_modules/@plotly/point-cluster/index.js"(X,H){"use strict";H.exports=BU()}}),R5=Ye({"node_modules/abs-svg-path/index.js"(X,H){H.exports=g;function g(x){var A=0,M=0,e=0,t=0;return x.map(function(r){r=r.slice();var o=r[0],a=o.toUpperCase();if(o!=a)switch(r[0]=a,o){case"a":r[6]+=e,r[7]+=t;break;case"v":r[1]+=t;break;case"h":r[1]+=e;break;default:for(var i=1;i<r.length;)r[i++]+=e,r[i++]+=t}switch(a){case"Z":e=A,t=M;break;case"H":e=r[1];break;case"V":t=r[1];break;case"M":e=A=r[1],t=M=r[2];break;default:e=r[r.length-2],t=r[r.length-1]}return r})}}}),NU=Ye({"node_modules/svg-arc-to-cubic-bezier/cjs/index.js"(X,H){"use strict";Object.defineProperty(X,"__esModule",{value:!0});var g=function(){function o(a,i){var n=[],s=!0,c=!1,h=void 0;try{for(var v=a[Symbol.iterator](),p;!(s=(p=v.next()).done)&&(n.push(p.value),!(i&&n.length===i));s=!0);}catch(T){c=!0,h=T}finally{try{!s&&v.return&&v.return()}finally{if(c)throw h}}return n}return function(a,i){if(Array.isArray(a))return a;if(Symbol.iterator in Object(a))return o(a,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),x=Math.PI*2,A=function(a,i,n,s,c,h,v){var p=a.x,T=a.y;p*=i,T*=n;var l=s*p-c*T,_=c*p+s*T;return{x:l+h,y:_+v}},M=function(a,i){var n=i===1.5707963267948966?.551915024494:i===-1.5707963267948966?-.551915024494:1.3333333333333333*Math.tan(i/4),s=Math.cos(a),c=Math.sin(a),h=Math.cos(a+i),v=Math.sin(a+i);return[{x:s-c*n,y:c+s*n},{x:h+v*n,y:v-h*n},{x:h,y:v}]},e=function(a,i,n,s){var c=a*s-i*n<0?-1:1,h=a*n+i*s;return h>1&&(h=1),h<-1&&(h=-1),c*Math.acos(h)},t=function(a,i,n,s,c,h,v,p,T,l,_,w){var S=Math.pow(c,2),E=Math.pow(h,2),m=Math.pow(_,2),b=Math.pow(w,2),d=S*E-S*b-E*m;d<0&&(d=0),d/=S*b+E*m,d=Math.sqrt(d)*(v===p?-1:1);var u=d*c/h*w,y=d*-h/c*_,f=l*u-T*y+(a+n)/2,P=T*u+l*y+(i+s)/2,L=(_-u)/c,z=(w-y)/h,F=(-_-u)/c,B=(-w-y)/h,O=e(1,0,L,z),I=e(L,z,F,B);return p===0&&I>0&&(I-=x),p===1&&I<0&&(I+=x),[f,P,O,I]},r=function(a){var i=a.px,n=a.py,s=a.cx,c=a.cy,h=a.rx,v=a.ry,p=a.xAxisRotation,T=p===void 0?0:p,l=a.largeArcFlag,_=l===void 0?0:l,w=a.sweepFlag,S=w===void 0?0:w,E=[];if(h===0||v===0)return[];var m=Math.sin(T*x/360),b=Math.cos(T*x/360),d=b*(i-s)/2+m*(n-c)/2,u=-m*(i-s)/2+b*(n-c)/2;if(d===0&&u===0)return[];h=Math.abs(h),v=Math.abs(v);var y=Math.pow(d,2)/Math.pow(h,2)+Math.pow(u,2)/Math.pow(v,2);y>1&&(h*=Math.sqrt(y),v*=Math.sqrt(y));var f=t(i,n,s,c,h,v,_,S,m,b,d,u),P=g(f,4),L=P[0],z=P[1],F=P[2],B=P[3],O=Math.abs(B)/(x/4);Math.abs(1-O)<1e-7&&(O=1);var I=Math.max(Math.ceil(O),1);B/=I;for(var N=0;N<I;N++)E.push(M(F,B)),F+=B;return E.map(function(U){var W=A(U[0],h,v,b,m,L,z),Q=W.x,ue=W.y,se=A(U[1],h,v,b,m,L,z),he=se.x,G=se.y,$=A(U[2],h,v,b,m,L,z),J=$.x,Z=$.y;return{x1:Q,y1:ue,x2:he,y2:G,x:J,y:Z}})};X.default=r,H.exports=X.default}}),UU=Ye({"node_modules/svg-path-bounds/node_modules/normalize-svg-path/index.js"(X,H){"use strict";H.exports=x;var g=NU();function x(e){for(var t,r=[],o=0,a=0,i=0,n=0,s=null,c=null,h=0,v=0,p=0,T=e.length;p<T;p++){var l=e[p],_=l[0];switch(_){case"M":i=l[1],n=l[2];break;case"A":var w=g({px:h,py:v,cx:l[6],cy:l[7],rx:l[1],ry:l[2],xAxisRotation:l[3],largeArcFlag:l[4],sweepFlag:l[5]});if(!w.length)continue;for(var S=0,E;S<w.length;S++)E=w[S],l=["C",E.x1,E.y1,E.x2,E.y2,E.x,E.y],S<w.length-1&&r.push(l);break;case"S":var m=h,b=v;(t=="C"||t=="S")&&(m+=m-o,b+=b-a),l=["C",m,b,l[1],l[2],l[3],l[4]];break;case"T":t=="Q"||t=="T"?(s=h*2-s,c=v*2-c):(s=h,c=v),l=M(h,v,s,c,l[1],l[2]);break;case"Q":s=l[1],c=l[2],l=M(h,v,l[1],l[2],l[3],l[4]);break;case"L":l=A(h,v,l[1],l[2]);break;case"H":l=A(h,v,l[1],v);break;case"V":l=A(h,v,h,l[1]);break;case"Z":l=A(h,v,i,n);break}t=_,h=l[l.length-2],v=l[l.length-1],l.length>4?(o=l[l.length-4],a=l[l.length-3]):(o=h,a=v),r.push(l)}return r}function A(e,t,r,o){return["C",e,t,r,o,r,o]}function M(e,t,r,o,a,i){return["C",e/3+2/3*r,t/3+2/3*o,a/3+2/3*r,i/3+2/3*o,a,i]}}}),D5=Ye({"node_modules/is-svg-path/index.js"(X,H){"use strict";H.exports=function(x){return typeof x!="string"?!1:(x=x.trim(),!!(/^[mzlhvcsqta]\s*[-+.0-9][^mlhvzcsqta]+/i.test(x)&&/[\dz]$/i.test(x)&&x.length>4))}}}),jU=Ye({"node_modules/svg-path-bounds/index.js"(X,H){"use strict";var g=A_(),x=R5(),A=UU(),M=D5(),e=X_();H.exports=t;function t(r){if(Array.isArray(r)&&r.length===1&&typeof r[0]=="string"&&(r=r[0]),typeof r=="string"&&(e(M(r),"String is not an SVG path."),r=g(r)),e(Array.isArray(r),"Argument should be a string or an array of path segments."),r=x(r),r=A(r),!r.length)return[0,0,0,0];for(var o=[1/0,1/0,-1/0,-1/0],a=0,i=r.length;a<i;a++)for(var n=r[a].slice(1),s=0;s<n.length;s+=2)n[s+0]<o[0]&&(o[0]=n[s+0]),n[s+1]<o[1]&&(o[1]=n[s+1]),n[s+0]>o[2]&&(o[2]=n[s+0]),n[s+1]>o[3]&&(o[3]=n[s+1]);return o}}}),VU=Ye({"node_modules/normalize-svg-path/index.js"(X,H){var g=Math.PI,x=o(120);H.exports=A;function A(a){for(var i,n=[],s=0,c=0,h=0,v=0,p=null,T=null,l=0,_=0,w=0,S=a.length;w<S;w++){var E=a[w],m=E[0];switch(m){case"M":h=E[1],v=E[2];break;case"A":E=t(l,_,E[1],E[2],o(E[3]),E[4],E[5],E[6],E[7]),E.unshift("C"),E.length>7&&(n.push(E.splice(0,7)),E.unshift("C"));break;case"S":var b=l,d=_;(i=="C"||i=="S")&&(b+=b-s,d+=d-c),E=["C",b,d,E[1],E[2],E[3],E[4]];break;case"T":i=="Q"||i=="T"?(p=l*2-p,T=_*2-T):(p=l,T=_),E=e(l,_,p,T,E[1],E[2]);break;case"Q":p=E[1],T=E[2],E=e(l,_,E[1],E[2],E[3],E[4]);break;case"L":E=M(l,_,E[1],E[2]);break;case"H":E=M(l,_,E[1],_);break;case"V":E=M(l,_,l,E[1]);break;case"Z":E=M(l,_,h,v);break}i=m,l=E[E.length-2],_=E[E.length-1],E.length>4?(s=E[E.length-4],c=E[E.length-3]):(s=l,c=_),n.push(E)}return n}function M(a,i,n,s){return["C",a,i,n,s,n,s]}function e(a,i,n,s,c,h){return["C",a/3+2/3*n,i/3+2/3*s,c/3+2/3*n,h/3+2/3*s,c,h]}function t(a,i,n,s,c,h,v,p,T,l){if(l)f=l[0],P=l[1],u=l[2],y=l[3];else{var _=r(a,i,-c);a=_.x,i=_.y,_=r(p,T,-c),p=_.x,T=_.y;var w=(a-p)/2,S=(i-T)/2,E=w*w/(n*n)+S*S/(s*s);E>1&&(E=Math.sqrt(E),n=E*n,s=E*s);var m=n*n,b=s*s,d=(h==v?-1:1)*Math.sqrt(Math.abs((m*b-m*S*S-b*w*w)/(m*S*S+b*w*w)));d==1/0&&(d=1);var u=d*n*S/s+(a+p)/2,y=d*-s*w/n+(i+T)/2,f=Math.asin(((i-y)/s).toFixed(9)),P=Math.asin(((T-y)/s).toFixed(9));f=a<u?g-f:f,P=p<u?g-P:P,f<0&&(f=g*2+f),P<0&&(P=g*2+P),v&&f>P&&(f=f-g*2),!v&&P>f&&(P=P-g*2)}if(Math.abs(P-f)>x){var L=P,z=p,F=T;P=f+x*(v&&P>f?1:-1),p=u+n*Math.cos(P),T=y+s*Math.sin(P);var B=t(p,T,n,s,c,0,v,z,F,[P,L,u,y])}var O=Math.tan((P-f)/4),I=4/3*n*O,N=4/3*s*O,U=[2*a-(a+I*Math.sin(f)),2*i-(i-N*Math.cos(f)),p+I*Math.sin(P),T-N*Math.cos(P),p,T];if(l)return U;B&&(U=U.concat(B));for(var W=0;W<U.length;){var Q=r(U[W],U[W+1],c);U[W++]=Q.x,U[W++]=Q.y}return U}function r(a,i,n){return{x:a*Math.cos(n)-i*Math.sin(n),y:a*Math.sin(n)+i*Math.cos(n)}}function o(a){return a*(g/180)}}}),qU=Ye({"node_modules/draw-svg-path/index.js"(X,H){var g=R5(),x=VU(),A={M:"moveTo",C:"bezierCurveTo"};H.exports=function(M,e){M.beginPath(),x(g(e)).forEach(function(t){var r=t[0],o=t.slice(1);M[A[r]].apply(M,o)}),M.closePath()}}}),HU=Ye({"node_modules/bitmap-sdf/index.js"(X,H){"use strict";var g=dx();H.exports=A;var x=1e20;function A(t,r){r||(r={});var o=r.cutoff==null?.25:r.cutoff,a=r.radius==null?8:r.radius,i=r.channel||0,n,s,c,h,v,p,T,l,_,w,S;if(ArrayBuffer.isView(t)||Array.isArray(t)){if(!r.width||!r.height)throw Error("For raw data width and height should be provided by options");n=r.width,s=r.height,h=t,r.stride?p=r.stride:p=Math.floor(t.length/n/s)}else window.HTMLCanvasElement&&t instanceof window.HTMLCanvasElement?(l=t,T=l.getContext("2d"),n=l.width,s=l.height,_=T.getImageData(0,0,n,s),h=_.data,p=4):window.CanvasRenderingContext2D&&t instanceof window.CanvasRenderingContext2D?(l=t.canvas,T=t,n=l.width,s=l.height,_=T.getImageData(0,0,n,s),h=_.data,p=4):window.ImageData&&t instanceof window.ImageData&&(_=t,n=t.width,s=t.height,h=_.data,p=4);if(c=Math.max(n,s),window.Uint8ClampedArray&&h instanceof window.Uint8ClampedArray||window.Uint8Array&&h instanceof window.Uint8Array)for(v=h,h=Array(n*s),w=0,S=v.length;w<S;w++)h[w]=v[w*p+i]/255;else if(p!==1)throw Error("Raw data can have only 1 value per pixel");var E=Array(n*s),m=Array(n*s),b=Array(c),d=Array(c),u=Array(c+1),y=Array(c);for(w=0,S=n*s;w<S;w++){var f=h[w];E[w]=f===1?0:f===0?x:Math.pow(Math.max(0,.5-f),2),m[w]=f===1?x:f===0?0:Math.pow(Math.max(0,f-.5),2)}M(E,n,s,b,d,y,u),M(m,n,s,b,d,y,u);var P=window.Float32Array?new Float32Array(n*s):new Array(n*s);for(w=0,S=n*s;w<S;w++)P[w]=g(1-((E[w]-m[w])/a+o),0,1);return P}function M(t,r,o,a,i,n,s){for(var c=0;c<r;c++){for(var h=0;h<o;h++)a[h]=t[h*r+c];for(e(a,i,n,s,o),h=0;h<o;h++)t[h*r+c]=i[h]}for(h=0;h<o;h++){for(c=0;c<r;c++)a[c]=t[h*r+c];for(e(a,i,n,s,r),c=0;c<r;c++)t[h*r+c]=Math.sqrt(i[c])}}function e(t,r,o,a,i){o[0]=0,a[0]=-x,a[1]=+x;for(var n=1,s=0;n<i;n++){for(var c=(t[n]+n*n-(t[o[s]]+o[s]*o[s]))/(2*n-2*o[s]);c<=a[s];)s--,c=(t[n]+n*n-(t[o[s]]+o[s]*o[s]))/(2*n-2*o[s]);s++,o[s]=n,a[s]=c,a[s+1]=+x}for(n=0,s=0;n<i;n++){for(;a[s+1]<n;)s++;r[n]=(n-o[s])*(n-o[s])+t[o[s]]}}}}),GU=Ye({"node_modules/svg-path-sdf/index.js"(X,H){"use strict";var g=jU(),x=A_(),A=qU(),M=D5(),e=HU(),t=document.createElement("canvas"),r=t.getContext("2d");H.exports=o;function o(n,s){if(!M(n))throw Error("Argument should be valid svg path string");s||(s={});var c,h;s.shape?(c=s.shape[0],h=s.shape[1]):(c=t.width=s.w||s.width||200,h=t.height=s.h||s.height||200);var v=Math.min(c,h),p=s.stroke||0,T=s.viewbox||s.viewBox||g(n),l=[c/(T[2]-T[0]),h/(T[3]-T[1])],_=Math.min(l[0]||0,l[1]||0)/2;if(r.fillStyle="black",r.fillRect(0,0,c,h),r.fillStyle="white",p&&(typeof p!="number"&&(p=1),p>0?r.strokeStyle="white":r.strokeStyle="black",r.lineWidth=Math.abs(p)),r.translate(c*.5,h*.5),r.scale(_,_),i()){var w=new Path2D(n);r.fill(w),p&&r.stroke(w)}else{var S=x(n);A(r,S),r.fill(),p&&r.stroke()}r.setTransform(1,0,0,1,0,0);var E=e(r,{cutoff:s.cutoff!=null?s.cutoff:.5,radius:s.radius!=null?s.radius:v*.5});return E}var a;function i(){if(a!=null)return a;var n=document.createElement("canvas").getContext("2d");if(n.canvas.width=n.canvas.height=1,!window.Path2D)return a=!1;var s=new Path2D("M0,0h1v1h-1v-1Z");n.fillStyle="black",n.fill(s);var c=n.getImageData(0,0,1,1);return a=c&&c.data&&c.data[3]===255}}}),m0=Ye({"src/traces/scattergl/convert.js"(X,H){"use strict";var g=jo(),x=GU(),A=hg(),M=Hn(),e=ta(),t=e.isArrayOrTypedArray,r=Bo(),o=Xc(),a=em().formatColor,i=uu(),n=t1(),s=pT(),c=mg(),h=Xm().DESELECTDIM,v={start:1,left:1,end:-1,right:-1,middle:0,center:0,bottom:1,top:-1},p=Qp().appendArrayPointValue;function T(B,O){var I,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},U=B._context.plotGlPixelRatio;if(O.visible!==!0)return N;if(i.hasText(O)&&(N.text=l(B,O),N.textSel=E(B,O,O.selected),N.textUnsel=E(B,O,O.unselected)),i.hasMarkers(O)&&(N.marker=w(B,O),N.markerSel=S(B,O,O.selected),N.markerUnsel=S(B,O,O.unselected),!O.unselected&&t(O.marker.opacity))){var W=O.marker.opacity;for(N.markerUnsel.opacity=new Array(W.length),I=0;I<W.length;I++)N.markerUnsel.opacity[I]=h*W[I]}if(i.hasLines(O)){N.line={overlay:!0,thickness:O.line.width*U,color:O.line.color,opacity:O.opacity};var Q=(c.DASHES[O.line.dash]||[1]).slice();for(I=0;I<Q.length;++I)Q[I]*=O.line.width*U;N.line.dashes=Q}return O.error_x&&O.error_x.visible&&(N.errorX=m(O,O.error_x,U)),O.error_y&&O.error_y.visible&&(N.errorY=m(O,O.error_y,U)),O.fill&&O.fill!=="none"&&(N.fill={closed:!0,fill:O.fillcolor,thickness:0}),N}function l(B,O){var I=B._fullLayout,N=O._length,U=O.textfont,W=O.textposition,Q=t(W)?W:[W],ue=U.color,se=U.size,he=U.family,G=U.weight,$=U.style,J=U.variant,Z={},re,ne=B._context.plotGlPixelRatio,j=O.texttemplate;if(j){Z.text=[];var ee=I._d3locale,ie=Array.isArray(j),fe=ie?Math.min(j.length,N):N,be=ie?function(et){return j[et]}:function(){return j};for(re=0;re<fe;re++){var Ae={i:re},Be=O._module.formatLabels(Ae,O,I),Ie={};p(Ie,O,re);var Ze=O._meta||{};Z.text.push(e.texttemplateString(be(re),Be,ee,Ie,Ae,Ze))}}else t(O.text)&&O.text.length<N?Z.text=O.text.slice():Z.text=O.text;if(t(Z.text))for(re=Z.text.length;re<N;re++)Z.text[re]="";for(Z.opacity=O.opacity,Z.font={},Z.align=[],Z.baseline=[],re=0;re<Q.length;re++){var at=Q[re].split(/\s+/);switch(at[1]){case"left":Z.align.push("right");break;case"right":Z.align.push("left");break;default:Z.align.push(at[1])}switch(at[0]){case"top":Z.baseline.push("bottom");break;case"bottom":Z.baseline.push("top");break;default:Z.baseline.push(at[0])}}if(t(ue))for(Z.color=new Array(N),re=0;re<N;re++)Z.color[re]=ue[re];else Z.color=ue;if(t(se)||Array.isArray(he)||t(G)||Array.isArray($)||Array.isArray(J))for(Z.font=new Array(N),re=0;re<N;re++){var it=Z.font[re]={};it.size=(e.isTypedArray(se)?se[re]:t(se)?g(se[re])?se[re]:0:se)*ne,it.family=Array.isArray(he)?he[re]:he,it.weight=_(t(G)?G[re]:G),it.style=Array.isArray($)?$[re]:$,it.variant=Array.isArray(J)?J[re]:J}else Z.font={size:se*ne,family:he,weight:_(G),style:$,variant:J};return Z}function _(B){return B<=1e3?B>500?"bold":"normal":B}function w(B,O){var I=O._length,N=O.marker,U={},W,Q=t(N.symbol),ue=t(N.angle),se=t(N.color),he=t(N.line.color),G=t(N.opacity),$=t(N.size),J=t(N.line.width),Z;if(Q||(Z=s.isOpenSymbol(N.symbol)),Q||se||he||G||ue){U.symbols=new Array(I),U.angles=new Array(I),U.colors=new Array(I),U.borderColors=new Array(I);var re=N.symbol,ne=N.angle,j=a(N,N.opacity,I),ee=a(N.line,N.opacity,I);if(!t(ee[0])){var ie=ee;for(ee=Array(I),W=0;W<I;W++)ee[W]=ie}if(!t(j[0])){var fe=j;for(j=Array(I),W=0;W<I;W++)j[W]=fe}if(!t(re)){var be=re;for(re=Array(I),W=0;W<I;W++)re[W]=be}if(!t(ne)){var Ae=ne;for(ne=Array(I),W=0;W<I;W++)ne[W]=Ae}for(U.symbols=re,U.angles=ne,U.colors=j,U.borderColors=ee,W=0;W<I;W++)Q&&(Z=s.isOpenSymbol(N.symbol[W])),Z&&(ee[W]=j[W].slice(),j[W]=j[W].slice(),j[W][3]=0);for(U.opacity=O.opacity,U.markers=new Array(I),W=0;W<I;W++)U.markers[W]=P({mx:U.symbols[W],ma:U.angles[W]},O)}else Z?(U.color=A(N.color,"uint8"),U.color[3]=0,U.borderColor=A(N.color,"uint8")):(U.color=A(N.color,"uint8"),U.borderColor=A(N.line.color,"uint8")),U.opacity=O.opacity*N.opacity,U.marker=P({mx:N.symbol,ma:N.angle},O);var Be=1,Ie=n(O,Be),Ze;if($||J){var at=U.sizes=new Array(I),it=U.borderSizes=new Array(I),et=0,lt;if($){for(W=0;W<I;W++)at[W]=Ie(N.size[W]),et+=at[W];lt=et/I}else for(Ze=Ie(N.size),W=0;W<I;W++)at[W]=Ze;if(J)for(W=0;W<I;W++)it[W]=N.line.width[W];else for(Ze=N.line.width,W=0;W<I;W++)it[W]=Ze;U.sizeAvg=lt}else U.size=Ie(N&&N.size||10),U.borderSizes=Ie(N.line.width);return U}function S(B,O,I){var N=O.marker,U={};return I&&(I.marker&&I.marker.symbol?U=w(B,e.extendFlat({},N,I.marker)):I.marker&&(I.marker.size&&(U.size=I.marker.size),I.marker.color&&(U.colors=I.marker.color),I.marker.opacity!==void 0&&(U.opacity=I.marker.opacity))),U}function E(B,O,I){var N={};if(!I)return N;if(I.textfont){var U={opacity:1,text:O.text,texttemplate:O.texttemplate,textposition:O.textposition,textfont:e.extendFlat({},O.textfont)};I.textfont&&e.extendFlat(U.textfont,I.textfont),N=l(B,U)}return N}function m(B,O,I){var N={capSize:O.width*2*I,lineWidth:O.thickness*I,color:O.color};return O.copy_ystyle&&(N=B.error_y),N}var b=c.SYMBOL_SDF_SIZE,d=c.SYMBOL_SIZE,u=c.SYMBOL_STROKE,y={},f=r.symbolFuncs[0](d*.05);function P(B,O){var I=B.mx;if(I==="circle")return null;var N,U,W=r.symbolNumber(I),Q=r.symbolFuncs[W%100],ue=!!r.symbolNoDot[W%100],se=!!r.symbolNoFill[W%100],he=s.isDotSymbol(I);if(B.ma&&(I+="_"+B.ma),y[I])return y[I];var G=r.getMarkerAngle(B,O);return he&&!ue?N=Q(d*1.1,G)+f:N=Q(d,G),U=x(N,{w:b,h:b,viewBox:[-d,-d,d,d],stroke:se?u:-u}),y[I]=U,U||null}function L(B,O,I){var N=I.length,U=N/2,W,Q;if(i.hasLines(O)&&U)if(O.line.shape==="hv"){for(W=[],Q=0;Q<U-1;Q++)isNaN(I[Q*2])||isNaN(I[Q*2+1])?W.push(NaN,NaN,NaN,NaN):(W.push(I[Q*2],I[Q*2+1]),!isNaN(I[Q*2+2])&&!isNaN(I[Q*2+3])?W.push(I[Q*2+2],I[Q*2+1]):W.push(NaN,NaN));W.push(I[N-2],I[N-1])}else if(O.line.shape==="hvh"){for(W=[],Q=0;Q<U-1;Q++)if(isNaN(I[Q*2])||isNaN(I[Q*2+1])||isNaN(I[Q*2+2])||isNaN(I[Q*2+3]))!isNaN(I[Q*2])&&!isNaN(I[Q*2+1])?W.push(I[Q*2],I[Q*2+1]):W.push(NaN,NaN),W.push(NaN,NaN);else{var ue=(I[Q*2]+I[Q*2+2])/2;W.push(I[Q*2],I[Q*2+1],ue,I[Q*2+1],ue,I[Q*2+3])}W.push(I[N-2],I[N-1])}else if(O.line.shape==="vhv"){for(W=[],Q=0;Q<U-1;Q++)if(isNaN(I[Q*2])||isNaN(I[Q*2+1])||isNaN(I[Q*2+2])||isNaN(I[Q*2+3]))!isNaN(I[Q*2])&&!isNaN(I[Q*2+1])?W.push(I[Q*2],I[Q*2+1]):W.push(NaN,NaN),W.push(NaN,NaN);else{var se=(I[Q*2+1]+I[Q*2+3])/2;W.push(I[Q*2],I[Q*2+1],I[Q*2],se,I[Q*2+2],se)}W.push(I[N-2],I[N-1])}else if(O.line.shape==="vh"){for(W=[],Q=0;Q<U-1;Q++)isNaN(I[Q*2])||isNaN(I[Q*2+1])?W.push(NaN,NaN,NaN,NaN):(W.push(I[Q*2],I[Q*2+1]),!isNaN(I[Q*2+2])&&!isNaN(I[Q*2+3])?W.push(I[Q*2],I[Q*2+3]):W.push(NaN,NaN));W.push(I[N-2],I[N-1])}else W=I;var he=!1;for(Q=0;Q<W.length;Q++)if(isNaN(W[Q])){he=!0;break}var G=he||W.length>c.TOO_MANY_POINTS||i.hasMarkers(O)?"rect":"round";if(he&&O.connectgaps){var $=W[0],J=W[1];for(Q=0;Q<W.length;Q+=2)isNaN(W[Q])||isNaN(W[Q+1])?(W[Q]=$,W[Q+1]=J):($=W[Q],J=W[Q+1])}return{join:G,positions:W}}function z(B,O,I,N,U){var W=M.getComponentMethod("errorbars","makeComputeError"),Q=o.getFromId(B,O.xaxis,"x"),ue=o.getFromId(B,O.yaxis,"y"),se=I.length/2,he={};function G($,J){var Z=J._id.charAt(0),re=O["error_"+Z];if(re&&re.visible&&(J.type==="linear"||J.type==="log")){for(var ne=W(re),j={x:0,y:1}[Z],ee={x:[0,1,2,3],y:[2,3,0,1]}[Z],ie=new Float64Array(4*se),fe=1/0,be=-1/0,Ae=0,Be=0;Ae<se;Ae++,Be+=4){var Ie=$[Ae];if(g(Ie)){var Ze=I[Ae*2+j],at=ne(Ie,Ae),it=at[0],et=at[1];if(g(it)&&g(et)){var lt=Ie-it,Me=Ie+et;ie[Be+ee[0]]=Ze-J.c2l(lt),ie[Be+ee[1]]=J.c2l(Me)-Ze,ie[Be+ee[2]]=0,ie[Be+ee[3]]=0,fe=Math.min(fe,Ie-it),be=Math.max(be,Ie+et)}}}he[Z]={positions:I,errors:ie,_bnds:[fe,be]}}}return G(N,Q),G(U,ue),he}function F(B,O,I,N){var U=O._length,W={},Q;if(i.hasMarkers(O)){var ue=I.font,se=I.align,he=I.baseline;for(W.offset=new Array(U),Q=0;Q<U;Q++){var G=N.sizes?N.sizes[Q]:N.size,$=t(ue)?ue[Q].size:ue.size,J=t(se)?se.length>1?se[Q]:se[0]:se,Z=t(he)?he.length>1?he[Q]:he[0]:he,re=v[J],ne=v[Z],j=G?G/.8+1:0,ee=-ne*j-ne*.5;W.offset[Q]=[re*j/$,ee/$]}}return W}H.exports={style:T,markerStyle:w,markerSelection:S,linePositions:L,errorBarPositions:z,textPosition:F}}}),z5=Ye({"src/traces/scattergl/scene_update.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=M._scene,t={count:0,dirty:!0,lineOptions:[],fillOptions:[],markerOptions:[],markerSelectedOptions:[],markerUnselectedOptions:[],errorXOptions:[],errorYOptions:[],textOptions:[],textSelectedOptions:[],textUnselectedOptions:[],selectBatch:[],unselectBatch:[]},r={fill2d:!1,scatter2d:!1,error2d:!1,line2d:!1,glText:!1,select2d:!1};return M._scene||(e=M._scene={},e.init=function(){g.extendFlat(e,r,t)},e.init(),e.update=function(a){var i=g.repeat(a,e.count);if(e.fill2d&&e.fill2d.update(i),e.scatter2d&&e.scatter2d.update(i),e.line2d&&e.line2d.update(i),e.error2d&&e.error2d.update(i.concat(i)),e.select2d&&e.select2d.update(i),e.glText)for(var n=0;n<e.count;n++)e.glText[n].update(a)},e.draw=function(){for(var a=e.count,i=e.fill2d,n=e.error2d,s=e.line2d,c=e.scatter2d,h=e.glText,v=e.select2d,p=e.selectBatch,T=e.unselectBatch,l=0;l<a;l++){if(i&&e.fillOrder[l]&&i.draw(e.fillOrder[l]),s&&e.lineOptions[l]&&s.draw(l),n&&(e.errorXOptions[l]&&n.draw(l),e.errorYOptions[l]&&n.draw(l+a)),c&&e.markerOptions[l])if(T[l].length){var _=g.repeat([],e.count);_[l]=T[l],c.draw(_)}else p[l].length||c.draw(l);h[l]&&e.textOptions[l]&&h[l].render()}v&&v.draw(p),e.dirty=!1},e.destroy=function(){e.fill2d&&e.fill2d.destroy&&e.fill2d.destroy(),e.scatter2d&&e.scatter2d.destroy&&e.scatter2d.destroy(),e.error2d&&e.error2d.destroy&&e.error2d.destroy(),e.line2d&&e.line2d.destroy&&e.line2d.destroy(),e.select2d&&e.select2d.destroy&&e.select2d.destroy(),e.glText&&e.glText.forEach(function(a){a.destroy&&a.destroy()}),e.lineOptions=null,e.fillOptions=null,e.markerOptions=null,e.markerSelectedOptions=null,e.markerUnselectedOptions=null,e.errorXOptions=null,e.errorYOptions=null,e.textOptions=null,e.textSelectedOptions=null,e.textUnselectedOptions=null,e.selectBatch=null,e.unselectBatch=null,M._scene=null}),e.dirty||g.extendFlat(e,t),e}}}),WU=Ye({"src/traces/scattergl/calc.js"(X,H){"use strict";var g=dT(),x=ta(),A=Xc(),M=Yd().findExtremes,e=tv(),t=Bd(),r=t.calcMarkerSize,o=t.calcAxisExpansion,a=t.setFirstScatter,i=Fd(),n=m0(),s=z5(),c=ks().BADNUM,h=mg().TOO_MANY_POINTS;H.exports=function(l,_){var w=l._fullLayout,S=_._xA=A.getFromId(l,_.xaxis,"x"),E=_._yA=A.getFromId(l,_.yaxis,"y"),m=w._plots[_.xaxis+_.yaxis],b=_._length,d=b>=h,u=b*2,y={},f,P=S.makeCalcdata(_,"x"),L=E.makeCalcdata(_,"y"),z=e(_,S,"x",P),F=e(_,E,"y",L),B=z.vals,O=F.vals;_._x=B,_._y=O,_.xperiodalignment&&(_._origX=P,_._xStarts=z.starts,_._xEnds=z.ends),_.yperiodalignment&&(_._origY=L,_._yStarts=F.starts,_._yEnds=F.ends);var I=new Array(u),N=new Array(b);for(f=0;f<b;f++)I[f*2]=B[f]===c?NaN:B[f],I[f*2+1]=O[f]===c?NaN:O[f],N[f]=f;if(S.type==="log")for(f=0;f<u;f+=2)I[f]=S.c2l(I[f]);if(E.type==="log")for(f=1;f<u;f+=2)I[f]=E.c2l(I[f]);d&&S.type!=="log"&&E.type!=="log"?y.tree=g(I):y.ids=N,i(l,_);var U=p(l,m,_,I,B,O),W=s(l,m);a(w,_);var Q;return d?U.marker&&(Q=U.marker.sizeAvg||Math.max(U.marker.size,3)):Q=r(_,b),o(l,_,S,E,B,O,Q),U.errorX&&v(_,S,U.errorX),U.errorY&&v(_,E,U.errorY),U.fill&&!W.fill2d&&(W.fill2d=!0),U.marker&&!W.scatter2d&&(W.scatter2d=!0),U.line&&!W.line2d&&(W.line2d=!0),(U.errorX||U.errorY)&&!W.error2d&&(W.error2d=!0),U.text&&!W.glText&&(W.glText=!0),U.marker&&(U.marker.snap=b),W.lineOptions.push(U.line),W.errorXOptions.push(U.errorX),W.errorYOptions.push(U.errorY),W.fillOptions.push(U.fill),W.markerOptions.push(U.marker),W.markerSelectedOptions.push(U.markerSel),W.markerUnselectedOptions.push(U.markerUnsel),W.textOptions.push(U.text),W.textSelectedOptions.push(U.textSel),W.textUnselectedOptions.push(U.textUnsel),W.selectBatch.push([]),W.unselectBatch.push([]),y._scene=W,y.index=W.count,y.x=B,y.y=O,y.positions=I,W.count++,[{x:!1,y:!1,t:y,trace:_}]};function v(T,l,_){var w=T._extremes[l._id],S=M(l,_._bnds,{padded:!0});w.min=w.min.concat(S.min),w.max=w.max.concat(S.max)}function p(T,l,_,w,S,E){var m=n.style(T,_);if(m.marker&&(m.marker.positions=w),m.line&&w.length>1&&x.extendFlat(m.line,n.linePositions(T,_,w)),m.errorX||m.errorY){var b=n.errorBarPositions(T,_,w,S,E);m.errorX&&x.extendFlat(m.errorX,b.x),m.errorY&&x.extendFlat(m.errorY,b.y)}return m.text&&(x.extendFlat(m.text,{positions:w},n.textPosition(T,_,m.text,m.marker)),x.extendFlat(m.textSel,{positions:w},n.textPosition(T,_,m.text,m.markerSel)),x.extendFlat(m.textUnsel,{positions:w},n.textPosition(T,_,m.text,m.markerUnsel))),m}}}),F5=Ye({"src/traces/scattergl/edit_style.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Xm().DESELECTDIM;function M(e){var t=e[0],r=t.trace,o=t.t,a=o._scene,i=o.index,n=a.selectBatch[i],s=a.unselectBatch[i],c=a.textOptions[i],h=a.textSelectedOptions[i]||{},v=a.textUnselectedOptions[i]||{},p=g.extendFlat({},c),T,l;if(n.length||s.length){var _=h.color,w=v.color,S=c.color,E=g.isArrayOrTypedArray(S);for(p.color=new Array(r._length),T=0;T<n.length;T++)l=n[T],p.color[l]=_||(E?S[l]:S);for(T=0;T<s.length;T++){l=s[T];var m=E?S[l]:S;p.color[l]=w||(_?m:x.addOpacity(m,A))}}a.glText[i].update(p)}H.exports={styleTextSelection:M}}}),O5=Ye({"src/traces/scattergl/select.js"(X,H){"use strict";var g=uu(),x=F5().styleTextSelection;H.exports=function(M,e){var t=M.cd,r=M.xaxis,o=M.yaxis,a=[],i=t[0].trace,n=t[0].t,s=i._length,c=n.x,h=n.y,v=n._scene,p=n.index;if(!v)return a;var T=g.hasText(i),l=g.hasMarkers(i),_=!l&&!T;if(i.visible!==!0||_)return a;var w=[],S=[];if(e!==!1&&!e.degenerate)for(var E=0;E<s;E++)e.contains([n.xpx[E],n.ypx[E]],!1,E,M)?(w.push(E),a.push({pointNumber:E,x:r.c2d(c[E]),y:o.c2d(h[E])})):S.push(E);if(l){var m=v.scatter2d;if(!w.length&&!S.length){var b=new Array(v.count);b[p]=v.markerOptions[p],m.update.apply(m,b)}else if(!v.selectBatch[p].length&&!v.unselectBatch[p].length){var d=new Array(v.count);d[p]=v.markerUnselectedOptions[p],m.update.apply(m,d)}}return v.selectBatch[p]=w,v.unselectBatch[p]=S,T&&x(t),a}}}),ZU=Ye({"src/traces/scattergl/base_index.js"(X,H){"use strict";var g=hT();H.exports={moduleType:"trace",name:"scattergl",basePlotModule:Pf(),categories:["gl","regl","cartesian","symbols","errorBarsOK","showLegend","scatter-like"],attributes:yx(),supplyDefaults:IU(),crossTraceDefaults:RS(),colorbar:cp(),formatLabels:RU(),calc:WU(),hoverPoints:g.hoverPoints,selectPoints:O5(),meta:{}}}}),XU=Ye({"node_modules/color-id/index.js"(X,H){"use strict";var g=dx();H.exports=x,H.exports.to=x,H.exports.from=A;function x(M,e){e==null&&(e=!0);var t=M[0],r=M[1],o=M[2],a=M[3];a==null&&(a=e?1:255),e&&(t*=255,r*=255,o*=255,a*=255),t=g(t,0,255)&255,r=g(r,0,255)&255,o=g(o,0,255)&255,a=g(a,0,255)&255;var i=t*16777216+(r<<16)+(o<<8)+a;return i}function A(M,e){M=+M;var t=M>>>24,r=(M&16711680)>>>16,o=(M&65280)>>>8,a=M&255;return e===!1?[t,r,o,a]:[t/255,r/255,o/255,a/255]}}}),Wf=Ye({"node_modules/object-assign/index.js"(X,H){"use strict";var g=Object.getOwnPropertySymbols,x=Object.prototype.hasOwnProperty,A=Object.prototype.propertyIsEnumerable;function M(t){if(t==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function e(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de",Object.getOwnPropertyNames(t)[0]==="5")return!1;for(var r={},o=0;o<10;o++)r["_"+String.fromCharCode(o)]=o;var a=Object.getOwnPropertyNames(r).map(function(n){return r[n]});if(a.join("")!=="0123456789")return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(n){i[n]=n}),Object.keys(Object.assign({},i)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}H.exports=e()?Object.assign:function(t,r){for(var o,a=M(t),i,n=1;n<arguments.length;n++){o=Object(arguments[n]);for(var s in o)x.call(o,s)&&(a[s]=o[s]);if(g){i=g(o);for(var c=0;c<i.length;c++)A.call(o,i[c])&&(a[i[c]]=o[i[c]])}}return a}}}),YU=Ye({"node_modules/glslify/browser.js"(X,H){H.exports=function(g){typeof g=="string"&&(g=[g]);for(var x=[].slice.call(arguments,1),A=[],M=0;M<g.length-1;M++)A.push(g[M],x[M]||"");return A.push(g[M]),A.join("")}}}),B5=Ye({"node_modules/update-diff/index.js"(X,H){"use strict";H.exports=function(x,A,M){Array.isArray(M)||(M=[].slice.call(arguments,2));for(var e=0,t=M.length;e<t;e++){var r=M[e];for(var o in r)if(!(A[o]!==void 0&&!Array.isArray(A[o])&&x[o]===A[o])&&o in A){var a;if(r[o]===!0)a=A[o];else{if(r[o]===!1)continue;if(typeof r[o]=="function"&&(a=r[o](A[o],x,A),a===void 0))continue}x[o]=a}}return x}}}),KU=Ye({"node_modules/is-iexplorer/index.js"(X,H){"use strict";H.exports=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion))}}),vT=Ye({"node_modules/to-float32/index.js"(X,H){"use strict";H.exports=A,H.exports.float32=H.exports.float=A,H.exports.fract32=H.exports.fract=x;var g=new Float32Array(1);function x(M,e){if(M.length){if(M instanceof Float32Array)return new Float32Array(M.length);e instanceof Float32Array||(e=A(M));for(var t=0,r=e.length;t<r;t++)e[t]=M[t]-e[t];return e}return A(M-A(M))}function A(M){return M.length?M instanceof Float32Array?M:new Float32Array(M):(g[0]=M,g[0])}}}),N5=Ye({"node_modules/regl-scatter2d/bundle.js"(X,H){"use strict";function g(y,f){var P=y==null?null:typeof Symbol<"u"&&y[Symbol.iterator]||y["@@iterator"];if(P!=null){var L,z,F,B,O=[],I=!0,N=!1;try{if(F=(P=P.call(y)).next,f===0){if(Object(P)!==P)return;I=!1}else for(;!(I=(L=F.call(P)).done)&&(O.push(L.value),O.length!==f);I=!0);}catch(U){N=!0,z=U}finally{try{if(!I&&P.return!=null&&(B=P.return(),Object(B)!==B))return}finally{if(N)throw z}}return O}}function x(y,f){return e(y)||g(y,f)||r(y,f)||i()}function A(y){return M(y)||t(y)||r(y)||a()}function M(y){if(Array.isArray(y))return o(y)}function e(y){if(Array.isArray(y))return y}function t(y){if(typeof Symbol<"u"&&y[Symbol.iterator]!=null||y["@@iterator"]!=null)return Array.from(y)}function r(y,f){if(y){if(typeof y=="string")return o(y,f);var P=Object.prototype.toString.call(y).slice(8,-1);if(P==="Object"&&y.constructor&&(P=y.constructor.name),P==="Map"||P==="Set")return Array.from(y);if(P==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(P))return o(y,f)}}function o(y,f){(f==null||f>y.length)&&(f=y.length);for(var P=0,L=new Array(f);P<f;P++)L[P]=y[P];return L}function a(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function i(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
+In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var n=hg(),s=d0(),c=XU(),h=dT(),v=Wf(),p=YU(),T=Ev(),l=B5(),_=v0(),w=KU(),S=vT(),E=E1(),m=b;function b(y,f){var P=this;if(!(this instanceof b))return new b(y,f);typeof y=="function"?(f||(f={}),f.regl=y):(f=y,y=null),f&&f.length&&(f.positions=f),y=f.regl;var L=y._gl,z,F=[],B={},O=[],I=[null],N=[null],U=255,W=100;this.tooManyColors=w,z=y.texture({data:new Uint8Array(U*4),width:U,height:1,type:"uint8",format:"rgba",wrapS:"clamp",wrapT:"clamp",mag:"nearest",min:"nearest"}),v(this,{regl:y,gl:L,groups:O,markerCache:N,markerTextures:I,palette:F,paletteIds:B,paletteTexture:z,maxColors:U,maxSize:W,canvas:L.canvas}),this.update(f);var Q={uniforms:{constPointSize:!!f.constPointSize,opacity:y.prop("opacity"),paletteSize:function(G,$){return[P.tooManyColors?0:U,z.height]},pixelRatio:y.context("pixelRatio"),scale:y.prop("scale"),scaleFract:y.prop("scaleFract"),translate:y.prop("translate"),translateFract:y.prop("translateFract"),markerTexture:y.prop("markerTexture"),paletteTexture:z},attributes:{x:function(G,$){return $.xAttr||{buffer:$.positionBuffer,stride:8,offset:0}},y:function(G,$){return $.yAttr||{buffer:$.positionBuffer,stride:8,offset:4}},xFract:function(G,$){return $.xAttr?{constant:[0,0]}:{buffer:$.positionFractBuffer,stride:8,offset:0}},yFract:function(G,$){return $.yAttr?{constant:[0,0]}:{buffer:$.positionFractBuffer,stride:8,offset:4}},size:function(G,$){return $.size.length?{buffer:$.sizeBuffer,stride:2,offset:0}:{constant:[Math.round($.size*255/P.maxSize)]}},borderSize:function(G,$){return $.borderSize.length?{buffer:$.sizeBuffer,stride:2,offset:1}:{constant:[Math.round($.borderSize*255/P.maxSize)]}},colorId:function(G,$){return $.color.length?{buffer:$.colorBuffer,stride:P.tooManyColors?8:4,offset:0}:{constant:P.tooManyColors?F.slice($.color*4,$.color*4+4):[$.color]}},borderColorId:function(G,$){return $.borderColor.length?{buffer:$.colorBuffer,stride:P.tooManyColors?8:4,offset:P.tooManyColors?4:2}:{constant:P.tooManyColors?F.slice($.borderColor*4,$.borderColor*4+4):[$.borderColor]}},isActive:function(G,$){return $.activation===!0?{constant:[1]}:$.activation?$.activation:{constant:[0]}}},blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},scissor:{enable:!0,box:y.prop("viewport")},viewport:y.prop("viewport"),stencil:{enable:!1},depth:{enable:!1},elements:y.prop("elements"),count:y.prop("count"),offset:y.prop("offset"),primitive:"points"},ue=v({},Q);ue.frag=p([`precision highp float;
+#define GLSLIFY 1
+
+uniform float opacity;
+uniform sampler2D markerTexture;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragWidth, fragBorderColorLevel, fragColorLevel;
+
+float smoothStep(float x, float y) {
+ return 1.0 / (1.0 + exp(50.0*(x - y)));
+}
+
+void main() {
+ float dist = texture2D(markerTexture, gl_PointCoord).r, delta = fragWidth;
+
+ // max-distance alpha
+ if (dist < 0.003) discard;
+
+ // null-border case
+ if (fragBorderColorLevel == fragColorLevel || fragBorderColor.a == 0.) {
+ float colorAmt = smoothstep(.5 - delta, .5 + delta, dist);
+ gl_FragColor = vec4(fragColor.rgb, colorAmt * fragColor.a * opacity);
+ }
+ else {
+ float borderColorAmt = smoothstep(fragBorderColorLevel - delta, fragBorderColorLevel + delta, dist);
+ float colorAmt = smoothstep(fragColorLevel - delta, fragColorLevel + delta, dist);
+
+ vec4 color = fragBorderColor;
+ color.a *= borderColorAmt;
+ color = mix(color, fragColor, colorAmt);
+ color.a *= opacity;
+
+ gl_FragColor = color;
+ }
+
+}
+`]),ue.vert=p([`precision highp float;
+#define GLSLIFY 1
+
+attribute float x, y, xFract, yFract;
+attribute float size, borderSize;
+attribute vec4 colorId, borderColorId;
+attribute float isActive;
+
+// \`invariant\` effectively turns off optimizations for the position.
+// We need this because -fast-math on M1 Macs is re-ordering
+// floating point operations in a way that causes floating point
+// precision limits to put points in the wrong locations.
+invariant gl_Position;
+
+uniform bool constPointSize;
+uniform float pixelRatio;
+uniform vec2 scale, scaleFract, translate, translateFract, paletteSize;
+uniform sampler2D paletteTexture;
+
+const float maxSize = 100.;
+const float borderLevel = .5;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragPointSize, fragBorderRadius, fragWidth, fragBorderColorLevel, fragColorLevel;
+
+float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
+
+bool isDirect = (paletteSize.x < 1.);
+
+vec4 getColor(vec4 id) {
+ return isDirect ? id / 255. : texture2D(paletteTexture,
+ vec2(
+ (id.x + .5) / paletteSize.x,
+ (id.y + .5) / paletteSize.y
+ )
+ );
+}
+
+void main() {
+ // ignore inactive points
+ if (isActive == 0.) return;
+
+ vec2 position = vec2(x, y);
+ vec2 positionFract = vec2(xFract, yFract);
+
+ vec4 color = getColor(colorId);
+ vec4 borderColor = getColor(borderColorId);
+
+ float size = size * maxSize / 255.;
+ float borderSize = borderSize * maxSize / 255.;
+
+ gl_PointSize = 2. * size * pointSizeScale;
+ fragPointSize = size * pixelRatio;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ gl_Position = vec4(pos * 2. - 1., 0., 1.);
+
+ fragColor = color;
+ fragBorderColor = borderColor;
+ fragWidth = 1. / gl_PointSize;
+
+ fragBorderColorLevel = clamp(borderLevel - borderLevel * borderSize / size, 0., 1.);
+ fragColorLevel = clamp(borderLevel + (1. - borderLevel) * borderSize / size, 0., 1.);
+}
+`]),this.drawMarker=y(ue);var se=v({},Q);se.frag=p([`precision highp float;
+#define GLSLIFY 1
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragBorderRadius, fragWidth;
+
+uniform float opacity;
+
+float smoothStep(float edge0, float edge1, float x) {
+ float t;
+ t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
+ return t * t * (3.0 - 2.0 * t);
+}
+
+void main() {
+ float radius, alpha = 1.0, delta = fragWidth;
+
+ radius = length(2.0 * gl_PointCoord.xy - 1.0);
+
+ if (radius > 1.0 + delta) {
+ discard;
+ }
+
+ alpha -= smoothstep(1.0 - delta, 1.0 + delta, radius);
+
+ float borderRadius = fragBorderRadius;
+ float ratio = smoothstep(borderRadius - delta, borderRadius + delta, radius);
+ vec4 color = mix(fragColor, fragBorderColor, ratio);
+ color.a *= alpha * opacity;
+ gl_FragColor = color;
+}
+`]),se.vert=p([`precision highp float;
+#define GLSLIFY 1
+
+attribute float x, y, xFract, yFract;
+attribute float size, borderSize;
+attribute vec4 colorId, borderColorId;
+attribute float isActive;
+
+// \`invariant\` effectively turns off optimizations for the position.
+// We need this because -fast-math on M1 Macs is re-ordering
+// floating point operations in a way that causes floating point
+// precision limits to put points in the wrong locations.
+invariant gl_Position;
+
+uniform bool constPointSize;
+uniform float pixelRatio;
+uniform vec2 paletteSize, scale, scaleFract, translate, translateFract;
+uniform sampler2D paletteTexture;
+
+const float maxSize = 100.;
+
+varying vec4 fragColor, fragBorderColor;
+varying float fragBorderRadius, fragWidth;
+
+float pointSizeScale = (constPointSize) ? 2. : pixelRatio;
+
+bool isDirect = (paletteSize.x < 1.);
+
+vec4 getColor(vec4 id) {
+ return isDirect ? id / 255. : texture2D(paletteTexture,
+ vec2(
+ (id.x + .5) / paletteSize.x,
+ (id.y + .5) / paletteSize.y
+ )
+ );
+}
+
+void main() {
+ // ignore inactive points
+ if (isActive == 0.) return;
+
+ vec2 position = vec2(x, y);
+ vec2 positionFract = vec2(xFract, yFract);
+
+ vec4 color = getColor(colorId);
+ vec4 borderColor = getColor(borderColorId);
+
+ float size = size * maxSize / 255.;
+ float borderSize = borderSize * maxSize / 255.;
+
+ gl_PointSize = (size + borderSize) * pointSizeScale;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ gl_Position = vec4(pos * 2. - 1., 0., 1.);
+
+ fragBorderRadius = 1. - 2. * borderSize / (size + borderSize);
+ fragColor = color;
+ fragBorderColor = borderColor.a == 0. || borderSize == 0. ? vec4(color.rgb, 0.) : borderColor;
+ fragWidth = 1. / gl_PointSize;
+}
+`]),w&&(se.frag=se.frag.replace("smoothstep","smoothStep"),ue.frag=ue.frag.replace("smoothstep","smoothStep")),this.drawCircle=y(se)}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 y=this,f=arguments.length,P=new Array(f),L=0;L<f;L++)P[L]=arguments[L];var z=this.groups;if(P.length===1&&Array.isArray(P[0])&&(P[0][0]===null||Array.isArray(P[0][0]))&&(P=P[0]),this.regl._refresh(),P.length)for(var F=0;F<P.length;F++)this.drawItem(F,P[F]);else z.forEach(function(B,O){y.drawItem(O)});return this},b.prototype.drawItem=function(y,f){var P=this.groups,L=P[y];if(typeof f=="number"&&(y=f,L=P[f],f=null),!!(L&&L.count&&L.opacity)){L.activation[0]&&this.drawCircle(this.getMarkerDrawOptions(0,L,f));for(var z=[],F=1;F<L.activation.length;F++)!L.activation[F]||L.activation[F]!==!0&&!L.activation[F].data.length||z.push.apply(z,A(this.getMarkerDrawOptions(F,L,f)));z.length&&this.drawMarker(z)}},b.prototype.getMarkerDrawOptions=function(y,f,P){var L=f.range,z=f.tree,F=f.viewport,B=f.activation,O=f.selectionBuffer,I=f.count,N=this.regl;if(!z)return P?[v({},f,{markerTexture:this.markerTextures[y],activation:B[y],count:P.length,elements:P,offset:0})]:[v({},f,{markerTexture:this.markerTextures[y],activation:B[y],offset:0})];var U=[],W=z.range(L,{lod:!0,px:[(L[2]-L[0])/F.width,(L[3]-L[1])/F.height]});if(P){for(var Q=B[y],ue=Q.data,se=new Uint8Array(I),he=0;he<P.length;he++){var G=P[he];se[G]=ue?ue[G]:1}O.subdata(se)}for(var $=W.length;$--;){var J=x(W[$],2),Z=J[0],re=J[1];U.push(v({},f,{markerTexture:this.markerTextures[y],activation:P?O:B[y],offset:Z,count:re-Z}))}return U},b.prototype.update=function(){for(var y=this,f=arguments.length,P=new Array(f),L=0;L<f;L++)P[L]=arguments[L];if(P.length){P.length===1&&Array.isArray(P[0])&&(P=P[0]);var z=this.groups,F=this.gl,B=this.regl,O=this.maxSize,I=this.maxColors,N=this.palette;this.groups=z=P.map(function(U,W){var Q=z[W];if(U===void 0)return Q;U===null?U={positions:null}:typeof U=="function"?U={ondraw:U}:typeof U[0]=="number"&&(U={positions:U}),U=T(U,{positions:"positions data points",snap:"snap cluster lod tree",size:"sizes size radius",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",color:"colors color fill fill-color fillColor",borderColor:"borderColors borderColor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range dataBox databox",viewport:"viewport viewPort viewBox viewbox",opacity:"opacity alpha transparency",bounds:"bound bounds boundaries limits",tooManyColors:"tooManyColors palette paletteMode optimizePalette enablePalette"}),U.positions===null&&(U.positions=[]),U.tooManyColors!=null&&(y.tooManyColors=U.tooManyColors),Q||(z[W]=Q={id:W,scale:null,translate:null,scaleFract:null,translateFract:null,activation:[],selectionBuffer:B.buffer({data:new Uint8Array(0),usage:"stream",type:"uint8"}),sizeBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),colorBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"uint8"}),positionBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"}),positionFractBuffer:B.buffer({data:new Uint8Array(0),usage:"dynamic",type:"float"})},U=v({},b.defaults,U)),U.positions&&!("marker"in U)&&(U.marker=Q.marker,delete Q.marker),U.marker&&!("positions"in U)&&(U.positions=Q.positions,delete Q.positions);var ue=0,se=0;if(l(Q,U,[{snap:!0,size:function(et,lt){return et==null&&(et=b.defaults.size),ue+=et&&et.length?1:0,et},borderSize:function(et,lt){return et==null&&(et=b.defaults.borderSize),ue+=et&&et.length?1:0,et},opacity:parseFloat,color:function(et,lt){return et==null&&(et=b.defaults.color),et=y.updateColor(et),se++,et},borderColor:function(et,lt){return et==null&&(et=b.defaults.borderColor),et=y.updateColor(et),se++,et},bounds:function(et,lt,Me){return"range"in Me||(Me.range=null),et},positions:function(et,lt,Me){var ge=lt.snap,ce=lt.positionBuffer,ze=lt.positionFractBuffer,tt=lt.selectionBuffer;if(et.x||et.y)return et.x.length?lt.xAttr={buffer:B.buffer(et.x),offset:0,stride:4,count:et.x.length}:lt.xAttr={buffer:et.x.buffer,offset:et.x.offset*4||0,stride:(et.x.stride||1)*4,count:et.x.count},et.y.length?lt.yAttr={buffer:B.buffer(et.y),offset:0,stride:4,count:et.y.length}:lt.yAttr={buffer:et.y.buffer,offset:et.y.offset*4||0,stride:(et.y.stride||1)*4,count:et.y.count},lt.count=Math.max(lt.xAttr.count,lt.yAttr.count),et;et=_(et,"float64");var nt=lt.count=Math.floor(et.length/2),Qe=lt.bounds=nt?s(et,2):null;if(!Me.range&&!lt.range&&(delete lt.range,Me.range=Qe),!Me.marker&&!lt.marker&&(delete lt.marker,Me.marker=null),ge&&(ge===!0||nt>ge)?lt.tree=h(et,{bounds:Qe}):ge&&ge.length&&(lt.tree=ge),lt.tree){var Ct={primitive:"points",usage:"static",data:lt.tree,type:"uint32"};lt.elements?lt.elements(Ct):lt.elements=B.elements(Ct)}var St=S.float32(et);ce({data:St,usage:"dynamic"});var Ot=S.fract32(et,St);return ze({data:Ot,usage:"dynamic"}),tt({data:new Uint8Array(nt),type:"uint8",usage:"stream"}),et}},{marker:function(et,lt,Me){var ge=lt.activation;if(ge.forEach(function(Ot){return Ot&&Ot.destroy&&Ot.destroy()}),ge.length=0,!et||typeof et[0]=="number"){var ce=y.addMarker(et);ge[ce]=!0}else{for(var ze=[],tt=0,nt=Math.min(et.length,lt.count);tt<nt;tt++){var Qe=y.addMarker(et[tt]);ze[Qe]||(ze[Qe]=new Uint8Array(lt.count)),ze[Qe][tt]=1}for(var Ct=0;Ct<ze.length;Ct++)if(ze[Ct]){var St={data:ze[Ct],type:"uint8",usage:"static"};ge[Ct]?ge[Ct](St):ge[Ct]=B.buffer(St),ge[Ct].data=ze[Ct]}}return et},range:function(et,lt,Me){var ge=lt.bounds;if(ge)return et||(et=ge),lt.scale=[1/(et[2]-et[0]),1/(et[3]-et[1])],lt.translate=[-et[0],-et[1]],lt.scaleFract=S.fract(lt.scale),lt.translateFract=S.fract(lt.translate),et},viewport:function(et){var lt=E(et||[F.drawingBufferWidth,F.drawingBufferHeight]);return lt}}]),ue){var he=Q,G=he.count,$=he.size,J=he.borderSize,Z=he.sizeBuffer,re=new Uint8Array(G*2);if($.length||J.length)for(var ne=0;ne<G;ne++)re[ne*2]=Math.round(($[ne]==null?$:$[ne])*255/O),re[ne*2+1]=Math.round((J[ne]==null?J:J[ne])*255/O);Z({data:re,usage:"dynamic"})}if(se){var j=Q,ee=j.count,ie=j.color,fe=j.borderColor,be=j.colorBuffer,Ae;if(y.tooManyColors){if(ie.length||fe.length){Ae=new Uint8Array(ee*8);for(var Be=0;Be<ee;Be++){var Ie=ie[Be];Ae[Be*8]=N[Ie*4],Ae[Be*8+1]=N[Ie*4+1],Ae[Be*8+2]=N[Ie*4+2],Ae[Be*8+3]=N[Ie*4+3];var Ze=fe[Be];Ae[Be*8+4]=N[Ze*4],Ae[Be*8+5]=N[Ze*4+1],Ae[Be*8+6]=N[Ze*4+2],Ae[Be*8+7]=N[Ze*4+3]}}}else if(ie.length||fe.length){Ae=new Uint8Array(ee*4+2);for(var at=0;at<ee;at++)ie[at]!=null&&(Ae[at*4]=ie[at]%I,Ae[at*4+1]=Math.floor(ie[at]/I)),fe[at]!=null&&(Ae[at*4+2]=fe[at]%I,Ae[at*4+3]=Math.floor(fe[at]/I))}be({data:Ae||new Uint8Array(0),type:"uint8",usage:"dynamic"})}return Q})}},b.prototype.addMarker=function(y){var f=this.markerTextures,P=this.regl,L=this.markerCache,z=y==null?0:L.indexOf(y);if(z>=0)return z;var F;if(y instanceof Uint8Array||y instanceof Uint8ClampedArray)F=y;else{F=new Uint8Array(y.length);for(var B=0,O=y.length;B<O;B++)F[B]=y[B]*255}var I=Math.floor(Math.sqrt(F.length));return z=f.length,L.push(y),f.push(P.texture({channels:1,data:F,radius:I,mag:"linear",min:"linear"})),z},b.prototype.updateColor=function(y){var f=this.paletteIds,P=this.palette,L=this.maxColors;Array.isArray(y)||(y=[y]);var z=[];if(typeof y[0]=="number"){var F=[];if(Array.isArray(y))for(var B=0;B<y.length;B+=4)F.push(y.slice(B,B+4));else for(var O=0;O<y.length;O+=4)F.push(y.subarray(O,O+4));y=F}for(var I=0;I<y.length;I++){var N=y[I];N=n(N,"uint8");var U=c(N,!1);if(f[U]==null){var W=P.length;f[U]=Math.floor(W/4),P[W]=N[0],P[W+1]=N[1],P[W+2]=N[2],P[W+3]=N[3]}z[I]=f[U]}return!this.tooManyColors&&P.length>L*4&&(this.tooManyColors=!0),this.updatePalette(P),z.length===1?z[0]:z},b.prototype.updatePalette=function(y){if(!this.tooManyColors){var f=this.maxColors,P=this.paletteTexture,L=Math.ceil(y.length*.25/f);if(L>1){y=y.slice();for(var z=y.length*.25%f;z<L*f;z++)y.push(0,0,0,0)}P.height<L&&P.resize(f,L),P.subimage({width:Math.min(y.length*.25,f),height:L,data:y},0,0)}},b.prototype.destroy=function(){return this.groups.forEach(function(y){y.sizeBuffer.destroy(),y.positionBuffer.destroy(),y.positionFractBuffer.destroy(),y.colorBuffer.destroy(),y.activation.forEach(function(f){return f&&f.destroy&&f.destroy()}),y.selectionBuffer.destroy(),y.elements&&y.elements.destroy()}),this.groups.length=0,this.paletteTexture.destroy(),this.markerTextures.forEach(function(y){return y&&y.destroy&&y.destroy()}),this};var d=Wf(),u=function(f,P){var L=new m(f,P),z=L.render.bind(L);return d(z,{render:z,update:L.update.bind(L),draw:L.draw.bind(L),destroy:L.destroy.bind(L),regl:L.regl,gl:L.gl,canvas:L.gl.canvas,groups:L.groups,markers:L.markerCache,palette:L.palette}),z};H.exports=u}}),JU=Ye({"node_modules/earcut/src/earcut.js"(X,H){"use strict";H.exports=g,H.exports.default=g;function g(B,O,I){I=I||2;var N=O&&O.length,U=N?O[0]*I:B.length,W=x(B,0,U,I,!0),Q=[];if(!W||W.next===W.prev)return Q;var ue,se,he,G,$,J,Z;if(N&&(W=a(B,O,W,I)),B.length>80*I){ue=he=B[0],se=G=B[1];for(var re=I;re<U;re+=I)$=B[re],J=B[re+1],$<ue&&(ue=$),J<se&&(se=J),$>he&&(he=$),J>G&&(G=J);Z=Math.max(he-ue,G-se),Z=Z!==0?32767/Z:0}return M(W,Q,I,ue,se,Z,0),Q}function x(B,O,I,N,U){var W,Q;if(U===F(B,O,I,N)>0)for(W=O;W<I;W+=N)Q=P(W,B[W],B[W+1],Q);else for(W=I-N;W>=O;W-=N)Q=P(W,B[W],B[W+1],Q);return Q&&S(Q,Q.next)&&(L(Q),Q=Q.next),Q}function A(B,O){if(!B)return B;O||(O=B);var I=B,N;do if(N=!1,!I.steiner&&(S(I,I.next)||w(I.prev,I,I.next)===0)){if(L(I),I=O=I.prev,I===I.next)break;N=!0}else I=I.next;while(N||I!==O);return O}function M(B,O,I,N,U,W,Q){if(B){!Q&&W&&h(B,N,U,W);for(var ue=B,se,he;B.prev!==B.next;){if(se=B.prev,he=B.next,W?t(B,N,U,W):e(B)){O.push(se.i/I|0),O.push(B.i/I|0),O.push(he.i/I|0),L(B),B=he.next,ue=he.next;continue}if(B=he,B===ue){Q?Q===1?(B=r(A(B),O,I),M(B,O,I,N,U,W,2)):Q===2&&o(B,O,I,N,U,W):M(A(B),O,I,N,U,W,1);break}}}}function e(B){var O=B.prev,I=B,N=B.next;if(w(O,I,N)>=0)return!1;for(var U=O.x,W=I.x,Q=N.x,ue=O.y,se=I.y,he=N.y,G=U<W?U<Q?U:Q:W<Q?W:Q,$=ue<se?ue<he?ue:he:se<he?se:he,J=U>W?U>Q?U:Q:W>Q?W:Q,Z=ue>se?ue>he?ue:he:se>he?se:he,re=N.next;re!==O;){if(re.x>=G&&re.x<=J&&re.y>=$&&re.y<=Z&&l(U,ue,W,se,Q,he,re.x,re.y)&&w(re.prev,re,re.next)>=0)return!1;re=re.next}return!0}function t(B,O,I,N){var U=B.prev,W=B,Q=B.next;if(w(U,W,Q)>=0)return!1;for(var ue=U.x,se=W.x,he=Q.x,G=U.y,$=W.y,J=Q.y,Z=ue<se?ue<he?ue:he:se<he?se:he,re=G<$?G<J?G:J:$<J?$:J,ne=ue>se?ue>he?ue:he:se>he?se:he,j=G>$?G>J?G:J:$>J?$:J,ee=p(Z,re,O,I,N),ie=p(ne,j,O,I,N),fe=B.prevZ,be=B.nextZ;fe&&fe.z>=ee&&be&&be.z<=ie;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0||(fe=fe.prevZ,be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0))return!1;be=be.nextZ}for(;fe&&fe.z>=ee;){if(fe.x>=Z&&fe.x<=ne&&fe.y>=re&&fe.y<=j&&fe!==U&&fe!==Q&&l(ue,G,se,$,he,J,fe.x,fe.y)&&w(fe.prev,fe,fe.next)>=0)return!1;fe=fe.prevZ}for(;be&&be.z<=ie;){if(be.x>=Z&&be.x<=ne&&be.y>=re&&be.y<=j&&be!==U&&be!==Q&&l(ue,G,se,$,he,J,be.x,be.y)&&w(be.prev,be,be.next)>=0)return!1;be=be.nextZ}return!0}function r(B,O,I){var N=B;do{var U=N.prev,W=N.next.next;!S(U,W)&&E(U,N,N.next,W)&&u(U,W)&&u(W,U)&&(O.push(U.i/I|0),O.push(N.i/I|0),O.push(W.i/I|0),L(N),L(N.next),N=B=W),N=N.next}while(N!==B);return A(N)}function o(B,O,I,N,U,W){var Q=B;do{for(var ue=Q.next.next;ue!==Q.prev;){if(Q.i!==ue.i&&_(Q,ue)){var se=f(Q,ue);Q=A(Q,Q.next),se=A(se,se.next),M(Q,O,I,N,U,W,0),M(se,O,I,N,U,W,0);return}ue=ue.next}Q=Q.next}while(Q!==B)}function a(B,O,I,N){var U=[],W,Q,ue,se,he;for(W=0,Q=O.length;W<Q;W++)ue=O[W]*N,se=W<Q-1?O[W+1]*N:B.length,he=x(B,ue,se,N,!1),he===he.next&&(he.steiner=!0),U.push(T(he));for(U.sort(i),W=0;W<U.length;W++)I=n(U[W],I);return I}function i(B,O){return B.x-O.x}function n(B,O){var I=s(B,O);if(!I)return O;var N=f(I,B);return A(N,N.next),A(I,I.next)}function s(B,O){var I=O,N=B.x,U=B.y,W=-1/0,Q;do{if(U<=I.y&&U>=I.next.y&&I.next.y!==I.y){var ue=I.x+(U-I.y)*(I.next.x-I.x)/(I.next.y-I.y);if(ue<=N&&ue>W&&(W=ue,Q=I.x<I.next.x?I:I.next,ue===N))return Q}I=I.next}while(I!==O);if(!Q)return null;var se=Q,he=Q.x,G=Q.y,$=1/0,J;I=Q;do N>=I.x&&I.x>=he&&N!==I.x&&l(U<G?N:W,U,he,G,U<G?W:N,U,I.x,I.y)&&(J=Math.abs(U-I.y)/(N-I.x),u(I,B)&&(J<$||J===$&&(I.x>Q.x||I.x===Q.x&&c(Q,I)))&&(Q=I,$=J)),I=I.next;while(I!==se);return Q}function c(B,O){return w(B.prev,B,O.prev)<0&&w(O.next,B,B.next)<0}function h(B,O,I,N){var U=B;do U.z===0&&(U.z=p(U.x,U.y,O,I,N)),U.prevZ=U.prev,U.nextZ=U.next,U=U.next;while(U!==B);U.prevZ.nextZ=null,U.prevZ=null,v(U)}function v(B){var O,I,N,U,W,Q,ue,se,he=1;do{for(I=B,B=null,W=null,Q=0;I;){for(Q++,N=I,ue=0,O=0;O<he&&(ue++,N=N.nextZ,!!N);O++);for(se=he;ue>0||se>0&&N;)ue!==0&&(se===0||!N||I.z<=N.z)?(U=I,I=I.nextZ,ue--):(U=N,N=N.nextZ,se--),W?W.nextZ=U:B=U,U.prevZ=W,W=U;I=N}W.nextZ=null,he*=2}while(Q>1);return B}function p(B,O,I,N,U){return B=(B-I)*U|0,O=(O-N)*U|0,B=(B|B<<8)&16711935,B=(B|B<<4)&252645135,B=(B|B<<2)&858993459,B=(B|B<<1)&1431655765,O=(O|O<<8)&16711935,O=(O|O<<4)&252645135,O=(O|O<<2)&858993459,O=(O|O<<1)&1431655765,B|O<<1}function T(B){var O=B,I=B;do(O.x<I.x||O.x===I.x&&O.y<I.y)&&(I=O),O=O.next;while(O!==B);return I}function l(B,O,I,N,U,W,Q,ue){return(U-Q)*(O-ue)>=(B-Q)*(W-ue)&&(B-Q)*(N-ue)>=(I-Q)*(O-ue)&&(I-Q)*(W-ue)>=(U-Q)*(N-ue)}function _(B,O){return B.next.i!==O.i&&B.prev.i!==O.i&&!d(B,O)&&(u(B,O)&&u(O,B)&&y(B,O)&&(w(B.prev,B,O.prev)||w(B,O.prev,O))||S(B,O)&&w(B.prev,B,B.next)>0&&w(O.prev,O,O.next)>0)}function w(B,O,I){return(O.y-B.y)*(I.x-O.x)-(O.x-B.x)*(I.y-O.y)}function S(B,O){return B.x===O.x&&B.y===O.y}function E(B,O,I,N){var U=b(w(B,O,I)),W=b(w(B,O,N)),Q=b(w(I,N,B)),ue=b(w(I,N,O));return!!(U!==W&&Q!==ue||U===0&&m(B,I,O)||W===0&&m(B,N,O)||Q===0&&m(I,B,N)||ue===0&&m(I,O,N))}function m(B,O,I){return O.x<=Math.max(B.x,I.x)&&O.x>=Math.min(B.x,I.x)&&O.y<=Math.max(B.y,I.y)&&O.y>=Math.min(B.y,I.y)}function b(B){return B>0?1:B<0?-1:0}function d(B,O){var I=B;do{if(I.i!==B.i&&I.next.i!==B.i&&I.i!==O.i&&I.next.i!==O.i&&E(I,I.next,B,O))return!0;I=I.next}while(I!==B);return!1}function u(B,O){return w(B.prev,B,B.next)<0?w(B,O,B.next)>=0&&w(B,B.prev,O)>=0:w(B,O,B.prev)<0||w(B,B.next,O)<0}function y(B,O){var I=B,N=!1,U=(B.x+O.x)/2,W=(B.y+O.y)/2;do I.y>W!=I.next.y>W&&I.next.y!==I.y&&U<(I.next.x-I.x)*(W-I.y)/(I.next.y-I.y)+I.x&&(N=!N),I=I.next;while(I!==B);return N}function f(B,O){var I=new z(B.i,B.x,B.y),N=new z(O.i,O.x,O.y),U=B.next,W=O.prev;return B.next=O,O.prev=B,I.next=U,U.prev=I,N.next=I,I.prev=N,W.next=N,N.prev=W,N}function P(B,O,I,N){var U=new z(B,O,I);return N?(U.next=N.next,U.prev=N,N.next.prev=U,N.next=U):(U.prev=U,U.next=U),U}function L(B){B.next.prev=B.prev,B.prev.next=B.next,B.prevZ&&(B.prevZ.nextZ=B.nextZ),B.nextZ&&(B.nextZ.prevZ=B.prevZ)}function z(B,O,I){this.i=B,this.x=O,this.y=I,this.prev=null,this.next=null,this.z=0,this.prevZ=null,this.nextZ=null,this.steiner=!1}g.deviation=function(B,O,I,N){var U=O&&O.length,W=U?O[0]*I:B.length,Q=Math.abs(F(B,0,W,I));if(U)for(var ue=0,se=O.length;ue<se;ue++){var he=O[ue]*I,G=ue<se-1?O[ue+1]*I:B.length;Q-=Math.abs(F(B,he,G,I))}var $=0;for(ue=0;ue<N.length;ue+=3){var J=N[ue]*I,Z=N[ue+1]*I,re=N[ue+2]*I;$+=Math.abs((B[J]-B[re])*(B[Z+1]-B[J+1])-(B[J]-B[Z])*(B[re+1]-B[J+1]))}return Q===0&&$===0?0:Math.abs(($-Q)/Q)};function F(B,O,I,N){for(var U=0,W=O,Q=I-N;W<I;W+=N)U+=(B[Q]-B[W])*(B[W+1]+B[Q+1]),Q=W;return U}g.flatten=function(B){for(var O=B[0][0].length,I={vertices:[],holes:[],dimensions:O},N=0,U=0;U<B.length;U++){for(var W=0;W<B[U].length;W++)for(var Q=0;Q<O;Q++)I.vertices.push(B[U][W][Q]);U>0&&(N+=B[U-1].length,I.holes.push(N))}return I}}}),$U=Ye({"node_modules/array-normalize/index.js"(X,H){"use strict";var g=d0();H.exports=x;function x(A,M,e){if(!A||A.length==null)throw Error("Argument should be an array");M==null&&(M=1),e==null&&(e=g(A,M));for(var t=0;t<M;t++){var r=e[M+t],o=e[t],a=t,i=A.length;if(r===1/0&&o===-1/0)for(a=t;a<i;a+=M)A[a]=A[a]===r?1:A[a]===o?0:.5;else if(r===1/0)for(a=t;a<i;a+=M)A[a]=A[a]===r?1:0;else if(o===-1/0)for(a=t;a<i;a+=M)A[a]=A[a]===o?0:1;else{var n=r-o;for(a=t;a<i;a+=M)isNaN(A[a])||(A[a]=n===0?.5:(A[a]-o)/n)}}return A}}}),QU=Ye({"node_modules/es6-weak-map/is-implemented.js"(X,H){"use strict";H.exports=function(){var g,x;if(typeof WeakMap!="function")return!1;try{g=new WeakMap([[x={},"one"],[{},"two"],[{},"three"]])}catch{return!1}return!(String(g)!=="[object WeakMap]"||typeof g.set!="function"||g.set({},1)!==g||typeof g.delete!="function"||typeof g.has!="function"||g.get(x)!=="one")}}}),ej=Ye({"node_modules/es5-ext/function/noop.js"(X,H){"use strict";H.exports=function(){}}}),gg=Ye({"node_modules/es5-ext/object/is-value.js"(X,H){"use strict";var g=ej()();H.exports=function(x){return x!==g&&x!==null}}}),U5=Ye({"node_modules/es5-ext/object/set-prototype-of/is-implemented.js"(X,H){"use strict";var g=Object.create,x=Object.getPrototypeOf,A={};H.exports=function(){var M=Object.setPrototypeOf,e=arguments[0]||g;return typeof M!="function"?!1:x(M(e(null),A))===A}}}),j5=Ye({"node_modules/es5-ext/object/is-object.js"(X,H){"use strict";var g=gg(),x={function:!0,object:!0};H.exports=function(A){return g(A)&&x[typeof A]||!1}}}),tm=Ye({"node_modules/es5-ext/object/valid-value.js"(X,H){"use strict";var g=gg();H.exports=function(x){if(!g(x))throw new TypeError("Cannot use null or undefined");return x}}}),tj=Ye({"node_modules/es5-ext/object/create.js"(X,H){"use strict";var g=Object.create,x;U5()()||(x=V5()),H.exports=function(){var A,M,e;return!x||x.level!==1?g:(A={},M={},e={configurable:!1,enumerable:!1,writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(t){if(t==="__proto__"){M[t]={configurable:!0,enumerable:!1,writable:!0,value:void 0};return}M[t]=e}),Object.defineProperties(A,M),Object.defineProperty(x,"nullPolyfill",{configurable:!1,enumerable:!1,writable:!1,value:A}),function(t,r){return g(t===null?A:t,r)})}()}}),V5=Ye({"node_modules/es5-ext/object/set-prototype-of/shim.js"(X,H){"use strict";var g=j5(),x=tm(),A=Object.prototype.isPrototypeOf,M=Object.defineProperty,e={configurable:!0,enumerable:!1,writable:!0,value:void 0},t;t=function(r,o){if(x(r),o===null||g(o))return r;throw new TypeError("Prototype must be null or an object")},H.exports=function(r){var o,a;return r?(r.level===2?r.set?(a=r.set,o=function(i,n){return a.call(t(i,n),n),i}):o=function(i,n){return t(i,n).__proto__=n,i}:o=function i(n,s){var c;return t(n,s),c=A.call(i.nullPolyfill,n),c&&delete i.nullPolyfill.__proto__,s===null&&(s=i.nullPolyfill),n.__proto__=s,c&&M(i.nullPolyfill,"__proto__",e),n},Object.defineProperty(o,"level",{configurable:!1,enumerable:!1,writable:!1,value:r.level})):null}(function(){var r=Object.create(null),o={},a,i=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__");if(i){try{a=i.set,a.call(r,o)}catch{}if(Object.getPrototypeOf(r)===o)return{set:a,level:2}}return r.__proto__=o,Object.getPrototypeOf(r)===o?{level:2}:(r={},r.__proto__=o,Object.getPrototypeOf(r)===o?{level:1}:!1)}()),tj()}}),mT=Ye({"node_modules/es5-ext/object/set-prototype-of/index.js"(X,H){"use strict";H.exports=U5()()?Object.setPrototypeOf:V5()}}),rj=Ye({"node_modules/es5-ext/object/valid-object.js"(X,H){"use strict";var g=j5();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not an Object");return x}}}),aj=Ye({"node_modules/es5-ext/string/random-uniq.js"(X,H){"use strict";var g=Object.create(null),x=Math.random;H.exports=function(){var A;do A=x().toString(36).slice(2);while(g[A]);return A}}}),g0=Ye({"node_modules/type/value/is.js"(X,H){"use strict";var g=void 0;H.exports=function(x){return x!==g&&x!==null}}}),gT=Ye({"node_modules/type/object/is.js"(X,H){"use strict";var g=g0(),x={object:!0,function:!0,undefined:!0};H.exports=function(A){return g(A)?hasOwnProperty.call(x,typeof A):!1}}}),ij=Ye({"node_modules/type/prototype/is.js"(X,H){"use strict";var g=gT();H.exports=function(x){if(!g(x))return!1;try{return x.constructor?x.constructor.prototype===x:!1}catch{return!1}}}}),nj=Ye({"node_modules/type/function/is.js"(X,H){"use strict";var g=ij();H.exports=function(x){if(typeof x!="function"||!hasOwnProperty.call(x,"length"))return!1;try{if(typeof x.length!="number"||typeof x.call!="function"||typeof x.apply!="function")return!1}catch{return!1}return!g(x)}}}),q5=Ye({"node_modules/type/plain-function/is.js"(X,H){"use strict";var g=nj(),x=/^\s*class[\s{/}]/,A=Function.prototype.toString;H.exports=function(M){return!(!g(M)||x.test(A.call(M)))}}}),oj=Ye({"node_modules/es5-ext/object/assign/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Object.assign,x;return typeof g!="function"?!1:(x={foo:"raz"},g(x,{bar:"dwa"},{trzy:"trzy"}),x.foo+x.bar+x.trzy==="razdwatrzy")}}}),sj=Ye({"node_modules/es5-ext/object/keys/is-implemented.js"(X,H){"use strict";H.exports=function(){try{return Object.keys("primitive"),!0}catch{return!1}}}}),lj=Ye({"node_modules/es5-ext/object/keys/shim.js"(X,H){"use strict";var g=gg(),x=Object.keys;H.exports=function(A){return x(g(A)?Object(A):A)}}}),uj=Ye({"node_modules/es5-ext/object/keys/index.js"(X,H){"use strict";H.exports=sj()()?Object.keys:lj()}}),cj=Ye({"node_modules/es5-ext/object/assign/shim.js"(X,H){"use strict";var g=uj(),x=tm(),A=Math.max;H.exports=function(M,e){var t,r,o=A(arguments.length,2),a;for(M=Object(x(M)),a=function(i){try{M[i]=e[i]}catch(n){t||(t=n)}},r=1;r<o;++r)e=arguments[r],g(e).forEach(a);if(t!==void 0)throw t;return M}}}),yT=Ye({"node_modules/es5-ext/object/assign/index.js"(X,H){"use strict";H.exports=oj()()?Object.assign:cj()}}),H5=Ye({"node_modules/es5-ext/object/normalize-options.js"(X,H){"use strict";var g=gg(),x=Array.prototype.forEach,A=Object.create,M=function(e,t){var r;for(r in e)t[r]=e[r]};H.exports=function(e){var t=A(null);return x.call(arguments,function(r){g(r)&&M(Object(r),t)}),t}}}),fj=Ye({"node_modules/es5-ext/string/#/contains/is-implemented.js"(X,H){"use strict";var g="razdwatrzy";H.exports=function(){return typeof g.contains!="function"?!1:g.contains("dwa")===!0&&g.contains("foo")===!1}}}),hj=Ye({"node_modules/es5-ext/string/#/contains/shim.js"(X,H){"use strict";var g=String.prototype.indexOf;H.exports=function(x){return g.call(this,x,arguments[1])>-1}}}),G5=Ye({"node_modules/es5-ext/string/#/contains/index.js"(X,H){"use strict";H.exports=fj()()?String.prototype.contains:hj()}}),rm=Ye({"node_modules/d/index.js"(X,H){"use strict";var g=g0(),x=q5(),A=yT(),M=H5(),e=G5(),t=H.exports=function(r,o){var a,i,n,s,c;return arguments.length<2||typeof r!="string"?(s=o,o=r,r=null):s=arguments[2],g(r)?(a=e.call(r,"c"),i=e.call(r,"e"),n=e.call(r,"w")):(a=n=!0,i=!1),c={value:o,configurable:a,enumerable:i,writable:n},s?A(M(s),c):c};t.gs=function(r,o,a){var i,n,s,c;return typeof r!="string"?(s=a,a=o,o=r,r=null):s=arguments[3],g(o)?x(o)?g(a)?x(a)||(s=a,a=void 0):a=void 0:(s=o,o=a=void 0):o=void 0,g(r)?(i=e.call(r,"c"),n=e.call(r,"e")):(i=!0,n=!1),c={get:o,set:a,configurable:i,enumerable:n},s?A(M(s),c):c}}}),_x=Ye({"node_modules/es5-ext/function/is-arguments.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call(function(){return arguments}());H.exports=function(A){return g.call(A)===x}}}),xx=Ye({"node_modules/es5-ext/string/is-string.js"(X,H){"use strict";var g=Object.prototype.toString,x=g.call("");H.exports=function(A){return typeof A=="string"||A&&typeof A=="object"&&(A instanceof String||g.call(A)===x)||!1}}}),pj=Ye({"node_modules/ext/global-this/is-implemented.js"(X,H){"use strict";H.exports=function(){return typeof globalThis!="object"||!globalThis?!1:globalThis.Array===Array}}}),dj=Ye({"node_modules/ext/global-this/implementation.js"(X,H){var g=function(){if(typeof self=="object"&&self)return self;if(typeof window=="object"&&window)return window;throw new Error("Unable to resolve global `this`")};H.exports=function(){if(this)return this;try{Object.defineProperty(Object.prototype,"__global__",{get:function(){return this},configurable:!0})}catch{return g()}try{return __global__||g()}finally{delete Object.prototype.__global__}}()}}),bx=Ye({"node_modules/ext/global-this/index.js"(X,H){"use strict";H.exports=pj()()?globalThis:dj()}}),vj=Ye({"node_modules/es6-symbol/is-implemented.js"(X,H){"use strict";var g=bx(),x={object:!0,symbol:!0};H.exports=function(){var A=g.Symbol,M;if(typeof A!="function")return!1;M=A("test symbol");try{String(M)}catch{return!1}return!(!x[typeof A.iterator]||!x[typeof A.toPrimitive]||!x[typeof A.toStringTag])}}}),mj=Ye({"node_modules/es6-symbol/is-symbol.js"(X,H){"use strict";H.exports=function(g){return g?typeof g=="symbol"?!0:!g.constructor||g.constructor.name!=="Symbol"?!1:g[g.constructor.toStringTag]==="Symbol":!1}}}),W5=Ye({"node_modules/es6-symbol/validate-symbol.js"(X,H){"use strict";var g=mj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not a symbol");return x}}}),gj=Ye({"node_modules/es6-symbol/lib/private/generate-name.js"(X,H){"use strict";var g=rm(),x=Object.create,A=Object.defineProperty,M=Object.prototype,e=x(null);H.exports=function(t){for(var r=0,o,a;e[t+(r||"")];)++r;return t+=r||"",e[t]=!0,o="@@"+t,A(M,o,g.gs(null,function(i){a||(a=!0,A(this,o,g(i)),a=!1)})),o}}}),yj=Ye({"node_modules/es6-symbol/lib/private/setup/standard-symbols.js"(X,H){"use strict";var g=rm(),x=bx().Symbol;H.exports=function(A){return Object.defineProperties(A,{hasInstance:g("",x&&x.hasInstance||A("hasInstance")),isConcatSpreadable:g("",x&&x.isConcatSpreadable||A("isConcatSpreadable")),iterator:g("",x&&x.iterator||A("iterator")),match:g("",x&&x.match||A("match")),replace:g("",x&&x.replace||A("replace")),search:g("",x&&x.search||A("search")),species:g("",x&&x.species||A("species")),split:g("",x&&x.split||A("split")),toPrimitive:g("",x&&x.toPrimitive||A("toPrimitive")),toStringTag:g("",x&&x.toStringTag||A("toStringTag")),unscopables:g("",x&&x.unscopables||A("unscopables"))})}}}),_j=Ye({"node_modules/es6-symbol/lib/private/setup/symbol-registry.js"(X,H){"use strict";var g=rm(),x=W5(),A=Object.create(null);H.exports=function(M){return Object.defineProperties(M,{for:g(function(e){return A[e]?A[e]:A[e]=M(String(e))}),keyFor:g(function(e){var t;x(e);for(t in A)if(A[t]===e)return t})})}}}),xj=Ye({"node_modules/es6-symbol/polyfill.js"(X,H){"use strict";var g=rm(),x=W5(),A=bx().Symbol,M=gj(),e=yj(),t=_j(),r=Object.create,o=Object.defineProperties,a=Object.defineProperty,i,n,s;if(typeof A=="function")try{String(A()),s=!0}catch{}else A=null;n=function(h){if(this instanceof n)throw new TypeError("Symbol is not a constructor");return i(h)},H.exports=i=function c(h){var v;if(this instanceof c)throw new TypeError("Symbol is not a constructor");return s?A(h):(v=r(n.prototype),h=h===void 0?"":String(h),o(v,{__description__:g("",h),__name__:g("",M(h))}))},e(i),t(i),o(n.prototype,{constructor:g(i),toString:g("",function(){return this.__name__})}),o(i.prototype,{toString:g(function(){return"Symbol ("+x(this).__description__+")"}),valueOf:g(function(){return x(this)})}),a(i.prototype,i.toPrimitive,g("",function(){var c=x(this);return typeof c=="symbol"?c:c.toString()})),a(i.prototype,i.toStringTag,g("c","Symbol")),a(n.prototype,i.toStringTag,g("c",i.prototype[i.toStringTag])),a(n.prototype,i.toPrimitive,g("c",i.prototype[i.toPrimitive]))}}),yg=Ye({"node_modules/es6-symbol/index.js"(X,H){"use strict";H.exports=vj()()?bx().Symbol:xj()}}),bj=Ye({"node_modules/es5-ext/array/#/clear.js"(X,H){"use strict";var g=tm();H.exports=function(){return g(this).length=0,this}}}),k1=Ye({"node_modules/es5-ext/object/valid-callable.js"(X,H){"use strict";H.exports=function(g){if(typeof g!="function")throw new TypeError(g+" is not a function");return g}}}),wj=Ye({"node_modules/type/string/coerce.js"(X,H){"use strict";var g=g0(),x=gT(),A=Object.prototype.toString;H.exports=function(M){if(!g(M))return null;if(x(M)){var e=M.toString;if(typeof e!="function"||e===A)return null}try{return""+M}catch{return null}}}}),Tj=Ye({"node_modules/type/lib/safe-to-string.js"(X,H){"use strict";H.exports=function(g){try{return g.toString()}catch{try{return String(g)}catch{return null}}}}}),Aj=Ye({"node_modules/type/lib/to-short-string.js"(X,H){"use strict";var g=Tj(),x=/[\n\r\u2028\u2029]/g;H.exports=function(A){var M=g(A);return M===null?"<Non-coercible to string value>":(M.length>100&&(M=M.slice(0,99)+"\u2026"),M=M.replace(x,function(e){switch(e){case`
+`:return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:throw new Error("Unexpected character")}}),M)}}}),Z5=Ye({"node_modules/type/lib/resolve-exception.js"(X,H){"use strict";var g=g0(),x=gT(),A=wj(),M=Aj(),e=function(t,r){return t.replace("%v",M(r))};H.exports=function(t,r,o){if(!x(o))throw new TypeError(e(r,t));if(!g(t)){if("default"in o)return o.default;if(o.isOptional)return null}var a=A(o.errorMessage);throw g(a)||(a=r),new TypeError(e(a,t))}}}),Sj=Ye({"node_modules/type/value/ensure.js"(X,H){"use strict";var g=Z5(),x=g0();H.exports=function(A){return x(A)?A:g(A,"Cannot use %v",arguments[1])}}}),Mj=Ye({"node_modules/type/plain-function/ensure.js"(X,H){"use strict";var g=Z5(),x=q5();H.exports=function(A){return x(A)?A:g(A,"%v is not a plain function",arguments[1])}}}),Ej=Ye({"node_modules/es5-ext/array/from/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Array.from,x,A;return typeof g!="function"?!1:(x=["raz","dwa"],A=g(x),!!(A&&A!==x&&A[1]==="dwa"))}}}),kj=Ye({"node_modules/es5-ext/function/is-function.js"(X,H){"use strict";var g=Object.prototype.toString,x=RegExp.prototype.test.bind(/^[object [A-Za-z0-9]*Function]$/);H.exports=function(A){return typeof A=="function"&&x(g.call(A))}}}),Cj=Ye({"node_modules/es5-ext/math/sign/is-implemented.js"(X,H){"use strict";H.exports=function(){var g=Math.sign;return typeof g!="function"?!1:g(10)===1&&g(-20)===-1}}}),Lj=Ye({"node_modules/es5-ext/math/sign/shim.js"(X,H){"use strict";H.exports=function(g){return g=Number(g),isNaN(g)||g===0?g:g>0?1:-1}}}),Pj=Ye({"node_modules/es5-ext/math/sign/index.js"(X,H){"use strict";H.exports=Cj()()?Math.sign:Lj()}}),Ij=Ye({"node_modules/es5-ext/number/to-integer.js"(X,H){"use strict";var g=Pj(),x=Math.abs,A=Math.floor;H.exports=function(M){return isNaN(M)?0:(M=Number(M),M===0||!isFinite(M)?M:g(M)*A(x(M)))}}}),Rj=Ye({"node_modules/es5-ext/number/to-pos-integer.js"(X,H){"use strict";var g=Ij(),x=Math.max;H.exports=function(A){return x(0,g(A))}}}),Dj=Ye({"node_modules/es5-ext/array/from/shim.js"(X,H){"use strict";var g=yg().iterator,x=_x(),A=kj(),M=Rj(),e=k1(),t=tm(),r=gg(),o=xx(),a=Array.isArray,i=Function.prototype.call,n={configurable:!0,enumerable:!0,writable:!0,value:null},s=Object.defineProperty;H.exports=function(c){var h=arguments[1],v=arguments[2],p,T,l,_,w,S,E,m,b,d;if(c=Object(t(c)),r(h)&&e(h),!this||this===Array||!A(this)){if(!h){if(x(c))return w=c.length,w!==1?Array.apply(null,c):(_=new Array(1),_[0]=c[0],_);if(a(c)){for(_=new Array(w=c.length),T=0;T<w;++T)_[T]=c[T];return _}}_=[]}else p=this;if(!a(c)){if((b=c[g])!==void 0){for(E=e(b).call(c),p&&(_=new p),m=E.next(),T=0;!m.done;)d=h?i.call(h,v,m.value,T):m.value,p?(n.value=d,s(_,T,n)):_[T]=d,m=E.next(),++T;w=T}else if(o(c)){for(w=c.length,p&&(_=new p),T=0,l=0;T<w;++T)d=c[T],T+1<w&&(S=d.charCodeAt(0),S>=55296&&S<=56319&&(d+=c[++T])),d=h?i.call(h,v,d,l):d,p?(n.value=d,s(_,l,n)):_[l]=d,++l;w=l}}if(w===void 0)for(w=M(c.length),p&&(_=new p(w)),T=0;T<w;++T)d=h?i.call(h,v,c[T],T):c[T],p?(n.value=d,s(_,T,n)):_[T]=d;return p&&(n.value=null,_.length=w),_}}}),zj=Ye({"node_modules/es5-ext/array/from/index.js"(X,H){"use strict";H.exports=Ej()()?Array.from:Dj()}}),Fj=Ye({"node_modules/es5-ext/object/copy.js"(X,H){"use strict";var g=zj(),x=yT(),A=tm();H.exports=function(M){var e=Object(A(M)),t=arguments[1],r=Object(arguments[2]);if(e!==M&&!t)return e;var o={};return t?g(t,function(a){(r.ensure||a in M)&&(o[a]=M[a])}):x(o,M),o}}}),Oj=Ye({"node_modules/es5-ext/object/_iterate.js"(X,H){"use strict";var g=k1(),x=tm(),A=Function.prototype.bind,M=Function.prototype.call,e=Object.keys,t=Object.prototype.propertyIsEnumerable;H.exports=function(r,o){return function(a,i){var n,s=arguments[2],c=arguments[3];return a=Object(x(a)),g(i),n=e(a),c&&n.sort(typeof c=="function"?A.call(c,a):void 0),typeof r!="function"&&(r=n[r]),M.call(r,n,function(h,v){return t.call(a,h)?M.call(i,s,a[h],h,a,v):o})}}}}),Bj=Ye({"node_modules/es5-ext/object/for-each.js"(X,H){"use strict";H.exports=Oj()("forEach")}}),Nj=Ye({"node_modules/es5-ext/object/map.js"(X,H){"use strict";var g=k1(),x=Bj(),A=Function.prototype.call;H.exports=function(M,e){var t={},r=arguments[2];return g(e),x(M,function(o,a,i,n){t[a]=A.call(e,r,o,a,i,n)}),t}}}),Uj=Ye({"node_modules/d/auto-bind.js"(X,H){"use strict";var g=g0(),x=Sj(),A=Mj(),M=Fj(),e=H5(),t=Nj(),r=Function.prototype.bind,o=Object.defineProperty,a=Object.prototype.hasOwnProperty,i;i=function(n,s,c){var h=x(s)&&A(s.value),v;return v=M(s),delete v.writable,delete v.value,v.get=function(){return!c.overwriteDefinition&&a.call(this,n)?h:(s.value=r.call(h,c.resolveContext?c.resolveContext(this):this),o(this,n,s),this[n])},v},H.exports=function(n){var s=e(arguments[1]);return g(s.resolveContext)&&A(s.resolveContext),t(n,function(c,h){return i(h,c,s)})}}}),X5=Ye({"node_modules/es6-iterator/index.js"(X,H){"use strict";var g=bj(),x=yT(),A=k1(),M=tm(),e=rm(),t=Uj(),r=yg(),o=Object.defineProperty,a=Object.defineProperties,i;H.exports=i=function(n,s){if(!(this instanceof i))throw new TypeError("Constructor requires 'new'");a(this,{__list__:e("w",M(n)),__context__:e("w",s),__nextIndex__:e("w",0)}),s&&(A(s.on),s.on("_add",this._onAdd),s.on("_delete",this._onDelete),s.on("_clear",this._onClear))},delete i.prototype.constructor,a(i.prototype,x({_next:e(function(){var n;if(this.__list__){if(this.__redo__&&(n=this.__redo__.shift(),n!==void 0))return n;if(this.__nextIndex__<this.__list__.length)return this.__nextIndex__++;this._unBind()}}),next:e(function(){return this._createResult(this._next())}),_createResult:e(function(n){return n===void 0?{done:!0,value:void 0}:{done:!1,value:this._resolve(n)}}),_resolve:e(function(n){return this.__list__[n]}),_unBind:e(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off("_add",this._onAdd),this.__context__.off("_delete",this._onDelete),this.__context__.off("_clear",this._onClear),this.__context__=null)}),toString:e(function(){return"[object "+(this[r.toStringTag]||"Object")+"]"})},t({_onAdd:e(function(n){if(!(n>=this.__nextIndex__)){if(++this.__nextIndex__,!this.__redo__){o(this,"__redo__",e("c",[n]));return}this.__redo__.forEach(function(s,c){s>=n&&(this.__redo__[c]=++s)},this),this.__redo__.push(n)}}),_onDelete:e(function(n){var s;n>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(s=this.__redo__.indexOf(n),s!==-1&&this.__redo__.splice(s,1),this.__redo__.forEach(function(c,h){c>n&&(this.__redo__[h]=--c)},this)))}),_onClear:e(function(){this.__redo__&&g.call(this.__redo__),this.__nextIndex__=0})}))),o(i.prototype,r.iterator,e(function(){return this}))}}),jj=Ye({"node_modules/es6-iterator/array.js"(X,H){"use strict";var g=mT(),x=G5(),A=rm(),M=yg(),e=X5(),t=Object.defineProperty,r;r=H.exports=function(o,a){if(!(this instanceof r))throw new TypeError("Constructor requires 'new'");e.call(this,o),a?x.call(a,"key+value")?a="key+value":x.call(a,"key")?a="key":a="value":a="value",t(this,"__kind__",A("",a))},g&&g(r,e),delete r.prototype.constructor,r.prototype=Object.create(e.prototype,{_resolve:A(function(o){return this.__kind__==="value"?this.__list__[o]:this.__kind__==="key+value"?[o,this.__list__[o]]:o})}),t(r.prototype,M.toStringTag,A("c","Array Iterator"))}}),Vj=Ye({"node_modules/es6-iterator/string.js"(X,H){"use strict";var g=mT(),x=rm(),A=yg(),M=X5(),e=Object.defineProperty,t;t=H.exports=function(r){if(!(this instanceof t))throw new TypeError("Constructor requires 'new'");r=String(r),M.call(this,r),e(this,"__length__",x("",r.length))},g&&g(t,M),delete t.prototype.constructor,t.prototype=Object.create(M.prototype,{_next:x(function(){if(this.__list__){if(this.__nextIndex__<this.__length__)return this.__nextIndex__++;this._unBind()}}),_resolve:x(function(r){var o=this.__list__[r],a;return this.__nextIndex__===this.__length__?o:(a=o.charCodeAt(0),a>=55296&&a<=56319?o+this.__list__[this.__nextIndex__++]:o)})}),e(t.prototype,A.toStringTag,x("c","String Iterator"))}}),qj=Ye({"node_modules/es6-iterator/is-iterable.js"(X,H){"use strict";var g=_x(),x=gg(),A=xx(),M=yg().iterator,e=Array.isArray;H.exports=function(t){return x(t)?e(t)||A(t)||g(t)?!0:typeof t[M]=="function":!1}}}),Hj=Ye({"node_modules/es6-iterator/valid-iterable.js"(X,H){"use strict";var g=qj();H.exports=function(x){if(!g(x))throw new TypeError(x+" is not iterable");return x}}}),Y5=Ye({"node_modules/es6-iterator/get.js"(X,H){"use strict";var g=_x(),x=xx(),A=jj(),M=Vj(),e=Hj(),t=yg().iterator;H.exports=function(r){return typeof e(r)[t]=="function"?r[t]():g(r)?new A(r):x(r)?new M(r):new A(r)}}}),Gj=Ye({"node_modules/es6-iterator/for-of.js"(X,H){"use strict";var g=_x(),x=k1(),A=xx(),M=Y5(),e=Array.isArray,t=Function.prototype.call,r=Array.prototype.some;H.exports=function(o,a){var i,n=arguments[2],s,c,h,v,p,T,l;if(e(o)||g(o)?i="array":A(o)?i="string":o=M(o),x(a),c=function(){h=!0},i==="array"){r.call(o,function(_){return t.call(a,n,_,c),h});return}if(i==="string"){for(p=o.length,v=0;v<p&&(T=o[v],v+1<p&&(l=T.charCodeAt(0),l>=55296&&l<=56319&&(T+=o[++v])),t.call(a,n,T,c),!h);++v);return}for(s=o.next();!s.done;){if(t.call(a,n,s.value,c),h)return;s=o.next()}}}}),Wj=Ye({"node_modules/es6-weak-map/is-native-implemented.js"(X,H){"use strict";H.exports=function(){return typeof WeakMap!="function"?!1:Object.prototype.toString.call(new WeakMap)==="[object WeakMap]"}()}}),Zj=Ye({"node_modules/es6-weak-map/polyfill.js"(X,H){"use strict";var g=gg(),x=mT(),A=rj(),M=tm(),e=aj(),t=rm(),r=Y5(),o=Gj(),a=yg().toStringTag,i=Wj(),n=Array.isArray,s=Object.defineProperty,c=Object.prototype.hasOwnProperty,h=Object.getPrototypeOf,v;H.exports=v=function(){var p=arguments[0],T;if(!(this instanceof v))throw new TypeError("Constructor requires 'new'");return T=i&&x&&WeakMap!==v?x(new WeakMap,h(this)):this,g(p)&&(n(p)||(p=r(p))),s(T,"__weakMapData__",t("c","$weakMap$"+e())),p&&o(p,function(l){M(l),T.set(l[0],l[1])}),T},i&&(x&&x(v,WeakMap),v.prototype=Object.create(WeakMap.prototype,{constructor:t(v)})),Object.defineProperties(v.prototype,{delete:t(function(p){return c.call(A(p),this.__weakMapData__)?(delete p[this.__weakMapData__],!0):!1}),get:t(function(p){if(c.call(A(p),this.__weakMapData__))return p[this.__weakMapData__]}),has:t(function(p){return c.call(A(p),this.__weakMapData__)}),set:t(function(p,T){return s(A(p),this.__weakMapData__,t("c",T)),this}),toString:t(function(){return"[object WeakMap]"})}),s(v.prototype,a,t("c","WeakMap"))}}),K5=Ye({"node_modules/es6-weak-map/index.js"(X,H){"use strict";H.exports=QU()()?WeakMap:Zj()}}),Xj=Ye({"node_modules/array-find-index/index.js"(X,H){"use strict";H.exports=function(g,x,A){if(typeof Array.prototype.findIndex=="function")return g.findIndex(x,A);if(typeof x!="function")throw new TypeError("predicate must be a function");var M=Object(g),e=M.length;if(e===0)return-1;for(var t=0;t<e;t++)if(x.call(A,M[t],t,M))return t;return-1}}}),J5=Ye({"node_modules/regl-line2d/index.js"(X,H){"use strict";var g=hg(),x=d0(),A=Wf(),M=Ev(),e=v0(),t=JU(),r=$U(),{float32:o,fract32:a}=vT(),i=K5(),n=E1(),s=Xj(),c=`
+precision highp float;
+
+attribute vec2 aCoord, bCoord, aCoordFract, bCoordFract;
+attribute vec4 color;
+attribute float lineEnd, lineTop;
+
+uniform vec2 scale, scaleFract, translate, translateFract;
+uniform float thickness, pixelRatio, id, depth;
+uniform vec4 viewport;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+
+vec2 project(vec2 position, vec2 positionFract, vec2 scale, vec2 scaleFract, vec2 translate, vec2 translateFract) {
+ // the order is important
+ return position * scale + translate
+ + positionFract * scale + translateFract
+ + position * scaleFract
+ + positionFract * scaleFract;
+}
+
+void main() {
+ float lineStart = 1. - lineEnd;
+ float lineOffset = lineTop * 2. - 1.;
+
+ vec2 diff = (bCoord + bCoordFract - aCoord - aCoordFract);
+ tangent = normalize(diff * scale * viewport.zw);
+ vec2 normal = vec2(-tangent.y, tangent.x);
+
+ vec2 position = project(aCoord, aCoordFract, scale, scaleFract, translate, translateFract) * lineStart
+ + project(bCoord, bCoordFract, scale, scaleFract, translate, translateFract) * lineEnd
+
+ + thickness * normal * .5 * lineOffset / viewport.zw;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ fragColor = color / 255.;
+}
+`,h=`
+precision highp float;
+
+uniform float dashLength, pixelRatio, thickness, opacity, id;
+uniform sampler2D dashTexture;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+
+void main() {
+ float alpha = 1.;
+
+ float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
+ float dash = texture2D(dashTexture, vec2(t, .5)).r;
+
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= alpha * opacity * dash;
+}
+`,v=`
+precision highp float;
+
+attribute vec2 position, positionFract;
+
+uniform vec4 color;
+uniform vec2 scale, scaleFract, translate, translateFract;
+uniform float pixelRatio, id;
+uniform vec4 viewport;
+uniform float opacity;
+
+varying vec4 fragColor;
+
+const float MAX_LINES = 256.;
+
+void main() {
+ float depth = (MAX_LINES - 4. - id) / (MAX_LINES);
+
+ vec2 position = position * scale + translate
+ + positionFract * scale + translateFract
+ + position * scaleFract
+ + positionFract * scaleFract;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ fragColor = color / 255.;
+ fragColor.a *= opacity;
+}
+`,p=`
+precision highp float;
+varying vec4 fragColor;
+
+void main() {
+ gl_FragColor = fragColor;
+}
+`,T=`
+precision highp float;
+
+attribute vec2 aCoord, bCoord, nextCoord, prevCoord;
+attribute vec4 aColor, bColor;
+attribute float lineEnd, lineTop;
+
+uniform vec2 scale, translate;
+uniform float thickness, pixelRatio, id, depth;
+uniform vec4 viewport;
+uniform float miterLimit, miterMode;
+
+varying vec4 fragColor;
+varying vec4 startCutoff, endCutoff;
+varying vec2 tangent;
+varying vec2 startCoord, endCoord;
+varying float enableStartMiter, enableEndMiter;
+
+const float REVERSE_THRESHOLD = -.875;
+const float MIN_DIFF = 1e-6;
+
+// TODO: possible optimizations: avoid overcalculating all for vertices and calc just one instead
+// TODO: precalculate dot products, normalize things beforehead etc.
+// TODO: refactor to rectangular algorithm
+
+float distToLine(vec2 p, vec2 a, vec2 b) {
+ vec2 diff = b - a;
+ vec2 perp = normalize(vec2(-diff.y, diff.x));
+ return dot(p - a, perp);
+}
+
+bool isNaN( float val ){
+ return ( val < 0.0 || 0.0 < val || val == 0.0 ) ? false : true;
+}
+
+void main() {
+ vec2 aCoord = aCoord, bCoord = bCoord, prevCoord = prevCoord, nextCoord = nextCoord;
+
+ vec2 adjustedScale;
+ adjustedScale.x = (abs(scale.x) < MIN_DIFF) ? MIN_DIFF : scale.x;
+ adjustedScale.y = (abs(scale.y) < MIN_DIFF) ? MIN_DIFF : scale.y;
+
+ vec2 scaleRatio = adjustedScale * viewport.zw;
+ vec2 normalWidth = thickness / scaleRatio;
+
+ float lineStart = 1. - lineEnd;
+ float lineBot = 1. - lineTop;
+
+ fragColor = (lineStart * aColor + lineEnd * bColor) / 255.;
+
+ if (isNaN(aCoord.x) || isNaN(aCoord.y) || isNaN(bCoord.x) || isNaN(bCoord.y)) return;
+
+ if (aCoord == prevCoord) prevCoord = aCoord + normalize(bCoord - aCoord);
+ if (bCoord == nextCoord) nextCoord = bCoord - normalize(bCoord - aCoord);
+
+
+ vec2 prevDiff = aCoord - prevCoord;
+ vec2 currDiff = bCoord - aCoord;
+ vec2 nextDiff = nextCoord - bCoord;
+
+ vec2 prevTangent = normalize(prevDiff * scaleRatio);
+ vec2 currTangent = normalize(currDiff * scaleRatio);
+ vec2 nextTangent = normalize(nextDiff * scaleRatio);
+
+ vec2 prevNormal = vec2(-prevTangent.y, prevTangent.x);
+ vec2 currNormal = vec2(-currTangent.y, currTangent.x);
+ vec2 nextNormal = vec2(-nextTangent.y, nextTangent.x);
+
+ vec2 startJoinDirection = normalize(prevTangent - currTangent);
+ vec2 endJoinDirection = normalize(currTangent - nextTangent);
+
+ // collapsed/unidirectional segment cases
+ // FIXME: there should be more elegant solution
+ vec2 prevTanDiff = abs(prevTangent - currTangent);
+ vec2 nextTanDiff = abs(nextTangent - currTangent);
+ if (max(prevTanDiff.x, prevTanDiff.y) < MIN_DIFF) {
+ startJoinDirection = currNormal;
+ }
+ if (max(nextTanDiff.x, nextTanDiff.y) < MIN_DIFF) {
+ endJoinDirection = currNormal;
+ }
+ if (aCoord == bCoord) {
+ endJoinDirection = startJoinDirection;
+ currNormal = prevNormal;
+ currTangent = prevTangent;
+ }
+
+ tangent = currTangent;
+
+ //calculate join shifts relative to normals
+ float startJoinShift = dot(currNormal, startJoinDirection);
+ float endJoinShift = dot(currNormal, endJoinDirection);
+
+ float startMiterRatio = abs(1. / startJoinShift);
+ float endMiterRatio = abs(1. / endJoinShift);
+
+ vec2 startJoin = startJoinDirection * startMiterRatio;
+ vec2 endJoin = endJoinDirection * endMiterRatio;
+
+ vec2 startTopJoin, startBotJoin, endTopJoin, endBotJoin;
+ startTopJoin = sign(startJoinShift) * startJoin * .5;
+ startBotJoin = -startTopJoin;
+
+ endTopJoin = sign(endJoinShift) * endJoin * .5;
+ endBotJoin = -endTopJoin;
+
+ vec2 aTopCoord = aCoord + normalWidth * startTopJoin;
+ vec2 bTopCoord = bCoord + normalWidth * endTopJoin;
+ vec2 aBotCoord = aCoord + normalWidth * startBotJoin;
+ vec2 bBotCoord = bCoord + normalWidth * endBotJoin;
+
+ //miter anti-clipping
+ float baClipping = distToLine(bCoord, aCoord, aBotCoord) / dot(normalize(normalWidth * endBotJoin), normalize(normalWidth.yx * vec2(-startBotJoin.y, startBotJoin.x)));
+ float abClipping = distToLine(aCoord, bCoord, bTopCoord) / dot(normalize(normalWidth * startBotJoin), normalize(normalWidth.yx * vec2(-endBotJoin.y, endBotJoin.x)));
+
+ //prevent close to reverse direction switch
+ bool prevReverse = dot(currTangent, prevTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, prevNormal)) * min(length(prevDiff), length(currDiff)) < length(normalWidth * currNormal);
+ bool nextReverse = dot(currTangent, nextTangent) <= REVERSE_THRESHOLD && abs(dot(currTangent, nextNormal)) * min(length(nextDiff), length(currDiff)) < length(normalWidth * currNormal);
+
+ if (prevReverse) {
+ //make join rectangular
+ vec2 miterShift = normalWidth * startJoinDirection * miterLimit * .5;
+ float normalAdjust = 1. - min(miterLimit / startMiterRatio, 1.);
+ aBotCoord = aCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
+ aTopCoord = aCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
+ }
+ else if (!nextReverse && baClipping > 0. && baClipping < length(normalWidth * endBotJoin)) {
+ //handle miter clipping
+ bTopCoord -= normalWidth * endTopJoin;
+ bTopCoord += normalize(endTopJoin * normalWidth) * baClipping;
+ }
+
+ if (nextReverse) {
+ //make join rectangular
+ vec2 miterShift = normalWidth * endJoinDirection * miterLimit * .5;
+ float normalAdjust = 1. - min(miterLimit / endMiterRatio, 1.);
+ bBotCoord = bCoord + miterShift - normalAdjust * normalWidth * currNormal * .5;
+ bTopCoord = bCoord + miterShift + normalAdjust * normalWidth * currNormal * .5;
+ }
+ else if (!prevReverse && abClipping > 0. && abClipping < length(normalWidth * startBotJoin)) {
+ //handle miter clipping
+ aBotCoord -= normalWidth * startBotJoin;
+ aBotCoord += normalize(startBotJoin * normalWidth) * abClipping;
+ }
+
+ vec2 aTopPosition = (aTopCoord) * adjustedScale + translate;
+ vec2 aBotPosition = (aBotCoord) * adjustedScale + translate;
+
+ vec2 bTopPosition = (bTopCoord) * adjustedScale + translate;
+ vec2 bBotPosition = (bBotCoord) * adjustedScale + translate;
+
+ //position is normalized 0..1 coord on the screen
+ vec2 position = (aTopPosition * lineTop + aBotPosition * lineBot) * lineStart + (bTopPosition * lineTop + bBotPosition * lineBot) * lineEnd;
+
+ startCoord = aCoord * scaleRatio + translate * viewport.zw + viewport.xy;
+ endCoord = bCoord * scaleRatio + translate * viewport.zw + viewport.xy;
+
+ gl_Position = vec4(position * 2.0 - 1.0, depth, 1);
+
+ enableStartMiter = step(dot(currTangent, prevTangent), .5);
+ enableEndMiter = step(dot(currTangent, nextTangent), .5);
+
+ //bevel miter cutoffs
+ if (miterMode == 1.) {
+ if (enableStartMiter == 1.) {
+ vec2 startMiterWidth = vec2(startJoinDirection) * thickness * miterLimit * .5;
+ startCutoff = vec4(aCoord, aCoord);
+ startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
+ startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ startCutoff += viewport.xyxy;
+ startCutoff += startMiterWidth.xyxy;
+ }
+
+ if (enableEndMiter == 1.) {
+ vec2 endMiterWidth = vec2(endJoinDirection) * thickness * miterLimit * .5;
+ endCutoff = vec4(bCoord, bCoord);
+ endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
+ endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ endCutoff += viewport.xyxy;
+ endCutoff += endMiterWidth.xyxy;
+ }
+ }
+
+ //round miter cutoffs
+ else if (miterMode == 2.) {
+ if (enableStartMiter == 1.) {
+ vec2 startMiterWidth = vec2(startJoinDirection) * thickness * abs(dot(startJoinDirection, currNormal)) * .5;
+ startCutoff = vec4(aCoord, aCoord);
+ startCutoff.zw += vec2(-startJoinDirection.y, startJoinDirection.x) / scaleRatio;
+ startCutoff = startCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ startCutoff += viewport.xyxy;
+ startCutoff += startMiterWidth.xyxy;
+ }
+
+ if (enableEndMiter == 1.) {
+ vec2 endMiterWidth = vec2(endJoinDirection) * thickness * abs(dot(endJoinDirection, currNormal)) * .5;
+ endCutoff = vec4(bCoord, bCoord);
+ endCutoff.zw += vec2(-endJoinDirection.y, endJoinDirection.x) / scaleRatio;
+ endCutoff = endCutoff * scaleRatio.xyxy + translate.xyxy * viewport.zwzw;
+ endCutoff += viewport.xyxy;
+ endCutoff += endMiterWidth.xyxy;
+ }
+ }
+}
+`,l=`
+precision highp float;
+
+uniform float dashLength, pixelRatio, thickness, opacity, id, miterMode;
+uniform sampler2D dashTexture;
+
+varying vec4 fragColor;
+varying vec2 tangent;
+varying vec4 startCutoff, endCutoff;
+varying vec2 startCoord, endCoord;
+varying float enableStartMiter, enableEndMiter;
+
+float distToLine(vec2 p, vec2 a, vec2 b) {
+ vec2 diff = b - a;
+ vec2 perp = normalize(vec2(-diff.y, diff.x));
+ return dot(p - a, perp);
+}
+
+void main() {
+ float alpha = 1., distToStart, distToEnd;
+ float cutoff = thickness * .5;
+
+ //bevel miter
+ if (miterMode == 1.) {
+ if (enableStartMiter == 1.) {
+ distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
+ if (distToStart < -1.) {
+ discard;
+ return;
+ }
+ alpha *= min(max(distToStart + 1., 0.), 1.);
+ }
+
+ if (enableEndMiter == 1.) {
+ distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
+ if (distToEnd < -1.) {
+ discard;
+ return;
+ }
+ alpha *= min(max(distToEnd + 1., 0.), 1.);
+ }
+ }
+
+ // round miter
+ else if (miterMode == 2.) {
+ if (enableStartMiter == 1.) {
+ distToStart = distToLine(gl_FragCoord.xy, startCutoff.xy, startCutoff.zw);
+ if (distToStart < 0.) {
+ float radius = length(gl_FragCoord.xy - startCoord);
+
+ if(radius > cutoff + .5) {
+ discard;
+ return;
+ }
+
+ alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
+ }
+ }
+
+ if (enableEndMiter == 1.) {
+ distToEnd = distToLine(gl_FragCoord.xy, endCutoff.xy, endCutoff.zw);
+ if (distToEnd < 0.) {
+ float radius = length(gl_FragCoord.xy - endCoord);
+
+ if(radius > cutoff + .5) {
+ discard;
+ return;
+ }
+
+ alpha -= smoothstep(cutoff - .5, cutoff + .5, radius);
+ }
+ }
+ }
+
+ float t = fract(dot(tangent, gl_FragCoord.xy) / dashLength) * .5 + .25;
+ float dash = texture2D(dashTexture, vec2(t, .5)).r;
+
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= alpha * opacity * dash;
+}
+`;H.exports=_;function _(w,S){if(!(this instanceof _))return new _(w,S);if(typeof w=="function"?(S||(S={}),S.regl=w):S=w,S.length&&(S.positions=S),w=S.regl,!w.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");this.gl=w._gl,this.regl=w,this.passes=[],this.shaders=_.shaders.has(w)?_.shaders.get(w):_.shaders.set(w,_.createShaders(w)).get(w),this.update(S)}_.dashMult=2,_.maxPatternLength=256,_.precisionThreshold=3e6,_.maxPoints=1e4,_.maxLines=2048,_.shaders=new i,_.createShaders=function(w){let S=w.buffer({usage:"static",type:"float",data:[0,1,0,0,1,1,1,0]}),E={primitive:"triangle strip",instances:w.prop("count"),count:4,offset:0,uniforms:{miterMode:(u,y)=>y.join==="round"?2:1,miterLimit:w.prop("miterLimit"),scale:w.prop("scale"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),thickness:w.prop("thickness"),dashTexture:w.prop("dashTexture"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),dashLength:w.prop("dashLength"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight],depth:w.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:(u,y)=>!y.overlay},stencil:{enable:!1},scissor:{enable:!0,box:w.prop("viewport")},viewport:w.prop("viewport")},m=w(A({vert:c,frag:h,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},aCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8,divisor:1},bCoordFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:16,divisor:1},color:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1}}},E)),b;try{b=w(A({cull:{enable:!0,face:"back"},vert:T,frag:l,attributes:{lineEnd:{buffer:S,divisor:0,stride:8,offset:0},lineTop:{buffer:S,divisor:0,stride:8,offset:4},aColor:{buffer:w.prop("colorBuffer"),stride:4,offset:0,divisor:1},bColor:{buffer:w.prop("colorBuffer"),stride:4,offset:4,divisor:1},prevCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:0,divisor:1},aCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:8,divisor:1},bCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:16,divisor:1},nextCoord:{buffer:w.prop("positionBuffer"),stride:8,offset:24,divisor:1}}},E))}catch{b=m}return{fill:w({primitive:"triangle",elements:(u,y)=>y.triangles,offset:0,vert:v,frag:p,uniforms:{scale:w.prop("scale"),color:w.prop("fill"),scaleFract:w.prop("scaleFract"),translateFract:w.prop("translateFract"),translate:w.prop("translate"),opacity:w.prop("opacity"),pixelRatio:w.context("pixelRatio"),id:w.prop("id"),viewport:(u,y)=>[y.viewport.x,y.viewport.y,u.viewportWidth,u.viewportHeight]},attributes:{position:{buffer:w.prop("positionBuffer"),stride:8,offset:8},positionFract:{buffer:w.prop("positionFractBuffer"),stride:8,offset:8}},blend:E.blend,depth:{enable:!1},scissor:E.scissor,stencil:E.stencil,viewport:E.viewport}),rect:m,miter:b}},_.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},_.prototype.render=function(...w){w.length&&this.update(...w),this.draw()},_.prototype.draw=function(...w){return(w.length?w:this.passes).forEach((S,E)=>{if(S&&Array.isArray(S))return this.draw(...S);typeof S=="number"&&(S=this.passes[S]),S&&S.count>1&&S.opacity&&(this.regl._refresh(),S.fill&&S.triangles&&S.triangles.length>2&&this.shaders.fill(S),S.thickness&&(S.scale[0]*S.viewport.width>_.precisionThreshold||S.scale[1]*S.viewport.height>_.precisionThreshold?this.shaders.rect(S):S.join==="rect"||!S.join&&(S.thickness<=2||S.count>=_.maxPoints)?this.shaders.rect(S):this.shaders.miter(S)))}),this},_.prototype.update=function(w){if(!w)return;w.length!=null?typeof w[0]=="number"&&(w=[{positions:w}]):Array.isArray(w)||(w=[w]);let{regl:S,gl:E}=this;if(w.forEach((b,d)=>{let u=this.passes[d];if(b!==void 0){if(b===null){this.passes[d]=null;return}if(typeof b[0]=="number"&&(b={positions:b}),b=M(b,{positions:"positions points data coords",thickness:"thickness lineWidth lineWidths line-width linewidth width stroke-width strokewidth strokeWidth",join:"lineJoin linejoin join type mode",miterLimit:"miterlimit miterLimit",dashes:"dash dashes dasharray dash-array dashArray",color:"color colour stroke colors colours stroke-color strokeColor",fill:"fill fill-color fillColor",opacity:"alpha opacity",overlay:"overlay crease overlap intersect",close:"closed close closed-path closePath",range:"range dataBox",viewport:"viewport viewBox",hole:"holes hole hollow",splitNull:"splitNull"}),u||(this.passes[d]=u={id:d,scale:null,scaleFract:null,translate:null,translateFract:null,count:0,hole:[],depth:0,dashLength:1,dashTexture:S.texture({channels:1,data:new Uint8Array([255]),width:1,height:1,mag:"linear",min:"linear"}),colorBuffer:S.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array}),positionBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),positionFractBuffer:S.buffer({usage:"dynamic",type:"float",data:new Uint8Array})},b=A({},_.defaults,b)),b.thickness!=null&&(u.thickness=parseFloat(b.thickness)),b.opacity!=null&&(u.opacity=parseFloat(b.opacity)),b.miterLimit!=null&&(u.miterLimit=parseFloat(b.miterLimit)),b.overlay!=null&&(u.overlay=!!b.overlay,d<_.maxLines&&(u.depth=2*(_.maxLines-1-d%_.maxLines)/_.maxLines-1)),b.join!=null&&(u.join=b.join),b.hole!=null&&(u.hole=b.hole),b.fill!=null&&(u.fill=b.fill?g(b.fill,"uint8"):null),b.viewport!=null&&(u.viewport=n(b.viewport)),u.viewport||(u.viewport=n([E.drawingBufferWidth,E.drawingBufferHeight])),b.close!=null&&(u.close=b.close),b.positions===null&&(b.positions=[]),b.positions){let P,L;if(b.positions.x&&b.positions.y){let O=b.positions.x,I=b.positions.y;L=u.count=Math.max(O.length,I.length),P=new Float64Array(L*2);for(let N=0;N<L;N++)P[N*2]=O[N],P[N*2+1]=I[N]}else P=e(b.positions,"float64"),L=u.count=Math.floor(P.length/2);let z=u.bounds=x(P,2);if(u.fill){let O=[],I={},N=0;for(let U=0,W=0,Q=u.count;U<Q;U++){let ue=P[U*2],se=P[U*2+1];isNaN(ue)||isNaN(se)||ue==null||se==null?(ue=P[N*2],se=P[N*2+1],I[U]=N):N=U,O[W++]=ue,O[W++]=se}if(b.splitNull){u.count-1 in I||(I[u.count]=u.count-1);let U=Object.keys(I).map(Number).sort((se,he)=>se-he),W=[],Q=0,ue=u.hole!=null?u.hole[0]:null;if(ue!=null){let se=s(U,he=>he>=ue);U=U.slice(0,se),U.push(ue)}for(let se=0;se<U.length;se++){let he=O.slice(Q*2,U[se]*2).concat(ue?O.slice(ue*2):[]),G=(u.hole||[]).map(J=>J-ue+(U[se]-Q)),$=t(he,G);$=$.map(J=>J+Q+(J+Q<U[se]?0:ue-U[se])),W.push(...$),Q=U[se]+1}for(let se=0,he=W.length;se<he;se++)I[W[se]]!=null&&(W[se]=I[W[se]]);u.triangles=W}else{let U=t(O,u.hole||[]);for(let W=0,Q=U.length;W<Q;W++)I[U[W]]!=null&&(U[W]=I[U[W]]);u.triangles=U}}let F=new Float64Array(P);r(F,2,z);let B=new Float64Array(L*2+6);u.close?P[0]===P[L*2-2]&&P[1]===P[L*2-1]?(B[0]=F[L*2-4],B[1]=F[L*2-3]):(B[0]=F[L*2-2],B[1]=F[L*2-1]):(B[0]=F[0],B[1]=F[1]),B.set(F,2),u.close?P[0]===P[L*2-2]&&P[1]===P[L*2-1]?(B[L*2+2]=F[2],B[L*2+3]=F[3],u.count-=1):(B[L*2+2]=F[0],B[L*2+3]=F[1],B[L*2+4]=F[2],B[L*2+5]=F[3]):(B[L*2+2]=F[L*2-2],B[L*2+3]=F[L*2-1],B[L*2+4]=F[L*2-2],B[L*2+5]=F[L*2-1]);var y=o(B);u.positionBuffer(y);var f=a(B,y);u.positionFractBuffer(f)}if(b.range?u.range=b.range:u.range||(u.range=u.bounds),(b.range||b.positions)&&u.count){let P=u.bounds,L=P[2]-P[0],z=P[3]-P[1],F=u.range[2]-u.range[0],B=u.range[3]-u.range[1];u.scale=[L/F,z/B],u.translate=[-u.range[0]/F+P[0]/F||0,-u.range[1]/B+P[1]/B||0],u.scaleFract=a(u.scale),u.translateFract=a(u.translate)}if(b.dashes){let P=0,L;if(!b.dashes||b.dashes.length<2)P=1,L=new Uint8Array([255,255,255,255,255,255,255,255]);else{P=0;for(let B=0;B<b.dashes.length;++B)P+=b.dashes[B];L=new Uint8Array(P*_.dashMult);let z=0,F=255;for(let B=0;B<2;B++)for(let O=0;O<b.dashes.length;++O){for(let I=0,N=b.dashes[O]*_.dashMult*.5;I<N;++I)L[z++]=F;F^=255}}u.dashLength=P,u.dashTexture({channels:1,data:L,width:L.length,height:1,mag:"linear",min:"linear"},0,0)}if(b.color){let P=u.count,L=b.color;L||(L="transparent");let z=new Uint8Array(P*4+4);if(!Array.isArray(L)||typeof L[0]=="number"){let F=g(L,"uint8");for(let B=0;B<P+1;B++)z.set(F,B*4)}else{for(let F=0;F<P;F++){let B=g(L[F],"uint8");z.set(B,F*4)}z.set(g(L[0],"uint8"),P*4)}u.colorBuffer({usage:"dynamic",type:"uint8",data:z})}}}),w.length<this.passes.length){for(let b=w.length;b<this.passes.length;b++){let d=this.passes[b];d&&(d.colorBuffer.destroy(),d.positionBuffer.destroy(),d.dashTexture.destroy())}this.passes.length=w.length}let m=[];for(let b=0;b<this.passes.length;b++)this.passes[b]!==null&&m.push(this.passes[b]);return this.passes=m,this},_.prototype.destroy=function(){return this.passes.forEach(w=>{w.colorBuffer.destroy(),w.positionBuffer.destroy(),w.dashTexture.destroy()}),this.passes.length=0,this}}}),Yj=Ye({"node_modules/regl-error2d/index.js"(X,H){"use strict";var g=d0(),x=hg(),A=B5(),M=Ev(),e=Wf(),t=v0(),{float32:r,fract32:o}=vT();H.exports=i;var a=[[1,0,0,1,0,0],[1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,-1,0,0],[-1,0,0,1,0,0],[1,0,0,1,0,0],[1,0,-1,0,0,1],[1,0,-1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,-1],[1,0,1,0,0,1],[1,0,-1,0,0,1],[-1,0,-1,0,0,1],[-1,0,-1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,-1],[-1,0,1,0,0,1],[-1,0,-1,0,0,1],[0,1,1,0,0,0],[0,1,-1,0,0,0],[0,-1,-1,0,0,0],[0,-1,-1,0,0,0],[0,1,1,0,0,0],[0,-1,1,0,0,0],[0,1,0,-1,1,0],[0,1,0,-1,-1,0],[0,1,0,1,-1,0],[0,1,0,1,1,0],[0,1,0,-1,1,0],[0,1,0,1,-1,0],[0,-1,0,-1,1,0],[0,-1,0,-1,-1,0],[0,-1,0,1,-1,0],[0,-1,0,1,1,0],[0,-1,0,-1,1,0],[0,-1,0,1,-1,0]];function i(n,s){if(typeof n=="function"?(s||(s={}),s.regl=n):s=n,s.length&&(s.positions=s),n=s.regl,!n.hasExtension("ANGLE_instanced_arrays"))throw Error("regl-error2d: `ANGLE_instanced_arrays` extension should be enabled");let c=n._gl,h,v,p,T,l,_,w={color:"black",capSize:5,lineWidth:1,opacity:1,viewport:null,range:null,offset:0,count:0,bounds:null,positions:[],errors:[]},S=[];return T=n.buffer({usage:"dynamic",type:"uint8",data:new Uint8Array(0)}),v=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),p=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),l=n.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)}),_=n.buffer({usage:"static",type:"float",data:a}),d(s),h=n({vert:`
+ precision highp float;
+
+ attribute vec2 position, positionFract;
+ attribute vec4 error;
+ attribute vec4 color;
+
+ attribute vec2 direction, lineOffset, capOffset;
+
+ uniform vec4 viewport;
+ uniform float lineWidth, capSize;
+ uniform vec2 scale, scaleFract, translate, translateFract;
+
+ varying vec4 fragColor;
+
+ void main() {
+ fragColor = color / 255.;
+
+ vec2 pixelOffset = lineWidth * lineOffset + (capSize + lineWidth) * capOffset;
+
+ vec2 dxy = -step(.5, direction.xy) * error.xz + step(direction.xy, vec2(-.5)) * error.yw;
+
+ vec2 position = position + dxy;
+
+ vec2 pos = (position + translate) * scale
+ + (positionFract + translateFract) * scale
+ + (position + translate) * scaleFract
+ + (positionFract + translateFract) * scaleFract;
+
+ pos += pixelOffset / viewport.zw;
+
+ gl_Position = vec4(pos * 2. - 1., 0, 1);
+ }
+ `,frag:`
+ precision highp float;
+
+ varying vec4 fragColor;
+
+ uniform float opacity;
+
+ void main() {
+ gl_FragColor = fragColor;
+ gl_FragColor.a *= opacity;
+ }
+ `,uniforms:{range:n.prop("range"),lineWidth:n.prop("lineWidth"),capSize:n.prop("capSize"),opacity:n.prop("opacity"),scale:n.prop("scale"),translate:n.prop("translate"),scaleFract:n.prop("scaleFract"),translateFract:n.prop("translateFract"),viewport:(y,f)=>[f.viewport.x,f.viewport.y,y.viewportWidth,y.viewportHeight]},attributes:{color:{buffer:T,offset:(y,f)=>f.offset*4,divisor:1},position:{buffer:v,offset:(y,f)=>f.offset*8,divisor:1},positionFract:{buffer:p,offset:(y,f)=>f.offset*8,divisor:1},error:{buffer:l,offset:(y,f)=>f.offset*16,divisor:1},direction:{buffer:_,stride:24,offset:0},lineOffset:{buffer:_,stride:24,offset:8},capOffset:{buffer:_,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:n.prop("viewport")},viewport:n.prop("viewport"),stencil:!1,instances:n.prop("count"),count:a.length}),e(E,{update:d,draw:m,destroy:u,regl:n,gl:c,canvas:c.canvas,groups:S}),E;function E(y){y?d(y):y===null&&u(),m()}function m(y){if(typeof y=="number")return b(y);y&&!Array.isArray(y)&&(y=[y]),n._refresh(),S.forEach((f,P)=>{if(f){if(y&&(y[P]?f.draw=!0:f.draw=!1),!f.draw){f.draw=!0;return}b(P)}})}function b(y){typeof y=="number"&&(y=S[y]),y!=null&&y&&y.count&&y.color&&y.opacity&&y.positions&&y.positions.length>1&&(y.scaleRatio=[y.scale[0]*y.viewport.width,y.scale[1]*y.viewport.height],h(y),y.after&&y.after(y))}function d(y){if(!y)return;y.length!=null?typeof y[0]=="number"&&(y=[{positions:y}]):Array.isArray(y)||(y=[y]);let f=0,P=0;if(E.groups=S=y.map((F,B)=>{let O=S[B];if(F)typeof F=="function"?F={after:F}:typeof F[0]=="number"&&(F={positions:F});else return O;return F=M(F,{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"}),O||(S[B]=O={id:B,scale:null,translate:null,scaleFract:null,translateFract:null,draw:!0},F=e({},w,F)),A(O,F,[{lineWidth:I=>+I*.5,capSize:I=>+I*.5,opacity:parseFloat,errors:I=>(I=t(I),P+=I.length,I),positions:(I,N)=>(I=t(I,"float64"),N.count=Math.floor(I.length/2),N.bounds=g(I,2),N.offset=f,f+=N.count,I)},{color:(I,N)=>{let U=N.count;if(I||(I="transparent"),!Array.isArray(I)||typeof I[0]=="number"){let Q=I;I=Array(U);for(let ue=0;ue<U;ue++)I[ue]=Q}if(I.length<U)throw Error("Not enough colors");let W=new Uint8Array(U*4);for(let Q=0;Q<U;Q++){let ue=x(I[Q],"uint8");W.set(ue,Q*4)}return W},range:(I,N,U)=>{let W=N.bounds;return I||(I=W),N.scale=[1/(I[2]-I[0]),1/(I[3]-I[1])],N.translate=[-I[0],-I[1]],N.scaleFract=o(N.scale),N.translateFract=o(N.translate),I},viewport:I=>{let N;return Array.isArray(I)?N={x:I[0],y:I[1],width:I[2]-I[0],height:I[3]-I[1]}:I?(N={x:I.x||I.left||0,y:I.y||I.top||0},I.right?N.width=I.right-N.x:N.width=I.w||I.width||0,I.bottom?N.height=I.bottom-N.y:N.height=I.h||I.height||0):N={x:0,y:0,width:c.drawingBufferWidth,height:c.drawingBufferHeight},N}}]),O}),f||P){let F=S.reduce((N,U,W)=>N+(U?U.count:0),0),B=new Float64Array(F*2),O=new Uint8Array(F*4),I=new Float32Array(F*4);S.forEach((N,U)=>{if(!N)return;let{positions:W,count:Q,offset:ue,color:se,errors:he}=N;Q&&(O.set(se,ue*4),I.set(he,ue*4),B.set(W,ue*2))});var L=r(B);v(L);var z=o(B,L);p(z),T(O),l(I)}}function u(){v.destroy(),p.destroy(),T.destroy(),l.destroy(),_.destroy()}}}}),Kj=Ye({"node_modules/unquote/index.js"(X,H){var g=/[\'\"]/;H.exports=function(A){return A?(g.test(A.charAt(0))&&(A=A.substr(1)),g.test(A.charAt(A.length-1))&&(A=A.substr(0,A.length-1)),A):""}}}),$5=Ye({"node_modules/css-global-keywords/index.json"(){}}),Q5=Ye({"node_modules/css-system-font-keywords/index.json"(){}}),ek=Ye({"node_modules/css-font-weight-keywords/index.json"(){}}),tk=Ye({"node_modules/css-font-style-keywords/index.json"(){}}),rk=Ye({"node_modules/css-font-stretch-keywords/index.json"(){}}),Jj=Ye({"node_modules/parenthesis/index.js"(X,H){"use strict";function g(M,e){if(typeof M!="string")return[M];var t=[M];typeof e=="string"||Array.isArray(e)?e={brackets:e}:e||(e={});var r=e.brackets?Array.isArray(e.brackets)?e.brackets:[e.brackets]:["{}","[]","()"],o=e.escape||"___",a=!!e.flat;r.forEach(function(s){var c=new RegExp(["\\",s[0],"[^\\",s[0],"\\",s[1],"]*\\",s[1]].join("")),h=[];function v(p,T,l){var _=t.push(p.slice(s[0].length,-s[1].length))-1;return h.push(_),o+_+o}t.forEach(function(p,T){for(var l,_=0;p!=l;)if(l=p,p=p.replace(c,v),_++>1e4)throw Error("References have circular dependency. Please, check them.");t[T]=p}),h=h.reverse(),t=t.map(function(p){return h.forEach(function(T){p=p.replace(new RegExp("(\\"+o+T+"\\"+o+")","g"),s[0]+"$1"+s[1])}),p})});var i=new RegExp("\\"+o+"([0-9]+)\\"+o);function n(s,c,h){for(var v=[],p,T=0;p=i.exec(s);){if(T++>1e4)throw Error("Circular references in parenthesis");v.push(s.slice(0,p.index)),v.push(n(c[p[1]],c)),s=s.slice(p.index+p[0].length)}return v.push(s),v}return a?t:n(t[0],t)}function x(M,e){if(e&&e.flat){var t=e&&e.escape||"___",r=M[0],o;if(!r)return"";for(var a=new RegExp("\\"+t+"([0-9]+)\\"+t),i=0;r!=o;){if(i++>1e4)throw Error("Circular references in "+M);o=r,r=r.replace(a,n)}return r}return M.reduce(function s(c,h){return Array.isArray(h)&&(h=h.reduce(s,"")),c+h},"");function n(s,c){if(M[c]==null)throw Error("Reference "+c+"is undefined");return M[c]}}function A(M,e){return Array.isArray(M)?x(M,e):g(M,e)}A.parse=g,A.stringify=x,H.exports=A}}),$j=Ye({"node_modules/string-split-by/index.js"(X,H){"use strict";var g=Jj();H.exports=function(A,M,e){if(A==null)throw Error("First argument should be a string");if(M==null)throw Error("Separator should be a string or a RegExp");e?(typeof e=="string"||Array.isArray(e))&&(e={ignore:e}):e={},e.escape==null&&(e.escape=!0),e.ignore==null?e.ignore=["[]","()","{}","<>",'""',"''","``","\u201C\u201D","\xAB\xBB"]:(typeof e.ignore=="string"&&(e.ignore=[e.ignore]),e.ignore=e.ignore.map(function(c){return c.length===1&&(c=c+c),c}));var t=g.parse(A,{flat:!0,brackets:e.ignore}),r=t[0],o=r.split(M);if(e.escape){for(var a=[],i=0;i<o.length;i++){var n=o[i],s=o[i+1];n[n.length-1]==="\\"&&n[n.length-2]!=="\\"?(a.push(n+M+s),i++):a.push(n)}o=a}for(var i=0;i<o.length;i++)t[0]=o[i],o[i]=g.stringify(t,{flat:!0});return o}}}),Qj=Ye({"node_modules/css-font-size-keywords/index.json"(){}}),ak=Ye({"node_modules/css-font/lib/util.js"(X,H){"use strict";var g=Qj();H.exports={isSize:function(A){return/^[\d\.]/.test(A)||A.indexOf("/")!==-1||g.indexOf(A)!==-1}}}}),eV=Ye({"node_modules/css-font/parse.js"(X,H){"use strict";var g=Kj(),x=$5(),A=Q5(),M=ek(),e=tk(),t=rk(),r=$j(),o=ak().isSize;H.exports=i;var a=i.cache={};function i(s){if(typeof s!="string")throw new Error("Font argument must be a string.");if(a[s])return a[s];if(s==="")throw new Error("Cannot parse an empty string.");if(A.indexOf(s)!==-1)return a[s]={system:s};for(var c={style:"normal",variant:"normal",weight:"normal",stretch:"normal",lineHeight:"normal",size:"1rem",family:["serif"]},h=r(s,/\s+/),v;v=h.shift();){if(x.indexOf(v)!==-1)return["style","variant","weight","stretch"].forEach(function(T){c[T]=v}),a[s]=c;if(e.indexOf(v)!==-1){c.style=v;continue}if(v==="normal"||v==="small-caps"){c.variant=v;continue}if(t.indexOf(v)!==-1){c.stretch=v;continue}if(M.indexOf(v)!==-1){c.weight=v;continue}if(o(v)){var p=r(v,"/");if(c.size=p[0],p[1]!=null?c.lineHeight=n(p[1]):h[0]==="/"&&(h.shift(),c.lineHeight=n(h.shift())),!h.length)throw new Error("Missing required font-family.");return c.family=r(h.join(" "),/\s*,\s*/).map(g),a[s]=c}throw new Error("Unknown or unsupported font token: "+v)}throw new Error("Missing required font-size.")}function n(s){var c=parseFloat(s);return c.toString()===s?c:s}}}),ik=Ye({"node_modules/css-font/stringify.js"(X,H){"use strict";var g=Ev(),x=ak().isSize,A=s($5()),M=s(Q5()),e=s(ek()),t=s(tk()),r=s(rk()),o={normal:1,"small-caps":1},a={serif:1,"sans-serif":1,monospace:1,cursive:1,fantasy:1,"system-ui":1},i={style:"normal",variant:"normal",weight:"normal",stretch:"normal",size:"1rem",lineHeight:"normal",family:"serif"};H.exports=function(h){if(h=g(h,{style:"style fontstyle fontStyle font-style slope distinction",variant:"variant font-variant fontVariant fontvariant var capitalization",weight:"weight w font-weight fontWeight fontweight",stretch:"stretch font-stretch fontStretch fontstretch width",size:"size s font-size fontSize fontsize height em emSize",lineHeight:"lh line-height lineHeight lineheight leading",family:"font family fontFamily font-family fontfamily type typeface face",system:"system reserved default global"}),h.system)return h.system&&n(h.system,M),h.system;if(n(h.style,t),n(h.variant,o),n(h.weight,e),n(h.stretch,r),h.size==null&&(h.size=i.size),typeof h.size=="number"&&(h.size+="px"),!x)throw Error("Bad size value `"+h.size+"`");h.family||(h.family=i.family),Array.isArray(h.family)&&(h.family.length||(h.family=[i.family]),h.family=h.family.map(function(p){return a[p]?p:'"'+p+'"'}).join(", "));var v=[];return v.push(h.style),h.variant!==h.style&&v.push(h.variant),h.weight!==h.variant&&h.weight!==h.style&&v.push(h.weight),h.stretch!==h.weight&&h.stretch!==h.variant&&h.stretch!==h.style&&v.push(h.stretch),v.push(h.size+(h.lineHeight==null||h.lineHeight==="normal"||h.lineHeight+""=="1"?"":"/"+h.lineHeight)),v.push(h.family),v.filter(Boolean).join(" ")};function n(c,h){if(c&&!h[c]&&!A[c])throw Error("Unknown keyword `"+c+"`");return c}function s(c){for(var h={},v=0;v<c.length;v++)h[c[v]]=1;return h}}}),tV=Ye({"node_modules/css-font/index.js"(X,H){"use strict";H.exports={parse:eV(),stringify:ik()}}}),nk=Ye({"node_modules/regl/dist/regl.unchecked.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():g.createREGL=x()})(X,function(){"use strict";var g=function(Qt,ra){for(var Ta=Object.keys(ra),si=0;si<Ta.length;++si)Qt[Ta[si]]=ra[Ta[si]];return Qt},x=0,A=0,M=5,e=6;function t(Qt,ra){this.id=x++,this.type=Qt,this.data=ra}function r(Qt){return Qt.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function o(Qt){if(Qt.length===0)return[];var ra=Qt.charAt(0),Ta=Qt.charAt(Qt.length-1);if(Qt.length>1&&ra===Ta&&(ra==='"'||ra==="'"))return['"'+r(Qt.substr(1,Qt.length-2))+'"'];var si=/\[(false|true|null|\d+|'[^']*'|"[^"]*")\]/.exec(Qt);if(si)return o(Qt.substr(0,si.index)).concat(o(si[1])).concat(o(Qt.substr(si.index+si[0].length)));var wi=Qt.split(".");if(wi.length===1)return['"'+r(Qt)+'"'];for(var xi=[],bi=0;bi<wi.length;++bi)xi=xi.concat(o(wi[bi]));return xi}function a(Qt){return"["+o(Qt).join("][")+"]"}function i(Qt,ra){return new t(Qt,a(ra+""))}function n(Qt){return typeof Qt=="function"&&!Qt._reglType||Qt instanceof t}function s(Qt,ra){if(typeof Qt=="function")return new t(A,Qt);if(typeof Qt=="number"||typeof Qt=="boolean")return new t(M,Qt);if(Array.isArray(Qt))return new t(e,Qt.map(function(Ta,si){return s(Ta,ra+"["+si+"]")}));if(Qt instanceof t)return Qt}var c={DynamicVariable:t,define:i,isDynamic:n,unbox:s,accessor:a},h={next:typeof requestAnimationFrame=="function"?function(Qt){return requestAnimationFrame(Qt)}:function(Qt){return setTimeout(Qt,16)},cancel:typeof cancelAnimationFrame=="function"?function(Qt){return cancelAnimationFrame(Qt)}:clearTimeout},v=typeof performance<"u"&&performance.now?function(){return performance.now()}:function(){return+new Date};function p(){var Qt={"":0},ra=[""];return{id:function(Ta){var si=Qt[Ta];return si||(si=Qt[Ta]=ra.length,ra.push(Ta),si)},str:function(Ta){return ra[Ta]}}}function T(Qt,ra,Ta){var si=document.createElement("canvas");g(si.style,{border:0,margin:0,padding:0,top:0,left:0,width:"100%",height:"100%"}),Qt.appendChild(si),Qt===document.body&&(si.style.position="absolute",g(Qt.style,{margin:0,padding:0}));function wi(){var Fi=window.innerWidth,cn=window.innerHeight;if(Qt!==document.body){var fn=si.getBoundingClientRect();Fi=fn.right-fn.left,cn=fn.bottom-fn.top}si.width=Ta*Fi,si.height=Ta*cn}var xi;Qt!==document.body&&typeof ResizeObserver=="function"?(xi=new ResizeObserver(function(){setTimeout(wi)}),xi.observe(Qt)):window.addEventListener("resize",wi,!1);function bi(){xi?xi.disconnect():window.removeEventListener("resize",wi),Qt.removeChild(si)}return wi(),{canvas:si,onDestroy:bi}}function l(Qt,ra){function Ta(si){try{return Qt.getContext(si,ra)}catch{return null}}return Ta("webgl")||Ta("experimental-webgl")||Ta("webgl-experimental")}function _(Qt){return typeof Qt.nodeName=="string"&&typeof Qt.appendChild=="function"&&typeof Qt.getBoundingClientRect=="function"}function w(Qt){return typeof Qt.drawArrays=="function"||typeof Qt.drawElements=="function"}function S(Qt){return typeof Qt=="string"?Qt.split():Qt}function E(Qt){return typeof Qt=="string"?document.querySelector(Qt):Qt}function m(Qt){var ra=Qt||{},Ta,si,wi,xi,bi={},Fi=[],cn=[],fn=typeof window>"u"?1:window.devicePixelRatio,Gi=!1,Io={},nn=function(ui){},on=function(){};if(typeof ra=="string"?Ta=document.querySelector(ra):typeof ra=="object"&&(_(ra)?Ta=ra:w(ra)?(xi=ra,wi=xi.canvas):("gl"in ra?xi=ra.gl:"canvas"in ra?wi=E(ra.canvas):"container"in ra&&(si=E(ra.container)),"attributes"in ra&&(bi=ra.attributes),"extensions"in ra&&(Fi=S(ra.extensions)),"optionalExtensions"in ra&&(cn=S(ra.optionalExtensions)),"onDone"in ra&&(nn=ra.onDone),"profile"in ra&&(Gi=!!ra.profile),"pixelRatio"in ra&&(fn=+ra.pixelRatio),"cachedCode"in ra&&(Io=ra.cachedCode))),Ta&&(Ta.nodeName.toLowerCase()==="canvas"?wi=Ta:si=Ta),!xi){if(!wi){var Oi=T(si||document.body,nn,fn);if(!Oi)return null;wi=Oi.canvas,on=Oi.onDestroy}bi.premultipliedAlpha===void 0&&(bi.premultipliedAlpha=!0),xi=l(wi,bi)}return xi?{gl:xi,canvas:wi,container:si,extensions:Fi,optionalExtensions:cn,pixelRatio:fn,profile:Gi,cachedCode:Io,onDone:nn,onDestroy:on}:(on(),nn("webgl not supported, try upgrading your browser or graphics drivers http://get.webgl.org"),null)}function b(Qt,ra){var Ta={};function si(bi){var Fi=bi.toLowerCase(),cn;try{cn=Ta[Fi]=Qt.getExtension(Fi)}catch{}return!!cn}for(var wi=0;wi<ra.extensions.length;++wi){var xi=ra.extensions[wi];if(!si(xi))return ra.onDestroy(),ra.onDone('"'+xi+'" extension is not supported by the current WebGL context, try upgrading your system or a different browser'),null}return ra.optionalExtensions.forEach(si),{extensions:Ta,restore:function(){Object.keys(Ta).forEach(function(bi){if(Ta[bi]&&!si(bi))throw new Error("(regl): error restoring extension "+bi)})}}}function d(Qt,ra){for(var Ta=Array(Qt),si=0;si<Qt;++si)Ta[si]=ra(si);return Ta}var u=5120,y=5121,f=5122,P=5123,L=5124,z=5125,F=5126;function B(Qt){for(var ra=16;ra<=1<<28;ra*=16)if(Qt<=ra)return ra;return 0}function O(Qt){var ra,Ta;return ra=(Qt>65535)<<4,Qt>>>=ra,Ta=(Qt>255)<<3,Qt>>>=Ta,ra|=Ta,Ta=(Qt>15)<<2,Qt>>>=Ta,ra|=Ta,Ta=(Qt>3)<<1,Qt>>>=Ta,ra|=Ta,ra|Qt>>1}function I(){var Qt=d(8,function(){return[]});function ra(xi){var bi=B(xi),Fi=Qt[O(bi)>>2];return Fi.length>0?Fi.pop():new ArrayBuffer(bi)}function Ta(xi){Qt[O(xi.byteLength)>>2].push(xi)}function si(xi,bi){var Fi=null;switch(xi){case u:Fi=new Int8Array(ra(bi),0,bi);break;case y:Fi=new Uint8Array(ra(bi),0,bi);break;case f:Fi=new Int16Array(ra(2*bi),0,bi);break;case P:Fi=new Uint16Array(ra(2*bi),0,bi);break;case L:Fi=new Int32Array(ra(4*bi),0,bi);break;case z:Fi=new Uint32Array(ra(4*bi),0,bi);break;case F:Fi=new Float32Array(ra(4*bi),0,bi);break;default:return null}return Fi.length!==bi?Fi.subarray(0,bi):Fi}function wi(xi){Ta(xi.buffer)}return{alloc:ra,free:Ta,allocType:si,freeType:wi}}var N=I();N.zero=I();var U=3408,W=3410,Q=3411,ue=3412,se=3413,he=3414,G=3415,$=33901,J=33902,Z=3379,re=3386,ne=34921,j=36347,ee=36348,ie=35661,fe=35660,be=34930,Ae=36349,Be=34076,Ie=34024,Ze=7936,at=7937,it=7938,et=35724,lt=34047,Me=36063,ge=34852,ce=3553,ze=34067,tt=34069,nt=33984,Qe=6408,Ct=5126,St=5121,Ot=36160,jt=36053,ur=36064,ar=16384,Cr=function(Qt,ra){var Ta=1;ra.ext_texture_filter_anisotropic&&(Ta=Qt.getParameter(lt));var si=1,wi=1;ra.webgl_draw_buffers&&(si=Qt.getParameter(ge),wi=Qt.getParameter(Me));var xi=!!ra.oes_texture_float;if(xi){var bi=Qt.createTexture();Qt.bindTexture(ce,bi),Qt.texImage2D(ce,0,Qe,1,1,0,Qe,Ct,null);var Fi=Qt.createFramebuffer();if(Qt.bindFramebuffer(Ot,Fi),Qt.framebufferTexture2D(Ot,ur,ce,bi,0),Qt.bindTexture(ce,null),Qt.checkFramebufferStatus(Ot)!==jt)xi=!1;else{Qt.viewport(0,0,1,1),Qt.clearColor(1,0,0,1),Qt.clear(ar);var cn=N.allocType(Ct,4);Qt.readPixels(0,0,1,1,Qe,Ct,cn),Qt.getError()?xi=!1:(Qt.deleteFramebuffer(Fi),Qt.deleteTexture(bi),xi=cn[0]===1),N.freeType(cn)}}var fn=typeof navigator<"u"&&(/MSIE/.test(navigator.userAgent)||/Trident\//.test(navigator.appVersion)||/Edge/.test(navigator.userAgent)),Gi=!0;if(!fn){var Io=Qt.createTexture(),nn=N.allocType(St,36);Qt.activeTexture(nt),Qt.bindTexture(ze,Io),Qt.texImage2D(tt,0,Qe,3,3,0,Qe,St,nn),N.freeType(nn),Qt.bindTexture(ze,null),Qt.deleteTexture(Io),Gi=!Qt.getError()}return{colorBits:[Qt.getParameter(W),Qt.getParameter(Q),Qt.getParameter(ue),Qt.getParameter(se)],depthBits:Qt.getParameter(he),stencilBits:Qt.getParameter(G),subpixelBits:Qt.getParameter(U),extensions:Object.keys(ra).filter(function(on){return!!ra[on]}),maxAnisotropic:Ta,maxDrawbuffers:si,maxColorAttachments:wi,pointSizeDims:Qt.getParameter($),lineWidthDims:Qt.getParameter(J),maxViewportDims:Qt.getParameter(re),maxCombinedTextureUnits:Qt.getParameter(ie),maxCubeMapSize:Qt.getParameter(Be),maxRenderbufferSize:Qt.getParameter(Ie),maxTextureUnits:Qt.getParameter(be),maxTextureSize:Qt.getParameter(Z),maxAttributes:Qt.getParameter(ne),maxVertexUniforms:Qt.getParameter(j),maxVertexTextureUnits:Qt.getParameter(fe),maxVaryingVectors:Qt.getParameter(ee),maxFragmentUniforms:Qt.getParameter(Ae),glsl:Qt.getParameter(et),renderer:Qt.getParameter(at),vendor:Qt.getParameter(Ze),version:Qt.getParameter(it),readFloat:xi,npotTextureCube:Gi}},vr=function(Qt){return Qt instanceof Uint8Array||Qt instanceof Uint16Array||Qt instanceof Uint32Array||Qt instanceof Int8Array||Qt instanceof Int16Array||Qt instanceof Int32Array||Qt instanceof Float32Array||Qt instanceof Float64Array||Qt instanceof Uint8ClampedArray};function _r(Qt){return!!Qt&&typeof Qt=="object"&&Array.isArray(Qt.shape)&&Array.isArray(Qt.stride)&&typeof Qt.offset=="number"&&Qt.shape.length===Qt.stride.length&&(Array.isArray(Qt.data)||vr(Qt.data))}var yt=function(Qt){return Object.keys(Qt).map(function(ra){return Qt[ra]})},Fe={shape:Te,flatten:ke};function Ke(Qt,ra,Ta){for(var si=0;si<ra;++si)Ta[si]=Qt[si]}function Ne(Qt,ra,Ta,si){for(var wi=0,xi=0;xi<ra;++xi)for(var bi=Qt[xi],Fi=0;Fi<Ta;++Fi)si[wi++]=bi[Fi]}function Ee(Qt,ra,Ta,si,wi,xi){for(var bi=xi,Fi=0;Fi<ra;++Fi)for(var cn=Qt[Fi],fn=0;fn<Ta;++fn)for(var Gi=cn[fn],Io=0;Io<si;++Io)wi[bi++]=Gi[Io]}function Ve(Qt,ra,Ta,si,wi){for(var xi=1,bi=Ta+1;bi<ra.length;++bi)xi*=ra[bi];var Fi=ra[Ta];if(ra.length-Ta===4){var cn=ra[Ta+1],fn=ra[Ta+2],Gi=ra[Ta+3];for(bi=0;bi<Fi;++bi)Ee(Qt[bi],cn,fn,Gi,si,wi),wi+=xi}else for(bi=0;bi<Fi;++bi)Ve(Qt[bi],ra,Ta+1,si,wi),wi+=xi}function ke(Qt,ra,Ta,si){var wi=1;if(ra.length)for(var xi=0;xi<ra.length;++xi)wi*=ra[xi];else wi=0;var bi=si||N.allocType(Ta,wi);switch(ra.length){case 0:break;case 1:Ke(Qt,ra[0],bi);break;case 2:Ne(Qt,ra[0],ra[1],bi);break;case 3:Ee(Qt,ra[0],ra[1],ra[2],bi,0);break;default:Ve(Qt,ra,0,bi,0)}return bi}function Te(Qt){for(var ra=[],Ta=Qt;Ta.length;Ta=Ta[0])ra.push(Ta.length);return ra}var Le={"[object Int8Array]":5120,"[object Int16Array]":5122,"[object Int32Array]":5124,"[object Uint8Array]":5121,"[object Uint8ClampedArray]":5121,"[object Uint16Array]":5123,"[object Uint32Array]":5125,"[object Float32Array]":5126,"[object Float64Array]":5121,"[object ArrayBuffer]":5121},rt=5120,dt=5122,xt=5124,It=5121,Bt=5123,Gt=5125,Kt=5126,sr=5126,sa={int8:rt,int16:dt,int32:xt,uint8:It,uint16:Bt,uint32:Gt,float:Kt,float32:sr},Aa=35048,La=35040,ka={dynamic:Aa,stream:La,static:35044},Ga=Fe.flatten,Ma=Fe.shape,Ua=35044,ni=35040,Wt=5121,zt=5126,Vt=[];Vt[5120]=1,Vt[5122]=2,Vt[5124]=4,Vt[5121]=1,Vt[5123]=2,Vt[5125]=4,Vt[5126]=4;function Ut(Qt){return Le[Object.prototype.toString.call(Qt)]|0}function xr(Qt,ra){for(var Ta=0;Ta<ra.length;++Ta)Qt[Ta]=ra[Ta]}function Zr(Qt,ra,Ta,si,wi,xi,bi){for(var Fi=0,cn=0;cn<Ta;++cn)for(var fn=0;fn<si;++fn)Qt[Fi++]=ra[wi*cn+xi*fn+bi]}function pa(Qt,ra,Ta,si){var wi=0,xi={};function bi(ui){this.id=wi++,this.buffer=Qt.createBuffer(),this.type=ui,this.usage=Ua,this.byteLength=0,this.dimension=1,this.dtype=Wt,this.persistentData=null,Ta.profile&&(this.stats={size:0})}bi.prototype.bind=function(){Qt.bindBuffer(this.type,this.buffer)},bi.prototype.destroy=function(){nn(this)};var Fi=[];function cn(ui,Mi){var tn=Fi.pop();return tn||(tn=new bi(ui)),tn.bind(),Io(tn,Mi,ni,0,1,!1),tn}function fn(ui){Fi.push(ui)}function Gi(ui,Mi,tn){ui.byteLength=Mi.byteLength,Qt.bufferData(ui.type,Mi,tn)}function Io(ui,Mi,tn,pn,qi,Dn){var bn;if(ui.usage=tn,Array.isArray(Mi)){if(ui.dtype=pn||zt,Mi.length>0){var _o;if(Array.isArray(Mi[0])){bn=Ma(Mi);for(var Zi=1,Ui=1;Ui<bn.length;++Ui)Zi*=bn[Ui];ui.dimension=Zi,_o=Ga(Mi,bn,ui.dtype),Gi(ui,_o,tn),Dn?ui.persistentData=_o:N.freeType(_o)}else if(typeof Mi[0]=="number"){ui.dimension=qi;var Zn=N.allocType(ui.dtype,Mi.length);xr(Zn,Mi),Gi(ui,Zn,tn),Dn?ui.persistentData=Zn:N.freeType(Zn)}else vr(Mi[0])&&(ui.dimension=Mi[0].length,ui.dtype=pn||Ut(Mi[0])||zt,_o=Ga(Mi,[Mi.length,Mi[0].length],ui.dtype),Gi(ui,_o,tn),Dn?ui.persistentData=_o:N.freeType(_o))}}else if(vr(Mi))ui.dtype=pn||Ut(Mi),ui.dimension=qi,Gi(ui,Mi,tn),Dn&&(ui.persistentData=new Uint8Array(new Uint8Array(Mi.buffer)));else if(_r(Mi)){bn=Mi.shape;var Rn=Mi.stride,xn=Mi.offset,dn=0,jn=0,Ro=0,rs=0;bn.length===1?(dn=bn[0],jn=1,Ro=Rn[0],rs=0):bn.length===2&&(dn=bn[0],jn=bn[1],Ro=Rn[0],rs=Rn[1]),ui.dtype=pn||Ut(Mi.data)||zt,ui.dimension=jn;var wn=N.allocType(ui.dtype,dn*jn);Zr(wn,Mi.data,dn,jn,Ro,rs,xn),Gi(ui,wn,tn),Dn?ui.persistentData=wn:N.freeType(wn)}else Mi instanceof ArrayBuffer&&(ui.dtype=Wt,ui.dimension=qi,Gi(ui,Mi,tn),Dn&&(ui.persistentData=new Uint8Array(new Uint8Array(Mi))))}function nn(ui){ra.bufferCount--,si(ui);var Mi=ui.buffer;Qt.deleteBuffer(Mi),ui.buffer=null,delete xi[ui.id]}function on(ui,Mi,tn,pn){ra.bufferCount++;var qi=new bi(Mi);xi[qi.id]=qi;function Dn(Zi){var Ui=Ua,Zn=null,Rn=0,xn=0,dn=1;return Array.isArray(Zi)||vr(Zi)||_r(Zi)||Zi instanceof ArrayBuffer?Zn=Zi:typeof Zi=="number"?Rn=Zi|0:Zi&&("data"in Zi&&(Zn=Zi.data),"usage"in Zi&&(Ui=ka[Zi.usage]),"type"in Zi&&(xn=sa[Zi.type]),"dimension"in Zi&&(dn=Zi.dimension|0),"length"in Zi&&(Rn=Zi.length|0)),qi.bind(),Zn?Io(qi,Zn,Ui,xn,dn,pn):(Rn&&Qt.bufferData(qi.type,Rn,Ui),qi.dtype=xn||Wt,qi.usage=Ui,qi.dimension=dn,qi.byteLength=Rn),Ta.profile&&(qi.stats.size=qi.byteLength*Vt[qi.dtype]),Dn}function bn(Zi,Ui){Qt.bufferSubData(qi.type,Ui,Zi)}function _o(Zi,Ui){var Zn=(Ui||0)|0,Rn;if(qi.bind(),vr(Zi)||Zi instanceof ArrayBuffer)bn(Zi,Zn);else if(Array.isArray(Zi)){if(Zi.length>0){if(typeof Zi[0]=="number"){var xn=N.allocType(qi.dtype,Zi.length);xr(xn,Zi),bn(xn,Zn),N.freeType(xn)}else if(Array.isArray(Zi[0])||vr(Zi[0])){Rn=Ma(Zi);var dn=Ga(Zi,Rn,qi.dtype);bn(dn,Zn),N.freeType(dn)}}}else if(_r(Zi)){Rn=Zi.shape;var jn=Zi.stride,Ro=0,rs=0,wn=0,oo=0;Rn.length===1?(Ro=Rn[0],rs=1,wn=jn[0],oo=0):Rn.length===2&&(Ro=Rn[0],rs=Rn[1],wn=jn[0],oo=jn[1]);var Xo=Array.isArray(Zi.data)?qi.dtype:Ut(Zi.data),os=N.allocType(Xo,Ro*rs);Zr(os,Zi.data,Ro,rs,wn,oo,Zi.offset),bn(os,Zn),N.freeType(os)}return Dn}return tn||Dn(ui),Dn._reglType="buffer",Dn._buffer=qi,Dn.subdata=_o,Ta.profile&&(Dn.stats=qi.stats),Dn.destroy=function(){nn(qi)},Dn}function Oi(){yt(xi).forEach(function(ui){ui.buffer=Qt.createBuffer(),Qt.bindBuffer(ui.type,ui.buffer),Qt.bufferData(ui.type,ui.persistentData||ui.byteLength,ui.usage)})}return Ta.profile&&(ra.getTotalBufferSize=function(){var ui=0;return Object.keys(xi).forEach(function(Mi){ui+=xi[Mi].stats.size}),ui}),{create:on,createStream:cn,destroyStream:fn,clear:function(){yt(xi).forEach(nn),Fi.forEach(nn)},getBuffer:function(ui){return ui&&ui._buffer instanceof bi?ui._buffer:null},restore:Oi,_initBuffer:Io}}var Xr=0,Ea=0,Fa=1,qa=1,ya=4,$a=4,mt={points:Xr,point:Ea,lines:Fa,line:qa,triangles:ya,triangle:$a,"line loop":2,"line strip":3,"triangle strip":5,"triangle fan":6},gt=0,Er=1,kr=4,br=5120,Tr=5121,Mr=5122,Fr=5123,Lr=5124,Jr=5125,oa=34963,ca=35040,kt=35044;function ir(Qt,ra,Ta,si){var wi={},xi=0,bi={uint8:Tr,uint16:Fr};ra.oes_element_index_uint&&(bi.uint32=Jr);function Fi(Oi){this.id=xi++,wi[this.id]=this,this.buffer=Oi,this.primType=kr,this.vertCount=0,this.type=0}Fi.prototype.bind=function(){this.buffer.bind()};var cn=[];function fn(Oi){var ui=cn.pop();return ui||(ui=new Fi(Ta.create(null,oa,!0,!1)._buffer)),Io(ui,Oi,ca,-1,-1,0,0),ui}function Gi(Oi){cn.push(Oi)}function Io(Oi,ui,Mi,tn,pn,qi,Dn){Oi.buffer.bind();var bn;if(ui){var _o=Dn;!Dn&&(!vr(ui)||_r(ui)&&!vr(ui.data))&&(_o=ra.oes_element_index_uint?Jr:Fr),Ta._initBuffer(Oi.buffer,ui,Mi,_o,3)}else Qt.bufferData(oa,qi,Mi),Oi.buffer.dtype=bn||Tr,Oi.buffer.usage=Mi,Oi.buffer.dimension=3,Oi.buffer.byteLength=qi;if(bn=Dn,!Dn){switch(Oi.buffer.dtype){case Tr:case br:bn=Tr;break;case Fr:case Mr:bn=Fr;break;case Jr:case Lr:bn=Jr;break;default:}Oi.buffer.dtype=bn}Oi.type=bn;var Zi=pn;Zi<0&&(Zi=Oi.buffer.byteLength,bn===Fr?Zi>>=1:bn===Jr&&(Zi>>=2)),Oi.vertCount=Zi;var Ui=tn;if(tn<0){Ui=kr;var Zn=Oi.buffer.dimension;Zn===1&&(Ui=gt),Zn===2&&(Ui=Er),Zn===3&&(Ui=kr)}Oi.primType=Ui}function nn(Oi){si.elementsCount--,delete wi[Oi.id],Oi.buffer.destroy(),Oi.buffer=null}function on(Oi,ui){var Mi=Ta.create(null,oa,!0),tn=new Fi(Mi._buffer);si.elementsCount++;function pn(qi){if(!qi)Mi(),tn.primType=kr,tn.vertCount=0,tn.type=Tr;else if(typeof qi=="number")Mi(qi),tn.primType=kr,tn.vertCount=qi|0,tn.type=Tr;else{var Dn=null,bn=kt,_o=-1,Zi=-1,Ui=0,Zn=0;Array.isArray(qi)||vr(qi)||_r(qi)?Dn=qi:("data"in qi&&(Dn=qi.data),"usage"in qi&&(bn=ka[qi.usage]),"primitive"in qi&&(_o=mt[qi.primitive]),"count"in qi&&(Zi=qi.count|0),"type"in qi&&(Zn=bi[qi.type]),"length"in qi?Ui=qi.length|0:(Ui=Zi,Zn===Fr||Zn===Mr?Ui*=2:(Zn===Jr||Zn===Lr)&&(Ui*=4))),Io(tn,Dn,bn,_o,Zi,Ui,Zn)}return pn}return pn(Oi),pn._reglType="elements",pn._elements=tn,pn.subdata=function(qi,Dn){return Mi.subdata(qi,Dn),pn},pn.destroy=function(){nn(tn)},pn}return{create:on,createStream:fn,destroyStream:Gi,getElements:function(Oi){return typeof Oi=="function"&&Oi._elements instanceof Fi?Oi._elements:null},clear:function(){yt(wi).forEach(nn)}}}var mr=new Float32Array(1),$r=new Uint32Array(mr.buffer),ma=5123;function Ba(Qt){for(var ra=N.allocType(ma,Qt.length),Ta=0;Ta<Qt.length;++Ta)if(isNaN(Qt[Ta]))ra[Ta]=65535;else if(Qt[Ta]===1/0)ra[Ta]=31744;else if(Qt[Ta]===-1/0)ra[Ta]=64512;else{mr[0]=Qt[Ta];var si=$r[0],wi=si>>>31<<15,xi=(si<<1>>>24)-127,bi=si>>13&1023;if(xi<-24)ra[Ta]=wi;else if(xi<-14){var Fi=-14-xi;ra[Ta]=wi+(bi+1024>>Fi)}else xi>15?ra[Ta]=wi+31744:ra[Ta]=wi+(xi+15<<10)+bi}return ra}function Ca(Qt){return Array.isArray(Qt)||vr(Qt)}var da=34467,Sa=3553,Ti=34067,ai=34069,an=6408,sn=6406,Mn=6407,On=6409,$n=6410,Cn=32854,Lo=32855,Xi=36194,Jo=32819,zo=32820,as=33635,Pn=34042,go=6402,In=34041,Do=35904,Ho=35906,Qo=36193,Xn=33776,po=33777,ys=33778,Is=33779,Fs=35986,$o=35987,fi=34798,mn=35840,ol=35841,Os=35842,so=35843,Ns=36196,fs=5121,al=5123,vl=5125,ji=5126,To=10242,Yn=10243,_s=10497,Yo=33071,Nn=33648,Wl=10240,Zu=10241,ml=9728,Bu=9729,El=9984,qs=9985,Jl=9986,Nu=9987,Ic=33170,Xu=4352,Th=4353,bf=4354,Rs=34046,Yc=3317,If=37440,Zl=37441,yl=37443,oc=37444,_c=33984,Zs=[El,Jl,qs,Nu],_l=[0,On,$n,Mn,an],Bs={};Bs[On]=Bs[sn]=Bs[go]=1,Bs[In]=Bs[$n]=2,Bs[Mn]=Bs[Do]=3,Bs[an]=Bs[Ho]=4;function $s(Qt){return"[object "+Qt+"]"}var sc=$s("HTMLCanvasElement"),zl=$s("OffscreenCanvas"),Yu=$s("CanvasRenderingContext2D"),Qs=$s("ImageBitmap"),fp=$s("HTMLImageElement"),es=$s("HTMLVideoElement"),Wh=Object.keys(Le).concat([sc,zl,Yu,Qs,fp,es]),Ss=[];Ss[fs]=1,Ss[ji]=4,Ss[Qo]=2,Ss[al]=2,Ss[vl]=4;var So=[];So[Cn]=2,So[Lo]=2,So[Xi]=2,So[In]=4,So[Xn]=.5,So[po]=.5,So[ys]=1,So[Is]=1,So[Fs]=.5,So[$o]=1,So[fi]=1,So[mn]=.5,So[ol]=.25,So[Os]=.5,So[so]=.25,So[Ns]=.5;function hf(Qt){return Array.isArray(Qt)&&(Qt.length===0||typeof Qt[0]=="number")}function Ku(Qt){if(!Array.isArray(Qt))return!1;var ra=Qt.length;return!(ra===0||!Ca(Qt[0]))}function cu(Qt){return Object.prototype.toString.call(Qt)}function Zf(Qt){return cu(Qt)===sc}function Rc(Qt){return cu(Qt)===zl}function pf(Qt){return cu(Qt)===Yu}function Fl(Qt){return cu(Qt)===Qs}function lh(Qt){return cu(Qt)===fp}function Xf(Qt){return cu(Qt)===es}function Rf(Qt){if(!Qt)return!1;var ra=cu(Qt);return Wh.indexOf(ra)>=0?!0:hf(Qt)||Ku(Qt)||_r(Qt)}function Kc(Qt){return Le[Object.prototype.toString.call(Qt)]|0}function Yf(Qt,ra){var Ta=ra.length;switch(Qt.type){case fs:case al:case vl:case ji:var si=N.allocType(Qt.type,Ta);si.set(ra),Qt.data=si;break;case Qo:Qt.data=Ba(ra);break;default:}}function uh(Qt,ra){return N.allocType(Qt.type===Qo?ji:Qt.type,ra)}function Ju(Qt,ra){Qt.type===Qo?(Qt.data=Ba(ra),N.freeType(ra)):Qt.data=ra}function Df(Qt,ra,Ta,si,wi,xi){for(var bi=Qt.width,Fi=Qt.height,cn=Qt.channels,fn=bi*Fi*cn,Gi=uh(Qt,fn),Io=0,nn=0;nn<Fi;++nn)for(var on=0;on<bi;++on)for(var Oi=0;Oi<cn;++Oi)Gi[Io++]=ra[Ta*on+si*nn+wi*Oi+xi];Ju(Qt,Gi)}function Dc(Qt,ra,Ta,si,wi,xi){var bi;if(typeof So[Qt]<"u"?bi=So[Qt]:bi=Bs[Qt]*Ss[ra],xi&&(bi*=6),wi){for(var Fi=0,cn=Ta;cn>=1;)Fi+=bi*cn*cn,cn/=2;return Fi}else return bi*Ta*si}function Jc(Qt,ra,Ta,si,wi,xi,bi){var Fi={"don't care":Xu,"dont care":Xu,nice:bf,fast:Th},cn={repeat:_s,clamp:Yo,mirror:Nn},fn={nearest:ml,linear:Bu},Gi=g({mipmap:Nu,"nearest mipmap nearest":El,"linear mipmap nearest":qs,"nearest mipmap linear":Jl,"linear mipmap linear":Nu},fn),Io={none:0,browser:oc},nn={uint8:fs,rgba4:Jo,rgb565:as,"rgb5 a1":zo},on={alpha:sn,luminance:On,"luminance alpha":$n,rgb:Mn,rgba:an,rgba4:Cn,"rgb5 a1":Lo,rgb565:Xi},Oi={};ra.ext_srgb&&(on.srgb=Do,on.srgba=Ho),ra.oes_texture_float&&(nn.float32=nn.float=ji),ra.oes_texture_half_float&&(nn.float16=nn["half float"]=Qo),ra.webgl_depth_texture&&(g(on,{depth:go,"depth stencil":In}),g(nn,{uint16:al,uint32:vl,"depth stencil":Pn})),ra.webgl_compressed_texture_s3tc&&g(Oi,{"rgb s3tc dxt1":Xn,"rgba s3tc dxt1":po,"rgba s3tc dxt3":ys,"rgba s3tc dxt5":Is}),ra.webgl_compressed_texture_atc&&g(Oi,{"rgb atc":Fs,"rgba atc explicit alpha":$o,"rgba atc interpolated alpha":fi}),ra.webgl_compressed_texture_pvrtc&&g(Oi,{"rgb pvrtc 4bppv1":mn,"rgb pvrtc 2bppv1":ol,"rgba pvrtc 4bppv1":Os,"rgba pvrtc 2bppv1":so}),ra.webgl_compressed_texture_etc1&&(Oi["rgb etc1"]=Ns);var ui=Array.prototype.slice.call(Qt.getParameter(da));Object.keys(Oi).forEach(function(He){var st=Oi[He];ui.indexOf(st)>=0&&(on[He]=st)});var Mi=Object.keys(on);Ta.textureFormats=Mi;var tn=[];Object.keys(on).forEach(function(He){var st=on[He];tn[st]=He});var pn=[];Object.keys(nn).forEach(function(He){var st=nn[He];pn[st]=He});var qi=[];Object.keys(fn).forEach(function(He){var st=fn[He];qi[st]=He});var Dn=[];Object.keys(Gi).forEach(function(He){var st=Gi[He];Dn[st]=He});var bn=[];Object.keys(cn).forEach(function(He){var st=cn[He];bn[st]=He});var _o=Mi.reduce(function(He,st){var Et=on[st];return Et===On||Et===sn||Et===On||Et===$n||Et===go||Et===In||ra.ext_srgb&&(Et===Do||Et===Ho)?He[Et]=Et:Et===Lo||st.indexOf("rgba")>=0?He[Et]=an:He[Et]=Mn,He},{});function Zi(){this.internalformat=an,this.format=an,this.type=fs,this.compressed=!1,this.premultiplyAlpha=!1,this.flipY=!1,this.unpackAlignment=1,this.colorSpace=oc,this.width=0,this.height=0,this.channels=0}function Ui(He,st){He.internalformat=st.internalformat,He.format=st.format,He.type=st.type,He.compressed=st.compressed,He.premultiplyAlpha=st.premultiplyAlpha,He.flipY=st.flipY,He.unpackAlignment=st.unpackAlignment,He.colorSpace=st.colorSpace,He.width=st.width,He.height=st.height,He.channels=st.channels}function Zn(He,st){if(!(typeof st!="object"||!st)){if("premultiplyAlpha"in st&&(He.premultiplyAlpha=st.premultiplyAlpha),"flipY"in st&&(He.flipY=st.flipY),"alignment"in st&&(He.unpackAlignment=st.alignment),"colorSpace"in st&&(He.colorSpace=Io[st.colorSpace]),"type"in st){var Et=st.type;He.type=nn[Et]}var Ht=He.width,yr=He.height,Ir=He.channels,wr=!1;"shape"in st?(Ht=st.shape[0],yr=st.shape[1],st.shape.length===3&&(Ir=st.shape[2],wr=!0)):("radius"in st&&(Ht=yr=st.radius),"width"in st&&(Ht=st.width),"height"in st&&(yr=st.height),"channels"in st&&(Ir=st.channels,wr=!0)),He.width=Ht|0,He.height=yr|0,He.channels=Ir|0;var qt=!1;if("format"in st){var tr=st.format,dr=He.internalformat=on[tr];He.format=_o[dr],tr in nn&&("type"in st||(He.type=nn[tr])),tr in Oi&&(He.compressed=!0),qt=!0}!wr&&qt?He.channels=Bs[He.format]:wr&&!qt&&He.channels!==_l[He.format]&&(He.format=He.internalformat=_l[He.channels])}}function Rn(He){Qt.pixelStorei(If,He.flipY),Qt.pixelStorei(Zl,He.premultiplyAlpha),Qt.pixelStorei(yl,He.colorSpace),Qt.pixelStorei(Yc,He.unpackAlignment)}function xn(){Zi.call(this),this.xOffset=0,this.yOffset=0,this.data=null,this.needsFree=!1,this.element=null,this.needsCopy=!1}function dn(He,st){var Et=null;if(Rf(st)?Et=st:st&&(Zn(He,st),"x"in st&&(He.xOffset=st.x|0),"y"in st&&(He.yOffset=st.y|0),Rf(st.data)&&(Et=st.data)),st.copy){var Ht=wi.viewportWidth,yr=wi.viewportHeight;He.width=He.width||Ht-He.xOffset,He.height=He.height||yr-He.yOffset,He.needsCopy=!0}else if(!Et)He.width=He.width||1,He.height=He.height||1,He.channels=He.channels||4;else if(vr(Et))He.channels=He.channels||4,He.data=Et,!("type"in st)&&He.type===fs&&(He.type=Kc(Et));else if(hf(Et))He.channels=He.channels||4,Yf(He,Et),He.alignment=1,He.needsFree=!0;else if(_r(Et)){var Ir=Et.data;!Array.isArray(Ir)&&He.type===fs&&(He.type=Kc(Ir));var wr=Et.shape,qt=Et.stride,tr,dr,Pr,Vr,Hr,aa;wr.length===3?(Pr=wr[2],aa=qt[2]):(Pr=1,aa=1),tr=wr[0],dr=wr[1],Vr=qt[0],Hr=qt[1],He.alignment=1,He.width=tr,He.height=dr,He.channels=Pr,He.format=He.internalformat=_l[Pr],He.needsFree=!0,Df(He,Ir,Vr,Hr,aa,Et.offset)}else if(Zf(Et)||Rc(Et)||pf(Et))Zf(Et)||Rc(Et)?He.element=Et:He.element=Et.canvas,He.width=He.element.width,He.height=He.element.height,He.channels=4;else if(Fl(Et))He.element=Et,He.width=Et.width,He.height=Et.height,He.channels=4;else if(lh(Et))He.element=Et,He.width=Et.naturalWidth,He.height=Et.naturalHeight,He.channels=4;else if(Xf(Et))He.element=Et,He.width=Et.videoWidth,He.height=Et.videoHeight,He.channels=4;else if(Ku(Et)){var Qr=He.width||Et[0].length,Gr=He.height||Et.length,ia=He.channels;Ca(Et[0][0])?ia=ia||Et[0][0].length:ia=ia||1;for(var Ur=Fe.shape(Et),wa=1,Oa=0;Oa<Ur.length;++Oa)wa*=Ur[Oa];var ri=uh(He,wa);Fe.flatten(Et,Ur,"",ri),Ju(He,ri),He.alignment=1,He.width=Qr,He.height=Gr,He.channels=ia,He.format=He.internalformat=_l[ia],He.needsFree=!0}He.type===ji||He.type}function jn(He,st,Et){var Ht=He.element,yr=He.data,Ir=He.internalformat,wr=He.format,qt=He.type,tr=He.width,dr=He.height;Rn(He),Ht?Qt.texImage2D(st,Et,wr,wr,qt,Ht):He.compressed?Qt.compressedTexImage2D(st,Et,Ir,tr,dr,0,yr):He.needsCopy?(si(),Qt.copyTexImage2D(st,Et,wr,He.xOffset,He.yOffset,tr,dr,0)):Qt.texImage2D(st,Et,wr,tr,dr,0,wr,qt,yr||null)}function Ro(He,st,Et,Ht,yr){var Ir=He.element,wr=He.data,qt=He.internalformat,tr=He.format,dr=He.type,Pr=He.width,Vr=He.height;Rn(He),Ir?Qt.texSubImage2D(st,yr,Et,Ht,tr,dr,Ir):He.compressed?Qt.compressedTexSubImage2D(st,yr,Et,Ht,qt,Pr,Vr,wr):He.needsCopy?(si(),Qt.copyTexSubImage2D(st,yr,Et,Ht,He.xOffset,He.yOffset,Pr,Vr)):Qt.texSubImage2D(st,yr,Et,Ht,Pr,Vr,tr,dr,wr)}var rs=[];function wn(){return rs.pop()||new xn}function oo(He){He.needsFree&&N.freeType(He.data),xn.call(He),rs.push(He)}function Xo(){Zi.call(this),this.genMipmaps=!1,this.mipmapHint=Xu,this.mipmask=0,this.images=Array(16)}function os(He,st,Et){var Ht=He.images[0]=wn();He.mipmask=1,Ht.width=He.width=st,Ht.height=He.height=Et,Ht.channels=He.channels=4}function As(He,st){var Et=null;if(Rf(st))Et=He.images[0]=wn(),Ui(Et,He),dn(Et,st),He.mipmask=1;else if(Zn(He,st),Array.isArray(st.mipmap))for(var Ht=st.mipmap,yr=0;yr<Ht.length;++yr)Et=He.images[yr]=wn(),Ui(Et,He),Et.width>>=yr,Et.height>>=yr,dn(Et,Ht[yr]),He.mipmask|=1<<yr;else Et=He.images[0]=wn(),Ui(Et,He),dn(Et,st),He.mipmask=1;Ui(He,He.images[0]),He.compressed&&(He.internalformat===Xn||He.internalformat===po||He.internalformat===ys||He.internalformat)}function $l(He,st){for(var Et=He.images,Ht=0;Ht<Et.length;++Ht){if(!Et[Ht])return;jn(Et[Ht],st,Ht)}}var Uc=[];function Ws(){var He=Uc.pop()||new Xo;Zi.call(He),He.mipmask=0;for(var st=0;st<16;++st)He.images[st]=null;return He}function jc(He){for(var st=He.images,Et=0;Et<st.length;++Et)st[Et]&&oo(st[Et]),st[Et]=null;Uc.push(He)}function Ol(){this.minFilter=ml,this.magFilter=ml,this.wrapS=Yo,this.wrapT=Yo,this.anisotropic=1,this.genMipmaps=!1,this.mipmapHint=Xu}function vc(He,st){if("min"in st){var Et=st.min;He.minFilter=Gi[Et],Zs.indexOf(He.minFilter)>=0&&!("faces"in st)&&(He.genMipmaps=!0)}if("mag"in st){var Ht=st.mag;He.magFilter=fn[Ht]}var yr=He.wrapS,Ir=He.wrapT;if("wrap"in st){var wr=st.wrap;typeof wr=="string"?yr=Ir=cn[wr]:Array.isArray(wr)&&(yr=cn[wr[0]],Ir=cn[wr[1]])}else{if("wrapS"in st){var qt=st.wrapS;yr=cn[qt]}if("wrapT"in st){var tr=st.wrapT;Ir=cn[tr]}}if(He.wrapS=yr,He.wrapT=Ir,"anisotropic"in st){var dr=st.anisotropic;He.anisotropic=st.anisotropic}if("mipmap"in st){var Pr=!1;switch(typeof st.mipmap){case"string":He.mipmapHint=Fi[st.mipmap],He.genMipmaps=!0,Pr=!0;break;case"boolean":Pr=He.genMipmaps=st.mipmap;break;case"object":He.genMipmaps=!1,Pr=!0;break;default:}Pr&&!("min"in st)&&(He.minFilter=El)}}function mc(He,st){Qt.texParameteri(st,Zu,He.minFilter),Qt.texParameteri(st,Wl,He.magFilter),Qt.texParameteri(st,To,He.wrapS),Qt.texParameteri(st,Yn,He.wrapT),ra.ext_texture_filter_anisotropic&&Qt.texParameteri(st,Rs,He.anisotropic),He.genMipmaps&&(Qt.hint(Ic,He.mipmapHint),Qt.generateMipmap(st))}var rf=0,Yl={},Mc=Ta.maxTextureUnits,Vc=Array(Mc).map(function(){return null});function Ds(He){Zi.call(this),this.mipmask=0,this.internalformat=an,this.id=rf++,this.refCount=1,this.target=He,this.texture=Qt.createTexture(),this.unit=-1,this.bindCount=0,this.texInfo=new Ol,bi.profile&&(this.stats={size:0})}function af(He){Qt.activeTexture(_c),Qt.bindTexture(He.target,He.texture)}function Cs(){var He=Vc[0];He?Qt.bindTexture(He.target,He.texture):Qt.bindTexture(Sa,null)}function ve(He){var st=He.texture,Et=He.unit,Ht=He.target;Et>=0&&(Qt.activeTexture(_c+Et),Qt.bindTexture(Ht,null),Vc[Et]=null),Qt.deleteTexture(st),He.texture=null,He.params=null,He.pixels=null,He.refCount=0,delete Yl[He.id],xi.textureCount--}g(Ds.prototype,{bind:function(){var He=this;He.bindCount+=1;var st=He.unit;if(st<0){for(var Et=0;Et<Mc;++Et){var Ht=Vc[Et];if(Ht){if(Ht.bindCount>0)continue;Ht.unit=-1}Vc[Et]=He,st=Et;break}st>=Mc,bi.profile&&xi.maxTextureUnits<st+1&&(xi.maxTextureUnits=st+1),He.unit=st,Qt.activeTexture(_c+st),Qt.bindTexture(He.target,He.texture)}return st},unbind:function(){this.bindCount-=1},decRef:function(){--this.refCount<=0&&ve(this)}});function K(He,st){var Et=new Ds(Sa);Yl[Et.id]=Et,xi.textureCount++;function Ht(wr,qt){var tr=Et.texInfo;Ol.call(tr);var dr=Ws();return typeof wr=="number"?typeof qt=="number"?os(dr,wr|0,qt|0):os(dr,wr|0,wr|0):wr?(vc(tr,wr),As(dr,wr)):os(dr,1,1),tr.genMipmaps&&(dr.mipmask=(dr.width<<1)-1),Et.mipmask=dr.mipmask,Ui(Et,dr),Et.internalformat=dr.internalformat,Ht.width=dr.width,Ht.height=dr.height,af(Et),$l(dr,Sa),mc(tr,Sa),Cs(),jc(dr),bi.profile&&(Et.stats.size=Dc(Et.internalformat,Et.type,dr.width,dr.height,tr.genMipmaps,!1)),Ht.format=tn[Et.internalformat],Ht.type=pn[Et.type],Ht.mag=qi[tr.magFilter],Ht.min=Dn[tr.minFilter],Ht.wrapS=bn[tr.wrapS],Ht.wrapT=bn[tr.wrapT],Ht}function yr(wr,qt,tr,dr){var Pr=qt|0,Vr=tr|0,Hr=dr|0,aa=wn();return Ui(aa,Et),aa.width=0,aa.height=0,dn(aa,wr),aa.width=aa.width||(Et.width>>Hr)-Pr,aa.height=aa.height||(Et.height>>Hr)-Vr,af(Et),Ro(aa,Sa,Pr,Vr,Hr),Cs(),oo(aa),Ht}function Ir(wr,qt){var tr=wr|0,dr=qt|0||tr;if(tr===Et.width&&dr===Et.height)return Ht;Ht.width=Et.width=tr,Ht.height=Et.height=dr,af(Et);for(var Pr=0;Et.mipmask>>Pr;++Pr){var Vr=tr>>Pr,Hr=dr>>Pr;if(!Vr||!Hr)break;Qt.texImage2D(Sa,Pr,Et.format,Vr,Hr,0,Et.format,Et.type,null)}return Cs(),bi.profile&&(Et.stats.size=Dc(Et.internalformat,Et.type,tr,dr,!1,!1)),Ht}return Ht(He,st),Ht.subimage=yr,Ht.resize=Ir,Ht._reglType="texture2d",Ht._texture=Et,bi.profile&&(Ht.stats=Et.stats),Ht.destroy=function(){Et.decRef()},Ht}function ye(He,st,Et,Ht,yr,Ir){var wr=new Ds(Ti);Yl[wr.id]=wr,xi.cubeCount++;var qt=new Array(6);function tr(Vr,Hr,aa,Qr,Gr,ia){var Ur,wa=wr.texInfo;for(Ol.call(wa),Ur=0;Ur<6;++Ur)qt[Ur]=Ws();if(typeof Vr=="number"||!Vr){var Oa=Vr|0||1;for(Ur=0;Ur<6;++Ur)os(qt[Ur],Oa,Oa)}else if(typeof Vr=="object")if(Hr)As(qt[0],Vr),As(qt[1],Hr),As(qt[2],aa),As(qt[3],Qr),As(qt[4],Gr),As(qt[5],ia);else if(vc(wa,Vr),Zn(wr,Vr),"faces"in Vr){var ri=Vr.faces;for(Ur=0;Ur<6;++Ur)Ui(qt[Ur],wr),As(qt[Ur],ri[Ur])}else for(Ur=0;Ur<6;++Ur)As(qt[Ur],Vr);for(Ui(wr,qt[0]),wa.genMipmaps?wr.mipmask=(qt[0].width<<1)-1:wr.mipmask=qt[0].mipmask,wr.internalformat=qt[0].internalformat,tr.width=qt[0].width,tr.height=qt[0].height,af(wr),Ur=0;Ur<6;++Ur)$l(qt[Ur],ai+Ur);for(mc(wa,Ti),Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,wa.genMipmaps,!0)),tr.format=tn[wr.internalformat],tr.type=pn[wr.type],tr.mag=qi[wa.magFilter],tr.min=Dn[wa.minFilter],tr.wrapS=bn[wa.wrapS],tr.wrapT=bn[wa.wrapT],Ur=0;Ur<6;++Ur)jc(qt[Ur]);return tr}function dr(Vr,Hr,aa,Qr,Gr){var ia=aa|0,Ur=Qr|0,wa=Gr|0,Oa=wn();return Ui(Oa,wr),Oa.width=0,Oa.height=0,dn(Oa,Hr),Oa.width=Oa.width||(wr.width>>wa)-ia,Oa.height=Oa.height||(wr.height>>wa)-Ur,af(wr),Ro(Oa,ai+Vr,ia,Ur,wa),Cs(),oo(Oa),tr}function Pr(Vr){var Hr=Vr|0;if(Hr!==wr.width){tr.width=wr.width=Hr,tr.height=wr.height=Hr,af(wr);for(var aa=0;aa<6;++aa)for(var Qr=0;wr.mipmask>>Qr;++Qr)Qt.texImage2D(ai+aa,Qr,wr.format,Hr>>Qr,Hr>>Qr,0,wr.format,wr.type,null);return Cs(),bi.profile&&(wr.stats.size=Dc(wr.internalformat,wr.type,tr.width,tr.height,!1,!0)),tr}}return tr(He,st,Et,Ht,yr,Ir),tr.subimage=dr,tr.resize=Pr,tr._reglType="textureCube",tr._texture=wr,bi.profile&&(tr.stats=wr.stats),tr.destroy=function(){wr.decRef()},tr}function te(){for(var He=0;He<Mc;++He)Qt.activeTexture(_c+He),Qt.bindTexture(Sa,null),Vc[He]=null;yt(Yl).forEach(ve),xi.cubeCount=0,xi.textureCount=0}bi.profile&&(xi.getTotalTextureSize=function(){var He=0;return Object.keys(Yl).forEach(function(st){He+=Yl[st].stats.size}),He});function xe(){for(var He=0;He<Mc;++He){var st=Vc[He];st&&(st.bindCount=0,st.unit=-1,Vc[He]=null)}yt(Yl).forEach(function(Et){Et.texture=Qt.createTexture(),Qt.bindTexture(Et.target,Et.texture);for(var Ht=0;Ht<32;++Ht)if(Et.mipmask&1<<Ht)if(Et.target===Sa)Qt.texImage2D(Sa,Ht,Et.internalformat,Et.width>>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);else for(var yr=0;yr<6;++yr)Qt.texImage2D(ai+yr,Ht,Et.internalformat,Et.width>>Ht,Et.height>>Ht,0,Et.internalformat,Et.type,null);mc(Et.texInfo,Et.target)})}function We(){for(var He=0;He<Mc;++He){var st=Vc[He];st&&(st.bindCount=0,st.unit=-1,Vc[He]=null),Qt.activeTexture(_c+He),Qt.bindTexture(Sa,null),Qt.bindTexture(Ti,null)}}return{create2D:K,createCube:ye,clear:te,getTexture:function(He){return null},restore:xe,refresh:We}}var Eu=36161,wf=32854,zc=32855,Us=36194,Kf=33189,Zh=36168,ch=34041,df=35907,Ah=34836,ku=34842,fh=34843,ru=[];ru[wf]=2,ru[zc]=2,ru[Us]=2,ru[Kf]=2,ru[Zh]=1,ru[ch]=4,ru[df]=4,ru[Ah]=16,ru[ku]=8,ru[fh]=6;function Cu(Qt,ra,Ta){return ru[Qt]*ra*Ta}var xc=function(Qt,ra,Ta,si,wi){var xi={rgba4:wf,rgb565:Us,"rgb5 a1":zc,depth:Kf,stencil:Zh,"depth stencil":ch};ra.ext_srgb&&(xi.srgba=df),ra.ext_color_buffer_half_float&&(xi.rgba16f=ku,xi.rgb16f=fh),ra.webgl_color_buffer_float&&(xi.rgba32f=Ah);var bi=[];Object.keys(xi).forEach(function(on){var Oi=xi[on];bi[Oi]=on});var Fi=0,cn={};function fn(on){this.id=Fi++,this.refCount=1,this.renderbuffer=on,this.format=wf,this.width=0,this.height=0,wi.profile&&(this.stats={size:0})}fn.prototype.decRef=function(){--this.refCount<=0&&Gi(this)};function Gi(on){var Oi=on.renderbuffer;Qt.bindRenderbuffer(Eu,null),Qt.deleteRenderbuffer(Oi),on.renderbuffer=null,on.refCount=0,delete cn[on.id],si.renderbufferCount--}function Io(on,Oi){var ui=new fn(Qt.createRenderbuffer());cn[ui.id]=ui,si.renderbufferCount++;function Mi(pn,qi){var Dn=0,bn=0,_o=wf;if(typeof pn=="object"&&pn){var Zi=pn;if("shape"in Zi){var Ui=Zi.shape;Dn=Ui[0]|0,bn=Ui[1]|0}else"radius"in Zi&&(Dn=bn=Zi.radius|0),"width"in Zi&&(Dn=Zi.width|0),"height"in Zi&&(bn=Zi.height|0);"format"in Zi&&(_o=xi[Zi.format])}else typeof pn=="number"?(Dn=pn|0,typeof qi=="number"?bn=qi|0:bn=Dn):pn||(Dn=bn=1);if(!(Dn===ui.width&&bn===ui.height&&_o===ui.format))return Mi.width=ui.width=Dn,Mi.height=ui.height=bn,ui.format=_o,Qt.bindRenderbuffer(Eu,ui.renderbuffer),Qt.renderbufferStorage(Eu,_o,Dn,bn),wi.profile&&(ui.stats.size=Cu(ui.format,ui.width,ui.height)),Mi.format=bi[ui.format],Mi}function tn(pn,qi){var Dn=pn|0,bn=qi|0||Dn;return Dn===ui.width&&bn===ui.height||(Mi.width=ui.width=Dn,Mi.height=ui.height=bn,Qt.bindRenderbuffer(Eu,ui.renderbuffer),Qt.renderbufferStorage(Eu,ui.format,Dn,bn),wi.profile&&(ui.stats.size=Cu(ui.format,ui.width,ui.height))),Mi}return Mi(on,Oi),Mi.resize=tn,Mi._reglType="renderbuffer",Mi._renderbuffer=ui,wi.profile&&(Mi.stats=ui.stats),Mi.destroy=function(){ui.decRef()},Mi}wi.profile&&(si.getTotalRenderbufferSize=function(){var on=0;return Object.keys(cn).forEach(function(Oi){on+=cn[Oi].stats.size}),on});function nn(){yt(cn).forEach(function(on){on.renderbuffer=Qt.createRenderbuffer(),Qt.bindRenderbuffer(Eu,on.renderbuffer),Qt.renderbufferStorage(Eu,on.format,on.width,on.height)}),Qt.bindRenderbuffer(Eu,null)}return{create:Io,clear:function(){yt(cn).forEach(Gi)},restore:nn}},kl=36160,Fc=36161,$u=3553,vu=34069,xl=36064,hh=36096,Sh=36128,Uu=33306,bc=36053,lc=36193,hp=5121,vf=5126,Tf=6407,Lu=6408,zf=[];zf[Lu]=4,zf[Tf]=3;var au=[];au[hp]=1,au[vf]=4,au[lc]=2;function $c(Qt,ra,Ta,si,wi,xi){var bi={cur:null,next:null,dirty:!1,setFBO:null},Fi=["rgba"],cn=["rgba4","rgb565","rgb5 a1"];ra.ext_srgb&&cn.push("srgba"),ra.ext_color_buffer_half_float&&cn.push("rgba16f","rgb16f"),ra.webgl_color_buffer_float&&cn.push("rgba32f");var fn=["uint8"];ra.oes_texture_half_float&&fn.push("half float","float16"),ra.oes_texture_float&&fn.push("float","float32");function Gi(xn,dn,jn){this.target=xn,this.texture=dn,this.renderbuffer=jn;var Ro=0,rs=0;dn?(Ro=dn.width,rs=dn.height):jn&&(Ro=jn.width,rs=jn.height),this.width=Ro,this.height=rs}function Io(xn){xn&&(xn.texture&&xn.texture._texture.decRef(),xn.renderbuffer&&xn.renderbuffer._renderbuffer.decRef())}function nn(xn,dn,jn){if(xn)if(xn.texture){var Ro=xn.texture._texture,rs=Math.max(1,Ro.width),wn=Math.max(1,Ro.height);Ro.refCount+=1}else{var oo=xn.renderbuffer._renderbuffer;oo.refCount+=1}}function on(xn,dn){dn&&(dn.texture?Qt.framebufferTexture2D(kl,xn,dn.target,dn.texture._texture.texture,0):Qt.framebufferRenderbuffer(kl,xn,Fc,dn.renderbuffer._renderbuffer.renderbuffer))}function Oi(xn){var dn=$u,jn=null,Ro=null,rs=xn;typeof xn=="object"&&(rs=xn.data,"target"in xn&&(dn=xn.target|0));var wn=rs._reglType;return wn==="texture2d"||wn==="textureCube"?jn=rs:wn==="renderbuffer"&&(Ro=rs,dn=Fc),new Gi(dn,jn,Ro)}function ui(xn,dn,jn,Ro,rs){if(jn){var wn=si.create2D({width:xn,height:dn,format:Ro,type:rs});return wn._texture.refCount=0,new Gi($u,wn,null)}else{var oo=wi.create({width:xn,height:dn,format:Ro});return oo._renderbuffer.refCount=0,new Gi(Fc,null,oo)}}function Mi(xn){return xn&&(xn.texture||xn.renderbuffer)}function tn(xn,dn,jn){xn&&(xn.texture?xn.texture.resize(dn,jn):xn.renderbuffer&&xn.renderbuffer.resize(dn,jn),xn.width=dn,xn.height=jn)}var pn=0,qi={};function Dn(){this.id=pn++,qi[this.id]=this,this.framebuffer=Qt.createFramebuffer(),this.width=0,this.height=0,this.colorAttachments=[],this.depthAttachment=null,this.stencilAttachment=null,this.depthStencilAttachment=null}function bn(xn){xn.colorAttachments.forEach(Io),Io(xn.depthAttachment),Io(xn.stencilAttachment),Io(xn.depthStencilAttachment)}function _o(xn){var dn=xn.framebuffer;Qt.deleteFramebuffer(dn),xn.framebuffer=null,xi.framebufferCount--,delete qi[xn.id]}function Zi(xn){var dn;Qt.bindFramebuffer(kl,xn.framebuffer);var jn=xn.colorAttachments;for(dn=0;dn<jn.length;++dn)on(xl+dn,jn[dn]);for(dn=jn.length;dn<Ta.maxColorAttachments;++dn)Qt.framebufferTexture2D(kl,xl+dn,$u,null,0);Qt.framebufferTexture2D(kl,Uu,$u,null,0),Qt.framebufferTexture2D(kl,hh,$u,null,0),Qt.framebufferTexture2D(kl,Sh,$u,null,0),on(hh,xn.depthAttachment),on(Sh,xn.stencilAttachment),on(Uu,xn.depthStencilAttachment);var Ro=Qt.checkFramebufferStatus(kl);Qt.isContextLost(),Qt.bindFramebuffer(kl,bi.next?bi.next.framebuffer:null),bi.cur=bi.next,Qt.getError()}function Ui(xn,dn){var jn=new Dn;xi.framebufferCount++;function Ro(wn,oo){var Xo,os=0,As=0,$l=!0,Uc=!0,Ws=null,jc=!0,Ol="rgba",vc="uint8",mc=1,rf=null,Yl=null,Mc=null,Vc=!1;if(typeof wn=="number")os=wn|0,As=oo|0||os;else if(!wn)os=As=1;else{var Ds=wn;if("shape"in Ds){var af=Ds.shape;os=af[0],As=af[1]}else"radius"in Ds&&(os=As=Ds.radius),"width"in Ds&&(os=Ds.width),"height"in Ds&&(As=Ds.height);("color"in Ds||"colors"in Ds)&&(Ws=Ds.color||Ds.colors,Array.isArray(Ws)),Ws||("colorCount"in Ds&&(mc=Ds.colorCount|0),"colorTexture"in Ds&&(jc=!!Ds.colorTexture,Ol="rgba4"),"colorType"in Ds&&(vc=Ds.colorType,jc||(vc==="half float"||vc==="float16"?Ol="rgba16f":(vc==="float"||vc==="float32")&&(Ol="rgba32f"))),"colorFormat"in Ds&&(Ol=Ds.colorFormat,Fi.indexOf(Ol)>=0?jc=!0:cn.indexOf(Ol)>=0&&(jc=!1))),("depthTexture"in Ds||"depthStencilTexture"in Ds)&&(Vc=!!(Ds.depthTexture||Ds.depthStencilTexture)),"depth"in Ds&&(typeof Ds.depth=="boolean"?$l=Ds.depth:(rf=Ds.depth,Uc=!1)),"stencil"in Ds&&(typeof Ds.stencil=="boolean"?Uc=Ds.stencil:(Yl=Ds.stencil,$l=!1)),"depthStencil"in Ds&&(typeof Ds.depthStencil=="boolean"?$l=Uc=Ds.depthStencil:(Mc=Ds.depthStencil,$l=!1,Uc=!1))}var Cs=null,ve=null,K=null,ye=null;if(Array.isArray(Ws))Cs=Ws.map(Oi);else if(Ws)Cs=[Oi(Ws)];else for(Cs=new Array(mc),Xo=0;Xo<mc;++Xo)Cs[Xo]=ui(os,As,jc,Ol,vc);os=os||Cs[0].width,As=As||Cs[0].height,rf?ve=Oi(rf):$l&&!Uc&&(ve=ui(os,As,Vc,"depth","uint32")),Yl?K=Oi(Yl):Uc&&!$l&&(K=ui(os,As,!1,"stencil","uint8")),Mc?ye=Oi(Mc):!rf&&!Yl&&Uc&&$l&&(ye=ui(os,As,Vc,"depth stencil","depth stencil"));var te=null;for(Xo=0;Xo<Cs.length;++Xo)if(nn(Cs[Xo],os,As),Cs[Xo]&&Cs[Xo].texture){var xe=zf[Cs[Xo].texture._texture.format]*au[Cs[Xo].texture._texture.type];te===null&&(te=xe)}return nn(ve,os,As),nn(K,os,As),nn(ye,os,As),bn(jn),jn.width=os,jn.height=As,jn.colorAttachments=Cs,jn.depthAttachment=ve,jn.stencilAttachment=K,jn.depthStencilAttachment=ye,Ro.color=Cs.map(Mi),Ro.depth=Mi(ve),Ro.stencil=Mi(K),Ro.depthStencil=Mi(ye),Ro.width=jn.width,Ro.height=jn.height,Zi(jn),Ro}function rs(wn,oo){var Xo=Math.max(wn|0,1),os=Math.max(oo|0||Xo,1);if(Xo===jn.width&&os===jn.height)return Ro;for(var As=jn.colorAttachments,$l=0;$l<As.length;++$l)tn(As[$l],Xo,os);return tn(jn.depthAttachment,Xo,os),tn(jn.stencilAttachment,Xo,os),tn(jn.depthStencilAttachment,Xo,os),jn.width=Ro.width=Xo,jn.height=Ro.height=os,Zi(jn),Ro}return Ro(xn,dn),g(Ro,{resize:rs,_reglType:"framebuffer",_framebuffer:jn,destroy:function(){_o(jn),bn(jn)},use:function(wn){bi.setFBO({framebuffer:Ro},wn)}})}function Zn(xn){var dn=Array(6);function jn(rs){var wn,oo={color:null},Xo=0,os=null,As="rgba",$l="uint8",Uc=1;if(typeof rs=="number")Xo=rs|0;else if(!rs)Xo=1;else{var Ws=rs;if("shape"in Ws){var jc=Ws.shape;Xo=jc[0]}else"radius"in Ws&&(Xo=Ws.radius|0),"width"in Ws?(Xo=Ws.width|0,"height"in Ws):"height"in Ws&&(Xo=Ws.height|0);("color"in Ws||"colors"in Ws)&&(os=Ws.color||Ws.colors,Array.isArray(os)),os||("colorCount"in Ws&&(Uc=Ws.colorCount|0),"colorType"in Ws&&($l=Ws.colorType),"colorFormat"in Ws&&(As=Ws.colorFormat)),"depth"in Ws&&(oo.depth=Ws.depth),"stencil"in Ws&&(oo.stencil=Ws.stencil),"depthStencil"in Ws&&(oo.depthStencil=Ws.depthStencil)}var Ol;if(os)if(Array.isArray(os))for(Ol=[],wn=0;wn<os.length;++wn)Ol[wn]=os[wn];else Ol=[os];else{Ol=Array(Uc);var vc={radius:Xo,format:As,type:$l};for(wn=0;wn<Uc;++wn)Ol[wn]=si.createCube(vc)}for(oo.color=Array(Ol.length),wn=0;wn<Ol.length;++wn){var mc=Ol[wn];Xo=Xo||mc.width,oo.color[wn]={target:vu,data:Ol[wn]}}for(wn=0;wn<6;++wn){for(var rf=0;rf<Ol.length;++rf)oo.color[rf].target=vu+wn;wn>0&&(oo.depth=dn[0].depth,oo.stencil=dn[0].stencil,oo.depthStencil=dn[0].depthStencil),dn[wn]?dn[wn](oo):dn[wn]=Ui(oo)}return g(jn,{width:Xo,height:Xo,color:Ol})}function Ro(rs){var wn,oo=rs|0;if(oo===jn.width)return jn;var Xo=jn.color;for(wn=0;wn<Xo.length;++wn)Xo[wn].resize(oo);for(wn=0;wn<6;++wn)dn[wn].resize(oo);return jn.width=jn.height=oo,jn}return jn(xn),g(jn,{faces:dn,resize:Ro,_reglType:"framebufferCube",destroy:function(){dn.forEach(function(rs){rs.destroy()})}})}function Rn(){bi.cur=null,bi.next=null,bi.dirty=!0,yt(qi).forEach(function(xn){xn.framebuffer=Qt.createFramebuffer(),Zi(xn)})}return g(bi,{getFramebuffer:function(xn){if(typeof xn=="function"&&xn._reglType==="framebuffer"){var dn=xn._framebuffer;if(dn instanceof Dn)return dn}return null},create:Ui,createCube:Zn,clear:function(){yt(qi).forEach(_o)},restore:Rn})}var Mh=5126,Ff=34962,il=34963;function mu(){this.state=0,this.x=0,this.y=0,this.z=0,this.w=0,this.buffer=null,this.size=0,this.normalized=!1,this.type=Mh,this.offset=0,this.stride=0,this.divisor=0}function gu(Qt,ra,Ta,si,wi,xi,bi){for(var Fi=Ta.maxAttributes,cn=new Array(Fi),fn=0;fn<Fi;++fn)cn[fn]=new mu;var Gi=0,Io={},nn={Record:mu,scope:{},state:cn,currentVAO:null,targetVAO:null,restore:Oi()?bn:function(){},createVAO:_o,getVAO:Mi,destroyBuffer:on,setVAO:Oi()?tn:pn,clear:Oi()?qi:function(){}};function on(Zi){for(var Ui=0;Ui<cn.length;++Ui){var Zn=cn[Ui];Zn.buffer===Zi&&(Qt.disableVertexAttribArray(Ui),Zn.buffer=null)}}function Oi(){return ra.oes_vertex_array_object}function ui(){return ra.angle_instanced_arrays}function Mi(Zi){return typeof Zi=="function"&&Zi._vao?Zi._vao:null}function tn(Zi){if(Zi!==nn.currentVAO){var Ui=Oi();Zi?Ui.bindVertexArrayOES(Zi.vao):Ui.bindVertexArrayOES(null),nn.currentVAO=Zi}}function pn(Zi){if(Zi!==nn.currentVAO){if(Zi)Zi.bindAttrs();else{for(var Ui=ui(),Zn=0;Zn<cn.length;++Zn){var Rn=cn[Zn];Rn.buffer?(Qt.enableVertexAttribArray(Zn),Rn.buffer.bind(),Qt.vertexAttribPointer(Zn,Rn.size,Rn.type,Rn.normalized,Rn.stride,Rn.offfset),Ui&&Rn.divisor&&Ui.vertexAttribDivisorANGLE(Zn,Rn.divisor)):(Qt.disableVertexAttribArray(Zn),Qt.vertexAttrib4f(Zn,Rn.x,Rn.y,Rn.z,Rn.w))}bi.elements?Qt.bindBuffer(il,bi.elements.buffer.buffer):Qt.bindBuffer(il,null)}nn.currentVAO=Zi}}function qi(){yt(Io).forEach(function(Zi){Zi.destroy()})}function Dn(){this.id=++Gi,this.attributes=[],this.elements=null,this.ownsElements=!1,this.count=0,this.offset=0,this.instances=-1,this.primitive=4;var Zi=Oi();Zi?this.vao=Zi.createVertexArrayOES():this.vao=null,Io[this.id]=this,this.buffers=[]}Dn.prototype.bindAttrs=function(){for(var Zi=ui(),Ui=this.attributes,Zn=0;Zn<Ui.length;++Zn){var Rn=Ui[Zn];Rn.buffer?(Qt.enableVertexAttribArray(Zn),Qt.bindBuffer(Ff,Rn.buffer.buffer),Qt.vertexAttribPointer(Zn,Rn.size,Rn.type,Rn.normalized,Rn.stride,Rn.offset),Zi&&Rn.divisor&&Zi.vertexAttribDivisorANGLE(Zn,Rn.divisor)):(Qt.disableVertexAttribArray(Zn),Qt.vertexAttrib4f(Zn,Rn.x,Rn.y,Rn.z,Rn.w))}for(var xn=Ui.length;xn<Fi;++xn)Qt.disableVertexAttribArray(xn);var dn=xi.getElements(this.elements);dn?Qt.bindBuffer(il,dn.buffer.buffer):Qt.bindBuffer(il,null)},Dn.prototype.refresh=function(){var Zi=Oi();Zi&&(Zi.bindVertexArrayOES(this.vao),this.bindAttrs(),nn.currentVAO=null,Zi.bindVertexArrayOES(null))},Dn.prototype.destroy=function(){if(this.vao){var Zi=Oi();this===nn.currentVAO&&(nn.currentVAO=null,Zi.bindVertexArrayOES(null)),Zi.deleteVertexArrayOES(this.vao),this.vao=null}this.ownsElements&&(this.elements.destroy(),this.elements=null,this.ownsElements=!1),Io[this.id]&&(delete Io[this.id],si.vaoCount-=1)};function bn(){var Zi=Oi();Zi&&yt(Io).forEach(function(Ui){Ui.refresh()})}function _o(Zi){var Ui=new Dn;si.vaoCount+=1;function Zn(Rn){var xn;if(Array.isArray(Rn))xn=Rn,Ui.elements&&Ui.ownsElements&&Ui.elements.destroy(),Ui.elements=null,Ui.ownsElements=!1,Ui.offset=0,Ui.count=0,Ui.instances=-1,Ui.primitive=4;else{if(Rn.elements){var dn=Rn.elements;Ui.ownsElements?typeof dn=="function"&&dn._reglType==="elements"?(Ui.elements.destroy(),Ui.ownsElements=!1):(Ui.elements(dn),Ui.ownsElements=!1):xi.getElements(Rn.elements)?(Ui.elements=Rn.elements,Ui.ownsElements=!1):(Ui.elements=xi.create(Rn.elements),Ui.ownsElements=!0)}else Ui.elements=null,Ui.ownsElements=!1;xn=Rn.attributes,Ui.offset=0,Ui.count=-1,Ui.instances=-1,Ui.primitive=4,Ui.elements&&(Ui.count=Ui.elements._elements.vertCount,Ui.primitive=Ui.elements._elements.primType),"offset"in Rn&&(Ui.offset=Rn.offset|0),"count"in Rn&&(Ui.count=Rn.count|0),"instances"in Rn&&(Ui.instances=Rn.instances|0),"primitive"in Rn&&(Ui.primitive=mt[Rn.primitive])}var jn={},Ro=Ui.attributes;Ro.length=xn.length;for(var rs=0;rs<xn.length;++rs){var wn=xn[rs],oo=Ro[rs]=new mu,Xo=wn.data||wn;if(Array.isArray(Xo)||vr(Xo)||_r(Xo)){var os;Ui.buffers[rs]&&(os=Ui.buffers[rs],vr(Xo)&&os._buffer.byteLength>=Xo.byteLength?os.subdata(Xo):(os.destroy(),Ui.buffers[rs]=null)),Ui.buffers[rs]||(os=Ui.buffers[rs]=wi.create(wn,Ff,!1,!0)),oo.buffer=wi.getBuffer(os),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1,jn[rs]=1}else wi.getBuffer(wn)?(oo.buffer=wi.getBuffer(wn),oo.size=oo.buffer.dimension|0,oo.normalized=!1,oo.type=oo.buffer.dtype,oo.offset=0,oo.stride=0,oo.divisor=0,oo.state=1):wi.getBuffer(wn.buffer)?(oo.buffer=wi.getBuffer(wn.buffer),oo.size=(+wn.size||oo.buffer.dimension)|0,oo.normalized=!!wn.normalized||!1,"type"in wn?oo.type=sa[wn.type]:oo.type=oo.buffer.dtype,oo.offset=(wn.offset||0)|0,oo.stride=(wn.stride||0)|0,oo.divisor=(wn.divisor||0)|0,oo.state=1):"x"in wn&&(oo.x=+wn.x||0,oo.y=+wn.y||0,oo.z=+wn.z||0,oo.w=+wn.w||0,oo.state=2)}for(var As=0;As<Ui.buffers.length;++As)!jn[As]&&Ui.buffers[As]&&(Ui.buffers[As].destroy(),Ui.buffers[As]=null);return Ui.refresh(),Zn}return Zn.destroy=function(){for(var Rn=0;Rn<Ui.buffers.length;++Rn)Ui.buffers[Rn]&&Ui.buffers[Rn].destroy();Ui.buffers.length=0,Ui.ownsElements&&(Ui.elements.destroy(),Ui.elements=null,Ui.ownsElements=!1),Ui.destroy()},Zn._vao=Ui,Zn._reglType="vao",Zn(Zi)}return nn}var Jf=35632,el=35633,mf=35718,wc=35721;function ju(Qt,ra,Ta,si){var wi={},xi={};function bi(ui,Mi,tn,pn){this.name=ui,this.id=Mi,this.location=tn,this.info=pn}function Fi(ui,Mi){for(var tn=0;tn<ui.length;++tn)if(ui[tn].id===Mi.id){ui[tn].location=Mi.location;return}ui.push(Mi)}function cn(ui,Mi,tn){var pn=ui===Jf?wi:xi,qi=pn[Mi];if(!qi){var Dn=ra.str(Mi);qi=Qt.createShader(ui),Qt.shaderSource(qi,Dn),Qt.compileShader(qi),pn[Mi]=qi}return qi}var fn={},Gi=[],Io=0;function nn(ui,Mi){this.id=Io++,this.fragId=ui,this.vertId=Mi,this.program=null,this.uniforms=[],this.attributes=[],this.refCount=1,si.profile&&(this.stats={uniformsCount:0,attributesCount:0})}function on(ui,Mi,tn){var pn,qi,Dn=cn(Jf,ui.fragId),bn=cn(el,ui.vertId),_o=ui.program=Qt.createProgram();if(Qt.attachShader(_o,Dn),Qt.attachShader(_o,bn),tn)for(pn=0;pn<tn.length;++pn){var Zi=tn[pn];Qt.bindAttribLocation(_o,Zi[0],Zi[1])}Qt.linkProgram(_o);var Ui=Qt.getProgramParameter(_o,mf);si.profile&&(ui.stats.uniformsCount=Ui);var Zn=ui.uniforms;for(pn=0;pn<Ui;++pn)if(qi=Qt.getActiveUniform(_o,pn),qi)if(qi.size>1)for(var Rn=0;Rn<qi.size;++Rn){var xn=qi.name.replace("[0]","["+Rn+"]");Fi(Zn,new bi(xn,ra.id(xn),Qt.getUniformLocation(_o,xn),qi))}else Fi(Zn,new bi(qi.name,ra.id(qi.name),Qt.getUniformLocation(_o,qi.name),qi));var dn=Qt.getProgramParameter(_o,wc);si.profile&&(ui.stats.attributesCount=dn);var jn=ui.attributes;for(pn=0;pn<dn;++pn)qi=Qt.getActiveAttrib(_o,pn),qi&&Fi(jn,new bi(qi.name,ra.id(qi.name),Qt.getAttribLocation(_o,qi.name),qi))}si.profile&&(Ta.getMaxUniformsCount=function(){var ui=0;return Gi.forEach(function(Mi){Mi.stats.uniformsCount>ui&&(ui=Mi.stats.uniformsCount)}),ui},Ta.getMaxAttributesCount=function(){var ui=0;return Gi.forEach(function(Mi){Mi.stats.attributesCount>ui&&(ui=Mi.stats.attributesCount)}),ui});function Oi(){wi={},xi={};for(var ui=0;ui<Gi.length;++ui)on(Gi[ui],null,Gi[ui].attributes.map(function(Mi){return[Mi.location,Mi.name]}))}return{clear:function(){var ui=Qt.deleteShader.bind(Qt);yt(wi).forEach(ui),wi={},yt(xi).forEach(ui),xi={},Gi.forEach(function(Mi){Qt.deleteProgram(Mi.program)}),Gi.length=0,fn={},Ta.shaderCount=0},program:function(ui,Mi,tn,pn){var qi=fn[Mi];qi||(qi=fn[Mi]={});var Dn=qi[ui];if(Dn&&(Dn.refCount++,!pn))return Dn;var bn=new nn(Mi,ui);return Ta.shaderCount++,on(bn,tn,pn),Dn||(qi[ui]=bn),Gi.push(bn),g(bn,{destroy:function(){if(bn.refCount--,bn.refCount<=0){Qt.deleteProgram(bn.program);var _o=Gi.indexOf(bn);Gi.splice(_o,1),Ta.shaderCount--}qi[bn.vertId].refCount<=0&&(Qt.deleteShader(xi[bn.vertId]),delete xi[bn.vertId],delete fn[bn.fragId][bn.vertId]),Object.keys(fn[bn.fragId]).length||(Qt.deleteShader(wi[bn.fragId]),delete wi[bn.fragId],delete fn[bn.fragId])}})},restore:Oi,shader:cn,frag:-1,vert:-1}}var Af=6408,uc=5121,Qc=3333,$f=5126;function Vl(Qt,ra,Ta,si,wi,xi,bi){function Fi(Gi){var Io;ra.next===null?Io=uc:Io=ra.next.colorAttachments[0].texture._texture.type;var nn=0,on=0,Oi=si.framebufferWidth,ui=si.framebufferHeight,Mi=null;vr(Gi)?Mi=Gi:Gi&&(nn=Gi.x|0,on=Gi.y|0,Oi=(Gi.width||si.framebufferWidth-nn)|0,ui=(Gi.height||si.framebufferHeight-on)|0,Mi=Gi.data||null),Ta();var tn=Oi*ui*4;return Mi||(Io===uc?Mi=new Uint8Array(tn):Io===$f&&(Mi=Mi||new Float32Array(tn))),Qt.pixelStorei(Qc,4),Qt.readPixels(nn,on,Oi,ui,Af,Io,Mi),Mi}function cn(Gi){var Io;return ra.setFBO({framebuffer:Gi.framebuffer},function(){Io=Fi(Gi)}),Io}function fn(Gi){return!Gi||!("framebuffer"in Gi)?Fi(Gi):cn(Gi)}return fn}var Qf=0,Vu="";function Tc(Qt){return iu(cc(Qu(Qt)))}function cc(Qt){return Zt(li(ef(Qt),Qt.length*8))}function Cl(Qt,ra){var Ta=ef(Qt);Ta.length>16&&(Ta=li(Ta,Qt.length*8));for(var si=Array(16),wi=Array(16),xi=0;xi<16;xi++)si[xi]=Ta[xi]^909522486,wi[xi]=Ta[xi]^1549556828;var bi=li(si.concat(ef(ra)),512+ra.length*8);return Zt(li(wi.concat(bi),768))}function iu(Qt){for(var ra=Qf?"0123456789ABCDEF":"0123456789abcdef",Ta="",si,wi=0;wi<Qt.length;wi++)si=Qt.charCodeAt(wi),Ta+=ra.charAt(si>>>4&15)+ra.charAt(si&15);return Ta}function fc(Qt){for(var ra="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Ta="",si=Qt.length,wi=0;wi<si;wi+=3)for(var xi=Qt.charCodeAt(wi)<<16|(wi+1<si?Qt.charCodeAt(wi+1)<<8:0)|(wi+2<si?Qt.charCodeAt(wi+2):0),bi=0;bi<4;bi++)wi*8+bi*6>Qt.length*8?Ta+=Vu:Ta+=ra.charAt(xi>>>6*(3-bi)&63);return Ta}function Oc(Qt,ra){var Ta=ra.length,si=Array(),wi,xi,bi,Fi,cn=Array(Math.ceil(Qt.length/2));for(wi=0;wi<cn.length;wi++)cn[wi]=Qt.charCodeAt(wi*2)<<8|Qt.charCodeAt(wi*2+1);for(;cn.length>0;){for(Fi=Array(),bi=0,wi=0;wi<cn.length;wi++)bi=(bi<<16)+cn[wi],xi=Math.floor(bi/Ta),bi-=xi*Ta,(Fi.length>0||xi>0)&&(Fi[Fi.length]=xi);si[si.length]=bi,cn=Fi}var fn="";for(wi=si.length-1;wi>=0;wi--)fn+=ra.charAt(si[wi]);var Gi=Math.ceil(Qt.length*8/(Math.log(ra.length)/Math.log(2)));for(wi=fn.length;wi<Gi;wi++)fn=ra[0]+fn;return fn}function Qu(Qt){for(var ra="",Ta=-1,si,wi;++Ta<Qt.length;)si=Qt.charCodeAt(Ta),wi=Ta+1<Qt.length?Qt.charCodeAt(Ta+1):0,55296<=si&&si<=56319&&56320<=wi&&wi<=57343&&(si=65536+((si&1023)<<10)+(wi&1023),Ta++),si<=127?ra+=String.fromCharCode(si):si<=2047?ra+=String.fromCharCode(192|si>>>6&31,128|si&63):si<=65535?ra+=String.fromCharCode(224|si>>>12&15,128|si>>>6&63,128|si&63):si<=2097151&&(ra+=String.fromCharCode(240|si>>>18&7,128|si>>>12&63,128|si>>>6&63,128|si&63));return ra}function ef(Qt){for(var ra=Array(Qt.length>>2),Ta=0;Ta<ra.length;Ta++)ra[Ta]=0;for(var Ta=0;Ta<Qt.length*8;Ta+=8)ra[Ta>>5]|=(Qt.charCodeAt(Ta/8)&255)<<24-Ta%32;return ra}function Zt(Qt){for(var ra="",Ta=0;Ta<Qt.length*32;Ta+=8)ra+=String.fromCharCode(Qt[Ta>>5]>>>24-Ta%32&255);return ra}function fr(Qt,ra){return Qt>>>ra|Qt<<32-ra}function Yr(Qt,ra){return Qt>>>ra}function qr(Qt,ra,Ta){return Qt&ra^~Qt&Ta}function ba(Qt,ra,Ta){return Qt&ra^Qt&Ta^ra&Ta}function Ka(Qt){return fr(Qt,2)^fr(Qt,13)^fr(Qt,22)}function oi(Qt){return fr(Qt,6)^fr(Qt,11)^fr(Qt,25)}function yi(Qt){return fr(Qt,7)^fr(Qt,18)^Yr(Qt,3)}function ki(Qt){return fr(Qt,17)^fr(Qt,19)^Yr(Qt,10)}var Bi=new Array(1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998);function li(Qt,ra){var Ta=new Array(1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225),si=new Array(64),wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui;for(Qt[ra>>5]|=128<<24-ra%32,Qt[(ra+64>>9<<4)+15]=ra,nn=0;nn<Qt.length;nn+=16){for(wi=Ta[0],xi=Ta[1],bi=Ta[2],Fi=Ta[3],cn=Ta[4],fn=Ta[5],Gi=Ta[6],Io=Ta[7],on=0;on<64;on++)on<16?si[on]=Qt[on+nn]:si[on]=_i(_i(_i(ki(si[on-2]),si[on-7]),yi(si[on-15])),si[on-16]),Oi=_i(_i(_i(_i(Io,oi(cn)),qr(cn,fn,Gi)),Bi[on]),si[on]),ui=_i(Ka(wi),ba(wi,xi,bi)),Io=Gi,Gi=fn,fn=cn,cn=_i(Fi,Oi),Fi=bi,bi=xi,xi=wi,wi=_i(Oi,ui);Ta[0]=_i(wi,Ta[0]),Ta[1]=_i(xi,Ta[1]),Ta[2]=_i(bi,Ta[2]),Ta[3]=_i(Fi,Ta[3]),Ta[4]=_i(cn,Ta[4]),Ta[5]=_i(fn,Ta[5]),Ta[6]=_i(Gi,Ta[6]),Ta[7]=_i(Io,Ta[7])}return Ta}function _i(Qt,ra){var Ta=(Qt&65535)+(ra&65535),si=(Qt>>16)+(ra>>16)+(Ta>>16);return si<<16|Ta&65535}function vi(Qt){return Array.prototype.slice.call(Qt)}function ti(Qt){return vi(Qt).join("")}function rn(Qt){var ra=Qt&&Qt.cache,Ta=0,si=[],wi=[],xi=[];function bi(Oi,ui){var Mi=ui&&ui.stable;if(!Mi){for(var tn=0;tn<wi.length;++tn)if(wi[tn]===Oi&&!xi[tn])return si[tn]}var pn="g"+Ta++;return si.push(pn),wi.push(Oi),xi.push(Mi),pn}function Fi(){var Oi=[];function ui(){Oi.push.apply(Oi,vi(arguments))}var Mi=[];function tn(){var pn="v"+Ta++;return Mi.push(pn),arguments.length>0&&(Oi.push(pn,"="),Oi.push.apply(Oi,vi(arguments)),Oi.push(";")),pn}return g(ui,{def:tn,toString:function(){return ti([Mi.length>0?"var "+Mi.join(",")+";":"",ti(Oi)])}})}function cn(){var Oi=Fi(),ui=Fi(),Mi=Oi.toString,tn=ui.toString;function pn(qi,Dn){ui(qi,Dn,"=",Oi.def(qi,Dn),";")}return g(function(){Oi.apply(Oi,vi(arguments))},{def:Oi.def,entry:Oi,exit:ui,save:pn,set:function(qi,Dn,bn){pn(qi,Dn),Oi(qi,Dn,"=",bn,";")},toString:function(){return Mi()+tn()}})}function fn(){var Oi=ti(arguments),ui=cn(),Mi=cn(),tn=ui.toString,pn=Mi.toString;return g(ui,{then:function(){return ui.apply(ui,vi(arguments)),this},else:function(){return Mi.apply(Mi,vi(arguments)),this},toString:function(){var qi=pn();return qi&&(qi="else{"+qi+"}"),ti(["if(",Oi,"){",tn(),"}",qi])}})}var Gi=Fi(),Io={};function nn(Oi,ui){var Mi=[];function tn(){var _o="a"+Mi.length;return Mi.push(_o),_o}ui=ui||0;for(var pn=0;pn<ui;++pn)tn();var qi=cn(),Dn=qi.toString,bn=Io[Oi]=g(qi,{arg:tn,toString:function(){return ti(["function(",Mi.join(),"){",Dn(),"}"])}});return bn}function on(){var Oi=['"use strict";',Gi,"return {"];Object.keys(Io).forEach(function(pn){Oi.push('"',pn,'":',Io[pn].toString(),",")}),Oi.push("}");var ui=ti(Oi).replace(/;/g,`;
+`).replace(/}/g,`}
+`).replace(/{/g,`{
+`),Mi;if(ra&&(Mi=Tc(ui),ra[Mi]))return ra[Mi].apply(null,wi);var tn=Function.apply(null,si.concat(ui));return ra&&(ra[Mi]=tn),tn.apply(null,wi)}return{global:Gi,link:bi,block:Fi,proc:nn,scope:cn,cond:fn,compile:on}}var Kn="xyzw".split(""),Wn=5121,Jn=1,no=2,en=0,Ri=1,co=2,Wo=3,bs=4,Xs=5,Ms=6,Hs="dither",vs="blend.enable",Il="blend.color",fl="blend.equation",tl="blend.func",Ln="depth.enable",Ao="depth.func",js="depth.range",Ts="depth.mask",nu="colorMask",Pu="cull.enable",ec="cull.face",tf="frontFace",yu="lineWidth",Bc="polygonOffset.enable",Iu="polygonOffset.offset",Ac="sample.alpha",ro="sample.enable",Po="sample.coverage",Nc="stencil.enable",hc="stencil.mask",pc="stencil.func",Oe="stencil.opFront",R="stencil.opBack",ae="scissor.enable",we="scissor.box",Se="viewport",De="profile",ft="framebuffer",bt="vert",Dt="frag",Yt="elements",cr="primitive",hr="count",jr="offset",ea="instances",qe="vao",Je="Width",ot="Height",ht=ft+Je,At=ft+ot,_t=Se+Je,Pt=Se+ot,er="drawingBuffer",nr=er+Je,pr=er+ot,Sr=[tl,fl,pc,Oe,R,Po,Se,we,Iu],Wr=34962,ha=34963,ga=2884,Pa=3042,Ja=3024,di=2960,pi=2929,Ci=3089,$i=32823,Bn=32926,Sn=32928,ho=5126,ts=35664,yo=35665,Vo=35666,ls=5124,rl=35667,Ys=35668,Zo=35669,Go=35670,Rl=35671,Xl=35672,qu=35673,fu=35674,bl=35675,ou=35676,Sc=35678,ql=35680,Hl=4,de=1028,Re=1029,$e=2304,pt=2305,vt=32775,wt=32776,Jt=519,Rt=7680,or=0,Dr=1,Or=32774,va=513,fa=36160,Va=36064,Xa={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},_a={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},Ra={0:0,zero:0,keep:7680,replace:7681,increment:7682,decrement:7683,"increment wrap":34055,"decrement wrap":34056,invert:5386},Na={cw:$e,ccw:pt};function Qa(Qt){return Array.isArray(Qt)||vr(Qt)||_r(Qt)}function Ya(Qt){return Qt.sort(function(ra,Ta){return ra===Se?-1:Ta===Se?1:ra<Ta?-1:1})}function Da(Qt,ra,Ta,si){this.thisDep=Qt,this.contextDep=ra,this.propDep=Ta,this.append=si}function zi(Qt){return Qt&&!(Qt.thisDep||Qt.contextDep||Qt.propDep)}function Ni(Qt){return new Da(!1,!1,!1,Qt)}function Qi(Qt,ra){var Ta=Qt.type;if(Ta===en){var si=Qt.data.length;return new Da(!0,si>=1,si>=2,ra)}else if(Ta===bs){var wi=Qt.data;return new Da(wi.thisDep,wi.contextDep,wi.propDep,ra)}else{if(Ta===Xs)return new Da(!1,!1,!1,ra);if(Ta===Ms){for(var xi=!1,bi=!1,Fi=!1,cn=0;cn<Qt.data.length;++cn){var fn=Qt.data[cn];if(fn.type===Ri)Fi=!0;else if(fn.type===co)bi=!0;else if(fn.type===Wo)xi=!0;else if(fn.type===en){xi=!0;var Gi=fn.data;Gi>=1&&(bi=!0),Gi>=2&&(Fi=!0)}else fn.type===bs&&(xi=xi||fn.data.thisDep,bi=bi||fn.data.contextDep,Fi=Fi||fn.data.propDep)}return new Da(xi,bi,Fi,ra)}else return new Da(Ta===Wo,Ta===co,Ta===Ri,ra)}}var hn=new Da(!1,!1,!1,function(){});function Un(Qt,ra,Ta,si,wi,xi,bi,Fi,cn,fn,Gi,Io,nn,on,Oi,ui){var Mi=fn.Record,tn={add:32774,subtract:32778,"reverse subtract":32779};Ta.ext_blend_minmax&&(tn.min=vt,tn.max=wt);var pn=Ta.angle_instanced_arrays,qi=Ta.webgl_draw_buffers,Dn=Ta.oes_vertex_array_object,bn={dirty:!0,profile:ui.profile},_o={},Zi=[],Ui={},Zn={};function Rn(qt){return qt.replace(".","_")}function xn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),_o[Pr]=bn[Pr]=!!dr,Ui[Pr]=tr}function dn(qt,tr,dr){var Pr=Rn(qt);Zi.push(qt),Array.isArray(dr)?(bn[Pr]=dr.slice(),_o[Pr]=dr.slice()):bn[Pr]=_o[Pr]=dr,Zn[Pr]=tr}function jn(qt){return!!isNaN(qt)}xn(Hs,Ja),xn(vs,Pa),dn(Il,"blendColor",[0,0,0,0]),dn(fl,"blendEquationSeparate",[Or,Or]),dn(tl,"blendFuncSeparate",[Dr,or,Dr,or]),xn(Ln,pi,!0),dn(Ao,"depthFunc",va),dn(js,"depthRange",[0,1]),dn(Ts,"depthMask",!0),dn(nu,nu,[!0,!0,!0,!0]),xn(Pu,ga),dn(ec,"cullFace",Re),dn(tf,tf,pt),dn(yu,yu,1),xn(Bc,$i),dn(Iu,"polygonOffset",[0,0]),xn(Ac,Bn),xn(ro,Sn),dn(Po,"sampleCoverage",[1,!1]),xn(Nc,di),dn(hc,"stencilMask",-1),dn(pc,"stencilFunc",[Jt,0,-1]),dn(Oe,"stencilOpSeparate",[de,Rt,Rt,Rt]),dn(R,"stencilOpSeparate",[Re,Rt,Rt,Rt]),xn(ae,Ci),dn(we,"scissor",[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]),dn(Se,Se,[0,0,Qt.drawingBufferWidth,Qt.drawingBufferHeight]);var Ro={gl:Qt,context:nn,strings:ra,next:_o,current:bn,draw:Io,elements:xi,buffer:wi,shader:Gi,attributes:fn.state,vao:fn,uniforms:cn,framebuffer:Fi,extensions:Ta,timer:on,isBufferArgs:Qa},rs={primTypes:mt,compareFuncs:_a,blendFuncs:Xa,blendEquations:tn,stencilOps:Ra,glTypes:sa,orientationType:Na};qi&&(rs.backBuffer=[Re],rs.drawBuffer=d(si.maxDrawbuffers,function(qt){return qt===0?[0]:d(qt,function(tr){return Va+tr})}));var wn=0;function oo(){var qt=rn({cache:Oi}),tr=qt.link,dr=qt.global;qt.id=wn++,qt.batchId="0";var Pr=tr(Ro),Vr=qt.shared={props:"a0"};Object.keys(Ro).forEach(function(ia){Vr[ia]=dr.def(Pr,".",ia)});var Hr=qt.next={},aa=qt.current={};Object.keys(Zn).forEach(function(ia){Array.isArray(bn[ia])&&(Hr[ia]=dr.def(Vr.next,".",ia),aa[ia]=dr.def(Vr.current,".",ia))});var Qr=qt.constants={};Object.keys(rs).forEach(function(ia){Qr[ia]=dr.def(JSON.stringify(rs[ia]))}),qt.invoke=function(ia,Ur){switch(Ur.type){case en:var wa=["this",Vr.context,Vr.props,qt.batchId];return ia.def(tr(Ur.data),".call(",wa.slice(0,Math.max(Ur.data.length+1,4)),")");case Ri:return ia.def(Vr.props,Ur.data);case co:return ia.def(Vr.context,Ur.data);case Wo:return ia.def("this",Ur.data);case bs:return Ur.data.append(qt,ia),Ur.data.ref;case Xs:return Ur.data.toString();case Ms:return Ur.data.map(function(Oa){return qt.invoke(ia,Oa)})}},qt.attribCache={};var Gr={};return qt.scopeAttrib=function(ia){var Ur=ra.id(ia);if(Ur in Gr)return Gr[Ur];var wa=fn.scope[Ur];wa||(wa=fn.scope[Ur]=new Mi);var Oa=Gr[Ur]=tr(wa);return Oa},qt}function Xo(qt){var tr=qt.static,dr=qt.dynamic,Pr;if(De in tr){var Vr=!!tr[De];Pr=Ni(function(aa,Qr){return Vr}),Pr.enable=Vr}else if(De in dr){var Hr=dr[De];Pr=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}return Pr}function os(qt,tr){var dr=qt.static,Pr=qt.dynamic;if(ft in dr){var Vr=dr[ft];return Vr?(Vr=Fi.getFramebuffer(Vr),Ni(function(aa,Qr){var Gr=aa.link(Vr),ia=aa.shared;Qr.set(ia.framebuffer,".next",Gr);var Ur=ia.context;return Qr.set(Ur,"."+ht,Gr+".width"),Qr.set(Ur,"."+At,Gr+".height"),Gr})):Ni(function(aa,Qr){var Gr=aa.shared;Qr.set(Gr.framebuffer,".next","null");var ia=Gr.context;return Qr.set(ia,"."+ht,ia+"."+nr),Qr.set(ia,"."+At,ia+"."+pr),"null"})}else if(ft in Pr){var Hr=Pr[ft];return Qi(Hr,function(aa,Qr){var Gr=aa.invoke(Qr,Hr),ia=aa.shared,Ur=ia.framebuffer,wa=Qr.def(Ur,".getFramebuffer(",Gr,")");Qr.set(Ur,".next",wa);var Oa=ia.context;return Qr.set(Oa,"."+ht,wa+"?"+wa+".width:"+Oa+"."+nr),Qr.set(Oa,"."+At,wa+"?"+wa+".height:"+Oa+"."+pr),wa})}else return null}function As(qt,tr,dr){var Pr=qt.static,Vr=qt.dynamic;function Hr(Gr){if(Gr in Pr){var ia=Pr[Gr],Ur=!0,wa=ia.x|0,Oa=ia.y|0,ri,Pi;return"width"in ia?ri=ia.width|0:Ur=!1,"height"in ia?Pi=ia.height|0:Ur=!1,new Da(!Ur&&tr&&tr.thisDep,!Ur&&tr&&tr.contextDep,!Ur&&tr&&tr.propDep,function(An,ln){var Ii=An.shared.context,Wi=ri;"width"in ia||(Wi=ln.def(Ii,".",ht,"-",wa));var Hi=Pi;return"height"in ia||(Hi=ln.def(Ii,".",At,"-",Oa)),[wa,Oa,Wi,Hi]})}else if(Gr in Vr){var mi=Vr[Gr],Di=Qi(mi,function(An,ln){var Ii=An.invoke(ln,mi),Wi=An.shared.context,Hi=ln.def(Ii,".x|0"),yn=ln.def(Ii,".y|0"),zn=ln.def('"width" in ',Ii,"?",Ii,".width|0:","(",Wi,".",ht,"-",Hi,")"),ms=ln.def('"height" in ',Ii,"?",Ii,".height|0:","(",Wi,".",At,"-",yn,")");return[Hi,yn,zn,ms]});return tr&&(Di.thisDep=Di.thisDep||tr.thisDep,Di.contextDep=Di.contextDep||tr.contextDep,Di.propDep=Di.propDep||tr.propDep),Di}else return tr?new Da(tr.thisDep,tr.contextDep,tr.propDep,function(An,ln){var Ii=An.shared.context;return[0,0,ln.def(Ii,".",ht),ln.def(Ii,".",At)]}):null}var aa=Hr(Se);if(aa){var Qr=aa;aa=new Da(aa.thisDep,aa.contextDep,aa.propDep,function(Gr,ia){var Ur=Qr.append(Gr,ia),wa=Gr.shared.context;return ia.set(wa,"."+_t,Ur[2]),ia.set(wa,"."+Pt,Ur[3]),Ur})}return{viewport:aa,scissor_box:Hr(we)}}function $l(qt,tr){var dr=qt.static,Pr=typeof dr[Dt]=="string"&&typeof dr[bt]=="string";if(Pr){if(Object.keys(tr.dynamic).length>0)return null;var Vr=tr.static,Hr=Object.keys(Vr);if(Hr.length>0&&typeof Vr[Hr[0]]=="number"){for(var aa=[],Qr=0;Qr<Hr.length;++Qr)aa.push([Vr[Hr[Qr]]|0,Hr[Qr]]);return aa}}return null}function Uc(qt,tr,dr){var Pr=qt.static,Vr=qt.dynamic;function Hr(Ur){if(Ur in Pr){var wa=ra.id(Pr[Ur]),Oa=Ni(function(){return wa});return Oa.id=wa,Oa}else if(Ur in Vr){var ri=Vr[Ur];return Qi(ri,function(Pi,mi){var Di=Pi.invoke(mi,ri),An=mi.def(Pi.shared.strings,".id(",Di,")");return An})}return null}var aa=Hr(Dt),Qr=Hr(bt),Gr=null,ia;return zi(aa)&&zi(Qr)?(Gr=Gi.program(Qr.id,aa.id,null,dr),ia=Ni(function(Ur,wa){return Ur.link(Gr)})):ia=new Da(aa&&aa.thisDep||Qr&&Qr.thisDep,aa&&aa.contextDep||Qr&&Qr.contextDep,aa&&aa.propDep||Qr&&Qr.propDep,function(Ur,wa){var Oa=Ur.shared.shader,ri;aa?ri=aa.append(Ur,wa):ri=wa.def(Oa,".",Dt);var Pi;Qr?Pi=Qr.append(Ur,wa):Pi=wa.def(Oa,".",bt);var mi=Oa+".program("+Pi+","+ri;return wa.def(mi+")")}),{frag:aa,vert:Qr,progVar:ia,program:Gr}}function Ws(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={},Hr=!1;function aa(){if(qe in dr){var ln=dr[qe];return ln!==null&&fn.getVAO(ln)===null&&(ln=fn.createVAO(ln)),Hr=!0,Vr.vao=ln,Ni(function(Wi){var Hi=fn.getVAO(ln);return Hi?Wi.link(Hi):"null"})}else if(qe in Pr){Hr=!0;var Ii=Pr[qe];return Qi(Ii,function(Wi,Hi){var yn=Wi.invoke(Hi,Ii);return Hi.def(Wi.shared.vao+".getVAO("+yn+")")})}return null}var Qr=aa(),Gr=!1;function ia(){if(Yt in dr){var ln=dr[Yt];if(Vr.elements=ln,Qa(ln)){var Ii=Vr.elements=xi.create(ln,!0);ln=xi.getElements(Ii),Gr=!0}else ln&&(ln=xi.getElements(ln),Gr=!0);var Wi=Ni(function(yn,zn){if(ln){var ms=yn.link(ln);return yn.ELEMENTS=ms,ms}return yn.ELEMENTS=null,null});return Wi.value=ln,Wi}else if(Yt in Pr){Gr=!0;var Hi=Pr[Yt];return Qi(Hi,function(yn,zn){var ms=yn.shared,us=ms.isBufferArgs,Vs=ms.elements,qo=yn.invoke(zn,Hi),Ls=zn.def("null"),wl=zn.def(us,"(",qo,")"),Ru=yn.cond(wl).then(Ls,"=",Vs,".createStream(",qo,");").else(Ls,"=",Vs,".getElements(",qo,");");return zn.entry(Ru),zn.exit(yn.cond(wl).then(Vs,".destroyStream(",Ls,");")),yn.ELEMENTS=Ls,Ls})}else if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.elements+".getElements("+yn.shared.vao+".currentVAO.elements):null")});return null}var Ur=ia();function wa(){if(cr in dr){var ln=dr[cr];return Vr.primitive=ln,Ni(function(Wi,Hi){return mt[ln]})}else if(cr in Pr){var Ii=Pr[cr];return Qi(Ii,function(Wi,Hi){var yn=Wi.constants.primTypes,zn=Wi.invoke(Hi,Ii);return Hi.def(yn,"[",zn,"]")})}else{if(Gr)return zi(Ur)?Ur.value?Ni(function(Wi,Hi){return Hi.def(Wi.ELEMENTS,".primType")}):Ni(function(){return Hl}):new Da(Ur.thisDep,Ur.contextDep,Ur.propDep,function(Wi,Hi){var yn=Wi.ELEMENTS;return Hi.def(yn,"?",yn,".primType:",Hl)});if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(Wi,Hi){return Hi.def(Wi.shared.vao+".currentVAO?"+Wi.shared.vao+".currentVAO.primitive:"+Hl)})}return null}function Oa(ln,Ii){if(ln in dr){var Wi=dr[ln]|0;return Ii?Vr.offset=Wi:Vr.instances=Wi,Ni(function(yn,zn){return Ii&&(yn.OFFSET=Wi),Wi})}else if(ln in Pr){var Hi=Pr[ln];return Qi(Hi,function(yn,zn){var ms=yn.invoke(zn,Hi);return Ii&&(yn.OFFSET=ms),ms})}else if(Ii){if(Gr)return Ni(function(yn,zn){return yn.OFFSET=0,0});if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.vao+".currentVAO.offset:0")})}else if(Hr)return new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(yn,zn){return zn.def(yn.shared.vao+".currentVAO?"+yn.shared.vao+".currentVAO.instances:-1")});return null}var ri=Oa(jr,!0);function Pi(){if(hr in dr){var ln=dr[hr]|0;return Vr.count=ln,Ni(function(){return ln})}else if(hr in Pr){var Ii=Pr[hr];return Qi(Ii,function(zn,ms){var us=zn.invoke(ms,Ii);return us})}else if(Gr)if(zi(Ur)){if(Ur)return ri?new Da(ri.thisDep,ri.contextDep,ri.propDep,function(zn,ms){var us=ms.def(zn.ELEMENTS,".vertCount-",zn.OFFSET);return us}):Ni(function(zn,ms){return ms.def(zn.ELEMENTS,".vertCount")});var Wi=Ni(function(){return-1});return Wi}else{var Hi=new Da(Ur.thisDep||ri.thisDep,Ur.contextDep||ri.contextDep,Ur.propDep||ri.propDep,function(zn,ms){var us=zn.ELEMENTS;return zn.OFFSET?ms.def(us,"?",us,".vertCount-",zn.OFFSET,":-1"):ms.def(us,"?",us,".vertCount:-1")});return Hi}else if(Hr){var yn=new Da(Qr.thisDep,Qr.contextDep,Qr.propDep,function(zn,ms){return ms.def(zn.shared.vao,".currentVAO?",zn.shared.vao,".currentVAO.count:-1")});return yn}return null}var mi=wa(),Di=Pi(),An=Oa(ea,!1);return{elements:Ur,primitive:mi,count:Di,instances:An,offset:ri,vao:Qr,vaoActive:Hr,elementsActive:Gr,static:Vr}}function jc(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Zi.forEach(function(Hr){var aa=Rn(Hr);function Qr(Gr,ia){if(Hr in dr){var Ur=Gr(dr[Hr]);Vr[aa]=Ni(function(){return Ur})}else if(Hr in Pr){var wa=Pr[Hr];Vr[aa]=Qi(wa,function(Oa,ri){return ia(Oa,ri,Oa.invoke(ri,wa))})}}switch(Hr){case Pu:case vs:case Hs:case Nc:case Ln:case ae:case Bc:case Ac:case ro:case Ts:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){return Ur});case Ao:return Qr(function(Gr){return _a[Gr]},function(Gr,ia,Ur){var wa=Gr.constants.compareFuncs;return ia.def(wa,"[",Ur,"]")});case js:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){var wa=ia.def("+",Ur,"[0]"),Oa=ia.def("+",Ur,"[1]");return[wa,Oa]});case tl:return Qr(function(Gr){var ia="srcRGB"in Gr?Gr.srcRGB:Gr.src,Ur="srcAlpha"in Gr?Gr.srcAlpha:Gr.src,wa="dstRGB"in Gr?Gr.dstRGB:Gr.dst,Oa="dstAlpha"in Gr?Gr.dstAlpha:Gr.dst;return[Xa[ia],Xa[wa],Xa[Ur],Xa[Oa]]},function(Gr,ia,Ur){var wa=Gr.constants.blendFuncs;function Oa(Ii,Wi){var Hi=ia.def('"',Ii,Wi,'" in ',Ur,"?",Ur,".",Ii,Wi,":",Ur,".",Ii);return Hi}var ri=Oa("src","RGB"),Pi=Oa("dst","RGB"),mi=ia.def(wa,"[",ri,"]"),Di=ia.def(wa,"[",Oa("src","Alpha"),"]"),An=ia.def(wa,"[",Pi,"]"),ln=ia.def(wa,"[",Oa("dst","Alpha"),"]");return[mi,An,Di,ln]});case fl:return Qr(function(Gr){if(typeof Gr=="string")return[tn[Gr],tn[Gr]];if(typeof Gr=="object")return[tn[Gr.rgb],tn[Gr.alpha]]},function(Gr,ia,Ur){var wa=Gr.constants.blendEquations,Oa=ia.def(),ri=ia.def(),Pi=Gr.cond("typeof ",Ur,'==="string"');return Pi.then(Oa,"=",ri,"=",wa,"[",Ur,"];"),Pi.else(Oa,"=",wa,"[",Ur,".rgb];",ri,"=",wa,"[",Ur,".alpha];"),ia(Pi),[Oa,ri]});case Il:return Qr(function(Gr){return d(4,function(ia){return+Gr[ia]})},function(Gr,ia,Ur){return d(4,function(wa){return ia.def("+",Ur,"[",wa,"]")})});case hc:return Qr(function(Gr){return Gr|0},function(Gr,ia,Ur){return ia.def(Ur,"|0")});case pc:return Qr(function(Gr){var ia=Gr.cmp||"keep",Ur=Gr.ref||0,wa="mask"in Gr?Gr.mask:-1;return[_a[ia],Ur,wa]},function(Gr,ia,Ur){var wa=Gr.constants.compareFuncs,Oa=ia.def('"cmp" in ',Ur,"?",wa,"[",Ur,".cmp]",":",Rt),ri=ia.def(Ur,".ref|0"),Pi=ia.def('"mask" in ',Ur,"?",Ur,".mask|0:-1");return[Oa,ri,Pi]});case Oe:case R:return Qr(function(Gr){var ia=Gr.fail||"keep",Ur=Gr.zfail||"keep",wa=Gr.zpass||"keep";return[Hr===R?Re:de,Ra[ia],Ra[Ur],Ra[wa]]},function(Gr,ia,Ur){var wa=Gr.constants.stencilOps;function Oa(ri){return ia.def('"',ri,'" in ',Ur,"?",wa,"[",Ur,".",ri,"]:",Rt)}return[Hr===R?Re:de,Oa("fail"),Oa("zfail"),Oa("zpass")]});case Iu:return Qr(function(Gr){var ia=Gr.factor|0,Ur=Gr.units|0;return[ia,Ur]},function(Gr,ia,Ur){var wa=ia.def(Ur,".factor|0"),Oa=ia.def(Ur,".units|0");return[wa,Oa]});case ec:return Qr(function(Gr){var ia=0;return Gr==="front"?ia=de:Gr==="back"&&(ia=Re),ia},function(Gr,ia,Ur){return ia.def(Ur,'==="front"?',de,":",Re)});case yu:return Qr(function(Gr){return Gr},function(Gr,ia,Ur){return Ur});case tf:return Qr(function(Gr){return Na[Gr]},function(Gr,ia,Ur){return ia.def(Ur+'==="cw"?'+$e+":"+pt)});case nu:return Qr(function(Gr){return Gr.map(function(ia){return!!ia})},function(Gr,ia,Ur){return d(4,function(wa){return"!!"+Ur+"["+wa+"]"})});case Po:return Qr(function(Gr){var ia="value"in Gr?Gr.value:1,Ur=!!Gr.invert;return[ia,Ur]},function(Gr,ia,Ur){var wa=ia.def('"value" in ',Ur,"?+",Ur,".value:1"),Oa=ia.def("!!",Ur,".invert");return[wa,Oa]})}}),Vr}function Ol(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Object.keys(dr).forEach(function(Hr){var aa=dr[Hr],Qr;if(typeof aa=="number"||typeof aa=="boolean")Qr=Ni(function(){return aa});else if(typeof aa=="function"){var Gr=aa._reglType;Gr==="texture2d"||Gr==="textureCube"?Qr=Ni(function(ia){return ia.link(aa)}):(Gr==="framebuffer"||Gr==="framebufferCube")&&(Qr=Ni(function(ia){return ia.link(aa.color[0])}))}else Ca(aa)&&(Qr=Ni(function(ia){var Ur=ia.global.def("[",d(aa.length,function(wa){return aa[wa]}),"]");return Ur}));Qr.value=aa,Vr[Hr]=Qr}),Object.keys(Pr).forEach(function(Hr){var aa=Pr[Hr];Vr[Hr]=Qi(aa,function(Qr,Gr){return Qr.invoke(Gr,aa)})}),Vr}function vc(qt,tr){var dr=qt.static,Pr=qt.dynamic,Vr={};return Object.keys(dr).forEach(function(Hr){var aa=dr[Hr],Qr=ra.id(Hr),Gr=new Mi;if(Qa(aa))Gr.state=Jn,Gr.buffer=wi.getBuffer(wi.create(aa,Wr,!1,!0)),Gr.type=0;else{var ia=wi.getBuffer(aa);if(ia)Gr.state=Jn,Gr.buffer=ia,Gr.type=0;else if("constant"in aa){var Ur=aa.constant;Gr.buffer="null",Gr.state=no,typeof Ur=="number"?Gr.x=Ur:Kn.forEach(function(An,ln){ln<Ur.length&&(Gr[An]=Ur[ln])})}else{Qa(aa.buffer)?ia=wi.getBuffer(wi.create(aa.buffer,Wr,!1,!0)):ia=wi.getBuffer(aa.buffer);var wa=aa.offset|0,Oa=aa.stride|0,ri=aa.size|0,Pi=!!aa.normalized,mi=0;"type"in aa&&(mi=sa[aa.type]);var Di=aa.divisor|0;Gr.buffer=ia,Gr.state=Jn,Gr.size=ri,Gr.normalized=Pi,Gr.type=mi||ia.dtype,Gr.offset=wa,Gr.stride=Oa,Gr.divisor=Di}}Vr[Hr]=Ni(function(An,ln){var Ii=An.attribCache;if(Qr in Ii)return Ii[Qr];var Wi={isStream:!1};return Object.keys(Gr).forEach(function(Hi){Wi[Hi]=Gr[Hi]}),Gr.buffer&&(Wi.buffer=An.link(Gr.buffer),Wi.type=Wi.type||Wi.buffer+".dtype"),Ii[Qr]=Wi,Wi})}),Object.keys(Pr).forEach(function(Hr){var aa=Pr[Hr];function Qr(Gr,ia){var Ur=Gr.invoke(ia,aa),wa=Gr.shared,Oa=Gr.constants,ri=wa.isBufferArgs,Pi=wa.buffer,mi={isStream:ia.def(!1)},Di=new Mi;Di.state=Jn,Object.keys(Di).forEach(function(Wi){mi[Wi]=ia.def(""+Di[Wi])});var An=mi.buffer,ln=mi.type;ia("if(",ri,"(",Ur,")){",mi.isStream,"=true;",An,"=",Pi,".createStream(",Wr,",",Ur,");",ln,"=",An,".dtype;","}else{",An,"=",Pi,".getBuffer(",Ur,");","if(",An,"){",ln,"=",An,".dtype;",'}else if("constant" in ',Ur,"){",mi.state,"=",no,";","if(typeof "+Ur+'.constant === "number"){',mi[Kn[0]],"=",Ur,".constant;",Kn.slice(1).map(function(Wi){return mi[Wi]}).join("="),"=0;","}else{",Kn.map(function(Wi,Hi){return mi[Wi]+"="+Ur+".constant.length>"+Hi+"?"+Ur+".constant["+Hi+"]:0;"}).join(""),"}}else{","if(",ri,"(",Ur,".buffer)){",An,"=",Pi,".createStream(",Wr,",",Ur,".buffer);","}else{",An,"=",Pi,".getBuffer(",Ur,".buffer);","}",ln,'="type" in ',Ur,"?",Oa.glTypes,"[",Ur,".type]:",An,".dtype;",mi.normalized,"=!!",Ur,".normalized;");function Ii(Wi){ia(mi[Wi],"=",Ur,".",Wi,"|0;")}return Ii("size"),Ii("offset"),Ii("stride"),Ii("divisor"),ia("}}"),ia.exit("if(",mi.isStream,"){",Pi,".destroyStream(",An,");","}"),mi}Vr[Hr]=Qi(aa,Qr)}),Vr}function mc(qt){var tr=qt.static,dr=qt.dynamic,Pr={};return Object.keys(tr).forEach(function(Vr){var Hr=tr[Vr];Pr[Vr]=Ni(function(aa,Qr){return typeof Hr=="number"||typeof Hr=="boolean"?""+Hr:aa.link(Hr)})}),Object.keys(dr).forEach(function(Vr){var Hr=dr[Vr];Pr[Vr]=Qi(Hr,function(aa,Qr){return aa.invoke(Qr,Hr)})}),Pr}function rf(qt,tr,dr,Pr,Vr){var Hr=qt.static,aa=qt.dynamic,Qr=$l(qt,tr),Gr=os(qt,Vr),ia=As(qt,Gr,Vr),Ur=Ws(qt,Vr),wa=jc(qt,Vr),Oa=Uc(qt,Vr,Qr);function ri(Ii){var Wi=ia[Ii];Wi&&(wa[Ii]=Wi)}ri(Se),ri(Rn(we));var Pi=Object.keys(wa).length>0,mi={framebuffer:Gr,draw:Ur,shader:Oa,state:wa,dirty:Pi,scopeVAO:null,drawVAO:null,useVAO:!1,attributes:{}};if(mi.profile=Xo(qt,Vr),mi.uniforms=Ol(dr,Vr),mi.drawVAO=mi.scopeVAO=Ur.vao,!mi.drawVAO&&Oa.program&&!Qr&&Ta.angle_instanced_arrays&&Ur.static.elements){var Di=!0,An=Oa.program.attributes.map(function(Ii){var Wi=tr.static[Ii];return Di=Di&&!!Wi,Wi});if(Di&&An.length>0){var ln=fn.getVAO(fn.createVAO({attributes:An,elements:Ur.static.elements}));mi.drawVAO=new Da(null,null,null,function(Ii,Wi){return Ii.link(ln)}),mi.useVAO=!0}}return Qr?mi.useVAO=!0:mi.attributes=vc(tr,Vr),mi.context=mc(Pr,Vr),mi}function Yl(qt,tr,dr){var Pr=qt.shared,Vr=Pr.context,Hr=qt.scope();Object.keys(dr).forEach(function(aa){tr.save(Vr,"."+aa);var Qr=dr[aa],Gr=Qr.append(qt,tr);Array.isArray(Gr)?Hr(Vr,".",aa,"=[",Gr.join(),"];"):Hr(Vr,".",aa,"=",Gr,";")}),tr(Hr)}function Mc(qt,tr,dr,Pr){var Vr=qt.shared,Hr=Vr.gl,aa=Vr.framebuffer,Qr;qi&&(Qr=tr.def(Vr.extensions,".webgl_draw_buffers"));var Gr=qt.constants,ia=Gr.drawBuffer,Ur=Gr.backBuffer,wa;dr?wa=dr.append(qt,tr):wa=tr.def(aa,".next"),Pr||tr("if(",wa,"!==",aa,".cur){"),tr("if(",wa,"){",Hr,".bindFramebuffer(",fa,",",wa,".framebuffer);"),qi&&tr(Qr,".drawBuffersWEBGL(",ia,"[",wa,".colorAttachments.length]);"),tr("}else{",Hr,".bindFramebuffer(",fa,",null);"),qi&&tr(Qr,".drawBuffersWEBGL(",Ur,");"),tr("}",aa,".cur=",wa,";"),Pr||tr("}")}function Vc(qt,tr,dr){var Pr=qt.shared,Vr=Pr.gl,Hr=qt.current,aa=qt.next,Qr=Pr.current,Gr=Pr.next,ia=qt.cond(Qr,".dirty");Zi.forEach(function(Ur){var wa=Rn(Ur);if(!(wa in dr.state)){var Oa,ri;if(wa in aa){Oa=aa[wa],ri=Hr[wa];var Pi=d(bn[wa].length,function(Di){return ia.def(Oa,"[",Di,"]")});ia(qt.cond(Pi.map(function(Di,An){return Di+"!=="+ri+"["+An+"]"}).join("||")).then(Vr,".",Zn[wa],"(",Pi,");",Pi.map(function(Di,An){return ri+"["+An+"]="+Di}).join(";"),";"))}else{Oa=ia.def(Gr,".",wa);var mi=qt.cond(Oa,"!==",Qr,".",wa);ia(mi),wa in Ui?mi(qt.cond(Oa).then(Vr,".enable(",Ui[wa],");").else(Vr,".disable(",Ui[wa],");"),Qr,".",wa,"=",Oa,";"):mi(Vr,".",Zn[wa],"(",Oa,");",Qr,".",wa,"=",Oa,";")}}}),Object.keys(dr.state).length===0&&ia(Qr,".dirty=false;"),tr(ia)}function Ds(qt,tr,dr,Pr){var Vr=qt.shared,Hr=qt.current,aa=Vr.current,Qr=Vr.gl,Gr;Ya(Object.keys(dr)).forEach(function(ia){var Ur=dr[ia];if(!(Pr&&!Pr(Ur))){var wa=Ur.append(qt,tr);if(Ui[ia]){var Oa=Ui[ia];zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(qt.cond(Gr).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",Gr,";")):(tr(qt.cond(wa).then(Qr,".enable(",Oa,");").else(Qr,".disable(",Oa,");")),tr(aa,".",ia,"=",wa,";"))}else if(Ca(wa)){var ri=Hr[ia];tr(Qr,".",Zn[ia],"(",wa,");",wa.map(function(Pi,mi){return ri+"["+mi+"]="+Pi}).join(";"),";")}else zi(Ur)?(Gr=qt.link(wa,{stable:!0}),tr(Qr,".",Zn[ia],"(",Gr,");",aa,".",ia,"=",Gr,";")):tr(Qr,".",Zn[ia],"(",wa,");",aa,".",ia,"=",wa,";")}})}function af(qt,tr){pn&&(qt.instancing=tr.def(qt.shared.extensions,".angle_instanced_arrays"))}function Cs(qt,tr,dr,Pr,Vr){var Hr=qt.shared,aa=qt.stats,Qr=Hr.current,Gr=Hr.timer,ia=dr.profile;function Ur(){return typeof performance>"u"?"Date.now()":"performance.now()"}var wa,Oa;function ri(Ii){wa=tr.def(),Ii(wa,"=",Ur(),";"),typeof Vr=="string"?Ii(aa,".count+=",Vr,";"):Ii(aa,".count++;"),on&&(Pr?(Oa=tr.def(),Ii(Oa,"=",Gr,".getNumPendingQueries();")):Ii(Gr,".beginQuery(",aa,");"))}function Pi(Ii){Ii(aa,".cpuTime+=",Ur(),"-",wa,";"),on&&(Pr?Ii(Gr,".pushScopeStats(",Oa,",",Gr,".getNumPendingQueries(),",aa,");"):Ii(Gr,".endQuery();"))}function mi(Ii){var Wi=tr.def(Qr,".profile");tr(Qr,".profile=",Ii,";"),tr.exit(Qr,".profile=",Wi,";")}var Di;if(ia){if(zi(ia)){ia.enable?(ri(tr),Pi(tr.exit),mi("true")):mi("false");return}Di=ia.append(qt,tr),mi(Di)}else Di=tr.def(Qr,".profile");var An=qt.block();ri(An),tr("if(",Di,"){",An,"}");var ln=qt.block();Pi(ln),tr.exit("if(",Di,"){",ln,"}")}function ve(qt,tr,dr,Pr,Vr){var Hr=qt.shared;function aa(Gr){switch(Gr){case ts:case rl:case Rl:return 2;case yo:case Ys:case Xl:return 3;case Vo:case Zo:case qu:return 4;default:return 1}}function Qr(Gr,ia,Ur){var wa=Hr.gl,Oa=tr.def(Gr,".location"),ri=tr.def(Hr.attributes,"[",Oa,"]"),Pi=Ur.state,mi=Ur.buffer,Di=[Ur.x,Ur.y,Ur.z,Ur.w],An=["buffer","normalized","offset","stride"];function ln(){tr("if(!",ri,".buffer){",wa,".enableVertexAttribArray(",Oa,");}");var Wi=Ur.type,Hi;if(Ur.size?Hi=tr.def(Ur.size,"||",ia):Hi=ia,tr("if(",ri,".type!==",Wi,"||",ri,".size!==",Hi,"||",An.map(function(zn){return ri+"."+zn+"!=="+Ur[zn]}).join("||"),"){",wa,".bindBuffer(",Wr,",",mi,".buffer);",wa,".vertexAttribPointer(",[Oa,Hi,Wi,Ur.normalized,Ur.stride,Ur.offset],");",ri,".type=",Wi,";",ri,".size=",Hi,";",An.map(function(zn){return ri+"."+zn+"="+Ur[zn]+";"}).join(""),"}"),pn){var yn=Ur.divisor;tr("if(",ri,".divisor!==",yn,"){",qt.instancing,".vertexAttribDivisorANGLE(",[Oa,yn],");",ri,".divisor=",yn,";}")}}function Ii(){tr("if(",ri,".buffer){",wa,".disableVertexAttribArray(",Oa,");",ri,".buffer=null;","}if(",Kn.map(function(Wi,Hi){return ri+"."+Wi+"!=="+Di[Hi]}).join("||"),"){",wa,".vertexAttrib4f(",Oa,",",Di,");",Kn.map(function(Wi,Hi){return ri+"."+Wi+"="+Di[Hi]+";"}).join(""),"}")}Pi===Jn?ln():Pi===no?Ii():(tr("if(",Pi,"===",Jn,"){"),ln(),tr("}else{"),Ii(),tr("}"))}Pr.forEach(function(Gr){var ia=Gr.name,Ur=dr.attributes[ia],wa;if(Ur){if(!Vr(Ur))return;wa=Ur.append(qt,tr)}else{if(!Vr(hn))return;var Oa=qt.scopeAttrib(ia);wa={},Object.keys(new Mi).forEach(function(ri){wa[ri]=tr.def(Oa,".",ri)})}Qr(qt.link(Gr),aa(Gr.info.type),wa)})}function K(qt,tr,dr,Pr,Vr,Hr){for(var aa=qt.shared,Qr=aa.gl,Gr,ia=0;ia<Pr.length;++ia){var Ur=Pr[ia],wa=Ur.name,Oa=Ur.info.type,ri=dr.uniforms[wa],Pi=qt.link(Ur),mi=Pi+".location",Di;if(ri){if(!Vr(ri))continue;if(zi(ri)){var An=ri.value;if(Oa===Sc||Oa===ql){var ln=qt.link(An._texture||An.color[0]._texture);tr(Qr,".uniform1i(",mi,",",ln+".bind());"),tr.exit(ln,".unbind();")}else if(Oa===fu||Oa===bl||Oa===ou){var Ii=qt.global.def("new Float32Array(["+Array.prototype.slice.call(An)+"])"),Wi=2;Oa===bl?Wi=3:Oa===ou&&(Wi=4),tr(Qr,".uniformMatrix",Wi,"fv(",mi,",false,",Ii,");")}else{switch(Oa){case ho:Gr="1f";break;case ts:Gr="2f";break;case yo:Gr="3f";break;case Vo:Gr="4f";break;case Go:Gr="1i";break;case ls:Gr="1i";break;case Rl:Gr="2i";break;case rl:Gr="2i";break;case Xl:Gr="3i";break;case Ys:Gr="3i";break;case qu:Gr="4i";break;case Zo:Gr="4i";break}tr(Qr,".uniform",Gr,"(",mi,",",Ca(An)?Array.prototype.slice.call(An):An,");")}continue}else Di=ri.append(qt,tr)}else{if(!Vr(hn))continue;Di=tr.def(aa.uniforms,"[",ra.id(wa),"]")}Oa===Sc?tr("if(",Di,"&&",Di,'._reglType==="framebuffer"){',Di,"=",Di,".color[0];","}"):Oa===ql&&tr("if(",Di,"&&",Di,'._reglType==="framebufferCube"){',Di,"=",Di,".color[0];","}");var Hi=1;switch(Oa){case Sc:case ql:var yn=tr.def(Di,"._texture");tr(Qr,".uniform1i(",mi,",",yn,".bind());"),tr.exit(yn,".unbind();");continue;case ls:case Go:Gr="1i";break;case rl:case Rl:Gr="2i",Hi=2;break;case Ys:case Xl:Gr="3i",Hi=3;break;case Zo:case qu:Gr="4i",Hi=4;break;case ho:Gr="1f";break;case ts:Gr="2f",Hi=2;break;case yo:Gr="3f",Hi=3;break;case Vo:Gr="4f",Hi=4;break;case fu:Gr="Matrix2fv";break;case bl:Gr="Matrix3fv";break;case ou:Gr="Matrix4fv";break}if(Gr.charAt(0)==="M"){tr(Qr,".uniform",Gr,"(",mi,",");var zn=Math.pow(Oa-fu+2,2),ms=qt.global.def("new Float32Array(",zn,")");Array.isArray(Di)?tr("false,(",d(zn,function(wl){return ms+"["+wl+"]="+Di[wl]}),",",ms,")"):tr("false,(Array.isArray(",Di,")||",Di," instanceof Float32Array)?",Di,":(",d(zn,function(wl){return ms+"["+wl+"]="+Di+"["+wl+"]"}),",",ms,")"),tr(");")}else if(Hi>1){for(var us=[],Vs=[],qo=0;qo<Hi;++qo)Array.isArray(Di)?Vs.push(Di[qo]):Vs.push(tr.def(Di+"["+qo+"]")),Hr&&us.push(tr.def());Hr&&tr("if(!",qt.batchId,"||",us.map(function(wl,Ru){return wl+"!=="+Vs[Ru]}).join("||"),"){",us.map(function(wl,Ru){return wl+"="+Vs[Ru]+";"}).join("")),tr(Qr,".uniform",Gr,"(",mi,",",Vs.join(","),");"),Hr&&tr("}")}else{if(Hr){var Ls=tr.def();tr("if(!",qt.batchId,"||",Ls,"!==",Di,"){",Ls,"=",Di,";")}tr(Qr,".uniform",Gr,"(",mi,",",Di,");"),Hr&&tr("}")}}}function ye(qt,tr,dr,Pr){var Vr=qt.shared,Hr=Vr.gl,aa=Vr.draw,Qr=Pr.draw;function Gr(){var Hi=Qr.elements,yn,zn=tr;return Hi?((Hi.contextDep&&Pr.contextDynamic||Hi.propDep)&&(zn=dr),yn=Hi.append(qt,zn),Qr.elementsActive&&zn("if("+yn+")"+Hr+".bindBuffer("+ha+","+yn+".buffer.buffer);")):(yn=zn.def(),zn(yn,"=",aa,".",Yt,";","if(",yn,"){",Hr,".bindBuffer(",ha,",",yn,".buffer.buffer);}","else if(",Vr.vao,".currentVAO){",yn,"=",qt.shared.elements+".getElements("+Vr.vao,".currentVAO.elements);",Dn?"":"if("+yn+")"+Hr+".bindBuffer("+ha+","+yn+".buffer.buffer);","}")),yn}function ia(){var Hi=Qr.count,yn,zn=tr;return Hi?((Hi.contextDep&&Pr.contextDynamic||Hi.propDep)&&(zn=dr),yn=Hi.append(qt,zn)):yn=zn.def(aa,".",hr),yn}var Ur=Gr();function wa(Hi){var yn=Qr[Hi];return yn?yn.contextDep&&Pr.contextDynamic||yn.propDep?yn.append(qt,dr):yn.append(qt,tr):tr.def(aa,".",Hi)}var Oa=wa(cr),ri=wa(jr),Pi=ia();if(typeof Pi=="number"){if(Pi===0)return}else dr("if(",Pi,"){"),dr.exit("}");var mi,Di;pn&&(mi=wa(ea),Di=qt.instancing);var An=Ur+".type",ln=Qr.elements&&zi(Qr.elements)&&!Qr.vaoActive;function Ii(){function Hi(){dr(Di,".drawElementsInstancedANGLE(",[Oa,Pi,An,ri+"<<(("+An+"-"+Wn+")>>1)",mi],");")}function yn(){dr(Di,".drawArraysInstancedANGLE(",[Oa,ri,Pi,mi],");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}function Wi(){function Hi(){dr(Hr+".drawElements("+[Oa,Pi,An,ri+"<<(("+An+"-"+Wn+")>>1)"]+");")}function yn(){dr(Hr+".drawArrays("+[Oa,ri,Pi]+");")}Ur&&Ur!=="null"?ln?Hi():(dr("if(",Ur,"){"),Hi(),dr("}else{"),yn(),dr("}")):yn()}pn&&(typeof mi!="number"||mi>=0)?typeof mi=="string"?(dr("if(",mi,">0){"),Ii(),dr("}else if(",mi,"<0){"),Wi(),dr("}")):Ii():Wi()}function te(qt,tr,dr,Pr,Vr){var Hr=oo(),aa=Hr.proc("body",Vr);return pn&&(Hr.instancing=aa.def(Hr.shared.extensions,".angle_instanced_arrays")),qt(Hr,aa,dr,Pr),Hr.compile().body}function xe(qt,tr,dr,Pr){af(qt,tr),dr.useVAO?dr.drawVAO?tr(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,tr),");"):tr(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(tr(qt.shared.vao,".setVAO(null);"),ve(qt,tr,dr,Pr.attributes,function(){return!0})),K(qt,tr,dr,Pr.uniforms,function(){return!0},!1),ye(qt,tr,tr,dr)}function We(qt,tr){var dr=qt.proc("draw",1);af(qt,dr),Yl(qt,dr,tr.context),Mc(qt,dr,tr.framebuffer),Vc(qt,dr,tr),Ds(qt,dr,tr.state),Cs(qt,dr,tr,!1,!0);var Pr=tr.shader.progVar.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",Pr,".program);"),tr.shader.program)xe(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Vr=qt.global.def("{}"),Hr=dr.def(Pr,".id"),aa=dr.def(Vr,"[",Hr,"]");dr(qt.cond(aa).then(aa,".call(this,a0);").else(aa,"=",Vr,"[",Hr,"]=",qt.link(function(Qr){return te(xe,qt,tr,Qr,1)}),"(",Pr,");",aa,".call(this,a0);"))}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function He(qt,tr,dr,Pr){qt.batchId="a1",af(qt,tr);function Vr(){return!0}ve(qt,tr,dr,Pr.attributes,Vr),K(qt,tr,dr,Pr.uniforms,Vr,!1),ye(qt,tr,tr,dr)}function st(qt,tr,dr,Pr){af(qt,tr);var Vr=dr.contextDep,Hr=tr.def(),aa="a0",Qr="a1",Gr=tr.def();qt.shared.props=Gr,qt.batchId=Hr;var ia=qt.scope(),Ur=qt.scope();tr(ia.entry,"for(",Hr,"=0;",Hr,"<",Qr,";++",Hr,"){",Gr,"=",aa,"[",Hr,"];",Ur,"}",ia.exit);function wa(An){return An.contextDep&&Vr||An.propDep}function Oa(An){return!wa(An)}if(dr.needsContext&&Yl(qt,Ur,dr.context),dr.needsFramebuffer&&Mc(qt,Ur,dr.framebuffer),Ds(qt,Ur,dr.state,wa),dr.profile&&wa(dr.profile)&&Cs(qt,Ur,dr,!1,!0),Pr)dr.useVAO?dr.drawVAO?wa(dr.drawVAO)?Ur(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,Ur),");"):ia(qt.shared.vao,".setVAO(",dr.drawVAO.append(qt,ia),");"):ia(qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"):(ia(qt.shared.vao,".setVAO(null);"),ve(qt,ia,dr,Pr.attributes,Oa),ve(qt,Ur,dr,Pr.attributes,wa)),K(qt,ia,dr,Pr.uniforms,Oa,!1),K(qt,Ur,dr,Pr.uniforms,wa,!0),ye(qt,ia,Ur,dr);else{var ri=qt.global.def("{}"),Pi=dr.shader.progVar.append(qt,Ur),mi=Ur.def(Pi,".id"),Di=Ur.def(ri,"[",mi,"]");Ur(qt.shared.gl,".useProgram(",Pi,".program);","if(!",Di,"){",Di,"=",ri,"[",mi,"]=",qt.link(function(An){return te(He,qt,dr,An,2)}),"(",Pi,");}",Di,".call(this,a0[",Hr,"],",Hr,");")}}function Et(qt,tr){var dr=qt.proc("batch",2);qt.batchId="0",af(qt,dr);var Pr=!1,Vr=!0;Object.keys(tr.context).forEach(function(ri){Pr=Pr||tr.context[ri].propDep}),Pr||(Yl(qt,dr,tr.context),Vr=!1);var Hr=tr.framebuffer,aa=!1;Hr?(Hr.propDep?Pr=aa=!0:Hr.contextDep&&Pr&&(aa=!0),aa||Mc(qt,dr,Hr)):Mc(qt,dr,null),tr.state.viewport&&tr.state.viewport.propDep&&(Pr=!0);function Qr(ri){return ri.contextDep&&Pr||ri.propDep}Vc(qt,dr,tr),Ds(qt,dr,tr.state,function(ri){return!Qr(ri)}),(!tr.profile||!Qr(tr.profile))&&Cs(qt,dr,tr,!1,"a1"),tr.contextDep=Pr,tr.needsContext=Vr,tr.needsFramebuffer=aa;var Gr=tr.shader.progVar;if(Gr.contextDep&&Pr||Gr.propDep)st(qt,dr,tr,null);else{var ia=Gr.append(qt,dr);if(dr(qt.shared.gl,".useProgram(",ia,".program);"),tr.shader.program)st(qt,dr,tr,tr.shader.program);else{dr(qt.shared.vao,".setVAO(null);");var Ur=qt.global.def("{}"),wa=dr.def(ia,".id"),Oa=dr.def(Ur,"[",wa,"]");dr(qt.cond(Oa).then(Oa,".call(this,a0,a1);").else(Oa,"=",Ur,"[",wa,"]=",qt.link(function(ri){return te(st,qt,tr,ri,2)}),"(",ia,");",Oa,".call(this,a0,a1);"))}}Object.keys(tr.state).length>0&&dr(qt.shared.current,".dirty=true;"),qt.shared.vao&&dr(qt.shared.vao,".setVAO(null);")}function Ht(qt,tr){var dr=qt.proc("scope",3);qt.batchId="a2";var Pr=qt.shared,Vr=Pr.current;if(Yl(qt,dr,tr.context),tr.framebuffer&&tr.framebuffer.append(qt,dr),Ya(Object.keys(tr.state)).forEach(function(Qr){var Gr=tr.state[Qr],ia=Gr.append(qt,dr);Ca(ia)?ia.forEach(function(Ur,wa){jn(Ur)?dr.set(qt.next[Qr],"["+wa+"]",Ur):dr.set(qt.next[Qr],"["+wa+"]",qt.link(Ur,{stable:!0}))}):zi(Gr)?dr.set(Pr.next,"."+Qr,qt.link(ia,{stable:!0})):dr.set(Pr.next,"."+Qr,ia)}),Cs(qt,dr,tr,!0,!0),[Yt,jr,hr,ea,cr].forEach(function(Qr){var Gr=tr.draw[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.draw,"."+Qr,ia):dr.set(Pr.draw,"."+Qr,qt.link(ia),{stable:!0})}}),Object.keys(tr.uniforms).forEach(function(Qr){var Gr=tr.uniforms[Qr].append(qt,dr);Array.isArray(Gr)&&(Gr="["+Gr.map(function(ia){return jn(ia)?ia:qt.link(ia,{stable:!0})})+"]"),dr.set(Pr.uniforms,"["+qt.link(ra.id(Qr),{stable:!0})+"]",Gr)}),Object.keys(tr.attributes).forEach(function(Qr){var Gr=tr.attributes[Qr].append(qt,dr),ia=qt.scopeAttrib(Qr);Object.keys(new Mi).forEach(function(Ur){dr.set(ia,"."+Ur,Gr[Ur])})}),tr.scopeVAO){var Hr=tr.scopeVAO.append(qt,dr);jn(Hr)?dr.set(Pr.vao,".targetVAO",Hr):dr.set(Pr.vao,".targetVAO",qt.link(Hr,{stable:!0}))}function aa(Qr){var Gr=tr.shader[Qr];if(Gr){var ia=Gr.append(qt,dr);jn(ia)?dr.set(Pr.shader,"."+Qr,ia):dr.set(Pr.shader,"."+Qr,qt.link(ia,{stable:!0}))}}aa(bt),aa(Dt),Object.keys(tr.state).length>0&&(dr(Vr,".dirty=true;"),dr.exit(Vr,".dirty=true;")),dr("a1(",qt.shared.context,",a0,",qt.batchId,");")}function yr(qt){if(!(typeof qt!="object"||Ca(qt))){for(var tr=Object.keys(qt),dr=0;dr<tr.length;++dr)if(c.isDynamic(qt[tr[dr]]))return!0;return!1}}function Ir(qt,tr,dr){var Pr=tr.static[dr];if(!Pr||!yr(Pr))return;var Vr=qt.global,Hr=Object.keys(Pr),aa=!1,Qr=!1,Gr=!1,ia=qt.global.def("{}");Hr.forEach(function(wa){var Oa=Pr[wa];if(c.isDynamic(Oa)){typeof Oa=="function"&&(Oa=Pr[wa]=c.unbox(Oa));var ri=Qi(Oa,null);aa=aa||ri.thisDep,Gr=Gr||ri.propDep,Qr=Qr||ri.contextDep}else{switch(Vr(ia,".",wa,"="),typeof Oa){case"number":Vr(Oa);break;case"string":Vr('"',Oa,'"');break;case"object":Array.isArray(Oa)&&Vr("[",Oa.join(),"]");break;default:Vr(qt.link(Oa));break}Vr(";")}});function Ur(wa,Oa){Hr.forEach(function(ri){var Pi=Pr[ri];if(c.isDynamic(Pi)){var mi=wa.invoke(Oa,Pi);Oa(ia,".",ri,"=",mi,";")}})}tr.dynamic[dr]=new c.DynamicVariable(bs,{thisDep:aa,contextDep:Qr,propDep:Gr,ref:ia,append:Ur}),delete tr.static[dr]}function wr(qt,tr,dr,Pr,Vr){var Hr=oo();Hr.stats=Hr.link(Vr),Object.keys(tr.static).forEach(function(Qr){Ir(Hr,tr,Qr)}),Sr.forEach(function(Qr){Ir(Hr,qt,Qr)});var aa=rf(qt,tr,dr,Pr,Hr);return aa.shader.program&&(aa.shader.program.attributes.sort(function(Qr,Gr){return Qr.name<Gr.name?-1:1}),aa.shader.program.uniforms.sort(function(Qr,Gr){return Qr.name<Gr.name?-1:1})),We(Hr,aa),Ht(Hr,aa),Et(Hr,aa),g(Hr.compile(),{destroy:function(){aa.shader.program.destroy()}})}return{next:_o,current:bn,procs:function(){var qt=oo(),tr=qt.proc("poll"),dr=qt.proc("refresh"),Pr=qt.block();tr(Pr),dr(Pr);var Vr=qt.shared,Hr=Vr.gl,aa=Vr.next,Qr=Vr.current;Pr(Qr,".dirty=false;"),Mc(qt,tr),Mc(qt,dr,null,!0);var Gr;pn&&(Gr=qt.link(pn)),Ta.oes_vertex_array_object&&dr(qt.link(Ta.oes_vertex_array_object),".bindVertexArrayOES(null);");var ia=dr.def(Vr.attributes),Ur=dr.def(0),wa=qt.cond(Ur,".buffer");wa.then(Hr,".enableVertexAttribArray(i);",Hr,".bindBuffer(",Wr,",",Ur,".buffer.buffer);",Hr,".vertexAttribPointer(i,",Ur,".size,",Ur,".type,",Ur,".normalized,",Ur,".stride,",Ur,".offset);").else(Hr,".disableVertexAttribArray(i);",Hr,".vertexAttrib4f(i,",Ur,".x,",Ur,".y,",Ur,".z,",Ur,".w);",Ur,".buffer=null;");var Oa=qt.link(si.maxAttributes,{stable:!0});return dr("for(var i=0;i<",Oa,";++i){",Ur,"=",ia,"[i];",wa,"}"),pn&&dr("for(var i=0;i<",Oa,";++i){",Gr,".vertexAttribDivisorANGLE(i,",ia,"[i].divisor);","}"),dr(qt.shared.vao,".currentVAO=null;",qt.shared.vao,".setVAO(",qt.shared.vao,".targetVAO);"),Object.keys(Ui).forEach(function(ri){var Pi=Ui[ri],mi=Pr.def(aa,".",ri),Di=qt.block();Di("if(",mi,"){",Hr,".enable(",Pi,")}else{",Hr,".disable(",Pi,")}",Qr,".",ri,"=",mi,";"),dr(Di),tr("if(",mi,"!==",Qr,".",ri,"){",Di,"}")}),Object.keys(Zn).forEach(function(ri){var Pi=Zn[ri],mi=bn[ri],Di,An,ln=qt.block();if(ln(Hr,".",Pi,"("),Ca(mi)){var Ii=mi.length;Di=qt.global.def(aa,".",ri),An=qt.global.def(Qr,".",ri),ln(d(Ii,function(Wi){return Di+"["+Wi+"]"}),");",d(Ii,function(Wi){return An+"["+Wi+"]="+Di+"["+Wi+"];"}).join("")),tr("if(",d(Ii,function(Wi){return Di+"["+Wi+"]!=="+An+"["+Wi+"]"}).join("||"),"){",ln,"}")}else Di=Pr.def(aa,".",ri),An=Pr.def(Qr,".",ri),ln(Di,");",Qr,".",ri,"=",Di,";"),tr("if(",Di,"!==",An,"){",ln,"}");dr(ln)}),qt.compile()}(),compile:wr}}function Vn(){return{vaoCount:0,bufferCount:0,elementsCount:0,framebufferCount:0,shaderCount:0,textureCount:0,cubeCount:0,renderbufferCount:0,maxTextureUnits:0}}var No=34918,Gn=34919,Fo=35007,Ks=function(Qt,ra){if(!ra.ext_disjoint_timer_query)return null;var Ta=[];function si(){return Ta.pop()||ra.ext_disjoint_timer_query.createQueryEXT()}function wi(tn){Ta.push(tn)}var xi=[];function bi(tn){var pn=si();ra.ext_disjoint_timer_query.beginQueryEXT(Fo,pn),xi.push(pn),on(xi.length-1,xi.length,tn)}function Fi(){ra.ext_disjoint_timer_query.endQueryEXT(Fo)}function cn(){this.startQueryIndex=-1,this.endQueryIndex=-1,this.sum=0,this.stats=null}var fn=[];function Gi(){return fn.pop()||new cn}function Io(tn){fn.push(tn)}var nn=[];function on(tn,pn,qi){var Dn=Gi();Dn.startQueryIndex=tn,Dn.endQueryIndex=pn,Dn.sum=0,Dn.stats=qi,nn.push(Dn)}var Oi=[],ui=[];function Mi(){var tn,pn,qi=xi.length;if(qi!==0){ui.length=Math.max(ui.length,qi+1),Oi.length=Math.max(Oi.length,qi+1),Oi[0]=0,ui[0]=0;var Dn=0;for(tn=0,pn=0;pn<xi.length;++pn){var bn=xi[pn];ra.ext_disjoint_timer_query.getQueryObjectEXT(bn,Gn)?(Dn+=ra.ext_disjoint_timer_query.getQueryObjectEXT(bn,No),wi(bn)):xi[tn++]=bn,Oi[pn+1]=Dn,ui[pn+1]=tn}for(xi.length=tn,tn=0,pn=0;pn<nn.length;++pn){var _o=nn[pn],Zi=_o.startQueryIndex,Ui=_o.endQueryIndex;_o.sum+=Oi[Ui]-Oi[Zi];var Zn=ui[Zi],Rn=ui[Ui];Rn===Zn?(_o.stats.gpuTime+=_o.sum/1e6,Io(_o)):(_o.startQueryIndex=Zn,_o.endQueryIndex=Rn,nn[tn++]=_o)}nn.length=tn}}return{beginQuery:bi,endQuery:Fi,pushScopeStats:on,update:Mi,getNumPendingQueries:function(){return xi.length},clear:function(){Ta.push.apply(Ta,xi);for(var tn=0;tn<Ta.length;tn++)ra.ext_disjoint_timer_query.deleteQueryEXT(Ta[tn]);xi.length=0,Ta.length=0},restore:function(){xi.length=0,Ta.length=0}}},Gs=16384,sl=256,Vi=1024,ao=34962,ns="webglcontextlost",hs="webglcontextrestored",hl=1,Dl=2,hu=3;function Ll(Qt,ra){for(var Ta=0;Ta<Qt.length;++Ta)if(Qt[Ta]===ra)return Ta;return-1}function dc(Qt){var ra=m(Qt);if(!ra)return null;var Ta=ra.gl,si=Ta.getContextAttributes(),wi=Ta.isContextLost(),xi=b(Ta,ra);if(!xi)return null;var bi=p(),Fi=Vn(),cn=ra.cachedCode||{},fn=xi.extensions,Gi=Ks(Ta,fn),Io=v(),nn=Ta.drawingBufferWidth,on=Ta.drawingBufferHeight,Oi={tick:0,time:0,viewportWidth:nn,viewportHeight:on,framebufferWidth:nn,framebufferHeight:on,drawingBufferWidth:nn,drawingBufferHeight:on,pixelRatio:ra.pixelRatio},ui={},Mi={elements:null,primitive:4,count:-1,offset:0,instances:-1},tn=Cr(Ta,fn),pn=pa(Ta,Fi,ra,bn),qi=ir(Ta,fn,pn,Fi),Dn=gu(Ta,fn,tn,Fi,pn,qi,Mi);function bn(te){return Dn.destroyBuffer(te)}var _o=ju(Ta,bi,Fi,ra),Zi=Jc(Ta,fn,tn,function(){Rn.procs.poll()},Oi,Fi,ra),Ui=xc(Ta,fn,tn,Fi,ra),Zn=$c(Ta,fn,tn,Zi,Ui,Fi),Rn=Un(Ta,bi,fn,tn,pn,qi,Zi,Zn,ui,Dn,_o,Mi,Oi,Gi,cn,ra),xn=Vl(Ta,Zn,Rn.procs.poll,Oi,si,fn,tn),dn=Rn.next,jn=Ta.canvas,Ro=[],rs=[],wn=[],oo=[ra.onDestroy],Xo=null;function os(){if(Ro.length===0){Gi&&Gi.update(),Xo=null;return}Xo=h.next(os),Vc();for(var te=Ro.length-1;te>=0;--te){var xe=Ro[te];xe&&xe(Oi,null,0)}Ta.flush(),Gi&&Gi.update()}function As(){!Xo&&Ro.length>0&&(Xo=h.next(os))}function $l(){Xo&&(h.cancel(os),Xo=null)}function Uc(te){te.preventDefault(),wi=!0,$l(),rs.forEach(function(xe){xe()})}function Ws(te){Ta.getError(),wi=!1,xi.restore(),_o.restore(),pn.restore(),Zi.restore(),Ui.restore(),Zn.restore(),Dn.restore(),Gi&&Gi.restore(),Rn.procs.refresh(),As(),wn.forEach(function(xe){xe()})}jn&&(jn.addEventListener(ns,Uc,!1),jn.addEventListener(hs,Ws,!1));function jc(){Ro.length=0,$l(),jn&&(jn.removeEventListener(ns,Uc),jn.removeEventListener(hs,Ws)),_o.clear(),Zn.clear(),Ui.clear(),Dn.clear(),Zi.clear(),qi.clear(),pn.clear(),Gi&&Gi.clear(),oo.forEach(function(te){te()})}function Ol(te){function xe(Hr){var aa=g({},Hr);delete aa.uniforms,delete aa.attributes,delete aa.context,delete aa.vao,"stencil"in aa&&aa.stencil.op&&(aa.stencil.opBack=aa.stencil.opFront=aa.stencil.op,delete aa.stencil.op);function Qr(Gr){if(Gr in aa){var ia=aa[Gr];delete aa[Gr],Object.keys(ia).forEach(function(Ur){aa[Gr+"."+Ur]=ia[Ur]})}}return Qr("blend"),Qr("depth"),Qr("cull"),Qr("stencil"),Qr("polygonOffset"),Qr("scissor"),Qr("sample"),"vao"in Hr&&(aa.vao=Hr.vao),aa}function We(Hr,aa){var Qr={},Gr={};return Object.keys(Hr).forEach(function(ia){var Ur=Hr[ia];if(c.isDynamic(Ur)){Gr[ia]=c.unbox(Ur,ia);return}else if(aa&&Array.isArray(Ur)){for(var wa=0;wa<Ur.length;++wa)if(c.isDynamic(Ur[wa])){Gr[ia]=c.unbox(Ur,ia);return}}Qr[ia]=Ur}),{dynamic:Gr,static:Qr}}var He=We(te.context||{},!0),st=We(te.uniforms||{},!0),Et=We(te.attributes||{},!1),Ht=We(xe(te),!1),yr={gpuTime:0,cpuTime:0,count:0},Ir=Rn.compile(Ht,Et,st,He,yr),wr=Ir.draw,qt=Ir.batch,tr=Ir.scope,dr=[];function Pr(Hr){for(;dr.length<Hr;)dr.push(null);return dr}function Vr(Hr,aa){var Qr;if(typeof Hr=="function")return tr.call(this,null,Hr,0);if(typeof aa=="function")if(typeof Hr=="number")for(Qr=0;Qr<Hr;++Qr)tr.call(this,null,aa,Qr);else if(Array.isArray(Hr))for(Qr=0;Qr<Hr.length;++Qr)tr.call(this,Hr[Qr],aa,Qr);else return tr.call(this,Hr,aa,0);else if(typeof Hr=="number"){if(Hr>0)return qt.call(this,Pr(Hr|0),Hr|0)}else if(Array.isArray(Hr)){if(Hr.length)return qt.call(this,Hr,Hr.length)}else return wr.call(this,Hr)}return g(Vr,{stats:yr,destroy:function(){Ir.destroy()}})}var vc=Zn.setFBO=Ol({framebuffer:c.define.call(null,hl,"framebuffer")});function mc(te,xe){var We=0;Rn.procs.poll();var He=xe.color;He&&(Ta.clearColor(+He[0]||0,+He[1]||0,+He[2]||0,+He[3]||0),We|=Gs),"depth"in xe&&(Ta.clearDepth(+xe.depth),We|=sl),"stencil"in xe&&(Ta.clearStencil(xe.stencil|0),We|=Vi),Ta.clear(We)}function rf(te){if("framebuffer"in te)if(te.framebuffer&&te.framebuffer_reglType==="framebufferCube")for(var xe=0;xe<6;++xe)vc(g({framebuffer:te.framebuffer.faces[xe]},te),mc);else vc(te,mc);else mc(null,te)}function Yl(te){Ro.push(te);function xe(){var We=Ll(Ro,te);function He(){var st=Ll(Ro,He);Ro[st]=Ro[Ro.length-1],Ro.length-=1,Ro.length<=0&&$l()}Ro[We]=He}return As(),{cancel:xe}}function Mc(){var te=dn.viewport,xe=dn.scissor_box;te[0]=te[1]=xe[0]=xe[1]=0,Oi.viewportWidth=Oi.framebufferWidth=Oi.drawingBufferWidth=te[2]=xe[2]=Ta.drawingBufferWidth,Oi.viewportHeight=Oi.framebufferHeight=Oi.drawingBufferHeight=te[3]=xe[3]=Ta.drawingBufferHeight}function Vc(){Oi.tick+=1,Oi.time=af(),Mc(),Rn.procs.poll()}function Ds(){Zi.refresh(),Mc(),Rn.procs.refresh(),Gi&&Gi.update()}function af(){return(v()-Io)/1e3}Ds();function Cs(te,xe){var We;switch(te){case"frame":return Yl(xe);case"lost":We=rs;break;case"restore":We=wn;break;case"destroy":We=oo;break;default:}return We.push(xe),{cancel:function(){for(var He=0;He<We.length;++He)if(We[He]===xe){We[He]=We[We.length-1],We.pop();return}}}}function ve(){return cn}function K(te){Object.entries(te).forEach(function(xe){cn[xe[0]]=xe[1]})}var ye=g(Ol,{clear:rf,prop:c.define.bind(null,hl),context:c.define.bind(null,Dl),this:c.define.bind(null,hu),draw:Ol({}),buffer:function(te){return pn.create(te,ao,!1,!1)},elements:function(te){return qi.create(te,!1)},texture:Zi.create2D,cube:Zi.createCube,renderbuffer:Ui.create,framebuffer:Zn.create,framebufferCube:Zn.createCube,vao:Dn.createVAO,attributes:si,frame:Yl,on:Cs,limits:tn,hasExtension:function(te){return tn.extensions.indexOf(te.toLowerCase())>=0},read:xn,destroy:jc,_gl:Ta,_refresh:Ds,poll:function(){Vc(),Gi&&Gi.update()},now:af,stats:Fi,getCachedCode:ve,preloadCachedCode:K});return ra.onDone(null,ye),ye}return dc})}}),rV=Ye({"node_modules/gl-util/context.js"(X,H){"use strict";var g=Ev();H.exports=function(o){if(o?typeof o=="string"&&(o={container:o}):o={},A(o)?o={container:o}:M(o)?o={container:o}:e(o)?o={gl:o}:o=g(o,{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),o.pixelRatio||(o.pixelRatio=window.pixelRatio||1),o.gl)return o.gl;if(o.canvas&&(o.container=o.canvas.parentNode),o.container){if(typeof o.container=="string"){var a=document.querySelector(o.container);if(!a)throw Error("Element "+o.container+" is not found");o.container=a}A(o.container)?(o.canvas=o.container,o.container=o.canvas.parentNode):o.canvas||(o.canvas=t(),o.container.appendChild(o.canvas),x(o))}else if(!o.canvas)if(typeof document<"u")o.container=document.body||document.documentElement,o.canvas=t(),o.container.appendChild(o.canvas),x(o);else throw Error("Not DOM environment. Use headless-gl.");return o.gl||["webgl","experimental-webgl","webgl-experimental"].some(function(i){try{o.gl=o.canvas.getContext(i,o.attrs)}catch{}return o.gl}),o.gl};function x(r){if(r.container)if(r.container==document.body)document.body.style.width||(r.canvas.width=r.width||r.pixelRatio*window.innerWidth),document.body.style.height||(r.canvas.height=r.height||r.pixelRatio*window.innerHeight);else{var o=r.container.getBoundingClientRect();r.canvas.width=r.width||o.right-o.left,r.canvas.height=r.height||o.bottom-o.top}}function A(r){return typeof r.getContext=="function"&&"width"in r&&"height"in r}function M(r){return typeof r.nodeName=="string"&&typeof r.appendChild=="function"&&typeof r.getBoundingClientRect=="function"}function e(r){return typeof r.drawArrays=="function"||typeof r.drawElements=="function"}function t(){var r=document.createElement("canvas");return r.style.position="absolute",r.style.top=0,r.style.left=0,r}}}),aV=Ye({"node_modules/font-atlas/index.js"(X,H){"use strict";var g=ik(),x=[32,126];H.exports=A;function A(M){M=M||{};var e=M.shape?M.shape:M.canvas?[M.canvas.width,M.canvas.height]:[512,512],t=M.canvas||document.createElement("canvas"),r=M.font,o=typeof M.step=="number"?[M.step,M.step]:M.step||[32,32],a=M.chars||x;if(r&&typeof r!="string"&&(r=g(r)),!Array.isArray(a))a=String(a).split("");else if(a.length===2&&typeof a[0]=="number"&&typeof a[1]=="number"){for(var i=[],n=a[0],s=0;n<=a[1];n++)i[s++]=String.fromCharCode(n);a=i}e=e.slice(),t.width=e[0],t.height=e[1];var c=t.getContext("2d");c.fillStyle="#000",c.fillRect(0,0,t.width,t.height),c.font=r,c.textAlign="center",c.textBaseline="middle",c.fillStyle="#fff";for(var h=o[0]/2,v=o[1]/2,n=0;n<a.length;n++)c.fillText(a[n],h,v),(h+=o[0])>e[0]-o[0]/2&&(h=o[0]/2,v+=o[1]);return t}}}),ok=Ye({"node_modules/bit-twiddle/twiddle.js"(X){"use strict";"use restrict";var H=32;X.INT_BITS=H,X.INT_MAX=2147483647,X.INT_MIN=-1<<H-1,X.sign=function(A){return(A>0)-(A<0)},X.abs=function(A){var M=A>>H-1;return(A^M)-M},X.min=function(A,M){return M^(A^M)&-(A<M)},X.max=function(A,M){return A^(A^M)&-(A<M)},X.isPow2=function(A){return!(A&A-1)&&!!A},X.log2=function(A){var M,e;return M=(A>65535)<<4,A>>>=M,e=(A>255)<<3,A>>>=e,M|=e,e=(A>15)<<2,A>>>=e,M|=e,e=(A>3)<<1,A>>>=e,M|=e,M|A>>1},X.log10=function(A){return A>=1e9?9:A>=1e8?8:A>=1e7?7:A>=1e6?6:A>=1e5?5:A>=1e4?4:A>=1e3?3:A>=100?2:A>=10?1:0},X.popCount=function(A){return A=A-(A>>>1&1431655765),A=(A&858993459)+(A>>>2&858993459),(A+(A>>>4)&252645135)*16843009>>>24};function g(A){var M=32;return A&=-A,A&&M--,A&65535&&(M-=16),A&16711935&&(M-=8),A&252645135&&(M-=4),A&858993459&&(M-=2),A&1431655765&&(M-=1),M}X.countTrailingZeros=g,X.nextPow2=function(A){return A+=A===0,--A,A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A+1},X.prevPow2=function(A){return A|=A>>>1,A|=A>>>2,A|=A>>>4,A|=A>>>8,A|=A>>>16,A-(A>>>1)},X.parity=function(A){return A^=A>>>16,A^=A>>>8,A^=A>>>4,A&=15,27030>>>A&1};var x=new Array(256);(function(A){for(var M=0;M<256;++M){var e=M,t=M,r=7;for(e>>>=1;e;e>>>=1)t<<=1,t|=e&1,--r;A[M]=t<<r&255}})(x),X.reverse=function(A){return x[A&255]<<24|x[A>>>8&255]<<16|x[A>>>16&255]<<8|x[A>>>24&255]},X.interleave2=function(A,M){return A&=65535,A=(A|A<<8)&16711935,A=(A|A<<4)&252645135,A=(A|A<<2)&858993459,A=(A|A<<1)&1431655765,M&=65535,M=(M|M<<8)&16711935,M=(M|M<<4)&252645135,M=(M|M<<2)&858993459,M=(M|M<<1)&1431655765,A|M<<1},X.deinterleave2=function(A,M){return A=A>>>M&1431655765,A=(A|A>>>1)&858993459,A=(A|A>>>2)&252645135,A=(A|A>>>4)&16711935,A=(A|A>>>16)&65535,A<<16>>16},X.interleave3=function(A,M,e){return A&=1023,A=(A|A<<16)&4278190335,A=(A|A<<8)&251719695,A=(A|A<<4)&3272356035,A=(A|A<<2)&1227133513,M&=1023,M=(M|M<<16)&4278190335,M=(M|M<<8)&251719695,M=(M|M<<4)&3272356035,M=(M|M<<2)&1227133513,A|=M<<1,e&=1023,e=(e|e<<16)&4278190335,e=(e|e<<8)&251719695,e=(e|e<<4)&3272356035,e=(e|e<<2)&1227133513,A|e<<2},X.deinterleave3=function(A,M){return A=A>>>M&1227133513,A=(A|A>>>2)&3272356035,A=(A|A>>>4)&251719695,A=(A|A>>>8)&4278190335,A=(A|A>>>16)&1023,A<<22>>22},X.nextCombination=function(A){var M=A|A-1;return M+1|(~M&-~M)-1>>>g(A)+1}}}),iV=Ye({"node_modules/dup/dup.js"(X,H){"use strict";function g(M,e,t){var r=M[t]|0;if(r<=0)return[];var o=new Array(r),a;if(t===M.length-1)for(a=0;a<r;++a)o[a]=e;else for(a=0;a<r;++a)o[a]=g(M,e,t+1);return o}function x(M,e){var t,r;for(t=new Array(M),r=0;r<M;++r)t[r]=e;return t}function A(M,e){switch(typeof e>"u"&&(e=0),typeof M){case"number":if(M>0)return x(M|0,e);break;case"object":if(typeof M.length=="number")return g(M,e,0);break}return[]}H.exports=A}}),nV=Ye({"node_modules/typedarray-pool/pool.js"(X){"use strict";var H=ok(),g=iV(),x=t0().Buffer;window.__TYPEDARRAY_POOL||(window.__TYPEDARRAY_POOL={UINT8:g([32,0]),UINT16:g([32,0]),UINT32:g([32,0]),BIGUINT64:g([32,0]),INT8:g([32,0]),INT16:g([32,0]),INT32:g([32,0]),BIGINT64:g([32,0]),FLOAT:g([32,0]),DOUBLE:g([32,0]),DATA:g([32,0]),UINT8C:g([32,0]),BUFFER:g([32,0])});var A=typeof Uint8ClampedArray<"u",M=typeof BigUint64Array<"u",e=typeof BigInt64Array<"u",t=window.__TYPEDARRAY_POOL;t.UINT8C||(t.UINT8C=g([32,0])),t.BIGUINT64||(t.BIGUINT64=g([32,0])),t.BIGINT64||(t.BIGINT64=g([32,0])),t.BUFFER||(t.BUFFER=g([32,0]));var r=t.DATA,o=t.BUFFER;X.free=function(u){if(x.isBuffer(u))o[H.log2(u.length)].push(u);else{if(Object.prototype.toString.call(u)!=="[object ArrayBuffer]"&&(u=u.buffer),!u)return;var y=u.length||u.byteLength,f=H.log2(y)|0;r[f].push(u)}};function a(d){if(d){var u=d.length||d.byteLength,y=H.log2(u);r[y].push(d)}}function i(d){a(d.buffer)}X.freeUint8=X.freeUint16=X.freeUint32=X.freeBigUint64=X.freeInt8=X.freeInt16=X.freeInt32=X.freeBigInt64=X.freeFloat32=X.freeFloat=X.freeFloat64=X.freeDouble=X.freeUint8Clamped=X.freeDataView=i,X.freeArrayBuffer=a,X.freeBuffer=function(u){o[H.log2(u.length)].push(u)},X.malloc=function(u,y){if(y===void 0||y==="arraybuffer")return n(u);switch(y){case"uint8":return s(u);case"uint16":return c(u);case"uint32":return h(u);case"int8":return v(u);case"int16":return p(u);case"int32":return T(u);case"float":case"float32":return l(u);case"double":case"float64":return _(u);case"uint8_clamped":return w(u);case"bigint64":return E(u);case"biguint64":return S(u);case"buffer":return b(u);case"data":case"dataview":return m(u);default:return null}return null};function n(u){var u=H.nextPow2(u),y=H.log2(u),f=r[y];return f.length>0?f.pop():new ArrayBuffer(u)}X.mallocArrayBuffer=n;function s(d){return new Uint8Array(n(d),0,d)}X.mallocUint8=s;function c(d){return new Uint16Array(n(2*d),0,d)}X.mallocUint16=c;function h(d){return new Uint32Array(n(4*d),0,d)}X.mallocUint32=h;function v(d){return new Int8Array(n(d),0,d)}X.mallocInt8=v;function p(d){return new Int16Array(n(2*d),0,d)}X.mallocInt16=p;function T(d){return new Int32Array(n(4*d),0,d)}X.mallocInt32=T;function l(d){return new Float32Array(n(4*d),0,d)}X.mallocFloat32=X.mallocFloat=l;function _(d){return new Float64Array(n(8*d),0,d)}X.mallocFloat64=X.mallocDouble=_;function w(d){return A?new Uint8ClampedArray(n(d),0,d):s(d)}X.mallocUint8Clamped=w;function S(d){return M?new BigUint64Array(n(8*d),0,d):null}X.mallocBigUint64=S;function E(d){return e?new BigInt64Array(n(8*d),0,d):null}X.mallocBigInt64=E;function m(d){return new DataView(n(d),0,d)}X.mallocDataView=m;function b(d){d=H.nextPow2(d);var u=H.log2(d),y=o[u];return y.length>0?y.pop():new x(d)}X.mallocBuffer=b,X.clearCache=function(){for(var u=0;u<32;++u)t.UINT8[u].length=0,t.UINT16[u].length=0,t.UINT32[u].length=0,t.INT8[u].length=0,t.INT16[u].length=0,t.INT32[u].length=0,t.FLOAT[u].length=0,t.DOUBLE[u].length=0,t.BIGUINT64[u].length=0,t.BIGINT64[u].length=0,t.UINT8C[u].length=0,r[u].length=0,o[u].length=0}}}),oV=Ye({"node_modules/is-plain-obj/index.js"(X,H){"use strict";var g=Object.prototype.toString;H.exports=function(x){var A;return g.call(x)==="[object Object]"&&(A=Object.getPrototypeOf(x),A===null||A===Object.getPrototypeOf({}))}}}),sk=Ye({"node_modules/parse-unit/index.js"(X,H){H.exports=function(x,A){A||(A=[0,""]),x=String(x);var M=parseFloat(x,10);return A[0]=M,A[1]=x.match(/[\d.\-\+]*\s*(.*)/)[1]||"",A}}}),sV=Ye({"node_modules/to-px/topx.js"(X,H){"use strict";var g=sk();H.exports=e;var x=96;function A(t,r){var o=g(getComputedStyle(t).getPropertyValue(r));return o[0]*e(o[1],t)}function M(t,r){var o=document.createElement("div");o.style["font-size"]="128"+t,r.appendChild(o);var a=A(o,"font-size")/128;return r.removeChild(o),a}function e(t,r){switch(r=r||document.body,t=(t||"px").trim().toLowerCase(),(r===window||r===document)&&(r=document.body),t){case"%":return r.clientHeight/100;case"ch":case"ex":return M(t,r);case"em":return A(r,"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 x;case"cm":return x/2.54;case"mm":return x/25.4;case"pt":return x/72;case"pc":return x/6}return 1}}}),lV=Ye({"node_modules/detect-kerning/index.js"(X,H){"use strict";H.exports=M;var g=M.canvas=document.createElement("canvas"),x=g.getContext("2d"),A=e([32,126]);M.createPairs=e,M.ascii=A;function M(t,r){Array.isArray(t)&&(t=t.join(", "));var o={},a,i=16,n=.05;r&&(r.length===2&&typeof r[0]=="number"?a=e(r):Array.isArray(r)?a=r:(r.o?a=e(r.o):r.pairs&&(a=r.pairs),r.fontSize&&(i=r.fontSize),r.threshold!=null&&(n=r.threshold))),a||(a=A),x.font=i+"px "+t;for(var s=0;s<a.length;s++){var c=a[s],h=x.measureText(c[0]).width+x.measureText(c[1]).width,v=x.measureText(c).width;if(Math.abs(h-v)>i*n){var p=(v-h)/i;o[c]=p*1e3}}return o}function e(t){for(var r=[],o=t[0];o<=t[1];o++)for(var a=String.fromCharCode(o),i=t[0];i<t[1];i++){var n=String.fromCharCode(i),s=a+n;r.push(s)}return r}}}),uV=Ye({"node_modules/font-measure/index.js"(X,H){"use strict";H.exports=g,g.canvas=document.createElement("canvas"),g.cache={};function g(n,t){t||(t={}),(typeof n=="string"||Array.isArray(n))&&(t.family=n);var r=Array.isArray(t.family)?t.family.join(", "):t.family;if(!r)throw Error("`family` must be defined");var o=t.size||t.fontSize||t.em||48,a=t.weight||t.fontWeight||"",i=t.style||t.fontStyle||"",n=[i,a,o].join(" ")+"px "+r,s=t.origin||"top";if(g.cache[r]&&o<=g.cache[r].em)return x(g.cache[r],s);var c=t.canvas||g.canvas,h=c.getContext("2d"),v={upper:t.upper!==void 0?t.upper:"H",lower:t.lower!==void 0?t.lower:"x",descent:t.descent!==void 0?t.descent:"p",ascent:t.ascent!==void 0?t.ascent:"h",tittle:t.tittle!==void 0?t.tittle:"i",overshoot:t.overshoot!==void 0?t.overshoot:"O"},p=Math.ceil(o*1.5);c.height=p,c.width=p*.5,h.font=n;var T="H",l={top:0};h.clearRect(0,0,p,p),h.textBaseline="top",h.fillStyle="black",h.fillText(T,0,0);var _=A(h.getImageData(0,0,p,p));h.clearRect(0,0,p,p),h.textBaseline="bottom",h.fillText(T,0,p);var w=A(h.getImageData(0,0,p,p));l.lineHeight=l.bottom=p-w+_,h.clearRect(0,0,p,p),h.textBaseline="alphabetic",h.fillText(T,0,p);var S=A(h.getImageData(0,0,p,p)),E=p-S-1+_;l.baseline=l.alphabetic=E,h.clearRect(0,0,p,p),h.textBaseline="middle",h.fillText(T,0,p*.5);var m=A(h.getImageData(0,0,p,p));l.median=l.middle=p-m-1+_-p*.5,h.clearRect(0,0,p,p),h.textBaseline="hanging",h.fillText(T,0,p*.5);var b=A(h.getImageData(0,0,p,p));l.hanging=p-b-1+_-p*.5,h.clearRect(0,0,p,p),h.textBaseline="ideographic",h.fillText(T,0,p);var d=A(h.getImageData(0,0,p,p));if(l.ideographic=p-d-1+_,v.upper&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.upper,0,0),l.upper=A(h.getImageData(0,0,p,p)),l.capHeight=l.baseline-l.upper),v.lower&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.lower,0,0),l.lower=A(h.getImageData(0,0,p,p)),l.xHeight=l.baseline-l.lower),v.tittle&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.tittle,0,0),l.tittle=A(h.getImageData(0,0,p,p))),v.ascent&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.ascent,0,0),l.ascent=A(h.getImageData(0,0,p,p))),v.descent&&(h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.descent,0,0),l.descent=M(h.getImageData(0,0,p,p))),v.overshoot){h.clearRect(0,0,p,p),h.textBaseline="top",h.fillText(v.overshoot,0,0);var u=M(h.getImageData(0,0,p,p));l.overshoot=u-E}for(var y in l)l[y]/=o;return l.em=o,g.cache[r]=l,x(l,s)}function x(e,t){var r={};typeof t=="string"&&(t=e[t]);for(var o in e)o!=="em"&&(r[o]=e[o]-t);return r}function A(e){for(var t=e.height,r=e.data,o=3;o<r.length;o+=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}function M(e){for(var t=e.height,r=e.data,o=r.length-1;o>0;o-=4)if(r[o]!==0)return Math.floor((o-3)*.25/t)}}}),cV=Ye({"node_modules/gl-text/dist.js"(X,H){"use strict";var g=tV(),x=Ev(),A=nk(),M=rV(),e=K5(),t=hg(),r=aV(),o=nV(),a=E1(),i=oV(),n=sk(),s=sV(),c=lV(),h=Wf(),v=uV(),p=v0(),T=ok(),l=T.nextPow2,_=new e,w=!1;document.body&&(S=document.body.appendChild(document.createElement("div")),S.style.font="italic small-caps bold condensed 16px/2 cursive",getComputedStyle(S).fontStretch&&(w=!0),document.body.removeChild(S));var S,E=function(d){m(d)?(d={regl:d},this.gl=d.regl._gl):this.gl=M(d),this.shader=_.get(this.gl),this.shader?this.regl=this.shader.regl:this.regl=d.regl||A({gl:this.gl}),this.charBuffer=this.regl.buffer({type:"uint8",usage:"stream"}),this.sizeBuffer=this.regl.buffer({type:"float",usage:"stream"}),this.shader||(this.shader=this.createShader(),_.set(this.gl,this.shader)),this.batch=[],this.fontSize=[],this.font=[],this.fontAtlas=[],this.draw=this.shader.draw.bind(this),this.render=function(){this.regl._refresh(),this.draw(this.batch)},this.canvas=this.gl.canvas,this.update(i(d)?d:{})};E.prototype.createShader=function(){var d=this.regl,u=d({blend:{enable:!0,color:[0,0,0,1],func:{srcRGB:"src alpha",dstRGB:"one minus src alpha",srcAlpha:"one minus dst alpha",dstAlpha:"one"}},stencil:{enable:!1},depth:{enable:!1},count:d.prop("count"),offset:d.prop("offset"),attributes:{charOffset:{offset:4,stride:8,buffer:d.this("sizeBuffer")},width:{offset:0,stride:8,buffer:d.this("sizeBuffer")},char:d.this("charBuffer"),position:d.this("position")},uniforms:{atlasSize:function(f,P){return[P.atlas.width,P.atlas.height]},atlasDim:function(f,P){return[P.atlas.cols,P.atlas.rows]},atlas:function(f,P){return P.atlas.texture},charStep:function(f,P){return P.atlas.step},em:function(f,P){return P.atlas.em},color:d.prop("color"),opacity:d.prop("opacity"),viewport:d.this("viewportArray"),scale:d.this("scale"),align:d.prop("align"),baseline:d.prop("baseline"),translate:d.this("translate"),positionOffset:d.prop("positionOffset")},primitive:"points",viewport:d.this("viewport"),vert:`
+ precision highp float;
+ attribute float width, charOffset, char;
+ attribute vec2 position;
+ uniform float fontSize, charStep, em, align, baseline;
+ uniform vec4 viewport;
+ uniform vec4 color;
+ uniform vec2 atlasSize, atlasDim, scale, translate, positionOffset;
+ varying vec2 charCoord, charId;
+ varying float charWidth;
+ varying vec4 fontColor;
+ void main () {
+ vec2 offset = floor(em * (vec2(align + charOffset, baseline)
+ + vec2(positionOffset.x, -positionOffset.y)))
+ / (viewport.zw * scale.xy);
+
+ vec2 position = (position + translate) * scale;
+ position += offset * scale;
+
+ charCoord = position * viewport.zw + viewport.xy;
+
+ gl_Position = vec4(position * 2. - 1., 0, 1);
+
+ gl_PointSize = charStep;
+
+ charId.x = mod(char, atlasDim.x);
+ charId.y = floor(char / atlasDim.x);
+
+ charWidth = width * em;
+
+ fontColor = color / 255.;
+ }`,frag:`
+ precision highp float;
+ uniform float fontSize, charStep, opacity;
+ uniform vec2 atlasSize;
+ uniform vec4 viewport;
+ uniform sampler2D atlas;
+ varying vec4 fontColor;
+ varying vec2 charCoord, charId;
+ varying float charWidth;
+
+ float lightness(vec4 color) {
+ return color.r * 0.299 + color.g * 0.587 + color.b * 0.114;
+ }
+
+ void main () {
+ vec2 uv = gl_FragCoord.xy - charCoord + charStep * .5;
+ float halfCharStep = floor(charStep * .5 + .5);
+
+ // invert y and shift by 1px (FF expecially needs that)
+ uv.y = charStep - uv.y;
+
+ // ignore points outside of character bounding box
+ float halfCharWidth = ceil(charWidth * .5);
+ if (floor(uv.x) > halfCharStep + halfCharWidth ||
+ floor(uv.x) < halfCharStep - halfCharWidth) return;
+
+ uv += charId * charStep;
+ uv = uv / atlasSize;
+
+ vec4 color = fontColor;
+ vec4 mask = texture2D(atlas, uv);
+
+ float maskY = lightness(mask);
+ // float colorY = lightness(color);
+ color.a *= maskY;
+ color.a *= opacity;
+
+ // color.a += .1;
+
+ // antialiasing, see yiq color space y-channel formula
+ // color.rgb += (1. - color.rgb) * (1. - mask.rgb);
+
+ gl_FragColor = color;
+ }`}),y={};return{regl:d,draw:u,atlas:y}},E.prototype.update=function(d){var u=this;if(typeof d=="string")d={text:d};else if(!d)return;d=x(d,{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),d.opacity!=null&&(Array.isArray(d.opacity)?this.opacity=d.opacity.map(function(ce){return parseFloat(ce)}):this.opacity=parseFloat(d.opacity)),d.viewport!=null&&(this.viewport=a(d.viewport),this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),this.viewport==null&&(this.viewport={x:0,y:0,width:this.gl.drawingBufferWidth,height:this.gl.drawingBufferHeight},this.viewportArray=[this.viewport.x,this.viewport.y,this.viewport.width,this.viewport.height]),d.kerning!=null&&(this.kerning=d.kerning),d.offset!=null&&(typeof d.offset=="number"&&(d.offset=[d.offset,0]),this.positionOffset=p(d.offset)),d.direction&&(this.direction=d.direction),d.range&&(this.range=d.range,this.scale=[1/(d.range[2]-d.range[0]),1/(d.range[3]-d.range[1])],this.translate=[-d.range[0],-d.range[1]]),d.scale&&(this.scale=d.scale),d.translate&&(this.translate=d.translate),this.scale||(this.scale=[1/this.viewport.width,1/this.viewport.height]),this.translate||(this.translate=[0,0]),!this.font.length&&!d.font&&(d.font=E.baseFontSize+"px sans-serif");var y=!1,f=!1;if(d.font&&(Array.isArray(d.font)?d.font:[d.font]).forEach(function(ce,ze){if(typeof ce=="string")try{ce=g.parse(ce)}catch{ce=g.parse(E.baseFontSize+"px "+ce)}else{var tt=ce.style,nt=ce.weight,Qe=ce.stretch,Ct=ce.variant;ce=g.parse(g.stringify(ce)),tt&&(ce.style=tt),nt&&(ce.weight=nt),Qe&&(ce.stretch=Qe),Ct&&(ce.variant=Ct)}var St=g.stringify({size:E.baseFontSize,family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style}),Ot=n(ce.size),jt=Math.round(Ot[0]*s(Ot[1]));if(jt!==u.fontSize[ze]&&(f=!0,u.fontSize[ze]=jt),(!u.font[ze]||St!=u.font[ze].baseString)&&(y=!0,u.font[ze]=E.fonts[St],!u.font[ze])){var ur=ce.family.join(", "),ar=[ce.style];ce.style!=ce.variant&&ar.push(ce.variant),ce.variant!=ce.weight&&ar.push(ce.weight),w&&ce.weight!=ce.stretch&&ar.push(ce.stretch),u.font[ze]={baseString:St,family:ur,weight:ce.weight,stretch:ce.stretch,style:ce.style,variant:ce.variant,width:{},kerning:{},metrics:v(ur,{origin:"top",fontSize:E.baseFontSize,fontStyle:ar.join(" ")})},E.fonts[St]=u.font[ze]}}),(y||f)&&this.font.forEach(function(ce,ze){var tt=g.stringify({size:u.fontSize[ze],family:ce.family,stretch:w?ce.stretch:void 0,variant:ce.variant,weight:ce.weight,style:ce.style});if(u.fontAtlas[ze]=u.shader.atlas[tt],!u.fontAtlas[ze]){var nt=ce.metrics;u.shader.atlas[tt]=u.fontAtlas[ze]={fontString:tt,step:Math.ceil(u.fontSize[ze]*nt.bottom*.5)*2,em:u.fontSize[ze],cols:0,rows:0,height:0,width:0,chars:[],ids:{},texture:u.regl.texture()}}d.text==null&&(d.text=u.text)}),typeof d.text=="string"&&d.position&&d.position.length>2){for(var P=Array(d.position.length*.5),L=0;L<P.length;L++)P[L]=d.text;d.text=P}var z;if(d.text!=null||y){if(this.textOffsets=[0],Array.isArray(d.text)){this.count=d.text[0].length,this.counts=[this.count];for(var F=1;F<d.text.length;F++)this.textOffsets[F]=this.textOffsets[F-1]+d.text[F-1].length,this.count+=d.text[F].length,this.counts.push(d.text[F].length);this.text=d.text.join("")}else this.text=d.text,this.count=this.text.length,this.counts=[this.count];z=[],this.font.forEach(function(ce,ze){E.atlasContext.font=ce.baseString;for(var tt=u.fontAtlas[ze],nt=0;nt<u.text.length;nt++){var Qe=u.text.charAt(nt);if(tt.ids[Qe]==null&&(tt.ids[Qe]=tt.chars.length,tt.chars.push(Qe),z.push(Qe)),ce.width[Qe]==null&&(ce.width[Qe]=E.atlasContext.measureText(Qe).width/E.baseFontSize,u.kerning)){var Ct=[];for(var St in ce.width)Ct.push(St+Qe,Qe+St);h(ce.kerning,c(ce.family,{pairs:Ct}))}}})}if(d.position)if(d.position.length>2){for(var B=!d.position[0].length,O=o.mallocFloat(this.count*2),I=0,N=0;I<this.counts.length;I++){var U=this.counts[I];if(B)for(var W=0;W<U;W++)O[N++]=d.position[I*2],O[N++]=d.position[I*2+1];else for(var Q=0;Q<U;Q++)O[N++]=d.position[I][0],O[N++]=d.position[I][1]}this.position.call?this.position({type:"float",data:O}):this.position=this.regl.buffer({type:"float",data:O}),o.freeFloat(O)}else this.position.destroy&&this.position.destroy(),this.position={constant:d.position};if(d.text||y){var ue=o.mallocUint8(this.count),se=o.mallocFloat(this.count*2);this.textWidth=[];for(var he=0,G=0;he<this.counts.length;he++){for(var $=this.counts[he],J=this.font[he]||this.font[0],Z=this.fontAtlas[he]||this.fontAtlas[0],re=0;re<$;re++){var ne=this.text.charAt(G),j=this.text.charAt(G-1);if(ue[G]=Z.ids[ne],se[G*2]=J.width[ne],re){var ee=se[G*2-2],ie=se[G*2],fe=se[G*2-1],be=fe+ee*.5+ie*.5;if(this.kerning){var Ae=J.kerning[j+ne];Ae&&(be+=Ae*.001)}se[G*2+1]=be}else se[G*2+1]=se[G*2]*.5;G++}this.textWidth.push(se.length?se[G*2-2]*.5+se[G*2-1]:0)}d.align||(d.align=this.align),this.charBuffer({data:ue,type:"uint8",usage:"stream"}),this.sizeBuffer({data:se,type:"float",usage:"stream"}),o.freeUint8(ue),o.freeFloat(se),z.length&&this.font.forEach(function(ce,ze){var tt=u.fontAtlas[ze],nt=tt.step,Qe=Math.floor(E.maxAtlasSize/nt),Ct=Math.min(Qe,tt.chars.length),St=Math.ceil(tt.chars.length/Ct),Ot=l(Ct*nt),jt=l(St*nt);tt.width=Ot,tt.height=jt,tt.rows=St,tt.cols=Ct,tt.em&&tt.texture({data:r({canvas:E.atlasCanvas,font:tt.fontString,chars:tt.chars,shape:[Ot,jt],step:[nt,nt]})})})}if(d.align&&(this.align=d.align,this.alignOffset=this.textWidth.map(function(ce,ze){var tt=Array.isArray(u.align)?u.align.length>1?u.align[ze]:u.align[0]:u.align;if(typeof tt=="number")return tt;switch(tt){case"right":case"end":return-ce;case"center":case"centre":case"middle":return-ce*.5}return 0})),this.baseline==null&&d.baseline==null&&(d.baseline=0),d.baseline!=null&&(this.baseline=d.baseline,Array.isArray(this.baseline)||(this.baseline=[this.baseline]),this.baselineOffset=this.baseline.map(function(ce,ze){var tt=(u.font[ze]||u.font[0]).metrics,nt=0;return nt+=tt.bottom*.5,typeof ce=="number"?nt+=ce-tt.baseline:nt+=-tt[ce],nt*=-1,nt})),d.color!=null)if(d.color||(d.color="transparent"),typeof d.color=="string"||!isNaN(d.color))this.color=t(d.color,"uint8");else{var Be;if(typeof d.color[0]=="number"&&d.color.length>this.counts.length){var Ie=d.color.length;Be=o.mallocUint8(Ie);for(var Ze=(d.color.subarray||d.color.slice).bind(d.color),at=0;at<Ie;at+=4)Be.set(t(Ze(at,at+4),"uint8"),at)}else{var it=d.color.length;Be=o.mallocUint8(it*4);for(var et=0;et<it;et++)Be.set(t(d.color[et]||0,"uint8"),et*4)}this.color=Be}if(d.position||d.text||d.color||d.baseline||d.align||d.font||d.offset||d.opacity){var lt=this.color.length>4||this.baselineOffset.length>1||this.align&&this.align.length>1||this.fontAtlas.length>1||this.positionOffset.length>2;if(lt){var Me=Math.max(this.position.length*.5||0,this.color.length*.25||0,this.baselineOffset.length||0,this.alignOffset.length||0,this.font.length||0,this.opacity.length||0,this.positionOffset.length*.5||0);this.batch=Array(Me);for(var ge=0;ge<this.batch.length;ge++)this.batch[ge]={count:this.counts.length>1?this.counts[ge]:this.counts[0],offset:this.textOffsets.length>1?this.textOffsets[ge]:this.textOffsets[0],color:this.color?this.color.length<=4?this.color:this.color.subarray(ge*4,ge*4+4):[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[ge]:this.opacity,baseline:this.baselineOffset[ge]!=null?this.baselineOffset[ge]:this.baselineOffset[0],align:this.align?this.alignOffset[ge]!=null?this.alignOffset[ge]:this.alignOffset[0]:0,atlas:this.fontAtlas[ge]||this.fontAtlas[0],positionOffset:this.positionOffset.length>2?this.positionOffset.subarray(ge*2,ge*2+2):this.positionOffset}}else this.count?this.batch=[{count:this.count,offset:0,color:this.color||[0,0,0,255],opacity:Array.isArray(this.opacity)?this.opacity[0]:this.opacity,baseline:this.baselineOffset[0],align:this.alignOffset?this.alignOffset[0]:0,atlas:this.fontAtlas[0],positionOffset:this.positionOffset}]:this.batch=[]}},E.prototype.destroy=function(){},E.prototype.kerning=!0,E.prototype.position={constant:new Float32Array(2)},E.prototype.translate=null,E.prototype.scale=null,E.prototype.font=null,E.prototype.text="",E.prototype.positionOffset=[0,0],E.prototype.opacity=1,E.prototype.color=new Uint8Array([0,0,0,255]),E.prototype.alignOffset=[0,0],E.maxAtlasSize=1024,E.atlasCanvas=document.createElement("canvas"),E.atlasContext=E.atlasCanvas.getContext("2d",{alpha:!1}),E.baseFontSize=64,E.fonts={};function m(b){return typeof b=="function"&&b._gl&&b.prop&&b.texture&&b.buffer}H.exports=E}}),_T=Ye({"src/lib/prepare_regl.js"(X,H){"use strict";var g=g5(),x=nk();H.exports=function(M,e,t){var r=M._fullLayout,o=!0;return r._glcanvas.each(function(a){if(a.regl){a.regl.preloadCachedCode(t);return}if(!(a.pick&&!r._has("parcoords"))){try{a.regl=x({canvas:this,attributes:{antialias:!a.pick,preserveDrawingBuffer:!0},pixelRatio:M._context.plotGlPixelRatio||window.devicePixelRatio,extensions:e||[],cachedCode:t||{}})}catch{o=!1}a.regl||(o=!1),o&&this.addEventListener("webglcontextlost",function(i){M&&M.emit&&M.emit("plotly_webglcontextlost",{event:i,layer:a.key})},!1)}}),o||g({container:r._glcontainer.node()}),o}}}),lk=Ye({"src/traces/scattergl/plot.js"(c,H){"use strict";var g=N5(),x=J5(),A=Yj(),M=cV(),e=ta(),t=Jd().selectMode,r=_T(),o=uu(),a=zS(),i=F5().styleTextSelection,n={};function s(h,v,p,T){var l=h._size,_=h.width*T,w=h.height*T,S=l.l*T,E=l.b*T,m=l.r*T,b=l.t*T,d=l.w*T,u=l.h*T;return[S+v.domain[0]*d,E+p.domain[0]*u,_-m-(1-v.domain[1])*d,w-b-(1-p.domain[1])*u]}var c=H.exports=function(v,p,T){if(T.length){var l=v._fullLayout,_=p._scene,w=p.xaxis,S=p.yaxis,E,m;if(_){var b=r(v,["ANGLE_instanced_arrays","OES_element_index_uint"],n);if(!b){_.init();return}var d=_.count,u=l._glcanvas.data()[0].regl;if(a(v,p,T),_.dirty){if((_.line2d||_.error2d)&&!(_.scatter2d||_.fill2d||_.glText)&&u.clear({}),_.error2d===!0&&(_.error2d=A(u)),_.line2d===!0&&(_.line2d=x(u)),_.scatter2d===!0&&(_.scatter2d=g(u)),_.fill2d===!0&&(_.fill2d=x(u)),_.glText===!0)for(_.glText=new Array(d),E=0;E<d;E++)_.glText[E]=new M(u);if(_.glText){if(d>_.glText.length){var y=d-_.glText.length;for(E=0;E<y;E++)_.glText.push(new M(u))}else if(d<_.glText.length){var f=_.glText.length-d,P=_.glText.splice(d,f);P.forEach(function(j){j.destroy()})}for(E=0;E<d;E++)_.glText[E].update(_.textOptions[E])}if(_.line2d&&(_.line2d.update(_.lineOptions),_.lineOptions=_.lineOptions.map(function(j){if(j&&j.positions){for(var ee=j.positions,ie=0;ie<ee.length&&(isNaN(ee[ie])||isNaN(ee[ie+1]));)ie+=2;for(var fe=ee.length-2;fe>ie&&(isNaN(ee[fe])||isNaN(ee[fe+1]));)fe-=2;j.positions=ee.slice(ie,fe+2)}return j}),_.line2d.update(_.lineOptions)),_.error2d){var L=(_.errorXOptions||[]).concat(_.errorYOptions||[]);_.error2d.update(L)}_.scatter2d&&_.scatter2d.update(_.markerOptions),_.fillOrder=e.repeat(null,d),_.fill2d&&(_.fillOptions=_.fillOptions.map(function(j,ee){var ie=T[ee];if(!(!j||!ie||!ie[0]||!ie[0].trace)){var fe=ie[0],be=fe.trace,Ae=fe.t,Be=_.lineOptions[ee],Ie,Ze,at=[];be._ownfill&&at.push(ee),be._nexttrace&&at.push(ee+1),at.length&&(_.fillOrder[ee]=at);var it=[],et=Be&&Be.positions||Ae.positions,lt,Me;if(be.fill==="tozeroy"){for(lt=0;lt<et.length&&isNaN(et[lt+1]);)lt+=2;for(Me=et.length-2;Me>lt&&isNaN(et[Me+1]);)Me-=2;et[lt+1]!==0&&(it=[et[lt],0]),it=it.concat(et.slice(lt,Me+2)),et[Me+1]!==0&&(it=it.concat([et[Me],0]))}else if(be.fill==="tozerox"){for(lt=0;lt<et.length&&isNaN(et[lt]);)lt+=2;for(Me=et.length-2;Me>lt&&isNaN(et[Me]);)Me-=2;et[lt]!==0&&(it=[0,et[lt+1]]),it=it.concat(et.slice(lt,Me+2)),et[Me]!==0&&(it=it.concat([0,et[Me+1]]))}else if(be.fill==="toself"||be.fill==="tonext"){for(it=[],Ie=0,j.splitNull=!0,Ze=0;Ze<et.length;Ze+=2)(isNaN(et[Ze])||isNaN(et[Ze+1]))&&(it=it.concat(et.slice(Ie,Ze)),it.push(et[Ie],et[Ie+1]),it.push(null,null),Ie=Ze+2);it=it.concat(et.slice(Ie)),Ie&&it.push(et[Ie],et[Ie+1])}else{var ge=be._nexttrace;if(ge){var ce=_.lineOptions[ee+1];if(ce){var ze=ce.positions;if(be.fill==="tonexty"){for(it=et.slice(),ee=Math.floor(ze.length/2);ee--;){var tt=ze[ee*2],nt=ze[ee*2+1];isNaN(tt)||isNaN(nt)||it.push(tt,nt)}j.fill=ge.fillcolor}}}}if(be._prevtrace&&be._prevtrace.fill==="tonext"){var Qe=_.lineOptions[ee-1].positions,Ct=it.length/2;Ie=Ct;var St=[Ie];for(Ze=0;Ze<Qe.length;Ze+=2)(isNaN(Qe[Ze])||isNaN(Qe[Ze+1]))&&(St.push(Ze/2+Ct+1),Ie=Ze+2);it=it.concat(Qe),j.hole=St}return j.fillmode=be.fill,j.opacity=be.opacity,j.positions=it,j}}),_.fill2d.update(_.fillOptions))}var z=l.dragmode,F=t(z),B=l.clickmode.indexOf("select")>-1;for(E=0;E<d;E++){var O=T[E][0],I=O.trace,N=O.t,U=N.index,W=I._length,Q=N.x,ue=N.y;if(I.selectedpoints||F||B){if(F||(F=!0),I.selectedpoints){var se=_.selectBatch[U]=e.selIndices2selPoints(I),he={};for(m=0;m<se.length;m++)he[se[m]]=1;var G=[];for(m=0;m<W;m++)he[m]||G.push(m);_.unselectBatch[U]=G}var $=N.xpx=new Array(W),J=N.ypx=new Array(W);for(m=0;m<W;m++)$[m]=w.c2p(Q[m]),J[m]=S.c2p(ue[m])}else N.xpx=N.ypx=null}if(F){if(_.select2d||(_.select2d=g(l._glcanvas.data()[1].regl)),_.scatter2d){var Z=new Array(d);for(E=0;E<d;E++)Z[E]=_.selectBatch[E].length||_.unselectBatch[E].length?_.markerUnselectedOptions[E]:{};_.scatter2d.update(Z)}_.select2d&&(_.select2d.update(_.markerOptions),_.select2d.update(_.markerSelectedOptions)),_.glText&&T.forEach(function(j){var ee=((j||[])[0]||{}).trace||{};o.hasText(ee)&&i(j)})}else _.scatter2d&&_.scatter2d.update(_.markerOptions);var re={viewport:s(l,w,S,v._context.plotGlPixelRatio),range:[(w._rl||w.range)[0],(S._rl||S.range)[0],(w._rl||w.range)[1],(S._rl||S.range)[1]]},ne=e.repeat(re,_.count);_.fill2d&&_.fill2d.update(ne),_.line2d&&_.line2d.update(ne),_.error2d&&_.error2d.update(ne.concat(ne)),_.scatter2d&&_.scatter2d.update(ne),_.select2d&&_.select2d.update(ne),_.glText&&_.glText.forEach(function(j){j.update(re)})}}};c.reglPrecompiled=n}}),fV=Ye({"src/traces/scattergl/index.js"(X,H){"use strict";var g=ZU();g.plot=lk(),H.exports=g}}),hV=Ye({"lib/scattergl.js"(X,H){"use strict";H.exports=fV()}}),uk=Ye({"src/traces/splom/attributes.js"(X,H){"use strict";var g=Pc(),x=tu(),A=Cc().axisHoverFormat,M=xs().hovertemplateAttrs,e=yx(),t=wh().idRegex,r=cl().templatedArray,o=Oo().extendFlat,a=g.marker,i=a.line,n=o(x("marker.line",{editTypeOverride:"calc"}),{width:o({},i.width,{editType:"calc"}),editType:"calc"}),s=o(x("marker"),{symbol:a.symbol,angle:a.angle,size:o({},a.size,{editType:"markerSize"}),sizeref:a.sizeref,sizemin:a.sizemin,sizemode:a.sizemode,opacity:a.opacity,colorbar:a.colorbar,line:n,editType:"calc"});s.color.editType=s.cmin.editType=s.cmax.editType="style";function c(h){return{valType:"info_array",freeLength:!0,editType:"calc",items:{valType:"subplotid",regex:t[h],editType:"plot"}}}H.exports={dimensions:r("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:o({},e.text,{}),hovertext:o({},e.hovertext,{}),hovertemplate:M(),xhoverformat:A("x"),yhoverformat:A("y"),marker:s,xaxes:c("x"),yaxes:c("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:e.selected.marker,editType:"calc"},unselected:{marker:e.unselected.marker,editType:"calc"},opacity:e.opacity}}}),xT=Ye({"src/traces/parcoords/merge_length.js"(X,H){"use strict";H.exports=function(g,x,A,M){M||(M=1/0);var e,t;for(e=0;e<x.length;e++)t=x[e],t.visible&&(M=Math.min(M,t[A].length));for(M===1/0&&(M=0),g._length=M,e=0;e<x.length;e++)t=x[e],t.visible&&(t._length=M);return M}}}),pV=Ye({"src/traces/splom/defaults.js"(X,H){"use strict";var g=ta(),x=up(),A=uk(),M=uu(),e=md(),t=xT(),r=pT().isOpenSymbol;H.exports=function(n,s,c,h){function v(m,b){return g.coerce(n,s,A,m,b)}var p=x(n,s,{name:"dimensions",handleItemDefaults:o}),T=v("diagonal.visible"),l=v("showupperhalf"),_=v("showlowerhalf"),w=t(s,p,"values");if(!w||!T&&!l&&!_){s.visible=!1;return}v("text"),v("hovertext"),v("hovertemplate"),v("xhoverformat"),v("yhoverformat"),e(n,s,c,h,v,{noAngleRef:!0,noStandOff:!0});var S=r(s.marker.symbol),E=M.isBubble(s);v("marker.line.width",S||E?1:0),a(n,s,h,v),g.coerceSelectionMarkerOpacity(s,v)};function o(i,n){function s(h,v){return g.coerce(i,n,A.dimensions,h,v)}s("label");var c=s("values");c&&c.length?s("visible"):n.visible=!1,s("axis.type"),s("axis.matches")}function a(i,n,s,c){var h=n.dimensions,v=h.length,p=n.showupperhalf,T=n.showlowerhalf,l=n.diagonal.visible,_,w,S=new Array(v),E=new Array(v);for(_=0;_<v;_++){var m=_?_+1:"";S[_]="x"+m,E[_]="y"+m}var b=c("xaxes",S),d=c("yaxes",E),u=n._diag=new Array(v);n._xaxes={},n._yaxes={};var y=[],f=[];function P(W,Q,ue,se){if(W){var he=W.charAt(0),G=s._splomAxes[he];if(n["_"+he+"axes"][W]=1,se.push(W),!(W in G)){var $=G[W]={};ue&&($.label=ue.label||"",ue.visible&&ue.axis&&(ue.axis.type&&($.type=ue.axis.type),ue.axis.matches&&($.matches=Q)))}}}var L=!l&&!T,z=!l&&!p;for(n._axesDim={},_=0;_<v;_++){var F=h[_],B=_===0,O=_===v-1,I=B&&L||O&&z?void 0:b[_],N=B&&z||O&&L?void 0:d[_];P(I,N,F,y),P(N,I,F,f),u[_]=[I,N],n._axesDim[I]=_,n._axesDim[N]=_}for(_=0;_<y.length;_++)for(w=0;w<f.length;w++){var U=y[_]+f[w];(_>w&&p||_<w&&T||_===w&&(l||!T||!p))&&(s._splomSubplots[U]=1)}(!T||!l&&p&&T)&&(s._splomGridDflt.xside="bottom",s._splomGridDflt.yside="left")}}}),dV=Ye({"src/traces/splom/scene_update.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A._fullLayout,t=M.uid,r=e._splomScenes;r||(r=e._splomScenes={});var o={dirty:!0,selectBatch:[],unselectBatch:[]},a={matrix:!1,selectBatch:[],unselectBatch:[]},i=r[M.uid];return i||(i=r[t]=g.extendFlat({},o,a),i.draw=function(){i.matrix&&i.matrix.draw&&(i.selectBatch.length||i.unselectBatch.length?i.matrix.draw(i.unselectBatch,i.selectBatch):i.matrix.draw()),i.dirty=!1},i.destroy=function(){i.matrix&&i.matrix.destroy&&i.matrix.destroy(),i.matrixOptions=null,i.selectBatch=null,i.unselectBatch=null,i=null}),i.dirty||g.extendFlat(i,o),i}}}),vV=Ye({"src/traces/splom/calc.js"(X,H){"use strict";var g=ta(),x=Xc(),A=Bd().calcMarkerSize,M=Bd().calcAxisExpansion,e=Fd(),t=m0().markerSelection,r=m0().markerStyle,o=dV(),a=ks().BADNUM,i=mg().TOO_MANY_POINTS;H.exports=function(s,c){var h=c.dimensions,v=c._length,p={},T=p.cdata=[],l=p.data=[],_=c._visibleDims=[],w,S,E,m,b;function d(L,z){for(var F=L.makeCalcdata({v:z.values,vcalendar:c.calendar},"v"),B=0;B<F.length;B++)F[B]=F[B]===a?NaN:F[B];T.push(F),l.push(L.type==="log"?g.simpleMap(F,L.c2l):F)}for(w=0;w<h.length;w++)if(E=h[w],E.visible){if(m=x.getFromId(s,c._diag[w][0]),b=x.getFromId(s,c._diag[w][1]),m&&b&&m.type!==b.type){g.log("Skipping splom dimension "+w+" with conflicting axis types");continue}m?(d(m,E),b&&b.type==="category"&&(b._categories=m._categories.slice())):d(b,E),_.push(w)}e(s,c),g.extendFlat(p,r(s,c));var u=T.length,y=u*v>i,f;for(y?f=p.sizeAvg||Math.max(p.size,3):f=A(c,v),S=0;S<_.length;S++)w=_[S],E=h[w],m=x.getFromId(s,c._diag[w][0])||{},b=x.getFromId(s,c._diag[w][1])||{},M(s,c,m,b,T[S],T[S],f);var P=o(s,c);return P.matrix||(P.matrix=!0),P.matrixOptions=p,P.selectedOptions=t(s,c,c.selected),P.unselectedOptions=t(s,c,c.unselected),[{x:!1,y:!1,t:{},trace:c}]}}}),mV=Ye({"node_modules/performance-now/lib/performance-now.js"(X,H){(function(){var g,x,A,M,e,t;typeof performance<"u"&&performance!==null&&performance.now?H.exports=function(){return performance.now()}:typeof process<"u"&&process!==null&&process.hrtime?(H.exports=function(){return(g()-e)/1e6},x=process.hrtime,g=function(){var r;return r=x(),r[0]*1e9+r[1]},M=g(),t=process.uptime()*1e9,e=M-t):Date.now?(H.exports=function(){return Date.now()-A},A=Date.now()):(H.exports=function(){return new Date().getTime()-A},A=new Date().getTime())}).call(X)}}),gV=Ye({"node_modules/raf/index.js"(X,H){var g=mV(),x=window,A=["moz","webkit"],M="AnimationFrame",e=x["request"+M],t=x["cancel"+M]||x["cancelRequest"+M];for(r=0;!e&&r<A.length;r++)e=x[A[r]+"Request"+M],t=x[A[r]+"Cancel"+M]||x[A[r]+"CancelRequest"+M];var r;(!e||!t)&&(o=0,a=0,i=[],n=1e3/60,e=function(s){if(i.length===0){var c=g(),h=Math.max(0,n-(c-o));o=h+c,setTimeout(function(){var v=i.slice(0);i.length=0;for(var p=0;p<v.length;p++)if(!v[p].cancelled)try{v[p].callback(o)}catch(T){setTimeout(function(){throw T},0)}},Math.round(h))}return i.push({handle:++a,callback:s,cancelled:!1}),a},t=function(s){for(var c=0;c<i.length;c++)i[c].handle===s&&(i[c].cancelled=!0)});var o,a,i,n;H.exports=function(s){return e.call(x,s)},H.exports.cancel=function(){t.apply(x,arguments)},H.exports.polyfill=function(s){s||(s=x),s.requestAnimationFrame=e,s.cancelAnimationFrame=t}}}),yV=Ye({"node_modules/array-range/index.js"(X,H){H.exports=function(x,A){var M=typeof x=="number",e=typeof A=="number";M&&!e?(A=x,x=0):!M&&!e&&(x=0,A=0),x=x|0,A=A|0;var t=A-x;if(t<0)throw new Error("array length must be positive");for(var r=new Array(t),o=0,a=x;o<t;o++,a++)r[o]=a;return r}}}),_V=Ye({"node_modules/regl-splom/index.js"(X,H){"use strict";var g=N5(),x=Ev(),A=d0(),M=gV(),e=yV(),t=E1(),r=v0();H.exports=o;function o(s,c){if(!(this instanceof o))return new o(s,c);this.traces=[],this.passes={},this.regl=s,this.scatter=g(s),this.canvas=this.scatter.canvas}o.prototype.render=function(...s){return s.length&&this.update(...s),this.regl.attributes.preserveDrawingBuffer?this.draw():(this.dirty?this.planned==null&&(this.planned=M(()=>{this.draw(),this.dirty=!0,this.planned=null})):(this.draw(),this.dirty=!0,M(()=>{this.dirty=!1})),this)},o.prototype.update=function(...s){if(!s.length)return;for(let v=0;v<s.length;v++)this.updateItem(v,s[v]);this.traces=this.traces.filter(Boolean);let c=[],h=0;for(let v=0;v<this.traces.length;v++){let p=this.traces[v],T=this.traces[v].passes;for(let l=0;l<T.length;l++)c.push(this.passes[T[l]]);p.passOffset=h,h+=p.passes.length}return this.scatter.update(...c),this},o.prototype.updateItem=function(s,c){let{regl:h}=this;if(c===null)return this.traces[s]=null,this;if(!c)return this;let v=x(c,{data:"data items columns rows values dimensions samples x",snap:"snap cluster",size:"sizes size radius",color:"colors color fill fill-color fillColor",opacity:"opacity alpha transparency opaque",borderSize:"borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline",borderColor:"borderColors borderColor bordercolor stroke stroke-color strokeColor",marker:"markers marker shape",range:"range ranges databox dataBox",viewport:"viewport viewBox viewbox",domain:"domain domains area areas",padding:"pad padding paddings pads margin margins",transpose:"transpose transposed",diagonal:"diagonal diag showDiagonal",upper:"upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf",lower:"lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower"}),p=this.traces[s]||(this.traces[s]={id:s,buffer:h.buffer({usage:"dynamic",type:"float",data:new Uint8Array}),color:"black",marker:null,size:12,borderColor:"transparent",borderSize:1,viewport:t([h._gl.drawingBufferWidth,h._gl.drawingBufferHeight]),padding:[0,0,0,0],opacity:1,diagonal:!0,upper:!0,lower:!0});if(v.color!=null&&(p.color=v.color),v.size!=null&&(p.size=v.size),v.marker!=null&&(p.marker=v.marker),v.borderColor!=null&&(p.borderColor=v.borderColor),v.borderSize!=null&&(p.borderSize=v.borderSize),v.opacity!=null&&(p.opacity=v.opacity),v.viewport&&(p.viewport=t(v.viewport)),v.diagonal!=null&&(p.diagonal=v.diagonal),v.upper!=null&&(p.upper=v.upper),v.lower!=null&&(p.lower=v.lower),v.data){p.buffer(r(v.data)),p.columns=v.data.length,p.count=v.data[0].length,p.bounds=[];for(let y=0;y<p.columns;y++)p.bounds[y]=A(v.data[y],1)}let T;v.range&&(p.range=v.range,T=p.range&&typeof p.range[0]!="number"),v.domain&&(p.domain=v.domain);let l=!1;v.padding!=null&&(Array.isArray(v.padding)&&v.padding.length===p.columns&&typeof v.padding[v.padding.length-1]=="number"?(p.padding=v.padding.map(n),l=!0):p.padding=n(v.padding));let _=p.columns,w=p.count,S=p.viewport.width,E=p.viewport.height,m=p.viewport.x,b=p.viewport.y,d=S/_,u=E/_;p.passes=[];for(let y=0;y<_;y++)for(let f=0;f<_;f++){if(!p.diagonal&&f===y||!p.upper&&y>f||!p.lower&&y<f)continue;let P=a(p.id,y,f),L=this.passes[P]||(this.passes[P]={});if(v.data&&(v.transpose?L.positions={x:{buffer:p.buffer,offset:f,count:w,stride:_},y:{buffer:p.buffer,offset:y,count:w,stride:_}}:L.positions={x:{buffer:p.buffer,offset:f*w,count:w},y:{buffer:p.buffer,offset:y*w,count:w}},L.bounds=i(p.bounds,y,f)),v.domain||v.viewport||v.data){let z=l?i(p.padding,y,f):p.padding;if(p.domain){let[F,B,O,I]=i(p.domain,y,f);L.viewport=[m+F*S+z[0],b+B*E+z[1],m+O*S-z[2],b+I*E-z[3]]}else L.viewport=[m+f*d+d*z[0],b+y*u+u*z[1],m+(f+1)*d-d*z[2],b+(y+1)*u-u*z[3]]}v.color&&(L.color=p.color),v.size&&(L.size=p.size),v.marker&&(L.marker=p.marker),v.borderSize&&(L.borderSize=p.borderSize),v.borderColor&&(L.borderColor=p.borderColor),v.opacity&&(L.opacity=p.opacity),v.range&&(L.range=T?i(p.range,y,f):p.range||L.bounds),p.passes.push(P)}return this},o.prototype.draw=function(...s){if(!s.length)this.scatter.draw();else{let c=[];for(let h=0;h<s.length;h++)if(typeof s[h]=="number"){let{passes:v,passOffset:p}=this.traces[s[h]];c.push(...e(p,p+v.length))}else if(s[h].length){let v=s[h],{passes:p,passOffset:T}=this.traces[h];p=p.map((l,_)=>{c[T+_]=v})}this.scatter.draw(...c)}return this},o.prototype.destroy=function(){return this.traces.forEach(s=>{s.buffer&&s.buffer.destroy&&s.buffer.destroy()}),this.traces=null,this.passes=null,this.scatter.destroy(),this};function a(s,c,h){let v=s.id!=null?s.id:s,p=c,T=h;return v<<16|(p&255)<<8|T&255}function i(s,c,h){let v,p,T,l,_,w,S,E,m=s[c],b=s[h];return m.length>2?(v=m[0],T=m[2],p=m[1],l=m[3]):m.length?(v=p=m[0],T=l=m[1]):(v=m.x,p=m.y,T=m.x+m.width,l=m.y+m.height),b.length>2?(_=b[0],S=b[2],w=b[1],E=b[3]):b.length?(_=w=b[0],S=E=b[1]):(_=b.x,w=b.y,S=b.x+b.width,E=b.y+b.height),[_,p,S,l]}function n(s){if(typeof s=="number")return[s,s,s,s];if(s.length===2)return[s[0],s[1],s[0],s[1]];{let c=t(s);return[c.x,c.y,c.x+c.width,c.y+c.height]}}}}),xV=Ye({"src/traces/splom/plot.js"(X,H){"use strict";var g=_V(),x=ta(),A=Xc(),M=Jd().selectMode;H.exports=function(r,o,a){if(a.length)for(var i=0;i<a.length;i++)e(r,a[i][0])};function e(t,r){var o=t._fullLayout,a=o._size,i=r.trace,n=r.t,s=o._splomScenes[i.uid],c=s.matrixOptions,h=c.cdata,v=o._glcanvas.data()[0].regl,p=o.dragmode,T,l,_,w,S;if(h.length!==0){c.lower=i.showupperhalf,c.upper=i.showlowerhalf,c.diagonal=i.diagonal.visible;var E=i._visibleDims,m=h.length,b=s.viewOpts={};for(b.ranges=new Array(m),b.domains=new Array(m),S=0;S<E.length;S++){_=E[S];var d=b.ranges[S]=new Array(4),u=b.domains[S]=new Array(4);T=A.getFromId(t,i._diag[_][0]),T&&(d[0]=T._rl[0],d[2]=T._rl[1],u[0]=T.domain[0],u[2]=T.domain[1]),l=A.getFromId(t,i._diag[_][1]),l&&(d[1]=l._rl[0],d[3]=l._rl[1],u[1]=l.domain[0],u[3]=l.domain[1])}var y=t._context.plotGlPixelRatio,f=a.l*y,P=a.b*y,L=a.w*y,z=a.h*y;b.viewport=[f,P,L+f,z+P],s.matrix===!0&&(s.matrix=g(v));var F=o.clickmode.indexOf("select")>-1,B=M(p)||!!i.selectedpoints||F,O=!0;if(B){var I=i._length;if(i.selectedpoints){s.selectBatch=i.selectedpoints;var N=i.selectedpoints,U={};for(_=0;_<N.length;_++)U[N[_]]=!0;var W=[];for(_=0;_<I;_++)U[_]||W.push(_);s.unselectBatch=W}var Q=n.xpx=new Array(m),ue=n.ypx=new Array(m);for(S=0;S<E.length;S++){if(_=E[S],T=A.getFromId(t,i._diag[_][0]),T)for(Q[S]=new Array(I),w=0;w<I;w++)Q[S][w]=T.c2p(h[S][w]);if(l=A.getFromId(t,i._diag[_][1]),l)for(ue[S]=new Array(I),w=0;w<I;w++)ue[S][w]=l.c2p(h[S][w])}if(s.selectBatch.length||s.unselectBatch.length){var se=x.extendFlat({},c,s.unselectedOptions,b),he=x.extendFlat({},c,s.selectedOptions,b);s.matrix.update(se,he),O=!1}}else n.xpx=n.ypx=null;if(O){var G=x.extendFlat({},c,b);s.matrix.update(G,null)}}}}}),ck=Ye({"src/traces/splom/helpers.js"(X){"use strict";X.getDimIndex=function(g,x){for(var A=x._id,M=A.charAt(0),e={x:0,y:1}[M],t=g._visibleDims,r=0;r<t.length;r++){var o=t[r];if(g._diag[o][e]===A)return r}return!1}}}),bV=Ye({"src/traces/splom/hover.js"(X,H){"use strict";var g=ck(),x=hT().calcHover,A=Co().getFromId,M=Oo().extendFlat;function e(r,o,a,i,n){n||(n={});var s=(i||"").charAt(0)==="x",c=(i||"").charAt(0)==="y",h=t(r,o,a);if((s||c)&&n.hoversubplots==="axis"&&h[0])for(var v=(s?r.xa:r.ya)._subplotsWith,p=n.gd,T=M({},r),l=0;l<v.length;l++){var _=v[l];if(_!==r.xa._id+r.ya._id){c?T.xa=A(p,_,"x"):T.ya=A(p,_,"y");var w=s||c,S=t(T,o,a,w);h=h.concat(S)}}return h}function t(r,o,a,i){var n=r.cd,s=n[0].trace,c=r.scene,h=c.matrixOptions.cdata,v=r.xa,p=r.ya,T=v.c2p(o),l=p.c2p(a),_=r.distance,w=g.getDimIndex(s,v),S=g.getDimIndex(s,p);if(w===!1||S===!1)return[r];for(var E=h[w],m=h[S],b,d,u=_,y=0;y<E.length;y++)if(!(i&&y!==r.index)){var f=E[y],P=m[y],L=v.c2p(f)-T,z=p.c2p(P)-l,F=Math.sqrt(L*L+z*z);(i||F<u)&&(u=d=F,b=y)}return r.index=b,r.distance=u,r.dxy=d,b===void 0?[r]:[x(r,E,m,s)]}H.exports={hoverPoints:e}}}),wV=Ye({"src/traces/splom/select.js"(X,H){"use strict";var g=ta(),x=g.pushUnique,A=uu(),M=ck();H.exports=function(t,r){var o=t.cd,a=o[0].trace,i=o[0].t,n=t.scene,s=n.matrixOptions.cdata,c=t.xaxis,h=t.yaxis,v=[];if(!n)return v;var p=!A.hasMarkers(a)&&!A.hasText(a);if(a.visible!==!0||p)return v;var T=M.getDimIndex(a,c),l=M.getDimIndex(a,h);if(T===!1||l===!1)return v;var _=i.xpx[T],w=i.ypx[l],S=s[T],E=s[l],m=(t.scene.selectBatch||[]).slice(),b=[];if(r!==!1&&!r.degenerate)for(var d=0;d<S.length;d++)r.contains([_[d],w[d]],null,d,t)?(v.push({pointNumber:d,x:S[d],y:E[d]}),x(m,d)):m.indexOf(d)!==-1?x(m,d):b.push(d);var u=n.matrixOptions;return!m.length&&!b.length?n.matrix.update(u,null):!n.selectBatch.length&&!n.unselectBatch.length&&n.matrix.update(n.unselectedOptions,g.extendFlat({},u,n.selectedOptions,n.viewOpts)),n.selectBatch=m,n.unselectBatch=b,v}}}),TV=Ye({"src/traces/splom/edit_style.js"(X,H){"use strict";var g=ta(),x=Fd(),A=m0().markerStyle;H.exports=function(e,t){var r=t.trace,o=e._fullLayout._splomScenes[r.uid];if(o){x(e,r),g.extendFlat(o.matrixOptions,A(e,r));var a=g.extendFlat({},o.matrixOptions,o.viewOpts);o.matrix.update(a,null)}}}}),AV=Ye({"src/traces/splom/base_index.js"(X,H){"use strict";var g=Hn(),x=GS();H.exports={moduleType:"trace",name:"splom",categories:["gl","regl","cartesian","symbols","showLegend","scatter-like"],attributes:uk(),supplyDefaults:pV(),colorbar:cp(),calc:vV(),plot:xV(),hoverPoints:bV().hoverPoints,selectPoints:wV(),editStyle:TV(),meta:{}},g.register(x)}}),SV=Ye({"src/traces/splom/base_plot.js"(X,H){"use strict";var g=J5(),x=Hn(),A=_T(),M=jh().getModuleCalcData,e=Pf(),t=Xc().getFromId,r=Co().shouldShowZeroLine,o="splom",a={};function i(p){var T=p._fullLayout,l=x.getModule(o),_=M(p.calcdata,l)[0],w=A(p,["ANGLE_instanced_arrays","OES_element_index_uint"],a);w&&(T._hasOnlyLargeSploms&&c(p),l.plot(p,{},_))}function n(p){var T=p.calcdata,l=p._fullLayout;l._hasOnlyLargeSploms&&c(p);for(var _=0;_<T.length;_++){var w=T[_][0],S=w.trace,E=l._splomScenes[S.uid];S.type==="splom"&&E&&E.matrix&&s(p,S,E)}}function s(p,T,l){for(var _=l.matrixOptions.data.length,w=T._visibleDims,S=l.viewOpts.ranges=new Array(_),E=0;E<w.length;E++){var m=w[E],b=S[E]=new Array(4),d=t(p,T._diag[m][0]);d&&(b[0]=d.r2l(d.range[0]),b[2]=d.r2l(d.range[1]));var u=t(p,T._diag[m][1]);u&&(b[1]=u.r2l(u.range[0]),b[3]=u.r2l(u.range[1]))}l.selectBatch.length||l.unselectBatch.length?l.matrix.update({ranges:S},{ranges:S}):l.matrix.update({ranges:S})}function c(p){var T=p._fullLayout,l=T._glcanvas.data()[0].regl,_=T._splomGrid;_||(_=T._splomGrid=g(l)),_.update(h(p))}function h(p){var T=p._context.plotGlPixelRatio,l=p._fullLayout,_=l._size,w=[0,0,l.width*T,l.height*T],S={},E;function m(W,Q,ue,se,he,G){ue*=T,se*=T,he*=T,G*=T;var $=Q[W+"color"],J=Q[W+"width"],Z=String($+J);Z in S?S[Z].data.push(NaN,NaN,ue,se,he,G):S[Z]={data:[ue,se,he,G],join:"rect",thickness:J*T,color:$,viewport:w,range:w,overlay:!1}}for(E in l._splomSubplots){var b=l._plots[E],d=b.xaxis,u=b.yaxis,y=d._gridVals,f=u._gridVals,P=d._offset,L=d._length,z=u._length,F=_.b+u.domain[0]*_.h,B=-u._m,O=-B*u.r2l(u.range[0],u.calendar),I,N;if(d.showgrid)for(E=0;E<y.length;E++)I=P+d.l2p(y[E].x),m("grid",d,I,F,I,F+z);if(u.showgrid)for(E=0;E<f.length;E++)N=F+O+B*f[E].x,m("grid",u,P,N,P+L,N);r(p,d,u)&&(I=P+d.l2p(0),m("zeroline",d,I,F,I,F+z)),r(p,u,d)&&(N=F+O+0,m("zeroline",u,P,N,P+L,N))}var U=[];for(E in S)U.push(S[E]);return U}function v(p,T,l,_){var w={},S;if(_._splomScenes){for(S=0;S<p.length;S++){var E=p[S];E.type==="splom"&&(w[E.uid]=1)}for(S=0;S<l.length;S++){var m=l[S];if(!w[m.uid]){var b=_._splomScenes[m.uid];b&&b.destroy&&b.destroy(),_._splomScenes[m.uid]=null,delete _._splomScenes[m.uid]}}}Object.keys(_._splomScenes||{}).length===0&&delete _._splomScenes,_._splomGrid&&!T._hasOnlyLargeSploms&&_._hasOnlyLargeSploms&&(_._splomGrid.destroy(),_._splomGrid=null,delete _._splomGrid),e.clean(p,T,l,_)}H.exports={name:o,attr:e.attr,attrRegex:e.attrRegex,layoutAttributes:e.layoutAttributes,supplyLayoutDefaults:e.supplyLayoutDefaults,drawFramework:e.drawFramework,plot:i,drag:n,updateGrid:c,clean:v,updateFx:e.updateFx,toSVG:e.toSVG,reglPrecompiled:a}}}),MV=Ye({"src/traces/splom/index.js"(X,H){"use strict";var g=AV();g.basePlotModule=SV(),H.exports=g}}),EV=Ye({"lib/splom.js"(X,H){"use strict";H.exports=MV()}}),fk=Ye({"src/traces/parcoords/attributes.js"(X,H){"use strict";var g=tu(),x=Vh(),A=Au(),M=Wu().attributes,e=Oo().extendFlat,t=cl().templatedArray;H.exports={domain:M({name:"parcoords",trace:!0,editType:"plot"}),labelangle:{valType:"angle",dflt:0,editType:"plot"},labelside:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},labelfont:A({editType:"plot"}),tickfont:A({autoShadowDflt:!0,editType:"plot"}),rangefont:A({editType:"plot"}),dimensions:t("dimension",{label:{valType:"string",editType:"plot"},tickvals:e({},x.tickvals,{editType:"plot"}),ticktext:e({},x.ticktext,{editType:"plot"}),tickformat:e({},x.tickformat,{editType:"plot"}),visible:{valType:"boolean",dflt:!0,editType:"plot"},range:{valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},constraintrange:{valType:"info_array",freeLength:!0,dimensions:"1-2",items:[{valType:"any",editType:"plot"},{valType:"any",editType:"plot"}],editType:"plot"},multiselect:{valType:"boolean",dflt:!0,editType:"plot"},values:{valType:"data_array",editType:"calc"},editType:"calc"}),line:e({editType:"calc"},g("line",{colorscaleDflt:"Viridis",autoColorDflt:!1,editTypeOverride:"calc"})),unselected:{line:{color:{valType:"color",dflt:"#7f7f7f",editType:"plot"},opacity:{valType:"number",min:0,max:1,dflt:"auto",editType:"plot"},editType:"plot"},editType:"plot"}}}}),wx=Ye({"src/traces/parcoords/constants.js"(X,H){"use strict";H.exports={maxDimensionCount:60,overdrag:45,verticalPadding:2,tickDistance:50,canvasPixelRatio:1,blockLineCount:5e3,layers:["contextLineLayer","focusLineLayer","pickLineLayer"],axisTitleOffset:28,axisExtentOffset:10,bar:{width:4,captureWidth:10,fillColor:"magenta",fillOpacity:1,snapDuration:150,snapRatio:.25,snapClose:.01,strokeOpacity:1,strokeWidth:1,handleHeight:8,handleOpacity:1,handleOverlap:0},cn:{axisExtentText:"axis-extent-text",parcoordsLineLayers:"parcoords-line-layers",parcoordsLineLayer:"parcoords-lines",parcoords:"parcoords",parcoordsControlView:"parcoords-control-view",yAxis:"y-axis",axisOverlays:"axis-overlays",axis:"axis",axisHeading:"axis-heading",axisTitle:"axis-title",axisExtent:"axis-extent",axisExtentTop:"axis-extent-top",axisExtentTopText:"axis-extent-top-text",axisExtentBottom:"axis-extent-bottom",axisExtentBottomText:"axis-extent-bottom-text",axisBrush:"axis-brush"},id:{filterBarPattern:"filter-bar-pattern"}}}}),kv=Ye({"src/lib/gup.js"(X,H){"use strict";var g=T_();function x(A){return[A]}H.exports={keyFun:function(A){return A.key},repeat:x,descend:g,wrap:x,unwrap:function(A){return A[0]}}}}),hk=Ye({"src/traces/parcoords/axisbrush.js"(X,H){"use strict";var g=wx(),x=_n(),A=kv().keyFun,M=kv().repeat,e=ta().sorterAsc,t=ta().strTranslate,r=g.bar.snapRatio;function o(U,W){return U*(1-r)+W*r}var a=g.bar.snapClose;function i(U,W){return U*(1-a)+W*a}function n(U,W,Q,ue){if(s(Q,ue))return Q;var se=U?-1:1,he=0,G=W.length-1;if(se<0){var $=he;he=G,G=$}for(var J=W[he],Z=J,re=he;se*re<se*G;re+=se){var ne=re+se,j=W[ne];if(se*Q<se*i(J,j))return o(J,Z);if(se*Q<se*j||ne===G)return o(j,J);Z=J,J=j}}function s(U,W){for(var Q=0;Q<W.length;Q++)if(U>=W[Q][0]&&U<=W[Q][1])return!0;return!1}function c(U){U.attr("x",-g.bar.captureWidth/2).attr("width",g.bar.captureWidth)}function h(U){U.attr("visibility","visible").style("visibility","visible").attr("fill","yellow").attr("opacity",0)}function v(U){if(!U.brush.filterSpecified)return"0,"+U.height;for(var W=p(U.brush.filter.getConsolidated(),U.height),Q=[0],ue,se,he,G=W.length?W[0][0]:null,$=0;$<W.length;$++)ue=W[$],se=ue[1]-ue[0],Q.push(G),Q.push(se),he=$+1,he<W.length&&(G=W[he][0]-ue[1]);return Q.push(U.height),Q}function p(U,W){return U.map(function(Q){return Q.map(function(ue){return Math.max(0,ue*W)}).sort(e)})}function T(U,W){var Q=g.bar.handleHeight;if(!(W>U[1]+Q||W<U[0]-Q))return W>=.9*U[1]+.1*U[0]?"n":W<=.9*U[0]+.1*U[1]?"s":"ns"}function l(){x.select(document.body).style("cursor",null)}function _(U){U.attr("stroke-dasharray",v)}function w(U,W){var Q=x.select(U).selectAll(".highlight, .highlight-shadow"),ue=W?Q.transition().duration(g.bar.snapDuration).each("end",W):Q;_(ue)}function S(U,W){var Q=U.brush,ue=Q.filterSpecified,se=NaN,he={},G;if(ue){var $=U.height,J=Q.filter.getConsolidated(),Z=p(J,$),re=NaN,ne=NaN,j=NaN;for(G=0;G<=Z.length;G++){var ee=Z[G];if(ee&&ee[0]<=W&&W<=ee[1]){re=G;break}else if(ne=G?G-1:NaN,ee&&ee[0]>W){j=G;break}}if(se=re,isNaN(se)&&(isNaN(ne)||isNaN(j)?se=isNaN(ne)?j:ne:se=W-Z[ne][1]<Z[j][0]-W?ne:j),!isNaN(se)){var ie=Z[se],fe=T(ie,W);fe&&(he.interval=J[se],he.intervalPix=ie,he.region=fe)}}if(U.ordinal&&!he.region){var be=U.unitTickvals,Ae=U.unitToPaddedPx.invert(W);for(G=0;G<be.length;G++){var Be=[be[Math.max(G-1,0)]*.25+be[G]*.75,be[Math.min(G+1,be.length-1)]*.25+be[G]*.75];if(Ae>=Be[0]&&Ae<=Be[1]){he.clickableOrdinalRange=Be;break}}}return he}function E(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.unitToPaddedPx.invert(Q),se=W.brush,he=S(W,Q),G=he.interval,$=se.svgBrush;if($.wasDragged=!1,$.grabbingBar=he.region==="ns",$.grabbingBar){var J=G.map(W.unitToPaddedPx);$.grabPoint=Q-J[0]-g.verticalPadding,$.barLength=J[1]-J[0]}$.clickableOrdinalRange=he.clickableOrdinalRange,$.stayingIntervals=W.multiselect&&se.filterSpecified?se.filter.getConsolidated():[],G&&($.stayingIntervals=$.stayingIntervals.filter(function(Z){return Z[0]!==G[0]&&Z[1]!==G[1]})),$.startExtent=he.region?G[he.region==="s"?1:0]:ue,W.parent.inBrushDrag=!0,$.brushStartCallback()}function m(U,W){x.event.sourceEvent.stopPropagation();var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=W.brush.svgBrush;ue.wasDragged=!0,ue._dragging=!0,ue.grabbingBar?ue.newExtent=[Q-ue.grabPoint,Q+ue.barLength-ue.grabPoint].map(W.unitToPaddedPx.invert):ue.newExtent=[ue.startExtent,W.unitToPaddedPx.invert(Q)].sort(e),W.brush.filterSpecified=!0,ue.extent=ue.stayingIntervals.concat([ue.newExtent]),ue.brushCallback(W),w(U.parentNode)}function b(U,W){var Q=W.brush,ue=Q.filter,se=Q.svgBrush;se._dragging||(d(U,W),m(U,W),W.brush.svgBrush.wasDragged=!1),se._dragging=!1;var he=x.event;he.sourceEvent.stopPropagation();var G=se.grabbingBar;if(se.grabbingBar=!1,se.grabLocation=void 0,W.parent.inBrushDrag=!1,l(),!se.wasDragged){se.wasDragged=void 0,se.clickableOrdinalRange?Q.filterSpecified&&W.multiselect?se.extent.push(se.clickableOrdinalRange):(se.extent=[se.clickableOrdinalRange],Q.filterSpecified=!0):G?(se.extent=se.stayingIntervals,se.extent.length===0&&z(Q)):z(Q),se.brushCallback(W),w(U.parentNode),se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[]);return}var $=function(){ue.set(ue.getConsolidated())};if(W.ordinal){var J=W.unitTickvals;J[J.length-1]<J[0]&&J.reverse(),se.newExtent=[n(0,J,se.newExtent[0],se.stayingIntervals),n(1,J,se.newExtent[1],se.stayingIntervals)];var Z=se.newExtent[1]>se.newExtent[0];se.extent=se.stayingIntervals.concat(Z?[se.newExtent]:[]),se.extent.length||z(Q),se.brushCallback(W),Z?w(U.parentNode,$):($(),w(U.parentNode))}else $();se.brushEndCallback(Q.filterSpecified?ue.getConsolidated():[])}function d(U,W){var Q=W.height-x.mouse(U)[1]-2*g.verticalPadding,ue=S(W,Q),se="crosshair";ue.clickableOrdinalRange?se="pointer":ue.region&&(se=ue.region+"-resize"),x.select(document.body).style("cursor",se)}function u(U){U.on("mousemove",function(W){x.event.preventDefault(),W.parent.inBrushDrag||d(this,W)}).on("mouseleave",function(W){W.parent.inBrushDrag||l()}).call(x.behavior.drag().on("dragstart",function(W){E(this,W)}).on("drag",function(W){m(this,W)}).on("dragend",function(W){b(this,W)}))}function y(U,W){return U[0]-W[0]}function f(U,W,Q){var ue=Q._context.staticPlot,se=U.selectAll(".background").data(M);se.enter().append("rect").classed("background",!0).call(c).call(h).style("pointer-events",ue?"none":"auto").attr("transform",t(0,g.verticalPadding)),se.call(u).attr("height",function($){return $.height-g.verticalPadding});var he=U.selectAll(".highlight-shadow").data(M);he.enter().append("line").classed("highlight-shadow",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width+g.bar.strokeWidth).attr("stroke",W).attr("opacity",g.bar.strokeOpacity).attr("stroke-linecap","butt"),he.attr("y1",function($){return $.height}).call(_);var G=U.selectAll(".highlight").data(M);G.enter().append("line").classed("highlight",!0).attr("x",-g.bar.width/2).attr("stroke-width",g.bar.width-g.bar.strokeWidth).attr("stroke",g.bar.fillColor).attr("opacity",g.bar.fillOpacity).attr("stroke-linecap","butt"),G.attr("y1",function($){return $.height}).call(_)}function P(U,W,Q){var ue=U.selectAll("."+g.cn.axisBrush).data(M,A);ue.enter().append("g").classed(g.cn.axisBrush,!0),f(ue,W,Q)}function L(U){return U.svgBrush.extent.map(function(W){return W.slice()})}function z(U){U.filterSpecified=!1,U.svgBrush.extent=[[-1/0,1/0]]}function F(U){return function(Q){var ue=Q.brush,se=L(ue),he=se.slice();ue.filter.set(he),U()}}function B(U){for(var W=U.slice(),Q=[],ue,se=W.shift();se;){for(ue=se.slice();(se=W.shift())&&se[0]<=ue[1];)ue[1]=Math.max(ue[1],se[1]);Q.push(ue)}return Q.length===1&&Q[0][0]>Q[0][1]&&(Q=[]),Q}function O(){var U=[],W,Q;return{set:function(ue){U=ue.map(function(se){return se.slice().sort(e)}).sort(y),U.length===1&&U[0][0]===-1/0&&U[0][1]===1/0&&(U=[[0,-1]]),W=B(U),Q=U.reduce(function(se,he){return[Math.min(se[0],he[0]),Math.max(se[1],he[1])]},[1/0,-1/0])},get:function(){return U.slice()},getConsolidated:function(){return W},getBounds:function(){return Q}}}function I(U,W,Q,ue,se,he){var G=O();return G.set(Q),{filter:G,filterSpecified:W,svgBrush:{extent:[],brushStartCallback:ue,brushCallback:F(se),brushEndCallback:he}}}function N(U,W){if(Array.isArray(U[0])?(U=U.map(function(ue){return ue.sort(e)}),W.multiselect?U=B(U.sort(y)):U=[U[0]]):U=[U.sort(e)],W.tickvals){var Q=W.tickvals.slice().sort(e);if(U=U.map(function(ue){var se=[n(0,Q,ue[0],[]),n(1,Q,ue[1],[])];if(se[1]>se[0])return se}).filter(function(ue){return ue}),!U.length)return}return U.length>1?U:U[0]}H.exports={makeBrush:I,ensureAxisBrush:P,cleanRanges:N}}}),kV=Ye({"src/traces/parcoords/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=Co(),r=fk(),o=hk(),a=wx().maxDimensionCount,i=xT();function n(c,h,v,p,T){var l=T("line.color",v);if(x(c,"line")&&g.isArrayOrTypedArray(l)){if(l.length)return T("line.colorscale"),A(c,h,p,T,{prefix:"line.",cLetter:"c"}),l.length;h.line.color=v}return 1/0}function s(c,h,v,p){function T(E,m){return g.coerce(c,h,r.dimensions,E,m)}var l=T("values"),_=T("visible");if(l&&l.length||(_=h.visible=!1),_){T("label"),T("tickvals"),T("ticktext"),T("tickformat");var w=T("range");h._ax={_id:"y",type:"linear",showexponent:"all",exponentformat:"B",range:w},t.setConvert(h._ax,p.layout),T("multiselect");var S=T("constraintrange");S&&(h.constraintrange=o.cleanRanges(S,h))}}H.exports=function(h,v,p,T){function l(m,b){return g.coerce(h,v,r,m,b)}var _=h.dimensions;Array.isArray(_)&&_.length>a&&(g.log("parcoords traces support up to "+a+" dimensions at the moment"),_.splice(a));var w=e(h,v,{name:"dimensions",layout:T,handleItemDefaults:s}),S=n(h,v,p,T,l);M(v,T,l),(!Array.isArray(w)||!w.length)&&(v.visible=!1),i(v,w,"values",S);var E=g.extendFlat({},T.font,{size:Math.round(T.font.size/1.2)});g.coerceFont(l,"labelfont",E),g.coerceFont(l,"tickfont",E,{autoShadowDflt:!0}),g.coerceFont(l,"rangefont",E),l("labelangle"),l("labelside"),l("unselected.line.color"),l("unselected.line.opacity")}}}),CV=Ye({"src/traces/parcoords/calc.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray,x=Su(),A=kv().wrap;H.exports=function(t,r){var o,a;return x.hasColorscale(r,"line")&&g(r.line.color)?(o=r.line.color,a=x.extractOpts(r.line).colorscale,x.calc(t,r,{vals:o,containerStr:"line",cLetter:"c"})):(o=M(r._length),a=[[0,r.line.color],[1,r.line.color]]),A({lineColor:o,cscale:a})};function M(e){for(var t=new Array(e),r=0;r<e;r++)t[r]=.5;return t}}});function LV(X){var H,g,x,A=[],M=1,e;if(typeof X=="number")return{space:"rgb",values:[X>>>16,(X&65280)>>>8,X&255],alpha:1};if(typeof X=="number")return{space:"rgb",values:[X>>>16,(X&65280)>>>8,X&255],alpha:1};if(X=String(X).toLowerCase(),bT.default[X])A=bT.default[X].slice(),e="rgb";else if(X==="transparent")M=0,e="rgb",A=[0,0,0];else if(X[0]==="#"){var t=X.slice(1),r=t.length,o=r<=4;M=1,o?(A=[parseInt(t[0]+t[0],16),parseInt(t[1]+t[1],16),parseInt(t[2]+t[2],16)],r===4&&(M=parseInt(t[3]+t[3],16)/255)):(A=[parseInt(t[0]+t[1],16),parseInt(t[2]+t[3],16),parseInt(t[4]+t[5],16)],r===8&&(M=parseInt(t[6]+t[7],16)/255)),A[0]||(A[0]=0),A[1]||(A[1]=0),A[2]||(A[2]=0),e="rgb"}else if(x=/^((?:rgba?|hs[lvb]a?|hwba?|cmyk?|xy[zy]|gray|lab|lchu?v?|[ly]uv|lms|oklch|oklab|color))\s*\(([^\)]*)\)/.exec(X)){var a=x[1];e=a.replace(/a$/,"");var i=e==="cmyk"?4:e==="gray"?1:3;A=x[2].trim().split(/\s*[,\/]\s*|\s+/),e==="color"&&(e=A.shift()),A=A.map(function(n,s){if(n[n.length-1]==="%")return n=parseFloat(n)/100,s===3?n:e==="rgb"?n*255:e[0]==="h"||e[0]==="l"&&!s?n*100:e==="lab"?n*125:e==="lch"?s<2?n*150:n*360:e[0]==="o"&&!s?n:e==="oklab"?n*.4:e==="oklch"?s<2?n*.4:n*360:n;if(e[s]==="h"||s===2&&e[e.length-1]==="h"){if(wT[n]!==void 0)return wT[n];if(n.endsWith("deg"))return parseFloat(n);if(n.endsWith("turn"))return parseFloat(n)*360;if(n.endsWith("grad"))return parseFloat(n)*360/400;if(n.endsWith("rad"))return parseFloat(n)*180/Math.PI}return n==="none"?0:parseFloat(n)}),M=A.length>i?A.pop():1}else/[0-9](?:\s|\/|,)/.test(X)&&(A=X.match(/([0-9]+)/g).map(function(n){return parseFloat(n)}),e=((g=(H=X.match(/([a-z])/ig))==null?void 0:H.join(""))==null?void 0:g.toLowerCase())||"rgb");return{space:e,values:A,alpha:M}}var bT,pk,wT,PV=Qn({"node_modules/color-parse/index.js"(){bT=Ul(d5(),1),pk=LV,wT={red:0,orange:60,yellow:120,green:180,blue:240,purple:300}}}),Tx,dk=Qn({"node_modules/color-space/rgb.js"(){Tx={name:"rgb",min:[0,0,0],max:[255,255,255],channel:["red","green","blue"],alias:["RGB"]}}}),Ax,IV=Qn({"node_modules/color-space/hsl.js"(){dk(),Ax={name:"hsl",min:[0,0,0],max:[360,100,100],channel:["hue","saturation","lightness"],alias:["HSL"],rgb:function(X){var H=X[0]/360,g=X[1]/100,x=X[2]/100,A,M,e,t,r,o=0;if(g===0)return r=x*255,[r,r,r];for(M=x<.5?x*(1+g):x+g-x*g,A=2*x-M,t=[0,0,0];o<3;)e=H+1/3*-(o-1),e<0?e++:e>1&&e--,r=6*e<1?A+(M-A)*6*e:2*e<1?M:3*e<2?A+(M-A)*(2/3-e)*6:A,t[o++]=r*255;return t}},Tx.hsl=function(X){var H=X[0]/255,g=X[1]/255,x=X[2]/255,A=Math.min(H,g,x),M=Math.max(H,g,x),e=M-A,t,r,o;return M===A?t=0:H===M?t=(g-x)/e:g===M?t=2+(x-H)/e:x===M&&(t=4+(H-g)/e),t=Math.min(t*60,360),t<0&&(t+=360),o=(A+M)/2,M===A?r=0:o<=.5?r=e/(M+A):r=e/(2-M-A),[t,r*100,o*100]}}}),vk={};Ps(vk,{default:()=>RV});function RV(X){Array.isArray(X)&&X.raw&&(X=String.raw(...arguments)),X instanceof Number&&(X=+X);var H,g,x,A=pk(X);if(!A.space)return[];let M=A.space[0]==="h"?Ax.min:Tx.min,e=A.space[0]==="h"?Ax.max:Tx.max;return H=Array(3),H[0]=Math.min(Math.max(A.values[0],M[0]),e[0]),H[1]=Math.min(Math.max(A.values[1],M[1]),e[1]),H[2]=Math.min(Math.max(A.values[2],M[2]),e[2]),A.space[0]==="h"&&(H=Ax.rgb(H)),H.push(Math.min(Math.max(A.alpha,0),1)),H}var DV=Qn({"node_modules/color-rgba/index.js"(){PV(),dk(),IV()}}),mk=Ye({"src/traces/parcoords/helpers.js"(X){"use strict";var H=ta().isTypedArray;X.convertTypedArray=function(g){return H(g)?Array.prototype.slice.call(g):g},X.isOrdinal=function(g){return!!g.tickvals},X.isVisible=function(g){return g.visible||!("visible"in g)}}}),zV=Ye({"src/traces/parcoords/lines.js"(X,H){"use strict";var g=["precision highp float;","","varying vec4 fragColor;","","attribute vec4 p01_04, p05_08, p09_12, p13_16,"," p17_20, p21_24, p25_28, p29_32,"," p33_36, p37_40, p41_44, p45_48,"," p49_52, p53_56, p57_60, colors;","","uniform mat4 dim0A, dim1A, dim0B, dim1B, dim0C, dim1C, dim0D, dim1D,"," loA, hiA, loB, hiB, loC, hiC, loD, hiD;","","uniform vec2 resolution, viewBoxPos, viewBoxSize;","uniform float maskHeight;","uniform float drwLayer; // 0: context, 1: focus, 2: pick","uniform vec4 contextColor;","uniform sampler2D maskTexture, palette;","","bool isPick = (drwLayer > 1.5);","bool isContext = (drwLayer < 0.5);","","const vec4 ZEROS = vec4(0.0, 0.0, 0.0, 0.0);","const vec4 UNITS = vec4(1.0, 1.0, 1.0, 1.0);","","float val(mat4 p, mat4 v) {"," return dot(matrixCompMult(p, v) * UNITS, UNITS);","}","","float axisY(float ratio, mat4 A, mat4 B, mat4 C, mat4 D) {"," float y1 = val(A, dim0A) + val(B, dim0B) + val(C, dim0C) + val(D, dim0D);"," float y2 = val(A, dim1A) + val(B, dim1B) + val(C, dim1C) + val(D, dim1D);"," return y1 * (1.0 - ratio) + y2 * ratio;","}","","int iMod(int a, int b) {"," return a - b * (a / b);","}","","bool fOutside(float p, float lo, float hi) {"," return (lo < hi) && (lo > p || p > hi);","}","","bool vOutside(vec4 p, vec4 lo, vec4 hi) {"," return ("," fOutside(p[0], lo[0], hi[0]) ||"," fOutside(p[1], lo[1], hi[1]) ||"," fOutside(p[2], lo[2], hi[2]) ||"," fOutside(p[3], lo[3], hi[3])"," );","}","","bool mOutside(mat4 p, mat4 lo, mat4 hi) {"," return ("," vOutside(p[0], lo[0], hi[0]) ||"," vOutside(p[1], lo[1], hi[1]) ||"," vOutside(p[2], lo[2], hi[2]) ||"," vOutside(p[3], lo[3], hi[3])"," );","}","","bool outsideBoundingBox(mat4 A, mat4 B, mat4 C, mat4 D) {"," return mOutside(A, loA, hiA) ||"," mOutside(B, loB, hiB) ||"," mOutside(C, loC, hiC) ||"," mOutside(D, loD, hiD);","}","","bool outsideRasterMask(mat4 A, mat4 B, mat4 C, mat4 D) {"," mat4 pnts[4];"," pnts[0] = A;"," pnts[1] = B;"," pnts[2] = C;"," pnts[3] = D;",""," for(int i = 0; i < 4; ++i) {"," for(int j = 0; j < 4; ++j) {"," for(int k = 0; k < 4; ++k) {"," if(0 == iMod("," int(255.0 * texture2D(maskTexture,"," vec2("," (float(i * 2 + j / 2) + 0.5) / 8.0,"," (pnts[i][j][k] * (maskHeight - 1.0) + 1.0) / maskHeight"," ))[3]"," ) / int(pow(2.0, float(iMod(j * 4 + k, 8)))),"," 2"," )) return true;"," }"," }"," }"," return false;","}","","vec4 position(bool isContext, float v, mat4 A, mat4 B, mat4 C, mat4 D) {"," float x = 0.5 * sign(v) + 0.5;"," float y = axisY(x, A, B, C, D);"," float z = 1.0 - abs(v);",""," z += isContext ? 0.0 : 2.0 * float("," outsideBoundingBox(A, B, C, D) ||"," outsideRasterMask(A, B, C, D)"," );",""," return vec4("," 2.0 * (vec2(x, y) * viewBoxSize + viewBoxPos) / resolution - 1.0,"," z,"," 1.0"," );","}","","void main() {"," mat4 A = mat4(p01_04, p05_08, p09_12, p13_16);"," mat4 B = mat4(p17_20, p21_24, p25_28, p29_32);"," mat4 C = mat4(p33_36, p37_40, p41_44, p45_48);"," mat4 D = mat4(p49_52, p53_56, p57_60, ZEROS);",""," float v = colors[3];",""," gl_Position = position(isContext, v, A, B, C, D);",""," fragColor ="," isContext ? vec4(contextColor) :"," isPick ? vec4(colors.rgb, 1.0) : texture2D(palette, vec2(abs(v), 0.5));","}"].join(`
+`),x=["precision highp float;","","varying vec4 fragColor;","","void main() {"," gl_FragColor = fragColor;","}"].join(`
+`),A=wx().maxDimensionCount,M=ta(),e=1e-6,t=2048,r=new Uint8Array(4),o=new Uint8Array(4),a={shape:[256,1],format:"rgba",type:"uint8",mag:"nearest",min:"nearest"};function i(b){b.read({x:0,y:0,width:1,height:1,data:r})}function n(b,d,u,y,f){var P=b._gl;P.enable(P.SCISSOR_TEST),P.scissor(d,u,y,f),b.clear({color:[0,0,0,0],depth:1})}function s(b,d,u,y,f,P){var L=P.key;function z(F){var B=Math.min(y,f-F*y);F===0&&(window.cancelAnimationFrame(u.currentRafs[L]),delete u.currentRafs[L],n(b,P.scissorX,P.scissorY,P.scissorWidth,P.viewBoxSize[1])),!u.clearOnly&&(P.count=2*B,P.offset=2*F*y,d(P),F*y+B<f&&(u.currentRafs[L]=window.requestAnimationFrame(function(){z(F+1)})),u.drawCompleted=!1)}u.drawCompleted||(i(b),u.drawCompleted=!0),z(0)}function c(b){return Math.max(e,Math.min(1-e,b))}function h(b,d){for(var u=new Array(256),y=0;y<256;y++)u[y]=b(y/255).concat(d);return u}function v(b,d){return(b>>>8*d)%256/255}function p(b,d,u){for(var y=new Array(b*(A+4)),f=0,P=0;P<b;P++){for(var L=0;L<A;L++)y[f++]=L<d.length?d[L].paddedUnitValues[P]:.5;y[f++]=v(P,2),y[f++]=v(P,1),y[f++]=v(P,0),y[f++]=c(u[P])}return y}function T(b,d,u){for(var y=new Array(d*8),f=0,P=0;P<d;P++)for(var L=0;L<2;L++)for(var z=0;z<4;z++){var F=b*4+z,B=u[P*64+F];F===63&&L===0&&(B*=-1),y[f++]=B}return y}function l(b){var d="0"+b;return d.substr(d.length-2)}function _(b){return b<A?"p"+l(b+1)+"_"+l(b+4):"colors"}function w(b,d,u){for(var y=0;y<=A;y+=4)b[_(y)](T(y/4,d,u))}function S(b){for(var d={},u=0;u<=A;u+=4)d[_(u)]=b.buffer({usage:"dynamic",type:"float",data:new Uint8Array(0)});return d}function E(b,d,u,y,f,P,L,z,F,B,O,I,N,U){for(var W=[[],[]],Q=0;Q<64;Q++)W[0][Q]=Q===f?1:0,W[1][Q]=Q===P?1:0;L*=U,z*=U,F*=U,B*=U;var ue=b.lines.canvasOverdrag*U,se=b.domain,he=b.canvasWidth*U,G=b.canvasHeight*U,$=b.pad.l*U,J=b.pad.b*U,Z=b.layoutHeight*U,re=b.layoutWidth*U,ne=b.deselectedLines.color,j=b.deselectedLines.opacity,ee=M.extendFlat({key:O,resolution:[he,G],viewBoxPos:[L+ue,z],viewBoxSize:[F,B],i0:f,i1:P,dim0A:W[0].slice(0,16),dim0B:W[0].slice(16,32),dim0C:W[0].slice(32,48),dim0D:W[0].slice(48,64),dim1A:W[1].slice(0,16),dim1B:W[1].slice(16,32),dim1C:W[1].slice(32,48),dim1D:W[1].slice(48,64),drwLayer:I,contextColor:[ne[0]/255,ne[1]/255,ne[2]/255,j!=="auto"?ne[3]*j:Math.max(1/255,Math.pow(1/b.lines.color.length,1/3))],scissorX:(y===d?0:L+ue)+($-ue)+re*se.x[0],scissorWidth:(y===u?he-L+ue:F+.5)+(y===d?L+ue:0),scissorY:z+J+Z*se.y[0],scissorHeight:B,viewportX:$-ue+re*se.x[0],viewportY:J+Z*se.y[0],viewportWidth:he,viewportHeight:G},N);return ee}function m(b){var d=t-1,u=Math.max(0,Math.floor(b[0]*d),0),y=Math.min(d,Math.ceil(b[1]*d),d);return[Math.min(u,y),Math.max(u,y)]}H.exports=function(b,d){var u=d.context,y=d.pick,f=d.regl,P=f._gl,L=P.getParameter(P.ALIASED_LINE_WIDTH_RANGE),z=Math.max(L[0],Math.min(L[1],d.viewModel.plotGlPixelRatio)),F={currentRafs:{},drawCompleted:!0,clearOnly:!1},B,O,I,N,U=S(f),W,Q=f.texture(a),ue=[];he(d);var se=f({profile:!1,blend:{enable:u,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:!u,mask:!0,func:"less",range:[0,1]},cull:{enable:!0,face:"back"},scissor:{enable:!0,box:{x:f.prop("scissorX"),y:f.prop("scissorY"),width:f.prop("scissorWidth"),height:f.prop("scissorHeight")}},viewport:{x:f.prop("viewportX"),y:f.prop("viewportY"),width:f.prop("viewportWidth"),height:f.prop("viewportHeight")},dither:!1,vert:g,frag:x,primitive:"lines",lineWidth:z,attributes:U,uniforms:{resolution:f.prop("resolution"),viewBoxPos:f.prop("viewBoxPos"),viewBoxSize:f.prop("viewBoxSize"),dim0A:f.prop("dim0A"),dim1A:f.prop("dim1A"),dim0B:f.prop("dim0B"),dim1B:f.prop("dim1B"),dim0C:f.prop("dim0C"),dim1C:f.prop("dim1C"),dim0D:f.prop("dim0D"),dim1D:f.prop("dim1D"),loA:f.prop("loA"),hiA:f.prop("hiA"),loB:f.prop("loB"),hiB:f.prop("hiB"),loC:f.prop("loC"),hiC:f.prop("hiC"),loD:f.prop("loD"),hiD:f.prop("hiD"),palette:Q,contextColor:f.prop("contextColor"),maskTexture:f.prop("maskTexture"),drwLayer:f.prop("drwLayer"),maskHeight:f.prop("maskHeight")},offset:f.prop("offset"),count:f.prop("count")});function he(ne){B=ne.model,O=ne.viewModel,I=O.dimensions.slice(),N=I[0]?I[0].values.length:0;var j=B.lines,ee=y?j.color.map(function(fe,be){return be/j.color.length}):j.color,ie=p(N,I,ee);w(U,N,ie),!u&&!y&&(Q=f.texture(M.extendFlat({data:h(B.unitToColor,255)},a)))}function G(ne){var j,ee,ie,fe=[[],[]];for(ie=0;ie<64;ie++){var be=!ne&&ie<I.length?I[ie].brush.filter.getBounds():[-1/0,1/0];fe[0][ie]=be[0],fe[1][ie]=be[1]}var Ae=t*8,Be=new Array(Ae);for(j=0;j<Ae;j++)Be[j]=255;if(!ne)for(j=0;j<I.length;j++){var Ie=j%8,Ze=(j-Ie)/8,at=Math.pow(2,Ie),it=I[j],et=it.brush.filter.get();if(!(et.length<2)){var lt=m(et[0])[1];for(ee=1;ee<et.length;ee++){var Me=m(et[ee]);for(ie=lt+1;ie<Me[0];ie++)Be[ie*8+Ze]&=~at;lt=Math.max(lt,Me[1])}}}var ge={shape:[8,t],format:"alpha",type:"uint8",mag:"nearest",min:"nearest",data:Be};return W?W(ge):W=f.texture(ge),{maskTexture:W,maskHeight:t,loA:fe[0].slice(0,16),loB:fe[0].slice(16,32),loC:fe[0].slice(32,48),loD:fe[0].slice(48,64),hiA:fe[1].slice(0,16),hiB:fe[1].slice(16,32),hiC:fe[1].slice(32,48),hiD:fe[1].slice(48,64)}}function $(ne,j,ee){var ie=ne.length,fe,be,Ae,Be=1/0,Ie=-1/0;for(fe=0;fe<ie;fe++)ne[fe].dim0.canvasX<Be&&(Be=ne[fe].dim0.canvasX,be=fe),ne[fe].dim1.canvasX>Ie&&(Ie=ne[fe].dim1.canvasX,Ae=fe);ie===0&&n(f,0,0,B.canvasWidth,B.canvasHeight);var Ze=G(u);for(fe=0;fe<ie;fe++){var at=ne[fe],it=at.dim0.crossfilterDimensionIndex,et=at.dim1.crossfilterDimensionIndex,lt=at.canvasX,Me=at.canvasY,ge=lt+at.panelSizeX,ce=at.plotGlPixelRatio;if(j||!ue[it]||ue[it][0]!==lt||ue[it][1]!==ge){ue[it]=[lt,ge];var ze=E(B,be,Ae,fe,it,et,lt,Me,at.panelSizeX,at.panelSizeY,at.dim0.crossfilterDimensionIndex,u?0:y?2:1,Ze,ce);F.clearOnly=ee;var tt=j?B.lines.blockLineCount:N;s(f,se,F,tt,N,ze)}}}function J(ne,j){return f.read({x:ne,y:j,width:1,height:1,data:o}),o}function Z(ne,j,ee,ie){var fe=new Uint8Array(4*ee*ie);return f.read({x:ne,y:j,width:ee,height:ie,data:fe}),fe}function re(){b.style["pointer-events"]="none",Q.destroy(),W&&W.destroy();for(var ne in U)U[ne].destroy()}return{render:$,readPixel:J,readPixels:Z,destroy:re,update:he}}}}),FV=Ye({"src/traces/parcoords/parcoords.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.isArrayOrTypedArray,M=x.numberFormat,e=(DV(),Hf(vk)).default,t=Co(),r=x.strRotate,o=x.strTranslate,a=jl(),i=Bo(),n=Su(),s=kv(),c=s.keyFun,h=s.repeat,v=s.unwrap,p=mk(),T=wx(),l=hk(),_=zV();function w(ue,se,he){return x.aggNums(ue,null,se,he)}function S(ue,se){return m(w(Math.min,ue,se),w(Math.max,ue,se))}function E(ue){var se=ue.range;return se?m(se[0],se[1]):S(ue.values,ue._length)}function m(ue,se){return(isNaN(ue)||!isFinite(ue))&&(ue=0),(isNaN(se)||!isFinite(se))&&(se=0),ue===se&&(ue===0?(ue-=1,se+=1):(ue*=.9,se*=1.1)),[ue,se]}function b(ue,se){return se?function(he,G){var $=se[G];return $??ue(he)}:ue}function d(ue,se,he,G,$){var J=E(he);return G?g.scale.ordinal().domain(G.map(b(M(he.tickformat),$))).range(G.map(function(Z){var re=(Z-J[0])/(J[1]-J[0]);return ue-se+re*(2*se-ue)})):g.scale.linear().domain(J).range([ue-se,se])}function u(ue,se){return g.scale.linear().range([se,ue-se])}function y(ue,se){return g.scale.linear().domain(E(ue)).range([se,1-se])}function f(ue){if(ue.tickvals){var se=E(ue);return g.scale.ordinal().domain(ue.tickvals).range(ue.tickvals.map(function(he){return(he-se[0])/(se[1]-se[0])}))}}function P(ue){var se=ue.map(function(J){return J[0]}),he=ue.map(function(J){var Z=e(J[1]);return g.rgb("rgb("+Z[0]+","+Z[1]+","+Z[2]+")")}),G=function(J){return function(Z){return Z[J]}},$="rgb".split("").map(function(J){return g.scale.linear().clamp(!0).domain(se).range(he.map(G(J)))});return function(J){return $.map(function(Z){return Z(J)})}}function L(ue){return ue.dimensions.some(function(se){return se.brush.filterSpecified})}function z(ue,se,he){var G=v(se),$=G.trace,J=p.convertTypedArray(G.lineColor),Z=$.line,re={color:e($.unselected.line.color),opacity:$.unselected.line.opacity},ne=n.extractOpts(Z),j=ne.reversescale?n.flipScale(G.cscale):G.cscale,ee=$.domain,ie=$.dimensions,fe=ue.width,be=$.labelangle,Ae=$.labelside,Be=$.labelfont,Ie=$.tickfont,Ze=$.rangefont,at=x.extendDeepNoArrays({},Z,{color:J.map(g.scale.linear().domain(E({values:J,range:[ne.min,ne.max],_length:$._length}))),blockLineCount:T.blockLineCount,canvasOverdrag:T.overdrag*T.canvasPixelRatio}),it=Math.floor(fe*(ee.x[1]-ee.x[0])),et=Math.floor(ue.height*(ee.y[1]-ee.y[0])),lt=ue.margin||{l:80,r:80,t:100,b:80},Me=it,ge=et;return{key:he,colCount:ie.filter(p.isVisible).length,dimensions:ie,tickDistance:T.tickDistance,unitToColor:P(j),lines:at,deselectedLines:re,labelAngle:be,labelSide:Ae,labelFont:Be,tickFont:Ie,rangeFont:Ze,layoutWidth:fe,layoutHeight:ue.height,domain:ee,translateX:ee.x[0]*fe,translateY:ue.height-ee.y[1]*ue.height,pad:lt,canvasWidth:Me*T.canvasPixelRatio+2*at.canvasOverdrag,canvasHeight:ge*T.canvasPixelRatio,width:Me,height:ge,canvasPixelRatio:T.canvasPixelRatio}}function F(ue,se,he){var G=he.width,$=he.height,J=he.dimensions,Z=he.canvasPixelRatio,re=function(fe){return G*fe/Math.max(1,he.colCount-1)},ne=T.verticalPadding/$,j=u($,T.verticalPadding),ee={key:he.key,xScale:re,model:he,inBrushDrag:!1},ie={};return ee.dimensions=J.filter(p.isVisible).map(function(fe,be){var Ae=y(fe,ne),Be=ie[fe.label];ie[fe.label]=(Be||0)+1;var Ie=fe.label+(Be?"__"+Be:""),Ze=fe.constraintrange,at=Ze&&Ze.length;at&&!A(Ze[0])&&(Ze=[Ze]);var it=at?Ze.map(function(Ct){return Ct.map(Ae)}):[[-1/0,1/0]],et=function(){var Ct=ee;Ct.focusLayer&&Ct.focusLayer.render(Ct.panels,!0);var St=L(Ct);!ue.contextShown()&&St?(Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!0),ue.contextShown(!0)):ue.contextShown()&&!St&&(Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!0,!0),ue.contextShown(!1))},lt=fe.values;lt.length>fe._length&&(lt=lt.slice(0,fe._length));var Me=fe.tickvals,ge;function ce(Ct,St){return{val:Ct,text:ge[St]}}function ze(Ct,St){return Ct.val-St.val}if(A(Me)&&Me.length){x.isTypedArray(Me)&&(Me=Array.from(Me)),ge=fe.ticktext,!A(ge)||!ge.length?ge=Me.map(M(fe.tickformat)):ge.length>Me.length?ge=ge.slice(0,Me.length):Me.length>ge.length&&(Me=Me.slice(0,ge.length));for(var tt=1;tt<Me.length;tt++)if(Me[tt]<Me[tt-1]){for(var nt=Me.map(ce).sort(ze),Qe=0;Qe<Me.length;Qe++)Me[Qe]=nt[Qe].val,ge[Qe]=nt[Qe].text;break}}else Me=void 0;return lt=p.convertTypedArray(lt),{key:Ie,label:fe.label,tickFormat:fe.tickformat,tickvals:Me,ticktext:ge,ordinal:p.isOrdinal(fe),multiselect:fe.multiselect,xIndex:be,crossfilterDimensionIndex:be,visibleIndex:fe._index,height:$,values:lt,paddedUnitValues:lt.map(Ae),unitTickvals:Me&&Me.map(Ae),xScale:re,x:re(be),canvasX:re(be)*Z,unitToPaddedPx:j,domainScale:d($,T.verticalPadding,fe,Me,ge),ordinalScale:f(fe),parent:ee,model:he,brush:l.makeBrush(ue,at,it,function(){ue.linePickActive(!1)},et,function(Ct){if(ee.focusLayer.render(ee.panels,!0),ee.pickLayer&&ee.pickLayer.render(ee.panels,!0),ue.linePickActive(!0),se&&se.filterChanged){var St=Ae.invert,Ot=Ct.map(function(jt){return jt.map(St).sort(x.sorterAsc)}).sort(function(jt,ur){return jt[0]-ur[0]});se.filterChanged(ee.key,fe._index,Ot)}})}}),ee}function B(ue){ue.classed(T.cn.axisExtentText,!0).attr("text-anchor","middle").style("cursor","default")}function O(){var ue=!0,se=!1;return{linePickActive:function(he){return arguments.length?ue=!!he:ue},contextShown:function(he){return arguments.length?se=!!he:se}}}function I(ue,se){var he=se==="top"?1:-1,G=ue*Math.PI/180,$=Math.sin(G),J=Math.cos(G);return{dir:he,dx:$,dy:J,degrees:ue}}function N(ue,se,he){for(var G=se.panels||(se.panels=[]),$=ue.data(),J=0;J<$.length-1;J++){var Z=G[J]||(G[J]={}),re=$[J],ne=$[J+1];Z.dim0=re,Z.dim1=ne,Z.canvasX=re.canvasX,Z.panelSizeX=ne.canvasX-re.canvasX,Z.panelSizeY=se.model.canvasHeight,Z.y=0,Z.canvasY=0,Z.plotGlPixelRatio=he}}function U(ue){for(var se=0;se<ue.length;se++)for(var he=0;he<ue[se].length;he++)for(var G=ue[se][he].trace,$=G.dimensions,J=0;J<$.length;J++){var Z=$[J].values,re=$[J]._ax;re&&(re.range?re.range=m(re.range[0],re.range[1]):re.range=S(Z,G._length),re.dtick||(re.dtick=.01*(Math.abs(re.range[1]-re.range[0])||1)),re.tickformat=$[J].tickformat,t.calcTicks(re),re.cleanRange())}}function W(ue,se){return t.tickText(ue._ax,se,!1).text}function Q(ue,se){if(ue.ordinal)return"";var he=ue.domainScale.domain(),G=he[se?he.length-1:0];return W(ue.model.dimensions[ue.visibleIndex],G)}H.exports=function(se,he,G,$){var J=se._context.staticPlot,Z=se._fullLayout,re=Z._toppaper,ne=Z._glcontainer,j=se._context.plotGlPixelRatio,ee=se._fullLayout.paper_bgcolor;U(he);var ie=O(),fe=he.filter(function(Qe){return v(Qe).trace.visible}).map(z.bind(0,G)).map(F.bind(0,ie,$));ne.each(function(Qe,Ct){return x.extendFlat(Qe,fe[Ct])});var be=ne.selectAll(".gl-canvas").each(function(Qe){Qe.viewModel=fe[0],Qe.viewModel.plotGlPixelRatio=j,Qe.viewModel.paperColor=ee,Qe.model=Qe.viewModel?Qe.viewModel.model:null}),Ae=null,Be=be.filter(function(Qe){return Qe.pick});Be.style("pointer-events",J?"none":"auto").on("mousemove",function(Qe){if(ie.linePickActive()&&Qe.lineLayer&&$&&$.hover){var Ct=g.event,St=this.width,Ot=this.height,jt=g.mouse(this),ur=jt[0],ar=jt[1];if(ur<0||ar<0||ur>=St||ar>=Ot)return;var Cr=Qe.lineLayer.readPixel(ur,Ot-1-ar),vr=Cr[3]!==0,_r=vr?Cr[2]+256*(Cr[1]+256*Cr[0]):null,yt={x:ur,y:ar,clientX:Ct.clientX,clientY:Ct.clientY,dataIndex:Qe.model.key,curveNumber:_r};_r!==Ae&&(vr?$.hover(yt):$.unhover&&$.unhover(yt),Ae=_r)}}),be.style("opacity",function(Qe){return Qe.pick?0:1}),re.style("background","rgba(255, 255, 255, 0)");var Ie=re.selectAll("."+T.cn.parcoords).data(fe,c);Ie.exit().remove(),Ie.enter().append("g").classed(T.cn.parcoords,!0).style("shape-rendering","crispEdges").style("pointer-events","none"),Ie.attr("transform",function(Qe){return o(Qe.model.translateX,Qe.model.translateY)});var Ze=Ie.selectAll("."+T.cn.parcoordsControlView).data(h,c);Ze.enter().append("g").classed(T.cn.parcoordsControlView,!0),Ze.attr("transform",function(Qe){return o(Qe.model.pad.l,Qe.model.pad.t)});var at=Ze.selectAll("."+T.cn.yAxis).data(function(Qe){return Qe.dimensions},c);at.enter().append("g").classed(T.cn.yAxis,!0),Ze.each(function(Qe){N(at,Qe,j)}),be.each(function(Qe){if(Qe.viewModel){!Qe.lineLayer||$?Qe.lineLayer=_(this,Qe):Qe.lineLayer.update(Qe),(Qe.key||Qe.key===0)&&(Qe.viewModel[Qe.key]=Qe.lineLayer);var Ct=!Qe.context||$;Qe.lineLayer.render(Qe.viewModel.panels,Ct)}}),at.attr("transform",function(Qe){return o(Qe.xScale(Qe.xIndex),0)}),at.call(g.behavior.drag().origin(function(Qe){return Qe}).on("drag",function(Qe){var Ct=Qe.parent;ie.linePickActive(!1),Qe.x=Math.max(-T.overdrag,Math.min(Qe.model.width+T.overdrag,g.event.x)),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,at.sort(function(St,Ot){return St.x-Ot.x}).each(function(St,Ot){St.xIndex=Ot,St.x=Qe===St?St.x:St.xScale(St.xIndex),St.canvasX=St.x*St.model.canvasPixelRatio}),N(at,Ct,j),at.filter(function(St){return Math.abs(Qe.xIndex-St.xIndex)!==0}).attr("transform",function(St){return o(St.xScale(St.xIndex),0)}),g.select(this).attr("transform",o(Qe.x,0)),at.each(function(St,Ot,jt){jt===Qe.parent.key&&(Ct.dimensions[Ot]=St)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer.render&&Ct.focusLayer.render(Ct.panels)}).on("dragend",function(Qe){var Ct=Qe.parent;Qe.x=Qe.xScale(Qe.xIndex),Qe.canvasX=Qe.x*Qe.model.canvasPixelRatio,N(at,Ct,j),g.select(this).attr("transform",function(St){return o(St.x,0)}),Ct.contextLayer&&Ct.contextLayer.render(Ct.panels,!1,!L(Ct)),Ct.focusLayer&&Ct.focusLayer.render(Ct.panels),Ct.pickLayer&&Ct.pickLayer.render(Ct.panels,!0),ie.linePickActive(!0),$&&$.axesMoved&&$.axesMoved(Ct.key,Ct.dimensions.map(function(St){return St.crossfilterDimensionIndex}))})),at.exit().remove();var it=at.selectAll("."+T.cn.axisOverlays).data(h,c);it.enter().append("g").classed(T.cn.axisOverlays,!0),it.selectAll("."+T.cn.axis).remove();var et=it.selectAll("."+T.cn.axis).data(h,c);et.enter().append("g").classed(T.cn.axis,!0),et.each(function(Qe){var Ct=Qe.model.height/Qe.model.tickDistance,St=Qe.domainScale,Ot=St.domain();g.select(this).call(g.svg.axis().orient("left").tickSize(4).outerTickSize(2).ticks(Ct,Qe.tickFormat).tickValues(Qe.ordinal?Ot:null).tickFormat(function(jt){return p.isOrdinal(Qe)?jt:W(Qe.model.dimensions[Qe.visibleIndex],jt)}).scale(St)),i.font(et.selectAll("text"),Qe.model.tickFont)}),et.selectAll(".domain, .tick>line").attr("fill","none").attr("stroke","black").attr("stroke-opacity",.25).attr("stroke-width","1px"),et.selectAll("text").style("cursor","default");var lt=it.selectAll("."+T.cn.axisHeading).data(h,c);lt.enter().append("g").classed(T.cn.axisHeading,!0);var Me=lt.selectAll("."+T.cn.axisTitle).data(h,c);Me.enter().append("text").classed(T.cn.axisTitle,!0).attr("text-anchor","middle").style("cursor","ew-resize").style("pointer-events",J?"none":"auto"),Me.text(function(Qe){return Qe.label}).each(function(Qe){var Ct=g.select(this);i.font(Ct,Qe.model.labelFont),a.convertToTspans(Ct,se)}).attr("transform",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=T.axisTitleOffset;return(Ct.dir>0?"":o(0,2*St+Qe.model.height))+r(Ct.degrees)+o(-St*Ct.dx,-St*Ct.dy)}).attr("text-anchor",function(Qe){var Ct=I(Qe.model.labelAngle,Qe.model.labelSide),St=Math.abs(Ct.dx),Ot=Math.abs(Ct.dy);return 2*St>Ot?Ct.dir*Ct.dx<0?"start":"end":"middle"});var ge=it.selectAll("."+T.cn.axisExtent).data(h,c);ge.enter().append("g").classed(T.cn.axisExtent,!0);var ce=ge.selectAll("."+T.cn.axisExtentTop).data(h,c);ce.enter().append("g").classed(T.cn.axisExtentTop,!0),ce.attr("transform",o(0,-T.axisExtentOffset));var ze=ce.selectAll("."+T.cn.axisExtentTopText).data(h,c);ze.enter().append("text").classed(T.cn.axisExtentTopText,!0).call(B),ze.text(function(Qe){return Q(Qe,!0)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)});var tt=ge.selectAll("."+T.cn.axisExtentBottom).data(h,c);tt.enter().append("g").classed(T.cn.axisExtentBottom,!0),tt.attr("transform",function(Qe){return o(0,Qe.model.height+T.axisExtentOffset)});var nt=tt.selectAll("."+T.cn.axisExtentBottomText).data(h,c);nt.enter().append("text").classed(T.cn.axisExtentBottomText,!0).attr("dy","0.75em").call(B),nt.text(function(Qe){return Q(Qe,!1)}).each(function(Qe){i.font(g.select(this),Qe.model.rangeFont)}),l.ensureAxisBrush(it,ee,se)}}}),gk=Ye({"src/traces/parcoords/plot.js"(r,H){"use strict";var g=FV(),x=_T(),A=mk().isVisible,M={};function e(o,a,i){var n=a.indexOf(i),s=o.indexOf(n);return s===-1&&(s+=a.length),s}function t(o,a){return function(n,s){return e(o,a,n)-e(o,a,s)}}var r=H.exports=function(a,i){var n=a._fullLayout,s=x(a,[],M);if(s){var c={},h={},v={},p={},T=n._size;i.forEach(function(E,m){var b=E[0].trace;v[m]=b.index;var d=p[m]=b.index;c[m]=a.data[d].dimensions,h[m]=a.data[d].dimensions.slice()});var l=function(E,m,b){var d=h[E][m],u=b.map(function(F){return F.slice()}),y="dimensions["+m+"].constraintrange",f=n._tracePreGUI[a._fullData[v[E]]._fullInput.uid];if(f[y]===void 0){var P=d.constraintrange;f[y]=P||null}var L=a._fullData[v[E]].dimensions[m];u.length?(u.length===1&&(u=u[0]),d.constraintrange=u,L.constraintrange=u.slice(),u=[u]):(delete d.constraintrange,delete L.constraintrange,u=null);var z={};z[y]=u,a.emit("plotly_restyle",[z,[p[E]]])},_=function(E){a.emit("plotly_hover",E)},w=function(E){a.emit("plotly_unhover",E)},S=function(E,m){var b=t(m,h[E].filter(A));c[E].sort(b),h[E].filter(function(d){return!A(d)}).sort(function(d){return h[E].indexOf(d)}).forEach(function(d){c[E].splice(c[E].indexOf(d),1),c[E].splice(h[E].indexOf(d),0,d)}),a.emit("plotly_restyle",[{dimensions:[c[E]]},[p[E]]])};g(a,i,{width:T.w,height:T.h,margin:{t:T.t,r:T.r,b:T.b,l:T.l}},{filterChanged:l,hover:_,unhover:w,axesMoved:S})}};r.reglPrecompiled=M}}),OV=Ye({"src/traces/parcoords/base_plot.js"(X){"use strict";var H=_n(),g=jh().getModuleCalcData,x=gk(),A=vd();X.name="parcoords",X.plot=function(M){var e=g(M.calcdata,"parcoords")[0];e.length&&x(M,e)},X.clean=function(M,e,t,r){var o=r._has&&r._has("parcoords"),a=e._has&&e._has("parcoords");o&&!a&&(r._paperdiv.selectAll(".parcoords").remove(),r._glimages.selectAll("*").remove())},X.toSVG=function(M){var e=M._fullLayout._glimages,t=H.select(M).selectAll(".svg-container"),r=t.filter(function(a,i){return i===t.size()-1}).selectAll(".gl-canvas-context, .gl-canvas-focus");function o(){var a=this,i=a.toDataURL("image/png"),n=e.append("svg:image");n.attr({xmlns:A.svg,"xlink:href":i,preserveAspectRatio:"none",x:0,y:0,width:a.style.width,height:a.style.height})}r.each(o),window.setTimeout(function(){H.selectAll("#filterBarPattern").attr("id","filterBarPattern")},60)}}}),BV=Ye({"src/traces/parcoords/base_index.js"(X,H){"use strict";H.exports={attributes:fk(),supplyDefaults:kV(),calc:CV(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcoords",basePlotModule:OV(),categories:["gl","regl","noOpacity","noHover"],meta:{}}}}),NV=Ye({"src/traces/parcoords/index.js"(X,H){"use strict";var g=BV();g.plot=gk(),H.exports=g}}),UV=Ye({"lib/parcoords.js"(X,H){"use strict";H.exports=NV()}}),yk=Ye({"src/traces/parcats/attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=Pl(),A=Au(),M=tu(),e=xs().hovertemplateAttrs,t=Wu().attributes,r=g({editType:"calc"},M("line",{editTypeOverride:"calc"}),{shape:{valType:"enumerated",values:["linear","hspline"],dflt:"linear",editType:"plot"},hovertemplate:e({editType:"plot",arrayOk:!1},{keys:["count","probability"]})});H.exports={domain:t({name:"parcats",trace:!0,editType:"calc"}),hoverinfo:g({},x.hoverinfo,{flags:["count","probability"],editType:"plot",arrayOk:!1}),hoveron:{valType:"enumerated",values:["category","color","dimension"],dflt:"category",editType:"plot"},hovertemplate:e({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:A({editType:"calc"}),tickfont:A({autoShadowDflt:!0,editType:"calc"}),dimensions:{_isLinkedToArray:"dimension",label:{valType:"string",editType:"calc"},categoryorder:{valType:"enumerated",values:["trace","category ascending","category descending","array"],dflt:"trace",editType:"calc"},categoryarray:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},values:{valType:"data_array",dflt:[],editType:"calc"},displayindex:{valType:"integer",editType:"calc"},editType:"calc",visible:{valType:"boolean",dflt:!0,editType:"calc"}},line:r,counts:{valType:"number",min:0,dflt:1,arrayOk:!0,editType:"calc"},customdata:void 0,hoverlabel:void 0,ids:void 0,legend:void 0,legendgroup:void 0,legendrank:void 0,opacity:void 0,selectedpoints:void 0,showlegend:void 0}}}),jV=Ye({"src/traces/parcats/defaults.js"(X,H){"use strict";var g=ta(),x=Up().hasColorscale,A=sh(),M=Wu().defaults,e=up(),t=yk(),r=xT(),o=xp().isTypedArraySpec;function a(n,s,c,h,v){v("line.shape"),v("line.hovertemplate");var p=v("line.color",h.colorway[0]);if(x(n,"line")&&g.isArrayOrTypedArray(p)){if(p.length)return v("line.colorscale"),A(n,s,h,v,{prefix:"line.",cLetter:"c"}),p.length;s.line.color=c}return 1/0}function i(n,s){function c(w,S){return g.coerce(n,s,t.dimensions,w,S)}var h=c("values"),v=c("visible");if(h&&h.length||(v=s.visible=!1),v){c("label"),c("displayindex",s._index);var p=n.categoryarray,T=g.isArrayOrTypedArray(p)&&p.length>0||o(p),l;T&&(l="array");var _=c("categoryorder",l);_==="array"?(c("categoryarray"),c("ticktext")):(delete n.categoryarray,delete n.ticktext),!T&&_==="array"&&(s.categoryorder="trace")}}H.exports=function(s,c,h,v){function p(w,S){return g.coerce(s,c,t,w,S)}var T=e(s,c,{name:"dimensions",handleItemDefaults:i}),l=a(s,c,h,v,p);M(c,v,p),(!Array.isArray(T)||!T.length)&&(c.visible=!1),r(c,T,"values",l),p("hoveron"),p("hovertemplate"),p("arrangement"),p("bundlecolors"),p("sortpaths"),p("counts");var _=v.font;g.coerceFont(p,"labelfont",_,{overrideDflt:{size:Math.round(_.size)}}),g.coerceFont(p,"tickfont",_,{autoShadowDflt:!0,overrideDflt:{size:Math.round(_.size/1.2)}})}}}),VV=Ye({"src/traces/parcats/calc.js"(X,H){"use strict";var g=kv().wrap,x=Up().hasColorscale,A=jp(),M=tS(),e=Bo(),t=ta(),r=jo();H.exports=function(_,w){var S=t.filterVisible(w.dimensions);if(S.length===0)return[];var E=S.map(function(G){var $;if(G.categoryorder==="trace")$=null;else if(G.categoryorder==="array")$=G.categoryarray;else{$=M(G.values);for(var J=!0,Z=0;Z<$.length;Z++)if(!r($[Z])){J=!1;break}$.sort(J?t.sorterAsc:void 0),G.categoryorder==="category descending"&&($=$.reverse())}return h(G.values,$)}),m,b,d;t.isArrayOrTypedArray(w.counts)?m=w.counts:m=[w.counts],v(S),S.forEach(function(G,$){p(G,E[$])});var u=w.line,y;u?(x(w,"line")&&A(_,w,{vals:w.line.color,containerStr:"line",cLetter:"c"}),y=e.tryColorscale(u)):y=t.identity;function f(G){var $,J;return t.isArrayOrTypedArray(u.color)?($=u.color[G%u.color.length],J=$):$=u.color,{color:y($),rawColor:J}}var P=S[0].values.length,L={},z=E.map(function(G){return G.inds});d=0;var F,B;for(F=0;F<P;F++){var O=[];for(B=0;B<z.length;B++)O.push(z[B][F]);b=m[F%m.length],d+=b;var I=f(F),N=O+"-"+I.rawColor;L[N]===void 0&&(L[N]=s(O,I.color,I.rawColor)),c(L[N],F,b)}var U=S.map(function(G,$){return a($,G._index,G._displayindex,G.label,d)});for(F=0;F<P;F++)for(b=m[F%m.length],B=0;B<U.length;B++){var W=U[B].containerInd,Q=E[B].inds[F],ue=U[B].categories;if(ue[Q]===void 0){var se=w.dimensions[W]._categoryarray[Q],he=w.dimensions[W]._ticktext[Q];ue[Q]=i(B,Q,se,he)}n(ue[Q],F,b)}return g(o(U,L,d))};function o(l,_,w){var S=l.map(function(E){return E.categories.length}).reduce(function(E,m){return Math.max(E,m)});return{dimensions:l,paths:_,trace:void 0,maxCats:S,count:w}}function a(l,_,w,S,E){return{dimensionInd:l,containerInd:_,displayInd:w,dimensionLabel:S,count:E,categories:[],dragX:null}}function i(l,_,w,S){return{dimensionInd:l,categoryInd:_,categoryValue:w,displayInd:_,categoryLabel:S,valueInds:[],count:0,dragY:null}}function n(l,_,w){l.valueInds.push(_),l.count+=w}function s(l,_,w){return{categoryInds:l,color:_,rawColor:w,valueInds:[],count:0}}function c(l,_,w){l.valueInds.push(_),l.count+=w}function h(l,_){_==null?_=[]:_=_.map(function(y){return y});var w={},S={},E=[];_.forEach(function(y,f){w[y]=0,S[y]=f});for(var m=0;m<l.length;m++){var b=l[m],d;w[b]===void 0?(w[b]=1,d=_.push(b)-1,S[b]=d):(w[b]++,d=S[b]),E.push(d)}var u=_.map(function(y){return w[y]});return{uniqueValues:_,uniqueCounts:u,inds:E}}function v(l){var _=l.map(function(S){return S.displayindex}),w;if(T(_))for(w=0;w<l.length;w++)l[w]._displayindex=l[w].displayindex;else for(w=0;w<l.length;w++)l[w]._displayindex=w}function p(l,_){l._categoryarray=_.uniqueValues,l.ticktext===null||l.ticktext===void 0?l._ticktext=[]:l._ticktext=l.ticktext.slice();for(var w=l._ticktext.length;w<_.uniqueValues.length;w++)l._ticktext.push(_.uniqueValues[w])}function T(l){for(var _=new Array(l.length),w=0;w<l.length;w++){if(l[w]<0||l[w]>=l.length||_[l[w]]!==void 0)return!1;_[l[w]]=!0}return!0}}}),qV=Ye({"src/traces/parcats/parcats.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolateNumber,A=E2(),M=Lc(),e=ta(),t=e.strTranslate,r=Bo(),o=bh(),a=jl();function i(Z,re,ne,j){var ee=re._context.staticPlot,ie=Z.map(se.bind(0,re,ne)),fe=j.selectAll("g.parcatslayer").data([null]);fe.enter().append("g").attr("class","parcatslayer").style("pointer-events",ee?"none":"all");var be=fe.selectAll("g.trace.parcats").data(ie,n),Ae=be.enter().append("g").attr("class","trace parcats");be.attr("transform",function(ce){return t(ce.x,ce.y)}),Ae.append("g").attr("class","paths");var Be=be.select("g.paths"),Ie=Be.selectAll("path.path").data(function(ce){return ce.paths},n);Ie.attr("fill",function(ce){return ce.model.color});var Ze=Ie.enter().append("path").attr("class","path").attr("stroke-opacity",0).attr("fill",function(ce){return ce.model.color}).attr("fill-opacity",0);_(Ze),Ie.attr("d",function(ce){return ce.svgD}),Ze.empty()||Ie.sort(c),Ie.exit().remove(),Ie.on("mouseover",h).on("mouseout",v).on("click",l),Ae.append("g").attr("class","dimensions");var at=be.select("g.dimensions"),it=at.selectAll("g.dimension").data(function(ce){return ce.dimensions},n);it.enter().append("g").attr("class","dimension"),it.attr("transform",function(ce){return t(ce.x,0)}),it.exit().remove();var et=it.selectAll("g.category").data(function(ce){return ce.categories},n),lt=et.enter().append("g").attr("class","category");et.attr("transform",function(ce){return t(0,ce.y)}),lt.append("rect").attr("class","catrect").attr("pointer-events","none"),et.select("rect.catrect").attr("fill","none").attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}),E(lt);var Me=et.selectAll("rect.bandrect").data(function(ce){return ce.bands},n);Me.each(function(){e.raiseToTop(this)}),Me.attr("fill",function(ce){return ce.color});var ge=Me.enter().append("rect").attr("class","bandrect").attr("stroke-opacity",0).attr("fill",function(ce){return ce.color}).attr("fill-opacity",0);Me.attr("fill",function(ce){return ce.color}).attr("width",function(ce){return ce.width}).attr("height",function(ce){return ce.height}).attr("y",function(ce){return ce.y}).attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":ce.parcatsViewModel.arrangement==="perpendicular"?"ns-resize":"move"}),b(ge),Me.exit().remove(),lt.append("text").attr("class","catlabel").attr("pointer-events","none"),et.select("text.catlabel").attr("text-anchor",function(ce){return s(ce)?"start":"end"}).attr("alignment-baseline","middle").style("fill","rgb(0, 0, 0)").attr("x",function(ce){return s(ce)?ce.width+5:-5}).attr("y",function(ce){return ce.height/2}).text(function(ce){return ce.model.categoryLabel}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.categorylabelfont),a.convertToTspans(g.select(this),re)}),lt.append("text").attr("class","dimlabel"),et.select("text.dimlabel").attr("text-anchor","middle").attr("alignment-baseline","baseline").attr("cursor",function(ce){return ce.parcatsViewModel.arrangement==="fixed"?"default":"ew-resize"}).attr("x",function(ce){return ce.width/2}).attr("y",-5).text(function(ce,ze){return ze===0?ce.parcatsViewModel.model.dimensions[ce.model.dimensionInd].dimensionLabel:null}).each(function(ce){r.font(g.select(this),ce.parcatsViewModel.labelfont)}),et.selectAll("rect.bandrect").on("mouseover",B).on("mouseout",O),et.exit().remove(),it.call(g.behavior.drag().origin(function(ce){return{x:ce.x,y:0}}).on("dragstart",I).on("drag",N).on("dragend",U)),be.each(function(ce){ce.traceSelection=g.select(this),ce.pathSelection=g.select(this).selectAll("g.paths").selectAll("path.path"),ce.dimensionSelection=g.select(this).selectAll("g.dimensions").selectAll("g.dimension")}),be.exit().remove()}H.exports=function(Z,re,ne,j){i(ne,Z,j,re)};function n(Z){return Z.key}function s(Z){var re=Z.parcatsViewModel.dimensions.length,ne=Z.parcatsViewModel.dimensions[re-1].model.dimensionInd;return Z.model.dimensionInd===ne}function c(Z,re){return Z.model.rawColor>re.model.rawColor?1:Z.model.rawColor<re.model.rawColor?-1:0}function h(Z){if(!Z.parcatsViewModel.dragDimension&&Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){e.raiseToTop(this),w(g.select(this));var re=p(Z),ne=T(Z);if(Z.parcatsViewModel.graphDiv.emit("plotly_hover",{points:re,event:g.event,constraints:ne}),Z.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var j=g.mouse(this)[0],ee=Z.parcatsViewModel.graphDiv,ie=Z.parcatsViewModel.trace,fe=ee._fullLayout,be=fe._paperdiv.node().getBoundingClientRect(),Ae=Z.parcatsViewModel.graphDiv.getBoundingClientRect(),Be,Ie,Ze;for(Ze=0;Ze<Z.leftXs.length-1;Ze++)if(Z.leftXs[Ze]+Z.dimWidths[Ze]-2<=j&&j<=Z.leftXs[Ze+1]+2){var at=Z.parcatsViewModel.dimensions[Ze],it=Z.parcatsViewModel.dimensions[Ze+1];Be=(at.x+at.width+it.x)/2,Ie=(Z.topYs[Ze]+Z.topYs[Ze+1]+Z.height)/2;break}var et=Z.parcatsViewModel.x+Be,lt=Z.parcatsViewModel.y+Ie,Me=o.mostReadable(Z.model.color,["black","white"]),ge=Z.model.count,ce=ge/Z.parcatsViewModel.model.count,ze={countLabel:ge,probabilityLabel:ce.toFixed(3)},tt=[];Z.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&tt.push(["Count:",ze.countLabel].join(" ")),Z.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&tt.push(["P:",ze.probabilityLabel].join(" "));var nt=tt.join("<br>"),Qe=g.mouse(ee)[0];M.loneHover({trace:ie,x:et-be.left+Ae.left,y:lt-be.top+Ae.top,text:nt,color:Z.model.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:10,fontColor:Me,idealAlign:Qe<et?"right":"left",hovertemplate:(ie.line||{}).hovertemplate,hovertemplateLabels:ze,eventData:[{data:ie._input,fullData:ie,count:ge,probability:ce}]},{container:fe._hoverlayer.node(),outerContainer:fe._paper.node(),gd:ee})}}}function v(Z){if(!Z.parcatsViewModel.dragDimension&&(_(g.select(this)),M.loneUnhover(Z.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()),Z.parcatsViewModel.pathSelection.sort(c),Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1)){var re=p(Z),ne=T(Z);Z.parcatsViewModel.graphDiv.emit("plotly_unhover",{points:re,event:g.event,constraints:ne})}}function p(Z){for(var re=[],ne=W(Z.parcatsViewModel),j=0;j<Z.model.valueInds.length;j++){var ee=Z.model.valueInds[j];re.push({curveNumber:ne,pointNumber:ee})}return re}function T(Z){for(var re={},ne=Z.parcatsViewModel.model.dimensions,j=0;j<ne.length;j++){var ee=ne[j],ie=ee.categories[Z.model.categoryInds[j]];re[ee.containerInd]=ie.categoryValue}return Z.model.rawColor!==void 0&&(re.color=Z.model.rawColor),re}function l(Z){if(Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=p(Z),ne=T(Z);Z.parcatsViewModel.graphDiv.emit("plotly_click",{points:re,event:g.event,constraints:ne})}}function _(Z){Z.attr("fill",function(re){return re.model.color}).attr("fill-opacity",.6).attr("stroke","lightgray").attr("stroke-width",.2).attr("stroke-opacity",1)}function w(Z){Z.attr("fill-opacity",.8).attr("stroke",function(re){return o.mostReadable(re.model.color,["black","white"])}).attr("stroke-width",.3)}function S(Z){Z.select("rect.catrect").attr("stroke","black").attr("stroke-width",2.5)}function E(Z){Z.select("rect.catrect").attr("stroke","black").attr("stroke-width",1).attr("stroke-opacity",1)}function m(Z){Z.attr("stroke","black").attr("stroke-width",1.5)}function b(Z){Z.attr("stroke","black").attr("stroke-width",.2).attr("stroke-opacity",1).attr("fill-opacity",1)}function d(Z){var re=Z.parcatsViewModel.pathSelection,ne=Z.categoryViewModel.model.dimensionInd,j=Z.categoryViewModel.model.categoryInd;return re.filter(function(ee){return ee.model.categoryInds[ne]===j&&ee.model.color===Z.color})}function u(Z){var re=g.select(Z.parentNode).selectAll("rect.bandrect");re.each(function(ne){var j=d(ne);w(j),j.each(function(){e.raiseToTop(this)})}),S(g.select(Z.parentNode))}function y(Z){var re=g.select(Z).datum(),ne=d(re);w(ne),ne.each(function(){e.raiseToTop(this)}),g.select(Z.parentNode).selectAll("rect.bandrect").filter(function(j){return j.color===re.color}).each(function(){e.raiseToTop(this),m(g.select(this))})}function f(Z,re,ne){var j=g.select(Z).datum(),ee=j.categoryViewModel.model,ie=j.parcatsViewModel.graphDiv,fe=g.select(Z.parentNode).selectAll("rect.bandrect"),be=[];fe.each(function(Be){var Ie=d(Be);Ie.each(function(Ze){Array.prototype.push.apply(be,p(Ze))})});var Ae={};Ae[ee.dimensionInd]=ee.categoryValue,ie.emit(re,{points:be,event:ne,constraints:Ae})}function P(Z,re,ne){var j=g.select(Z).datum(),ee=j.categoryViewModel.model,ie=j.parcatsViewModel.graphDiv,fe=d(j),be=[];fe.each(function(Be){Array.prototype.push.apply(be,p(Be))});var Ae={};Ae[ee.dimensionInd]=ee.categoryValue,j.rawColor!==void 0&&(Ae.color=j.rawColor),ie.emit(re,{points:be,event:ne,constraints:Ae})}function L(Z,re,ne){Z._fullLayout._calcInverseTransform(Z);var j=Z._fullLayout._invScaleX,ee=Z._fullLayout._invScaleY,ie=g.select(ne.parentNode).select("rect.catrect"),fe=ie.node().getBoundingClientRect(),be=ie.datum(),Ae=be.parcatsViewModel,Be=Ae.model.dimensions[be.model.dimensionInd],Ie=Ae.trace,Ze=fe.top+fe.height/2,at,it;Ae.dimensions.length>1&&Be.displayInd===Ae.dimensions.length-1?(at=fe.left,it="left"):(at=fe.left+fe.width,it="right");var et=be.model.count,lt=be.model.categoryLabel,Me=et/be.parcatsViewModel.model.count,ge={countLabel:et,categoryLabel:lt,probabilityLabel:Me.toFixed(3)},ce=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&ce.push(["Count:",ge.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&ce.push(["P("+ge.categoryLabel+"):",ge.probabilityLabel].join(" "));var ze=ce.join("<br>");return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:ze,color:"lightgray",borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontSize:12,fontColor:"black",idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:ge,eventData:[{data:Ie._input,fullData:Ie,count:et,category:lt,probability:Me}]}}function z(Z,re,ne){var j=[];return g.select(ne.parentNode.parentNode).selectAll("g.category").select("rect.catrect").each(function(){var ee=this;j.push(L(Z,re,ee))}),j}function F(Z,re,ne){Z._fullLayout._calcInverseTransform(Z);var j=Z._fullLayout._invScaleX,ee=Z._fullLayout._invScaleY,ie=ne.getBoundingClientRect(),fe=g.select(ne).datum(),be=fe.categoryViewModel,Ae=be.parcatsViewModel,Be=Ae.model.dimensions[be.model.dimensionInd],Ie=Ae.trace,Ze=ie.y+ie.height/2,at,it;Ae.dimensions.length>1&&Be.displayInd===Ae.dimensions.length-1?(at=ie.left,it="left"):(at=ie.left+ie.width,it="right");var et=be.model.categoryLabel,lt=fe.parcatsViewModel.model.count,Me=0;fe.categoryViewModel.bands.forEach(function(jt){jt.color===fe.color&&(Me+=jt.count)});var ge=be.model.count,ce=0;Ae.pathSelection.each(function(jt){jt.model.color===fe.color&&(ce+=jt.model.count)});var ze=Me/lt,tt=Me/ce,nt=Me/ge,Qe={countLabel:Me,categoryLabel:et,probabilityLabel:ze.toFixed(3)},Ct=[];be.parcatsViewModel.hoverinfoItems.indexOf("count")!==-1&&Ct.push(["Count:",Qe.countLabel].join(" ")),be.parcatsViewModel.hoverinfoItems.indexOf("probability")!==-1&&(Ct.push("P(color \u2229 "+et+"): "+Qe.probabilityLabel),Ct.push("P("+et+" | color): "+tt.toFixed(3)),Ct.push("P(color | "+et+"): "+nt.toFixed(3)));var St=Ct.join("<br>"),Ot=o.mostReadable(fe.color,["black","white"]);return{trace:Ie,x:j*(at-re.left),y:ee*(Ze-re.top),text:St,color:fe.color,borderColor:"black",fontFamily:'Monaco, "Courier New", monospace',fontColor:Ot,fontSize:10,idealAlign:it,hovertemplate:Ie.hovertemplate,hovertemplateLabels:Qe,eventData:[{data:Ie._input,fullData:Ie,category:et,count:lt,probability:ze,categorycount:ge,colorcount:ce,bandcolorcount:Me}]}}function B(Z){if(!Z.parcatsViewModel.dragDimension&&Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1){var re=g.mouse(this)[1];if(re<-1)return;var ne=Z.parcatsViewModel.graphDiv,j=ne._fullLayout,ee=j._paperdiv.node().getBoundingClientRect(),ie=Z.parcatsViewModel.hoveron,fe=this;if(ie==="color"?(y(fe),P(fe,"plotly_hover",g.event)):(u(fe),f(fe,"plotly_hover",g.event)),Z.parcatsViewModel.hoverinfoItems.indexOf("none")===-1){var be;ie==="category"?be=L(ne,ee,fe):ie==="color"?be=F(ne,ee,fe):ie==="dimension"&&(be=z(ne,ee,fe)),be&&M.loneHover(be,{container:j._hoverlayer.node(),outerContainer:j._paper.node(),gd:ne})}}}function O(Z){var re=Z.parcatsViewModel;if(!re.dragDimension&&(_(re.pathSelection),E(re.dimensionSelection.selectAll("g.category")),b(re.dimensionSelection.selectAll("g.category").selectAll("rect.bandrect")),M.loneUnhover(re.graphDiv._fullLayout._hoverlayer.node()),re.pathSelection.sort(c),re.hoverinfoItems.indexOf("skip")===-1)){var ne=Z.parcatsViewModel.hoveron,j=this;ne==="color"?P(j,"plotly_unhover",g.event):f(j,"plotly_unhover",g.event)}}function I(Z){Z.parcatsViewModel.arrangement!=="fixed"&&(Z.dragDimensionDisplayInd=Z.model.displayInd,Z.initialDragDimensionDisplayInds=Z.parcatsViewModel.model.dimensions.map(function(re){return re.displayInd}),Z.dragHasMoved=!1,Z.dragCategoryDisplayInd=null,g.select(this).selectAll("g.category").select("rect.catrect").each(function(re){var ne=g.mouse(this)[0],j=g.mouse(this)[1];-2<=ne&&ne<=re.width+2&&-2<=j&&j<=re.height+2&&(Z.dragCategoryDisplayInd=re.model.displayInd,Z.initialDragCategoryDisplayInds=Z.model.categories.map(function(ee){return ee.displayInd}),re.model.dragY=re.y,e.raiseToTop(this.parentNode),g.select(this.parentNode).selectAll("rect.bandrect").each(function(ee){ee.y<j&&j<=ee.y+ee.height&&(Z.potentialClickBand=this)}))}),Z.parcatsViewModel.dragDimension=Z,M.loneUnhover(Z.parcatsViewModel.graphDiv._fullLayout._hoverlayer.node()))}function N(Z){if(Z.parcatsViewModel.arrangement!=="fixed"&&(Z.dragHasMoved=!0,Z.dragDimensionDisplayInd!==null)){var re=Z.dragDimensionDisplayInd,ne=re-1,j=re+1,ee=Z.parcatsViewModel.dimensions[re];if(Z.dragCategoryDisplayInd!==null){var ie=ee.categories[Z.dragCategoryDisplayInd];ie.model.dragY+=g.event.dy;var fe=ie.model.dragY,be=ie.model.displayInd,Ae=ee.categories,Be=Ae[be-1],Ie=Ae[be+1];Be!==void 0&&fe<Be.y+Be.height/2&&(ie.model.displayInd=Be.model.displayInd,Be.model.displayInd=be),Ie!==void 0&&fe+ie.height>Ie.y+Ie.height/2&&(ie.model.displayInd=Ie.model.displayInd,Ie.model.displayInd=be),Z.dragCategoryDisplayInd=ie.model.displayInd}if(Z.dragCategoryDisplayInd===null||Z.parcatsViewModel.arrangement==="freeform"){ee.model.dragX=g.event.x;var Ze=Z.parcatsViewModel.dimensions[ne],at=Z.parcatsViewModel.dimensions[j];Ze!==void 0&&ee.model.dragX<Ze.x+Ze.width&&(ee.model.displayInd=Ze.model.displayInd,Ze.model.displayInd=re),at!==void 0&&ee.model.dragX+ee.width>at.x&&(ee.model.displayInd=at.model.displayInd,at.model.displayInd=Z.dragDimensionDisplayInd),Z.dragDimensionDisplayInd=ee.model.displayInd}$(Z.parcatsViewModel),G(Z.parcatsViewModel),ue(Z.parcatsViewModel),Q(Z.parcatsViewModel)}}function U(Z){if(Z.parcatsViewModel.arrangement!=="fixed"&&Z.dragDimensionDisplayInd!==null){g.select(this).selectAll("text").attr("font-weight","normal");var re={},ne=W(Z.parcatsViewModel),j=Z.parcatsViewModel.model.dimensions.map(function(at){return at.displayInd}),ee=Z.initialDragDimensionDisplayInds.some(function(at,it){return at!==j[it]});ee&&j.forEach(function(at,it){var et=Z.parcatsViewModel.model.dimensions[it].containerInd;re["dimensions["+et+"].displayindex"]=at});var ie=!1;if(Z.dragCategoryDisplayInd!==null){var fe=Z.model.categories.map(function(at){return at.displayInd});if(ie=Z.initialDragCategoryDisplayInds.some(function(at,it){return at!==fe[it]}),ie){var be=Z.model.categories.slice().sort(function(at,it){return at.displayInd-it.displayInd}),Ae=be.map(function(at){return at.categoryValue}),Be=be.map(function(at){return at.categoryLabel});re["dimensions["+Z.model.containerInd+"].categoryarray"]=[Ae],re["dimensions["+Z.model.containerInd+"].ticktext"]=[Be],re["dimensions["+Z.model.containerInd+"].categoryorder"]="array"}}if(Z.parcatsViewModel.hoverinfoItems.indexOf("skip")===-1&&!Z.dragHasMoved&&Z.potentialClickBand&&(Z.parcatsViewModel.hoveron==="color"?P(Z.potentialClickBand,"plotly_click",g.event.sourceEvent):f(Z.potentialClickBand,"plotly_click",g.event.sourceEvent)),Z.model.dragX=null,Z.dragCategoryDisplayInd!==null){var Ie=Z.parcatsViewModel.dimensions[Z.dragDimensionDisplayInd].categories[Z.dragCategoryDisplayInd];Ie.model.dragY=null,Z.dragCategoryDisplayInd=null}Z.dragDimensionDisplayInd=null,Z.parcatsViewModel.dragDimension=null,Z.dragHasMoved=null,Z.potentialClickBand=null,$(Z.parcatsViewModel),G(Z.parcatsViewModel);var Ze=g.transition().duration(300).ease("cubic-in-out");Ze.each(function(){ue(Z.parcatsViewModel,!0),Q(Z.parcatsViewModel,!0)}).each("end",function(){(ee||ie)&&A.restyle(Z.parcatsViewModel.graphDiv,re,[ne])})}}function W(Z){for(var re,ne=Z.graphDiv._fullData,j=0;j<ne.length;j++)if(Z.key===ne[j].uid){re=j;break}return re}function Q(Z,re){re===void 0&&(re=!1);function ne(j){return re?j.transition():j}Z.pathSelection.data(function(j){return j.paths},n),ne(Z.pathSelection).attr("d",function(j){return j.svgD})}function ue(Z,re){re===void 0&&(re=!1);function ne(Ae){return re?Ae.transition():Ae}Z.dimensionSelection.data(function(Ae){return Ae.dimensions},n);var j=Z.dimensionSelection.selectAll("g.category").data(function(Ae){return Ae.categories},n);ne(Z.dimensionSelection).attr("transform",function(Ae){return t(Ae.x,0)}),ne(j).attr("transform",function(Ae){return t(0,Ae.y)});var ee=j.select(".dimlabel");ee.text(function(Ae,Be){return Be===0?Ae.parcatsViewModel.model.dimensions[Ae.model.dimensionInd].dimensionLabel:null});var ie=j.select(".catlabel");ie.attr("text-anchor",function(Ae){return s(Ae)?"start":"end"}).attr("x",function(Ae){return s(Ae)?Ae.width+5:-5}).each(function(Ae){var Be,Ie;s(Ae)?(Be=Ae.width+5,Ie="start"):(Be=-5,Ie="end"),g.select(this).selectAll("tspan").attr("x",Be).attr("text-anchor",Ie)});var fe=j.selectAll("rect.bandrect").data(function(Ae){return Ae.bands},n),be=fe.enter().append("rect").attr("class","bandrect").attr("cursor","move").attr("stroke-opacity",0).attr("fill",function(Ae){return Ae.color}).attr("fill-opacity",0);fe.attr("fill",function(Ae){return Ae.color}).attr("width",function(Ae){return Ae.width}).attr("height",function(Ae){return Ae.height}).attr("y",function(Ae){return Ae.y}),b(be),fe.each(function(){e.raiseToTop(this)}),fe.exit().remove()}function se(Z,re,ne){var j=ne[0],ee=re.margin||{l:80,r:80,t:100,b:80},ie=j.trace,fe=ie.domain,be=re.width,Ae=re.height,Be=Math.floor(be*(fe.x[1]-fe.x[0])),Ie=Math.floor(Ae*(fe.y[1]-fe.y[0])),Ze=fe.x[0]*be+ee.l,at=re.height-fe.y[1]*re.height+ee.t,it=ie.line.shape,et;ie.hoverinfo==="all"?et=["count","probability"]:et=(ie.hoverinfo||"").split("+");var lt={trace:ie,key:ie.uid,model:j,x:Ze,y:at,width:Be,height:Ie,hoveron:ie.hoveron,hoverinfoItems:et,arrangement:ie.arrangement,bundlecolors:ie.bundlecolors,sortpaths:ie.sortpaths,labelfont:ie.labelfont,categorylabelfont:ie.tickfont,pathShape:it,dragDimension:null,margin:ee,paths:[],dimensions:[],graphDiv:Z,traceSelection:null,pathSelection:null,dimensionSelection:null};return j.dimensions&&($(lt),G(lt)),lt}function he(Z,re,ne,j,ee){var ie=[],fe=[],be,Ae;for(Ae=0;Ae<ne.length-1;Ae++)be=x(ne[Ae]+Z[Ae],Z[Ae+1]),ie.push(be(ee)),fe.push(be(1-ee));var Be="M "+Z[0]+","+re[0];for(Be+="l"+ne[0]+",0 ",Ae=1;Ae<ne.length;Ae++)Be+="C"+ie[Ae-1]+","+re[Ae-1]+" "+fe[Ae-1]+","+re[Ae]+" "+Z[Ae]+","+re[Ae],Be+="l"+ne[Ae]+",0 ";for(Be+="l0,"+j+" ",Be+="l -"+ne[ne.length-1]+",0 ",Ae=ne.length-2;Ae>=0;Ae--)Be+="C"+fe[Ae]+","+(re[Ae+1]+j)+" "+ie[Ae]+","+(re[Ae]+j)+" "+(Z[Ae]+ne[Ae])+","+(re[Ae]+j),Be+="l-"+ne[Ae]+",0 ";return Be+="Z",Be}function G(Z){var re=Z.dimensions,ne=Z.model,j=re.map(function(Cr){return Cr.categories.map(function(vr){return vr.y})}),ee=Z.model.dimensions.map(function(Cr){return Cr.categories.map(function(vr){return vr.displayInd})}),ie=Z.model.dimensions.map(function(Cr){return Cr.displayInd}),fe=Z.dimensions.map(function(Cr){return Cr.model.dimensionInd}),be=re.map(function(Cr){return Cr.x}),Ae=re.map(function(Cr){return Cr.width}),Be=[];for(var Ie in ne.paths)ne.paths.hasOwnProperty(Ie)&&Be.push(ne.paths[Ie]);function Ze(Cr){var vr=Cr.categoryInds.map(function(yt,Fe){return ee[Fe][yt]}),_r=fe.map(function(yt){return vr[yt]});return _r}Be.sort(function(Cr,vr){var _r=Ze(Cr),yt=Ze(vr);return Z.sortpaths==="backward"&&(_r.reverse(),yt.reverse()),_r.push(Cr.valueInds[0]),yt.push(vr.valueInds[0]),Z.bundlecolors&&(_r.unshift(Cr.rawColor),yt.unshift(vr.rawColor)),_r<yt?-1:_r>yt?1:0});for(var at=new Array(Be.length),it=re[0].model.count,et=re[0].categories.map(function(Cr){return Cr.height}).reduce(function(Cr,vr){return Cr+vr}),lt=0;lt<Be.length;lt++){var Me=Be[lt],ge;it>0?ge=et*(Me.count/it):ge=0;for(var ce=new Array(j.length),ze=0;ze<Me.categoryInds.length;ze++){var tt=Me.categoryInds[ze],nt=ee[ze][tt],Qe=ie[ze];ce[Qe]=j[Qe][nt],j[Qe][nt]+=ge;var Ct=Z.dimensions[Qe].categories[nt],St=Ct.bands.length,Ot=Ct.bands[St-1];if(Ot===void 0||Me.rawColor!==Ot.rawColor){var jt=Ot===void 0?0:Ot.y+Ot.height;Ct.bands.push({key:jt,color:Me.color,rawColor:Me.rawColor,height:ge,width:Ct.width,count:Me.count,y:jt,categoryViewModel:Ct,parcatsViewModel:Z})}else{var ur=Ct.bands[St-1];ur.height+=ge,ur.count+=Me.count}}var ar;Z.pathShape==="hspline"?ar=he(be,ce,Ae,ge,.5):ar=he(be,ce,Ae,ge,0),at[lt]={key:Me.valueInds[0],model:Me,height:ge,leftXs:be,topYs:ce,dimWidths:Ae,svgD:ar,parcatsViewModel:Z}}Z.paths=at}function $(Z){var re=Z.model.dimensions.map(function(fe){return{displayInd:fe.displayInd,dimensionInd:fe.dimensionInd}});re.sort(function(fe,be){return fe.displayInd-be.displayInd});var ne=[];for(var j in re){var ee=re[j].dimensionInd,ie=Z.model.dimensions[ee];ne.push(J(Z,ie))}Z.dimensions=ne}function J(Z,re){var ne=40,j=16,ee=Z.model.dimensions.length,ie=re.displayInd,fe,be,Ae;ee>1?fe=(Z.width-2*ne-j)/(ee-1):fe=0,be=ne,Ae=be+fe*ie;var Be=[],Ie=Z.model.maxCats,Ze=re.categories.length,at=8,it=re.count,et=Z.height-at*(Ie-1),lt,Me,ge,ce,ze,tt=(Ie-Ze)*at/2,nt=re.categories.map(function(Qe){return{displayInd:Qe.displayInd,categoryInd:Qe.categoryInd}});for(nt.sort(function(Qe,Ct){return Qe.displayInd-Ct.displayInd}),ze=0;ze<Ze;ze++)ce=nt[ze].categoryInd,Me=re.categories[ce],it>0?lt=Me.count/it*et:lt=0,ge={key:Me.valueInds[0],model:Me,width:j,height:lt,y:Me.dragY!==null?Me.dragY:tt,bands:[],parcatsViewModel:Z},tt=tt+lt+at,Be.push(ge);return{key:re.dimensionInd,x:re.dragX!==null?re.dragX:Ae,y:0,width:j,model:re,categories:Be,parcatsViewModel:Z,dragCategoryDisplayInd:null,dragDimensionDisplayInd:null,initialDragDimensionDisplayInds:null,initialDragCategoryDisplayInds:null,dragHasMoved:null,potentialClickBand:null}}}}),_k=Ye({"src/traces/parcats/plot.js"(X,H){"use strict";var g=qV();H.exports=function(A,M,e,t){var r=A._fullLayout,o=r._paper,a=r._size;g(A,o,M,{width:a.w,height:a.h,margin:{t:a.t,r:a.r,b:a.b,l:a.l}},e,t)}}}),HV=Ye({"src/traces/parcats/base_plot.js"(X){"use strict";var H=jh().getModuleCalcData,g=_k(),x="parcats";X.name=x,X.plot=function(A,M,e,t){var r=H(A.calcdata,x);if(r.length){var o=r[0];g(A,o,e,t)}},X.clean=function(A,M,e,t){var r=t._has&&t._has("parcats"),o=M._has&&M._has("parcats");r&&!o&&t._paperdiv.selectAll(".parcats").remove()}}}),GV=Ye({"src/traces/parcats/index.js"(X,H){"use strict";H.exports={attributes:yk(),supplyDefaults:jV(),calc:VV(),plot:_k(),colorbar:{container:"line",min:"cmin",max:"cmax"},moduleType:"trace",name:"parcats",basePlotModule:HV(),categories:["noOpacity"],meta:{}}}}),WV=Ye({"lib/parcats.js"(X,H){"use strict";H.exports=GV()}}),am=Ye({"src/plots/mapbox/constants.js"(X,H){"use strict";var g=Km(),x="1.13.4",A='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',M=['\xA9 <a target="_blank" href="https://carto.com/">Carto</a>',A].join(" "),e=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://www.openstreetmap.org/copyright">ODbL</a>'].join(" "),t=['Map tiles by <a target="_blank" href="https://stamen.com">Stamen Design</a>','under <a target="_blank" href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>',"|",'Data by <a target="_blank" href="https://openstreetmap.org">OpenStreetMap</a> contributors','under <a target="_blank" href="https://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>'].join(" "),r={"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution: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}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":{id:"carto-positron",version:8,sources:{"plotly-carto-positron":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-positron",type:"raster",source:"plotly-carto-positron",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-darkmatter":{id:"carto-darkmatter",version:8,sources:{"plotly-carto-darkmatter":{type:"raster",attribution:M,tiles:["https://cartodb-basemaps-c.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-carto-darkmatter",type:"raster",source:"plotly-carto-darkmatter",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-terrain":{id:"stamen-terrain",version:8,sources:{"plotly-stamen-terrain":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_terrain/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-terrain",type:"raster",source:"plotly-stamen-terrain",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-toner":{id:"stamen-toner",version:8,sources:{"plotly-stamen-toner":{type:"raster",attribution:e,tiles:["https://tiles.stadiamaps.com/tiles/stamen_toner/{z}/{x}/{y}.png?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-toner",type:"raster",source:"plotly-stamen-toner",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"stamen-watercolor":{id:"stamen-watercolor",version:8,sources:{"plotly-stamen-watercolor":{type:"raster",attribution:t,tiles:["https://tiles.stadiamaps.com/tiles/stamen_watercolor/{z}/{x}/{y}.jpg?api_key="],tileSize:256}},layers:[{id:"plotly-stamen-watercolor",type:"raster",source:"plotly-stamen-watercolor",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"}},o=g(r);H.exports={requiredVersion:x,styleUrlPrefix:"mapbox://styles/mapbox/",styleUrlSuffix:"v9",styleValuesMapbox:["basic","streets","outdoors","light","dark","satellite","satellite-streets"],styleValueDflt:"basic",stylesNonMapbox:r,styleValuesNonMapbox:o,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",wrongVersionErrorMsg:["Your custom plotly.js bundle is not using the correct mapbox-gl version","Please install @plotly/mapbox-gl@"+x+"."].join(`
+`),noAccessTokenErrorMsg:["Missing Mapbox access token.","Mapbox trace type require a Mapbox access token to be registered.","For example:"," Plotly.newPlot(gd, data, layout, { mapboxAccessToken: 'my-access-token' });","More info here: https://www.mapbox.com/help/define-access-token/"].join(`
+`),missingStyleErrorMsg:["No valid mapbox style found, please set `mapbox.style` to one of:",o.join(", "),"or register a Mapbox access token to use a Mapbox-served style."].join(`
+`),multipleTokensErrorMsg:["Set multiple mapbox access token across different mapbox subplot,","using first token found as mapbox-gl does not allow multipleaccess tokens on the same page."].join(`
+`),mapOnErrorMsg:"Mapbox error.",mapboxLogo:{path0:"m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z",path1:"M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z",path2:"M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z",polygon:"11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34"},styleRules:{map:"overflow:hidden;position:relative;","missing-css":"display:none;",canary:"background-color:salmon;","ctrl-bottom-left":"position: absolute; pointer-events: none; z-index: 2; bottom: 0; left: 0;","ctrl-bottom-right":"position: absolute; pointer-events: none; z-index: 2; right: 0; bottom: 0;",ctrl:"clear: both; pointer-events: auto; transform: translate(0, 0);","ctrl-attrib.mapboxgl-compact .mapboxgl-ctrl-attrib-inner":"display: none;","ctrl-attrib.mapboxgl-compact:hover .mapboxgl-ctrl-attrib-inner":"display: block; margin-top:2px","ctrl-attrib.mapboxgl-compact:hover":"padding: 2px 24px 2px 4px; visibility: visible; margin-top: 6px;","ctrl-attrib.mapboxgl-compact::after":`content: ""; cursor: pointer; position: absolute; background-image: url('data:image/svg+xml;charset=utf-8,%3Csvg viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg"%3E %3Cpath fill="%23333333" fill-rule="evenodd" d="M4,10a6,6 0 1,0 12,0a6,6 0 1,0 -12,0 M9,7a1,1 0 1,0 2,0a1,1 0 1,0 -2,0 M9,10a1,1 0 1,1 2,0l0,3a1,1 0 1,1 -2,0"/%3E %3C/svg%3E'); background-color: rgba(255, 255, 255, 0.5); width: 24px; height: 24px; box-sizing: border-box; border-radius: 12px;`,"ctrl-attrib.mapboxgl-compact":"min-height: 20px; padding: 0; margin: 10px; position: relative; background-color: #fff; border-radius: 3px 12px 12px 3px;","ctrl-bottom-right > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; right: 0","ctrl-bottom-left > .mapboxgl-ctrl-attrib.mapboxgl-compact::after":"bottom: 0; left: 0","ctrl-bottom-left .mapboxgl-ctrl":"margin: 0 0 10px 10px; float: left;","ctrl-bottom-right .mapboxgl-ctrl":"margin: 0 10px 10px 0; float: right;","ctrl-attrib":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a":"color: rgba(0, 0, 0, 0.75); text-decoration: none; font-size: 12px","ctrl-attrib a:hover":"color: inherit; text-decoration: underline;","ctrl-attrib .mapbox-improve-map":"font-weight: bold; margin-left: 2px;","attrib-empty":"display: none;","ctrl-logo":`display:block; width: 21px; height: 21px; background-image: url('data:image/svg+xml;charset=utf-8,%3C?xml version="1.0" encoding="utf-8"?%3E %3Csvg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 21 21" style="enable-background:new 0 0 21 21;" xml:space="preserve"%3E%3Cg transform="translate(0,0.01)"%3E%3Cpath d="m 10.5,1.24 c -5.11,0 -9.25,4.15 -9.25,9.25 0,5.1 4.15,9.25 9.25,9.25 5.1,0 9.25,-4.15 9.25,-9.25 0,-5.11 -4.14,-9.25 -9.25,-9.25 z m 4.39,11.53 c -1.93,1.93 -4.78,2.31 -6.7,2.31 -0.7,0 -1.41,-0.05 -2.1,-0.16 0,0 -1.02,-5.64 2.14,-8.81 0.83,-0.83 1.95,-1.28 3.13,-1.28 1.27,0 2.49,0.51 3.39,1.42 1.84,1.84 1.89,4.75 0.14,6.52 z" style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3Cpath d="M 10.5,-0.01 C 4.7,-0.01 0,4.7 0,10.49 c 0,5.79 4.7,10.5 10.5,10.5 5.8,0 10.5,-4.7 10.5,-10.5 C 20.99,4.7 16.3,-0.01 10.5,-0.01 Z m 0,19.75 c -5.11,0 -9.25,-4.15 -9.25,-9.25 0,-5.1 4.14,-9.26 9.25,-9.26 5.11,0 9.25,4.15 9.25,9.25 0,5.13 -4.14,9.26 -9.25,9.26 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpath d="M 14.74,6.25 C 12.9,4.41 9.98,4.35 8.23,6.1 5.07,9.27 6.09,14.91 6.09,14.91 c 0,0 5.64,1.02 8.81,-2.14 C 16.64,11 16.59,8.09 14.74,6.25 Z m -2.27,4.09 -0.91,1.87 -0.9,-1.87 -1.86,-0.91 1.86,-0.9 0.9,-1.87 0.91,1.87 1.86,0.9 z" style="opacity:0.35;enable-background:new" class="st1"/%3E%3Cpolygon points="11.56,12.21 10.66,10.34 8.8,9.43 10.66,8.53 11.56,6.66 12.47,8.53 14.33,9.43 12.47,10.34 " style="opacity:0.9;fill:%23ffffff;enable-background:new" class="st0"/%3E%3C/g%3E%3C/svg%3E')`}}}}),Sx=Ye({"src/plots/mapbox/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=am(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("mapbox",".layers",!0)],domain:A({name:"mapbox"}),accesstoken:{valType:"string",noBlank:!0,strict:!0},style:{valType:"any",values:o.styleValuesMapbox.concat(o.styleValuesNonMapbox),dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("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:x},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:x}},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:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),TT=Ye({"src/traces/scattermapbox/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Sx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Sx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),xk=Ye({"src/traces/scattermapbox/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),ZV=Ye({"src/traces/scattermapbox/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=TT(),o=xk().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),bk=Ye({"src/traces/scattermapbox/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),wk=Ye({"src/plots/mapbox/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),XV=Ye({"src/traces/scattermapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=xk().isSupportedFont,i=wk(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P<E.length;P++){var N=E[P],U=N.lonlat;if(!_(U)){var W={};F&&(W.mcc=N.mcc=F(N.mc)),B&&(W.mrc=N.mrc=B(N.ms)),O&&(W.mo=O(N.mo)),d&&(W.selected=N.selected||0),I.push({type:"Feature",id:P+1,geometry:{type:"Point",coordinates:U},properties:W})}}var Q;if(d)for(Q=t.makeSelectedPointStyleFns(m),P=0;P<I.length;P++){var ue=I[P].properties;Q.selectedOpacityFn&&(ue.mo=L(Q.selectedOpacityFn(ue))),Q.selectedColorFn&&(ue.mcc=Q.selectedColorFn(ue)),Q.selectedSizeFn&&(ue.mrc=Q.selectedSizeFn(ue))}return{geojson:{type:"FeatureCollection",features:I},mcc:u||Q&&Q.selectedColorFn?{type:"identity",property:"mcc"}:b.color,mrc:y||Q&&Q.selectedSizeFn?{type:"identity",property:"mrc"}:z(b.size),mo:f||Q&&Q.selectedOpacityFn?{type:"identity",property:"mo"}:L(b.opacity)}}function p(E,m){for(var b=m._fullLayout,d=E[0].trace,u=d.marker||{},y=u.symbol,f=u.angle,P=y!=="circle"?T(y):l,L=f!=="auto"?T(f,!0):l,z=o.hasText(d)?T(d.text):l,F=[],B=0;B<E.length;B++){var O=E[B];if(!_(O.lonlat)){var I=d.texttemplate,N;if(I){var U=Array.isArray(I)?I[B]||"":I,W=d._module.formatLabels(O,d,b),Q={};n(Q,d,O.i);var ue=d._meta||{};N=x.texttemplateString(U,W,b._d3locale,Q,O,ue)}else N=z(B);N&&(N=N.replace(s,"").replace(c,`
+`)),F.push({type:"Feature",geometry:{type:"Point",coordinates:O.lonlat},properties:{symbol:P(B),angle:L(B),text:N}})}}return{type:"FeatureCollection",features:F}}function T(E,m){return x.isArrayOrTypedArray(E)?m?function(b){return g(E[b])?+E[b]:0}:function(b){return E[b]}:E?function(){return E}:l}function l(){return""}function _(E){return E[0]===A}function w(E,m){var b;if(x.isArrayOrTypedArray(E)&&x.isArrayOrTypedArray(m)){b=["step",["get","point_count"],E[0]];for(var d=1;d<E.length;d++)b.push(m[d-1],E[d])}else b=E;return b}function S(E){var m=E.textfont,b=m.family,d=m.style,u=m.weight,y=b.split(" "),f=y[y.length-1]==="Italic";f&&y.pop(),f=f||d==="italic";var P=y.join(" ");u==="bold"&&y.indexOf("Bold")===-1?P+=" Bold":u<=1e3&&(y[0]==="Metropolis"?(P="Metropolis",u>850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),YV=Ye({"src/traces/scattermapbox/plot.js"(X,H){"use strict";var g=ta(),x=XV(),A=am().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermapbox",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h<c.length;h++)if(c[h].id===n){s=!0;break}s?(this.subplot.setOptions(n,"setLayoutProperty",i.layout),i.layout.visibility==="visible"&&this.subplot.setOptions(n,"setPaintProperty",i.paint)):this.subplot.addLayer(i,a)},t.update=function(o){var a=o[0].trace,i=this.subplot,n=i.map,s=x(i.gd,o),c=i.belowLookup["trace-"+this.uid],h=!!(a.cluster&&a.cluster.enabled),v=!!this.clusterEnabled,p=this;function T(u){u||p.addSource("circle",s.circle,a.cluster);for(var y=M.cluster,f=0;f<y.length;f++){var P=y[f],L=s[P];p.addLayer(P,L,c)}}function l(u){for(var y=M.cluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f<y.length;f++){var P=y[f],L=s[P];u||p.addSource(P,L),p.addLayer(P,L,c)}}function w(u){for(var y=M.nonCluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y<u.length;y++){var f=u[y],P=s[f];P&&(i.setOptions(p.layerIds[f],"setLayoutProperty",P.layout),P.layout.visibility==="visible"&&(f!=="cluster"&&p.setSourceData(f,P),i.setOptions(p.layerIds[f],"setPaintProperty",P.paint)))}}var b=this.isHidden,d=a.visible!==!0;d?b||S():b?d||E():v!==h?(S(),E()):(this.below!==c&&(S(!0),E(!0)),m()),this.clusterEnabled=h,this.isHidden=d,this.below=c,o[0].trace._glTrace=this},t.dispose=function(){for(var o=this.subplot.map,a=this.clusterEnabled?M.cluster:M.nonCluster,i=a.length-1;i>=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p<M.cluster.length;p++)T=M.cluster[p],l=h[T],c.addLayer(T,l,v);else for(p=0;p<M.nonCluster.length;p++)T=M.nonCluster[p],l=h[T],c.addSource(T,l,i.cluster),c.addLayer(T,l,v);return a[0].trace._glTrace=c,c}}}),AT=Ye({"src/traces/scattermapbox/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=s1(),M=x.fillText,e=ks().BADNUM,t=am().traceLayerPrefix;function r(a,i,n){var s=a.cd,c=s[0].trace,h=a.xa,v=a.ya,p=a.subplot,T=[],l=t+c.uid+"-circle",_=c.cluster&&c.cluster.enabled;if(_){var w=p.map.queryRenderedFeatures(null,{layers:[l]});T=w.map(function(B){return B.id})}var S=i>=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("<br>")}H.exports={hoverPoints:r,getExtraText:o}}}),KV=Ye({"src/traces/scattermapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),JV=Ye({"src/traces/scattermapbox/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s<r.length;s++)r[s].selected=0;else for(s=0;s<r.length;s++){var c=r[s],h=c.lonlat;if(h[0]!==A){var v=[g.modHalf(h[0],360),h[1]],p=[o.c2p(v),a.c2p(v)];t.contains(p,null,s,e)?(i.push({pointNumber:s,lon:h[0],lat:h[1]}),c.selected=1):c.selected=0}}return i}}}),Tk=Ye({"node_modules/@plotly/mapbox-gl/dist/mapbox-gl-unminified.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():(g=g||self,g.mapboxgl=x())})(X,function(){"use strict";var g,x,A;function M(e,t){if(!g)g=t;else if(!x)x=t;else{var r="var sharedChunk = {}; ("+g+")(sharedChunk); ("+x+")(sharedChunk);",o={};g(o),A=t(o),typeof window<"u"&&(A.workerUrl=window.URL.createObjectURL(new Blob([r],{type:"text/javascript"})))}}return M(["exports"],function(e){"use strict";function t(k,C){return C={exports:{}},k(C,C.exports),C.exports}var r="1.13.4",o=a;function a(k,C,V,oe){this.cx=3*k,this.bx=3*(V-k)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*C,this.by=3*(oe-C)-this.cy,this.ay=1-this.cy-this.by,this.p1x=k,this.p1y=oe,this.p2x=V,this.p2y=oe}a.prototype.sampleCurveX=function(k){return((this.ax*k+this.bx)*k+this.cx)*k},a.prototype.sampleCurveY=function(k){return((this.ay*k+this.by)*k+this.cy)*k},a.prototype.sampleCurveDerivativeX=function(k){return(3*this.ax*k+2*this.bx)*k+this.cx},a.prototype.solveCurveX=function(k,C){typeof C>"u"&&(C=1e-6);var V,oe,_e,Pe,je;for(_e=k,je=0;je<8;je++){if(Pe=this.sampleCurveX(_e)-k,Math.abs(Pe)<C)return _e;var ct=this.sampleCurveDerivativeX(_e);if(Math.abs(ct)<1e-6)break;_e=_e-Pe/ct}if(V=0,oe=1,_e=k,_e<V)return V;if(_e>oe)return oe;for(;V<oe;){if(Pe=this.sampleCurveX(_e),Math.abs(Pe-k)<C)return _e;k>Pe?V=_e:oe=_e,_e=(oe-V)*.5+V}return _e},a.prototype.solve=function(k,C){return this.sampleCurveY(this.solveCurveX(k,C))};var i=n;function n(k,C){this.x=k,this.y=C}n.prototype={clone:function(){return new n(this.x,this.y)},add:function(k){return this.clone()._add(k)},sub:function(k){return this.clone()._sub(k)},multByPoint:function(k){return this.clone()._multByPoint(k)},divByPoint:function(k){return this.clone()._divByPoint(k)},mult:function(k){return this.clone()._mult(k)},div:function(k){return this.clone()._div(k)},rotate:function(k){return this.clone()._rotate(k)},rotateAround:function(k,C){return this.clone()._rotateAround(k,C)},matMult:function(k){return this.clone()._matMult(k)},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(k){return this.x===k.x&&this.y===k.y},dist:function(k){return Math.sqrt(this.distSqr(k))},distSqr:function(k){var C=k.x-this.x,V=k.y-this.y;return C*C+V*V},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(k){return Math.atan2(this.y-k.y,this.x-k.x)},angleWith:function(k){return this.angleWithSep(k.x,k.y)},angleWithSep:function(k,C){return Math.atan2(this.x*C-this.y*k,this.x*k+this.y*C)},_matMult:function(k){var C=k[0]*this.x+k[1]*this.y,V=k[2]*this.x+k[3]*this.y;return this.x=C,this.y=V,this},_add:function(k){return this.x+=k.x,this.y+=k.y,this},_sub:function(k){return this.x-=k.x,this.y-=k.y,this},_mult:function(k){return this.x*=k,this.y*=k,this},_div:function(k){return this.x/=k,this.y/=k,this},_multByPoint:function(k){return this.x*=k.x,this.y*=k.y,this},_divByPoint:function(k){return this.x/=k.x,this.y/=k.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var k=this.y;return this.y=this.x,this.x=-k,this},_rotate:function(k){var C=Math.cos(k),V=Math.sin(k),oe=C*this.x-V*this.y,_e=V*this.x+C*this.y;return this.x=oe,this.y=_e,this},_rotateAround:function(k,C){var V=Math.cos(k),oe=Math.sin(k),_e=C.x+V*(this.x-C.x)-oe*(this.y-C.y),Pe=C.y+oe*(this.x-C.x)+V*(this.y-C.y);return this.x=_e,this.y=Pe,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},n.convert=function(k){return k instanceof n?k:Array.isArray(k)?new n(k[0],k[1]):k};var s=typeof self<"u"?self:{};function c(k,C){if(Array.isArray(k)){if(!Array.isArray(C)||k.length!==C.length)return!1;for(var V=0;V<k.length;V++)if(!c(k[V],C[V]))return!1;return!0}if(typeof k=="object"&&k!==null&&C!==null){if(typeof C!="object")return!1;var oe=Object.keys(k);if(oe.length!==Object.keys(C).length)return!1;for(var _e in k)if(!c(k[_e],C[_e]))return!1;return!0}return k===C}var h=Math.pow(2,53)-1;function v(k){if(k<=0)return 0;if(k>=1)return 1;var C=k*k,V=C*k;return 4*(k<.5?V:3*(k-C)+V-.75)}function p(k,C,V,oe){var _e=new o(k,C,V,oe);return function(Pe){return _e.solve(Pe)}}var T=p(.25,.1,.25,1);function l(k,C,V){return Math.min(V,Math.max(C,k))}function _(k,C,V){var oe=V-C,_e=((k-C)%oe+oe)%oe+C;return _e===C?V:_e}function w(k,C,V){if(!k.length)return V(null,[]);var oe=k.length,_e=new Array(k.length),Pe=null;k.forEach(function(je,ct){C(je,function(Lt,Nt){Lt&&(Pe=Lt),_e[ct]=Nt,--oe===0&&V(Pe,_e)})})}function S(k){var C=[];for(var V in k)C.push(k[V]);return C}function E(k,C){var V=[];for(var oe in k)oe in C||V.push(oe);return V}function m(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function b(k,C){for(var V={},oe=0;oe<C.length;oe++){var _e=C[oe];_e in k&&(V[_e]=k[_e])}return V}var d=1;function u(){return d++}function y(){function k(C){return C?(C^Math.random()*16>>C/4).toString(16):([1e7]+-[1e3]+-4e3+-8e3+-1e11).replace(/[018]/g,k)}return k()}function f(k){return k<=1?1:Math.pow(2,Math.ceil(Math.log(k)/Math.LN2))}function P(k){return k?/^[0-9a-f]{8}-[0-9a-f]{4}-[4][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(k):!1}function L(k,C){k.forEach(function(V){C[V]&&(C[V]=C[V].bind(C))})}function z(k,C){return k.indexOf(C,k.length-C.length)!==-1}function F(k,C,V){var oe={};for(var _e in k)oe[_e]=C.call(V||this,k[_e],_e,k);return oe}function B(k,C,V){var oe={};for(var _e in k)C.call(V||this,k[_e],_e,k)&&(oe[_e]=k[_e]);return oe}function O(k){return Array.isArray(k)?k.map(O):typeof k=="object"&&k?F(k,O):k}function I(k,C){for(var V=0;V<k.length;V++)if(C.indexOf(k[V])>=0)return!0;return!1}var N={};function U(k){N[k]||(typeof console<"u"&&console.warn(k),N[k]=!0)}function W(k,C,V){return(V.y-k.y)*(C.x-k.x)>(C.y-k.y)*(V.x-k.x)}function Q(k){for(var C=0,V=0,oe=k.length,_e=oe-1,Pe=void 0,je=void 0;V<oe;_e=V++)Pe=k[V],je=k[_e],C+=(je.x-Pe.x)*(Pe.y+je.y);return C}function ue(k){var C=k[0],V=k[1],oe=k[2];return V+=90,V*=Math.PI/180,oe*=Math.PI/180,{x:C*Math.cos(V)*Math.sin(oe),y:C*Math.sin(V)*Math.sin(oe),z:C*Math.cos(oe)}}function se(){return typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope}function he(k){var C=/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,V={};if(k.replace(C,function(_e,Pe,je,ct){var Lt=je||ct;return V[Pe]=Lt?Lt.toLowerCase():!0,""}),V["max-age"]){var oe=parseInt(V["max-age"],10);isNaN(oe)?delete V["max-age"]:V["max-age"]=oe}return V}var G=null;function $(k){if(G==null){var C=k.navigator?k.navigator.userAgent:null;G=!!k.safari||!!(C&&(/\b(iPad|iPhone|iPod)\b/.test(C)||C.match("Safari")&&!C.match("Chrome")))}return G}function J(k){try{var C=s[k];return C.setItem("_mapbox_test_",1),C.removeItem("_mapbox_test_"),!0}catch{return!1}}function Z(k){return s.btoa(encodeURIComponent(k).replace(/%([0-9A-F]{2})/g,function(C,V){return String.fromCharCode(+("0x"+V))}))}function re(k){return decodeURIComponent(s.atob(k).split("").map(function(C){return"%"+("00"+C.charCodeAt(0).toString(16)).slice(-2)}).join(""))}var ne=s.performance&&s.performance.now?s.performance.now.bind(s.performance):Date.now.bind(Date),j=s.requestAnimationFrame||s.mozRequestAnimationFrame||s.webkitRequestAnimationFrame||s.msRequestAnimationFrame,ee=s.cancelAnimationFrame||s.mozCancelAnimationFrame||s.webkitCancelAnimationFrame||s.msCancelAnimationFrame,ie,fe,be={now:ne,frame:function(C){var V=j(C);return{cancel:function(){return ee(V)}}},getImageData:function(C,V){V===void 0&&(V=0);var oe=s.document.createElement("canvas"),_e=oe.getContext("2d");if(!_e)throw new Error("failed to create canvas 2d context");return oe.width=C.width,oe.height=C.height,_e.drawImage(C,0,0,C.width,C.height),_e.getImageData(-V,-V,C.width+2*V,C.height+2*V)},resolveURL:function(C){return ie||(ie=s.document.createElement("a")),ie.href=C,ie.href},hardwareConcurrency:s.navigator&&s.navigator.hardwareConcurrency||4,get devicePixelRatio(){return s.devicePixelRatio},get prefersReducedMotion(){return s.matchMedia?(fe==null&&(fe=s.matchMedia("(prefers-reduced-motion: reduce)")),fe.matches):!1}},Ae={API_URL:"https://api.mapbox.com",get EVENTS_URL(){return this.API_URL?this.API_URL.indexOf("https://api.mapbox.cn")===0?"https://events.mapbox.cn/events/v2":this.API_URL.indexOf("https://api.mapbox.com")===0?"https://events.mapbox.com/events/v2":null:null},FEEDBACK_URL:"https://apps.mapbox.com/feedback",REQUIRE_ACCESS_TOKEN:!0,ACCESS_TOKEN:null,MAX_PARALLEL_IMAGE_REQUESTS:16},Be={supported:!1,testSupport:et},Ie,Ze=!1,at,it=!1;s.document&&(at=s.document.createElement("img"),at.onload=function(){Ie&&lt(Ie),Ie=null,it=!0},at.onerror=function(){Ze=!0,Ie=null},at.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA=");function et(k){Ze||!at||(it?lt(k):Ie=k)}function lt(k){var C=k.createTexture();k.bindTexture(k.TEXTURE_2D,C);try{if(k.texImage2D(k.TEXTURE_2D,0,k.RGBA,k.RGBA,k.UNSIGNED_BYTE,at),k.isContextLost())return;Be.supported=!0}catch{}k.deleteTexture(C),Ze=!0}var Me="01";function ge(){for(var k="1",C="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",V="",oe=0;oe<10;oe++)V+=C[Math.floor(Math.random()*62)];var _e=12*60*60*1e3,Pe=[k,Me,V].join(""),je=Date.now()+_e;return{token:Pe,tokenExpiresAt:je}}var ce=function(C,V){this._transformRequestFn=C,this._customAccessToken=V,this._createSkuToken()};ce.prototype._createSkuToken=function(){var C=ge();this._skuToken=C.token,this._skuTokenExpiresAt=C.tokenExpiresAt},ce.prototype._isSkuTokenExpired=function(){return Date.now()>this._skuTokenExpiresAt},ce.prototype.transformRequest=function(C,V){return this._transformRequestFn?this._transformRequestFn(C,V)||{url:C}:{url:C}},ce.prototype.normalizeStyleURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/styles/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeGlyphsURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/fonts/v1"+oe.path,this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSourceURL=function(C,V){if(!ze(C))return C;var oe=Ot(C);return oe.path="/v4/"+oe.authority+".json",oe.params.push("secure"),this._makeAPIURL(oe,this._customAccessToken||V)},ce.prototype.normalizeSpriteURL=function(C,V,oe,_e){var Pe=Ot(C);return ze(C)?(Pe.path="/styles/v1"+Pe.path+"/sprite"+V+oe,this._makeAPIURL(Pe,this._customAccessToken||_e)):(Pe.path+=""+V+oe,jt(Pe))},ce.prototype.normalizeTileURL=function(C,V){if(this._isSkuTokenExpired()&&this._createSkuToken(),C&&!ze(C))return C;var oe=Ot(C),_e=/(\.(png|jpg)\d*)(?=$)/,Pe=/^.+\/v4\//,je=be.devicePixelRatio>=2||V===512?"@2x":"",ct=Be.supported?".webp":"$1";oe.path=oe.path.replace(_e,""+je+ct),oe.path=oe.path.replace(Pe,"/"),oe.path="/v4"+oe.path;var Lt=this._customAccessToken||Ct(oe.params)||Ae.ACCESS_TOKEN;return Ae.REQUIRE_ACCESS_TOKEN&&Lt&&this._skuToken&&oe.params.push("sku="+this._skuToken),this._makeAPIURL(oe,Lt)},ce.prototype.canonicalizeTileURL=function(C,V){var oe="/v4/",_e=/\.[\w]+$/,Pe=Ot(C);if(!Pe.path.match(/(^\/v4\/)/)||!Pe.path.match(_e))return C;var je="mapbox://tiles/";je+=Pe.path.replace(oe,"");var ct=Pe.params;return V&&(ct=ct.filter(function(Lt){return!Lt.match(/^access_token=/)})),ct.length&&(je+="?"+ct.join("&")),je},ce.prototype.canonicalizeTileset=function(C,V){for(var oe=V?ze(V):!1,_e=[],Pe=0,je=C.tiles||[];Pe<je.length;Pe+=1){var ct=je[Pe];nt(ct)?_e.push(this.canonicalizeTileURL(ct,oe)):_e.push(ct)}return _e},ce.prototype._makeAPIURL=function(C,V){var oe="See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes",_e=Ot(Ae.API_URL);if(C.protocol=_e.protocol,C.authority=_e.authority,C.protocol==="http"){var Pe=C.params.indexOf("secure");Pe>=0&&C.params.splice(Pe,1)}if(_e.path!=="/"&&(C.path=""+_e.path+C.path),!Ae.REQUIRE_ACCESS_TOKEN)return jt(C);if(V=V||Ae.ACCESS_TOKEN,!V)throw new Error("An API access token is required to use Mapbox GL. "+oe);if(V[0]==="s")throw new Error("Use a public access token (pk.*) with Mapbox GL, not a secret access token (sk.*). "+oe);return C.params=C.params.filter(function(je){return je.indexOf("access_token")===-1}),C.params.push("access_token="+V),jt(C)};function ze(k){return k.indexOf("mapbox:")===0}var tt=/^((https?:)?\/\/)?([^\/]+\.)?mapbox\.c(n|om)(\/|\?|$)/i;function nt(k){return tt.test(k)}function Qe(k){return k.indexOf("sku=")>0&&nt(k)}function Ct(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C],_e=oe.match(/^access_token=(.*)$/);if(_e)return _e[1]}return null}var St=/^(\w+):\/\/([^/?]*)(\/[^?]+)?\??(.+)?/;function Ot(k){var C=k.match(St);if(!C)throw new Error("Unable to parse URL object");return{protocol:C[1],authority:C[2],path:C[3]||"/",params:C[4]?C[4].split("&"):[]}}function jt(k){var C=k.params.length?"?"+k.params.join("&"):"";return k.protocol+"://"+k.authority+k.path+C}var ur="mapbox.eventData";function ar(k){if(!k)return null;var C=k.split(".");if(!C||C.length!==3)return null;try{var V=JSON.parse(re(C[1]));return V}catch{return null}}var Cr=function(C){this.type=C,this.anonId=null,this.eventData={},this.queue=[],this.pendingRequest=null};Cr.prototype.getStorageKey=function(C){var V=ar(Ae.ACCESS_TOKEN),oe="";return V&&V.u?oe=Z(V.u):oe=Ae.ACCESS_TOKEN||"",C?ur+"."+C+":"+oe:ur+":"+oe},Cr.prototype.fetchEventData=function(){var C=J("localStorage"),V=this.getStorageKey(),oe=this.getStorageKey("uuid");if(C)try{var _e=s.localStorage.getItem(V);_e&&(this.eventData=JSON.parse(_e));var Pe=s.localStorage.getItem(oe);Pe&&(this.anonId=Pe)}catch{U("Unable to read from LocalStorage")}},Cr.prototype.saveEventData=function(){var C=J("localStorage"),V=this.getStorageKey(),oe=this.getStorageKey("uuid");if(C)try{s.localStorage.setItem(oe,this.anonId),Object.keys(this.eventData).length>=1&&s.localStorage.setItem(V,JSON.stringify(this.eventData))}catch{U("Unable to write to LocalStorage")}},Cr.prototype.processRequests=function(C){},Cr.prototype.postEvent=function(C,V,oe,_e){var Pe=this;if(Ae.EVENTS_URL){var je=Ot(Ae.EVENTS_URL);je.params.push("access_token="+(_e||Ae.ACCESS_TOKEN||""));var ct={event:this.type,created:new Date(C).toISOString(),sdkIdentifier:"mapbox-gl-js",sdkVersion:r,skuId:Me,userId:this.anonId},Lt=V?m(ct,V):ct,Nt={url:jt(je),headers:{"Content-Type":"text/plain"},body:JSON.stringify([Lt])};this.pendingRequest=Xr(Nt,function(Xt){Pe.pendingRequest=null,oe(Xt),Pe.saveEventData(),Pe.processRequests(_e)})}},Cr.prototype.queueRequest=function(C,V){this.queue.push(C),this.processRequests(V)};var vr=function(k){function C(){k.call(this,"map.load"),this.success={},this.skuToken=""}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postMapLoadEvent=function(oe,_e,Pe,je){this.skuToken=Pe,(Ae.EVENTS_URL&&je||Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(ct){return ze(ct)||nt(ct)}))&&this.queueRequest({id:_e,timestamp:Date.now()},je)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){var Pe=this.queue.shift(),je=Pe.id,ct=Pe.timestamp;je&&this.success[je]||(this.anonId||this.fetchEventData(),P(this.anonId)||(this.anonId=y()),this.postEvent(ct,{skuToken:this.skuToken},function(Lt){Lt||je&&(_e.success[je]=!0)},oe))}},C}(Cr),_r=function(k){function C(V){k.call(this,"appUserTurnstile"),this._customAccessToken=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.postTurnstileEvent=function(oe,_e){Ae.EVENTS_URL&&Ae.ACCESS_TOKEN&&Array.isArray(oe)&&oe.some(function(Pe){return ze(Pe)||nt(Pe)})&&this.queueRequest(Date.now(),_e)},C.prototype.processRequests=function(oe){var _e=this;if(!(this.pendingRequest||this.queue.length===0)){(!this.anonId||!this.eventData.lastSuccess||!this.eventData.tokenU)&&this.fetchEventData();var Pe=ar(Ae.ACCESS_TOKEN),je=Pe?Pe.u:Ae.ACCESS_TOKEN,ct=je!==this.eventData.tokenU;P(this.anonId)||(this.anonId=y(),ct=!0);var Lt=this.queue.shift();if(this.eventData.lastSuccess){var Nt=new Date(this.eventData.lastSuccess),Xt=new Date(Lt),gr=(Lt-this.eventData.lastSuccess)/(24*60*60*1e3);ct=ct||gr>=1||gr<-1||Nt.getDate()!==Xt.getDate()}else ct=!0;if(!ct)return this.processRequests();this.postEvent(Lt,{"enabled.telemetry":!1},function(Br){Br||(_e.eventData.lastSuccess=Lt,_e.eventData.tokenU=je)},oe)}},C}(Cr),yt=new _r,Fe=yt.postTurnstileEvent.bind(yt),Ke=new vr,Ne=Ke.postMapLoadEvent.bind(Ke),Ee="mapbox-tiles",Ve=500,ke=50,Te=1e3*60*7,Le;function rt(){s.caches&&!Le&&(Le=s.caches.open(Ee))}var dt;function xt(k,C){if(dt===void 0)try{new Response(new ReadableStream),dt=!0}catch{dt=!1}dt?C(k.body):k.blob().then(C)}function It(k,C,V){if(rt(),!!Le){var oe={status:C.status,statusText:C.statusText,headers:new s.Headers};C.headers.forEach(function(je,ct){return oe.headers.set(ct,je)});var _e=he(C.headers.get("Cache-Control")||"");if(!_e["no-store"]){_e["max-age"]&&oe.headers.set("Expires",new Date(V+_e["max-age"]*1e3).toUTCString());var Pe=new Date(oe.headers.get("Expires")).getTime()-V;Pe<Te||xt(C,function(je){var ct=new s.Response(je,oe);rt(),Le&&Le.then(function(Lt){return Lt.put(Bt(k.url),ct)}).catch(function(Lt){return U(Lt.message)})})}}}function Bt(k){var C=k.indexOf("?");return C<0?k:k.slice(0,C)}function Gt(k,C){if(rt(),!Le)return C(null);var V=Bt(k.url);Le.then(function(oe){oe.match(V).then(function(_e){var Pe=Kt(_e);oe.delete(V),Pe&&oe.put(V,_e.clone()),C(null,_e,Pe)}).catch(C)}).catch(C)}function Kt(k){if(!k)return!1;var C=new Date(k.headers.get("Expires")||0),V=he(k.headers.get("Cache-Control")||"");return C>Date.now()&&!V["no-cache"]}var sr=1/0;function sa(k){sr++,sr>ke&&(k.getActor().send("enforceCacheSizeLimit",Ve),sr=0)}function Aa(k){rt(),Le&&Le.then(function(C){C.keys().then(function(V){for(var oe=0;oe<V.length-k;oe++)C.delete(V[oe])})})}function La(k){var C=s.caches.delete(Ee);k&&C.catch(k).then(function(){return k()})}function ka(k,C){Ve=k,ke=C}var Ga;function Ma(){return Ga==null&&(Ga=s.OffscreenCanvas&&new s.OffscreenCanvas(1,1).getContext("2d")&&typeof s.createImageBitmap=="function"),Ga}var Ua={Unknown:"Unknown",Style:"Style",Source:"Source",Tile:"Tile",Glyphs:"Glyphs",SpriteImage:"SpriteImage",SpriteJSON:"SpriteJSON",Image:"Image"};typeof Object.freeze=="function"&&Object.freeze(Ua);var ni=function(k){function C(V,oe,_e){oe===401&&nt(_e)&&(V+=": you may have provided an invalid Mapbox access token. See https://www.mapbox.com/api-documentation/#access-tokens-and-token-scopes"),k.call(this,V),this.status=oe,this.url=_e,this.name=this.constructor.name,this.message=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.toString=function(){return this.name+": "+this.message+" ("+this.status+"): "+this.url},C}(Error),Wt=se()?function(){return self.worker&&self.worker.referrer}:function(){return(s.location.protocol==="blob:"?s.parent:s).location.href},zt=function(k){return/^file:/.test(k)||/^file:/.test(Wt())&&!/^\w+:/.test(k)};function Vt(k,C){var V=new s.AbortController,oe=new s.Request(k.url,{method:k.method||"GET",body:k.body,credentials:k.credentials,headers:k.headers,referrer:Wt(),signal:V.signal}),_e=!1,Pe=!1,je=Qe(oe.url);k.type==="json"&&oe.headers.set("Accept","application/json");var ct=function(Nt,Xt,gr){if(!Pe){if(Nt&&Nt.message!=="SecurityError"&&U(Nt),Xt&&gr)return Lt(Xt);var Br=Date.now();s.fetch(oe).then(function(Rr){if(Rr.ok){var na=je?Rr.clone():null;return Lt(Rr,na,Br)}else return C(new ni(Rr.statusText,Rr.status,k.url))}).catch(function(Rr){Rr.code!==20&&C(new Error(Rr.message))})}},Lt=function(Nt,Xt,gr){(k.type==="arrayBuffer"?Nt.arrayBuffer():k.type==="json"?Nt.json():Nt.text()).then(function(Br){Pe||(Xt&&gr&&It(oe,Xt,gr),_e=!0,C(null,Br,Nt.headers.get("Cache-Control"),Nt.headers.get("Expires")))}).catch(function(Br){Pe||C(new Error(Br.message))})};return je?Gt(oe,ct):ct(null,null),{cancel:function(){Pe=!0,_e||V.abort()}}}function Ut(k,C){var V=new s.XMLHttpRequest;V.open(k.method||"GET",k.url,!0),k.type==="arrayBuffer"&&(V.responseType="arraybuffer");for(var oe in k.headers)V.setRequestHeader(oe,k.headers[oe]);return k.type==="json"&&(V.responseType="text",V.setRequestHeader("Accept","application/json")),V.withCredentials=k.credentials==="include",V.onerror=function(){C(new Error(V.statusText))},V.onload=function(){if((V.status>=200&&V.status<300||V.status===0)&&V.response!==null){var _e=V.response;if(k.type==="json")try{_e=JSON.parse(V.response)}catch(Pe){return C(Pe)}C(null,_e,V.getResponseHeader("Cache-Control"),V.getResponseHeader("Expires"))}else C(new ni(V.statusText,V.status,k.url))},V.send(k.body),{cancel:function(){return V.abort()}}}var xr=function(k,C){if(!zt(k.url)){if(s.fetch&&s.Request&&s.AbortController&&s.Request.prototype.hasOwnProperty("signal"))return Vt(k,C);if(se()&&self.worker&&self.worker.actor){var V=!0;return self.worker.actor.send("getResource",k,C,void 0,V)}}return Ut(k,C)},Zr=function(k,C){return xr(m(k,{type:"json"}),C)},pa=function(k,C){return xr(m(k,{type:"arrayBuffer"}),C)},Xr=function(k,C){return xr(m(k,{method:"POST"}),C)};function Ea(k){var C=s.document.createElement("a");return C.href=k,C.protocol===s.document.location.protocol&&C.host===s.document.location.host}var Fa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function qa(k,C,V,oe){var _e=new s.Image,Pe=s.URL;_e.onload=function(){C(null,_e),Pe.revokeObjectURL(_e.src),_e.onload=null,s.requestAnimationFrame(function(){_e.src=Fa})},_e.onerror=function(){return C(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))};var je=new s.Blob([new Uint8Array(k)],{type:"image/png"});_e.cacheControl=V,_e.expires=oe,_e.src=k.byteLength?Pe.createObjectURL(je):Fa}function ya(k,C){var V=new s.Blob([new Uint8Array(k)],{type:"image/png"});s.createImageBitmap(V).then(function(oe){C(null,oe)}).catch(function(oe){C(new Error("Could not load image because of "+oe.message+". Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))})}var $a,mt,gt=function(){$a=[],mt=0};gt();var Er=function(k,C){if(Be.supported&&(k.headers||(k.headers={}),k.headers.accept="image/webp,*/*"),mt>=Ae.MAX_PARALLEL_IMAGE_REQUESTS){var V={requestParameters:k,callback:C,cancelled:!1,cancel:function(){this.cancelled=!0}};return $a.push(V),V}mt++;var oe=!1,_e=function(){if(!oe)for(oe=!0,mt--;$a.length&&mt<Ae.MAX_PARALLEL_IMAGE_REQUESTS;){var je=$a.shift(),ct=je.requestParameters,Lt=je.callback,Nt=je.cancelled;Nt||(je.cancel=Er(ct,Lt).cancel)}},Pe=pa(k,function(je,ct,Lt,Nt){_e(),je?C(je):ct&&(Ma()?ya(ct,C):qa(ct,C,Lt,Nt))});return{cancel:function(){Pe.cancel(),_e()}}},kr=function(k,C){var V=s.document.createElement("video");V.muted=!0,V.onloadstart=function(){C(null,V)};for(var oe=0;oe<k.length;oe++){var _e=s.document.createElement("source");Ea(k[oe])||(V.crossOrigin="Anonymous"),_e.src=k[oe],V.appendChild(_e)}return{cancel:function(){}}};function br(k,C,V){var oe=V[k]&&V[k].indexOf(C)!==-1;oe||(V[k]=V[k]||[],V[k].push(C))}function Tr(k,C,V){if(V&&V[k]){var oe=V[k].indexOf(C);oe!==-1&&V[k].splice(oe,1)}}var Mr=function(C,V){V===void 0&&(V={}),m(this,V),this.type=C},Fr=function(k){function C(V,oe){oe===void 0&&(oe={}),k.call(this,"error",m({error:V},oe))}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Mr),Lr=function(){};Lr.prototype.on=function(C,V){return this._listeners=this._listeners||{},br(C,V,this._listeners),this},Lr.prototype.off=function(C,V){return Tr(C,V,this._listeners),Tr(C,V,this._oneTimeListeners),this},Lr.prototype.once=function(C,V){return this._oneTimeListeners=this._oneTimeListeners||{},br(C,V,this._oneTimeListeners),this},Lr.prototype.fire=function(C,V){typeof C=="string"&&(C=new Mr(C,V||{}));var oe=C.type;if(this.listens(oe)){C.target=this;for(var _e=this._listeners&&this._listeners[oe]?this._listeners[oe].slice():[],Pe=0,je=_e;Pe<je.length;Pe+=1){var ct=je[Pe];ct.call(this,C)}for(var Lt=this._oneTimeListeners&&this._oneTimeListeners[oe]?this._oneTimeListeners[oe].slice():[],Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];Tr(oe,gr,this._oneTimeListeners),gr.call(this,C)}var Br=this._eventedParent;Br&&(m(C,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Br.fire(C))}else C instanceof Fr&&console.error(C.error);return this},Lr.prototype.listens=function(C){return this._listeners&&this._listeners[C]&&this._listeners[C].length>0||this._oneTimeListeners&&this._oneTimeListeners[C]&&this._oneTimeListeners[C].length>0||this._eventedParent&&this._eventedParent.listens(C)},Lr.prototype.setEventedParent=function(C,V){return this._eventedParent=C,this._eventedParentData=V,this};var Jr=8,oa={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"}},ca={"*":{type:"source"}},kt=["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],ir={type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},mr={type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},$r={type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{}},default:"mapbox"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},ma={type:{required:!0,type:"enum",values:{geojson:{}}},data:{type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},Ba={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"}}},Ca={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"}}},da={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"}},Sa=["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],Ti={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},ai={"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"}},an={"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"}},sn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Mn={"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"}},On={"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"}},$n={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Cn={visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},Lo={type:"array",value:"*"},Xi={type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{},within:{}}},Jo={type:"enum",values:{Point:{},LineString:{},Polygon:{}}},zo={type:"array",minimum:0,maximum:24,value:["number","color"],length:2},as={type:"array",value:"*",minimum:1},Pn={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}},go=["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],In={"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"}},Do={"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"}},Ho={"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"}},Qo={"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"}},Xn={"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"}},po={"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"}},ys={"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"}},Is={"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"}},Fs={duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},$o={"*":{type:"string"}},fi={$version:Jr,$root:oa,sources:ca,source:kt,source_vector:ir,source_raster:mr,source_raster_dem:$r,source_geojson:ma,source_video:Ba,source_image:Ca,layer:da,layout:Sa,layout_background:Ti,layout_fill:ai,layout_circle:an,layout_heatmap:sn,"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:Mn,layout_symbol:On,layout_raster:$n,layout_hillshade:Cn,filter:Lo,filter_operator:Xi,geometry_type:Jo,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:zo,expression:as,light:Pn,paint:go,paint_fill:In,"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:Do,paint_circle:Ho,paint_heatmap:Qo,paint_symbol:Xn,paint_raster:po,paint_hillshade:ys,paint_background:Is,transition:Fs,"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:$o},mn=function(C,V,oe,_e){this.message=(C?C+": ":"")+oe,_e&&(this.identifier=_e),V!=null&&V.__line__&&(this.line=V.__line__)};function ol(k){var C=k.key,V=k.value;return V?[new mn(C,V,"constants have been deprecated as of v8")]:[]}function Os(k){for(var C=[],V=arguments.length-1;V-- >0;)C[V]=arguments[V+1];for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];for(var je in Pe)k[je]=Pe[je]}return k}function so(k){return k instanceof Number||k instanceof String||k instanceof Boolean?k.valueOf():k}function Ns(k){if(Array.isArray(k))return k.map(Ns);if(k instanceof Object&&!(k instanceof Number||k instanceof String||k instanceof Boolean)){var C={};for(var V in k)C[V]=Ns(k[V]);return C}return so(k)}var fs=function(k){function C(V,oe){k.call(this,oe),this.message=oe,this.key=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Error),al=function(C,V){V===void 0&&(V=[]),this.parent=C,this.bindings={};for(var oe=0,_e=V;oe<_e.length;oe+=1){var Pe=_e[oe],je=Pe[0],ct=Pe[1];this.bindings[je]=ct}};al.prototype.concat=function(C){return new al(this,C)},al.prototype.get=function(C){if(this.bindings[C])return this.bindings[C];if(this.parent)return this.parent.get(C);throw new Error(C+" not found in scope.")},al.prototype.has=function(C){return this.bindings[C]?!0:this.parent?this.parent.has(C):!1};var vl={kind:"null"},ji={kind:"number"},To={kind:"string"},Yn={kind:"boolean"},_s={kind:"color"},Yo={kind:"object"},Nn={kind:"value"},Wl={kind:"error"},Zu={kind:"collator"},ml={kind:"formatted"},Bu={kind:"resolvedImage"};function El(k,C){return{kind:"array",itemType:k,N:C}}function qs(k){if(k.kind==="array"){var C=qs(k.itemType);return typeof k.N=="number"?"array<"+C+", "+k.N+">":k.itemType.kind==="value"?"array":"array<"+C+">"}else return k.kind}var Jl=[vl,ji,To,Yn,_s,ml,Yo,El(Nn),Bu];function Nu(k,C){if(C.kind==="error")return null;if(k.kind==="array"){if(C.kind==="array"&&(C.N===0&&C.itemType.kind==="value"||!Nu(k.itemType,C.itemType))&&(typeof k.N!="number"||k.N===C.N))return null}else{if(k.kind===C.kind)return null;if(k.kind==="value")for(var V=0,oe=Jl;V<oe.length;V+=1){var _e=oe[V];if(!Nu(_e,C))return null}}return"Expected "+qs(k)+" but found "+qs(C)+" instead."}function Ic(k,C){return C.some(function(V){return V.kind===k.kind})}function Xu(k,C){return C.some(function(V){return V==="null"?k===null:V==="array"?Array.isArray(k):V==="object"?k&&!Array.isArray(k)&&typeof k=="object":V===typeof k})}var Th=t(function(k,C){var V={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],rebeccapurple:[102,51,153,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function oe(Nt){return Nt=Math.round(Nt),Nt<0?0:Nt>255?255:Nt}function _e(Nt){return Nt<0?0:Nt>1?1:Nt}function Pe(Nt){return Nt[Nt.length-1]==="%"?oe(parseFloat(Nt)/100*255):oe(parseInt(Nt))}function je(Nt){return Nt[Nt.length-1]==="%"?_e(parseFloat(Nt)/100):_e(parseFloat(Nt))}function ct(Nt,Xt,gr){return gr<0?gr+=1:gr>1&&(gr-=1),gr*6<1?Nt+(Xt-Nt)*gr*6:gr*2<1?Xt:gr*3<2?Nt+(Xt-Nt)*(2/3-gr)*6:Nt}function Lt(Nt){var Xt=Nt.replace(/ /g,"").toLowerCase();if(Xt in V)return V[Xt].slice();if(Xt[0]==="#"){if(Xt.length===4){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=4095?[(gr&3840)>>4|(gr&3840)>>8,gr&240|(gr&240)>>4,gr&15|(gr&15)<<4,1]:null}else if(Xt.length===7){var gr=parseInt(Xt.substr(1),16);return gr>=0&&gr<=16777215?[(gr&16711680)>>16,(gr&65280)>>8,gr&255,1]:null}return null}var Br=Xt.indexOf("("),Rr=Xt.indexOf(")");if(Br!==-1&&Rr+1===Xt.length){var na=Xt.substr(0,Br),Ia=Xt.substr(Br+1,Rr-(Br+1)).split(","),ii=1;switch(na){case"rgba":if(Ia.length!==4)return null;ii=je(Ia.pop());case"rgb":return Ia.length!==3?null:[Pe(Ia[0]),Pe(Ia[1]),Pe(Ia[2]),ii];case"hsla":if(Ia.length!==4)return null;ii=je(Ia.pop());case"hsl":if(Ia.length!==3)return null;var Wa=(parseFloat(Ia[0])%360+360)%360/360,Si=je(Ia[1]),ci=je(Ia[2]),Ai=ci<=.5?ci*(Si+1):ci+Si-ci*Si,Li=ci*2-Ai;return[oe(ct(Li,Ai,Wa+1/3)*255),oe(ct(Li,Ai,Wa)*255),oe(ct(Li,Ai,Wa-1/3)*255),ii];default:return null}}return null}try{C.parseCSSColor=Lt}catch{}}),bf=Th.parseCSSColor,Rs=function(C,V,oe,_e){_e===void 0&&(_e=1),this.r=C,this.g=V,this.b=oe,this.a=_e};Rs.parse=function(C){if(C){if(C instanceof Rs)return C;if(typeof C=="string"){var V=bf(C);if(V)return new Rs(V[0]/255*V[3],V[1]/255*V[3],V[2]/255*V[3],V[3])}}},Rs.prototype.toString=function(){var C=this.toArray(),V=C[0],oe=C[1],_e=C[2],Pe=C[3];return"rgba("+Math.round(V)+","+Math.round(oe)+","+Math.round(_e)+","+Pe+")"},Rs.prototype.toArray=function(){var C=this,V=C.r,oe=C.g,_e=C.b,Pe=C.a;return Pe===0?[0,0,0,0]:[V*255/Pe,oe*255/Pe,_e*255/Pe,Pe]},Rs.black=new Rs(0,0,0,1),Rs.white=new Rs(1,1,1,1),Rs.transparent=new Rs(0,0,0,0),Rs.red=new Rs(1,0,0,1);var Yc=function(C,V,oe){C?this.sensitivity=V?"variant":"case":this.sensitivity=V?"accent":"base",this.locale=oe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})};Yc.prototype.compare=function(C,V){return this.collator.compare(C,V)},Yc.prototype.resolvedLocale=function(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale};var If=function(C,V,oe,_e,Pe){this.text=C,this.image=V,this.scale=oe,this.fontStack=_e,this.textColor=Pe},Zl=function(C){this.sections=C};Zl.fromString=function(C){return new Zl([new If(C,null,null,null,null)])},Zl.prototype.isEmpty=function(){return this.sections.length===0?!0:!this.sections.some(function(C){return C.text.length!==0||C.image&&C.image.name.length!==0})},Zl.factory=function(C){return C instanceof Zl?C:Zl.fromString(C)},Zl.prototype.toString=function(){return this.sections.length===0?"":this.sections.map(function(C){return C.text}).join("")},Zl.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];if(_e.image){C.push(["image",_e.image.name]);continue}C.push(_e.text);var Pe={};_e.fontStack&&(Pe["text-font"]=["literal",_e.fontStack.split(",")]),_e.scale&&(Pe["font-scale"]=_e.scale),_e.textColor&&(Pe["text-color"]=["rgba"].concat(_e.textColor.toArray())),C.push(Pe)}return C};var yl=function(C){this.name=C.name,this.available=C.available};yl.prototype.toString=function(){return this.name},yl.fromString=function(C){return C?new yl({name:C,available:!1}):null},yl.prototype.serialize=function(){return["image",this.name]};function oc(k,C,V,oe){if(!(typeof k=="number"&&k>=0&&k<=255&&typeof C=="number"&&C>=0&&C<=255&&typeof V=="number"&&V>=0&&V<=255)){var _e=typeof oe=="number"?[k,C,V,oe]:[k,C,V];return"Invalid rgba value ["+_e.join(", ")+"]: 'r', 'g', and 'b' must be between 0 and 255."}return typeof oe>"u"||typeof oe=="number"&&oe>=0&&oe<=1?null:"Invalid rgba value ["+[k,C,V,oe].join(", ")+"]: 'a' must be between 0 and 1."}function _c(k){if(k===null)return!0;if(typeof k=="string")return!0;if(typeof k=="boolean")return!0;if(typeof k=="number")return!0;if(k instanceof Rs)return!0;if(k instanceof Yc)return!0;if(k instanceof Zl)return!0;if(k instanceof yl)return!0;if(Array.isArray(k)){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(!_c(oe))return!1}return!0}else if(typeof k=="object"){for(var _e in k)if(!_c(k[_e]))return!1;return!0}else return!1}function Zs(k){if(k===null)return vl;if(typeof k=="string")return To;if(typeof k=="boolean")return Yn;if(typeof k=="number")return ji;if(k instanceof Rs)return _s;if(k instanceof Yc)return Zu;if(k instanceof Zl)return ml;if(k instanceof yl)return Bu;if(Array.isArray(k)){for(var C=k.length,V,oe=0,_e=k;oe<_e.length;oe+=1){var Pe=_e[oe],je=Zs(Pe);if(!V)V=je;else{if(V===je)continue;V=Nn;break}}return El(V||Nn,C)}else return Yo}function _l(k){var C=typeof k;return k===null?"":C==="string"||C==="number"||C==="boolean"?String(k):k instanceof Rs||k instanceof Zl||k instanceof yl?k.toString():JSON.stringify(k)}var Bs=function(C,V){this.type=C,this.value=V};Bs.parse=function(C,V){if(C.length!==2)return V.error("'literal' expression requires exactly one argument, but found "+(C.length-1)+" instead.");if(!_c(C[1]))return V.error("invalid value");var oe=C[1],_e=Zs(oe),Pe=V.expectedType;return _e.kind==="array"&&_e.N===0&&Pe&&Pe.kind==="array"&&(typeof Pe.N!="number"||Pe.N===0)&&(_e=Pe),new Bs(_e,oe)},Bs.prototype.evaluate=function(){return this.value},Bs.prototype.eachChild=function(){},Bs.prototype.outputDefined=function(){return!0},Bs.prototype.serialize=function(){return this.type.kind==="array"||this.type.kind==="object"?["literal",this.value]:this.value instanceof Rs?["rgba"].concat(this.value.toArray()):this.value instanceof Zl?this.value.serialize():this.value};var $s=function(C){this.name="ExpressionEvaluationError",this.message=C};$s.prototype.toJSON=function(){return this.message};var sc={string:To,number:ji,boolean:Yn,object:Yo},zl=function(C,V){this.type=C,this.args=V};zl.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=1,_e,Pe=C[0];if(Pe==="array"){var je;if(C.length>2){var ct=C[1];if(typeof ct!="string"||!(ct in sc)||ct==="object")return V.error('The item type argument of "array" must be one of string, number, boolean',1);je=sc[ct],oe++}else je=Nn;var Lt;if(C.length>3){if(C[2]!==null&&(typeof C[2]!="number"||C[2]<0||C[2]!==Math.floor(C[2])))return V.error('The length argument to "array" must be a positive integer literal',2);Lt=C[2],oe++}_e=El(je,Lt)}else _e=sc[Pe];for(var Nt=[];oe<C.length;oe++){var Xt=V.parse(C[oe],oe,Nn);if(!Xt)return null;Nt.push(Xt)}return new zl(_e,Nt)},zl.prototype.evaluate=function(C){for(var V=0;V<this.args.length;V++){var oe=this.args[V].evaluate(C),_e=Nu(this.type,Zs(oe));if(_e){if(V===this.args.length-1)throw new $s("Expected value to be of type "+qs(this.type)+", but found "+qs(Zs(oe))+" instead.")}else return oe}return null},zl.prototype.eachChild=function(C){this.args.forEach(C)},zl.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},zl.prototype.serialize=function(){var C=this.type,V=[C.kind];if(C.kind==="array"){var oe=C.itemType;if(oe.kind==="string"||oe.kind==="number"||oe.kind==="boolean"){V.push(oe.kind);var _e=C.N;(typeof _e=="number"||this.args.length>1)&&V.push(_e)}}return V.concat(this.args.map(function(Pe){return Pe.serialize()}))};var Yu=function(C){this.type=ml,this.sections=C};Yu.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[1];if(!Array.isArray(oe)&&typeof oe=="object")return V.error("First argument must be an image or text section.");for(var _e=[],Pe=!1,je=1;je<=C.length-1;++je){var ct=C[je];if(Pe&&typeof ct=="object"&&!Array.isArray(ct)){Pe=!1;var Lt=null;if(ct["font-scale"]&&(Lt=V.parse(ct["font-scale"],1,ji),!Lt))return null;var Nt=null;if(ct["text-font"]&&(Nt=V.parse(ct["text-font"],1,El(To)),!Nt))return null;var Xt=null;if(ct["text-color"]&&(Xt=V.parse(ct["text-color"],1,_s),!Xt))return null;var gr=_e[_e.length-1];gr.scale=Lt,gr.font=Nt,gr.textColor=Xt}else{var Br=V.parse(C[je],1,Nn);if(!Br)return null;var Rr=Br.type.kind;if(Rr!=="string"&&Rr!=="value"&&Rr!=="null"&&Rr!=="resolvedImage")return V.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Pe=!0,_e.push({content:Br,scale:null,font:null,textColor:null})}}return new Yu(_e)},Yu.prototype.evaluate=function(C){var V=function(oe){var _e=oe.content.evaluate(C);return Zs(_e)===Bu?new If("",_e,null,null,null):new If(_l(_e),null,oe.scale?oe.scale.evaluate(C):null,oe.font?oe.font.evaluate(C).join(","):null,oe.textColor?oe.textColor.evaluate(C):null)};return new Zl(this.sections.map(V))},Yu.prototype.eachChild=function(C){for(var V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];C(_e.content),_e.scale&&C(_e.scale),_e.font&&C(_e.font),_e.textColor&&C(_e.textColor)}},Yu.prototype.outputDefined=function(){return!1},Yu.prototype.serialize=function(){for(var C=["format"],V=0,oe=this.sections;V<oe.length;V+=1){var _e=oe[V];C.push(_e.content.serialize());var Pe={};_e.scale&&(Pe["font-scale"]=_e.scale.serialize()),_e.font&&(Pe["text-font"]=_e.font.serialize()),_e.textColor&&(Pe["text-color"]=_e.textColor.serialize()),C.push(Pe)}return C};var Qs=function(C){this.type=Bu,this.input=C};Qs.parse=function(C,V){if(C.length!==2)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,To);return oe?new Qs(oe):V.error("No image name provided.")},Qs.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=yl.fromString(V);return oe&&C.availableImages&&(oe.available=C.availableImages.indexOf(V)>-1),oe},Qs.prototype.eachChild=function(C){C(this.input)},Qs.prototype.outputDefined=function(){return!1},Qs.prototype.serialize=function(){return["image",this.input.serialize()]};var fp={"to-boolean":Yn,"to-color":_s,"to-number":ji,"to-string":To},es=function(C,V){this.type=C,this.args=V};es.parse=function(C,V){if(C.length<2)return V.error("Expected at least one argument.");var oe=C[0];if((oe==="to-boolean"||oe==="to-string")&&C.length!==2)return V.error("Expected one argument.");for(var _e=fp[oe],Pe=[],je=1;je<C.length;je++){var ct=V.parse(C[je],je,Nn);if(!ct)return null;Pe.push(ct)}return new es(_e,Pe)},es.prototype.evaluate=function(C){if(this.type.kind==="boolean")return!!this.args[0].evaluate(C);if(this.type.kind==="color"){for(var V,oe,_e=0,Pe=this.args;_e<Pe.length;_e+=1){var je=Pe[_e];if(V=je.evaluate(C),oe=null,V instanceof Rs)return V;if(typeof V=="string"){var ct=C.parseColor(V);if(ct)return ct}else if(Array.isArray(V)&&(V.length<3||V.length>4?oe="Invalid rbga value "+JSON.stringify(V)+": expected an array containing either three or four numeric values.":oe=oc(V[0],V[1],V[2],V[3]),!oe))return new Rs(V[0]/255,V[1]/255,V[2]/255,V[3])}throw new $s(oe||"Could not parse color from value '"+(typeof V=="string"?V:String(JSON.stringify(V)))+"'")}else if(this.type.kind==="number"){for(var Lt=null,Nt=0,Xt=this.args;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];if(Lt=gr.evaluate(C),Lt===null)return 0;var Br=Number(Lt);if(!isNaN(Br))return Br}throw new $s("Could not convert "+JSON.stringify(Lt)+" to number.")}else return this.type.kind==="formatted"?Zl.fromString(_l(this.args[0].evaluate(C))):this.type.kind==="resolvedImage"?yl.fromString(_l(this.args[0].evaluate(C))):_l(this.args[0].evaluate(C))},es.prototype.eachChild=function(C){this.args.forEach(C)},es.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},es.prototype.serialize=function(){if(this.type.kind==="formatted")return new Yu([{content:this.args[0],scale:null,font:null,textColor:null}]).serialize();if(this.type.kind==="resolvedImage")return new Qs(this.args[0]).serialize();var C=["to-"+this.type.kind];return this.eachChild(function(V){C.push(V.serialize())}),C};var Wh=["Unknown","Point","LineString","Polygon"],Ss=function(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null};Ss.prototype.id=function(){return this.feature&&"id"in this.feature?this.feature.id:null},Ss.prototype.geometryType=function(){return this.feature?typeof this.feature.type=="number"?Wh[this.feature.type]:this.feature.type:null},Ss.prototype.geometry=function(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null},Ss.prototype.canonicalID=function(){return this.canonical},Ss.prototype.properties=function(){return this.feature&&this.feature.properties||{}},Ss.prototype.parseColor=function(C){var V=this._parseColorCache[C];return V||(V=this._parseColorCache[C]=Rs.parse(C)),V};var So=function(C,V,oe,_e){this.name=C,this.type=V,this._evaluate=oe,this.args=_e};So.prototype.evaluate=function(C){return this._evaluate(C,this.args)},So.prototype.eachChild=function(C){this.args.forEach(C)},So.prototype.outputDefined=function(){return!1},So.prototype.serialize=function(){return[this.name].concat(this.args.map(function(C){return C.serialize()}))},So.parse=function(C,V){var oe,_e=C[0],Pe=So.definitions[_e];if(!Pe)return V.error('Unknown expression "'+_e+'". If you wanted a literal array, use ["literal", [...]].',0);for(var je=Array.isArray(Pe)?Pe[0]:Pe.type,ct=Array.isArray(Pe)?[[Pe[1],Pe[2]]]:Pe.overloads,Lt=ct.filter(function(uo){var vo=uo[0];return!Array.isArray(vo)||vo.length===C.length-1}),Nt=null,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt],Rr=Br[0],na=Br[1];Nt=new kl(V.registry,V.path,null,V.scope);for(var Ia=[],ii=!1,Wa=1;Wa<C.length;Wa++){var Si=C[Wa],ci=Array.isArray(Rr)?Rr[Wa-1]:Rr.type,Ai=Nt.parse(Si,1+Ia.length,ci);if(!Ai){ii=!0;break}Ia.push(Ai)}if(!ii){if(Array.isArray(Rr)&&Rr.length!==Ia.length){Nt.error("Expected "+Rr.length+" arguments, but found "+Ia.length+" instead.");continue}for(var Li=0;Li<Ia.length;Li++){var Ki=Array.isArray(Rr)?Rr[Li]:Rr.type,kn=Ia[Li];Nt.concat(Li+1).checkSubtype(Ki,kn.type)}if(Nt.errors.length===0)return new So(_e,je,na,Ia)}}if(Lt.length===1)(oe=V.errors).push.apply(oe,Nt.errors);else{for(var Tn=Lt.length?Lt:ct,lo=Tn.map(function(uo){var vo=uo[0];return hf(vo)}).join(" | "),qn=[],to=1;to<C.length;to++){var ds=V.parse(C[to],1+qn.length);if(!ds)return null;qn.push(qs(ds.type))}V.error("Expected arguments of type "+lo+", but found ("+qn.join(", ")+") instead.")}return null},So.register=function(C,V){So.definitions=V;for(var oe in V)C[oe]=So};function hf(k){return Array.isArray(k)?"("+k.map(qs).join(", ")+")":"("+qs(k.type)+"...)"}var Ku=function(C,V,oe){this.type=Zu,this.locale=oe,this.caseSensitive=C,this.diacriticSensitive=V};Ku.parse=function(C,V){if(C.length!==2)return V.error("Expected one argument.");var oe=C[1];if(typeof oe!="object"||Array.isArray(oe))return V.error("Collator options argument must be an object.");var _e=V.parse(oe["case-sensitive"]===void 0?!1:oe["case-sensitive"],1,Yn);if(!_e)return null;var Pe=V.parse(oe["diacritic-sensitive"]===void 0?!1:oe["diacritic-sensitive"],1,Yn);if(!Pe)return null;var je=null;return oe.locale&&(je=V.parse(oe.locale,1,To),!je)?null:new Ku(_e,Pe,je)},Ku.prototype.evaluate=function(C){return new Yc(this.caseSensitive.evaluate(C),this.diacriticSensitive.evaluate(C),this.locale?this.locale.evaluate(C):null)},Ku.prototype.eachChild=function(C){C(this.caseSensitive),C(this.diacriticSensitive),this.locale&&C(this.locale)},Ku.prototype.outputDefined=function(){return!1},Ku.prototype.serialize=function(){var C={};return C["case-sensitive"]=this.caseSensitive.serialize(),C["diacritic-sensitive"]=this.diacriticSensitive.serialize(),this.locale&&(C.locale=this.locale.serialize()),["collator",C]};var cu=8192;function Zf(k,C){k[0]=Math.min(k[0],C[0]),k[1]=Math.min(k[1],C[1]),k[2]=Math.max(k[2],C[0]),k[3]=Math.max(k[3],C[1])}function Rc(k){return(180+k)/360}function pf(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function Fl(k,C){return!(k[0]<=C[0]||k[2]>=C[2]||k[1]<=C[1]||k[3]>=C[3])}function lh(k,C){var V=Rc(k[0]),oe=pf(k[1]),_e=Math.pow(2,C.z);return[Math.round(V*_e*cu),Math.round(oe*_e*cu)]}function Xf(k,C,V){var oe=k[0]-C[0],_e=k[1]-C[1],Pe=k[0]-V[0],je=k[1]-V[1];return oe*je-Pe*_e===0&&oe*Pe<=0&&_e*je<=0}function Rf(k,C,V){return C[1]>k[1]!=V[1]>k[1]&&k[0]<(V[0]-C[0])*(k[1]-C[1])/(V[1]-C[1])+C[0]}function Kc(k,C){for(var V=!1,oe=0,_e=C.length;oe<_e;oe++)for(var Pe=C[oe],je=0,ct=Pe.length;je<ct-1;je++){if(Xf(k,Pe[je],Pe[je+1]))return!1;Rf(k,Pe[je],Pe[je+1])&&(V=!V)}return V}function Yf(k,C){for(var V=0;V<C.length;V++)if(Kc(k,C[V]))return!0;return!1}function uh(k,C){return k[0]*C[1]-k[1]*C[0]}function Ju(k,C,V,oe){var _e=k[0]-V[0],Pe=k[1]-V[1],je=C[0]-V[0],ct=C[1]-V[1],Lt=oe[0]-V[0],Nt=oe[1]-V[1],Xt=_e*Nt-Lt*Pe,gr=je*Nt-Lt*ct;return Xt>0&&gr<0||Xt<0&&gr>0}function Df(k,C,V,oe){var _e=[C[0]-k[0],C[1]-k[1]],Pe=[oe[0]-V[0],oe[1]-V[1]];return uh(Pe,_e)===0?!1:!!(Ju(k,C,V,oe)&&Ju(V,oe,k,C))}function Dc(k,C,V){for(var oe=0,_e=V;oe<_e.length;oe+=1)for(var Pe=_e[oe],je=0;je<Pe.length-1;++je)if(Df(k,C,Pe[je],Pe[je+1]))return!0;return!1}function Jc(k,C){for(var V=0;V<k.length;++V)if(!Kc(k[V],C))return!1;for(var oe=0;oe<k.length-1;++oe)if(Dc(k[oe],k[oe+1],C))return!1;return!0}function Eu(k,C){for(var V=0;V<C.length;V++)if(Jc(k,C[V]))return!0;return!1}function wf(k,C,V){for(var oe=[],_e=0;_e<k.length;_e++){for(var Pe=[],je=0;je<k[_e].length;je++){var ct=lh(k[_e][je],V);Zf(C,ct),Pe.push(ct)}oe.push(Pe)}return oe}function zc(k,C,V){for(var oe=[],_e=0;_e<k.length;_e++){var Pe=wf(k[_e],C,V);oe.push(Pe)}return oe}function Us(k,C,V,oe){if(k[0]<V[0]||k[0]>V[2]){var _e=oe*.5,Pe=k[0]-V[0]>_e?-oe:V[0]-k[0]>_e?oe:0;Pe===0&&(Pe=k[0]-V[2]>_e?-oe:V[2]-k[0]>_e?oe:0),k[0]+=Pe}Zf(C,k)}function Kf(k){k[0]=k[1]=1/0,k[2]=k[3]=-1/0}function Zh(k,C,V,oe){for(var _e=Math.pow(2,oe.z)*cu,Pe=[oe.x*cu,oe.y*cu],je=[],ct=0,Lt=k;ct<Lt.length;ct+=1)for(var Nt=Lt[ct],Xt=0,gr=Nt;Xt<gr.length;Xt+=1){var Br=gr[Xt],Rr=[Br.x+Pe[0],Br.y+Pe[1]];Us(Rr,C,V,_e),je.push(Rr)}return je}function ch(k,C,V,oe){for(var _e=Math.pow(2,oe.z)*cu,Pe=[oe.x*cu,oe.y*cu],je=[],ct=0,Lt=k;ct<Lt.length;ct+=1){for(var Nt=Lt[ct],Xt=[],gr=0,Br=Nt;gr<Br.length;gr+=1){var Rr=Br[gr],na=[Rr.x+Pe[0],Rr.y+Pe[1]];Zf(C,na),Xt.push(na)}je.push(Xt)}if(C[2]-C[0]<=_e/2){Kf(C);for(var Ia=0,ii=je;Ia<ii.length;Ia+=1)for(var Wa=ii[Ia],Si=0,ci=Wa;Si<ci.length;Si+=1){var Ai=ci[Si];Us(Ai,C,V,_e)}}return je}function df(k,C){var V=[1/0,1/0,-1/0,-1/0],oe=[1/0,1/0,-1/0,-1/0],_e=k.canonicalID();if(C.type==="Polygon"){var Pe=wf(C.coordinates,oe,_e),je=Zh(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var ct=0,Lt=je;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(!Kc(Nt,Pe))return!1}}if(C.type==="MultiPolygon"){var Xt=zc(C.coordinates,oe,_e),gr=Zh(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(!Yf(na,Xt))return!1}}return!0}function Ah(k,C){var V=[1/0,1/0,-1/0,-1/0],oe=[1/0,1/0,-1/0,-1/0],_e=k.canonicalID();if(C.type==="Polygon"){var Pe=wf(C.coordinates,oe,_e),je=ch(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var ct=0,Lt=je;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(!Jc(Nt,Pe))return!1}}if(C.type==="MultiPolygon"){var Xt=zc(C.coordinates,oe,_e),gr=ch(k.geometry(),V,oe,_e);if(!Fl(V,oe))return!1;for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(!Eu(na,Xt))return!1}}return!0}var ku=function(C,V){this.type=Yn,this.geojson=C,this.geometries=V};ku.parse=function(C,V){if(C.length!==2)return V.error("'within' expression requires exactly one argument, but found "+(C.length-1)+" instead.");if(_c(C[1])){var oe=C[1];if(oe.type==="FeatureCollection")for(var _e=0;_e<oe.features.length;++_e){var Pe=oe.features[_e].geometry.type;if(Pe==="Polygon"||Pe==="MultiPolygon")return new ku(oe,oe.features[_e].geometry)}else if(oe.type==="Feature"){var je=oe.geometry.type;if(je==="Polygon"||je==="MultiPolygon")return new ku(oe,oe.geometry)}else if(oe.type==="Polygon"||oe.type==="MultiPolygon")return new ku(oe,oe)}return V.error("'within' expression requires valid geojson object that contains polygon geometry type.")},ku.prototype.evaluate=function(C){if(C.geometry()!=null&&C.canonicalID()!=null){if(C.geometryType()==="Point")return df(C,this.geometries);if(C.geometryType()==="LineString")return Ah(C,this.geometries)}return!1},ku.prototype.eachChild=function(){},ku.prototype.outputDefined=function(){return!0},ku.prototype.serialize=function(){return["within",this.geojson]};function fh(k){if(k instanceof So){if(k.name==="get"&&k.args.length===1)return!1;if(k.name==="feature-state")return!1;if(k.name==="has"&&k.args.length===1)return!1;if(k.name==="properties"||k.name==="geometry-type"||k.name==="id")return!1;if(/^filter-/.test(k.name))return!1}if(k instanceof ku)return!1;var C=!0;return k.eachChild(function(V){C&&!fh(V)&&(C=!1)}),C}function ru(k){if(k instanceof So&&k.name==="feature-state")return!1;var C=!0;return k.eachChild(function(V){C&&!ru(V)&&(C=!1)}),C}function Cu(k,C){if(k instanceof So&&C.indexOf(k.name)>=0)return!1;var V=!0;return k.eachChild(function(oe){V&&!Cu(oe,C)&&(V=!1)}),V}var xc=function(C,V){this.type=V.type,this.name=C,this.boundExpression=V};xc.parse=function(C,V){if(C.length!==2||typeof C[1]!="string")return V.error("'var' expression requires exactly one string literal argument.");var oe=C[1];return V.scope.has(oe)?new xc(oe,V.scope.get(oe)):V.error('Unknown variable "'+oe+'". Make sure "'+oe+'" has been bound in an enclosing "let" expression before using it.',1)},xc.prototype.evaluate=function(C){return this.boundExpression.evaluate(C)},xc.prototype.eachChild=function(){},xc.prototype.outputDefined=function(){return!1},xc.prototype.serialize=function(){return["var",this.name]};var kl=function(C,V,oe,_e,Pe){V===void 0&&(V=[]),_e===void 0&&(_e=new al),Pe===void 0&&(Pe=[]),this.registry=C,this.path=V,this.key=V.map(function(je){return"["+je+"]"}).join(""),this.scope=_e,this.errors=Pe,this.expectedType=oe};kl.prototype.parse=function(C,V,oe,_e,Pe){return Pe===void 0&&(Pe={}),V?this.concat(V,oe,_e)._parse(C,Pe):this._parse(C,Pe)},kl.prototype._parse=function(C,V){(C===null||typeof C=="string"||typeof C=="boolean"||typeof C=="number")&&(C=["literal",C]);function oe(Xt,gr,Br){return Br==="assert"?new zl(gr,[Xt]):Br==="coerce"?new es(gr,[Xt]):Xt}if(Array.isArray(C)){if(C.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');var _e=C[0];if(typeof _e!="string")return this.error("Expression name must be a string, but found "+typeof _e+' instead. If you wanted a literal array, use ["literal", [...]].',0),null;var Pe=this.registry[_e];if(Pe){var je=Pe.parse(C,this);if(!je)return null;if(this.expectedType){var ct=this.expectedType,Lt=je.type;if((ct.kind==="string"||ct.kind==="number"||ct.kind==="boolean"||ct.kind==="object"||ct.kind==="array")&&Lt.kind==="value")je=oe(je,ct,V.typeAnnotation||"assert");else if((ct.kind==="color"||ct.kind==="formatted"||ct.kind==="resolvedImage")&&(Lt.kind==="value"||Lt.kind==="string"))je=oe(je,ct,V.typeAnnotation||"coerce");else if(this.checkSubtype(ct,Lt))return null}if(!(je instanceof Bs)&&je.type.kind!=="resolvedImage"&&Fc(je)){var Nt=new Ss;try{je=new Bs(je.type,je.evaluate(Nt))}catch(Xt){return this.error(Xt.message),null}}return je}return this.error('Unknown expression "'+_e+'". If you wanted a literal array, use ["literal", [...]].',0)}else return typeof C>"u"?this.error("'undefined' value invalid. Use null instead."):typeof C=="object"?this.error('Bare objects invalid. Use ["literal", {...}] instead.'):this.error("Expected an array, but found "+typeof C+" instead.")},kl.prototype.concat=function(C,V,oe){var _e=typeof C=="number"?this.path.concat(C):this.path,Pe=oe?this.scope.concat(oe):this.scope;return new kl(this.registry,_e,V||null,Pe,this.errors)},kl.prototype.error=function(C){for(var V=[],oe=arguments.length-1;oe-- >0;)V[oe]=arguments[oe+1];var _e=""+this.key+V.map(function(Pe){return"["+Pe+"]"}).join("");this.errors.push(new fs(_e,C))},kl.prototype.checkSubtype=function(C,V){var oe=Nu(C,V);return oe&&this.error(oe),oe};function Fc(k){if(k instanceof xc)return Fc(k.boundExpression);if(k instanceof So&&k.name==="error")return!1;if(k instanceof Ku)return!1;if(k instanceof ku)return!1;var C=k instanceof es||k instanceof zl,V=!0;return k.eachChild(function(oe){C?V=V&&Fc(oe):V=V&&oe instanceof Bs}),V?fh(k)&&Cu(k,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"]):!1}function $u(k,C){for(var V=k.length-1,oe=0,_e=V,Pe=0,je,ct;oe<=_e;)if(Pe=Math.floor((oe+_e)/2),je=k[Pe],ct=k[Pe+1],je<=C){if(Pe===V||C<ct)return Pe;oe=Pe+1}else if(je>C)_e=Pe-1;else throw new $s("Input is not a number.");return 0}var vu=function(C,V,oe){this.type=C,this.input=V,this.labels=[],this.outputs=[];for(var _e=0,Pe=oe;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je[0],Lt=je[1];this.labels.push(ct),this.outputs.push(Lt)}};vu.parse=function(C,V){if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");var oe=V.parse(C[1],1,ji);if(!oe)return null;var _e=[],Pe=null;V.expectedType&&V.expectedType.kind!=="value"&&(Pe=V.expectedType);for(var je=1;je<C.length;je+=2){var ct=je===1?-1/0:C[je],Lt=C[je+1],Nt=je,Xt=je+1;if(typeof ct!="number")return V.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Nt);if(_e.length&&_e[_e.length-1][0]>=ct)return V.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Nt);var gr=V.parse(Lt,Xt,Pe);if(!gr)return null;Pe=Pe||gr.type,_e.push([ct,gr])}return new vu(Pe,oe,_e)},vu.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e);return oe[je].evaluate(C)},vu.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V<oe.length;V+=1){var _e=oe[V];C(_e)}},vu.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})},vu.prototype.serialize=function(){for(var C=["step",this.input.serialize()],V=0;V<this.labels.length;V++)V>0&&C.push(this.labels[V]),C.push(this.outputs[V].serialize());return C};function xl(k,C,V){return k*(1-V)+C*V}function hh(k,C,V){return new Rs(xl(k.r,C.r,V),xl(k.g,C.g,V),xl(k.b,C.b,V),xl(k.a,C.a,V))}function Sh(k,C,V){return k.map(function(oe,_e){return xl(oe,C[_e],V)})}var Uu=Object.freeze({__proto__:null,number:xl,color:hh,array:Sh}),bc=.95047,lc=1,hp=1.08883,vf=4/29,Tf=6/29,Lu=3*Tf*Tf,zf=Tf*Tf*Tf,au=Math.PI/180,$c=180/Math.PI;function Mh(k){return k>zf?Math.pow(k,1/3):k/Lu+vf}function Ff(k){return k>Tf?k*k*k:Lu*(k-vf)}function il(k){return 255*(k<=.0031308?12.92*k:1.055*Math.pow(k,1/2.4)-.055)}function mu(k){return k/=255,k<=.04045?k/12.92:Math.pow((k+.055)/1.055,2.4)}function gu(k){var C=mu(k.r),V=mu(k.g),oe=mu(k.b),_e=Mh((.4124564*C+.3575761*V+.1804375*oe)/bc),Pe=Mh((.2126729*C+.7151522*V+.072175*oe)/lc),je=Mh((.0193339*C+.119192*V+.9503041*oe)/hp);return{l:116*Pe-16,a:500*(_e-Pe),b:200*(Pe-je),alpha:k.a}}function Jf(k){var C=(k.l+16)/116,V=isNaN(k.a)?C:C+k.a/500,oe=isNaN(k.b)?C:C-k.b/200;return C=lc*Ff(C),V=bc*Ff(V),oe=hp*Ff(oe),new Rs(il(3.2404542*V-1.5371385*C-.4985314*oe),il(-.969266*V+1.8760108*C+.041556*oe),il(.0556434*V-.2040259*C+1.0572252*oe),k.alpha)}function el(k,C,V){return{l:xl(k.l,C.l,V),a:xl(k.a,C.a,V),b:xl(k.b,C.b,V),alpha:xl(k.alpha,C.alpha,V)}}function mf(k){var C=gu(k),V=C.l,oe=C.a,_e=C.b,Pe=Math.atan2(_e,oe)*$c;return{h:Pe<0?Pe+360:Pe,c:Math.sqrt(oe*oe+_e*_e),l:V,alpha:k.a}}function wc(k){var C=k.h*au,V=k.c,oe=k.l;return Jf({l:oe,a:Math.cos(C)*V,b:Math.sin(C)*V,alpha:k.alpha})}function ju(k,C,V){var oe=C-k;return k+V*(oe>180||oe<-180?oe-360*Math.round(oe/360):oe)}function Af(k,C,V){return{h:ju(k.h,C.h,V),c:xl(k.c,C.c,V),l:xl(k.l,C.l,V),alpha:xl(k.alpha,C.alpha,V)}}var uc={forward:gu,reverse:Jf,interpolate:el},Qc={forward:mf,reverse:wc,interpolate:Af},$f=Object.freeze({__proto__:null,lab:uc,hcl:Qc}),Vl=function(C,V,oe,_e,Pe){this.type=C,this.operator=V,this.interpolation=oe,this.input=_e,this.labels=[],this.outputs=[];for(var je=0,ct=Pe;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt[0],Xt=Lt[1];this.labels.push(Nt),this.outputs.push(Xt)}};Vl.interpolationFactor=function(C,V,oe,_e){var Pe=0;if(C.name==="exponential")Pe=Qf(V,C.base,oe,_e);else if(C.name==="linear")Pe=Qf(V,1,oe,_e);else if(C.name==="cubic-bezier"){var je=C.controlPoints,ct=new o(je[0],je[1],je[2],je[3]);Pe=ct.solve(Qf(V,1,oe,_e))}return Pe},Vl.parse=function(C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C.slice(3);if(!Array.isArray(_e)||_e.length===0)return V.error("Expected an interpolation type expression.",1);if(_e[0]==="linear")_e={name:"linear"};else if(_e[0]==="exponential"){var ct=_e[1];if(typeof ct!="number")return V.error("Exponential interpolation requires a numeric base.",1,1);_e={name:"exponential",base:ct}}else if(_e[0]==="cubic-bezier"){var Lt=_e.slice(1);if(Lt.length!==4||Lt.some(function(Wa){return typeof Wa!="number"||Wa<0||Wa>1}))return V.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);_e={name:"cubic-bezier",controlPoints:Lt}}else return V.error("Unknown interpolation type "+String(_e[0]),1,0);if(C.length-1<4)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if((C.length-1)%2!==0)return V.error("Expected an even number of arguments.");if(Pe=V.parse(Pe,2,ji),!Pe)return null;var Nt=[],Xt=null;oe==="interpolate-hcl"||oe==="interpolate-lab"?Xt=_s:V.expectedType&&V.expectedType.kind!=="value"&&(Xt=V.expectedType);for(var gr=0;gr<je.length;gr+=2){var Br=je[gr],Rr=je[gr+1],na=gr+3,Ia=gr+4;if(typeof Br!="number")return V.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',na);if(Nt.length&&Nt[Nt.length-1][0]>=Br)return V.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',na);var ii=V.parse(Rr,Ia,Xt);if(!ii)return null;Xt=Xt||ii.type,Nt.push([Br,ii])}return Xt.kind!=="number"&&Xt.kind!=="color"&&!(Xt.kind==="array"&&Xt.itemType.kind==="number"&&typeof Xt.N=="number")?V.error("Type "+qs(Xt)+" is not interpolatable."):new Vl(Xt,oe,_e,Pe,Nt)},Vl.prototype.evaluate=function(C){var V=this.labels,oe=this.outputs;if(V.length===1)return oe[0].evaluate(C);var _e=this.input.evaluate(C);if(_e<=V[0])return oe[0].evaluate(C);var Pe=V.length;if(_e>=V[Pe-1])return oe[Pe-1].evaluate(C);var je=$u(V,_e),ct=V[je],Lt=V[je+1],Nt=Vl.interpolationFactor(this.interpolation,_e,ct,Lt),Xt=oe[je].evaluate(C),gr=oe[je+1].evaluate(C);return this.operator==="interpolate"?Uu[this.type.kind.toLowerCase()](Xt,gr,Nt):this.operator==="interpolate-hcl"?Qc.reverse(Qc.interpolate(Qc.forward(Xt),Qc.forward(gr),Nt)):uc.reverse(uc.interpolate(uc.forward(Xt),uc.forward(gr),Nt))},Vl.prototype.eachChild=function(C){C(this.input);for(var V=0,oe=this.outputs;V<oe.length;V+=1){var _e=oe[V];C(_e)}},Vl.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})},Vl.prototype.serialize=function(){var C;this.interpolation.name==="linear"?C=["linear"]:this.interpolation.name==="exponential"?this.interpolation.base===1?C=["linear"]:C=["exponential",this.interpolation.base]:C=["cubic-bezier"].concat(this.interpolation.controlPoints);for(var V=[this.operator,C,this.input.serialize()],oe=0;oe<this.labels.length;oe++)V.push(this.labels[oe],this.outputs[oe].serialize());return V};function Qf(k,C,V,oe){var _e=oe-V,Pe=k-V;return _e===0?0:C===1?Pe/_e:(Math.pow(C,Pe)-1)/(Math.pow(C,_e)-1)}var Vu=function(C,V){this.type=C,this.args=V};Vu.parse=function(C,V){if(C.length<2)return V.error("Expectected at least one argument.");var oe=null,_e=V.expectedType;_e&&_e.kind!=="value"&&(oe=_e);for(var Pe=[],je=0,ct=C.slice(1);je<ct.length;je+=1){var Lt=ct[je],Nt=V.parse(Lt,1+Pe.length,oe,void 0,{typeAnnotation:"omit"});if(!Nt)return null;oe=oe||Nt.type,Pe.push(Nt)}var Xt=_e&&Pe.some(function(gr){return Nu(_e,gr.type)});return Xt?new Vu(Nn,Pe):new Vu(oe,Pe)},Vu.prototype.evaluate=function(C){for(var V=null,oe=0,_e,Pe=0,je=this.args;Pe<je.length;Pe+=1){var ct=je[Pe];if(oe++,V=ct.evaluate(C),V&&V instanceof yl&&!V.available&&(_e||(_e=V.name),V=null,oe===this.args.length&&(V=_e)),V!==null)break}return V},Vu.prototype.eachChild=function(C){this.args.forEach(C)},Vu.prototype.outputDefined=function(){return this.args.every(function(C){return C.outputDefined()})},Vu.prototype.serialize=function(){var C=["coalesce"];return this.eachChild(function(V){C.push(V.serialize())}),C};var Tc=function(C,V){this.type=V.type,this.bindings=[].concat(C),this.result=V};Tc.prototype.evaluate=function(C){return this.result.evaluate(C)},Tc.prototype.eachChild=function(C){for(var V=0,oe=this.bindings;V<oe.length;V+=1){var _e=oe[V];C(_e[1])}C(this.result)},Tc.parse=function(C,V){if(C.length<4)return V.error("Expected at least 3 arguments, but found "+(C.length-1)+" instead.");for(var oe=[],_e=1;_e<C.length-1;_e+=2){var Pe=C[_e];if(typeof Pe!="string")return V.error("Expected string, but found "+typeof Pe+" instead.",_e);if(/[^a-zA-Z0-9_]/.test(Pe))return V.error("Variable names must contain only alphanumeric characters or '_'.",_e);var je=V.parse(C[_e+1],_e+1);if(!je)return null;oe.push([Pe,je])}var ct=V.parse(C[C.length-1],C.length-1,V.expectedType,oe);return ct?new Tc(oe,ct):null},Tc.prototype.outputDefined=function(){return this.result.outputDefined()},Tc.prototype.serialize=function(){for(var C=["let"],V=0,oe=this.bindings;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];C.push(Pe,je.serialize())}return C.push(this.result.serialize()),C};var cc=function(C,V,oe){this.type=C,this.index=V,this.input=oe};cc.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,ji),_e=V.parse(C[2],2,El(V.expectedType||Nn));if(!oe||!_e)return null;var Pe=_e.type;return new cc(Pe.itemType,oe,_e)},cc.prototype.evaluate=function(C){var V=this.index.evaluate(C),oe=this.input.evaluate(C);if(V<0)throw new $s("Array index out of bounds: "+V+" < 0.");if(V>=oe.length)throw new $s("Array index out of bounds: "+V+" > "+(oe.length-1)+".");if(V!==Math.floor(V))throw new $s("Array index must be an integer, but found "+V+" instead.");return oe[V]},cc.prototype.eachChild=function(C){C(this.index),C(this.input)},cc.prototype.outputDefined=function(){return!1},cc.prototype.serialize=function(){return["at",this.index.serialize(),this.input.serialize()]};var Cl=function(C,V){this.type=Yn,this.needle=C,this.haystack=V};Cl.parse=function(C,V){if(C.length!==3)return V.error("Expected 2 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);return!oe||!_e?null:Ic(oe.type,[Yn,To,ji,vl,Nn])?new Cl(oe,_e):V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead")},Cl.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!oe)return!1;if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");return oe.indexOf(V)>=0},Cl.prototype.eachChild=function(C){C(this.needle),C(this.haystack)},Cl.prototype.outputDefined=function(){return!0},Cl.prototype.serialize=function(){return["in",this.needle.serialize(),this.haystack.serialize()]};var iu=function(C,V,oe){this.type=ji,this.needle=C,this.haystack=V,this.fromIndex=oe};iu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,Nn);if(!oe||!_e)return null;if(!Ic(oe.type,[Yn,To,ji,vl,Nn]))return V.error("Expected first argument to be of type boolean, string, number or null, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new iu(oe,_e,Pe):null}else return new iu(oe,_e)},iu.prototype.evaluate=function(C){var V=this.needle.evaluate(C),oe=this.haystack.evaluate(C);if(!Xu(V,["boolean","string","number","null"]))throw new $s("Expected first argument to be of type boolean, string, number or null, but found "+qs(Zs(V))+" instead.");if(!Xu(oe,["string","array"]))throw new $s("Expected second argument to be of type array or string, but found "+qs(Zs(oe))+" instead.");if(this.fromIndex){var _e=this.fromIndex.evaluate(C);return oe.indexOf(V,_e)}return oe.indexOf(V)},iu.prototype.eachChild=function(C){C(this.needle),C(this.haystack),this.fromIndex&&C(this.fromIndex)},iu.prototype.outputDefined=function(){return!1},iu.prototype.serialize=function(){if(this.fromIndex!=null&&this.fromIndex!==void 0){var C=this.fromIndex.serialize();return["index-of",this.needle.serialize(),this.haystack.serialize(),C]}return["index-of",this.needle.serialize(),this.haystack.serialize()]};var fc=function(C,V,oe,_e,Pe,je){this.inputType=C,this.type=V,this.input=oe,this.cases=_e,this.outputs=Pe,this.otherwise=je};fc.parse=function(C,V){if(C.length<5)return V.error("Expected at least 4 arguments, but found only "+(C.length-1)+".");if(C.length%2!==1)return V.error("Expected an even number of arguments.");var oe,_e;V.expectedType&&V.expectedType.kind!=="value"&&(_e=V.expectedType);for(var Pe={},je=[],ct=2;ct<C.length-1;ct+=2){var Lt=C[ct],Nt=C[ct+1];Array.isArray(Lt)||(Lt=[Lt]);var Xt=V.concat(ct);if(Lt.length===0)return Xt.error("Expected at least one branch label.");for(var gr=0,Br=Lt;gr<Br.length;gr+=1){var Rr=Br[gr];if(typeof Rr!="number"&&typeof Rr!="string")return Xt.error("Branch labels must be numbers or strings.");if(typeof Rr=="number"&&Math.abs(Rr)>Number.MAX_SAFE_INTEGER)return Xt.error("Branch labels must be integers no larger than "+Number.MAX_SAFE_INTEGER+".");if(typeof Rr=="number"&&Math.floor(Rr)!==Rr)return Xt.error("Numeric branch labels must be integer values.");if(!oe)oe=Zs(Rr);else if(Xt.checkSubtype(oe,Zs(Rr)))return null;if(typeof Pe[String(Rr)]<"u")return Xt.error("Branch labels must be unique.");Pe[String(Rr)]=je.length}var na=V.parse(Nt,ct,_e);if(!na)return null;_e=_e||na.type,je.push(na)}var Ia=V.parse(C[1],1,Nn);if(!Ia)return null;var ii=V.parse(C[C.length-1],C.length-1,_e);return!ii||Ia.type.kind!=="value"&&V.concat(1).checkSubtype(oe,Ia.type)?null:new fc(oe,_e,Ia,Pe,je,ii)},fc.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=Zs(V)===this.inputType&&this.outputs[this.cases[V]]||this.otherwise;return oe.evaluate(C)},fc.prototype.eachChild=function(C){C(this.input),this.outputs.forEach(C),C(this.otherwise)},fc.prototype.outputDefined=function(){return this.outputs.every(function(C){return C.outputDefined()})&&this.otherwise.outputDefined()},fc.prototype.serialize=function(){for(var C=this,V=["match",this.input.serialize()],oe=Object.keys(this.cases).sort(),_e=[],Pe={},je=0,ct=oe;je<ct.length;je+=1){var Lt=ct[je],Nt=Pe[this.cases[Lt]];Nt===void 0?(Pe[this.cases[Lt]]=_e.length,_e.push([this.cases[Lt],[Lt]])):_e[Nt][1].push(Lt)}for(var Xt=function(Ia){return C.inputType.kind==="number"?Number(Ia):Ia},gr=0,Br=_e;gr<Br.length;gr+=1){var Rr=Br[gr],Nt=Rr[0],na=Rr[1];na.length===1?V.push(Xt(na[0])):V.push(na.map(Xt)),V.push(this.outputs[outputIndex$1].serialize())}return V.push(this.otherwise.serialize()),V};var Oc=function(C,V,oe){this.type=C,this.branches=V,this.otherwise=oe};Oc.parse=function(C,V){if(C.length<4)return V.error("Expected at least 3 arguments, but found only "+(C.length-1)+".");if(C.length%2!==0)return V.error("Expected an odd number of arguments.");var oe;V.expectedType&&V.expectedType.kind!=="value"&&(oe=V.expectedType);for(var _e=[],Pe=1;Pe<C.length-1;Pe+=2){var je=V.parse(C[Pe],Pe,Yn);if(!je)return null;var ct=V.parse(C[Pe+1],Pe+1,oe);if(!ct)return null;_e.push([je,ct]),oe=oe||ct.type}var Lt=V.parse(C[C.length-1],C.length-1,oe);return Lt?new Oc(oe,_e,Lt):null},Oc.prototype.evaluate=function(C){for(var V=0,oe=this.branches;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];if(Pe.evaluate(C))return je.evaluate(C)}return this.otherwise.evaluate(C)},Oc.prototype.eachChild=function(C){for(var V=0,oe=this.branches;V<oe.length;V+=1){var _e=oe[V],Pe=_e[0],je=_e[1];C(Pe),C(je)}C(this.otherwise)},Oc.prototype.outputDefined=function(){return this.branches.every(function(C){var V=C[0],oe=C[1];return oe.outputDefined()})&&this.otherwise.outputDefined()},Oc.prototype.serialize=function(){var C=["case"];return this.eachChild(function(V){C.push(V.serialize())}),C};var Qu=function(C,V,oe,_e){this.type=C,this.input=V,this.beginIndex=oe,this.endIndex=_e};Qu.parse=function(C,V){if(C.length<=2||C.length>=5)return V.error("Expected 3 or 4 arguments, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1,Nn),_e=V.parse(C[2],2,ji);if(!oe||!_e)return null;if(!Ic(oe.type,[El(Nn),To,Nn]))return V.error("Expected first argument to be of type array or string, but found "+qs(oe.type)+" instead");if(C.length===4){var Pe=V.parse(C[3],3,ji);return Pe?new Qu(oe.type,oe,_e,Pe):null}else return new Qu(oe.type,oe,_e)},Qu.prototype.evaluate=function(C){var V=this.input.evaluate(C),oe=this.beginIndex.evaluate(C);if(!Xu(V,["string","array"]))throw new $s("Expected first argument to be of type array or string, but found "+qs(Zs(V))+" instead.");if(this.endIndex){var _e=this.endIndex.evaluate(C);return V.slice(oe,_e)}return V.slice(oe)},Qu.prototype.eachChild=function(C){C(this.input),C(this.beginIndex),this.endIndex&&C(this.endIndex)},Qu.prototype.outputDefined=function(){return!1},Qu.prototype.serialize=function(){if(this.endIndex!=null&&this.endIndex!==void 0){var C=this.endIndex.serialize();return["slice",this.input.serialize(),this.beginIndex.serialize(),C]}return["slice",this.input.serialize(),this.beginIndex.serialize()]};function ef(k,C){return k==="=="||k==="!="?C.kind==="boolean"||C.kind==="string"||C.kind==="number"||C.kind==="null"||C.kind==="value":C.kind==="string"||C.kind==="number"||C.kind==="value"}function Zt(k,C,V){return C===V}function fr(k,C,V){return C!==V}function Yr(k,C,V){return C<V}function qr(k,C,V){return C>V}function ba(k,C,V){return C<=V}function Ka(k,C,V){return C>=V}function oi(k,C,V,oe){return oe.compare(C,V)===0}function yi(k,C,V,oe){return!oi(k,C,V,oe)}function ki(k,C,V,oe){return oe.compare(C,V)<0}function Bi(k,C,V,oe){return oe.compare(C,V)>0}function li(k,C,V,oe){return oe.compare(C,V)<=0}function _i(k,C,V,oe){return oe.compare(C,V)>=0}function vi(k,C,V){var oe=k!=="=="&&k!=="!=";return function(){function _e(Pe,je,ct){this.type=Yn,this.lhs=Pe,this.rhs=je,this.collator=ct,this.hasUntypedArgument=Pe.type.kind==="value"||je.type.kind==="value"}return _e.parse=function(je,ct){if(je.length!==3&&je.length!==4)return ct.error("Expected two or three arguments.");var Lt=je[0],Nt=ct.parse(je[1],1,Nn);if(!Nt)return null;if(!ef(Lt,Nt.type))return ct.concat(1).error('"'+Lt+`" comparisons are not supported for type '`+qs(Nt.type)+"'.");var Xt=ct.parse(je[2],2,Nn);if(!Xt)return null;if(!ef(Lt,Xt.type))return ct.concat(2).error('"'+Lt+`" comparisons are not supported for type '`+qs(Xt.type)+"'.");if(Nt.type.kind!==Xt.type.kind&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot compare types '"+qs(Nt.type)+"' and '"+qs(Xt.type)+"'.");oe&&(Nt.type.kind==="value"&&Xt.type.kind!=="value"?Nt=new zl(Xt.type,[Nt]):Nt.type.kind!=="value"&&Xt.type.kind==="value"&&(Xt=new zl(Nt.type,[Xt])));var gr=null;if(je.length===4){if(Nt.type.kind!=="string"&&Xt.type.kind!=="string"&&Nt.type.kind!=="value"&&Xt.type.kind!=="value")return ct.error("Cannot use collator to compare non-string types.");if(gr=ct.parse(je[3],3,Zu),!gr)return null}return new _e(Nt,Xt,gr)},_e.prototype.evaluate=function(je){var ct=this.lhs.evaluate(je),Lt=this.rhs.evaluate(je);if(oe&&this.hasUntypedArgument){var Nt=Zs(ct),Xt=Zs(Lt);if(Nt.kind!==Xt.kind||!(Nt.kind==="string"||Nt.kind==="number"))throw new $s('Expected arguments for "'+k+'" to be (string, string) or (number, number), but found ('+Nt.kind+", "+Xt.kind+") instead.")}if(this.collator&&!oe&&this.hasUntypedArgument){var gr=Zs(ct),Br=Zs(Lt);if(gr.kind!=="string"||Br.kind!=="string")return C(je,ct,Lt)}return this.collator?V(je,ct,Lt,this.collator.evaluate(je)):C(je,ct,Lt)},_e.prototype.eachChild=function(je){je(this.lhs),je(this.rhs),this.collator&&je(this.collator)},_e.prototype.outputDefined=function(){return!0},_e.prototype.serialize=function(){var je=[k];return this.eachChild(function(ct){je.push(ct.serialize())}),je},_e}()}var ti=vi("==",Zt,oi),rn=vi("!=",fr,yi),Kn=vi("<",Yr,ki),Wn=vi(">",qr,Bi),Jn=vi("<=",ba,li),no=vi(">=",Ka,_i),en=function(C,V,oe,_e,Pe){this.type=To,this.number=C,this.locale=V,this.currency=oe,this.minFractionDigits=_e,this.maxFractionDigits=Pe};en.parse=function(C,V){if(C.length!==3)return V.error("Expected two arguments.");var oe=V.parse(C[1],1,ji);if(!oe)return null;var _e=C[2];if(typeof _e!="object"||Array.isArray(_e))return V.error("NumberFormat options argument must be an object.");var Pe=null;if(_e.locale&&(Pe=V.parse(_e.locale,1,To),!Pe))return null;var je=null;if(_e.currency&&(je=V.parse(_e.currency,1,To),!je))return null;var ct=null;if(_e["min-fraction-digits"]&&(ct=V.parse(_e["min-fraction-digits"],1,ji),!ct))return null;var Lt=null;return _e["max-fraction-digits"]&&(Lt=V.parse(_e["max-fraction-digits"],1,ji),!Lt)?null:new en(oe,Pe,je,ct,Lt)},en.prototype.evaluate=function(C){return new Intl.NumberFormat(this.locale?this.locale.evaluate(C):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(C):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(C):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(C):void 0}).format(this.number.evaluate(C))},en.prototype.eachChild=function(C){C(this.number),this.locale&&C(this.locale),this.currency&&C(this.currency),this.minFractionDigits&&C(this.minFractionDigits),this.maxFractionDigits&&C(this.maxFractionDigits)},en.prototype.outputDefined=function(){return!1},en.prototype.serialize=function(){var C={};return this.locale&&(C.locale=this.locale.serialize()),this.currency&&(C.currency=this.currency.serialize()),this.minFractionDigits&&(C["min-fraction-digits"]=this.minFractionDigits.serialize()),this.maxFractionDigits&&(C["max-fraction-digits"]=this.maxFractionDigits.serialize()),["number-format",this.number.serialize(),C]};var Ri=function(C){this.type=ji,this.input=C};Ri.parse=function(C,V){if(C.length!==2)return V.error("Expected 1 argument, but found "+(C.length-1)+" instead.");var oe=V.parse(C[1],1);return oe?oe.type.kind!=="array"&&oe.type.kind!=="string"&&oe.type.kind!=="value"?V.error("Expected argument of type string or array, but found "+qs(oe.type)+" instead."):new Ri(oe):null},Ri.prototype.evaluate=function(C){var V=this.input.evaluate(C);if(typeof V=="string")return V.length;if(Array.isArray(V))return V.length;throw new $s("Expected value to be of type string or array, but found "+qs(Zs(V))+" instead.")},Ri.prototype.eachChild=function(C){C(this.input)},Ri.prototype.outputDefined=function(){return!1},Ri.prototype.serialize=function(){var C=["length"];return this.eachChild(function(V){C.push(V.serialize())}),C};var co={"==":ti,"!=":rn,">":Wn,"<":Kn,">=":no,"<=":Jn,array:zl,at:cc,boolean:zl,case:Oc,coalesce:Vu,collator:Ku,format:Yu,image:Qs,in:Cl,"index-of":iu,interpolate:Vl,"interpolate-hcl":Vl,"interpolate-lab":Vl,length:Ri,let:Tc,literal:Bs,match:fc,number:zl,"number-format":en,object:zl,slice:Qu,step:vu,string:zl,"to-boolean":es,"to-color":es,"to-number":es,"to-string":es,var:xc,within:ku};function Wo(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=C[3];V=V.evaluate(k),oe=oe.evaluate(k),_e=_e.evaluate(k);var je=Pe?Pe.evaluate(k):1,ct=oc(V,oe,_e,je);if(ct)throw new $s(ct);return new Rs(V/255*je,oe/255*je,_e/255*je,je)}function bs(k,C){return k in C}function Xs(k,C){var V=C[k];return typeof V>"u"?null:V}function Ms(k,C,V,oe){for(;V<=oe;){var _e=V+oe>>1;if(C[_e]===k)return!0;C[_e]>k?oe=_e-1:V=_e+1}return!1}function Hs(k){return{type:k}}So.register(co,{error:[Wl,[To],function(k,C){var V=C[0];throw new $s(V.evaluate(k))}],typeof:[To,[Nn],function(k,C){var V=C[0];return qs(Zs(V.evaluate(k)))}],"to-rgba":[El(ji,4),[_s],function(k,C){var V=C[0];return V.evaluate(k).toArray()}],rgb:[_s,[ji,ji,ji],Wo],rgba:[_s,[ji,ji,ji,ji],Wo],has:{type:Yn,overloads:[[[To],function(k,C){var V=C[0];return bs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return bs(V.evaluate(k),oe.evaluate(k))}]]},get:{type:Nn,overloads:[[[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.properties())}],[[To,Yo],function(k,C){var V=C[0],oe=C[1];return Xs(V.evaluate(k),oe.evaluate(k))}]]},"feature-state":[Nn,[To],function(k,C){var V=C[0];return Xs(V.evaluate(k),k.featureState||{})}],properties:[Yo,[],function(k){return k.properties()}],"geometry-type":[To,[],function(k){return k.geometryType()}],id:[Nn,[],function(k){return k.id()}],zoom:[ji,[],function(k){return k.globals.zoom}],"heatmap-density":[ji,[],function(k){return k.globals.heatmapDensity||0}],"line-progress":[ji,[],function(k){return k.globals.lineProgress||0}],accumulated:[Nn,[],function(k){return k.globals.accumulated===void 0?null:k.globals.accumulated}],"+":[ji,Hs(ji),function(k,C){for(var V=0,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V+=Pe.evaluate(k)}return V}],"*":[ji,Hs(ji),function(k,C){for(var V=1,oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];V*=Pe.evaluate(k)}return V}],"-":{type:ji,overloads:[[[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)-oe.evaluate(k)}],[[ji],function(k,C){var V=C[0];return-V.evaluate(k)}]]},"/":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)/oe.evaluate(k)}],"%":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)%oe.evaluate(k)}],ln2:[ji,[],function(){return Math.LN2}],pi:[ji,[],function(){return Math.PI}],e:[ji,[],function(){return Math.E}],"^":[ji,[ji,ji],function(k,C){var V=C[0],oe=C[1];return Math.pow(V.evaluate(k),oe.evaluate(k))}],sqrt:[ji,[ji],function(k,C){var V=C[0];return Math.sqrt(V.evaluate(k))}],log10:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN10}],ln:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))}],log2:[ji,[ji],function(k,C){var V=C[0];return Math.log(V.evaluate(k))/Math.LN2}],sin:[ji,[ji],function(k,C){var V=C[0];return Math.sin(V.evaluate(k))}],cos:[ji,[ji],function(k,C){var V=C[0];return Math.cos(V.evaluate(k))}],tan:[ji,[ji],function(k,C){var V=C[0];return Math.tan(V.evaluate(k))}],asin:[ji,[ji],function(k,C){var V=C[0];return Math.asin(V.evaluate(k))}],acos:[ji,[ji],function(k,C){var V=C[0];return Math.acos(V.evaluate(k))}],atan:[ji,[ji],function(k,C){var V=C[0];return Math.atan(V.evaluate(k))}],min:[ji,Hs(ji),function(k,C){return Math.min.apply(Math,C.map(function(V){return V.evaluate(k)}))}],max:[ji,Hs(ji),function(k,C){return Math.max.apply(Math,C.map(function(V){return V.evaluate(k)}))}],abs:[ji,[ji],function(k,C){var V=C[0];return Math.abs(V.evaluate(k))}],round:[ji,[ji],function(k,C){var V=C[0],oe=V.evaluate(k);return oe<0?-Math.round(-oe):Math.round(oe)}],floor:[ji,[ji],function(k,C){var V=C[0];return Math.floor(V.evaluate(k))}],ceil:[ji,[ji],function(k,C){var V=C[0];return Math.ceil(V.evaluate(k))}],"filter-==":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1];return k.properties()[V.value]===oe.value}],"filter-id-==":[Yn,[Nn],function(k,C){var V=C[0];return k.id()===V.value}],"filter-type-==":[Yn,[To],function(k,C){var V=C[0];return k.geometryType()===V.value}],"filter-<":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e<Pe}],"filter-id-<":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe<_e}],"filter->":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>Pe}],"filter-id->":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>_e}],"filter-<=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e<=Pe}],"filter-id-<=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe<=_e}],"filter->=":[Yn,[To,Nn],function(k,C){var V=C[0],oe=C[1],_e=k.properties()[V.value],Pe=oe.value;return typeof _e==typeof Pe&&_e>=Pe}],"filter-id->=":[Yn,[Nn],function(k,C){var V=C[0],oe=k.id(),_e=V.value;return typeof oe==typeof _e&&oe>=_e}],"filter-has":[Yn,[Nn],function(k,C){var V=C[0];return V.value in k.properties()}],"filter-has-id":[Yn,[],function(k){return k.id()!==null&&k.id()!==void 0}],"filter-type-in":[Yn,[El(To)],function(k,C){var V=C[0];return V.value.indexOf(k.geometryType())>=0}],"filter-id-in":[Yn,[El(Nn)],function(k,C){var V=C[0];return V.value.indexOf(k.id())>=0}],"filter-in-small":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return oe.value.indexOf(k.properties()[V.value])>=0}],"filter-in-large":[Yn,[To,El(Nn)],function(k,C){var V=C[0],oe=C[1];return Ms(k.properties()[V.value],oe.value,0,oe.value.length-1)}],all:{type:Yn,overloads:[[[Yn,Yn],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)&&oe.evaluate(k)}],[Hs(Yn),function(k,C){for(var V=0,oe=C;V<oe.length;V+=1){var _e=oe[V];if(!_e.evaluate(k))return!1}return!0}]]},any:{type:Yn,overloads:[[[Yn,Yn],function(k,C){var V=C[0],oe=C[1];return V.evaluate(k)||oe.evaluate(k)}],[Hs(Yn),function(k,C){for(var V=0,oe=C;V<oe.length;V+=1){var _e=oe[V];if(_e.evaluate(k))return!0}return!1}]]},"!":[Yn,[Yn],function(k,C){var V=C[0];return!V.evaluate(k)}],"is-supported-script":[Yn,[To],function(k,C){var V=C[0],oe=k.globals&&k.globals.isSupportedScript;return oe?oe(V.evaluate(k)):!0}],upcase:[To,[To],function(k,C){var V=C[0];return V.evaluate(k).toUpperCase()}],downcase:[To,[To],function(k,C){var V=C[0];return V.evaluate(k).toLowerCase()}],concat:[To,Hs(Nn),function(k,C){return C.map(function(V){return _l(V.evaluate(k))}).join("")}],"resolved-locale":[To,[Zu],function(k,C){var V=C[0];return V.evaluate(k).resolvedLocale()}]});function vs(k){return{result:"success",value:k}}function Il(k){return{result:"error",value:k}}function fl(k){return k["property-type"]==="data-driven"||k["property-type"]==="cross-faded-data-driven"}function tl(k){return!!k.expression&&k.expression.parameters.indexOf("zoom")>-1}function Ln(k){return!!k.expression&&k.expression.interpolated}function Ao(k){return k instanceof Number?"number":k instanceof String?"string":k instanceof Boolean?"boolean":Array.isArray(k)?"array":k===null?"null":typeof k}function js(k){return typeof k=="object"&&k!==null&&!Array.isArray(k)}function Ts(k){return k}function nu(k,C){var V=C.type==="color",oe=k.stops&&typeof k.stops[0][0]=="object",_e=oe||k.property!==void 0,Pe=oe||!_e,je=k.type||(Ln(C)?"exponential":"interval");if(V&&(k=Os({},k),k.stops&&(k.stops=k.stops.map(function(Tn){return[Tn[0],Rs.parse(Tn[1])]})),k.default?k.default=Rs.parse(k.default):k.default=Rs.parse(C.default)),k.colorSpace&&k.colorSpace!=="rgb"&&!$f[k.colorSpace])throw new Error("Unknown color space: "+k.colorSpace);var ct,Lt,Nt;if(je==="exponential")ct=yu;else if(je==="interval")ct=tf;else if(je==="categorical"){ct=ec,Lt=Object.create(null);for(var Xt=0,gr=k.stops;Xt<gr.length;Xt+=1){var Br=gr[Xt];Lt[Br[0]]=Br[1]}Nt=typeof k.stops[0][0]}else if(je==="identity")ct=Bc;else throw new Error('Unknown function type "'+je+'"');if(oe){for(var Rr={},na=[],Ia=0;Ia<k.stops.length;Ia++){var ii=k.stops[Ia],Wa=ii[0].zoom;Rr[Wa]===void 0&&(Rr[Wa]={zoom:Wa,type:k.type,property:k.property,default:k.default,stops:[]},na.push(Wa)),Rr[Wa].stops.push([ii[0].value,ii[1]])}for(var Si=[],ci=0,Ai=na;ci<Ai.length;ci+=1){var Li=Ai[ci];Si.push([Rr[Li].zoom,nu(Rr[Li],C)])}var Ki={name:"linear"};return{kind:"composite",interpolationType:Ki,interpolationFactor:Vl.interpolationFactor.bind(void 0,Ki),zoomStops:Si.map(function(Tn){return Tn[0]}),evaluate:function(lo,qn){var to=lo.zoom;return yu({stops:Si,base:k.base},C,to).evaluate(to,qn)}}}else if(Pe){var kn=je==="exponential"?{name:"exponential",base:k.base!==void 0?k.base:1}:null;return{kind:"camera",interpolationType:kn,interpolationFactor:Vl.interpolationFactor.bind(void 0,kn),zoomStops:k.stops.map(function(Tn){return Tn[0]}),evaluate:function(Tn){var lo=Tn.zoom;return ct(k,C,lo,Lt,Nt)}}}else return{kind:"source",evaluate:function(lo,qn){var to=qn&&qn.properties?qn.properties[k.property]:void 0;return to===void 0?Pu(k.default,C.default):ct(k,C,to,Lt,Nt)}}}function Pu(k,C,V){if(k!==void 0)return k;if(C!==void 0)return C;if(V!==void 0)return V}function ec(k,C,V,oe,_e){var Pe=typeof V===_e?oe[V]:void 0;return Pu(Pe,k.default,C.default)}function tf(k,C,V){if(Ao(V)!=="number")return Pu(k.default,C.default);var oe=k.stops.length;if(oe===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[oe-1][0])return k.stops[oe-1][1];var _e=$u(k.stops.map(function(Pe){return Pe[0]}),V);return k.stops[_e][1]}function yu(k,C,V){var oe=k.base!==void 0?k.base:1;if(Ao(V)!=="number")return Pu(k.default,C.default);var _e=k.stops.length;if(_e===1||V<=k.stops[0][0])return k.stops[0][1];if(V>=k.stops[_e-1][0])return k.stops[_e-1][1];var Pe=$u(k.stops.map(function(gr){return gr[0]}),V),je=Iu(V,oe,k.stops[Pe][0],k.stops[Pe+1][0]),ct=k.stops[Pe][1],Lt=k.stops[Pe+1][1],Nt=Uu[C.type]||Ts;if(k.colorSpace&&k.colorSpace!=="rgb"){var Xt=$f[k.colorSpace];Nt=function(gr,Br){return Xt.reverse(Xt.interpolate(Xt.forward(gr),Xt.forward(Br),je))}}return typeof ct.evaluate=="function"?{evaluate:function(){for(var Br=[],Rr=arguments.length;Rr--;)Br[Rr]=arguments[Rr];var na=ct.evaluate.apply(void 0,Br),Ia=Lt.evaluate.apply(void 0,Br);if(!(na===void 0||Ia===void 0))return Nt(na,Ia,je)}}:Nt(ct,Lt,je)}function Bc(k,C,V){return C.type==="color"?V=Rs.parse(V):C.type==="formatted"?V=Zl.fromString(V.toString()):C.type==="resolvedImage"?V=yl.fromString(V.toString()):Ao(V)!==C.type&&(C.type!=="enum"||!C.values[V])&&(V=void 0),Pu(V,k.default,C.default)}function Iu(k,C,V,oe){var _e=oe-V,Pe=k-V;return _e===0?0:C===1?Pe/_e:(Math.pow(C,Pe)-1)/(Math.pow(C,_e)-1)}var Ac=function(C,V){this.expression=C,this._warningHistory={},this._evaluator=new Ss,this._defaultValue=V?Se(V):null,this._enumValues=V&&V.type==="enum"?V.values:null};Ac.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._evaluator.globals=C,this._evaluator.feature=V,this._evaluator.featureState=oe,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je,this.expression.evaluate(this._evaluator)},Ac.prototype.evaluate=function(C,V,oe,_e,Pe,je){this._evaluator.globals=C,this._evaluator.feature=V||null,this._evaluator.featureState=oe||null,this._evaluator.canonical=_e,this._evaluator.availableImages=Pe||null,this._evaluator.formattedSection=je||null;try{var ct=this.expression.evaluate(this._evaluator);if(ct==null||typeof ct=="number"&&ct!==ct)return this._defaultValue;if(this._enumValues&&!(ct in this._enumValues))throw new $s("Expected value to be one of "+Object.keys(this._enumValues).map(function(Lt){return JSON.stringify(Lt)}).join(", ")+", but found "+JSON.stringify(ct)+" instead.");return ct}catch(Lt){return this._warningHistory[Lt.message]||(this._warningHistory[Lt.message]=!0,typeof console<"u"&&console.warn(Lt.message)),this._defaultValue}};function ro(k){return Array.isArray(k)&&k.length>0&&typeof k[0]=="string"&&k[0]in co}function Po(k,C){var V=new kl(co,[],C?we(C):void 0),oe=V.parse(k,void 0,void 0,void 0,C&&C.type==="string"?{typeAnnotation:"coerce"}:void 0);return oe?vs(new Ac(oe,C)):Il(V.errors)}var Nc=function(C,V){this.kind=C,this._styleExpression=V,this.isStateDependent=C!=="constant"&&!ru(V.expression)};Nc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},Nc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)};var hc=function(C,V,oe,_e){this.kind=C,this.zoomStops=oe,this._styleExpression=V,this.isStateDependent=C!=="camera"&&!ru(V.expression),this.interpolationType=_e};hc.prototype.evaluateWithoutErrorHandling=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluateWithoutErrorHandling(C,V,oe,_e,Pe,je)},hc.prototype.evaluate=function(C,V,oe,_e,Pe,je){return this._styleExpression.evaluate(C,V,oe,_e,Pe,je)},hc.prototype.interpolationFactor=function(C,V,oe){return this.interpolationType?Vl.interpolationFactor(this.interpolationType,C,V,oe):0};function pc(k,C){if(k=Po(k,C),k.result==="error")return k;var V=k.value.expression,oe=fh(V);if(!oe&&!fl(C))return Il([new fs("","data expressions not supported")]);var _e=Cu(V,["zoom"]);if(!_e&&!tl(C))return Il([new fs("","zoom expressions not supported")]);var Pe=ae(V);if(!Pe&&!_e)return Il([new fs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')]);if(Pe instanceof fs)return Il([Pe]);if(Pe instanceof Vl&&!Ln(C))return Il([new fs("",'"interpolate" expressions cannot be used with this property')]);if(!Pe)return vs(oe?new Nc("constant",k.value):new Nc("source",k.value));var je=Pe instanceof Vl?Pe.interpolation:void 0;return vs(oe?new hc("camera",k.value,Pe.labels,je):new hc("composite",k.value,Pe.labels,je))}var Oe=function(C,V){this._parameters=C,this._specification=V,Os(this,nu(this._parameters,this._specification))};Oe.deserialize=function(C){return new Oe(C._parameters,C._specification)},Oe.serialize=function(C){return{_parameters:C._parameters,_specification:C._specification}};function R(k,C){if(js(k))return new Oe(k,C);if(ro(k)){var V=pc(k,C);if(V.result==="error")throw new Error(V.value.map(function(_e){return _e.key+": "+_e.message}).join(", "));return V.value}else{var oe=k;return typeof k=="string"&&C.type==="color"&&(oe=Rs.parse(k)),{kind:"constant",evaluate:function(){return oe}}}}function ae(k){var C=null;if(k instanceof Tc)C=ae(k.result);else if(k instanceof Vu)for(var V=0,oe=k.args;V<oe.length;V+=1){var _e=oe[V];if(C=ae(_e),C)break}else(k instanceof vu||k instanceof Vl)&&k.input instanceof So&&k.input.name==="zoom"&&(C=k);return C instanceof fs||k.eachChild(function(Pe){var je=ae(Pe);je instanceof fs?C=je:!C&&je?C=new fs("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):C&&je&&C!==je&&(C=new fs("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),C}function we(k){var C={color:_s,string:To,number:ji,enum:To,boolean:Yn,formatted:ml,resolvedImage:Bu};return k.type==="array"?El(C[k.value]||Nn,k.length):C[k.type]}function Se(k){return k.type==="color"&&js(k.default)?new Rs(0,0,0,0):k.type==="color"?Rs.parse(k.default)||null:k.default===void 0?null:k.default}function De(k){var C=k.key,V=k.value,oe=k.valueSpec||{},_e=k.objectElementValidators||{},Pe=k.style,je=k.styleSpec,ct=[],Lt=Ao(V);if(Lt!=="object")return[new mn(C,V,"object expected, "+Lt+" found")];for(var Nt in V){var Xt=Nt.split(".")[0],gr=oe[Xt]||oe["*"],Br=void 0;if(_e[Xt])Br=_e[Xt];else if(oe[Xt])Br=yo;else if(_e["*"])Br=_e["*"];else if(oe["*"])Br=yo;else{ct.push(new mn(C,V[Nt],'unknown property "'+Nt+'"'));continue}ct=ct.concat(Br({key:(C&&C+".")+Nt,value:V[Nt],valueSpec:gr,style:Pe,styleSpec:je,object:V,objectKey:Nt},V))}for(var Rr in oe)_e[Rr]||oe[Rr].required&&oe[Rr].default===void 0&&V[Rr]===void 0&&ct.push(new mn(C,V,'missing required property "'+Rr+'"'));return ct}function ft(k){var C=k.value,V=k.valueSpec,oe=k.style,_e=k.styleSpec,Pe=k.key,je=k.arrayElementValidator||yo;if(Ao(C)!=="array")return[new mn(Pe,C,"array expected, "+Ao(C)+" found")];if(V.length&&C.length!==V.length)return[new mn(Pe,C,"array length "+V.length+" expected, length "+C.length+" found")];if(V["min-length"]&&C.length<V["min-length"])return[new mn(Pe,C,"array length at least "+V["min-length"]+" expected, length "+C.length+" found")];var ct={type:V.value,values:V.values};_e.$version<7&&(ct.function=V.function),Ao(V.value)==="object"&&(ct=V.value);for(var Lt=[],Nt=0;Nt<C.length;Nt++)Lt=Lt.concat(je({array:C,arrayIndex:Nt,value:C[Nt],valueSpec:ct,style:oe,styleSpec:_e,key:Pe+"["+Nt+"]"}));return Lt}function bt(k){var C=k.key,V=k.value,oe=k.valueSpec,_e=Ao(V);return _e==="number"&&V!==V&&(_e="NaN"),_e!=="number"?[new mn(C,V,"number expected, "+_e+" found")]:"minimum"in oe&&V<oe.minimum?[new mn(C,V,V+" is less than the minimum value "+oe.minimum)]:"maximum"in oe&&V>oe.maximum?[new mn(C,V,V+" is greater than the maximum value "+oe.maximum)]:[]}function Dt(k){var C=k.valueSpec,V=so(k.value.type),oe,_e={},Pe,je,ct=V!=="categorical"&&k.value.property===void 0,Lt=!ct,Nt=Ao(k.value.stops)==="array"&&Ao(k.value.stops[0])==="array"&&Ao(k.value.stops[0][0])==="object",Xt=De({key:k.key,value:k.value,valueSpec:k.styleSpec.function,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{stops:gr,default:na}});return V==="identity"&&ct&&Xt.push(new mn(k.key,k.value,'missing required property "property"')),V!=="identity"&&!k.value.stops&&Xt.push(new mn(k.key,k.value,'missing required property "stops"')),V==="exponential"&&k.valueSpec.expression&&!Ln(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"exponential functions not supported")),k.styleSpec.$version>=8&&(Lt&&!fl(k.valueSpec)?Xt.push(new mn(k.key,k.value,"property functions not supported")):ct&&!tl(k.valueSpec)&&Xt.push(new mn(k.key,k.value,"zoom functions not supported"))),(V==="categorical"||Nt)&&k.value.property===void 0&&Xt.push(new mn(k.key,k.value,'"property" property is required')),Xt;function gr(Ia){if(V==="identity")return[new mn(Ia.key,Ia.value,'identity function may not have a "stops" property')];var ii=[],Wa=Ia.value;return ii=ii.concat(ft({key:Ia.key,value:Wa,valueSpec:Ia.valueSpec,style:Ia.style,styleSpec:Ia.styleSpec,arrayElementValidator:Br})),Ao(Wa)==="array"&&Wa.length===0&&ii.push(new mn(Ia.key,Wa,"array must have at least one stop")),ii}function Br(Ia){var ii=[],Wa=Ia.value,Si=Ia.key;if(Ao(Wa)!=="array")return[new mn(Si,Wa,"array expected, "+Ao(Wa)+" found")];if(Wa.length!==2)return[new mn(Si,Wa,"array length 2 expected, length "+Wa.length+" found")];if(Nt){if(Ao(Wa[0])!=="object")return[new mn(Si,Wa,"object expected, "+Ao(Wa[0])+" found")];if(Wa[0].zoom===void 0)return[new mn(Si,Wa,"object stop key must have zoom")];if(Wa[0].value===void 0)return[new mn(Si,Wa,"object stop key must have value")];if(je&&je>so(Wa[0].zoom))return[new mn(Si,Wa[0].zoom,"stop zoom values must appear in ascending order")];so(Wa[0].zoom)!==je&&(je=so(Wa[0].zoom),Pe=void 0,_e={}),ii=ii.concat(De({key:Si+"[0]",value:Wa[0],valueSpec:{zoom:{}},style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{zoom:bt,value:Rr}}))}else ii=ii.concat(Rr({key:Si+"[0]",value:Wa[0],valueSpec:{},style:Ia.style,styleSpec:Ia.styleSpec},Wa));return ro(Ns(Wa[1]))?ii.concat([new mn(Si+"[1]",Wa[1],"expressions are not allowed in function stops.")]):ii.concat(yo({key:Si+"[1]",value:Wa[1],valueSpec:C,style:Ia.style,styleSpec:Ia.styleSpec}))}function Rr(Ia,ii){var Wa=Ao(Ia.value),Si=so(Ia.value),ci=Ia.value!==null?Ia.value:ii;if(!oe)oe=Wa;else if(Wa!==oe)return[new mn(Ia.key,ci,Wa+" stop domain type must match previous stop domain type "+oe)];if(Wa!=="number"&&Wa!=="string"&&Wa!=="boolean")return[new mn(Ia.key,ci,"stop domain value must be a number, string, or boolean")];if(Wa!=="number"&&V!=="categorical"){var Ai="number expected, "+Wa+" found";return fl(C)&&V===void 0&&(Ai+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new mn(Ia.key,ci,Ai)]}return V==="categorical"&&Wa==="number"&&(!isFinite(Si)||Math.floor(Si)!==Si)?[new mn(Ia.key,ci,"integer expected, found "+Si)]:V!=="categorical"&&Wa==="number"&&Pe!==void 0&&Si<Pe?[new mn(Ia.key,ci,"stop domain values must appear in ascending order")]:(Pe=Si,V==="categorical"&&Si in _e?[new mn(Ia.key,ci,"stop domain values must be unique")]:(_e[Si]=!0,[]))}function na(Ia){return yo({key:Ia.key,value:Ia.value,valueSpec:C,style:Ia.style,styleSpec:Ia.styleSpec})}}function Yt(k){var C=(k.expressionContext==="property"?pc:Po)(Ns(k.value),k.valueSpec);if(C.result==="error")return C.value.map(function(oe){return new mn(""+k.key+oe.key,k.value,oe.message)});var V=C.value.expression||C.value._styleExpression.expression;if(k.expressionContext==="property"&&k.propertyKey==="text-font"&&!V.outputDefined())return[new mn(k.key,k.value,'Invalid data expression for "'+k.propertyKey+'". Output values must be contained as literals within the expression.')];if(k.expressionContext==="property"&&k.propertyType==="layout"&&!ru(V))return[new mn(k.key,k.value,'"feature-state" data expressions are not supported with layout properties.')];if(k.expressionContext==="filter"&&!ru(V))return[new mn(k.key,k.value,'"feature-state" data expressions are not supported with filters.')];if(k.expressionContext&&k.expressionContext.indexOf("cluster")===0){if(!Cu(V,["zoom","feature-state"]))return[new mn(k.key,k.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(k.expressionContext==="cluster-initial"&&!fh(V))return[new mn(k.key,k.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function cr(k){var C=k.value,V=k.key,oe=Ao(C);return oe!=="boolean"?[new mn(V,C,"boolean expected, "+oe+" found")]:[]}function hr(k){var C=k.key,V=k.value,oe=Ao(V);return oe!=="string"?[new mn(C,V,"color expected, "+oe+" found")]:bf(V)===null?[new mn(C,V,'color expected, "'+V+'" found')]:[]}function jr(k){var C=k.key,V=k.value,oe=k.valueSpec,_e=[];return Array.isArray(oe.values)?oe.values.indexOf(so(V))===-1&&_e.push(new mn(C,V,"expected one of ["+oe.values.join(", ")+"], "+JSON.stringify(V)+" found")):Object.keys(oe.values).indexOf(so(V))===-1&&_e.push(new mn(C,V,"expected one of ["+Object.keys(oe.values).join(", ")+"], "+JSON.stringify(V)+" found")),_e}function ea(k){if(k===!0||k===!1)return!0;if(!Array.isArray(k)||k.length===0)return!1;switch(k[0]){case"has":return k.length>=2&&k[1]!=="$id"&&k[1]!=="$type";case"in":return k.length>=3&&(typeof k[1]!="string"||Array.isArray(k[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return k.length!==3||Array.isArray(k[1])||Array.isArray(k[2]);case"any":case"all":for(var C=0,V=k.slice(1);C<V.length;C+=1){var oe=V[C];if(!ea(oe)&&typeof oe!="boolean")return!1}return!0;default:return!0}}var qe={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function Je(k){if(k==null)return{filter:function(){return!0},needGeometry:!1};ea(k)||(k=At(k));var C=Po(k,qe);if(C.result==="error")throw new Error(C.value.map(function(oe){return oe.key+": "+oe.message}).join(", "));var V=ht(k);return{filter:function(oe,_e,Pe){return C.value.evaluate(oe,_e,{},Pe)},needGeometry:V}}function ot(k,C){return k<C?-1:k>C?1:0}function ht(k){if(!Array.isArray(k))return!1;if(k[0]==="within")return!0;for(var C=1;C<k.length;C++)if(ht(k[C]))return!0;return!1}function At(k){if(!k)return!0;var C=k[0];if(k.length<=1)return C!=="any";var V=C==="=="?_t(k[1],k[2],"=="):C==="!="?pr(_t(k[1],k[2],"==")):C==="<"||C===">"||C==="<="||C===">="?_t(k[1],k[2],C):C==="any"?Pt(k.slice(1)):C==="all"?["all"].concat(k.slice(1).map(At)):C==="none"?["all"].concat(k.slice(1).map(At).map(pr)):C==="in"?er(k[1],k.slice(2)):C==="!in"?pr(er(k[1],k.slice(2))):C==="has"?nr(k[1]):C==="!has"?pr(nr(k[1])):C==="within"?k:!0;return V}function _t(k,C,V){switch(k){case"$type":return["filter-type-"+V,C];case"$id":return["filter-id-"+V,C];default:return["filter-"+V,k,C]}}function Pt(k){return["any"].concat(k.map(At))}function er(k,C){if(C.length===0)return!1;switch(k){case"$type":return["filter-type-in",["literal",C]];case"$id":return["filter-id-in",["literal",C]];default:return C.length>200&&!C.some(function(V){return typeof V!=typeof C[0]})?["filter-in-large",k,["literal",C.sort(ot)]]:["filter-in-small",k,["literal",C]]}}function nr(k){switch(k){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",k]}}function pr(k){return["!",k]}function Sr(k){return ea(Ns(k.value))?Yt(Os({},k,{expressionContext:"filter",valueSpec:{value:"boolean"}})):Wr(k)}function Wr(k){var C=k.value,V=k.key;if(Ao(C)!=="array")return[new mn(V,C,"array expected, "+Ao(C)+" found")];var oe=k.styleSpec,_e,Pe=[];if(C.length<1)return[new mn(V,C,"filter array must have at least 1 element")];switch(Pe=Pe.concat(jr({key:V+"[0]",value:C[0],valueSpec:oe.filter_operator,style:k.style,styleSpec:k.styleSpec})),so(C[0])){case"<":case"<=":case">":case">=":C.length>=2&&so(C[1])==="$type"&&Pe.push(new mn(V,C,'"$type" cannot be use with operator "'+C[0]+'"'));case"==":case"!=":C.length!==3&&Pe.push(new mn(V,C,'filter array for operator "'+C[0]+'" must have 3 elements'));case"in":case"!in":C.length>=2&&(_e=Ao(C[1]),_e!=="string"&&Pe.push(new mn(V+"[1]",C[1],"string expected, "+_e+" found")));for(var je=2;je<C.length;je++)_e=Ao(C[je]),so(C[1])==="$type"?Pe=Pe.concat(jr({key:V+"["+je+"]",value:C[je],valueSpec:oe.geometry_type,style:k.style,styleSpec:k.styleSpec})):_e!=="string"&&_e!=="number"&&_e!=="boolean"&&Pe.push(new mn(V+"["+je+"]",C[je],"string, number, or boolean expected, "+_e+" found"));break;case"any":case"all":case"none":for(var ct=1;ct<C.length;ct++)Pe=Pe.concat(Wr({key:V+"["+ct+"]",value:C[ct],style:k.style,styleSpec:k.styleSpec}));break;case"has":case"!has":_e=Ao(C[1]),C.length!==2?Pe.push(new mn(V,C,'filter array for "'+C[0]+'" operator must have 2 elements')):_e!=="string"&&Pe.push(new mn(V+"[1]",C[1],"string expected, "+_e+" found"));break;case"within":_e=Ao(C[1]),C.length!==2?Pe.push(new mn(V,C,'filter array for "'+C[0]+'" operator must have 2 elements')):_e!=="object"&&Pe.push(new mn(V+"[1]",C[1],"object expected, "+_e+" found"));break}return Pe}function ha(k,C){var V=k.key,oe=k.style,_e=k.styleSpec,Pe=k.value,je=k.objectKey,ct=_e[C+"_"+k.layerType];if(!ct)return[];var Lt=je.match(/^(.*)-transition$/);if(C==="paint"&&Lt&&ct[Lt[1]]&&ct[Lt[1]].transition)return yo({key:V,value:Pe,valueSpec:_e.transition,style:oe,styleSpec:_e});var Nt=k.valueSpec||ct[je];if(!Nt)return[new mn(V,Pe,'unknown property "'+je+'"')];var Xt;if(Ao(Pe)==="string"&&fl(Nt)&&!Nt.tokens&&(Xt=/^{([^}]+)}$/.exec(Pe)))return[new mn(V,Pe,'"'+je+'" does not support interpolation syntax\nUse an identity property function instead: `{ "type": "identity", "property": '+JSON.stringify(Xt[1])+" }`.")];var gr=[];return k.layerType==="symbol"&&(je==="text-field"&&oe&&!oe.glyphs&&gr.push(new mn(V,Pe,'use of "text-field" requires a style "glyphs" property')),je==="text-font"&&js(Ns(Pe))&&so(Pe.type)==="identity"&&gr.push(new mn(V,Pe,'"text-font" does not support identity functions'))),gr.concat(yo({key:k.key,value:Pe,valueSpec:Nt,style:oe,styleSpec:_e,expressionContext:"property",propertyType:C,propertyKey:je}))}function ga(k){return ha(k,"paint")}function Pa(k){return ha(k,"layout")}function Ja(k){var C=[],V=k.value,oe=k.key,_e=k.style,Pe=k.styleSpec;!V.type&&!V.ref&&C.push(new mn(oe,V,'either "type" or "ref" is required'));var je=so(V.type),ct=so(V.ref);if(V.id)for(var Lt=so(V.id),Nt=0;Nt<k.arrayIndex;Nt++){var Xt=_e.layers[Nt];so(Xt.id)===Lt&&C.push(new mn(oe,V.id,'duplicate layer id "'+V.id+'", previously used at line '+Xt.id.__line__))}if("ref"in V){["type","source","source-layer","filter","layout"].forEach(function(na){na in V&&C.push(new mn(oe,V[na],'"'+na+'" is prohibited for ref layers'))});var gr;_e.layers.forEach(function(na){so(na.id)===ct&&(gr=na)}),gr?gr.ref?C.push(new mn(oe,V.ref,"ref cannot reference another ref layer")):je=so(gr.type):C.push(new mn(oe,V.ref,'ref layer "'+ct+'" not found'))}else if(je!=="background")if(!V.source)C.push(new mn(oe,V,'missing required property "source"'));else{var Br=_e.sources&&_e.sources[V.source],Rr=Br&&so(Br.type);Br?Rr==="vector"&&je==="raster"?C.push(new mn(oe,V.source,'layer "'+V.id+'" requires a raster source')):Rr==="raster"&&je!=="raster"?C.push(new mn(oe,V.source,'layer "'+V.id+'" requires a vector source')):Rr==="vector"&&!V["source-layer"]?C.push(new mn(oe,V,'layer "'+V.id+'" must specify a "source-layer"')):Rr==="raster-dem"&&je!=="hillshade"?C.push(new mn(oe,V.source,"raster-dem source can only be used with layer type 'hillshade'.")):je==="line"&&V.paint&&V.paint["line-gradient"]&&(Rr!=="geojson"||!Br.lineMetrics)&&C.push(new mn(oe,V,'layer "'+V.id+'" specifies a line-gradient, which requires a GeoJSON source with `lineMetrics` enabled.')):C.push(new mn(oe,V.source,'source "'+V.source+'" not found'))}return C=C.concat(De({key:oe,value:V,valueSpec:Pe.layer,style:k.style,styleSpec:k.styleSpec,objectElementValidators:{"*":function(){return[]},type:function(){return yo({key:oe+".type",value:V.type,valueSpec:Pe.layer.type,style:k.style,styleSpec:k.styleSpec,object:V,objectKey:"type"})},filter:Sr,layout:function(Ia){return De({layer:V,key:Ia.key,value:Ia.value,style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{"*":function(Wa){return Pa(Os({layerType:je},Wa))}}})},paint:function(Ia){return De({layer:V,key:Ia.key,value:Ia.value,style:Ia.style,styleSpec:Ia.styleSpec,objectElementValidators:{"*":function(Wa){return ga(Os({layerType:je},Wa))}}})}}})),C}function di(k){var C=k.value,V=k.key,oe=Ao(C);return oe!=="string"?[new mn(V,C,"string expected, "+oe+" found")]:[]}var pi={promoteId:$i};function Ci(k){var C=k.value,V=k.key,oe=k.styleSpec,_e=k.style;if(!C.type)return[new mn(V,C,'"type" is required')];var Pe=so(C.type),je;switch(Pe){case"vector":case"raster":case"raster-dem":return je=De({key:V,value:C,valueSpec:oe["source_"+Pe.replace("-","_")],style:k.style,styleSpec:oe,objectElementValidators:pi}),je;case"geojson":if(je=De({key:V,value:C,valueSpec:oe.source_geojson,style:_e,styleSpec:oe,objectElementValidators:pi}),C.cluster)for(var ct in C.clusterProperties){var Lt=C.clusterProperties[ct],Nt=Lt[0],Xt=Lt[1],gr=typeof Nt=="string"?[Nt,["accumulated"],["get",ct]]:Nt;je.push.apply(je,Yt({key:V+"."+ct+".map",value:Xt,expressionContext:"cluster-map"})),je.push.apply(je,Yt({key:V+"."+ct+".reduce",value:gr,expressionContext:"cluster-reduce"}))}return je;case"video":return De({key:V,value:C,valueSpec:oe.source_video,style:_e,styleSpec:oe});case"image":return De({key:V,value:C,valueSpec:oe.source_image,style:_e,styleSpec:oe});case"canvas":return[new mn(V,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return jr({key:V+".type",value:C.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:_e,styleSpec:oe})}}function $i(k){var C=k.key,V=k.value;if(Ao(V)==="string")return di({key:C,value:V});var oe=[];for(var _e in V)oe.push.apply(oe,di({key:C+"."+_e,value:V[_e]}));return oe}function Bn(k){var C=k.value,V=k.styleSpec,oe=V.light,_e=k.style,Pe=[],je=Ao(C);if(C===void 0)return Pe;if(je!=="object")return Pe=Pe.concat([new mn("light",C,"object expected, "+je+" found")]),Pe;for(var ct in C){var Lt=ct.match(/^(.*)-transition$/);Lt&&oe[Lt[1]]&&oe[Lt[1]].transition?Pe=Pe.concat(yo({key:ct,value:C[ct],valueSpec:V.transition,style:_e,styleSpec:V})):oe[ct]?Pe=Pe.concat(yo({key:ct,value:C[ct],valueSpec:oe[ct],style:_e,styleSpec:V})):Pe=Pe.concat([new mn(ct,C[ct],'unknown property "'+ct+'"')])}return Pe}function Sn(k){return di(k).length===0?[]:Yt(k)}function ho(k){return di(k).length===0?[]:Yt(k)}var ts={"*":function(){return[]},array:ft,boolean:cr,number:bt,color:hr,constants:ol,enum:jr,filter:Sr,function:Dt,layer:Ja,object:De,source:Ci,light:Bn,string:di,formatted:Sn,resolvedImage:ho};function yo(k){var C=k.value,V=k.valueSpec,oe=k.styleSpec;if(V.expression&&js(so(C)))return Dt(k);if(V.expression&&ro(Ns(C)))return Yt(k);if(V.type&&ts[V.type])return ts[V.type](k);var _e=De(Os({},k,{valueSpec:V.type?oe[V.type]:V}));return _e}function Vo(k){var C=k.value,V=k.key,oe=di(k);return oe.length||(C.indexOf("{fontstack}")===-1&&oe.push(new mn(V,C,'"glyphs" url must include a "{fontstack}" token')),C.indexOf("{range}")===-1&&oe.push(new mn(V,C,'"glyphs" url must include a "{range}" token'))),oe}function ls(k,C){C===void 0&&(C=fi);var V=[];return V=V.concat(yo({key:"",value:k,valueSpec:C.$root,styleSpec:C,style:k,objectElementValidators:{glyphs:Vo,"*":function(){return[]}}})),k.constants&&(V=V.concat(ol({key:"constants",value:k.constants,style:k,styleSpec:C}))),rl(V)}ls.source=Ys(Ci),ls.light=Ys(Bn),ls.layer=Ys(Ja),ls.filter=Ys(Sr),ls.paintProperty=Ys(ga),ls.layoutProperty=Ys(Pa);function rl(k){return[].concat(k).sort(function(C,V){return C.line-V.line})}function Ys(k){return function(){for(var C=[],V=arguments.length;V--;)C[V]=arguments[V];return rl(k.apply(this,C))}}var Zo=ls,Go=Zo.light,Rl=Zo.paintProperty,Xl=Zo.layoutProperty;function qu(k,C){var V=!1;if(C&&C.length)for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe];k.fire(new Fr(new Error(Pe.message))),V=!0}return V}var fu=ou,bl=3;function ou(k,C,V){var oe=this.cells=[];if(k instanceof ArrayBuffer){this.arrayBuffer=k;var _e=new Int32Array(this.arrayBuffer);k=_e[0],C=_e[1],V=_e[2],this.d=C+2*V;for(var Pe=0;Pe<this.d*this.d;Pe++){var je=_e[bl+Pe],ct=_e[bl+Pe+1];oe.push(je===ct?null:_e.subarray(je,ct))}var Lt=_e[bl+oe.length],Nt=_e[bl+oe.length+1];this.keys=_e.subarray(Lt,Nt),this.bboxes=_e.subarray(Nt),this.insert=this._insertReadonly}else{this.d=C+2*V;for(var Xt=0;Xt<this.d*this.d;Xt++)oe.push([]);this.keys=[],this.bboxes=[]}this.n=C,this.extent=k,this.padding=V,this.scale=C/k,this.uid=0;var gr=V/C*k;this.min=-gr,this.max=k+gr}ou.prototype.insert=function(k,C,V,oe,_e){this._forEachCell(C,V,oe,_e,this._insertCell,this.uid++),this.keys.push(k),this.bboxes.push(C),this.bboxes.push(V),this.bboxes.push(oe),this.bboxes.push(_e)},ou.prototype._insertReadonly=function(){throw"Cannot insert into a GridIndex created from an ArrayBuffer."},ou.prototype._insertCell=function(k,C,V,oe,_e,Pe){this.cells[_e].push(Pe)},ou.prototype.query=function(k,C,V,oe,_e){var Pe=this.min,je=this.max;if(k<=Pe&&C<=Pe&&je<=V&&je<=oe&&!_e)return Array.prototype.slice.call(this.keys);var ct=[],Lt={};return this._forEachCell(k,C,V,oe,this._queryCell,ct,Lt,_e),ct},ou.prototype._queryCell=function(k,C,V,oe,_e,Pe,je,ct){var Lt=this.cells[_e];if(Lt!==null)for(var Nt=this.keys,Xt=this.bboxes,gr=0;gr<Lt.length;gr++){var Br=Lt[gr];if(je[Br]===void 0){var Rr=Br*4;(ct?ct(Xt[Rr+0],Xt[Rr+1],Xt[Rr+2],Xt[Rr+3]):k<=Xt[Rr+2]&&C<=Xt[Rr+3]&&V>=Xt[Rr+0]&&oe>=Xt[Rr+1])?(je[Br]=!0,Pe.push(Nt[Br])):je[Br]=!1}}},ou.prototype._forEachCell=function(k,C,V,oe,_e,Pe,je,ct){for(var Lt=this._convertToCellCoord(k),Nt=this._convertToCellCoord(C),Xt=this._convertToCellCoord(V),gr=this._convertToCellCoord(oe),Br=Lt;Br<=Xt;Br++)for(var Rr=Nt;Rr<=gr;Rr++){var na=this.d*Rr+Br;if(!(ct&&!ct(this._convertFromCellCoord(Br),this._convertFromCellCoord(Rr),this._convertFromCellCoord(Br+1),this._convertFromCellCoord(Rr+1)))&&_e.call(this,k,C,V,oe,na,Pe,je,ct))return}},ou.prototype._convertFromCellCoord=function(k){return(k-this.padding)/this.scale},ou.prototype._convertToCellCoord=function(k){return Math.max(0,Math.min(this.d-1,Math.floor(k*this.scale)+this.padding))},ou.prototype.toArrayBuffer=function(){if(this.arrayBuffer)return this.arrayBuffer;for(var k=this.cells,C=bl+this.cells.length+1+1,V=0,oe=0;oe<this.cells.length;oe++)V+=this.cells[oe].length;var _e=new Int32Array(C+V+this.keys.length+this.bboxes.length);_e[0]=this.extent,_e[1]=this.n,_e[2]=this.padding;for(var Pe=C,je=0;je<k.length;je++){var ct=k[je];_e[bl+je]=Pe,_e.set(ct,Pe),Pe+=ct.length}return _e[bl+k.length]=Pe,_e.set(this.keys,Pe),Pe+=this.keys.length,_e[bl+k.length+1]=Pe,_e.set(this.bboxes,Pe),Pe+=this.bboxes.length,_e.buffer};var Sc=s.ImageData,ql=s.ImageBitmap,Hl={};function de(k,C,V){V===void 0&&(V={}),Object.defineProperty(C,"_classRegistryKey",{value:k,writeable:!1}),Hl[k]={klass:C,omit:V.omit||[],shallow:V.shallow||[]}}de("Object",Object),fu.serialize=function(C,V){var oe=C.toArrayBuffer();return V&&V.push(oe),{buffer:oe}},fu.deserialize=function(C){return new fu(C.buffer)},de("Grid",fu),de("Color",Rs),de("Error",Error),de("ResolvedImage",yl),de("StylePropertyFunction",Oe),de("StyleExpression",Ac,{omit:["_evaluator"]}),de("ZoomDependentExpression",hc),de("ZoomConstantExpression",Nc),de("CompoundExpression",So,{omit:["_evaluate"]});for(var Re in co)co[Re]._classRegistryKey||de("Expression_"+Re,co[Re]);function $e(k){return k&&typeof ArrayBuffer<"u"&&(k instanceof ArrayBuffer||k.constructor&&k.constructor.name==="ArrayBuffer")}function pt(k){return ql&&k instanceof ql}function vt(k,C){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp)return k;if($e(k)||pt(k))return C&&C.push(k),k;if(ArrayBuffer.isView(k)){var V=k;return C&&C.push(V.buffer),V}if(k instanceof Sc)return C&&C.push(k.data.buffer),k;if(Array.isArray(k)){for(var oe=[],_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e];oe.push(vt(je,C))}return oe}if(typeof k=="object"){var ct=k.constructor,Lt=ct._classRegistryKey;if(!Lt)throw new Error("can't serialize object of unregistered class");var Nt=ct.serialize?ct.serialize(k,C):{};if(!ct.serialize){for(var Xt in k)if(k.hasOwnProperty(Xt)&&!(Hl[Lt].omit.indexOf(Xt)>=0)){var gr=k[Xt];Nt[Xt]=Hl[Lt].shallow.indexOf(Xt)>=0?gr:vt(gr,C)}k instanceof Error&&(Nt.message=k.message)}if(Nt.$name)throw new Error("$name property is reserved for worker serialization logic.");return Lt!=="Object"&&(Nt.$name=Lt),Nt}throw new Error("can't serialize object of type "+typeof k)}function wt(k){if(k==null||typeof k=="boolean"||typeof k=="number"||typeof k=="string"||k instanceof Boolean||k instanceof Number||k instanceof String||k instanceof Date||k instanceof RegExp||$e(k)||pt(k)||ArrayBuffer.isView(k)||k instanceof Sc)return k;if(Array.isArray(k))return k.map(wt);if(typeof k=="object"){var C=k.$name||"Object",V=Hl[C],oe=V.klass;if(!oe)throw new Error("can't deserialize unregistered class "+C);if(oe.deserialize)return oe.deserialize(k);for(var _e=Object.create(oe.prototype),Pe=0,je=Object.keys(k);Pe<je.length;Pe+=1){var ct=je[Pe];if(ct!=="$name"){var Lt=k[ct];_e[ct]=Hl[C].shallow.indexOf(ct)>=0?Lt:wt(Lt)}}return _e}throw new Error("can't deserialize object of type "+typeof k)}var Jt=function(){this.first=!0};Jt.prototype.update=function(C,V){var oe=Math.floor(C);return this.first?(this.first=!1,this.lastIntegerZoom=oe,this.lastIntegerZoomTime=0,this.lastZoom=C,this.lastFloorZoom=oe,!0):(this.lastFloorZoom>oe?(this.lastIntegerZoom=oe+1,this.lastIntegerZoomTime=V):this.lastFloorZoom<oe&&(this.lastIntegerZoom=oe,this.lastIntegerZoomTime=V),C!==this.lastZoom?(this.lastZoom=C,this.lastFloorZoom=oe,!0):!1)};var Rt={"Latin-1 Supplement":function(k){return k>=128&&k<=255},Arabic:function(k){return k>=1536&&k<=1791},"Arabic Supplement":function(k){return k>=1872&&k<=1919},"Arabic Extended-A":function(k){return k>=2208&&k<=2303},"Hangul Jamo":function(k){return k>=4352&&k<=4607},"Unified Canadian Aboriginal Syllabics":function(k){return k>=5120&&k<=5759},Khmer:function(k){return k>=6016&&k<=6143},"Unified Canadian Aboriginal Syllabics Extended":function(k){return k>=6320&&k<=6399},"General Punctuation":function(k){return k>=8192&&k<=8303},"Letterlike Symbols":function(k){return k>=8448&&k<=8527},"Number Forms":function(k){return k>=8528&&k<=8591},"Miscellaneous Technical":function(k){return k>=8960&&k<=9215},"Control Pictures":function(k){return k>=9216&&k<=9279},"Optical Character Recognition":function(k){return k>=9280&&k<=9311},"Enclosed Alphanumerics":function(k){return k>=9312&&k<=9471},"Geometric Shapes":function(k){return k>=9632&&k<=9727},"Miscellaneous Symbols":function(k){return k>=9728&&k<=9983},"Miscellaneous Symbols and Arrows":function(k){return k>=11008&&k<=11263},"CJK Radicals Supplement":function(k){return k>=11904&&k<=12031},"Kangxi Radicals":function(k){return k>=12032&&k<=12255},"Ideographic Description Characters":function(k){return k>=12272&&k<=12287},"CJK Symbols and Punctuation":function(k){return k>=12288&&k<=12351},Hiragana:function(k){return k>=12352&&k<=12447},Katakana:function(k){return k>=12448&&k<=12543},Bopomofo:function(k){return k>=12544&&k<=12591},"Hangul Compatibility Jamo":function(k){return k>=12592&&k<=12687},Kanbun:function(k){return k>=12688&&k<=12703},"Bopomofo Extended":function(k){return k>=12704&&k<=12735},"CJK Strokes":function(k){return k>=12736&&k<=12783},"Katakana Phonetic Extensions":function(k){return k>=12784&&k<=12799},"Enclosed CJK Letters and Months":function(k){return k>=12800&&k<=13055},"CJK Compatibility":function(k){return k>=13056&&k<=13311},"CJK Unified Ideographs Extension A":function(k){return k>=13312&&k<=19903},"Yijing Hexagram Symbols":function(k){return k>=19904&&k<=19967},"CJK Unified Ideographs":function(k){return k>=19968&&k<=40959},"Yi Syllables":function(k){return k>=40960&&k<=42127},"Yi Radicals":function(k){return k>=42128&&k<=42191},"Hangul Jamo Extended-A":function(k){return k>=43360&&k<=43391},"Hangul Syllables":function(k){return k>=44032&&k<=55215},"Hangul Jamo Extended-B":function(k){return k>=55216&&k<=55295},"Private Use Area":function(k){return k>=57344&&k<=63743},"CJK Compatibility Ideographs":function(k){return k>=63744&&k<=64255},"Arabic Presentation Forms-A":function(k){return k>=64336&&k<=65023},"Vertical Forms":function(k){return k>=65040&&k<=65055},"CJK Compatibility Forms":function(k){return k>=65072&&k<=65103},"Small Form Variants":function(k){return k>=65104&&k<=65135},"Arabic Presentation Forms-B":function(k){return k>=65136&&k<=65279},"Halfwidth and Fullwidth Forms":function(k){return k>=65280&&k<=65519}};function or(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(fa(oe.charCodeAt(0)))return!0}return!1}function Dr(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(!Or(oe.charCodeAt(0)))return!1}return!0}function Or(k){return!(Rt.Arabic(k)||Rt["Arabic Supplement"](k)||Rt["Arabic Extended-A"](k)||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k))}function va(k){return k<11904?!1:!!(Rt["Bopomofo Extended"](k)||Rt.Bopomofo(k)||Rt["CJK Compatibility Forms"](k)||Rt["CJK Compatibility Ideographs"](k)||Rt["CJK Compatibility"](k)||Rt["CJK Radicals Supplement"](k)||Rt["CJK Strokes"](k)||Rt["CJK Symbols and Punctuation"](k)||Rt["CJK Unified Ideographs Extension A"](k)||Rt["CJK Unified Ideographs"](k)||Rt["Enclosed CJK Letters and Months"](k)||Rt["Halfwidth and Fullwidth Forms"](k)||Rt.Hiragana(k)||Rt["Ideographic Description Characters"](k)||Rt["Kangxi Radicals"](k)||Rt["Katakana Phonetic Extensions"](k)||Rt.Katakana(k)||Rt["Vertical Forms"](k)||Rt["Yi Radicals"](k)||Rt["Yi Syllables"](k))}function fa(k){return k===746||k===747?!0:k<4352?!1:!!(Rt["Bopomofo Extended"](k)||Rt.Bopomofo(k)||Rt["CJK Compatibility Forms"](k)&&!(k>=65097&&k<=65103)||Rt["CJK Compatibility Ideographs"](k)||Rt["CJK Compatibility"](k)||Rt["CJK Radicals Supplement"](k)||Rt["CJK Strokes"](k)||Rt["CJK Symbols and Punctuation"](k)&&!(k>=12296&&k<=12305)&&!(k>=12308&&k<=12319)&&k!==12336||Rt["CJK Unified Ideographs Extension A"](k)||Rt["CJK Unified Ideographs"](k)||Rt["Enclosed CJK Letters and Months"](k)||Rt["Hangul Compatibility Jamo"](k)||Rt["Hangul Jamo Extended-A"](k)||Rt["Hangul Jamo Extended-B"](k)||Rt["Hangul Jamo"](k)||Rt["Hangul Syllables"](k)||Rt.Hiragana(k)||Rt["Ideographic Description Characters"](k)||Rt.Kanbun(k)||Rt["Kangxi Radicals"](k)||Rt["Katakana Phonetic Extensions"](k)||Rt.Katakana(k)&&k!==12540||Rt["Halfwidth and Fullwidth Forms"](k)&&k!==65288&&k!==65289&&k!==65293&&!(k>=65306&&k<=65310)&&k!==65339&&k!==65341&&k!==65343&&!(k>=65371&&k<=65503)&&k!==65507&&!(k>=65512&&k<=65519)||Rt["Small Form Variants"](k)&&!(k>=65112&&k<=65118)&&!(k>=65123&&k<=65126)||Rt["Unified Canadian Aboriginal Syllabics"](k)||Rt["Unified Canadian Aboriginal Syllabics Extended"](k)||Rt["Vertical Forms"](k)||Rt["Yijing Hexagram Symbols"](k)||Rt["Yi Syllables"](k)||Rt["Yi Radicals"](k))}function Va(k){return!!(Rt["Latin-1 Supplement"](k)&&(k===167||k===169||k===174||k===177||k===188||k===189||k===190||k===215||k===247)||Rt["General Punctuation"](k)&&(k===8214||k===8224||k===8225||k===8240||k===8241||k===8251||k===8252||k===8258||k===8263||k===8264||k===8265||k===8273)||Rt["Letterlike Symbols"](k)||Rt["Number Forms"](k)||Rt["Miscellaneous Technical"](k)&&(k>=8960&&k<=8967||k>=8972&&k<=8991||k>=8996&&k<=9e3||k===9003||k>=9085&&k<=9114||k>=9150&&k<=9165||k===9167||k>=9169&&k<=9179||k>=9186&&k<=9215)||Rt["Control Pictures"](k)&&k!==9251||Rt["Optical Character Recognition"](k)||Rt["Enclosed Alphanumerics"](k)||Rt["Geometric Shapes"](k)||Rt["Miscellaneous Symbols"](k)&&!(k>=9754&&k<=9759)||Rt["Miscellaneous Symbols and Arrows"](k)&&(k>=11026&&k<=11055||k>=11088&&k<=11097||k>=11192&&k<=11243)||Rt["CJK Symbols and Punctuation"](k)||Rt.Katakana(k)||Rt["Private Use Area"](k)||Rt["CJK Compatibility Forms"](k)||Rt["Small Form Variants"](k)||Rt["Halfwidth and Fullwidth Forms"](k)||k===8734||k===8756||k===8757||k>=9984&&k<=10087||k>=10102&&k<=10131||k===65532||k===65533)}function Xa(k){return!(fa(k)||Va(k))}function _a(k){return Rt.Arabic(k)||Rt["Arabic Supplement"](k)||Rt["Arabic Extended-A"](k)||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Ra(k){return k>=1424&&k<=2303||Rt["Arabic Presentation Forms-A"](k)||Rt["Arabic Presentation Forms-B"](k)}function Na(k,C){return!(!C&&Ra(k)||k>=2304&&k<=3583||k>=3840&&k<=4255||Rt.Khmer(k))}function Qa(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(Ra(oe.charCodeAt(0)))return!0}return!1}function Ya(k,C){for(var V=0,oe=k;V<oe.length;V+=1){var _e=oe[V];if(!Na(_e.charCodeAt(0),C))return!1}return!0}var Da={unavailable:"unavailable",deferred:"deferred",loading:"loading",loaded:"loaded",error:"error"},zi=null,Ni=Da.unavailable,Qi=null,hn=function(k){k&&typeof k=="string"&&k.indexOf("NetworkError")>-1&&(Ni=Da.error),zi&&zi(k)};function Un(){Vn.fire(new Mr("pluginStateChange",{pluginStatus:Ni,pluginURL:Qi}))}var Vn=new Lr,No=function(){return Ni},Gn=function(k){return k({pluginStatus:Ni,pluginURL:Qi}),Vn.on("pluginStateChange",k),k},Fo=function(k,C,V){if(V===void 0&&(V=!1),Ni===Da.deferred||Ni===Da.loading||Ni===Da.loaded)throw new Error("setRTLTextPlugin cannot be called multiple times.");Qi=be.resolveURL(k),Ni=Da.deferred,zi=C,Un(),V||Ks()},Ks=function(){if(Ni!==Da.deferred||!Qi)throw new Error("rtl-text-plugin cannot be downloaded unless a pluginURL is specified");Ni=Da.loading,Un(),Qi&&pa({url:Qi},function(k){k?hn(k):(Ni=Da.loaded,Un())})},Gs={applyArabicShaping:null,processBidirectionalText:null,processStyledBidirectionalText:null,isLoaded:function(){return Ni===Da.loaded||Gs.applyArabicShaping!=null},isLoading:function(){return Ni===Da.loading},setState:function(C){Ni=C.pluginStatus,Qi=C.pluginURL},isParsed:function(){return Gs.applyArabicShaping!=null&&Gs.processBidirectionalText!=null&&Gs.processStyledBidirectionalText!=null},getPluginURL:function(){return Qi}},sl=function(){!Gs.isLoading()&&!Gs.isLoaded()&&No()==="deferred"&&Ks()},Vi=function(C,V){this.zoom=C,V?(this.now=V.now,this.fadeDuration=V.fadeDuration,this.zoomHistory=V.zoomHistory,this.transition=V.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new Jt,this.transition={})};Vi.prototype.isSupportedScript=function(C){return Ya(C,Gs.isLoaded())},Vi.prototype.crossFadingFactor=function(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)},Vi.prototype.getCrossfadeParameters=function(){var C=this.zoom,V=C-Math.floor(C),oe=this.crossFadingFactor();return C>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:V+(1-V)*oe}:{fromScale:.5,toScale:1,t:1-(1-oe)*V}};var ao=function(C,V){this.property=C,this.value=V,this.expression=R(V===void 0?C.specification.default:V,C.specification)};ao.prototype.isDataDriven=function(){return this.expression.kind==="source"||this.expression.kind==="composite"},ao.prototype.possiblyEvaluate=function(C,V,oe){return this.property.possiblyEvaluate(this,C,V,oe)};var ns=function(C){this.property=C,this.value=new ao(C,void 0)};ns.prototype.transitioned=function(C,V){return new hl(this.property,this.value,V,m({},C.transition,this.transition),C.now)},ns.prototype.untransitioned=function(){return new hl(this.property,this.value,null,{},0)};var hs=function(C){this._properties=C,this._values=Object.create(C.defaultTransitionablePropertyValues)};hs.prototype.getValue=function(C){return O(this._values[C].value.value)},hs.prototype.setValue=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].value=new ao(this._values[C].property,V===null?void 0:O(V))},hs.prototype.getTransition=function(C){return O(this._values[C].transition)},hs.prototype.setTransition=function(C,V){this._values.hasOwnProperty(C)||(this._values[C]=new ns(this._values[C].property)),this._values[C].transition=O(V)||void 0},hs.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V],Pe=this.getValue(_e);Pe!==void 0&&(C[_e]=Pe);var je=this.getTransition(_e);je!==void 0&&(C[_e+"-transition"]=je)}return C},hs.prototype.transitioned=function(C,V){for(var oe=new Dl(this._properties),_e=0,Pe=Object.keys(this._values);_e<Pe.length;_e+=1){var je=Pe[_e];oe._values[je]=this._values[je].transitioned(C,V._values[je])}return oe},hs.prototype.untransitioned=function(){for(var C=new Dl(this._properties),V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V];C._values[_e]=this._values[_e].untransitioned()}return C};var hl=function(C,V,oe,_e,Pe){this.property=C,this.value=V,this.begin=Pe+_e.delay||0,this.end=this.begin+_e.duration||0,C.specification.transition&&(_e.delay||_e.duration)&&(this.prior=oe)};hl.prototype.possiblyEvaluate=function(C,V,oe){var _e=C.now||0,Pe=this.value.possiblyEvaluate(C,V,oe),je=this.prior;if(je){if(_e>this.end)return this.prior=null,Pe;if(this.value.isDataDriven())return this.prior=null,Pe;if(_e<this.begin)return je.possiblyEvaluate(C,V,oe);var ct=(_e-this.begin)/(this.end-this.begin);return this.property.interpolate(je.possiblyEvaluate(C,V,oe),Pe,v(ct))}else return Pe};var Dl=function(C){this._properties=C,this._values=Object.create(C.defaultTransitioningPropertyValues)};Dl.prototype.possiblyEvaluate=function(C,V,oe){for(var _e=new dc(this._properties),Pe=0,je=Object.keys(this._values);Pe<je.length;Pe+=1){var ct=je[Pe];_e._values[ct]=this._values[ct].possiblyEvaluate(C,V,oe)}return _e},Dl.prototype.hasTransition=function(){for(var C=0,V=Object.keys(this._values);C<V.length;C+=1){var oe=V[C];if(this._values[oe].prior)return!0}return!1};var hu=function(C){this._properties=C,this._values=Object.create(C.defaultPropertyValues)};hu.prototype.getValue=function(C){return O(this._values[C].value)},hu.prototype.setValue=function(C,V){this._values[C]=new ao(this._values[C].property,V===null?void 0:O(V))},hu.prototype.serialize=function(){for(var C={},V=0,oe=Object.keys(this._values);V<oe.length;V+=1){var _e=oe[V],Pe=this.getValue(_e);Pe!==void 0&&(C[_e]=Pe)}return C},hu.prototype.possiblyEvaluate=function(C,V,oe){for(var _e=new dc(this._properties),Pe=0,je=Object.keys(this._values);Pe<je.length;Pe+=1){var ct=je[Pe];_e._values[ct]=this._values[ct].possiblyEvaluate(C,V,oe)}return _e};var Ll=function(C,V,oe){this.property=C,this.value=V,this.parameters=oe};Ll.prototype.isConstant=function(){return this.value.kind==="constant"},Ll.prototype.constantOr=function(C){return this.value.kind==="constant"?this.value.value:C},Ll.prototype.evaluate=function(C,V,oe,_e){return this.property.evaluate(this.value,this.parameters,C,V,oe,_e)};var dc=function(C){this._properties=C,this._values=Object.create(C.defaultPossiblyEvaluatedValues)};dc.prototype.get=function(C){return this._values[C]};var Qt=function(C){this.specification=C};Qt.prototype.possiblyEvaluate=function(C,V){return C.expression.evaluate(V)},Qt.prototype.interpolate=function(C,V,oe){var _e=Uu[this.specification.type];return _e?_e(C,V,oe):C};var ra=function(C,V){this.specification=C,this.overrides=V};ra.prototype.possiblyEvaluate=function(C,V,oe,_e){return C.expression.kind==="constant"||C.expression.kind==="camera"?new Ll(this,{kind:"constant",value:C.expression.evaluate(V,null,{},oe,_e)},V):new Ll(this,C.expression,V)},ra.prototype.interpolate=function(C,V,oe){if(C.value.kind!=="constant"||V.value.kind!=="constant")return C;if(C.value.value===void 0||V.value.value===void 0)return new Ll(this,{kind:"constant",value:void 0},C.parameters);var _e=Uu[this.specification.type];return _e?new Ll(this,{kind:"constant",value:_e(C.value.value,V.value.value,oe)},C.parameters):C},ra.prototype.evaluate=function(C,V,oe,_e,Pe,je){return C.kind==="constant"?C.value:C.evaluate(V,oe,_e,Pe,je)};var Ta=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,_e,Pe,je){if(oe.value===void 0)return new Ll(this,{kind:"constant",value:void 0},_e);if(oe.expression.kind==="constant"){var ct=oe.expression.evaluate(_e,null,{},Pe,je),Lt=oe.property.specification.type==="resolvedImage",Nt=Lt&&typeof ct!="string"?ct.name:ct,Xt=this._calculate(Nt,Nt,Nt,_e);return new Ll(this,{kind:"constant",value:Xt},_e)}else if(oe.expression.kind==="camera"){var gr=this._calculate(oe.expression.evaluate({zoom:_e.zoom-1}),oe.expression.evaluate({zoom:_e.zoom}),oe.expression.evaluate({zoom:_e.zoom+1}),_e);return new Ll(this,{kind:"constant",value:gr},_e)}else return new Ll(this,oe.expression,_e)},C.prototype.evaluate=function(oe,_e,Pe,je,ct,Lt){if(oe.kind==="source"){var Nt=oe.evaluate(_e,Pe,je,ct,Lt);return this._calculate(Nt,Nt,Nt,_e)}else return oe.kind==="composite"?this._calculate(oe.evaluate({zoom:Math.floor(_e.zoom)-1},Pe,je),oe.evaluate({zoom:Math.floor(_e.zoom)},Pe,je),oe.evaluate({zoom:Math.floor(_e.zoom)+1},Pe,je),_e):oe.value},C.prototype._calculate=function(oe,_e,Pe,je){var ct=je.zoom;return ct>je.zoomHistory.lastIntegerZoom?{from:oe,to:_e}:{from:Pe,to:_e}},C.prototype.interpolate=function(oe){return oe},C}(ra),si=function(C){this.specification=C};si.prototype.possiblyEvaluate=function(C,V,oe,_e){if(C.value!==void 0)if(C.expression.kind==="constant"){var Pe=C.expression.evaluate(V,null,{},oe,_e);return this._calculate(Pe,Pe,Pe,V)}else return this._calculate(C.expression.evaluate(new Vi(Math.floor(V.zoom-1),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom),V)),C.expression.evaluate(new Vi(Math.floor(V.zoom+1),V)),V)},si.prototype._calculate=function(C,V,oe,_e){var Pe=_e.zoom;return Pe>_e.zoomHistory.lastIntegerZoom?{from:C,to:V}:{from:oe,to:V}},si.prototype.interpolate=function(C){return C};var wi=function(C){this.specification=C};wi.prototype.possiblyEvaluate=function(C,V,oe,_e){return!!C.expression.evaluate(V,null,{},oe,_e)},wi.prototype.interpolate=function(){return!1};var xi=function(C){this.properties=C,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(var V in C){var oe=C[V];oe.specification.overridable&&this.overridableProperties.push(V);var _e=this.defaultPropertyValues[V]=new ao(oe,void 0),Pe=this.defaultTransitionablePropertyValues[V]=new ns(oe);this.defaultTransitioningPropertyValues[V]=Pe.untransitioned(),this.defaultPossiblyEvaluatedValues[V]=_e.possiblyEvaluate({})}};de("DataDrivenProperty",ra),de("DataConstantProperty",Qt),de("CrossFadedDataDrivenProperty",Ta),de("CrossFadedProperty",si),de("ColorRampProperty",wi);var bi="-transition",Fi=function(k){function C(V,oe){if(k.call(this),this.id=V.id,this.type=V.type,this._featureFilter={filter:function(){return!0},needGeometry:!1},V.type!=="custom"&&(V=V,this.metadata=V.metadata,this.minzoom=V.minzoom,this.maxzoom=V.maxzoom,V.type!=="background"&&(this.source=V.source,this.sourceLayer=V["source-layer"],this.filter=V.filter),oe.layout&&(this._unevaluatedLayout=new hu(oe.layout)),oe.paint)){this._transitionablePaint=new hs(oe.paint);for(var _e in V.paint)this.setPaintProperty(_e,V.paint[_e],{validate:!1});for(var Pe in V.layout)this.setLayoutProperty(Pe,V.layout[Pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new dc(oe.paint)}}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getCrossfadeParameters=function(){return this._crossfadeParameters},C.prototype.getLayoutProperty=function(oe){return oe==="visibility"?this.visibility:this._unevaluatedLayout.getValue(oe)},C.prototype.setLayoutProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".layout."+oe;if(this._validate(Xl,je,oe,_e,Pe))return}if(oe==="visibility"){this.visibility=_e;return}this._unevaluatedLayout.setValue(oe,_e)},C.prototype.getPaintProperty=function(oe){return z(oe,bi)?this._transitionablePaint.getTransition(oe.slice(0,-bi.length)):this._transitionablePaint.getValue(oe)},C.prototype.setPaintProperty=function(oe,_e,Pe){if(Pe===void 0&&(Pe={}),_e!=null){var je="layers."+this.id+".paint."+oe;if(this._validate(Rl,je,oe,_e,Pe))return!1}if(z(oe,bi))return this._transitionablePaint.setTransition(oe.slice(0,-bi.length),_e||void 0),!1;var ct=this._transitionablePaint._values[oe],Lt=ct.property.specification["property-type"]==="cross-faded-data-driven",Nt=ct.value.isDataDriven(),Xt=ct.value;this._transitionablePaint.setValue(oe,_e),this._handleSpecialPaintPropertyUpdate(oe);var gr=this._transitionablePaint._values[oe].value,Br=gr.isDataDriven();return Br||Nt||Lt||this._handleOverridablePaintPropertyUpdate(oe,Xt,gr)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,_e,Pe){return!1},C.prototype.isHidden=function(oe){return this.minzoom&&oe<this.minzoom||this.maxzoom&&oe>=this.maxzoom?!0:this.visibility==="none"},C.prototype.updateTransitions=function(oe){this._transitioningPaint=this._transitionablePaint.transitioned(oe,this._transitioningPaint)},C.prototype.hasTransition=function(){return this._transitioningPaint.hasTransition()},C.prototype.recalculate=function(oe,_e){oe.getCrossfadeParameters&&(this._crossfadeParameters=oe.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(oe,void 0,_e)),this.paint=this._transitioningPaint.possiblyEvaluate(oe,void 0,_e)},C.prototype.serialize=function(){var oe={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&&(oe.layout=oe.layout||{},oe.layout.visibility=this.visibility),B(oe,function(_e,Pe){return _e!==void 0&&!(Pe==="layout"&&!Object.keys(_e).length)&&!(Pe==="paint"&&!Object.keys(_e).length)})},C.prototype._validate=function(oe,_e,Pe,je,ct){return ct===void 0&&(ct={}),ct&&ct.validate===!1?!1:qu(this,oe.call(Zo,{key:_e,layerType:this.type,objectKey:Pe,value:je,styleSpec:fi,style:{glyphs:!0,sprite:!0}}))},C.prototype.is3D=function(){return!1},C.prototype.isTileClipped=function(){return!1},C.prototype.hasOffscreenPass=function(){return!1},C.prototype.resize=function(){},C.prototype.isStateDependent=function(){for(var oe in this.paint._values){var _e=this.paint.get(oe);if(!(!(_e instanceof Ll)||!fl(_e.property.specification))&&(_e.value.kind==="source"||_e.value.kind==="composite")&&_e.value.isStateDependent)return!0}return!1},C}(Lr),cn={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array},fn=function(C,V){this._structArray=C,this._pos1=V*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8},Gi=128,Io=5,nn=function(){this.isTransferred=!1,this.capacity=-1,this.resize(0)};nn.serialize=function(C,V){return C._trim(),V&&(C.isTransferred=!0,V.push(C.arrayBuffer)),{length:C.length,arrayBuffer:C.arrayBuffer}},nn.deserialize=function(C){var V=Object.create(this.prototype);return V.arrayBuffer=C.arrayBuffer,V.length=C.length,V.capacity=C.arrayBuffer.byteLength/V.bytesPerElement,V._refreshViews(),V},nn.prototype._trim=function(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())},nn.prototype.clear=function(){this.length=0},nn.prototype.resize=function(C){this.reserve(C),this.length=C},nn.prototype.reserve=function(C){if(C>this.capacity){this.capacity=Math.max(C,Math.floor(this.capacity*Io),Gi),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);var V=this.uint8;this._refreshViews(),V&&this.uint8.set(V)}},nn.prototype._refreshViews=function(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")};function on(k,C){C===void 0&&(C=1);var V=0,oe=0,_e=k.map(function(je){var ct=Oi(je.type),Lt=V=ui(V,Math.max(C,ct)),Nt=je.components||1;return oe=Math.max(oe,ct),V+=ct*Nt,{name:je.name,type:je.type,components:Nt,offset:Lt}}),Pe=ui(V,Math.max(oe,C));return{members:_e,size:Pe,alignment:C}}function Oi(k){return cn[k].BYTES_PER_ELEMENT}function ui(k,C){return Math.ceil(k/C)*C}var Mi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.int16[je+0]=_e,this.int16[je+1]=Pe,oe},C}(nn);Mi.prototype.bytesPerElement=4,de("StructArrayLayout2i4",Mi);var tn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.int16[Lt+0]=_e,this.int16[Lt+1]=Pe,this.int16[Lt+2]=je,this.int16[Lt+3]=ct,oe},C}(nn);tn.prototype.bytesPerElement=8,de("StructArrayLayout4i8",tn);var pn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);pn.prototype.bytesPerElement=12,de("StructArrayLayout2i4i12",pn);var qi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*4,gr=oe*8;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.uint8[gr+4]=je,this.uint8[gr+5]=ct,this.uint8[gr+6]=Lt,this.uint8[gr+7]=Nt,oe},C}(nn);qi.prototype.bytesPerElement=8,de("StructArrayLayout2i4ub8",qi);var Dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.float32[je+0]=_e,this.float32[je+1]=Pe,oe},C}(nn);Dn.prototype.bytesPerElement=8,de("StructArrayLayout2f8",Dn);var bn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=this.length;return this.resize(Rr+1),this.emplace(Rr,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr){var na=oe*10;return this.uint16[na+0]=_e,this.uint16[na+1]=Pe,this.uint16[na+2]=je,this.uint16[na+3]=ct,this.uint16[na+4]=Lt,this.uint16[na+5]=Nt,this.uint16[na+6]=Xt,this.uint16[na+7]=gr,this.uint16[na+8]=Br,this.uint16[na+9]=Rr,oe},C}(nn);bn.prototype.bytesPerElement=20,de("StructArrayLayout10ui20",bn);var _o=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na){var Ia=this.length;return this.resize(Ia+1),this.emplace(Ia,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia){var ii=oe*12;return this.int16[ii+0]=_e,this.int16[ii+1]=Pe,this.int16[ii+2]=je,this.int16[ii+3]=ct,this.uint16[ii+4]=Lt,this.uint16[ii+5]=Nt,this.uint16[ii+6]=Xt,this.uint16[ii+7]=gr,this.int16[ii+8]=Br,this.int16[ii+9]=Rr,this.int16[ii+10]=na,this.int16[ii+11]=Ia,oe},C}(nn);_o.prototype.bytesPerElement=24,de("StructArrayLayout4i4ui4i24",_o);var Zi=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.float32[ct+0]=_e,this.float32[ct+1]=Pe,this.float32[ct+2]=je,oe},C}(nn);Zi.prototype.bytesPerElement=12,de("StructArrayLayout3f12",Zi);var Ui=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint32[Pe+0]=_e,oe},C}(nn);Ui.prototype.bytesPerElement=4,de("StructArrayLayout1ul4",Ui);var Zn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.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)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){var Br=this.length;return this.resize(Br+1),this.emplace(Br,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=oe*10,na=oe*5;return this.int16[Rr+0]=_e,this.int16[Rr+1]=Pe,this.int16[Rr+2]=je,this.int16[Rr+3]=ct,this.int16[Rr+4]=Lt,this.int16[Rr+5]=Nt,this.uint32[na+3]=Xt,this.uint16[Rr+8]=gr,this.uint16[Rr+9]=Br,oe},C}(nn);Zn.prototype.bytesPerElement=20,de("StructArrayLayout6i1ul2ui20",Zn);var Rn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt){var Nt=this.length;return this.resize(Nt+1),this.emplace(Nt,oe,_e,Pe,je,ct,Lt)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=oe*6;return this.int16[Xt+0]=_e,this.int16[Xt+1]=Pe,this.int16[Xt+2]=je,this.int16[Xt+3]=ct,this.int16[Xt+4]=Lt,this.int16[Xt+5]=Nt,oe},C}(nn);Rn.prototype.bytesPerElement=12,de("StructArrayLayout2i2i2i12",Rn);var xn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct){var Lt=this.length;return this.resize(Lt+1),this.emplace(Lt,oe,_e,Pe,je,ct)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt){var Nt=oe*4,Xt=oe*8;return this.float32[Nt+0]=_e,this.float32[Nt+1]=Pe,this.float32[Nt+2]=je,this.int16[Xt+6]=ct,this.int16[Xt+7]=Lt,oe},C}(nn);xn.prototype.bytesPerElement=16,de("StructArrayLayout2f1f2i16",xn);var dn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*12,Nt=oe*3;return this.uint8[Lt+0]=_e,this.uint8[Lt+1]=Pe,this.float32[Nt+1]=je,this.float32[Nt+2]=ct,oe},C}(nn);dn.prototype.bytesPerElement=12,de("StructArrayLayout2ub2f12",dn);var jn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.uint16[ct+0]=_e,this.uint16[ct+1]=Pe,this.uint16[ct+2]=je,oe},C}(nn);jn.prototype.bytesPerElement=6,de("StructArrayLayout3ui6",jn);var Ro=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.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)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci){var Ai=this.length;return this.resize(Ai+1),this.emplace(Ai,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai){var Li=oe*24,Ki=oe*12,kn=oe*48;return this.int16[Li+0]=_e,this.int16[Li+1]=Pe,this.uint16[Li+2]=je,this.uint16[Li+3]=ct,this.uint32[Ki+2]=Lt,this.uint32[Ki+3]=Nt,this.uint32[Ki+4]=Xt,this.uint16[Li+10]=gr,this.uint16[Li+11]=Br,this.uint16[Li+12]=Rr,this.float32[Ki+7]=na,this.float32[Ki+8]=Ia,this.uint8[kn+36]=ii,this.uint8[kn+37]=Wa,this.uint8[kn+38]=Si,this.uint32[Ki+10]=ci,this.int16[Li+22]=Ai,oe},C}(nn);Ro.prototype.bytesPerElement=48,de("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",Ro);var rs=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.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)},C.prototype.emplaceBack=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo){var zs=this.length;return this.resize(zs+1),this.emplace(zs,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo)},C.prototype.emplace=function(oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn,lo,qn,to,ds,uo,vo,zs){var cs=oe*34,Tl=oe*17;return this.int16[cs+0]=_e,this.int16[cs+1]=Pe,this.int16[cs+2]=je,this.int16[cs+3]=ct,this.int16[cs+4]=Lt,this.int16[cs+5]=Nt,this.int16[cs+6]=Xt,this.int16[cs+7]=gr,this.uint16[cs+8]=Br,this.uint16[cs+9]=Rr,this.uint16[cs+10]=na,this.uint16[cs+11]=Ia,this.uint16[cs+12]=ii,this.uint16[cs+13]=Wa,this.uint16[cs+14]=Si,this.uint16[cs+15]=ci,this.uint16[cs+16]=Ai,this.uint16[cs+17]=Li,this.uint16[cs+18]=Ki,this.uint16[cs+19]=kn,this.uint16[cs+20]=Tn,this.uint16[cs+21]=lo,this.uint16[cs+22]=qn,this.uint32[Tl+12]=to,this.float32[Tl+13]=ds,this.float32[Tl+14]=uo,this.float32[Tl+15]=vo,this.float32[Tl+16]=zs,oe},C}(nn);rs.prototype.bytesPerElement=68,de("StructArrayLayout8i15ui1ul4f68",rs);var wn=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.float32[Pe+0]=_e,oe},C}(nn);wn.prototype.bytesPerElement=4,de("StructArrayLayout1f4",wn);var oo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*3;return this.int16[ct+0]=_e,this.int16[ct+1]=Pe,this.int16[ct+2]=je,oe},C}(nn);oo.prototype.bytesPerElement=6,de("StructArrayLayout3i6",oo);var Xo=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe){var je=this.length;return this.resize(je+1),this.emplace(je,oe,_e,Pe)},C.prototype.emplace=function(oe,_e,Pe,je){var ct=oe*2,Lt=oe*4;return this.uint32[ct+0]=_e,this.uint16[Lt+2]=Pe,this.uint16[Lt+3]=je,oe},C}(nn);Xo.prototype.bytesPerElement=8,de("StructArrayLayout1ul2ui8",Xo);var os=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e){var Pe=this.length;return this.resize(Pe+1),this.emplace(Pe,oe,_e)},C.prototype.emplace=function(oe,_e,Pe){var je=oe*2;return this.uint16[je+0]=_e,this.uint16[je+1]=Pe,oe},C}(nn);os.prototype.bytesPerElement=4,de("StructArrayLayout2ui4",os);var As=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe){var _e=this.length;return this.resize(_e+1),this.emplace(_e,oe)},C.prototype.emplace=function(oe,_e){var Pe=oe*1;return this.uint16[Pe+0]=_e,oe},C}(nn);As.prototype.bytesPerElement=2,de("StructArrayLayout1ui2",As);var $l=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._refreshViews=function(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)},C.prototype.emplaceBack=function(oe,_e,Pe,je){var ct=this.length;return this.resize(ct+1),this.emplace(ct,oe,_e,Pe,je)},C.prototype.emplace=function(oe,_e,Pe,je,ct){var Lt=oe*4;return this.float32[Lt+0]=_e,this.float32[Lt+1]=Pe,this.float32[Lt+2]=je,this.float32[Lt+3]=ct,oe},C}(nn);$l.prototype.bytesPerElement=16,de("StructArrayLayout4f16",$l);var Uc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={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 V.anchorPointX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorPointY.get=function(){return this._structArray.int16[this._pos2+1]},V.x1.get=function(){return this._structArray.int16[this._pos2+2]},V.y1.get=function(){return this._structArray.int16[this._pos2+3]},V.x2.get=function(){return this._structArray.int16[this._pos2+4]},V.y2.get=function(){return this._structArray.int16[this._pos2+5]},V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+8]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.anchorPoint.get=function(){return new i(this.anchorPointX,this.anchorPointY)},Object.defineProperties(C.prototype,V),C}(fn);Uc.prototype.size=20;var Ws=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Uc(this,oe)},C}(Zn);de("CollisionBoxArray",Ws);var jc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={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 V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.glyphStartIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.numGlyphs.get=function(){return this._structArray.uint16[this._pos2+3]},V.vertexStartIndex.get=function(){return this._structArray.uint32[this._pos4+2]},V.lineStartIndex.get=function(){return this._structArray.uint32[this._pos4+3]},V.lineLength.get=function(){return this._structArray.uint32[this._pos4+4]},V.segment.get=function(){return this._structArray.uint16[this._pos2+10]},V.lowerSize.get=function(){return this._structArray.uint16[this._pos2+11]},V.upperSize.get=function(){return this._structArray.uint16[this._pos2+12]},V.lineOffsetX.get=function(){return this._structArray.float32[this._pos4+7]},V.lineOffsetY.get=function(){return this._structArray.float32[this._pos4+8]},V.writingMode.get=function(){return this._structArray.uint8[this._pos1+36]},V.placedOrientation.get=function(){return this._structArray.uint8[this._pos1+37]},V.placedOrientation.set=function(oe){this._structArray.uint8[this._pos1+37]=oe},V.hidden.get=function(){return this._structArray.uint8[this._pos1+38]},V.hidden.set=function(oe){this._structArray.uint8[this._pos1+38]=oe},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+10]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+10]=oe},V.associatedIconIndex.get=function(){return this._structArray.int16[this._pos2+22]},Object.defineProperties(C.prototype,V),C}(fn);jc.prototype.size=48;var Ol=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new jc(this,oe)},C}(Ro);de("PlacedSymbolArray",Ol);var vc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={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 V.anchorX.get=function(){return this._structArray.int16[this._pos2+0]},V.anchorY.get=function(){return this._structArray.int16[this._pos2+1]},V.rightJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+2]},V.centerJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+3]},V.leftJustifiedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+4]},V.verticalPlacedTextSymbolIndex.get=function(){return this._structArray.int16[this._pos2+5]},V.placedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+6]},V.verticalPlacedIconSymbolIndex.get=function(){return this._structArray.int16[this._pos2+7]},V.key.get=function(){return this._structArray.uint16[this._pos2+8]},V.textBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+9]},V.textBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+10]},V.verticalTextBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+11]},V.verticalTextBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+12]},V.iconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+13]},V.iconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+14]},V.verticalIconBoxStartIndex.get=function(){return this._structArray.uint16[this._pos2+15]},V.verticalIconBoxEndIndex.get=function(){return this._structArray.uint16[this._pos2+16]},V.featureIndex.get=function(){return this._structArray.uint16[this._pos2+17]},V.numHorizontalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+18]},V.numVerticalGlyphVertices.get=function(){return this._structArray.uint16[this._pos2+19]},V.numIconVertices.get=function(){return this._structArray.uint16[this._pos2+20]},V.numVerticalIconVertices.get=function(){return this._structArray.uint16[this._pos2+21]},V.useRuntimeCollisionCircles.get=function(){return this._structArray.uint16[this._pos2+22]},V.crossTileID.get=function(){return this._structArray.uint32[this._pos4+12]},V.crossTileID.set=function(oe){this._structArray.uint32[this._pos4+12]=oe},V.textBoxScale.get=function(){return this._structArray.float32[this._pos4+13]},V.textOffset0.get=function(){return this._structArray.float32[this._pos4+14]},V.textOffset1.get=function(){return this._structArray.float32[this._pos4+15]},V.collisionCircleDiameter.get=function(){return this._structArray.float32[this._pos4+16]},Object.defineProperties(C.prototype,V),C}(fn);vc.prototype.size=68;var mc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new vc(this,oe)},C}(rs);de("SymbolInstanceArray",mc);var rf=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getoffsetX=function(oe){return this.float32[oe*1+0]},C}(wn);de("GlyphOffsetArray",rf);var Yl=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.getx=function(oe){return this.int16[oe*3+0]},C.prototype.gety=function(oe){return this.int16[oe*3+1]},C.prototype.gettileUnitDistanceFromAnchor=function(oe){return this.int16[oe*3+2]},C}(oo);de("SymbolLineVertexArray",Yl);var Mc=function(k){function C(){k.apply(this,arguments)}k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C;var V={featureIndex:{configurable:!0},sourceLayerIndex:{configurable:!0},bucketIndex:{configurable:!0}};return V.featureIndex.get=function(){return this._structArray.uint32[this._pos4+0]},V.sourceLayerIndex.get=function(){return this._structArray.uint16[this._pos2+2]},V.bucketIndex.get=function(){return this._structArray.uint16[this._pos2+3]},Object.defineProperties(C.prototype,V),C}(fn);Mc.prototype.size=8;var Vc=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.get=function(oe){return new Mc(this,oe)},C}(Xo);de("FeatureIndexArray",Vc);var Ds=on([{name:"a_pos",components:2,type:"Int16"}],4),af=Ds.members,Cs=function(C){C===void 0&&(C=[]),this.segments=C};Cs.prototype.prepareSegment=function(C,V,oe,_e){var Pe=this.segments[this.segments.length-1];return C>Cs.MAX_VERTEX_ARRAY_LENGTH&&U("Max vertices per segment is "+Cs.MAX_VERTEX_ARRAY_LENGTH+": bucket requested "+C),(!Pe||Pe.vertexLength+C>Cs.MAX_VERTEX_ARRAY_LENGTH||Pe.sortKey!==_e)&&(Pe={vertexOffset:V.length,primitiveOffset:oe.length,vertexLength:0,primitiveLength:0},_e!==void 0&&(Pe.sortKey=_e),this.segments.push(Pe)),Pe},Cs.prototype.get=function(){return this.segments},Cs.prototype.destroy=function(){for(var C=0,V=this.segments;C<V.length;C+=1){var oe=V[C];for(var _e in oe.vaos)oe.vaos[_e].destroy()}},Cs.simpleSegment=function(C,V,oe,_e){return new Cs([{vertexOffset:C,primitiveOffset:V,vertexLength:oe,primitiveLength:_e,vaos:{},sortKey:0}])},Cs.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,de("SegmentVector",Cs);function ve(k,C){return k=l(Math.floor(k),0,255),C=l(Math.floor(C),0,255),256*k+C}var K=on([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]),ye=t(function(k){function C(V,oe){var _e,Pe,je,ct,Lt,Nt,Xt,gr;for(_e=V.length&3,Pe=V.length-_e,je=oe,Lt=3432918353,Nt=461845907,gr=0;gr<Pe;)Xt=V.charCodeAt(gr)&255|(V.charCodeAt(++gr)&255)<<8|(V.charCodeAt(++gr)&255)<<16|(V.charCodeAt(++gr)&255)<<24,++gr,Xt=(Xt&65535)*Lt+(((Xt>>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt,je=je<<13|je>>>19,ct=(je&65535)*5+(((je>>>16)*5&65535)<<16)&4294967295,je=(ct&65535)+27492+(((ct>>>16)+58964&65535)<<16);switch(Xt=0,_e){case 3:Xt^=(V.charCodeAt(gr+2)&255)<<16;case 2:Xt^=(V.charCodeAt(gr+1)&255)<<8;case 1:Xt^=V.charCodeAt(gr)&255,Xt=(Xt&65535)*Lt+(((Xt>>>16)*Lt&65535)<<16)&4294967295,Xt=Xt<<15|Xt>>>17,Xt=(Xt&65535)*Nt+(((Xt>>>16)*Nt&65535)<<16)&4294967295,je^=Xt}return je^=V.length,je^=je>>>16,je=(je&65535)*2246822507+(((je>>>16)*2246822507&65535)<<16)&4294967295,je^=je>>>13,je=(je&65535)*3266489909+(((je>>>16)*3266489909&65535)<<16)&4294967295,je^=je>>>16,je>>>0}k.exports=C}),te=t(function(k){function C(V,oe){for(var _e=V.length,Pe=oe^_e,je=0,ct;_e>=4;)ct=V.charCodeAt(je)&255|(V.charCodeAt(++je)&255)<<8|(V.charCodeAt(++je)&255)<<16|(V.charCodeAt(++je)&255)<<24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),ct^=ct>>>24,ct=(ct&65535)*1540483477+(((ct>>>16)*1540483477&65535)<<16),Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)^ct,_e-=4,++je;switch(_e){case 3:Pe^=(V.charCodeAt(je+2)&255)<<16;case 2:Pe^=(V.charCodeAt(je+1)&255)<<8;case 1:Pe^=V.charCodeAt(je)&255,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16)}return Pe^=Pe>>>13,Pe=(Pe&65535)*1540483477+(((Pe>>>16)*1540483477&65535)<<16),Pe^=Pe>>>15,Pe>>>0}k.exports=C}),xe=ye,We=ye,He=te;xe.murmur3=We,xe.murmur2=He;var st=function(){this.ids=[],this.positions=[],this.indexed=!1};st.prototype.add=function(C,V,oe,_e){this.ids.push(Ht(C)),this.positions.push(V,oe,_e)},st.prototype.getPositions=function(C){for(var V=Ht(C),oe=0,_e=this.ids.length-1;oe<_e;){var Pe=oe+_e>>1;this.ids[Pe]>=V?_e=Pe:oe=Pe+1}for(var je=[];this.ids[oe]===V;){var ct=this.positions[3*oe],Lt=this.positions[3*oe+1],Nt=this.positions[3*oe+2];je.push({index:ct,start:Lt,end:Nt}),oe++}return je},st.serialize=function(C,V){var oe=new Float64Array(C.ids),_e=new Uint32Array(C.positions);return yr(oe,_e,0,oe.length-1),V&&V.push(oe.buffer,_e.buffer),{ids:oe,positions:_e}},st.deserialize=function(C){var V=new st;return V.ids=C.ids,V.positions=C.positions,V.indexed=!0,V};var Et=Math.pow(2,53)-1;function Ht(k){var C=+k;return!isNaN(C)&&C<=Et?C:xe(String(k))}function yr(k,C,V,oe){for(;V<oe;){for(var _e=k[V+oe>>1],Pe=V-1,je=oe+1;;){do Pe++;while(k[Pe]<_e);do je--;while(k[je]>_e);if(Pe>=je)break;Ir(k,Pe,je),Ir(C,3*Pe,3*je),Ir(C,3*Pe+1,3*je+1),Ir(C,3*Pe+2,3*je+2)}je-V<oe-je?(yr(k,C,V,je),V=je+1):(yr(k,C,je+1,oe),oe=je)}}function Ir(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}de("FeaturePositionMap",st);var wr=function(C,V){this.gl=C.gl,this.location=V},qt=function(k){function C(V,oe){k.call(this,V,oe),this.current=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){this.current!==oe&&(this.current=oe,this.gl.uniform1i(this.location,oe))},C}(wr),tr=function(k){function C(V,oe){k.call(this,V,oe),this.current=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){this.current!==oe&&(this.current=oe,this.gl.uniform1f(this.location,oe))},C}(wr),dr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1])&&(this.current=oe,this.gl.uniform2f(this.location,oe[0],oe[1]))},C}(wr),Pr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1]||oe[2]!==this.current[2])&&(this.current=oe,this.gl.uniform3f(this.location,oe[0],oe[1],oe[2]))},C}(wr),Vr=function(k){function C(V,oe){k.call(this,V,oe),this.current=[0,0,0,0]}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe[0]!==this.current[0]||oe[1]!==this.current[1]||oe[2]!==this.current[2]||oe[3]!==this.current[3])&&(this.current=oe,this.gl.uniform4f(this.location,oe[0],oe[1],oe[2],oe[3]))},C}(wr),Hr=function(k){function C(V,oe){k.call(this,V,oe),this.current=Rs.transparent}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){(oe.r!==this.current.r||oe.g!==this.current.g||oe.b!==this.current.b||oe.a!==this.current.a)&&(this.current=oe,this.gl.uniform4f(this.location,oe.r,oe.g,oe.b,oe.a))},C}(wr),aa=new Float32Array(16),Qr=function(k){function C(V,oe){k.call(this,V,oe),this.current=aa}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.set=function(oe){if(oe[12]!==this.current[12]||oe[0]!==this.current[0]){this.current=oe,this.gl.uniformMatrix4fv(this.location,!1,oe);return}for(var _e=1;_e<16;_e++)if(oe[_e]!==this.current[_e]){this.current=oe,this.gl.uniformMatrix4fv(this.location,!1,oe);break}},C}(wr);function Gr(k){return[ve(255*k.r,255*k.g),ve(255*k.b,255*k.a)]}var ia=function(C,V,oe){this.value=C,this.uniformNames=V.map(function(_e){return"u_"+_e}),this.type=oe};ia.prototype.setUniform=function(C,V,oe){C.set(oe.constantOr(this.value))},ia.prototype.getBinding=function(C,V,oe){return this.type==="color"?new Hr(C,V):new tr(C,V)};var Ur=function(C,V){this.uniformNames=V.map(function(oe){return"u_"+oe}),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1};Ur.prototype.setConstantPatternPositions=function(C,V){this.pixelRatioFrom=V.pixelRatio,this.pixelRatioTo=C.pixelRatio,this.patternFrom=V.tlbr,this.patternTo=C.tlbr},Ur.prototype.setUniform=function(C,V,oe,_e){var Pe=_e==="u_pattern_to"?this.patternTo:_e==="u_pattern_from"?this.patternFrom:_e==="u_pixel_ratio_to"?this.pixelRatioTo:_e==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Pe&&C.set(Pe)},Ur.prototype.getBinding=function(C,V,oe){return oe.substr(0,9)==="u_pattern"?new Vr(C,V):new tr(C,V)};var wa=function(C,V,oe,_e){this.expression=C,this.type=oe,this.maxValue=0,this.paintVertexAttributes=V.map(function(Pe){return{name:"a_"+Pe,type:"Float32",components:oe==="color"?2:1,offset:0}}),this.paintVertexArray=new _e};wa.prototype.populatePaintArray=function(C,V,oe,_e,Pe){var je=this.paintVertexArray.length,ct=this.expression.evaluate(new Vi(0),V,{},_e,[],Pe);this.paintVertexArray.resize(C),this._setPaintValue(je,C,ct)},wa.prototype.updatePaintArray=function(C,V,oe,_e){var Pe=this.expression.evaluate({zoom:0},oe,_e);this._setPaintValue(C,V,Pe)},wa.prototype._setPaintValue=function(C,V,oe){if(this.type==="color")for(var _e=Gr(oe),Pe=C;Pe<V;Pe++)this.paintVertexArray.emplace(Pe,_e[0],_e[1]);else{for(var je=C;je<V;je++)this.paintVertexArray.emplace(je,oe);this.maxValue=Math.max(this.maxValue,Math.abs(oe))}},wa.prototype.upload=function(C){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=C.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},wa.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()};var Oa=function(C,V,oe,_e,Pe,je){this.expression=C,this.uniformNames=V.map(function(ct){return"u_"+ct+"_t"}),this.type=oe,this.useIntegerZoom=_e,this.zoom=Pe,this.maxValue=0,this.paintVertexAttributes=V.map(function(ct){return{name:"a_"+ct,type:"Float32",components:oe==="color"?4:2,offset:0}}),this.paintVertexArray=new je};Oa.prototype.populatePaintArray=function(C,V,oe,_e,Pe){var je=this.expression.evaluate(new Vi(this.zoom),V,{},_e,[],Pe),ct=this.expression.evaluate(new Vi(this.zoom+1),V,{},_e,[],Pe),Lt=this.paintVertexArray.length;this.paintVertexArray.resize(C),this._setPaintValue(Lt,C,je,ct)},Oa.prototype.updatePaintArray=function(C,V,oe,_e){var Pe=this.expression.evaluate({zoom:this.zoom},oe,_e),je=this.expression.evaluate({zoom:this.zoom+1},oe,_e);this._setPaintValue(C,V,Pe,je)},Oa.prototype._setPaintValue=function(C,V,oe,_e){if(this.type==="color")for(var Pe=Gr(oe),je=Gr(_e),ct=C;ct<V;ct++)this.paintVertexArray.emplace(ct,Pe[0],Pe[1],je[0],je[1]);else{for(var Lt=C;Lt<V;Lt++)this.paintVertexArray.emplace(Lt,oe,_e);this.maxValue=Math.max(this.maxValue,Math.abs(oe),Math.abs(_e))}},Oa.prototype.upload=function(C){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=C.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))},Oa.prototype.destroy=function(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()},Oa.prototype.setUniform=function(C,V){var oe=this.useIntegerZoom?Math.floor(V.zoom):V.zoom,_e=l(this.expression.interpolationFactor(oe,this.zoom,this.zoom+1),0,1);C.set(_e)},Oa.prototype.getBinding=function(C,V,oe){return new tr(C,V)};var ri=function(C,V,oe,_e,Pe,je){this.expression=C,this.type=V,this.useIntegerZoom=oe,this.zoom=_e,this.layerId=je,this.zoomInPaintVertexArray=new Pe,this.zoomOutPaintVertexArray=new Pe};ri.prototype.populatePaintArray=function(C,V,oe){var _e=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(C),this.zoomOutPaintVertexArray.resize(C),this._setPaintValues(_e,C,V.patterns&&V.patterns[this.layerId],oe)},ri.prototype.updatePaintArray=function(C,V,oe,_e,Pe){this._setPaintValues(C,V,oe.patterns&&oe.patterns[this.layerId],Pe)},ri.prototype._setPaintValues=function(C,V,oe,_e){if(!(!_e||!oe)){var Pe=oe.min,je=oe.mid,ct=oe.max,Lt=_e[Pe],Nt=_e[je],Xt=_e[ct];if(!(!Lt||!Nt||!Xt))for(var gr=C;gr<V;gr++)this.zoomInPaintVertexArray.emplace(gr,Nt.tl[0],Nt.tl[1],Nt.br[0],Nt.br[1],Lt.tl[0],Lt.tl[1],Lt.br[0],Lt.br[1],Nt.pixelRatio,Lt.pixelRatio),this.zoomOutPaintVertexArray.emplace(gr,Nt.tl[0],Nt.tl[1],Nt.br[0],Nt.br[1],Xt.tl[0],Xt.tl[1],Xt.br[0],Xt.br[1],Nt.pixelRatio,Xt.pixelRatio)}},ri.prototype.upload=function(C){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=C.createVertexBuffer(this.zoomInPaintVertexArray,K.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=C.createVertexBuffer(this.zoomOutPaintVertexArray,K.members,this.expression.isStateDependent))},ri.prototype.destroy=function(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()};var Pi=function(C,V,oe){this.binders={},this._buffers=[];var _e=[];for(var Pe in C.paint._values)if(oe(Pe)){var je=C.paint.get(Pe);if(!(!(je instanceof Ll)||!fl(je.property.specification))){var ct=Di(Pe,C.type),Lt=je.value,Nt=je.property.specification.type,Xt=je.property.useIntegerZoom,gr=je.property.specification["property-type"],Br=gr==="cross-faded"||gr==="cross-faded-data-driven";if(Lt.kind==="constant")this.binders[Pe]=Br?new Ur(Lt.value,ct):new ia(Lt.value,ct,Nt),_e.push("/u_"+Pe);else if(Lt.kind==="source"||Br){var Rr=ln(Pe,Nt,"source");this.binders[Pe]=Br?new ri(Lt,Nt,Xt,V,Rr,C.id):new wa(Lt,ct,Nt,Rr),_e.push("/a_"+Pe)}else{var na=ln(Pe,Nt,"composite");this.binders[Pe]=new Oa(Lt,ct,Nt,Xt,V,na),_e.push("/z_"+Pe)}}}this.cacheKey=_e.sort().join("")};Pi.prototype.getMaxValue=function(C){var V=this.binders[C];return V instanceof wa||V instanceof Oa?V.maxValue:0},Pi.prototype.populatePaintArrays=function(C,V,oe,_e,Pe){for(var je in this.binders){var ct=this.binders[je];(ct instanceof wa||ct instanceof Oa||ct instanceof ri)&&ct.populatePaintArray(C,V,oe,_e,Pe)}},Pi.prototype.setConstantPatternPositions=function(C,V){for(var oe in this.binders){var _e=this.binders[oe];_e instanceof Ur&&_e.setConstantPatternPositions(C,V)}},Pi.prototype.updatePaintArrays=function(C,V,oe,_e,Pe){var je=!1;for(var ct in C)for(var Lt=V.getPositions(ct),Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt],Br=oe.feature(gr.index);for(var Rr in this.binders){var na=this.binders[Rr];if((na instanceof wa||na instanceof Oa||na instanceof ri)&&na.expression.isStateDependent===!0){var Ia=_e.paint.get(Rr);na.expression=Ia.value,na.updatePaintArray(gr.start,gr.end,Br,C[ct],Pe),je=!0}}}return je},Pi.prototype.defines=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];(oe instanceof ia||oe instanceof Ur)&&C.push.apply(C,oe.uniformNames.map(function(_e){return"#define HAS_UNIFORM_"+_e}))}return C},Pi.prototype.getBinderAttributes=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];if(oe instanceof wa||oe instanceof Oa)for(var _e=0;_e<oe.paintVertexAttributes.length;_e++)C.push(oe.paintVertexAttributes[_e].name);else if(oe instanceof ri)for(var Pe=0;Pe<K.members.length;Pe++)C.push(K.members[Pe].name)}return C},Pi.prototype.getBinderUniforms=function(){var C=[];for(var V in this.binders){var oe=this.binders[V];if(oe instanceof ia||oe instanceof Ur||oe instanceof Oa)for(var _e=0,Pe=oe.uniformNames;_e<Pe.length;_e+=1){var je=Pe[_e];C.push(je)}}return C},Pi.prototype.getPaintVertexBuffers=function(){return this._buffers},Pi.prototype.getUniforms=function(C,V){var oe=[];for(var _e in this.binders){var Pe=this.binders[_e];if(Pe instanceof ia||Pe instanceof Ur||Pe instanceof Oa)for(var je=0,ct=Pe.uniformNames;je<ct.length;je+=1){var Lt=ct[je];if(V[Lt]){var Nt=Pe.getBinding(C,V[Lt],Lt);oe.push({name:Lt,property:_e,binding:Nt})}}}return oe},Pi.prototype.setUniforms=function(C,V,oe,_e){for(var Pe=0,je=V;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=ct.name,Nt=ct.property,Xt=ct.binding;this.binders[Nt].setUniform(Xt,_e,oe.get(Nt),Lt)}},Pi.prototype.updatePaintBuffers=function(C){this._buffers=[];for(var V in this.binders){var oe=this.binders[V];if(C&&oe instanceof ri){var _e=C.fromScale===2?oe.zoomInPaintVertexBuffer:oe.zoomOutPaintVertexBuffer;_e&&this._buffers.push(_e)}else(oe instanceof wa||oe instanceof Oa)&&oe.paintVertexBuffer&&this._buffers.push(oe.paintVertexBuffer)}},Pi.prototype.upload=function(C){for(var V in this.binders){var oe=this.binders[V];(oe instanceof wa||oe instanceof Oa||oe instanceof ri)&&oe.upload(C)}this.updatePaintBuffers()},Pi.prototype.destroy=function(){for(var C in this.binders){var V=this.binders[C];(V instanceof wa||V instanceof Oa||V instanceof ri)&&V.destroy()}};var mi=function(C,V,oe){oe===void 0&&(oe=function(){return!0}),this.programConfigurations={};for(var _e=0,Pe=C;_e<Pe.length;_e+=1){var je=Pe[_e];this.programConfigurations[je.id]=new Pi(je,V,oe)}this.needsUpload=!1,this._featureMap=new st,this._bufferOffset=0};mi.prototype.populatePaintArrays=function(C,V,oe,_e,Pe,je){for(var ct in this.programConfigurations)this.programConfigurations[ct].populatePaintArrays(C,V,_e,Pe,je);V.id!==void 0&&this._featureMap.add(V.id,oe,this._bufferOffset,C),this._bufferOffset=C,this.needsUpload=!0},mi.prototype.updatePaintArrays=function(C,V,oe,_e){for(var Pe=0,je=oe;Pe<je.length;Pe+=1){var ct=je[Pe];this.needsUpload=this.programConfigurations[ct.id].updatePaintArrays(C,this._featureMap,V,ct,_e)||this.needsUpload}},mi.prototype.get=function(C){return this.programConfigurations[C]},mi.prototype.upload=function(C){if(this.needsUpload){for(var V in this.programConfigurations)this.programConfigurations[V].upload(C);this.needsUpload=!1}},mi.prototype.destroy=function(){for(var C in this.programConfigurations)this.programConfigurations[C].destroy()};function Di(k,C){var V={"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]};return V[k]||[k.replace(C+"-","").replace(/-/g,"_")]}function An(k){var C={"line-pattern":{source:bn,composite:bn},"fill-pattern":{source:bn,composite:bn},"fill-extrusion-pattern":{source:bn,composite:bn}};return C[k]}function ln(k,C,V){var oe={color:{source:Dn,composite:$l},number:{source:wn,composite:Dn}},_e=An(k);return _e&&_e[V]||oe[C][V]}de("ConstantBinder",ia),de("CrossFadedConstantBinder",Ur),de("SourceExpressionBinder",wa),de("CrossFadedCompositeBinder",ri),de("CompositeExpressionBinder",Oa),de("ProgramConfiguration",Pi,{omit:["_buffers"]}),de("ProgramConfigurationSet",mi);var Ii=8192,Wi=15,Hi=Math.pow(2,Wi-1)-1,yn=-Hi-1;function zn(k){for(var C=Ii/k.extent,V=k.loadGeometry(),oe=0;oe<V.length;oe++)for(var _e=V[oe],Pe=0;Pe<_e.length;Pe++){var je=_e[Pe],ct=Math.round(je.x*C),Lt=Math.round(je.y*C);je.x=l(ct,yn,Hi),je.y=l(Lt,yn,Hi),(ct<je.x||ct>je.x+1||Lt<je.y||Lt>je.y+1)&&U("Geometry exceeds allowed extent, reduce your vector tile buffer size")}return V}function ms(k,C){return{type:k.type,id:k.id,properties:k.properties,geometry:C?zn(k):[]}}function us(k,C,V,oe,_e){k.emplaceBack(C*2+(oe+1)/2,V*2+(_e+1)/2)}var Vs=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new Mi,this.indexArray=new jn,this.segments=new Cs,this.programConfigurations=new mi(C.layers,C.zoom),this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};Vs.prototype.populate=function(C,V,oe){var _e=this.layers[0],Pe=[],je=null;_e.type==="circle"&&(je=_e.layout.get("circle-sort-key"));for(var ct=0,Lt=C;ct<Lt.length;ct+=1){var Nt=Lt[ct],Xt=Nt.feature,gr=Nt.id,Br=Nt.index,Rr=Nt.sourceLayerIndex,na=this.layers[0]._featureFilter.needGeometry,Ia=ms(Xt,na);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),Ia,oe)){var ii=je?je.evaluate(Ia,{},oe):void 0,Wa={id:gr,properties:Xt.properties,type:Xt.type,sourceLayerIndex:Rr,index:Br,geometry:na?Ia.geometry:zn(Xt),patterns:{},sortKey:ii};Pe.push(Wa)}}je&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Si=0,ci=Pe;Si<ci.length;Si+=1){var Ai=ci[Si],Li=Ai,Ki=Li.geometry,kn=Li.index,Tn=Li.sourceLayerIndex,lo=C[kn].feature;this.addFeature(Ai,Ki,kn,oe),V.featureIndex.insert(lo,Ki,kn,Tn,this.index)}},Vs.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},Vs.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Vs.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Vs.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,af),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},Vs.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Vs.prototype.addFeature=function(C,V,oe,_e){for(var Pe=0,je=V;Pe<je.length;Pe+=1)for(var ct=je[Pe],Lt=0,Nt=ct;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt],gr=Xt.x,Br=Xt.y;if(!(gr<0||gr>=Ii||Br<0||Br>=Ii)){var Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,C.sortKey),na=Rr.vertexLength;us(this.layoutVertexArray,gr,Br,-1,-1),us(this.layoutVertexArray,gr,Br,1,-1),us(this.layoutVertexArray,gr,Br,1,1),us(this.layoutVertexArray,gr,Br,-1,1),this.indexArray.emplaceBack(na,na+1,na+2),this.indexArray.emplaceBack(na,na+3,na+2),Rr.vertexLength+=4,Rr.primitiveLength+=2}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,{},_e)},de("CircleBucket",Vs,{omit:["layers"]});function qo(k,C){for(var V=0;V<k.length;V++)if(kh(C,k[V]))return!0;for(var oe=0;oe<C.length;oe++)if(kh(k,C[oe]))return!0;return!!Sp(k,C)}function Ls(k,C,V){return!!(kh(k,C)||Vp(C,k,V))}function wl(k,C){if(k.length===1)return td(C,k[0]);for(var V=0;V<C.length;V++)for(var oe=C[V],_e=0;_e<oe.length;_e++)if(kh(k,oe[_e]))return!0;for(var Pe=0;Pe<k.length;Pe++)if(td(C,k[Pe]))return!0;for(var je=0;je<C.length;je++)if(Sp(k,C[je]))return!0;return!1}function Ru(k,C,V){for(var oe=0;oe<C.length;oe++){var _e=C[oe];if(k.length>=3){for(var Pe=0;Pe<_e.length;Pe++)if(kh(k,_e[Pe]))return!0}if(Ap(k,_e,V))return!0}return!1}function Ap(k,C,V){if(k.length>1){if(Sp(k,C))return!0;for(var oe=0;oe<C.length;oe++)if(Vp(C[oe],k,V))return!0}for(var _e=0;_e<k.length;_e++)if(Vp(k[_e],C,V))return!0;return!1}function Sp(k,C){if(k.length===0||C.length===0)return!1;for(var V=0;V<k.length-1;V++)for(var oe=k[V],_e=k[V+1],Pe=0;Pe<C.length-1;Pe++){var je=C[Pe],ct=C[Pe+1];if(Eh(oe,_e,je,ct))return!0}return!1}function Eh(k,C,V,oe){return W(k,V,oe)!==W(C,V,oe)&&W(k,C,V)!==W(k,C,oe)}function Vp(k,C,V){var oe=V*V;if(C.length===1)return k.distSqr(C[0])<oe;for(var _e=1;_e<C.length;_e++){var Pe=C[_e-1],je=C[_e];if(Vd(k,Pe,je)<oe)return!0}return!1}function Vd(k,C,V){var oe=C.distSqr(V);if(oe===0)return k.distSqr(C);var _e=((k.x-C.x)*(V.x-C.x)+(k.y-C.y)*(V.y-C.y))/oe;return _e<0?k.distSqr(C):_e>1?k.distSqr(V):k.distSqr(V.sub(C)._mult(_e)._add(C))}function td(k,C){for(var V=!1,oe,_e,Pe,je=0;je<k.length;je++){oe=k[je];for(var ct=0,Lt=oe.length-1;ct<oe.length;Lt=ct++)_e=oe[ct],Pe=oe[Lt],_e.y>C.y!=Pe.y>C.y&&C.x<(Pe.x-_e.x)*(C.y-_e.y)/(Pe.y-_e.y)+_e.x&&(V=!V)}return V}function kh(k,C){for(var V=!1,oe=0,_e=k.length-1;oe<k.length;_e=oe++){var Pe=k[oe],je=k[_e];Pe.y>C.y!=je.y>C.y&&C.x<(je.x-Pe.x)*(C.y-Pe.y)/(je.y-Pe.y)+Pe.x&&(V=!V)}return V}function rd(k,C,V,oe,_e){for(var Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe];if(C<=ct.x&&V<=ct.y&&oe>=ct.x&&_e>=ct.y)return!0}var Lt=[new i(C,V),new i(C,_e),new i(oe,_e),new i(oe,V)];if(k.length>2)for(var Nt=0,Xt=Lt;Nt<Xt.length;Nt+=1){var gr=Xt[Nt];if(kh(k,gr))return!0}for(var Br=0;Br<k.length-1;Br++){var Rr=k[Br],na=k[Br+1];if(Xh(Rr,na,Lt))return!0}return!1}function Xh(k,C,V){var oe=V[0],_e=V[2];if(k.x<oe.x&&C.x<oe.x||k.x>_e.x&&C.x>_e.x||k.y<oe.y&&C.y<oe.y||k.y>_e.y&&C.y>_e.y)return!1;var Pe=W(k,C,V[0]);return Pe!==W(k,C,V[1])||Pe!==W(k,C,V[2])||Pe!==W(k,C,V[3])}function Ch(k,C,V){var oe=C.paint.get(k).value;return oe.kind==="constant"?oe.value:V.programConfigurations.get(C.id).getMaxValue(k)}function Mp(k){return Math.sqrt(k[0]*k[0]+k[1]*k[1])}function qp(k,C,V,oe,_e){if(!C[0]&&!C[1])return k;var Pe=i.convert(C)._mult(_e);V==="viewport"&&Pe._rotate(-oe);for(var je=[],ct=0;ct<k.length;ct++){var Lt=k[ct];je.push(Lt.sub(Pe))}return je}var Ep=new xi({"circle-sort-key":new ra(fi.layout_circle["circle-sort-key"])}),Cv=new xi({"circle-radius":new ra(fi.paint_circle["circle-radius"]),"circle-color":new ra(fi.paint_circle["circle-color"]),"circle-blur":new ra(fi.paint_circle["circle-blur"]),"circle-opacity":new ra(fi.paint_circle["circle-opacity"]),"circle-translate":new Qt(fi.paint_circle["circle-translate"]),"circle-translate-anchor":new Qt(fi.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new Qt(fi.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new Qt(fi.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new ra(fi.paint_circle["circle-stroke-width"]),"circle-stroke-color":new ra(fi.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new ra(fi.paint_circle["circle-stroke-opacity"])}),qd={paint:Cv,layout:Ep},Sf=typeof Float32Array<"u"?Float32Array:Array;Math.hypot||(Math.hypot=function(){for(var k=arguments,C=0,V=arguments.length;V--;)C+=k[V]*k[V];return Math.sqrt(C)});function Hd(){var k=new Sf(4);return Sf!=Float32Array&&(k[1]=0,k[2]=0),k[0]=1,k[3]=1,k}function Lv(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3],ct=Math.sin(V),Lt=Math.cos(V);return k[0]=oe*Lt+Pe*ct,k[1]=_e*Lt+je*ct,k[2]=oe*-ct+Pe*Lt,k[3]=_e*-ct+je*Lt,k}function eh(){var k=new Sf(9);return Sf!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[5]=0,k[6]=0,k[7]=0),k[0]=1,k[4]=1,k[8]=1,k}function iv(k,C){var V=Math.sin(C),oe=Math.cos(C);return k[0]=oe,k[1]=V,k[2]=0,k[3]=-V,k[4]=oe,k[5]=0,k[6]=0,k[7]=0,k[8]=1,k}function im(){var k=new Sf(16);return Sf!=Float32Array&&(k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[11]=0,k[12]=0,k[13]=0,k[14]=0),k[0]=1,k[5]=1,k[10]=1,k[15]=1,k}function nm(k){var C=new Sf(16);return C[0]=k[0],C[1]=k[1],C[2]=k[2],C[3]=k[3],C[4]=k[4],C[5]=k[5],C[6]=k[6],C[7]=k[7],C[8]=k[8],C[9]=k[9],C[10]=k[10],C[11]=k[11],C[12]=k[12],C[13]=k[13],C[14]=k[14],C[15]=k[15],C}function Pv(k){return k[0]=1,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=1,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[10]=1,k[11]=0,k[12]=0,k[13]=0,k[14]=0,k[15]=1,k}function nv(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=C[3],je=C[4],ct=C[5],Lt=C[6],Nt=C[7],Xt=C[8],gr=C[9],Br=C[10],Rr=C[11],na=C[12],Ia=C[13],ii=C[14],Wa=C[15],Si=V*ct-oe*je,ci=V*Lt-_e*je,Ai=V*Nt-Pe*je,Li=oe*Lt-_e*ct,Ki=oe*Nt-Pe*ct,kn=_e*Nt-Pe*Lt,Tn=Xt*Ia-gr*na,lo=Xt*ii-Br*na,qn=Xt*Wa-Rr*na,to=gr*ii-Br*Ia,ds=gr*Wa-Rr*Ia,uo=Br*Wa-Rr*ii,vo=Si*uo-ci*ds+Ai*to+Li*qn-Ki*lo+kn*Tn;return vo?(vo=1/vo,k[0]=(ct*uo-Lt*ds+Nt*to)*vo,k[1]=(_e*ds-oe*uo-Pe*to)*vo,k[2]=(Ia*kn-ii*Ki+Wa*Li)*vo,k[3]=(Br*Ki-gr*kn-Rr*Li)*vo,k[4]=(Lt*qn-je*uo-Nt*lo)*vo,k[5]=(V*uo-_e*qn+Pe*lo)*vo,k[6]=(ii*Ai-na*kn-Wa*ci)*vo,k[7]=(Xt*kn-Br*Ai+Rr*ci)*vo,k[8]=(je*ds-ct*qn+Nt*Tn)*vo,k[9]=(oe*qn-V*ds-Pe*Tn)*vo,k[10]=(na*Ki-Ia*Ai+Wa*Si)*vo,k[11]=(gr*Ai-Xt*Ki-Rr*Si)*vo,k[12]=(ct*lo-je*to-Lt*Tn)*vo,k[13]=(V*to-oe*lo+_e*Tn)*vo,k[14]=(Ia*ci-na*Li-ii*Si)*vo,k[15]=(Xt*Li-gr*ci+Br*Si)*vo,k):null}function ov(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3],ct=C[4],Lt=C[5],Nt=C[6],Xt=C[7],gr=C[8],Br=C[9],Rr=C[10],na=C[11],Ia=C[12],ii=C[13],Wa=C[14],Si=C[15],ci=V[0],Ai=V[1],Li=V[2],Ki=V[3];return k[0]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[1]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[2]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[3]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[4],Ai=V[5],Li=V[6],Ki=V[7],k[4]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[5]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[6]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[7]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[8],Ai=V[9],Li=V[10],Ki=V[11],k[8]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[9]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[10]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[11]=ci*je+Ai*Xt+Li*na+Ki*Si,ci=V[12],Ai=V[13],Li=V[14],Ki=V[15],k[12]=ci*oe+Ai*ct+Li*gr+Ki*Ia,k[13]=ci*_e+Ai*Lt+Li*Br+Ki*ii,k[14]=ci*Pe+Ai*Nt+Li*Rr+Ki*Wa,k[15]=ci*je+Ai*Xt+Li*na+Ki*Si,k}function Du(k,C,V){var oe=V[0],_e=V[1],Pe=V[2],je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa;return C===k?(k[12]=C[0]*oe+C[4]*_e+C[8]*Pe+C[12],k[13]=C[1]*oe+C[5]*_e+C[9]*Pe+C[13],k[14]=C[2]*oe+C[6]*_e+C[10]*Pe+C[14],k[15]=C[3]*oe+C[7]*_e+C[11]*Pe+C[15]):(je=C[0],ct=C[1],Lt=C[2],Nt=C[3],Xt=C[4],gr=C[5],Br=C[6],Rr=C[7],na=C[8],Ia=C[9],ii=C[10],Wa=C[11],k[0]=je,k[1]=ct,k[2]=Lt,k[3]=Nt,k[4]=Xt,k[5]=gr,k[6]=Br,k[7]=Rr,k[8]=na,k[9]=Ia,k[10]=ii,k[11]=Wa,k[12]=je*oe+Xt*_e+na*Pe+C[12],k[13]=ct*oe+gr*_e+Ia*Pe+C[13],k[14]=Lt*oe+Br*_e+ii*Pe+C[14],k[15]=Nt*oe+Rr*_e+Wa*Pe+C[15]),k}function Bl(k,C,V){var oe=V[0],_e=V[1],Pe=V[2];return k[0]=C[0]*oe,k[1]=C[1]*oe,k[2]=C[2]*oe,k[3]=C[3]*oe,k[4]=C[4]*_e,k[5]=C[5]*_e,k[6]=C[6]*_e,k[7]=C[7]*_e,k[8]=C[8]*Pe,k[9]=C[9]*Pe,k[10]=C[10]*Pe,k[11]=C[11]*Pe,k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15],k}function Lh(k,C,V){var oe=Math.sin(V),_e=Math.cos(V),Pe=C[4],je=C[5],ct=C[6],Lt=C[7],Nt=C[8],Xt=C[9],gr=C[10],Br=C[11];return C!==k&&(k[0]=C[0],k[1]=C[1],k[2]=C[2],k[3]=C[3],k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15]),k[4]=Pe*_e+Nt*oe,k[5]=je*_e+Xt*oe,k[6]=ct*_e+gr*oe,k[7]=Lt*_e+Br*oe,k[8]=Nt*_e-Pe*oe,k[9]=Xt*_e-je*oe,k[10]=gr*_e-ct*oe,k[11]=Br*_e-Lt*oe,k}function Iv(k,C,V){var oe=Math.sin(V),_e=Math.cos(V),Pe=C[0],je=C[1],ct=C[2],Lt=C[3],Nt=C[4],Xt=C[5],gr=C[6],Br=C[7];return C!==k&&(k[8]=C[8],k[9]=C[9],k[10]=C[10],k[11]=C[11],k[12]=C[12],k[13]=C[13],k[14]=C[14],k[15]=C[15]),k[0]=Pe*_e+Nt*oe,k[1]=je*_e+Xt*oe,k[2]=ct*_e+gr*oe,k[3]=Lt*_e+Br*oe,k[4]=Nt*_e-Pe*oe,k[5]=Xt*_e-je*oe,k[6]=gr*_e-ct*oe,k[7]=Br*_e-Lt*oe,k}function om(k,C,V,oe,_e){var Pe=1/Math.tan(C/2),je;return k[0]=Pe/V,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=Pe,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[11]=-1,k[12]=0,k[13]=0,k[15]=0,_e!=null&&_e!==1/0?(je=1/(oe-_e),k[10]=(_e+oe)*je,k[14]=2*_e*oe*je):(k[10]=-1,k[14]=-2*oe),k}function Ql(k,C,V,oe,_e,Pe,je){var ct=1/(C-V),Lt=1/(oe-_e),Nt=1/(Pe-je);return k[0]=-2*ct,k[1]=0,k[2]=0,k[3]=0,k[4]=0,k[5]=-2*Lt,k[6]=0,k[7]=0,k[8]=0,k[9]=0,k[10]=2*Nt,k[11]=0,k[12]=(C+V)*ct,k[13]=(_e+oe)*Lt,k[14]=(je+Pe)*Nt,k[15]=1,k}var xg=ov;function sv(){var k=new Sf(3);return Sf!=Float32Array&&(k[0]=0,k[1]=0,k[2]=0),k}function y0(k){var C=new Sf(3);return C[0]=k[0],C[1]=k[1],C[2]=k[2],C}function kp(k,C,V){return k[0]=C[0]+V[0],k[1]=C[1]+V[1],k[2]=C[2]+V[2],k}function lv(k,C,V){return k[0]=C[0]-V[0],k[1]=C[1]-V[1],k[2]=C[2]-V[2],k}function _0(k,C,V){return k[0]=C[0]*V,k[1]=C[1]*V,k[2]=C[2]*V,k}function bg(k,C){var V=C[0],oe=C[1],_e=C[2],Pe=V*V+oe*oe+_e*_e;return Pe>0&&(Pe=1/Math.sqrt(Pe)),k[0]=C[0]*Pe,k[1]=C[1]*Pe,k[2]=C[2]*Pe,k}function NT(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]}function UT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=V[0],ct=V[1],Lt=V[2];return k[0]=_e*Lt-Pe*ct,k[1]=Pe*je-oe*Lt,k[2]=oe*ct-_e*je,k}function jT(k,C,V){var oe=C[0],_e=C[1],Pe=C[2];return k[0]=oe*V[0]+_e*V[3]+Pe*V[6],k[1]=oe*V[1]+_e*V[4]+Pe*V[7],k[2]=oe*V[2]+_e*V[5]+Pe*V[8],k}var VT=lv,cC=function(){var k=sv();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=3),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],k[2]=C[ct+2],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1],C[ct+2]=k[2];return C}}();function qT(){var k=new Sf(4);return Sf!=Float32Array&&(k[0]=0,k[1]=0,k[2]=0,k[3]=0),k}function HT(k,C,V){return k[0]=C[0]*V,k[1]=C[1]*V,k[2]=C[2]*V,k[3]=C[3]*V,k}function GT(k,C){return k[0]*C[0]+k[1]*C[1]+k[2]*C[2]+k[3]*C[3]}function Rv(k,C,V){var oe=C[0],_e=C[1],Pe=C[2],je=C[3];return k[0]=V[0]*oe+V[4]*_e+V[8]*Pe+V[12]*je,k[1]=V[1]*oe+V[5]*_e+V[9]*Pe+V[13]*je,k[2]=V[2]*oe+V[6]*_e+V[10]*Pe+V[14]*je,k[3]=V[3]*oe+V[7]*_e+V[11]*Pe+V[15]*je,k}var wg=function(){var k=qT();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=4),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],k[2]=C[ct+2],k[3]=C[ct+3],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1],C[ct+2]=k[2],C[ct+3]=k[3];return C}}();function kx(){var k=new Sf(2);return Sf!=Float32Array&&(k[0]=0,k[1]=0),k}function C1(k){var C=k[0],V=k[1];return C*C+V*V}var L1=C1,fC=function(){var k=kx();return function(C,V,oe,_e,Pe,je){var ct,Lt;for(V||(V=2),oe||(oe=0),_e?Lt=Math.min(_e*V+oe,C.length):Lt=C.length,ct=oe;ct<Lt;ct+=V)k[0]=C[ct],k[1]=C[ct+1],Pe(k,k,je),C[ct]=k[0],C[ct+1]=k[1];return C}}(),WT=function(k){function C(V){k.call(this,V,qd)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new Vs(oe)},C.prototype.queryRadius=function(oe){var _e=oe;return Ch("circle-radius",this,_e)+Ch("circle-stroke-width",this,_e)+Mp(this.paint.get("circle-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt,Xt){for(var gr=qp(oe,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),Lt.angle,Nt),Br=this.paint.get("circle-radius").evaluate(_e,Pe),Rr=this.paint.get("circle-stroke-width").evaluate(_e,Pe),na=Br+Rr,Ia=this.paint.get("circle-pitch-alignment")==="map",ii=Ia?gr:Lx(gr,Xt),Wa=Ia?na*Nt:na,Si=0,ci=je;Si<ci.length;Si+=1)for(var Ai=ci[Si],Li=0,Ki=Ai;Li<Ki.length;Li+=1){var kn=Ki[Li],Tn=Ia?kn:Cx(kn,Xt),lo=Wa,qn=Rv([],[kn.x,kn.y,0,1],Xt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?lo*=qn[3]/Lt.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(lo*=Lt.cameraToCenterDistance/qn[3]),Ls(ii,Tn,lo))return!0}return!1},C}(Fi);function Cx(k,C){var V=Rv([],[k.x,k.y,0,1],C);return new i(V[0]/V[3],V[1]/V[3])}function Lx(k,C){return k.map(function(V){return Cx(V,C)})}var P1=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Vs);de("HeatmapBucket",P1,{omit:["layers"]});function Ph(k,C,V,oe){var _e=C.width,Pe=C.height;if(!oe)oe=new Uint8Array(_e*Pe*V);else if(oe instanceof Uint8ClampedArray)oe=new Uint8Array(oe.buffer);else if(oe.length!==_e*Pe*V)throw new RangeError("mismatched image size");return k.width=_e,k.height=Pe,k.data=oe,k}function x0(k,C,V){var oe=C.width,_e=C.height;if(!(oe===k.width&&_e===k.height)){var Pe=Ph({},{width:oe,height:_e},V);b0(k,Pe,{x:0,y:0},{x:0,y:0},{width:Math.min(k.width,oe),height:Math.min(k.height,_e)},V),k.width=oe,k.height=_e,k.data=Pe.data}}function b0(k,C,V,oe,_e,Pe){if(_e.width===0||_e.height===0)return C;if(_e.width>k.width||_e.height>k.height||V.x>k.width-_e.width||V.y>k.height-_e.height)throw new RangeError("out of range source coordinates for image copy");if(_e.width>C.width||_e.height>C.height||oe.x>C.width-_e.width||oe.y>C.height-_e.height)throw new RangeError("out of range destination coordinates for image copy");for(var je=k.data,ct=C.data,Lt=0;Lt<_e.height;Lt++)for(var Nt=((V.y+Lt)*k.width+V.x)*Pe,Xt=((oe.y+Lt)*C.width+oe.x)*Pe,gr=0;gr<_e.width*Pe;gr++)ct[Xt+gr]=je[Nt+gr];return C}var Cp=function(C,V){Ph(this,C,1,V)};Cp.prototype.resize=function(C){x0(this,C,1)},Cp.prototype.clone=function(){return new Cp({width:this.width,height:this.height},new Uint8Array(this.data))},Cp.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,1)};var Of=function(C,V){Ph(this,C,4,V)};Of.prototype.resize=function(C){x0(this,C,4)},Of.prototype.replace=function(C,V){V?this.data.set(C):C instanceof Uint8ClampedArray?this.data=new Uint8Array(C.buffer):this.data=C},Of.prototype.clone=function(){return new Of({width:this.width,height:this.height},new Uint8Array(this.data))},Of.copy=function(C,V,oe,_e,Pe){b0(C,V,oe,_e,Pe,4)},de("AlphaImage",Cp),de("RGBAImage",Of);var Tg=new xi({"heatmap-radius":new ra(fi.paint_heatmap["heatmap-radius"]),"heatmap-weight":new ra(fi.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new Qt(fi.paint_heatmap["heatmap-intensity"]),"heatmap-color":new wi(fi.paint_heatmap["heatmap-color"]),"heatmap-opacity":new Qt(fi.paint_heatmap["heatmap-opacity"])}),sm={paint:Tg};function Ag(k){var C={},V=k.resolution||256,oe=k.clips?k.clips.length:1,_e=k.image||new Of({width:V,height:oe}),Pe=function(Si,ci,Ai){C[k.evaluationKey]=Ai;var Li=k.expression.evaluate(C);_e.data[Si+ci+0]=Math.floor(Li.r*255/Li.a),_e.data[Si+ci+1]=Math.floor(Li.g*255/Li.a),_e.data[Si+ci+2]=Math.floor(Li.b*255/Li.a),_e.data[Si+ci+3]=Math.floor(Li.a*255)};if(k.clips)for(var Nt=0,Xt=0;Nt<oe;++Nt,Xt+=V*4)for(var gr=0,Br=0;gr<V;gr++,Br+=4){var Rr=gr/(V-1),na=k.clips[Nt],Ia=na.start,ii=na.end,Wa=Ia*(1-Rr)+ii*Rr;Pe(Xt,Br,Wa)}else for(var je=0,ct=0;je<V;je++,ct+=4){var Lt=je/(V-1);Pe(0,ct,Lt)}return _e}var w0=function(k){function C(V){k.call(this,V,sm),this._updateColorRamp()}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new P1(oe)},C.prototype._handleSpecialPaintPropertyUpdate=function(oe){oe==="heatmap-color"&&this._updateColorRamp()},C.prototype._updateColorRamp=function(){var oe=this._transitionablePaint._values["heatmap-color"].value.expression;this.colorRamp=Ag({expression:oe,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null},C.prototype.resize=function(){this.heatmapFbo&&(this.heatmapFbo.destroy(),this.heatmapFbo=null)},C.prototype.queryRadius=function(){return 0},C.prototype.queryIntersectsFeature=function(){return!1},C.prototype.hasOffscreenPass=function(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"},C}(Fi),ZT=new xi({"hillshade-illumination-direction":new Qt(fi.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new Qt(fi.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new Qt(fi.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new Qt(fi.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new Qt(fi.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new Qt(fi.paint_hillshade["hillshade-accent-color"])}),XT={paint:ZT},Px=function(k){function C(V){k.call(this,V,XT)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.hasOffscreenPass=function(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"},C}(Fi),Ix=on([{name:"a_pos",components:2,type:"Int16"}],4),YT=Ix.members,T0=lm,Rx=lm;function lm(k,C,V){V=V||2;var oe=C&&C.length,_e=oe?C[0]*V:k.length,Pe=A0(k,0,_e,V,!0),je=[];if(!Pe||Pe.next===Pe.prev)return je;var ct,Lt,Nt,Xt,gr,Br,Rr;if(oe&&(Pe=cv(k,C,Pe,V)),k.length>80*V){ct=Nt=k[0],Lt=Xt=k[1];for(var na=V;na<_e;na+=V)gr=k[na],Br=k[na+1],gr<ct&&(ct=gr),Br<Lt&&(Lt=Br),gr>Nt&&(Nt=gr),Br>Xt&&(Xt=Br);Rr=Math.max(Nt-ct,Xt-Lt),Rr=Rr!==0?1/Rr:0}return Sg(Pe,je,V,ct,Lt,Rr),je}function A0(k,C,V,oe,_e){var Pe,je;if(_e===B1(k,C,V,oe)>0)for(Pe=C;Pe<V;Pe+=oe)je=Bx(Pe,k[Pe],k[Pe+1],je);else for(Pe=V-oe;Pe>=C;Pe-=oe)je=Bx(Pe,k[Pe],k[Pe+1],je);return je&&Eg(je,je.next)&&(Lg(je),je=je.next),je}function uv(k,C){if(!k)return k;C||(C=k);var V=k,oe;do if(oe=!1,!V.steiner&&(Eg(V,V.next)||qc(V.prev,V,V.next)===0)){if(Lg(V),V=C=V.prev,V===V.next)break;oe=!0}else V=V.next;while(oe||V!==C);return C}function Sg(k,C,V,oe,_e,Pe,je){if(k){!je&&Pe&&S0(k,oe,_e,Pe);for(var ct=k,Lt,Nt;k.prev!==k.next;){if(Lt=k.prev,Nt=k.next,Pe?zx(k,oe,_e,Pe):Dx(k)){C.push(Lt.i/V),C.push(k.i/V),C.push(Nt.i/V),Lg(k),k=Nt.next,ct=Nt.next;continue}if(k=Nt,k===ct){je?je===1?(k=Mg(uv(k),C,V),Sg(k,C,V,oe,_e,Pe,2)):je===2&&yd(k,C,V,oe,_e,Pe):Sg(uv(k),C,V,oe,_e,Pe,1);break}}}}function Dx(k){var C=k.prev,V=k,oe=k.next;if(qc(C,V,oe)>=0)return!1;for(var _e=k.next.next;_e!==k.prev;){if(fv(C.x,C.y,V.x,V.y,oe.x,oe.y,_e.x,_e.y)&&qc(_e.prev,_e,_e.next)>=0)return!1;_e=_e.next}return!0}function zx(k,C,V,oe){var _e=k.prev,Pe=k,je=k.next;if(qc(_e,Pe,je)>=0)return!1;for(var ct=_e.x<Pe.x?_e.x<je.x?_e.x:je.x:Pe.x<je.x?Pe.x:je.x,Lt=_e.y<Pe.y?_e.y<je.y?_e.y:je.y:Pe.y<je.y?Pe.y:je.y,Nt=_e.x>Pe.x?_e.x>je.x?_e.x:je.x:Pe.x>je.x?Pe.x:je.x,Xt=_e.y>Pe.y?_e.y>je.y?_e.y:je.y:Pe.y>je.y?Pe.y:je.y,gr=D1(ct,Lt,C,V,oe),Br=D1(Nt,Xt,C,V,oe),Rr=k.prevZ,na=k.nextZ;Rr&&Rr.z>=gr&&na&&na.z<=Br;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0||(Rr=Rr.prevZ,na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0))return!1;na=na.nextZ}for(;Rr&&Rr.z>=gr;){if(Rr!==k.prev&&Rr!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,Rr.x,Rr.y)&&qc(Rr.prev,Rr,Rr.next)>=0)return!1;Rr=Rr.prevZ}for(;na&&na.z<=Br;){if(na!==k.prev&&na!==k.next&&fv(_e.x,_e.y,Pe.x,Pe.y,je.x,je.y,na.x,na.y)&&qc(na.prev,na,na.next)>=0)return!1;na=na.nextZ}return!0}function Mg(k,C,V){var oe=k;do{var _e=oe.prev,Pe=oe.next.next;!Eg(_e,Pe)&&M0(_e,oe,oe.next,Pe)&&Cg(_e,Pe)&&Cg(Pe,_e)&&(C.push(_e.i/V),C.push(oe.i/V),C.push(Pe.i/V),Lg(oe),Lg(oe.next),oe=k=Pe),oe=oe.next}while(oe!==k);return uv(oe)}function yd(k,C,V,oe,_e,Pe){var je=k;do{for(var ct=je.next.next;ct!==je.prev;){if(je.i!==ct.i&&um(je,ct)){var Lt=F1(je,ct);je=uv(je,je.next),Lt=uv(Lt,Lt.next),Sg(je,C,V,oe,_e,Pe),Sg(Lt,C,V,oe,_e,Pe);return}ct=ct.next}je=je.next}while(je!==k)}function cv(k,C,V,oe){var _e=[],Pe,je,ct,Lt,Nt;for(Pe=0,je=C.length;Pe<je;Pe++)ct=C[Pe]*oe,Lt=Pe<je-1?C[Pe+1]*oe:k.length,Nt=A0(k,ct,Lt,oe,!1),Nt===Nt.next&&(Nt.steiner=!0),_e.push(z1(Nt));for(_e.sort(Fx),Pe=0;Pe<_e.length;Pe++)I1(_e[Pe],V),V=uv(V,V.next);return V}function Fx(k,C){return k.x-C.x}function I1(k,C){if(C=KT(k,C),C){var V=F1(C,k);uv(C,C.next),uv(V,V.next)}}function KT(k,C){var V=C,oe=k.x,_e=k.y,Pe=-1/0,je;do{if(_e<=V.y&&_e>=V.next.y&&V.next.y!==V.y){var ct=V.x+(_e-V.y)*(V.next.x-V.x)/(V.next.y-V.y);if(ct<=oe&&ct>Pe){if(Pe=ct,ct===oe){if(_e===V.y)return V;if(_e===V.next.y)return V.next}je=V.x<V.next.x?V:V.next}}V=V.next}while(V!==C);if(!je)return null;if(oe===Pe)return je;var Lt=je,Nt=je.x,Xt=je.y,gr=1/0,Br;V=je;do oe>=V.x&&V.x>=Nt&&oe!==V.x&&fv(_e<Xt?oe:Pe,_e,Nt,Xt,_e<Xt?Pe:oe,_e,V.x,V.y)&&(Br=Math.abs(_e-V.y)/(oe-V.x),Cg(V,k)&&(Br<gr||Br===gr&&(V.x>je.x||V.x===je.x&&JT(je,V)))&&(je=V,gr=Br)),V=V.next;while(V!==Lt);return je}function JT(k,C){return qc(k.prev,k,C.prev)<0&&qc(C.next,k,k.next)<0}function S0(k,C,V,oe){var _e=k;do _e.z===null&&(_e.z=D1(_e.x,_e.y,C,V,oe)),_e.prevZ=_e.prev,_e.nextZ=_e.next,_e=_e.next;while(_e!==k);_e.prevZ.nextZ=null,_e.prevZ=null,R1(_e)}function R1(k){var C,V,oe,_e,Pe,je,ct,Lt,Nt=1;do{for(V=k,k=null,Pe=null,je=0;V;){for(je++,oe=V,ct=0,C=0;C<Nt&&(ct++,oe=oe.nextZ,!!oe);C++);for(Lt=Nt;ct>0||Lt>0&&oe;)ct!==0&&(Lt===0||!oe||V.z<=oe.z)?(_e=V,V=V.nextZ,ct--):(_e=oe,oe=oe.nextZ,Lt--),Pe?Pe.nextZ=_e:k=_e,_e.prevZ=Pe,Pe=_e;V=oe}Pe.nextZ=null,Nt*=2}while(je>1);return k}function D1(k,C,V,oe,_e){return k=32767*(k-V)*_e,C=32767*(C-oe)*_e,k=(k|k<<8)&16711935,k=(k|k<<4)&252645135,k=(k|k<<2)&858993459,k=(k|k<<1)&1431655765,C=(C|C<<8)&16711935,C=(C|C<<4)&252645135,C=(C|C<<2)&858993459,C=(C|C<<1)&1431655765,k|C<<1}function z1(k){var C=k,V=k;do(C.x<V.x||C.x===V.x&&C.y<V.y)&&(V=C),C=C.next;while(C!==k);return V}function fv(k,C,V,oe,_e,Pe,je,ct){return(_e-je)*(C-ct)-(k-je)*(Pe-ct)>=0&&(k-je)*(oe-ct)-(V-je)*(C-ct)>=0&&(V-je)*(Pe-ct)-(_e-je)*(oe-ct)>=0}function um(k,C){return k.next.i!==C.i&&k.prev.i!==C.i&&!Ox(k,C)&&(Cg(k,C)&&Cg(C,k)&&$T(k,C)&&(qc(k.prev,k,C.prev)||qc(k,C.prev,C))||Eg(k,C)&&qc(k.prev,k,k.next)>0&&qc(C.prev,C,C.next)>0)}function qc(k,C,V){return(C.y-k.y)*(V.x-C.x)-(C.x-k.x)*(V.y-C.y)}function Eg(k,C){return k.x===C.x&&k.y===C.y}function M0(k,C,V,oe){var _e=Dv(qc(k,C,V)),Pe=Dv(qc(k,C,oe)),je=Dv(qc(V,oe,k)),ct=Dv(qc(V,oe,C));return!!(_e!==Pe&&je!==ct||_e===0&&kg(k,V,C)||Pe===0&&kg(k,oe,C)||je===0&&kg(V,k,oe)||ct===0&&kg(V,C,oe))}function kg(k,C,V){return C.x<=Math.max(k.x,V.x)&&C.x>=Math.min(k.x,V.x)&&C.y<=Math.max(k.y,V.y)&&C.y>=Math.min(k.y,V.y)}function Dv(k){return k>0?1:k<0?-1:0}function Ox(k,C){var V=k;do{if(V.i!==k.i&&V.next.i!==k.i&&V.i!==C.i&&V.next.i!==C.i&&M0(V,V.next,k,C))return!0;V=V.next}while(V!==k);return!1}function Cg(k,C){return qc(k.prev,k,k.next)<0?qc(k,C,k.next)>=0&&qc(k,k.prev,C)>=0:qc(k,C,k.prev)<0||qc(k,k.next,C)<0}function $T(k,C){var V=k,oe=!1,_e=(k.x+C.x)/2,Pe=(k.y+C.y)/2;do V.y>Pe!=V.next.y>Pe&&V.next.y!==V.y&&_e<(V.next.x-V.x)*(Pe-V.y)/(V.next.y-V.y)+V.x&&(oe=!oe),V=V.next;while(V!==k);return oe}function F1(k,C){var V=new O1(k.i,k.x,k.y),oe=new O1(C.i,C.x,C.y),_e=k.next,Pe=C.prev;return k.next=C,C.prev=k,V.next=_e,_e.prev=V,oe.next=V,V.prev=oe,Pe.next=oe,oe.prev=Pe,oe}function Bx(k,C,V,oe){var _e=new O1(k,C,V);return oe?(_e.next=oe.next,_e.prev=oe,oe.next.prev=_e,oe.next=_e):(_e.prev=_e,_e.next=_e),_e}function Lg(k){k.next.prev=k.prev,k.prev.next=k.next,k.prevZ&&(k.prevZ.nextZ=k.nextZ),k.nextZ&&(k.nextZ.prevZ=k.prevZ)}function O1(k,C,V){this.i=k,this.x=C,this.y=V,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}lm.deviation=function(k,C,V,oe){var _e=C&&C.length,Pe=_e?C[0]*V:k.length,je=Math.abs(B1(k,0,Pe,V));if(_e)for(var ct=0,Lt=C.length;ct<Lt;ct++){var Nt=C[ct]*V,Xt=ct<Lt-1?C[ct+1]*V:k.length;je-=Math.abs(B1(k,Nt,Xt,V))}var gr=0;for(ct=0;ct<oe.length;ct+=3){var Br=oe[ct]*V,Rr=oe[ct+1]*V,na=oe[ct+2]*V;gr+=Math.abs((k[Br]-k[na])*(k[Rr+1]-k[Br+1])-(k[Br]-k[Rr])*(k[na+1]-k[Br+1]))}return je===0&&gr===0?0:Math.abs((gr-je)/je)};function B1(k,C,V,oe){for(var _e=0,Pe=C,je=V-oe;Pe<V;Pe+=oe)_e+=(k[je]-k[Pe])*(k[Pe+1]+k[je+1]),je=Pe;return _e}lm.flatten=function(k){for(var C=k[0][0].length,V={vertices:[],holes:[],dimensions:C},oe=0,_e=0;_e<k.length;_e++){for(var Pe=0;Pe<k[_e].length;Pe++)for(var je=0;je<C;je++)V.vertices.push(k[_e][Pe][je]);_e>0&&(oe+=k[_e-1].length,V.holes.push(oe))}return V},T0.default=Rx;function N1(k,C,V,oe,_e){Gd(k,C,V||0,oe||k.length-1,_e||Nx)}function Gd(k,C,V,oe,_e){for(;oe>V;){if(oe-V>600){var Pe=oe-V+1,je=C-V+1,ct=Math.log(Pe),Lt=.5*Math.exp(2*ct/3),Nt=.5*Math.sqrt(ct*Lt*(Pe-Lt)/Pe)*(je-Pe/2<0?-1:1),Xt=Math.max(V,Math.floor(C-je*Lt/Pe+Nt)),gr=Math.min(oe,Math.floor(C+(Pe-je)*Lt/Pe+Nt));Gd(k,C,Xt,gr,_e)}var Br=k[C],Rr=V,na=oe;for(cm(k,V,C),_e(k[oe],Br)>0&&cm(k,V,oe);Rr<na;){for(cm(k,Rr,na),Rr++,na--;_e(k[Rr],Br)<0;)Rr++;for(;_e(k[na],Br)>0;)na--}_e(k[V],Br)===0?cm(k,V,na):(na++,cm(k,na,oe)),na<=C&&(V=na+1),C<=na&&(oe=na-1)}}function cm(k,C,V){var oe=k[C];k[C]=k[V],k[V]=oe}function Nx(k,C){return k<C?-1:k>C?1:0}function E0(k,C){var V=k.length;if(V<=1)return[k];for(var oe=[],_e,Pe,je=0;je<V;je++){var ct=Q(k[je]);ct!==0&&(k[je].area=Math.abs(ct),Pe===void 0&&(Pe=ct<0),Pe===ct<0?(_e&&oe.push(_e),_e=[k[je]]):_e.push(k[je]))}if(_e&&oe.push(_e),C>1)for(var Lt=0;Lt<oe.length;Lt++)oe[Lt].length<=C||(N1(oe[Lt],C,1,oe[Lt].length-1,Ux),oe[Lt]=oe[Lt].slice(0,C));return oe}function Ux(k,C){return C.area-k.area}function k0(k,C,V){for(var oe=V.patternDependencies,_e=!1,Pe=0,je=C;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=ct.paint.get(k+"-pattern");Lt.isConstant()||(_e=!0);var Nt=Lt.constantOr(null);Nt&&(_e=!0,oe[Nt.to]=!0,oe[Nt.from]=!0)}return _e}function Pg(k,C,V,oe,_e){for(var Pe=_e.patternDependencies,je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.paint.get(k+"-pattern"),Xt=Nt.value;if(Xt.kind!=="constant"){var gr=Xt.evaluate({zoom:oe-1},V,{},_e.availableImages),Br=Xt.evaluate({zoom:oe},V,{},_e.availableImages),Rr=Xt.evaluate({zoom:oe+1},V,{},_e.availableImages);gr=gr&&gr.name?gr.name:gr,Br=Br&&Br.name?Br.name:Br,Rr=Rr&&Rr.name?Rr.name:Rr,Pe[gr]=!0,Pe[Br]=!0,Pe[Rr]=!0,V.patterns[Lt.id]={min:gr,mid:Br,max:Rr}}}return V}var Ig=500,ad=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Mi,this.indexArray=new jn,this.indexArray2=new os,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.segments2=new Cs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};ad.prototype.populate=function(C,V,oe){this.hasPattern=k0("fill",this.layers,V);for(var _e=this.layers[0].layout.get("fill-sort-key"),Pe=[],je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.feature,Xt=Lt.id,gr=Lt.index,Br=Lt.sourceLayerIndex,Rr=this.layers[0]._featureFilter.needGeometry,na=ms(Nt,Rr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),na,oe)){var Ia=_e?_e.evaluate(na,{},oe,V.availableImages):void 0,ii={id:Xt,properties:Nt.properties,type:Nt.type,sourceLayerIndex:Br,index:gr,geometry:Rr?na.geometry:zn(Nt),patterns:{},sortKey:Ia};Pe.push(ii)}}_e&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Wa=0,Si=Pe;Wa<Si.length;Wa+=1){var ci=Si[Wa],Ai=ci,Li=Ai.geometry,Ki=Ai.index,kn=Ai.sourceLayerIndex;if(this.hasPattern){var Tn=Pg("fill",this.layers,ci,this.zoom,V);this.patternFeatures.push(Tn)}else this.addFeature(ci,Li,Ki,oe,{});var lo=C[Ki].feature;V.featureIndex.insert(lo,Li,Ki,kn,this.index)}},ad.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},ad.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.patternFeatures;_e<Pe.length;_e+=1){var je=Pe[_e];this.addFeature(je,je.geometry,je.index,V,oe)}},ad.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},ad.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},ad.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,YT),this.indexBuffer=C.createIndexBuffer(this.indexArray),this.indexBuffer2=C.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(C),this.uploaded=!0},ad.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())},ad.prototype.addFeature=function(C,V,oe,_e,Pe){for(var je=0,ct=E0(V,Ig);je<ct.length;je+=1){for(var Lt=ct[je],Nt=0,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt];Nt+=Br.length}for(var Rr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray),na=Rr.vertexLength,Ia=[],ii=[],Wa=0,Si=Lt;Wa<Si.length;Wa+=1){var ci=Si[Wa];if(ci.length!==0){ci!==Lt[0]&&ii.push(Ia.length/2);var Ai=this.segments2.prepareSegment(ci.length,this.layoutVertexArray,this.indexArray2),Li=Ai.vertexLength;this.layoutVertexArray.emplaceBack(ci[0].x,ci[0].y),this.indexArray2.emplaceBack(Li+ci.length-1,Li),Ia.push(ci[0].x),Ia.push(ci[0].y);for(var Ki=1;Ki<ci.length;Ki++)this.layoutVertexArray.emplaceBack(ci[Ki].x,ci[Ki].y),this.indexArray2.emplaceBack(Li+Ki-1,Li+Ki),Ia.push(ci[Ki].x),Ia.push(ci[Ki].y);Ai.vertexLength+=ci.length,Ai.primitiveLength+=ci.length}}for(var kn=T0(Ia,ii),Tn=0;Tn<kn.length;Tn+=3)this.indexArray.emplaceBack(na+kn[Tn],na+kn[Tn+1],na+kn[Tn+2]);Rr.vertexLength+=Nt,Rr.primitiveLength+=kn.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},de("FillBucket",ad,{omit:["layers","patternFeatures"]});var U1=new xi({"fill-sort-key":new ra(fi.layout_fill["fill-sort-key"])}),jx=new xi({"fill-antialias":new Qt(fi.paint_fill["fill-antialias"]),"fill-opacity":new ra(fi.paint_fill["fill-opacity"]),"fill-color":new ra(fi.paint_fill["fill-color"]),"fill-outline-color":new ra(fi.paint_fill["fill-outline-color"]),"fill-translate":new Qt(fi.paint_fill["fill-translate"]),"fill-translate-anchor":new Qt(fi.paint_fill["fill-translate-anchor"]),"fill-pattern":new Ta(fi.paint_fill["fill-pattern"])}),Hp={paint:jx,layout:U1},Rg=function(k){function C(V){k.call(this,V,Hp)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,_e){k.prototype.recalculate.call(this,oe,_e);var Pe=this.paint._values["fill-outline-color"];Pe.value.kind==="constant"&&Pe.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])},C.prototype.createBucket=function(oe){return new ad(oe)},C.prototype.queryRadius=function(){return Mp(this.paint.get("fill-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=qp(oe,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),Lt.angle,Nt);return wl(Xt,je)},C.prototype.isTileClipped=function(){return!0},C}(Fi),Vx=on([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),qx=Vx.members,j1=zv;function zv(k,C,V,oe,_e){this.properties={},this.extent=V,this.type=0,this._pbf=k,this._geometry=-1,this._keys=oe,this._values=_e,k.readFields(Hx,this,C)}function Hx(k,C,V){k==1?C.id=V.readVarint():k==2?Gx(V,C):k==3?C.type=V.readVarint():k==4&&(C._geometry=V.pos)}function Gx(k,C){for(var V=k.readVarint()+k.pos;k.pos<V;){var oe=C._keys[k.readVarint()],_e=C._values[k.readVarint()];C.properties[oe]=_e}}zv.types=["Unknown","Point","LineString","Polygon"],zv.prototype.loadGeometry=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,_e=0,Pe=0,je=[],ct;k.pos<C;){if(oe<=0){var Lt=k.readVarint();V=Lt&7,oe=Lt>>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),V===1&&(ct&&je.push(ct),ct=[]),ct.push(new i(_e,Pe));else if(V===7)ct&&ct.push(ct[0].clone());else throw new Error("unknown command "+V)}return ct&&je.push(ct),je},zv.prototype.bbox=function(){var k=this._pbf;k.pos=this._geometry;for(var C=k.readVarint()+k.pos,V=1,oe=0,_e=0,Pe=0,je=1/0,ct=-1/0,Lt=1/0,Nt=-1/0;k.pos<C;){if(oe<=0){var Xt=k.readVarint();V=Xt&7,oe=Xt>>3}if(oe--,V===1||V===2)_e+=k.readSVarint(),Pe+=k.readSVarint(),_e<je&&(je=_e),_e>ct&&(ct=_e),Pe<Lt&&(Lt=Pe),Pe>Nt&&(Nt=Pe);else if(V!==7)throw new Error("unknown command "+V)}return[je,Lt,ct,Nt]},zv.prototype.toGeoJSON=function(k,C,V){var oe=this.extent*Math.pow(2,V),_e=this.extent*k,Pe=this.extent*C,je=this.loadGeometry(),ct=zv.types[this.type],Lt,Nt;function Xt(Rr){for(var na=0;na<Rr.length;na++){var Ia=Rr[na],ii=180-(Ia.y+Pe)*360/oe;Rr[na]=[(Ia.x+_e)*360/oe-180,360/Math.PI*Math.atan(Math.exp(ii*Math.PI/180))-90]}}switch(this.type){case 1:var gr=[];for(Lt=0;Lt<je.length;Lt++)gr[Lt]=je[Lt][0];je=gr,Xt(je);break;case 2:for(Lt=0;Lt<je.length;Lt++)Xt(je[Lt]);break;case 3:for(je=QT(je),Lt=0;Lt<je.length;Lt++)for(Nt=0;Nt<je[Lt].length;Nt++)Xt(je[Lt][Nt]);break}je.length===1?je=je[0]:ct="Multi"+ct;var Br={type:"Feature",geometry:{type:ct,coordinates:je},properties:this.properties};return"id"in this&&(Br.id=this.id),Br};function QT(k){var C=k.length;if(C<=1)return[k];for(var V=[],oe,_e,Pe=0;Pe<C;Pe++){var je=Wx(k[Pe]);je!==0&&(_e===void 0&&(_e=je<0),_e===je<0?(oe&&V.push(oe),oe=[k[Pe]]):oe.push(k[Pe]))}return oe&&V.push(oe),V}function Wx(k){for(var C=0,V=0,oe=k.length,_e=oe-1,Pe,je;V<oe;_e=V++)Pe=k[V],je=k[_e],C+=(je.x-Pe.x)*(Pe.y+je.y);return C}var Wd=V1;function V1(k,C){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=k,this._keys=[],this._values=[],this._features=[],k.readFields(Zx,this,C),this.length=this._features.length}function Zx(k,C,V){k===15?C.version=V.readVarint():k===1?C.name=V.readString():k===5?C.extent=V.readVarint():k===2?C._features.push(V.pos):k===3?C._keys.push(V.readString()):k===4&&C._values.push(Xx(V))}function Xx(k){for(var C=null,V=k.readVarint()+k.pos;k.pos<V;){var oe=k.readVarint()>>3;C=oe===1?k.readString():oe===2?k.readFloat():oe===3?k.readDouble():oe===4?k.readVarint64():oe===5?k.readVarint():oe===6?k.readSVarint():oe===7?k.readBoolean():null}return C}V1.prototype.feature=function(k){if(k<0||k>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[k];var C=this._pbf.readVarint()+this._pbf.pos;return new j1(this._pbf,C,this.extent,this._keys,this._values)};var Yx=eA;function eA(k,C){this.layers=k.readFields(tA,{},C)}function tA(k,C,V){if(k===3){var oe=new Wd(V,V.readVarint()+V.pos);oe.length&&(C[oe.name]=oe)}}var Kx=Yx,fm=j1,Jx=Wd,Zd={VectorTile:Kx,VectorTileFeature:fm,VectorTileLayer:Jx},$x=Zd.VectorTileFeature.types,C0=500,hm=Math.pow(2,13);function hv(k,C,V,oe,_e,Pe,je,ct){k.emplaceBack(C,V,Math.floor(oe*hm)*2+je,_e*hm*2,Pe*hm*2,Math.round(ct))}var fd=function(C){this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(V){return V.id}),this.index=C.index,this.hasPattern=!1,this.layoutVertexArray=new pn,this.indexArray=new jn,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.stateDependentLayerIds=this.layers.filter(function(V){return V.isStateDependent()}).map(function(V){return V.id})};fd.prototype.populate=function(C,V,oe){this.features=[],this.hasPattern=k0("fill-extrusion",this.layers,V);for(var _e=0,Pe=C;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je.feature,Lt=je.id,Nt=je.index,Xt=je.sourceLayerIndex,gr=this.layers[0]._featureFilter.needGeometry,Br=ms(ct,gr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),Br,oe)){var Rr={id:Lt,sourceLayerIndex:Xt,index:Nt,geometry:gr?Br.geometry:zn(ct),properties:ct.properties,type:ct.type,patterns:{}};this.hasPattern?this.features.push(Pg("fill-extrusion",this.layers,Rr,this.zoom,V)):this.addFeature(Rr,Rr.geometry,Nt,oe,{}),V.featureIndex.insert(ct,Rr.geometry,Nt,Xt,this.index,!0)}}},fd.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.features;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je.geometry;this.addFeature(je,ct,je.index,V,oe)}},fd.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},fd.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},fd.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},fd.prototype.upload=function(C){this.uploaded||(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,qx),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},fd.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},fd.prototype.addFeature=function(C,V,oe,_e,Pe){for(var je=0,ct=E0(V,C0);je<ct.length;je+=1){for(var Lt=ct[je],Nt=0,Xt=0,gr=Lt;Xt<gr.length;Xt+=1){var Br=gr[Xt];Nt+=Br.length}for(var Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray),na=0,Ia=Lt;na<Ia.length;na+=1){var ii=Ia[na];if(ii.length!==0&&!aA(ii))for(var Wa=0,Si=0;Si<ii.length;Si++){var ci=ii[Si];if(Si>=1){var Ai=ii[Si-1];if(!rA(ci,Ai)){Rr.vertexLength+4>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));var Li=ci.sub(Ai)._perp()._unit(),Ki=Ai.dist(ci);Wa+Ki>32768&&(Wa=0),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,ci.x,ci.y,Li.x,Li.y,0,1,Wa),Wa+=Ki,hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,0,Wa),hv(this.layoutVertexArray,Ai.x,Ai.y,Li.x,Li.y,0,1,Wa);var kn=Rr.vertexLength;this.indexArray.emplaceBack(kn,kn+2,kn+1),this.indexArray.emplaceBack(kn+1,kn+2,kn+3),Rr.vertexLength+=4,Rr.primitiveLength+=2}}}}if(Rr.vertexLength+Nt>Cs.MAX_VERTEX_ARRAY_LENGTH&&(Rr=this.segments.prepareSegment(Nt,this.layoutVertexArray,this.indexArray)),$x[C.type]==="Polygon"){for(var Tn=[],lo=[],qn=Rr.vertexLength,to=0,ds=Lt;to<ds.length;to+=1){var uo=ds[to];if(uo.length!==0){uo!==Lt[0]&&lo.push(Tn.length/2);for(var vo=0;vo<uo.length;vo++){var zs=uo[vo];hv(this.layoutVertexArray,zs.x,zs.y,0,0,1,1,0),Tn.push(zs.x),Tn.push(zs.y)}}}for(var cs=T0(Tn,lo),Tl=0;Tl<cs.length;Tl+=3)this.indexArray.emplaceBack(qn+cs[Tl],qn+cs[Tl+2],qn+cs[Tl+1]);Rr.primitiveLength+=cs.length/3,Rr.vertexLength+=Nt}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},de("FillExtrusionBucket",fd,{omit:["layers","features"]});function rA(k,C){return k.x===C.x&&(k.x<0||k.x>Ii)||k.y===C.y&&(k.y<0||k.y>Ii)}function aA(k){return k.every(function(C){return C.x<0})||k.every(function(C){return C.x>Ii})||k.every(function(C){return C.y<0})||k.every(function(C){return C.y>Ii})}var pm=new xi({"fill-extrusion-opacity":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new ra(fi["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Ta(fi["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new ra(fi["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new ra(fi["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new Qt(fi["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])}),ph={paint:pm},pv=function(k){function C(V){k.call(this,V,ph)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.createBucket=function(oe){return new fd(oe)},C.prototype.queryRadius=function(){return Mp(this.paint.get("fill-extrusion-translate"))},C.prototype.is3D=function(){return!0},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt,Xt){var gr=qp(oe,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Lt.angle,Nt),Br=this.paint.get("fill-extrusion-height").evaluate(_e,Pe),Rr=this.paint.get("fill-extrusion-base").evaluate(_e,Pe),na=iA(gr,Xt,Lt,0),Ia=H1(je,Rr,Br,Xt),ii=Ia[0],Wa=Ia[1];return Qx(ii,Wa,na)},C}(Fi);function Fv(k,C){return k.x*C.x+k.y*C.y}function q1(k,C){if(k.length===1){for(var V=0,oe=C[V++],_e;!_e||oe.equals(_e);)if(_e=C[V++],!_e)return 1/0;for(;V<C.length;V++){var Pe=C[V],je=k[0],ct=_e.sub(oe),Lt=Pe.sub(oe),Nt=je.sub(oe),Xt=Fv(ct,ct),gr=Fv(ct,Lt),Br=Fv(Lt,Lt),Rr=Fv(Nt,ct),na=Fv(Nt,Lt),Ia=Xt*Br-gr*gr,ii=(Br*Rr-gr*na)/Ia,Wa=(Xt*na-gr*Rr)/Ia,Si=1-ii-Wa,ci=oe.z*Si+_e.z*ii+Pe.z*Wa;if(isFinite(ci))return ci}return 1/0}else{for(var Ai=1/0,Li=0,Ki=C;Li<Ki.length;Li+=1){var kn=Ki[Li];Ai=Math.min(Ai,kn.z)}return Ai}}function Qx(k,C,V){var oe=1/0;wl(V,C)&&(oe=q1(V,C[0]));for(var _e=0;_e<C.length;_e++)for(var Pe=C[_e],je=k[_e],ct=0;ct<Pe.length-1;ct++){var Lt=Pe[ct],Nt=Pe[ct+1],Xt=je[ct],gr=je[ct+1],Br=[Lt,Nt,gr,Xt,Lt];qo(V,Br)&&(oe=Math.min(oe,q1(V,Br)))}return oe===1/0?!1:oe}function H1(k,C,V,oe){for(var _e=[],Pe=[],je=oe[8]*C,ct=oe[9]*C,Lt=oe[10]*C,Nt=oe[11]*C,Xt=oe[8]*V,gr=oe[9]*V,Br=oe[10]*V,Rr=oe[11]*V,na=0,Ia=k;na<Ia.length;na+=1){for(var ii=Ia[na],Wa=[],Si=[],ci=0,Ai=ii;ci<Ai.length;ci+=1){var Li=Ai[ci],Ki=Li.x,kn=Li.y,Tn=oe[0]*Ki+oe[4]*kn+oe[12],lo=oe[1]*Ki+oe[5]*kn+oe[13],qn=oe[2]*Ki+oe[6]*kn+oe[14],to=oe[3]*Ki+oe[7]*kn+oe[15],ds=Tn+je,uo=lo+ct,vo=qn+Lt,zs=to+Nt,cs=Tn+Xt,Tl=lo+gr,lu=qn+Br,Al=to+Rr,Sl=new i(ds/zs,uo/zs);Sl.z=vo/zs,Wa.push(Sl);var pl=new i(cs/Al,Tl/Al);pl.z=lu/Al,Si.push(pl)}_e.push(Wa),Pe.push(Si)}return[_e,Pe]}function iA(k,C,V,oe){for(var _e=[],Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe],Lt=[ct.x,ct.y,oe,1];Rv(Lt,Lt,C),_e.push(new i(Lt[0]/Lt[3],Lt[1]/Lt[3]))}return _e}var eb=on([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),tb=eb.members,nA=on([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),rb=nA.members,G1=Zd.VectorTileFeature.types,L0=63,ab=Math.cos(75/2*(Math.PI/180)),Dg=15,W1=20,ib=15,P0=1/2,zg=Math.pow(2,ib-1)/P0,Mf=function(C){var V=this;this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(oe){return oe.id}),this.index=C.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(function(oe){V.gradients[oe.id]={}}),this.layoutVertexArray=new qi,this.layoutVertexArray2=new Dn,this.indexArray=new jn,this.programConfigurations=new mi(C.layers,C.zoom),this.segments=new Cs,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(function(oe){return oe.isStateDependent()}).map(function(oe){return oe.id})};Mf.prototype.populate=function(C,V,oe){this.hasPattern=k0("line",this.layers,V);for(var _e=this.layers[0].layout.get("line-sort-key"),Pe=[],je=0,ct=C;je<ct.length;je+=1){var Lt=ct[je],Nt=Lt.feature,Xt=Lt.id,gr=Lt.index,Br=Lt.sourceLayerIndex,Rr=this.layers[0]._featureFilter.needGeometry,na=ms(Nt,Rr);if(this.layers[0]._featureFilter.filter(new Vi(this.zoom),na,oe)){var Ia=_e?_e.evaluate(na,{},oe):void 0,ii={id:Xt,properties:Nt.properties,type:Nt.type,sourceLayerIndex:Br,index:gr,geometry:Rr?na.geometry:zn(Nt),patterns:{},sortKey:Ia};Pe.push(ii)}}_e&&Pe.sort(function(qn,to){return qn.sortKey-to.sortKey});for(var Wa=0,Si=Pe;Wa<Si.length;Wa+=1){var ci=Si[Wa],Ai=ci,Li=Ai.geometry,Ki=Ai.index,kn=Ai.sourceLayerIndex;if(this.hasPattern){var Tn=Pg("line",this.layers,ci,this.zoom,V);this.patternFeatures.push(Tn)}else this.addFeature(ci,Li,Ki,oe,{});var lo=C[Ki].feature;V.featureIndex.insert(lo,Li,Ki,kn,this.index)}},Mf.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(C,V,this.stateDependentLayers,oe)},Mf.prototype.addFeatures=function(C,V,oe){for(var _e=0,Pe=this.patternFeatures;_e<Pe.length;_e+=1){var je=Pe[_e];this.addFeature(je,je.geometry,je.index,V,oe)}},Mf.prototype.isEmpty=function(){return this.layoutVertexArray.length===0},Mf.prototype.uploadPending=function(){return!this.uploaded||this.programConfigurations.needsUpload},Mf.prototype.upload=function(C){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=C.createVertexBuffer(this.layoutVertexArray2,rb)),this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,tb),this.indexBuffer=C.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(C),this.uploaded=!0},Mf.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())},Mf.prototype.lineFeatureClips=function(C){if(C.properties&&C.properties.hasOwnProperty("mapbox_clip_start")&&C.properties.hasOwnProperty("mapbox_clip_end")){var V=+C.properties.mapbox_clip_start,oe=+C.properties.mapbox_clip_end;return{start:V,end:oe}}},Mf.prototype.addFeature=function(C,V,oe,_e,Pe){var je=this.layers[0].layout,ct=je.get("line-join").evaluate(C,{}),Lt=je.get("line-cap"),Nt=je.get("line-miter-limit"),Xt=je.get("line-round-limit");this.lineClips=this.lineFeatureClips(C);for(var gr=0,Br=V;gr<Br.length;gr+=1){var Rr=Br[gr];this.addLine(Rr,C,ct,Lt,Nt,Xt)}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,C,oe,Pe,_e)},Mf.prototype.addLine=function(C,V,oe,_e,Pe,je){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(var ct=0;ct<C.length-1;ct++)this.totalDistance+=C[ct].dist(C[ct+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}for(var Lt=G1[V.type]==="Polygon",Nt=C.length;Nt>=2&&C[Nt-1].equals(C[Nt-2]);)Nt--;for(var Xt=0;Xt<Nt-1&&C[Xt].equals(C[Xt+1]);)Xt++;if(!(Nt<(Lt?3:2))){oe==="bevel"&&(Pe=1.05);var gr=this.overscaling<=16?Dg*Ii/(512*this.overscaling):0,Br=this.segments.prepareSegment(Nt*10,this.layoutVertexArray,this.indexArray),Rr,na=void 0,Ia=void 0,ii=void 0,Wa=void 0;this.e1=this.e2=-1,Lt&&(Rr=C[Nt-2],Wa=C[Xt].sub(Rr)._unit()._perp());for(var Si=Xt;Si<Nt;Si++)if(Ia=Si===Nt-1?Lt?C[Xt+1]:void 0:C[Si+1],!(Ia&&C[Si].equals(Ia))){Wa&&(ii=Wa),Rr&&(na=Rr),Rr=C[Si],Wa=Ia?Ia.sub(Rr)._unit()._perp():ii,ii=ii||Wa;var ci=ii.add(Wa);(ci.x!==0||ci.y!==0)&&ci._unit();var Ai=ii.x*Wa.x+ii.y*Wa.y,Li=ci.x*Wa.x+ci.y*Wa.y,Ki=Li!==0?1/Li:1/0,kn=2*Math.sqrt(2-2*Li),Tn=Li<ab&&na&&Ia,lo=ii.x*Wa.y-ii.y*Wa.x>0;if(Tn&&Si>Xt){var qn=Rr.dist(na);if(qn>2*gr){var to=Rr.sub(Rr.sub(na)._mult(gr/qn)._round());this.updateDistance(na,to),this.addCurrentVertex(to,ii,0,0,Br),na=to}}var ds=na&&Ia,uo=ds?oe:Lt?"butt":_e;if(ds&&uo==="round"&&(Ki<je?uo="miter":Ki<=2&&(uo="fakeround")),uo==="miter"&&Ki>Pe&&(uo="bevel"),uo==="bevel"&&(Ki>2&&(uo="flipbevel"),Ki<Pe&&(uo="miter")),na&&this.updateDistance(na,Rr),uo==="miter")ci._mult(Ki),this.addCurrentVertex(Rr,ci,0,0,Br);else if(uo==="flipbevel"){if(Ki>100)ci=Wa.mult(-1);else{var vo=Ki*ii.add(Wa).mag()/ii.sub(Wa).mag();ci._perp()._mult(vo*(lo?-1:1))}this.addCurrentVertex(Rr,ci,0,0,Br),this.addCurrentVertex(Rr,ci.mult(-1),0,0,Br)}else if(uo==="bevel"||uo==="fakeround"){var zs=-Math.sqrt(Ki*Ki-1),cs=lo?zs:0,Tl=lo?0:zs;if(na&&this.addCurrentVertex(Rr,ii,cs,Tl,Br),uo==="fakeround")for(var lu=Math.round(kn*180/Math.PI/W1),Al=1;Al<lu;Al++){var Sl=Al/lu;if(Sl!==.5){var pl=Sl-.5,bu=1.0904+Ai*(-3.2452+Ai*(3.55645-Ai*1.43519)),Fu=.848013+Ai*(-1.06021+Ai*.215638);Sl=Sl+Sl*pl*(Sl-1)*(bu*pl*pl+Fu)}var Gc=Wa.sub(ii)._mult(Sl)._add(ii)._unit()._mult(lo?-1:1);this.addHalfVertex(Rr,Gc.x,Gc.y,!1,lo,0,Br)}Ia&&this.addCurrentVertex(Rr,Wa,-cs,-Tl,Br)}else if(uo==="butt")this.addCurrentVertex(Rr,ci,0,0,Br);else if(uo==="square"){var of=na?1:-1;this.addCurrentVertex(Rr,ci,of,of,Br)}else uo==="round"&&(na&&(this.addCurrentVertex(Rr,ii,0,0,Br),this.addCurrentVertex(Rr,ii,1,1,Br,!0)),Ia&&(this.addCurrentVertex(Rr,Wa,-1,-1,Br,!0),this.addCurrentVertex(Rr,Wa,0,0,Br)));if(Tn&&Si<Nt-1){var ih=Rr.dist(Ia);if(ih>2*gr){var Cf=Rr.add(Ia.sub(Rr)._mult(gr/ih)._round());this.updateDistance(Rr,Cf),this.addCurrentVertex(Cf,Wa,0,0,Br),Rr=Cf}}}}},Mf.prototype.addCurrentVertex=function(C,V,oe,_e,Pe,je){je===void 0&&(je=!1);var ct=V.x+V.y*oe,Lt=V.y-V.x*oe,Nt=-V.x+V.y*_e,Xt=-V.y-V.x*_e;this.addHalfVertex(C,ct,Lt,je,!1,oe,Pe),this.addHalfVertex(C,Nt,Xt,je,!0,-_e,Pe),this.distance>zg/2&&this.totalDistance===0&&(this.distance=0,this.addCurrentVertex(C,V,oe,_e,Pe,je))},Mf.prototype.addHalfVertex=function(C,V,oe,_e,Pe,je,ct){var Lt=C.x,Nt=C.y,Xt=this.lineClips?this.scaledDistance*(zg-1):this.scaledDistance,gr=Xt*P0;if(this.layoutVertexArray.emplaceBack((Lt<<1)+(_e?1:0),(Nt<<1)+(Pe?1:0),Math.round(L0*V)+128,Math.round(L0*oe)+128,(je===0?0:je<0?-1:1)+1|(gr&63)<<2,gr>>6),this.lineClips){var Br=this.scaledDistance-this.lineClips.start,Rr=this.lineClips.end-this.lineClips.start,na=Br/Rr;this.layoutVertexArray2.emplaceBack(na,this.lineClipsArray.length)}var Ia=ct.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,Ia),ct.primitiveLength++),Pe?this.e2=Ia:this.e1=Ia},Mf.prototype.updateScaledDistance=function(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance},Mf.prototype.updateDistance=function(C,V){this.distance+=C.dist(V),this.updateScaledDistance()},de("LineBucket",Mf,{omit:["layers","patternFeatures"]});var Z1=new xi({"line-cap":new Qt(fi.layout_line["line-cap"]),"line-join":new ra(fi.layout_line["line-join"]),"line-miter-limit":new Qt(fi.layout_line["line-miter-limit"]),"line-round-limit":new Qt(fi.layout_line["line-round-limit"]),"line-sort-key":new ra(fi.layout_line["line-sort-key"])}),X1=new xi({"line-opacity":new ra(fi.paint_line["line-opacity"]),"line-color":new ra(fi.paint_line["line-color"]),"line-translate":new Qt(fi.paint_line["line-translate"]),"line-translate-anchor":new Qt(fi.paint_line["line-translate-anchor"]),"line-width":new ra(fi.paint_line["line-width"]),"line-gap-width":new ra(fi.paint_line["line-gap-width"]),"line-offset":new ra(fi.paint_line["line-offset"]),"line-blur":new ra(fi.paint_line["line-blur"]),"line-dasharray":new si(fi.paint_line["line-dasharray"]),"line-pattern":new Ta(fi.paint_line["line-pattern"]),"line-gradient":new wi(fi.paint_line["line-gradient"])}),I0={paint:X1,layout:Z1},oA=function(k){function C(){k.apply(this,arguments)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.possiblyEvaluate=function(oe,_e){return _e=new Vi(Math.floor(_e.zoom),{now:_e.now,fadeDuration:_e.fadeDuration,zoomHistory:_e.zoomHistory,transition:_e.transition}),k.prototype.possiblyEvaluate.call(this,oe,_e)},C.prototype.evaluate=function(oe,_e,Pe,je){return _e=m({},_e,{zoom:Math.floor(_e.zoom)}),k.prototype.evaluate.call(this,oe,_e,Pe,je)},C}(ra),q=new oA(I0.paint.properties["line-width"].specification);q.useIntegerZoom=!0;var D=function(k){function C(V){k.call(this,V,I0),this.gradientVersion=0}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype._handleSpecialPaintPropertyUpdate=function(oe){if(oe==="line-gradient"){var _e=this._transitionablePaint._values["line-gradient"].value.expression;this.stepInterpolant=_e._styleExpression.expression instanceof vu,this.gradientVersion=(this.gradientVersion+1)%h}},C.prototype.gradientExpression=function(){return this._transitionablePaint._values["line-gradient"].value.expression},C.prototype.recalculate=function(oe,_e){k.prototype.recalculate.call(this,oe,_e),this.paint._values["line-floorwidth"]=q.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,oe)},C.prototype.createBucket=function(oe){return new Mf(oe)},C.prototype.queryRadius=function(oe){var _e=oe,Pe=Y(Ch("line-width",this,_e),Ch("line-gap-width",this,_e)),je=Ch("line-offset",this,_e);return Pe/2+Math.abs(je)+Mp(this.paint.get("line-translate"))},C.prototype.queryIntersectsFeature=function(oe,_e,Pe,je,ct,Lt,Nt){var Xt=qp(oe,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Lt.angle,Nt),gr=Nt/2*Y(this.paint.get("line-width").evaluate(_e,Pe),this.paint.get("line-gap-width").evaluate(_e,Pe)),Br=this.paint.get("line-offset").evaluate(_e,Pe);return Br&&(je=pe(je,Br*Nt)),Ru(Xt,je,gr)},C.prototype.isTileClipped=function(){return!0},C}(Fi);function Y(k,C){return C>0?C+2*k:k}function pe(k,C){for(var V=[],oe=new i(0,0),_e=0;_e<k.length;_e++){for(var Pe=k[_e],je=[],ct=0;ct<Pe.length;ct++){var Lt=Pe[ct-1],Nt=Pe[ct],Xt=Pe[ct+1],gr=ct===0?oe:Nt.sub(Lt)._unit()._perp(),Br=ct===Pe.length-1?oe:Xt.sub(Nt)._unit()._perp(),Rr=gr._add(Br)._unit(),na=Rr.x*Br.x+Rr.y*Br.y;Rr._mult(1/na),je.push(Rr._mult(C)._add(Nt))}V.push(je)}return V}var Ce=on([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),Ue=on([{name:"a_projected_pos",components:3,type:"Float32"}],4),Ge=on([{name:"a_fade_opacity",components:1,type:"Uint32"}],4),ut=on([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"}]),Tt=on([{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"}]),Ft=on([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),$t=on([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4),lr=on([{name:"triangle",components:3,type:"Uint16"}]),Ar=on([{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"}]),zr=on([{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"}]),Kr=on([{type:"Float32",name:"offsetX"}]),la=on([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]);function za(k,C,V){var oe=C.layout.get("text-transform").evaluate(V,{});return oe==="uppercase"?k=k.toLocaleUpperCase():oe==="lowercase"&&(k=k.toLocaleLowerCase()),Gs.applyArabicShaping&&(k=Gs.applyArabicShaping(k)),k}function ja(k,C,V){return k.sections.forEach(function(oe){oe.text=za(oe.text,C,V)}),k}function gi(k){var C={},V={},oe=[],_e=0;function Pe(Wa){oe.push(k[Wa]),_e++}function je(Wa,Si,ci){var Ai=V[Wa];return delete V[Wa],V[Si]=Ai,oe[Ai].geometry[0].pop(),oe[Ai].geometry[0]=oe[Ai].geometry[0].concat(ci[0]),Ai}function ct(Wa,Si,ci){var Ai=C[Si];return delete C[Si],C[Wa]=Ai,oe[Ai].geometry[0].shift(),oe[Ai].geometry[0]=ci[0].concat(oe[Ai].geometry[0]),Ai}function Lt(Wa,Si,ci){var Ai=ci?Si[0][Si[0].length-1]:Si[0][0];return Wa+":"+Ai.x+":"+Ai.y}for(var Nt=0;Nt<k.length;Nt++){var Xt=k[Nt],gr=Xt.geometry,Br=Xt.text?Xt.text.toString():null;if(!Br){Pe(Nt);continue}var Rr=Lt(Br,gr),na=Lt(Br,gr,!0);if(Rr in V&&na in C&&V[Rr]!==C[na]){var Ia=ct(Rr,na,gr),ii=je(Rr,na,oe[Ia].geometry);delete C[Rr],delete V[na],V[Lt(Br,oe[ii].geometry,!0)]=ii,oe[Ia].geometry=null}else Rr in V?je(Rr,na,gr):na in C?ct(Rr,na,gr):(Pe(Nt),C[Rr]=_e-1,V[na]=_e-1)}return oe.filter(function(Wa){return Wa.geometry})}var ei={"!":"\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"};function hi(k){for(var C="",V=0;V<k.length;V++){var oe=k.charCodeAt(V+1)||null,_e=k.charCodeAt(V-1)||null,Pe=(!oe||!Xa(oe)||ei[k[V+1]])&&(!_e||!Xa(_e)||ei[k[V-1]]);Pe&&ei[k[V]]?C+=ei[k[V]]:C+=k[V]}return C}var Ei=24,En=function(k,C,V,oe,_e){var Pe,je,ct=_e*8-oe-1,Lt=(1<<ct)-1,Nt=Lt>>1,Xt=-7,gr=V?_e-1:0,Br=V?-1:1,Rr=k[C+gr];for(gr+=Br,Pe=Rr&(1<<-Xt)-1,Rr>>=-Xt,Xt+=ct;Xt>0;Pe=Pe*256+k[C+gr],gr+=Br,Xt-=8);for(je=Pe&(1<<-Xt)-1,Pe>>=-Xt,Xt+=oe;Xt>0;je=je*256+k[C+gr],gr+=Br,Xt-=8);if(Pe===0)Pe=1-Nt;else{if(Pe===Lt)return je?NaN:(Rr?-1:1)*(1/0);je=je+Math.pow(2,oe),Pe=Pe-Nt}return(Rr?-1:1)*je*Math.pow(2,Pe-oe)},fo=function(k,C,V,oe,_e,Pe){var je,ct,Lt,Nt=Pe*8-_e-1,Xt=(1<<Nt)-1,gr=Xt>>1,Br=_e===23?Math.pow(2,-24)-Math.pow(2,-77):0,Rr=oe?0:Pe-1,na=oe?1:-1,Ia=C<0||C===0&&1/C<0?1:0;for(C=Math.abs(C),isNaN(C)||C===1/0?(ct=isNaN(C)?1:0,je=Xt):(je=Math.floor(Math.log(C)/Math.LN2),C*(Lt=Math.pow(2,-je))<1&&(je--,Lt*=2),je+gr>=1?C+=Br/Lt:C+=Br*Math.pow(2,1-gr),C*Lt>=2&&(je++,Lt/=2),je+gr>=Xt?(ct=0,je=Xt):je+gr>=1?(ct=(C*Lt-1)*Math.pow(2,_e),je=je+gr):(ct=C*Math.pow(2,gr-1)*Math.pow(2,_e),je=0));_e>=8;k[V+Rr]=ct&255,Rr+=na,ct/=256,_e-=8);for(je=je<<_e|ct,Nt+=_e;Nt>0;k[V+Rr]=je&255,Rr+=na,je/=256,Nt-=8);k[V+Rr-na]|=Ia*128},ss={read:En,write:fo},eo=vn;function vn(k){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(k)?k:new Uint8Array(k||0),this.pos=0,this.type=0,this.length=this.buf.length}vn.Varint=0,vn.Fixed64=1,vn.Bytes=2,vn.Fixed32=5;var Uo=65536*65536,Mo=1/Uo,xo=12,Yi=typeof TextDecoder>"u"?null:new TextDecoder("utf8");vn.prototype={destroy:function(){this.buf=null},readFields:function(k,C,V){for(V=V||this.length;this.pos<V;){var oe=this.readVarint(),_e=oe>>3,Pe=this.pos;this.type=oe&7,k(_e,C,this),this.pos===Pe&&this.skip(oe)}return C},readMessage:function(k,C){return this.readFields(k,C,this.readVarint()+this.pos)},readFixed32:function(){var k=th(this.buf,this.pos);return this.pos+=4,k},readSFixed32:function(){var k=Lp(this.buf,this.pos);return this.pos+=4,k},readFixed64:function(){var k=th(this.buf,this.pos)+th(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readSFixed64:function(){var k=th(this.buf,this.pos)+Lp(this.buf,this.pos+4)*Uo;return this.pos+=8,k},readFloat:function(){var k=ss.read(this.buf,this.pos,!0,23,4);return this.pos+=4,k},readDouble:function(){var k=ss.read(this.buf,this.pos,!0,52,8);return this.pos+=8,k},readVarint:function(k){var C=this.buf,V,oe;return oe=C[this.pos++],V=oe&127,oe<128||(oe=C[this.pos++],V|=(oe&127)<<7,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<14,oe<128)||(oe=C[this.pos++],V|=(oe&127)<<21,oe<128)?V:(oe=C[this.pos],V|=(oe&15)<<28,Ko(V,k,this))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var k=this.readVarint();return k%2===1?(k+1)/-2:k/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var k=this.readVarint()+this.pos,C=this.pos;return this.pos=k,k-C>=xo&&Yi?Nl(this.buf,C,k):pp(this.buf,C,k)},readBytes:function(){var k=this.readVarint()+this.pos,C=this.buf.subarray(this.pos,k);return this.pos=k,C},readPackedVarint:function(k,C){if(this.type!==vn.Bytes)return k.push(this.readVarint(C));var V=bo(this);for(k=k||[];this.pos<V;)k.push(this.readVarint(C));return k},readPackedSVarint:function(k){if(this.type!==vn.Bytes)return k.push(this.readSVarint());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSVarint());return k},readPackedBoolean:function(k){if(this.type!==vn.Bytes)return k.push(this.readBoolean());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readBoolean());return k},readPackedFloat:function(k){if(this.type!==vn.Bytes)return k.push(this.readFloat());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFloat());return k},readPackedDouble:function(k){if(this.type!==vn.Bytes)return k.push(this.readDouble());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readDouble());return k},readPackedFixed32:function(k){if(this.type!==vn.Bytes)return k.push(this.readFixed32());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFixed32());return k},readPackedSFixed32:function(k){if(this.type!==vn.Bytes)return k.push(this.readSFixed32());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSFixed32());return k},readPackedFixed64:function(k){if(this.type!==vn.Bytes)return k.push(this.readFixed64());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readFixed64());return k},readPackedSFixed64:function(k){if(this.type!==vn.Bytes)return k.push(this.readSFixed64());var C=bo(this);for(k=k||[];this.pos<C;)k.push(this.readSFixed64());return k},skip:function(k){var C=k&7;if(C===vn.Varint)for(;this.buf[this.pos++]>127;);else if(C===vn.Bytes)this.pos=this.readVarint()+this.pos;else if(C===vn.Fixed32)this.pos+=4;else if(C===vn.Fixed64)this.pos+=8;else throw new Error("Unimplemented type: "+C)},writeTag:function(k,C){this.writeVarint(k<<3|C)},realloc:function(k){for(var C=this.length||16;C<this.pos+k;)C*=2;if(C!==this.length){var V=new Uint8Array(C);V.set(this.buf),this.buf=V,this.length=C}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(k){this.realloc(4),nf(this.buf,k,this.pos),this.pos+=4},writeSFixed32:function(k){this.realloc(4),nf(this.buf,k,this.pos),this.pos+=4},writeFixed64:function(k){this.realloc(8),nf(this.buf,k&-1,this.pos),nf(this.buf,Math.floor(k*Mo),this.pos+4),this.pos+=8},writeSFixed64:function(k){this.realloc(8),nf(this.buf,k&-1,this.pos),nf(this.buf,Math.floor(k*Mo),this.pos+4),this.pos+=8},writeVarint:function(k){if(k=+k||0,k>268435455||k<0){_u(k,this);return}this.realloc(4),this.buf[this.pos++]=k&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=(k>>>=7)&127|(k>127?128:0),!(k<=127)&&(this.buf[this.pos++]=k>>>7&127)))},writeSVarint:function(k){this.writeVarint(k<0?-k*2-1:k*2)},writeBoolean:function(k){this.writeVarint(!!k)},writeString:function(k){k=String(k),this.realloc(k.length*4),this.pos++;var C=this.pos;this.pos=zu(this.buf,k,this.pos);var V=this.pos-C;V>=128&&Gp(C,V,this),this.pos=C-1,this.writeVarint(V),this.pos+=V},writeFloat:function(k){this.realloc(4),ss.write(this.buf,k,this.pos,!0,23,4),this.pos+=4},writeDouble:function(k){this.realloc(8),ss.write(this.buf,k,this.pos,!0,52,8),this.pos+=8},writeBytes:function(k){var C=k.length;this.writeVarint(C),this.realloc(C);for(var V=0;V<C;V++)this.buf[this.pos++]=k[V]},writeRawMessage:function(k,C){this.pos++;var V=this.pos;k(C,this);var oe=this.pos-V;oe>=128&&Gp(V,oe,this),this.pos=V-1,this.writeVarint(oe),this.pos+=oe},writeMessage:function(k,C,V){this.writeTag(k,vn.Bytes),this.writeRawMessage(C,V)},writePackedVarint:function(k,C){C.length&&this.writeMessage(k,dh,C)},writePackedSVarint:function(k,C){C.length&&this.writeMessage(k,Nf,C)},writePackedBoolean:function(k,C){C.length&&this.writeMessage(k,Jh,C)},writePackedFloat:function(k,C){C.length&&this.writeMessage(k,Yh,C)},writePackedDouble:function(k,C){C.length&&this.writeMessage(k,Kh,C)},writePackedFixed32:function(k,C){C.length&&this.writeMessage(k,Hc,C)},writePackedSFixed32:function(k,C){C.length&&this.writeMessage(k,Uf,C)},writePackedFixed64:function(k,C){C.length&&this.writeMessage(k,Ih,C)},writePackedSFixed64:function(k,C){C.length&&this.writeMessage(k,vh,C)},writeBytesField:function(k,C){this.writeTag(k,vn.Bytes),this.writeBytes(C)},writeFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFixed32(C)},writeSFixed32Field:function(k,C){this.writeTag(k,vn.Fixed32),this.writeSFixed32(C)},writeFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeFixed64(C)},writeSFixed64Field:function(k,C){this.writeTag(k,vn.Fixed64),this.writeSFixed64(C)},writeVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeVarint(C)},writeSVarintField:function(k,C){this.writeTag(k,vn.Varint),this.writeSVarint(C)},writeStringField:function(k,C){this.writeTag(k,vn.Bytes),this.writeString(C)},writeFloatField:function(k,C){this.writeTag(k,vn.Fixed32),this.writeFloat(C)},writeDoubleField:function(k,C){this.writeTag(k,vn.Fixed64),this.writeDouble(C)},writeBooleanField:function(k,C){this.writeVarintField(k,!!C)}};function Ko(k,C,V){var oe=V.buf,_e,Pe;if(Pe=oe[V.pos++],_e=(Pe&112)>>4,Pe<128||(Pe=oe[V.pos++],_e|=(Pe&127)<<3,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<10,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<17,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&127)<<24,Pe<128)||(Pe=oe[V.pos++],_e|=(Pe&1)<<31,Pe<128))return gs(k,_e,C);throw new Error("Expected varint not more than 10 bytes")}function bo(k){return k.type===vn.Bytes?k.readVarint()+k.pos:k.pos+1}function gs(k,C,V){return V?C*4294967296+(k>>>0):(C>>>0)*4294967296+(k>>>0)}function _u(k,C){var V,oe;if(k>=0?(V=k%4294967296|0,oe=k/4294967296|0):(V=~(-k%4294967296),oe=~(-k/4294967296),V^4294967295?V=V+1|0:(V=0,oe=oe+1|0)),k>=18446744073709552e3||k<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");C.realloc(10),pu(V,oe,C),Bf(oe,C)}function pu(k,C,V){V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos++]=k&127|128,k>>>=7,V.buf[V.pos]=k&127}function Bf(k,C){var V=(k&7)<<4;C.buf[C.pos++]|=V|((k>>>=3)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127|((k>>>=7)?128:0),k&&(C.buf[C.pos++]=k&127)))))}function Gp(k,C,V){var oe=C<=16383?1:C<=2097151?2:C<=268435455?3:Math.floor(Math.log(C)/(Math.LN2*7));V.realloc(oe);for(var _e=V.pos-1;_e>=k;_e--)V.buf[_e+oe]=V.buf[_e]}function dh(k,C){for(var V=0;V<k.length;V++)C.writeVarint(k[V])}function Nf(k,C){for(var V=0;V<k.length;V++)C.writeSVarint(k[V])}function Yh(k,C){for(var V=0;V<k.length;V++)C.writeFloat(k[V])}function Kh(k,C){for(var V=0;V<k.length;V++)C.writeDouble(k[V])}function Jh(k,C){for(var V=0;V<k.length;V++)C.writeBoolean(k[V])}function Hc(k,C){for(var V=0;V<k.length;V++)C.writeFixed32(k[V])}function Uf(k,C){for(var V=0;V<k.length;V++)C.writeSFixed32(k[V])}function Ih(k,C){for(var V=0;V<k.length;V++)C.writeFixed64(k[V])}function vh(k,C){for(var V=0;V<k.length;V++)C.writeSFixed64(k[V])}function th(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+k[C+3]*16777216}function nf(k,C,V){k[V]=C,k[V+1]=C>>>8,k[V+2]=C>>>16,k[V+3]=C>>>24}function Lp(k,C){return(k[C]|k[C+1]<<8|k[C+2]<<16)+(k[C+3]<<24)}function pp(k,C,V){for(var oe="",_e=C;_e<V;){var Pe=k[_e],je=null,ct=Pe>239?4:Pe>223?3:Pe>191?2:1;if(_e+ct>V)break;var Lt,Nt,Xt;ct===1?Pe<128&&(je=Pe):ct===2?(Lt=k[_e+1],(Lt&192)===128&&(je=(Pe&31)<<6|Lt&63,je<=127&&(je=null))):ct===3?(Lt=k[_e+1],Nt=k[_e+2],(Lt&192)===128&&(Nt&192)===128&&(je=(Pe&15)<<12|(Lt&63)<<6|Nt&63,(je<=2047||je>=55296&&je<=57343)&&(je=null))):ct===4&&(Lt=k[_e+1],Nt=k[_e+2],Xt=k[_e+3],(Lt&192)===128&&(Nt&192)===128&&(Xt&192)===128&&(je=(Pe&15)<<18|(Lt&63)<<12|(Nt&63)<<6|Xt&63,(je<=65535||je>=1114112)&&(je=null))),je===null?(je=65533,ct=1):je>65535&&(je-=65536,oe+=String.fromCharCode(je>>>10&1023|55296),je=56320|je&1023),oe+=String.fromCharCode(je),_e+=ct}return oe}function Nl(k,C,V){return Yi.decode(k.subarray(C,V))}function zu(k,C,V){for(var oe=0,_e,Pe;oe<C.length;oe++){if(_e=C.charCodeAt(oe),_e>55295&&_e<57344)if(Pe)if(_e<56320){k[V++]=239,k[V++]=191,k[V++]=189,Pe=_e;continue}else _e=Pe-55296<<10|_e-56320|65536,Pe=null;else{_e>56319||oe+1===C.length?(k[V++]=239,k[V++]=191,k[V++]=189):Pe=_e;continue}else Pe&&(k[V++]=239,k[V++]=191,k[V++]=189,Pe=null);_e<128?k[V++]=_e:(_e<2048?k[V++]=_e>>6|192:(_e<65536?k[V++]=_e>>12|224:(k[V++]=_e>>18|240,k[V++]=_e>>12&63|128),k[V++]=_e>>6&63|128),k[V++]=_e&63|128)}return V}var xu=3;function Pp(k,C,V){k===1&&V.readMessage(Ec,C)}function Ec(k,C,V){if(k===3){var oe=V.readMessage(dm,{}),_e=oe.id,Pe=oe.bitmap,je=oe.width,ct=oe.height,Lt=oe.left,Nt=oe.top,Xt=oe.advance;C.push({id:_e,bitmap:new Cp({width:je+2*xu,height:ct+2*xu},Pe),metrics:{width:je,height:ct,left:Lt,top:Nt,advance:Xt}})}}function dm(k,C,V){k===1?C.id=V.readVarint():k===2?C.bitmap=V.readBytes():k===3?C.width=V.readVarint():k===4?C.height=V.readVarint():k===5?C.left=V.readSVarint():k===6?C.top=V.readSVarint():k===7&&(C.advance=V.readVarint())}function _d(k){return new eo(k).readFields(Pp,[])}var hd=xu;function Wp(k){for(var C=0,V=0,oe=0,_e=k;oe<_e.length;oe+=1){var Pe=_e[oe];C+=Pe.w*Pe.h,V=Math.max(V,Pe.w)}k.sort(function(ii,Wa){return Wa.h-ii.h});for(var je=Math.max(Math.ceil(Math.sqrt(C/.95)),V),ct=[{x:0,y:0,w:je,h:1/0}],Lt=0,Nt=0,Xt=0,gr=k;Xt<gr.length;Xt+=1)for(var Br=gr[Xt],Rr=ct.length-1;Rr>=0;Rr--){var na=ct[Rr];if(!(Br.w>na.w||Br.h>na.h)){if(Br.x=na.x,Br.y=na.y,Nt=Math.max(Nt,Br.y+Br.h),Lt=Math.max(Lt,Br.x+Br.w),Br.w===na.w&&Br.h===na.h){var Ia=ct.pop();Rr<ct.length&&(ct[Rr]=Ia)}else Br.h===na.h?(na.x+=Br.w,na.w-=Br.w):Br.w===na.w?(na.y+=Br.h,na.h-=Br.h):(ct.push({x:na.x+Br.w,y:na.y,w:na.w-Br.w,h:Br.h}),na.y+=Br.h,na.h-=Br.h);break}}return{w:Lt,h:Nt,fill:C/(Lt*Nt)||0}}var tc=1,gf=function(C,V){var oe=V.pixelRatio,_e=V.version,Pe=V.stretchX,je=V.stretchY,ct=V.content;this.paddedRect=C,this.pixelRatio=oe,this.stretchX=Pe,this.stretchY=je,this.content=ct,this.version=_e},Zp={tl:{configurable:!0},br:{configurable:!0},tlbr:{configurable:!0},displaySize:{configurable:!0}};Zp.tl.get=function(){return[this.paddedRect.x+tc,this.paddedRect.y+tc]},Zp.br.get=function(){return[this.paddedRect.x+this.paddedRect.w-tc,this.paddedRect.y+this.paddedRect.h-tc]},Zp.tlbr.get=function(){return this.tl.concat(this.br)},Zp.displaySize.get=function(){return[(this.paddedRect.w-tc*2)/this.pixelRatio,(this.paddedRect.h-tc*2)/this.pixelRatio]},Object.defineProperties(gf.prototype,Zp);var Xd=function(C,V){var oe={},_e={};this.haveRenderCallbacks=[];var Pe=[];this.addImages(C,oe,Pe),this.addImages(V,_e,Pe);var je=Wp(Pe),ct=je.w,Lt=je.h,Nt=new Of({width:ct||1,height:Lt||1});for(var Xt in C){var gr=C[Xt],Br=oe[Xt].paddedRect;Of.copy(gr.data,Nt,{x:0,y:0},{x:Br.x+tc,y:Br.y+tc},gr.data)}for(var Rr in V){var na=V[Rr],Ia=_e[Rr].paddedRect,ii=Ia.x+tc,Wa=Ia.y+tc,Si=na.data.width,ci=na.data.height;Of.copy(na.data,Nt,{x:0,y:0},{x:ii,y:Wa},na.data),Of.copy(na.data,Nt,{x:0,y:ci-1},{x:ii,y:Wa-1},{width:Si,height:1}),Of.copy(na.data,Nt,{x:0,y:0},{x:ii,y:Wa+ci},{width:Si,height:1}),Of.copy(na.data,Nt,{x:Si-1,y:0},{x:ii-1,y:Wa},{width:1,height:ci}),Of.copy(na.data,Nt,{x:0,y:0},{x:ii+Si,y:Wa},{width:1,height:ci})}this.image=Nt,this.iconPositions=oe,this.patternPositions=_e};Xd.prototype.addImages=function(C,V,oe){for(var _e in C){var Pe=C[_e],je={x:0,y:0,w:Pe.data.width+2*tc,h:Pe.data.height+2*tc};oe.push(je),V[_e]=new gf(je,Pe),Pe.hasRenderCallback&&this.haveRenderCallbacks.push(_e)}},Xd.prototype.patchUpdatedImages=function(C,V){C.dispatchRenderCallbacks(this.haveRenderCallbacks);for(var oe in C.updatedImages)this.patchUpdatedImage(this.iconPositions[oe],C.getImage(oe),V),this.patchUpdatedImage(this.patternPositions[oe],C.getImage(oe),V)},Xd.prototype.patchUpdatedImage=function(C,V,oe){if(!(!C||!V)&&C.version!==V.version){C.version=V.version;var _e=C.tl,Pe=_e[0],je=_e[1];oe.update(V.data,void 0,{x:Pe,y:je})}},de("ImagePosition",gf),de("ImageAtlas",Xd);var dp={horizontal:1,vertical:2,horizontalOnly:3},vm=-17;function Y1(k){for(var C=0,V=k;C<V.length;C+=1){var oe=V[C];if(oe.positionedGlyphs.length!==0)return!1}return!0}var R0=57344,xd=63743,Ov=function(){this.scale=1,this.fontStack="",this.imageName=null};Ov.forText=function(C,V){var oe=new Ov;return oe.scale=C||1,oe.fontStack=V,oe},Ov.forImage=function(C){var V=new Ov;return V.imageName=C,V};var rh=function(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null};rh.fromFeature=function(C,V){for(var oe=new rh,_e=0;_e<C.sections.length;_e++){var Pe=C.sections[_e];Pe.image?oe.addImageSection(Pe):oe.addTextSection(Pe,V)}return oe},rh.prototype.length=function(){return this.text.length},rh.prototype.getSection=function(C){return this.sections[this.sectionIndex[C]]},rh.prototype.getSectionIndex=function(C){return this.sectionIndex[C]},rh.prototype.getCharCode=function(C){return this.text.charCodeAt(C)},rh.prototype.verticalizePunctuation=function(){this.text=hi(this.text)},rh.prototype.trim=function(){for(var C=0,V=0;V<this.text.length&&bd[this.text.charCodeAt(V)];V++)C++;for(var oe=this.text.length,_e=this.text.length-1;_e>=0&&_e>=C&&bd[this.text.charCodeAt(_e)];_e--)oe--;this.text=this.text.substring(C,oe),this.sectionIndex=this.sectionIndex.slice(C,oe)},rh.prototype.substring=function(C,V){var oe=new rh;return oe.text=this.text.substring(C,V),oe.sectionIndex=this.sectionIndex.slice(C,V),oe.sections=this.sections,oe},rh.prototype.toString=function(){return this.text},rh.prototype.getMaxScale=function(){var C=this;return this.sectionIndex.reduce(function(V,oe){return Math.max(V,C.sections[oe].scale)},0)},rh.prototype.addTextSection=function(C,V){this.text+=C.text,this.sections.push(Ov.forText(C.scale,C.fontStack||V));for(var oe=this.sections.length-1,_e=0;_e<C.text.length;++_e)this.sectionIndex.push(oe)},rh.prototype.addImageSection=function(C){var V=C.image?C.image.name:"";if(V.length===0){U("Can't add FormattedSection with an empty image.");return}var oe=this.getNextImageSectionCharCode();if(!oe){U("Reached maximum number of images "+(xd-R0+2));return}this.text+=String.fromCharCode(oe),this.sections.push(Ov.forImage(V)),this.sectionIndex.push(this.sections.length-1)},rh.prototype.getNextImageSectionCharCode=function(){return this.imageSectionID?this.imageSectionID>=xd?null:++this.imageSectionID:(this.imageSectionID=R0,this.imageSectionID)};function sA(k,C){for(var V=[],oe=k.text,_e=0,Pe=0,je=C;Pe<je.length;Pe+=1){var ct=je[Pe];V.push(k.substring(_e,ct)),_e=ct}return _e<oe.length&&V.push(k.substring(_e,oe.length)),V}function D0(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia){var ii=rh.fromFeature(k,_e);gr===dp.vertical&&ii.verticalizePunctuation();var Wa,Si=Gs.processBidirectionalText,ci=Gs.processStyledBidirectionalText;if(Si&&ii.sections.length===1){Wa=[];for(var Ai=Si(ii.toString(),z0(ii,Nt,Pe,C,oe,Rr,na)),Li=0,Ki=Ai;Li<Ki.length;Li+=1){var kn=Ki[Li],Tn=new rh;Tn.text=kn,Tn.sections=ii.sections;for(var lo=0;lo<kn.length;lo++)Tn.sectionIndex.push(0);Wa.push(Tn)}}else if(ci){Wa=[];for(var qn=ci(ii.text,ii.sectionIndex,z0(ii,Nt,Pe,C,oe,Rr,na)),to=0,ds=qn;to<ds.length;to+=1){var uo=ds[to],vo=new rh;vo.text=uo[0],vo.sectionIndex=uo[1],vo.sections=ii.sections,Wa.push(vo)}}else Wa=sA(ii,z0(ii,Nt,Pe,C,oe,Rr,na));var zs=[],cs={positionedLines:zs,text:ii.toString(),top:Xt[1],bottom:Xt[1],left:Xt[0],right:Xt[0],writingMode:gr,iconsInText:!1,verticalizable:!1};return cA(cs,C,V,oe,Wa,je,ct,Lt,gr,Nt,Br,Ia),Y1(zs)?!1:cs}var bd={};bd[9]=!0,bd[10]=!0,bd[11]=!0,bd[12]=!0,bd[13]=!0,bd[32]=!0;var vp={};vp[10]=!0,vp[32]=!0,vp[38]=!0,vp[40]=!0,vp[41]=!0,vp[43]=!0,vp[45]=!0,vp[47]=!0,vp[173]=!0,vp[183]=!0,vp[8203]=!0,vp[8208]=!0,vp[8211]=!0,vp[8231]=!0;function nb(k,C,V,oe,_e,Pe){if(C.imageName){var Lt=oe[C.imageName];return Lt?Lt.displaySize[0]*C.scale*Ei/Pe+_e:0}else{var je=V[C.fontStack],ct=je&&je[k];return ct?ct.metrics.advance*C.scale+_e:0}}function lA(k,C,V,oe,_e,Pe){for(var je=0,ct=0;ct<k.length();ct++){var Lt=k.getSection(ct);je+=nb(k.getCharCode(ct),Lt,oe,_e,C,Pe)}var Nt=Math.max(1,Math.ceil(je/V));return je/Nt}function ob(k,C,V,oe){var _e=Math.pow(k-C,2);return oe?k<C?_e/2:_e*2:_e+Math.abs(V)*V}function uA(k,C,V){var oe=0;return k===10&&(oe-=1e4),V&&(oe+=150),(k===40||k===65288)&&(oe+=50),(C===41||C===65289)&&(oe+=50),oe}function id(k,C,V,oe,_e,Pe){for(var je=null,ct=ob(C,V,_e,Pe),Lt=0,Nt=oe;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt],gr=C-Xt.x,Br=ob(gr,V,_e,Pe)+Xt.badness;Br<=ct&&(je=Xt,ct=Br)}return{index:k,x:C,priorBreak:je,badness:ct}}function Fg(k){return k?Fg(k.priorBreak).concat(k.index):[]}function z0(k,C,V,oe,_e,Pe,je){if(Pe!=="point")return[];if(!k)return[];for(var ct=[],Lt=lA(k,C,V,oe,_e,je),Nt=k.text.indexOf("\u200B")>=0,Xt=0,gr=0;gr<k.length();gr++){var Br=k.getSection(gr),Rr=k.getCharCode(gr);if(bd[Rr]||(Xt+=nb(Rr,Br,oe,_e,C,je)),gr<k.length()-1){var na=va(Rr);(vp[Rr]||na||Br.imageName)&&ct.push(id(gr+1,Xt,Lt,ct,uA(Rr,k.getCharCode(gr+1),na&&Nt),!1))}}return Fg(id(k.length(),Xt,Lt,ct,0,!0))}function K1(k){var C=.5,V=.5;switch(k){case"right":case"top-right":case"bottom-right":C=1;break;case"left":case"top-left":case"bottom-left":C=0;break}switch(k){case"bottom":case"bottom-right":case"bottom-left":V=1;break;case"top":case"top-right":case"top-left":V=0;break}return{horizontalAlign:C,verticalAlign:V}}function cA(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){for(var Br=0,Rr=vm,na=0,Ia=0,ii=ct==="right"?1:ct==="left"?0:.5,Wa=0,Si=0,ci=_e;Si<ci.length;Si+=1){var Ai=ci[Si];Ai.trim();var Li=Ai.getMaxScale(),Ki=(Li-1)*Ei,kn={positionedGlyphs:[],lineOffset:0};k.positionedLines[Wa]=kn;var Tn=kn.positionedGlyphs,lo=0;if(!Ai.length()){Rr+=Pe,++Wa;continue}for(var qn=0;qn<Ai.length();qn++){var to=Ai.getSection(qn),ds=Ai.getSectionIndex(qn),uo=Ai.getCharCode(qn),vo=0,zs=null,cs=null,Tl=null,lu=Ei,Al=!(Lt===dp.horizontal||!Xt&&!fa(uo)||Xt&&(bd[uo]||_a(uo)));if(to.imageName){var Gc=oe[to.imageName];if(!Gc)continue;Tl=to.imageName,k.iconsInText=k.iconsInText||!0,cs=Gc.paddedRect;var of=Gc.displaySize;to.scale=to.scale*Ei/gr,zs={width:of[0],height:of[1],left:tc,top:-hd,advance:Al?of[1]:of[0]};var ih=Ei-of[1]*to.scale;vo=Ki+ih,lu=zs.advance;var Cf=Al?of[0]*to.scale-Ei*Li:of[1]*to.scale-Ei*Li;Cf>0&&Cf>lo&&(lo=Cf)}else{var Sl=V[to.fontStack],pl=Sl&&Sl[uo];if(pl&&pl.rect)cs=pl.rect,zs=pl.metrics;else{var bu=C[to.fontStack],Fu=bu&&bu[uo];if(!Fu)continue;zs=Fu.metrics}vo=(Li-to.scale)*Ei}Al?(k.verticalizable=!0,Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=lu*to.scale+Nt):(Tn.push({glyph:uo,imageName:Tl,x:Br,y:Rr+vo,vertical:Al,scale:to.scale,fontStack:to.fontStack,sectionIndex:ds,metrics:zs,rect:cs}),Br+=zs.advance*to.scale+Nt)}if(Tn.length!==0){var Qh=Br-Nt;na=Math.max(Qh,na),fA(Tn,0,Tn.length-1,ii,lo)}Br=0;var ep=Pe*Li+lo;kn.lineOffset=Math.max(lo,Ki),Rr+=ep,Ia=Math.max(ep,Ia),++Wa}var nh=Rr-vm,mp=K1(je),gp=mp.horizontalAlign,jf=mp.verticalAlign;Rh(k.positionedLines,ii,gp,jf,na,Ia,Pe,nh,_e.length),k.top+=-jf*nh,k.bottom=k.top+nh,k.left+=-gp*na,k.right=k.left+na}function fA(k,C,V,oe,_e){if(!(!oe&&!_e))for(var Pe=k[V],je=Pe.metrics.advance*Pe.scale,ct=(k[V].x+je)*oe,Lt=C;Lt<=V;Lt++)k[Lt].x-=ct,k[Lt].y+=_e}function Rh(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=(C-V)*_e,Xt=0;Pe!==je?Xt=-ct*oe-vm:Xt=(-oe*Lt+.5)*je;for(var gr=0,Br=k;gr<Br.length;gr+=1)for(var Rr=Br[gr],na=0,Ia=Rr.positionedGlyphs;na<Ia.length;na+=1){var ii=Ia[na];ii.x+=Nt,ii.y+=Xt}}function Xp(k,C,V){var oe=K1(V),_e=oe.horizontalAlign,Pe=oe.verticalAlign,je=C[0],ct=C[1],Lt=je-k.displaySize[0]*_e,Nt=Lt+k.displaySize[0],Xt=ct-k.displaySize[1]*Pe,gr=Xt+k.displaySize[1];return{image:k,top:Xt,bottom:gr,left:Lt,right:Nt}}function dv(k,C,V,oe,_e,Pe){var je=k.image,ct;if(je.content){var Lt=je.content,Nt=je.pixelRatio||1;ct=[Lt[0]/Nt,Lt[1]/Nt,je.displaySize[0]-Lt[2]/Nt,je.displaySize[1]-Lt[3]/Nt]}var Xt=C.left*Pe,gr=C.right*Pe,Br,Rr,na,Ia;V==="width"||V==="both"?(Ia=_e[0]+Xt-oe[3],Rr=_e[0]+gr+oe[1]):(Ia=_e[0]+(Xt+gr-je.displaySize[0])/2,Rr=Ia+je.displaySize[0]);var ii=C.top*Pe,Wa=C.bottom*Pe;return V==="height"||V==="both"?(Br=_e[1]+ii-oe[0],na=_e[1]+Wa+oe[2]):(Br=_e[1]+(ii+Wa-je.displaySize[1])/2,na=Br+je.displaySize[1]),{image:je,top:Br,right:Rr,bottom:na,left:Ia,collisionPadding:ct}}var $h=function(k){function C(V,oe,_e,Pe){k.call(this,V,oe),this.angle=_e,Pe!==void 0&&(this.segment=Pe)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.clone=function(){return new C(this.x,this.y,this.angle,this.segment)},C}(i);de("Anchor",$h);var Dh=128;function nd(k,C){var V=C.expression;if(V.kind==="constant"){var oe=V.evaluate(new Vi(k+1));return{kind:"constant",layoutSize:oe}}else{if(V.kind==="source")return{kind:"source"};for(var _e=V.zoomStops,Pe=V.interpolationType,je=0;je<_e.length&&_e[je]<=k;)je++;je=Math.max(0,je-1);for(var ct=je;ct<_e.length&&_e[ct]<k+1;)ct++;ct=Math.min(_e.length-1,ct);var Lt=_e[je],Nt=_e[ct];if(V.kind==="composite")return{kind:"composite",minZoom:Lt,maxZoom:Nt,interpolationType:Pe};var Xt=V.evaluate(new Vi(Lt)),gr=V.evaluate(new Vi(Nt));return{kind:"camera",minZoom:Lt,maxZoom:Nt,minSize:Xt,maxSize:gr,interpolationType:Pe}}}function hC(k,C,V){var oe=C.uSize,_e=C.uSizeT,Pe=V.lowerSize,je=V.upperSize;return k.kind==="source"?Pe/Dh:k.kind==="composite"?xl(Pe/Dh,je/Dh,_e):oe}function pC(k,C){var V=0,oe=0;if(k.kind==="constant")oe=k.layoutSize;else if(k.kind!=="source"){var _e=k.interpolationType,Pe=k.minZoom,je=k.maxZoom,ct=_e?l(Vl.interpolationFactor(_e,C,Pe,je),0,1):0;k.kind==="camera"?oe=xl(k.minSize,k.maxSize,ct):V=ct}return{uSizeT:V,uSize:oe}}var $G=Object.freeze({__proto__:null,getSizeData:nd,evaluateSizeForFeature:hC,evaluateSizeForZoom:pC,SIZE_PACK_FACTOR:Dh});function dC(k,C,V,oe,_e){if(C.segment===void 0)return!0;for(var Pe=C,je=C.segment+1,ct=0;ct>-V/2;){if(je--,je<0)return!1;ct-=k[je].dist(Pe),Pe=k[je]}ct+=k[je].dist(k[je+1]),je++;for(var Lt=[],Nt=0;ct<V/2;){var Xt=k[je-1],gr=k[je],Br=k[je+1];if(!Br)return!1;var Rr=Xt.angleTo(gr)-gr.angleTo(Br);for(Rr=Math.abs((Rr+3*Math.PI)%(Math.PI*2)-Math.PI),Lt.push({distance:ct,angleDelta:Rr}),Nt+=Rr;ct-Lt[0].distance>oe;)Nt-=Lt.shift().angleDelta;if(Nt>_e)return!1;je++,ct+=gr.dist(Br)}return!0}function vC(k){for(var C=0,V=0;V<k.length-1;V++)C+=k[V].dist(k[V+1]);return C}function mC(k,C,V){return k?3/5*C*V:0}function gC(k,C){return Math.max(k?k.right-k.left:0,C?C.right-C.left:0)}function QG(k,C,V,oe,_e,Pe){for(var je=mC(V,_e,Pe),ct=gC(V,oe)*Pe,Lt=0,Nt=vC(k)/2,Xt=0;Xt<k.length-1;Xt++){var gr=k[Xt],Br=k[Xt+1],Rr=gr.dist(Br);if(Lt+Rr>Nt){var na=(Nt-Lt)/Rr,Ia=xl(gr.x,Br.x,na),ii=xl(gr.y,Br.y,na),Wa=new $h(Ia,ii,Br.angleTo(gr),Xt);return Wa._round(),!je||dC(k,Wa,ct,je,C)?Wa:void 0}Lt+=Rr}}function eW(k,C,V,oe,_e,Pe,je,ct,Lt){var Nt=mC(oe,Pe,je),Xt=gC(oe,_e),gr=Xt*je,Br=k[0].x===0||k[0].x===Lt||k[0].y===0||k[0].y===Lt;C-gr<C/4&&(C=gr+C/4);var Rr=Pe*2,na=Br?C/2*ct%C:(Xt/2+Rr)*je*ct%C;return yC(k,na,C,Nt,V,gr,Br,!1,Lt)}function yC(k,C,V,oe,_e,Pe,je,ct,Lt){for(var Nt=Pe/2,Xt=vC(k),gr=0,Br=C-V,Rr=[],na=0;na<k.length-1;na++){for(var Ia=k[na],ii=k[na+1],Wa=Ia.dist(ii),Si=ii.angleTo(Ia);Br+V<gr+Wa;){Br+=V;var ci=(Br-gr)/Wa,Ai=xl(Ia.x,ii.x,ci),Li=xl(Ia.y,ii.y,ci);if(Ai>=0&&Ai<Lt&&Li>=0&&Li<Lt&&Br-Nt>=0&&Br+Nt<=Xt){var Ki=new $h(Ai,Li,Si,na);Ki._round(),(!oe||dC(k,Ki,Pe,oe,_e))&&Rr.push(Ki)}}gr+=Wa}return!ct&&!Rr.length&&!je&&(Rr=yC(k,gr/2,V,oe,_e,Pe,je,!0,Lt)),Rr}function _C(k,C,V,oe,_e){for(var Pe=[],je=0;je<k.length;je++)for(var ct=k[je],Lt=void 0,Nt=0;Nt<ct.length-1;Nt++){var Xt=ct[Nt],gr=ct[Nt+1];Xt.x<C&&gr.x<C||(Xt.x<C?Xt=new i(C,Xt.y+(gr.y-Xt.y)*((C-Xt.x)/(gr.x-Xt.x)))._round():gr.x<C&&(gr=new i(C,Xt.y+(gr.y-Xt.y)*((C-Xt.x)/(gr.x-Xt.x)))._round()),!(Xt.y<V&&gr.y<V)&&(Xt.y<V?Xt=new i(Xt.x+(gr.x-Xt.x)*((V-Xt.y)/(gr.y-Xt.y)),V)._round():gr.y<V&&(gr=new i(Xt.x+(gr.x-Xt.x)*((V-Xt.y)/(gr.y-Xt.y)),V)._round()),!(Xt.x>=oe&&gr.x>=oe)&&(Xt.x>=oe?Xt=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round():gr.x>=oe&&(gr=new i(oe,Xt.y+(gr.y-Xt.y)*((oe-Xt.x)/(gr.x-Xt.x)))._round()),!(Xt.y>=_e&&gr.y>=_e)&&(Xt.y>=_e?Xt=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round():gr.y>=_e&&(gr=new i(Xt.x+(gr.x-Xt.x)*((_e-Xt.y)/(gr.y-Xt.y)),_e)._round()),(!Lt||!Xt.equals(Lt[Lt.length-1]))&&(Lt=[Xt],Pe.push(Lt)),Lt.push(gr)))))}return Pe}var F0=tc;function xC(k,C,V,oe){var _e=[],Pe=k.image,je=Pe.pixelRatio,ct=Pe.paddedRect.w-2*F0,Lt=Pe.paddedRect.h-2*F0,Nt=k.right-k.left,Xt=k.bottom-k.top,gr=Pe.stretchX||[[0,ct]],Br=Pe.stretchY||[[0,Lt]],Rr=function(Sl,pl){return Sl+pl[1]-pl[0]},na=gr.reduce(Rr,0),Ia=Br.reduce(Rr,0),ii=ct-na,Wa=Lt-Ia,Si=0,ci=na,Ai=0,Li=Ia,Ki=0,kn=ii,Tn=0,lo=Wa;if(Pe.content&&oe){var qn=Pe.content;Si=sb(gr,0,qn[0]),Ai=sb(Br,0,qn[1]),ci=sb(gr,qn[0],qn[2]),Li=sb(Br,qn[1],qn[3]),Ki=qn[0]-Si,Tn=qn[1]-Ai,kn=qn[2]-qn[0]-ci,lo=qn[3]-qn[1]-Li}var to=function(Sl,pl,bu,Fu){var Gc=lb(Sl.stretch-Si,ci,Nt,k.left),of=ub(Sl.fixed-Ki,kn,Sl.stretch,na),ih=lb(pl.stretch-Ai,Li,Xt,k.top),Cf=ub(pl.fixed-Tn,lo,pl.stretch,Ia),Qh=lb(bu.stretch-Si,ci,Nt,k.left),ep=ub(bu.fixed-Ki,kn,bu.stretch,na),nh=lb(Fu.stretch-Ai,Li,Xt,k.top),mp=ub(Fu.fixed-Tn,lo,Fu.stretch,Ia),gp=new i(Gc,ih),jf=new i(Qh,ih),yp=new i(Qh,nh),od=new i(Gc,nh),Uv=new i(of/je,Cf/je),ym=new i(ep/je,mp/je),_m=C*Math.PI/180;if(_m){var xm=Math.sin(_m),H0=Math.cos(_m),wd=[H0,-xm,xm,H0];gp._matMult(wd),jf._matMult(wd),od._matMult(wd),yp._matMult(wd)}var vb=Sl.stretch+Sl.fixed,_A=bu.stretch+bu.fixed,mb=pl.stretch+pl.fixed,xA=Fu.stretch+Fu.fixed,pd={x:Pe.paddedRect.x+F0+vb,y:Pe.paddedRect.y+F0+mb,w:_A-vb,h:xA-mb},G0=kn/je/Nt,gb=lo/je/Xt;return{tl:gp,tr:jf,bl:od,br:yp,tex:pd,writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:Uv,pixelOffsetBR:ym,minFontScaleX:G0,minFontScaleY:gb,isSDF:V}};if(!oe||!Pe.stretchX&&!Pe.stretchY)_e.push(to({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ct+1},{fixed:0,stretch:Lt+1}));else for(var ds=bC(gr,ii,na),uo=bC(Br,Wa,Ia),vo=0;vo<ds.length-1;vo++)for(var zs=ds[vo],cs=ds[vo+1],Tl=0;Tl<uo.length-1;Tl++){var lu=uo[Tl],Al=uo[Tl+1];_e.push(to(zs,lu,cs,Al))}return _e}function sb(k,C,V){for(var oe=0,_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e];oe+=Math.max(C,Math.min(V,je[1]))-Math.max(C,Math.min(V,je[0]))}return oe}function bC(k,C,V){for(var oe=[{fixed:-F0,stretch:0}],_e=0,Pe=k;_e<Pe.length;_e+=1){var je=Pe[_e],ct=je[0],Lt=je[1],Nt=oe[oe.length-1];oe.push({fixed:ct-Nt.stretch,stretch:Nt.stretch}),oe.push({fixed:ct-Nt.stretch,stretch:Nt.stretch+(Lt-ct)})}return oe.push({fixed:C+F0,stretch:V}),oe}function lb(k,C,V,oe){return k/C*V+oe}function ub(k,C,V,oe){return k-C*V/oe}function tW(k,C,V,oe,_e,Pe,je,ct){for(var Lt=oe.layout.get("text-rotate").evaluate(Pe,{})*Math.PI/180,Nt=[],Xt=0,gr=C.positionedLines;Xt<gr.length;Xt+=1)for(var Br=gr[Xt],Rr=0,na=Br.positionedGlyphs;Rr<na.length;Rr+=1){var Ia=na[Rr];if(Ia.rect){var ii=Ia.rect||{},Wa=1,Si=hd+Wa,ci=!0,Ai=1,Li=0,Ki=(_e||ct)&&Ia.vertical,kn=Ia.metrics.advance*Ia.scale/2;if(ct&&C.verticalizable){var Tn=(Ia.scale-1)*Ei,lo=(Ei-Ia.metrics.width*Ia.scale)/2;Li=Br.lineOffset/2-(Ia.imageName?-lo:Tn)}if(Ia.imageName){var qn=je[Ia.imageName];ci=qn.sdf,Ai=qn.pixelRatio,Si=tc/Ai}var to=_e?[Ia.x+kn,Ia.y]:[0,0],ds=_e?[0,0]:[Ia.x+kn+V[0],Ia.y+V[1]-Li],uo=[0,0];Ki&&(uo=ds,ds=[0,0]);var vo=(Ia.metrics.left-Si)*Ia.scale-kn+ds[0],zs=(-Ia.metrics.top-Si)*Ia.scale+ds[1],cs=vo+ii.w*Ia.scale/Ai,Tl=zs+ii.h*Ia.scale/Ai,lu=new i(vo,zs),Al=new i(cs,zs),Sl=new i(vo,Tl),pl=new i(cs,Tl);if(Ki){var bu=new i(-kn,kn-vm),Fu=-Math.PI/2,Gc=Ei/2-kn,of=Ia.imageName?Gc:0,ih=new i(5-vm-Gc,-of),Cf=new(Function.prototype.bind.apply(i,[null].concat(uo)));lu._rotateAround(Fu,bu)._add(ih)._add(Cf),Al._rotateAround(Fu,bu)._add(ih)._add(Cf),Sl._rotateAround(Fu,bu)._add(ih)._add(Cf),pl._rotateAround(Fu,bu)._add(ih)._add(Cf)}if(Lt){var Qh=Math.sin(Lt),ep=Math.cos(Lt),nh=[ep,-Qh,Qh,ep];lu._matMult(nh),Al._matMult(nh),Sl._matMult(nh),pl._matMult(nh)}var mp=new i(0,0),gp=new i(0,0),jf=0,yp=0;Nt.push({tl:lu,tr:Al,bl:Sl,br:pl,tex:ii,writingMode:C.writingMode,glyphOffset:to,sectionIndex:Ia.sectionIndex,isSDF:ci,pixelOffsetTL:mp,pixelOffsetBR:gp,minFontScaleX:jf,minFontScaleY:yp})}}return Nt}var cb=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){if(this.boxStartIndex=C.length,Nt){var gr=je.top,Br=je.bottom,Rr=je.collisionPadding;Rr&&(gr-=Rr[1],Br+=Rr[3]);var na=Br-gr;na>0&&(na=Math.max(10,na),this.circleDiameter=na)}else{var Ia=je.top*ct-Lt,ii=je.bottom*ct+Lt,Wa=je.left*ct-Lt,Si=je.right*ct+Lt,ci=je.collisionPadding;if(ci&&(Wa-=ci[0]*ct,Ia-=ci[1]*ct,Si+=ci[2]*ct,ii+=ci[3]*ct),Xt){var Ai=new i(Wa,Ia),Li=new i(Si,Ia),Ki=new i(Wa,ii),kn=new i(Si,ii),Tn=Xt*Math.PI/180;Ai._rotate(Tn),Li._rotate(Tn),Ki._rotate(Tn),kn._rotate(Tn),Wa=Math.min(Ai.x,Li.x,Ki.x,kn.x),Si=Math.max(Ai.x,Li.x,Ki.x,kn.x),Ia=Math.min(Ai.y,Li.y,Ki.y,kn.y),ii=Math.max(Ai.y,Li.y,Ki.y,kn.y)}C.emplaceBack(V.x,V.y,Wa,Ia,Si,ii,oe,_e,Pe)}this.boxEndIndex=C.length},O0=function(C,V){if(C===void 0&&(C=[]),V===void 0&&(V=rW),this.data=C,this.length=this.data.length,this.compare=V,this.length>0)for(var oe=(this.length>>1)-1;oe>=0;oe--)this._down(oe)};O0.prototype.push=function(C){this.data.push(C),this.length++,this._up(this.length-1)},O0.prototype.pop=function(){if(this.length!==0){var C=this.data[0],V=this.data.pop();return this.length--,this.length>0&&(this.data[0]=V,this._down(0)),C}},O0.prototype.peek=function(){return this.data[0]},O0.prototype._up=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=oe[C];C>0;){var je=C-1>>1,ct=oe[je];if(_e(Pe,ct)>=0)break;oe[C]=ct,C=je}oe[C]=Pe},O0.prototype._down=function(C){for(var V=this,oe=V.data,_e=V.compare,Pe=this.length>>1,je=oe[C];C<Pe;){var ct=(C<<1)+1,Lt=oe[ct],Nt=ct+1;if(Nt<this.length&&_e(oe[Nt],Lt)<0&&(ct=Nt,Lt=oe[Nt]),_e(Lt,je)>=0)break;oe[C]=Lt,C=ct}oe[C]=je};function rW(k,C){return k<C?-1:k>C?1:0}function aW(k,C,V){C===void 0&&(C=1),V===void 0&&(V=!1);for(var oe=1/0,_e=1/0,Pe=-1/0,je=-1/0,ct=k[0],Lt=0;Lt<ct.length;Lt++){var Nt=ct[Lt];(!Lt||Nt.x<oe)&&(oe=Nt.x),(!Lt||Nt.y<_e)&&(_e=Nt.y),(!Lt||Nt.x>Pe)&&(Pe=Nt.x),(!Lt||Nt.y>je)&&(je=Nt.y)}var Xt=Pe-oe,gr=je-_e,Br=Math.min(Xt,gr),Rr=Br/2,na=new O0([],iW);if(Br===0)return new i(oe,_e);for(var Ia=oe;Ia<Pe;Ia+=Br)for(var ii=_e;ii<je;ii+=Br)na.push(new B0(Ia+Rr,ii+Rr,Rr,k));for(var Wa=oW(k),Si=na.length;na.length;){var ci=na.pop();(ci.d>Wa.d||!Wa.d)&&(Wa=ci,V&&console.log("found best %d after %d probes",Math.round(1e4*ci.d)/1e4,Si)),!(ci.max-Wa.d<=C)&&(Rr=ci.h/2,na.push(new B0(ci.p.x-Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y-Rr,Rr,k)),na.push(new B0(ci.p.x-Rr,ci.p.y+Rr,Rr,k)),na.push(new B0(ci.p.x+Rr,ci.p.y+Rr,Rr,k)),Si+=4)}return V&&(console.log("num probes: "+Si),console.log("best distance: "+Wa.d)),Wa.p}function iW(k,C){return C.max-k.max}function B0(k,C,V,oe){this.p=new i(k,C),this.h=V,this.d=nW(this.p,oe),this.max=this.d+this.h*Math.SQRT2}function nW(k,C){for(var V=!1,oe=1/0,_e=0;_e<C.length;_e++)for(var Pe=C[_e],je=0,ct=Pe.length,Lt=ct-1;je<ct;Lt=je++){var Nt=Pe[je],Xt=Pe[Lt];Nt.y>k.y!=Xt.y>k.y&&k.x<(Xt.x-Nt.x)*(k.y-Nt.y)/(Xt.y-Nt.y)+Nt.x&&(V=!V),oe=Math.min(oe,Vd(k,Nt,Xt))}return(V?1:-1)*Math.sqrt(oe)}function oW(k){for(var C=0,V=0,oe=0,_e=k[0],Pe=0,je=_e.length,ct=je-1;Pe<je;ct=Pe++){var Lt=_e[Pe],Nt=_e[ct],Xt=Lt.x*Nt.y-Nt.x*Lt.y;V+=(Lt.x+Nt.x)*Xt,oe+=(Lt.y+Nt.y)*Xt,C+=Xt*3}return new B0(V/C,oe/C,0,k)}var N0=7,hA=Number.POSITIVE_INFINITY;function wC(k,C){function V(_e,Pe){var je=0,ct=0;Pe<0&&(Pe=0);var Lt=Pe/Math.sqrt(2);switch(_e){case"top-right":case"top-left":ct=Lt-N0;break;case"bottom-right":case"bottom-left":ct=-Lt+N0;break;case"bottom":ct=-Pe+N0;break;case"top":ct=Pe-N0;break}switch(_e){case"top-right":case"bottom-right":je=-Lt;break;case"top-left":case"bottom-left":je=Lt;break;case"left":je=Pe;break;case"right":je=-Pe;break}return[je,ct]}function oe(_e,Pe,je){var ct=0,Lt=0;switch(Pe=Math.abs(Pe),je=Math.abs(je),_e){case"top-right":case"top-left":case"top":Lt=je-N0;break;case"bottom-right":case"bottom-left":case"bottom":Lt=-je+N0;break}switch(_e){case"top-right":case"bottom-right":case"right":ct=-Pe;break;case"top-left":case"bottom-left":case"left":ct=Pe;break}return[ct,Lt]}return C[1]!==hA?oe(k,C[0],C[1]):V(k,C[0])}function sW(k,C,V,oe,_e,Pe,je){k.createArrays();var ct=512*k.overscaling;k.tilePixelRatio=Ii/ct,k.compareText={},k.iconsNeedLinear=!1;var Lt=k.layers[0].layout,Nt=k.layers[0]._unevaluatedLayout._values,Xt={};if(k.textSizeData.kind==="composite"){var gr=k.textSizeData,Br=gr.minZoom,Rr=gr.maxZoom;Xt.compositeTextSizes=[Nt["text-size"].possiblyEvaluate(new Vi(Br),je),Nt["text-size"].possiblyEvaluate(new Vi(Rr),je)]}if(k.iconSizeData.kind==="composite"){var na=k.iconSizeData,Ia=na.minZoom,ii=na.maxZoom;Xt.compositeIconSizes=[Nt["icon-size"].possiblyEvaluate(new Vi(Ia),je),Nt["icon-size"].possiblyEvaluate(new Vi(ii),je)]}Xt.layoutTextSize=Nt["text-size"].possiblyEvaluate(new Vi(k.zoom+1),je),Xt.layoutIconSize=Nt["icon-size"].possiblyEvaluate(new Vi(k.zoom+1),je),Xt.textMaxSize=Nt["text-size"].possiblyEvaluate(new Vi(18));for(var Wa=Lt.get("text-line-height")*Ei,Si=Lt.get("text-rotation-alignment")==="map"&&Lt.get("symbol-placement")!=="point",ci=Lt.get("text-keep-upright"),Ai=Lt.get("text-size"),Li=function(){var Tn=kn[Ki],lo=Lt.get("text-font").evaluate(Tn,{},je).join(","),qn=Ai.evaluate(Tn,{},je),to=Xt.layoutTextSize.evaluate(Tn,{},je),ds=Xt.layoutIconSize.evaluate(Tn,{},je),uo={horizontal:{},vertical:void 0},vo=Tn.text,zs=[0,0];if(vo){var cs=vo.toString(),Tl=Lt.get("text-letter-spacing").evaluate(Tn,{},je)*Ei,lu=Dr(cs)?Tl:0,Al=Lt.get("text-anchor").evaluate(Tn,{},je),Sl=Lt.get("text-variable-anchor");if(!Sl){var pl=Lt.get("text-radial-offset").evaluate(Tn,{},je);pl?zs=wC(Al,[pl*Ei,hA]):zs=Lt.get("text-offset").evaluate(Tn,{},je).map(function(Uv){return Uv*Ei})}var bu=Si?"center":Lt.get("text-justify").evaluate(Tn,{},je),Fu=Lt.get("symbol-placement"),Gc=Fu==="point"?Lt.get("text-max-width").evaluate(Tn,{},je)*Ei:0,of=function(){k.allowVerticalPlacement&&or(cs)&&(uo.vertical=D0(vo,C,V,_e,lo,Gc,Wa,Al,"left",lu,zs,dp.vertical,!0,Fu,to,qn))};if(!Si&&Sl){for(var ih=bu==="auto"?Sl.map(function(Uv){return pA(Uv)}):[bu],Cf=!1,Qh=0;Qh<ih.length;Qh++){var ep=ih[Qh];if(!uo.horizontal[ep])if(Cf)uo.horizontal[ep]=uo.horizontal[0];else{var nh=D0(vo,C,V,_e,lo,Gc,Wa,"center",ep,lu,zs,dp.horizontal,!1,Fu,to,qn);nh&&(uo.horizontal[ep]=nh,Cf=nh.positionedLines.length===1)}}of()}else{bu==="auto"&&(bu=pA(Al));var mp=D0(vo,C,V,_e,lo,Gc,Wa,Al,bu,lu,zs,dp.horizontal,!1,Fu,to,qn);mp&&(uo.horizontal[bu]=mp),of(),or(cs)&&Si&&ci&&(uo.vertical=D0(vo,C,V,_e,lo,Gc,Wa,Al,bu,lu,zs,dp.vertical,!1,Fu,to,qn))}}var gp=void 0,jf=!1;if(Tn.icon&&Tn.icon.name){var yp=oe[Tn.icon.name];yp&&(gp=Xp(_e[Tn.icon.name],Lt.get("icon-offset").evaluate(Tn,{},je),Lt.get("icon-anchor").evaluate(Tn,{},je)),jf=yp.sdf,k.sdfIcons===void 0?k.sdfIcons=yp.sdf:k.sdfIcons!==yp.sdf&&U("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(yp.pixelRatio!==k.pixelRatio||Lt.get("icon-rotate").constantOr(1)!==0)&&(k.iconsNeedLinear=!0))}var od=AC(uo.horizontal)||uo.vertical;k.iconsInText=od?od.iconsInText:!1,(od||gp)&&lW(k,Tn,uo,gp,oe,Xt,to,ds,zs,jf,je)},Ki=0,kn=k.features;Ki<kn.length;Ki+=1)Li();Pe&&k.generateCollisionDebugBuffers()}function pA(k){switch(k){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function lW(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){var gr=Pe.textMaxSize.evaluate(C,{});gr===void 0&&(gr=je);var Br=k.layers[0].layout,Rr=Br.get("icon-offset").evaluate(C,{},Xt),na=AC(V.horizontal),Ia=24,ii=je/Ia,Wa=k.tilePixelRatio*ii,Si=k.tilePixelRatio*gr/Ia,ci=k.tilePixelRatio*ct,Ai=k.tilePixelRatio*Br.get("symbol-spacing"),Li=Br.get("text-padding")*k.tilePixelRatio,Ki=Br.get("icon-padding")*k.tilePixelRatio,kn=Br.get("text-max-angle")/180*Math.PI,Tn=Br.get("text-rotation-alignment")==="map"&&Br.get("symbol-placement")!=="point",lo=Br.get("icon-rotation-alignment")==="map"&&Br.get("symbol-placement")!=="point",qn=Br.get("symbol-placement"),to=Ai/2,ds=Br.get("icon-text-fit"),uo;oe&&ds!=="none"&&(k.allowVerticalPlacement&&V.vertical&&(uo=dv(oe,V.vertical,ds,Br.get("icon-text-fit-padding"),Rr,ii)),na&&(oe=dv(oe,na,ds,Br.get("icon-text-fit-padding"),Rr,ii)));var vo=function(H0,wd){wd.x<0||wd.x>=Ii||wd.y<0||wd.y>=Ii||uW(k,wd,H0,V,oe,_e,uo,k.layers[0],k.collisionBoxArray,C.index,C.sourceLayerIndex,k.index,Wa,Li,Tn,Lt,ci,Ki,lo,Rr,C,Pe,Nt,Xt,je)};if(qn==="line")for(var zs=0,cs=_C(C.geometry,0,0,Ii,Ii);zs<cs.length;zs+=1)for(var Tl=cs[zs],lu=eW(Tl,Ai,kn,V.vertical||na,oe,Ia,Si,k.overscaling,Ii),Al=0,Sl=lu;Al<Sl.length;Al+=1){var pl=Sl[Al],bu=na;(!bu||!cW(k,bu.text,to,pl))&&vo(Tl,pl)}else if(qn==="line-center")for(var Fu=0,Gc=C.geometry;Fu<Gc.length;Fu+=1){var of=Gc[Fu];if(of.length>1){var ih=QG(of,kn,V.vertical||na,oe,Ia,Si);ih&&vo(of,ih)}}else if(C.type==="Polygon")for(var Cf=0,Qh=E0(C.geometry,0);Cf<Qh.length;Cf+=1){var ep=Qh[Cf],nh=aW(ep,16);vo(ep[0],new $h(nh.x,nh.y,0))}else if(C.type==="LineString")for(var mp=0,gp=C.geometry;mp<gp.length;mp+=1){var jf=gp[mp];vo(jf,new $h(jf[0].x,jf[0].y,0))}else if(C.type==="Point")for(var yp=0,od=C.geometry;yp<od.length;yp+=1)for(var Uv=od[yp],ym=0,_m=Uv;ym<_m.length;ym+=1){var xm=_m[ym];vo([xm],new $h(xm.x,xm.y,0))}}var J1=255,mm=J1*Dh;function TC(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na){var Ia=tW(C,V,ct,_e,Pe,je,oe,k.allowVerticalPlacement),ii=k.textSizeData,Wa=null;ii.kind==="source"?(Wa=[Dh*_e.layout.get("text-size").evaluate(je,{})],Wa[0]>mm&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')):ii.kind==="composite"&&(Wa=[Dh*Rr.compositeTextSizes[0].evaluate(je,{},na),Dh*Rr.compositeTextSizes[1].evaluate(je,{},na)],(Wa[0]>mm||Wa[1]>mm)&&U(k.layerIds[0]+': Value for "text-size" is >= '+J1+'. Reduce your "text-size".')),k.addSymbols(k.text,Ia,Wa,ct,Pe,je,Nt,C,Lt.lineStartIndex,Lt.lineLength,Br,na);for(var Si=0,ci=Xt;Si<ci.length;Si+=1){var Ai=ci[Si];gr[Ai]=k.text.placedSymbolArray.length-1}return Ia.length*4}function AC(k){for(var C in k)return k[C];return null}function uW(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br,Rr,na,Ia,ii,Wa,Si,ci,Ai,Li,Ki,kn,Tn){var lo,qn=k.addToLineVertexArray(C,V),to,ds,uo,vo,zs=0,cs=0,Tl=0,lu=0,Al=-1,Sl=-1,pl={},bu=xe(""),Fu=0,Gc=0;if(ct._unevaluatedLayout.getValue("text-radial-offset")===void 0?(lo=ct.layout.get("text-offset").evaluate(Ai,{},kn).map(function(e_){return e_*Ei}),Fu=lo[0],Gc=lo[1]):(Fu=ct.layout.get("text-radial-offset").evaluate(Ai,{},kn)*Ei,Gc=hA),k.allowVerticalPlacement&&oe.vertical){var of=ct.layout.get("text-rotate").evaluate(Ai,{},kn),ih=of+90,Cf=oe.vertical;uo=new cb(Lt,C,Nt,Xt,gr,Cf,Br,Rr,na,ih),je&&(vo=new cb(Lt,C,Nt,Xt,gr,je,ii,Wa,na,ih))}if(_e){var Qh=ct.layout.get("icon-rotate").evaluate(Ai,{}),ep=ct.layout.get("icon-text-fit")!=="none",nh=xC(_e,Qh,Ki,ep),mp=je?xC(je,Qh,Ki,ep):void 0;ds=new cb(Lt,C,Nt,Xt,gr,_e,ii,Wa,!1,Qh),zs=nh.length*4;var gp=k.iconSizeData,jf=null;gp.kind==="source"?(jf=[Dh*ct.layout.get("icon-size").evaluate(Ai,{})],jf[0]>mm&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')):gp.kind==="composite"&&(jf=[Dh*Li.compositeIconSizes[0].evaluate(Ai,{},kn),Dh*Li.compositeIconSizes[1].evaluate(Ai,{},kn)],(jf[0]>mm||jf[1]>mm)&&U(k.layerIds[0]+': Value for "icon-size" is >= '+J1+'. Reduce your "icon-size".')),k.addSymbols(k.icon,nh,jf,ci,Si,Ai,!1,C,qn.lineStartIndex,qn.lineLength,-1,kn),Al=k.icon.placedSymbolArray.length-1,mp&&(cs=mp.length*4,k.addSymbols(k.icon,mp,jf,ci,Si,Ai,dp.vertical,C,qn.lineStartIndex,qn.lineLength,-1,kn),Sl=k.icon.placedSymbolArray.length-1)}for(var yp in oe.horizontal){var od=oe.horizontal[yp];if(!to){bu=xe(od.text);var Uv=ct.layout.get("text-rotate").evaluate(Ai,{},kn);to=new cb(Lt,C,Nt,Xt,gr,od,Br,Rr,na,Uv)}var ym=od.positionedLines.length===1;if(Tl+=TC(k,C,od,Pe,ct,na,Ai,Ia,qn,oe.vertical?dp.horizontal:dp.horizontalOnly,ym?Object.keys(oe.horizontal):[yp],pl,Al,Li,kn),ym)break}oe.vertical&&(lu+=TC(k,C,oe.vertical,Pe,ct,na,Ai,Ia,qn,dp.vertical,["vertical"],pl,Sl,Li,kn));var _m=to?to.boxStartIndex:k.collisionBoxArray.length,xm=to?to.boxEndIndex:k.collisionBoxArray.length,H0=uo?uo.boxStartIndex:k.collisionBoxArray.length,wd=uo?uo.boxEndIndex:k.collisionBoxArray.length,vb=ds?ds.boxStartIndex:k.collisionBoxArray.length,_A=ds?ds.boxEndIndex:k.collisionBoxArray.length,mb=vo?vo.boxStartIndex:k.collisionBoxArray.length,xA=vo?vo.boxEndIndex:k.collisionBoxArray.length,pd=-1,G0=function(e_,UC){return e_&&e_.circleDiameter?Math.max(e_.circleDiameter,UC):UC};pd=G0(to,pd),pd=G0(uo,pd),pd=G0(ds,pd),pd=G0(vo,pd);var gb=pd>-1?1:0;gb&&(pd*=Tn/Ei),k.glyphOffsetArray.length>=su.MAX_GLYPHS&&U("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),Ai.sortKey!==void 0&&k.addToSortKeyRanges(k.symbolInstances.length,Ai.sortKey),k.symbolInstances.emplaceBack(C.x,C.y,pl.right>=0?pl.right:-1,pl.center>=0?pl.center:-1,pl.left>=0?pl.left:-1,pl.vertical||-1,Al,Sl,bu,_m,xm,H0,wd,vb,_A,mb,xA,Nt,Tl,lu,zs,cs,gb,0,Br,Fu,Gc,pd)}function cW(k,C,V,oe){var _e=k.compareText;if(!(C in _e))_e[C]=[];else for(var Pe=_e[C],je=Pe.length-1;je>=0;je--)if(oe.dist(Pe[je])<V)return!0;return _e[C].push(oe),!1}var fW=Zd.VectorTileFeature.types,hW=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function fb(k,C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){var Rr=ct?Math.min(mm,Math.round(ct[0])):0,na=ct?Math.min(mm,Math.round(ct[1])):0;k.emplaceBack(C,V,Math.round(oe*32),Math.round(_e*32),Pe,je,(Rr<<1)+(Lt?1:0),na,Nt*16,Xt*16,gr*256,Br*256)}function dA(k,C,V){k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V),k.emplaceBack(C.x,C.y,V)}function pW(k){for(var C=0,V=k.sections;C<V.length;C+=1){var oe=V[C];if(Qa(oe.text))return!0}return!1}var U0=function(C){this.layoutVertexArray=new _o,this.indexArray=new jn,this.programConfigurations=C,this.segments=new Cs,this.dynamicLayoutVertexArray=new Zi,this.opacityVertexArray=new Ui,this.placedSymbolArray=new Ol};U0.prototype.isEmpty=function(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0},U0.prototype.upload=function(C,V,oe,_e){this.isEmpty()||(oe&&(this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,Ce.members),this.indexBuffer=C.createIndexBuffer(this.indexArray,V),this.dynamicLayoutVertexBuffer=C.createVertexBuffer(this.dynamicLayoutVertexArray,Ue.members,!0),this.opacityVertexBuffer=C.createVertexBuffer(this.opacityVertexArray,hW,!0),this.opacityVertexBuffer.itemSize=1),(oe||_e)&&this.programConfigurations.upload(C))},U0.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())},de("SymbolBuffers",U0);var $1=function(C,V,oe){this.layoutVertexArray=new C,this.layoutAttributes=V,this.indexArray=new oe,this.segments=new Cs,this.collisionVertexArray=new dn};$1.prototype.upload=function(C){this.layoutVertexBuffer=C.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=C.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=C.createVertexBuffer(this.collisionVertexArray,ut.members,!0)},$1.prototype.destroy=function(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())},de("CollisionBuffers",$1);var su=function(C){this.collisionBoxArray=C.collisionBoxArray,this.zoom=C.zoom,this.overscaling=C.overscaling,this.layers=C.layers,this.layerIds=this.layers.map(function(Lt){return Lt.id}),this.index=C.index,this.pixelRatio=C.pixelRatio,this.sourceLayerIndex=C.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=Pv([]),this.placementViewportMatrix=Pv([]);var V=this.layers[0],oe=V._unevaluatedLayout._values;this.textSizeData=nd(this.zoom,oe["text-size"]),this.iconSizeData=nd(this.zoom,oe["icon-size"]);var _e=this.layers[0].layout,Pe=_e.get("symbol-sort-key"),je=_e.get("symbol-z-order");this.canOverlap=_e.get("text-allow-overlap")||_e.get("icon-allow-overlap")||_e.get("text-ignore-placement")||_e.get("icon-ignore-placement"),this.sortFeaturesByKey=je!=="viewport-y"&&Pe.constantOr(1)!==void 0;var ct=je==="viewport-y"||je==="auto"&&!this.sortFeaturesByKey;this.sortFeaturesByY=ct&&this.canOverlap,_e.get("symbol-placement")==="point"&&(this.writingModes=_e.get("text-writing-mode").map(function(Lt){return dp[Lt]})),this.stateDependentLayerIds=this.layers.filter(function(Lt){return Lt.isStateDependent()}).map(function(Lt){return Lt.id}),this.sourceID=C.sourceID};su.prototype.createArrays=function(){this.text=new U0(new mi(this.layers,this.zoom,function(C){return/^text/.test(C)})),this.icon=new U0(new mi(this.layers,this.zoom,function(C){return/^icon/.test(C)})),this.glyphOffsetArray=new rf,this.lineVertexArray=new Yl,this.symbolInstances=new mc},su.prototype.calculateGlyphDependencies=function(C,V,oe,_e,Pe){for(var je=0;je<C.length;je++)if(V[C.charCodeAt(je)]=!0,(oe||_e)&&Pe){var ct=ei[C.charAt(je)];ct&&(V[ct.charCodeAt(0)]=!0)}},su.prototype.populate=function(C,V,oe){var _e=this.layers[0],Pe=_e.layout,je=Pe.get("text-font"),ct=Pe.get("text-field"),Lt=Pe.get("icon-image"),Nt=(ct.value.kind!=="constant"||ct.value.value instanceof Zl&&!ct.value.value.isEmpty()||ct.value.value.toString().length>0)&&(je.value.kind!=="constant"||je.value.value.length>0),Xt=Lt.value.kind!=="constant"||!!Lt.value.value||Object.keys(Lt.parameters).length>0,gr=Pe.get("symbol-sort-key");if(this.features=[],!(!Nt&&!Xt)){for(var Br=V.iconDependencies,Rr=V.glyphDependencies,na=V.availableImages,Ia=new Vi(this.zoom),ii=0,Wa=C;ii<Wa.length;ii+=1){var Si=Wa[ii],ci=Si.feature,Ai=Si.id,Li=Si.index,Ki=Si.sourceLayerIndex,kn=_e._featureFilter.needGeometry,Tn=ms(ci,kn);if(_e._featureFilter.filter(Ia,Tn,oe)){kn||(Tn.geometry=zn(ci));var lo=void 0;if(Nt){var qn=_e.getValueAndResolveTokens("text-field",Tn,oe,na),to=Zl.factory(qn);pW(to)&&(this.hasRTLText=!0),(!this.hasRTLText||No()==="unavailable"||this.hasRTLText&&Gs.isParsed())&&(lo=ja(to,_e,Tn))}var ds=void 0;if(Xt){var uo=_e.getValueAndResolveTokens("icon-image",Tn,oe,na);uo instanceof yl?ds=uo:ds=yl.fromString(uo)}if(!(!lo&&!ds)){var vo=this.sortFeaturesByKey?gr.evaluate(Tn,{},oe):void 0,zs={id:Ai,text:lo,icon:ds,index:Li,sourceLayerIndex:Ki,geometry:Tn.geometry,properties:ci.properties,type:fW[ci.type],sortKey:vo};if(this.features.push(zs),ds&&(Br[ds.name]=!0),lo){var cs=je.evaluate(Tn,{},oe).join(","),Tl=Pe.get("text-rotation-alignment")==="map"&&Pe.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(dp.vertical)>=0;for(var lu=0,Al=lo.sections;lu<Al.length;lu+=1){var Sl=Al[lu];if(Sl.image)Br[Sl.image.name]=!0;else{var pl=or(lo.toString()),bu=Sl.fontStack||cs,Fu=Rr[bu]=Rr[bu]||{};this.calculateGlyphDependencies(Sl.text,Fu,Tl,this.allowVerticalPlacement,pl)}}}}}}Pe.get("symbol-placement")==="line"&&(this.features=gi(this.features)),this.sortFeaturesByKey&&this.features.sort(function(Gc,of){return Gc.sortKey-of.sortKey})}},su.prototype.update=function(C,V,oe){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(C,V,this.layers,oe),this.icon.programConfigurations.updatePaintArrays(C,V,this.layers,oe))},su.prototype.isEmpty=function(){return this.symbolInstances.length===0&&!this.hasRTLText},su.prototype.uploadPending=function(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload},su.prototype.upload=function(C){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(C),this.iconCollisionBox.upload(C)),this.text.upload(C,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(C,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0},su.prototype.destroyDebugData=function(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()},su.prototype.destroy=function(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()},su.prototype.addToLineVertexArray=function(C,V){var oe=this.lineVertexArray.length;if(C.segment!==void 0){for(var _e=C.dist(V[C.segment+1]),Pe=C.dist(V[C.segment]),je={},ct=C.segment+1;ct<V.length;ct++)je[ct]={x:V[ct].x,y:V[ct].y,tileUnitDistanceFromAnchor:_e},ct<V.length-1&&(_e+=V[ct+1].dist(V[ct]));for(var Lt=C.segment||0;Lt>=0;Lt--)je[Lt]={x:V[Lt].x,y:V[Lt].y,tileUnitDistanceFromAnchor:Pe},Lt>0&&(Pe+=V[Lt-1].dist(V[Lt]));for(var Nt=0;Nt<V.length;Nt++){var Xt=je[Nt];this.lineVertexArray.emplaceBack(Xt.x,Xt.y,Xt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:oe,lineLength:this.lineVertexArray.length-oe}},su.prototype.addSymbols=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr,Br){for(var Rr=C.indexArray,na=C.layoutVertexArray,Ia=C.segments.prepareSegment(4*V.length,na,Rr,this.canOverlap?je.sortKey:void 0),ii=this.glyphOffsetArray.length,Wa=Ia.vertexLength,Si=this.allowVerticalPlacement&&ct===dp.vertical?Math.PI/2:0,ci=je.text&&je.text.sections,Ai=0;Ai<V.length;Ai++){var Li=V[Ai],Ki=Li.tl,kn=Li.tr,Tn=Li.bl,lo=Li.br,qn=Li.tex,to=Li.pixelOffsetTL,ds=Li.pixelOffsetBR,uo=Li.minFontScaleX,vo=Li.minFontScaleY,zs=Li.glyphOffset,cs=Li.isSDF,Tl=Li.sectionIndex,lu=Ia.vertexLength,Al=zs[1];fb(na,Lt.x,Lt.y,Ki.x,Al+Ki.y,qn.x,qn.y,oe,cs,to.x,to.y,uo,vo),fb(na,Lt.x,Lt.y,kn.x,Al+kn.y,qn.x+qn.w,qn.y,oe,cs,ds.x,to.y,uo,vo),fb(na,Lt.x,Lt.y,Tn.x,Al+Tn.y,qn.x,qn.y+qn.h,oe,cs,to.x,ds.y,uo,vo),fb(na,Lt.x,Lt.y,lo.x,Al+lo.y,qn.x+qn.w,qn.y+qn.h,oe,cs,ds.x,ds.y,uo,vo),dA(C.dynamicLayoutVertexArray,Lt,Si),Rr.emplaceBack(lu,lu+1,lu+2),Rr.emplaceBack(lu+1,lu+2,lu+3),Ia.vertexLength+=4,Ia.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(zs[0]),(Ai===V.length-1||Tl!==V[Ai+1].sectionIndex)&&C.programConfigurations.populatePaintArrays(na.length,je,je.index,{},Br,ci&&ci[Tl])}C.placedSymbolArray.emplaceBack(Lt.x,Lt.y,ii,this.glyphOffsetArray.length-ii,Wa,Nt,Xt,Lt.segment,oe?oe[0]:0,oe?oe[1]:0,_e[0],_e[1],ct,0,!1,0,gr)},su.prototype._addCollisionDebugVertex=function(C,V,oe,_e,Pe,je){return V.emplaceBack(0,0),C.emplaceBack(oe.x,oe.y,_e,Pe,Math.round(je.x),Math.round(je.y))},su.prototype.addCollisionDebugVertices=function(C,V,oe,_e,Pe,je,ct){var Lt=Pe.segments.prepareSegment(4,Pe.layoutVertexArray,Pe.indexArray),Nt=Lt.vertexLength,Xt=Pe.layoutVertexArray,gr=Pe.collisionVertexArray,Br=ct.anchorX,Rr=ct.anchorY;this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(C,V)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(oe,V)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(oe,_e)),this._addCollisionDebugVertex(Xt,gr,je,Br,Rr,new i(C,_e)),Lt.vertexLength+=4;var na=Pe.indexArray;na.emplaceBack(Nt,Nt+1),na.emplaceBack(Nt+1,Nt+2),na.emplaceBack(Nt+2,Nt+3),na.emplaceBack(Nt+3,Nt),Lt.primitiveLength+=4},su.prototype.addDebugCollisionBoxes=function(C,V,oe,_e){for(var Pe=C;Pe<V;Pe++){var je=this.collisionBoxArray.get(Pe),ct=je.x1,Lt=je.y1,Nt=je.x2,Xt=je.y2;this.addCollisionDebugVertices(ct,Lt,Nt,Xt,_e?this.textCollisionBox:this.iconCollisionBox,je.anchorPoint,oe)}},su.prototype.generateCollisionDebugBuffers=function(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new $1(Rn,Ft.members,os),this.iconCollisionBox=new $1(Rn,Ft.members,os);for(var C=0;C<this.symbolInstances.length;C++){var V=this.symbolInstances.get(C);this.addDebugCollisionBoxes(V.textBoxStartIndex,V.textBoxEndIndex,V,!0),this.addDebugCollisionBoxes(V.verticalTextBoxStartIndex,V.verticalTextBoxEndIndex,V,!0),this.addDebugCollisionBoxes(V.iconBoxStartIndex,V.iconBoxEndIndex,V,!1),this.addDebugCollisionBoxes(V.verticalIconBoxStartIndex,V.verticalIconBoxEndIndex,V,!1)}},su.prototype._deserializeCollisionBoxesForSymbol=function(C,V,oe,_e,Pe,je,ct,Lt,Nt){for(var Xt={},gr=V;gr<oe;gr++){var Br=C.get(gr);Xt.textBox={x1:Br.x1,y1:Br.y1,x2:Br.x2,y2:Br.y2,anchorPointX:Br.anchorPointX,anchorPointY:Br.anchorPointY},Xt.textFeatureIndex=Br.featureIndex;break}for(var Rr=_e;Rr<Pe;Rr++){var na=C.get(Rr);Xt.verticalTextBox={x1:na.x1,y1:na.y1,x2:na.x2,y2:na.y2,anchorPointX:na.anchorPointX,anchorPointY:na.anchorPointY},Xt.verticalTextFeatureIndex=na.featureIndex;break}for(var Ia=je;Ia<ct;Ia++){var ii=C.get(Ia);Xt.iconBox={x1:ii.x1,y1:ii.y1,x2:ii.x2,y2:ii.y2,anchorPointX:ii.anchorPointX,anchorPointY:ii.anchorPointY},Xt.iconFeatureIndex=ii.featureIndex;break}for(var Wa=Lt;Wa<Nt;Wa++){var Si=C.get(Wa);Xt.verticalIconBox={x1:Si.x1,y1:Si.y1,x2:Si.x2,y2:Si.y2,anchorPointX:Si.anchorPointX,anchorPointY:Si.anchorPointY},Xt.verticalIconFeatureIndex=Si.featureIndex;break}return Xt},su.prototype.deserializeCollisionBoxes=function(C){this.collisionArrays=[];for(var V=0;V<this.symbolInstances.length;V++){var oe=this.symbolInstances.get(V);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(C,oe.textBoxStartIndex,oe.textBoxEndIndex,oe.verticalTextBoxStartIndex,oe.verticalTextBoxEndIndex,oe.iconBoxStartIndex,oe.iconBoxEndIndex,oe.verticalIconBoxStartIndex,oe.verticalIconBoxEndIndex))}},su.prototype.hasTextData=function(){return this.text.segments.get().length>0},su.prototype.hasIconData=function(){return this.icon.segments.get().length>0},su.prototype.hasDebugData=function(){return this.textCollisionBox&&this.iconCollisionBox},su.prototype.hasTextCollisionBoxData=function(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0},su.prototype.hasIconCollisionBoxData=function(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0},su.prototype.addIndicesForPlacedSymbol=function(C,V){for(var oe=C.placedSymbolArray.get(V),_e=oe.vertexStartIndex+oe.numGlyphs*4,Pe=oe.vertexStartIndex;Pe<_e;Pe+=4)C.indexArray.emplaceBack(Pe,Pe+1,Pe+2),C.indexArray.emplaceBack(Pe+1,Pe+2,Pe+3)},su.prototype.getSortedSymbolIndexes=function(C){if(this.sortedAngle===C&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;for(var V=Math.sin(C),oe=Math.cos(C),_e=[],Pe=[],je=[],ct=0;ct<this.symbolInstances.length;++ct){je.push(ct);var Lt=this.symbolInstances.get(ct);_e.push(Math.round(V*Lt.anchorX+oe*Lt.anchorY)|0),Pe.push(Lt.featureIndex)}return je.sort(function(Nt,Xt){return _e[Nt]-_e[Xt]||Pe[Xt]-Pe[Nt]}),je},su.prototype.addToSortKeyRanges=function(C,V){var oe=this.sortKeyRanges[this.sortKeyRanges.length-1];oe&&oe.sortKey===V?oe.symbolInstanceEnd=C+1:this.sortKeyRanges.push({sortKey:V,symbolInstanceStart:C,symbolInstanceEnd:C+1})},su.prototype.sortFeatures=function(C){var V=this;if(this.sortFeaturesByY&&this.sortedAngle!==C&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(C),this.sortedAngle=C,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(var oe=0,_e=this.symbolInstanceIndexes;oe<_e.length;oe+=1){var Pe=_e[oe],je=this.symbolInstances.get(Pe);this.featureSortOrder.push(je.featureIndex),[je.rightJustifiedTextSymbolIndex,je.centerJustifiedTextSymbolIndex,je.leftJustifiedTextSymbolIndex].forEach(function(ct,Lt,Nt){ct>=0&&Nt.indexOf(ct)===Lt&&V.addIndicesForPlacedSymbol(V.text,ct)}),je.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,je.verticalPlacedTextSymbolIndex),je.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.placedIconSymbolIndex),je.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,je.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}},de("SymbolBucket",su,{omit:["layers","collisionBoxArray","features","compareText"]}),su.MAX_GLYPHS=65535,su.addDynamicAttributes=dA;function dW(k,C){return C.replace(/{([^{}]+)}/g,function(V,oe){return oe in k?String(k[oe]):""})}var vW=new xi({"symbol-placement":new Qt(fi.layout_symbol["symbol-placement"]),"symbol-spacing":new Qt(fi.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new Qt(fi.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new ra(fi.layout_symbol["symbol-sort-key"]),"symbol-z-order":new Qt(fi.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new Qt(fi.layout_symbol["icon-allow-overlap"]),"icon-ignore-placement":new Qt(fi.layout_symbol["icon-ignore-placement"]),"icon-optional":new Qt(fi.layout_symbol["icon-optional"]),"icon-rotation-alignment":new Qt(fi.layout_symbol["icon-rotation-alignment"]),"icon-size":new ra(fi.layout_symbol["icon-size"]),"icon-text-fit":new Qt(fi.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new Qt(fi.layout_symbol["icon-text-fit-padding"]),"icon-image":new ra(fi.layout_symbol["icon-image"]),"icon-rotate":new ra(fi.layout_symbol["icon-rotate"]),"icon-padding":new Qt(fi.layout_symbol["icon-padding"]),"icon-keep-upright":new Qt(fi.layout_symbol["icon-keep-upright"]),"icon-offset":new ra(fi.layout_symbol["icon-offset"]),"icon-anchor":new ra(fi.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new Qt(fi.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new Qt(fi.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new Qt(fi.layout_symbol["text-rotation-alignment"]),"text-field":new ra(fi.layout_symbol["text-field"]),"text-font":new ra(fi.layout_symbol["text-font"]),"text-size":new ra(fi.layout_symbol["text-size"]),"text-max-width":new ra(fi.layout_symbol["text-max-width"]),"text-line-height":new Qt(fi.layout_symbol["text-line-height"]),"text-letter-spacing":new ra(fi.layout_symbol["text-letter-spacing"]),"text-justify":new ra(fi.layout_symbol["text-justify"]),"text-radial-offset":new ra(fi.layout_symbol["text-radial-offset"]),"text-variable-anchor":new Qt(fi.layout_symbol["text-variable-anchor"]),"text-anchor":new ra(fi.layout_symbol["text-anchor"]),"text-max-angle":new Qt(fi.layout_symbol["text-max-angle"]),"text-writing-mode":new Qt(fi.layout_symbol["text-writing-mode"]),"text-rotate":new ra(fi.layout_symbol["text-rotate"]),"text-padding":new Qt(fi.layout_symbol["text-padding"]),"text-keep-upright":new Qt(fi.layout_symbol["text-keep-upright"]),"text-transform":new ra(fi.layout_symbol["text-transform"]),"text-offset":new ra(fi.layout_symbol["text-offset"]),"text-allow-overlap":new Qt(fi.layout_symbol["text-allow-overlap"]),"text-ignore-placement":new Qt(fi.layout_symbol["text-ignore-placement"]),"text-optional":new Qt(fi.layout_symbol["text-optional"])}),mW=new xi({"icon-opacity":new ra(fi.paint_symbol["icon-opacity"]),"icon-color":new ra(fi.paint_symbol["icon-color"]),"icon-halo-color":new ra(fi.paint_symbol["icon-halo-color"]),"icon-halo-width":new ra(fi.paint_symbol["icon-halo-width"]),"icon-halo-blur":new ra(fi.paint_symbol["icon-halo-blur"]),"icon-translate":new Qt(fi.paint_symbol["icon-translate"]),"icon-translate-anchor":new Qt(fi.paint_symbol["icon-translate-anchor"]),"text-opacity":new ra(fi.paint_symbol["text-opacity"]),"text-color":new ra(fi.paint_symbol["text-color"],{runtimeType:_s,getOverride:function(k){return k.textColor},hasOverride:function(k){return!!k.textColor}}),"text-halo-color":new ra(fi.paint_symbol["text-halo-color"]),"text-halo-width":new ra(fi.paint_symbol["text-halo-width"]),"text-halo-blur":new ra(fi.paint_symbol["text-halo-blur"]),"text-translate":new Qt(fi.paint_symbol["text-translate"]),"text-translate-anchor":new Qt(fi.paint_symbol["text-translate-anchor"])}),vA={paint:mW,layout:vW},j0=function(C){this.type=C.property.overrides?C.property.overrides.runtimeType:vl,this.defaultValue=C};j0.prototype.evaluate=function(C){if(C.formattedSection){var V=this.defaultValue.property.overrides;if(V&&V.hasOverride(C.formattedSection))return V.getOverride(C.formattedSection)}return C.feature&&C.featureState?this.defaultValue.evaluate(C.feature,C.featureState):this.defaultValue.property.specification.default},j0.prototype.eachChild=function(C){if(!this.defaultValue.isConstant()){var V=this.defaultValue.value;C(V._styleExpression.expression)}},j0.prototype.outputDefined=function(){return!1},j0.prototype.serialize=function(){return null},de("FormatSectionOverride",j0,{omit:["defaultValue"]});var gW=function(k){function C(V){k.call(this,V,vA)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.recalculate=function(oe,_e){if(k.prototype.recalculate.call(this,oe,_e),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["icon-rotation-alignment"]="map":this.layout._values["icon-rotation-alignment"]="viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout.get("symbol-placement")!=="point"?this.layout._values["text-rotation-alignment"]="map":this.layout._values["text-rotation-alignment"]="viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){var Pe=this.layout.get("text-writing-mode");if(Pe){for(var je=[],ct=0,Lt=Pe;ct<Lt.length;ct+=1){var Nt=Lt[ct];je.indexOf(Nt)<0&&je.push(Nt)}this.layout._values["text-writing-mode"]=je}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()},C.prototype.getValueAndResolveTokens=function(oe,_e,Pe,je){var ct=this.layout.get(oe).evaluate(_e,{},Pe,je),Lt=this._unevaluatedLayout._values[oe];return!Lt.isDataDriven()&&!ro(Lt.value)&&ct?dW(_e.properties,ct):ct},C.prototype.createBucket=function(oe){return new su(oe)},C.prototype.queryRadius=function(){return 0},C.prototype.queryIntersectsFeature=function(){return!1},C.prototype._setPaintOverrides=function(){for(var oe=0,_e=vA.paint.overridableProperties;oe<_e.length;oe+=1){var Pe=_e[oe];if(C.hasPaintOverride(this.layout,Pe)){var je=this.paint.get(Pe),ct=new j0(je),Lt=new Ac(ct,je.property.specification),Nt=null;je.value.kind==="constant"||je.value.kind==="source"?Nt=new Nc("source",Lt):Nt=new hc("composite",Lt,je.value.zoomStops,je.value._interpolationType),this.paint._values[Pe]=new Ll(je.property,Nt,je.parameters)}}},C.prototype._handleOverridablePaintPropertyUpdate=function(oe,_e,Pe){return!this.layout||_e.isDataDriven()||Pe.isDataDriven()?!1:C.hasPaintOverride(this.layout,oe)},C.hasPaintOverride=function(oe,_e){var Pe=oe.get("text-field"),je=vA.paint.properties[_e],ct=!1,Lt=function(gr){for(var Br=0,Rr=gr;Br<Rr.length;Br+=1){var na=Rr[Br];if(je.overrides&&je.overrides.hasOverride(na)){ct=!0;return}}};if(Pe.value.kind==="constant"&&Pe.value.value instanceof Zl)Lt(Pe.value.value.sections);else if(Pe.value.kind==="source"){var Nt=function(gr){if(!ct)if(gr instanceof Bs&&Zs(gr.value)===ml){var Br=gr.value;Lt(Br.sections)}else gr instanceof Yu?Lt(gr.sections):gr.eachChild(Nt)},Xt=Pe.value;Xt._styleExpression&&Nt(Xt._styleExpression.expression)}return ct},C}(Fi),yW=new xi({"background-color":new Qt(fi.paint_background["background-color"]),"background-pattern":new si(fi.paint_background["background-pattern"]),"background-opacity":new Qt(fi.paint_background["background-opacity"])}),_W={paint:yW},xW=function(k){function C(V){k.call(this,V,_W)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Fi),bW=new xi({"raster-opacity":new Qt(fi.paint_raster["raster-opacity"]),"raster-hue-rotate":new Qt(fi.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new Qt(fi.paint_raster["raster-brightness-min"]),"raster-brightness-max":new Qt(fi.paint_raster["raster-brightness-max"]),"raster-saturation":new Qt(fi.paint_raster["raster-saturation"]),"raster-contrast":new Qt(fi.paint_raster["raster-contrast"]),"raster-resampling":new Qt(fi.paint_raster["raster-resampling"]),"raster-fade-duration":new Qt(fi.paint_raster["raster-fade-duration"])}),wW={paint:bW},TW=function(k){function C(V){k.call(this,V,wW)}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C}(Fi);function AW(k){var C=[],V=k.id;return V===void 0&&C.push({message:"layers."+V+': missing required property "id"'}),k.render===void 0&&C.push({message:"layers."+V+': missing required method "render"'}),k.renderingMode&&k.renderingMode!=="2d"&&k.renderingMode!=="3d"&&C.push({message:"layers."+V+': property "renderingMode" must be either "2d" or "3d"'}),C}var SW=function(k){function C(V){k.call(this,V,{}),this.implementation=V}return k&&(C.__proto__=k),C.prototype=Object.create(k&&k.prototype),C.prototype.constructor=C,C.prototype.is3D=function(){return this.implementation.renderingMode==="3d"},C.prototype.hasOffscreenPass=function(){return this.implementation.prerender!==void 0},C.prototype.recalculate=function(){},C.prototype.updateTransitions=function(){},C.prototype.hasTransition=function(){},C.prototype.serialize=function(){},C.prototype.onAdd=function(oe){this.implementation.onAdd&&this.implementation.onAdd(oe,oe.painter.context.gl)},C.prototype.onRemove=function(oe){this.implementation.onRemove&&this.implementation.onRemove(oe,oe.painter.context.gl)},C}(Fi),MW={circle:WT,heatmap:w0,hillshade:Px,fill:Rg,"fill-extrusion":pv,line:D,symbol:gW,background:xW,raster:TW};function EW(k){return k.type==="custom"?new SW(k):new MW[k.type](k)}var SC=s.HTMLImageElement,MC=s.HTMLCanvasElement,EC=s.HTMLVideoElement,kC=s.ImageData,hb=s.ImageBitmap,Og=function(C,V,oe,_e){this.context=C,this.format=oe,this.texture=C.gl.createTexture(),this.update(V,_e)};Og.prototype.update=function(C,V,oe){var _e=C.width,Pe=C.height,je=(!this.size||this.size[0]!==_e||this.size[1]!==Pe)&&!oe,ct=this,Lt=ct.context,Nt=Lt.gl;if(this.useMipmap=!!(V&&V.useMipmap),Nt.bindTexture(Nt.TEXTURE_2D,this.texture),Lt.pixelStoreUnpackFlipY.set(!1),Lt.pixelStoreUnpack.set(1),Lt.pixelStoreUnpackPremultiplyAlpha.set(this.format===Nt.RGBA&&(!V||V.premultiply!==!1)),je)this.size=[_e,Pe],C instanceof SC||C instanceof MC||C instanceof EC||C instanceof kC||hb&&C instanceof hb?Nt.texImage2D(Nt.TEXTURE_2D,0,this.format,this.format,Nt.UNSIGNED_BYTE,C):Nt.texImage2D(Nt.TEXTURE_2D,0,this.format,_e,Pe,0,this.format,Nt.UNSIGNED_BYTE,C.data);else{var Xt=oe||{x:0,y:0},gr=Xt.x,Br=Xt.y;C instanceof SC||C instanceof MC||C instanceof EC||C instanceof kC||hb&&C instanceof hb?Nt.texSubImage2D(Nt.TEXTURE_2D,0,gr,Br,Nt.RGBA,Nt.UNSIGNED_BYTE,C):Nt.texSubImage2D(Nt.TEXTURE_2D,0,gr,Br,_e,Pe,Nt.RGBA,Nt.UNSIGNED_BYTE,C.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Nt.generateMipmap(Nt.TEXTURE_2D)},Og.prototype.bind=function(C,V,oe){var _e=this,Pe=_e.context,je=Pe.gl;je.bindTexture(je.TEXTURE_2D,this.texture),oe===je.LINEAR_MIPMAP_NEAREST&&!this.isSizePowerOfTwo()&&(oe=je.LINEAR),C!==this.filter&&(je.texParameteri(je.TEXTURE_2D,je.TEXTURE_MAG_FILTER,C),je.texParameteri(je.TEXTURE_2D,je.TEXTURE_MIN_FILTER,oe||C),this.filter=C),V!==this.wrap&&(je.texParameteri(je.TEXTURE_2D,je.TEXTURE_WRAP_S,V),je.texParameteri(je.TEXTURE_2D,je.TEXTURE_WRAP_T,V),this.wrap=V)},Og.prototype.isSizePowerOfTwo=function(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1===0},Og.prototype.destroy=function(){var C=this.context,V=C.gl;V.deleteTexture(this.texture),this.texture=null};var mA=function(C){var V=this;this._callback=C,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=function(){V._triggered=!1,V._callback()})};mA.prototype.trigger=function(){var C=this;this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(function(){C._triggered=!1,C._callback()},0))},mA.prototype.remove=function(){delete this._channel,this._callback=function(){}};var V0=function(C,V,oe){this.target=C,this.parent=V,this.mapId=oe,this.callbacks={},this.tasks={},this.taskQueue=[],this.cancelCallbacks={},L(["receive","process"],this),this.invoker=new mA(this.process),this.target.addEventListener("message",this.receive,!1),this.globalScope=se()?C:s};V0.prototype.send=function(C,V,oe,_e,Pe){var je=this;Pe===void 0&&(Pe=!1);var ct=Math.round(Math.random()*1e18).toString(36).substring(0,10);oe&&(this.callbacks[ct]=oe);var Lt=$(this.globalScope)?void 0:[];return this.target.postMessage({id:ct,type:C,hasCallback:!!oe,targetMapId:_e,mustQueue:Pe,sourceMapId:this.mapId,data:vt(V,Lt)},Lt),{cancel:function(){oe&&delete je.callbacks[ct],je.target.postMessage({id:ct,type:"<cancel>",targetMapId:_e,sourceMapId:je.mapId})}}},V0.prototype.receive=function(C){var V=C.data,oe=V.id;if(oe&&!(V.targetMapId&&this.mapId!==V.targetMapId))if(V.type==="<cancel>"){delete this.tasks[oe];var _e=this.cancelCallbacks[oe];delete this.cancelCallbacks[oe],_e&&_e()}else se()||V.mustQueue?(this.tasks[oe]=V,this.taskQueue.push(oe),this.invoker.trigger()):this.processTask(oe,V)},V0.prototype.process=function(){if(this.taskQueue.length){var C=this.taskQueue.shift(),V=this.tasks[C];delete this.tasks[C],this.taskQueue.length&&this.invoker.trigger(),V&&this.processTask(C,V)}},V0.prototype.processTask=function(C,V){var oe=this;if(V.type==="<response>"){var _e=this.callbacks[C];delete this.callbacks[C],_e&&(V.error?_e(wt(V.error)):_e(null,wt(V.data)))}else{var Pe=!1,je=$(this.globalScope)?void 0:[],ct=V.hasCallback?function(Br,Rr){Pe=!0,delete oe.cancelCallbacks[C],oe.target.postMessage({id:C,type:"<response>",sourceMapId:oe.mapId,error:Br?vt(Br):null,data:vt(Rr,je)},je)}:function(Br){Pe=!0},Lt=null,Nt=wt(V.data);if(this.parent[V.type])Lt=this.parent[V.type](V.sourceMapId,Nt,ct);else if(this.parent.getWorkerSource){var Xt=V.type.split("."),gr=this.parent.getWorkerSource(V.sourceMapId,Xt[0],Nt.source);Lt=gr[Xt[1]](Nt,ct)}else ct(new Error("Could not find function "+V.type));!Pe&&Lt&&Lt.cancel&&(this.cancelCallbacks[C]=Lt.cancel)}},V0.prototype.remove=function(){this.invoker.remove(),this.target.removeEventListener("message",this.receive,!1)};function kW(k,C,V){C=Math.pow(2,V)-C-1;var oe=CC(k*256,C*256,V),_e=CC((k+1)*256,(C+1)*256,V);return oe[0]+","+oe[1]+","+_e[0]+","+_e[1]}function CC(k,C,V){var oe=2*Math.PI*6378137/256/Math.pow(2,V),_e=k*oe-2*Math.PI*6378137/2,Pe=C*oe-2*Math.PI*6378137/2;return[_e,Pe]}var Ef=function(C,V){C&&(V?this.setSouthWest(C).setNorthEast(V):C.length===4?this.setSouthWest([C[0],C[1]]).setNorthEast([C[2],C[3]]):this.setSouthWest(C[0]).setNorthEast(C[1]))};Ef.prototype.setNorthEast=function(C){return this._ne=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.setSouthWest=function(C){return this._sw=C instanceof rc?new rc(C.lng,C.lat):rc.convert(C),this},Ef.prototype.extend=function(C){var V=this._sw,oe=this._ne,_e,Pe;if(C instanceof rc)_e=C,Pe=C;else if(C instanceof Ef){if(_e=C._sw,Pe=C._ne,!_e||!Pe)return this}else{if(Array.isArray(C))if(C.length===4||C.every(Array.isArray)){var je=C;return this.extend(Ef.convert(je))}else{var ct=C;return this.extend(rc.convert(ct))}return this}return!V&&!oe?(this._sw=new rc(_e.lng,_e.lat),this._ne=new rc(Pe.lng,Pe.lat)):(V.lng=Math.min(_e.lng,V.lng),V.lat=Math.min(_e.lat,V.lat),oe.lng=Math.max(Pe.lng,oe.lng),oe.lat=Math.max(Pe.lat,oe.lat)),this},Ef.prototype.getCenter=function(){return new rc((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)},Ef.prototype.getSouthWest=function(){return this._sw},Ef.prototype.getNorthEast=function(){return this._ne},Ef.prototype.getNorthWest=function(){return new rc(this.getWest(),this.getNorth())},Ef.prototype.getSouthEast=function(){return new rc(this.getEast(),this.getSouth())},Ef.prototype.getWest=function(){return this._sw.lng},Ef.prototype.getSouth=function(){return this._sw.lat},Ef.prototype.getEast=function(){return this._ne.lng},Ef.prototype.getNorth=function(){return this._ne.lat},Ef.prototype.toArray=function(){return[this._sw.toArray(),this._ne.toArray()]},Ef.prototype.toString=function(){return"LngLatBounds("+this._sw.toString()+", "+this._ne.toString()+")"},Ef.prototype.isEmpty=function(){return!(this._sw&&this._ne)},Ef.prototype.contains=function(C){var V=rc.convert(C),oe=V.lng,_e=V.lat,Pe=this._sw.lat<=_e&&_e<=this._ne.lat,je=this._sw.lng<=oe&&oe<=this._ne.lng;return this._sw.lng>this._ne.lng&&(je=this._sw.lng>=oe&&oe>=this._ne.lng),Pe&&je},Ef.convert=function(C){return!C||C instanceof Ef?C:new Ef(C)};var LC=63710088e-1,rc=function(C,V){if(isNaN(C)||isNaN(V))throw new Error("Invalid LngLat object: ("+C+", "+V+")");if(this.lng=+C,this.lat=+V,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")};rc.prototype.wrap=function(){return new rc(_(this.lng,-180,180),this.lat)},rc.prototype.toArray=function(){return[this.lng,this.lat]},rc.prototype.toString=function(){return"LngLat("+this.lng+", "+this.lat+")"},rc.prototype.distanceTo=function(C){var V=Math.PI/180,oe=this.lat*V,_e=C.lat*V,Pe=Math.sin(oe)*Math.sin(_e)+Math.cos(oe)*Math.cos(_e)*Math.cos((C.lng-this.lng)*V),je=LC*Math.acos(Math.min(Pe,1));return je},rc.prototype.toBounds=function(C){C===void 0&&(C=0);var V=40075017,oe=360*C/V,_e=oe/Math.cos(Math.PI/180*this.lat);return new Ef(new rc(this.lng-_e,this.lat-oe),new rc(this.lng+_e,this.lat+oe))},rc.convert=function(C){if(C instanceof rc)return C;if(Array.isArray(C)&&(C.length===2||C.length===3))return new rc(Number(C[0]),Number(C[1]));if(!Array.isArray(C)&&typeof C=="object"&&C!==null)return new rc(Number("lng"in C?C.lng:C.lon),Number(C.lat));throw new Error("`LngLatLike` argument 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 PC=2*Math.PI*LC;function IC(k){return PC*Math.cos(k*Math.PI/180)}function RC(k){return(180+k)/360}function DC(k){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+k*Math.PI/360)))/360}function zC(k,C){return k/IC(C)}function CW(k){return k*360-180}function gA(k){var C=180-k*360;return 360/Math.PI*Math.atan(Math.exp(C*Math.PI/180))-90}function LW(k,C){return k*IC(gA(C))}function PW(k){return 1/Math.cos(k*Math.PI/180)}var Bg=function(C,V,oe){oe===void 0&&(oe=0),this.x=+C,this.y=+V,this.z=+oe};Bg.fromLngLat=function(C,V){V===void 0&&(V=0);var oe=rc.convert(C);return new Bg(RC(oe.lng),DC(oe.lat),zC(V,oe.lat))},Bg.prototype.toLngLat=function(){return new rc(CW(this.x),gA(this.y))},Bg.prototype.toAltitude=function(){return LW(this.z,this.y)},Bg.prototype.meterInMercatorCoordinateUnits=function(){return 1/PC*PW(gA(this.y))};var Ng=function(C,V,oe){this.z=C,this.x=V,this.y=oe,this.key=Q1(0,C,C,V,oe)};Ng.prototype.equals=function(C){return this.z===C.z&&this.x===C.x&&this.y===C.y},Ng.prototype.url=function(C,V){var oe=kW(this.x,this.y,this.z),_e=IW(this.z,this.x,this.y);return C[(this.x+this.y)%C.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(V==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace("{quadkey}",_e).replace("{bbox-epsg-3857}",oe)},Ng.prototype.getTilePoint=function(C){var V=Math.pow(2,this.z);return new i((C.x*V-this.x)*Ii,(C.y*V-this.y)*Ii)},Ng.prototype.toString=function(){return this.z+"/"+this.x+"/"+this.y};var FC=function(C,V){this.wrap=C,this.canonical=V,this.key=Q1(C,V.z,V.z,V.x,V.y)},kf=function(C,V,oe,_e,Pe){this.overscaledZ=C,this.wrap=V,this.canonical=new Ng(oe,+_e,+Pe),this.key=Q1(V,C,oe,_e,Pe)};kf.prototype.equals=function(C){return this.overscaledZ===C.overscaledZ&&this.wrap===C.wrap&&this.canonical.equals(C.canonical)},kf.prototype.scaledTo=function(C){var V=this.canonical.z-C;return C>this.canonical.z?new kf(C,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new kf(C,this.wrap,C,this.canonical.x>>V,this.canonical.y>>V)},kf.prototype.calculateScaledKey=function(C,V){var oe=this.canonical.z-C;return C>this.canonical.z?Q1(this.wrap*+V,C,this.canonical.z,this.canonical.x,this.canonical.y):Q1(this.wrap*+V,C,C,this.canonical.x>>oe,this.canonical.y>>oe)},kf.prototype.isChildOf=function(C){if(C.wrap!==this.wrap)return!1;var V=this.canonical.z-C.canonical.z;return C.overscaledZ===0||C.overscaledZ<this.overscaledZ&&C.canonical.x===this.canonical.x>>V&&C.canonical.y===this.canonical.y>>V},kf.prototype.children=function(C){if(this.overscaledZ>=C)return[new kf(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];var V=this.canonical.z+1,oe=this.canonical.x*2,_e=this.canonical.y*2;return[new kf(V,this.wrap,V,oe,_e),new kf(V,this.wrap,V,oe+1,_e),new kf(V,this.wrap,V,oe,_e+1),new kf(V,this.wrap,V,oe+1,_e+1)]},kf.prototype.isLessThan=function(C){return this.wrap<C.wrap?!0:this.wrap>C.wrap?!1:this.overscaledZ<C.overscaledZ?!0:this.overscaledZ>C.overscaledZ?!1:this.canonical.x<C.canonical.x?!0:this.canonical.x>C.canonical.x?!1:this.canonical.y<C.canonical.y},kf.prototype.wrapped=function(){return new kf(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)},kf.prototype.unwrapTo=function(C){return new kf(this.overscaledZ,C,this.canonical.z,this.canonical.x,this.canonical.y)},kf.prototype.overscaleFactor=function(){return Math.pow(2,this.overscaledZ-this.canonical.z)},kf.prototype.toUnwrapped=function(){return new FC(this.wrap,this.canonical)},kf.prototype.toString=function(){return this.overscaledZ+"/"+this.canonical.x+"/"+this.canonical.y},kf.prototype.getTilePoint=function(C){return this.canonical.getTilePoint(new Bg(C.x-this.wrap,C.y))};function Q1(k,C,V,oe,_e){k*=2,k<0&&(k=k*-1-1);var Pe=1<<V;return(Pe*Pe*k+Pe*_e+oe).toString(36)+V.toString(36)+C.toString(36)}function IW(k,C,V){for(var oe="",_e,Pe=k;Pe>0;Pe--)_e=1<<Pe-1,oe+=(C&_e?1:0)+(V&_e?2:0);return oe}de("CanonicalTileID",Ng),de("OverscaledTileID",kf,{omit:["posMatrix"]});var Bv=function(C,V,oe){if(this.uid=C,V.height!==V.width)throw new RangeError("DEM tiles must be square");if(oe&&oe!=="mapbox"&&oe!=="terrarium")return U('"'+oe+'" is not a valid encoding type. Valid types include "mapbox" and "terrarium".');this.stride=V.height;var _e=this.dim=V.height-2;this.data=new Uint32Array(V.data.buffer),this.encoding=oe||"mapbox";for(var Pe=0;Pe<_e;Pe++)this.data[this._idx(-1,Pe)]=this.data[this._idx(0,Pe)],this.data[this._idx(_e,Pe)]=this.data[this._idx(_e-1,Pe)],this.data[this._idx(Pe,-1)]=this.data[this._idx(Pe,0)],this.data[this._idx(Pe,_e)]=this.data[this._idx(Pe,_e-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(_e,-1)]=this.data[this._idx(_e-1,0)],this.data[this._idx(-1,_e)]=this.data[this._idx(0,_e-1)],this.data[this._idx(_e,_e)]=this.data[this._idx(_e-1,_e-1)]};Bv.prototype.get=function(C,V){var oe=new Uint8Array(this.data.buffer),_e=this._idx(C,V)*4,Pe=this.encoding==="terrarium"?this._unpackTerrarium:this._unpackMapbox;return Pe(oe[_e],oe[_e+1],oe[_e+2])},Bv.prototype.getUnpackVector=function(){return this.encoding==="terrarium"?[256,1,1/256,32768]:[6553.6,25.6,.1,1e4]},Bv.prototype._idx=function(C,V){if(C<-1||C>=this.dim+1||V<-1||V>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(V+1)*this.stride+(C+1)},Bv.prototype._unpackMapbox=function(C,V,oe){return(C*256*256+V*256+oe)/10-1e4},Bv.prototype._unpackTerrarium=function(C,V,oe){return C*256+V+oe/256-32768},Bv.prototype.getPixels=function(){return new Of({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))},Bv.prototype.backfillBorder=function(C,V,oe){if(this.dim!==C.dim)throw new Error("dem dimension mismatch");var _e=V*this.dim,Pe=V*this.dim+this.dim,je=oe*this.dim,ct=oe*this.dim+this.dim;switch(V){case-1:_e=Pe-1;break;case 1:Pe=_e+1;break}switch(oe){case-1:je=ct-1;break;case 1:ct=je+1;break}for(var Lt=-V*this.dim,Nt=-oe*this.dim,Xt=je;Xt<ct;Xt++)for(var gr=_e;gr<Pe;gr++)this.data[this._idx(gr,Xt)]=C.data[this._idx(gr+Lt,Xt+Nt)]},de("DEMData",Bv);function RW(k,C){var V={};if(!C)return V;for(var oe=function(){var je=Pe[_e],ct=je.layerIds.map(function(gr){return C.getLayer(gr)}).filter(Boolean);if(ct.length!==0){je.layers=ct,je.stateDependentLayerIds&&(je.stateDependentLayers=je.stateDependentLayerIds.map(function(gr){return ct.filter(function(Br){return Br.id===gr})[0]}));for(var Lt=0,Nt=ct;Lt<Nt.length;Lt+=1){var Xt=Nt[Lt];V[Xt.id]=je}}},_e=0,Pe=k;_e<Pe.length;_e+=1)oe();return V}var pb=function(C){this._stringToNumber={},this._numberToString=[];for(var V=0;V<C.length;V++){var oe=C[V];this._stringToNumber[oe]=V,this._numberToString[V]=oe}};pb.prototype.encode=function(C){return this._stringToNumber[C]},pb.prototype.decode=function(C){return this._numberToString[C]};var db=function(C,V,oe,_e,Pe){this.type="Feature",this._vectorTileFeature=C,C._z=V,C._x=oe,C._y=_e,this.properties=C.properties,this.id=Pe},yA={geometry:{configurable:!0}};yA.geometry.get=function(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry},yA.geometry.set=function(k){this._geometry=k},db.prototype.toJSON=function(){var C={geometry:this.geometry};for(var V in this)V==="_geometry"||V==="_vectorTileFeature"||(C[V]=this[V]);return C},Object.defineProperties(db.prototype,yA);var q0=function(){this.state={},this.stateChanges={},this.deletedStates={}};q0.prototype.updateState=function(C,V,oe){var _e=String(V);if(this.stateChanges[C]=this.stateChanges[C]||{},this.stateChanges[C][_e]=this.stateChanges[C][_e]||{},m(this.stateChanges[C][_e],oe),this.deletedStates[C]===null){this.deletedStates[C]={};for(var Pe in this.state[C])Pe!==_e&&(this.deletedStates[C][Pe]=null)}else{var je=this.deletedStates[C]&&this.deletedStates[C][_e]===null;if(je){this.deletedStates[C][_e]={};for(var ct in this.state[C][_e])oe[ct]||(this.deletedStates[C][_e][ct]=null)}else for(var Lt in oe){var Nt=this.deletedStates[C]&&this.deletedStates[C][_e]&&this.deletedStates[C][_e][Lt]===null;Nt&&delete this.deletedStates[C][_e][Lt]}}},q0.prototype.removeFeatureState=function(C,V,oe){var _e=this.deletedStates[C]===null;if(!_e){var Pe=String(V);if(this.deletedStates[C]=this.deletedStates[C]||{},oe&&V!==void 0)this.deletedStates[C][Pe]!==null&&(this.deletedStates[C][Pe]=this.deletedStates[C][Pe]||{},this.deletedStates[C][Pe][oe]=null);else if(V!==void 0){var je=this.stateChanges[C]&&this.stateChanges[C][Pe];if(je){this.deletedStates[C][Pe]={};for(oe in this.stateChanges[C][Pe])this.deletedStates[C][Pe][oe]=null}else this.deletedStates[C][Pe]=null}else this.deletedStates[C]=null}},q0.prototype.getState=function(C,V){var oe=String(V),_e=this.state[C]||{},Pe=this.stateChanges[C]||{},je=m({},_e[oe],Pe[oe]);if(this.deletedStates[C]===null)return{};if(this.deletedStates[C]){var ct=this.deletedStates[C][V];if(ct===null)return{};for(var Lt in ct)delete je[Lt]}return je},q0.prototype.initializeTileState=function(C,V){C.setFeatureState(this.state,V)},q0.prototype.coalesceChanges=function(C,V){var oe={};for(var _e in this.stateChanges){this.state[_e]=this.state[_e]||{};var Pe={};for(var je in this.stateChanges[_e])this.state[_e][je]||(this.state[_e][je]={}),m(this.state[_e][je],this.stateChanges[_e][je]),Pe[je]=this.state[_e][je];oe[_e]=Pe}for(var ct in this.deletedStates){this.state[ct]=this.state[ct]||{};var Lt={};if(this.deletedStates[ct]===null)for(var Nt in this.state[ct])Lt[Nt]={},this.state[ct][Nt]={};else for(var Xt in this.deletedStates[ct]){var gr=this.deletedStates[ct][Xt]===null;if(gr)this.state[ct][Xt]={};else for(var Br=0,Rr=Object.keys(this.deletedStates[ct][Xt]);Br<Rr.length;Br+=1){var na=Rr[Br];delete this.state[ct][Xt][na]}Lt[Xt]=this.state[ct][Xt]}oe[ct]=oe[ct]||{},m(oe[ct],Lt)}if(this.stateChanges={},this.deletedStates={},Object.keys(oe).length!==0)for(var Ia in C){var ii=C[Ia];ii.setFeatureState(oe,V)}};var Nv=function(C,V){this.tileID=C,this.x=C.canonical.x,this.y=C.canonical.y,this.z=C.canonical.z,this.grid=new fu(Ii,16,0),this.grid3D=new fu(Ii,16,0),this.featureIndexArray=new Vc,this.promoteId=V};Nv.prototype.insert=function(C,V,oe,_e,Pe,je){var ct=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(oe,_e,Pe);for(var Lt=je?this.grid3D:this.grid,Nt=0;Nt<V.length;Nt++){for(var Xt=V[Nt],gr=[1/0,1/0,-1/0,-1/0],Br=0;Br<Xt.length;Br++){var Rr=Xt[Br];gr[0]=Math.min(gr[0],Rr.x),gr[1]=Math.min(gr[1],Rr.y),gr[2]=Math.max(gr[2],Rr.x),gr[3]=Math.max(gr[3],Rr.y)}gr[0]<Ii&&gr[1]<Ii&&gr[2]>=0&&gr[3]>=0&&Lt.insert(ct,gr[0],gr[1],gr[2],gr[3])}},Nv.prototype.loadVTLayers=function(){return this.vtLayers||(this.vtLayers=new Zd.VectorTile(new eo(this.rawTileData)).layers,this.sourceLayerCoder=new pb(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers},Nv.prototype.query=function(C,V,oe,_e){var Pe=this;this.loadVTLayers();for(var je=C.params||{},ct=Ii/C.tileSize/C.scale,Lt=Je(je.filter),Nt=C.queryGeometry,Xt=C.queryPadding*ct,gr=BC(Nt),Br=this.grid.query(gr.minX-Xt,gr.minY-Xt,gr.maxX+Xt,gr.maxY+Xt),Rr=BC(C.cameraQueryGeometry),na=this.grid3D.query(Rr.minX-Xt,Rr.minY-Xt,Rr.maxX+Xt,Rr.maxY+Xt,function(Ki,kn,Tn,lo){return rd(C.cameraQueryGeometry,Ki-Xt,kn-Xt,Tn+Xt,lo+Xt)}),Ia=0,ii=na;Ia<ii.length;Ia+=1){var Wa=ii[Ia];Br.push(Wa)}Br.sort(DW);for(var Si={},ci,Ai=function(Ki){var kn=Br[Ki];if(kn!==ci){ci=kn;var Tn=Pe.featureIndexArray.get(kn),lo=null;Pe.loadMatchingFeature(Si,Tn.bucketIndex,Tn.sourceLayerIndex,Tn.featureIndex,Lt,je.layers,je.availableImages,V,oe,_e,function(qn,to,ds){return lo||(lo=zn(qn)),to.queryIntersectsFeature(Nt,qn,ds,lo,Pe.z,C.transform,ct,C.pixelPosMatrix)})}},Li=0;Li<Br.length;Li++)Ai(Li);return Si},Nv.prototype.loadMatchingFeature=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt,gr){var Br=this.bucketLayerIDs[V];if(!(je&&!I(je,Br))){var Rr=this.sourceLayerCoder.decode(oe),na=this.vtLayers[Rr],Ia=na.feature(_e);if(Pe.needGeometry){var ii=ms(Ia,!0);if(!Pe.filter(new Vi(this.tileID.overscaledZ),ii,this.tileID.canonical))return}else if(!Pe.filter(new Vi(this.tileID.overscaledZ),Ia))return;for(var Wa=this.getId(Ia,Rr),Si=0;Si<Br.length;Si++){var ci=Br[Si];if(!(je&&je.indexOf(ci)<0)){var Ai=Lt[ci];if(Ai){var Li={};Wa!==void 0&&Xt&&(Li=Xt.getState(Ai.sourceLayer||"_geojsonTileLayer",Wa));var Ki=m({},Nt[ci]);Ki.paint=OC(Ki.paint,Ai.paint,Ia,Li,ct),Ki.layout=OC(Ki.layout,Ai.layout,Ia,Li,ct);var kn=!gr||gr(Ia,Ai,Li);if(kn){var Tn=new db(Ia,this.z,this.x,this.y,Wa);Tn.layer=Ki;var lo=C[ci];lo===void 0&&(lo=C[ci]=[]),lo.push({featureIndex:_e,feature:Tn,intersectionZ:kn})}}}}}},Nv.prototype.lookupSymbolFeatures=function(C,V,oe,_e,Pe,je,ct,Lt){var Nt={};this.loadVTLayers();for(var Xt=Je(Pe),gr=0,Br=C;gr<Br.length;gr+=1){var Rr=Br[gr];this.loadMatchingFeature(Nt,oe,_e,Rr,Xt,je,ct,Lt,V)}return Nt},Nv.prototype.hasLayer=function(C){for(var V=0,oe=this.bucketLayerIDs;V<oe.length;V+=1)for(var _e=oe[V],Pe=0,je=_e;Pe<je.length;Pe+=1){var ct=je[Pe];if(C===ct)return!0}return!1},Nv.prototype.getId=function(C,V){var oe=C.id;if(this.promoteId){var _e=typeof this.promoteId=="string"?this.promoteId:this.promoteId[V];oe=C.properties[_e],typeof oe=="boolean"&&(oe=Number(oe))}return oe},de("FeatureIndex",Nv,{omit:["rawTileData","sourceLayerCoder"]});function OC(k,C,V,oe,_e){return F(k,function(Pe,je){var ct=C instanceof dc?C.get(je):null;return ct&&ct.evaluate?ct.evaluate(V,oe,_e):ct})}function BC(k){for(var C=1/0,V=1/0,oe=-1/0,_e=-1/0,Pe=0,je=k;Pe<je.length;Pe+=1){var ct=je[Pe];C=Math.min(C,ct.x),V=Math.min(V,ct.y),oe=Math.max(oe,ct.x),_e=Math.max(_e,ct.y)}return{minX:C,minY:V,maxX:oe,maxY:_e}}function DW(k,C){return C-k}var zW=3e4,ah=function(C,V){this.tileID=C,this.uid=u(),this.uses=0,this.tileSize=V,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.expiredRequestCount=0,this.state="loading"};ah.prototype.registerFadeDuration=function(C){var V=C+this.timeAdded;V<be.now()||this.fadeEndTime&&V<this.fadeEndTime||(this.fadeEndTime=V)},ah.prototype.wasRequested=function(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"},ah.prototype.loadVectorData=function(C,V,oe){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",!C){this.collisionBoxArray=new Ws;return}C.featureIndex&&(this.latestFeatureIndex=C.featureIndex,C.rawTileData?(this.latestRawTileData=C.rawTileData,this.latestFeatureIndex.rawTileData=C.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=C.collisionBoxArray,this.buckets=RW(C.buckets,V.style),this.hasSymbolBuckets=!1;for(var _e in this.buckets){var Pe=this.buckets[_e];if(Pe instanceof su)if(this.hasSymbolBuckets=!0,oe)Pe.justReloaded=!0;else break}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(var je in this.buckets){var ct=this.buckets[je];if(ct instanceof su&&ct.hasRTLText){this.hasRTLText=!0,sl();break}}this.queryPadding=0;for(var Lt in this.buckets){var Nt=this.buckets[Lt];this.queryPadding=Math.max(this.queryPadding,V.style.getLayer(Lt).queryRadius(Nt))}C.imageAtlas&&(this.imageAtlas=C.imageAtlas),C.glyphAtlasImage&&(this.glyphAtlasImage=C.glyphAtlasImage)},ah.prototype.unloadVectorData=function(){for(var C in this.buckets)this.buckets[C].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"},ah.prototype.getBucket=function(C){return this.buckets[C.id]},ah.prototype.upload=function(C){for(var V in this.buckets){var oe=this.buckets[V];oe.uploadPending()&&oe.upload(C)}var _e=C.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new Og(C,this.imageAtlas.image,_e.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new Og(C,this.glyphAtlasImage,_e.ALPHA),this.glyphAtlasImage=null)},ah.prototype.prepare=function(C){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(C,this.imageAtlasTexture)},ah.prototype.queryRenderedFeatures=function(C,V,oe,_e,Pe,je,ct,Lt,Nt,Xt){return!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData?{}:this.latestFeatureIndex.query({queryGeometry:_e,cameraQueryGeometry:Pe,scale:je,tileSize:this.tileSize,pixelPosMatrix:Xt,transform:Lt,params:ct,queryPadding:this.queryPadding*Nt},C,V,oe)},ah.prototype.querySourceFeatures=function(C,V){var oe=this.latestFeatureIndex;if(!(!oe||!oe.rawTileData)){var _e=oe.loadVTLayers(),Pe=V?V.sourceLayer:"",je=_e._geojsonTileLayer||_e[Pe];if(je)for(var ct=Je(V&&V.filter),Lt=this.tileID.canonical,Nt=Lt.z,Xt=Lt.x,gr=Lt.y,Br={z:Nt,x:Xt,y:gr},Rr=0;Rr<je.length;Rr++){var na=je.feature(Rr);if(ct.needGeometry){var Ia=ms(na,!0);if(!ct.filter(new Vi(this.tileID.overscaledZ),Ia,this.tileID.canonical))continue}else if(!ct.filter(new Vi(this.tileID.overscaledZ),na))continue;var ii=oe.getId(na,Pe),Wa=new db(na,Nt,Xt,gr,ii);Wa.tile=Br,C.push(Wa)}}},ah.prototype.hasData=function(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"},ah.prototype.patternsLoaded=function(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length},ah.prototype.setExpiryData=function(C){var V=this.expirationTime;if(C.cacheControl){var oe=he(C.cacheControl);oe["max-age"]&&(this.expirationTime=Date.now()+oe["max-age"]*1e3)}else C.expires&&(this.expirationTime=new Date(C.expires).getTime());if(this.expirationTime){var _e=Date.now(),Pe=!1;if(this.expirationTime>_e)Pe=!1;else if(!V)Pe=!0;else if(this.expirationTime<V)Pe=!0;else{var je=this.expirationTime-V;je?this.expirationTime=_e+Math.max(je,zW):Pe=!0}Pe?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}},ah.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)},ah.prototype.setFeatureState=function(C,V){if(!(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(C).length===0)){var oe=this.latestFeatureIndex.loadVTLayers();for(var _e in this.buckets)if(V.style.hasLayer(_e)){var Pe=this.buckets[_e],je=Pe.layers[0].sourceLayer||"_geojsonTileLayer",ct=oe[je],Lt=C[je];if(!(!ct||!Lt||Object.keys(Lt).length===0)){Pe.update(Lt,ct,this.imageAtlas&&this.imageAtlas.patternPositions||{});var Nt=V&&V.style&&V.style.getLayer(_e);Nt&&(this.queryPadding=Math.max(this.queryPadding,Nt.queryRadius(Pe)))}}}},ah.prototype.holdingForFade=function(){return this.symbolFadeHoldUntil!==void 0},ah.prototype.symbolFadeFinished=function(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<be.now()},ah.prototype.clearFadeHold=function(){this.symbolFadeHoldUntil=void 0},ah.prototype.setHoldDuration=function(C){this.symbolFadeHoldUntil=be.now()+C},ah.prototype.setDependencies=function(C,V){for(var oe={},_e=0,Pe=V;_e<Pe.length;_e+=1){var je=Pe[_e];oe[je]=!0}this.dependencies[C]=oe},ah.prototype.hasDependency=function(C,V){for(var oe=0,_e=C;oe<_e.length;oe+=1){var Pe=_e[oe],je=this.dependencies[Pe];if(je)for(var ct=0,Lt=V;ct<Lt.length;ct+=1){var Nt=Lt[ct];if(je[Nt])return!0}}return!1};var FW=["type","source","source-layer","minzoom","maxzoom","filter","layout"],gm=s.performance,NC=function(C){this._marks={start:[C.url,"start"].join("#"),end:[C.url,"end"].join("#"),measure:C.url.toString()},gm.mark(this._marks.start)};NC.prototype.finish=function(){gm.mark(this._marks.end);var C=gm.getEntriesByName(this._marks.measure);return C.length===0&&(gm.measure(this._marks.measure,this._marks.start,this._marks.end),C=gm.getEntriesByName(this._marks.measure),gm.clearMarks(this._marks.start),gm.clearMarks(this._marks.end),gm.clearMeasures(this._marks.measure)),C},e.Actor=V0,e.AlphaImage=Cp,e.CanonicalTileID=Ng,e.CollisionBoxArray=Ws,e.Color=Rs,e.DEMData=Bv,e.DataConstantProperty=Qt,e.DictionaryCoder=pb,e.EXTENT=Ii,e.ErrorEvent=Fr,e.EvaluationParameters=Vi,e.Event=Mr,e.Evented=Lr,e.FeatureIndex=Nv,e.FillBucket=ad,e.FillExtrusionBucket=fd,e.ImageAtlas=Xd,e.ImagePosition=gf,e.LineBucket=Mf,e.LngLat=rc,e.LngLatBounds=Ef,e.MercatorCoordinate=Bg,e.ONE_EM=Ei,e.OverscaledTileID=kf,e.Point=i,e.Point$1=i,e.Properties=xi,e.Protobuf=eo,e.RGBAImage=Of,e.RequestManager=ce,e.RequestPerformance=NC,e.ResourceType=Ua,e.SegmentVector=Cs,e.SourceFeatureState=q0,e.StructArrayLayout1ui2=As,e.StructArrayLayout2f1f2i16=xn,e.StructArrayLayout2i4=Mi,e.StructArrayLayout3ui6=jn,e.StructArrayLayout4i8=tn,e.SymbolBucket=su,e.Texture=Og,e.Tile=ah,e.Transitionable=hs,e.Uniform1f=tr,e.Uniform1i=qt,e.Uniform2f=dr,e.Uniform3f=Pr,e.Uniform4f=Vr,e.UniformColor=Hr,e.UniformMatrix4f=Qr,e.UnwrappedTileID=FC,e.ValidationError=mn,e.WritingMode=dp,e.ZoomHistory=Jt,e.add=kp,e.addDynamicAttributes=dA,e.asyncAll=w,e.bezier=p,e.bindAll=L,e.browser=be,e.cacheEntryPossiblyAdded=sa,e.clamp=l,e.clearTileCache=La,e.clipLine=_C,e.clone=nm,e.clone$1=O,e.clone$2=y0,e.collisionCircleLayout=$t,e.config=Ae,e.create=im,e.create$1=eh,e.create$2=Hd,e.createCommonjsModule=t,e.createExpression=Po,e.createLayout=on,e.createStyleLayer=EW,e.cross=UT,e.deepEqual=c,e.dot=NT,e.dot$1=GT,e.ease=T,e.emitValidationErrors=qu,e.endsWith=z,e.enforceCacheSizeLimit=Aa,e.evaluateSizeForFeature=hC,e.evaluateSizeForZoom=pC,e.evaluateVariableOffset=wC,e.evented=Vn,e.extend=m,e.featureFilter=Je,e.filterObject=B,e.fromRotation=iv,e.getAnchorAlignment=K1,e.getAnchorJustification=pA,e.getArrayBuffer=pa,e.getImage=Er,e.getJSON=Zr,e.getRTLTextPluginStatus=No,e.getReferrer=Wt,e.getVideo=kr,e.identity=Pv,e.invert=nv,e.isChar=Rt,e.isMapboxURL=ze,e.keysDifference=E,e.makeRequest=xr,e.mapObject=F,e.mercatorXfromLng=RC,e.mercatorYfromLat=DC,e.mercatorZfromAltitude=zC,e.mul=xg,e.multiply=ov,e.mvt=Zd,e.nextPowerOfTwo=f,e.normalize=bg,e.number=xl,e.offscreenCanvasSupported=Ma,e.ortho=Ql,e.parseGlyphPBF=_d,e.pbf=eo,e.performSymbolLayout=sW,e.perspective=om,e.pick=b,e.plugin=Gs,e.polygonIntersectsPolygon=qo,e.postMapLoadEvent=Ne,e.postTurnstileEvent=Fe,e.potpack=Wp,e.refProperties=FW,e.register=de,e.registerForPluginStateChange=Gn,e.renderColorRamp=Ag,e.rotate=Lv,e.rotateX=Lh,e.rotateZ=Iv,e.scale=Bl,e.scale$1=HT,e.scale$2=_0,e.setCacheLimits=ka,e.setRTLTextPlugin=Fo,e.sphericalToCartesian=ue,e.sqrLen=L1,e.styleSpec=fi,e.sub=VT,e.symbolSize=$G,e.transformMat3=jT,e.transformMat4=Rv,e.translate=Du,e.triggerPluginCompletionEvent=hn,e.uniqueId=u,e.validateCustomStyleLayer=AW,e.validateLight=Go,e.validateStyle=Zo,e.values=S,e.vectorTile=Zd,e.version=r,e.warnOnce=U,e.webpSupported=Be,e.window=s,e.wrap=_}),M(["./shared"],function(e){"use strict";function t(Wt){var zt=typeof Wt;if(zt==="number"||zt==="boolean"||zt==="string"||Wt===void 0||Wt===null)return JSON.stringify(Wt);if(Array.isArray(Wt)){for(var Vt="[",Ut=0,xr=Wt;Ut<xr.length;Ut+=1){var Zr=xr[Ut];Vt+=t(Zr)+","}return Vt+"]"}for(var pa=Object.keys(Wt).sort(),Xr="{",Ea=0;Ea<pa.length;Ea++)Xr+=JSON.stringify(pa[Ea])+":"+t(Wt[pa[Ea]])+",";return Xr+"}"}function r(Wt){for(var zt="",Vt=0,Ut=e.refProperties;Vt<Ut.length;Vt+=1){var xr=Ut[Vt];zt+="/"+t(Wt[xr])}return zt}function o(Wt,zt){for(var Vt={},Ut=0;Ut<Wt.length;Ut++){var xr=zt&&zt[Wt[Ut].id]||r(Wt[Ut]);zt&&(zt[Wt[Ut].id]=xr);var Zr=Vt[xr];Zr||(Zr=Vt[xr]=[]),Zr.push(Wt[Ut])}var pa=[];for(var Xr in Vt)pa.push(Vt[Xr]);return pa}var a=function(zt){this.keyCache={},zt&&this.replace(zt)};a.prototype.replace=function(zt){this._layerConfigs={},this._layers={},this.update(zt,[])},a.prototype.update=function(zt,Vt){for(var Ut=this,xr=0,Zr=zt;xr<Zr.length;xr+=1){var pa=Zr[xr];this._layerConfigs[pa.id]=pa;var Xr=this._layers[pa.id]=e.createStyleLayer(pa);Xr._featureFilter=e.featureFilter(Xr.filter),this.keyCache[pa.id]&&delete this.keyCache[pa.id]}for(var Ea=0,Fa=Vt;Ea<Fa.length;Ea+=1){var qa=Fa[Ea];delete this.keyCache[qa],delete this._layerConfigs[qa],delete this._layers[qa]}this.familiesBySource={};for(var ya=o(e.values(this._layerConfigs),this.keyCache),$a=0,mt=ya;$a<mt.length;$a+=1){var gt=mt[$a],Er=gt.map(function(Lr){return Ut._layers[Lr.id]}),kr=Er[0];if(kr.visibility!=="none"){var br=kr.source||"",Tr=this.familiesBySource[br];Tr||(Tr=this.familiesBySource[br]={});var Mr=kr.sourceLayer||"_geojsonTileLayer",Fr=Tr[Mr];Fr||(Fr=Tr[Mr]=[]),Fr.push(Er)}}};var i=1,n=function(zt){var Vt={},Ut=[];for(var xr in zt){var Zr=zt[xr],pa=Vt[xr]={};for(var Xr in Zr){var Ea=Zr[+Xr];if(!(!Ea||Ea.bitmap.width===0||Ea.bitmap.height===0)){var Fa={x:0,y:0,w:Ea.bitmap.width+2*i,h:Ea.bitmap.height+2*i};Ut.push(Fa),pa[Xr]={rect:Fa,metrics:Ea.metrics}}}}var qa=e.potpack(Ut),ya=qa.w,$a=qa.h,mt=new e.AlphaImage({width:ya||1,height:$a||1});for(var gt in zt){var Er=zt[gt];for(var kr in Er){var br=Er[+kr];if(!(!br||br.bitmap.width===0||br.bitmap.height===0)){var Tr=Vt[gt][kr].rect;e.AlphaImage.copy(br.bitmap,mt,{x:0,y:0},{x:Tr.x+i,y:Tr.y+i},br.bitmap)}}}this.image=mt,this.positions=Vt};e.register("GlyphAtlas",n);var s=function(zt){this.tileID=new e.OverscaledTileID(zt.tileID.overscaledZ,zt.tileID.wrap,zt.tileID.canonical.z,zt.tileID.canonical.x,zt.tileID.canonical.y),this.uid=zt.uid,this.zoom=zt.zoom,this.pixelRatio=zt.pixelRatio,this.tileSize=zt.tileSize,this.source=zt.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=zt.showCollisionBoxes,this.collectResourceTiming=!!zt.collectResourceTiming,this.returnDependencies=!!zt.returnDependencies,this.promoteId=zt.promoteId};s.prototype.parse=function(zt,Vt,Ut,xr,Zr){var pa=this;this.status="parsing",this.data=zt,this.collisionBoxArray=new e.CollisionBoxArray;var Xr=new e.DictionaryCoder(Object.keys(zt.layers).sort()),Ea=new e.FeatureIndex(this.tileID,this.promoteId);Ea.bucketLayerIDs=[];var Fa={},qa={featureIndex:Ea,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ut},ya=Vt.familiesBySource[this.source];for(var $a in ya){var mt=zt.layers[$a];if(mt){mt.version===1&&e.warnOnce('Vector tile source "'+this.source+'" layer "'+$a+'" does not use vector tile spec v2 and therefore may have some rendering errors.');for(var gt=Xr.encode($a),Er=[],kr=0;kr<mt.length;kr++){var br=mt.feature(kr),Tr=Ea.getId(br,$a);Er.push({feature:br,id:Tr,index:kr,sourceLayerIndex:gt})}for(var Mr=0,Fr=ya[$a];Mr<Fr.length;Mr+=1){var Lr=Fr[Mr],Jr=Lr[0];if(!(Jr.minzoom&&this.zoom<Math.floor(Jr.minzoom))&&!(Jr.maxzoom&&this.zoom>=Jr.maxzoom)&&Jr.visibility!=="none"){c(Lr,this.zoom,Ut);var oa=Fa[Jr.id]=Jr.createBucket({index:Ea.bucketLayerIDs.length,layers:Lr,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:gt,sourceID:this.source});oa.populate(Er,qa,this.tileID.canonical),Ea.bucketLayerIDs.push(Lr.map(function(da){return da.id}))}}}}var ca,kt,ir,mr,$r=e.mapObject(qa.glyphDependencies,function(da){return Object.keys(da).map(Number)});Object.keys($r).length?xr.send("getGlyphs",{uid:this.uid,stacks:$r},function(da,Sa){ca||(ca=da,kt=Sa,Ca.call(pa))}):kt={};var ma=Object.keys(qa.iconDependencies);ma.length?xr.send("getImages",{icons:ma,source:this.source,tileID:this.tileID,type:"icons"},function(da,Sa){ca||(ca=da,ir=Sa,Ca.call(pa))}):ir={};var Ba=Object.keys(qa.patternDependencies);Ba.length?xr.send("getImages",{icons:Ba,source:this.source,tileID:this.tileID,type:"patterns"},function(da,Sa){ca||(ca=da,mr=Sa,Ca.call(pa))}):mr={},Ca.call(this);function Ca(){if(ca)return Zr(ca);if(kt&&ir&&mr){var da=new n(kt),Sa=new e.ImageAtlas(ir,mr);for(var Ti in Fa){var ai=Fa[Ti];ai instanceof e.SymbolBucket?(c(ai.layers,this.zoom,Ut),e.performSymbolLayout(ai,kt,da.positions,ir,Sa.iconPositions,this.showCollisionBoxes,this.tileID.canonical)):ai.hasPattern&&(ai instanceof e.LineBucket||ai instanceof e.FillBucket||ai instanceof e.FillExtrusionBucket)&&(c(ai.layers,this.zoom,Ut),ai.addFeatures(qa,this.tileID.canonical,Sa.patternPositions))}this.status="done",Zr(null,{buckets:e.values(Fa).filter(function(an){return!an.isEmpty()}),featureIndex:Ea,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:da.image,imageAtlas:Sa,glyphMap:this.returnDependencies?kt:null,iconMap:this.returnDependencies?ir:null,glyphPositions:this.returnDependencies?da.positions:null})}}};function c(Wt,zt,Vt){for(var Ut=new e.EvaluationParameters(zt),xr=0,Zr=Wt;xr<Zr.length;xr+=1){var pa=Zr[xr];pa.recalculate(Ut,Vt)}}function h(Wt,zt){var Vt=e.getArrayBuffer(Wt.request,function(Ut,xr,Zr,pa){Ut?zt(Ut):xr&&zt(null,{vectorTile:new e.vectorTile.VectorTile(new e.pbf(xr)),rawData:xr,cacheControl:Zr,expires:pa})});return function(){Vt.cancel(),zt()}}var v=function(zt,Vt,Ut,xr){this.actor=zt,this.layerIndex=Vt,this.availableImages=Ut,this.loadVectorData=xr||h,this.loading={},this.loaded={}};v.prototype.loadTile=function(zt,Vt){var Ut=this,xr=zt.uid;this.loading||(this.loading={});var Zr=zt&&zt.request&&zt.request.collectResourceTiming?new e.RequestPerformance(zt.request):!1,pa=this.loading[xr]=new s(zt);pa.abort=this.loadVectorData(zt,function(Xr,Ea){if(delete Ut.loading[xr],Xr||!Ea)return pa.status="done",Ut.loaded[xr]=pa,Vt(Xr);var Fa=Ea.rawData,qa={};Ea.expires&&(qa.expires=Ea.expires),Ea.cacheControl&&(qa.cacheControl=Ea.cacheControl);var ya={};if(Zr){var $a=Zr.finish();$a&&(ya.resourceTiming=JSON.parse(JSON.stringify($a)))}pa.vectorTile=Ea.vectorTile,pa.parse(Ea.vectorTile,Ut.layerIndex,Ut.availableImages,Ut.actor,function(mt,gt){if(mt||!gt)return Vt(mt);Vt(null,e.extend({rawTileData:Fa.slice(0)},gt,qa,ya))}),Ut.loaded=Ut.loaded||{},Ut.loaded[xr]=pa})},v.prototype.reloadTile=function(zt,Vt){var Ut=this,xr=this.loaded,Zr=zt.uid,pa=this;if(xr&&xr[Zr]){var Xr=xr[Zr];Xr.showCollisionBoxes=zt.showCollisionBoxes;var Ea=function(Fa,qa){var ya=Xr.reloadCallback;ya&&(delete Xr.reloadCallback,Xr.parse(Xr.vectorTile,pa.layerIndex,Ut.availableImages,pa.actor,ya)),Vt(Fa,qa)};Xr.status==="parsing"?Xr.reloadCallback=Ea:Xr.status==="done"&&(Xr.vectorTile?Xr.parse(Xr.vectorTile,this.layerIndex,this.availableImages,this.actor,Ea):Ea())}},v.prototype.abortTile=function(zt,Vt){var Ut=this.loading,xr=zt.uid;Ut&&Ut[xr]&&Ut[xr].abort&&(Ut[xr].abort(),delete Ut[xr]),Vt()},v.prototype.removeTile=function(zt,Vt){var Ut=this.loaded,xr=zt.uid;Ut&&Ut[xr]&&delete Ut[xr],Vt()};var p=e.window.ImageBitmap,T=function(){this.loaded={}};T.prototype.loadTile=function(zt,Vt){var Ut=zt.uid,xr=zt.encoding,Zr=zt.rawImageData,pa=p&&Zr instanceof p?this.getImageData(Zr):Zr,Xr=new e.DEMData(Ut,pa,xr);this.loaded=this.loaded||{},this.loaded[Ut]=Xr,Vt(null,Xr)},T.prototype.getImageData=function(zt){(!this.offscreenCanvas||!this.offscreenCanvasContext)&&(this.offscreenCanvas=new OffscreenCanvas(zt.width,zt.height),this.offscreenCanvasContext=this.offscreenCanvas.getContext("2d")),this.offscreenCanvas.width=zt.width,this.offscreenCanvas.height=zt.height,this.offscreenCanvasContext.drawImage(zt,0,0,zt.width,zt.height);var Vt=this.offscreenCanvasContext.getImageData(-1,-1,zt.width+2,zt.height+2);return this.offscreenCanvasContext.clearRect(0,0,this.offscreenCanvas.width,this.offscreenCanvas.height),new e.RGBAImage({width:Vt.width,height:Vt.height},Vt.data)},T.prototype.removeTile=function(zt){var Vt=this.loaded,Ut=zt.uid;Vt&&Vt[Ut]&&delete Vt[Ut]};var l=_;function _(Wt,zt){var Vt=Wt&&Wt.type,Ut;if(Vt==="FeatureCollection")for(Ut=0;Ut<Wt.features.length;Ut++)_(Wt.features[Ut],zt);else if(Vt==="GeometryCollection")for(Ut=0;Ut<Wt.geometries.length;Ut++)_(Wt.geometries[Ut],zt);else if(Vt==="Feature")_(Wt.geometry,zt);else if(Vt==="Polygon")w(Wt.coordinates,zt);else if(Vt==="MultiPolygon")for(Ut=0;Ut<Wt.coordinates.length;Ut++)w(Wt.coordinates[Ut],zt);return Wt}function w(Wt,zt){if(Wt.length!==0){S(Wt[0],zt);for(var Vt=1;Vt<Wt.length;Vt++)S(Wt[Vt],!zt)}}function S(Wt,zt){for(var Vt=0,Ut=0,xr=Wt.length,Zr=xr-1;Ut<xr;Zr=Ut++)Vt+=(Wt[Ut][0]-Wt[Zr][0])*(Wt[Zr][1]+Wt[Ut][1]);Vt>=0!=!!zt&&Wt.reverse()}var E=e.vectorTile.VectorTileFeature.prototype.toGeoJSON,m=function(zt){this._feature=zt,this.extent=e.EXTENT,this.type=zt.type,this.properties=zt.tags,"id"in zt&&!isNaN(zt.id)&&(this.id=parseInt(zt.id,10))};m.prototype.loadGeometry=function(){if(this._feature.type===1){for(var zt=[],Vt=0,Ut=this._feature.geometry;Vt<Ut.length;Vt+=1){var xr=Ut[Vt];zt.push([new e.Point$1(xr[0],xr[1])])}return zt}else{for(var Zr=[],pa=0,Xr=this._feature.geometry;pa<Xr.length;pa+=1){for(var Ea=Xr[pa],Fa=[],qa=0,ya=Ea;qa<ya.length;qa+=1){var $a=ya[qa];Fa.push(new e.Point$1($a[0],$a[1]))}Zr.push(Fa)}return Zr}},m.prototype.toGeoJSON=function(zt,Vt,Ut){return E.call(this,zt,Vt,Ut)};var b=function(zt){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.EXTENT,this.length=zt.length,this._features=zt};b.prototype.feature=function(zt){return new m(this._features[zt])};var d=e.vectorTile.VectorTileFeature,u=y;function y(Wt,zt){this.options=zt||{},this.features=Wt,this.length=Wt.length}y.prototype.feature=function(Wt){return new f(this.features[Wt],this.options.extent)};function f(Wt,zt){this.id=typeof Wt.id=="number"?Wt.id:void 0,this.type=Wt.type,this.rawGeometry=Wt.type===1?[Wt.geometry]:Wt.geometry,this.properties=Wt.tags,this.extent=zt||4096}f.prototype.loadGeometry=function(){var Wt=this.rawGeometry;this.geometry=[];for(var zt=0;zt<Wt.length;zt++){for(var Vt=Wt[zt],Ut=[],xr=0;xr<Vt.length;xr++)Ut.push(new e.Point$1(Vt[xr][0],Vt[xr][1]));this.geometry.push(Ut)}return this.geometry},f.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var Wt=this.geometry,zt=1/0,Vt=-1/0,Ut=1/0,xr=-1/0,Zr=0;Zr<Wt.length;Zr++)for(var pa=Wt[Zr],Xr=0;Xr<pa.length;Xr++){var Ea=pa[Xr];zt=Math.min(zt,Ea.x),Vt=Math.max(Vt,Ea.x),Ut=Math.min(Ut,Ea.y),xr=Math.max(xr,Ea.y)}return[zt,Ut,Vt,xr]},f.prototype.toGeoJSON=d.prototype.toGeoJSON;var P=B,L=B,z=O,F=u;function B(Wt){var zt=new e.pbf;return I(Wt,zt),zt.finish()}function O(Wt,zt){zt=zt||{};var Vt={};for(var Ut in Wt)Vt[Ut]=new u(Wt[Ut].features,zt),Vt[Ut].name=Ut,Vt[Ut].version=zt.version,Vt[Ut].extent=zt.extent;return B({layers:Vt})}function I(Wt,zt){for(var Vt in Wt.layers)zt.writeMessage(3,N,Wt.layers[Vt])}function N(Wt,zt){zt.writeVarintField(15,Wt.version||1),zt.writeStringField(1,Wt.name||""),zt.writeVarintField(5,Wt.extent||4096);var Vt,Ut={keys:[],values:[],keycache:{},valuecache:{}};for(Vt=0;Vt<Wt.length;Vt++)Ut.feature=Wt.feature(Vt),zt.writeMessage(2,U,Ut);var xr=Ut.keys;for(Vt=0;Vt<xr.length;Vt++)zt.writeStringField(3,xr[Vt]);var Zr=Ut.values;for(Vt=0;Vt<Zr.length;Vt++)zt.writeMessage(4,he,Zr[Vt])}function U(Wt,zt){var Vt=Wt.feature;Vt.id!==void 0&&zt.writeVarintField(1,Vt.id),zt.writeMessage(2,W,Wt),zt.writeVarintField(3,Vt.type),zt.writeMessage(4,se,Vt)}function W(Wt,zt){var Vt=Wt.feature,Ut=Wt.keys,xr=Wt.values,Zr=Wt.keycache,pa=Wt.valuecache;for(var Xr in Vt.properties){var Ea=Zr[Xr];typeof Ea>"u"&&(Ut.push(Xr),Ea=Ut.length-1,Zr[Xr]=Ea),zt.writeVarint(Ea);var Fa=Vt.properties[Xr],qa=typeof Fa;qa!=="string"&&qa!=="boolean"&&qa!=="number"&&(Fa=JSON.stringify(Fa));var ya=qa+":"+Fa,$a=pa[ya];typeof $a>"u"&&(xr.push(Fa),$a=xr.length-1,pa[ya]=$a),zt.writeVarint($a)}}function Q(Wt,zt){return(zt<<3)+(Wt&7)}function ue(Wt){return Wt<<1^Wt>>31}function se(Wt,zt){for(var Vt=Wt.loadGeometry(),Ut=Wt.type,xr=0,Zr=0,pa=Vt.length,Xr=0;Xr<pa;Xr++){var Ea=Vt[Xr],Fa=1;Ut===1&&(Fa=Ea.length),zt.writeVarint(Q(1,Fa));for(var qa=Ut===3?Ea.length-1:Ea.length,ya=0;ya<qa;ya++){ya===1&&Ut!==1&&zt.writeVarint(Q(2,qa-1));var $a=Ea[ya].x-xr,mt=Ea[ya].y-Zr;zt.writeVarint(ue($a)),zt.writeVarint(ue(mt)),xr+=$a,Zr+=mt}Ut===3&&zt.writeVarint(Q(7,1))}}function he(Wt,zt){var Vt=typeof Wt;Vt==="string"?zt.writeStringField(1,Wt):Vt==="boolean"?zt.writeBooleanField(7,Wt):Vt==="number"&&(Wt%1!==0?zt.writeDoubleField(3,Wt):Wt<0?zt.writeSVarintField(6,Wt):zt.writeVarintField(5,Wt))}P.fromVectorTileJs=L,P.fromGeojsonVt=z,P.GeoJSONWrapper=F;function G(Wt,zt,Vt,Ut,xr,Zr){if(!(xr-Ut<=Vt)){var pa=Ut+xr>>1;$(Wt,zt,pa,Ut,xr,Zr%2),G(Wt,zt,Vt,Ut,pa-1,Zr+1),G(Wt,zt,Vt,pa+1,xr,Zr+1)}}function $(Wt,zt,Vt,Ut,xr,Zr){for(;xr>Ut;){if(xr-Ut>600){var pa=xr-Ut+1,Xr=Vt-Ut+1,Ea=Math.log(pa),Fa=.5*Math.exp(2*Ea/3),qa=.5*Math.sqrt(Ea*Fa*(pa-Fa)/pa)*(Xr-pa/2<0?-1:1),ya=Math.max(Ut,Math.floor(Vt-Xr*Fa/pa+qa)),$a=Math.min(xr,Math.floor(Vt+(pa-Xr)*Fa/pa+qa));$(Wt,zt,Vt,ya,$a,Zr)}var mt=zt[2*Vt+Zr],gt=Ut,Er=xr;for(J(Wt,zt,Ut,Vt),zt[2*xr+Zr]>mt&&J(Wt,zt,Ut,xr);gt<Er;){for(J(Wt,zt,gt,Er),gt++,Er--;zt[2*gt+Zr]<mt;)gt++;for(;zt[2*Er+Zr]>mt;)Er--}zt[2*Ut+Zr]===mt?J(Wt,zt,Ut,Er):(Er++,J(Wt,zt,Er,xr)),Er<=Vt&&(Ut=Er+1),Vt<=Er&&(xr=Er-1)}}function J(Wt,zt,Vt,Ut){Z(Wt,Vt,Ut),Z(zt,2*Vt,2*Ut),Z(zt,2*Vt+1,2*Ut+1)}function Z(Wt,zt,Vt){var Ut=Wt[zt];Wt[zt]=Wt[Vt],Wt[Vt]=Ut}function re(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[0,Wt.length-1,0],Ea=[],Fa,qa;Xr.length;){var ya=Xr.pop(),$a=Xr.pop(),mt=Xr.pop();if($a-mt<=pa){for(var gt=mt;gt<=$a;gt++)Fa=zt[2*gt],qa=zt[2*gt+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[gt]);continue}var Er=Math.floor((mt+$a)/2);Fa=zt[2*Er],qa=zt[2*Er+1],Fa>=Vt&&Fa<=xr&&qa>=Ut&&qa<=Zr&&Ea.push(Wt[Er]);var kr=(ya+1)%2;(ya===0?Vt<=Fa:Ut<=qa)&&(Xr.push(mt),Xr.push(Er-1),Xr.push(kr)),(ya===0?xr>=Fa:Zr>=qa)&&(Xr.push(Er+1),Xr.push($a),Xr.push(kr))}return Ea}function ne(Wt,zt,Vt,Ut,xr,Zr){for(var pa=[0,Wt.length-1,0],Xr=[],Ea=xr*xr;pa.length;){var Fa=pa.pop(),qa=pa.pop(),ya=pa.pop();if(qa-ya<=Zr){for(var $a=ya;$a<=qa;$a++)j(zt[2*$a],zt[2*$a+1],Vt,Ut)<=Ea&&Xr.push(Wt[$a]);continue}var mt=Math.floor((ya+qa)/2),gt=zt[2*mt],Er=zt[2*mt+1];j(gt,Er,Vt,Ut)<=Ea&&Xr.push(Wt[mt]);var kr=(Fa+1)%2;(Fa===0?Vt-xr<=gt:Ut-xr<=Er)&&(pa.push(ya),pa.push(mt-1),pa.push(kr)),(Fa===0?Vt+xr>=gt:Ut+xr>=Er)&&(pa.push(mt+1),pa.push(qa),pa.push(kr))}return Xr}function j(Wt,zt,Vt,Ut){var xr=Wt-Vt,Zr=zt-Ut;return xr*xr+Zr*Zr}var ee=function(Wt){return Wt[0]},ie=function(Wt){return Wt[1]},fe=function(zt,Vt,Ut,xr,Zr){Vt===void 0&&(Vt=ee),Ut===void 0&&(Ut=ie),xr===void 0&&(xr=64),Zr===void 0&&(Zr=Float64Array),this.nodeSize=xr,this.points=zt;for(var pa=zt.length<65536?Uint16Array:Uint32Array,Xr=this.ids=new pa(zt.length),Ea=this.coords=new Zr(zt.length*2),Fa=0;Fa<zt.length;Fa++)Xr[Fa]=Fa,Ea[2*Fa]=Vt(zt[Fa]),Ea[2*Fa+1]=Ut(zt[Fa]);G(Xr,Ea,xr,0,Xr.length-1,0)};fe.prototype.range=function(zt,Vt,Ut,xr){return re(this.ids,this.coords,zt,Vt,Ut,xr,this.nodeSize)},fe.prototype.within=function(zt,Vt,Ut){return ne(this.ids,this.coords,zt,Vt,Ut,this.nodeSize)};var be={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:function(Wt){return Wt}},Ae=function(zt){this.options=ge(Object.create(be),zt),this.trees=new Array(this.options.maxZoom+1)};Ae.prototype.load=function(zt){var Vt=this.options,Ut=Vt.log,xr=Vt.minZoom,Zr=Vt.maxZoom,pa=Vt.nodeSize;Ut&&console.time("total time");var Xr="prepare "+zt.length+" points";Ut&&console.time(Xr),this.points=zt;for(var Ea=[],Fa=0;Fa<zt.length;Fa++)zt[Fa].geometry&&Ea.push(Ie(zt[Fa],Fa));this.trees[Zr+1]=new fe(Ea,ce,ze,pa,Float32Array),Ut&&console.timeEnd(Xr);for(var qa=Zr;qa>=xr;qa--){var ya=+Date.now();Ea=this._cluster(Ea,qa),this.trees[qa]=new fe(Ea,ce,ze,pa,Float32Array),Ut&&console.log("z%d: %d clusters in %dms",qa,Ea.length,+Date.now()-ya)}return Ut&&console.timeEnd("total time"),this},Ae.prototype.getClusters=function(zt,Vt){var Ut=((zt[0]+180)%360+360)%360-180,xr=Math.max(-90,Math.min(90,zt[1])),Zr=zt[2]===180?180:((zt[2]+180)%360+360)%360-180,pa=Math.max(-90,Math.min(90,zt[3]));if(zt[2]-zt[0]>=360)Ut=-180,Zr=180;else if(Ut>Zr){var Xr=this.getClusters([Ut,xr,180,pa],Vt),Ea=this.getClusters([-180,xr,Zr,pa],Vt);return Xr.concat(Ea)}for(var Fa=this.trees[this._limitZoom(Vt)],qa=Fa.range(it(Ut),et(pa),it(Zr),et(xr)),ya=[],$a=0,mt=qa;$a<mt.length;$a+=1){var gt=mt[$a],Er=Fa.points[gt];ya.push(Er.numPoints?Ze(Er):this.points[Er.index])}return ya},Ae.prototype.getChildren=function(zt){var Vt=this._getOriginId(zt),Ut=this._getOriginZoom(zt),xr="No cluster with the specified id.",Zr=this.trees[Ut];if(!Zr)throw new Error(xr);var pa=Zr.points[Vt];if(!pa)throw new Error(xr);for(var Xr=this.options.radius/(this.options.extent*Math.pow(2,Ut-1)),Ea=Zr.within(pa.x,pa.y,Xr),Fa=[],qa=0,ya=Ea;qa<ya.length;qa+=1){var $a=ya[qa],mt=Zr.points[$a];mt.parentId===zt&&Fa.push(mt.numPoints?Ze(mt):this.points[mt.index])}if(Fa.length===0)throw new Error(xr);return Fa},Ae.prototype.getLeaves=function(zt,Vt,Ut){Vt=Vt||10,Ut=Ut||0;var xr=[];return this._appendLeaves(xr,zt,Vt,Ut,0),xr},Ae.prototype.getTile=function(zt,Vt,Ut){var xr=this.trees[this._limitZoom(zt)],Zr=Math.pow(2,zt),pa=this.options,Xr=pa.extent,Ea=pa.radius,Fa=Ea/Xr,qa=(Ut-Fa)/Zr,ya=(Ut+1+Fa)/Zr,$a={features:[]};return this._addTileFeatures(xr.range((Vt-Fa)/Zr,qa,(Vt+1+Fa)/Zr,ya),xr.points,Vt,Ut,Zr,$a),Vt===0&&this._addTileFeatures(xr.range(1-Fa/Zr,qa,1,ya),xr.points,Zr,Ut,Zr,$a),Vt===Zr-1&&this._addTileFeatures(xr.range(0,qa,Fa/Zr,ya),xr.points,-1,Ut,Zr,$a),$a.features.length?$a:null},Ae.prototype.getClusterExpansionZoom=function(zt){for(var Vt=this._getOriginZoom(zt)-1;Vt<=this.options.maxZoom;){var Ut=this.getChildren(zt);if(Vt++,Ut.length!==1)break;zt=Ut[0].properties.cluster_id}return Vt},Ae.prototype._appendLeaves=function(zt,Vt,Ut,xr,Zr){for(var pa=this.getChildren(Vt),Xr=0,Ea=pa;Xr<Ea.length;Xr+=1){var Fa=Ea[Xr],qa=Fa.properties;if(qa&&qa.cluster?Zr+qa.point_count<=xr?Zr+=qa.point_count:Zr=this._appendLeaves(zt,qa.cluster_id,Ut,xr,Zr):Zr<xr?Zr++:zt.push(Fa),zt.length===Ut)break}return Zr},Ae.prototype._addTileFeatures=function(zt,Vt,Ut,xr,Zr,pa){for(var Xr=0,Ea=zt;Xr<Ea.length;Xr+=1){var Fa=Ea[Xr],qa=Vt[Fa],ya=qa.numPoints,$a={type:1,geometry:[[Math.round(this.options.extent*(qa.x*Zr-Ut)),Math.round(this.options.extent*(qa.y*Zr-xr))]],tags:ya?at(qa):this.points[qa.index].properties},mt=void 0;ya?mt=qa.id:this.options.generateId?mt=qa.index:this.points[qa.index].id&&(mt=this.points[qa.index].id),mt!==void 0&&($a.id=mt),pa.features.push($a)}},Ae.prototype._limitZoom=function(zt){return Math.max(this.options.minZoom,Math.min(+zt,this.options.maxZoom+1))},Ae.prototype._cluster=function(zt,Vt){for(var Ut=[],xr=this.options,Zr=xr.radius,pa=xr.extent,Xr=xr.reduce,Ea=xr.minPoints,Fa=Zr/(pa*Math.pow(2,Vt)),qa=0;qa<zt.length;qa++){var ya=zt[qa];if(!(ya.zoom<=Vt)){ya.zoom=Vt;for(var $a=this.trees[Vt+1],mt=$a.within(ya.x,ya.y,Fa),gt=ya.numPoints||1,Er=gt,kr=0,br=mt;kr<br.length;kr+=1){var Tr=br[kr],Mr=$a.points[Tr];Mr.zoom>Vt&&(Er+=Mr.numPoints||1)}if(Er>=Ea){for(var Fr=ya.x*gt,Lr=ya.y*gt,Jr=Xr&&gt>1?this._map(ya,!0):null,oa=(qa<<5)+(Vt+1)+this.points.length,ca=0,kt=mt;ca<kt.length;ca+=1){var ir=kt[ca],mr=$a.points[ir];if(!(mr.zoom<=Vt)){mr.zoom=Vt;var $r=mr.numPoints||1;Fr+=mr.x*$r,Lr+=mr.y*$r,mr.parentId=oa,Xr&&(Jr||(Jr=this._map(ya,!0)),Xr(Jr,this._map(mr)))}}ya.parentId=oa,Ut.push(Be(Fr/Er,Lr/Er,oa,Er,Jr))}else if(Ut.push(ya),Er>1)for(var ma=0,Ba=mt;ma<Ba.length;ma+=1){var Ca=Ba[ma],da=$a.points[Ca];da.zoom<=Vt||(da.zoom=Vt,Ut.push(da))}}}return Ut},Ae.prototype._getOriginId=function(zt){return zt-this.points.length>>5},Ae.prototype._getOriginZoom=function(zt){return(zt-this.points.length)%32},Ae.prototype._map=function(zt,Vt){if(zt.numPoints)return Vt?ge({},zt.properties):zt.properties;var Ut=this.points[zt.index].properties,xr=this.options.map(Ut);return Vt&&xr===Ut?ge({},xr):xr};function Be(Wt,zt,Vt,Ut,xr){return{x:Wt,y:zt,zoom:1/0,id:Vt,parentId:-1,numPoints:Ut,properties:xr}}function Ie(Wt,zt){var Vt=Wt.geometry.coordinates,Ut=Vt[0],xr=Vt[1];return{x:it(Ut),y:et(xr),zoom:1/0,index:zt,parentId:-1}}function Ze(Wt){return{type:"Feature",id:Wt.id,properties:at(Wt),geometry:{type:"Point",coordinates:[lt(Wt.x),Me(Wt.y)]}}}function at(Wt){var zt=Wt.numPoints,Vt=zt>=1e4?Math.round(zt/1e3)+"k":zt>=1e3?Math.round(zt/100)/10+"k":zt;return ge(ge({},Wt.properties),{cluster:!0,cluster_id:Wt.id,point_count:zt,point_count_abbreviated:Vt})}function it(Wt){return Wt/360+.5}function et(Wt){var zt=Math.sin(Wt*Math.PI/180),Vt=.5-.25*Math.log((1+zt)/(1-zt))/Math.PI;return Vt<0?0:Vt>1?1:Vt}function lt(Wt){return(Wt-.5)*360}function Me(Wt){var zt=(180-Wt*360)*Math.PI/180;return 360*Math.atan(Math.exp(zt))/Math.PI-90}function ge(Wt,zt){for(var Vt in zt)Wt[Vt]=zt[Vt];return Wt}function ce(Wt){return Wt.x}function ze(Wt){return Wt.y}function tt(Wt,zt,Vt,Ut){for(var xr=Ut,Zr=Vt-zt>>1,pa=Vt-zt,Xr,Ea=Wt[zt],Fa=Wt[zt+1],qa=Wt[Vt],ya=Wt[Vt+1],$a=zt+3;$a<Vt;$a+=3){var mt=nt(Wt[$a],Wt[$a+1],Ea,Fa,qa,ya);if(mt>xr)Xr=$a,xr=mt;else if(mt===xr){var gt=Math.abs($a-Zr);gt<pa&&(Xr=$a,pa=gt)}}xr>Ut&&(Xr-zt>3&&tt(Wt,zt,Xr,Ut),Wt[Xr+2]=xr,Vt-Xr>3&&tt(Wt,Xr,Vt,Ut))}function nt(Wt,zt,Vt,Ut,xr,Zr){var pa=xr-Vt,Xr=Zr-Ut;if(pa!==0||Xr!==0){var Ea=((Wt-Vt)*pa+(zt-Ut)*Xr)/(pa*pa+Xr*Xr);Ea>1?(Vt=xr,Ut=Zr):Ea>0&&(Vt+=pa*Ea,Ut+=Xr*Ea)}return pa=Wt-Vt,Xr=zt-Ut,pa*pa+Xr*Xr}function Qe(Wt,zt,Vt,Ut){var xr={id:typeof Wt>"u"?null:Wt,type:zt,geometry:Vt,tags:Ut,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};return Ct(xr),xr}function Ct(Wt){var zt=Wt.geometry,Vt=Wt.type;if(Vt==="Point"||Vt==="MultiPoint"||Vt==="LineString")St(Wt,zt);else if(Vt==="Polygon"||Vt==="MultiLineString")for(var Ut=0;Ut<zt.length;Ut++)St(Wt,zt[Ut]);else if(Vt==="MultiPolygon")for(Ut=0;Ut<zt.length;Ut++)for(var xr=0;xr<zt[Ut].length;xr++)St(Wt,zt[Ut][xr])}function St(Wt,zt){for(var Vt=0;Vt<zt.length;Vt+=3)Wt.minX=Math.min(Wt.minX,zt[Vt]),Wt.minY=Math.min(Wt.minY,zt[Vt+1]),Wt.maxX=Math.max(Wt.maxX,zt[Vt]),Wt.maxY=Math.max(Wt.maxY,zt[Vt+1])}function Ot(Wt,zt){var Vt=[];if(Wt.type==="FeatureCollection")for(var Ut=0;Ut<Wt.features.length;Ut++)jt(Vt,Wt.features[Ut],zt,Ut);else Wt.type==="Feature"?jt(Vt,Wt,zt):jt(Vt,{geometry:Wt},zt);return Vt}function jt(Wt,zt,Vt,Ut){if(zt.geometry){var xr=zt.geometry.coordinates,Zr=zt.geometry.type,pa=Math.pow(Vt.tolerance/((1<<Vt.maxZoom)*Vt.extent),2),Xr=[],Ea=zt.id;if(Vt.promoteId?Ea=zt.properties[Vt.promoteId]:Vt.generateId&&(Ea=Ut||0),Zr==="Point")ur(xr,Xr);else if(Zr==="MultiPoint")for(var Fa=0;Fa<xr.length;Fa++)ur(xr[Fa],Xr);else if(Zr==="LineString")ar(xr,Xr,pa,!1);else if(Zr==="MultiLineString")if(Vt.lineMetrics){for(Fa=0;Fa<xr.length;Fa++)Xr=[],ar(xr[Fa],Xr,pa,!1),Wt.push(Qe(Ea,"LineString",Xr,zt.properties));return}else Cr(xr,Xr,pa,!1);else if(Zr==="Polygon")Cr(xr,Xr,pa,!0);else if(Zr==="MultiPolygon")for(Fa=0;Fa<xr.length;Fa++){var qa=[];Cr(xr[Fa],qa,pa,!0),Xr.push(qa)}else if(Zr==="GeometryCollection"){for(Fa=0;Fa<zt.geometry.geometries.length;Fa++)jt(Wt,{id:Ea,geometry:zt.geometry.geometries[Fa],properties:zt.properties},Vt,Ut);return}else throw new Error("Input data is not a valid GeoJSON object.");Wt.push(Qe(Ea,Zr,Xr,zt.properties))}}function ur(Wt,zt){zt.push(vr(Wt[0])),zt.push(_r(Wt[1])),zt.push(0)}function ar(Wt,zt,Vt,Ut){for(var xr,Zr,pa=0,Xr=0;Xr<Wt.length;Xr++){var Ea=vr(Wt[Xr][0]),Fa=_r(Wt[Xr][1]);zt.push(Ea),zt.push(Fa),zt.push(0),Xr>0&&(Ut?pa+=(xr*Fa-Ea*Zr)/2:pa+=Math.sqrt(Math.pow(Ea-xr,2)+Math.pow(Fa-Zr,2))),xr=Ea,Zr=Fa}var qa=zt.length-3;zt[2]=1,tt(zt,0,qa,Vt),zt[qa+2]=1,zt.size=Math.abs(pa),zt.start=0,zt.end=zt.size}function Cr(Wt,zt,Vt,Ut){for(var xr=0;xr<Wt.length;xr++){var Zr=[];ar(Wt[xr],Zr,Vt,Ut),zt.push(Zr)}}function vr(Wt){return Wt/360+.5}function _r(Wt){var zt=Math.sin(Wt*Math.PI/180),Vt=.5-.25*Math.log((1+zt)/(1-zt))/Math.PI;return Vt<0?0:Vt>1?1:Vt}function yt(Wt,zt,Vt,Ut,xr,Zr,pa,Xr){if(Vt/=zt,Ut/=zt,Zr>=Vt&&pa<Ut)return Wt;if(pa<Vt||Zr>=Ut)return null;for(var Ea=[],Fa=0;Fa<Wt.length;Fa++){var qa=Wt[Fa],ya=qa.geometry,$a=qa.type,mt=xr===0?qa.minX:qa.minY,gt=xr===0?qa.maxX:qa.maxY;if(mt>=Vt&&gt<Ut){Ea.push(qa);continue}else if(gt<Vt||mt>=Ut)continue;var Er=[];if($a==="Point"||$a==="MultiPoint")Fe(ya,Er,Vt,Ut,xr);else if($a==="LineString")Ke(ya,Er,Vt,Ut,xr,!1,Xr.lineMetrics);else if($a==="MultiLineString")Ee(ya,Er,Vt,Ut,xr,!1);else if($a==="Polygon")Ee(ya,Er,Vt,Ut,xr,!0);else if($a==="MultiPolygon")for(var kr=0;kr<ya.length;kr++){var br=[];Ee(ya[kr],br,Vt,Ut,xr,!0),br.length&&Er.push(br)}if(Er.length){if(Xr.lineMetrics&&$a==="LineString"){for(kr=0;kr<Er.length;kr++)Ea.push(Qe(qa.id,$a,Er[kr],qa.tags));continue}($a==="LineString"||$a==="MultiLineString")&&(Er.length===1?($a="LineString",Er=Er[0]):$a="MultiLineString"),($a==="Point"||$a==="MultiPoint")&&($a=Er.length===3?"Point":"MultiPoint"),Ea.push(Qe(qa.id,$a,Er,qa.tags))}}return Ea.length?Ea:null}function Fe(Wt,zt,Vt,Ut,xr){for(var Zr=0;Zr<Wt.length;Zr+=3){var pa=Wt[Zr+xr];pa>=Vt&&pa<=Ut&&(zt.push(Wt[Zr]),zt.push(Wt[Zr+1]),zt.push(Wt[Zr+2]))}}function Ke(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=Ne(Wt),Ea=xr===0?ke:Te,Fa=Wt.start,qa,ya,$a=0;$a<Wt.length-3;$a+=3){var mt=Wt[$a],gt=Wt[$a+1],Er=Wt[$a+2],kr=Wt[$a+3],br=Wt[$a+4],Tr=xr===0?mt:gt,Mr=xr===0?kr:br,Fr=!1;pa&&(qa=Math.sqrt(Math.pow(mt-kr,2)+Math.pow(gt-br,2))),Tr<Vt?Mr>Vt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),pa&&(Xr.start=Fa+qa*ya)):Tr>Ut?Mr<Ut&&(ya=Ea(Xr,mt,gt,kr,br,Ut),pa&&(Xr.start=Fa+qa*ya)):Ve(Xr,mt,gt,Er),Mr<Vt&&Tr>=Vt&&(ya=Ea(Xr,mt,gt,kr,br,Vt),Fr=!0),Mr>Ut&&Tr<=Ut&&(ya=Ea(Xr,mt,gt,kr,br,Ut),Fr=!0),!Zr&&Fr&&(pa&&(Xr.end=Fa+qa*ya),zt.push(Xr),Xr=Ne(Wt)),pa&&(Fa+=qa)}var Lr=Wt.length-3;mt=Wt[Lr],gt=Wt[Lr+1],Er=Wt[Lr+2],Tr=xr===0?mt:gt,Tr>=Vt&&Tr<=Ut&&Ve(Xr,mt,gt,Er),Lr=Xr.length-3,Zr&&Lr>=3&&(Xr[Lr]!==Xr[0]||Xr[Lr+1]!==Xr[1])&&Ve(Xr,Xr[0],Xr[1],Xr[2]),Xr.length&&zt.push(Xr)}function Ne(Wt){var zt=[];return zt.size=Wt.size,zt.start=Wt.start,zt.end=Wt.end,zt}function Ee(Wt,zt,Vt,Ut,xr,Zr){for(var pa=0;pa<Wt.length;pa++)Ke(Wt[pa],zt,Vt,Ut,xr,Zr,!1)}function Ve(Wt,zt,Vt,Ut){Wt.push(zt),Wt.push(Vt),Wt.push(Ut)}function ke(Wt,zt,Vt,Ut,xr,Zr){var pa=(Zr-zt)/(Ut-zt);return Wt.push(Zr),Wt.push(Vt+(xr-Vt)*pa),Wt.push(1),pa}function Te(Wt,zt,Vt,Ut,xr,Zr){var pa=(Zr-Vt)/(xr-Vt);return Wt.push(zt+(Ut-zt)*pa),Wt.push(Zr),Wt.push(1),pa}function Le(Wt,zt){var Vt=zt.buffer/zt.extent,Ut=Wt,xr=yt(Wt,1,-1-Vt,Vt,0,-1,2,zt),Zr=yt(Wt,1,1-Vt,2+Vt,0,-1,2,zt);return(xr||Zr)&&(Ut=yt(Wt,1,-Vt,1+Vt,0,-1,2,zt)||[],xr&&(Ut=rt(xr,1).concat(Ut)),Zr&&(Ut=Ut.concat(rt(Zr,-1)))),Ut}function rt(Wt,zt){for(var Vt=[],Ut=0;Ut<Wt.length;Ut++){var xr=Wt[Ut],Zr=xr.type,pa;if(Zr==="Point"||Zr==="MultiPoint"||Zr==="LineString")pa=dt(xr.geometry,zt);else if(Zr==="MultiLineString"||Zr==="Polygon"){pa=[];for(var Xr=0;Xr<xr.geometry.length;Xr++)pa.push(dt(xr.geometry[Xr],zt))}else if(Zr==="MultiPolygon")for(pa=[],Xr=0;Xr<xr.geometry.length;Xr++){for(var Ea=[],Fa=0;Fa<xr.geometry[Xr].length;Fa++)Ea.push(dt(xr.geometry[Xr][Fa],zt));pa.push(Ea)}Vt.push(Qe(xr.id,Zr,pa,xr.tags))}return Vt}function dt(Wt,zt){var Vt=[];Vt.size=Wt.size,Wt.start!==void 0&&(Vt.start=Wt.start,Vt.end=Wt.end);for(var Ut=0;Ut<Wt.length;Ut+=3)Vt.push(Wt[Ut]+zt,Wt[Ut+1],Wt[Ut+2]);return Vt}function xt(Wt,zt){if(Wt.transformed)return Wt;var Vt=1<<Wt.z,Ut=Wt.x,xr=Wt.y,Zr,pa,Xr;for(Zr=0;Zr<Wt.features.length;Zr++){var Ea=Wt.features[Zr],Fa=Ea.geometry,qa=Ea.type;if(Ea.geometry=[],qa===1)for(pa=0;pa<Fa.length;pa+=2)Ea.geometry.push(It(Fa[pa],Fa[pa+1],zt,Vt,Ut,xr));else for(pa=0;pa<Fa.length;pa++){var ya=[];for(Xr=0;Xr<Fa[pa].length;Xr+=2)ya.push(It(Fa[pa][Xr],Fa[pa][Xr+1],zt,Vt,Ut,xr));Ea.geometry.push(ya)}}return Wt.transformed=!0,Wt}function It(Wt,zt,Vt,Ut,xr,Zr){return[Math.round(Vt*(Wt*Ut-xr)),Math.round(Vt*(zt*Ut-Zr))]}function Bt(Wt,zt,Vt,Ut,xr){for(var Zr=zt===xr.maxZoom?0:xr.tolerance/((1<<zt)*xr.extent),pa={features:[],numPoints:0,numSimplified:0,numFeatures:0,source:null,x:Vt,y:Ut,z:zt,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0},Xr=0;Xr<Wt.length;Xr++){pa.numFeatures++,Gt(pa,Wt[Xr],Zr,xr);var Ea=Wt[Xr].minX,Fa=Wt[Xr].minY,qa=Wt[Xr].maxX,ya=Wt[Xr].maxY;Ea<pa.minX&&(pa.minX=Ea),Fa<pa.minY&&(pa.minY=Fa),qa>pa.maxX&&(pa.maxX=qa),ya>pa.maxY&&(pa.maxY=ya)}return pa}function Gt(Wt,zt,Vt,Ut){var xr=zt.geometry,Zr=zt.type,pa=[];if(Zr==="Point"||Zr==="MultiPoint")for(var Xr=0;Xr<xr.length;Xr+=3)pa.push(xr[Xr]),pa.push(xr[Xr+1]),Wt.numPoints++,Wt.numSimplified++;else if(Zr==="LineString")Kt(pa,xr,Wt,Vt,!1,!1);else if(Zr==="MultiLineString"||Zr==="Polygon")for(Xr=0;Xr<xr.length;Xr++)Kt(pa,xr[Xr],Wt,Vt,Zr==="Polygon",Xr===0);else if(Zr==="MultiPolygon")for(var Ea=0;Ea<xr.length;Ea++){var Fa=xr[Ea];for(Xr=0;Xr<Fa.length;Xr++)Kt(pa,Fa[Xr],Wt,Vt,!0,Xr===0)}if(pa.length){var qa=zt.tags||null;if(Zr==="LineString"&&Ut.lineMetrics){qa={};for(var ya in zt.tags)qa[ya]=zt.tags[ya];qa.mapbox_clip_start=xr.start/xr.size,qa.mapbox_clip_end=xr.end/xr.size}var $a={geometry:pa,type:Zr==="Polygon"||Zr==="MultiPolygon"?3:Zr==="LineString"||Zr==="MultiLineString"?2:1,tags:qa};zt.id!==null&&($a.id=zt.id),Wt.features.push($a)}}function Kt(Wt,zt,Vt,Ut,xr,Zr){var pa=Ut*Ut;if(Ut>0&&zt.size<(xr?pa:Ut)){Vt.numPoints+=zt.length/3;return}for(var Xr=[],Ea=0;Ea<zt.length;Ea+=3)(Ut===0||zt[Ea+2]>pa)&&(Vt.numSimplified++,Xr.push(zt[Ea]),Xr.push(zt[Ea+1])),Vt.numPoints++;xr&&sr(Xr,Zr),Wt.push(Xr)}function sr(Wt,zt){for(var Vt=0,Ut=0,xr=Wt.length,Zr=xr-2;Ut<xr;Zr=Ut,Ut+=2)Vt+=(Wt[Ut]-Wt[Zr])*(Wt[Ut+1]+Wt[Zr+1]);if(Vt>0===zt)for(Ut=0,xr=Wt.length;Ut<xr/2;Ut+=2){var pa=Wt[Ut],Xr=Wt[Ut+1];Wt[Ut]=Wt[xr-2-Ut],Wt[Ut+1]=Wt[xr-1-Ut],Wt[xr-2-Ut]=pa,Wt[xr-1-Ut]=Xr}}function sa(Wt,zt){return new Aa(Wt,zt)}function Aa(Wt,zt){zt=this.options=ka(Object.create(this.options),zt);var Vt=zt.debug;if(Vt&&console.time("preprocess data"),zt.maxZoom<0||zt.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(zt.promoteId&&zt.generateId)throw new Error("promoteId and generateId cannot be used together.");var Ut=Ot(Wt,zt);this.tiles={},this.tileCoords=[],Vt&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",zt.indexMaxZoom,zt.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ut=Le(Ut,zt),Ut.length&&this.splitTile(Ut,0,0,0),Vt&&(Ut.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)))}Aa.prototype.options={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0},Aa.prototype.splitTile=function(Wt,zt,Vt,Ut,xr,Zr,pa){for(var Xr=[Wt,zt,Vt,Ut],Ea=this.options,Fa=Ea.debug;Xr.length;){Ut=Xr.pop(),Vt=Xr.pop(),zt=Xr.pop(),Wt=Xr.pop();var qa=1<<zt,ya=La(zt,Vt,Ut),$a=this.tiles[ya];if(!$a&&(Fa>1&&console.time("creation"),$a=this.tiles[ya]=Bt(Wt,zt,Vt,Ut,Ea),this.tileCoords.push({z:zt,x:Vt,y:Ut}),Fa)){Fa>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",zt,Vt,Ut,$a.numFeatures,$a.numPoints,$a.numSimplified),console.timeEnd("creation"));var mt="z"+zt;this.stats[mt]=(this.stats[mt]||0)+1,this.total++}if($a.source=Wt,xr){if(zt===Ea.maxZoom||zt===xr)continue;var gt=1<<xr-zt;if(Vt!==Math.floor(Zr/gt)||Ut!==Math.floor(pa/gt))continue}else if(zt===Ea.indexMaxZoom||$a.numPoints<=Ea.indexMaxPoints)continue;if($a.source=null,Wt.length!==0){Fa>1&&console.time("clipping");var Er=.5*Ea.buffer/Ea.extent,kr=.5-Er,br=.5+Er,Tr=1+Er,Mr,Fr,Lr,Jr,oa,ca;Mr=Fr=Lr=Jr=null,oa=yt(Wt,qa,Vt-Er,Vt+br,0,$a.minX,$a.maxX,Ea),ca=yt(Wt,qa,Vt+kr,Vt+Tr,0,$a.minX,$a.maxX,Ea),Wt=null,oa&&(Mr=yt(oa,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Fr=yt(oa,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),oa=null),ca&&(Lr=yt(ca,qa,Ut-Er,Ut+br,1,$a.minY,$a.maxY,Ea),Jr=yt(ca,qa,Ut+kr,Ut+Tr,1,$a.minY,$a.maxY,Ea),ca=null),Fa>1&&console.timeEnd("clipping"),Xr.push(Mr||[],zt+1,Vt*2,Ut*2),Xr.push(Fr||[],zt+1,Vt*2,Ut*2+1),Xr.push(Lr||[],zt+1,Vt*2+1,Ut*2),Xr.push(Jr||[],zt+1,Vt*2+1,Ut*2+1)}}},Aa.prototype.getTile=function(Wt,zt,Vt){var Ut=this.options,xr=Ut.extent,Zr=Ut.debug;if(Wt<0||Wt>24)return null;var pa=1<<Wt;zt=(zt%pa+pa)%pa;var Xr=La(Wt,zt,Vt);if(this.tiles[Xr])return xt(this.tiles[Xr],xr);Zr>1&&console.log("drilling down to z%d-%d-%d",Wt,zt,Vt);for(var Ea=Wt,Fa=zt,qa=Vt,ya;!ya&&Ea>0;)Ea--,Fa=Math.floor(Fa/2),qa=Math.floor(qa/2),ya=this.tiles[La(Ea,Fa,qa)];return!ya||!ya.source?null:(Zr>1&&console.log("found parent tile z%d-%d-%d",Ea,Fa,qa),Zr>1&&console.time("drilling down"),this.splitTile(ya.source,Ea,Fa,qa,Wt,zt,Vt),Zr>1&&console.timeEnd("drilling down"),this.tiles[Xr]?xt(this.tiles[Xr],xr):null)};function La(Wt,zt,Vt){return((1<<Wt)*Vt+zt)*32+Wt}function ka(Wt,zt){for(var Vt in zt)Wt[Vt]=zt[Vt];return Wt}function Ga(Wt,zt){var Vt=Wt.tileID.canonical;if(!this._geoJSONIndex)return zt(null,null);var Ut=this._geoJSONIndex.getTile(Vt.z,Vt.x,Vt.y);if(!Ut)return zt(null,null);var xr=new b(Ut.features),Zr=P(xr);(Zr.byteOffset!==0||Zr.byteLength!==Zr.buffer.byteLength)&&(Zr=new Uint8Array(Zr)),zt(null,{vectorTile:xr,rawData:Zr.buffer})}var Ma=function(Wt){function zt(Vt,Ut,xr,Zr){Wt.call(this,Vt,Ut,xr,Ga),Zr&&(this.loadGeoJSON=Zr)}return Wt&&(zt.__proto__=Wt),zt.prototype=Object.create(Wt&&Wt.prototype),zt.prototype.constructor=zt,zt.prototype.loadData=function(Ut,xr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),this._pendingCallback=xr,this._pendingLoadDataParams=Ut,this._state&&this._state!=="Idle"?this._state="NeedsLoadData":(this._state="Coalescing",this._loadData())},zt.prototype._loadData=function(){var Ut=this;if(!(!this._pendingCallback||!this._pendingLoadDataParams)){var xr=this._pendingCallback,Zr=this._pendingLoadDataParams;delete this._pendingCallback,delete this._pendingLoadDataParams;var pa=Zr&&Zr.request&&Zr.request.collectResourceTiming?new e.RequestPerformance(Zr.request):!1;this.loadGeoJSON(Zr,function(Xr,Ea){if(Xr||!Ea)return xr(Xr);if(typeof Ea!="object")return xr(new Error("Input data given to '"+Zr.source+"' is not a valid GeoJSON object."));l(Ea,!0);try{if(Zr.filter){var Fa=e.createExpression(Zr.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Fa.result==="error")throw new Error(Fa.value.map(function(mt){return mt.key+": "+mt.message}).join(", "));var qa=Ea.features.filter(function(mt){return Fa.value.evaluate({zoom:0},mt)});Ea={type:"FeatureCollection",features:qa}}Ut._geoJSONIndex=Zr.cluster?new Ae(Ua(Zr)).load(Ea.features):sa(Ea,Zr.geojsonVtOptions)}catch(mt){return xr(mt)}Ut.loaded={};var ya={};if(pa){var $a=pa.finish();$a&&(ya.resourceTiming={},ya.resourceTiming[Zr.source]=JSON.parse(JSON.stringify($a)))}xr(null,ya)})}},zt.prototype.coalesce=function(){this._state==="Coalescing"?this._state="Idle":this._state==="NeedsLoadData"&&(this._state="Coalescing",this._loadData())},zt.prototype.reloadTile=function(Ut,xr){var Zr=this.loaded,pa=Ut.uid;return Zr&&Zr[pa]?Wt.prototype.reloadTile.call(this,Ut,xr):this.loadTile(Ut,xr)},zt.prototype.loadGeoJSON=function(Ut,xr){if(Ut.request)e.getJSON(Ut.request,xr);else if(typeof Ut.data=="string")try{return xr(null,JSON.parse(Ut.data))}catch{return xr(new Error("Input data given to '"+Ut.source+"' is not a valid GeoJSON object."))}else return xr(new Error("Input data given to '"+Ut.source+"' is not a valid GeoJSON object."))},zt.prototype.removeSource=function(Ut,xr){this._pendingCallback&&this._pendingCallback(null,{abandoned:!0}),xr()},zt.prototype.getClusterExpansionZoom=function(Ut,xr){try{xr(null,this._geoJSONIndex.getClusterExpansionZoom(Ut.clusterId))}catch(Zr){xr(Zr)}},zt.prototype.getClusterChildren=function(Ut,xr){try{xr(null,this._geoJSONIndex.getChildren(Ut.clusterId))}catch(Zr){xr(Zr)}},zt.prototype.getClusterLeaves=function(Ut,xr){try{xr(null,this._geoJSONIndex.getLeaves(Ut.clusterId,Ut.limit,Ut.offset))}catch(Zr){xr(Zr)}},zt}(v);function Ua(Wt){var zt=Wt.superclusterOptions,Vt=Wt.clusterProperties;if(!Vt||!zt)return zt;for(var Ut={},xr={},Zr={accumulated:null,zoom:0},pa={properties:null},Xr=Object.keys(Vt),Ea=0,Fa=Xr;Ea<Fa.length;Ea+=1){var qa=Fa[Ea],ya=Vt[qa],$a=ya[0],mt=ya[1],gt=e.createExpression(mt),Er=e.createExpression(typeof $a=="string"?[$a,["accumulated"],["get",qa]]:$a);Ut[qa]=gt.value,xr[qa]=Er.value}return zt.map=function(kr){pa.properties=kr;for(var br={},Tr=0,Mr=Xr;Tr<Mr.length;Tr+=1){var Fr=Mr[Tr];br[Fr]=Ut[Fr].evaluate(Zr,pa)}return br},zt.reduce=function(kr,br){pa.properties=br;for(var Tr=0,Mr=Xr;Tr<Mr.length;Tr+=1){var Fr=Mr[Tr];Zr.accumulated=kr[Fr],kr[Fr]=xr[Fr].evaluate(Zr,pa)}},zt}var ni=function(zt){var Vt=this;this.self=zt,this.actor=new e.Actor(zt,this),this.layerIndexes={},this.availableImages={},this.workerSourceTypes={vector:v,geojson:Ma},this.workerSources={},this.demWorkerSources={},this.self.registerWorkerSource=function(Ut,xr){if(Vt.workerSourceTypes[Ut])throw new Error('Worker source with name "'+Ut+'" already registered.');Vt.workerSourceTypes[Ut]=xr},this.self.registerRTLTextPlugin=function(Ut){if(e.plugin.isParsed())throw new Error("RTL text plugin already registered.");e.plugin.applyArabicShaping=Ut.applyArabicShaping,e.plugin.processBidirectionalText=Ut.processBidirectionalText,e.plugin.processStyledBidirectionalText=Ut.processStyledBidirectionalText}};return ni.prototype.setReferrer=function(zt,Vt){this.referrer=Vt},ni.prototype.setImages=function(zt,Vt,Ut){this.availableImages[zt]=Vt;for(var xr in this.workerSources[zt]){var Zr=this.workerSources[zt][xr];for(var pa in Zr)Zr[pa].availableImages=Vt}Ut()},ni.prototype.setLayers=function(zt,Vt,Ut){this.getLayerIndex(zt).replace(Vt),Ut()},ni.prototype.updateLayers=function(zt,Vt,Ut){this.getLayerIndex(zt).update(Vt.layers,Vt.removedIds),Ut()},ni.prototype.loadTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).loadTile(Vt,Ut)},ni.prototype.loadDEMTile=function(zt,Vt,Ut){this.getDEMWorkerSource(zt,Vt.source).loadTile(Vt,Ut)},ni.prototype.reloadTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).reloadTile(Vt,Ut)},ni.prototype.abortTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).abortTile(Vt,Ut)},ni.prototype.removeTile=function(zt,Vt,Ut){this.getWorkerSource(zt,Vt.type,Vt.source).removeTile(Vt,Ut)},ni.prototype.removeDEMTile=function(zt,Vt){this.getDEMWorkerSource(zt,Vt.source).removeTile(Vt)},ni.prototype.removeSource=function(zt,Vt,Ut){if(!(!this.workerSources[zt]||!this.workerSources[zt][Vt.type]||!this.workerSources[zt][Vt.type][Vt.source])){var xr=this.workerSources[zt][Vt.type][Vt.source];delete this.workerSources[zt][Vt.type][Vt.source],xr.removeSource!==void 0?xr.removeSource(Vt,Ut):Ut()}},ni.prototype.loadWorkerSource=function(zt,Vt,Ut){try{this.self.importScripts(Vt.url),Ut()}catch(xr){Ut(xr.toString())}},ni.prototype.syncRTLPluginState=function(zt,Vt,Ut){try{e.plugin.setState(Vt);var xr=e.plugin.getPluginURL();if(e.plugin.isLoaded()&&!e.plugin.isParsed()&&xr!=null){this.self.importScripts(xr);var Zr=e.plugin.isParsed(),pa=Zr?void 0:new Error("RTL Text Plugin failed to import scripts from "+xr);Ut(pa,Zr)}}catch(Xr){Ut(Xr.toString())}},ni.prototype.getAvailableImages=function(zt){var Vt=this.availableImages[zt];return Vt||(Vt=[]),Vt},ni.prototype.getLayerIndex=function(zt){var Vt=this.layerIndexes[zt];return Vt||(Vt=this.layerIndexes[zt]=new a),Vt},ni.prototype.getWorkerSource=function(zt,Vt,Ut){var xr=this;if(this.workerSources[zt]||(this.workerSources[zt]={}),this.workerSources[zt][Vt]||(this.workerSources[zt][Vt]={}),!this.workerSources[zt][Vt][Ut]){var Zr={send:function(pa,Xr,Ea){xr.actor.send(pa,Xr,Ea,zt)}};this.workerSources[zt][Vt][Ut]=new this.workerSourceTypes[Vt](Zr,this.getLayerIndex(zt),this.getAvailableImages(zt))}return this.workerSources[zt][Vt][Ut]},ni.prototype.getDEMWorkerSource=function(zt,Vt){return this.demWorkerSources[zt]||(this.demWorkerSources[zt]={}),this.demWorkerSources[zt][Vt]||(this.demWorkerSources[zt][Vt]=new T),this.demWorkerSources[zt][Vt]},ni.prototype.enforceCacheSizeLimit=function(zt,Vt){e.enforceCacheSizeLimit(Vt)},typeof WorkerGlobalScope<"u"&&typeof self<"u"&&self instanceof WorkerGlobalScope&&(self.worker=new ni(self)),ni}),M(["./shared"],function(e){"use strict";var t=e.createCommonjsModule(function(ve){ve.exports?ve.exports=K:window&&(window.mapboxgl=window.mapboxgl||{},window.mapboxgl.supported=K,window.mapboxgl.notSupportedReason=ye);function K(Pr){return!ye(Pr)}function ye(Pr){if(!te())return"not a browser";if(!xe())return"insufficent Array support";if(!We())return"insufficient Function support";if(!He())return"insufficient Object support";if(!st())return"insufficient JSON support";if(!Et())return"insufficient worker support";if(!Ht())return"insufficient Uint8ClampedArray support";if(!yr())return"insufficient ArrayBuffer support";if(!Ir())return"insufficient Canvas/getImageData support";if(!qt(Pr&&Pr.failIfMajorPerformanceCaveat))return"insufficient WebGL support"}function te(){return typeof window<"u"&&typeof document<"u"}function xe(){return 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 We(){return Function.prototype&&Function.prototype.bind}function He(){return 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}function st(){return"JSON"in window&&"parse"in JSON&&"stringify"in JSON}function Et(){if(!("Worker"in window&&"Blob"in window&&"URL"in window))return!1;var Pr=new Blob([""],{type:"text/javascript"}),Vr=URL.createObjectURL(Pr),Hr,aa;try{aa=new Worker(Vr),Hr=!0}catch{Hr=!1}return aa&&aa.terminate(),URL.revokeObjectURL(Vr),Hr}function Ht(){return"Uint8ClampedArray"in window}function yr(){return ArrayBuffer.isView}function Ir(){var Pr=document.createElement("canvas");Pr.width=Pr.height=1;var Vr=Pr.getContext("2d");if(!Vr)return!1;var Hr=Vr.getImageData(0,0,1,1);return Hr&&Hr.width===Pr.width}var wr={};function qt(Pr){return wr[Pr]===void 0&&(wr[Pr]=dr(Pr)),wr[Pr]}K.webGLContextAttributes={antialias:!1,alpha:!0,stencil:!0,depth:!0};function tr(Pr){var Vr=document.createElement("canvas"),Hr=Object.create(K.webGLContextAttributes);return Hr.failIfMajorPerformanceCaveat=Pr,Vr.probablySupportsContext?Vr.probablySupportsContext("webgl",Hr)||Vr.probablySupportsContext("experimental-webgl",Hr):Vr.supportsContext?Vr.supportsContext("webgl",Hr)||Vr.supportsContext("experimental-webgl",Hr):Vr.getContext("webgl",Hr)||Vr.getContext("experimental-webgl",Hr)}function dr(Pr){var Vr=tr(Pr);if(!Vr)return!1;var Hr=Vr.createShader(Vr.VERTEX_SHADER);return!Hr||Vr.isContextLost()?!1:(Vr.shaderSource(Hr,"void main() {}"),Vr.compileShader(Hr),Vr.getShaderParameter(Hr,Vr.COMPILE_STATUS)===!0)}}),r={};r.create=function(ve,K,ye){var te=e.window.document.createElement(ve);return K!==void 0&&(te.className=K),ye&&ye.appendChild(te),te},r.createNS=function(ve,K){var ye=e.window.document.createElementNS(ve,K);return ye};var o=e.window.document&&e.window.document.documentElement.style;function a(ve){if(!o)return ve[0];for(var K=0;K<ve.length;K++)if(ve[K]in o)return ve[K];return ve[0]}var i=a(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),n;r.disableDrag=function(){o&&i&&(n=o[i],o[i]="none")},r.enableDrag=function(){o&&i&&(o[i]=n)};var s=a(["transform","WebkitTransform"]);r.setTransform=function(ve,K){ve.style[s]=K};var c=!1;try{var h=Object.defineProperty({},"passive",{get:function(){c=!0}});e.window.addEventListener("test",h,h),e.window.removeEventListener("test",h,h)}catch{c=!1}r.addEventListener=function(ve,K,ye,te){te===void 0&&(te={}),"passive"in te&&c?ve.addEventListener(K,ye,te):ve.addEventListener(K,ye,te.capture)},r.removeEventListener=function(ve,K,ye,te){te===void 0&&(te={}),"passive"in te&&c?ve.removeEventListener(K,ye,te):ve.removeEventListener(K,ye,te.capture)};var v=function(ve){ve.preventDefault(),ve.stopPropagation(),e.window.removeEventListener("click",v,!0)};r.suppressClick=function(){e.window.addEventListener("click",v,!0),e.window.setTimeout(function(){e.window.removeEventListener("click",v,!0)},0)},r.mousePos=function(ve,K){var ye=ve.getBoundingClientRect();return new e.Point(K.clientX-ye.left-ve.clientLeft,K.clientY-ye.top-ve.clientTop)},r.touchPos=function(ve,K){for(var ye=ve.getBoundingClientRect(),te=[],xe=0;xe<K.length;xe++)te.push(new e.Point(K[xe].clientX-ye.left-ve.clientLeft,K[xe].clientY-ye.top-ve.clientTop));return te},r.mouseButton=function(ve){return typeof e.window.InstallTrigger<"u"&&ve.button===2&&ve.ctrlKey&&e.window.navigator.platform.toUpperCase().indexOf("MAC")>=0?0:ve.button},r.remove=function(ve){ve.parentNode&&ve.parentNode.removeChild(ve)};function p(ve,K,ye){var te,xe,We,He=e.browser.devicePixelRatio>1?"@2x":"",st=e.getJSON(K.transformRequest(K.normalizeSpriteURL(ve,He,".json"),e.ResourceType.SpriteJSON),function(yr,Ir){st=null,We||(We=yr,te=Ir,Ht())}),Et=e.getImage(K.transformRequest(K.normalizeSpriteURL(ve,He,".png"),e.ResourceType.SpriteImage),function(yr,Ir){Et=null,We||(We=yr,xe=Ir,Ht())});function Ht(){if(We)ye(We);else if(te&&xe){var yr=e.browser.getImageData(xe),Ir={};for(var wr in te){var qt=te[wr],tr=qt.width,dr=qt.height,Pr=qt.x,Vr=qt.y,Hr=qt.sdf,aa=qt.pixelRatio,Qr=qt.stretchX,Gr=qt.stretchY,ia=qt.content,Ur=new e.RGBAImage({width:tr,height:dr});e.RGBAImage.copy(yr,Ur,{x:Pr,y:Vr},{x:0,y:0},{width:tr,height:dr}),Ir[wr]={data:Ur,pixelRatio:aa,sdf:Hr,stretchX:Qr,stretchY:Gr,content:ia}}ye(null,Ir)}}return{cancel:function(){st&&(st.cancel(),st=null),Et&&(Et.cancel(),Et=null)}}}function T(ve){var K=ve.userImage;if(K&&K.render){var ye=K.render();if(ye)return ve.data.replace(new Uint8Array(K.data.buffer)),!0}return!1}var l=1,_=function(ve){function K(){ve.call(this),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new e.RGBAImage({width:1,height:1}),this.dirty=!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.isLoaded=function(){return this.loaded},K.prototype.setLoaded=function(te){if(this.loaded!==te&&(this.loaded=te,te)){for(var xe=0,We=this.requestors;xe<We.length;xe+=1){var He=We[xe],st=He.ids,Et=He.callback;this._notify(st,Et)}this.requestors=[]}},K.prototype.getImage=function(te){return this.images[te]},K.prototype.addImage=function(te,xe){this._validate(te,xe)&&(this.images[te]=xe)},K.prototype._validate=function(te,xe){var We=!0;return this._validateStretch(xe.stretchX,xe.data&&xe.data.width)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "stretchX" value'))),We=!1),this._validateStretch(xe.stretchY,xe.data&&xe.data.height)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "stretchY" value'))),We=!1),this._validateContent(xe.content,xe)||(this.fire(new e.ErrorEvent(new Error('Image "'+te+'" has invalid "content" value'))),We=!1),We},K.prototype._validateStretch=function(te,xe){if(!te)return!0;for(var We=0,He=0,st=te;He<st.length;He+=1){var Et=st[He];if(Et[0]<We||Et[1]<Et[0]||xe<Et[1])return!1;We=Et[1]}return!0},K.prototype._validateContent=function(te,xe){return te?!(te.length!==4||te[0]<0||xe.data.width<te[0]||te[1]<0||xe.data.height<te[1]||te[2]<0||xe.data.width<te[2]||te[3]<0||xe.data.height<te[3]||te[2]<te[0]||te[3]<te[1]):!0},K.prototype.updateImage=function(te,xe){var We=this.images[te];xe.version=We.version+1,this.images[te]=xe,this.updatedImages[te]=!0},K.prototype.removeImage=function(te){var xe=this.images[te];delete this.images[te],delete this.patterns[te],xe.userImage&&xe.userImage.onRemove&&xe.userImage.onRemove()},K.prototype.listImages=function(){return Object.keys(this.images)},K.prototype.getImages=function(te,xe){var We=!0;if(!this.isLoaded())for(var He=0,st=te;He<st.length;He+=1){var Et=st[He];this.images[Et]||(We=!1)}this.isLoaded()||We?this._notify(te,xe):this.requestors.push({ids:te,callback:xe})},K.prototype._notify=function(te,xe){for(var We={},He=0,st=te;He<st.length;He+=1){var Et=st[He];this.images[Et]||this.fire(new e.Event("styleimagemissing",{id:Et}));var Ht=this.images[Et];Ht?We[Et]={data:Ht.data.clone(),pixelRatio:Ht.pixelRatio,sdf:Ht.sdf,version:Ht.version,stretchX:Ht.stretchX,stretchY:Ht.stretchY,content:Ht.content,hasRenderCallback:!!(Ht.userImage&&Ht.userImage.render)}:e.warnOnce('Image "'+Et+'" 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.')}xe(null,We)},K.prototype.getPixelSize=function(){var te=this.atlasImage,xe=te.width,We=te.height;return{width:xe,height:We}},K.prototype.getPattern=function(te){var xe=this.patterns[te],We=this.getImage(te);if(!We)return null;if(xe&&xe.position.version===We.version)return xe.position;if(xe)xe.position.version=We.version;else{var He=We.data.width+l*2,st=We.data.height+l*2,Et={w:He,h:st,x:0,y:0},Ht=new e.ImagePosition(Et,We);this.patterns[te]={bin:Et,position:Ht}}return this._updatePatternAtlas(),this.patterns[te].position},K.prototype.bind=function(te){var xe=te.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new e.Texture(te,this.atlasImage,xe.RGBA),this.atlasTexture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE)},K.prototype._updatePatternAtlas=function(){var te=[];for(var xe in this.patterns)te.push(this.patterns[xe].bin);var We=e.potpack(te),He=We.w,st=We.h,Et=this.atlasImage;Et.resize({width:He||1,height:st||1});for(var Ht in this.patterns){var yr=this.patterns[Ht],Ir=yr.bin,wr=Ir.x+l,qt=Ir.y+l,tr=this.images[Ht].data,dr=tr.width,Pr=tr.height;e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr,y:qt},{width:dr,height:Pr}),e.RGBAImage.copy(tr,Et,{x:0,y:Pr-1},{x:wr,y:qt-1},{width:dr,height:1}),e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr,y:qt+Pr},{width:dr,height:1}),e.RGBAImage.copy(tr,Et,{x:dr-1,y:0},{x:wr-1,y:qt},{width:1,height:Pr}),e.RGBAImage.copy(tr,Et,{x:0,y:0},{x:wr+dr,y:qt},{width:1,height:Pr})}this.dirty=!0},K.prototype.beginFrame=function(){this.callbackDispatchedThisFrame={}},K.prototype.dispatchRenderCallbacks=function(te){for(var xe=0,We=te;xe<We.length;xe+=1){var He=We[xe];if(!this.callbackDispatchedThisFrame[He]){this.callbackDispatchedThisFrame[He]=!0;var st=this.images[He],Et=T(st);Et&&this.updateImage(He,st)}}},K}(e.Evented);function w(ve,K,ye,te,xe){var We=K*256,He=We+255,st=te.transformRequest(te.normalizeGlyphsURL(ye).replace("{fontstack}",ve).replace("{range}",We+"-"+He),e.ResourceType.Glyphs);e.getArrayBuffer(st,function(Et,Ht){if(Et)xe(Et);else if(Ht){for(var yr={},Ir=0,wr=e.parseGlyphPBF(Ht);Ir<wr.length;Ir+=1){var qt=wr[Ir];yr[qt.id]=qt}xe(null,yr)}})}var S=b,E=b,m=1e20;function b(ve,K,ye,te,xe,We){this.fontSize=ve||24,this.buffer=K===void 0?3:K,this.cutoff=te||.25,this.fontFamily=xe||"sans-serif",this.fontWeight=We||"normal",this.radius=ye||8;var He=this.size=this.fontSize+this.buffer*2;this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=He,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(He*He),this.gridInner=new Float64Array(He*He),this.f=new Float64Array(He),this.d=new Float64Array(He),this.z=new Float64Array(He+1),this.v=new Int16Array(He),this.middle=Math.round(He/2*(navigator.userAgent.indexOf("Gecko/")>=0?1.2:1))}b.prototype.draw=function(ve){this.ctx.clearRect(0,0,this.size,this.size),this.ctx.fillText(ve,this.buffer,this.middle);for(var K=this.ctx.getImageData(0,0,this.size,this.size),ye=new Uint8ClampedArray(this.size*this.size),te=0;te<this.size*this.size;te++){var xe=K.data[te*4+3]/255;this.gridOuter[te]=xe===1?0:xe===0?m:Math.pow(Math.max(0,.5-xe),2),this.gridInner[te]=xe===1?m:xe===0?0:Math.pow(Math.max(0,xe-.5),2)}for(d(this.gridOuter,this.size,this.size,this.f,this.d,this.v,this.z),d(this.gridInner,this.size,this.size,this.f,this.d,this.v,this.z),te=0;te<this.size*this.size;te++){var We=this.gridOuter[te]-this.gridInner[te];ye[te]=Math.max(0,Math.min(255,Math.round(255-255*(We/this.radius+this.cutoff))))}return ye};function d(ve,K,ye,te,xe,We,He){for(var st=0;st<K;st++){for(var Et=0;Et<ye;Et++)te[Et]=ve[Et*K+st];for(u(te,xe,We,He,ye),Et=0;Et<ye;Et++)ve[Et*K+st]=xe[Et]}for(Et=0;Et<ye;Et++){for(st=0;st<K;st++)te[st]=ve[Et*K+st];for(u(te,xe,We,He,K),st=0;st<K;st++)ve[Et*K+st]=Math.sqrt(xe[st])}}function u(ve,K,ye,te,xe){ye[0]=0,te[0]=-m,te[1]=+m;for(var We=1,He=0;We<xe;We++){for(var st=(ve[We]+We*We-(ve[ye[He]]+ye[He]*ye[He]))/(2*We-2*ye[He]);st<=te[He];)He--,st=(ve[We]+We*We-(ve[ye[He]]+ye[He]*ye[He]))/(2*We-2*ye[He]);He++,ye[He]=We,te[He]=st,te[He+1]=+m}for(We=0,He=0;We<xe;We++){for(;te[He+1]<We;)He++;K[We]=(We-ye[He])*(We-ye[He])+ve[ye[He]]}}S.default=E;var y=function(K,ye){this.requestManager=K,this.localIdeographFontFamily=ye,this.entries={}};y.prototype.setURL=function(K){this.url=K},y.prototype.getGlyphs=function(K,ye){var te=this,xe=[];for(var We in K)for(var He=0,st=K[We];He<st.length;He+=1){var Et=st[He];xe.push({stack:We,id:Et})}e.asyncAll(xe,function(Ht,yr){var Ir=Ht.stack,wr=Ht.id,qt=te.entries[Ir];qt||(qt=te.entries[Ir]={glyphs:{},requests:{},ranges:{}});var tr=qt.glyphs[wr];if(tr!==void 0){yr(null,{stack:Ir,id:wr,glyph:tr});return}if(tr=te._tinySDF(qt,Ir,wr),tr){qt.glyphs[wr]=tr,yr(null,{stack:Ir,id:wr,glyph:tr});return}var dr=Math.floor(wr/256);if(dr*256>65535){yr(new Error("glyphs > 65535 not supported"));return}if(qt.ranges[dr]){yr(null,{stack:Ir,id:wr,glyph:tr});return}var Pr=qt.requests[dr];Pr||(Pr=qt.requests[dr]=[],y.loadGlyphRange(Ir,dr,te.url,te.requestManager,function(Vr,Hr){if(Hr){for(var aa in Hr)te._doesCharSupportLocalGlyph(+aa)||(qt.glyphs[+aa]=Hr[+aa]);qt.ranges[dr]=!0}for(var Qr=0,Gr=Pr;Qr<Gr.length;Qr+=1){var ia=Gr[Qr];ia(Vr,Hr)}delete qt.requests[dr]})),Pr.push(function(Vr,Hr){Vr?yr(Vr):Hr&&yr(null,{stack:Ir,id:wr,glyph:Hr[wr]||null})})},function(Ht,yr){if(Ht)ye(Ht);else if(yr){for(var Ir={},wr=0,qt=yr;wr<qt.length;wr+=1){var tr=qt[wr],dr=tr.stack,Pr=tr.id,Vr=tr.glyph;(Ir[dr]||(Ir[dr]={}))[Pr]=Vr&&{id:Vr.id,bitmap:Vr.bitmap.clone(),metrics:Vr.metrics}}ye(null,Ir)}})},y.prototype._doesCharSupportLocalGlyph=function(K){return!!this.localIdeographFontFamily&&(e.isChar["CJK Unified Ideographs"](K)||e.isChar["Hangul Syllables"](K)||e.isChar.Hiragana(K)||e.isChar.Katakana(K))},y.prototype._tinySDF=function(K,ye,te){var xe=this.localIdeographFontFamily;if(xe&&this._doesCharSupportLocalGlyph(te)){var We=K.tinySDF;if(!We){var He="400";/bold/i.test(ye)?He="900":/medium/i.test(ye)?He="500":/light/i.test(ye)&&(He="200"),We=K.tinySDF=new y.TinySDF(24,3,8,.25,xe,He)}return{id:te,bitmap:new e.AlphaImage({width:30,height:30},We.draw(String.fromCharCode(te))),metrics:{width:24,height:24,left:0,top:-8,advance:24}}}},y.loadGlyphRange=w,y.TinySDF=S;var f=function(){this.specification=e.styleSpec.light.position};f.prototype.possiblyEvaluate=function(K,ye){return e.sphericalToCartesian(K.expression.evaluate(ye))},f.prototype.interpolate=function(K,ye,te){return{x:e.number(K.x,ye.x,te),y:e.number(K.y,ye.y,te),z:e.number(K.z,ye.z,te)}};var P=new e.Properties({anchor:new e.DataConstantProperty(e.styleSpec.light.anchor),position:new f,color:new e.DataConstantProperty(e.styleSpec.light.color),intensity:new e.DataConstantProperty(e.styleSpec.light.intensity)}),L="-transition",z=function(ve){function K(ye){ve.call(this),this._transitionable=new e.Transitionable(P),this.setLight(ye),this._transitioning=this._transitionable.untransitioned()}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getLight=function(){return this._transitionable.serialize()},K.prototype.setLight=function(te,xe){if(xe===void 0&&(xe={}),!this._validate(e.validateLight,te,xe))for(var We in te){var He=te[We];e.endsWith(We,L)?this._transitionable.setTransition(We.slice(0,-L.length),He):this._transitionable.setValue(We,He)}},K.prototype.updateTransitions=function(te){this._transitioning=this._transitionable.transitioned(te,this._transitioning)},K.prototype.hasTransition=function(){return this._transitioning.hasTransition()},K.prototype.recalculate=function(te){this.properties=this._transitioning.possiblyEvaluate(te)},K.prototype._validate=function(te,xe,We){return We&&We.validate===!1?!1:e.emitValidationErrors(this,te.call(e.validateStyle,e.extend({value:xe,style:{glyphs:!0,sprite:!0},styleSpec:e.styleSpec})))},K}(e.Evented),F=function(K,ye){this.width=K,this.height=ye,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}};F.prototype.getDash=function(K,ye){var te=K.join(",")+String(ye);return this.dashEntry[te]||(this.dashEntry[te]=this.addDash(K,ye)),this.dashEntry[te]},F.prototype.getDashRanges=function(K,ye,te){var xe=K.length%2===1,We=[],He=xe?-K[K.length-1]*te:0,st=K[0]*te,Et=!0;We.push({left:He,right:st,isDash:Et,zeroLength:K[0]===0});for(var Ht=K[0],yr=1;yr<K.length;yr++){Et=!Et;var Ir=K[yr];He=Ht*te,Ht+=Ir,st=Ht*te,We.push({left:He,right:st,isDash:Et,zeroLength:Ir===0})}return We},F.prototype.addRoundDash=function(K,ye,te){for(var xe=ye/2,We=-te;We<=te;We++)for(var He=this.nextRow+te+We,st=this.width*He,Et=0,Ht=K[Et],yr=0;yr<this.width;yr++){yr/Ht.right>1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=void 0,dr=We/te*(xe+1);if(Ht.isDash){var Pr=xe-Math.abs(dr);tr=Math.sqrt(qt*qt+Pr*Pr)}else tr=xe-Math.sqrt(qt*qt+dr*dr);this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addRegularDash=function(K){for(var ye=K.length-1;ye>=0;--ye){var te=K[ye],xe=K[ye+1];te.zeroLength?K.splice(ye,1):xe&&xe.isDash===te.isDash&&(xe.left=te.left,K.splice(ye,1))}var We=K[0],He=K[K.length-1];We.isDash===He.isDash&&(We.left=He.left-this.width,He.right=We.right+this.width);for(var st=this.width*this.nextRow,Et=0,Ht=K[Et],yr=0;yr<this.width;yr++){yr/Ht.right>1&&(Ht=K[++Et]);var Ir=Math.abs(yr-Ht.left),wr=Math.abs(yr-Ht.right),qt=Math.min(Ir,wr),tr=Ht.isDash?qt:-qt;this.data[st+yr]=Math.max(0,Math.min(255,tr+128))}},F.prototype.addDash=function(K,ye){var te=ye?7:0,xe=2*te+1;if(this.nextRow+xe>this.height)return e.warnOnce("LineAtlas out of space"),null;for(var We=0,He=0;He<K.length;He++)We+=K[He];if(We!==0){var st=this.width/We,Et=this.getDashRanges(K,this.width,st);ye?this.addRoundDash(Et,st,te):this.addRegularDash(Et)}var Ht={y:(this.nextRow+te+.5)/this.height,height:2*te/this.height,width:We};return this.nextRow+=xe,this.dirty=!0,Ht},F.prototype.bind=function(K){var ye=K.gl;this.texture?(ye.bindTexture(ye.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,ye.texSubImage2D(ye.TEXTURE_2D,0,0,0,this.width,this.height,ye.ALPHA,ye.UNSIGNED_BYTE,this.data))):(this.texture=ye.createTexture(),ye.bindTexture(ye.TEXTURE_2D,this.texture),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_WRAP_S,ye.REPEAT),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_WRAP_T,ye.REPEAT),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_MIN_FILTER,ye.LINEAR),ye.texParameteri(ye.TEXTURE_2D,ye.TEXTURE_MAG_FILTER,ye.LINEAR),ye.texImage2D(ye.TEXTURE_2D,0,ye.ALPHA,this.width,this.height,0,ye.ALPHA,ye.UNSIGNED_BYTE,this.data))};var B=function ve(K,ye){this.workerPool=K,this.actors=[],this.currentActor=0,this.id=e.uniqueId();for(var te=this.workerPool.acquire(this.id),xe=0;xe<te.length;xe++){var We=te[xe],He=new ve.Actor(We,ye,this.id);He.name="Worker "+xe,this.actors.push(He)}};B.prototype.broadcast=function(K,ye,te){te=te||function(){},e.asyncAll(this.actors,function(xe,We){xe.send(K,ye,We)},te)},B.prototype.getActor=function(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]},B.prototype.remove=function(){this.actors.forEach(function(K){K.remove()}),this.actors=[],this.workerPool.release(this.id)},B.Actor=e.Actor;function O(ve,K,ye){var te=function(xe,We){if(xe)return ye(xe);if(We){var He=e.pick(e.extend(We,ve),["tiles","minzoom","maxzoom","attribution","mapbox_logo","bounds","scheme","tileSize","encoding"]);We.vector_layers&&(He.vectorLayers=We.vector_layers,He.vectorLayerIds=He.vectorLayers.map(function(st){return st.id})),He.tiles=K.canonicalizeTileset(He,ve.url),ye(null,He)}};return ve.url?e.getJSON(K.transformRequest(K.normalizeSourceURL(ve.url),e.ResourceType.Source),te):e.browser.frame(function(){return te(null,ve)})}var I=function(K,ye,te){this.bounds=e.LngLatBounds.convert(this.validateBounds(K)),this.minzoom=ye||0,this.maxzoom=te||24};I.prototype.validateBounds=function(K){return!Array.isArray(K)||K.length!==4?[-180,-90,180,90]:[Math.max(-180,K[0]),Math.max(-90,K[1]),Math.min(180,K[2]),Math.min(90,K[3])]},I.prototype.contains=function(K){var ye=Math.pow(2,K.z),te={minX:Math.floor(e.mercatorXfromLng(this.bounds.getWest())*ye),minY:Math.floor(e.mercatorYfromLat(this.bounds.getNorth())*ye),maxX:Math.ceil(e.mercatorXfromLng(this.bounds.getEast())*ye),maxY:Math.ceil(e.mercatorYfromLat(this.bounds.getSouth())*ye)},xe=K.x>=te.minX&&K.x<te.maxX&&K.y>=te.minY&&K.y<te.maxY;return xe};var N=function(ve){function K(ye,te,xe,We){if(ve.call(this),this.id=ye,this.dispatcher=xe,this.type="vector",this.minzoom=0,this.maxzoom=22,this.scheme="xyz",this.tileSize=512,this.reparseOverscaled=!0,this.isTileClipped=!0,this._loaded=!1,e.extend(this,e.pick(te,["url","scheme","tileSize","promoteId"])),this._options=e.extend({type:"vector"},te),this._collectResourceTiming=te.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(We)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(xe,We){te._tileJSONRequest=null,te._loaded=!0,xe?te.fire(new e.ErrorEvent(xe)):We&&(e.extend(te,We),We.bounds&&(te.tileBounds=new I(We.bounds,te.minzoom,te.maxzoom)),e.postTurnstileEvent(We.tiles,te.map._requestManager._customAccessToken),e.postMapLoadEvent(We.tiles,te.map._getMapId(),te.map._requestManager._skuToken,te.map._requestManager._customAccessToken),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))})},K.prototype.loaded=function(){return this._loaded},K.prototype.hasTile=function(te){return!this.tileBounds||this.tileBounds.contains(te.canonical)},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setSourceProperty=function(te){this._tileJSONRequest&&this._tileJSONRequest.cancel(),te();var xe=this.map.style.sourceCaches[this.id];xe.clearTiles(),this.load()},K.prototype.setTiles=function(te){var xe=this;return this.setSourceProperty(function(){xe._options.tiles=te}),this},K.prototype.setUrl=function(te){var xe=this;return this.setSourceProperty(function(){xe.url=te,xe._options.url=te}),this},K.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},K.prototype.serialize=function(){return e.extend({},this._options)},K.prototype.loadTile=function(te,xe){var We=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme)),He={request:this.map._requestManager.transformRequest(We,e.ResourceType.Tile),uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,tileSize:this.tileSize*te.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};He.request.collectResourceTiming=this._collectResourceTiming,!te.actor||te.state==="expired"?(te.actor=this.dispatcher.getActor(),te.request=te.actor.send("loadTile",He,st.bind(this))):te.state==="loading"?te.reloadCallback=xe:te.request=te.actor.send("reloadTile",He,st.bind(this));function st(Et,Ht){if(delete te.request,te.aborted)return xe(null);if(Et&&Et.status!==404)return xe(Et);Ht&&Ht.resourceTiming&&(te.resourceTiming=Ht.resourceTiming),this.map._refreshExpiredTiles&&Ht&&te.setExpiryData(Ht),te.loadVectorData(Ht,this.map.painter),e.cacheEntryPossiblyAdded(this.dispatcher),xe(null),te.reloadCallback&&(this.loadTile(te,te.reloadCallback),te.reloadCallback=null)}},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.actor&&te.actor.send("abortTile",{uid:te.uid,type:this.type,source:this.id},void 0)},K.prototype.unloadTile=function(te){te.unloadVectorData(),te.actor&&te.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id},void 0)},K.prototype.hasTransition=function(){return!1},K}(e.Evented),U=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.dispatcher=xe,this.setEventedParent(We),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=e.extend({type:"raster"},te),e.extend(this,e.pick(te,["url","scheme","tileSize"]))}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this._tileJSONRequest=O(this._options,this.map._requestManager,function(xe,We){te._tileJSONRequest=null,te._loaded=!0,xe?te.fire(new e.ErrorEvent(xe)):We&&(e.extend(te,We),We.bounds&&(te.tileBounds=new I(We.bounds,te.minzoom,te.maxzoom)),e.postTurnstileEvent(We.tiles),e.postMapLoadEvent(We.tiles,te.map._getMapId(),te.map._requestManager._skuToken),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})),te.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})))})},K.prototype.loaded=function(){return this._loaded},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.onRemove=function(){this._tileJSONRequest&&(this._tileJSONRequest.cancel(),this._tileJSONRequest=null)},K.prototype.serialize=function(){return e.extend({},this._options)},K.prototype.hasTile=function(te){return!this.tileBounds||this.tileBounds.contains(te.canonical)},K.prototype.loadTile=function(te,xe){var We=this,He=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);te.request=e.getImage(this.map._requestManager.transformRequest(He,e.ResourceType.Tile),function(st,Et){if(delete te.request,te.aborted)te.state="unloaded",xe(null);else if(st)te.state="errored",xe(st);else if(Et){We.map._refreshExpiredTiles&&te.setExpiryData(Et),delete Et.cacheControl,delete Et.expires;var Ht=We.map.painter.context,yr=Ht.gl;te.texture=We.map.painter.getTileTexture(Et.width),te.texture?te.texture.update(Et,{useMipmap:!0}):(te.texture=new e.Texture(Ht,Et,yr.RGBA,{useMipmap:!0}),te.texture.bind(yr.LINEAR,yr.CLAMP_TO_EDGE,yr.LINEAR_MIPMAP_NEAREST),Ht.extTextureFilterAnisotropic&&yr.texParameterf(yr.TEXTURE_2D,Ht.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Ht.extTextureFilterAnisotropicMax)),te.state="loaded",e.cacheEntryPossiblyAdded(We.dispatcher),xe(null)}})},K.prototype.abortTile=function(te,xe){te.request&&(te.request.cancel(),delete te.request),xe()},K.prototype.unloadTile=function(te,xe){te.texture&&this.map.painter.saveTileTexture(te.texture),xe()},K.prototype.hasTransition=function(){return!1},K}(e.Evented),W=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),this.type="raster-dem",this.maxzoom=22,this._options=e.extend({type:"raster-dem"},te),this.encoding=te.encoding||"mapbox"}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.serialize=function(){return{type:"raster-dem",url:this.url,tileSize:this.tileSize,tiles:this.tiles,bounds:this.bounds,encoding:this.encoding}},K.prototype.loadTile=function(te,xe){var We=this.map._requestManager.normalizeTileURL(te.tileID.canonical.url(this.tiles,this.scheme),this.tileSize);te.request=e.getImage(this.map._requestManager.transformRequest(We,e.ResourceType.Tile),He.bind(this)),te.neighboringTiles=this._getNeighboringTiles(te.tileID);function He(Et,Ht){if(delete te.request,te.aborted)te.state="unloaded",xe(null);else if(Et)te.state="errored",xe(Et);else if(Ht){this.map._refreshExpiredTiles&&te.setExpiryData(Ht),delete Ht.cacheControl,delete Ht.expires;var yr=e.window.ImageBitmap&&Ht instanceof e.window.ImageBitmap&&e.offscreenCanvasSupported(),Ir=yr?Ht:e.browser.getImageData(Ht,1),wr={uid:te.uid,coord:te.tileID,source:this.id,rawImageData:Ir,encoding:this.encoding};(!te.actor||te.state==="expired")&&(te.actor=this.dispatcher.getActor(),te.actor.send("loadDEMTile",wr,st.bind(this)))}}function st(Et,Ht){Et&&(te.state="errored",xe(Et)),Ht&&(te.dem=Ht,te.needsHillshadePrepare=!0,te.state="loaded",xe(null))}},K.prototype._getNeighboringTiles=function(te){var xe=te.canonical,We=Math.pow(2,xe.z),He=(xe.x-1+We)%We,st=xe.x===0?te.wrap-1:te.wrap,Et=(xe.x+1+We)%We,Ht=xe.x+1===We?te.wrap+1:te.wrap,yr={};return yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y).key]={backfilled:!1},xe.y>0&&(yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,te.wrap,xe.z,xe.x,xe.y-1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y-1).key]={backfilled:!1}),xe.y+1<We&&(yr[new e.OverscaledTileID(te.overscaledZ,st,xe.z,He,xe.y+1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,te.wrap,xe.z,xe.x,xe.y+1).key]={backfilled:!1},yr[new e.OverscaledTileID(te.overscaledZ,Ht,xe.z,Et,xe.y+1).key]={backfilled:!1}),yr},K.prototype.unloadTile=function(te){te.demTexture&&this.map.painter.saveTileTexture(te.demTexture),te.fbo&&(te.fbo.destroy(),delete te.fbo),te.dem&&delete te.dem,delete te.neighboringTiles,te.state="unloaded",te.actor&&te.actor.send("removeDEMTile",{uid:te.uid,source:this.id})},K}(U),Q=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,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=xe.getActor(),this.setEventedParent(We),this._data=te.data,this._options=e.extend({},te),this._collectResourceTiming=te.collectResourceTiming,this._resourceTiming=[],te.maxzoom!==void 0&&(this.maxzoom=te.maxzoom),te.type&&(this.type=te.type),te.attribution&&(this.attribution=te.attribution),this.promoteId=te.promoteId;var He=e.EXTENT/this.tileSize;this.workerOptions=e.extend({source:this.id,cluster:te.cluster||!1,geojsonVtOptions:{buffer:(te.buffer!==void 0?te.buffer:128)*He,tolerance:(te.tolerance!==void 0?te.tolerance:.375)*He,extent:e.EXTENT,maxZoom:this.maxzoom,lineMetrics:te.lineMetrics||!1,generateId:te.generateId||!1},superclusterOptions:{maxZoom:te.clusterMaxZoom!==void 0?Math.min(te.clusterMaxZoom,this.maxzoom-1):this.maxzoom-1,minPoints:Math.max(2,te.clusterMinPoints||2),extent:e.EXTENT,radius:(te.clusterRadius||50)*He,log:!1,generateId:te.generateId||!1},clusterProperties:te.clusterProperties,filter:te.filter},te.workerOptions)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(xe){if(xe){te.fire(new e.ErrorEvent(xe));return}var We={dataType:"source",sourceDataType:"metadata"};te._collectResourceTiming&&te._resourceTiming&&te._resourceTiming.length>0&&(We.resourceTiming=te._resourceTiming,te._resourceTiming=[]),te.fire(new e.Event("data",We))})},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setData=function(te){var xe=this;return this._data=te,this.fire(new e.Event("dataloading",{dataType:"source"})),this._updateWorkerData(function(We){if(We){xe.fire(new e.ErrorEvent(We));return}var He={dataType:"source",sourceDataType:"content"};xe._collectResourceTiming&&xe._resourceTiming&&xe._resourceTiming.length>0&&(He.resourceTiming=xe._resourceTiming,xe._resourceTiming=[]),xe.fire(new e.Event("data",He))}),this},K.prototype.getClusterExpansionZoom=function(te,xe){return this.actor.send("geojson.getClusterExpansionZoom",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterChildren=function(te,xe){return this.actor.send("geojson.getClusterChildren",{clusterId:te,source:this.id},xe),this},K.prototype.getClusterLeaves=function(te,xe,We,He){return this.actor.send("geojson.getClusterLeaves",{source:this.id,clusterId:te,limit:xe,offset:We},He),this},K.prototype._updateWorkerData=function(te){var xe=this;this._loaded=!1;var We=e.extend({},this.workerOptions),He=this._data;typeof He=="string"?(We.request=this.map._requestManager.transformRequest(e.browser.resolveURL(He),e.ResourceType.Source),We.request.collectResourceTiming=this._collectResourceTiming):We.data=JSON.stringify(He),this.actor.send(this.type+".loadData",We,function(st,Et){xe._removed||Et&&Et.abandoned||(xe._loaded=!0,Et&&Et.resourceTiming&&Et.resourceTiming[xe.id]&&(xe._resourceTiming=Et.resourceTiming[xe.id].slice(0)),xe.actor.send(xe.type+".coalesce",{source:We.source},null),te(st))})},K.prototype.loaded=function(){return this._loaded},K.prototype.loadTile=function(te,xe){var We=this,He=te.actor?"reloadTile":"loadTile";te.actor=this.actor;var st={type:this.type,uid:te.uid,tileID:te.tileID,zoom:te.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:e.browser.devicePixelRatio,showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};te.request=this.actor.send(He,st,function(Et,Ht){return delete te.request,te.unloadVectorData(),te.aborted?xe(null):Et?xe(Et):(te.loadVectorData(Ht,We.map.painter,He==="reloadTile"),xe(null))})},K.prototype.abortTile=function(te){te.request&&(te.request.cancel(),delete te.request),te.aborted=!0},K.prototype.unloadTile=function(te){te.unloadVectorData(),this.actor.send("removeTile",{uid:te.uid,type:this.type,source:this.id})},K.prototype.onRemove=function(){this._removed=!0,this.actor.send("removeSource",{type:this.type,source:this.id})},K.prototype.serialize=function(){return e.extend({},this._options,{type:this.type,data:this._data})},K.prototype.hasTransition=function(){return!1},K}(e.Evented),ue=e.createLayout([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]),se=function(ve){function K(ye,te,xe,We){ve.call(this),this.id=ye,this.dispatcher=xe,this.coordinates=te.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(We),this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(te,xe){var We=this;this._loaded=!1,this.fire(new e.Event("dataloading",{dataType:"source"})),this.url=this.options.url,e.getImage(this.map._requestManager.transformRequest(this.url,e.ResourceType.Image),function(He,st){We._loaded=!0,He?We.fire(new e.ErrorEvent(He)):st&&(We.image=st,te&&(We.coordinates=te),xe&&xe(),We._finishLoading())})},K.prototype.loaded=function(){return this._loaded},K.prototype.updateImage=function(te){var xe=this;return!this.image||!te.url?this:(this.options.url=te.url,this.load(te.coordinates,function(){xe.texture=null}),this)},K.prototype._finishLoading=function(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"metadata"})))},K.prototype.onAdd=function(te){this.map=te,this.load()},K.prototype.setCoordinates=function(te){var xe=this;this.coordinates=te;var We=te.map(e.MercatorCoordinate.fromLngLat);this.tileID=he(We),this.minzoom=this.maxzoom=this.tileID.z;var He=We.map(function(st){return xe.tileID.getTilePoint(st)._round()});return this._boundsArray=new e.StructArrayLayout4i8,this._boundsArray.emplaceBack(He[0].x,He[0].y,0,0),this._boundsArray.emplaceBack(He[1].x,He[1].y,e.EXTENT,0),this._boundsArray.emplaceBack(He[3].x,He[3].y,0,e.EXTENT),this._boundsArray.emplaceBack(He[2].x,He[2].y,e.EXTENT,e.EXTENT),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new e.Event("data",{dataType:"source",sourceDataType:"content"})),this},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||!this.image)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture||(this.texture=new e.Texture(te,this.image,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.loadTile=function(te,xe){this.tileID&&this.tileID.equals(te.tileID.canonical)?(this.tiles[String(te.tileID.wrap)]=te,te.buckets={},xe(null)):(te.state="errored",xe(null))},K.prototype.serialize=function(){return{type:"image",url:this.options.url,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return!1},K}(e.Evented);function he(ve){for(var K=1/0,ye=1/0,te=-1/0,xe=-1/0,We=0,He=ve;We<He.length;We+=1){var st=He[We];K=Math.min(K,st.x),ye=Math.min(ye,st.y),te=Math.max(te,st.x),xe=Math.max(xe,st.y)}var Et=te-K,Ht=xe-ye,yr=Math.max(Et,Ht),Ir=Math.max(0,Math.floor(-Math.log(yr)/Math.LN2)),wr=Math.pow(2,Ir);return new e.CanonicalTileID(Ir,Math.floor((K+te)/2*wr),Math.floor((ye+xe)/2*wr))}var G=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),this.roundZoom=!0,this.type="video",this.options=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){var te=this;this._loaded=!1;var xe=this.options;this.urls=[];for(var We=0,He=xe.urls;We<He.length;We+=1){var st=He[We];this.urls.push(this.map._requestManager.transformRequest(st,e.ResourceType.Source).url)}e.getVideo(this.urls,function(Et,Ht){te._loaded=!0,Et?te.fire(new e.ErrorEvent(Et)):Ht&&(te.video=Ht,te.video.loop=!0,te.video.addEventListener("playing",function(){te.map.triggerRepaint()}),te.map&&te.video.play(),te._finishLoading())})},K.prototype.pause=function(){this.video&&this.video.pause()},K.prototype.play=function(){this.video&&this.video.play()},K.prototype.seek=function(te){if(this.video){var xe=this.video.seekable;te<xe.start(0)||te>xe.end(0)?this.fire(new e.ErrorEvent(new e.ValidationError("sources."+this.id,null,"Playback for this video can be set only between the "+xe.start(0)+" and "+xe.end(0)+"-second mark."))):this.video.currentTime=te}},K.prototype.getVideo=function(){return this.video},K.prototype.onAdd=function(te){this.map||(this.map=te,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))},K.prototype.prepare=function(){if(!(Object.keys(this.tiles).length===0||this.video.readyState<2)){var te=this.map.painter.context,xe=te.gl;this.boundsBuffer||(this.boundsBuffer=te.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE),xe.texSubImage2D(xe.TEXTURE_2D,0,0,0,xe.RGBA,xe.UNSIGNED_BYTE,this.video)):(this.texture=new e.Texture(te,this.video,xe.RGBA),this.texture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE));for(var We in this.tiles){var He=this.tiles[We];He.state!=="loaded"&&(He.state="loaded",He.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"video",urls:this.urls,coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this.video&&!this.video.paused},K}(se),$=function(ve){function K(ye,te,xe,We){ve.call(this,ye,te,xe,We),te.coordinates?(!Array.isArray(te.coordinates)||te.coordinates.length!==4||te.coordinates.some(function(He){return!Array.isArray(He)||He.length!==2||He.some(function(st){return typeof st!="number"})}))&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "coordinates"'))),te.animate&&typeof te.animate!="boolean"&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,null,'optional "animate" property must be a boolean value'))),te.canvas?typeof te.canvas!="string"&&!(te.canvas instanceof e.window.HTMLCanvasElement)&&this.fire(new e.ErrorEvent(new e.ValidationError("sources."+ye,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 e.ErrorEvent(new e.ValidationError("sources."+ye,null,'missing required property "canvas"'))),this.options=te,this.animate=te.animate!==void 0?te.animate:!0}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.load=function(){if(this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof e.window.HTMLCanvasElement?this.options.canvas:e.window.document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()){this.fire(new e.ErrorEvent(new Error("Canvas dimensions cannot be less than or equal to zero.")));return}this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading()},K.prototype.getCanvas=function(){return this.canvas},K.prototype.onAdd=function(te){this.map=te,this.load(),this.canvas&&this.animate&&this.play()},K.prototype.onRemove=function(){this.pause()},K.prototype.prepare=function(){var te=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,te=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,te=!0),!this._hasInvalidDimensions()&&Object.keys(this.tiles).length!==0){var xe=this.map.painter.context,We=xe.gl;this.boundsBuffer||(this.boundsBuffer=xe.createVertexBuffer(this._boundsArray,ue.members)),this.boundsSegments||(this.boundsSegments=e.SegmentVector.simpleSegment(0,0,4,2)),this.texture?(te||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new e.Texture(xe,this.canvas,We.RGBA,{premultiply:!0});for(var He in this.tiles){var st=this.tiles[He];st.state!=="loaded"&&(st.state="loaded",st.texture=this.texture)}}},K.prototype.serialize=function(){return{type:"canvas",coordinates:this.coordinates}},K.prototype.hasTransition=function(){return this._playing},K.prototype._hasInvalidDimensions=function(){for(var te=0,xe=[this.canvas.width,this.canvas.height];te<xe.length;te+=1){var We=xe[te];if(isNaN(We)||We<=0)return!0}return!1},K}(se),J={vector:N,raster:U,"raster-dem":W,geojson:Q,video:G,image:se,canvas:$},Z=function(ve,K,ye,te){var xe=new J[K.type](ve,K,ye,te);if(xe.id!==ve)throw new Error("Expected Source id to be "+ve+" instead of "+xe.id);return e.bindAll(["load","abort","unload","serialize","prepare"],xe),xe},re=function(ve){return J[ve]},ne=function(ve,K){J[ve]=K};function j(ve,K){var ye=e.identity([]);return e.translate(ye,ye,[1,1,0]),e.scale(ye,ye,[ve.width*.5,ve.height*.5,1]),e.multiply(ye,ye,ve.calculatePosMatrix(K.toUnwrapped()))}function ee(ve,K,ye){if(ve)for(var te=0,xe=ve;te<xe.length;te+=1){var We=xe[te],He=K[We];if(He&&He.source===ye&&He.type==="fill-extrusion")return!0}else for(var st in K){var Et=K[st];if(Et.source===ye&&Et.type==="fill-extrusion")return!0}return!1}function ie(ve,K,ye,te,xe,We){var He=ee(xe&&xe.layers,K,ve.id),st=We.maxPitchScaleFactor(),Et=ve.tilesIn(te,st,He);Et.sort(Ae);for(var Ht=[],yr=0,Ir=Et;yr<Ir.length;yr+=1){var wr=Ir[yr];Ht.push({wrappedTileID:wr.tileID.wrapped().key,queryResults:wr.tile.queryRenderedFeatures(K,ye,ve._state,wr.queryGeometry,wr.cameraQueryGeometry,wr.scale,xe,We,st,j(ve.transform,wr.tileID))})}var qt=Be(Ht);for(var tr in qt)qt[tr].forEach(function(dr){var Pr=dr.feature,Vr=ve.getFeatureState(Pr.layer["source-layer"],Pr.id);Pr.source=Pr.layer.source,Pr.layer["source-layer"]&&(Pr.sourceLayer=Pr.layer["source-layer"]),Pr.state=Vr});return qt}function fe(ve,K,ye,te,xe,We,He){for(var st={},Et=We.queryRenderedSymbols(te),Ht=[],yr=0,Ir=Object.keys(Et).map(Number);yr<Ir.length;yr+=1){var wr=Ir[yr];Ht.push(He[wr])}Ht.sort(Ae);for(var qt=function(){var Hr=dr[tr],aa=Hr.featureIndex.lookupSymbolFeatures(Et[Hr.bucketInstanceId],K,Hr.bucketIndex,Hr.sourceLayerIndex,xe.filter,xe.layers,xe.availableImages,ve);for(var Qr in aa){var Gr=st[Qr]=st[Qr]||[],ia=aa[Qr];ia.sort(function(ri,Pi){var mi=Hr.featureSortOrder;if(mi){var Di=mi.indexOf(ri.featureIndex),An=mi.indexOf(Pi.featureIndex);return An-Di}else return Pi.featureIndex-ri.featureIndex});for(var Ur=0,wa=ia;Ur<wa.length;Ur+=1){var Oa=wa[Ur];Gr.push(Oa)}}},tr=0,dr=Ht;tr<dr.length;tr+=1)qt();var Pr=function(Hr){st[Hr].forEach(function(aa){var Qr=aa.feature,Gr=ve[Hr],ia=ye[Gr.source],Ur=ia.getFeatureState(Qr.layer["source-layer"],Qr.id);Qr.source=Qr.layer.source,Qr.layer["source-layer"]&&(Qr.sourceLayer=Qr.layer["source-layer"]),Qr.state=Ur})};for(var Vr in st)Pr(Vr);return st}function be(ve,K){for(var ye=ve.getRenderableIds().map(function(Et){return ve.getTileByID(Et)}),te=[],xe={},We=0;We<ye.length;We++){var He=ye[We],st=He.tileID.canonical.key;xe[st]||(xe[st]=!0,He.querySourceFeatures(te,K))}return te}function Ae(ve,K){var ye=ve.tileID,te=K.tileID;return ye.overscaledZ-te.overscaledZ||ye.canonical.y-te.canonical.y||ye.wrap-te.wrap||ye.canonical.x-te.canonical.x}function Be(ve){for(var K={},ye={},te=0,xe=ve;te<xe.length;te+=1){var We=xe[te],He=We.queryResults,st=We.wrappedTileID,Et=ye[st]=ye[st]||{};for(var Ht in He)for(var yr=He[Ht],Ir=Et[Ht]=Et[Ht]||{},wr=K[Ht]=K[Ht]||[],qt=0,tr=yr;qt<tr.length;qt+=1){var dr=tr[qt];Ir[dr.featureIndex]||(Ir[dr.featureIndex]=!0,wr.push(dr))}}return K}var Ie=function(K,ye){this.max=K,this.onRemove=ye,this.reset()};Ie.prototype.reset=function(){for(var K in this.data)for(var ye=0,te=this.data[K];ye<te.length;ye+=1){var xe=te[ye];xe.timeout&&clearTimeout(xe.timeout),this.onRemove(xe.value)}return this.data={},this.order=[],this},Ie.prototype.add=function(K,ye,te){var xe=this,We=K.wrapped().key;this.data[We]===void 0&&(this.data[We]=[]);var He={value:ye,timeout:void 0};if(te!==void 0&&(He.timeout=setTimeout(function(){xe.remove(K,He)},te)),this.data[We].push(He),this.order.push(We),this.order.length>this.max){var st=this._getAndRemoveByKey(this.order[0]);st&&this.onRemove(st)}return this},Ie.prototype.has=function(K){return K.wrapped().key in this.data},Ie.prototype.getAndRemove=function(K){return this.has(K)?this._getAndRemoveByKey(K.wrapped().key):null},Ie.prototype._getAndRemoveByKey=function(K){var ye=this.data[K].shift();return ye.timeout&&clearTimeout(ye.timeout),this.data[K].length===0&&delete this.data[K],this.order.splice(this.order.indexOf(K),1),ye.value},Ie.prototype.getByKey=function(K){var ye=this.data[K];return ye?ye[0].value:null},Ie.prototype.get=function(K){if(!this.has(K))return null;var ye=this.data[K.wrapped().key][0];return ye.value},Ie.prototype.remove=function(K,ye){if(!this.has(K))return this;var te=K.wrapped().key,xe=ye===void 0?0:this.data[te].indexOf(ye),We=this.data[te][xe];return this.data[te].splice(xe,1),We.timeout&&clearTimeout(We.timeout),this.data[te].length===0&&delete this.data[te],this.onRemove(We.value),this.order.splice(this.order.indexOf(te),1),this},Ie.prototype.setMaxSize=function(K){for(this.max=K;this.order.length>this.max;){var ye=this._getAndRemoveByKey(this.order[0]);ye&&this.onRemove(ye)}return this},Ie.prototype.filter=function(K){var ye=[];for(var te in this.data)for(var xe=0,We=this.data[te];xe<We.length;xe+=1){var He=We[xe];K(He.value)||ye.push(He)}for(var st=0,Et=ye;st<Et.length;st+=1){var Ht=Et[st];this.remove(Ht.value.tileID,Ht)}};var Ze=function(K,ye,te){this.context=K;var xe=K.gl;this.buffer=xe.createBuffer(),this.dynamicDraw=!!te,this.context.unbindVAO(),K.bindElementBuffer.set(this.buffer),xe.bufferData(xe.ELEMENT_ARRAY_BUFFER,ye.arrayBuffer,this.dynamicDraw?xe.DYNAMIC_DRAW:xe.STATIC_DRAW),this.dynamicDraw||delete ye.arrayBuffer};Ze.prototype.bind=function(){this.context.bindElementBuffer.set(this.buffer)},Ze.prototype.updateData=function(K){var ye=this.context.gl;this.context.unbindVAO(),this.bind(),ye.bufferSubData(ye.ELEMENT_ARRAY_BUFFER,0,K.arrayBuffer)},Ze.prototype.destroy=function(){var K=this.context.gl;this.buffer&&(K.deleteBuffer(this.buffer),delete this.buffer)};var at={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"},it=function(K,ye,te,xe){this.length=ye.length,this.attributes=te,this.itemSize=ye.bytesPerElement,this.dynamicDraw=xe,this.context=K;var We=K.gl;this.buffer=We.createBuffer(),K.bindVertexBuffer.set(this.buffer),We.bufferData(We.ARRAY_BUFFER,ye.arrayBuffer,this.dynamicDraw?We.DYNAMIC_DRAW:We.STATIC_DRAW),this.dynamicDraw||delete ye.arrayBuffer};it.prototype.bind=function(){this.context.bindVertexBuffer.set(this.buffer)},it.prototype.updateData=function(K){var ye=this.context.gl;this.bind(),ye.bufferSubData(ye.ARRAY_BUFFER,0,K.arrayBuffer)},it.prototype.enableAttributes=function(K,ye){for(var te=0;te<this.attributes.length;te++){var xe=this.attributes[te],We=ye.attributes[xe.name];We!==void 0&&K.enableVertexAttribArray(We)}},it.prototype.setVertexAttribPointers=function(K,ye,te){for(var xe=0;xe<this.attributes.length;xe++){var We=this.attributes[xe],He=ye.attributes[We.name];He!==void 0&&K.vertexAttribPointer(He,We.components,K[at[We.type]],!1,this.itemSize,We.offset+this.itemSize*(te||0))}},it.prototype.destroy=function(){var K=this.context.gl;this.buffer&&(K.deleteBuffer(this.buffer),delete this.buffer)};var et=function(K){this.gl=K.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1};et.prototype.get=function(){return this.current},et.prototype.set=function(K){},et.prototype.getDefault=function(){return this.default},et.prototype.setDefault=function(){this.set(this.default)};var lt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return e.Color.transparent},K.prototype.set=function(te){var xe=this.current;te.r===xe.r&&te.g===xe.g&&te.b===xe.b&&te.a===xe.a&&!this.dirty||(this.gl.clearColor(te.r,te.g,te.b,te.a),this.current=te,this.dirty=!1)},K}(et),Me=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 1},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.clearDepth(te),this.current=te,this.dirty=!1)},K}(et),ge=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.clearStencil(te),this.current=te,this.dirty=!1)},K}(et),ce=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return[!0,!0,!0,!0]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&te[3]===xe[3]&&!this.dirty||(this.gl.colorMask(te[0],te[1],te[2],te[3]),this.current=te,this.dirty=!1)},K}(et),ze=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.depthMask(te),this.current=te,this.dirty=!1)},K}(et),tt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 255},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.stencilMask(te),this.current=te,this.dirty=!1)},K}(et),nt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return{func:this.gl.ALWAYS,ref:0,mask:255}},K.prototype.set=function(te){var xe=this.current;te.func===xe.func&&te.ref===xe.ref&&te.mask===xe.mask&&!this.dirty||(this.gl.stencilFunc(te.func,te.ref,te.mask),this.current=te,this.dirty=!1)},K}(et),Qe=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[te.KEEP,te.KEEP,te.KEEP]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&!this.dirty||(this.gl.stencilOp(te[0],te[1],te[2]),this.current=te,this.dirty=!1)},K}(et),Ct=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.STENCIL_TEST):xe.disable(xe.STENCIL_TEST),this.current=te,this.dirty=!1}},K}(et),St=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return[0,1]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&!this.dirty||(this.gl.depthRange(te[0],te[1]),this.current=te,this.dirty=!1)},K}(et),Ot=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.DEPTH_TEST):xe.disable(xe.DEPTH_TEST),this.current=te,this.dirty=!1}},K}(et),jt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.LESS},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.depthFunc(te),this.current=te,this.dirty=!1)},K}(et),ur=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.BLEND):xe.disable(xe.BLEND),this.current=te,this.dirty=!1}},K}(et),ar=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[te.ONE,te.ZERO]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&!this.dirty||(this.gl.blendFunc(te[0],te[1]),this.current=te,this.dirty=!1)},K}(et),Cr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return e.Color.transparent},K.prototype.set=function(te){var xe=this.current;te.r===xe.r&&te.g===xe.g&&te.b===xe.b&&te.a===xe.a&&!this.dirty||(this.gl.blendColor(te.r,te.g,te.b,te.a),this.current=te,this.dirty=!1)},K}(et),vr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.FUNC_ADD},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.blendEquation(te),this.current=te,this.dirty=!1)},K}(et),_r=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;te?xe.enable(xe.CULL_FACE):xe.disable(xe.CULL_FACE),this.current=te,this.dirty=!1}},K}(et),yt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.BACK},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.cullFace(te),this.current=te,this.dirty=!1)},K}(et),Fe=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.CCW},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.frontFace(te),this.current=te,this.dirty=!1)},K}(et),Ke=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.useProgram(te),this.current=te,this.dirty=!1)},K}(et),Ne=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return this.gl.TEXTURE0},K.prototype.set=function(te){te===this.current&&!this.dirty||(this.gl.activeTexture(te),this.current=te,this.dirty=!1)},K}(et),Ee=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){var te=this.gl;return[0,0,te.drawingBufferWidth,te.drawingBufferHeight]},K.prototype.set=function(te){var xe=this.current;te[0]===xe[0]&&te[1]===xe[1]&&te[2]===xe[2]&&te[3]===xe[3]&&!this.dirty||(this.gl.viewport(te[0],te[1],te[2],te[3]),this.current=te,this.dirty=!1)},K}(et),Ve=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindFramebuffer(xe.FRAMEBUFFER,te),this.current=te,this.dirty=!1}},K}(et),ke=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindRenderbuffer(xe.RENDERBUFFER,te),this.current=te,this.dirty=!1}},K}(et),Te=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindTexture(xe.TEXTURE_2D,te),this.current=te,this.dirty=!1}},K}(et),Le=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.bindBuffer(xe.ARRAY_BUFFER,te),this.current=te,this.dirty=!1}},K}(et),rt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){var xe=this.gl;xe.bindBuffer(xe.ELEMENT_ARRAY_BUFFER,te),this.current=te,this.dirty=!1},K}(et),dt=function(ve){function K(ye){ve.call(this,ye),this.vao=ye.extVertexArrayObject}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K.prototype.set=function(te){!this.vao||te===this.current&&!this.dirty||(this.vao.bindVertexArrayOES(te),this.current=te,this.dirty=!1)},K}(et),xt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return 4},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_ALIGNMENT,te),this.current=te,this.dirty=!1}},K}(et),It=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_PREMULTIPLY_ALPHA_WEBGL,te),this.current=te,this.dirty=!1}},K}(et),Bt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return!1},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){var xe=this.gl;xe.pixelStorei(xe.UNPACK_FLIP_Y_WEBGL,te),this.current=te,this.dirty=!1}},K}(et),Gt=function(ve){function K(ye,te){ve.call(this,ye),this.context=ye,this.parent=te}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getDefault=function(){return null},K}(et),Kt=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.setDirty=function(){this.dirty=!0},K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var xe=this.gl;xe.framebufferTexture2D(xe.FRAMEBUFFER,xe.COLOR_ATTACHMENT0,xe.TEXTURE_2D,te,0),this.current=te,this.dirty=!1}},K}(Gt),sr=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.set=function(te){if(!(te===this.current&&!this.dirty)){this.context.bindFramebuffer.set(this.parent);var xe=this.gl;xe.framebufferRenderbuffer(xe.FRAMEBUFFER,xe.DEPTH_ATTACHMENT,xe.RENDERBUFFER,te),this.current=te,this.dirty=!1}},K}(Gt),sa=function(K,ye,te,xe){this.context=K,this.width=ye,this.height=te;var We=K.gl,He=this.framebuffer=We.createFramebuffer();this.colorAttachment=new Kt(K,He),xe&&(this.depthAttachment=new sr(K,He))};sa.prototype.destroy=function(){var K=this.context.gl,ye=this.colorAttachment.get();if(ye&&K.deleteTexture(ye),this.depthAttachment){var te=this.depthAttachment.get();te&&K.deleteRenderbuffer(te)}K.deleteFramebuffer(this.framebuffer)};var Aa=519,La=function(K,ye,te){this.func=K,this.mask=ye,this.range=te};La.ReadOnly=!1,La.ReadWrite=!0,La.disabled=new La(Aa,La.ReadOnly,[0,1]);var ka=519,Ga=7680,Ma=function(K,ye,te,xe,We,He){this.test=K,this.ref=ye,this.mask=te,this.fail=xe,this.depthFail=We,this.pass=He};Ma.disabled=new Ma({func:ka,mask:0},0,0,Ga,Ga,Ga);var Ua=0,ni=1,Wt=771,zt=function(K,ye,te){this.blendFunction=K,this.blendColor=ye,this.mask=te};zt.Replace=[ni,Ua],zt.disabled=new zt(zt.Replace,e.Color.transparent,[!1,!1,!1,!1]),zt.unblended=new zt(zt.Replace,e.Color.transparent,[!0,!0,!0,!0]),zt.alphaBlended=new zt([ni,Wt],e.Color.transparent,[!0,!0,!0,!0]);var Vt=1029,Ut=2305,xr=function(K,ye,te){this.enable=K,this.mode=ye,this.frontFace=te};xr.disabled=new xr(!1,Vt,Ut),xr.backCCW=new xr(!0,Vt,Ut);var Zr=function(K){this.gl=K,this.extVertexArrayObject=this.gl.getExtension("OES_vertex_array_object"),this.clearColor=new lt(this),this.clearDepth=new Me(this),this.clearStencil=new ge(this),this.colorMask=new ce(this),this.depthMask=new ze(this),this.stencilMask=new tt(this),this.stencilFunc=new nt(this),this.stencilOp=new Qe(this),this.stencilTest=new Ct(this),this.depthRange=new St(this),this.depthTest=new Ot(this),this.depthFunc=new jt(this),this.blend=new ur(this),this.blendFunc=new ar(this),this.blendColor=new Cr(this),this.blendEquation=new vr(this),this.cullFace=new _r(this),this.cullFaceSide=new yt(this),this.frontFace=new Fe(this),this.program=new Ke(this),this.activeTexture=new Ne(this),this.viewport=new Ee(this),this.bindFramebuffer=new Ve(this),this.bindRenderbuffer=new ke(this),this.bindTexture=new Te(this),this.bindVertexBuffer=new Le(this),this.bindElementBuffer=new rt(this),this.bindVertexArrayOES=this.extVertexArrayObject&&new dt(this),this.pixelStoreUnpack=new xt(this),this.pixelStoreUnpackPremultiplyAlpha=new It(this),this.pixelStoreUnpackFlipY=new Bt(this),this.extTextureFilterAnisotropic=K.getExtension("EXT_texture_filter_anisotropic")||K.getExtension("MOZ_EXT_texture_filter_anisotropic")||K.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=K.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.extTextureHalfFloat=K.getExtension("OES_texture_half_float"),this.extTextureHalfFloat&&(K.getExtension("OES_texture_half_float_linear"),this.extRenderToTextureHalfFloat=K.getExtension("EXT_color_buffer_half_float")),this.extTimerQuery=K.getExtension("EXT_disjoint_timer_query"),this.maxTextureSize=K.getParameter(K.MAX_TEXTURE_SIZE)};Zr.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()},Zr.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},Zr.prototype.createIndexBuffer=function(K,ye){return new Ze(this,K,ye)},Zr.prototype.createVertexBuffer=function(K,ye,te){return new it(this,K,ye,te)},Zr.prototype.createRenderbuffer=function(K,ye,te){var xe=this.gl,We=xe.createRenderbuffer();return this.bindRenderbuffer.set(We),xe.renderbufferStorage(xe.RENDERBUFFER,K,ye,te),this.bindRenderbuffer.set(null),We},Zr.prototype.createFramebuffer=function(K,ye,te){return new sa(this,K,ye,te)},Zr.prototype.clear=function(K){var ye=K.color,te=K.depth,xe=this.gl,We=0;ye&&(We|=xe.COLOR_BUFFER_BIT,this.clearColor.set(ye),this.colorMask.set([!0,!0,!0,!0])),typeof te<"u"&&(We|=xe.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(te),this.depthMask.set(!0)),xe.clear(We)},Zr.prototype.setCullFace=function(K){K.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(K.mode),this.frontFace.set(K.frontFace))},Zr.prototype.setDepthMode=function(K){K.func===this.gl.ALWAYS&&!K.mask?this.depthTest.set(!1):(this.depthTest.set(!0),this.depthFunc.set(K.func),this.depthMask.set(K.mask),this.depthRange.set(K.range))},Zr.prototype.setStencilMode=function(K){K.test.func===this.gl.ALWAYS&&!K.mask?this.stencilTest.set(!1):(this.stencilTest.set(!0),this.stencilMask.set(K.mask),this.stencilOp.set([K.fail,K.depthFail,K.pass]),this.stencilFunc.set({func:K.test.func,ref:K.ref,mask:K.test.mask}))},Zr.prototype.setColorMode=function(K){e.deepEqual(K.blendFunction,zt.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(K.blendFunction),this.blendColor.set(K.blendColor)),this.colorMask.set(K.mask)},Zr.prototype.unbindVAO=function(){this.extVertexArrayObject&&this.bindVertexArrayOES.set(null)};var pa=function(ve){function K(ye,te,xe){var We=this;ve.call(this),this.id=ye,this.dispatcher=xe,this.on("data",function(He){He.dataType==="source"&&He.sourceDataType==="metadata"&&(We._sourceLoaded=!0),We._sourceLoaded&&!We._paused&&He.dataType==="source"&&He.sourceDataType==="content"&&(We.reload(),We.transform&&We.update(We.transform))}),this.on("error",function(){We._sourceErrored=!0}),this._source=Z(ye,te,xe,this),this._tiles={},this._cache=new Ie(0,this._unloadTile.bind(this)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new e.SourceFeatureState}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){this.map=te,this._maxTileCacheSize=te?te._maxTileCacheSize:null,this._source&&this._source.onAdd&&this._source.onAdd(te)},K.prototype.onRemove=function(te){this._source&&this._source.onRemove&&this._source.onRemove(te)},K.prototype.loaded=function(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;for(var te in this._tiles){var xe=this._tiles[te];if(xe.state!=="loaded"&&xe.state!=="errored")return!1}return!0},K.prototype.getSource=function(){return this._source},K.prototype.pause=function(){this._paused=!0},K.prototype.resume=function(){if(this._paused){var te=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,te&&this.reload(),this.transform&&this.update(this.transform)}},K.prototype._loadTile=function(te,xe){return this._source.loadTile(te,xe)},K.prototype._unloadTile=function(te){if(this._source.unloadTile)return this._source.unloadTile(te,function(){})},K.prototype._abortTile=function(te){if(this._source.abortTile)return this._source.abortTile(te,function(){})},K.prototype.serialize=function(){return this._source.serialize()},K.prototype.prepare=function(te){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(var xe in this._tiles){var We=this._tiles[xe];We.upload(te),We.prepare(this.map.style.imageManager)}},K.prototype.getIds=function(){return e.values(this._tiles).map(function(te){return te.tileID}).sort(Xr).map(function(te){return te.key})},K.prototype.getRenderableIds=function(te){var xe=this,We=[];for(var He in this._tiles)this._isIdRenderable(He,te)&&We.push(this._tiles[He]);return te?We.sort(function(st,Et){var Ht=st.tileID,yr=Et.tileID,Ir=new e.Point(Ht.canonical.x,Ht.canonical.y)._rotate(xe.transform.angle),wr=new e.Point(yr.canonical.x,yr.canonical.y)._rotate(xe.transform.angle);return Ht.overscaledZ-yr.overscaledZ||wr.y-Ir.y||wr.x-Ir.x}).map(function(st){return st.tileID.key}):We.map(function(st){return st.tileID}).sort(Xr).map(function(st){return st.key})},K.prototype.hasRenderableParent=function(te){var xe=this.findLoadedParent(te,0);return xe?this._isIdRenderable(xe.tileID.key):!1},K.prototype._isIdRenderable=function(te,xe){return this._tiles[te]&&this._tiles[te].hasData()&&!this._coveredTiles[te]&&(xe||!this._tiles[te].holdingForFade())},K.prototype.reload=function(){if(this._paused){this._shouldReloadOnResume=!0;return}this._cache.reset();for(var te in this._tiles)this._tiles[te].state!=="errored"&&this._reloadTile(te,"reloading")},K.prototype._reloadTile=function(te,xe){var We=this._tiles[te];We&&(We.state!=="loading"&&(We.state=xe),this._loadTile(We,this._tileLoaded.bind(this,We,te,xe)))},K.prototype._tileLoaded=function(te,xe,We,He){if(He){te.state="errored",He.status!==404?this._source.fire(new e.ErrorEvent(He,{tile:te})):this.update(this.transform);return}te.timeAdded=e.browser.now(),We==="expired"&&(te.refreshedUponExpiration=!0),this._setTileReloadTimer(xe,te),this.getSource().type==="raster-dem"&&te.dem&&this._backfillDEM(te),this._state.initializeTileState(te,this.map?this.map.painter:null),this._source.fire(new e.Event("data",{dataType:"source",tile:te,coord:te.tileID}))},K.prototype._backfillDEM=function(te){for(var xe=this.getRenderableIds(),We=0;We<xe.length;We++){var He=xe[We];if(te.neighboringTiles&&te.neighboringTiles[He]){var st=this.getTileByID(He);Et(te,st),Et(st,te)}}function Et(Ht,yr){Ht.needsHillshadePrepare=!0;var Ir=yr.tileID.canonical.x-Ht.tileID.canonical.x,wr=yr.tileID.canonical.y-Ht.tileID.canonical.y,qt=Math.pow(2,Ht.tileID.canonical.z),tr=yr.tileID.key;Ir===0&&wr===0||Math.abs(wr)>1||(Math.abs(Ir)>1&&(Math.abs(Ir+qt)===1?Ir+=qt:Math.abs(Ir-qt)===1&&(Ir-=qt)),!(!yr.dem||!Ht.dem)&&(Ht.dem.backfillBorder(yr.dem,Ir,wr),Ht.neighboringTiles&&Ht.neighboringTiles[tr]&&(Ht.neighboringTiles[tr].backfilled=!0)))}},K.prototype.getTile=function(te){return this.getTileByID(te.key)},K.prototype.getTileByID=function(te){return this._tiles[te]},K.prototype._retainLoadedChildren=function(te,xe,We,He){for(var st in this._tiles){var Et=this._tiles[st];if(!(He[st]||!Et.hasData()||Et.tileID.overscaledZ<=xe||Et.tileID.overscaledZ>We)){for(var Ht=Et.tileID;Et&&Et.tileID.overscaledZ>xe+1;){var yr=Et.tileID.scaledTo(Et.tileID.overscaledZ-1);Et=this._tiles[yr.key],Et&&Et.hasData()&&(Ht=yr)}for(var Ir=Ht;Ir.overscaledZ>xe;)if(Ir=Ir.scaledTo(Ir.overscaledZ-1),te[Ir.key]){He[Ht.key]=Ht;break}}}},K.prototype.findLoadedParent=function(te,xe){if(te.key in this._loadedParentTiles){var We=this._loadedParentTiles[te.key];return We&&We.tileID.overscaledZ>=xe?We:null}for(var He=te.overscaledZ-1;He>=xe;He--){var st=te.scaledTo(He),Et=this._getLoadedTile(st);if(Et)return Et}},K.prototype._getLoadedTile=function(te){var xe=this._tiles[te.key];if(xe&&xe.hasData())return xe;var We=this._cache.getByKey(te.wrapped().key);return We},K.prototype.updateCacheSize=function(te){var xe=Math.ceil(te.width/this._source.tileSize)+1,We=Math.ceil(te.height/this._source.tileSize)+1,He=xe*We,st=5,Et=Math.floor(He*st),Ht=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Et):Et;this._cache.setMaxSize(Ht)},K.prototype.handleWrapJump=function(te){var xe=this._prevLng===void 0?te:this._prevLng,We=te-xe,He=We/360,st=Math.round(He);if(this._prevLng=te,st){var Et={};for(var Ht in this._tiles){var yr=this._tiles[Ht];yr.tileID=yr.tileID.unwrapTo(yr.tileID.wrap+st),Et[yr.tileID.key]=yr}this._tiles=Et;for(var Ir in this._timers)clearTimeout(this._timers[Ir]),delete this._timers[Ir];for(var wr in this._tiles){var qt=this._tiles[wr];this._setTileReloadTimer(wr,qt)}}},K.prototype.update=function(te){var xe=this;if(this.transform=te,!(!this._sourceLoaded||this._paused)){this.updateCacheSize(te),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={};var We;this.used?this._source.tileID?We=te.getVisibleUnwrappedCoordinates(this._source.tileID).map(function(ri){return new e.OverscaledTileID(ri.canonical.z,ri.wrap,ri.canonical.z,ri.canonical.x,ri.canonical.y)}):(We=te.coveringTiles({tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled}),this._source.hasTile&&(We=We.filter(function(ri){return xe._source.hasTile(ri)}))):We=[];var He=te.coveringZoomLevel(this._source),st=Math.max(He-K.maxOverzooming,this._source.minzoom),Et=Math.max(He+K.maxUnderzooming,this._source.minzoom),Ht=this._updateRetainedTiles(We,He);if(Ea(this._source.type)){for(var yr={},Ir={},wr=Object.keys(Ht),qt=0,tr=wr;qt<tr.length;qt+=1){var dr=tr[qt],Pr=Ht[dr],Vr=this._tiles[dr];if(!(!Vr||Vr.fadeEndTime&&Vr.fadeEndTime<=e.browser.now())){var Hr=this.findLoadedParent(Pr,st);Hr&&(this._addTile(Hr.tileID),yr[Hr.tileID.key]=Hr.tileID),Ir[dr]=Pr}}this._retainLoadedChildren(Ir,He,Et,Ht);for(var aa in yr)Ht[aa]||(this._coveredTiles[aa]=!0,Ht[aa]=yr[aa])}for(var Qr in Ht)this._tiles[Qr].clearFadeHold();for(var Gr=e.keysDifference(this._tiles,Ht),ia=0,Ur=Gr;ia<Ur.length;ia+=1){var wa=Ur[ia],Oa=this._tiles[wa];Oa.hasSymbolBuckets&&!Oa.holdingForFade()?Oa.setHoldDuration(this.map._fadeDuration):(!Oa.hasSymbolBuckets||Oa.symbolFadeFinished())&&this._removeTile(wa)}this._updateLoadedParentTileCache()}},K.prototype.releaseSymbolFadeTiles=function(){for(var te in this._tiles)this._tiles[te].holdingForFade()&&this._removeTile(te)},K.prototype._updateRetainedTiles=function(te,xe){for(var We={},He={},st=Math.max(xe-K.maxOverzooming,this._source.minzoom),Et=Math.max(xe+K.maxUnderzooming,this._source.minzoom),Ht={},yr=0,Ir=te;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=this._addTile(wr);We[wr.key]=wr,!qt.hasData()&&xe<this._source.maxzoom&&(Ht[wr.key]=wr)}this._retainLoadedChildren(Ht,xe,Et,We);for(var tr=0,dr=te;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=this._tiles[Pr.key];if(!Vr.hasData()){if(xe+1>this._source.maxzoom){var Hr=Pr.children(this._source.maxzoom)[0],aa=this.getTile(Hr);if(aa&&aa.hasData()){We[Hr.key]=Hr;continue}}else{var Qr=Pr.children(this._source.maxzoom);if(We[Qr[0].key]&&We[Qr[1].key]&&We[Qr[2].key]&&We[Qr[3].key])continue}for(var Gr=Vr.wasRequested(),ia=Pr.overscaledZ-1;ia>=st;--ia){var Ur=Pr.scaledTo(ia);if(He[Ur.key]||(He[Ur.key]=!0,Vr=this.getTile(Ur),!Vr&&Gr&&(Vr=this._addTile(Ur)),Vr&&(We[Ur.key]=Ur,Gr=Vr.wasRequested(),Vr.hasData())))break}}}return We},K.prototype._updateLoadedParentTileCache=function(){this._loadedParentTiles={};for(var te in this._tiles){for(var xe=[],We=void 0,He=this._tiles[te].tileID;He.overscaledZ>0;){if(He.key in this._loadedParentTiles){We=this._loadedParentTiles[He.key];break}xe.push(He.key);var st=He.scaledTo(He.overscaledZ-1);if(We=this._getLoadedTile(st),We)break;He=st}for(var Et=0,Ht=xe;Et<Ht.length;Et+=1){var yr=Ht[Et];this._loadedParentTiles[yr]=We}}},K.prototype._addTile=function(te){var xe=this._tiles[te.key];if(xe)return xe;xe=this._cache.getAndRemove(te),xe&&(this._setTileReloadTimer(te.key,xe),xe.tileID=te,this._state.initializeTileState(xe,this.map?this.map.painter:null),this._cacheTimers[te.key]&&(clearTimeout(this._cacheTimers[te.key]),delete this._cacheTimers[te.key],this._setTileReloadTimer(te.key,xe)));var We=!!xe;return We||(xe=new e.Tile(te,this._source.tileSize*te.overscaleFactor()),this._loadTile(xe,this._tileLoaded.bind(this,xe,te.key,xe.state))),xe?(xe.uses++,this._tiles[te.key]=xe,We||this._source.fire(new e.Event("dataloading",{tile:xe,coord:xe.tileID,dataType:"source"})),xe):null},K.prototype._setTileReloadTimer=function(te,xe){var We=this;te in this._timers&&(clearTimeout(this._timers[te]),delete this._timers[te]);var He=xe.getExpiryTimeout();He&&(this._timers[te]=setTimeout(function(){We._reloadTile(te,"expired"),delete We._timers[te]},He))},K.prototype._removeTile=function(te){var xe=this._tiles[te];xe&&(xe.uses--,delete this._tiles[te],this._timers[te]&&(clearTimeout(this._timers[te]),delete this._timers[te]),!(xe.uses>0)&&(xe.hasData()&&xe.state!=="reloading"?this._cache.add(xe.tileID,xe,xe.getExpiryTimeout()):(xe.aborted=!0,this._abortTile(xe),this._unloadTile(xe))))},K.prototype.clearTiles=function(){this._shouldReloadOnResume=!1,this._paused=!1;for(var te in this._tiles)this._removeTile(te);this._cache.reset()},K.prototype.tilesIn=function(te,xe,We){var He=this,st=[],Et=this.transform;if(!Et)return st;for(var Ht=We?Et.getCameraQueryGeometry(te):te,yr=te.map(function(ia){return Et.pointCoordinate(ia)}),Ir=Ht.map(function(ia){return Et.pointCoordinate(ia)}),wr=this.getIds(),qt=1/0,tr=1/0,dr=-1/0,Pr=-1/0,Vr=0,Hr=Ir;Vr<Hr.length;Vr+=1){var aa=Hr[Vr];qt=Math.min(qt,aa.x),tr=Math.min(tr,aa.y),dr=Math.max(dr,aa.x),Pr=Math.max(Pr,aa.y)}for(var Qr=function(ia){var Ur=He._tiles[wr[ia]];if(!Ur.holdingForFade()){var wa=Ur.tileID,Oa=Math.pow(2,Et.zoom-Ur.tileID.overscaledZ),ri=xe*Ur.queryPadding*e.EXTENT/Ur.tileSize/Oa,Pi=[wa.getTilePoint(new e.MercatorCoordinate(qt,tr)),wa.getTilePoint(new e.MercatorCoordinate(dr,Pr))];if(Pi[0].x-ri<e.EXTENT&&Pi[0].y-ri<e.EXTENT&&Pi[1].x+ri>=0&&Pi[1].y+ri>=0){var mi=yr.map(function(An){return wa.getTilePoint(An)}),Di=Ir.map(function(An){return wa.getTilePoint(An)});st.push({tile:Ur,tileID:wa,queryGeometry:mi,cameraQueryGeometry:Di,scale:Oa})}}},Gr=0;Gr<wr.length;Gr++)Qr(Gr);return st},K.prototype.getVisibleCoordinates=function(te){for(var xe=this,We=this.getRenderableIds(te).map(function(Ht){return xe._tiles[Ht].tileID}),He=0,st=We;He<st.length;He+=1){var Et=st[He];Et.posMatrix=this.transform.calculatePosMatrix(Et.toUnwrapped())}return We},K.prototype.hasTransition=function(){if(this._source.hasTransition())return!0;if(Ea(this._source.type))for(var te in this._tiles){var xe=this._tiles[te];if(xe.fadeEndTime!==void 0&&xe.fadeEndTime>=e.browser.now())return!0}return!1},K.prototype.setFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.updateState(te,xe,We)},K.prototype.removeFeatureState=function(te,xe,We){te=te||"_geojsonTileLayer",this._state.removeFeatureState(te,xe,We)},K.prototype.getFeatureState=function(te,xe){return te=te||"_geojsonTileLayer",this._state.getState(te,xe)},K.prototype.setDependencies=function(te,xe,We){var He=this._tiles[te];He&&He.setDependencies(xe,We)},K.prototype.reloadTilesForDependencies=function(te,xe){for(var We in this._tiles){var He=this._tiles[We];He.hasDependency(te,xe)&&this._reloadTile(We,"reloading")}this._cache.filter(function(st){return!st.hasDependency(te,xe)})},K}(e.Evented);pa.maxOverzooming=10,pa.maxUnderzooming=3;function Xr(ve,K){var ye=Math.abs(ve.wrap*2)-+(ve.wrap<0),te=Math.abs(K.wrap*2)-+(K.wrap<0);return ve.overscaledZ-K.overscaledZ||te-ye||K.canonical.y-ve.canonical.y||K.canonical.x-ve.canonical.x}function Ea(ve){return ve==="raster"||ve==="image"||ve==="video"}function Fa(){return new e.window.Worker(Cs.workerUrl)}var qa="mapboxgl_preloaded_worker_pool",ya=function(){this.active={}};ya.prototype.acquire=function(K){if(!this.workers)for(this.workers=[];this.workers.length<ya.workerCount;)this.workers.push(new Fa);return this.active[K]=!0,this.workers.slice()},ya.prototype.release=function(K){delete this.active[K],this.numActive()===0&&(this.workers.forEach(function(ye){ye.terminate()}),this.workers=null)},ya.prototype.isPreloaded=function(){return!!this.active[qa]},ya.prototype.numActive=function(){return Object.keys(this.active).length};var $a=Math.floor(e.browser.hardwareConcurrency/2);ya.workerCount=Math.max(Math.min($a,6),1);var mt;function gt(){return mt||(mt=new ya),mt}function Er(){var ve=gt();ve.acquire(qa)}function kr(){var ve=mt;ve&&(ve.isPreloaded()&&ve.numActive()===1?(ve.release(qa),mt=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()"))}function br(ve,K){var ye={};for(var te in ve)te!=="ref"&&(ye[te]=ve[te]);return e.refProperties.forEach(function(xe){xe in K&&(ye[xe]=K[xe])}),ye}function Tr(ve){ve=ve.slice();for(var K=Object.create(null),ye=0;ye<ve.length;ye++)K[ve[ye].id]=ve[ye];for(var te=0;te<ve.length;te++)"ref"in ve[te]&&(ve[te]=br(ve[te],K[ve[te].ref]));return ve}function Mr(){var ve={},K=e.styleSpec.$version;for(var ye in e.styleSpec.$root){var te=e.styleSpec.$root[ye];if(te.required){var xe=null;ye==="version"?xe=K:te.type==="array"?xe=[]:xe={},xe!=null&&(ve[ye]=xe)}}return ve}var Fr={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 Lr(ve,K,ye){ye.push({command:Fr.addSource,args:[ve,K[ve]]})}function Jr(ve,K,ye){K.push({command:Fr.removeSource,args:[ve]}),ye[ve]=!0}function oa(ve,K,ye,te){Jr(ve,ye,te),Lr(ve,K,ye)}function ca(ve,K,ye){var te;for(te in ve[ye])if(ve[ye].hasOwnProperty(te)&&te!=="data"&&!e.deepEqual(ve[ye][te],K[ye][te]))return!1;for(te in K[ye])if(K[ye].hasOwnProperty(te)&&te!=="data"&&!e.deepEqual(ve[ye][te],K[ye][te]))return!1;return!0}function kt(ve,K,ye,te){ve=ve||{},K=K||{};var xe;for(xe in ve)ve.hasOwnProperty(xe)&&(K.hasOwnProperty(xe)||Jr(xe,ye,te));for(xe in K)K.hasOwnProperty(xe)&&(ve.hasOwnProperty(xe)?e.deepEqual(ve[xe],K[xe])||(ve[xe].type==="geojson"&&K[xe].type==="geojson"&&ca(ve,K,xe)?ye.push({command:Fr.setGeoJSONSourceData,args:[xe,K[xe].data]}):oa(xe,K,ye,te)):Lr(xe,K,ye))}function ir(ve,K,ye,te,xe,We){ve=ve||{},K=K||{};var He;for(He in ve)ve.hasOwnProperty(He)&&(e.deepEqual(ve[He],K[He])||ye.push({command:We,args:[te,He,K[He],xe]}));for(He in K)!K.hasOwnProperty(He)||ve.hasOwnProperty(He)||e.deepEqual(ve[He],K[He])||ye.push({command:We,args:[te,He,K[He],xe]})}function mr(ve){return ve.id}function $r(ve,K){return ve[K.id]=K,ve}function ma(ve,K,ye){ve=ve||[],K=K||[];var te=ve.map(mr),xe=K.map(mr),We=ve.reduce($r,{}),He=K.reduce($r,{}),st=te.slice(),Et=Object.create(null),Ht,yr,Ir,wr,qt,tr,dr;for(Ht=0,yr=0;Ht<te.length;Ht++)Ir=te[Ht],He.hasOwnProperty(Ir)?yr++:(ye.push({command:Fr.removeLayer,args:[Ir]}),st.splice(st.indexOf(Ir,yr),1));for(Ht=0,yr=0;Ht<xe.length;Ht++)Ir=xe[xe.length-1-Ht],st[st.length-1-Ht]!==Ir&&(We.hasOwnProperty(Ir)?(ye.push({command:Fr.removeLayer,args:[Ir]}),st.splice(st.lastIndexOf(Ir,st.length-yr),1)):yr++,tr=st[st.length-Ht],ye.push({command:Fr.addLayer,args:[He[Ir],tr]}),st.splice(st.length-Ht,0,Ir),Et[Ir]=!0);for(Ht=0;Ht<xe.length;Ht++)if(Ir=xe[Ht],wr=We[Ir],qt=He[Ir],!(Et[Ir]||e.deepEqual(wr,qt))){if(!e.deepEqual(wr.source,qt.source)||!e.deepEqual(wr["source-layer"],qt["source-layer"])||!e.deepEqual(wr.type,qt.type)){ye.push({command:Fr.removeLayer,args:[Ir]}),tr=st[st.lastIndexOf(Ir)+1],ye.push({command:Fr.addLayer,args:[qt,tr]});continue}ir(wr.layout,qt.layout,ye,Ir,null,Fr.setLayoutProperty),ir(wr.paint,qt.paint,ye,Ir,null,Fr.setPaintProperty),e.deepEqual(wr.filter,qt.filter)||ye.push({command:Fr.setFilter,args:[Ir,qt.filter]}),(!e.deepEqual(wr.minzoom,qt.minzoom)||!e.deepEqual(wr.maxzoom,qt.maxzoom))&&ye.push({command:Fr.setLayerZoomRange,args:[Ir,qt.minzoom,qt.maxzoom]});for(dr in wr)wr.hasOwnProperty(dr)&&(dr==="layout"||dr==="paint"||dr==="filter"||dr==="metadata"||dr==="minzoom"||dr==="maxzoom"||(dr.indexOf("paint.")===0?ir(wr[dr],qt[dr],ye,Ir,dr.slice(6),Fr.setPaintProperty):e.deepEqual(wr[dr],qt[dr])||ye.push({command:Fr.setLayerProperty,args:[Ir,dr,qt[dr]]})));for(dr in qt)!qt.hasOwnProperty(dr)||wr.hasOwnProperty(dr)||dr==="layout"||dr==="paint"||dr==="filter"||dr==="metadata"||dr==="minzoom"||dr==="maxzoom"||(dr.indexOf("paint.")===0?ir(wr[dr],qt[dr],ye,Ir,dr.slice(6),Fr.setPaintProperty):e.deepEqual(wr[dr],qt[dr])||ye.push({command:Fr.setLayerProperty,args:[Ir,dr,qt[dr]]}))}}function Ba(ve,K){if(!ve)return[{command:Fr.setStyle,args:[K]}];var ye=[];try{if(!e.deepEqual(ve.version,K.version))return[{command:Fr.setStyle,args:[K]}];e.deepEqual(ve.center,K.center)||ye.push({command:Fr.setCenter,args:[K.center]}),e.deepEqual(ve.zoom,K.zoom)||ye.push({command:Fr.setZoom,args:[K.zoom]}),e.deepEqual(ve.bearing,K.bearing)||ye.push({command:Fr.setBearing,args:[K.bearing]}),e.deepEqual(ve.pitch,K.pitch)||ye.push({command:Fr.setPitch,args:[K.pitch]}),e.deepEqual(ve.sprite,K.sprite)||ye.push({command:Fr.setSprite,args:[K.sprite]}),e.deepEqual(ve.glyphs,K.glyphs)||ye.push({command:Fr.setGlyphs,args:[K.glyphs]}),e.deepEqual(ve.transition,K.transition)||ye.push({command:Fr.setTransition,args:[K.transition]}),e.deepEqual(ve.light,K.light)||ye.push({command:Fr.setLight,args:[K.light]});var te={},xe=[];kt(ve.sources,K.sources,xe,te);var We=[];ve.layers&&ve.layers.forEach(function(He){te[He.source]?ye.push({command:Fr.removeLayer,args:[He.id]}):We.push(He)}),ye=ye.concat(xe),ma(We,K.layers,ye)}catch(He){console.warn("Unable to compute style diff:",He),ye=[{command:Fr.setStyle,args:[K]}]}return ye}var Ca=function(K,ye){this.reset(K,ye)};Ca.prototype.reset=function(K,ye){this.points=K||[],this._distances=[0];for(var te=1;te<this.points.length;te++)this._distances[te]=this._distances[te-1]+this.points[te].dist(this.points[te-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(ye||0,this.length*.5),this.paddedLength=this.length-this.padding*2},Ca.prototype.lerp=function(K){if(this.points.length===1)return this.points[0];K=e.clamp(K,0,1);for(var ye=1,te=this._distances[ye],xe=K*this.paddedLength+this.padding;te<xe&&ye<this._distances.length;)te=this._distances[++ye];var We=ye-1,He=this._distances[We],st=te-He,Et=st>0?(xe-He)/st:0;return this.points[We].mult(1-Et).add(this.points[ye].mult(Et))};var da=function(K,ye,te){var xe=this.boxCells=[],We=this.circleCells=[];this.xCellCount=Math.ceil(K/te),this.yCellCount=Math.ceil(ye/te);for(var He=0;He<this.xCellCount*this.yCellCount;He++)xe.push([]),We.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=K,this.height=ye,this.xScale=this.xCellCount/K,this.yScale=this.yCellCount/ye,this.boxUid=0,this.circleUid=0};da.prototype.keysLength=function(){return this.boxKeys.length+this.circleKeys.length},da.prototype.insert=function(K,ye,te,xe,We){this._forEachCell(ye,te,xe,We,this._insertBoxCell,this.boxUid++),this.boxKeys.push(K),this.bboxes.push(ye),this.bboxes.push(te),this.bboxes.push(xe),this.bboxes.push(We)},da.prototype.insertCircle=function(K,ye,te,xe){this._forEachCell(ye-xe,te-xe,ye+xe,te+xe,this._insertCircleCell,this.circleUid++),this.circleKeys.push(K),this.circles.push(ye),this.circles.push(te),this.circles.push(xe)},da.prototype._insertBoxCell=function(K,ye,te,xe,We,He){this.boxCells[We].push(He)},da.prototype._insertCircleCell=function(K,ye,te,xe,We,He){this.circleCells[We].push(He)},da.prototype._query=function(K,ye,te,xe,We,He){if(te<0||K>this.width||xe<0||ye>this.height)return We?!1:[];var st=[];if(K<=0&&ye<=0&&this.width<=te&&this.height<=xe){if(We)return!0;for(var Et=0;Et<this.boxKeys.length;Et++)st.push({key:this.boxKeys[Et],x1:this.bboxes[Et*4],y1:this.bboxes[Et*4+1],x2:this.bboxes[Et*4+2],y2:this.bboxes[Et*4+3]});for(var Ht=0;Ht<this.circleKeys.length;Ht++){var yr=this.circles[Ht*3],Ir=this.circles[Ht*3+1],wr=this.circles[Ht*3+2];st.push({key:this.circleKeys[Ht],x1:yr-wr,y1:Ir-wr,x2:yr+wr,y2:Ir+wr})}return He?st.filter(He):st}else{var qt={hitTest:We,seenUids:{box:{},circle:{}}};return this._forEachCell(K,ye,te,xe,this._queryCell,st,qt,He),We?st.length>0:st}},da.prototype._queryCircle=function(K,ye,te,xe,We){var He=K-te,st=K+te,Et=ye-te,Ht=ye+te;if(st<0||He>this.width||Ht<0||Et>this.height)return xe?!1:[];var yr=[],Ir={hitTest:xe,circle:{x:K,y:ye,radius:te},seenUids:{box:{},circle:{}}};return this._forEachCell(He,Et,st,Ht,this._queryCellCircle,yr,Ir,We),xe?yr.length>0:yr},da.prototype.query=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!1,We)},da.prototype.hitTest=function(K,ye,te,xe,We){return this._query(K,ye,te,xe,!0,We)},da.prototype.hitTestCircle=function(K,ye,te,xe){return this._queryCircle(K,ye,te,!0,xe)},da.prototype._queryCell=function(K,ye,te,xe,We,He,st,Et){var Ht=st.seenUids,yr=this.boxCells[We];if(yr!==null)for(var Ir=this.bboxes,wr=0,qt=yr;wr<qt.length;wr+=1){var tr=qt[wr];if(!Ht.box[tr]){Ht.box[tr]=!0;var dr=tr*4;if(K<=Ir[dr+2]&&ye<=Ir[dr+3]&&te>=Ir[dr+0]&&xe>=Ir[dr+1]&&(!Et||Et(this.boxKeys[tr]))){if(st.hitTest)return He.push(!0),!0;He.push({key:this.boxKeys[tr],x1:Ir[dr],y1:Ir[dr+1],x2:Ir[dr+2],y2:Ir[dr+3]})}}}var Pr=this.circleCells[We];if(Pr!==null)for(var Vr=this.circles,Hr=0,aa=Pr;Hr<aa.length;Hr+=1){var Qr=aa[Hr];if(!Ht.circle[Qr]){Ht.circle[Qr]=!0;var Gr=Qr*3;if(this._circleAndRectCollide(Vr[Gr],Vr[Gr+1],Vr[Gr+2],K,ye,te,xe)&&(!Et||Et(this.circleKeys[Qr]))){if(st.hitTest)return He.push(!0),!0;var ia=Vr[Gr],Ur=Vr[Gr+1],wa=Vr[Gr+2];He.push({key:this.circleKeys[Qr],x1:ia-wa,y1:Ur-wa,x2:ia+wa,y2:Ur+wa})}}}},da.prototype._queryCellCircle=function(K,ye,te,xe,We,He,st,Et){var Ht=st.circle,yr=st.seenUids,Ir=this.boxCells[We];if(Ir!==null)for(var wr=this.bboxes,qt=0,tr=Ir;qt<tr.length;qt+=1){var dr=tr[qt];if(!yr.box[dr]){yr.box[dr]=!0;var Pr=dr*4;if(this._circleAndRectCollide(Ht.x,Ht.y,Ht.radius,wr[Pr+0],wr[Pr+1],wr[Pr+2],wr[Pr+3])&&(!Et||Et(this.boxKeys[dr])))return He.push(!0),!0}}var Vr=this.circleCells[We];if(Vr!==null)for(var Hr=this.circles,aa=0,Qr=Vr;aa<Qr.length;aa+=1){var Gr=Qr[aa];if(!yr.circle[Gr]){yr.circle[Gr]=!0;var ia=Gr*3;if(this._circlesCollide(Hr[ia],Hr[ia+1],Hr[ia+2],Ht.x,Ht.y,Ht.radius)&&(!Et||Et(this.circleKeys[Gr])))return He.push(!0),!0}}},da.prototype._forEachCell=function(K,ye,te,xe,We,He,st,Et){for(var Ht=this._convertToXCellCoord(K),yr=this._convertToYCellCoord(ye),Ir=this._convertToXCellCoord(te),wr=this._convertToYCellCoord(xe),qt=Ht;qt<=Ir;qt++)for(var tr=yr;tr<=wr;tr++){var dr=this.xCellCount*tr+qt;if(We.call(this,K,ye,te,xe,dr,He,st,Et))return}},da.prototype._convertToXCellCoord=function(K){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(K*this.xScale)))},da.prototype._convertToYCellCoord=function(K){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(K*this.yScale)))},da.prototype._circlesCollide=function(K,ye,te,xe,We,He){var st=xe-K,Et=We-ye,Ht=te+He;return Ht*Ht>st*st+Et*Et},da.prototype._circleAndRectCollide=function(K,ye,te,xe,We,He,st){var Et=(He-xe)/2,Ht=Math.abs(K-(xe+Et));if(Ht>Et+te)return!1;var yr=(st-We)/2,Ir=Math.abs(ye-(We+yr));if(Ir>yr+te)return!1;if(Ht<=Et||Ir<=yr)return!0;var wr=Ht-Et,qt=Ir-yr;return wr*wr+qt*qt<=te*te};function Sa(ve,K,ye,te,xe){var We=e.create();return K?(e.scale(We,We,[1/xe,1/xe,1]),ye||e.rotateZ(We,We,te.angle)):e.multiply(We,te.labelPlaneMatrix,ve),We}function Ti(ve,K,ye,te,xe){if(K){var We=e.clone(ve);return e.scale(We,We,[xe,xe,1]),ye||e.rotateZ(We,We,-te.angle),We}else return te.glCoordMatrix}function ai(ve,K){var ye=[ve.x,ve.y,0,1];as(ye,ye,K);var te=ye[3];return{point:new e.Point(ye[0]/te,ye[1]/te),signedDistanceFromCamera:te}}function an(ve,K){return .5+.5*(ve/K)}function sn(ve,K){var ye=ve[0]/ve[3],te=ve[1]/ve[3],xe=ye>=-K[0]&&ye<=K[0]&&te>=-K[1]&&te<=K[1];return xe}function Mn(ve,K,ye,te,xe,We,He,st){var Et=te?ve.textSizeData:ve.iconSizeData,Ht=e.evaluateSizeForZoom(Et,ye.transform.zoom),yr=[256/ye.width*2+1,256/ye.height*2+1],Ir=te?ve.text.dynamicLayoutVertexArray:ve.icon.dynamicLayoutVertexArray;Ir.clear();for(var wr=ve.lineVertexArray,qt=te?ve.text.placedSymbolArray:ve.icon.placedSymbolArray,tr=ye.transform.width/ye.transform.height,dr=!1,Pr=0;Pr<qt.length;Pr++){var Vr=qt.get(Pr);if(Vr.hidden||Vr.writingMode===e.WritingMode.vertical&&!dr){zo(Vr.numGlyphs,Ir);continue}dr=!1;var Hr=[Vr.anchorX,Vr.anchorY,0,1];if(e.transformMat4(Hr,Hr,K),!sn(Hr,yr)){zo(Vr.numGlyphs,Ir);continue}var aa=Hr[3],Qr=an(ye.transform.cameraToCenterDistance,aa),Gr=e.evaluateSizeForFeature(Et,Ht,Vr),ia=He?Gr/Qr:Gr*Qr,Ur=new e.Point(Vr.anchorX,Vr.anchorY),wa=ai(Ur,xe).point,Oa={},ri=Cn(Vr,ia,!1,st,K,xe,We,ve.glyphOffsetArray,wr,Ir,wa,Ur,Oa,tr);dr=ri.useVertical,(ri.notEnoughRoom||dr||ri.needsFlipping&&Cn(Vr,ia,!0,st,K,xe,We,ve.glyphOffsetArray,wr,Ir,wa,Ur,Oa,tr).notEnoughRoom)&&zo(Vr.numGlyphs,Ir)}te?ve.text.dynamicLayoutVertexBuffer.updateData(Ir):ve.icon.dynamicLayoutVertexBuffer.updateData(Ir)}function On(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=st.glyphStartIndex+st.numGlyphs,wr=st.lineStartIndex,qt=st.lineStartIndex+st.lineLength,tr=K.getoffsetX(st.glyphStartIndex),dr=K.getoffsetX(Ir-1),Pr=Xi(ve*tr,ye,te,xe,We,He,st.segment,wr,qt,Et,Ht,yr);if(!Pr)return null;var Vr=Xi(ve*dr,ye,te,xe,We,He,st.segment,wr,qt,Et,Ht,yr);return Vr?{first:Pr,last:Vr}:null}function $n(ve,K,ye,te){if(ve===e.WritingMode.horizontal){var xe=Math.abs(ye.y-K.y),We=Math.abs(ye.x-K.x)*te;if(xe>We)return{useVertical:!0}}return(ve===e.WritingMode.vertical?K.y<ye.y:K.x>ye.x)?{needsFlipping:!0}:null}function Cn(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt){var tr=K/24,dr=ve.lineOffsetX*tr,Pr=ve.lineOffsetY*tr,Vr;if(ve.numGlyphs>1){var Hr=ve.glyphStartIndex+ve.numGlyphs,aa=ve.lineStartIndex,Qr=ve.lineStartIndex+ve.lineLength,Gr=On(tr,st,dr,Pr,ye,yr,Ir,ve,Et,We,wr);if(!Gr)return{notEnoughRoom:!0};var ia=ai(Gr.first.point,He).point,Ur=ai(Gr.last.point,He).point;if(te&&!ye){var wa=$n(ve.writingMode,ia,Ur,qt);if(wa)return wa}Vr=[Gr.first];for(var Oa=ve.glyphStartIndex+1;Oa<Hr-1;Oa++)Vr.push(Xi(tr*st.getoffsetX(Oa),dr,Pr,ye,yr,Ir,ve.segment,aa,Qr,Et,We,wr));Vr.push(Gr.last)}else{if(te&&!ye){var ri=ai(Ir,xe).point,Pi=ve.lineStartIndex+ve.segment+1,mi=new e.Point(Et.getx(Pi),Et.gety(Pi)),Di=ai(mi,xe),An=Di.signedDistanceFromCamera>0?Di.point:Lo(Ir,mi,ri,1,xe),ln=$n(ve.writingMode,ri,An,qt);if(ln)return ln}var Ii=Xi(tr*st.getoffsetX(ve.glyphStartIndex),dr,Pr,ye,yr,Ir,ve.segment,ve.lineStartIndex,ve.lineStartIndex+ve.lineLength,Et,We,wr);if(!Ii)return{notEnoughRoom:!0};Vr=[Ii]}for(var Wi=0,Hi=Vr;Wi<Hi.length;Wi+=1){var yn=Hi[Wi];e.addDynamicAttributes(Ht,yn.point,yn.angle)}return{}}function Lo(ve,K,ye,te,xe){var We=ai(ve.add(ve.sub(K)._unit()),xe).point,He=ye.sub(We);return ye.add(He._mult(te/He.mag()))}function Xi(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir){var wr=te?ve-K:ve+K,qt=wr>0?1:-1,tr=0;te&&(qt*=-1,tr=Math.PI),qt<0&&(tr+=Math.PI);for(var dr=qt>0?st+He:st+He+1,Pr=xe,Vr=xe,Hr=0,aa=0,Qr=Math.abs(wr),Gr=[];Hr+aa<=Qr;){if(dr+=qt,dr<st||dr>=Et)return null;if(Vr=Pr,Gr.push(Pr),Pr=Ir[dr],Pr===void 0){var ia=new e.Point(Ht.getx(dr),Ht.gety(dr)),Ur=ai(ia,yr);if(Ur.signedDistanceFromCamera>0)Pr=Ir[dr]=Ur.point;else{var wa=dr-qt,Oa=Hr===0?We:new e.Point(Ht.getx(wa),Ht.gety(wa));Pr=Lo(Oa,ia,Vr,Qr-Hr+1,yr)}}Hr+=aa,aa=Vr.dist(Pr)}var ri=(Qr-Hr)/aa,Pi=Pr.sub(Vr),mi=Pi.mult(ri)._add(Vr);mi._add(Pi._unit()._perp()._mult(ye*qt));var Di=tr+Math.atan2(Pr.y-Vr.y,Pr.x-Vr.x);return Gr.push(mi),{point:mi,angle:Di,path:Gr}}var Jo=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function zo(ve,K){for(var ye=0;ye<ve;ye++){var te=K.length;K.resize(te+4),K.float32.set(Jo,te*3)}}function as(ve,K,ye){var te=K[0],xe=K[1];return ve[0]=ye[0]*te+ye[4]*xe+ye[12],ve[1]=ye[1]*te+ye[5]*xe+ye[13],ve[3]=ye[3]*te+ye[7]*xe+ye[15],ve}var Pn=100,go=function(K,ye,te){ye===void 0&&(ye=new da(K.width+2*Pn,K.height+2*Pn,25)),te===void 0&&(te=new da(K.width+2*Pn,K.height+2*Pn,25)),this.transform=K,this.grid=ye,this.ignoredGrid=te,this.pitchfactor=Math.cos(K._pitch)*K.cameraToCenterDistance,this.screenRightBoundary=K.width+Pn,this.screenBottomBoundary=K.height+Pn,this.gridRightBoundary=K.width+2*Pn,this.gridBottomBoundary=K.height+2*Pn};go.prototype.placeCollisionBox=function(K,ye,te,xe,We){var He=this.projectAndGetPerspectiveRatio(xe,K.anchorPointX,K.anchorPointY),st=te*He.perspectiveRatio,Et=K.x1*st+He.point.x,Ht=K.y1*st+He.point.y,yr=K.x2*st+He.point.x,Ir=K.y2*st+He.point.y;return!this.isInsideGrid(Et,Ht,yr,Ir)||!ye&&this.grid.hitTest(Et,Ht,yr,Ir,We)?{box:[],offscreen:!1}:{box:[Et,Ht,yr,Ir],offscreen:this.isOffscreen(Et,Ht,yr,Ir)}},go.prototype.placeCollisionCircles=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt){var tr=[],dr=new e.Point(ye.anchorX,ye.anchorY),Pr=ai(dr,He),Vr=an(this.transform.cameraToCenterDistance,Pr.signedDistanceFromCamera),Hr=yr?We/Vr:We*Vr,aa=Hr/e.ONE_EM,Qr=ai(dr,st).point,Gr={},ia=ye.lineOffsetX*aa,Ur=ye.lineOffsetY*aa,wa=On(aa,xe,ia,Ur,!1,Qr,dr,ye,te,st,Gr),Oa=!1,ri=!1,Pi=!0;if(wa){for(var mi=wr*.5*Vr+qt,Di=new e.Point(-Pn,-Pn),An=new e.Point(this.screenRightBoundary,this.screenBottomBoundary),ln=new Ca,Ii=wa.first,Wi=wa.last,Hi=[],yn=Ii.path.length-1;yn>=1;yn--)Hi.push(Ii.path[yn]);for(var zn=1;zn<Wi.path.length;zn++)Hi.push(Wi.path[zn]);var ms=mi*2.5;if(Et){var us=Hi.map(function(Ep){return ai(Ep,Et)});us.some(function(Ep){return Ep.signedDistanceFromCamera<=0})?Hi=[]:Hi=us.map(function(Ep){return Ep.point})}var Vs=[];if(Hi.length>0){for(var qo=Hi[0].clone(),Ls=Hi[0].clone(),wl=1;wl<Hi.length;wl++)qo.x=Math.min(qo.x,Hi[wl].x),qo.y=Math.min(qo.y,Hi[wl].y),Ls.x=Math.max(Ls.x,Hi[wl].x),Ls.y=Math.max(Ls.y,Hi[wl].y);qo.x>=Di.x&&Ls.x<=An.x&&qo.y>=Di.y&&Ls.y<=An.y?Vs=[Hi]:Ls.x<Di.x||qo.x>An.x||Ls.y<Di.y||qo.y>An.y?Vs=[]:Vs=e.clipLine([Hi],Di.x,Di.y,An.x,An.y)}for(var Ru=0,Ap=Vs;Ru<Ap.length;Ru+=1){var Sp=Ap[Ru];ln.reset(Sp,mi*.25);var Eh=0;ln.length<=.5*mi?Eh=1:Eh=Math.ceil(ln.paddedLength/ms)+1;for(var Vp=0;Vp<Eh;Vp++){var Vd=Vp/Math.max(Eh-1,1),td=ln.lerp(Vd),kh=td.x+Pn,rd=td.y+Pn;tr.push(kh,rd,mi,0);var Xh=kh-mi,Ch=rd-mi,Mp=kh+mi,qp=rd+mi;if(Pi=Pi&&this.isOffscreen(Xh,Ch,Mp,qp),ri=ri||this.isInsideGrid(Xh,Ch,Mp,qp),!K&&this.grid.hitTestCircle(kh,rd,mi,Ir)&&(Oa=!0,!Ht))return{circles:[],offscreen:!1,collisionDetected:Oa}}}}return{circles:!Ht&&Oa||!ri?[]:tr,offscreen:Pi,collisionDetected:Oa}},go.prototype.queryRenderedSymbols=function(K){if(K.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};for(var ye=[],te=1/0,xe=1/0,We=-1/0,He=-1/0,st=0,Et=K;st<Et.length;st+=1){var Ht=Et[st],yr=new e.Point(Ht.x+Pn,Ht.y+Pn);te=Math.min(te,yr.x),xe=Math.min(xe,yr.y),We=Math.max(We,yr.x),He=Math.max(He,yr.y),ye.push(yr)}for(var Ir=this.grid.query(te,xe,We,He).concat(this.ignoredGrid.query(te,xe,We,He)),wr={},qt={},tr=0,dr=Ir;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=Pr.key;if(wr[Vr.bucketInstanceId]===void 0&&(wr[Vr.bucketInstanceId]={}),!wr[Vr.bucketInstanceId][Vr.featureIndex]){var Hr=[new e.Point(Pr.x1,Pr.y1),new e.Point(Pr.x2,Pr.y1),new e.Point(Pr.x2,Pr.y2),new e.Point(Pr.x1,Pr.y2)];e.polygonIntersectsPolygon(ye,Hr)&&(wr[Vr.bucketInstanceId][Vr.featureIndex]=!0,qt[Vr.bucketInstanceId]===void 0&&(qt[Vr.bucketInstanceId]=[]),qt[Vr.bucketInstanceId].push(Vr.featureIndex))}}return qt},go.prototype.insertCollisionBox=function(K,ye,te,xe,We){var He=ye?this.ignoredGrid:this.grid,st={bucketInstanceId:te,featureIndex:xe,collisionGroupID:We};He.insert(st,K[0],K[1],K[2],K[3])},go.prototype.insertCollisionCircles=function(K,ye,te,xe,We){for(var He=ye?this.ignoredGrid:this.grid,st={bucketInstanceId:te,featureIndex:xe,collisionGroupID:We},Et=0;Et<K.length;Et+=4)He.insertCircle(st,K[Et],K[Et+1],K[Et+2])},go.prototype.projectAndGetPerspectiveRatio=function(K,ye,te){var xe=[ye,te,0,1];as(xe,xe,K);var We=new e.Point((xe[0]/xe[3]+1)/2*this.transform.width+Pn,(-xe[1]/xe[3]+1)/2*this.transform.height+Pn);return{point:We,perspectiveRatio:.5+.5*(this.transform.cameraToCenterDistance/xe[3])}},go.prototype.isOffscreen=function(K,ye,te,xe){return te<Pn||K>=this.screenRightBoundary||xe<Pn||ye>this.screenBottomBoundary},go.prototype.isInsideGrid=function(K,ye,te,xe){return te>=0&&K<this.gridRightBoundary&&xe>=0&&ye<this.gridBottomBoundary},go.prototype.getViewportMatrix=function(){var K=e.identity([]);return e.translate(K,K,[-Pn,-Pn,0]),K};function In(ve,K,ye){return K*(e.EXTENT/(ve.tileSize*Math.pow(2,ye-ve.tileID.overscaledZ)))}var Do=function(K,ye,te,xe){K?this.opacity=Math.max(0,Math.min(1,K.opacity+(K.placed?ye:-ye))):this.opacity=xe&&te?1:0,this.placed=te};Do.prototype.isHidden=function(){return this.opacity===0&&!this.placed};var Ho=function(K,ye,te,xe,We){this.text=new Do(K?K.text:null,ye,te,We),this.icon=new Do(K?K.icon:null,ye,xe,We)};Ho.prototype.isHidden=function(){return this.text.isHidden()&&this.icon.isHidden()};var Qo=function(K,ye,te){this.text=K,this.icon=ye,this.skipFade=te},Xn=function(){this.invProjMatrix=e.create(),this.viewportMatrix=e.create(),this.circles=[]},po=function(K,ye,te,xe,We){this.bucketInstanceId=K,this.featureIndex=ye,this.sourceLayerIndex=te,this.bucketIndex=xe,this.tileID=We},ys=function(K){this.crossSourceCollisions=K,this.maxGroupID=0,this.collisionGroups={}};ys.prototype.get=function(K){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[K]){var ye=++this.maxGroupID;this.collisionGroups[K]={ID:ye,predicate:function(te){return te.collisionGroupID===ye}}}return this.collisionGroups[K]};function Is(ve,K,ye,te,xe){var We=e.getAnchorAlignment(ve),He=We.horizontalAlign,st=We.verticalAlign,Et=-(He-.5)*K,Ht=-(st-.5)*ye,yr=e.evaluateVariableOffset(ve,te);return new e.Point(Et+yr[0]*xe,Ht+yr[1]*xe)}function Fs(ve,K,ye,te,xe,We){var He=ve.x1,st=ve.x2,Et=ve.y1,Ht=ve.y2,yr=ve.anchorPointX,Ir=ve.anchorPointY,wr=new e.Point(K,ye);return te&&wr._rotate(xe?We:-We),{x1:He+wr.x,y1:Et+wr.y,x2:st+wr.x,y2:Ht+wr.y,anchorPointX:yr,anchorPointY:Ir}}var $o=function(K,ye,te,xe){this.transform=K.clone(),this.collisionIndex=new go(this.transform),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=ye,this.retainedQueryData={},this.collisionGroups=new ys(te),this.collisionCircleArrays={},this.prevPlacement=xe,xe&&(xe.prevPlacement=void 0),this.placedOrientations={}};$o.prototype.getBucketParts=function(K,ye,te,xe){var We=te.getBucket(ye),He=te.latestFeatureIndex;if(!(!We||!He||ye.id!==We.layerIds[0])){var st=te.collisionBoxArray,Et=We.layers[0].layout,Ht=Math.pow(2,this.transform.zoom-te.tileID.overscaledZ),yr=te.tileSize/e.EXTENT,Ir=this.transform.calculatePosMatrix(te.tileID.toUnwrapped()),wr=Et.get("text-pitch-alignment")==="map",qt=Et.get("text-rotation-alignment")==="map",tr=In(te,1,this.transform.zoom),dr=Sa(Ir,wr,qt,this.transform,tr),Pr=null;if(wr){var Vr=Ti(Ir,wr,qt,this.transform,tr);Pr=e.multiply([],this.transform.labelPlaneMatrix,Vr)}this.retainedQueryData[We.bucketInstanceId]=new po(We.bucketInstanceId,He,We.sourceLayerIndex,We.index,te.tileID);var Hr={bucket:We,layout:Et,posMatrix:Ir,textLabelPlaneMatrix:dr,labelToScreenMatrix:Pr,scale:Ht,textPixelRatio:yr,holdingForFade:te.holdingForFade(),collisionBoxArray:st,partiallyEvaluatedTextSize:e.evaluateSizeForZoom(We.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(We.sourceID)};if(xe)for(var aa=0,Qr=We.sortKeyRanges;aa<Qr.length;aa+=1){var Gr=Qr[aa],ia=Gr.sortKey,Ur=Gr.symbolInstanceStart,wa=Gr.symbolInstanceEnd;K.push({sortKey:ia,symbolInstanceStart:Ur,symbolInstanceEnd:wa,parameters:Hr})}else K.push({symbolInstanceStart:0,symbolInstanceEnd:We.symbolInstances.length,parameters:Hr})}},$o.prototype.attemptAnchorPlacement=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt,tr,dr){var Pr=[wr.textOffset0,wr.textOffset1],Vr=Is(K,te,xe,Pr,We),Hr=this.collisionIndex.placeCollisionBox(Fs(ye,Vr.x,Vr.y,He,st,this.transform.angle),Ir,Et,Ht,yr.predicate);if(dr){var aa=this.collisionIndex.placeCollisionBox(Fs(dr,Vr.x,Vr.y,He,st,this.transform.angle),Ir,Et,Ht,yr.predicate);if(aa.box.length===0)return}if(Hr.box.length>0){var Qr;return this.prevPlacement&&this.prevPlacement.variableOffsets[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID]&&this.prevPlacement.placements[wr.crossTileID].text&&(Qr=this.prevPlacement.variableOffsets[wr.crossTileID].anchor),this.variableOffsets[wr.crossTileID]={textOffset:Pr,width:te,height:xe,anchor:K,textBoxScale:We,prevAnchor:Qr},this.markUsedJustification(qt,K,wr,tr),qt.allowVerticalPlacement&&(this.markUsedOrientation(qt,tr,wr),this.placedOrientations[wr.crossTileID]=tr),{shift:Vr,placedGlyphBoxes:Hr}}},$o.prototype.placeLayerBucketPart=function(K,ye,te){var xe=this,We=K.parameters,He=We.bucket,st=We.layout,Et=We.posMatrix,Ht=We.textLabelPlaneMatrix,yr=We.labelToScreenMatrix,Ir=We.textPixelRatio,wr=We.holdingForFade,qt=We.collisionBoxArray,tr=We.partiallyEvaluatedTextSize,dr=We.collisionGroup,Pr=st.get("text-optional"),Vr=st.get("icon-optional"),Hr=st.get("text-allow-overlap"),aa=st.get("icon-allow-overlap"),Qr=st.get("text-rotation-alignment")==="map",Gr=st.get("text-pitch-alignment")==="map",ia=st.get("icon-text-fit")!=="none",Ur=st.get("symbol-z-order")==="viewport-y",wa=Hr&&(aa||!He.hasIconData()||Vr),Oa=aa&&(Hr||!He.hasTextData()||Pr);!He.collisionArrays&&qt&&He.deserializeCollisionBoxes(qt);var ri=function(Ii,Wi){if(!ye[Ii.crossTileID]){if(wr){xe.placements[Ii.crossTileID]=new Qo(!1,!1,!1);return}var Hi=!1,yn=!1,zn=!0,ms=null,us={box:null,offscreen:null},Vs={box:null,offscreen:null},qo=null,Ls=null,wl=null,Ru=0,Ap=0,Sp=0;Wi.textFeatureIndex?Ru=Wi.textFeatureIndex:Ii.useRuntimeCollisionCircles&&(Ru=Ii.featureIndex),Wi.verticalTextFeatureIndex&&(Ap=Wi.verticalTextFeatureIndex);var Eh=Wi.textBox;if(Eh){var Vp=function(Du){var Bl=e.WritingMode.horizontal;if(He.allowVerticalPlacement&&!Du&&xe.prevPlacement){var Lh=xe.prevPlacement.placedOrientations[Ii.crossTileID];Lh&&(xe.placedOrientations[Ii.crossTileID]=Lh,Bl=Lh,xe.markUsedOrientation(He,Bl,Ii))}return Bl},Vd=function(Du,Bl){if(He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Wi.verticalTextBox)for(var Lh=0,Iv=He.writingModes;Lh<Iv.length;Lh+=1){var om=Iv[Lh];if(om===e.WritingMode.vertical?(us=Bl(),Vs=us):us=Du(),us&&us.box&&us.box.length)break}else us=Du()};if(st.get("text-variable-anchor")){var Xh=st.get("text-variable-anchor");if(xe.prevPlacement&&xe.prevPlacement.variableOffsets[Ii.crossTileID]){var Ch=xe.prevPlacement.variableOffsets[Ii.crossTileID];Xh.indexOf(Ch.anchor)>0&&(Xh=Xh.filter(function(Du){return Du!==Ch.anchor}),Xh.unshift(Ch.anchor))}var Mp=function(Du,Bl,Lh){for(var Iv=Du.x2-Du.x1,om=Du.y2-Du.y1,Ql=Ii.textBoxScale,xg=ia&&!aa?Bl:null,sv={box:[],offscreen:!1},y0=Hr?Xh.length*2:Xh.length,kp=0;kp<y0;++kp){var lv=Xh[kp%Xh.length],_0=kp>=Xh.length,bg=xe.attemptAnchorPlacement(lv,Du,Iv,om,Ql,Qr,Gr,Ir,Et,dr,_0,Ii,He,Lh,xg);if(bg&&(sv=bg.placedGlyphBoxes,sv&&sv.box&&sv.box.length)){Hi=!0,ms=bg.shift;break}}return sv},qp=function(){return Mp(Eh,Wi.iconBox,e.WritingMode.horizontal)},Ep=function(){var Du=Wi.verticalTextBox,Bl=us&&us.box&&us.box.length;return He.allowVerticalPlacement&&!Bl&&Ii.numVerticalGlyphVertices>0&&Du?Mp(Du,Wi.verticalIconBox,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(qp,Ep),us&&(Hi=us.box,zn=us.offscreen);var Cv=Vp(us&&us.box);if(!Hi&&xe.prevPlacement){var qd=xe.prevPlacement.variableOffsets[Ii.crossTileID];qd&&(xe.variableOffsets[Ii.crossTileID]=qd,xe.markUsedJustification(He,qd.anchor,Ii,Cv))}}else{var td=function(Du,Bl){var Lh=xe.collisionIndex.placeCollisionBox(Du,Hr,Ir,Et,dr.predicate);return Lh&&Lh.box&&Lh.box.length&&(xe.markUsedOrientation(He,Bl,Ii),xe.placedOrientations[Ii.crossTileID]=Bl),Lh},kh=function(){return td(Eh,e.WritingMode.horizontal)},rd=function(){var Du=Wi.verticalTextBox;return He.allowVerticalPlacement&&Ii.numVerticalGlyphVertices>0&&Du?td(Du,e.WritingMode.vertical):{box:null,offscreen:null}};Vd(kh,rd),Vp(us&&us.box&&us.box.length)}}if(qo=us,Hi=qo&&qo.box&&qo.box.length>0,zn=qo&&qo.offscreen,Ii.useRuntimeCollisionCircles){var Sf=He.text.placedSymbolArray.get(Ii.centerJustifiedTextSymbolIndex),Hd=e.evaluateSizeForFeature(He.textSizeData,tr,Sf),Lv=st.get("text-padding"),eh=Ii.collisionCircleDiameter;Ls=xe.collisionIndex.placeCollisionCircles(Hr,Sf,He.lineVertexArray,He.glyphOffsetArray,Hd,Et,Ht,yr,te,Gr,dr.predicate,eh,Lv),Hi=Hr||Ls.circles.length>0&&!Ls.collisionDetected,zn=zn&&Ls.offscreen}if(Wi.iconFeatureIndex&&(Sp=Wi.iconFeatureIndex),Wi.iconBox){var iv=function(Du){var Bl=ia&&ms?Fs(Du,ms.x,ms.y,Qr,Gr,xe.transform.angle):Du;return xe.collisionIndex.placeCollisionBox(Bl,aa,Ir,Et,dr.predicate)};Vs&&Vs.box&&Vs.box.length&&Wi.verticalIconBox?(wl=iv(Wi.verticalIconBox),yn=wl.box.length>0):(wl=iv(Wi.iconBox),yn=wl.box.length>0),zn=zn&&wl.offscreen}var im=Pr||Ii.numHorizontalGlyphVertices===0&&Ii.numVerticalGlyphVertices===0,nm=Vr||Ii.numIconVertices===0;if(!im&&!nm?yn=Hi=yn&&Hi:nm?im||(yn=yn&&Hi):Hi=yn&&Hi,Hi&&qo&&qo.box&&(Vs&&Vs.box&&Ap?xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ap,dr.ID):xe.collisionIndex.insertCollisionBox(qo.box,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID)),yn&&wl&&xe.collisionIndex.insertCollisionBox(wl.box,st.get("icon-ignore-placement"),He.bucketInstanceId,Sp,dr.ID),Ls&&(Hi&&xe.collisionIndex.insertCollisionCircles(Ls.circles,st.get("text-ignore-placement"),He.bucketInstanceId,Ru,dr.ID),te)){var Pv=He.bucketInstanceId,nv=xe.collisionCircleArrays[Pv];nv===void 0&&(nv=xe.collisionCircleArrays[Pv]=new Xn);for(var ov=0;ov<Ls.circles.length;ov+=4)nv.circles.push(Ls.circles[ov+0]),nv.circles.push(Ls.circles[ov+1]),nv.circles.push(Ls.circles[ov+2]),nv.circles.push(Ls.collisionDetected?1:0)}xe.placements[Ii.crossTileID]=new Qo(Hi||wa,yn||Oa,zn||He.justReloaded),ye[Ii.crossTileID]=!0}};if(Ur)for(var Pi=He.getSortedSymbolIndexes(this.transform.angle),mi=Pi.length-1;mi>=0;--mi){var Di=Pi[mi];ri(He.symbolInstances.get(Di),He.collisionArrays[Di])}else for(var An=K.symbolInstanceStart;An<K.symbolInstanceEnd;An++)ri(He.symbolInstances.get(An),He.collisionArrays[An]);if(te&&He.bucketInstanceId in this.collisionCircleArrays){var ln=this.collisionCircleArrays[He.bucketInstanceId];e.invert(ln.invProjMatrix,Et),ln.viewportMatrix=this.collisionIndex.getViewportMatrix()}He.justReloaded=!1},$o.prototype.markUsedJustification=function(K,ye,te,xe){var We={left:te.leftJustifiedTextSymbolIndex,center:te.centerJustifiedTextSymbolIndex,right:te.rightJustifiedTextSymbolIndex},He;xe===e.WritingMode.vertical?He=te.verticalPlacedTextSymbolIndex:He=We[e.getAnchorJustification(ye)];for(var st=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex,te.verticalPlacedTextSymbolIndex],Et=0,Ht=st;Et<Ht.length;Et+=1){var yr=Ht[Et];yr>=0&&(He>=0&&yr!==He?K.text.placedSymbolArray.get(yr).crossTileID=0:K.text.placedSymbolArray.get(yr).crossTileID=te.crossTileID)}},$o.prototype.markUsedOrientation=function(K,ye,te){for(var xe=ye===e.WritingMode.horizontal||ye===e.WritingMode.horizontalOnly?ye:0,We=ye===e.WritingMode.vertical?ye:0,He=[te.leftJustifiedTextSymbolIndex,te.centerJustifiedTextSymbolIndex,te.rightJustifiedTextSymbolIndex],st=0,Et=He;st<Et.length;st+=1){var Ht=Et[st];K.text.placedSymbolArray.get(Ht).placedOrientation=xe}te.verticalPlacedTextSymbolIndex&&(K.text.placedSymbolArray.get(te.verticalPlacedTextSymbolIndex).placedOrientation=We)},$o.prototype.commit=function(K){this.commitTime=K,this.zoomAtLastRecencyCheck=this.transform.zoom;var ye=this.prevPlacement,te=!1;this.prevZoomAdjustment=ye?ye.zoomAdjustment(this.transform.zoom):0;var xe=ye?ye.symbolFadeChange(K):1,We=ye?ye.opacities:{},He=ye?ye.variableOffsets:{},st=ye?ye.placedOrientations:{};for(var Et in this.placements){var Ht=this.placements[Et],yr=We[Et];yr?(this.opacities[Et]=new Ho(yr,xe,Ht.text,Ht.icon),te=te||Ht.text!==yr.text.placed||Ht.icon!==yr.icon.placed):(this.opacities[Et]=new Ho(null,xe,Ht.text,Ht.icon,Ht.skipFade),te=te||Ht.text||Ht.icon)}for(var Ir in We){var wr=We[Ir];if(!this.opacities[Ir]){var qt=new Ho(wr,xe,!1,!1);qt.isHidden()||(this.opacities[Ir]=qt,te=te||wr.text.placed||wr.icon.placed)}}for(var tr in He)!this.variableOffsets[tr]&&this.opacities[tr]&&!this.opacities[tr].isHidden()&&(this.variableOffsets[tr]=He[tr]);for(var dr in st)!this.placedOrientations[dr]&&this.opacities[dr]&&!this.opacities[dr].isHidden()&&(this.placedOrientations[dr]=st[dr]);te?this.lastPlacementChangeTime=K:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ye?ye.lastPlacementChangeTime:K)},$o.prototype.updateLayerOpacities=function(K,ye){for(var te={},xe=0,We=ye;xe<We.length;xe+=1){var He=We[xe],st=He.getBucket(K);st&&He.latestFeatureIndex&&K.id===st.layerIds[0]&&this.updateBucketOpacities(st,te,He.collisionBoxArray)}},$o.prototype.updateBucketOpacities=function(K,ye,te){var xe=this;K.hasTextData()&&K.text.opacityVertexArray.clear(),K.hasIconData()&&K.icon.opacityVertexArray.clear(),K.hasIconCollisionBoxData()&&K.iconCollisionBox.collisionVertexArray.clear(),K.hasTextCollisionBoxData()&&K.textCollisionBox.collisionVertexArray.clear();var We=K.layers[0].layout,He=new Ho(null,0,!1,!1,!0),st=We.get("text-allow-overlap"),Et=We.get("icon-allow-overlap"),Ht=We.get("text-variable-anchor"),yr=We.get("text-rotation-alignment")==="map",Ir=We.get("text-pitch-alignment")==="map",wr=We.get("icon-text-fit")!=="none",qt=new Ho(null,0,st&&(Et||!K.hasIconData()||We.get("icon-optional")),Et&&(st||!K.hasTextData()||We.get("text-optional")),!0);!K.collisionArrays&&te&&(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData())&&K.deserializeCollisionBoxes(te);for(var tr=function(Hr,aa,Qr){for(var Gr=0;Gr<aa/4;Gr++)Hr.opacityVertexArray.emplaceBack(Qr)},dr=function(Hr){var aa=K.symbolInstances.get(Hr),Qr=aa.numHorizontalGlyphVertices,Gr=aa.numVerticalGlyphVertices,ia=aa.crossTileID,Ur=ye[ia],wa=xe.opacities[ia];Ur?wa=He:wa||(wa=qt,xe.opacities[ia]=wa),ye[ia]=!0;var Oa=Qr>0||Gr>0,ri=aa.numIconVertices>0,Pi=xe.placedOrientations[aa.crossTileID],mi=Pi===e.WritingMode.vertical,Di=Pi===e.WritingMode.horizontal||Pi===e.WritingMode.horizontalOnly;if(Oa){var An=vl(wa.text),ln=mi?ji:An;tr(K.text,Qr,ln);var Ii=Di?ji:An;tr(K.text,Gr,Ii);var Wi=wa.text.isHidden();[aa.rightJustifiedTextSymbolIndex,aa.centerJustifiedTextSymbolIndex,aa.leftJustifiedTextSymbolIndex].forEach(function(Sp){Sp>=0&&(K.text.placedSymbolArray.get(Sp).hidden=Wi||mi?1:0)}),aa.verticalPlacedTextSymbolIndex>=0&&(K.text.placedSymbolArray.get(aa.verticalPlacedTextSymbolIndex).hidden=Wi||Di?1:0);var Hi=xe.variableOffsets[aa.crossTileID];Hi&&xe.markUsedJustification(K,Hi.anchor,aa,Pi);var yn=xe.placedOrientations[aa.crossTileID];yn&&(xe.markUsedJustification(K,"left",aa,yn),xe.markUsedOrientation(K,yn,aa))}if(ri){var zn=vl(wa.icon),ms=!(wr&&aa.verticalPlacedIconSymbolIndex&&mi);if(aa.placedIconSymbolIndex>=0){var us=ms?zn:ji;tr(K.icon,aa.numIconVertices,us),K.icon.placedSymbolArray.get(aa.placedIconSymbolIndex).hidden=wa.icon.isHidden()}if(aa.verticalPlacedIconSymbolIndex>=0){var Vs=ms?ji:zn;tr(K.icon,aa.numVerticalIconVertices,Vs),K.icon.placedSymbolArray.get(aa.verticalPlacedIconSymbolIndex).hidden=wa.icon.isHidden()}}if(K.hasIconCollisionBoxData()||K.hasTextCollisionBoxData()){var qo=K.collisionArrays[Hr];if(qo){var Ls=new e.Point(0,0);if(qo.textBox||qo.verticalTextBox){var wl=!0;if(Ht){var Ru=xe.variableOffsets[ia];Ru?(Ls=Is(Ru.anchor,Ru.width,Ru.height,Ru.textOffset,Ru.textBoxScale),yr&&Ls._rotate(Ir?xe.transform.angle:-xe.transform.angle)):wl=!1}qo.textBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||mi,Ls.x,Ls.y),qo.verticalTextBox&&fi(K.textCollisionBox.collisionVertexArray,wa.text.placed,!wl||Di,Ls.x,Ls.y)}var Ap=!!(!Di&&qo.verticalIconBox);qo.iconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,Ap,wr?Ls.x:0,wr?Ls.y:0),qo.verticalIconBox&&fi(K.iconCollisionBox.collisionVertexArray,wa.icon.placed,!Ap,wr?Ls.x:0,wr?Ls.y:0)}}},Pr=0;Pr<K.symbolInstances.length;Pr++)dr(Pr);if(K.sortFeatures(this.transform.angle),this.retainedQueryData[K.bucketInstanceId]&&(this.retainedQueryData[K.bucketInstanceId].featureSortOrder=K.featureSortOrder),K.hasTextData()&&K.text.opacityVertexBuffer&&K.text.opacityVertexBuffer.updateData(K.text.opacityVertexArray),K.hasIconData()&&K.icon.opacityVertexBuffer&&K.icon.opacityVertexBuffer.updateData(K.icon.opacityVertexArray),K.hasIconCollisionBoxData()&&K.iconCollisionBox.collisionVertexBuffer&&K.iconCollisionBox.collisionVertexBuffer.updateData(K.iconCollisionBox.collisionVertexArray),K.hasTextCollisionBoxData()&&K.textCollisionBox.collisionVertexBuffer&&K.textCollisionBox.collisionVertexBuffer.updateData(K.textCollisionBox.collisionVertexArray),K.bucketInstanceId in this.collisionCircleArrays){var Vr=this.collisionCircleArrays[K.bucketInstanceId];K.placementInvProjMatrix=Vr.invProjMatrix,K.placementViewportMatrix=Vr.viewportMatrix,K.collisionCircleArray=Vr.circles,delete this.collisionCircleArrays[K.bucketInstanceId]}},$o.prototype.symbolFadeChange=function(K){return this.fadeDuration===0?1:(K-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment},$o.prototype.zoomAdjustment=function(K){return Math.max(0,(this.transform.zoom-K)/1.5)},$o.prototype.hasTransitions=function(K){return this.stale||K-this.lastPlacementChangeTime<this.fadeDuration},$o.prototype.stillRecent=function(K,ye){var te=this.zoomAtLastRecencyCheck===ye?1-this.zoomAdjustment(ye):1;return this.zoomAtLastRecencyCheck=ye,this.commitTime+this.fadeDuration*te>K},$o.prototype.setStale=function(){this.stale=!0};function fi(ve,K,ye,te,xe){ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0),ve.emplaceBack(K?1:0,ye?1:0,te||0,xe||0)}var mn=Math.pow(2,25),ol=Math.pow(2,24),Os=Math.pow(2,17),so=Math.pow(2,16),Ns=Math.pow(2,9),fs=Math.pow(2,8),al=Math.pow(2,1);function vl(ve){if(ve.opacity===0&&!ve.placed)return 0;if(ve.opacity===1&&ve.placed)return 4294967295;var K=ve.placed?1:0,ye=Math.floor(ve.opacity*127);return ye*mn+K*ol+ye*Os+K*so+ye*Ns+K*fs+ye*al+K}var ji=0,To=function(K){this._sortAcrossTiles=K.layout.get("symbol-z-order")!=="viewport-y"&&K.layout.get("symbol-sort-key").constantOr(1)!==void 0,this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]};To.prototype.continuePlacement=function(K,ye,te,xe,We){for(var He=this._bucketParts;this._currentTileIndex<K.length;){var st=K[this._currentTileIndex];if(ye.getBucketParts(He,xe,st,this._sortAcrossTiles),this._currentTileIndex++,We())return!0}for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,He.sort(function(Ht,yr){return Ht.sortKey-yr.sortKey}));this._currentPartIndex<He.length;){var Et=He[this._currentPartIndex];if(ye.placeLayerBucketPart(Et,this._seenCrossTileIDs,te),this._currentPartIndex++,We())return!0}return!1};var Yn=function(K,ye,te,xe,We,He,st){this.placement=new $o(K,We,He,st),this._currentPlacementIndex=ye.length-1,this._forceFullPlacement=te,this._showCollisionBoxes=xe,this._done=!1};Yn.prototype.isDone=function(){return this._done},Yn.prototype.continuePlacement=function(K,ye,te){for(var xe=this,We=e.browser.now(),He=function(){var Ir=e.browser.now()-We;return xe._forceFullPlacement?!1:Ir>2};this._currentPlacementIndex>=0;){var st=K[this._currentPlacementIndex],Et=ye[st],Ht=this.placement.collisionIndex.transform.zoom;if(Et.type==="symbol"&&(!Et.minzoom||Et.minzoom<=Ht)&&(!Et.maxzoom||Et.maxzoom>Ht)){this._inProgressLayer||(this._inProgressLayer=new To(Et));var yr=this._inProgressLayer.continuePlacement(te[Et.source],this.placement,this._showCollisionBoxes,Et,He);if(yr)return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0},Yn.prototype.commit=function(K){return this.placement.commit(K),this.placement};var _s=512/e.EXTENT/2,Yo=function(K,ye,te){this.tileID=K,this.indexedSymbolInstances={},this.bucketInstanceId=te;for(var xe=0;xe<ye.length;xe++){var We=ye.get(xe),He=We.key;this.indexedSymbolInstances[He]||(this.indexedSymbolInstances[He]=[]),this.indexedSymbolInstances[He].push({crossTileID:We.crossTileID,coord:this.getScaledCoordinates(We,K)})}};Yo.prototype.getScaledCoordinates=function(K,ye){var te=ye.canonical.z-this.tileID.canonical.z,xe=_s/Math.pow(2,te);return{x:Math.floor((ye.canonical.x*e.EXTENT+K.anchorX)*xe),y:Math.floor((ye.canonical.y*e.EXTENT+K.anchorY)*xe)}},Yo.prototype.findMatches=function(K,ye,te){for(var xe=this.tileID.canonical.z<ye.canonical.z?1:Math.pow(2,this.tileID.canonical.z-ye.canonical.z),We=0;We<K.length;We++){var He=K.get(We);if(!He.crossTileID){var st=this.indexedSymbolInstances[He.key];if(st)for(var Et=this.getScaledCoordinates(He,ye),Ht=0,yr=st;Ht<yr.length;Ht+=1){var Ir=yr[Ht];if(Math.abs(Ir.coord.x-Et.x)<=xe&&Math.abs(Ir.coord.y-Et.y)<=xe&&!te[Ir.crossTileID]){te[Ir.crossTileID]=!0,He.crossTileID=Ir.crossTileID;break}}}}};var Nn=function(){this.maxCrossTileID=0};Nn.prototype.generate=function(){return++this.maxCrossTileID};var Wl=function(){this.indexes={},this.usedCrossTileIDs={},this.lng=0};Wl.prototype.handleWrapJump=function(K){var ye=Math.round((K-this.lng)/360);if(ye!==0)for(var te in this.indexes){var xe=this.indexes[te],We={};for(var He in xe){var st=xe[He];st.tileID=st.tileID.unwrapTo(st.tileID.wrap+ye),We[st.tileID.key]=st}this.indexes[te]=We}this.lng=K},Wl.prototype.addBucket=function(K,ye,te){if(this.indexes[K.overscaledZ]&&this.indexes[K.overscaledZ][K.key]){if(this.indexes[K.overscaledZ][K.key].bucketInstanceId===ye.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(K.overscaledZ,this.indexes[K.overscaledZ][K.key])}for(var xe=0;xe<ye.symbolInstances.length;xe++){var We=ye.symbolInstances.get(xe);We.crossTileID=0}this.usedCrossTileIDs[K.overscaledZ]||(this.usedCrossTileIDs[K.overscaledZ]={});var He=this.usedCrossTileIDs[K.overscaledZ];for(var st in this.indexes){var Et=this.indexes[st];if(Number(st)>K.overscaledZ)for(var Ht in Et){var yr=Et[Ht];yr.tileID.isChildOf(K)&&yr.findMatches(ye.symbolInstances,K,He)}else{var Ir=K.scaledTo(Number(st)),wr=Et[Ir.key];wr&&wr.findMatches(ye.symbolInstances,K,He)}}for(var qt=0;qt<ye.symbolInstances.length;qt++){var tr=ye.symbolInstances.get(qt);tr.crossTileID||(tr.crossTileID=te.generate(),He[tr.crossTileID]=!0)}return this.indexes[K.overscaledZ]===void 0&&(this.indexes[K.overscaledZ]={}),this.indexes[K.overscaledZ][K.key]=new Yo(K,ye.symbolInstances,ye.bucketInstanceId),!0},Wl.prototype.removeBucketCrossTileIDs=function(K,ye){for(var te in ye.indexedSymbolInstances)for(var xe=0,We=ye.indexedSymbolInstances[te];xe<We.length;xe+=1){var He=We[xe];delete this.usedCrossTileIDs[K][He.crossTileID]}},Wl.prototype.removeStaleBuckets=function(K){var ye=!1;for(var te in this.indexes){var xe=this.indexes[te];for(var We in xe)K[xe[We].bucketInstanceId]||(this.removeBucketCrossTileIDs(te,xe[We]),delete xe[We],ye=!0)}return ye};var Zu=function(){this.layerIndexes={},this.crossTileIDs=new Nn,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}};Zu.prototype.addLayer=function(K,ye,te){var xe=this.layerIndexes[K.id];xe===void 0&&(xe=this.layerIndexes[K.id]=new Wl);var We=!1,He={};xe.handleWrapJump(te);for(var st=0,Et=ye;st<Et.length;st+=1){var Ht=Et[st],yr=Ht.getBucket(K);!yr||K.id!==yr.layerIds[0]||(yr.bucketInstanceId||(yr.bucketInstanceId=++this.maxBucketInstanceId),xe.addBucket(Ht.tileID,yr,this.crossTileIDs)&&(We=!0),He[yr.bucketInstanceId]=!0)}return xe.removeStaleBuckets(He)&&(We=!0),We},Zu.prototype.pruneUnusedLayers=function(K){var ye={};K.forEach(function(xe){ye[xe]=!0});for(var te in this.layerIndexes)ye[te]||delete this.layerIndexes[te]};var ml=function(ve,K){return e.emitValidationErrors(ve,K&&K.filter(function(ye){return ye.identifier!=="source.canvas"}))},Bu=e.pick(Fr,["addLayer","removeLayer","setPaintProperty","setLayoutProperty","setFilter","addSource","removeSource","setLayerZoomRange","setLight","setTransition","setGeoJSONSourceData"]),El=e.pick(Fr,["setCenter","setZoom","setBearing","setPitch"]),qs=Mr(),Jl=function(ve){function K(ye,te){var xe=this;te===void 0&&(te={}),ve.call(this),this.map=ye,this.dispatcher=new B(gt(),this),this.imageManager=new _,this.imageManager.setEventedParent(this),this.glyphManager=new y(ye._requestManager,te.localIdeographFontFamily),this.lineAtlas=new F(256,512),this.crossTileSymbolIndex=new Zu,this._layers={},this._serializedLayers={},this._order=[],this.sourceCaches={},this.zoomHistory=new e.ZoomHistory,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("setReferrer",e.getReferrer());var We=this;this._rtlTextPluginCallback=K.registerForPluginStateChange(function(He){var st={pluginStatus:He.pluginStatus,pluginURL:He.pluginURL};We.dispatcher.broadcast("syncRTLPluginState",st,function(Et,Ht){if(e.triggerPluginCompletionEvent(Et),Ht){var yr=Ht.every(function(wr){return wr});if(yr)for(var Ir in We.sourceCaches)We.sourceCaches[Ir].reload()}})}),this.on("data",function(He){if(!(He.dataType!=="source"||He.sourceDataType!=="metadata")){var st=xe.sourceCaches[He.sourceId];if(st){var Et=st.getSource();if(!(!Et||!Et.vectorLayerIds))for(var Ht in xe._layers){var yr=xe._layers[Ht];yr.source===Et.id&&xe._validateLayer(yr)}}}})}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.loadURL=function(te,xe){var We=this;xe===void 0&&(xe={}),this.fire(new e.Event("dataloading",{dataType:"style"}));var He=typeof xe.validate=="boolean"?xe.validate:!e.isMapboxURL(te);te=this.map._requestManager.normalizeStyleURL(te,xe.accessToken);var st=this.map._requestManager.transformRequest(te,e.ResourceType.Style);this._request=e.getJSON(st,function(Et,Ht){We._request=null,Et?We.fire(new e.ErrorEvent(Et)):Ht&&We._load(Ht,He)})},K.prototype.loadJSON=function(te,xe){var We=this;xe===void 0&&(xe={}),this.fire(new e.Event("dataloading",{dataType:"style"})),this._request=e.browser.frame(function(){We._request=null,We._load(te,xe.validate!==!1)})},K.prototype.loadEmpty=function(){this.fire(new e.Event("dataloading",{dataType:"style"})),this._load(qs,!1)},K.prototype._load=function(te,xe){if(!(xe&&ml(this,e.validateStyle(te)))){this._loaded=!0,this.stylesheet=te;for(var We in te.sources)this.addSource(We,te.sources[We],{validate:!1});te.sprite?this._loadSprite(te.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(te.glyphs);var He=Tr(this.stylesheet.layers);this._order=He.map(function(yr){return yr.id}),this._layers={},this._serializedLayers={};for(var st=0,Et=He;st<Et.length;st+=1){var Ht=Et[st];Ht=e.createStyleLayer(Ht),Ht.setEventedParent(this,{layer:{id:Ht.id}}),this._layers[Ht.id]=Ht,this._serializedLayers[Ht.id]=Ht.serialize()}this.dispatcher.broadcast("setLayers",this._serializeLayers(this._order)),this.light=new z(this.stylesheet.light),this.fire(new e.Event("data",{dataType:"style"})),this.fire(new e.Event("style.load"))}},K.prototype._loadSprite=function(te){var xe=this;this._spriteRequest=p(te,this.map._requestManager,function(We,He){if(xe._spriteRequest=null,We)xe.fire(new e.ErrorEvent(We));else if(He)for(var st in He)xe.imageManager.addImage(st,He[st]);xe.imageManager.setLoaded(!0),xe._availableImages=xe.imageManager.listImages(),xe.dispatcher.broadcast("setImages",xe._availableImages),xe.fire(new e.Event("data",{dataType:"style"}))})},K.prototype._validateLayer=function(te){var xe=this.sourceCaches[te.source];if(xe){var We=te.sourceLayer;if(We){var He=xe.getSource();(He.type==="geojson"||He.vectorLayerIds&&He.vectorLayerIds.indexOf(We)===-1)&&this.fire(new e.ErrorEvent(new Error('Source layer "'+We+'" does not exist on source "'+He.id+'" as specified by style layer "'+te.id+'"')))}}},K.prototype.loaded=function(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(var te in this.sourceCaches)if(!this.sourceCaches[te].loaded())return!1;return!!this.imageManager.isLoaded()},K.prototype._serializeLayers=function(te){for(var xe=[],We=0,He=te;We<He.length;We+=1){var st=He[We],Et=this._layers[st];Et.type!=="custom"&&xe.push(Et.serialize())}return xe},K.prototype.hasTransitions=function(){if(this.light&&this.light.hasTransition())return!0;for(var te in this.sourceCaches)if(this.sourceCaches[te].hasTransition())return!0;for(var xe in this._layers)if(this._layers[xe].hasTransition())return!0;return!1},K.prototype._checkLoaded=function(){if(!this._loaded)throw new Error("Style is not done loading")},K.prototype.update=function(te){if(this._loaded){var xe=this._changed;if(this._changed){var We=Object.keys(this._updatedLayers),He=Object.keys(this._removedLayers);(We.length||He.length)&&this._updateWorkerLayers(We,He);for(var st in this._updatedSources){var Et=this._updatedSources[st];Et==="reload"?this._reloadSource(st):Et==="clear"&&this._clearSource(st)}this._updateTilesForChangedImages();for(var Ht in this._updatedPaintProps)this._layers[Ht].updateTransitions(te);this.light.updateTransitions(te),this._resetUpdates()}var yr={};for(var Ir in this.sourceCaches){var wr=this.sourceCaches[Ir];yr[Ir]=wr.used,wr.used=!1}for(var qt=0,tr=this._order;qt<tr.length;qt+=1){var dr=tr[qt],Pr=this._layers[dr];Pr.recalculate(te,this._availableImages),!Pr.isHidden(te.zoom)&&Pr.source&&(this.sourceCaches[Pr.source].used=!0)}for(var Vr in yr){var Hr=this.sourceCaches[Vr];yr[Vr]!==Hr.used&&Hr.fire(new e.Event("data",{sourceDataType:"visibility",dataType:"source",sourceId:Vr}))}this.light.recalculate(te),this.z=te.zoom,xe&&this.fire(new e.Event("data",{dataType:"style"}))}},K.prototype._updateTilesForChangedImages=function(){var te=Object.keys(this._changedImages);if(te.length){for(var xe in this.sourceCaches)this.sourceCaches[xe].reloadTilesForDependencies(["icons","patterns"],te);this._changedImages={}}},K.prototype._updateWorkerLayers=function(te,xe){this.dispatcher.broadcast("updateLayers",{layers:this._serializeLayers(te),removedIds:xe})},K.prototype._resetUpdates=function(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={}},K.prototype.setState=function(te){var xe=this;if(this._checkLoaded(),ml(this,e.validateStyle(te)))return!1;te=e.clone$1(te),te.layers=Tr(te.layers);var We=Ba(this.serialize(),te).filter(function(st){return!(st.command in El)});if(We.length===0)return!1;var He=We.filter(function(st){return!(st.command in Bu)});if(He.length>0)throw new Error("Unimplemented: "+He.map(function(st){return st.command}).join(", ")+".");return We.forEach(function(st){st.command!=="setTransition"&&xe[st.command].apply(xe,st.args)}),this.stylesheet=te,!0},K.prototype.addImage=function(te,xe){if(this.getImage(te))return this.fire(new e.ErrorEvent(new Error("An image with this name already exists.")));this.imageManager.addImage(te,xe),this._afterImageUpdated(te)},K.prototype.updateImage=function(te,xe){this.imageManager.updateImage(te,xe)},K.prototype.getImage=function(te){return this.imageManager.getImage(te)},K.prototype.removeImage=function(te){if(!this.getImage(te))return this.fire(new e.ErrorEvent(new Error("No image with this name exists.")));this.imageManager.removeImage(te),this._afterImageUpdated(te)},K.prototype._afterImageUpdated=function(te){this._availableImages=this.imageManager.listImages(),this._changedImages[te]=!0,this._changed=!0,this.dispatcher.broadcast("setImages",this._availableImages),this.fire(new e.Event("data",{dataType:"style"}))},K.prototype.listImages=function(){return this._checkLoaded(),this.imageManager.listImages()},K.prototype.addSource=function(te,xe,We){var He=this;if(We===void 0&&(We={}),this._checkLoaded(),this.sourceCaches[te]!==void 0)throw new Error("There is already a source with this ID");if(!xe.type)throw new Error("The type property must be defined, but only the following properties were given: "+Object.keys(xe).join(", ")+".");var st=["vector","raster","geojson","video","image"],Et=st.indexOf(xe.type)>=0;if(!(Et&&this._validate(e.validateStyle.source,"sources."+te,xe,null,We))){this.map&&this.map._collectResourceTiming&&(xe.collectResourceTiming=!0);var Ht=this.sourceCaches[te]=new pa(te,xe,this.dispatcher);Ht.style=this,Ht.setEventedParent(this,function(){return{isSourceLoaded:He.loaded(),source:Ht.serialize(),sourceId:te}}),Ht.onAdd(this.map),this._changed=!0}},K.prototype.removeSource=function(te){if(this._checkLoaded(),this.sourceCaches[te]===void 0)throw new Error("There is no source with this ID");for(var xe in this._layers)if(this._layers[xe].source===te)return this.fire(new e.ErrorEvent(new Error('Source "'+te+'" cannot be removed while layer "'+xe+'" is using it.')));var We=this.sourceCaches[te];delete this.sourceCaches[te],delete this._updatedSources[te],We.fire(new e.Event("data",{sourceDataType:"metadata",dataType:"source",sourceId:te})),We.setEventedParent(null),We.clearTiles(),We.onRemove&&We.onRemove(this.map),this._changed=!0},K.prototype.setGeoJSONSourceData=function(te,xe){this._checkLoaded();var We=this.sourceCaches[te].getSource();We.setData(xe),this._changed=!0},K.prototype.getSource=function(te){return this.sourceCaches[te]&&this.sourceCaches[te].getSource()},K.prototype.addLayer=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=te.id;if(this.getLayer(He)){this.fire(new e.ErrorEvent(new Error('Layer with id "'+He+'" already exists on this map')));return}var st;if(te.type==="custom"){if(ml(this,e.validateCustomStyleLayer(te)))return;st=e.createStyleLayer(te)}else{if(typeof te.source=="object"&&(this.addSource(He,te.source),te=e.clone$1(te),te=e.extend(te,{source:He})),this._validate(e.validateStyle.layer,"layers."+He,te,{arrayIndex:-1},We))return;st=e.createStyleLayer(te),this._validateLayer(st),st.setEventedParent(this,{layer:{id:He}}),this._serializedLayers[st.id]=st.serialize()}var Et=xe?this._order.indexOf(xe):this._order.length;if(xe&&Et===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}if(this._order.splice(Et,0,He),this._layerOrderChanged=!0,this._layers[He]=st,this._removedLayers[He]&&st.source&&st.type!=="custom"){var Ht=this._removedLayers[He];delete this._removedLayers[He],Ht.type!==st.type?this._updatedSources[st.source]="clear":(this._updatedSources[st.source]="reload",this.sourceCaches[st.source].pause())}this._updateLayer(st),st.onAdd&&st.onAdd(this.map)},K.prototype.moveLayer=function(te,xe){this._checkLoaded(),this._changed=!0;var We=this._layers[te];if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be moved.")));return}if(te!==xe){var He=this._order.indexOf(te);this._order.splice(He,1);var st=xe?this._order.indexOf(xe):this._order.length;if(xe&&st===-1){this.fire(new e.ErrorEvent(new Error('Layer with id "'+xe+'" does not exist on this map.')));return}this._order.splice(st,0,te),this._layerOrderChanged=!0}},K.prototype.removeLayer=function(te){this._checkLoaded();var xe=this._layers[te];if(!xe){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be removed.")));return}xe.setEventedParent(null);var We=this._order.indexOf(te);this._order.splice(We,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[te]=xe,delete this._layers[te],delete this._serializedLayers[te],delete this._updatedLayers[te],delete this._updatedPaintProps[te],xe.onRemove&&xe.onRemove(this.map)},K.prototype.getLayer=function(te){return this._layers[te]},K.prototype.hasLayer=function(te){return te in this._layers},K.prototype.setLayerZoomRange=function(te,xe,We){this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot have zoom extent.")));return}He.minzoom===xe&&He.maxzoom===We||(xe!=null&&(He.minzoom=xe),We!=null&&(He.maxzoom=We),this._updateLayer(He))},K.prototype.setFilter=function(te,xe,We){We===void 0&&(We={}),this._checkLoaded();var He=this.getLayer(te);if(!He){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be filtered.")));return}if(!e.deepEqual(He.filter,xe)){if(xe==null){He.filter=void 0,this._updateLayer(He);return}this._validate(e.validateStyle.filter,"layers."+He.id+".filter",xe,null,We)||(He.filter=e.clone$1(xe),this._updateLayer(He))}},K.prototype.getFilter=function(te){return e.clone$1(this.getLayer(te).filter)},K.prototype.setLayoutProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}e.deepEqual(st.getLayoutProperty(xe),We)||(st.setLayoutProperty(xe,We,He),this._updateLayer(st))},K.prototype.getLayoutProperty=function(te,xe){var We=this.getLayer(te);if(!We){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style.")));return}return We.getLayoutProperty(xe)},K.prototype.setPaintProperty=function(te,xe,We,He){He===void 0&&(He={}),this._checkLoaded();var st=this.getLayer(te);if(!st){this.fire(new e.ErrorEvent(new Error("The layer '"+te+"' does not exist in the map's style and cannot be styled.")));return}if(!e.deepEqual(st.getPaintProperty(xe),We)){var Et=st.setPaintProperty(xe,We,He);Et&&this._updateLayer(st),this._changed=!0,this._updatedPaintProps[te]=!0}},K.prototype.getPaintProperty=function(te,xe){return this.getLayer(te).getPaintProperty(xe)},K.prototype.setFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=te.sourceLayer,st=this.sourceCaches[We];if(st===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var Et=st.getSource().type;if(Et==="geojson"&&He){this.fire(new e.ErrorEvent(new Error("GeoJSON sources cannot have a sourceLayer parameter.")));return}if(Et==="vector"&&!He){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),st.setFeatureState(He,te.id,xe)},K.prototype.removeFeatureState=function(te,xe){this._checkLoaded();var We=te.source,He=this.sourceCaches[We];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+We+"' does not exist in the map's style.")));return}var st=He.getSource().type,Et=st==="vector"?te.sourceLayer:void 0;if(st==="vector"&&!Et){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}if(xe&&typeof te.id!="string"&&typeof te.id!="number"){this.fire(new e.ErrorEvent(new Error("A feature id is required to remove its specific state property.")));return}He.removeFeatureState(Et,te.id,xe)},K.prototype.getFeatureState=function(te){this._checkLoaded();var xe=te.source,We=te.sourceLayer,He=this.sourceCaches[xe];if(He===void 0){this.fire(new e.ErrorEvent(new Error("The source '"+xe+"' does not exist in the map's style.")));return}var st=He.getSource().type;if(st==="vector"&&!We){this.fire(new e.ErrorEvent(new Error("The sourceLayer parameter must be provided for vector source types.")));return}return te.id===void 0&&this.fire(new e.ErrorEvent(new Error("The feature id parameter must be provided."))),He.getFeatureState(We,te.id)},K.prototype.getTransition=function(){return e.extend({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)},K.prototype.serialize=function(){return e.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:e.mapObject(this.sourceCaches,function(te){return te.serialize()}),layers:this._serializeLayers(this._order)},function(te){return te!==void 0})},K.prototype._updateLayer=function(te){this._updatedLayers[te.id]=!0,te.source&&!this._updatedSources[te.source]&&this.sourceCaches[te.source].getSource().type!=="raster"&&(this._updatedSources[te.source]="reload",this.sourceCaches[te.source].pause()),this._changed=!0},K.prototype._flattenAndSortRenderedFeatures=function(te){for(var xe=this,We=function(Di){return xe._layers[Di].type==="fill-extrusion"},He={},st=[],Et=this._order.length-1;Et>=0;Et--){var Ht=this._order[Et];if(We(Ht)){He[Ht]=Et;for(var yr=0,Ir=te;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=wr[Ht];if(qt)for(var tr=0,dr=qt;tr<dr.length;tr+=1){var Pr=dr[tr];st.push(Pr)}}}}st.sort(function(Di,An){return An.intersectionZ-Di.intersectionZ});for(var Vr=[],Hr=this._order.length-1;Hr>=0;Hr--){var aa=this._order[Hr];if(We(aa))for(var Qr=st.length-1;Qr>=0;Qr--){var Gr=st[Qr].feature;if(He[Gr.layer.id]<Hr)break;Vr.push(Gr),st.pop()}else for(var ia=0,Ur=te;ia<Ur.length;ia+=1){var wa=Ur[ia],Oa=wa[aa];if(Oa)for(var ri=0,Pi=Oa;ri<Pi.length;ri+=1){var mi=Pi[ri];Vr.push(mi.feature)}}}return Vr},K.prototype.queryRenderedFeatures=function(te,xe,We){xe&&xe.filter&&this._validate(e.validateStyle.filter,"queryRenderedFeatures.filter",xe.filter,null,xe);var He={};if(xe&&xe.layers){if(!Array.isArray(xe.layers))return this.fire(new e.ErrorEvent(new Error("parameters.layers must be an Array."))),[];for(var st=0,Et=xe.layers;st<Et.length;st+=1){var Ht=Et[st],yr=this._layers[Ht];if(!yr)return this.fire(new e.ErrorEvent(new Error("The layer '"+Ht+"' does not exist in the map's style and cannot be queried for features."))),[];He[yr.source]=!0}}var Ir=[];xe.availableImages=this._availableImages;for(var wr in this.sourceCaches)xe.layers&&!He[wr]||Ir.push(ie(this.sourceCaches[wr],this._layers,this._serializedLayers,te,xe,We));return this.placement&&Ir.push(fe(this._layers,this._serializedLayers,this.sourceCaches,te,xe,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(Ir)},K.prototype.querySourceFeatures=function(te,xe){xe&&xe.filter&&this._validate(e.validateStyle.filter,"querySourceFeatures.filter",xe.filter,null,xe);var We=this.sourceCaches[te];return We?be(We,xe):[]},K.prototype.addSourceType=function(te,xe,We){if(K.getSourceType(te))return We(new Error('A source type called "'+te+'" already exists.'));if(K.setSourceType(te,xe),!xe.workerSourceURL)return We(null,null);this.dispatcher.broadcast("loadWorkerSource",{name:te,url:xe.workerSourceURL},We)},K.prototype.getLight=function(){return this.light.getLight()},K.prototype.setLight=function(te,xe){xe===void 0&&(xe={}),this._checkLoaded();var We=this.light.getLight(),He=!1;for(var st in te)if(!e.deepEqual(te[st],We[st])){He=!0;break}if(He){var Et={now:e.browser.now(),transition:e.extend({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(te,xe),this.light.updateTransitions(Et)}},K.prototype._validate=function(te,xe,We,He,st){return st===void 0&&(st={}),st&&st.validate===!1?!1:ml(this,te.call(e.validateStyle,e.extend({key:xe,style:this.serialize(),value:We,styleSpec:e.styleSpec},He)))},K.prototype._remove=function(){this._request&&(this._request.cancel(),this._request=null),this._spriteRequest&&(this._spriteRequest.cancel(),this._spriteRequest=null),e.evented.off("pluginStateChange",this._rtlTextPluginCallback);for(var te in this._layers){var xe=this._layers[te];xe.setEventedParent(null)}for(var We in this.sourceCaches)this.sourceCaches[We].clearTiles(),this.sourceCaches[We].setEventedParent(null);this.imageManager.setEventedParent(null),this.setEventedParent(null),this.dispatcher.remove()},K.prototype._clearSource=function(te){this.sourceCaches[te].clearTiles()},K.prototype._reloadSource=function(te){this.sourceCaches[te].resume(),this.sourceCaches[te].reload()},K.prototype._updateSources=function(te){for(var xe in this.sourceCaches)this.sourceCaches[xe].update(te)},K.prototype._generateCollisionBoxes=function(){for(var te in this.sourceCaches)this._reloadSource(te)},K.prototype._updatePlacement=function(te,xe,We,He,st){st===void 0&&(st=!1);for(var Et=!1,Ht=!1,yr={},Ir=0,wr=this._order;Ir<wr.length;Ir+=1){var qt=wr[Ir],tr=this._layers[qt];if(tr.type==="symbol"){if(!yr[tr.source]){var dr=this.sourceCaches[tr.source];yr[tr.source]=dr.getRenderableIds(!0).map(function(ia){return dr.getTileByID(ia)}).sort(function(ia,Ur){return Ur.tileID.overscaledZ-ia.tileID.overscaledZ||(ia.tileID.isLessThan(Ur.tileID)?-1:1)})}var Pr=this.crossTileSymbolIndex.addLayer(tr,yr[tr.source],te.center.lng);Et=Et||Pr}}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),st=st||this._layerOrderChanged||We===0,(st||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(e.browser.now(),te.zoom))&&(this.pauseablePlacement=new Yn(te,this._order,st,xe,We,He,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,yr),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(e.browser.now()),Ht=!0),Et&&this.pauseablePlacement.placement.setStale()),Ht||Et)for(var Vr=0,Hr=this._order;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=this._layers[aa];Qr.type==="symbol"&&this.placement.updateLayerOpacities(Qr,yr[Qr.source])}var Gr=!this.pauseablePlacement.isDone()||this.placement.hasTransitions(e.browser.now());return Gr},K.prototype._releaseSymbolFadeTiles=function(){for(var te in this.sourceCaches)this.sourceCaches[te].releaseSymbolFadeTiles()},K.prototype.getImages=function(te,xe,We){this.imageManager.getImages(xe.icons,We),this._updateTilesForChangedImages();var He=this.sourceCaches[xe.source];He&&He.setDependencies(xe.tileID.key,xe.type,xe.icons)},K.prototype.getGlyphs=function(te,xe,We){this.glyphManager.getGlyphs(xe.stacks,We)},K.prototype.getResource=function(te,xe,We){return e.makeRequest(xe,We)},K}(e.Evented);Jl.getSourceType=re,Jl.setSourceType=ne,Jl.registerForPluginStateChange=e.registerForPluginStateChange;var Nu=e.createLayout([{name:"a_pos",type:"Int16",components:2}]),Ic=`#ifdef GL_ES
+precision mediump float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif`,Xu=`#ifdef GL_ES
+precision highp float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+vec2 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
+);}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;}`,Th=`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,bf="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",Rs=`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Yc="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);}",If=`varying vec3 v_data;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Zl=`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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main(void) {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 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);}`,yl="void main() {gl_FragColor=vec4(1.0);}",oc="attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}",_c=`uniform highp float u_intensity;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#define GAUSS_COEF 0.3989422804014327
+void main() {
+#pragma mapbox: initialize highp float weight
+float 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Zs=`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;
+#pragma mapbox: define highp float weight
+#pragma mapbox: define mediump float radius
+const highp float ZERO=1.0/255.0/16.0;
+#define GAUSS_COEF 0.3989422804014327
+void main(void) {
+#pragma mapbox: initialize highp float weight
+#pragma mapbox: initialize mediump float radius
+vec2 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;}`,_l=`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(0.0);
+#endif
+}`,Bs="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;}",$s="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;}}",sc="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;}",zl="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;}",Yu="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);}",Qs="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);}",fp="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);}",es=`#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_FragColor=color*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Wh=`attribute vec2 a_pos;uniform mat4 u_matrix;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);}`,Ss=`varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,So=`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`,hf=`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ku=`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;}`,cu=`uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Zf=`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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);}`,Rc=`varying vec4 v_color;void main() {gl_FragColor=v_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,pf=`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;
+#pragma mapbox: define highp float base
+#pragma mapbox: define highp float height
+#pragma mapbox: define highp vec4 color
+void main() {
+#pragma mapbox: initialize highp float base
+#pragma mapbox: initialize highp float height
+#pragma mapbox: initialize highp vec4 color
+vec3 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;}`,Fl=`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;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,lh=`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;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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
+? a_pos
+: 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;}`,Xf=`#ifdef GL_ES
+precision highp float;
+#endif
+uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;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 exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Rf="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;}",Kc=`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;
+#define PI 3.141592653589793
+void 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Yf="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;}",uh=`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ju=`
+#define scale 0.015873016
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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);}`,Df=`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 vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Dc=`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);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);}`,Jc=`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;
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Eu=`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+float 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;}`,wf=`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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+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 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,zc=`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float 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);}`,Us=`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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Kf="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;}",Zh=`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,ch=`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;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+vec2 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 ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=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));}`,df=`#define SDF_PX 8.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,Ah=`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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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 ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=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);}`,ku=`#define SDF_PX 8.0
+#define SDF 1.0
+#define ICON 0.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+return;}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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,fh=`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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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 ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=u_matrix*vec4(a_pos+vec2(1,0),0,1);vec2 a=projectedPoint.xy/projectedPoint.w;vec2 b=offsetProjectedPoint.xy/offsetProjectedPoint.w;symbol_rotation=atan((b.y-a.y)/u_aspect_ratio,b.x-a.x);}highp float angle_sin=sin(segment_angle+symbol_rotation);highp float angle_cos=cos(segment_angle+symbol_rotation);mat2 rotation_matrix=mat2(angle_cos,-1.0*angle_sin,angle_sin,angle_cos);vec4 projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy,0.0,1.0);gl_Position=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale),0.0,1.0);float gamma_scale=gl_Position.w;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(1.0,fade_opacity[0]+fade_change));v_data0.xy=a_tex/u_texsize;v_data0.zw=a_tex/u_texsize_icon;v_data1=vec4(gamma_scale,size,interpolated_fade_opacity,is_sdf);}`,ru=el(Ic,Xu),Cu=el(Th,bf),xc=el(Rs,Yc),kl=el(If,Zl),Fc=el(yl,oc),$u=el(_c,Zs),vu=el(_l,Bs),xl=el($s,sc),hh=el(zl,Yu),Sh=el(Qs,fp),Uu=el(es,Wh),bc=el(Ss,So),lc=el(hf,Ku),hp=el(cu,Zf),vf=el(Rc,pf),Tf=el(Fl,lh),Lu=el(Xf,Rf),zf=el(Kc,Yf),au=el(uh,Ju),$c=el(Df,Dc),Mh=el(Jc,Eu),Ff=el(wf,zc),il=el(Us,Kf),mu=el(Zh,ch),gu=el(df,Ah),Jf=el(ku,fh);function el(ve,K){var ye=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,te=K.match(/attribute ([\w]+) ([\w]+)/g),xe=ve.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),We=K.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),He=We?We.concat(xe):xe,st={};return ve=ve.replace(ye,function(Et,Ht,yr,Ir,wr){return st[wr]=!0,Ht==="define"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+varying `+yr+" "+Ir+" "+wr+`;
+#else
+uniform `+yr+" "+Ir+" u_"+wr+`;
+#endif
+`:`
+#ifdef HAS_UNIFORM_u_`+wr+`
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`}),K=K.replace(ye,function(Et,Ht,yr,Ir,wr){var qt=Ir==="float"?"vec2":"vec4",tr=wr.match(/color/)?"color":qt;return st[wr]?Ht==="define"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+uniform lowp float u_`+wr+`_t;
+attribute `+yr+" "+qt+" a_"+wr+`;
+varying `+yr+" "+Ir+" "+wr+`;
+#else
+uniform `+yr+" "+Ir+" u_"+wr+`;
+#endif
+`:tr==="vec4"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+wr+" = a_"+wr+`;
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t);
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`:Ht==="define"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+uniform lowp float u_`+wr+`_t;
+attribute `+yr+" "+qt+" a_"+wr+`;
+#else
+uniform `+yr+" "+Ir+" u_"+wr+`;
+#endif
+`:tr==="vec4"?`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+yr+" "+Ir+" "+wr+" = a_"+wr+`;
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_`+wr+`
+ `+yr+" "+Ir+" "+wr+" = unpack_mix_"+tr+"(a_"+wr+", u_"+wr+`_t);
+#else
+ `+yr+" "+Ir+" "+wr+" = u_"+wr+`;
+#endif
+`}),{fragmentSource:ve,vertexSource:K,staticAttributes:te,staticUniforms:He}}var mf=Object.freeze({__proto__:null,prelude:ru,background:Cu,backgroundPattern:xc,circle:kl,clippingMask:Fc,heatmap:$u,heatmapTexture:vu,collisionBox:xl,collisionCircle:hh,debug:Sh,fill:Uu,fillOutline:bc,fillOutlinePattern:lc,fillPattern:hp,fillExtrusion:vf,fillExtrusionPattern:Tf,hillshadePrepare:Lu,hillshade:zf,line:au,lineGradient:$c,linePattern:Mh,lineSDF:Ff,raster:il,symbolIcon:mu,symbolSDF:gu,symbolTextAndIcon:Jf}),wc=function(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null};wc.prototype.bind=function(K,ye,te,xe,We,He,st,Et){this.context=K;for(var Ht=this.boundPaintVertexBuffers.length!==xe.length,yr=0;!Ht&&yr<xe.length;yr++)this.boundPaintVertexBuffers[yr]!==xe[yr]&&(Ht=!0);var Ir=!this.vao||this.boundProgram!==ye||this.boundLayoutVertexBuffer!==te||Ht||this.boundIndexBuffer!==We||this.boundVertexOffset!==He||this.boundDynamicVertexBuffer!==st||this.boundDynamicVertexBuffer2!==Et;!K.extVertexArrayObject||Ir?this.freshBind(ye,te,xe,We,He,st,Et):(K.bindVertexArrayOES.set(this.vao),st&&st.bind(),We&&We.dynamicDraw&&We.bind(),Et&&Et.bind())},wc.prototype.freshBind=function(K,ye,te,xe,We,He,st){var Et,Ht=K.numAttributes,yr=this.context,Ir=yr.gl;if(yr.extVertexArrayObject)this.vao&&this.destroy(),this.vao=yr.extVertexArrayObject.createVertexArrayOES(),yr.bindVertexArrayOES.set(this.vao),Et=0,this.boundProgram=K,this.boundLayoutVertexBuffer=ye,this.boundPaintVertexBuffers=te,this.boundIndexBuffer=xe,this.boundVertexOffset=We,this.boundDynamicVertexBuffer=He,this.boundDynamicVertexBuffer2=st;else{Et=yr.currentNumAttributes||0;for(var wr=Ht;wr<Et;wr++)Ir.disableVertexAttribArray(wr)}ye.enableAttributes(Ir,K);for(var qt=0,tr=te;qt<tr.length;qt+=1){var dr=tr[qt];dr.enableAttributes(Ir,K)}He&&He.enableAttributes(Ir,K),st&&st.enableAttributes(Ir,K),ye.bind(),ye.setVertexAttribPointers(Ir,K,We);for(var Pr=0,Vr=te;Pr<Vr.length;Pr+=1){var Hr=Vr[Pr];Hr.bind(),Hr.setVertexAttribPointers(Ir,K,We)}He&&(He.bind(),He.setVertexAttribPointers(Ir,K,We)),xe&&xe.bind(),st&&(st.bind(),st.setVertexAttribPointers(Ir,K,We)),yr.currentNumAttributes=Ht},wc.prototype.destroy=function(){this.vao&&(this.context.extVertexArrayObject.deleteVertexArrayOES(this.vao),this.vao=null)};function ju(ve){for(var K=[],ye=0;ye<ve.length;ye++)if(ve[ye]!==null){var te=ve[ye].split(" ");K.push(te.pop())}return K}var Af=function(K,ye,te,xe,We,He){var st=K.gl;this.program=st.createProgram();for(var Et=ju(te.staticAttributes),Ht=xe?xe.getBinderAttributes():[],yr=Et.concat(Ht),Ir=te.staticUniforms?ju(te.staticUniforms):[],wr=xe?xe.getBinderUniforms():[],qt=Ir.concat(wr),tr=[],dr=0,Pr=qt;dr<Pr.length;dr+=1){var Vr=Pr[dr];tr.indexOf(Vr)<0&&tr.push(Vr)}var Hr=xe?xe.defines():[];He&&Hr.push("#define OVERDRAW_INSPECTOR;");var aa=Hr.concat(ru.fragmentSource,te.fragmentSource).join(`
+`),Qr=Hr.concat(ru.vertexSource,te.vertexSource).join(`
+`),Gr=st.createShader(st.FRAGMENT_SHADER);if(st.isContextLost()){this.failedToCreate=!0;return}st.shaderSource(Gr,aa),st.compileShader(Gr),st.attachShader(this.program,Gr);var ia=st.createShader(st.VERTEX_SHADER);if(st.isContextLost()){this.failedToCreate=!0;return}st.shaderSource(ia,Qr),st.compileShader(ia),st.attachShader(this.program,ia),this.attributes={};var Ur={};this.numAttributes=yr.length;for(var wa=0;wa<this.numAttributes;wa++)yr[wa]&&(st.bindAttribLocation(this.program,wa,yr[wa]),this.attributes[yr[wa]]=wa);st.linkProgram(this.program),st.deleteShader(ia),st.deleteShader(Gr);for(var Oa=0;Oa<tr.length;Oa++){var ri=tr[Oa];if(ri&&!Ur[ri]){var Pi=st.getUniformLocation(this.program,ri);Pi&&(Ur[ri]=Pi)}}this.fixedUniforms=We(K,Ur),this.binderUniforms=xe?xe.getUniforms(K,Ur):[]};Af.prototype.draw=function(K,ye,te,xe,We,He,st,Et,Ht,yr,Ir,wr,qt,tr,dr,Pr){var Vr,Hr=K.gl;if(!this.failedToCreate){K.program.set(this.program),K.setDepthMode(te),K.setStencilMode(xe),K.setColorMode(We),K.setCullFace(He);for(var aa in this.fixedUniforms)this.fixedUniforms[aa].set(st[aa]);tr&&tr.setUniforms(K,this.binderUniforms,wr,{zoom:qt});for(var Qr=(Vr={},Vr[Hr.LINES]=2,Vr[Hr.TRIANGLES]=3,Vr[Hr.LINE_STRIP]=1,Vr)[ye],Gr=0,ia=Ir.get();Gr<ia.length;Gr+=1){var Ur=ia[Gr],wa=Ur.vaos||(Ur.vaos={}),Oa=wa[Et]||(wa[Et]=new wc);Oa.bind(K,this,Ht,tr?tr.getPaintVertexBuffers():[],yr,Ur.vertexOffset,dr,Pr),Hr.drawElements(ye,Ur.primitiveLength*Qr,Hr.UNSIGNED_SHORT,Ur.primitiveOffset*Qr*2)}}};function uc(ve,K,ye){var te=1/In(ye,1,K.transform.tileZoom),xe=Math.pow(2,ye.tileID.overscaledZ),We=ye.tileSize*Math.pow(2,K.transform.tileZoom)/xe,He=We*(ye.tileID.canonical.x+ye.tileID.wrap*xe),st=We*ye.tileID.canonical.y;return{u_image:0,u_texsize:ye.imageAtlasTexture.size,u_scale:[te,ve.fromScale,ve.toScale],u_fade:ve.t,u_pixel_coord_upper:[He>>16,st>>16],u_pixel_coord_lower:[He&65535,st&65535]}}function Qc(ve,K,ye,te){var xe=ye.imageManager.getPattern(ve.from.toString()),We=ye.imageManager.getPattern(ve.to.toString()),He=ye.imageManager.getPixelSize(),st=He.width,Et=He.height,Ht=Math.pow(2,te.tileID.overscaledZ),yr=te.tileSize*Math.pow(2,ye.transform.tileZoom)/Ht,Ir=yr*(te.tileID.canonical.x+te.tileID.wrap*Ht),wr=yr*te.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:xe.tl,u_pattern_br_a:xe.br,u_pattern_tl_b:We.tl,u_pattern_br_b:We.br,u_texsize:[st,Et],u_mix:K.t,u_pattern_size_a:xe.displaySize,u_pattern_size_b:We.displaySize,u_scale_a:K.fromScale,u_scale_b:K.toScale,u_tile_units_to_pixels:1/In(te,1,ye.transform.tileZoom),u_pixel_coord_upper:[Ir>>16,wr>>16],u_pixel_coord_lower:[Ir&65535,wr&65535]}}var $f=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Vl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_lightpos:new e.Uniform3f(ve,K.u_lightpos),u_lightintensity:new e.Uniform1f(ve,K.u_lightintensity),u_lightcolor:new e.Uniform3f(ve,K.u_lightcolor),u_vertical_gradient:new e.Uniform1f(ve,K.u_vertical_gradient),u_height_factor:new e.Uniform1f(ve,K.u_height_factor),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},Qf=function(ve,K,ye,te){var xe=K.style.light,We=xe.properties.get("position"),He=[We.x,We.y,We.z],st=e.create$1();xe.properties.get("anchor")==="viewport"&&e.fromRotation(st,-K.transform.angle),e.transformMat3(He,He,st);var Et=xe.properties.get("color");return{u_matrix:ve,u_lightpos:He,u_lightintensity:xe.properties.get("intensity"),u_lightcolor:[Et.r,Et.g,Et.b],u_vertical_gradient:+ye,u_opacity:te}},Vu=function(ve,K,ye,te,xe,We,He){return e.extend(Qf(ve,K,ye,te),uc(We,K,He),{u_height_factor:-Math.pow(2,xe.overscaledZ)/He.tileSize/8})},Tc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},cc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Cl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world)}},iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},fc=function(ve){return{u_matrix:ve}},Oc=function(ve,K,ye,te){return e.extend(fc(ve),uc(ye,K,te))},Qu=function(ve,K){return{u_matrix:ve,u_world:K}},ef=function(ve,K,ye,te,xe){return e.extend(Oc(ve,K,ye,te),{u_world:xe})},Zt=function(ve,K){return{u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_scale_with_map:new e.Uniform1i(ve,K.u_scale_with_map),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},fr=function(ve,K,ye,te){var xe=ve.transform,We,He;if(te.paint.get("circle-pitch-alignment")==="map"){var st=In(ye,1,xe.zoom);We=!0,He=[st,st]}else We=!1,He=xe.pixelsToGLUnits;return{u_camera_to_center_distance:xe.cameraToCenterDistance,u_scale_with_map:+(te.paint.get("circle-pitch-scale")==="map"),u_matrix:ve.translatePosMatrix(K.posMatrix,ye,te.paint.get("circle-translate"),te.paint.get("circle-translate-anchor")),u_pitch_with_map:+We,u_device_pixel_ratio:e.browser.devicePixelRatio,u_extrude_scale:He}},Yr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pixels_to_tile_units:new e.Uniform1f(ve,K.u_pixels_to_tile_units),u_extrude_scale:new e.Uniform2f(ve,K.u_extrude_scale),u_overscale_factor:new e.Uniform1f(ve,K.u_overscale_factor)}},qr=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_inv_matrix:new e.UniformMatrix4f(ve,K.u_inv_matrix),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_viewport_size:new e.Uniform2f(ve,K.u_viewport_size)}},ba=function(ve,K,ye){var te=In(ye,1,K.zoom),xe=Math.pow(2,K.zoom-ye.tileID.overscaledZ),We=ye.tileID.overscaleFactor();return{u_matrix:ve,u_camera_to_center_distance:K.cameraToCenterDistance,u_pixels_to_tile_units:te,u_extrude_scale:[K.pixelsToGLUnits[0]/(te*xe),K.pixelsToGLUnits[1]/(te*xe)],u_overscale_factor:We}},Ka=function(ve,K,ye){return{u_matrix:ve,u_inv_matrix:K,u_camera_to_center_distance:ye.cameraToCenterDistance,u_viewport_size:[ye.width,ye.height]}},oi=function(ve,K){return{u_color:new e.UniformColor(ve,K.u_color),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_overlay:new e.Uniform1i(ve,K.u_overlay),u_overlay_scale:new e.Uniform1f(ve,K.u_overlay_scale)}},yi=function(ve,K,ye){return ye===void 0&&(ye=1),{u_matrix:ve,u_color:K,u_overlay:0,u_overlay_scale:ye}},ki=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},Bi=function(ve){return{u_matrix:ve}},li=function(ve,K){return{u_extrude_scale:new e.Uniform1f(ve,K.u_extrude_scale),u_intensity:new e.Uniform1f(ve,K.u_intensity),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix)}},_i=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_world:new e.Uniform2f(ve,K.u_world),u_image:new e.Uniform1i(ve,K.u_image),u_color_ramp:new e.Uniform1i(ve,K.u_color_ramp),u_opacity:new e.Uniform1f(ve,K.u_opacity)}},vi=function(ve,K,ye,te){return{u_matrix:ve,u_extrude_scale:In(K,1,ye),u_intensity:te}},ti=function(ve,K,ye,te){var xe=e.create();e.ortho(xe,0,ve.width,ve.height,0,0,1);var We=ve.context.gl;return{u_matrix:xe,u_world:[We.drawingBufferWidth,We.drawingBufferHeight],u_image:ye,u_color_ramp:te,u_opacity:K.paint.get("heatmap-opacity")}},rn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_latrange:new e.Uniform2f(ve,K.u_latrange),u_light:new e.Uniform2f(ve,K.u_light),u_shadow:new e.UniformColor(ve,K.u_shadow),u_highlight:new e.UniformColor(ve,K.u_highlight),u_accent:new e.UniformColor(ve,K.u_accent)}},Kn=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_image:new e.Uniform1i(ve,K.u_image),u_dimension:new e.Uniform2f(ve,K.u_dimension),u_zoom:new e.Uniform1f(ve,K.u_zoom),u_unpack:new e.Uniform4f(ve,K.u_unpack)}},Wn=function(ve,K,ye){var te=ye.paint.get("hillshade-shadow-color"),xe=ye.paint.get("hillshade-highlight-color"),We=ye.paint.get("hillshade-accent-color"),He=ye.paint.get("hillshade-illumination-direction")*(Math.PI/180);ye.paint.get("hillshade-illumination-anchor")==="viewport"&&(He-=ve.transform.angle);var st=!ve.options.moving;return{u_matrix:ve.transform.calculatePosMatrix(K.tileID.toUnwrapped(),st),u_image:0,u_latrange:no(ve,K.tileID),u_light:[ye.paint.get("hillshade-exaggeration"),He],u_shadow:te,u_highlight:xe,u_accent:We}},Jn=function(ve,K){var ye=K.stride,te=e.create();return e.ortho(te,0,e.EXTENT,-e.EXTENT,0,0,1),e.translate(te,te,[0,-e.EXTENT,0]),{u_matrix:te,u_image:1,u_dimension:[ye,ye],u_zoom:ve.overscaledZ,u_unpack:K.getUnpackVector()}};function no(ve,K){var ye=Math.pow(2,K.canonical.z),te=K.canonical.y;return[new e.MercatorCoordinate(0,te/ye).toLngLat().lat,new e.MercatorCoordinate(0,(te+1)/ye).toLngLat().lat]}var en=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels)}},Ri=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_image:new e.Uniform1i(ve,K.u_image),u_image_height:new e.Uniform1f(ve,K.u_image_height)}},co=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_image:new e.Uniform1i(ve,K.u_image),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_scale:new e.Uniform3f(ve,K.u_scale),u_fade:new e.Uniform1f(ve,K.u_fade)}},Wo=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_ratio:new e.Uniform1f(ve,K.u_ratio),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_units_to_pixels:new e.Uniform2f(ve,K.u_units_to_pixels),u_patternscale_a:new e.Uniform2f(ve,K.u_patternscale_a),u_patternscale_b:new e.Uniform2f(ve,K.u_patternscale_b),u_sdfgamma:new e.Uniform1f(ve,K.u_sdfgamma),u_image:new e.Uniform1i(ve,K.u_image),u_tex_y_a:new e.Uniform1f(ve,K.u_tex_y_a),u_tex_y_b:new e.Uniform1f(ve,K.u_tex_y_b),u_mix:new e.Uniform1f(ve,K.u_mix)}},bs=function(ve,K,ye){var te=ve.transform;return{u_matrix:Il(ve,K,ye),u_ratio:1/In(K,1,te.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_units_to_pixels:[1/te.pixelsToGLUnits[0],1/te.pixelsToGLUnits[1]]}},Xs=function(ve,K,ye,te){return e.extend(bs(ve,K,ye),{u_image:0,u_image_height:te})},Ms=function(ve,K,ye,te){var xe=ve.transform,We=vs(K,xe);return{u_matrix:Il(ve,K,ye),u_texsize:K.imageAtlasTexture.size,u_ratio:1/In(K,1,xe.zoom),u_device_pixel_ratio:e.browser.devicePixelRatio,u_image:0,u_scale:[We,te.fromScale,te.toScale],u_fade:te.t,u_units_to_pixels:[1/xe.pixelsToGLUnits[0],1/xe.pixelsToGLUnits[1]]}},Hs=function(ve,K,ye,te,xe){var We=ve.transform,He=ve.lineAtlas,st=vs(K,We),Et=ye.layout.get("line-cap")==="round",Ht=He.getDash(te.from,Et),yr=He.getDash(te.to,Et),Ir=Ht.width*xe.fromScale,wr=yr.width*xe.toScale;return e.extend(bs(ve,K,ye),{u_patternscale_a:[st/Ir,-Ht.height/2],u_patternscale_b:[st/wr,-yr.height/2],u_sdfgamma:He.width/(Math.min(Ir,wr)*256*e.browser.devicePixelRatio)/2,u_image:0,u_tex_y_a:Ht.y,u_tex_y_b:yr.y,u_mix:xe.t})};function vs(ve,K){return 1/In(ve,1,K.tileZoom)}function Il(ve,K,ye){return ve.translatePosMatrix(K.tileID.posMatrix,K,ye.paint.get("line-translate"),ye.paint.get("line-translate-anchor"))}var fl=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_tl_parent:new e.Uniform2f(ve,K.u_tl_parent),u_scale_parent:new e.Uniform1f(ve,K.u_scale_parent),u_buffer_scale:new e.Uniform1f(ve,K.u_buffer_scale),u_fade_t:new e.Uniform1f(ve,K.u_fade_t),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image0:new e.Uniform1i(ve,K.u_image0),u_image1:new e.Uniform1i(ve,K.u_image1),u_brightness_low:new e.Uniform1f(ve,K.u_brightness_low),u_brightness_high:new e.Uniform1f(ve,K.u_brightness_high),u_saturation_factor:new e.Uniform1f(ve,K.u_saturation_factor),u_contrast_factor:new e.Uniform1f(ve,K.u_contrast_factor),u_spin_weights:new e.Uniform3f(ve,K.u_spin_weights)}},tl=function(ve,K,ye,te,xe){return{u_matrix:ve,u_tl_parent:K,u_scale_parent:ye,u_buffer_scale:1,u_fade_t:te.mix,u_opacity:te.opacity*xe.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:xe.paint.get("raster-brightness-min"),u_brightness_high:xe.paint.get("raster-brightness-max"),u_saturation_factor:js(xe.paint.get("raster-saturation")),u_contrast_factor:Ao(xe.paint.get("raster-contrast")),u_spin_weights:Ln(xe.paint.get("raster-hue-rotate"))}};function Ln(ve){ve*=Math.PI/180;var K=Math.sin(ve),ye=Math.cos(ve);return[(2*ye+1)/3,(-Math.sqrt(3)*K-ye+1)/3,(Math.sqrt(3)*K-ye+1)/3]}function Ao(ve){return ve>0?1/(1-ve):1+ve}function js(ve){return ve>0?1-1/(1.001-ve):-ve}var Ts=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture)}},nu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texture:new e.Uniform1i(ve,K.u_texture),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},Pu=function(ve,K){return{u_is_size_zoom_constant:new e.Uniform1i(ve,K.u_is_size_zoom_constant),u_is_size_feature_constant:new e.Uniform1i(ve,K.u_is_size_feature_constant),u_size_t:new e.Uniform1f(ve,K.u_size_t),u_size:new e.Uniform1f(ve,K.u_size),u_camera_to_center_distance:new e.Uniform1f(ve,K.u_camera_to_center_distance),u_pitch:new e.Uniform1f(ve,K.u_pitch),u_rotate_symbol:new e.Uniform1i(ve,K.u_rotate_symbol),u_aspect_ratio:new e.Uniform1f(ve,K.u_aspect_ratio),u_fade_change:new e.Uniform1f(ve,K.u_fade_change),u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_label_plane_matrix:new e.UniformMatrix4f(ve,K.u_label_plane_matrix),u_coord_matrix:new e.UniformMatrix4f(ve,K.u_coord_matrix),u_is_text:new e.Uniform1i(ve,K.u_is_text),u_pitch_with_map:new e.Uniform1i(ve,K.u_pitch_with_map),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_texsize_icon:new e.Uniform2f(ve,K.u_texsize_icon),u_texture:new e.Uniform1i(ve,K.u_texture),u_texture_icon:new e.Uniform1i(ve,K.u_texture_icon),u_gamma_scale:new e.Uniform1f(ve,K.u_gamma_scale),u_device_pixel_ratio:new e.Uniform1f(ve,K.u_device_pixel_ratio),u_is_halo:new e.Uniform1i(ve,K.u_is_halo)}},ec=function(ve,K,ye,te,xe,We,He,st,Et,Ht){var yr=xe.transform;return{u_is_size_zoom_constant:+(ve==="constant"||ve==="source"),u_is_size_feature_constant:+(ve==="constant"||ve==="camera"),u_size_t:K?K.uSizeT:0,u_size:K?K.uSize:0,u_camera_to_center_distance:yr.cameraToCenterDistance,u_pitch:yr.pitch/360*2*Math.PI,u_rotate_symbol:+ye,u_aspect_ratio:yr.width/yr.height,u_fade_change:xe.options.fadeDuration?xe.symbolFadeChange:1,u_matrix:We,u_label_plane_matrix:He,u_coord_matrix:st,u_is_text:+Et,u_pitch_with_map:+te,u_texsize:Ht,u_texture:0}},tf=function(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=xe.transform;return e.extend(ec(ve,K,ye,te,xe,We,He,st,Et,Ht),{u_gamma_scale:te?Math.cos(Ir._pitch)*Ir.cameraToCenterDistance:1,u_device_pixel_ratio:e.browser.devicePixelRatio,u_is_halo:+yr})},yu=function(ve,K,ye,te,xe,We,He,st,Et,Ht){return e.extend(tf(ve,K,ye,te,xe,We,He,st,!0,Et,!0),{u_texsize_icon:Ht,u_texture_icon:1})},Bc=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_color:new e.UniformColor(ve,K.u_color)}},Iu=function(ve,K){return{u_matrix:new e.UniformMatrix4f(ve,K.u_matrix),u_opacity:new e.Uniform1f(ve,K.u_opacity),u_image:new e.Uniform1i(ve,K.u_image),u_pattern_tl_a:new e.Uniform2f(ve,K.u_pattern_tl_a),u_pattern_br_a:new e.Uniform2f(ve,K.u_pattern_br_a),u_pattern_tl_b:new e.Uniform2f(ve,K.u_pattern_tl_b),u_pattern_br_b:new e.Uniform2f(ve,K.u_pattern_br_b),u_texsize:new e.Uniform2f(ve,K.u_texsize),u_mix:new e.Uniform1f(ve,K.u_mix),u_pattern_size_a:new e.Uniform2f(ve,K.u_pattern_size_a),u_pattern_size_b:new e.Uniform2f(ve,K.u_pattern_size_b),u_scale_a:new e.Uniform1f(ve,K.u_scale_a),u_scale_b:new e.Uniform1f(ve,K.u_scale_b),u_pixel_coord_upper:new e.Uniform2f(ve,K.u_pixel_coord_upper),u_pixel_coord_lower:new e.Uniform2f(ve,K.u_pixel_coord_lower),u_tile_units_to_pixels:new e.Uniform1f(ve,K.u_tile_units_to_pixels)}},Ac=function(ve,K,ye){return{u_matrix:ve,u_opacity:K,u_color:ye}},ro=function(ve,K,ye,te,xe,We){return e.extend(Qc(te,We,ye,xe),{u_matrix:ve,u_opacity:K})},Po={fillExtrusion:$f,fillExtrusionPattern:Vl,fill:Tc,fillPattern:cc,fillOutline:Cl,fillOutlinePattern:iu,circle:Zt,collisionBox:Yr,collisionCircle:qr,debug:oi,clippingMask:ki,heatmap:li,heatmapTexture:_i,hillshade:rn,hillshadePrepare:Kn,line:en,lineGradient:Ri,linePattern:co,lineSDF:Wo,raster:fl,symbolIcon:Ts,symbolSDF:nu,symbolTextAndIcon:Pu,background:Bc,backgroundPattern:Iu},Nc;function hc(ve,K,ye,te,xe,We,He){for(var st=ve.context,Et=st.gl,Ht=ve.useProgram("collisionBox"),yr=[],Ir=0,wr=0,qt=0;qt<te.length;qt++){var tr=te[qt],dr=K.getTile(tr),Pr=dr.getBucket(ye);if(Pr){var Vr=tr.posMatrix;(xe[0]!==0||xe[1]!==0)&&(Vr=ve.translatePosMatrix(tr.posMatrix,dr,xe,We));var Hr=He?Pr.textCollisionBox:Pr.iconCollisionBox,aa=Pr.collisionCircleArray;if(aa.length>0){var Qr=e.create(),Gr=Vr;e.mul(Qr,Pr.placementInvProjMatrix,ve.transform.glCoordMatrix),e.mul(Qr,Qr,Pr.placementViewportMatrix),yr.push({circleArray:aa,circleOffset:wr,transform:Gr,invTransform:Qr}),Ir+=aa.length/4,wr=Ir}Hr&&Ht.draw(st,Et.LINES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,ba(Vr,ve.transform,dr),ye.id,Hr.layoutVertexBuffer,Hr.indexBuffer,Hr.segments,null,ve.transform.zoom,null,null,Hr.collisionVertexBuffer)}}if(!(!He||!yr.length)){var ia=ve.useProgram("collisionCircle"),Ur=new e.StructArrayLayout2f1f2i16;Ur.resize(Ir*4),Ur._trim();for(var wa=0,Oa=0,ri=yr;Oa<ri.length;Oa+=1)for(var Pi=ri[Oa],mi=0;mi<Pi.circleArray.length/4;mi++){var Di=mi*4,An=Pi.circleArray[Di+0],ln=Pi.circleArray[Di+1],Ii=Pi.circleArray[Di+2],Wi=Pi.circleArray[Di+3];Ur.emplace(wa++,An,ln,Ii,Wi,0),Ur.emplace(wa++,An,ln,Ii,Wi,1),Ur.emplace(wa++,An,ln,Ii,Wi,2),Ur.emplace(wa++,An,ln,Ii,Wi,3)}(!Nc||Nc.length<Ir*2)&&(Nc=pc(Ir));for(var Hi=st.createIndexBuffer(Nc,!0),yn=st.createVertexBuffer(Ur,e.collisionCircleLayout.members,!0),zn=0,ms=yr;zn<ms.length;zn+=1){var us=ms[zn],Vs=Ka(us.transform,us.invTransform,ve.transform);ia.draw(st,Et.TRIANGLES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,Vs,ye.id,yn,Hi,e.SegmentVector.simpleSegment(0,us.circleOffset*2,us.circleArray.length,us.circleArray.length/2),null,ve.transform.zoom,null,null,null)}yn.destroy(),Hi.destroy()}}function pc(ve){var K=ve*2,ye=new e.StructArrayLayout3ui6;ye.resize(K),ye._trim();for(var te=0;te<K;te++){var xe=te*6;ye.uint16[xe+0]=te*4+0,ye.uint16[xe+1]=te*4+1,ye.uint16[xe+2]=te*4+2,ye.uint16[xe+3]=te*4+2,ye.uint16[xe+4]=te*4+3,ye.uint16[xe+5]=te*4+0}return ye}var Oe=e.identity(new Float32Array(16));function R(ve,K,ye,te,xe){if(ve.renderPass==="translucent"){var We=Ma.disabled,He=ve.colorModeForRenderPass(),st=ye.layout.get("text-variable-anchor");st&&we(te,ve,ye,K,ye.layout.get("text-rotation-alignment"),ye.layout.get("text-pitch-alignment"),xe),ye.paint.get("icon-opacity").constantOr(1)!==0&&ft(ve,K,ye,te,!1,ye.paint.get("icon-translate"),ye.paint.get("icon-translate-anchor"),ye.layout.get("icon-rotation-alignment"),ye.layout.get("icon-pitch-alignment"),ye.layout.get("icon-keep-upright"),We,He),ye.paint.get("text-opacity").constantOr(1)!==0&&ft(ve,K,ye,te,!0,ye.paint.get("text-translate"),ye.paint.get("text-translate-anchor"),ye.layout.get("text-rotation-alignment"),ye.layout.get("text-pitch-alignment"),ye.layout.get("text-keep-upright"),We,He),K.map.showCollisionBoxes&&(hc(ve,K,ye,te,ye.paint.get("text-translate"),ye.paint.get("text-translate-anchor"),!0),hc(ve,K,ye,te,ye.paint.get("icon-translate"),ye.paint.get("icon-translate-anchor"),!1))}}function ae(ve,K,ye,te,xe,We){var He=e.getAnchorAlignment(ve),st=He.horizontalAlign,Et=He.verticalAlign,Ht=-(st-.5)*K,yr=-(Et-.5)*ye,Ir=e.evaluateVariableOffset(ve,te);return new e.Point((Ht/xe+Ir[0])*We,(yr/xe+Ir[1])*We)}function we(ve,K,ye,te,xe,We,He){for(var st=K.transform,Et=xe==="map",Ht=We==="map",yr=0,Ir=ve;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=te.getTile(wr),tr=qt.getBucket(ye);if(!(!tr||!tr.text||!tr.text.segments.get().length)){var dr=tr.textSizeData,Pr=e.evaluateSizeForZoom(dr,st.zoom),Vr=In(qt,1,K.transform.zoom),Hr=Sa(wr.posMatrix,Ht,Et,K.transform,Vr),aa=ye.layout.get("icon-text-fit")!=="none"&&tr.hasIconData();if(Pr){var Qr=Math.pow(2,st.zoom-qt.tileID.overscaledZ);Se(tr,Et,Ht,He,e.symbolSize,st,Hr,wr.posMatrix,Qr,Pr,aa)}}}}function Se(ve,K,ye,te,xe,We,He,st,Et,Ht,yr){var Ir=ve.text.placedSymbolArray,wr=ve.text.dynamicLayoutVertexArray,qt=ve.icon.dynamicLayoutVertexArray,tr={};wr.clear();for(var dr=0;dr<Ir.length;dr++){var Pr=Ir.get(dr),Vr=ve.allowVerticalPlacement&&!Pr.placedOrientation,Hr=!Pr.hidden&&Pr.crossTileID&&!Vr?te[Pr.crossTileID]:null;if(!Hr)zo(Pr.numGlyphs,wr);else{var aa=new e.Point(Pr.anchorX,Pr.anchorY),Qr=ai(aa,ye?st:He),Gr=an(We.cameraToCenterDistance,Qr.signedDistanceFromCamera),ia=xe.evaluateSizeForFeature(ve.textSizeData,Ht,Pr)*Gr/e.ONE_EM;ye&&(ia*=ve.tilePixelRatio/Et);for(var Ur=Hr.width,wa=Hr.height,Oa=Hr.anchor,ri=Hr.textOffset,Pi=Hr.textBoxScale,mi=ae(Oa,Ur,wa,ri,Pi,ia),Di=ye?ai(aa.add(mi),He).point:Qr.point.add(K?mi.rotate(-We.angle):mi),An=ve.allowVerticalPlacement&&Pr.placedOrientation===e.WritingMode.vertical?Math.PI/2:0,ln=0;ln<Pr.numGlyphs;ln++)e.addDynamicAttributes(wr,Di,An);yr&&Pr.associatedIconIndex>=0&&(tr[Pr.associatedIconIndex]={shiftedAnchor:Di,angle:An})}}if(yr){qt.clear();for(var Ii=ve.icon.placedSymbolArray,Wi=0;Wi<Ii.length;Wi++){var Hi=Ii.get(Wi);if(Hi.hidden)zo(Hi.numGlyphs,qt);else{var yn=tr[Wi];if(!yn)zo(Hi.numGlyphs,qt);else for(var zn=0;zn<Hi.numGlyphs;zn++)e.addDynamicAttributes(qt,yn.shiftedAnchor,yn.angle)}}ve.icon.dynamicLayoutVertexBuffer.updateData(qt)}ve.text.dynamicLayoutVertexBuffer.updateData(wr)}function De(ve,K,ye){return ye.iconsInText&&K?"symbolTextAndIcon":ve?"symbolSDF":"symbolIcon"}function ft(ve,K,ye,te,xe,We,He,st,Et,Ht,yr,Ir){for(var wr=ve.context,qt=wr.gl,tr=ve.transform,dr=st==="map",Pr=Et==="map",Vr=dr&&ye.layout.get("symbol-placement")!=="point",Hr=dr&&!Pr&&!Vr,aa=ye.layout.get("symbol-sort-key").constantOr(1)!==void 0,Qr=!1,Gr=ve.depthModeForSublayer(0,La.ReadOnly),ia=ye.layout.get("text-variable-anchor"),Ur=[],wa=0,Oa=te;wa<Oa.length;wa+=1){var ri=Oa[wa],Pi=K.getTile(ri),mi=Pi.getBucket(ye);if(mi){var Di=xe?mi.text:mi.icon;if(!(!Di||!Di.segments.get().length)){var An=Di.programConfigurations.get(ye.id),ln=xe||mi.sdfIcons,Ii=xe?mi.textSizeData:mi.iconSizeData,Wi=Pr||tr.pitch!==0,Hi=ve.useProgram(De(ln,xe,mi),An),yn=e.evaluateSizeForZoom(Ii,tr.zoom),zn=void 0,ms=[0,0],us=void 0,Vs=void 0,qo=null,Ls=void 0;if(xe){if(us=Pi.glyphAtlasTexture,Vs=qt.LINEAR,zn=Pi.glyphAtlasTexture.size,mi.iconsInText){ms=Pi.imageAtlasTexture.size,qo=Pi.imageAtlasTexture;var wl=Ii.kind==="composite"||Ii.kind==="camera";Ls=Wi||ve.options.rotating||ve.options.zooming||wl?qt.LINEAR:qt.NEAREST}}else{var Ru=ye.layout.get("icon-size").constantOr(0)!==1||mi.iconsNeedLinear;us=Pi.imageAtlasTexture,Vs=ln||ve.options.rotating||ve.options.zooming||Ru||Wi?qt.LINEAR:qt.NEAREST,zn=Pi.imageAtlasTexture.size}var Ap=In(Pi,1,ve.transform.zoom),Sp=Sa(ri.posMatrix,Pr,dr,ve.transform,Ap),Eh=Ti(ri.posMatrix,Pr,dr,ve.transform,Ap),Vp=ia&&mi.hasTextData(),Vd=ye.layout.get("icon-text-fit")!=="none"&&Vp&&mi.hasIconData();Vr&&Mn(mi,ri.posMatrix,ve,xe,Sp,Eh,Pr,Ht);var td=ve.translatePosMatrix(ri.posMatrix,Pi,We,He),kh=Vr||xe&&ia||Vd?Oe:Sp,rd=ve.translatePosMatrix(Eh,Pi,We,He,!0),Xh=ln&&ye.paint.get(xe?"text-halo-width":"icon-halo-width").constantOr(1)!==0,Ch=void 0;ln?mi.iconsInText?Ch=yu(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,zn,ms):Ch=tf(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,xe,zn,!0):Ch=ec(Ii.kind,yn,Hr,Pr,ve,td,kh,rd,xe,zn);var Mp={program:Hi,buffers:Di,uniformValues:Ch,atlasTexture:us,atlasTextureIcon:qo,atlasInterpolation:Vs,atlasInterpolationIcon:Ls,isSDF:ln,hasHalo:Xh};if(aa&&mi.canOverlap){Qr=!0;for(var qp=Di.segments.get(),Ep=0,Cv=qp;Ep<Cv.length;Ep+=1){var qd=Cv[Ep];Ur.push({segments:new e.SegmentVector([qd]),sortKey:qd.sortKey,state:Mp})}}else Ur.push({segments:Di.segments,sortKey:0,state:Mp})}}}Qr&&Ur.sort(function(im,nm){return im.sortKey-nm.sortKey});for(var Sf=0,Hd=Ur;Sf<Hd.length;Sf+=1){var Lv=Hd[Sf],eh=Lv.state;if(wr.activeTexture.set(qt.TEXTURE0),eh.atlasTexture.bind(eh.atlasInterpolation,qt.CLAMP_TO_EDGE),eh.atlasTextureIcon&&(wr.activeTexture.set(qt.TEXTURE1),eh.atlasTextureIcon&&eh.atlasTextureIcon.bind(eh.atlasInterpolationIcon,qt.CLAMP_TO_EDGE)),eh.isSDF){var iv=eh.uniformValues;eh.hasHalo&&(iv.u_is_halo=1,bt(eh.buffers,Lv.segments,ye,ve,eh.program,Gr,yr,Ir,iv)),iv.u_is_halo=0}bt(eh.buffers,Lv.segments,ye,ve,eh.program,Gr,yr,Ir,eh.uniformValues)}}function bt(ve,K,ye,te,xe,We,He,st,Et){var Ht=te.context,yr=Ht.gl;xe.draw(Ht,yr.TRIANGLES,We,He,st,xr.disabled,Et,ye.id,ve.layoutVertexBuffer,ve.indexBuffer,K,ye.paint,te.transform.zoom,ve.programConfigurations.get(ye.id),ve.dynamicLayoutVertexBuffer,ve.opacityVertexBuffer)}function Dt(ve,K,ye,te){if(ve.renderPass==="translucent"){var xe=ye.paint.get("circle-opacity"),We=ye.paint.get("circle-stroke-width"),He=ye.paint.get("circle-stroke-opacity"),st=ye.layout.get("circle-sort-key").constantOr(1)!==void 0;if(!(xe.constantOr(1)===0&&(We.constantOr(1)===0||He.constantOr(1)===0))){for(var Et=ve.context,Ht=Et.gl,yr=ve.depthModeForSublayer(0,La.ReadOnly),Ir=Ma.disabled,wr=ve.colorModeForRenderPass(),qt=[],tr=0;tr<te.length;tr++){var dr=te[tr],Pr=K.getTile(dr),Vr=Pr.getBucket(ye);if(Vr){var Hr=Vr.programConfigurations.get(ye.id),aa=ve.useProgram("circle",Hr),Qr=Vr.layoutVertexBuffer,Gr=Vr.indexBuffer,ia=fr(ve,dr,Pr,ye),Ur={programConfiguration:Hr,program:aa,layoutVertexBuffer:Qr,indexBuffer:Gr,uniformValues:ia};if(st)for(var wa=Vr.segments.get(),Oa=0,ri=wa;Oa<ri.length;Oa+=1){var Pi=ri[Oa];qt.push({segments:new e.SegmentVector([Pi]),sortKey:Pi.sortKey,state:Ur})}else qt.push({segments:Vr.segments,sortKey:0,state:Ur})}}st&&qt.sort(function(us,Vs){return us.sortKey-Vs.sortKey});for(var mi=0,Di=qt;mi<Di.length;mi+=1){var An=Di[mi],ln=An.state,Ii=ln.programConfiguration,Wi=ln.program,Hi=ln.layoutVertexBuffer,yn=ln.indexBuffer,zn=ln.uniformValues,ms=An.segments;Wi.draw(Et,Ht.TRIANGLES,yr,Ir,wr,xr.disabled,zn,ye.id,Hi,yn,ms,ye.paint,ve.transform.zoom,Ii)}}}}function Yt(ve,K,ye,te){if(ye.paint.get("heatmap-opacity")!==0)if(ve.renderPass==="offscreen"){var xe=ve.context,We=xe.gl,He=Ma.disabled,st=new zt([We.ONE,We.ONE],e.Color.transparent,[!0,!0,!0,!0]);cr(xe,ve,ye),xe.clear({color:e.Color.transparent});for(var Et=0;Et<te.length;Et++){var Ht=te[Et];if(!K.hasRenderableParent(Ht)){var yr=K.getTile(Ht),Ir=yr.getBucket(ye);if(Ir){var wr=Ir.programConfigurations.get(ye.id),qt=ve.useProgram("heatmap",wr),tr=ve.transform,dr=tr.zoom;qt.draw(xe,We.TRIANGLES,La.disabled,He,st,xr.disabled,vi(Ht.posMatrix,yr,dr,ye.paint.get("heatmap-intensity")),ye.id,Ir.layoutVertexBuffer,Ir.indexBuffer,Ir.segments,ye.paint,ve.transform.zoom,wr)}}}xe.viewport.set([0,0,ve.width,ve.height])}else ve.renderPass==="translucent"&&(ve.context.setColorMode(ve.colorModeForRenderPass()),jr(ve,ye))}function cr(ve,K,ye){var te=ve.gl;ve.activeTexture.set(te.TEXTURE1),ve.viewport.set([0,0,K.width/4,K.height/4]);var xe=ye.heatmapFbo;if(xe)te.bindTexture(te.TEXTURE_2D,xe.colorAttachment.get()),ve.bindFramebuffer.set(xe.framebuffer);else{var We=te.createTexture();te.bindTexture(te.TEXTURE_2D,We),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_WRAP_S,te.CLAMP_TO_EDGE),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_WRAP_T,te.CLAMP_TO_EDGE),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_MIN_FILTER,te.LINEAR),te.texParameteri(te.TEXTURE_2D,te.TEXTURE_MAG_FILTER,te.LINEAR),xe=ye.heatmapFbo=ve.createFramebuffer(K.width/4,K.height/4,!1),hr(ve,K,We,xe)}}function hr(ve,K,ye,te){var xe=ve.gl,We=ve.extRenderToTextureHalfFloat?ve.extTextureHalfFloat.HALF_FLOAT_OES:xe.UNSIGNED_BYTE;xe.texImage2D(xe.TEXTURE_2D,0,xe.RGBA,K.width/4,K.height/4,0,xe.RGBA,We,null),te.colorAttachment.set(ye)}function jr(ve,K){var ye=ve.context,te=ye.gl,xe=K.heatmapFbo;if(xe){ye.activeTexture.set(te.TEXTURE0),te.bindTexture(te.TEXTURE_2D,xe.colorAttachment.get()),ye.activeTexture.set(te.TEXTURE1);var We=K.colorRampTexture;We||(We=K.colorRampTexture=new e.Texture(ye,K.colorRamp,te.RGBA)),We.bind(te.LINEAR,te.CLAMP_TO_EDGE),ve.useProgram("heatmapTexture").draw(ye,te.TRIANGLES,La.disabled,Ma.disabled,ve.colorModeForRenderPass(),xr.disabled,ti(ve,K,0,1),K.id,ve.viewportBuffer,ve.quadTriangleIndexBuffer,ve.viewportSegments,K.paint,ve.transform.zoom)}}function ea(ve,K,ye,te){if(ve.renderPass==="translucent"){var xe=ye.paint.get("line-opacity"),We=ye.paint.get("line-width");if(!(xe.constantOr(1)===0||We.constantOr(1)===0))for(var He=ve.depthModeForSublayer(0,La.ReadOnly),st=ve.colorModeForRenderPass(),Et=ye.paint.get("line-dasharray"),Ht=ye.paint.get("line-pattern"),yr=Ht.constantOr(1),Ir=ye.paint.get("line-gradient"),wr=ye.getCrossfadeParameters(),qt=yr?"linePattern":Et?"lineSDF":Ir?"lineGradient":"line",tr=ve.context,dr=tr.gl,Pr=!0,Vr=0,Hr=te;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=K.getTile(aa);if(!(yr&&!Qr.patternsLoaded())){var Gr=Qr.getBucket(ye);if(Gr){var ia=Gr.programConfigurations.get(ye.id),Ur=ve.context.program.get(),wa=ve.useProgram(qt,ia),Oa=Pr||wa.program!==Ur,ri=Ht.constantOr(null);if(ri&&Qr.imageAtlas){var Pi=Qr.imageAtlas,mi=Pi.patternPositions[ri.to.toString()],Di=Pi.patternPositions[ri.from.toString()];mi&&Di&&ia.setConstantPatternPositions(mi,Di)}var An=yr?Ms(ve,Qr,ye,wr):Et?Hs(ve,Qr,ye,Et,wr):Ir?Xs(ve,Qr,ye,Gr.lineClipsArray.length):bs(ve,Qr,ye);if(yr)tr.activeTexture.set(dr.TEXTURE0),Qr.imageAtlasTexture.bind(dr.LINEAR,dr.CLAMP_TO_EDGE),ia.updatePaintBuffers(wr);else if(Et&&(Oa||ve.lineAtlas.dirty))tr.activeTexture.set(dr.TEXTURE0),ve.lineAtlas.bind(tr);else if(Ir){var ln=Gr.gradients[ye.id],Ii=ln.texture;if(ye.gradientVersion!==ln.version){var Wi=256;if(ye.stepInterpolant){var Hi=K.getSource().maxzoom,yn=aa.canonical.z===Hi?Math.ceil(1<<ve.transform.maxZoom-aa.canonical.z):1,zn=Gr.maxLineLength/e.EXTENT,ms=1024,us=zn*ms*yn;Wi=e.clamp(e.nextPowerOfTwo(us),256,tr.maxTextureSize)}ln.gradient=e.renderColorRamp({expression:ye.gradientExpression(),evaluationKey:"lineProgress",resolution:Wi,image:ln.gradient||void 0,clips:Gr.lineClipsArray}),ln.texture?ln.texture.update(ln.gradient):ln.texture=new e.Texture(tr,ln.gradient,dr.RGBA),ln.version=ye.gradientVersion,Ii=ln.texture}tr.activeTexture.set(dr.TEXTURE0),Ii.bind(ye.stepInterpolant?dr.NEAREST:dr.LINEAR,dr.CLAMP_TO_EDGE)}wa.draw(tr,dr.TRIANGLES,He,ve.stencilModeForClipping(aa),st,xr.disabled,An,ye.id,Gr.layoutVertexBuffer,Gr.indexBuffer,Gr.segments,ye.paint,ve.transform.zoom,ia,Gr.layoutVertexBuffer2),Pr=!1}}}}}function qe(ve,K,ye,te){var xe=ye.paint.get("fill-color"),We=ye.paint.get("fill-opacity");if(We.constantOr(1)!==0){var He=ve.colorModeForRenderPass(),st=ye.paint.get("fill-pattern"),Et=ve.opaquePassEnabledForLayer()&&!st.constantOr(1)&&xe.constantOr(e.Color.transparent).a===1&&We.constantOr(0)===1?"opaque":"translucent";if(ve.renderPass===Et){var Ht=ve.depthModeForSublayer(1,ve.renderPass==="opaque"?La.ReadWrite:La.ReadOnly);Je(ve,K,ye,te,Ht,He,!1)}if(ve.renderPass==="translucent"&&ye.paint.get("fill-antialias")){var yr=ve.depthModeForSublayer(ye.getPaintProperty("fill-outline-color")?2:0,La.ReadOnly);Je(ve,K,ye,te,yr,He,!0)}}}function Je(ve,K,ye,te,xe,We,He){var st=ve.context.gl,Et=ye.paint.get("fill-pattern"),Ht=Et&&Et.constantOr(1),yr=ye.getCrossfadeParameters(),Ir,wr,qt,tr,dr;He?(wr=Ht&&!ye.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",Ir=st.LINES):(wr=Ht?"fillPattern":"fill",Ir=st.TRIANGLES);for(var Pr=0,Vr=te;Pr<Vr.length;Pr+=1){var Hr=Vr[Pr],aa=K.getTile(Hr);if(!(Ht&&!aa.patternsLoaded())){var Qr=aa.getBucket(ye);if(Qr){var Gr=Qr.programConfigurations.get(ye.id),ia=ve.useProgram(wr,Gr);Ht&&(ve.context.activeTexture.set(st.TEXTURE0),aa.imageAtlasTexture.bind(st.LINEAR,st.CLAMP_TO_EDGE),Gr.updatePaintBuffers(yr));var Ur=Et.constantOr(null);if(Ur&&aa.imageAtlas){var wa=aa.imageAtlas,Oa=wa.patternPositions[Ur.to.toString()],ri=wa.patternPositions[Ur.from.toString()];Oa&&ri&&Gr.setConstantPatternPositions(Oa,ri)}var Pi=ve.translatePosMatrix(Hr.posMatrix,aa,ye.paint.get("fill-translate"),ye.paint.get("fill-translate-anchor"));if(!He)tr=Qr.indexBuffer,dr=Qr.segments,qt=Ht?Oc(Pi,ve,yr,aa):fc(Pi);else{tr=Qr.indexBuffer2,dr=Qr.segments2;var mi=[st.drawingBufferWidth,st.drawingBufferHeight];qt=wr==="fillOutlinePattern"&&Ht?ef(Pi,ve,yr,aa,mi):Qu(Pi,mi)}ia.draw(ve.context,Ir,xe,ve.stencilModeForClipping(Hr),We,xr.disabled,qt,ye.id,Qr.layoutVertexBuffer,tr,dr,ye.paint,ve.transform.zoom,Gr)}}}}function ot(ve,K,ye,te){var xe=ye.paint.get("fill-extrusion-opacity");if(xe!==0&&ve.renderPass==="translucent"){var We=new La(ve.context.gl.LEQUAL,La.ReadWrite,ve.depthRangeFor3D);if(xe===1&&!ye.paint.get("fill-extrusion-pattern").constantOr(1)){var He=ve.colorModeForRenderPass();ht(ve,K,ye,te,We,Ma.disabled,He)}else ht(ve,K,ye,te,We,Ma.disabled,zt.disabled),ht(ve,K,ye,te,We,ve.stencilModeFor3D(),ve.colorModeForRenderPass())}}function ht(ve,K,ye,te,xe,We,He){for(var st=ve.context,Et=st.gl,Ht=ye.paint.get("fill-extrusion-pattern"),yr=Ht.constantOr(1),Ir=ye.getCrossfadeParameters(),wr=ye.paint.get("fill-extrusion-opacity"),qt=0,tr=te;qt<tr.length;qt+=1){var dr=tr[qt],Pr=K.getTile(dr),Vr=Pr.getBucket(ye);if(Vr){var Hr=Vr.programConfigurations.get(ye.id),aa=ve.useProgram(yr?"fillExtrusionPattern":"fillExtrusion",Hr);yr&&(ve.context.activeTexture.set(Et.TEXTURE0),Pr.imageAtlasTexture.bind(Et.LINEAR,Et.CLAMP_TO_EDGE),Hr.updatePaintBuffers(Ir));var Qr=Ht.constantOr(null);if(Qr&&Pr.imageAtlas){var Gr=Pr.imageAtlas,ia=Gr.patternPositions[Qr.to.toString()],Ur=Gr.patternPositions[Qr.from.toString()];ia&&Ur&&Hr.setConstantPatternPositions(ia,Ur)}var wa=ve.translatePosMatrix(dr.posMatrix,Pr,ye.paint.get("fill-extrusion-translate"),ye.paint.get("fill-extrusion-translate-anchor")),Oa=ye.paint.get("fill-extrusion-vertical-gradient"),ri=yr?Vu(wa,ve,Oa,wr,dr,Ir,Pr):Qf(wa,ve,Oa,wr);aa.draw(st,st.gl.TRIANGLES,xe,We,He,xr.backCCW,ri,ye.id,Vr.layoutVertexBuffer,Vr.indexBuffer,Vr.segments,ye.paint,ve.transform.zoom,Hr)}}}function At(ve,K,ye,te){if(!(ve.renderPass!=="offscreen"&&ve.renderPass!=="translucent")){for(var xe=ve.context,We=ve.depthModeForSublayer(0,La.ReadOnly),He=ve.colorModeForRenderPass(),st=ve.renderPass==="translucent"?ve.stencilConfigForOverlap(te):[{},te],Et=st[0],Ht=st[1],yr=0,Ir=Ht;yr<Ir.length;yr+=1){var wr=Ir[yr],qt=K.getTile(wr);qt.needsHillshadePrepare&&ve.renderPass==="offscreen"?Pt(ve,qt,ye,We,Ma.disabled,He):ve.renderPass==="translucent"&&_t(ve,qt,ye,We,Et[wr.overscaledZ],He)}xe.viewport.set([0,0,ve.width,ve.height])}}function _t(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl,Et=K.fbo;if(Et){var Ht=ve.useProgram("hillshade");He.activeTexture.set(st.TEXTURE0),st.bindTexture(st.TEXTURE_2D,Et.colorAttachment.get());var yr=Wn(ve,K,ye);Ht.draw(He,st.TRIANGLES,te,xe,We,xr.disabled,yr,ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments)}}function Pt(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl,Et=K.dem;if(Et&&Et.data){var Ht=Et.dim,yr=Et.stride,Ir=Et.getPixels();if(He.activeTexture.set(st.TEXTURE1),He.pixelStoreUnpackPremultiplyAlpha.set(!1),K.demTexture=K.demTexture||ve.getTileTexture(yr),K.demTexture){var wr=K.demTexture;wr.update(Ir,{premultiply:!1}),wr.bind(st.NEAREST,st.CLAMP_TO_EDGE)}else K.demTexture=new e.Texture(He,Ir,st.RGBA,{premultiply:!1}),K.demTexture.bind(st.NEAREST,st.CLAMP_TO_EDGE);He.activeTexture.set(st.TEXTURE0);var qt=K.fbo;if(!qt){var tr=new e.Texture(He,{width:Ht,height:Ht,data:null},st.RGBA);tr.bind(st.LINEAR,st.CLAMP_TO_EDGE),qt=K.fbo=He.createFramebuffer(Ht,Ht,!0),qt.colorAttachment.set(tr.texture)}He.bindFramebuffer.set(qt.framebuffer),He.viewport.set([0,0,Ht,Ht]),ve.useProgram("hillshadePrepare").draw(He,st.TRIANGLES,te,xe,We,xr.disabled,Jn(K.tileID,Et),ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments),K.needsHillshadePrepare=!1}}function er(ve,K,ye,te){if(ve.renderPass==="translucent"&&ye.paint.get("raster-opacity")!==0&&te.length)for(var xe=ve.context,We=xe.gl,He=K.getSource(),st=ve.useProgram("raster"),Et=ve.colorModeForRenderPass(),Ht=He instanceof se?[{},te]:ve.stencilConfigForOverlap(te),yr=Ht[0],Ir=Ht[1],wr=Ir[Ir.length-1].overscaledZ,qt=!ve.options.moving,tr=0,dr=Ir;tr<dr.length;tr+=1){var Pr=dr[tr],Vr=ve.depthModeForSublayer(Pr.overscaledZ-wr,ye.paint.get("raster-opacity")===1?La.ReadWrite:La.ReadOnly,We.LESS),Hr=K.getTile(Pr),aa=ve.transform.calculatePosMatrix(Pr.toUnwrapped(),qt);Hr.registerFadeDuration(ye.paint.get("raster-fade-duration"));var Qr=K.findLoadedParent(Pr,0),Gr=nr(Hr,Qr,K,ye,ve.transform),ia=void 0,Ur=void 0,wa=ye.paint.get("raster-resampling")==="nearest"?We.NEAREST:We.LINEAR;xe.activeTexture.set(We.TEXTURE0),Hr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST),xe.activeTexture.set(We.TEXTURE1),Qr?(Qr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST),ia=Math.pow(2,Qr.tileID.overscaledZ-Hr.tileID.overscaledZ),Ur=[Hr.tileID.canonical.x*ia%1,Hr.tileID.canonical.y*ia%1]):Hr.texture.bind(wa,We.CLAMP_TO_EDGE,We.LINEAR_MIPMAP_NEAREST);var Oa=tl(aa,Ur||[0,0],ia||1,Gr,ye);He instanceof se?st.draw(xe,We.TRIANGLES,Vr,Ma.disabled,Et,xr.disabled,Oa,ye.id,He.boundsBuffer,ve.quadTriangleIndexBuffer,He.boundsSegments):st.draw(xe,We.TRIANGLES,Vr,yr[Pr.overscaledZ],Et,xr.disabled,Oa,ye.id,ve.rasterBoundsBuffer,ve.quadTriangleIndexBuffer,ve.rasterBoundsSegments)}}function nr(ve,K,ye,te,xe){var We=te.paint.get("raster-fade-duration");if(We>0){var He=e.browser.now(),st=(He-ve.timeAdded)/We,Et=K?(He-K.timeAdded)/We:-1,Ht=ye.getSource(),yr=xe.coveringZoomLevel({tileSize:Ht.tileSize,roundZoom:Ht.roundZoom}),Ir=!K||Math.abs(K.tileID.overscaledZ-yr)>Math.abs(ve.tileID.overscaledZ-yr),wr=Ir&&ve.refreshedUponExpiration?1:e.clamp(Ir?st:1-Et,0,1);return ve.refreshedUponExpiration&&st>=1&&(ve.refreshedUponExpiration=!1),K?{opacity:1,mix:1-wr}:{opacity:wr,mix:0}}else return{opacity:1,mix:0}}function pr(ve,K,ye){var te=ye.paint.get("background-color"),xe=ye.paint.get("background-opacity");if(xe!==0){var We=ve.context,He=We.gl,st=ve.transform,Et=st.tileSize,Ht=ye.paint.get("background-pattern");if(!ve.isPatternMissing(Ht)){var yr=!Ht&&te.a===1&&xe===1&&ve.opaquePassEnabledForLayer()?"opaque":"translucent";if(ve.renderPass===yr){var Ir=Ma.disabled,wr=ve.depthModeForSublayer(0,yr==="opaque"?La.ReadWrite:La.ReadOnly),qt=ve.colorModeForRenderPass(),tr=ve.useProgram(Ht?"backgroundPattern":"background"),dr=st.coveringTiles({tileSize:Et});Ht&&(We.activeTexture.set(He.TEXTURE0),ve.imageManager.bind(ve.context));for(var Pr=ye.getCrossfadeParameters(),Vr=0,Hr=dr;Vr<Hr.length;Vr+=1){var aa=Hr[Vr],Qr=ve.transform.calculatePosMatrix(aa.toUnwrapped()),Gr=Ht?ro(Qr,xe,ve,Ht,{tileID:aa,tileSize:Et},Pr):Ac(Qr,xe,te);tr.draw(We,He.TRIANGLES,wr,Ir,qt,xr.disabled,Gr,ye.id,ve.tileExtentBuffer,ve.quadTriangleIndexBuffer,ve.tileExtentSegments)}}}}}var Sr=new e.Color(1,0,0,1),Wr=new e.Color(0,1,0,1),ha=new e.Color(0,0,1,1),ga=new e.Color(1,0,1,1),Pa=new e.Color(0,1,1,1);function Ja(ve){var K=ve.transform.padding,ye=3;pi(ve,ve.transform.height-(K.top||0),ye,Sr),pi(ve,K.bottom||0,ye,Wr),Ci(ve,K.left||0,ye,ha),Ci(ve,ve.transform.width-(K.right||0),ye,ga);var te=ve.transform.centerPoint;di(ve,te.x,ve.transform.height-te.y,Pa)}function di(ve,K,ye,te){var xe=20,We=2;$i(ve,K-We/2,ye-xe/2,We,xe,te),$i(ve,K-xe/2,ye-We/2,xe,We,te)}function pi(ve,K,ye,te){$i(ve,0,K+ye/2,ve.transform.width,ye,te)}function Ci(ve,K,ye,te){$i(ve,K-ye/2,0,ye,ve.transform.height,te)}function $i(ve,K,ye,te,xe,We){var He=ve.context,st=He.gl;st.enable(st.SCISSOR_TEST),st.scissor(K*e.browser.devicePixelRatio,ye*e.browser.devicePixelRatio,te*e.browser.devicePixelRatio,xe*e.browser.devicePixelRatio),He.clear({color:We}),st.disable(st.SCISSOR_TEST)}function Bn(ve,K,ye){for(var te=0;te<ye.length;te++)Sn(ve,K,ye[te])}function Sn(ve,K,ye){var te=ve.context,xe=te.gl,We=ye.posMatrix,He=ve.useProgram("debug"),st=La.disabled,Et=Ma.disabled,Ht=ve.colorModeForRenderPass(),yr="$debug";te.activeTexture.set(xe.TEXTURE0),ve.emptyTexture.bind(xe.LINEAR,xe.CLAMP_TO_EDGE),He.draw(te,xe.LINE_STRIP,st,Et,Ht,xr.disabled,yi(We,e.Color.red),yr,ve.debugBuffer,ve.tileBorderIndexBuffer,ve.debugSegments);var Ir=K.getTileByID(ye.key).latestRawTileData,wr=Ir&&Ir.byteLength||0,qt=Math.floor(wr/1024),tr=K.getTile(ye).tileSize,dr=512/Math.min(tr,512)*(ye.overscaledZ/ve.transform.zoom)*.5,Pr=ye.canonical.toString();ye.overscaledZ!==ye.canonical.z&&(Pr+=" => "+ye.overscaledZ);var Vr=Pr+" "+qt+"kb";ho(ve,Vr),He.draw(te,xe.TRIANGLES,st,Et,zt.alphaBlended,xr.disabled,yi(We,e.Color.transparent,dr),yr,ve.debugBuffer,ve.quadTriangleIndexBuffer,ve.debugSegments)}function ho(ve,K){ve.initDebugOverlayCanvas();var ye=ve.debugOverlayCanvas,te=ve.context.gl,xe=ve.debugOverlayCanvas.getContext("2d");xe.clearRect(0,0,ye.width,ye.height),xe.shadowColor="white",xe.shadowBlur=2,xe.lineWidth=1.5,xe.strokeStyle="white",xe.textBaseline="top",xe.font="bold 36px Open Sans, sans-serif",xe.fillText(K,5,5),xe.strokeText(K,5,5),ve.debugOverlayTexture.update(ye),ve.debugOverlayTexture.bind(te.LINEAR,te.CLAMP_TO_EDGE)}function ts(ve,K,ye){var te=ve.context,xe=ye.implementation;if(ve.renderPass==="offscreen"){var We=xe.prerender;We&&(ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),We.call(xe,te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState())}else if(ve.renderPass==="translucent"){ve.setCustomLayerDefaults(),te.setColorMode(ve.colorModeForRenderPass()),te.setStencilMode(Ma.disabled);var He=xe.renderingMode==="3d"?new La(ve.context.gl.LEQUAL,La.ReadWrite,ve.depthRangeFor3D):ve.depthModeForSublayer(0,La.ReadOnly);te.setDepthMode(He),xe.render(te.gl,ve.transform.customLayerMatrix()),te.setDirty(),ve.setBaseState(),te.bindFramebuffer.set(null)}}var yo={symbol:R,circle:Dt,heatmap:Yt,line:ea,fill:qe,"fill-extrusion":ot,hillshade:At,raster:er,background:pr,debug:Bn,custom:ts},Vo=function(K,ye){this.context=new Zr(K),this.transform=ye,this._tileTextures={},this.setup(),this.numSublayers=pa.maxUnderzooming+pa.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Zu,this.gpuTimers={}};Vo.prototype.resize=function(K,ye){if(this.width=K*e.browser.devicePixelRatio,this.height=ye*e.browser.devicePixelRatio,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(var te=0,xe=this.style._order;te<xe.length;te+=1){var We=xe[te];this.style._layers[We].resize()}},Vo.prototype.setup=function(){var K=this.context,ye=new e.StructArrayLayout2i4;ye.emplaceBack(0,0),ye.emplaceBack(e.EXTENT,0),ye.emplaceBack(0,e.EXTENT),ye.emplaceBack(e.EXTENT,e.EXTENT),this.tileExtentBuffer=K.createVertexBuffer(ye,Nu.members),this.tileExtentSegments=e.SegmentVector.simpleSegment(0,0,4,2);var te=new e.StructArrayLayout2i4;te.emplaceBack(0,0),te.emplaceBack(e.EXTENT,0),te.emplaceBack(0,e.EXTENT),te.emplaceBack(e.EXTENT,e.EXTENT),this.debugBuffer=K.createVertexBuffer(te,Nu.members),this.debugSegments=e.SegmentVector.simpleSegment(0,0,4,5);var xe=new e.StructArrayLayout4i8;xe.emplaceBack(0,0,0,0),xe.emplaceBack(e.EXTENT,0,e.EXTENT,0),xe.emplaceBack(0,e.EXTENT,0,e.EXTENT),xe.emplaceBack(e.EXTENT,e.EXTENT,e.EXTENT,e.EXTENT),this.rasterBoundsBuffer=K.createVertexBuffer(xe,ue.members),this.rasterBoundsSegments=e.SegmentVector.simpleSegment(0,0,4,2);var We=new e.StructArrayLayout2i4;We.emplaceBack(0,0),We.emplaceBack(1,0),We.emplaceBack(0,1),We.emplaceBack(1,1),this.viewportBuffer=K.createVertexBuffer(We,Nu.members),this.viewportSegments=e.SegmentVector.simpleSegment(0,0,4,2);var He=new e.StructArrayLayout1ui2;He.emplaceBack(0),He.emplaceBack(1),He.emplaceBack(3),He.emplaceBack(2),He.emplaceBack(0),this.tileBorderIndexBuffer=K.createIndexBuffer(He);var st=new e.StructArrayLayout3ui6;st.emplaceBack(0,1,2),st.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=K.createIndexBuffer(st),this.emptyTexture=new e.Texture(K,{width:1,height:1,data:new Uint8Array([0,0,0,0])},K.gl.RGBA);var Et=this.context.gl;this.stencilClearMode=new Ma({func:Et.ALWAYS,mask:0},0,255,Et.ZERO,Et.ZERO,Et.ZERO)},Vo.prototype.clearStencil=function(){var K=this.context,ye=K.gl;this.nextStencilID=1,this.currentStencilSource=void 0;var te=e.create();e.ortho(te,0,this.width,this.height,0,0,1),e.scale(te,te,[ye.drawingBufferWidth,ye.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(K,ye.TRIANGLES,La.disabled,this.stencilClearMode,zt.disabled,xr.disabled,Bi(te),"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)},Vo.prototype._renderTileClippingMasks=function(K,ye){if(!(this.currentStencilSource===K.source||!K.isTileClipped()||!ye||!ye.length)){this.currentStencilSource=K.source;var te=this.context,xe=te.gl;this.nextStencilID+ye.length>256&&this.clearStencil(),te.setColorMode(zt.disabled),te.setDepthMode(La.disabled);var We=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(var He=0,st=ye;He<st.length;He+=1){var Et=st[He],Ht=this._tileClippingMaskIDs[Et.key]=this.nextStencilID++;We.draw(te,xe.TRIANGLES,La.disabled,new Ma({func:xe.ALWAYS,mask:0},Ht,255,xe.KEEP,xe.KEEP,xe.REPLACE),zt.disabled,xr.disabled,Bi(Et.posMatrix),"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}},Vo.prototype.stencilModeFor3D=function(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();var K=this.nextStencilID++,ye=this.context.gl;return new Ma({func:ye.NOTEQUAL,mask:255},K,255,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilModeForClipping=function(K){var ye=this.context.gl;return new Ma({func:ye.EQUAL,mask:255},this._tileClippingMaskIDs[K.key],0,ye.KEEP,ye.KEEP,ye.REPLACE)},Vo.prototype.stencilConfigForOverlap=function(K){var ye,te=this.context.gl,xe=K.sort(function(Ht,yr){return yr.overscaledZ-Ht.overscaledZ}),We=xe[xe.length-1].overscaledZ,He=xe[0].overscaledZ-We+1;if(He>1){this.currentStencilSource=void 0,this.nextStencilID+He>256&&this.clearStencil();for(var st={},Et=0;Et<He;Et++)st[Et+We]=new Ma({func:te.GEQUAL,mask:255},Et+this.nextStencilID,255,te.KEEP,te.KEEP,te.REPLACE);return this.nextStencilID+=He,[st,xe]}return[(ye={},ye[We]=Ma.disabled,ye),xe]},Vo.prototype.colorModeForRenderPass=function(){var K=this.context.gl;if(this._showOverdrawInspector){var ye=8,te=1/ye;return new zt([K.CONSTANT_COLOR,K.ONE],new e.Color(te,te,te,0),[!0,!0,!0,!0])}else return this.renderPass==="opaque"?zt.unblended:zt.alphaBlended},Vo.prototype.depthModeForSublayer=function(K,ye,te){if(!this.opaquePassEnabledForLayer())return La.disabled;var xe=1-((1+this.currentLayer)*this.numSublayers+K)*this.depthEpsilon;return new La(te||this.context.gl.LEQUAL,ye,[xe,xe])},Vo.prototype.opaquePassEnabledForLayer=function(){return this.currentLayer<this.opaquePassCutoff},Vo.prototype.render=function(K,ye){var te=this;this.style=K,this.options=ye,this.lineAtlas=K.lineAtlas,this.imageManager=K.imageManager,this.glyphManager=K.glyphManager,this.symbolFadeChange=K.placement.symbolFadeChange(e.browser.now()),this.imageManager.beginFrame();var xe=this.style._order,We=this.style.sourceCaches;for(var He in We){var st=We[He];st.used&&st.prepare(this.context)}var Et={},Ht={},yr={};for(var Ir in We){var wr=We[Ir];Et[Ir]=wr.getVisibleCoordinates(),Ht[Ir]=Et[Ir].slice().reverse(),yr[Ir]=wr.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(var qt=0;qt<xe.length;qt++){var tr=xe[qt];if(this.style._layers[tr].is3D()){this.opaquePassCutoff=qt;break}}this.renderPass="offscreen";for(var dr=0,Pr=xe;dr<Pr.length;dr+=1){var Vr=Pr[dr],Hr=this.style._layers[Vr];if(!(!Hr.hasOffscreenPass()||Hr.isHidden(this.transform.zoom))){var aa=Ht[Hr.source];Hr.type!=="custom"&&!aa.length||this.renderLayer(this,We[Hr.source],Hr,aa)}}for(this.context.bindFramebuffer.set(null),this.context.clear({color:ye.showOverdrawInspector?e.Color.black:e.Color.transparent,depth:1}),this.clearStencil(),this._showOverdrawInspector=ye.showOverdrawInspector,this.depthRangeFor3D=[0,1-(K._order.length+2)*this.numSublayers*this.depthEpsilon],this.renderPass="opaque",this.currentLayer=xe.length-1;this.currentLayer>=0;this.currentLayer--){var Qr=this.style._layers[xe[this.currentLayer]],Gr=We[Qr.source],ia=Et[Qr.source];this._renderTileClippingMasks(Qr,ia),this.renderLayer(this,Gr,Qr,ia)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<xe.length;this.currentLayer++){var Ur=this.style._layers[xe[this.currentLayer]],wa=We[Ur.source],Oa=(Ur.type==="symbol"?yr:Ht)[Ur.source];this._renderTileClippingMasks(Ur,Et[Ur.source]),this.renderLayer(this,wa,Ur,Oa)}if(this.options.showTileBoundaries){var ri,Pi,mi=e.values(this.style._layers);mi.forEach(function(Di){Di.source&&!Di.isHidden(te.transform.zoom)&&(Di.source!==(Pi&&Pi.id)&&(Pi=te.style.sourceCaches[Di.source]),(!ri||ri.getSource().maxzoom<Pi.getSource().maxzoom)&&(ri=Pi))}),ri&&yo.debug(this,ri,ri.getVisibleCoordinates())}this.options.showPadding&&Ja(this),this.context.setDefault()},Vo.prototype.renderLayer=function(K,ye,te,xe){te.isHidden(this.transform.zoom)||te.type!=="background"&&te.type!=="custom"&&!xe.length||(this.id=te.id,this.gpuTimingStart(te),yo[te.type](K,ye,te,xe,this.style.placement.variableOffsets),this.gpuTimingEnd())},Vo.prototype.gpuTimingStart=function(K){if(this.options.gpuTiming){var ye=this.context.extTimerQuery,te=this.gpuTimers[K.id];te||(te=this.gpuTimers[K.id]={calls:0,cpuTime:0,query:ye.createQueryEXT()}),te.calls++,ye.beginQueryEXT(ye.TIME_ELAPSED_EXT,te.query)}},Vo.prototype.gpuTimingEnd=function(){if(this.options.gpuTiming){var K=this.context.extTimerQuery;K.endQueryEXT(K.TIME_ELAPSED_EXT)}},Vo.prototype.collectGpuTimers=function(){var K=this.gpuTimers;return this.gpuTimers={},K},Vo.prototype.queryGpuTimers=function(K){var ye={};for(var te in K){var xe=K[te],We=this.context.extTimerQuery,He=We.getQueryObjectEXT(xe.query,We.QUERY_RESULT_EXT)/(1e3*1e3);We.deleteQueryEXT(xe.query),ye[te]=He}return ye},Vo.prototype.translatePosMatrix=function(K,ye,te,xe,We){if(!te[0]&&!te[1])return K;var He=We?xe==="map"?this.transform.angle:0:xe==="viewport"?-this.transform.angle:0;if(He){var st=Math.sin(He),Et=Math.cos(He);te=[te[0]*Et-te[1]*st,te[0]*st+te[1]*Et]}var Ht=[We?te[0]:In(ye,te[0],this.transform.zoom),We?te[1]:In(ye,te[1],this.transform.zoom),0],yr=new Float32Array(16);return e.translate(yr,K,Ht),yr},Vo.prototype.saveTileTexture=function(K){var ye=this._tileTextures[K.size[0]];ye?ye.push(K):this._tileTextures[K.size[0]]=[K]},Vo.prototype.getTileTexture=function(K){var ye=this._tileTextures[K];return ye&&ye.length>0?ye.pop():null},Vo.prototype.isPatternMissing=function(K){if(!K)return!1;if(!K.from||!K.to)return!0;var ye=this.imageManager.getPattern(K.from.toString()),te=this.imageManager.getPattern(K.to.toString());return!ye||!te},Vo.prototype.useProgram=function(K,ye){this.cache=this.cache||{};var te=""+K+(ye?ye.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"");return this.cache[te]||(this.cache[te]=new Af(this.context,K,mf[K],ye,Po[K],this._showOverdrawInspector)),this.cache[te]},Vo.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()},Vo.prototype.setBaseState=function(){var K=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(K.FUNC_ADD)},Vo.prototype.initDebugOverlayCanvas=function(){if(this.debugOverlayCanvas==null){this.debugOverlayCanvas=e.window.document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512;var K=this.context.gl;this.debugOverlayTexture=new e.Texture(this.context,this.debugOverlayCanvas,K.RGBA)}},Vo.prototype.destroy=function(){this.emptyTexture.destroy(),this.debugOverlayTexture&&this.debugOverlayTexture.destroy()};var ls=function(K,ye){this.points=K,this.planes=ye};ls.fromInvProjectionMatrix=function(K,ye,te){var xe=[[-1,1,-1,1],[1,1,-1,1],[1,-1,-1,1],[-1,-1,-1,1],[-1,1,1,1],[1,1,1,1],[1,-1,1,1],[-1,-1,1,1]],We=Math.pow(2,te),He=xe.map(function(Ht){return e.transformMat4([],Ht,K)}).map(function(Ht){return e.scale$1([],Ht,1/Ht[3]/ye*We)}),st=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]],Et=st.map(function(Ht){var yr=e.sub([],He[Ht[0]],He[Ht[1]]),Ir=e.sub([],He[Ht[2]],He[Ht[1]]),wr=e.normalize([],e.cross([],yr,Ir)),qt=-e.dot(wr,He[Ht[1]]);return wr.concat(qt)});return new ls(He,Et)};var rl=function(K,ye){this.min=K,this.max=ye,this.center=e.scale$2([],e.add([],this.min,this.max),.5)};rl.prototype.quadrant=function(K){for(var ye=[K%2===0,K<2],te=e.clone$2(this.min),xe=e.clone$2(this.max),We=0;We<ye.length;We++)te[We]=ye[We]?this.min[We]:this.center[We],xe[We]=ye[We]?this.center[We]:this.max[We];return xe[2]=this.max[2],new rl(te,xe)},rl.prototype.distanceX=function(K){var ye=Math.max(Math.min(this.max[0],K[0]),this.min[0]);return ye-K[0]},rl.prototype.distanceY=function(K){var ye=Math.max(Math.min(this.max[1],K[1]),this.min[1]);return ye-K[1]},rl.prototype.intersects=function(K){for(var ye=[[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]],te=!0,xe=0;xe<K.planes.length;xe++){for(var We=K.planes[xe],He=0,st=0;st<ye.length;st++)He+=e.dot$1(We,ye[st])>=0;if(He===0)return 0;He!==ye.length&&(te=!1)}if(te)return 2;for(var Et=0;Et<3;Et++){for(var Ht=Number.MAX_VALUE,yr=-Number.MAX_VALUE,Ir=0;Ir<K.points.length;Ir++){var wr=K.points[Ir][Et]-this.min[Et];Ht=Math.min(Ht,wr),yr=Math.max(yr,wr)}if(yr<0||Ht>this.max[Et]-this.min[Et])return 0}return 1};var Ys=function(K,ye,te,xe){if(K===void 0&&(K=0),ye===void 0&&(ye=0),te===void 0&&(te=0),xe===void 0&&(xe=0),isNaN(K)||K<0||isNaN(ye)||ye<0||isNaN(te)||te<0||isNaN(xe)||xe<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=K,this.bottom=ye,this.left=te,this.right=xe};Ys.prototype.interpolate=function(K,ye,te){return ye.top!=null&&K.top!=null&&(this.top=e.number(K.top,ye.top,te)),ye.bottom!=null&&K.bottom!=null&&(this.bottom=e.number(K.bottom,ye.bottom,te)),ye.left!=null&&K.left!=null&&(this.left=e.number(K.left,ye.left,te)),ye.right!=null&&K.right!=null&&(this.right=e.number(K.right,ye.right,te)),this},Ys.prototype.getCenter=function(K,ye){var te=e.clamp((this.left+K-this.right)/2,0,K),xe=e.clamp((this.top+ye-this.bottom)/2,0,ye);return new e.Point(te,xe)},Ys.prototype.equals=function(K){return this.top===K.top&&this.bottom===K.bottom&&this.left===K.left&&this.right===K.right},Ys.prototype.clone=function(){return new Ys(this.top,this.bottom,this.left,this.right)},Ys.prototype.toJSON=function(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}};var Zo=function(K,ye,te,xe,We){this.tileSize=512,this.maxValidLatitude=85.051129,this._renderWorldCopies=We===void 0?!0:We,this._minZoom=K||0,this._maxZoom=ye||22,this._minPitch=te??0,this._maxPitch=xe??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new e.LngLat(0,0),this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new Ys,this._posMatrixCache={},this._alignedPosMatrixCache={}},Go={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}};Zo.prototype.clone=function(){var K=new Zo(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return K.tileSize=this.tileSize,K.latRange=this.latRange,K.width=this.width,K.height=this.height,K._center=this._center,K.zoom=this.zoom,K.angle=this.angle,K._fov=this._fov,K._pitch=this._pitch,K._unmodified=this._unmodified,K._edgeInsets=this._edgeInsets.clone(),K._calcMatrices(),K},Go.minZoom.get=function(){return this._minZoom},Go.minZoom.set=function(ve){this._minZoom!==ve&&(this._minZoom=ve,this.zoom=Math.max(this.zoom,ve))},Go.maxZoom.get=function(){return this._maxZoom},Go.maxZoom.set=function(ve){this._maxZoom!==ve&&(this._maxZoom=ve,this.zoom=Math.min(this.zoom,ve))},Go.minPitch.get=function(){return this._minPitch},Go.minPitch.set=function(ve){this._minPitch!==ve&&(this._minPitch=ve,this.pitch=Math.max(this.pitch,ve))},Go.maxPitch.get=function(){return this._maxPitch},Go.maxPitch.set=function(ve){this._maxPitch!==ve&&(this._maxPitch=ve,this.pitch=Math.min(this.pitch,ve))},Go.renderWorldCopies.get=function(){return this._renderWorldCopies},Go.renderWorldCopies.set=function(ve){ve===void 0?ve=!0:ve===null&&(ve=!1),this._renderWorldCopies=ve},Go.worldSize.get=function(){return this.tileSize*this.scale},Go.centerOffset.get=function(){return this.centerPoint._sub(this.size._div(2))},Go.size.get=function(){return new e.Point(this.width,this.height)},Go.bearing.get=function(){return-this.angle/Math.PI*180},Go.bearing.set=function(ve){var K=-e.wrap(ve,-180,180)*Math.PI/180;this.angle!==K&&(this._unmodified=!1,this.angle=K,this._calcMatrices(),this.rotationMatrix=e.create$2(),e.rotate(this.rotationMatrix,this.rotationMatrix,this.angle))},Go.pitch.get=function(){return this._pitch/Math.PI*180},Go.pitch.set=function(ve){var K=e.clamp(ve,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==K&&(this._unmodified=!1,this._pitch=K,this._calcMatrices())},Go.fov.get=function(){return this._fov/Math.PI*180},Go.fov.set=function(ve){ve=Math.max(.01,Math.min(60,ve)),this._fov!==ve&&(this._unmodified=!1,this._fov=ve/180*Math.PI,this._calcMatrices())},Go.zoom.get=function(){return this._zoom},Go.zoom.set=function(ve){var K=Math.min(Math.max(ve,this.minZoom),this.maxZoom);this._zoom!==K&&(this._unmodified=!1,this._zoom=K,this.scale=this.zoomScale(K),this.tileZoom=Math.floor(K),this.zoomFraction=K-this.tileZoom,this._constrain(),this._calcMatrices())},Go.center.get=function(){return this._center},Go.center.set=function(ve){ve.lat===this._center.lat&&ve.lng===this._center.lng||(this._unmodified=!1,this._center=ve,this._constrain(),this._calcMatrices())},Go.padding.get=function(){return this._edgeInsets.toJSON()},Go.padding.set=function(ve){this._edgeInsets.equals(ve)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,ve,1),this._calcMatrices())},Go.centerPoint.get=function(){return this._edgeInsets.getCenter(this.width,this.height)},Zo.prototype.isPaddingEqual=function(K){return this._edgeInsets.equals(K)},Zo.prototype.interpolatePadding=function(K,ye,te){this._unmodified=!1,this._edgeInsets.interpolate(K,ye,te),this._constrain(),this._calcMatrices()},Zo.prototype.coveringZoomLevel=function(K){var ye=(K.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/K.tileSize));return Math.max(0,ye)},Zo.prototype.getVisibleUnwrappedCoordinates=function(K){var ye=[new e.UnwrappedTileID(0,K)];if(this._renderWorldCopies)for(var te=this.pointCoordinate(new e.Point(0,0)),xe=this.pointCoordinate(new e.Point(this.width,0)),We=this.pointCoordinate(new e.Point(this.width,this.height)),He=this.pointCoordinate(new e.Point(0,this.height)),st=Math.floor(Math.min(te.x,xe.x,We.x,He.x)),Et=Math.floor(Math.max(te.x,xe.x,We.x,He.x)),Ht=1,yr=st-Ht;yr<=Et+Ht;yr++)yr!==0&&ye.push(new e.UnwrappedTileID(yr,K));return ye},Zo.prototype.coveringTiles=function(K){var ye=this.coveringZoomLevel(K),te=ye;if(K.minzoom!==void 0&&ye<K.minzoom)return[];K.maxzoom!==void 0&&ye>K.maxzoom&&(ye=K.maxzoom);var xe=e.MercatorCoordinate.fromLngLat(this.center),We=Math.pow(2,ye),He=[We*xe.x,We*xe.y,0],st=ls.fromInvProjectionMatrix(this.invProjMatrix,this.worldSize,ye),Et=K.minzoom||0;this.pitch<=60&&this._edgeInsets.top<.1&&(Et=ye);var Ht=3,yr=function(mi){return{aabb:new rl([mi*We,0,0],[(mi+1)*We,We,0]),zoom:0,x:0,y:0,wrap:mi,fullyVisible:!1}},Ir=[],wr=[],qt=ye,tr=K.reparseOverscaled?te:ye;if(this._renderWorldCopies)for(var dr=1;dr<=3;dr++)Ir.push(yr(-dr)),Ir.push(yr(dr));for(Ir.push(yr(0));Ir.length>0;){var Pr=Ir.pop(),Vr=Pr.x,Hr=Pr.y,aa=Pr.fullyVisible;if(!aa){var Qr=Pr.aabb.intersects(st);if(Qr===0)continue;aa=Qr===2}var Gr=Pr.aabb.distanceX(He),ia=Pr.aabb.distanceY(He),Ur=Math.max(Math.abs(Gr),Math.abs(ia)),wa=Ht+(1<<qt-Pr.zoom)-2;if(Pr.zoom===qt||Ur>wa&&Pr.zoom>=Et){wr.push({tileID:new e.OverscaledTileID(Pr.zoom===qt?tr:Pr.zoom,Pr.wrap,Pr.zoom,Vr,Hr),distanceSq:e.sqrLen([He[0]-.5-Vr,He[1]-.5-Hr])});continue}for(var Oa=0;Oa<4;Oa++){var ri=(Vr<<1)+Oa%2,Pi=(Hr<<1)+(Oa>>1);Ir.push({aabb:Pr.aabb.quadrant(Oa),zoom:Pr.zoom+1,x:ri,y:Pi,wrap:Pr.wrap,fullyVisible:aa})}}return wr.sort(function(mi,Di){return mi.distanceSq-Di.distanceSq}).map(function(mi){return mi.tileID})},Zo.prototype.resize=function(K,ye){this.width=K,this.height=ye,this.pixelsToGLUnits=[2/K,-2/ye],this._constrain(),this._calcMatrices()},Go.unmodified.get=function(){return this._unmodified},Zo.prototype.zoomScale=function(K){return Math.pow(2,K)},Zo.prototype.scaleZoom=function(K){return Math.log(K)/Math.LN2},Zo.prototype.project=function(K){var ye=e.clamp(K.lat,-this.maxValidLatitude,this.maxValidLatitude);return new e.Point(e.mercatorXfromLng(K.lng)*this.worldSize,e.mercatorYfromLat(ye)*this.worldSize)},Zo.prototype.unproject=function(K){return new e.MercatorCoordinate(K.x/this.worldSize,K.y/this.worldSize).toLngLat()},Go.point.get=function(){return this.project(this.center)},Zo.prototype.setLocationAtPoint=function(K,ye){var te=this.pointCoordinate(ye),xe=this.pointCoordinate(this.centerPoint),We=this.locationCoordinate(K),He=new e.MercatorCoordinate(We.x-(te.x-xe.x),We.y-(te.y-xe.y));this.center=this.coordinateLocation(He),this._renderWorldCopies&&(this.center=this.center.wrap())},Zo.prototype.locationPoint=function(K){return this.coordinatePoint(this.locationCoordinate(K))},Zo.prototype.pointLocation=function(K){return this.coordinateLocation(this.pointCoordinate(K))},Zo.prototype.locationCoordinate=function(K){return e.MercatorCoordinate.fromLngLat(K)},Zo.prototype.coordinateLocation=function(K){return K.toLngLat()},Zo.prototype.pointCoordinate=function(K){var ye=0,te=[K.x,K.y,0,1],xe=[K.x,K.y,1,1];e.transformMat4(te,te,this.pixelMatrixInverse),e.transformMat4(xe,xe,this.pixelMatrixInverse);var We=te[3],He=xe[3],st=te[0]/We,Et=xe[0]/He,Ht=te[1]/We,yr=xe[1]/He,Ir=te[2]/We,wr=xe[2]/He,qt=Ir===wr?0:(ye-Ir)/(wr-Ir);return new e.MercatorCoordinate(e.number(st,Et,qt)/this.worldSize,e.number(Ht,yr,qt)/this.worldSize)},Zo.prototype.coordinatePoint=function(K){var ye=[K.x*this.worldSize,K.y*this.worldSize,0,1];return e.transformMat4(ye,ye,this.pixelMatrix),new e.Point(ye[0]/ye[3],ye[1]/ye[3])},Zo.prototype.getBounds=function(){return new e.LngLatBounds().extend(this.pointLocation(new e.Point(0,0))).extend(this.pointLocation(new e.Point(this.width,0))).extend(this.pointLocation(new e.Point(this.width,this.height))).extend(this.pointLocation(new e.Point(0,this.height)))},Zo.prototype.getMaxBounds=function(){return!this.latRange||this.latRange.length!==2||!this.lngRange||this.lngRange.length!==2?null:new e.LngLatBounds([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]])},Zo.prototype.setMaxBounds=function(K){K?(this.lngRange=[K.getWest(),K.getEast()],this.latRange=[K.getSouth(),K.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-this.maxValidLatitude,this.maxValidLatitude])},Zo.prototype.calculatePosMatrix=function(K,ye){ye===void 0&&(ye=!1);var te=K.key,xe=ye?this._alignedPosMatrixCache:this._posMatrixCache;if(xe[te])return xe[te];var We=K.canonical,He=this.worldSize/this.zoomScale(We.z),st=We.x+Math.pow(2,We.z)*K.wrap,Et=e.identity(new Float64Array(16));return e.translate(Et,Et,[st*He,We.y*He,0]),e.scale(Et,Et,[He/e.EXTENT,He/e.EXTENT,1]),e.multiply(Et,ye?this.alignedProjMatrix:this.projMatrix,Et),xe[te]=new Float32Array(Et),xe[te]},Zo.prototype.customLayerMatrix=function(){return this.mercatorMatrix.slice()},Zo.prototype._constrain=function(){if(!(!this.center||!this.width||!this.height||this._constraining)){this._constraining=!0;var K=-90,ye=90,te=-180,xe=180,We,He,st,Et,Ht=this.size,yr=this._unmodified;if(this.latRange){var Ir=this.latRange;K=e.mercatorYfromLat(Ir[1])*this.worldSize,ye=e.mercatorYfromLat(Ir[0])*this.worldSize,We=ye-K<Ht.y?Ht.y/(ye-K):0}if(this.lngRange){var wr=this.lngRange;te=e.mercatorXfromLng(wr[0])*this.worldSize,xe=e.mercatorXfromLng(wr[1])*this.worldSize,He=xe-te<Ht.x?Ht.x/(xe-te):0}var qt=this.point,tr=Math.max(He||0,We||0);if(tr){this.center=this.unproject(new e.Point(He?(xe+te)/2:qt.x,We?(ye+K)/2:qt.y)),this.zoom+=this.scaleZoom(tr),this._unmodified=yr,this._constraining=!1;return}if(this.latRange){var dr=qt.y,Pr=Ht.y/2;dr-Pr<K&&(Et=K+Pr),dr+Pr>ye&&(Et=ye-Pr)}if(this.lngRange){var Vr=qt.x,Hr=Ht.x/2;Vr-Hr<te&&(st=te+Hr),Vr+Hr>xe&&(st=xe-Hr)}(st!==void 0||Et!==void 0)&&(this.center=this.unproject(new e.Point(st!==void 0?st:qt.x,Et!==void 0?Et:qt.y))),this._unmodified=yr,this._constraining=!1}},Zo.prototype._calcMatrices=function(){if(this.height){var K=this._fov/2,ye=this.centerOffset;this.cameraToCenterDistance=.5/Math.tan(K)*this.height;var te=Math.PI/2+this._pitch,xe=this._fov*(.5+ye.y/this.height),We=Math.sin(xe)*this.cameraToCenterDistance/Math.sin(e.clamp(Math.PI-te-xe,.01,Math.PI-.01)),He=this.point,st=He.x,Et=He.y,Ht=Math.cos(Math.PI/2-this._pitch)*We+this.cameraToCenterDistance,yr=Ht*1.01,Ir=this.height/50,wr=new Float64Array(16);e.perspective(wr,this._fov,this.width/this.height,Ir,yr),wr[8]=-ye.x*2/this.width,wr[9]=ye.y*2/this.height,e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[0,0,-this.cameraToCenterDistance]),e.rotateX(wr,wr,this._pitch),e.rotateZ(wr,wr,this.angle),e.translate(wr,wr,[-st,-Et,0]),this.mercatorMatrix=e.scale([],wr,[this.worldSize,this.worldSize,this.worldSize]),e.scale(wr,wr,[1,1,e.mercatorZfromAltitude(1,this.center.lat)*this.worldSize,1]),this.projMatrix=wr,this.invProjMatrix=e.invert([],this.projMatrix);var qt=this.width%2/2,tr=this.height%2/2,dr=Math.cos(this.angle),Pr=Math.sin(this.angle),Vr=st-Math.round(st)+dr*qt+Pr*tr,Hr=Et-Math.round(Et)+dr*tr+Pr*qt,aa=new Float64Array(wr);if(e.translate(aa,aa,[Vr>.5?Vr-1:Vr,Hr>.5?Hr-1:Hr,0]),this.alignedProjMatrix=aa,wr=e.create(),e.scale(wr,wr,[this.width/2,-this.height/2,1]),e.translate(wr,wr,[1,-1,0]),this.labelPlaneMatrix=wr,wr=e.create(),e.scale(wr,wr,[1,-1,1]),e.translate(wr,wr,[-1,-1,0]),e.scale(wr,wr,[2/this.width,2/this.height,1]),this.glCoordMatrix=wr,this.pixelMatrix=e.multiply(new Float64Array(16),this.labelPlaneMatrix,this.projMatrix),wr=e.invert(new Float64Array(16),this.pixelMatrix),!wr)throw new Error("failed to invert matrix");this.pixelMatrixInverse=wr,this._posMatrixCache={},this._alignedPosMatrixCache={}}},Zo.prototype.maxPitchScaleFactor=function(){if(!this.pixelMatrixInverse)return 1;var K=this.pointCoordinate(new e.Point(0,0)),ye=[K.x*this.worldSize,K.y*this.worldSize,0,1],te=e.transformMat4(ye,ye,this.pixelMatrix);return te[3]/this.cameraToCenterDistance},Zo.prototype.getCameraPoint=function(){var K=this._pitch,ye=Math.tan(K)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new e.Point(0,ye))},Zo.prototype.getCameraQueryGeometry=function(K){var ye=this.getCameraPoint();if(K.length===1)return[K[0],ye];for(var te=ye.x,xe=ye.y,We=ye.x,He=ye.y,st=0,Et=K;st<Et.length;st+=1){var Ht=Et[st];te=Math.min(te,Ht.x),xe=Math.min(xe,Ht.y),We=Math.max(We,Ht.x),He=Math.max(He,Ht.y)}return[new e.Point(te,xe),new e.Point(We,xe),new e.Point(We,He),new e.Point(te,He),new e.Point(te,xe)]},Object.defineProperties(Zo.prototype,Go);function Rl(ve,K){var ye=!1,te=null,xe=function(){te=null,ye&&(ve(),te=setTimeout(xe,K),ye=!1)};return function(){return ye=!0,te||xe(),te}}var Xl=function(K){this._hashName=K&&encodeURIComponent(K),e.bindAll(["_getCurrentHash","_onHashChange","_updateHash"],this),this._updateHash=Rl(this._updateHashUnthrottled.bind(this),30*1e3/100)};Xl.prototype.addTo=function(K){return this._map=K,e.window.addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this},Xl.prototype.remove=function(){return e.window.removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),delete this._map,this},Xl.prototype.getHashString=function(K){var ye=this._map.getCenter(),te=Math.round(this._map.getZoom()*100)/100,xe=Math.ceil((te*Math.LN2+Math.log(512/360/.5))/Math.LN10),We=Math.pow(10,xe),He=Math.round(ye.lng*We)/We,st=Math.round(ye.lat*We)/We,Et=this._map.getBearing(),Ht=this._map.getPitch(),yr="";if(K?yr+="/"+He+"/"+st+"/"+te:yr+=te+"/"+st+"/"+He,(Et||Ht)&&(yr+="/"+Math.round(Et*10)/10),Ht&&(yr+="/"+Math.round(Ht)),this._hashName){var Ir=this._hashName,wr=!1,qt=e.window.location.hash.slice(1).split("&").map(function(tr){var dr=tr.split("=")[0];return dr===Ir?(wr=!0,dr+"="+yr):tr}).filter(function(tr){return tr});return wr||qt.push(Ir+"="+yr),"#"+qt.join("&")}return"#"+yr},Xl.prototype._getCurrentHash=function(){var K=this,ye=e.window.location.hash.replace("#","");if(this._hashName){var te;return ye.split("&").map(function(xe){return xe.split("=")}).forEach(function(xe){xe[0]===K._hashName&&(te=xe)}),(te&&te[1]||"").split("/")}return ye.split("/")},Xl.prototype._onHashChange=function(){var K=this._getCurrentHash();if(K.length>=3&&!K.some(function(te){return isNaN(te)})){var ye=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(K[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+K[2],+K[1]],zoom:+K[0],bearing:ye,pitch:+(K[4]||0)}),!0}return!1},Xl.prototype._updateHashUnthrottled=function(){var K=e.window.location.href.replace(/(#.+)?$/,this.getHashString());try{e.window.history.replaceState(e.window.history.state,null,K)}catch{}};var qu={linearity:.3,easing:e.bezier(0,0,.3,1)},fu=e.extend({deceleration:2500,maxSpeed:1400},qu),bl=e.extend({deceleration:20,maxSpeed:1400},qu),ou=e.extend({deceleration:1e3,maxSpeed:360},qu),Sc=e.extend({deceleration:1e3,maxSpeed:90},qu),ql=function(K){this._map=K,this.clear()};ql.prototype.clear=function(){this._inertiaBuffer=[]},ql.prototype.record=function(K){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:e.browser.now(),settings:K})},ql.prototype._drainInertiaBuffer=function(){for(var K=this._inertiaBuffer,ye=e.browser.now(),te=160;K.length>0&&ye-K[0].time>te;)K.shift()},ql.prototype._onMoveEnd=function(K){if(this._drainInertiaBuffer(),!(this._inertiaBuffer.length<2)){for(var ye={zoom:0,bearing:0,pitch:0,pan:new e.Point(0,0),pinchAround:void 0,around:void 0},te=0,xe=this._inertiaBuffer;te<xe.length;te+=1){var We=xe[te],He=We.settings;ye.zoom+=He.zoomDelta||0,ye.bearing+=He.bearingDelta||0,ye.pitch+=He.pitchDelta||0,He.panDelta&&ye.pan._add(He.panDelta),He.around&&(ye.around=He.around),He.pinchAround&&(ye.pinchAround=He.pinchAround)}var st=this._inertiaBuffer[this._inertiaBuffer.length-1],Et=st.time-this._inertiaBuffer[0].time,Ht={};if(ye.pan.mag()){var yr=de(ye.pan.mag(),Et,e.extend({},fu,K||{}));Ht.offset=ye.pan.mult(yr.amount/ye.pan.mag()),Ht.center=this._map.transform.center,Hl(Ht,yr)}if(ye.zoom){var Ir=de(ye.zoom,Et,bl);Ht.zoom=this._map.transform.zoom+Ir.amount,Hl(Ht,Ir)}if(ye.bearing){var wr=de(ye.bearing,Et,ou);Ht.bearing=this._map.transform.bearing+e.clamp(wr.amount,-179,179),Hl(Ht,wr)}if(ye.pitch){var qt=de(ye.pitch,Et,Sc);Ht.pitch=this._map.transform.pitch+qt.amount,Hl(Ht,qt)}if(Ht.zoom||Ht.bearing){var tr=ye.pinchAround===void 0?ye.around:ye.pinchAround;Ht.around=tr?this._map.unproject(tr):this._map.getCenter()}return this.clear(),e.extend(Ht,{noMoveStart:!0})}};function Hl(ve,K){(!ve.duration||ve.duration<K.duration)&&(ve.duration=K.duration,ve.easing=K.easing)}function de(ve,K,ye){var te=ye.maxSpeed,xe=ye.linearity,We=ye.deceleration,He=e.clamp(ve*xe/(K/1e3),-te,te),st=Math.abs(He)/(We*xe);return{easing:ye.easing,duration:st*1e3,amount:He*(st/2)}}var Re=function(ve){function K(te,xe,We,He){He===void 0&&(He={});var st=r.mousePos(xe.getCanvasContainer(),We),Et=xe.unproject(st);ve.call(this,te,e.extend({point:st,lngLat:Et,originalEvent:We},He)),this._defaultPrevented=!1,this.target=xe}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),$e=function(ve){function K(te,xe,We){var He=te==="touchend"?We.changedTouches:We.touches,st=r.touchPos(xe.getCanvasContainer(),He),Et=st.map(function(Ir){return xe.unproject(Ir)}),Ht=st.reduce(function(Ir,wr,qt,tr){return Ir.add(wr.div(tr.length))},new e.Point(0,0)),yr=xe.unproject(Ht);ve.call(this,te,{points:st,point:Ht,lngLats:Et,lngLat:yr,originalEvent:We}),this._defaultPrevented=!1}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),pt=function(ve){function K(te,xe,We){ve.call(this,te,{originalEvent:We}),this._defaultPrevented=!1}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={defaultPrevented:{configurable:!0}};return K.prototype.preventDefault=function(){this._defaultPrevented=!0},ye.defaultPrevented.get=function(){return this._defaultPrevented},Object.defineProperties(K.prototype,ye),K}(e.Event),vt=function(K,ye){this._map=K,this._clickTolerance=ye.clickTolerance};vt.prototype.reset=function(){delete this._mousedownPos},vt.prototype.wheel=function(K){return this._firePreventable(new pt(K.type,this._map,K))},vt.prototype.mousedown=function(K,ye){return this._mousedownPos=ye,this._firePreventable(new Re(K.type,this._map,K))},vt.prototype.mouseup=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.click=function(K,ye){this._mousedownPos&&this._mousedownPos.dist(ye)>=this._clickTolerance||this._map.fire(new Re(K.type,this._map,K))},vt.prototype.dblclick=function(K){return this._firePreventable(new Re(K.type,this._map,K))},vt.prototype.mouseover=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.mouseout=function(K){this._map.fire(new Re(K.type,this._map,K))},vt.prototype.touchstart=function(K){return this._firePreventable(new $e(K.type,this._map,K))},vt.prototype.touchmove=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchend=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype.touchcancel=function(K){this._map.fire(new $e(K.type,this._map,K))},vt.prototype._firePreventable=function(K){if(this._map.fire(K),K.defaultPrevented)return{}},vt.prototype.isEnabled=function(){return!0},vt.prototype.isActive=function(){return!1},vt.prototype.enable=function(){},vt.prototype.disable=function(){};var wt=function(K){this._map=K};wt.prototype.reset=function(){this._delayContextMenu=!1,delete this._contextMenuEvent},wt.prototype.mousemove=function(K){this._map.fire(new Re(K.type,this._map,K))},wt.prototype.mousedown=function(){this._delayContextMenu=!0},wt.prototype.mouseup=function(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new Re("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)},wt.prototype.contextmenu=function(K){this._delayContextMenu?this._contextMenuEvent=K:this._map.fire(new Re(K.type,this._map,K)),this._map.listens("contextmenu")&&K.preventDefault()},wt.prototype.isEnabled=function(){return!0},wt.prototype.isActive=function(){return!1},wt.prototype.enable=function(){},wt.prototype.disable=function(){};var Jt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._container=K.getContainer(),this._clickTolerance=ye.clickTolerance||1};Jt.prototype.isEnabled=function(){return!!this._enabled},Jt.prototype.isActive=function(){return!!this._active},Jt.prototype.enable=function(){this.isEnabled()||(this._enabled=!0)},Jt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Jt.prototype.mousedown=function(K,ye){this.isEnabled()&&K.shiftKey&&K.button===0&&(r.disableDrag(),this._startPos=this._lastPos=ye,this._active=!0)},Jt.prototype.mousemoveWindow=function(K,ye){if(this._active){var te=ye;if(!(this._lastPos.equals(te)||!this._box&&te.dist(this._startPos)<this._clickTolerance)){var xe=this._startPos;this._lastPos=te,this._box||(this._box=r.create("div","mapboxgl-boxzoom",this._container),this._container.classList.add("mapboxgl-crosshair"),this._fireEvent("boxzoomstart",K));var We=Math.min(xe.x,te.x),He=Math.max(xe.x,te.x),st=Math.min(xe.y,te.y),Et=Math.max(xe.y,te.y);r.setTransform(this._box,"translate("+We+"px,"+st+"px)"),this._box.style.width=He-We+"px",this._box.style.height=Et-st+"px"}}},Jt.prototype.mouseupWindow=function(K,ye){var te=this;if(this._active&&K.button===0){var xe=this._startPos,We=ye;if(this.reset(),r.suppressClick(),xe.x===We.x&&xe.y===We.y)this._fireEvent("boxzoomcancel",K);else return this._map.fire(new e.Event("boxzoomend",{originalEvent:K})),{cameraAnimation:function(He){return He.fitScreenCoordinates(xe,We,te._map.getBearing(),{linear:!0})}}}},Jt.prototype.keydown=function(K){this._active&&K.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",K))},Jt.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},Jt.prototype._fireEvent=function(K,ye){return this._map.fire(new e.Event(K,{originalEvent:ye}))};function Rt(ve,K){for(var ye={},te=0;te<ve.length;te++)ye[ve[te].identifier]=K[te];return ye}function or(ve){for(var K=new e.Point(0,0),ye=0,te=ve;ye<te.length;ye+=1){var xe=te[ye];K._add(xe)}return K.div(ve.length)}var Dr=500,Or=500,va=30,fa=function(K){this.reset(),this.numTouches=K.numTouches};fa.prototype.reset=function(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1},fa.prototype.touchstart=function(K,ye,te){(this.centroid||te.length>this.numTouches)&&(this.aborted=!0),!this.aborted&&(this.startTime===void 0&&(this.startTime=K.timeStamp),te.length===this.numTouches&&(this.centroid=or(ye),this.touches=Rt(te,ye)))},fa.prototype.touchmove=function(K,ye,te){if(!(this.aborted||!this.centroid)){var xe=Rt(te,ye);for(var We in this.touches){var He=this.touches[We],st=xe[We];(!st||st.dist(He)>va)&&(this.aborted=!0)}}},fa.prototype.touchend=function(K,ye,te){if((!this.centroid||K.timeStamp-this.startTime>Or)&&(this.aborted=!0),te.length===0){var xe=!this.aborted&&this.centroid;if(this.reset(),xe)return xe}};var Va=function(K){this.singleTap=new fa(K),this.numTaps=K.numTaps,this.reset()};Va.prototype.reset=function(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()},Va.prototype.touchstart=function(K,ye,te){this.singleTap.touchstart(K,ye,te)},Va.prototype.touchmove=function(K,ye,te){this.singleTap.touchmove(K,ye,te)},Va.prototype.touchend=function(K,ye,te){var xe=this.singleTap.touchend(K,ye,te);if(xe){var We=K.timeStamp-this.lastTime<Dr,He=!this.lastTap||this.lastTap.dist(xe)<va;if((!We||!He)&&this.reset(),this.count++,this.lastTime=K.timeStamp,this.lastTap=xe,this.count===this.numTaps)return this.reset(),xe}};var Xa=function(){this._zoomIn=new Va({numTouches:1,numTaps:2}),this._zoomOut=new Va({numTouches:2,numTaps:1}),this.reset()};Xa.prototype.reset=function(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()},Xa.prototype.touchstart=function(K,ye,te){this._zoomIn.touchstart(K,ye,te),this._zoomOut.touchstart(K,ye,te)},Xa.prototype.touchmove=function(K,ye,te){this._zoomIn.touchmove(K,ye,te),this._zoomOut.touchmove(K,ye,te)},Xa.prototype.touchend=function(K,ye,te){var xe=this,We=this._zoomIn.touchend(K,ye,te),He=this._zoomOut.touchend(K,ye,te);if(We)return this._active=!0,K.preventDefault(),setTimeout(function(){return xe.reset()},0),{cameraAnimation:function(st){return st.easeTo({duration:300,zoom:st.getZoom()+1,around:st.unproject(We)},{originalEvent:K})}};if(He)return this._active=!0,K.preventDefault(),setTimeout(function(){return xe.reset()},0),{cameraAnimation:function(st){return st.easeTo({duration:300,zoom:st.getZoom()-1,around:st.unproject(He)},{originalEvent:K})}}},Xa.prototype.touchcancel=function(){this.reset()},Xa.prototype.enable=function(){this._enabled=!0},Xa.prototype.disable=function(){this._enabled=!1,this.reset()},Xa.prototype.isEnabled=function(){return this._enabled},Xa.prototype.isActive=function(){return this._active};var _a=0,Ra=2,Na={};Na[_a]=1,Na[Ra]=2;function Qa(ve,K){var ye=Na[K];return ve.buttons===void 0||(ve.buttons&ye)!==ye}var Ya=function(K){this.reset(),this._clickTolerance=K.clickTolerance||1};Ya.prototype.reset=function(){this._active=!1,this._moved=!1,delete this._lastPoint,delete this._eventButton},Ya.prototype._correctButton=function(K,ye){return!1},Ya.prototype._move=function(K,ye){return{}},Ya.prototype.mousedown=function(K,ye){if(!this._lastPoint){var te=r.mouseButton(K);this._correctButton(K,te)&&(this._lastPoint=ye,this._eventButton=te)}},Ya.prototype.mousemoveWindow=function(K,ye){var te=this._lastPoint;if(te){if(K.preventDefault(),Qa(K,this._eventButton)){this.reset();return}if(!(!this._moved&&ye.dist(te)<this._clickTolerance))return this._moved=!0,this._lastPoint=ye,this._move(te,ye)}},Ya.prototype.mouseupWindow=function(K){if(this._lastPoint){var ye=r.mouseButton(K);ye===this._eventButton&&(this._moved&&r.suppressClick(),this.reset())}},Ya.prototype.enable=function(){this._enabled=!0},Ya.prototype.disable=function(){this._enabled=!1,this.reset()},Ya.prototype.isEnabled=function(){return this._enabled},Ya.prototype.isActive=function(){return this._active};var Da=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.mousedown=function(te,xe){ve.prototype.mousedown.call(this,te,xe),this._lastPoint&&(this._active=!0)},K.prototype._correctButton=function(te,xe){return xe===_a&&!te.ctrlKey},K.prototype._move=function(te,xe){return{around:xe,panDelta:xe.sub(te)}},K}(Ya),zi=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype._correctButton=function(te,xe){return xe===_a&&te.ctrlKey||xe===Ra},K.prototype._move=function(te,xe){var We=.8,He=(xe.x-te.x)*We;if(He)return this._active=!0,{bearingDelta:He}},K.prototype.contextmenu=function(te){te.preventDefault()},K}(Ya),Ni=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype._correctButton=function(te,xe){return xe===_a&&te.ctrlKey||xe===Ra},K.prototype._move=function(te,xe){var We=-.5,He=(xe.y-te.y)*We;if(He)return this._active=!0,{pitchDelta:He}},K.prototype.contextmenu=function(te){te.preventDefault()},K}(Ya),Qi=function(K){this._minTouches=1,this._clickTolerance=K.clickTolerance||1,this.reset()};Qi.prototype.reset=function(){this._active=!1,this._touches={},this._sum=new e.Point(0,0)},Qi.prototype.touchstart=function(K,ye,te){return this._calculateTransform(K,ye,te)},Qi.prototype.touchmove=function(K,ye,te){if(!(!this._active||te.length<this._minTouches))return K.preventDefault(),this._calculateTransform(K,ye,te)},Qi.prototype.touchend=function(K,ye,te){this._calculateTransform(K,ye,te),this._active&&te.length<this._minTouches&&this.reset()},Qi.prototype.touchcancel=function(){this.reset()},Qi.prototype._calculateTransform=function(K,ye,te){te.length>0&&(this._active=!0);var xe=Rt(te,ye),We=new e.Point(0,0),He=new e.Point(0,0),st=0;for(var Et in xe){var Ht=xe[Et],yr=this._touches[Et];yr&&(We._add(Ht),He._add(Ht.sub(yr)),st++,xe[Et]=Ht)}if(this._touches=xe,!(st<this._minTouches||!He.mag())){var Ir=He.div(st);if(this._sum._add(Ir),!(this._sum.mag()<this._clickTolerance)){var wr=We.div(st);return{around:wr,panDelta:Ir}}}},Qi.prototype.enable=function(){this._enabled=!0},Qi.prototype.disable=function(){this._enabled=!1,this.reset()},Qi.prototype.isEnabled=function(){return this._enabled},Qi.prototype.isActive=function(){return this._active};var hn=function(){this.reset()};hn.prototype.reset=function(){this._active=!1,delete this._firstTwoTouches},hn.prototype._start=function(K){},hn.prototype._move=function(K,ye,te){return{}},hn.prototype.touchstart=function(K,ye,te){this._firstTwoTouches||te.length<2||(this._firstTwoTouches=[te[0].identifier,te[1].identifier],this._start([ye[0],ye[1]]))},hn.prototype.touchmove=function(K,ye,te){if(this._firstTwoTouches){K.preventDefault();var xe=this._firstTwoTouches,We=xe[0],He=xe[1],st=Un(te,ye,We),Et=Un(te,ye,He);if(!(!st||!Et)){var Ht=this._aroundCenter?null:st.add(Et).div(2);return this._move([st,Et],Ht,K)}}},hn.prototype.touchend=function(K,ye,te){if(this._firstTwoTouches){var xe=this._firstTwoTouches,We=xe[0],He=xe[1],st=Un(te,ye,We),Et=Un(te,ye,He);st&&Et||(this._active&&r.suppressClick(),this.reset())}},hn.prototype.touchcancel=function(){this.reset()},hn.prototype.enable=function(K){this._enabled=!0,this._aroundCenter=!!K&&K.around==="center"},hn.prototype.disable=function(){this._enabled=!1,this.reset()},hn.prototype.isEnabled=function(){return this._enabled},hn.prototype.isActive=function(){return this._active};function Un(ve,K,ye){for(var te=0;te<ve.length;te++)if(ve[te].identifier===ye)return K[te]}var Vn=.1;function No(ve,K){return Math.log(ve/K)/Math.LN2}var Gn=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),delete this._distance,delete this._startDistance},K.prototype._start=function(te){this._startDistance=this._distance=te[0].dist(te[1])},K.prototype._move=function(te,xe){var We=this._distance;if(this._distance=te[0].dist(te[1]),!(!this._active&&Math.abs(No(this._distance,this._startDistance))<Vn))return this._active=!0,{zoomDelta:No(this._distance,We),pinchAround:xe}},K}(hn),Fo=25;function Ks(ve,K){return ve.angleWith(K)*180/Math.PI}var Gs=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),delete this._minDiameter,delete this._startVector,delete this._vector},K.prototype._start=function(te){this._startVector=this._vector=te[0].sub(te[1]),this._minDiameter=te[0].dist(te[1])},K.prototype._move=function(te,xe){var We=this._vector;if(this._vector=te[0].sub(te[1]),!(!this._active&&this._isBelowThreshold(this._vector)))return this._active=!0,{bearingDelta:Ks(this._vector,We),pinchAround:xe}},K.prototype._isBelowThreshold=function(te){this._minDiameter=Math.min(this._minDiameter,te.mag());var xe=Math.PI*this._minDiameter,We=Fo/xe*360,He=Ks(te,this._startVector);return Math.abs(He)<We},K}(hn);function sl(ve){return Math.abs(ve.y)>Math.abs(ve.x)}var Vi=100,ao=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.reset=function(){ve.prototype.reset.call(this),this._valid=void 0,delete this._firstMove,delete this._lastPoints},K.prototype._start=function(te){this._lastPoints=te,sl(te[0].sub(te[1]))&&(this._valid=!1)},K.prototype._move=function(te,xe,We){var He=te[0].sub(this._lastPoints[0]),st=te[1].sub(this._lastPoints[1]);if(this._valid=this.gestureBeginsVertically(He,st,We.timeStamp),!!this._valid){this._lastPoints=te,this._active=!0;var Et=(He.y+st.y)/2,Ht=-.5;return{pitchDelta:Et*Ht}}},K.prototype.gestureBeginsVertically=function(te,xe,We){if(this._valid!==void 0)return this._valid;var He=2,st=te.mag()>=He,Et=xe.mag()>=He;if(!(!st&&!Et)){if(!st||!Et)return this._firstMove===void 0&&(this._firstMove=We),We-this._firstMove<Vi?void 0:!1;var Ht=te.y>0==xe.y>0;return sl(te)&&sl(xe)&&Ht}},K}(hn),ns={panStep:100,bearingStep:15,pitchStep:10},hs=function(){var K=ns;this._panStep=K.panStep,this._bearingStep=K.bearingStep,this._pitchStep=K.pitchStep,this._rotationDisabled=!1};hs.prototype.reset=function(){this._active=!1},hs.prototype.keydown=function(K){var ye=this;if(!(K.altKey||K.ctrlKey||K.metaKey)){var te=0,xe=0,We=0,He=0,st=0;switch(K.keyCode){case 61:case 107:case 171:case 187:te=1;break;case 189:case 109:case 173:te=-1;break;case 37:K.shiftKey?xe=-1:(K.preventDefault(),He=-1);break;case 39:K.shiftKey?xe=1:(K.preventDefault(),He=1);break;case 38:K.shiftKey?We=1:(K.preventDefault(),st=-1);break;case 40:K.shiftKey?We=-1:(K.preventDefault(),st=1);break;default:return}return this._rotationDisabled&&(xe=0,We=0),{cameraAnimation:function(Et){var Ht=Et.getZoom();Et.easeTo({duration:300,easeId:"keyboardHandler",easing:hl,zoom:te?Math.round(Ht)+te*(K.shiftKey?2:1):Ht,bearing:Et.getBearing()+xe*ye._bearingStep,pitch:Et.getPitch()+We*ye._pitchStep,offset:[-He*ye._panStep,-st*ye._panStep],center:Et.getCenter()},{originalEvent:K})}}}},hs.prototype.enable=function(){this._enabled=!0},hs.prototype.disable=function(){this._enabled=!1,this.reset()},hs.prototype.isEnabled=function(){return this._enabled},hs.prototype.isActive=function(){return this._active},hs.prototype.disableRotation=function(){this._rotationDisabled=!0},hs.prototype.enableRotation=function(){this._rotationDisabled=!1};function hl(ve){return ve*(2-ve)}var Dl=4.000244140625,hu=1/100,Ll=1/450,dc=2,Qt=function(K,ye){this._map=K,this._el=K.getCanvasContainer(),this._handler=ye,this._delta=0,this._defaultZoomRate=hu,this._wheelZoomRate=Ll,e.bindAll(["_onTimeout"],this)};Qt.prototype.setZoomRate=function(K){this._defaultZoomRate=K},Qt.prototype.setWheelZoomRate=function(K){this._wheelZoomRate=K},Qt.prototype.isEnabled=function(){return!!this._enabled},Qt.prototype.isActive=function(){return!!this._active||this._finishTimeout!==void 0},Qt.prototype.isZooming=function(){return!!this._zooming},Qt.prototype.enable=function(K){this.isEnabled()||(this._enabled=!0,this._aroundCenter=K&&K.around==="center")},Qt.prototype.disable=function(){this.isEnabled()&&(this._enabled=!1)},Qt.prototype.wheel=function(K){if(this.isEnabled()){var ye=K.deltaMode===e.window.WheelEvent.DOM_DELTA_LINE?K.deltaY*40:K.deltaY,te=e.browser.now(),xe=te-(this._lastWheelEventTime||0);this._lastWheelEventTime=te,ye!==0&&ye%Dl===0?this._type="wheel":ye!==0&&Math.abs(ye)<4?this._type="trackpad":xe>400?(this._type=null,this._lastValue=ye,this._timeout=setTimeout(this._onTimeout,40,K)):this._type||(this._type=Math.abs(xe*ye)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ye+=this._lastValue)),K.shiftKey&&ye&&(ye=ye/4),this._type&&(this._lastWheelEvent=K,this._delta-=ye,this._active||this._start(K)),K.preventDefault()}},Qt.prototype._onTimeout=function(K){this._type="wheel",this._delta-=this._lastValue,this._active||this._start(K)},Qt.prototype._start=function(K){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 ye=r.mousePos(this._el,K);this._around=e.LngLat.convert(this._aroundCenter?this._map.getCenter():this._map.unproject(ye)),this._aroundPoint=this._map.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._handler._triggerRenderFrame())}},Qt.prototype.renderFrame=function(){var K=this;if(this._frameId&&(this._frameId=null,!!this.isActive())){var ye=this._map.transform;if(this._delta!==0){var te=this._type==="wheel"&&Math.abs(this._delta)>Dl?this._wheelZoomRate:this._defaultZoomRate,xe=dc/(1+Math.exp(-Math.abs(this._delta*te)));this._delta<0&&xe!==0&&(xe=1/xe);var We=typeof this._targetZoom=="number"?ye.zoomScale(this._targetZoom):ye.scale;this._targetZoom=Math.min(ye.maxZoom,Math.max(ye.minZoom,ye.scaleZoom(We*xe))),this._type==="wheel"&&(this._startZoom=ye.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}var He=typeof this._targetZoom=="number"?this._targetZoom:ye.zoom,st=this._startZoom,Et=this._easing,Ht=!1,yr;if(this._type==="wheel"&&st&&Et){var Ir=Math.min((e.browser.now()-this._lastWheelEventTime)/200,1),wr=Et(Ir);yr=e.number(st,He,wr),Ir<1?this._frameId||(this._frameId=!0):Ht=!0}else yr=He,Ht=!0;return this._active=!0,Ht&&(this._active=!1,this._finishTimeout=setTimeout(function(){K._zooming=!1,K._handler._triggerRenderFrame(),delete K._targetZoom,delete K._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!Ht,zoomDelta:yr-ye.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}},Qt.prototype._smoothOutEasing=function(K){var ye=e.ease;if(this._prevEase){var te=this._prevEase,xe=(e.browser.now()-te.start)/te.duration,We=te.easing(xe+.01)-te.easing(xe),He=.27/Math.sqrt(We*We+1e-4)*.01,st=Math.sqrt(.27*.27-He*He);ye=e.bezier(He,st,.25,1)}return this._prevEase={start:e.browser.now(),duration:K,easing:ye},ye},Qt.prototype.reset=function(){this._active=!1};var ra=function(K,ye){this._clickZoom=K,this._tapZoom=ye};ra.prototype.enable=function(){this._clickZoom.enable(),this._tapZoom.enable()},ra.prototype.disable=function(){this._clickZoom.disable(),this._tapZoom.disable()},ra.prototype.isEnabled=function(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()},ra.prototype.isActive=function(){return this._clickZoom.isActive()||this._tapZoom.isActive()};var Ta=function(){this.reset()};Ta.prototype.reset=function(){this._active=!1},Ta.prototype.dblclick=function(K,ye){return K.preventDefault(),{cameraAnimation:function(te){te.easeTo({duration:300,zoom:te.getZoom()+(K.shiftKey?-1:1),around:te.unproject(ye)},{originalEvent:K})}}},Ta.prototype.enable=function(){this._enabled=!0},Ta.prototype.disable=function(){this._enabled=!1,this.reset()},Ta.prototype.isEnabled=function(){return this._enabled},Ta.prototype.isActive=function(){return this._active};var si=function(){this._tap=new Va({numTouches:1,numTaps:1}),this.reset()};si.prototype.reset=function(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,this._tap.reset()},si.prototype.touchstart=function(K,ye,te){this._swipePoint||(this._tapTime&&K.timeStamp-this._tapTime>Dr&&this.reset(),this._tapTime?te.length>0&&(this._swipePoint=ye[0],this._swipeTouch=te[0].identifier):this._tap.touchstart(K,ye,te))},si.prototype.touchmove=function(K,ye,te){if(!this._tapTime)this._tap.touchmove(K,ye,te);else if(this._swipePoint){if(te[0].identifier!==this._swipeTouch)return;var xe=ye[0],We=xe.y-this._swipePoint.y;return this._swipePoint=xe,K.preventDefault(),this._active=!0,{zoomDelta:We/128}}},si.prototype.touchend=function(K,ye,te){if(this._tapTime)this._swipePoint&&te.length===0&&this.reset();else{var xe=this._tap.touchend(K,ye,te);xe&&(this._tapTime=K.timeStamp)}},si.prototype.touchcancel=function(){this.reset()},si.prototype.enable=function(){this._enabled=!0},si.prototype.disable=function(){this._enabled=!1,this.reset()},si.prototype.isEnabled=function(){return this._enabled},si.prototype.isActive=function(){return this._active};var wi=function(K,ye,te){this._el=K,this._mousePan=ye,this._touchPan=te};wi.prototype.enable=function(K){this._inertiaOptions=K||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("mapboxgl-touch-drag-pan")},wi.prototype.disable=function(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("mapboxgl-touch-drag-pan")},wi.prototype.isEnabled=function(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()},wi.prototype.isActive=function(){return this._mousePan.isActive()||this._touchPan.isActive()};var xi=function(K,ye,te){this._pitchWithRotate=K.pitchWithRotate,this._mouseRotate=ye,this._mousePitch=te};xi.prototype.enable=function(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()},xi.prototype.disable=function(){this._mouseRotate.disable(),this._mousePitch.disable()},xi.prototype.isEnabled=function(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())},xi.prototype.isActive=function(){return this._mouseRotate.isActive()||this._mousePitch.isActive()};var bi=function(K,ye,te,xe){this._el=K,this._touchZoom=ye,this._touchRotate=te,this._tapDragZoom=xe,this._rotationDisabled=!1,this._enabled=!0};bi.prototype.enable=function(K){this._touchZoom.enable(K),this._rotationDisabled||this._touchRotate.enable(K),this._tapDragZoom.enable(),this._el.classList.add("mapboxgl-touch-zoom-rotate")},bi.prototype.disable=function(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("mapboxgl-touch-zoom-rotate")},bi.prototype.isEnabled=function(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()},bi.prototype.isActive=function(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()},bi.prototype.disableRotation=function(){this._rotationDisabled=!0,this._touchRotate.disable()},bi.prototype.enableRotation=function(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()};var Fi=function(ve){return ve.zoom||ve.drag||ve.pitch||ve.rotate},cn=function(ve){function K(){ve.apply(this,arguments)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K}(e.Event);function fn(ve){return ve.panDelta&&ve.panDelta.mag()||ve.zoomDelta||ve.bearingDelta||ve.pitchDelta}var Gi=function(K,ye){this._map=K,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new ql(K),this._bearingSnap=ye.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ye),e.bindAll(["handleEvent","handleWindowEvent"],this);var te=this._el;this._listeners=[[te,"touchstart",{passive:!0}],[te,"touchmove",{passive:!1}],[te,"touchend",void 0],[te,"touchcancel",void 0],[te,"mousedown",void 0],[te,"mousemove",void 0],[te,"mouseup",void 0],[e.window.document,"mousemove",{capture:!0}],[e.window.document,"mouseup",void 0],[te,"mouseover",void 0],[te,"mouseout",void 0],[te,"dblclick",void 0],[te,"click",void 0],[te,"keydown",{capture:!1}],[te,"keyup",void 0],[te,"wheel",{passive:!1}],[te,"contextmenu",void 0],[e.window,"blur",void 0]];for(var xe=0,We=this._listeners;xe<We.length;xe+=1){var He=We[xe],st=He[0],Et=He[1],Ht=He[2];r.addEventListener(st,Et,st===e.window.document?this.handleWindowEvent:this.handleEvent,Ht)}};Gi.prototype.destroy=function(){for(var K=0,ye=this._listeners;K<ye.length;K+=1){var te=ye[K],xe=te[0],We=te[1],He=te[2];r.removeEventListener(xe,We,xe===e.window.document?this.handleWindowEvent:this.handleEvent,He)}},Gi.prototype._addDefaultHandlers=function(K){var ye=this._map,te=ye.getCanvasContainer();this._add("mapEvent",new vt(ye,K));var xe=ye.boxZoom=new Jt(ye,K);this._add("boxZoom",xe);var We=new Xa,He=new Ta;ye.doubleClickZoom=new ra(He,We),this._add("tapZoom",We),this._add("clickZoom",He);var st=new si;this._add("tapDragZoom",st);var Et=ye.touchPitch=new ao;this._add("touchPitch",Et);var Ht=new zi(K),yr=new Ni(K);ye.dragRotate=new xi(K,Ht,yr),this._add("mouseRotate",Ht,["mousePitch"]),this._add("mousePitch",yr,["mouseRotate"]);var Ir=new Da(K),wr=new Qi(K);ye.dragPan=new wi(te,Ir,wr),this._add("mousePan",Ir),this._add("touchPan",wr,["touchZoom","touchRotate"]);var qt=new Gs,tr=new Gn;ye.touchZoomRotate=new bi(te,tr,qt,st),this._add("touchRotate",qt,["touchPan","touchZoom"]),this._add("touchZoom",tr,["touchPan","touchRotate"]);var dr=ye.scrollZoom=new Qt(ye,this);this._add("scrollZoom",dr,["mousePan"]);var Pr=ye.keyboard=new hs;this._add("keyboard",Pr),this._add("blockableMapEvent",new wt(ye));for(var Vr=0,Hr=["boxZoom","doubleClickZoom","tapDragZoom","touchPitch","dragRotate","dragPan","touchZoomRotate","scrollZoom","keyboard"];Vr<Hr.length;Vr+=1){var aa=Hr[Vr];K.interactive&&K[aa]&&ye[aa].enable(K[aa])}},Gi.prototype._add=function(K,ye,te){this._handlers.push({handlerName:K,handler:ye,allowed:te}),this._handlersById[K]=ye},Gi.prototype.stop=function(K){if(!this._updatingCamera){for(var ye=0,te=this._handlers;ye<te.length;ye+=1){var xe=te[ye],We=xe.handler;We.reset()}this._inertia.clear(),this._fireEvents({},{},K),this._changes=[]}},Gi.prototype.isActive=function(){for(var K=0,ye=this._handlers;K<ye.length;K+=1){var te=ye[K],xe=te.handler;if(xe.isActive())return!0}return!1},Gi.prototype.isZooming=function(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()},Gi.prototype.isRotating=function(){return!!this._eventsInProgress.rotate},Gi.prototype.isMoving=function(){return!!Fi(this._eventsInProgress)||this.isZooming()},Gi.prototype._blockedByActive=function(K,ye,te){for(var xe in K)if(xe!==te&&(!ye||ye.indexOf(xe)<0))return!0;return!1},Gi.prototype.handleWindowEvent=function(K){this.handleEvent(K,K.type+"Window")},Gi.prototype._getMapTouches=function(K){for(var ye=[],te=0,xe=K;te<xe.length;te+=1){var We=xe[te],He=We.target;this._el.contains(He)&&ye.push(We)}return ye},Gi.prototype.handleEvent=function(K,ye){if(K.type==="blur"){this.stop(!0);return}this._updatingCamera=!0;for(var te=K.type==="renderFrame"?void 0:K,xe={needsRenderFrame:!1},We={},He={},st=K.touches?this._getMapTouches(K.touches):void 0,Et=st?r.touchPos(this._el,st):r.mousePos(this._el,K),Ht=0,yr=this._handlers;Ht<yr.length;Ht+=1){var Ir=yr[Ht],wr=Ir.handlerName,qt=Ir.handler,tr=Ir.allowed;if(qt.isEnabled()){var dr=void 0;this._blockedByActive(He,tr,wr)?qt.reset():qt[ye||K.type]&&(dr=qt[ye||K.type](K,Et,st),this.mergeHandlerResult(xe,We,dr,wr,te),dr&&dr.needsRenderFrame&&this._triggerRenderFrame()),(dr||qt.isActive())&&(He[wr]=qt)}}var Pr={};for(var Vr in this._previousActiveHandlers)He[Vr]||(Pr[Vr]=te);this._previousActiveHandlers=He,(Object.keys(Pr).length||fn(xe))&&(this._changes.push([xe,We,Pr]),this._triggerRenderFrame()),(Object.keys(He).length||fn(xe))&&this._map._stop(!0),this._updatingCamera=!1;var Hr=xe.cameraAnimation;Hr&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],Hr(this._map))},Gi.prototype.mergeHandlerResult=function(K,ye,te,xe,We){if(te){e.extend(K,te);var He={handlerName:xe,originalEvent:te.originalEvent||We};te.zoomDelta!==void 0&&(ye.zoom=He),te.panDelta!==void 0&&(ye.drag=He),te.pitchDelta!==void 0&&(ye.pitch=He),te.bearingDelta!==void 0&&(ye.rotate=He)}},Gi.prototype._applyChanges=function(){for(var K={},ye={},te={},xe=0,We=this._changes;xe<We.length;xe+=1){var He=We[xe],st=He[0],Et=He[1],Ht=He[2];st.panDelta&&(K.panDelta=(K.panDelta||new e.Point(0,0))._add(st.panDelta)),st.zoomDelta&&(K.zoomDelta=(K.zoomDelta||0)+st.zoomDelta),st.bearingDelta&&(K.bearingDelta=(K.bearingDelta||0)+st.bearingDelta),st.pitchDelta&&(K.pitchDelta=(K.pitchDelta||0)+st.pitchDelta),st.around!==void 0&&(K.around=st.around),st.pinchAround!==void 0&&(K.pinchAround=st.pinchAround),st.noInertia&&(K.noInertia=st.noInertia),e.extend(ye,Et),e.extend(te,Ht)}this._updateMapTransform(K,ye,te),this._changes=[]},Gi.prototype._updateMapTransform=function(K,ye,te){var xe=this._map,We=xe.transform;if(!fn(K))return this._fireEvents(ye,te,!0);var He=K.panDelta,st=K.zoomDelta,Et=K.bearingDelta,Ht=K.pitchDelta,yr=K.around,Ir=K.pinchAround;Ir!==void 0&&(yr=Ir),xe._stop(!0),yr=yr||xe.transform.centerPoint;var wr=We.pointLocation(He?yr.sub(He):yr);Et&&(We.bearing+=Et),Ht&&(We.pitch+=Ht),st&&(We.zoom+=st),We.setLocationAtPoint(wr,yr),this._map._update(),K.noInertia||this._inertia.record(K),this._fireEvents(ye,te,!0)},Gi.prototype._fireEvents=function(K,ye,te){var xe=this,We=Fi(this._eventsInProgress),He=Fi(K),st={};for(var Et in K){var Ht=K[Et],yr=Ht.originalEvent;this._eventsInProgress[Et]||(st[Et+"start"]=yr),this._eventsInProgress[Et]=K[Et]}!We&&He&&this._fireEvent("movestart",He.originalEvent);for(var Ir in st)this._fireEvent(Ir,st[Ir]);He&&this._fireEvent("move",He.originalEvent);for(var wr in K){var qt=K[wr],tr=qt.originalEvent;this._fireEvent(wr,tr)}var dr={},Pr;for(var Vr in this._eventsInProgress){var Hr=this._eventsInProgress[Vr],aa=Hr.handlerName,Qr=Hr.originalEvent;this._handlersById[aa].isActive()||(delete this._eventsInProgress[Vr],Pr=ye[aa]||Qr,dr[Vr+"end"]=Pr)}for(var Gr in dr)this._fireEvent(Gr,dr[Gr]);var ia=Fi(this._eventsInProgress);if(te&&(We||He)&&!ia){this._updatingCamera=!0;var Ur=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),wa=function(Oa){return Oa!==0&&-xe._bearingSnap<Oa&&Oa<xe._bearingSnap};Ur?(wa(Ur.bearing||this._map.getBearing())&&(Ur.bearing=0),this._map.easeTo(Ur,{originalEvent:Pr})):(this._map.fire(new e.Event("moveend",{originalEvent:Pr})),wa(this._map.getBearing())&&this._map.resetNorth()),this._updatingCamera=!1}},Gi.prototype._fireEvent=function(K,ye){this._map.fire(new e.Event(K,ye?{originalEvent:ye}:{}))},Gi.prototype._requestFrame=function(){var K=this;return this._map.triggerRepaint(),this._map._renderTaskQueue.add(function(ye){delete K._frameId,K.handleEvent(new cn("renderFrame",{timeStamp:ye})),K._applyChanges()})},Gi.prototype._triggerRenderFrame=function(){this._frameId===void 0&&(this._frameId=this._requestFrame())};var Io=function(ve){function K(ye,te){ve.call(this),this._moving=!1,this._zooming=!1,this.transform=ye,this._bearingSnap=te.bearingSnap,e.bindAll(["_renderFrameCallback"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.getCenter=function(){return new e.LngLat(this.transform.center.lng,this.transform.center.lat)},K.prototype.setCenter=function(te,xe){return this.jumpTo({center:te},xe)},K.prototype.panBy=function(te,xe,We){return te=e.Point.convert(te).mult(-1),this.panTo(this.transform.center,e.extend({offset:te},xe),We)},K.prototype.panTo=function(te,xe,We){return this.easeTo(e.extend({center:te},xe),We)},K.prototype.getZoom=function(){return this.transform.zoom},K.prototype.setZoom=function(te,xe){return this.jumpTo({zoom:te},xe),this},K.prototype.zoomTo=function(te,xe,We){return this.easeTo(e.extend({zoom:te},xe),We)},K.prototype.zoomIn=function(te,xe){return this.zoomTo(this.getZoom()+1,te,xe),this},K.prototype.zoomOut=function(te,xe){return this.zoomTo(this.getZoom()-1,te,xe),this},K.prototype.getBearing=function(){return this.transform.bearing},K.prototype.setBearing=function(te,xe){return this.jumpTo({bearing:te},xe),this},K.prototype.getPadding=function(){return this.transform.padding},K.prototype.setPadding=function(te,xe){return this.jumpTo({padding:te},xe),this},K.prototype.rotateTo=function(te,xe,We){return this.easeTo(e.extend({bearing:te},xe),We)},K.prototype.resetNorth=function(te,xe){return this.rotateTo(0,e.extend({duration:1e3},te),xe),this},K.prototype.resetNorthPitch=function(te,xe){return this.easeTo(e.extend({bearing:0,pitch:0,duration:1e3},te),xe),this},K.prototype.snapToNorth=function(te,xe){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(te,xe):this},K.prototype.getPitch=function(){return this.transform.pitch},K.prototype.setPitch=function(te,xe){return this.jumpTo({pitch:te},xe),this},K.prototype.cameraForBounds=function(te,xe){te=e.LngLatBounds.convert(te);var We=xe&&xe.bearing||0;return this._cameraForBoxAndBearing(te.getNorthWest(),te.getSouthEast(),We,xe)},K.prototype._cameraForBoxAndBearing=function(te,xe,We,He){var st={top:0,bottom:0,right:0,left:0};if(He=e.extend({padding:st,offset:[0,0],maxZoom:this.transform.maxZoom},He),typeof He.padding=="number"){var Et=He.padding;He.padding={top:Et,bottom:Et,right:Et,left:Et}}He.padding=e.extend(st,He.padding);var Ht=this.transform,yr=Ht.padding,Ir=Ht.project(e.LngLat.convert(te)),wr=Ht.project(e.LngLat.convert(xe)),qt=Ir.rotate(-We*Math.PI/180),tr=wr.rotate(-We*Math.PI/180),dr=new e.Point(Math.max(qt.x,tr.x),Math.max(qt.y,tr.y)),Pr=new e.Point(Math.min(qt.x,tr.x),Math.min(qt.y,tr.y)),Vr=dr.sub(Pr),Hr=(Ht.width-(yr.left+yr.right+He.padding.left+He.padding.right))/Vr.x,aa=(Ht.height-(yr.top+yr.bottom+He.padding.top+He.padding.bottom))/Vr.y;if(aa<0||Hr<0){e.warnOnce("Map cannot fit within canvas with the given bounds, padding, and/or offset.");return}var Qr=Math.min(Ht.scaleZoom(Ht.scale*Math.min(Hr,aa)),He.maxZoom),Gr=typeof He.offset.x=="number"?new e.Point(He.offset.x,He.offset.y):e.Point.convert(He.offset),ia=(He.padding.left-He.padding.right)/2,Ur=(He.padding.top-He.padding.bottom)/2,wa=new e.Point(ia,Ur),Oa=wa.rotate(We*Math.PI/180),ri=Gr.add(Oa),Pi=ri.mult(Ht.scale/Ht.zoomScale(Qr)),mi=Ht.unproject(Ir.add(wr).div(2).sub(Pi));return{center:mi,zoom:Qr,bearing:We}},K.prototype.fitBounds=function(te,xe,We){return this._fitInternal(this.cameraForBounds(te,xe),xe,We)},K.prototype.fitScreenCoordinates=function(te,xe,We,He,st){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(e.Point.convert(te)),this.transform.pointLocation(e.Point.convert(xe)),We,He),He,st)},K.prototype._fitInternal=function(te,xe,We){return te?(xe=e.extend(te,xe),delete xe.padding,xe.linear?this.easeTo(xe,We):this.flyTo(xe,We)):this},K.prototype.jumpTo=function(te,xe){this.stop();var We=this.transform,He=!1,st=!1,Et=!1;return"zoom"in te&&We.zoom!==+te.zoom&&(He=!0,We.zoom=+te.zoom),te.center!==void 0&&(We.center=e.LngLat.convert(te.center)),"bearing"in te&&We.bearing!==+te.bearing&&(st=!0,We.bearing=+te.bearing),"pitch"in te&&We.pitch!==+te.pitch&&(Et=!0,We.pitch=+te.pitch),te.padding!=null&&!We.isPaddingEqual(te.padding)&&(We.padding=te.padding),this.fire(new e.Event("movestart",xe)).fire(new e.Event("move",xe)),He&&this.fire(new e.Event("zoomstart",xe)).fire(new e.Event("zoom",xe)).fire(new e.Event("zoomend",xe)),st&&this.fire(new e.Event("rotatestart",xe)).fire(new e.Event("rotate",xe)).fire(new e.Event("rotateend",xe)),Et&&this.fire(new e.Event("pitchstart",xe)).fire(new e.Event("pitch",xe)).fire(new e.Event("pitchend",xe)),this.fire(new e.Event("moveend",xe))},K.prototype.easeTo=function(te,xe){var We=this;this._stop(!1,te.easeId),te=e.extend({offset:[0,0],duration:500,easing:e.ease},te),(te.animate===!1||!te.essential&&e.browser.prefersReducedMotion)&&(te.duration=0);var He=this.transform,st=this.getZoom(),Et=this.getBearing(),Ht=this.getPitch(),yr=this.getPadding(),Ir="zoom"in te?+te.zoom:st,wr="bearing"in te?this._normalizeBearing(te.bearing,Et):Et,qt="pitch"in te?+te.pitch:Ht,tr="padding"in te?te.padding:He.padding,dr=e.Point.convert(te.offset),Pr=He.centerPoint.add(dr),Vr=He.pointLocation(Pr),Hr=e.LngLat.convert(te.center||Vr);this._normalizeCenter(Hr);var aa=He.project(Vr),Qr=He.project(Hr).sub(aa),Gr=He.zoomScale(Ir-st),ia,Ur;te.around&&(ia=e.LngLat.convert(te.around),Ur=He.locationPoint(ia));var wa={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||Ir!==st,this._rotating=this._rotating||Et!==wr,this._pitching=this._pitching||qt!==Ht,this._padding=!He.isPaddingEqual(tr),this._easeId=te.easeId,this._prepareEase(xe,te.noMoveStart,wa),this._ease(function(Oa){if(We._zooming&&(He.zoom=e.number(st,Ir,Oa)),We._rotating&&(He.bearing=e.number(Et,wr,Oa)),We._pitching&&(He.pitch=e.number(Ht,qt,Oa)),We._padding&&(He.interpolatePadding(yr,tr,Oa),Pr=He.centerPoint.add(dr)),ia)He.setLocationAtPoint(ia,Ur);else{var ri=He.zoomScale(He.zoom-st),Pi=Ir>st?Math.min(2,Gr):Math.max(.5,Gr),mi=Math.pow(Pi,1-Oa),Di=He.unproject(aa.add(Qr.mult(Oa*mi)).mult(ri));He.setLocationAtPoint(He.renderWorldCopies?Di.wrap():Di,Pr)}We._fireMoveEvents(xe)},function(Oa){We._afterEase(xe,Oa)},te),this},K.prototype._prepareEase=function(te,xe,We){We===void 0&&(We={}),this._moving=!0,!xe&&!We.moving&&this.fire(new e.Event("movestart",te)),this._zooming&&!We.zooming&&this.fire(new e.Event("zoomstart",te)),this._rotating&&!We.rotating&&this.fire(new e.Event("rotatestart",te)),this._pitching&&!We.pitching&&this.fire(new e.Event("pitchstart",te))},K.prototype._fireMoveEvents=function(te){this.fire(new e.Event("move",te)),this._zooming&&this.fire(new e.Event("zoom",te)),this._rotating&&this.fire(new e.Event("rotate",te)),this._pitching&&this.fire(new e.Event("pitch",te))},K.prototype._afterEase=function(te,xe){if(!(this._easeId&&xe&&this._easeId===xe)){delete this._easeId;var We=this._zooming,He=this._rotating,st=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,We&&this.fire(new e.Event("zoomend",te)),He&&this.fire(new e.Event("rotateend",te)),st&&this.fire(new e.Event("pitchend",te)),this.fire(new e.Event("moveend",te))}},K.prototype.flyTo=function(te,xe){var We=this;if(!te.essential&&e.browser.prefersReducedMotion){var He=e.pick(te,["center","zoom","bearing","pitch","around"]);return this.jumpTo(He,xe)}this.stop(),te=e.extend({offset:[0,0],speed:1.2,curve:1.42,easing:e.ease},te);var st=this.transform,Et=this.getZoom(),Ht=this.getBearing(),yr=this.getPitch(),Ir=this.getPadding(),wr="zoom"in te?e.clamp(+te.zoom,st.minZoom,st.maxZoom):Et,qt="bearing"in te?this._normalizeBearing(te.bearing,Ht):Ht,tr="pitch"in te?+te.pitch:yr,dr="padding"in te?te.padding:st.padding,Pr=st.zoomScale(wr-Et),Vr=e.Point.convert(te.offset),Hr=st.centerPoint.add(Vr),aa=st.pointLocation(Hr),Qr=e.LngLat.convert(te.center||aa);this._normalizeCenter(Qr);var Gr=st.project(aa),ia=st.project(Qr).sub(Gr),Ur=te.curve,wa=Math.max(st.width,st.height),Oa=wa/Pr,ri=ia.mag();if("minZoom"in te){var Pi=e.clamp(Math.min(te.minZoom,Et,wr),st.minZoom,st.maxZoom),mi=wa/st.zoomScale(Pi-Et);Ur=Math.sqrt(mi/ri*2)}var Di=Ur*Ur;function An(qo){var Ls=(Oa*Oa-wa*wa+(qo?-1:1)*Di*Di*ri*ri)/(2*(qo?Oa:wa)*Di*ri);return Math.log(Math.sqrt(Ls*Ls+1)-Ls)}function ln(qo){return(Math.exp(qo)-Math.exp(-qo))/2}function Ii(qo){return(Math.exp(qo)+Math.exp(-qo))/2}function Wi(qo){return ln(qo)/Ii(qo)}var Hi=An(0),yn=function(qo){return Ii(Hi)/Ii(Hi+Ur*qo)},zn=function(qo){return wa*((Ii(Hi)*Wi(Hi+Ur*qo)-ln(Hi))/Di)/ri},ms=(An(1)-Hi)/Ur;if(Math.abs(ri)<1e-6||!isFinite(ms)){if(Math.abs(wa-Oa)<1e-6)return this.easeTo(te,xe);var us=Oa<wa?-1:1;ms=Math.abs(Math.log(Oa/wa))/Ur,zn=function(){return 0},yn=function(qo){return Math.exp(us*Ur*qo)}}if("duration"in te)te.duration=+te.duration;else{var Vs="screenSpeed"in te?+te.screenSpeed/Ur:+te.speed;te.duration=1e3*ms/Vs}return te.maxDuration&&te.duration>te.maxDuration&&(te.duration=0),this._zooming=!0,this._rotating=Ht!==qt,this._pitching=tr!==yr,this._padding=!st.isPaddingEqual(dr),this._prepareEase(xe,!1),this._ease(function(qo){var Ls=qo*ms,wl=1/yn(Ls);st.zoom=qo===1?wr:Et+st.scaleZoom(wl),We._rotating&&(st.bearing=e.number(Ht,qt,qo)),We._pitching&&(st.pitch=e.number(yr,tr,qo)),We._padding&&(st.interpolatePadding(Ir,dr,qo),Hr=st.centerPoint.add(Vr));var Ru=qo===1?Qr:st.unproject(Gr.add(ia.mult(zn(Ls))).mult(wl));st.setLocationAtPoint(st.renderWorldCopies?Ru.wrap():Ru,Hr),We._fireMoveEvents(xe)},function(){return We._afterEase(xe)},te),this},K.prototype.isEasing=function(){return!!this._easeFrameId},K.prototype.stop=function(){return this._stop()},K.prototype._stop=function(te,xe){if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){var We=this._onEaseEnd;delete this._onEaseEnd,We.call(this,xe)}if(!te){var He=this.handlers;He&&He.stop(!1)}return this},K.prototype._ease=function(te,xe,We){We.animate===!1||We.duration===0?(te(1),xe()):(this._easeStart=e.browser.now(),this._easeOptions=We,this._onEaseFrame=te,this._onEaseEnd=xe,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))},K.prototype._renderFrameCallback=function(){var te=Math.min((e.browser.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(te)),te<1?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},K.prototype._normalizeBearing=function(te,xe){te=e.wrap(te,-180,180);var We=Math.abs(te-xe);return Math.abs(te-360-xe)<We&&(te-=360),Math.abs(te+360-xe)<We&&(te+=360),te},K.prototype._normalizeCenter=function(te){var xe=this.transform;if(!(!xe.renderWorldCopies||xe.lngRange)){var We=te.lng-xe.center.lng;te.lng+=We>180?-360:We<-180?360:0}},K}(e.Evented),nn=function(K){K===void 0&&(K={}),this.options=K,e.bindAll(["_toggleAttribution","_updateEditLink","_updateData","_updateCompact"],this)};nn.prototype.getDefaultPosition=function(){return"bottom-right"},nn.prototype.onAdd=function(K){var ye=this.options&&this.options.compact;return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-attrib"),this._compactButton=r.create("button","mapboxgl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=r.create("div","mapboxgl-ctrl-attrib-inner",this._container),this._innerContainer.setAttribute("role","list"),ye&&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),ye===void 0&&(this._map.on("resize",this._updateCompact),this._updateCompact()),this._container},nn.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},nn.prototype._setElementTitle=function(K,ye){var te=this._map._getUIString("AttributionControl."+ye);K.title=te,K.setAttribute("aria-label",te)},nn.prototype._toggleAttribution=function(){this._container.classList.contains("mapboxgl-compact-show")?(this._container.classList.remove("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","false")):(this._container.classList.add("mapboxgl-compact-show"),this._compactButton.setAttribute("aria-pressed","true"))},nn.prototype._updateEditLink=function(){var K=this._editLink;K||(K=this._editLink=this._container.querySelector(".mapbox-improve-map"));var ye=[{key:"owner",value:this.styleOwner},{key:"id",value:this.styleId},{key:"access_token",value:this._map._requestManager._customAccessToken||e.config.ACCESS_TOKEN}];if(K){var te=ye.reduce(function(xe,We,He){return We.value&&(xe+=We.key+"="+We.value+(He<ye.length-1?"&":"")),xe},"?");K.href=e.config.FEEDBACK_URL+"/"+te+(this._map._hash?this._map._hash.getHashString(!0):""),K.rel="noopener nofollow",this._setElementTitle(K,"MapFeedback")}},nn.prototype._updateData=function(K){K&&(K.sourceDataType==="metadata"||K.sourceDataType==="visibility"||K.dataType==="style")&&(this._updateAttributions(),this._updateEditLink())},nn.prototype._updateAttributions=function(){if(this._map.style){var K=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?K=K.concat(this.options.customAttribution.map(function(Et){return typeof Et!="string"?"":Et})):typeof this.options.customAttribution=="string"&&K.push(this.options.customAttribution)),this._map.style.stylesheet){var ye=this._map.style.stylesheet;this.styleOwner=ye.owner,this.styleId=ye.id}var te=this._map.style.sourceCaches;for(var xe in te){var We=te[xe];if(We.used){var He=We.getSource();He.attribution&&K.indexOf(He.attribution)<0&&K.push(He.attribution)}}K.sort(function(Et,Ht){return Et.length-Ht.length}),K=K.filter(function(Et,Ht){for(var yr=Ht+1;yr<K.length;yr++)if(K[yr].indexOf(Et)>=0)return!1;return!0});var st=K.join(" | ");st!==this._attribHTML&&(this._attribHTML=st,K.length?(this._innerContainer.innerHTML=st,this._container.classList.remove("mapboxgl-attrib-empty")):this._container.classList.add("mapboxgl-attrib-empty"),this._editLink=null)}},nn.prototype._updateCompact=function(){this._map.getCanvasContainer().offsetWidth<=640?this._container.classList.add("mapboxgl-compact"):this._container.classList.remove("mapboxgl-compact","mapboxgl-compact-show")};var on=function(){e.bindAll(["_updateLogo"],this),e.bindAll(["_updateCompact"],this)};on.prototype.onAdd=function(K){this._map=K,this._container=r.create("div","mapboxgl-ctrl");var ye=r.create("a","mapboxgl-ctrl-logo");return ye.target="_blank",ye.rel="noopener nofollow",ye.href="https://www.mapbox.com/",ye.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ye.setAttribute("rel","noopener nofollow"),this._container.appendChild(ye),this._container.style.display="none",this._map.on("sourcedata",this._updateLogo),this._updateLogo(),this._map.on("resize",this._updateCompact),this._updateCompact(),this._container},on.prototype.onRemove=function(){r.remove(this._container),this._map.off("sourcedata",this._updateLogo),this._map.off("resize",this._updateCompact)},on.prototype.getDefaultPosition=function(){return"bottom-left"},on.prototype._updateLogo=function(K){(!K||K.sourceDataType==="metadata")&&(this._container.style.display=this._logoRequired()?"block":"none")},on.prototype._logoRequired=function(){if(this._map.style){var K=this._map.style.sourceCaches;for(var ye in K){var te=K[ye].getSource();if(te.mapbox_logo)return!0}return!1}},on.prototype._updateCompact=function(){var K=this._container.children;if(K.length){var ye=K[0];this._map.getCanvasContainer().offsetWidth<250?ye.classList.add("mapboxgl-compact"):ye.classList.remove("mapboxgl-compact")}};var Oi=function(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1};Oi.prototype.add=function(K){var ye=++this._id,te=this._queue;return te.push({callback:K,id:ye,cancelled:!1}),ye},Oi.prototype.remove=function(K){for(var ye=this._currentlyRunning,te=ye?this._queue.concat(ye):this._queue,xe=0,We=te;xe<We.length;xe+=1){var He=We[xe];if(He.id===K){He.cancelled=!0;return}}},Oi.prototype.run=function(K){K===void 0&&(K=0);var ye=this._currentlyRunning=this._queue;this._queue=[];for(var te=0,xe=ye;te<xe.length;te+=1){var We=xe[te];if(!We.cancelled&&(We.callback(K),this._cleared))break}this._cleared=!1,this._currentlyRunning=!1},Oi.prototype.clear=function(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]};var ui={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","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"},Mi=e.window.HTMLImageElement,tn=e.window.HTMLElement,pn=e.window.ImageBitmap,qi=-2,Dn=22,bn=0,_o=60,Zi={center:[0,0],zoom:0,bearing:0,pitch:0,minZoom:qi,maxZoom:Dn,minPitch:bn,maxPitch:_o,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},Ui=function(ve){function K(te){var xe=this;if(te=e.extend({},Zi,te),te.minZoom!=null&&te.maxZoom!=null&&te.minZoom>te.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(te.minPitch!=null&&te.maxPitch!=null&&te.minPitch>te.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(te.minPitch!=null&&te.minPitch<bn)throw new Error("minPitch must be greater than or equal to "+bn);if(te.maxPitch!=null&&te.maxPitch>_o)throw new Error("maxPitch must be less than or equal to "+_o);var We=new Zo(te.minZoom,te.maxZoom,te.minPitch,te.maxPitch,te.renderWorldCopies);if(ve.call(this,We,te),this._interactive=te.interactive,this._maxTileCacheSize=te.maxTileCacheSize,this._failIfMajorPerformanceCaveat=te.failIfMajorPerformanceCaveat,this._preserveDrawingBuffer=te.preserveDrawingBuffer,this._antialias=te.antialias,this._trackResize=te.trackResize,this._bearingSnap=te.bearingSnap,this._refreshExpiredTiles=te.refreshExpiredTiles,this._fadeDuration=te.fadeDuration,this._crossSourceCollisions=te.crossSourceCollisions,this._crossFadingFactor=1,this._collectResourceTiming=te.collectResourceTiming,this._renderTaskQueue=new Oi,this._controls=[],this._mapId=e.uniqueId(),this._locale=e.extend({},ui,te.locale),this._clickTolerance=te.clickTolerance,this._requestManager=new e.RequestManager(te.transformRequest,te.accessToken),typeof te.container=="string"){if(this._container=e.window.document.getElementById(te.container),!this._container)throw new Error("Container '"+te.container+"' not found.")}else if(te.container instanceof tn)this._container=te.container;else throw new Error("Invalid type: 'container' must be a String or HTMLElement.");if(te.maxBounds&&this.setMaxBounds(te.maxBounds),e.bindAll(["_onWindowOnline","_onWindowResize","_onMapScroll","_contextLost","_contextRestored"],this),this._setupContainer(),this._setupPainter(),this.painter===void 0)throw new Error("Failed to initialize WebGL.");this.on("move",function(){return xe._update(!1)}),this.on("moveend",function(){return xe._update(!1)}),this.on("zoom",function(){return xe._update(!0)}),typeof e.window<"u"&&(e.window.addEventListener("online",this._onWindowOnline,!1),e.window.addEventListener("resize",this._onWindowResize,!1),e.window.addEventListener("orientationchange",this._onWindowResize,!1)),this.handlers=new Gi(this,te);var He=typeof te.hash=="string"&&te.hash||void 0;this._hash=te.hash&&new Xl(He).addTo(this),(!this._hash||!this._hash._onHashChange())&&(this.jumpTo({center:te.center,zoom:te.zoom,bearing:te.bearing,pitch:te.pitch}),te.bounds&&(this.resize(),this.fitBounds(te.bounds,e.extend({},te.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=te.localIdeographFontFamily,te.style&&this.setStyle(te.style,{localIdeographFontFamily:te.localIdeographFontFamily}),te.attributionControl&&this.addControl(new nn({customAttribution:te.customAttribution})),this.addControl(new on,te.logoPosition),this.on("style.load",function(){xe.transform.unmodified&&xe.jumpTo(xe.style.stylesheet)}),this.on("data",function(st){xe._update(st.dataType==="style"),xe.fire(new e.Event(st.dataType+"data",st))}),this.on("dataloading",function(st){xe.fire(new e.Event(st.dataType+"dataloading",st))})}ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K;var ye={showTileBoundaries:{configurable:!0},showPadding:{configurable:!0},showCollisionBoxes:{configurable:!0},showOverdrawInspector:{configurable:!0},repaint:{configurable:!0},vertices:{configurable:!0},version:{configurable:!0}};return K.prototype._getMapId=function(){return this._mapId},K.prototype.addControl=function(xe,We){if(We===void 0&&(xe.getDefaultPosition?We=xe.getDefaultPosition():We="top-right"),!xe||!xe.onAdd)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));var He=xe.onAdd(this);this._controls.push(xe);var st=this._controlPositions[We];return We.indexOf("bottom")!==-1?st.insertBefore(He,st.firstChild):st.appendChild(He),this},K.prototype.removeControl=function(xe){if(!xe||!xe.onRemove)return this.fire(new e.ErrorEvent(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));var We=this._controls.indexOf(xe);return We>-1&&this._controls.splice(We,1),xe.onRemove(this),this},K.prototype.hasControl=function(xe){return this._controls.indexOf(xe)>-1},K.prototype.resize=function(xe){var We=this._containerDimensions(),He=We[0],st=We[1];this._resizeCanvas(He,st),this.transform.resize(He,st),this.painter.resize(He,st);var Et=!this._moving;return Et&&(this.stop(),this.fire(new e.Event("movestart",xe)).fire(new e.Event("move",xe))),this.fire(new e.Event("resize",xe)),Et&&this.fire(new e.Event("moveend",xe)),this},K.prototype.getBounds=function(){return this.transform.getBounds()},K.prototype.getMaxBounds=function(){return this.transform.getMaxBounds()},K.prototype.setMaxBounds=function(xe){return this.transform.setMaxBounds(e.LngLatBounds.convert(xe)),this._update()},K.prototype.setMinZoom=function(xe){if(xe=xe??qi,xe>=qi&&xe<=this.transform.maxZoom)return this.transform.minZoom=xe,this._update(),this.getZoom()<xe&&this.setZoom(xe),this;throw new Error("minZoom must be between "+qi+" and the current maxZoom, inclusive")},K.prototype.getMinZoom=function(){return this.transform.minZoom},K.prototype.setMaxZoom=function(xe){if(xe=xe??Dn,xe>=this.transform.minZoom)return this.transform.maxZoom=xe,this._update(),this.getZoom()>xe&&this.setZoom(xe),this;throw new Error("maxZoom must be greater than the current minZoom")},K.prototype.getMaxZoom=function(){return this.transform.maxZoom},K.prototype.setMinPitch=function(xe){if(xe=xe??bn,xe<bn)throw new Error("minPitch must be greater than or equal to "+bn);if(xe>=bn&&xe<=this.transform.maxPitch)return this.transform.minPitch=xe,this._update(),this.getPitch()<xe&&this.setPitch(xe),this;throw new Error("minPitch must be between "+bn+" and the current maxPitch, inclusive")},K.prototype.getMinPitch=function(){return this.transform.minPitch},K.prototype.setMaxPitch=function(xe){if(xe=xe??_o,xe>_o)throw new Error("maxPitch must be less than or equal to "+_o);if(xe>=this.transform.minPitch)return this.transform.maxPitch=xe,this._update(),this.getPitch()>xe&&this.setPitch(xe),this;throw new Error("maxPitch must be greater than the current minPitch")},K.prototype.getMaxPitch=function(){return this.transform.maxPitch},K.prototype.getRenderWorldCopies=function(){return this.transform.renderWorldCopies},K.prototype.setRenderWorldCopies=function(xe){return this.transform.renderWorldCopies=xe,this._update()},K.prototype.project=function(xe){return this.transform.locationPoint(e.LngLat.convert(xe))},K.prototype.unproject=function(xe){return this.transform.pointLocation(e.Point.convert(xe))},K.prototype.isMoving=function(){return this._moving||this.handlers.isMoving()},K.prototype.isZooming=function(){return this._zooming||this.handlers.isZooming()},K.prototype.isRotating=function(){return this._rotating||this.handlers.isRotating()},K.prototype._createDelegatedListener=function(xe,We,He){var st=this,Et;if(xe==="mouseenter"||xe==="mouseover"){var Ht=!1,yr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?Ht||(Ht=!0,He.call(st,new Re(xe,st,Pr.originalEvent,{features:Vr}))):Ht=!1},Ir=function(){Ht=!1};return{layer:We,listener:He,delegates:{mousemove:yr,mouseout:Ir}}}else if(xe==="mouseleave"||xe==="mouseout"){var wr=!1,qt=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length?wr=!0:wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))},tr=function(Pr){wr&&(wr=!1,He.call(st,new Re(xe,st,Pr.originalEvent)))};return{layer:We,listener:He,delegates:{mousemove:qt,mouseout:tr}}}else{var dr=function(Pr){var Vr=st.getLayer(We)?st.queryRenderedFeatures(Pr.point,{layers:[We]}):[];Vr.length&&(Pr.features=Vr,He.call(st,Pr),delete Pr.features)};return{layer:We,listener:He,delegates:(Et={},Et[xe]=dr,Et)}}},K.prototype.on=function(xe,We,He){if(He===void 0)return ve.prototype.on.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[xe]=this._delegatedListeners[xe]||[],this._delegatedListeners[xe].push(st);for(var Et in st.delegates)this.on(Et,st.delegates[Et]);return this},K.prototype.once=function(xe,We,He){if(He===void 0)return ve.prototype.once.call(this,xe,We);var st=this._createDelegatedListener(xe,We,He);for(var Et in st.delegates)this.once(Et,st.delegates[Et]);return this},K.prototype.off=function(xe,We,He){var st=this;if(He===void 0)return ve.prototype.off.call(this,xe,We);var Et=function(Ht){for(var yr=Ht[xe],Ir=0;Ir<yr.length;Ir++){var wr=yr[Ir];if(wr.layer===We&&wr.listener===He){for(var qt in wr.delegates)st.off(qt,wr.delegates[qt]);return yr.splice(Ir,1),st}}};return this._delegatedListeners&&this._delegatedListeners[xe]&&Et(this._delegatedListeners),this},K.prototype.queryRenderedFeatures=function(xe,We){if(!this.style)return[];We===void 0&&xe!==void 0&&!(xe instanceof e.Point)&&!Array.isArray(xe)&&(We=xe,xe=void 0),We=We||{},xe=xe||[[0,0],[this.transform.width,this.transform.height]];var He;if(xe instanceof e.Point||typeof xe[0]=="number")He=[e.Point.convert(xe)];else{var st=e.Point.convert(xe[0]),Et=e.Point.convert(xe[1]);He=[st,new e.Point(Et.x,st.y),Et,new e.Point(st.x,Et.y),st]}return this.style.queryRenderedFeatures(He,We,this.transform)},K.prototype.querySourceFeatures=function(xe,We){return this.style.querySourceFeatures(xe,We)},K.prototype.setStyle=function(xe,We){return We=e.extend({},{localIdeographFontFamily:this._localIdeographFontFamily},We),We.diff!==!1&&We.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&xe?(this._diffStyle(xe,We),this):(this._localIdeographFontFamily=We.localIdeographFontFamily,this._updateStyle(xe,We))},K.prototype._getUIString=function(xe){var We=this._locale[xe];if(We==null)throw new Error("Missing UI string '"+xe+"'");return We},K.prototype._updateStyle=function(xe,We){if(this.style&&(this.style.setEventedParent(null),this.style._remove()),xe)this.style=new Jl(this,We||{});else return delete this.style,this;return this.style.setEventedParent(this,{style:this.style}),typeof xe=="string"?this.style.loadURL(xe):this.style.loadJSON(xe),this},K.prototype._lazyInitEmptyStyle=function(){this.style||(this.style=new Jl(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())},K.prototype._diffStyle=function(xe,We){var He=this;if(typeof xe=="string"){var st=this._requestManager.normalizeStyleURL(xe),Et=this._requestManager.transformRequest(st,e.ResourceType.Style);e.getJSON(Et,function(Ht,yr){Ht?He.fire(new e.ErrorEvent(Ht)):yr&&He._updateDiff(yr,We)})}else typeof xe=="object"&&this._updateDiff(xe,We)},K.prototype._updateDiff=function(xe,We){try{this.style.setState(xe)&&this._update(!0)}catch(He){e.warnOnce("Unable to perform style diff: "+(He.message||He.error||He)+". Rebuilding the style from scratch."),this._updateStyle(xe,We)}},K.prototype.getStyle=function(){if(this.style)return this.style.serialize()},K.prototype.isStyleLoaded=function(){return this.style?this.style.loaded():e.warnOnce("There is no style added to the map.")},K.prototype.addSource=function(xe,We){return this._lazyInitEmptyStyle(),this.style.addSource(xe,We),this._update(!0)},K.prototype.isSourceLoaded=function(xe){var We=this.style&&this.style.sourceCaches[xe];if(We===void 0){this.fire(new e.ErrorEvent(new Error("There is no source with ID '"+xe+"'")));return}return We.loaded()},K.prototype.areTilesLoaded=function(){var xe=this.style&&this.style.sourceCaches;for(var We in xe){var He=xe[We],st=He._tiles;for(var Et in st){var Ht=st[Et];if(!(Ht.state==="loaded"||Ht.state==="errored"))return!1}}return!0},K.prototype.addSourceType=function(xe,We,He){return this._lazyInitEmptyStyle(),this.style.addSourceType(xe,We,He)},K.prototype.removeSource=function(xe){return this.style.removeSource(xe),this._update(!0)},K.prototype.getSource=function(xe){return this.style.getSource(xe)},K.prototype.addImage=function(xe,We,He){He===void 0&&(He={});var st=He.pixelRatio;st===void 0&&(st=1);var Et=He.sdf;Et===void 0&&(Et=!1);var Ht=He.stretchX,yr=He.stretchY,Ir=He.content;this._lazyInitEmptyStyle();var wr=0;if(We instanceof Mi||pn&&We instanceof pn){var qt=e.browser.getImageData(We),tr=qt.width,dr=qt.height,Pr=qt.data;this.style.addImage(xe,{data:new e.RGBAImage({width:tr,height:dr},Pr),pixelRatio:st,stretchX:Ht,stretchY:yr,content:Ir,sdf:Et,version:wr})}else{if(We.width===void 0||We.height===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));var Vr=We.width,Hr=We.height,aa=We.data,Qr=We;this.style.addImage(xe,{data:new e.RGBAImage({width:Vr,height:Hr},new Uint8Array(aa)),pixelRatio:st,stretchX:Ht,stretchY:yr,content:Ir,sdf:Et,version:wr,userImage:Qr}),Qr.onAdd&&Qr.onAdd(this,xe)}},K.prototype.updateImage=function(xe,We){var He=this.style.getImage(xe);if(!He)return this.fire(new e.ErrorEvent(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));var st=We instanceof Mi||pn&&We instanceof pn?e.browser.getImageData(We):We,Et=st.width,Ht=st.height,yr=st.data;if(Et===void 0||Ht===void 0)return this.fire(new e.ErrorEvent(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Et!==He.data.width||Ht!==He.data.height)return this.fire(new e.ErrorEvent(new Error("The width and height of the updated image must be that same as the previous version of the image")));var Ir=!(We instanceof Mi||pn&&We instanceof pn);He.data.replace(yr,Ir),this.style.updateImage(xe,He)},K.prototype.hasImage=function(xe){return xe?!!this.style.getImage(xe):(this.fire(new e.ErrorEvent(new Error("Missing required image id"))),!1)},K.prototype.removeImage=function(xe){this.style.removeImage(xe)},K.prototype.loadImage=function(xe,We){e.getImage(this._requestManager.transformRequest(xe,e.ResourceType.Image),We)},K.prototype.listImages=function(){return this.style.listImages()},K.prototype.addLayer=function(xe,We){return this._lazyInitEmptyStyle(),this.style.addLayer(xe,We),this._update(!0)},K.prototype.moveLayer=function(xe,We){return this.style.moveLayer(xe,We),this._update(!0)},K.prototype.removeLayer=function(xe){return this.style.removeLayer(xe),this._update(!0)},K.prototype.getLayer=function(xe){return this.style.getLayer(xe)},K.prototype.setLayerZoomRange=function(xe,We,He){return this.style.setLayerZoomRange(xe,We,He),this._update(!0)},K.prototype.setFilter=function(xe,We,He){return He===void 0&&(He={}),this.style.setFilter(xe,We,He),this._update(!0)},K.prototype.getFilter=function(xe){return this.style.getFilter(xe)},K.prototype.setPaintProperty=function(xe,We,He,st){return st===void 0&&(st={}),this.style.setPaintProperty(xe,We,He,st),this._update(!0)},K.prototype.getPaintProperty=function(xe,We){return this.style.getPaintProperty(xe,We)},K.prototype.setLayoutProperty=function(xe,We,He,st){return st===void 0&&(st={}),this.style.setLayoutProperty(xe,We,He,st),this._update(!0)},K.prototype.getLayoutProperty=function(xe,We){return this.style.getLayoutProperty(xe,We)},K.prototype.setLight=function(xe,We){return We===void 0&&(We={}),this._lazyInitEmptyStyle(),this.style.setLight(xe,We),this._update(!0)},K.prototype.getLight=function(){return this.style.getLight()},K.prototype.setFeatureState=function(xe,We){return this.style.setFeatureState(xe,We),this._update()},K.prototype.removeFeatureState=function(xe,We){return this.style.removeFeatureState(xe,We),this._update()},K.prototype.getFeatureState=function(xe){return this.style.getFeatureState(xe)},K.prototype.getContainer=function(){return this._container},K.prototype.getCanvasContainer=function(){return this._canvasContainer},K.prototype.getCanvas=function(){return this._canvas},K.prototype._containerDimensions=function(){var xe=0,We=0;return this._container&&(xe=this._container.clientWidth||400,We=this._container.clientHeight||300),[xe,We]},K.prototype._detectMissingCSS=function(){var xe=e.window.getComputedStyle(this._missingCSSCanary).getPropertyValue("background-color");xe!=="rgb(250, 128, 114)"&&e.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/.")},K.prototype._setupContainer=function(){var xe=this._container;xe.classList.add("mapboxgl-map");var We=this._missingCSSCanary=r.create("div","mapboxgl-canary",xe);We.style.visibility="hidden",this._detectMissingCSS();var He=this._canvasContainer=r.create("div","mapboxgl-canvas-container",xe);this._interactive&&He.classList.add("mapboxgl-interactive"),this._canvas=r.create("canvas","mapboxgl-canvas",He),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"),this._canvas.setAttribute("role","region");var st=this._containerDimensions();this._resizeCanvas(st[0],st[1]);var Et=this._controlContainer=r.create("div","mapboxgl-control-container",xe),Ht=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(function(yr){Ht[yr]=r.create("div","mapboxgl-ctrl-"+yr,Et)}),this._container.addEventListener("scroll",this._onMapScroll,!1)},K.prototype._resizeCanvas=function(xe,We){var He=e.browser.devicePixelRatio||1;this._canvas.width=He*xe,this._canvas.height=He*We,this._canvas.style.width=xe+"px",this._canvas.style.height=We+"px"},K.prototype._setupPainter=function(){var xe=e.extend({},t.webGLContextAttributes,{failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1}),We=this._canvas.getContext("webgl",xe)||this._canvas.getContext("experimental-webgl",xe);if(!We){this.fire(new e.ErrorEvent(new Error("Failed to initialize WebGL")));return}this.painter=new Vo(We,this.transform),e.webpSupported.testSupport(We)},K.prototype._contextLost=function(xe){xe.preventDefault(),this._frame&&(this._frame.cancel(),this._frame=null),this.fire(new e.Event("webglcontextlost",{originalEvent:xe}))},K.prototype._contextRestored=function(xe){this._setupPainter(),this.resize(),this._update(),this.fire(new e.Event("webglcontextrestored",{originalEvent:xe}))},K.prototype._onMapScroll=function(xe){if(xe.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},K.prototype.loaded=function(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()},K.prototype._update=function(xe){return this.style?(this._styleDirty=this._styleDirty||xe,this._sourcesDirty=!0,this.triggerRepaint(),this):this},K.prototype._requestRenderFrame=function(xe){return this._update(),this._renderTaskQueue.add(xe)},K.prototype._cancelRenderFrame=function(xe){this._renderTaskQueue.remove(xe)},K.prototype._render=function(xe){var We=this,He,st=0,Et=this.painter.context.extTimerQuery;if(this.listens("gpu-timing-frame")&&(He=Et.createQueryEXT(),Et.beginQueryEXT(Et.TIME_ELAPSED_EXT,He),st=e.browser.now()),this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(xe),!this._removed){var Ht=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;var yr=this.transform.zoom,Ir=e.browser.now();this.style.zoomHistory.update(yr,Ir);var wr=new e.EvaluationParameters(yr,{now:Ir,fadeDuration:this._fadeDuration,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),qt=wr.crossFadingFactor();(qt!==1||qt!==this._crossFadingFactor)&&(Ht=!0,this._crossFadingFactor=qt),this.style.update(wr)}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 e.Event("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,this.fire(new e.Event("load"))),this.style&&(this.style.hasTransitions()||Ht)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles(),this.listens("gpu-timing-frame")){var tr=e.browser.now()-st;Et.endQueryEXT(Et.TIME_ELAPSED_EXT,He),setTimeout(function(){var Vr=Et.getQueryObjectEXT(He,Et.QUERY_RESULT_EXT)/1e6;Et.deleteQueryEXT(He),We.fire(new e.Event("gpu-timing-frame",{cpuTime:tr,gpuTime:Vr}))},50)}if(this.listens("gpu-timing-layer")){var dr=this.painter.collectGpuTimers();setTimeout(function(){var Vr=We.painter.queryGpuTimers(dr);We.fire(new e.Event("gpu-timing-layer",{layerTimes:Vr}))},50)}var Pr=this._sourcesDirty||this._styleDirty||this._placementDirty;return Pr||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new e.Event("idle")),this._loaded&&!this._fullyLoaded&&!Pr&&(this._fullyLoaded=!0),this}},K.prototype.remove=function(){this._hash&&this._hash.remove();for(var xe=0,We=this._controls;xe<We.length;xe+=1){var He=We[xe];He.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),typeof e.window<"u"&&(e.window.removeEventListener("resize",this._onWindowResize,!1),e.window.removeEventListener("orientationchange",this._onWindowResize,!1),e.window.removeEventListener("online",this._onWindowOnline,!1));var st=this.painter.context.gl.getExtension("WEBGL_lose_context");st&&st.loseContext&&st.loseContext(),Zn(this._canvasContainer),Zn(this._controlContainer),Zn(this._missingCSSCanary),this._container.classList.remove("mapboxgl-map"),this._removed=!0,this.fire(new e.Event("remove"))},K.prototype.triggerRepaint=function(){var xe=this;this.style&&!this._frame&&(this._frame=e.browser.frame(function(We){xe._frame=null,xe._render(We)}))},K.prototype._onWindowOnline=function(){this._update()},K.prototype._onWindowResize=function(xe){this._trackResize&&this.resize({originalEvent:xe})._update()},ye.showTileBoundaries.get=function(){return!!this._showTileBoundaries},ye.showTileBoundaries.set=function(te){this._showTileBoundaries!==te&&(this._showTileBoundaries=te,this._update())},ye.showPadding.get=function(){return!!this._showPadding},ye.showPadding.set=function(te){this._showPadding!==te&&(this._showPadding=te,this._update())},ye.showCollisionBoxes.get=function(){return!!this._showCollisionBoxes},ye.showCollisionBoxes.set=function(te){this._showCollisionBoxes!==te&&(this._showCollisionBoxes=te,te?this.style._generateCollisionBoxes():this._update())},ye.showOverdrawInspector.get=function(){return!!this._showOverdrawInspector},ye.showOverdrawInspector.set=function(te){this._showOverdrawInspector!==te&&(this._showOverdrawInspector=te,this._update())},ye.repaint.get=function(){return!!this._repaint},ye.repaint.set=function(te){this._repaint!==te&&(this._repaint=te,this.triggerRepaint())},ye.vertices.get=function(){return!!this._vertices},ye.vertices.set=function(te){this._vertices=te,this._update()},K.prototype._setCacheLimits=function(xe,We){e.setCacheLimits(xe,We)},ye.version.get=function(){return e.version},Object.defineProperties(K.prototype,ye),K}(Io);function Zn(ve){ve.parentNode&&ve.parentNode.removeChild(ve)}var Rn={showCompass:!0,showZoom:!0,visualizePitch:!1},xn=function(K){var ye=this;this.options=e.extend({},Rn,K),this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),this._container.addEventListener("contextmenu",function(te){return te.preventDefault()}),this.options.showZoom&&(e.bindAll(["_setButtonTitle","_updateZoomButtons"],this),this._zoomInButton=this._createButton("mapboxgl-ctrl-zoom-in",function(te){return ye._map.zoomIn({},{originalEvent:te})}),r.create("span","mapboxgl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden",!0),this._zoomOutButton=this._createButton("mapboxgl-ctrl-zoom-out",function(te){return ye._map.zoomOut({},{originalEvent:te})}),r.create("span","mapboxgl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden",!0)),this.options.showCompass&&(e.bindAll(["_rotateCompassArrow"],this),this._compass=this._createButton("mapboxgl-ctrl-compass",function(te){ye.options.visualizePitch?ye._map.resetNorthPitch({},{originalEvent:te}):ye._map.resetNorth({},{originalEvent:te})}),this._compassIcon=r.create("span","mapboxgl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden",!0))};xn.prototype._updateZoomButtons=function(){var K=this._map.getZoom(),ye=K===this._map.getMaxZoom(),te=K===this._map.getMinZoom();this._zoomInButton.disabled=ye,this._zoomOutButton.disabled=te,this._zoomInButton.setAttribute("aria-disabled",ye.toString()),this._zoomOutButton.setAttribute("aria-disabled",te.toString())},xn.prototype._rotateCompassArrow=function(){var K=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=K},xn.prototype.onAdd=function(K){return this._map=K,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 dn(this._map,this._compass,this.options.visualizePitch)),this._container},xn.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},xn.prototype._createButton=function(K,ye){var te=r.create("button",K,this._container);return te.type="button",te.addEventListener("click",ye),te},xn.prototype._setButtonTitle=function(K,ye){var te=this._map._getUIString("NavigationControl."+ye);K.title=te,K.setAttribute("aria-label",te)};var dn=function(K,ye,te){te===void 0&&(te=!1),this._clickTolerance=10,this.element=ye,this.mouseRotate=new zi({clickTolerance:K.dragRotate._mouseRotate._clickTolerance}),this.map=K,te&&(this.mousePitch=new Ni({clickTolerance:K.dragRotate._mousePitch._clickTolerance})),e.bindAll(["mousedown","mousemove","mouseup","touchstart","touchmove","touchend","reset"],this),r.addEventListener(ye,"mousedown",this.mousedown),r.addEventListener(ye,"touchstart",this.touchstart,{passive:!1}),r.addEventListener(ye,"touchmove",this.touchmove),r.addEventListener(ye,"touchend",this.touchend),r.addEventListener(ye,"touchcancel",this.reset)};dn.prototype.down=function(K,ye){this.mouseRotate.mousedown(K,ye),this.mousePitch&&this.mousePitch.mousedown(K,ye),r.disableDrag()},dn.prototype.move=function(K,ye){var te=this.map,xe=this.mouseRotate.mousemoveWindow(K,ye);if(xe&&xe.bearingDelta&&te.setBearing(te.getBearing()+xe.bearingDelta),this.mousePitch){var We=this.mousePitch.mousemoveWindow(K,ye);We&&We.pitchDelta&&te.setPitch(te.getPitch()+We.pitchDelta)}},dn.prototype.off=function(){var K=this.element;r.removeEventListener(K,"mousedown",this.mousedown),r.removeEventListener(K,"touchstart",this.touchstart,{passive:!1}),r.removeEventListener(K,"touchmove",this.touchmove),r.removeEventListener(K,"touchend",this.touchend),r.removeEventListener(K,"touchcancel",this.reset),this.offTemp()},dn.prototype.offTemp=function(){r.enableDrag(),r.removeEventListener(e.window,"mousemove",this.mousemove),r.removeEventListener(e.window,"mouseup",this.mouseup)},dn.prototype.mousedown=function(K){this.down(e.extend({},K,{ctrlKey:!0,preventDefault:function(){return K.preventDefault()}}),r.mousePos(this.element,K)),r.addEventListener(e.window,"mousemove",this.mousemove),r.addEventListener(e.window,"mouseup",this.mouseup)},dn.prototype.mousemove=function(K){this.move(K,r.mousePos(this.element,K))},dn.prototype.mouseup=function(K){this.mouseRotate.mouseupWindow(K),this.mousePitch&&this.mousePitch.mouseupWindow(K),this.offTemp()},dn.prototype.touchstart=function(K){K.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=r.touchPos(this.element,K.targetTouches)[0],this.down({type:"mousedown",button:0,ctrlKey:!0,preventDefault:function(){return K.preventDefault()}},this._startPos))},dn.prototype.touchmove=function(K){K.targetTouches.length!==1?this.reset():(this._lastPos=r.touchPos(this.element,K.targetTouches)[0],this.move({preventDefault:function(){return K.preventDefault()}},this._lastPos))},dn.prototype.touchend=function(K){K.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),this.reset()},dn.prototype.reset=function(){this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()};function jn(ve,K,ye){if(ve=new e.LngLat(ve.lng,ve.lat),K){var te=new e.LngLat(ve.lng-360,ve.lat),xe=new e.LngLat(ve.lng+360,ve.lat),We=ye.locationPoint(ve).distSqr(K);ye.locationPoint(te).distSqr(K)<We?ve=te:ye.locationPoint(xe).distSqr(K)<We&&(ve=xe)}for(;Math.abs(ve.lng-ye.center.lng)>180;){var He=ye.locationPoint(ve);if(He.x>=0&&He.y>=0&&He.x<=ye.width&&He.y<=ye.height)break;ve.lng>ye.center.lng?ve.lng-=360:ve.lng+=360}return ve}var Ro={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function rs(ve,K,ye){var te=ve.classList;for(var xe in Ro)te.remove("mapboxgl-"+ye+"-anchor-"+xe);te.add("mapboxgl-"+ye+"-anchor-"+K)}var wn=function(ve){function K(ye,te){if(ve.call(this),(ye instanceof e.window.HTMLElement||te)&&(ye=e.extend({element:ye},te)),e.bindAll(["_update","_onMove","_onUp","_addDragHandler","_onMapClick","_onKeyPress"],this),this._anchor=ye&&ye.anchor||"center",this._color=ye&&ye.color||"#3FB1CE",this._scale=ye&&ye.scale||1,this._draggable=ye&&ye.draggable||!1,this._clickTolerance=ye&&ye.clickTolerance||0,this._isDragging=!1,this._state="inactive",this._rotation=ye&&ye.rotation||0,this._rotationAlignment=ye&&ye.rotationAlignment||"auto",this._pitchAlignment=ye&&ye.pitchAlignment&&ye.pitchAlignment!=="auto"?ye.pitchAlignment:this._rotationAlignment,!ye||!ye.element){this._defaultMarker=!0,this._element=r.create("div"),this._element.setAttribute("aria-label","Map marker");var xe=r.createNS("http://www.w3.org/2000/svg","svg"),We=41,He=27;xe.setAttributeNS(null,"display","block"),xe.setAttributeNS(null,"height",We+"px"),xe.setAttributeNS(null,"width",He+"px"),xe.setAttributeNS(null,"viewBox","0 0 "+He+" "+We);var st=r.createNS("http://www.w3.org/2000/svg","g");st.setAttributeNS(null,"stroke","none"),st.setAttributeNS(null,"stroke-width","1"),st.setAttributeNS(null,"fill","none"),st.setAttributeNS(null,"fill-rule","evenodd");var Et=r.createNS("http://www.w3.org/2000/svg","g");Et.setAttributeNS(null,"fill-rule","nonzero");var Ht=r.createNS("http://www.w3.org/2000/svg","g");Ht.setAttributeNS(null,"transform","translate(3.0, 29.0)"),Ht.setAttributeNS(null,"fill","#000000");for(var yr=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}],Ir=0,wr=yr;Ir<wr.length;Ir+=1){var qt=wr[Ir],tr=r.createNS("http://www.w3.org/2000/svg","ellipse");tr.setAttributeNS(null,"opacity","0.04"),tr.setAttributeNS(null,"cx","10.5"),tr.setAttributeNS(null,"cy","5.80029008"),tr.setAttributeNS(null,"rx",qt.rx),tr.setAttributeNS(null,"ry",qt.ry),Ht.appendChild(tr)}var dr=r.createNS("http://www.w3.org/2000/svg","g");dr.setAttributeNS(null,"fill",this._color);var Pr=r.createNS("http://www.w3.org/2000/svg","path");Pr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),dr.appendChild(Pr);var Vr=r.createNS("http://www.w3.org/2000/svg","g");Vr.setAttributeNS(null,"opacity","0.25"),Vr.setAttributeNS(null,"fill","#000000");var Hr=r.createNS("http://www.w3.org/2000/svg","path");Hr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),Vr.appendChild(Hr);var aa=r.createNS("http://www.w3.org/2000/svg","g");aa.setAttributeNS(null,"transform","translate(6.0, 7.0)"),aa.setAttributeNS(null,"fill","#FFFFFF");var Qr=r.createNS("http://www.w3.org/2000/svg","g");Qr.setAttributeNS(null,"transform","translate(8.0, 8.0)");var Gr=r.createNS("http://www.w3.org/2000/svg","circle");Gr.setAttributeNS(null,"fill","#000000"),Gr.setAttributeNS(null,"opacity","0.25"),Gr.setAttributeNS(null,"cx","5.5"),Gr.setAttributeNS(null,"cy","5.5"),Gr.setAttributeNS(null,"r","5.4999962");var ia=r.createNS("http://www.w3.org/2000/svg","circle");ia.setAttributeNS(null,"fill","#FFFFFF"),ia.setAttributeNS(null,"cx","5.5"),ia.setAttributeNS(null,"cy","5.5"),ia.setAttributeNS(null,"r","5.4999962"),Qr.appendChild(Gr),Qr.appendChild(ia),Et.appendChild(Ht),Et.appendChild(dr),Et.appendChild(Vr),Et.appendChild(aa),Et.appendChild(Qr),xe.appendChild(Et),xe.setAttributeNS(null,"height",We*this._scale+"px"),xe.setAttributeNS(null,"width",He*this._scale+"px"),this._element.appendChild(xe),this._offset=e.Point.convert(ye&&ye.offset||[0,-14])}else this._element=ye.element,this._offset=e.Point.convert(ye&&ye.offset||[0,0]);this._element.classList.add("mapboxgl-marker"),this._element.addEventListener("dragstart",function(Ur){Ur.preventDefault()}),this._element.addEventListener("mousedown",function(Ur){Ur.preventDefault()}),rs(this._element,this._anchor,"marker"),this._popup=null}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this.remove(),this._map=te,te.getCanvasContainer().appendChild(this._element),te.on("move",this._update),te.on("moveend",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this},K.prototype.remove=function(){return this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),r.remove(this._element),this._popup&&this._popup.remove(),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this},K.prototype.getElement=function(){return this._element},K.prototype.setPopup=function(te){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),te){if(!("offset"in te.options)){var xe=38.1,We=13.5,He=Math.sqrt(Math.pow(We,2)/2);te.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-xe],"bottom-left":[He,(xe-We+He)*-1],"bottom-right":[-He,(xe-We+He)*-1],left:[We,(xe-We)*-1],right:[-We,(xe-We)*-1]}:this._offset}this._popup=te,this._lngLat&&this._popup.setLngLat(this._lngLat),this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this},K.prototype._onKeyPress=function(te){var xe=te.code,We=te.charCode||te.keyCode;(xe==="Space"||xe==="Enter"||We===32||We===13)&&this.togglePopup()},K.prototype._onMapClick=function(te){var xe=te.originalEvent.target,We=this._element;this._popup&&(xe===We||We.contains(xe))&&this.togglePopup()},K.prototype.getPopup=function(){return this._popup},K.prototype.togglePopup=function(){var te=this._popup;if(te)te.isOpen()?te.remove():te.addTo(this._map);else return this;return this},K.prototype._update=function(te){if(this._map){this._map.transform.renderWorldCopies&&(this._lngLat=jn(this._lngLat,this._pos,this._map.transform)),this._pos=this._map.project(this._lngLat)._add(this._offset);var xe="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?xe="rotateZ("+this._rotation+"deg)":this._rotationAlignment==="map"&&(xe="rotateZ("+(this._rotation-this._map.getBearing())+"deg)");var We="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?We="rotateX(0deg)":this._pitchAlignment==="map"&&(We="rotateX("+this._map.getPitch()+"deg)"),(!te||te.type==="moveend")&&(this._pos=this._pos.round()),r.setTransform(this._element,Ro[this._anchor]+" translate("+this._pos.x+"px, "+this._pos.y+"px) "+We+" "+xe)}},K.prototype.getOffset=function(){return this._offset},K.prototype.setOffset=function(te){return this._offset=e.Point.convert(te),this._update(),this},K.prototype._onMove=function(te){if(!this._isDragging){var xe=this._clickTolerance||this._map._clickTolerance;this._isDragging=te.point.dist(this._pointerdownPos)>=xe}this._isDragging&&(this._pos=te.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new e.Event("dragstart"))),this.fire(new e.Event("drag")))},K.prototype._onUp=function(){this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new e.Event("dragend")),this._state="inactive"},K.prototype._addDragHandler=function(te){this._element.contains(te.originalEvent.target)&&(te.preventDefault(),this._positionDelta=te.point.sub(this._pos).add(this._offset),this._pointerdownPos=te.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},K.prototype.setDraggable=function(te){return this._draggable=!!te,this._map&&(te?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this},K.prototype.isDraggable=function(){return this._draggable},K.prototype.setRotation=function(te){return this._rotation=te||0,this._update(),this},K.prototype.getRotation=function(){return this._rotation},K.prototype.setRotationAlignment=function(te){return this._rotationAlignment=te||"auto",this._update(),this},K.prototype.getRotationAlignment=function(){return this._rotationAlignment},K.prototype.setPitchAlignment=function(te){return this._pitchAlignment=te&&te!=="auto"?te:this._rotationAlignment,this._update(),this},K.prototype.getPitchAlignment=function(){return this._pitchAlignment},K}(e.Evented),oo={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},Xo;function os(ve){Xo!==void 0?ve(Xo):e.window.navigator.permissions!==void 0?e.window.navigator.permissions.query({name:"geolocation"}).then(function(K){Xo=K.state!=="denied",ve(Xo)}):(Xo=!!e.window.navigator.geolocation,ve(Xo))}var As=0,$l=!1,Uc=function(ve){function K(ye){ve.call(this),this.options=e.extend({},oo,ye),e.bindAll(["_onSuccess","_onError","_onZoom","_finish","_setupUI","_updateCamera","_updateMarker"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.onAdd=function(te){return this._map=te,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-group"),os(this._setupUI),this._container},K.prototype.onRemove=function(){this._geolocationWatchID!==void 0&&(e.window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),r.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,As=0,$l=!1},K.prototype._isOutOfMapMaxBounds=function(te){var xe=this._map.getMaxBounds(),We=te.coords;return xe&&(We.longitude<xe.getWest()||We.longitude>xe.getEast()||We.latitude<xe.getSouth()||We.latitude>xe.getNorth())},K.prototype._setErrorState=function(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting");break}},K.prototype._onSuccess=function(te){if(this._map){if(this._isOutOfMapMaxBounds(te)){this._setErrorState(),this.fire(new e.Event("outofmaxbounds",te)),this._updateMarker(),this._finish();return}if(this.options.trackUserLocation)switch(this._lastKnownPosition=te,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(te),(!this.options.trackUserLocation||this._watchState==="ACTIVE_LOCK")&&this._updateCamera(te),this.options.showUserLocation&&this._dotElement.classList.remove("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("geolocate",te)),this._finish()}},K.prototype._updateCamera=function(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude),We=te.coords.accuracy,He=this._map.getBearing(),st=e.extend({bearing:He},this.options.fitBoundsOptions);this._map.fitBounds(xe.toBounds(We),st,{geolocateSource:!0})},K.prototype._updateMarker=function(te){if(te){var xe=new e.LngLat(te.coords.longitude,te.coords.latitude);this._accuracyCircleMarker.setLngLat(xe).addTo(this._map),this._userLocationDotMarker.setLngLat(xe).addTo(this._map),this._accuracy=te.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},K.prototype._updateCircleRadius=function(){var te=this._map._container.clientHeight/2,xe=this._map.unproject([0,te]),We=this._map.unproject([1,te]),He=xe.distanceTo(We),st=Math.ceil(2*this._accuracy/He);this._circleElement.style.width=st+"px",this._circleElement.style.height=st+"px"},K.prototype._onZoom=function(){this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},K.prototype._onError=function(te){if(this._map){if(this.options.trackUserLocation)if(te.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;var xe=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=xe,this._geolocateButton.setAttribute("aria-label",xe),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(te.code===3&&$l)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("mapboxgl-user-location-dot-stale"),this.fire(new e.Event("error",te)),this._finish()}},K.prototype._finish=function(){this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},K.prototype._setupUI=function(te){var xe=this;if(this._container.addEventListener("contextmenu",function(st){return st.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",te===!1){e.warnOnce("Geolocation support is not available so the GeolocateControl will be disabled.");var We=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=We,this._geolocateButton.setAttribute("aria-label",We)}else{var He=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.title=He,this._geolocateButton.setAttribute("aria-label",He)}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 wn(this._dotElement),this._circleElement=r.create("div","mapboxgl-user-location-accuracy-circle"),this._accuracyCircleMarker=new wn({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(st){var Et=st.originalEvent&&st.originalEvent.type==="resize";!st.geolocateSource&&xe._watchState==="ACTIVE_LOCK"&&!Et&&(xe._watchState="BACKGROUND",xe._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background"),xe._geolocateButton.classList.remove("mapboxgl-ctrl-geolocate-active"),xe.fire(new e.Event("trackuserlocationend")))})},K.prototype.trigger=function(){if(!this._setup)return e.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 e.Event("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":As--,$l=!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 e.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 e.Event("trackuserlocationstart"));break}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active");break;case"ACTIVE_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-active-error");break;case"BACKGROUND":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background");break;case"BACKGROUND_ERROR":this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-background-error");break}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){this._geolocateButton.classList.add("mapboxgl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),As++;var te;As>1?(te={maximumAge:6e5,timeout:0},$l=!0):(te=this.options.positionOptions,$l=!1),this._geolocationWatchID=e.window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,te)}}else e.window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0},K.prototype._clearWatch=function(){e.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)},K}(e.Evented),Ws={maxWidth:100,unit:"metric"},jc=function(K){this.options=e.extend({},Ws,K),e.bindAll(["_onMove","setUnit"],this)};jc.prototype.getDefaultPosition=function(){return"bottom-left"},jc.prototype._onMove=function(){Ol(this._map,this._container,this.options)},jc.prototype.onAdd=function(K){return this._map=K,this._container=r.create("div","mapboxgl-ctrl mapboxgl-ctrl-scale",K.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container},jc.prototype.onRemove=function(){r.remove(this._container),this._map.off("move",this._onMove),this._map=void 0},jc.prototype.setUnit=function(K){this.options.unit=K,Ol(this._map,this._container,this.options)};function Ol(ve,K,ye){var te=ye&&ye.maxWidth||100,xe=ve._container.clientHeight/2,We=ve.unproject([0,xe]),He=ve.unproject([te,xe]),st=We.distanceTo(He);if(ye&&ye.unit==="imperial"){var Et=3.2808*st;if(Et>5280){var Ht=Et/5280;vc(K,te,Ht,ve._getUIString("ScaleControl.Miles"))}else vc(K,te,Et,ve._getUIString("ScaleControl.Feet"))}else if(ye&&ye.unit==="nautical"){var yr=st/1852;vc(K,te,yr,ve._getUIString("ScaleControl.NauticalMiles"))}else st>=1e3?vc(K,te,st/1e3,ve._getUIString("ScaleControl.Kilometers")):vc(K,te,st,ve._getUIString("ScaleControl.Meters"))}function vc(ve,K,ye,te){var xe=rf(ye),We=xe/ye;ve.style.width=K*We+"px",ve.innerHTML=xe+"&nbsp;"+te}function mc(ve){var K=Math.pow(10,Math.ceil(-Math.log(ve)/Math.LN10));return Math.round(ve*K)/K}function rf(ve){var K=Math.pow(10,(""+Math.floor(ve)).length-1),ye=ve/K;return ye=ye>=10?10:ye>=5?5:ye>=3?3:ye>=2?2:ye>=1?1:mc(ye),K*ye}var Yl=function(K){this._fullscreen=!1,K&&K.container&&(K.container instanceof e.window.HTMLElement?this._container=K.container:e.warnOnce("Full screen control 'container' must be a DOM element.")),e.bindAll(["_onClickFullscreen","_changeIcon"],this),"onfullscreenchange"in e.window.document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in e.window.document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in e.window.document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in e.window.document&&(this._fullscreenchange="MSFullscreenChange")};Yl.prototype.onAdd=function(K){return this._map=K,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",e.warnOnce("This device does not support fullscreen mode.")),this._controlContainer},Yl.prototype.onRemove=function(){r.remove(this._controlContainer),this._map=null,e.window.document.removeEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._checkFullscreenSupport=function(){return!!(e.window.document.fullscreenEnabled||e.window.document.mozFullScreenEnabled||e.window.document.msFullscreenEnabled||e.window.document.webkitFullscreenEnabled)},Yl.prototype._setupUI=function(){var K=this._fullscreenButton=r.create("button","mapboxgl-ctrl-fullscreen",this._controlContainer);r.create("span","mapboxgl-ctrl-icon",K).setAttribute("aria-hidden",!0),K.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),e.window.document.addEventListener(this._fullscreenchange,this._changeIcon)},Yl.prototype._updateTitle=function(){var K=this._getTitle();this._fullscreenButton.setAttribute("aria-label",K),this._fullscreenButton.title=K},Yl.prototype._getTitle=function(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")},Yl.prototype._isFullscreen=function(){return this._fullscreen},Yl.prototype._changeIcon=function(){var K=e.window.document.fullscreenElement||e.window.document.mozFullScreenElement||e.window.document.webkitFullscreenElement||e.window.document.msFullscreenElement;K===this._container!==this._fullscreen&&(this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("mapboxgl-ctrl-shrink"),this._fullscreenButton.classList.toggle("mapboxgl-ctrl-fullscreen"),this._updateTitle())},Yl.prototype._onClickFullscreen=function(){this._isFullscreen()?e.window.document.exitFullscreen?e.window.document.exitFullscreen():e.window.document.mozCancelFullScreen?e.window.document.mozCancelFullScreen():e.window.document.msExitFullscreen?e.window.document.msExitFullscreen():e.window.document.webkitCancelFullScreen&&e.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 Mc={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px"},Vc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", "),Ds=function(ve){function K(ye){ve.call(this),this.options=e.extend(Object.create(Mc),ye),e.bindAll(["_update","_onClose","remove","_onMouseMove","_onMouseUp","_onDrag"],this)}return ve&&(K.__proto__=ve),K.prototype=Object.create(ve&&ve.prototype),K.prototype.constructor=K,K.prototype.addTo=function(te){return this._map&&this.remove(),this._map=te,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("mapboxgl-popup-track-pointer"),this._map._canvasContainer.classList.add("mapboxgl-track-pointer")):this._map.on("move",this._update),this.fire(new e.Event("open")),this},K.prototype.isOpen=function(){return!!this._map},K.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 e.Event("close")),this},K.prototype.getLngLat=function(){return this._lngLat},K.prototype.setLngLat=function(te){return this._lngLat=e.LngLat.convert(te),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},K.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},K.prototype.getElement=function(){return this._container},K.prototype.setText=function(te){return this.setDOMContent(e.window.document.createTextNode(te))},K.prototype.setHTML=function(te){var xe=e.window.document.createDocumentFragment(),We=e.window.document.createElement("body"),He;for(We.innerHTML=te;He=We.firstChild,!!He;)xe.appendChild(He);return this.setDOMContent(xe)},K.prototype.getMaxWidth=function(){return this._container&&this._container.style.maxWidth},K.prototype.setMaxWidth=function(te){return this.options.maxWidth=te,this._update(),this},K.prototype.setDOMContent=function(te){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=r.create("div","mapboxgl-popup-content",this._container);return this._content.appendChild(te),this._createCloseButton(),this._update(),this._focusFirstElement(),this},K.prototype.addClassName=function(te){this._container&&this._container.classList.add(te)},K.prototype.removeClassName=function(te){this._container&&this._container.classList.remove(te)},K.prototype.setOffset=function(te){return this.options.offset=te,this._update(),this},K.prototype.toggleClassName=function(te){if(this._container)return this._container.classList.toggle(te)},K.prototype._createCloseButton=function(){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="&#215;",this._closeButton.addEventListener("click",this._onClose))},K.prototype._onMouseUp=function(te){this._update(te.point)},K.prototype._onMouseMove=function(te){this._update(te.point)},K.prototype._onDrag=function(te){this._update(te.point)},K.prototype._update=function(te){var xe=this,We=this._lngLat||this._trackPointer;if(!(!this._map||!We||!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(qt){return xe._container.classList.add(qt)}),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=jn(this._lngLat,this._pos,this._map.transform)),!(this._trackPointer&&!te))){var He=this._pos=this._trackPointer&&te?te:this._map.project(this._lngLat),st=this.options.anchor,Et=af(this.options.offset);if(!st){var Ht=this._container.offsetWidth,yr=this._container.offsetHeight,Ir;He.y+Et.bottom.y<yr?Ir=["top"]:He.y>this._map.transform.height-yr?Ir=["bottom"]:Ir=[],He.x<Ht/2?Ir.push("left"):He.x>this._map.transform.width-Ht/2&&Ir.push("right"),Ir.length===0?st="bottom":st=Ir.join("-")}var wr=He.add(Et[st]).round();r.setTransform(this._container,Ro[st]+" translate("+wr.x+"px,"+wr.y+"px)"),rs(this._container,st,"popup")}},K.prototype._focusFirstElement=function(){if(!(!this.options.focusAfterOpen||!this._container)){var te=this._container.querySelector(Vc);te&&te.focus()}},K.prototype._onClose=function(){this.remove()},K}(e.Evented);function af(ve){if(ve)if(typeof ve=="number"){var K=Math.round(Math.sqrt(.5*Math.pow(ve,2)));return{center:new e.Point(0,0),top:new e.Point(0,ve),"top-left":new e.Point(K,K),"top-right":new e.Point(-K,K),bottom:new e.Point(0,-ve),"bottom-left":new e.Point(K,-K),"bottom-right":new e.Point(-K,-K),left:new e.Point(ve,0),right:new e.Point(-ve,0)}}else if(ve instanceof e.Point||Array.isArray(ve)){var ye=e.Point.convert(ve);return{center:ye,top:ye,"top-left":ye,"top-right":ye,bottom:ye,"bottom-left":ye,"bottom-right":ye,left:ye,right:ye}}else return{center:e.Point.convert(ve.center||[0,0]),top:e.Point.convert(ve.top||[0,0]),"top-left":e.Point.convert(ve["top-left"]||[0,0]),"top-right":e.Point.convert(ve["top-right"]||[0,0]),bottom:e.Point.convert(ve.bottom||[0,0]),"bottom-left":e.Point.convert(ve["bottom-left"]||[0,0]),"bottom-right":e.Point.convert(ve["bottom-right"]||[0,0]),left:e.Point.convert(ve.left||[0,0]),right:e.Point.convert(ve.right||[0,0])};else return af(new e.Point(0,0))}var Cs={version:e.version,supported:t,setRTLTextPlugin:e.setRTLTextPlugin,getRTLTextPluginStatus:e.getRTLTextPluginStatus,Map:Ui,NavigationControl:xn,GeolocateControl:Uc,AttributionControl:nn,ScaleControl:jc,FullscreenControl:Yl,Popup:Ds,Marker:wn,Style:Jl,LngLat:e.LngLat,LngLatBounds:e.LngLatBounds,Point:e.Point,MercatorCoordinate:e.MercatorCoordinate,Evented:e.Evented,config:e.config,prewarm:Er,clearPrewarmedResources:kr,get accessToken(){return e.config.ACCESS_TOKEN},set accessToken(ve){e.config.ACCESS_TOKEN=ve},get baseApiUrl(){return e.config.API_URL},set baseApiUrl(ve){e.config.API_URL=ve},get workerCount(){return ya.workerCount},set workerCount(ve){ya.workerCount=ve},get maxParallelImageRequests(){return e.config.MAX_PARALLEL_IMAGE_REQUESTS},set maxParallelImageRequests(ve){e.config.MAX_PARALLEL_IMAGE_REQUESTS=ve},clearStorage:function(K){e.clearTileCache(K)},workerUrl:""};return Cs}),A})}}),$V=Ye({"src/plots/mapbox/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=wk(),M=am();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapboxLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapboxLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s<n.length;s++){var c=n[s].id;if(typeof c=="string"&&c.indexOf(M.traceLayerPrefix)===0){i=c;break}}return i},t.updateLayer=function(i){var n=this.subplot,s=o(i),c=this.lookupBelow(),h=this.findFollowingMapboxLayerId(c);this.removeLayer(),r(i)&&n.addLayer({id:this.idLayer,source:this.idSource,"source-layer":i.sourcelayer||"",type:i.type,minzoom:i.minzoom,maxzoom:i.maxzoom,layout:s.layout,paint:s.paint},h),this.layerType=i.type,this.below=c},t.updateStyle=function(i){if(r(i)){var n=o(i);this.subplot.setOptions(this.idLayer,"setLayoutProperty",n.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",n.paint)}},t.removeLayer=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer)},t.dispose=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer),i.getSource(this.idSource)&&i.removeSource(this.idSource)};function r(i){if(!i.visible)return!1;var n=i.source;if(Array.isArray(n)&&n.length>0){for(var s=0;s<n.length;s++)if(typeof n[s]!="string"||n[s].length===0)return!1;return!0}return g.isPlainObject(n)||typeof n=="string"&&n.length>0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),QV=Ye({"src/plots/mapbox/mapbox.js"(X,H){"use strict";var g=Tk(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=am(),p=$V();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.accessToken=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y=b[u.id];u.map&&y.accesstoken!==u.accessToken&&(u.map.remove(),u.map=null,u.styleObj=null,u.traceHash={},u.layerList=[]);var f;u.map?f=new Promise(function(P,L){u.updateMap(m,b,P,L)}):f=new Promise(function(P,L){u.createMap(m,b,P,L)}),d.push(f)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style,b);y.accessToken=f.accesstoken;var L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0}));F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var B=[];B.push(new Promise(function(O){F.once("load",O)})),B=B.concat(A.fetchTraceGeoData(m)),Promise.all(B).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style,b);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y<m.length;y++){var z=m[y][0].trace,F=z._module;typeof z.below=="string"?f=z.below:F.getBelow&&(f=F.getBelow(z,this)),f===""&&(L=!0),P["trace-"+z.uid]=f||""}for(y=0;y<u.length;y++){var B=u[y];typeof B.below=="string"?f=B.below:L?f="traces":f="",P["layout-"+y]=f}var O={},I,N;for(I in P)f=P[I],O[f]?O[f].push(I):O[f]=[I];for(f in O){var U=O[f];if(U.length>1)for(y=0;y<U.length;y++)I=U[y],I.indexOf("trace-")===0?(N=I.split("trace-")[1],this.traceHash[N]&&(this.traceHash[N].below=null)):I.indexOf("layout-")===0&&(N=I.split("layout-")[1],this.layerList[N]&&(this.layerList[N].below=null))}};var _={choroplethmapbox:0,densitymapbox:1,scattermapbox:2};l.updateData=function(m){var b=this.traceHash,d,u,y,f,P=m.slice().sort(function(O,I){return _[O[0].trace.type]-_[I[0].trace.type]});for(y=0;y<P.length;y++){var L=P[y];u=L[0].trace,d=b[u.uid];var z=!1;d&&(d.type===u.type?(d.update(L),z=!0):d.dispose()),!z&&u._module&&(b[u.uid]=u._module.plot(this,L))}var F=Object.keys(b);e:for(y=0;y<F.length;y++){var B=F[y];for(f=0;f<m.length;f++)if(u=m[f][0].trace,B===u.uid)continue e;d=b[B],d.dispose(),delete b[B]}},l.updateLayout=function(m){var b=this.map,d=m[this.id];!this.dragging&&!this.wheeling&&(b.setCenter(E(d.center)),b.setZoom(d.zoom),b.setBearing(d.bearing),b.setPitch(d.pitch)),this.updateLayers(m),this.updateFramework(m),this.updateFx(m),this.map.resize(),this.gd._context._scrollZoom.mapbox?b.scrollZoom.enable():b.scrollZoom.disable()},l.resolveOnRender=function(m){var b=this.map;b.on("render",function d(){b.loaded()&&(b.off("render",d),setTimeout(m,10))})},l.rejectOnError=function(m){var b=this.map;function d(){m(new Error(v.mapOnErrorMsg))}b.once("error",d),b.once("style.error",d),b.once("source.error",d),b.once("tile.error",d),b.once("layer.error",d)},l.createFramework=function(m){var b=this,d=b.div=document.createElement("div");d.id=b.uid,d.style.position="absolute",b.container.appendChild(d),b.xaxis={_id:"x",c2p:function(u){return b.project(u).x}},b.yaxis={_id:"y",c2p:function(u){return b.project(u).y}},b.updateFramework(m),b.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},e.setConvert(b.mockAxis,m)},l.initFx=function(m,b){var d=this,u=d.gd,y=d.map;y.on("moveend",function(L){if(d.map){var z=u._fullLayout;if(L.originalEvent||d.wheeling){var F=z[d.id];M.call("_storeDirectGUIEdit",u.layout,z._preGUI,d.getViewEdits(F));var B=d.getView();F._input.center=F.center=B.center,F._input.zoom=F.zoom=B.zoom,F._input.bearing=F.bearing=B.bearing,F._input.pitch=F.pitch=B.pitch,u.emit("plotly_relayout",d.getViewEditsWithDerived(B))}L.originalEvent&&L.originalEvent.type==="mouseup"?d.dragging=!1:d.wheeling&&(d.wheeling=!1),z._rehover&&z._rehover()}}),y.on("wheel",function(){d.wheeling=!0}),y.on("mousemove",function(L){var z=d.div.getBoundingClientRect(),F=[L.originalEvent.offsetX,L.originalEvent.offsetY];L.target.getBoundingClientRect=function(){return z},d.xaxis.p2c=function(){return y.unproject(F).lng},d.yaxis.p2c=function(){return y.unproject(F).lat},u._fullLayout._rehover=function(){u._fullLayout._hoversubplot===d.id&&u._fullLayout[d.id]&&r.hover(u,L,d.id)},r.hover(u,L,d.id),u._fullLayout._hoversubplot=d.id});function f(){r.loneUnhover(b._hoverlayer)}y.on("dragstart",function(){d.dragging=!0,f()}),y.on("zoomstart",f),y.on("mouseout",function(){u._fullLayout._hoversubplot=null});function P(){var L=d.getView();u.emit("plotly_relayouting",d.getViewEditsWithDerived(L))}y.on("drag",P),y.on("zoom",P),y.on("dblclick",function(){var L=u._fullLayout[d.id];M.call("_storeDirectGUIEdit",u.layout,u._fullLayout._preGUI,d.getViewEdits(L));var z=d.viewInitial;y.setCenter(E(z.center)),y.setZoom(z.zoom),y.setBearing(z.bearing),y.setPitch(z.pitch);var F=d.getView();L._input.center=L.center=F.center,L._input.zoom=L.zoom=F.zoom,L._input.bearing=L.bearing=F.bearing,L._input.pitch=L.pitch=F.pitch,u.emit("plotly_doubleclick",null),u.emit("plotly_relayout",d.getViewEditsWithDerived(F))}),d.clearOutline=function(){c(d.dragOptions),s(d.dragOptions.gd)},d.onClickInPanFn=function(L){return function(z){var F=u._fullLayout.clickmode;F.indexOf("select")>-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;y<u.length;y++)u[y].dispose();for(u=this.layerList=[],y=0;y<d.length;y++)u.push(p(this,y,d[y]))}else for(y=0;y<d.length;y++)u[y].update(d[y])},l.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},l.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},l.setOptions=function(m,b,d){for(var u in d)this.map[b](m,u,d[u])},l.getMapLayers=function(){return this.map.getStyle().layers},l.addLayer=function(m,b){var d=this.map;if(typeof b=="string"){if(b===""){d.addLayer(m,b);return}for(var u=this.getMapLayers(),y=0;y<u.length;y++)if(b===u[y].id){d.addLayer(m,b);return}x.warn(["Trying to add layer with *below* value",b,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}d.addLayer(m)},l.project=function(m){return this.map.project(new g.LngLat(m[0],m[1]))},l.getView=function(){var m=this.map,b=m.getCenter(),d=b.lng,u=b.lat,y={lon:d,lat:u},f=m.getCanvas(),P=parseInt(f.style.width),L=parseInt(f.style.height);return{center:y,zoom:m.getZoom(),bearing:m.getBearing(),pitch:m.getPitch(),_derived:{coordinates:[m.unproject([0,0]).toArray(),m.unproject([P,0]).toArray(),m.unproject([P,L]).toArray(),m.unproject([0,L]).toArray()]}}},l.getViewEdits=function(m){for(var b=this.id,d=["center","zoom","bearing","pitch"],u={},y=0;y<d.length;y++){var f=d[y];u[b+"."+f]=m[f]}return u},l.getViewEditsWithDerived=function(m){var b=this.id,d=this.getViewEdits(m);return d[b+"._derived"]=m._derived,d};function w(m,b){var d={};if(x.isPlainObject(m))d.id=m.id,d.style=m;else if(typeof m=="string")if(d.id=m,v.styleValuesMapbox.indexOf(m)!==-1)d.style=S(m);else if(v.stylesNonMapbox[m]){d.style=v.stylesNonMapbox[m];var u=d.style.sources["plotly-"+m],y=u?u.tiles:void 0;y&&y[0]&&y[0].slice(-9)==="?api_key="&&(y[0]+=b._mapboxAccessToken)}else d.style=m;else d.id=v.styleValueDflt,d.style=S(v.styleValueDflt);return d.transition={duration:0,delay:0},d}function S(m){return v.styleUrlPrefix+m+"-"+v.styleUrlSuffix}function E(m){return[m.lon,m.lat]}H.exports=T}}),eq=Ye({"src/plots/mapbox/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=up(),M=Sx();H.exports=function(o,a,i){x(o,a,i,{type:"mapbox",attributes:M,handleDefaults:e,partition:"y",accessToken:a._mapboxAccessToken})};function e(r,o,a,i){a("accesstoken",i.accessToken),a("style"),a("center.lon"),a("center.lat"),a("zoom"),a("bearing"),a("pitch");var n=a("bounds.west"),s=a("bounds.east"),c=a("bounds.south"),h=a("bounds.north");(n===void 0||s===void 0||c===void 0||h===void 0)&&delete o.bounds,A(r,o,{name:"layers",handleItemDefaults:t}),o._input=r}function t(r,o){function a(v,p){return g.coerce(r,o,M.layers,v,p)}var i=a("visible");if(i){var n=a("sourcetype"),s=n==="raster"||n==="image";a("source"),a("sourceattribution"),n==="vector"&&a("sourcelayer"),n==="image"&&a("coordinates");var c;s&&(c="raster");var h=a("type",c);s&&h!=="raster"&&(h=o.type="raster",g.log("Source types *raster* and *image* must drawn *raster* layer type.")),a("below"),a("color"),a("opacity"),a("minzoom"),a("maxzoom"),h==="circle"&&a("circle.radius"),h==="line"&&(a("line.width"),a("line.dash")),h==="fill"&&a("fill.outlinecolor"),h==="symbol"&&(a("symbol.icon"),a("symbol.iconsize"),a("symbol.text"),g.coerceFont(a,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),a("symbol.textposition"),a("symbol.placement"))}}}}),ST=Ye({"src/plots/mapbox/index.js"(X){"use strict";var H=Tk(),g=ta(),x=g.strTranslate,A=g.strScale,M=jh().getSubplotCalcData,e=vd(),t=_n(),r=Bo(),o=jl(),a=QV(),i="mapbox",n=X.constants=am();X.name=i,X.attr="subplot",X.idRoot=i,X.idRegex=X.attrRegex=g.counterRegex(i);var s=["mapbox subplots and traces are deprecated!","Please consider switching to `map` subplots and traces.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");X.attributes={subplot:{valType:"subplotid",dflt:"mapbox",editType:"calc"}},X.layoutAttributes=Sx(),X.supplyLayoutDefaults=eq();var c=!0;X.plot=function(T){c&&(c=!1,g.warn(s));var l=T._fullLayout,_=T.calcdata,w=l._subplots[i];if(H.version!==n.requiredVersion)throw new Error(n.wrongVersionErrorMsg);var S=h(T,w);H.accessToken=S;for(var E=0;E<w.length;E++){var m=w[E],b=M(_,i,m),d=l[m],u=d._subplot;u||(u=new a(T,m),l[m]._subplot=u),u.viewInitial||(u.viewInitial={center:g.extendFlat({},d.center),zoom:d.zoom,bearing:d.bearing,pitch:d.pitch}),u.plot(b,l,T._promises)}},X.clean=function(p,T,l,_){for(var w=_._subplots[i]||[],S=0;S<w.length;S++){var E=w[S];!T[E]&&_[E]._subplot&&_[E]._subplot.destroy()}},X.toSVG=function(p){for(var T=p._fullLayout,l=T._subplots[i],_=T._size,w=0;w<l.length;w++){var S=T[l[w]],E=S.domain,m=S._subplot,b=m.toImage("png"),d=T._glimages.append("svg:image");d.attr({xmlns:e.svg,"xlink:href":b,x:_.l+_.w*E.x[0],y:_.t+_.h*(1-E.y[1]),width:_.w*(E.x[1]-E.x[0]),height:_.h*(E.y[1]-E.y[0]),preserveAspectRatio:"none"});var u=t.select(S._subplot.div),y=u.select(".mapboxgl-ctrl-logo").node().offsetParent===null;if(!y){var f=T._glimages.append("g");f.attr("transform",x(_.l+_.w*E.x[0]+10,_.t+_.h*(1-E.y[0])-31)),f.append("path").attr("d",n.mapboxLogo.path0).style({opacity:.9,fill:"#ffffff","enable-background":"new"}),f.append("path").attr("d",n.mapboxLogo.path1).style("opacity",.35).style("enable-background","new"),f.append("path").attr("d",n.mapboxLogo.path2).style("opacity",.35).style("enable-background","new"),f.append("polygon").attr("points",n.mapboxLogo.polygon).style({opacity:.9,fill:"#ffffff","enable-background":"new"})}var P=u.select(".mapboxgl-ctrl-attrib").text().replace("Improve this map",""),L=T._glimages.append("g"),z=L.append("text");z.text(P).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":P});var F=r.bBox(z.node()),B=_.w*(E.x[1]-E.x[0]);if(F.width>B/2){var O=P.split("|").join("<br>");z.text(O).attr("data-unformatted",O).call(o.convertToTspans,p),F=r.bBox(z.node())}z.attr("transform",x(-3,-F.height+8)),L.insert("rect",".static-attribution").attr({x:-F.width-6,y:-F.height-3,width:F.width+6,height:F.height+3,fill:"rgba(255, 255, 255, 0.75)"});var I=1;F.width+6>B&&(I=B/(F.width+6));var N=[_.l+_.w*E.x[1],_.t+_.h*(1-E.y[0])];L.attr("transform",x(N[0],N[1])+A(I))}};function h(p,T){var l=p._fullLayout,_=p._context;if(_.mapboxAccessToken==="")return"";for(var w=[],S=[],E=!1,m=!1,b=0;b<T.length;b++){var d=l[T[b]],u=d.accesstoken;v(d.style)&&(u?g.pushUnique(w,u):(v(d._input.style)&&(g.error("Uses Mapbox map style, but did not set an access token."),E=!0),m=!0)),u&&g.pushUnique(S,u)}if(m){var y=E?n.noAccessTokenErrorMsg:n.missingStyleErrorMsg;throw g.error(y),new Error(y)}return w.length?(w.length>1&&g.warn(n.multipleTokensErrorMsg),w[0]):(S.length&&g.log(["Listed mapbox access token(s)",S.join(","),"but did not use a Mapbox map style, ignoring token(s)."].join(" ")),"")}function v(p){return typeof p=="string"&&(n.styleValuesMapbox.indexOf(p)!==-1||p.indexOf("mapbox://")===0||p.indexOf("stamen")===0)}X.updateFx=function(p){for(var T=p._fullLayout,l=T._subplots[i],_=0;_<l.length;_++){var w=T[l[_]]._subplot;w.updateFx(T)}}}}),tq=Ye({"src/traces/scattermapbox/index.js"(X,H){"use strict";var g=["*scattermapbox* trace is deprecated!","Please consider switching to the *scattermap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:TT(),supplyDefaults:ZV(),colorbar:cp(),formatLabels:bk(),calc:aT(),plot:YV(),hoverPoints:AT().hoverPoints,eventData:KV(),selectPoints:JV(),styleOnSelect:function(x,A){if(A){var M=A[0].trace;M._glTrace.update(A)}},moduleType:"trace",name:"scattermapbox",basePlotModule:ST(),categories:["mapbox","gl","symbols","showLegend","scatter-like"],meta:{}}}}),rq=Ye({"lib/scattermapbox.js"(X,H){"use strict";H.exports=tq()}}),Ak=Ye({"src/traces/choroplethmapbox/attributes.js"(X,H){"use strict";var g=M1(),x=tu(),A=xs().hovertemplateAttrs,M=Pl(),e=Oo().extendFlat;H.exports=e({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:e({},g.featureidkey,{}),below:{valType:"string",editType:"plot"},text:g.text,hovertext:g.hovertext,marker:{line:{color:e({},g.marker.line.color,{editType:"plot"}),width:e({},g.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:e({},g.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:e({},g.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:e({},g.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:g.hoverinfo,hovertemplate:A({},{keys:["properties"]}),showlegend:e({},M.showlegend,{dflt:!1})},x("",{cLetter:"z",editTypeOverride:"calc"}))}}),aq=Ye({"src/traces/choroplethmapbox/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Ak();H.exports=function(e,t,r,o){function a(h,v){return g.coerce(e,t,A,h,v)}var i=a("locations"),n=a("z"),s=a("geojson");if(!g.isArrayOrTypedArray(i)||!i.length||!g.isArrayOrTypedArray(n)||!n.length||!(typeof s=="string"&&s!==""||g.isPlainObject(s))){t.visible=!1;return}a("featureidkey"),t._length=Math.min(i.length,n.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),Sk=Ye({"src/traces/choroplethmapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Su(),M=Bo(),e=dg().makeBlank,t=vg();function r(a){var i=a[0].trace,n=i.visible===!0&&i._length!==0,s={layout:{visibility:"none"},paint:{}},c={layout:{visibility:"none"},paint:{}},h=i._opts={fill:s,line:c,geojson:e()};if(!n)return h;var v=t.extractTraceFeature(a);if(!v)return h;var p=A.makeColorScaleFuncFromTrace(i),T=i.marker,l=T.line||{},_;x.isArrayOrTypedArray(T.opacity)&&(_=function(y){var f=y.mo;return g(f)?+x.constrain(f,0,1):0});var w;x.isArrayOrTypedArray(l.color)&&(w=function(y){return y.mlc});var S;x.isArrayOrTypedArray(l.width)&&(S=function(y){return y.mlw});for(var E=0;E<a.length;E++){var m=a[E],b=m.fOut;if(b){var d=b.properties;d.fc=p(m.z),_&&(d.mo=_(m)),w&&(d.mlc=w(m)),S&&(d.mlw=S(m)),m.ct=d.ct,m._polygons=t.feature2polygons(b)}}var u=_?{type:"identity",property:"mo"}:T.opacity;return x.extendFlat(s.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":u}),x.extendFlat(c.paint,{"line-color":w?{type:"identity",property:"mlc"}:l.color,"line-width":S?{type:"identity",property:"mlw"}:l.width,"line-opacity":u}),s.layout.visibility="visible",c.layout.visibility="visible",h.geojson={type:"FeatureCollection",features:v},o(a),h}function o(a){var i=a[0].trace,n=i._opts,s;if(i.selectedpoints){for(var c=M.makeSelectedPointStyleFns(i),h=0;h<a.length;h++){var v=a[h];v.fOut&&(v.fOut.properties.mo2=c.selectedOpacityFn(v))}s={type:"identity",property:"mo2"}}else s=x.isArrayOrTypedArray(i.marker.opacity)?{type:"identity",property:"mo"}:i.marker.opacity;return x.extendFlat(n.fill.paint,{"fill-opacity":s}),x.extendFlat(n.line.paint,{"line-opacity":s}),n}H.exports={convert:r,convertOnSelect:o}}}),iq=Ye({"src/traces/choroplethmapbox/plot.js"(X,H){"use strict";var g=Sk().convert,x=Sk().convertOnSelect,A=am().traceLayerPrefix;function M(t,r){this.type="choroplethmapbox",this.subplot=t,this.uid=r,this.sourceId="source-"+r,this.layerList=[["fill",A+r+"-fill"],["line",A+r+"-line"]],this.below=null}var e=M.prototype;e.update=function(t){this._update(g(t)),t[0].trace._glTrace=this},e.updateOnSelect=function(t){this._update(x(t))},e._update=function(t){var r=this.subplot,o=this.layerList,a=r.belowLookup["trace-"+this.uid];r.map.getSource(this.sourceId).setData(t.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(t,a),this.below=a);for(var i=0;i<o.length;i++){var n=o[i],s=n[0],c=n[1],h=t[s];r.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&r.setOptions(c,"setPaintProperty",h.paint)}},e._addLayers=function(t,r){for(var o=this.subplot,a=this.layerList,i=this.sourceId,n=0;n<a.length;n++){var s=a[n],c=s[0],h=t[c];o.addLayer({type:c,id:s[1],source:i,layout:h.layout,paint:h.paint},r)}},e._removeLayers=function(){for(var t=this.subplot.map,r=this.layerList,o=r.length-1;o>=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),nq=Ye({"src/traces/choroplethmapbox/index.js"(X,H){"use strict";var g=["*choroplethmapbox* trace is deprecated!","Please consider switching to the *choroplethmap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Ak(),supplyDefaults:aq(),colorbar:ag(),calc:sT(),plot:iq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(x,A){if(A){var M=A[0].trace;M._glTrace.updateOnSelect(A)}},getBelow:function(x,A){for(var M=A.getMapLayers(),e=M.length-2;e>=0;e--){var t=M[e].id;if(typeof t=="string"&&t.indexOf("water")===0){for(var r=e+1;r<M.length;r++)if(t=M[r].id,typeof t=="string"&&t.indexOf("plotly-")===-1)return t}}},moduleType:"trace",name:"choroplethmapbox",basePlotModule:ST(),categories:["mapbox","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_mapbox"}}}}),oq=Ye({"lib/choroplethmapbox.js"(X,H){"use strict";H.exports=nq()}}),Mk=Ye({"src/traces/densitymapbox/attributes.js"(X,H){"use strict";var g=tu(),x=xs().hovertemplateAttrs,A=Pl(),M=TT(),e=Oo().extendFlat;H.exports=e({lon:M.lon,lat:M.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:M.text,hovertext:M.hovertext,hoverinfo:e({},A.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:x(),showlegend:e({},A.showlegend,{dflt:!1})},g("",{cLetter:"z",editTypeOverride:"calc"}))}}),sq=Ye({"src/traces/densitymapbox/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Mk();H.exports=function(e,t,r,o){function a(c,h){return g.coerce(e,t,A,c,h)}var i=a("lon")||[],n=a("lat")||[],s=Math.min(i.length,n.length);if(!s){t.visible=!1;return}t._length=s,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),x(e,t,o,a,{prefix:"",cLetter:"z"})}}}),lq=Ye({"src/traces/densitymapbox/calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=jp(),e=ta()._;H.exports=function(r,o){for(var a=o._length,i=new Array(a),n=o.z,s=x(n)&&n.length,c=0;c<a;c++){var h=i[c]={},v=o.lon[c],p=o.lat[c];if(h.lonlat=g(v)&&g(p)?[+v,+p]:[A,A],s){var T=n[c];h.z=g(T)?T:A}}return M(r,o,{vals:s?n:[0,1],containerStr:"",cLetter:"z"}),a&&(i[0].t={labels:{lat:e(r,"lat:")+" ",lon:e(r,"lon:")+" "}}),i}}}),uq=Ye({"src/traces/densitymapbox/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Su(),e=ks().BADNUM,t=dg().makeBlank;H.exports=function(o){var a=o[0].trace,i=a.visible===!0&&a._length!==0,n={layout:{visibility:"none"},paint:{}},s=a._opts={heatmap:n,geojson:t()};if(!i)return s;var c=[],h,v=a.z,p=a.radius,T=x.isArrayOrTypedArray(v)&&v.length,l=x.isArrayOrTypedArray(p);for(h=0;h<o.length;h++){var _=o[h],w=_.lonlat;if(w[0]!==e){var S={};if(T){var E=_.z;S.z=E!==e?E:0}l&&(S.r=g(p[h])&&p[h]>0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h<b.length;h++)y.push(b[h][0],b[h][1]);var f=["interpolate",["linear"],["get","z"],m.min,0,m.max,1];return x.extendFlat(s.heatmap.paint,{"heatmap-weight":T?f:1/(m.max-m.min),"heatmap-color":y,"heatmap-radius":l?{type:"identity",property:"r"}:a.radius,"heatmap-opacity":a.opacity}),s.geojson={type:"FeatureCollection",features:c},s.heatmap.layout.visibility="visible",s}}}),cq=Ye({"src/traces/densitymapbox/plot.js"(X,H){"use strict";var g=uq(),x=am().traceLayerPrefix;function A(e,t){this.type="densitymapbox",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",x+t+"-heatmap"]],this.below=null}var M=A.prototype;M.update=function(e){var t=this.subplot,r=this.layerList,o=g(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(o.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(o,a),this.below=a);for(var i=0;i<r.length;i++){var n=r[i],s=n[0],c=n[1],h=o[s];t.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&t.setOptions(c,"setPaintProperty",h.paint)}},M._addLayers=function(e,t){for(var r=this.subplot,o=this.layerList,a=this.sourceId,i=0;i<o.length;i++){var n=o[i],s=n[0],c=e[s];r.addLayer({type:s,id:n[1],source:a,layout:c.layout,paint:c.paint},t)}},M._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),fq=Ye({"src/traces/densitymapbox/hover.js"(X,H){"use strict";var g=Co(),x=AT().hoverPoints,A=AT().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),hq=Ye({"src/traces/densitymapbox/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),pq=Ye({"src/traces/densitymapbox/index.js"(X,H){"use strict";var g=["*densitymapbox* trace is deprecated!","Please consider switching to the *densitymap* trace type and `map` subplots.","Learn more at: https://plotly.com/python/maplibre-migration/","as well as https://plotly.com/javascript/maplibre-migration/"].join(" ");H.exports={attributes:Mk(),supplyDefaults:sq(),colorbar:ag(),formatLabels:bk(),calc:lq(),plot:cq(),hoverPoints:fq(),eventData:hq(),getBelow:function(x,A){for(var M=A.getMapLayers(),e=0;e<M.length;e++){var t=M[e],r=t.id;if(t.type==="symbol"&&typeof r=="string"&&r.indexOf("plotly-")===-1)return r}},moduleType:"trace",name:"densitymapbox",basePlotModule:ST(),categories:["mapbox","gl","showLegend"],meta:{hr_name:"density_mapbox"}}}}),dq=Ye({"lib/densitymapbox.js"(X,H){"use strict";H.exports=pq()}}),vq=Ye({"src/plots/map/styles/arcgis-sat-hybrid.js"(X,H){H.exports={version:8,name:"orto",metadata:{"maputnik:renderer":"mlgljs"},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}},{id:"waterway_tunnel",type:"line",source:"openmaptiles","source-layer":"waterway",minzoom:14,filter:["all",["in","class","river","stream","canal"],["==","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]},"line-dasharray":[2,4]}},{id:"waterway-other",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["!in","class","canal","river","stream"],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,2]]}}},{id:"waterway-stream-canal",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["in","class","canal","stream"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.3,stops:[[13,.5],[20,6]]}}},{id:"waterway-river",type:"line",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"waterway",filter:["all",["==","class","river"],["!=","brunnel","tunnel"]],layout:{"line-cap":"round"},paint:{"line-color":"#a0c8f0","line-width":{base:1.2,stops:[[10,.8],[20,4]]},"line-opacity":.5}},{id:"water-offset",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",maxzoom:8,filter:["==","$type","Polygon"],layout:{visibility:"visible"},paint:{"fill-opacity":0,"fill-color":"#a0c8f0","fill-translate":{base:1,stops:[[6,[2,0]],[8,[0,0]]]}}},{id:"water",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-color":"hsl(210, 67%, 85%)","fill-opacity":0}},{id:"water-pattern",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"water",layout:{visibility:"visible"},paint:{"fill-translate":[0,2.5],"fill-pattern":"wave","fill-opacity":1}},{id:"landcover-ice-shelf",type:"fill",metadata:{"mapbox:group":"1444849382550.77"},source:"openmaptiles","source-layer":"landcover",filter:["==","subclass","ice_shelf"],layout:{visibility:"visible"},paint:{"fill-color":"#fff","fill-opacity":{base:1,stops:[[0,.9],[10,.3]]}}},{id:"tunnel-service-track-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[15,1],[16,4],[20,11]]}}},{id:"tunnel-minor-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor"]],layout:{"line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,1]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"tunnel-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"tunnel-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.7}},{id:"tunnel-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-dasharray":[.5,.25],"line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"tunnel-path",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"tunnel-service-track",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","service","track"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-width":{base:1.2,stops:[[15.5,0],[16,2],[20,7.5]]}}},{id:"tunnel-minor",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","minor_road"]],layout:{"line-join":"round"},paint:{"line-color":"#fff","line-opacity":1,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"tunnel-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,10]]}}},{id:"tunnel-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fff4c6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-motorway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","motorway"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"#ffdaa6","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"tunnel-railway",type:"line",metadata:{"mapbox:group":"1444849354174.1904"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","tunnel"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]},"line-dasharray":[2,2]}},{id:"ferry",type:"line",source:"openmaptiles","source-layer":"transportation",filter:["all",["in","class","ferry"]],layout:{"line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(108, 159, 182, 1)","line-width":1.1,"line-dasharray":[2,2]}},{id:"aeroway-taxiway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","taxiway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,2],[17,12]]},"line-opacity":1}},{id:"aeroway-runway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:12,filter:["all",["in","class","runway"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(153, 153, 153, 1)","line-width":{base:1.5,stops:[[11,5],[17,55]]},"line-opacity":1}},{id:"aeroway-taxiway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","taxiway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,1],[17,10]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"aeroway-runway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"aeroway",minzoom:4,filter:["all",["in","class","runway"],["==","$type","LineString"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"rgba(255, 255, 255, 1)","line-width":{base:1.5,stops:[[11,4],[17,50]]},"line-opacity":{base:1,stops:[[11,0],[12,1]]}}},{id:"highway-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-link-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"highway-minor-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#cfcdca","line-opacity":{stops:[[12,0],[12.5,0]]},"line-width":{base:1.2,stops:[[12,.5],[13,1],[14,4],[20,15]]}}},{id:"highway-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":.5,"line-width":{base:1.2,stops:[[8,1.5],[20,17]]}}},{id:"highway-primary-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[7,0],[8,.6]]},"line-width":{base:1.2,stops:[[7,0],[8,.6],[9,1.5],[20,22]]}}},{id:"highway-trunk-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-opacity":{stops:[[5,0],[6,.5]]},"line-width":{base:1.2,stops:[[5,0],[6,.6],[7,1.5],[20,22]]}}},{id:"highway-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:4,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]],layout:{"line-cap":"butt","line-join":"round",visibility:"visible"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[4,0],[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":{stops:[[4,0],[5,.5]]}}},{id:"highway-path",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","path"]]],paint:{"line-color":"#cba","line-dasharray":[1.5,.75],"line-width":{base:1.2,stops:[[15,1.2],[20,4]]}}},{id:"highway-motorway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:12,filter:["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway_link"]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-link",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"highway-minor",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!=","brunnel","tunnel"],["in","class","minor","service","track"]]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"#fff","line-opacity":.5,"line-width":{base:1.2,stops:[[13.5,0],[14,2.5],[20,11.5]]}}},{id:"highway-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["!in","brunnel","bridge","tunnel"],["in","class","secondary","tertiary"]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[8,.5],[20,13]]},"line-opacity":.5}},{id:"highway-primary",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","primary"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[8.5,0],[9,.5],[20,18]]},"line-opacity":0}},{id:"highway-trunk",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["in","class","trunk"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"highway-motorway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",minzoom:5,filter:["all",["==","$type","LineString"],["all",["!in","brunnel","bridge","tunnel"],["==","class","motorway"]]],layout:{"line-cap":"round","line-join":"round",visibility:"visible"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"railway-transit",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-transit-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","transit"],["!in","brunnel","tunnel"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway-service",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],paint:{"line-color":"hsla(0, 0%, 73%, 0.77)","line-width":{base:1.4,stops:[[14,.4],[20,1]]}}},{id:"railway-service-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","class","rail"],["has","service"]]],layout:{visibility:"visible"},paint:{"line-color":"hsla(0, 0%, 73%, 0.68)","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,2],[20,6]]}}},{id:"railway",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"railway-hatching",type:"line",metadata:{"mapbox:group":"1444849345966.4436"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["!has","service"],["!in","brunnel","bridge","tunnel"],["==","class","rail"]]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"bridge-motorway-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-link-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[12,1],[13,3],[14,4],[20,15]]}}},{id:"bridge-secondary-tertiary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-opacity":1,"line-width":{base:1.2,stops:[[8,1.5],[20,28]]}}},{id:"bridge-trunk-primary-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"hsl(28, 76%, 67%)","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,26]]}}},{id:"bridge-motorway-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#e9ac77","line-width":{base:1.2,stops:[[5,.4],[6,.6],[7,1.5],[20,22]]},"line-opacity":.5}},{id:"bridge-path-casing",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#f8f4f0","line-width":{base:1.2,stops:[[15,1.2],[20,18]]}}},{id:"bridge-path",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","$type","LineString"],["all",["==","brunnel","bridge"],["==","class","path"]]],paint:{"line-color":"#cba","line-width":{base:1.2,stops:[[15,1.2],[20,4]]},"line-dasharray":[1.5,.75]}},{id:"bridge-motorway-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-link",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary_link","secondary_link","tertiary_link","trunk_link"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[12.5,0],[13,1.5],[14,2.5],[20,11.5]]}}},{id:"bridge-secondary-tertiary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","secondary","tertiary"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,20]]}}},{id:"bridge-trunk-primary",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["in","class","primary","trunk"]],layout:{"line-join":"round"},paint:{"line-color":"#fea","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]}}},{id:"bridge-motorway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","motorway"]],layout:{"line-join":"round"},paint:{"line-color":"#fc8","line-width":{base:1.2,stops:[[6.5,0],[7,.5],[20,18]]},"line-opacity":.5}},{id:"bridge-railway",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-width":{base:1.4,stops:[[14,.4],[15,.75],[20,2]]}}},{id:"bridge-railway-hatching",type:"line",metadata:{"mapbox:group":"1444849334699.1902"},source:"openmaptiles","source-layer":"transportation",filter:["all",["==","brunnel","bridge"],["==","class","rail"]],paint:{"line-color":"#bbb","line-dasharray":[.2,8],"line-width":{base:1.4,stops:[[14.5,0],[15,3],[20,8]]}}},{id:"cablecar",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,1],[19,2.5]]}}},{id:"cablecar-dash",type:"line",source:"openmaptiles","source-layer":"transportation",minzoom:13,filter:["==","class","cable_car"],layout:{visibility:"visible","line-cap":"round"},paint:{"line-color":"hsl(0, 0%, 70%)","line-width":{base:1,stops:[[11,3],[19,5.5]]},"line-dasharray":[2,3]}},{id:"boundary-land-level-4",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",[">=","admin_level",4],["<=","admin_level",8],["!=","maritime",1]],layout:{"line-join":"round"},paint:{"line-color":"#9e9cab","line-dasharray":[3,1,1,1],"line-width":{base:1.4,stops:[[4,.4],[5,1],[12,3]]},"line-opacity":.6}},{id:"boundary-land-level-2",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["==","admin_level",2],["!=","maritime",1],["!=","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 66%)","line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,2]]}}},{id:"boundary-land-disputed",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["!=","maritime",1],["==","disputed",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"hsl(248, 7%, 70%)","line-dasharray":[1,3],"line-width":{base:1,stops:[[0,.6],[4,1.4],[5,2],[12,8]]}}},{id:"boundary-water",type:"line",source:"openmaptiles","source-layer":"boundary",filter:["all",["in","admin_level",2,4],["==","maritime",1]],layout:{"line-cap":"round","line-join":"round"},paint:{"line-color":"rgba(154, 189, 214, 1)","line-width":{base:1,stops:[[0,.6],[4,1],[5,1],[12,1]]},"line-opacity":{stops:[[6,0],[10,0]]}}},{id:"waterway-name",type:"symbol",source:"openmaptiles","source-layer":"waterway",minzoom:13,filter:["all",["==","$type","LineString"],["has","name"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin} {name:nonlatin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","text-letter-spacing":.2,"symbol-spacing":350},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-lakeline",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["==","$type","LineString"],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"line","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-ocean",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["==","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":14,"text-field":"{name:latin}","text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"water-name-other",type:"symbol",source:"openmaptiles","source-layer":"water_name",filter:["all",["==","$type","Point"],["!in","class","ocean"]],layout:{"text-font":["Noto Sans Italic"],"text-size":{stops:[[0,10],[6,14]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":5,"text-rotation-alignment":"map","symbol-placement":"point","symbol-spacing":350,"text-letter-spacing":.2,visibility:"visible"},paint:{"text-color":"#74aee9","text-halo-width":1.5,"text-halo-color":"rgba(255,255,255,0.7)"}},{id:"poi-level-3",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:16,filter:["all",["==","$type","Point"],[">=","rank",25]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-2",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:15,filter:["all",["==","$type","Point"],["<=","rank",24],[">=","rank",15]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"poi-level-1",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:14,filter:["all",["==","$type","Point"],["<=","rank",14],["has","name"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":11,"text-max-width":9},paint:{"text-halo-blur":.5,"text-color":"rgba(191, 228, 172, 1)","text-halo-width":1,"text-halo-color":"rgba(30, 29, 29, 1)"}},{id:"poi-railway",type:"symbol",source:"openmaptiles","source-layer":"poi",minzoom:13,filter:["all",["==","$type","Point"],["has","name"],["==","class","railway"],["==","subclass","station"]],layout:{"text-padding":2,"text-font":["Noto Sans Regular"],"text-anchor":"top","icon-image":"{class}_11","text-field":`{name:latin}
+{name:nonlatin}`,"text-offset":[0,.6],"text-size":12,"text-max-width":9,"icon-optional":!1,"icon-ignore-placement":!1,"icon-allow-overlap":!1,"text-ignore-placement":!1,"text-allow-overlap":!1,"text-optional":!0},paint:{"text-halo-blur":.5,"text-color":"#666","text-halo-width":1,"text-halo-color":"#ffffff"}},{id:"road_oneway",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"road_oneway_opposite",type:"symbol",source:"openmaptiles","source-layer":"transportation",minzoom:15,filter:["all",["==","oneway",-1],["in","class","motorway","trunk","primary","secondary","tertiary","minor","service"]],layout:{"symbol-placement":"line","icon-image":"oneway","symbol-spacing":75,"icon-padding":2,"icon-rotation-alignment":"map","icon-rotate":-90,"icon-size":{stops:[[15,.5],[19,1]]}},paint:{"icon-opacity":.5}},{id:"highway-name-path",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15.5,filter:["==","class","path"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-color":"#f8f4f0","text-color":"hsl(30, 23%, 62%)","text-halo-width":.5}},{id:"highway-name-minor",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:15,filter:["all",["==","$type","LineString"],["in","class","minor","service","track"]],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-name-major",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:12.2,filter:["in","class","primary","secondary","tertiary","trunk"],layout:{"text-size":{base:1,stops:[[13,12],[14,13]]},"text-font":["Noto Sans Regular"],"text-field":"{name:latin} {name:nonlatin}","symbol-placement":"line","text-rotation-alignment":"map"},paint:{"text-halo-blur":.5,"text-color":"#765","text-halo-width":1}},{id:"highway-shield",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:8,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["!in","network","us-interstate","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"road_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-opacity":1,"text-color":"rgba(20, 19, 19, 1)","text-halo-color":"rgba(230, 221, 221, 0)","text-halo-width":2,"icon-color":"rgba(183, 18, 18, 1)","icon-opacity":.3,"icon-halo-color":"rgba(183, 55, 55, 0)"}},{id:"highway-shield-us-interstate",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:7,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-interstate"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[7,"point"],[7,"line"],[8,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"highway-shield-us-other",type:"symbol",source:"openmaptiles","source-layer":"transportation_name",minzoom:9,filter:["all",["<=","ref_length",6],["==","$type","LineString"],["in","network","us-highway","us-state"]],layout:{"text-size":10,"icon-image":"{network}_{ref_length}","icon-rotation-alignment":"viewport","symbol-spacing":200,"text-font":["Noto Sans Regular"],"symbol-placement":{base:1,stops:[[10,"point"],[11,"line"]]},"text-rotation-alignment":"viewport","icon-size":1,"text-field":"{ref}"},paint:{"text-color":"rgba(0, 0, 0, 1)"}},{id:"place-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:12,filter:["!in","class","city","town","village","country","continent"],layout:{"text-letter-spacing":.1,"text-size":{base:1.2,stops:[[12,10],[15,14]]},"text-font":["Noto Sans Bold"],"text-field":`{name:latin}
+{name:nonlatin}`,"text-transform":"uppercase","text-max-width":9,visibility:"visible"},paint:{"text-color":"rgba(255,255,255,1)","text-halo-width":1.2,"text-halo-color":"rgba(57, 28, 28, 1)"}},{id:"place-village",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",minzoom:10,filter:["==","class","village"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,12],[15,16]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(10, 9, 9, 0.8)"}},{id:"place-town",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["==","class","town"],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[10,14],[15,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(255, 255, 255, 1)","text-halo-width":1.2,"text-halo-color":"rgba(22, 22, 22, 0.8)"}},{id:"place-city",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["!=","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,visibility:"visible"},paint:{"text-color":"rgba(0, 0, 0, 1)","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-city-capital",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","capital",2],["==","class","city"]],layout:{"text-font":["Noto Sans Regular"],"text-size":{base:1.2,stops:[[7,14],[11,24]]},"text-field":`{name:latin}
+{name:nonlatin}`,"text-max-width":8,"icon-image":"star_11","text-offset":[.4,0],"icon-size":.8,"text-anchor":"left",visibility:"visible"},paint:{"text-color":"#333","text-halo-width":1.2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-other",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["!has","iso_a2"]],layout:{"text-font":["Noto Sans Italic"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-3",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],[">=","rank",3],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[3,11],[7,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-2",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",2],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[2,11],[5,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-country-1",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",filter:["all",["==","class","country"],["==","rank",1],["has","iso_a2"]],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":{stops:[[1,11],[4,17]]},"text-transform":"uppercase","text-max-width":6.25,visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}},{id:"place-continent",type:"symbol",metadata:{"mapbox:group":"1444849242106.713"},source:"openmaptiles","source-layer":"place",maxzoom:1,filter:["==","class","continent"],layout:{"text-font":["Noto Sans Bold"],"text-field":"{name:latin}","text-size":14,"text-max-width":6.25,"text-transform":"uppercase",visibility:"visible"},paint:{"text-halo-blur":1,"text-color":"#334","text-halo-width":2,"text-halo-color":"rgba(255,255,255,0.8)"}}],id:"qebnlkra6"}}}),mq=Ye({"src/plots/map/styles/arcgis-sat.js"(X,H){H.exports={version:8,name:"orto",metadata:{},center:[1.537786,41.837539],zoom:12,bearing:0,pitch:0,light:{anchor:"viewport",color:"white",intensity:.4,position:[1.15,45,30]},sources:{ortoEsri:{type:"raster",tiles:["https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}"],tileSize:256,maxzoom:18,attribution:"ESRI &copy; <a href='http://www.esri.com'>ESRI</a>"},ortoInstaMaps:{type:"raster",tiles:["https://tilemaps.icgc.cat/mapfactory/wmts/orto_8_12/CAT3857/{z}/{x}/{y}.png"],tileSize:256,maxzoom:13},ortoICGC:{type:"raster",tiles:["https://geoserveis.icgc.cat/icc_mapesmultibase/noutm/wmts/orto/GRID3857/{z}/{x}/{y}.jpeg"],tileSize:256,minzoom:13.1,maxzoom:20},openmaptiles:{type:"vector",url:"https://geoserveis.icgc.cat/contextmaps/basemap.json"}},sprite:"https://geoserveis.icgc.cat/contextmaps/sprites/sprite@1",glyphs:"https://geoserveis.icgc.cat/contextmaps/glyphs/{fontstack}/{range}.pbf",layers:[{id:"background",type:"background",paint:{"background-color":"#F4F9F4"}},{id:"ortoEsri",type:"raster",source:"ortoEsri",maxzoom:16,layout:{visibility:"visible"}},{id:"ortoICGC",type:"raster",source:"ortoICGC",minzoom:13.1,maxzoom:19,layout:{visibility:"visible"}},{id:"ortoInstaMaps",type:"raster",source:"ortoInstaMaps",maxzoom:13,layout:{visibility:"visible"}}]}}}),_g=Ye({"src/plots/map/constants.js"(X,H){"use strict";var g=Km(),x=vq(),A=mq(),M='\xA9 <a target="_blank" href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',e="https://basemaps.cartocdn.com/gl/positron-gl-style/style.json",t="https://basemaps.cartocdn.com/gl/dark-matter-gl-style/style.json",r="https://basemaps.cartocdn.com/gl/voyager-gl-style/style.json",o="https://basemaps.cartocdn.com/gl/positron-nolabels-gl-style/style.json",a="https://basemaps.cartocdn.com/gl/dark-matter-nolabels-gl-style/style.json",i="https://basemaps.cartocdn.com/gl/voyager-nolabels-gl-style/style.json",n={basic:r,streets:r,outdoors:r,light:e,dark:t,satellite:A,"satellite-streets":x,"open-street-map":{id:"osm",version:8,sources:{"plotly-osm-tiles":{type:"raster",attribution:M,tiles:["https://tile.openstreetmap.org/{z}/{x}/{y}.png"],tileSize:256}},layers:[{id:"plotly-osm-tiles",type:"raster",source:"plotly-osm-tiles",minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"white-bg":{id:"white-bg",version:8,sources:{},layers:[{id:"white-bg",type:"background",paint:{"background-color":"#FFFFFF"},minzoom:0,maxzoom:22}],glyphs:"https://fonts.openmaptiles.org/{fontstack}/{range}.pbf"},"carto-positron":e,"carto-darkmatter":t,"carto-voyager":r,"carto-positron-nolabels":o,"carto-darkmatter-nolabels":a,"carto-voyager-nolabels":i},s=g(n);H.exports={styleValueDflt:"basic",stylesMap:n,styleValuesMap:s,traceLayerPrefix:"plotly-trace-layer-",layoutLayerPrefix:"plotly-layout-layer-",missingStyleErrorMsg:["No valid maplibre style found, please set `map.style` to one of:",s.join(", "),"or use a tile service."].join(`
+`),mapOnErrorMsg:"Map error."}}}),Mx=Ye({"src/plots/map/layout_attributes.js"(X,H){"use strict";var g=ta(),x=Fn().defaultLine,A=Wu().attributes,M=Au(),e=Pc().textposition,t=Ou().overrideAll,r=cl().templatedArray,o=_g(),a=M({noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0});a.family.dflt="Open Sans Regular, Arial Unicode MS Regular";var i=H.exports=t({_arrayAttrRegexps:[g.counterRegex("map",".layers",!0)],domain:A({name:"map"}),style:{valType:"any",values:o.styleValuesMap,dflt:o.styleValueDflt},center:{lon:{valType:"number",dflt:0},lat:{valType:"number",dflt:0}},zoom:{valType:"number",dflt:1},bearing:{valType:"number",dflt:0},pitch:{valType:"number",dflt:0},bounds:{west:{valType:"number"},east:{valType:"number"},south:{valType:"number"},north:{valType:"number"}},layers:r("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:x},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:x}},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:a,textposition:g.extendFlat({},e,{arrayOk:!1})}})},"plot","from-root");i.uirevision={valType:"any",editType:"none"}}}),MT=Ye({"src/traces/scattermap/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=$d(),M=p0(),e=Pc(),t=Mx(),r=Pl(),o=tu(),a=Oo().extendFlat,i=Ou().overrideAll,n=Mx(),s=M.line,c=M.marker;H.exports=i({lon:M.lon,lat:M.lat,cluster:{enabled:{valType:"boolean"},maxzoom:a({},n.layers.maxzoom,{}),step:{valType:"number",arrayOk:!0,dflt:-1,min:-1},size:{valType:"number",arrayOk:!0,dflt:20,min:0},color:{valType:"color",arrayOk:!0},opacity:a({},c.opacity,{dflt:1})},mode:a({},e.mode,{dflt:"markers"}),text:a({},e.text,{}),texttemplate:x({editType:"plot"},{keys:["lat","lon","text"]}),hovertext:a({},e.hovertext,{}),line:{color:s.color,width:s.width},connectgaps:e.connectgaps,marker:a({symbol:{valType:"string",dflt:"circle",arrayOk:!0},angle:{valType:"number",dflt:"auto",arrayOk:!0},allowoverlap:{valType:"boolean",dflt:!1},opacity:c.opacity,size:c.size,sizeref:c.sizeref,sizemin:c.sizemin,sizemode:c.sizemode},o("marker")),fill:M.fill,fillcolor:A(),textfont:t.layers.symbol.textfont,textposition:t.layers.symbol.textposition,below:{valType:"string"},selected:{marker:e.selected.marker},unselected:{marker:e.unselected.marker},hoverinfo:a({},r.hoverinfo,{flags:["lon","lat","text","name"]}),hovertemplate:g()},"calc","nested")}}),Ek=Ye({"src/traces/scattermap/constants.js"(X,H){"use strict";var g=["Metropolis Black Italic","Metropolis Black","Metropolis Bold Italic","Metropolis Bold","Metropolis Extra Bold Italic","Metropolis Extra Bold","Metropolis Extra Light Italic","Metropolis Extra Light","Metropolis Light Italic","Metropolis Light","Metropolis Medium Italic","Metropolis Medium","Metropolis Regular Italic","Metropolis Regular","Metropolis Semi Bold Italic","Metropolis Semi Bold","Metropolis Thin Italic","Metropolis Thin","Open Sans Bold Italic","Open Sans Bold","Open Sans Extrabold Italic","Open Sans Extrabold","Open Sans Italic","Open Sans Light Italic","Open Sans Light","Open Sans Regular","Open Sans Semibold Italic","Open Sans Semibold","Klokantech Noto Sans Bold","Klokantech Noto Sans CJK Bold","Klokantech Noto Sans CJK Regular","Klokantech Noto Sans Italic","Klokantech Noto Sans Regular"];H.exports={isSupportedFont:function(x){return g.indexOf(x)!==-1}}}}),gq=Ye({"src/traces/scattermap/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=zd(),t=ev(),r=MT(),o=Ek().isSupportedFont;H.exports=function(n,s,c,h){function v(y,f){return g.coerce(n,s,r,y,f)}function p(y,f){return g.coerce2(n,s,r,y,f)}var T=a(n,s,v);if(!T){s.visible=!1;return}if(v("text"),v("texttemplate"),v("hovertext"),v("hovertemplate"),v("mode"),v("below"),x.hasMarkers(s)){A(n,s,c,h,v,{noLine:!0,noAngle:!0}),v("marker.allowoverlap"),v("marker.angle");var l=s.marker;l.symbol!=="circle"&&(g.isArrayOrTypedArray(l.size)&&(l.size=l.size[0]),g.isArrayOrTypedArray(l.color)&&(l.color=l.color[0]))}x.hasLines(s)&&(M(n,s,c,h,v,{noDash:!0}),v("connectgaps"));var _=p("cluster.maxzoom"),w=p("cluster.step"),S=p("cluster.color",s.marker&&s.marker.color||c),E=p("cluster.size"),m=p("cluster.opacity"),b=_!==!1||w!==!1||S!==!1||E!==!1||m!==!1,d=v("cluster.enabled",b);if(d||x.hasText(s)){var u=h.font.family;e(n,s,h,v,{noSelect:!0,noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0,font:{family:o(u)?u:"Open Sans Regular",weight:h.font.weight,style:h.font.style,size:h.font.size,color:h.font.color}})}v("fill"),s.fill!=="none"&&t(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)};function a(i,n,s){var c=s("lon")||[],h=s("lat")||[],v=Math.min(c.length,h.length);return n._length=v,v}}}),kk=Ye({"src/traces/scattermap/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot,o=r.mockAxis,a=A.lonlat;return t.lonLabel=g.tickText(o,o.c2l(a[0]),!0).text,t.latLabel=g.tickText(o,o.c2l(a[1]),!0).text,t}}}),Ck=Ye({"src/plots/map/convert_text_opts.js"(X,H){"use strict";var g=ta();H.exports=function(A,M){var e=A.split(" "),t=e[0],r=e[1],o=g.isArrayOrTypedArray(M)?g.mean(M):M,a=.5+o/100,i=1.5+o/100,n=["",""],s=[0,0];switch(t){case"top":n[0]="top",s[1]=-i;break;case"bottom":n[0]="bottom",s[1]=i;break}switch(r){case"left":n[1]="right",s[0]=-a;break;case"right":n[1]="left",s[0]=a;break}var c;return n[0]&&n[1]?c=n.join("-"):n[0]?c=n[0]:n[1]?c=n[1]:c="center",{anchor:c,offset:s}}}}),yq=Ye({"src/traces/scattermap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=ks().BADNUM,M=dg(),e=Su(),t=Bo(),r=t1(),o=uu(),a=Ek().isSupportedFont,i=Ck(),n=Qp().appendArrayPointValue,s=jl().NEWLINES,c=jl().BR_TAG_ALL;H.exports=function(m,b){var d=b[0].trace,u=d.visible===!0&&d._length!==0,y=d.fill!=="none",f=o.hasLines(d),P=o.hasMarkers(d),L=o.hasText(d),z=P&&d.marker.symbol==="circle",F=P&&d.marker.symbol!=="circle",B=d.cluster&&d.cluster.enabled,O=h("fill"),I=h("line"),N=h("circle"),U=h("symbol"),W={fill:O,line:I,circle:N,symbol:U};if(!u)return W;var Q;if((y||f)&&(Q=M.calcTraceToLineCoords(b)),y&&(O.geojson=M.makePolygon(Q),O.layout.visibility="visible",x.extendFlat(O.paint,{"fill-color":d.fillcolor})),f&&(I.geojson=M.makeLine(Q),I.layout.visibility="visible",x.extendFlat(I.paint,{"line-width":d.line.width,"line-color":d.line.color,"line-opacity":d.opacity})),z){var ue=v(b);N.geojson=ue.geojson,N.layout.visibility="visible",B&&(N.filter=["!",["has","point_count"]],W.cluster={type:"circle",filter:["has","point_count"],layout:{visibility:"visible"},paint:{"circle-color":w(d.cluster.color,d.cluster.step),"circle-radius":w(d.cluster.size,d.cluster.step),"circle-opacity":w(d.cluster.opacity,d.cluster.step)}},W.clusterCount={type:"symbol",filter:["has","point_count"],paint:{},layout:{"text-field":"{point_count_abbreviated}","text-font":S(d),"text-size":12}}),x.extendFlat(N.paint,{"circle-color":ue.mcc,"circle-radius":ue.mrc,"circle-opacity":ue.mo})}if(z&&B&&(N.filter=["!",["has","point_count"]]),(F||L)&&(U.geojson=p(b,m),x.extendFlat(U.layout,{visibility:"visible","icon-image":"{symbol}-15","text-field":"{text}"}),F&&(x.extendFlat(U.layout,{"icon-size":d.marker.size/10}),"angle"in d.marker&&d.marker.angle!=="auto"&&x.extendFlat(U.layout,{"icon-rotate":{type:"identity",property:"angle"},"icon-rotation-alignment":"map"}),U.layout["icon-allow-overlap"]=d.marker.allowoverlap,x.extendFlat(U.paint,{"icon-opacity":d.opacity*d.marker.opacity,"icon-color":d.marker.color})),L)){var se=(d.marker||{}).size,he=i(d.textposition,se);x.extendFlat(U.layout,{"text-size":d.textfont.size,"text-anchor":he.anchor,"text-offset":he.offset,"text-font":S(d)}),x.extendFlat(U.paint,{"text-color":d.textfont.color,"text-opacity":d.opacity})}return W};function h(E){return{type:E,geojson:M.makeBlank(),layout:{visibility:"none"},filter:null,paint:{}}}function v(E){var m=E[0].trace,b=m.marker,d=m.selectedpoints,u=x.isArrayOrTypedArray(b.color),y=x.isArrayOrTypedArray(b.size),f=x.isArrayOrTypedArray(b.opacity),P;function L(se){return m.opacity*se}function z(se){return se/2}var F;u&&(e.hasColorscale(m,"marker")?F=e.makeColorScaleFuncFromTrace(b):F=x.identity);var B;y&&(B=r(m));var O;f&&(O=function(se){var he=g(se)?+x.constrain(se,0,1):0;return L(he)});var I=[];for(P=0;P<E.length;P++){var N=E[P],U=N.lonlat;if(!_(U)){var W={};F&&(W.mcc=N.mcc=F(N.mc)),B&&(W.mrc=N.mrc=B(N.ms)),O&&(W.mo=O(N.mo)),d&&(W.selected=N.selected||0),I.push({type:"Feature",id:P+1,geometry:{type:"Point",coordinates:U},properties:W})}}var Q;if(d)for(Q=t.makeSelectedPointStyleFns(m),P=0;P<I.length;P++){var ue=I[P].properties;Q.selectedOpacityFn&&(ue.mo=L(Q.selectedOpacityFn(ue))),Q.selectedColorFn&&(ue.mcc=Q.selectedColorFn(ue)),Q.selectedSizeFn&&(ue.mrc=Q.selectedSizeFn(ue))}return{geojson:{type:"FeatureCollection",features:I},mcc:u||Q&&Q.selectedColorFn?{type:"identity",property:"mcc"}:b.color,mrc:y||Q&&Q.selectedSizeFn?{type:"identity",property:"mrc"}:z(b.size),mo:f||Q&&Q.selectedOpacityFn?{type:"identity",property:"mo"}:L(b.opacity)}}function p(E,m){for(var b=m._fullLayout,d=E[0].trace,u=d.marker||{},y=u.symbol,f=u.angle,P=y!=="circle"?T(y):l,L=f!=="auto"?T(f,!0):l,z=o.hasText(d)?T(d.text):l,F=[],B=0;B<E.length;B++){var O=E[B];if(!_(O.lonlat)){var I=d.texttemplate,N;if(I){var U=Array.isArray(I)?I[B]||"":I,W=d._module.formatLabels(O,d,b),Q={};n(Q,d,O.i);var ue=d._meta||{};N=x.texttemplateString(U,W,b._d3locale,Q,O,ue)}else N=z(B);N&&(N=N.replace(s,"").replace(c,`
+`)),F.push({type:"Feature",geometry:{type:"Point",coordinates:O.lonlat},properties:{symbol:P(B),angle:L(B),text:N}})}}return{type:"FeatureCollection",features:F}}function T(E,m){return x.isArrayOrTypedArray(E)?m?function(b){return g(E[b])?+E[b]:0}:function(b){return E[b]}:E?function(){return E}:l}function l(){return""}function _(E){return E[0]===A}function w(E,m){var b;if(x.isArrayOrTypedArray(E)&&x.isArrayOrTypedArray(m)){b=["step",["get","point_count"],E[0]];for(var d=1;d<E.length;d++)b.push(m[d-1],E[d])}else b=E;return b}function S(E){var m=E.textfont,b=m.family,d=m.style,u=m.weight,y=b.split(" "),f=y[y.length-1]==="Italic";f&&y.pop(),f=f||d==="italic";var P=y.join(" ");u==="bold"&&y.indexOf("Bold")===-1?P+=" Bold":u<=1e3&&(y[0]==="Metropolis"?(P="Metropolis",u>850?P+=" Black":u>750?P+=" Extra Bold":u>650?P+=" Bold":u>550?P+=" Semi Bold":u>450?P+=" Medium":u>350?P+=" Regular":u>250?P+=" Light":u>150?P+=" Extra Light":P+=" Thin"):y.slice(0,2).join(" ")==="Open Sans"?(P="Open Sans",u>750?P+=" Extrabold":u>650?P+=" Bold":u>550?P+=" Semibold":u>350?P+=" Regular":P+=" Light"):y.slice(0,3).join(" ")==="Klokantech Noto Sans"&&(P="Klokantech Noto Sans",y[3]==="CJK"&&(P+=" CJK"),P+=u>500?" Bold":" Regular")),f&&(P+=" Italic"),P==="Open Sans Regular Italic"?P="Open Sans Italic":P==="Open Sans Regular Bold"?P="Open Sans Bold":P==="Open Sans Regular Bold Italic"?P="Open Sans Bold Italic":P==="Klokantech Noto Sans Regular Italic"&&(P="Klokantech Noto Sans Italic"),a(P)||(P=b);var L=P.split(", ");return L}}}),_q=Ye({"src/traces/scattermap/plot.js"(X,H){"use strict";var g=ta(),x=yq(),A=_g().traceLayerPrefix,M={cluster:["cluster","clusterCount","circle"],nonCluster:["fill","line","circle","symbol"]};function e(r,o,a,i){this.type="scattermap",this.subplot=r,this.uid=o,this.clusterEnabled=a,this.isHidden=i,this.sourceIds={fill:"source-"+o+"-fill",line:"source-"+o+"-line",circle:"source-"+o+"-circle",symbol:"source-"+o+"-symbol",cluster:"source-"+o+"-circle",clusterCount:"source-"+o+"-circle"},this.layerIds={fill:A+o+"-fill",line:A+o+"-line",circle:A+o+"-circle",symbol:A+o+"-symbol",cluster:A+o+"-cluster",clusterCount:A+o+"-cluster-count"},this.below=null}var t=e.prototype;t.addSource=function(r,o,a){var i={type:"geojson",data:o.geojson};a&&a.enabled&&g.extendFlat(i,{cluster:!0,clusterMaxZoom:a.maxzoom});var n=this.subplot.map.getSource(this.sourceIds[r]);n?n.setData(o.geojson):this.subplot.map.addSource(this.sourceIds[r],i)},t.setSourceData=function(r,o){this.subplot.map.getSource(this.sourceIds[r]).setData(o.geojson)},t.addLayer=function(r,o,a){var i={type:o.type,id:this.layerIds[r],source:this.sourceIds[r],layout:o.layout,paint:o.paint};o.filter&&(i.filter=o.filter);for(var n=this.layerIds[r],s,c=this.subplot.getMapLayers(),h=0;h<c.length;h++)if(c[h].id===n){s=!0;break}s?(this.subplot.setOptions(n,"setLayoutProperty",i.layout),i.layout.visibility==="visible"&&this.subplot.setOptions(n,"setPaintProperty",i.paint)):this.subplot.addLayer(i,a)},t.update=function(o){var a=o[0].trace,i=this.subplot,n=i.map,s=x(i.gd,o),c=i.belowLookup["trace-"+this.uid],h=!!(a.cluster&&a.cluster.enabled),v=!!this.clusterEnabled,p=this;function T(u){u||p.addSource("circle",s.circle,a.cluster);for(var y=M.cluster,f=0;f<y.length;f++){var P=y[f],L=s[P];p.addLayer(P,L,c)}}function l(u){for(var y=M.cluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P])}u||n.removeSource(p.sourceIds.circle)}function _(u){for(var y=M.nonCluster,f=0;f<y.length;f++){var P=y[f],L=s[P];u||p.addSource(P,L),p.addLayer(P,L,c)}}function w(u){for(var y=M.nonCluster,f=y.length-1;f>=0;f--){var P=y[f];n.removeLayer(p.layerIds[P]),u||n.removeSource(p.sourceIds[P])}}function S(u){v?l(u):w(u)}function E(u){h?T(u):_(u)}function m(){for(var u=h?M.cluster:M.nonCluster,y=0;y<u.length;y++){var f=u[y],P=s[f];P&&(i.setOptions(p.layerIds[f],"setLayoutProperty",P.layout),P.layout.visibility==="visible"&&(f!=="cluster"&&p.setSourceData(f,P),i.setOptions(p.layerIds[f],"setPaintProperty",P.paint)))}}var b=this.isHidden,d=a.visible!==!0;d?b||S():b?d||E():v!==h?(S(),E()):(this.below!==c&&(S(!0),E(!0)),m()),this.clusterEnabled=h,this.isHidden=d,this.below=c,o[0].trace._glTrace=this},t.dispose=function(){for(var o=this.subplot.map,a=this.clusterEnabled?M.cluster:M.nonCluster,i=a.length-1;i>=0;i--){var n=a[i];o.removeLayer(this.layerIds[n]),o.removeSource(this.sourceIds[n])}},H.exports=function(o,a){var i=a[0].trace,n=i.cluster&&i.cluster.enabled,s=i.visible!==!0,c=new e(o,i.uid,n,s),h=x(o.gd,a),v=c.below=o.belowLookup["trace-"+i.uid],p,T,l;if(n)for(c.addSource("circle",h.circle,i.cluster),p=0;p<M.cluster.length;p++)T=M.cluster[p],l=h[T],c.addLayer(T,l,v);else for(p=0;p<M.nonCluster.length;p++)T=M.nonCluster[p],l=h[T],c.addSource(T,l,i.cluster),c.addLayer(T,l,v);return a[0].trace._glTrace=c,c}}}),ET=Ye({"src/traces/scattermap/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=s1(),M=x.fillText,e=ks().BADNUM,t=_g().traceLayerPrefix;function r(a,i,n){var s=a.cd,c=s[0].trace,h=a.xa,v=a.ya,p=a.subplot,T=[],l=t+c.uid+"-circle",_=c.cluster&&c.cluster.enabled;if(_){var w=p.map.queryRenderedFeatures(null,{layers:[l]});T=w.map(function(B){return B.id})}var S=i>=0?Math.floor((i+180)/360):Math.ceil((i-180)/360),E=S*360,m=i-E;function b(B){var O=B.lonlat;if(O[0]===e||_&&T.indexOf(B.i+1)===-1)return 1/0;var I=x.modHalf(O[0],360),N=O[1],U=p.project([I,N]),W=U.x-h.c2p([m,N]),Q=U.y-v.c2p([I,n]),ue=Math.max(3,B.mrc||0);return Math.max(Math.sqrt(W*W+Q*Q)-ue,1-3/ue)}if(g.getClosest(s,b,a),a.index!==!1){var d=s[a.index],u=d.lonlat,y=[x.modHalf(u[0],360)+E,u[1]],f=h.c2p(y),P=v.c2p(y),L=d.mrc||1;a.x0=f-L,a.x1=f+L,a.y0=P-L,a.y1=P+L;var z={};z[c.subplot]={_subplot:p};var F=c._module.formatLabels(d,c,z);return a.lonLabel=F.lonLabel,a.latLabel=F.latLabel,a.color=A(c,d),a.extraText=o(c,d,s[0].t.labels),a.hovertemplate=c.hovertemplate,[a]}}function o(a,i,n){if(a.hovertemplate)return;var s=i.hi||a.hoverinfo,c=s.split("+"),h=c.indexOf("all")!==-1,v=c.indexOf("lon")!==-1,p=c.indexOf("lat")!==-1,T=i.lonlat,l=[];function _(w){return w+"\xB0"}return h||v&&p?l.push("("+_(T[1])+", "+_(T[0])+")"):v?l.push(n.lon+_(T[0])):p&&l.push(n.lat+_(T[1])),(h||c.indexOf("text")!==-1)&&M(i,a,l),l.join("<br>")}H.exports={hoverPoints:r,getExtraText:o}}}),xq=Ye({"src/traces/scattermap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x}}}),bq=Ye({"src/traces/scattermap/select.js"(X,H){"use strict";var g=ta(),x=uu(),A=ks().BADNUM;H.exports=function(e,t){var r=e.cd,o=e.xaxis,a=e.yaxis,i=[],n=r[0].trace,s;if(!x.hasMarkers(n))return[];if(t===!1)for(s=0;s<r.length;s++)r[s].selected=0;else for(s=0;s<r.length;s++){var c=r[s],h=c.lonlat;if(h[0]!==A){var v=[g.modHalf(h[0],360),h[1]],p=[o.c2p(v),a.c2p(v)];t.contains(p,null,s,e)?(i.push({pointNumber:s,lon:h[0],lat:h[1]}),c.selected=1):c.selected=0}}return i}}}),wq=Ye({"node_modules/maplibre-gl/dist/maplibre-gl.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?H.exports=x():(g=typeof globalThis<"u"?globalThis:g||self,g.maplibregl=x())})(X,function(){"use strict";var g={},x={};function A(e,t,r){if(x[e]=r,e==="index"){var o="var sharedModule = {}; ("+x.shared+")(sharedModule); ("+x.worker+")(sharedModule);",a={};return x.shared(a),x.index(g,a),typeof window<"u"&&g.setWorkerUrl(window.URL.createObjectURL(new Blob([o],{type:"text/javascript"}))),g}}A("shared",["exports"],function(e){"use strict";function t(q,D,Y,pe){return new(Y||(Y=Promise))(function(Ce,Ue){function Ge(Ft){try{Tt(pe.next(Ft))}catch($t){Ue($t)}}function ut(Ft){try{Tt(pe.throw(Ft))}catch($t){Ue($t)}}function Tt(Ft){var $t;Ft.done?Ce(Ft.value):($t=Ft.value,$t instanceof Y?$t:new Y(function(lr){lr($t)})).then(Ge,ut)}Tt((pe=pe.apply(q,D||[])).next())})}function r(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}typeof SuppressedError=="function"&&SuppressedError;var o=a;function a(q,D){this.x=q,this.y=D}a.prototype={clone:function(){return new a(this.x,this.y)},add:function(q){return this.clone()._add(q)},sub:function(q){return this.clone()._sub(q)},multByPoint:function(q){return this.clone()._multByPoint(q)},divByPoint:function(q){return this.clone()._divByPoint(q)},mult:function(q){return this.clone()._mult(q)},div:function(q){return this.clone()._div(q)},rotate:function(q){return this.clone()._rotate(q)},rotateAround:function(q,D){return this.clone()._rotateAround(q,D)},matMult:function(q){return this.clone()._matMult(q)},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(q){return this.x===q.x&&this.y===q.y},dist:function(q){return Math.sqrt(this.distSqr(q))},distSqr:function(q){var D=q.x-this.x,Y=q.y-this.y;return D*D+Y*Y},angle:function(){return Math.atan2(this.y,this.x)},angleTo:function(q){return Math.atan2(this.y-q.y,this.x-q.x)},angleWith:function(q){return this.angleWithSep(q.x,q.y)},angleWithSep:function(q,D){return Math.atan2(this.x*D-this.y*q,this.x*q+this.y*D)},_matMult:function(q){var D=q[2]*this.x+q[3]*this.y;return this.x=q[0]*this.x+q[1]*this.y,this.y=D,this},_add:function(q){return this.x+=q.x,this.y+=q.y,this},_sub:function(q){return this.x-=q.x,this.y-=q.y,this},_mult:function(q){return this.x*=q,this.y*=q,this},_div:function(q){return this.x/=q,this.y/=q,this},_multByPoint:function(q){return this.x*=q.x,this.y*=q.y,this},_divByPoint:function(q){return this.x/=q.x,this.y/=q.y,this},_unit:function(){return this._div(this.mag()),this},_perp:function(){var q=this.y;return this.y=this.x,this.x=-q,this},_rotate:function(q){var D=Math.cos(q),Y=Math.sin(q),pe=Y*this.x+D*this.y;return this.x=D*this.x-Y*this.y,this.y=pe,this},_rotateAround:function(q,D){var Y=Math.cos(q),pe=Math.sin(q),Ce=D.y+pe*(this.x-D.x)+Y*(this.y-D.y);return this.x=D.x+Y*(this.x-D.x)-pe*(this.y-D.y),this.y=Ce,this},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}},a.convert=function(q){return q instanceof a?q:Array.isArray(q)?new a(q[0],q[1]):q};var i=r(o),n=s;function s(q,D,Y,pe){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(pe-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=pe}s.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)<D)return Y;var Ue=this.sampleCurveDerivativeX(Y);if(Math.abs(Ue)<1e-6)break;Y-=Ce/Ue}var Ge=0,ut=1;for(Y=q,pe=0;pe<20&&(Ce=this.sampleCurveX(Y),!(Math.abs(Ce-q)<D));pe++)q>Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var c=r(n);let h,v;function p(){return h==null&&(h=typeof OffscreenCanvas<"u"&&new OffscreenCanvas(1,1).getContext("2d")&&typeof createImageBitmap=="function"),h}function T(){if(v==null&&(v=!1,p())){let D=new OffscreenCanvas(5,5).getContext("2d",{willReadFrequently:!0});if(D){for(let pe=0;pe<5*5;pe++){let Ce=4*pe;D.fillStyle=`rgb(${Ce},${Ce+1},${Ce+2})`,D.fillRect(pe%5,Math.floor(pe/5),1,1)}let Y=D.getImageData(0,0,5,5).data;for(let pe=0;pe<5*5*4;pe++)if(pe%4!=3&&Y[pe]!==pe){v=!0;break}}}return v||!1}function l(q,D,Y,pe){let Ce=new c(q,D,Y,pe);return Ue=>Ce.solve(Ue)}let _=l(.25,.1,.25,1);function w(q,D,Y){return Math.min(Y,Math.max(D,q))}function S(q,D,Y){let pe=Y-D,Ce=((q-D)%pe+pe)%pe+D;return Ce===D?Y:Ce}function E(q,...D){for(let Y of D)for(let pe in Y)q[pe]=Y[pe];return q}let m=1;function b(q,D,Y){let pe={};for(let Ce in q)pe[Ce]=D.call(this,q[Ce],Ce,q);return pe}function d(q,D,Y){let pe={};for(let Ce in q)D.call(this,q[Ce],Ce,q)&&(pe[Ce]=q[Ce]);return pe}function u(q){return Array.isArray(q)?q.map(u):typeof q=="object"&&q?b(q,u):q}let y={};function f(q){y[q]||(typeof console<"u"&&console.warn(q),y[q]=!0)}function P(q,D,Y){return(Y.y-q.y)*(D.x-q.x)>(D.y-q.y)*(Y.x-q.x)}function L(q){return typeof WorkerGlobalScope<"u"&&q!==void 0&&q instanceof WorkerGlobalScope}let z=null;function F(q){return typeof ImageBitmap<"u"&&q instanceof ImageBitmap}let B="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII=";function O(q,D,Y,pe,Ce){return t(this,void 0,void 0,function*(){if(typeof VideoFrame>"u")throw new Error("VideoFrame not supported");let Ue=new VideoFrame(q,{timestamp:0});try{let Ge=Ue?.format;if(!Ge||!Ge.startsWith("BGR")&&!Ge.startsWith("RGB"))throw new Error(`Unrecognized format ${Ge}`);let ut=Ge.startsWith("BGR"),Tt=new Uint8ClampedArray(pe*Ce*4);if(yield Ue.copyTo(Tt,function(Ft,$t,lr,Ar,zr){let Kr=4*Math.max(-$t,0),la=(Math.max(0,lr)-lr)*Ar*4+Kr,za=4*Ar,ja=Math.max(0,$t),gi=Math.max(0,lr);return{rect:{x:ja,y:gi,width:Math.min(Ft.width,$t+Ar)-ja,height:Math.min(Ft.height,lr+zr)-gi},layout:[{offset:la,stride:za}]}}(q,D,Y,pe,Ce)),ut)for(let Ft=0;Ft<Tt.length;Ft+=4){let $t=Tt[Ft];Tt[Ft]=Tt[Ft+2],Tt[Ft+2]=$t}return Tt}finally{Ue.close()}})}let I,N,U="AbortError";function W(){return new Error(U)}let Q={MAX_PARALLEL_IMAGE_REQUESTS:16,MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:8,MAX_TILE_CACHE_ZOOM_LEVELS:5,REGISTERED_PROTOCOLS:{},WORKER_URL:""};function ue(q){return Q.REGISTERED_PROTOCOLS[q.substring(0,q.indexOf("://"))]}let se="global-dispatcher";class he extends Error{constructor(D,Y,pe,Ce){super(`AJAXError: ${Y} (${D}): ${pe}`),this.status=D,this.statusText=Y,this.url=pe,this.body=Ce}}let G=()=>L(self)?self.worker&&self.worker.referrer:(window.location.protocol==="blob:"?window.parent:window).location.href,$=function(q,D){if(/:\/\//.test(q.url)&&!/^https?:|^file:/.test(q.url)){let pe=ue(q.url);if(pe)return pe(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,targetMapId:se},D)}if(!(/^file:/.test(Y=q.url)||/^file:/.test(G())&&!/^\w+:/.test(Y))){if(fetch&&Request&&AbortController&&Object.prototype.hasOwnProperty.call(Request.prototype,"signal"))return function(pe,Ce){return t(this,void 0,void 0,function*(){let Ue=new Request(pe.url,{method:pe.method||"GET",body:pe.body,credentials:pe.credentials,headers:pe.headers,cache:pe.cache,referrer:G(),signal:Ce.signal});pe.type!=="json"||Ue.headers.has("Accept")||Ue.headers.set("Accept","application/json");let Ge=yield fetch(Ue);if(!Ge.ok){let Ft=yield Ge.blob();throw new he(Ge.status,Ge.statusText,pe.url,Ft)}let ut;ut=pe.type==="arrayBuffer"||pe.type==="image"?Ge.arrayBuffer():pe.type==="json"?Ge.json():Ge.text();let Tt=yield ut;if(Ce.signal.aborted)throw W();return{data:Tt,cacheControl:Ge.headers.get("Cache-Control"),expires:Ge.headers.get("Expires")}})}(q,D);if(L(self)&&self.worker&&self.worker.actor)return self.worker.actor.sendAsync({type:"GR",data:q,mustQueue:!0,targetMapId:se},D)}var Y;return function(pe,Ce){return new Promise((Ue,Ge)=>{var ut;let Tt=new XMLHttpRequest;Tt.open(pe.method||"GET",pe.url,!0),pe.type!=="arrayBuffer"&&pe.type!=="image"||(Tt.responseType="arraybuffer");for(let Ft in pe.headers)Tt.setRequestHeader(Ft,pe.headers[Ft]);pe.type==="json"&&(Tt.responseType="text",!((ut=pe.headers)===null||ut===void 0)&&ut.Accept||Tt.setRequestHeader("Accept","application/json")),Tt.withCredentials=pe.credentials==="include",Tt.onerror=()=>{Ge(new Error(Tt.statusText))},Tt.onload=()=>{if(!Ce.signal.aborted)if((Tt.status>=200&&Tt.status<300||Tt.status===0)&&Tt.response!==null){let Ft=Tt.response;if(pe.type==="json")try{Ft=JSON.parse(Tt.response)}catch($t){return void Ge($t)}Ue({data:Ft,cacheControl:Tt.getResponseHeader("Cache-Control"),expires:Tt.getResponseHeader("Expires")})}else{let Ft=new Blob([Tt.response],{type:Tt.getResponseHeader("Content-Type")});Ge(new he(Tt.status,Tt.statusText,pe.url,Ft))}},Ce.signal.addEventListener("abort",()=>{Tt.abort(),Ge(W())}),Tt.send(pe.body)})}(q,D)};function J(q){if(!q||q.indexOf("://")<=0||q.indexOf("data:image/")===0||q.indexOf("blob:")===0)return!0;let D=new URL(q),Y=window.location;return D.protocol===Y.protocol&&D.host===Y.host}function Z(q,D,Y){Y[q]&&Y[q].indexOf(D)!==-1||(Y[q]=Y[q]||[],Y[q].push(D))}function re(q,D,Y){if(Y&&Y[q]){let pe=Y[q].indexOf(D);pe!==-1&&Y[q].splice(pe,1)}}class ne{constructor(D,Y={}){E(this,Y),this.type=D}}class j extends ne{constructor(D,Y={}){super("error",E({error:D},Y))}}class ee{on(D,Y){return this._listeners=this._listeners||{},Z(D,Y,this._listeners),this}off(D,Y){return re(D,Y,this._listeners),re(D,Y,this._oneTimeListeners),this}once(D,Y){return Y?(this._oneTimeListeners=this._oneTimeListeners||{},Z(D,Y,this._oneTimeListeners),this):new Promise(pe=>this.once(D,pe))}fire(D,Y){typeof D=="string"&&(D=new ne(D,Y||{}));let pe=D.type;if(this.listens(pe)){D.target=this;let Ce=this._listeners&&this._listeners[pe]?this._listeners[pe].slice():[];for(let ut of Ce)ut.call(this,D);let Ue=this._oneTimeListeners&&this._oneTimeListeners[pe]?this._oneTimeListeners[pe].slice():[];for(let ut of Ue)re(pe,ut,this._oneTimeListeners),ut.call(this,D);let Ge=this._eventedParent;Ge&&(E(D,typeof this._eventedParentData=="function"?this._eventedParentData():this._eventedParentData),Ge.fire(D))}else D instanceof j&&console.error(D.error);return this}listens(D){return this._listeners&&this._listeners[D]&&this._listeners[D].length>0||this._oneTimeListeners&&this._oneTimeListeners[D]&&this._oneTimeListeners[D].length>0||this._eventedParent&&this._eventedParent.listens(D)}setEventedParent(D,Y){return this._eventedParent=D,this._eventedParentData=Y,this}}var ie={$version:8,$root:{version:{required:!0,type:"enum",values:[8]},name:{type:"string"},metadata:{type:"*"},center:{type:"array",value:"number"},zoom:{type:"number"},bearing:{type:"number",default:0,period:360,units:"degrees"},pitch:{type:"number",default:0,units:"degrees"},light:{type:"light"},sky:{type:"sky"},projection:{type:"projection"},terrain:{type:"terrain"},sources:{required:!0,type:"sources"},sprite:{type:"sprite"},glyphs:{type:"string"},transition:{type:"transition"},layers:{required:!0,type:"array",value:"layer"}},sources:{"*":{type:"source"}},source:["source_vector","source_raster","source_raster_dem","source_geojson","source_video","source_image"],source_vector:{type:{required:!0,type:"enum",values:{vector:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},attribution:{type:"string"},promoteId:{type:"promoteId"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster:{type:{required:!0,type:"enum",values:{raster:{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},scheme:{type:"enum",values:{xyz:{},tms:{}},default:"xyz"},attribution:{type:"string"},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_raster_dem:{type:{required:!0,type:"enum",values:{"raster-dem":{}}},url:{type:"string"},tiles:{type:"array",value:"string"},bounds:{type:"array",value:"number",length:4,default:[-180,-85.051129,180,85.051129]},minzoom:{type:"number",default:0},maxzoom:{type:"number",default:22},tileSize:{type:"number",default:512,units:"pixels"},attribution:{type:"string"},encoding:{type:"enum",values:{terrarium:{},mapbox:{},custom:{}},default:"mapbox"},redFactor:{type:"number",default:1},blueFactor:{type:"number",default:1},greenFactor:{type:"number",default:1},baseShift:{type:"number",default:0},volatile:{type:"boolean",default:!1},"*":{type:"*"}},source_geojson:{type:{required:!0,type:"enum",values:{geojson:{}}},data:{required:!0,type:"*"},maxzoom:{type:"number",default:18},attribution:{type:"string"},buffer:{type:"number",default:128,maximum:512,minimum:0},filter:{type:"*"},tolerance:{type:"number",default:.375},cluster:{type:"boolean",default:!1},clusterRadius:{type:"number",default:50,minimum:0},clusterMaxZoom:{type:"number"},clusterMinPoints:{type:"number"},clusterProperties:{type:"*"},lineMetrics:{type:"boolean",default:!1},generateId:{type:"boolean",default:!1},promoteId:{type:"promoteId"}},source_video:{type:{required:!0,type:"enum",values:{video:{}}},urls:{required:!0,type:"array",value:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},source_image:{type:{required:!0,type:"enum",values:{image:{}}},url:{required:!0,type:"string"},coordinates:{required:!0,type:"array",length:4,value:{type:"array",length:2,value:"number"}}},layer:{id:{type:"string",required:!0},type:{type:"enum",values:{fill:{},line:{},symbol:{},circle:{},heatmap:{},"fill-extrusion":{},raster:{},hillshade:{},background:{}},required:!0},metadata:{type:"*"},source:{type:"string"},"source-layer":{type:"string"},minzoom:{type:"number",minimum:0,maximum:24},maxzoom:{type:"number",minimum:0,maximum:24},filter:{type:"filter"},layout:{type:"layout"},paint:{type:"paint"}},layout:["layout_fill","layout_line","layout_circle","layout_heatmap","layout_fill-extrusion","layout_symbol","layout_raster","layout_hillshade","layout_background"],layout_background:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_fill:{"fill-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_circle:{"circle-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_heatmap:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},"layout_fill-extrusion":{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_line:{"line-cap":{type:"enum",values:{butt:{},round:{},square:{}},default:"butt",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-join":{type:"enum",values:{bevel:{},round:{},miter:{}},default:"miter",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"line-miter-limit":{type:"number",default:2,requires:[{"line-join":"miter"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-round-limit":{type:"number",default:1.05,requires:[{"line-join":"round"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_symbol:{"symbol-placement":{type:"enum",values:{point:{},line:{},"line-center":{}},default:"point",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-spacing":{type:"number",default:250,minimum:1,units:"pixels",requires:[{"symbol-placement":"line"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"symbol-avoid-edges":{type:"boolean",default:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"symbol-sort-key":{type:"number",expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"symbol-z-order":{type:"enum",values:{auto:{},"viewport-y":{},source:{}},default:"auto",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-allow-overlap":{type:"boolean",default:!1,requires:["icon-image",{"!":"icon-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-ignore-placement":{type:"boolean",default:!1,requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-optional":{type:"boolean",default:!1,requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-rotation-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-size":{type:"number",default:1,minimum:0,units:"factor of the original icon size",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-text-fit":{type:"enum",values:{none:{},width:{},height:{},both:{}},default:"none",requires:["icon-image","text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-text-fit-padding":{type:"array",value:"number",length:4,default:[0,0,0,0],units:"pixels",requires:["icon-image","text-field",{"icon-text-fit":["both","width","height"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-image":{type:"resolvedImage",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-padding":{type:"padding",default:[2],units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-keep-upright":{type:"boolean",default:!1,requires:["icon-image",{"icon-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"icon-offset":{type:"array",value:"number",length:2,default:[0,0],requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"icon-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-pitch-alignment":{type:"enum",values:{map:{},viewport:{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotation-alignment":{type:"enum",values:{map:{},viewport:{},"viewport-glyph":{},auto:{}},default:"auto",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-field":{type:"formatted",default:"",tokens:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-font":{type:"array",value:"string",default:["Open Sans Regular","Arial Unicode MS Regular"],requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-size":{type:"number",default:16,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-width":{type:"number",default:10,minimum:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-line-height":{type:"number",default:1.2,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-letter-spacing":{type:"number",default:0,units:"ems",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-justify":{type:"enum",values:{auto:{},left:{},center:{},right:{}},default:"center",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-radial-offset":{type:"number",units:"ems",default:0,requires:["text-field"],"property-type":"data-driven",expression:{interpolated:!0,parameters:["zoom","feature"]}},"text-variable-anchor":{type:"array",value:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-variable-anchor-offset":{type:"variableAnchorOffsetCollection",requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-anchor":{type:"enum",values:{center:{},left:{},right:{},top:{},bottom:{},"top-left":{},"top-right":{},"bottom-left":{},"bottom-right":{}},default:"center",requires:["text-field",{"!":"text-variable-anchor"}],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-max-angle":{type:"number",default:45,units:"degrees",requires:["text-field",{"symbol-placement":["line","line-center"]}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-writing-mode":{type:"array",value:"enum",values:{horizontal:{},vertical:{}},requires:["text-field",{"symbol-placement":["point"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-rotate":{type:"number",default:0,period:360,units:"degrees",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-padding":{type:"number",default:2,minimum:0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-keep-upright":{type:"boolean",default:!0,requires:["text-field",{"text-rotation-alignment":"map"},{"symbol-placement":["line","line-center"]}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-transform":{type:"enum",values:{none:{},uppercase:{},lowercase:{}},default:"none",requires:["text-field"],expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-offset":{type:"array",value:"number",units:"ems",length:2,default:[0,0],requires:["text-field",{"!":"text-radial-offset"}],expression:{interpolated:!0,parameters:["zoom","feature"]},"property-type":"data-driven"},"text-allow-overlap":{type:"boolean",default:!1,requires:["text-field",{"!":"text-overlap"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-overlap":{type:"enum",values:{never:{},always:{},cooperative:{}},requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-ignore-placement":{type:"boolean",default:!1,requires:["text-field"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-optional":{type:"boolean",default:!1,requires:["text-field","icon-image"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_raster:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},layout_hillshade:{visibility:{type:"enum",values:{visible:{},none:{}},default:"visible","property-type":"constant"}},filter:{type:"array",value:"*"},filter_operator:{type:"enum",values:{"==":{},"!=":{},">":{},">=":{},"<":{},"<=":{},in:{},"!in":{},all:{},any:{},none:{},has:{},"!has":{}}},geometry_type:{type:"enum",values:{Point:{},LineString:{},Polygon:{}}},function:{expression:{type:"expression"},stops:{type:"array",value:"function_stop"},base:{type:"number",default:1,minimum:0},property:{type:"string",default:"$zoom"},type:{type:"enum",values:{identity:{},exponential:{},interval:{},categorical:{}},default:"exponential"},colorSpace:{type:"enum",values:{rgb:{},lab:{},hcl:{}},default:"rgb"},default:{type:"*",required:!1}},function_stop:{type:"array",minimum:0,maximum:24,value:["number","color"],length:2},expression:{type:"array",value:"*",minimum:1},light:{anchor:{type:"enum",default:"viewport",values:{map:{},viewport:{}},"property-type":"data-constant",transition:!1,expression:{interpolated:!1,parameters:["zoom"]}},position:{type:"array",default:[1.15,210,30],length:3,value:"number","property-type":"data-constant",transition:!0,expression:{interpolated:!0,parameters:["zoom"]}},color:{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},intensity:{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},sky:{"sky-color":{type:"color","property-type":"data-constant",default:"#88C6FC",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-color":{type:"color","property-type":"data-constant",default:"#ffffff",expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"fog-ground-blend":{type:"number","property-type":"data-constant",default:.5,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"horizon-fog-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"sky-horizon-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0},"atmosphere-blend":{type:"number","property-type":"data-constant",default:.8,minimum:0,maximum:1,expression:{interpolated:!0,parameters:["zoom"]},transition:!0}},terrain:{source:{type:"string",required:!0},exaggeration:{type:"number",minimum:0,default:1}},projection:{type:{type:"enum",default:"mercator",values:{mercator:{},globe:{}}}},paint:["paint_fill","paint_line","paint_circle","paint_heatmap","paint_fill-extrusion","paint_symbol","paint_raster","paint_hillshade","paint_background"],paint_fill:{"fill-antialias":{type:"boolean",default:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-outline-color":{type:"color",transition:!0,requires:[{"!":"fill-pattern"},{"fill-antialias":!0}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"}},"paint_fill-extrusion":{"fill-extrusion-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"fill-extrusion-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["fill-extrusion-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"fill-extrusion-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"fill-extrusion-height":{type:"number",default:0,minimum:0,units:"meters",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-base":{type:"number",default:0,minimum:0,units:"meters",transition:!0,requires:["fill-extrusion-height"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"fill-extrusion-vertical-gradient":{type:"boolean",default:!0,transition:!1,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_line:{"line-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"line-pattern"}],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"line-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["line-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"line-width":{type:"number",default:1,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-gap-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-offset":{type:"number",default:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"line-dasharray":{type:"array",value:"number",minimum:0,transition:!0,units:"line widths",requires:[{"!":"line-pattern"}],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"line-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom","feature"]},"property-type":"cross-faded-data-driven"},"line-gradient":{type:"color",transition:!1,requires:[{"!":"line-dasharray"},{"!":"line-pattern"},{source:"geojson",has:{lineMetrics:!0}}],expression:{interpolated:!0,parameters:["line-progress"]},"property-type":"color-ramp"}},paint_circle:{"circle-radius":{type:"number",default:5,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-blur":{type:"number",default:0,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"circle-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["circle-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-scale":{type:"enum",values:{map:{},viewport:{}},default:"map",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-pitch-alignment":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"circle-stroke-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"circle-stroke-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"}},paint_heatmap:{"heatmap-radius":{type:"number",default:30,minimum:1,transition:!0,units:"pixels",expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-weight":{type:"number",default:1,minimum:0,transition:!1,expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"heatmap-intensity":{type:"number",default:1,minimum:0,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"heatmap-color":{type:"color",default:["interpolate",["linear"],["heatmap-density"],0,"rgba(0, 0, 255, 0)",.1,"royalblue",.3,"cyan",.5,"lime",.7,"yellow",1,"red"],transition:!1,expression:{interpolated:!0,parameters:["heatmap-density"]},"property-type":"color-ramp"},"heatmap-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_symbol:{"icon-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-color":{type:"color",default:"#000000",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"icon-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["icon-image"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"icon-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["icon-image","icon-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"text-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-color":{type:"color",default:"#000000",transition:!0,overridable:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-color":{type:"color",default:"rgba(0, 0, 0, 0)",transition:!0,requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-width":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-halo-blur":{type:"number",default:0,minimum:0,transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom","feature","feature-state"]},"property-type":"data-driven"},"text-translate":{type:"array",value:"number",length:2,default:[0,0],transition:!0,units:"pixels",requires:["text-field"],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"text-translate-anchor":{type:"enum",values:{map:{},viewport:{}},default:"map",requires:["text-field","text-translate"],expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"}},paint_raster:{"raster-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-hue-rotate":{type:"number",default:0,period:360,transition:!0,units:"degrees",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-min":{type:"number",default:0,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-brightness-max":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-saturation":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-contrast":{type:"number",default:0,minimum:-1,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"raster-resampling":{type:"enum",values:{linear:{},nearest:{}},default:"linear",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"raster-fade-duration":{type:"number",default:300,minimum:0,transition:!1,units:"milliseconds",expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_hillshade:{"hillshade-illumination-direction":{type:"number",default:335,minimum:0,maximum:359,transition:!1,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-illumination-anchor":{type:"enum",values:{map:{},viewport:{}},default:"viewport",expression:{interpolated:!1,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-exaggeration":{type:"number",default:.5,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-shadow-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-highlight-color":{type:"color",default:"#FFFFFF",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"hillshade-accent-color":{type:"color",default:"#000000",transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},paint_background:{"background-color":{type:"color",default:"#000000",transition:!0,requires:[{"!":"background-pattern"}],expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"},"background-pattern":{type:"resolvedImage",transition:!0,expression:{interpolated:!1,parameters:["zoom"]},"property-type":"cross-faded"},"background-opacity":{type:"number",default:1,minimum:0,maximum:1,transition:!0,expression:{interpolated:!0,parameters:["zoom"]},"property-type":"data-constant"}},transition:{duration:{type:"number",default:300,minimum:0,units:"milliseconds"},delay:{type:"number",default:0,minimum:0,units:"milliseconds"}},"property-type":{"data-driven":{type:"property-type"},"cross-faded":{type:"property-type"},"cross-faded-data-driven":{type:"property-type"},"color-ramp":{type:"property-type"},"data-constant":{type:"property-type"},constant:{type:"property-type"}},promoteId:{"*":{type:"string"}}};let fe=["type","source","source-layer","minzoom","maxzoom","filter","layout"];function be(q,D){let Y={};for(let pe in q)pe!=="ref"&&(Y[pe]=q[pe]);return fe.forEach(pe=>{pe in D&&(Y[pe]=D[pe])}),Y}function Ae(q,D){if(Array.isArray(q)){if(!Array.isArray(D)||q.length!==D.length)return!1;for(let Y=0;Y<q.length;Y++)if(!Ae(q[Y],D[Y]))return!1;return!0}if(typeof q=="object"&&q!==null&&D!==null){if(typeof D!="object"||Object.keys(q).length!==Object.keys(D).length)return!1;for(let Y in q)if(!Ae(q[Y],D[Y]))return!1;return!0}return q===D}function Be(q,D){q.push(D)}function Ie(q,D,Y){Be(Y,{command:"addSource",args:[q,D[q]]})}function Ze(q,D,Y){Be(D,{command:"removeSource",args:[q]}),Y[q]=!0}function at(q,D,Y,pe){Ze(q,Y,pe),Ie(q,D,Y)}function it(q,D,Y){let pe;for(pe in q[Y])if(Object.prototype.hasOwnProperty.call(q[Y],pe)&&pe!=="data"&&!Ae(q[Y][pe],D[Y][pe]))return!1;for(pe in D[Y])if(Object.prototype.hasOwnProperty.call(D[Y],pe)&&pe!=="data"&&!Ae(q[Y][pe],D[Y][pe]))return!1;return!0}function et(q,D,Y,pe,Ce,Ue){q=q||{},D=D||{};for(let Ge in q)Object.prototype.hasOwnProperty.call(q,Ge)&&(Ae(q[Ge],D[Ge])||Y.push({command:Ue,args:[pe,Ge,D[Ge],Ce]}));for(let Ge in D)Object.prototype.hasOwnProperty.call(D,Ge)&&!Object.prototype.hasOwnProperty.call(q,Ge)&&(Ae(q[Ge],D[Ge])||Y.push({command:Ue,args:[pe,Ge,D[Ge],Ce]}))}function lt(q){return q.id}function Me(q,D){return q[D.id]=D,q}class ge{constructor(D,Y,pe,Ce){this.message=(D?`${D}: `:"")+pe,Ce&&(this.identifier=Ce),Y!=null&&Y.__line__&&(this.line=Y.__line__)}}function ce(q,...D){for(let Y of D)for(let pe in Y)q[pe]=Y[pe];return q}class ze extends Error{constructor(D,Y){super(Y),this.message=Y,this.key=D}}class tt{constructor(D,Y=[]){this.parent=D,this.bindings={};for(let[pe,Ce]of Y)this.bindings[pe]=Ce}concat(D){return new tt(this,D)}get(D){if(this.bindings[D])return this.bindings[D];if(this.parent)return this.parent.get(D);throw new Error(`${D} not found in scope.`)}has(D){return!!this.bindings[D]||!!this.parent&&this.parent.has(D)}}let nt={kind:"null"},Qe={kind:"number"},Ct={kind:"string"},St={kind:"boolean"},Ot={kind:"color"},jt={kind:"object"},ur={kind:"value"},ar={kind:"collator"},Cr={kind:"formatted"},vr={kind:"padding"},_r={kind:"resolvedImage"},yt={kind:"variableAnchorOffsetCollection"};function Fe(q,D){return{kind:"array",itemType:q,N:D}}function Ke(q){if(q.kind==="array"){let D=Ke(q.itemType);return typeof q.N=="number"?`array<${D}, ${q.N}>`:q.itemType.kind==="value"?"array":`array<${D}>`}return q.kind}let Ne=[nt,Qe,Ct,St,Ot,Cr,jt,Fe(ur),vr,_r,yt];function Ee(q,D){if(D.kind==="error")return null;if(q.kind==="array"){if(D.kind==="array"&&(D.N===0&&D.itemType.kind==="value"||!Ee(q.itemType,D.itemType))&&(typeof q.N!="number"||q.N===D.N))return null}else{if(q.kind===D.kind)return null;if(q.kind==="value"){for(let Y of Ne)if(!Ee(Y,D))return null}}return`Expected ${Ke(q)} but found ${Ke(D)} instead.`}function Ve(q,D){return D.some(Y=>Y.kind===q.kind)}function ke(q,D){return D.some(Y=>Y==="null"?q===null:Y==="array"?Array.isArray(q):Y==="object"?q&&!Array.isArray(q)&&typeof q=="object":Y===typeof q)}function Te(q,D){return q.kind==="array"&&D.kind==="array"?q.itemType.kind===D.itemType.kind&&typeof q.N=="number":q.kind===D.kind}let Le=.96422,rt=.82521,dt=4/29,xt=6/29,It=3*xt*xt,Bt=xt*xt*xt,Gt=Math.PI/180,Kt=180/Math.PI;function sr(q){return(q%=360)<0&&(q+=360),q}function sa([q,D,Y,pe]){let Ce,Ue,Ge=La((.2225045*(q=Aa(q))+.7168786*(D=Aa(D))+.0606169*(Y=Aa(Y)))/1);q===D&&D===Y?Ce=Ue=Ge:(Ce=La((.4360747*q+.3850649*D+.1430804*Y)/Le),Ue=La((.0139322*q+.0971045*D+.7141733*Y)/rt));let ut=116*Ge-16;return[ut<0?0:ut,500*(Ce-Ge),200*(Ge-Ue),pe]}function Aa(q){return q<=.04045?q/12.92:Math.pow((q+.055)/1.055,2.4)}function La(q){return q>Bt?Math.pow(q,1/3):q/It+dt}function ka([q,D,Y,pe]){let Ce=(q+16)/116,Ue=isNaN(D)?Ce:Ce+D/500,Ge=isNaN(Y)?Ce:Ce-Y/200;return Ce=1*Ma(Ce),Ue=Le*Ma(Ue),Ge=rt*Ma(Ge),[Ga(3.1338561*Ue-1.6168667*Ce-.4906146*Ge),Ga(-.9787684*Ue+1.9161415*Ce+.033454*Ge),Ga(.0719453*Ue-.2289914*Ce+1.4052427*Ge),pe]}function Ga(q){return(q=q<=.00304?12.92*q:1.055*Math.pow(q,1/2.4)-.055)<0?0:q>1?1:q}function Ma(q){return q>xt?q*q*q:It*(q-dt)}function Ua(q){return parseInt(q.padEnd(2,q),16)/255}function ni(q,D){return Wt(D?q/100:q,0,1)}function Wt(q,D,Y){return Math.min(Math.max(D,q),Y)}function zt(q){return!q.some(Number.isNaN)}let Vt={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};class Ut{constructor(D,Y,pe,Ce=1,Ue=!0){this.r=D,this.g=Y,this.b=pe,this.a=Ce,Ue||(this.r*=Ce,this.g*=Ce,this.b*=Ce,Ce||this.overwriteGetter("rgb",[D,Y,pe,Ce]))}static parse(D){if(D instanceof Ut)return D;if(typeof D!="string")return;let Y=function(pe){if((pe=pe.toLowerCase().trim())==="transparent")return[0,0,0,0];let Ce=Vt[pe];if(Ce){let[Ge,ut,Tt]=Ce;return[Ge/255,ut/255,Tt/255,1]}if(pe.startsWith("#")&&/^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/.test(pe)){let Ge=pe.length<6?1:2,ut=1;return[Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+=Ge)),Ua(pe.slice(ut,ut+Ge)||"ff")]}if(pe.startsWith("rgb")){let Ge=pe.match(/^rgba?\(\s*([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s+|\s*(,)\s*)([\de.+-]+)(%)?(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ge){let[ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi]=Ge,ei=[$t||" ",zr||" ",za].join("");if(ei===" "||ei===" /"||ei===",,"||ei===",,,"){let hi=[Ft,Ar,la].join(""),Ei=hi==="%%%"?100:hi===""?255:0;if(Ei){let En=[Wt(+Tt/Ei,0,1),Wt(+lr/Ei,0,1),Wt(+Kr/Ei,0,1),ja?ni(+ja,gi):1];if(zt(En))return En}}return}}let Ue=pe.match(/^hsla?\(\s*([\de.+-]+)(?:deg)?(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s+|\s*(,)\s*)([\de.+-]+)%(?:\s*([,\/])\s*([\de.+-]+)(%)?)?\s*\)$/);if(Ue){let[Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr]=Ue,la=[Tt||" ",$t||" ",Ar].join("");if(la===" "||la===" /"||la===",,"||la===",,,"){let za=[+ut,Wt(+Ft,0,100),Wt(+lr,0,100),zr?ni(+zr,Kr):1];if(zt(za))return function([ja,gi,ei,hi]){function Ei(En){let fo=(En+ja/30)%12,ss=gi*Math.min(ei,1-ei);return ei-ss*Math.max(-1,Math.min(fo-3,9-fo,1))}return ja=sr(ja),gi/=100,ei/=100,[Ei(0),Ei(8),Ei(4),hi]}(za)}}}(D);return Y?new Ut(...Y,!1):void 0}get rgb(){let{r:D,g:Y,b:pe,a:Ce}=this,Ue=Ce||1/0;return this.overwriteGetter("rgb",[D/Ue,Y/Ue,pe/Ue,Ce])}get hcl(){return this.overwriteGetter("hcl",function(D){let[Y,pe,Ce,Ue]=sa(D),Ge=Math.sqrt(pe*pe+Ce*Ce);return[Math.round(1e4*Ge)?sr(Math.atan2(Ce,pe)*Kt):NaN,Ge,Y,Ue]}(this.rgb))}get lab(){return this.overwriteGetter("lab",sa(this.rgb))}overwriteGetter(D,Y){return Object.defineProperty(this,D,{value:Y}),Y}toString(){let[D,Y,pe,Ce]=this.rgb;return`rgba(${[D,Y,pe].map(Ue=>Math.round(255*Ue)).join(",")},${Ce})`}}Ut.black=new Ut(0,0,0,1),Ut.white=new Ut(1,1,1,1),Ut.transparent=new Ut(0,0,0,0),Ut.red=new Ut(1,0,0,1);class xr{constructor(D,Y,pe){this.sensitivity=D?Y?"variant":"case":Y?"accent":"base",this.locale=pe,this.collator=new Intl.Collator(this.locale?this.locale:[],{sensitivity:this.sensitivity,usage:"search"})}compare(D,Y){return this.collator.compare(D,Y)}resolvedLocale(){return new Intl.Collator(this.locale?this.locale:[]).resolvedOptions().locale}}class Zr{constructor(D,Y,pe,Ce,Ue){this.text=D,this.image=Y,this.scale=pe,this.fontStack=Ce,this.textColor=Ue}}class pa{constructor(D){this.sections=D}static fromString(D){return new pa([new Zr(D,null,null,null,null)])}isEmpty(){return this.sections.length===0||!this.sections.some(D=>D.text.length!==0||D.image&&D.image.name.length!==0)}static factory(D){return D instanceof pa?D:pa.fromString(D)}toString(){return this.sections.length===0?"":this.sections.map(D=>D.text).join("")}}class Xr{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Xr)return D;if(typeof D=="number")return new Xr([D,D,D,D]);if(Array.isArray(D)&&!(D.length<1||D.length>4)){for(let Y of D)if(typeof Y!="number")return;switch(D.length){case 1:D=[D[0],D[0],D[0],D[0]];break;case 2:D=[D[0],D[1],D[0],D[1]];break;case 3:D=[D[0],D[1],D[2],D[1]]}return new Xr(D)}}toString(){return JSON.stringify(this.values)}}let Ea=new Set(["center","left","right","top","bottom","top-left","top-right","bottom-left","bottom-right"]);class Fa{constructor(D){this.values=D.slice()}static parse(D){if(D instanceof Fa)return D;if(Array.isArray(D)&&!(D.length<1)&&D.length%2==0){for(let Y=0;Y<D.length;Y+=2){let pe=D[Y],Ce=D[Y+1];if(typeof pe!="string"||!Ea.has(pe)||!Array.isArray(Ce)||Ce.length!==2||typeof Ce[0]!="number"||typeof Ce[1]!="number")return}return new Fa(D)}}toString(){return JSON.stringify(this.values)}}class qa{constructor(D){this.name=D.name,this.available=D.available}toString(){return this.name}static fromString(D){return D?new qa({name:D,available:!1}):null}}function ya(q,D,Y,pe){return typeof q=="number"&&q>=0&&q<=255&&typeof D=="number"&&D>=0&&D<=255&&typeof Y=="number"&&Y>=0&&Y<=255?pe===void 0||typeof pe=="number"&&pe>=0&&pe<=1?null:`Invalid rgba value [${[q,D,Y,pe].join(", ")}]: 'a' must be between 0 and 1.`:`Invalid rgba value [${(typeof pe=="number"?[q,D,Y,pe]:[q,D,Y]).join(", ")}]: 'r', 'g', and 'b' must be between 0 and 255.`}function $a(q){if(q===null||typeof q=="string"||typeof q=="boolean"||typeof q=="number"||q instanceof Ut||q instanceof xr||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa)return!0;if(Array.isArray(q)){for(let D of q)if(!$a(D))return!1;return!0}if(typeof q=="object"){for(let D in q)if(!$a(q[D]))return!1;return!0}return!1}function mt(q){if(q===null)return nt;if(typeof q=="string")return Ct;if(typeof q=="boolean")return St;if(typeof q=="number")return Qe;if(q instanceof Ut)return Ot;if(q instanceof xr)return ar;if(q instanceof pa)return Cr;if(q instanceof Xr)return vr;if(q instanceof Fa)return yt;if(q instanceof qa)return _r;if(Array.isArray(q)){let D=q.length,Y;for(let pe of q){let Ce=mt(pe);if(Y){if(Y===Ce)continue;Y=ur;break}Y=Ce}return Fe(Y||ur,D)}return jt}function gt(q){let D=typeof q;return q===null?"":D==="string"||D==="number"||D==="boolean"?String(q):q instanceof Ut||q instanceof pa||q instanceof Xr||q instanceof Fa||q instanceof qa?q.toString():JSON.stringify(q)}class Er{constructor(D,Y){this.type=D,this.value=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'literal' expression requires exactly one argument, but found ${D.length-1} instead.`);if(!$a(D[1]))return Y.error("invalid value");let pe=D[1],Ce=mt(pe),Ue=Y.expectedType;return Ce.kind!=="array"||Ce.N!==0||!Ue||Ue.kind!=="array"||typeof Ue.N=="number"&&Ue.N!==0||(Ce=Ue),new Er(Ce,pe)}evaluate(){return this.value}eachChild(){}outputDefined(){return!0}}class kr{constructor(D){this.name="ExpressionEvaluationError",this.message=D}toJSON(){return this.message}}let br={string:Ct,number:Qe,boolean:St,object:jt};class Tr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe,Ce=1,Ue=D[0];if(Ue==="array"){let ut,Tt;if(D.length>2){let Ft=D[1];if(typeof Ft!="string"||!(Ft in br)||Ft==="object")return Y.error('The item type argument of "array" must be one of string, number, boolean',1);ut=br[Ft],Ce++}else ut=ur;if(D.length>3){if(D[2]!==null&&(typeof D[2]!="number"||D[2]<0||D[2]!==Math.floor(D[2])))return Y.error('The length argument to "array" must be a positive integer literal',2);Tt=D[2],Ce++}pe=Fe(ut,Tt)}else{if(!br[Ue])throw new Error(`Types doesn't contain name = ${Ue}`);pe=br[Ue]}let Ge=[];for(;Ce<D.length;Ce++){let ut=Y.parse(D[Ce],Ce,ur);if(!ut)return null;Ge.push(ut)}return new Tr(pe,Ge)}evaluate(D){for(let Y=0;Y<this.args.length;Y++){let pe=this.args[Y].evaluate(D);if(!Ee(this.type,mt(pe)))return pe;if(Y===this.args.length-1)throw new kr(`Expected value to be of type ${Ke(this.type)}, but found ${Ke(mt(pe))} instead.`)}throw new Error}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Mr={"to-boolean":St,"to-color":Ot,"to-number":Qe,"to-string":Ct};class Fr{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[0];if(!Mr[pe])throw new Error(`Can't parse ${pe} as it is not part of the known types`);if((pe==="to-boolean"||pe==="to-string")&&D.length!==2)return Y.error("Expected one argument.");let Ce=Mr[pe],Ue=[];for(let Ge=1;Ge<D.length;Ge++){let ut=Y.parse(D[Ge],Ge,ur);if(!ut)return null;Ue.push(ut)}return new Fr(Ce,Ue)}evaluate(D){switch(this.type.kind){case"boolean":return!!this.args[0].evaluate(D);case"color":{let Y,pe;for(let Ce of this.args){if(Y=Ce.evaluate(D),pe=null,Y instanceof Ut)return Y;if(typeof Y=="string"){let Ue=D.parseColor(Y);if(Ue)return Ue}else if(Array.isArray(Y)&&(pe=Y.length<3||Y.length>4?`Invalid rbga value ${JSON.stringify(Y)}: expected an array containing either three or four numeric values.`:ya(Y[0],Y[1],Y[2],Y[3]),!pe))return new Ut(Y[0]/255,Y[1]/255,Y[2]/255,Y[3])}throw new kr(pe||`Could not parse color from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"padding":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Xr.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse padding from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"variableAnchorOffsetCollection":{let Y;for(let pe of this.args){Y=pe.evaluate(D);let Ce=Fa.parse(Y);if(Ce)return Ce}throw new kr(`Could not parse variableAnchorOffsetCollection from value '${typeof Y=="string"?Y:JSON.stringify(Y)}'`)}case"number":{let Y=null;for(let pe of this.args){if(Y=pe.evaluate(D),Y===null)return 0;let Ce=Number(Y);if(!isNaN(Ce))return Ce}throw new kr(`Could not convert ${JSON.stringify(Y)} to number.`)}case"formatted":return pa.fromString(gt(this.args[0].evaluate(D)));case"resolvedImage":return qa.fromString(gt(this.args[0].evaluate(D)));default:return gt(this.args[0].evaluate(D))}}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}let Lr=["Unknown","Point","LineString","Polygon"];class Jr{constructor(){this.globals=null,this.feature=null,this.featureState=null,this.formattedSection=null,this._parseColorCache={},this.availableImages=null,this.canonical=null}id(){return this.feature&&"id"in this.feature?this.feature.id:null}geometryType(){return this.feature?typeof this.feature.type=="number"?Lr[this.feature.type]:this.feature.type:null}geometry(){return this.feature&&"geometry"in this.feature?this.feature.geometry:null}canonicalID(){return this.canonical}properties(){return this.feature&&this.feature.properties||{}}parseColor(D){let Y=this._parseColorCache[D];return Y||(Y=this._parseColorCache[D]=Ut.parse(D)),Y}}class oa{constructor(D,Y,pe=[],Ce,Ue=new tt,Ge=[]){this.registry=D,this.path=pe,this.key=pe.map(ut=>`[${ut}]`).join(""),this.scope=Ue,this.errors=Ge,this.expectedType=Ce,this._isConstant=Y}parse(D,Y,pe,Ce,Ue={}){return Y?this.concat(Y,pe,Ce)._parse(D,Ue):this._parse(D,Ue)}_parse(D,Y){function pe(Ce,Ue,Ge){return Ge==="assert"?new Tr(Ue,[Ce]):Ge==="coerce"?new Fr(Ue,[Ce]):Ce}if(D!==null&&typeof D!="string"&&typeof D!="boolean"&&typeof D!="number"||(D=["literal",D]),Array.isArray(D)){if(D.length===0)return this.error('Expected an array with at least one element. If you wanted a literal array, use ["literal", []].');let Ce=D[0];if(typeof Ce!="string")return this.error(`Expression name must be a string, but found ${typeof Ce} instead. If you wanted a literal array, use ["literal", [...]].`,0),null;let Ue=this.registry[Ce];if(Ue){let Ge=Ue.parse(D,this);if(!Ge)return null;if(this.expectedType){let ut=this.expectedType,Tt=Ge.type;if(ut.kind!=="string"&&ut.kind!=="number"&&ut.kind!=="boolean"&&ut.kind!=="object"&&ut.kind!=="array"||Tt.kind!=="value")if(ut.kind!=="color"&&ut.kind!=="formatted"&&ut.kind!=="resolvedImage"||Tt.kind!=="value"&&Tt.kind!=="string")if(ut.kind!=="padding"||Tt.kind!=="value"&&Tt.kind!=="number"&&Tt.kind!=="array")if(ut.kind!=="variableAnchorOffsetCollection"||Tt.kind!=="value"&&Tt.kind!=="array"){if(this.checkSubtype(ut,Tt))return null}else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"coerce");else Ge=pe(Ge,ut,Y.typeAnnotation||"assert")}if(!(Ge instanceof Er)&&Ge.type.kind!=="resolvedImage"&&this._isConstant(Ge)){let ut=new Jr;try{Ge=new Er(Ge.type,Ge.evaluate(ut))}catch(Tt){return this.error(Tt.message),null}}return Ge}return this.error(`Unknown expression "${Ce}". If you wanted a literal array, use ["literal", [...]].`,0)}return this.error(D===void 0?"'undefined' value invalid. Use null instead.":typeof D=="object"?'Bare objects invalid. Use ["literal", {...}] instead.':`Expected an array, but found ${typeof D} instead.`)}concat(D,Y,pe){let Ce=typeof D=="number"?this.path.concat(D):this.path,Ue=pe?this.scope.concat(pe):this.scope;return new oa(this.registry,this._isConstant,Ce,Y||null,Ue,this.errors)}error(D,...Y){let pe=`${this.key}${Y.map(Ce=>`[${Ce}]`).join("")}`;this.errors.push(new ze(pe,D))}checkSubtype(D,Y){let pe=Ee(D,Y);return pe&&this.error(pe),pe}}class ca{constructor(D,Y){this.type=Y.type,this.bindings=[].concat(D),this.result=Y}evaluate(D){return this.result.evaluate(D)}eachChild(D){for(let Y of this.bindings)D(Y[1]);D(this.result)}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found ${D.length-1} instead.`);let pe=[];for(let Ue=1;Ue<D.length-1;Ue+=2){let Ge=D[Ue];if(typeof Ge!="string")return Y.error(`Expected string, but found ${typeof Ge} instead.`,Ue);if(/[^a-zA-Z0-9_]/.test(Ge))return Y.error("Variable names must contain only alphanumeric characters or '_'.",Ue);let ut=Y.parse(D[Ue+1],Ue+1);if(!ut)return null;pe.push([Ge,ut])}let Ce=Y.parse(D[D.length-1],D.length-1,Y.expectedType,pe);return Ce?new ca(pe,Ce):null}outputDefined(){return this.result.outputDefined()}}class kt{constructor(D,Y){this.type=Y.type,this.name=D,this.boundExpression=Y}static parse(D,Y){if(D.length!==2||typeof D[1]!="string")return Y.error("'var' expression requires exactly one string literal argument.");let pe=D[1];return Y.scope.has(pe)?new kt(pe,Y.scope.get(pe)):Y.error(`Unknown variable "${pe}". Make sure "${pe}" has been bound in an enclosing "let" expression before using it.`,1)}evaluate(D){return this.boundExpression.evaluate(D)}eachChild(){}outputDefined(){return!1}}class ir{constructor(D,Y,pe){this.type=D,this.index=Y,this.input=pe}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,Qe),Ce=Y.parse(D[2],2,Fe(Y.expectedType||ur));return pe&&Ce?new ir(Ce.type.itemType,pe,Ce):null}evaluate(D){let Y=this.index.evaluate(D),pe=this.input.evaluate(D);if(Y<0)throw new kr(`Array index out of bounds: ${Y} < 0.`);if(Y>=pe.length)throw new kr(`Array index out of bounds: ${Y} > ${pe.length-1}.`);if(Y!==Math.floor(Y))throw new kr(`Array index must be an integer, but found ${Y} instead.`);return pe[Y]}eachChild(D){D(this.index),D(this.input)}outputDefined(){return!1}}class mr{constructor(D,Y){this.type=St,this.needle=D,this.haystack=Y}static parse(D,Y){if(D.length!==3)return Y.error(`Expected 2 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);return pe&&Ce?Ve(pe.type,[St,Ct,Qe,nt,ur])?new mr(pe,Ce):Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`):null}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!pe)return!1;if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);if(!ke(pe,["string","array"]))throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`);return pe.indexOf(Y)>=0}eachChild(D){D(this.needle),D(this.haystack)}outputDefined(){return!0}}class $r{constructor(D,Y,pe){this.type=Qe,this.needle=D,this.haystack=Y,this.fromIndex=pe}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,ur);if(!pe||!Ce)return null;if(!Ve(pe.type,[St,Ct,Qe,nt,ur]))return Y.error(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new $r(pe,Ce,Ue):null}return new $r(pe,Ce)}evaluate(D){let Y=this.needle.evaluate(D),pe=this.haystack.evaluate(D);if(!ke(Y,["boolean","string","number","null"]))throw new kr(`Expected first argument to be of type boolean, string, number or null, but found ${Ke(mt(Y))} instead.`);let Ce;if(this.fromIndex&&(Ce=this.fromIndex.evaluate(D)),ke(pe,["string"])){let Ue=pe.indexOf(Y,Ce);return Ue===-1?-1:[...pe.slice(0,Ue)].length}if(ke(pe,["array"]))return pe.indexOf(Y,Ce);throw new kr(`Expected second argument to be of type array or string, but found ${Ke(mt(pe))} instead.`)}eachChild(D){D(this.needle),D(this.haystack),this.fromIndex&&D(this.fromIndex)}outputDefined(){return!1}}class ma{constructor(D,Y,pe,Ce,Ue,Ge){this.inputType=D,this.type=Y,this.input=pe,this.cases=Ce,this.outputs=Ue,this.otherwise=Ge}static parse(D,Y){if(D.length<5)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if(D.length%2!=1)return Y.error("Expected an even number of arguments.");let pe,Ce;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ce=Y.expectedType);let Ue={},Ge=[];for(let Ft=2;Ft<D.length-1;Ft+=2){let $t=D[Ft],lr=D[Ft+1];Array.isArray($t)||($t=[$t]);let Ar=Y.concat(Ft);if($t.length===0)return Ar.error("Expected at least one branch label.");for(let Kr of $t){if(typeof Kr!="number"&&typeof Kr!="string")return Ar.error("Branch labels must be numbers or strings.");if(typeof Kr=="number"&&Math.abs(Kr)>Number.MAX_SAFE_INTEGER)return Ar.error(`Branch labels must be integers no larger than ${Number.MAX_SAFE_INTEGER}.`);if(typeof Kr=="number"&&Math.floor(Kr)!==Kr)return Ar.error("Numeric branch labels must be integer values.");if(pe){if(Ar.checkSubtype(pe,mt(Kr)))return null}else pe=mt(Kr);if(Ue[String(Kr)]!==void 0)return Ar.error("Branch labels must be unique.");Ue[String(Kr)]=Ge.length}let zr=Y.parse(lr,Ft,Ce);if(!zr)return null;Ce=Ce||zr.type,Ge.push(zr)}let ut=Y.parse(D[1],1,ur);if(!ut)return null;let Tt=Y.parse(D[D.length-1],D.length-1,Ce);return Tt?ut.type.kind!=="value"&&Y.concat(1).checkSubtype(pe,ut.type)?null:new ma(pe,Ce,ut,Ue,Ge,Tt):null}evaluate(D){let Y=this.input.evaluate(D);return(mt(Y)===this.inputType&&this.outputs[this.cases[Y]]||this.otherwise).evaluate(D)}eachChild(D){D(this.input),this.outputs.forEach(D),D(this.otherwise)}outputDefined(){return this.outputs.every(D=>D.outputDefined())&&this.otherwise.outputDefined()}}class Ba{constructor(D,Y,pe){this.type=D,this.branches=Y,this.otherwise=pe}static parse(D,Y){if(D.length<4)return Y.error(`Expected at least 3 arguments, but found only ${D.length-1}.`);if(D.length%2!=0)return Y.error("Expected an odd number of arguments.");let pe;Y.expectedType&&Y.expectedType.kind!=="value"&&(pe=Y.expectedType);let Ce=[];for(let Ge=1;Ge<D.length-1;Ge+=2){let ut=Y.parse(D[Ge],Ge,St);if(!ut)return null;let Tt=Y.parse(D[Ge+1],Ge+1,pe);if(!Tt)return null;Ce.push([ut,Tt]),pe=pe||Tt.type}let Ue=Y.parse(D[D.length-1],D.length-1,pe);if(!Ue)return null;if(!pe)throw new Error("Can't infer output type");return new Ba(pe,Ce,Ue)}evaluate(D){for(let[Y,pe]of this.branches)if(Y.evaluate(D))return pe.evaluate(D);return this.otherwise.evaluate(D)}eachChild(D){for(let[Y,pe]of this.branches)D(Y),D(pe);D(this.otherwise)}outputDefined(){return this.branches.every(([D,Y])=>Y.outputDefined())&&this.otherwise.outputDefined()}}class Ca{constructor(D,Y,pe,Ce){this.type=D,this.input=Y,this.beginIndex=pe,this.endIndex=Ce}static parse(D,Y){if(D.length<=2||D.length>=5)return Y.error(`Expected 3 or 4 arguments, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1,ur),Ce=Y.parse(D[2],2,Qe);if(!pe||!Ce)return null;if(!Ve(pe.type,[Fe(ur),Ct,ur]))return Y.error(`Expected first argument to be of type array or string, but found ${Ke(pe.type)} instead`);if(D.length===4){let Ue=Y.parse(D[3],3,Qe);return Ue?new Ca(pe.type,pe,Ce,Ue):null}return new Ca(pe.type,pe,Ce)}evaluate(D){let Y=this.input.evaluate(D),pe=this.beginIndex.evaluate(D),Ce;if(this.endIndex&&(Ce=this.endIndex.evaluate(D)),ke(Y,["string"]))return[...Y].slice(pe,Ce).join("");if(ke(Y,["array"]))return Y.slice(pe,Ce);throw new kr(`Expected first argument to be of type array or string, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input),D(this.beginIndex),this.endIndex&&D(this.endIndex)}outputDefined(){return!1}}function da(q,D){let Y=q.length-1,pe,Ce,Ue=0,Ge=Y,ut=0;for(;Ue<=Ge;)if(ut=Math.floor((Ue+Ge)/2),pe=q[ut],Ce=q[ut+1],pe<=D){if(ut===Y||D<Ce)return ut;Ue=ut+1}else{if(!(pe>D))throw new kr("Input is not a number.");Ge=ut-1}return 0}class Sa{constructor(D,Y,pe){this.type=D,this.input=Y,this.labels=[],this.outputs=[];for(let[Ce,Ue]of pe)this.labels.push(Ce),this.outputs.push(Ue)}static parse(D,Y){if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=[],Ue=null;Y.expectedType&&Y.expectedType.kind!=="value"&&(Ue=Y.expectedType);for(let Ge=1;Ge<D.length;Ge+=2){let ut=Ge===1?-1/0:D[Ge],Tt=D[Ge+1],Ft=Ge,$t=Ge+1;if(typeof ut!="number")return Y.error('Input/output pairs for "step" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Ft);if(Ce.length&&Ce[Ce.length-1][0]>=ut)return Y.error('Input/output pairs for "step" expressions must be arranged with input values in strictly ascending order.',Ft);let lr=Y.parse(Tt,$t,Ue);if(!lr)return null;Ue=Ue||lr.type,Ce.push([ut,lr])}return new Sa(Ue,pe,Ce)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;return Ce>=Y[Ue-1]?pe[Ue-1].evaluate(D):pe[da(Y,Ce)].evaluate(D)}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Ti(q){return q&&q.__esModule&&Object.prototype.hasOwnProperty.call(q,"default")?q.default:q}var ai=an;function an(q,D,Y,pe){this.cx=3*q,this.bx=3*(Y-q)-this.cx,this.ax=1-this.cx-this.bx,this.cy=3*D,this.by=3*(pe-D)-this.cy,this.ay=1-this.cy-this.by,this.p1x=q,this.p1y=D,this.p2x=Y,this.p2y=pe}an.prototype={sampleCurveX:function(q){return((this.ax*q+this.bx)*q+this.cx)*q},sampleCurveY:function(q){return((this.ay*q+this.by)*q+this.cy)*q},sampleCurveDerivativeX:function(q){return(3*this.ax*q+2*this.bx)*q+this.cx},solveCurveX:function(q,D){if(D===void 0&&(D=1e-6),q<0)return 0;if(q>1)return 1;for(var Y=q,pe=0;pe<8;pe++){var Ce=this.sampleCurveX(Y)-q;if(Math.abs(Ce)<D)return Y;var Ue=this.sampleCurveDerivativeX(Y);if(Math.abs(Ue)<1e-6)break;Y-=Ce/Ue}var Ge=0,ut=1;for(Y=q,pe=0;pe<20&&(Ce=this.sampleCurveX(Y),!(Math.abs(Ce-q)<D));pe++)q>Ce?Ge=Y:ut=Y,Y=.5*(ut-Ge)+Ge;return Y},solve:function(q,D){return this.sampleCurveY(this.solveCurveX(q,D))}};var sn=Ti(ai);function Mn(q,D,Y){return q+Y*(D-q)}function On(q,D,Y){return q.map((pe,Ce)=>Mn(pe,D[Ce],Y))}let $n={number:Mn,color:function(q,D,Y,pe="rgb"){switch(pe){case"rgb":{let[Ce,Ue,Ge,ut]=On(q.rgb,D.rgb,Y);return new Ut(Ce,Ue,Ge,ut,!1)}case"hcl":{let[Ce,Ue,Ge,ut]=q.hcl,[Tt,Ft,$t,lr]=D.hcl,Ar,zr;if(isNaN(Ce)||isNaN(Tt))isNaN(Ce)?isNaN(Tt)?Ar=NaN:(Ar=Tt,Ge!==1&&Ge!==0||(zr=Ft)):(Ar=Ce,$t!==1&&$t!==0||(zr=Ue));else{let gi=Tt-Ce;Tt>Ce&&gi>180?gi-=360:Tt<Ce&&Ce-Tt>180&&(gi+=360),Ar=Ce+Y*gi}let[Kr,la,za,ja]=function([gi,ei,hi,Ei]){return gi=isNaN(gi)?0:gi*Gt,ka([hi,Math.cos(gi)*ei,Math.sin(gi)*ei,Ei])}([Ar,zr??Mn(Ue,Ft,Y),Mn(Ge,$t,Y),Mn(ut,lr,Y)]);return new Ut(Kr,la,za,ja,!1)}case"lab":{let[Ce,Ue,Ge,ut]=ka(On(q.lab,D.lab,Y));return new Ut(Ce,Ue,Ge,ut,!1)}}},array:On,padding:function(q,D,Y){return new Xr(On(q.values,D.values,Y))},variableAnchorOffsetCollection:function(q,D,Y){let pe=q.values,Ce=D.values;if(pe.length!==Ce.length)throw new kr(`Cannot interpolate values of different length. from: ${q.toString()}, to: ${D.toString()}`);let Ue=[];for(let Ge=0;Ge<pe.length;Ge+=2){if(pe[Ge]!==Ce[Ge])throw new kr(`Cannot interpolate values containing mismatched anchors. from[${Ge}]: ${pe[Ge]}, to[${Ge}]: ${Ce[Ge]}`);Ue.push(pe[Ge]);let[ut,Tt]=pe[Ge+1],[Ft,$t]=Ce[Ge+1];Ue.push([Mn(ut,Ft,Y),Mn(Tt,$t,Y)])}return new Fa(Ue)}};class Cn{constructor(D,Y,pe,Ce,Ue){this.type=D,this.operator=Y,this.interpolation=pe,this.input=Ce,this.labels=[],this.outputs=[];for(let[Ge,ut]of Ue)this.labels.push(Ge),this.outputs.push(ut)}static interpolationFactor(D,Y,pe,Ce){let Ue=0;if(D.name==="exponential")Ue=Lo(Y,D.base,pe,Ce);else if(D.name==="linear")Ue=Lo(Y,1,pe,Ce);else if(D.name==="cubic-bezier"){let Ge=D.controlPoints;Ue=new sn(Ge[0],Ge[1],Ge[2],Ge[3]).solve(Lo(Y,1,pe,Ce))}return Ue}static parse(D,Y){let[pe,Ce,Ue,...Ge]=D;if(!Array.isArray(Ce)||Ce.length===0)return Y.error("Expected an interpolation type expression.",1);if(Ce[0]==="linear")Ce={name:"linear"};else if(Ce[0]==="exponential"){let Ft=Ce[1];if(typeof Ft!="number")return Y.error("Exponential interpolation requires a numeric base.",1,1);Ce={name:"exponential",base:Ft}}else{if(Ce[0]!=="cubic-bezier")return Y.error(`Unknown interpolation type ${String(Ce[0])}`,1,0);{let Ft=Ce.slice(1);if(Ft.length!==4||Ft.some($t=>typeof $t!="number"||$t<0||$t>1))return Y.error("Cubic bezier interpolation requires four numeric arguments with values between 0 and 1.",1);Ce={name:"cubic-bezier",controlPoints:Ft}}}if(D.length-1<4)return Y.error(`Expected at least 4 arguments, but found only ${D.length-1}.`);if((D.length-1)%2!=0)return Y.error("Expected an even number of arguments.");if(Ue=Y.parse(Ue,2,Qe),!Ue)return null;let ut=[],Tt=null;pe==="interpolate-hcl"||pe==="interpolate-lab"?Tt=Ot:Y.expectedType&&Y.expectedType.kind!=="value"&&(Tt=Y.expectedType);for(let Ft=0;Ft<Ge.length;Ft+=2){let $t=Ge[Ft],lr=Ge[Ft+1],Ar=Ft+3,zr=Ft+4;if(typeof $t!="number")return Y.error('Input/output pairs for "interpolate" expressions must be defined using literal numeric values (not computed expressions) for the input values.',Ar);if(ut.length&&ut[ut.length-1][0]>=$t)return Y.error('Input/output pairs for "interpolate" expressions must be arranged with input values in strictly ascending order.',Ar);let Kr=Y.parse(lr,zr,Tt);if(!Kr)return null;Tt=Tt||Kr.type,ut.push([$t,Kr])}return Te(Tt,Qe)||Te(Tt,Ot)||Te(Tt,vr)||Te(Tt,yt)||Te(Tt,Fe(Qe))?new Cn(Tt,pe,Ce,Ue,ut):Y.error(`Type ${Ke(Tt)} is not interpolatable.`)}evaluate(D){let Y=this.labels,pe=this.outputs;if(Y.length===1)return pe[0].evaluate(D);let Ce=this.input.evaluate(D);if(Ce<=Y[0])return pe[0].evaluate(D);let Ue=Y.length;if(Ce>=Y[Ue-1])return pe[Ue-1].evaluate(D);let Ge=da(Y,Ce),ut=Cn.interpolationFactor(this.interpolation,Ce,Y[Ge],Y[Ge+1]),Tt=pe[Ge].evaluate(D),Ft=pe[Ge+1].evaluate(D);switch(this.operator){case"interpolate":return $n[this.type.kind](Tt,Ft,ut);case"interpolate-hcl":return $n.color(Tt,Ft,ut,"hcl");case"interpolate-lab":return $n.color(Tt,Ft,ut,"lab")}}eachChild(D){D(this.input);for(let Y of this.outputs)D(Y)}outputDefined(){return this.outputs.every(D=>D.outputDefined())}}function Lo(q,D,Y,pe){let Ce=pe-Y,Ue=q-Y;return Ce===0?0:D===1?Ue/Ce:(Math.pow(D,Ue)-1)/(Math.pow(D,Ce)-1)}class Xi{constructor(D,Y){this.type=D,this.args=Y}static parse(D,Y){if(D.length<2)return Y.error("Expectected at least one argument.");let pe=null,Ce=Y.expectedType;Ce&&Ce.kind!=="value"&&(pe=Ce);let Ue=[];for(let ut of D.slice(1)){let Tt=Y.parse(ut,1+Ue.length,pe,void 0,{typeAnnotation:"omit"});if(!Tt)return null;pe=pe||Tt.type,Ue.push(Tt)}if(!pe)throw new Error("No output type");let Ge=Ce&&Ue.some(ut=>Ee(Ce,ut.type));return new Xi(Ge?ur:pe,Ue)}evaluate(D){let Y,pe=null,Ce=0;for(let Ue of this.args)if(Ce++,pe=Ue.evaluate(D),pe&&pe instanceof qa&&!pe.available&&(Y||(Y=pe.name),pe=null,Ce===this.args.length&&(pe=Y)),pe!==null)break;return pe}eachChild(D){this.args.forEach(D)}outputDefined(){return this.args.every(D=>D.outputDefined())}}function Jo(q,D){return q==="=="||q==="!="?D.kind==="boolean"||D.kind==="string"||D.kind==="number"||D.kind==="null"||D.kind==="value":D.kind==="string"||D.kind==="number"||D.kind==="value"}function zo(q,D,Y,pe){return pe.compare(D,Y)===0}function as(q,D,Y){let pe=q!=="=="&&q!=="!=";return class K8{constructor(Ue,Ge,ut){this.type=St,this.lhs=Ue,this.rhs=Ge,this.collator=ut,this.hasUntypedArgument=Ue.type.kind==="value"||Ge.type.kind==="value"}static parse(Ue,Ge){if(Ue.length!==3&&Ue.length!==4)return Ge.error("Expected two or three arguments.");let ut=Ue[0],Tt=Ge.parse(Ue[1],1,ur);if(!Tt)return null;if(!Jo(ut,Tt.type))return Ge.concat(1).error(`"${ut}" comparisons are not supported for type '${Ke(Tt.type)}'.`);let Ft=Ge.parse(Ue[2],2,ur);if(!Ft)return null;if(!Jo(ut,Ft.type))return Ge.concat(2).error(`"${ut}" comparisons are not supported for type '${Ke(Ft.type)}'.`);if(Tt.type.kind!==Ft.type.kind&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error(`Cannot compare types '${Ke(Tt.type)}' and '${Ke(Ft.type)}'.`);pe&&(Tt.type.kind==="value"&&Ft.type.kind!=="value"?Tt=new Tr(Ft.type,[Tt]):Tt.type.kind!=="value"&&Ft.type.kind==="value"&&(Ft=new Tr(Tt.type,[Ft])));let $t=null;if(Ue.length===4){if(Tt.type.kind!=="string"&&Ft.type.kind!=="string"&&Tt.type.kind!=="value"&&Ft.type.kind!=="value")return Ge.error("Cannot use collator to compare non-string types.");if($t=Ge.parse(Ue[3],3,ar),!$t)return null}return new K8(Tt,Ft,$t)}evaluate(Ue){let Ge=this.lhs.evaluate(Ue),ut=this.rhs.evaluate(Ue);if(pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!==Ft.kind||Tt.kind!=="string"&&Tt.kind!=="number")throw new kr(`Expected arguments for "${q}" to be (string, string) or (number, number), but found (${Tt.kind}, ${Ft.kind}) instead.`)}if(this.collator&&!pe&&this.hasUntypedArgument){let Tt=mt(Ge),Ft=mt(ut);if(Tt.kind!=="string"||Ft.kind!=="string")return D(Ue,Ge,ut)}return this.collator?Y(Ue,Ge,ut,this.collator.evaluate(Ue)):D(Ue,Ge,ut)}eachChild(Ue){Ue(this.lhs),Ue(this.rhs),this.collator&&Ue(this.collator)}outputDefined(){return!0}}}let Pn=as("==",function(q,D,Y){return D===Y},zo),go=as("!=",function(q,D,Y){return D!==Y},function(q,D,Y,pe){return!zo(0,D,Y,pe)}),In=as("<",function(q,D,Y){return D<Y},function(q,D,Y,pe){return pe.compare(D,Y)<0}),Do=as(">",function(q,D,Y){return D>Y},function(q,D,Y,pe){return pe.compare(D,Y)>0}),Ho=as("<=",function(q,D,Y){return D<=Y},function(q,D,Y,pe){return pe.compare(D,Y)<=0}),Qo=as(">=",function(q,D,Y){return D>=Y},function(q,D,Y,pe){return pe.compare(D,Y)>=0});class Xn{constructor(D,Y,pe){this.type=ar,this.locale=pe,this.caseSensitive=D,this.diacriticSensitive=Y}static parse(D,Y){if(D.length!==2)return Y.error("Expected one argument.");let pe=D[1];if(typeof pe!="object"||Array.isArray(pe))return Y.error("Collator options argument must be an object.");let Ce=Y.parse(pe["case-sensitive"]!==void 0&&pe["case-sensitive"],1,St);if(!Ce)return null;let Ue=Y.parse(pe["diacritic-sensitive"]!==void 0&&pe["diacritic-sensitive"],1,St);if(!Ue)return null;let Ge=null;return pe.locale&&(Ge=Y.parse(pe.locale,1,Ct),!Ge)?null:new Xn(Ce,Ue,Ge)}evaluate(D){return new xr(this.caseSensitive.evaluate(D),this.diacriticSensitive.evaluate(D),this.locale?this.locale.evaluate(D):null)}eachChild(D){D(this.caseSensitive),D(this.diacriticSensitive),this.locale&&D(this.locale)}outputDefined(){return!1}}class po{constructor(D,Y,pe,Ce,Ue){this.type=Ct,this.number=D,this.locale=Y,this.currency=pe,this.minFractionDigits=Ce,this.maxFractionDigits=Ue}static parse(D,Y){if(D.length!==3)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Qe);if(!pe)return null;let Ce=D[2];if(typeof Ce!="object"||Array.isArray(Ce))return Y.error("NumberFormat options argument must be an object.");let Ue=null;if(Ce.locale&&(Ue=Y.parse(Ce.locale,1,Ct),!Ue))return null;let Ge=null;if(Ce.currency&&(Ge=Y.parse(Ce.currency,1,Ct),!Ge))return null;let ut=null;if(Ce["min-fraction-digits"]&&(ut=Y.parse(Ce["min-fraction-digits"],1,Qe),!ut))return null;let Tt=null;return Ce["max-fraction-digits"]&&(Tt=Y.parse(Ce["max-fraction-digits"],1,Qe),!Tt)?null:new po(pe,Ue,Ge,ut,Tt)}evaluate(D){return new Intl.NumberFormat(this.locale?this.locale.evaluate(D):[],{style:this.currency?"currency":"decimal",currency:this.currency?this.currency.evaluate(D):void 0,minimumFractionDigits:this.minFractionDigits?this.minFractionDigits.evaluate(D):void 0,maximumFractionDigits:this.maxFractionDigits?this.maxFractionDigits.evaluate(D):void 0}).format(this.number.evaluate(D))}eachChild(D){D(this.number),this.locale&&D(this.locale),this.currency&&D(this.currency),this.minFractionDigits&&D(this.minFractionDigits),this.maxFractionDigits&&D(this.maxFractionDigits)}outputDefined(){return!1}}class ys{constructor(D){this.type=Cr,this.sections=D}static parse(D,Y){if(D.length<2)return Y.error("Expected at least one argument.");let pe=D[1];if(!Array.isArray(pe)&&typeof pe=="object")return Y.error("First argument must be an image or text section.");let Ce=[],Ue=!1;for(let Ge=1;Ge<=D.length-1;++Ge){let ut=D[Ge];if(Ue&&typeof ut=="object"&&!Array.isArray(ut)){Ue=!1;let Tt=null;if(ut["font-scale"]&&(Tt=Y.parse(ut["font-scale"],1,Qe),!Tt))return null;let Ft=null;if(ut["text-font"]&&(Ft=Y.parse(ut["text-font"],1,Fe(Ct)),!Ft))return null;let $t=null;if(ut["text-color"]&&($t=Y.parse(ut["text-color"],1,Ot),!$t))return null;let lr=Ce[Ce.length-1];lr.scale=Tt,lr.font=Ft,lr.textColor=$t}else{let Tt=Y.parse(D[Ge],1,ur);if(!Tt)return null;let Ft=Tt.type.kind;if(Ft!=="string"&&Ft!=="value"&&Ft!=="null"&&Ft!=="resolvedImage")return Y.error("Formatted text type must be 'string', 'value', 'image' or 'null'.");Ue=!0,Ce.push({content:Tt,scale:null,font:null,textColor:null})}}return new ys(Ce)}evaluate(D){return new pa(this.sections.map(Y=>{let pe=Y.content.evaluate(D);return mt(pe)===_r?new Zr("",pe,null,null,null):new Zr(gt(pe),null,Y.scale?Y.scale.evaluate(D):null,Y.font?Y.font.evaluate(D).join(","):null,Y.textColor?Y.textColor.evaluate(D):null)}))}eachChild(D){for(let Y of this.sections)D(Y.content),Y.scale&&D(Y.scale),Y.font&&D(Y.font),Y.textColor&&D(Y.textColor)}outputDefined(){return!1}}class Is{constructor(D){this.type=_r,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error("Expected two arguments.");let pe=Y.parse(D[1],1,Ct);return pe?new Is(pe):Y.error("No image name provided.")}evaluate(D){let Y=this.input.evaluate(D),pe=qa.fromString(Y);return pe&&D.availableImages&&(pe.available=D.availableImages.indexOf(Y)>-1),pe}eachChild(D){D(this.input)}outputDefined(){return!1}}class Fs{constructor(D){this.type=Qe,this.input=D}static parse(D,Y){if(D.length!==2)return Y.error(`Expected 1 argument, but found ${D.length-1} instead.`);let pe=Y.parse(D[1],1);return pe?pe.type.kind!=="array"&&pe.type.kind!=="string"&&pe.type.kind!=="value"?Y.error(`Expected argument of type string or array, but found ${Ke(pe.type)} instead.`):new Fs(pe):null}evaluate(D){let Y=this.input.evaluate(D);if(typeof Y=="string")return[...Y].length;if(Array.isArray(Y))return Y.length;throw new kr(`Expected value to be of type string or array, but found ${Ke(mt(Y))} instead.`)}eachChild(D){D(this.input)}outputDefined(){return!1}}let $o=8192;function fi(q,D){let Y=(180+q[0])/360,pe=(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q[1]*Math.PI/360)))/360,Ce=Math.pow(2,D.z);return[Math.round(Y*Ce*$o),Math.round(pe*Ce*$o)]}function mn(q,D){let Y=Math.pow(2,D.z);return[(Ce=(q[0]/$o+D.x)/Y,360*Ce-180),(pe=(q[1]/$o+D.y)/Y,360/Math.PI*Math.atan(Math.exp((180-360*pe)*Math.PI/180))-90)];var pe,Ce}function ol(q,D){q[0]=Math.min(q[0],D[0]),q[1]=Math.min(q[1],D[1]),q[2]=Math.max(q[2],D[0]),q[3]=Math.max(q[3],D[1])}function Os(q,D){return!(q[0]<=D[0]||q[2]>=D[2]||q[1]<=D[1]||q[3]>=D[3])}function so(q,D,Y){let pe=q[0]-D[0],Ce=q[1]-D[1],Ue=q[0]-Y[0],Ge=q[1]-Y[1];return pe*Ge-Ue*Ce==0&&pe*Ue<=0&&Ce*Ge<=0}function Ns(q,D,Y,pe){return(Ce=[pe[0]-Y[0],pe[1]-Y[1]])[0]*(Ue=[D[0]-q[0],D[1]-q[1]])[1]-Ce[1]*Ue[0]!=0&&!(!Yn(q,D,Y,pe)||!Yn(Y,pe,q,D));var Ce,Ue}function fs(q,D,Y){for(let pe of Y)for(let Ce=0;Ce<pe.length-1;++Ce)if(Ns(q,D,pe[Ce],pe[Ce+1]))return!0;return!1}function al(q,D,Y=!1){let pe=!1;for(let ut of D)for(let Tt=0;Tt<ut.length-1;Tt++){if(so(q,ut[Tt],ut[Tt+1]))return Y;(Ue=ut[Tt])[1]>(Ce=q)[1]!=(Ge=ut[Tt+1])[1]>Ce[1]&&Ce[0]<(Ge[0]-Ue[0])*(Ce[1]-Ue[1])/(Ge[1]-Ue[1])+Ue[0]&&(pe=!pe)}var Ce,Ue,Ge;return pe}function vl(q,D){for(let Y of D)if(al(q,Y))return!0;return!1}function ji(q,D){for(let Y of q)if(!al(Y,D))return!1;for(let Y=0;Y<q.length-1;++Y)if(fs(q[Y],q[Y+1],D))return!1;return!0}function To(q,D){for(let Y of D)if(ji(q,Y))return!0;return!1}function Yn(q,D,Y,pe){let Ce=pe[0]-Y[0],Ue=pe[1]-Y[1],Ge=(q[0]-Y[0])*Ue-Ce*(q[1]-Y[1]),ut=(D[0]-Y[0])*Ue-Ce*(D[1]-Y[1]);return Ge>0&&ut<0||Ge<0&&ut>0}function _s(q,D,Y){let pe=[];for(let Ce=0;Ce<q.length;Ce++){let Ue=[];for(let Ge=0;Ge<q[Ce].length;Ge++){let ut=fi(q[Ce][Ge],Y);ol(D,ut),Ue.push(ut)}pe.push(Ue)}return pe}function Yo(q,D,Y){let pe=[];for(let Ce=0;Ce<q.length;Ce++){let Ue=_s(q[Ce],D,Y);pe.push(Ue)}return pe}function Nn(q,D,Y,pe){if(q[0]<Y[0]||q[0]>Y[2]){let Ce=.5*pe,Ue=q[0]-Y[0]>Ce?-pe:Y[0]-q[0]>Ce?pe:0;Ue===0&&(Ue=q[0]-Y[2]>Ce?-pe:Y[2]-q[0]>Ce?pe:0),q[0]+=Ue}ol(D,q)}function Wl(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let ut of q)for(let Tt of ut){let Ft=[Tt.x+Ue[0],Tt.y+Ue[1]];Nn(Ft,D,Y,Ce),Ge.push(Ft)}return Ge}function Zu(q,D,Y,pe){let Ce=Math.pow(2,pe.z)*$o,Ue=[pe.x*$o,pe.y*$o],Ge=[];for(let Tt of q){let Ft=[];for(let $t of Tt){let lr=[$t.x+Ue[0],$t.y+Ue[1]];ol(D,lr),Ft.push(lr)}Ge.push(Ft)}if(D[2]-D[0]<=Ce/2){(ut=D)[0]=ut[1]=1/0,ut[2]=ut[3]=-1/0;for(let Tt of Ge)for(let Ft of Tt)Nn(Ft,D,Y,Ce)}var ut;return Ge}class ml{constructor(D,Y){this.type=St,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'within' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection"){let Ce=[];for(let Ue of pe.features){let{type:Ge,coordinates:ut}=Ue.geometry;Ge==="Polygon"&&Ce.push(ut),Ge==="MultiPolygon"&&Ce.push(...ut)}if(Ce.length)return new ml(pe,{type:"MultiPolygon",coordinates:Ce})}else if(pe.type==="Feature"){let Ce=pe.geometry.type;if(Ce==="Polygon"||Ce==="MultiPolygon")return new ml(pe,pe.geometry)}else if(pe.type==="Polygon"||pe.type==="MultiPolygon")return new ml(pe,pe)}return Y.error("'within' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!al(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Wl(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!vl(Ft,ut))return!1}return!0}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=[1/0,1/0,-1/0,-1/0],Ue=[1/0,1/0,-1/0,-1/0],Ge=Y.canonicalID();if(pe.type==="Polygon"){let ut=_s(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!ji(Ft,ut))return!1}if(pe.type==="MultiPolygon"){let ut=Yo(pe.coordinates,Ue,Ge),Tt=Zu(Y.geometry(),Ce,Ue,Ge);if(!Os(Ce,Ue))return!1;for(let Ft of Tt)if(!To(Ft,ut))return!1}return!0}(D,this.geometries)}return!1}eachChild(){}outputDefined(){return!0}}let Bu=class{constructor(q=[],D=(Y,pe)=>Y<pe?-1:Y>pe?1:0){if(this.data=q,this.length=this.data.length,this.compare=D,this.length>0)for(let Y=(this.length>>1)-1;Y>=0;Y--)this._down(Y)}push(q){this.data.push(q),this._up(this.length++)}pop(){if(this.length===0)return;let q=this.data[0],D=this.data.pop();return--this.length>0&&(this.data[0]=D,this._down(0)),q}peek(){return this.data[0]}_up(q){let{data:D,compare:Y}=this,pe=D[q];for(;q>0;){let Ce=q-1>>1,Ue=D[Ce];if(Y(pe,Ue)>=0)break;D[q]=Ue,q=Ce}D[q]=pe}_down(q){let{data:D,compare:Y}=this,pe=this.length>>1,Ce=D[q];for(;q<pe;){let Ue=1+(q<<1),Ge=Ue+1;if(Ge<this.length&&Y(D[Ge],D[Ue])<0&&(Ue=Ge),Y(D[Ue],Ce)>=0)break;D[q]=D[Ue],q=Ue}D[q]=Ce}};function El(q,D,Y,pe,Ce){qs(q,D,Y,pe||q.length-1,Ce||Nu)}function qs(q,D,Y,pe,Ce){for(;pe>Y;){if(pe-Y>600){var Ue=pe-Y+1,Ge=D-Y+1,ut=Math.log(Ue),Tt=.5*Math.exp(2*ut/3),Ft=.5*Math.sqrt(ut*Tt*(Ue-Tt)/Ue)*(Ge-Ue/2<0?-1:1);qs(q,D,Math.max(Y,Math.floor(D-Ge*Tt/Ue+Ft)),Math.min(pe,Math.floor(D+(Ue-Ge)*Tt/Ue+Ft)),Ce)}var $t=q[D],lr=Y,Ar=pe;for(Jl(q,Y,D),Ce(q[pe],$t)>0&&Jl(q,Y,pe);lr<Ar;){for(Jl(q,lr,Ar),lr++,Ar--;Ce(q[lr],$t)<0;)lr++;for(;Ce(q[Ar],$t)>0;)Ar--}Ce(q[Y],$t)===0?Jl(q,Y,Ar):Jl(q,++Ar,pe),Ar<=D&&(Y=Ar+1),D<=Ar&&(pe=Ar-1)}}function Jl(q,D,Y){var pe=q[D];q[D]=q[Y],q[Y]=pe}function Nu(q,D){return q<D?-1:q>D?1:0}function Ic(q,D){if(q.length<=1)return[q];let Y=[],pe,Ce;for(let Ue of q){let Ge=Th(Ue);Ge!==0&&(Ue.area=Math.abs(Ge),Ce===void 0&&(Ce=Ge<0),Ce===Ge<0?(pe&&Y.push(pe),pe=[Ue]):pe.push(Ue))}if(pe&&Y.push(pe),D>1)for(let Ue=0;Ue<Y.length;Ue++)Y[Ue].length<=D||(El(Y[Ue],D,1,Y[Ue].length-1,Xu),Y[Ue]=Y[Ue].slice(0,D));return Y}function Xu(q,D){return D.area-q.area}function Th(q){let D=0;for(let Y,pe,Ce=0,Ue=q.length,Ge=Ue-1;Ce<Ue;Ge=Ce++)Y=q[Ce],pe=q[Ge],D+=(pe.x-Y.x)*(Y.y+pe.y);return D}let bf=1/298.257223563,Rs=bf*(2-bf),Yc=Math.PI/180;class If{constructor(D){let Y=6378.137*Yc*1e3,pe=Math.cos(D*Yc),Ce=1/(1-Rs*(1-pe*pe)),Ue=Math.sqrt(Ce);this.kx=Y*Ue*pe,this.ky=Y*Ue*Ce*(1-Rs)}distance(D,Y){let pe=this.wrap(D[0]-Y[0])*this.kx,Ce=(D[1]-Y[1])*this.ky;return Math.sqrt(pe*pe+Ce*Ce)}pointOnLine(D,Y){let pe,Ce,Ue,Ge,ut=1/0;for(let Tt=0;Tt<D.length-1;Tt++){let Ft=D[Tt][0],$t=D[Tt][1],lr=this.wrap(D[Tt+1][0]-Ft)*this.kx,Ar=(D[Tt+1][1]-$t)*this.ky,zr=0;lr===0&&Ar===0||(zr=(this.wrap(Y[0]-Ft)*this.kx*lr+(Y[1]-$t)*this.ky*Ar)/(lr*lr+Ar*Ar),zr>1?(Ft=D[Tt+1][0],$t=D[Tt+1][1]):zr>0&&(Ft+=lr/this.kx*zr,$t+=Ar/this.ky*zr)),lr=this.wrap(Y[0]-Ft)*this.kx,Ar=(Y[1]-$t)*this.ky;let Kr=lr*lr+Ar*Ar;Kr<ut&&(ut=Kr,pe=Ft,Ce=$t,Ue=Tt,Ge=zr)}return{point:[pe,Ce],index:Ue,t:Math.max(0,Math.min(1,Ge))}}wrap(D){for(;D<-180;)D+=360;for(;D>180;)D-=360;return D}}function Zl(q,D){return D[0]-q[0]}function yl(q){return q[1]-q[0]+1}function oc(q,D){return q[1]>=q[0]&&q[1]<D}function _c(q,D){if(q[0]>q[1])return[null,null];let Y=yl(q);if(D){if(Y===2)return[q,null];let Ce=Math.floor(Y/2);return[[q[0],q[0]+Ce],[q[0]+Ce,q[1]]]}if(Y===1)return[q,null];let pe=Math.floor(Y/2)-1;return[[q[0],q[0]+pe],[q[0]+pe+1,q[1]]]}function Zs(q,D){if(!oc(D,q.length))return[1/0,1/0,-1/0,-1/0];let Y=[1/0,1/0,-1/0,-1/0];for(let pe=D[0];pe<=D[1];++pe)ol(Y,q[pe]);return Y}function _l(q){let D=[1/0,1/0,-1/0,-1/0];for(let Y of q)for(let pe of Y)ol(D,pe);return D}function Bs(q){return q[0]!==-1/0&&q[1]!==-1/0&&q[2]!==1/0&&q[3]!==1/0}function $s(q,D,Y){if(!Bs(q)||!Bs(D))return NaN;let pe=0,Ce=0;return q[2]<D[0]&&(pe=D[0]-q[2]),q[0]>D[2]&&(pe=q[0]-D[2]),q[1]>D[3]&&(Ce=q[1]-D[3]),q[3]<D[1]&&(Ce=D[1]-q[3]),Y.distance([0,0],[pe,Ce])}function sc(q,D,Y){let pe=Y.pointOnLine(D,q);return Y.distance(q,pe.point)}function zl(q,D,Y,pe,Ce){let Ue=Math.min(sc(q,[Y,pe],Ce),sc(D,[Y,pe],Ce)),Ge=Math.min(sc(Y,[q,D],Ce),sc(pe,[q,D],Ce));return Math.min(Ue,Ge)}function Yu(q,D,Y,pe,Ce){if(!oc(D,q.length)||!oc(pe,Y.length))return 1/0;let Ue=1/0;for(let Ge=D[0];Ge<D[1];++Ge){let ut=q[Ge],Tt=q[Ge+1];for(let Ft=pe[0];Ft<pe[1];++Ft){let $t=Y[Ft],lr=Y[Ft+1];if(Ns(ut,Tt,$t,lr))return 0;Ue=Math.min(Ue,zl(ut,Tt,$t,lr,Ce))}}return Ue}function Qs(q,D,Y,pe,Ce){if(!oc(D,q.length)||!oc(pe,Y.length))return NaN;let Ue=1/0;for(let Ge=D[0];Ge<=D[1];++Ge)for(let ut=pe[0];ut<=pe[1];++ut)if(Ue=Math.min(Ue,Ce.distance(q[Ge],Y[ut])),Ue===0)return Ue;return Ue}function fp(q,D,Y){if(al(q,D,!0))return 0;let pe=1/0;for(let Ce of D){let Ue=Ce[0],Ge=Ce[Ce.length-1];if(Ue!==Ge&&(pe=Math.min(pe,sc(q,[Ge,Ue],Y)),pe===0))return pe;let ut=Y.pointOnLine(Ce,q);if(pe=Math.min(pe,Y.distance(q,ut.point)),pe===0)return pe}return pe}function es(q,D,Y,pe){if(!oc(D,q.length))return NaN;for(let Ue=D[0];Ue<=D[1];++Ue)if(al(q[Ue],Y,!0))return 0;let Ce=1/0;for(let Ue=D[0];Ue<D[1];++Ue){let Ge=q[Ue],ut=q[Ue+1];for(let Tt of Y)for(let Ft=0,$t=Tt.length,lr=$t-1;Ft<$t;lr=Ft++){let Ar=Tt[lr],zr=Tt[Ft];if(Ns(Ge,ut,Ar,zr))return 0;Ce=Math.min(Ce,zl(Ge,ut,Ar,zr,pe))}}return Ce}function Wh(q,D){for(let Y of q)for(let pe of Y)if(al(pe,D,!0))return!0;return!1}function Ss(q,D,Y,pe=1/0){let Ce=_l(q),Ue=_l(D);if(pe!==1/0&&$s(Ce,Ue,Y)>=pe)return pe;if(Os(Ce,Ue)){if(Wh(q,D))return 0}else if(Wh(D,q))return 0;let Ge=1/0;for(let ut of q)for(let Tt=0,Ft=ut.length,$t=Ft-1;Tt<Ft;$t=Tt++){let lr=ut[$t],Ar=ut[Tt];for(let zr of D)for(let Kr=0,la=zr.length,za=la-1;Kr<la;za=Kr++){let ja=zr[za],gi=zr[Kr];if(Ns(lr,Ar,ja,gi))return 0;Ge=Math.min(Ge,zl(lr,Ar,ja,gi,Y))}}return Ge}function So(q,D,Y,pe,Ce,Ue){if(!Ue)return;let Ge=$s(Zs(pe,Ue),Ce,Y);Ge<D&&q.push([Ge,Ue,[0,0]])}function hf(q,D,Y,pe,Ce,Ue,Ge){if(!Ue||!Ge)return;let ut=$s(Zs(pe,Ue),Zs(Ce,Ge),Y);ut<D&&q.push([ut,Ue,Ge])}function Ku(q,D,Y,pe,Ce=1/0){let Ue=Math.min(pe.distance(q[0],Y[0][0]),Ce);if(Ue===0)return Ue;let Ge=new Bu([[0,[0,q.length-1],[0,0]]],Zl),ut=_l(Y);for(;Ge.length>0;){let Tt=Ge.pop();if(Tt[0]>=Ue)continue;let Ft=Tt[1],$t=D?50:100;if(yl(Ft)<=$t){if(!oc(Ft,q.length))return NaN;if(D){let lr=es(q,Ft,Y,pe);if(isNaN(lr)||lr===0)return lr;Ue=Math.min(Ue,lr)}else for(let lr=Ft[0];lr<=Ft[1];++lr){let Ar=fp(q[lr],Y,pe);if(Ue=Math.min(Ue,Ar),Ue===0)return 0}}else{let lr=_c(Ft,D);So(Ge,Ue,pe,q,ut,lr[0]),So(Ge,Ue,pe,q,ut,lr[1])}}return Ue}function cu(q,D,Y,pe,Ce,Ue=1/0){let Ge=Math.min(Ue,Ce.distance(q[0],Y[0]));if(Ge===0)return Ge;let ut=new Bu([[0,[0,q.length-1],[0,Y.length-1]]],Zl);for(;ut.length>0;){let Tt=ut.pop();if(Tt[0]>=Ge)continue;let Ft=Tt[1],$t=Tt[2],lr=D?50:100,Ar=pe?50:100;if(yl(Ft)<=lr&&yl($t)<=Ar){if(!oc(Ft,q.length)&&oc($t,Y.length))return NaN;let zr;if(D&&pe)zr=Yu(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr);else if(D&&!pe){let Kr=q.slice(Ft[0],Ft[1]+1);for(let la=$t[0];la<=$t[1];++la)if(zr=sc(Y[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else if(!D&&pe){let Kr=Y.slice($t[0],$t[1]+1);for(let la=Ft[0];la<=Ft[1];++la)if(zr=sc(q[la],Kr,Ce),Ge=Math.min(Ge,zr),Ge===0)return Ge}else zr=Qs(q,Ft,Y,$t,Ce),Ge=Math.min(Ge,zr)}else{let zr=_c(Ft,D),Kr=_c($t,pe);hf(ut,Ge,Ce,q,Y,zr[0],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[0],Kr[1]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[0]),hf(ut,Ge,Ce,q,Y,zr[1],Kr[1])}}return Ge}function Zf(q){return q.type==="MultiPolygon"?q.coordinates.map(D=>({type:"Polygon",coordinates:D})):q.type==="MultiLineString"?q.coordinates.map(D=>({type:"LineString",coordinates:D})):q.type==="MultiPoint"?q.coordinates.map(D=>({type:"Point",coordinates:D})):[q]}class Rc{constructor(D,Y){this.type=Qe,this.geojson=D,this.geometries=Y}static parse(D,Y){if(D.length!==2)return Y.error(`'distance' expression requires exactly one argument, but found ${D.length-1} instead.`);if($a(D[1])){let pe=D[1];if(pe.type==="FeatureCollection")return new Rc(pe,pe.features.map(Ce=>Zf(Ce.geometry)).flat());if(pe.type==="Feature")return new Rc(pe,Zf(pe.geometry));if("type"in pe&&"coordinates"in pe)return new Rc(pe,Zf(pe))}return Y.error("'distance' expression requires valid geojson object that contains polygon geometry type.")}evaluate(D){if(D.geometry()!=null&&D.canonicalID()!=null){if(D.geometryType()==="Point")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!1,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!1,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!1,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="LineString")return function(Y,pe){let Ce=Y.geometry(),Ue=Ce.flat().map(Tt=>mn([Tt.x,Tt.y],Y.canonical));if(Ce.length===0)return NaN;let Ge=new If(Ue[0][1]),ut=1/0;for(let Tt of pe){switch(Tt.type){case"Point":ut=Math.min(ut,cu(Ue,!0,[Tt.coordinates],!1,Ge,ut));break;case"LineString":ut=Math.min(ut,cu(Ue,!0,Tt.coordinates,!0,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ku(Ue,!0,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries);if(D.geometryType()==="Polygon")return function(Y,pe){let Ce=Y.geometry();if(Ce.length===0||Ce[0].length===0)return NaN;let Ue=Ic(Ce,0).map(Tt=>Tt.map(Ft=>Ft.map($t=>mn([$t.x,$t.y],Y.canonical)))),Ge=new If(Ue[0][0][0][1]),ut=1/0;for(let Tt of pe)for(let Ft of Ue){switch(Tt.type){case"Point":ut=Math.min(ut,Ku([Tt.coordinates],!1,Ft,Ge,ut));break;case"LineString":ut=Math.min(ut,Ku(Tt.coordinates,!0,Ft,Ge,ut));break;case"Polygon":ut=Math.min(ut,Ss(Ft,Tt.coordinates,Ge,ut))}if(ut===0)return ut}return ut}(D,this.geometries)}return NaN}eachChild(){}outputDefined(){return!0}}let pf={"==":Pn,"!=":go,">":Do,"<":In,">=":Qo,"<=":Ho,array:Tr,at:ir,boolean:Tr,case:Ba,coalesce:Xi,collator:Xn,format:ys,image:Is,in:mr,"index-of":$r,interpolate:Cn,"interpolate-hcl":Cn,"interpolate-lab":Cn,length:Fs,let:ca,literal:Er,match:ma,number:Tr,"number-format":po,object:Tr,slice:Ca,step:Sa,string:Tr,"to-boolean":Fr,"to-color":Fr,"to-number":Fr,"to-string":Fr,var:kt,within:ml,distance:Rc};class Fl{constructor(D,Y,pe,Ce){this.name=D,this.type=Y,this._evaluate=pe,this.args=Ce}evaluate(D){return this._evaluate(D,this.args)}eachChild(D){this.args.forEach(D)}outputDefined(){return!1}static parse(D,Y){let pe=D[0],Ce=Fl.definitions[pe];if(!Ce)return Y.error(`Unknown expression "${pe}". If you wanted a literal array, use ["literal", [...]].`,0);let Ue=Array.isArray(Ce)?Ce[0]:Ce.type,Ge=Array.isArray(Ce)?[[Ce[1],Ce[2]]]:Ce.overloads,ut=Ge.filter(([Ft])=>!Array.isArray(Ft)||Ft.length===D.length-1),Tt=null;for(let[Ft,$t]of ut){Tt=new oa(Y.registry,Yf,Y.path,null,Y.scope);let lr=[],Ar=!1;for(let zr=1;zr<D.length;zr++){let Kr=D[zr],la=Array.isArray(Ft)?Ft[zr-1]:Ft.type,za=Tt.parse(Kr,1+lr.length,la);if(!za){Ar=!0;break}lr.push(za)}if(!Ar)if(Array.isArray(Ft)&&Ft.length!==lr.length)Tt.error(`Expected ${Ft.length} arguments, but found ${lr.length} instead.`);else{for(let zr=0;zr<lr.length;zr++){let Kr=Array.isArray(Ft)?Ft[zr]:Ft.type,la=lr[zr];Tt.concat(zr+1).checkSubtype(Kr,la.type)}if(Tt.errors.length===0)return new Fl(pe,Ue,$t,lr)}}if(ut.length===1)Y.errors.push(...Tt.errors);else{let Ft=(ut.length?ut:Ge).map(([lr])=>{return Ar=lr,Array.isArray(Ar)?`(${Ar.map(Ke).join(", ")})`:`(${Ke(Ar.type)}...)`;var Ar}).join(" | "),$t=[];for(let lr=1;lr<D.length;lr++){let Ar=Y.parse(D[lr],1+$t.length);if(!Ar)return null;$t.push(Ke(Ar.type))}Y.error(`Expected arguments of type ${Ft}, but found (${$t.join(", ")}) instead.`)}return null}static register(D,Y){Fl.definitions=Y;for(let pe in Y)D[pe]=Fl}}function lh(q,[D,Y,pe,Ce]){D=D.evaluate(q),Y=Y.evaluate(q),pe=pe.evaluate(q);let Ue=Ce?Ce.evaluate(q):1,Ge=ya(D,Y,pe,Ue);if(Ge)throw new kr(Ge);return new Ut(D/255,Y/255,pe/255,Ue,!1)}function Xf(q,D){return q in D}function Rf(q,D){let Y=D[q];return Y===void 0?null:Y}function Kc(q){return{type:q}}function Yf(q){if(q instanceof kt)return Yf(q.boundExpression);if(q instanceof Fl&&q.name==="error"||q instanceof Xn||q instanceof ml||q instanceof Rc)return!1;let D=q instanceof Fr||q instanceof Tr,Y=!0;return q.eachChild(pe=>{Y=D?Y&&Yf(pe):Y&&pe instanceof Er}),!!Y&&uh(q)&&Df(q,["zoom","heatmap-density","line-progress","accumulated","is-supported-script"])}function uh(q){if(q instanceof Fl&&(q.name==="get"&&q.args.length===1||q.name==="feature-state"||q.name==="has"&&q.args.length===1||q.name==="properties"||q.name==="geometry-type"||q.name==="id"||/^filter-/.test(q.name))||q instanceof ml||q instanceof Rc)return!1;let D=!0;return q.eachChild(Y=>{D&&!uh(Y)&&(D=!1)}),D}function Ju(q){if(q instanceof Fl&&q.name==="feature-state")return!1;let D=!0;return q.eachChild(Y=>{D&&!Ju(Y)&&(D=!1)}),D}function Df(q,D){if(q instanceof Fl&&D.indexOf(q.name)>=0)return!1;let Y=!0;return q.eachChild(pe=>{Y&&!Df(pe,D)&&(Y=!1)}),Y}function Dc(q){return{result:"success",value:q}}function Jc(q){return{result:"error",value:q}}function Eu(q){return q["property-type"]==="data-driven"||q["property-type"]==="cross-faded-data-driven"}function wf(q){return!!q.expression&&q.expression.parameters.indexOf("zoom")>-1}function zc(q){return!!q.expression&&q.expression.interpolated}function Us(q){return q instanceof Number?"number":q instanceof String?"string":q instanceof Boolean?"boolean":Array.isArray(q)?"array":q===null?"null":typeof q}function Kf(q){return typeof q=="object"&&q!==null&&!Array.isArray(q)}function Zh(q){return q}function ch(q,D){let Y=D.type==="color",pe=q.stops&&typeof q.stops[0][0]=="object",Ce=pe||!(pe||q.property!==void 0),Ue=q.type||(zc(D)?"exponential":"interval");if(Y||D.type==="padding"){let $t=Y?Ut.parse:Xr.parse;(q=ce({},q)).stops&&(q.stops=q.stops.map(lr=>[lr[0],$t(lr[1])])),q.default=$t(q.default?q.default:D.default)}if(q.colorSpace&&(Ge=q.colorSpace)!=="rgb"&&Ge!=="hcl"&&Ge!=="lab")throw new Error(`Unknown color space: "${q.colorSpace}"`);var Ge;let ut,Tt,Ft;if(Ue==="exponential")ut=fh;else if(Ue==="interval")ut=ku;else if(Ue==="categorical"){ut=Ah,Tt=Object.create(null);for(let $t of q.stops)Tt[$t[0]]=$t[1];Ft=typeof q.stops[0][0]}else{if(Ue!=="identity")throw new Error(`Unknown function type "${Ue}"`);ut=ru}if(pe){let $t={},lr=[];for(let Kr=0;Kr<q.stops.length;Kr++){let la=q.stops[Kr],za=la[0].zoom;$t[za]===void 0&&($t[za]={zoom:za,type:q.type,property:q.property,default:q.default,stops:[]},lr.push(za)),$t[za].stops.push([la[0].value,la[1]])}let Ar=[];for(let Kr of lr)Ar.push([$t[Kr].zoom,ch($t[Kr],D)]);let zr={name:"linear"};return{kind:"composite",interpolationType:zr,interpolationFactor:Cn.interpolationFactor.bind(void 0,zr),zoomStops:Ar.map(Kr=>Kr[0]),evaluate:({zoom:Kr},la)=>fh({stops:Ar,base:q.base},D,Kr).evaluate(Kr,la)}}if(Ce){let $t=Ue==="exponential"?{name:"exponential",base:q.base!==void 0?q.base:1}:null;return{kind:"camera",interpolationType:$t,interpolationFactor:Cn.interpolationFactor.bind(void 0,$t),zoomStops:q.stops.map(lr=>lr[0]),evaluate:({zoom:lr})=>ut(q,D,lr,Tt,Ft)}}return{kind:"source",evaluate($t,lr){let Ar=lr&&lr.properties?lr.properties[q.property]:void 0;return Ar===void 0?df(q.default,D.default):ut(q,D,Ar,Tt,Ft)}}}function df(q,D,Y){return q!==void 0?q:D!==void 0?D:Y!==void 0?Y:void 0}function Ah(q,D,Y,pe,Ce){return df(typeof Y===Ce?pe[Y]:void 0,q.default,D.default)}function ku(q,D,Y){if(Us(Y)!=="number")return df(q.default,D.default);let pe=q.stops.length;if(pe===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[pe-1][0])return q.stops[pe-1][1];let Ce=da(q.stops.map(Ue=>Ue[0]),Y);return q.stops[Ce][1]}function fh(q,D,Y){let pe=q.base!==void 0?q.base:1;if(Us(Y)!=="number")return df(q.default,D.default);let Ce=q.stops.length;if(Ce===1||Y<=q.stops[0][0])return q.stops[0][1];if(Y>=q.stops[Ce-1][0])return q.stops[Ce-1][1];let Ue=da(q.stops.map($t=>$t[0]),Y),Ge=function($t,lr,Ar,zr){let Kr=zr-Ar,la=$t-Ar;return Kr===0?0:lr===1?la/Kr:(Math.pow(lr,la)-1)/(Math.pow(lr,Kr)-1)}(Y,pe,q.stops[Ue][0],q.stops[Ue+1][0]),ut=q.stops[Ue][1],Tt=q.stops[Ue+1][1],Ft=$n[D.type]||Zh;return typeof ut.evaluate=="function"?{evaluate(...$t){let lr=ut.evaluate.apply(void 0,$t),Ar=Tt.evaluate.apply(void 0,$t);if(lr!==void 0&&Ar!==void 0)return Ft(lr,Ar,Ge,q.colorSpace)}}:Ft(ut,Tt,Ge,q.colorSpace)}function ru(q,D,Y){switch(D.type){case"color":Y=Ut.parse(Y);break;case"formatted":Y=pa.fromString(Y.toString());break;case"resolvedImage":Y=qa.fromString(Y.toString());break;case"padding":Y=Xr.parse(Y);break;default:Us(Y)===D.type||D.type==="enum"&&D.values[Y]||(Y=void 0)}return df(Y,q.default,D.default)}Fl.register(pf,{error:[{kind:"error"},[Ct],(q,[D])=>{throw new kr(D.evaluate(q))}],typeof:[Ct,[ur],(q,[D])=>Ke(mt(D.evaluate(q)))],"to-rgba":[Fe(Qe,4),[Ot],(q,[D])=>{let[Y,pe,Ce,Ue]=D.evaluate(q).rgb;return[255*Y,255*pe,255*Ce,Ue]}],rgb:[Ot,[Qe,Qe,Qe],lh],rgba:[Ot,[Qe,Qe,Qe,Qe],lh],has:{type:St,overloads:[[[Ct],(q,[D])=>Xf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Xf(D.evaluate(q),Y.evaluate(q))]]},get:{type:ur,overloads:[[[Ct],(q,[D])=>Rf(D.evaluate(q),q.properties())],[[Ct,jt],(q,[D,Y])=>Rf(D.evaluate(q),Y.evaluate(q))]]},"feature-state":[ur,[Ct],(q,[D])=>Rf(D.evaluate(q),q.featureState||{})],properties:[jt,[],q=>q.properties()],"geometry-type":[Ct,[],q=>q.geometryType()],id:[ur,[],q=>q.id()],zoom:[Qe,[],q=>q.globals.zoom],"heatmap-density":[Qe,[],q=>q.globals.heatmapDensity||0],"line-progress":[Qe,[],q=>q.globals.lineProgress||0],accumulated:[ur,[],q=>q.globals.accumulated===void 0?null:q.globals.accumulated],"+":[Qe,Kc(Qe),(q,D)=>{let Y=0;for(let pe of D)Y+=pe.evaluate(q);return Y}],"*":[Qe,Kc(Qe),(q,D)=>{let Y=1;for(let pe of D)Y*=pe.evaluate(q);return Y}],"-":{type:Qe,overloads:[[[Qe,Qe],(q,[D,Y])=>D.evaluate(q)-Y.evaluate(q)],[[Qe],(q,[D])=>-D.evaluate(q)]]},"/":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)/Y.evaluate(q)],"%":[Qe,[Qe,Qe],(q,[D,Y])=>D.evaluate(q)%Y.evaluate(q)],ln2:[Qe,[],()=>Math.LN2],pi:[Qe,[],()=>Math.PI],e:[Qe,[],()=>Math.E],"^":[Qe,[Qe,Qe],(q,[D,Y])=>Math.pow(D.evaluate(q),Y.evaluate(q))],sqrt:[Qe,[Qe],(q,[D])=>Math.sqrt(D.evaluate(q))],log10:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN10],ln:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))],log2:[Qe,[Qe],(q,[D])=>Math.log(D.evaluate(q))/Math.LN2],sin:[Qe,[Qe],(q,[D])=>Math.sin(D.evaluate(q))],cos:[Qe,[Qe],(q,[D])=>Math.cos(D.evaluate(q))],tan:[Qe,[Qe],(q,[D])=>Math.tan(D.evaluate(q))],asin:[Qe,[Qe],(q,[D])=>Math.asin(D.evaluate(q))],acos:[Qe,[Qe],(q,[D])=>Math.acos(D.evaluate(q))],atan:[Qe,[Qe],(q,[D])=>Math.atan(D.evaluate(q))],min:[Qe,Kc(Qe),(q,D)=>Math.min(...D.map(Y=>Y.evaluate(q)))],max:[Qe,Kc(Qe),(q,D)=>Math.max(...D.map(Y=>Y.evaluate(q)))],abs:[Qe,[Qe],(q,[D])=>Math.abs(D.evaluate(q))],round:[Qe,[Qe],(q,[D])=>{let Y=D.evaluate(q);return Y<0?-Math.round(-Y):Math.round(Y)}],floor:[Qe,[Qe],(q,[D])=>Math.floor(D.evaluate(q))],ceil:[Qe,[Qe],(q,[D])=>Math.ceil(D.evaluate(q))],"filter-==":[St,[Ct,ur],(q,[D,Y])=>q.properties()[D.value]===Y.value],"filter-id-==":[St,[ur],(q,[D])=>q.id()===D.value],"filter-type-==":[St,[Ct],(q,[D])=>q.geometryType()===D.value],"filter-<":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe<Ce}],"filter-id-<":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y<pe}],"filter->":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>Ce}],"filter-id->":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>pe}],"filter-<=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe<=Ce}],"filter-id-<=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y<=pe}],"filter->=":[St,[Ct,ur],(q,[D,Y])=>{let pe=q.properties()[D.value],Ce=Y.value;return typeof pe==typeof Ce&&pe>=Ce}],"filter-id->=":[St,[ur],(q,[D])=>{let Y=q.id(),pe=D.value;return typeof Y==typeof pe&&Y>=pe}],"filter-has":[St,[ur],(q,[D])=>D.value in q.properties()],"filter-has-id":[St,[],q=>q.id()!==null&&q.id()!==void 0],"filter-type-in":[St,[Fe(Ct)],(q,[D])=>D.value.indexOf(q.geometryType())>=0],"filter-id-in":[St,[Fe(ur)],(q,[D])=>D.value.indexOf(q.id())>=0],"filter-in-small":[St,[Ct,Fe(ur)],(q,[D,Y])=>Y.value.indexOf(q.properties()[D.value])>=0],"filter-in-large":[St,[Ct,Fe(ur)],(q,[D,Y])=>function(pe,Ce,Ue,Ge){for(;Ue<=Ge;){let ut=Ue+Ge>>1;if(Ce[ut]===pe)return!0;Ce[ut]>pe?Ge=ut-1:Ue=ut+1}return!1}(q.properties()[D.value],Y.value,0,Y.value.length-1)],all:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)&&Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(!Y.evaluate(q))return!1;return!0}]]},any:{type:St,overloads:[[[St,St],(q,[D,Y])=>D.evaluate(q)||Y.evaluate(q)],[Kc(St),(q,D)=>{for(let Y of D)if(Y.evaluate(q))return!0;return!1}]]},"!":[St,[St],(q,[D])=>!D.evaluate(q)],"is-supported-script":[St,[Ct],(q,[D])=>{let Y=q.globals&&q.globals.isSupportedScript;return!Y||Y(D.evaluate(q))}],upcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toUpperCase()],downcase:[Ct,[Ct],(q,[D])=>D.evaluate(q).toLowerCase()],concat:[Ct,Kc(ur),(q,D)=>D.map(Y=>gt(Y.evaluate(q))).join("")],"resolved-locale":[Ct,[ar],(q,[D])=>D.evaluate(q).resolvedLocale()]});class Cu{constructor(D,Y){var pe;this.expression=D,this._warningHistory={},this._evaluator=new Jr,this._defaultValue=Y?(pe=Y).type==="color"&&Kf(pe.default)?new Ut(0,0,0,0):pe.type==="color"?Ut.parse(pe.default)||null:pe.type==="padding"?Xr.parse(pe.default)||null:pe.type==="variableAnchorOffsetCollection"?Fa.parse(pe.default)||null:pe.default===void 0?null:pe.default:null,this._enumValues=Y&&Y.type==="enum"?Y.values:null}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._evaluator.globals=D,this._evaluator.feature=Y,this._evaluator.featureState=pe,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge,this.expression.evaluate(this._evaluator)}evaluate(D,Y,pe,Ce,Ue,Ge){this._evaluator.globals=D,this._evaluator.feature=Y||null,this._evaluator.featureState=pe||null,this._evaluator.canonical=Ce,this._evaluator.availableImages=Ue||null,this._evaluator.formattedSection=Ge||null;try{let ut=this.expression.evaluate(this._evaluator);if(ut==null||typeof ut=="number"&&ut!=ut)return this._defaultValue;if(this._enumValues&&!(ut in this._enumValues))throw new kr(`Expected value to be one of ${Object.keys(this._enumValues).map(Tt=>JSON.stringify(Tt)).join(", ")}, but found ${JSON.stringify(ut)} instead.`);return ut}catch(ut){return this._warningHistory[ut.message]||(this._warningHistory[ut.message]=!0,typeof console<"u"&&console.warn(ut.message)),this._defaultValue}}}function xc(q){return Array.isArray(q)&&q.length>0&&typeof q[0]=="string"&&q[0]in pf}function kl(q,D){let Y=new oa(pf,Yf,[],D?function(Ce){let Ue={color:Ot,string:Ct,number:Qe,enum:Ct,boolean:St,formatted:Cr,padding:vr,resolvedImage:_r,variableAnchorOffsetCollection:yt};return Ce.type==="array"?Fe(Ue[Ce.value]||ur,Ce.length):Ue[Ce.type]}(D):void 0),pe=Y.parse(q,void 0,void 0,void 0,D&&D.type==="string"?{typeAnnotation:"coerce"}:void 0);return pe?Dc(new Cu(pe,D)):Jc(Y.errors)}class Fc{constructor(D,Y){this.kind=D,this._styleExpression=Y,this.isStateDependent=D!=="constant"&&!Ju(Y.expression)}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}}class $u{constructor(D,Y,pe,Ce){this.kind=D,this.zoomStops=pe,this._styleExpression=Y,this.isStateDependent=D!=="camera"&&!Ju(Y.expression),this.interpolationType=Ce}evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluateWithoutErrorHandling(D,Y,pe,Ce,Ue,Ge)}evaluate(D,Y,pe,Ce,Ue,Ge){return this._styleExpression.evaluate(D,Y,pe,Ce,Ue,Ge)}interpolationFactor(D,Y,pe){return this.interpolationType?Cn.interpolationFactor(this.interpolationType,D,Y,pe):0}}function vu(q,D){let Y=kl(q,D);if(Y.result==="error")return Y;let pe=Y.value.expression,Ce=uh(pe);if(!Ce&&!Eu(D))return Jc([new ze("","data expressions not supported")]);let Ue=Df(pe,["zoom"]);if(!Ue&&!wf(D))return Jc([new ze("","zoom expressions not supported")]);let Ge=hh(pe);return Ge||Ue?Ge instanceof ze?Jc([Ge]):Ge instanceof Cn&&!zc(D)?Jc([new ze("",'"interpolate" expressions cannot be used with this property')]):Dc(Ge?new $u(Ce?"camera":"composite",Y.value,Ge.labels,Ge instanceof Cn?Ge.interpolation:void 0):new Fc(Ce?"constant":"source",Y.value)):Jc([new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.')])}class xl{constructor(D,Y){this._parameters=D,this._specification=Y,ce(this,ch(this._parameters,this._specification))}static deserialize(D){return new xl(D._parameters,D._specification)}static serialize(D){return{_parameters:D._parameters,_specification:D._specification}}}function hh(q){let D=null;if(q instanceof ca)D=hh(q.result);else if(q instanceof Xi){for(let Y of q.args)if(D=hh(Y),D)break}else(q instanceof Sa||q instanceof Cn)&&q.input instanceof Fl&&q.input.name==="zoom"&&(D=q);return D instanceof ze||q.eachChild(Y=>{let pe=hh(Y);pe instanceof ze?D=pe:!D&&pe?D=new ze("",'"zoom" expression may only be used as input to a top-level "step" or "interpolate" expression.'):D&&pe&&D!==pe&&(D=new ze("",'Only one zoom-based "step" or "interpolate" subexpression may be used in an expression.'))}),D}function Sh(q){if(q===!0||q===!1)return!0;if(!Array.isArray(q)||q.length===0)return!1;switch(q[0]){case"has":return q.length>=2&&q[1]!=="$id"&&q[1]!=="$type";case"in":return q.length>=3&&(typeof q[1]!="string"||Array.isArray(q[2]));case"!in":case"!has":case"none":return!1;case"==":case"!=":case">":case">=":case"<":case"<=":return q.length!==3||Array.isArray(q[1])||Array.isArray(q[2]);case"any":case"all":for(let D of q.slice(1))if(!Sh(D)&&typeof D!="boolean")return!1;return!0;default:return!0}}let Uu={type:"boolean",default:!1,transition:!1,"property-type":"data-driven",expression:{interpolated:!1,parameters:["zoom","feature"]}};function bc(q){if(q==null)return{filter:()=>!0,needGeometry:!1};Sh(q)||(q=vf(q));let D=kl(q,Uu);if(D.result==="error")throw new Error(D.value.map(Y=>`${Y.key}: ${Y.message}`).join(", "));return{filter:(Y,pe,Ce)=>D.value.evaluate(Y,pe,{},Ce),needGeometry:hp(q)}}function lc(q,D){return q<D?-1:q>D?1:0}function hp(q){if(!Array.isArray(q))return!1;if(q[0]==="within"||q[0]==="distance")return!0;for(let D=1;D<q.length;D++)if(hp(q[D]))return!0;return!1}function vf(q){if(!q)return!0;let D=q[0];return q.length<=1?D!=="any":D==="=="?Tf(q[1],q[2],"=="):D==="!="?au(Tf(q[1],q[2],"==")):D==="<"||D===">"||D==="<="||D===">="?Tf(q[1],q[2],D):D==="any"?(Y=q.slice(1),["any"].concat(Y.map(vf))):D==="all"?["all"].concat(q.slice(1).map(vf)):D==="none"?["all"].concat(q.slice(1).map(vf).map(au)):D==="in"?Lu(q[1],q.slice(2)):D==="!in"?au(Lu(q[1],q.slice(2))):D==="has"?zf(q[1]):D!=="!has"||au(zf(q[1]));var Y}function Tf(q,D,Y){switch(q){case"$type":return[`filter-type-${Y}`,D];case"$id":return[`filter-id-${Y}`,D];default:return[`filter-${Y}`,q,D]}}function Lu(q,D){if(D.length===0)return!1;switch(q){case"$type":return["filter-type-in",["literal",D]];case"$id":return["filter-id-in",["literal",D]];default:return D.length>200&&!D.some(Y=>typeof Y!=typeof D[0])?["filter-in-large",q,["literal",D.sort(lc)]]:["filter-in-small",q,["literal",D]]}}function zf(q){switch(q){case"$type":return!0;case"$id":return["filter-has-id"];default:return["filter-has",q]}}function au(q){return["!",q]}function $c(q){let D=typeof q;if(D==="number"||D==="boolean"||D==="string"||q==null)return JSON.stringify(q);if(Array.isArray(q)){let Ce="[";for(let Ue of q)Ce+=`${$c(Ue)},`;return`${Ce}]`}let Y=Object.keys(q).sort(),pe="{";for(let Ce=0;Ce<Y.length;Ce++)pe+=`${JSON.stringify(Y[Ce])}:${$c(q[Y[Ce]])},`;return`${pe}}`}function Mh(q){let D="";for(let Y of fe)D+=`/${$c(q[Y])}`;return D}function Ff(q){let D=q.value;return D?[new ge(q.key,D,"constants have been deprecated as of v8")]:[]}function il(q){return q instanceof Number||q instanceof String||q instanceof Boolean?q.valueOf():q}function mu(q){if(Array.isArray(q))return q.map(mu);if(q instanceof Object&&!(q instanceof Number||q instanceof String||q instanceof Boolean)){let D={};for(let Y in q)D[Y]=mu(q[Y]);return D}return il(q)}function gu(q){let D=q.key,Y=q.value,pe=q.valueSpec||{},Ce=q.objectElementValidators||{},Ue=q.style,Ge=q.styleSpec,ut=q.validateSpec,Tt=[],Ft=Us(Y);if(Ft!=="object")return[new ge(D,Y,`object expected, ${Ft} found`)];for(let $t in Y){let lr=$t.split(".")[0],Ar=pe[lr]||pe["*"],zr;if(Ce[lr])zr=Ce[lr];else if(pe[lr])zr=ut;else if(Ce["*"])zr=Ce["*"];else{if(!pe["*"]){Tt.push(new ge(D,Y[$t],`unknown property "${$t}"`));continue}zr=ut}Tt=Tt.concat(zr({key:(D&&`${D}.`)+$t,value:Y[$t],valueSpec:Ar,style:Ue,styleSpec:Ge,object:Y,objectKey:$t,validateSpec:ut},Y))}for(let $t in pe)Ce[$t]||pe[$t].required&&pe[$t].default===void 0&&Y[$t]===void 0&&Tt.push(new ge(D,Y,`missing required property "${$t}"`));return Tt}function Jf(q){let D=q.value,Y=q.valueSpec,pe=q.style,Ce=q.styleSpec,Ue=q.key,Ge=q.arrayElementValidator||q.validateSpec;if(Us(D)!=="array")return[new ge(Ue,D,`array expected, ${Us(D)} found`)];if(Y.length&&D.length!==Y.length)return[new ge(Ue,D,`array length ${Y.length} expected, length ${D.length} found`)];if(Y["min-length"]&&D.length<Y["min-length"])return[new ge(Ue,D,`array length at least ${Y["min-length"]} expected, length ${D.length} found`)];let ut={type:Y.value,values:Y.values};Ce.$version<7&&(ut.function=Y.function),Us(Y.value)==="object"&&(ut=Y.value);let Tt=[];for(let Ft=0;Ft<D.length;Ft++)Tt=Tt.concat(Ge({array:D,arrayIndex:Ft,value:D[Ft],valueSpec:ut,validateSpec:q.validateSpec,style:pe,styleSpec:Ce,key:`${Ue}[${Ft}]`}));return Tt}function el(q){let D=q.key,Y=q.value,pe=q.valueSpec,Ce=Us(Y);return Ce==="number"&&Y!=Y&&(Ce="NaN"),Ce!=="number"?[new ge(D,Y,`number expected, ${Ce} found`)]:"minimum"in pe&&Y<pe.minimum?[new ge(D,Y,`${Y} is less than the minimum value ${pe.minimum}`)]:"maximum"in pe&&Y>pe.maximum?[new ge(D,Y,`${Y} is greater than the maximum value ${pe.maximum}`)]:[]}function mf(q){let D=q.valueSpec,Y=il(q.value.type),pe,Ce,Ue,Ge={},ut=Y!=="categorical"&&q.value.property===void 0,Tt=!ut,Ft=Us(q.value.stops)==="array"&&Us(q.value.stops[0])==="array"&&Us(q.value.stops[0][0])==="object",$t=gu({key:q.key,value:q.value,valueSpec:q.styleSpec.function,validateSpec:q.validateSpec,style:q.style,styleSpec:q.styleSpec,objectElementValidators:{stops:function(zr){if(Y==="identity")return[new ge(zr.key,zr.value,'identity function may not have a "stops" property')];let Kr=[],la=zr.value;return Kr=Kr.concat(Jf({key:zr.key,value:la,valueSpec:zr.valueSpec,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,arrayElementValidator:lr})),Us(la)==="array"&&la.length===0&&Kr.push(new ge(zr.key,la,"array must have at least one stop")),Kr},default:function(zr){return zr.validateSpec({key:zr.key,value:zr.value,valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec})}}});return Y==="identity"&&ut&&$t.push(new ge(q.key,q.value,'missing required property "property"')),Y==="identity"||q.value.stops||$t.push(new ge(q.key,q.value,'missing required property "stops"')),Y==="exponential"&&q.valueSpec.expression&&!zc(q.valueSpec)&&$t.push(new ge(q.key,q.value,"exponential functions not supported")),q.styleSpec.$version>=8&&(Tt&&!Eu(q.valueSpec)?$t.push(new ge(q.key,q.value,"property functions not supported")):ut&&!wf(q.valueSpec)&&$t.push(new ge(q.key,q.value,"zoom functions not supported"))),Y!=="categorical"&&!Ft||q.value.property!==void 0||$t.push(new ge(q.key,q.value,'"property" property is required')),$t;function lr(zr){let Kr=[],la=zr.value,za=zr.key;if(Us(la)!=="array")return[new ge(za,la,`array expected, ${Us(la)} found`)];if(la.length!==2)return[new ge(za,la,`array length 2 expected, length ${la.length} found`)];if(Ft){if(Us(la[0])!=="object")return[new ge(za,la,`object expected, ${Us(la[0])} found`)];if(la[0].zoom===void 0)return[new ge(za,la,"object stop key must have zoom")];if(la[0].value===void 0)return[new ge(za,la,"object stop key must have value")];if(Ue&&Ue>il(la[0].zoom))return[new ge(za,la[0].zoom,"stop zoom values must appear in ascending order")];il(la[0].zoom)!==Ue&&(Ue=il(la[0].zoom),Ce=void 0,Ge={}),Kr=Kr.concat(gu({key:`${za}[0]`,value:la[0],valueSpec:{zoom:{}},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec,objectElementValidators:{zoom:el,value:Ar}}))}else Kr=Kr.concat(Ar({key:`${za}[0]`,value:la[0],valueSpec:{},validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec},la));return xc(mu(la[1]))?Kr.concat([new ge(`${za}[1]`,la[1],"expressions are not allowed in function stops.")]):Kr.concat(zr.validateSpec({key:`${za}[1]`,value:la[1],valueSpec:D,validateSpec:zr.validateSpec,style:zr.style,styleSpec:zr.styleSpec}))}function Ar(zr,Kr){let la=Us(zr.value),za=il(zr.value),ja=zr.value!==null?zr.value:Kr;if(pe){if(la!==pe)return[new ge(zr.key,ja,`${la} stop domain type must match previous stop domain type ${pe}`)]}else pe=la;if(la!=="number"&&la!=="string"&&la!=="boolean")return[new ge(zr.key,ja,"stop domain value must be a number, string, or boolean")];if(la!=="number"&&Y!=="categorical"){let gi=`number expected, ${la} found`;return Eu(D)&&Y===void 0&&(gi+='\nIf you intended to use a categorical function, specify `"type": "categorical"`.'),[new ge(zr.key,ja,gi)]}return Y!=="categorical"||la!=="number"||isFinite(za)&&Math.floor(za)===za?Y!=="categorical"&&la==="number"&&Ce!==void 0&&za<Ce?[new ge(zr.key,ja,"stop domain values must appear in ascending order")]:(Ce=za,Y==="categorical"&&za in Ge?[new ge(zr.key,ja,"stop domain values must be unique")]:(Ge[za]=!0,[])):[new ge(zr.key,ja,`integer expected, found ${za}`)]}}function wc(q){let D=(q.expressionContext==="property"?vu:kl)(mu(q.value),q.valueSpec);if(D.result==="error")return D.value.map(pe=>new ge(`${q.key}${pe.key}`,q.value,pe.message));let Y=D.value.expression||D.value._styleExpression.expression;if(q.expressionContext==="property"&&q.propertyKey==="text-font"&&!Y.outputDefined())return[new ge(q.key,q.value,`Invalid data expression for "${q.propertyKey}". Output values must be contained as literals within the expression.`)];if(q.expressionContext==="property"&&q.propertyType==="layout"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with layout properties.')];if(q.expressionContext==="filter"&&!Ju(Y))return[new ge(q.key,q.value,'"feature-state" data expressions are not supported with filters.')];if(q.expressionContext&&q.expressionContext.indexOf("cluster")===0){if(!Df(Y,["zoom","feature-state"]))return[new ge(q.key,q.value,'"zoom" and "feature-state" expressions are not supported with cluster properties.')];if(q.expressionContext==="cluster-initial"&&!uh(Y))return[new ge(q.key,q.value,"Feature data expressions are not supported with initial expression part of cluster properties.")]}return[]}function ju(q){let D=q.key,Y=q.value,pe=q.valueSpec,Ce=[];return Array.isArray(pe.values)?pe.values.indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${pe.values.join(", ")}], ${JSON.stringify(Y)} found`)):Object.keys(pe.values).indexOf(il(Y))===-1&&Ce.push(new ge(D,Y,`expected one of [${Object.keys(pe.values).join(", ")}], ${JSON.stringify(Y)} found`)),Ce}function Af(q){return Sh(mu(q.value))?wc(ce({},q,{expressionContext:"filter",valueSpec:{value:"boolean"}})):uc(q)}function uc(q){let D=q.value,Y=q.key;if(Us(D)!=="array")return[new ge(Y,D,`array expected, ${Us(D)} found`)];let pe=q.styleSpec,Ce,Ue=[];if(D.length<1)return[new ge(Y,D,"filter array must have at least 1 element")];switch(Ue=Ue.concat(ju({key:`${Y}[0]`,value:D[0],valueSpec:pe.filter_operator,style:q.style,styleSpec:q.styleSpec})),il(D[0])){case"<":case"<=":case">":case">=":D.length>=2&&il(D[1])==="$type"&&Ue.push(new ge(Y,D,`"$type" cannot be use with operator "${D[0]}"`));case"==":case"!=":D.length!==3&&Ue.push(new ge(Y,D,`filter array for operator "${D[0]}" must have 3 elements`));case"in":case"!in":D.length>=2&&(Ce=Us(D[1]),Ce!=="string"&&Ue.push(new ge(`${Y}[1]`,D[1],`string expected, ${Ce} found`)));for(let Ge=2;Ge<D.length;Ge++)Ce=Us(D[Ge]),il(D[1])==="$type"?Ue=Ue.concat(ju({key:`${Y}[${Ge}]`,value:D[Ge],valueSpec:pe.geometry_type,style:q.style,styleSpec:q.styleSpec})):Ce!=="string"&&Ce!=="number"&&Ce!=="boolean"&&Ue.push(new ge(`${Y}[${Ge}]`,D[Ge],`string, number, or boolean expected, ${Ce} found`));break;case"any":case"all":case"none":for(let Ge=1;Ge<D.length;Ge++)Ue=Ue.concat(uc({key:`${Y}[${Ge}]`,value:D[Ge],style:q.style,styleSpec:q.styleSpec}));break;case"has":case"!has":Ce=Us(D[1]),D.length!==2?Ue.push(new ge(Y,D,`filter array for "${D[0]}" operator must have 2 elements`)):Ce!=="string"&&Ue.push(new ge(`${Y}[1]`,D[1],`string expected, ${Ce} found`))}return Ue}function Qc(q,D){let Y=q.key,pe=q.validateSpec,Ce=q.style,Ue=q.styleSpec,Ge=q.value,ut=q.objectKey,Tt=Ue[`${D}_${q.layerType}`];if(!Tt)return[];let Ft=ut.match(/^(.*)-transition$/);if(D==="paint"&&Ft&&Tt[Ft[1]]&&Tt[Ft[1]].transition)return pe({key:Y,value:Ge,valueSpec:Ue.transition,style:Ce,styleSpec:Ue});let $t=q.valueSpec||Tt[ut];if(!$t)return[new ge(Y,Ge,`unknown property "${ut}"`)];let lr;if(Us(Ge)==="string"&&Eu($t)&&!$t.tokens&&(lr=/^{([^}]+)}$/.exec(Ge)))return[new ge(Y,Ge,`"${ut}" does not support interpolation syntax
+Use an identity property function instead: \`{ "type": "identity", "property": ${JSON.stringify(lr[1])} }\`.`)];let Ar=[];return q.layerType==="symbol"&&(ut==="text-field"&&Ce&&!Ce.glyphs&&Ar.push(new ge(Y,Ge,'use of "text-field" requires a style "glyphs" property')),ut==="text-font"&&Kf(mu(Ge))&&il(Ge.type)==="identity"&&Ar.push(new ge(Y,Ge,'"text-font" does not support identity functions'))),Ar.concat(pe({key:q.key,value:Ge,valueSpec:$t,style:Ce,styleSpec:Ue,expressionContext:"property",propertyType:D,propertyKey:ut}))}function $f(q){return Qc(q,"paint")}function Vl(q){return Qc(q,"layout")}function Qf(q){let D=[],Y=q.value,pe=q.key,Ce=q.style,Ue=q.styleSpec;Y.type||Y.ref||D.push(new ge(pe,Y,'either "type" or "ref" is required'));let Ge=il(Y.type),ut=il(Y.ref);if(Y.id){let Tt=il(Y.id);for(let Ft=0;Ft<q.arrayIndex;Ft++){let $t=Ce.layers[Ft];il($t.id)===Tt&&D.push(new ge(pe,Y.id,`duplicate layer id "${Y.id}", previously used at line ${$t.id.__line__}`))}}if("ref"in Y){let Tt;["type","source","source-layer","filter","layout"].forEach(Ft=>{Ft in Y&&D.push(new ge(pe,Y[Ft],`"${Ft}" is prohibited for ref layers`))}),Ce.layers.forEach(Ft=>{il(Ft.id)===ut&&(Tt=Ft)}),Tt?Tt.ref?D.push(new ge(pe,Y.ref,"ref cannot reference another ref layer")):Ge=il(Tt.type):D.push(new ge(pe,Y.ref,`ref layer "${ut}" not found`))}else if(Ge!=="background")if(Y.source){let Tt=Ce.sources&&Ce.sources[Y.source],Ft=Tt&&il(Tt.type);Tt?Ft==="vector"&&Ge==="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster source`)):Ft!=="raster-dem"&&Ge==="hillshade"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a raster-dem source`)):Ft==="raster"&&Ge!=="raster"?D.push(new ge(pe,Y.source,`layer "${Y.id}" requires a vector source`)):Ft!=="vector"||Y["source-layer"]?Ft==="raster-dem"&&Ge!=="hillshade"?D.push(new ge(pe,Y.source,"raster-dem source can only be used with layer type 'hillshade'.")):Ge!=="line"||!Y.paint||!Y.paint["line-gradient"]||Ft==="geojson"&&Tt.lineMetrics||D.push(new ge(pe,Y,`layer "${Y.id}" specifies a line-gradient, which requires a GeoJSON source with \`lineMetrics\` enabled.`)):D.push(new ge(pe,Y,`layer "${Y.id}" must specify a "source-layer"`)):D.push(new ge(pe,Y.source,`source "${Y.source}" not found`))}else D.push(new ge(pe,Y,'missing required property "source"'));return D=D.concat(gu({key:pe,value:Y,valueSpec:Ue.layer,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,objectElementValidators:{"*":()=>[],type:()=>q.validateSpec({key:`${pe}.type`,value:Y.type,valueSpec:Ue.layer.type,style:q.style,styleSpec:q.styleSpec,validateSpec:q.validateSpec,object:Y,objectKey:"type"}),filter:Af,layout:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>Vl(ce({layerType:Ge},Ft))}}),paint:Tt=>gu({layer:Y,key:Tt.key,value:Tt.value,style:Tt.style,styleSpec:Tt.styleSpec,validateSpec:Tt.validateSpec,objectElementValidators:{"*":Ft=>$f(ce({layerType:Ge},Ft))}})}})),D}function Vu(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="string"?[new ge(Y,D,`string expected, ${pe} found`)]:[]}let Tc={promoteId:function({key:q,value:D}){if(Us(D)==="string")return Vu({key:q,value:D});{let Y=[];for(let pe in D)Y.push(...Vu({key:`${q}.${pe}`,value:D[pe]}));return Y}}};function cc(q){let D=q.value,Y=q.key,pe=q.styleSpec,Ce=q.style,Ue=q.validateSpec;if(!D.type)return[new ge(Y,D,'"type" is required')];let Ge=il(D.type),ut;switch(Ge){case"vector":case"raster":return ut=gu({key:Y,value:D,valueSpec:pe[`source_${Ge.replace("-","_")}`],style:q.style,styleSpec:pe,objectElementValidators:Tc,validateSpec:Ue}),ut;case"raster-dem":return ut=function(Tt){var Ft;let $t=(Ft=Tt.sourceName)!==null&&Ft!==void 0?Ft:"",lr=Tt.value,Ar=Tt.styleSpec,zr=Ar.source_raster_dem,Kr=Tt.style,la=[],za=Us(lr);if(lr===void 0)return la;if(za!=="object")return la.push(new ge("source_raster_dem",lr,`object expected, ${za} found`)),la;let ja=il(lr.encoding)==="custom",gi=["redFactor","greenFactor","blueFactor","baseShift"],ei=Tt.value.encoding?`"${Tt.value.encoding}"`:"Default";for(let hi in lr)!ja&&gi.includes(hi)?la.push(new ge(hi,lr[hi],`In "${$t}": "${hi}" is only valid when "encoding" is set to "custom". ${ei} encoding found`)):zr[hi]?la=la.concat(Tt.validateSpec({key:hi,value:lr[hi],valueSpec:zr[hi],validateSpec:Tt.validateSpec,style:Kr,styleSpec:Ar})):la.push(new ge(hi,lr[hi],`unknown property "${hi}"`));return la}({sourceName:Y,value:D,style:q.style,styleSpec:pe,validateSpec:Ue}),ut;case"geojson":if(ut=gu({key:Y,value:D,valueSpec:pe.source_geojson,style:Ce,styleSpec:pe,validateSpec:Ue,objectElementValidators:Tc}),D.cluster)for(let Tt in D.clusterProperties){let[Ft,$t]=D.clusterProperties[Tt],lr=typeof Ft=="string"?[Ft,["accumulated"],["get",Tt]]:Ft;ut.push(...wc({key:`${Y}.${Tt}.map`,value:$t,validateSpec:Ue,expressionContext:"cluster-map"})),ut.push(...wc({key:`${Y}.${Tt}.reduce`,value:lr,validateSpec:Ue,expressionContext:"cluster-reduce"}))}return ut;case"video":return gu({key:Y,value:D,valueSpec:pe.source_video,style:Ce,validateSpec:Ue,styleSpec:pe});case"image":return gu({key:Y,value:D,valueSpec:pe.source_image,style:Ce,validateSpec:Ue,styleSpec:pe});case"canvas":return[new ge(Y,null,"Please use runtime APIs to add canvas sources, rather than including them in stylesheets.","source.canvas")];default:return ju({key:`${Y}.type`,value:D.type,valueSpec:{values:["vector","raster","raster-dem","geojson","video","image"]},style:Ce,validateSpec:Ue,styleSpec:pe})}}function Cl(q){let D=q.value,Y=q.styleSpec,pe=Y.light,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("light",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D){let Tt=ut.match(/^(.*)-transition$/);Ue=Ue.concat(Tt&&pe[Tt[1]]&&pe[Tt[1]].transition?q.validateSpec({key:ut,value:D[ut],valueSpec:Y.transition,validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)])}return Ue}function iu(q){let D=q.value,Y=q.styleSpec,pe=Y.sky,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("sky",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge}function fc(q){let D=q.value,Y=q.styleSpec,pe=Y.terrain,Ce=q.style,Ue=[],Ge=Us(D);if(D===void 0)return Ue;if(Ge!=="object")return Ue=Ue.concat([new ge("terrain",D,`object expected, ${Ge} found`)]),Ue;for(let ut in D)Ue=Ue.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],validateSpec:q.validateSpec,style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ue}function Oc(q){let D=[],Y=q.value,pe=q.key;if(Array.isArray(Y)){let Ce=[],Ue=[];for(let Ge in Y)Y[Ge].id&&Ce.includes(Y[Ge].id)&&D.push(new ge(pe,Y,`all the sprites' ids must be unique, but ${Y[Ge].id} is duplicated`)),Ce.push(Y[Ge].id),Y[Ge].url&&Ue.includes(Y[Ge].url)&&D.push(new ge(pe,Y,`all the sprites' URLs must be unique, but ${Y[Ge].url} is duplicated`)),Ue.push(Y[Ge].url),D=D.concat(gu({key:`${pe}[${Ge}]`,value:Y[Ge],valueSpec:{id:{type:"string",required:!0},url:{type:"string",required:!0}},validateSpec:q.validateSpec}));return D}return Vu({key:pe,value:Y})}let Qu={"*":()=>[],array:Jf,boolean:function(q){let D=q.value,Y=q.key,pe=Us(D);return pe!=="boolean"?[new ge(Y,D,`boolean expected, ${pe} found`)]:[]},number:el,color:function(q){let D=q.key,Y=q.value,pe=Us(Y);return pe!=="string"?[new ge(D,Y,`color expected, ${pe} found`)]:Ut.parse(String(Y))?[]:[new ge(D,Y,`color expected, "${Y}" found`)]},constants:Ff,enum:ju,filter:Af,function:mf,layer:Qf,object:gu,source:cc,light:Cl,sky:iu,terrain:fc,projection:function(q){let D=q.value,Y=q.styleSpec,pe=Y.projection,Ce=q.style,Ue=Us(D);if(D===void 0)return[];if(Ue!=="object")return[new ge("projection",D,`object expected, ${Ue} found`)];let Ge=[];for(let ut in D)Ge=Ge.concat(pe[ut]?q.validateSpec({key:ut,value:D[ut],valueSpec:pe[ut],style:Ce,styleSpec:Y}):[new ge(ut,D[ut],`unknown property "${ut}"`)]);return Ge},string:Vu,formatted:function(q){return Vu(q).length===0?[]:wc(q)},resolvedImage:function(q){return Vu(q).length===0?[]:wc(q)},padding:function(q){let D=q.key,Y=q.value;if(Us(Y)==="array"){if(Y.length<1||Y.length>4)return[new ge(D,Y,`padding requires 1 to 4 values; ${Y.length} values found`)];let pe={type:"number"},Ce=[];for(let Ue=0;Ue<Y.length;Ue++)Ce=Ce.concat(q.validateSpec({key:`${D}[${Ue}]`,value:Y[Ue],validateSpec:q.validateSpec,valueSpec:pe}));return Ce}return el({key:D,value:Y,valueSpec:{}})},variableAnchorOffsetCollection:function(q){let D=q.key,Y=q.value,pe=Us(Y),Ce=q.styleSpec;if(pe!=="array"||Y.length<1||Y.length%2!=0)return[new ge(D,Y,"variableAnchorOffsetCollection requires a non-empty array of even length")];let Ue=[];for(let Ge=0;Ge<Y.length;Ge+=2)Ue=Ue.concat(ju({key:`${D}[${Ge}]`,value:Y[Ge],valueSpec:Ce.layout_symbol["text-anchor"]})),Ue=Ue.concat(Jf({key:`${D}[${Ge+1}]`,value:Y[Ge+1],valueSpec:{length:2,value:"number"},validateSpec:q.validateSpec,style:q.style,styleSpec:Ce}));return Ue},sprite:Oc};function ef(q){let D=q.value,Y=q.valueSpec,pe=q.styleSpec;return q.validateSpec=ef,Y.expression&&Kf(il(D))?mf(q):Y.expression&&xc(mu(D))?wc(q):Y.type&&Qu[Y.type]?Qu[Y.type](q):gu(ce({},q,{valueSpec:Y.type?pe[Y.type]:Y}))}function Zt(q){let D=q.value,Y=q.key,pe=Vu(q);return pe.length||(D.indexOf("{fontstack}")===-1&&pe.push(new ge(Y,D,'"glyphs" url must include a "{fontstack}" token')),D.indexOf("{range}")===-1&&pe.push(new ge(Y,D,'"glyphs" url must include a "{range}" token'))),pe}function fr(q,D=ie){let Y=[];return Y=Y.concat(ef({key:"",value:q,valueSpec:D.$root,styleSpec:D,style:q,validateSpec:ef,objectElementValidators:{glyphs:Zt,"*":()=>[]}})),q.constants&&(Y=Y.concat(Ff({key:"constants",value:q.constants,style:q,styleSpec:D,validateSpec:ef}))),qr(Y)}function Yr(q){return function(D){return q(ps(wo({},D),{validateSpec:ef}))}}function qr(q){return[].concat(q).sort((D,Y)=>D.line-Y.line)}function ba(q){return function(...D){return qr(q.apply(this,D))}}fr.source=ba(Yr(cc)),fr.sprite=ba(Yr(Oc)),fr.glyphs=ba(Yr(Zt)),fr.light=ba(Yr(Cl)),fr.sky=ba(Yr(iu)),fr.terrain=ba(Yr(fc)),fr.layer=ba(Yr(Qf)),fr.filter=ba(Yr(Af)),fr.paintProperty=ba(Yr($f)),fr.layoutProperty=ba(Yr(Vl));let Ka=fr,oi=Ka.light,yi=Ka.sky,ki=Ka.paintProperty,Bi=Ka.layoutProperty;function li(q,D){let Y=!1;if(D&&D.length)for(let pe of D)q.fire(new j(new Error(pe.message))),Y=!0;return Y}class _i{constructor(D,Y,pe){let Ce=this.cells=[];if(D instanceof ArrayBuffer){this.arrayBuffer=D;let Ge=new Int32Array(this.arrayBuffer);D=Ge[0],this.d=(Y=Ge[1])+2*(pe=Ge[2]);for(let Tt=0;Tt<this.d*this.d;Tt++){let Ft=Ge[3+Tt],$t=Ge[3+Tt+1];Ce.push(Ft===$t?null:Ge.subarray(Ft,$t))}let ut=Ge[3+Ce.length+1];this.keys=Ge.subarray(Ge[3+Ce.length],ut),this.bboxes=Ge.subarray(ut),this.insert=this._insertReadonly}else{this.d=Y+2*pe;for(let Ge=0;Ge<this.d*this.d;Ge++)Ce.push([]);this.keys=[],this.bboxes=[]}this.n=Y,this.extent=D,this.padding=pe,this.scale=Y/D,this.uid=0;let Ue=pe/Y*D;this.min=-Ue,this.max=D+Ue}insert(D,Y,pe,Ce,Ue){this._forEachCell(Y,pe,Ce,Ue,this._insertCell,this.uid++,void 0,void 0),this.keys.push(D),this.bboxes.push(Y),this.bboxes.push(pe),this.bboxes.push(Ce),this.bboxes.push(Ue)}_insertReadonly(){throw new Error("Cannot insert into a GridIndex created from an ArrayBuffer.")}_insertCell(D,Y,pe,Ce,Ue,Ge){this.cells[Ue].push(Ge)}query(D,Y,pe,Ce,Ue){let Ge=this.min,ut=this.max;if(D<=Ge&&Y<=Ge&&ut<=pe&&ut<=Ce&&!Ue)return Array.prototype.slice.call(this.keys);{let Tt=[];return this._forEachCell(D,Y,pe,Ce,this._queryCell,Tt,{},Ue),Tt}}_queryCell(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=this.cells[Ue];if(Ft!==null){let $t=this.keys,lr=this.bboxes;for(let Ar=0;Ar<Ft.length;Ar++){let zr=Ft[Ar];if(ut[zr]===void 0){let Kr=4*zr;(Tt?Tt(lr[Kr+0],lr[Kr+1],lr[Kr+2],lr[Kr+3]):D<=lr[Kr+2]&&Y<=lr[Kr+3]&&pe>=lr[Kr+0]&&Ce>=lr[Kr+1])?(ut[zr]=!0,Ge.push($t[zr])):ut[zr]=!1}}}}_forEachCell(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=this._convertToCellCoord(D),$t=this._convertToCellCoord(Y),lr=this._convertToCellCoord(pe),Ar=this._convertToCellCoord(Ce);for(let zr=Ft;zr<=lr;zr++)for(let Kr=$t;Kr<=Ar;Kr++){let la=this.d*Kr+zr;if((!Tt||Tt(this._convertFromCellCoord(zr),this._convertFromCellCoord(Kr),this._convertFromCellCoord(zr+1),this._convertFromCellCoord(Kr+1)))&&Ue.call(this,D,Y,pe,Ce,la,Ge,ut,Tt))return}}_convertFromCellCoord(D){return(D-this.padding)/this.scale}_convertToCellCoord(D){return Math.max(0,Math.min(this.d-1,Math.floor(D*this.scale)+this.padding))}toArrayBuffer(){if(this.arrayBuffer)return this.arrayBuffer;let D=this.cells,Y=3+this.cells.length+1+1,pe=0;for(let Ge=0;Ge<this.cells.length;Ge++)pe+=this.cells[Ge].length;let Ce=new Int32Array(Y+pe+this.keys.length+this.bboxes.length);Ce[0]=this.extent,Ce[1]=this.n,Ce[2]=this.padding;let Ue=Y;for(let Ge=0;Ge<D.length;Ge++){let ut=D[Ge];Ce[3+Ge]=Ue,Ce.set(ut,Ue),Ue+=ut.length}return Ce[3+D.length]=Ue,Ce.set(this.keys,Ue),Ue+=this.keys.length,Ce[3+D.length+1]=Ue,Ce.set(this.bboxes,Ue),Ue+=this.bboxes.length,Ce.buffer}static serialize(D,Y){let pe=D.toArrayBuffer();return Y&&Y.push(pe),{buffer:pe}}static deserialize(D){return new _i(D.buffer)}}let vi={};function ti(q,D,Y={}){if(vi[q])throw new Error(`${q} is already registered.`);Object.defineProperty(D,"_classRegistryKey",{value:q,writeable:!1}),vi[q]={klass:D,omit:Y.omit||[],shallow:Y.shallow||[]}}ti("Object",Object),ti("TransferableGridIndex",_i),ti("Color",Ut),ti("Error",Error),ti("AJAXError",he),ti("ResolvedImage",qa),ti("StylePropertyFunction",xl),ti("StyleExpression",Cu,{omit:["_evaluator"]}),ti("ZoomDependentExpression",$u),ti("ZoomConstantExpression",Fc),ti("CompoundExpression",Fl,{omit:["_evaluate"]});for(let q in pf)pf[q]._classRegistryKey||ti(`Expression_${q}`,pf[q]);function rn(q){return q&&typeof ArrayBuffer<"u"&&(q instanceof ArrayBuffer||q.constructor&&q.constructor.name==="ArrayBuffer")}function Kn(q){return q.$name||q.constructor._classRegistryKey}function Wn(q){return!function(D){if(D===null||typeof D!="object")return!1;let Y=Kn(D);return!(!Y||Y==="Object")}(q)&&(q==null||typeof q=="boolean"||typeof q=="number"||typeof q=="string"||q instanceof Boolean||q instanceof Number||q instanceof String||q instanceof Date||q instanceof RegExp||q instanceof Blob||q instanceof Error||rn(q)||F(q)||ArrayBuffer.isView(q)||q instanceof ImageData)}function Jn(q,D){if(Wn(q))return(rn(q)||F(q))&&D&&D.push(q),ArrayBuffer.isView(q)&&D&&D.push(q.buffer),q instanceof ImageData&&D&&D.push(q.data.buffer),q;if(Array.isArray(q)){let Ue=[];for(let Ge of q)Ue.push(Jn(Ge,D));return Ue}if(typeof q!="object")throw new Error("can't serialize object of type "+typeof q);let Y=Kn(q);if(!Y)throw new Error(`can't serialize object of unregistered class ${q.constructor.name}`);if(!vi[Y])throw new Error(`${Y} is not registered.`);let{klass:pe}=vi[Y],Ce=pe.serialize?pe.serialize(q,D):{};if(pe.serialize){if(D&&Ce===D[D.length-1])throw new Error("statically serialized object won't survive transfer of $name property")}else{for(let Ue in q){if(!q.hasOwnProperty(Ue)||vi[Y].omit.indexOf(Ue)>=0)continue;let Ge=q[Ue];Ce[Ue]=vi[Y].shallow.indexOf(Ue)>=0?Ge:Jn(Ge,D)}q instanceof Error&&(Ce.message=q.message)}if(Ce.$name)throw new Error("$name property is reserved for worker serialization logic.");return Y!=="Object"&&(Ce.$name=Y),Ce}function no(q){if(Wn(q))return q;if(Array.isArray(q))return q.map(no);if(typeof q!="object")throw new Error("can't deserialize object of type "+typeof q);let D=Kn(q)||"Object";if(!vi[D])throw new Error(`can't deserialize unregistered class ${D}`);let{klass:Y}=vi[D];if(!Y)throw new Error(`can't deserialize unregistered class ${D}`);if(Y.deserialize)return Y.deserialize(q);let pe=Object.create(Y.prototype);for(let Ce of Object.keys(q)){if(Ce==="$name")continue;let Ue=q[Ce];pe[Ce]=vi[D].shallow.indexOf(Ce)>=0?Ue:no(Ue)}return pe}class en{constructor(){this.first=!0}update(D,Y){let pe=Math.floor(D);return this.first?(this.first=!1,this.lastIntegerZoom=pe,this.lastIntegerZoomTime=0,this.lastZoom=D,this.lastFloorZoom=pe,!0):(this.lastFloorZoom>pe?(this.lastIntegerZoom=pe+1,this.lastIntegerZoomTime=Y):this.lastFloorZoom<pe&&(this.lastIntegerZoom=pe,this.lastIntegerZoomTime=Y),D!==this.lastZoom&&(this.lastZoom=D,this.lastFloorZoom=pe,!0))}}let Ri={"Latin-1 Supplement":q=>q>=128&&q<=255,"Hangul Jamo":q=>q>=4352&&q<=4607,Khmer:q=>q>=6016&&q<=6143,"General Punctuation":q=>q>=8192&&q<=8303,"Letterlike Symbols":q=>q>=8448&&q<=8527,"Number Forms":q=>q>=8528&&q<=8591,"Miscellaneous Technical":q=>q>=8960&&q<=9215,"Control Pictures":q=>q>=9216&&q<=9279,"Optical Character Recognition":q=>q>=9280&&q<=9311,"Enclosed Alphanumerics":q=>q>=9312&&q<=9471,"Geometric Shapes":q=>q>=9632&&q<=9727,"Miscellaneous Symbols":q=>q>=9728&&q<=9983,"Miscellaneous Symbols and Arrows":q=>q>=11008&&q<=11263,"Ideographic Description Characters":q=>q>=12272&&q<=12287,"CJK Symbols and Punctuation":q=>q>=12288&&q<=12351,Katakana:q=>q>=12448&&q<=12543,Kanbun:q=>q>=12688&&q<=12703,"CJK Strokes":q=>q>=12736&&q<=12783,"Enclosed CJK Letters and Months":q=>q>=12800&&q<=13055,"CJK Compatibility":q=>q>=13056&&q<=13311,"Yijing Hexagram Symbols":q=>q>=19904&&q<=19967,"Private Use Area":q=>q>=57344&&q<=63743,"Vertical Forms":q=>q>=65040&&q<=65055,"CJK Compatibility Forms":q=>q>=65072&&q<=65103,"Small Form Variants":q=>q>=65104&&q<=65135,"Halfwidth and Fullwidth Forms":q=>q>=65280&&q<=65519};function co(q){for(let D of q)if(vs(D.charCodeAt(0)))return!0;return!1}function Wo(q){for(let D of q)if(!Ms(D.charCodeAt(0)))return!1;return!0}function bs(q){let D=q.map(Y=>{try{return new RegExp(`\\p{sc=${Y}}`,"u").source}catch{return null}}).filter(Y=>Y);return new RegExp(D.join("|"),"u")}let Xs=bs(["Arab","Dupl","Mong","Ougr","Syrc"]);function Ms(q){return!Xs.test(String.fromCodePoint(q))}let Hs=bs(["Bopo","Hani","Hira","Kana","Kits","Nshu","Tang","Yiii"]);function vs(q){return!(q!==746&&q!==747&&(q<4352||!(Ri["CJK Compatibility Forms"](q)&&!(q>=65097&&q<=65103)||Ri["CJK Compatibility"](q)||Ri["CJK Strokes"](q)||!(!Ri["CJK Symbols and Punctuation"](q)||q>=12296&&q<=12305||q>=12308&&q<=12319||q===12336)||Ri["Enclosed CJK Letters and Months"](q)||Ri["Ideographic Description Characters"](q)||Ri.Kanbun(q)||Ri.Katakana(q)&&q!==12540||!(!Ri["Halfwidth and Fullwidth Forms"](q)||q===65288||q===65289||q===65293||q>=65306&&q<=65310||q===65339||q===65341||q===65343||q>=65371&&q<=65503||q===65507||q>=65512&&q<=65519)||!(!Ri["Small Form Variants"](q)||q>=65112&&q<=65118||q>=65123&&q<=65126)||Ri["Vertical Forms"](q)||Ri["Yijing Hexagram Symbols"](q)||new RegExp("\\p{sc=Cans}","u").test(String.fromCodePoint(q))||new RegExp("\\p{sc=Hang}","u").test(String.fromCodePoint(q))||Hs.test(String.fromCodePoint(q)))))}function Il(q){return!(vs(q)||function(D){return!!(Ri["Latin-1 Supplement"](D)&&(D===167||D===169||D===174||D===177||D===188||D===189||D===190||D===215||D===247)||Ri["General Punctuation"](D)&&(D===8214||D===8224||D===8225||D===8240||D===8241||D===8251||D===8252||D===8258||D===8263||D===8264||D===8265||D===8273)||Ri["Letterlike Symbols"](D)||Ri["Number Forms"](D)||Ri["Miscellaneous Technical"](D)&&(D>=8960&&D<=8967||D>=8972&&D<=8991||D>=8996&&D<=9e3||D===9003||D>=9085&&D<=9114||D>=9150&&D<=9165||D===9167||D>=9169&&D<=9179||D>=9186&&D<=9215)||Ri["Control Pictures"](D)&&D!==9251||Ri["Optical Character Recognition"](D)||Ri["Enclosed Alphanumerics"](D)||Ri["Geometric Shapes"](D)||Ri["Miscellaneous Symbols"](D)&&!(D>=9754&&D<=9759)||Ri["Miscellaneous Symbols and Arrows"](D)&&(D>=11026&&D<=11055||D>=11088&&D<=11097||D>=11192&&D<=11243)||Ri["CJK Symbols and Punctuation"](D)||Ri.Katakana(D)||Ri["Private Use Area"](D)||Ri["CJK Compatibility Forms"](D)||Ri["Small Form Variants"](D)||Ri["Halfwidth and Fullwidth Forms"](D)||D===8734||D===8756||D===8757||D>=9984&&D<=10087||D>=10102&&D<=10131||D===65532||D===65533)}(q))}let fl=bs(["Adlm","Arab","Armi","Avst","Chrs","Cprt","Egyp","Elym","Gara","Hatr","Hebr","Hung","Khar","Lydi","Mand","Mani","Mend","Merc","Mero","Narb","Nbat","Nkoo","Orkh","Palm","Phli","Phlp","Phnx","Prti","Rohg","Samr","Sarb","Sogo","Syrc","Thaa","Todr","Yezi"]);function tl(q){return fl.test(String.fromCodePoint(q))}function Ln(q,D){return!(!D&&tl(q)||q>=2304&&q<=3583||q>=3840&&q<=4255||Ri.Khmer(q))}function Ao(q){for(let D of q)if(tl(D.charCodeAt(0)))return!0;return!1}let js=new class{constructor(){this.applyArabicShaping=null,this.processBidirectionalText=null,this.processStyledBidirectionalText=null,this.pluginStatus="unavailable",this.pluginURL=null}setState(q){this.pluginStatus=q.pluginStatus,this.pluginURL=q.pluginURL}getState(){return{pluginStatus:this.pluginStatus,pluginURL:this.pluginURL}}setMethods(q){this.applyArabicShaping=q.applyArabicShaping,this.processBidirectionalText=q.processBidirectionalText,this.processStyledBidirectionalText=q.processStyledBidirectionalText}isParsed(){return this.applyArabicShaping!=null&&this.processBidirectionalText!=null&&this.processStyledBidirectionalText!=null}getPluginURL(){return this.pluginURL}getRTLTextPluginStatus(){return this.pluginStatus}};class Ts{constructor(D,Y){this.zoom=D,Y?(this.now=Y.now,this.fadeDuration=Y.fadeDuration,this.zoomHistory=Y.zoomHistory,this.transition=Y.transition):(this.now=0,this.fadeDuration=0,this.zoomHistory=new en,this.transition={})}isSupportedScript(D){return function(Y,pe){for(let Ce of Y)if(!Ln(Ce.charCodeAt(0),pe))return!1;return!0}(D,js.getRTLTextPluginStatus()==="loaded")}crossFadingFactor(){return this.fadeDuration===0?1:Math.min((this.now-this.zoomHistory.lastIntegerZoomTime)/this.fadeDuration,1)}getCrossfadeParameters(){let D=this.zoom,Y=D-Math.floor(D),pe=this.crossFadingFactor();return D>this.zoomHistory.lastIntegerZoom?{fromScale:2,toScale:1,t:Y+(1-Y)*pe}:{fromScale:.5,toScale:1,t:1-(1-pe)*Y}}}class nu{constructor(D,Y){this.property=D,this.value=Y,this.expression=function(pe,Ce){if(Kf(pe))return new xl(pe,Ce);if(xc(pe)){let Ue=vu(pe,Ce);if(Ue.result==="error")throw new Error(Ue.value.map(Ge=>`${Ge.key}: ${Ge.message}`).join(", "));return Ue.value}{let Ue=pe;return Ce.type==="color"&&typeof pe=="string"?Ue=Ut.parse(pe):Ce.type!=="padding"||typeof pe!="number"&&!Array.isArray(pe)?Ce.type==="variableAnchorOffsetCollection"&&Array.isArray(pe)&&(Ue=Fa.parse(pe)):Ue=Xr.parse(pe),{kind:"constant",evaluate:()=>Ue}}}(Y===void 0?D.specification.default:Y,D.specification)}isDataDriven(){return this.expression.kind==="source"||this.expression.kind==="composite"}possiblyEvaluate(D,Y,pe){return this.property.possiblyEvaluate(this,D,Y,pe)}}class Pu{constructor(D){this.property=D,this.value=new nu(D,void 0)}transitioned(D,Y){return new tf(this.property,this.value,Y,E({},D.transition,this.transition),D.now)}untransitioned(){return new tf(this.property,this.value,null,{},0)}}class ec{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitionablePropertyValues)}getValue(D){return u(this._values[D].value.value)}setValue(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].value=new nu(this._values[D].property,Y===null?void 0:u(Y))}getTransition(D){return u(this._values[D].transition)}setTransition(D,Y){Object.prototype.hasOwnProperty.call(this._values,D)||(this._values[D]=new Pu(this._values[D].property)),this._values[D].transition=u(Y)||void 0}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe);let Ce=this.getTransition(Y);Ce!==void 0&&(D[`${Y}-transition`]=Ce)}return D}transitioned(D,Y){let pe=new yu(this._properties);for(let Ce of Object.keys(this._values))pe._values[Ce]=this._values[Ce].transitioned(D,Y._values[Ce]);return pe}untransitioned(){let D=new yu(this._properties);for(let Y of Object.keys(this._values))D._values[Y]=this._values[Y].untransitioned();return D}}class tf{constructor(D,Y,pe,Ce,Ue){this.property=D,this.value=Y,this.begin=Ue+Ce.delay||0,this.end=this.begin+Ce.duration||0,D.specification.transition&&(Ce.delay||Ce.duration)&&(this.prior=pe)}possiblyEvaluate(D,Y,pe){let Ce=D.now||0,Ue=this.value.possiblyEvaluate(D,Y,pe),Ge=this.prior;if(Ge){if(Ce>this.end)return this.prior=null,Ue;if(this.value.isDataDriven())return this.prior=null,Ue;if(Ce<this.begin)return Ge.possiblyEvaluate(D,Y,pe);{let ut=(Ce-this.begin)/(this.end-this.begin);return this.property.interpolate(Ge.possiblyEvaluate(D,Y,pe),Ue,function(Tt){if(Tt<=0)return 0;if(Tt>=1)return 1;let Ft=Tt*Tt,$t=Ft*Tt;return 4*(Tt<.5?$t:3*(Tt-Ft)+$t-.75)}(ut))}}return Ue}}class yu{constructor(D){this._properties=D,this._values=Object.create(D.defaultTransitioningPropertyValues)}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}hasTransition(){for(let D of Object.keys(this._values))if(this._values[D].prior)return!0;return!1}}class Bc{constructor(D){this._properties=D,this._values=Object.create(D.defaultPropertyValues)}hasValue(D){return this._values[D].value!==void 0}getValue(D){return u(this._values[D].value)}setValue(D,Y){this._values[D]=new nu(this._values[D].property,Y===null?void 0:u(Y))}serialize(){let D={};for(let Y of Object.keys(this._values)){let pe=this.getValue(Y);pe!==void 0&&(D[Y]=pe)}return D}possiblyEvaluate(D,Y,pe){let Ce=new Ac(this._properties);for(let Ue of Object.keys(this._values))Ce._values[Ue]=this._values[Ue].possiblyEvaluate(D,Y,pe);return Ce}}class Iu{constructor(D,Y,pe){this.property=D,this.value=Y,this.parameters=pe}isConstant(){return this.value.kind==="constant"}constantOr(D){return this.value.kind==="constant"?this.value.value:D}evaluate(D,Y,pe,Ce){return this.property.evaluate(this.value,this.parameters,D,Y,pe,Ce)}}class Ac{constructor(D){this._properties=D,this._values=Object.create(D.defaultPossiblyEvaluatedValues)}get(D){return this._values[D]}}class ro{constructor(D){this.specification=D}possiblyEvaluate(D,Y){if(D.isDataDriven())throw new Error("Value should not be data driven");return D.expression.evaluate(Y)}interpolate(D,Y,pe){let Ce=$n[this.specification.type];return Ce?Ce(D,Y,pe):D}}class Po{constructor(D,Y){this.specification=D,this.overrides=Y}possiblyEvaluate(D,Y,pe,Ce){return new Iu(this,D.expression.kind==="constant"||D.expression.kind==="camera"?{kind:"constant",value:D.expression.evaluate(Y,null,{},pe,Ce)}:D.expression,Y)}interpolate(D,Y,pe){if(D.value.kind!=="constant"||Y.value.kind!=="constant")return D;if(D.value.value===void 0||Y.value.value===void 0)return new Iu(this,{kind:"constant",value:void 0},D.parameters);let Ce=$n[this.specification.type];if(Ce){let Ue=Ce(D.value.value,Y.value.value,pe);return new Iu(this,{kind:"constant",value:Ue},D.parameters)}return D}evaluate(D,Y,pe,Ce,Ue,Ge){return D.kind==="constant"?D.value:D.evaluate(Y,pe,Ce,Ue,Ge)}}class Nc extends Po{possiblyEvaluate(D,Y,pe,Ce){if(D.value===void 0)return new Iu(this,{kind:"constant",value:void 0},Y);if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce),Ge=D.property.specification.type==="resolvedImage"&&typeof Ue!="string"?Ue.name:Ue,ut=this._calculate(Ge,Ge,Ge,Y);return new Iu(this,{kind:"constant",value:ut},Y)}if(D.expression.kind==="camera"){let Ue=this._calculate(D.expression.evaluate({zoom:Y.zoom-1}),D.expression.evaluate({zoom:Y.zoom}),D.expression.evaluate({zoom:Y.zoom+1}),Y);return new Iu(this,{kind:"constant",value:Ue},Y)}return new Iu(this,D.expression,Y)}evaluate(D,Y,pe,Ce,Ue,Ge){if(D.kind==="source"){let ut=D.evaluate(Y,pe,Ce,Ue,Ge);return this._calculate(ut,ut,ut,Y)}return D.kind==="composite"?this._calculate(D.evaluate({zoom:Math.floor(Y.zoom)-1},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)},pe,Ce),D.evaluate({zoom:Math.floor(Y.zoom)+1},pe,Ce),Y):D.value}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class hc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){if(D.value!==void 0){if(D.expression.kind==="constant"){let Ue=D.expression.evaluate(Y,null,{},pe,Ce);return this._calculate(Ue,Ue,Ue,Y)}return this._calculate(D.expression.evaluate(new Ts(Math.floor(Y.zoom-1),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom),Y)),D.expression.evaluate(new Ts(Math.floor(Y.zoom+1),Y)),Y)}}_calculate(D,Y,pe,Ce){return Ce.zoom>Ce.zoomHistory.lastIntegerZoom?{from:D,to:Y}:{from:pe,to:Y}}interpolate(D){return D}}class pc{constructor(D){this.specification=D}possiblyEvaluate(D,Y,pe,Ce){return!!D.expression.evaluate(Y,null,{},pe,Ce)}interpolate(){return!1}}class Oe{constructor(D){this.properties=D,this.defaultPropertyValues={},this.defaultTransitionablePropertyValues={},this.defaultTransitioningPropertyValues={},this.defaultPossiblyEvaluatedValues={},this.overridableProperties=[];for(let Y in D){let pe=D[Y];pe.specification.overridable&&this.overridableProperties.push(Y);let Ce=this.defaultPropertyValues[Y]=new nu(pe,void 0),Ue=this.defaultTransitionablePropertyValues[Y]=new Pu(pe);this.defaultTransitioningPropertyValues[Y]=Ue.untransitioned(),this.defaultPossiblyEvaluatedValues[Y]=Ce.possiblyEvaluate({})}}}ti("DataDrivenProperty",Po),ti("DataConstantProperty",ro),ti("CrossFadedDataDrivenProperty",Nc),ti("CrossFadedProperty",hc),ti("ColorRampProperty",pc);let R="-transition";class ae extends ee{constructor(D,Y){if(super(),this.id=D.id,this.type=D.type,this._featureFilter={filter:()=>!0,needGeometry:!1},D.type!=="custom"&&(this.metadata=D.metadata,this.minzoom=D.minzoom,this.maxzoom=D.maxzoom,D.type!=="background"&&(this.source=D.source,this.sourceLayer=D["source-layer"],this.filter=D.filter),Y.layout&&(this._unevaluatedLayout=new Bc(Y.layout)),Y.paint)){this._transitionablePaint=new ec(Y.paint);for(let pe in D.paint)this.setPaintProperty(pe,D.paint[pe],{validate:!1});for(let pe in D.layout)this.setLayoutProperty(pe,D.layout[pe],{validate:!1});this._transitioningPaint=this._transitionablePaint.untransitioned(),this.paint=new Ac(Y.paint)}}getCrossfadeParameters(){return this._crossfadeParameters}getLayoutProperty(D){return D==="visibility"?this.visibility:this._unevaluatedLayout.getValue(D)}setLayoutProperty(D,Y,pe={}){Y!=null&&this._validate(Bi,`layers.${this.id}.layout.${D}`,D,Y,pe)||(D!=="visibility"?this._unevaluatedLayout.setValue(D,Y):this.visibility=Y)}getPaintProperty(D){return D.endsWith(R)?this._transitionablePaint.getTransition(D.slice(0,-11)):this._transitionablePaint.getValue(D)}setPaintProperty(D,Y,pe={}){if(Y!=null&&this._validate(ki,`layers.${this.id}.paint.${D}`,D,Y,pe))return!1;if(D.endsWith(R))return this._transitionablePaint.setTransition(D.slice(0,-11),Y||void 0),!1;{let Ce=this._transitionablePaint._values[D],Ue=Ce.property.specification["property-type"]==="cross-faded-data-driven",Ge=Ce.value.isDataDriven(),ut=Ce.value;this._transitionablePaint.setValue(D,Y),this._handleSpecialPaintPropertyUpdate(D);let Tt=this._transitionablePaint._values[D].value;return Tt.isDataDriven()||Ge||Ue||this._handleOverridablePaintPropertyUpdate(D,ut,Tt)}}_handleSpecialPaintPropertyUpdate(D){}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!1}isHidden(D){return!!(this.minzoom&&D<this.minzoom)||!!(this.maxzoom&&D>=this.maxzoom)||this.visibility==="none"}updateTransitions(D){this._transitioningPaint=this._transitionablePaint.transitioned(D,this._transitioningPaint)}hasTransition(){return this._transitioningPaint.hasTransition()}recalculate(D,Y){D.getCrossfadeParameters&&(this._crossfadeParameters=D.getCrossfadeParameters()),this._unevaluatedLayout&&(this.layout=this._unevaluatedLayout.possiblyEvaluate(D,void 0,Y)),this.paint=this._transitioningPaint.possiblyEvaluate(D,void 0,Y)}serialize(){let D={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&&(D.layout=D.layout||{},D.layout.visibility=this.visibility),d(D,(Y,pe)=>!(Y===void 0||pe==="layout"&&!Object.keys(Y).length||pe==="paint"&&!Object.keys(Y).length))}_validate(D,Y,pe,Ce,Ue={}){return(!Ue||Ue.validate!==!1)&&li(this,D.call(Ka,{key:Y,layerType:this.type,objectKey:pe,value:Ce,styleSpec:ie,style:{glyphs:!0,sprite:!0}}))}is3D(){return!1}isTileClipped(){return!1}hasOffscreenPass(){return!1}resize(){}isStateDependent(){for(let D in this.paint._values){let Y=this.paint.get(D);if(Y instanceof Iu&&Eu(Y.property.specification)&&(Y.value.kind==="source"||Y.value.kind==="composite")&&Y.value.isStateDependent)return!0}return!1}}let we={Int8:Int8Array,Uint8:Uint8Array,Int16:Int16Array,Uint16:Uint16Array,Int32:Int32Array,Uint32:Uint32Array,Float32:Float32Array};class Se{constructor(D,Y){this._structArray=D,this._pos1=Y*this.size,this._pos2=this._pos1/2,this._pos4=this._pos1/4,this._pos8=this._pos1/8}}class De{constructor(){this.isTransferred=!1,this.capacity=-1,this.resize(0)}static serialize(D,Y){return D._trim(),Y&&(D.isTransferred=!0,Y.push(D.arrayBuffer)),{length:D.length,arrayBuffer:D.arrayBuffer}}static deserialize(D){let Y=Object.create(this.prototype);return Y.arrayBuffer=D.arrayBuffer,Y.length=D.length,Y.capacity=D.arrayBuffer.byteLength/Y.bytesPerElement,Y._refreshViews(),Y}_trim(){this.length!==this.capacity&&(this.capacity=this.length,this.arrayBuffer=this.arrayBuffer.slice(0,this.length*this.bytesPerElement),this._refreshViews())}clear(){this.length=0}resize(D){this.reserve(D),this.length=D}reserve(D){if(D>this.capacity){this.capacity=Math.max(D,Math.floor(5*this.capacity),128),this.arrayBuffer=new ArrayBuffer(this.capacity*this.bytesPerElement);let Y=this.uint8;this._refreshViews(),Y&&this.uint8.set(Y)}}_refreshViews(){throw new Error("_refreshViews() must be implemented by each concrete StructArray layout")}}function ft(q,D=1){let Y=0,pe=0;return{members:q.map(Ce=>{let Ue=we[Ce.type].BYTES_PER_ELEMENT,Ge=Y=bt(Y,Math.max(D,Ue)),ut=Ce.components||1;return pe=Math.max(pe,Ue),Y+=Ue*ut,{name:Ce.name,type:Ce.type,components:ut,offset:Ge}}),size:bt(Y,Math.max(pe,D)),alignment:D}}function bt(q,D){return Math.ceil(q/D)*D}class Dt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.int16[Ce+0]=Y,this.int16[Ce+1]=pe,D}}Dt.prototype.bytesPerElement=4,ti("StructArrayLayout2i4",Dt);class Yt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.int16[Ue+0]=Y,this.int16[Ue+1]=pe,this.int16[Ue+2]=Ce,D}}Yt.prototype.bytesPerElement=6,ti("StructArrayLayout3i6",Yt);class cr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.int16[Ge+0]=Y,this.int16[Ge+1]=pe,this.int16[Ge+2]=Ce,this.int16[Ge+3]=Ue,D}}cr.prototype.bytesPerElement=8,ti("StructArrayLayout4i8",cr);class hr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}hr.prototype.bytesPerElement=12,ti("StructArrayLayout2i4i12",hr);class jr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=4*D,Ft=8*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.uint8[Ft+4]=Ce,this.uint8[Ft+5]=Ue,this.uint8[Ft+6]=Ge,this.uint8[Ft+7]=ut,D}}jr.prototype.bytesPerElement=8,ti("StructArrayLayout2i4ub8",jr);class ea extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.float32[Ce+0]=Y,this.float32[Ce+1]=pe,D}}ea.prototype.bytesPerElement=8,ti("StructArrayLayout2f8",ea);class qe extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=this.length;return this.resize(lr+1),this.emplace(lr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=10*D;return this.uint16[Ar+0]=Y,this.uint16[Ar+1]=pe,this.uint16[Ar+2]=Ce,this.uint16[Ar+3]=Ue,this.uint16[Ar+4]=Ge,this.uint16[Ar+5]=ut,this.uint16[Ar+6]=Tt,this.uint16[Ar+7]=Ft,this.uint16[Ar+8]=$t,this.uint16[Ar+9]=lr,D}}qe.prototype.bytesPerElement=20,ti("StructArrayLayout10ui20",qe);class Je extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=this.length;return this.resize(zr+1),this.emplace(zr,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr){let Kr=12*D;return this.int16[Kr+0]=Y,this.int16[Kr+1]=pe,this.int16[Kr+2]=Ce,this.int16[Kr+3]=Ue,this.uint16[Kr+4]=Ge,this.uint16[Kr+5]=ut,this.uint16[Kr+6]=Tt,this.uint16[Kr+7]=Ft,this.int16[Kr+8]=$t,this.int16[Kr+9]=lr,this.int16[Kr+10]=Ar,this.int16[Kr+11]=zr,D}}Je.prototype.bytesPerElement=24,ti("StructArrayLayout4i4ui4i24",Je);class ot extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.float32[Ue+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ot.prototype.bytesPerElement=12,ti("StructArrayLayout3f12",ot);class ht extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint32[1*D+0]=Y,D}}ht.prototype.bytesPerElement=4,ti("StructArrayLayout1ul4",ht);class At extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft){let $t=this.length;return this.resize($t+1),this.emplace($t,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=10*D,Ar=5*D;return this.int16[lr+0]=Y,this.int16[lr+1]=pe,this.int16[lr+2]=Ce,this.int16[lr+3]=Ue,this.int16[lr+4]=Ge,this.int16[lr+5]=ut,this.uint32[Ar+3]=Tt,this.uint16[lr+8]=Ft,this.uint16[lr+9]=$t,D}}At.prototype.bytesPerElement=20,ti("StructArrayLayout6i1ul2ui20",At);class _t extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=6*D;return this.int16[Tt+0]=Y,this.int16[Tt+1]=pe,this.int16[Tt+2]=Ce,this.int16[Tt+3]=Ue,this.int16[Tt+4]=Ge,this.int16[Tt+5]=ut,D}}_t.prototype.bytesPerElement=12,ti("StructArrayLayout2i2i2i12",_t);class Pt extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue){let Ge=this.length;return this.resize(Ge+1),this.emplace(Ge,D,Y,pe,Ce,Ue)}emplace(D,Y,pe,Ce,Ue,Ge){let ut=4*D,Tt=8*D;return this.float32[ut+0]=Y,this.float32[ut+1]=pe,this.float32[ut+2]=Ce,this.int16[Tt+6]=Ue,this.int16[Tt+7]=Ge,D}}Pt.prototype.bytesPerElement=16,ti("StructArrayLayout2f1f2i16",Pt);class er extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge){let ut=this.length;return this.resize(ut+1),this.emplace(ut,D,Y,pe,Ce,Ue,Ge)}emplace(D,Y,pe,Ce,Ue,Ge,ut){let Tt=16*D,Ft=4*D,$t=8*D;return this.uint8[Tt+0]=Y,this.uint8[Tt+1]=pe,this.float32[Ft+1]=Ce,this.float32[Ft+2]=Ue,this.int16[$t+6]=Ge,this.int16[$t+7]=ut,D}}er.prototype.bytesPerElement=16,ti("StructArrayLayout2ub2f2i16",er);class nr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[Ue+0]=Y,this.uint16[Ue+1]=pe,this.uint16[Ue+2]=Ce,D}}nr.prototype.bytesPerElement=6,ti("StructArrayLayout3ui6",nr);class pr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja){let gi=this.length;return this.resize(gi+1),this.emplace(gi,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi){let ei=24*D,hi=12*D,Ei=48*D;return this.int16[ei+0]=Y,this.int16[ei+1]=pe,this.uint16[ei+2]=Ce,this.uint16[ei+3]=Ue,this.uint32[hi+2]=Ge,this.uint32[hi+3]=ut,this.uint32[hi+4]=Tt,this.uint16[ei+10]=Ft,this.uint16[ei+11]=$t,this.uint16[ei+12]=lr,this.float32[hi+7]=Ar,this.float32[hi+8]=zr,this.uint8[Ei+36]=Kr,this.uint8[Ei+37]=la,this.uint8[Ei+38]=za,this.uint32[hi+10]=ja,this.int16[ei+22]=gi,D}}pr.prototype.bytesPerElement=48,ti("StructArrayLayout2i2ui3ul3ui2f3ub1ul1i48",pr);class Sr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.int16=new Int16Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo){let xo=this.length;return this.resize(xo+1),this.emplace(xo,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo)}emplace(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la,za,ja,gi,ei,hi,Ei,En,fo,ss,eo,vn,Uo,Mo,xo){let Yi=32*D,Ko=16*D;return this.int16[Yi+0]=Y,this.int16[Yi+1]=pe,this.int16[Yi+2]=Ce,this.int16[Yi+3]=Ue,this.int16[Yi+4]=Ge,this.int16[Yi+5]=ut,this.int16[Yi+6]=Tt,this.int16[Yi+7]=Ft,this.uint16[Yi+8]=$t,this.uint16[Yi+9]=lr,this.uint16[Yi+10]=Ar,this.uint16[Yi+11]=zr,this.uint16[Yi+12]=Kr,this.uint16[Yi+13]=la,this.uint16[Yi+14]=za,this.uint16[Yi+15]=ja,this.uint16[Yi+16]=gi,this.uint16[Yi+17]=ei,this.uint16[Yi+18]=hi,this.uint16[Yi+19]=Ei,this.uint16[Yi+20]=En,this.uint16[Yi+21]=fo,this.uint16[Yi+22]=ss,this.uint32[Ko+12]=eo,this.float32[Ko+13]=vn,this.float32[Ko+14]=Uo,this.uint16[Yi+30]=Mo,this.uint16[Yi+31]=xo,D}}Sr.prototype.bytesPerElement=64,ti("StructArrayLayout8i15ui1ul2f2ui64",Sr);class Wr extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.float32[1*D+0]=Y,D}}Wr.prototype.bytesPerElement=4,ti("StructArrayLayout1f4",Wr);class ha extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=3*D;return this.uint16[6*D+0]=Y,this.float32[Ue+1]=pe,this.float32[Ue+2]=Ce,D}}ha.prototype.bytesPerElement=12,ti("StructArrayLayout1ui2f12",ha);class ga extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint32=new Uint32Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y,pe){let Ce=this.length;return this.resize(Ce+1),this.emplace(Ce,D,Y,pe)}emplace(D,Y,pe,Ce){let Ue=4*D;return this.uint32[2*D+0]=Y,this.uint16[Ue+2]=pe,this.uint16[Ue+3]=Ce,D}}ga.prototype.bytesPerElement=8,ti("StructArrayLayout1ul2ui8",ga);class Pa extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D,Y){let pe=this.length;return this.resize(pe+1),this.emplace(pe,D,Y)}emplace(D,Y,pe){let Ce=2*D;return this.uint16[Ce+0]=Y,this.uint16[Ce+1]=pe,D}}Pa.prototype.bytesPerElement=4,ti("StructArrayLayout2ui4",Pa);class Ja extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.uint16=new Uint16Array(this.arrayBuffer)}emplaceBack(D){let Y=this.length;return this.resize(Y+1),this.emplace(Y,D)}emplace(D,Y){return this.uint16[1*D+0]=Y,D}}Ja.prototype.bytesPerElement=2,ti("StructArrayLayout1ui2",Ja);class di extends De{_refreshViews(){this.uint8=new Uint8Array(this.arrayBuffer),this.float32=new Float32Array(this.arrayBuffer)}emplaceBack(D,Y,pe,Ce){let Ue=this.length;return this.resize(Ue+1),this.emplace(Ue,D,Y,pe,Ce)}emplace(D,Y,pe,Ce,Ue){let Ge=4*D;return this.float32[Ge+0]=Y,this.float32[Ge+1]=pe,this.float32[Ge+2]=Ce,this.float32[Ge+3]=Ue,D}}di.prototype.bytesPerElement=16,ti("StructArrayLayout4f16",di);class pi extends Se{get anchorPointX(){return this._structArray.int16[this._pos2+0]}get anchorPointY(){return this._structArray.int16[this._pos2+1]}get x1(){return this._structArray.int16[this._pos2+2]}get y1(){return this._structArray.int16[this._pos2+3]}get x2(){return this._structArray.int16[this._pos2+4]}get y2(){return this._structArray.int16[this._pos2+5]}get featureIndex(){return this._structArray.uint32[this._pos4+3]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+8]}get bucketIndex(){return this._structArray.uint16[this._pos2+9]}get anchorPoint(){return new i(this.anchorPointX,this.anchorPointY)}}pi.prototype.size=20;class Ci extends At{get(D){return new pi(this,D)}}ti("CollisionBoxArray",Ci);class $i extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get glyphStartIndex(){return this._structArray.uint16[this._pos2+2]}get numGlyphs(){return this._structArray.uint16[this._pos2+3]}get vertexStartIndex(){return this._structArray.uint32[this._pos4+2]}get lineStartIndex(){return this._structArray.uint32[this._pos4+3]}get lineLength(){return this._structArray.uint32[this._pos4+4]}get segment(){return this._structArray.uint16[this._pos2+10]}get lowerSize(){return this._structArray.uint16[this._pos2+11]}get upperSize(){return this._structArray.uint16[this._pos2+12]}get lineOffsetX(){return this._structArray.float32[this._pos4+7]}get lineOffsetY(){return this._structArray.float32[this._pos4+8]}get writingMode(){return this._structArray.uint8[this._pos1+36]}get placedOrientation(){return this._structArray.uint8[this._pos1+37]}set placedOrientation(D){this._structArray.uint8[this._pos1+37]=D}get hidden(){return this._structArray.uint8[this._pos1+38]}set hidden(D){this._structArray.uint8[this._pos1+38]=D}get crossTileID(){return this._structArray.uint32[this._pos4+10]}set crossTileID(D){this._structArray.uint32[this._pos4+10]=D}get associatedIconIndex(){return this._structArray.int16[this._pos2+22]}}$i.prototype.size=48;class Bn extends pr{get(D){return new $i(this,D)}}ti("PlacedSymbolArray",Bn);class Sn extends Se{get anchorX(){return this._structArray.int16[this._pos2+0]}get anchorY(){return this._structArray.int16[this._pos2+1]}get rightJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+2]}get centerJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+3]}get leftJustifiedTextSymbolIndex(){return this._structArray.int16[this._pos2+4]}get verticalPlacedTextSymbolIndex(){return this._structArray.int16[this._pos2+5]}get placedIconSymbolIndex(){return this._structArray.int16[this._pos2+6]}get verticalPlacedIconSymbolIndex(){return this._structArray.int16[this._pos2+7]}get key(){return this._structArray.uint16[this._pos2+8]}get textBoxStartIndex(){return this._structArray.uint16[this._pos2+9]}get textBoxEndIndex(){return this._structArray.uint16[this._pos2+10]}get verticalTextBoxStartIndex(){return this._structArray.uint16[this._pos2+11]}get verticalTextBoxEndIndex(){return this._structArray.uint16[this._pos2+12]}get iconBoxStartIndex(){return this._structArray.uint16[this._pos2+13]}get iconBoxEndIndex(){return this._structArray.uint16[this._pos2+14]}get verticalIconBoxStartIndex(){return this._structArray.uint16[this._pos2+15]}get verticalIconBoxEndIndex(){return this._structArray.uint16[this._pos2+16]}get featureIndex(){return this._structArray.uint16[this._pos2+17]}get numHorizontalGlyphVertices(){return this._structArray.uint16[this._pos2+18]}get numVerticalGlyphVertices(){return this._structArray.uint16[this._pos2+19]}get numIconVertices(){return this._structArray.uint16[this._pos2+20]}get numVerticalIconVertices(){return this._structArray.uint16[this._pos2+21]}get useRuntimeCollisionCircles(){return this._structArray.uint16[this._pos2+22]}get crossTileID(){return this._structArray.uint32[this._pos4+12]}set crossTileID(D){this._structArray.uint32[this._pos4+12]=D}get textBoxScale(){return this._structArray.float32[this._pos4+13]}get collisionCircleDiameter(){return this._structArray.float32[this._pos4+14]}get textAnchorOffsetStartIndex(){return this._structArray.uint16[this._pos2+30]}get textAnchorOffsetEndIndex(){return this._structArray.uint16[this._pos2+31]}}Sn.prototype.size=64;class ho extends Sr{get(D){return new Sn(this,D)}}ti("SymbolInstanceArray",ho);class ts extends Wr{getoffsetX(D){return this.float32[1*D+0]}}ti("GlyphOffsetArray",ts);class yo extends Yt{getx(D){return this.int16[3*D+0]}gety(D){return this.int16[3*D+1]}gettileUnitDistanceFromAnchor(D){return this.int16[3*D+2]}}ti("SymbolLineVertexArray",yo);class Vo extends Se{get textAnchor(){return this._structArray.uint16[this._pos2+0]}get textOffset0(){return this._structArray.float32[this._pos4+1]}get textOffset1(){return this._structArray.float32[this._pos4+2]}}Vo.prototype.size=12;class ls extends ha{get(D){return new Vo(this,D)}}ti("TextAnchorOffsetArray",ls);class rl extends Se{get featureIndex(){return this._structArray.uint32[this._pos4+0]}get sourceLayerIndex(){return this._structArray.uint16[this._pos2+2]}get bucketIndex(){return this._structArray.uint16[this._pos2+3]}}rl.prototype.size=8;class Ys extends ga{get(D){return new rl(this,D)}}ti("FeatureIndexArray",Ys);class Zo extends Dt{}class Go extends Dt{}class Rl extends Dt{}class Xl extends hr{}class qu extends jr{}class fu extends ea{}class bl extends qe{}class ou extends Je{}class Sc extends ot{}class ql extends ht{}class Hl extends _t{}class de extends er{}class Re extends nr{}class $e extends Pa{}let pt=ft([{name:"a_pos",components:2,type:"Int16"}],4),{members:vt}=pt;class wt{constructor(D=[]){this.segments=D}prepareSegment(D,Y,pe,Ce){let Ue=this.segments[this.segments.length-1];return D>wt.MAX_VERTEX_ARRAY_LENGTH&&f(`Max vertices per segment is ${wt.MAX_VERTEX_ARRAY_LENGTH}: bucket requested ${D}`),(!Ue||Ue.vertexLength+D>wt.MAX_VERTEX_ARRAY_LENGTH||Ue.sortKey!==Ce)&&(Ue={vertexOffset:Y.length,primitiveOffset:pe.length,vertexLength:0,primitiveLength:0},Ce!==void 0&&(Ue.sortKey=Ce),this.segments.push(Ue)),Ue}get(){return this.segments}destroy(){for(let D of this.segments)for(let Y in D.vaos)D.vaos[Y].destroy()}static simpleSegment(D,Y,pe,Ce){return new wt([{vertexOffset:D,primitiveOffset:Y,vertexLength:pe,primitiveLength:Ce,vaos:{},sortKey:0}])}}function Jt(q,D){return 256*(q=w(Math.floor(q),0,255))+w(Math.floor(D),0,255)}wt.MAX_VERTEX_ARRAY_LENGTH=Math.pow(2,16)-1,ti("SegmentVector",wt);let Rt=ft([{name:"a_pattern_from",components:4,type:"Uint16"},{name:"a_pattern_to",components:4,type:"Uint16"},{name:"a_pixel_ratio_from",components:1,type:"Uint16"},{name:"a_pixel_ratio_to",components:1,type:"Uint16"}]);var or={exports:{}},Dr={exports:{}};Dr.exports=function(q,D){var Y,pe,Ce,Ue,Ge,ut,Tt,Ft;for(pe=q.length-(Y=3&q.length),Ce=D,Ge=3432918353,ut=461845907,Ft=0;Ft<pe;)Tt=255&q.charCodeAt(Ft)|(255&q.charCodeAt(++Ft))<<8|(255&q.charCodeAt(++Ft))<<16|(255&q.charCodeAt(++Ft))<<24,++Ft,Ce=27492+(65535&(Ue=5*(65535&(Ce=(Ce^=Tt=(65535&(Tt=(Tt=(65535&Tt)*Ge+(((Tt>>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295)<<13|Ce>>>19))+((5*(Ce>>>16)&65535)<<16)&4294967295))+((58964+(Ue>>>16)&65535)<<16);switch(Tt=0,Y){case 3:Tt^=(255&q.charCodeAt(Ft+2))<<16;case 2:Tt^=(255&q.charCodeAt(Ft+1))<<8;case 1:Ce^=Tt=(65535&(Tt=(Tt=(65535&(Tt^=255&q.charCodeAt(Ft)))*Ge+(((Tt>>>16)*Ge&65535)<<16)&4294967295)<<15|Tt>>>17))*ut+(((Tt>>>16)*ut&65535)<<16)&4294967295}return Ce^=q.length,Ce=2246822507*(65535&(Ce^=Ce>>>16))+((2246822507*(Ce>>>16)&65535)<<16)&4294967295,Ce=3266489909*(65535&(Ce^=Ce>>>13))+((3266489909*(Ce>>>16)&65535)<<16)&4294967295,(Ce^=Ce>>>16)>>>0};var Or=Dr.exports,va={exports:{}};va.exports=function(q,D){for(var Y,pe=q.length,Ce=D^pe,Ue=0;pe>=4;)Y=1540483477*(65535&(Y=255&q.charCodeAt(Ue)|(255&q.charCodeAt(++Ue))<<8|(255&q.charCodeAt(++Ue))<<16|(255&q.charCodeAt(++Ue))<<24))+((1540483477*(Y>>>16)&65535)<<16),Ce=1540483477*(65535&Ce)+((1540483477*(Ce>>>16)&65535)<<16)^(Y=1540483477*(65535&(Y^=Y>>>24))+((1540483477*(Y>>>16)&65535)<<16)),pe-=4,++Ue;switch(pe){case 3:Ce^=(255&q.charCodeAt(Ue+2))<<16;case 2:Ce^=(255&q.charCodeAt(Ue+1))<<8;case 1:Ce=1540483477*(65535&(Ce^=255&q.charCodeAt(Ue)))+((1540483477*(Ce>>>16)&65535)<<16)}return Ce=1540483477*(65535&(Ce^=Ce>>>13))+((1540483477*(Ce>>>16)&65535)<<16),(Ce^=Ce>>>15)>>>0};var fa=Or,Va=va.exports;or.exports=fa,or.exports.murmur3=fa,or.exports.murmur2=Va;var Xa=r(or.exports);class _a{constructor(){this.ids=[],this.positions=[],this.indexed=!1}add(D,Y,pe,Ce){this.ids.push(Ra(D)),this.positions.push(Y,pe,Ce)}getPositions(D){if(!this.indexed)throw new Error("Trying to get index, but feature positions are not indexed");let Y=Ra(D),pe=0,Ce=this.ids.length-1;for(;pe<Ce;){let Ge=pe+Ce>>1;this.ids[Ge]>=Y?Ce=Ge:pe=Ge+1}let Ue=[];for(;this.ids[pe]===Y;)Ue.push({index:this.positions[3*pe],start:this.positions[3*pe+1],end:this.positions[3*pe+2]}),pe++;return Ue}static serialize(D,Y){let pe=new Float64Array(D.ids),Ce=new Uint32Array(D.positions);return Na(pe,Ce,0,pe.length-1),Y&&Y.push(pe.buffer,Ce.buffer),{ids:pe,positions:Ce}}static deserialize(D){let Y=new _a;return Y.ids=D.ids,Y.positions=D.positions,Y.indexed=!0,Y}}function Ra(q){let D=+q;return!isNaN(D)&&D<=Number.MAX_SAFE_INTEGER?D:Xa(String(q))}function Na(q,D,Y,pe){for(;Y<pe;){let Ce=q[Y+pe>>1],Ue=Y-1,Ge=pe+1;for(;;){do Ue++;while(q[Ue]<Ce);do Ge--;while(q[Ge]>Ce);if(Ue>=Ge)break;Qa(q,Ue,Ge),Qa(D,3*Ue,3*Ge),Qa(D,3*Ue+1,3*Ge+1),Qa(D,3*Ue+2,3*Ge+2)}Ge-Y<pe-Ge?(Na(q,D,Y,Ge),Y=Ge+1):(Na(q,D,Ge+1,pe),pe=Ge)}}function Qa(q,D,Y){let pe=q[D];q[D]=q[Y],q[Y]=pe}ti("FeaturePositionMap",_a);class Ya{constructor(D,Y){this.gl=D.gl,this.location=Y}}class Da extends Ya{constructor(D,Y){super(D,Y),this.current=0}set(D){this.current!==D&&(this.current=D,this.gl.uniform1f(this.location,D))}}class zi extends Ya{constructor(D,Y){super(D,Y),this.current=[0,0,0,0]}set(D){D[0]===this.current[0]&&D[1]===this.current[1]&&D[2]===this.current[2]&&D[3]===this.current[3]||(this.current=D,this.gl.uniform4f(this.location,D[0],D[1],D[2],D[3]))}}class Ni extends Ya{constructor(D,Y){super(D,Y),this.current=Ut.transparent}set(D){D.r===this.current.r&&D.g===this.current.g&&D.b===this.current.b&&D.a===this.current.a||(this.current=D,this.gl.uniform4f(this.location,D.r,D.g,D.b,D.a))}}let Qi=new Float32Array(16);function hn(q){return[Jt(255*q.r,255*q.g),Jt(255*q.b,255*q.a)]}class Un{constructor(D,Y,pe){this.value=D,this.uniformNames=Y.map(Ce=>`u_${Ce}`),this.type=pe}setUniform(D,Y,pe){D.set(pe.constantOr(this.value))}getBinding(D,Y,pe){return this.type==="color"?new Ni(D,Y):new Da(D,Y)}}class Vn{constructor(D,Y){this.uniformNames=Y.map(pe=>`u_${pe}`),this.patternFrom=null,this.patternTo=null,this.pixelRatioFrom=1,this.pixelRatioTo=1}setConstantPatternPositions(D,Y){this.pixelRatioFrom=Y.pixelRatio,this.pixelRatioTo=D.pixelRatio,this.patternFrom=Y.tlbr,this.patternTo=D.tlbr}setUniform(D,Y,pe,Ce){let Ue=Ce==="u_pattern_to"?this.patternTo:Ce==="u_pattern_from"?this.patternFrom:Ce==="u_pixel_ratio_to"?this.pixelRatioTo:Ce==="u_pixel_ratio_from"?this.pixelRatioFrom:null;Ue&&D.set(Ue)}getBinding(D,Y,pe){return pe.substr(0,9)==="u_pattern"?new zi(D,Y):new Da(D,Y)}}class No{constructor(D,Y,pe,Ce){this.expression=D,this.type=pe,this.maxValue=0,this.paintVertexAttributes=Y.map(Ue=>({name:`a_${Ue}`,type:"Float32",components:pe==="color"?2:1,offset:0})),this.paintVertexArray=new Ce}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.paintVertexArray.length,ut=this.expression.evaluate(new Ts(0),Y,{},Ce,[],Ue);this.paintVertexArray.resize(D),this._setPaintValue(Ge,D,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:0},pe,Ce);this._setPaintValue(D,Y,Ue)}_setPaintValue(D,Y,pe){if(this.type==="color"){let Ce=hn(pe);for(let Ue=D;Ue<Y;Ue++)this.paintVertexArray.emplace(Ue,Ce[0],Ce[1])}else{for(let Ce=D;Ce<Y;Ce++)this.paintVertexArray.emplace(Ce,pe);this.maxValue=Math.max(this.maxValue,Math.abs(pe))}}upload(D){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=D.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}}class Gn{constructor(D,Y,pe,Ce,Ue,Ge){this.expression=D,this.uniformNames=Y.map(ut=>`u_${ut}_t`),this.type=pe,this.useIntegerZoom=Ce,this.zoom=Ue,this.maxValue=0,this.paintVertexAttributes=Y.map(ut=>({name:`a_${ut}`,type:"Float32",components:pe==="color"?4:2,offset:0})),this.paintVertexArray=new Ge}populatePaintArray(D,Y,pe,Ce,Ue){let Ge=this.expression.evaluate(new Ts(this.zoom),Y,{},Ce,[],Ue),ut=this.expression.evaluate(new Ts(this.zoom+1),Y,{},Ce,[],Ue),Tt=this.paintVertexArray.length;this.paintVertexArray.resize(D),this._setPaintValue(Tt,D,Ge,ut)}updatePaintArray(D,Y,pe,Ce){let Ue=this.expression.evaluate({zoom:this.zoom},pe,Ce),Ge=this.expression.evaluate({zoom:this.zoom+1},pe,Ce);this._setPaintValue(D,Y,Ue,Ge)}_setPaintValue(D,Y,pe,Ce){if(this.type==="color"){let Ue=hn(pe),Ge=hn(Ce);for(let ut=D;ut<Y;ut++)this.paintVertexArray.emplace(ut,Ue[0],Ue[1],Ge[0],Ge[1])}else{for(let Ue=D;Ue<Y;Ue++)this.paintVertexArray.emplace(Ue,pe,Ce);this.maxValue=Math.max(this.maxValue,Math.abs(pe),Math.abs(Ce))}}upload(D){this.paintVertexArray&&this.paintVertexArray.arrayBuffer&&(this.paintVertexBuffer&&this.paintVertexBuffer.buffer?this.paintVertexBuffer.updateData(this.paintVertexArray):this.paintVertexBuffer=D.createVertexBuffer(this.paintVertexArray,this.paintVertexAttributes,this.expression.isStateDependent))}destroy(){this.paintVertexBuffer&&this.paintVertexBuffer.destroy()}setUniform(D,Y){let pe=this.useIntegerZoom?Math.floor(Y.zoom):Y.zoom,Ce=w(this.expression.interpolationFactor(pe,this.zoom,this.zoom+1),0,1);D.set(Ce)}getBinding(D,Y,pe){return new Da(D,Y)}}class Fo{constructor(D,Y,pe,Ce,Ue,Ge){this.expression=D,this.type=Y,this.useIntegerZoom=pe,this.zoom=Ce,this.layerId=Ge,this.zoomInPaintVertexArray=new Ue,this.zoomOutPaintVertexArray=new Ue}populatePaintArray(D,Y,pe){let Ce=this.zoomInPaintVertexArray.length;this.zoomInPaintVertexArray.resize(D),this.zoomOutPaintVertexArray.resize(D),this._setPaintValues(Ce,D,Y.patterns&&Y.patterns[this.layerId],pe)}updatePaintArray(D,Y,pe,Ce,Ue){this._setPaintValues(D,Y,pe.patterns&&pe.patterns[this.layerId],Ue)}_setPaintValues(D,Y,pe,Ce){if(!Ce||!pe)return;let{min:Ue,mid:Ge,max:ut}=pe,Tt=Ce[Ue],Ft=Ce[Ge],$t=Ce[ut];if(Tt&&Ft&&$t)for(let lr=D;lr<Y;lr++)this.zoomInPaintVertexArray.emplace(lr,Ft.tl[0],Ft.tl[1],Ft.br[0],Ft.br[1],Tt.tl[0],Tt.tl[1],Tt.br[0],Tt.br[1],Ft.pixelRatio,Tt.pixelRatio),this.zoomOutPaintVertexArray.emplace(lr,Ft.tl[0],Ft.tl[1],Ft.br[0],Ft.br[1],$t.tl[0],$t.tl[1],$t.br[0],$t.br[1],Ft.pixelRatio,$t.pixelRatio)}upload(D){this.zoomInPaintVertexArray&&this.zoomInPaintVertexArray.arrayBuffer&&this.zoomOutPaintVertexArray&&this.zoomOutPaintVertexArray.arrayBuffer&&(this.zoomInPaintVertexBuffer=D.createVertexBuffer(this.zoomInPaintVertexArray,Rt.members,this.expression.isStateDependent),this.zoomOutPaintVertexBuffer=D.createVertexBuffer(this.zoomOutPaintVertexArray,Rt.members,this.expression.isStateDependent))}destroy(){this.zoomOutPaintVertexBuffer&&this.zoomOutPaintVertexBuffer.destroy(),this.zoomInPaintVertexBuffer&&this.zoomInPaintVertexBuffer.destroy()}}class Ks{constructor(D,Y,pe){this.binders={},this._buffers=[];let Ce=[];for(let Ue in D.paint._values){if(!pe(Ue))continue;let Ge=D.paint.get(Ue);if(!(Ge instanceof Iu&&Eu(Ge.property.specification)))continue;let ut=sl(Ue,D.type),Tt=Ge.value,Ft=Ge.property.specification.type,$t=Ge.property.useIntegerZoom,lr=Ge.property.specification["property-type"],Ar=lr==="cross-faded"||lr==="cross-faded-data-driven";if(Tt.kind==="constant")this.binders[Ue]=Ar?new Vn(Tt.value,ut):new Un(Tt.value,ut,Ft),Ce.push(`/u_${Ue}`);else if(Tt.kind==="source"||Ar){let zr=Vi(Ue,Ft,"source");this.binders[Ue]=Ar?new Fo(Tt,Ft,$t,Y,zr,D.id):new No(Tt,ut,Ft,zr),Ce.push(`/a_${Ue}`)}else{let zr=Vi(Ue,Ft,"composite");this.binders[Ue]=new Gn(Tt,ut,Ft,$t,Y,zr),Ce.push(`/z_${Ue}`)}}this.cacheKey=Ce.sort().join("")}getMaxValue(D){let Y=this.binders[D];return Y instanceof No||Y instanceof Gn?Y.maxValue:0}populatePaintArrays(D,Y,pe,Ce,Ue){for(let Ge in this.binders){let ut=this.binders[Ge];(ut instanceof No||ut instanceof Gn||ut instanceof Fo)&&ut.populatePaintArray(D,Y,pe,Ce,Ue)}}setConstantPatternPositions(D,Y){for(let pe in this.binders){let Ce=this.binders[pe];Ce instanceof Vn&&Ce.setConstantPatternPositions(D,Y)}}updatePaintArrays(D,Y,pe,Ce,Ue){let Ge=!1;for(let ut in D){let Tt=Y.getPositions(ut);for(let Ft of Tt){let $t=pe.feature(Ft.index);for(let lr in this.binders){let Ar=this.binders[lr];if((Ar instanceof No||Ar instanceof Gn||Ar instanceof Fo)&&Ar.expression.isStateDependent===!0){let zr=Ce.paint.get(lr);Ar.expression=zr.value,Ar.updatePaintArray(Ft.start,Ft.end,$t,D[ut],Ue),Ge=!0}}}}return Ge}defines(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];(pe instanceof Un||pe instanceof Vn)&&D.push(...pe.uniformNames.map(Ce=>`#define HAS_UNIFORM_${Ce}`))}return D}getBinderAttributes(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];if(pe instanceof No||pe instanceof Gn)for(let Ce=0;Ce<pe.paintVertexAttributes.length;Ce++)D.push(pe.paintVertexAttributes[Ce].name);else if(pe instanceof Fo)for(let Ce=0;Ce<Rt.members.length;Ce++)D.push(Rt.members[Ce].name)}return D}getBinderUniforms(){let D=[];for(let Y in this.binders){let pe=this.binders[Y];if(pe instanceof Un||pe instanceof Vn||pe instanceof Gn)for(let Ce of pe.uniformNames)D.push(Ce)}return D}getPaintVertexBuffers(){return this._buffers}getUniforms(D,Y){let pe=[];for(let Ce in this.binders){let Ue=this.binders[Ce];if(Ue instanceof Un||Ue instanceof Vn||Ue instanceof Gn){for(let Ge of Ue.uniformNames)if(Y[Ge]){let ut=Ue.getBinding(D,Y[Ge],Ge);pe.push({name:Ge,property:Ce,binding:ut})}}}return pe}setUniforms(D,Y,pe,Ce){for(let{name:Ue,property:Ge,binding:ut}of Y)this.binders[Ge].setUniform(ut,Ce,pe.get(Ge),Ue)}updatePaintBuffers(D){this._buffers=[];for(let Y in this.binders){let pe=this.binders[Y];if(D&&pe instanceof Fo){let Ce=D.fromScale===2?pe.zoomInPaintVertexBuffer:pe.zoomOutPaintVertexBuffer;Ce&&this._buffers.push(Ce)}else(pe instanceof No||pe instanceof Gn)&&pe.paintVertexBuffer&&this._buffers.push(pe.paintVertexBuffer)}}upload(D){for(let Y in this.binders){let pe=this.binders[Y];(pe instanceof No||pe instanceof Gn||pe instanceof Fo)&&pe.upload(D)}this.updatePaintBuffers()}destroy(){for(let D in this.binders){let Y=this.binders[D];(Y instanceof No||Y instanceof Gn||Y instanceof Fo)&&Y.destroy()}}}class Gs{constructor(D,Y,pe=()=>!0){this.programConfigurations={};for(let Ce of D)this.programConfigurations[Ce.id]=new Ks(Ce,Y,pe);this.needsUpload=!1,this._featureMap=new _a,this._bufferOffset=0}populatePaintArrays(D,Y,pe,Ce,Ue,Ge){for(let ut in this.programConfigurations)this.programConfigurations[ut].populatePaintArrays(D,Y,Ce,Ue,Ge);Y.id!==void 0&&this._featureMap.add(Y.id,pe,this._bufferOffset,D),this._bufferOffset=D,this.needsUpload=!0}updatePaintArrays(D,Y,pe,Ce){for(let Ue of pe)this.needsUpload=this.programConfigurations[Ue.id].updatePaintArrays(D,this._featureMap,Y,Ue,Ce)||this.needsUpload}get(D){return this.programConfigurations[D]}upload(D){if(this.needsUpload){for(let Y in this.programConfigurations)this.programConfigurations[Y].upload(D);this.needsUpload=!1}}destroy(){for(let D in this.programConfigurations)this.programConfigurations[D].destroy()}}function sl(q,D){return{"text-opacity":["opacity"],"icon-opacity":["opacity"],"text-color":["fill_color"],"icon-color":["fill_color"],"text-halo-color":["halo_color"],"icon-halo-color":["halo_color"],"text-halo-blur":["halo_blur"],"icon-halo-blur":["halo_blur"],"text-halo-width":["halo_width"],"icon-halo-width":["halo_width"],"line-gap-width":["gapwidth"],"line-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"],"fill-extrusion-pattern":["pattern_to","pattern_from","pixel_ratio_to","pixel_ratio_from"]}[q]||[q.replace(`${D}-`,"").replace(/-/g,"_")]}function Vi(q,D,Y){let pe={color:{source:ea,composite:di},number:{source:Wr,composite:ea}},Ce=function(Ue){return{"line-pattern":{source:bl,composite:bl},"fill-pattern":{source:bl,composite:bl},"fill-extrusion-pattern":{source:bl,composite:bl}}[Ue]}(q);return Ce&&Ce[Y]||pe[D][Y]}ti("ConstantBinder",Un),ti("CrossFadedConstantBinder",Vn),ti("SourceExpressionBinder",No),ti("CrossFadedCompositeBinder",Fo),ti("CompositeExpressionBinder",Gn),ti("ProgramConfiguration",Ks,{omit:["_buffers"]}),ti("ProgramConfigurationSet",Gs);let ao=8192,ns=Math.pow(2,14)-1,hs=-ns-1;function hl(q){let D=ao/q.extent,Y=q.loadGeometry();for(let pe=0;pe<Y.length;pe++){let Ce=Y[pe];for(let Ue=0;Ue<Ce.length;Ue++){let Ge=Ce[Ue],ut=Math.round(Ge.x*D),Tt=Math.round(Ge.y*D);Ge.x=w(ut,hs,ns),Ge.y=w(Tt,hs,ns),(ut<Ge.x||ut>Ge.x+1||Tt<Ge.y||Tt>Ge.y+1)&&f("Geometry exceeds allowed extent, reduce your vector tile buffer size")}}return Y}function Dl(q,D){return{type:q.type,id:q.id,properties:q.properties,geometry:D?hl(q):[]}}function hu(q,D,Y,pe,Ce){q.emplaceBack(2*D+(pe+1)/2,2*Y+(Ce+1)/2)}class Ll{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Go,this.indexArray=new Re,this.segments=new wt,this.programConfigurations=new Gs(D.layers,D.zoom),this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){let Ce=this.layers[0],Ue=[],Ge=null,ut=!1;Ce.type==="circle"&&(Ge=Ce.layout.get("circle-sort-key"),ut=!Ge.isConstant());for(let{feature:Tt,id:Ft,index:$t,sourceLayerIndex:lr}of D){let Ar=this.layers[0]._featureFilter.needGeometry,zr=Dl(Tt,Ar);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),zr,pe))continue;let Kr=ut?Ge.evaluate(zr,{},pe):void 0,la={id:Ft,properties:Tt.properties,type:Tt.type,sourceLayerIndex:lr,index:$t,geometry:Ar?zr.geometry:hl(Tt),patterns:{},sortKey:Kr};Ue.push(la)}ut&&Ue.sort((Tt,Ft)=>Tt.sortKey-Ft.sortKey);for(let Tt of Ue){let{geometry:Ft,index:$t,sourceLayerIndex:lr}=Tt,Ar=D[$t].feature;this.addFeature(Tt,Ft,$t,pe),Y.featureIndex.insert(Ar,Ft,$t,lr,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,vt),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}addFeature(D,Y,pe,Ce){for(let Ue of Y)for(let Ge of Ue){let ut=Ge.x,Tt=Ge.y;if(ut<0||ut>=ao||Tt<0||Tt>=ao)continue;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray,D.sortKey),$t=Ft.vertexLength;hu(this.layoutVertexArray,ut,Tt,-1,-1),hu(this.layoutVertexArray,ut,Tt,1,-1),hu(this.layoutVertexArray,ut,Tt,1,1),hu(this.layoutVertexArray,ut,Tt,-1,1),this.indexArray.emplaceBack($t,$t+1,$t+2),this.indexArray.emplaceBack($t,$t+3,$t+2),Ft.vertexLength+=4,Ft.primitiveLength+=2}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,{},Ce)}}function dc(q,D){for(let Y=0;Y<q.length;Y++)if(cn(D,q[Y]))return!0;for(let Y=0;Y<D.length;Y++)if(cn(q,D[Y]))return!0;return!!si(q,D)}function Qt(q,D,Y){return!!cn(q,D)||!!xi(D,q,Y)}function ra(q,D){if(q.length===1)return Fi(D,q[0]);for(let Y=0;Y<D.length;Y++){let pe=D[Y];for(let Ce=0;Ce<pe.length;Ce++)if(cn(q,pe[Ce]))return!0}for(let Y=0;Y<q.length;Y++)if(Fi(D,q[Y]))return!0;for(let Y=0;Y<D.length;Y++)if(si(q,D[Y]))return!0;return!1}function Ta(q,D,Y){if(q.length>1){if(si(q,D))return!0;for(let pe=0;pe<D.length;pe++)if(xi(D[pe],q,Y))return!0}for(let pe=0;pe<q.length;pe++)if(xi(q[pe],D,Y))return!0;return!1}function si(q,D){if(q.length===0||D.length===0)return!1;for(let Y=0;Y<q.length-1;Y++){let pe=q[Y],Ce=q[Y+1];for(let Ue=0;Ue<D.length-1;Ue++)if(wi(pe,Ce,D[Ue],D[Ue+1]))return!0}return!1}function wi(q,D,Y,pe){return P(q,Y,pe)!==P(D,Y,pe)&&P(q,D,Y)!==P(q,D,pe)}function xi(q,D,Y){let pe=Y*Y;if(D.length===1)return q.distSqr(D[0])<pe;for(let Ce=1;Ce<D.length;Ce++)if(bi(q,D[Ce-1],D[Ce])<pe)return!0;return!1}function bi(q,D,Y){let pe=D.distSqr(Y);if(pe===0)return q.distSqr(D);let Ce=((q.x-D.x)*(Y.x-D.x)+(q.y-D.y)*(Y.y-D.y))/pe;return q.distSqr(Ce<0?D:Ce>1?Y:Y.sub(D)._mult(Ce)._add(D))}function Fi(q,D){let Y,pe,Ce,Ue=!1;for(let Ge=0;Ge<q.length;Ge++){Y=q[Ge];for(let ut=0,Tt=Y.length-1;ut<Y.length;Tt=ut++)pe=Y[ut],Ce=Y[Tt],pe.y>D.y!=Ce.y>D.y&&D.x<(Ce.x-pe.x)*(D.y-pe.y)/(Ce.y-pe.y)+pe.x&&(Ue=!Ue)}return Ue}function cn(q,D){let Y=!1;for(let pe=0,Ce=q.length-1;pe<q.length;Ce=pe++){let Ue=q[pe],Ge=q[Ce];Ue.y>D.y!=Ge.y>D.y&&D.x<(Ge.x-Ue.x)*(D.y-Ue.y)/(Ge.y-Ue.y)+Ue.x&&(Y=!Y)}return Y}function fn(q,D,Y){let pe=Y[0],Ce=Y[2];if(q.x<pe.x&&D.x<pe.x||q.x>Ce.x&&D.x>Ce.x||q.y<pe.y&&D.y<pe.y||q.y>Ce.y&&D.y>Ce.y)return!1;let Ue=P(q,D,Y[0]);return Ue!==P(q,D,Y[1])||Ue!==P(q,D,Y[2])||Ue!==P(q,D,Y[3])}function Gi(q,D,Y){let pe=D.paint.get(q).value;return pe.kind==="constant"?pe.value:Y.programConfigurations.get(D.id).getMaxValue(q)}function Io(q){return Math.sqrt(q[0]*q[0]+q[1]*q[1])}function nn(q,D,Y,pe,Ce){if(!D[0]&&!D[1])return q;let Ue=i.convert(D)._mult(Ce);Y==="viewport"&&Ue._rotate(-pe);let Ge=[];for(let ut=0;ut<q.length;ut++)Ge.push(q[ut].sub(Ue));return Ge}let on,Oi;ti("CircleBucket",Ll,{omit:["layers"]});var ui={get paint(){return Oi=Oi||new Oe({"circle-radius":new Po(ie.paint_circle["circle-radius"]),"circle-color":new Po(ie.paint_circle["circle-color"]),"circle-blur":new Po(ie.paint_circle["circle-blur"]),"circle-opacity":new Po(ie.paint_circle["circle-opacity"]),"circle-translate":new ro(ie.paint_circle["circle-translate"]),"circle-translate-anchor":new ro(ie.paint_circle["circle-translate-anchor"]),"circle-pitch-scale":new ro(ie.paint_circle["circle-pitch-scale"]),"circle-pitch-alignment":new ro(ie.paint_circle["circle-pitch-alignment"]),"circle-stroke-width":new Po(ie.paint_circle["circle-stroke-width"]),"circle-stroke-color":new Po(ie.paint_circle["circle-stroke-color"]),"circle-stroke-opacity":new Po(ie.paint_circle["circle-stroke-opacity"])})},get layout(){return on=on||new Oe({"circle-sort-key":new Po(ie.layout_circle["circle-sort-key"])})}},Mi=1e-6,tn=typeof Float32Array<"u"?Float32Array:Array;function pn(q){return q[0]=1,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=1,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=1,q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q}function qi(q,D,Y){var pe=D[0],Ce=D[1],Ue=D[2],Ge=D[3],ut=D[4],Tt=D[5],Ft=D[6],$t=D[7],lr=D[8],Ar=D[9],zr=D[10],Kr=D[11],la=D[12],za=D[13],ja=D[14],gi=D[15],ei=Y[0],hi=Y[1],Ei=Y[2],En=Y[3];return q[0]=ei*pe+hi*ut+Ei*lr+En*la,q[1]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[2]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[3]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[4]=(ei=Y[4])*pe+(hi=Y[5])*ut+(Ei=Y[6])*lr+(En=Y[7])*la,q[5]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[6]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[7]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[8]=(ei=Y[8])*pe+(hi=Y[9])*ut+(Ei=Y[10])*lr+(En=Y[11])*la,q[9]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[10]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[11]=ei*Ge+hi*$t+Ei*Kr+En*gi,q[12]=(ei=Y[12])*pe+(hi=Y[13])*ut+(Ei=Y[14])*lr+(En=Y[15])*la,q[13]=ei*Ce+hi*Tt+Ei*Ar+En*za,q[14]=ei*Ue+hi*Ft+Ei*zr+En*ja,q[15]=ei*Ge+hi*$t+Ei*Kr+En*gi,q}Math.hypot||(Math.hypot=function(){for(var q=0,D=arguments.length;D--;)q+=arguments[D]*arguments[D];return Math.sqrt(q)});var Dn,bn=qi;function _o(q,D,Y){var pe=D[0],Ce=D[1],Ue=D[2],Ge=D[3];return q[0]=Y[0]*pe+Y[4]*Ce+Y[8]*Ue+Y[12]*Ge,q[1]=Y[1]*pe+Y[5]*Ce+Y[9]*Ue+Y[13]*Ge,q[2]=Y[2]*pe+Y[6]*Ce+Y[10]*Ue+Y[14]*Ge,q[3]=Y[3]*pe+Y[7]*Ce+Y[11]*Ue+Y[15]*Ge,q}Dn=new tn(4),tn!=Float32Array&&(Dn[0]=0,Dn[1]=0,Dn[2]=0,Dn[3]=0);class Zi extends ae{constructor(D){super(D,ui)}createBucket(D){return new Ll(D)}queryRadius(D){let Y=D;return Gi("circle-radius",this,Y)+Gi("circle-stroke-width",this,Y)+Io(this.paint.get("circle-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=nn(D,this.paint.get("circle-translate"),this.paint.get("circle-translate-anchor"),Ge.angle,ut),$t=this.paint.get("circle-radius").evaluate(Y,pe)+this.paint.get("circle-stroke-width").evaluate(Y,pe),lr=this.paint.get("circle-pitch-alignment")==="map",Ar=lr?Ft:function(Kr,la){return Kr.map(za=>Ui(za,la))}(Ft,Tt),zr=lr?$t*ut:$t;for(let Kr of Ce)for(let la of Kr){let za=lr?la:Ui(la,Tt),ja=zr,gi=_o([],[la.x,la.y,0,1],Tt);if(this.paint.get("circle-pitch-scale")==="viewport"&&this.paint.get("circle-pitch-alignment")==="map"?ja*=gi[3]/Ge.cameraToCenterDistance:this.paint.get("circle-pitch-scale")==="map"&&this.paint.get("circle-pitch-alignment")==="viewport"&&(ja*=Ge.cameraToCenterDistance/gi[3]),Qt(Ar,za,ja))return!0}return!1}}function Ui(q,D){let Y=_o([],[q.x,q.y,0,1],D);return new i(Y[0]/Y[3],Y[1]/Y[3])}class Zn extends Ll{}let Rn;ti("HeatmapBucket",Zn,{omit:["layers"]});var xn={get paint(){return Rn=Rn||new Oe({"heatmap-radius":new Po(ie.paint_heatmap["heatmap-radius"]),"heatmap-weight":new Po(ie.paint_heatmap["heatmap-weight"]),"heatmap-intensity":new ro(ie.paint_heatmap["heatmap-intensity"]),"heatmap-color":new pc(ie.paint_heatmap["heatmap-color"]),"heatmap-opacity":new ro(ie.paint_heatmap["heatmap-opacity"])})}};function dn(q,{width:D,height:Y},pe,Ce){if(Ce){if(Ce instanceof Uint8ClampedArray)Ce=new Uint8Array(Ce.buffer);else if(Ce.length!==D*Y*pe)throw new RangeError(`mismatched image size. expected: ${Ce.length} but got: ${D*Y*pe}`)}else Ce=new Uint8Array(D*Y*pe);return q.width=D,q.height=Y,q.data=Ce,q}function jn(q,{width:D,height:Y},pe){if(D===q.width&&Y===q.height)return;let Ce=dn({},{width:D,height:Y},pe);Ro(q,Ce,{x:0,y:0},{x:0,y:0},{width:Math.min(q.width,D),height:Math.min(q.height,Y)},pe),q.width=D,q.height=Y,q.data=Ce.data}function Ro(q,D,Y,pe,Ce,Ue){if(Ce.width===0||Ce.height===0)return D;if(Ce.width>q.width||Ce.height>q.height||Y.x>q.width-Ce.width||Y.y>q.height-Ce.height)throw new RangeError("out of range source coordinates for image copy");if(Ce.width>D.width||Ce.height>D.height||pe.x>D.width-Ce.width||pe.y>D.height-Ce.height)throw new RangeError("out of range destination coordinates for image copy");let Ge=q.data,ut=D.data;if(Ge===ut)throw new Error("srcData equals dstData, so image is already copied");for(let Tt=0;Tt<Ce.height;Tt++){let Ft=((Y.y+Tt)*q.width+Y.x)*Ue,$t=((pe.y+Tt)*D.width+pe.x)*Ue;for(let lr=0;lr<Ce.width*Ue;lr++)ut[$t+lr]=Ge[Ft+lr]}return D}class rs{constructor(D,Y){dn(this,D,1,Y)}resize(D){jn(this,D,1)}clone(){return new rs({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(D,Y,pe,Ce,Ue){Ro(D,Y,pe,Ce,Ue,1)}}class wn{constructor(D,Y){dn(this,D,4,Y)}resize(D){jn(this,D,4)}replace(D,Y){Y?this.data.set(D):this.data=D instanceof Uint8ClampedArray?new Uint8Array(D.buffer):D}clone(){return new wn({width:this.width,height:this.height},new Uint8Array(this.data))}static copy(D,Y,pe,Ce,Ue){Ro(D,Y,pe,Ce,Ue,4)}}function oo(q){let D={},Y=q.resolution||256,pe=q.clips?q.clips.length:1,Ce=q.image||new wn({width:Y,height:pe});if(Math.log(Y)/Math.LN2%1!=0)throw new Error(`width is not a power of 2 - ${Y}`);let Ue=(Ge,ut,Tt)=>{D[q.evaluationKey]=Tt;let Ft=q.expression.evaluate(D);Ce.data[Ge+ut+0]=Math.floor(255*Ft.r/Ft.a),Ce.data[Ge+ut+1]=Math.floor(255*Ft.g/Ft.a),Ce.data[Ge+ut+2]=Math.floor(255*Ft.b/Ft.a),Ce.data[Ge+ut+3]=Math.floor(255*Ft.a)};if(q.clips)for(let Ge=0,ut=0;Ge<pe;++Ge,ut+=4*Y)for(let Tt=0,Ft=0;Tt<Y;Tt++,Ft+=4){let $t=Tt/(Y-1),{start:lr,end:Ar}=q.clips[Ge];Ue(ut,Ft,lr*(1-$t)+Ar*$t)}else for(let Ge=0,ut=0;Ge<Y;Ge++,ut+=4)Ue(0,ut,Ge/(Y-1));return Ce}ti("AlphaImage",rs),ti("RGBAImage",wn);let Xo="big-fb";class os extends ae{createBucket(D){return new Zn(D)}constructor(D){super(D,xn),this.heatmapFbos=new Map,this._updateColorRamp()}_handleSpecialPaintPropertyUpdate(D){D==="heatmap-color"&&this._updateColorRamp()}_updateColorRamp(){this.colorRamp=oo({expression:this._transitionablePaint._values["heatmap-color"].value.expression,evaluationKey:"heatmapDensity",image:this.colorRamp}),this.colorRampTexture=null}resize(){this.heatmapFbos.has(Xo)&&this.heatmapFbos.delete(Xo)}queryRadius(){return 0}queryIntersectsFeature(){return!1}hasOffscreenPass(){return this.paint.get("heatmap-opacity")!==0&&this.visibility!=="none"}}let As;var $l={get paint(){return As=As||new Oe({"hillshade-illumination-direction":new ro(ie.paint_hillshade["hillshade-illumination-direction"]),"hillshade-illumination-anchor":new ro(ie.paint_hillshade["hillshade-illumination-anchor"]),"hillshade-exaggeration":new ro(ie.paint_hillshade["hillshade-exaggeration"]),"hillshade-shadow-color":new ro(ie.paint_hillshade["hillshade-shadow-color"]),"hillshade-highlight-color":new ro(ie.paint_hillshade["hillshade-highlight-color"]),"hillshade-accent-color":new ro(ie.paint_hillshade["hillshade-accent-color"])})}};class Uc extends ae{constructor(D){super(D,$l)}hasOffscreenPass(){return this.paint.get("hillshade-exaggeration")!==0&&this.visibility!=="none"}}let Ws=ft([{name:"a_pos",components:2,type:"Int16"}],4),{members:jc}=Ws;function Ol(q,D,Y=2){let pe=D&&D.length,Ce=pe?D[0]*Y:q.length,Ue=vc(q,0,Ce,Y,!0),Ge=[];if(!Ue||Ue.next===Ue.prev)return Ge;let ut,Tt,Ft;if(pe&&(Ue=function($t,lr,Ar,zr){let Kr=[];for(let la=0,za=lr.length;la<za;la++){let ja=vc($t,lr[la]*zr,la<za-1?lr[la+1]*zr:$t.length,zr,!1);ja===ja.next&&(ja.steiner=!0),Kr.push(ye(ja))}Kr.sort(af);for(let la=0;la<Kr.length;la++)Ar=Cs(Kr[la],Ar);return Ar}(q,D,Ue,Y)),q.length>80*Y){ut=1/0,Tt=1/0;let $t=-1/0,lr=-1/0;for(let Ar=Y;Ar<Ce;Ar+=Y){let zr=q[Ar],Kr=q[Ar+1];zr<ut&&(ut=zr),Kr<Tt&&(Tt=Kr),zr>$t&&($t=zr),Kr>lr&&(lr=Kr)}Ft=Math.max($t-ut,lr-Tt),Ft=Ft!==0?32767/Ft:0}return rf(Ue,Ge,Y,ut,Tt,Ft,0),Ge}function vc(q,D,Y,pe,Ce){let Ue;if(Ce===function(Ge,ut,Tt,Ft){let $t=0;for(let lr=ut,Ar=Tt-Ft;lr<Tt;lr+=Ft)$t+=(Ge[Ar]-Ge[lr])*(Ge[lr+1]+Ge[Ar+1]),Ar=lr;return $t}(q,D,Y,pe)>0)for(let Ge=D;Ge<Y;Ge+=pe)Ue=wr(Ge/pe|0,q[Ge],q[Ge+1],Ue);else for(let Ge=Y-pe;Ge>=D;Ge-=pe)Ue=wr(Ge/pe|0,q[Ge],q[Ge+1],Ue);return Ue&&He(Ue,Ue.next)&&(qt(Ue),Ue=Ue.next),Ue}function mc(q,D){if(!q)return q;D||(D=q);let Y,pe=q;do if(Y=!1,pe.steiner||!He(pe,pe.next)&&We(pe.prev,pe,pe.next)!==0)pe=pe.next;else{if(qt(pe),pe=D=pe.prev,pe===pe.next)break;Y=!0}while(Y||pe!==D);return D}function rf(q,D,Y,pe,Ce,Ue,Ge){if(!q)return;!Ge&&Ue&&function(Tt,Ft,$t,lr){let Ar=Tt;do Ar.z===0&&(Ar.z=K(Ar.x,Ar.y,Ft,$t,lr)),Ar.prevZ=Ar.prev,Ar.nextZ=Ar.next,Ar=Ar.next;while(Ar!==Tt);Ar.prevZ.nextZ=null,Ar.prevZ=null,function(zr){let Kr,la=1;do{let za,ja=zr;zr=null;let gi=null;for(Kr=0;ja;){Kr++;let ei=ja,hi=0;for(let En=0;En<la&&(hi++,ei=ei.nextZ,ei);En++);let Ei=la;for(;hi>0||Ei>0&&ei;)hi!==0&&(Ei===0||!ei||ja.z<=ei.z)?(za=ja,ja=ja.nextZ,hi--):(za=ei,ei=ei.nextZ,Ei--),gi?gi.nextZ=za:zr=za,za.prevZ=gi,gi=za;ja=ei}gi.nextZ=null,la*=2}while(Kr>1)}(Ar)}(q,pe,Ce,Ue);let ut=q;for(;q.prev!==q.next;){let Tt=q.prev,Ft=q.next;if(Ue?Mc(q,pe,Ce,Ue):Yl(q))D.push(Tt.i,q.i,Ft.i),qt(q),q=Ft.next,ut=Ft.next;else if((q=Ft)===ut){Ge?Ge===1?rf(q=Vc(mc(q),D),D,Y,pe,Ce,Ue,2):Ge===2&&Ds(q,D,Y,pe,Ce,Ue):rf(mc(q),D,Y,pe,Ce,Ue,1);break}}}function Yl(q){let D=q.prev,Y=q,pe=q.next;if(We(D,Y,pe)>=0)return!1;let Ce=D.x,Ue=Y.x,Ge=pe.x,ut=D.y,Tt=Y.y,Ft=pe.y,$t=Ce<Ue?Ce<Ge?Ce:Ge:Ue<Ge?Ue:Ge,lr=ut<Tt?ut<Ft?ut:Ft:Tt<Ft?Tt:Ft,Ar=Ce>Ue?Ce>Ge?Ce:Ge:Ue>Ge?Ue:Ge,zr=ut>Tt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,Kr=pe.next;for(;Kr!==D;){if(Kr.x>=$t&&Kr.x<=Ar&&Kr.y>=lr&&Kr.y<=zr&&te(Ce,ut,Ue,Tt,Ge,Ft,Kr.x,Kr.y)&&We(Kr.prev,Kr,Kr.next)>=0)return!1;Kr=Kr.next}return!0}function Mc(q,D,Y,pe){let Ce=q.prev,Ue=q,Ge=q.next;if(We(Ce,Ue,Ge)>=0)return!1;let ut=Ce.x,Tt=Ue.x,Ft=Ge.x,$t=Ce.y,lr=Ue.y,Ar=Ge.y,zr=ut<Tt?ut<Ft?ut:Ft:Tt<Ft?Tt:Ft,Kr=$t<lr?$t<Ar?$t:Ar:lr<Ar?lr:Ar,la=ut>Tt?ut>Ft?ut:Ft:Tt>Ft?Tt:Ft,za=$t>lr?$t>Ar?$t:Ar:lr>Ar?lr:Ar,ja=K(zr,Kr,D,Y,pe),gi=K(la,za,D,Y,pe),ei=q.prevZ,hi=q.nextZ;for(;ei&&ei.z>=ja&&hi&&hi.z<=gi;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0||(ei=ei.prevZ,hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0))return!1;hi=hi.nextZ}for(;ei&&ei.z>=ja;){if(ei.x>=zr&&ei.x<=la&&ei.y>=Kr&&ei.y<=za&&ei!==Ce&&ei!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,ei.x,ei.y)&&We(ei.prev,ei,ei.next)>=0)return!1;ei=ei.prevZ}for(;hi&&hi.z<=gi;){if(hi.x>=zr&&hi.x<=la&&hi.y>=Kr&&hi.y<=za&&hi!==Ce&&hi!==Ge&&te(ut,$t,Tt,lr,Ft,Ar,hi.x,hi.y)&&We(hi.prev,hi,hi.next)>=0)return!1;hi=hi.nextZ}return!0}function Vc(q,D){let Y=q;do{let pe=Y.prev,Ce=Y.next.next;!He(pe,Ce)&&st(pe,Y,Y.next,Ce)&&yr(pe,Ce)&&yr(Ce,pe)&&(D.push(pe.i,Y.i,Ce.i),qt(Y),qt(Y.next),Y=q=Ce),Y=Y.next}while(Y!==q);return mc(Y)}function Ds(q,D,Y,pe,Ce,Ue){let Ge=q;do{let ut=Ge.next.next;for(;ut!==Ge.prev;){if(Ge.i!==ut.i&&xe(Ge,ut)){let Tt=Ir(Ge,ut);return Ge=mc(Ge,Ge.next),Tt=mc(Tt,Tt.next),rf(Ge,D,Y,pe,Ce,Ue,0),void rf(Tt,D,Y,pe,Ce,Ue,0)}ut=ut.next}Ge=Ge.next}while(Ge!==q)}function af(q,D){return q.x-D.x}function Cs(q,D){let Y=function(Ce,Ue){let Ge=Ue,ut=Ce.x,Tt=Ce.y,Ft,$t=-1/0;do{if(Tt<=Ge.y&&Tt>=Ge.next.y&&Ge.next.y!==Ge.y){let la=Ge.x+(Tt-Ge.y)*(Ge.next.x-Ge.x)/(Ge.next.y-Ge.y);if(la<=ut&&la>$t&&($t=la,Ft=Ge.x<Ge.next.x?Ge:Ge.next,la===ut))return Ft}Ge=Ge.next}while(Ge!==Ue);if(!Ft)return null;let lr=Ft,Ar=Ft.x,zr=Ft.y,Kr=1/0;Ge=Ft;do{if(ut>=Ge.x&&Ge.x>=Ar&&ut!==Ge.x&&te(Tt<zr?ut:$t,Tt,Ar,zr,Tt<zr?$t:ut,Tt,Ge.x,Ge.y)){let la=Math.abs(Tt-Ge.y)/(ut-Ge.x);yr(Ge,Ce)&&(la<Kr||la===Kr&&(Ge.x>Ft.x||Ge.x===Ft.x&&ve(Ft,Ge)))&&(Ft=Ge,Kr=la)}Ge=Ge.next}while(Ge!==lr);return Ft}(q,D);if(!Y)return D;let pe=Ir(Y,q);return mc(pe,pe.next),mc(Y,Y.next)}function ve(q,D){return We(q.prev,q,D.prev)<0&&We(D.next,q,q.next)<0}function K(q,D,Y,pe,Ce){return(q=1431655765&((q=858993459&((q=252645135&((q=16711935&((q=(q-Y)*Ce|0)|q<<8))|q<<4))|q<<2))|q<<1))|(D=1431655765&((D=858993459&((D=252645135&((D=16711935&((D=(D-pe)*Ce|0)|D<<8))|D<<4))|D<<2))|D<<1))<<1}function ye(q){let D=q,Y=q;do(D.x<Y.x||D.x===Y.x&&D.y<Y.y)&&(Y=D),D=D.next;while(D!==q);return Y}function te(q,D,Y,pe,Ce,Ue,Ge,ut){return(Ce-Ge)*(D-ut)>=(q-Ge)*(Ue-ut)&&(q-Ge)*(pe-ut)>=(Y-Ge)*(D-ut)&&(Y-Ge)*(Ue-ut)>=(Ce-Ge)*(pe-ut)}function xe(q,D){return q.next.i!==D.i&&q.prev.i!==D.i&&!function(Y,pe){let Ce=Y;do{if(Ce.i!==Y.i&&Ce.next.i!==Y.i&&Ce.i!==pe.i&&Ce.next.i!==pe.i&&st(Ce,Ce.next,Y,pe))return!0;Ce=Ce.next}while(Ce!==Y);return!1}(q,D)&&(yr(q,D)&&yr(D,q)&&function(Y,pe){let Ce=Y,Ue=!1,Ge=(Y.x+pe.x)/2,ut=(Y.y+pe.y)/2;do Ce.y>ut!=Ce.next.y>ut&&Ce.next.y!==Ce.y&&Ge<(Ce.next.x-Ce.x)*(ut-Ce.y)/(Ce.next.y-Ce.y)+Ce.x&&(Ue=!Ue),Ce=Ce.next;while(Ce!==Y);return Ue}(q,D)&&(We(q.prev,q,D.prev)||We(q,D.prev,D))||He(q,D)&&We(q.prev,q,q.next)>0&&We(D.prev,D,D.next)>0)}function We(q,D,Y){return(D.y-q.y)*(Y.x-D.x)-(D.x-q.x)*(Y.y-D.y)}function He(q,D){return q.x===D.x&&q.y===D.y}function st(q,D,Y,pe){let Ce=Ht(We(q,D,Y)),Ue=Ht(We(q,D,pe)),Ge=Ht(We(Y,pe,q)),ut=Ht(We(Y,pe,D));return Ce!==Ue&&Ge!==ut||!(Ce!==0||!Et(q,Y,D))||!(Ue!==0||!Et(q,pe,D))||!(Ge!==0||!Et(Y,q,pe))||!(ut!==0||!Et(Y,D,pe))}function Et(q,D,Y){return D.x<=Math.max(q.x,Y.x)&&D.x>=Math.min(q.x,Y.x)&&D.y<=Math.max(q.y,Y.y)&&D.y>=Math.min(q.y,Y.y)}function Ht(q){return q>0?1:q<0?-1:0}function yr(q,D){return We(q.prev,q,q.next)<0?We(q,D,q.next)>=0&&We(q,q.prev,D)>=0:We(q,D,q.prev)<0||We(q,q.next,D)<0}function Ir(q,D){let Y=tr(q.i,q.x,q.y),pe=tr(D.i,D.x,D.y),Ce=q.next,Ue=D.prev;return q.next=D,D.prev=q,Y.next=Ce,Ce.prev=Y,pe.next=Y,Y.prev=pe,Ue.next=pe,pe.prev=Ue,pe}function wr(q,D,Y,pe){let Ce=tr(q,D,Y);return pe?(Ce.next=pe.next,Ce.prev=pe,pe.next.prev=Ce,pe.next=Ce):(Ce.prev=Ce,Ce.next=Ce),Ce}function qt(q){q.next.prev=q.prev,q.prev.next=q.next,q.prevZ&&(q.prevZ.nextZ=q.nextZ),q.nextZ&&(q.nextZ.prevZ=q.prevZ)}function tr(q,D,Y){return{i:q,x:D,y:Y,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function dr(q,D,Y){let pe=Y.patternDependencies,Ce=!1;for(let Ue of D){let Ge=Ue.paint.get(`${q}-pattern`);Ge.isConstant()||(Ce=!0);let ut=Ge.constantOr(null);ut&&(Ce=!0,pe[ut.to]=!0,pe[ut.from]=!0)}return Ce}function Pr(q,D,Y,pe,Ce){let Ue=Ce.patternDependencies;for(let Ge of D){let ut=Ge.paint.get(`${q}-pattern`).value;if(ut.kind!=="constant"){let Tt=ut.evaluate({zoom:pe-1},Y,{},Ce.availableImages),Ft=ut.evaluate({zoom:pe},Y,{},Ce.availableImages),$t=ut.evaluate({zoom:pe+1},Y,{},Ce.availableImages);Tt=Tt&&Tt.name?Tt.name:Tt,Ft=Ft&&Ft.name?Ft.name:Ft,$t=$t&&$t.name?$t.name:$t,Ue[Tt]=!0,Ue[Ft]=!0,Ue[$t]=!0,Y.patterns[Ge.id]={min:Tt,mid:Ft,max:$t}}}return Y}class Vr{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.layoutVertexArray=new Rl,this.indexArray=new Re,this.indexArray2=new $e,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.segments2=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("fill",this.layers,Y);let Ce=this.layers[0].layout.get("fill-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe,Y.availableImages):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("fill",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,jc),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.indexBuffer2=D.createIndexBuffer(this.indexArray2)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.indexBuffer2.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.segments2.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut=0;for(let zr of Ge)ut+=zr.length;let Tt=this.segments.prepareSegment(ut,this.layoutVertexArray,this.indexArray),Ft=Tt.vertexLength,$t=[],lr=[];for(let zr of Ge){if(zr.length===0)continue;zr!==Ge[0]&&lr.push($t.length/2);let Kr=this.segments2.prepareSegment(zr.length,this.layoutVertexArray,this.indexArray2),la=Kr.vertexLength;this.layoutVertexArray.emplaceBack(zr[0].x,zr[0].y),this.indexArray2.emplaceBack(la+zr.length-1,la),$t.push(zr[0].x),$t.push(zr[0].y);for(let za=1;za<zr.length;za++)this.layoutVertexArray.emplaceBack(zr[za].x,zr[za].y),this.indexArray2.emplaceBack(la+za-1,la+za),$t.push(zr[za].x),$t.push(zr[za].y);Kr.vertexLength+=zr.length,Kr.primitiveLength+=zr.length}let Ar=Ol($t,lr);for(let zr=0;zr<Ar.length;zr+=3)this.indexArray.emplaceBack(Ft+Ar[zr],Ft+Ar[zr+1],Ft+Ar[zr+2]);Tt.vertexLength+=ut,Tt.primitiveLength+=Ar.length/3}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}}let Hr,aa;ti("FillBucket",Vr,{omit:["layers","patternFeatures"]});var Qr={get paint(){return aa=aa||new Oe({"fill-antialias":new ro(ie.paint_fill["fill-antialias"]),"fill-opacity":new Po(ie.paint_fill["fill-opacity"]),"fill-color":new Po(ie.paint_fill["fill-color"]),"fill-outline-color":new Po(ie.paint_fill["fill-outline-color"]),"fill-translate":new ro(ie.paint_fill["fill-translate"]),"fill-translate-anchor":new ro(ie.paint_fill["fill-translate-anchor"]),"fill-pattern":new Nc(ie.paint_fill["fill-pattern"])})},get layout(){return Hr=Hr||new Oe({"fill-sort-key":new Po(ie.layout_fill["fill-sort-key"])})}};class Gr extends ae{constructor(D){super(D,Qr)}recalculate(D,Y){super.recalculate(D,Y);let pe=this.paint._values["fill-outline-color"];pe.value.kind==="constant"&&pe.value.value===void 0&&(this.paint._values["fill-outline-color"]=this.paint._values["fill-color"])}createBucket(D){return new Vr(D)}queryRadius(){return Io(this.paint.get("fill-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut){return ra(nn(D,this.paint.get("fill-translate"),this.paint.get("fill-translate-anchor"),Ge.angle,ut),Ce)}isTileClipped(){return!0}}let ia=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_normal_ed",components:4,type:"Int16"}],4),Ur=ft([{name:"a_centroid",components:2,type:"Int16"}],4),{members:wa}=ia;var Oa={},ri=o,Pi=mi;function mi(q,D,Y,pe,Ce){this.properties={},this.extent=Y,this.type=0,this._pbf=q,this._geometry=-1,this._keys=pe,this._values=Ce,q.readFields(Di,this,D)}function Di(q,D,Y){q==1?D.id=Y.readVarint():q==2?function(pe,Ce){for(var Ue=pe.readVarint()+pe.pos;pe.pos<Ue;){var Ge=Ce._keys[pe.readVarint()],ut=Ce._values[pe.readVarint()];Ce.properties[Ge]=ut}}(Y,D):q==3?D.type=Y.readVarint():q==4&&(D._geometry=Y.pos)}function An(q){for(var D,Y,pe=0,Ce=0,Ue=q.length,Ge=Ue-1;Ce<Ue;Ge=Ce++)pe+=((Y=q[Ge]).x-(D=q[Ce]).x)*(D.y+Y.y);return pe}mi.types=["Unknown","Point","LineString","Polygon"],mi.prototype.loadGeometry=function(){var q=this._pbf;q.pos=this._geometry;for(var D,Y=q.readVarint()+q.pos,pe=1,Ce=0,Ue=0,Ge=0,ut=[];q.pos<Y;){if(Ce<=0){var Tt=q.readVarint();pe=7&Tt,Ce=Tt>>3}if(Ce--,pe===1||pe===2)Ue+=q.readSVarint(),Ge+=q.readSVarint(),pe===1&&(D&&ut.push(D),D=[]),D.push(new ri(Ue,Ge));else{if(pe!==7)throw new Error("unknown command "+pe);D&&D.push(D[0].clone())}}return D&&ut.push(D),ut},mi.prototype.bbox=function(){var q=this._pbf;q.pos=this._geometry;for(var D=q.readVarint()+q.pos,Y=1,pe=0,Ce=0,Ue=0,Ge=1/0,ut=-1/0,Tt=1/0,Ft=-1/0;q.pos<D;){if(pe<=0){var $t=q.readVarint();Y=7&$t,pe=$t>>3}if(pe--,Y===1||Y===2)(Ce+=q.readSVarint())<Ge&&(Ge=Ce),Ce>ut&&(ut=Ce),(Ue+=q.readSVarint())<Tt&&(Tt=Ue),Ue>Ft&&(Ft=Ue);else if(Y!==7)throw new Error("unknown command "+Y)}return[Ge,Tt,ut,Ft]},mi.prototype.toGeoJSON=function(q,D,Y){var pe,Ce,Ue=this.extent*Math.pow(2,Y),Ge=this.extent*q,ut=this.extent*D,Tt=this.loadGeometry(),Ft=mi.types[this.type];function $t(zr){for(var Kr=0;Kr<zr.length;Kr++){var la=zr[Kr];zr[Kr]=[360*(la.x+Ge)/Ue-180,360/Math.PI*Math.atan(Math.exp((180-360*(la.y+ut)/Ue)*Math.PI/180))-90]}}switch(this.type){case 1:var lr=[];for(pe=0;pe<Tt.length;pe++)lr[pe]=Tt[pe][0];$t(Tt=lr);break;case 2:for(pe=0;pe<Tt.length;pe++)$t(Tt[pe]);break;case 3:for(Tt=function(zr){var Kr=zr.length;if(Kr<=1)return[zr];for(var la,za,ja=[],gi=0;gi<Kr;gi++){var ei=An(zr[gi]);ei!==0&&(za===void 0&&(za=ei<0),za===ei<0?(la&&ja.push(la),la=[zr[gi]]):la.push(zr[gi]))}return la&&ja.push(la),ja}(Tt),pe=0;pe<Tt.length;pe++)for(Ce=0;Ce<Tt[pe].length;Ce++)$t(Tt[pe][Ce])}Tt.length===1?Tt=Tt[0]:Ft="Multi"+Ft;var Ar={type:"Feature",geometry:{type:Ft,coordinates:Tt},properties:this.properties};return"id"in this&&(Ar.id=this.id),Ar};var ln=Pi,Ii=Wi;function Wi(q,D){this.version=1,this.name=null,this.extent=4096,this.length=0,this._pbf=q,this._keys=[],this._values=[],this._features=[],q.readFields(Hi,this,D),this.length=this._features.length}function Hi(q,D,Y){q===15?D.version=Y.readVarint():q===1?D.name=Y.readString():q===5?D.extent=Y.readVarint():q===2?D._features.push(Y.pos):q===3?D._keys.push(Y.readString()):q===4&&D._values.push(function(pe){for(var Ce=null,Ue=pe.readVarint()+pe.pos;pe.pos<Ue;){var Ge=pe.readVarint()>>3;Ce=Ge===1?pe.readString():Ge===2?pe.readFloat():Ge===3?pe.readDouble():Ge===4?pe.readVarint64():Ge===5?pe.readVarint():Ge===6?pe.readSVarint():Ge===7?pe.readBoolean():null}return Ce}(Y))}Wi.prototype.feature=function(q){if(q<0||q>=this._features.length)throw new Error("feature index out of bounds");this._pbf.pos=this._features[q];var D=this._pbf.readVarint()+this._pbf.pos;return new ln(this._pbf,D,this.extent,this._keys,this._values)};var yn=Ii;function zn(q,D,Y){if(q===3){var pe=new yn(Y,Y.readVarint()+Y.pos);pe.length&&(D[pe.name]=pe)}}Oa.VectorTile=function(q,D){this.layers=q.readFields(zn,{},D)},Oa.VectorTileFeature=Pi,Oa.VectorTileLayer=Ii;let ms=Oa.VectorTileFeature.types,us=Math.pow(2,13);function Vs(q,D,Y,pe,Ce,Ue,Ge,ut){q.emplaceBack(D,Y,2*Math.floor(pe*us)+Ge,Ce*us*2,Ue*us*2,Math.round(ut))}class qo{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.layoutVertexArray=new Xl,this.centroidVertexArray=new Zo,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.features=[],this.hasPattern=dr("fill-extrusion",this.layers,Y);for(let{feature:Ce,id:Ue,index:Ge,sourceLayerIndex:ut}of D){let Tt=this.layers[0]._featureFilter.needGeometry,Ft=Dl(Ce,Tt);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ft,pe))continue;let $t={id:Ue,sourceLayerIndex:ut,index:Ge,geometry:Tt?Ft.geometry:hl(Ce),properties:Ce.properties,type:Ce.type,patterns:{}};this.hasPattern?this.features.push(Pr("fill-extrusion",this.layers,$t,this.zoom,Y)):this.addFeature($t,$t.geometry,Ge,pe,{}),Y.featureIndex.insert(Ce,$t.geometry,Ge,ut,this.index,!0)}}addFeatures(D,Y,pe){for(let Ce of this.features){let{geometry:Ue}=Ce;this.addFeature(Ce,Ue,Ce.index,Y,pe)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}isEmpty(){return this.layoutVertexArray.length===0&&this.centroidVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,wa),this.centroidVertexBuffer=D.createVertexBuffer(this.centroidVertexArray,Ur.members,!0),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.centroidVertexBuffer.destroy())}addFeature(D,Y,pe,Ce,Ue){for(let Ge of Ic(Y,500)){let ut={x:0,y:0,vertexCount:0},Tt=0;for(let Kr of Ge)Tt+=Kr.length;let Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray);for(let Kr of Ge){if(Kr.length===0||wl(Kr))continue;let la=0;for(let za=0;za<Kr.length;za++){let ja=Kr[za];if(za>=1){let gi=Kr[za-1];if(!Ls(ja,gi)){Ft.vertexLength+4>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(4,this.layoutVertexArray,this.indexArray));let ei=ja.sub(gi)._perp()._unit(),hi=gi.dist(ja);la+hi>32768&&(la=0),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,ja.x,ja.y,ei.x,ei.y,0,1,la),ut.x+=2*ja.x,ut.y+=2*ja.y,ut.vertexCount+=2,la+=hi,Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,0,la),Vs(this.layoutVertexArray,gi.x,gi.y,ei.x,ei.y,0,1,la),ut.x+=2*gi.x,ut.y+=2*gi.y,ut.vertexCount+=2;let Ei=Ft.vertexLength;this.indexArray.emplaceBack(Ei,Ei+2,Ei+1),this.indexArray.emplaceBack(Ei+1,Ei+2,Ei+3),Ft.vertexLength+=4,Ft.primitiveLength+=2}}}}if(Ft.vertexLength+Tt>wt.MAX_VERTEX_ARRAY_LENGTH&&(Ft=this.segments.prepareSegment(Tt,this.layoutVertexArray,this.indexArray)),ms[D.type]!=="Polygon")continue;let $t=[],lr=[],Ar=Ft.vertexLength;for(let Kr of Ge)if(Kr.length!==0){Kr!==Ge[0]&&lr.push($t.length/2);for(let la=0;la<Kr.length;la++){let za=Kr[la];Vs(this.layoutVertexArray,za.x,za.y,0,0,1,1,0),ut.x+=za.x,ut.y+=za.y,ut.vertexCount+=1,$t.push(za.x),$t.push(za.y)}}let zr=Ol($t,lr);for(let Kr=0;Kr<zr.length;Kr+=3)this.indexArray.emplaceBack(Ar+zr[Kr],Ar+zr[Kr+2],Ar+zr[Kr+1]);Ft.primitiveLength+=zr.length/3,Ft.vertexLength+=Tt;for(let Kr=0;Kr<ut.vertexCount;Kr++){let la=Math.floor(ut.x/ut.vertexCount),za=Math.floor(ut.y/ut.vertexCount);this.centroidVertexArray.emplaceBack(la,za)}}this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}}function Ls(q,D){return q.x===D.x&&(q.x<0||q.x>ao)||q.y===D.y&&(q.y<0||q.y>ao)}function wl(q){return q.every(D=>D.x<0)||q.every(D=>D.x>ao)||q.every(D=>D.y<0)||q.every(D=>D.y>ao)}let Ru;ti("FillExtrusionBucket",qo,{omit:["layers","features"]});var Ap={get paint(){return Ru=Ru||new Oe({"fill-extrusion-opacity":new ro(ie["paint_fill-extrusion"]["fill-extrusion-opacity"]),"fill-extrusion-color":new Po(ie["paint_fill-extrusion"]["fill-extrusion-color"]),"fill-extrusion-translate":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate"]),"fill-extrusion-translate-anchor":new ro(ie["paint_fill-extrusion"]["fill-extrusion-translate-anchor"]),"fill-extrusion-pattern":new Nc(ie["paint_fill-extrusion"]["fill-extrusion-pattern"]),"fill-extrusion-height":new Po(ie["paint_fill-extrusion"]["fill-extrusion-height"]),"fill-extrusion-base":new Po(ie["paint_fill-extrusion"]["fill-extrusion-base"]),"fill-extrusion-vertical-gradient":new ro(ie["paint_fill-extrusion"]["fill-extrusion-vertical-gradient"])})}};class Sp extends ae{constructor(D){super(D,Ap)}createBucket(D){return new qo(D)}queryRadius(){return Io(this.paint.get("fill-extrusion-translate"))}is3D(){return!0}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=nn(D,this.paint.get("fill-extrusion-translate"),this.paint.get("fill-extrusion-translate-anchor"),Ge.angle,ut),$t=this.paint.get("fill-extrusion-height").evaluate(Y,pe),lr=this.paint.get("fill-extrusion-base").evaluate(Y,pe),Ar=function(Kr,la,za,ja){let gi=[];for(let ei of Kr){let hi=[ei.x,ei.y,0,1];_o(hi,hi,la),gi.push(new i(hi[0]/hi[3],hi[1]/hi[3]))}return gi}(Ft,Tt),zr=function(Kr,la,za,ja){let gi=[],ei=[],hi=ja[8]*la,Ei=ja[9]*la,En=ja[10]*la,fo=ja[11]*la,ss=ja[8]*za,eo=ja[9]*za,vn=ja[10]*za,Uo=ja[11]*za;for(let Mo of Kr){let xo=[],Yi=[];for(let Ko of Mo){let bo=Ko.x,gs=Ko.y,_u=ja[0]*bo+ja[4]*gs+ja[12],pu=ja[1]*bo+ja[5]*gs+ja[13],Bf=ja[2]*bo+ja[6]*gs+ja[14],Gp=ja[3]*bo+ja[7]*gs+ja[15],dh=Bf+En,Nf=Gp+fo,Yh=_u+ss,Kh=pu+eo,Jh=Bf+vn,Hc=Gp+Uo,Uf=new i((_u+hi)/Nf,(pu+Ei)/Nf);Uf.z=dh/Nf,xo.push(Uf);let Ih=new i(Yh/Hc,Kh/Hc);Ih.z=Jh/Hc,Yi.push(Ih)}gi.push(xo),ei.push(Yi)}return[gi,ei]}(Ce,lr,$t,Tt);return function(Kr,la,za){let ja=1/0;ra(za,la)&&(ja=Vp(za,la[0]));for(let gi=0;gi<la.length;gi++){let ei=la[gi],hi=Kr[gi];for(let Ei=0;Ei<ei.length-1;Ei++){let En=ei[Ei],fo=[En,ei[Ei+1],hi[Ei+1],hi[Ei],En];dc(za,fo)&&(ja=Math.min(ja,Vp(za,fo)))}}return ja!==1/0&&ja}(zr[0],zr[1],Ar)}}function Eh(q,D){return q.x*D.x+q.y*D.y}function Vp(q,D){if(q.length===1){let Y=0,pe=D[Y++],Ce;for(;!Ce||pe.equals(Ce);)if(Ce=D[Y++],!Ce)return 1/0;for(;Y<D.length;Y++){let Ue=D[Y],Ge=q[0],ut=Ce.sub(pe),Tt=Ue.sub(pe),Ft=Ge.sub(pe),$t=Eh(ut,ut),lr=Eh(ut,Tt),Ar=Eh(Tt,Tt),zr=Eh(Ft,ut),Kr=Eh(Ft,Tt),la=$t*Ar-lr*lr,za=(Ar*zr-lr*Kr)/la,ja=($t*Kr-lr*zr)/la,gi=pe.z*(1-za-ja)+Ce.z*za+Ue.z*ja;if(isFinite(gi))return gi}return 1/0}{let Y=1/0;for(let pe of D)Y=Math.min(Y,pe.z);return Y}}let Vd=ft([{name:"a_pos_normal",components:2,type:"Int16"},{name:"a_data",components:4,type:"Uint8"}],4),{members:td}=Vd,kh=ft([{name:"a_uv_x",components:1,type:"Float32"},{name:"a_split_index",components:1,type:"Float32"}]),{members:rd}=kh,Xh=Oa.VectorTileFeature.types,Ch=Math.cos(Math.PI/180*37.5),Mp=Math.pow(2,14)/.5;class qp{constructor(D){this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Y=>Y.id),this.index=D.index,this.hasPattern=!1,this.patternFeatures=[],this.lineClipsArray=[],this.gradients={},this.layers.forEach(Y=>{this.gradients[Y.id]={}}),this.layoutVertexArray=new qu,this.layoutVertexArray2=new fu,this.indexArray=new Re,this.programConfigurations=new Gs(D.layers,D.zoom),this.segments=new wt,this.maxLineLength=0,this.stateDependentLayerIds=this.layers.filter(Y=>Y.isStateDependent()).map(Y=>Y.id)}populate(D,Y,pe){this.hasPattern=dr("line",this.layers,Y);let Ce=this.layers[0].layout.get("line-sort-key"),Ue=!Ce.isConstant(),Ge=[];for(let{feature:ut,id:Tt,index:Ft,sourceLayerIndex:$t}of D){let lr=this.layers[0]._featureFilter.needGeometry,Ar=Dl(ut,lr);if(!this.layers[0]._featureFilter.filter(new Ts(this.zoom),Ar,pe))continue;let zr=Ue?Ce.evaluate(Ar,{},pe):void 0,Kr={id:Tt,properties:ut.properties,type:ut.type,sourceLayerIndex:$t,index:Ft,geometry:lr?Ar.geometry:hl(ut),patterns:{},sortKey:zr};Ge.push(Kr)}Ue&&Ge.sort((ut,Tt)=>ut.sortKey-Tt.sortKey);for(let ut of Ge){let{geometry:Tt,index:Ft,sourceLayerIndex:$t}=ut;if(this.hasPattern){let lr=Pr("line",this.layers,ut,this.zoom,Y);this.patternFeatures.push(lr)}else this.addFeature(ut,Tt,Ft,pe,{});Y.featureIndex.insert(D[Ft].feature,Tt,Ft,$t,this.index)}}update(D,Y,pe){this.stateDependentLayers.length&&this.programConfigurations.updatePaintArrays(D,Y,this.stateDependentLayers,pe)}addFeatures(D,Y,pe){for(let Ce of this.patternFeatures)this.addFeature(Ce,Ce.geometry,Ce.index,Y,pe)}isEmpty(){return this.layoutVertexArray.length===0}uploadPending(){return!this.uploaded||this.programConfigurations.needsUpload}upload(D){this.uploaded||(this.layoutVertexArray2.length!==0&&(this.layoutVertexBuffer2=D.createVertexBuffer(this.layoutVertexArray2,rd)),this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,td),this.indexBuffer=D.createIndexBuffer(this.indexArray)),this.programConfigurations.upload(D),this.uploaded=!0}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy())}lineFeatureClips(D){if(D.properties&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_start")&&Object.prototype.hasOwnProperty.call(D.properties,"mapbox_clip_end"))return{start:+D.properties.mapbox_clip_start,end:+D.properties.mapbox_clip_end}}addFeature(D,Y,pe,Ce,Ue){let Ge=this.layers[0].layout,ut=Ge.get("line-join").evaluate(D,{}),Tt=Ge.get("line-cap"),Ft=Ge.get("line-miter-limit"),$t=Ge.get("line-round-limit");this.lineClips=this.lineFeatureClips(D);for(let lr of Y)this.addLine(lr,D,ut,Tt,Ft,$t);this.programConfigurations.populatePaintArrays(this.layoutVertexArray.length,D,pe,Ue,Ce)}addLine(D,Y,pe,Ce,Ue,Ge){if(this.distance=0,this.scaledDistance=0,this.totalDistance=0,this.lineClips){this.lineClipsArray.push(this.lineClips);for(let ja=0;ja<D.length-1;ja++)this.totalDistance+=D[ja].dist(D[ja+1]);this.updateScaledDistance(),this.maxLineLength=Math.max(this.maxLineLength,this.totalDistance)}let ut=Xh[Y.type]==="Polygon",Tt=D.length;for(;Tt>=2&&D[Tt-1].equals(D[Tt-2]);)Tt--;let Ft=0;for(;Ft<Tt-1&&D[Ft].equals(D[Ft+1]);)Ft++;if(Tt<(ut?3:2))return;pe==="bevel"&&(Ue=1.05);let $t=this.overscaling<=16?15*ao/(512*this.overscaling):0,lr=this.segments.prepareSegment(10*Tt,this.layoutVertexArray,this.indexArray),Ar,zr,Kr,la,za;this.e1=this.e2=-1,ut&&(Ar=D[Tt-2],za=D[Ft].sub(Ar)._unit()._perp());for(let ja=Ft;ja<Tt;ja++){if(Kr=ja===Tt-1?ut?D[Ft+1]:void 0:D[ja+1],Kr&&D[ja].equals(Kr))continue;za&&(la=za),Ar&&(zr=Ar),Ar=D[ja],za=Kr?Kr.sub(Ar)._unit()._perp():la,la=la||za;let gi=la.add(za);gi.x===0&&gi.y===0||gi._unit();let ei=la.x*za.x+la.y*za.y,hi=gi.x*za.x+gi.y*za.y,Ei=hi!==0?1/hi:1/0,En=2*Math.sqrt(2-2*hi),fo=hi<Ch&&zr&&Kr,ss=la.x*za.y-la.y*za.x>0;if(fo&&ja>Ft){let Uo=Ar.dist(zr);if(Uo>2*$t){let Mo=Ar.sub(Ar.sub(zr)._mult($t/Uo)._round());this.updateDistance(zr,Mo),this.addCurrentVertex(Mo,la,0,0,lr),zr=Mo}}let eo=zr&&Kr,vn=eo?pe:ut?"butt":Ce;if(eo&&vn==="round"&&(Ei<Ge?vn="miter":Ei<=2&&(vn="fakeround")),vn==="miter"&&Ei>Ue&&(vn="bevel"),vn==="bevel"&&(Ei>2&&(vn="flipbevel"),Ei<Ue&&(vn="miter")),zr&&this.updateDistance(zr,Ar),vn==="miter")gi._mult(Ei),this.addCurrentVertex(Ar,gi,0,0,lr);else if(vn==="flipbevel"){if(Ei>100)gi=za.mult(-1);else{let Uo=Ei*la.add(za).mag()/la.sub(za).mag();gi._perp()._mult(Uo*(ss?-1:1))}this.addCurrentVertex(Ar,gi,0,0,lr),this.addCurrentVertex(Ar,gi.mult(-1),0,0,lr)}else if(vn==="bevel"||vn==="fakeround"){let Uo=-Math.sqrt(Ei*Ei-1),Mo=ss?Uo:0,xo=ss?0:Uo;if(zr&&this.addCurrentVertex(Ar,la,Mo,xo,lr),vn==="fakeround"){let Yi=Math.round(180*En/Math.PI/20);for(let Ko=1;Ko<Yi;Ko++){let bo=Ko/Yi;if(bo!==.5){let _u=bo-.5;bo+=bo*_u*(bo-1)*((1.0904+ei*(ei*(3.55645-1.43519*ei)-3.2452))*_u*_u+(.848013+ei*(.215638*ei-1.06021)))}let gs=za.sub(la)._mult(bo)._add(la)._unit()._mult(ss?-1:1);this.addHalfVertex(Ar,gs.x,gs.y,!1,ss,0,lr)}}Kr&&this.addCurrentVertex(Ar,za,-Mo,-xo,lr)}else if(vn==="butt")this.addCurrentVertex(Ar,gi,0,0,lr);else if(vn==="square"){let Uo=zr?1:-1;this.addCurrentVertex(Ar,gi,Uo,Uo,lr)}else vn==="round"&&(zr&&(this.addCurrentVertex(Ar,la,0,0,lr),this.addCurrentVertex(Ar,la,1,1,lr,!0)),Kr&&(this.addCurrentVertex(Ar,za,-1,-1,lr,!0),this.addCurrentVertex(Ar,za,0,0,lr)));if(fo&&ja<Tt-1){let Uo=Ar.dist(Kr);if(Uo>2*$t){let Mo=Ar.add(Kr.sub(Ar)._mult($t/Uo)._round());this.updateDistance(Ar,Mo),this.addCurrentVertex(Mo,za,0,0,lr),Ar=Mo}}}}addCurrentVertex(D,Y,pe,Ce,Ue,Ge=!1){let ut=Y.y*Ce-Y.x,Tt=-Y.y-Y.x*Ce;this.addHalfVertex(D,Y.x+Y.y*pe,Y.y-Y.x*pe,Ge,!1,pe,Ue),this.addHalfVertex(D,ut,Tt,Ge,!0,-Ce,Ue),this.distance>Mp/2&&this.totalDistance===0&&(this.distance=0,this.updateScaledDistance(),this.addCurrentVertex(D,Y,pe,Ce,Ue,Ge))}addHalfVertex({x:D,y:Y},pe,Ce,Ue,Ge,ut,Tt){let Ft=.5*(this.lineClips?this.scaledDistance*(Mp-1):this.scaledDistance);this.layoutVertexArray.emplaceBack((D<<1)+(Ue?1:0),(Y<<1)+(Ge?1:0),Math.round(63*pe)+128,Math.round(63*Ce)+128,1+(ut===0?0:ut<0?-1:1)|(63&Ft)<<2,Ft>>6),this.lineClips&&this.layoutVertexArray2.emplaceBack((this.scaledDistance-this.lineClips.start)/(this.lineClips.end-this.lineClips.start),this.lineClipsArray.length);let $t=Tt.vertexLength++;this.e1>=0&&this.e2>=0&&(this.indexArray.emplaceBack(this.e1,this.e2,$t),Tt.primitiveLength++),Ge?this.e2=$t:this.e1=$t}updateScaledDistance(){this.scaledDistance=this.lineClips?this.lineClips.start+(this.lineClips.end-this.lineClips.start)*this.distance/this.totalDistance:this.distance}updateDistance(D,Y){this.distance+=D.dist(Y),this.updateScaledDistance()}}let Ep,Cv;ti("LineBucket",qp,{omit:["layers","patternFeatures"]});var qd={get paint(){return Cv=Cv||new Oe({"line-opacity":new Po(ie.paint_line["line-opacity"]),"line-color":new Po(ie.paint_line["line-color"]),"line-translate":new ro(ie.paint_line["line-translate"]),"line-translate-anchor":new ro(ie.paint_line["line-translate-anchor"]),"line-width":new Po(ie.paint_line["line-width"]),"line-gap-width":new Po(ie.paint_line["line-gap-width"]),"line-offset":new Po(ie.paint_line["line-offset"]),"line-blur":new Po(ie.paint_line["line-blur"]),"line-dasharray":new hc(ie.paint_line["line-dasharray"]),"line-pattern":new Nc(ie.paint_line["line-pattern"]),"line-gradient":new pc(ie.paint_line["line-gradient"])})},get layout(){return Ep=Ep||new Oe({"line-cap":new ro(ie.layout_line["line-cap"]),"line-join":new Po(ie.layout_line["line-join"]),"line-miter-limit":new ro(ie.layout_line["line-miter-limit"]),"line-round-limit":new ro(ie.layout_line["line-round-limit"]),"line-sort-key":new Po(ie.layout_line["line-sort-key"])})}};class Sf extends Po{possiblyEvaluate(D,Y){return Y=new Ts(Math.floor(Y.zoom),{now:Y.now,fadeDuration:Y.fadeDuration,zoomHistory:Y.zoomHistory,transition:Y.transition}),super.possiblyEvaluate(D,Y)}evaluate(D,Y,pe,Ce){return Y=E({},Y,{zoom:Math.floor(Y.zoom)}),super.evaluate(D,Y,pe,Ce)}}let Hd;class Lv extends ae{constructor(D){super(D,qd),this.gradientVersion=0,Hd||(Hd=new Sf(qd.paint.properties["line-width"].specification),Hd.useIntegerZoom=!0)}_handleSpecialPaintPropertyUpdate(D){if(D==="line-gradient"){let Y=this.gradientExpression();this.stepInterpolant=!!function(pe){return pe._styleExpression!==void 0}(Y)&&Y._styleExpression.expression instanceof Sa,this.gradientVersion=(this.gradientVersion+1)%Number.MAX_SAFE_INTEGER}}gradientExpression(){return this._transitionablePaint._values["line-gradient"].value.expression}recalculate(D,Y){super.recalculate(D,Y),this.paint._values["line-floorwidth"]=Hd.possiblyEvaluate(this._transitioningPaint._values["line-width"].value,D)}createBucket(D){return new qp(D)}queryRadius(D){let Y=D,pe=eh(Gi("line-width",this,Y),Gi("line-gap-width",this,Y)),Ce=Gi("line-offset",this,Y);return pe/2+Math.abs(Ce)+Io(this.paint.get("line-translate"))}queryIntersectsFeature(D,Y,pe,Ce,Ue,Ge,ut){let Tt=nn(D,this.paint.get("line-translate"),this.paint.get("line-translate-anchor"),Ge.angle,ut),Ft=ut/2*eh(this.paint.get("line-width").evaluate(Y,pe),this.paint.get("line-gap-width").evaluate(Y,pe)),$t=this.paint.get("line-offset").evaluate(Y,pe);return $t&&(Ce=function(lr,Ar){let zr=[];for(let Kr=0;Kr<lr.length;Kr++){let la=lr[Kr],za=[];for(let ja=0;ja<la.length;ja++){let gi=la[ja-1],ei=la[ja],hi=la[ja+1],Ei=ja===0?new i(0,0):ei.sub(gi)._unit()._perp(),En=ja===la.length-1?new i(0,0):hi.sub(ei)._unit()._perp(),fo=Ei._add(En)._unit(),ss=fo.x*En.x+fo.y*En.y;ss!==0&&fo._mult(1/ss),za.push(fo._mult(Ar)._add(ei))}zr.push(za)}return zr}(Ce,$t*ut)),function(lr,Ar,zr){for(let Kr=0;Kr<Ar.length;Kr++){let la=Ar[Kr];if(lr.length>=3){for(let za=0;za<la.length;za++)if(cn(lr,la[za]))return!0}if(Ta(lr,la,zr))return!0}return!1}(Tt,Ce,Ft)}isTileClipped(){return!0}}function eh(q,D){return D>0?D+2*q:q}let iv=ft([{name:"a_pos_offset",components:4,type:"Int16"},{name:"a_data",components:4,type:"Uint16"},{name:"a_pixeloffset",components:4,type:"Int16"}],4),im=ft([{name:"a_projected_pos",components:3,type:"Float32"}],4);ft([{name:"a_fade_opacity",components:1,type:"Uint32"}],4);let nm=ft([{name:"a_placed",components:2,type:"Uint8"},{name:"a_shift",components:2,type:"Float32"},{name:"a_box_real",components:2,type:"Int16"}]);ft([{type:"Int16",name:"anchorPointX"},{type:"Int16",name:"anchorPointY"},{type:"Int16",name:"x1"},{type:"Int16",name:"y1"},{type:"Int16",name:"x2"},{type:"Int16",name:"y2"},{type:"Uint32",name:"featureIndex"},{type:"Uint16",name:"sourceLayerIndex"},{type:"Uint16",name:"bucketIndex"}]);let Pv=ft([{name:"a_pos",components:2,type:"Int16"},{name:"a_anchor_pos",components:2,type:"Int16"},{name:"a_extrude",components:2,type:"Int16"}],4),nv=ft([{name:"a_pos",components:2,type:"Float32"},{name:"a_radius",components:1,type:"Float32"},{name:"a_flags",components:2,type:"Int16"}],4);function ov(q,D,Y){return q.sections.forEach(pe=>{pe.text=function(Ce,Ue,Ge){let ut=Ue.layout.get("text-transform").evaluate(Ge,{});return ut==="uppercase"?Ce=Ce.toLocaleUpperCase():ut==="lowercase"&&(Ce=Ce.toLocaleLowerCase()),js.applyArabicShaping&&(Ce=js.applyArabicShaping(Ce)),Ce}(pe.text,D,Y)}),q}ft([{name:"triangle",components:3,type:"Uint16"}]),ft([{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"}]),ft([{type:"Int16",name:"anchorX"},{type:"Int16",name:"anchorY"},{type:"Int16",name:"rightJustifiedTextSymbolIndex"},{type:"Int16",name:"centerJustifiedTextSymbolIndex"},{type:"Int16",name:"leftJustifiedTextSymbolIndex"},{type:"Int16",name:"verticalPlacedTextSymbolIndex"},{type:"Int16",name:"placedIconSymbolIndex"},{type:"Int16",name:"verticalPlacedIconSymbolIndex"},{type:"Uint16",name:"key"},{type:"Uint16",name:"textBoxStartIndex"},{type:"Uint16",name:"textBoxEndIndex"},{type:"Uint16",name:"verticalTextBoxStartIndex"},{type:"Uint16",name:"verticalTextBoxEndIndex"},{type:"Uint16",name:"iconBoxStartIndex"},{type:"Uint16",name:"iconBoxEndIndex"},{type:"Uint16",name:"verticalIconBoxStartIndex"},{type:"Uint16",name:"verticalIconBoxEndIndex"},{type:"Uint16",name:"featureIndex"},{type:"Uint16",name:"numHorizontalGlyphVertices"},{type:"Uint16",name:"numVerticalGlyphVertices"},{type:"Uint16",name:"numIconVertices"},{type:"Uint16",name:"numVerticalIconVertices"},{type:"Uint16",name:"useRuntimeCollisionCircles"},{type:"Uint32",name:"crossTileID"},{type:"Float32",name:"textBoxScale"},{type:"Float32",name:"collisionCircleDiameter"},{type:"Uint16",name:"textAnchorOffsetStartIndex"},{type:"Uint16",name:"textAnchorOffsetEndIndex"}]),ft([{type:"Float32",name:"offsetX"}]),ft([{type:"Int16",name:"x"},{type:"Int16",name:"y"},{type:"Int16",name:"tileUnitDistanceFromAnchor"}]),ft([{type:"Uint16",name:"textAnchor"},{type:"Float32",components:2,name:"textOffset"}]);let Du={"!":"\uFE15","#":"\uFF03",$:"\uFF04","%":"\uFF05","&":"\uFF06","(":"\uFE35",")":"\uFE36","*":"\uFF0A","+":"\uFF0B",",":"\uFE10","-":"\uFE32",".":"\u30FB","/":"\uFF0F",":":"\uFE13",";":"\uFE14","<":"\uFE3F","=":"\uFF1D",">":"\uFE40","?":"\uFE16","@":"\uFF20","[":"\uFE47","\\":"\uFF3C","]":"\uFE48","^":"\uFF3E",_:"\uFE33","`":"\uFF40","{":"\uFE37","|":"\u2015","}":"\uFE38","~":"\uFF5E","\xA2":"\uFFE0","\xA3":"\uFFE1","\xA5":"\uFFE5","\xA6":"\uFFE4","\xAC":"\uFFE2","\xAF":"\uFFE3","\u2013":"\uFE32","\u2014":"\uFE31","\u2018":"\uFE43","\u2019":"\uFE44","\u201C":"\uFE41","\u201D":"\uFE42","\u2026":"\uFE19","\u2027":"\u30FB","\u20A9":"\uFFE6","\u3001":"\uFE11","\u3002":"\uFE12","\u3008":"\uFE3F","\u3009":"\uFE40","\u300A":"\uFE3D","\u300B":"\uFE3E","\u300C":"\uFE41","\u300D":"\uFE42","\u300E":"\uFE43","\u300F":"\uFE44","\u3010":"\uFE3B","\u3011":"\uFE3C","\u3014":"\uFE39","\u3015":"\uFE3A","\u3016":"\uFE17","\u3017":"\uFE18","\uFF01":"\uFE15","\uFF08":"\uFE35","\uFF09":"\uFE36","\uFF0C":"\uFE10","\uFF0D":"\uFE32","\uFF0E":"\u30FB","\uFF1A":"\uFE13","\uFF1B":"\uFE14","\uFF1C":"\uFE3F","\uFF1E":"\uFE40","\uFF1F":"\uFE16","\uFF3B":"\uFE47","\uFF3D":"\uFE48","\uFF3F":"\uFE33","\uFF5B":"\uFE37","\uFF5C":"\u2015","\uFF5D":"\uFE38","\uFF5F":"\uFE35","\uFF60":"\uFE36","\uFF61":"\uFE12","\uFF62":"\uFE41","\uFF63":"\uFE42"};var Bl=24,Lh=Ql,Iv=function(q,D,Y,pe,Ce){var Ue,Ge,ut=8*Ce-pe-1,Tt=(1<<ut)-1,Ft=Tt>>1,$t=-7,lr=Y?Ce-1:0,Ar=Y?-1:1,zr=q[D+lr];for(lr+=Ar,Ue=zr&(1<<-$t)-1,zr>>=-$t,$t+=ut;$t>0;Ue=256*Ue+q[D+lr],lr+=Ar,$t-=8);for(Ge=Ue&(1<<-$t)-1,Ue>>=-$t,$t+=pe;$t>0;Ge=256*Ge+q[D+lr],lr+=Ar,$t-=8);if(Ue===0)Ue=1-Ft;else{if(Ue===Tt)return Ge?NaN:1/0*(zr?-1:1);Ge+=Math.pow(2,pe),Ue-=Ft}return(zr?-1:1)*Ge*Math.pow(2,Ue-pe)},om=function(q,D,Y,pe,Ce,Ue){var Ge,ut,Tt,Ft=8*Ue-Ce-1,$t=(1<<Ft)-1,lr=$t>>1,Ar=Ce===23?Math.pow(2,-24)-Math.pow(2,-77):0,zr=pe?0:Ue-1,Kr=pe?1:-1,la=D<0||D===0&&1/D<0?1:0;for(D=Math.abs(D),isNaN(D)||D===1/0?(ut=isNaN(D)?1:0,Ge=$t):(Ge=Math.floor(Math.log(D)/Math.LN2),D*(Tt=Math.pow(2,-Ge))<1&&(Ge--,Tt*=2),(D+=Ge+lr>=1?Ar/Tt:Ar*Math.pow(2,1-lr))*Tt>=2&&(Ge++,Tt/=2),Ge+lr>=$t?(ut=0,Ge=$t):Ge+lr>=1?(ut=(D*Tt-1)*Math.pow(2,Ce),Ge+=lr):(ut=D*Math.pow(2,lr-1)*Math.pow(2,Ce),Ge=0));Ce>=8;q[Y+zr]=255&ut,zr+=Kr,ut/=256,Ce-=8);for(Ge=Ge<<Ce|ut,Ft+=Ce;Ft>0;q[Y+zr]=255&Ge,zr+=Kr,Ge/=256,Ft-=8);q[Y+zr-Kr]|=128*la};function Ql(q){this.buf=ArrayBuffer.isView&&ArrayBuffer.isView(q)?q:new Uint8Array(q||0),this.pos=0,this.type=0,this.length=this.buf.length}Ql.Varint=0,Ql.Fixed64=1,Ql.Bytes=2,Ql.Fixed32=5;var xg=4294967296,sv=1/xg,y0=typeof TextDecoder>"u"?null:new TextDecoder("utf-8");function kp(q){return q.type===Ql.Bytes?q.readVarint()+q.pos:q.pos+1}function lv(q,D,Y){return Y?4294967296*D+(q>>>0):4294967296*(D>>>0)+(q>>>0)}function _0(q,D,Y){var pe=D<=16383?1:D<=2097151?2:D<=268435455?3:Math.floor(Math.log(D)/(7*Math.LN2));Y.realloc(pe);for(var Ce=Y.pos-1;Ce>=q;Ce--)Y.buf[Ce+pe]=Y.buf[Ce]}function bg(q,D){for(var Y=0;Y<q.length;Y++)D.writeVarint(q[Y])}function NT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSVarint(q[Y])}function UT(q,D){for(var Y=0;Y<q.length;Y++)D.writeFloat(q[Y])}function jT(q,D){for(var Y=0;Y<q.length;Y++)D.writeDouble(q[Y])}function VT(q,D){for(var Y=0;Y<q.length;Y++)D.writeBoolean(q[Y])}function cC(q,D){for(var Y=0;Y<q.length;Y++)D.writeFixed32(q[Y])}function qT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSFixed32(q[Y])}function HT(q,D){for(var Y=0;Y<q.length;Y++)D.writeFixed64(q[Y])}function GT(q,D){for(var Y=0;Y<q.length;Y++)D.writeSFixed64(q[Y])}function Rv(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+16777216*q[D+3]}function wg(q,D,Y){q[Y]=D,q[Y+1]=D>>>8,q[Y+2]=D>>>16,q[Y+3]=D>>>24}function kx(q,D){return(q[D]|q[D+1]<<8|q[D+2]<<16)+(q[D+3]<<24)}Ql.prototype={destroy:function(){this.buf=null},readFields:function(q,D,Y){for(Y=Y||this.length;this.pos<Y;){var pe=this.readVarint(),Ce=pe>>3,Ue=this.pos;this.type=7&pe,q(Ce,D,this),this.pos===Ue&&this.skip(pe)}return D},readMessage:function(q,D){return this.readFields(q,D,this.readVarint()+this.pos)},readFixed32:function(){var q=Rv(this.buf,this.pos);return this.pos+=4,q},readSFixed32:function(){var q=kx(this.buf,this.pos);return this.pos+=4,q},readFixed64:function(){var q=Rv(this.buf,this.pos)+Rv(this.buf,this.pos+4)*xg;return this.pos+=8,q},readSFixed64:function(){var q=Rv(this.buf,this.pos)+kx(this.buf,this.pos+4)*xg;return this.pos+=8,q},readFloat:function(){var q=Iv(this.buf,this.pos,!0,23,4);return this.pos+=4,q},readDouble:function(){var q=Iv(this.buf,this.pos,!0,52,8);return this.pos+=8,q},readVarint:function(q){var D,Y,pe=this.buf;return D=127&(Y=pe[this.pos++]),Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<7,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<14,Y<128?D:(D|=(127&(Y=pe[this.pos++]))<<21,Y<128?D:function(Ce,Ue,Ge){var ut,Tt,Ft=Ge.buf;if(ut=(112&(Tt=Ft[Ge.pos++]))>>4,Tt<128||(ut|=(127&(Tt=Ft[Ge.pos++]))<<3,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<10,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<17,Tt<128)||(ut|=(127&(Tt=Ft[Ge.pos++]))<<24,Tt<128)||(ut|=(1&(Tt=Ft[Ge.pos++]))<<31,Tt<128))return lv(Ce,ut,Ue);throw new Error("Expected varint not more than 10 bytes")}(D|=(15&(Y=pe[this.pos]))<<28,q,this))))},readVarint64:function(){return this.readVarint(!0)},readSVarint:function(){var q=this.readVarint();return q%2==1?(q+1)/-2:q/2},readBoolean:function(){return!!this.readVarint()},readString:function(){var q=this.readVarint()+this.pos,D=this.pos;return this.pos=q,q-D>=12&&y0?function(Y,pe,Ce){return y0.decode(Y.subarray(pe,Ce))}(this.buf,D,q):function(Y,pe,Ce){for(var Ue="",Ge=pe;Ge<Ce;){var ut,Tt,Ft,$t=Y[Ge],lr=null,Ar=$t>239?4:$t>223?3:$t>191?2:1;if(Ge+Ar>Ce)break;Ar===1?$t<128&&(lr=$t):Ar===2?(192&(ut=Y[Ge+1]))==128&&(lr=(31&$t)<<6|63&ut)<=127&&(lr=null):Ar===3?(Tt=Y[Ge+2],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&((lr=(15&$t)<<12|(63&ut)<<6|63&Tt)<=2047||lr>=55296&&lr<=57343)&&(lr=null)):Ar===4&&(Tt=Y[Ge+2],Ft=Y[Ge+3],(192&(ut=Y[Ge+1]))==128&&(192&Tt)==128&&(192&Ft)==128&&((lr=(15&$t)<<18|(63&ut)<<12|(63&Tt)<<6|63&Ft)<=65535||lr>=1114112)&&(lr=null)),lr===null?(lr=65533,Ar=1):lr>65535&&(lr-=65536,Ue+=String.fromCharCode(lr>>>10&1023|55296),lr=56320|1023&lr),Ue+=String.fromCharCode(lr),Ge+=Ar}return Ue}(this.buf,D,q)},readBytes:function(){var q=this.readVarint()+this.pos,D=this.buf.subarray(this.pos,q);return this.pos=q,D},readPackedVarint:function(q,D){if(this.type!==Ql.Bytes)return q.push(this.readVarint(D));var Y=kp(this);for(q=q||[];this.pos<Y;)q.push(this.readVarint(D));return q},readPackedSVarint:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSVarint());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSVarint());return q},readPackedBoolean:function(q){if(this.type!==Ql.Bytes)return q.push(this.readBoolean());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readBoolean());return q},readPackedFloat:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFloat());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFloat());return q},readPackedDouble:function(q){if(this.type!==Ql.Bytes)return q.push(this.readDouble());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readDouble());return q},readPackedFixed32:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFixed32());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFixed32());return q},readPackedSFixed32:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSFixed32());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSFixed32());return q},readPackedFixed64:function(q){if(this.type!==Ql.Bytes)return q.push(this.readFixed64());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readFixed64());return q},readPackedSFixed64:function(q){if(this.type!==Ql.Bytes)return q.push(this.readSFixed64());var D=kp(this);for(q=q||[];this.pos<D;)q.push(this.readSFixed64());return q},skip:function(q){var D=7&q;if(D===Ql.Varint)for(;this.buf[this.pos++]>127;);else if(D===Ql.Bytes)this.pos=this.readVarint()+this.pos;else if(D===Ql.Fixed32)this.pos+=4;else{if(D!==Ql.Fixed64)throw new Error("Unimplemented type: "+D);this.pos+=8}},writeTag:function(q,D){this.writeVarint(q<<3|D)},realloc:function(q){for(var D=this.length||16;D<this.pos+q;)D*=2;if(D!==this.length){var Y=new Uint8Array(D);Y.set(this.buf),this.buf=Y,this.length=D}},finish:function(){return this.length=this.pos,this.pos=0,this.buf.subarray(0,this.length)},writeFixed32:function(q){this.realloc(4),wg(this.buf,q,this.pos),this.pos+=4},writeSFixed32:function(q){this.realloc(4),wg(this.buf,q,this.pos),this.pos+=4},writeFixed64:function(q){this.realloc(8),wg(this.buf,-1&q,this.pos),wg(this.buf,Math.floor(q*sv),this.pos+4),this.pos+=8},writeSFixed64:function(q){this.realloc(8),wg(this.buf,-1&q,this.pos),wg(this.buf,Math.floor(q*sv),this.pos+4),this.pos+=8},writeVarint:function(q){(q=+q||0)>268435455||q<0?function(D,Y){var pe,Ce;if(D>=0?(pe=D%4294967296|0,Ce=D/4294967296|0):(Ce=~(-D/4294967296),4294967295^(pe=~(-D%4294967296))?pe=pe+1|0:(pe=0,Ce=Ce+1|0)),D>=18446744073709552e3||D<-18446744073709552e3)throw new Error("Given varint doesn't fit into 10 bytes");Y.realloc(10),function(Ue,Ge,ut){ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,Ue>>>=7,ut.buf[ut.pos++]=127&Ue|128,ut.buf[ut.pos]=127&(Ue>>>=7)}(pe,0,Y),function(Ue,Ge){var ut=(7&Ue)<<4;Ge.buf[Ge.pos++]|=ut|((Ue>>>=3)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue|((Ue>>>=7)?128:0),Ue&&(Ge.buf[Ge.pos++]=127&Ue)))))}(Ce,Y)}(q,this):(this.realloc(4),this.buf[this.pos++]=127&q|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=127&(q>>>=7)|(q>127?128:0),q<=127||(this.buf[this.pos++]=q>>>7&127))))},writeSVarint:function(q){this.writeVarint(q<0?2*-q-1:2*q)},writeBoolean:function(q){this.writeVarint(!!q)},writeString:function(q){q=String(q),this.realloc(4*q.length),this.pos++;var D=this.pos;this.pos=function(pe,Ce,Ue){for(var Ge,ut,Tt=0;Tt<Ce.length;Tt++){if((Ge=Ce.charCodeAt(Tt))>55295&&Ge<57344){if(!ut){Ge>56319||Tt+1===Ce.length?(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189):ut=Ge;continue}if(Ge<56320){pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=Ge;continue}Ge=ut-55296<<10|Ge-56320|65536,ut=null}else ut&&(pe[Ue++]=239,pe[Ue++]=191,pe[Ue++]=189,ut=null);Ge<128?pe[Ue++]=Ge:(Ge<2048?pe[Ue++]=Ge>>6|192:(Ge<65536?pe[Ue++]=Ge>>12|224:(pe[Ue++]=Ge>>18|240,pe[Ue++]=Ge>>12&63|128),pe[Ue++]=Ge>>6&63|128),pe[Ue++]=63&Ge|128)}return Ue}(this.buf,q,this.pos);var Y=this.pos-D;Y>=128&&_0(D,Y,this),this.pos=D-1,this.writeVarint(Y),this.pos+=Y},writeFloat:function(q){this.realloc(4),om(this.buf,q,this.pos,!0,23,4),this.pos+=4},writeDouble:function(q){this.realloc(8),om(this.buf,q,this.pos,!0,52,8),this.pos+=8},writeBytes:function(q){var D=q.length;this.writeVarint(D),this.realloc(D);for(var Y=0;Y<D;Y++)this.buf[this.pos++]=q[Y]},writeRawMessage:function(q,D){this.pos++;var Y=this.pos;q(D,this);var pe=this.pos-Y;pe>=128&&_0(Y,pe,this),this.pos=Y-1,this.writeVarint(pe),this.pos+=pe},writeMessage:function(q,D,Y){this.writeTag(q,Ql.Bytes),this.writeRawMessage(D,Y)},writePackedVarint:function(q,D){D.length&&this.writeMessage(q,bg,D)},writePackedSVarint:function(q,D){D.length&&this.writeMessage(q,NT,D)},writePackedBoolean:function(q,D){D.length&&this.writeMessage(q,VT,D)},writePackedFloat:function(q,D){D.length&&this.writeMessage(q,UT,D)},writePackedDouble:function(q,D){D.length&&this.writeMessage(q,jT,D)},writePackedFixed32:function(q,D){D.length&&this.writeMessage(q,cC,D)},writePackedSFixed32:function(q,D){D.length&&this.writeMessage(q,qT,D)},writePackedFixed64:function(q,D){D.length&&this.writeMessage(q,HT,D)},writePackedSFixed64:function(q,D){D.length&&this.writeMessage(q,GT,D)},writeBytesField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeBytes(D)},writeFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFixed32(D)},writeSFixed32Field:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeSFixed32(D)},writeFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeFixed64(D)},writeSFixed64Field:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeSFixed64(D)},writeVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeVarint(D)},writeSVarintField:function(q,D){this.writeTag(q,Ql.Varint),this.writeSVarint(D)},writeStringField:function(q,D){this.writeTag(q,Ql.Bytes),this.writeString(D)},writeFloatField:function(q,D){this.writeTag(q,Ql.Fixed32),this.writeFloat(D)},writeDoubleField:function(q,D){this.writeTag(q,Ql.Fixed64),this.writeDouble(D)},writeBooleanField:function(q,D){this.writeVarintField(q,!!D)}};var C1=r(Lh);let L1=3;function fC(q,D,Y){q===1&&Y.readMessage(WT,D)}function WT(q,D,Y){if(q===3){let{id:pe,bitmap:Ce,width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}=Y.readMessage(Cx,{});D.push({id:pe,bitmap:new rs({width:Ue+2*L1,height:Ge+2*L1},Ce),metrics:{width:Ue,height:Ge,left:ut,top:Tt,advance:Ft}})}}function Cx(q,D,Y){q===1?D.id=Y.readVarint():q===2?D.bitmap=Y.readBytes():q===3?D.width=Y.readVarint():q===4?D.height=Y.readVarint():q===5?D.left=Y.readSVarint():q===6?D.top=Y.readSVarint():q===7&&(D.advance=Y.readVarint())}let Lx=L1;function P1(q){let D=0,Y=0;for(let Ge of q)D+=Ge.w*Ge.h,Y=Math.max(Y,Ge.w);q.sort((Ge,ut)=>ut.h-Ge.h);let pe=[{x:0,y:0,w:Math.max(Math.ceil(Math.sqrt(D/.95)),Y),h:1/0}],Ce=0,Ue=0;for(let Ge of q)for(let ut=pe.length-1;ut>=0;ut--){let Tt=pe[ut];if(!(Ge.w>Tt.w||Ge.h>Tt.h)){if(Ge.x=Tt.x,Ge.y=Tt.y,Ue=Math.max(Ue,Ge.y+Ge.h),Ce=Math.max(Ce,Ge.x+Ge.w),Ge.w===Tt.w&&Ge.h===Tt.h){let Ft=pe.pop();ut<pe.length&&(pe[ut]=Ft)}else Ge.h===Tt.h?(Tt.x+=Ge.w,Tt.w-=Ge.w):Ge.w===Tt.w?(Tt.y+=Ge.h,Tt.h-=Ge.h):(pe.push({x:Tt.x+Ge.w,y:Tt.y,w:Tt.w-Ge.w,h:Ge.h}),Tt.y+=Ge.h,Tt.h-=Ge.h);break}}return{w:Ce,h:Ue,fill:D/(Ce*Ue)||0}}let Ph=1;class x0{constructor(D,{pixelRatio:Y,version:pe,stretchX:Ce,stretchY:Ue,content:Ge,textFitWidth:ut,textFitHeight:Tt}){this.paddedRect=D,this.pixelRatio=Y,this.stretchX=Ce,this.stretchY=Ue,this.content=Ge,this.version=pe,this.textFitWidth=ut,this.textFitHeight=Tt}get tl(){return[this.paddedRect.x+Ph,this.paddedRect.y+Ph]}get br(){return[this.paddedRect.x+this.paddedRect.w-Ph,this.paddedRect.y+this.paddedRect.h-Ph]}get tlbr(){return this.tl.concat(this.br)}get displaySize(){return[(this.paddedRect.w-2*Ph)/this.pixelRatio,(this.paddedRect.h-2*Ph)/this.pixelRatio]}}class b0{constructor(D,Y){let pe={},Ce={};this.haveRenderCallbacks=[];let Ue=[];this.addImages(D,pe,Ue),this.addImages(Y,Ce,Ue);let{w:Ge,h:ut}=P1(Ue),Tt=new wn({width:Ge||1,height:ut||1});for(let Ft in D){let $t=D[Ft],lr=pe[Ft].paddedRect;wn.copy($t.data,Tt,{x:0,y:0},{x:lr.x+Ph,y:lr.y+Ph},$t.data)}for(let Ft in Y){let $t=Y[Ft],lr=Ce[Ft].paddedRect,Ar=lr.x+Ph,zr=lr.y+Ph,Kr=$t.data.width,la=$t.data.height;wn.copy($t.data,Tt,{x:0,y:0},{x:Ar,y:zr},$t.data),wn.copy($t.data,Tt,{x:0,y:la-1},{x:Ar,y:zr-1},{width:Kr,height:1}),wn.copy($t.data,Tt,{x:0,y:0},{x:Ar,y:zr+la},{width:Kr,height:1}),wn.copy($t.data,Tt,{x:Kr-1,y:0},{x:Ar-1,y:zr},{width:1,height:la}),wn.copy($t.data,Tt,{x:0,y:0},{x:Ar+Kr,y:zr},{width:1,height:la})}this.image=Tt,this.iconPositions=pe,this.patternPositions=Ce}addImages(D,Y,pe){for(let Ce in D){let Ue=D[Ce],Ge={x:0,y:0,w:Ue.data.width+2*Ph,h:Ue.data.height+2*Ph};pe.push(Ge),Y[Ce]=new x0(Ge,Ue),Ue.hasRenderCallback&&this.haveRenderCallbacks.push(Ce)}}patchUpdatedImages(D,Y){D.dispatchRenderCallbacks(this.haveRenderCallbacks);for(let pe in D.updatedImages)this.patchUpdatedImage(this.iconPositions[pe],D.getImage(pe),Y),this.patchUpdatedImage(this.patternPositions[pe],D.getImage(pe),Y)}patchUpdatedImage(D,Y,pe){if(!D||!Y||D.version===Y.version)return;D.version=Y.version;let[Ce,Ue]=D.tl;pe.update(Y.data,void 0,{x:Ce,y:Ue})}}var Cp;ti("ImagePosition",x0),ti("ImageAtlas",b0),e.ah=void 0,(Cp=e.ah||(e.ah={}))[Cp.none=0]="none",Cp[Cp.horizontal=1]="horizontal",Cp[Cp.vertical=2]="vertical",Cp[Cp.horizontalOnly=3]="horizontalOnly";let Of=-17;class Tg{constructor(){this.scale=1,this.fontStack="",this.imageName=null}static forText(D,Y){let pe=new Tg;return pe.scale=D||1,pe.fontStack=Y,pe}static forImage(D){let Y=new Tg;return Y.imageName=D,Y}}class sm{constructor(){this.text="",this.sectionIndex=[],this.sections=[],this.imageSectionID=null}static fromFeature(D,Y){let pe=new sm;for(let Ce=0;Ce<D.sections.length;Ce++){let Ue=D.sections[Ce];Ue.image?pe.addImageSection(Ue):pe.addTextSection(Ue,Y)}return pe}length(){return this.text.length}getSection(D){return this.sections[this.sectionIndex[D]]}getSectionIndex(D){return this.sectionIndex[D]}getCharCode(D){return this.text.charCodeAt(D)}verticalizePunctuation(){this.text=function(D){let Y="";for(let pe=0;pe<D.length;pe++){let Ce=D.charCodeAt(pe+1)||null,Ue=D.charCodeAt(pe-1)||null;Y+=Ce&&Il(Ce)&&!Du[D[pe+1]]||Ue&&Il(Ue)&&!Du[D[pe-1]]||!Du[D[pe]]?D[pe]:Du[D[pe]]}return Y}(this.text)}trim(){let D=0;for(let pe=0;pe<this.text.length&&w0[this.text.charCodeAt(pe)];pe++)D++;let Y=this.text.length;for(let pe=this.text.length-1;pe>=0&&pe>=D&&w0[this.text.charCodeAt(pe)];pe--)Y--;this.text=this.text.substring(D,Y),this.sectionIndex=this.sectionIndex.slice(D,Y)}substring(D,Y){let pe=new sm;return pe.text=this.text.substring(D,Y),pe.sectionIndex=this.sectionIndex.slice(D,Y),pe.sections=this.sections,pe}toString(){return this.text}getMaxScale(){return this.sectionIndex.reduce((D,Y)=>Math.max(D,this.sections[Y].scale),0)}addTextSection(D,Y){this.text+=D.text,this.sections.push(Tg.forText(D.scale,D.fontStack||Y));let pe=this.sections.length-1;for(let Ce=0;Ce<D.text.length;++Ce)this.sectionIndex.push(pe)}addImageSection(D){let Y=D.image?D.image.name:"";if(Y.length===0)return void f("Can't add FormattedSection with an empty image.");let pe=this.getNextImageSectionCharCode();pe?(this.text+=String.fromCharCode(pe),this.sections.push(Tg.forImage(Y)),this.sectionIndex.push(this.sections.length-1)):f("Reached maximum number of images 6401")}getNextImageSectionCharCode(){return this.imageSectionID?this.imageSectionID>=63743?null:++this.imageSectionID:(this.imageSectionID=57344,this.imageSectionID)}}function Ag(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=sm.fromFeature(q,Ce),za;lr===e.ah.vertical&&la.verticalizePunctuation();let{processBidirectionalText:ja,processStyledBidirectionalText:gi}=js;if(ja&&la.sections.length===1){za=[];let Ei=ja(la.toString(),lm(la,Ft,Ue,D,pe,zr));for(let En of Ei){let fo=new sm;fo.text=En,fo.sections=la.sections;for(let ss=0;ss<En.length;ss++)fo.sectionIndex.push(0);za.push(fo)}}else if(gi){za=[];let Ei=gi(la.text,la.sectionIndex,lm(la,Ft,Ue,D,pe,zr));for(let En of Ei){let fo=new sm;fo.text=En[0],fo.sectionIndex=En[1],fo.sections=la.sections,za.push(fo)}}else za=function(Ei,En){let fo=[],ss=Ei.text,eo=0;for(let vn of En)fo.push(Ei.substring(eo,vn)),eo=vn;return eo<ss.length&&fo.push(Ei.substring(eo,ss.length)),fo}(la,lm(la,Ft,Ue,D,pe,zr));let ei=[],hi={positionedLines:ei,text:la.toString(),top:$t[1],bottom:$t[1],left:$t[0],right:$t[0],writingMode:lr,iconsInText:!1,verticalizable:!1};return function(Ei,En,fo,ss,eo,vn,Uo,Mo,xo,Yi,Ko,bo){let gs=0,_u=Of,pu=0,Bf=0,Gp=Mo==="right"?1:Mo==="left"?0:.5,dh=0;for(let Hc of eo){Hc.trim();let Uf=Hc.getMaxScale(),Ih=(Uf-1)*Bl,vh={positionedGlyphs:[],lineOffset:0};Ei.positionedLines[dh]=vh;let th=vh.positionedGlyphs,nf=0;if(!Hc.length()){_u+=vn,++dh;continue}for(let pp=0;pp<Hc.length();pp++){let Nl=Hc.getSection(pp),zu=Hc.getSectionIndex(pp),xu=Hc.getCharCode(pp),Pp=0,Ec=null,dm=null,_d=null,hd=Bl,Wp=!(xo===e.ah.horizontal||!Ko&&!vs(xu)||Ko&&(w0[xu]||(Nf=xu,new RegExp("\\p{sc=Arab}","u").test(String.fromCodePoint(Nf)))));if(Nl.imageName){let tc=ss[Nl.imageName];if(!tc)continue;_d=Nl.imageName,Ei.iconsInText=Ei.iconsInText||!0,dm=tc.paddedRect;let gf=tc.displaySize;Nl.scale=Nl.scale*Bl/bo,Ec={width:gf[0],height:gf[1],left:Ph,top:-Lx,advance:Wp?gf[1]:gf[0]},Pp=Ih+(Bl-gf[1]*Nl.scale),hd=Ec.advance;let Zp=Wp?gf[0]*Nl.scale-Bl*Uf:gf[1]*Nl.scale-Bl*Uf;Zp>0&&Zp>nf&&(nf=Zp)}else{let tc=fo[Nl.fontStack],gf=tc&&tc[xu];if(gf&&gf.rect)dm=gf.rect,Ec=gf.metrics;else{let Zp=En[Nl.fontStack],Xd=Zp&&Zp[xu];if(!Xd)continue;Ec=Xd.metrics}Pp=(Uf-Nl.scale)*Bl}Wp?(Ei.verticalizable=!0,th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=hd*Nl.scale+Yi):(th.push({glyph:xu,imageName:_d,x:gs,y:_u+Pp,vertical:Wp,scale:Nl.scale,fontStack:Nl.fontStack,sectionIndex:zu,metrics:Ec,rect:dm}),gs+=Ec.advance*Nl.scale+Yi)}th.length!==0&&(pu=Math.max(gs-Yi,pu),uv(th,0,th.length-1,Gp,nf)),gs=0;let Lp=vn*Uf+nf;vh.lineOffset=Math.max(nf,Ih),_u+=Lp,Bf=Math.max(Lp,Bf),++dh}var Nf;let Yh=_u-Of,{horizontalAlign:Kh,verticalAlign:Jh}=A0(Uo);(function(Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl){let zu=(Uf-Ih)*th,xu=0;xu=nf!==Lp?-pp*vh-Of:(-vh*Nl+.5)*Lp;for(let Pp of Hc)for(let Ec of Pp.positionedGlyphs)Ec.x+=zu,Ec.y+=xu})(Ei.positionedLines,Gp,Kh,Jh,pu,Bf,vn,Yh,eo.length),Ei.top+=-Jh*Yh,Ei.bottom=Ei.top+Yh,Ei.left+=-Kh*pu,Ei.right=Ei.left+pu}(hi,D,Y,pe,za,Ge,ut,Tt,lr,Ft,Ar,Kr),!function(Ei){for(let En of Ei)if(En.positionedGlyphs.length!==0)return!1;return!0}(ei)&&hi}let w0={9:!0,10:!0,11:!0,12:!0,13:!0,32:!0},ZT={10:!0,32:!0,38:!0,41:!0,43:!0,45:!0,47:!0,173:!0,183:!0,8203:!0,8208:!0,8211:!0,8231:!0},XT={40:!0};function Px(q,D,Y,pe,Ce,Ue){if(D.imageName){let Ge=pe[D.imageName];return Ge?Ge.displaySize[0]*D.scale*Bl/Ue+Ce:0}{let Ge=Y[D.fontStack],ut=Ge&&Ge[q];return ut?ut.metrics.advance*D.scale+Ce:0}}function Ix(q,D,Y,pe){let Ce=Math.pow(q-D,2);return pe?q<D?Ce/2:2*Ce:Ce+Math.abs(Y)*Y}function YT(q,D,Y){let pe=0;return q===10&&(pe-=1e4),Y&&(pe+=150),q!==40&&q!==65288||(pe+=50),D!==41&&D!==65289||(pe+=50),pe}function T0(q,D,Y,pe,Ce,Ue){let Ge=null,ut=Ix(D,Y,Ce,Ue);for(let Tt of pe){let Ft=Ix(D-Tt.x,Y,Ce,Ue)+Tt.badness;Ft<=ut&&(Ge=Tt,ut=Ft)}return{index:q,x:D,priorBreak:Ge,badness:ut}}function Rx(q){return q?Rx(q.priorBreak).concat(q.index):[]}function lm(q,D,Y,pe,Ce,Ue){if(!q)return[];let Ge=[],ut=function(lr,Ar,zr,Kr,la,za){let ja=0;for(let gi=0;gi<lr.length();gi++){let ei=lr.getSection(gi);ja+=Px(lr.getCharCode(gi),ei,Kr,la,Ar,za)}return ja/Math.max(1,Math.ceil(ja/zr))}(q,D,Y,pe,Ce,Ue),Tt=q.text.indexOf("\u200B")>=0,Ft=0;for(let lr=0;lr<q.length();lr++){let Ar=q.getSection(lr),zr=q.getCharCode(lr);if(w0[zr]||(Ft+=Px(zr,Ar,pe,Ce,D,Ue)),lr<q.length()-1){let Kr=!(($t=zr)<11904)&&(!!Ri["CJK Compatibility Forms"]($t)||!!Ri["CJK Compatibility"]($t)||!!Ri["CJK Strokes"]($t)||!!Ri["CJK Symbols and Punctuation"]($t)||!!Ri["Enclosed CJK Letters and Months"]($t)||!!Ri["Halfwidth and Fullwidth Forms"]($t)||!!Ri["Ideographic Description Characters"]($t)||!!Ri["Vertical Forms"]($t)||Hs.test(String.fromCodePoint($t)));(ZT[zr]||Kr||Ar.imageName||lr!==q.length()-2&&XT[q.getCharCode(lr+1)])&&Ge.push(T0(lr+1,Ft,ut,Ge,YT(zr,q.getCharCode(lr+1),Kr&&Tt),!1))}}var $t;return Rx(T0(q.length(),Ft,ut,Ge,0,!0))}function A0(q){let D=.5,Y=.5;switch(q){case"right":case"top-right":case"bottom-right":D=1;break;case"left":case"top-left":case"bottom-left":D=0}switch(q){case"bottom":case"bottom-right":case"bottom-left":Y=1;break;case"top":case"top-right":case"top-left":Y=0}return{horizontalAlign:D,verticalAlign:Y}}function uv(q,D,Y,pe,Ce){if(!pe&&!Ce)return;let Ue=q[Y],Ge=(q[Y].x+Ue.metrics.advance*Ue.scale)*pe;for(let ut=D;ut<=Y;ut++)q[ut].x-=Ge,q[ut].y+=Ce}function Sg(q,D,Y){let{horizontalAlign:pe,verticalAlign:Ce}=A0(Y),Ue=D[0]-q.displaySize[0]*pe,Ge=D[1]-q.displaySize[1]*Ce;return{image:q,top:Ge,bottom:Ge+q.displaySize[1],left:Ue,right:Ue+q.displaySize[0]}}function Dx(q){var D,Y;let pe=q.left,Ce=q.top,Ue=q.right-pe,Ge=q.bottom-Ce,ut=(D=q.image.textFitWidth)!==null&&D!==void 0?D:"stretchOrShrink",Tt=(Y=q.image.textFitHeight)!==null&&Y!==void 0?Y:"stretchOrShrink",Ft=(q.image.content[2]-q.image.content[0])/(q.image.content[3]-q.image.content[1]);if(Tt==="proportional"){if(ut==="stretchOnly"&&Ue/Ge<Ft||ut==="proportional"){let $t=Math.ceil(Ge*Ft);pe*=$t/Ue,Ue=$t}}else if(ut==="proportional"&&Tt==="stretchOnly"&&Ft!==0&&Ue/Ge>Ft){let $t=Math.ceil(Ue/Ft);Ce*=$t/Ge,Ge=$t}return{x1:pe,y1:Ce,x2:pe+Ue,y2:Ce+Ge}}function zx(q,D,Y,pe,Ce,Ue){let Ge=q.image,ut;if(Ge.content){let za=Ge.content,ja=Ge.pixelRatio||1;ut=[za[0]/ja,za[1]/ja,Ge.displaySize[0]-za[2]/ja,Ge.displaySize[1]-za[3]/ja]}let Tt=D.left*Ue,Ft=D.right*Ue,$t,lr,Ar,zr;Y==="width"||Y==="both"?(zr=Ce[0]+Tt-pe[3],lr=Ce[0]+Ft+pe[1]):(zr=Ce[0]+(Tt+Ft-Ge.displaySize[0])/2,lr=zr+Ge.displaySize[0]);let Kr=D.top*Ue,la=D.bottom*Ue;return Y==="height"||Y==="both"?($t=Ce[1]+Kr-pe[0],Ar=Ce[1]+la+pe[2]):($t=Ce[1]+(Kr+la-Ge.displaySize[1])/2,Ar=$t+Ge.displaySize[1]),{image:Ge,top:$t,right:lr,bottom:Ar,left:zr,collisionPadding:ut}}let Mg=255,yd=128,cv=Mg*yd;function Fx(q,D){let{expression:Y}=D;if(Y.kind==="constant")return{kind:"constant",layoutSize:Y.evaluate(new Ts(q+1))};if(Y.kind==="source")return{kind:"source"};{let{zoomStops:pe,interpolationType:Ce}=Y,Ue=0;for(;Ue<pe.length&&pe[Ue]<=q;)Ue++;Ue=Math.max(0,Ue-1);let Ge=Ue;for(;Ge<pe.length&&pe[Ge]<q+1;)Ge++;Ge=Math.min(pe.length-1,Ge);let ut=pe[Ue],Tt=pe[Ge];return Y.kind==="composite"?{kind:"composite",minZoom:ut,maxZoom:Tt,interpolationType:Ce}:{kind:"camera",minZoom:ut,maxZoom:Tt,minSize:Y.evaluate(new Ts(ut)),maxSize:Y.evaluate(new Ts(Tt)),interpolationType:Ce}}}function I1(q,D,Y){let pe="never",Ce=q.get(D);return Ce?pe=Ce:q.get(Y)&&(pe="always"),pe}let KT=Oa.VectorTileFeature.types,JT=[{name:"a_fade_opacity",components:1,type:"Uint8",offset:0}];function S0(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=ut?Math.min(cv,Math.round(ut[0])):0,Kr=ut?Math.min(cv,Math.round(ut[1])):0;q.emplaceBack(D,Y,Math.round(32*pe),Math.round(32*Ce),Ue,Ge,(zr<<1)+(Tt?1:0),Kr,16*Ft,16*$t,256*lr,256*Ar)}function R1(q,D,Y){q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y),q.emplaceBack(D.x,D.y,Y)}function D1(q){for(let D of q.sections)if(Ao(D.text))return!0;return!1}class z1{constructor(D){this.layoutVertexArray=new ou,this.indexArray=new Re,this.programConfigurations=D,this.segments=new wt,this.dynamicLayoutVertexArray=new Sc,this.opacityVertexArray=new ql,this.hasVisibleVertices=!1,this.placedSymbolArray=new Bn}isEmpty(){return this.layoutVertexArray.length===0&&this.indexArray.length===0&&this.dynamicLayoutVertexArray.length===0&&this.opacityVertexArray.length===0}upload(D,Y,pe,Ce){this.isEmpty()||(pe&&(this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,iv.members),this.indexBuffer=D.createIndexBuffer(this.indexArray,Y),this.dynamicLayoutVertexBuffer=D.createVertexBuffer(this.dynamicLayoutVertexArray,im.members,!0),this.opacityVertexBuffer=D.createVertexBuffer(this.opacityVertexArray,JT,!0),this.opacityVertexBuffer.itemSize=1),(pe||Ce)&&this.programConfigurations.upload(D))}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.programConfigurations.destroy(),this.segments.destroy(),this.dynamicLayoutVertexBuffer.destroy(),this.opacityVertexBuffer.destroy())}}ti("SymbolBuffers",z1);class fv{constructor(D,Y,pe){this.layoutVertexArray=new D,this.layoutAttributes=Y,this.indexArray=new pe,this.segments=new wt,this.collisionVertexArray=new de}upload(D){this.layoutVertexBuffer=D.createVertexBuffer(this.layoutVertexArray,this.layoutAttributes),this.indexBuffer=D.createIndexBuffer(this.indexArray),this.collisionVertexBuffer=D.createVertexBuffer(this.collisionVertexArray,nm.members,!0)}destroy(){this.layoutVertexBuffer&&(this.layoutVertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.collisionVertexBuffer.destroy())}}ti("CollisionBuffers",fv);class um{constructor(D){this.collisionBoxArray=D.collisionBoxArray,this.zoom=D.zoom,this.overscaling=D.overscaling,this.layers=D.layers,this.layerIds=this.layers.map(Ge=>Ge.id),this.index=D.index,this.pixelRatio=D.pixelRatio,this.sourceLayerIndex=D.sourceLayerIndex,this.hasPattern=!1,this.hasRTLText=!1,this.sortKeyRanges=[],this.collisionCircleArray=[],this.placementInvProjMatrix=pn([]),this.placementViewportMatrix=pn([]);let Y=this.layers[0]._unevaluatedLayout._values;this.textSizeData=Fx(this.zoom,Y["text-size"]),this.iconSizeData=Fx(this.zoom,Y["icon-size"]);let pe=this.layers[0].layout,Ce=pe.get("symbol-sort-key"),Ue=pe.get("symbol-z-order");this.canOverlap=I1(pe,"text-overlap","text-allow-overlap")!=="never"||I1(pe,"icon-overlap","icon-allow-overlap")!=="never"||pe.get("text-ignore-placement")||pe.get("icon-ignore-placement"),this.sortFeaturesByKey=Ue!=="viewport-y"&&!Ce.isConstant(),this.sortFeaturesByY=(Ue==="viewport-y"||Ue==="auto"&&!this.sortFeaturesByKey)&&this.canOverlap,pe.get("symbol-placement")==="point"&&(this.writingModes=pe.get("text-writing-mode").map(Ge=>e.ah[Ge])),this.stateDependentLayerIds=this.layers.filter(Ge=>Ge.isStateDependent()).map(Ge=>Ge.id),this.sourceID=D.sourceID}createArrays(){this.text=new z1(new Gs(this.layers,this.zoom,D=>/^text/.test(D))),this.icon=new z1(new Gs(this.layers,this.zoom,D=>/^icon/.test(D))),this.glyphOffsetArray=new ts,this.lineVertexArray=new yo,this.symbolInstances=new ho,this.textAnchorOffsets=new ls}calculateGlyphDependencies(D,Y,pe,Ce,Ue){for(let Ge=0;Ge<D.length;Ge++)if(Y[D.charCodeAt(Ge)]=!0,(pe||Ce)&&Ue){let ut=Du[D.charAt(Ge)];ut&&(Y[ut.charCodeAt(0)]=!0)}}populate(D,Y,pe){let Ce=this.layers[0],Ue=Ce.layout,Ge=Ue.get("text-font"),ut=Ue.get("text-field"),Tt=Ue.get("icon-image"),Ft=(ut.value.kind!=="constant"||ut.value.value instanceof pa&&!ut.value.value.isEmpty()||ut.value.value.toString().length>0)&&(Ge.value.kind!=="constant"||Ge.value.value.length>0),$t=Tt.value.kind!=="constant"||!!Tt.value.value||Object.keys(Tt.parameters).length>0,lr=Ue.get("symbol-sort-key");if(this.features=[],!Ft&&!$t)return;let Ar=Y.iconDependencies,zr=Y.glyphDependencies,Kr=Y.availableImages,la=new Ts(this.zoom);for(let{feature:za,id:ja,index:gi,sourceLayerIndex:ei}of D){let hi=Ce._featureFilter.needGeometry,Ei=Dl(za,hi);if(!Ce._featureFilter.filter(la,Ei,pe))continue;let En,fo;if(hi||(Ei.geometry=hl(za)),Ft){let eo=Ce.getValueAndResolveTokens("text-field",Ei,pe,Kr),vn=pa.factory(eo),Uo=this.hasRTLText=this.hasRTLText||D1(vn);(!Uo||js.getRTLTextPluginStatus()==="unavailable"||Uo&&js.isParsed())&&(En=ov(vn,Ce,Ei))}if($t){let eo=Ce.getValueAndResolveTokens("icon-image",Ei,pe,Kr);fo=eo instanceof qa?eo:qa.fromString(eo)}if(!En&&!fo)continue;let ss=this.sortFeaturesByKey?lr.evaluate(Ei,{},pe):void 0;if(this.features.push({id:ja,text:En,icon:fo,index:gi,sourceLayerIndex:ei,geometry:Ei.geometry,properties:za.properties,type:KT[za.type],sortKey:ss}),fo&&(Ar[fo.name]=!0),En){let eo=Ge.evaluate(Ei,{},pe).join(","),vn=Ue.get("text-rotation-alignment")!=="viewport"&&Ue.get("symbol-placement")!=="point";this.allowVerticalPlacement=this.writingModes&&this.writingModes.indexOf(e.ah.vertical)>=0;for(let Uo of En.sections)if(Uo.image)Ar[Uo.image.name]=!0;else{let Mo=co(En.toString()),xo=Uo.fontStack||eo,Yi=zr[xo]=zr[xo]||{};this.calculateGlyphDependencies(Uo.text,Yi,vn,this.allowVerticalPlacement,Mo)}}}Ue.get("symbol-placement")==="line"&&(this.features=function(za){let ja={},gi={},ei=[],hi=0;function Ei(eo){ei.push(za[eo]),hi++}function En(eo,vn,Uo){let Mo=gi[eo];return delete gi[eo],gi[vn]=Mo,ei[Mo].geometry[0].pop(),ei[Mo].geometry[0]=ei[Mo].geometry[0].concat(Uo[0]),Mo}function fo(eo,vn,Uo){let Mo=ja[vn];return delete ja[vn],ja[eo]=Mo,ei[Mo].geometry[0].shift(),ei[Mo].geometry[0]=Uo[0].concat(ei[Mo].geometry[0]),Mo}function ss(eo,vn,Uo){let Mo=Uo?vn[0][vn[0].length-1]:vn[0][0];return`${eo}:${Mo.x}:${Mo.y}`}for(let eo=0;eo<za.length;eo++){let vn=za[eo],Uo=vn.geometry,Mo=vn.text?vn.text.toString():null;if(!Mo){Ei(eo);continue}let xo=ss(Mo,Uo),Yi=ss(Mo,Uo,!0);if(xo in gi&&Yi in ja&&gi[xo]!==ja[Yi]){let Ko=fo(xo,Yi,Uo),bo=En(xo,Yi,ei[Ko].geometry);delete ja[xo],delete gi[Yi],gi[ss(Mo,ei[bo].geometry,!0)]=bo,ei[Ko].geometry=null}else xo in gi?En(xo,Yi,Uo):Yi in ja?fo(xo,Yi,Uo):(Ei(eo),ja[xo]=hi-1,gi[Yi]=hi-1)}return ei.filter(eo=>eo.geometry)}(this.features)),this.sortFeaturesByKey&&this.features.sort((za,ja)=>za.sortKey-ja.sortKey)}update(D,Y,pe){this.stateDependentLayers.length&&(this.text.programConfigurations.updatePaintArrays(D,Y,this.layers,pe),this.icon.programConfigurations.updatePaintArrays(D,Y,this.layers,pe))}isEmpty(){return this.symbolInstances.length===0&&!this.hasRTLText}uploadPending(){return!this.uploaded||this.text.programConfigurations.needsUpload||this.icon.programConfigurations.needsUpload}upload(D){!this.uploaded&&this.hasDebugData()&&(this.textCollisionBox.upload(D),this.iconCollisionBox.upload(D)),this.text.upload(D,this.sortFeaturesByY,!this.uploaded,this.text.programConfigurations.needsUpload),this.icon.upload(D,this.sortFeaturesByY,!this.uploaded,this.icon.programConfigurations.needsUpload),this.uploaded=!0}destroyDebugData(){this.textCollisionBox.destroy(),this.iconCollisionBox.destroy()}destroy(){this.text.destroy(),this.icon.destroy(),this.hasDebugData()&&this.destroyDebugData()}addToLineVertexArray(D,Y){let pe=this.lineVertexArray.length;if(D.segment!==void 0){let Ce=D.dist(Y[D.segment+1]),Ue=D.dist(Y[D.segment]),Ge={};for(let ut=D.segment+1;ut<Y.length;ut++)Ge[ut]={x:Y[ut].x,y:Y[ut].y,tileUnitDistanceFromAnchor:Ce},ut<Y.length-1&&(Ce+=Y[ut+1].dist(Y[ut]));for(let ut=D.segment||0;ut>=0;ut--)Ge[ut]={x:Y[ut].x,y:Y[ut].y,tileUnitDistanceFromAnchor:Ue},ut>0&&(Ue+=Y[ut-1].dist(Y[ut]));for(let ut=0;ut<Y.length;ut++){let Tt=Ge[ut];this.lineVertexArray.emplaceBack(Tt.x,Tt.y,Tt.tileUnitDistanceFromAnchor)}}return{lineStartIndex:pe,lineLength:this.lineVertexArray.length-pe}}addSymbols(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar){let zr=D.indexArray,Kr=D.layoutVertexArray,la=D.segments.prepareSegment(4*Y.length,Kr,zr,this.canOverlap?Ge.sortKey:void 0),za=this.glyphOffsetArray.length,ja=la.vertexLength,gi=this.allowVerticalPlacement&&ut===e.ah.vertical?Math.PI/2:0,ei=Ge.text&&Ge.text.sections;for(let hi=0;hi<Y.length;hi++){let{tl:Ei,tr:En,bl:fo,br:ss,tex:eo,pixelOffsetTL:vn,pixelOffsetBR:Uo,minFontScaleX:Mo,minFontScaleY:xo,glyphOffset:Yi,isSDF:Ko,sectionIndex:bo}=Y[hi],gs=la.vertexLength,_u=Yi[1];S0(Kr,Tt.x,Tt.y,Ei.x,_u+Ei.y,eo.x,eo.y,pe,Ko,vn.x,vn.y,Mo,xo),S0(Kr,Tt.x,Tt.y,En.x,_u+En.y,eo.x+eo.w,eo.y,pe,Ko,Uo.x,vn.y,Mo,xo),S0(Kr,Tt.x,Tt.y,fo.x,_u+fo.y,eo.x,eo.y+eo.h,pe,Ko,vn.x,Uo.y,Mo,xo),S0(Kr,Tt.x,Tt.y,ss.x,_u+ss.y,eo.x+eo.w,eo.y+eo.h,pe,Ko,Uo.x,Uo.y,Mo,xo),R1(D.dynamicLayoutVertexArray,Tt,gi),zr.emplaceBack(gs,gs+1,gs+2),zr.emplaceBack(gs+1,gs+2,gs+3),la.vertexLength+=4,la.primitiveLength+=2,this.glyphOffsetArray.emplaceBack(Yi[0]),hi!==Y.length-1&&bo===Y[hi+1].sectionIndex||D.programConfigurations.populatePaintArrays(Kr.length,Ge,Ge.index,{},Ar,ei&&ei[bo])}D.placedSymbolArray.emplaceBack(Tt.x,Tt.y,za,this.glyphOffsetArray.length-za,ja,Ft,$t,Tt.segment,pe?pe[0]:0,pe?pe[1]:0,Ce[0],Ce[1],ut,0,!1,0,lr)}_addCollisionDebugVertex(D,Y,pe,Ce,Ue,Ge){return Y.emplaceBack(0,0),D.emplaceBack(pe.x,pe.y,Ce,Ue,Math.round(Ge.x),Math.round(Ge.y))}addCollisionDebugVertices(D,Y,pe,Ce,Ue,Ge,ut){let Tt=Ue.segments.prepareSegment(4,Ue.layoutVertexArray,Ue.indexArray),Ft=Tt.vertexLength,$t=Ue.layoutVertexArray,lr=Ue.collisionVertexArray,Ar=ut.anchorX,zr=ut.anchorY;this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(D,Y)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(pe,Y)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(pe,Ce)),this._addCollisionDebugVertex($t,lr,Ge,Ar,zr,new i(D,Ce)),Tt.vertexLength+=4;let Kr=Ue.indexArray;Kr.emplaceBack(Ft,Ft+1),Kr.emplaceBack(Ft+1,Ft+2),Kr.emplaceBack(Ft+2,Ft+3),Kr.emplaceBack(Ft+3,Ft),Tt.primitiveLength+=4}addDebugCollisionBoxes(D,Y,pe,Ce){for(let Ue=D;Ue<Y;Ue++){let Ge=this.collisionBoxArray.get(Ue);this.addCollisionDebugVertices(Ge.x1,Ge.y1,Ge.x2,Ge.y2,Ce?this.textCollisionBox:this.iconCollisionBox,Ge.anchorPoint,pe)}}generateCollisionDebugBuffers(){this.hasDebugData()&&this.destroyDebugData(),this.textCollisionBox=new fv(Hl,Pv.members,$e),this.iconCollisionBox=new fv(Hl,Pv.members,$e);for(let D=0;D<this.symbolInstances.length;D++){let Y=this.symbolInstances.get(D);this.addDebugCollisionBoxes(Y.textBoxStartIndex,Y.textBoxEndIndex,Y,!0),this.addDebugCollisionBoxes(Y.verticalTextBoxStartIndex,Y.verticalTextBoxEndIndex,Y,!0),this.addDebugCollisionBoxes(Y.iconBoxStartIndex,Y.iconBoxEndIndex,Y,!1),this.addDebugCollisionBoxes(Y.verticalIconBoxStartIndex,Y.verticalIconBoxEndIndex,Y,!1)}}_deserializeCollisionBoxesForSymbol(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft){let $t={};for(let lr=Y;lr<pe;lr++){let Ar=D.get(lr);$t.textBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.textFeatureIndex=Ar.featureIndex;break}for(let lr=Ce;lr<Ue;lr++){let Ar=D.get(lr);$t.verticalTextBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.verticalTextFeatureIndex=Ar.featureIndex;break}for(let lr=Ge;lr<ut;lr++){let Ar=D.get(lr);$t.iconBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.iconFeatureIndex=Ar.featureIndex;break}for(let lr=Tt;lr<Ft;lr++){let Ar=D.get(lr);$t.verticalIconBox={x1:Ar.x1,y1:Ar.y1,x2:Ar.x2,y2:Ar.y2,anchorPointX:Ar.anchorPointX,anchorPointY:Ar.anchorPointY},$t.verticalIconFeatureIndex=Ar.featureIndex;break}return $t}deserializeCollisionBoxes(D){this.collisionArrays=[];for(let Y=0;Y<this.symbolInstances.length;Y++){let pe=this.symbolInstances.get(Y);this.collisionArrays.push(this._deserializeCollisionBoxesForSymbol(D,pe.textBoxStartIndex,pe.textBoxEndIndex,pe.verticalTextBoxStartIndex,pe.verticalTextBoxEndIndex,pe.iconBoxStartIndex,pe.iconBoxEndIndex,pe.verticalIconBoxStartIndex,pe.verticalIconBoxEndIndex))}}hasTextData(){return this.text.segments.get().length>0}hasIconData(){return this.icon.segments.get().length>0}hasDebugData(){return this.textCollisionBox&&this.iconCollisionBox}hasTextCollisionBoxData(){return this.hasDebugData()&&this.textCollisionBox.segments.get().length>0}hasIconCollisionBoxData(){return this.hasDebugData()&&this.iconCollisionBox.segments.get().length>0}addIndicesForPlacedSymbol(D,Y){let pe=D.placedSymbolArray.get(Y),Ce=pe.vertexStartIndex+4*pe.numGlyphs;for(let Ue=pe.vertexStartIndex;Ue<Ce;Ue+=4)D.indexArray.emplaceBack(Ue,Ue+1,Ue+2),D.indexArray.emplaceBack(Ue+1,Ue+2,Ue+3)}getSortedSymbolIndexes(D){if(this.sortedAngle===D&&this.symbolInstanceIndexes!==void 0)return this.symbolInstanceIndexes;let Y=Math.sin(D),pe=Math.cos(D),Ce=[],Ue=[],Ge=[];for(let ut=0;ut<this.symbolInstances.length;++ut){Ge.push(ut);let Tt=this.symbolInstances.get(ut);Ce.push(0|Math.round(Y*Tt.anchorX+pe*Tt.anchorY)),Ue.push(Tt.featureIndex)}return Ge.sort((ut,Tt)=>Ce[ut]-Ce[Tt]||Ue[Tt]-Ue[ut]),Ge}addToSortKeyRanges(D,Y){let pe=this.sortKeyRanges[this.sortKeyRanges.length-1];pe&&pe.sortKey===Y?pe.symbolInstanceEnd=D+1:this.sortKeyRanges.push({sortKey:Y,symbolInstanceStart:D,symbolInstanceEnd:D+1})}sortFeatures(D){if(this.sortFeaturesByY&&this.sortedAngle!==D&&!(this.text.segments.get().length>1||this.icon.segments.get().length>1)){this.symbolInstanceIndexes=this.getSortedSymbolIndexes(D),this.sortedAngle=D,this.text.indexArray.clear(),this.icon.indexArray.clear(),this.featureSortOrder=[];for(let Y of this.symbolInstanceIndexes){let pe=this.symbolInstances.get(Y);this.featureSortOrder.push(pe.featureIndex),[pe.rightJustifiedTextSymbolIndex,pe.centerJustifiedTextSymbolIndex,pe.leftJustifiedTextSymbolIndex].forEach((Ce,Ue,Ge)=>{Ce>=0&&Ge.indexOf(Ce)===Ue&&this.addIndicesForPlacedSymbol(this.text,Ce)}),pe.verticalPlacedTextSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.text,pe.verticalPlacedTextSymbolIndex),pe.placedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.placedIconSymbolIndex),pe.verticalPlacedIconSymbolIndex>=0&&this.addIndicesForPlacedSymbol(this.icon,pe.verticalPlacedIconSymbolIndex)}this.text.indexBuffer&&this.text.indexBuffer.updateData(this.text.indexArray),this.icon.indexBuffer&&this.icon.indexBuffer.updateData(this.icon.indexArray)}}}let qc,Eg;ti("SymbolBucket",um,{omit:["layers","collisionBoxArray","features","compareText"]}),um.MAX_GLYPHS=65535,um.addDynamicAttributes=R1;var M0={get paint(){return Eg=Eg||new Oe({"icon-opacity":new Po(ie.paint_symbol["icon-opacity"]),"icon-color":new Po(ie.paint_symbol["icon-color"]),"icon-halo-color":new Po(ie.paint_symbol["icon-halo-color"]),"icon-halo-width":new Po(ie.paint_symbol["icon-halo-width"]),"icon-halo-blur":new Po(ie.paint_symbol["icon-halo-blur"]),"icon-translate":new ro(ie.paint_symbol["icon-translate"]),"icon-translate-anchor":new ro(ie.paint_symbol["icon-translate-anchor"]),"text-opacity":new Po(ie.paint_symbol["text-opacity"]),"text-color":new Po(ie.paint_symbol["text-color"],{runtimeType:Ot,getOverride:q=>q.textColor,hasOverride:q=>!!q.textColor}),"text-halo-color":new Po(ie.paint_symbol["text-halo-color"]),"text-halo-width":new Po(ie.paint_symbol["text-halo-width"]),"text-halo-blur":new Po(ie.paint_symbol["text-halo-blur"]),"text-translate":new ro(ie.paint_symbol["text-translate"]),"text-translate-anchor":new ro(ie.paint_symbol["text-translate-anchor"])})},get layout(){return qc=qc||new Oe({"symbol-placement":new ro(ie.layout_symbol["symbol-placement"]),"symbol-spacing":new ro(ie.layout_symbol["symbol-spacing"]),"symbol-avoid-edges":new ro(ie.layout_symbol["symbol-avoid-edges"]),"symbol-sort-key":new Po(ie.layout_symbol["symbol-sort-key"]),"symbol-z-order":new ro(ie.layout_symbol["symbol-z-order"]),"icon-allow-overlap":new ro(ie.layout_symbol["icon-allow-overlap"]),"icon-overlap":new ro(ie.layout_symbol["icon-overlap"]),"icon-ignore-placement":new ro(ie.layout_symbol["icon-ignore-placement"]),"icon-optional":new ro(ie.layout_symbol["icon-optional"]),"icon-rotation-alignment":new ro(ie.layout_symbol["icon-rotation-alignment"]),"icon-size":new Po(ie.layout_symbol["icon-size"]),"icon-text-fit":new ro(ie.layout_symbol["icon-text-fit"]),"icon-text-fit-padding":new ro(ie.layout_symbol["icon-text-fit-padding"]),"icon-image":new Po(ie.layout_symbol["icon-image"]),"icon-rotate":new Po(ie.layout_symbol["icon-rotate"]),"icon-padding":new Po(ie.layout_symbol["icon-padding"]),"icon-keep-upright":new ro(ie.layout_symbol["icon-keep-upright"]),"icon-offset":new Po(ie.layout_symbol["icon-offset"]),"icon-anchor":new Po(ie.layout_symbol["icon-anchor"]),"icon-pitch-alignment":new ro(ie.layout_symbol["icon-pitch-alignment"]),"text-pitch-alignment":new ro(ie.layout_symbol["text-pitch-alignment"]),"text-rotation-alignment":new ro(ie.layout_symbol["text-rotation-alignment"]),"text-field":new Po(ie.layout_symbol["text-field"]),"text-font":new Po(ie.layout_symbol["text-font"]),"text-size":new Po(ie.layout_symbol["text-size"]),"text-max-width":new Po(ie.layout_symbol["text-max-width"]),"text-line-height":new ro(ie.layout_symbol["text-line-height"]),"text-letter-spacing":new Po(ie.layout_symbol["text-letter-spacing"]),"text-justify":new Po(ie.layout_symbol["text-justify"]),"text-radial-offset":new Po(ie.layout_symbol["text-radial-offset"]),"text-variable-anchor":new ro(ie.layout_symbol["text-variable-anchor"]),"text-variable-anchor-offset":new Po(ie.layout_symbol["text-variable-anchor-offset"]),"text-anchor":new Po(ie.layout_symbol["text-anchor"]),"text-max-angle":new ro(ie.layout_symbol["text-max-angle"]),"text-writing-mode":new ro(ie.layout_symbol["text-writing-mode"]),"text-rotate":new Po(ie.layout_symbol["text-rotate"]),"text-padding":new ro(ie.layout_symbol["text-padding"]),"text-keep-upright":new ro(ie.layout_symbol["text-keep-upright"]),"text-transform":new Po(ie.layout_symbol["text-transform"]),"text-offset":new Po(ie.layout_symbol["text-offset"]),"text-allow-overlap":new ro(ie.layout_symbol["text-allow-overlap"]),"text-overlap":new ro(ie.layout_symbol["text-overlap"]),"text-ignore-placement":new ro(ie.layout_symbol["text-ignore-placement"]),"text-optional":new ro(ie.layout_symbol["text-optional"])})}};class kg{constructor(D){if(D.property.overrides===void 0)throw new Error("overrides must be provided to instantiate FormatSectionOverride class");this.type=D.property.overrides?D.property.overrides.runtimeType:nt,this.defaultValue=D}evaluate(D){if(D.formattedSection){let Y=this.defaultValue.property.overrides;if(Y&&Y.hasOverride(D.formattedSection))return Y.getOverride(D.formattedSection)}return D.feature&&D.featureState?this.defaultValue.evaluate(D.feature,D.featureState):this.defaultValue.property.specification.default}eachChild(D){this.defaultValue.isConstant()||D(this.defaultValue.value._styleExpression.expression)}outputDefined(){return!1}serialize(){return null}}ti("FormatSectionOverride",kg,{omit:["defaultValue"]});class Dv extends ae{constructor(D){super(D,M0)}recalculate(D,Y){if(super.recalculate(D,Y),this.layout.get("icon-rotation-alignment")==="auto"&&(this.layout._values["icon-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-rotation-alignment")==="auto"&&(this.layout._values["text-rotation-alignment"]=this.layout.get("symbol-placement")!=="point"?"map":"viewport"),this.layout.get("text-pitch-alignment")==="auto"&&(this.layout._values["text-pitch-alignment"]=this.layout.get("text-rotation-alignment")==="map"?"map":"viewport"),this.layout.get("icon-pitch-alignment")==="auto"&&(this.layout._values["icon-pitch-alignment"]=this.layout.get("icon-rotation-alignment")),this.layout.get("symbol-placement")==="point"){let pe=this.layout.get("text-writing-mode");if(pe){let Ce=[];for(let Ue of pe)Ce.indexOf(Ue)<0&&Ce.push(Ue);this.layout._values["text-writing-mode"]=Ce}else this.layout._values["text-writing-mode"]=["horizontal"]}this._setPaintOverrides()}getValueAndResolveTokens(D,Y,pe,Ce){let Ue=this.layout.get(D).evaluate(Y,{},pe,Ce),Ge=this._unevaluatedLayout._values[D];return Ge.isDataDriven()||xc(Ge.value)||!Ue?Ue:function(ut,Tt){return Tt.replace(/{([^{}]+)}/g,(Ft,$t)=>ut&&$t in ut?String(ut[$t]):"")}(Y.properties,Ue)}createBucket(D){return new um(D)}queryRadius(){return 0}queryIntersectsFeature(){throw new Error("Should take a different path in FeatureIndex")}_setPaintOverrides(){for(let D of M0.paint.overridableProperties){if(!Dv.hasPaintOverride(this.layout,D))continue;let Y=this.paint.get(D),pe=new kg(Y),Ce=new Cu(pe,Y.property.specification),Ue=null;Ue=Y.value.kind==="constant"||Y.value.kind==="source"?new Fc("source",Ce):new $u("composite",Ce,Y.value.zoomStops),this.paint._values[D]=new Iu(Y.property,Ue,Y.parameters)}}_handleOverridablePaintPropertyUpdate(D,Y,pe){return!(!this.layout||Y.isDataDriven()||pe.isDataDriven())&&Dv.hasPaintOverride(this.layout,D)}static hasPaintOverride(D,Y){let pe=D.get("text-field"),Ce=M0.paint.properties[Y],Ue=!1,Ge=ut=>{for(let Tt of ut)if(Ce.overrides&&Ce.overrides.hasOverride(Tt))return void(Ue=!0)};if(pe.value.kind==="constant"&&pe.value.value instanceof pa)Ge(pe.value.value.sections);else if(pe.value.kind==="source"){let ut=Ft=>{Ue||(Ft instanceof Er&&mt(Ft.value)===Cr?Ge(Ft.value.sections):Ft instanceof ys?Ge(Ft.sections):Ft.eachChild(ut))},Tt=pe.value;Tt._styleExpression&&ut(Tt._styleExpression.expression)}return Ue}}let Ox;var Cg={get paint(){return Ox=Ox||new Oe({"background-color":new ro(ie.paint_background["background-color"]),"background-pattern":new hc(ie.paint_background["background-pattern"]),"background-opacity":new ro(ie.paint_background["background-opacity"])})}};class $T extends ae{constructor(D){super(D,Cg)}}let F1;var Bx={get paint(){return F1=F1||new Oe({"raster-opacity":new ro(ie.paint_raster["raster-opacity"]),"raster-hue-rotate":new ro(ie.paint_raster["raster-hue-rotate"]),"raster-brightness-min":new ro(ie.paint_raster["raster-brightness-min"]),"raster-brightness-max":new ro(ie.paint_raster["raster-brightness-max"]),"raster-saturation":new ro(ie.paint_raster["raster-saturation"]),"raster-contrast":new ro(ie.paint_raster["raster-contrast"]),"raster-resampling":new ro(ie.paint_raster["raster-resampling"]),"raster-fade-duration":new ro(ie.paint_raster["raster-fade-duration"])})}};class Lg extends ae{constructor(D){super(D,Bx)}}class O1 extends ae{constructor(D){super(D,{}),this.onAdd=Y=>{this.implementation.onAdd&&this.implementation.onAdd(Y,Y.painter.context.gl)},this.onRemove=Y=>{this.implementation.onRemove&&this.implementation.onRemove(Y,Y.painter.context.gl)},this.implementation=D}is3D(){return this.implementation.renderingMode==="3d"}hasOffscreenPass(){return this.implementation.prerender!==void 0}recalculate(){}updateTransitions(){}hasTransition(){return!1}serialize(){throw new Error("Custom layers cannot be serialized")}}class B1{constructor(D){this._methodToThrottle=D,this._triggered=!1,typeof MessageChannel<"u"&&(this._channel=new MessageChannel,this._channel.port2.onmessage=()=>{this._triggered=!1,this._methodToThrottle()})}trigger(){this._triggered||(this._triggered=!0,this._channel?this._channel.port1.postMessage(!0):setTimeout(()=>{this._triggered=!1,this._methodToThrottle()},0))}remove(){delete this._channel,this._methodToThrottle=()=>{}}}let N1=63710088e-1;class Gd{constructor(D,Y){if(isNaN(D)||isNaN(Y))throw new Error(`Invalid LngLat object: (${D}, ${Y})`);if(this.lng=+D,this.lat=+Y,this.lat>90||this.lat<-90)throw new Error("Invalid LngLat latitude value: must be between -90 and 90")}wrap(){return new Gd(S(this.lng,-180,180),this.lat)}toArray(){return[this.lng,this.lat]}toString(){return`LngLat(${this.lng}, ${this.lat})`}distanceTo(D){let Y=Math.PI/180,pe=this.lat*Y,Ce=D.lat*Y,Ue=Math.sin(pe)*Math.sin(Ce)+Math.cos(pe)*Math.cos(Ce)*Math.cos((D.lng-this.lng)*Y);return N1*Math.acos(Math.min(Ue,1))}static convert(D){if(D instanceof Gd)return D;if(Array.isArray(D)&&(D.length===2||D.length===3))return new Gd(Number(D[0]),Number(D[1]));if(!Array.isArray(D)&&typeof D=="object"&&D!==null)return new Gd(Number("lng"in D?D.lng:D.lon),Number(D.lat));throw new Error("`LngLatLike` argument 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>]")}}let cm=2*Math.PI*N1;function Nx(q){return cm*Math.cos(q*Math.PI/180)}function E0(q){return(180+q)/360}function Ux(q){return(180-180/Math.PI*Math.log(Math.tan(Math.PI/4+q*Math.PI/360)))/360}function k0(q,D){return q/Nx(D)}function Pg(q){return 360/Math.PI*Math.atan(Math.exp((180-360*q)*Math.PI/180))-90}class Ig{constructor(D,Y,pe=0){this.x=+D,this.y=+Y,this.z=+pe}static fromLngLat(D,Y=0){let pe=Gd.convert(D);return new Ig(E0(pe.lng),Ux(pe.lat),k0(Y,pe.lat))}toLngLat(){return new Gd(360*this.x-180,Pg(this.y))}toAltitude(){return this.z*Nx(Pg(this.y))}meterInMercatorCoordinateUnits(){return 1/cm*(D=Pg(this.y),1/Math.cos(D*Math.PI/180));var D}}function ad(q,D,Y){var pe=2*Math.PI*6378137/256/Math.pow(2,Y);return[q*pe-2*Math.PI*6378137/2,D*pe-2*Math.PI*6378137/2]}class U1{constructor(D,Y,pe){if(!function(Ce,Ue,Ge){return!(Ce<0||Ce>25||Ge<0||Ge>=Math.pow(2,Ce)||Ue<0||Ue>=Math.pow(2,Ce))}(D,Y,pe))throw new Error(`x=${Y}, y=${pe}, z=${D} outside of bounds. 0<=x<${Math.pow(2,D)}, 0<=y<${Math.pow(2,D)} 0<=z<=25 `);this.z=D,this.x=Y,this.y=pe,this.key=Rg(0,D,D,Y,pe)}equals(D){return this.z===D.z&&this.x===D.x&&this.y===D.y}url(D,Y,pe){let Ce=(Ge=this.y,ut=this.z,Tt=ad(256*(Ue=this.x),256*(Ge=Math.pow(2,ut)-Ge-1),ut),Ft=ad(256*(Ue+1),256*(Ge+1),ut),Tt[0]+","+Tt[1]+","+Ft[0]+","+Ft[1]);var Ue,Ge,ut,Tt,Ft;let $t=function(lr,Ar,zr){let Kr,la="";for(let za=lr;za>0;za--)Kr=1<<za-1,la+=(Ar&Kr?1:0)+(zr&Kr?2:0);return la}(this.z,this.x,this.y);return D[(this.x+this.y)%D.length].replace(/{prefix}/g,(this.x%16).toString(16)+(this.y%16).toString(16)).replace(/{z}/g,String(this.z)).replace(/{x}/g,String(this.x)).replace(/{y}/g,String(pe==="tms"?Math.pow(2,this.z)-this.y-1:this.y)).replace(/{ratio}/g,Y>1?"@2x":"").replace(/{quadkey}/g,$t).replace(/{bbox-epsg-3857}/g,Ce)}isChildOf(D){let Y=this.z-D.z;return Y>0&&D.x===this.x>>Y&&D.y===this.y>>Y}getTilePoint(D){let Y=Math.pow(2,this.z);return new i((D.x*Y-this.x)*ao,(D.y*Y-this.y)*ao)}toString(){return`${this.z}/${this.x}/${this.y}`}}class jx{constructor(D,Y){this.wrap=D,this.canonical=Y,this.key=Rg(D,Y.z,Y.z,Y.x,Y.y)}}class Hp{constructor(D,Y,pe,Ce,Ue){if(D<pe)throw new Error(`overscaledZ should be >= z; overscaledZ = ${D}; z = ${pe}`);this.overscaledZ=D,this.wrap=Y,this.canonical=new U1(pe,+Ce,+Ue),this.key=Rg(Y,D,pe,Ce,Ue)}clone(){return new Hp(this.overscaledZ,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)}equals(D){return this.overscaledZ===D.overscaledZ&&this.wrap===D.wrap&&this.canonical.equals(D.canonical)}scaledTo(D){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let Y=this.canonical.z-D;return D>this.canonical.z?new Hp(D,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y):new Hp(D,this.wrap,D,this.canonical.x>>Y,this.canonical.y>>Y)}calculateScaledKey(D,Y){if(D>this.overscaledZ)throw new Error(`targetZ > this.overscaledZ; targetZ = ${D}; overscaledZ = ${this.overscaledZ}`);let pe=this.canonical.z-D;return D>this.canonical.z?Rg(this.wrap*+Y,D,this.canonical.z,this.canonical.x,this.canonical.y):Rg(this.wrap*+Y,D,D,this.canonical.x>>pe,this.canonical.y>>pe)}isChildOf(D){if(D.wrap!==this.wrap)return!1;let Y=this.canonical.z-D.canonical.z;return D.overscaledZ===0||D.overscaledZ<this.overscaledZ&&D.canonical.x===this.canonical.x>>Y&&D.canonical.y===this.canonical.y>>Y}children(D){if(this.overscaledZ>=D)return[new Hp(this.overscaledZ+1,this.wrap,this.canonical.z,this.canonical.x,this.canonical.y)];let Y=this.canonical.z+1,pe=2*this.canonical.x,Ce=2*this.canonical.y;return[new Hp(Y,this.wrap,Y,pe,Ce),new Hp(Y,this.wrap,Y,pe+1,Ce),new Hp(Y,this.wrap,Y,pe,Ce+1),new Hp(Y,this.wrap,Y,pe+1,Ce+1)]}isLessThan(D){return this.wrap<D.wrap||!(this.wrap>D.wrap)&&(this.overscaledZ<D.overscaledZ||!(this.overscaledZ>D.overscaledZ)&&(this.canonical.x<D.canonical.x||!(this.canonical.x>D.canonical.x)&&this.canonical.y<D.canonical.y))}wrapped(){return new Hp(this.overscaledZ,0,this.canonical.z,this.canonical.x,this.canonical.y)}unwrapTo(D){return new Hp(this.overscaledZ,D,this.canonical.z,this.canonical.x,this.canonical.y)}overscaleFactor(){return Math.pow(2,this.overscaledZ-this.canonical.z)}toUnwrapped(){return new jx(this.wrap,this.canonical)}toString(){return`${this.overscaledZ}/${this.canonical.x}/${this.canonical.y}`}getTilePoint(D){return this.canonical.getTilePoint(new Ig(D.x-this.wrap,D.y))}}function Rg(q,D,Y,pe,Ce){(q*=2)<0&&(q=-1*q-1);let Ue=1<<Y;return(Ue*Ue*q+Ue*Ce+pe).toString(36)+Y.toString(36)+D.toString(36)}ti("CanonicalTileID",U1),ti("OverscaledTileID",Hp,{omit:["posMatrix"]});class Vx{constructor(D,Y,pe,Ce=1,Ue=1,Ge=1,ut=0){if(this.uid=D,Y.height!==Y.width)throw new RangeError("DEM tiles must be square");if(pe&&!["mapbox","terrarium","custom"].includes(pe))return void f(`"${pe}" is not a valid encoding type. Valid types include "mapbox", "terrarium" and "custom".`);this.stride=Y.height;let Tt=this.dim=Y.height-2;switch(this.data=new Uint32Array(Y.data.buffer),pe){case"terrarium":this.redFactor=256,this.greenFactor=1,this.blueFactor=1/256,this.baseShift=32768;break;case"custom":this.redFactor=Ce,this.greenFactor=Ue,this.blueFactor=Ge,this.baseShift=ut;break;default:this.redFactor=6553.6,this.greenFactor=25.6,this.blueFactor=.1,this.baseShift=1e4}for(let Ft=0;Ft<Tt;Ft++)this.data[this._idx(-1,Ft)]=this.data[this._idx(0,Ft)],this.data[this._idx(Tt,Ft)]=this.data[this._idx(Tt-1,Ft)],this.data[this._idx(Ft,-1)]=this.data[this._idx(Ft,0)],this.data[this._idx(Ft,Tt)]=this.data[this._idx(Ft,Tt-1)];this.data[this._idx(-1,-1)]=this.data[this._idx(0,0)],this.data[this._idx(Tt,-1)]=this.data[this._idx(Tt-1,0)],this.data[this._idx(-1,Tt)]=this.data[this._idx(0,Tt-1)],this.data[this._idx(Tt,Tt)]=this.data[this._idx(Tt-1,Tt-1)],this.min=Number.MAX_SAFE_INTEGER,this.max=Number.MIN_SAFE_INTEGER;for(let Ft=0;Ft<Tt;Ft++)for(let $t=0;$t<Tt;$t++){let lr=this.get(Ft,$t);lr>this.max&&(this.max=lr),lr<this.min&&(this.min=lr)}}get(D,Y){let pe=new Uint8Array(this.data.buffer),Ce=4*this._idx(D,Y);return this.unpack(pe[Ce],pe[Ce+1],pe[Ce+2])}getUnpackVector(){return[this.redFactor,this.greenFactor,this.blueFactor,this.baseShift]}_idx(D,Y){if(D<-1||D>=this.dim+1||Y<-1||Y>=this.dim+1)throw new RangeError("out of range source coordinates for DEM data");return(Y+1)*this.stride+(D+1)}unpack(D,Y,pe){return D*this.redFactor+Y*this.greenFactor+pe*this.blueFactor-this.baseShift}getPixels(){return new wn({width:this.stride,height:this.stride},new Uint8Array(this.data.buffer))}backfillBorder(D,Y,pe){if(this.dim!==D.dim)throw new Error("dem dimension mismatch");let Ce=Y*this.dim,Ue=Y*this.dim+this.dim,Ge=pe*this.dim,ut=pe*this.dim+this.dim;switch(Y){case-1:Ce=Ue-1;break;case 1:Ue=Ce+1}switch(pe){case-1:Ge=ut-1;break;case 1:ut=Ge+1}let Tt=-Y*this.dim,Ft=-pe*this.dim;for(let $t=Ge;$t<ut;$t++)for(let lr=Ce;lr<Ue;lr++)this.data[this._idx(lr,$t)]=D.data[this._idx(lr+Tt,$t+Ft)]}}ti("DEMData",Vx);class qx{constructor(D){this._stringToNumber={},this._numberToString=[];for(let Y=0;Y<D.length;Y++){let pe=D[Y];this._stringToNumber[pe]=Y,this._numberToString[Y]=pe}}encode(D){return this._stringToNumber[D]}decode(D){if(D>=this._numberToString.length)throw new Error(`Out of bounds. Index requested n=${D} can't be >= this._numberToString.length ${this._numberToString.length}`);return this._numberToString[D]}}class j1{constructor(D,Y,pe,Ce,Ue){this.type="Feature",this._vectorTileFeature=D,D._z=Y,D._x=pe,D._y=Ce,this.properties=D.properties,this.id=Ue}get geometry(){return this._geometry===void 0&&(this._geometry=this._vectorTileFeature.toGeoJSON(this._vectorTileFeature._x,this._vectorTileFeature._y,this._vectorTileFeature._z).geometry),this._geometry}set geometry(D){this._geometry=D}toJSON(){let D={geometry:this.geometry};for(let Y in this)Y!=="_geometry"&&Y!=="_vectorTileFeature"&&(D[Y]=this[Y]);return D}}class zv{constructor(D,Y){this.tileID=D,this.x=D.canonical.x,this.y=D.canonical.y,this.z=D.canonical.z,this.grid=new _i(ao,16,0),this.grid3D=new _i(ao,16,0),this.featureIndexArray=new Ys,this.promoteId=Y}insert(D,Y,pe,Ce,Ue,Ge){let ut=this.featureIndexArray.length;this.featureIndexArray.emplaceBack(pe,Ce,Ue);let Tt=Ge?this.grid3D:this.grid;for(let Ft=0;Ft<Y.length;Ft++){let $t=Y[Ft],lr=[1/0,1/0,-1/0,-1/0];for(let Ar=0;Ar<$t.length;Ar++){let zr=$t[Ar];lr[0]=Math.min(lr[0],zr.x),lr[1]=Math.min(lr[1],zr.y),lr[2]=Math.max(lr[2],zr.x),lr[3]=Math.max(lr[3],zr.y)}lr[0]<ao&&lr[1]<ao&&lr[2]>=0&&lr[3]>=0&&Tt.insert(ut,lr[0],lr[1],lr[2],lr[3])}}loadVTLayers(){return this.vtLayers||(this.vtLayers=new Oa.VectorTile(new C1(this.rawTileData)).layers,this.sourceLayerCoder=new qx(this.vtLayers?Object.keys(this.vtLayers).sort():["_geojsonTileLayer"])),this.vtLayers}query(D,Y,pe,Ce){this.loadVTLayers();let Ue=D.params||{},Ge=ao/D.tileSize/D.scale,ut=bc(Ue.filter),Tt=D.queryGeometry,Ft=D.queryPadding*Ge,$t=Gx(Tt),lr=this.grid.query($t.minX-Ft,$t.minY-Ft,$t.maxX+Ft,$t.maxY+Ft),Ar=Gx(D.cameraQueryGeometry),zr=this.grid3D.query(Ar.minX-Ft,Ar.minY-Ft,Ar.maxX+Ft,Ar.maxY+Ft,(za,ja,gi,ei)=>function(hi,Ei,En,fo,ss){for(let vn of hi)if(Ei<=vn.x&&En<=vn.y&&fo>=vn.x&&ss>=vn.y)return!0;let eo=[new i(Ei,En),new i(Ei,ss),new i(fo,ss),new i(fo,En)];if(hi.length>2){for(let vn of eo)if(cn(hi,vn))return!0}for(let vn=0;vn<hi.length-1;vn++)if(fn(hi[vn],hi[vn+1],eo))return!0;return!1}(D.cameraQueryGeometry,za-Ft,ja-Ft,gi+Ft,ei+Ft));for(let za of zr)lr.push(za);lr.sort(QT);let Kr={},la;for(let za=0;za<lr.length;za++){let ja=lr[za];if(ja===la)continue;la=ja;let gi=this.featureIndexArray.get(ja),ei=null;this.loadMatchingFeature(Kr,gi.bucketIndex,gi.sourceLayerIndex,gi.featureIndex,ut,Ue.layers,Ue.availableImages,Y,pe,Ce,(hi,Ei,En)=>(ei||(ei=hl(hi)),Ei.queryIntersectsFeature(Tt,hi,En,ei,this.z,D.transform,Ge,D.pixelPosMatrix)))}return Kr}loadMatchingFeature(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr){let Ar=this.bucketLayerIDs[Y];if(Ge&&!function(za,ja){for(let gi=0;gi<za.length;gi++)if(ja.indexOf(za[gi])>=0)return!0;return!1}(Ge,Ar))return;let zr=this.sourceLayerCoder.decode(pe),Kr=this.vtLayers[zr].feature(Ce);if(Ue.needGeometry){let za=Dl(Kr,!0);if(!Ue.filter(new Ts(this.tileID.overscaledZ),za,this.tileID.canonical))return}else if(!Ue.filter(new Ts(this.tileID.overscaledZ),Kr))return;let la=this.getId(Kr,zr);for(let za=0;za<Ar.length;za++){let ja=Ar[za];if(Ge&&Ge.indexOf(ja)<0)continue;let gi=Tt[ja];if(!gi)continue;let ei={};la&&$t&&(ei=$t.getState(gi.sourceLayer||"_geojsonTileLayer",la));let hi=E({},Ft[ja]);hi.paint=Hx(hi.paint,gi.paint,Kr,ei,ut),hi.layout=Hx(hi.layout,gi.layout,Kr,ei,ut);let Ei=!lr||lr(Kr,gi,ei);if(!Ei)continue;let En=new j1(Kr,this.z,this.x,this.y,la);En.layer=hi;let fo=D[ja];fo===void 0&&(fo=D[ja]=[]),fo.push({featureIndex:Ce,feature:En,intersectionZ:Ei})}}lookupSymbolFeatures(D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft={};this.loadVTLayers();let $t=bc(Ue);for(let lr of D)this.loadMatchingFeature(Ft,pe,Ce,lr,$t,Ge,ut,Tt,Y);return Ft}hasLayer(D){for(let Y of this.bucketLayerIDs)for(let pe of Y)if(D===pe)return!0;return!1}getId(D,Y){let pe=D.id;return this.promoteId&&(pe=D.properties[typeof this.promoteId=="string"?this.promoteId:this.promoteId[Y]],typeof pe=="boolean"&&(pe=Number(pe))),pe}}function Hx(q,D,Y,pe,Ce){return b(q,(Ue,Ge)=>{let ut=D instanceof Ac?D.get(Ge):null;return ut&&ut.evaluate?ut.evaluate(Y,pe,Ce):ut})}function Gx(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return{minX:D,minY:Y,maxX:pe,maxY:Ce}}function QT(q,D){return D-q}function Wx(q,D,Y,pe,Ce){let Ue=[];for(let Ge=0;Ge<q.length;Ge++){let ut=q[Ge],Tt;for(let Ft=0;Ft<ut.length-1;Ft++){let $t=ut[Ft],lr=ut[Ft+1];$t.x<D&&lr.x<D||($t.x<D?$t=new i(D,$t.y+(D-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round():lr.x<D&&(lr=new i(D,$t.y+(D-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round()),$t.y<Y&&lr.y<Y||($t.y<Y?$t=new i($t.x+(Y-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Y)._round():lr.y<Y&&(lr=new i($t.x+(Y-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Y)._round()),$t.x>=pe&&lr.x>=pe||($t.x>=pe?$t=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round():lr.x>=pe&&(lr=new i(pe,$t.y+(pe-$t.x)/(lr.x-$t.x)*(lr.y-$t.y))._round()),$t.y>=Ce&&lr.y>=Ce||($t.y>=Ce?$t=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round():lr.y>=Ce&&(lr=new i($t.x+(Ce-$t.y)/(lr.y-$t.y)*(lr.x-$t.x),Ce)._round()),Tt&&$t.equals(Tt[Tt.length-1])||(Tt=[$t],Ue.push(Tt)),Tt.push(lr)))))}}return Ue}ti("FeatureIndex",zv,{omit:["rawTileData","sourceLayerCoder"]});class Wd extends i{constructor(D,Y,pe,Ce){super(D,Y),this.angle=pe,Ce!==void 0&&(this.segment=Ce)}clone(){return new Wd(this.x,this.y,this.angle,this.segment)}}function V1(q,D,Y,pe,Ce){if(D.segment===void 0||Y===0)return!0;let Ue=D,Ge=D.segment+1,ut=0;for(;ut>-Y/2;){if(Ge--,Ge<0)return!1;ut-=q[Ge].dist(Ue),Ue=q[Ge]}ut+=q[Ge].dist(q[Ge+1]),Ge++;let Tt=[],Ft=0;for(;ut<Y/2;){let $t=q[Ge],lr=q[Ge+1];if(!lr)return!1;let Ar=q[Ge-1].angleTo($t)-$t.angleTo(lr);for(Ar=Math.abs((Ar+3*Math.PI)%(2*Math.PI)-Math.PI),Tt.push({distance:ut,angleDelta:Ar}),Ft+=Ar;ut-Tt[0].distance>pe;)Ft-=Tt.shift().angleDelta;if(Ft>Ce)return!1;Ge++,ut+=$t.dist(lr)}return!0}function Zx(q){let D=0;for(let Y=0;Y<q.length-1;Y++)D+=q[Y].dist(q[Y+1]);return D}function Xx(q,D,Y){return q?.6*D*Y:0}function Yx(q,D){return Math.max(q?q.right-q.left:0,D?D.right-D.left:0)}function eA(q,D,Y,pe,Ce,Ue){let Ge=Xx(Y,Ce,Ue),ut=Yx(Y,pe)*Ue,Tt=0,Ft=Zx(q)/2;for(let $t=0;$t<q.length-1;$t++){let lr=q[$t],Ar=q[$t+1],zr=lr.dist(Ar);if(Tt+zr>Ft){let Kr=(Ft-Tt)/zr,la=$n.number(lr.x,Ar.x,Kr),za=$n.number(lr.y,Ar.y,Kr),ja=new Wd(la,za,Ar.angleTo(lr),$t);return ja._round(),!Ge||V1(q,ja,ut,Ge,D)?ja:void 0}Tt+=zr}}function tA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=Xx(pe,Ue,Ge),$t=Yx(pe,Ce),lr=$t*Ge,Ar=q[0].x===0||q[0].x===Tt||q[0].y===0||q[0].y===Tt;return D-lr<D/4&&(D=lr+D/4),Kx(q,Ar?D/2*ut%D:($t/2+2*Ue)*Ge*ut%D,D,Ft,Y,lr,Ar,!1,Tt)}function Kx(q,D,Y,pe,Ce,Ue,Ge,ut,Tt){let Ft=Ue/2,$t=Zx(q),lr=0,Ar=D-Y,zr=[];for(let Kr=0;Kr<q.length-1;Kr++){let la=q[Kr],za=q[Kr+1],ja=la.dist(za),gi=za.angleTo(la);for(;Ar+Y<lr+ja;){Ar+=Y;let ei=(Ar-lr)/ja,hi=$n.number(la.x,za.x,ei),Ei=$n.number(la.y,za.y,ei);if(hi>=0&&hi<Tt&&Ei>=0&&Ei<Tt&&Ar-Ft>=0&&Ar+Ft<=$t){let En=new Wd(hi,Ei,gi,Kr);En._round(),pe&&!V1(q,En,Ue,pe,Ce)||zr.push(En)}}lr+=ja}return ut||zr.length||Ge||(zr=Kx(q,lr/2,Y,pe,Ce,Ue,Ge,!0,Tt)),zr}ti("Anchor",Wd);let fm=Ph;function Jx(q,D,Y,pe){let Ce=[],Ue=q.image,Ge=Ue.pixelRatio,ut=Ue.paddedRect.w-2*fm,Tt=Ue.paddedRect.h-2*fm,Ft={x1:q.left,y1:q.top,x2:q.right,y2:q.bottom},$t=Ue.stretchX||[[0,ut]],lr=Ue.stretchY||[[0,Tt]],Ar=(Yi,Ko)=>Yi+Ko[1]-Ko[0],zr=$t.reduce(Ar,0),Kr=lr.reduce(Ar,0),la=ut-zr,za=Tt-Kr,ja=0,gi=zr,ei=0,hi=Kr,Ei=0,En=la,fo=0,ss=za;if(Ue.content&&pe){let Yi=Ue.content,Ko=Yi[2]-Yi[0],bo=Yi[3]-Yi[1];(Ue.textFitWidth||Ue.textFitHeight)&&(Ft=Dx(q)),ja=Zd($t,0,Yi[0]),ei=Zd(lr,0,Yi[1]),gi=Zd($t,Yi[0],Yi[2]),hi=Zd(lr,Yi[1],Yi[3]),Ei=Yi[0]-ja,fo=Yi[1]-ei,En=Ko-gi,ss=bo-hi}let eo=Ft.x1,vn=Ft.y1,Uo=Ft.x2-eo,Mo=Ft.y2-vn,xo=(Yi,Ko,bo,gs)=>{let _u=C0(Yi.stretch-ja,gi,Uo,eo),pu=hm(Yi.fixed-Ei,En,Yi.stretch,zr),Bf=C0(Ko.stretch-ei,hi,Mo,vn),Gp=hm(Ko.fixed-fo,ss,Ko.stretch,Kr),dh=C0(bo.stretch-ja,gi,Uo,eo),Nf=hm(bo.fixed-Ei,En,bo.stretch,zr),Yh=C0(gs.stretch-ei,hi,Mo,vn),Kh=hm(gs.fixed-fo,ss,gs.stretch,Kr),Jh=new i(_u,Bf),Hc=new i(dh,Bf),Uf=new i(dh,Yh),Ih=new i(_u,Yh),vh=new i(pu/Ge,Gp/Ge),th=new i(Nf/Ge,Kh/Ge),nf=D*Math.PI/180;if(nf){let Nl=Math.sin(nf),zu=Math.cos(nf),xu=[zu,-Nl,Nl,zu];Jh._matMult(xu),Hc._matMult(xu),Ih._matMult(xu),Uf._matMult(xu)}let Lp=Yi.stretch+Yi.fixed,pp=Ko.stretch+Ko.fixed;return{tl:Jh,tr:Hc,bl:Ih,br:Uf,tex:{x:Ue.paddedRect.x+fm+Lp,y:Ue.paddedRect.y+fm+pp,w:bo.stretch+bo.fixed-Lp,h:gs.stretch+gs.fixed-pp},writingMode:void 0,glyphOffset:[0,0],sectionIndex:0,pixelOffsetTL:vh,pixelOffsetBR:th,minFontScaleX:En/Ge/Uo,minFontScaleY:ss/Ge/Mo,isSDF:Y}};if(pe&&(Ue.stretchX||Ue.stretchY)){let Yi=$x($t,la,zr),Ko=$x(lr,za,Kr);for(let bo=0;bo<Yi.length-1;bo++){let gs=Yi[bo],_u=Yi[bo+1];for(let pu=0;pu<Ko.length-1;pu++)Ce.push(xo(gs,Ko[pu],_u,Ko[pu+1]))}}else Ce.push(xo({fixed:0,stretch:-1},{fixed:0,stretch:-1},{fixed:0,stretch:ut+1},{fixed:0,stretch:Tt+1}));return Ce}function Zd(q,D,Y){let pe=0;for(let Ce of q)pe+=Math.max(D,Math.min(Y,Ce[1]))-Math.max(D,Math.min(Y,Ce[0]));return pe}function $x(q,D,Y){let pe=[{fixed:-fm,stretch:0}];for(let[Ce,Ue]of q){let Ge=pe[pe.length-1];pe.push({fixed:Ce-Ge.stretch,stretch:Ge.stretch}),pe.push({fixed:Ce-Ge.stretch,stretch:Ge.stretch+(Ue-Ce)})}return pe.push({fixed:D+fm,stretch:Y}),pe}function C0(q,D,Y,pe){return q/D*Y+pe}function hm(q,D,Y,pe){return q-D*Y/pe}class hv{constructor(D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){var lr;if(this.boxStartIndex=D.length,Ft){let Ar=Ge.top,zr=Ge.bottom,Kr=Ge.collisionPadding;Kr&&(Ar-=Kr[1],zr+=Kr[3]);let la=zr-Ar;la>0&&(la=Math.max(10,la),this.circleDiameter=la)}else{let Ar=!((lr=Ge.image)===null||lr===void 0)&&lr.content&&(Ge.image.textFitWidth||Ge.image.textFitHeight)?Dx(Ge):{x1:Ge.left,y1:Ge.top,x2:Ge.right,y2:Ge.bottom};Ar.y1=Ar.y1*ut-Tt[0],Ar.y2=Ar.y2*ut+Tt[2],Ar.x1=Ar.x1*ut-Tt[3],Ar.x2=Ar.x2*ut+Tt[1];let zr=Ge.collisionPadding;if(zr&&(Ar.x1-=zr[0]*ut,Ar.y1-=zr[1]*ut,Ar.x2+=zr[2]*ut,Ar.y2+=zr[3]*ut),$t){let Kr=new i(Ar.x1,Ar.y1),la=new i(Ar.x2,Ar.y1),za=new i(Ar.x1,Ar.y2),ja=new i(Ar.x2,Ar.y2),gi=$t*Math.PI/180;Kr._rotate(gi),la._rotate(gi),za._rotate(gi),ja._rotate(gi),Ar.x1=Math.min(Kr.x,la.x,za.x,ja.x),Ar.x2=Math.max(Kr.x,la.x,za.x,ja.x),Ar.y1=Math.min(Kr.y,la.y,za.y,ja.y),Ar.y2=Math.max(Kr.y,la.y,za.y,ja.y)}D.emplaceBack(Y.x,Y.y,Ar.x1,Ar.y1,Ar.x2,Ar.y2,pe,Ce,Ue)}this.boxEndIndex=D.length}}class fd{constructor(D=[],Y=(pe,Ce)=>pe<Ce?-1:pe>Ce?1:0){if(this.data=D,this.length=this.data.length,this.compare=Y,this.length>0)for(let pe=(this.length>>1)-1;pe>=0;pe--)this._down(pe)}push(D){this.data.push(D),this._up(this.length++)}pop(){if(this.length===0)return;let D=this.data[0],Y=this.data.pop();return--this.length>0&&(this.data[0]=Y,this._down(0)),D}peek(){return this.data[0]}_up(D){let{data:Y,compare:pe}=this,Ce=Y[D];for(;D>0;){let Ue=D-1>>1,Ge=Y[Ue];if(pe(Ce,Ge)>=0)break;Y[D]=Ge,D=Ue}Y[D]=Ce}_down(D){let{data:Y,compare:pe}=this,Ce=this.length>>1,Ue=Y[D];for(;D<Ce;){let Ge=1+(D<<1),ut=Ge+1;if(ut<this.length&&pe(Y[ut],Y[Ge])<0&&(Ge=ut),pe(Y[Ge],Ue)>=0)break;Y[D]=Y[Ge],D=Ge}Y[D]=Ue}}function rA(q,D=1,Y=!1){let pe=1/0,Ce=1/0,Ue=-1/0,Ge=-1/0,ut=q[0];for(let zr=0;zr<ut.length;zr++){let Kr=ut[zr];(!zr||Kr.x<pe)&&(pe=Kr.x),(!zr||Kr.y<Ce)&&(Ce=Kr.y),(!zr||Kr.x>Ue)&&(Ue=Kr.x),(!zr||Kr.y>Ge)&&(Ge=Kr.y)}let Tt=Math.min(Ue-pe,Ge-Ce),Ft=Tt/2,$t=new fd([],aA);if(Tt===0)return new i(pe,Ce);for(let zr=pe;zr<Ue;zr+=Tt)for(let Kr=Ce;Kr<Ge;Kr+=Tt)$t.push(new pm(zr+Ft,Kr+Ft,Ft,q));let lr=function(zr){let Kr=0,la=0,za=0,ja=zr[0];for(let gi=0,ei=ja.length,hi=ei-1;gi<ei;hi=gi++){let Ei=ja[gi],En=ja[hi],fo=Ei.x*En.y-En.x*Ei.y;la+=(Ei.x+En.x)*fo,za+=(Ei.y+En.y)*fo,Kr+=3*fo}return new pm(la/Kr,za/Kr,0,zr)}(q),Ar=$t.length;for(;$t.length;){let zr=$t.pop();(zr.d>lr.d||!lr.d)&&(lr=zr,Y&&console.log("found best %d after %d probes",Math.round(1e4*zr.d)/1e4,Ar)),zr.max-lr.d<=D||(Ft=zr.h/2,$t.push(new pm(zr.p.x-Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y-Ft,Ft,q)),$t.push(new pm(zr.p.x-Ft,zr.p.y+Ft,Ft,q)),$t.push(new pm(zr.p.x+Ft,zr.p.y+Ft,Ft,q)),Ar+=4)}return Y&&(console.log(`num probes: ${Ar}`),console.log(`best distance: ${lr.d}`)),lr.p}function aA(q,D){return D.max-q.max}function pm(q,D,Y,pe){this.p=new i(q,D),this.h=Y,this.d=function(Ce,Ue){let Ge=!1,ut=1/0;for(let Tt=0;Tt<Ue.length;Tt++){let Ft=Ue[Tt];for(let $t=0,lr=Ft.length,Ar=lr-1;$t<lr;Ar=$t++){let zr=Ft[$t],Kr=Ft[Ar];zr.y>Ce.y!=Kr.y>Ce.y&&Ce.x<(Kr.x-zr.x)*(Ce.y-zr.y)/(Kr.y-zr.y)+zr.x&&(Ge=!Ge),ut=Math.min(ut,bi(Ce,zr,Kr))}}return(Ge?1:-1)*Math.sqrt(ut)}(this.p,pe),this.max=this.d+this.h*Math.SQRT2}var ph;e.aq=void 0,(ph=e.aq||(e.aq={}))[ph.center=1]="center",ph[ph.left=2]="left",ph[ph.right=3]="right",ph[ph.top=4]="top",ph[ph.bottom=5]="bottom",ph[ph["top-left"]=6]="top-left",ph[ph["top-right"]=7]="top-right",ph[ph["bottom-left"]=8]="bottom-left",ph[ph["bottom-right"]=9]="bottom-right";let pv=7,Fv=Number.POSITIVE_INFINITY;function q1(q,D){return D[1]!==Fv?function(Y,pe,Ce){let Ue=0,Ge=0;switch(pe=Math.abs(pe),Ce=Math.abs(Ce),Y){case"top-right":case"top-left":case"top":Ge=Ce-pv;break;case"bottom-right":case"bottom-left":case"bottom":Ge=-Ce+pv}switch(Y){case"top-right":case"bottom-right":case"right":Ue=-pe;break;case"top-left":case"bottom-left":case"left":Ue=pe}return[Ue,Ge]}(q,D[0],D[1]):function(Y,pe){let Ce=0,Ue=0;pe<0&&(pe=0);let Ge=pe/Math.SQRT2;switch(Y){case"top-right":case"top-left":Ue=Ge-pv;break;case"bottom-right":case"bottom-left":Ue=-Ge+pv;break;case"bottom":Ue=-pe+pv;break;case"top":Ue=pe-pv}switch(Y){case"top-right":case"bottom-right":Ce=-Ge;break;case"top-left":case"bottom-left":Ce=Ge;break;case"left":Ce=pe;break;case"right":Ce=-pe}return[Ce,Ue]}(q,D[0])}function Qx(q,D,Y){var pe;let Ce=q.layout,Ue=(pe=Ce.get("text-variable-anchor-offset"))===null||pe===void 0?void 0:pe.evaluate(D,{},Y);if(Ue){let ut=Ue.values,Tt=[];for(let Ft=0;Ft<ut.length;Ft+=2){let $t=Tt[Ft]=ut[Ft],lr=ut[Ft+1].map(Ar=>Ar*Bl);$t.startsWith("top")?lr[1]-=pv:$t.startsWith("bottom")&&(lr[1]+=pv),Tt[Ft+1]=lr}return new Fa(Tt)}let Ge=Ce.get("text-variable-anchor");if(Ge){let ut;ut=q._unevaluatedLayout.getValue("text-radial-offset")!==void 0?[Ce.get("text-radial-offset").evaluate(D,{},Y)*Bl,Fv]:Ce.get("text-offset").evaluate(D,{},Y).map(Ft=>Ft*Bl);let Tt=[];for(let Ft of Ge)Tt.push(Ft,q1(Ft,ut));return new Fa(Tt)}return null}function H1(q){switch(q){case"right":case"top-right":case"bottom-right":return"right";case"left":case"top-left":case"bottom-left":return"left"}return"center"}function iA(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t){let lr=Ue.textMaxSize.evaluate(D,{});lr===void 0&&(lr=Ge);let Ar=q.layers[0].layout,zr=Ar.get("icon-offset").evaluate(D,{},$t),Kr=tb(Y.horizontal),la=Ge/24,za=q.tilePixelRatio*la,ja=q.tilePixelRatio*lr/24,gi=q.tilePixelRatio*ut,ei=q.tilePixelRatio*Ar.get("symbol-spacing"),hi=Ar.get("text-padding")*q.tilePixelRatio,Ei=function(Yi,Ko,bo,gs=1){let _u=Yi.get("icon-padding").evaluate(Ko,{},bo),pu=_u&&_u.values;return[pu[0]*gs,pu[1]*gs,pu[2]*gs,pu[3]*gs]}(Ar,D,$t,q.tilePixelRatio),En=Ar.get("text-max-angle")/180*Math.PI,fo=Ar.get("text-rotation-alignment")!=="viewport"&&Ar.get("symbol-placement")!=="point",ss=Ar.get("icon-rotation-alignment")==="map"&&Ar.get("symbol-placement")!=="point",eo=Ar.get("symbol-placement"),vn=ei/2,Uo=Ar.get("icon-text-fit"),Mo;pe&&Uo!=="none"&&(q.allowVerticalPlacement&&Y.vertical&&(Mo=zx(pe,Y.vertical,Uo,Ar.get("icon-text-fit-padding"),zr,la)),Kr&&(pe=zx(pe,Kr,Uo,Ar.get("icon-text-fit-padding"),zr,la)));let xo=(Yi,Ko)=>{Ko.x<0||Ko.x>=ao||Ko.y<0||Ko.y>=ao||function(bo,gs,_u,pu,Bf,Gp,dh,Nf,Yh,Kh,Jh,Hc,Uf,Ih,vh,th,nf,Lp,pp,Nl,zu,xu,Pp,Ec,dm){let _d=bo.addToLineVertexArray(gs,_u),hd,Wp,tc,gf,Zp=0,Xd=0,dp=0,vm=0,Y1=-1,R0=-1,xd={},Ov=Xa("");if(bo.allowVerticalPlacement&&pu.vertical){let Rh=Nf.layout.get("text-rotate").evaluate(zu,{},Ec)+90;tc=new hv(Yh,gs,Kh,Jh,Hc,pu.vertical,Uf,Ih,vh,Rh),dh&&(gf=new hv(Yh,gs,Kh,Jh,Hc,dh,nf,Lp,vh,Rh))}if(Bf){let Rh=Nf.layout.get("icon-rotate").evaluate(zu,{}),Xp=Nf.layout.get("icon-text-fit")!=="none",dv=Jx(Bf,Rh,Pp,Xp),$h=dh?Jx(dh,Rh,Pp,Xp):void 0;Wp=new hv(Yh,gs,Kh,Jh,Hc,Bf,nf,Lp,!1,Rh),Zp=4*dv.length;let Dh=bo.iconSizeData,nd=null;Dh.kind==="source"?(nd=[yd*Nf.layout.get("icon-size").evaluate(zu,{})],nd[0]>cv&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)):Dh.kind==="composite"&&(nd=[yd*xu.compositeIconSizes[0].evaluate(zu,{},Ec),yd*xu.compositeIconSizes[1].evaluate(zu,{},Ec)],(nd[0]>cv||nd[1]>cv)&&f(`${bo.layerIds[0]}: Value for "icon-size" is >= ${Mg}. Reduce your "icon-size".`)),bo.addSymbols(bo.icon,dv,nd,Nl,pp,zu,e.ah.none,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),Y1=bo.icon.placedSymbolArray.length-1,$h&&(Xd=4*$h.length,bo.addSymbols(bo.icon,$h,nd,Nl,pp,zu,e.ah.vertical,gs,_d.lineStartIndex,_d.lineLength,-1,Ec),R0=bo.icon.placedSymbolArray.length-1)}let rh=Object.keys(pu.horizontal);for(let Rh of rh){let Xp=pu.horizontal[Rh];if(!hd){Ov=Xa(Xp.text);let $h=Nf.layout.get("text-rotate").evaluate(zu,{},Ec);hd=new hv(Yh,gs,Kh,Jh,Hc,Xp,Uf,Ih,vh,$h)}let dv=Xp.positionedLines.length===1;if(dp+=eb(bo,gs,Xp,Gp,Nf,vh,zu,th,_d,pu.vertical?e.ah.horizontal:e.ah.horizontalOnly,dv?rh:[Rh],xd,Y1,xu,Ec),dv)break}pu.vertical&&(vm+=eb(bo,gs,pu.vertical,Gp,Nf,vh,zu,th,_d,e.ah.vertical,["vertical"],xd,R0,xu,Ec));let sA=hd?hd.boxStartIndex:bo.collisionBoxArray.length,D0=hd?hd.boxEndIndex:bo.collisionBoxArray.length,bd=tc?tc.boxStartIndex:bo.collisionBoxArray.length,vp=tc?tc.boxEndIndex:bo.collisionBoxArray.length,nb=Wp?Wp.boxStartIndex:bo.collisionBoxArray.length,lA=Wp?Wp.boxEndIndex:bo.collisionBoxArray.length,ob=gf?gf.boxStartIndex:bo.collisionBoxArray.length,uA=gf?gf.boxEndIndex:bo.collisionBoxArray.length,id=-1,Fg=(Rh,Xp)=>Rh&&Rh.circleDiameter?Math.max(Rh.circleDiameter,Xp):Xp;id=Fg(hd,id),id=Fg(tc,id),id=Fg(Wp,id),id=Fg(gf,id);let z0=id>-1?1:0;z0&&(id*=dm/Bl),bo.glyphOffsetArray.length>=um.MAX_GLYPHS&&f("Too many glyphs being rendered in a tile. See https://github.com/mapbox/mapbox-gl-js/issues/2907"),zu.sortKey!==void 0&&bo.addToSortKeyRanges(bo.symbolInstances.length,zu.sortKey);let K1=Qx(Nf,zu,Ec),[cA,fA]=function(Rh,Xp){let dv=Rh.length,$h=Xp?.values;if($h?.length>0)for(let Dh=0;Dh<$h.length;Dh+=2){let nd=$h[Dh+1];Rh.emplaceBack(e.aq[$h[Dh]],nd[0],nd[1])}return[dv,Rh.length]}(bo.textAnchorOffsets,K1);bo.symbolInstances.emplaceBack(gs.x,gs.y,xd.right>=0?xd.right:-1,xd.center>=0?xd.center:-1,xd.left>=0?xd.left:-1,xd.vertical||-1,Y1,R0,Ov,sA,D0,bd,vp,nb,lA,ob,uA,Kh,dp,vm,Zp,Xd,z0,0,Uf,id,cA,fA)}(q,Ko,Yi,Y,pe,Ce,Mo,q.layers[0],q.collisionBoxArray,D.index,D.sourceLayerIndex,q.index,za,[hi,hi,hi,hi],fo,Tt,gi,Ei,ss,zr,D,Ue,Ft,$t,Ge)};if(eo==="line")for(let Yi of Wx(D.geometry,0,0,ao,ao)){let Ko=tA(Yi,ei,En,Y.vertical||Kr,pe,24,ja,q.overscaling,ao);for(let bo of Ko)Kr&&nA(q,Kr.text,vn,bo)||xo(Yi,bo)}else if(eo==="line-center"){for(let Yi of D.geometry)if(Yi.length>1){let Ko=eA(Yi,En,Y.vertical||Kr,pe,24,ja);Ko&&xo(Yi,Ko)}}else if(D.type==="Polygon")for(let Yi of Ic(D.geometry,0)){let Ko=rA(Yi,16);xo(Yi[0],new Wd(Ko.x,Ko.y,0))}else if(D.type==="LineString")for(let Yi of D.geometry)xo(Yi,new Wd(Yi[0].x,Yi[0].y,0));else if(D.type==="Point")for(let Yi of D.geometry)for(let Ko of Yi)xo([Ko],new Wd(Ko.x,Ko.y,0))}function eb(q,D,Y,pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr){let la=function(gi,ei,hi,Ei,En,fo,ss,eo){let vn=Ei.layout.get("text-rotate").evaluate(fo,{})*Math.PI/180,Uo=[];for(let Mo of ei.positionedLines)for(let xo of Mo.positionedGlyphs){if(!xo.rect)continue;let Yi=xo.rect||{},Ko=Lx+1,bo=!0,gs=1,_u=0,pu=(En||eo)&&xo.vertical,Bf=xo.metrics.advance*xo.scale/2;if(eo&&ei.verticalizable&&(_u=Mo.lineOffset/2-(xo.imageName?-(Bl-xo.metrics.width*xo.scale)/2:(xo.scale-1)*Bl)),xo.imageName){let Nl=ss[xo.imageName];bo=Nl.sdf,gs=Nl.pixelRatio,Ko=Ph/gs}let Gp=En?[xo.x+Bf,xo.y]:[0,0],dh=En?[0,0]:[xo.x+Bf+hi[0],xo.y+hi[1]-_u],Nf=[0,0];pu&&(Nf=dh,dh=[0,0]);let Yh=xo.metrics.isDoubleResolution?2:1,Kh=(xo.metrics.left-Ko)*xo.scale-Bf+dh[0],Jh=(-xo.metrics.top-Ko)*xo.scale+dh[1],Hc=Kh+Yi.w/Yh*xo.scale/gs,Uf=Jh+Yi.h/Yh*xo.scale/gs,Ih=new i(Kh,Jh),vh=new i(Hc,Jh),th=new i(Kh,Uf),nf=new i(Hc,Uf);if(pu){let Nl=new i(-Bf,Bf-Of),zu=-Math.PI/2,xu=Bl/2-Bf,Pp=new i(5-Of-xu,-(xo.imageName?xu:0)),Ec=new i(...Nf);Ih._rotateAround(zu,Nl)._add(Pp)._add(Ec),vh._rotateAround(zu,Nl)._add(Pp)._add(Ec),th._rotateAround(zu,Nl)._add(Pp)._add(Ec),nf._rotateAround(zu,Nl)._add(Pp)._add(Ec)}if(vn){let Nl=Math.sin(vn),zu=Math.cos(vn),xu=[zu,-Nl,Nl,zu];Ih._matMult(xu),vh._matMult(xu),th._matMult(xu),nf._matMult(xu)}let Lp=new i(0,0),pp=new i(0,0);Uo.push({tl:Ih,tr:vh,bl:th,br:nf,tex:Yi,writingMode:ei.writingMode,glyphOffset:Gp,sectionIndex:xo.sectionIndex,isSDF:bo,pixelOffsetTL:Lp,pixelOffsetBR:pp,minFontScaleX:0,minFontScaleY:0})}return Uo}(0,Y,ut,Ce,Ue,Ge,pe,q.allowVerticalPlacement),za=q.textSizeData,ja=null;za.kind==="source"?(ja=[yd*Ce.layout.get("text-size").evaluate(Ge,{})],ja[0]>cv&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)):za.kind==="composite"&&(ja=[yd*zr.compositeTextSizes[0].evaluate(Ge,{},Kr),yd*zr.compositeTextSizes[1].evaluate(Ge,{},Kr)],(ja[0]>cv||ja[1]>cv)&&f(`${q.layerIds[0]}: Value for "text-size" is >= ${Mg}. Reduce your "text-size".`)),q.addSymbols(q.text,la,ja,ut,Ue,Ge,Ft,D,Tt.lineStartIndex,Tt.lineLength,Ar,Kr);for(let gi of $t)lr[gi]=q.text.placedSymbolArray.length-1;return 4*la.length}function tb(q){for(let D in q)return q[D];return null}function nA(q,D,Y,pe){let Ce=q.compareText;if(D in Ce){let Ue=Ce[D];for(let Ge=Ue.length-1;Ge>=0;Ge--)if(pe.dist(Ue[Ge])<Y)return!0}else Ce[D]=[];return Ce[D].push(pe),!1}let rb=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class G1{static from(D){if(!(D instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[Y,pe]=new Uint8Array(D,0,2);if(Y!==219)throw new Error("Data does not appear to be in a KDBush format.");let Ce=pe>>4;if(Ce!==1)throw new Error(`Got v${Ce} data when expected v1.`);let Ue=rb[15&pe];if(!Ue)throw new Error("Unrecognized array type.");let[Ge]=new Uint16Array(D,2,1),[ut]=new Uint32Array(D,4,1);return new G1(ut,Ge,Ue,D)}constructor(D,Y=64,pe=Float64Array,Ce){if(isNaN(D)||D<0)throw new Error(`Unpexpected numItems value: ${D}.`);this.numItems=+D,this.nodeSize=Math.min(Math.max(+Y,2),65535),this.ArrayType=pe,this.IndexArrayType=D<65536?Uint16Array:Uint32Array;let Ue=rb.indexOf(this.ArrayType),Ge=2*D*this.ArrayType.BYTES_PER_ELEMENT,ut=D*this.IndexArrayType.BYTES_PER_ELEMENT,Tt=(8-ut%8)%8;if(Ue<0)throw new Error(`Unexpected typed array class: ${pe}.`);Ce&&Ce instanceof ArrayBuffer?(this.data=Ce,this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=2*D,this._finished=!0):(this.data=new ArrayBuffer(8+Ge+ut+Tt),this.ids=new this.IndexArrayType(this.data,8,D),this.coords=new this.ArrayType(this.data,8+ut+Tt,2*D),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,16+Ue]),new Uint16Array(this.data,2,1)[0]=Y,new Uint32Array(this.data,4,1)[0]=D)}add(D,Y){let pe=this._pos>>1;return this.ids[pe]=pe,this.coords[this._pos++]=D,this.coords[this._pos++]=Y,pe}finish(){let D=this._pos>>1;if(D!==this.numItems)throw new Error(`Added ${D} items when expected ${this.numItems}.`);return L0(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(D,Y,pe,Ce){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ue,coords:Ge,nodeSize:ut}=this,Tt=[0,Ue.length-1,0],Ft=[];for(;Tt.length;){let $t=Tt.pop()||0,lr=Tt.pop()||0,Ar=Tt.pop()||0;if(lr-Ar<=ut){for(let za=Ar;za<=lr;za++){let ja=Ge[2*za],gi=Ge[2*za+1];ja>=D&&ja<=pe&&gi>=Y&&gi<=Ce&&Ft.push(Ue[za])}continue}let zr=Ar+lr>>1,Kr=Ge[2*zr],la=Ge[2*zr+1];Kr>=D&&Kr<=pe&&la>=Y&&la<=Ce&&Ft.push(Ue[zr]),($t===0?D<=Kr:Y<=la)&&(Tt.push(Ar),Tt.push(zr-1),Tt.push(1-$t)),($t===0?pe>=Kr:Ce>=la)&&(Tt.push(zr+1),Tt.push(lr),Tt.push(1-$t))}return Ft}within(D,Y,pe){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:Ce,coords:Ue,nodeSize:Ge}=this,ut=[0,Ce.length-1,0],Tt=[],Ft=pe*pe;for(;ut.length;){let $t=ut.pop()||0,lr=ut.pop()||0,Ar=ut.pop()||0;if(lr-Ar<=Ge){for(let za=Ar;za<=lr;za++)ib(Ue[2*za],Ue[2*za+1],D,Y)<=Ft&&Tt.push(Ce[za]);continue}let zr=Ar+lr>>1,Kr=Ue[2*zr],la=Ue[2*zr+1];ib(Kr,la,D,Y)<=Ft&&Tt.push(Ce[zr]),($t===0?D-pe<=Kr:Y-pe<=la)&&(ut.push(Ar),ut.push(zr-1),ut.push(1-$t)),($t===0?D+pe>=Kr:Y+pe>=la)&&(ut.push(zr+1),ut.push(lr),ut.push(1-$t))}return Tt}}function L0(q,D,Y,pe,Ce,Ue){if(Ce-pe<=Y)return;let Ge=pe+Ce>>1;ab(q,D,Ge,pe,Ce,Ue),L0(q,D,Y,pe,Ge-1,1-Ue),L0(q,D,Y,Ge+1,Ce,1-Ue)}function ab(q,D,Y,pe,Ce,Ue){for(;Ce>pe;){if(Ce-pe>600){let Ft=Ce-pe+1,$t=Y-pe+1,lr=Math.log(Ft),Ar=.5*Math.exp(2*lr/3),zr=.5*Math.sqrt(lr*Ar*(Ft-Ar)/Ft)*($t-Ft/2<0?-1:1);ab(q,D,Y,Math.max(pe,Math.floor(Y-$t*Ar/Ft+zr)),Math.min(Ce,Math.floor(Y+(Ft-$t)*Ar/Ft+zr)),Ue)}let Ge=D[2*Y+Ue],ut=pe,Tt=Ce;for(Dg(q,D,pe,Y),D[2*Ce+Ue]>Ge&&Dg(q,D,pe,Ce);ut<Tt;){for(Dg(q,D,ut,Tt),ut++,Tt--;D[2*ut+Ue]<Ge;)ut++;for(;D[2*Tt+Ue]>Ge;)Tt--}D[2*pe+Ue]===Ge?Dg(q,D,pe,Tt):(Tt++,Dg(q,D,Tt,Ce)),Tt<=Y&&(pe=Tt+1),Y<=Tt&&(Ce=Tt-1)}}function Dg(q,D,Y,pe){W1(q,Y,pe),W1(D,2*Y,2*pe),W1(D,2*Y+1,2*pe+1)}function W1(q,D,Y){let pe=q[D];q[D]=q[Y],q[Y]=pe}function ib(q,D,Y,pe){let Ce=q-Y,Ue=D-pe;return Ce*Ce+Ue*Ue}var P0;e.bg=void 0,(P0=e.bg||(e.bg={})).create="create",P0.load="load",P0.fullLoad="fullLoad";let zg=null,Mf=[],Z1=1e3/60,X1="loadTime",I0="fullLoadTime",oA={mark(q){performance.mark(q)},frame(q){let D=q;zg!=null&&Mf.push(D-zg),zg=D},clearMetrics(){zg=null,Mf=[],performance.clearMeasures(X1),performance.clearMeasures(I0);for(let q in e.bg)performance.clearMarks(e.bg[q])},getPerformanceMetrics(){performance.measure(X1,e.bg.create,e.bg.load),performance.measure(I0,e.bg.create,e.bg.fullLoad);let q=performance.getEntriesByName(X1)[0].duration,D=performance.getEntriesByName(I0)[0].duration,Y=Mf.length,pe=1/(Mf.reduce((Ue,Ge)=>Ue+Ge,0)/Y/1e3),Ce=Mf.filter(Ue=>Ue>Z1).reduce((Ue,Ge)=>Ue+(Ge-Z1)/Z1,0);return{loadTime:q,fullLoadTime:D,fps:pe,percentDroppedFrames:Ce/(Y+Ce)*100,totalFrames:Y}}};e.$=class extends cr{},e.A=tn,e.B=yi,e.C=function(q){if(z==null){let D=q.navigator?q.navigator.userAgent:null;z=!!q.safari||!(!D||!(/\b(iPad|iPhone|iPod)\b/.test(D)||D.match("Safari")&&!D.match("Chrome")))}return z},e.D=ro,e.E=ee,e.F=class{constructor(q,D){this.target=q,this.mapId=D,this.resolveRejects={},this.tasks={},this.taskQueue=[],this.abortControllers={},this.messageHandlers={},this.invoker=new B1(()=>this.process()),this.subscription=function(Y,pe,Ce,Ue){return Y.addEventListener(pe,Ce,!1),{unsubscribe:()=>{Y.removeEventListener(pe,Ce,!1)}}}(this.target,"message",Y=>this.receive(Y)),this.globalScope=L(self)?q:window}registerMessageHandler(q,D){this.messageHandlers[q]=D}sendAsync(q,D){return new Promise((Y,pe)=>{let Ce=Math.round(1e18*Math.random()).toString(36).substring(0,10);this.resolveRejects[Ce]={resolve:Y,reject:pe},D&&D.signal.addEventListener("abort",()=>{delete this.resolveRejects[Ce];let ut={id:Ce,type:"<cancel>",origin:location.origin,targetMapId:q.targetMapId,sourceMapId:this.mapId};this.target.postMessage(ut)},{once:!0});let Ue=[],Ge=Object.assign(Object.assign({},q),{id:Ce,sourceMapId:this.mapId,origin:location.origin,data:Jn(q.data,Ue)});this.target.postMessage(Ge,{transfer:Ue})})}receive(q){let D=q.data,Y=D.id;if(!(D.origin!=="file://"&&location.origin!=="file://"&&D.origin!=="resource://android"&&location.origin!=="resource://android"&&D.origin!==location.origin||D.targetMapId&&this.mapId!==D.targetMapId)){if(D.type==="<cancel>"){delete this.tasks[Y];let pe=this.abortControllers[Y];return delete this.abortControllers[Y],void(pe&&pe.abort())}if(L(self)||D.mustQueue)return this.tasks[Y]=D,this.taskQueue.push(Y),void this.invoker.trigger();this.processTask(Y,D)}}process(){if(this.taskQueue.length===0)return;let q=this.taskQueue.shift(),D=this.tasks[q];delete this.tasks[q],this.taskQueue.length>0&&this.invoker.trigger(),D&&this.processTask(q,D)}processTask(q,D){return t(this,void 0,void 0,function*(){if(D.type==="<response>"){let Ce=this.resolveRejects[q];return delete this.resolveRejects[q],Ce?void(D.error?Ce.reject(no(D.error)):Ce.resolve(no(D.data))):void 0}if(!this.messageHandlers[D.type])return void this.completeTask(q,new Error(`Could not find a registered handler for ${D.type}, map ID: ${this.mapId}, available handlers: ${Object.keys(this.messageHandlers).join(", ")}`));let Y=no(D.data),pe=new AbortController;this.abortControllers[q]=pe;try{let Ce=yield this.messageHandlers[D.type](D.sourceMapId,Y,pe);this.completeTask(q,null,Ce)}catch(Ce){this.completeTask(q,Ce)}})}completeTask(q,D,Y){let pe=[];delete this.abortControllers[q];let Ce={id:q,type:"<response>",sourceMapId:this.mapId,origin:location.origin,error:D?Jn(D):null,data:Jn(Y,pe)};this.target.postMessage(Ce,{transfer:pe})}remove(){this.invoker.remove(),this.subscription.unsubscribe()}},e.G=se,e.H=function(){var q=new tn(16);return tn!=Float32Array&&(q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=0,q[12]=0,q[13]=0,q[14]=0),q[0]=1,q[5]=1,q[10]=1,q[15]=1,q},e.I=x0,e.J=function(q,D,Y){var pe,Ce,Ue,Ge,ut,Tt,Ft,$t,lr,Ar,zr,Kr,la=Y[0],za=Y[1],ja=Y[2];return D===q?(q[12]=D[0]*la+D[4]*za+D[8]*ja+D[12],q[13]=D[1]*la+D[5]*za+D[9]*ja+D[13],q[14]=D[2]*la+D[6]*za+D[10]*ja+D[14],q[15]=D[3]*la+D[7]*za+D[11]*ja+D[15]):(Ce=D[1],Ue=D[2],Ge=D[3],ut=D[4],Tt=D[5],Ft=D[6],$t=D[7],lr=D[8],Ar=D[9],zr=D[10],Kr=D[11],q[0]=pe=D[0],q[1]=Ce,q[2]=Ue,q[3]=Ge,q[4]=ut,q[5]=Tt,q[6]=Ft,q[7]=$t,q[8]=lr,q[9]=Ar,q[10]=zr,q[11]=Kr,q[12]=pe*la+ut*za+lr*ja+D[12],q[13]=Ce*la+Tt*za+Ar*ja+D[13],q[14]=Ue*la+Ft*za+zr*ja+D[14],q[15]=Ge*la+$t*za+Kr*ja+D[15]),q},e.K=function(q,D,Y){var pe=Y[0],Ce=Y[1],Ue=Y[2];return q[0]=D[0]*pe,q[1]=D[1]*pe,q[2]=D[2]*pe,q[3]=D[3]*pe,q[4]=D[4]*Ce,q[5]=D[5]*Ce,q[6]=D[6]*Ce,q[7]=D[7]*Ce,q[8]=D[8]*Ue,q[9]=D[9]*Ue,q[10]=D[10]*Ue,q[11]=D[11]*Ue,q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.L=qi,e.M=function(q,D){let Y={};for(let pe=0;pe<D.length;pe++){let Ce=D[pe];Ce in q&&(Y[Ce]=q[Ce])}return Y},e.N=Gd,e.O=E0,e.P=i,e.Q=Ux,e.R=wn,e.S=Hp,e.T=ec,e.U=p,e.V=T,e.W=O,e.X=ao,e.Y=ft,e.Z=Ig,e._=t,e.a=Q,e.a$=function(q,D){var Y=q[0],pe=q[1],Ce=q[2],Ue=q[3],Ge=q[4],ut=q[5],Tt=q[6],Ft=q[7],$t=q[8],lr=q[9],Ar=q[10],zr=q[11],Kr=q[12],la=q[13],za=q[14],ja=q[15],gi=D[0],ei=D[1],hi=D[2],Ei=D[3],En=D[4],fo=D[5],ss=D[6],eo=D[7],vn=D[8],Uo=D[9],Mo=D[10],xo=D[11],Yi=D[12],Ko=D[13],bo=D[14],gs=D[15];return Math.abs(Y-gi)<=Mi*Math.max(1,Math.abs(Y),Math.abs(gi))&&Math.abs(pe-ei)<=Mi*Math.max(1,Math.abs(pe),Math.abs(ei))&&Math.abs(Ce-hi)<=Mi*Math.max(1,Math.abs(Ce),Math.abs(hi))&&Math.abs(Ue-Ei)<=Mi*Math.max(1,Math.abs(Ue),Math.abs(Ei))&&Math.abs(Ge-En)<=Mi*Math.max(1,Math.abs(Ge),Math.abs(En))&&Math.abs(ut-fo)<=Mi*Math.max(1,Math.abs(ut),Math.abs(fo))&&Math.abs(Tt-ss)<=Mi*Math.max(1,Math.abs(Tt),Math.abs(ss))&&Math.abs(Ft-eo)<=Mi*Math.max(1,Math.abs(Ft),Math.abs(eo))&&Math.abs($t-vn)<=Mi*Math.max(1,Math.abs($t),Math.abs(vn))&&Math.abs(lr-Uo)<=Mi*Math.max(1,Math.abs(lr),Math.abs(Uo))&&Math.abs(Ar-Mo)<=Mi*Math.max(1,Math.abs(Ar),Math.abs(Mo))&&Math.abs(zr-xo)<=Mi*Math.max(1,Math.abs(zr),Math.abs(xo))&&Math.abs(Kr-Yi)<=Mi*Math.max(1,Math.abs(Kr),Math.abs(Yi))&&Math.abs(la-Ko)<=Mi*Math.max(1,Math.abs(la),Math.abs(Ko))&&Math.abs(za-bo)<=Mi*Math.max(1,Math.abs(za),Math.abs(bo))&&Math.abs(ja-gs)<=Mi*Math.max(1,Math.abs(ja),Math.abs(gs))},e.a0=wt,e.a1=U1,e.a2=ge,e.a3=q=>{let D=window.document.createElement("video");return D.muted=!0,new Promise(Y=>{D.onloadstart=()=>{Y(D)};for(let pe of q){let Ce=window.document.createElement("source");J(pe)||(D.crossOrigin="Anonymous"),Ce.src=pe,D.appendChild(Ce)}})},e.a4=function(){return m++},e.a5=Ci,e.a6=um,e.a7=bc,e.a8=Dl,e.a9=j1,e.aA=function(q){if(q.type==="custom")return new O1(q);switch(q.type){case"background":return new $T(q);case"circle":return new Zi(q);case"fill":return new Gr(q);case"fill-extrusion":return new Sp(q);case"heatmap":return new os(q);case"hillshade":return new Uc(q);case"line":return new Lv(q);case"raster":return new Lg(q);case"symbol":return new Dv(q)}},e.aB=u,e.aC=function(q,D){if(!q)return[{command:"setStyle",args:[D]}];let Y=[];try{if(!Ae(q.version,D.version))return[{command:"setStyle",args:[D]}];Ae(q.center,D.center)||Y.push({command:"setCenter",args:[D.center]}),Ae(q.zoom,D.zoom)||Y.push({command:"setZoom",args:[D.zoom]}),Ae(q.bearing,D.bearing)||Y.push({command:"setBearing",args:[D.bearing]}),Ae(q.pitch,D.pitch)||Y.push({command:"setPitch",args:[D.pitch]}),Ae(q.sprite,D.sprite)||Y.push({command:"setSprite",args:[D.sprite]}),Ae(q.glyphs,D.glyphs)||Y.push({command:"setGlyphs",args:[D.glyphs]}),Ae(q.transition,D.transition)||Y.push({command:"setTransition",args:[D.transition]}),Ae(q.light,D.light)||Y.push({command:"setLight",args:[D.light]}),Ae(q.terrain,D.terrain)||Y.push({command:"setTerrain",args:[D.terrain]}),Ae(q.sky,D.sky)||Y.push({command:"setSky",args:[D.sky]}),Ae(q.projection,D.projection)||Y.push({command:"setProjection",args:[D.projection]});let pe={},Ce=[];(function(Ge,ut,Tt,Ft){let $t;for($t in ut=ut||{},Ge=Ge||{})Object.prototype.hasOwnProperty.call(Ge,$t)&&(Object.prototype.hasOwnProperty.call(ut,$t)||Ze($t,Tt,Ft));for($t in ut)Object.prototype.hasOwnProperty.call(ut,$t)&&(Object.prototype.hasOwnProperty.call(Ge,$t)?Ae(Ge[$t],ut[$t])||(Ge[$t].type==="geojson"&&ut[$t].type==="geojson"&&it(Ge,ut,$t)?Be(Tt,{command:"setGeoJSONSourceData",args:[$t,ut[$t].data]}):at($t,ut,Tt,Ft)):Ie($t,ut,Tt))})(q.sources,D.sources,Ce,pe);let Ue=[];q.layers&&q.layers.forEach(Ge=>{"source"in Ge&&pe[Ge.source]?Y.push({command:"removeLayer",args:[Ge.id]}):Ue.push(Ge)}),Y=Y.concat(Ce),function(Ge,ut,Tt){ut=ut||[];let Ft=(Ge=Ge||[]).map(lt),$t=ut.map(lt),lr=Ge.reduce(Me,{}),Ar=ut.reduce(Me,{}),zr=Ft.slice(),Kr=Object.create(null),la,za,ja,gi,ei;for(let hi=0,Ei=0;hi<Ft.length;hi++)la=Ft[hi],Object.prototype.hasOwnProperty.call(Ar,la)?Ei++:(Be(Tt,{command:"removeLayer",args:[la]}),zr.splice(zr.indexOf(la,Ei),1));for(let hi=0,Ei=0;hi<$t.length;hi++)la=$t[$t.length-1-hi],zr[zr.length-1-hi]!==la&&(Object.prototype.hasOwnProperty.call(lr,la)?(Be(Tt,{command:"removeLayer",args:[la]}),zr.splice(zr.lastIndexOf(la,zr.length-Ei),1)):Ei++,gi=zr[zr.length-hi],Be(Tt,{command:"addLayer",args:[Ar[la],gi]}),zr.splice(zr.length-hi,0,la),Kr[la]=!0);for(let hi=0;hi<$t.length;hi++)if(la=$t[hi],za=lr[la],ja=Ar[la],!Kr[la]&&!Ae(za,ja))if(Ae(za.source,ja.source)&&Ae(za["source-layer"],ja["source-layer"])&&Ae(za.type,ja.type)){for(ei in et(za.layout,ja.layout,Tt,la,null,"setLayoutProperty"),et(za.paint,ja.paint,Tt,la,null,"setPaintProperty"),Ae(za.filter,ja.filter)||Be(Tt,{command:"setFilter",args:[la,ja.filter]}),Ae(za.minzoom,ja.minzoom)&&Ae(za.maxzoom,ja.maxzoom)||Be(Tt,{command:"setLayerZoomRange",args:[la,ja.minzoom,ja.maxzoom]}),za)Object.prototype.hasOwnProperty.call(za,ei)&&ei!=="layout"&&ei!=="paint"&&ei!=="filter"&&ei!=="metadata"&&ei!=="minzoom"&&ei!=="maxzoom"&&(ei.indexOf("paint.")===0?et(za[ei],ja[ei],Tt,la,ei.slice(6),"setPaintProperty"):Ae(za[ei],ja[ei])||Be(Tt,{command:"setLayerProperty",args:[la,ei,ja[ei]]}));for(ei in ja)Object.prototype.hasOwnProperty.call(ja,ei)&&!Object.prototype.hasOwnProperty.call(za,ei)&&ei!=="layout"&&ei!=="paint"&&ei!=="filter"&&ei!=="metadata"&&ei!=="minzoom"&&ei!=="maxzoom"&&(ei.indexOf("paint.")===0?et(za[ei],ja[ei],Tt,la,ei.slice(6),"setPaintProperty"):Ae(za[ei],ja[ei])||Be(Tt,{command:"setLayerProperty",args:[la,ei,ja[ei]]}))}else Be(Tt,{command:"removeLayer",args:[la]}),gi=zr[zr.lastIndexOf(la)+1],Be(Tt,{command:"addLayer",args:[ja,gi]})}(Ue,D.layers,Y)}catch(pe){console.warn("Unable to compute style diff:",pe),Y=[{command:"setStyle",args:[D]}]}return Y},e.aD=function(q){let D=[],Y=q.id;return Y===void 0&&D.push({message:`layers.${Y}: missing required property "id"`}),q.render===void 0&&D.push({message:`layers.${Y}: missing required method "render"`}),q.renderingMode&&q.renderingMode!=="2d"&&q.renderingMode!=="3d"&&D.push({message:`layers.${Y}: property "renderingMode" must be either "2d" or "3d"`}),D},e.aE=function q(D,Y){if(Array.isArray(D)){if(!Array.isArray(Y)||D.length!==Y.length)return!1;for(let pe=0;pe<D.length;pe++)if(!q(D[pe],Y[pe]))return!1;return!0}if(typeof D=="object"&&D!==null&&Y!==null){if(typeof Y!="object"||Object.keys(D).length!==Object.keys(Y).length)return!1;for(let pe in D)if(!q(D[pe],Y[pe]))return!1;return!0}return D===Y},e.aF=b,e.aG=d,e.aH=class extends Ya{constructor(q,D){super(q,D),this.current=0}set(q){this.current!==q&&(this.current=q,this.gl.uniform1i(this.location,q))}},e.aI=Da,e.aJ=class extends Ya{constructor(q,D){super(q,D),this.current=Qi}set(q){if(q[12]!==this.current[12]||q[0]!==this.current[0])return this.current=q,void this.gl.uniformMatrix4fv(this.location,!1,q);for(let D=1;D<16;D++)if(q[D]!==this.current[D]){this.current=q,this.gl.uniformMatrix4fv(this.location,!1,q);break}}},e.aK=zi,e.aL=Ni,e.aM=Ut,e.aN=class extends Ya{constructor(q,D){super(q,D),this.current=[0,0,0]}set(q){q[0]===this.current[0]&&q[1]===this.current[1]&&q[2]===this.current[2]||(this.current=q,this.gl.uniform3f(this.location,q[0],q[1],q[2]))}},e.aO=class extends Ya{constructor(q,D){super(q,D),this.current=[0,0]}set(q){q[0]===this.current[0]&&q[1]===this.current[1]||(this.current=q,this.gl.uniform2f(this.location,q[0],q[1]))}},e.aP=function(q,D,Y,pe,Ce,Ue,Ge){var ut=1/(D-Y),Tt=1/(pe-Ce),Ft=1/(Ue-Ge);return q[0]=-2*ut,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=-2*Tt,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=2*Ft,q[11]=0,q[12]=(D+Y)*ut,q[13]=(Ce+pe)*Tt,q[14]=(Ge+Ue)*Ft,q[15]=1,q},e.aQ=bn,e.aR=class extends Pt{},e.aS=nv,e.aT=class extends nr{},e.aU=Xo,e.aV=function(q){return q<=1?1:Math.pow(2,Math.ceil(Math.log(q)/Math.LN2))},e.aW=oo,e.aX=Zo,e.aY=Re,e.aZ=class extends Ja{},e.a_=function(q,D){return q[0]===D[0]&&q[1]===D[1]&&q[2]===D[2]&&q[3]===D[3]&&q[4]===D[4]&&q[5]===D[5]&&q[6]===D[6]&&q[7]===D[7]&&q[8]===D[8]&&q[9]===D[9]&&q[10]===D[10]&&q[11]===D[11]&&q[12]===D[12]&&q[13]===D[13]&&q[14]===D[14]&&q[15]===D[15]},e.aa=function(q){let D={};if(q.replace(/(?:^|(?:\s*\,\s*))([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)(?:\=(?:([^\x00-\x20\(\)<>@\,;\:\\"\/\[\]\?\=\{\}\x7F]+)|(?:\"((?:[^"\\]|\\.)*)\")))?/g,(Y,pe,Ce,Ue)=>{let Ge=Ce||Ue;return D[pe]=!Ge||Ge.toLowerCase(),""}),D["max-age"]){let Y=parseInt(D["max-age"],10);isNaN(Y)?delete D["max-age"]:D["max-age"]=Y}return D},e.ab=function(q,D){let Y=[];for(let pe in q)pe in D||Y.push(pe);return Y},e.ac=w,e.ad=function(q,D,Y){var pe=Math.sin(Y),Ce=Math.cos(Y),Ue=D[0],Ge=D[1],ut=D[2],Tt=D[3],Ft=D[4],$t=D[5],lr=D[6],Ar=D[7];return D!==q&&(q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[0]=Ue*Ce+Ft*pe,q[1]=Ge*Ce+$t*pe,q[2]=ut*Ce+lr*pe,q[3]=Tt*Ce+Ar*pe,q[4]=Ft*Ce-Ue*pe,q[5]=$t*Ce-Ge*pe,q[6]=lr*Ce-ut*pe,q[7]=Ar*Ce-Tt*pe,q},e.ae=function(q){var D=new tn(16);return D[0]=q[0],D[1]=q[1],D[2]=q[2],D[3]=q[3],D[4]=q[4],D[5]=q[5],D[6]=q[6],D[7]=q[7],D[8]=q[8],D[9]=q[9],D[10]=q[10],D[11]=q[11],D[12]=q[12],D[13]=q[13],D[14]=q[14],D[15]=q[15],D},e.af=_o,e.ag=function(q,D){let Y=0,pe=0;if(q.kind==="constant")pe=q.layoutSize;else if(q.kind!=="source"){let{interpolationType:Ce,minZoom:Ue,maxZoom:Ge}=q,ut=Ce?w(Cn.interpolationFactor(Ce,D,Ue,Ge),0,1):0;q.kind==="camera"?pe=$n.number(q.minSize,q.maxSize,ut):Y=ut}return{uSizeT:Y,uSize:pe}},e.ai=function(q,{uSize:D,uSizeT:Y},{lowerSize:pe,upperSize:Ce}){return q.kind==="source"?pe/yd:q.kind==="composite"?$n.number(pe/yd,Ce/yd,Y):D},e.aj=R1,e.ak=function(q,D,Y,pe){let Ce=D.y-q.y,Ue=D.x-q.x,Ge=pe.y-Y.y,ut=pe.x-Y.x,Tt=Ge*Ue-ut*Ce;if(Tt===0)return null;let Ft=(ut*(q.y-Y.y)-Ge*(q.x-Y.x))/Tt;return new i(q.x+Ft*Ue,q.y+Ft*Ce)},e.al=Wx,e.am=dc,e.an=pn,e.ao=function(q){let D=1/0,Y=1/0,pe=-1/0,Ce=-1/0;for(let Ue of q)D=Math.min(D,Ue.x),Y=Math.min(Y,Ue.y),pe=Math.max(pe,Ue.x),Ce=Math.max(Ce,Ue.y);return[D,Y,pe,Ce]},e.ap=Bl,e.ar=I1,e.as=function(q,D){var Y=D[0],pe=D[1],Ce=D[2],Ue=D[3],Ge=D[4],ut=D[5],Tt=D[6],Ft=D[7],$t=D[8],lr=D[9],Ar=D[10],zr=D[11],Kr=D[12],la=D[13],za=D[14],ja=D[15],gi=Y*ut-pe*Ge,ei=Y*Tt-Ce*Ge,hi=Y*Ft-Ue*Ge,Ei=pe*Tt-Ce*ut,En=pe*Ft-Ue*ut,fo=Ce*Ft-Ue*Tt,ss=$t*la-lr*Kr,eo=$t*za-Ar*Kr,vn=$t*ja-zr*Kr,Uo=lr*za-Ar*la,Mo=lr*ja-zr*la,xo=Ar*ja-zr*za,Yi=gi*xo-ei*Mo+hi*Uo+Ei*vn-En*eo+fo*ss;return Yi?(q[0]=(ut*xo-Tt*Mo+Ft*Uo)*(Yi=1/Yi),q[1]=(Ce*Mo-pe*xo-Ue*Uo)*Yi,q[2]=(la*fo-za*En+ja*Ei)*Yi,q[3]=(Ar*En-lr*fo-zr*Ei)*Yi,q[4]=(Tt*vn-Ge*xo-Ft*eo)*Yi,q[5]=(Y*xo-Ce*vn+Ue*eo)*Yi,q[6]=(za*hi-Kr*fo-ja*ei)*Yi,q[7]=($t*fo-Ar*hi+zr*ei)*Yi,q[8]=(Ge*Mo-ut*vn+Ft*ss)*Yi,q[9]=(pe*vn-Y*Mo-Ue*ss)*Yi,q[10]=(Kr*En-la*hi+ja*gi)*Yi,q[11]=(lr*hi-$t*En-zr*gi)*Yi,q[12]=(ut*eo-Ge*Uo-Tt*ss)*Yi,q[13]=(Y*Uo-pe*eo+Ce*ss)*Yi,q[14]=(la*ei-Kr*Ei-za*gi)*Yi,q[15]=($t*Ei-lr*ei+Ar*gi)*Yi,q):null},e.at=H1,e.au=A0,e.av=G1,e.aw=function(){let q={},D=ie.$version;for(let Y in ie.$root){let pe=ie.$root[Y];if(pe.required){let Ce=null;Ce=Y==="version"?D:pe.type==="array"?[]:{},Ce!=null&&(q[Y]=Ce)}}return q},e.ax=en,e.ay=G,e.az=function(q){q=q.slice();let D=Object.create(null);for(let Y=0;Y<q.length;Y++)D[q[Y].id]=q[Y];for(let Y=0;Y<q.length;Y++)"ref"in q[Y]&&(q[Y]=be(q[Y],D[q[Y].ref]));return q},e.b=F,e.b0=function(q,D){return q[0]=D[0],q[1]=D[1],q[2]=D[2],q[3]=D[3],q[4]=D[4],q[5]=D[5],q[6]=D[6],q[7]=D[7],q[8]=D[8],q[9]=D[9],q[10]=D[10],q[11]=D[11],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15],q},e.b1=function(q,D,Y){return q[0]=D[0]*Y[0],q[1]=D[1]*Y[1],q[2]=D[2]*Y[2],q[3]=D[3]*Y[3],q},e.b2=function(q,D){return q[0]*D[0]+q[1]*D[1]+q[2]*D[2]+q[3]*D[3]},e.b3=S,e.b4=jx,e.b5=k0,e.b6=function(q,D,Y,pe,Ce){var Ue,Ge=1/Math.tan(D/2);return q[0]=Ge/Y,q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=Ge,q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[11]=-1,q[12]=0,q[13]=0,q[15]=0,Ce!=null&&Ce!==1/0?(q[10]=(Ce+pe)*(Ue=1/(pe-Ce)),q[14]=2*Ce*pe*Ue):(q[10]=-1,q[14]=-2*pe),q},e.b7=function(q,D,Y){var pe=Math.sin(Y),Ce=Math.cos(Y),Ue=D[4],Ge=D[5],ut=D[6],Tt=D[7],Ft=D[8],$t=D[9],lr=D[10],Ar=D[11];return D!==q&&(q[0]=D[0],q[1]=D[1],q[2]=D[2],q[3]=D[3],q[12]=D[12],q[13]=D[13],q[14]=D[14],q[15]=D[15]),q[4]=Ue*Ce+Ft*pe,q[5]=Ge*Ce+$t*pe,q[6]=ut*Ce+lr*pe,q[7]=Tt*Ce+Ar*pe,q[8]=Ft*Ce-Ue*pe,q[9]=$t*Ce-Ge*pe,q[10]=lr*Ce-ut*pe,q[11]=Ar*Ce-Tt*pe,q},e.b8=l,e.b9=_,e.bA=Lh,e.bB=function(q){return q.message===U},e.bC=kl,e.bD=js,e.ba=function(q){return q*Math.PI/180},e.bb=function(q,D){let{x:Y,y:pe}=Ig.fromLngLat(D);return!(q<0||q>25||pe<0||pe>=1||Y<0||Y>=1)},e.bc=function(q,D){return q[0]=D[0],q[1]=0,q[2]=0,q[3]=0,q[4]=0,q[5]=D[1],q[6]=0,q[7]=0,q[8]=0,q[9]=0,q[10]=D[2],q[11]=0,q[12]=0,q[13]=0,q[14]=0,q[15]=1,q},e.bd=class extends Yt{},e.be=N1,e.bf=oA,e.bh=he,e.bi=function(q,D){Q.REGISTERED_PROTOCOLS[q]=D},e.bj=function(q){delete Q.REGISTERED_PROTOCOLS[q]},e.bk=function(q,D){let Y={};for(let Ce=0;Ce<q.length;Ce++){let Ue=D&&D[q[Ce].id]||Mh(q[Ce]);D&&(D[q[Ce].id]=Ue);let Ge=Y[Ue];Ge||(Ge=Y[Ue]=[]),Ge.push(q[Ce])}let pe=[];for(let Ce in Y)pe.push(Y[Ce]);return pe},e.bl=ti,e.bm=qx,e.bn=zv,e.bo=b0,e.bp=function(q){q.bucket.createArrays(),q.bucket.tilePixelRatio=ao/(512*q.bucket.overscaling),q.bucket.compareText={},q.bucket.iconsNeedLinear=!1;let D=q.bucket.layers[0],Y=D.layout,pe=D._unevaluatedLayout._values,Ce={layoutIconSize:pe["icon-size"].possiblyEvaluate(new Ts(q.bucket.zoom+1),q.canonical),layoutTextSize:pe["text-size"].possiblyEvaluate(new Ts(q.bucket.zoom+1),q.canonical),textMaxSize:pe["text-size"].possiblyEvaluate(new Ts(18))};if(q.bucket.textSizeData.kind==="composite"){let{minZoom:Ft,maxZoom:$t}=q.bucket.textSizeData;Ce.compositeTextSizes=[pe["text-size"].possiblyEvaluate(new Ts(Ft),q.canonical),pe["text-size"].possiblyEvaluate(new Ts($t),q.canonical)]}if(q.bucket.iconSizeData.kind==="composite"){let{minZoom:Ft,maxZoom:$t}=q.bucket.iconSizeData;Ce.compositeIconSizes=[pe["icon-size"].possiblyEvaluate(new Ts(Ft),q.canonical),pe["icon-size"].possiblyEvaluate(new Ts($t),q.canonical)]}let Ue=Y.get("text-line-height")*Bl,Ge=Y.get("text-rotation-alignment")!=="viewport"&&Y.get("symbol-placement")!=="point",ut=Y.get("text-keep-upright"),Tt=Y.get("text-size");for(let Ft of q.bucket.features){let $t=Y.get("text-font").evaluate(Ft,{},q.canonical).join(","),lr=Tt.evaluate(Ft,{},q.canonical),Ar=Ce.layoutTextSize.evaluate(Ft,{},q.canonical),zr=Ce.layoutIconSize.evaluate(Ft,{},q.canonical),Kr={horizontal:{},vertical:void 0},la=Ft.text,za,ja=[0,0];if(la){let hi=la.toString(),Ei=Y.get("text-letter-spacing").evaluate(Ft,{},q.canonical)*Bl,En=Wo(hi)?Ei:0,fo=Y.get("text-anchor").evaluate(Ft,{},q.canonical),ss=Qx(D,Ft,q.canonical);if(!ss){let Mo=Y.get("text-radial-offset").evaluate(Ft,{},q.canonical);ja=Mo?q1(fo,[Mo*Bl,Fv]):Y.get("text-offset").evaluate(Ft,{},q.canonical).map(xo=>xo*Bl)}let eo=Ge?"center":Y.get("text-justify").evaluate(Ft,{},q.canonical),vn=Y.get("symbol-placement")==="point"?Y.get("text-max-width").evaluate(Ft,{},q.canonical)*Bl:1/0,Uo=()=>{q.bucket.allowVerticalPlacement&&co(hi)&&(Kr.vertical=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,"left",En,ja,e.ah.vertical,!0,Ar,lr))};if(!Ge&&ss){let Mo=new Set;if(eo==="auto")for(let Yi=0;Yi<ss.values.length;Yi+=2)Mo.add(H1(ss.values[Yi]));else Mo.add(eo);let xo=!1;for(let Yi of Mo)if(!Kr.horizontal[Yi])if(xo)Kr.horizontal[Yi]=Kr.horizontal[0];else{let Ko=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,"center",Yi,En,ja,e.ah.horizontal,!1,Ar,lr);Ko&&(Kr.horizontal[Yi]=Ko,xo=Ko.positionedLines.length===1)}Uo()}else{eo==="auto"&&(eo=H1(fo));let Mo=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,eo,En,ja,e.ah.horizontal,!1,Ar,lr);Mo&&(Kr.horizontal[eo]=Mo),Uo(),co(hi)&&Ge&&ut&&(Kr.vertical=Ag(la,q.glyphMap,q.glyphPositions,q.imagePositions,$t,vn,Ue,fo,eo,En,ja,e.ah.vertical,!1,Ar,lr))}}let gi=!1;if(Ft.icon&&Ft.icon.name){let hi=q.imageMap[Ft.icon.name];hi&&(za=Sg(q.imagePositions[Ft.icon.name],Y.get("icon-offset").evaluate(Ft,{},q.canonical),Y.get("icon-anchor").evaluate(Ft,{},q.canonical)),gi=!!hi.sdf,q.bucket.sdfIcons===void 0?q.bucket.sdfIcons=gi:q.bucket.sdfIcons!==gi&&f("Style sheet warning: Cannot mix SDF and non-SDF icons in one buffer"),(hi.pixelRatio!==q.bucket.pixelRatio||Y.get("icon-rotate").constantOr(1)!==0)&&(q.bucket.iconsNeedLinear=!0))}let ei=tb(Kr.horizontal)||Kr.vertical;q.bucket.iconsInText=!!ei&&ei.iconsInText,(ei||za)&&iA(q.bucket,Ft,Kr,za,q.imageMap,Ce,Ar,zr,ja,gi,q.canonical)}q.showCollisionBoxes&&q.bucket.generateCollisionDebugBuffers()},e.bq=qp,e.br=Vr,e.bs=qo,e.bt=Oa,e.bu=C1,e.bv=class{constructor(q){this._marks={start:[q.url,"start"].join("#"),end:[q.url,"end"].join("#"),measure:q.url.toString()},performance.mark(this._marks.start)}finish(){performance.mark(this._marks.end);let q=performance.getEntriesByName(this._marks.measure);return q.length===0&&(performance.measure(this._marks.measure,this._marks.start,this._marks.end),q=performance.getEntriesByName(this._marks.measure),performance.clearMarks(this._marks.start),performance.clearMarks(this._marks.end),performance.clearMeasures(this._marks.measure)),q}},e.bw=function(q,D,Y,pe,Ce){return t(this,void 0,void 0,function*(){if(T())try{return yield O(q,D,Y,pe,Ce)}catch{}return function(Ue,Ge,ut,Tt,Ft){let $t=Ue.width,lr=Ue.height;I&&N||(I=new OffscreenCanvas($t,lr),N=I.getContext("2d",{willReadFrequently:!0})),I.width=$t,I.height=lr,N.drawImage(Ue,0,0,$t,lr);let Ar=N.getImageData(Ge,ut,Tt,Ft);return N.clearRect(0,0,$t,lr),Ar.data}(q,D,Y,pe,Ce)})},e.bx=Vx,e.by=r,e.bz=o,e.c=W,e.d=q=>t(void 0,void 0,void 0,function*(){if(q.byteLength===0)return createImageBitmap(new ImageData(1,1));let D=new Blob([new Uint8Array(q)],{type:"image/png"});try{return createImageBitmap(D)}catch(Y){throw new Error(`Could not load image because of ${Y.message}. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported.`)}}),e.e=E,e.f=q=>new Promise((D,Y)=>{let pe=new Image;pe.onload=()=>{D(pe),URL.revokeObjectURL(pe.src),pe.onload=null,window.requestAnimationFrame(()=>{pe.src=B})},pe.onerror=()=>Y(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."));let Ce=new Blob([new Uint8Array(q)],{type:"image/png"});pe.src=q.byteLength?URL.createObjectURL(Ce):B}),e.g=ue,e.h=(q,D)=>$(E(q,{type:"json"}),D),e.i=L,e.j=j,e.k=ne,e.l=(q,D)=>$(E(q,{type:"arrayBuffer"}),D),e.m=$,e.n=function(q){return new C1(q).readFields(fC,[])},e.o=rs,e.p=P1,e.q=Oe,e.r=oi,e.s=J,e.t=li,e.u=Ka,e.v=ie,e.w=f,e.x=function([q,D,Y]){return D+=90,D*=Math.PI/180,Y*=Math.PI/180,{x:q*Math.cos(D)*Math.sin(Y),y:q*Math.sin(D)*Math.sin(Y),z:q*Math.cos(Y)}},e.y=$n,e.z=Ts}),A("worker",["./shared"],function(e){"use strict";class t{constructor(Fe){this.keyCache={},Fe&&this.replace(Fe)}replace(Fe){this._layerConfigs={},this._layers={},this.update(Fe,[])}update(Fe,Ke){for(let Ee of Fe){this._layerConfigs[Ee.id]=Ee;let Ve=this._layers[Ee.id]=e.aA(Ee);Ve._featureFilter=e.a7(Ve.filter),this.keyCache[Ee.id]&&delete this.keyCache[Ee.id]}for(let Ee of Ke)delete this.keyCache[Ee],delete this._layerConfigs[Ee],delete this._layers[Ee];this.familiesBySource={};let Ne=e.bk(Object.values(this._layerConfigs),this.keyCache);for(let Ee of Ne){let Ve=Ee.map(xt=>this._layers[xt.id]),ke=Ve[0];if(ke.visibility==="none")continue;let Te=ke.source||"",Le=this.familiesBySource[Te];Le||(Le=this.familiesBySource[Te]={});let rt=ke.sourceLayer||"_geojsonTileLayer",dt=Le[rt];dt||(dt=Le[rt]=[]),dt.push(Ve)}}}class r{constructor(Fe){let Ke={},Ne=[];for(let Te in Fe){let Le=Fe[Te],rt=Ke[Te]={};for(let dt in Le){let xt=Le[+dt];if(!xt||xt.bitmap.width===0||xt.bitmap.height===0)continue;let It={x:0,y:0,w:xt.bitmap.width+2,h:xt.bitmap.height+2};Ne.push(It),rt[dt]={rect:It,metrics:xt.metrics}}}let{w:Ee,h:Ve}=e.p(Ne),ke=new e.o({width:Ee||1,height:Ve||1});for(let Te in Fe){let Le=Fe[Te];for(let rt in Le){let dt=Le[+rt];if(!dt||dt.bitmap.width===0||dt.bitmap.height===0)continue;let xt=Ke[Te][rt].rect;e.o.copy(dt.bitmap,ke,{x:0,y:0},{x:xt.x+1,y:xt.y+1},dt.bitmap)}}this.image=ke,this.positions=Ke}}e.bl("GlyphAtlas",r);class o{constructor(Fe){this.tileID=new e.S(Fe.tileID.overscaledZ,Fe.tileID.wrap,Fe.tileID.canonical.z,Fe.tileID.canonical.x,Fe.tileID.canonical.y),this.uid=Fe.uid,this.zoom=Fe.zoom,this.pixelRatio=Fe.pixelRatio,this.tileSize=Fe.tileSize,this.source=Fe.source,this.overscaling=this.tileID.overscaleFactor(),this.showCollisionBoxes=Fe.showCollisionBoxes,this.collectResourceTiming=!!Fe.collectResourceTiming,this.returnDependencies=!!Fe.returnDependencies,this.promoteId=Fe.promoteId,this.inFlightDependencies=[]}parse(Fe,Ke,Ne,Ee){return e._(this,void 0,void 0,function*(){this.status="parsing",this.data=Fe,this.collisionBoxArray=new e.a5;let Ve=new e.bm(Object.keys(Fe.layers).sort()),ke=new e.bn(this.tileID,this.promoteId);ke.bucketLayerIDs=[];let Te={},Le={featureIndex:ke,iconDependencies:{},patternDependencies:{},glyphDependencies:{},availableImages:Ne},rt=Ke.familiesBySource[this.source];for(let Ga in rt){let Ma=Fe.layers[Ga];if(!Ma)continue;Ma.version===1&&e.w(`Vector tile source "${this.source}" layer "${Ga}" does not use vector tile spec v2 and therefore may have some rendering errors.`);let Ua=Ve.encode(Ga),ni=[];for(let Wt=0;Wt<Ma.length;Wt++){let zt=Ma.feature(Wt),Vt=ke.getId(zt,Ga);ni.push({feature:zt,id:Vt,index:Wt,sourceLayerIndex:Ua})}for(let Wt of rt[Ga]){let zt=Wt[0];zt.source!==this.source&&e.w(`layer.source = ${zt.source} does not equal this.source = ${this.source}`),zt.minzoom&&this.zoom<Math.floor(zt.minzoom)||zt.maxzoom&&this.zoom>=zt.maxzoom||zt.visibility!=="none"&&(a(Wt,this.zoom,Ne),(Te[zt.id]=zt.createBucket({index:ke.bucketLayerIDs.length,layers:Wt,zoom:this.zoom,pixelRatio:this.pixelRatio,overscaling:this.overscaling,collisionBoxArray:this.collisionBoxArray,sourceLayerIndex:Ua,sourceID:this.source})).populate(ni,Le,this.tileID.canonical),ke.bucketLayerIDs.push(Wt.map(Vt=>Vt.id)))}}let dt=e.aF(Le.glyphDependencies,Ga=>Object.keys(Ga).map(Number));this.inFlightDependencies.forEach(Ga=>Ga?.abort()),this.inFlightDependencies=[];let xt=Promise.resolve({});if(Object.keys(dt).length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),xt=Ee.sendAsync({type:"GG",data:{stacks:dt,source:this.source,tileID:this.tileID,type:"glyphs"}},Ga)}let It=Object.keys(Le.iconDependencies),Bt=Promise.resolve({});if(It.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Bt=Ee.sendAsync({type:"GI",data:{icons:It,source:this.source,tileID:this.tileID,type:"icons"}},Ga)}let Gt=Object.keys(Le.patternDependencies),Kt=Promise.resolve({});if(Gt.length){let Ga=new AbortController;this.inFlightDependencies.push(Ga),Kt=Ee.sendAsync({type:"GI",data:{icons:Gt,source:this.source,tileID:this.tileID,type:"patterns"}},Ga)}let[sr,sa,Aa]=yield Promise.all([xt,Bt,Kt]),La=new r(sr),ka=new e.bo(sa,Aa);for(let Ga in Te){let Ma=Te[Ga];Ma instanceof e.a6?(a(Ma.layers,this.zoom,Ne),e.bp({bucket:Ma,glyphMap:sr,glyphPositions:La.positions,imageMap:sa,imagePositions:ka.iconPositions,showCollisionBoxes:this.showCollisionBoxes,canonical:this.tileID.canonical})):Ma.hasPattern&&(Ma instanceof e.bq||Ma instanceof e.br||Ma instanceof e.bs)&&(a(Ma.layers,this.zoom,Ne),Ma.addFeatures(Le,this.tileID.canonical,ka.patternPositions))}return this.status="done",{buckets:Object.values(Te).filter(Ga=>!Ga.isEmpty()),featureIndex:ke,collisionBoxArray:this.collisionBoxArray,glyphAtlasImage:La.image,imageAtlas:ka,glyphMap:this.returnDependencies?sr:null,iconMap:this.returnDependencies?sa:null,glyphPositions:this.returnDependencies?La.positions:null}})}}function a(yt,Fe,Ke){let Ne=new e.z(Fe);for(let Ee of yt)Ee.recalculate(Ne,Ke)}class i{constructor(Fe,Ke,Ne){this.actor=Fe,this.layerIndex=Ke,this.availableImages=Ne,this.fetching={},this.loading={},this.loaded={}}loadVectorTile(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield e.l(Fe.request,Ke);try{return{vectorTile:new e.bt.VectorTile(new e.bu(Ne.data)),rawData:Ne.data,cacheControl:Ne.cacheControl,expires:Ne.expires}}catch(Ee){let Ve=new Uint8Array(Ne.data),ke=`Unable to parse the tile at ${Fe.request.url}, `;throw ke+=Ve[0]===31&&Ve[1]===139?"please make sure the data is not gzipped and that you have configured the relevant header in the server":`got error: ${Ee.message}`,new Error(ke)}})}loadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid,Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request),Ee=new o(Fe);this.loading[Ke]=Ee;let Ve=new AbortController;Ee.abort=Ve;try{let ke=yield this.loadVectorTile(Fe,Ve);if(delete this.loading[Ke],!ke)return null;let Te=ke.rawData,Le={};ke.expires&&(Le.expires=ke.expires),ke.cacheControl&&(Le.cacheControl=ke.cacheControl);let rt={};if(Ne){let xt=Ne.finish();xt&&(rt.resourceTiming=JSON.parse(JSON.stringify(xt)))}Ee.vectorTile=ke.vectorTile;let dt=Ee.parse(ke.vectorTile,this.layerIndex,this.availableImages,this.actor);this.loaded[Ke]=Ee,this.fetching[Ke]={rawTileData:Te,cacheControl:Le,resourceTiming:rt};try{let xt=yield dt;return e.e({rawTileData:Te.slice(0)},xt,Le,rt)}finally{delete this.fetching[Ke]}}catch(ke){throw delete this.loading[Ke],Ee.status="done",this.loaded[Ke]=Ee,ke}})}reloadTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=Fe.uid;if(!this.loaded||!this.loaded[Ke])throw new Error("Should not be trying to reload a tile that was never loaded or has been removed");let Ne=this.loaded[Ke];if(Ne.showCollisionBoxes=Fe.showCollisionBoxes,Ne.status==="parsing"){let Ee=yield Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor),Ve;if(this.fetching[Ke]){let{rawTileData:ke,cacheControl:Te,resourceTiming:Le}=this.fetching[Ke];delete this.fetching[Ke],Ve=e.e({rawTileData:ke.slice(0)},Ee,Te,Le)}else Ve=Ee;return Ve}if(Ne.status==="done"&&Ne.vectorTile)return Ne.parse(Ne.vectorTile,this.layerIndex,this.availableImages,this.actor)})}abortTile(Fe){return e._(this,void 0,void 0,function*(){let Ke=this.loading,Ne=Fe.uid;Ke&&Ke[Ne]&&Ke[Ne].abort&&(Ke[Ne].abort.abort(),delete Ke[Ne])})}removeTile(Fe){return e._(this,void 0,void 0,function*(){this.loaded&&this.loaded[Fe.uid]&&delete this.loaded[Fe.uid]})}}class n{constructor(){this.loaded={}}loadTile(Fe){return e._(this,void 0,void 0,function*(){let{uid:Ke,encoding:Ne,rawImageData:Ee,redFactor:Ve,greenFactor:ke,blueFactor:Te,baseShift:Le}=Fe,rt=Ee.width+2,dt=Ee.height+2,xt=e.b(Ee)?new e.R({width:rt,height:dt},yield e.bw(Ee,-1,-1,rt,dt)):Ee,It=new e.bx(Ke,xt,Ne,Ve,ke,Te,Le);return this.loaded=this.loaded||{},this.loaded[Ke]=It,It})}removeTile(Fe){let Ke=this.loaded,Ne=Fe.uid;Ke&&Ke[Ne]&&delete Ke[Ne]}}function s(yt,Fe){if(yt.length!==0){c(yt[0],Fe);for(var Ke=1;Ke<yt.length;Ke++)c(yt[Ke],!Fe)}}function c(yt,Fe){for(var Ke=0,Ne=0,Ee=0,Ve=yt.length,ke=Ve-1;Ee<Ve;ke=Ee++){var Te=(yt[Ee][0]-yt[ke][0])*(yt[ke][1]+yt[Ee][1]),Le=Ke+Te;Ne+=Math.abs(Ke)>=Math.abs(Te)?Ke-Le+Te:Te-Le+Ke,Ke=Le}Ke+Ne>=0!=!!Fe&&yt.reverse()}var h=e.by(function yt(Fe,Ke){var Ne,Ee=Fe&&Fe.type;if(Ee==="FeatureCollection")for(Ne=0;Ne<Fe.features.length;Ne++)yt(Fe.features[Ne],Ke);else if(Ee==="GeometryCollection")for(Ne=0;Ne<Fe.geometries.length;Ne++)yt(Fe.geometries[Ne],Ke);else if(Ee==="Feature")yt(Fe.geometry,Ke);else if(Ee==="Polygon")s(Fe.coordinates,Ke);else if(Ee==="MultiPolygon")for(Ne=0;Ne<Fe.coordinates.length;Ne++)s(Fe.coordinates[Ne],Ke);return Fe});let v=e.bt.VectorTileFeature.prototype.toGeoJSON;var p={exports:{}},T=e.bz,l=e.bt.VectorTileFeature,_=w;function w(yt,Fe){this.options=Fe||{},this.features=yt,this.length=yt.length}function S(yt,Fe){this.id=typeof yt.id=="number"?yt.id:void 0,this.type=yt.type,this.rawGeometry=yt.type===1?[yt.geometry]:yt.geometry,this.properties=yt.tags,this.extent=Fe||4096}w.prototype.feature=function(yt){return new S(this.features[yt],this.options.extent)},S.prototype.loadGeometry=function(){var yt=this.rawGeometry;this.geometry=[];for(var Fe=0;Fe<yt.length;Fe++){for(var Ke=yt[Fe],Ne=[],Ee=0;Ee<Ke.length;Ee++)Ne.push(new T(Ke[Ee][0],Ke[Ee][1]));this.geometry.push(Ne)}return this.geometry},S.prototype.bbox=function(){this.geometry||this.loadGeometry();for(var yt=this.geometry,Fe=1/0,Ke=-1/0,Ne=1/0,Ee=-1/0,Ve=0;Ve<yt.length;Ve++)for(var ke=yt[Ve],Te=0;Te<ke.length;Te++){var Le=ke[Te];Fe=Math.min(Fe,Le.x),Ke=Math.max(Ke,Le.x),Ne=Math.min(Ne,Le.y),Ee=Math.max(Ee,Le.y)}return[Fe,Ne,Ke,Ee]},S.prototype.toGeoJSON=l.prototype.toGeoJSON;var E=e.bA,m=_;function b(yt){var Fe=new E;return function(Ke,Ne){for(var Ee in Ke.layers)Ne.writeMessage(3,d,Ke.layers[Ee])}(yt,Fe),Fe.finish()}function d(yt,Fe){var Ke;Fe.writeVarintField(15,yt.version||1),Fe.writeStringField(1,yt.name||""),Fe.writeVarintField(5,yt.extent||4096);var Ne={keys:[],values:[],keycache:{},valuecache:{}};for(Ke=0;Ke<yt.length;Ke++)Ne.feature=yt.feature(Ke),Fe.writeMessage(2,u,Ne);var Ee=Ne.keys;for(Ke=0;Ke<Ee.length;Ke++)Fe.writeStringField(3,Ee[Ke]);var Ve=Ne.values;for(Ke=0;Ke<Ve.length;Ke++)Fe.writeMessage(4,z,Ve[Ke])}function u(yt,Fe){var Ke=yt.feature;Ke.id!==void 0&&Fe.writeVarintField(1,Ke.id),Fe.writeMessage(2,y,yt),Fe.writeVarintField(3,Ke.type),Fe.writeMessage(4,L,Ke)}function y(yt,Fe){var Ke=yt.feature,Ne=yt.keys,Ee=yt.values,Ve=yt.keycache,ke=yt.valuecache;for(var Te in Ke.properties){var Le=Ke.properties[Te],rt=Ve[Te];if(Le!==null){rt===void 0&&(Ne.push(Te),Ve[Te]=rt=Ne.length-1),Fe.writeVarint(rt);var dt=typeof Le;dt!=="string"&&dt!=="boolean"&&dt!=="number"&&(Le=JSON.stringify(Le));var xt=dt+":"+Le,It=ke[xt];It===void 0&&(Ee.push(Le),ke[xt]=It=Ee.length-1),Fe.writeVarint(It)}}}function f(yt,Fe){return(Fe<<3)+(7&yt)}function P(yt){return yt<<1^yt>>31}function L(yt,Fe){for(var Ke=yt.loadGeometry(),Ne=yt.type,Ee=0,Ve=0,ke=Ke.length,Te=0;Te<ke;Te++){var Le=Ke[Te],rt=1;Ne===1&&(rt=Le.length),Fe.writeVarint(f(1,rt));for(var dt=Ne===3?Le.length-1:Le.length,xt=0;xt<dt;xt++){xt===1&&Ne!==1&&Fe.writeVarint(f(2,dt-1));var It=Le[xt].x-Ee,Bt=Le[xt].y-Ve;Fe.writeVarint(P(It)),Fe.writeVarint(P(Bt)),Ee+=It,Ve+=Bt}Ne===3&&Fe.writeVarint(f(7,1))}}function z(yt,Fe){var Ke=typeof yt;Ke==="string"?Fe.writeStringField(1,yt):Ke==="boolean"?Fe.writeBooleanField(7,yt):Ke==="number"&&(yt%1!=0?Fe.writeDoubleField(3,yt):yt<0?Fe.writeSVarintField(6,yt):Fe.writeVarintField(5,yt))}p.exports=b,p.exports.fromVectorTileJs=b,p.exports.fromGeojsonVt=function(yt,Fe){Fe=Fe||{};var Ke={};for(var Ne in yt)Ke[Ne]=new m(yt[Ne].features,Fe),Ke[Ne].name=Ne,Ke[Ne].version=Fe.version,Ke[Ne].extent=Fe.extent;return b({layers:Ke})},p.exports.GeoJSONWrapper=m;var F=e.by(p.exports);let B={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:yt=>yt},O=Math.fround||(I=new Float32Array(1),yt=>(I[0]=+yt,I[0]));var I;let N=3,U=5,W=6;class Q{constructor(Fe){this.options=Object.assign(Object.create(B),Fe),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(Fe){let{log:Ke,minZoom:Ne,maxZoom:Ee}=this.options;Ke&&console.time("total time");let Ve=`prepare ${Fe.length} points`;Ke&&console.time(Ve),this.points=Fe;let ke=[];for(let Le=0;Le<Fe.length;Le++){let rt=Fe[Le];if(!rt.geometry)continue;let[dt,xt]=rt.geometry.coordinates,It=O(he(dt)),Bt=O(G(xt));ke.push(It,Bt,1/0,Le,-1,1),this.options.reduce&&ke.push(0)}let Te=this.trees[Ee+1]=this._createTree(ke);Ke&&console.timeEnd(Ve);for(let Le=Ee;Le>=Ne;Le--){let rt=+Date.now();Te=this.trees[Le]=this._createTree(this._cluster(Te,Le)),Ke&&console.log("z%d: %d clusters in %dms",Le,Te.numItems,+Date.now()-rt)}return Ke&&console.timeEnd("total time"),this}getClusters(Fe,Ke){let Ne=((Fe[0]+180)%360+360)%360-180,Ee=Math.max(-90,Math.min(90,Fe[1])),Ve=Fe[2]===180?180:((Fe[2]+180)%360+360)%360-180,ke=Math.max(-90,Math.min(90,Fe[3]));if(Fe[2]-Fe[0]>=360)Ne=-180,Ve=180;else if(Ne>Ve){let xt=this.getClusters([Ne,Ee,180,ke],Ke),It=this.getClusters([-180,Ee,Ve,ke],Ke);return xt.concat(It)}let Te=this.trees[this._limitZoom(Ke)],Le=Te.range(he(Ne),G(ke),he(Ve),G(Ee)),rt=Te.data,dt=[];for(let xt of Le){let It=this.stride*xt;dt.push(rt[It+U]>1?ue(rt,It,this.clusterProps):this.points[rt[It+N]])}return dt}getChildren(Fe){let Ke=this._getOriginId(Fe),Ne=this._getOriginZoom(Fe),Ee="No cluster with the specified id.",Ve=this.trees[Ne];if(!Ve)throw new Error(Ee);let ke=Ve.data;if(Ke*this.stride>=ke.length)throw new Error(Ee);let Te=this.options.radius/(this.options.extent*Math.pow(2,Ne-1)),Le=Ve.within(ke[Ke*this.stride],ke[Ke*this.stride+1],Te),rt=[];for(let dt of Le){let xt=dt*this.stride;ke[xt+4]===Fe&&rt.push(ke[xt+U]>1?ue(ke,xt,this.clusterProps):this.points[ke[xt+N]])}if(rt.length===0)throw new Error(Ee);return rt}getLeaves(Fe,Ke,Ne){let Ee=[];return this._appendLeaves(Ee,Fe,Ke=Ke||10,Ne=Ne||0,0),Ee}getTile(Fe,Ke,Ne){let Ee=this.trees[this._limitZoom(Fe)],Ve=Math.pow(2,Fe),{extent:ke,radius:Te}=this.options,Le=Te/ke,rt=(Ne-Le)/Ve,dt=(Ne+1+Le)/Ve,xt={features:[]};return this._addTileFeatures(Ee.range((Ke-Le)/Ve,rt,(Ke+1+Le)/Ve,dt),Ee.data,Ke,Ne,Ve,xt),Ke===0&&this._addTileFeatures(Ee.range(1-Le/Ve,rt,1,dt),Ee.data,Ve,Ne,Ve,xt),Ke===Ve-1&&this._addTileFeatures(Ee.range(0,rt,Le/Ve,dt),Ee.data,-1,Ne,Ve,xt),xt.features.length?xt:null}getClusterExpansionZoom(Fe){let Ke=this._getOriginZoom(Fe)-1;for(;Ke<=this.options.maxZoom;){let Ne=this.getChildren(Fe);if(Ke++,Ne.length!==1)break;Fe=Ne[0].properties.cluster_id}return Ke}_appendLeaves(Fe,Ke,Ne,Ee,Ve){let ke=this.getChildren(Ke);for(let Te of ke){let Le=Te.properties;if(Le&&Le.cluster?Ve+Le.point_count<=Ee?Ve+=Le.point_count:Ve=this._appendLeaves(Fe,Le.cluster_id,Ne,Ee,Ve):Ve<Ee?Ve++:Fe.push(Te),Fe.length===Ne)break}return Ve}_createTree(Fe){let Ke=new e.av(Fe.length/this.stride|0,this.options.nodeSize,Float32Array);for(let Ne=0;Ne<Fe.length;Ne+=this.stride)Ke.add(Fe[Ne],Fe[Ne+1]);return Ke.finish(),Ke.data=Fe,Ke}_addTileFeatures(Fe,Ke,Ne,Ee,Ve,ke){for(let Te of Fe){let Le=Te*this.stride,rt=Ke[Le+U]>1,dt,xt,It;if(rt)dt=se(Ke,Le,this.clusterProps),xt=Ke[Le],It=Ke[Le+1];else{let Kt=this.points[Ke[Le+N]];dt=Kt.properties;let[sr,sa]=Kt.geometry.coordinates;xt=he(sr),It=G(sa)}let Bt={type:1,geometry:[[Math.round(this.options.extent*(xt*Ve-Ne)),Math.round(this.options.extent*(It*Ve-Ee))]],tags:dt},Gt;Gt=rt||this.options.generateId?Ke[Le+N]:this.points[Ke[Le+N]].id,Gt!==void 0&&(Bt.id=Gt),ke.features.push(Bt)}}_limitZoom(Fe){return Math.max(this.options.minZoom,Math.min(Math.floor(+Fe),this.options.maxZoom+1))}_cluster(Fe,Ke){let{radius:Ne,extent:Ee,reduce:Ve,minPoints:ke}=this.options,Te=Ne/(Ee*Math.pow(2,Ke)),Le=Fe.data,rt=[],dt=this.stride;for(let xt=0;xt<Le.length;xt+=dt){if(Le[xt+2]<=Ke)continue;Le[xt+2]=Ke;let It=Le[xt],Bt=Le[xt+1],Gt=Fe.within(Le[xt],Le[xt+1],Te),Kt=Le[xt+U],sr=Kt;for(let sa of Gt){let Aa=sa*dt;Le[Aa+2]>Ke&&(sr+=Le[Aa+U])}if(sr>Kt&&sr>=ke){let sa,Aa=It*Kt,La=Bt*Kt,ka=-1,Ga=((xt/dt|0)<<5)+(Ke+1)+this.points.length;for(let Ma of Gt){let Ua=Ma*dt;if(Le[Ua+2]<=Ke)continue;Le[Ua+2]=Ke;let ni=Le[Ua+U];Aa+=Le[Ua]*ni,La+=Le[Ua+1]*ni,Le[Ua+4]=Ga,Ve&&(sa||(sa=this._map(Le,xt,!0),ka=this.clusterProps.length,this.clusterProps.push(sa)),Ve(sa,this._map(Le,Ua)))}Le[xt+4]=Ga,rt.push(Aa/sr,La/sr,1/0,Ga,-1,sr),Ve&&rt.push(ka)}else{for(let sa=0;sa<dt;sa++)rt.push(Le[xt+sa]);if(sr>1)for(let sa of Gt){let Aa=sa*dt;if(!(Le[Aa+2]<=Ke)){Le[Aa+2]=Ke;for(let La=0;La<dt;La++)rt.push(Le[Aa+La])}}}}return rt}_getOriginId(Fe){return Fe-this.points.length>>5}_getOriginZoom(Fe){return(Fe-this.points.length)%32}_map(Fe,Ke,Ne){if(Fe[Ke+U]>1){let ke=this.clusterProps[Fe[Ke+W]];return Ne?Object.assign({},ke):ke}let Ee=this.points[Fe[Ke+N]].properties,Ve=this.options.map(Ee);return Ne&&Ve===Ee?Object.assign({},Ve):Ve}}function ue(yt,Fe,Ke){return{type:"Feature",id:yt[Fe+N],properties:se(yt,Fe,Ke),geometry:{type:"Point",coordinates:[(Ne=yt[Fe],360*(Ne-.5)),$(yt[Fe+1])]}};var Ne}function se(yt,Fe,Ke){let Ne=yt[Fe+U],Ee=Ne>=1e4?`${Math.round(Ne/1e3)}k`:Ne>=1e3?Math.round(Ne/100)/10+"k":Ne,Ve=yt[Fe+W],ke=Ve===-1?{}:Object.assign({},Ke[Ve]);return Object.assign(ke,{cluster:!0,cluster_id:yt[Fe+N],point_count:Ne,point_count_abbreviated:Ee})}function he(yt){return yt/360+.5}function G(yt){let Fe=Math.sin(yt*Math.PI/180),Ke=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ke<0?0:Ke>1?1:Ke}function $(yt){let Fe=(180-360*yt)*Math.PI/180;return 360*Math.atan(Math.exp(Fe))/Math.PI-90}function J(yt,Fe,Ke,Ne){let Ee=Ne,Ve=Fe+(Ke-Fe>>1),ke,Te=Ke-Fe,Le=yt[Fe],rt=yt[Fe+1],dt=yt[Ke],xt=yt[Ke+1];for(let It=Fe+3;It<Ke;It+=3){let Bt=Z(yt[It],yt[It+1],Le,rt,dt,xt);if(Bt>Ee)ke=It,Ee=Bt;else if(Bt===Ee){let Gt=Math.abs(It-Ve);Gt<Te&&(ke=It,Te=Gt)}}Ee>Ne&&(ke-Fe>3&&J(yt,Fe,ke,Ne),yt[ke+2]=Ee,Ke-ke>3&&J(yt,ke,Ke,Ne))}function Z(yt,Fe,Ke,Ne,Ee,Ve){let ke=Ee-Ke,Te=Ve-Ne;if(ke!==0||Te!==0){let Le=((yt-Ke)*ke+(Fe-Ne)*Te)/(ke*ke+Te*Te);Le>1?(Ke=Ee,Ne=Ve):Le>0&&(Ke+=ke*Le,Ne+=Te*Le)}return ke=yt-Ke,Te=Fe-Ne,ke*ke+Te*Te}function re(yt,Fe,Ke,Ne){let Ee={id:yt??null,type:Fe,geometry:Ke,tags:Ne,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0};if(Fe==="Point"||Fe==="MultiPoint"||Fe==="LineString")ne(Ee,Ke);else if(Fe==="Polygon")ne(Ee,Ke[0]);else if(Fe==="MultiLineString")for(let Ve of Ke)ne(Ee,Ve);else if(Fe==="MultiPolygon")for(let Ve of Ke)ne(Ee,Ve[0]);return Ee}function ne(yt,Fe){for(let Ke=0;Ke<Fe.length;Ke+=3)yt.minX=Math.min(yt.minX,Fe[Ke]),yt.minY=Math.min(yt.minY,Fe[Ke+1]),yt.maxX=Math.max(yt.maxX,Fe[Ke]),yt.maxY=Math.max(yt.maxY,Fe[Ke+1])}function j(yt,Fe,Ke,Ne){if(!Fe.geometry)return;let Ee=Fe.geometry.coordinates;if(Ee&&Ee.length===0)return;let Ve=Fe.geometry.type,ke=Math.pow(Ke.tolerance/((1<<Ke.maxZoom)*Ke.extent),2),Te=[],Le=Fe.id;if(Ke.promoteId?Le=Fe.properties[Ke.promoteId]:Ke.generateId&&(Le=Ne||0),Ve==="Point")ee(Ee,Te);else if(Ve==="MultiPoint")for(let rt of Ee)ee(rt,Te);else if(Ve==="LineString")ie(Ee,Te,ke,!1);else if(Ve==="MultiLineString"){if(Ke.lineMetrics){for(let rt of Ee)Te=[],ie(rt,Te,ke,!1),yt.push(re(Le,"LineString",Te,Fe.properties));return}fe(Ee,Te,ke,!1)}else if(Ve==="Polygon")fe(Ee,Te,ke,!0);else{if(Ve!=="MultiPolygon"){if(Ve==="GeometryCollection"){for(let rt of Fe.geometry.geometries)j(yt,{id:Le,geometry:rt,properties:Fe.properties},Ke,Ne);return}throw new Error("Input data is not a valid GeoJSON object.")}for(let rt of Ee){let dt=[];fe(rt,dt,ke,!0),Te.push(dt)}}yt.push(re(Le,Ve,Te,Fe.properties))}function ee(yt,Fe){Fe.push(be(yt[0]),Ae(yt[1]),0)}function ie(yt,Fe,Ke,Ne){let Ee,Ve,ke=0;for(let Le=0;Le<yt.length;Le++){let rt=be(yt[Le][0]),dt=Ae(yt[Le][1]);Fe.push(rt,dt,0),Le>0&&(ke+=Ne?(Ee*dt-rt*Ve)/2:Math.sqrt(Math.pow(rt-Ee,2)+Math.pow(dt-Ve,2))),Ee=rt,Ve=dt}let Te=Fe.length-3;Fe[2]=1,J(Fe,0,Te,Ke),Fe[Te+2]=1,Fe.size=Math.abs(ke),Fe.start=0,Fe.end=Fe.size}function fe(yt,Fe,Ke,Ne){for(let Ee=0;Ee<yt.length;Ee++){let Ve=[];ie(yt[Ee],Ve,Ke,Ne),Fe.push(Ve)}}function be(yt){return yt/360+.5}function Ae(yt){let Fe=Math.sin(yt*Math.PI/180),Ke=.5-.25*Math.log((1+Fe)/(1-Fe))/Math.PI;return Ke<0?0:Ke>1?1:Ke}function Be(yt,Fe,Ke,Ne,Ee,Ve,ke,Te){if(Ne/=Fe,Ve>=(Ke/=Fe)&&ke<Ne)return yt;if(ke<Ke||Ve>=Ne)return null;let Le=[];for(let rt of yt){let dt=rt.geometry,xt=rt.type,It=Ee===0?rt.minX:rt.minY,Bt=Ee===0?rt.maxX:rt.maxY;if(It>=Ke&&Bt<Ne){Le.push(rt);continue}if(Bt<Ke||It>=Ne)continue;let Gt=[];if(xt==="Point"||xt==="MultiPoint")Ie(dt,Gt,Ke,Ne,Ee);else if(xt==="LineString")Ze(dt,Gt,Ke,Ne,Ee,!1,Te.lineMetrics);else if(xt==="MultiLineString")it(dt,Gt,Ke,Ne,Ee,!1);else if(xt==="Polygon")it(dt,Gt,Ke,Ne,Ee,!0);else if(xt==="MultiPolygon")for(let Kt of dt){let sr=[];it(Kt,sr,Ke,Ne,Ee,!0),sr.length&&Gt.push(sr)}if(Gt.length){if(Te.lineMetrics&&xt==="LineString"){for(let Kt of Gt)Le.push(re(rt.id,xt,Kt,rt.tags));continue}xt!=="LineString"&&xt!=="MultiLineString"||(Gt.length===1?(xt="LineString",Gt=Gt[0]):xt="MultiLineString"),xt!=="Point"&&xt!=="MultiPoint"||(xt=Gt.length===3?"Point":"MultiPoint"),Le.push(re(rt.id,xt,Gt,rt.tags))}}return Le.length?Le:null}function Ie(yt,Fe,Ke,Ne,Ee){for(let Ve=0;Ve<yt.length;Ve+=3){let ke=yt[Ve+Ee];ke>=Ke&&ke<=Ne&&et(Fe,yt[Ve],yt[Ve+1],yt[Ve+2])}}function Ze(yt,Fe,Ke,Ne,Ee,Ve,ke){let Te=at(yt),Le=Ee===0?lt:Me,rt,dt,xt=yt.start;for(let sr=0;sr<yt.length-3;sr+=3){let sa=yt[sr],Aa=yt[sr+1],La=yt[sr+2],ka=yt[sr+3],Ga=yt[sr+4],Ma=Ee===0?sa:Aa,Ua=Ee===0?ka:Ga,ni=!1;ke&&(rt=Math.sqrt(Math.pow(sa-ka,2)+Math.pow(Aa-Ga,2))),Ma<Ke?Ua>Ke&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ke&&(Te.start=xt+rt*dt)):Ma>Ne?Ua<Ne&&(dt=Le(Te,sa,Aa,ka,Ga,Ne),ke&&(Te.start=xt+rt*dt)):et(Te,sa,Aa,La),Ua<Ke&&Ma>=Ke&&(dt=Le(Te,sa,Aa,ka,Ga,Ke),ni=!0),Ua>Ne&&Ma<=Ne&&(dt=Le(Te,sa,Aa,ka,Ga,Ne),ni=!0),!Ve&&ni&&(ke&&(Te.end=xt+rt*dt),Fe.push(Te),Te=at(yt)),ke&&(xt+=rt)}let It=yt.length-3,Bt=yt[It],Gt=yt[It+1],Kt=Ee===0?Bt:Gt;Kt>=Ke&&Kt<=Ne&&et(Te,Bt,Gt,yt[It+2]),It=Te.length-3,Ve&&It>=3&&(Te[It]!==Te[0]||Te[It+1]!==Te[1])&&et(Te,Te[0],Te[1],Te[2]),Te.length&&Fe.push(Te)}function at(yt){let Fe=[];return Fe.size=yt.size,Fe.start=yt.start,Fe.end=yt.end,Fe}function it(yt,Fe,Ke,Ne,Ee,Ve){for(let ke of yt)Ze(ke,Fe,Ke,Ne,Ee,Ve,!1)}function et(yt,Fe,Ke,Ne){yt.push(Fe,Ke,Ne)}function lt(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Fe)/(Ne-Fe);return et(yt,Ve,Ke+(Ee-Ke)*ke,1),ke}function Me(yt,Fe,Ke,Ne,Ee,Ve){let ke=(Ve-Ke)/(Ee-Ke);return et(yt,Fe+(Ne-Fe)*ke,Ve,1),ke}function ge(yt,Fe){let Ke=[];for(let Ne=0;Ne<yt.length;Ne++){let Ee=yt[Ne],Ve=Ee.type,ke;if(Ve==="Point"||Ve==="MultiPoint"||Ve==="LineString")ke=ce(Ee.geometry,Fe);else if(Ve==="MultiLineString"||Ve==="Polygon"){ke=[];for(let Te of Ee.geometry)ke.push(ce(Te,Fe))}else if(Ve==="MultiPolygon"){ke=[];for(let Te of Ee.geometry){let Le=[];for(let rt of Te)Le.push(ce(rt,Fe));ke.push(Le)}}Ke.push(re(Ee.id,Ve,ke,Ee.tags))}return Ke}function ce(yt,Fe){let Ke=[];Ke.size=yt.size,yt.start!==void 0&&(Ke.start=yt.start,Ke.end=yt.end);for(let Ne=0;Ne<yt.length;Ne+=3)Ke.push(yt[Ne]+Fe,yt[Ne+1],yt[Ne+2]);return Ke}function ze(yt,Fe){if(yt.transformed)return yt;let Ke=1<<yt.z,Ne=yt.x,Ee=yt.y;for(let Ve of yt.features){let ke=Ve.geometry,Te=Ve.type;if(Ve.geometry=[],Te===1)for(let Le=0;Le<ke.length;Le+=2)Ve.geometry.push(tt(ke[Le],ke[Le+1],Fe,Ke,Ne,Ee));else for(let Le=0;Le<ke.length;Le++){let rt=[];for(let dt=0;dt<ke[Le].length;dt+=2)rt.push(tt(ke[Le][dt],ke[Le][dt+1],Fe,Ke,Ne,Ee));Ve.geometry.push(rt)}}return yt.transformed=!0,yt}function tt(yt,Fe,Ke,Ne,Ee,Ve){return[Math.round(Ke*(yt*Ne-Ee)),Math.round(Ke*(Fe*Ne-Ve))]}function nt(yt,Fe,Ke,Ne,Ee){let Ve=Fe===Ee.maxZoom?0:Ee.tolerance/((1<<Fe)*Ee.extent),ke={features:[],numPoints:0,numSimplified:0,numFeatures:yt.length,source:null,x:Ke,y:Ne,z:Fe,transformed:!1,minX:2,minY:1,maxX:-1,maxY:0};for(let Te of yt)Qe(ke,Te,Ve,Ee);return ke}function Qe(yt,Fe,Ke,Ne){let Ee=Fe.geometry,Ve=Fe.type,ke=[];if(yt.minX=Math.min(yt.minX,Fe.minX),yt.minY=Math.min(yt.minY,Fe.minY),yt.maxX=Math.max(yt.maxX,Fe.maxX),yt.maxY=Math.max(yt.maxY,Fe.maxY),Ve==="Point"||Ve==="MultiPoint")for(let Te=0;Te<Ee.length;Te+=3)ke.push(Ee[Te],Ee[Te+1]),yt.numPoints++,yt.numSimplified++;else if(Ve==="LineString")Ct(ke,Ee,yt,Ke,!1,!1);else if(Ve==="MultiLineString"||Ve==="Polygon")for(let Te=0;Te<Ee.length;Te++)Ct(ke,Ee[Te],yt,Ke,Ve==="Polygon",Te===0);else if(Ve==="MultiPolygon")for(let Te=0;Te<Ee.length;Te++){let Le=Ee[Te];for(let rt=0;rt<Le.length;rt++)Ct(ke,Le[rt],yt,Ke,!0,rt===0)}if(ke.length){let Te=Fe.tags||null;if(Ve==="LineString"&&Ne.lineMetrics){Te={};for(let rt in Fe.tags)Te[rt]=Fe.tags[rt];Te.mapbox_clip_start=Ee.start/Ee.size,Te.mapbox_clip_end=Ee.end/Ee.size}let Le={geometry:ke,type:Ve==="Polygon"||Ve==="MultiPolygon"?3:Ve==="LineString"||Ve==="MultiLineString"?2:1,tags:Te};Fe.id!==null&&(Le.id=Fe.id),yt.features.push(Le)}}function Ct(yt,Fe,Ke,Ne,Ee,Ve){let ke=Ne*Ne;if(Ne>0&&Fe.size<(Ee?ke:Ne))return void(Ke.numPoints+=Fe.length/3);let Te=[];for(let Le=0;Le<Fe.length;Le+=3)(Ne===0||Fe[Le+2]>ke)&&(Ke.numSimplified++,Te.push(Fe[Le],Fe[Le+1])),Ke.numPoints++;Ee&&function(Le,rt){let dt=0;for(let xt=0,It=Le.length,Bt=It-2;xt<It;Bt=xt,xt+=2)dt+=(Le[xt]-Le[Bt])*(Le[xt+1]+Le[Bt+1]);if(dt>0===rt)for(let xt=0,It=Le.length;xt<It/2;xt+=2){let Bt=Le[xt],Gt=Le[xt+1];Le[xt]=Le[It-2-xt],Le[xt+1]=Le[It-1-xt],Le[It-2-xt]=Bt,Le[It-1-xt]=Gt}}(Te,Ve),yt.push(Te)}let St={maxZoom:14,indexMaxZoom:5,indexMaxPoints:1e5,tolerance:3,extent:4096,buffer:64,lineMetrics:!1,promoteId:null,generateId:!1,debug:0};class Ot{constructor(Fe,Ke){let Ne=(Ke=this.options=function(Ve,ke){for(let Te in ke)Ve[Te]=ke[Te];return Ve}(Object.create(St),Ke)).debug;if(Ne&&console.time("preprocess data"),Ke.maxZoom<0||Ke.maxZoom>24)throw new Error("maxZoom should be in the 0-24 range");if(Ke.promoteId&&Ke.generateId)throw new Error("promoteId and generateId cannot be used together.");let Ee=function(Ve,ke){let Te=[];if(Ve.type==="FeatureCollection")for(let Le=0;Le<Ve.features.length;Le++)j(Te,Ve.features[Le],ke,Le);else j(Te,Ve.type==="Feature"?Ve:{geometry:Ve},ke);return Te}(Fe,Ke);this.tiles={},this.tileCoords=[],Ne&&(console.timeEnd("preprocess data"),console.log("index: maxZoom: %d, maxPoints: %d",Ke.indexMaxZoom,Ke.indexMaxPoints),console.time("generate tiles"),this.stats={},this.total=0),Ee=function(Ve,ke){let Te=ke.buffer/ke.extent,Le=Ve,rt=Be(Ve,1,-1-Te,Te,0,-1,2,ke),dt=Be(Ve,1,1-Te,2+Te,0,-1,2,ke);return(rt||dt)&&(Le=Be(Ve,1,-Te,1+Te,0,-1,2,ke)||[],rt&&(Le=ge(rt,1).concat(Le)),dt&&(Le=Le.concat(ge(dt,-1)))),Le}(Ee,Ke),Ee.length&&this.splitTile(Ee,0,0,0),Ne&&(Ee.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)))}splitTile(Fe,Ke,Ne,Ee,Ve,ke,Te){let Le=[Fe,Ke,Ne,Ee],rt=this.options,dt=rt.debug;for(;Le.length;){Ee=Le.pop(),Ne=Le.pop(),Ke=Le.pop(),Fe=Le.pop();let xt=1<<Ke,It=jt(Ke,Ne,Ee),Bt=this.tiles[It];if(!Bt&&(dt>1&&console.time("creation"),Bt=this.tiles[It]=nt(Fe,Ke,Ne,Ee,rt),this.tileCoords.push({z:Ke,x:Ne,y:Ee}),dt)){dt>1&&(console.log("tile z%d-%d-%d (features: %d, points: %d, simplified: %d)",Ke,Ne,Ee,Bt.numFeatures,Bt.numPoints,Bt.numSimplified),console.timeEnd("creation"));let ni=`z${Ke}`;this.stats[ni]=(this.stats[ni]||0)+1,this.total++}if(Bt.source=Fe,Ve==null){if(Ke===rt.indexMaxZoom||Bt.numPoints<=rt.indexMaxPoints)continue}else{if(Ke===rt.maxZoom||Ke===Ve)continue;if(Ve!=null){let ni=Ve-Ke;if(Ne!==ke>>ni||Ee!==Te>>ni)continue}}if(Bt.source=null,Fe.length===0)continue;dt>1&&console.time("clipping");let Gt=.5*rt.buffer/rt.extent,Kt=.5-Gt,sr=.5+Gt,sa=1+Gt,Aa=null,La=null,ka=null,Ga=null,Ma=Be(Fe,xt,Ne-Gt,Ne+sr,0,Bt.minX,Bt.maxX,rt),Ua=Be(Fe,xt,Ne+Kt,Ne+sa,0,Bt.minX,Bt.maxX,rt);Fe=null,Ma&&(Aa=Be(Ma,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),La=Be(Ma,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ma=null),Ua&&(ka=Be(Ua,xt,Ee-Gt,Ee+sr,1,Bt.minY,Bt.maxY,rt),Ga=Be(Ua,xt,Ee+Kt,Ee+sa,1,Bt.minY,Bt.maxY,rt),Ua=null),dt>1&&console.timeEnd("clipping"),Le.push(Aa||[],Ke+1,2*Ne,2*Ee),Le.push(La||[],Ke+1,2*Ne,2*Ee+1),Le.push(ka||[],Ke+1,2*Ne+1,2*Ee),Le.push(Ga||[],Ke+1,2*Ne+1,2*Ee+1)}}getTile(Fe,Ke,Ne){Fe=+Fe,Ke=+Ke,Ne=+Ne;let Ee=this.options,{extent:Ve,debug:ke}=Ee;if(Fe<0||Fe>24)return null;let Te=1<<Fe,Le=jt(Fe,Ke=Ke+Te&Te-1,Ne);if(this.tiles[Le])return ze(this.tiles[Le],Ve);ke>1&&console.log("drilling down to z%d-%d-%d",Fe,Ke,Ne);let rt,dt=Fe,xt=Ke,It=Ne;for(;!rt&&dt>0;)dt--,xt>>=1,It>>=1,rt=this.tiles[jt(dt,xt,It)];return rt&&rt.source?(ke>1&&(console.log("found parent tile z%d-%d-%d",dt,xt,It),console.time("drilling down")),this.splitTile(rt.source,dt,xt,It,Fe,Ke,Ne),ke>1&&console.timeEnd("drilling down"),this.tiles[Le]?ze(this.tiles[Le],Ve):null):null}}function jt(yt,Fe,Ke){return 32*((1<<yt)*Ke+Fe)+yt}function ur(yt,Fe){return Fe?yt.properties[Fe]:yt.id}function ar(yt,Fe){if(yt==null)return!0;if(yt.type==="Feature")return ur(yt,Fe)!=null;if(yt.type==="FeatureCollection"){let Ke=new Set;for(let Ne of yt.features){let Ee=ur(Ne,Fe);if(Ee==null||Ke.has(Ee))return!1;Ke.add(Ee)}return!0}return!1}function Cr(yt,Fe){let Ke=new Map;if(yt!=null)if(yt.type==="Feature")Ke.set(ur(yt,Fe),yt);else for(let Ne of yt.features)Ke.set(ur(Ne,Fe),Ne);return Ke}class vr extends i{constructor(){super(...arguments),this._dataUpdateable=new Map}loadVectorTile(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=Fe.tileID.canonical;if(!this._geoJSONIndex)throw new Error("Unable to parse the data into a cluster or geojson");let Ee=this._geoJSONIndex.getTile(Ne.z,Ne.x,Ne.y);if(!Ee)return null;let Ve=new class{constructor(Te){this.layers={_geojsonTileLayer:this},this.name="_geojsonTileLayer",this.extent=e.X,this.length=Te.length,this._features=Te}feature(Te){return new class{constructor(Le){this._feature=Le,this.extent=e.X,this.type=Le.type,this.properties=Le.tags,"id"in Le&&!isNaN(Le.id)&&(this.id=parseInt(Le.id,10))}loadGeometry(){if(this._feature.type===1){let Le=[];for(let rt of this._feature.geometry)Le.push([new e.P(rt[0],rt[1])]);return Le}{let Le=[];for(let rt of this._feature.geometry){let dt=[];for(let xt of rt)dt.push(new e.P(xt[0],xt[1]));Le.push(dt)}return Le}}toGeoJSON(Le,rt,dt){return v.call(this,Le,rt,dt)}}(this._features[Te])}}(Ee.features),ke=F(Ve);return ke.byteOffset===0&&ke.byteLength===ke.buffer.byteLength||(ke=new Uint8Array(ke)),{vectorTile:Ve,rawData:ke.buffer}})}loadData(Fe){return e._(this,void 0,void 0,function*(){var Ke;(Ke=this._pendingRequest)===null||Ke===void 0||Ke.abort();let Ne=!!(Fe&&Fe.request&&Fe.request.collectResourceTiming)&&new e.bv(Fe.request);this._pendingRequest=new AbortController;try{this._pendingData=this.loadAndProcessGeoJSON(Fe,this._pendingRequest),this._geoJSONIndex=Fe.cluster?new Q(function({superclusterOptions:ke,clusterProperties:Te}){if(!Te||!ke)return ke;let Le={},rt={},dt={accumulated:null,zoom:0},xt={properties:null},It=Object.keys(Te);for(let Bt of It){let[Gt,Kt]=Te[Bt],sr=e.bC(Kt),sa=e.bC(typeof Gt=="string"?[Gt,["accumulated"],["get",Bt]]:Gt);Le[Bt]=sr.value,rt[Bt]=sa.value}return ke.map=Bt=>{xt.properties=Bt;let Gt={};for(let Kt of It)Gt[Kt]=Le[Kt].evaluate(dt,xt);return Gt},ke.reduce=(Bt,Gt)=>{xt.properties=Gt;for(let Kt of It)dt.accumulated=Bt[Kt],Bt[Kt]=rt[Kt].evaluate(dt,xt)},ke}(Fe)).load((yield this._pendingData).features):(Ee=yield this._pendingData,new Ot(Ee,Fe.geojsonVtOptions)),this.loaded={};let Ve={};if(Ne){let ke=Ne.finish();ke&&(Ve.resourceTiming={},Ve.resourceTiming[Fe.source]=JSON.parse(JSON.stringify(ke)))}return Ve}catch(Ve){if(delete this._pendingRequest,e.bB(Ve))return{abandoned:!0};throw Ve}var Ee})}getData(){return e._(this,void 0,void 0,function*(){return this._pendingData})}reloadTile(Fe){let Ke=this.loaded;return Ke&&Ke[Fe.uid]?super.reloadTile(Fe):this.loadTile(Fe)}loadAndProcessGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let Ne=yield this.loadGeoJSON(Fe,Ke);if(delete this._pendingRequest,typeof Ne!="object")throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(h(Ne,!0),Fe.filter){let Ee=e.bC(Fe.filter,{type:"boolean","property-type":"data-driven",overridable:!1,transition:!1});if(Ee.result==="error")throw new Error(Ee.value.map(ke=>`${ke.key}: ${ke.message}`).join(", "));Ne={type:"FeatureCollection",features:Ne.features.filter(ke=>Ee.value.evaluate({zoom:0},ke))}}return Ne})}loadGeoJSON(Fe,Ke){return e._(this,void 0,void 0,function*(){let{promoteId:Ne}=Fe;if(Fe.request){let Ee=yield e.h(Fe.request,Ke);return this._dataUpdateable=ar(Ee.data,Ne)?Cr(Ee.data,Ne):void 0,Ee.data}if(typeof Fe.data=="string")try{let Ee=JSON.parse(Fe.data);return this._dataUpdateable=ar(Ee,Ne)?Cr(Ee,Ne):void 0,Ee}catch{throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`)}if(!Fe.dataDiff)throw new Error(`Input data given to '${Fe.source}' is not a valid GeoJSON object.`);if(!this._dataUpdateable)throw new Error(`Cannot update existing geojson data in ${Fe.source}`);return function(Ee,Ve,ke){var Te,Le,rt,dt;if(Ve.removeAll&&Ee.clear(),Ve.remove)for(let xt of Ve.remove)Ee.delete(xt);if(Ve.add)for(let xt of Ve.add){let It=ur(xt,ke);It!=null&&Ee.set(It,xt)}if(Ve.update)for(let xt of Ve.update){let It=Ee.get(xt.id);if(It==null)continue;let Bt=!xt.removeAllProperties&&(((Te=xt.removeProperties)===null||Te===void 0?void 0:Te.length)>0||((Le=xt.addOrUpdateProperties)===null||Le===void 0?void 0:Le.length)>0);if((xt.newGeometry||xt.removeAllProperties||Bt)&&(It=Object.assign({},It),Ee.set(xt.id,It),Bt&&(It.properties=Object.assign({},It.properties))),xt.newGeometry&&(It.geometry=xt.newGeometry),xt.removeAllProperties)It.properties={};else if(((rt=xt.removeProperties)===null||rt===void 0?void 0:rt.length)>0)for(let Gt of xt.removeProperties)Object.prototype.hasOwnProperty.call(It.properties,Gt)&&delete It.properties[Gt];if(((dt=xt.addOrUpdateProperties)===null||dt===void 0?void 0:dt.length)>0)for(let{key:Gt,value:Kt}of xt.addOrUpdateProperties)It.properties[Gt]=Kt}}(this._dataUpdateable,Fe.dataDiff,Ne),{type:"FeatureCollection",features:Array.from(this._dataUpdateable.values())}})}removeSource(Fe){return e._(this,void 0,void 0,function*(){this._pendingRequest&&this._pendingRequest.abort()})}getClusterExpansionZoom(Fe){return this._geoJSONIndex.getClusterExpansionZoom(Fe.clusterId)}getClusterChildren(Fe){return this._geoJSONIndex.getChildren(Fe.clusterId)}getClusterLeaves(Fe){return this._geoJSONIndex.getLeaves(Fe.clusterId,Fe.limit,Fe.offset)}}class _r{constructor(Fe){this.self=Fe,this.actor=new e.F(Fe),this.layerIndexes={},this.availableImages={},this.workerSources={},this.demWorkerSources={},this.externalWorkerSourceTypes={},this.self.registerWorkerSource=(Ke,Ne)=>{if(this.externalWorkerSourceTypes[Ke])throw new Error(`Worker source with name "${Ke}" already registered.`);this.externalWorkerSourceTypes[Ke]=Ne},this.self.addProtocol=e.bi,this.self.removeProtocol=e.bj,this.self.registerRTLTextPlugin=Ke=>{if(e.bD.isParsed())throw new Error("RTL text plugin already registered.");e.bD.setMethods(Ke)},this.actor.registerMessageHandler("LDT",(Ke,Ne)=>this._getDEMWorkerSource(Ke,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RDT",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getDEMWorkerSource(Ke,Ne.source).removeTile(Ne)})),this.actor.registerMessageHandler("GCEZ",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterExpansionZoom(Ne)})),this.actor.registerMessageHandler("GCC",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterChildren(Ne)})),this.actor.registerMessageHandler("GCL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){return this._getWorkerSource(Ke,Ne.type,Ne.source).getClusterLeaves(Ne)})),this.actor.registerMessageHandler("LD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadData(Ne)),this.actor.registerMessageHandler("GD",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).getData()),this.actor.registerMessageHandler("LT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).loadTile(Ne)),this.actor.registerMessageHandler("RT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).reloadTile(Ne)),this.actor.registerMessageHandler("AT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).abortTile(Ne)),this.actor.registerMessageHandler("RMT",(Ke,Ne)=>this._getWorkerSource(Ke,Ne.type,Ne.source).removeTile(Ne)),this.actor.registerMessageHandler("RS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){if(!this.workerSources[Ke]||!this.workerSources[Ke][Ne.type]||!this.workerSources[Ke][Ne.type][Ne.source])return;let Ee=this.workerSources[Ke][Ne.type][Ne.source];delete this.workerSources[Ke][Ne.type][Ne.source],Ee.removeSource!==void 0&&Ee.removeSource(Ne)})),this.actor.registerMessageHandler("RM",Ke=>e._(this,void 0,void 0,function*(){delete this.layerIndexes[Ke],delete this.availableImages[Ke],delete this.workerSources[Ke],delete this.demWorkerSources[Ke]})),this.actor.registerMessageHandler("SR",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.referrer=Ne})),this.actor.registerMessageHandler("SRPS",(Ke,Ne)=>this._syncRTLPluginState(Ke,Ne)),this.actor.registerMessageHandler("IS",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this.self.importScripts(Ne)})),this.actor.registerMessageHandler("SI",(Ke,Ne)=>this._setImages(Ke,Ne)),this.actor.registerMessageHandler("UL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).update(Ne.layers,Ne.removedIds)})),this.actor.registerMessageHandler("SL",(Ke,Ne)=>e._(this,void 0,void 0,function*(){this._getLayerIndex(Ke).replace(Ne)}))}_setImages(Fe,Ke){return e._(this,void 0,void 0,function*(){this.availableImages[Fe]=Ke;for(let Ne in this.workerSources[Fe]){let Ee=this.workerSources[Fe][Ne];for(let Ve in Ee)Ee[Ve].availableImages=Ke}})}_syncRTLPluginState(Fe,Ke){return e._(this,void 0,void 0,function*(){if(e.bD.isParsed())return e.bD.getState();if(Ke.pluginStatus!=="loading")return e.bD.setState(Ke),Ke;let Ne=Ke.pluginURL;if(this.self.importScripts(Ne),e.bD.isParsed()){let Ee={pluginStatus:"loaded",pluginURL:Ne};return e.bD.setState(Ee),Ee}throw e.bD.setState({pluginStatus:"error",pluginURL:""}),new Error(`RTL Text Plugin failed to import scripts from ${Ne}`)})}_getAvailableImages(Fe){let Ke=this.availableImages[Fe];return Ke||(Ke=[]),Ke}_getLayerIndex(Fe){let Ke=this.layerIndexes[Fe];return Ke||(Ke=this.layerIndexes[Fe]=new t),Ke}_getWorkerSource(Fe,Ke,Ne){if(this.workerSources[Fe]||(this.workerSources[Fe]={}),this.workerSources[Fe][Ke]||(this.workerSources[Fe][Ke]={}),!this.workerSources[Fe][Ke][Ne]){let Ee={sendAsync:(Ve,ke)=>(Ve.targetMapId=Fe,this.actor.sendAsync(Ve,ke))};switch(Ke){case"vector":this.workerSources[Fe][Ke][Ne]=new i(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;case"geojson":this.workerSources[Fe][Ke][Ne]=new vr(Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe));break;default:this.workerSources[Fe][Ke][Ne]=new this.externalWorkerSourceTypes[Ke](Ee,this._getLayerIndex(Fe),this._getAvailableImages(Fe))}}return this.workerSources[Fe][Ke][Ne]}_getDEMWorkerSource(Fe,Ke){return this.demWorkerSources[Fe]||(this.demWorkerSources[Fe]={}),this.demWorkerSources[Fe][Ke]||(this.demWorkerSources[Fe][Ke]=new n),this.demWorkerSources[Fe][Ke]}}return e.i(self)&&(self.worker=new _r(self)),_r}),A("index",["exports","./shared"],function(e,t){"use strict";var r="4.7.1";let o,a,i={now:typeof performance<"u"&&performance&&performance.now?performance.now.bind(performance):Date.now.bind(Date),frameAsync:Oe=>new Promise((R,ae)=>{let we=requestAnimationFrame(R);Oe.signal.addEventListener("abort",()=>{cancelAnimationFrame(we),ae(t.c())})}),getImageData(Oe,R=0){return this.getImageCanvasContext(Oe).getImageData(-R,-R,Oe.width+2*R,Oe.height+2*R)},getImageCanvasContext(Oe){let R=window.document.createElement("canvas"),ae=R.getContext("2d",{willReadFrequently:!0});if(!ae)throw new Error("failed to create canvas 2d context");return R.width=Oe.width,R.height=Oe.height,ae.drawImage(Oe,0,0,Oe.width,Oe.height),ae},resolveURL:Oe=>(o||(o=document.createElement("a")),o.href=Oe,o.href),hardwareConcurrency:typeof navigator<"u"&&navigator.hardwareConcurrency||4,get prefersReducedMotion(){return!!matchMedia&&(a==null&&(a=matchMedia("(prefers-reduced-motion: reduce)")),a.matches)}};class n{static testProp(R){if(!n.docStyle)return R[0];for(let ae=0;ae<R.length;ae++)if(R[ae]in n.docStyle)return R[ae];return R[0]}static create(R,ae,we){let Se=window.document.createElement(R);return ae!==void 0&&(Se.className=ae),we&&we.appendChild(Se),Se}static createNS(R,ae){return window.document.createElementNS(R,ae)}static disableDrag(){n.docStyle&&n.selectProp&&(n.userSelect=n.docStyle[n.selectProp],n.docStyle[n.selectProp]="none")}static enableDrag(){n.docStyle&&n.selectProp&&(n.docStyle[n.selectProp]=n.userSelect)}static setTransform(R,ae){R.style[n.transformProp]=ae}static addEventListener(R,ae,we,Se={}){R.addEventListener(ae,we,"passive"in Se?Se:Se.capture)}static removeEventListener(R,ae,we,Se={}){R.removeEventListener(ae,we,"passive"in Se?Se:Se.capture)}static suppressClickInternal(R){R.preventDefault(),R.stopPropagation(),window.removeEventListener("click",n.suppressClickInternal,!0)}static suppressClick(){window.addEventListener("click",n.suppressClickInternal,!0),window.setTimeout(()=>{window.removeEventListener("click",n.suppressClickInternal,!0)},0)}static getScale(R){let ae=R.getBoundingClientRect();return{x:ae.width/R.offsetWidth||1,y:ae.height/R.offsetHeight||1,boundingClientRect:ae}}static getPoint(R,ae,we){let Se=ae.boundingClientRect;return new t.P((we.clientX-Se.left)/ae.x-R.clientLeft,(we.clientY-Se.top)/ae.y-R.clientTop)}static mousePos(R,ae){let we=n.getScale(R);return n.getPoint(R,we,ae)}static touchPos(R,ae){let we=[],Se=n.getScale(R);for(let De=0;De<ae.length;De++)we.push(n.getPoint(R,Se,ae[De]));return we}static mouseButton(R){return R.button}static remove(R){R.parentNode&&R.parentNode.removeChild(R)}}n.docStyle=typeof window<"u"&&window.document&&window.document.documentElement.style,n.selectProp=n.testProp(["userSelect","MozUserSelect","WebkitUserSelect","msUserSelect"]),n.transformProp=n.testProp(["transform","WebkitTransform"]);let s={supported:!1,testSupport:function(Oe){!v&&h&&(p?T(Oe):c=Oe)}},c,h,v=!1,p=!1;function T(Oe){let R=Oe.createTexture();Oe.bindTexture(Oe.TEXTURE_2D,R);try{if(Oe.texImage2D(Oe.TEXTURE_2D,0,Oe.RGBA,Oe.RGBA,Oe.UNSIGNED_BYTE,h),Oe.isContextLost())return;s.supported=!0}catch{}Oe.deleteTexture(R),v=!0}var l;typeof document<"u"&&(h=document.createElement("img"),h.onload=()=>{c&&T(c),c=null,p=!0},h.onerror=()=>{v=!0,c=null},h.src="data:image/webp;base64,UklGRh4AAABXRUJQVlA4TBEAAAAvAQAAAAfQ//73v/+BiOh/AAA="),function(Oe){let R,ae,we,Se;Oe.resetRequestQueue=()=>{R=[],ae=0,we=0,Se={}},Oe.addThrottleControl=Dt=>{let Yt=we++;return Se[Yt]=Dt,Yt},Oe.removeThrottleControl=Dt=>{delete Se[Dt],ft()},Oe.getImage=(Dt,Yt,cr=!0)=>new Promise((hr,jr)=>{s.supported&&(Dt.headers||(Dt.headers={}),Dt.headers.accept="image/webp,*/*"),t.e(Dt,{type:"image"}),R.push({abortController:Yt,requestParameters:Dt,supportImageRefresh:cr,state:"queued",onError:ea=>{jr(ea)},onSuccess:ea=>{hr(ea)}}),ft()});let De=Dt=>t._(this,void 0,void 0,function*(){Dt.state="running";let{requestParameters:Yt,supportImageRefresh:cr,onError:hr,onSuccess:jr,abortController:ea}=Dt,qe=cr===!1&&!t.i(self)&&!t.g(Yt.url)&&(!Yt.headers||Object.keys(Yt.headers).reduce((ht,At)=>ht&&At==="accept",!0));ae++;let Je=qe?bt(Yt,ea):t.m(Yt,ea);try{let ht=yield Je;delete Dt.abortController,Dt.state="completed",ht.data instanceof HTMLImageElement||t.b(ht.data)?jr(ht):ht.data&&jr({data:yield(ot=ht.data,typeof createImageBitmap=="function"?t.d(ot):t.f(ot)),cacheControl:ht.cacheControl,expires:ht.expires})}catch(ht){delete Dt.abortController,hr(ht)}finally{ae--,ft()}var ot}),ft=()=>{let Dt=(()=>{for(let Yt of Object.keys(Se))if(Se[Yt]())return!0;return!1})()?t.a.MAX_PARALLEL_IMAGE_REQUESTS_PER_FRAME:t.a.MAX_PARALLEL_IMAGE_REQUESTS;for(let Yt=ae;Yt<Dt&&R.length>0;Yt++){let cr=R.shift();cr.abortController.signal.aborted?Yt--:De(cr)}},bt=(Dt,Yt)=>new Promise((cr,hr)=>{let jr=new Image,ea=Dt.url,qe=Dt.credentials;qe&&qe==="include"?jr.crossOrigin="use-credentials":(qe&&qe==="same-origin"||!t.s(ea))&&(jr.crossOrigin="anonymous"),Yt.signal.addEventListener("abort",()=>{jr.src="",hr(t.c())}),jr.fetchPriority="high",jr.onload=()=>{jr.onerror=jr.onload=null,cr({data:jr})},jr.onerror=()=>{jr.onerror=jr.onload=null,Yt.signal.aborted||hr(new Error("Could not load image. Please make sure to use a supported image type such as PNG or JPEG. Note that SVGs are not supported."))},jr.src=ea})}(l||(l={})),l.resetRequestQueue();class _{constructor(R){this._transformRequestFn=R}transformRequest(R,ae){return this._transformRequestFn&&this._transformRequestFn(R,ae)||{url:R}}setTransformRequest(R){this._transformRequestFn=R}}function w(Oe){var R=new t.A(3);return R[0]=Oe[0],R[1]=Oe[1],R[2]=Oe[2],R}var S,E=function(Oe,R,ae){return Oe[0]=R[0]-ae[0],Oe[1]=R[1]-ae[1],Oe[2]=R[2]-ae[2],Oe};S=new t.A(3),t.A!=Float32Array&&(S[0]=0,S[1]=0,S[2]=0);var m=function(Oe){var R=Oe[0],ae=Oe[1];return R*R+ae*ae};function b(Oe){let R=[];if(typeof Oe=="string")R.push({id:"default",url:Oe});else if(Oe&&Oe.length>0){let ae=[];for(let{id:we,url:Se}of Oe){let De=`${we}${Se}`;ae.indexOf(De)===-1&&(ae.push(De),R.push({id:we,url:Se}))}}return R}function d(Oe,R,ae){let we=Oe.split("?");return we[0]+=`${R}${ae}`,we.join("?")}(function(){var Oe=new t.A(2);t.A!=Float32Array&&(Oe[0]=0,Oe[1]=0)})();class u{constructor(R,ae,we,Se){this.context=R,this.format=we,this.texture=R.gl.createTexture(),this.update(ae,Se)}update(R,ae,we){let{width:Se,height:De}=R,ft=!(this.size&&this.size[0]===Se&&this.size[1]===De||we),{context:bt}=this,{gl:Dt}=bt;if(this.useMipmap=!!(ae&&ae.useMipmap),Dt.bindTexture(Dt.TEXTURE_2D,this.texture),bt.pixelStoreUnpackFlipY.set(!1),bt.pixelStoreUnpack.set(1),bt.pixelStoreUnpackPremultiplyAlpha.set(this.format===Dt.RGBA&&(!ae||ae.premultiply!==!1)),ft)this.size=[Se,De],R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,this.format,Dt.UNSIGNED_BYTE,R):Dt.texImage2D(Dt.TEXTURE_2D,0,this.format,Se,De,0,this.format,Dt.UNSIGNED_BYTE,R.data);else{let{x:Yt,y:cr}=we||{x:0,y:0};R instanceof HTMLImageElement||R instanceof HTMLCanvasElement||R instanceof HTMLVideoElement||R instanceof ImageData||t.b(R)?Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Dt.RGBA,Dt.UNSIGNED_BYTE,R):Dt.texSubImage2D(Dt.TEXTURE_2D,0,Yt,cr,Se,De,Dt.RGBA,Dt.UNSIGNED_BYTE,R.data)}this.useMipmap&&this.isSizePowerOfTwo()&&Dt.generateMipmap(Dt.TEXTURE_2D)}bind(R,ae,we){let{context:Se}=this,{gl:De}=Se;De.bindTexture(De.TEXTURE_2D,this.texture),we!==De.LINEAR_MIPMAP_NEAREST||this.isSizePowerOfTwo()||(we=De.LINEAR),R!==this.filter&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,R),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,we||R),this.filter=R),ae!==this.wrap&&(De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,ae),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,ae),this.wrap=ae)}isSizePowerOfTwo(){return this.size[0]===this.size[1]&&Math.log(this.size[0])/Math.LN2%1==0}destroy(){let{gl:R}=this.context;R.deleteTexture(this.texture),this.texture=null}}function y(Oe){let{userImage:R}=Oe;return!!(R&&R.render&&R.render())&&(Oe.data.replace(new Uint8Array(R.data.buffer)),!0)}class f extends t.E{constructor(){super(),this.images={},this.updatedImages={},this.callbackDispatchedThisFrame={},this.loaded=!1,this.requestors=[],this.patterns={},this.atlasImage=new t.R({width:1,height:1}),this.dirty=!0}isLoaded(){return this.loaded}setLoaded(R){if(this.loaded!==R&&(this.loaded=R,R)){for(let{ids:ae,promiseResolve:we}of this.requestors)we(this._getImagesForIds(ae));this.requestors=[]}}getImage(R){let ae=this.images[R];if(ae&&!ae.data&&ae.spriteData){let we=ae.spriteData;ae.data=new t.R({width:we.width,height:we.height},we.context.getImageData(we.x,we.y,we.width,we.height).data),ae.spriteData=null}return ae}addImage(R,ae){if(this.images[R])throw new Error(`Image id ${R} already exist, use updateImage instead`);this._validate(R,ae)&&(this.images[R]=ae)}_validate(R,ae){let we=!0,Se=ae.data||ae.spriteData;return this._validateStretch(ae.stretchX,Se&&Se.width)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchX" value`))),we=!1),this._validateStretch(ae.stretchY,Se&&Se.height)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "stretchY" value`))),we=!1),this._validateContent(ae.content,ae)||(this.fire(new t.j(new Error(`Image "${R}" has invalid "content" value`))),we=!1),we}_validateStretch(R,ae){if(!R)return!0;let we=0;for(let Se of R){if(Se[0]<we||Se[1]<Se[0]||ae<Se[1])return!1;we=Se[1]}return!0}_validateContent(R,ae){if(!R)return!0;if(R.length!==4)return!1;let we=ae.spriteData,Se=we&&we.width||ae.data.width,De=we&&we.height||ae.data.height;return!(R[0]<0||Se<R[0]||R[1]<0||De<R[1]||R[2]<0||Se<R[2]||R[3]<0||De<R[3]||R[2]<R[0]||R[3]<R[1])}updateImage(R,ae,we=!0){let Se=this.getImage(R);if(we&&(Se.data.width!==ae.data.width||Se.data.height!==ae.data.height))throw new Error(`size mismatch between old image (${Se.data.width}x${Se.data.height}) and new image (${ae.data.width}x${ae.data.height}).`);ae.version=Se.version+1,this.images[R]=ae,this.updatedImages[R]=!0}removeImage(R){let ae=this.images[R];delete this.images[R],delete this.patterns[R],ae.userImage&&ae.userImage.onRemove&&ae.userImage.onRemove()}listImages(){return Object.keys(this.images)}getImages(R){return new Promise((ae,we)=>{let Se=!0;if(!this.isLoaded())for(let De of R)this.images[De]||(Se=!1);this.isLoaded()||Se?ae(this._getImagesForIds(R)):this.requestors.push({ids:R,promiseResolve:ae})})}_getImagesForIds(R){let ae={};for(let we of R){let Se=this.getImage(we);Se||(this.fire(new t.k("styleimagemissing",{id:we})),Se=this.getImage(we)),Se?ae[we]={data:Se.data.clone(),pixelRatio:Se.pixelRatio,sdf:Se.sdf,version:Se.version,stretchX:Se.stretchX,stretchY:Se.stretchY,content:Se.content,textFitWidth:Se.textFitWidth,textFitHeight:Se.textFitHeight,hasRenderCallback:!!(Se.userImage&&Se.userImage.render)}:t.w(`Image "${we}" could not be loaded. Please make sure you have added the image with map.addImage() or a "sprite" property in your style. You can provide missing images by listening for the "styleimagemissing" map event.`)}return ae}getPixelSize(){let{width:R,height:ae}=this.atlasImage;return{width:R,height:ae}}getPattern(R){let ae=this.patterns[R],we=this.getImage(R);if(!we)return null;if(ae&&ae.position.version===we.version)return ae.position;if(ae)ae.position.version=we.version;else{let Se={w:we.data.width+2,h:we.data.height+2,x:0,y:0},De=new t.I(Se,we);this.patterns[R]={bin:Se,position:De}}return this._updatePatternAtlas(),this.patterns[R].position}bind(R){let ae=R.gl;this.atlasTexture?this.dirty&&(this.atlasTexture.update(this.atlasImage),this.dirty=!1):this.atlasTexture=new u(R,this.atlasImage,ae.RGBA),this.atlasTexture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE)}_updatePatternAtlas(){let R=[];for(let De in this.patterns)R.push(this.patterns[De].bin);let{w:ae,h:we}=t.p(R),Se=this.atlasImage;Se.resize({width:ae||1,height:we||1});for(let De in this.patterns){let{bin:ft}=this.patterns[De],bt=ft.x+1,Dt=ft.y+1,Yt=this.getImage(De).data,cr=Yt.width,hr=Yt.height;t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt},{width:cr,height:hr}),t.R.copy(Yt,Se,{x:0,y:hr-1},{x:bt,y:Dt-1},{width:cr,height:1}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt,y:Dt+hr},{width:cr,height:1}),t.R.copy(Yt,Se,{x:cr-1,y:0},{x:bt-1,y:Dt},{width:1,height:hr}),t.R.copy(Yt,Se,{x:0,y:0},{x:bt+cr,y:Dt},{width:1,height:hr})}this.dirty=!0}beginFrame(){this.callbackDispatchedThisFrame={}}dispatchRenderCallbacks(R){for(let ae of R){if(this.callbackDispatchedThisFrame[ae])continue;this.callbackDispatchedThisFrame[ae]=!0;let we=this.getImage(ae);we||t.w(`Image with ID: "${ae}" was not found`),y(we)&&this.updateImage(ae,we)}}}let P=1e20;function L(Oe,R,ae,we,Se,De,ft,bt,Dt){for(let Yt=R;Yt<R+we;Yt++)z(Oe,ae*De+Yt,De,Se,ft,bt,Dt);for(let Yt=ae;Yt<ae+Se;Yt++)z(Oe,Yt*De+R,1,we,ft,bt,Dt)}function z(Oe,R,ae,we,Se,De,ft){De[0]=0,ft[0]=-P,ft[1]=P,Se[0]=Oe[R];for(let bt=1,Dt=0,Yt=0;bt<we;bt++){Se[bt]=Oe[R+bt*ae];let cr=bt*bt;do{let hr=De[Dt];Yt=(Se[bt]-Se[hr]+cr-hr*hr)/(bt-hr)/2}while(Yt<=ft[Dt]&&--Dt>-1);Dt++,De[Dt]=bt,ft[Dt]=Yt,ft[Dt+1]=P}for(let bt=0,Dt=0;bt<we;bt++){for(;ft[Dt+1]<bt;)Dt++;let Yt=De[Dt],cr=bt-Yt;Oe[R+bt*ae]=Se[Yt]+cr*cr}}class F{constructor(R,ae){this.requestManager=R,this.localIdeographFontFamily=ae,this.entries={}}setURL(R){this.url=R}getGlyphs(R){return t._(this,void 0,void 0,function*(){let ae=[];for(let De in R)for(let ft of R[De])ae.push(this._getAndCacheGlyphsPromise(De,ft));let we=yield Promise.all(ae),Se={};for(let{stack:De,id:ft,glyph:bt}of we)Se[De]||(Se[De]={}),Se[De][ft]=bt&&{id:bt.id,bitmap:bt.bitmap.clone(),metrics:bt.metrics};return Se})}_getAndCacheGlyphsPromise(R,ae){return t._(this,void 0,void 0,function*(){let we=this.entries[R];we||(we=this.entries[R]={glyphs:{},requests:{},ranges:{}});let Se=we.glyphs[ae];if(Se!==void 0)return{stack:R,id:ae,glyph:Se};if(Se=this._tinySDF(we,R,ae),Se)return we.glyphs[ae]=Se,{stack:R,id:ae,glyph:Se};let De=Math.floor(ae/256);if(256*De>65535)throw new Error("glyphs > 65535 not supported");if(we.ranges[De])return{stack:R,id:ae,glyph:Se};if(!this.url)throw new Error("glyphsUrl is not set");if(!we.requests[De]){let bt=F.loadGlyphRange(R,De,this.url,this.requestManager);we.requests[De]=bt}let ft=yield we.requests[De];for(let bt in ft)this._doesCharSupportLocalGlyph(+bt)||(we.glyphs[+bt]=ft[+bt]);return we.ranges[De]=!0,{stack:R,id:ae,glyph:ft[ae]||null}})}_doesCharSupportLocalGlyph(R){return!!this.localIdeographFontFamily&&new RegExp("\\p{Ideo}|\\p{sc=Hang}|\\p{sc=Hira}|\\p{sc=Kana}","u").test(String.fromCodePoint(R))}_tinySDF(R,ae,we){let Se=this.localIdeographFontFamily;if(!Se||!this._doesCharSupportLocalGlyph(we))return;let De=R.tinySDF;if(!De){let bt="400";/bold/i.test(ae)?bt="900":/medium/i.test(ae)?bt="500":/light/i.test(ae)&&(bt="200"),De=R.tinySDF=new F.TinySDF({fontSize:48,buffer:6,radius:16,cutoff:.25,fontFamily:Se,fontWeight:bt})}let ft=De.draw(String.fromCharCode(we));return{id:we,bitmap:new t.o({width:ft.width||60,height:ft.height||60},ft.data),metrics:{width:ft.glyphWidth/2||24,height:ft.glyphHeight/2||24,left:ft.glyphLeft/2+.5||0,top:ft.glyphTop/2-27.5||-8,advance:ft.glyphAdvance/2||24,isDoubleResolution:!0}}}}F.loadGlyphRange=function(Oe,R,ae,we){return t._(this,void 0,void 0,function*(){let Se=256*R,De=Se+255,ft=we.transformRequest(ae.replace("{fontstack}",Oe).replace("{range}",`${Se}-${De}`),"Glyphs"),bt=yield t.l(ft,new AbortController);if(!bt||!bt.data)throw new Error(`Could not load glyph range. range: ${R}, ${Se}-${De}`);let Dt={};for(let Yt of t.n(bt.data))Dt[Yt.id]=Yt;return Dt})},F.TinySDF=class{constructor({fontSize:Oe=24,buffer:R=3,radius:ae=8,cutoff:we=.25,fontFamily:Se="sans-serif",fontWeight:De="normal",fontStyle:ft="normal"}={}){this.buffer=R,this.cutoff=we,this.radius=ae;let bt=this.size=Oe+4*R,Dt=this._createCanvas(bt),Yt=this.ctx=Dt.getContext("2d",{willReadFrequently:!0});Yt.font=`${ft} ${De} ${Oe}px ${Se}`,Yt.textBaseline="alphabetic",Yt.textAlign="left",Yt.fillStyle="black",this.gridOuter=new Float64Array(bt*bt),this.gridInner=new Float64Array(bt*bt),this.f=new Float64Array(bt),this.z=new Float64Array(bt+1),this.v=new Uint16Array(bt)}_createCanvas(Oe){let R=document.createElement("canvas");return R.width=R.height=Oe,R}draw(Oe){let{width:R,actualBoundingBoxAscent:ae,actualBoundingBoxDescent:we,actualBoundingBoxLeft:Se,actualBoundingBoxRight:De}=this.ctx.measureText(Oe),ft=Math.ceil(ae),bt=Math.max(0,Math.min(this.size-this.buffer,Math.ceil(De-Se))),Dt=Math.min(this.size-this.buffer,ft+Math.ceil(we)),Yt=bt+2*this.buffer,cr=Dt+2*this.buffer,hr=Math.max(Yt*cr,0),jr=new Uint8ClampedArray(hr),ea={data:jr,width:Yt,height:cr,glyphWidth:bt,glyphHeight:Dt,glyphTop:ft,glyphLeft:0,glyphAdvance:R};if(bt===0||Dt===0)return ea;let{ctx:qe,buffer:Je,gridInner:ot,gridOuter:ht}=this;qe.clearRect(Je,Je,bt,Dt),qe.fillText(Oe,Je,Je+ft);let At=qe.getImageData(Je,Je,bt,Dt);ht.fill(P,0,hr),ot.fill(0,0,hr);for(let _t=0;_t<Dt;_t++)for(let Pt=0;Pt<bt;Pt++){let er=At.data[4*(_t*bt+Pt)+3]/255;if(er===0)continue;let nr=(_t+Je)*Yt+Pt+Je;if(er===1)ht[nr]=0,ot[nr]=P;else{let pr=.5-er;ht[nr]=pr>0?pr*pr:0,ot[nr]=pr<0?pr*pr:0}}L(ht,0,0,Yt,cr,Yt,this.f,this.v,this.z),L(ot,Je,Je,bt,Dt,Yt,this.f,this.v,this.z);for(let _t=0;_t<hr;_t++){let Pt=Math.sqrt(ht[_t])-Math.sqrt(ot[_t]);jr[_t]=Math.round(255-255*(Pt/this.radius+this.cutoff))}return ea}};class B{constructor(){this.specification=t.v.light.position}possiblyEvaluate(R,ae){return t.x(R.expression.evaluate(ae))}interpolate(R,ae,we){return{x:t.y.number(R.x,ae.x,we),y:t.y.number(R.y,ae.y,we),z:t.y.number(R.z,ae.z,we)}}}let O;class I extends t.E{constructor(R){super(),O=O||new t.q({anchor:new t.D(t.v.light.anchor),position:new B,color:new t.D(t.v.light.color),intensity:new t.D(t.v.light.intensity)}),this._transitionable=new t.T(O),this.setLight(R),this._transitioning=this._transitionable.untransitioned()}getLight(){return this._transitionable.serialize()}setLight(R,ae={}){if(!this._validate(t.r,R,ae))for(let we in R){let Se=R[we];we.endsWith("-transition")?this._transitionable.setTransition(we.slice(0,-11),Se):this._transitionable.setValue(we,Se)}}updateTransitions(R){this._transitioning=this._transitionable.transitioned(R,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(R){this.properties=this._transitioning.possiblyEvaluate(R)}_validate(R,ae,we){return(!we||we.validate!==!1)&&t.t(this,R.call(t.u,{value:ae,style:{glyphs:!0,sprite:!0},styleSpec:t.v}))}}let N=new t.q({"sky-color":new t.D(t.v.sky["sky-color"]),"horizon-color":new t.D(t.v.sky["horizon-color"]),"fog-color":new t.D(t.v.sky["fog-color"]),"fog-ground-blend":new t.D(t.v.sky["fog-ground-blend"]),"horizon-fog-blend":new t.D(t.v.sky["horizon-fog-blend"]),"sky-horizon-blend":new t.D(t.v.sky["sky-horizon-blend"]),"atmosphere-blend":new t.D(t.v.sky["atmosphere-blend"])});class U extends t.E{constructor(R){super(),this._transitionable=new t.T(N),this.setSky(R),this._transitioning=this._transitionable.untransitioned(),this.recalculate(new t.z(0))}setSky(R,ae={}){if(!this._validate(t.B,R,ae)){R||(R={"sky-color":"transparent","horizon-color":"transparent","fog-color":"transparent","fog-ground-blend":1,"atmosphere-blend":0});for(let we in R){let Se=R[we];we.endsWith("-transition")?this._transitionable.setTransition(we.slice(0,-11),Se):this._transitionable.setValue(we,Se)}}}getSky(){return this._transitionable.serialize()}updateTransitions(R){this._transitioning=this._transitionable.transitioned(R,this._transitioning)}hasTransition(){return this._transitioning.hasTransition()}recalculate(R){this.properties=this._transitioning.possiblyEvaluate(R)}_validate(R,ae,we={}){return we?.validate!==!1&&t.t(this,R.call(t.u,t.e({value:ae,style:{glyphs:!0,sprite:!0},styleSpec:t.v})))}calculateFogBlendOpacity(R){return R<60?0:R<70?(R-60)/10:1}}class W{constructor(R,ae){this.width=R,this.height=ae,this.nextRow=0,this.data=new Uint8Array(this.width*this.height),this.dashEntry={}}getDash(R,ae){let we=R.join(",")+String(ae);return this.dashEntry[we]||(this.dashEntry[we]=this.addDash(R,ae)),this.dashEntry[we]}getDashRanges(R,ae,we){let Se=[],De=R.length%2==1?-R[R.length-1]*we:0,ft=R[0]*we,bt=!0;Se.push({left:De,right:ft,isDash:bt,zeroLength:R[0]===0});let Dt=R[0];for(let Yt=1;Yt<R.length;Yt++){bt=!bt;let cr=R[Yt];De=Dt*we,Dt+=cr,ft=Dt*we,Se.push({left:De,right:ft,isDash:bt,zeroLength:cr===0})}return Se}addRoundDash(R,ae,we){let Se=ae/2;for(let De=-we;De<=we;De++){let ft=this.width*(this.nextRow+we+De),bt=0,Dt=R[bt];for(let Yt=0;Yt<this.width;Yt++){Yt/Dt.right>1&&(Dt=R[++bt]);let cr=Math.abs(Yt-Dt.left),hr=Math.abs(Yt-Dt.right),jr=Math.min(cr,hr),ea,qe=De/we*(Se+1);if(Dt.isDash){let Je=Se-Math.abs(qe);ea=Math.sqrt(jr*jr+Je*Je)}else ea=Se-Math.sqrt(jr*jr+qe*qe);this.data[ft+Yt]=Math.max(0,Math.min(255,ea+128))}}}addRegularDash(R){for(let bt=R.length-1;bt>=0;--bt){let Dt=R[bt],Yt=R[bt+1];Dt.zeroLength?R.splice(bt,1):Yt&&Yt.isDash===Dt.isDash&&(Yt.left=Dt.left,R.splice(bt,1))}let ae=R[0],we=R[R.length-1];ae.isDash===we.isDash&&(ae.left=we.left-this.width,we.right=ae.right+this.width);let Se=this.width*this.nextRow,De=0,ft=R[De];for(let bt=0;bt<this.width;bt++){bt/ft.right>1&&(ft=R[++De]);let Dt=Math.abs(bt-ft.left),Yt=Math.abs(bt-ft.right),cr=Math.min(Dt,Yt);this.data[Se+bt]=Math.max(0,Math.min(255,(ft.isDash?cr:-cr)+128))}}addDash(R,ae){let we=ae?7:0,Se=2*we+1;if(this.nextRow+Se>this.height)return t.w("LineAtlas out of space"),null;let De=0;for(let bt=0;bt<R.length;bt++)De+=R[bt];if(De!==0){let bt=this.width/De,Dt=this.getDashRanges(R,this.width,bt);ae?this.addRoundDash(Dt,bt,we):this.addRegularDash(Dt)}let ft={y:(this.nextRow+we+.5)/this.height,height:2*we/this.height,width:De};return this.nextRow+=Se,this.dirty=!0,ft}bind(R){let ae=R.gl;this.texture?(ae.bindTexture(ae.TEXTURE_2D,this.texture),this.dirty&&(this.dirty=!1,ae.texSubImage2D(ae.TEXTURE_2D,0,0,0,this.width,this.height,ae.ALPHA,ae.UNSIGNED_BYTE,this.data))):(this.texture=ae.createTexture(),ae.bindTexture(ae.TEXTURE_2D,this.texture),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_WRAP_S,ae.REPEAT),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_WRAP_T,ae.REPEAT),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_MIN_FILTER,ae.LINEAR),ae.texParameteri(ae.TEXTURE_2D,ae.TEXTURE_MAG_FILTER,ae.LINEAR),ae.texImage2D(ae.TEXTURE_2D,0,ae.ALPHA,this.width,this.height,0,ae.ALPHA,ae.UNSIGNED_BYTE,this.data))}}let Q="maplibre_preloaded_worker_pool";class ue{constructor(){this.active={}}acquire(R){if(!this.workers)for(this.workers=[];this.workers.length<ue.workerCount;)this.workers.push(new Worker(t.a.WORKER_URL));return this.active[R]=!0,this.workers.slice()}release(R){delete this.active[R],this.numActive()===0&&(this.workers.forEach(ae=>{ae.terminate()}),this.workers=null)}isPreloaded(){return!!this.active[Q]}numActive(){return Object.keys(this.active).length}}let se=Math.floor(i.hardwareConcurrency/2),he,G;function $(){return he||(he=new ue),he}ue.workerCount=t.C(globalThis)?Math.max(Math.min(se,3),1):1;class J{constructor(R,ae){this.workerPool=R,this.actors=[],this.currentActor=0,this.id=ae;let we=this.workerPool.acquire(ae);for(let Se=0;Se<we.length;Se++){let De=new t.F(we[Se],ae);De.name=`Worker ${Se}`,this.actors.push(De)}if(!this.actors.length)throw new Error("No actors found")}broadcast(R,ae){let we=[];for(let Se of this.actors)we.push(Se.sendAsync({type:R,data:ae}));return Promise.all(we)}getActor(){return this.currentActor=(this.currentActor+1)%this.actors.length,this.actors[this.currentActor]}remove(R=!0){this.actors.forEach(ae=>{ae.remove()}),this.actors=[],R&&this.workerPool.release(this.id)}registerMessageHandler(R,ae){for(let we of this.actors)we.registerMessageHandler(R,ae)}}function Z(){return G||(G=new J($(),t.G),G.registerMessageHandler("GR",(Oe,R,ae)=>t.m(R,ae))),G}function re(Oe,R){let ae=t.H();return t.J(ae,ae,[1,1,0]),t.K(ae,ae,[.5*Oe.width,.5*Oe.height,1]),t.L(ae,ae,Oe.calculatePosMatrix(R.toUnwrapped()))}function ne(Oe,R,ae,we,Se,De){let ft=function(hr,jr,ea){if(hr)for(let qe of hr){let Je=jr[qe];if(Je&&Je.source===ea&&Je.type==="fill-extrusion")return!0}else for(let qe in jr){let Je=jr[qe];if(Je.source===ea&&Je.type==="fill-extrusion")return!0}return!1}(Se&&Se.layers,R,Oe.id),bt=De.maxPitchScaleFactor(),Dt=Oe.tilesIn(we,bt,ft);Dt.sort(j);let Yt=[];for(let hr of Dt)Yt.push({wrappedTileID:hr.tileID.wrapped().key,queryResults:hr.tile.queryRenderedFeatures(R,ae,Oe._state,hr.queryGeometry,hr.cameraQueryGeometry,hr.scale,Se,De,bt,re(Oe.transform,hr.tileID))});let cr=function(hr){let jr={},ea={};for(let qe of hr){let Je=qe.queryResults,ot=qe.wrappedTileID,ht=ea[ot]=ea[ot]||{};for(let At in Je){let _t=Je[At],Pt=ht[At]=ht[At]||{},er=jr[At]=jr[At]||[];for(let nr of _t)Pt[nr.featureIndex]||(Pt[nr.featureIndex]=!0,er.push(nr))}}return jr}(Yt);for(let hr in cr)cr[hr].forEach(jr=>{let ea=jr.feature,qe=Oe.getFeatureState(ea.layer["source-layer"],ea.id);ea.source=ea.layer.source,ea.layer["source-layer"]&&(ea.sourceLayer=ea.layer["source-layer"]),ea.state=qe});return cr}function j(Oe,R){let ae=Oe.tileID,we=R.tileID;return ae.overscaledZ-we.overscaledZ||ae.canonical.y-we.canonical.y||ae.wrap-we.wrap||ae.canonical.x-we.canonical.x}function ee(Oe,R,ae){return t._(this,void 0,void 0,function*(){let we=Oe;if(Oe.url?we=(yield t.h(R.transformRequest(Oe.url,"Source"),ae)).data:yield i.frameAsync(ae),!we)return null;let Se=t.M(t.e(we,Oe),["tiles","minzoom","maxzoom","attribution","bounds","scheme","tileSize","encoding"]);return"vector_layers"in we&&we.vector_layers&&(Se.vectorLayerIds=we.vector_layers.map(De=>De.id)),Se})}class ie{constructor(R,ae){R&&(ae?this.setSouthWest(R).setNorthEast(ae):Array.isArray(R)&&(R.length===4?this.setSouthWest([R[0],R[1]]).setNorthEast([R[2],R[3]]):this.setSouthWest(R[0]).setNorthEast(R[1])))}setNorthEast(R){return this._ne=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}setSouthWest(R){return this._sw=R instanceof t.N?new t.N(R.lng,R.lat):t.N.convert(R),this}extend(R){let ae=this._sw,we=this._ne,Se,De;if(R instanceof t.N)Se=R,De=R;else{if(!(R instanceof ie))return Array.isArray(R)?R.length===4||R.every(Array.isArray)?this.extend(ie.convert(R)):this.extend(t.N.convert(R)):R&&("lng"in R||"lon"in R)&&"lat"in R?this.extend(t.N.convert(R)):this;if(Se=R._sw,De=R._ne,!Se||!De)return this}return ae||we?(ae.lng=Math.min(Se.lng,ae.lng),ae.lat=Math.min(Se.lat,ae.lat),we.lng=Math.max(De.lng,we.lng),we.lat=Math.max(De.lat,we.lat)):(this._sw=new t.N(Se.lng,Se.lat),this._ne=new t.N(De.lng,De.lat)),this}getCenter(){return new t.N((this._sw.lng+this._ne.lng)/2,(this._sw.lat+this._ne.lat)/2)}getSouthWest(){return this._sw}getNorthEast(){return this._ne}getNorthWest(){return new t.N(this.getWest(),this.getNorth())}getSouthEast(){return new t.N(this.getEast(),this.getSouth())}getWest(){return this._sw.lng}getSouth(){return this._sw.lat}getEast(){return this._ne.lng}getNorth(){return this._ne.lat}toArray(){return[this._sw.toArray(),this._ne.toArray()]}toString(){return`LngLatBounds(${this._sw.toString()}, ${this._ne.toString()})`}isEmpty(){return!(this._sw&&this._ne)}contains(R){let{lng:ae,lat:we}=t.N.convert(R),Se=this._sw.lng<=ae&&ae<=this._ne.lng;return this._sw.lng>this._ne.lng&&(Se=this._sw.lng>=ae&&ae>=this._ne.lng),this._sw.lat<=we&&we<=this._ne.lat&&Se}static convert(R){return R instanceof ie?R:R&&new ie(R)}static fromLngLat(R,ae=0){let we=360*ae/40075017,Se=we/Math.cos(Math.PI/180*R.lat);return new ie(new t.N(R.lng-Se,R.lat-we),new t.N(R.lng+Se,R.lat+we))}adjustAntiMeridian(){let R=new t.N(this._sw.lng,this._sw.lat),ae=new t.N(this._ne.lng,this._ne.lat);return new ie(R,R.lng>ae.lng?new t.N(ae.lng+360,ae.lat):ae)}}class fe{constructor(R,ae,we){this.bounds=ie.convert(this.validateBounds(R)),this.minzoom=ae||0,this.maxzoom=we||24}validateBounds(R){return Array.isArray(R)&&R.length===4?[Math.max(-180,R[0]),Math.max(-90,R[1]),Math.min(180,R[2]),Math.min(90,R[3])]:[-180,-90,180,90]}contains(R){let ae=Math.pow(2,R.z),we=Math.floor(t.O(this.bounds.getWest())*ae),Se=Math.floor(t.Q(this.bounds.getNorth())*ae),De=Math.ceil(t.O(this.bounds.getEast())*ae),ft=Math.ceil(t.Q(this.bounds.getSouth())*ae);return R.x>=we&&R.x<De&&R.y>=Se&&R.y<ft}}class be extends t.E{constructor(R,ae,we,Se){if(super(),this.id=R,this.dispatcher=we,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.e(this,t.M(ae,["url","scheme","tileSize","promoteId"])),this._options=t.e({type:"vector"},ae),this._collectResourceTiming=ae.collectResourceTiming,this.tileSize!==512)throw new Error("vector tile sources must have a tileSize of 512");this.setEventedParent(Se)}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,this.map.style.sourceCaches[this.id].clearTiles(),R&&(t.e(this,R),R.bounds&&(this.tileBounds=new fe(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}onAdd(R){this.map=R,this.load()}setSourceProperty(R){this._tileJSONRequest&&this._tileJSONRequest.abort(),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}serialize(){return t.e({},this._options)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we={request:this.map._requestManager.transformRequest(ae,"Tile"),uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,tileSize:this.tileSize*R.tileID.overscaleFactor(),type:this.type,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};we.request.collectResourceTiming=this._collectResourceTiming;let Se="RT";if(R.actor&&R.state!=="expired"){if(R.state==="loading")return new Promise((De,ft)=>{R.reloadPromise={resolve:De,reject:ft}})}else R.actor=this.dispatcher.getActor(),Se="LT";R.abortController=new AbortController;try{let De=yield R.actor.sendAsync({type:Se,data:we},R.abortController);if(delete R.abortController,R.aborted)return;this._afterTileLoadWorkerResponse(R,De)}catch(De){if(delete R.abortController,R.aborted)return;if(De&&De.status!==404)throw De;this._afterTileLoadWorkerResponse(R,null)}})}_afterTileLoadWorkerResponse(R,ae){if(ae&&ae.resourceTiming&&(R.resourceTiming=ae.resourceTiming),ae&&this.map._refreshExpiredTiles&&R.setExpiryData(ae),R.loadVectorData(ae,this.map.painter),R.reloadPromise){let we=R.reloadPromise;R.reloadPromise=null,this.loadTile(R).then(we.resolve).catch(we.reject)}}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.actor&&(yield R.actor.sendAsync({type:"AT",data:{uid:R.uid,type:this.type,source:this.id}}))})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),R.actor&&(yield R.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}}))})}hasTransition(){return!1}}class Ae extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.setEventedParent(Se),this.type="raster",this.minzoom=0,this.maxzoom=22,this.roundZoom=!0,this.scheme="xyz",this.tileSize=512,this._loaded=!1,this._options=t.e({type:"raster"},ae),t.e(this,t.M(ae,["url","scheme","tileSize"]))}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this._tileJSONRequest=new AbortController;try{let R=yield ee(this._options,this.map._requestManager,this._tileJSONRequest);this._tileJSONRequest=null,this._loaded=!0,R&&(t.e(this,R),R.bounds&&(this.tileBounds=new fe(R.bounds,this.minzoom,this.maxzoom)),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})))}catch(R){this._tileJSONRequest=null,this.fire(new t.j(R))}})}loaded(){return this._loaded}onAdd(R){this.map=R,this.load()}onRemove(){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null)}setSourceProperty(R){this._tileJSONRequest&&(this._tileJSONRequest.abort(),this._tileJSONRequest=null),R(),this.load()}setTiles(R){return this.setSourceProperty(()=>{this._options.tiles=R}),this}setUrl(R){return this.setSourceProperty(()=>{this.url=R,this._options.url=R}),this}serialize(){return t.e({},this._options)}hasTile(R){return!this.tileBounds||this.tileBounds.contains(R.canonical)}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme);R.abortController=new AbortController;try{let we=yield l.getImage(this.map._requestManager.transformRequest(ae,"Tile"),R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(we&&we.data){this.map._refreshExpiredTiles&&we.cacheControl&&we.expires&&R.setExpiryData({cacheControl:we.cacheControl,expires:we.expires});let Se=this.map.painter.context,De=Se.gl,ft=we.data;R.texture=this.map.painter.getTileTexture(ft.width),R.texture?R.texture.update(ft,{useMipmap:!0}):(R.texture=new u(Se,ft,De.RGBA,{useMipmap:!0}),R.texture.bind(De.LINEAR,De.CLAMP_TO_EDGE,De.LINEAR_MIPMAP_NEAREST)),R.state="loaded"}}catch(we){if(delete R.abortController,R.aborted)R.state="unloaded";else if(we)throw R.state="errored",we}})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController)})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.texture&&this.map.painter.saveTileTexture(R.texture)})}hasTransition(){return!1}}class Be extends Ae{constructor(R,ae,we,Se){super(R,ae,we,Se),this.type="raster-dem",this.maxzoom=22,this._options=t.e({type:"raster-dem"},ae),this.encoding=ae.encoding||"mapbox",this.redFactor=ae.redFactor,this.greenFactor=ae.greenFactor,this.blueFactor=ae.blueFactor,this.baseShift=ae.baseShift}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.tileID.canonical.url(this.tiles,this.map.getPixelRatio(),this.scheme),we=this.map._requestManager.transformRequest(ae,"Tile");R.neighboringTiles=this._getNeighboringTiles(R.tileID),R.abortController=new AbortController;try{let Se=yield l.getImage(we,R.abortController,this.map._refreshExpiredTiles);if(delete R.abortController,R.aborted)return void(R.state="unloaded");if(Se&&Se.data){let De=Se.data;this.map._refreshExpiredTiles&&Se.cacheControl&&Se.expires&&R.setExpiryData({cacheControl:Se.cacheControl,expires:Se.expires});let ft=t.b(De)&&t.U()?De:yield this.readImageNow(De),bt={type:this.type,uid:R.uid,source:this.id,rawImageData:ft,encoding:this.encoding,redFactor:this.redFactor,greenFactor:this.greenFactor,blueFactor:this.blueFactor,baseShift:this.baseShift};if(!R.actor||R.state==="expired"){R.actor=this.dispatcher.getActor();let Dt=yield R.actor.sendAsync({type:"LDT",data:bt});R.dem=Dt,R.needsHillshadePrepare=!0,R.needsTerrainPrepare=!0,R.state="loaded"}}}catch(Se){if(delete R.abortController,R.aborted)R.state="unloaded";else if(Se)throw R.state="errored",Se}})}readImageNow(R){return t._(this,void 0,void 0,function*(){if(typeof VideoFrame<"u"&&t.V()){let ae=R.width+2,we=R.height+2;try{return new t.R({width:ae,height:we},yield t.W(R,-1,-1,ae,we))}catch{}}return i.getImageData(R,1)})}_getNeighboringTiles(R){let ae=R.canonical,we=Math.pow(2,ae.z),Se=(ae.x-1+we)%we,De=ae.x===0?R.wrap-1:R.wrap,ft=(ae.x+1+we)%we,bt=ae.x+1===we?R.wrap+1:R.wrap,Dt={};return Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y).key]={backfilled:!1},ae.y>0&&(Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,R.wrap,ae.z,ae.x,ae.y-1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y-1).key]={backfilled:!1}),ae.y+1<we&&(Dt[new t.S(R.overscaledZ,De,ae.z,Se,ae.y+1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,R.wrap,ae.z,ae.x,ae.y+1).key]={backfilled:!1},Dt[new t.S(R.overscaledZ,bt,ae.z,ft,ae.y+1).key]={backfilled:!1}),Dt}unloadTile(R){return t._(this,void 0,void 0,function*(){R.demTexture&&this.map.painter.saveTileTexture(R.demTexture),R.fbo&&(R.fbo.destroy(),delete R.fbo),R.dem&&delete R.dem,delete R.neighboringTiles,R.state="unloaded",R.actor&&(yield R.actor.sendAsync({type:"RDT",data:{type:this.type,uid:R.uid,source:this.id}}))})}}class Ie extends t.E{constructor(R,ae,we,Se){super(),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._pendingLoads=0,this.actor=we.getActor(),this.setEventedParent(Se),this._data=ae.data,this._options=t.e({},ae),this._collectResourceTiming=ae.collectResourceTiming,ae.maxzoom!==void 0&&(this.maxzoom=ae.maxzoom),ae.type&&(this.type=ae.type),ae.attribution&&(this.attribution=ae.attribution),this.promoteId=ae.promoteId;let De=t.X/this.tileSize;ae.clusterMaxZoom!==void 0&&this.maxzoom<=ae.clusterMaxZoom&&t.w(`The maxzoom value "${this.maxzoom}" is expected to be greater than the clusterMaxZoom value "${ae.clusterMaxZoom}".`),this.workerOptions=t.e({source:this.id,cluster:ae.cluster||!1,geojsonVtOptions:{buffer:(ae.buffer!==void 0?ae.buffer:128)*De,tolerance:(ae.tolerance!==void 0?ae.tolerance:.375)*De,extent:t.X,maxZoom:this.maxzoom,lineMetrics:ae.lineMetrics||!1,generateId:ae.generateId||!1},superclusterOptions:{maxZoom:ae.clusterMaxZoom!==void 0?ae.clusterMaxZoom:this.maxzoom-1,minPoints:Math.max(2,ae.clusterMinPoints||2),extent:t.X,radius:(ae.clusterRadius||50)*De,log:!1,generateId:ae.generateId||!1},clusterProperties:ae.clusterProperties,filter:ae.filter},ae.workerOptions),typeof this.promoteId=="string"&&(this.workerOptions.promoteId=this.promoteId)}load(){return t._(this,void 0,void 0,function*(){yield this._updateWorkerData()})}onAdd(R){this.map=R,this.load()}setData(R){return this._data=R,this._updateWorkerData(),this}updateData(R){return this._updateWorkerData(R),this}getData(){return t._(this,void 0,void 0,function*(){let R=t.e({type:this.type},this.workerOptions);return this.actor.sendAsync({type:"GD",data:R})})}setClusterOptions(R){return this.workerOptions.cluster=R.cluster,R&&(R.clusterRadius!==void 0&&(this.workerOptions.superclusterOptions.radius=R.clusterRadius),R.clusterMaxZoom!==void 0&&(this.workerOptions.superclusterOptions.maxZoom=R.clusterMaxZoom)),this._updateWorkerData(),this}getClusterExpansionZoom(R){return this.actor.sendAsync({type:"GCEZ",data:{type:this.type,clusterId:R,source:this.id}})}getClusterChildren(R){return this.actor.sendAsync({type:"GCC",data:{type:this.type,clusterId:R,source:this.id}})}getClusterLeaves(R,ae,we){return this.actor.sendAsync({type:"GCL",data:{type:this.type,source:this.id,clusterId:R,limit:ae,offset:we}})}_updateWorkerData(R){return t._(this,void 0,void 0,function*(){let ae=t.e({type:this.type},this.workerOptions);R?ae.dataDiff=R:typeof this._data=="string"?(ae.request=this.map._requestManager.transformRequest(i.resolveURL(this._data),"Source"),ae.request.collectResourceTiming=this._collectResourceTiming):ae.data=JSON.stringify(this._data),this._pendingLoads++,this.fire(new t.k("dataloading",{dataType:"source"}));try{let we=yield this.actor.sendAsync({type:"LD",data:ae});if(this._pendingLoads--,this._removed||we.abandoned)return void this.fire(new t.k("dataabort",{dataType:"source"}));let Se=null;we.resourceTiming&&we.resourceTiming[this.id]&&(Se=we.resourceTiming[this.id].slice(0));let De={dataType:"source"};this._collectResourceTiming&&Se&&Se.length>0&&t.e(De,{resourceTiming:Se}),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"metadata"}))),this.fire(new t.k("data",Object.assign(Object.assign({},De),{sourceDataType:"content"})))}catch(we){if(this._pendingLoads--,this._removed)return void this.fire(new t.k("dataabort",{dataType:"source"}));this.fire(new t.j(we))}})}loaded(){return this._pendingLoads===0}loadTile(R){return t._(this,void 0,void 0,function*(){let ae=R.actor?"RT":"LT";R.actor=this.actor;let we={type:this.type,uid:R.uid,tileID:R.tileID,zoom:R.tileID.overscaledZ,maxZoom:this.maxzoom,tileSize:this.tileSize,source:this.id,pixelRatio:this.map.getPixelRatio(),showCollisionBoxes:this.map.showCollisionBoxes,promoteId:this.promoteId};R.abortController=new AbortController;let Se=yield this.actor.sendAsync({type:ae,data:we},R.abortController);delete R.abortController,R.unloadVectorData(),R.aborted||R.loadVectorData(Se,this.map.painter,ae==="RT")})}abortTile(R){return t._(this,void 0,void 0,function*(){R.abortController&&(R.abortController.abort(),delete R.abortController),R.aborted=!0})}unloadTile(R){return t._(this,void 0,void 0,function*(){R.unloadVectorData(),yield this.actor.sendAsync({type:"RMT",data:{uid:R.uid,type:this.type,source:this.id}})})}onRemove(){this._removed=!0,this.actor.sendAsync({type:"RS",data:{type:this.type,source:this.id}})}serialize(){return t.e({},this._options,{type:this.type,data:this._data})}hasTransition(){return!1}}var Ze=t.Y([{name:"a_pos",type:"Int16",components:2},{name:"a_texture_pos",type:"Int16",components:2}]);class at extends t.E{constructor(R,ae,we,Se){super(),this.id=R,this.dispatcher=we,this.coordinates=ae.coordinates,this.type="image",this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.tiles={},this._loaded=!1,this.setEventedParent(Se),this.options=ae}load(R){return t._(this,void 0,void 0,function*(){this._loaded=!1,this.fire(new t.k("dataloading",{dataType:"source"})),this.url=this.options.url,this._request=new AbortController;try{let ae=yield l.getImage(this.map._requestManager.transformRequest(this.url,"Image"),this._request);this._request=null,this._loaded=!0,ae&&ae.data&&(this.image=ae.data,R&&(this.coordinates=R),this._finishLoading())}catch(ae){this._request=null,this._loaded=!0,this.fire(new t.j(ae))}})}loaded(){return this._loaded}updateImage(R){return R.url?(this._request&&(this._request.abort(),this._request=null),this.options.url=R.url,this.load(R.coordinates).finally(()=>{this.texture=null}),this):this}_finishLoading(){this.map&&(this.setCoordinates(this.coordinates),this.fire(new t.k("data",{dataType:"source",sourceDataType:"metadata"})))}onAdd(R){this.map=R,this.load()}onRemove(){this._request&&(this._request.abort(),this._request=null)}setCoordinates(R){this.coordinates=R;let ae=R.map(t.Z.fromLngLat);this.tileID=function(Se){let De=1/0,ft=1/0,bt=-1/0,Dt=-1/0;for(let jr of Se)De=Math.min(De,jr.x),ft=Math.min(ft,jr.y),bt=Math.max(bt,jr.x),Dt=Math.max(Dt,jr.y);let Yt=Math.max(bt-De,Dt-ft),cr=Math.max(0,Math.floor(-Math.log(Yt)/Math.LN2)),hr=Math.pow(2,cr);return new t.a1(cr,Math.floor((De+bt)/2*hr),Math.floor((ft+Dt)/2*hr))}(ae),this.minzoom=this.maxzoom=this.tileID.z;let we=ae.map(Se=>this.tileID.getTilePoint(Se)._round());return this._boundsArray=new t.$,this._boundsArray.emplaceBack(we[0].x,we[0].y,0,0),this._boundsArray.emplaceBack(we[1].x,we[1].y,t.X,0),this._boundsArray.emplaceBack(we[3].x,we[3].y,0,t.X),this._boundsArray.emplaceBack(we[2].x,we[2].y,t.X,t.X),this.boundsBuffer&&(this.boundsBuffer.destroy(),delete this.boundsBuffer),this.fire(new t.k("data",{dataType:"source",sourceDataType:"content"})),this}prepare(){if(Object.keys(this.tiles).length===0||!this.image)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture||(this.texture=new u(R,this.image,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}loadTile(R){return t._(this,void 0,void 0,function*(){this.tileID&&this.tileID.equals(R.tileID.canonical)?(this.tiles[String(R.tileID.wrap)]=R,R.buckets={}):R.state="errored"})}serialize(){return{type:"image",url:this.options.url,coordinates:this.coordinates}}hasTransition(){return!1}}class it extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),this.roundZoom=!0,this.type="video",this.options=ae}load(){return t._(this,void 0,void 0,function*(){this._loaded=!1;let R=this.options;this.urls=[];for(let ae of R.urls)this.urls.push(this.map._requestManager.transformRequest(ae,"Source").url);try{let ae=yield t.a3(this.urls);if(this._loaded=!0,!ae)return;this.video=ae,this.video.loop=!0,this.video.addEventListener("playing",()=>{this.map.triggerRepaint()}),this.map&&this.video.play(),this._finishLoading()}catch(ae){this.fire(new t.j(ae))}})}pause(){this.video&&this.video.pause()}play(){this.video&&this.video.play()}seek(R){if(this.video){let ae=this.video.seekable;R<ae.start(0)||R>ae.end(0)?this.fire(new t.j(new t.a2(`sources.${this.id}`,null,`Playback for this video can be set only between the ${ae.start(0)} and ${ae.end(0)}-second mark.`))):this.video.currentTime=R}}getVideo(){return this.video}onAdd(R){this.map||(this.map=R,this.load(),this.video&&(this.video.play(),this.setCoordinates(this.coordinates)))}prepare(){if(Object.keys(this.tiles).length===0||this.video.readyState<2)return;let R=this.map.painter.context,ae=R.gl;this.boundsBuffer||(this.boundsBuffer=R.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?this.video.paused||(this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE),ae.texSubImage2D(ae.TEXTURE_2D,0,0,0,ae.RGBA,ae.UNSIGNED_BYTE,this.video)):(this.texture=new u(R,this.video,ae.RGBA),this.texture.bind(ae.LINEAR,ae.CLAMP_TO_EDGE));let we=!1;for(let Se in this.tiles){let De=this.tiles[Se];De.state!=="loaded"&&(De.state="loaded",De.texture=this.texture,we=!0)}we&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"video",urls:this.urls,coordinates:this.coordinates}}hasTransition(){return this.video&&!this.video.paused}}class et extends at{constructor(R,ae,we,Se){super(R,ae,we,Se),ae.coordinates?Array.isArray(ae.coordinates)&&ae.coordinates.length===4&&!ae.coordinates.some(De=>!Array.isArray(De)||De.length!==2||De.some(ft=>typeof ft!="number"))||this.fire(new t.j(new t.a2(`sources.${R}`,null,'"coordinates" property must be an array of 4 longitude/latitude array pairs'))):this.fire(new t.j(new t.a2(`sources.${R}`,null,'missing required property "coordinates"'))),ae.animate&&typeof ae.animate!="boolean"&&this.fire(new t.j(new t.a2(`sources.${R}`,null,'optional "animate" property must be a boolean value'))),ae.canvas?typeof ae.canvas=="string"||ae.canvas instanceof HTMLCanvasElement||this.fire(new t.j(new t.a2(`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.j(new t.a2(`sources.${R}`,null,'missing required property "canvas"'))),this.options=ae,this.animate=ae.animate===void 0||ae.animate}load(){return t._(this,void 0,void 0,function*(){this._loaded=!0,this.canvas||(this.canvas=this.options.canvas instanceof HTMLCanvasElement?this.options.canvas:document.getElementById(this.options.canvas)),this.width=this.canvas.width,this.height=this.canvas.height,this._hasInvalidDimensions()?this.fire(new t.j(new Error("Canvas dimensions cannot be less than or equal to zero."))):(this.play=function(){this._playing=!0,this.map.triggerRepaint()},this.pause=function(){this._playing&&(this.prepare(),this._playing=!1)},this._finishLoading())})}getCanvas(){return this.canvas}onAdd(R){this.map=R,this.load(),this.canvas&&this.animate&&this.play()}onRemove(){this.pause()}prepare(){let R=!1;if(this.canvas.width!==this.width&&(this.width=this.canvas.width,R=!0),this.canvas.height!==this.height&&(this.height=this.canvas.height,R=!0),this._hasInvalidDimensions()||Object.keys(this.tiles).length===0)return;let ae=this.map.painter.context,we=ae.gl;this.boundsBuffer||(this.boundsBuffer=ae.createVertexBuffer(this._boundsArray,Ze.members)),this.boundsSegments||(this.boundsSegments=t.a0.simpleSegment(0,0,4,2)),this.texture?(R||this._playing)&&this.texture.update(this.canvas,{premultiply:!0}):this.texture=new u(ae,this.canvas,we.RGBA,{premultiply:!0});let Se=!1;for(let De in this.tiles){let ft=this.tiles[De];ft.state!=="loaded"&&(ft.state="loaded",ft.texture=this.texture,Se=!0)}Se&&this.fire(new t.k("data",{dataType:"source",sourceDataType:"idle",sourceId:this.id}))}serialize(){return{type:"canvas",coordinates:this.coordinates}}hasTransition(){return this._playing}_hasInvalidDimensions(){for(let R of[this.canvas.width,this.canvas.height])if(isNaN(R)||R<=0)return!0;return!1}}let lt={},Me=Oe=>{switch(Oe){case"geojson":return Ie;case"image":return at;case"raster":return Ae;case"raster-dem":return Be;case"vector":return be;case"video":return it;case"canvas":return et}return lt[Oe]},ge="RTLPluginLoaded";class ce extends t.E{constructor(){super(...arguments),this.status="unavailable",this.url=null,this.dispatcher=Z()}_syncState(R){return this.status=R,this.dispatcher.broadcast("SRPS",{pluginStatus:R,pluginURL:this.url}).catch(ae=>{throw this.status="error",ae})}getRTLTextPluginStatus(){return this.status}clearRTLTextPlugin(){this.status="unavailable",this.url=null}setRTLTextPlugin(R){return t._(this,arguments,void 0,function*(ae,we=!1){if(this.url)throw new Error("setRTLTextPlugin cannot be called multiple times.");if(this.url=i.resolveURL(ae),!this.url)throw new Error(`requested url ${ae} is invalid`);if(this.status==="unavailable"){if(!we)return this._requestImport();this.status="deferred",this._syncState(this.status)}else if(this.status==="requested")return this._requestImport()})}_requestImport(){return t._(this,void 0,void 0,function*(){yield this._syncState("loading"),this.status="loaded",this.fire(new t.k(ge))})}lazyLoad(){this.status==="unavailable"?this.status="requested":this.status==="deferred"&&this._requestImport()}}let ze=null;function tt(){return ze||(ze=new ce),ze}class nt{constructor(R,ae){this.timeAdded=0,this.fadeEndTime=0,this.tileID=R,this.uid=t.a4(),this.uses=0,this.tileSize=ae,this.buckets={},this.expirationTime=null,this.queryPadding=0,this.hasSymbolBuckets=!1,this.hasRTLText=!1,this.dependencies={},this.rtt=[],this.rttCoords={},this.expiredRequestCount=0,this.state="loading"}registerFadeDuration(R){let ae=R+this.timeAdded;ae<this.fadeEndTime||(this.fadeEndTime=ae)}wasRequested(){return this.state==="errored"||this.state==="loaded"||this.state==="reloading"}clearTextures(R){this.demTexture&&R.saveTileTexture(this.demTexture),this.demTexture=null}loadVectorData(R,ae,we){if(this.hasData()&&this.unloadVectorData(),this.state="loaded",R){R.featureIndex&&(this.latestFeatureIndex=R.featureIndex,R.rawTileData?(this.latestRawTileData=R.rawTileData,this.latestFeatureIndex.rawTileData=R.rawTileData):this.latestRawTileData&&(this.latestFeatureIndex.rawTileData=this.latestRawTileData)),this.collisionBoxArray=R.collisionBoxArray,this.buckets=function(Se,De){let ft={};if(!De)return ft;for(let bt of Se){let Dt=bt.layerIds.map(Yt=>De.getLayer(Yt)).filter(Boolean);if(Dt.length!==0){bt.layers=Dt,bt.stateDependentLayerIds&&(bt.stateDependentLayers=bt.stateDependentLayerIds.map(Yt=>Dt.filter(cr=>cr.id===Yt)[0]));for(let Yt of Dt)ft[Yt.id]=bt}}return ft}(R.buckets,ae.style),this.hasSymbolBuckets=!1;for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6){if(this.hasSymbolBuckets=!0,!we)break;De.justReloaded=!0}}if(this.hasRTLText=!1,this.hasSymbolBuckets)for(let Se in this.buckets){let De=this.buckets[Se];if(De instanceof t.a6&&De.hasRTLText){this.hasRTLText=!0,tt().lazyLoad();break}}this.queryPadding=0;for(let Se in this.buckets){let De=this.buckets[Se];this.queryPadding=Math.max(this.queryPadding,ae.style.getLayer(Se).queryRadius(De))}R.imageAtlas&&(this.imageAtlas=R.imageAtlas),R.glyphAtlasImage&&(this.glyphAtlasImage=R.glyphAtlasImage)}else this.collisionBoxArray=new t.a5}unloadVectorData(){for(let R in this.buckets)this.buckets[R].destroy();this.buckets={},this.imageAtlasTexture&&this.imageAtlasTexture.destroy(),this.imageAtlas&&(this.imageAtlas=null),this.glyphAtlasTexture&&this.glyphAtlasTexture.destroy(),this.latestFeatureIndex=null,this.state="unloaded"}getBucket(R){return this.buckets[R.id]}upload(R){for(let we in this.buckets){let Se=this.buckets[we];Se.uploadPending()&&Se.upload(R)}let ae=R.gl;this.imageAtlas&&!this.imageAtlas.uploaded&&(this.imageAtlasTexture=new u(R,this.imageAtlas.image,ae.RGBA),this.imageAtlas.uploaded=!0),this.glyphAtlasImage&&(this.glyphAtlasTexture=new u(R,this.glyphAtlasImage,ae.ALPHA),this.glyphAtlasImage=null)}prepare(R){this.imageAtlas&&this.imageAtlas.patchUpdatedImages(R,this.imageAtlasTexture)}queryRenderedFeatures(R,ae,we,Se,De,ft,bt,Dt,Yt,cr){return this.latestFeatureIndex&&this.latestFeatureIndex.rawTileData?this.latestFeatureIndex.query({queryGeometry:Se,cameraQueryGeometry:De,scale:ft,tileSize:this.tileSize,pixelPosMatrix:cr,transform:Dt,params:bt,queryPadding:this.queryPadding*Yt},R,ae,we):{}}querySourceFeatures(R,ae){let we=this.latestFeatureIndex;if(!we||!we.rawTileData)return;let Se=we.loadVTLayers(),De=ae&&ae.sourceLayer?ae.sourceLayer:"",ft=Se._geojsonTileLayer||Se[De];if(!ft)return;let bt=t.a7(ae&&ae.filter),{z:Dt,x:Yt,y:cr}=this.tileID.canonical,hr={z:Dt,x:Yt,y:cr};for(let jr=0;jr<ft.length;jr++){let ea=ft.feature(jr);if(bt.needGeometry){let ot=t.a8(ea,!0);if(!bt.filter(new t.z(this.tileID.overscaledZ),ot,this.tileID.canonical))continue}else if(!bt.filter(new t.z(this.tileID.overscaledZ),ea))continue;let qe=we.getId(ea,De),Je=new t.a9(ea,Dt,Yt,cr,qe);Je.tile=hr,R.push(Je)}}hasData(){return this.state==="loaded"||this.state==="reloading"||this.state==="expired"}patternsLoaded(){return this.imageAtlas&&!!Object.keys(this.imageAtlas.patternPositions).length}setExpiryData(R){let ae=this.expirationTime;if(R.cacheControl){let we=t.aa(R.cacheControl);we["max-age"]&&(this.expirationTime=Date.now()+1e3*we["max-age"])}else R.expires&&(this.expirationTime=new Date(R.expires).getTime());if(this.expirationTime){let we=Date.now(),Se=!1;if(this.expirationTime>we)Se=!1;else if(ae)if(this.expirationTime<ae)Se=!0;else{let De=this.expirationTime-ae;De?this.expirationTime=we+Math.max(De,3e4):Se=!0}else Se=!0;Se?(this.expiredRequestCount++,this.state="expired"):this.expiredRequestCount=0}}getExpiryTimeout(){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)}setFeatureState(R,ae){if(!this.latestFeatureIndex||!this.latestFeatureIndex.rawTileData||Object.keys(R).length===0)return;let we=this.latestFeatureIndex.loadVTLayers();for(let Se in this.buckets){if(!ae.style.hasLayer(Se))continue;let De=this.buckets[Se],ft=De.layers[0].sourceLayer||"_geojsonTileLayer",bt=we[ft],Dt=R[ft];if(!bt||!Dt||Object.keys(Dt).length===0)continue;De.update(Dt,bt,this.imageAtlas&&this.imageAtlas.patternPositions||{});let Yt=ae&&ae.style&&ae.style.getLayer(Se);Yt&&(this.queryPadding=Math.max(this.queryPadding,Yt.queryRadius(De)))}}holdingForFade(){return this.symbolFadeHoldUntil!==void 0}symbolFadeFinished(){return!this.symbolFadeHoldUntil||this.symbolFadeHoldUntil<i.now()}clearFadeHold(){this.symbolFadeHoldUntil=void 0}setHoldDuration(R){this.symbolFadeHoldUntil=i.now()+R}setDependencies(R,ae){let we={};for(let Se of ae)we[Se]=!0;this.dependencies[R]=we}hasDependency(R,ae){for(let we of R){let Se=this.dependencies[we];if(Se){for(let De of ae)if(Se[De])return!0}}return!1}}class Qe{constructor(R,ae){this.max=R,this.onRemove=ae,this.reset()}reset(){for(let R in this.data)for(let ae of this.data[R])ae.timeout&&clearTimeout(ae.timeout),this.onRemove(ae.value);return this.data={},this.order=[],this}add(R,ae,we){let Se=R.wrapped().key;this.data[Se]===void 0&&(this.data[Se]=[]);let De={value:ae,timeout:void 0};if(we!==void 0&&(De.timeout=setTimeout(()=>{this.remove(R,De)},we)),this.data[Se].push(De),this.order.push(Se),this.order.length>this.max){let ft=this._getAndRemoveByKey(this.order[0]);ft&&this.onRemove(ft)}return this}has(R){return R.wrapped().key in this.data}getAndRemove(R){return this.has(R)?this._getAndRemoveByKey(R.wrapped().key):null}_getAndRemoveByKey(R){let ae=this.data[R].shift();return ae.timeout&&clearTimeout(ae.timeout),this.data[R].length===0&&delete this.data[R],this.order.splice(this.order.indexOf(R),1),ae.value}getByKey(R){let ae=this.data[R];return ae?ae[0].value:null}get(R){return this.has(R)?this.data[R.wrapped().key][0].value:null}remove(R,ae){if(!this.has(R))return this;let we=R.wrapped().key,Se=ae===void 0?0:this.data[we].indexOf(ae),De=this.data[we][Se];return this.data[we].splice(Se,1),De.timeout&&clearTimeout(De.timeout),this.data[we].length===0&&delete this.data[we],this.onRemove(De.value),this.order.splice(this.order.indexOf(we),1),this}setMaxSize(R){for(this.max=R;this.order.length>this.max;){let ae=this._getAndRemoveByKey(this.order[0]);ae&&this.onRemove(ae)}return this}filter(R){let ae=[];for(let we in this.data)for(let Se of this.data[we])R(Se.value)||ae.push(Se);for(let we of ae)this.remove(we.value.tileID,we)}}class Ct{constructor(){this.state={},this.stateChanges={},this.deletedStates={}}updateState(R,ae,we){let Se=String(ae);if(this.stateChanges[R]=this.stateChanges[R]||{},this.stateChanges[R][Se]=this.stateChanges[R][Se]||{},t.e(this.stateChanges[R][Se],we),this.deletedStates[R]===null){this.deletedStates[R]={};for(let De in this.state[R])De!==Se&&(this.deletedStates[R][De]=null)}else if(this.deletedStates[R]&&this.deletedStates[R][Se]===null){this.deletedStates[R][Se]={};for(let De in this.state[R][Se])we[De]||(this.deletedStates[R][Se][De]=null)}else for(let De in we)this.deletedStates[R]&&this.deletedStates[R][Se]&&this.deletedStates[R][Se][De]===null&&delete this.deletedStates[R][Se][De]}removeFeatureState(R,ae,we){if(this.deletedStates[R]===null)return;let Se=String(ae);if(this.deletedStates[R]=this.deletedStates[R]||{},we&&ae!==void 0)this.deletedStates[R][Se]!==null&&(this.deletedStates[R][Se]=this.deletedStates[R][Se]||{},this.deletedStates[R][Se][we]=null);else if(ae!==void 0)if(this.stateChanges[R]&&this.stateChanges[R][Se])for(we in this.deletedStates[R][Se]={},this.stateChanges[R][Se])this.deletedStates[R][Se][we]=null;else this.deletedStates[R][Se]=null;else this.deletedStates[R]=null}getState(R,ae){let we=String(ae),Se=t.e({},(this.state[R]||{})[we],(this.stateChanges[R]||{})[we]);if(this.deletedStates[R]===null)return{};if(this.deletedStates[R]){let De=this.deletedStates[R][ae];if(De===null)return{};for(let ft in De)delete Se[ft]}return Se}initializeTileState(R,ae){R.setFeatureState(this.state,ae)}coalesceChanges(R,ae){let we={};for(let Se in this.stateChanges){this.state[Se]=this.state[Se]||{};let De={};for(let ft in this.stateChanges[Se])this.state[Se][ft]||(this.state[Se][ft]={}),t.e(this.state[Se][ft],this.stateChanges[Se][ft]),De[ft]=this.state[Se][ft];we[Se]=De}for(let Se in this.deletedStates){this.state[Se]=this.state[Se]||{};let De={};if(this.deletedStates[Se]===null)for(let ft in this.state[Se])De[ft]={},this.state[Se][ft]={};else for(let ft in this.deletedStates[Se]){if(this.deletedStates[Se][ft]===null)this.state[Se][ft]={};else for(let bt of Object.keys(this.deletedStates[Se][ft]))delete this.state[Se][ft][bt];De[ft]=this.state[Se][ft]}we[Se]=we[Se]||{},t.e(we[Se],De)}if(this.stateChanges={},this.deletedStates={},Object.keys(we).length!==0)for(let Se in R)R[Se].setFeatureState(we,ae)}}class St extends t.E{constructor(R,ae,we){super(),this.id=R,this.dispatcher=we,this.on("data",Se=>this._dataHandler(Se)),this.on("dataloading",()=>{this._sourceErrored=!1}),this.on("error",()=>{this._sourceErrored=this._source.loaded()}),this._source=((Se,De,ft,bt)=>{let Dt=new(Me(De.type))(Se,De,ft,bt);if(Dt.id!==Se)throw new Error(`Expected Source id to be ${Se} instead of ${Dt.id}`);return Dt})(R,ae,we,this),this._tiles={},this._cache=new Qe(0,Se=>this._unloadTile(Se)),this._timers={},this._cacheTimers={},this._maxTileCacheSize=null,this._maxTileCacheZoomLevels=null,this._loadedParentTiles={},this._coveredTiles={},this._state=new Ct,this._didEmitContent=!1,this._updated=!1}onAdd(R){this.map=R,this._maxTileCacheSize=R?R._maxTileCacheSize:null,this._maxTileCacheZoomLevels=R?R._maxTileCacheZoomLevels:null,this._source&&this._source.onAdd&&this._source.onAdd(R)}onRemove(R){this.clearTiles(),this._source&&this._source.onRemove&&this._source.onRemove(R)}loaded(){if(this._sourceErrored)return!0;if(!this._sourceLoaded||!this._source.loaded())return!1;if(!(this.used===void 0&&this.usedForTerrain===void 0||this.used||this.usedForTerrain))return!0;if(!this._updated)return!1;for(let R in this._tiles){let ae=this._tiles[R];if(ae.state!=="loaded"&&ae.state!=="errored")return!1}return!0}getSource(){return this._source}pause(){this._paused=!0}resume(){if(!this._paused)return;let R=this._shouldReloadOnResume;this._paused=!1,this._shouldReloadOnResume=!1,R&&this.reload(),this.transform&&this.update(this.transform,this.terrain)}_loadTile(R,ae,we){return t._(this,void 0,void 0,function*(){try{yield this._source.loadTile(R),this._tileLoaded(R,ae,we)}catch(Se){R.state="errored",Se.status!==404?this._source.fire(new t.j(Se,{tile:R})):this.update(this.transform,this.terrain)}})}_unloadTile(R){this._source.unloadTile&&this._source.unloadTile(R)}_abortTile(R){this._source.abortTile&&this._source.abortTile(R),this._source.fire(new t.k("dataabort",{tile:R,coord:R.tileID,dataType:"source"}))}serialize(){return this._source.serialize()}prepare(R){this._source.prepare&&this._source.prepare(),this._state.coalesceChanges(this._tiles,this.map?this.map.painter:null);for(let ae in this._tiles){let we=this._tiles[ae];we.upload(R),we.prepare(this.map.style.imageManager)}}getIds(){return Object.values(this._tiles).map(R=>R.tileID).sort(Ot).map(R=>R.key)}getRenderableIds(R){let ae=[];for(let we in this._tiles)this._isIdRenderable(we,R)&&ae.push(this._tiles[we]);return R?ae.sort((we,Se)=>{let De=we.tileID,ft=Se.tileID,bt=new t.P(De.canonical.x,De.canonical.y)._rotate(this.transform.angle),Dt=new t.P(ft.canonical.x,ft.canonical.y)._rotate(this.transform.angle);return De.overscaledZ-ft.overscaledZ||Dt.y-bt.y||Dt.x-bt.x}).map(we=>we.tileID.key):ae.map(we=>we.tileID).sort(Ot).map(we=>we.key)}hasRenderableParent(R){let ae=this.findLoadedParent(R,0);return!!ae&&this._isIdRenderable(ae.tileID.key)}_isIdRenderable(R,ae){return this._tiles[R]&&this._tiles[R].hasData()&&!this._coveredTiles[R]&&(ae||!this._tiles[R].holdingForFade())}reload(){if(this._paused)this._shouldReloadOnResume=!0;else{this._cache.reset();for(let R in this._tiles)this._tiles[R].state!=="errored"&&this._reloadTile(R,"reloading")}}_reloadTile(R,ae){return t._(this,void 0,void 0,function*(){let we=this._tiles[R];we&&(we.state!=="loading"&&(we.state=ae),yield this._loadTile(we,R,ae))})}_tileLoaded(R,ae,we){R.timeAdded=i.now(),we==="expired"&&(R.refreshedUponExpiration=!0),this._setTileReloadTimer(ae,R),this.getSource().type==="raster-dem"&&R.dem&&this._backfillDEM(R),this._state.initializeTileState(R,this.map?this.map.painter:null),R.aborted||this._source.fire(new t.k("data",{dataType:"source",tile:R,coord:R.tileID}))}_backfillDEM(R){let ae=this.getRenderableIds();for(let Se=0;Se<ae.length;Se++){let De=ae[Se];if(R.neighboringTiles&&R.neighboringTiles[De]){let ft=this.getTileByID(De);we(R,ft),we(ft,R)}}function we(Se,De){Se.needsHillshadePrepare=!0,Se.needsTerrainPrepare=!0;let ft=De.tileID.canonical.x-Se.tileID.canonical.x,bt=De.tileID.canonical.y-Se.tileID.canonical.y,Dt=Math.pow(2,Se.tileID.canonical.z),Yt=De.tileID.key;ft===0&&bt===0||Math.abs(bt)>1||(Math.abs(ft)>1&&(Math.abs(ft+Dt)===1?ft+=Dt:Math.abs(ft-Dt)===1&&(ft-=Dt)),De.dem&&Se.dem&&(Se.dem.backfillBorder(De.dem,ft,bt),Se.neighboringTiles&&Se.neighboringTiles[Yt]&&(Se.neighboringTiles[Yt].backfilled=!0)))}}getTile(R){return this.getTileByID(R.key)}getTileByID(R){return this._tiles[R]}_retainLoadedChildren(R,ae,we,Se){for(let De in this._tiles){let ft=this._tiles[De];if(Se[De]||!ft.hasData()||ft.tileID.overscaledZ<=ae||ft.tileID.overscaledZ>we)continue;let bt=ft.tileID;for(;ft&&ft.tileID.overscaledZ>ae+1;){let Yt=ft.tileID.scaledTo(ft.tileID.overscaledZ-1);ft=this._tiles[Yt.key],ft&&ft.hasData()&&(bt=Yt)}let Dt=bt;for(;Dt.overscaledZ>ae;)if(Dt=Dt.scaledTo(Dt.overscaledZ-1),R[Dt.key]){Se[bt.key]=bt;break}}}findLoadedParent(R,ae){if(R.key in this._loadedParentTiles){let we=this._loadedParentTiles[R.key];return we&&we.tileID.overscaledZ>=ae?we:null}for(let we=R.overscaledZ-1;we>=ae;we--){let Se=R.scaledTo(we),De=this._getLoadedTile(Se);if(De)return De}}findLoadedSibling(R){return this._getLoadedTile(R)}_getLoadedTile(R){let ae=this._tiles[R.key];return ae&&ae.hasData()?ae:this._cache.getByKey(R.wrapped().key)}updateCacheSize(R){let ae=Math.ceil(R.width/this._source.tileSize)+1,we=Math.ceil(R.height/this._source.tileSize)+1,Se=Math.floor(ae*we*(this._maxTileCacheZoomLevels===null?t.a.MAX_TILE_CACHE_ZOOM_LEVELS:this._maxTileCacheZoomLevels)),De=typeof this._maxTileCacheSize=="number"?Math.min(this._maxTileCacheSize,Se):Se;this._cache.setMaxSize(De)}handleWrapJump(R){let ae=Math.round((R-(this._prevLng===void 0?R:this._prevLng))/360);if(this._prevLng=R,ae){let we={};for(let Se in this._tiles){let De=this._tiles[Se];De.tileID=De.tileID.unwrapTo(De.tileID.wrap+ae),we[De.tileID.key]=De}this._tiles=we;for(let Se in this._timers)clearTimeout(this._timers[Se]),delete this._timers[Se];for(let Se in this._tiles)this._setTileReloadTimer(Se,this._tiles[Se])}}_updateCoveredAndRetainedTiles(R,ae,we,Se,De,ft){let bt={},Dt={},Yt=Object.keys(R),cr=i.now();for(let hr of Yt){let jr=R[hr],ea=this._tiles[hr];if(!ea||ea.fadeEndTime!==0&&ea.fadeEndTime<=cr)continue;let qe=this.findLoadedParent(jr,ae),Je=this.findLoadedSibling(jr),ot=qe||Je||null;ot&&(this._addTile(ot.tileID),bt[ot.tileID.key]=ot.tileID),Dt[hr]=jr}this._retainLoadedChildren(Dt,Se,we,R);for(let hr in bt)R[hr]||(this._coveredTiles[hr]=!0,R[hr]=bt[hr]);if(ft){let hr={},jr={};for(let ea of De)this._tiles[ea.key].hasData()?hr[ea.key]=ea:jr[ea.key]=ea;for(let ea in jr){let qe=jr[ea].children(this._source.maxzoom);this._tiles[qe[0].key]&&this._tiles[qe[1].key]&&this._tiles[qe[2].key]&&this._tiles[qe[3].key]&&(hr[qe[0].key]=R[qe[0].key]=qe[0],hr[qe[1].key]=R[qe[1].key]=qe[1],hr[qe[2].key]=R[qe[2].key]=qe[2],hr[qe[3].key]=R[qe[3].key]=qe[3],delete jr[ea])}for(let ea in jr){let qe=jr[ea],Je=this.findLoadedParent(qe,this._source.minzoom),ot=this.findLoadedSibling(qe),ht=Je||ot||null;if(ht){hr[ht.tileID.key]=R[ht.tileID.key]=ht.tileID;for(let At in hr)hr[At].isChildOf(ht.tileID)&&delete hr[At]}}for(let ea in this._tiles)hr[ea]||(this._coveredTiles[ea]=!0)}}update(R,ae){if(!this._sourceLoaded||this._paused)return;let we;this.transform=R,this.terrain=ae,this.updateCacheSize(R),this.handleWrapJump(this.transform.center.lng),this._coveredTiles={},this.used||this.usedForTerrain?this._source.tileID?we=R.getVisibleUnwrappedCoordinates(this._source.tileID).map(cr=>new t.S(cr.canonical.z,cr.wrap,cr.canonical.z,cr.canonical.x,cr.canonical.y)):(we=R.coveringTiles({tileSize:this.usedForTerrain?this.tileSize:this._source.tileSize,minzoom:this._source.minzoom,maxzoom:this._source.maxzoom,roundZoom:!this.usedForTerrain&&this._source.roundZoom,reparseOverscaled:this._source.reparseOverscaled,terrain:ae}),this._source.hasTile&&(we=we.filter(cr=>this._source.hasTile(cr)))):we=[];let Se=R.coveringZoomLevel(this._source),De=Math.max(Se-St.maxOverzooming,this._source.minzoom),ft=Math.max(Se+St.maxUnderzooming,this._source.minzoom);if(this.usedForTerrain){let cr={};for(let hr of we)if(hr.canonical.z>this._source.minzoom){let jr=hr.scaledTo(hr.canonical.z-1);cr[jr.key]=jr;let ea=hr.scaledTo(Math.max(this._source.minzoom,Math.min(hr.canonical.z,5)));cr[ea.key]=ea}we=we.concat(Object.values(cr))}let bt=we.length===0&&!this._updated&&this._didEmitContent;this._updated=!0,bt&&this.fire(new t.k("data",{sourceDataType:"idle",dataType:"source",sourceId:this.id}));let Dt=this._updateRetainedTiles(we,Se);jt(this._source.type)&&this._updateCoveredAndRetainedTiles(Dt,De,ft,Se,we,ae);for(let cr in Dt)this._tiles[cr].clearFadeHold();let Yt=t.ab(this._tiles,Dt);for(let cr of Yt){let hr=this._tiles[cr];hr.hasSymbolBuckets&&!hr.holdingForFade()?hr.setHoldDuration(this.map._fadeDuration):hr.hasSymbolBuckets&&!hr.symbolFadeFinished()||this._removeTile(cr)}this._updateLoadedParentTileCache(),this._updateLoadedSiblingTileCache()}releaseSymbolFadeTiles(){for(let R in this._tiles)this._tiles[R].holdingForFade()&&this._removeTile(R)}_updateRetainedTiles(R,ae){var we;let Se={},De={},ft=Math.max(ae-St.maxOverzooming,this._source.minzoom),bt=Math.max(ae+St.maxUnderzooming,this._source.minzoom),Dt={};for(let Yt of R){let cr=this._addTile(Yt);Se[Yt.key]=Yt,cr.hasData()||ae<this._source.maxzoom&&(Dt[Yt.key]=Yt)}this._retainLoadedChildren(Dt,ae,bt,Se);for(let Yt of R){let cr=this._tiles[Yt.key];if(cr.hasData())continue;if(ae+1>this._source.maxzoom){let jr=Yt.children(this._source.maxzoom)[0],ea=this.getTile(jr);if(ea&&ea.hasData()){Se[jr.key]=jr;continue}}else{let jr=Yt.children(this._source.maxzoom);if(Se[jr[0].key]&&Se[jr[1].key]&&Se[jr[2].key]&&Se[jr[3].key])continue}let hr=cr.wasRequested();for(let jr=Yt.overscaledZ-1;jr>=ft;--jr){let ea=Yt.scaledTo(jr);if(De[ea.key])break;if(De[ea.key]=!0,cr=this.getTile(ea),!cr&&hr&&(cr=this._addTile(ea)),cr){let qe=cr.hasData();if((qe||!(!((we=this.map)===null||we===void 0)&&we.cancelPendingTileRequestsWhileZooming)||hr)&&(Se[ea.key]=ea),hr=cr.wasRequested(),qe)break}}}return Se}_updateLoadedParentTileCache(){this._loadedParentTiles={};for(let R in this._tiles){let ae=[],we,Se=this._tiles[R].tileID;for(;Se.overscaledZ>0;){if(Se.key in this._loadedParentTiles){we=this._loadedParentTiles[Se.key];break}ae.push(Se.key);let De=Se.scaledTo(Se.overscaledZ-1);if(we=this._getLoadedTile(De),we)break;Se=De}for(let De of ae)this._loadedParentTiles[De]=we}}_updateLoadedSiblingTileCache(){this._loadedSiblingTiles={};for(let R in this._tiles){let ae=this._tiles[R].tileID,we=this._getLoadedTile(ae);this._loadedSiblingTiles[ae.key]=we}}_addTile(R){let ae=this._tiles[R.key];if(ae)return ae;ae=this._cache.getAndRemove(R),ae&&(this._setTileReloadTimer(R.key,ae),ae.tileID=R,this._state.initializeTileState(ae,this.map?this.map.painter:null),this._cacheTimers[R.key]&&(clearTimeout(this._cacheTimers[R.key]),delete this._cacheTimers[R.key],this._setTileReloadTimer(R.key,ae)));let we=ae;return ae||(ae=new nt(R,this._source.tileSize*R.overscaleFactor()),this._loadTile(ae,R.key,ae.state)),ae.uses++,this._tiles[R.key]=ae,we||this._source.fire(new t.k("dataloading",{tile:ae,coord:ae.tileID,dataType:"source"})),ae}_setTileReloadTimer(R,ae){R in this._timers&&(clearTimeout(this._timers[R]),delete this._timers[R]);let we=ae.getExpiryTimeout();we&&(this._timers[R]=setTimeout(()=>{this._reloadTile(R,"expired"),delete this._timers[R]},we))}_removeTile(R){let ae=this._tiles[R];ae&&(ae.uses--,delete this._tiles[R],this._timers[R]&&(clearTimeout(this._timers[R]),delete this._timers[R]),ae.uses>0||(ae.hasData()&&ae.state!=="reloading"?this._cache.add(ae.tileID,ae,ae.getExpiryTimeout()):(ae.aborted=!0,this._abortTile(ae),this._unloadTile(ae))))}_dataHandler(R){let ae=R.sourceDataType;R.dataType==="source"&&ae==="metadata"&&(this._sourceLoaded=!0),this._sourceLoaded&&!this._paused&&R.dataType==="source"&&ae==="content"&&(this.reload(),this.transform&&this.update(this.transform,this.terrain),this._didEmitContent=!0)}clearTiles(){this._shouldReloadOnResume=!1,this._paused=!1;for(let R in this._tiles)this._removeTile(R);this._cache.reset()}tilesIn(R,ae,we){let Se=[],De=this.transform;if(!De)return Se;let ft=we?De.getCameraQueryGeometry(R):R,bt=R.map(qe=>De.pointCoordinate(qe,this.terrain)),Dt=ft.map(qe=>De.pointCoordinate(qe,this.terrain)),Yt=this.getIds(),cr=1/0,hr=1/0,jr=-1/0,ea=-1/0;for(let qe of Dt)cr=Math.min(cr,qe.x),hr=Math.min(hr,qe.y),jr=Math.max(jr,qe.x),ea=Math.max(ea,qe.y);for(let qe=0;qe<Yt.length;qe++){let Je=this._tiles[Yt[qe]];if(Je.holdingForFade())continue;let ot=Je.tileID,ht=Math.pow(2,De.zoom-Je.tileID.overscaledZ),At=ae*Je.queryPadding*t.X/Je.tileSize/ht,_t=[ot.getTilePoint(new t.Z(cr,hr)),ot.getTilePoint(new t.Z(jr,ea))];if(_t[0].x-At<t.X&&_t[0].y-At<t.X&&_t[1].x+At>=0&&_t[1].y+At>=0){let Pt=bt.map(nr=>ot.getTilePoint(nr)),er=Dt.map(nr=>ot.getTilePoint(nr));Se.push({tile:Je,tileID:ot,queryGeometry:Pt,cameraQueryGeometry:er,scale:ht})}}return Se}getVisibleCoordinates(R){let ae=this.getRenderableIds(R).map(we=>this._tiles[we].tileID);for(let we of ae)we.posMatrix=this.transform.calculatePosMatrix(we.toUnwrapped());return ae}hasTransition(){if(this._source.hasTransition())return!0;if(jt(this._source.type)){let R=i.now();for(let ae in this._tiles)if(this._tiles[ae].fadeEndTime>=R)return!0}return!1}setFeatureState(R,ae,we){this._state.updateState(R=R||"_geojsonTileLayer",ae,we)}removeFeatureState(R,ae,we){this._state.removeFeatureState(R=R||"_geojsonTileLayer",ae,we)}getFeatureState(R,ae){return this._state.getState(R=R||"_geojsonTileLayer",ae)}setDependencies(R,ae,we){let Se=this._tiles[R];Se&&Se.setDependencies(ae,we)}reloadTilesForDependencies(R,ae){for(let we in this._tiles)this._tiles[we].hasDependency(R,ae)&&this._reloadTile(we,"reloading");this._cache.filter(we=>!we.hasDependency(R,ae))}}function Ot(Oe,R){let ae=Math.abs(2*Oe.wrap)-+(Oe.wrap<0),we=Math.abs(2*R.wrap)-+(R.wrap<0);return Oe.overscaledZ-R.overscaledZ||we-ae||R.canonical.y-Oe.canonical.y||R.canonical.x-Oe.canonical.x}function jt(Oe){return Oe==="raster"||Oe==="image"||Oe==="video"}St.maxOverzooming=10,St.maxUnderzooming=3;class ur{constructor(R,ae){this.reset(R,ae)}reset(R,ae){this.points=R||[],this._distances=[0];for(let we=1;we<this.points.length;we++)this._distances[we]=this._distances[we-1]+this.points[we].dist(this.points[we-1]);this.length=this._distances[this._distances.length-1],this.padding=Math.min(ae||0,.5*this.length),this.paddedLength=this.length-2*this.padding}lerp(R){if(this.points.length===1)return this.points[0];R=t.ac(R,0,1);let ae=1,we=this._distances[ae],Se=R*this.paddedLength+this.padding;for(;we<Se&&ae<this._distances.length;)we=this._distances[++ae];let De=ae-1,ft=this._distances[De],bt=we-ft,Dt=bt>0?(Se-ft)/bt:0;return this.points[De].mult(1-Dt).add(this.points[ae].mult(Dt))}}function ar(Oe,R){let ae=!0;return Oe==="always"||Oe!=="never"&&R!=="never"||(ae=!1),ae}class Cr{constructor(R,ae,we){let Se=this.boxCells=[],De=this.circleCells=[];this.xCellCount=Math.ceil(R/we),this.yCellCount=Math.ceil(ae/we);for(let ft=0;ft<this.xCellCount*this.yCellCount;ft++)Se.push([]),De.push([]);this.circleKeys=[],this.boxKeys=[],this.bboxes=[],this.circles=[],this.width=R,this.height=ae,this.xScale=this.xCellCount/R,this.yScale=this.yCellCount/ae,this.boxUid=0,this.circleUid=0}keysLength(){return this.boxKeys.length+this.circleKeys.length}insert(R,ae,we,Se,De){this._forEachCell(ae,we,Se,De,this._insertBoxCell,this.boxUid++),this.boxKeys.push(R),this.bboxes.push(ae),this.bboxes.push(we),this.bboxes.push(Se),this.bboxes.push(De)}insertCircle(R,ae,we,Se){this._forEachCell(ae-Se,we-Se,ae+Se,we+Se,this._insertCircleCell,this.circleUid++),this.circleKeys.push(R),this.circles.push(ae),this.circles.push(we),this.circles.push(Se)}_insertBoxCell(R,ae,we,Se,De,ft){this.boxCells[De].push(ft)}_insertCircleCell(R,ae,we,Se,De,ft){this.circleCells[De].push(ft)}_query(R,ae,we,Se,De,ft,bt){if(we<0||R>this.width||Se<0||ae>this.height)return[];let Dt=[];if(R<=0&&ae<=0&&this.width<=we&&this.height<=Se){if(De)return[{key:null,x1:R,y1:ae,x2:we,y2:Se}];for(let Yt=0;Yt<this.boxKeys.length;Yt++)Dt.push({key:this.boxKeys[Yt],x1:this.bboxes[4*Yt],y1:this.bboxes[4*Yt+1],x2:this.bboxes[4*Yt+2],y2:this.bboxes[4*Yt+3]});for(let Yt=0;Yt<this.circleKeys.length;Yt++){let cr=this.circles[3*Yt],hr=this.circles[3*Yt+1],jr=this.circles[3*Yt+2];Dt.push({key:this.circleKeys[Yt],x1:cr-jr,y1:hr-jr,x2:cr+jr,y2:hr+jr})}}else this._forEachCell(R,ae,we,Se,this._queryCell,Dt,{hitTest:De,overlapMode:ft,seenUids:{box:{},circle:{}}},bt);return Dt}query(R,ae,we,Se){return this._query(R,ae,we,Se,!1,null)}hitTest(R,ae,we,Se,De,ft){return this._query(R,ae,we,Se,!0,De,ft).length>0}hitTestCircle(R,ae,we,Se,De){let ft=R-we,bt=R+we,Dt=ae-we,Yt=ae+we;if(bt<0||ft>this.width||Yt<0||Dt>this.height)return!1;let cr=[];return this._forEachCell(ft,Dt,bt,Yt,this._queryCellCircle,cr,{hitTest:!0,overlapMode:Se,circle:{x:R,y:ae,radius:we},seenUids:{box:{},circle:{}}},De),cr.length>0}_queryCell(R,ae,we,Se,De,ft,bt,Dt){let{seenUids:Yt,hitTest:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!Yt.box[Je]){Yt.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(R<=qe[ot+2]&&ae<=qe[ot+3]&&we>=qe[ot+0]&&Se>=qe[ot+1]&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))&&(ft.push({key:ht,x1:qe[ot],y1:qe[ot+1],x2:qe[ot+2],y2:qe[ot+3]}),cr))return!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!Yt.circle[Je]){Yt.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circleAndRectCollide(qe[ot],qe[ot+1],qe[ot+2],R,ae,we,Se)&&(!Dt||Dt(ht))&&(!cr||!ar(hr,ht.overlapMode))){let At=qe[ot],_t=qe[ot+1],Pt=qe[ot+2];if(ft.push({key:ht,x1:At-Pt,y1:_t-Pt,x2:At+Pt,y2:_t+Pt}),cr)return!0}}}return!1}_queryCellCircle(R,ae,we,Se,De,ft,bt,Dt){let{circle:Yt,seenUids:cr,overlapMode:hr}=bt,jr=this.boxCells[De];if(jr!==null){let qe=this.bboxes;for(let Je of jr)if(!cr.box[Je]){cr.box[Je]=!0;let ot=4*Je,ht=this.boxKeys[Je];if(this._circleAndRectCollide(Yt.x,Yt.y,Yt.radius,qe[ot+0],qe[ot+1],qe[ot+2],qe[ot+3])&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}let ea=this.circleCells[De];if(ea!==null){let qe=this.circles;for(let Je of ea)if(!cr.circle[Je]){cr.circle[Je]=!0;let ot=3*Je,ht=this.circleKeys[Je];if(this._circlesCollide(qe[ot],qe[ot+1],qe[ot+2],Yt.x,Yt.y,Yt.radius)&&(!Dt||Dt(ht))&&!ar(hr,ht.overlapMode))return ft.push(!0),!0}}}_forEachCell(R,ae,we,Se,De,ft,bt,Dt){let Yt=this._convertToXCellCoord(R),cr=this._convertToYCellCoord(ae),hr=this._convertToXCellCoord(we),jr=this._convertToYCellCoord(Se);for(let ea=Yt;ea<=hr;ea++)for(let qe=cr;qe<=jr;qe++)if(De.call(this,R,ae,we,Se,this.xCellCount*qe+ea,ft,bt,Dt))return}_convertToXCellCoord(R){return Math.max(0,Math.min(this.xCellCount-1,Math.floor(R*this.xScale)))}_convertToYCellCoord(R){return Math.max(0,Math.min(this.yCellCount-1,Math.floor(R*this.yScale)))}_circlesCollide(R,ae,we,Se,De,ft){let bt=Se-R,Dt=De-ae,Yt=we+ft;return Yt*Yt>bt*bt+Dt*Dt}_circleAndRectCollide(R,ae,we,Se,De,ft,bt){let Dt=(ft-Se)/2,Yt=Math.abs(R-(Se+Dt));if(Yt>Dt+we)return!1;let cr=(bt-De)/2,hr=Math.abs(ae-(De+cr));if(hr>cr+we)return!1;if(Yt<=Dt||hr<=cr)return!0;let jr=Yt-Dt,ea=hr-cr;return jr*jr+ea*ea<=we*we}}function vr(Oe,R,ae,we,Se){let De=t.H();return R?(t.K(De,De,[1/Se,1/Se,1]),ae||t.ad(De,De,we.angle)):t.L(De,we.labelPlaneMatrix,Oe),De}function _r(Oe,R,ae,we,Se){if(R){let De=t.ae(Oe);return t.K(De,De,[Se,Se,1]),ae||t.ad(De,De,-we.angle),De}return we.glCoordMatrix}function yt(Oe,R,ae,we){let Se;we?(Se=[Oe,R,we(Oe,R),1],t.af(Se,Se,ae)):(Se=[Oe,R,0,1],Kt(Se,Se,ae));let De=Se[3];return{point:new t.P(Se[0]/De,Se[1]/De),signedDistanceFromCamera:De,isOccluded:!1}}function Fe(Oe,R){return .5+Oe/R*.5}function Ke(Oe,R){return Oe.x>=-R[0]&&Oe.x<=R[0]&&Oe.y>=-R[1]&&Oe.y<=R[1]}function Ne(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe){let Je=we?Oe.textSizeData:Oe.iconSizeData,ot=t.ag(Je,ae.transform.zoom),ht=[256/ae.width*2+1,256/ae.height*2+1],At=we?Oe.text.dynamicLayoutVertexArray:Oe.icon.dynamicLayoutVertexArray;At.clear();let _t=Oe.lineVertexArray,Pt=we?Oe.text.placedSymbolArray:Oe.icon.placedSymbolArray,er=ae.transform.width/ae.transform.height,nr=!1;for(let pr=0;pr<Pt.length;pr++){let Sr=Pt.get(pr);if(Sr.hidden||Sr.writingMode===t.ah.vertical&&!nr){Gt(Sr.numGlyphs,At);continue}nr=!1;let Wr=yt(Sr.anchorX,Sr.anchorY,R,qe);if(!Ke(Wr.point,ht)){Gt(Sr.numGlyphs,At);continue}let ha=Fe(ae.transform.cameraToCenterDistance,Wr.signedDistanceFromCamera),ga=t.ai(Je,ot,Sr),Pa=ft?ga/ha:ga*ha,Ja={getElevation:qe,labelPlaneMatrix:Se,lineVertexArray:_t,pitchWithMap:ft,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:Yt,tileAnchorPoint:new t.P(Sr.anchorX,Sr.anchorY),unwrappedTileID:cr,width:hr,height:jr,translation:ea},di=ke(Ja,Sr,Pa,!1,bt,R,De,Oe.glyphOffsetArray,At,er,Dt);nr=di.useVertical,(di.notEnoughRoom||nr||di.needsFlipping&&ke(Ja,Sr,Pa,!0,bt,R,De,Oe.glyphOffsetArray,At,er,Dt).notEnoughRoom)&&Gt(Sr.numGlyphs,At)}we?Oe.text.dynamicLayoutVertexBuffer.updateData(At):Oe.icon.dynamicLayoutVertexBuffer.updateData(At)}function Ee(Oe,R,ae,we,Se,De,ft,bt){let Dt=De.glyphStartIndex+De.numGlyphs,Yt=De.lineStartIndex,cr=De.lineStartIndex+De.lineLength,hr=R.getoffsetX(De.glyphStartIndex),jr=R.getoffsetX(Dt-1),ea=It(Oe*hr,ae,we,Se,De.segment,Yt,cr,bt,ft);if(!ea)return null;let qe=It(Oe*jr,ae,we,Se,De.segment,Yt,cr,bt,ft);return qe?bt.projectionCache.anyProjectionOccluded?null:{first:ea,last:qe}:null}function Ve(Oe,R,ae,we){return Oe===t.ah.horizontal&&Math.abs(ae.y-R.y)>Math.abs(ae.x-R.x)*we?{useVertical:!0}:(Oe===t.ah.vertical?R.y<ae.y:R.x>ae.x)?{needsFlipping:!0}:null}function ke(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr){let hr=ae/24,jr=R.lineOffsetX*hr,ea=R.lineOffsetY*hr,qe;if(R.numGlyphs>1){let Je=R.glyphStartIndex+R.numGlyphs,ot=R.lineStartIndex,ht=R.lineStartIndex+R.lineLength,At=Ee(hr,bt,jr,ea,we,R,cr,Oe);if(!At)return{notEnoughRoom:!0};let _t=yt(At.first.point.x,At.first.point.y,ft,Oe.getElevation).point,Pt=yt(At.last.point.x,At.last.point.y,ft,Oe.getElevation).point;if(Se&&!we){let er=Ve(R.writingMode,_t,Pt,Yt);if(er)return er}qe=[At.first];for(let er=R.glyphStartIndex+1;er<Je-1;er++)qe.push(It(hr*bt.getoffsetX(er),jr,ea,we,R.segment,ot,ht,Oe,cr));qe.push(At.last)}else{if(Se&&!we){let ot=yt(Oe.tileAnchorPoint.x,Oe.tileAnchorPoint.y,De,Oe.getElevation).point,ht=R.lineStartIndex+R.segment+1,At=new t.P(Oe.lineVertexArray.getx(ht),Oe.lineVertexArray.gety(ht)),_t=yt(At.x,At.y,De,Oe.getElevation),Pt=_t.signedDistanceFromCamera>0?_t.point:function(nr,pr,Sr,Wr,ha,ga){return Te(nr,pr,Sr,1,ha,ga)}(Oe.tileAnchorPoint,At,ot,0,De,Oe),er=Ve(R.writingMode,ot,Pt,Yt);if(er)return er}let Je=It(hr*bt.getoffsetX(R.glyphStartIndex),jr,ea,we,R.segment,R.lineStartIndex,R.lineStartIndex+R.lineLength,Oe,cr);if(!Je||Oe.projectionCache.anyProjectionOccluded)return{notEnoughRoom:!0};qe=[Je]}for(let Je of qe)t.aj(Dt,Je.point,Je.angle);return{}}function Te(Oe,R,ae,we,Se,De){let ft=Oe.add(Oe.sub(R)._unit()),bt=Se!==void 0?yt(ft.x,ft.y,Se,De.getElevation).point:rt(ft.x,ft.y,De).point,Dt=ae.sub(bt);return ae.add(Dt._mult(we/Dt.mag()))}function Le(Oe,R,ae){let we=R.projectionCache;if(we.projections[Oe])return we.projections[Oe];let Se=new t.P(R.lineVertexArray.getx(Oe),R.lineVertexArray.gety(Oe)),De=rt(Se.x,Se.y,R);if(De.signedDistanceFromCamera>0)return we.projections[Oe]=De.point,we.anyProjectionOccluded=we.anyProjectionOccluded||De.isOccluded,De.point;let ft=Oe-ae.direction;return function(bt,Dt,Yt,cr,hr){return Te(bt,Dt,Yt,cr,void 0,hr)}(ae.distanceFromAnchor===0?R.tileAnchorPoint:new t.P(R.lineVertexArray.getx(ft),R.lineVertexArray.gety(ft)),Se,ae.previousVertex,ae.absOffsetX-ae.distanceFromAnchor+1,R)}function rt(Oe,R,ae){let we=Oe+ae.translation[0],Se=R+ae.translation[1],De;return!ae.pitchWithMap&&ae.projection.useSpecialProjectionForSymbols?(De=ae.projection.projectTileCoordinates(we,Se,ae.unwrappedTileID,ae.getElevation),De.point.x=(.5*De.point.x+.5)*ae.width,De.point.y=(.5*-De.point.y+.5)*ae.height):(De=yt(we,Se,ae.labelPlaneMatrix,ae.getElevation),De.isOccluded=!1),De}function dt(Oe,R,ae){return Oe._unit()._perp()._mult(R*ae)}function xt(Oe,R,ae,we,Se,De,ft,bt,Dt){if(bt.projectionCache.offsets[Oe])return bt.projectionCache.offsets[Oe];let Yt=ae.add(R);if(Oe+Dt.direction<we||Oe+Dt.direction>=Se)return bt.projectionCache.offsets[Oe]=Yt,Yt;let cr=Le(Oe+Dt.direction,bt,Dt),hr=dt(cr.sub(ae),ft,Dt.direction),jr=ae.add(hr),ea=cr.add(hr);return bt.projectionCache.offsets[Oe]=t.ak(De,Yt,jr,ea)||Yt,bt.projectionCache.offsets[Oe]}function It(Oe,R,ae,we,Se,De,ft,bt,Dt){let Yt=we?Oe-R:Oe+R,cr=Yt>0?1:-1,hr=0;we&&(cr*=-1,hr=Math.PI),cr<0&&(hr+=Math.PI);let jr,ea=cr>0?De+Se:De+Se+1;bt.projectionCache.cachedAnchorPoint?jr=bt.projectionCache.cachedAnchorPoint:(jr=rt(bt.tileAnchorPoint.x,bt.tileAnchorPoint.y,bt).point,bt.projectionCache.cachedAnchorPoint=jr);let qe,Je,ot=jr,ht=jr,At=0,_t=0,Pt=Math.abs(Yt),er=[],nr;for(;At+_t<=Pt;){if(ea+=cr,ea<De||ea>=ft)return null;At+=_t,ht=ot,Je=qe;let Wr={absOffsetX:Pt,direction:cr,distanceFromAnchor:At,previousVertex:ht};if(ot=Le(ea,bt,Wr),ae===0)er.push(ht),nr=ot.sub(ht);else{let ha,ga=ot.sub(ht);ha=ga.mag()===0?dt(Le(ea+cr,bt,Wr).sub(ot),ae,cr):dt(ga,ae,cr),Je||(Je=ht.add(ha)),qe=xt(ea,ha,ot,De,ft,Je,ae,bt,Wr),er.push(Je),nr=qe.sub(Je)}_t=nr.mag()}let pr=nr._mult((Pt-At)/_t)._add(Je||ht),Sr=hr+Math.atan2(ot.y-ht.y,ot.x-ht.x);return er.push(pr),{point:pr,angle:Dt?Sr:0,path:er}}let Bt=new Float32Array([-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0,-1/0,-1/0,0]);function Gt(Oe,R){for(let ae=0;ae<Oe;ae++){let we=R.length;R.resize(we+4),R.float32.set(Bt,3*we)}}function Kt(Oe,R,ae){let we=R[0],Se=R[1];return Oe[0]=ae[0]*we+ae[4]*Se+ae[12],Oe[1]=ae[1]*we+ae[5]*Se+ae[13],Oe[3]=ae[3]*we+ae[7]*Se+ae[15],Oe}let sr=100;class sa{constructor(R,ae,we=new Cr(R.width+200,R.height+200,25),Se=new Cr(R.width+200,R.height+200,25)){this.transform=R,this.mapProjection=ae,this.grid=we,this.ignoredGrid=Se,this.pitchFactor=Math.cos(R._pitch)*R.cameraToCenterDistance,this.screenRightBoundary=R.width+sr,this.screenBottomBoundary=R.height+sr,this.gridRightBoundary=R.width+200,this.gridBottomBoundary=R.height+200,this.perspectiveRatioCutoff=.6}placeCollisionBox(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr){let jr=R.anchorPointX+Dt[0],ea=R.anchorPointY+Dt[1],qe=this.projectAndGetPerspectiveRatio(Se,jr,ea,De,cr),Je=we*qe.perspectiveRatio,ot;if(ft||bt)ot=this._projectCollisionBox(R,Je,Se,De,ft,bt,Dt,qe,cr,hr);else{let er=qe.point.x+(hr?hr.x*Je:0),nr=qe.point.y+(hr?hr.y*Je:0);ot={allPointsOccluded:!1,box:[er+R.x1*Je,nr+R.y1*Je,er+R.x2*Je,nr+R.y2*Je]}}let[ht,At,_t,Pt]=ot.box;return this.mapProjection.useSpecialProjectionForSymbols&&(ft?ot.allPointsOccluded:this.mapProjection.isOccluded(jr,ea,De))||qe.perspectiveRatio<this.perspectiveRatioCutoff||!this.isInsideGrid(ht,At,_t,Pt)||ae!=="always"&&this.grid.hitTest(ht,At,_t,Pt,ae,Yt)?{box:[ht,At,_t,Pt],placeable:!1,offscreen:!1}:{box:[ht,At,_t,Pt],placeable:!0,offscreen:this.isOffscreen(ht,At,_t,Pt)}}placeCollisionCircles(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot){let ht=[],At=new t.P(ae.anchorX,ae.anchorY),_t=this.getPerspectiveRatio(ft,At.x,At.y,bt,ot),Pt=(hr?De/_t:De*_t)/t.ap,er={getElevation:ot,labelPlaneMatrix:Dt,lineVertexArray:we,pitchWithMap:hr,projectionCache:{projections:{},offsets:{},cachedAnchorPoint:void 0,anyProjectionOccluded:!1},projection:this.mapProjection,tileAnchorPoint:At,unwrappedTileID:bt,width:this.transform.width,height:this.transform.height,translation:Je},nr=Ee(Pt,Se,ae.lineOffsetX*Pt,ae.lineOffsetY*Pt,!1,ae,!1,er),pr=!1,Sr=!1,Wr=!0;if(nr){let ha=.5*ea*_t+qe,ga=new t.P(-100,-100),Pa=new t.P(this.screenRightBoundary,this.screenBottomBoundary),Ja=new ur,di=nr.first,pi=nr.last,Ci=[];for(let Sn=di.path.length-1;Sn>=1;Sn--)Ci.push(di.path[Sn]);for(let Sn=1;Sn<pi.path.length;Sn++)Ci.push(pi.path[Sn]);let $i=2.5*ha;if(Yt){let Sn=this.projectPathToScreenSpace(Ci,er,Yt);Ci=Sn.some(ho=>ho.signedDistanceFromCamera<=0)?[]:Sn.map(ho=>ho.point)}let Bn=[];if(Ci.length>0){let Sn=Ci[0].clone(),ho=Ci[0].clone();for(let ts=1;ts<Ci.length;ts++)Sn.x=Math.min(Sn.x,Ci[ts].x),Sn.y=Math.min(Sn.y,Ci[ts].y),ho.x=Math.max(ho.x,Ci[ts].x),ho.y=Math.max(ho.y,Ci[ts].y);Bn=Sn.x>=ga.x&&ho.x<=Pa.x&&Sn.y>=ga.y&&ho.y<=Pa.y?[Ci]:ho.x<ga.x||Sn.x>Pa.x||ho.y<ga.y||Sn.y>Pa.y?[]:t.al([Ci],ga.x,ga.y,Pa.x,Pa.y)}for(let Sn of Bn){Ja.reset(Sn,.25*ha);let ho=0;ho=Ja.length<=.5*ha?1:Math.ceil(Ja.paddedLength/$i)+1;for(let ts=0;ts<ho;ts++){let yo=ts/Math.max(ho-1,1),Vo=Ja.lerp(yo),ls=Vo.x+sr,rl=Vo.y+sr;ht.push(ls,rl,ha,0);let Ys=ls-ha,Zo=rl-ha,Go=ls+ha,Rl=rl+ha;if(Wr=Wr&&this.isOffscreen(Ys,Zo,Go,Rl),Sr=Sr||this.isInsideGrid(Ys,Zo,Go,Rl),R!=="always"&&this.grid.hitTestCircle(ls,rl,ha,R,jr)&&(pr=!0,!cr))return{circles:[],offscreen:!1,collisionDetected:pr}}}}return{circles:!cr&&pr||!Sr||_t<this.perspectiveRatioCutoff?[]:ht,offscreen:Wr,collisionDetected:pr}}projectPathToScreenSpace(R,ae,we){return R.map(Se=>yt(Se.x,Se.y,we,ae.getElevation))}queryRenderedSymbols(R){if(R.length===0||this.grid.keysLength()===0&&this.ignoredGrid.keysLength()===0)return{};let ae=[],we=1/0,Se=1/0,De=-1/0,ft=-1/0;for(let cr of R){let hr=new t.P(cr.x+sr,cr.y+sr);we=Math.min(we,hr.x),Se=Math.min(Se,hr.y),De=Math.max(De,hr.x),ft=Math.max(ft,hr.y),ae.push(hr)}let bt=this.grid.query(we,Se,De,ft).concat(this.ignoredGrid.query(we,Se,De,ft)),Dt={},Yt={};for(let cr of bt){let hr=cr.key;if(Dt[hr.bucketInstanceId]===void 0&&(Dt[hr.bucketInstanceId]={}),Dt[hr.bucketInstanceId][hr.featureIndex])continue;let jr=[new t.P(cr.x1,cr.y1),new t.P(cr.x2,cr.y1),new t.P(cr.x2,cr.y2),new t.P(cr.x1,cr.y2)];t.am(ae,jr)&&(Dt[hr.bucketInstanceId][hr.featureIndex]=!0,Yt[hr.bucketInstanceId]===void 0&&(Yt[hr.bucketInstanceId]=[]),Yt[hr.bucketInstanceId].push(hr.featureIndex))}return Yt}insertCollisionBox(R,ae,we,Se,De,ft){(we?this.ignoredGrid:this.grid).insert({bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae},R[0],R[1],R[2],R[3])}insertCollisionCircles(R,ae,we,Se,De,ft){let bt=we?this.ignoredGrid:this.grid,Dt={bucketInstanceId:Se,featureIndex:De,collisionGroupID:ft,overlapMode:ae};for(let Yt=0;Yt<R.length;Yt+=4)bt.insertCircle(Dt,R[Yt],R[Yt+1],R[Yt+2])}projectAndGetPerspectiveRatio(R,ae,we,Se,De){let ft;De?(ft=[ae,we,De(ae,we),1],t.af(ft,ft,R)):(ft=[ae,we,0,1],Kt(ft,ft,R));let bt=ft[3];return{point:new t.P((ft[0]/bt+1)/2*this.transform.width+sr,(-ft[1]/bt+1)/2*this.transform.height+sr),perspectiveRatio:.5+this.transform.cameraToCenterDistance/bt*.5,isOccluded:!1,signedDistanceFromCamera:bt}}getPerspectiveRatio(R,ae,we,Se,De){let ft=this.mapProjection.useSpecialProjectionForSymbols?this.mapProjection.projectTileCoordinates(ae,we,Se,De):yt(ae,we,R,De);return .5+this.transform.cameraToCenterDistance/ft.signedDistanceFromCamera*.5}isOffscreen(R,ae,we,Se){return we<sr||R>=this.screenRightBoundary||Se<sr||ae>this.screenBottomBoundary}isInsideGrid(R,ae,we,Se){return we>=0&&R<this.gridRightBoundary&&Se>=0&&ae<this.gridBottomBoundary}getViewportMatrix(){let R=t.an([]);return t.J(R,R,[-100,-100,0]),R}_projectCollisionBox(R,ae,we,Se,De,ft,bt,Dt,Yt,cr){let hr=new t.P(1,0),jr=new t.P(0,1),ea=new t.P(R.anchorPointX+bt[0],R.anchorPointY+bt[1]);if(ft&&!De){let Wr=this.projectAndGetPerspectiveRatio(we,ea.x+1,ea.y,Se,Yt).point.sub(Dt.point).unit(),ha=Math.atan(Wr.y/Wr.x)+(Wr.x<0?Math.PI:0),ga=Math.sin(ha),Pa=Math.cos(ha);hr=new t.P(Pa,ga),jr=new t.P(-ga,Pa)}else if(!ft&&De){let Wr=-this.transform.angle,ha=Math.sin(Wr),ga=Math.cos(Wr);hr=new t.P(ga,ha),jr=new t.P(-ha,ga)}let qe=Dt.point,Je=ae;if(De){qe=ea;let Wr=this.transform.zoom-Math.floor(this.transform.zoom);Je=Math.pow(2,-Wr),Je*=this.mapProjection.getPitchedTextCorrection(this.transform,ea,Se),cr||(Je*=t.ac(.5+Dt.signedDistanceFromCamera/this.transform.cameraToCenterDistance*.5,0,4))}cr&&(qe=qe.add(hr.mult(cr.x*Je)).add(jr.mult(cr.y*Je)));let ot=R.x1*Je,ht=R.x2*Je,At=(ot+ht)/2,_t=R.y1*Je,Pt=R.y2*Je,er=(_t+Pt)/2,nr=[{offsetX:ot,offsetY:_t},{offsetX:At,offsetY:_t},{offsetX:ht,offsetY:_t},{offsetX:ht,offsetY:er},{offsetX:ht,offsetY:Pt},{offsetX:At,offsetY:Pt},{offsetX:ot,offsetY:Pt},{offsetX:ot,offsetY:er}],pr=[];for(let{offsetX:Wr,offsetY:ha}of nr)pr.push(new t.P(qe.x+hr.x*Wr+jr.x*ha,qe.y+hr.y*Wr+jr.y*ha));let Sr=!1;if(De){let Wr=pr.map(ha=>this.projectAndGetPerspectiveRatio(we,ha.x,ha.y,Se,Yt));Sr=Wr.some(ha=>!ha.isOccluded),pr=Wr.map(ha=>ha.point)}else Sr=!0;return{box:t.ao(pr),allPointsOccluded:!Sr}}}function Aa(Oe,R,ae){return R*(t.X/(Oe.tileSize*Math.pow(2,ae-Oe.tileID.overscaledZ)))}class La{constructor(R,ae,we,Se){this.opacity=R?Math.max(0,Math.min(1,R.opacity+(R.placed?ae:-ae))):Se&&we?1:0,this.placed=we}isHidden(){return this.opacity===0&&!this.placed}}class ka{constructor(R,ae,we,Se,De){this.text=new La(R?R.text:null,ae,we,De),this.icon=new La(R?R.icon:null,ae,Se,De)}isHidden(){return this.text.isHidden()&&this.icon.isHidden()}}class Ga{constructor(R,ae,we){this.text=R,this.icon=ae,this.skipFade=we}}class Ma{constructor(){this.invProjMatrix=t.H(),this.viewportMatrix=t.H(),this.circles=[]}}class Ua{constructor(R,ae,we,Se,De){this.bucketInstanceId=R,this.featureIndex=ae,this.sourceLayerIndex=we,this.bucketIndex=Se,this.tileID=De}}class ni{constructor(R){this.crossSourceCollisions=R,this.maxGroupID=0,this.collisionGroups={}}get(R){if(this.crossSourceCollisions)return{ID:0,predicate:null};if(!this.collisionGroups[R]){let ae=++this.maxGroupID;this.collisionGroups[R]={ID:ae,predicate:we=>we.collisionGroupID===ae}}return this.collisionGroups[R]}}function Wt(Oe,R,ae,we,Se){let{horizontalAlign:De,verticalAlign:ft}=t.au(Oe);return new t.P(-(De-.5)*R+we[0]*Se,-(ft-.5)*ae+we[1]*Se)}class zt{constructor(R,ae,we,Se,De,ft){this.transform=R.clone(),this.terrain=we,this.collisionIndex=new sa(this.transform,ae),this.placements={},this.opacities={},this.variableOffsets={},this.stale=!1,this.commitTime=0,this.fadeDuration=Se,this.retainedQueryData={},this.collisionGroups=new ni(De),this.collisionCircleArrays={},this.collisionBoxArrays=new Map,this.prevPlacement=ft,ft&&(ft.prevPlacement=void 0),this.placedOrientations={}}_getTerrainElevationFunc(R){let ae=this.terrain;return ae?(we,Se)=>ae.getElevation(R,we,Se):null}getBucketParts(R,ae,we,Se){let De=we.getBucket(ae),ft=we.latestFeatureIndex;if(!De||!ft||ae.id!==De.layerIds[0])return;let bt=we.collisionBoxArray,Dt=De.layers[0].layout,Yt=De.layers[0].paint,cr=Math.pow(2,this.transform.zoom-we.tileID.overscaledZ),hr=we.tileSize/t.X,jr=we.tileID.toUnwrapped(),ea=this.transform.calculatePosMatrix(jr),qe=Dt.get("text-pitch-alignment")==="map",Je=Dt.get("text-rotation-alignment")==="map",ot=Aa(we,1,this.transform.zoom),ht=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("text-translate"),Yt.get("text-translate-anchor")),At=this.collisionIndex.mapProjection.translatePosition(this.transform,we,Yt.get("icon-translate"),Yt.get("icon-translate-anchor")),_t=vr(ea,qe,Je,this.transform,ot),Pt=null;if(qe){let nr=_r(ea,qe,Je,this.transform,ot);Pt=t.L([],this.transform.labelPlaneMatrix,nr)}this.retainedQueryData[De.bucketInstanceId]=new Ua(De.bucketInstanceId,ft,De.sourceLayerIndex,De.index,we.tileID);let er={bucket:De,layout:Dt,translationText:ht,translationIcon:At,posMatrix:ea,unwrappedTileID:jr,textLabelPlaneMatrix:_t,labelToScreenMatrix:Pt,scale:cr,textPixelRatio:hr,holdingForFade:we.holdingForFade(),collisionBoxArray:bt,partiallyEvaluatedTextSize:t.ag(De.textSizeData,this.transform.zoom),collisionGroup:this.collisionGroups.get(De.sourceID)};if(Se)for(let nr of De.sortKeyRanges){let{sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr}=nr;R.push({sortKey:pr,symbolInstanceStart:Sr,symbolInstanceEnd:Wr,parameters:er})}else R.push({symbolInstanceStart:0,symbolInstanceEnd:De.symbolInstances.length,parameters:er})}attemptAnchorPlacement(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At,_t){let Pt=t.aq[R.textAnchor],er=[R.textOffset0,R.textOffset1],nr=Wt(Pt,we,Se,er,De),pr=this.collisionIndex.placeCollisionBox(ae,jr,Dt,Yt,cr,bt,ft,ot,hr.predicate,_t,nr);if((!At||this.collisionIndex.placeCollisionBox(At,jr,Dt,Yt,cr,bt,ft,ht,hr.predicate,_t,nr).placeable)&&pr.placeable){let Sr;if(this.prevPlacement&&this.prevPlacement.variableOffsets[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID]&&this.prevPlacement.placements[ea.crossTileID].text&&(Sr=this.prevPlacement.variableOffsets[ea.crossTileID].anchor),ea.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");return this.variableOffsets[ea.crossTileID]={textOffset:er,width:we,height:Se,anchor:Pt,textBoxScale:De,prevAnchor:Sr},this.markUsedJustification(qe,Pt,ea,Je),qe.allowVerticalPlacement&&(this.markUsedOrientation(qe,Je,ea),this.placedOrientations[ea.crossTileID]=Je),{shift:nr,placedGlyphBoxes:pr}}}placeLayerBucketPart(R,ae,we){let{bucket:Se,layout:De,translationText:ft,translationIcon:bt,posMatrix:Dt,unwrappedTileID:Yt,textLabelPlaneMatrix:cr,labelToScreenMatrix:hr,textPixelRatio:jr,holdingForFade:ea,collisionBoxArray:qe,partiallyEvaluatedTextSize:Je,collisionGroup:ot}=R.parameters,ht=De.get("text-optional"),At=De.get("icon-optional"),_t=t.ar(De,"text-overlap","text-allow-overlap"),Pt=_t==="always",er=t.ar(De,"icon-overlap","icon-allow-overlap"),nr=er==="always",pr=De.get("text-rotation-alignment")==="map",Sr=De.get("text-pitch-alignment")==="map",Wr=De.get("icon-text-fit")!=="none",ha=De.get("symbol-z-order")==="viewport-y",ga=Pt&&(nr||!Se.hasIconData()||At),Pa=nr&&(Pt||!Se.hasTextData()||ht);!Se.collisionArrays&&qe&&Se.deserializeCollisionBoxes(qe);let Ja=this._getTerrainElevationFunc(this.retainedQueryData[Se.bucketInstanceId].tileID),di=(pi,Ci,$i)=>{var Bn,Sn;if(ae[pi.crossTileID])return;if(ea)return void(this.placements[pi.crossTileID]=new Ga(!1,!1,!1));let ho=!1,ts=!1,yo=!0,Vo=null,ls={box:null,placeable:!1,offscreen:null},rl={box:null,placeable:!1,offscreen:null},Ys=null,Zo=null,Go=null,Rl=0,Xl=0,qu=0;Ci.textFeatureIndex?Rl=Ci.textFeatureIndex:pi.useRuntimeCollisionCircles&&(Rl=pi.featureIndex),Ci.verticalTextFeatureIndex&&(Xl=Ci.verticalTextFeatureIndex);let fu=Ci.textBox;if(fu){let ql=$e=>{let pt=t.ah.horizontal;if(Se.allowVerticalPlacement&&!$e&&this.prevPlacement){let vt=this.prevPlacement.placedOrientations[pi.crossTileID];vt&&(this.placedOrientations[pi.crossTileID]=vt,pt=vt,this.markUsedOrientation(Se,pt,pi))}return pt},Hl=($e,pt)=>{if(Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&Ci.verticalTextBox){for(let vt of Se.writingModes)if(vt===t.ah.vertical?(ls=pt(),rl=ls):ls=$e(),ls&&ls.placeable)break}else ls=$e()},de=pi.textAnchorOffsetStartIndex,Re=pi.textAnchorOffsetEndIndex;if(Re===de){let $e=(pt,vt)=>{let wt=this.collisionIndex.placeCollisionBox(pt,_t,jr,Dt,Yt,Sr,pr,ft,ot.predicate,Ja);return wt&&wt.placeable&&(this.markUsedOrientation(Se,vt,pi),this.placedOrientations[pi.crossTileID]=vt),wt};Hl(()=>$e(fu,t.ah.horizontal),()=>{let pt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&pi.numVerticalGlyphVertices>0&&pt?$e(pt,t.ah.vertical):{box:null,offscreen:null}}),ql(ls&&ls.placeable)}else{let $e=t.aq[(Sn=(Bn=this.prevPlacement)===null||Bn===void 0?void 0:Bn.variableOffsets[pi.crossTileID])===null||Sn===void 0?void 0:Sn.anchor],pt=(wt,Jt,Rt)=>{let or=wt.x2-wt.x1,Dr=wt.y2-wt.y1,Or=pi.textBoxScale,va=Wr&&er==="never"?Jt:null,fa=null,Va=_t==="never"?1:2,Xa="never";$e&&Va++;for(let _a=0;_a<Va;_a++){for(let Ra=de;Ra<Re;Ra++){let Na=Se.textAnchorOffsets.get(Ra);if($e&&Na.textAnchor!==$e)continue;let Qa=this.attemptAnchorPlacement(Na,wt,or,Dr,Or,pr,Sr,jr,Dt,Yt,ot,Xa,pi,Se,Rt,ft,bt,va,Ja);if(Qa&&(fa=Qa.placedGlyphBoxes,fa&&fa.placeable))return ho=!0,Vo=Qa.shift,fa}$e?$e=null:Xa=_t}return we&&!fa&&(fa={box:this.collisionIndex.placeCollisionBox(fu,"always",jr,Dt,Yt,Sr,pr,ft,ot.predicate,Ja,new t.P(0,0)).box,offscreen:!1,placeable:!1}),fa};Hl(()=>pt(fu,Ci.iconBox,t.ah.horizontal),()=>{let wt=Ci.verticalTextBox;return Se.allowVerticalPlacement&&(!ls||!ls.placeable)&&pi.numVerticalGlyphVertices>0&&wt?pt(wt,Ci.verticalIconBox,t.ah.vertical):{box:null,occluded:!0,offscreen:null}}),ls&&(ho=ls.placeable,yo=ls.offscreen);let vt=ql(ls&&ls.placeable);if(!ho&&this.prevPlacement){let wt=this.prevPlacement.variableOffsets[pi.crossTileID];wt&&(this.variableOffsets[pi.crossTileID]=wt,this.markUsedJustification(Se,wt.anchor,pi,vt))}}}if(Ys=ls,ho=Ys&&Ys.placeable,yo=Ys&&Ys.offscreen,pi.useRuntimeCollisionCircles){let ql=Se.text.placedSymbolArray.get(pi.centerJustifiedTextSymbolIndex),Hl=t.ai(Se.textSizeData,Je,ql),de=De.get("text-padding");Zo=this.collisionIndex.placeCollisionCircles(_t,ql,Se.lineVertexArray,Se.glyphOffsetArray,Hl,Dt,Yt,cr,hr,we,Sr,ot.predicate,pi.collisionCircleDiameter,de,ft,Ja),Zo.circles.length&&Zo.collisionDetected&&!we&&t.w("Collisions detected, but collision boxes are not shown"),ho=Pt||Zo.circles.length>0&&!Zo.collisionDetected,yo=yo&&Zo.offscreen}if(Ci.iconFeatureIndex&&(qu=Ci.iconFeatureIndex),Ci.iconBox){let ql=Hl=>this.collisionIndex.placeCollisionBox(Hl,er,jr,Dt,Yt,Sr,pr,bt,ot.predicate,Ja,Wr&&Vo?Vo:void 0);rl&&rl.placeable&&Ci.verticalIconBox?(Go=ql(Ci.verticalIconBox),ts=Go.placeable):(Go=ql(Ci.iconBox),ts=Go.placeable),yo=yo&&Go.offscreen}let bl=ht||pi.numHorizontalGlyphVertices===0&&pi.numVerticalGlyphVertices===0,ou=At||pi.numIconVertices===0;bl||ou?ou?bl||(ts=ts&&ho):ho=ts&&ho:ts=ho=ts&&ho;let Sc=ts&&Go.placeable;if(ho&&Ys.placeable&&this.collisionIndex.insertCollisionBox(Ys.box,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,rl&&rl.placeable&&Xl?Xl:Rl,ot.ID),Sc&&this.collisionIndex.insertCollisionBox(Go.box,er,De.get("icon-ignore-placement"),Se.bucketInstanceId,qu,ot.ID),Zo&&ho&&this.collisionIndex.insertCollisionCircles(Zo.circles,_t,De.get("text-ignore-placement"),Se.bucketInstanceId,Rl,ot.ID),we&&this.storeCollisionData(Se.bucketInstanceId,$i,Ci,Ys,Go,Zo),pi.crossTileID===0)throw new Error("symbolInstance.crossTileID can't be 0");if(Se.bucketInstanceId===0)throw new Error("bucket.bucketInstanceId can't be 0");this.placements[pi.crossTileID]=new Ga(ho||ga,ts||Pa,yo||Se.justReloaded),ae[pi.crossTileID]=!0};if(ha){if(R.symbolInstanceStart!==0)throw new Error("bucket.bucketInstanceId should be 0");let pi=Se.getSortedSymbolIndexes(this.transform.angle);for(let Ci=pi.length-1;Ci>=0;--Ci){let $i=pi[Ci];di(Se.symbolInstances.get($i),Se.collisionArrays[$i],$i)}}else for(let pi=R.symbolInstanceStart;pi<R.symbolInstanceEnd;pi++)di(Se.symbolInstances.get(pi),Se.collisionArrays[pi],pi);if(we&&Se.bucketInstanceId in this.collisionCircleArrays){let pi=this.collisionCircleArrays[Se.bucketInstanceId];t.as(pi.invProjMatrix,Dt),pi.viewportMatrix=this.collisionIndex.getViewportMatrix()}Se.justReloaded=!1}storeCollisionData(R,ae,we,Se,De,ft){if(we.textBox||we.iconBox){let bt,Dt;this.collisionBoxArrays.has(R)?bt=this.collisionBoxArrays.get(R):(bt=new Map,this.collisionBoxArrays.set(R,bt)),bt.has(ae)?Dt=bt.get(ae):(Dt={text:null,icon:null},bt.set(ae,Dt)),we.textBox&&(Dt.text=Se.box),we.iconBox&&(Dt.icon=De.box)}if(ft){let bt=this.collisionCircleArrays[R];bt===void 0&&(bt=this.collisionCircleArrays[R]=new Ma);for(let Dt=0;Dt<ft.circles.length;Dt+=4)bt.circles.push(ft.circles[Dt+0]),bt.circles.push(ft.circles[Dt+1]),bt.circles.push(ft.circles[Dt+2]),bt.circles.push(ft.collisionDetected?1:0)}}markUsedJustification(R,ae,we,Se){let De;De=Se===t.ah.vertical?we.verticalPlacedTextSymbolIndex:{left:we.leftJustifiedTextSymbolIndex,center:we.centerJustifiedTextSymbolIndex,right:we.rightJustifiedTextSymbolIndex}[t.at(ae)];let ft=[we.leftJustifiedTextSymbolIndex,we.centerJustifiedTextSymbolIndex,we.rightJustifiedTextSymbolIndex,we.verticalPlacedTextSymbolIndex];for(let bt of ft)bt>=0&&(R.text.placedSymbolArray.get(bt).crossTileID=De>=0&&bt!==De?0:we.crossTileID)}markUsedOrientation(R,ae,we){let Se=ae===t.ah.horizontal||ae===t.ah.horizontalOnly?ae:0,De=ae===t.ah.vertical?ae:0,ft=[we.leftJustifiedTextSymbolIndex,we.centerJustifiedTextSymbolIndex,we.rightJustifiedTextSymbolIndex];for(let bt of ft)R.text.placedSymbolArray.get(bt).placedOrientation=Se;we.verticalPlacedTextSymbolIndex&&(R.text.placedSymbolArray.get(we.verticalPlacedTextSymbolIndex).placedOrientation=De)}commit(R){this.commitTime=R,this.zoomAtLastRecencyCheck=this.transform.zoom;let ae=this.prevPlacement,we=!1;this.prevZoomAdjustment=ae?ae.zoomAdjustment(this.transform.zoom):0;let Se=ae?ae.symbolFadeChange(R):1,De=ae?ae.opacities:{},ft=ae?ae.variableOffsets:{},bt=ae?ae.placedOrientations:{};for(let Dt in this.placements){let Yt=this.placements[Dt],cr=De[Dt];cr?(this.opacities[Dt]=new ka(cr,Se,Yt.text,Yt.icon),we=we||Yt.text!==cr.text.placed||Yt.icon!==cr.icon.placed):(this.opacities[Dt]=new ka(null,Se,Yt.text,Yt.icon,Yt.skipFade),we=we||Yt.text||Yt.icon)}for(let Dt in De){let Yt=De[Dt];if(!this.opacities[Dt]){let cr=new ka(Yt,Se,!1,!1);cr.isHidden()||(this.opacities[Dt]=cr,we=we||Yt.text.placed||Yt.icon.placed)}}for(let Dt in ft)this.variableOffsets[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.variableOffsets[Dt]=ft[Dt]);for(let Dt in bt)this.placedOrientations[Dt]||!this.opacities[Dt]||this.opacities[Dt].isHidden()||(this.placedOrientations[Dt]=bt[Dt]);if(ae&&ae.lastPlacementChangeTime===void 0)throw new Error("Last placement time for previous placement is not defined");we?this.lastPlacementChangeTime=R:typeof this.lastPlacementChangeTime!="number"&&(this.lastPlacementChangeTime=ae?ae.lastPlacementChangeTime:R)}updateLayerOpacities(R,ae){let we={};for(let Se of ae){let De=Se.getBucket(R);De&&Se.latestFeatureIndex&&R.id===De.layerIds[0]&&this.updateBucketOpacities(De,Se.tileID,we,Se.collisionBoxArray)}}updateBucketOpacities(R,ae,we,Se){R.hasTextData()&&(R.text.opacityVertexArray.clear(),R.text.hasVisibleVertices=!1),R.hasIconData()&&(R.icon.opacityVertexArray.clear(),R.icon.hasVisibleVertices=!1),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexArray.clear(),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexArray.clear();let De=R.layers[0],ft=De.layout,bt=new ka(null,0,!1,!1,!0),Dt=ft.get("text-allow-overlap"),Yt=ft.get("icon-allow-overlap"),cr=De._unevaluatedLayout.hasValue("text-variable-anchor")||De._unevaluatedLayout.hasValue("text-variable-anchor-offset"),hr=ft.get("text-rotation-alignment")==="map",jr=ft.get("text-pitch-alignment")==="map",ea=ft.get("icon-text-fit")!=="none",qe=new ka(null,0,Dt&&(Yt||!R.hasIconData()||ft.get("icon-optional")),Yt&&(Dt||!R.hasTextData()||ft.get("text-optional")),!0);!R.collisionArrays&&Se&&(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData())&&R.deserializeCollisionBoxes(Se);let Je=(ht,At,_t)=>{for(let Pt=0;Pt<At/4;Pt++)ht.opacityVertexArray.emplaceBack(_t);ht.hasVisibleVertices=ht.hasVisibleVertices||_t!==ya},ot=this.collisionBoxArrays.get(R.bucketInstanceId);for(let ht=0;ht<R.symbolInstances.length;ht++){let At=R.symbolInstances.get(ht),{numHorizontalGlyphVertices:_t,numVerticalGlyphVertices:Pt,crossTileID:er}=At,nr=this.opacities[er];we[er]?nr=bt:nr||(nr=qe,this.opacities[er]=nr),we[er]=!0;let pr=At.numIconVertices>0,Sr=this.placedOrientations[At.crossTileID],Wr=Sr===t.ah.vertical,ha=Sr===t.ah.horizontal||Sr===t.ah.horizontalOnly;if(_t>0||Pt>0){let Pa=qa(nr.text);Je(R.text,_t,Wr?ya:Pa),Je(R.text,Pt,ha?ya:Pa);let Ja=nr.text.isHidden();[At.rightJustifiedTextSymbolIndex,At.centerJustifiedTextSymbolIndex,At.leftJustifiedTextSymbolIndex].forEach(Ci=>{Ci>=0&&(R.text.placedSymbolArray.get(Ci).hidden=Ja||Wr?1:0)}),At.verticalPlacedTextSymbolIndex>=0&&(R.text.placedSymbolArray.get(At.verticalPlacedTextSymbolIndex).hidden=Ja||ha?1:0);let di=this.variableOffsets[At.crossTileID];di&&this.markUsedJustification(R,di.anchor,At,Sr);let pi=this.placedOrientations[At.crossTileID];pi&&(this.markUsedJustification(R,"left",At,pi),this.markUsedOrientation(R,pi,At))}if(pr){let Pa=qa(nr.icon),Ja=!(ea&&At.verticalPlacedIconSymbolIndex&&Wr);At.placedIconSymbolIndex>=0&&(Je(R.icon,At.numIconVertices,Ja?Pa:ya),R.icon.placedSymbolArray.get(At.placedIconSymbolIndex).hidden=nr.icon.isHidden()),At.verticalPlacedIconSymbolIndex>=0&&(Je(R.icon,At.numVerticalIconVertices,Ja?ya:Pa),R.icon.placedSymbolArray.get(At.verticalPlacedIconSymbolIndex).hidden=nr.icon.isHidden())}let ga=ot&&ot.has(ht)?ot.get(ht):{text:null,icon:null};if(R.hasIconCollisionBoxData()||R.hasTextCollisionBoxData()){let Pa=R.collisionArrays[ht];if(Pa){let Ja=new t.P(0,0);if(Pa.textBox||Pa.verticalTextBox){let di=!0;if(cr){let pi=this.variableOffsets[er];pi?(Ja=Wt(pi.anchor,pi.width,pi.height,pi.textOffset,pi.textBoxScale),hr&&Ja._rotate(jr?this.transform.angle:-this.transform.angle)):di=!1}if(Pa.textBox||Pa.verticalTextBox){let pi;Pa.textBox&&(pi=Wr),Pa.verticalTextBox&&(pi=ha),Vt(R.textCollisionBox.collisionVertexArray,nr.text.placed,!di||pi,ga.text,Ja.x,Ja.y)}}if(Pa.iconBox||Pa.verticalIconBox){let di=!!(!ha&&Pa.verticalIconBox),pi;Pa.iconBox&&(pi=di),Pa.verticalIconBox&&(pi=!di),Vt(R.iconCollisionBox.collisionVertexArray,nr.icon.placed,pi,ga.icon,ea?Ja.x:0,ea?Ja.y:0)}}}}if(R.sortFeatures(this.transform.angle),this.retainedQueryData[R.bucketInstanceId]&&(this.retainedQueryData[R.bucketInstanceId].featureSortOrder=R.featureSortOrder),R.hasTextData()&&R.text.opacityVertexBuffer&&R.text.opacityVertexBuffer.updateData(R.text.opacityVertexArray),R.hasIconData()&&R.icon.opacityVertexBuffer&&R.icon.opacityVertexBuffer.updateData(R.icon.opacityVertexArray),R.hasIconCollisionBoxData()&&R.iconCollisionBox.collisionVertexBuffer&&R.iconCollisionBox.collisionVertexBuffer.updateData(R.iconCollisionBox.collisionVertexArray),R.hasTextCollisionBoxData()&&R.textCollisionBox.collisionVertexBuffer&&R.textCollisionBox.collisionVertexBuffer.updateData(R.textCollisionBox.collisionVertexArray),R.text.opacityVertexArray.length!==R.text.layoutVertexArray.length/4)throw new Error(`bucket.text.opacityVertexArray.length (= ${R.text.opacityVertexArray.length}) !== bucket.text.layoutVertexArray.length (= ${R.text.layoutVertexArray.length}) / 4`);if(R.icon.opacityVertexArray.length!==R.icon.layoutVertexArray.length/4)throw new Error(`bucket.icon.opacityVertexArray.length (= ${R.icon.opacityVertexArray.length}) !== bucket.icon.layoutVertexArray.length (= ${R.icon.layoutVertexArray.length}) / 4`);if(R.bucketInstanceId in this.collisionCircleArrays){let ht=this.collisionCircleArrays[R.bucketInstanceId];R.placementInvProjMatrix=ht.invProjMatrix,R.placementViewportMatrix=ht.viewportMatrix,R.collisionCircleArray=ht.circles,delete this.collisionCircleArrays[R.bucketInstanceId]}}symbolFadeChange(R){return this.fadeDuration===0?1:(R-this.commitTime)/this.fadeDuration+this.prevZoomAdjustment}zoomAdjustment(R){return Math.max(0,(this.transform.zoom-R)/1.5)}hasTransitions(R){return this.stale||R-this.lastPlacementChangeTime<this.fadeDuration}stillRecent(R,ae){let we=this.zoomAtLastRecencyCheck===ae?1-this.zoomAdjustment(ae):1;return this.zoomAtLastRecencyCheck=ae,this.commitTime+this.fadeDuration*we>R}setStale(){this.stale=!0}}function Vt(Oe,R,ae,we,Se,De){we&&we.length!==0||(we=[0,0,0,0]);let ft=we[0]-sr,bt=we[1]-sr,Dt=we[2]-sr,Yt=we[3]-sr;Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,bt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,Dt,Yt),Oe.emplaceBack(R?1:0,ae?1:0,Se||0,De||0,ft,Yt)}let Ut=Math.pow(2,25),xr=Math.pow(2,24),Zr=Math.pow(2,17),pa=Math.pow(2,16),Xr=Math.pow(2,9),Ea=Math.pow(2,8),Fa=Math.pow(2,1);function qa(Oe){if(Oe.opacity===0&&!Oe.placed)return 0;if(Oe.opacity===1&&Oe.placed)return 4294967295;let R=Oe.placed?1:0,ae=Math.floor(127*Oe.opacity);return ae*Ut+R*xr+ae*Zr+R*pa+ae*Xr+R*Ea+ae*Fa+R}let ya=0;function $a(){return{isOccluded:(Oe,R,ae)=>!1,getPitchedTextCorrection:(Oe,R,ae)=>1,get useSpecialProjectionForSymbols(){return!1},projectTileCoordinates(Oe,R,ae,we){throw new Error("Not implemented.")},translatePosition:(Oe,R,ae,we)=>function(Se,De,ft,bt,Dt=!1){if(!ft[0]&&!ft[1])return[0,0];let Yt=Dt?bt==="map"?Se.angle:0:bt==="viewport"?-Se.angle:0;if(Yt){let cr=Math.sin(Yt),hr=Math.cos(Yt);ft=[ft[0]*hr-ft[1]*cr,ft[0]*cr+ft[1]*hr]}return[Dt?ft[0]:Aa(De,ft[0],Se.zoom),Dt?ft[1]:Aa(De,ft[1],Se.zoom)]}(Oe,R,ae,we),getCircleRadiusCorrection:Oe=>1}}class mt{constructor(R){this._sortAcrossTiles=R.layout.get("symbol-z-order")!=="viewport-y"&&!R.layout.get("symbol-sort-key").isConstant(),this._currentTileIndex=0,this._currentPartIndex=0,this._seenCrossTileIDs={},this._bucketParts=[]}continuePlacement(R,ae,we,Se,De){let ft=this._bucketParts;for(;this._currentTileIndex<R.length;)if(ae.getBucketParts(ft,Se,R[this._currentTileIndex],this._sortAcrossTiles),this._currentTileIndex++,De())return!0;for(this._sortAcrossTiles&&(this._sortAcrossTiles=!1,ft.sort((bt,Dt)=>bt.sortKey-Dt.sortKey));this._currentPartIndex<ft.length;)if(ae.placeLayerBucketPart(ft[this._currentPartIndex],this._seenCrossTileIDs,we),this._currentPartIndex++,De())return!0;return!1}}class gt{constructor(R,ae,we,Se,De,ft,bt,Dt){this.placement=new zt(R,$a(),ae,ft,bt,Dt),this._currentPlacementIndex=we.length-1,this._forceFullPlacement=Se,this._showCollisionBoxes=De,this._done=!1}isDone(){return this._done}continuePlacement(R,ae,we){let Se=i.now(),De=()=>!this._forceFullPlacement&&i.now()-Se>2;for(;this._currentPlacementIndex>=0;){let ft=ae[R[this._currentPlacementIndex]],bt=this.placement.collisionIndex.transform.zoom;if(ft.type==="symbol"&&(!ft.minzoom||ft.minzoom<=bt)&&(!ft.maxzoom||ft.maxzoom>bt)){if(this._inProgressLayer||(this._inProgressLayer=new mt(ft)),this._inProgressLayer.continuePlacement(we[ft.source],this.placement,this._showCollisionBoxes,ft,De))return;delete this._inProgressLayer}this._currentPlacementIndex--}this._done=!0}commit(R){return this.placement.commit(R),this.placement}}let Er=512/t.X/2;class kr{constructor(R,ae,we){this.tileID=R,this.bucketInstanceId=we,this._symbolsByKey={};let Se=new Map;for(let De=0;De<ae.length;De++){let ft=ae.get(De),bt=ft.key,Dt=Se.get(bt);Dt?Dt.push(ft):Se.set(bt,[ft])}for(let[De,ft]of Se){let bt={positions:ft.map(Dt=>({x:Math.floor(Dt.anchorX*Er),y:Math.floor(Dt.anchorY*Er)})),crossTileIDs:ft.map(Dt=>Dt.crossTileID)};if(bt.positions.length>128){let Dt=new t.av(bt.positions.length,16,Uint16Array);for(let{x:Yt,y:cr}of bt.positions)Dt.add(Yt,cr);Dt.finish(),delete bt.positions,bt.index=Dt}this._symbolsByKey[De]=bt}}getScaledCoordinates(R,ae){let{x:we,y:Se,z:De}=this.tileID.canonical,{x:ft,y:bt,z:Dt}=ae.canonical,Yt=Er/Math.pow(2,Dt-De),cr=(bt*t.X+R.anchorY)*Yt,hr=Se*t.X*Er;return{x:Math.floor((ft*t.X+R.anchorX)*Yt-we*t.X*Er),y:Math.floor(cr-hr)}}findMatches(R,ae,we){let Se=this.tileID.canonical.z<ae.canonical.z?1:Math.pow(2,this.tileID.canonical.z-ae.canonical.z);for(let De=0;De<R.length;De++){let ft=R.get(De);if(ft.crossTileID)continue;let bt=this._symbolsByKey[ft.key];if(!bt)continue;let Dt=this.getScaledCoordinates(ft,ae);if(bt.index){let Yt=bt.index.range(Dt.x-Se,Dt.y-Se,Dt.x+Se,Dt.y+Se).sort();for(let cr of Yt){let hr=bt.crossTileIDs[cr];if(!we[hr]){we[hr]=!0,ft.crossTileID=hr;break}}}else if(bt.positions)for(let Yt=0;Yt<bt.positions.length;Yt++){let cr=bt.positions[Yt],hr=bt.crossTileIDs[Yt];if(Math.abs(cr.x-Dt.x)<=Se&&Math.abs(cr.y-Dt.y)<=Se&&!we[hr]){we[hr]=!0,ft.crossTileID=hr;break}}}}getCrossTileIDsLists(){return Object.values(this._symbolsByKey).map(({crossTileIDs:R})=>R)}}class br{constructor(){this.maxCrossTileID=0}generate(){return++this.maxCrossTileID}}class Tr{constructor(){this.indexes={},this.usedCrossTileIDs={},this.lng=0}handleWrapJump(R){let ae=Math.round((R-this.lng)/360);if(ae!==0)for(let we in this.indexes){let Se=this.indexes[we],De={};for(let ft in Se){let bt=Se[ft];bt.tileID=bt.tileID.unwrapTo(bt.tileID.wrap+ae),De[bt.tileID.key]=bt}this.indexes[we]=De}this.lng=R}addBucket(R,ae,we){if(this.indexes[R.overscaledZ]&&this.indexes[R.overscaledZ][R.key]){if(this.indexes[R.overscaledZ][R.key].bucketInstanceId===ae.bucketInstanceId)return!1;this.removeBucketCrossTileIDs(R.overscaledZ,this.indexes[R.overscaledZ][R.key])}for(let De=0;De<ae.symbolInstances.length;De++)ae.symbolInstances.get(De).crossTileID=0;this.usedCrossTileIDs[R.overscaledZ]||(this.usedCrossTileIDs[R.overscaledZ]={});let Se=this.usedCrossTileIDs[R.overscaledZ];for(let De in this.indexes){let ft=this.indexes[De];if(Number(De)>R.overscaledZ)for(let bt in ft){let Dt=ft[bt];Dt.tileID.isChildOf(R)&&Dt.findMatches(ae.symbolInstances,R,Se)}else{let bt=ft[R.scaledTo(Number(De)).key];bt&&bt.findMatches(ae.symbolInstances,R,Se)}}for(let De=0;De<ae.symbolInstances.length;De++){let ft=ae.symbolInstances.get(De);ft.crossTileID||(ft.crossTileID=we.generate(),Se[ft.crossTileID]=!0)}return this.indexes[R.overscaledZ]===void 0&&(this.indexes[R.overscaledZ]={}),this.indexes[R.overscaledZ][R.key]=new kr(R,ae.symbolInstances,ae.bucketInstanceId),!0}removeBucketCrossTileIDs(R,ae){for(let we of ae.getCrossTileIDsLists())for(let Se of we)delete this.usedCrossTileIDs[R][Se]}removeStaleBuckets(R){let ae=!1;for(let we in this.indexes){let Se=this.indexes[we];for(let De in Se)R[Se[De].bucketInstanceId]||(this.removeBucketCrossTileIDs(we,Se[De]),delete Se[De],ae=!0)}return ae}}class Mr{constructor(){this.layerIndexes={},this.crossTileIDs=new br,this.maxBucketInstanceId=0,this.bucketsInCurrentPlacement={}}addLayer(R,ae,we){let Se=this.layerIndexes[R.id];Se===void 0&&(Se=this.layerIndexes[R.id]=new Tr);let De=!1,ft={};Se.handleWrapJump(we);for(let bt of ae){let Dt=bt.getBucket(R);Dt&&R.id===Dt.layerIds[0]&&(Dt.bucketInstanceId||(Dt.bucketInstanceId=++this.maxBucketInstanceId),Se.addBucket(bt.tileID,Dt,this.crossTileIDs)&&(De=!0),ft[Dt.bucketInstanceId]=!0)}return Se.removeStaleBuckets(ft)&&(De=!0),De}pruneUnusedLayers(R){let ae={};R.forEach(we=>{ae[we]=!0});for(let we in this.layerIndexes)ae[we]||delete this.layerIndexes[we]}}let Fr=(Oe,R)=>t.t(Oe,R&&R.filter(ae=>ae.identifier!=="source.canvas")),Lr=t.aw();class Jr extends t.E{constructor(R,ae={}){super(),this._rtlPluginLoaded=()=>{for(let we in this.sourceCaches){let Se=this.sourceCaches[we].getSource().type;Se!=="vector"&&Se!=="geojson"||this.sourceCaches[we].reload()}},this.map=R,this.dispatcher=new J($(),R._getMapId()),this.dispatcher.registerMessageHandler("GG",(we,Se)=>this.getGlyphs(we,Se)),this.dispatcher.registerMessageHandler("GI",(we,Se)=>this.getImages(we,Se)),this.imageManager=new f,this.imageManager.setEventedParent(this),this.glyphManager=new F(R._requestManager,ae.localIdeographFontFamily),this.lineAtlas=new W(256,512),this.crossTileSymbolIndex=new Mr,this._spritesImagesIds={},this._layers={},this._order=[],this.sourceCaches={},this.zoomHistory=new t.ax,this._loaded=!1,this._availableImages=[],this._resetUpdates(),this.dispatcher.broadcast("SR",t.ay()),tt().on(ge,this._rtlPluginLoaded),this.on("data",we=>{if(we.dataType!=="source"||we.sourceDataType!=="metadata")return;let Se=this.sourceCaches[we.sourceId];if(!Se)return;let De=Se.getSource();if(De&&De.vectorLayerIds)for(let ft in this._layers){let bt=this._layers[ft];bt.source===De.id&&this._validateLayer(bt)}})}loadURL(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),ae.validate=typeof ae.validate!="boolean"||ae.validate;let Se=this.map._requestManager.transformRequest(R,"Style");this._loadStyleRequest=new AbortController;let De=this._loadStyleRequest;t.h(Se,this._loadStyleRequest).then(ft=>{this._loadStyleRequest=null,this._load(ft.data,ae,we)}).catch(ft=>{this._loadStyleRequest=null,ft&&!De.signal.aborted&&this.fire(new t.j(ft))})}loadJSON(R,ae={},we){this.fire(new t.k("dataloading",{dataType:"style"})),this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(()=>{this._frameRequest=null,ae.validate=ae.validate!==!1,this._load(R,ae,we)}).catch(()=>{})}loadEmpty(){this.fire(new t.k("dataloading",{dataType:"style"})),this._load(Lr,{validate:!1})}_load(R,ae,we){var Se;let De=ae.transformStyle?ae.transformStyle(we,R):R;if(!ae.validate||!Fr(this,t.u(De))){this._loaded=!0,this.stylesheet=De;for(let ft in De.sources)this.addSource(ft,De.sources[ft],{validate:!1});De.sprite?this._loadSprite(De.sprite):this.imageManager.setLoaded(!0),this.glyphManager.setURL(De.glyphs),this._createLayers(),this.light=new I(this.stylesheet.light),this.sky=new U(this.stylesheet.sky),this.map.setTerrain((Se=this.stylesheet.terrain)!==null&&Se!==void 0?Se:null),this.fire(new t.k("data",{dataType:"style"})),this.fire(new t.k("style.load"))}}_createLayers(){let R=t.az(this.stylesheet.layers);this.dispatcher.broadcast("SL",R),this._order=R.map(ae=>ae.id),this._layers={},this._serializedLayers=null;for(let ae of R){let we=t.aA(ae);we.setEventedParent(this,{layer:{id:ae.id}}),this._layers[ae.id]=we}}_loadSprite(R,ae=!1,we=void 0){let Se;this.imageManager.setLoaded(!1),this._spriteRequest=new AbortController,function(De,ft,bt,Dt){return t._(this,void 0,void 0,function*(){let Yt=b(De),cr=bt>1?"@2x":"",hr={},jr={};for(let{id:ea,url:qe}of Yt){let Je=ft.transformRequest(d(qe,cr,".json"),"SpriteJSON");hr[ea]=t.h(Je,Dt);let ot=ft.transformRequest(d(qe,cr,".png"),"SpriteImage");jr[ea]=l.getImage(ot,Dt)}return yield Promise.all([...Object.values(hr),...Object.values(jr)]),function(ea,qe){return t._(this,void 0,void 0,function*(){let Je={};for(let ot in ea){Je[ot]={};let ht=i.getImageCanvasContext((yield qe[ot]).data),At=(yield ea[ot]).data;for(let _t in At){let{width:Pt,height:er,x:nr,y:pr,sdf:Sr,pixelRatio:Wr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di}=At[_t];Je[ot][_t]={data:null,pixelRatio:Wr,sdf:Sr,stretchX:ha,stretchY:ga,content:Pa,textFitWidth:Ja,textFitHeight:di,spriteData:{width:Pt,height:er,x:nr,y:pr,context:ht}}}}return Je})}(hr,jr)})}(R,this.map._requestManager,this.map.getPixelRatio(),this._spriteRequest).then(De=>{if(this._spriteRequest=null,De)for(let ft in De){this._spritesImagesIds[ft]=[];let bt=this._spritesImagesIds[ft]?this._spritesImagesIds[ft].filter(Dt=>!(Dt in De)):[];for(let Dt of bt)this.imageManager.removeImage(Dt),this._changedImages[Dt]=!0;for(let Dt in De[ft]){let Yt=ft==="default"?Dt:`${ft}:${Dt}`;this._spritesImagesIds[ft].push(Yt),Yt in this.imageManager.images?this.imageManager.updateImage(Yt,De[ft][Dt],!1):this.imageManager.addImage(Yt,De[ft][Dt]),ae&&(this._changedImages[Yt]=!0)}}}).catch(De=>{this._spriteRequest=null,Se=De,this.fire(new t.j(Se))}).finally(()=>{this.imageManager.setLoaded(!0),this._availableImages=this.imageManager.listImages(),ae&&(this._changed=!0),this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"})),we&&we(Se)})}_unloadSprite(){for(let R of Object.values(this._spritesImagesIds).flat())this.imageManager.removeImage(R),this._changedImages[R]=!0;this._spritesImagesIds={},this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}_validateLayer(R){let ae=this.sourceCaches[R.source];if(!ae)return;let we=R.sourceLayer;if(!we)return;let Se=ae.getSource();(Se.type==="geojson"||Se.vectorLayerIds&&Se.vectorLayerIds.indexOf(we)===-1)&&this.fire(new t.j(new Error(`Source layer "${we}" does not exist on source "${Se.id}" as specified by style layer "${R.id}".`)))}loaded(){if(!this._loaded||Object.keys(this._updatedSources).length)return!1;for(let R in this.sourceCaches)if(!this.sourceCaches[R].loaded())return!1;return!!this.imageManager.isLoaded()}_serializeByIds(R,ae=!1){let we=this._serializedAllLayers();if(!R||R.length===0)return Object.values(ae?t.aB(we):we);let Se=[];for(let De of R)if(we[De]){let ft=ae?t.aB(we[De]):we[De];Se.push(ft)}return Se}_serializedAllLayers(){let R=this._serializedLayers;if(R)return R;R=this._serializedLayers={};let ae=Object.keys(this._layers);for(let we of ae){let Se=this._layers[we];Se.type!=="custom"&&(R[we]=Se.serialize())}return R}hasTransitions(){if(this.light&&this.light.hasTransition()||this.sky&&this.sky.hasTransition())return!0;for(let R in this.sourceCaches)if(this.sourceCaches[R].hasTransition())return!0;for(let R in this._layers)if(this._layers[R].hasTransition())return!0;return!1}_checkLoaded(){if(!this._loaded)throw new Error("Style is not done loading.")}update(R){if(!this._loaded)return;let ae=this._changed;if(ae){let Se=Object.keys(this._updatedLayers),De=Object.keys(this._removedLayers);(Se.length||De.length)&&this._updateWorkerLayers(Se,De);for(let ft in this._updatedSources){let bt=this._updatedSources[ft];if(bt==="reload")this._reloadSource(ft);else{if(bt!=="clear")throw new Error(`Invalid action ${bt}`);this._clearSource(ft)}}this._updateTilesForChangedImages(),this._updateTilesForChangedGlyphs();for(let ft in this._updatedPaintProps)this._layers[ft].updateTransitions(R);this.light.updateTransitions(R),this.sky.updateTransitions(R),this._resetUpdates()}let we={};for(let Se in this.sourceCaches){let De=this.sourceCaches[Se];we[Se]=De.used,De.used=!1}for(let Se of this._order){let De=this._layers[Se];De.recalculate(R,this._availableImages),!De.isHidden(R.zoom)&&De.source&&(this.sourceCaches[De.source].used=!0)}for(let Se in we){let De=this.sourceCaches[Se];!!we[Se]!=!!De.used&&De.fire(new t.k("data",{sourceDataType:"visibility",dataType:"source",sourceId:Se}))}this.light.recalculate(R),this.sky.recalculate(R),this.z=R.zoom,ae&&this.fire(new t.k("data",{dataType:"style"}))}_updateTilesForChangedImages(){let R=Object.keys(this._changedImages);if(R.length){for(let ae in this.sourceCaches)this.sourceCaches[ae].reloadTilesForDependencies(["icons","patterns"],R);this._changedImages={}}}_updateTilesForChangedGlyphs(){if(this._glyphsDidChange){for(let R in this.sourceCaches)this.sourceCaches[R].reloadTilesForDependencies(["glyphs"],[""]);this._glyphsDidChange=!1}}_updateWorkerLayers(R,ae){this.dispatcher.broadcast("UL",{layers:this._serializeByIds(R,!1),removedIds:ae})}_resetUpdates(){this._changed=!1,this._updatedLayers={},this._removedLayers={},this._updatedSources={},this._updatedPaintProps={},this._changedImages={},this._glyphsDidChange=!1}setState(R,ae={}){var we;this._checkLoaded();let Se=this.serialize();if(R=ae.transformStyle?ae.transformStyle(Se,R):R,((we=ae.validate)===null||we===void 0||we)&&Fr(this,t.u(R)))return!1;(R=t.aB(R)).layers=t.az(R.layers);let De=t.aC(Se,R),ft=this._getOperationsToPerform(De);if(ft.unimplemented.length>0)throw new Error(`Unimplemented: ${ft.unimplemented.join(", ")}.`);if(ft.operations.length===0)return!1;for(let bt of ft.operations)bt();return this.stylesheet=R,this._serializedLayers=null,!0}_getOperationsToPerform(R){let ae=[],we=[];for(let Se of R)switch(Se.command){case"setCenter":case"setZoom":case"setBearing":case"setPitch":continue;case"addLayer":ae.push(()=>this.addLayer.apply(this,Se.args));break;case"removeLayer":ae.push(()=>this.removeLayer.apply(this,Se.args));break;case"setPaintProperty":ae.push(()=>this.setPaintProperty.apply(this,Se.args));break;case"setLayoutProperty":ae.push(()=>this.setLayoutProperty.apply(this,Se.args));break;case"setFilter":ae.push(()=>this.setFilter.apply(this,Se.args));break;case"addSource":ae.push(()=>this.addSource.apply(this,Se.args));break;case"removeSource":ae.push(()=>this.removeSource.apply(this,Se.args));break;case"setLayerZoomRange":ae.push(()=>this.setLayerZoomRange.apply(this,Se.args));break;case"setLight":ae.push(()=>this.setLight.apply(this,Se.args));break;case"setGeoJSONSourceData":ae.push(()=>this.setGeoJSONSourceData.apply(this,Se.args));break;case"setGlyphs":ae.push(()=>this.setGlyphs.apply(this,Se.args));break;case"setSprite":ae.push(()=>this.setSprite.apply(this,Se.args));break;case"setSky":ae.push(()=>this.setSky.apply(this,Se.args));break;case"setTerrain":ae.push(()=>this.map.setTerrain.apply(this,Se.args));break;case"setTransition":ae.push(()=>{});break;default:we.push(Se.command)}return{operations:ae,unimplemented:we}}addImage(R,ae){if(this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" already exists.`)));this.imageManager.addImage(R,ae),this._afterImageUpdated(R)}updateImage(R,ae){this.imageManager.updateImage(R,ae)}getImage(R){return this.imageManager.getImage(R)}removeImage(R){if(!this.getImage(R))return this.fire(new t.j(new Error(`An image named "${R}" does not exist.`)));this.imageManager.removeImage(R),this._afterImageUpdated(R)}_afterImageUpdated(R){this._availableImages=this.imageManager.listImages(),this._changedImages[R]=!0,this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}listImages(){return this._checkLoaded(),this.imageManager.listImages()}addSource(R,ae,we={}){if(this._checkLoaded(),this.sourceCaches[R]!==void 0)throw new Error(`Source "${R}" already exists.`);if(!ae.type)throw new Error(`The type property must be defined, but only the following properties were given: ${Object.keys(ae).join(", ")}.`);if(["vector","raster","geojson","video","image"].indexOf(ae.type)>=0&&this._validate(t.u.source,`sources.${R}`,ae,null,we))return;this.map&&this.map._collectResourceTiming&&(ae.collectResourceTiming=!0);let Se=this.sourceCaches[R]=new St(R,ae,this.dispatcher);Se.style=this,Se.setEventedParent(this,()=>({isSourceLoaded:Se.loaded(),source:Se.serialize(),sourceId:R})),Se.onAdd(this.map),this._changed=!0}removeSource(R){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error("There is no source with this ID");for(let we in this._layers)if(this._layers[we].source===R)return this.fire(new t.j(new Error(`Source "${R}" cannot be removed while layer "${we}" is using it.`)));let ae=this.sourceCaches[R];delete this.sourceCaches[R],delete this._updatedSources[R],ae.fire(new t.k("data",{sourceDataType:"metadata",dataType:"source",sourceId:R})),ae.setEventedParent(null),ae.onRemove(this.map),this._changed=!0}setGeoJSONSourceData(R,ae){if(this._checkLoaded(),this.sourceCaches[R]===void 0)throw new Error(`There is no source with this ID=${R}`);let we=this.sourceCaches[R].getSource();if(we.type!=="geojson")throw new Error(`geojsonSource.type is ${we.type}, which is !== 'geojson`);we.setData(ae),this._changed=!0}getSource(R){return this.sourceCaches[R]&&this.sourceCaches[R].getSource()}addLayer(R,ae,we={}){this._checkLoaded();let Se=R.id;if(this.getLayer(Se))return void this.fire(new t.j(new Error(`Layer "${Se}" already exists on this map.`)));let De;if(R.type==="custom"){if(Fr(this,t.aD(R)))return;De=t.aA(R)}else{if("source"in R&&typeof R.source=="object"&&(this.addSource(Se,R.source),R=t.aB(R),R=t.e(R,{source:Se})),this._validate(t.u.layer,`layers.${Se}`,R,{arrayIndex:-1},we))return;De=t.aA(R),this._validateLayer(De),De.setEventedParent(this,{layer:{id:Se}})}let ft=ae?this._order.indexOf(ae):this._order.length;if(ae&&ft===-1)this.fire(new t.j(new Error(`Cannot add layer "${Se}" before non-existing layer "${ae}".`)));else{if(this._order.splice(ft,0,Se),this._layerOrderChanged=!0,this._layers[Se]=De,this._removedLayers[Se]&&De.source&&De.type!=="custom"){let bt=this._removedLayers[Se];delete this._removedLayers[Se],bt.type!==De.type?this._updatedSources[De.source]="clear":(this._updatedSources[De.source]="reload",this.sourceCaches[De.source].pause())}this._updateLayer(De),De.onAdd&&De.onAdd(this.map)}}moveLayer(R,ae){if(this._checkLoaded(),this._changed=!0,!this._layers[R])return void this.fire(new t.j(new Error(`The layer '${R}' does not exist in the map's style and cannot be moved.`)));if(R===ae)return;let we=this._order.indexOf(R);this._order.splice(we,1);let Se=ae?this._order.indexOf(ae):this._order.length;ae&&Se===-1?this.fire(new t.j(new Error(`Cannot move layer "${R}" before non-existing layer "${ae}".`))):(this._order.splice(Se,0,R),this._layerOrderChanged=!0)}removeLayer(R){this._checkLoaded();let ae=this._layers[R];if(!ae)return void this.fire(new t.j(new Error(`Cannot remove non-existing layer "${R}".`)));ae.setEventedParent(null);let we=this._order.indexOf(R);this._order.splice(we,1),this._layerOrderChanged=!0,this._changed=!0,this._removedLayers[R]=ae,delete this._layers[R],this._serializedLayers&&delete this._serializedLayers[R],delete this._updatedLayers[R],delete this._updatedPaintProps[R],ae.onRemove&&ae.onRemove(this.map)}getLayer(R){return this._layers[R]}getLayersOrder(){return[...this._order]}hasLayer(R){return R in this._layers}setLayerZoomRange(R,ae,we){this._checkLoaded();let Se=this.getLayer(R);Se?Se.minzoom===ae&&Se.maxzoom===we||(ae!=null&&(Se.minzoom=ae),we!=null&&(Se.maxzoom=we),this._updateLayer(Se)):this.fire(new t.j(new Error(`Cannot set the zoom range of non-existing layer "${R}".`)))}setFilter(R,ae,we={}){this._checkLoaded();let Se=this.getLayer(R);if(Se){if(!t.aE(Se.filter,ae))return ae==null?(Se.filter=void 0,void this._updateLayer(Se)):void(this._validate(t.u.filter,`layers.${Se.id}.filter`,ae,null,we)||(Se.filter=t.aB(ae),this._updateLayer(Se)))}else this.fire(new t.j(new Error(`Cannot filter non-existing layer "${R}".`)))}getFilter(R){return t.aB(this.getLayer(R).filter)}setLayoutProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getLayoutProperty(ae),we)||(De.setLayoutProperty(ae,we,Se),this._updateLayer(De)):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getLayoutProperty(R,ae){let we=this.getLayer(R);if(we)return we.getLayoutProperty(ae);this.fire(new t.j(new Error(`Cannot get style of non-existing layer "${R}".`)))}setPaintProperty(R,ae,we,Se={}){this._checkLoaded();let De=this.getLayer(R);De?t.aE(De.getPaintProperty(ae),we)||(De.setPaintProperty(ae,we,Se)&&this._updateLayer(De),this._changed=!0,this._updatedPaintProps[R]=!0,this._serializedLayers=null):this.fire(new t.j(new Error(`Cannot style non-existing layer "${R}".`)))}getPaintProperty(R,ae){return this.getLayer(R).getPaintProperty(ae)}setFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=R.sourceLayer,De=this.sourceCaches[we];if(De===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let ft=De.getSource().type;ft==="geojson"&&Se?this.fire(new t.j(new Error("GeoJSON sources cannot have a sourceLayer parameter."))):ft!=="vector"||Se?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),De.setFeatureState(Se,R.id,ae)):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}removeFeatureState(R,ae){this._checkLoaded();let we=R.source,Se=this.sourceCaches[we];if(Se===void 0)return void this.fire(new t.j(new Error(`The source '${we}' does not exist in the map's style.`)));let De=Se.getSource().type,ft=De==="vector"?R.sourceLayer:void 0;De!=="vector"||ft?ae&&typeof R.id!="string"&&typeof R.id!="number"?this.fire(new t.j(new Error("A feature id is required to remove its specific state property."))):Se.removeFeatureState(ft,R.id,ae):this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")))}getFeatureState(R){this._checkLoaded();let ae=R.source,we=R.sourceLayer,Se=this.sourceCaches[ae];if(Se!==void 0)return Se.getSource().type!=="vector"||we?(R.id===void 0&&this.fire(new t.j(new Error("The feature id parameter must be provided."))),Se.getFeatureState(we,R.id)):void this.fire(new t.j(new Error("The sourceLayer parameter must be provided for vector source types.")));this.fire(new t.j(new Error(`The source '${ae}' does not exist in the map's style.`)))}getTransition(){return t.e({duration:300,delay:0},this.stylesheet&&this.stylesheet.transition)}serialize(){if(!this._loaded)return;let R=t.aF(this.sourceCaches,De=>De.serialize()),ae=this._serializeByIds(this._order,!0),we=this.map.getTerrain()||void 0,Se=this.stylesheet;return t.aG({version:Se.version,name:Se.name,metadata:Se.metadata,light:Se.light,sky:Se.sky,center:Se.center,zoom:Se.zoom,bearing:Se.bearing,pitch:Se.pitch,sprite:Se.sprite,glyphs:Se.glyphs,transition:Se.transition,sources:R,layers:ae,terrain:we},De=>De!==void 0)}_updateLayer(R){this._updatedLayers[R.id]=!0,R.source&&!this._updatedSources[R.source]&&this.sourceCaches[R.source].getSource().type!=="raster"&&(this._updatedSources[R.source]="reload",this.sourceCaches[R.source].pause()),this._serializedLayers=null,this._changed=!0}_flattenAndSortRenderedFeatures(R){let ae=ft=>this._layers[ft].type==="fill-extrusion",we={},Se=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt)){we[bt]=ft;for(let Dt of R){let Yt=Dt[bt];if(Yt)for(let cr of Yt)Se.push(cr)}}}Se.sort((ft,bt)=>bt.intersectionZ-ft.intersectionZ);let De=[];for(let ft=this._order.length-1;ft>=0;ft--){let bt=this._order[ft];if(ae(bt))for(let Dt=Se.length-1;Dt>=0;Dt--){let Yt=Se[Dt].feature;if(we[Yt.layer.id]<ft)break;De.push(Yt),Se.pop()}else for(let Dt of R){let Yt=Dt[bt];if(Yt)for(let cr of Yt)De.push(cr.feature)}}return De}queryRenderedFeatures(R,ae,we){ae&&ae.filter&&this._validate(t.u.filter,"queryRenderedFeatures.filter",ae.filter,null,ae);let Se={};if(ae&&ae.layers){if(!Array.isArray(ae.layers))return this.fire(new t.j(new Error("parameters.layers must be an Array."))),[];for(let bt of ae.layers){let Dt=this._layers[bt];if(!Dt)return this.fire(new t.j(new Error(`The layer '${bt}' does not exist in the map's style and cannot be queried for features.`))),[];Se[Dt.source]=!0}}let De=[];ae.availableImages=this._availableImages;let ft=this._serializedAllLayers();for(let bt in this.sourceCaches)ae.layers&&!Se[bt]||De.push(ne(this.sourceCaches[bt],this._layers,ft,R,ae,we));return this.placement&&De.push(function(bt,Dt,Yt,cr,hr,jr,ea){let qe={},Je=jr.queryRenderedSymbols(cr),ot=[];for(let ht of Object.keys(Je).map(Number))ot.push(ea[ht]);ot.sort(j);for(let ht of ot){let At=ht.featureIndex.lookupSymbolFeatures(Je[ht.bucketInstanceId],Dt,ht.bucketIndex,ht.sourceLayerIndex,hr.filter,hr.layers,hr.availableImages,bt);for(let _t in At){let Pt=qe[_t]=qe[_t]||[],er=At[_t];er.sort((nr,pr)=>{let Sr=ht.featureSortOrder;if(Sr){let Wr=Sr.indexOf(nr.featureIndex);return Sr.indexOf(pr.featureIndex)-Wr}return pr.featureIndex-nr.featureIndex});for(let nr of er)Pt.push(nr)}}for(let ht in qe)qe[ht].forEach(At=>{let _t=At.feature,Pt=Yt[bt[ht].source].getFeatureState(_t.layer["source-layer"],_t.id);_t.source=_t.layer.source,_t.layer["source-layer"]&&(_t.sourceLayer=_t.layer["source-layer"]),_t.state=Pt});return qe}(this._layers,ft,this.sourceCaches,R,ae,this.placement.collisionIndex,this.placement.retainedQueryData)),this._flattenAndSortRenderedFeatures(De)}querySourceFeatures(R,ae){ae&&ae.filter&&this._validate(t.u.filter,"querySourceFeatures.filter",ae.filter,null,ae);let we=this.sourceCaches[R];return we?function(Se,De){let ft=Se.getRenderableIds().map(Yt=>Se.getTileByID(Yt)),bt=[],Dt={};for(let Yt=0;Yt<ft.length;Yt++){let cr=ft[Yt],hr=cr.tileID.canonical.key;Dt[hr]||(Dt[hr]=!0,cr.querySourceFeatures(bt,De))}return bt}(we,ae):[]}getLight(){return this.light.getLight()}setLight(R,ae={}){this._checkLoaded();let we=this.light.getLight(),Se=!1;for(let ft in R)if(!t.aE(R[ft],we[ft])){Se=!0;break}if(!Se)return;let De={now:i.now(),transition:t.e({duration:300,delay:0},this.stylesheet.transition)};this.light.setLight(R,ae),this.light.updateTransitions(De)}getSky(){var R;return(R=this.stylesheet)===null||R===void 0?void 0:R.sky}setSky(R,ae={}){let we=this.getSky(),Se=!1;if(!R&&!we)return;if(R&&!we)Se=!0;else if(!R&&we)Se=!0;else for(let ft in R)if(!t.aE(R[ft],we[ft])){Se=!0;break}if(!Se)return;let De={now:i.now(),transition:t.e({duration:300,delay:0},this.stylesheet.transition)};this.stylesheet.sky=R,this.sky.setSky(R,ae),this.sky.updateTransitions(De)}_validate(R,ae,we,Se,De={}){return(!De||De.validate!==!1)&&Fr(this,R.call(t.u,t.e({key:ae,style:this.serialize(),value:we,styleSpec:t.v},Se)))}_remove(R=!0){this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._loadStyleRequest&&(this._loadStyleRequest.abort(),this._loadStyleRequest=null),this._spriteRequest&&(this._spriteRequest.abort(),this._spriteRequest=null),tt().off(ge,this._rtlPluginLoaded);for(let ae in this._layers)this._layers[ae].setEventedParent(null);for(let ae in this.sourceCaches){let we=this.sourceCaches[ae];we.setEventedParent(null),we.onRemove(this.map)}this.imageManager.setEventedParent(null),this.setEventedParent(null),R&&this.dispatcher.broadcast("RM",void 0),this.dispatcher.remove(R)}_clearSource(R){this.sourceCaches[R].clearTiles()}_reloadSource(R){this.sourceCaches[R].resume(),this.sourceCaches[R].reload()}_updateSources(R){for(let ae in this.sourceCaches)this.sourceCaches[ae].update(R,this.map.terrain)}_generateCollisionBoxes(){for(let R in this.sourceCaches)this._reloadSource(R)}_updatePlacement(R,ae,we,Se,De=!1){let ft=!1,bt=!1,Dt={};for(let Yt of this._order){let cr=this._layers[Yt];if(cr.type!=="symbol")continue;if(!Dt[cr.source]){let jr=this.sourceCaches[cr.source];Dt[cr.source]=jr.getRenderableIds(!0).map(ea=>jr.getTileByID(ea)).sort((ea,qe)=>qe.tileID.overscaledZ-ea.tileID.overscaledZ||(ea.tileID.isLessThan(qe.tileID)?-1:1))}let hr=this.crossTileSymbolIndex.addLayer(cr,Dt[cr.source],R.center.lng);ft=ft||hr}if(this.crossTileSymbolIndex.pruneUnusedLayers(this._order),((De=De||this._layerOrderChanged||we===0)||!this.pauseablePlacement||this.pauseablePlacement.isDone()&&!this.placement.stillRecent(i.now(),R.zoom))&&(this.pauseablePlacement=new gt(R,this.map.terrain,this._order,De,ae,we,Se,this.placement),this._layerOrderChanged=!1),this.pauseablePlacement.isDone()?this.placement.setStale():(this.pauseablePlacement.continuePlacement(this._order,this._layers,Dt),this.pauseablePlacement.isDone()&&(this.placement=this.pauseablePlacement.commit(i.now()),bt=!0),ft&&this.pauseablePlacement.placement.setStale()),bt||ft)for(let Yt of this._order){let cr=this._layers[Yt];cr.type==="symbol"&&this.placement.updateLayerOpacities(cr,Dt[cr.source])}return!this.pauseablePlacement.isDone()||this.placement.hasTransitions(i.now())}_releaseSymbolFadeTiles(){for(let R in this.sourceCaches)this.sourceCaches[R].releaseSymbolFadeTiles()}getImages(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.imageManager.getImages(ae.icons);this._updateTilesForChangedImages();let Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,ae.icons),we})}getGlyphs(R,ae){return t._(this,void 0,void 0,function*(){let we=yield this.glyphManager.getGlyphs(ae.stacks),Se=this.sourceCaches[ae.source];return Se&&Se.setDependencies(ae.tileID.key,ae.type,[""]),we})}getGlyphsUrl(){return this.stylesheet.glyphs||null}setGlyphs(R,ae={}){this._checkLoaded(),R&&this._validate(t.u.glyphs,"glyphs",R,null,ae)||(this._glyphsDidChange=!0,this.stylesheet.glyphs=R,this.glyphManager.entries={},this.glyphManager.setURL(R))}addSprite(R,ae,we={},Se){this._checkLoaded();let De=[{id:R,url:ae}],ft=[...b(this.stylesheet.sprite),...De];this._validate(t.u.sprite,"sprite",ft,null,we)||(this.stylesheet.sprite=ft,this._loadSprite(De,!0,Se))}removeSprite(R){this._checkLoaded();let ae=b(this.stylesheet.sprite);if(ae.find(we=>we.id===R)){if(this._spritesImagesIds[R])for(let we of this._spritesImagesIds[R])this.imageManager.removeImage(we),this._changedImages[we]=!0;ae.splice(ae.findIndex(we=>we.id===R),1),this.stylesheet.sprite=ae.length>0?ae:void 0,delete this._spritesImagesIds[R],this._availableImages=this.imageManager.listImages(),this._changed=!0,this.dispatcher.broadcast("SI",this._availableImages),this.fire(new t.k("data",{dataType:"style"}))}else this.fire(new t.j(new Error(`Sprite "${R}" doesn't exists on this map.`)))}getSprite(){return b(this.stylesheet.sprite)}setSprite(R,ae={},we){this._checkLoaded(),R&&this._validate(t.u.sprite,"sprite",R,null,ae)||(this.stylesheet.sprite=R,R?this._loadSprite(R,!0,we):(this._unloadSprite(),we&&we(null)))}}var oa=t.Y([{name:"a_pos",type:"Int16",components:2}]);let ca={prelude:kt(`#ifdef GL_ES
+precision mediump float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+`,`#ifdef GL_ES
+precision highp float;
+#else
+#if !defined(lowp)
+#define lowp
+#endif
+#if !defined(mediump)
+#define mediump
+#endif
+#if !defined(highp)
+#define highp
+#endif
+#endif
+vec2 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
+);}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;}
+#ifdef TERRAIN3D
+uniform sampler2D u_terrain;uniform float u_terrain_dim;uniform mat4 u_terrain_matrix;uniform vec4 u_terrain_unpack;uniform float u_terrain_exaggeration;uniform highp sampler2D u_depth;
+#endif
+const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitShifts=vec4(1.)/bitSh;highp float unpack(highp vec4 color) {return dot(color,bitShifts);}highp float depthOpacity(vec3 frag) {
+#ifdef TERRAIN3D
+highp float d=unpack(texture2D(u_depth,frag.xy*0.5+0.5))+0.0001-frag.z;return 1.0-max(0.0,min(1.0,-d*500.0));
+#else
+return 1.0;
+#endif
+}float calculate_visibility(vec4 pos) {
+#ifdef TERRAIN3D
+vec3 frag=pos.xyz/pos.w;highp float d=depthOpacity(frag);if (d > 0.95) return 1.0;return (d+depthOpacity(frag+vec3(0.0,0.01,0.0)))/2.0;
+#else
+return 1.0;
+#endif
+}float ele(vec2 pos) {
+#ifdef TERRAIN3D
+vec4 rgb=(texture2D(u_terrain,pos)*255.0)*u_terrain_unpack;return rgb.r+rgb.g+rgb.b-u_terrain_unpack.a;
+#else
+return 0.0;
+#endif
+}float get_elevation(vec2 pos) {
+#ifdef TERRAIN3D
+vec2 coord=(u_terrain_matrix*vec4(pos,0.0,1.0)).xy*u_terrain_dim+1.0;vec2 f=fract(coord);vec2 c=(floor(coord)+0.5)/(u_terrain_dim+2.0);float d=1.0/(u_terrain_dim+2.0);float tl=ele(c);float tr=ele(c+vec2(d,0.0));float bl=ele(c+vec2(0.0,d));float br=ele(c+vec2(d,d));float elevation=mix(mix(tl,tr,f.x),mix(bl,br,f.x),f.y);return elevation*u_terrain_exaggeration;
+#else
+return 0.0;
+#endif
+}`),background:kt(`uniform vec4 u_color;uniform float u_opacity;void main() {gl_FragColor=u_color*u_opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"attribute vec2 a_pos;uniform mat4 u_matrix;void main() {gl_Position=u_matrix*vec4(a_pos,0,1);}"),backgroundPattern:kt(`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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);}"),circle:kt(`varying vec3 v_data;varying float v_visibility;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=v_data.xy;float extrude_length=length(extrude);float antialiased_blur=v_data.z;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=v_visibility*opacity_t*mix(color*opacity,stroke_color*stroke_opacity,color_t);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;varying float v_visibility;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define mediump float radius
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define highp vec4 stroke_color
+#pragma mapbox: define mediump float stroke_width
+#pragma mapbox: define lowp float stroke_opacity
+void main(void) {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize mediump float radius
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize highp vec4 stroke_color
+#pragma mapbox: initialize mediump float stroke_width
+#pragma mapbox: initialize lowp float stroke_opacity
+vec2 extrude=vec2(mod(a_pos,2.0)*2.0-1.0);vec2 circle_center=floor(a_pos*0.5);float ele=get_elevation(circle_center);v_visibility=calculate_visibility(u_matrix*vec4(circle_center,ele,1.0));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,ele,1);} else {gl_Position=u_matrix*vec4(circle_center,ele,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;}}float antialiasblur=-max(1.0/u_device_pixel_ratio/(radius+stroke_width),blur);v_data=vec3(extrude.x,extrude.y,antialiasblur);}`),clippingMask:kt("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);}"),heatmap:kt(`uniform highp float u_intensity;varying vec2 v_extrude;
+#pragma mapbox: define highp float weight
+#define GAUSS_COEF 0.3989422804014327
+void main() {
+#pragma mapbox: initialize highp float weight
+float 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#pragma mapbox: define highp float weight
+#pragma mapbox: define mediump float radius
+const highp float ZERO=1.0/255.0/16.0;
+#define GAUSS_COEF 0.3989422804014327
+void main(void) {
+#pragma mapbox: initialize highp float weight
+#pragma mapbox: initialize mediump float radius
+vec2 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,get_elevation(floor(a_pos*0.5)),1);gl_Position=u_matrix*pos;}`),heatmapTexture:kt(`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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(0.0);
+#endif
+}`,"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;}"),collisionBox:kt("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_anchor_pos;attribute vec2 a_placed;attribute vec2 a_box_real;uniform mat4 u_matrix;uniform vec2 u_pixel_extrude_scale;varying float v_placed;varying float v_notUsed;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}void main() {gl_Position=projectTileWithElevation(a_anchor_pos,get_elevation(a_anchor_pos));gl_Position.xy=((a_box_real+0.5)*u_pixel_extrude_scale*2.0-1.0)*vec2(1.0,-1.0)*gl_Position.w;if (gl_Position.z/gl_Position.w < 1.1) {gl_Position.z=0.5;}v_placed=a_placed.x;v_notUsed=a_placed.y;}"),collisionCircle:kt("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);}"),debug:kt("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,get_elevation(a_pos),1);}"),fill:kt(`#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_FragColor=color*opacity;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec2 a_pos;uniform mat4 u_matrix;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);}`),fillOutline:kt(`varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+float dist=length(v_pos-gl_FragCoord.xy);float alpha=1.0-smoothstep(0.0,1.0,dist);gl_FragColor=outline_color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`attribute vec2 a_pos;uniform mat4 u_matrix;uniform vec2 u_world;varying vec2 v_pos;
+#pragma mapbox: define highp vec4 outline_color
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 outline_color
+#pragma mapbox: initialize lowp float opacity
+gl_Position=u_matrix*vec4(a_pos,0,1);v_pos=(gl_Position.xy/gl_Position.w+1.0)/2.0*u_world;}`),fillOutlinePattern:kt(`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;}`),fillPattern:kt(`#ifdef GL_ES
+precision highp float;
+#endif
+uniform vec2 u_texsize;uniform float u_fade;uniform sampler2D u_image;varying vec2 v_pos_a;varying vec2 v_pos_b;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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);}`),fillExtrusion:kt(`varying vec4 v_color;void main() {gl_FragColor=v_color;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#ifdef TERRAIN3D
+attribute vec2 a_centroid;
+#endif
+varying vec4 v_color;
+#pragma mapbox: define highp float base
+#pragma mapbox: define highp float height
+#pragma mapbox: define highp vec4 color
+void main() {
+#pragma mapbox: initialize highp float base
+#pragma mapbox: initialize highp float height
+#pragma mapbox: initialize highp vec4 color
+vec3 normal=a_normal_ed.xyz;
+#ifdef TERRAIN3D
+float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
+#else
+float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
+#endif
+base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;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;}`),fillExtrusionPattern:kt(`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;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;
+#ifdef TERRAIN3D
+attribute vec2 a_centroid;
+#endif
+varying vec2 v_pos_a;varying vec2 v_pos_b;varying vec4 v_lighting;
+#pragma mapbox: define lowp float base
+#pragma mapbox: define lowp float height
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float base
+#pragma mapbox: initialize lowp float height
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+vec2 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;
+#ifdef TERRAIN3D
+float height_terrain3d_offset=get_elevation(a_centroid);float base_terrain3d_offset=height_terrain3d_offset-(base > 0.0 ? 0.0 : 10.0);
+#else
+float height_terrain3d_offset=0.0;float base_terrain3d_offset=0.0;
+#endif
+base=max(0.0,base)+base_terrain3d_offset;height=max(0.0,height)+height_terrain3d_offset;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
+? a_pos
+: 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;}`),hillshadePrepare:kt(`#ifdef GL_ES
+precision highp float;
+#endif
+uniform sampler2D u_image;varying vec2 v_pos;uniform vec2 u_dimension;uniform float u_zoom;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 exaggerationFactor=u_zoom < 2.0 ? 0.4 : u_zoom < 4.5 ? 0.35 : 0.3;float exaggeration=u_zoom < 15.0 ? (u_zoom-15.0)*exaggerationFactor : 0.0;vec2 deriv=vec2((c+f+f+i)-(a+d+d+g),(g+h+h+i)-(a+b+b+c))/pow(2.0,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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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;}"),hillshade:kt(`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;
+#define PI 3.141592653589793
+void 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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;}"),line:kt(`uniform lowp float u_device_pixel_ratio;varying vec2 v_width2;varying vec2 v_normal;varying float v_gamma_scale;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+v_width2=vec2(outset,inset);}`),lineGradient:kt(`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 vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+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);vec4 color=texture2D(u_image,v_uv);gl_FragColor=color*(alpha*opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+attribute vec2 a_pos_normal;attribute vec4 a_data;attribute float a_uv_x;attribute float a_split_index;uniform mat4 u_matrix;uniform mediump float u_ratio;uniform lowp float u_device_pixel_ratio;uniform vec2 u_units_to_pixels;uniform float u_image_height;varying vec2 v_normal;varying vec2 v_width2;varying float v_gamma_scale;varying highp vec2 v_uv;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+float 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;highp float texel_height=1.0/u_image_height;highp float half_texel_height=0.5*texel_height;v_uv=vec2(a_uv_x,a_split_index*texel_height-half_texel_height);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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+v_width2=vec2(outset,inset);}`),linePattern:kt(`#ifdef GL_ES
+precision highp float;
+#endif
+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;
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+vec2 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+#pragma mapbox: define lowp vec4 pattern_from
+#pragma mapbox: define lowp vec4 pattern_to
+#pragma mapbox: define lowp float pixel_ratio_from
+#pragma mapbox: define lowp float pixel_ratio_to
+void main() {
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+#pragma mapbox: initialize mediump vec4 pattern_from
+#pragma mapbox: initialize mediump vec4 pattern_to
+#pragma mapbox: initialize lowp float pixel_ratio_from
+#pragma mapbox: initialize lowp float pixel_ratio_to
+float 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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+v_linesofar=a_linesofar;v_width2=vec2(outset,inset);v_width=floorwidth;}`),lineSDF:kt(`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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+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 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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`
+#define scale 0.015873016
+#define LINE_DISTANCE_SCALE 2.0
+attribute 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;
+#pragma mapbox: define highp vec4 color
+#pragma mapbox: define lowp float blur
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define mediump float gapwidth
+#pragma mapbox: define lowp float offset
+#pragma mapbox: define mediump float width
+#pragma mapbox: define lowp float floorwidth
+void main() {
+#pragma mapbox: initialize highp vec4 color
+#pragma mapbox: initialize lowp float blur
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize mediump float gapwidth
+#pragma mapbox: initialize lowp float offset
+#pragma mapbox: initialize mediump float width
+#pragma mapbox: initialize lowp float floorwidth
+float 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;
+#ifdef TERRAIN3D
+v_gamma_scale=1.0;
+#else
+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;
+#endif
+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);}`),raster:kt(`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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,"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;}"),symbolIcon:kt(`uniform sampler2D u_texture;varying vec2 v_tex;varying float v_fade_opacity;
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+lowp float alpha=opacity*v_fade_opacity;gl_FragColor=texture2D(u_texture,v_tex)*alpha;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec2 v_tex;varying float v_fade_opacity;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define lowp float opacity
+void main() {
+#pragma mapbox: initialize lowp float opacity
+vec2 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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*max(a_minFontScale,fontScale)+a_pxoffset/16.0)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}gl_Position=finalPos;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;float visibility=calculate_visibility(projectedPoint);v_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));}`),symbolSDF:kt(`#define SDF_PX 8.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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 inner_edge=(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);inner_edge=inner_edge+gamma*gamma_scale;}lowp float dist=texture2D(u_texture,tex).a;highp float gamma_scaled=gamma*gamma_scale;highp float alpha=smoothstep(inner_edge-gamma_scaled,inner_edge+gamma_scaled,dist);if (u_is_halo) {lowp float halo_edge=(6.0-halo_width/fontScale)/SDF_PX;alpha=min(smoothstep(halo_edge-gamma_scaled,halo_edge+gamma_scaled,dist),1.0-alpha);}gl_FragColor=color*(alpha*opacity*fade_opacity);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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 bool u_is_along_line;uniform bool u_is_variable_anchor;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_translation;uniform float u_pitched_scale;varying vec2 v_data0;varying vec3 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=u_is_text ? size/24.0 : size;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale+a_pxoffset)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,fade_opacity[0]+fade_change));v_data0=a_tex/u_texsize;v_data1=vec3(gamma_scale,size,interpolated_fade_opacity);}`),symbolTextAndIcon:kt(`#define SDF_PX 8.0
+#define SDF 1.0
+#define ICON 0.0
+uniform 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;
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+float 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;
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+return;}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);
+#ifdef OVERDRAW_INSPECTOR
+gl_FragColor=vec4(1.0);
+#endif
+}`,`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;uniform bool u_is_along_line;uniform bool u_is_variable_anchor;uniform vec2 u_translation;uniform float u_pitched_scale;varying vec4 v_data0;varying vec4 v_data1;vec4 projectTileWithElevation(vec2 posInTile,float elevation) {return u_matrix*vec4(posInTile,elevation,1.0);}
+#pragma mapbox: define highp vec4 fill_color
+#pragma mapbox: define highp vec4 halo_color
+#pragma mapbox: define lowp float opacity
+#pragma mapbox: define lowp float halo_width
+#pragma mapbox: define lowp float halo_blur
+void main() {
+#pragma mapbox: initialize highp vec4 fill_color
+#pragma mapbox: initialize highp vec4 halo_color
+#pragma mapbox: initialize lowp float opacity
+#pragma mapbox: initialize lowp float halo_width
+#pragma mapbox: initialize lowp float halo_blur
+vec2 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;float ele=get_elevation(a_pos);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;}vec2 translated_a_pos=a_pos+u_translation;vec4 projectedPoint=projectTileWithElevation(translated_a_pos,ele);highp float camera_to_anchor_distance=projectedPoint.w;highp float distance_ratio=u_pitch_with_map ?
+camera_to_anchor_distance/u_camera_to_center_distance :
+u_camera_to_center_distance/camera_to_anchor_distance;highp float perspective_ratio=clamp(0.5+0.5*distance_ratio,0.0,4.0);size*=perspective_ratio;float fontScale=size/24.0;highp float symbol_rotation=0.0;if (u_rotate_symbol) {vec4 offsetProjectedPoint=projectTileWithElevation(translated_a_pos+vec2(1,0),ele);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;if (u_is_along_line || u_is_variable_anchor) {projected_pos=vec4(a_projected_pos.xy,ele,1.0);} else if (u_pitch_with_map) {projected_pos=u_label_plane_matrix*vec4(a_projected_pos.xy+u_translation,ele,1.0);} else {projected_pos=u_label_plane_matrix*projectTileWithElevation(a_projected_pos.xy+u_translation,ele);}float z=float(u_pitch_with_map)*projected_pos.z/projected_pos.w;float projectionScaling=1.0;vec4 finalPos=u_coord_matrix*vec4(projected_pos.xy/projected_pos.w+rotation_matrix*(a_offset/32.0*fontScale)*projectionScaling,z,1.0);if(u_pitch_with_map) {finalPos=projectTileWithElevation(finalPos.xy,finalPos.z);}float gamma_scale=finalPos.w;gl_Position=finalPos;vec2 fade_opacity=unpack_opacity(a_fade_opacity);float visibility=calculate_visibility(projectedPoint);float fade_change=fade_opacity[1] > 0.5 ? u_fade_change :-u_fade_change;float interpolated_fade_opacity=max(0.0,min(visibility,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);}`),terrain:kt("uniform sampler2D u_texture;uniform vec4 u_fog_color;uniform vec4 u_horizon_color;uniform float u_fog_ground_blend;uniform float u_fog_ground_blend_opacity;uniform float u_horizon_fog_blend;varying vec2 v_texture_pos;varying float v_fog_depth;const float gamma=2.2;vec4 gammaToLinear(vec4 color) {return pow(color,vec4(gamma));}vec4 linearToGamma(vec4 color) {return pow(color,vec4(1.0/gamma));}void main() {vec4 surface_color=texture2D(u_texture,v_texture_pos);if (v_fog_depth > u_fog_ground_blend) {vec4 surface_color_linear=gammaToLinear(surface_color);float blend_color=smoothstep(0.0,1.0,max((v_fog_depth-u_horizon_fog_blend)/(1.0-u_horizon_fog_blend),0.0));vec4 fog_horizon_color_linear=mix(gammaToLinear(u_fog_color),gammaToLinear(u_horizon_color),blend_color);float factor_fog=max(v_fog_depth-u_fog_ground_blend,0.0)/(1.0-u_fog_ground_blend);gl_FragColor=linearToGamma(mix(surface_color_linear,fog_horizon_color_linear,pow(factor_fog,2.0)*u_fog_ground_blend_opacity));} else {gl_FragColor=surface_color;}}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform mat4 u_fog_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;varying float v_fog_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);vec4 pos=u_fog_matrix*vec4(a_pos3d.xy,ele,1.0);v_fog_depth=pos.z/pos.w*0.5+0.5;}"),terrainDepth:kt("varying float v_depth;const highp vec4 bitSh=vec4(256.*256.*256.,256.*256.,256.,1.);const highp vec4 bitMsk=vec4(0.,vec3(1./256.0));highp vec4 pack(highp float value) {highp vec4 comp=fract(value*bitSh);comp-=comp.xxyz*bitMsk;return comp;}void main() {gl_FragColor=pack(v_depth);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying float v_depth;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);v_depth=gl_Position.z/gl_Position.w;}"),terrainCoords:kt("precision mediump float;uniform sampler2D u_texture;uniform float u_terrain_coords_id;varying vec2 v_texture_pos;void main() {vec4 rgba=texture2D(u_texture,v_texture_pos);gl_FragColor=vec4(rgba.r,rgba.g,rgba.b,u_terrain_coords_id);}","attribute vec3 a_pos3d;uniform mat4 u_matrix;uniform float u_ele_delta;varying vec2 v_texture_pos;void main() {float ele=get_elevation(a_pos3d.xy);float ele_delta=a_pos3d.z==1.0 ? u_ele_delta : 0.0;v_texture_pos=a_pos3d.xy/8192.0;gl_Position=u_matrix*vec4(a_pos3d.xy,ele-ele_delta,1.0);}"),sky:kt("uniform vec4 u_sky_color;uniform vec4 u_horizon_color;uniform float u_horizon;uniform float u_sky_horizon_blend;void main() {float y=gl_FragCoord.y;if (y > u_horizon) {float blend=y-u_horizon;if (blend < u_sky_horizon_blend) {gl_FragColor=mix(u_sky_color,u_horizon_color,pow(1.0-blend/u_sky_horizon_blend,2.0));} else {gl_FragColor=u_sky_color;}}}","attribute vec2 a_pos;void main() {gl_Position=vec4(a_pos,1.0,1.0);}")};function kt(Oe,R){let ae=/#pragma mapbox: ([\w]+) ([\w]+) ([\w]+) ([\w]+)/g,we=R.match(/attribute ([\w]+) ([\w]+)/g),Se=Oe.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),De=R.match(/uniform ([\w]+) ([\w]+)([\s]*)([\w]*)/g),ft=De?De.concat(Se):Se,bt={};return{fragmentSource:Oe=Oe.replace(ae,(Dt,Yt,cr,hr,jr)=>(bt[jr]=!0,Yt==="define"?`
+#ifndef HAS_UNIFORM_u_${jr}
+varying ${cr} ${hr} ${jr};
+#else
+uniform ${cr} ${hr} u_${jr};
+#endif
+`:`
+#ifdef HAS_UNIFORM_u_${jr}
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`)),vertexSource:R=R.replace(ae,(Dt,Yt,cr,hr,jr)=>{let ea=hr==="float"?"vec2":"vec4",qe=jr.match(/color/)?"color":ea;return bt[jr]?Yt==="define"?`
+#ifndef HAS_UNIFORM_u_${jr}
+uniform lowp float u_${jr}_t;
+attribute ${cr} ${ea} a_${jr};
+varying ${cr} ${hr} ${jr};
+#else
+uniform ${cr} ${hr} u_${jr};
+#endif
+`:qe==="vec4"?`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${jr} = a_${jr};
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t);
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`:Yt==="define"?`
+#ifndef HAS_UNIFORM_u_${jr}
+uniform lowp float u_${jr}_t;
+attribute ${cr} ${ea} a_${jr};
+#else
+uniform ${cr} ${hr} u_${jr};
+#endif
+`:qe==="vec4"?`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${cr} ${hr} ${jr} = a_${jr};
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`:`
+#ifndef HAS_UNIFORM_u_${jr}
+ ${cr} ${hr} ${jr} = unpack_mix_${qe}(a_${jr}, u_${jr}_t);
+#else
+ ${cr} ${hr} ${jr} = u_${jr};
+#endif
+`}),staticAttributes:we,staticUniforms:ft}}class ir{constructor(){this.boundProgram=null,this.boundLayoutVertexBuffer=null,this.boundPaintVertexBuffers=[],this.boundIndexBuffer=null,this.boundVertexOffset=null,this.boundDynamicVertexBuffer=null,this.vao=null}bind(R,ae,we,Se,De,ft,bt,Dt,Yt){this.context=R;let cr=this.boundPaintVertexBuffers.length!==Se.length;for(let hr=0;!cr&&hr<Se.length;hr++)this.boundPaintVertexBuffers[hr]!==Se[hr]&&(cr=!0);!this.vao||this.boundProgram!==ae||this.boundLayoutVertexBuffer!==we||cr||this.boundIndexBuffer!==De||this.boundVertexOffset!==ft||this.boundDynamicVertexBuffer!==bt||this.boundDynamicVertexBuffer2!==Dt||this.boundDynamicVertexBuffer3!==Yt?this.freshBind(ae,we,Se,De,ft,bt,Dt,Yt):(R.bindVertexArray.set(this.vao),bt&&bt.bind(),De&&De.dynamicDraw&&De.bind(),Dt&&Dt.bind(),Yt&&Yt.bind())}freshBind(R,ae,we,Se,De,ft,bt,Dt){let Yt=R.numAttributes,cr=this.context,hr=cr.gl;this.vao&&this.destroy(),this.vao=cr.createVertexArray(),cr.bindVertexArray.set(this.vao),this.boundProgram=R,this.boundLayoutVertexBuffer=ae,this.boundPaintVertexBuffers=we,this.boundIndexBuffer=Se,this.boundVertexOffset=De,this.boundDynamicVertexBuffer=ft,this.boundDynamicVertexBuffer2=bt,this.boundDynamicVertexBuffer3=Dt,ae.enableAttributes(hr,R);for(let jr of we)jr.enableAttributes(hr,R);ft&&ft.enableAttributes(hr,R),bt&&bt.enableAttributes(hr,R),Dt&&Dt.enableAttributes(hr,R),ae.bind(),ae.setVertexAttribPointers(hr,R,De);for(let jr of we)jr.bind(),jr.setVertexAttribPointers(hr,R,De);ft&&(ft.bind(),ft.setVertexAttribPointers(hr,R,De)),Se&&Se.bind(),bt&&(bt.bind(),bt.setVertexAttribPointers(hr,R,De)),Dt&&(Dt.bind(),Dt.setVertexAttribPointers(hr,R,De)),cr.currentNumAttributes=Yt}destroy(){this.vao&&(this.context.deleteVertexArray(this.vao),this.vao=null)}}let mr=(Oe,R,ae,we,Se)=>({u_matrix:Oe,u_texture:0,u_ele_delta:R,u_fog_matrix:ae,u_fog_color:we?we.properties.get("fog-color"):t.aM.white,u_fog_ground_blend:we?we.properties.get("fog-ground-blend"):1,u_fog_ground_blend_opacity:we?we.calculateFogBlendOpacity(Se):0,u_horizon_color:we?we.properties.get("horizon-color"):t.aM.white,u_horizon_fog_blend:we?we.properties.get("horizon-fog-blend"):1});function $r(Oe){let R=[];for(let ae=0;ae<Oe.length;ae++){if(Oe[ae]===null)continue;let we=Oe[ae].split(" ");R.push(we.pop())}return R}class ma{constructor(R,ae,we,Se,De,ft){let bt=R.gl;this.program=bt.createProgram();let Dt=$r(ae.staticAttributes),Yt=we?we.getBinderAttributes():[],cr=Dt.concat(Yt),hr=ca.prelude.staticUniforms?$r(ca.prelude.staticUniforms):[],jr=ae.staticUniforms?$r(ae.staticUniforms):[],ea=we?we.getBinderUniforms():[],qe=hr.concat(jr).concat(ea),Je=[];for(let nr of qe)Je.indexOf(nr)<0&&Je.push(nr);let ot=we?we.defines():[];De&&ot.push("#define OVERDRAW_INSPECTOR;"),ft&&ot.push("#define TERRAIN3D;");let ht=ot.concat(ca.prelude.fragmentSource,ae.fragmentSource).join(`
+`),At=ot.concat(ca.prelude.vertexSource,ae.vertexSource).join(`
+`),_t=bt.createShader(bt.FRAGMENT_SHADER);if(bt.isContextLost())return void(this.failedToCreate=!0);if(bt.shaderSource(_t,ht),bt.compileShader(_t),!bt.getShaderParameter(_t,bt.COMPILE_STATUS))throw new Error(`Could not compile fragment shader: ${bt.getShaderInfoLog(_t)}`);bt.attachShader(this.program,_t);let Pt=bt.createShader(bt.VERTEX_SHADER);if(bt.isContextLost())return void(this.failedToCreate=!0);if(bt.shaderSource(Pt,At),bt.compileShader(Pt),!bt.getShaderParameter(Pt,bt.COMPILE_STATUS))throw new Error(`Could not compile vertex shader: ${bt.getShaderInfoLog(Pt)}`);bt.attachShader(this.program,Pt),this.attributes={};let er={};this.numAttributes=cr.length;for(let nr=0;nr<this.numAttributes;nr++)cr[nr]&&(bt.bindAttribLocation(this.program,nr,cr[nr]),this.attributes[cr[nr]]=nr);if(bt.linkProgram(this.program),!bt.getProgramParameter(this.program,bt.LINK_STATUS))throw new Error(`Program failed to link: ${bt.getProgramInfoLog(this.program)}`);bt.deleteShader(Pt),bt.deleteShader(_t);for(let nr=0;nr<Je.length;nr++){let pr=Je[nr];if(pr&&!er[pr]){let Sr=bt.getUniformLocation(this.program,pr);Sr&&(er[pr]=Sr)}}this.fixedUniforms=Se(R,er),this.terrainUniforms=((nr,pr)=>({u_depth:new t.aH(nr,pr.u_depth),u_terrain:new t.aH(nr,pr.u_terrain),u_terrain_dim:new t.aI(nr,pr.u_terrain_dim),u_terrain_matrix:new t.aJ(nr,pr.u_terrain_matrix),u_terrain_unpack:new t.aK(nr,pr.u_terrain_unpack),u_terrain_exaggeration:new t.aI(nr,pr.u_terrain_exaggeration)}))(R,er),this.binderUniforms=we?we.getUniforms(R,er):[]}draw(R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe,Je,ot,ht,At){let _t=R.gl;if(this.failedToCreate)return;if(R.program.set(this.program),R.setDepthMode(we),R.setStencilMode(Se),R.setColorMode(De),R.setCullFace(ft),Dt){R.activeTexture.set(_t.TEXTURE2),_t.bindTexture(_t.TEXTURE_2D,Dt.depthTexture),R.activeTexture.set(_t.TEXTURE3),_t.bindTexture(_t.TEXTURE_2D,Dt.texture);for(let er in this.terrainUniforms)this.terrainUniforms[er].set(Dt[er])}for(let er in this.fixedUniforms)this.fixedUniforms[er].set(bt[er]);Je&&Je.setUniforms(R,this.binderUniforms,ea,{zoom:qe});let Pt=0;switch(ae){case _t.LINES:Pt=2;break;case _t.TRIANGLES:Pt=3;break;case _t.LINE_STRIP:Pt=1}for(let er of jr.get()){let nr=er.vaos||(er.vaos={});(nr[Yt]||(nr[Yt]=new ir)).bind(R,this,cr,Je?Je.getPaintVertexBuffers():[],hr,er.vertexOffset,ot,ht,At),_t.drawElements(ae,er.primitiveLength*Pt,_t.UNSIGNED_SHORT,er.primitiveOffset*Pt*2)}}}function Ba(Oe,R,ae){let we=1/Aa(ae,1,R.transform.tileZoom),Se=Math.pow(2,ae.tileID.overscaledZ),De=ae.tileSize*Math.pow(2,R.transform.tileZoom)/Se,ft=De*(ae.tileID.canonical.x+ae.tileID.wrap*Se),bt=De*ae.tileID.canonical.y;return{u_image:0,u_texsize:ae.imageAtlasTexture.size,u_scale:[we,Oe.fromScale,Oe.toScale],u_fade:Oe.t,u_pixel_coord_upper:[ft>>16,bt>>16],u_pixel_coord_lower:[65535&ft,65535&bt]}}let Ca=(Oe,R,ae,we)=>{let Se=R.style.light,De=Se.properties.get("position"),ft=[De.x,De.y,De.z],bt=function(){var Yt=new t.A(9);return t.A!=Float32Array&&(Yt[1]=0,Yt[2]=0,Yt[3]=0,Yt[5]=0,Yt[6]=0,Yt[7]=0),Yt[0]=1,Yt[4]=1,Yt[8]=1,Yt}();Se.properties.get("anchor")==="viewport"&&function(Yt,cr){var hr=Math.sin(cr),jr=Math.cos(cr);Yt[0]=jr,Yt[1]=hr,Yt[2]=0,Yt[3]=-hr,Yt[4]=jr,Yt[5]=0,Yt[6]=0,Yt[7]=0,Yt[8]=1}(bt,-R.transform.angle),function(Yt,cr,hr){var jr=cr[0],ea=cr[1],qe=cr[2];Yt[0]=jr*hr[0]+ea*hr[3]+qe*hr[6],Yt[1]=jr*hr[1]+ea*hr[4]+qe*hr[7],Yt[2]=jr*hr[2]+ea*hr[5]+qe*hr[8]}(ft,ft,bt);let Dt=Se.properties.get("color");return{u_matrix:Oe,u_lightpos:ft,u_lightintensity:Se.properties.get("intensity"),u_lightcolor:[Dt.r,Dt.g,Dt.b],u_vertical_gradient:+ae,u_opacity:we}},da=(Oe,R,ae,we,Se,De,ft)=>t.e(Ca(Oe,R,ae,we),Ba(De,R,ft),{u_height_factor:-Math.pow(2,Se.overscaledZ)/ft.tileSize/8}),Sa=Oe=>({u_matrix:Oe}),Ti=(Oe,R,ae,we)=>t.e(Sa(Oe),Ba(ae,R,we)),ai=(Oe,R)=>({u_matrix:Oe,u_world:R}),an=(Oe,R,ae,we,Se)=>t.e(Ti(Oe,R,ae,we),{u_world:Se}),sn=(Oe,R,ae,we)=>{let Se=Oe.transform,De,ft;if(we.paint.get("circle-pitch-alignment")==="map"){let bt=Aa(ae,1,Se.zoom);De=!0,ft=[bt,bt]}else De=!1,ft=Se.pixelsToGLUnits;return{u_camera_to_center_distance:Se.cameraToCenterDistance,u_scale_with_map:+(we.paint.get("circle-pitch-scale")==="map"),u_matrix:Oe.translatePosMatrix(R.posMatrix,ae,we.paint.get("circle-translate"),we.paint.get("circle-translate-anchor")),u_pitch_with_map:+De,u_device_pixel_ratio:Oe.pixelRatio,u_extrude_scale:ft}},Mn=(Oe,R,ae)=>({u_matrix:Oe,u_inv_matrix:R,u_camera_to_center_distance:ae.cameraToCenterDistance,u_viewport_size:[ae.width,ae.height]}),On=(Oe,R,ae=1)=>({u_matrix:Oe,u_color:R,u_overlay:0,u_overlay_scale:ae}),$n=Oe=>({u_matrix:Oe}),Cn=(Oe,R,ae,we)=>({u_matrix:Oe,u_extrude_scale:Aa(R,1,ae),u_intensity:we}),Lo=(Oe,R,ae,we)=>{let Se=t.H();t.aP(Se,0,Oe.width,Oe.height,0,0,1);let De=Oe.context.gl;return{u_matrix:Se,u_world:[De.drawingBufferWidth,De.drawingBufferHeight],u_image:ae,u_color_ramp:we,u_opacity:R.paint.get("heatmap-opacity")}};function Xi(Oe,R){let ae=Math.pow(2,R.canonical.z),we=R.canonical.y;return[new t.Z(0,we/ae).toLngLat().lat,new t.Z(0,(we+1)/ae).toLngLat().lat]}let Jo=(Oe,R,ae,we)=>{let Se=Oe.transform;return{u_matrix:In(Oe,R,ae,we),u_ratio:1/Aa(R,1,Se.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_units_to_pixels:[1/Se.pixelsToGLUnits[0],1/Se.pixelsToGLUnits[1]]}},zo=(Oe,R,ae,we,Se)=>t.e(Jo(Oe,R,ae,Se),{u_image:0,u_image_height:we}),as=(Oe,R,ae,we,Se)=>{let De=Oe.transform,ft=go(R,De);return{u_matrix:In(Oe,R,ae,Se),u_texsize:R.imageAtlasTexture.size,u_ratio:1/Aa(R,1,De.zoom),u_device_pixel_ratio:Oe.pixelRatio,u_image:0,u_scale:[ft,we.fromScale,we.toScale],u_fade:we.t,u_units_to_pixels:[1/De.pixelsToGLUnits[0],1/De.pixelsToGLUnits[1]]}},Pn=(Oe,R,ae,we,Se,De)=>{let ft=Oe.lineAtlas,bt=go(R,Oe.transform),Dt=ae.layout.get("line-cap")==="round",Yt=ft.getDash(we.from,Dt),cr=ft.getDash(we.to,Dt),hr=Yt.width*Se.fromScale,jr=cr.width*Se.toScale;return t.e(Jo(Oe,R,ae,De),{u_patternscale_a:[bt/hr,-Yt.height/2],u_patternscale_b:[bt/jr,-cr.height/2],u_sdfgamma:ft.width/(256*Math.min(hr,jr)*Oe.pixelRatio)/2,u_image:0,u_tex_y_a:Yt.y,u_tex_y_b:cr.y,u_mix:Se.t})};function go(Oe,R){return 1/Aa(Oe,1,R.tileZoom)}function In(Oe,R,ae,we){return Oe.translatePosMatrix(we?we.posMatrix:R.tileID.posMatrix,R,ae.paint.get("line-translate"),ae.paint.get("line-translate-anchor"))}let Do=(Oe,R,ae,we,Se)=>{return{u_matrix:Oe,u_tl_parent:R,u_scale_parent:ae,u_buffer_scale:1,u_fade_t:we.mix,u_opacity:we.opacity*Se.paint.get("raster-opacity"),u_image0:0,u_image1:1,u_brightness_low:Se.paint.get("raster-brightness-min"),u_brightness_high:Se.paint.get("raster-brightness-max"),u_saturation_factor:(ft=Se.paint.get("raster-saturation"),ft>0?1-1/(1.001-ft):-ft),u_contrast_factor:(De=Se.paint.get("raster-contrast"),De>0?1/(1-De):1+De),u_spin_weights:Ho(Se.paint.get("raster-hue-rotate"))};var De,ft};function Ho(Oe){Oe*=Math.PI/180;let R=Math.sin(Oe),ae=Math.cos(Oe);return[(2*ae+1)/3,(-Math.sqrt(3)*R-ae+1)/3,(Math.sqrt(3)*R-ae+1)/3]}let Qo=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>{let qe=ft.transform;return{u_is_size_zoom_constant:+(Oe==="constant"||Oe==="source"),u_is_size_feature_constant:+(Oe==="constant"||Oe==="camera"),u_size_t:R?R.uSizeT:0,u_size:R?R.uSize:0,u_camera_to_center_distance:qe.cameraToCenterDistance,u_pitch:qe.pitch/360*2*Math.PI,u_rotate_symbol:+ae,u_aspect_ratio:qe.width/qe.height,u_fade_change:ft.options.fadeDuration?ft.symbolFadeChange:1,u_matrix:bt,u_label_plane_matrix:Dt,u_coord_matrix:Yt,u_is_text:+hr,u_pitch_with_map:+we,u_is_along_line:Se,u_is_variable_anchor:De,u_texsize:jr,u_texture:0,u_translation:cr,u_pitched_scale:ea}},Xn=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea,qe)=>{let Je=ft.transform;return t.e(Qo(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,qe),{u_gamma_scale:we?Math.cos(Je._pitch)*Je.cameraToCenterDistance:1,u_device_pixel_ratio:ft.pixelRatio,u_is_halo:+ea})},po=(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea)=>t.e(Xn(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,!0,hr,!0,ea),{u_texsize_icon:jr,u_texture_icon:1}),ys=(Oe,R,ae)=>({u_matrix:Oe,u_opacity:R,u_color:ae}),Is=(Oe,R,ae,we,Se,De)=>t.e(function(ft,bt,Dt,Yt){let cr=Dt.imageManager.getPattern(ft.from.toString()),hr=Dt.imageManager.getPattern(ft.to.toString()),{width:jr,height:ea}=Dt.imageManager.getPixelSize(),qe=Math.pow(2,Yt.tileID.overscaledZ),Je=Yt.tileSize*Math.pow(2,Dt.transform.tileZoom)/qe,ot=Je*(Yt.tileID.canonical.x+Yt.tileID.wrap*qe),ht=Je*Yt.tileID.canonical.y;return{u_image:0,u_pattern_tl_a:cr.tl,u_pattern_br_a:cr.br,u_pattern_tl_b:hr.tl,u_pattern_br_b:hr.br,u_texsize:[jr,ea],u_mix:bt.t,u_pattern_size_a:cr.displaySize,u_pattern_size_b:hr.displaySize,u_scale_a:bt.fromScale,u_scale_b:bt.toScale,u_tile_units_to_pixels:1/Aa(Yt,1,Dt.transform.tileZoom),u_pixel_coord_upper:[ot>>16,ht>>16],u_pixel_coord_lower:[65535&ot,65535&ht]}}(we,De,ae,Se),{u_matrix:Oe,u_opacity:R}),Fs={fillExtrusion:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_opacity:new t.aI(Oe,R.u_opacity)}),fillExtrusionPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_lightpos:new t.aN(Oe,R.u_lightpos),u_lightintensity:new t.aI(Oe,R.u_lightintensity),u_lightcolor:new t.aN(Oe,R.u_lightcolor),u_vertical_gradient:new t.aI(Oe,R.u_vertical_gradient),u_height_factor:new t.aI(Oe,R.u_height_factor),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade),u_opacity:new t.aI(Oe,R.u_opacity)}),fill:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),fillPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),fillOutline:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world)}),fillOutlinePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_texsize:new t.aO(Oe,R.u_texsize),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),circle:(Oe,R)=>({u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_scale_with_map:new t.aH(Oe,R.u_scale_with_map),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_extrude_scale:new t.aO(Oe,R.u_extrude_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_matrix:new t.aJ(Oe,R.u_matrix)}),collisionBox:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_pixel_extrude_scale:new t.aO(Oe,R.u_pixel_extrude_scale)}),collisionCircle:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_inv_matrix:new t.aJ(Oe,R.u_inv_matrix),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_viewport_size:new t.aO(Oe,R.u_viewport_size)}),debug:(Oe,R)=>({u_color:new t.aL(Oe,R.u_color),u_matrix:new t.aJ(Oe,R.u_matrix),u_overlay:new t.aH(Oe,R.u_overlay),u_overlay_scale:new t.aI(Oe,R.u_overlay_scale)}),clippingMask:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmap:(Oe,R)=>({u_extrude_scale:new t.aI(Oe,R.u_extrude_scale),u_intensity:new t.aI(Oe,R.u_intensity),u_matrix:new t.aJ(Oe,R.u_matrix)}),heatmapTexture:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_world:new t.aO(Oe,R.u_world),u_image:new t.aH(Oe,R.u_image),u_color_ramp:new t.aH(Oe,R.u_color_ramp),u_opacity:new t.aI(Oe,R.u_opacity)}),hillshade:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_latrange:new t.aO(Oe,R.u_latrange),u_light:new t.aO(Oe,R.u_light),u_shadow:new t.aL(Oe,R.u_shadow),u_highlight:new t.aL(Oe,R.u_highlight),u_accent:new t.aL(Oe,R.u_accent)}),hillshadePrepare:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_image:new t.aH(Oe,R.u_image),u_dimension:new t.aO(Oe,R.u_dimension),u_zoom:new t.aI(Oe,R.u_zoom),u_unpack:new t.aK(Oe,R.u_unpack)}),line:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels)}),lineGradient:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_image:new t.aH(Oe,R.u_image),u_image_height:new t.aI(Oe,R.u_image_height)}),linePattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texsize:new t.aO(Oe,R.u_texsize),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_image:new t.aH(Oe,R.u_image),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_scale:new t.aN(Oe,R.u_scale),u_fade:new t.aI(Oe,R.u_fade)}),lineSDF:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ratio:new t.aI(Oe,R.u_ratio),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_units_to_pixels:new t.aO(Oe,R.u_units_to_pixels),u_patternscale_a:new t.aO(Oe,R.u_patternscale_a),u_patternscale_b:new t.aO(Oe,R.u_patternscale_b),u_sdfgamma:new t.aI(Oe,R.u_sdfgamma),u_image:new t.aH(Oe,R.u_image),u_tex_y_a:new t.aI(Oe,R.u_tex_y_a),u_tex_y_b:new t.aI(Oe,R.u_tex_y_b),u_mix:new t.aI(Oe,R.u_mix)}),raster:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_tl_parent:new t.aO(Oe,R.u_tl_parent),u_scale_parent:new t.aI(Oe,R.u_scale_parent),u_buffer_scale:new t.aI(Oe,R.u_buffer_scale),u_fade_t:new t.aI(Oe,R.u_fade_t),u_opacity:new t.aI(Oe,R.u_opacity),u_image0:new t.aH(Oe,R.u_image0),u_image1:new t.aH(Oe,R.u_image1),u_brightness_low:new t.aI(Oe,R.u_brightness_low),u_brightness_high:new t.aI(Oe,R.u_brightness_high),u_saturation_factor:new t.aI(Oe,R.u_saturation_factor),u_contrast_factor:new t.aI(Oe,R.u_contrast_factor),u_spin_weights:new t.aN(Oe,R.u_spin_weights)}),symbolIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolSDF:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texture:new t.aH(Oe,R.u_texture),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),symbolTextAndIcon:(Oe,R)=>({u_is_size_zoom_constant:new t.aH(Oe,R.u_is_size_zoom_constant),u_is_size_feature_constant:new t.aH(Oe,R.u_is_size_feature_constant),u_size_t:new t.aI(Oe,R.u_size_t),u_size:new t.aI(Oe,R.u_size),u_camera_to_center_distance:new t.aI(Oe,R.u_camera_to_center_distance),u_pitch:new t.aI(Oe,R.u_pitch),u_rotate_symbol:new t.aH(Oe,R.u_rotate_symbol),u_aspect_ratio:new t.aI(Oe,R.u_aspect_ratio),u_fade_change:new t.aI(Oe,R.u_fade_change),u_matrix:new t.aJ(Oe,R.u_matrix),u_label_plane_matrix:new t.aJ(Oe,R.u_label_plane_matrix),u_coord_matrix:new t.aJ(Oe,R.u_coord_matrix),u_is_text:new t.aH(Oe,R.u_is_text),u_pitch_with_map:new t.aH(Oe,R.u_pitch_with_map),u_is_along_line:new t.aH(Oe,R.u_is_along_line),u_is_variable_anchor:new t.aH(Oe,R.u_is_variable_anchor),u_texsize:new t.aO(Oe,R.u_texsize),u_texsize_icon:new t.aO(Oe,R.u_texsize_icon),u_texture:new t.aH(Oe,R.u_texture),u_texture_icon:new t.aH(Oe,R.u_texture_icon),u_gamma_scale:new t.aI(Oe,R.u_gamma_scale),u_device_pixel_ratio:new t.aI(Oe,R.u_device_pixel_ratio),u_is_halo:new t.aH(Oe,R.u_is_halo),u_translation:new t.aO(Oe,R.u_translation),u_pitched_scale:new t.aI(Oe,R.u_pitched_scale)}),background:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_color:new t.aL(Oe,R.u_color)}),backgroundPattern:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_opacity:new t.aI(Oe,R.u_opacity),u_image:new t.aH(Oe,R.u_image),u_pattern_tl_a:new t.aO(Oe,R.u_pattern_tl_a),u_pattern_br_a:new t.aO(Oe,R.u_pattern_br_a),u_pattern_tl_b:new t.aO(Oe,R.u_pattern_tl_b),u_pattern_br_b:new t.aO(Oe,R.u_pattern_br_b),u_texsize:new t.aO(Oe,R.u_texsize),u_mix:new t.aI(Oe,R.u_mix),u_pattern_size_a:new t.aO(Oe,R.u_pattern_size_a),u_pattern_size_b:new t.aO(Oe,R.u_pattern_size_b),u_scale_a:new t.aI(Oe,R.u_scale_a),u_scale_b:new t.aI(Oe,R.u_scale_b),u_pixel_coord_upper:new t.aO(Oe,R.u_pixel_coord_upper),u_pixel_coord_lower:new t.aO(Oe,R.u_pixel_coord_lower),u_tile_units_to_pixels:new t.aI(Oe,R.u_tile_units_to_pixels)}),terrain:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_ele_delta:new t.aI(Oe,R.u_ele_delta),u_fog_matrix:new t.aJ(Oe,R.u_fog_matrix),u_fog_color:new t.aL(Oe,R.u_fog_color),u_fog_ground_blend:new t.aI(Oe,R.u_fog_ground_blend),u_fog_ground_blend_opacity:new t.aI(Oe,R.u_fog_ground_blend_opacity),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon_fog_blend:new t.aI(Oe,R.u_horizon_fog_blend)}),terrainDepth:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),terrainCoords:(Oe,R)=>({u_matrix:new t.aJ(Oe,R.u_matrix),u_texture:new t.aH(Oe,R.u_texture),u_terrain_coords_id:new t.aI(Oe,R.u_terrain_coords_id),u_ele_delta:new t.aI(Oe,R.u_ele_delta)}),sky:(Oe,R)=>({u_sky_color:new t.aL(Oe,R.u_sky_color),u_horizon_color:new t.aL(Oe,R.u_horizon_color),u_horizon:new t.aI(Oe,R.u_horizon),u_sky_horizon_blend:new t.aI(Oe,R.u_sky_horizon_blend)})};class $o{constructor(R,ae,we){this.context=R;let Se=R.gl;this.buffer=Se.createBuffer(),this.dynamicDraw=!!we,this.context.unbindVAO(),R.bindElementBuffer.set(this.buffer),Se.bufferData(Se.ELEMENT_ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?Se.DYNAMIC_DRAW:Se.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindElementBuffer.set(this.buffer)}updateData(R){let ae=this.context.gl;if(!this.dynamicDraw)throw new Error("Attempted to update data while not in dynamic mode.");this.context.unbindVAO(),this.bind(),ae.bufferSubData(ae.ELEMENT_ARRAY_BUFFER,0,R.arrayBuffer)}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let fi={Int8:"BYTE",Uint8:"UNSIGNED_BYTE",Int16:"SHORT",Uint16:"UNSIGNED_SHORT",Int32:"INT",Uint32:"UNSIGNED_INT",Float32:"FLOAT"};class mn{constructor(R,ae,we,Se){this.length=ae.length,this.attributes=we,this.itemSize=ae.bytesPerElement,this.dynamicDraw=Se,this.context=R;let De=R.gl;this.buffer=De.createBuffer(),R.bindVertexBuffer.set(this.buffer),De.bufferData(De.ARRAY_BUFFER,ae.arrayBuffer,this.dynamicDraw?De.DYNAMIC_DRAW:De.STATIC_DRAW),this.dynamicDraw||delete ae.arrayBuffer}bind(){this.context.bindVertexBuffer.set(this.buffer)}updateData(R){if(R.length!==this.length)throw new Error(`Length of new data is ${R.length}, which doesn't match current length of ${this.length}`);let ae=this.context.gl;this.bind(),ae.bufferSubData(ae.ARRAY_BUFFER,0,R.arrayBuffer)}enableAttributes(R,ae){for(let we=0;we<this.attributes.length;we++){let Se=ae.attributes[this.attributes[we].name];Se!==void 0&&R.enableVertexAttribArray(Se)}}setVertexAttribPointers(R,ae,we){for(let Se=0;Se<this.attributes.length;Se++){let De=this.attributes[Se],ft=ae.attributes[De.name];ft!==void 0&&R.vertexAttribPointer(ft,De.components,R[fi[De.type]],!1,this.itemSize,De.offset+this.itemSize*(we||0))}}destroy(){this.buffer&&(this.context.gl.deleteBuffer(this.buffer),delete this.buffer)}}let ol=new WeakMap;function Os(Oe){var R;if(ol.has(Oe))return ol.get(Oe);{let ae=(R=Oe.getParameter(Oe.VERSION))===null||R===void 0?void 0:R.startsWith("WebGL 2.0");return ol.set(Oe,ae),ae}}class so{constructor(R){this.gl=R.gl,this.default=this.getDefault(),this.current=this.default,this.dirty=!1}get(){return this.current}set(R){}getDefault(){return this.default}setDefault(){this.set(this.default)}}class Ns extends so{getDefault(){return t.aM.transparent}set(R){let ae=this.current;(R.r!==ae.r||R.g!==ae.g||R.b!==ae.b||R.a!==ae.a||this.dirty)&&(this.gl.clearColor(R.r,R.g,R.b,R.a),this.current=R,this.dirty=!1)}}class fs extends so{getDefault(){return 1}set(R){(R!==this.current||this.dirty)&&(this.gl.clearDepth(R),this.current=R,this.dirty=!1)}}class al extends so{getDefault(){return 0}set(R){(R!==this.current||this.dirty)&&(this.gl.clearStencil(R),this.current=R,this.dirty=!1)}}class vl extends so{getDefault(){return[!0,!0,!0,!0]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||R[3]!==ae[3]||this.dirty)&&(this.gl.colorMask(R[0],R[1],R[2],R[3]),this.current=R,this.dirty=!1)}}class ji extends so{getDefault(){return!0}set(R){(R!==this.current||this.dirty)&&(this.gl.depthMask(R),this.current=R,this.dirty=!1)}}class To extends so{getDefault(){return 255}set(R){(R!==this.current||this.dirty)&&(this.gl.stencilMask(R),this.current=R,this.dirty=!1)}}class Yn extends so{getDefault(){return{func:this.gl.ALWAYS,ref:0,mask:255}}set(R){let ae=this.current;(R.func!==ae.func||R.ref!==ae.ref||R.mask!==ae.mask||this.dirty)&&(this.gl.stencilFunc(R.func,R.ref,R.mask),this.current=R,this.dirty=!1)}}class _s extends so{getDefault(){let R=this.gl;return[R.KEEP,R.KEEP,R.KEEP]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||this.dirty)&&(this.gl.stencilOp(R[0],R[1],R[2]),this.current=R,this.dirty=!1)}}class Yo extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.STENCIL_TEST):ae.disable(ae.STENCIL_TEST),this.current=R,this.dirty=!1}}class Nn extends so{getDefault(){return[0,1]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||this.dirty)&&(this.gl.depthRange(R[0],R[1]),this.current=R,this.dirty=!1)}}class Wl extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.DEPTH_TEST):ae.disable(ae.DEPTH_TEST),this.current=R,this.dirty=!1}}class Zu extends so{getDefault(){return this.gl.LESS}set(R){(R!==this.current||this.dirty)&&(this.gl.depthFunc(R),this.current=R,this.dirty=!1)}}class ml extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.BLEND):ae.disable(ae.BLEND),this.current=R,this.dirty=!1}}class Bu extends so{getDefault(){let R=this.gl;return[R.ONE,R.ZERO]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||this.dirty)&&(this.gl.blendFunc(R[0],R[1]),this.current=R,this.dirty=!1)}}class El extends so{getDefault(){return t.aM.transparent}set(R){let ae=this.current;(R.r!==ae.r||R.g!==ae.g||R.b!==ae.b||R.a!==ae.a||this.dirty)&&(this.gl.blendColor(R.r,R.g,R.b,R.a),this.current=R,this.dirty=!1)}}class qs extends so{getDefault(){return this.gl.FUNC_ADD}set(R){(R!==this.current||this.dirty)&&(this.gl.blendEquation(R),this.current=R,this.dirty=!1)}}class Jl extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;R?ae.enable(ae.CULL_FACE):ae.disable(ae.CULL_FACE),this.current=R,this.dirty=!1}}class Nu extends so{getDefault(){return this.gl.BACK}set(R){(R!==this.current||this.dirty)&&(this.gl.cullFace(R),this.current=R,this.dirty=!1)}}class Ic extends so{getDefault(){return this.gl.CCW}set(R){(R!==this.current||this.dirty)&&(this.gl.frontFace(R),this.current=R,this.dirty=!1)}}class Xu extends so{getDefault(){return null}set(R){(R!==this.current||this.dirty)&&(this.gl.useProgram(R),this.current=R,this.dirty=!1)}}class Th extends so{getDefault(){return this.gl.TEXTURE0}set(R){(R!==this.current||this.dirty)&&(this.gl.activeTexture(R),this.current=R,this.dirty=!1)}}class bf extends so{getDefault(){let R=this.gl;return[0,0,R.drawingBufferWidth,R.drawingBufferHeight]}set(R){let ae=this.current;(R[0]!==ae[0]||R[1]!==ae[1]||R[2]!==ae[2]||R[3]!==ae[3]||this.dirty)&&(this.gl.viewport(R[0],R[1],R[2],R[3]),this.current=R,this.dirty=!1)}}class Rs extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindFramebuffer(ae.FRAMEBUFFER,R),this.current=R,this.dirty=!1}}class Yc extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindRenderbuffer(ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class If extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindTexture(ae.TEXTURE_2D,R),this.current=R,this.dirty=!1}}class Zl extends so{getDefault(){return null}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.bindBuffer(ae.ARRAY_BUFFER,R),this.current=R,this.dirty=!1}}class yl extends so{getDefault(){return null}set(R){let ae=this.gl;ae.bindBuffer(ae.ELEMENT_ARRAY_BUFFER,R),this.current=R,this.dirty=!1}}class oc extends so{getDefault(){return null}set(R){var ae;if(R===this.current&&!this.dirty)return;let we=this.gl;Os(we)?we.bindVertexArray(R):(ae=we.getExtension("OES_vertex_array_object"))===null||ae===void 0||ae.bindVertexArrayOES(R),this.current=R,this.dirty=!1}}class _c extends so{getDefault(){return 4}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_ALIGNMENT,R),this.current=R,this.dirty=!1}}class Zs extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_PREMULTIPLY_ALPHA_WEBGL,R),this.current=R,this.dirty=!1}}class _l extends so{getDefault(){return!1}set(R){if(R===this.current&&!this.dirty)return;let ae=this.gl;ae.pixelStorei(ae.UNPACK_FLIP_Y_WEBGL,R),this.current=R,this.dirty=!1}}class Bs extends so{constructor(R,ae){super(R),this.context=R,this.parent=ae}getDefault(){return null}}class $s extends Bs{setDirty(){this.dirty=!0}set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferTexture2D(ae.FRAMEBUFFER,ae.COLOR_ATTACHMENT0,ae.TEXTURE_2D,R,0),this.current=R,this.dirty=!1}}class sc extends Bs{set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferRenderbuffer(ae.FRAMEBUFFER,ae.DEPTH_ATTACHMENT,ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class zl extends Bs{set(R){if(R===this.current&&!this.dirty)return;this.context.bindFramebuffer.set(this.parent);let ae=this.gl;ae.framebufferRenderbuffer(ae.FRAMEBUFFER,ae.DEPTH_STENCIL_ATTACHMENT,ae.RENDERBUFFER,R),this.current=R,this.dirty=!1}}class Yu{constructor(R,ae,we,Se,De){this.context=R,this.width=ae,this.height=we;let ft=R.gl,bt=this.framebuffer=ft.createFramebuffer();if(this.colorAttachment=new $s(R,bt),Se)this.depthAttachment=De?new zl(R,bt):new sc(R,bt);else if(De)throw new Error("Stencil cannot be set without depth");if(ft.checkFramebufferStatus(ft.FRAMEBUFFER)!==ft.FRAMEBUFFER_COMPLETE)throw new Error("Framebuffer is not complete")}destroy(){let R=this.context.gl,ae=this.colorAttachment.get();if(ae&&R.deleteTexture(ae),this.depthAttachment){let we=this.depthAttachment.get();we&&R.deleteRenderbuffer(we)}R.deleteFramebuffer(this.framebuffer)}}class Qs{constructor(R,ae,we){this.blendFunction=R,this.blendColor=ae,this.mask=we}}Qs.Replace=[1,0],Qs.disabled=new Qs(Qs.Replace,t.aM.transparent,[!1,!1,!1,!1]),Qs.unblended=new Qs(Qs.Replace,t.aM.transparent,[!0,!0,!0,!0]),Qs.alphaBlended=new Qs([1,771],t.aM.transparent,[!0,!0,!0,!0]);class fp{constructor(R){var ae,we;if(this.gl=R,this.clearColor=new Ns(this),this.clearDepth=new fs(this),this.clearStencil=new al(this),this.colorMask=new vl(this),this.depthMask=new ji(this),this.stencilMask=new To(this),this.stencilFunc=new Yn(this),this.stencilOp=new _s(this),this.stencilTest=new Yo(this),this.depthRange=new Nn(this),this.depthTest=new Wl(this),this.depthFunc=new Zu(this),this.blend=new ml(this),this.blendFunc=new Bu(this),this.blendColor=new El(this),this.blendEquation=new qs(this),this.cullFace=new Jl(this),this.cullFaceSide=new Nu(this),this.frontFace=new Ic(this),this.program=new Xu(this),this.activeTexture=new Th(this),this.viewport=new bf(this),this.bindFramebuffer=new Rs(this),this.bindRenderbuffer=new Yc(this),this.bindTexture=new If(this),this.bindVertexBuffer=new Zl(this),this.bindElementBuffer=new yl(this),this.bindVertexArray=new oc(this),this.pixelStoreUnpack=new _c(this),this.pixelStoreUnpackPremultiplyAlpha=new Zs(this),this.pixelStoreUnpackFlipY=new _l(this),this.extTextureFilterAnisotropic=R.getExtension("EXT_texture_filter_anisotropic")||R.getExtension("MOZ_EXT_texture_filter_anisotropic")||R.getExtension("WEBKIT_EXT_texture_filter_anisotropic"),this.extTextureFilterAnisotropic&&(this.extTextureFilterAnisotropicMax=R.getParameter(this.extTextureFilterAnisotropic.MAX_TEXTURE_MAX_ANISOTROPY_EXT)),this.maxTextureSize=R.getParameter(R.MAX_TEXTURE_SIZE),Os(R)){this.HALF_FLOAT=R.HALF_FLOAT;let Se=R.getExtension("EXT_color_buffer_half_float");this.RGBA16F=(ae=R.RGBA16F)!==null&&ae!==void 0?ae:Se?.RGBA16F_EXT,this.RGB16F=(we=R.RGB16F)!==null&&we!==void 0?we:Se?.RGB16F_EXT,R.getExtension("EXT_color_buffer_float")}else{R.getExtension("EXT_color_buffer_half_float"),R.getExtension("OES_texture_half_float_linear");let Se=R.getExtension("OES_texture_half_float");this.HALF_FLOAT=Se?.HALF_FLOAT_OES}}setDefault(){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()}setDirty(){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.bindVertexArray.dirty=!0,this.pixelStoreUnpack.dirty=!0,this.pixelStoreUnpackPremultiplyAlpha.dirty=!0,this.pixelStoreUnpackFlipY.dirty=!0}createIndexBuffer(R,ae){return new $o(this,R,ae)}createVertexBuffer(R,ae,we){return new mn(this,R,ae,we)}createRenderbuffer(R,ae,we){let Se=this.gl,De=Se.createRenderbuffer();return this.bindRenderbuffer.set(De),Se.renderbufferStorage(Se.RENDERBUFFER,R,ae,we),this.bindRenderbuffer.set(null),De}createFramebuffer(R,ae,we,Se){return new Yu(this,R,ae,we,Se)}clear({color:R,depth:ae,stencil:we}){let Se=this.gl,De=0;R&&(De|=Se.COLOR_BUFFER_BIT,this.clearColor.set(R),this.colorMask.set([!0,!0,!0,!0])),ae!==void 0&&(De|=Se.DEPTH_BUFFER_BIT,this.depthRange.set([0,1]),this.clearDepth.set(ae),this.depthMask.set(!0)),we!==void 0&&(De|=Se.STENCIL_BUFFER_BIT,this.clearStencil.set(we),this.stencilMask.set(255)),Se.clear(De)}setCullFace(R){R.enable===!1?this.cullFace.set(!1):(this.cullFace.set(!0),this.cullFaceSide.set(R.mode),this.frontFace.set(R.frontFace))}setDepthMode(R){R.func!==this.gl.ALWAYS||R.mask?(this.depthTest.set(!0),this.depthFunc.set(R.func),this.depthMask.set(R.mask),this.depthRange.set(R.range)):this.depthTest.set(!1)}setStencilMode(R){R.test.func!==this.gl.ALWAYS||R.mask?(this.stencilTest.set(!0),this.stencilMask.set(R.mask),this.stencilOp.set([R.fail,R.depthFail,R.pass]),this.stencilFunc.set({func:R.test.func,ref:R.ref,mask:R.test.mask})):this.stencilTest.set(!1)}setColorMode(R){t.aE(R.blendFunction,Qs.Replace)?this.blend.set(!1):(this.blend.set(!0),this.blendFunc.set(R.blendFunction),this.blendColor.set(R.blendColor)),this.colorMask.set(R.mask)}createVertexArray(){var R;return Os(this.gl)?this.gl.createVertexArray():(R=this.gl.getExtension("OES_vertex_array_object"))===null||R===void 0?void 0:R.createVertexArrayOES()}deleteVertexArray(R){var ae;return Os(this.gl)?this.gl.deleteVertexArray(R):(ae=this.gl.getExtension("OES_vertex_array_object"))===null||ae===void 0?void 0:ae.deleteVertexArrayOES(R)}unbindVAO(){this.bindVertexArray.set(null)}}class es{constructor(R,ae,we){this.func=R,this.mask=ae,this.range=we}}es.ReadOnly=!1,es.ReadWrite=!0,es.disabled=new es(519,es.ReadOnly,[0,1]);let Wh=7680;class Ss{constructor(R,ae,we,Se,De,ft){this.test=R,this.ref=ae,this.mask=we,this.fail=Se,this.depthFail=De,this.pass=ft}}Ss.disabled=new Ss({func:519,mask:0},0,0,Wh,Wh,Wh);class So{constructor(R,ae,we){this.enable=R,this.mode=ae,this.frontFace=we}}let hf;function Ku(Oe,R,ae,we,Se){let De=Oe.context,ft=De.gl,bt=Oe.useProgram("collisionBox"),Dt=[],Yt=0,cr=0;for(let ht=0;ht<we.length;ht++){let At=we[ht],_t=R.getTile(At).getBucket(ae);if(!_t)continue;let Pt=Se?_t.textCollisionBox:_t.iconCollisionBox,er=_t.collisionCircleArray;if(er.length>0){let nr=t.H();t.aQ(nr,_t.placementInvProjMatrix,Oe.transform.glCoordMatrix),t.aQ(nr,nr,_t.placementViewportMatrix),Dt.push({circleArray:er,circleOffset:cr,transform:At.posMatrix,invTransform:nr,coord:At}),Yt+=er.length/4,cr=Yt}Pt&&bt.draw(De,ft.LINES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,{u_matrix:At.posMatrix,u_pixel_extrude_scale:[1/(hr=Oe.transform).width,1/hr.height]},Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At),ae.id,Pt.layoutVertexBuffer,Pt.indexBuffer,Pt.segments,null,Oe.transform.zoom,null,null,Pt.collisionVertexBuffer)}var hr;if(!Se||!Dt.length)return;let jr=Oe.useProgram("collisionCircle"),ea=new t.aR;ea.resize(4*Yt),ea._trim();let qe=0;for(let ht of Dt)for(let At=0;At<ht.circleArray.length/4;At++){let _t=4*At,Pt=ht.circleArray[_t+0],er=ht.circleArray[_t+1],nr=ht.circleArray[_t+2],pr=ht.circleArray[_t+3];ea.emplace(qe++,Pt,er,nr,pr,0),ea.emplace(qe++,Pt,er,nr,pr,1),ea.emplace(qe++,Pt,er,nr,pr,2),ea.emplace(qe++,Pt,er,nr,pr,3)}(!hf||hf.length<2*Yt)&&(hf=function(ht){let At=2*ht,_t=new t.aT;_t.resize(At),_t._trim();for(let Pt=0;Pt<At;Pt++){let er=6*Pt;_t.uint16[er+0]=4*Pt+0,_t.uint16[er+1]=4*Pt+1,_t.uint16[er+2]=4*Pt+2,_t.uint16[er+3]=4*Pt+2,_t.uint16[er+4]=4*Pt+3,_t.uint16[er+5]=4*Pt+0}return _t}(Yt));let Je=De.createIndexBuffer(hf,!0),ot=De.createVertexBuffer(ea,t.aS.members,!0);for(let ht of Dt){let At=Mn(ht.transform,ht.invTransform,Oe.transform);jr.draw(De,ft.TRIANGLES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,At,Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ht.coord),ae.id,ot,Je,t.a0.simpleSegment(0,2*ht.circleOffset,ht.circleArray.length,ht.circleArray.length/2),null,Oe.transform.zoom,null,null,null)}ot.destroy(),Je.destroy()}So.disabled=new So(!1,1029,2305),So.backCCW=new So(!0,1029,2305);let cu=t.an(new Float32Array(16));function Zf(Oe,R,ae,we,Se,De){let{horizontalAlign:ft,verticalAlign:bt}=t.au(Oe);return new t.P((-(ft-.5)*R/Se+we[0])*De,(-(bt-.5)*ae/Se+we[1])*De)}function Rc(Oe,R,ae,we,Se,De){let ft=R.tileAnchorPoint.add(new t.P(R.translation[0],R.translation[1]));if(R.pitchWithMap){let bt=we.mult(De);ae||(bt=bt.rotate(-Se));let Dt=ft.add(bt);return yt(Dt.x,Dt.y,R.labelPlaneMatrix,R.getElevation).point}if(ae){let bt=rt(R.tileAnchorPoint.x+1,R.tileAnchorPoint.y,R).point.sub(Oe),Dt=Math.atan(bt.y/bt.x)+(bt.x<0?Math.PI:0);return Oe.add(we.rotate(Dt))}return Oe.add(we)}function pf(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr,jr,ea){let qe=Oe.text.placedSymbolArray,Je=Oe.text.dynamicLayoutVertexArray,ot=Oe.icon.dynamicLayoutVertexArray,ht={};Je.clear();for(let At=0;At<qe.length;At++){let _t=qe.get(At),Pt=_t.hidden||!_t.crossTileID||Oe.allowVerticalPlacement&&!_t.placedOrientation?null:we[_t.crossTileID];if(Pt){let er=new t.P(_t.anchorX,_t.anchorY),nr={getElevation:ea,width:Se.width,height:Se.height,labelPlaneMatrix:De,lineVertexArray:null,pitchWithMap:ae,projection:cr,projectionCache:null,tileAnchorPoint:er,translation:hr,unwrappedTileID:jr},pr=ae?yt(er.x,er.y,ft,ea):rt(er.x,er.y,nr),Sr=Fe(Se.cameraToCenterDistance,pr.signedDistanceFromCamera),Wr=t.ai(Oe.textSizeData,Dt,_t)*Sr/t.ap;ae&&(Wr*=Oe.tilePixelRatio/bt);let{width:ha,height:ga,anchor:Pa,textOffset:Ja,textBoxScale:di}=Pt,pi=Zf(Pa,ha,ga,Ja,di,Wr),Ci=cr.getPitchedTextCorrection(Se,er.add(new t.P(hr[0],hr[1])),jr),$i=Rc(pr.point,nr,R,pi,Se.angle,Ci),Bn=Oe.allowVerticalPlacement&&_t.placedOrientation===t.ah.vertical?Math.PI/2:0;for(let Sn=0;Sn<_t.numGlyphs;Sn++)t.aj(Je,$i,Bn);Yt&&_t.associatedIconIndex>=0&&(ht[_t.associatedIconIndex]={shiftedAnchor:$i,angle:Bn})}else Gt(_t.numGlyphs,Je)}if(Yt){ot.clear();let At=Oe.icon.placedSymbolArray;for(let _t=0;_t<At.length;_t++){let Pt=At.get(_t);if(Pt.hidden)Gt(Pt.numGlyphs,ot);else{let er=ht[_t];if(er)for(let nr=0;nr<Pt.numGlyphs;nr++)t.aj(ot,er.shiftedAnchor,er.angle);else Gt(Pt.numGlyphs,ot)}}Oe.icon.dynamicLayoutVertexBuffer.updateData(ot)}Oe.text.dynamicLayoutVertexBuffer.updateData(Je)}function Fl(Oe,R,ae){return ae.iconsInText&&R?"symbolTextAndIcon":Oe?"symbolSDF":"symbolIcon"}function lh(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt,cr,hr){let jr=Oe.context,ea=jr.gl,qe=Oe.transform,Je=$a(),ot=bt==="map",ht=Dt==="map",At=bt!=="viewport"&&ae.layout.get("symbol-placement")!=="point",_t=ot&&!ht&&!At,Pt=!ht&&At,er=!ae.layout.get("symbol-sort-key").isConstant(),nr=!1,pr=Oe.depthModeForSublayer(0,es.ReadOnly),Sr=ae._unevaluatedLayout.hasValue("text-variable-anchor")||ae._unevaluatedLayout.hasValue("text-variable-anchor-offset"),Wr=[],ha=Je.getCircleRadiusCorrection(qe);for(let ga of we){let Pa=R.getTile(ga),Ja=Pa.getBucket(ae);if(!Ja)continue;let di=Se?Ja.text:Ja.icon;if(!di||!di.segments.get().length||!di.hasVisibleVertices)continue;let pi=di.programConfigurations.get(ae.id),Ci=Se||Ja.sdfIcons,$i=Se?Ja.textSizeData:Ja.iconSizeData,Bn=ht||qe.pitch!==0,Sn=Oe.useProgram(Fl(Ci,Se,Ja),pi),ho=t.ag($i,qe.zoom),ts=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ga),yo,Vo,ls,rl,Ys=[0,0],Zo=null;if(Se)Vo=Pa.glyphAtlasTexture,ls=ea.LINEAR,yo=Pa.glyphAtlasTexture.size,Ja.iconsInText&&(Ys=Pa.imageAtlasTexture.size,Zo=Pa.imageAtlasTexture,rl=Bn||Oe.options.rotating||Oe.options.zooming||$i.kind==="composite"||$i.kind==="camera"?ea.LINEAR:ea.NEAREST);else{let wt=ae.layout.get("icon-size").constantOr(0)!==1||Ja.iconsNeedLinear;Vo=Pa.imageAtlasTexture,ls=Ci||Oe.options.rotating||Oe.options.zooming||wt||Bn?ea.LINEAR:ea.NEAREST,yo=Pa.imageAtlasTexture.size}let Go=Aa(Pa,1,Oe.transform.zoom),Rl=Pt?ga.posMatrix:cu,Xl=vr(Rl,ht,ot,Oe.transform,Go),qu=_r(Rl,ht,ot,Oe.transform,Go),fu=_r(ga.posMatrix,ht,ot,Oe.transform,Go),bl=Je.translatePosition(Oe.transform,Pa,De,ft),ou=Sr&&Ja.hasTextData(),Sc=ae.layout.get("icon-text-fit")!=="none"&&ou&&Ja.hasIconData();if(At){let wt=Oe.style.map.terrain?(Rt,or)=>Oe.style.map.terrain.getElevation(ga,Rt,or):null,Jt=ae.layout.get("text-rotation-alignment")==="map";Ne(Ja,ga.posMatrix,Oe,Se,Xl,fu,ht,Yt,Jt,Je,ga.toUnwrapped(),qe.width,qe.height,bl,wt)}let ql=ga.posMatrix,Hl=Se&&Sr||Sc,de=At||Hl?cu:Xl,Re=qu,$e=Ci&&ae.paint.get(Se?"text-halo-width":"icon-halo-width").constantOr(1)!==0,pt;pt=Ci?Ja.iconsInText?po($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,yo,Ys,ha):Xn($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,!0,ha):Qo($i.kind,ho,_t,ht,At,Hl,Oe,ql,de,Re,bl,Se,yo,ha);let vt={program:Sn,buffers:di,uniformValues:pt,atlasTexture:Vo,atlasTextureIcon:Zo,atlasInterpolation:ls,atlasInterpolationIcon:rl,isSDF:Ci,hasHalo:$e};if(er&&Ja.canOverlap){nr=!0;let wt=di.segments.get();for(let Jt of wt)Wr.push({segments:new t.a0([Jt]),sortKey:Jt.sortKey,state:vt,terrainData:ts})}else Wr.push({segments:di.segments,sortKey:0,state:vt,terrainData:ts})}nr&&Wr.sort((ga,Pa)=>ga.sortKey-Pa.sortKey);for(let ga of Wr){let Pa=ga.state;if(jr.activeTexture.set(ea.TEXTURE0),Pa.atlasTexture.bind(Pa.atlasInterpolation,ea.CLAMP_TO_EDGE),Pa.atlasTextureIcon&&(jr.activeTexture.set(ea.TEXTURE1),Pa.atlasTextureIcon&&Pa.atlasTextureIcon.bind(Pa.atlasInterpolationIcon,ea.CLAMP_TO_EDGE)),Pa.isSDF){let Ja=Pa.uniformValues;Pa.hasHalo&&(Ja.u_is_halo=1,Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Ja,ga.terrainData)),Ja.u_is_halo=0}Xf(Pa.buffers,ga.segments,ae,Oe,Pa.program,pr,cr,hr,Pa.uniformValues,ga.terrainData)}}function Xf(Oe,R,ae,we,Se,De,ft,bt,Dt,Yt){let cr=we.context;Se.draw(cr,cr.gl.TRIANGLES,De,ft,bt,So.disabled,Dt,Yt,ae.id,Oe.layoutVertexBuffer,Oe.indexBuffer,R,ae.paint,we.transform.zoom,Oe.programConfigurations.get(ae.id),Oe.dynamicLayoutVertexBuffer,Oe.opacityVertexBuffer)}function Rf(Oe,R,ae,we){let Se=Oe.context,De=Se.gl,ft=Ss.disabled,bt=new Qs([De.ONE,De.ONE],t.aM.transparent,[!0,!0,!0,!0]),Dt=R.getBucket(ae);if(!Dt)return;let Yt=we.key,cr=ae.heatmapFbos.get(Yt);cr||(cr=Yf(Se,R.tileSize,R.tileSize),ae.heatmapFbos.set(Yt,cr)),Se.bindFramebuffer.set(cr.framebuffer),Se.viewport.set([0,0,R.tileSize,R.tileSize]),Se.clear({color:t.aM.transparent});let hr=Dt.programConfigurations.get(ae.id),jr=Oe.useProgram("heatmap",hr),ea=Oe.style.map.terrain.getTerrainData(we);jr.draw(Se,De.TRIANGLES,es.disabled,ft,bt,So.disabled,Cn(we.posMatrix,R,Oe.transform.zoom,ae.paint.get("heatmap-intensity")),ea,ae.id,Dt.layoutVertexBuffer,Dt.indexBuffer,Dt.segments,ae.paint,Oe.transform.zoom,hr)}function Kc(Oe,R,ae){let we=Oe.context,Se=we.gl;we.setColorMode(Oe.colorModeForRenderPass());let De=uh(we,R),ft=ae.key,bt=R.heatmapFbos.get(ft);bt&&(we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,bt.colorAttachment.get()),we.activeTexture.set(Se.TEXTURE1),De.bind(Se.LINEAR,Se.CLAMP_TO_EDGE),Oe.useProgram("heatmapTexture").draw(we,Se.TRIANGLES,es.disabled,Ss.disabled,Oe.colorModeForRenderPass(),So.disabled,Lo(Oe,R,0,1),null,R.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments,R.paint,Oe.transform.zoom),bt.destroy(),R.heatmapFbos.delete(ft))}function Yf(Oe,R,ae){var we,Se;let De=Oe.gl,ft=De.createTexture();De.bindTexture(De.TEXTURE_2D,ft),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_S,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_WRAP_T,De.CLAMP_TO_EDGE),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MIN_FILTER,De.LINEAR),De.texParameteri(De.TEXTURE_2D,De.TEXTURE_MAG_FILTER,De.LINEAR);let bt=(we=Oe.HALF_FLOAT)!==null&&we!==void 0?we:De.UNSIGNED_BYTE,Dt=(Se=Oe.RGBA16F)!==null&&Se!==void 0?Se:De.RGBA;De.texImage2D(De.TEXTURE_2D,0,Dt,R,ae,0,De.RGBA,bt,null);let Yt=Oe.createFramebuffer(R,ae,!1,!1);return Yt.colorAttachment.set(ft),Yt}function uh(Oe,R){return R.colorRampTexture||(R.colorRampTexture=new u(Oe,R.colorRamp,Oe.gl.RGBA)),R.colorRampTexture}function Ju(Oe,R,ae,we,Se){if(!ae||!we||!we.imageAtlas)return;let De=we.imageAtlas.patternPositions,ft=De[ae.to.toString()],bt=De[ae.from.toString()];if(!ft&&bt&&(ft=bt),!bt&&ft&&(bt=ft),!ft||!bt){let Dt=Se.getPaintProperty(R);ft=De[Dt],bt=De[Dt]}ft&&bt&&Oe.setConstantPatternPositions(ft,bt)}function Df(Oe,R,ae,we,Se,De,ft){let bt=Oe.context.gl,Dt="fill-pattern",Yt=ae.paint.get(Dt),cr=Yt&&Yt.constantOr(1),hr=ae.getCrossfadeParameters(),jr,ea,qe,Je,ot;ft?(ea=cr&&!ae.getPaintProperty("fill-outline-color")?"fillOutlinePattern":"fillOutline",jr=bt.LINES):(ea=cr?"fillPattern":"fill",jr=bt.TRIANGLES);let ht=Yt.constantOr(null);for(let At of we){let _t=R.getTile(At);if(cr&&!_t.patternsLoaded())continue;let Pt=_t.getBucket(ae);if(!Pt)continue;let er=Pt.programConfigurations.get(ae.id),nr=Oe.useProgram(ea,er),pr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(At);cr&&(Oe.context.activeTexture.set(bt.TEXTURE0),_t.imageAtlasTexture.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),er.updatePaintBuffers(hr)),Ju(er,Dt,ht,_t,ae);let Sr=pr?At:null,Wr=Oe.translatePosMatrix(Sr?Sr.posMatrix:At.posMatrix,_t,ae.paint.get("fill-translate"),ae.paint.get("fill-translate-anchor"));if(ft){Je=Pt.indexBuffer2,ot=Pt.segments2;let ha=[bt.drawingBufferWidth,bt.drawingBufferHeight];qe=ea==="fillOutlinePattern"&&cr?an(Wr,Oe,hr,_t,ha):ai(Wr,ha)}else Je=Pt.indexBuffer,ot=Pt.segments,qe=cr?Ti(Wr,Oe,hr,_t):Sa(Wr);nr.draw(Oe.context,jr,Se,Oe.stencilModeForClipping(At),De,So.disabled,qe,pr,ae.id,Pt.layoutVertexBuffer,Je,ot,ae.paint,Oe.transform.zoom,er)}}function Dc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt="fill-extrusion-pattern",cr=ae.paint.get(Yt),hr=cr.constantOr(1),jr=ae.getCrossfadeParameters(),ea=ae.paint.get("fill-extrusion-opacity"),qe=cr.constantOr(null);for(let Je of we){let ot=R.getTile(Je),ht=ot.getBucket(ae);if(!ht)continue;let At=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(Je),_t=ht.programConfigurations.get(ae.id),Pt=Oe.useProgram(hr?"fillExtrusionPattern":"fillExtrusion",_t);hr&&(Oe.context.activeTexture.set(Dt.TEXTURE0),ot.imageAtlasTexture.bind(Dt.LINEAR,Dt.CLAMP_TO_EDGE),_t.updatePaintBuffers(jr)),Ju(_t,Yt,qe,ot,ae);let er=Oe.translatePosMatrix(Je.posMatrix,ot,ae.paint.get("fill-extrusion-translate"),ae.paint.get("fill-extrusion-translate-anchor")),nr=ae.paint.get("fill-extrusion-vertical-gradient"),pr=hr?da(er,Oe,nr,ea,Je,jr,ot):Ca(er,Oe,nr,ea);Pt.draw(bt,bt.gl.TRIANGLES,Se,De,ft,So.backCCW,pr,At,ae.id,ht.layoutVertexBuffer,ht.indexBuffer,ht.segments,ae.paint,Oe.transform.zoom,_t,Oe.style.map.terrain&&ht.centroidVertexBuffer)}}function Jc(Oe,R,ae,we,Se,De,ft){let bt=Oe.context,Dt=bt.gl,Yt=ae.fbo;if(!Yt)return;let cr=Oe.useProgram("hillshade"),hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(R);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,Yt.colorAttachment.get()),cr.draw(bt,Dt.TRIANGLES,Se,De,ft,So.disabled,((jr,ea,qe,Je)=>{let ot=qe.paint.get("hillshade-shadow-color"),ht=qe.paint.get("hillshade-highlight-color"),At=qe.paint.get("hillshade-accent-color"),_t=qe.paint.get("hillshade-illumination-direction")*(Math.PI/180);qe.paint.get("hillshade-illumination-anchor")==="viewport"&&(_t-=jr.transform.angle);let Pt=!jr.options.moving;return{u_matrix:Je?Je.posMatrix:jr.transform.calculatePosMatrix(ea.tileID.toUnwrapped(),Pt),u_image:0,u_latrange:Xi(0,ea.tileID),u_light:[qe.paint.get("hillshade-exaggeration"),_t],u_shadow:ot,u_highlight:ht,u_accent:At}})(Oe,ae,we,hr?R:null),hr,we.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments)}function Eu(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl,Dt=R.dem;if(Dt&&Dt.data){let Yt=Dt.dim,cr=Dt.stride,hr=Dt.getPixels();if(ft.activeTexture.set(bt.TEXTURE1),ft.pixelStoreUnpackPremultiplyAlpha.set(!1),R.demTexture=R.demTexture||Oe.getTileTexture(cr),R.demTexture){let ea=R.demTexture;ea.update(hr,{premultiply:!1}),ea.bind(bt.NEAREST,bt.CLAMP_TO_EDGE)}else R.demTexture=new u(ft,hr,bt.RGBA,{premultiply:!1}),R.demTexture.bind(bt.NEAREST,bt.CLAMP_TO_EDGE);ft.activeTexture.set(bt.TEXTURE0);let jr=R.fbo;if(!jr){let ea=new u(ft,{width:Yt,height:Yt,data:null},bt.RGBA);ea.bind(bt.LINEAR,bt.CLAMP_TO_EDGE),jr=R.fbo=ft.createFramebuffer(Yt,Yt,!0,!1),jr.colorAttachment.set(ea.texture)}ft.bindFramebuffer.set(jr.framebuffer),ft.viewport.set([0,0,Yt,Yt]),Oe.useProgram("hillshadePrepare").draw(ft,bt.TRIANGLES,we,Se,De,So.disabled,((ea,qe)=>{let Je=qe.stride,ot=t.H();return t.aP(ot,0,t.X,-t.X,0,0,1),t.J(ot,ot,[0,-t.X,0]),{u_matrix:ot,u_image:1,u_dimension:[Je,Je],u_zoom:ea.overscaledZ,u_unpack:qe.getUnpackVector()}})(R.tileID,Dt),null,ae.id,Oe.rasterBoundsBuffer,Oe.quadTriangleIndexBuffer,Oe.rasterBoundsSegments),R.needsHillshadePrepare=!1}}function wf(Oe,R,ae,we,Se,De){let ft=we.paint.get("raster-fade-duration");if(!De&&ft>0){let bt=i.now(),Dt=(bt-Oe.timeAdded)/ft,Yt=R?(bt-R.timeAdded)/ft:-1,cr=ae.getSource(),hr=Se.coveringZoomLevel({tileSize:cr.tileSize,roundZoom:cr.roundZoom}),jr=!R||Math.abs(R.tileID.overscaledZ-hr)>Math.abs(Oe.tileID.overscaledZ-hr),ea=jr&&Oe.refreshedUponExpiration?1:t.ac(jr?Dt:1-Yt,0,1);return Oe.refreshedUponExpiration&&Dt>=1&&(Oe.refreshedUponExpiration=!1),R?{opacity:1,mix:1-ea}:{opacity:ea,mix:0}}return{opacity:1,mix:0}}let zc=new t.aM(1,0,0,1),Us=new t.aM(0,1,0,1),Kf=new t.aM(0,0,1,1),Zh=new t.aM(1,0,1,1),ch=new t.aM(0,1,1,1);function df(Oe,R,ae,we){ku(Oe,0,R+ae/2,Oe.transform.width,ae,we)}function Ah(Oe,R,ae,we){ku(Oe,R-ae/2,0,ae,Oe.transform.height,we)}function ku(Oe,R,ae,we,Se,De){let ft=Oe.context,bt=ft.gl;bt.enable(bt.SCISSOR_TEST),bt.scissor(R*Oe.pixelRatio,ae*Oe.pixelRatio,we*Oe.pixelRatio,Se*Oe.pixelRatio),ft.clear({color:De}),bt.disable(bt.SCISSOR_TEST)}function fh(Oe,R,ae){let we=Oe.context,Se=we.gl,De=ae.posMatrix,ft=Oe.useProgram("debug"),bt=es.disabled,Dt=Ss.disabled,Yt=Oe.colorModeForRenderPass(),cr="$debug",hr=Oe.style.map.terrain&&Oe.style.map.terrain.getTerrainData(ae);we.activeTexture.set(Se.TEXTURE0);let jr=R.getTileByID(ae.key).latestRawTileData,ea=Math.floor((jr&&jr.byteLength||0)/1024),qe=R.getTile(ae).tileSize,Je=512/Math.min(qe,512)*(ae.overscaledZ/Oe.transform.zoom)*.5,ot=ae.canonical.toString();ae.overscaledZ!==ae.canonical.z&&(ot+=` => ${ae.overscaledZ}`),function(ht,At){ht.initDebugOverlayCanvas();let _t=ht.debugOverlayCanvas,Pt=ht.context.gl,er=ht.debugOverlayCanvas.getContext("2d");er.clearRect(0,0,_t.width,_t.height),er.shadowColor="white",er.shadowBlur=2,er.lineWidth=1.5,er.strokeStyle="white",er.textBaseline="top",er.font="bold 36px Open Sans, sans-serif",er.fillText(At,5,5),er.strokeText(At,5,5),ht.debugOverlayTexture.update(_t),ht.debugOverlayTexture.bind(Pt.LINEAR,Pt.CLAMP_TO_EDGE)}(Oe,`${ot} ${ea}kB`),ft.draw(we,Se.TRIANGLES,bt,Dt,Qs.alphaBlended,So.disabled,On(De,t.aM.transparent,Je),null,cr,Oe.debugBuffer,Oe.quadTriangleIndexBuffer,Oe.debugSegments),ft.draw(we,Se.LINE_STRIP,bt,Dt,Yt,So.disabled,On(De,t.aM.red),hr,cr,Oe.debugBuffer,Oe.tileBorderIndexBuffer,Oe.debugSegments)}function ru(Oe,R,ae){let we=Oe.context,Se=we.gl,De=Oe.colorModeForRenderPass(),ft=new es(Se.LEQUAL,es.ReadWrite,Oe.depthRangeFor3D),bt=Oe.useProgram("terrain"),Dt=R.getTerrainMesh();we.bindFramebuffer.set(null),we.viewport.set([0,0,Oe.width,Oe.height]);for(let Yt of ae){let cr=Oe.renderToTexture.getTexture(Yt),hr=R.getTerrainData(Yt.tileID);we.activeTexture.set(Se.TEXTURE0),Se.bindTexture(Se.TEXTURE_2D,cr.texture);let jr=Oe.transform.calculatePosMatrix(Yt.tileID.toUnwrapped()),ea=R.getMeshFrameDelta(Oe.transform.zoom),qe=Oe.transform.calculateFogMatrix(Yt.tileID.toUnwrapped()),Je=mr(jr,ea,qe,Oe.style.sky,Oe.transform.pitch);bt.draw(we,Se.TRIANGLES,ft,Ss.disabled,De,So.backCCW,Je,hr,"terrain",Dt.vertexBuffer,Dt.indexBuffer,Dt.segments)}}class Cu{constructor(R,ae,we){this.vertexBuffer=R,this.indexBuffer=ae,this.segments=we}destroy(){this.vertexBuffer.destroy(),this.indexBuffer.destroy(),this.segments.destroy(),this.vertexBuffer=null,this.indexBuffer=null,this.segments=null}}class xc{constructor(R,ae){this.context=new fp(R),this.transform=ae,this._tileTextures={},this.terrainFacilitator={dirty:!0,matrix:t.an(new Float64Array(16)),renderTime:0},this.setup(),this.numSublayers=St.maxUnderzooming+St.maxOverzooming+1,this.depthEpsilon=1/Math.pow(2,16),this.crossTileSymbolIndex=new Mr}resize(R,ae,we){if(this.width=Math.floor(R*we),this.height=Math.floor(ae*we),this.pixelRatio=we,this.context.viewport.set([0,0,this.width,this.height]),this.style)for(let Se of this.style._order)this.style._layers[Se].resize()}setup(){let R=this.context,ae=new t.aX;ae.emplaceBack(0,0),ae.emplaceBack(t.X,0),ae.emplaceBack(0,t.X),ae.emplaceBack(t.X,t.X),this.tileExtentBuffer=R.createVertexBuffer(ae,oa.members),this.tileExtentSegments=t.a0.simpleSegment(0,0,4,2);let we=new t.aX;we.emplaceBack(0,0),we.emplaceBack(t.X,0),we.emplaceBack(0,t.X),we.emplaceBack(t.X,t.X),this.debugBuffer=R.createVertexBuffer(we,oa.members),this.debugSegments=t.a0.simpleSegment(0,0,4,5);let Se=new t.$;Se.emplaceBack(0,0,0,0),Se.emplaceBack(t.X,0,t.X,0),Se.emplaceBack(0,t.X,0,t.X),Se.emplaceBack(t.X,t.X,t.X,t.X),this.rasterBoundsBuffer=R.createVertexBuffer(Se,Ze.members),this.rasterBoundsSegments=t.a0.simpleSegment(0,0,4,2);let De=new t.aX;De.emplaceBack(0,0),De.emplaceBack(1,0),De.emplaceBack(0,1),De.emplaceBack(1,1),this.viewportBuffer=R.createVertexBuffer(De,oa.members),this.viewportSegments=t.a0.simpleSegment(0,0,4,2);let ft=new t.aZ;ft.emplaceBack(0),ft.emplaceBack(1),ft.emplaceBack(3),ft.emplaceBack(2),ft.emplaceBack(0),this.tileBorderIndexBuffer=R.createIndexBuffer(ft);let bt=new t.aY;bt.emplaceBack(0,1,2),bt.emplaceBack(2,1,3),this.quadTriangleIndexBuffer=R.createIndexBuffer(bt);let Dt=this.context.gl;this.stencilClearMode=new Ss({func:Dt.ALWAYS,mask:0},0,255,Dt.ZERO,Dt.ZERO,Dt.ZERO)}clearStencil(){let R=this.context,ae=R.gl;this.nextStencilID=1,this.currentStencilSource=void 0;let we=t.H();t.aP(we,0,this.width,this.height,0,0,1),t.K(we,we,[ae.drawingBufferWidth,ae.drawingBufferHeight,0]),this.useProgram("clippingMask").draw(R,ae.TRIANGLES,es.disabled,this.stencilClearMode,Qs.disabled,So.disabled,$n(we),null,"$clipping",this.viewportBuffer,this.quadTriangleIndexBuffer,this.viewportSegments)}_renderTileClippingMasks(R,ae){if(this.currentStencilSource===R.source||!R.isTileClipped()||!ae||!ae.length)return;this.currentStencilSource=R.source;let we=this.context,Se=we.gl;this.nextStencilID+ae.length>256&&this.clearStencil(),we.setColorMode(Qs.disabled),we.setDepthMode(es.disabled);let De=this.useProgram("clippingMask");this._tileClippingMaskIDs={};for(let ft of ae){let bt=this._tileClippingMaskIDs[ft.key]=this.nextStencilID++,Dt=this.style.map.terrain&&this.style.map.terrain.getTerrainData(ft);De.draw(we,Se.TRIANGLES,es.disabled,new Ss({func:Se.ALWAYS,mask:0},bt,255,Se.KEEP,Se.KEEP,Se.REPLACE),Qs.disabled,So.disabled,$n(ft.posMatrix),Dt,"$clipping",this.tileExtentBuffer,this.quadTriangleIndexBuffer,this.tileExtentSegments)}}stencilModeFor3D(){this.currentStencilSource=void 0,this.nextStencilID+1>256&&this.clearStencil();let R=this.nextStencilID++,ae=this.context.gl;return new Ss({func:ae.NOTEQUAL,mask:255},R,255,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilModeForClipping(R){let ae=this.context.gl;return new Ss({func:ae.EQUAL,mask:255},this._tileClippingMaskIDs[R.key],0,ae.KEEP,ae.KEEP,ae.REPLACE)}stencilConfigForOverlap(R){let ae=this.context.gl,we=R.sort((ft,bt)=>bt.overscaledZ-ft.overscaledZ),Se=we[we.length-1].overscaledZ,De=we[0].overscaledZ-Se+1;if(De>1){this.currentStencilSource=void 0,this.nextStencilID+De>256&&this.clearStencil();let ft={};for(let bt=0;bt<De;bt++)ft[bt+Se]=new Ss({func:ae.GEQUAL,mask:255},bt+this.nextStencilID,255,ae.KEEP,ae.KEEP,ae.REPLACE);return this.nextStencilID+=De,[ft,we]}return[{[Se]:Ss.disabled},we]}colorModeForRenderPass(){let R=this.context.gl;return this._showOverdrawInspector?new Qs([R.CONSTANT_COLOR,R.ONE],new t.aM(.125,.125,.125,0),[!0,!0,!0,!0]):this.renderPass==="opaque"?Qs.unblended:Qs.alphaBlended}depthModeForSublayer(R,ae,we){if(!this.opaquePassEnabledForLayer())return es.disabled;let Se=1-((1+this.currentLayer)*this.numSublayers+R)*this.depthEpsilon;return new es(we||this.context.gl.LEQUAL,ae,[Se,Se])}opaquePassEnabledForLayer(){return this.currentLayer<this.opaquePassCutoff}render(R,ae){this.style=R,this.options=ae,this.lineAtlas=R.lineAtlas,this.imageManager=R.imageManager,this.glyphManager=R.glyphManager,this.symbolFadeChange=R.placement.symbolFadeChange(i.now()),this.imageManager.beginFrame();let we=this.style._order,Se=this.style.sourceCaches,De={},ft={},bt={};for(let Dt in Se){let Yt=Se[Dt];Yt.used&&Yt.prepare(this.context),De[Dt]=Yt.getVisibleCoordinates(),ft[Dt]=De[Dt].slice().reverse(),bt[Dt]=Yt.getVisibleCoordinates(!0).reverse()}this.opaquePassCutoff=1/0;for(let Dt=0;Dt<we.length;Dt++)if(this.style._layers[we[Dt]].is3D()){this.opaquePassCutoff=Dt;break}this.maybeDrawDepthAndCoords(!1),this.renderToTexture&&(this.renderToTexture.prepareForRender(this.style,this.transform.zoom),this.opaquePassCutoff=0),this.renderPass="offscreen";for(let Dt of we){let Yt=this.style._layers[Dt];if(!Yt.hasOffscreenPass()||Yt.isHidden(this.transform.zoom))continue;let cr=ft[Yt.source];(Yt.type==="custom"||cr.length)&&this.renderLayer(this,Se[Yt.source],Yt,cr)}if(this.context.bindFramebuffer.set(null),this.context.clear({color:ae.showOverdrawInspector?t.aM.black:t.aM.transparent,depth:1}),this.clearStencil(),this.style.sky&&function(Dt,Yt){let cr=Dt.context,hr=cr.gl,jr=((ht,At,_t)=>({u_sky_color:ht.properties.get("sky-color"),u_horizon_color:ht.properties.get("horizon-color"),u_horizon:(At.height/2+At.getHorizon())*_t,u_sky_horizon_blend:ht.properties.get("sky-horizon-blend")*At.height/2*_t}))(Yt,Dt.style.map.transform,Dt.pixelRatio),ea=new es(hr.LEQUAL,es.ReadWrite,[0,1]),qe=Ss.disabled,Je=Dt.colorModeForRenderPass(),ot=Dt.useProgram("sky");if(!Yt.mesh){let ht=new t.aX;ht.emplaceBack(-1,-1),ht.emplaceBack(1,-1),ht.emplaceBack(1,1),ht.emplaceBack(-1,1);let At=new t.aY;At.emplaceBack(0,1,2),At.emplaceBack(0,2,3),Yt.mesh=new Cu(cr.createVertexBuffer(ht,oa.members),cr.createIndexBuffer(At),t.a0.simpleSegment(0,0,ht.length,At.length))}ot.draw(cr,hr.TRIANGLES,ea,qe,Je,So.disabled,jr,void 0,"sky",Yt.mesh.vertexBuffer,Yt.mesh.indexBuffer,Yt.mesh.segments)}(this,this.style.sky),this._showOverdrawInspector=ae.showOverdrawInspector,this.depthRangeFor3D=[0,1-(R._order.length+2)*this.numSublayers*this.depthEpsilon],!this.renderToTexture)for(this.renderPass="opaque",this.currentLayer=we.length-1;this.currentLayer>=0;this.currentLayer--){let Dt=this.style._layers[we[this.currentLayer]],Yt=Se[Dt.source],cr=De[Dt.source];this._renderTileClippingMasks(Dt,cr),this.renderLayer(this,Yt,Dt,cr)}for(this.renderPass="translucent",this.currentLayer=0;this.currentLayer<we.length;this.currentLayer++){let Dt=this.style._layers[we[this.currentLayer]],Yt=Se[Dt.source];if(this.renderToTexture&&this.renderToTexture.renderLayer(Dt))continue;let cr=(Dt.type==="symbol"?bt:ft)[Dt.source];this._renderTileClippingMasks(Dt,De[Dt.source]),this.renderLayer(this,Yt,Dt,cr)}if(this.options.showTileBoundaries){let Dt=function(Yt,cr){let hr=null,jr=Object.values(Yt._layers).flatMap(ot=>ot.source&&!ot.isHidden(cr)?[Yt.sourceCaches[ot.source]]:[]),ea=jr.filter(ot=>ot.getSource().type==="vector"),qe=jr.filter(ot=>ot.getSource().type!=="vector"),Je=ot=>{(!hr||hr.getSource().maxzoom<ot.getSource().maxzoom)&&(hr=ot)};return ea.forEach(ot=>Je(ot)),hr||qe.forEach(ot=>Je(ot)),hr}(this.style,this.transform.zoom);Dt&&function(Yt,cr,hr){for(let jr=0;jr<hr.length;jr++)fh(Yt,cr,hr[jr])}(this,Dt,Dt.getVisibleCoordinates())}this.options.showPadding&&function(Dt){let Yt=Dt.transform.padding;df(Dt,Dt.transform.height-(Yt.top||0),3,zc),df(Dt,Yt.bottom||0,3,Us),Ah(Dt,Yt.left||0,3,Kf),Ah(Dt,Dt.transform.width-(Yt.right||0),3,Zh);let cr=Dt.transform.centerPoint;(function(hr,jr,ea,qe){ku(hr,jr-1,ea-10,2,20,qe),ku(hr,jr-10,ea-1,20,2,qe)})(Dt,cr.x,Dt.transform.height-cr.y,ch)}(this),this.context.setDefault()}maybeDrawDepthAndCoords(R){if(!this.style||!this.style.map||!this.style.map.terrain)return;let ae=this.terrainFacilitator.matrix,we=this.transform.modelViewProjectionMatrix,Se=this.terrainFacilitator.dirty;Se||(Se=R?!t.a_(ae,we):!t.a$(ae,we)),Se||(Se=this.style.map.terrain.sourceCache.tilesAfterTime(this.terrainFacilitator.renderTime).length>0),Se&&(t.b0(ae,we),this.terrainFacilitator.renderTime=Date.now(),this.terrainFacilitator.dirty=!1,function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.sourceCache.getRenderableTiles(),ea=De.useProgram("terrainDepth");bt.bindFramebuffer.set(ft.getFramebuffer("depth").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1});for(let qe of jr){let Je=ft.getTerrainData(qe.tileID),ot={u_matrix:De.transform.calculatePosMatrix(qe.tileID.toUnwrapped()),u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};ea.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ot,Je,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain),function(De,ft){let bt=De.context,Dt=bt.gl,Yt=Qs.unblended,cr=new es(Dt.LEQUAL,es.ReadWrite,[0,1]),hr=ft.getTerrainMesh(),jr=ft.getCoordsTexture(),ea=ft.sourceCache.getRenderableTiles(),qe=De.useProgram("terrainCoords");bt.bindFramebuffer.set(ft.getFramebuffer("coords").framebuffer),bt.viewport.set([0,0,De.width/devicePixelRatio,De.height/devicePixelRatio]),bt.clear({color:t.aM.transparent,depth:1}),ft.coordsIndex=[];for(let Je of ea){let ot=ft.getTerrainData(Je.tileID);bt.activeTexture.set(Dt.TEXTURE0),Dt.bindTexture(Dt.TEXTURE_2D,jr.texture);let ht={u_matrix:De.transform.calculatePosMatrix(Je.tileID.toUnwrapped()),u_terrain_coords_id:(255-ft.coordsIndex.length)/255,u_texture:0,u_ele_delta:ft.getMeshFrameDelta(De.transform.zoom)};qe.draw(bt,Dt.TRIANGLES,cr,Ss.disabled,Yt,So.backCCW,ht,ot,"terrain",hr.vertexBuffer,hr.indexBuffer,hr.segments),ft.coordsIndex.push(Je.tileID.key)}bt.bindFramebuffer.set(null),bt.viewport.set([0,0,De.width,De.height])}(this,this.style.map.terrain))}renderLayer(R,ae,we,Se){if(!we.isHidden(this.transform.zoom)&&(we.type==="background"||we.type==="custom"||(Se||[]).length))switch(this.id=we.id,we.type){case"symbol":(function(De,ft,bt,Dt,Yt){if(De.renderPass!=="translucent")return;let cr=Ss.disabled,hr=De.colorModeForRenderPass();(bt._unevaluatedLayout.hasValue("text-variable-anchor")||bt._unevaluatedLayout.hasValue("text-variable-anchor-offset"))&&function(jr,ea,qe,Je,ot,ht,At,_t,Pt){let er=ea.transform,nr=$a(),pr=ot==="map",Sr=ht==="map";for(let Wr of jr){let ha=Je.getTile(Wr),ga=ha.getBucket(qe);if(!ga||!ga.text||!ga.text.segments.get().length)continue;let Pa=t.ag(ga.textSizeData,er.zoom),Ja=Aa(ha,1,ea.transform.zoom),di=vr(Wr.posMatrix,Sr,pr,ea.transform,Ja),pi=qe.layout.get("icon-text-fit")!=="none"&&ga.hasIconData();if(Pa){let Ci=Math.pow(2,er.zoom-ha.tileID.overscaledZ),$i=ea.style.map.terrain?(Sn,ho)=>ea.style.map.terrain.getElevation(Wr,Sn,ho):null,Bn=nr.translatePosition(er,ha,At,_t);pf(ga,pr,Sr,Pt,er,di,Wr.posMatrix,Ci,Pa,pi,nr,Bn,Wr.toUnwrapped(),$i)}}}(Dt,De,bt,ft,bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),Yt),bt.paint.get("icon-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!1,bt.paint.get("icon-translate"),bt.paint.get("icon-translate-anchor"),bt.layout.get("icon-rotation-alignment"),bt.layout.get("icon-pitch-alignment"),bt.layout.get("icon-keep-upright"),cr,hr),bt.paint.get("text-opacity").constantOr(1)!==0&&lh(De,ft,bt,Dt,!0,bt.paint.get("text-translate"),bt.paint.get("text-translate-anchor"),bt.layout.get("text-rotation-alignment"),bt.layout.get("text-pitch-alignment"),bt.layout.get("text-keep-upright"),cr,hr),ft.map.showCollisionBoxes&&(Ku(De,ft,bt,Dt,!0),Ku(De,ft,bt,Dt,!1))})(R,ae,we,Se,this.style.placement.variableOffsets);break;case"circle":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent")return;let Yt=bt.paint.get("circle-opacity"),cr=bt.paint.get("circle-stroke-width"),hr=bt.paint.get("circle-stroke-opacity"),jr=!bt.layout.get("circle-sort-key").isConstant();if(Yt.constantOr(1)===0&&(cr.constantOr(1)===0||hr.constantOr(1)===0))return;let ea=De.context,qe=ea.gl,Je=De.depthModeForSublayer(0,es.ReadOnly),ot=Ss.disabled,ht=De.colorModeForRenderPass(),At=[];for(let _t=0;_t<Dt.length;_t++){let Pt=Dt[_t],er=ft.getTile(Pt),nr=er.getBucket(bt);if(!nr)continue;let pr=nr.programConfigurations.get(bt.id),Sr=De.useProgram("circle",pr),Wr=nr.layoutVertexBuffer,ha=nr.indexBuffer,ga=De.style.map.terrain&&De.style.map.terrain.getTerrainData(Pt),Pa={programConfiguration:pr,program:Sr,layoutVertexBuffer:Wr,indexBuffer:ha,uniformValues:sn(De,Pt,er,bt),terrainData:ga};if(jr){let Ja=nr.segments.get();for(let di of Ja)At.push({segments:new t.a0([di]),sortKey:di.sortKey,state:Pa})}else At.push({segments:nr.segments,sortKey:0,state:Pa})}jr&&At.sort((_t,Pt)=>_t.sortKey-Pt.sortKey);for(let _t of At){let{programConfiguration:Pt,program:er,layoutVertexBuffer:nr,indexBuffer:pr,uniformValues:Sr,terrainData:Wr}=_t.state;er.draw(ea,qe.TRIANGLES,Je,ot,ht,So.disabled,Sr,Wr,bt.id,nr,pr,_t.segments,bt.paint,De.transform.zoom,Pt)}})(R,ae,we,Se);break;case"heatmap":(function(De,ft,bt,Dt){if(bt.paint.get("heatmap-opacity")===0)return;let Yt=De.context;if(De.style.map.terrain){for(let cr of Dt){let hr=ft.getTile(cr);ft.hasRenderableParent(cr)||(De.renderPass==="offscreen"?Rf(De,hr,bt,cr):De.renderPass==="translucent"&&Kc(De,bt,cr))}Yt.viewport.set([0,0,De.width,De.height])}else De.renderPass==="offscreen"?function(cr,hr,jr,ea){let qe=cr.context,Je=qe.gl,ot=Ss.disabled,ht=new Qs([Je.ONE,Je.ONE],t.aM.transparent,[!0,!0,!0,!0]);(function(At,_t,Pt){let er=At.gl;At.activeTexture.set(er.TEXTURE1),At.viewport.set([0,0,_t.width/4,_t.height/4]);let nr=Pt.heatmapFbos.get(t.aU);nr?(er.bindTexture(er.TEXTURE_2D,nr.colorAttachment.get()),At.bindFramebuffer.set(nr.framebuffer)):(nr=Yf(At,_t.width/4,_t.height/4),Pt.heatmapFbos.set(t.aU,nr))})(qe,cr,jr),qe.clear({color:t.aM.transparent});for(let At=0;At<ea.length;At++){let _t=ea[At];if(hr.hasRenderableParent(_t))continue;let Pt=hr.getTile(_t),er=Pt.getBucket(jr);if(!er)continue;let nr=er.programConfigurations.get(jr.id),pr=cr.useProgram("heatmap",nr),{zoom:Sr}=cr.transform;pr.draw(qe,Je.TRIANGLES,es.disabled,ot,ht,So.disabled,Cn(_t.posMatrix,Pt,Sr,jr.paint.get("heatmap-intensity")),null,jr.id,er.layoutVertexBuffer,er.indexBuffer,er.segments,jr.paint,cr.transform.zoom,nr)}qe.viewport.set([0,0,cr.width,cr.height])}(De,ft,bt,Dt):De.renderPass==="translucent"&&function(cr,hr){let jr=cr.context,ea=jr.gl;jr.setColorMode(cr.colorModeForRenderPass());let qe=hr.heatmapFbos.get(t.aU);qe&&(jr.activeTexture.set(ea.TEXTURE0),ea.bindTexture(ea.TEXTURE_2D,qe.colorAttachment.get()),jr.activeTexture.set(ea.TEXTURE1),uh(jr,hr).bind(ea.LINEAR,ea.CLAMP_TO_EDGE),cr.useProgram("heatmapTexture").draw(jr,ea.TRIANGLES,es.disabled,Ss.disabled,cr.colorModeForRenderPass(),So.disabled,Lo(cr,hr,0,1),null,hr.id,cr.viewportBuffer,cr.quadTriangleIndexBuffer,cr.viewportSegments,hr.paint,cr.transform.zoom))}(De,bt)})(R,ae,we,Se);break;case"line":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent")return;let Yt=bt.paint.get("line-opacity"),cr=bt.paint.get("line-width");if(Yt.constantOr(1)===0||cr.constantOr(1)===0)return;let hr=De.depthModeForSublayer(0,es.ReadOnly),jr=De.colorModeForRenderPass(),ea=bt.paint.get("line-dasharray"),qe=bt.paint.get("line-pattern"),Je=qe.constantOr(1),ot=bt.paint.get("line-gradient"),ht=bt.getCrossfadeParameters(),At=Je?"linePattern":ea?"lineSDF":ot?"lineGradient":"line",_t=De.context,Pt=_t.gl,er=!0;for(let nr of Dt){let pr=ft.getTile(nr);if(Je&&!pr.patternsLoaded())continue;let Sr=pr.getBucket(bt);if(!Sr)continue;let Wr=Sr.programConfigurations.get(bt.id),ha=De.context.program.get(),ga=De.useProgram(At,Wr),Pa=er||ga.program!==ha,Ja=De.style.map.terrain&&De.style.map.terrain.getTerrainData(nr),di=qe.constantOr(null);if(di&&pr.imageAtlas){let $i=pr.imageAtlas,Bn=$i.patternPositions[di.to.toString()],Sn=$i.patternPositions[di.from.toString()];Bn&&Sn&&Wr.setConstantPatternPositions(Bn,Sn)}let pi=Ja?nr:null,Ci=Je?as(De,pr,bt,ht,pi):ea?Pn(De,pr,bt,ea,ht,pi):ot?zo(De,pr,bt,Sr.lineClipsArray.length,pi):Jo(De,pr,bt,pi);if(Je)_t.activeTexture.set(Pt.TEXTURE0),pr.imageAtlasTexture.bind(Pt.LINEAR,Pt.CLAMP_TO_EDGE),Wr.updatePaintBuffers(ht);else if(ea&&(Pa||De.lineAtlas.dirty))_t.activeTexture.set(Pt.TEXTURE0),De.lineAtlas.bind(_t);else if(ot){let $i=Sr.gradients[bt.id],Bn=$i.texture;if(bt.gradientVersion!==$i.version){let Sn=256;if(bt.stepInterpolant){let ho=ft.getSource().maxzoom,ts=nr.canonical.z===ho?Math.ceil(1<<De.transform.maxZoom-nr.canonical.z):1;Sn=t.ac(t.aV(Sr.maxLineLength/t.X*1024*ts),256,_t.maxTextureSize)}$i.gradient=t.aW({expression:bt.gradientExpression(),evaluationKey:"lineProgress",resolution:Sn,image:$i.gradient||void 0,clips:Sr.lineClipsArray}),$i.texture?$i.texture.update($i.gradient):$i.texture=new u(_t,$i.gradient,Pt.RGBA),$i.version=bt.gradientVersion,Bn=$i.texture}_t.activeTexture.set(Pt.TEXTURE0),Bn.bind(bt.stepInterpolant?Pt.NEAREST:Pt.LINEAR,Pt.CLAMP_TO_EDGE)}ga.draw(_t,Pt.TRIANGLES,hr,De.stencilModeForClipping(nr),jr,So.disabled,Ci,Ja,bt.id,Sr.layoutVertexBuffer,Sr.indexBuffer,Sr.segments,bt.paint,De.transform.zoom,Wr,Sr.layoutVertexBuffer2),er=!1}})(R,ae,we,Se);break;case"fill":(function(De,ft,bt,Dt){let Yt=bt.paint.get("fill-color"),cr=bt.paint.get("fill-opacity");if(cr.constantOr(1)===0)return;let hr=De.colorModeForRenderPass(),jr=bt.paint.get("fill-pattern"),ea=De.opaquePassEnabledForLayer()&&!jr.constantOr(1)&&Yt.constantOr(t.aM.transparent).a===1&&cr.constantOr(0)===1?"opaque":"translucent";if(De.renderPass===ea){let qe=De.depthModeForSublayer(1,De.renderPass==="opaque"?es.ReadWrite:es.ReadOnly);Df(De,ft,bt,Dt,qe,hr,!1)}if(De.renderPass==="translucent"&&bt.paint.get("fill-antialias")){let qe=De.depthModeForSublayer(bt.getPaintProperty("fill-outline-color")?2:0,es.ReadOnly);Df(De,ft,bt,Dt,qe,hr,!0)}})(R,ae,we,Se);break;case"fill-extrusion":(function(De,ft,bt,Dt){let Yt=bt.paint.get("fill-extrusion-opacity");if(Yt!==0&&De.renderPass==="translucent"){let cr=new es(De.context.gl.LEQUAL,es.ReadWrite,De.depthRangeFor3D);if(Yt!==1||bt.paint.get("fill-extrusion-pattern").constantOr(1))Dc(De,ft,bt,Dt,cr,Ss.disabled,Qs.disabled),Dc(De,ft,bt,Dt,cr,De.stencilModeFor3D(),De.colorModeForRenderPass());else{let hr=De.colorModeForRenderPass();Dc(De,ft,bt,Dt,cr,Ss.disabled,hr)}}})(R,ae,we,Se);break;case"hillshade":(function(De,ft,bt,Dt){if(De.renderPass!=="offscreen"&&De.renderPass!=="translucent")return;let Yt=De.context,cr=De.depthModeForSublayer(0,es.ReadOnly),hr=De.colorModeForRenderPass(),[jr,ea]=De.renderPass==="translucent"?De.stencilConfigForOverlap(Dt):[{},Dt];for(let qe of ea){let Je=ft.getTile(qe);Je.needsHillshadePrepare!==void 0&&Je.needsHillshadePrepare&&De.renderPass==="offscreen"?Eu(De,Je,bt,cr,Ss.disabled,hr):De.renderPass==="translucent"&&Jc(De,qe,Je,bt,cr,jr[qe.overscaledZ],hr)}Yt.viewport.set([0,0,De.width,De.height])})(R,ae,we,Se);break;case"raster":(function(De,ft,bt,Dt){if(De.renderPass!=="translucent"||bt.paint.get("raster-opacity")===0||!Dt.length)return;let Yt=De.context,cr=Yt.gl,hr=ft.getSource(),jr=De.useProgram("raster"),ea=De.colorModeForRenderPass(),[qe,Je]=hr instanceof at?[{},Dt]:De.stencilConfigForOverlap(Dt),ot=Je[Je.length-1].overscaledZ,ht=!De.options.moving;for(let At of Je){let _t=De.depthModeForSublayer(At.overscaledZ-ot,bt.paint.get("raster-opacity")===1?es.ReadWrite:es.ReadOnly,cr.LESS),Pt=ft.getTile(At);Pt.registerFadeDuration(bt.paint.get("raster-fade-duration"));let er=ft.findLoadedParent(At,0),nr=ft.findLoadedSibling(At),pr=wf(Pt,er||nr||null,ft,bt,De.transform,De.style.map.terrain),Sr,Wr,ha=bt.paint.get("raster-resampling")==="nearest"?cr.NEAREST:cr.LINEAR;Yt.activeTexture.set(cr.TEXTURE0),Pt.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Yt.activeTexture.set(cr.TEXTURE1),er?(er.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Sr=Math.pow(2,er.tileID.overscaledZ-Pt.tileID.overscaledZ),Wr=[Pt.tileID.canonical.x*Sr%1,Pt.tileID.canonical.y*Sr%1]):Pt.texture.bind(ha,cr.CLAMP_TO_EDGE,cr.LINEAR_MIPMAP_NEAREST),Pt.texture.useMipmap&&Yt.extTextureFilterAnisotropic&&De.transform.pitch>20&&cr.texParameterf(cr.TEXTURE_2D,Yt.extTextureFilterAnisotropic.TEXTURE_MAX_ANISOTROPY_EXT,Yt.extTextureFilterAnisotropicMax);let ga=De.style.map.terrain&&De.style.map.terrain.getTerrainData(At),Pa=ga?At:null,Ja=Pa?Pa.posMatrix:De.transform.calculatePosMatrix(At.toUnwrapped(),ht),di=Do(Ja,Wr||[0,0],Sr||1,pr,bt);hr instanceof at?jr.draw(Yt,cr.TRIANGLES,_t,Ss.disabled,ea,So.disabled,di,ga,bt.id,hr.boundsBuffer,De.quadTriangleIndexBuffer,hr.boundsSegments):jr.draw(Yt,cr.TRIANGLES,_t,qe[At.overscaledZ],ea,So.disabled,di,ga,bt.id,De.rasterBoundsBuffer,De.quadTriangleIndexBuffer,De.rasterBoundsSegments)}})(R,ae,we,Se);break;case"background":(function(De,ft,bt,Dt){let Yt=bt.paint.get("background-color"),cr=bt.paint.get("background-opacity");if(cr===0)return;let hr=De.context,jr=hr.gl,ea=De.transform,qe=ea.tileSize,Je=bt.paint.get("background-pattern");if(De.isPatternMissing(Je))return;let ot=!Je&&Yt.a===1&&cr===1&&De.opaquePassEnabledForLayer()?"opaque":"translucent";if(De.renderPass!==ot)return;let ht=Ss.disabled,At=De.depthModeForSublayer(0,ot==="opaque"?es.ReadWrite:es.ReadOnly),_t=De.colorModeForRenderPass(),Pt=De.useProgram(Je?"backgroundPattern":"background"),er=Dt||ea.coveringTiles({tileSize:qe,terrain:De.style.map.terrain});Je&&(hr.activeTexture.set(jr.TEXTURE0),De.imageManager.bind(De.context));let nr=bt.getCrossfadeParameters();for(let pr of er){let Sr=Dt?pr.posMatrix:De.transform.calculatePosMatrix(pr.toUnwrapped()),Wr=Je?Is(Sr,cr,De,Je,{tileID:pr,tileSize:qe},nr):ys(Sr,cr,Yt),ha=De.style.map.terrain&&De.style.map.terrain.getTerrainData(pr);Pt.draw(hr,jr.TRIANGLES,At,ht,_t,So.disabled,Wr,ha,bt.id,De.tileExtentBuffer,De.quadTriangleIndexBuffer,De.tileExtentSegments)}})(R,0,we,Se);break;case"custom":(function(De,ft,bt){let Dt=De.context,Yt=bt.implementation;if(De.renderPass==="offscreen"){let cr=Yt.prerender;cr&&(De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),cr.call(Yt,Dt.gl,De.transform.customLayerMatrix()),Dt.setDirty(),De.setBaseState())}else if(De.renderPass==="translucent"){De.setCustomLayerDefaults(),Dt.setColorMode(De.colorModeForRenderPass()),Dt.setStencilMode(Ss.disabled);let cr=Yt.renderingMode==="3d"?new es(De.context.gl.LEQUAL,es.ReadWrite,De.depthRangeFor3D):De.depthModeForSublayer(0,es.ReadOnly);Dt.setDepthMode(cr),Yt.render(Dt.gl,De.transform.customLayerMatrix(),{farZ:De.transform.farZ,nearZ:De.transform.nearZ,fov:De.transform._fov,modelViewProjectionMatrix:De.transform.modelViewProjectionMatrix,projectionMatrix:De.transform.projectionMatrix}),Dt.setDirty(),De.setBaseState(),Dt.bindFramebuffer.set(null)}})(R,0,we)}}translatePosMatrix(R,ae,we,Se,De){if(!we[0]&&!we[1])return R;let ft=De?Se==="map"?this.transform.angle:0:Se==="viewport"?-this.transform.angle:0;if(ft){let Yt=Math.sin(ft),cr=Math.cos(ft);we=[we[0]*cr-we[1]*Yt,we[0]*Yt+we[1]*cr]}let bt=[De?we[0]:Aa(ae,we[0],this.transform.zoom),De?we[1]:Aa(ae,we[1],this.transform.zoom),0],Dt=new Float32Array(16);return t.J(Dt,R,bt),Dt}saveTileTexture(R){let ae=this._tileTextures[R.size[0]];ae?ae.push(R):this._tileTextures[R.size[0]]=[R]}getTileTexture(R){let ae=this._tileTextures[R];return ae&&ae.length>0?ae.pop():null}isPatternMissing(R){if(!R)return!1;if(!R.from||!R.to)return!0;let ae=this.imageManager.getPattern(R.from.toString()),we=this.imageManager.getPattern(R.to.toString());return!ae||!we}useProgram(R,ae){this.cache=this.cache||{};let we=R+(ae?ae.cacheKey:"")+(this._showOverdrawInspector?"/overdraw":"")+(this.style.map.terrain?"/terrain":"");return this.cache[we]||(this.cache[we]=new ma(this.context,ca[R],ae,Fs[R],this._showOverdrawInspector,this.style.map.terrain)),this.cache[we]}setCustomLayerDefaults(){this.context.unbindVAO(),this.context.cullFace.setDefault(),this.context.activeTexture.setDefault(),this.context.pixelStoreUnpack.setDefault(),this.context.pixelStoreUnpackPremultiplyAlpha.setDefault(),this.context.pixelStoreUnpackFlipY.setDefault()}setBaseState(){let R=this.context.gl;this.context.cullFace.set(!1),this.context.viewport.set([0,0,this.width,this.height]),this.context.blendEquation.set(R.FUNC_ADD)}initDebugOverlayCanvas(){this.debugOverlayCanvas==null&&(this.debugOverlayCanvas=document.createElement("canvas"),this.debugOverlayCanvas.width=512,this.debugOverlayCanvas.height=512,this.debugOverlayTexture=new u(this.context,this.debugOverlayCanvas,this.context.gl.RGBA))}destroy(){this.debugOverlayTexture&&this.debugOverlayTexture.destroy()}overLimit(){let{drawingBufferWidth:R,drawingBufferHeight:ae}=this.context.gl;return this.width!==R||this.height!==ae}}class kl{constructor(R,ae){this.points=R,this.planes=ae}static fromInvProjectionMatrix(R,ae,we){let Se=Math.pow(2,we),De=[[-1,1,-1,1],[1,1,-1,1],[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(bt=>{let Dt=1/(bt=t.af([],bt,R))[3]/ae*Se;return t.b1(bt,bt,[Dt,Dt,1/bt[3],Dt])}),ft=[[0,1,2],[6,5,4],[0,3,7],[2,1,5],[3,2,6],[0,4,5]].map(bt=>{let Dt=function(jr,ea){var qe=ea[0],Je=ea[1],ot=ea[2],ht=qe*qe+Je*Je+ot*ot;return ht>0&&(ht=1/Math.sqrt(ht)),jr[0]=ea[0]*ht,jr[1]=ea[1]*ht,jr[2]=ea[2]*ht,jr}([],function(jr,ea,qe){var Je=ea[0],ot=ea[1],ht=ea[2],At=qe[0],_t=qe[1],Pt=qe[2];return jr[0]=ot*Pt-ht*_t,jr[1]=ht*At-Je*Pt,jr[2]=Je*_t-ot*At,jr}([],E([],De[bt[0]],De[bt[1]]),E([],De[bt[2]],De[bt[1]]))),Yt=-((cr=Dt)[0]*(hr=De[bt[1]])[0]+cr[1]*hr[1]+cr[2]*hr[2]);var cr,hr;return Dt.concat(Yt)});return new kl(De,ft)}}class Fc{constructor(R,ae){this.min=R,this.max=ae,this.center=function(we,Se,De){return we[0]=.5*Se[0],we[1]=.5*Se[1],we[2]=.5*Se[2],we}([],function(we,Se,De){return we[0]=Se[0]+De[0],we[1]=Se[1]+De[1],we[2]=Se[2]+De[2],we}([],this.min,this.max))}quadrant(R){let ae=[R%2==0,R<2],we=w(this.min),Se=w(this.max);for(let De=0;De<ae.length;De++)we[De]=ae[De]?this.min[De]:this.center[De],Se[De]=ae[De]?this.center[De]:this.max[De];return Se[2]=this.max[2],new Fc(we,Se)}distanceX(R){return Math.max(Math.min(this.max[0],R[0]),this.min[0])-R[0]}distanceY(R){return Math.max(Math.min(this.max[1],R[1]),this.min[1])-R[1]}intersects(R){let ae=[[this.min[0],this.min[1],this.min[2],1],[this.max[0],this.min[1],this.min[2],1],[this.max[0],this.max[1],this.min[2],1],[this.min[0],this.max[1],this.min[2],1],[this.min[0],this.min[1],this.max[2],1],[this.max[0],this.min[1],this.max[2],1],[this.max[0],this.max[1],this.max[2],1],[this.min[0],this.max[1],this.max[2],1]],we=!0;for(let Se=0;Se<R.planes.length;Se++){let De=R.planes[Se],ft=0;for(let bt=0;bt<ae.length;bt++)t.b2(De,ae[bt])>=0&&ft++;if(ft===0)return 0;ft!==ae.length&&(we=!1)}if(we)return 2;for(let Se=0;Se<3;Se++){let De=Number.MAX_VALUE,ft=-Number.MAX_VALUE;for(let bt=0;bt<R.points.length;bt++){let Dt=R.points[bt][Se]-this.min[Se];De=Math.min(De,Dt),ft=Math.max(ft,Dt)}if(ft<0||De>this.max[Se]-this.min[Se])return 0}return 1}}class $u{constructor(R=0,ae=0,we=0,Se=0){if(isNaN(R)||R<0||isNaN(ae)||ae<0||isNaN(we)||we<0||isNaN(Se)||Se<0)throw new Error("Invalid value for edge-insets, top, bottom, left and right must all be numbers");this.top=R,this.bottom=ae,this.left=we,this.right=Se}interpolate(R,ae,we){return ae.top!=null&&R.top!=null&&(this.top=t.y.number(R.top,ae.top,we)),ae.bottom!=null&&R.bottom!=null&&(this.bottom=t.y.number(R.bottom,ae.bottom,we)),ae.left!=null&&R.left!=null&&(this.left=t.y.number(R.left,ae.left,we)),ae.right!=null&&R.right!=null&&(this.right=t.y.number(R.right,ae.right,we)),this}getCenter(R,ae){let we=t.ac((this.left+R-this.right)/2,0,R),Se=t.ac((this.top+ae-this.bottom)/2,0,ae);return new t.P(we,Se)}equals(R){return this.top===R.top&&this.bottom===R.bottom&&this.left===R.left&&this.right===R.right}clone(){return new $u(this.top,this.bottom,this.left,this.right)}toJSON(){return{top:this.top,bottom:this.bottom,left:this.left,right:this.right}}}let vu=85.051129;class xl{constructor(R,ae,we,Se,De){this.tileSize=512,this._renderWorldCopies=De===void 0||!!De,this._minZoom=R||0,this._maxZoom=ae||22,this._minPitch=we??0,this._maxPitch=Se??60,this.setMaxBounds(),this.width=0,this.height=0,this._center=new t.N(0,0),this._elevation=0,this.zoom=0,this.angle=0,this._fov=.6435011087932844,this._pitch=0,this._unmodified=!0,this._edgeInsets=new $u,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={},this.minElevationForCurrentTile=0}clone(){let R=new xl(this._minZoom,this._maxZoom,this._minPitch,this.maxPitch,this._renderWorldCopies);return R.apply(this),R}apply(R){this.tileSize=R.tileSize,this.latRange=R.latRange,this.lngRange=R.lngRange,this.width=R.width,this.height=R.height,this._center=R._center,this._elevation=R._elevation,this.minElevationForCurrentTile=R.minElevationForCurrentTile,this.zoom=R.zoom,this.angle=R.angle,this._fov=R._fov,this._pitch=R._pitch,this._unmodified=R._unmodified,this._edgeInsets=R._edgeInsets.clone(),this._calcMatrices()}get minZoom(){return this._minZoom}set minZoom(R){this._minZoom!==R&&(this._minZoom=R,this.zoom=Math.max(this.zoom,R))}get maxZoom(){return this._maxZoom}set maxZoom(R){this._maxZoom!==R&&(this._maxZoom=R,this.zoom=Math.min(this.zoom,R))}get minPitch(){return this._minPitch}set minPitch(R){this._minPitch!==R&&(this._minPitch=R,this.pitch=Math.max(this.pitch,R))}get maxPitch(){return this._maxPitch}set maxPitch(R){this._maxPitch!==R&&(this._maxPitch=R,this.pitch=Math.min(this.pitch,R))}get renderWorldCopies(){return this._renderWorldCopies}set renderWorldCopies(R){R===void 0?R=!0:R===null&&(R=!1),this._renderWorldCopies=R}get worldSize(){return this.tileSize*this.scale}get centerOffset(){return this.centerPoint._sub(this.size._div(2))}get size(){return new t.P(this.width,this.height)}get bearing(){return-this.angle/Math.PI*180}set bearing(R){let ae=-t.b3(R,-180,180)*Math.PI/180;this.angle!==ae&&(this._unmodified=!1,this.angle=ae,this._calcMatrices(),this.rotationMatrix=function(){var we=new t.A(4);return t.A!=Float32Array&&(we[1]=0,we[2]=0),we[0]=1,we[3]=1,we}(),function(we,Se,De){var ft=Se[0],bt=Se[1],Dt=Se[2],Yt=Se[3],cr=Math.sin(De),hr=Math.cos(De);we[0]=ft*hr+Dt*cr,we[1]=bt*hr+Yt*cr,we[2]=ft*-cr+Dt*hr,we[3]=bt*-cr+Yt*hr}(this.rotationMatrix,this.rotationMatrix,this.angle))}get pitch(){return this._pitch/Math.PI*180}set pitch(R){let ae=t.ac(R,this.minPitch,this.maxPitch)/180*Math.PI;this._pitch!==ae&&(this._unmodified=!1,this._pitch=ae,this._calcMatrices())}get fov(){return this._fov/Math.PI*180}set fov(R){R=Math.max(.01,Math.min(60,R)),this._fov!==R&&(this._unmodified=!1,this._fov=R/180*Math.PI,this._calcMatrices())}get zoom(){return this._zoom}set zoom(R){let ae=Math.min(Math.max(R,this.minZoom),this.maxZoom);this._zoom!==ae&&(this._unmodified=!1,this._zoom=ae,this.tileZoom=Math.max(0,Math.floor(ae)),this.scale=this.zoomScale(ae),this._constrain(),this._calcMatrices())}get center(){return this._center}set center(R){R.lat===this._center.lat&&R.lng===this._center.lng||(this._unmodified=!1,this._center=R,this._constrain(),this._calcMatrices())}get elevation(){return this._elevation}set elevation(R){R!==this._elevation&&(this._elevation=R,this._constrain(),this._calcMatrices())}get padding(){return this._edgeInsets.toJSON()}set padding(R){this._edgeInsets.equals(R)||(this._unmodified=!1,this._edgeInsets.interpolate(this._edgeInsets,R,1),this._calcMatrices())}get centerPoint(){return this._edgeInsets.getCenter(this.width,this.height)}isPaddingEqual(R){return this._edgeInsets.equals(R)}interpolatePadding(R,ae,we){this._unmodified=!1,this._edgeInsets.interpolate(R,ae,we),this._constrain(),this._calcMatrices()}coveringZoomLevel(R){let ae=(R.roundZoom?Math.round:Math.floor)(this.zoom+this.scaleZoom(this.tileSize/R.tileSize));return Math.max(0,ae)}getVisibleUnwrappedCoordinates(R){let ae=[new t.b4(0,R)];if(this._renderWorldCopies){let we=this.pointCoordinate(new t.P(0,0)),Se=this.pointCoordinate(new t.P(this.width,0)),De=this.pointCoordinate(new t.P(this.width,this.height)),ft=this.pointCoordinate(new t.P(0,this.height)),bt=Math.floor(Math.min(we.x,Se.x,De.x,ft.x)),Dt=Math.floor(Math.max(we.x,Se.x,De.x,ft.x)),Yt=1;for(let cr=bt-Yt;cr<=Dt+Yt;cr++)cr!==0&&ae.push(new t.b4(cr,R))}return ae}coveringTiles(R){var ae,we;let Se=this.coveringZoomLevel(R),De=Se;if(R.minzoom!==void 0&&Se<R.minzoom)return[];R.maxzoom!==void 0&&Se>R.maxzoom&&(Se=R.maxzoom);let ft=this.pointCoordinate(this.getCameraPoint()),bt=t.Z.fromLngLat(this.center),Dt=Math.pow(2,Se),Yt=[Dt*ft.x,Dt*ft.y,0],cr=[Dt*bt.x,Dt*bt.y,0],hr=kl.fromInvProjectionMatrix(this.invModelViewProjectionMatrix,this.worldSize,Se),jr=R.minzoom||0;!R.terrain&&this.pitch<=60&&this._edgeInsets.top<.1&&(jr=Se);let ea=R.terrain?2/Math.min(this.tileSize,R.tileSize)*this.tileSize:3,qe=_t=>({aabb:new Fc([_t*Dt,0,0],[(_t+1)*Dt,Dt,0]),zoom:0,x:0,y:0,wrap:_t,fullyVisible:!1}),Je=[],ot=[],ht=Se,At=R.reparseOverscaled?De:Se;if(this._renderWorldCopies)for(let _t=1;_t<=3;_t++)Je.push(qe(-_t)),Je.push(qe(_t));for(Je.push(qe(0));Je.length>0;){let _t=Je.pop(),Pt=_t.x,er=_t.y,nr=_t.fullyVisible;if(!nr){let ga=_t.aabb.intersects(hr);if(ga===0)continue;nr=ga===2}let pr=R.terrain?Yt:cr,Sr=_t.aabb.distanceX(pr),Wr=_t.aabb.distanceY(pr),ha=Math.max(Math.abs(Sr),Math.abs(Wr));if(_t.zoom===ht||ha>ea+(1<<ht-_t.zoom)-2&&_t.zoom>=jr){let ga=ht-_t.zoom,Pa=Yt[0]-.5-(Pt<<ga),Ja=Yt[1]-.5-(er<<ga);ot.push({tileID:new t.S(_t.zoom===ht?At:_t.zoom,_t.wrap,_t.zoom,Pt,er),distanceSq:m([cr[0]-.5-Pt,cr[1]-.5-er]),tileDistanceToCamera:Math.sqrt(Pa*Pa+Ja*Ja)})}else for(let ga=0;ga<4;ga++){let Pa=(Pt<<1)+ga%2,Ja=(er<<1)+(ga>>1),di=_t.zoom+1,pi=_t.aabb.quadrant(ga);if(R.terrain){let Ci=new t.S(di,_t.wrap,di,Pa,Ja),$i=R.terrain.getMinMaxElevation(Ci),Bn=(ae=$i.minElevation)!==null&&ae!==void 0?ae:this.elevation,Sn=(we=$i.maxElevation)!==null&&we!==void 0?we:this.elevation;pi=new Fc([pi.min[0],pi.min[1],Bn],[pi.max[0],pi.max[1],Sn])}Je.push({aabb:pi,zoom:di,x:Pa,y:Ja,wrap:_t.wrap,fullyVisible:nr})}}return ot.sort((_t,Pt)=>_t.distanceSq-Pt.distanceSq).map(_t=>_t.tileID)}resize(R,ae){this.width=R,this.height=ae,this.pixelsToGLUnits=[2/R,-2/ae],this._constrain(),this._calcMatrices()}get unmodified(){return this._unmodified}zoomScale(R){return Math.pow(2,R)}scaleZoom(R){return Math.log(R)/Math.LN2}project(R){let ae=t.ac(R.lat,-85.051129,vu);return new t.P(t.O(R.lng)*this.worldSize,t.Q(ae)*this.worldSize)}unproject(R){return new t.Z(R.x/this.worldSize,R.y/this.worldSize).toLngLat()}get point(){return this.project(this.center)}getCameraPosition(){return{lngLat:this.pointLocation(this.getCameraPoint()),altitude:Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter+this.elevation}}recalculateZoom(R){let ae=this.elevation,we=Math.cos(this._pitch)*this.cameraToCenterDistance/this._pixelPerMeter,Se=this.pointLocation(this.centerPoint,R),De=R.getElevationForLngLatZoom(Se,this.tileZoom);if(!(this.elevation-De))return;let ft=we+ae-De,bt=Math.cos(this._pitch)*this.cameraToCenterDistance/ft/t.b5(1,Se.lat),Dt=this.scaleZoom(bt/this.tileSize);this._elevation=De,this._center=Se,this.zoom=Dt}setLocationAtPoint(R,ae){let we=this.pointCoordinate(ae),Se=this.pointCoordinate(this.centerPoint),De=this.locationCoordinate(R),ft=new t.Z(De.x-(we.x-Se.x),De.y-(we.y-Se.y));this.center=this.coordinateLocation(ft),this._renderWorldCopies&&(this.center=this.center.wrap())}locationPoint(R,ae){return ae?this.coordinatePoint(this.locationCoordinate(R),ae.getElevationForLngLatZoom(R,this.tileZoom),this.pixelMatrix3D):this.coordinatePoint(this.locationCoordinate(R))}pointLocation(R,ae){return this.coordinateLocation(this.pointCoordinate(R,ae))}locationCoordinate(R){return t.Z.fromLngLat(R)}coordinateLocation(R){return R&&R.toLngLat()}pointCoordinate(R,ae){if(ae){let jr=ae.pointCoordinate(R);if(jr!=null)return jr}let we=[R.x,R.y,0,1],Se=[R.x,R.y,1,1];t.af(we,we,this.pixelMatrixInverse),t.af(Se,Se,this.pixelMatrixInverse);let De=we[3],ft=Se[3],bt=we[1]/De,Dt=Se[1]/ft,Yt=we[2]/De,cr=Se[2]/ft,hr=Yt===cr?0:(0-Yt)/(cr-Yt);return new t.Z(t.y.number(we[0]/De,Se[0]/ft,hr)/this.worldSize,t.y.number(bt,Dt,hr)/this.worldSize)}coordinatePoint(R,ae=0,we=this.pixelMatrix){let Se=[R.x*this.worldSize,R.y*this.worldSize,ae,1];return t.af(Se,Se,we),new t.P(Se[0]/Se[3],Se[1]/Se[3])}getBounds(){let R=Math.max(0,this.height/2-this.getHorizon());return new ie().extend(this.pointLocation(new t.P(0,R))).extend(this.pointLocation(new t.P(this.width,R))).extend(this.pointLocation(new t.P(this.width,this.height))).extend(this.pointLocation(new t.P(0,this.height)))}getMaxBounds(){return this.latRange&&this.latRange.length===2&&this.lngRange&&this.lngRange.length===2?new ie([this.lngRange[0],this.latRange[0]],[this.lngRange[1],this.latRange[1]]):null}getHorizon(){return Math.tan(Math.PI/2-this._pitch)*this.cameraToCenterDistance*.85}setMaxBounds(R){R?(this.lngRange=[R.getWest(),R.getEast()],this.latRange=[R.getSouth(),R.getNorth()],this._constrain()):(this.lngRange=null,this.latRange=[-85.051129,vu])}calculateTileMatrix(R){let ae=R.canonical,we=this.worldSize/this.zoomScale(ae.z),Se=ae.x+Math.pow(2,ae.z)*R.wrap,De=t.an(new Float64Array(16));return t.J(De,De,[Se*we,ae.y*we,0]),t.K(De,De,[we/t.X,we/t.X,1]),De}calculatePosMatrix(R,ae=!1){let we=R.key,Se=ae?this._alignedPosMatrixCache:this._posMatrixCache;if(Se[we])return Se[we];let De=this.calculateTileMatrix(R);return t.L(De,ae?this.alignedModelViewProjectionMatrix:this.modelViewProjectionMatrix,De),Se[we]=new Float32Array(De),Se[we]}calculateFogMatrix(R){let ae=R.key,we=this._fogMatrixCache;if(we[ae])return we[ae];let Se=this.calculateTileMatrix(R);return t.L(Se,this.fogMatrix,Se),we[ae]=new Float32Array(Se),we[ae]}customLayerMatrix(){return this.mercatorMatrix.slice()}getConstrained(R,ae){ae=t.ac(+ae,this.minZoom,this.maxZoom);let we={center:new t.N(R.lng,R.lat),zoom:ae},Se=this.lngRange;if(!this._renderWorldCopies&&Se===null){let _t=179.9999999999;Se=[-_t,_t]}let De=this.tileSize*this.zoomScale(we.zoom),ft=0,bt=De,Dt=0,Yt=De,cr=0,hr=0,{x:jr,y:ea}=this.size;if(this.latRange){let _t=this.latRange;ft=t.Q(_t[1])*De,bt=t.Q(_t[0])*De,bt-ft<ea&&(cr=ea/(bt-ft))}Se&&(Dt=t.b3(t.O(Se[0])*De,0,De),Yt=t.b3(t.O(Se[1])*De,0,De),Yt<Dt&&(Yt+=De),Yt-Dt<jr&&(hr=jr/(Yt-Dt)));let{x:qe,y:Je}=this.project.call({worldSize:De},R),ot,ht,At=Math.max(hr||0,cr||0);if(At){let _t=new t.P(hr?(Yt+Dt)/2:qe,cr?(bt+ft)/2:Je);return we.center=this.unproject.call({worldSize:De},_t).wrap(),we.zoom+=this.scaleZoom(At),we}if(this.latRange){let _t=ea/2;Je-_t<ft&&(ht=ft+_t),Je+_t>bt&&(ht=bt-_t)}if(Se){let _t=(Dt+Yt)/2,Pt=qe;this._renderWorldCopies&&(Pt=t.b3(qe,_t-De/2,_t+De/2));let er=jr/2;Pt-er<Dt&&(ot=Dt+er),Pt+er>Yt&&(ot=Yt-er)}if(ot!==void 0||ht!==void 0){let _t=new t.P(ot??qe,ht??Je);we.center=this.unproject.call({worldSize:De},_t).wrap()}return we}_constrain(){if(!this.center||!this.width||!this.height||this._constraining)return;this._constraining=!0;let R=this._unmodified,{center:ae,zoom:we}=this.getConstrained(this.center,this.zoom);this.center=ae,this.zoom=we,this._unmodified=R,this._constraining=!1}_calcMatrices(){if(!this.height)return;let R=this.centerOffset,ae=this.point.x,we=this.point.y;this.cameraToCenterDistance=.5/Math.tan(this._fov/2)*this.height,this._pixelPerMeter=t.b5(1,this.center.lat)*this.worldSize;let Se=t.an(new Float64Array(16));t.K(Se,Se,[this.width/2,-this.height/2,1]),t.J(Se,Se,[1,-1,0]),this.labelPlaneMatrix=Se,Se=t.an(new Float64Array(16)),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[-1,-1,0]),t.K(Se,Se,[2/this.width,2/this.height,1]),this.glCoordMatrix=Se;let De=this.cameraToCenterDistance+this._elevation*this._pixelPerMeter/Math.cos(this._pitch),ft=Math.min(this.elevation,this.minElevationForCurrentTile),bt=De-ft*this._pixelPerMeter/Math.cos(this._pitch),Dt=ft<0?bt:De,Yt=Math.PI/2+this._pitch,cr=this._fov*(.5+R.y/this.height),hr=Math.sin(cr)*Dt/Math.sin(t.ac(Math.PI-Yt-cr,.01,Math.PI-.01)),jr=this.getHorizon(),ea=2*Math.atan(jr/this.cameraToCenterDistance)*(.5+R.y/(2*jr)),qe=Math.sin(ea)*Dt/Math.sin(t.ac(Math.PI-Yt-ea,.01,Math.PI-.01)),Je=Math.min(hr,qe);this.farZ=1.01*(Math.cos(Math.PI/2-this._pitch)*Je+Dt),this.nearZ=this.height/50,Se=new Float64Array(16),t.b6(Se,this._fov,this.width/this.height,this.nearZ,this.farZ),Se[8]=2*-R.x/this.width,Se[9]=2*R.y/this.height,this.projectionMatrix=t.ae(Se),t.K(Se,Se,[1,-1,1]),t.J(Se,Se,[0,0,-this.cameraToCenterDistance]),t.b7(Se,Se,this._pitch),t.ad(Se,Se,this.angle),t.J(Se,Se,[-ae,-we,0]),this.mercatorMatrix=t.K([],Se,[this.worldSize,this.worldSize,this.worldSize]),t.K(Se,Se,[1,1,this._pixelPerMeter]),this.pixelMatrix=t.L(new Float64Array(16),this.labelPlaneMatrix,Se),t.J(Se,Se,[0,0,-this.elevation]),this.modelViewProjectionMatrix=Se,this.invModelViewProjectionMatrix=t.as([],Se),this.fogMatrix=new Float64Array(16),t.b6(this.fogMatrix,this._fov,this.width/this.height,De,this.farZ),this.fogMatrix[8]=2*-R.x/this.width,this.fogMatrix[9]=2*R.y/this.height,t.K(this.fogMatrix,this.fogMatrix,[1,-1,1]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.cameraToCenterDistance]),t.b7(this.fogMatrix,this.fogMatrix,this._pitch),t.ad(this.fogMatrix,this.fogMatrix,this.angle),t.J(this.fogMatrix,this.fogMatrix,[-ae,-we,0]),t.K(this.fogMatrix,this.fogMatrix,[1,1,this._pixelPerMeter]),t.J(this.fogMatrix,this.fogMatrix,[0,0,-this.elevation]),this.pixelMatrix3D=t.L(new Float64Array(16),this.labelPlaneMatrix,Se);let ot=this.width%2/2,ht=this.height%2/2,At=Math.cos(this.angle),_t=Math.sin(this.angle),Pt=ae-Math.round(ae)+At*ot+_t*ht,er=we-Math.round(we)+At*ht+_t*ot,nr=new Float64Array(Se);if(t.J(nr,nr,[Pt>.5?Pt-1:Pt,er>.5?er-1:er,0]),this.alignedModelViewProjectionMatrix=nr,Se=t.as(new Float64Array(16),this.pixelMatrix),!Se)throw new Error("failed to invert matrix");this.pixelMatrixInverse=Se,this._posMatrixCache={},this._alignedPosMatrixCache={},this._fogMatrixCache={}}maxPitchScaleFactor(){if(!this.pixelMatrixInverse)return 1;let R=this.pointCoordinate(new t.P(0,0)),ae=[R.x*this.worldSize,R.y*this.worldSize,0,1];return t.af(ae,ae,this.pixelMatrix)[3]/this.cameraToCenterDistance}getCameraPoint(){let R=Math.tan(this._pitch)*(this.cameraToCenterDistance||1);return this.centerPoint.add(new t.P(0,R))}getCameraQueryGeometry(R){let ae=this.getCameraPoint();if(R.length===1)return[R[0],ae];{let we=ae.x,Se=ae.y,De=ae.x,ft=ae.y;for(let bt of R)we=Math.min(we,bt.x),Se=Math.min(Se,bt.y),De=Math.max(De,bt.x),ft=Math.max(ft,bt.y);return[new t.P(we,Se),new t.P(De,Se),new t.P(De,ft),new t.P(we,ft),new t.P(we,Se)]}}lngLatToCameraDepth(R,ae){let we=this.locationCoordinate(R),Se=[we.x*this.worldSize,we.y*this.worldSize,ae,1];return t.af(Se,Se,this.modelViewProjectionMatrix),Se[2]/Se[3]}}function hh(Oe,R){let ae,we=!1,Se=null,De=null,ft=()=>{Se=null,we&&(Oe.apply(De,ae),Se=setTimeout(ft,R),we=!1)};return(...bt)=>(we=!0,De=this,ae=bt,Se||ft(),Se)}class Sh{constructor(R){this._getCurrentHash=()=>{let ae=window.location.hash.replace("#","");if(this._hashName){let we;return ae.split("&").map(Se=>Se.split("=")).forEach(Se=>{Se[0]===this._hashName&&(we=Se)}),(we&&we[1]||"").split("/")}return ae.split("/")},this._onHashChange=()=>{let ae=this._getCurrentHash();if(ae.length>=3&&!ae.some(we=>isNaN(we))){let we=this._map.dragRotate.isEnabled()&&this._map.touchZoomRotate.isEnabled()?+(ae[3]||0):this._map.getBearing();return this._map.jumpTo({center:[+ae[2],+ae[1]],zoom:+ae[0],bearing:we,pitch:+(ae[4]||0)}),!0}return!1},this._updateHashUnthrottled=()=>{let ae=window.location.href.replace(/(#.*)?$/,this.getHashString());window.history.replaceState(window.history.state,null,ae)},this._removeHash=()=>{let ae=this._getCurrentHash();if(ae.length===0)return;let we=ae.join("/"),Se=we;Se.split("&").length>0&&(Se=Se.split("&")[0]),this._hashName&&(Se=`${this._hashName}=${we}`);let De=window.location.hash.replace(Se,"");De.startsWith("#&")?De=De.slice(0,1)+De.slice(2):De==="#"&&(De="");let ft=window.location.href.replace(/(#.+)?$/,De);ft=ft.replace("&&","&"),window.history.replaceState(window.history.state,null,ft)},this._updateHash=hh(this._updateHashUnthrottled,300),this._hashName=R&&encodeURIComponent(R)}addTo(R){return this._map=R,addEventListener("hashchange",this._onHashChange,!1),this._map.on("moveend",this._updateHash),this}remove(){return removeEventListener("hashchange",this._onHashChange,!1),this._map.off("moveend",this._updateHash),clearTimeout(this._updateHash()),this._removeHash(),delete this._map,this}getHashString(R){let ae=this._map.getCenter(),we=Math.round(100*this._map.getZoom())/100,Se=Math.ceil((we*Math.LN2+Math.log(512/360/.5))/Math.LN10),De=Math.pow(10,Se),ft=Math.round(ae.lng*De)/De,bt=Math.round(ae.lat*De)/De,Dt=this._map.getBearing(),Yt=this._map.getPitch(),cr="";if(cr+=R?`/${ft}/${bt}/${we}`:`${we}/${bt}/${ft}`,(Dt||Yt)&&(cr+="/"+Math.round(10*Dt)/10),Yt&&(cr+=`/${Math.round(Yt)}`),this._hashName){let hr=this._hashName,jr=!1,ea=window.location.hash.slice(1).split("&").map(qe=>{let Je=qe.split("=")[0];return Je===hr?(jr=!0,`${Je}=${cr}`):qe}).filter(qe=>qe);return jr||ea.push(`${hr}=${cr}`),`#${ea.join("&")}`}return`#${cr}`}}let Uu={linearity:.3,easing:t.b8(0,0,.3,1)},bc=t.e({deceleration:2500,maxSpeed:1400},Uu),lc=t.e({deceleration:20,maxSpeed:1400},Uu),hp=t.e({deceleration:1e3,maxSpeed:360},Uu),vf=t.e({deceleration:1e3,maxSpeed:90},Uu);class Tf{constructor(R){this._map=R,this.clear()}clear(){this._inertiaBuffer=[]}record(R){this._drainInertiaBuffer(),this._inertiaBuffer.push({time:i.now(),settings:R})}_drainInertiaBuffer(){let R=this._inertiaBuffer,ae=i.now();for(;R.length>0&&ae-R[0].time>160;)R.shift()}_onMoveEnd(R){if(this._drainInertiaBuffer(),this._inertiaBuffer.length<2)return;let ae={zoom:0,bearing:0,pitch:0,pan:new t.P(0,0),pinchAround:void 0,around:void 0};for(let{settings:De}of this._inertiaBuffer)ae.zoom+=De.zoomDelta||0,ae.bearing+=De.bearingDelta||0,ae.pitch+=De.pitchDelta||0,De.panDelta&&ae.pan._add(De.panDelta),De.around&&(ae.around=De.around),De.pinchAround&&(ae.pinchAround=De.pinchAround);let we=this._inertiaBuffer[this._inertiaBuffer.length-1].time-this._inertiaBuffer[0].time,Se={};if(ae.pan.mag()){let De=zf(ae.pan.mag(),we,t.e({},bc,R||{}));Se.offset=ae.pan.mult(De.amount/ae.pan.mag()),Se.center=this._map.transform.center,Lu(Se,De)}if(ae.zoom){let De=zf(ae.zoom,we,lc);Se.zoom=this._map.transform.zoom+De.amount,Lu(Se,De)}if(ae.bearing){let De=zf(ae.bearing,we,hp);Se.bearing=this._map.transform.bearing+t.ac(De.amount,-179,179),Lu(Se,De)}if(ae.pitch){let De=zf(ae.pitch,we,vf);Se.pitch=this._map.transform.pitch+De.amount,Lu(Se,De)}if(Se.zoom||Se.bearing){let De=ae.pinchAround===void 0?ae.around:ae.pinchAround;Se.around=De?this._map.unproject(De):this._map.getCenter()}return this.clear(),t.e(Se,{noMoveStart:!0})}}function Lu(Oe,R){(!Oe.duration||Oe.duration<R.duration)&&(Oe.duration=R.duration,Oe.easing=R.easing)}function zf(Oe,R,ae){let{maxSpeed:we,linearity:Se,deceleration:De}=ae,ft=t.ac(Oe*Se/(R/1e3),-we,we),bt=Math.abs(ft)/(De*Se);return{easing:ae.easing,duration:1e3*bt,amount:ft*(bt/2)}}class au extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we,Se={}){let De=n.mousePos(ae.getCanvas(),we),ft=ae.unproject(De);super(R,t.e({point:De,lngLat:ft,originalEvent:we},Se)),this._defaultPrevented=!1,this.target=ae}}class $c extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we){let Se=R==="touchend"?we.changedTouches:we.touches,De=n.touchPos(ae.getCanvasContainer(),Se),ft=De.map(Dt=>ae.unproject(Dt)),bt=De.reduce((Dt,Yt,cr,hr)=>Dt.add(Yt.div(hr.length)),new t.P(0,0));super(R,{points:De,point:bt,lngLats:ft,lngLat:ae.unproject(bt),originalEvent:we}),this._defaultPrevented=!1}}class Mh extends t.k{preventDefault(){this._defaultPrevented=!0}get defaultPrevented(){return this._defaultPrevented}constructor(R,ae,we){super(R,{originalEvent:we}),this._defaultPrevented=!1}}class Ff{constructor(R,ae){this._map=R,this._clickTolerance=ae.clickTolerance}reset(){delete this._mousedownPos}wheel(R){return this._firePreventable(new Mh(R.type,this._map,R))}mousedown(R,ae){return this._mousedownPos=ae,this._firePreventable(new au(R.type,this._map,R))}mouseup(R){this._map.fire(new au(R.type,this._map,R))}click(R,ae){this._mousedownPos&&this._mousedownPos.dist(ae)>=this._clickTolerance||this._map.fire(new au(R.type,this._map,R))}dblclick(R){return this._firePreventable(new au(R.type,this._map,R))}mouseover(R){this._map.fire(new au(R.type,this._map,R))}mouseout(R){this._map.fire(new au(R.type,this._map,R))}touchstart(R){return this._firePreventable(new $c(R.type,this._map,R))}touchmove(R){this._map.fire(new $c(R.type,this._map,R))}touchend(R){this._map.fire(new $c(R.type,this._map,R))}touchcancel(R){this._map.fire(new $c(R.type,this._map,R))}_firePreventable(R){if(this._map.fire(R),R.defaultPrevented)return{}}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class il{constructor(R){this._map=R}reset(){this._delayContextMenu=!1,this._ignoreContextMenu=!0,delete this._contextMenuEvent}mousemove(R){this._map.fire(new au(R.type,this._map,R))}mousedown(){this._delayContextMenu=!0,this._ignoreContextMenu=!1}mouseup(){this._delayContextMenu=!1,this._contextMenuEvent&&(this._map.fire(new au("contextmenu",this._map,this._contextMenuEvent)),delete this._contextMenuEvent)}contextmenu(R){this._delayContextMenu?this._contextMenuEvent=R:this._ignoreContextMenu||this._map.fire(new au(R.type,this._map,R)),this._map.listens("contextmenu")&&R.preventDefault()}isEnabled(){return!0}isActive(){return!1}enable(){}disable(){}}class mu{constructor(R){this._map=R}get transform(){return this._map._requestedCameraState||this._map.transform}get center(){return{lng:this.transform.center.lng,lat:this.transform.center.lat}}get zoom(){return this.transform.zoom}get pitch(){return this.transform.pitch}get bearing(){return this.transform.bearing}unproject(R){return this.transform.pointLocation(t.P.convert(R),this._map.terrain)}}class gu{constructor(R,ae){this._map=R,this._tr=new mu(R),this._el=R.getCanvasContainer(),this._container=R.getContainer(),this._clickTolerance=ae.clickTolerance||1}isEnabled(){return!!this._enabled}isActive(){return!!this._active}enable(){this.isEnabled()||(this._enabled=!0)}disable(){this.isEnabled()&&(this._enabled=!1)}mousedown(R,ae){this.isEnabled()&&R.shiftKey&&R.button===0&&(n.disableDrag(),this._startPos=this._lastPos=ae,this._active=!0)}mousemoveWindow(R,ae){if(!this._active)return;let we=ae;if(this._lastPos.equals(we)||!this._box&&we.dist(this._startPos)<this._clickTolerance)return;let Se=this._startPos;this._lastPos=we,this._box||(this._box=n.create("div","maplibregl-boxzoom",this._container),this._container.classList.add("maplibregl-crosshair"),this._fireEvent("boxzoomstart",R));let De=Math.min(Se.x,we.x),ft=Math.max(Se.x,we.x),bt=Math.min(Se.y,we.y),Dt=Math.max(Se.y,we.y);n.setTransform(this._box,`translate(${De}px,${bt}px)`),this._box.style.width=ft-De+"px",this._box.style.height=Dt-bt+"px"}mouseupWindow(R,ae){if(!this._active||R.button!==0)return;let we=this._startPos,Se=ae;if(this.reset(),n.suppressClick(),we.x!==Se.x||we.y!==Se.y)return this._map.fire(new t.k("boxzoomend",{originalEvent:R})),{cameraAnimation:De=>De.fitScreenCoordinates(we,Se,this._tr.bearing,{linear:!0})};this._fireEvent("boxzoomcancel",R)}keydown(R){this._active&&R.keyCode===27&&(this.reset(),this._fireEvent("boxzoomcancel",R))}reset(){this._active=!1,this._container.classList.remove("maplibregl-crosshair"),this._box&&(n.remove(this._box),this._box=null),n.enableDrag(),delete this._startPos,delete this._lastPos}_fireEvent(R,ae){return this._map.fire(new t.k(R,{originalEvent:ae}))}}function Jf(Oe,R){if(Oe.length!==R.length)throw new Error(`The number of touches and points are not equal - touches ${Oe.length}, points ${R.length}`);let ae={};for(let we=0;we<Oe.length;we++)ae[Oe[we].identifier]=R[we];return ae}class el{constructor(R){this.reset(),this.numTouches=R.numTouches}reset(){delete this.centroid,delete this.startTime,delete this.touches,this.aborted=!1}touchstart(R,ae,we){(this.centroid||we.length>this.numTouches)&&(this.aborted=!0),this.aborted||(this.startTime===void 0&&(this.startTime=R.timeStamp),we.length===this.numTouches&&(this.centroid=function(Se){let De=new t.P(0,0);for(let ft of Se)De._add(ft);return De.div(Se.length)}(ae),this.touches=Jf(we,ae)))}touchmove(R,ae,we){if(this.aborted||!this.centroid)return;let Se=Jf(we,ae);for(let De in this.touches){let ft=Se[De];(!ft||ft.dist(this.touches[De])>30)&&(this.aborted=!0)}}touchend(R,ae,we){if((!this.centroid||R.timeStamp-this.startTime>500)&&(this.aborted=!0),we.length===0){let Se=!this.aborted&&this.centroid;if(this.reset(),Se)return Se}}}class mf{constructor(R){this.singleTap=new el(R),this.numTaps=R.numTaps,this.reset()}reset(){this.lastTime=1/0,delete this.lastTap,this.count=0,this.singleTap.reset()}touchstart(R,ae,we){this.singleTap.touchstart(R,ae,we)}touchmove(R,ae,we){this.singleTap.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this.singleTap.touchend(R,ae,we);if(Se){let De=R.timeStamp-this.lastTime<500,ft=!this.lastTap||this.lastTap.dist(Se)<30;if(De&&ft||this.reset(),this.count++,this.lastTime=R.timeStamp,this.lastTap=Se,this.count===this.numTaps)return this.reset(),Se}}}class wc{constructor(R){this._tr=new mu(R),this._zoomIn=new mf({numTouches:1,numTaps:2}),this._zoomOut=new mf({numTouches:2,numTaps:1}),this.reset()}reset(){this._active=!1,this._zoomIn.reset(),this._zoomOut.reset()}touchstart(R,ae,we){this._zoomIn.touchstart(R,ae,we),this._zoomOut.touchstart(R,ae,we)}touchmove(R,ae,we){this._zoomIn.touchmove(R,ae,we),this._zoomOut.touchmove(R,ae,we)}touchend(R,ae,we){let Se=this._zoomIn.touchend(R,ae,we),De=this._zoomOut.touchend(R,ae,we),ft=this._tr;return Se?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom+1,around:ft.unproject(Se)},{originalEvent:R})}):De?(this._active=!0,R.preventDefault(),setTimeout(()=>this.reset(),0),{cameraAnimation:bt=>bt.easeTo({duration:300,zoom:ft.zoom-1,around:ft.unproject(De)},{originalEvent:R})}):void 0}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ju{constructor(R){this._enabled=!!R.enable,this._moveStateManager=R.moveStateManager,this._clickTolerance=R.clickTolerance||1,this._moveFunction=R.move,this._activateOnStart=!!R.activateOnStart,R.assignEvents(this),this.reset()}reset(R){this._active=!1,this._moved=!1,delete this._lastPoint,this._moveStateManager.endMove(R)}_move(...R){let ae=this._moveFunction(...R);if(ae.bearingDelta||ae.pitchDelta||ae.around||ae.panDelta)return this._active=!0,ae}dragStart(R,ae){this.isEnabled()&&!this._lastPoint&&this._moveStateManager.isValidStartEvent(R)&&(this._moveStateManager.startMove(R),this._lastPoint=ae.length?ae[0]:ae,this._activateOnStart&&this._lastPoint&&(this._active=!0))}dragMove(R,ae){if(!this.isEnabled())return;let we=this._lastPoint;if(!we)return;if(R.preventDefault(),!this._moveStateManager.isValidMoveEvent(R))return void this.reset(R);let Se=ae.length?ae[0]:ae;return!this._moved&&Se.dist(we)<this._clickTolerance?void 0:(this._moved=!0,this._lastPoint=Se,this._move(we,Se))}dragEnd(R){this.isEnabled()&&this._lastPoint&&this._moveStateManager.isValidEndEvent(R)&&(this._moved&&n.suppressClick(),this.reset(R))}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}getClickTolerance(){return this._clickTolerance}}let Af={0:1,2:2};class uc{constructor(R){this._correctEvent=R.checkCorrectEvent}startMove(R){let ae=n.mouseButton(R);this._eventButton=ae}endMove(R){delete this._eventButton}isValidStartEvent(R){return this._correctEvent(R)}isValidMoveEvent(R){return!function(ae,we){let Se=Af[we];return ae.buttons===void 0||(ae.buttons&Se)!==Se}(R,this._eventButton)}isValidEndEvent(R){return n.mouseButton(R)===this._eventButton}}class Qc{constructor(){this._firstTouch=void 0}_isOneFingerTouch(R){return R.targetTouches.length===1}_isSameTouchEvent(R){return R.targetTouches[0].identifier===this._firstTouch}startMove(R){this._firstTouch=R.targetTouches[0].identifier}endMove(R){delete this._firstTouch}isValidStartEvent(R){return this._isOneFingerTouch(R)}isValidMoveEvent(R){return this._isOneFingerTouch(R)&&this._isSameTouchEvent(R)}isValidEndEvent(R){return this._isOneFingerTouch(R)&&this._isSameTouchEvent(R)}}let $f=Oe=>{Oe.mousedown=Oe.dragStart,Oe.mousemoveWindow=Oe.dragMove,Oe.mouseup=Oe.dragEnd,Oe.contextmenu=R=>{R.preventDefault()}},Vl=({enable:Oe,clickTolerance:R,bearingDegreesPerPixelMoved:ae=.8})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({bearingDelta:(De.x-Se.x)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})},Qf=({enable:Oe,clickTolerance:R,pitchDegreesPerPixelMoved:ae=-.5})=>{let we=new uc({checkCorrectEvent:Se=>n.mouseButton(Se)===0&&Se.ctrlKey||n.mouseButton(Se)===2});return new ju({clickTolerance:R,move:(Se,De)=>({pitchDelta:(De.y-Se.y)*ae}),moveStateManager:we,enable:Oe,assignEvents:$f})};class Vu{constructor(R,ae){this._clickTolerance=R.clickTolerance||1,this._map=ae,this.reset()}reset(){this._active=!1,this._touches={},this._sum=new t.P(0,0)}_shouldBePrevented(R){return R<(this._map.cooperativeGestures.isEnabled()?2:1)}touchstart(R,ae,we){return this._calculateTransform(R,ae,we)}touchmove(R,ae,we){if(this._active){if(!this._shouldBePrevented(we.length))return R.preventDefault(),this._calculateTransform(R,ae,we);this._map.cooperativeGestures.notifyGestureBlocked("touch_pan",R)}}touchend(R,ae,we){this._calculateTransform(R,ae,we),this._active&&this._shouldBePrevented(we.length)&&this.reset()}touchcancel(){this.reset()}_calculateTransform(R,ae,we){we.length>0&&(this._active=!0);let Se=Jf(we,ae),De=new t.P(0,0),ft=new t.P(0,0),bt=0;for(let Yt in Se){let cr=Se[Yt],hr=this._touches[Yt];hr&&(De._add(cr),ft._add(cr.sub(hr)),bt++,Se[Yt]=cr)}if(this._touches=Se,this._shouldBePrevented(bt)||!ft.mag())return;let Dt=ft.div(bt);return this._sum._add(Dt),this._sum.mag()<this._clickTolerance?void 0:{around:De.div(bt),panDelta:Dt}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class Tc{constructor(){this.reset()}reset(){this._active=!1,delete this._firstTwoTouches}touchstart(R,ae,we){this._firstTwoTouches||we.length<2||(this._firstTwoTouches=[we[0].identifier,we[1].identifier],this._start([ae[0],ae[1]]))}touchmove(R,ae,we){if(!this._firstTwoTouches)return;R.preventDefault();let[Se,De]=this._firstTwoTouches,ft=cc(we,ae,Se),bt=cc(we,ae,De);if(!ft||!bt)return;let Dt=this._aroundCenter?null:ft.add(bt).div(2);return this._move([ft,bt],Dt,R)}touchend(R,ae,we){if(!this._firstTwoTouches)return;let[Se,De]=this._firstTwoTouches,ft=cc(we,ae,Se),bt=cc(we,ae,De);ft&&bt||(this._active&&n.suppressClick(),this.reset())}touchcancel(){this.reset()}enable(R){this._enabled=!0,this._aroundCenter=!!R&&R.around==="center"}disable(){this._enabled=!1,this.reset()}isEnabled(){return!!this._enabled}isActive(){return!!this._active}}function cc(Oe,R,ae){for(let we=0;we<Oe.length;we++)if(Oe[we].identifier===ae)return R[we]}function Cl(Oe,R){return Math.log(Oe/R)/Math.LN2}class iu extends Tc{reset(){super.reset(),delete this._distance,delete this._startDistance}_start(R){this._startDistance=this._distance=R[0].dist(R[1])}_move(R,ae){let we=this._distance;if(this._distance=R[0].dist(R[1]),this._active||!(Math.abs(Cl(this._distance,this._startDistance))<.1))return this._active=!0,{zoomDelta:Cl(this._distance,we),pinchAround:ae}}}function fc(Oe,R){return 180*Oe.angleWith(R)/Math.PI}class Oc extends Tc{reset(){super.reset(),delete this._minDiameter,delete this._startVector,delete this._vector}_start(R){this._startVector=this._vector=R[0].sub(R[1]),this._minDiameter=R[0].dist(R[1])}_move(R,ae,we){let Se=this._vector;if(this._vector=R[0].sub(R[1]),this._active||!this._isBelowThreshold(this._vector))return this._active=!0,{bearingDelta:fc(this._vector,Se),pinchAround:ae}}_isBelowThreshold(R){this._minDiameter=Math.min(this._minDiameter,R.mag());let ae=25/(Math.PI*this._minDiameter)*360,we=fc(R,this._startVector);return Math.abs(we)<ae}}function Qu(Oe){return Math.abs(Oe.y)>Math.abs(Oe.x)}class ef extends Tc{constructor(R){super(),this._currentTouchCount=0,this._map=R}reset(){super.reset(),this._valid=void 0,delete this._firstMove,delete this._lastPoints}touchstart(R,ae,we){super.touchstart(R,ae,we),this._currentTouchCount=we.length}_start(R){this._lastPoints=R,Qu(R[0].sub(R[1]))&&(this._valid=!1)}_move(R,ae,we){if(this._map.cooperativeGestures.isEnabled()&&this._currentTouchCount<3)return;let Se=R[0].sub(this._lastPoints[0]),De=R[1].sub(this._lastPoints[1]);return this._valid=this.gestureBeginsVertically(Se,De,we.timeStamp),this._valid?(this._lastPoints=R,this._active=!0,{pitchDelta:(Se.y+De.y)/2*-.5}):void 0}gestureBeginsVertically(R,ae,we){if(this._valid!==void 0)return this._valid;let Se=R.mag()>=2,De=ae.mag()>=2;if(!Se&&!De)return;if(!Se||!De)return this._firstMove===void 0&&(this._firstMove=we),we-this._firstMove<100&&void 0;let ft=R.y>0==ae.y>0;return Qu(R)&&Qu(ae)&&ft}}let Zt={panStep:100,bearingStep:15,pitchStep:10};class fr{constructor(R){this._tr=new mu(R);let ae=Zt;this._panStep=ae.panStep,this._bearingStep=ae.bearingStep,this._pitchStep=ae.pitchStep,this._rotationDisabled=!1}reset(){this._active=!1}keydown(R){if(R.altKey||R.ctrlKey||R.metaKey)return;let ae=0,we=0,Se=0,De=0,ft=0;switch(R.keyCode){case 61:case 107:case 171:case 187:ae=1;break;case 189:case 109:case 173:ae=-1;break;case 37:R.shiftKey?we=-1:(R.preventDefault(),De=-1);break;case 39:R.shiftKey?we=1:(R.preventDefault(),De=1);break;case 38:R.shiftKey?Se=1:(R.preventDefault(),ft=-1);break;case 40:R.shiftKey?Se=-1:(R.preventDefault(),ft=1);break;default:return}return this._rotationDisabled&&(we=0,Se=0),{cameraAnimation:bt=>{let Dt=this._tr;bt.easeTo({duration:300,easeId:"keyboardHandler",easing:Yr,zoom:ae?Math.round(Dt.zoom)+ae*(R.shiftKey?2:1):Dt.zoom,bearing:Dt.bearing+we*this._bearingStep,pitch:Dt.pitch+Se*this._pitchStep,offset:[-De*this._panStep,-ft*this._panStep],center:Dt.center},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}disableRotation(){this._rotationDisabled=!0}enableRotation(){this._rotationDisabled=!1}}function Yr(Oe){return Oe*(2-Oe)}let qr=4.000244140625;class ba{constructor(R,ae){this._onTimeout=we=>{this._type="wheel",this._delta-=this._lastValue,this._active||this._start(we)},this._map=R,this._tr=new mu(R),this._triggerRenderFrame=ae,this._delta=0,this._defaultZoomRate=.01,this._wheelZoomRate=.0022222222222222222}setZoomRate(R){this._defaultZoomRate=R}setWheelZoomRate(R){this._wheelZoomRate=R}isEnabled(){return!!this._enabled}isActive(){return!!this._active||this._finishTimeout!==void 0}isZooming(){return!!this._zooming}enable(R){this.isEnabled()||(this._enabled=!0,this._aroundCenter=!!R&&R.around==="center")}disable(){this.isEnabled()&&(this._enabled=!1)}_shouldBePrevented(R){return!!this._map.cooperativeGestures.isEnabled()&&!(R.ctrlKey||this._map.cooperativeGestures.isBypassed(R))}wheel(R){if(!this.isEnabled())return;if(this._shouldBePrevented(R))return void this._map.cooperativeGestures.notifyGestureBlocked("wheel_zoom",R);let ae=R.deltaMode===WheelEvent.DOM_DELTA_LINE?40*R.deltaY:R.deltaY,we=i.now(),Se=we-(this._lastWheelEventTime||0);this._lastWheelEventTime=we,ae!==0&&ae%qr==0?this._type="wheel":ae!==0&&Math.abs(ae)<4?this._type="trackpad":Se>400?(this._type=null,this._lastValue=ae,this._timeout=setTimeout(this._onTimeout,40,R)):this._type||(this._type=Math.abs(Se*ae)<200?"trackpad":"wheel",this._timeout&&(clearTimeout(this._timeout),this._timeout=null,ae+=this._lastValue)),R.shiftKey&&ae&&(ae/=4),this._type&&(this._lastWheelEvent=R,this._delta-=ae,this._active||this._start(R)),R.preventDefault()}_start(R){if(!this._delta)return;this._frameId&&(this._frameId=null),this._active=!0,this.isZooming()||(this._zooming=!0),this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout);let ae=n.mousePos(this._map.getCanvas(),R),we=this._tr;this._around=ae.y>we.transform.height/2-we.transform.getHorizon()?t.N.convert(this._aroundCenter?we.center:we.unproject(ae)):t.N.convert(we.center),this._aroundPoint=we.transform.locationPoint(this._around),this._frameId||(this._frameId=!0,this._triggerRenderFrame())}renderFrame(){if(!this._frameId||(this._frameId=null,!this.isActive()))return;let R=this._tr.transform;if(this._delta!==0){let Dt=this._type==="wheel"&&Math.abs(this._delta)>qr?this._wheelZoomRate:this._defaultZoomRate,Yt=2/(1+Math.exp(-Math.abs(this._delta*Dt)));this._delta<0&&Yt!==0&&(Yt=1/Yt);let cr=typeof this._targetZoom=="number"?R.zoomScale(this._targetZoom):R.scale;this._targetZoom=Math.min(R.maxZoom,Math.max(R.minZoom,R.scaleZoom(cr*Yt))),this._type==="wheel"&&(this._startZoom=R.zoom,this._easing=this._smoothOutEasing(200)),this._delta=0}let ae=typeof this._targetZoom=="number"?this._targetZoom:R.zoom,we=this._startZoom,Se=this._easing,De,ft=!1,bt=i.now()-this._lastWheelEventTime;if(this._type==="wheel"&&we&&Se&&bt){let Dt=Math.min(bt/200,1),Yt=Se(Dt);De=t.y.number(we,ae,Yt),Dt<1?this._frameId||(this._frameId=!0):ft=!0}else De=ae,ft=!0;return this._active=!0,ft&&(this._active=!1,this._finishTimeout=setTimeout(()=>{this._zooming=!1,this._triggerRenderFrame(),delete this._targetZoom,delete this._finishTimeout},200)),{noInertia:!0,needsRenderFrame:!ft,zoomDelta:De-R.zoom,around:this._aroundPoint,originalEvent:this._lastWheelEvent}}_smoothOutEasing(R){let ae=t.b9;if(this._prevEase){let we=this._prevEase,Se=(i.now()-we.start)/we.duration,De=we.easing(Se+.01)-we.easing(Se),ft=.27/Math.sqrt(De*De+1e-4)*.01,bt=Math.sqrt(.0729-ft*ft);ae=t.b8(ft,bt,.25,1)}return this._prevEase={start:i.now(),duration:R,easing:ae},ae}reset(){this._active=!1,this._zooming=!1,delete this._targetZoom,this._finishTimeout&&(clearTimeout(this._finishTimeout),delete this._finishTimeout)}}class Ka{constructor(R,ae){this._clickZoom=R,this._tapZoom=ae}enable(){this._clickZoom.enable(),this._tapZoom.enable()}disable(){this._clickZoom.disable(),this._tapZoom.disable()}isEnabled(){return this._clickZoom.isEnabled()&&this._tapZoom.isEnabled()}isActive(){return this._clickZoom.isActive()||this._tapZoom.isActive()}}class oi{constructor(R){this._tr=new mu(R),this.reset()}reset(){this._active=!1}dblclick(R,ae){return R.preventDefault(),{cameraAnimation:we=>{we.easeTo({duration:300,zoom:this._tr.zoom+(R.shiftKey?-1:1),around:this._tr.unproject(ae)},{originalEvent:R})}}}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class yi{constructor(){this._tap=new mf({numTouches:1,numTaps:1}),this.reset()}reset(){this._active=!1,delete this._swipePoint,delete this._swipeTouch,delete this._tapTime,delete this._tapPoint,this._tap.reset()}touchstart(R,ae,we){if(!this._swipePoint)if(this._tapTime){let Se=ae[0],De=R.timeStamp-this._tapTime<500,ft=this._tapPoint.dist(Se)<30;De&&ft?we.length>0&&(this._swipePoint=Se,this._swipeTouch=we[0].identifier):this.reset()}else this._tap.touchstart(R,ae,we)}touchmove(R,ae,we){if(this._tapTime){if(this._swipePoint){if(we[0].identifier!==this._swipeTouch)return;let Se=ae[0],De=Se.y-this._swipePoint.y;return this._swipePoint=Se,R.preventDefault(),this._active=!0,{zoomDelta:De/128}}}else this._tap.touchmove(R,ae,we)}touchend(R,ae,we){if(this._tapTime)this._swipePoint&&we.length===0&&this.reset();else{let Se=this._tap.touchend(R,ae,we);Se&&(this._tapTime=R.timeStamp,this._tapPoint=Se)}}touchcancel(){this.reset()}enable(){this._enabled=!0}disable(){this._enabled=!1,this.reset()}isEnabled(){return this._enabled}isActive(){return this._active}}class ki{constructor(R,ae,we){this._el=R,this._mousePan=ae,this._touchPan=we}enable(R){this._inertiaOptions=R||{},this._mousePan.enable(),this._touchPan.enable(),this._el.classList.add("maplibregl-touch-drag-pan")}disable(){this._mousePan.disable(),this._touchPan.disable(),this._el.classList.remove("maplibregl-touch-drag-pan")}isEnabled(){return this._mousePan.isEnabled()&&this._touchPan.isEnabled()}isActive(){return this._mousePan.isActive()||this._touchPan.isActive()}}class Bi{constructor(R,ae,we){this._pitchWithRotate=R.pitchWithRotate,this._mouseRotate=ae,this._mousePitch=we}enable(){this._mouseRotate.enable(),this._pitchWithRotate&&this._mousePitch.enable()}disable(){this._mouseRotate.disable(),this._mousePitch.disable()}isEnabled(){return this._mouseRotate.isEnabled()&&(!this._pitchWithRotate||this._mousePitch.isEnabled())}isActive(){return this._mouseRotate.isActive()||this._mousePitch.isActive()}}class li{constructor(R,ae,we,Se){this._el=R,this._touchZoom=ae,this._touchRotate=we,this._tapDragZoom=Se,this._rotationDisabled=!1,this._enabled=!0}enable(R){this._touchZoom.enable(R),this._rotationDisabled||this._touchRotate.enable(R),this._tapDragZoom.enable(),this._el.classList.add("maplibregl-touch-zoom-rotate")}disable(){this._touchZoom.disable(),this._touchRotate.disable(),this._tapDragZoom.disable(),this._el.classList.remove("maplibregl-touch-zoom-rotate")}isEnabled(){return this._touchZoom.isEnabled()&&(this._rotationDisabled||this._touchRotate.isEnabled())&&this._tapDragZoom.isEnabled()}isActive(){return this._touchZoom.isActive()||this._touchRotate.isActive()||this._tapDragZoom.isActive()}disableRotation(){this._rotationDisabled=!0,this._touchRotate.disable()}enableRotation(){this._rotationDisabled=!1,this._touchZoom.isEnabled()&&this._touchRotate.enable()}}class _i{constructor(R,ae){this._bypassKey=navigator.userAgent.indexOf("Mac")!==-1?"metaKey":"ctrlKey",this._map=R,this._options=ae,this._enabled=!1}isActive(){return!1}reset(){}_setupUI(){if(this._container)return;let R=this._map.getCanvasContainer();R.classList.add("maplibregl-cooperative-gestures"),this._container=n.create("div","maplibregl-cooperative-gesture-screen",R);let ae=this._map._getUIString("CooperativeGesturesHandler.WindowsHelpText");this._bypassKey==="metaKey"&&(ae=this._map._getUIString("CooperativeGesturesHandler.MacHelpText"));let we=this._map._getUIString("CooperativeGesturesHandler.MobileHelpText"),Se=document.createElement("div");Se.className="maplibregl-desktop-message",Se.textContent=ae,this._container.appendChild(Se);let De=document.createElement("div");De.className="maplibregl-mobile-message",De.textContent=we,this._container.appendChild(De),this._container.setAttribute("aria-hidden","true")}_destroyUI(){this._container&&(n.remove(this._container),this._map.getCanvasContainer().classList.remove("maplibregl-cooperative-gestures")),delete this._container}enable(){this._setupUI(),this._enabled=!0}disable(){this._enabled=!1,this._destroyUI()}isEnabled(){return this._enabled}isBypassed(R){return R[this._bypassKey]}notifyGestureBlocked(R,ae){this._enabled&&(this._map.fire(new t.k("cooperativegestureprevented",{gestureType:R,originalEvent:ae})),this._container.classList.add("maplibregl-show"),setTimeout(()=>{this._container.classList.remove("maplibregl-show")},100))}}let vi=Oe=>Oe.zoom||Oe.drag||Oe.pitch||Oe.rotate;class ti extends t.k{}function rn(Oe){return Oe.panDelta&&Oe.panDelta.mag()||Oe.zoomDelta||Oe.bearingDelta||Oe.pitchDelta}class Kn{constructor(R,ae){this.handleWindowEvent=Se=>{this.handleEvent(Se,`${Se.type}Window`)},this.handleEvent=(Se,De)=>{if(Se.type==="blur")return void this.stop(!0);this._updatingCamera=!0;let ft=Se.type==="renderFrame"?void 0:Se,bt={needsRenderFrame:!1},Dt={},Yt={},cr=Se.touches,hr=cr?this._getMapTouches(cr):void 0,jr=hr?n.touchPos(this._map.getCanvas(),hr):n.mousePos(this._map.getCanvas(),Se);for(let{handlerName:Je,handler:ot,allowed:ht}of this._handlers){if(!ot.isEnabled())continue;let At;this._blockedByActive(Yt,ht,Je)?ot.reset():ot[De||Se.type]&&(At=ot[De||Se.type](Se,jr,hr),this.mergeHandlerResult(bt,Dt,At,Je,ft),At&&At.needsRenderFrame&&this._triggerRenderFrame()),(At||ot.isActive())&&(Yt[Je]=ot)}let ea={};for(let Je in this._previousActiveHandlers)Yt[Je]||(ea[Je]=ft);this._previousActiveHandlers=Yt,(Object.keys(ea).length||rn(bt))&&(this._changes.push([bt,Dt,ea]),this._triggerRenderFrame()),(Object.keys(Yt).length||rn(bt))&&this._map._stop(!0),this._updatingCamera=!1;let{cameraAnimation:qe}=bt;qe&&(this._inertia.clear(),this._fireEvents({},{},!0),this._changes=[],qe(this._map))},this._map=R,this._el=this._map.getCanvasContainer(),this._handlers=[],this._handlersById={},this._changes=[],this._inertia=new Tf(R),this._bearingSnap=ae.bearingSnap,this._previousActiveHandlers={},this._eventsInProgress={},this._addDefaultHandlers(ae);let we=this._el;this._listeners=[[we,"touchstart",{passive:!0}],[we,"touchmove",{passive:!1}],[we,"touchend",void 0],[we,"touchcancel",void 0],[we,"mousedown",void 0],[we,"mousemove",void 0],[we,"mouseup",void 0],[document,"mousemove",{capture:!0}],[document,"mouseup",void 0],[we,"mouseover",void 0],[we,"mouseout",void 0],[we,"dblclick",void 0],[we,"click",void 0],[we,"keydown",{capture:!1}],[we,"keyup",void 0],[we,"wheel",{passive:!1}],[we,"contextmenu",void 0],[window,"blur",void 0]];for(let[Se,De,ft]of this._listeners)n.addEventListener(Se,De,Se===document?this.handleWindowEvent:this.handleEvent,ft)}destroy(){for(let[R,ae,we]of this._listeners)n.removeEventListener(R,ae,R===document?this.handleWindowEvent:this.handleEvent,we)}_addDefaultHandlers(R){let ae=this._map,we=ae.getCanvasContainer();this._add("mapEvent",new Ff(ae,R));let Se=ae.boxZoom=new gu(ae,R);this._add("boxZoom",Se),R.interactive&&R.boxZoom&&Se.enable();let De=ae.cooperativeGestures=new _i(ae,R.cooperativeGestures);this._add("cooperativeGestures",De),R.cooperativeGestures&&De.enable();let ft=new wc(ae),bt=new oi(ae);ae.doubleClickZoom=new Ka(bt,ft),this._add("tapZoom",ft),this._add("clickZoom",bt),R.interactive&&R.doubleClickZoom&&ae.doubleClickZoom.enable();let Dt=new yi;this._add("tapDragZoom",Dt);let Yt=ae.touchPitch=new ef(ae);this._add("touchPitch",Yt),R.interactive&&R.touchPitch&&ae.touchPitch.enable(R.touchPitch);let cr=Vl(R),hr=Qf(R);ae.dragRotate=new Bi(R,cr,hr),this._add("mouseRotate",cr,["mousePitch"]),this._add("mousePitch",hr,["mouseRotate"]),R.interactive&&R.dragRotate&&ae.dragRotate.enable();let jr=(({enable:At,clickTolerance:_t})=>{let Pt=new uc({checkCorrectEvent:er=>n.mouseButton(er)===0&&!er.ctrlKey});return new ju({clickTolerance:_t,move:(er,nr)=>({around:nr,panDelta:nr.sub(er)}),activateOnStart:!0,moveStateManager:Pt,enable:At,assignEvents:$f})})(R),ea=new Vu(R,ae);ae.dragPan=new ki(we,jr,ea),this._add("mousePan",jr),this._add("touchPan",ea,["touchZoom","touchRotate"]),R.interactive&&R.dragPan&&ae.dragPan.enable(R.dragPan);let qe=new Oc,Je=new iu;ae.touchZoomRotate=new li(we,Je,qe,Dt),this._add("touchRotate",qe,["touchPan","touchZoom"]),this._add("touchZoom",Je,["touchPan","touchRotate"]),R.interactive&&R.touchZoomRotate&&ae.touchZoomRotate.enable(R.touchZoomRotate);let ot=ae.scrollZoom=new ba(ae,()=>this._triggerRenderFrame());this._add("scrollZoom",ot,["mousePan"]),R.interactive&&R.scrollZoom&&ae.scrollZoom.enable(R.scrollZoom);let ht=ae.keyboard=new fr(ae);this._add("keyboard",ht),R.interactive&&R.keyboard&&ae.keyboard.enable(),this._add("blockableMapEvent",new il(ae))}_add(R,ae,we){this._handlers.push({handlerName:R,handler:ae,allowed:we}),this._handlersById[R]=ae}stop(R){if(!this._updatingCamera){for(let{handler:ae}of this._handlers)ae.reset();this._inertia.clear(),this._fireEvents({},{},R),this._changes=[]}}isActive(){for(let{handler:R}of this._handlers)if(R.isActive())return!0;return!1}isZooming(){return!!this._eventsInProgress.zoom||this._map.scrollZoom.isZooming()}isRotating(){return!!this._eventsInProgress.rotate}isMoving(){return!!vi(this._eventsInProgress)||this.isZooming()}_blockedByActive(R,ae,we){for(let Se in R)if(Se!==we&&(!ae||ae.indexOf(Se)<0))return!0;return!1}_getMapTouches(R){let ae=[];for(let we of R)this._el.contains(we.target)&&ae.push(we);return ae}mergeHandlerResult(R,ae,we,Se,De){if(!we)return;t.e(R,we);let ft={handlerName:Se,originalEvent:we.originalEvent||De};we.zoomDelta!==void 0&&(ae.zoom=ft),we.panDelta!==void 0&&(ae.drag=ft),we.pitchDelta!==void 0&&(ae.pitch=ft),we.bearingDelta!==void 0&&(ae.rotate=ft)}_applyChanges(){let R={},ae={},we={};for(let[Se,De,ft]of this._changes)Se.panDelta&&(R.panDelta=(R.panDelta||new t.P(0,0))._add(Se.panDelta)),Se.zoomDelta&&(R.zoomDelta=(R.zoomDelta||0)+Se.zoomDelta),Se.bearingDelta&&(R.bearingDelta=(R.bearingDelta||0)+Se.bearingDelta),Se.pitchDelta&&(R.pitchDelta=(R.pitchDelta||0)+Se.pitchDelta),Se.around!==void 0&&(R.around=Se.around),Se.pinchAround!==void 0&&(R.pinchAround=Se.pinchAround),Se.noInertia&&(R.noInertia=Se.noInertia),t.e(ae,De),t.e(we,ft);this._updateMapTransform(R,ae,we),this._changes=[]}_updateMapTransform(R,ae,we){let Se=this._map,De=Se._getTransformForUpdate(),ft=Se.terrain;if(!(rn(R)||ft&&this._terrainMovement))return this._fireEvents(ae,we,!0);let{panDelta:bt,zoomDelta:Dt,bearingDelta:Yt,pitchDelta:cr,around:hr,pinchAround:jr}=R;jr!==void 0&&(hr=jr),Se._stop(!0),hr=hr||Se.transform.centerPoint;let ea=De.pointLocation(bt?hr.sub(bt):hr);Yt&&(De.bearing+=Yt),cr&&(De.pitch+=cr),Dt&&(De.zoom+=Dt),ft?this._terrainMovement||!ae.drag&&!ae.zoom?ae.drag&&this._terrainMovement?De.center=De.pointLocation(De.centerPoint.sub(bt)):De.setLocationAtPoint(ea,hr):(this._terrainMovement=!0,this._map._elevationFreeze=!0,De.setLocationAtPoint(ea,hr)):De.setLocationAtPoint(ea,hr),Se._applyUpdatedTransform(De),this._map._update(),R.noInertia||this._inertia.record(R),this._fireEvents(ae,we,!0)}_fireEvents(R,ae,we){let Se=vi(this._eventsInProgress),De=vi(R),ft={};for(let hr in R){let{originalEvent:jr}=R[hr];this._eventsInProgress[hr]||(ft[`${hr}start`]=jr),this._eventsInProgress[hr]=R[hr]}!Se&&De&&this._fireEvent("movestart",De.originalEvent);for(let hr in ft)this._fireEvent(hr,ft[hr]);De&&this._fireEvent("move",De.originalEvent);for(let hr in R){let{originalEvent:jr}=R[hr];this._fireEvent(hr,jr)}let bt={},Dt;for(let hr in this._eventsInProgress){let{handlerName:jr,originalEvent:ea}=this._eventsInProgress[hr];this._handlersById[jr].isActive()||(delete this._eventsInProgress[hr],Dt=ae[jr]||ea,bt[`${hr}end`]=Dt)}for(let hr in bt)this._fireEvent(hr,bt[hr]);let Yt=vi(this._eventsInProgress),cr=(Se||De)&&!Yt;if(cr&&this._terrainMovement){this._map._elevationFreeze=!1,this._terrainMovement=!1;let hr=this._map._getTransformForUpdate();hr.recalculateZoom(this._map.terrain),this._map._applyUpdatedTransform(hr)}if(we&&cr){this._updatingCamera=!0;let hr=this._inertia._onMoveEnd(this._map.dragPan._inertiaOptions),jr=ea=>ea!==0&&-this._bearingSnap<ea&&ea<this._bearingSnap;!hr||!hr.essential&&i.prefersReducedMotion?(this._map.fire(new t.k("moveend",{originalEvent:Dt})),jr(this._map.getBearing())&&this._map.resetNorth()):(jr(hr.bearing||this._map.getBearing())&&(hr.bearing=0),hr.freezeElevation=!0,this._map.easeTo(hr,{originalEvent:Dt})),this._updatingCamera=!1}}_fireEvent(R,ae){this._map.fire(new t.k(R,ae?{originalEvent:ae}:{}))}_requestFrame(){return this._map.triggerRepaint(),this._map._renderTaskQueue.add(R=>{delete this._frameId,this.handleEvent(new ti("renderFrame",{timeStamp:R})),this._applyChanges()})}_triggerRenderFrame(){this._frameId===void 0&&(this._frameId=this._requestFrame())}}class Wn extends t.E{constructor(R,ae){super(),this._renderFrameCallback=()=>{let we=Math.min((i.now()-this._easeStart)/this._easeOptions.duration,1);this._onEaseFrame(this._easeOptions.easing(we)),we<1&&this._easeFrameId?this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback):this.stop()},this._moving=!1,this._zooming=!1,this.transform=R,this._bearingSnap=ae.bearingSnap,this.on("moveend",()=>{delete this._requestedCameraState})}getCenter(){return new t.N(this.transform.center.lng,this.transform.center.lat)}setCenter(R,ae){return this.jumpTo({center:R},ae)}panBy(R,ae,we){return R=t.P.convert(R).mult(-1),this.panTo(this.transform.center,t.e({offset:R},ae),we)}panTo(R,ae,we){return this.easeTo(t.e({center:R},ae),we)}getZoom(){return this.transform.zoom}setZoom(R,ae){return this.jumpTo({zoom:R},ae),this}zoomTo(R,ae,we){return this.easeTo(t.e({zoom:R},ae),we)}zoomIn(R,ae){return this.zoomTo(this.getZoom()+1,R,ae),this}zoomOut(R,ae){return this.zoomTo(this.getZoom()-1,R,ae),this}getBearing(){return this.transform.bearing}setBearing(R,ae){return this.jumpTo({bearing:R},ae),this}getPadding(){return this.transform.padding}setPadding(R,ae){return this.jumpTo({padding:R},ae),this}rotateTo(R,ae,we){return this.easeTo(t.e({bearing:R},ae),we)}resetNorth(R,ae){return this.rotateTo(0,t.e({duration:1e3},R),ae),this}resetNorthPitch(R,ae){return this.easeTo(t.e({bearing:0,pitch:0,duration:1e3},R),ae),this}snapToNorth(R,ae){return Math.abs(this.getBearing())<this._bearingSnap?this.resetNorth(R,ae):this}getPitch(){return this.transform.pitch}setPitch(R,ae){return this.jumpTo({pitch:R},ae),this}cameraForBounds(R,ae){R=ie.convert(R).adjustAntiMeridian();let we=ae&&ae.bearing||0;return this._cameraForBoxAndBearing(R.getNorthWest(),R.getSouthEast(),we,ae)}_cameraForBoxAndBearing(R,ae,we,Se){let De={top:0,bottom:0,right:0,left:0};if(typeof(Se=t.e({padding:De,offset:[0,0],maxZoom:this.transform.maxZoom},Se)).padding=="number"){let ga=Se.padding;Se.padding={top:ga,bottom:ga,right:ga,left:ga}}Se.padding=t.e(De,Se.padding);let ft=this.transform,bt=ft.padding,Dt=new ie(R,ae),Yt=ft.project(Dt.getNorthWest()),cr=ft.project(Dt.getNorthEast()),hr=ft.project(Dt.getSouthEast()),jr=ft.project(Dt.getSouthWest()),ea=t.ba(-we),qe=Yt.rotate(ea),Je=cr.rotate(ea),ot=hr.rotate(ea),ht=jr.rotate(ea),At=new t.P(Math.max(qe.x,Je.x,ht.x,ot.x),Math.max(qe.y,Je.y,ht.y,ot.y)),_t=new t.P(Math.min(qe.x,Je.x,ht.x,ot.x),Math.min(qe.y,Je.y,ht.y,ot.y)),Pt=At.sub(_t),er=(ft.width-(bt.left+bt.right+Se.padding.left+Se.padding.right))/Pt.x,nr=(ft.height-(bt.top+bt.bottom+Se.padding.top+Se.padding.bottom))/Pt.y;if(nr<0||er<0)return void t.w("Map cannot fit within canvas with the given bounds, padding, and/or offset.");let pr=Math.min(ft.scaleZoom(ft.scale*Math.min(er,nr)),Se.maxZoom),Sr=t.P.convert(Se.offset),Wr=new t.P((Se.padding.left-Se.padding.right)/2,(Se.padding.top-Se.padding.bottom)/2).rotate(t.ba(we)),ha=Sr.add(Wr).mult(ft.scale/ft.zoomScale(pr));return{center:ft.unproject(Yt.add(hr).div(2).sub(ha)),zoom:pr,bearing:we}}fitBounds(R,ae,we){return this._fitInternal(this.cameraForBounds(R,ae),ae,we)}fitScreenCoordinates(R,ae,we,Se,De){return this._fitInternal(this._cameraForBoxAndBearing(this.transform.pointLocation(t.P.convert(R)),this.transform.pointLocation(t.P.convert(ae)),we,Se),Se,De)}_fitInternal(R,ae,we){return R?(delete(ae=t.e(R,ae)).padding,ae.linear?this.easeTo(ae,we):this.flyTo(ae,we)):this}jumpTo(R,ae){this.stop();let we=this._getTransformForUpdate(),Se=!1,De=!1,ft=!1;return"zoom"in R&&we.zoom!==+R.zoom&&(Se=!0,we.zoom=+R.zoom),R.center!==void 0&&(we.center=t.N.convert(R.center)),"bearing"in R&&we.bearing!==+R.bearing&&(De=!0,we.bearing=+R.bearing),"pitch"in R&&we.pitch!==+R.pitch&&(ft=!0,we.pitch=+R.pitch),R.padding==null||we.isPaddingEqual(R.padding)||(we.padding=R.padding),this._applyUpdatedTransform(we),this.fire(new t.k("movestart",ae)).fire(new t.k("move",ae)),Se&&this.fire(new t.k("zoomstart",ae)).fire(new t.k("zoom",ae)).fire(new t.k("zoomend",ae)),De&&this.fire(new t.k("rotatestart",ae)).fire(new t.k("rotate",ae)).fire(new t.k("rotateend",ae)),ft&&this.fire(new t.k("pitchstart",ae)).fire(new t.k("pitch",ae)).fire(new t.k("pitchend",ae)),this.fire(new t.k("moveend",ae))}calculateCameraOptionsFromTo(R,ae,we,Se=0){let De=t.Z.fromLngLat(R,ae),ft=t.Z.fromLngLat(we,Se),bt=ft.x-De.x,Dt=ft.y-De.y,Yt=ft.z-De.z,cr=Math.hypot(bt,Dt,Yt);if(cr===0)throw new Error("Can't calculate camera options with same From and To");let hr=Math.hypot(bt,Dt),jr=this.transform.scaleZoom(this.transform.cameraToCenterDistance/cr/this.transform.tileSize),ea=180*Math.atan2(bt,-Dt)/Math.PI,qe=180*Math.acos(hr/cr)/Math.PI;return qe=Yt<0?90-qe:90+qe,{center:ft.toLngLat(),zoom:jr,pitch:qe,bearing:ea}}easeTo(R,ae){var we;this._stop(!1,R.easeId),((R=t.e({offset:[0,0],duration:500,easing:t.b9},R)).animate===!1||!R.essential&&i.prefersReducedMotion)&&(R.duration=0);let Se=this._getTransformForUpdate(),De=Se.zoom,ft=Se.bearing,bt=Se.pitch,Dt=Se.padding,Yt="bearing"in R?this._normalizeBearing(R.bearing,ft):ft,cr="pitch"in R?+R.pitch:bt,hr="padding"in R?R.padding:Se.padding,jr=t.P.convert(R.offset),ea=Se.centerPoint.add(jr),qe=Se.pointLocation(ea),{center:Je,zoom:ot}=Se.getConstrained(t.N.convert(R.center||qe),(we=R.zoom)!==null&&we!==void 0?we:De);this._normalizeCenter(Je,Se);let ht=Se.project(qe),At=Se.project(Je).sub(ht),_t=Se.zoomScale(ot-De),Pt,er;R.around&&(Pt=t.N.convert(R.around),er=Se.locationPoint(Pt));let nr={moving:this._moving,zooming:this._zooming,rotating:this._rotating,pitching:this._pitching};return this._zooming=this._zooming||ot!==De,this._rotating=this._rotating||ft!==Yt,this._pitching=this._pitching||cr!==bt,this._padding=!Se.isPaddingEqual(hr),this._easeId=R.easeId,this._prepareEase(ae,R.noMoveStart,nr),this.terrain&&this._prepareElevation(Je),this._ease(pr=>{if(this._zooming&&(Se.zoom=t.y.number(De,ot,pr)),this._rotating&&(Se.bearing=t.y.number(ft,Yt,pr)),this._pitching&&(Se.pitch=t.y.number(bt,cr,pr)),this._padding&&(Se.interpolatePadding(Dt,hr,pr),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(pr),Pt)Se.setLocationAtPoint(Pt,er);else{let Sr=Se.zoomScale(Se.zoom-De),Wr=ot>De?Math.min(2,_t):Math.max(.5,_t),ha=Math.pow(Wr,1-pr),ga=Se.unproject(ht.add(At.mult(pr*ha)).mult(Sr));Se.setLocationAtPoint(Se.renderWorldCopies?ga.wrap():ga,ea)}this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},pr=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae,pr)},R),this}_prepareEase(R,ae,we={}){this._moving=!0,ae||we.moving||this.fire(new t.k("movestart",R)),this._zooming&&!we.zooming&&this.fire(new t.k("zoomstart",R)),this._rotating&&!we.rotating&&this.fire(new t.k("rotatestart",R)),this._pitching&&!we.pitching&&this.fire(new t.k("pitchstart",R))}_prepareElevation(R){this._elevationCenter=R,this._elevationStart=this.transform.elevation,this._elevationTarget=this.terrain.getElevationForLngLatZoom(R,this.transform.tileZoom),this._elevationFreeze=!0}_updateElevation(R){this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);let ae=this.terrain.getElevationForLngLatZoom(this._elevationCenter,this.transform.tileZoom);if(R<1&&ae!==this._elevationTarget){let we=this._elevationTarget-this._elevationStart;this._elevationStart+=R*(we-(ae-(we*R+this._elevationStart))/(1-R)),this._elevationTarget=ae}this.transform.elevation=t.y.number(this._elevationStart,this._elevationTarget,R)}_finalizeElevation(){this._elevationFreeze=!1,this.transform.recalculateZoom(this.terrain)}_getTransformForUpdate(){return this.transformCameraUpdate||this.terrain?(this._requestedCameraState||(this._requestedCameraState=this.transform.clone()),this._requestedCameraState):this.transform}_elevateCameraIfInsideTerrain(R){let ae=R.getCameraPosition(),we=this.terrain.getElevationForLngLatZoom(ae.lngLat,R.zoom);if(ae.altitude<we){let Se=this.calculateCameraOptionsFromTo(ae.lngLat,we,R.center,R.elevation);return{pitch:Se.pitch,zoom:Se.zoom}}return{}}_applyUpdatedTransform(R){let ae=[];if(this.terrain&&ae.push(Se=>this._elevateCameraIfInsideTerrain(Se)),this.transformCameraUpdate&&ae.push(Se=>this.transformCameraUpdate(Se)),!ae.length)return;let we=R.clone();for(let Se of ae){let De=we.clone(),{center:ft,zoom:bt,pitch:Dt,bearing:Yt,elevation:cr}=Se(De);ft&&(De.center=ft),bt!==void 0&&(De.zoom=bt),Dt!==void 0&&(De.pitch=Dt),Yt!==void 0&&(De.bearing=Yt),cr!==void 0&&(De.elevation=cr),we.apply(De)}this.transform.apply(we)}_fireMoveEvents(R){this.fire(new t.k("move",R)),this._zooming&&this.fire(new t.k("zoom",R)),this._rotating&&this.fire(new t.k("rotate",R)),this._pitching&&this.fire(new t.k("pitch",R))}_afterEase(R,ae){if(this._easeId&&ae&&this._easeId===ae)return;delete this._easeId;let we=this._zooming,Se=this._rotating,De=this._pitching;this._moving=!1,this._zooming=!1,this._rotating=!1,this._pitching=!1,this._padding=!1,we&&this.fire(new t.k("zoomend",R)),Se&&this.fire(new t.k("rotateend",R)),De&&this.fire(new t.k("pitchend",R)),this.fire(new t.k("moveend",R))}flyTo(R,ae){var we;if(!R.essential&&i.prefersReducedMotion){let Ci=t.M(R,["center","zoom","bearing","pitch","around"]);return this.jumpTo(Ci,ae)}this.stop(),R=t.e({offset:[0,0],speed:1.2,curve:1.42,easing:t.b9},R);let Se=this._getTransformForUpdate(),De=Se.zoom,ft=Se.bearing,bt=Se.pitch,Dt=Se.padding,Yt="bearing"in R?this._normalizeBearing(R.bearing,ft):ft,cr="pitch"in R?+R.pitch:bt,hr="padding"in R?R.padding:Se.padding,jr=t.P.convert(R.offset),ea=Se.centerPoint.add(jr),qe=Se.pointLocation(ea),{center:Je,zoom:ot}=Se.getConstrained(t.N.convert(R.center||qe),(we=R.zoom)!==null&&we!==void 0?we:De);this._normalizeCenter(Je,Se);let ht=Se.zoomScale(ot-De),At=Se.project(qe),_t=Se.project(Je).sub(At),Pt=R.curve,er=Math.max(Se.width,Se.height),nr=er/ht,pr=_t.mag();if("minZoom"in R){let Ci=t.ac(Math.min(R.minZoom,De,ot),Se.minZoom,Se.maxZoom),$i=er/Se.zoomScale(Ci-De);Pt=Math.sqrt($i/pr*2)}let Sr=Pt*Pt;function Wr(Ci){let $i=(nr*nr-er*er+(Ci?-1:1)*Sr*Sr*pr*pr)/(2*(Ci?nr:er)*Sr*pr);return Math.log(Math.sqrt($i*$i+1)-$i)}function ha(Ci){return(Math.exp(Ci)-Math.exp(-Ci))/2}function ga(Ci){return(Math.exp(Ci)+Math.exp(-Ci))/2}let Pa=Wr(!1),Ja=function(Ci){return ga(Pa)/ga(Pa+Pt*Ci)},di=function(Ci){return er*((ga(Pa)*(ha($i=Pa+Pt*Ci)/ga($i))-ha(Pa))/Sr)/pr;var $i},pi=(Wr(!0)-Pa)/Pt;if(Math.abs(pr)<1e-6||!isFinite(pi)){if(Math.abs(er-nr)<1e-6)return this.easeTo(R,ae);let Ci=nr<er?-1:1;pi=Math.abs(Math.log(nr/er))/Pt,di=()=>0,Ja=$i=>Math.exp(Ci*Pt*$i)}return R.duration="duration"in R?+R.duration:1e3*pi/("screenSpeed"in R?+R.screenSpeed/Pt:+R.speed),R.maxDuration&&R.duration>R.maxDuration&&(R.duration=0),this._zooming=!0,this._rotating=ft!==Yt,this._pitching=cr!==bt,this._padding=!Se.isPaddingEqual(hr),this._prepareEase(ae,!1),this.terrain&&this._prepareElevation(Je),this._ease(Ci=>{let $i=Ci*pi,Bn=1/Ja($i);Se.zoom=Ci===1?ot:De+Se.scaleZoom(Bn),this._rotating&&(Se.bearing=t.y.number(ft,Yt,Ci)),this._pitching&&(Se.pitch=t.y.number(bt,cr,Ci)),this._padding&&(Se.interpolatePadding(Dt,hr,Ci),ea=Se.centerPoint.add(jr)),this.terrain&&!R.freezeElevation&&this._updateElevation(Ci);let Sn=Ci===1?Je:Se.unproject(At.add(_t.mult(di($i))).mult(Bn));Se.setLocationAtPoint(Se.renderWorldCopies?Sn.wrap():Sn,ea),this._applyUpdatedTransform(Se),this._fireMoveEvents(ae)},()=>{this.terrain&&R.freezeElevation&&this._finalizeElevation(),this._afterEase(ae)},R),this}isEasing(){return!!this._easeFrameId}stop(){return this._stop()}_stop(R,ae){var we;if(this._easeFrameId&&(this._cancelRenderFrame(this._easeFrameId),delete this._easeFrameId,delete this._onEaseFrame),this._onEaseEnd){let Se=this._onEaseEnd;delete this._onEaseEnd,Se.call(this,ae)}return R||(we=this.handlers)===null||we===void 0||we.stop(!1),this}_ease(R,ae,we){we.animate===!1||we.duration===0?(R(1),ae()):(this._easeStart=i.now(),this._easeOptions=we,this._onEaseFrame=R,this._onEaseEnd=ae,this._easeFrameId=this._requestRenderFrame(this._renderFrameCallback))}_normalizeBearing(R,ae){R=t.b3(R,-180,180);let we=Math.abs(R-ae);return Math.abs(R-360-ae)<we&&(R-=360),Math.abs(R+360-ae)<we&&(R+=360),R}_normalizeCenter(R,ae){if(!ae.renderWorldCopies||ae.lngRange)return;let we=R.lng-ae.center.lng;R.lng+=we>180?-360:we<-180?360:0}queryTerrainElevation(R){return this.terrain?this.terrain.getElevationForLngLatZoom(t.N.convert(R),this.transform.tileZoom)-this.transform.elevation:null}}let Jn={compact:!0,customAttribution:'<a href="https://maplibre.org/" target="_blank">MapLibre</a>'};class no{constructor(R=Jn){this._toggleAttribution=()=>{this._container.classList.contains("maplibregl-compact")&&(this._container.classList.contains("maplibregl-compact-show")?(this._container.setAttribute("open",""),this._container.classList.remove("maplibregl-compact-show")):(this._container.classList.add("maplibregl-compact-show"),this._container.removeAttribute("open")))},this._updateData=ae=>{!ae||ae.sourceDataType!=="metadata"&&ae.sourceDataType!=="visibility"&&ae.dataType!=="style"&&ae.type!=="terrain"||this._updateAttributions()},this._updateCompact=()=>{this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact===!1?this._container.setAttribute("open",""):this._container.classList.contains("maplibregl-compact")||this._container.classList.contains("maplibregl-attrib-empty")||(this._container.setAttribute("open",""),this._container.classList.add("maplibregl-compact","maplibregl-compact-show")):(this._container.setAttribute("open",""),this._container.classList.contains("maplibregl-compact")&&this._container.classList.remove("maplibregl-compact","maplibregl-compact-show"))},this._updateCompactMinimize=()=>{this._container.classList.contains("maplibregl-compact")&&this._container.classList.contains("maplibregl-compact-show")&&this._container.classList.remove("maplibregl-compact-show")},this.options=R}getDefaultPosition(){return"bottom-right"}onAdd(R){return this._map=R,this._compact=this.options.compact,this._container=n.create("details","maplibregl-ctrl maplibregl-ctrl-attrib"),this._compactButton=n.create("summary","maplibregl-ctrl-attrib-button",this._container),this._compactButton.addEventListener("click",this._toggleAttribution),this._setElementTitle(this._compactButton,"ToggleAttribution"),this._innerContainer=n.create("div","maplibregl-ctrl-attrib-inner",this._container),this._updateAttributions(),this._updateCompact(),this._map.on("styledata",this._updateData),this._map.on("sourcedata",this._updateData),this._map.on("terrain",this._updateData),this._map.on("resize",this._updateCompact),this._map.on("drag",this._updateCompactMinimize),this._container}onRemove(){n.remove(this._container),this._map.off("styledata",this._updateData),this._map.off("sourcedata",this._updateData),this._map.off("terrain",this._updateData),this._map.off("resize",this._updateCompact),this._map.off("drag",this._updateCompactMinimize),this._map=void 0,this._compact=void 0,this._attribHTML=void 0}_setElementTitle(R,ae){let we=this._map._getUIString(`AttributionControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)}_updateAttributions(){if(!this._map.style)return;let R=[];if(this.options.customAttribution&&(Array.isArray(this.options.customAttribution)?R=R.concat(this.options.customAttribution.map(Se=>typeof Se!="string"?"":Se)):typeof this.options.customAttribution=="string"&&R.push(this.options.customAttribution)),this._map.style.stylesheet){let Se=this._map.style.stylesheet;this.styleOwner=Se.owner,this.styleId=Se.id}let ae=this._map.style.sourceCaches;for(let Se in ae){let De=ae[Se];if(De.used||De.usedForTerrain){let ft=De.getSource();ft.attribution&&R.indexOf(ft.attribution)<0&&R.push(ft.attribution)}}R=R.filter(Se=>String(Se).trim()),R.sort((Se,De)=>Se.length-De.length),R=R.filter((Se,De)=>{for(let ft=De+1;ft<R.length;ft++)if(R[ft].indexOf(Se)>=0)return!1;return!0});let we=R.join(" | ");we!==this._attribHTML&&(this._attribHTML=we,R.length?(this._innerContainer.innerHTML=we,this._container.classList.remove("maplibregl-attrib-empty")):this._container.classList.add("maplibregl-attrib-empty"),this._updateCompact(),this._editLink=null)}}class en{constructor(R={}){this._updateCompact=()=>{let ae=this._container.children;if(ae.length){let we=ae[0];this._map.getCanvasContainer().offsetWidth<=640||this._compact?this._compact!==!1&&we.classList.add("maplibregl-compact"):we.classList.remove("maplibregl-compact")}},this.options=R}getDefaultPosition(){return"bottom-left"}onAdd(R){this._map=R,this._compact=this.options&&this.options.compact,this._container=n.create("div","maplibregl-ctrl");let ae=n.create("a","maplibregl-ctrl-logo");return ae.target="_blank",ae.rel="noopener nofollow",ae.href="https://maplibre.org/",ae.setAttribute("aria-label",this._map._getUIString("LogoControl.Title")),ae.setAttribute("rel","noopener nofollow"),this._container.appendChild(ae),this._container.style.display="block",this._map.on("resize",this._updateCompact),this._updateCompact(),this._container}onRemove(){n.remove(this._container),this._map.off("resize",this._updateCompact),this._map=void 0,this._compact=void 0}}class Ri{constructor(){this._queue=[],this._id=0,this._cleared=!1,this._currentlyRunning=!1}add(R){let ae=++this._id;return this._queue.push({callback:R,id:ae,cancelled:!1}),ae}remove(R){let ae=this._currentlyRunning,we=ae?this._queue.concat(ae):this._queue;for(let Se of we)if(Se.id===R)return void(Se.cancelled=!0)}run(R=0){if(this._currentlyRunning)throw new Error("Attempting to run(), but is already running.");let ae=this._currentlyRunning=this._queue;this._queue=[];for(let we of ae)if(!we.cancelled&&(we.callback(R),this._cleared))break;this._cleared=!1,this._currentlyRunning=!1}clear(){this._currentlyRunning&&(this._cleared=!0),this._queue=[]}}var co=t.Y([{name:"a_pos3d",type:"Int16",components:3}]);class Wo extends t.E{constructor(R){super(),this.sourceCache=R,this._tiles={},this._renderableTilesKeys=[],this._sourceTileCache={},this.minzoom=0,this.maxzoom=22,this.tileSize=512,this.deltaZoom=1,R.usedForTerrain=!0,R.tileSize=this.tileSize*2**this.deltaZoom}destruct(){this.sourceCache.usedForTerrain=!1,this.sourceCache.tileSize=null}update(R,ae){this.sourceCache.update(R,ae),this._renderableTilesKeys=[];let we={};for(let Se of R.coveringTiles({tileSize:this.tileSize,minzoom:this.minzoom,maxzoom:this.maxzoom,reparseOverscaled:!1,terrain:ae}))we[Se.key]=!0,this._renderableTilesKeys.push(Se.key),this._tiles[Se.key]||(Se.posMatrix=new Float64Array(16),t.aP(Se.posMatrix,0,t.X,0,t.X,0,1),this._tiles[Se.key]=new nt(Se,this.tileSize));for(let Se in this._tiles)we[Se]||delete this._tiles[Se]}freeRtt(R){for(let ae in this._tiles){let we=this._tiles[ae];(!R||we.tileID.equals(R)||we.tileID.isChildOf(R)||R.isChildOf(we.tileID))&&(we.rtt=[])}}getRenderableTiles(){return this._renderableTilesKeys.map(R=>this.getTileByID(R))}getTileByID(R){return this._tiles[R]}getTerrainCoords(R){let ae={};for(let we of this._renderableTilesKeys){let Se=this._tiles[we].tileID;if(Se.canonical.equals(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16),t.aP(De.posMatrix,0,t.X,0,t.X,0,1),ae[we]=De}else if(Se.canonical.isChildOf(R.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=Se.canonical.z-R.canonical.z,bt=Se.canonical.x-(Se.canonical.x>>ft<<ft),Dt=Se.canonical.y-(Se.canonical.y>>ft<<ft),Yt=t.X>>ft;t.aP(De.posMatrix,0,Yt,0,Yt,0,1),t.J(De.posMatrix,De.posMatrix,[-bt*Yt,-Dt*Yt,0]),ae[we]=De}else if(R.canonical.isChildOf(Se.canonical)){let De=R.clone();De.posMatrix=new Float64Array(16);let ft=R.canonical.z-Se.canonical.z,bt=R.canonical.x-(R.canonical.x>>ft<<ft),Dt=R.canonical.y-(R.canonical.y>>ft<<ft),Yt=t.X>>ft;t.aP(De.posMatrix,0,t.X,0,t.X,0,1),t.J(De.posMatrix,De.posMatrix,[bt*Yt,Dt*Yt,0]),t.K(De.posMatrix,De.posMatrix,[1/2**ft,1/2**ft,0]),ae[we]=De}}return ae}getSourceTile(R,ae){let we=this.sourceCache._source,Se=R.overscaledZ-this.deltaZoom;if(Se>we.maxzoom&&(Se=we.maxzoom),Se<we.minzoom)return null;this._sourceTileCache[R.key]||(this._sourceTileCache[R.key]=R.scaledTo(Se).key);let De=this.sourceCache.getTileByID(this._sourceTileCache[R.key]);if((!De||!De.dem)&&ae)for(;Se>=we.minzoom&&(!De||!De.dem);)De=this.sourceCache.getTileByID(R.scaledTo(Se--).key);return De}tilesAfterTime(R=Date.now()){return Object.values(this._tiles).filter(ae=>ae.timeAdded>=R)}}class bs{constructor(R,ae,we){this.painter=R,this.sourceCache=new Wo(ae),this.options=we,this.exaggeration=typeof we.exaggeration=="number"?we.exaggeration:1,this.qualityFactor=2,this.meshSize=128,this._demMatrixCache={},this.coordsIndex=[],this._coordsTextureSize=1024}getDEMElevation(R,ae,we,Se=t.X){var De;if(!(ae>=0&&ae<Se&&we>=0&&we<Se))return 0;let ft=this.getTerrainData(R),bt=(De=ft.tile)===null||De===void 0?void 0:De.dem;if(!bt)return 0;let Dt=function(qe,Je,ot){var ht=Je[0],At=Je[1];return qe[0]=ot[0]*ht+ot[4]*At+ot[12],qe[1]=ot[1]*ht+ot[5]*At+ot[13],qe}([],[ae/Se*t.X,we/Se*t.X],ft.u_terrain_matrix),Yt=[Dt[0]*bt.dim,Dt[1]*bt.dim],cr=Math.floor(Yt[0]),hr=Math.floor(Yt[1]),jr=Yt[0]-cr,ea=Yt[1]-hr;return bt.get(cr,hr)*(1-jr)*(1-ea)+bt.get(cr+1,hr)*jr*(1-ea)+bt.get(cr,hr+1)*(1-jr)*ea+bt.get(cr+1,hr+1)*jr*ea}getElevationForLngLatZoom(R,ae){if(!t.bb(ae,R.wrap()))return 0;let{tileID:we,mercatorX:Se,mercatorY:De}=this._getOverscaledTileIDFromLngLatZoom(R,ae);return this.getElevation(we,Se%t.X,De%t.X,t.X)}getElevation(R,ae,we,Se=t.X){return this.getDEMElevation(R,ae,we,Se)*this.exaggeration}getTerrainData(R){if(!this._emptyDemTexture){let Se=this.painter.context,De=new t.R({width:1,height:1},new Uint8Array(4));this._emptyDepthTexture=new u(Se,De,Se.gl.RGBA,{premultiply:!1}),this._emptyDemUnpack=[0,0,0,0],this._emptyDemTexture=new u(Se,new t.R({width:1,height:1}),Se.gl.RGBA,{premultiply:!1}),this._emptyDemTexture.bind(Se.gl.NEAREST,Se.gl.CLAMP_TO_EDGE),this._emptyDemMatrix=t.an([])}let ae=this.sourceCache.getSourceTile(R,!0);if(ae&&ae.dem&&(!ae.demTexture||ae.needsTerrainPrepare)){let Se=this.painter.context;ae.demTexture=this.painter.getTileTexture(ae.dem.stride),ae.demTexture?ae.demTexture.update(ae.dem.getPixels(),{premultiply:!1}):ae.demTexture=new u(Se,ae.dem.getPixels(),Se.gl.RGBA,{premultiply:!1}),ae.demTexture.bind(Se.gl.NEAREST,Se.gl.CLAMP_TO_EDGE),ae.needsTerrainPrepare=!1}let we=ae&&ae+ae.tileID.key+R.key;if(we&&!this._demMatrixCache[we]){let Se=this.sourceCache.sourceCache._source.maxzoom,De=R.canonical.z-ae.tileID.canonical.z;R.overscaledZ>R.canonical.z&&(R.canonical.z>=Se?De=R.canonical.z-Se:t.w("cannot calculate elevation if elevation maxzoom > source.maxzoom"));let ft=R.canonical.x-(R.canonical.x>>De<<De),bt=R.canonical.y-(R.canonical.y>>De<<De),Dt=t.bc(new Float64Array(16),[1/(t.X<<De),1/(t.X<<De),0]);t.J(Dt,Dt,[ft*t.X,bt*t.X,0]),this._demMatrixCache[R.key]={matrix:Dt,coord:R}}return{u_depth:2,u_terrain:3,u_terrain_dim:ae&&ae.dem&&ae.dem.dim||1,u_terrain_matrix:we?this._demMatrixCache[R.key].matrix:this._emptyDemMatrix,u_terrain_unpack:ae&&ae.dem&&ae.dem.getUnpackVector()||this._emptyDemUnpack,u_terrain_exaggeration:this.exaggeration,texture:(ae&&ae.demTexture||this._emptyDemTexture).texture,depthTexture:(this._fboDepthTexture||this._emptyDepthTexture).texture,tile:ae}}getFramebuffer(R){let ae=this.painter,we=ae.width/devicePixelRatio,Se=ae.height/devicePixelRatio;return!this._fbo||this._fbo.width===we&&this._fbo.height===Se||(this._fbo.destroy(),this._fboCoordsTexture.destroy(),this._fboDepthTexture.destroy(),delete this._fbo,delete this._fboDepthTexture,delete this._fboCoordsTexture),this._fboCoordsTexture||(this._fboCoordsTexture=new u(ae.context,{width:we,height:Se,data:null},ae.context.gl.RGBA,{premultiply:!1}),this._fboCoordsTexture.bind(ae.context.gl.NEAREST,ae.context.gl.CLAMP_TO_EDGE)),this._fboDepthTexture||(this._fboDepthTexture=new u(ae.context,{width:we,height:Se,data:null},ae.context.gl.RGBA,{premultiply:!1}),this._fboDepthTexture.bind(ae.context.gl.NEAREST,ae.context.gl.CLAMP_TO_EDGE)),this._fbo||(this._fbo=ae.context.createFramebuffer(we,Se,!0,!1),this._fbo.depthAttachment.set(ae.context.createRenderbuffer(ae.context.gl.DEPTH_COMPONENT16,we,Se))),this._fbo.colorAttachment.set(R==="coords"?this._fboCoordsTexture.texture:this._fboDepthTexture.texture),this._fbo}getCoordsTexture(){let R=this.painter.context;if(this._coordsTexture)return this._coordsTexture;let ae=new Uint8Array(this._coordsTextureSize*this._coordsTextureSize*4);for(let De=0,ft=0;De<this._coordsTextureSize;De++)for(let bt=0;bt<this._coordsTextureSize;bt++,ft+=4)ae[ft+0]=255&bt,ae[ft+1]=255&De,ae[ft+2]=bt>>8<<4|De>>8,ae[ft+3]=0;let we=new t.R({width:this._coordsTextureSize,height:this._coordsTextureSize},new Uint8Array(ae.buffer)),Se=new u(R,we,R.gl.RGBA,{premultiply:!1});return Se.bind(R.gl.NEAREST,R.gl.CLAMP_TO_EDGE),this._coordsTexture=Se,Se}pointCoordinate(R){this.painter.maybeDrawDepthAndCoords(!0);let ae=new Uint8Array(4),we=this.painter.context,Se=we.gl,De=Math.round(R.x*this.painter.pixelRatio/devicePixelRatio),ft=Math.round(R.y*this.painter.pixelRatio/devicePixelRatio),bt=Math.round(this.painter.height/devicePixelRatio);we.bindFramebuffer.set(this.getFramebuffer("coords").framebuffer),Se.readPixels(De,bt-ft-1,1,1,Se.RGBA,Se.UNSIGNED_BYTE,ae),we.bindFramebuffer.set(null);let Dt=ae[0]+(ae[2]>>4<<8),Yt=ae[1]+((15&ae[2])<<8),cr=this.coordsIndex[255-ae[3]],hr=cr&&this.sourceCache.getTileByID(cr);if(!hr)return null;let jr=this._coordsTextureSize,ea=(1<<hr.tileID.canonical.z)*jr;return new t.Z((hr.tileID.canonical.x*jr+Dt)/ea+hr.tileID.wrap,(hr.tileID.canonical.y*jr+Yt)/ea,this.getElevation(hr.tileID,Dt,Yt,jr))}depthAtPoint(R){let ae=new Uint8Array(4),we=this.painter.context,Se=we.gl;return we.bindFramebuffer.set(this.getFramebuffer("depth").framebuffer),Se.readPixels(R.x,this.painter.height/devicePixelRatio-R.y-1,1,1,Se.RGBA,Se.UNSIGNED_BYTE,ae),we.bindFramebuffer.set(null),(ae[0]/16777216+ae[1]/65536+ae[2]/256+ae[3])/256}getTerrainMesh(){if(this._mesh)return this._mesh;let R=this.painter.context,ae=new t.bd,we=new t.aY,Se=this.meshSize,De=t.X/Se,ft=Se*Se;for(let hr=0;hr<=Se;hr++)for(let jr=0;jr<=Se;jr++)ae.emplaceBack(jr*De,hr*De,0);for(let hr=0;hr<ft;hr+=Se+1)for(let jr=0;jr<Se;jr++)we.emplaceBack(jr+hr,Se+jr+hr+1,Se+jr+hr+2),we.emplaceBack(jr+hr,Se+jr+hr+2,jr+hr+1);let bt=ae.length,Dt=bt+2*(Se+1);for(let hr of[0,1])for(let jr=0;jr<=Se;jr++)for(let ea of[0,1])ae.emplaceBack(jr*De,hr*t.X,ea);for(let hr=0;hr<2*Se;hr+=2)we.emplaceBack(Dt+hr,Dt+hr+1,Dt+hr+3),we.emplaceBack(Dt+hr,Dt+hr+3,Dt+hr+2),we.emplaceBack(bt+hr,bt+hr+3,bt+hr+1),we.emplaceBack(bt+hr,bt+hr+2,bt+hr+3);let Yt=ae.length,cr=Yt+2*(Se+1);for(let hr of[0,1])for(let jr=0;jr<=Se;jr++)for(let ea of[0,1])ae.emplaceBack(hr*t.X,jr*De,ea);for(let hr=0;hr<2*Se;hr+=2)we.emplaceBack(Yt+hr,Yt+hr+1,Yt+hr+3),we.emplaceBack(Yt+hr,Yt+hr+3,Yt+hr+2),we.emplaceBack(cr+hr,cr+hr+3,cr+hr+1),we.emplaceBack(cr+hr,cr+hr+2,cr+hr+3);return this._mesh=new Cu(R.createVertexBuffer(ae,co.members),R.createIndexBuffer(we),t.a0.simpleSegment(0,0,ae.length,we.length)),this._mesh}getMeshFrameDelta(R){return 2*Math.PI*t.be/Math.pow(2,R)/5}getMinTileElevationForLngLatZoom(R,ae){var we;let{tileID:Se}=this._getOverscaledTileIDFromLngLatZoom(R,ae);return(we=this.getMinMaxElevation(Se).minElevation)!==null&&we!==void 0?we:0}getMinMaxElevation(R){let ae=this.getTerrainData(R).tile,we={minElevation:null,maxElevation:null};return ae&&ae.dem&&(we.minElevation=ae.dem.min*this.exaggeration,we.maxElevation=ae.dem.max*this.exaggeration),we}_getOverscaledTileIDFromLngLatZoom(R,ae){let we=t.Z.fromLngLat(R.wrap()),Se=(1<<ae)*t.X,De=we.x*Se,ft=we.y*Se,bt=Math.floor(De/t.X),Dt=Math.floor(ft/t.X);return{tileID:new t.S(ae,0,ae,bt,Dt),mercatorX:De,mercatorY:ft}}}class Xs{constructor(R,ae,we){this._context=R,this._size=ae,this._tileSize=we,this._objects=[],this._recentlyUsed=[],this._stamp=0}destruct(){for(let R of this._objects)R.texture.destroy(),R.fbo.destroy()}_createObject(R){let ae=this._context.createFramebuffer(this._tileSize,this._tileSize,!0,!0),we=new u(this._context,{width:this._tileSize,height:this._tileSize,data:null},this._context.gl.RGBA);return we.bind(this._context.gl.LINEAR,this._context.gl.CLAMP_TO_EDGE),ae.depthAttachment.set(this._context.createRenderbuffer(this._context.gl.DEPTH_STENCIL,this._tileSize,this._tileSize)),ae.colorAttachment.set(we.texture),{id:R,fbo:ae,texture:we,stamp:-1,inUse:!1}}getObjectForId(R){return this._objects[R]}useObject(R){R.inUse=!0,this._recentlyUsed=this._recentlyUsed.filter(ae=>R.id!==ae),this._recentlyUsed.push(R.id)}stampObject(R){R.stamp=++this._stamp}getOrCreateFreeObject(){for(let ae of this._recentlyUsed)if(!this._objects[ae].inUse)return this._objects[ae];if(this._objects.length>=this._size)throw new Error("No free RenderPool available, call freeAllObjects() required!");let R=this._createObject(this._objects.length);return this._objects.push(R),R}freeObject(R){R.inUse=!1}freeAllObjects(){for(let R of this._objects)this.freeObject(R)}isFull(){return!(this._objects.length<this._size)&&this._objects.some(R=>!R.inUse)===!1}}let Ms={background:!0,fill:!0,line:!0,raster:!0,hillshade:!0};class Hs{constructor(R,ae){this.painter=R,this.terrain=ae,this.pool=new Xs(R.context,30,ae.sourceCache.tileSize*ae.qualityFactor)}destruct(){this.pool.destruct()}getTexture(R){return this.pool.getObjectForId(R.rtt[this._stacks.length-1].id).texture}prepareForRender(R,ae){this._stacks=[],this._prevType=null,this._rttTiles=[],this._renderableTiles=this.terrain.sourceCache.getRenderableTiles(),this._renderableLayerIds=R._order.filter(we=>!R._layers[we].isHidden(ae)),this._coordsDescendingInv={};for(let we in R.sourceCaches){this._coordsDescendingInv[we]={};let Se=R.sourceCaches[we].getVisibleCoordinates();for(let De of Se){let ft=this.terrain.sourceCache.getTerrainCoords(De);for(let bt in ft)this._coordsDescendingInv[we][bt]||(this._coordsDescendingInv[we][bt]=[]),this._coordsDescendingInv[we][bt].push(ft[bt])}}this._coordsDescendingInvStr={};for(let we of R._order){let Se=R._layers[we],De=Se.source;if(Ms[Se.type]&&!this._coordsDescendingInvStr[De]){this._coordsDescendingInvStr[De]={};for(let ft in this._coordsDescendingInv[De])this._coordsDescendingInvStr[De][ft]=this._coordsDescendingInv[De][ft].map(bt=>bt.key).sort().join()}}for(let we of this._renderableTiles)for(let Se in this._coordsDescendingInvStr){let De=this._coordsDescendingInvStr[Se][we.tileID.key];De&&De!==we.rttCoords[Se]&&(we.rtt=[])}}renderLayer(R){if(R.isHidden(this.painter.transform.zoom))return!1;let ae=R.type,we=this.painter,Se=this._renderableLayerIds[this._renderableLayerIds.length-1]===R.id;if(Ms[ae]&&(this._prevType&&Ms[this._prevType]||this._stacks.push([]),this._prevType=ae,this._stacks[this._stacks.length-1].push(R.id),!Se))return!0;if(Ms[this._prevType]||Ms[ae]&&Se){this._prevType=ae;let De=this._stacks.length-1,ft=this._stacks[De]||[];for(let bt of this._renderableTiles){if(this.pool.isFull()&&(ru(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects()),this._rttTiles.push(bt),bt.rtt[De]){let Yt=this.pool.getObjectForId(bt.rtt[De].id);if(Yt.stamp===bt.rtt[De].stamp){this.pool.useObject(Yt);continue}}let Dt=this.pool.getOrCreateFreeObject();this.pool.useObject(Dt),this.pool.stampObject(Dt),bt.rtt[De]={id:Dt.id,stamp:Dt.stamp},we.context.bindFramebuffer.set(Dt.fbo.framebuffer),we.context.clear({color:t.aM.transparent,stencil:0}),we.currentStencilSource=void 0;for(let Yt=0;Yt<ft.length;Yt++){let cr=we.style._layers[ft[Yt]],hr=cr.source?this._coordsDescendingInv[cr.source][bt.tileID.key]:[bt.tileID];we.context.viewport.set([0,0,Dt.fbo.width,Dt.fbo.height]),we._renderTileClippingMasks(cr,hr),we.renderLayer(we,we.style.sourceCaches[cr.source],cr,hr),cr.source&&(bt.rttCoords[cr.source]=this._coordsDescendingInvStr[cr.source][bt.tileID.key])}}return ru(this.painter,this.terrain,this._rttTiles),this._rttTiles=[],this.pool.freeAllObjects(),Ms[ae]}return!1}}let vs={"AttributionControl.ToggleAttribution":"Toggle attribution","AttributionControl.MapFeedback":"Map feedback","FullscreenControl.Enter":"Enter fullscreen","FullscreenControl.Exit":"Exit fullscreen","GeolocateControl.FindMyLocation":"Find my location","GeolocateControl.LocationNotAvailable":"Location not available","LogoControl.Title":"MapLibre logo","Map.Title":"Map","Marker.Title":"Map marker","NavigationControl.ResetBearing":"Reset bearing to north","NavigationControl.ZoomIn":"Zoom in","NavigationControl.ZoomOut":"Zoom out","Popup.Close":"Close popup","ScaleControl.Feet":"ft","ScaleControl.Meters":"m","ScaleControl.Kilometers":"km","ScaleControl.Miles":"mi","ScaleControl.NauticalMiles":"nm","TerrainControl.Enable":"Enable terrain","TerrainControl.Disable":"Disable terrain","CooperativeGesturesHandler.WindowsHelpText":"Use Ctrl + scroll to zoom the map","CooperativeGesturesHandler.MacHelpText":"Use \u2318 + scroll to zoom the map","CooperativeGesturesHandler.MobileHelpText":"Use two fingers to move the map"},Il=r,fl={hash:!1,interactive:!0,bearingSnap:7,attributionControl:Jn,maplibreLogo:!1,failIfMajorPerformanceCaveat:!1,preserveDrawingBuffer:!1,refreshExpiredTiles:!0,scrollZoom:!0,minZoom:-2,maxZoom:22,minPitch:0,maxPitch:60,boxZoom:!0,dragRotate:!0,dragPan:!0,keyboard:!0,doubleClickZoom:!0,touchZoomRotate:!0,touchPitch:!0,cooperativeGestures:!1,trackResize:!0,center:[0,0],zoom:0,bearing:0,pitch:0,renderWorldCopies:!0,maxTileCacheSize:null,maxTileCacheZoomLevels:t.a.MAX_TILE_CACHE_ZOOM_LEVELS,transformRequest:null,transformCameraUpdate:null,fadeDuration:300,crossSourceCollisions:!0,clickTolerance:3,localIdeographFontFamily:"sans-serif",pitchWithRotate:!0,validateStyle:!0,maxCanvasSize:[4096,4096],cancelPendingTileRequestsWhileZooming:!0},tl=Oe=>{Oe.touchstart=Oe.dragStart,Oe.touchmoveWindow=Oe.dragMove,Oe.touchend=Oe.dragEnd},Ln={showCompass:!0,showZoom:!0,visualizePitch:!1};class Ao{constructor(R,ae,we=!1){this.mousedown=ft=>{this.startMouse(t.e({},ft,{ctrlKey:!0,preventDefault:()=>ft.preventDefault()}),n.mousePos(this.element,ft)),n.addEventListener(window,"mousemove",this.mousemove),n.addEventListener(window,"mouseup",this.mouseup)},this.mousemove=ft=>{this.moveMouse(ft,n.mousePos(this.element,ft))},this.mouseup=ft=>{this.mouseRotate.dragEnd(ft),this.mousePitch&&this.mousePitch.dragEnd(ft),this.offTemp()},this.touchstart=ft=>{ft.targetTouches.length!==1?this.reset():(this._startPos=this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.startTouch(ft,this._startPos),n.addEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.addEventListener(window,"touchend",this.touchend))},this.touchmove=ft=>{ft.targetTouches.length!==1?this.reset():(this._lastPos=n.touchPos(this.element,ft.targetTouches)[0],this.moveTouch(ft,this._lastPos))},this.touchend=ft=>{ft.targetTouches.length===0&&this._startPos&&this._lastPos&&this._startPos.dist(this._lastPos)<this._clickTolerance&&this.element.click(),delete this._startPos,delete this._lastPos,this.offTemp()},this.reset=()=>{this.mouseRotate.reset(),this.mousePitch&&this.mousePitch.reset(),this.touchRotate.reset(),this.touchPitch&&this.touchPitch.reset(),delete this._startPos,delete this._lastPos,this.offTemp()},this._clickTolerance=10;let Se=R.dragRotate._mouseRotate.getClickTolerance(),De=R.dragRotate._mousePitch.getClickTolerance();this.element=ae,this.mouseRotate=Vl({clickTolerance:Se,enable:!0}),this.touchRotate=(({enable:ft,clickTolerance:bt,bearingDegreesPerPixelMoved:Dt=.8})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({bearingDelta:(hr.x-cr.x)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:Se,enable:!0}),this.map=R,we&&(this.mousePitch=Qf({clickTolerance:De,enable:!0}),this.touchPitch=(({enable:ft,clickTolerance:bt,pitchDegreesPerPixelMoved:Dt=-.5})=>{let Yt=new Qc;return new ju({clickTolerance:bt,move:(cr,hr)=>({pitchDelta:(hr.y-cr.y)*Dt}),moveStateManager:Yt,enable:ft,assignEvents:tl})})({clickTolerance:De,enable:!0})),n.addEventListener(ae,"mousedown",this.mousedown),n.addEventListener(ae,"touchstart",this.touchstart,{passive:!1}),n.addEventListener(ae,"touchcancel",this.reset)}startMouse(R,ae){this.mouseRotate.dragStart(R,ae),this.mousePitch&&this.mousePitch.dragStart(R,ae),n.disableDrag()}startTouch(R,ae){this.touchRotate.dragStart(R,ae),this.touchPitch&&this.touchPitch.dragStart(R,ae),n.disableDrag()}moveMouse(R,ae){let we=this.map,{bearingDelta:Se}=this.mouseRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.mousePitch){let{pitchDelta:De}=this.mousePitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}moveTouch(R,ae){let we=this.map,{bearingDelta:Se}=this.touchRotate.dragMove(R,ae)||{};if(Se&&we.setBearing(we.getBearing()+Se),this.touchPitch){let{pitchDelta:De}=this.touchPitch.dragMove(R,ae)||{};De&&we.setPitch(we.getPitch()+De)}}off(){let R=this.element;n.removeEventListener(R,"mousedown",this.mousedown),n.removeEventListener(R,"touchstart",this.touchstart,{passive:!1}),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend),n.removeEventListener(R,"touchcancel",this.reset),this.offTemp()}offTemp(){n.enableDrag(),n.removeEventListener(window,"mousemove",this.mousemove),n.removeEventListener(window,"mouseup",this.mouseup),n.removeEventListener(window,"touchmove",this.touchmove,{passive:!1}),n.removeEventListener(window,"touchend",this.touchend)}}let js;function Ts(Oe,R,ae){let we=new t.N(Oe.lng,Oe.lat);if(Oe=new t.N(Oe.lng,Oe.lat),R){let Se=new t.N(Oe.lng-360,Oe.lat),De=new t.N(Oe.lng+360,Oe.lat),ft=ae.locationPoint(Oe).distSqr(R);ae.locationPoint(Se).distSqr(R)<ft?Oe=Se:ae.locationPoint(De).distSqr(R)<ft&&(Oe=De)}for(;Math.abs(Oe.lng-ae.center.lng)>180;){let Se=ae.locationPoint(Oe);if(Se.x>=0&&Se.y>=0&&Se.x<=ae.width&&Se.y<=ae.height)break;Oe.lng>ae.center.lng?Oe.lng-=360:Oe.lng+=360}return Oe.lng!==we.lng&&ae.locationPoint(Oe).y>ae.height/2-ae.getHorizon()?Oe:we}let nu={center:"translate(-50%,-50%)",top:"translate(-50%,0)","top-left":"translate(0,0)","top-right":"translate(-100%,0)",bottom:"translate(-50%,-100%)","bottom-left":"translate(0,-100%)","bottom-right":"translate(-100%,-100%)",left:"translate(0,-50%)",right:"translate(-100%,-50%)"};function Pu(Oe,R,ae){let we=Oe.classList;for(let Se in nu)we.remove(`maplibregl-${ae}-anchor-${Se}`);we.add(`maplibregl-${ae}-anchor-${R}`)}class ec extends t.E{constructor(R){if(super(),this._onKeyPress=ae=>{let we=ae.code,Se=ae.charCode||ae.keyCode;we!=="Space"&&we!=="Enter"&&Se!==32&&Se!==13||this.togglePopup()},this._onMapClick=ae=>{let we=ae.originalEvent.target,Se=this._element;this._popup&&(we===Se||Se.contains(we))&&this.togglePopup()},this._update=ae=>{var we;if(!this._map)return;let Se=this._map.loaded()&&!this._map.isMoving();(ae?.type==="terrain"||ae?.type==="render"&&!Se)&&this._map.once("render",this._update),this._lngLat=this._map.transform.renderWorldCopies?Ts(this._lngLat,this._flatPos,this._map.transform):(we=this._lngLat)===null||we===void 0?void 0:we.wrap(),this._flatPos=this._pos=this._map.project(this._lngLat)._add(this._offset),this._map.terrain&&(this._flatPos=this._map.transform.locationPoint(this._lngLat)._add(this._offset));let De="";this._rotationAlignment==="viewport"||this._rotationAlignment==="auto"?De=`rotateZ(${this._rotation}deg)`:this._rotationAlignment==="map"&&(De=`rotateZ(${this._rotation-this._map.getBearing()}deg)`);let ft="";this._pitchAlignment==="viewport"||this._pitchAlignment==="auto"?ft="rotateX(0deg)":this._pitchAlignment==="map"&&(ft=`rotateX(${this._map.getPitch()}deg)`),this._subpixelPositioning||ae&&ae.type!=="moveend"||(this._pos=this._pos.round()),n.setTransform(this._element,`${nu[this._anchor]} translate(${this._pos.x}px, ${this._pos.y}px) ${ft} ${De}`),i.frameAsync(new AbortController).then(()=>{this._updateOpacity(ae&&ae.type==="moveend")}).catch(()=>{})},this._onMove=ae=>{if(!this._isDragging){let we=this._clickTolerance||this._map._clickTolerance;this._isDragging=ae.point.dist(this._pointerdownPos)>=we}this._isDragging&&(this._pos=ae.point.sub(this._positionDelta),this._lngLat=this._map.unproject(this._pos),this.setLngLat(this._lngLat),this._element.style.pointerEvents="none",this._state==="pending"&&(this._state="active",this.fire(new t.k("dragstart"))),this.fire(new t.k("drag")))},this._onUp=()=>{this._element.style.pointerEvents="auto",this._positionDelta=null,this._pointerdownPos=null,this._isDragging=!1,this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),this._state==="active"&&this.fire(new t.k("dragend")),this._state="inactive"},this._addDragHandler=ae=>{this._element.contains(ae.originalEvent.target)&&(ae.preventDefault(),this._positionDelta=ae.point.sub(this._pos).add(this._offset),this._pointerdownPos=ae.point,this._state="pending",this._map.on("mousemove",this._onMove),this._map.on("touchmove",this._onMove),this._map.once("mouseup",this._onUp),this._map.once("touchend",this._onUp))},this._anchor=R&&R.anchor||"center",this._color=R&&R.color||"#3FB1CE",this._scale=R&&R.scale||1,this._draggable=R&&R.draggable||!1,this._clickTolerance=R&&R.clickTolerance||0,this._subpixelPositioning=R&&R.subpixelPositioning||!1,this._isDragging=!1,this._state="inactive",this._rotation=R&&R.rotation||0,this._rotationAlignment=R&&R.rotationAlignment||"auto",this._pitchAlignment=R&&R.pitchAlignment&&R.pitchAlignment!=="auto"?R.pitchAlignment:this._rotationAlignment,this.setOpacity(),this.setOpacity(R?.opacity,R?.opacityWhenCovered),R&&R.element)this._element=R.element,this._offset=t.P.convert(R&&R.offset||[0,0]);else{this._defaultMarker=!0,this._element=n.create("div");let ae=n.createNS("http://www.w3.org/2000/svg","svg"),we=41,Se=27;ae.setAttributeNS(null,"display","block"),ae.setAttributeNS(null,"height",`${we}px`),ae.setAttributeNS(null,"width",`${Se}px`),ae.setAttributeNS(null,"viewBox",`0 0 ${Se} ${we}`);let De=n.createNS("http://www.w3.org/2000/svg","g");De.setAttributeNS(null,"stroke","none"),De.setAttributeNS(null,"stroke-width","1"),De.setAttributeNS(null,"fill","none"),De.setAttributeNS(null,"fill-rule","evenodd");let ft=n.createNS("http://www.w3.org/2000/svg","g");ft.setAttributeNS(null,"fill-rule","nonzero");let bt=n.createNS("http://www.w3.org/2000/svg","g");bt.setAttributeNS(null,"transform","translate(3.0, 29.0)"),bt.setAttributeNS(null,"fill","#000000");let Dt=[{rx:"10.5",ry:"5.25002273"},{rx:"10.5",ry:"5.25002273"},{rx:"9.5",ry:"4.77275007"},{rx:"8.5",ry:"4.29549936"},{rx:"7.5",ry:"3.81822308"},{rx:"6.5",ry:"3.34094679"},{rx:"5.5",ry:"2.86367051"},{rx:"4.5",ry:"2.38636864"}];for(let ht of Dt){let At=n.createNS("http://www.w3.org/2000/svg","ellipse");At.setAttributeNS(null,"opacity","0.04"),At.setAttributeNS(null,"cx","10.5"),At.setAttributeNS(null,"cy","5.80029008"),At.setAttributeNS(null,"rx",ht.rx),At.setAttributeNS(null,"ry",ht.ry),bt.appendChild(At)}let Yt=n.createNS("http://www.w3.org/2000/svg","g");Yt.setAttributeNS(null,"fill",this._color);let cr=n.createNS("http://www.w3.org/2000/svg","path");cr.setAttributeNS(null,"d","M27,13.5 C27,19.074644 20.250001,27.000002 14.75,34.500002 C14.016665,35.500004 12.983335,35.500004 12.25,34.500002 C6.7499993,27.000002 0,19.222562 0,13.5 C0,6.0441559 6.0441559,0 13.5,0 C20.955844,0 27,6.0441559 27,13.5 Z"),Yt.appendChild(cr);let hr=n.createNS("http://www.w3.org/2000/svg","g");hr.setAttributeNS(null,"opacity","0.25"),hr.setAttributeNS(null,"fill","#000000");let jr=n.createNS("http://www.w3.org/2000/svg","path");jr.setAttributeNS(null,"d","M13.5,0 C6.0441559,0 0,6.0441559 0,13.5 C0,19.222562 6.7499993,27 12.25,34.5 C13,35.522727 14.016664,35.500004 14.75,34.5 C20.250001,27 27,19.074644 27,13.5 C27,6.0441559 20.955844,0 13.5,0 Z M13.5,1 C20.415404,1 26,6.584596 26,13.5 C26,15.898657 24.495584,19.181431 22.220703,22.738281 C19.945823,26.295132 16.705119,30.142167 13.943359,33.908203 C13.743445,34.180814 13.612715,34.322738 13.5,34.441406 C13.387285,34.322738 13.256555,34.180814 13.056641,33.908203 C10.284481,30.127985 7.4148684,26.314159 5.015625,22.773438 C2.6163816,19.232715 1,15.953538 1,13.5 C1,6.584596 6.584596,1 13.5,1 Z"),hr.appendChild(jr);let ea=n.createNS("http://www.w3.org/2000/svg","g");ea.setAttributeNS(null,"transform","translate(6.0, 7.0)"),ea.setAttributeNS(null,"fill","#FFFFFF");let qe=n.createNS("http://www.w3.org/2000/svg","g");qe.setAttributeNS(null,"transform","translate(8.0, 8.0)");let Je=n.createNS("http://www.w3.org/2000/svg","circle");Je.setAttributeNS(null,"fill","#000000"),Je.setAttributeNS(null,"opacity","0.25"),Je.setAttributeNS(null,"cx","5.5"),Je.setAttributeNS(null,"cy","5.5"),Je.setAttributeNS(null,"r","5.4999962");let ot=n.createNS("http://www.w3.org/2000/svg","circle");ot.setAttributeNS(null,"fill","#FFFFFF"),ot.setAttributeNS(null,"cx","5.5"),ot.setAttributeNS(null,"cy","5.5"),ot.setAttributeNS(null,"r","5.4999962"),qe.appendChild(Je),qe.appendChild(ot),ft.appendChild(bt),ft.appendChild(Yt),ft.appendChild(hr),ft.appendChild(ea),ft.appendChild(qe),ae.appendChild(ft),ae.setAttributeNS(null,"height",we*this._scale+"px"),ae.setAttributeNS(null,"width",Se*this._scale+"px"),this._element.appendChild(ae),this._offset=t.P.convert(R&&R.offset||[0,-14])}if(this._element.classList.add("maplibregl-marker"),this._element.addEventListener("dragstart",ae=>{ae.preventDefault()}),this._element.addEventListener("mousedown",ae=>{ae.preventDefault()}),Pu(this._element,this._anchor,"marker"),R&&R.className)for(let ae of R.className.split(" "))this._element.classList.add(ae);this._popup=null}addTo(R){return this.remove(),this._map=R,this._element.setAttribute("aria-label",R._getUIString("Marker.Title")),R.getCanvasContainer().appendChild(this._element),R.on("move",this._update),R.on("moveend",this._update),R.on("terrain",this._update),this.setDraggable(this._draggable),this._update(),this._map.on("click",this._onMapClick),this}remove(){return this._opacityTimeout&&(clearTimeout(this._opacityTimeout),delete this._opacityTimeout),this._map&&(this._map.off("click",this._onMapClick),this._map.off("move",this._update),this._map.off("moveend",this._update),this._map.off("terrain",this._update),this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler),this._map.off("mouseup",this._onUp),this._map.off("touchend",this._onUp),this._map.off("mousemove",this._onMove),this._map.off("touchmove",this._onMove),delete this._map),n.remove(this._element),this._popup&&this._popup.remove(),this}getLngLat(){return this._lngLat}setLngLat(R){return this._lngLat=t.N.convert(R),this._pos=null,this._popup&&this._popup.setLngLat(this._lngLat),this._update(),this}getElement(){return this._element}setPopup(R){if(this._popup&&(this._popup.remove(),this._popup=null,this._element.removeEventListener("keypress",this._onKeyPress),this._originalTabIndex||this._element.removeAttribute("tabindex")),R){if(!("offset"in R.options)){let Se=Math.abs(13.5)/Math.SQRT2;R.options.offset=this._defaultMarker?{top:[0,0],"top-left":[0,0],"top-right":[0,0],bottom:[0,-38.1],"bottom-left":[Se,-1*(38.1-13.5+Se)],"bottom-right":[-Se,-1*(38.1-13.5+Se)],left:[13.5,-1*(38.1-13.5)],right:[-13.5,-1*(38.1-13.5)]}:this._offset}this._popup=R,this._originalTabIndex=this._element.getAttribute("tabindex"),this._originalTabIndex||this._element.setAttribute("tabindex","0"),this._element.addEventListener("keypress",this._onKeyPress)}return this}setSubpixelPositioning(R){return this._subpixelPositioning=R,this}getPopup(){return this._popup}togglePopup(){let R=this._popup;return this._element.style.opacity===this._opacityWhenCovered?this:R?(R.isOpen()?R.remove():(R.setLngLat(this._lngLat),R.addTo(this._map)),this):this}_updateOpacity(R=!1){var ae,we;if(!(!((ae=this._map)===null||ae===void 0)&&ae.terrain))return void(this._element.style.opacity!==this._opacity&&(this._element.style.opacity=this._opacity));if(R)this._opacityTimeout=null;else{if(this._opacityTimeout)return;this._opacityTimeout=setTimeout(()=>{this._opacityTimeout=null},100)}let Se=this._map,De=Se.terrain.depthAtPoint(this._pos),ft=Se.terrain.getElevationForLngLatZoom(this._lngLat,Se.transform.tileZoom);if(Se.transform.lngLatToCameraDepth(this._lngLat,ft)-De<.006)return void(this._element.style.opacity=this._opacity);let bt=-this._offset.y/Se.transform._pixelPerMeter,Dt=Math.sin(Se.getPitch()*Math.PI/180)*bt,Yt=Se.terrain.depthAtPoint(new t.P(this._pos.x,this._pos.y-this._offset.y)),cr=Se.transform.lngLatToCameraDepth(this._lngLat,ft+Dt)-Yt>.006;!((we=this._popup)===null||we===void 0)&&we.isOpen()&&cr&&this._popup.remove(),this._element.style.opacity=cr?this._opacityWhenCovered:this._opacity}getOffset(){return this._offset}setOffset(R){return this._offset=t.P.convert(R),this._update(),this}addClassName(R){this._element.classList.add(R)}removeClassName(R){this._element.classList.remove(R)}toggleClassName(R){return this._element.classList.toggle(R)}setDraggable(R){return this._draggable=!!R,this._map&&(R?(this._map.on("mousedown",this._addDragHandler),this._map.on("touchstart",this._addDragHandler)):(this._map.off("mousedown",this._addDragHandler),this._map.off("touchstart",this._addDragHandler))),this}isDraggable(){return this._draggable}setRotation(R){return this._rotation=R||0,this._update(),this}getRotation(){return this._rotation}setRotationAlignment(R){return this._rotationAlignment=R||"auto",this._update(),this}getRotationAlignment(){return this._rotationAlignment}setPitchAlignment(R){return this._pitchAlignment=R&&R!=="auto"?R:this._rotationAlignment,this._update(),this}getPitchAlignment(){return this._pitchAlignment}setOpacity(R,ae){return R===void 0&&ae===void 0&&(this._opacity="1",this._opacityWhenCovered="0.2"),R!==void 0&&(this._opacity=R),ae!==void 0&&(this._opacityWhenCovered=ae),this._map&&this._updateOpacity(!0),this}}let tf={positionOptions:{enableHighAccuracy:!1,maximumAge:0,timeout:6e3},fitBoundsOptions:{maxZoom:15},trackUserLocation:!1,showAccuracyCircle:!0,showUserLocation:!0},yu=0,Bc=!1,Iu={maxWidth:100,unit:"metric"};function Ac(Oe,R,ae){let we=ae&&ae.maxWidth||100,Se=Oe._container.clientHeight/2,De=Oe.unproject([0,Se]),ft=Oe.unproject([we,Se]),bt=De.distanceTo(ft);if(ae&&ae.unit==="imperial"){let Dt=3.2808*bt;Dt>5280?ro(R,we,Dt/5280,Oe._getUIString("ScaleControl.Miles")):ro(R,we,Dt,Oe._getUIString("ScaleControl.Feet"))}else ae&&ae.unit==="nautical"?ro(R,we,bt/1852,Oe._getUIString("ScaleControl.NauticalMiles")):bt>=1e3?ro(R,we,bt/1e3,Oe._getUIString("ScaleControl.Kilometers")):ro(R,we,bt,Oe._getUIString("ScaleControl.Meters"))}function ro(Oe,R,ae,we){let Se=function(De){let ft=Math.pow(10,`${Math.floor(De)}`.length-1),bt=De/ft;return bt=bt>=10?10:bt>=5?5:bt>=3?3:bt>=2?2:bt>=1?1:function(Dt){let Yt=Math.pow(10,Math.ceil(-Math.log(Dt)/Math.LN10));return Math.round(Dt*Yt)/Yt}(bt),ft*bt}(ae);Oe.style.width=R*(Se/ae)+"px",Oe.innerHTML=`${Se}&nbsp;${we}`}let Po={closeButton:!0,closeOnClick:!0,focusAfterOpen:!0,className:"",maxWidth:"240px",subpixelPositioning:!1},Nc=["a[href]","[tabindex]:not([tabindex='-1'])","[contenteditable]:not([contenteditable='false'])","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])"].join(", ");function hc(Oe){if(Oe){if(typeof Oe=="number"){let R=Math.round(Math.abs(Oe)/Math.SQRT2);return{center:new t.P(0,0),top:new t.P(0,Oe),"top-left":new t.P(R,R),"top-right":new t.P(-R,R),bottom:new t.P(0,-Oe),"bottom-left":new t.P(R,-R),"bottom-right":new t.P(-R,-R),left:new t.P(Oe,0),right:new t.P(-Oe,0)}}if(Oe instanceof t.P||Array.isArray(Oe)){let R=t.P.convert(Oe);return{center:R,top:R,"top-left":R,"top-right":R,bottom:R,"bottom-left":R,"bottom-right":R,left:R,right:R}}return{center:t.P.convert(Oe.center||[0,0]),top:t.P.convert(Oe.top||[0,0]),"top-left":t.P.convert(Oe["top-left"]||[0,0]),"top-right":t.P.convert(Oe["top-right"]||[0,0]),bottom:t.P.convert(Oe.bottom||[0,0]),"bottom-left":t.P.convert(Oe["bottom-left"]||[0,0]),"bottom-right":t.P.convert(Oe["bottom-right"]||[0,0]),left:t.P.convert(Oe.left||[0,0]),right:t.P.convert(Oe.right||[0,0])}}return hc(new t.P(0,0))}let pc=r;e.AJAXError=t.bh,e.Evented=t.E,e.LngLat=t.N,e.MercatorCoordinate=t.Z,e.Point=t.P,e.addProtocol=t.bi,e.config=t.a,e.removeProtocol=t.bj,e.AttributionControl=no,e.BoxZoomHandler=gu,e.CanvasSource=et,e.CooperativeGesturesHandler=_i,e.DoubleClickZoomHandler=Ka,e.DragPanHandler=ki,e.DragRotateHandler=Bi,e.EdgeInsets=$u,e.FullscreenControl=class extends t.E{constructor(Oe={}){super(),this._onFullscreenChange=()=>{var R;let ae=window.document.fullscreenElement||window.document.mozFullScreenElement||window.document.webkitFullscreenElement||window.document.msFullscreenElement;for(;!((R=ae?.shadowRoot)===null||R===void 0)&&R.fullscreenElement;)ae=ae.shadowRoot.fullscreenElement;ae===this._container!==this._fullscreen&&this._handleFullscreenChange()},this._onClickFullscreen=()=>{this._isFullscreen()?this._exitFullscreen():this._requestFullscreen()},this._fullscreen=!1,Oe&&Oe.container&&(Oe.container instanceof HTMLElement?this._container=Oe.container:t.w("Full screen control 'container' must be a DOM element.")),"onfullscreenchange"in document?this._fullscreenchange="fullscreenchange":"onmozfullscreenchange"in document?this._fullscreenchange="mozfullscreenchange":"onwebkitfullscreenchange"in document?this._fullscreenchange="webkitfullscreenchange":"onmsfullscreenchange"in document&&(this._fullscreenchange="MSFullscreenChange")}onAdd(Oe){return this._map=Oe,this._container||(this._container=this._map.getContainer()),this._controlContainer=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),this._controlContainer}onRemove(){n.remove(this._controlContainer),this._map=null,window.document.removeEventListener(this._fullscreenchange,this._onFullscreenChange)}_setupUI(){let Oe=this._fullscreenButton=n.create("button","maplibregl-ctrl-fullscreen",this._controlContainer);n.create("span","maplibregl-ctrl-icon",Oe).setAttribute("aria-hidden","true"),Oe.type="button",this._updateTitle(),this._fullscreenButton.addEventListener("click",this._onClickFullscreen),window.document.addEventListener(this._fullscreenchange,this._onFullscreenChange)}_updateTitle(){let Oe=this._getTitle();this._fullscreenButton.setAttribute("aria-label",Oe),this._fullscreenButton.title=Oe}_getTitle(){return this._map._getUIString(this._isFullscreen()?"FullscreenControl.Exit":"FullscreenControl.Enter")}_isFullscreen(){return this._fullscreen}_handleFullscreenChange(){this._fullscreen=!this._fullscreen,this._fullscreenButton.classList.toggle("maplibregl-ctrl-shrink"),this._fullscreenButton.classList.toggle("maplibregl-ctrl-fullscreen"),this._updateTitle(),this._fullscreen?(this.fire(new t.k("fullscreenstart")),this._prevCooperativeGesturesEnabled=this._map.cooperativeGestures.isEnabled(),this._map.cooperativeGestures.disable()):(this.fire(new t.k("fullscreenend")),this._prevCooperativeGesturesEnabled&&this._map.cooperativeGestures.enable())}_exitFullscreen(){window.document.exitFullscreen?window.document.exitFullscreen():window.document.mozCancelFullScreen?window.document.mozCancelFullScreen():window.document.msExitFullscreen?window.document.msExitFullscreen():window.document.webkitCancelFullScreen?window.document.webkitCancelFullScreen():this._togglePseudoFullScreen()}_requestFullscreen(){this._container.requestFullscreen?this._container.requestFullscreen():this._container.mozRequestFullScreen?this._container.mozRequestFullScreen():this._container.msRequestFullscreen?this._container.msRequestFullscreen():this._container.webkitRequestFullscreen?this._container.webkitRequestFullscreen():this._togglePseudoFullScreen()}_togglePseudoFullScreen(){this._container.classList.toggle("maplibregl-pseudo-fullscreen"),this._handleFullscreenChange(),this._map.resize()}},e.GeoJSONSource=Ie,e.GeolocateControl=class extends t.E{constructor(Oe){super(),this._onSuccess=R=>{if(this._map){if(this._isOutOfMapMaxBounds(R))return this._setErrorState(),this.fire(new t.k("outofmaxbounds",R)),this._updateMarker(),void this._finish();if(this.options.trackUserLocation)switch(this._lastKnownPosition=R,this._watchState){case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"BACKGROUND":case"BACKGROUND_ERROR":this._watchState="BACKGROUND",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background");break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}this.options.showUserLocation&&this._watchState!=="OFF"&&this._updateMarker(R),this.options.trackUserLocation&&this._watchState!=="ACTIVE_LOCK"||this._updateCamera(R),this.options.showUserLocation&&this._dotElement.classList.remove("maplibregl-user-location-dot-stale"),this.fire(new t.k("geolocate",R)),this._finish()}},this._updateCamera=R=>{let ae=new t.N(R.coords.longitude,R.coords.latitude),we=R.coords.accuracy,Se=this._map.getBearing(),De=t.e({bearing:Se},this.options.fitBoundsOptions),ft=ie.fromLngLat(ae,we);this._map.fitBounds(ft,De,{geolocateSource:!0})},this._updateMarker=R=>{if(R){let ae=new t.N(R.coords.longitude,R.coords.latitude);this._accuracyCircleMarker.setLngLat(ae).addTo(this._map),this._userLocationDotMarker.setLngLat(ae).addTo(this._map),this._accuracy=R.coords.accuracy,this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()}else this._userLocationDotMarker.remove(),this._accuracyCircleMarker.remove()},this._onZoom=()=>{this.options.showUserLocation&&this.options.showAccuracyCircle&&this._updateCircleRadius()},this._onError=R=>{if(this._map){if(this.options.trackUserLocation)if(R.code===1){this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.disabled=!0;let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae),this._geolocationWatchID!==void 0&&this._clearWatch()}else{if(R.code===3&&Bc)return;this._setErrorState()}this._watchState!=="OFF"&&this.options.showUserLocation&&this._dotElement.classList.add("maplibregl-user-location-dot-stale"),this.fire(new t.k("error",R)),this._finish()}},this._finish=()=>{this._timeoutId&&clearTimeout(this._timeoutId),this._timeoutId=void 0},this._setupUI=()=>{this._map&&(this._container.addEventListener("contextmenu",R=>R.preventDefault()),this._geolocateButton=n.create("button","maplibregl-ctrl-geolocate",this._container),n.create("span","maplibregl-ctrl-icon",this._geolocateButton).setAttribute("aria-hidden","true"),this._geolocateButton.type="button",this._geolocateButton.disabled=!0)},this._finishSetupUI=R=>{if(this._map){if(R===!1){t.w("Geolocation support is not available so the GeolocateControl will be disabled.");let ae=this._map._getUIString("GeolocateControl.LocationNotAvailable");this._geolocateButton.disabled=!0,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}else{let ae=this._map._getUIString("GeolocateControl.FindMyLocation");this._geolocateButton.disabled=!1,this._geolocateButton.title=ae,this._geolocateButton.setAttribute("aria-label",ae)}this.options.trackUserLocation&&(this._geolocateButton.setAttribute("aria-pressed","false"),this._watchState="OFF"),this.options.showUserLocation&&(this._dotElement=n.create("div","maplibregl-user-location-dot"),this._userLocationDotMarker=new ec({element:this._dotElement}),this._circleElement=n.create("div","maplibregl-user-location-accuracy-circle"),this._accuracyCircleMarker=new ec({element:this._circleElement,pitchAlignment:"map"}),this.options.trackUserLocation&&(this._watchState="OFF"),this._map.on("zoom",this._onZoom)),this._geolocateButton.addEventListener("click",()=>this.trigger()),this._setup=!0,this.options.trackUserLocation&&this._map.on("movestart",ae=>{ae.geolocateSource||this._watchState!=="ACTIVE_LOCK"||ae.originalEvent&&ae.originalEvent.type==="resize"||(this._watchState="BACKGROUND",this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this.fire(new t.k("trackuserlocationend")),this.fire(new t.k("userlocationlostfocus")))})}},this.options=t.e({},tf,Oe)}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._setupUI(),function(){return t._(this,arguments,void 0,function*(R=!1){if(js!==void 0&&!R)return js;if(window.navigator.permissions===void 0)return js=!!window.navigator.geolocation,js;try{js=(yield window.navigator.permissions.query({name:"geolocation"})).state!=="denied"}catch{js=!!window.navigator.geolocation}return js})}().then(R=>this._finishSetupUI(R)),this._container}onRemove(){this._geolocationWatchID!==void 0&&(window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0),this.options.showUserLocation&&this._userLocationDotMarker&&this._userLocationDotMarker.remove(),this.options.showAccuracyCircle&&this._accuracyCircleMarker&&this._accuracyCircleMarker.remove(),n.remove(this._container),this._map.off("zoom",this._onZoom),this._map=void 0,yu=0,Bc=!1}_isOutOfMapMaxBounds(Oe){let R=this._map.getMaxBounds(),ae=Oe.coords;return R&&(ae.longitude<R.getWest()||ae.longitude>R.getEast()||ae.latitude<R.getSouth()||ae.latitude>R.getNorth())}_setErrorState(){switch(this._watchState){case"WAITING_ACTIVE":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error");break;case"ACTIVE_LOCK":this._watchState="ACTIVE_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"BACKGROUND":this._watchState="BACKGROUND_ERROR",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-background-error"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting");break;case"ACTIVE_ERROR":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}}_updateCircleRadius(){let Oe=this._map.getBounds(),R=Oe.getSouthEast(),ae=Oe.getNorthEast(),we=R.distanceTo(ae),Se=Math.ceil(this._accuracy/(we/this._map._container.clientHeight)*2);this._circleElement.style.width=`${Se}px`,this._circleElement.style.height=`${Se}px`}trigger(){if(!this._setup)return t.w("Geolocate control triggered before added to a map"),!1;if(this.options.trackUserLocation){switch(this._watchState){case"OFF":this._watchState="WAITING_ACTIVE",this.fire(new t.k("trackuserlocationstart"));break;case"WAITING_ACTIVE":case"ACTIVE_LOCK":case"ACTIVE_ERROR":case"BACKGROUND_ERROR":yu--,Bc=!1,this._watchState="OFF",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-active-error"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background-error"),this.fire(new t.k("trackuserlocationend"));break;case"BACKGROUND":this._watchState="ACTIVE_LOCK",this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-background"),this._lastKnownPosition&&this._updateCamera(this._lastKnownPosition),this.fire(new t.k("trackuserlocationstart")),this.fire(new t.k("userlocationfocus"));break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}switch(this._watchState){case"WAITING_ACTIVE":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"ACTIVE_LOCK":this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-active");break;case"OFF":break;default:throw new Error(`Unexpected watchState ${this._watchState}`)}if(this._watchState==="OFF"&&this._geolocationWatchID!==void 0)this._clearWatch();else if(this._geolocationWatchID===void 0){let Oe;this._geolocateButton.classList.add("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","true"),yu++,yu>1?(Oe={maximumAge:6e5,timeout:0},Bc=!0):(Oe=this.options.positionOptions,Bc=!1),this._geolocationWatchID=window.navigator.geolocation.watchPosition(this._onSuccess,this._onError,Oe)}}else window.navigator.geolocation.getCurrentPosition(this._onSuccess,this._onError,this.options.positionOptions),this._timeoutId=setTimeout(this._finish,1e4);return!0}_clearWatch(){window.navigator.geolocation.clearWatch(this._geolocationWatchID),this._geolocationWatchID=void 0,this._geolocateButton.classList.remove("maplibregl-ctrl-geolocate-waiting"),this._geolocateButton.setAttribute("aria-pressed","false"),this.options.showUserLocation&&this._updateMarker(null)}},e.Hash=Sh,e.ImageSource=at,e.KeyboardHandler=fr,e.LngLatBounds=ie,e.LogoControl=en,e.Map=class extends Wn{constructor(Oe){t.bf.mark(t.bg.create);let R=Object.assign(Object.assign({},fl),Oe);if(R.minZoom!=null&&R.maxZoom!=null&&R.minZoom>R.maxZoom)throw new Error("maxZoom must be greater than or equal to minZoom");if(R.minPitch!=null&&R.maxPitch!=null&&R.minPitch>R.maxPitch)throw new Error("maxPitch must be greater than or equal to minPitch");if(R.minPitch!=null&&R.minPitch<0)throw new Error("minPitch must be greater than or equal to 0");if(R.maxPitch!=null&&R.maxPitch>85)throw new Error("maxPitch must be less than or equal to 85");if(super(new xl(R.minZoom,R.maxZoom,R.minPitch,R.maxPitch,R.renderWorldCopies),{bearingSnap:R.bearingSnap}),this._idleTriggered=!1,this._crossFadingFactor=1,this._renderTaskQueue=new Ri,this._controls=[],this._mapId=t.a4(),this._contextLost=ae=>{ae.preventDefault(),this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this.fire(new t.k("webglcontextlost",{originalEvent:ae}))},this._contextRestored=ae=>{this._setupPainter(),this.resize(),this._update(),this.fire(new t.k("webglcontextrestored",{originalEvent:ae}))},this._onMapScroll=ae=>{if(ae.target===this._container)return this._container.scrollTop=0,this._container.scrollLeft=0,!1},this._onWindowOnline=()=>{this._update()},this._interactive=R.interactive,this._maxTileCacheSize=R.maxTileCacheSize,this._maxTileCacheZoomLevels=R.maxTileCacheZoomLevels,this._failIfMajorPerformanceCaveat=R.failIfMajorPerformanceCaveat===!0,this._preserveDrawingBuffer=R.preserveDrawingBuffer===!0,this._antialias=R.antialias===!0,this._trackResize=R.trackResize===!0,this._bearingSnap=R.bearingSnap,this._refreshExpiredTiles=R.refreshExpiredTiles===!0,this._fadeDuration=R.fadeDuration,this._crossSourceCollisions=R.crossSourceCollisions===!0,this._collectResourceTiming=R.collectResourceTiming===!0,this._locale=Object.assign(Object.assign({},vs),R.locale),this._clickTolerance=R.clickTolerance,this._overridePixelRatio=R.pixelRatio,this._maxCanvasSize=R.maxCanvasSize,this.transformCameraUpdate=R.transformCameraUpdate,this.cancelPendingTileRequestsWhileZooming=R.cancelPendingTileRequestsWhileZooming===!0,this._imageQueueHandle=l.addThrottleControl(()=>this.isMoving()),this._requestManager=new _(R.transformRequest),typeof R.container=="string"){if(this._container=document.getElementById(R.container),!this._container)throw new Error(`Container '${R.container}' not found.`)}else{if(!(R.container instanceof HTMLElement))throw new Error("Invalid type: 'container' must be a String or HTMLElement.");this._container=R.container}if(R.maxBounds&&this.setMaxBounds(R.maxBounds),this._setupContainer(),this._setupPainter(),this.on("move",()=>this._update(!1)).on("moveend",()=>this._update(!1)).on("zoom",()=>this._update(!0)).on("terrain",()=>{this.painter.terrainFacilitator.dirty=!0,this._update(!0)}).once("idle",()=>{this._idleTriggered=!0}),typeof window<"u"){addEventListener("online",this._onWindowOnline,!1);let ae=!1,we=hh(Se=>{this._trackResize&&!this._removed&&(this.resize(Se),this.redraw())},50);this._resizeObserver=new ResizeObserver(Se=>{ae?we(Se):ae=!0}),this._resizeObserver.observe(this._container)}this.handlers=new Kn(this,R),this._hash=R.hash&&new Sh(typeof R.hash=="string"&&R.hash||void 0).addTo(this),this._hash&&this._hash._onHashChange()||(this.jumpTo({center:R.center,zoom:R.zoom,bearing:R.bearing,pitch:R.pitch}),R.bounds&&(this.resize(),this.fitBounds(R.bounds,t.e({},R.fitBoundsOptions,{duration:0})))),this.resize(),this._localIdeographFontFamily=R.localIdeographFontFamily,this._validateStyle=R.validateStyle,R.style&&this.setStyle(R.style,{localIdeographFontFamily:R.localIdeographFontFamily}),R.attributionControl&&this.addControl(new no(typeof R.attributionControl=="boolean"?void 0:R.attributionControl)),R.maplibreLogo&&this.addControl(new en,R.logoPosition),this.on("style.load",()=>{this.transform.unmodified&&this.jumpTo(this.style.stylesheet)}),this.on("data",ae=>{this._update(ae.dataType==="style"),this.fire(new t.k(`${ae.dataType}data`,ae))}),this.on("dataloading",ae=>{this.fire(new t.k(`${ae.dataType}dataloading`,ae))}),this.on("dataabort",ae=>{this.fire(new t.k("sourcedataabort",ae))})}_getMapId(){return this._mapId}addControl(Oe,R){if(R===void 0&&(R=Oe.getDefaultPosition?Oe.getDefaultPosition():"top-right"),!Oe||!Oe.onAdd)return this.fire(new t.j(new Error("Invalid argument to map.addControl(). Argument must be a control with onAdd and onRemove methods.")));let ae=Oe.onAdd(this);this._controls.push(Oe);let we=this._controlPositions[R];return R.indexOf("bottom")!==-1?we.insertBefore(ae,we.firstChild):we.appendChild(ae),this}removeControl(Oe){if(!Oe||!Oe.onRemove)return this.fire(new t.j(new Error("Invalid argument to map.removeControl(). Argument must be a control with onAdd and onRemove methods.")));let R=this._controls.indexOf(Oe);return R>-1&&this._controls.splice(R,1),Oe.onRemove(this),this}hasControl(Oe){return this._controls.indexOf(Oe)>-1}calculateCameraOptionsFromTo(Oe,R,ae,we){return we==null&&this.terrain&&(we=this.terrain.getElevationForLngLatZoom(ae,this.transform.tileZoom)),super.calculateCameraOptionsFromTo(Oe,R,ae,we)}resize(Oe){var R;let ae=this._containerDimensions(),we=ae[0],Se=ae[1],De=this._getClampedPixelRatio(we,Se);if(this._resizeCanvas(we,Se,De),this.painter.resize(we,Se,De),this.painter.overLimit()){let bt=this.painter.context.gl;this._maxCanvasSize=[bt.drawingBufferWidth,bt.drawingBufferHeight];let Dt=this._getClampedPixelRatio(we,Se);this._resizeCanvas(we,Se,Dt),this.painter.resize(we,Se,Dt)}this.transform.resize(we,Se),(R=this._requestedCameraState)===null||R===void 0||R.resize(we,Se);let ft=!this._moving;return ft&&(this.stop(),this.fire(new t.k("movestart",Oe)).fire(new t.k("move",Oe))),this.fire(new t.k("resize",Oe)),ft&&this.fire(new t.k("moveend",Oe)),this}_getClampedPixelRatio(Oe,R){let{0:ae,1:we}=this._maxCanvasSize,Se=this.getPixelRatio(),De=Oe*Se,ft=R*Se;return Math.min(De>ae?ae/De:1,ft>we?we/ft:1)*Se}getPixelRatio(){var Oe;return(Oe=this._overridePixelRatio)!==null&&Oe!==void 0?Oe:devicePixelRatio}setPixelRatio(Oe){this._overridePixelRatio=Oe,this.resize()}getBounds(){return this.transform.getBounds()}getMaxBounds(){return this.transform.getMaxBounds()}setMaxBounds(Oe){return this.transform.setMaxBounds(ie.convert(Oe)),this._update()}setMinZoom(Oe){if((Oe=Oe??-2)>=-2&&Oe<=this.transform.maxZoom)return this.transform.minZoom=Oe,this._update(),this.getZoom()<Oe&&this.setZoom(Oe),this;throw new Error("minZoom must be between -2 and the current maxZoom, inclusive")}getMinZoom(){return this.transform.minZoom}setMaxZoom(Oe){if((Oe=Oe??22)>=this.transform.minZoom)return this.transform.maxZoom=Oe,this._update(),this.getZoom()>Oe&&this.setZoom(Oe),this;throw new Error("maxZoom must be greater than the current minZoom")}getMaxZoom(){return this.transform.maxZoom}setMinPitch(Oe){if((Oe=Oe??0)<0)throw new Error("minPitch must be greater than or equal to 0");if(Oe>=0&&Oe<=this.transform.maxPitch)return this.transform.minPitch=Oe,this._update(),this.getPitch()<Oe&&this.setPitch(Oe),this;throw new Error("minPitch must be between 0 and the current maxPitch, inclusive")}getMinPitch(){return this.transform.minPitch}setMaxPitch(Oe){if((Oe=Oe??60)>85)throw new Error("maxPitch must be less than or equal to 85");if(Oe>=this.transform.minPitch)return this.transform.maxPitch=Oe,this._update(),this.getPitch()>Oe&&this.setPitch(Oe),this;throw new Error("maxPitch must be greater than the current minPitch")}getMaxPitch(){return this.transform.maxPitch}getRenderWorldCopies(){return this.transform.renderWorldCopies}setRenderWorldCopies(Oe){return this.transform.renderWorldCopies=Oe,this._update()}project(Oe){return this.transform.locationPoint(t.N.convert(Oe),this.style&&this.terrain)}unproject(Oe){return this.transform.pointLocation(t.P.convert(Oe),this.terrain)}isMoving(){var Oe;return this._moving||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isMoving())}isZooming(){var Oe;return this._zooming||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isZooming())}isRotating(){var Oe;return this._rotating||((Oe=this.handlers)===null||Oe===void 0?void 0:Oe.isRotating())}_createDelegatedListener(Oe,R,ae){if(Oe==="mouseenter"||Oe==="mouseover"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:De=>{let ft=R.filter(Dt=>this.getLayer(Dt)),bt=ft.length!==0?this.queryRenderedFeatures(De.point,{layers:ft}):[];bt.length?we||(we=!0,ae.call(this,new au(Oe,this,De.originalEvent,{features:bt}))):we=!1},mouseout:()=>{we=!1}}}}if(Oe==="mouseleave"||Oe==="mouseout"){let we=!1;return{layers:R,listener:ae,delegates:{mousemove:ft=>{let bt=R.filter(Dt=>this.getLayer(Dt));(bt.length!==0?this.queryRenderedFeatures(ft.point,{layers:bt}):[]).length?we=!0:we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))},mouseout:ft=>{we&&(we=!1,ae.call(this,new au(Oe,this,ft.originalEvent)))}}}}{let we=Se=>{let De=R.filter(bt=>this.getLayer(bt)),ft=De.length!==0?this.queryRenderedFeatures(Se.point,{layers:De}):[];ft.length&&(Se.features=ft,ae.call(this,Se),delete Se.features)};return{layers:R,listener:ae,delegates:{[Oe]:we}}}}_saveDelegatedListener(Oe,R){this._delegatedListeners=this._delegatedListeners||{},this._delegatedListeners[Oe]=this._delegatedListeners[Oe]||[],this._delegatedListeners[Oe].push(R)}_removeDelegatedListener(Oe,R,ae){if(!this._delegatedListeners||!this._delegatedListeners[Oe])return;let we=this._delegatedListeners[Oe];for(let Se=0;Se<we.length;Se++){let De=we[Se];if(De.listener===ae&&De.layers.length===R.length&&De.layers.every(ft=>R.includes(ft))){for(let ft in De.delegates)this.off(ft,De.delegates[ft]);return void we.splice(Se,1)}}}on(Oe,R,ae){if(ae===void 0)return super.on(Oe,R);let we=this._createDelegatedListener(Oe,typeof R=="string"?[R]:R,ae);this._saveDelegatedListener(Oe,we);for(let Se in we.delegates)this.on(Se,we.delegates[Se]);return this}once(Oe,R,ae){if(ae===void 0)return super.once(Oe,R);let we=typeof R=="string"?[R]:R,Se=this._createDelegatedListener(Oe,we,ae);for(let De in Se.delegates){let ft=Se.delegates[De];Se.delegates[De]=(...bt)=>{this._removeDelegatedListener(Oe,we,ae),ft(...bt)}}this._saveDelegatedListener(Oe,Se);for(let De in Se.delegates)this.once(De,Se.delegates[De]);return this}off(Oe,R,ae){return ae===void 0?super.off(Oe,R):(this._removeDelegatedListener(Oe,typeof R=="string"?[R]:R,ae),this)}queryRenderedFeatures(Oe,R){if(!this.style)return[];let ae,we=Oe instanceof t.P||Array.isArray(Oe),Se=we?Oe:[[0,0],[this.transform.width,this.transform.height]];if(R=R||(we?{}:Oe)||{},Se instanceof t.P||typeof Se[0]=="number")ae=[t.P.convert(Se)];else{let De=t.P.convert(Se[0]),ft=t.P.convert(Se[1]);ae=[De,new t.P(ft.x,De.y),ft,new t.P(De.x,ft.y),De]}return this.style.queryRenderedFeatures(ae,R,this.transform)}querySourceFeatures(Oe,R){return this.style.querySourceFeatures(Oe,R)}setStyle(Oe,R){return(R=t.e({},{localIdeographFontFamily:this._localIdeographFontFamily,validate:this._validateStyle},R)).diff!==!1&&R.localIdeographFontFamily===this._localIdeographFontFamily&&this.style&&Oe?(this._diffStyle(Oe,R),this):(this._localIdeographFontFamily=R.localIdeographFontFamily,this._updateStyle(Oe,R))}setTransformRequest(Oe){return this._requestManager.setTransformRequest(Oe),this}_getUIString(Oe){let R=this._locale[Oe];if(R==null)throw new Error(`Missing UI string '${Oe}'`);return R}_updateStyle(Oe,R){if(R.transformStyle&&this.style&&!this.style._loaded)return void this.style.once("style.load",()=>this._updateStyle(Oe,R));let ae=this.style&&R.transformStyle?this.style.serialize():void 0;return this.style&&(this.style.setEventedParent(null),this.style._remove(!Oe)),Oe?(this.style=new Jr(this,R||{}),this.style.setEventedParent(this,{style:this.style}),typeof Oe=="string"?this.style.loadURL(Oe,R,ae):this.style.loadJSON(Oe,R,ae),this):(delete this.style,this)}_lazyInitEmptyStyle(){this.style||(this.style=new Jr(this,{}),this.style.setEventedParent(this,{style:this.style}),this.style.loadEmpty())}_diffStyle(Oe,R){if(typeof Oe=="string"){let ae=this._requestManager.transformRequest(Oe,"Style");t.h(ae,new AbortController).then(we=>{this._updateDiff(we.data,R)}).catch(we=>{we&&this.fire(new t.j(we))})}else typeof Oe=="object"&&this._updateDiff(Oe,R)}_updateDiff(Oe,R){try{this.style.setState(Oe,R)&&this._update(!0)}catch(ae){t.w(`Unable to perform style diff: ${ae.message||ae.error||ae}. Rebuilding the style from scratch.`),this._updateStyle(Oe,R)}}getStyle(){if(this.style)return this.style.serialize()}isStyleLoaded(){return this.style?this.style.loaded():t.w("There is no style added to the map.")}addSource(Oe,R){return this._lazyInitEmptyStyle(),this.style.addSource(Oe,R),this._update(!0)}isSourceLoaded(Oe){let R=this.style&&this.style.sourceCaches[Oe];if(R!==void 0)return R.loaded();this.fire(new t.j(new Error(`There is no source with ID '${Oe}'`)))}setTerrain(Oe){if(this.style._checkLoaded(),this._terrainDataCallback&&this.style.off("data",this._terrainDataCallback),Oe){let R=this.style.sourceCaches[Oe.source];if(!R)throw new Error(`cannot load terrain, because there exists no source with ID: ${Oe.source}`);this.terrain===null&&R.reload();for(let ae in this.style._layers){let we=this.style._layers[ae];we.type==="hillshade"&&we.source===Oe.source&&t.w("You are using the same source for a hillshade layer and for 3D terrain. Please consider using two separate sources to improve rendering quality.")}this.terrain=new bs(this.painter,R,Oe),this.painter.renderToTexture=new Hs(this.painter,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._terrainDataCallback=ae=>{ae.dataType==="style"?this.terrain.sourceCache.freeRtt():ae.dataType==="source"&&ae.tile&&(ae.sourceId!==Oe.source||this._elevationFreeze||(this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom)),this.terrain.sourceCache.freeRtt(ae.tile.tileID))},this.style.on("data",this._terrainDataCallback)}else this.terrain&&this.terrain.sourceCache.destruct(),this.terrain=null,this.painter.renderToTexture&&this.painter.renderToTexture.destruct(),this.painter.renderToTexture=null,this.transform.minElevationForCurrentTile=0,this.transform.elevation=0;return this.fire(new t.k("terrain",{terrain:Oe})),this}getTerrain(){var Oe,R;return(R=(Oe=this.terrain)===null||Oe===void 0?void 0:Oe.options)!==null&&R!==void 0?R:null}areTilesLoaded(){let Oe=this.style&&this.style.sourceCaches;for(let R in Oe){let ae=Oe[R]._tiles;for(let we in ae){let Se=ae[we];if(Se.state!=="loaded"&&Se.state!=="errored")return!1}}return!0}removeSource(Oe){return this.style.removeSource(Oe),this._update(!0)}getSource(Oe){return this.style.getSource(Oe)}addImage(Oe,R,ae={}){let{pixelRatio:we=1,sdf:Se=!1,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt}=ae;if(this._lazyInitEmptyStyle(),!(R instanceof HTMLImageElement||t.b(R))){if(R.width===void 0||R.height===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.addImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));{let{width:cr,height:hr,data:jr}=R,ea=R;return this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},new Uint8Array(jr)),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0,userImage:ea}),ea.onAdd&&ea.onAdd(this,Oe),this}}{let{width:cr,height:hr,data:jr}=i.getImageData(R);this.style.addImage(Oe,{data:new t.R({width:cr,height:hr},jr),pixelRatio:we,stretchX:De,stretchY:ft,content:bt,textFitWidth:Dt,textFitHeight:Yt,sdf:Se,version:0})}}updateImage(Oe,R){let ae=this.style.getImage(Oe);if(!ae)return this.fire(new t.j(new Error("The map has no image with that id. If you are adding a new image use `map.addImage(...)` instead.")));let we=R instanceof HTMLImageElement||t.b(R)?i.getImageData(R):R,{width:Se,height:De,data:ft}=we;if(Se===void 0||De===void 0)return this.fire(new t.j(new Error("Invalid arguments to map.updateImage(). The second argument must be an `HTMLImageElement`, `ImageData`, `ImageBitmap`, or object with `width`, `height`, and `data` properties with the same format as `ImageData`")));if(Se!==ae.data.width||De!==ae.data.height)return this.fire(new t.j(new Error("The width and height of the updated image must be that same as the previous version of the image")));let bt=!(R instanceof HTMLImageElement||t.b(R));return ae.data.replace(ft,bt),this.style.updateImage(Oe,ae),this}getImage(Oe){return this.style.getImage(Oe)}hasImage(Oe){return Oe?!!this.style.getImage(Oe):(this.fire(new t.j(new Error("Missing required image id"))),!1)}removeImage(Oe){this.style.removeImage(Oe)}loadImage(Oe){return l.getImage(this._requestManager.transformRequest(Oe,"Image"),new AbortController)}listImages(){return this.style.listImages()}addLayer(Oe,R){return this._lazyInitEmptyStyle(),this.style.addLayer(Oe,R),this._update(!0)}moveLayer(Oe,R){return this.style.moveLayer(Oe,R),this._update(!0)}removeLayer(Oe){return this.style.removeLayer(Oe),this._update(!0)}getLayer(Oe){return this.style.getLayer(Oe)}getLayersOrder(){return this.style.getLayersOrder()}setLayerZoomRange(Oe,R,ae){return this.style.setLayerZoomRange(Oe,R,ae),this._update(!0)}setFilter(Oe,R,ae={}){return this.style.setFilter(Oe,R,ae),this._update(!0)}getFilter(Oe){return this.style.getFilter(Oe)}setPaintProperty(Oe,R,ae,we={}){return this.style.setPaintProperty(Oe,R,ae,we),this._update(!0)}getPaintProperty(Oe,R){return this.style.getPaintProperty(Oe,R)}setLayoutProperty(Oe,R,ae,we={}){return this.style.setLayoutProperty(Oe,R,ae,we),this._update(!0)}getLayoutProperty(Oe,R){return this.style.getLayoutProperty(Oe,R)}setGlyphs(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setGlyphs(Oe,R),this._update(!0)}getGlyphs(){return this.style.getGlyphsUrl()}addSprite(Oe,R,ae={}){return this._lazyInitEmptyStyle(),this.style.addSprite(Oe,R,ae,we=>{we||this._update(!0)}),this}removeSprite(Oe){return this._lazyInitEmptyStyle(),this.style.removeSprite(Oe),this._update(!0)}getSprite(){return this.style.getSprite()}setSprite(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setSprite(Oe,R,ae=>{ae||this._update(!0)}),this}setLight(Oe,R={}){return this._lazyInitEmptyStyle(),this.style.setLight(Oe,R),this._update(!0)}getLight(){return this.style.getLight()}setSky(Oe){return this._lazyInitEmptyStyle(),this.style.setSky(Oe),this._update(!0)}getSky(){return this.style.getSky()}setFeatureState(Oe,R){return this.style.setFeatureState(Oe,R),this._update()}removeFeatureState(Oe,R){return this.style.removeFeatureState(Oe,R),this._update()}getFeatureState(Oe){return this.style.getFeatureState(Oe)}getContainer(){return this._container}getCanvasContainer(){return this._canvasContainer}getCanvas(){return this._canvas}_containerDimensions(){let Oe=0,R=0;return this._container&&(Oe=this._container.clientWidth||400,R=this._container.clientHeight||300),[Oe,R]}_setupContainer(){let Oe=this._container;Oe.classList.add("maplibregl-map");let R=this._canvasContainer=n.create("div","maplibregl-canvas-container",Oe);this._interactive&&R.classList.add("maplibregl-interactive"),this._canvas=n.create("canvas","maplibregl-canvas",R),this._canvas.addEventListener("webglcontextlost",this._contextLost,!1),this._canvas.addEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.setAttribute("tabindex",this._interactive?"0":"-1"),this._canvas.setAttribute("aria-label",this._getUIString("Map.Title")),this._canvas.setAttribute("role","region");let ae=this._containerDimensions(),we=this._getClampedPixelRatio(ae[0],ae[1]);this._resizeCanvas(ae[0],ae[1],we);let Se=this._controlContainer=n.create("div","maplibregl-control-container",Oe),De=this._controlPositions={};["top-left","top-right","bottom-left","bottom-right"].forEach(ft=>{De[ft]=n.create("div",`maplibregl-ctrl-${ft} `,Se)}),this._container.addEventListener("scroll",this._onMapScroll,!1)}_resizeCanvas(Oe,R,ae){this._canvas.width=Math.floor(ae*Oe),this._canvas.height=Math.floor(ae*R),this._canvas.style.width=`${Oe}px`,this._canvas.style.height=`${R}px`}_setupPainter(){let Oe={alpha:!0,stencil:!0,depth:!0,failIfMajorPerformanceCaveat:this._failIfMajorPerformanceCaveat,preserveDrawingBuffer:this._preserveDrawingBuffer,antialias:this._antialias||!1},R=null;this._canvas.addEventListener("webglcontextcreationerror",we=>{R={requestedAttributes:Oe},we&&(R.statusMessage=we.statusMessage,R.type=we.type)},{once:!0});let ae=this._canvas.getContext("webgl2",Oe)||this._canvas.getContext("webgl",Oe);if(!ae){let we="Failed to initialize WebGL";throw R?(R.message=we,new Error(JSON.stringify(R))):new Error(we)}this.painter=new xc(ae,this.transform),s.testSupport(ae)}loaded(){return!this._styleDirty&&!this._sourcesDirty&&!!this.style&&this.style.loaded()}_update(Oe){return this.style&&this.style._loaded?(this._styleDirty=this._styleDirty||Oe,this._sourcesDirty=!0,this.triggerRepaint(),this):this}_requestRenderFrame(Oe){return this._update(),this._renderTaskQueue.add(Oe)}_cancelRenderFrame(Oe){this._renderTaskQueue.remove(Oe)}_render(Oe){let R=this._idleTriggered?this._fadeDuration:0;if(this.painter.context.setDirty(),this.painter.setBaseState(),this._renderTaskQueue.run(Oe),this._removed)return;let ae=!1;if(this.style&&this._styleDirty){this._styleDirty=!1;let Se=this.transform.zoom,De=i.now();this.style.zoomHistory.update(Se,De);let ft=new t.z(Se,{now:De,fadeDuration:R,zoomHistory:this.style.zoomHistory,transition:this.style.getTransition()}),bt=ft.crossFadingFactor();bt===1&&bt===this._crossFadingFactor||(ae=!0,this._crossFadingFactor=bt),this.style.update(ft)}this.style&&this._sourcesDirty&&(this._sourcesDirty=!1,this.style._updateSources(this.transform)),this.terrain?(this.terrain.sourceCache.update(this.transform,this.terrain),this.transform.minElevationForCurrentTile=this.terrain.getMinTileElevationForLngLatZoom(this.transform.center,this.transform.tileZoom),this._elevationFreeze||(this.transform.elevation=this.terrain.getElevationForLngLatZoom(this.transform.center,this.transform.tileZoom))):(this.transform.minElevationForCurrentTile=0,this.transform.elevation=0),this._placementDirty=this.style&&this.style._updatePlacement(this.painter.transform,this.showCollisionBoxes,R,this._crossSourceCollisions),this.painter.render(this.style,{showTileBoundaries:this.showTileBoundaries,showOverdrawInspector:this._showOverdrawInspector,rotating:this.isRotating(),zooming:this.isZooming(),moving:this.isMoving(),fadeDuration:R,showPadding:this.showPadding}),this.fire(new t.k("render")),this.loaded()&&!this._loaded&&(this._loaded=!0,t.bf.mark(t.bg.load),this.fire(new t.k("load"))),this.style&&(this.style.hasTransitions()||ae)&&(this._styleDirty=!0),this.style&&!this._placementDirty&&this.style._releaseSymbolFadeTiles();let we=this._sourcesDirty||this._styleDirty||this._placementDirty;return we||this._repaint?this.triggerRepaint():!this.isMoving()&&this.loaded()&&this.fire(new t.k("idle")),!this._loaded||this._fullyLoaded||we||(this._fullyLoaded=!0,t.bf.mark(t.bg.fullLoad)),this}redraw(){return this.style&&(this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._render(0)),this}remove(){var Oe;this._hash&&this._hash.remove();for(let ae of this._controls)ae.onRemove(this);this._controls=[],this._frameRequest&&(this._frameRequest.abort(),this._frameRequest=null),this._renderTaskQueue.clear(),this.painter.destroy(),this.handlers.destroy(),delete this.handlers,this.setStyle(null),typeof window<"u"&&removeEventListener("online",this._onWindowOnline,!1),l.removeThrottleControl(this._imageQueueHandle),(Oe=this._resizeObserver)===null||Oe===void 0||Oe.disconnect();let R=this.painter.context.gl.getExtension("WEBGL_lose_context");R?.loseContext&&R.loseContext(),this._canvas.removeEventListener("webglcontextrestored",this._contextRestored,!1),this._canvas.removeEventListener("webglcontextlost",this._contextLost,!1),n.remove(this._canvasContainer),n.remove(this._controlContainer),this._container.classList.remove("maplibregl-map"),t.bf.clearMetrics(),this._removed=!0,this.fire(new t.k("remove"))}triggerRepaint(){this.style&&!this._frameRequest&&(this._frameRequest=new AbortController,i.frameAsync(this._frameRequest).then(Oe=>{t.bf.frame(Oe),this._frameRequest=null,this._render(Oe)}).catch(()=>{}))}get showTileBoundaries(){return!!this._showTileBoundaries}set showTileBoundaries(Oe){this._showTileBoundaries!==Oe&&(this._showTileBoundaries=Oe,this._update())}get showPadding(){return!!this._showPadding}set showPadding(Oe){this._showPadding!==Oe&&(this._showPadding=Oe,this._update())}get showCollisionBoxes(){return!!this._showCollisionBoxes}set showCollisionBoxes(Oe){this._showCollisionBoxes!==Oe&&(this._showCollisionBoxes=Oe,Oe?this.style._generateCollisionBoxes():this._update())}get showOverdrawInspector(){return!!this._showOverdrawInspector}set showOverdrawInspector(Oe){this._showOverdrawInspector!==Oe&&(this._showOverdrawInspector=Oe,this._update())}get repaint(){return!!this._repaint}set repaint(Oe){this._repaint!==Oe&&(this._repaint=Oe,this.triggerRepaint())}get vertices(){return!!this._vertices}set vertices(Oe){this._vertices=Oe,this._update()}get version(){return Il}getCameraTargetElevation(){return this.transform.elevation}},e.MapMouseEvent=au,e.MapTouchEvent=$c,e.MapWheelEvent=Mh,e.Marker=ec,e.NavigationControl=class{constructor(Oe){this._updateZoomButtons=()=>{let R=this._map.getZoom(),ae=R===this._map.getMaxZoom(),we=R===this._map.getMinZoom();this._zoomInButton.disabled=ae,this._zoomOutButton.disabled=we,this._zoomInButton.setAttribute("aria-disabled",ae.toString()),this._zoomOutButton.setAttribute("aria-disabled",we.toString())},this._rotateCompassArrow=()=>{let R=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=R},this._setButtonTitle=(R,ae)=>{let we=this._map._getUIString(`NavigationControl.${ae}`);R.title=we,R.setAttribute("aria-label",we)},this.options=t.e({},Ln,Oe),this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._container.addEventListener("contextmenu",R=>R.preventDefault()),this.options.showZoom&&(this._zoomInButton=this._createButton("maplibregl-ctrl-zoom-in",R=>this._map.zoomIn({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomInButton).setAttribute("aria-hidden","true"),this._zoomOutButton=this._createButton("maplibregl-ctrl-zoom-out",R=>this._map.zoomOut({},{originalEvent:R})),n.create("span","maplibregl-ctrl-icon",this._zoomOutButton).setAttribute("aria-hidden","true")),this.options.showCompass&&(this._compass=this._createButton("maplibregl-ctrl-compass",R=>{this.options.visualizePitch?this._map.resetNorthPitch({},{originalEvent:R}):this._map.resetNorth({},{originalEvent:R})}),this._compassIcon=n.create("span","maplibregl-ctrl-icon",this._compass),this._compassIcon.setAttribute("aria-hidden","true"))}onAdd(Oe){return this._map=Oe,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 Ao(this._map,this._compass,this.options.visualizePitch)),this._container}onRemove(){n.remove(this._container),this.options.showZoom&&this._map.off("zoom",this._updateZoomButtons),this.options.showCompass&&(this.options.visualizePitch&&this._map.off("pitch",this._rotateCompassArrow),this._map.off("rotate",this._rotateCompassArrow),this._handler.off(),delete this._handler),delete this._map}_createButton(Oe,R){let ae=n.create("button",Oe,this._container);return ae.type="button",ae.addEventListener("click",R),ae}},e.Popup=class extends t.E{constructor(Oe){super(),this.remove=()=>(this._content&&n.remove(this._content),this._container&&(n.remove(this._container),delete this._container),this._map&&(this._map.off("move",this._update),this._map.off("move",this._onClose),this._map.off("click",this._onClose),this._map.off("remove",this.remove),this._map.off("mousemove",this._onMouseMove),this._map.off("mouseup",this._onMouseUp),this._map.off("drag",this._onDrag),this._map._canvasContainer.classList.remove("maplibregl-track-pointer"),delete this._map,this.fire(new t.k("close"))),this),this._onMouseUp=R=>{this._update(R.point)},this._onMouseMove=R=>{this._update(R.point)},this._onDrag=R=>{this._update(R.point)},this._update=R=>{var ae;if(!this._map||!this._lngLat&&!this._trackPointer||!this._content)return;if(!this._container){if(this._container=n.create("div","maplibregl-popup",this._map.getContainer()),this._tip=n.create("div","maplibregl-popup-tip",this._container),this._container.appendChild(this._content),this.options.className)for(let bt of this.options.className.split(" "))this._container.classList.add(bt);this._closeButton&&this._closeButton.setAttribute("aria-label",this._map._getUIString("Popup.Close")),this._trackPointer&&this._container.classList.add("maplibregl-popup-track-pointer")}if(this.options.maxWidth&&this._container.style.maxWidth!==this.options.maxWidth&&(this._container.style.maxWidth=this.options.maxWidth),this._lngLat=this._map.transform.renderWorldCopies&&!this._trackPointer?Ts(this._lngLat,this._flatPos,this._map.transform):(ae=this._lngLat)===null||ae===void 0?void 0:ae.wrap(),this._trackPointer&&!R)return;let we=this._flatPos=this._pos=this._trackPointer&&R?R:this._map.project(this._lngLat);this._map.terrain&&(this._flatPos=this._trackPointer&&R?R:this._map.transform.locationPoint(this._lngLat));let Se=this.options.anchor,De=hc(this.options.offset);if(!Se){let bt=this._container.offsetWidth,Dt=this._container.offsetHeight,Yt;Yt=we.y+De.bottom.y<Dt?["top"]:we.y>this._map.transform.height-Dt?["bottom"]:[],we.x<bt/2?Yt.push("left"):we.x>this._map.transform.width-bt/2&&Yt.push("right"),Se=Yt.length===0?"bottom":Yt.join("-")}let ft=we.add(De[Se]);this.options.subpixelPositioning||(ft=ft.round()),n.setTransform(this._container,`${nu[Se]} translate(${ft.x}px,${ft.y}px)`),Pu(this._container,Se,"popup")},this._onClose=()=>{this.remove()},this.options=t.e(Object.create(Po),Oe)}addTo(Oe){return this._map&&this.remove(),this._map=Oe,this.options.closeOnClick&&this._map.on("click",this._onClose),this.options.closeOnMove&&this._map.on("move",this._onClose),this._map.on("remove",this.remove),this._update(),this._focusFirstElement(),this._trackPointer?(this._map.on("mousemove",this._onMouseMove),this._map.on("mouseup",this._onMouseUp),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")):this._map.on("move",this._update),this.fire(new t.k("open")),this}isOpen(){return!!this._map}getLngLat(){return this._lngLat}setLngLat(Oe){return this._lngLat=t.N.convert(Oe),this._pos=null,this._flatPos=null,this._trackPointer=!1,this._update(),this._map&&(this._map.on("move",this._update),this._map.off("mousemove",this._onMouseMove),this._container&&this._container.classList.remove("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.remove("maplibregl-track-pointer")),this}trackPointer(){return this._trackPointer=!0,this._pos=null,this._flatPos=null,this._update(),this._map&&(this._map.off("move",this._update),this._map.on("mousemove",this._onMouseMove),this._map.on("drag",this._onDrag),this._container&&this._container.classList.add("maplibregl-popup-track-pointer"),this._map._canvasContainer.classList.add("maplibregl-track-pointer")),this}getElement(){return this._container}setText(Oe){return this.setDOMContent(document.createTextNode(Oe))}setHTML(Oe){let R=document.createDocumentFragment(),ae=document.createElement("body"),we;for(ae.innerHTML=Oe;we=ae.firstChild,we;)R.appendChild(we);return this.setDOMContent(R)}getMaxWidth(){var Oe;return(Oe=this._container)===null||Oe===void 0?void 0:Oe.style.maxWidth}setMaxWidth(Oe){return this.options.maxWidth=Oe,this._update(),this}setDOMContent(Oe){if(this._content)for(;this._content.hasChildNodes();)this._content.firstChild&&this._content.removeChild(this._content.firstChild);else this._content=n.create("div","maplibregl-popup-content",this._container);return this._content.appendChild(Oe),this._createCloseButton(),this._update(),this._focusFirstElement(),this}addClassName(Oe){return this._container&&this._container.classList.add(Oe),this}removeClassName(Oe){return this._container&&this._container.classList.remove(Oe),this}setOffset(Oe){return this.options.offset=Oe,this._update(),this}toggleClassName(Oe){if(this._container)return this._container.classList.toggle(Oe)}setSubpixelPositioning(Oe){this.options.subpixelPositioning=Oe}_createCloseButton(){this.options.closeButton&&(this._closeButton=n.create("button","maplibregl-popup-close-button",this._content),this._closeButton.type="button",this._closeButton.innerHTML="&#215;",this._closeButton.addEventListener("click",this._onClose))}_focusFirstElement(){if(!this.options.focusAfterOpen||!this._container)return;let Oe=this._container.querySelector(Nc);Oe&&Oe.focus()}},e.RasterDEMTileSource=Be,e.RasterTileSource=Ae,e.ScaleControl=class{constructor(Oe){this._onMove=()=>{Ac(this._map,this._container,this.options)},this.setUnit=R=>{this.options.unit=R,Ac(this._map,this._container,this.options)},this.options=Object.assign(Object.assign({},Iu),Oe)}getDefaultPosition(){return"bottom-left"}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-scale",Oe.getContainer()),this._map.on("move",this._onMove),this._onMove(),this._container}onRemove(){n.remove(this._container),this._map.off("move",this._onMove),this._map=void 0}},e.ScrollZoomHandler=ba,e.Style=Jr,e.TerrainControl=class{constructor(Oe){this._toggleTerrain=()=>{this._map.getTerrain()?this._map.setTerrain(null):this._map.setTerrain(this.options),this._updateTerrainIcon()},this._updateTerrainIcon=()=>{this._terrainButton.classList.remove("maplibregl-ctrl-terrain"),this._terrainButton.classList.remove("maplibregl-ctrl-terrain-enabled"),this._map.terrain?(this._terrainButton.classList.add("maplibregl-ctrl-terrain-enabled"),this._terrainButton.title=this._map._getUIString("TerrainControl.Disable")):(this._terrainButton.classList.add("maplibregl-ctrl-terrain"),this._terrainButton.title=this._map._getUIString("TerrainControl.Enable"))},this.options=Oe}onAdd(Oe){return this._map=Oe,this._container=n.create("div","maplibregl-ctrl maplibregl-ctrl-group"),this._terrainButton=n.create("button","maplibregl-ctrl-terrain",this._container),n.create("span","maplibregl-ctrl-icon",this._terrainButton).setAttribute("aria-hidden","true"),this._terrainButton.type="button",this._terrainButton.addEventListener("click",this._toggleTerrain),this._updateTerrainIcon(),this._map.on("terrain",this._updateTerrainIcon),this._container}onRemove(){n.remove(this._container),this._map.off("terrain",this._updateTerrainIcon),this._map=void 0}},e.TwoFingersTouchPitchHandler=ef,e.TwoFingersTouchRotateHandler=Oc,e.TwoFingersTouchZoomHandler=iu,e.TwoFingersTouchZoomRotateHandler=li,e.VectorTileSource=be,e.VideoSource=it,e.addSourceType=(Oe,R)=>t._(void 0,void 0,void 0,function*(){if(Me(Oe))throw new Error(`A source type called "${Oe}" already exists.`);((ae,we)=>{lt[ae]=we})(Oe,R)}),e.clearPrewarmedResources=function(){let Oe=he;Oe&&(Oe.isPreloaded()&&Oe.numActive()===1?(Oe.release(Q),he=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()"))},e.getMaxParallelImageRequests=function(){return t.a.MAX_PARALLEL_IMAGE_REQUESTS},e.getRTLTextPluginStatus=function(){return tt().getRTLTextPluginStatus()},e.getVersion=function(){return pc},e.getWorkerCount=function(){return ue.workerCount},e.getWorkerUrl=function(){return t.a.WORKER_URL},e.importScriptInWorkers=function(Oe){return Z().broadcast("IS",Oe)},e.prewarm=function(){$().acquire(Q)},e.setMaxParallelImageRequests=function(Oe){t.a.MAX_PARALLEL_IMAGE_REQUESTS=Oe},e.setRTLTextPlugin=function(Oe,R){return tt().setRTLTextPlugin(Oe,R)},e.setWorkerCount=function(Oe){ue.workerCount=Oe},e.setWorkerUrl=function(Oe){t.a.WORKER_URL=Oe}});var M=g;return M})}}),Tq=Ye({"src/plots/map/layers.js"(X,H){"use strict";var g=ta(),x=jl().sanitizeHTML,A=Ck(),M=_g();function e(i,n){this.subplot=i,this.uid=i.uid+"-"+n,this.index=n,this.idSource="source-"+this.uid,this.idLayer=M.layoutLayerPrefix+this.uid,this.sourceType=null,this.source=null,this.layerType=null,this.below=null,this.visible=!1}var t=e.prototype;t.update=function(n){this.visible?this.needsNewImage(n)?this.updateImage(n):this.needsNewSource(n)?(this.removeLayer(),this.updateSource(n),this.updateLayer(n)):this.needsNewLayer(n)?this.updateLayer(n):this.updateStyle(n):(this.updateSource(n),this.updateLayer(n)),this.visible=r(n)},t.needsNewImage=function(i){var n=this.subplot.map;return n.getSource(this.idSource)&&this.sourceType==="image"&&i.sourcetype==="image"&&(this.source!==i.source||JSON.stringify(this.coordinates)!==JSON.stringify(i.coordinates))},t.needsNewSource=function(i){return this.sourceType!==i.sourcetype||JSON.stringify(this.source)!==JSON.stringify(i.source)||this.layerType!==i.type},t.needsNewLayer=function(i){return this.layerType!==i.type||this.below!==this.subplot.belowLookup["layout-"+this.index]},t.lookupBelow=function(){return this.subplot.belowLookup["layout-"+this.index]},t.updateImage=function(i){var n=this.subplot.map;n.getSource(this.idSource).updateImage({url:i.source,coordinates:i.coordinates});var s=this.findFollowingMapLayerId(this.lookupBelow());s!==null&&this.subplot.map.moveLayer(this.idLayer,s)},t.updateSource=function(i){var n=this.subplot.map;if(n.getSource(this.idSource)&&n.removeSource(this.idSource),this.sourceType=i.sourcetype,this.source=i.source,!!r(i)){var s=a(i);n.addSource(this.idSource,s)}},t.findFollowingMapLayerId=function(i){if(i==="traces")for(var n=this.subplot.getMapLayers(),s=0;s<n.length;s++){var c=n[s].id;if(typeof c=="string"&&c.indexOf(M.traceLayerPrefix)===0){i=c;break}}return i},t.updateLayer=function(i){var n=this.subplot,s=o(i),c=this.lookupBelow(),h=this.findFollowingMapLayerId(c);this.removeLayer(),r(i)&&n.addLayer({id:this.idLayer,source:this.idSource,"source-layer":i.sourcelayer||"",type:i.type,minzoom:i.minzoom,maxzoom:i.maxzoom,layout:s.layout,paint:s.paint},h),this.layerType=i.type,this.below=c},t.updateStyle=function(i){if(r(i)){var n=o(i);this.subplot.setOptions(this.idLayer,"setLayoutProperty",n.layout),this.subplot.setOptions(this.idLayer,"setPaintProperty",n.paint)}},t.removeLayer=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer)},t.dispose=function(){var i=this.subplot.map;i.getLayer(this.idLayer)&&i.removeLayer(this.idLayer),i.getSource(this.idSource)&&i.removeSource(this.idSource)};function r(i){if(!i.visible)return!1;var n=i.source;if(Array.isArray(n)&&n.length>0){for(var s=0;s<n.length;s++)if(typeof n[s]!="string"||n[s].length===0)return!1;return!0}return g.isPlainObject(n)||typeof n=="string"&&n.length>0}function o(i){var n={},s={};switch(i.type){case"circle":g.extendFlat(s,{"circle-radius":i.circle.radius,"circle-color":i.color,"circle-opacity":i.opacity});break;case"line":g.extendFlat(s,{"line-width":i.line.width,"line-color":i.color,"line-opacity":i.opacity,"line-dasharray":i.line.dash});break;case"fill":g.extendFlat(s,{"fill-color":i.color,"fill-outline-color":i.fill.outlinecolor,"fill-opacity":i.opacity});break;case"symbol":var c=i.symbol,h=A(c.textposition,c.iconsize);g.extendFlat(n,{"icon-image":c.icon+"-15","icon-size":c.iconsize/10,"text-field":c.text,"text-size":c.textfont.size,"text-anchor":h.anchor,"text-offset":h.offset,"symbol-placement":c.placement}),g.extendFlat(s,{"icon-color":i.color,"text-color":c.textfont.color,"text-opacity":i.opacity});break;case"raster":g.extendFlat(s,{"raster-fade-duration":0,"raster-opacity":i.opacity});break}return{layout:n,paint:s}}function a(i){var n=i.sourcetype,s=i.source,c={type:n},h;return n==="geojson"?h="data":n==="vector"?h=typeof s=="string"?"url":"tiles":n==="raster"?(h="tiles",c.tileSize=256):n==="image"&&(h="url",c.coordinates=i.coordinates),c[h]=s,i.sourceattribution&&(c.attribution=x(i.sourceattribution)),c}H.exports=function(n,s,c){var h=new e(n,s);return h.update(c),h}}}),Aq=Ye({"src/plots/map/map.js"(X,H){"use strict";var g=wq(),x=ta(),A=vg(),M=Hn(),e=Co(),t=bp(),r=Lc(),o=Jd(),a=o.drawMode,i=o.selectMode,n=ff().prepSelect,s=ff().clearOutline,c=ff().clearSelectionsCache,h=ff().selectOnClick,v=_g(),p=Tq();function T(m,b){this.id=b,this.gd=m;var d=m._fullLayout,u=m._context;this.container=d._glcontainer.node(),this.isStatic=u.staticPlot,this.uid=d._uid+"-"+this.id,this.div=null,this.xaxis=null,this.yaxis=null,this.createFramework(d),this.map=null,this.styleObj=null,this.traceHash={},this.layerList=[],this.belowLookup={},this.dragging=!1,this.wheeling=!1}var l=T.prototype;l.plot=function(m,b,d){var u=this,y;u.map?y=new Promise(function(f,P){u.updateMap(m,b,f,P)}):y=new Promise(function(f,P){u.createMap(m,b,f,P)}),d.push(y)},l.createMap=function(m,b,d,u){var y=this,f=b[y.id],P=y.styleObj=w(f.style),L=f.bounds,z=L?[[L.west,L.south],[L.east,L.north]]:null,F=y.map=new g.Map({container:y.div,style:P.style,center:E(f.center),zoom:f.zoom,bearing:f.bearing,pitch:f.pitch,maxBounds:z,interactive:!y.isStatic,preserveDrawingBuffer:y.isStatic,doubleClickZoom:!1,boxZoom:!1,attributionControl:!1}).addControl(new g.AttributionControl({compact:!0})),B={};F.on("styleimagemissing",function(I){var N=I.id;if(!B[N]&&N.includes("-15")){B[N]=!0;var U=new Image(15,15);U.onload=function(){F.addImage(N,U)},U.crossOrigin="Anonymous",U.src="https://unpkg.com/maki@2.1.0/icons/"+N+".svg"}}),F.setTransformRequest(function(I){return I=I.replace("https://fonts.openmaptiles.org/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://tiles.basemaps.cartocdn.com/fonts/Open Sans Extrabold","https://fonts.openmaptiles.org/Open Sans Extra Bold"),I=I.replace("https://fonts.openmaptiles.org/Open Sans Regular,Arial Unicode MS Regular","https://fonts.openmaptiles.org/Klokantech Noto Sans Regular"),{url:I}}),F._canvas.style.left="0px",F._canvas.style.top="0px",y.rejectOnError(u),y.isStatic||y.initFx(m,b);var O=[];O.push(new Promise(function(I){F.once("load",I)})),O=O.concat(A.fetchTraceGeoData(m)),Promise.all(O).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.updateMap=function(m,b,d,u){var y=this,f=y.map,P=b[this.id];y.rejectOnError(u);var L=[],z=w(P.style);JSON.stringify(y.styleObj)!==JSON.stringify(z)&&(y.styleObj=z,f.setStyle(z.style),y.traceHash={},L.push(new Promise(function(F){f.once("styledata",F)}))),L=L.concat(A.fetchTraceGeoData(m)),Promise.all(L).then(function(){y.fillBelowLookup(m,b),y.updateData(m),y.updateLayout(b),y.resolveOnRender(d)}).catch(u)},l.fillBelowLookup=function(m,b){var d=b[this.id],u=d.layers,y,f,P=this.belowLookup={},L=!1;for(y=0;y<m.length;y++){var z=m[y][0].trace,F=z._module;typeof z.below=="string"?f=z.below:F.getBelow&&(f=F.getBelow(z,this)),f===""&&(L=!0),P["trace-"+z.uid]=f||""}for(y=0;y<u.length;y++){var B=u[y];typeof B.below=="string"?f=B.below:L?f="traces":f="",P["layout-"+y]=f}var O={},I,N;for(I in P)f=P[I],O[f]?O[f].push(I):O[f]=[I];for(f in O){var U=O[f];if(U.length>1)for(y=0;y<U.length;y++)I=U[y],I.indexOf("trace-")===0?(N=I.split("trace-")[1],this.traceHash[N]&&(this.traceHash[N].below=null)):I.indexOf("layout-")===0&&(N=I.split("layout-")[1],this.layerList[N]&&(this.layerList[N].below=null))}};var _={choroplethmap:0,densitymap:1,scattermap:2};l.updateData=function(m){var b=this.traceHash,d,u,y,f,P=m.slice().sort(function(O,I){return _[O[0].trace.type]-_[I[0].trace.type]});for(y=0;y<P.length;y++){var L=P[y];u=L[0].trace,d=b[u.uid];var z=!1;d&&(d.type===u.type?(d.update(L),z=!0):d.dispose()),!z&&u._module&&(b[u.uid]=u._module.plot(this,L))}var F=Object.keys(b);e:for(y=0;y<F.length;y++){var B=F[y];for(f=0;f<m.length;f++)if(u=m[f][0].trace,B===u.uid)continue e;d=b[B],d.dispose(),delete b[B]}},l.updateLayout=function(m){var b=this.map,d=m[this.id];!this.dragging&&!this.wheeling&&(b.setCenter(E(d.center)),b.setZoom(d.zoom),b.setBearing(d.bearing),b.setPitch(d.pitch)),this.updateLayers(m),this.updateFramework(m),this.updateFx(m),this.map.resize(),this.gd._context._scrollZoom.map?b.scrollZoom.enable():b.scrollZoom.disable()},l.resolveOnRender=function(m){var b=this.map;b.on("render",function d(){b.loaded()&&(b.off("render",d),setTimeout(m,10))})},l.rejectOnError=function(m){var b=this.map;function d(){m(new Error(v.mapOnErrorMsg))}b.once("error",d),b.once("style.error",d),b.once("source.error",d),b.once("tile.error",d),b.once("layer.error",d)},l.createFramework=function(m){var b=this,d=b.div=document.createElement("div");d.id=b.uid,d.style.position="absolute",b.container.appendChild(d),b.xaxis={_id:"x",c2p:function(u){return b.project(u).x}},b.yaxis={_id:"y",c2p:function(u){return b.project(u).y}},b.updateFramework(m),b.mockAxis={type:"linear",showexponent:"all",exponentformat:"B"},e.setConvert(b.mockAxis,m)},l.initFx=function(m,b){var d=this,u=d.gd,y=d.map;y.on("moveend",function(L){if(d.map){var z=u._fullLayout;if(L.originalEvent||d.wheeling){var F=z[d.id];M.call("_storeDirectGUIEdit",u.layout,z._preGUI,d.getViewEdits(F));var B=d.getView();F._input.center=F.center=B.center,F._input.zoom=F.zoom=B.zoom,F._input.bearing=F.bearing=B.bearing,F._input.pitch=F.pitch=B.pitch,u.emit("plotly_relayout",d.getViewEditsWithDerived(B))}L.originalEvent&&L.originalEvent.type==="mouseup"?d.dragging=!1:d.wheeling&&(d.wheeling=!1),z&&z._rehover&&z._rehover()}}),y.on("wheel",function(){d.wheeling=!0}),y.on("mousemove",function(L){var z=d.div.getBoundingClientRect(),F=[L.originalEvent.offsetX,L.originalEvent.offsetY];L.target.getBoundingClientRect=function(){return z},d.xaxis.p2c=function(){return y.unproject(F).lng},d.yaxis.p2c=function(){return y.unproject(F).lat},u._fullLayout._rehover=function(){u._fullLayout._hoversubplot===d.id&&u._fullLayout[d.id]&&r.hover(u,L,d.id)},r.hover(u,L,d.id),u._fullLayout._hoversubplot=d.id});function f(){r.loneUnhover(b._hoverlayer)}y.on("dragstart",function(){d.dragging=!0,f()}),y.on("zoomstart",f),y.on("mouseout",function(){u._fullLayout._hoversubplot=null});function P(){var L=d.getView();u.emit("plotly_relayouting",d.getViewEditsWithDerived(L))}y.on("drag",P),y.on("zoom",P),y.on("dblclick",function(){var L=u._fullLayout[d.id];M.call("_storeDirectGUIEdit",u.layout,u._fullLayout._preGUI,d.getViewEdits(L));var z=d.viewInitial;y.setCenter(E(z.center)),y.setZoom(z.zoom),y.setBearing(z.bearing),y.setPitch(z.pitch);var F=d.getView();L._input.center=L.center=F.center,L._input.zoom=L.zoom=F.zoom,L._input.bearing=L.bearing=F.bearing,L._input.pitch=L.pitch=F.pitch,u.emit("plotly_doubleclick",null),u.emit("plotly_relayout",d.getViewEditsWithDerived(F))}),d.clearOutline=function(){c(d.dragOptions),s(d.dragOptions.gd)},d.onClickInPanFn=function(L){return function(z){var F=u._fullLayout.clickmode;F.indexOf("select")>-1&&h(z.originalEvent,u,[d.xaxis],[d.yaxis],d.id,L),F.indexOf("event")>-1&&r.click(u,z.originalEvent)}}},l.updateFx=function(m){var b=this,d=b.map,u=b.gd;if(b.isStatic)return;function y(z){var F=b.map.unproject(z);return[F.lng,F.lat]}var f=m.dragmode,P;P=function(z,F){if(F.isRect){var B=z.range={};B[b.id]=[y([F.xmin,F.ymin]),y([F.xmax,F.ymax])]}else{var O=z.lassoPoints={};O[b.id]=F.map(y)}};var L=b.dragOptions;b.dragOptions=x.extendDeep(L||{},{dragmode:m.dragmode,element:b.div,gd:u,plotinfo:{id:b.id,domain:m[b.id].domain,xaxis:b.xaxis,yaxis:b.yaxis,fillRangeItems:P},xaxes:[b.xaxis],yaxes:[b.yaxis],subplot:b.id}),d.off("click",b.onClickInPanHandler),i(f)||a(f)?(d.dragPan.disable(),d.on("zoomstart",b.clearOutline),b.dragOptions.prepFn=function(z,F,B){n(z,F,B,b.dragOptions,f)},t.init(b.dragOptions)):(d.dragPan.enable(),d.off("zoomstart",b.clearOutline),b.div.onmousedown=null,b.div.ontouchstart=null,b.div.removeEventListener("touchstart",b.div._ontouchstart),b.onClickInPanHandler=b.onClickInPanFn(b.dragOptions),d.on("click",b.onClickInPanHandler))},l.updateFramework=function(m){var b=m[this.id].domain,d=m._size,u=this.div.style;u.width=d.w*(b.x[1]-b.x[0])+"px",u.height=d.h*(b.y[1]-b.y[0])+"px",u.left=d.l+b.x[0]*d.w+"px",u.top=d.t+(1-b.y[1])*d.h+"px",this.xaxis._offset=d.l+b.x[0]*d.w,this.xaxis._length=d.w*(b.x[1]-b.x[0]),this.yaxis._offset=d.t+(1-b.y[1])*d.h,this.yaxis._length=d.h*(b.y[1]-b.y[0])},l.updateLayers=function(m){var b=m[this.id],d=b.layers,u=this.layerList,y;if(d.length!==u.length){for(y=0;y<u.length;y++)u[y].dispose();for(u=this.layerList=[],y=0;y<d.length;y++)u.push(p(this,y,d[y]))}else for(y=0;y<d.length;y++)u[y].update(d[y])},l.destroy=function(){this.map&&(this.map.remove(),this.map=null,this.container.removeChild(this.div))},l.toImage=function(){return this.map.stop(),this.map.getCanvas().toDataURL()},l.setOptions=function(m,b,d){for(var u in d)this.map[b](m,u,d[u])},l.getMapLayers=function(){return this.map.getStyle().layers},l.addLayer=function(m,b){var d=this.map;if(typeof b=="string"){if(b===""){d.addLayer(m,b);return}for(var u=this.getMapLayers(),y=0;y<u.length;y++)if(b===u[y].id){d.addLayer(m,b);return}x.warn(["Trying to add layer with *below* value",b,"referencing a layer that does not exist","or that does not yet exist."].join(" "))}d.addLayer(m)},l.project=function(m){return this.map.project(new g.LngLat(m[0],m[1]))},l.getView=function(){var m=this.map,b=m.getCenter(),d=b.lng,u=b.lat,y={lon:d,lat:u},f=m.getCanvas(),P=parseInt(f.style.width),L=parseInt(f.style.height);return{center:y,zoom:m.getZoom(),bearing:m.getBearing(),pitch:m.getPitch(),_derived:{coordinates:[m.unproject([0,0]).toArray(),m.unproject([P,0]).toArray(),m.unproject([P,L]).toArray(),m.unproject([0,L]).toArray()]}}},l.getViewEdits=function(m){for(var b=this.id,d=["center","zoom","bearing","pitch"],u={},y=0;y<d.length;y++){var f=d[y];u[b+"."+f]=m[f]}return u},l.getViewEditsWithDerived=function(m){var b=this.id,d=this.getViewEdits(m);return d[b+"._derived"]=m._derived,d};function w(m){var b={};return x.isPlainObject(m)?(b.id=m.id,b.style=m):typeof m=="string"?(b.id=m,v.stylesMap[m]?b.style=v.stylesMap[m]:b.style=m):(b.id=v.styleValueDflt,b.style=S(v.styleValueDflt)),b.transition={duration:0,delay:0},b}function S(m){return v.styleUrlPrefix+m+"-"+v.styleUrlSuffix}function E(m){return[m.lon,m.lat]}H.exports=T}}),Sq=Ye({"src/plots/map/layout_defaults.js"(X,H){"use strict";var g=ta(),x=ig(),A=up(),M=Mx();H.exports=function(o,a,i){x(o,a,i,{type:"map",attributes:M,handleDefaults:e,partition:"y"})};function e(r,o,a){a("style"),a("center.lon"),a("center.lat"),a("zoom"),a("bearing"),a("pitch");var i=a("bounds.west"),n=a("bounds.east"),s=a("bounds.south"),c=a("bounds.north");(i===void 0||n===void 0||s===void 0||c===void 0)&&delete o.bounds,A(r,o,{name:"layers",handleItemDefaults:t}),o._input=r}function t(r,o){function a(v,p){return g.coerce(r,o,M.layers,v,p)}var i=a("visible");if(i){var n=a("sourcetype"),s=n==="raster"||n==="image";a("source"),a("sourceattribution"),n==="vector"&&a("sourcelayer"),n==="image"&&a("coordinates");var c;s&&(c="raster");var h=a("type",c);s&&h!=="raster"&&(h=o.type="raster",g.log("Source types *raster* and *image* must drawn *raster* layer type.")),a("below"),a("color"),a("opacity"),a("minzoom"),a("maxzoom"),h==="circle"&&a("circle.radius"),h==="line"&&(a("line.width"),a("line.dash")),h==="fill"&&a("fill.outlinecolor"),h==="symbol"&&(a("symbol.icon"),a("symbol.iconsize"),a("symbol.text"),g.coerceFont(a,"symbol.textfont",void 0,{noFontVariant:!0,noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0}),a("symbol.textposition"),a("symbol.placement"))}}}}),kT=Ye({"src/plots/map/index.js"(X){"use strict";var H=ta(),g=H.strTranslate,x=H.strScale,A=jh().getSubplotCalcData,M=vd(),e=_n(),t=Bo(),r=jl(),o=Aq(),a="map";X.name=a,X.attr="subplot",X.idRoot=a,X.idRegex=X.attrRegex=H.counterRegex(a),X.attributes={subplot:{valType:"subplotid",dflt:"map",editType:"calc"}},X.layoutAttributes=Mx(),X.supplyLayoutDefaults=Sq(),X.plot=function(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[a],v=0;v<h.length;v++){var p=h[v],T=A(c,a,p),l=s[p],_=l._subplot;_||(_=new o(n,p),s[p]._subplot=_),_.viewInitial||(_.viewInitial={center:H.extendFlat({},l.center),zoom:l.zoom,bearing:l.bearing,pitch:l.pitch}),_.plot(T,s,n._promises)}},X.clean=function(i,n,s,c){for(var h=c._subplots[a]||[],v=0;v<h.length;v++){var p=h[v];!n[p]&&c[p]._subplot&&c[p]._subplot.destroy()}},X.toSVG=function(i){for(var n=i._fullLayout,s=n._subplots[a],c=n._size,h=0;h<s.length;h++){var v=n[s[h]],p=v.domain,T=v._subplot,l=T.toImage("png"),_=n._glimages.append("svg:image");_.attr({xmlns:M.svg,"xlink:href":l,x:c.l+c.w*p.x[0],y:c.t+c.h*(1-p.y[1]),width:c.w*(p.x[1]-p.x[0]),height:c.h*(p.y[1]-p.y[0]),preserveAspectRatio:"none"});var w=e.select(v._subplot.div),S=w.select(".maplibregl-ctrl-attrib").text().replace("Improve this map",""),E=n._glimages.append("g"),m=E.append("text");m.text(S).classed("static-attribution",!0).attr({"font-size":12,"font-family":"Arial",color:"rgba(0, 0, 0, 0.75)","text-anchor":"end","data-unformatted":S});var b=t.bBox(m.node()),d=c.w*(p.x[1]-p.x[0]);if(b.width>d/2){var u=S.split("|").join("<br>");m.text(u).attr("data-unformatted",u).call(r.convertToTspans,i),b=t.bBox(m.node())}m.attr("transform",g(-3,-b.height+8)),E.insert("rect",".static-attribution").attr({x:-b.width-6,y:-b.height-3,width:b.width+6,height:b.height+3,fill:"rgba(255, 255, 255, 0.75)"});var y=1;b.width+6>d&&(y=d/(b.width+6));var f=[c.l+c.w*p.x[1],c.t+c.h*(1-p.y[0])];E.attr("transform",g(f[0],f[1])+x(y))}},X.updateFx=function(i){for(var n=i._fullLayout,s=n._subplots[a],c=0;c<s.length;c++){var h=n[s[c]]._subplot;h.updateFx(n)}}}}),Mq=Ye({"src/traces/scattermap/index.js"(X,H){"use strict";H.exports={attributes:MT(),supplyDefaults:gq(),colorbar:cp(),formatLabels:kk(),calc:aT(),plot:_q(),hoverPoints:ET().hoverPoints,eventData:xq(),selectPoints:bq(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.update(x)}},moduleType:"trace",name:"scattermap",basePlotModule:kT(),categories:["map","gl","symbols","showLegend","scatter-like"],meta:{}}}}),Eq=Ye({"lib/scattermap.js"(X,H){"use strict";H.exports=Mq()}}),Lk=Ye({"src/traces/choroplethmap/attributes.js"(X,H){"use strict";var g=M1(),x=tu(),A=xs().hovertemplateAttrs,M=Pl(),e=Oo().extendFlat;H.exports=e({locations:{valType:"data_array",editType:"calc"},z:{valType:"data_array",editType:"calc"},geojson:{valType:"any",editType:"calc"},featureidkey:e({},g.featureidkey,{}),below:{valType:"string",editType:"plot"},text:g.text,hovertext:g.hovertext,marker:{line:{color:e({},g.marker.line.color,{editType:"plot"}),width:e({},g.marker.line.width,{editType:"plot"}),editType:"calc"},opacity:e({},g.marker.opacity,{editType:"plot"}),editType:"calc"},selected:{marker:{opacity:e({},g.selected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},unselected:{marker:{opacity:e({},g.unselected.marker.opacity,{editType:"plot"}),editType:"plot"},editType:"plot"},hoverinfo:g.hoverinfo,hovertemplate:A({},{keys:["properties"]}),showlegend:e({},M.showlegend,{dflt:!1})},x("",{cLetter:"z",editTypeOverride:"calc"}))}}),kq=Ye({"src/traces/choroplethmap/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Lk();H.exports=function(e,t,r,o){function a(h,v){return g.coerce(e,t,A,h,v)}var i=a("locations"),n=a("z"),s=a("geojson");if(!g.isArrayOrTypedArray(i)||!i.length||!g.isArrayOrTypedArray(n)||!n.length||!(typeof s=="string"&&s!==""||g.isPlainObject(s))){t.visible=!1;return}a("featureidkey"),t._length=Math.min(i.length,n.length),a("below"),a("text"),a("hovertext"),a("hovertemplate");var c=a("marker.line.width");c&&a("marker.line.color"),a("marker.opacity"),x(e,t,o,a,{prefix:"",cLetter:"z"}),g.coerceSelectionMarkerOpacity(t,a)}}}),Pk=Ye({"src/traces/choroplethmap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Su(),M=Bo(),e=dg().makeBlank,t=vg();function r(a){var i=a[0].trace,n=i.visible===!0&&i._length!==0,s={layout:{visibility:"none"},paint:{}},c={layout:{visibility:"none"},paint:{}},h=i._opts={fill:s,line:c,geojson:e()};if(!n)return h;var v=t.extractTraceFeature(a);if(!v)return h;var p=A.makeColorScaleFuncFromTrace(i),T=i.marker,l=T.line||{},_;x.isArrayOrTypedArray(T.opacity)&&(_=function(y){var f=y.mo;return g(f)?+x.constrain(f,0,1):0});var w;x.isArrayOrTypedArray(l.color)&&(w=function(y){return y.mlc});var S;x.isArrayOrTypedArray(l.width)&&(S=function(y){return y.mlw});for(var E=0;E<a.length;E++){var m=a[E],b=m.fOut;if(b){var d=b.properties;d.fc=p(m.z),_&&(d.mo=_(m)),w&&(d.mlc=w(m)),S&&(d.mlw=S(m)),m.ct=d.ct,m._polygons=t.feature2polygons(b)}}var u=_?{type:"identity",property:"mo"}:T.opacity;return x.extendFlat(s.paint,{"fill-color":{type:"identity",property:"fc"},"fill-opacity":u}),x.extendFlat(c.paint,{"line-color":w?{type:"identity",property:"mlc"}:l.color,"line-width":S?{type:"identity",property:"mlw"}:l.width,"line-opacity":u}),s.layout.visibility="visible",c.layout.visibility="visible",h.geojson={type:"FeatureCollection",features:v},o(a),h}function o(a){var i=a[0].trace,n=i._opts,s;if(i.selectedpoints){for(var c=M.makeSelectedPointStyleFns(i),h=0;h<a.length;h++){var v=a[h];v.fOut&&(v.fOut.properties.mo2=c.selectedOpacityFn(v))}s={type:"identity",property:"mo2"}}else s=x.isArrayOrTypedArray(i.marker.opacity)?{type:"identity",property:"mo"}:i.marker.opacity;return x.extendFlat(n.fill.paint,{"fill-opacity":s}),x.extendFlat(n.line.paint,{"line-opacity":s}),n}H.exports={convert:r,convertOnSelect:o}}}),Cq=Ye({"src/traces/choroplethmap/plot.js"(X,H){"use strict";var g=Pk().convert,x=Pk().convertOnSelect,A=_g().traceLayerPrefix;function M(t,r){this.type="choroplethmap",this.subplot=t,this.uid=r,this.sourceId="source-"+r,this.layerList=[["fill",A+r+"-fill"],["line",A+r+"-line"]],this.below=null}var e=M.prototype;e.update=function(t){this._update(g(t)),t[0].trace._glTrace=this},e.updateOnSelect=function(t){this._update(x(t))},e._update=function(t){var r=this.subplot,o=this.layerList,a=r.belowLookup["trace-"+this.uid];r.map.getSource(this.sourceId).setData(t.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(t,a),this.below=a);for(var i=0;i<o.length;i++){var n=o[i],s=n[0],c=n[1],h=t[s];r.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&r.setOptions(c,"setPaintProperty",h.paint)}},e._addLayers=function(t,r){for(var o=this.subplot,a=this.layerList,i=this.sourceId,n=0;n<a.length;n++){var s=a[n],c=s[0],h=t[c];o.addLayer({type:c,id:s[1],source:i,layout:h.layout,paint:h.paint},r)}},e._removeLayers=function(){for(var t=this.subplot.map,r=this.layerList,o=r.length-1;o>=0;o--)t.removeLayer(r[o][1])},e.dispose=function(){var t=this.subplot.map;this._removeLayers(),t.removeSource(this.sourceId)},H.exports=function(r,o){var a=o[0].trace,i=new M(r,a.uid),n=i.sourceId,s=g(o),c=i.below=r.belowLookup["trace-"+a.uid];return r.map.addSource(n,{type:"geojson",data:s.geojson}),i._addLayers(s,c),o[0].trace._glTrace=i,i}}}),Lq=Ye({"src/traces/choroplethmap/index.js"(X,H){"use strict";H.exports={attributes:Lk(),supplyDefaults:kq(),colorbar:ag(),calc:sT(),plot:Cq(),hoverPoints:uT(),eventData:cT(),selectPoints:fT(),styleOnSelect:function(g,x){if(x){var A=x[0].trace;A._glTrace.updateOnSelect(x)}},getBelow:function(g,x){for(var A=x.getMapLayers(),M=A.length-2;M>=0;M--){var e=A[M].id;if(typeof e=="string"&&e.indexOf("water")===0){for(var t=M+1;t<A.length;t++)if(e=A[t].id,typeof e=="string"&&e.indexOf("plotly-")===-1)return e}}},moduleType:"trace",name:"choroplethmap",basePlotModule:kT(),categories:["map","gl","noOpacity","showLegend"],meta:{hr_name:"choropleth_map"}}}}),Pq=Ye({"lib/choroplethmap.js"(X,H){"use strict";H.exports=Lq()}}),Ik=Ye({"src/traces/densitymap/attributes.js"(X,H){"use strict";var g=tu(),x=xs().hovertemplateAttrs,A=Pl(),M=MT(),e=Oo().extendFlat;H.exports=e({lon:M.lon,lat:M.lat,z:{valType:"data_array",editType:"calc"},radius:{valType:"number",editType:"plot",arrayOk:!0,min:1,dflt:30},below:{valType:"string",editType:"plot"},text:M.text,hovertext:M.hovertext,hoverinfo:e({},A.hoverinfo,{flags:["lon","lat","z","text","name"]}),hovertemplate:x(),showlegend:e({},A.showlegend,{dflt:!1})},g("",{cLetter:"z",editTypeOverride:"calc"}))}}),Iq=Ye({"src/traces/densitymap/defaults.js"(X,H){"use strict";var g=ta(),x=sh(),A=Ik();H.exports=function(e,t,r,o){function a(c,h){return g.coerce(e,t,A,c,h)}var i=a("lon")||[],n=a("lat")||[],s=Math.min(i.length,n.length);if(!s){t.visible=!1;return}t._length=s,a("z"),a("radius"),a("below"),a("text"),a("hovertext"),a("hovertemplate"),x(e,t,o,a,{prefix:"",cLetter:"z"})}}}),Rq=Ye({"src/traces/densitymap/calc.js"(X,H){"use strict";var g=jo(),x=ta().isArrayOrTypedArray,A=ks().BADNUM,M=jp(),e=ta()._;H.exports=function(r,o){for(var a=o._length,i=new Array(a),n=o.z,s=x(n)&&n.length,c=0;c<a;c++){var h=i[c]={},v=o.lon[c],p=o.lat[c];if(h.lonlat=g(v)&&g(p)?[+v,+p]:[A,A],s){var T=n[c];h.z=g(T)?T:A}}return M(r,o,{vals:s?n:[0,1],containerStr:"",cLetter:"z"}),a&&(i[0].t={labels:{lat:e(r,"lat:")+" ",lon:e(r,"lon:")+" "}}),i}}}),Dq=Ye({"src/traces/densitymap/convert.js"(X,H){"use strict";var g=jo(),x=ta(),A=Fn(),M=Su(),e=ks().BADNUM,t=dg().makeBlank;H.exports=function(o){var a=o[0].trace,i=a.visible===!0&&a._length!==0,n={layout:{visibility:"none"},paint:{}},s=a._opts={heatmap:n,geojson:t()};if(!i)return s;var c=[],h,v=a.z,p=a.radius,T=x.isArrayOrTypedArray(v)&&v.length,l=x.isArrayOrTypedArray(p);for(h=0;h<o.length;h++){var _=o[h],w=_.lonlat;if(w[0]!==e){var S={};if(T){var E=_.z;S.z=E!==e?E:0}l&&(S.r=g(p[h])&&p[h]>0?+p[h]:0),c.push({type:"Feature",geometry:{type:"Point",coordinates:w},properties:S})}}var m=M.extractOpts(a),b=m.reversescale?M.flipScale(m.colorscale):m.colorscale,d=b[0][1],u=A.opacity(d)<1?d:A.addOpacity(d,0),y=["interpolate",["linear"],["heatmap-density"],0,u];for(h=1;h<b.length;h++)y.push(b[h][0],b[h][1]);var f=["interpolate",["linear"],["get","z"],m.min,0,m.max,1];return x.extendFlat(s.heatmap.paint,{"heatmap-weight":T?f:1/(m.max-m.min),"heatmap-color":y,"heatmap-radius":l?{type:"identity",property:"r"}:a.radius,"heatmap-opacity":a.opacity}),s.geojson={type:"FeatureCollection",features:c},s.heatmap.layout.visibility="visible",s}}}),zq=Ye({"src/traces/densitymap/plot.js"(X,H){"use strict";var g=Dq(),x=_g().traceLayerPrefix;function A(e,t){this.type="densitymap",this.subplot=e,this.uid=t,this.sourceId="source-"+t,this.layerList=[["heatmap",x+t+"-heatmap"]],this.below=null}var M=A.prototype;M.update=function(e){var t=this.subplot,r=this.layerList,o=g(e),a=t.belowLookup["trace-"+this.uid];t.map.getSource(this.sourceId).setData(o.geojson),a!==this.below&&(this._removeLayers(),this._addLayers(o,a),this.below=a);for(var i=0;i<r.length;i++){var n=r[i],s=n[0],c=n[1],h=o[s];t.setOptions(c,"setLayoutProperty",h.layout),h.layout.visibility==="visible"&&t.setOptions(c,"setPaintProperty",h.paint)}},M._addLayers=function(e,t){for(var r=this.subplot,o=this.layerList,a=this.sourceId,i=0;i<o.length;i++){var n=o[i],s=n[0],c=e[s];r.addLayer({type:s,id:n[1],source:a,layout:c.layout,paint:c.paint},t)}},M._removeLayers=function(){for(var e=this.subplot.map,t=this.layerList,r=t.length-1;r>=0;r--)e.removeLayer(t[r][1])},M.dispose=function(){var e=this.subplot.map;this._removeLayers(),e.removeSource(this.sourceId)},H.exports=function(t,r){var o=r[0].trace,a=new A(t,o.uid),i=a.sourceId,n=g(r),s=a.below=t.belowLookup["trace-"+o.uid];return t.map.addSource(i,{type:"geojson",data:n.geojson}),a._addLayers(n,s),a}}}),Fq=Ye({"src/traces/densitymap/hover.js"(X,H){"use strict";var g=Co(),x=ET().hoverPoints,A=ET().getExtraText;H.exports=function(e,t,r){var o=x(e,t,r);if(o){var a=o[0],i=a.cd,n=i[0].trace,s=i[a.index];if(delete a.color,"z"in s){var c=a.subplot.mockAxis;a.z=s.z,a.zLabel=g.tickText(c,c.c2l(s.z),"hover").text}return a.extraText=A(n,s,i[0].t.labels),[a]}}}}),Oq=Ye({"src/traces/densitymap/event_data.js"(X,H){"use strict";H.exports=function(x,A){return x.lon=A.lon,x.lat=A.lat,x.z=A.z,x}}}),Bq=Ye({"src/traces/densitymap/index.js"(X,H){"use strict";H.exports={attributes:Ik(),supplyDefaults:Iq(),colorbar:ag(),formatLabels:kk(),calc:Rq(),plot:zq(),hoverPoints:Fq(),eventData:Oq(),getBelow:function(g,x){for(var A=x.getMapLayers(),M=0;M<A.length;M++){var e=A[M],t=e.id;if(e.type==="symbol"&&typeof t=="string"&&t.indexOf("plotly-")===-1)return t}},moduleType:"trace",name:"densitymap",basePlotModule:kT(),categories:["map","gl","showLegend"],meta:{hr_name:"density_map"}}}}),Nq=Ye({"lib/densitymap.js"(X,H){"use strict";H.exports=Bq()}}),Rk=Ye({"src/traces/sankey/attributes.js"(X,H){"use strict";var g=Au(),x=Pl(),A=Gf(),M=Yy(),e=Wu().attributes,t=xs().hovertemplateAttrs,r=tu(),o=cl().templatedArray,a=Cc().descriptionOnlyNumbers,i=Oo().extendFlat,n=Ou().overrideAll,s=H.exports=n({hoverinfo:i({},x.hoverinfo,{flags:[],arrayOk:!1}),hoverlabel:M.hoverlabel,domain:e({name:"sankey",trace:!0}),orientation:{valType:"enumerated",values:["v","h"],dflt:"h"},valueformat:{valType:"string",dflt:".3s",description:a("value")},valuesuffix:{valType:"string",dflt:""},arrangement:{valType:"enumerated",values:["snap","perpendicular","freeform","fixed"],dflt:"snap"},textfont:g({autoShadowDflt:!0}),customdata:void 0,node:{label:{valType:"data_array",dflt:[]},groups:{valType:"info_array",impliedEdits:{x:[],y:[]},dimensions:2,freeLength:!0,dflt:[],items:{valType:"number",editType:"calc"}},x:{valType:"data_array",dflt:[]},y:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:A.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:M.hoverlabel,hovertemplate:t({},{keys:["value","label"]}),align:{valType:"enumerated",values:["justify","left","right","center"],dflt:"justify"}},link:{arrowlen:{valType:"number",min:0,dflt:0},label:{valType:"data_array",dflt:[]},color:{valType:"color",arrayOk:!0},hovercolor:{valType:"color",arrayOk:!0},customdata:{valType:"data_array",editType:"calc"},line:{color:{valType:"color",dflt:A.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:M.hoverlabel,hovertemplate:t({},{keys:["value","label"]}),colorscales:o("concentrationscales",{editType:"calc",label:{valType:"string",editType:"calc",dflt:""},cmax:{valType:"number",editType:"calc",dflt:1},cmin:{valType:"number",editType:"calc",dflt:0},colorscale:i(r().colorscale,{dflt:[[0,"white"],[1,"black"]]})})}},"calc","nested")}}),Uq=Ye({"src/traces/sankey/defaults.js"(X,H){"use strict";var g=ta(),x=Rk(),A=Fn(),M=bh(),e=Wu().defaults,t=S_(),r=cl(),o=up();H.exports=function(n,s,c,h){function v(L,z){return g.coerce(n,s,x,L,z)}var p=g.extendDeep(h.hoverlabel,n.hoverlabel),T=n.node,l=r.newContainer(s,"node");function _(L,z){return g.coerce(T,l,x.node,L,z)}_("label"),_("groups"),_("x"),_("y"),_("pad"),_("thickness"),_("line.color"),_("line.width"),_("hoverinfo",n.hoverinfo),t(T,l,_,p),_("hovertemplate"),_("align");var w=h.colorway,S=function(L){return w[L%w.length]};_("color",l.label.map(function(L,z){return A.addOpacity(S(z),.8)})),_("customdata");var E=n.link||{},m=r.newContainer(s,"link");function b(L,z){return g.coerce(E,m,x.link,L,z)}b("label"),b("arrowlen"),b("source"),b("target"),b("value"),b("line.color"),b("line.width"),b("hoverinfo",n.hoverinfo),t(E,m,b,p),b("hovertemplate");var d=M(h.paper_bgcolor).getLuminance()<.333,u=d?"rgba(255, 255, 255, 0.6)":"rgba(0, 0, 0, 0.2)",y=b("color",u);function f(L){var z=M(L);if(!z.isValid())return L;var F=z.getAlpha();return F<=.8?z.setAlpha(F+.2):z=d?z.brighten():z.darken(),z.toRgbString()}b("hovercolor",Array.isArray(y)?y.map(f):f(y)),b("customdata"),o(E,m,{name:"colorscales",handleItemDefaults:a}),e(s,h,v),v("orientation"),v("valueformat"),v("valuesuffix");var P;l.x.length&&l.y.length&&(P="freeform"),v("arrangement",P),g.coerceFont(v,"textfont",h.font,{autoShadowDflt:!0}),s._length=null};function a(i,n){function s(c,h){return g.coerce(i,n,x.link.colorscales,c,h)}s("label"),s("cmin"),s("cmax"),s("colorscale")}}}),Dk=Ye({"node_modules/strongly-connected-components/scc.js"(X,H){"use strict";H.exports=g;function g(x){for(var A=x.length,M=new Array(A),e=new Array(A),t=new Array(A),r=new Array(A),o=new Array(A),a=new Array(A),i=0;i<A;++i)M[i]=-1,e[i]=0,t[i]=!1,r[i]=0,o[i]=-1,a[i]=[];var n=0,s=[],c=[];function h(l){var _=[l],w=[l];for(M[l]=e[l]=n,t[l]=!0,n+=1;w.length>0;){l=w[w.length-1];var S=x[l];if(r[l]<S.length){for(var E=r[l];E<S.length;++E){var m=S[E];if(M[m]<0){M[m]=e[m]=n,t[m]=!0,n+=1,_.push(m),w.push(m);break}else t[m]&&(e[l]=Math.min(e[l],e[m])|0);o[m]>=0&&a[l].push(o[m])}r[l]=E}else{if(e[l]===M[l]){for(var b=[],d=[],u=0,E=_.length-1;E>=0;--E){var y=_[E];if(t[y]=!1,b.push(y),d.push(a[y]),u+=a[y].length,o[y]=s.length,y===l){_.length=E;break}}s.push(b);for(var f=new Array(u),E=0;E<d.length;E++)for(var P=0;P<d[E].length;P++)f[--u]=d[E][P];c.push(f)}w.pop()}}}for(var i=0;i<A;++i)M[i]<0&&h(i);for(var v,i=0;i<c.length;i++){var p=c[i];if(p.length!==0){p.sort(function(_,w){return _-w}),v=[p[0]];for(var T=1;T<p.length;T++)p[T]!==p[T-1]&&v.push(p[T]);c[i]=v}}return{components:s,adjacencyList:c}}}}),jq=Ye({"src/traces/sankey/calc.js"(X,H){"use strict";var g=Dk(),x=ta(),A=kv().wrap,M=x.isArrayOrTypedArray,e=x.isIndex,t=Su();function r(a){var i=a.node,n=a.link,s=[],c=M(n.color),h=M(n.hovercolor),v=M(n.customdata),p={},T={},l=n.colorscales.length,_;for(_=0;_<l;_++){var w=n.colorscales[_],S=t.extractScale(w,{cLetter:"c"}),E=t.makeColorScaleFunc(S);T[w.label]=E}var m=0;for(_=0;_<n.value.length;_++)n.source[_]>m&&(m=n.source[_]),n.target[_]>m&&(m=n.target[_]);var b=m+1;a.node._count=b;var d,u=a.node.groups,y={};for(_=0;_<u.length;_++){var f=u[_];for(d=0;d<f.length;d++){var P=f[d],L=b+_;y.hasOwnProperty(P)?x.warn("Node "+P+" is already part of a group."):y[P]=L}}var z={source:[],target:[]};for(_=0;_<n.value.length;_++){var F=n.value[_],B=n.source[_],O=n.target[_];if(F>0&&e(B,b)&&e(O,b)&&!(y.hasOwnProperty(B)&&y.hasOwnProperty(O)&&y[B]===y[O])){y.hasOwnProperty(O)&&(O=y[O]),y.hasOwnProperty(B)&&(B=y[B]),B=+B,O=+O,p[B]=p[O]=!0;var I="";n.label&&n.label[_]&&(I=n.label[_]);var N=null;I&&T.hasOwnProperty(I)&&(N=T[I]),s.push({pointNumber:_,label:I,color:c?n.color[_]:n.color,hovercolor:h?n.hovercolor[_]:n.hovercolor,customdata:v?n.customdata[_]:n.customdata,concentrationscale:N,source:B,target:O,value:+F}),z.source.push(B),z.target.push(O)}}var U=b+u.length,W=M(i.color),Q=M(i.customdata),ue=[];for(_=0;_<U;_++)if(p[_]){var se=i.label[_];ue.push({group:_>b-1,childrenNodes:[],pointNumber:_,label:se,color:W?i.color[_]:i.color,customdata:Q?i.customdata[_]:i.customdata})}var he=!1;return o(U,z.source,z.target)&&(he=!0),{circular:he,links:s,nodes:ue,groups:u,groupLookup:y}}function o(a,i,n){for(var s=x.init2dArray(a,0),c=0;c<Math.min(i.length,n.length);c++)if(x.isIndex(i[c],a)&&x.isIndex(n[c],a)){if(i[c]===n[c])return!0;s[i[c]].push(n[c])}var h=g(s);return h.components.some(function(v){return v.length>1})}H.exports=function(i,n){var s=r(n);return A({circular:s.circular,_nodes:s.nodes,_links:s.links,_groups:s.groups,_groupLookup:s.groupLookup})}}}),Vq=Ye({"node_modules/d3-quadtree/dist/d3-quadtree.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";function x(b){var d=+this._x.call(null,b),u=+this._y.call(null,b);return A(this.cover(d,u),d,u,b)}function A(b,d,u,y){if(isNaN(d)||isNaN(u))return b;var f,P=b._root,L={data:y},z=b._x0,F=b._y0,B=b._x1,O=b._y1,I,N,U,W,Q,ue,se,he;if(!P)return b._root=L,b;for(;P.length;)if((Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N,f=P,!(P=P[se=ue<<1|Q]))return f[se]=L,b;if(U=+b._x.call(null,P.data),W=+b._y.call(null,P.data),d===U&&u===W)return L.next=P,f?f[se]=L:b._root=L,b;do f=f?f[se]=new Array(4):b._root=new Array(4),(Q=d>=(I=(z+B)/2))?z=I:B=I,(ue=u>=(N=(F+O)/2))?F=N:O=N;while((se=ue<<1|Q)===(he=(W>=N)<<1|U>=I));return f[he]=P,f[se]=L,b}function M(b){var d,u,y=b.length,f,P,L=new Array(y),z=new Array(y),F=1/0,B=1/0,O=-1/0,I=-1/0;for(u=0;u<y;++u)isNaN(f=+this._x.call(null,d=b[u]))||isNaN(P=+this._y.call(null,d))||(L[u]=f,z[u]=P,f<F&&(F=f),f>O&&(O=f),P<B&&(B=P),P>I&&(I=P));if(F>O||B>I)return this;for(this.cover(F,B).cover(O,I),u=0;u<y;++u)A(this,L[u],z[u],b[u]);return this}function e(b,d){if(isNaN(b=+b)||isNaN(d=+d))return this;var u=this._x0,y=this._y0,f=this._x1,P=this._y1;if(isNaN(u))f=(u=Math.floor(b))+1,P=(y=Math.floor(d))+1;else{for(var L=f-u,z=this._root,F,B;u>b||b>=f||y>d||d>=P;)switch(B=(d<y)<<1|b<u,F=new Array(4),F[B]=z,z=F,L*=2,B){case 0:f=u+L,P=y+L;break;case 1:u=f-L,P=y+L;break;case 2:f=u+L,y=P-L;break;case 3:u=f-L,y=P-L;break}this._root&&this._root.length&&(this._root=z)}return this._x0=u,this._y0=y,this._x1=f,this._y1=P,this}function t(){var b=[];return this.visit(function(d){if(!d.length)do b.push(d.data);while(d=d.next)}),b}function r(b){return arguments.length?this.cover(+b[0][0],+b[0][1]).cover(+b[1][0],+b[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function o(b,d,u,y,f){this.node=b,this.x0=d,this.y0=u,this.x1=y,this.y1=f}function a(b,d,u){var y,f=this._x0,P=this._y0,L,z,F,B,O=this._x1,I=this._y1,N=[],U=this._root,W,Q;for(U&&N.push(new o(U,f,P,O,I)),u==null?u=1/0:(f=b-u,P=d-u,O=b+u,I=d+u,u*=u);W=N.pop();)if(!(!(U=W.node)||(L=W.x0)>O||(z=W.y0)>I||(F=W.x1)<f||(B=W.y1)<P))if(U.length){var ue=(L+F)/2,se=(z+B)/2;N.push(new o(U[3],ue,se,F,B),new o(U[2],L,se,ue,B),new o(U[1],ue,z,F,se),new o(U[0],L,z,ue,se)),(Q=(d>=se)<<1|b>=ue)&&(W=N[N.length-1],N[N.length-1]=N[N.length-1-Q],N[N.length-1-Q]=W)}else{var he=b-+this._x.call(null,U.data),G=d-+this._y.call(null,U.data),$=he*he+G*G;if($<u){var J=Math.sqrt(u=$);f=b-J,P=d-J,O=b+J,I=d+J,y=U.data}}return y}function i(b){if(isNaN(O=+this._x.call(null,b))||isNaN(I=+this._y.call(null,b)))return this;var d,u=this._root,y,f,P,L=this._x0,z=this._y0,F=this._x1,B=this._y1,O,I,N,U,W,Q,ue,se;if(!u)return this;if(u.length)for(;;){if((W=O>=(N=(L+F)/2))?L=N:F=N,(Q=I>=(U=(z+B)/2))?z=U:B=U,d=u,!(u=u[ue=Q<<1|W]))return this;if(!u.length)break;(d[ue+1&3]||d[ue+2&3]||d[ue+3&3])&&(y=d,se=ue)}for(;u.data!==b;)if(f=u,!(u=u.next))return this;return(P=u.next)&&delete u.next,f?(P?f.next=P:delete f.next,this):d?(P?d[ue]=P:delete d[ue],(u=d[0]||d[1]||d[2]||d[3])&&u===(d[3]||d[2]||d[1]||d[0])&&!u.length&&(y?y[se]=u:this._root=u),this):(this._root=P,this)}function n(b){for(var d=0,u=b.length;d<u;++d)this.remove(b[d]);return this}function s(){return this._root}function c(){var b=0;return this.visit(function(d){if(!d.length)do++b;while(d=d.next)}),b}function h(b){var d=[],u,y=this._root,f,P,L,z,F;for(y&&d.push(new o(y,this._x0,this._y0,this._x1,this._y1));u=d.pop();)if(!b(y=u.node,P=u.x0,L=u.y0,z=u.x1,F=u.y1)&&y.length){var B=(P+z)/2,O=(L+F)/2;(f=y[3])&&d.push(new o(f,B,O,z,F)),(f=y[2])&&d.push(new o(f,P,O,B,F)),(f=y[1])&&d.push(new o(f,B,L,z,O)),(f=y[0])&&d.push(new o(f,P,L,B,O))}return this}function v(b){var d=[],u=[],y;for(this._root&&d.push(new o(this._root,this._x0,this._y0,this._x1,this._y1));y=d.pop();){var f=y.node;if(f.length){var P,L=y.x0,z=y.y0,F=y.x1,B=y.y1,O=(L+F)/2,I=(z+B)/2;(P=f[0])&&d.push(new o(P,L,z,O,I)),(P=f[1])&&d.push(new o(P,O,z,F,I)),(P=f[2])&&d.push(new o(P,L,I,O,B)),(P=f[3])&&d.push(new o(P,O,I,F,B))}u.push(y)}for(;y=u.pop();)b(y.node,y.x0,y.y0,y.x1,y.y1);return this}function p(b){return b[0]}function T(b){return arguments.length?(this._x=b,this):this._x}function l(b){return b[1]}function _(b){return arguments.length?(this._y=b,this):this._y}function w(b,d,u){var y=new S(d??p,u??l,NaN,NaN,NaN,NaN);return b==null?y:y.addAll(b)}function S(b,d,u,y,f,P){this._x=b,this._y=d,this._x0=u,this._y0=y,this._x1=f,this._y1=P,this._root=void 0}function E(b){for(var d={data:b.data},u=d;b=b.next;)u=u.next={data:b.data};return d}var m=w.prototype=S.prototype;m.copy=function(){var b=new S(this._x,this._y,this._x0,this._y0,this._x1,this._y1),d=this._root,u,y;if(!d)return b;if(!d.length)return b._root=E(d),b;for(u=[{source:d,target:b._root=new Array(4)}];d=u.pop();)for(var f=0;f<4;++f)(y=d.source[f])&&(y.length?u.push({source:y,target:d.target[f]=new Array(4)}):d.target[f]=E(y));return b},m.add=x,m.addAll=M,m.cover=e,m.data=t,m.extent=r,m.find=a,m.remove=i,m.removeAll=n,m.root=s,m.size=c,m.visit=h,m.visitAfter=v,m.x=T,m.y=_,g.quadtree=w,Object.defineProperty(g,"__esModule",{value:!0})})}}),CT=Ye({"node_modules/d3-collection/dist/d3-collection.js"(X,H){(function(g,x){x(typeof X=="object"&&typeof H<"u"?X:g.d3=g.d3||{})})(X,function(g){"use strict";var x="$";function A(){}A.prototype=M.prototype={constructor:A,has:function(p){return x+p in this},get:function(p){return this[x+p]},set:function(p,T){return this[x+p]=T,this},remove:function(p){var T=x+p;return T in this&&delete this[T]},clear:function(){for(var p in this)p[0]===x&&delete this[p]},keys:function(){var p=[];for(var T in this)T[0]===x&&p.push(T.slice(1));return p},values:function(){var p=[];for(var T in this)T[0]===x&&p.push(this[T]);return p},entries:function(){var p=[];for(var T in this)T[0]===x&&p.push({key:T.slice(1),value:this[T]});return p},size:function(){var p=0;for(var T in this)T[0]===x&&++p;return p},empty:function(){for(var p in this)if(p[0]===x)return!1;return!0},each:function(p){for(var T in this)T[0]===x&&p(this[T],T.slice(1),this)}};function M(p,T){var l=new A;if(p instanceof A)p.each(function(m,b){l.set(b,m)});else if(Array.isArray(p)){var _=-1,w=p.length,S;if(T==null)for(;++_<w;)l.set(_,p[_]);else for(;++_<w;)l.set(T(S=p[_],_,p),S)}else if(p)for(var E in p)l.set(E,p[E]);return l}function e(){var p=[],T=[],l,_,w;function S(m,b,d,u){if(b>=p.length)return l!=null&&m.sort(l),_!=null?_(m):m;for(var y=-1,f=m.length,P=p[b++],L,z,F=M(),B,O=d();++y<f;)(B=F.get(L=P(z=m[y])+""))?B.push(z):F.set(L,[z]);return F.each(function(I,N){u(O,N,S(I,b,d,u))}),O}function E(m,b){if(++b>p.length)return m;var d,u=T[b-1];return _!=null&&b>=p.length?d=m.entries():(d=[],m.each(function(y,f){d.push({key:f,values:E(y,b)})})),u!=null?d.sort(function(y,f){return u(y.key,f.key)}):d}return w={object:function(m){return S(m,0,t,r)},map:function(m){return S(m,0,o,a)},entries:function(m){return E(S(m,0,o,a),0)},key:function(m){return p.push(m),w},sortKeys:function(m){return T[p.length-1]=m,w},sortValues:function(m){return l=m,w},rollup:function(m){return _=m,w}}}function t(){return{}}function r(p,T,l){p[T]=l}function o(){return M()}function a(p,T,l){p.set(T,l)}function i(){}var n=M.prototype;i.prototype=s.prototype={constructor:i,has:n.has,add:function(p){return p+="",this[x+p]=p,this},remove:n.remove,clear:n.clear,values:n.keys,size:n.size,empty:n.empty,each:n.each};function s(p,T){var l=new i;if(p instanceof i)p.each(function(S){l.add(S)});else if(p){var _=-1,w=p.length;if(T==null)for(;++_<w;)l.add(p[_]);else for(;++_<w;)l.add(T(p[_],_,p))}return l}function c(p){var T=[];for(var l in p)T.push(l);return T}function h(p){var T=[];for(var l in p)T.push(p[l]);return T}function v(p){var T=[];for(var l in p)T.push({key:l,value:p[l]});return T}g.nest=e,g.set=s,g.map=M,g.keys=c,g.values=h,g.entries=v,Object.defineProperty(g,"__esModule",{value:!0})})}}),qq=Ye({"node_modules/d3-dispatch/dist/d3-dispatch.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x={value:function(){}};function A(){for(var o=0,a=arguments.length,i={},n;o<a;++o){if(!(n=arguments[o]+"")||n in i||/[\s.]/.test(n))throw new Error("illegal type: "+n);i[n]=[]}return new M(i)}function M(o){this._=o}function e(o,a){return o.trim().split(/^|\s+/).map(function(i){var n="",s=i.indexOf(".");if(s>=0&&(n=i.slice(s+1),i=i.slice(0,s)),i&&!a.hasOwnProperty(i))throw new Error("unknown type: "+i);return{type:i,name:n}})}M.prototype=A.prototype={constructor:M,on:function(o,a){var i=this._,n=e(o+"",i),s,c=-1,h=n.length;if(arguments.length<2){for(;++c<h;)if((s=(o=n[c]).type)&&(s=t(i[s],o.name)))return s;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++c<h;)if(s=(o=n[c]).type)i[s]=r(i[s],o.name,a);else if(a==null)for(s in i)i[s]=r(i[s],o.name,null);return this},copy:function(){var o={},a=this._;for(var i in a)o[i]=a[i].slice();return new M(o)},call:function(o,a){if((s=arguments.length-2)>0)for(var i=new Array(s),n=0,s,c;n<s;++n)i[n]=arguments[n+2];if(!this._.hasOwnProperty(o))throw new Error("unknown type: "+o);for(c=this._[o],n=0,s=c.length;n<s;++n)c[n].value.apply(a,i)},apply:function(o,a,i){if(!this._.hasOwnProperty(o))throw new Error("unknown type: "+o);for(var n=this._[o],s=0,c=n.length;s<c;++s)n[s].value.apply(a,i)}};function t(o,a){for(var i=0,n=o.length,s;i<n;++i)if((s=o[i]).name===a)return s.value}function r(o,a,i){for(var n=0,s=o.length;n<s;++n)if(o[n].name===a){o[n]=x,o=o.slice(0,n).concat(o.slice(n+1));break}return i!=null&&o.push({name:a,value:i}),o}g.dispatch=A,Object.defineProperty(g,"__esModule",{value:!0})})}}),Hq=Ye({"node_modules/d3-timer/dist/d3-timer.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=0,A=0,M=0,e=1e3,t,r,o=0,a=0,i=0,n=typeof performance=="object"&&performance.now?performance:Date,s=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(b){setTimeout(b,17)};function c(){return a||(s(h),a=n.now()+i)}function h(){a=0}function v(){this._call=this._time=this._next=null}v.prototype=p.prototype={constructor:v,restart:function(b,d,u){if(typeof b!="function")throw new TypeError("callback is not a function");u=(u==null?c():+u)+(d==null?0:+d),!this._next&&r!==this&&(r?r._next=this:t=this,r=this),this._call=b,this._time=u,S()},stop:function(){this._call&&(this._call=null,this._time=1/0,S())}};function p(b,d,u){var y=new v;return y.restart(b,d,u),y}function T(){c(),++x;for(var b=t,d;b;)(d=a-b._time)>=0&&b._call.call(null,d),b=b._next;--x}function l(){a=(o=n.now())+i,x=A=0;try{T()}finally{x=0,w(),a=0}}function _(){var b=n.now(),d=b-o;d>e&&(i-=d,o=b)}function w(){for(var b,d=t,u,y=1/0;d;)d._call?(y>d._time&&(y=d._time),b=d,d=d._next):(u=d._next,d._next=null,d=b?b._next=u:t=u);r=b,S(y)}function S(b){if(!x){A&&(A=clearTimeout(A));var d=b-a;d>24?(b<1/0&&(A=setTimeout(l,b-n.now()-i)),M&&(M=clearInterval(M))):(M||(o=n.now(),M=setInterval(_,e)),x=1,s(l))}}function E(b,d,u){var y=new v;return d=d==null?0:+d,y.restart(function(f){y.stop(),b(f+d)},d,u),y}function m(b,d,u){var y=new v,f=d;return d==null?(y.restart(b,d,u),y):(d=+d,u=u==null?c():+u,y.restart(function P(L){L+=f,y.restart(P,f+=d,u),b(L)},d,u),y)}g.interval=m,g.now=c,g.timeout=E,g.timer=p,g.timerFlush=T,Object.defineProperty(g,"__esModule",{value:!0})})}}),Gq=Ye({"node_modules/d3-force/dist/d3-force.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Vq(),CT(),qq(),Hq()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,g.d3)})(X,function(g,x,A,M,e){"use strict";function t(b,d){var u;b==null&&(b=0),d==null&&(d=0);function y(){var f,P=u.length,L,z=0,F=0;for(f=0;f<P;++f)L=u[f],z+=L.x,F+=L.y;for(z=z/P-b,F=F/P-d,f=0;f<P;++f)L=u[f],L.x-=z,L.y-=F}return y.initialize=function(f){u=f},y.x=function(f){return arguments.length?(b=+f,y):b},y.y=function(f){return arguments.length?(d=+f,y):d},y}function r(b){return function(){return b}}function o(){return(Math.random()-.5)*1e-6}function a(b){return b.x+b.vx}function i(b){return b.y+b.vy}function n(b){var d,u,y=1,f=1;typeof b!="function"&&(b=r(b==null?1:+b));function P(){for(var F,B=d.length,O,I,N,U,W,Q,ue=0;ue<f;++ue)for(O=x.quadtree(d,a,i).visitAfter(L),F=0;F<B;++F)I=d[F],W=u[I.index],Q=W*W,N=I.x+I.vx,U=I.y+I.vy,O.visit(se);function se(he,G,$,J,Z){var re=he.data,ne=he.r,j=W+ne;if(re){if(re.index>I.index){var ee=N-re.x-re.vx,ie=U-re.y-re.vy,fe=ee*ee+ie*ie;fe<j*j&&(ee===0&&(ee=o(),fe+=ee*ee),ie===0&&(ie=o(),fe+=ie*ie),fe=(j-(fe=Math.sqrt(fe)))/fe*y,I.vx+=(ee*=fe)*(j=(ne*=ne)/(Q+ne)),I.vy+=(ie*=fe)*j,re.vx-=ee*(j=1-j),re.vy-=ie*j)}return}return G>N+j||J<N-j||$>U+j||Z<U-j}}function L(F){if(F.data)return F.r=u[F.data.index];for(var B=F.r=0;B<4;++B)F[B]&&F[B].r>F.r&&(F.r=F[B].r)}function z(){if(d){var F,B=d.length,O;for(u=new Array(B),F=0;F<B;++F)O=d[F],u[O.index]=+b(O,F,d)}}return P.initialize=function(F){d=F,z()},P.iterations=function(F){return arguments.length?(f=+F,P):f},P.strength=function(F){return arguments.length?(y=+F,P):y},P.radius=function(F){return arguments.length?(b=typeof F=="function"?F:r(+F),z(),P):b},P}function s(b){return b.index}function c(b,d){var u=b.get(d);if(!u)throw new Error("missing: "+d);return u}function h(b){var d=s,u=O,y,f=r(30),P,L,z,F,B=1;b==null&&(b=[]);function O(Q){return 1/Math.min(z[Q.source.index],z[Q.target.index])}function I(Q){for(var ue=0,se=b.length;ue<B;++ue)for(var he=0,G,$,J,Z,re,ne,j;he<se;++he)G=b[he],$=G.source,J=G.target,Z=J.x+J.vx-$.x-$.vx||o(),re=J.y+J.vy-$.y-$.vy||o(),ne=Math.sqrt(Z*Z+re*re),ne=(ne-P[he])/ne*Q*y[he],Z*=ne,re*=ne,J.vx-=Z*(j=F[he]),J.vy-=re*j,$.vx+=Z*(j=1-j),$.vy+=re*j}function N(){if(L){var Q,ue=L.length,se=b.length,he=A.map(L,d),G;for(Q=0,z=new Array(ue);Q<se;++Q)G=b[Q],G.index=Q,typeof G.source!="object"&&(G.source=c(he,G.source)),typeof G.target!="object"&&(G.target=c(he,G.target)),z[G.source.index]=(z[G.source.index]||0)+1,z[G.target.index]=(z[G.target.index]||0)+1;for(Q=0,F=new Array(se);Q<se;++Q)G=b[Q],F[Q]=z[G.source.index]/(z[G.source.index]+z[G.target.index]);y=new Array(se),U(),P=new Array(se),W()}}function U(){if(L)for(var Q=0,ue=b.length;Q<ue;++Q)y[Q]=+u(b[Q],Q,b)}function W(){if(L)for(var Q=0,ue=b.length;Q<ue;++Q)P[Q]=+f(b[Q],Q,b)}return I.initialize=function(Q){L=Q,N()},I.links=function(Q){return arguments.length?(b=Q,N(),I):b},I.id=function(Q){return arguments.length?(d=Q,I):d},I.iterations=function(Q){return arguments.length?(B=+Q,I):B},I.strength=function(Q){return arguments.length?(u=typeof Q=="function"?Q:r(+Q),U(),I):u},I.distance=function(Q){return arguments.length?(f=typeof Q=="function"?Q:r(+Q),W(),I):f},I}function v(b){return b.x}function p(b){return b.y}var T=10,l=Math.PI*(3-Math.sqrt(5));function _(b){var d,u=1,y=.001,f=1-Math.pow(y,1/300),P=0,L=.6,z=A.map(),F=e.timer(O),B=M.dispatch("tick","end");b==null&&(b=[]);function O(){I(),B.call("tick",d),u<y&&(F.stop(),B.call("end",d))}function I(W){var Q,ue=b.length,se;W===void 0&&(W=1);for(var he=0;he<W;++he)for(u+=(P-u)*f,z.each(function(G){G(u)}),Q=0;Q<ue;++Q)se=b[Q],se.fx==null?se.x+=se.vx*=L:(se.x=se.fx,se.vx=0),se.fy==null?se.y+=se.vy*=L:(se.y=se.fy,se.vy=0);return d}function N(){for(var W=0,Q=b.length,ue;W<Q;++W){if(ue=b[W],ue.index=W,ue.fx!=null&&(ue.x=ue.fx),ue.fy!=null&&(ue.y=ue.fy),isNaN(ue.x)||isNaN(ue.y)){var se=T*Math.sqrt(W),he=W*l;ue.x=se*Math.cos(he),ue.y=se*Math.sin(he)}(isNaN(ue.vx)||isNaN(ue.vy))&&(ue.vx=ue.vy=0)}}function U(W){return W.initialize&&W.initialize(b),W}return N(),d={tick:I,restart:function(){return F.restart(O),d},stop:function(){return F.stop(),d},nodes:function(W){return arguments.length?(b=W,N(),z.each(U),d):b},alpha:function(W){return arguments.length?(u=+W,d):u},alphaMin:function(W){return arguments.length?(y=+W,d):y},alphaDecay:function(W){return arguments.length?(f=+W,d):+f},alphaTarget:function(W){return arguments.length?(P=+W,d):P},velocityDecay:function(W){return arguments.length?(L=1-W,d):1-L},force:function(W,Q){return arguments.length>1?(Q==null?z.remove(W):z.set(W,U(Q)),d):z.get(W)},find:function(W,Q,ue){var se=0,he=b.length,G,$,J,Z,re;for(ue==null?ue=1/0:ue*=ue,se=0;se<he;++se)Z=b[se],G=W-Z.x,$=Q-Z.y,J=G*G+$*$,J<ue&&(re=Z,ue=J);return re},on:function(W,Q){return arguments.length>1?(B.on(W,Q),d):B.on(W)}}}function w(){var b,d,u,y=r(-30),f,P=1,L=1/0,z=.81;function F(N){var U,W=b.length,Q=x.quadtree(b,v,p).visitAfter(O);for(u=N,U=0;U<W;++U)d=b[U],Q.visit(I)}function B(){if(b){var N,U=b.length,W;for(f=new Array(U),N=0;N<U;++N)W=b[N],f[W.index]=+y(W,N,b)}}function O(N){var U=0,W,Q,ue=0,se,he,G;if(N.length){for(se=he=G=0;G<4;++G)(W=N[G])&&(Q=Math.abs(W.value))&&(U+=W.value,ue+=Q,se+=Q*W.x,he+=Q*W.y);N.x=se/ue,N.y=he/ue}else{W=N,W.x=W.data.x,W.y=W.data.y;do U+=f[W.data.index];while(W=W.next)}N.value=U}function I(N,U,W,Q){if(!N.value)return!0;var ue=N.x-d.x,se=N.y-d.y,he=Q-U,G=ue*ue+se*se;if(he*he/z<G)return G<L&&(ue===0&&(ue=o(),G+=ue*ue),se===0&&(se=o(),G+=se*se),G<P&&(G=Math.sqrt(P*G)),d.vx+=ue*N.value*u/G,d.vy+=se*N.value*u/G),!0;if(N.length||G>=L)return;(N.data!==d||N.next)&&(ue===0&&(ue=o(),G+=ue*ue),se===0&&(se=o(),G+=se*se),G<P&&(G=Math.sqrt(P*G)));do N.data!==d&&(he=f[N.data.index]*u/G,d.vx+=ue*he,d.vy+=se*he);while(N=N.next)}return F.initialize=function(N){b=N,B()},F.strength=function(N){return arguments.length?(y=typeof N=="function"?N:r(+N),B(),F):y},F.distanceMin=function(N){return arguments.length?(P=N*N,F):Math.sqrt(P)},F.distanceMax=function(N){return arguments.length?(L=N*N,F):Math.sqrt(L)},F.theta=function(N){return arguments.length?(z=N*N,F):Math.sqrt(z)},F}function S(b,d,u){var y,f=r(.1),P,L;typeof b!="function"&&(b=r(+b)),d==null&&(d=0),u==null&&(u=0);function z(B){for(var O=0,I=y.length;O<I;++O){var N=y[O],U=N.x-d||1e-6,W=N.y-u||1e-6,Q=Math.sqrt(U*U+W*W),ue=(L[O]-Q)*P[O]*B/Q;N.vx+=U*ue,N.vy+=W*ue}}function F(){if(y){var B,O=y.length;for(P=new Array(O),L=new Array(O),B=0;B<O;++B)L[B]=+b(y[B],B,y),P[B]=isNaN(L[B])?0:+f(y[B],B,y)}}return z.initialize=function(B){y=B,F()},z.strength=function(B){return arguments.length?(f=typeof B=="function"?B:r(+B),F(),z):f},z.radius=function(B){return arguments.length?(b=typeof B=="function"?B:r(+B),F(),z):b},z.x=function(B){return arguments.length?(d=+B,z):d},z.y=function(B){return arguments.length?(u=+B,z):u},z}function E(b){var d=r(.1),u,y,f;typeof b!="function"&&(b=r(b==null?0:+b));function P(z){for(var F=0,B=u.length,O;F<B;++F)O=u[F],O.vx+=(f[F]-O.x)*y[F]*z}function L(){if(u){var z,F=u.length;for(y=new Array(F),f=new Array(F),z=0;z<F;++z)y[z]=isNaN(f[z]=+b(u[z],z,u))?0:+d(u[z],z,u)}}return P.initialize=function(z){u=z,L()},P.strength=function(z){return arguments.length?(d=typeof z=="function"?z:r(+z),L(),P):d},P.x=function(z){return arguments.length?(b=typeof z=="function"?z:r(+z),L(),P):b},P}function m(b){var d=r(.1),u,y,f;typeof b!="function"&&(b=r(b==null?0:+b));function P(z){for(var F=0,B=u.length,O;F<B;++F)O=u[F],O.vy+=(f[F]-O.y)*y[F]*z}function L(){if(u){var z,F=u.length;for(y=new Array(F),f=new Array(F),z=0;z<F;++z)y[z]=isNaN(f[z]=+b(u[z],z,u))?0:+d(u[z],z,u)}}return P.initialize=function(z){u=z,L()},P.strength=function(z){return arguments.length?(d=typeof z=="function"?z:r(+z),L(),P):d},P.y=function(z){return arguments.length?(b=typeof z=="function"?z:r(+z),L(),P):b},P}g.forceCenter=t,g.forceCollide=n,g.forceLink=h,g.forceManyBody=w,g.forceRadial=S,g.forceSimulation=_,g.forceX=E,g.forceY=m,Object.defineProperty(g,"__esModule",{value:!0})})}}),Wq=Ye({"node_modules/d3-path/dist/d3-path.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X):(g=g||self,x(g.d3=g.d3||{}))})(X,function(g){"use strict";var x=Math.PI,A=2*x,M=1e-6,e=A-M;function t(){this._x0=this._y0=this._x1=this._y1=null,this._=""}function r(){return new t}t.prototype=r.prototype={constructor:t,moveTo:function(o,a){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+a)},closePath:function(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(o,a){this._+="L"+(this._x1=+o)+","+(this._y1=+a)},quadraticCurveTo:function(o,a,i,n){this._+="Q"+ +o+","+ +a+","+(this._x1=+i)+","+(this._y1=+n)},bezierCurveTo:function(o,a,i,n,s,c){this._+="C"+ +o+","+ +a+","+ +i+","+ +n+","+(this._x1=+s)+","+(this._y1=+c)},arcTo:function(o,a,i,n,s){o=+o,a=+a,i=+i,n=+n,s=+s;var c=this._x1,h=this._y1,v=i-o,p=n-a,T=c-o,l=h-a,_=T*T+l*l;if(s<0)throw new Error("negative radius: "+s);if(this._x1===null)this._+="M"+(this._x1=o)+","+(this._y1=a);else if(_>M)if(!(Math.abs(l*v-p*T)>M)||!s)this._+="L"+(this._x1=o)+","+(this._y1=a);else{var w=i-c,S=n-h,E=v*v+p*p,m=w*w+S*S,b=Math.sqrt(E),d=Math.sqrt(_),u=s*Math.tan((x-Math.acos((E+_-m)/(2*b*d)))/2),y=u/d,f=u/b;Math.abs(y-1)>M&&(this._+="L"+(o+y*T)+","+(a+y*l)),this._+="A"+s+","+s+",0,0,"+ +(l*w>T*S)+","+(this._x1=o+f*v)+","+(this._y1=a+f*p)}},arc:function(o,a,i,n,s,c){o=+o,a=+a,i=+i,c=!!c;var h=i*Math.cos(n),v=i*Math.sin(n),p=o+h,T=a+v,l=1^c,_=c?n-s:s-n;if(i<0)throw new Error("negative radius: "+i);this._x1===null?this._+="M"+p+","+T:(Math.abs(this._x1-p)>M||Math.abs(this._y1-T)>M)&&(this._+="L"+p+","+T),i&&(_<0&&(_=_%A+A),_>e?this._+="A"+i+","+i+",0,1,"+l+","+(o-h)+","+(a-v)+"A"+i+","+i+",0,1,"+l+","+(this._x1=p)+","+(this._y1=T):_>M&&(this._+="A"+i+","+i+",0,"+ +(_>=x)+","+l+","+(this._x1=o+i*Math.cos(s))+","+(this._y1=a+i*Math.sin(s))))},rect:function(o,a,i,n){this._+="M"+(this._x0=this._x1=+o)+","+(this._y0=this._y1=+a)+"h"+ +i+"v"+ +n+"h"+-i+"Z"},toString:function(){return this._}},g.path=r,Object.defineProperty(g,"__esModule",{value:!0})})}}),zk=Ye({"node_modules/d3-shape/dist/d3-shape.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,Wq()):(g=g||self,x(g.d3=g.d3||{},g.d3))})(X,function(g,x){"use strict";function A(kt){return function(){return kt}}var M=Math.abs,e=Math.atan2,t=Math.cos,r=Math.max,o=Math.min,a=Math.sin,i=Math.sqrt,n=1e-12,s=Math.PI,c=s/2,h=2*s;function v(kt){return kt>1?0:kt<-1?s:Math.acos(kt)}function p(kt){return kt>=1?c:kt<=-1?-c:Math.asin(kt)}function T(kt){return kt.innerRadius}function l(kt){return kt.outerRadius}function _(kt){return kt.startAngle}function w(kt){return kt.endAngle}function S(kt){return kt&&kt.padAngle}function E(kt,ir,mr,$r,ma,Ba,Ca,da){var Sa=mr-kt,Ti=$r-ir,ai=Ca-ma,an=da-Ba,sn=an*Sa-ai*Ti;if(!(sn*sn<n))return sn=(ai*(ir-Ba)-an*(kt-ma))/sn,[kt+sn*Sa,ir+sn*Ti]}function m(kt,ir,mr,$r,ma,Ba,Ca){var da=kt-mr,Sa=ir-$r,Ti=(Ca?Ba:-Ba)/i(da*da+Sa*Sa),ai=Ti*Sa,an=-Ti*da,sn=kt+ai,Mn=ir+an,On=mr+ai,$n=$r+an,Cn=(sn+On)/2,Lo=(Mn+$n)/2,Xi=On-sn,Jo=$n-Mn,zo=Xi*Xi+Jo*Jo,as=ma-Ba,Pn=sn*$n-On*Mn,go=(Jo<0?-1:1)*i(r(0,as*as*zo-Pn*Pn)),In=(Pn*Jo-Xi*go)/zo,Do=(-Pn*Xi-Jo*go)/zo,Ho=(Pn*Jo+Xi*go)/zo,Qo=(-Pn*Xi+Jo*go)/zo,Xn=In-Cn,po=Do-Lo,ys=Ho-Cn,Is=Qo-Lo;return Xn*Xn+po*po>ys*ys+Is*Is&&(In=Ho,Do=Qo),{cx:In,cy:Do,x01:-ai,y01:-an,x11:In*(ma/as-1),y11:Do*(ma/as-1)}}function b(){var kt=T,ir=l,mr=A(0),$r=null,ma=_,Ba=w,Ca=S,da=null;function Sa(){var Ti,ai,an=+kt.apply(this,arguments),sn=+ir.apply(this,arguments),Mn=ma.apply(this,arguments)-c,On=Ba.apply(this,arguments)-c,$n=M(On-Mn),Cn=On>Mn;if(da||(da=Ti=x.path()),sn<an&&(ai=sn,sn=an,an=ai),!(sn>n))da.moveTo(0,0);else if($n>h-n)da.moveTo(sn*t(Mn),sn*a(Mn)),da.arc(0,0,sn,Mn,On,!Cn),an>n&&(da.moveTo(an*t(On),an*a(On)),da.arc(0,0,an,On,Mn,Cn));else{var Lo=Mn,Xi=On,Jo=Mn,zo=On,as=$n,Pn=$n,go=Ca.apply(this,arguments)/2,In=go>n&&($r?+$r.apply(this,arguments):i(an*an+sn*sn)),Do=o(M(sn-an)/2,+mr.apply(this,arguments)),Ho=Do,Qo=Do,Xn,po;if(In>n){var ys=p(In/an*a(go)),Is=p(In/sn*a(go));(as-=ys*2)>n?(ys*=Cn?1:-1,Jo+=ys,zo-=ys):(as=0,Jo=zo=(Mn+On)/2),(Pn-=Is*2)>n?(Is*=Cn?1:-1,Lo+=Is,Xi-=Is):(Pn=0,Lo=Xi=(Mn+On)/2)}var Fs=sn*t(Lo),$o=sn*a(Lo),fi=an*t(zo),mn=an*a(zo);if(Do>n){var ol=sn*t(Xi),Os=sn*a(Xi),so=an*t(Jo),Ns=an*a(Jo),fs;if($n<s&&(fs=E(Fs,$o,so,Ns,ol,Os,fi,mn))){var al=Fs-fs[0],vl=$o-fs[1],ji=ol-fs[0],To=Os-fs[1],Yn=1/a(v((al*ji+vl*To)/(i(al*al+vl*vl)*i(ji*ji+To*To)))/2),_s=i(fs[0]*fs[0]+fs[1]*fs[1]);Ho=o(Do,(an-_s)/(Yn-1)),Qo=o(Do,(sn-_s)/(Yn+1))}}Pn>n?Qo>n?(Xn=m(so,Ns,Fs,$o,sn,Qo,Cn),po=m(ol,Os,fi,mn,sn,Qo,Cn),da.moveTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Qo<Do?da.arc(Xn.cx,Xn.cy,Qo,e(Xn.y01,Xn.x01),e(po.y01,po.x01),!Cn):(da.arc(Xn.cx,Xn.cy,Qo,e(Xn.y01,Xn.x01),e(Xn.y11,Xn.x11),!Cn),da.arc(0,0,sn,e(Xn.cy+Xn.y11,Xn.cx+Xn.x11),e(po.cy+po.y11,po.cx+po.x11),!Cn),da.arc(po.cx,po.cy,Qo,e(po.y11,po.x11),e(po.y01,po.x01),!Cn))):(da.moveTo(Fs,$o),da.arc(0,0,sn,Lo,Xi,!Cn)):da.moveTo(Fs,$o),!(an>n)||!(as>n)?da.lineTo(fi,mn):Ho>n?(Xn=m(fi,mn,ol,Os,an,-Ho,Cn),po=m(Fs,$o,so,Ns,an,-Ho,Cn),da.lineTo(Xn.cx+Xn.x01,Xn.cy+Xn.y01),Ho<Do?da.arc(Xn.cx,Xn.cy,Ho,e(Xn.y01,Xn.x01),e(po.y01,po.x01),!Cn):(da.arc(Xn.cx,Xn.cy,Ho,e(Xn.y01,Xn.x01),e(Xn.y11,Xn.x11),!Cn),da.arc(0,0,an,e(Xn.cy+Xn.y11,Xn.cx+Xn.x11),e(po.cy+po.y11,po.cx+po.x11),Cn),da.arc(po.cx,po.cy,Ho,e(po.y11,po.x11),e(po.y01,po.x01),!Cn))):da.arc(0,0,an,zo,Jo,Cn)}if(da.closePath(),Ti)return da=null,Ti+""||null}return Sa.centroid=function(){var Ti=(+kt.apply(this,arguments)+ +ir.apply(this,arguments))/2,ai=(+ma.apply(this,arguments)+ +Ba.apply(this,arguments))/2-s/2;return[t(ai)*Ti,a(ai)*Ti]},Sa.innerRadius=function(Ti){return arguments.length?(kt=typeof Ti=="function"?Ti:A(+Ti),Sa):kt},Sa.outerRadius=function(Ti){return arguments.length?(ir=typeof Ti=="function"?Ti:A(+Ti),Sa):ir},Sa.cornerRadius=function(Ti){return arguments.length?(mr=typeof Ti=="function"?Ti:A(+Ti),Sa):mr},Sa.padRadius=function(Ti){return arguments.length?($r=Ti==null?null:typeof Ti=="function"?Ti:A(+Ti),Sa):$r},Sa.startAngle=function(Ti){return arguments.length?(ma=typeof Ti=="function"?Ti:A(+Ti),Sa):ma},Sa.endAngle=function(Ti){return arguments.length?(Ba=typeof Ti=="function"?Ti:A(+Ti),Sa):Ba},Sa.padAngle=function(Ti){return arguments.length?(Ca=typeof Ti=="function"?Ti:A(+Ti),Sa):Ca},Sa.context=function(Ti){return arguments.length?(da=Ti??null,Sa):da},Sa}function d(kt){this._context=kt}d.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;default:this._context.lineTo(kt,ir);break}}};function u(kt){return new d(kt)}function y(kt){return kt[0]}function f(kt){return kt[1]}function P(){var kt=y,ir=f,mr=A(!0),$r=null,ma=u,Ba=null;function Ca(da){var Sa,Ti=da.length,ai,an=!1,sn;for($r==null&&(Ba=ma(sn=x.path())),Sa=0;Sa<=Ti;++Sa)!(Sa<Ti&&mr(ai=da[Sa],Sa,da))===an&&((an=!an)?Ba.lineStart():Ba.lineEnd()),an&&Ba.point(+kt(ai,Sa,da),+ir(ai,Sa,da));if(sn)return Ba=null,sn+""||null}return Ca.x=function(da){return arguments.length?(kt=typeof da=="function"?da:A(+da),Ca):kt},Ca.y=function(da){return arguments.length?(ir=typeof da=="function"?da:A(+da),Ca):ir},Ca.defined=function(da){return arguments.length?(mr=typeof da=="function"?da:A(!!da),Ca):mr},Ca.curve=function(da){return arguments.length?(ma=da,$r!=null&&(Ba=ma($r)),Ca):ma},Ca.context=function(da){return arguments.length?(da==null?$r=Ba=null:Ba=ma($r=da),Ca):$r},Ca}function L(){var kt=y,ir=null,mr=A(0),$r=f,ma=A(!0),Ba=null,Ca=u,da=null;function Sa(ai){var an,sn,Mn,On=ai.length,$n,Cn=!1,Lo,Xi=new Array(On),Jo=new Array(On);for(Ba==null&&(da=Ca(Lo=x.path())),an=0;an<=On;++an){if(!(an<On&&ma($n=ai[an],an,ai))===Cn)if(Cn=!Cn)sn=an,da.areaStart(),da.lineStart();else{for(da.lineEnd(),da.lineStart(),Mn=an-1;Mn>=sn;--Mn)da.point(Xi[Mn],Jo[Mn]);da.lineEnd(),da.areaEnd()}Cn&&(Xi[an]=+kt($n,an,ai),Jo[an]=+mr($n,an,ai),da.point(ir?+ir($n,an,ai):Xi[an],$r?+$r($n,an,ai):Jo[an]))}if(Lo)return da=null,Lo+""||null}function Ti(){return P().defined(ma).curve(Ca).context(Ba)}return Sa.x=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),ir=null,Sa):kt},Sa.x0=function(ai){return arguments.length?(kt=typeof ai=="function"?ai:A(+ai),Sa):kt},Sa.x1=function(ai){return arguments.length?(ir=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):ir},Sa.y=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),$r=null,Sa):mr},Sa.y0=function(ai){return arguments.length?(mr=typeof ai=="function"?ai:A(+ai),Sa):mr},Sa.y1=function(ai){return arguments.length?($r=ai==null?null:typeof ai=="function"?ai:A(+ai),Sa):$r},Sa.lineX0=Sa.lineY0=function(){return Ti().x(kt).y(mr)},Sa.lineY1=function(){return Ti().x(kt).y($r)},Sa.lineX1=function(){return Ti().x(ir).y(mr)},Sa.defined=function(ai){return arguments.length?(ma=typeof ai=="function"?ai:A(!!ai),Sa):ma},Sa.curve=function(ai){return arguments.length?(Ca=ai,Ba!=null&&(da=Ca(Ba)),Sa):Ca},Sa.context=function(ai){return arguments.length?(ai==null?Ba=da=null:da=Ca(Ba=ai),Sa):Ba},Sa}function z(kt,ir){return ir<kt?-1:ir>kt?1:ir>=kt?0:NaN}function F(kt){return kt}function B(){var kt=F,ir=z,mr=null,$r=A(0),ma=A(h),Ba=A(0);function Ca(da){var Sa,Ti=da.length,ai,an,sn=0,Mn=new Array(Ti),On=new Array(Ti),$n=+$r.apply(this,arguments),Cn=Math.min(h,Math.max(-h,ma.apply(this,arguments)-$n)),Lo,Xi=Math.min(Math.abs(Cn)/Ti,Ba.apply(this,arguments)),Jo=Xi*(Cn<0?-1:1),zo;for(Sa=0;Sa<Ti;++Sa)(zo=On[Mn[Sa]=Sa]=+kt(da[Sa],Sa,da))>0&&(sn+=zo);for(ir!=null?Mn.sort(function(as,Pn){return ir(On[as],On[Pn])}):mr!=null&&Mn.sort(function(as,Pn){return mr(da[as],da[Pn])}),Sa=0,an=sn?(Cn-Ti*Jo)/sn:0;Sa<Ti;++Sa,$n=Lo)ai=Mn[Sa],zo=On[ai],Lo=$n+(zo>0?zo*an:0)+Jo,On[ai]={data:da[ai],index:Sa,value:zo,startAngle:$n,endAngle:Lo,padAngle:Xi};return On}return Ca.value=function(da){return arguments.length?(kt=typeof da=="function"?da:A(+da),Ca):kt},Ca.sortValues=function(da){return arguments.length?(ir=da,mr=null,Ca):ir},Ca.sort=function(da){return arguments.length?(mr=da,ir=null,Ca):mr},Ca.startAngle=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.endAngle=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.padAngle=function(da){return arguments.length?(Ba=typeof da=="function"?da:A(+da),Ca):Ba},Ca}var O=N(u);function I(kt){this._curve=kt}I.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(kt,ir){this._curve.point(ir*Math.sin(kt),ir*-Math.cos(kt))}};function N(kt){function ir(mr){return new I(kt(mr))}return ir._curve=kt,ir}function U(kt){var ir=kt.curve;return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt.curve=function(mr){return arguments.length?ir(N(mr)):ir()._curve},kt}function W(){return U(P().curve(O))}function Q(){var kt=L().curve(O),ir=kt.curve,mr=kt.lineX0,$r=kt.lineX1,ma=kt.lineY0,Ba=kt.lineY1;return kt.angle=kt.x,delete kt.x,kt.startAngle=kt.x0,delete kt.x0,kt.endAngle=kt.x1,delete kt.x1,kt.radius=kt.y,delete kt.y,kt.innerRadius=kt.y0,delete kt.y0,kt.outerRadius=kt.y1,delete kt.y1,kt.lineStartAngle=function(){return U(mr())},delete kt.lineX0,kt.lineEndAngle=function(){return U($r())},delete kt.lineX1,kt.lineInnerRadius=function(){return U(ma())},delete kt.lineY0,kt.lineOuterRadius=function(){return U(Ba())},delete kt.lineY1,kt.curve=function(Ca){return arguments.length?ir(N(Ca)):ir()._curve},kt}function ue(kt,ir){return[(ir=+ir)*Math.cos(kt-=Math.PI/2),ir*Math.sin(kt)]}var se=Array.prototype.slice;function he(kt){return kt.source}function G(kt){return kt.target}function $(kt){var ir=he,mr=G,$r=y,ma=f,Ba=null;function Ca(){var da,Sa=se.call(arguments),Ti=ir.apply(this,Sa),ai=mr.apply(this,Sa);if(Ba||(Ba=da=x.path()),kt(Ba,+$r.apply(this,(Sa[0]=Ti,Sa)),+ma.apply(this,Sa),+$r.apply(this,(Sa[0]=ai,Sa)),+ma.apply(this,Sa)),da)return Ba=null,da+""||null}return Ca.source=function(da){return arguments.length?(ir=da,Ca):ir},Ca.target=function(da){return arguments.length?(mr=da,Ca):mr},Ca.x=function(da){return arguments.length?($r=typeof da=="function"?da:A(+da),Ca):$r},Ca.y=function(da){return arguments.length?(ma=typeof da=="function"?da:A(+da),Ca):ma},Ca.context=function(da){return arguments.length?(Ba=da??null,Ca):Ba},Ca}function J(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir=(ir+$r)/2,mr,ir,ma,$r,ma)}function Z(kt,ir,mr,$r,ma){kt.moveTo(ir,mr),kt.bezierCurveTo(ir,mr=(mr+ma)/2,$r,mr,$r,ma)}function re(kt,ir,mr,$r,ma){var Ba=ue(ir,mr),Ca=ue(ir,mr=(mr+ma)/2),da=ue($r,mr),Sa=ue($r,ma);kt.moveTo(Ba[0],Ba[1]),kt.bezierCurveTo(Ca[0],Ca[1],da[0],da[1],Sa[0],Sa[1])}function ne(){return $(J)}function j(){return $(Z)}function ee(){var kt=$(re);return kt.angle=kt.x,delete kt.x,kt.radius=kt.y,delete kt.y,kt}var ie={draw:function(kt,ir){var mr=Math.sqrt(ir/s);kt.moveTo(mr,0),kt.arc(0,0,mr,0,h)}},fe={draw:function(kt,ir){var mr=Math.sqrt(ir/5)/2;kt.moveTo(-3*mr,-mr),kt.lineTo(-mr,-mr),kt.lineTo(-mr,-3*mr),kt.lineTo(mr,-3*mr),kt.lineTo(mr,-mr),kt.lineTo(3*mr,-mr),kt.lineTo(3*mr,mr),kt.lineTo(mr,mr),kt.lineTo(mr,3*mr),kt.lineTo(-mr,3*mr),kt.lineTo(-mr,mr),kt.lineTo(-3*mr,mr),kt.closePath()}},be=Math.sqrt(1/3),Ae=be*2,Be={draw:function(kt,ir){var mr=Math.sqrt(ir/Ae),$r=mr*be;kt.moveTo(0,-mr),kt.lineTo($r,0),kt.lineTo(0,mr),kt.lineTo(-$r,0),kt.closePath()}},Ie=.8908130915292852,Ze=Math.sin(s/10)/Math.sin(7*s/10),at=Math.sin(h/10)*Ze,it=-Math.cos(h/10)*Ze,et={draw:function(kt,ir){var mr=Math.sqrt(ir*Ie),$r=at*mr,ma=it*mr;kt.moveTo(0,-mr),kt.lineTo($r,ma);for(var Ba=1;Ba<5;++Ba){var Ca=h*Ba/5,da=Math.cos(Ca),Sa=Math.sin(Ca);kt.lineTo(Sa*mr,-da*mr),kt.lineTo(da*$r-Sa*ma,Sa*$r+da*ma)}kt.closePath()}},lt={draw:function(kt,ir){var mr=Math.sqrt(ir),$r=-mr/2;kt.rect($r,$r,mr,mr)}},Me=Math.sqrt(3),ge={draw:function(kt,ir){var mr=-Math.sqrt(ir/(Me*3));kt.moveTo(0,mr*2),kt.lineTo(-Me*mr,-mr),kt.lineTo(Me*mr,-mr),kt.closePath()}},ce=-.5,ze=Math.sqrt(3)/2,tt=1/Math.sqrt(12),nt=(tt/2+1)*3,Qe={draw:function(kt,ir){var mr=Math.sqrt(ir/nt),$r=mr/2,ma=mr*tt,Ba=$r,Ca=mr*tt+mr,da=-Ba,Sa=Ca;kt.moveTo($r,ma),kt.lineTo(Ba,Ca),kt.lineTo(da,Sa),kt.lineTo(ce*$r-ze*ma,ze*$r+ce*ma),kt.lineTo(ce*Ba-ze*Ca,ze*Ba+ce*Ca),kt.lineTo(ce*da-ze*Sa,ze*da+ce*Sa),kt.lineTo(ce*$r+ze*ma,ce*ma-ze*$r),kt.lineTo(ce*Ba+ze*Ca,ce*Ca-ze*Ba),kt.lineTo(ce*da+ze*Sa,ce*Sa-ze*da),kt.closePath()}},Ct=[ie,fe,Be,lt,et,ge,Qe];function St(){var kt=A(ie),ir=A(64),mr=null;function $r(){var ma;if(mr||(mr=ma=x.path()),kt.apply(this,arguments).draw(mr,+ir.apply(this,arguments)),ma)return mr=null,ma+""||null}return $r.type=function(ma){return arguments.length?(kt=typeof ma=="function"?ma:A(ma),$r):kt},$r.size=function(ma){return arguments.length?(ir=typeof ma=="function"?ma:A(+ma),$r):ir},$r.context=function(ma){return arguments.length?(mr=ma??null,$r):mr},$r}function Ot(){}function jt(kt,ir,mr){kt._context.bezierCurveTo((2*kt._x0+kt._x1)/3,(2*kt._y0+kt._y1)/3,(kt._x0+2*kt._x1)/3,(kt._y0+2*kt._y1)/3,(kt._x0+4*kt._x1+ir)/6,(kt._y0+4*kt._y1+mr)/6)}function ur(kt){this._context=kt}ur.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:jt(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);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:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function ar(kt){return new ur(kt)}function Cr(kt){this._context=kt}Cr.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x2=kt,this._y2=ir;break;case 1:this._point=2,this._x3=kt,this._y3=ir;break;case 2:this._point=3,this._x4=kt,this._y4=ir,this._context.moveTo((this._x0+4*this._x1+kt)/6,(this._y0+4*this._y1+ir)/6);break;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function vr(kt){return new Cr(kt)}function _r(kt){this._context=kt}_r.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var mr=(this._x0+4*this._x1+kt)/6,$r=(this._y0+4*this._y1+ir)/6;this._line?this._context.lineTo(mr,$r):this._context.moveTo(mr,$r);break;case 3:this._point=4;default:jt(this,kt,ir);break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir}};function yt(kt){return new _r(kt)}function Fe(kt,ir){this._basis=new ur(kt),this._beta=ir}Fe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length-1;if(mr>0)for(var $r=kt[0],ma=ir[0],Ba=kt[mr]-$r,Ca=ir[mr]-ma,da=-1,Sa;++da<=mr;)Sa=da/mr,this._basis.point(this._beta*kt[da]+(1-this._beta)*($r+Sa*Ba),this._beta*ir[da]+(1-this._beta)*(ma+Sa*Ca));this._x=this._y=null,this._basis.lineEnd()},point:function(kt,ir){this._x.push(+kt),this._y.push(+ir)}};var Ke=function kt(ir){function mr($r){return ir===1?new ur($r):new Fe($r,ir)}return mr.beta=function($r){return kt(+$r)},mr}(.85);function Ne(kt,ir,mr){kt._context.bezierCurveTo(kt._x1+kt._k*(kt._x2-kt._x0),kt._y1+kt._k*(kt._y2-kt._y0),kt._x2+kt._k*(kt._x1-ir),kt._y2+kt._k*(kt._y1-mr),kt._x2,kt._y2)}function Ee(kt,ir){this._context=kt,this._k=(1-ir)/6}Ee.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:Ne(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2,this._x1=kt,this._y1=ir;break;case 2:this._point=3;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Ve=function kt(ir){function mr($r){return new Ee($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function ke(kt,ir){this._context=kt,this._k=(1-ir)/6}ke.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Te=function kt(ir){function mr($r){return new ke($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function Le(kt,ir){this._context=kt,this._k=(1-ir)/6}Le.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){switch(kt=+kt,ir=+ir,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:Ne(this,kt,ir);break}this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var rt=function kt(ir){function mr($r){return new Le($r,ir)}return mr.tension=function($r){return kt(+$r)},mr}(0);function dt(kt,ir,mr){var $r=kt._x1,ma=kt._y1,Ba=kt._x2,Ca=kt._y2;if(kt._l01_a>n){var da=2*kt._l01_2a+3*kt._l01_a*kt._l12_a+kt._l12_2a,Sa=3*kt._l01_a*(kt._l01_a+kt._l12_a);$r=($r*da-kt._x0*kt._l12_2a+kt._x2*kt._l01_2a)/Sa,ma=(ma*da-kt._y0*kt._l12_2a+kt._y2*kt._l01_2a)/Sa}if(kt._l23_a>n){var Ti=2*kt._l23_2a+3*kt._l23_a*kt._l12_a+kt._l12_2a,ai=3*kt._l23_a*(kt._l23_a+kt._l12_a);Ba=(Ba*Ti+kt._x1*kt._l23_2a-ir*kt._l12_2a)/ai,Ca=(Ca*Ti+kt._y1*kt._l23_2a-mr*kt._l12_2a)/ai}kt._context.bezierCurveTo($r,ma,Ba,Ca,kt._x2,kt._y2)}function xt(kt,ir){this._context=kt,this._alpha=ir}xt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var It=function kt(ir){function mr($r){return ir?new xt($r,ir):new Ee($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Bt(kt,ir){this._context=kt,this._alpha=ir}Bt.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=kt,this._y3=ir;break;case 1:this._point=2,this._context.moveTo(this._x4=kt,this._y4=ir);break;case 2:this._point=3,this._x5=kt,this._y5=ir;break;default:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var Gt=function kt(ir){function mr($r){return ir?new Bt($r,ir):new ke($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function Kt(kt,ir){this._context=kt,this._alpha=ir}Kt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){if(kt=+kt,ir=+ir,this._point){var mr=this._x2-kt,$r=this._y2-ir;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(mr*mr+$r*$r,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:dt(this,kt,ir);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=kt,this._y0=this._y1,this._y1=this._y2,this._y2=ir}};var sr=function kt(ir){function mr($r){return ir?new Kt($r,ir):new Le($r,0)}return mr.alpha=function($r){return kt(+$r)},mr}(.5);function sa(kt){this._context=kt}sa.prototype={areaStart:Ot,areaEnd:Ot,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(kt,ir){kt=+kt,ir=+ir,this._point?this._context.lineTo(kt,ir):(this._point=1,this._context.moveTo(kt,ir))}};function Aa(kt){return new sa(kt)}function La(kt){return kt<0?-1:1}function ka(kt,ir,mr){var $r=kt._x1-kt._x0,ma=ir-kt._x1,Ba=(kt._y1-kt._y0)/($r||ma<0&&-0),Ca=(mr-kt._y1)/(ma||$r<0&&-0),da=(Ba*ma+Ca*$r)/($r+ma);return(La(Ba)+La(Ca))*Math.min(Math.abs(Ba),Math.abs(Ca),.5*Math.abs(da))||0}function Ga(kt,ir){var mr=kt._x1-kt._x0;return mr?(3*(kt._y1-kt._y0)/mr-ir)/2:ir}function Ma(kt,ir,mr){var $r=kt._x0,ma=kt._y0,Ba=kt._x1,Ca=kt._y1,da=(Ba-$r)/3;kt._context.bezierCurveTo($r+da,ma+da*ir,Ba-da,Ca-da*mr,Ba,Ca)}function Ua(kt){this._context=kt}Ua.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Ma(this,this._t0,Ga(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(kt,ir){var mr=NaN;if(kt=+kt,ir=+ir,!(kt===this._x1&&ir===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;break;case 2:this._point=3,Ma(this,Ga(this,mr=ka(this,kt,ir)),mr);break;default:Ma(this,this._t0,mr=ka(this,kt,ir));break}this._x0=this._x1,this._x1=kt,this._y0=this._y1,this._y1=ir,this._t0=mr}}};function ni(kt){this._context=new Wt(kt)}(ni.prototype=Object.create(Ua.prototype)).point=function(kt,ir){Ua.prototype.point.call(this,ir,kt)};function Wt(kt){this._context=kt}Wt.prototype={moveTo:function(kt,ir){this._context.moveTo(ir,kt)},closePath:function(){this._context.closePath()},lineTo:function(kt,ir){this._context.lineTo(ir,kt)},bezierCurveTo:function(kt,ir,mr,$r,ma,Ba){this._context.bezierCurveTo(ir,kt,$r,mr,Ba,ma)}};function zt(kt){return new Ua(kt)}function Vt(kt){return new ni(kt)}function Ut(kt){this._context=kt}Ut.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var kt=this._x,ir=this._y,mr=kt.length;if(mr)if(this._line?this._context.lineTo(kt[0],ir[0]):this._context.moveTo(kt[0],ir[0]),mr===2)this._context.lineTo(kt[1],ir[1]);else for(var $r=xr(kt),ma=xr(ir),Ba=0,Ca=1;Ca<mr;++Ba,++Ca)this._context.bezierCurveTo($r[0][Ba],ma[0][Ba],$r[1][Ba],ma[1][Ba],kt[Ca],ir[Ca]);(this._line||this._line!==0&&mr===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(kt,ir){this._x.push(+kt),this._y.push(+ir)}};function xr(kt){var ir,mr=kt.length-1,$r,ma=new Array(mr),Ba=new Array(mr),Ca=new Array(mr);for(ma[0]=0,Ba[0]=2,Ca[0]=kt[0]+2*kt[1],ir=1;ir<mr-1;++ir)ma[ir]=1,Ba[ir]=4,Ca[ir]=4*kt[ir]+2*kt[ir+1];for(ma[mr-1]=2,Ba[mr-1]=7,Ca[mr-1]=8*kt[mr-1]+kt[mr],ir=1;ir<mr;++ir)$r=ma[ir]/Ba[ir-1],Ba[ir]-=$r,Ca[ir]-=$r*Ca[ir-1];for(ma[mr-1]=Ca[mr-1]/Ba[mr-1],ir=mr-2;ir>=0;--ir)ma[ir]=(Ca[ir]-ma[ir+1])/Ba[ir];for(Ba[mr-1]=(kt[mr]+ma[mr-1])/2,ir=0;ir<mr-1;++ir)Ba[ir]=2*kt[ir+1]-ma[ir+1];return[ma,Ba]}function Zr(kt){return new Ut(kt)}function pa(kt,ir){this._context=kt,this._t=ir}pa.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(kt,ir){switch(kt=+kt,ir=+ir,this._point){case 0:this._point=1,this._line?this._context.lineTo(kt,ir):this._context.moveTo(kt,ir);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,ir),this._context.lineTo(kt,ir);else{var mr=this._x*(1-this._t)+kt*this._t;this._context.lineTo(mr,this._y),this._context.lineTo(mr,ir)}break}}this._x=kt,this._y=ir}};function Xr(kt){return new pa(kt,.5)}function Ea(kt){return new pa(kt,0)}function Fa(kt){return new pa(kt,1)}function qa(kt,ir){if((Ca=kt.length)>1)for(var mr=1,$r,ma,Ba=kt[ir[0]],Ca,da=Ba.length;mr<Ca;++mr)for(ma=Ba,Ba=kt[ir[mr]],$r=0;$r<da;++$r)Ba[$r][1]+=Ba[$r][0]=isNaN(ma[$r][1])?ma[$r][0]:ma[$r][1]}function ya(kt){for(var ir=kt.length,mr=new Array(ir);--ir>=0;)mr[ir]=ir;return mr}function $a(kt,ir){return kt[ir]}function mt(){var kt=A([]),ir=ya,mr=qa,$r=$a;function ma(Ba){var Ca=kt.apply(this,arguments),da,Sa=Ba.length,Ti=Ca.length,ai=new Array(Ti),an;for(da=0;da<Ti;++da){for(var sn=Ca[da],Mn=ai[da]=new Array(Sa),On=0,$n;On<Sa;++On)Mn[On]=$n=[0,+$r(Ba[On],sn,On,Ba)],$n.data=Ba[On];Mn.key=sn}for(da=0,an=ir(ai);da<Ti;++da)ai[an[da]].index=da;return mr(ai,an),ai}return ma.keys=function(Ba){return arguments.length?(kt=typeof Ba=="function"?Ba:A(se.call(Ba)),ma):kt},ma.value=function(Ba){return arguments.length?($r=typeof Ba=="function"?Ba:A(+Ba),ma):$r},ma.order=function(Ba){return arguments.length?(ir=Ba==null?ya:typeof Ba=="function"?Ba:A(se.call(Ba)),ma):ir},ma.offset=function(Ba){return arguments.length?(mr=Ba??qa,ma):mr},ma}function gt(kt,ir){if(($r=kt.length)>0){for(var mr,$r,ma=0,Ba=kt[0].length,Ca;ma<Ba;++ma){for(Ca=mr=0;mr<$r;++mr)Ca+=kt[mr][ma][1]||0;if(Ca)for(mr=0;mr<$r;++mr)kt[mr][ma][1]/=Ca}qa(kt,ir)}}function Er(kt,ir){if((Sa=kt.length)>0)for(var mr,$r=0,ma,Ba,Ca,da,Sa,Ti=kt[ir[0]].length;$r<Ti;++$r)for(Ca=da=0,mr=0;mr<Sa;++mr)(Ba=(ma=kt[ir[mr]][$r])[1]-ma[0])>0?(ma[0]=Ca,ma[1]=Ca+=Ba):Ba<0?(ma[1]=da,ma[0]=da+=Ba):(ma[0]=0,ma[1]=Ba)}function kr(kt,ir){if((ma=kt.length)>0){for(var mr=0,$r=kt[ir[0]],ma,Ba=$r.length;mr<Ba;++mr){for(var Ca=0,da=0;Ca<ma;++Ca)da+=kt[Ca][mr][1]||0;$r[mr][1]+=$r[mr][0]=-da/2}qa(kt,ir)}}function br(kt,ir){if(!(!((Ca=kt.length)>0)||!((Ba=(ma=kt[ir[0]]).length)>0))){for(var mr=0,$r=1,ma,Ba,Ca;$r<Ba;++$r){for(var da=0,Sa=0,Ti=0;da<Ca;++da){for(var ai=kt[ir[da]],an=ai[$r][1]||0,sn=ai[$r-1][1]||0,Mn=(an-sn)/2,On=0;On<da;++On){var $n=kt[ir[On]],Cn=$n[$r][1]||0,Lo=$n[$r-1][1]||0;Mn+=Cn-Lo}Sa+=an,Ti+=Mn*an}ma[$r-1][1]+=ma[$r-1][0]=mr,Sa&&(mr-=Ti/Sa)}ma[$r-1][1]+=ma[$r-1][0]=mr,qa(kt,ir)}}function Tr(kt){var ir=kt.map(Mr);return ya(kt).sort(function(mr,$r){return ir[mr]-ir[$r]})}function Mr(kt){for(var ir=-1,mr=0,$r=kt.length,ma,Ba=-1/0;++ir<$r;)(ma=+kt[ir][1])>Ba&&(Ba=ma,mr=ir);return mr}function Fr(kt){var ir=kt.map(Lr);return ya(kt).sort(function(mr,$r){return ir[mr]-ir[$r]})}function Lr(kt){for(var ir=0,mr=-1,$r=kt.length,ma;++mr<$r;)(ma=+kt[mr][1])&&(ir+=ma);return ir}function Jr(kt){return Fr(kt).reverse()}function oa(kt){var ir=kt.length,mr,$r,ma=kt.map(Lr),Ba=Tr(kt),Ca=0,da=0,Sa=[],Ti=[];for(mr=0;mr<ir;++mr)$r=Ba[mr],Ca<da?(Ca+=ma[$r],Sa.push($r)):(da+=ma[$r],Ti.push($r));return Ti.reverse().concat(Sa)}function ca(kt){return ya(kt).reverse()}g.arc=b,g.area=L,g.areaRadial=Q,g.curveBasis=ar,g.curveBasisClosed=vr,g.curveBasisOpen=yt,g.curveBundle=Ke,g.curveCardinal=Ve,g.curveCardinalClosed=Te,g.curveCardinalOpen=rt,g.curveCatmullRom=It,g.curveCatmullRomClosed=Gt,g.curveCatmullRomOpen=sr,g.curveLinear=u,g.curveLinearClosed=Aa,g.curveMonotoneX=zt,g.curveMonotoneY=Vt,g.curveNatural=Zr,g.curveStep=Xr,g.curveStepAfter=Fa,g.curveStepBefore=Ea,g.line=P,g.lineRadial=W,g.linkHorizontal=ne,g.linkRadial=ee,g.linkVertical=j,g.pie=B,g.pointRadial=ue,g.radialArea=Q,g.radialLine=W,g.stack=mt,g.stackOffsetDiverging=Er,g.stackOffsetExpand=gt,g.stackOffsetNone=qa,g.stackOffsetSilhouette=kr,g.stackOffsetWiggle=br,g.stackOrderAppearance=Tr,g.stackOrderAscending=Fr,g.stackOrderDescending=Jr,g.stackOrderInsideOut=oa,g.stackOrderNone=ya,g.stackOrderReverse=ca,g.symbol=St,g.symbolCircle=ie,g.symbolCross=fe,g.symbolDiamond=Be,g.symbolSquare=lt,g.symbolStar=et,g.symbolTriangle=ge,g.symbolWye=Qe,g.symbols=Ct,Object.defineProperty(g,"__esModule",{value:!0})})}}),Zq=Ye({"node_modules/@plotly/d3-sankey/build/d3-sankey.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx(),CT(),zk()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3)})(X,function(g,x,A,M){"use strict";function e(u){return u.target.depth}function t(u){return u.depth}function r(u,y){return y-1-u.height}function o(u,y){return u.sourceLinks.length?u.depth:y-1}function a(u){return u.targetLinks.length?u.depth:u.sourceLinks.length?x.min(u.sourceLinks,e)-1:0}function i(u){return function(){return u}}function n(u,y){return c(u.source,y.source)||u.index-y.index}function s(u,y){return c(u.target,y.target)||u.index-y.index}function c(u,y){return u.y0-y.y0}function h(u){return u.value}function v(u){return(u.y0+u.y1)/2}function p(u){return v(u.source)*u.value}function T(u){return v(u.target)*u.value}function l(u){return u.index}function _(u){return u.nodes}function w(u){return u.links}function S(u,y){var f=u.get(y);if(!f)throw new Error("missing: "+y);return f}var E=function(){var u=0,y=0,f=1,P=1,L=24,z=8,F=l,B=o,O=_,I=w,N=32,U=2/3;function W(){var $={nodes:O.apply(null,arguments),links:I.apply(null,arguments)};return Q($),ue($),se($),he($,N),G($),$}W.update=function($){return G($),$},W.nodeId=function($){return arguments.length?(F=typeof $=="function"?$:i($),W):F},W.nodeAlign=function($){return arguments.length?(B=typeof $=="function"?$:i($),W):B},W.nodeWidth=function($){return arguments.length?(L=+$,W):L},W.nodePadding=function($){return arguments.length?(z=+$,W):z},W.nodes=function($){return arguments.length?(O=typeof $=="function"?$:i($),W):O},W.links=function($){return arguments.length?(I=typeof $=="function"?$:i($),W):I},W.size=function($){return arguments.length?(u=y=0,f=+$[0],P=+$[1],W):[f-u,P-y]},W.extent=function($){return arguments.length?(u=+$[0][0],f=+$[1][0],y=+$[0][1],P=+$[1][1],W):[[u,y],[f,P]]},W.iterations=function($){return arguments.length?(N=+$,W):N};function Q($){$.nodes.forEach(function(Z,re){Z.index=re,Z.sourceLinks=[],Z.targetLinks=[]});var J=A.map($.nodes,F);$.links.forEach(function(Z,re){Z.index=re;var ne=Z.source,j=Z.target;typeof ne!="object"&&(ne=Z.source=S(J,ne)),typeof j!="object"&&(j=Z.target=S(J,j)),ne.sourceLinks.push(Z),j.targetLinks.push(Z)})}function ue($){$.nodes.forEach(function(J){J.value=Math.max(x.sum(J.sourceLinks,h),x.sum(J.targetLinks,h))})}function se($){var J,Z,re;for(J=$.nodes,Z=[],re=0;J.length;++re,J=Z,Z=[])J.forEach(function(j){j.depth=re,j.sourceLinks.forEach(function(ee){Z.indexOf(ee.target)<0&&Z.push(ee.target)})});for(J=$.nodes,Z=[],re=0;J.length;++re,J=Z,Z=[])J.forEach(function(j){j.height=re,j.targetLinks.forEach(function(ee){Z.indexOf(ee.source)<0&&Z.push(ee.source)})});var ne=(f-u-L)/(re-1);$.nodes.forEach(function(j){j.x1=(j.x0=u+Math.max(0,Math.min(re-1,Math.floor(B.call(null,j,re))))*ne)+L})}function he($){var J=A.nest().key(function(fe){return fe.x0}).sortKeys(x.ascending).entries($.nodes).map(function(fe){return fe.values});ne(),ie();for(var Z=1,re=N;re>0;--re)ee(Z*=.99),ie(),j(Z),ie();function ne(){var fe=x.max(J,function(Be){return Be.length}),be=U*(P-y)/(fe-1);z>be&&(z=be);var Ae=x.min(J,function(Be){return(P-y-(Be.length-1)*z)/x.sum(Be,h)});J.forEach(function(Be){Be.forEach(function(Ie,Ze){Ie.y1=(Ie.y0=Ze)+Ie.value*Ae})}),$.links.forEach(function(Be){Be.width=Be.value*Ae})}function j(fe){J.forEach(function(be){be.forEach(function(Ae){if(Ae.targetLinks.length){var Be=(x.sum(Ae.targetLinks,p)/x.sum(Ae.targetLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ee(fe){J.slice().reverse().forEach(function(be){be.forEach(function(Ae){if(Ae.sourceLinks.length){var Be=(x.sum(Ae.sourceLinks,T)/x.sum(Ae.sourceLinks,h)-v(Ae))*fe;Ae.y0+=Be,Ae.y1+=Be}})})}function ie(){J.forEach(function(fe){var be,Ae,Be=y,Ie=fe.length,Ze;for(fe.sort(c),Ze=0;Ze<Ie;++Ze)be=fe[Ze],Ae=Be-be.y0,Ae>0&&(be.y0+=Ae,be.y1+=Ae),Be=be.y1+z;if(Ae=Be-z-P,Ae>0)for(Be=be.y0-=Ae,be.y1-=Ae,Ze=Ie-2;Ze>=0;--Ze)be=fe[Ze],Ae=be.y1+z-Be,Ae>0&&(be.y0-=Ae,be.y1-=Ae),Be=be.y0})}}function G($){$.nodes.forEach(function(J){J.sourceLinks.sort(s),J.targetLinks.sort(n)}),$.nodes.forEach(function(J){var Z=J.y0,re=Z;J.sourceLinks.forEach(function(ne){ne.y0=Z+ne.width/2,Z+=ne.width}),J.targetLinks.forEach(function(ne){ne.y1=re+ne.width/2,re+=ne.width})})}return W};function m(u){return[u.source.x1,u.y0]}function b(u){return[u.target.x0,u.y1]}var d=function(){return M.linkHorizontal().source(m).target(b)};g.sankey=E,g.sankeyCenter=a,g.sankeyLeft=t,g.sankeyRight=r,g.sankeyJustify=o,g.sankeyLinkHorizontal=d,Object.defineProperty(g,"__esModule",{value:!0})})}}),Xq=Ye({"node_modules/elementary-circuits-directed-graph/johnson.js"(X,H){var g=Dk();H.exports=function(A,M){var e=[],t=[],r=[],o={},a=[],i;function n(S){r[S]=!1,o.hasOwnProperty(S)&&Object.keys(o[S]).forEach(function(E){delete o[S][E],r[E]&&n(E)})}function s(S){var E=!1;t.push(S),r[S]=!0;var m,b;for(m=0;m<a[S].length;m++)b=a[S][m],b===i?(c(i,t),E=!0):r[b]||(E=s(b));if(E)n(S);else for(m=0;m<a[S].length;m++){b=a[S][m];var d=o[b];d||(d={},o[b]=d),d[b]=!0}return t.pop(),E}function c(S,E){var m=[].concat(E).concat(S);M?M(s):e.push(m)}function h(S){for(var E=0;E<A.length;E++)E<S&&(A[E]=[]),A[E]=A[E].filter(function(m){return m>=S})}function v(S){h(S);for(var E=A,m=g(E),b=m.components.filter(function(z){return z.length>1}),d=1/0,u,y=0;y<b.length;y++)for(var f=0;f<b[y].length;f++)b[y][f]<d&&(d=b[y][f],u=y);var P=b[u];if(!P)return!1;var L=A.map(function(z,F){return P.indexOf(F)===-1?[]:z.filter(function(B){return P.indexOf(B)!==-1})});return{leastVertex:d,adjList:L}}i=0;for(var p=A.length;i<p;){var T=v(i);if(i=T.leastVertex,a=T.adjList,a){for(var l=0;l<a.length;l++)for(var _=0;_<a[l].length;_++){var w=a[l][_];r[+w]=!1,o[w]={}}s(i),i=i+1}else i=p}if(!M)return e}}}),Yq=Ye({"node_modules/@plotly/d3-sankey-circular/dist/d3-sankey-circular.js"(X,H){(function(g,x){typeof X=="object"&&typeof H<"u"?x(X,gx(),CT(),zk(),Xq()):x(g.d3=g.d3||{},g.d3,g.d3,g.d3,null)})(X,function(g,x,A,M,e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;function t(Ie){return Ie.target.depth}function r(Ie){return Ie.depth}function o(Ie,Ze){return Ze-1-Ie.height}function a(Ie,Ze){return Ie.sourceLinks.length?Ie.depth:Ze-1}function i(Ie){return Ie.targetLinks.length?Ie.depth:Ie.sourceLinks.length?x.min(Ie.sourceLinks,t)-1:0}function n(Ie){return function(){return Ie}}var s=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(Ie){return typeof Ie}:function(Ie){return Ie&&typeof Symbol=="function"&&Ie.constructor===Symbol&&Ie!==Symbol.prototype?"symbol":typeof Ie};function c(Ie,Ze){return v(Ie.source,Ze.source)||Ie.index-Ze.index}function h(Ie,Ze){return v(Ie.target,Ze.target)||Ie.index-Ze.index}function v(Ie,Ze){return Ie.partOfCycle===Ze.partOfCycle?Ie.y0-Ze.y0:Ie.circularLinkType==="top"||Ze.circularLinkType==="bottom"?-1:1}function p(Ie){return Ie.value}function T(Ie){return(Ie.y0+Ie.y1)/2}function l(Ie){return T(Ie.source)}function _(Ie){return T(Ie.target)}function w(Ie){return Ie.index}function S(Ie){return Ie.nodes}function E(Ie){return Ie.links}function m(Ie,Ze){var at=Ie.get(Ze);if(!at)throw new Error("missing: "+Ze);return at}function b(Ie,Ze){return Ze(Ie)}var d=25,u=10,y=.3;function f(){var Ie=0,Ze=0,at=1,it=1,et=24,lt,Me=w,ge=a,ce=S,ze=E,tt=32,nt=2,Qe,Ct=null;function St(){var yt={nodes:ce.apply(null,arguments),links:ze.apply(null,arguments)};Ot(yt),P(yt,Me,Ct),jt(yt),Cr(yt),L(yt,Me),vr(yt,tt,Me),_r(yt);for(var Fe=4,Ke=0;Ke<Fe;Ke++)ee(yt,it,Me),ie(yt,it,Me),re(yt,Ze,it,Me),ee(yt,it,Me),ie(yt,it,Me);return Be(yt,Ze,it),N(yt,nt,it,Me),yt}St.nodeId=function(yt){return arguments.length?(Me=typeof yt=="function"?yt:n(yt),St):Me},St.nodeAlign=function(yt){return arguments.length?(ge=typeof yt=="function"?yt:n(yt),St):ge},St.nodeWidth=function(yt){return arguments.length?(et=+yt,St):et},St.nodePadding=function(yt){return arguments.length?(lt=+yt,St):lt},St.nodes=function(yt){return arguments.length?(ce=typeof yt=="function"?yt:n(yt),St):ce},St.links=function(yt){return arguments.length?(ze=typeof yt=="function"?yt:n(yt),St):ze},St.size=function(yt){return arguments.length?(Ie=Ze=0,at=+yt[0],it=+yt[1],St):[at-Ie,it-Ze]},St.extent=function(yt){return arguments.length?(Ie=+yt[0][0],at=+yt[1][0],Ze=+yt[0][1],it=+yt[1][1],St):[[Ie,Ze],[at,it]]},St.iterations=function(yt){return arguments.length?(tt=+yt,St):tt},St.circularLinkGap=function(yt){return arguments.length?(nt=+yt,St):nt},St.nodePaddingRatio=function(yt){return arguments.length?(Qe=+yt,St):Qe},St.sortNodes=function(yt){return arguments.length?(Ct=yt,St):Ct},St.update=function(yt){return L(yt,Me),_r(yt),yt.links.forEach(function(Fe){Fe.circular&&(Fe.circularLinkType=Fe.y0+Fe.y1<it?"top":"bottom",Fe.source.circularLinkType=Fe.circularLinkType,Fe.target.circularLinkType=Fe.circularLinkType)}),ee(yt,it,Me,!1),ie(yt,it,Me),N(yt,nt,it,Me),yt};function Ot(yt){yt.nodes.forEach(function(Ke,Ne){Ke.index=Ne,Ke.sourceLinks=[],Ke.targetLinks=[]});var Fe=A.map(yt.nodes,Me);return yt.links.forEach(function(Ke,Ne){Ke.index=Ne;var Ee=Ke.source,Ve=Ke.target;(typeof Ee>"u"?"undefined":s(Ee))!=="object"&&(Ee=Ke.source=m(Fe,Ee)),(typeof Ve>"u"?"undefined":s(Ve))!=="object"&&(Ve=Ke.target=m(Fe,Ve)),Ee.sourceLinks.push(Ke),Ve.targetLinks.push(Ke)}),yt}function jt(yt){yt.nodes.forEach(function(Fe){Fe.partOfCycle=!1,Fe.value=Math.max(x.sum(Fe.sourceLinks,p),x.sum(Fe.targetLinks,p)),Fe.sourceLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)}),Fe.targetLinks.forEach(function(Ke){Ke.circular&&(Fe.partOfCycle=!0,Fe.circularLinkType=Ke.circularLinkType)})})}function ur(yt){var Fe=0,Ke=0,Ne=0,Ee=0,Ve=x.max(yt.nodes,function(ke){return ke.column});return yt.links.forEach(function(ke){ke.circular&&(ke.circularLinkType=="top"?Fe=Fe+ke.width:Ke=Ke+ke.width,ke.target.column==0&&(Ee=Ee+ke.width),ke.source.column==Ve&&(Ne=Ne+ke.width))}),Fe=Fe>0?Fe+d+u:Fe,Ke=Ke>0?Ke+d+u:Ke,Ne=Ne>0?Ne+d+u:Ne,Ee=Ee>0?Ee+d+u:Ee,{top:Fe,bottom:Ke,left:Ee,right:Ne}}function ar(yt,Fe){var Ke=x.max(yt.nodes,function(rt){return rt.column}),Ne=at-Ie,Ee=it-Ze,Ve=Ne+Fe.right+Fe.left,ke=Ee+Fe.top+Fe.bottom,Te=Ne/Ve,Le=Ee/ke;return Ie=Ie*Te+Fe.left,at=Fe.right==0?at:at*Te,Ze=Ze*Le+Fe.top,it=it*Le,yt.nodes.forEach(function(rt){rt.x0=Ie+rt.column*((at-Ie-et)/Ke),rt.x1=rt.x0+et}),Le}function Cr(yt){var Fe,Ke,Ne;for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.depth=Ne,Ee.sourceLinks.forEach(function(Ve){Ke.indexOf(Ve.target)<0&&!Ve.circular&&Ke.push(Ve.target)})});for(Fe=yt.nodes,Ke=[],Ne=0;Fe.length;++Ne,Fe=Ke,Ke=[])Fe.forEach(function(Ee){Ee.height=Ne,Ee.targetLinks.forEach(function(Ve){Ke.indexOf(Ve.source)<0&&!Ve.circular&&Ke.push(Ve.source)})});yt.nodes.forEach(function(Ee){Ee.column=Math.floor(ge.call(null,Ee,Ne))})}function vr(yt,Fe,Ke){var Ne=A.nest().key(function(rt){return rt.column}).sortKeys(x.ascending).entries(yt.nodes).map(function(rt){return rt.values});ke(Ke),Le();for(var Ee=1,Ve=Fe;Ve>0;--Ve)Te(Ee*=.99,Ke),Le();function ke(rt){if(Qe){var dt=1/0;Ne.forEach(function(Gt){var Kt=it*Qe/(Gt.length+1);dt=Kt<dt?Kt:dt}),lt=dt}var xt=x.min(Ne,function(Gt){return(it-Ze-(Gt.length-1)*lt)/x.sum(Gt,p)});xt=xt*y,yt.links.forEach(function(Gt){Gt.width=Gt.value*xt});var It=ur(yt),Bt=ar(yt,It);xt=xt*Bt,yt.links.forEach(function(Gt){Gt.width=Gt.value*xt}),Ne.forEach(function(Gt){var Kt=Gt.length;Gt.forEach(function(sr,sa){sr.depth==Ne.length-1&&Kt==1||sr.depth==0&&Kt==1?(sr.y0=it/2-sr.value*xt,sr.y1=sr.y0+sr.value*xt):sr.partOfCycle?B(sr,rt)==0?(sr.y0=it/2+sa,sr.y1=sr.y0+sr.value*xt):sr.circularLinkType=="top"?(sr.y0=Ze+sa,sr.y1=sr.y0+sr.value*xt):(sr.y0=it-sr.value*xt-sa,sr.y1=sr.y0+sr.value*xt):It.top==0||It.bottom==0?(sr.y0=(it-Ze)/Kt*sa,sr.y1=sr.y0+sr.value*xt):(sr.y0=(it-Ze)/2-Kt/2+sa,sr.y1=sr.y0+sr.value*xt)})})}function Te(rt,dt){var xt=Ne.length;Ne.forEach(function(It){var Bt=It.length,Gt=It[0].depth;It.forEach(function(Kt){var sr;if((Kt.sourceLinks.length||Kt.targetLinks.length)&&!(Kt.partOfCycle&&B(Kt,dt)>0))if(Gt==0&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else if(Gt==xt-1&&Bt==1)sr=Kt.y1-Kt.y0,Kt.y0=it/2-sr/2,Kt.y1=it/2+sr/2;else{var sa=0,Aa=x.mean(Kt.sourceLinks,_),La=x.mean(Kt.targetLinks,l);Aa&&La?sa=(Aa+La)/2:sa=Aa||La;var ka=(sa-T(Kt))*rt;Kt.y0+=ka,Kt.y1+=ka}})})}function Le(){Ne.forEach(function(rt){var dt,xt,It=Ze,Bt=rt.length,Gt;for(rt.sort(v),Gt=0;Gt<Bt;++Gt)dt=rt[Gt],xt=It-dt.y0,xt>0&&(dt.y0+=xt,dt.y1+=xt),It=dt.y1+lt;if(xt=It-lt-it,xt>0)for(It=dt.y0-=xt,dt.y1-=xt,Gt=Bt-2;Gt>=0;--Gt)dt=rt[Gt],xt=dt.y1+lt-It,xt>0&&(dt.y0-=xt,dt.y1-=xt),It=dt.y0})}}function _r(yt){yt.nodes.forEach(function(Fe){Fe.sourceLinks.sort(h),Fe.targetLinks.sort(c)}),yt.nodes.forEach(function(Fe){var Ke=Fe.y0,Ne=Ke,Ee=Fe.y1,Ve=Ee;Fe.sourceLinks.forEach(function(ke){ke.circular?(ke.y0=Ee-ke.width/2,Ee=Ee-ke.width):(ke.y0=Ke+ke.width/2,Ke+=ke.width)}),Fe.targetLinks.forEach(function(ke){ke.circular?(ke.y1=Ve-ke.width/2,Ve=Ve-ke.width):(ke.y1=Ne+ke.width/2,Ne+=ke.width)})})}return St}function P(Ie,Ze,at){var it=0;if(at===null){for(var et=[],lt=0;lt<Ie.links.length;lt++){var Me=Ie.links[lt],ge=Me.source.index,ce=Me.target.index;et[ge]||(et[ge]=[]),et[ce]||(et[ce]=[]),et[ge].indexOf(ce)===-1&&et[ge].push(ce)}var ze=e(et);ze.sort(function(Ct,St){return Ct.length-St.length});var tt={};for(lt=0;lt<ze.length;lt++){var nt=ze[lt],Qe=nt.slice(-2);tt[Qe[0]]||(tt[Qe[0]]={}),tt[Qe[0]][Qe[1]]=!0}Ie.links.forEach(function(Ct){var St=Ct.target.index,Ot=Ct.source.index;St===Ot||tt[Ot]&&tt[Ot][St]?(Ct.circular=!0,Ct.circularLinkID=it,it=it+1):Ct.circular=!1})}else Ie.links.forEach(function(Ct){Ct.source[at]<Ct.target[at]?Ct.circular=!1:(Ct.circular=!0,Ct.circularLinkID=it,it=it+1)})}function L(Ie,Ze){var at=0,it=0;Ie.links.forEach(function(et){et.circular&&(et.source.circularLinkType||et.target.circularLinkType?et.circularLinkType=et.source.circularLinkType?et.source.circularLinkType:et.target.circularLinkType:et.circularLinkType=at<it?"top":"bottom",et.circularLinkType=="top"?at=at+1:it=it+1,Ie.nodes.forEach(function(lt){(b(lt,Ze)==b(et.source,Ze)||b(lt,Ze)==b(et.target,Ze))&&(lt.circularLinkType=et.circularLinkType)}))}),Ie.links.forEach(function(et){et.circular&&(et.source.circularLinkType==et.target.circularLinkType&&(et.circularLinkType=et.source.circularLinkType),Ae(et,Ze)&&(et.circularLinkType=et.source.circularLinkType))})}function z(Ie){var Ze=Math.abs(Ie.y1-Ie.y0),at=Math.abs(Ie.target.x0-Ie.source.x1);return Math.atan(at/Ze)}function F(Ie,Ze){return Ie.source.column<Ze.target.column?!1:!(Ie.target.column>Ze.source.column)}function B(Ie,Ze){var at=0;Ie.sourceLinks.forEach(function(et){at=et.circular&&!Ae(et,Ze)?at+1:at});var it=0;return Ie.targetLinks.forEach(function(et){it=et.circular&&!Ae(et,Ze)?it+1:it}),at+it}function O(Ie){var Ze=Ie.source.sourceLinks,at=0;Ze.forEach(function(lt){at=lt.circular?at+1:at});var it=Ie.target.targetLinks,et=0;return it.forEach(function(lt){et=lt.circular?et+1:et}),!(at>1||et>1)}function I(Ie,Ze,at){return Ie.sort(W),Ie.forEach(function(it,et){var lt=0;if(Ae(it,at)&&O(it))it.circularPathData.verticalBuffer=lt+it.width/2;else{var Me=0;for(Me;Me<et;Me++)if(F(Ie[et],Ie[Me])){var ge=Ie[Me].circularPathData.verticalBuffer+Ie[Me].width/2+Ze;lt=ge>lt?ge:lt}it.circularPathData.verticalBuffer=lt+it.width/2}}),Ie}function N(Ie,Ze,at,it){var et=5,lt=x.min(Ie.links,function(ce){return ce.source.y0});Ie.links.forEach(function(ce){ce.circular&&(ce.circularPathData={})});var Me=Ie.links.filter(function(ce){return ce.circularLinkType=="top"});I(Me,Ze,it);var ge=Ie.links.filter(function(ce){return ce.circularLinkType=="bottom"});I(ge,Ze,it),Ie.links.forEach(function(ce){if(ce.circular){if(ce.circularPathData.arcRadius=ce.width+u,ce.circularPathData.leftNodeBuffer=et,ce.circularPathData.rightNodeBuffer=et,ce.circularPathData.sourceWidth=ce.source.x1-ce.source.x0,ce.circularPathData.sourceX=ce.source.x0+ce.circularPathData.sourceWidth,ce.circularPathData.targetX=ce.target.x0,ce.circularPathData.sourceY=ce.y0,ce.circularPathData.targetY=ce.y1,Ae(ce,it)&&O(ce))ce.circularPathData.leftSmallArcRadius=u+ce.width/2,ce.circularPathData.leftLargeArcRadius=u+ce.width/2,ce.circularPathData.rightSmallArcRadius=u+ce.width/2,ce.circularPathData.rightLargeArcRadius=u+ce.width/2,ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=ce.source.y1+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=ce.source.y0-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius);else{var ze=ce.source.column,tt=ce.circularLinkType,nt=Ie.links.filter(function(St){return St.source.column==ze&&St.circularLinkType==tt});ce.circularLinkType=="bottom"?nt.sort(ue):nt.sort(Q);var Qe=0;nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.leftSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.leftLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ze=ce.target.column,nt=Ie.links.filter(function(St){return St.target.column==ze&&St.circularLinkType==tt}),ce.circularLinkType=="bottom"?nt.sort(he):nt.sort(se),Qe=0,nt.forEach(function(St,Ot){St.circularLinkID==ce.circularLinkID&&(ce.circularPathData.rightSmallArcRadius=u+ce.width/2+Qe,ce.circularPathData.rightLargeArcRadius=u+ce.width/2+Ot*Ze+Qe),Qe=Qe+St.width}),ce.circularLinkType=="bottom"?(ce.circularPathData.verticalFullExtent=Math.max(at,ce.source.y1,ce.target.y1)+d+ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent-ce.circularPathData.rightLargeArcRadius):(ce.circularPathData.verticalFullExtent=lt-d-ce.circularPathData.verticalBuffer,ce.circularPathData.verticalLeftInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.leftLargeArcRadius,ce.circularPathData.verticalRightInnerExtent=ce.circularPathData.verticalFullExtent+ce.circularPathData.rightLargeArcRadius)}ce.circularPathData.leftInnerExtent=ce.circularPathData.sourceX+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightInnerExtent=ce.circularPathData.targetX-ce.circularPathData.rightNodeBuffer,ce.circularPathData.leftFullExtent=ce.circularPathData.sourceX+ce.circularPathData.leftLargeArcRadius+ce.circularPathData.leftNodeBuffer,ce.circularPathData.rightFullExtent=ce.circularPathData.targetX-ce.circularPathData.rightLargeArcRadius-ce.circularPathData.rightNodeBuffer}if(ce.circular)ce.path=U(ce);else{var Ct=M.linkHorizontal().source(function(St){var Ot=St.source.x0+(St.source.x1-St.source.x0),jt=St.y0;return[Ot,jt]}).target(function(St){var Ot=St.target.x0,jt=St.y1;return[Ot,jt]});ce.path=Ct(ce)}})}function U(Ie){var Ze="";return Ie.circularLinkType=="top"?Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 0 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY-Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 0 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 0 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY-Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 0 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY:Ze="M"+Ie.circularPathData.sourceX+" "+Ie.circularPathData.sourceY+" L"+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.sourceY+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftSmallArcRadius+" 0 0 1 "+Ie.circularPathData.leftFullExtent+" "+(Ie.circularPathData.sourceY+Ie.circularPathData.leftSmallArcRadius)+" L"+Ie.circularPathData.leftFullExtent+" "+Ie.circularPathData.verticalLeftInnerExtent+" A"+Ie.circularPathData.leftLargeArcRadius+" "+Ie.circularPathData.leftLargeArcRadius+" 0 0 1 "+Ie.circularPathData.leftInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" L"+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.verticalFullExtent+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightLargeArcRadius+" 0 0 1 "+Ie.circularPathData.rightFullExtent+" "+Ie.circularPathData.verticalRightInnerExtent+" L"+Ie.circularPathData.rightFullExtent+" "+(Ie.circularPathData.targetY+Ie.circularPathData.rightSmallArcRadius)+" A"+Ie.circularPathData.rightLargeArcRadius+" "+Ie.circularPathData.rightSmallArcRadius+" 0 0 1 "+Ie.circularPathData.rightInnerExtent+" "+Ie.circularPathData.targetY+" L"+Ie.circularPathData.targetX+" "+Ie.circularPathData.targetY,Ze}function W(Ie,Ze){return G(Ie)==G(Ze)?Ie.circularLinkType=="bottom"?ue(Ie,Ze):Q(Ie,Ze):G(Ze)-G(Ie)}function Q(Ie,Ze){return Ie.y0-Ze.y0}function ue(Ie,Ze){return Ze.y0-Ie.y0}function se(Ie,Ze){return Ie.y1-Ze.y1}function he(Ie,Ze){return Ze.y1-Ie.y1}function G(Ie){return Ie.target.column-Ie.source.column}function $(Ie){return Ie.target.x0-Ie.source.x1}function J(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1+it:Ie.y1-it;return et}function Z(Ie,Ze){var at=z(Ie),it=$(Ze)/Math.tan(at),et=be(Ie)=="up"?Ie.y1-it:Ie.y1+it;return et}function re(Ie,Ze,at,it){Ie.links.forEach(function(et){if(!et.circular&&et.target.column-et.source.column>1){var lt=et.source.column+1,Me=et.target.column-1,ge=1,ce=Me-lt+1;for(ge=1;lt<=Me;lt++,ge++)Ie.nodes.forEach(function(ze){if(ze.column==lt){var tt=ge/(ce+1),nt=Math.pow(1-tt,3),Qe=3*tt*Math.pow(1-tt,2),Ct=3*Math.pow(tt,2)*(1-tt),St=Math.pow(tt,3),Ot=nt*et.y0+Qe*et.y0+Ct*et.y1+St*et.y1,jt=Ot-et.width/2,ur=Ot+et.width/2,ar;jt>ze.y0&&jt<ze.y1?(ar=ze.y1-jt+10,ar=ze.circularLinkType=="bottom"?ar:-ar,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||ne(ze,Cr)&&j(Cr,ar,Ze,at)})):ur>ze.y0&&ur<ze.y1?(ar=ur-ze.y0+10,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||Cr.y0<ze.y1&&Cr.y1>ze.y1&&j(Cr,ar,Ze,at)})):jt<ze.y0&&ur>ze.y1&&(ar=ur-ze.y0+10,ze=j(ze,ar,Ze,at),Ie.nodes.forEach(function(Cr){b(Cr,it)==b(ze,it)||Cr.column!=ze.column||Cr.y0<ze.y1&&Cr.y1>ze.y1&&j(Cr,ar,Ze,at)}))}})}})}function ne(Ie,Ze){return Ie.y0>Ze.y0&&Ie.y0<Ze.y1||Ie.y1>Ze.y0&&Ie.y1<Ze.y1?!0:Ie.y0<Ze.y0&&Ie.y1>Ze.y1}function j(Ie,Ze,at,it){return Ie.y0+Ze>=at&&Ie.y1+Ze<=it&&(Ie.y0=Ie.y0+Ze,Ie.y1=Ie.y1+Ze,Ie.targetLinks.forEach(function(et){et.y1=et.y1+Ze}),Ie.sourceLinks.forEach(function(et){et.y0=et.y0+Ze})),Ie}function ee(Ie,Ze,at,it){Ie.nodes.forEach(function(et){it&&et.y+(et.y1-et.y0)>Ze&&(et.y=et.y-(et.y+(et.y1-et.y0)-Ze));var lt=Ie.links.filter(function(ce){return b(ce.source,at)==b(et,at)}),Me=lt.length;Me>1&&lt.sort(function(ce,ze){if(!ce.circular&&!ze.circular){if(ce.target.column==ze.target.column)return ce.y1-ze.y1;if(fe(ce,ze)){if(ce.target.column>ze.target.column){var tt=Z(ze,ce);return ce.y1-tt}if(ze.target.column>ce.target.column){var nt=Z(ce,ze);return nt-ze.y1}}else return ce.y1-ze.y1}if(ce.circular&&!ze.circular)return ce.circularLinkType=="top"?-1:1;if(ze.circular&&!ce.circular)return ze.circularLinkType=="top"?1:-1;if(ce.circular&&ze.circular)return ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="top"?ce.target.column===ze.target.column?ce.target.y1-ze.target.y1:ze.target.column-ce.target.column:ce.circularLinkType===ze.circularLinkType&&ce.circularLinkType=="bottom"?ce.target.column===ze.target.column?ze.target.y1-ce.target.y1:ce.target.column-ze.target.column:ce.circularLinkType=="top"?-1:1});var ge=et.y0;lt.forEach(function(ce){ce.y0=ge+ce.width/2,ge=ge+ce.width}),lt.forEach(function(ce,ze){if(ce.circularLinkType=="bottom"){var tt=ze+1,nt=0;for(tt;tt<Me;tt++)nt=nt+lt[tt].width;ce.y0=et.y1-nt-ce.width/2}})})}function ie(Ie,Ze,at){Ie.nodes.forEach(function(it){var et=Ie.links.filter(function(ge){return b(ge.target,at)==b(it,at)}),lt=et.length;lt>1&&et.sort(function(ge,ce){if(!ge.circular&&!ce.circular){if(ge.source.column==ce.source.column)return ge.y0-ce.y0;if(fe(ge,ce)){if(ce.source.column<ge.source.column){var ze=J(ce,ge);return ge.y0-ze}if(ge.source.column<ce.source.column){var tt=J(ge,ce);return tt-ce.y0}}else return ge.y0-ce.y0}if(ge.circular&&!ce.circular)return ge.circularLinkType=="top"?-1:1;if(ce.circular&&!ge.circular)return ce.circularLinkType=="top"?1:-1;if(ge.circular&&ce.circular)return ge.circularLinkType===ce.circularLinkType&&ge.circularLinkType=="top"?ge.source.column===ce.source.column?ge.source.y1-ce.source.y1:ge.source.column-ce.source.column:ge.circularLinkType===ce.circularLinkType&&ge.circularLinkType=="bottom"?ge.source.column===ce.source.column?ge.source.y1-ce.source.y1:ce.source.column-ge.source.column:ge.circularLinkType=="top"?-1:1});var Me=it.y0;et.forEach(function(ge){ge.y1=Me+ge.width/2,Me=Me+ge.width}),et.forEach(function(ge,ce){if(ge.circularLinkType=="bottom"){var ze=ce+1,tt=0;for(ze;ze<lt;ze++)tt=tt+et[ze].width;ge.y1=it.y1-tt-ge.width/2}})})}function fe(Ie,Ze){return be(Ie)==be(Ze)}function be(Ie){return Ie.y0-Ie.y1>0?"up":"down"}function Ae(Ie,Ze){return b(Ie.source,Ze)==b(Ie.target,Ze)}function Be(Ie,Ze,at){var it=Ie.nodes,et=Ie.links,lt=!1,Me=!1;if(et.forEach(function(Qe){Qe.circularLinkType=="top"?lt=!0:Qe.circularLinkType=="bottom"&&(Me=!0)}),lt==!1||Me==!1){var ge=x.min(it,function(Qe){return Qe.y0}),ce=x.max(it,function(Qe){return Qe.y1}),ze=ce-ge,tt=at-Ze,nt=tt/ze;it.forEach(function(Qe){var Ct=(Qe.y1-Qe.y0)*nt;Qe.y0=(Qe.y0-ge)*nt,Qe.y1=Qe.y0+Ct}),et.forEach(function(Qe){Qe.y0=(Qe.y0-ge)*nt,Qe.y1=(Qe.y1-ge)*nt,Qe.width=Qe.width*nt})}}g.sankeyCircular=f,g.sankeyCenter=i,g.sankeyLeft=r,g.sankeyRight=o,g.sankeyJustify=a,Object.defineProperty(g,"__esModule",{value:!0})})}}),Fk=Ye({"src/traces/sankey/constants.js"(X,H){"use strict";H.exports={nodeTextOffsetHorizontal:4,nodeTextOffsetVertical:3,nodePadAcross:10,sankeyIterations:50,forceIterations:5,forceTicksPerFrame:10,duration:500,ease:"linear",cn:{sankey:"sankey",sankeyLinks:"sankey-links",sankeyLink:"sankey-link",sankeyNodeSet:"sankey-node-set",sankeyNode:"sankey-node",nodeRect:"node-rect",nodeLabel:"node-label"}}}}),Kq=Ye({"src/traces/sankey/render.js"(X,H){"use strict";var g=Gq(),x=(f0(),Hf(fg)).interpolateNumber,A=_n(),M=Zq(),e=Yq(),t=Fk(),r=bh(),o=Fn(),a=Bo(),i=ta(),n=i.strTranslate,s=i.strRotate,c=kv(),h=c.keyFun,v=c.repeat,p=c.unwrap,T=jl(),l=Hn(),_=oh(),w=_.CAP_SHIFT,S=_.LINE_SPACING,E=3;function m(J,Z,re){var ne=p(Z),j=ne.trace,ee=j.domain,ie=j.orientation==="h",fe=j.node.pad,be=j.node.thickness,Ae={justify:M.sankeyJustify,left:M.sankeyLeft,right:M.sankeyRight,center:M.sankeyCenter}[j.node.align],Be=J.width*(ee.x[1]-ee.x[0]),Ie=J.height*(ee.y[1]-ee.y[0]),Ze=ne._nodes,at=ne._links,it=ne.circular,et;it?et=e.sankeyCircular().circularLinkGap(0):et=M.sankey(),et.iterations(t.sankeyIterations).size(ie?[Be,Ie]:[Ie,Be]).nodeWidth(be).nodePadding(fe).nodeId(function(Cr){return Cr.pointNumber}).nodeAlign(Ae).nodes(Ze).links(at);var lt=et();et.nodePadding()<fe&&i.warn("node.pad was reduced to ",et.nodePadding()," to fit within the figure.");var Me,ge,ce;for(var ze in ne._groupLookup){var tt=parseInt(ne._groupLookup[ze]),nt;for(Me=0;Me<lt.nodes.length;Me++)if(lt.nodes[Me].pointNumber===tt){nt=lt.nodes[Me];break}if(nt){var Qe={pointNumber:parseInt(ze),x0:nt.x0,x1:nt.x1,y0:nt.y0,y1:nt.y1,partOfGroup:!0,sourceLinks:[],targetLinks:[]};lt.nodes.unshift(Qe),nt.childrenNodes.unshift(Qe)}}function Ct(){for(Me=0;Me<lt.nodes.length;Me++){var Cr=lt.nodes[Me],vr={},_r,yt;for(ge=0;ge<Cr.targetLinks.length;ge++)yt=Cr.targetLinks[ge],_r=yt.source.pointNumber+":"+yt.target.pointNumber,vr.hasOwnProperty(_r)||(vr[_r]=[]),vr[_r].push(yt);var Fe=Object.keys(vr);for(ge=0;ge<Fe.length;ge++){_r=Fe[ge];var Ke=vr[_r],Ne=0,Ee={};for(ce=0;ce<Ke.length;ce++)yt=Ke[ce],Ee[yt.label]||(Ee[yt.label]=0),Ee[yt.label]+=yt.value,Ne+=yt.value;for(ce=0;ce<Ke.length;ce++)yt=Ke[ce],yt.flow={value:Ne,labelConcentration:Ee[yt.label]/Ne,concentration:yt.value/Ne,links:Ke},yt.concentrationscale&&(yt.color=r(yt.concentrationscale(yt.flow.labelConcentration)))}var Ve=0;for(ge=0;ge<Cr.sourceLinks.length;ge++)Ve+=Cr.sourceLinks[ge].value;for(ge=0;ge<Cr.sourceLinks.length;ge++)yt=Cr.sourceLinks[ge],yt.concentrationOut=yt.value/Ve;var ke=0;for(ge=0;ge<Cr.targetLinks.length;ge++)ke+=Cr.targetLinks[ge].value;for(ge=0;ge<Cr.targetLinks.length;ge++)yt=Cr.targetLinks[ge],yt.concenrationIn=yt.value/ke}}Ct();function St(Cr){Cr.forEach(function(vr){var _r,yt,Fe=0,Ke=vr.length,Ne;for(vr.sort(function(Ee,Ve){return Ee.y0-Ve.y0}),Ne=0;Ne<Ke;++Ne)_r=vr[Ne],_r.y0>=Fe||(yt=Fe-_r.y0,yt>1e-6&&(_r.y0+=yt,_r.y1+=yt)),Fe=_r.y1+fe})}function Ot(Cr){var vr=Cr.map(function(Ve,ke){return{x0:Ve.x0,index:ke}}).sort(function(Ve,ke){return Ve.x0-ke.x0}),_r=[],yt=-1,Fe,Ke=-1/0,Ne;for(Me=0;Me<vr.length;Me++){var Ee=Cr[vr[Me].index];Ee.x0>Ke+be&&(yt+=1,Fe=Ee.x0),Ke=Ee.x0,_r[yt]||(_r[yt]=[]),_r[yt].push(Ee),Ne=Fe-Ee.x0,Ee.x0+=Ne,Ee.x1+=Ne}return _r}if(j.node.x.length&&j.node.y.length){for(Me=0;Me<Math.min(j.node.x.length,j.node.y.length,lt.nodes.length);Me++)if(j.node.x[Me]&&j.node.y[Me]){var jt=[j.node.x[Me]*Be,j.node.y[Me]*Ie];lt.nodes[Me].x0=jt[0]-be/2,lt.nodes[Me].x1=jt[0]+be/2;var ur=lt.nodes[Me].y1-lt.nodes[Me].y0;lt.nodes[Me].y0=jt[1]-ur/2,lt.nodes[Me].y1=jt[1]+ur/2}if(j.arrangement==="snap"){Ze=lt.nodes;var ar=Ot(Ze);St(ar)}et.update(lt)}return{circular:it,key:re,trace:j,guid:i.randstr(),horizontal:ie,width:Be,height:Ie,nodePad:j.node.pad,nodeLineColor:j.node.line.color,nodeLineWidth:j.node.line.width,linkLineColor:j.link.line.color,linkLineWidth:j.link.line.width,linkArrowLength:j.link.arrowlen,valueFormat:j.valueformat,valueSuffix:j.valuesuffix,textFont:j.textfont,translateX:ee.x[0]*J.width+J.margin.l,translateY:J.height-ee.y[1]*J.height+J.margin.t,dragParallel:ie?Ie:Be,dragPerpendicular:ie?Be:Ie,arrangement:j.arrangement,sankey:et,graph:lt,forceLayouts:{},interactionState:{dragInProgress:!1,hovered:!1}}}function b(J,Z,re){var ne=r(Z.color),j=r(Z.hovercolor),ee=Z.source.label+"|"+Z.target.label,ie=ee+"__"+re;return Z.trace=J.trace,Z.curveNumber=J.trace.index,{circular:J.circular,key:ie,traceId:J.key,pointNumber:Z.pointNumber,link:Z,tinyColorHue:o.tinyRGB(ne),tinyColorAlpha:ne.getAlpha(),tinyColorHoverHue:o.tinyRGB(j),tinyColorHoverAlpha:j.getAlpha(),linkPath:u,linkLineColor:J.linkLineColor,linkLineWidth:J.linkLineWidth,linkArrowLength:J.linkArrowLength,valueFormat:J.valueFormat,valueSuffix:J.valueSuffix,sankey:J.sankey,parent:J,interactionState:J.interactionState,flow:Z.flow}}function d(J,Z){var re="",ne=J.width/2,j=J.circularPathData,ee=j.sourceX+j.verticalBuffer<j.targetX,ie=j.rightFullExtent-j.rightLargeArcRadius-Z<=j.leftFullExtent-ne,fe=Math.abs(j.rightFullExtent-j.leftFullExtent-ne)<ne;return J.circularLinkType==="top"?(re="M "+(j.targetX-Z)+" "+(j.targetY+ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.targetY+ne)+"A "+(j.rightLargeArcRadius+ne)+" "+(j.rightSmallArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent-ne-Z)+" "+(j.targetY-j.rightSmallArcRadius)+"L "+(j.rightFullExtent-ne-Z)+" "+j.verticalRightInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius+ne))+" L "+(j.rightFullExtent+ne-(j.rightLargeArcRadius-ne)-Z)+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius+ne))+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 0 "+(j.rightFullExtent-ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius-ne))+" L "+(j.leftFullExtent+ne+(j.rightLargeArcRadius-ne))+" "+(j.verticalRightInnerExtent-(j.rightLargeArcRadius-ne))+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 1 "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent-ne)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent-ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ne)+" "+(j.sourceY-j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+j.leftInnerExtent+" "+(j.sourceY+ne)+" L "+j.sourceX+" "+(j.sourceY+ne)+" L "+j.sourceX+" "+(j.sourceY-ne)+" L "+j.leftInnerExtent+" "+(j.sourceY-ne)+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftSmallArcRadius-ne)+" 0 0 0 "+(j.leftFullExtent-ne)+" "+(j.sourceY-j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ne)+" "+j.verticalLeftInnerExtent,ee&&ie?re+=" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent-ne)+" "+(j.verticalFullExtent+ne)+"L"+(j.rightFullExtent+ne-Z)+" "+(j.verticalFullExtent+ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+(j.verticalFullExtent-ne)+" L "+(j.rightFullExtent-ne-Z)+" "+(j.verticalFullExtent-ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 0 "+j.leftInnerExtent+" "+(j.verticalFullExtent+ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ne-Z)+" "+(j.targetY-j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 0 "+(j.rightInnerExtent-Z)+" "+(j.targetY-ne)+" L "+(j.targetX-Z)+" "+(j.targetY-ne)+(Z>0?" L "+j.targetX+" "+j.targetY:"")+"Z"):(re="M "+(j.targetX-Z)+" "+(j.targetY-ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.targetY-ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightSmallArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent-ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" L "+(j.rightFullExtent-ne-Z)+" "+j.verticalRightInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-ne-Z)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent+ne-Z-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent-Z-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.leftFullExtent+ne+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent:re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent+ne)+" L "+j.leftInnerExtent+" "+(j.verticalFullExtent+ne)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+j.verticalLeftInnerExtent,re+=" L "+(j.leftFullExtent+ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" A "+(j.leftLargeArcRadius+ne)+" "+(j.leftSmallArcRadius+ne)+" 0 0 0 "+j.leftInnerExtent+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY-ne)+" L "+j.sourceX+" "+(j.sourceY+ne)+" L "+j.leftInnerExtent+" "+(j.sourceY+ne)+" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne)+" "+(j.sourceY+j.leftSmallArcRadius)+" L "+(j.leftFullExtent-ne)+" "+j.verticalLeftInnerExtent,ee&&ie?re+=" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.leftFullExtent-ne-(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" L "+(j.rightFullExtent+ne-Z+(j.rightLargeArcRadius-ne))+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:ee?re+=" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.leftFullExtent+ne)+" "+(j.verticalFullExtent+ne)+" L "+(j.rightFullExtent-Z-ne)+" "+(j.verticalFullExtent+ne)+" A "+(j.rightLargeArcRadius+ne)+" "+(j.rightLargeArcRadius+ne)+" 0 0 0 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent:re+=" A "+(j.leftLargeArcRadius-ne)+" "+(j.leftLargeArcRadius-ne)+" 0 0 1 "+j.leftInnerExtent+" "+(j.verticalFullExtent-ne)+" L "+(j.rightInnerExtent-Z)+" "+(j.verticalFullExtent-ne)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightLargeArcRadius-ne)+" 0 0 1 "+(j.rightFullExtent+ne-Z)+" "+j.verticalRightInnerExtent,re+=" L "+(j.rightFullExtent+ne-Z)+" "+(j.targetY+j.rightSmallArcRadius)+" A "+(j.rightLargeArcRadius-ne)+" "+(j.rightSmallArcRadius-ne)+" 0 0 1 "+(j.rightInnerExtent-Z)+" "+(j.targetY+ne)+" L "+(j.targetX-Z)+" "+(j.targetY+ne)+(Z>0?" L "+j.targetX+" "+j.targetY:"")+"Z"),re}function u(){var J=.5;function Z(re){var ne=re.linkArrowLength;if(re.link.circular)return d(re.link,ne);var j=Math.abs((re.link.target.x0-re.link.source.x1)/2);ne>j&&(ne=j);var ee=re.link.source.x1,ie=re.link.target.x0-ne,fe=x(ee,ie),be=fe(J),Ae=fe(1-J),Be=re.link.y0-re.link.width/2,Ie=re.link.y0+re.link.width/2,Ze=re.link.y1-re.link.width/2,at=re.link.y1+re.link.width/2,it="M"+ee+","+Be,et="C"+be+","+Be+" "+Ae+","+Ze+" "+ie+","+Ze,lt="C"+Ae+","+at+" "+be+","+Ie+" "+ee+","+Ie,Me=ne>0?"L"+(ie+ne)+","+(Ze+re.link.width/2):"";return Me+="L"+ie+","+at,it+et+Me+lt+"Z"}return Z}function y(J,Z){var re=r(Z.color),ne=t.nodePadAcross,j=J.nodePad/2;Z.dx=Z.x1-Z.x0,Z.dy=Z.y1-Z.y0;var ee=Z.dx,ie=Math.max(.5,Z.dy),fe="node_"+Z.pointNumber;return Z.group&&(fe=i.randstr()),Z.trace=J.trace,Z.curveNumber=J.trace.index,{index:Z.pointNumber,key:fe,partOfGroup:Z.partOfGroup||!1,group:Z.group,traceId:J.key,trace:J.trace,node:Z,nodePad:J.nodePad,nodeLineColor:J.nodeLineColor,nodeLineWidth:J.nodeLineWidth,textFont:J.textFont,size:J.horizontal?J.height:J.width,visibleWidth:Math.ceil(ee),visibleHeight:ie,zoneX:-ne,zoneY:-j,zoneWidth:ee+2*ne,zoneHeight:ie+2*j,labelY:J.horizontal?Z.dy/2+1:Z.dx/2+1,left:Z.originalLayer===1,sizeAcross:J.width,forceLayouts:J.forceLayouts,horizontal:J.horizontal,darkBackground:re.getBrightness()<=128,tinyColorHue:o.tinyRGB(re),tinyColorAlpha:re.getAlpha(),valueFormat:J.valueFormat,valueSuffix:J.valueSuffix,sankey:J.sankey,graph:J.graph,arrangement:J.arrangement,uniqueNodeLabelPathId:[J.guid,J.key,fe].join("_"),interactionState:J.interactionState,figure:J}}function f(J){J.attr("transform",function(Z){return n(Z.node.x0.toFixed(3),Z.node.y0.toFixed(3))})}function P(J){J.call(f)}function L(J,Z){J.call(P),Z.attr("d",u())}function z(J){J.attr("width",function(Z){return Z.node.x1-Z.node.x0}).attr("height",function(Z){return Z.visibleHeight})}function F(J){return J.link.width>1||J.linkLineWidth>0}function B(J){var Z=n(J.translateX,J.translateY);return Z+(J.horizontal?"matrix(1 0 0 1 0 0)":"matrix(0 1 1 0 0 0)")}function O(J,Z,re){J.on(".basic",null).on("mouseover.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.hover(this,ne,Z),ne.interactionState.hovered=[this,ne])}).on("mousemove.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.follow(this,ne),ne.interactionState.hovered=[this,ne])}).on("mouseout.basic",function(ne){!ne.interactionState.dragInProgress&&!ne.partOfGroup&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1)}).on("click.basic",function(ne){ne.interactionState.hovered&&(re.unhover(this,ne,Z),ne.interactionState.hovered=!1),!ne.interactionState.dragInProgress&&!ne.partOfGroup&&re.select(this,ne,Z)})}function I(J,Z,re,ne){var j=A.behavior.drag().origin(function(ee){return{x:ee.node.x0+ee.visibleWidth/2,y:ee.node.y0+ee.visibleHeight/2}}).on("dragstart",function(ee){if(ee.arrangement!=="fixed"&&(i.ensureSingle(ne._fullLayout._infolayer,"g","dragcover",function(fe){ne._fullLayout._dragCover=fe}),i.raiseToTop(this),ee.interactionState.dragInProgress=ee.node,se(ee.node),ee.interactionState.hovered&&(re.nodeEvents.unhover.apply(0,ee.interactionState.hovered),ee.interactionState.hovered=!1),ee.arrangement==="snap")){var ie=ee.traceId+"|"+ee.key;ee.forceLayouts[ie]?ee.forceLayouts[ie].alpha(1):N(J,ie,ee,ne),U(J,Z,ee,ie,ne)}}).on("drag",function(ee){if(ee.arrangement!=="fixed"){var ie=A.event.x,fe=A.event.y;ee.arrangement==="snap"?(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2,ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2):(ee.arrangement==="freeform"&&(ee.node.x0=ie-ee.visibleWidth/2,ee.node.x1=ie+ee.visibleWidth/2),fe=Math.max(0,Math.min(ee.size-ee.visibleHeight/2,fe)),ee.node.y0=fe-ee.visibleHeight/2,ee.node.y1=fe+ee.visibleHeight/2),se(ee.node),ee.arrangement!=="snap"&&(ee.sankey.update(ee.graph),L(J.filter(he(ee)),Z))}}).on("dragend",function(ee){if(ee.arrangement!=="fixed"){ee.interactionState.dragInProgress=!1;for(var ie=0;ie<ee.node.childrenNodes.length;ie++)ee.node.childrenNodes[ie].x=ee.node.x,ee.node.childrenNodes[ie].y=ee.node.y;ee.arrangement!=="snap"&&Q(ee,ne)}});J.on(".drag",null).call(j)}function N(J,Z,re,ne){G(re.graph.nodes);var j=re.graph.nodes.filter(function(ee){return ee.originalX===re.node.originalX}).filter(function(ee){return!ee.partOfGroup});re.forceLayouts[Z]=g.forceSimulation(j).alphaDecay(0).force("collide",g.forceCollide().radius(function(ee){return ee.dy/2+re.nodePad/2}).strength(1).iterations(t.forceIterations)).force("constrain",W(J,Z,j,re,ne)).stop()}function U(J,Z,re,ne,j){window.requestAnimationFrame(function ee(){var ie;for(ie=0;ie<t.forceTicksPerFrame;ie++)re.forceLayouts[ne].tick();var fe=re.graph.nodes;if($(fe),re.sankey.update(re.graph),L(J.filter(he(re)),Z),re.forceLayouts[ne].alpha()>0)window.requestAnimationFrame(ee);else{var be=re.node.originalX;re.node.x0=be-re.visibleWidth/2,re.node.x1=be+re.visibleWidth/2,Q(re,j)}})}function W(J,Z,re,ne){return function(){for(var ee=0,ie=0;ie<re.length;ie++){var fe=re[ie];fe===ne.interactionState.dragInProgress?(fe.x=fe.lastDraggedX,fe.y=fe.lastDraggedY):(fe.vx=(fe.originalX-fe.x)/t.forceTicksPerFrame,fe.y=Math.min(ne.size-fe.dy/2,Math.max(fe.dy/2,fe.y))),ee=Math.max(ee,Math.abs(fe.vx),Math.abs(fe.vy))}!ne.interactionState.dragInProgress&&ee<.1&&ne.forceLayouts[Z].alpha()>0&&ne.forceLayouts[Z].alpha(0)}}function Q(J,Z){for(var re=[],ne=[],j=0;j<J.graph.nodes.length;j++){var ee=(J.graph.nodes[j].x0+J.graph.nodes[j].x1)/2,ie=(J.graph.nodes[j].y0+J.graph.nodes[j].y1)/2;re.push(ee/J.figure.width),ne.push(ie/J.figure.height)}l.call("_guiRestyle",Z,{"node.x":[re],"node.y":[ne]},J.trace.index).then(function(){Z._fullLayout._dragCover&&Z._fullLayout._dragCover.remove()})}function ue(J){var Z=[],re;for(re=0;re<J.length;re++)J[re].originalX=(J[re].x0+J[re].x1)/2,J[re].originalY=(J[re].y0+J[re].y1)/2,Z.indexOf(J[re].originalX)===-1&&Z.push(J[re].originalX);for(Z.sort(function(ne,j){return ne-j}),re=0;re<J.length;re++)J[re].originalLayerIndex=Z.indexOf(J[re].originalX),J[re].originalLayer=J[re].originalLayerIndex/(Z.length-1)}function se(J){J.lastDraggedX=J.x0+J.dx/2,J.lastDraggedY=J.y0+J.dy/2}function he(J){return function(Z){return Z.node.originalX===J.node.originalX}}function G(J){for(var Z=0;Z<J.length;Z++)J[Z].y=(J[Z].y0+J[Z].y1)/2,J[Z].x=(J[Z].x0+J[Z].x1)/2}function $(J){for(var Z=0;Z<J.length;Z++)J[Z].y0=J[Z].y-J[Z].dy/2,J[Z].y1=J[Z].y0+J[Z].dy,J[Z].x0=J[Z].x-J[Z].dx/2,J[Z].x1=J[Z].x0+J[Z].dx}H.exports=function(J,Z,re,ne,j){var ee=J._context.staticPlot,ie=!1;i.ensureSingle(J._fullLayout._infolayer,"g","first-render",function(){ie=!0});var fe=J._fullLayout._dragCover,be=re.filter(function(lt){return p(lt).trace.visible}).map(m.bind(null,ne)),Ae=Z.selectAll("."+t.cn.sankey).data(be,h);Ae.exit().remove(),Ae.enter().append("g").classed(t.cn.sankey,!0).style("box-sizing","content-box").style("position","absolute").style("left",0).style("shape-rendering","geometricPrecision").style("pointer-events",ee?"none":"auto").attr("transform",B),Ae.each(function(lt,Me){J._fullData[Me]._sankey=lt;var ge="bgsankey-"+lt.trace.uid+"-"+Me;i.ensureSingle(J._fullLayout._draggers,"rect",ge),J._fullData[Me]._bgRect=A.select("."+ge),J._fullData[Me]._bgRect.style("pointer-events",ee?"none":"all").attr("width",lt.width).attr("height",lt.height).attr("x",lt.translateX).attr("y",lt.translateY).classed("bgsankey",!0).style({fill:"transparent","stroke-width":0})}),Ae.transition().ease(t.ease).duration(t.duration).attr("transform",B);var Be=Ae.selectAll("."+t.cn.sankeyLinks).data(v,h);Be.enter().append("g").classed(t.cn.sankeyLinks,!0).style("fill","none");var Ie=Be.selectAll("."+t.cn.sankeyLink).data(function(lt){var Me=lt.graph.links;return Me.filter(function(ge){return ge.value}).map(b.bind(null,lt))},h);Ie.enter().append("path").classed(t.cn.sankeyLink,!0).call(O,Ae,j.linkEvents),Ie.style("stroke",function(lt){return F(lt)?o.tinyRGB(r(lt.linkLineColor)):lt.tinyColorHue}).style("stroke-opacity",function(lt){return F(lt)?o.opacity(lt.linkLineColor):lt.tinyColorAlpha}).style("fill",function(lt){return lt.tinyColorHue}).style("fill-opacity",function(lt){return lt.tinyColorAlpha}).style("stroke-width",function(lt){return F(lt)?lt.linkLineWidth:1}).attr("d",u()),Ie.style("opacity",function(){return J._context.staticPlot||ie||fe?1:0}).transition().ease(t.ease).duration(t.duration).style("opacity",1),Ie.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var Ze=Ae.selectAll("."+t.cn.sankeyNodeSet).data(v,h);Ze.enter().append("g").classed(t.cn.sankeyNodeSet,!0),Ze.style("cursor",function(lt){switch(lt.arrangement){case"fixed":return"default";case"perpendicular":return"ns-resize";default:return"move"}});var at=Ze.selectAll("."+t.cn.sankeyNode).data(function(lt){var Me=lt.graph.nodes;return ue(Me),Me.map(y.bind(null,lt))},h);at.enter().append("g").classed(t.cn.sankeyNode,!0).call(f).style("opacity",function(lt){return(J._context.staticPlot||ie)&&!lt.partOfGroup?1:0}),at.call(O,Ae,j.nodeEvents).call(I,Ie,j,J),at.transition().ease(t.ease).duration(t.duration).call(f).style("opacity",function(lt){return lt.partOfGroup?0:1}),at.exit().transition().ease(t.ease).duration(t.duration).style("opacity",0).remove();var it=at.selectAll("."+t.cn.nodeRect).data(v);it.enter().append("rect").classed(t.cn.nodeRect,!0).call(z),it.style("stroke-width",function(lt){return lt.nodeLineWidth}).style("stroke",function(lt){return o.tinyRGB(r(lt.nodeLineColor))}).style("stroke-opacity",function(lt){return o.opacity(lt.nodeLineColor)}).style("fill",function(lt){return lt.tinyColorHue}).style("fill-opacity",function(lt){return lt.tinyColorAlpha}),it.transition().ease(t.ease).duration(t.duration).call(z);var et=at.selectAll("."+t.cn.nodeLabel).data(v);et.enter().append("text").classed(t.cn.nodeLabel,!0).style("cursor","default"),et.attr("data-notex",1).text(function(lt){return lt.node.label}).each(function(lt){var Me=A.select(this);a.font(Me,lt.textFont),T.convertToTspans(Me,J)}).attr("text-anchor",function(lt){return lt.horizontal&&lt.left?"end":"start"}).attr("transform",function(lt){var Me=A.select(this),ge=T.lineCount(Me),ce=lt.textFont.size*((ge-1)*S-w),ze=lt.nodeLineWidth/2+E,tt=((lt.horizontal?lt.visibleHeight:lt.visibleWidth)-ce)/2;lt.horizontal&&(lt.left?ze=-ze:ze+=lt.visibleWidth);var nt=lt.horizontal?"":"scale(-1,1)"+s(90);return n(lt.horizontal?ze:tt,lt.horizontal?tt:ze)+nt}),et.transition().ease(t.ease).duration(t.duration)}}}),Ok=Ye({"src/traces/sankey/plot.js"(X,H){"use strict";var g=_n(),x=ta(),A=x.numberFormat,M=Kq(),e=Lc(),t=Fn(),r=Fk().cn,o=x._;function a(w){return w!==""}function i(w,S){return w.filter(function(E){return E.key===S.traceId})}function n(w,S){g.select(w).select("path").style("fill-opacity",S),g.select(w).select("rect").style("fill-opacity",S)}function s(w){g.select(w).select("text.name").style("fill","black")}function c(w){return function(S){return w.node.sourceLinks.indexOf(S.link)!==-1||w.node.targetLinks.indexOf(S.link)!==-1}}function h(w){return function(S){return S.node.sourceLinks.indexOf(w.link)!==-1||S.node.targetLinks.indexOf(w.link)!==-1}}function v(w,S,E){S&&E&&i(E,S).selectAll("."+r.sankeyLink).filter(c(S)).call(T.bind(0,S,E,!1))}function p(w,S,E){S&&E&&i(E,S).selectAll("."+r.sankeyLink).filter(c(S)).call(l.bind(0,S,E,!1))}function T(w,S,E,m){m.style("fill",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverHue}).style("fill-opacity",function(b){if(!b.link.concentrationscale)return b.tinyColorHoverAlpha}),m.each(function(b){var d=b.link.label;d!==""&&i(S,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===d}).style("fill",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverHue}).style("fill-opacity",function(u){if(!u.link.concentrationscale)return u.tinyColorHoverAlpha})}),E&&i(S,w).selectAll("."+r.sankeyNode).filter(h(w)).call(v)}function l(w,S,E,m){m.style("fill",function(b){return b.tinyColorHue}).style("fill-opacity",function(b){return b.tinyColorAlpha}),m.each(function(b){var d=b.link.label;d!==""&&i(S,w).selectAll("."+r.sankeyLink).filter(function(u){return u.link.label===d}).style("fill",function(u){return u.tinyColorHue}).style("fill-opacity",function(u){return u.tinyColorAlpha})}),E&&i(S,w).selectAll(r.sankeyNode).filter(h(w)).call(p)}function _(w,S){var E=w.hoverlabel||{},m=x.nestedProperty(E,S).get();return Array.isArray(m)?!1:m}H.exports=function(S,E){for(var m=S._fullLayout,b=m._paper,d=m._size,u=0;u<S._fullData.length;u++)if(S._fullData[u].visible&&S._fullData[u].type===r.sankey&&!S._fullData[u]._viewInitial){var y=S._fullData[u].node;S._fullData[u]._viewInitial={node:{groups:y.groups.slice(),x:y.x.slice(),y:y.y.slice()}}}var f=function(se,he){var G=he.link;G.originalEvent=g.event,S._hoverdata=[G],e.click(S,{target:!0})},P=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(T.bind(0,he,G,!0)),he.link.trace.link.hoverinfo!=="skip"&&(he.link.fullData=he.link.trace,S.emit("plotly_hover",{event:g.event,points:[he.link]})))},L=o(S,"source:")+" ",z=o(S,"target:")+" ",F=o(S,"concentration:")+" ",B=o(S,"incoming flow count:")+" ",O=o(S,"outgoing flow count:")+" ",I=function(se,he){if(S._fullLayout.hovermode===!1)return;var G=he.link.trace.link;if(G.hoverinfo==="none"||G.hoverinfo==="skip")return;var $=[];function J(fe){var be,Ae;fe.circular?(be=(fe.circularPathData.leftInnerExtent+fe.circularPathData.rightInnerExtent)/2,Ae=fe.circularPathData.verticalFullExtent):(be=(fe.source.x1+fe.target.x0)/2,Ae=(fe.y0+fe.y1)/2);var Be=[be,Ae];return fe.trace.orientation==="v"&&Be.reverse(),Be[0]+=he.parent.translateX,Be[1]+=he.parent.translateY,Be}for(var Z=0,re=0;re<he.flow.links.length;re++){var ne=he.flow.links[re];if(!(S._fullLayout.hovermode==="closest"&&he.link.pointNumber!==ne.pointNumber)){he.link.pointNumber===ne.pointNumber&&(Z=re),ne.fullData=ne.trace,G=he.link.trace.link;var j=J(ne),ee={valueLabel:A(he.valueFormat)(ne.value)+he.valueSuffix};$.push({x:j[0],y:j[1],name:ee.valueLabel,text:[ne.label||"",L+ne.source.label,z+ne.target.label,ne.concentrationscale?F+A("%0.2f")(ne.flow.labelConcentration):""].filter(a).join("<br>"),color:_(G,"bgcolor")||t.addOpacity(ne.color,1),borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:g.event.x<j[0]?"right":"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[ne]})}}var ie=e.loneHover($,{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:S,anchorIndex:Z});ie.each(function(){var fe=this;he.link.concentrationscale||n(fe,.65),s(fe)})},N=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(l.bind(0,he,G,!0)),he.link.trace.link.hoverinfo!=="skip"&&(he.link.fullData=he.link.trace,S.emit("plotly_unhover",{event:g.event,points:[he.link]})),e.loneUnhover(m._hoverlayer.node()))},U=function(se,he,G){var $=he.node;$.originalEvent=g.event,S._hoverdata=[$],g.select(se).call(p,he,G),e.click(S,{target:!0})},W=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(v,he,G),he.node.trace.node.hoverinfo!=="skip"&&(he.node.fullData=he.node.trace,S.emit("plotly_hover",{event:g.event,points:[he.node]})))},Q=function(se,he){if(S._fullLayout.hovermode!==!1){var G=he.node.trace.node;if(!(G.hoverinfo==="none"||G.hoverinfo==="skip")){var $=g.select(se).select("."+r.nodeRect),J=S._fullLayout._paperdiv.node().getBoundingClientRect(),Z=$.node().getBoundingClientRect(),re=Z.left-2-J.left,ne=Z.right+2-J.left,j=Z.top+Z.height/4-J.top,ee={valueLabel:A(he.valueFormat)(he.node.value)+he.valueSuffix};he.node.fullData=he.node.trace,S._fullLayout._calcInverseTransform(S);var ie=S._fullLayout._invScaleX,fe=S._fullLayout._invScaleY,be=e.loneHover({x0:ie*re,x1:ie*ne,y:fe*j,name:A(he.valueFormat)(he.node.value)+he.valueSuffix,text:[he.node.label,B+he.node.targetLinks.length,O+he.node.sourceLinks.length].filter(a).join("<br>"),color:_(G,"bgcolor")||he.tinyColorHue,borderColor:_(G,"bordercolor"),fontFamily:_(G,"font.family"),fontSize:_(G,"font.size"),fontColor:_(G,"font.color"),fontWeight:_(G,"font.weight"),fontStyle:_(G,"font.style"),fontVariant:_(G,"font.variant"),fontTextcase:_(G,"font.textcase"),fontLineposition:_(G,"font.lineposition"),fontShadow:_(G,"font.shadow"),nameLength:_(G,"namelength"),textAlign:_(G,"align"),idealAlign:"left",hovertemplate:G.hovertemplate,hovertemplateLabels:ee,eventData:[he.node]},{container:m._hoverlayer.node(),outerContainer:m._paper.node(),gd:S});n(be,.85),s(be)}}},ue=function(se,he,G){S._fullLayout.hovermode!==!1&&(g.select(se).call(p,he,G),he.node.trace.node.hoverinfo!=="skip"&&(he.node.fullData=he.node.trace,S.emit("plotly_unhover",{event:g.event,points:[he.node]})),e.loneUnhover(m._hoverlayer.node()))};M(S,b,E,{width:d.w,height:d.h,margin:{t:d.t,r:d.r,b:d.b,l:d.l}},{linkEvents:{hover:P,follow:I,unhover:N,select:f},nodeEvents:{hover:W,follow:Q,unhover:ue,select:U}})}}}),Jq=Ye({"src/traces/sankey/base_plot.js"(X){"use strict";var H=Ou().overrideAll,g=jh().getModuleCalcData,x=Ok(),A=Zm(),M=Kd(),e=bp(),t=ff().prepSelect,r=ta(),o=Hn(),a="sankey";X.name=a,X.baseLayoutAttrOverrides=H({hoverlabel:A.hoverlabel},"plot","nested"),X.plot=function(n){var s=g(n.calcdata,a)[0];x(n,s),X.updateFx(n)},X.clean=function(n,s,c,h){var v=h._has&&h._has(a),p=s._has&&s._has(a);v&&!p&&(h._paperdiv.selectAll(".sankey").remove(),h._paperdiv.selectAll(".bgsankey").remove())},X.updateFx=function(n){for(var s=0;s<n._fullData.length;s++)i(n,s)};function i(n,s){var c=n._fullData[s],h=n._fullLayout,v=h.dragmode,p=h.dragmode==="pan"?"move":"crosshair",T=c._bgRect;if(T&&!(v==="pan"||v==="zoom")){M(T,p);var l={_id:"x",c2p:r.identity,_offset:c._sankey.translateX,_length:c._sankey.width},_={_id:"y",c2p:r.identity,_offset:c._sankey.translateY,_length:c._sankey.height},w={gd:n,element:T.node(),plotinfo:{id:s,xaxis:l,yaxis:_,fillRangeItems:r.noop},subplot:s,xaxes:[l],yaxes:[_],doneFnCompleted:function(S){var E=n._fullData[s],m,b=E.node.groups.slice(),d=[];function u(L){for(var z=E._sankey.graph.nodes,F=0;F<z.length;F++)if(z[F].pointNumber===L)return z[F]}for(var y=0;y<S.length;y++){var f=u(S[y].pointNumber);if(f)if(f.group){for(var P=0;P<f.childrenNodes.length;P++)d.push(f.childrenNodes[P].pointNumber);b[f.pointNumber-E.node._count]=!1}else d.push(f.pointNumber)}m=b.filter(Boolean).concat([d]),o.call("_guiRestyle",n,{"node.groups":[m]},s)}};w.prepFn=function(S,E,m){t(S,E,m,w,v)},e.init(w)}}}}),$q=Ye({"src/traces/sankey/select.js"(X,H){"use strict";H.exports=function(x,A){for(var M=x.cd,e=[],t=M[0].trace,r=t._sankey.graph.nodes,o=0;o<r.length;o++){var a=r[o];if(!a.partOfGroup){var i=[(a.x0+a.x1)/2,(a.y0+a.y1)/2];t.orientation==="v"&&i.reverse(),A&&A.contains(i,!1,o,x)&&e.push({pointNumber:a.pointNumber})}}return e}}}),Qq=Ye({"src/traces/sankey/index.js"(X,H){"use strict";H.exports={attributes:Rk(),supplyDefaults:Uq(),calc:jq(),plot:Ok(),moduleType:"trace",name:"sankey",basePlotModule:Jq(),selectPoints:$q(),categories:["noOpacity"],meta:{}}}}),eH=Ye({"lib/sankey.js"(X,H){"use strict";H.exports=Qq()}}),tH=Ye({"src/traces/indicator/base_plot.js"(X){"use strict";var H=Gu();X.name="indicator",X.plot=function(g,x,A,M){H.plotBasePlot(X.name,g,x,A,M)},X.clean=function(g,x,A,M){H.cleanBasePlot(X.name,g,x,A,M)}}}),Bk=Ye({"src/traces/indicator/attributes.js"(X,H){"use strict";var g=Oo().extendFlat,x=Oo().extendDeep,A=Ou().overrideAll,M=Au(),e=Gf(),t=Wu().attributes,r=Vh(),o=cl().templatedArray,a=p1(),i=Cc().descriptionOnlyNumbers,n=M({editType:"plot",colorEditType:"plot"}),s={color:{valType:"color",editType:"plot"},line:{color:{valType:"color",dflt:e.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"},c={valType:"info_array",items:[{valType:"number",editType:"plot"},{valType:"number",editType:"plot"}],editType:"plot"},h=o("step",x({},s,{range:c}));H.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:t({name:"indicator",trace:!0,editType:"calc"}),title:{text:{valType:"string",editType:"plot"},align:{valType:"enumerated",values:["left","center","right"],editType:"plot"},font:g({},n,{}),editType:"plot"},number:{valueformat:{valType:"string",dflt:"",editType:"plot",description:i("value")},font:g({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"plot"},delta:{reference:{valType:"number",editType:"calc"},position:{valType:"enumerated",values:["top","bottom","left","right"],dflt:"bottom",editType:"plot"},relative:{valType:"boolean",editType:"plot",dflt:!1},valueformat:{valType:"string",editType:"plot",description:i("value")},increasing:{symbol:{valType:"string",dflt:a.INCREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:a.INCREASING.COLOR,editType:"plot"},editType:"plot"},decreasing:{symbol:{valType:"string",dflt:a.DECREASING.SYMBOL,editType:"plot"},color:{valType:"color",dflt:a.DECREASING.COLOR,editType:"plot"},editType:"plot"},font:g({},n,{}),prefix:{valType:"string",dflt:"",editType:"plot"},suffix:{valType:"string",dflt:"",editType:"plot"},editType:"calc"},gauge:{shape:{valType:"enumerated",editType:"plot",dflt:"angular",values:["angular","bullet"]},bar:x({},s,{color:{dflt:"green"}}),bgcolor:{valType:"color",editType:"plot"},bordercolor:{valType:"color",dflt:e.defaultLine,editType:"plot"},borderwidth:{valType:"number",min:0,dflt:1,editType:"plot"},axis:A({range:c,visible:g({},r.visible,{dflt:!0}),tickmode:r.minor.tickmode,nticks:r.nticks,tick0:r.tick0,dtick:r.dtick,tickvals:r.tickvals,ticktext:r.ticktext,ticks:g({},r.ticks,{dflt:"outside"}),ticklen:r.ticklen,tickwidth:r.tickwidth,tickcolor:r.tickcolor,ticklabelstep:r.ticklabelstep,showticklabels:r.showticklabels,labelalias:r.labelalias,tickfont:M({}),tickangle:r.tickangle,tickformat:r.tickformat,tickformatstops:r.tickformatstops,tickprefix:r.tickprefix,showtickprefix:r.showtickprefix,ticksuffix:r.ticksuffix,showticksuffix:r.showticksuffix,separatethousands:r.separatethousands,exponentformat:r.exponentformat,minexponent:r.minexponent,showexponent:r.showexponent,editType:"plot"},"plot"),steps:h,threshold:{line:{color:g({},s.line.color,{}),width:g({},s.line.width,{dflt:1}),editType:"plot"},thickness:g({},s.thickness,{dflt:.85}),value:{valType:"number",editType:"calc",dflt:!1},editType:"plot"},editType:"plot"}}}}),Nk=Ye({"src/traces/indicator/constants.js"(X,H){"use strict";H.exports={defaultNumberFontSize:80,bulletNumberDomainSize:.25,bulletPadding:.025,innerRadius:.75,valueThickness:.5,titlePadding:5,horizontalPadding:10}}}),rH=Ye({"src/traces/indicator/defaults.js"(X,H){"use strict";var g=ta(),x=Bk(),A=Wu().defaults,M=cl(),e=up(),t=Nk(),r=Zg(),o=e1(),a=$m(),i=Qm();function n(c,h,v,p){function T(I,N){return g.coerce(c,h,x,I,N)}A(h,p,T),T("mode"),h._hasNumber=h.mode.indexOf("number")!==-1,h._hasDelta=h.mode.indexOf("delta")!==-1,h._hasGauge=h.mode.indexOf("gauge")!==-1;var l=T("value");h._range=[0,typeof l=="number"?1.5*l:1];var _=new Array(2),w;if(h._hasNumber){T("number.valueformat");var S=g.extendFlat({},p.font);S.size=void 0,g.coerceFont(T,"number.font",S),h.number.font.size===void 0&&(h.number.font.size=t.defaultNumberFontSize,_[0]=!0),T("number.prefix"),T("number.suffix"),w=h.number.font.size}var E;if(h._hasDelta){var m=g.extendFlat({},p.font);m.size=void 0,g.coerceFont(T,"delta.font",m),h.delta.font.size===void 0&&(h.delta.font.size=(h._hasNumber?.5:1)*(w||t.defaultNumberFontSize),_[1]=!0),T("delta.reference",h.value),T("delta.relative"),T("delta.valueformat",h.delta.relative?"2%":""),T("delta.increasing.symbol"),T("delta.increasing.color"),T("delta.decreasing.symbol"),T("delta.decreasing.color"),T("delta.position"),T("delta.prefix"),T("delta.suffix"),E=h.delta.font.size}h._scaleNumbers=(!h._hasNumber||_[0])&&(!h._hasDelta||_[1])||!1;var b=g.extendFlat({},p.font);b.size=.25*(w||E||t.defaultNumberFontSize),g.coerceFont(T,"title.font",b),T("title.text");var d,u,y,f;function P(I,N){return g.coerce(d,u,x.gauge,I,N)}function L(I,N){return g.coerce(y,f,x.gauge.axis,I,N)}if(h._hasGauge){d=c.gauge,d||(d={}),u=M.newContainer(h,"gauge"),P("shape");var z=h._isBullet=h.gauge.shape==="bullet";z||T("title.align","center");var F=h._isAngular=h.gauge.shape==="angular";F||T("align","center"),P("bgcolor",p.paper_bgcolor),P("borderwidth"),P("bordercolor"),P("bar.color"),P("bar.line.color"),P("bar.line.width");var B=t.valueThickness*(h.gauge.shape==="bullet"?.5:1);P("bar.thickness",B),e(d,u,{name:"steps",handleItemDefaults:s}),P("threshold.value"),P("threshold.thickness"),P("threshold.line.width"),P("threshold.line.color"),y={},d&&(y=d.axis||{}),f=M.newContainer(u,"axis"),L("visible"),h._range=L("range",h._range);var O={font:p.font,noAutotickangles:!0,outerTicks:!0,noTicklabelshift:!0,noTicklabelstandoff:!0};r(y,f,L,"linear"),i(y,f,L,"linear",O),a(y,f,L,"linear",O),o(y,f,L,O)}else T("title.align","center"),T("align","center"),h._isAngular=h._isBullet=!1;h._length=null}function s(c,h){function v(p,T){return g.coerce(c,h,x.gauge.steps,p,T)}v("color"),v("line.color"),v("line.width"),v("range"),v("thickness")}H.exports={supplyDefaults:n}}}),aH=Ye({"src/traces/indicator/calc.js"(X,H){"use strict";function g(x,A){var M=[],e=A.value;typeof A._lastValue!="number"&&(A._lastValue=A.value);var t=A._lastValue,r=t;return A._hasDelta&&typeof A.delta.reference=="number"&&(r=A.delta.reference),M[0]={y:e,lastY:t,delta:e-r,relativeDelta:(e-r)/r},M}H.exports={calc:g}}}),iH=Ye({"src/traces/indicator/plot.js"(X,H){"use strict";var g=_n(),x=(f0(),Hf(fg)).interpolate,A=(f0(),Hf(fg)).interpolateNumber,M=ta(),e=M.strScale,t=M.strTranslate,r=M.rad2deg,o=oh().MID_SHIFT,a=Bo(),i=Nk(),n=jl(),s=Co(),c=R_(),h=I2(),v=Vh(),p=Fn(),T={left:"start",center:"middle",right:"end"},l={left:0,center:.5,right:1},_=/[yzafpnµmkMGTPEZY]/;function w(z){return z&&z.duration>0}H.exports=function(F,B,O,I){var N=F._fullLayout,U;w(O)&&I&&(U=I()),M.makeTraceGroups(N._indicatorlayer,B,"trace").each(function(W){var Q=W[0],ue=Q.trace,se=g.select(this),he=ue._hasGauge,G=ue._isAngular,$=ue._isBullet,J=ue.domain,Z={w:N._size.w*(J.x[1]-J.x[0]),h:N._size.h*(J.y[1]-J.y[0]),l:N._size.l+N._size.w*J.x[0],r:N._size.r+N._size.w*(1-J.x[1]),t:N._size.t+N._size.h*(1-J.y[1]),b:N._size.b+N._size.h*J.y[0]},re=Z.l+Z.w/2,ne=Z.t+Z.h/2,j=Math.min(Z.w/2,Z.h),ee=i.innerRadius*j,ie,fe,be,Ae=ue.align||"center";if(fe=ne,!he)ie=Z.l+l[Ae]*Z.w,be=function(ce){return y(ce,Z.w,Z.h)};else if(G&&(ie=re,fe=ne+j/2,be=function(ce){return f(ce,.9*ee)}),$){var Be=i.bulletPadding,Ie=1-i.bulletNumberDomainSize+Be;ie=Z.l+(Ie+(1-Ie)*l[Ae])*Z.w,be=function(ce){return y(ce,(i.bulletNumberDomainSize-Be)*Z.w,Z.h)}}m(F,se,W,{numbersX:ie,numbersY:fe,numbersScaler:be,transitionOpts:O,onComplete:U});var Ze,at;he&&(Ze={range:ue.gauge.axis.range,color:ue.gauge.bgcolor,line:{color:ue.gauge.bordercolor,width:0},thickness:1},at={range:ue.gauge.axis.range,color:"rgba(0, 0, 0, 0)",line:{color:ue.gauge.bordercolor,width:ue.gauge.borderwidth},thickness:1});var it=se.selectAll("g.angular").data(G?W:[]);it.exit().remove();var et=se.selectAll("g.angularaxis").data(G?W:[]);et.exit().remove(),G&&E(F,se,W,{radius:j,innerRadius:ee,gauge:it,layer:et,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var lt=se.selectAll("g.bullet").data($?W:[]);lt.exit().remove();var Me=se.selectAll("g.bulletaxis").data($?W:[]);Me.exit().remove(),$&&S(F,se,W,{gauge:lt,layer:Me,size:Z,gaugeBg:Ze,gaugeOutline:at,transitionOpts:O,onComplete:U});var ge=se.selectAll("text.title").data(W);ge.exit().remove(),ge.enter().append("text").classed("title",!0),ge.attr("text-anchor",function(){return $?T.right:T[ue.title.align]}).text(ue.title.text).call(a.font,ue.title.font).call(n.convertToTspans,F),ge.attr("transform",function(){var ce=Z.l+Z.w*l[ue.title.align],ze,tt=i.titlePadding,nt=a.bBox(ge.node());if(he){if(G)if(ue.gauge.axis.visible){var Qe=a.bBox(et.node());ze=Qe.top-tt-nt.bottom}else ze=Z.t+Z.h/2-j/2-nt.bottom-tt;$&&(ze=fe-(nt.top+nt.bottom)/2,ce=Z.l-i.bulletPadding*Z.w)}else ze=ue._numbersTop-tt-nt.bottom;return t(ce,ze)})})};function S(z,F,B,O){var I=B[0].trace,N=O.gauge,U=O.layer,W=O.gaugeBg,Q=O.gaugeOutline,ue=O.size,se=I.domain,he=O.transitionOpts,G=O.onComplete,$,J,Z,re,ne;N.enter().append("g").classed("bullet",!0),N.attr("transform",t(ue.l,ue.t)),U.enter().append("g").classed("bulletaxis",!0).classed("crisp",!0),U.selectAll("g.xbulletaxistick,path,text").remove();var j=ue.h,ee=I.gauge.bar.thickness*j,ie=se.x[0],fe=se.x[0]+(se.x[1]-se.x[0])*(I._hasNumber||I._hasDelta?1-i.bulletNumberDomainSize:1);$=u(z,I.gauge.axis),$._id="xbulletaxis",$.domain=[ie,fe],$.setScale(),J=s.calcTicks($),Z=s.makeTransTickFn($),re=s.getTickSigns($)[2],ne=ue.t+ue.h,$.visible&&(s.drawTicks(z,$,{vals:$.ticks==="inside"?s.clipEnds($,J):J,layer:U,path:s.makeTickPath($,ne,re),transFn:Z}),s.drawLabels(z,$,{vals:J,layer:U,transFn:Z,labelFns:s.makeLabelFns($,ne)}));function be(et){et.attr("width",function(lt){return Math.max(0,$.c2p(lt.range[1])-$.c2p(lt.range[0]))}).attr("x",function(lt){return $.c2p(lt.range[0])}).attr("y",function(lt){return .5*(1-lt.thickness)*j}).attr("height",function(lt){return lt.thickness*j})}var Ae=[W].concat(I.gauge.steps),Be=N.selectAll("g.bg-bullet").data(Ae);Be.enter().append("g").classed("bg-bullet",!0).append("rect"),Be.select("rect").call(be).call(b),Be.exit().remove();var Ie=N.selectAll("g.value-bullet").data([I.gauge.bar]);Ie.enter().append("g").classed("value-bullet",!0).append("rect"),Ie.select("rect").attr("height",ee).attr("y",(j-ee)/2).call(b),w(he)?Ie.select("rect").transition().duration(he.duration).ease(he.easing).each("end",function(){G&&G()}).each("interrupt",function(){G&&G()}).attr("width",Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y)))):Ie.select("rect").attr("width",typeof B[0].y=="number"?Math.max(0,$.c2p(Math.min(I.gauge.axis.range[1],B[0].y))):0),Ie.exit().remove();var Ze=B.filter(function(){return I.gauge.threshold.value||I.gauge.threshold.value===0}),at=N.selectAll("g.threshold-bullet").data(Ze);at.enter().append("g").classed("threshold-bullet",!0).append("line"),at.select("line").attr("x1",$.c2p(I.gauge.threshold.value)).attr("x2",$.c2p(I.gauge.threshold.value)).attr("y1",(1-I.gauge.threshold.thickness)/2*j).attr("y2",(1-(1-I.gauge.threshold.thickness)/2)*j).call(p.stroke,I.gauge.threshold.line.color).style("stroke-width",I.gauge.threshold.line.width),at.exit().remove();var it=N.selectAll("g.gauge-outline").data([Q]);it.enter().append("g").classed("gauge-outline",!0).append("rect"),it.select("rect").call(be).call(b),it.exit().remove()}function E(z,F,B,O){var I=B[0].trace,N=O.size,U=O.radius,W=O.innerRadius,Q=O.gaugeBg,ue=O.gaugeOutline,se=[N.l+N.w/2,N.t+N.h/2+U/2],he=O.gauge,G=O.layer,$=O.transitionOpts,J=O.onComplete,Z=Math.PI/2;function re(Ct){var St=I.gauge.axis.range[0],Ot=I.gauge.axis.range[1],jt=(Ct-St)/(Ot-St)*Math.PI-Z;return jt<-Z?-Z:jt>Z?Z:jt}function ne(Ct){return g.svg.arc().innerRadius((W+U)/2-Ct/2*(U-W)).outerRadius((W+U)/2+Ct/2*(U-W)).startAngle(-Z)}function j(Ct){Ct.attr("d",function(St){return ne(St.thickness).startAngle(re(St.range[0])).endAngle(re(St.range[1]))()})}var ee,ie,fe,be;he.enter().append("g").classed("angular",!0),he.attr("transform",t(se[0],se[1])),G.enter().append("g").classed("angularaxis",!0).classed("crisp",!0),G.selectAll("g.xangularaxistick,path,text").remove(),ee=u(z,I.gauge.axis),ee.type="linear",ee.range=I.gauge.axis.range,ee._id="xangularaxis",ee.ticklabeloverflow="allow",ee.setScale();var Ae=function(Ct){return(ee.range[0]-Ct.x)/(ee.range[1]-ee.range[0])*Math.PI+Math.PI},Be={},Ie=s.makeLabelFns(ee,0),Ze=Ie.labelStandoff;Be.xFn=function(Ct){var St=Ae(Ct);return Math.cos(St)*Ze},Be.yFn=function(Ct){var St=Ae(Ct),Ot=Math.sin(St)>0?.2:1;return-Math.sin(St)*(Ze+Ct.fontSize*Ot)+Math.abs(Math.cos(St))*(Ct.fontSize*o)},Be.anchorFn=function(Ct){var St=Ae(Ct),Ot=Math.cos(St);return Math.abs(Ot)<.1?"middle":Ot>0?"start":"end"},Be.heightFn=function(Ct,St,Ot){var jt=Ae(Ct);return-.5*(1+Math.sin(jt))*Ot};var at=function(Ct){return t(se[0]+U*Math.cos(Ct),se[1]-U*Math.sin(Ct))};fe=function(Ct){return at(Ae(Ct))};var it=function(Ct){var St=Ae(Ct);return at(St)+"rotate("+-r(St)+")"};if(ie=s.calcTicks(ee),be=s.getTickSigns(ee)[2],ee.visible){be=ee.ticks==="inside"?-1:1;var et=(ee.linewidth||1)/2;s.drawTicks(z,ee,{vals:ie,layer:G,path:"M"+be*et+",0h"+be*ee.ticklen,transFn:it}),s.drawLabels(z,ee,{vals:ie,layer:G,transFn:fe,labelFns:Be})}var lt=[Q].concat(I.gauge.steps),Me=he.selectAll("g.bg-arc").data(lt);Me.enter().append("g").classed("bg-arc",!0).append("path"),Me.select("path").call(j).call(b),Me.exit().remove();var ge=ne(I.gauge.bar.thickness),ce=he.selectAll("g.value-arc").data([I.gauge.bar]);ce.enter().append("g").classed("value-arc",!0).append("path");var ze=ce.select("path");w($)?(ze.transition().duration($.duration).ease($.easing).each("end",function(){J&&J()}).each("interrupt",function(){J&&J()}).attrTween("d",d(ge,re(B[0].lastY),re(B[0].y))),I._lastValue=B[0].y):ze.attr("d",typeof B[0].y=="number"?ge.endAngle(re(B[0].y)):"M0,0Z"),ze.call(b),ce.exit().remove(),lt=[];var tt=I.gauge.threshold.value;(tt||tt===0)&&lt.push({range:[tt,tt],color:I.gauge.threshold.color,line:{color:I.gauge.threshold.line.color,width:I.gauge.threshold.line.width},thickness:I.gauge.threshold.thickness});var nt=he.selectAll("g.threshold-arc").data(lt);nt.enter().append("g").classed("threshold-arc",!0).append("path"),nt.select("path").call(j).call(b),nt.exit().remove();var Qe=he.selectAll("g.gauge-outline").data([ue]);Qe.enter().append("g").classed("gauge-outline",!0).append("path"),Qe.select("path").call(j).call(b),Qe.exit().remove()}function m(z,F,B,O){var I=B[0].trace,N=O.numbersX,U=O.numbersY,W=I.align||"center",Q=T[W],ue=O.transitionOpts,se=O.onComplete,he=M.ensureSingle(F,"g","numbers"),G,$,J,Z=[];I._hasNumber&&Z.push("number"),I._hasDelta&&(Z.push("delta"),I.delta.position==="left"&&Z.reverse());var re=he.selectAll("text").data(Z);re.enter().append("text"),re.attr("text-anchor",function(){return Q}).attr("class",function(at){return at}).attr("x",null).attr("y",null).attr("dx",null).attr("dy",null),re.exit().remove();function ne(at,it,et,lt){if(at.match("s")&&et>=0!=lt>=0&&!it(et).slice(-1).match(_)&&!it(lt).slice(-1).match(_)){var Me=at.slice().replace("s","f").replace(/\d+/,function(ce){return parseInt(ce)-1}),ge=u(z,{tickformat:Me});return function(ce){return Math.abs(ce)<1?s.tickText(ge,ce).text:it(ce)}}else return it}function j(){var at=u(z,{tickformat:I.number.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(ce){return s.tickText(at,ce).text},et=I.number.suffix,lt=I.number.prefix,Me=he.select("text.number");function ge(){var ce=typeof B[0].y=="number"?lt+it(B[0].y)+et:"-";Me.text(ce).call(a.font,I.number.font).call(n.convertToTspans,z)}return w(ue)?Me.transition().duration(ue.duration).ease(ue.easing).each("end",function(){ge(),se&&se()}).each("interrupt",function(){ge(),se&&se()}).attrTween("text",function(){var ce=g.select(this),ze=A(B[0].lastY,B[0].y);I._lastValue=B[0].y;var tt=ne(I.number.valueformat,it,B[0].lastY,B[0].y);return function(nt){ce.text(lt+tt(ze(nt))+et)}}):ge(),G=P(lt+it(B[0].y)+et,I.number.font,Q,z),Me}function ee(){var at=u(z,{tickformat:I.delta.valueformat},I._range);at.setScale(),s.prepTicks(at);var it=function(nt){return s.tickText(at,nt).text},et=I.delta.suffix,lt=I.delta.prefix,Me=function(nt){var Qe=I.delta.relative?nt.relativeDelta:nt.delta;return Qe},ge=function(nt,Qe){return nt===0||typeof nt!="number"||isNaN(nt)?"-":(nt>0?I.delta.increasing.symbol:I.delta.decreasing.symbol)+lt+Qe(nt)+et},ce=function(nt){return nt.delta>=0?I.delta.increasing.color:I.delta.decreasing.color};I._deltaLastValue===void 0&&(I._deltaLastValue=Me(B[0]));var ze=he.select("text.delta");ze.call(a.font,I.delta.font).call(p.fill,ce({delta:I._deltaLastValue}));function tt(){ze.text(ge(Me(B[0]),it)).call(p.fill,ce(B[0])).call(n.convertToTspans,z)}return w(ue)?ze.transition().duration(ue.duration).ease(ue.easing).tween("text",function(){var nt=g.select(this),Qe=Me(B[0]),Ct=I._deltaLastValue,St=ne(I.delta.valueformat,it,Ct,Qe),Ot=A(Ct,Qe);return I._deltaLastValue=Qe,function(jt){nt.text(ge(Ot(jt),St)),nt.call(p.fill,ce({delta:Ot(jt)}))}}).each("end",function(){tt(),se&&se()}).each("interrupt",function(){tt(),se&&se()}):tt(),$=P(ge(Me(B[0]),it),I.delta.font,Q,z),ze}var ie=I.mode+I.align,fe;if(I._hasDelta&&(fe=ee(),ie+=I.delta.position+I.delta.font.size+I.delta.font.family+I.delta.valueformat,ie+=I.delta.increasing.symbol+I.delta.decreasing.symbol,J=$),I._hasNumber&&(j(),ie+=I.number.font.size+I.number.font.family+I.number.valueformat+I.number.suffix+I.number.prefix,J=G),I._hasDelta&&I._hasNumber){var be=[(G.left+G.right)/2,(G.top+G.bottom)/2],Ae=[($.left+$.right)/2,($.top+$.bottom)/2],Be,Ie,Ze=.75*I.delta.font.size;I.delta.position==="left"&&(Be=L(I,"deltaPos",0,-1*(G.width*l[I.align]+$.width*(1-l[I.align])+Ze),ie,Math.min),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:$.left+Be,right:G.right,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="right"&&(Be=L(I,"deltaPos",0,G.width*(1-l[I.align])+$.width*l[I.align]+Ze,ie,Math.max),Ie=be[1]-Ae[1],J={width:G.width+$.width+Ze,height:Math.max(G.height,$.height),left:G.left,right:$.right+Be,top:Math.min(G.top,$.top+Ie),bottom:Math.max(G.bottom,$.bottom+Ie)}),I.delta.position==="bottom"&&(Be=null,Ie=$.height,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height,bottom:G.bottom+$.height}),I.delta.position==="top"&&(Be=null,Ie=G.top,J={width:Math.max(G.width,$.width),height:G.height+$.height,left:Math.min(G.left,$.left),right:Math.max(G.right,$.right),top:G.bottom-G.height-$.height,bottom:G.bottom}),fe.attr({dx:Be,dy:Ie})}(I._hasNumber||I._hasDelta)&&he.attr("transform",function(){var at=O.numbersScaler(J);ie+=at[2];var it=L(I,"numbersScale",1,at[0],ie,Math.min),et;I._scaleNumbers||(it=1),I._isAngular?et=U-it*J.bottom:et=U-it*(J.top+J.bottom)/2,I._numbersTop=it*J.top+et;var lt=J[W];W==="center"&&(lt=(J.left+J.right)/2);var Me=N-it*lt;return Me=L(I,"numbersTranslate",0,Me,ie,Math.max),t(Me,et)+e(it)})}function b(z){z.each(function(F){p.stroke(g.select(this),F.line.color)}).each(function(F){p.fill(g.select(this),F.color)}).style("stroke-width",function(F){return F.line.width})}function d(z,F,B){return function(){var O=x(F,B);return function(I){return z.endAngle(O(I))()}}}function u(z,F,B){var O=z._fullLayout,I=M.extendFlat({type:"linear",ticks:"outside",range:B,showline:!0},F),N={type:"linear",_id:"x"+F._id},U={letter:"x",font:O.font,noAutotickangles:!0,noHover:!0,noTickson:!0};function W(Q,ue){return M.coerce(I,N,v,Q,ue)}return c(I,N,W,U,O),h(I,N,W,U),N}function y(z,F,B){var O=Math.min(F/z.width,B/z.height);return[O,z,F+"x"+B]}function f(z,F){var B=Math.sqrt(z.width/2*(z.width/2)+z.height*z.height),O=F/B;return[O,z,F]}function P(z,F,B,O){var I=document.createElementNS("http://www.w3.org/2000/svg","text"),N=g.select(I);return N.text(z).attr("x",0).attr("y",0).attr("text-anchor",B).attr("data-unformatted",z).call(n.convertToTspans,O).call(a.font,F),a.bBox(N.node())}function L(z,F,B,O,I,N){var U="_cache"+F;z[U]&&z[U].key===I||(z[U]={key:I,value:B});var W=M.aggNums(N,null,[z[U].value,O],2);return z[U].value=W,W}}}),nH=Ye({"src/traces/indicator/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"indicator",basePlotModule:tH(),categories:["svg","noOpacity","noHover"],animatable:!0,attributes:Bk(),supplyDefaults:rH().supplyDefaults,calc:aH().calc,plot:iH(),meta:{}}}}),oH=Ye({"lib/indicator.js"(X,H){"use strict";H.exports=nH()}}),Uk=Ye({"src/traces/table/attributes.js"(X,H){"use strict";var g=Kg(),x=Oo().extendFlat,A=Ou().overrideAll,M=Au(),e=Wu().attributes,t=Cc().descriptionOnlyNumbers,r=H.exports=A({domain:e({name:"table",trace:!0}),columnwidth:{valType:"number",arrayOk:!0,dflt:null},columnorder:{valType:"data_array"},header:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:28},align:x({},g.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:x({},M({arrayOk:!0}))},cells:{values:{valType:"data_array",dflt:[]},format:{valType:"data_array",dflt:[],description:t("cell value")},prefix:{valType:"string",arrayOk:!0,dflt:null},suffix:{valType:"string",arrayOk:!0,dflt:null},height:{valType:"number",dflt:20},align:x({},g.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:x({},M({arrayOk:!0}))}},"calc","from-root")}}),sH=Ye({"src/traces/table/defaults.js"(X,H){"use strict";var g=ta(),x=Uk(),A=Wu().defaults;function M(e,t){for(var r=e.columnorder||[],o=e.header.values.length,a=r.slice(0,o),i=a.slice().sort(function(c,h){return c-h}),n=a.map(function(c){return i.indexOf(c)}),s=n.length;s<o;s++)n.push(s);t("columnorder",n)}H.exports=function(t,r,o,a){function i(n,s){return g.coerce(t,r,x,n,s)}A(r,a,i),i("columnwidth"),i("header.values"),i("header.format"),i("header.align"),i("header.prefix"),i("header.suffix"),i("header.height"),i("header.line.width"),i("header.line.color"),i("header.fill.color"),g.coerceFont(i,"header.font",a.font),M(r,i),i("cells.values"),i("cells.format"),i("cells.align"),i("cells.prefix"),i("cells.suffix"),i("cells.height"),i("cells.line.width"),i("cells.line.color"),i("cells.fill.color"),g.coerceFont(i,"cells.font",a.font),r._length=null}}}),lH=Ye({"src/traces/table/calc.js"(X,H){"use strict";var g=kv().wrap;H.exports=function(){return g({})}}}),jk=Ye({"src/traces/table/constants.js"(X,H){"use strict";H.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"}}}}),uH=Ye({"src/traces/table/data_preparation_helper.js"(X,H){"use strict";var g=jk(),x=Oo().extendFlat,A=jo(),M=xp().isTypedArray,e=xp().isArrayOrTypedArray;H.exports=function(v,p){var T=o(p.cells.values),l=function(Q){return Q.slice(p.header.values.length,Q.length)},_=o(p.header.values);_.length&&!_[0].length&&(_[0]=[""],_=o(_));var w=_.concat(l(T).map(function(){return a((_[0]||[""]).length)})),S=p.domain,E=Math.floor(v._fullLayout._size.w*(S.x[1]-S.x[0])),m=Math.floor(v._fullLayout._size.h*(S.y[1]-S.y[0])),b=p.header.values.length?w[0].map(function(){return p.header.height}):[g.emptyHeaderHeight],d=T.length?T[0].map(function(){return p.cells.height}):[],u=b.reduce(r,0),y=m-u,f=y+g.uplift,P=s(d,f),L=s(b,u),z=n(L,[]),F=n(P,z),B={},O=p._fullInput.columnorder;e(O)&&(O=Array.from(O)),O=O.concat(l(T.map(function(Q,ue){return ue})));var I=w.map(function(Q,ue){var se=e(p.columnwidth)?p.columnwidth[Math.min(ue,p.columnwidth.length-1)]:p.columnwidth;return A(se)?Number(se):1}),N=I.reduce(r,0);I=I.map(function(Q){return Q/N*E});var U=Math.max(t(p.header.line.width),t(p.cells.line.width)),W={key:p.uid+v._context.staticPlot,translateX:S.x[0]*v._fullLayout._size.w,translateY:v._fullLayout._size.h*(1-S.y[1]),size:v._fullLayout._size,width:E,maxLineWidth:U,height:m,columnOrder:O,groupHeight:m,rowBlocks:F,headerRowBlocks:z,scrollY:0,cells:x({},p.cells,{values:T}),headerCells:x({},p.header,{values:w}),gdColumns:w.map(function(Q){return Q[0]}),gdColumnsOriginalOrder:w.map(function(Q){return Q[0]}),prevPages:[0,0],scrollbarState:{scrollbarScrollInProgress:!1},columns:w.map(function(Q,ue){var se=B[Q];B[Q]=(se||0)+1;var he=Q+"__"+B[Q];return{key:he,label:Q,specIndex:ue,xIndex:O[ue],xScale:i,x:void 0,calcdata:void 0,columnWidth:I[ue]}})};return W.columns.forEach(function(Q){Q.calcdata=W,Q.x=i(Q)}),W};function t(h){if(e(h)){for(var v=0,p=0;p<h.length;p++)v=Math.max(v,t(h[p]));return v}return h}function r(h,v){return h+v}function o(h){var v=h.slice(),p=1/0,T=0,l;for(l=0;l<v.length;l++)M(v[l])?v[l]=Array.from(v[l]):e(v[l])||(v[l]=[v[l]]),p=Math.min(p,v[l].length),T=Math.max(T,v[l].length);if(p!==T)for(l=0;l<v.length;l++){var _=T-v[l].length;_&&(v[l]=v[l].concat(a(_)))}return v}function a(h){for(var v=new Array(h),p=0;p<h;p++)v[p]="";return v}function i(h){return h.calcdata.columns.reduce(function(v,p){return p.xIndex<h.xIndex?v+p.columnWidth:v},0)}function n(h,v){var p=Object.keys(h);return p.map(function(T){return x({},h[T],{auxiliaryBlocks:v})})}function s(h,v){for(var p={},T,l=0,_=0,w=c(),S=0,E=0,m=0;m<h.length;m++)T=h[m],w.rows.push({rowIndex:m,rowHeight:T}),_+=T,(_>=v||m===h.length-1)&&(p[l]=w,w.key=E++,w.firstRowIndex=S,w.lastRowIndex=m,w=c(),l+=_,S=m+1,_=0);return p}function c(){return{firstRowIndex:null,lastRowIndex:null,rows:[]}}}}),cH=Ye({"src/traces/table/data_split_helpers.js"(X){"use strict";var H=Oo().extendFlat;X.splitToPanels=function(x){var A=[0,0],M=H({},x,{key:"header",type:"header",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!0,values:x.calcdata.headerCells.values[x.specIndex],rowBlocks:x.calcdata.headerRowBlocks,calcdata:H({},x.calcdata,{cells:x.calcdata.headerCells})}),e=H({},x,{key:"cells1",type:"cells",page:0,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks}),t=H({},x,{key:"cells2",type:"cells",page:1,prevPages:A,currentRepaint:[null,null],dragHandle:!1,values:x.calcdata.cells.values[x.specIndex],rowBlocks:x.calcdata.rowBlocks});return[e,t,M]},X.splitToCells=function(x){var A=g(x);return(x.values||[]).slice(A[0],A[1]).map(function(M,e){var t=typeof M=="string"&&M.match(/[<$&> ]/)?"_keybuster_"+Math.random():"";return{keyWithinBlock:e+t,key:A[0]+e,column:x,calcdata:x.calcdata,page:x.page,rowBlocks:x.rowBlocks,value:M}})};function g(x){var A=x.rowBlocks[x.page],M=A?A.rows[0].rowIndex:0,e=A?M+A.rows.length:0;return[M,e]}}}),Vk=Ye({"src/traces/table/plot.js"(X,H){"use strict";var g=jk(),x=_n(),A=ta(),M=A.numberFormat,e=kv(),t=Bo(),r=jl(),o=ta().raiseToTop,a=ta().strTranslate,i=ta().cancelTransition,n=uH(),s=cH(),c=Fn();H.exports=function(ie,fe){var be=!ie._context.staticPlot,Ae=ie._fullLayout._paper.selectAll("."+g.cn.table).data(fe.map(function(Qe){var Ct=e.unwrap(Qe),St=Ct.trace;return n(ie,St)}),e.keyFun);Ae.exit().remove(),Ae.enter().append("g").classed(g.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"),Ae.attr("width",function(Qe){return Qe.width+Qe.size.l+Qe.size.r}).attr("height",function(Qe){return Qe.height+Qe.size.t+Qe.size.b}).attr("transform",function(Qe){return a(Qe.translateX,Qe.translateY)});var Be=Ae.selectAll("."+g.cn.tableControlView).data(e.repeat,e.keyFun),Ie=Be.enter().append("g").classed(g.cn.tableControlView,!0).style("box-sizing","content-box");if(be){var Ze="onwheel"in document?"wheel":"mousewheel";Ie.on("mousemove",function(Qe){Be.filter(function(Ct){return Qe===Ct}).call(l,ie)}).on(Ze,function(Qe){if(!Qe.scrollbarState.wheeling){Qe.scrollbarState.wheeling=!0;var Ct=Qe.scrollY+x.event.deltaY,St=Q(ie,Be,null,Ct)(Qe);St||(x.event.stopPropagation(),x.event.preventDefault()),Qe.scrollbarState.wheeling=!1}}).call(l,ie,!0)}Be.attr("transform",function(Qe){return a(Qe.size.l,Qe.size.t)});var at=Be.selectAll("."+g.cn.scrollBackground).data(e.repeat,e.keyFun);at.enter().append("rect").classed(g.cn.scrollBackground,!0).attr("fill","none"),at.attr("width",function(Qe){return Qe.width}).attr("height",function(Qe){return Qe.height}),Be.each(function(Qe){t.setClipUrl(x.select(this),v(ie,Qe),ie)});var it=Be.selectAll("."+g.cn.yColumn).data(function(Qe){return Qe.columns},e.keyFun);it.enter().append("g").classed(g.cn.yColumn,!0),it.exit().remove(),it.attr("transform",function(Qe){return a(Qe.x,0)}),be&&it.call(x.behavior.drag().origin(function(Qe){var Ct=x.select(this);return B(Ct,Qe,-g.uplift),o(this),Qe.calcdata.columnDragInProgress=!0,l(Be.filter(function(St){return Qe.calcdata.key===St.key}),ie),Qe}).on("drag",function(Qe){var Ct=x.select(this),St=function(ur){return(Qe===ur?x.event.x:ur.x)+ur.columnWidth/2};Qe.x=Math.max(-g.overdrag,Math.min(Qe.calcdata.width+g.overdrag-Qe.columnWidth,x.event.x));var Ot=T(it).filter(function(ur){return ur.calcdata.key===Qe.calcdata.key}),jt=Ot.sort(function(ur,ar){return St(ur)-St(ar)});jt.forEach(function(ur,ar){ur.xIndex=ar,ur.x=Qe===ur?ur.x:ur.xScale(ur)}),it.filter(function(ur){return Qe!==ur}).transition().ease(g.transitionEase).duration(g.transitionDuration).attr("transform",function(ur){return a(ur.x,0)}),Ct.call(i).attr("transform",a(Qe.x,-g.uplift))}).on("dragend",function(Qe){var Ct=x.select(this),St=Qe.calcdata;Qe.x=Qe.xScale(Qe),Qe.calcdata.columnDragInProgress=!1,B(Ct,Qe,0),z(ie,St,St.columns.map(function(Ot){return Ot.xIndex}))})),it.each(function(Qe){t.setClipUrl(x.select(this),p(ie,Qe),ie)});var et=it.selectAll("."+g.cn.columnBlock).data(s.splitToPanels,e.keyFun);et.enter().append("g").classed(g.cn.columnBlock,!0).attr("id",function(Qe){return Qe.key}),et.style("cursor",function(Qe){return Qe.dragHandle?"ew-resize":Qe.calcdata.scrollbarState.barWiggleRoom?"ns-resize":"default"});var lt=et.filter(I),Me=et.filter(O);be&&Me.call(x.behavior.drag().origin(function(Qe){return x.event.stopPropagation(),Qe}).on("drag",Q(ie,Be,-1)).on("dragend",function(){})),_(ie,Be,lt,et),_(ie,Be,Me,et);var ge=Be.selectAll("."+g.cn.scrollAreaClip).data(e.repeat,e.keyFun);ge.enter().append("clipPath").classed(g.cn.scrollAreaClip,!0).attr("id",function(Qe){return v(ie,Qe)});var ce=ge.selectAll("."+g.cn.scrollAreaClipRect).data(e.repeat,e.keyFun);ce.enter().append("rect").classed(g.cn.scrollAreaClipRect,!0).attr("x",-g.overdrag).attr("y",-g.uplift).attr("fill","none"),ce.attr("width",function(Qe){return Qe.width+2*g.overdrag}).attr("height",function(Qe){return Qe.height+g.uplift});var ze=it.selectAll("."+g.cn.columnBoundary).data(e.repeat,e.keyFun);ze.enter().append("g").classed(g.cn.columnBoundary,!0);var tt=it.selectAll("."+g.cn.columnBoundaryClippath).data(e.repeat,e.keyFun);tt.enter().append("clipPath").classed(g.cn.columnBoundaryClippath,!0),tt.attr("id",function(Qe){return p(ie,Qe)});var nt=tt.selectAll("."+g.cn.columnBoundaryRect).data(e.repeat,e.keyFun);nt.enter().append("rect").classed(g.cn.columnBoundaryRect,!0).attr("fill","none"),nt.attr("width",function(Qe){return Qe.columnWidth+2*h(Qe)}).attr("height",function(Qe){return Qe.calcdata.height+2*h(Qe)+g.uplift}).attr("x",function(Qe){return-h(Qe)}).attr("y",function(Qe){return-h(Qe)}),W(null,Me,Be)};function h(ee){return Math.ceil(ee.calcdata.maxLineWidth/2)}function v(ee,ie){return"clip"+ee._fullLayout._uid+"_scrollAreaBottomClip_"+ie.key}function p(ee,ie){return"clip"+ee._fullLayout._uid+"_columnBoundaryClippath_"+ie.calcdata.key+"_"+ie.specIndex}function T(ee){return[].concat.apply([],ee.map(function(ie){return ie})).map(function(ie){return ie.__data__})}function l(ee,ie,fe){function be(it){var et=it.rowBlocks;return J(et,et.length-1)+(et.length?Z(et[et.length-1],1/0):1)}var Ae=ee.selectAll("."+g.cn.scrollbarKit).data(e.repeat,e.keyFun);Ae.enter().append("g").classed(g.cn.scrollbarKit,!0).style("shape-rendering","geometricPrecision"),Ae.each(function(it){var et=it.scrollbarState;et.totalHeight=be(it),et.scrollableAreaHeight=it.groupHeight-N(it),et.currentlyVisibleHeight=Math.min(et.totalHeight,et.scrollableAreaHeight),et.ratio=et.currentlyVisibleHeight/et.totalHeight,et.barLength=Math.max(et.ratio*et.currentlyVisibleHeight,g.goldenRatio*g.scrollbarWidth),et.barWiggleRoom=et.currentlyVisibleHeight-et.barLength,et.wiggleRoom=Math.max(0,et.totalHeight-et.scrollableAreaHeight),et.topY=et.barWiggleRoom===0?0:it.scrollY/et.wiggleRoom*et.barWiggleRoom,et.bottomY=et.topY+et.barLength,et.dragMultiplier=et.wiggleRoom/et.barWiggleRoom}).attr("transform",function(it){var et=it.width+g.scrollbarWidth/2+g.scrollbarOffset;return a(et,N(it))});var Be=Ae.selectAll("."+g.cn.scrollbar).data(e.repeat,e.keyFun);Be.enter().append("g").classed(g.cn.scrollbar,!0);var Ie=Be.selectAll("."+g.cn.scrollbarSlider).data(e.repeat,e.keyFun);Ie.enter().append("g").classed(g.cn.scrollbarSlider,!0),Ie.attr("transform",function(it){return a(0,it.scrollbarState.topY||0)});var Ze=Ie.selectAll("."+g.cn.scrollbarGlyph).data(e.repeat,e.keyFun);Ze.enter().append("line").classed(g.cn.scrollbarGlyph,!0).attr("stroke","black").attr("stroke-width",g.scrollbarWidth).attr("stroke-linecap","round").attr("y1",g.scrollbarWidth/2),Ze.attr("y2",function(it){return it.scrollbarState.barLength-g.scrollbarWidth/2}).attr("stroke-opacity",function(it){return it.columnDragInProgress||!it.scrollbarState.barWiggleRoom||fe?0:.4}),Ze.transition().delay(0).duration(0),Ze.transition().delay(g.scrollbarHideDelay).duration(g.scrollbarHideDuration).attr("stroke-opacity",0);var at=Be.selectAll("."+g.cn.scrollbarCaptureZone).data(e.repeat,e.keyFun);at.enter().append("line").classed(g.cn.scrollbarCaptureZone,!0).attr("stroke","white").attr("stroke-opacity",.01).attr("stroke-width",g.scrollbarCaptureWidth).attr("stroke-linecap","butt").attr("y1",0).on("mousedown",function(it){var et=x.event.y,lt=this.getBoundingClientRect(),Me=it.scrollbarState,ge=et-lt.top,ce=x.scale.linear().domain([0,Me.scrollableAreaHeight]).range([0,Me.totalHeight]).clamp(!0);Me.topY<=ge&&ge<=Me.bottomY||Q(ie,ee,null,ce(ge-Me.barLength/2))(it)}).call(x.behavior.drag().origin(function(it){return x.event.stopPropagation(),it.scrollbarState.scrollbarScrollInProgress=!0,it}).on("drag",Q(ie,ee)).on("dragend",function(){})),at.attr("y2",function(it){return it.scrollbarState.scrollableAreaHeight}),ie._context.staticPlot&&(Ze.remove(),at.remove())}function _(ee,ie,fe,be){var Ae=w(fe),Be=S(Ae);d(Be);var Ie=E(Be);y(Ie);var Ze=b(Be),at=m(Ze);u(at),f(at,ie,be,ee),$(Be)}function w(ee){var ie=ee.selectAll("."+g.cn.columnCells).data(e.repeat,e.keyFun);return ie.enter().append("g").classed(g.cn.columnCells,!0),ie.exit().remove(),ie}function S(ee){var ie=ee.selectAll("."+g.cn.columnCell).data(s.splitToCells,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.columnCell,!0),ie.exit().remove(),ie}function E(ee){var ie=ee.selectAll("."+g.cn.cellRect).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("rect").classed(g.cn.cellRect,!0),ie}function m(ee){var ie=ee.selectAll("."+g.cn.cellText).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("text").classed(g.cn.cellText,!0).style("cursor",function(){return"auto"}).on("mousedown",function(){x.event.stopPropagation()}),ie}function b(ee){var ie=ee.selectAll("."+g.cn.cellTextHolder).data(e.repeat,function(fe){return fe.keyWithinBlock});return ie.enter().append("g").classed(g.cn.cellTextHolder,!0).style("shape-rendering","geometricPrecision"),ie}function d(ee){ee.each(function(ie,fe){var be=ie.calcdata.cells.font,Ae=ie.column.specIndex,Be={size:F(be.size,Ae,fe),color:F(be.color,Ae,fe),family:F(be.family,Ae,fe),weight:F(be.weight,Ae,fe),style:F(be.style,Ae,fe),variant:F(be.variant,Ae,fe),textcase:F(be.textcase,Ae,fe),lineposition:F(be.lineposition,Ae,fe),shadow:F(be.shadow,Ae,fe)};ie.rowNumber=ie.key,ie.align=F(ie.calcdata.cells.align,Ae,fe),ie.cellBorderWidth=F(ie.calcdata.cells.line.width,Ae,fe),ie.font=Be})}function u(ee){ee.each(function(ie){t.font(x.select(this),ie.font)})}function y(ee){ee.attr("width",function(ie){return ie.column.columnWidth}).attr("stroke-width",function(ie){return ie.cellBorderWidth}).each(function(ie){var fe=x.select(this);c.stroke(fe,F(ie.calcdata.cells.line.color,ie.column.specIndex,ie.rowNumber)),c.fill(fe,F(ie.calcdata.cells.fill.color,ie.column.specIndex,ie.rowNumber))})}function f(ee,ie,fe,be){ee.text(function(Ae){var Be=Ae.column.specIndex,Ie=Ae.rowNumber,Ze=Ae.value,at=typeof Ze=="string",it=at&&Ze.match(/<br>/i),et=!at||it;Ae.mayHaveMarkup=at&&Ze.match(/[<&>]/);var lt=P(Ze);Ae.latex=lt;var Me=lt?"":F(Ae.calcdata.cells.prefix,Be,Ie)||"",ge=lt?"":F(Ae.calcdata.cells.suffix,Be,Ie)||"",ce=lt?null:F(Ae.calcdata.cells.format,Be,Ie)||null,ze=Me+(ce?M(ce)(Ae.value):Ae.value)+ge,tt;Ae.wrappingNeeded=!Ae.wrapped&&!et&&!lt&&(tt=L(ze)),Ae.cellHeightMayIncrease=it||lt||Ae.mayHaveMarkup||(tt===void 0?L(ze):tt),Ae.needsConvertToTspans=Ae.mayHaveMarkup||Ae.wrappingNeeded||Ae.latex;var nt;if(Ae.wrappingNeeded){var Qe=g.wrapSplitCharacter===" "?ze.replace(/<a href=/ig,"<a_href="):ze,Ct=Qe.split(g.wrapSplitCharacter),St=g.wrapSplitCharacter===" "?Ct.map(function(Ot){return Ot.replace(/<a_href=/ig,"<a href=")}):Ct;Ae.fragments=St.map(function(Ot){return{text:Ot,width:null}}),Ae.fragments.push({fragment:g.wrapSpacer,width:null}),nt=St.join(g.lineBreaker)+g.lineBreaker+g.wrapSpacer}else delete Ae.fragments,nt=ze;return nt}).attr("dy",function(Ae){return Ae.needsConvertToTspans?0:"0.75em"}).each(function(Ae){var Be=this,Ie=x.select(Be),Ze=Ae.wrappingNeeded?se:he;Ae.needsConvertToTspans?r.convertToTspans(Ie,be,Ze(fe,Be,ie,be,Ae)):x.select(Be.parentNode).attr("transform",function(at){return a(G(at),g.cellPad)}).attr("text-anchor",function(at){return{left:"start",center:"middle",right:"end"}[at.align]})})}function P(ee){return typeof ee=="string"&&ee.match(g.latexCheck)}function L(ee){return ee.indexOf(g.wrapSplitCharacter)!==-1}function z(ee,ie,fe){var be=ie.gdColumnsOriginalOrder;ie.gdColumns.sort(function(Ae,Be){return fe[be.indexOf(Ae)]-fe[be.indexOf(Be)]}),ie.columnorder=fe,ee.emit("plotly_restyle")}function F(ee,ie,fe){if(A.isArrayOrTypedArray(ee)){var be=ee[Math.min(ie,ee.length-1)];return A.isArrayOrTypedArray(be)?be[Math.min(fe,be.length-1)]:be}else return ee}function B(ee,ie,fe){ee.transition().ease(g.releaseTransitionEase).duration(g.releaseTransitionDuration).attr("transform",a(ie.x,fe))}function O(ee){return ee.type==="cells"}function I(ee){return ee.type==="header"}function N(ee){var ie=ee.rowBlocks.length?ee.rowBlocks[0].auxiliaryBlocks:[];return ie.reduce(function(fe,be){return fe+Z(be,1/0)},0)}function U(ee,ie,fe){for(var be=[],Ae=0,Be=0;Be<ee.length;Be++){for(var Ie=ee[Be],Ze=Ie.rows,at=0,it=0;it<Ze.length;it++)at+=Ze[it].rowHeight;Ie.allRowsHeight=at;var et=Ae+at,lt=ie,Me=lt+fe;lt<et&&Me>Ae&&be.push(Be),Ae+=at}return be}function W(ee,ie,fe){var be=T(ie)[0];if(be!==void 0){var Ae=be.rowBlocks,Be=be.calcdata,Ie=J(Ae,Ae.length),Ze=be.calcdata.groupHeight-N(be),at=Be.scrollY=Math.max(0,Math.min(Ie-Ze,Be.scrollY)),it=U(Ae,at,Ze);it.length===1&&(it[0]===Ae.length-1?it.unshift(it[0]-1):it.push(it[0]+1)),it[0]%2&&it.reverse(),ie.each(function(et,lt){et.page=it[lt],et.scrollY=at}),ie.attr("transform",function(et){var lt=J(et.rowBlocks,et.page)-et.scrollY;return a(0,lt)}),ee&&(ue(ee,fe,ie,it,be.prevPages,be,0),ue(ee,fe,ie,it,be.prevPages,be,1),l(fe,ee))}}function Q(ee,ie,fe,be){return function(Be){var Ie=Be.calcdata?Be.calcdata:Be,Ze=ie.filter(function(lt){return Ie.key===lt.key}),at=fe||Ie.scrollbarState.dragMultiplier,it=Ie.scrollY;Ie.scrollY=be===void 0?Ie.scrollY+at*x.event.dy:be;var et=Ze.selectAll("."+g.cn.yColumn).selectAll("."+g.cn.columnBlock).filter(O);return W(ee,et,Ze),Ie.scrollY===it}}function ue(ee,ie,fe,be,Ae,Be,Ie){var Ze=be[Ie]!==Ae[Ie];Ze&&(clearTimeout(Be.currentRepaint[Ie]),Be.currentRepaint[Ie]=setTimeout(function(){var at=fe.filter(function(it,et){return et===Ie&&be[et]!==Ae[et]});_(ee,ie,at,fe),Ae[Ie]=be[Ie]}))}function se(ee,ie,fe,be){return function(){var Be=x.select(ie.parentNode);Be.each(function(Ie){var Ze=Ie.fragments;Be.selectAll("tspan.line").each(function(ze,tt){Ze[tt].width=this.getComputedTextLength()});var at=Ze[Ze.length-1].width,it=Ze.slice(0,-1),et=[],lt,Me,ge=0,ce=Ie.column.columnWidth-2*g.cellPad;for(Ie.value="";it.length;)lt=it.shift(),Me=lt.width+at,ge+Me>ce&&(Ie.value+=et.join(g.wrapSpacer)+g.lineBreaker,et=[],ge=0),et.push(lt.text),ge+=Me;ge&&(Ie.value+=et.join(g.wrapSpacer)),Ie.wrapped=!0}),Be.selectAll("tspan.line").remove(),f(Be.select("."+g.cn.cellText),fe,ee,be),x.select(ie.parentNode.parentNode).call($)}}function he(ee,ie,fe,be,Ae){return function(){if(!Ae.settledY){var Ie=x.select(ie.parentNode),Ze=ne(Ae),at=Ae.key-Ze.firstRowIndex,it=Ze.rows[at].rowHeight,et=Ae.cellHeightMayIncrease?ie.parentNode.getBoundingClientRect().height+2*g.cellPad:it,lt=Math.max(et,it),Me=lt-Ze.rows[at].rowHeight;Me&&(Ze.rows[at].rowHeight=lt,ee.selectAll("."+g.cn.columnCell).call($),W(null,ee.filter(O),0),l(fe,be,!0)),Ie.attr("transform",function(){var ge=this,ce=ge.parentNode,ze=ce.getBoundingClientRect(),tt=x.select(ge.parentNode).select("."+g.cn.cellRect).node().getBoundingClientRect(),nt=ge.transform.baseVal.consolidate(),Qe=tt.top-ze.top+(nt?nt.matrix.f:g.cellPad);return a(G(Ae,x.select(ge.parentNode).select("."+g.cn.cellTextHolder).node().getBoundingClientRect().width),Qe)}),Ae.settledY=!0}}}function G(ee,ie){switch(ee.align){case"left":return g.cellPad;case"right":return ee.column.columnWidth-(ie||0)-g.cellPad;case"center":return(ee.column.columnWidth-(ie||0))/2;default:return g.cellPad}}function $(ee){ee.attr("transform",function(ie){var fe=ie.rowBlocks[0].auxiliaryBlocks.reduce(function(Ie,Ze){return Ie+Z(Ze,1/0)},0),be=ne(ie),Ae=Z(be,ie.key),Be=Ae+fe;return a(0,Be)}).selectAll("."+g.cn.cellRect).attr("height",function(ie){return j(ne(ie),ie.key).rowHeight})}function J(ee,ie){for(var fe=0,be=ie-1;be>=0;be--)fe+=re(ee[be]);return fe}function Z(ee,ie){for(var fe=0,be=0;be<ee.rows.length&&ee.rows[be].rowIndex<ie;be++)fe+=ee.rows[be].rowHeight;return fe}function re(ee){var ie=ee.allRowsHeight;if(ie!==void 0)return ie;for(var fe=0,be=0;be<ee.rows.length;be++)fe+=ee.rows[be].rowHeight;return ee.allRowsHeight=fe,fe}function ne(ee){return ee.rowBlocks[ee.page]}function j(ee,ie){return ee.rows[ie-ee.firstRowIndex]}}}),fH=Ye({"src/traces/table/base_plot.js"(X){"use strict";var H=jh().getModuleCalcData,g=Vk(),x="table";X.name=x,X.plot=function(A){var M=H(A.calcdata,x)[0];M.length&&g(A,M)},X.clean=function(A,M,e,t){var r=t._has&&t._has(x),o=M._has&&M._has(x);r&&!o&&t._paperdiv.selectAll(".table").remove()}}}),hH=Ye({"src/traces/table/index.js"(X,H){"use strict";H.exports={attributes:Uk(),supplyDefaults:sH(),calc:lH(),plot:Vk(),moduleType:"trace",name:"table",basePlotModule:fH(),categories:["noOpacity"],meta:{}}}}),pH=Ye({"lib/table.js"(X,H){"use strict";H.exports=hH()}}),dH=Ye({"src/traces/carpet/axis_attributes.js"(X,H){"use strict";var g=Au(),x=Gf(),A=Vh(),M=Cc().descriptionWithDates,e=Ou().overrideAll,t=Uh().dash,r=Oo().extendFlat;H.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:g({editType:"calc"}),offset:{valType:"number",dflt:10,editType:"calc"},editType:"calc"},type:{valType:"enumerated",values:["-","linear","date","category"],dflt:"-",editType:"calc"},autotypenumbers:A.autotypenumbers,autorange:{valType:"enumerated",values:[!0,!1,"reversed"],dflt:!0,editType:"calc"},rangemode:{valType:"enumerated",values:["normal","tozero","nonnegative"],dflt:"normal",editType:"calc"},range:{valType:"info_array",editType:"calc",items:[{valType:"any",editType:"calc"},{valType:"any",editType:"calc"}]},fixedrange:{valType:"boolean",dflt:!1,editType:"calc"},cheatertype:{valType:"enumerated",values:["index","value"],dflt:"value",editType:"calc"},tickmode:{valType:"enumerated",values:["linear","array"],dflt:"array",editType:"calc"},nticks:{valType:"integer",min:0,dflt:0,editType:"calc"},tickvals:{valType:"data_array",editType:"calc"},ticktext:{valType:"data_array",editType:"calc"},showticklabels:{valType:"enumerated",values:["start","end","both","none"],dflt:"start",editType:"calc"},labelalias:r({},A.labelalias,{editType:"calc"}),tickfont:g({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"},minexponent:{valType:"number",dflt:3,min:0,editType:"calc"},separatethousands:{valType:"boolean",dflt:!1,editType:"calc"},tickformat:{valType:"string",dflt:"",editType:"calc",description:M("tick label")},tickformatstops:e(A.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:x.defaultLine,editType:"calc"},linewidth:{valType:"number",min:0,dflt:1,editType:"calc"},gridcolor:{valType:"color",editType:"calc"},gridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},griddash:r({},t,{editType:"calc"}),showgrid:{valType:"boolean",dflt:!0,editType:"calc"},minorgridcount:{valType:"integer",min:0,dflt:0,editType:"calc"},minorgridwidth:{valType:"number",min:0,dflt:1,editType:"calc"},minorgriddash:r({},t,{editType:"calc"}),minorgridcolor:{valType:"color",dflt:x.lightLine,editType:"calc"},startline:{valType:"boolean",editType:"calc"},startlinecolor:{valType:"color",editType:"calc"},startlinewidth:{valType:"number",dflt:1,editType:"calc"},endline:{valType:"boolean",editType:"calc"},endlinewidth:{valType:"number",dflt:1,editType:"calc"},endlinecolor:{valType:"color",editType:"calc"},tick0:{valType:"number",min:0,dflt:0,editType:"calc"},dtick:{valType:"number",min:0,dflt:1,editType:"calc"},arraytick0:{valType:"integer",min:0,dflt:0,editType:"calc"},arraydtick:{valType:"integer",min:1,dflt:1,editType:"calc"},editType:"calc"}}}),LT=Ye({"src/traces/carpet/attributes.js"(X,H){"use strict";var g=Au(),x=dH(),A=Gf(),M=g({editType:"calc"}),e=Pc().zorder;M.family.dflt='"Open Sans", verdana, arial, sans-serif',M.size.dflt=12,M.color.dflt=A.defaultLine,H.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:x,baxis:x,font:M,color:{valType:"color",dflt:A.defaultLine,editType:"plot"},zorder:e}}}),vH=Ye({"src/traces/carpet/xy_defaults.js"(X,H){"use strict";var g=ta().isArray1D;H.exports=function(A,M,e){var t=e("x"),r=t&&t.length,o=e("y"),a=o&&o.length;if(!r&&!a)return!1;if(M._cheater=!t,(!r||g(t))&&(!a||g(o))){var i=r?t.length:1/0;a&&(i=Math.min(i,o.length)),M.a&&M.a.length&&(i=Math.min(i,M.a.length)),M.b&&M.b.length&&(i=Math.min(i,M.b.length)),M._length=i}else M._length=null;return!0}}}),mH=Ye({"src/traces/carpet/axis_defaults.js"(X,H){"use strict";var g=LT(),x=Fn().addOpacity,A=Hn(),M=ta(),e=Zg(),t=$m(),r=Qm(),o=P2(),a=wv(),i=r1();H.exports=function(c,h,v){var p=v.letter,T=v.font||{},l=g[p+"axis"];function _(U,W){return M.coerce(c,h,l,U,W)}function w(U,W){return M.coerce2(c,h,l,U,W)}v.name&&(h._name=v.name,h._id=v.name),_("autotypenumbers",v.autotypenumbersDflt);var S=_("type");if(S==="-"&&(v.data&&n(h,v.data),h.type==="-"?h.type="linear":S=c.type=h.type),_("smoothing"),_("cheatertype"),_("showticklabels"),_("labelprefix",p+" = "),_("labelsuffix"),_("showtickprefix"),_("showticksuffix"),_("separatethousands"),_("tickformat"),_("exponentformat"),_("minexponent"),_("showexponent"),_("categoryorder"),_("tickmode"),_("tickvals"),_("ticktext"),_("tick0"),_("dtick"),h.tickmode==="array"&&(_("arraytick0"),_("arraydtick")),_("labelpadding"),h._hovertitle=p,S==="date"){var E=A.getComponentMethod("calendars","handleDefaults");E(c,h,"calendar",v.calendar)}a(h,v.fullLayout),h.c2p=M.identity;var m=_("color",v.dfltColor),b=m===c.color?m:T.color,d=_("title.text");d&&(M.coerceFont(_,"title.font",T,{overrideDflt:{size:M.bigFont(T.size),color:b}}),_("title.offset")),_("tickangle");var u=_("autorange",!h.isValidRange(c.range));u&&_("rangemode"),_("range"),h.cleanRange(),_("fixedrange"),e(c,h,_,S),r(c,h,_,S,v),t(c,h,_,S,v),o(c,h,_,{data:v.data,dataAttr:p});var y=w("gridcolor",x(m,.3)),f=w("gridwidth"),P=w("griddash"),L=_("showgrid");L||(delete h.gridcolor,delete h.gridwidth,delete h.griddash);var z=w("startlinecolor",m),F=w("startlinewidth",f),B=_("startline",h.showgrid||!!z||!!F);B||(delete h.startlinecolor,delete h.startlinewidth);var O=w("endlinecolor",m),I=w("endlinewidth",f),N=_("endline",h.showgrid||!!O||!!I);return N||(delete h.endlinecolor,delete h.endlinewidth),L?(_("minorgridcount"),_("minorgridwidth",f),_("minorgriddash",P),_("minorgridcolor",x(y,.06)),h.minorgridcount||(delete h.minorgridwidth,delete h.minorgriddash,delete h.minorgridcolor)):(delete h.gridcolor,delete h.gridwidth,delete h.griddash),h.showticklabels==="none"&&(delete h.tickfont,delete h.tickangle,delete h.showexponent,delete h.exponentformat,delete h.minexponent,delete h.tickformat,delete h.showticksuffix,delete h.showtickprefix),h.showticksuffix||delete h.ticksuffix,h.showtickprefix||delete h.tickprefix,_("tickmode"),h};function n(s,c){if(s.type==="-"){var h=s._id,v=h.charAt(0),p=v+"calendar",T=s[p];s.type=i(c,T,{autotypenumbers:s.autotypenumbers})}}}}),gH=Ye({"src/traces/carpet/ab_defaults.js"(X,H){"use strict";var g=mH(),x=cl();H.exports=function(e,t,r,o,a){var i=o("a");i||(o("da"),o("a0"));var n=o("b");n||(o("db"),o("b0")),A(e,t,r,a)};function A(M,e,t,r){var o=["aaxis","baxis"];o.forEach(function(a){var i=a.charAt(0),n=M[a]||{},s=x.newContainer(e,a),c={noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,tickfont:"x",id:i+"axis",letter:i,font:e.font,name:a,data:M[i],calendar:e.calendar,dfltColor:r,bgColor:t.paper_bgcolor,autotypenumbersDflt:t.autotypenumbers,fullLayout:t};g(n,s,c),s._categories=s._categories||[],!M[a]&&n.type!=="-"&&(M[a]={type:n.type})})}}}),yH=Ye({"src/traces/carpet/defaults.js"(X,H){"use strict";var g=ta(),x=vH(),A=gH(),M=LT(),e=Gf();H.exports=function(r,o,a,i){function n(h,v){return g.coerce(r,o,M,h,v)}o._clipPathId="clip"+o.uid+"carpet";var s=n("color",e.defaultLine);if(g.coerceFont(n,"font",i.font),n("carpet"),A(r,o,i,n,s),!o.a||!o.b){o.visible=!1;return}o.a.length<3&&(o.aaxis.smoothing=0),o.b.length<3&&(o.baxis.smoothing=0);var c=x(r,o,n);c||(o.visible=!1),o._cheater&&n("cheaterslope"),n("zorder")}}}),qk=Ye({"src/traces/carpet/map_1d_array.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(A,M,e){var t;for(g(A)?A.length>M.length&&(A=A.slice(0,M.length)):A=[],t=0;t<M.length;t++)A[t]=e(M[t]);return A}}}),Hk=Ye({"src/traces/carpet/makepath.js"(X,H){"use strict";H.exports=function(x,A,M){if(x.length===0)return"";var e,t=[],r=M?3:1;for(e=0;e<x.length;e+=r)t.push(x[e]+","+A[e]),M&&e<x.length-r&&(t.push("C"),t.push([x[e+1]+","+A[e+1],x[e+2]+","+A[e+2]+" "].join(" ")));return t.join(M?"":"L")}}}),_H=Ye({"src/traces/carpet/orient_text.js"(X,H){"use strict";H.exports=function(x,A,M,e,t,r){var o=t[0]*x.dpdx(A),a=t[1]*x.dpdy(M),i=1,n=1;if(r){var s=Math.sqrt(t[0]*t[0]+t[1]*t[1]),c=Math.sqrt(r[0]*r[0]+r[1]*r[1]),h=(t[0]*r[0]+t[1]*r[1])/s/c;n=Math.max(0,h)}var v=Math.atan2(a,o)*180/Math.PI;return v<-90?(v+=180,i=-i):v>90&&(v-=180,i=-i),{angle:v,flip:i,p:x.c2p(e,A,M),offsetMultplier:n}}}}),xH=Ye({"src/traces/carpet/plot.js"(X,H){"use strict";var g=_n(),x=Bo(),A=qk(),M=Hk(),e=_H(),t=jl(),r=ta(),o=r.strRotate,a=r.strTranslate,i=oh();H.exports=function(_,w,S,E){var m=_._context.staticPlot,b=w.xaxis,d=w.yaxis,u=_._fullLayout,y=u._clips;r.makeTraceGroups(E,S,"trace").each(function(f){var P=g.select(this),L=f[0],z=L.trace,F=z.aaxis,B=z.baxis,O=r.ensureSingle(P,"g","minorlayer"),I=r.ensureSingle(P,"g","majorlayer"),N=r.ensureSingle(P,"g","boundarylayer"),U=r.ensureSingle(P,"g","labellayer");P.style("opacity",z.opacity),s(b,d,I,F,"a",F._gridlines,!0,m),s(b,d,I,B,"b",B._gridlines,!0,m),s(b,d,O,F,"a",F._minorgridlines,!0,m),s(b,d,O,B,"b",B._minorgridlines,!0,m),s(b,d,N,F,"a-boundary",F._boundarylines,m),s(b,d,N,B,"b-boundary",B._boundarylines,m);var W=c(_,b,d,z,L,U,F._labels,"a-label"),Q=c(_,b,d,z,L,U,B._labels,"b-label");h(_,U,z,L,b,d,W,Q),n(z,L,y,b,d)})};function n(l,_,w,S,E){var m,b,d,u,y=w.select("#"+l._clipPathId);y.size()||(y=w.append("clipPath").classed("carpetclip",!0));var f=r.ensureSingle(y,"path","carpetboundary"),P=_.clipsegments,L=[];for(u=0;u<P.length;u++)m=P[u],b=A([],m.x,S.c2p),d=A([],m.y,E.c2p),L.push(M(b,d,m.bicubic));var z="M"+L.join("L")+"Z";y.attr("id",l._clipPathId),f.attr("d",z)}function s(l,_,w,S,E,m,b){var d="const-"+E+"-lines",u=w.selectAll("."+d).data(m);u.enter().append("path").classed(d,!0).style("vector-effect",b?"none":"non-scaling-stroke"),u.each(function(y){var f=y,P=f.x,L=f.y,z=A([],P,l.c2p),F=A([],L,_.c2p),B="M"+M(z,F,f.smoothing),O=g.select(this);O.attr("d",B).style("stroke-width",f.width).style("stroke",f.color).style("stroke-dasharray",x.dashStyle(f.dash,f.width)).style("fill","none")}),u.exit().remove()}function c(l,_,w,S,E,m,b,d){var u=m.selectAll("text."+d).data(b);u.enter().append("text").classed(d,!0);var y=0,f={};return u.each(function(P,L){var z;if(P.axis.tickangle==="auto")z=e(S,_,w,P.xy,P.dxy);else{var F=(P.axis.tickangle+180)*Math.PI/180;z=e(S,_,w,P.xy,[Math.cos(F),Math.sin(F)])}L||(f={angle:z.angle,flip:z.flip});var B=(P.endAnchor?-1:1)*z.flip,O=g.select(this).attr({"text-anchor":B>0?"start":"end","data-notex":1}).call(x.font,P.font).text(P.text).call(t.convertToTspans,l),I=x.bBox(this);O.attr("transform",a(z.p[0],z.p[1])+o(z.angle)+a(P.axis.labelpadding*B,I.height*.3)),y=Math.max(y,I.width+P.axis.labelpadding)}),u.exit().remove(),f.maxExtent=y,f}function h(l,_,w,S,E,m,b,d){var u,y,f,P,L=r.aggNums(Math.min,null,w.a),z=r.aggNums(Math.max,null,w.a),F=r.aggNums(Math.min,null,w.b),B=r.aggNums(Math.max,null,w.b);u=.5*(L+z),y=F,f=w.ab2xy(u,y,!0),P=w.dxyda_rough(u,y),b.angle===void 0&&r.extendFlat(b,e(w,E,m,f,w.dxydb_rough(u,y))),T(l,_,w,S,f,P,w.aaxis,E,m,b,"a-title"),u=L,y=.5*(F+B),f=w.ab2xy(u,y,!0),P=w.dxydb_rough(u,y),d.angle===void 0&&r.extendFlat(d,e(w,E,m,f,w.dxyda_rough(u,y))),T(l,_,w,S,f,P,w.baxis,E,m,d,"b-title")}var v=i.LINE_SPACING,p=(1-i.MID_SHIFT)/v+1;function T(l,_,w,S,E,m,b,d,u,y,f){var P=[];b.title.text&&P.push(b.title.text);var L=_.selectAll("text."+f).data(P),z=y.maxExtent;L.enter().append("text").classed(f,!0),L.each(function(){var F=e(w,d,u,E,m);["start","both"].indexOf(b.showticklabels)===-1&&(z=0);var B=b.title.font.size;z+=B+b.title.offset;var O=y.angle+(y.flip<0?180:0),I=(O-F.angle+450)%360,N=I>90&&I<270,U=g.select(this);U.text(b.title.text).call(t.convertToTspans,l),N&&(z=(-t.lineCount(U)+p)*v*B-z),U.attr("transform",a(F.p[0],F.p[1])+o(F.angle)+a(0,z)).attr("text-anchor","middle").call(x.font,b.title.font)}),L.exit().remove()}}}),bH=Ye({"src/traces/carpet/cheater_basis.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M){var e,t,r,o,a,i,n=[],s=g(x)?x.length:x,c=g(A)?A.length:A,h=g(x)?x:null,v=g(A)?A:null;h&&(r=(h.length-1)/(h[h.length-1]-h[0])/(s-1)),v&&(o=(v.length-1)/(v[v.length-1]-v[0])/(c-1));var p,T=1/0,l=-1/0;for(t=0;t<c;t++)for(n[t]=[],i=v?(v[t]-v[0])*o:t/(c-1),e=0;e<s;e++)a=h?(h[e]-h[0])*r:e/(s-1),p=a-i*M,T=Math.min(p,T),l=Math.max(p,l),n[t][e]=p;var _=1/(l-T),w=-T*_;for(t=0;t<c;t++)for(e=0;e<s;e++)n[t][e]=_*n[t][e]+w;return n}}}),wH=Ye({"src/traces/carpet/array_minmax.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(A){return x(A,0)};function x(A,M){if(!g(A)||M>=10)return null;for(var e=1/0,t=-1/0,r=A.length,o=0;o<r;o++){var a=A[o];if(g(a)){var i=x(a,M+1);i&&(e=Math.min(i[0],e),t=Math.max(i[1],t))}else e=Math.min(a,e),t=Math.max(a,t)}return[e,t]}}}),TH=Ye({"src/traces/carpet/calc_gridlines.js"(X,H){"use strict";var g=Co(),x=Oo().extendFlat;H.exports=function(M,e,t){var r,o,a,i,n,s,c,h,v,p,T,l,_,w,S=M["_"+e],E=M[e+"axis"],m=E._gridlines=[],b=E._minorgridlines=[],d=E._boundarylines=[],u=M["_"+t],y=M[t+"axis"];E.tickmode==="array"&&(E.tickvals=S.slice());var f=M._xctrl,P=M._yctrl,L=f[0].length,z=f.length,F=M._a.length,B=M._b.length;g.prepTicks(E),E.tickmode==="array"&&delete E.tickvals;var O=E.smoothing?3:1;function I(U){var W,Q,ue,se,he,G,$,J,Z,re,ne,j,ee=[],ie=[],fe={};if(e==="b")for(Q=M.b2j(U),ue=Math.floor(Math.max(0,Math.min(B-2,Q))),se=Q-ue,fe.length=B,fe.crossLength=F,fe.xy=function(be){return M.evalxy([],be,Q)},fe.dxy=function(be,Ae){return M.dxydi([],be,ue,Ae,se)},W=0;W<F;W++)G=Math.min(F-2,W),$=W-G,J=M.evalxy([],W,Q),y.smoothing&&W>0&&(Z=M.dxydi([],W-1,ue,0,se),ee.push(he[0]+Z[0]/3),ie.push(he[1]+Z[1]/3),re=M.dxydi([],W-1,ue,1,se),ee.push(J[0]-re[0]/3),ie.push(J[1]-re[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;else for(W=M.a2i(U),G=Math.floor(Math.max(0,Math.min(F-2,W))),$=W-G,fe.length=F,fe.crossLength=B,fe.xy=function(be){return M.evalxy([],W,be)},fe.dxy=function(be,Ae){return M.dxydj([],G,be,$,Ae)},Q=0;Q<B;Q++)ue=Math.min(B-2,Q),se=Q-ue,J=M.evalxy([],W,Q),y.smoothing&&Q>0&&(ne=M.dxydj([],G,Q-1,$,0),ee.push(he[0]+ne[0]/3),ie.push(he[1]+ne[1]/3),j=M.dxydj([],G,Q-1,$,1),ee.push(J[0]-j[0]/3),ie.push(J[1]-j[1]/3)),ee.push(J[0]),ie.push(J[1]),he=J;return fe.axisLetter=e,fe.axis=E,fe.crossAxis=y,fe.value=U,fe.constvar=t,fe.index=h,fe.x=ee,fe.y=ie,fe.smoothing=y.smoothing,fe}function N(U){var W,Q,ue,se,he,G=[],$=[],J={};if(J.length=S.length,J.crossLength=u.length,e==="b")for(ue=Math.max(0,Math.min(B-2,U)),he=Math.min(1,Math.max(0,U-ue)),J.xy=function(Z){return M.evalxy([],Z,U)},J.dxy=function(Z,re){return M.dxydi([],Z,ue,re,he)},W=0;W<L;W++)G[W]=f[U*O][W],$[W]=P[U*O][W];else for(Q=Math.max(0,Math.min(F-2,U)),se=Math.min(1,Math.max(0,U-Q)),J.xy=function(Z){return M.evalxy([],U,Z)},J.dxy=function(Z,re){return M.dxydj([],Q,Z,se,re)},W=0;W<z;W++)G[W]=f[W][U*O],$[W]=P[W][U*O];return J.axisLetter=e,J.axis=E,J.crossAxis=y,J.value=S[U],J.constvar=t,J.index=U,J.x=G,J.y=$,J.smoothing=y.smoothing,J}if(E.tickmode==="array"){for(i=5e-15,n=[Math.floor((S.length-1-E.arraytick0)/E.arraydtick*(1+i)),Math.ceil(-E.arraytick0/E.arraydtick/(1+i))].sort(function(U,W){return U-W}),s=n[0]-1,c=n[1]+1,h=s;h<c;h++)o=E.arraytick0+E.arraydtick*h,!(o<0||o>S.length-1)&&m.push(x(N(o),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s;h<c;h++)if(a=E.arraytick0+E.arraydtick*h,T=Math.min(a+E.arraydtick,S.length-1),!(a<0||a>S.length-1)&&!(T<0||T>S.length-1))for(l=S[a],_=S[T],r=0;r<E.minorgridcount;r++)w=T-a,!(w<=0)&&(p=l+(_-l)*(r+1)/(E.minorgridcount+1)*(E.arraydtick/w),!(p<S[0]||p>S[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash})));E.startline&&d.push(x(N(0),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(N(S.length-1),{color:E.endlinecolor,width:E.endlinewidth}))}else{for(i=5e-15,n=[Math.floor((S[S.length-1]-E.tick0)/E.dtick*(1+i)),Math.ceil((S[0]-E.tick0)/E.dtick/(1+i))].sort(function(U,W){return U-W}),s=n[0],c=n[1],h=s;h<=c;h++)v=E.tick0+E.dtick*h,m.push(x(I(v),{color:E.gridcolor,width:E.gridwidth,dash:E.griddash}));for(h=s-1;h<c+1;h++)for(v=E.tick0+E.dtick*h,r=0;r<E.minorgridcount;r++)p=v+E.dtick*(r+1)/(E.minorgridcount+1),!(p<S[0]||p>S[S.length-1])&&b.push(x(I(p),{color:E.minorgridcolor,width:E.minorgridwidth,dash:E.minorgriddash}));E.startline&&d.push(x(I(S[0]),{color:E.startlinecolor,width:E.startlinewidth})),E.endline&&d.push(x(I(S[S.length-1]),{color:E.endlinecolor,width:E.endlinewidth}))}}}}),AH=Ye({"src/traces/carpet/calc_labels.js"(X,H){"use strict";var g=Co(),x=Oo().extendFlat;H.exports=function(M,e){var t,r,o,a,i,n=e._labels=[],s=e._gridlines;for(t=0;t<s.length;t++)i=s[t],["start","both"].indexOf(e.showticklabels)!==-1&&(r=g.tickText(e,i.value),x(r,{prefix:o,suffix:a,endAnchor:!0,xy:i.xy(0),dxy:i.dxy(0,0),axis:i.axis,length:i.crossAxis.length,font:i.axis.tickfont,isFirst:t===0,isLast:t===s.length-1}),n.push(r)),["end","both"].indexOf(e.showticklabels)!==-1&&(r=g.tickText(e,i.value),x(r,{endAnchor:!1,xy:i.xy(i.crossLength-1),dxy:i.dxy(i.crossLength-2,1),axis:i.axis,length:i.crossAxis.length,font:i.axis.tickfont,isFirst:t===0,isLast:t===s.length-1}),n.push(r))}}}),SH=Ye({"src/traces/carpet/calc_clippath.js"(X,H){"use strict";H.exports=function(x,A,M,e){var t,r,o,a=[],i=!!M.smoothing,n=!!e.smoothing,s=x[0].length-1,c=x.length-1;for(t=0,r=[],o=[];t<=s;t++)r[t]=x[0][t],o[t]=A[0][t];for(a.push({x:r,y:o,bicubic:i}),t=0,r=[],o=[];t<=c;t++)r[t]=x[t][s],o[t]=A[t][s];for(a.push({x:r,y:o,bicubic:n}),t=s,r=[],o=[];t>=0;t--)r[s-t]=x[c][t],o[s-t]=A[c][t];for(a.push({x:r,y:o,bicubic:i}),t=c,r=[],o=[];t>=0;t--)r[c-t]=x[t][0],o[c-t]=A[t][0];return a.push({x:r,y:o,bicubic:n}),a}}}),MH=Ye({"src/traces/carpet/smooth_fill_2d_array.js"(X,H){"use strict";var g=ta();H.exports=function(A,M,e){var t,r,o,a=[],i=[],n=A[0].length,s=A.length;function c(Q,ue){var se=0,he,G=0;return Q>0&&(he=A[ue][Q-1])!==void 0&&(G++,se+=he),Q<n-1&&(he=A[ue][Q+1])!==void 0&&(G++,se+=he),ue>0&&(he=A[ue-1][Q])!==void 0&&(G++,se+=he),ue<s-1&&(he=A[ue+1][Q])!==void 0&&(G++,se+=he),se/Math.max(1,G)}var h=0;for(t=0;t<n;t++)for(r=0;r<s;r++)A[r][t]===void 0&&(a.push(t),i.push(r),A[r][t]=c(t,r)),h=Math.max(h,Math.abs(A[r][t]));if(!a.length)return A;var v,p,T,l,_,w,S,E,m,b,d,u=1e-5,y=0,f=100,P=0,L=a.length;do{for(y=0,o=0;o<L;o++){t=a[o],r=i[o];var z=0,F=0,B,O,I,N,U,W;t===0?(U=Math.min(n-1,2),I=M[U],N=M[1],B=A[r][U],O=A[r][1],F+=O+(O-B)*(M[0]-N)/(N-I),z++):t===n-1&&(U=Math.max(0,n-3),I=M[U],N=M[n-2],B=A[r][U],O=A[r][n-2],F+=O+(O-B)*(M[n-1]-N)/(N-I),z++),(t===0||t===n-1)&&r>0&&r<s-1&&(v=e[r+1]-e[r],p=e[r]-e[r-1],F+=(p*A[r+1][t]+v*A[r-1][t])/(p+v),z++),r===0?(W=Math.min(s-1,2),I=e[W],N=e[1],B=A[W][t],O=A[1][t],F+=O+(O-B)*(e[0]-N)/(N-I),z++):r===s-1&&(W=Math.max(0,s-3),I=e[W],N=e[s-2],B=A[W][t],O=A[s-2][t],F+=O+(O-B)*(e[s-1]-N)/(N-I),z++),(r===0||r===s-1)&&t>0&&t<n-1&&(v=M[t+1]-M[t],p=M[t]-M[t-1],F+=(p*A[r][t+1]+v*A[r][t-1])/(p+v),z++),z?F/=z:(T=M[t+1]-M[t],l=M[t]-M[t-1],_=e[r+1]-e[r],w=e[r]-e[r-1],S=T*l*(T+l),E=_*w*(_+w),F=(S*(w*A[r+1][t]+_*A[r-1][t])+E*(l*A[r][t+1]+T*A[r][t-1]))/(E*(l+T)+S*(w+_))),m=F-A[r][t],b=m/h,y+=b*b,d=z?0:.85,A[r][t]+=m*(1+d)}y=Math.sqrt(y)}while(P++<f&&y>u);return g.log("Smoother converged to",y,"after",P,"iterations"),A}}}),EH=Ye({"src/traces/carpet/constants.js"(X,H){"use strict";H.exports={RELATIVE_CULL_TOLERANCE:1e-6}}}),kH=Ye({"src/traces/carpet/catmull_rom.js"(X,H){"use strict";var g=.5;H.exports=function(A,M,e,t){var r=A[0]-M[0],o=A[1]-M[1],a=e[0]-M[0],i=e[1]-M[1],n=Math.pow(r*r+o*o,g/2),s=Math.pow(a*a+i*i,g/2),c=(s*s*r-n*n*a)*t,h=(s*s*o-n*n*i)*t,v=s*(n+s)*3,p=n*(n+s)*3;return[[M[0]+(v&&c/v),M[1]+(v&&h/v)],[M[0]-(p&&c/p),M[1]-(p&&h/p)]]}}}),CH=Ye({"src/traces/carpet/compute_control_points.js"(X,H){"use strict";var g=kH(),x=ta().ensureArray;function A(M,e,t){var r=-.5*t[0]+1.5*e[0],o=-.5*t[1]+1.5*e[1];return[(2*r+M[0])/3,(2*o+M[1])/3]}H.exports=function(e,t,r,o,a,i){var n,s,c,h,v,p,T,l,_,w,S=r[0].length,E=r.length,m=a?3*S-2:S,b=i?3*E-2:E;for(e=x(e,b),t=x(t,b),c=0;c<b;c++)e[c]=x(e[c],m),t[c]=x(t[c],m);for(s=0,h=0;s<E;s++,h+=i?3:1)for(v=e[h],p=t[h],T=r[s],l=o[s],n=0,c=0;n<S;n++,c+=a?3:1)v[c]=T[n],p[c]=l[n];if(a)for(s=0,h=0;s<E;s++,h+=i?3:1){for(n=1,c=3;n<S-1;n++,c+=3)_=g([r[s][n-1],o[s][n-1]],[r[s][n],o[s][n]],[r[s][n+1],o[s][n+1]],a),e[h][c-1]=_[0][0],t[h][c-1]=_[0][1],e[h][c+1]=_[1][0],t[h][c+1]=_[1][1];w=A([e[h][0],t[h][0]],[e[h][2],t[h][2]],[e[h][3],t[h][3]]),e[h][1]=w[0],t[h][1]=w[1],w=A([e[h][m-1],t[h][m-1]],[e[h][m-3],t[h][m-3]],[e[h][m-4],t[h][m-4]]),e[h][m-2]=w[0],t[h][m-2]=w[1]}if(i)for(c=0;c<m;c++){for(h=3;h<b-3;h+=3)_=g([e[h-3][c],t[h-3][c]],[e[h][c],t[h][c]],[e[h+3][c],t[h+3][c]],i),e[h-1][c]=_[0][0],t[h-1][c]=_[0][1],e[h+1][c]=_[1][0],t[h+1][c]=_[1][1];w=A([e[0][c],t[0][c]],[e[2][c],t[2][c]],[e[3][c],t[3][c]]),e[1][c]=w[0],t[1][c]=w[1],w=A([e[b-1][c],t[b-1][c]],[e[b-3][c],t[b-3][c]],[e[b-4][c],t[b-4][c]]),e[b-2][c]=w[0],t[b-2][c]=w[1]}if(a&&i)for(h=1;h<b;h+=(h+1)%3===0?2:1){for(c=3;c<m-3;c+=3)_=g([e[h][c-3],t[h][c-3]],[e[h][c],t[h][c]],[e[h][c+3],t[h][c+3]],a),e[h][c-1]=.5*(e[h][c-1]+_[0][0]),t[h][c-1]=.5*(t[h][c-1]+_[0][1]),e[h][c+1]=.5*(e[h][c+1]+_[1][0]),t[h][c+1]=.5*(t[h][c+1]+_[1][1]);w=A([e[h][0],t[h][0]],[e[h][2],t[h][2]],[e[h][3],t[h][3]]),e[h][1]=.5*(e[h][1]+w[0]),t[h][1]=.5*(t[h][1]+w[1]),w=A([e[h][m-1],t[h][m-1]],[e[h][m-3],t[h][m-3]],[e[h][m-4],t[h][m-4]]),e[h][m-2]=.5*(e[h][m-2]+w[0]),t[h][m-2]=.5*(t[h][m-2]+w[1])}return[e,t]}}}),LH=Ye({"src/traces/carpet/create_spline_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A,M,e){var t=x-2,r=A-2;return M&&e?function(o,a,i){o||(o=[]);var n,s,c,h,v,p,T=Math.max(0,Math.min(Math.floor(a),t)),l=Math.max(0,Math.min(Math.floor(i),r)),_=Math.max(0,Math.min(1,a-T)),w=Math.max(0,Math.min(1,i-l));T*=3,l*=3;var S=_*_,E=S*_,m=1-_,b=m*m,d=b*m,u=w*w,y=u*w,f=1-w,P=f*f,L=P*f;for(p=0;p<g.length;p++)v=g[p],n=d*v[l][T]+3*(b*_*v[l][T+1]+m*S*v[l][T+2])+E*v[l][T+3],s=d*v[l+1][T]+3*(b*_*v[l+1][T+1]+m*S*v[l+1][T+2])+E*v[l+1][T+3],c=d*v[l+2][T]+3*(b*_*v[l+2][T+1]+m*S*v[l+2][T+2])+E*v[l+2][T+3],h=d*v[l+3][T]+3*(b*_*v[l+3][T+1]+m*S*v[l+3][T+2])+E*v[l+3][T+3],o[p]=L*n+3*(P*w*s+f*u*c)+y*h;return o}:M?function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_,w;n*=3;var S=c*c,E=S*c,m=1-c,b=m*m,d=b*m,u=1-h;for(_=0;_<g.length;_++)w=g[_],v=u*w[s][n]+h*w[s+1][n],p=u*w[s][n+1]+h*w[s+1][n+1],T=u*w[s][n+2]+h*w[s+1][n+1],l=u*w[s][n+3]+h*w[s+1][n+1],o[_]=d*v+3*(b*c*p+m*S*T)+E*l;return o}:e?function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_,w;s*=3;var S=h*h,E=S*h,m=1-h,b=m*m,d=b*m,u=1-c;for(_=0;_<g.length;_++)w=g[_],v=u*w[s][n]+c*w[s][n+1],p=u*w[s+1][n]+c*w[s+1][n+1],T=u*w[s+2][n]+c*w[s+2][n+1],l=u*w[s+3][n]+c*w[s+3][n+1],o[_]=d*v+3*(b*h*p+m*S*T)+E*l;return o}:function(o,a,i){o||(o=[]);var n=Math.max(0,Math.min(Math.floor(a),t)),s=Math.max(0,Math.min(Math.floor(i),r)),c=Math.max(0,Math.min(1,a-n)),h=Math.max(0,Math.min(1,i-s)),v,p,T,l,_=1-h,w=1-c;for(T=0;T<g.length;T++)l=g[T],v=w*l[s][n]+c*l[s][n+1],p=w*l[s+1][n]+c*l[s+1][n+1],o[T]=_*v+h*p;return o}}}}),PH=Ye({"src/traces/carpet/create_i_derivative_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A){return x&&A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3,t*=3;var v=r*r,p=1-r,T=p*p,l=p*r*2,_=-3*T,w=3*(T-l),S=3*(l-v),E=3*v,m=o*o,b=m*o,d=1-o,u=d*d,y=u*d;for(h=0;h<g.length;h++)c=g[h],a=_*c[t][e]+w*c[t][e+1]+S*c[t][e+2]+E*c[t][e+3],i=_*c[t+1][e]+w*c[t+1][e+1]+S*c[t+1][e+2]+E*c[t+1][e+3],n=_*c[t+2][e]+w*c[t+2][e+1]+S*c[t+2][e+2]+E*c[t+2][e+3],s=_*c[t+3][e]+w*c[t+3][e+1]+S*c[t+3][e+2]+E*c[t+3][e+3],M[h]=y*a+3*(u*o*i+d*m*n)+b*s;return M}:x?function(M,e,t,r,o){M||(M=[]);var a,i,n,s;e*=3;var c=r*r,h=1-r,v=h*h,p=h*r*2,T=-3*v,l=3*(v-p),_=3*(p-c),w=3*c,S=1-o;for(n=0;n<g.length;n++)s=g[n],a=T*s[t][e]+l*s[t][e+1]+_*s[t][e+2]+w*s[t][e+3],i=T*s[t+1][e]+l*s[t+1][e+1]+_*s[t+1][e+2]+w*s[t+1][e+3],M[n]=S*a+o*i;return M}:A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;t*=3;var v=o*o,p=v*o,T=1-o,l=T*T,_=l*T;for(c=0;c<g.length;c++)h=g[c],a=h[t][e+1]-h[t][e],i=h[t+1][e+1]-h[t+1][e],n=h[t+2][e+1]-h[t+2][e],s=h[t+3][e+1]-h[t+3][e],M[c]=_*a+3*(l*o*i+T*v*n)+p*s;return M}:function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c=1-o;for(n=0;n<g.length;n++)s=g[n],a=s[t][e+1]-s[t][e],i=s[t+1][e+1]-s[t+1][e],M[n]=c*a+o*i;return M}}}}),IH=Ye({"src/traces/carpet/create_j_derivative_evaluator.js"(X,H){"use strict";H.exports=function(g,x,A){return x&&A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3,t*=3;var v=r*r,p=v*r,T=1-r,l=T*T,_=l*T,w=o*o,S=1-o,E=S*S,m=S*o*2,b=-3*E,d=3*(E-m),u=3*(m-w),y=3*w;for(h=0;h<g.length;h++)c=g[h],a=b*c[t][e]+d*c[t+1][e]+u*c[t+2][e]+y*c[t+3][e],i=b*c[t][e+1]+d*c[t+1][e+1]+u*c[t+2][e+1]+y*c[t+3][e+1],n=b*c[t][e+2]+d*c[t+1][e+2]+u*c[t+2][e+2]+y*c[t+3][e+2],s=b*c[t][e+3]+d*c[t+1][e+3]+u*c[t+2][e+3]+y*c[t+3][e+3],M[h]=_*a+3*(l*r*i+T*v*n)+p*s;return M}:x?function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c,h;e*=3;var v=o*o,p=v*o,T=1-o,l=T*T,_=l*T;for(c=0;c<g.length;c++)h=g[c],a=h[t+1][e]-h[t][e],i=h[t+1][e+1]-h[t][e+1],n=h[t+1][e+2]-h[t][e+2],s=h[t+1][e+3]-h[t][e+3],M[c]=_*a+3*(l*o*i+T*v*n)+p*s;return M}:A?function(M,e,t,r,o){M||(M=[]);var a,i,n,s;t*=3;var c=1-r,h=o*o,v=1-o,p=v*v,T=v*o*2,l=-3*p,_=3*(p-T),w=3*(T-h),S=3*h;for(n=0;n<g.length;n++)s=g[n],a=l*s[t][e]+_*s[t+1][e]+w*s[t+2][e]+S*s[t+3][e],i=l*s[t][e+1]+_*s[t+1][e+1]+w*s[t+2][e+1]+S*s[t+3][e+1],M[n]=c*a+r*i;return M}:function(M,e,t,r,o){M||(M=[]);var a,i,n,s,c=1-r;for(n=0;n<g.length;n++)s=g[n],a=s[t+1][e]-s[t][e],i=s[t+1][e+1]-s[t][e+1],M[n]=c*a+r*i;return M}}}}),RH=Ye({"src/traces/carpet/set_convert.js"(X,H){"use strict";var g=EH(),x=v2().findBin,A=CH(),M=LH(),e=PH(),t=IH();H.exports=function(o){var a=o._a,i=o._b,n=a.length,s=i.length,c=o.aaxis,h=o.baxis,v=a[0],p=a[n-1],T=i[0],l=i[s-1],_=a[a.length-1]-a[0],w=i[i.length-1]-i[0],S=_*g.RELATIVE_CULL_TOLERANCE,E=w*g.RELATIVE_CULL_TOLERANCE;v-=S,p+=S,T-=E,l+=E,o.isVisible=function(m,b){return m>v&&m<p&&b>T&&b<l},o.isOccluded=function(m,b){return m<v||m>p||b<T||b>l},o.setScale=function(){var m=o._x,b=o._y,d=A(o._xctrl,o._yctrl,m,b,c.smoothing,h.smoothing);o._xctrl=d[0],o._yctrl=d[1],o.evalxy=M([o._xctrl,o._yctrl],n,s,c.smoothing,h.smoothing),o.dxydi=e([o._xctrl,o._yctrl],c.smoothing,h.smoothing),o.dxydj=t([o._xctrl,o._yctrl],c.smoothing,h.smoothing)},o.i2a=function(m){var b=Math.max(0,Math.floor(m[0]),n-2),d=m[0]-b;return(1-d)*a[b]+d*a[b+1]},o.j2b=function(m){var b=Math.max(0,Math.floor(m[1]),n-2),d=m[1]-b;return(1-d)*i[b]+d*i[b+1]},o.ij2ab=function(m){return[o.i2a(m[0]),o.j2b(m[1])]},o.a2i=function(m){var b=Math.max(0,Math.min(x(m,a),n-2)),d=a[b],u=a[b+1];return Math.max(0,Math.min(n-1,b+(m-d)/(u-d)))},o.b2j=function(m){var b=Math.max(0,Math.min(x(m,i),s-2)),d=i[b],u=i[b+1];return Math.max(0,Math.min(s-1,b+(m-d)/(u-d)))},o.ab2ij=function(m){return[o.a2i(m[0]),o.b2j(m[1])]},o.i2c=function(m,b){return o.evalxy([],m,b)},o.ab2xy=function(m,b,d){if(!d&&(m<a[0]||m>a[n-1]|b<i[0]||b>i[s-1]))return[!1,!1];var u=o.a2i(m),y=o.b2j(b),f=o.evalxy([],u,y);if(d){var P=0,L=0,z=[],F,B,O,I;m<a[0]?(F=0,B=0,P=(m-a[0])/(a[1]-a[0])):m>a[n-1]?(F=n-2,B=1,P=(m-a[n-1])/(a[n-1]-a[n-2])):(F=Math.max(0,Math.min(n-2,Math.floor(u))),B=u-F),b<i[0]?(O=0,I=0,L=(b-i[0])/(i[1]-i[0])):b>i[s-1]?(O=s-2,I=1,L=(b-i[s-1])/(i[s-1]-i[s-2])):(O=Math.max(0,Math.min(s-2,Math.floor(y))),I=y-O),P&&(o.dxydi(z,F,O,B,I),f[0]+=z[0]*P,f[1]+=z[1]*P),L&&(o.dxydj(z,F,O,B,I),f[0]+=z[0]*L,f[1]+=z[1]*L)}return f},o.c2p=function(m,b,d){return[b.c2p(m[0]),d.c2p(m[1])]},o.p2x=function(m,b,d){return[b.p2c(m[0]),d.p2c(m[1])]},o.dadi=function(m){var b=Math.max(0,Math.min(a.length-2,m));return a[b+1]-a[b]},o.dbdj=function(m){var b=Math.max(0,Math.min(i.length-2,m));return i[b+1]-i[b]},o.dxyda=function(m,b,d,u){var y=o.dxydi(null,m,b,d,u),f=o.dadi(m,d);return[y[0]/f,y[1]/f]},o.dxydb=function(m,b,d,u){var y=o.dxydj(null,m,b,d,u),f=o.dbdj(b,u);return[y[0]/f,y[1]/f]},o.dxyda_rough=function(m,b,d){var u=_*(d||.1),y=o.ab2xy(m+u,b,!0),f=o.ab2xy(m-u,b,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dxydb_rough=function(m,b,d){var u=w*(d||.1),y=o.ab2xy(m,b+u,!0),f=o.ab2xy(m,b-u,!0);return[(y[0]-f[0])*.5/u,(y[1]-f[1])*.5/u]},o.dpdx=function(m){return m._m},o.dpdy=function(m){return m._m}}}}),DH=Ye({"src/traces/carpet/calc.js"(X,H){"use strict";var g=Co(),x=ta().isArray1D,A=bH(),M=wH(),e=TH(),t=AH(),r=SH(),o=X2(),a=MH(),i=Z2(),n=RH();H.exports=function(c,h){var v=g.getFromId(c,h.xaxis),p=g.getFromId(c,h.yaxis),T=h.aaxis,l=h.baxis,_=h.x,w=h.y,S=[];_&&x(_)&&S.push("x"),w&&x(w)&&S.push("y"),S.length&&i(h,T,l,"a","b",S);var E=h._a=h._a||h.a,m=h._b=h._b||h.b;_=h._x||h.x,w=h._y||h.y;var b={};if(h._cheater){var d=T.cheatertype==="index"?E.length:E,u=l.cheatertype==="index"?m.length:m;_=A(d,u,h.cheaterslope)}h._x=_=o(_),h._y=w=o(w),a(_,E,m),a(w,E,m),n(h),h.setScale();var y=M(_),f=M(w),P=.5*(y[1]-y[0]),L=.5*(y[1]+y[0]),z=.5*(f[1]-f[0]),F=.5*(f[1]+f[0]),B=1.3;return y=[L-P*B,L+P*B],f=[F-z*B,F+z*B],h._extremes[v._id]=g.findExtremes(v,y,{padded:!0}),h._extremes[p._id]=g.findExtremes(p,f,{padded:!0}),e(h,"a","b"),e(h,"b","a"),t(h,T),t(h,l),b.clipsegments=r(h._xctrl,h._yctrl,T,l),b.x=_,b.y=w,b.a=E,b.b=m,[b]}}}),zH=Ye({"src/traces/carpet/index.js"(X,H){"use strict";H.exports={attributes:LT(),supplyDefaults:yH(),plot:xH(),calc:DH(),animatable:!0,isContainer:!0,moduleType:"trace",name:"carpet",basePlotModule:Pf(),categories:["cartesian","svg","carpet","carpetAxis","notLegendIsolatable","noMultiCategory","noHover","noSortingByValue"],meta:{}}}}),FH=Ye({"lib/carpet.js"(X,H){"use strict";H.exports=zH()}}),Gk=Ye({"src/traces/scattercarpet/attributes.js"(X,H){"use strict";var g=$d(),x=Pc(),A=Pl(),M=xs().hovertemplateAttrs,e=xs().texttemplateAttrs,t=tu(),r=Oo().extendFlat,o=x.marker,a=x.line,i=o.line;H.exports={carpet:{valType:"string",editType:"calc"},a:{valType:"data_array",editType:"calc"},b:{valType:"data_array",editType:"calc"},mode:r({},x.mode,{dflt:"markers"}),text:r({},x.text,{}),texttemplate:e({editType:"plot"},{keys:["a","b","text"]}),hovertext:r({},x.hovertext,{}),line:{color:a.color,width:a.width,dash:a.dash,backoff:a.backoff,shape:r({},a.shape,{values:["linear","spline"]}),smoothing:a.smoothing,editType:"calc"},connectgaps:x.connectgaps,fill:r({},x.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:g(),marker:r({symbol:o.symbol,opacity:o.opacity,maxdisplayed:o.maxdisplayed,angle:o.angle,angleref:o.angleref,standoff:o.standoff,size:o.size,sizeref:o.sizeref,sizemin:o.sizemin,sizemode:o.sizemode,line:r({width:i.width,editType:"calc"},t("marker.line")),gradient:o.gradient,editType:"calc"},t("marker")),textfont:x.textfont,textposition:x.textposition,selected:x.selected,unselected:x.unselected,hoverinfo:r({},A.hoverinfo,{flags:["a","b","text","name"]}),hoveron:x.hoveron,hovertemplate:M(),zorder:x.zorder}}}),OH=Ye({"src/traces/scattercarpet/defaults.js"(X,H){"use strict";var g=ta(),x=Tv(),A=uu(),M=md(),e=Dd(),t=n1(),r=zd(),o=ev(),a=Gk();H.exports=function(n,s,c,h){function v(E,m){return g.coerce(n,s,a,E,m)}v("carpet"),s.xaxis="x",s.yaxis="y";var p=v("a"),T=v("b"),l=Math.min(p.length,T.length);if(!l){s.visible=!1;return}s._length=l,v("text"),v("texttemplate"),v("hovertext");var _=l<x.PTS_LINESONLY?"lines+markers":"lines";v("mode",_),A.hasMarkers(s)&&M(n,s,c,h,v,{gradient:!0}),A.hasLines(s)&&(e(n,s,c,h,v,{backoff:!0}),t(n,s,v),v("connectgaps")),A.hasText(s)&&r(n,s,h,v);var w=[];(A.hasMarkers(s)||A.hasText(s))&&(v("marker.maxdisplayed"),w.push("points")),v("fill"),s.fill!=="none"&&(o(n,s,c,v),A.hasLines(s)||t(n,s,v)),(s.fill==="tonext"||s.fill==="toself")&&w.push("fills");var S=v("hoveron",w.join("+")||"points");S!=="fills"&&v("hovertemplate"),v("zorder"),g.coerceSelectionMarkerOpacity(s,v)}}}),BH=Ye({"src/traces/scattercarpet/format_labels.js"(X,H){"use strict";H.exports=function(x,A){var M={},e=A._carpet,t=e.ab2ij([x.a,x.b]),r=Math.floor(t[0]),o=t[0]-r,a=Math.floor(t[1]),i=t[1]-a,n=e.evalxy([],r,a,o,i);return M.yLabel=n[1].toFixed(3),M}}}),PT=Ye({"src/traces/carpet/lookup_carpetid.js"(X,H){"use strict";H.exports=function(g,x){for(var A=g._fullData.length,M,e=0;e<A;e++){var t=g._fullData[e];if(t.index!==x.index&&t.type==="carpet"&&(M||(M=t),t.carpet===x.carpet))return t}return M}}}),NH=Ye({"src/traces/scattercarpet/calc.js"(X,H){"use strict";var g=jo(),x=Fd(),A=Av(),M=Od(),e=Bd().calcMarkerSize,t=PT();H.exports=function(o,a){var i=a._carpetTrace=t(o,a);if(!(!i||!i.visible||i.visible==="legendonly")){var n;a.xaxis=i.xaxis,a.yaxis=i.yaxis;var s=a._length,c=new Array(s),h,v,p=!1;for(n=0;n<s;n++)if(h=a.a[n],v=a.b[n],g(h)&&g(v)){var T=i.ab2xy(+h,+v,!0),l=i.isVisible(+h,+v);l||(p=!0),c[n]={x:T[0],y:T[1],a:h,b:v,vis:l}}else c[n]={x:!1,y:!1};return a._needsCull=p,c[0].carpet=i,c[0].trace=a,e(a,s),x(o,a),A(c,a),M(c,a),c}}}}),UH=Ye({"src/traces/scattercarpet/plot.js"(X,H){"use strict";var g=o1(),x=Co(),A=Bo();H.exports=function(e,t,r,o){var a,i,n,s=r[0][0].carpet,c=x.getFromId(e,s.xaxis||"x"),h=x.getFromId(e,s.yaxis||"y"),v={xaxis:c,yaxis:h,plot:t.plot};for(a=0;a<r.length;a++)i=r[a][0].trace,i._xA=c,i._yA=h;for(g(e,v,r,o),a=0;a<r.length;a++)i=r[a][0].trace,n=o.selectAll("g.trace"+i.uid+" .js-line"),A.setClipUrl(n,r[a][0].carpet._clipPathId,e)}}}),jH=Ye({"src/traces/scattercarpet/hover.js"(X,H){"use strict";var g=l1(),x=ta().fillText;H.exports=function(M,e,t,r){var o=g(M,e,t,r);if(!o||o[0].index===!1)return;var a=o[0];if(a.index===void 0){var i=1-a.y0/M.ya._length,n=M.xa._length,s=n*i/2,c=n-s;return a.x0=Math.max(Math.min(a.x0,c),s),a.x1=Math.max(Math.min(a.x1,c),s),o}var h=a.cd[a.index];a.a=h.a,a.b=h.b,a.xLabelVal=void 0,a.yLabelVal=void 0;var v=a.trace,p=v._carpet,T=v._module.formatLabels(h,v);a.yLabel=T.yLabel,delete a.text;var l=[];function _(E,m){var b;E.labelprefix&&E.labelprefix.length>0?b=E.labelprefix.replace(/ = $/,""):b=E._hovertitle,l.push(b+": "+m.toFixed(3)+E.labelsuffix)}if(!v.hovertemplate){var w=h.hi||v.hoverinfo,S=w.split("+");S.indexOf("all")!==-1&&(S=["a","b","text"]),S.indexOf("a")!==-1&&_(p.aaxis,h.a),S.indexOf("b")!==-1&&_(p.baxis,h.b),l.push("y: "+a.yLabel),S.indexOf("text")!==-1&&x(h,v,l),a.extraText=l.join("<br>")}return o}}}),VH=Ye({"src/traces/scattercarpet/event_data.js"(X,H){"use strict";H.exports=function(x,A,M,e,t){var r=e[t];return x.a=r.a,x.b=r.b,x.y=r.y,x}}}),qH=Ye({"src/traces/scattercarpet/index.js"(X,H){"use strict";H.exports={attributes:Gk(),supplyDefaults:OH(),colorbar:cp(),formatLabels:BH(),calc:NH(),plot:UH(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:jH(),selectPoints:u1(),eventData:VH(),moduleType:"trace",name:"scattercarpet",basePlotModule:Pf(),categories:["svg","carpet","symbols","showLegend","carpetDependent","zoomScale"],meta:{}}}}),HH=Ye({"lib/scattercarpet.js"(X,H){"use strict";H.exports=qH()}}),Wk=Ye({"src/traces/contourcarpet/attributes.js"(X,H){"use strict";var g=h1(),x=U_(),A=tu(),M=Oo().extendFlat,e=x.contours;H.exports=M({carpet:{valType:"string",editType:"calc"},z:g.z,a:g.x,a0:g.x0,da:g.dx,b:g.y,b0:g.y0,db:g.dy,text:g.text,hovertext:g.hovertext,transpose:g.transpose,atype:g.xtype,btype:g.ytype,fillcolor:x.fillcolor,autocontour:x.autocontour,ncontours:x.ncontours,contours:{type:e.type,start:e.start,end:e.end,size:e.size,coloring:{valType:"enumerated",values:["fill","lines","none"],dflt:"fill",editType:"calc"},showlines:e.showlines,showlabels:e.showlabels,labelfont:e.labelfont,labelformat:e.labelformat,operation:e.operation,value:e.value,editType:"calc",impliedEdits:{autocontour:!1}},line:{color:x.line.color,width:x.line.width,dash:x.line.dash,smoothing:x.line.smoothing,editType:"plot"},zorder:x.zorder},A("",{cLetter:"z",autoColorDflt:!1}))}}),Zk=Ye({"src/traces/contourcarpet/defaults.js"(X,H){"use strict";var g=ta(),x=W2(),A=Wk(),M=bM(),e=o3(),t=s3();H.exports=function(o,a,i,n){function s(p,T){return g.coerce(o,a,A,p,T)}function c(p){return g.coerce2(o,a,A,p)}if(s("carpet"),o.a&&o.b){var h=x(o,a,s,n,"a","b");if(!h){a.visible=!1;return}s("text");var v=s("contours.type")==="constraint";v?M(o,a,s,n,i,{hasHover:!1}):(e(o,a,s,c),t(o,a,s,n,{hasHover:!1}))}else a._defaultColor=i,a._length=null;s("zorder")}}}),GH=Ye({"src/traces/contourcarpet/calc.js"(X,H){"use strict";var g=jp(),x=ta(),A=Z2(),M=X2(),e=Y2(),t=K2(),r=nM(),o=Zk(),a=PT(),i=hM();H.exports=function(c,h){var v=h._carpetTrace=a(c,h);if(!(!v||!v.visible||v.visible==="legendonly")){if(!h.a||!h.b){var p=c.data[v.index],T=c.data[h.index];T.a||(T.a=p.a),T.b||(T.b=p.b),o(T,h,h._defaultColor,c._fullLayout)}var l=n(c,h);return i(h,h._z),l}};function n(s,c){var h=c._carpetTrace,v=h.aaxis,p=h.baxis,T,l,_,w,S,E,m;v._minDtick=0,p._minDtick=0,x.isArray1D(c.z)&&A(c,v,p,"a","b",["z"]),T=c._a=c._a||c.a,w=c._b=c._b||c.b,T=T?v.makeCalcdata(c,"_a"):[],w=w?p.makeCalcdata(c,"_b"):[],l=c.a0||0,_=c.da||1,S=c.b0||0,E=c.db||1,m=c._z=M(c._z||c.z,c.transpose),c._emptypoints=t(m),e(m,c._emptypoints);var b=x.maxRowLength(m),d=c.xtype==="scaled"?"":T,u=r(c,d,l,_,b,v),y=c.ytype==="scaled"?"":w,f=r(c,y,S,E,m.length,p),P={a:u,b:f,z:m};return c.contours.type==="levels"&&c.contours.coloring!=="none"&&g(s,c,{vals:m,containerStr:"",cLetter:"z"}),[P]}}}),WH=Ye({"src/traces/carpet/axis_aligned_line.js"(X,H){"use strict";var g=ta().isArrayOrTypedArray;H.exports=function(x,A,M,e){var t,r,o,a,i,n,s,c,h,v,p,T,l,_=g(M)?"a":"b",w=_==="a"?x.aaxis:x.baxis,S=w.smoothing,E=_==="a"?x.a2i:x.b2j,m=_==="a"?M:e,b=_==="a"?e:M,d=_==="a"?A.a.length:A.b.length,u=_==="a"?A.b.length:A.a.length,y=Math.floor(_==="a"?x.b2j(b):x.a2i(b)),f=_==="a"?function(ue){return x.evalxy([],ue,y)}:function(ue){return x.evalxy([],y,ue)};S&&(o=Math.max(0,Math.min(u-2,y)),a=y-o,r=_==="a"?function(ue,se){return x.dxydi([],ue,o,se,a)}:function(ue,se){return x.dxydj([],o,ue,a,se)});var P=E(m[0]),L=E(m[1]),z=P<L?1:-1,F=(L-P)*1e-8,B=z>0?Math.floor:Math.ceil,O=z>0?Math.ceil:Math.floor,I=z>0?Math.min:Math.max,N=z>0?Math.max:Math.min,U=B(P+F),W=O(L-F);s=f(P);var Q=[[s]];for(t=U;t*z<W*z;t+=z)i=[],p=N(P,t),T=I(L,t+z),l=T-p,n=Math.max(0,Math.min(d-2,Math.floor(.5*(p+T)))),c=f(T),S&&(h=r(n,p-n),v=r(n,T-n),i.push([s[0]+h[0]/3*l,s[1]+h[1]/3*l]),i.push([c[0]-v[0]/3*l,c[1]-v[1]/3*l])),i.push(c),Q.push(i),s=c;return Q}}}),ZH=Ye({"src/traces/contourcarpet/plot.js"(X,H){"use strict";var g=_n(),x=qk(),A=Hk(),M=Bo(),e=ta(),t=dM(),r=vM(),o=l3(),a=V_(),i=gM(),n=mM(),s=yM(),c=PT(),h=WH();H.exports=function(d,u,y,f){var P=u.xaxis,L=u.yaxis;e.makeTraceGroups(f,y,"contour").each(function(z){var F=g.select(this),B=z[0],O=B.trace,I=O._carpetTrace=c(d,O),N=d.calcdata[I.index][0];if(!I.visible||I.visible==="legendonly")return;var U=B.a,W=B.b,Q=O.contours,ue=n(Q,u,B),se=Q.type==="constraint",he=Q._operation,G=se?he==="="?"lines":"fill":Q.coloring;function $(Be){var Ie=I.ab2xy(Be[0],Be[1],!0);return[P.c2p(Ie[0]),L.c2p(Ie[1])]}var J=[[U[0],W[W.length-1]],[U[U.length-1],W[W.length-1]],[U[U.length-1],W[0]],[U[0],W[0]]];t(ue);var Z=(U[U.length-1]-U[0])*1e-8,re=(W[W.length-1]-W[0])*1e-8;r(ue,Z,re);var ne=ue;Q.type==="constraint"&&(ne=i(ue,he)),v(ue,$);var j,ee,ie,fe,be=[];for(fe=N.clipsegments.length-1;fe>=0;fe--)j=N.clipsegments[fe],ee=x([],j.x,P.c2p),ie=x([],j.y,L.c2p),ee.reverse(),ie.reverse(),be.push(A(ee,ie,j.bicubic));var Ae="M"+be.join("L")+"Z";S(F,N.clipsegments,P,L,se,G),E(O,F,P,L,ne,J,$,I,N,G,Ae),p(F,ue,d,B,Q,u,I),M.setClipUrl(F,I._clipPathId,d)})};function v(b,d){var u,y,f,P,L,z,F,B,O;for(u=0;u<b.length;u++){for(P=b[u],L=P.pedgepaths=[],z=P.ppaths=[],y=0;y<P.edgepaths.length;y++){for(O=P.edgepaths[y],F=[],f=0;f<O.length;f++)F[f]=d(O[f]);L.push(F)}for(y=0;y<P.paths.length;y++){for(O=P.paths[y],B=[],f=0;f<O.length;f++)B[f]=d(O[f]);z.push(B)}}}function p(b,d,u,y,f,P,L){var z=u._context.staticPlot,F=e.ensureSingle(b,"g","contourlines"),B=f.showlines!==!1,O=f.showlabels,I=B&&O,N=o.createLines(F,B||O,d,z),U=o.createLineClip(F,I,u,y.trace.uid),W=b.selectAll("g.contourlabels").data(O?[0]:[]);if(W.exit().remove(),W.enter().append("g").classed("contourlabels",!0),O){var Q=P.xaxis,ue=P.yaxis,se=Q._length,he=ue._length,G=[[[0,0],[se,0],[se,he],[0,he]]],$=[];e.clearLocationCache();var J=o.labelFormatter(u,y),Z=M.tester.append("text").attr("data-notex",1).call(M.font,f.labelfont),re={left:0,right:se,center:se/2,top:0,bottom:he,middle:he/2},ne=Math.sqrt(se*se+he*he),j=a.LABELDISTANCE*ne/Math.max(1,d.length/a.LABELINCREASE);N.each(function(ee){var ie=o.calcTextOpts(ee.level,J,Z,u);g.select(this).selectAll("path").each(function(fe){var be=this,Ae=e.getVisibleSegment(be,re,ie.height/2);if(Ae&&(T(be,fe,ee,Ae,L,ie.height),!(Ae.len<(ie.width+ie.height)*a.LABELMIN)))for(var Be=Math.min(Math.ceil(Ae.len/j),a.LABELMAX),Ie=0;Ie<Be;Ie++){var Ze=o.findBestTextLocation(be,Ae,ie,$,re);if(!Ze)break;o.addLabelData(Ze,ie,$,G)}})}),Z.remove(),o.drawLabels(W,$,u,U,I?G:null)}O&&!B&&N.remove()}function T(b,d,u,y,f,P){for(var L,z=0;z<u.pedgepaths.length;z++)d===u.pedgepaths[z]&&(L=u.edgepaths[z]);if(!L)return;var F=f.a[0],B=f.a[f.a.length-1],O=f.b[0],I=f.b[f.b.length-1];function N(se,he){var G=0,$,J=.1;return(Math.abs(se[0]-F)<J||Math.abs(se[0]-B)<J)&&($=_(f.dxydb_rough(se[0],se[1],J)),G=Math.max(G,P*w(he,$)/2)),(Math.abs(se[1]-O)<J||Math.abs(se[1]-I)<J)&&($=_(f.dxyda_rough(se[0],se[1],J)),G=Math.max(G,P*w(he,$)/2)),G}var U=l(b,0,1),W=l(b,y.total,y.total-1),Q=N(L[0],U),ue=y.total-N(L[L.length-1],W);y.min<Q&&(y.min=Q),y.max>ue&&(y.max=ue),y.len=y.max-y.min}function l(b,d,u){var y=b.getPointAtLength(d),f=b.getPointAtLength(u),P=f.x-y.x,L=f.y-y.y,z=Math.sqrt(P*P+L*L);return[P/z,L/z]}function _(b){var d=Math.sqrt(b[0]*b[0]+b[1]*b[1]);return[b[0]/d,b[1]/d]}function w(b,d){var u=Math.abs(b[0]*d[0]+b[1]*d[1]),y=Math.sqrt(1-u*u);return y/u}function S(b,d,u,y,f,P){var L,z,F,B,O=e.ensureSingle(b,"g","contourbg"),I=O.selectAll("path").data(P==="fill"&&!f?[0]:[]);I.enter().append("path"),I.exit().remove();var N=[];for(B=0;B<d.length;B++)L=d[B],z=x([],L.x,u.c2p),F=x([],L.y,y.c2p),N.push(A(z,F,L.bicubic));I.attr("d","M"+N.join("L")+"Z").style("stroke","none")}function E(b,d,u,y,f,P,L,z,F,B,O){var I=B==="fill";I&&s(f,b.contours);var N=e.ensureSingle(d,"g","contourfill"),U=N.selectAll("path").data(I?f:[]);U.enter().append("path"),U.exit().remove(),U.each(function(W){var Q=(W.prefixBoundary?O:"")+m(b,W,P,L,z,F,u,y);Q?g.select(this).attr("d",Q).style("stroke","none"):g.select(this).remove()})}function m(b,d,u,y,f,P,L,z){var F,B="",O=d.edgepaths.map(function(ie,fe){return fe}),I=!0,N,U,W,Q,ue,se,he=Math.abs(u[0][0]-u[2][0])*1e-4,G=Math.abs(u[0][1]-u[2][1])*1e-4;function $(ie){return Math.abs(ie[1]-u[0][1])<G}function J(ie){return Math.abs(ie[1]-u[2][1])<G}function Z(ie){return Math.abs(ie[0]-u[0][0])<he}function re(ie){return Math.abs(ie[0]-u[2][0])<he}function ne(ie,fe){var be,Ae,Be,Ie,Ze="";for($(ie)&&!re(ie)||J(ie)&&!Z(ie)?(Ie=f.aaxis,Be=h(f,P,[ie[0],fe[0]],.5*(ie[1]+fe[1]))):(Ie=f.baxis,Be=h(f,P,.5*(ie[0]+fe[0]),[ie[1],fe[1]])),be=1;be<Be.length;be++)for(Ze+=Ie.smoothing?"C":"L",Ae=0;Ae<Be[be].length;Ae++){var at=Be[be][Ae];Ze+=[L.c2p(at[0]),z.c2p(at[1])]+" "}return Ze}for(F=0,N=null;O.length;){var j=d.edgepaths[F][0];for(N&&(B+=ne(N,j)),se=M.smoothopen(d.edgepaths[F].map(y),d.smoothing),B+=I?se:se.replace(/^M/,"L"),O.splice(O.indexOf(F),1),N=d.edgepaths[F][d.edgepaths[F].length-1],Q=-1,W=0;W<4;W++){if(!N){e.log("Missing end?",F,d);break}for($(N)&&!re(N)?U=u[1]:Z(N)?U=u[0]:J(N)?U=u[3]:re(N)&&(U=u[2]),ue=0;ue<d.edgepaths.length;ue++){var ee=d.edgepaths[ue][0];Math.abs(N[0]-U[0])<he?Math.abs(N[0]-ee[0])<he&&(ee[1]-N[1])*(U[1]-ee[1])>=0&&(U=ee,Q=ue):Math.abs(N[1]-U[1])<G?Math.abs(N[1]-ee[1])<G&&(ee[0]-N[0])*(U[0]-ee[0])>=0&&(U=ee,Q=ue):e.log("endpt to newendpt is not vert. or horz.",N,U,ee)}if(Q>=0)break;B+=ne(N,U),N=U}if(Q===d.edgepaths.length){e.log("unclosed perimeter path");break}F=Q,I=O.indexOf(F)===-1,I&&(F=O[0],B+=ne(N,U)+"Z",N=null)}for(F=0;F<d.paths.length;F++)B+=M.smoothclosed(d.paths[F].map(y),d.smoothing);return B}}}),XH=Ye({"src/traces/contourcarpet/index.js"(X,H){"use strict";H.exports={attributes:Wk(),supplyDefaults:Zk(),colorbar:c3(),calc:GH(),plot:ZH(),style:u3(),moduleType:"trace",name:"contourcarpet",basePlotModule:Pf(),categories:["cartesian","svg","carpet","contour","symbols","showLegend","hasLines","carpetDependent","noHover","noSortingByValue"],meta:{}}}}),YH=Ye({"lib/contourcarpet.js"(X,H){"use strict";H.exports=XH()}}),IT=Ye({"src/traces/ohlc/attributes.js"(X,H){"use strict";var g=ta().extendFlat,x=Pc(),A=Cc().axisHoverFormat,M=Uh().dash,e=Yy(),t=p1(),r=t.INCREASING.COLOR,o=t.DECREASING.COLOR,a=x.line;function i(n){return{line:{color:g({},a.color,{dflt:n}),width:a.width,dash:M,editType:"style"},editType:"style"}}H.exports={xperiod:x.xperiod,xperiod0:x.xperiod0,xperiodalignment:x.xperiodalignment,xhoverformat:A("x"),yhoverformat:A("y"),x:{valType:"data_array",editType:"calc+clearAxisTypes"},open:{valType:"data_array",editType:"calc"},high:{valType:"data_array",editType:"calc"},low:{valType:"data_array",editType:"calc"},close:{valType:"data_array",editType:"calc"},line:{width:g({},a.width,{}),dash:g({},M,{}),editType:"style"},increasing:i(r),decreasing:i(o),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:g({},e.hoverlabel,{split:{valType:"boolean",dflt:!1,editType:"style"}}),zorder:x.zorder}}}),Xk=Ye({"src/traces/ohlc/ohlc_defaults.js"(X,H){"use strict";var g=Hn(),x=ta();H.exports=function(M,e,t,r){var o=t("x"),a=t("open"),i=t("high"),n=t("low"),s=t("close");t("hoverlabel.split");var c=g.getComponentMethod("calendars","handleTraceDefaults");if(c(M,e,["x"],r),!!(a&&i&&n&&s)){var h=Math.min(a.length,i.length,n.length,s.length);return o&&(h=Math.min(h,x.minRowLength(o))),e._length=h,h}}}}),KH=Ye({"src/traces/ohlc/defaults.js"(X,H){"use strict";var g=ta(),x=Xk(),A=Qd(),M=IT();H.exports=function(r,o,a,i){function n(c,h){return g.coerce(r,o,M,c,h)}var s=x(r,o,n,i);if(!s){o.visible=!1;return}A(r,o,i,n,{x:!0}),n("xhoverformat"),n("yhoverformat"),n("line.width"),n("line.dash"),e(r,o,n,"increasing"),e(r,o,n,"decreasing"),n("text"),n("hovertext"),n("tickwidth"),i._requestRangeslider[o.xaxis]=!0,n("zorder")};function e(t,r,o,a){o(a+".line.color"),o(a+".line.width",r.line.width),o(a+".line.dash",r.line.dash)}}}),Yk=Ye({"src/traces/ohlc/calc.js"(X,H){"use strict";var g=ta(),x=g._,A=Co(),M=tv(),e=ks().BADNUM;function t(i,n){var s=A.getFromId(i,n.xaxis),c=A.getFromId(i,n.yaxis),h=a(i,s,n),v=n._minDiff;n._minDiff=null;var p=n._origX;n._origX=null;var T=n._xcalc;n._xcalc=null;var l=o(i,n,p,T,c,r);return n._extremes[s._id]=A.findExtremes(s,T,{vpad:v/2}),l.length?(g.extendFlat(l[0].t,{wHover:v/2,tickLen:h}),l):[{t:{empty:!0}}]}function r(i,n,s,c){return{o:i,h:n,l:s,c}}function o(i,n,s,c,h,v){for(var p=h.makeCalcdata(n,"open"),T=h.makeCalcdata(n,"high"),l=h.makeCalcdata(n,"low"),_=h.makeCalcdata(n,"close"),w=g.isArrayOrTypedArray(n.text),S=g.isArrayOrTypedArray(n.hovertext),E=!0,m=null,b=!!n.xperiodalignment,d=[],u=0;u<c.length;u++){var y=c[u],f=p[u],P=T[u],L=l[u],z=_[u];if(y!==e&&f!==e&&P!==e&&L!==e&&z!==e){z===f?m!==null&&z!==m&&(E=z>m):E=z>f,m=z;var F=v(f,P,L,z);F.pos=y,F.yc=(f+z)/2,F.i=u,F.dir=E?"increasing":"decreasing",F.x=F.pos,F.y=[L,P],b&&(F.orig_p=s[u]),w&&(F.tx=n.text[u]),S&&(F.htx=n.hovertext[u]),d.push(F)}else d.push({pos:y,empty:!0})}return n._extremes[h._id]=A.findExtremes(h,g.concat(l,T),{padded:!0}),d.length&&(d[0].t={labels:{open:x(i,"open:")+" ",high:x(i,"high:")+" ",low:x(i,"low:")+" ",close:x(i,"close:")+" "}}),d}function a(i,n,s){var c=s._minDiff;if(!c){var h=i._fullData,v=[];c=1/0;var p;for(p=0;p<h.length;p++){var T=h[p];if(T.type==="ohlc"&&T.visible===!0&&T.xaxis===n._id){v.push(T);var l=n.makeCalcdata(T,"x");T._origX=l;var _=M(s,n,"x",l).vals;T._xcalc=_;var w=g.distinctVals(_).minDiff;w&&isFinite(w)&&(c=Math.min(c,w))}}for(c===1/0&&(c=1),p=0;p<v.length;p++)v[p]._minDiff=c}return c*s.tickwidth}H.exports={calc:t,calcCommon:o}}}),JH=Ye({"src/traces/ohlc/plot.js"(X,H){"use strict";var g=_n(),x=ta();H.exports=function(M,e,t,r){var o=e.yaxis,a=e.xaxis,i=!!a.rangebreaks;x.makeTraceGroups(r,t,"trace ohlc").each(function(n){var s=g.select(this),c=n[0],h=c.t,v=c.trace;if(v.visible!==!0||h.empty){s.remove();return}var p=h.tickLen,T=s.selectAll("path").data(x.identity);T.enter().append("path"),T.exit().remove(),T.attr("d",function(l){if(l.empty)return"M0,0Z";var _=a.c2p(l.pos-p,!0),w=a.c2p(l.pos+p,!0),S=i?(_+w)/2:a.c2p(l.pos,!0),E=o.c2p(l.o,!0),m=o.c2p(l.h,!0),b=o.c2p(l.l,!0),d=o.c2p(l.c,!0);return"M"+_+","+E+"H"+S+"M"+S+","+m+"V"+b+"M"+w+","+d+"H"+S})})}}}),$H=Ye({"src/traces/ohlc/style.js"(X,H){"use strict";var g=_n(),x=Bo(),A=Fn();H.exports=function(e,t,r){var o=r||g.select(e).selectAll("g.ohlclayer").selectAll("g.trace");o.style("opacity",function(a){return a[0].trace.opacity}),o.each(function(a){var i=a[0].trace;g.select(this).selectAll("path").each(function(n){if(!n.empty){var s=i[n.dir].line;g.select(this).style("fill","none").call(A.stroke,s.color).call(x.dashLine,s.dash,s.width).style("opacity",i.selectedpoints&&!n.selected?.3:1)}})})}}}),Kk=Ye({"src/traces/ohlc/hover.js"(X,H){"use strict";var g=Co(),x=ta(),A=Lc(),M=Fn(),e=ta().fillText,t=p1(),r={increasing:t.INCREASING.SYMBOL,decreasing:t.DECREASING.SYMBOL};function o(s,c,h,v){var p=s.cd,T=p[0].trace;return T.hoverlabel.split?i(s,c,h,v):n(s,c,h,v)}function a(s,c,h,v){var p=s.cd,T=s.xa,l=p[0].trace,_=p[0].t,w=l.type,S=w==="ohlc"?"l":"min",E=w==="ohlc"?"h":"max",m,b,d=_.bPos||0,u=function(W){return W.pos+d-c},y=_.bdPos||_.tickLen,f=_.wHover,P=Math.min(1,y/Math.abs(T.r2c(T.range[1])-T.r2c(T.range[0])));m=s.maxHoverDistance-P,b=s.maxSpikeDistance-P;function L(W){var Q=u(W);return A.inbox(Q-f,Q+f,m)}function z(W){var Q=W[S],ue=W[E];return Q===ue||A.inbox(Q-h,ue-h,m)}function F(W){return(L(W)+z(W))/2}var B=A.getDistanceFunction(v,L,z,F);if(A.getClosest(p,B,s),s.index===!1)return null;var O=p[s.index];if(O.empty)return null;var I=O.dir,N=l[I],U=N.line.color;return M.opacity(U)&&N.line.width?s.color=U:s.color=N.fillcolor,s.x0=T.c2p(O.pos+d-y,!0),s.x1=T.c2p(O.pos+d+y,!0),s.xLabelVal=O.orig_p!==void 0?O.orig_p:O.pos,s.spikeDistance=F(O)*b/m,s.xSpike=T.c2p(O.pos,!0),s}function i(s,c,h,v){var p=s.cd,T=s.ya,l=p[0].trace,_=p[0].t,w=[],S=a(s,c,h,v);if(!S)return[];var E=S.index,m=p[E],b=m.hi||l.hoverinfo,d=b.split("+"),u=b==="all",y=u||d.indexOf("y")!==-1;if(!y)return[];for(var f=["high","open","close","low"],P={},L=0;L<f.length;L++){var z=f[L],F=l[z][S.index],B=T.c2p(F,!0),O;F in P?(O=P[F],O.yLabel+="<br>"+_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat)):(O=x.extendFlat({},S),O.y0=O.y1=B,O.yLabelVal=F,O.yLabel=_.labels[z]+g.hoverLabelText(T,F,l.yhoverformat),O.name="",w.push(O),P[F]=O)}return w}function n(s,c,h,v){var p=s.cd,T=s.ya,l=p[0].trace,_=p[0].t,w=a(s,c,h,v);if(!w)return[];var S=w.index,E=p[S],m=w.index=E.i,b=E.dir;function d(F){return _.labels[F]+g.hoverLabelText(T,l[F][m],l.yhoverformat)}var u=E.hi||l.hoverinfo,y=u.split("+"),f=u==="all",P=f||y.indexOf("y")!==-1,L=f||y.indexOf("text")!==-1,z=P?[d("open"),d("high"),d("low"),d("close")+" "+r[b]]:[];return L&&e(E,l,z),w.extraText=z.join("<br>"),w.y0=w.y1=T.c2p(E.yc,!0),[w]}H.exports={hoverPoints:o,hoverSplit:i,hoverOnPoints:n}}}),Jk=Ye({"src/traces/ohlc/select.js"(X,H){"use strict";H.exports=function(x,A){var M=x.cd,e=x.xaxis,t=x.yaxis,r=[],o,a=M[0].t.bPos||0;if(A===!1)for(o=0;o<M.length;o++)M[o].selected=0;else for(o=0;o<M.length;o++){var i=M[o];A.contains([e.c2p(i.pos+a),t.c2p(i.yc)],null,i.i,x)?(r.push({pointNumber:i.i,x:e.c2d(i.pos),y:t.c2d(i.yc)}),i.selected=1):i.selected=0}return r}}}),QH=Ye({"src/traces/ohlc/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"ohlc",basePlotModule:Pf(),categories:["cartesian","svg","showLegend"],meta:{},attributes:IT(),supplyDefaults:KH(),calc:Yk().calc,plot:JH(),style:$H(),hoverPoints:Kk().hoverPoints,selectPoints:Jk()}}}),eG=Ye({"lib/ohlc.js"(X,H){"use strict";H.exports=QH()}}),$k=Ye({"src/traces/candlestick/attributes.js"(X,H){"use strict";var g=ta().extendFlat,x=Cc().axisHoverFormat,A=IT(),M=F_();function e(t){return{line:{color:g({},M.line.color,{dflt:t}),width:M.line.width,editType:"style"},fillcolor:M.fillcolor,editType:"style"}}H.exports={xperiod:A.xperiod,xperiod0:A.xperiod0,xperiodalignment:A.xperiodalignment,xhoverformat:x("x"),yhoverformat:x("y"),x:A.x,open:A.open,high:A.high,low:A.low,close:A.close,line:{width:g({},M.line.width,{}),editType:"style"},increasing:e(A.increasing.line.color.dflt),decreasing:e(A.decreasing.line.color.dflt),text:A.text,hovertext:A.hovertext,whiskerwidth:g({},M.whiskerwidth,{dflt:0}),hoverlabel:A.hoverlabel,zorder:M.zorder}}}),tG=Ye({"src/traces/candlestick/defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=Xk(),M=Qd(),e=$k();H.exports=function(o,a,i,n){function s(h,v){return g.coerce(o,a,e,h,v)}var c=A(o,a,s,n);if(!c){a.visible=!1;return}M(o,a,n,s,{x:!0}),s("xhoverformat"),s("yhoverformat"),s("line.width"),t(o,a,s,"increasing"),t(o,a,s,"decreasing"),s("text"),s("hovertext"),s("whiskerwidth"),n._requestRangeslider[a.xaxis]=!0,s("zorder")};function t(r,o,a,i){var n=a(i+".line.color");a(i+".line.width",o.line.width),a(i+".fillcolor",x.addOpacity(n,.5))}}}),rG=Ye({"src/traces/candlestick/calc.js"(X,H){"use strict";var g=ta(),x=Co(),A=tv(),M=Yk().calcCommon;H.exports=function(t,r){var o=t._fullLayout,a=x.getFromId(t,r.xaxis),i=x.getFromId(t,r.yaxis),n=a.makeCalcdata(r,"x"),s=A(r,a,"x",n).vals,c=M(t,r,n,s,i,e);return c.length?(g.extendFlat(c[0].t,{num:o._numBoxes,dPos:g.distinctVals(s).minDiff/2,posLetter:"x",valLetter:"y"}),o._numBoxes++,c):[{t:{empty:!0}}]};function e(t,r,o,a){return{min:o,q1:Math.min(t,a),med:a,q3:Math.max(t,a),max:r}}}}),aG=Ye({"src/traces/candlestick/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"candlestick",basePlotModule:Pf(),categories:["cartesian","svg","showLegend","candlestick","boxLayout"],meta:{},attributes:$k(),layoutAttributes:O_(),supplyLayoutDefaults:V2().supplyLayoutDefaults,crossTraceCalc:q2().crossTraceCalc,supplyDefaults:tG(),calc:rG(),plot:H2().plot,layerName:"boxlayer",style:G2().style,hoverPoints:Kk().hoverPoints,selectPoints:Jk()}}}),iG=Ye({"lib/candlestick.js"(X,H){"use strict";H.exports=aG()}}),Qk=Ye({"src/plots/polar/set_convert.js"(X,H){"use strict";var g=ta(),x=wv(),A=g.deg2rad,M=g.rad2deg;H.exports=function(i,n,s){switch(x(i,s),i._id){case"x":case"radialaxis":e(i,n);break;case"angularaxis":o(i,n);break}};function e(a,i){var n=i._subplot;a.setGeometry=function(){var s=a._rl[0],c=a._rl[1],h=n.innerRadius,v=(n.radius-h)/(c-s),p=h/v,T=s>c?function(l){return l<=0}:function(l){return l>=0};a.c2g=function(l){var _=a.c2l(l)-s;return(T(_)?_:0)+p},a.g2c=function(l){return a.l2c(l+s-p)},a.g2p=function(l){return l*v},a.c2p=function(l){return a.g2p(a.c2g(l))}}}function t(a,i){return i==="degrees"?A(a):a}function r(a,i){return i==="degrees"?M(a):a}function o(a,i){var n=a.type;if(n==="linear"){var s=a.d2c,c=a.c2d;a.d2c=function(h,v){return t(s(h),v)},a.c2d=function(h,v){return c(r(h,v))}}a.makeCalcdata=function(h,v){var p=h[v],T=h._length,l,_,w=function(d){return a.d2c(d,h.thetaunit)};if(p)for(l=new Array(T),_=0;_<T;_++)l[_]=w(p[_]);else{var S=v+"0",E="d"+v,m=S in h?w(h[S]):0,b=h[E]?w(h[E]):(a.period||2*Math.PI)/T;for(l=new Array(T),_=0;_<T;_++)l[_]=m+_*b}return l},a.setGeometry=function(){var h=i.sector,v=h.map(A),p={clockwise:-1,counterclockwise:1}[a.direction],T=A(a.rotation),l=function(u){return p*u+T},_=function(u){return(u-T)/p},w,S,E,m;switch(n){case"linear":S=w=g.identity,m=A,E=M,a.range=g.isFullCircle(v)?[h[0],h[0]+360]:v.map(_).map(M);break;case"category":var b=a._categories.length,d=a.period?Math.max(a.period,b):b;d===0&&(d=1),S=m=function(u){return u*2*Math.PI/d},w=E=function(u){return u*d/Math.PI/2},a.range=[0,d];break}a.c2g=function(u){return l(S(u))},a.g2c=function(u){return w(_(u))},a.t2g=function(u){return l(m(u))},a.g2t=function(u){return E(_(u))}}}}}),RT=Ye({"src/plots/polar/constants.js"(X,H){"use strict";H.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}}}),DT=Ye({"src/plots/polar/helpers.js"(X,H){"use strict";var g=ta(),x=C_().tester,A=g.findIndexOfMin,M=g.isAngleInsideSector,e=g.angleDelta,t=g.angleDist;function r(_,w,S,E,m){if(!M(w,E))return!1;var b,d;S[0]<S[1]?(b=S[0],d=S[1]):(b=S[1],d=S[0]);var u=x(s(b,E[0],E[1],m)),y=x(s(d,E[0],E[1],m)),f=[_*Math.cos(w),_*Math.sin(w)];return y.contains(f)&&!u.contains(f)}function o(_,w,S,E){var m,b,d=E[0],u=E[1],y=v(Math.sin(w)-Math.sin(_)),f=v(Math.cos(w)-Math.cos(_)),P=Math.tan(S),L=v(1/P),z=y/f,F=u-z*d;return L?y&&f?(m=F/(P-z),b=P*m):f?(m=u*L,b=u):(m=d,b=d*P):y&&f?(m=0,b=F):f?(m=0,b=u):m=b=NaN,[m,b]}function a(_,w,S,E){var m=-w*S,b=w*w+1,d=2*(w*m-S),u=m*m+S*S-_*_,y=Math.sqrt(d*d-4*b*u),f=(-d+y)/(2*b),P=(-d-y)/(2*b);return[[f,w*f+m+E],[P,w*P+m+E]]}function i(_,w){var S=w.length,E=new Array(S+1),m;for(m=0;m<S;m++){var b=w[m];E[m]=[_*Math.cos(b),_*Math.sin(b)]}return E[m]=E[0].slice(),E}function n(_,w,S,E){var m=E.length,b=[],d,u;function y(N){return[_*Math.cos(N),_*Math.sin(N)]}function f(N,U,W){return o(N,U,W,y(N))}function P(N){return g.mod(N,m)}function L(N){return M(N,[w,S])}var z=A(E,function(N){return L(N)?t(N,w):1/0}),F=f(E[z],E[P(z-1)],w);for(b.push(F),d=z,u=0;u<m;d++,u++){var B=E[P(d)];if(!L(B))break;b.push(y(B))}var O=A(E,function(N){return L(N)?t(N,S):1/0}),I=f(E[O],E[P(O+1)],S);return b.push(I),b.push([0,0]),b.push(b[0].slice()),b}function s(_,w,S,E){return g.isFullCircle([w,S])?i(_,E):n(_,w,S,E)}function c(_,w,S,E){for(var m=1/0,b=1/0,d=s(_,w,S,E),u=0;u<d.length;u++){var y=d[u];m=Math.min(m,y[0]),b=Math.min(b,-y[1])}return[m,b]}function h(_,w){var S=function(b){var d=e(b,_);return d>0?d:1/0},E=A(w,S),m=g.mod(E+1,w.length);return[w[E],w[m]]}function v(_){return Math.abs(_)>1e-10?_:0}function p(_,w,S){w=w||0,S=S||0;for(var E=_.length,m=new Array(E),b=0;b<E;b++){var d=_[b];m[b]=[w+d[0],S-d[1]]}return m}function T(_,w,S,E,m,b){var d=s(_,w,S,E);return"M"+p(d,m,b).join("L")}function l(_,w,S,E,m,b,d){var u,y;_<w?(u=_,y=w):(u=w,y=_);var f=p(s(u,S,E,m),b,d),P=p(s(y,S,E,m),b,d);return"M"+P.reverse().join("L")+"M"+f.join("L")}H.exports={isPtInsidePolygon:r,findPolygonOffset:c,findEnclosingVertexAngles:h,findIntersectionXY:o,findXYatLength:a,clampTiny:v,pathPolygon:T,pathPolygonAnnulus:l}}}),eC=Ye({"src/plots/smith/helpers.js"(X,H){"use strict";function g(r){return r<0?-1:r>0?1:0}function x(r){var o=r[0],a=r[1];if(!isFinite(o)||!isFinite(a))return[1,0];var i=(o+1)*(o+1)+a*a;return[(o*o+a*a-1)/i,2*a/i]}function A(r,o){var a=o[0],i=o[1];return[a*r.radius+r.cx,-i*r.radius+r.cy]}function M(r,o){return o*r.radius}function e(r,o,a,i){var n=A(r,x([a,o])),s=n[0],c=n[1],h=A(r,x([i,o])),v=h[0],p=h[1];if(o===0)return["M"+s+","+c,"L"+v+","+p].join(" ");var T=M(r,1/Math.abs(o));return["M"+s+","+c,"A"+T+","+T+" 0 0,"+(o<0?1:0)+" "+v+","+p].join(" ")}function t(r,o,a,i){var n=M(r,1/(o+1)),s=A(r,x([o,a])),c=s[0],h=s[1],v=A(r,x([o,i])),p=v[0],T=v[1];if(g(a)!==g(i)){var l=A(r,x([o,0])),_=l[0],w=l[1];return["M"+c+","+h,"A"+n+","+n+" 0 0,"+(0<a?0:1)+" "+_+","+w,"A"+n+","+n+" 0 0,"+(i<0?0:1)+p+","+T].join(" ")}return["M"+c+","+h,"A"+n+","+n+" 0 0,"+(i<a?0:1)+" "+p+","+T].join(" ")}H.exports={smith:x,reactanceArc:e,resistanceArc:t,smithTransform:A}}}),tC=Ye({"src/plots/polar/polar.js"(X,H){"use strict";var g=_n(),x=bh(),A=Hn(),M=ta(),e=M.strRotate,t=M.strTranslate,r=Fn(),o=Bo(),a=Gu(),i=Co(),n=wv(),s=Qk(),c=Yd().doAutoRange,h=CS(),v=bp(),p=Lc(),T=Xg(),l=ff().prepSelect,_=ff().selectOnClick,w=ff().clearOutline,S=Kd(),E=M_(),m=k_().redrawReglTraces,b=oh().MID_SHIFT,d=RT(),u=DT(),y=eC(),f=y.smith,P=y.reactanceArc,L=y.resistanceArc,z=y.smithTransform,F=M._,B=M.mod,O=M.deg2rad,I=M.rad2deg;function N(he,G,$){this.isSmith=$||!1,this.id=G,this.gd=he,this._hasClipOnAxisFalse=null,this.vangles=null,this.radialAxisAngle=null,this.traceHash={},this.layers={},this.clipPaths={},this.clipIds={},this.viewInitial={};var J=he._fullLayout,Z="clip"+J._uid+G;this.clipIds.forTraces=Z+"-for-traces",this.clipPaths.forTraces=J._clips.append("clipPath").attr("id",this.clipIds.forTraces),this.clipPaths.forTraces.append("path"),this.framework=J["_"+($?"smith":"polar")+"layer"].append("g").attr("class",G),this.getHole=function(re){return this.isSmith?0:re.hole},this.getSector=function(re){return this.isSmith?[0,360]:re.sector},this.getRadial=function(re){return this.isSmith?re.realaxis:re.radialaxis},this.getAngular=function(re){return this.isSmith?re.imaginaryaxis:re.angularaxis},$||(this.radialTickLayout=null,this.angularTickLayout=null)}var U=N.prototype;H.exports=function(G,$,J){return new N(G,$,J)},U.plot=function(he,G){for(var $=this,J=G[$.id],Z=!1,re=0;re<he.length;re++){var ne=he[re][0].trace;if(ne.cliponaxis===!1){Z=!0;break}}$._hasClipOnAxisFalse=Z,$.updateLayers(G,J),$.updateLayout(G,J),a.generalUpdatePerTraceModule($.gd,$,he,J),$.updateFx(G,J),$.isSmith&&(delete J.realaxis.range,delete J.imaginaryaxis.range)},U.updateLayers=function(he,G){var $=this,J=$.isSmith,Z=$.layers,re=$.getRadial(G),ne=$.getAngular(G),j=d.layerNames,ee=j.indexOf("frontplot"),ie=j.slice(0,ee),fe=ne.layer==="below traces",be=re.layer==="below traces";fe&&ie.push("angular-line"),be&&ie.push("radial-line"),fe&&ie.push("angular-axis"),be&&ie.push("radial-axis"),ie.push("frontplot"),fe||ie.push("angular-line"),be||ie.push("radial-line"),fe||ie.push("angular-axis"),be||ie.push("radial-axis");var Ae=(J?"smith":"polar")+"sublayer",Be=$.framework.selectAll("."+Ae).data(ie,String);Be.enter().append("g").attr("class",function(Ie){return Ae+" "+Ie}).each(function(Ie){var Ze=Z[Ie]=g.select(this);switch(Ie){case"frontplot":J||Ze.append("g").classed("barlayer",!0),Ze.append("g").classed("scatterlayer",!0);break;case"backplot":Ze.append("g").classed("maplayer",!0);break;case"plotbg":Z.bg=Ze.append("path");break;case"radial-grid":Ze.style("fill","none");break;case"angular-grid":Ze.style("fill","none");break;case"radial-line":Ze.append("line").style("fill","none");break;case"angular-line":Ze.append("path").style("fill","none");break}}),Be.order()},U.updateLayout=function(he,G){var $=this,J=$.layers,Z=he._size,re=$.getRadial(G),ne=$.getAngular(G),j=G.domain.x,ee=G.domain.y;$.xOffset=Z.l+Z.w*j[0],$.yOffset=Z.t+Z.h*(1-ee[1]);var ie=$.xLength=Z.w*(j[1]-j[0]),fe=$.yLength=Z.h*(ee[1]-ee[0]),be=$.getSector(G);$.sectorInRad=be.map(O);var Ae=$.sectorBBox=Q(be),Be=Ae[2]-Ae[0],Ie=Ae[3]-Ae[1],Ze=fe/ie,at=Math.abs(Ie/Be),it,et,lt,Me,ge;Ze>at?(it=ie,et=ie*at,ge=(fe-et)/Z.h/2,lt=[j[0],j[1]],Me=[ee[0]+ge,ee[1]-ge]):(it=fe/at,et=fe,ge=(ie-it)/Z.w/2,lt=[j[0]+ge,j[1]-ge],Me=[ee[0],ee[1]]),$.xLength2=it,$.yLength2=et,$.xDomain2=lt,$.yDomain2=Me;var ce=$.xOffset2=Z.l+Z.w*lt[0],ze=$.yOffset2=Z.t+Z.h*(1-Me[1]),tt=$.radius=it/Be,nt=$.innerRadius=$.getHole(G)*tt,Qe=$.cx=ce-tt*Ae[0],Ct=$.cy=ze+tt*Ae[3],St=$.cxx=Qe-ce,Ot=$.cyy=Ct-ze,jt=re.side,ur;jt==="counterclockwise"?(ur=jt,jt="top"):jt==="clockwise"&&(ur=jt,jt="bottom"),$.radialAxis=$.mockAxis(he,G,re,{_id:"x",side:jt,_trueSide:ur,domain:[nt/Z.w,tt/Z.w]}),$.angularAxis=$.mockAxis(he,G,ne,{side:"right",domain:[0,Math.PI],autorange:!1}),$.doAutoRange(he,G),$.updateAngularAxis(he,G),$.updateRadialAxis(he,G),$.updateRadialAxisTitle(he,G),$.xaxis=$.mockCartesianAxis(he,G,{_id:"x",domain:lt}),$.yaxis=$.mockCartesianAxis(he,G,{_id:"y",domain:Me});var ar=$.pathSubplot();$.clipPaths.forTraces.select("path").attr("d",ar).attr("transform",t(St,Ot)),J.frontplot.attr("transform",t(ce,ze)).call(o.setClipUrl,$._hasClipOnAxisFalse?null:$.clipIds.forTraces,$.gd),J.bg.attr("d",ar).attr("transform",t(Qe,Ct)).call(r.fill,G.bgcolor)},U.mockAxis=function(he,G,$,J){var Z=M.extendFlat({},$,J);return s(Z,G,he),Z},U.mockCartesianAxis=function(he,G,$){var J=this,Z=J.isSmith,re=$._id,ne=M.extendFlat({type:"linear"},$);n(ne,he);var j={x:[0,2],y:[1,3]};return ne.setRange=function(){var ee=J.sectorBBox,ie=j[re],fe=J.radialAxis._rl,be=(fe[1]-fe[0])/(1-J.getHole(G));ne.range=[ee[ie[0]]*be,ee[ie[1]]*be]},ne.isPtWithinRange=re==="x"&&!Z?function(ee){return J.isPtInside(ee)}:function(){return!0},ne.setRange(),ne.setScale(),ne},U.doAutoRange=function(he,G){var $=this,J=$.gd,Z=$.radialAxis,re=$.getRadial(G);c(J,Z);var ne=Z.range;if(re.range=ne.slice(),re._input.range=ne.slice(),Z._rl=[Z.r2l(ne[0],null,"gregorian"),Z.r2l(ne[1],null,"gregorian")],Z.minallowed!==void 0){var j=Z.r2l(Z.minallowed);Z._rl[0]>Z._rl[1]?Z._rl[1]=Math.max(Z._rl[1],j):Z._rl[0]=Math.max(Z._rl[0],j)}if(Z.maxallowed!==void 0){var ee=Z.r2l(Z.maxallowed);Z._rl[0]<Z._rl[1]?Z._rl[1]=Math.min(Z._rl[1],ee):Z._rl[0]=Math.min(Z._rl[0],ee)}},U.updateRadialAxis=function(he,G){var $=this,J=$.gd,Z=$.layers,re=$.radius,ne=$.innerRadius,j=$.cx,ee=$.cy,ie=$.getRadial(G),fe=B($.getSector(G)[0],360),be=$.radialAxis,Ae=ne<re,Be=$.isSmith;Be||($.fillViewInitialKey("radialaxis.angle",ie.angle),$.fillViewInitialKey("radialaxis.range",be.range.slice()),be.setGeometry()),be.tickangle==="auto"&&fe>90&&fe<=270&&(be.tickangle=180);var Ie=Be?function(tt){var nt=z($,f([tt.x,0]));return t(nt[0]-j,nt[1]-ee)}:function(tt){return t(be.l2p(tt.x)+ne,0)},Ze=Be?function(tt){return L($,tt.x,-1/0,1/0)}:function(tt){return $.pathArc(be.r2p(tt.x)+ne)},at=W(ie);if($.radialTickLayout!==at&&(Z["radial-axis"].selectAll(".xtick").remove(),$.radialTickLayout=at),Ae){be.setScale();var it=0,et=Be?(be.tickvals||[]).filter(function(tt){return tt>=0}).map(function(tt){return i.tickText(be,tt,!0,!1)}):i.calcTicks(be),lt=Be?et:i.clipEnds(be,et),Me=i.getTickSigns(be)[2];Be&&((be.ticks==="top"&&be.side==="bottom"||be.ticks==="bottom"&&be.side==="top")&&(Me=-Me),be.ticks==="top"&&be.side==="top"&&(it=-be.ticklen),be.ticks==="bottom"&&be.side==="bottom"&&(it=be.ticklen)),i.drawTicks(J,be,{vals:et,layer:Z["radial-axis"],path:i.makeTickPath(be,0,Me),transFn:Ie,crisp:!1}),i.drawGrid(J,be,{vals:lt,layer:Z["radial-grid"],path:Ze,transFn:M.noop,crisp:!1}),i.drawLabels(J,be,{vals:et,layer:Z["radial-axis"],transFn:Ie,labelFns:i.makeLabelFns(be,it)})}var ge=$.radialAxisAngle=$.vangles?I(ue(O(ie.angle),$.vangles)):ie.angle,ce=t(j,ee),ze=ce+e(-ge);se(Z["radial-axis"],Ae&&(ie.showticklabels||ie.ticks),{transform:ze}),se(Z["radial-grid"],Ae&&ie.showgrid,{transform:Be?"":ce}),se(Z["radial-line"].select("line"),Ae&&ie.showline,{x1:Be?-re:ne,y1:0,x2:re,y2:0,transform:ze}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateRadialAxisTitle=function(he,G,$){if(!this.isSmith){var J=this,Z=J.gd,re=J.radius,ne=J.cx,j=J.cy,ee=J.getRadial(G),ie=J.id+"title",fe=0;if(ee.title){var be=o.bBox(J.layers["radial-axis"].node()).height,Ae=ee.title.font.size,Be=ee.side;fe=Be==="top"?Ae:Be==="counterclockwise"?-(be+Ae*.4):be+Ae*.8}var Ie=$!==void 0?$:J.radialAxisAngle,Ze=O(Ie),at=Math.cos(Ze),it=Math.sin(Ze),et=ne+re/2*at+fe*it,lt=j-re/2*it+fe*at;J.layers["radial-axis-title"]=T.draw(Z,ie,{propContainer:ee,propName:J.id+".radialaxis.title",placeholder:F(Z,"Click to enter radial axis title"),attributes:{x:et,y:lt,"text-anchor":"middle"},transform:{rotate:-Ie}})}},U.updateAngularAxis=function(he,G){var $=this,J=$.gd,Z=$.layers,re=$.radius,ne=$.innerRadius,j=$.cx,ee=$.cy,ie=$.getAngular(G),fe=$.angularAxis,be=$.isSmith;be||($.fillViewInitialKey("angularaxis.rotation",ie.rotation),fe.setGeometry(),fe.setScale());var Ae=be?function(nt){var Qe=z($,f([0,nt.x]));return Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2}:function(nt){return fe.t2g(nt.x)};fe.type==="linear"&&fe.thetaunit==="radians"&&(fe.tick0=I(fe.tick0),fe.dtick=I(fe.dtick));var Be=function(nt){return t(j+re*Math.cos(nt),ee-re*Math.sin(nt))},Ie=be?function(nt){var Qe=z($,f([0,nt.x]));return t(Qe[0],Qe[1])}:function(nt){return Be(Ae(nt))},Ze=be?function(nt){var Qe=z($,f([0,nt.x])),Ct=Math.atan2(Qe[0]-j,Qe[1]-ee)-Math.PI/2;return t(Qe[0],Qe[1])+e(-I(Ct))}:function(nt){var Qe=Ae(nt);return Be(Qe)+e(-I(Qe))},at=be?function(nt){return P($,nt.x,0,1/0)}:function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe),St=Math.sin(Qe);return"M"+[j+ne*Ct,ee-ne*St]+"L"+[j+re*Ct,ee-re*St]},it=i.makeLabelFns(fe,0),et=it.labelStandoff,lt={};lt.xFn=function(nt){var Qe=Ae(nt);return Math.cos(Qe)*et},lt.yFn=function(nt){var Qe=Ae(nt),Ct=Math.sin(Qe)>0?.2:1;return-Math.sin(Qe)*(et+nt.fontSize*Ct)+Math.abs(Math.cos(Qe))*(nt.fontSize*b)},lt.anchorFn=function(nt){var Qe=Ae(nt),Ct=Math.cos(Qe);return Math.abs(Ct)<.1?"middle":Ct>0?"start":"end"},lt.heightFn=function(nt,Qe,Ct){var St=Ae(nt);return-.5*(1+Math.sin(St))*Ct};var Me=W(ie);$.angularTickLayout!==Me&&(Z["angular-axis"].selectAll("."+fe._id+"tick").remove(),$.angularTickLayout=Me);var ge=be?[1/0].concat(fe.tickvals||[]).map(function(nt){return i.tickText(fe,nt,!0,!1)}):i.calcTicks(fe);be&&(ge[0].text="\u221E",ge[0].fontSize*=1.75);var ce;if(G.gridshape==="linear"?(ce=ge.map(Ae),M.angleDelta(ce[0],ce[1])<0&&(ce=ce.slice().reverse())):ce=null,$.vangles=ce,fe.type==="category"&&(ge=ge.filter(function(nt){return M.isAngleInsideSector(Ae(nt),$.sectorInRad)})),fe.visible){var ze=fe.ticks==="inside"?-1:1,tt=(fe.linewidth||1)/2;i.drawTicks(J,fe,{vals:ge,layer:Z["angular-axis"],path:"M"+ze*tt+",0h"+ze*fe.ticklen,transFn:Ze,crisp:!1}),i.drawGrid(J,fe,{vals:ge,layer:Z["angular-grid"],path:at,transFn:M.noop,crisp:!1}),i.drawLabels(J,fe,{vals:ge,layer:Z["angular-axis"],repositionOnUpdate:!0,transFn:Ie,labelFns:lt})}se(Z["angular-line"].select("path"),ie.showline,{d:$.pathSubplot(),transform:t(j,ee)}).attr("stroke-width",ie.linewidth).call(r.stroke,ie.linecolor)},U.updateFx=function(he,G){if(!this.gd._context.staticPlot){var $=!this.isSmith;$&&(this.updateAngularDrag(he),this.updateRadialDrag(he,G,0),this.updateRadialDrag(he,G,1)),this.updateHoverAndMainDrag(he)}},U.updateHoverAndMainDrag=function(he){var G=this,$=G.isSmith,J=G.gd,Z=G.layers,re=he._zoomlayer,ne=d.MINZOOM,j=d.OFFEDGE,ee=G.radius,ie=G.innerRadius,fe=G.cx,be=G.cy,Ae=G.cxx,Be=G.cyy,Ie=G.sectorInRad,Ze=G.vangles,at=G.radialAxis,it=u.clampTiny,et=u.findXYatLength,lt=u.findEnclosingVertexAngles,Me=d.cornerHalfWidth,ge=d.cornerLen/2,ce,ze,tt=h.makeDragger(Z,"path","maindrag",he.dragmode===!1?"none":"crosshair");g.select(tt).attr("d",G.pathSubplot()).attr("transform",t(fe,be)),tt.onmousemove=function(Gt){p.hover(J,Gt,G.id),J._fullLayout._lasthover=tt,J._fullLayout._hoversubplot=G.id},tt.onmouseout=function(Gt){J._dragging||v.unhover(J,Gt)};var nt={element:tt,gd:J,subplot:G.id,plotinfo:{id:G.id,xaxis:G.xaxis,yaxis:G.yaxis},xaxes:[G.xaxis],yaxes:[G.yaxis]},Qe,Ct,St,Ot,jt,ur,ar,Cr,vr;function _r(Gt,Kt){return Math.sqrt(Gt*Gt+Kt*Kt)}function yt(Gt,Kt){return _r(Gt-Ae,Kt-Be)}function Fe(Gt,Kt){return Math.atan2(Be-Kt,Gt-Ae)}function Ke(Gt,Kt){return[Gt*Math.cos(Kt),Gt*Math.sin(-Kt)]}function Ne(Gt,Kt){if(Gt===0)return G.pathSector(2*Me);var sr=ge/Gt,sa=Kt-sr,Aa=Kt+sr,La=Math.max(0,Math.min(Gt,ee)),ka=La-Me,Ga=La+Me;return"M"+Ke(ka,sa)+"A"+[ka,ka]+" 0,0,0 "+Ke(ka,Aa)+"L"+Ke(Ga,Aa)+"A"+[Ga,Ga]+" 0,0,1 "+Ke(Ga,sa)+"Z"}function Ee(Gt,Kt,sr){if(Gt===0)return G.pathSector(2*Me);var sa=Ke(Gt,Kt),Aa=Ke(Gt,sr),La=it((sa[0]+Aa[0])/2),ka=it((sa[1]+Aa[1])/2),Ga,Ma;if(La&&ka){var Ua=ka/La,ni=-1/Ua,Wt=et(Me,Ua,La,ka);Ga=et(ge,ni,Wt[0][0],Wt[0][1]),Ma=et(ge,ni,Wt[1][0],Wt[1][1])}else{var zt,Vt;ka?(zt=ge,Vt=Me):(zt=Me,Vt=ge),Ga=[[La-zt,ka-Vt],[La+zt,ka-Vt]],Ma=[[La-zt,ka+Vt],[La+zt,ka+Vt]]}return"M"+Ga.join("L")+"L"+Ma.reverse().join("L")+"Z"}function Ve(){St=null,Ot=null,jt=G.pathSubplot(),ur=!1;var Gt=J._fullLayout[G.id];ar=x(Gt.bgcolor).getLuminance(),Cr=h.makeZoombox(re,ar,fe,be,jt),Cr.attr("fill-rule","evenodd"),vr=h.makeCorners(re,fe,be),w(J)}function ke(Gt,Kt){return Kt=Math.max(Math.min(Kt,ee),ie),Gt<j?Gt=0:ee-Gt<j?Gt=ee:Kt<j?Kt=0:ee-Kt<j&&(Kt=ee),Math.abs(Kt-Gt)>ne?(Gt<Kt?(St=Gt,Ot=Kt):(St=Kt,Ot=Gt),!0):(St=null,Ot=null,!1)}function Te(Gt,Kt){Gt=Gt||jt,Kt=Kt||"M0,0Z",Cr.attr("d",Gt),vr.attr("d",Kt),h.transitionZoombox(Cr,vr,ur,ar),ur=!0;var sr={};It(sr),J.emit("plotly_relayouting",sr)}function Le(Gt,Kt){Gt=Gt*ce,Kt=Kt*ze;var sr=Qe+Gt,sa=Ct+Kt,Aa=yt(Qe,Ct),La=Math.min(yt(sr,sa),ee),ka=Fe(Qe,Ct),Ga,Ma;ke(Aa,La)&&(Ga=jt+G.pathSector(Ot),St&&(Ga+=G.pathSector(St)),Ma=Ne(St,ka)+Ne(Ot,ka)),Te(Ga,Ma)}function rt(Gt,Kt,sr,sa){var Aa=u.findIntersectionXY(sr,sa,sr,[Gt-Ae,Be-Kt]);return _r(Aa[0],Aa[1])}function dt(Gt,Kt){var sr=Qe+Gt,sa=Ct+Kt,Aa=Fe(Qe,Ct),La=Fe(sr,sa),ka=lt(Aa,Ze),Ga=lt(La,Ze),Ma=rt(Qe,Ct,ka[0],ka[1]),Ua=Math.min(rt(sr,sa,Ga[0],Ga[1]),ee),ni,Wt;ke(Ma,Ua)&&(ni=jt+G.pathSector(Ot),St&&(ni+=G.pathSector(St)),Wt=[Ee(St,ka[0],ka[1]),Ee(Ot,ka[0],ka[1])].join(" ")),Te(ni,Wt)}function xt(){if(h.removeZoombox(J),!(St===null||Ot===null)){var Gt={};It(Gt),h.showDoubleClickNotifier(J),A.call("_guiRelayout",J,Gt)}}function It(Gt){var Kt=at._rl,sr=(Kt[1]-Kt[0])/(1-ie/ee)/ee,sa=[Kt[0]+(St-ie)*sr,Kt[0]+(Ot-ie)*sr];Gt[G.id+".radialaxis.range"]=sa}function Bt(Gt,Kt){var sr=J._fullLayout.clickmode;if(h.removeZoombox(J),Gt===2){var sa={};for(var Aa in G.viewInitial)sa[G.id+"."+Aa]=G.viewInitial[Aa];J.emit("plotly_doubleclick",null),A.call("_guiRelayout",J,sa)}sr.indexOf("select")>-1&&Gt===1&&_(Kt,J,[G.xaxis],[G.yaxis],G.id,nt),sr.indexOf("event")>-1&&p.click(J,Kt,G.id)}nt.prepFn=function(Gt,Kt,sr){var sa=J._fullLayout.dragmode,Aa=tt.getBoundingClientRect();J._fullLayout._calcInverseTransform(J);var La=J._fullLayout._invTransform;ce=J._fullLayout._invScaleX,ze=J._fullLayout._invScaleY;var ka=M.apply3DTransform(La)(Kt-Aa.left,sr-Aa.top);if(Qe=ka[0],Ct=ka[1],Ze){var Ga=u.findPolygonOffset(ee,Ie[0],Ie[1],Ze);Qe+=Ae+Ga[0],Ct+=Be+Ga[1]}switch(sa){case"zoom":nt.clickFn=Bt,$||(Ze?nt.moveFn=dt:nt.moveFn=Le,nt.doneFn=xt,Ve(Gt,Kt,sr));break;case"select":case"lasso":l(Gt,Kt,sr,nt,sa);break}},v.init(nt)},U.updateRadialDrag=function(he,G,$){var J=this,Z=J.gd,re=J.layers,ne=J.radius,j=J.innerRadius,ee=J.cx,ie=J.cy,fe=J.radialAxis,be=d.radialDragBoxSize,Ae=be/2;if(!fe.visible)return;var Be=O(J.radialAxisAngle),Ie=fe._rl,Ze=Ie[0],at=Ie[1],it=Ie[$],et=.75*(Ie[1]-Ie[0])/(1-J.getHole(G))/ne,lt,Me,ge;$?(lt=ee+(ne+Ae)*Math.cos(Be),Me=ie-(ne+Ae)*Math.sin(Be),ge="radialdrag"):(lt=ee+(j-Ae)*Math.cos(Be),Me=ie-(j-Ae)*Math.sin(Be),ge="radialdrag-inner");var ce=h.makeRectDragger(re,ge,"crosshair",-Ae,-Ae,be,be),ze={element:ce,gd:Z};he.dragmode===!1&&(ze.dragmode=!1),se(g.select(ce),fe.visible&&j<ne,{transform:t(lt,Me)});var tt,nt,Qe;function Ct(ar,Cr){if(tt)tt(ar,Cr);else{var vr=[ar,-Cr],_r=[Math.cos(Be),Math.sin(Be)],yt=Math.abs(M.dot(vr,_r)/Math.sqrt(M.dot(vr,vr)));isNaN(yt)||(tt=yt<.5?jt:ur)}var Fe={};St(Fe),Z.emit("plotly_relayouting",Fe)}function St(ar){nt!==null?ar[J.id+".radialaxis.angle"]=nt:Qe!==null&&(ar[J.id+".radialaxis.range["+$+"]"]=Qe)}function Ot(){nt!==null?A.call("_guiRelayout",Z,J.id+".radialaxis.angle",nt):Qe!==null&&A.call("_guiRelayout",Z,J.id+".radialaxis.range["+$+"]",Qe)}function jt(ar,Cr){if($!==0){var vr=lt+ar,_r=Me+Cr;nt=Math.atan2(ie-_r,vr-ee),J.vangles&&(nt=ue(nt,J.vangles)),nt=I(nt);var yt=t(ee,ie)+e(-nt);re["radial-axis"].attr("transform",yt),re["radial-line"].select("line").attr("transform",yt);var Fe=J.gd._fullLayout,Ke=Fe[J.id];J.updateRadialAxisTitle(Fe,Ke,nt)}}function ur(ar,Cr){var vr=M.dot([ar,-Cr],[Math.cos(Be),Math.sin(Be)]);if(Qe=it-et*vr,et>0!=($?Qe>Ze:Qe<at)){Qe=null;return}var _r=Z._fullLayout,yt=_r[J.id];fe.range[$]=Qe,fe._rl[$]=Qe,J.updateRadialAxis(_r,yt),J.xaxis.setRange(),J.xaxis.setScale(),J.yaxis.setRange(),J.yaxis.setScale();var Fe=!1;for(var Ke in J.traceHash){var Ne=J.traceHash[Ke],Ee=M.filterVisible(Ne),Ve=Ne[0][0].trace._module;Ve.plot(Z,J,Ee,yt),A.traceIs(Ke,"gl")&&Ee.length&&(Fe=!0)}Fe&&(E(Z),m(Z))}ze.prepFn=function(){tt=null,nt=null,Qe=null,ze.moveFn=Ct,ze.doneFn=Ot,w(Z)},ze.clampFn=function(ar,Cr){return Math.sqrt(ar*ar+Cr*Cr)<d.MINDRAG&&(ar=0,Cr=0),[ar,Cr]},v.init(ze)},U.updateAngularDrag=function(he){var G=this,$=G.gd,J=G.layers,Z=G.radius,re=G.angularAxis,ne=G.cx,j=G.cy,ee=G.cxx,ie=G.cyy,fe=d.angularDragBoxSize,be=h.makeDragger(J,"path","angulardrag",he.dragmode===!1?"none":"move"),Ae={element:be,gd:$};he.dragmode===!1?Ae.dragmode=!1:g.select(be).attr("d",G.pathAnnulus(Z,Z+fe)).attr("transform",t(ne,j)).call(S,"move");function Be(Qe,Ct){return Math.atan2(ie+fe-Ct,Qe-ee-fe)}var Ie=J.frontplot.select(".scatterlayer").selectAll(".trace"),Ze=Ie.selectAll(".point"),at=Ie.selectAll(".textpoint"),it,et,lt,Me,ge,ce;function ze(Qe,Ct){var St=G.gd._fullLayout,Ot=St[G.id],jt=it+Qe*he._invScaleX,ur=et+Ct*he._invScaleY,ar=Be(jt,ur),Cr=I(ar-ce);if(Me=lt+Cr,J.frontplot.attr("transform",t(G.xOffset2,G.yOffset2)+e([-Cr,ee,ie])),G.vangles){ge=G.radialAxisAngle+Cr;var vr=t(ne,j)+e(-Cr),_r=t(ne,j)+e(-ge);J.bg.attr("transform",vr),J["radial-grid"].attr("transform",vr),J["radial-axis"].attr("transform",_r),J["radial-line"].select("line").attr("transform",_r),G.updateRadialAxisTitle(St,Ot,ge)}else G.clipPaths.forTraces.select("path").attr("transform",t(ee,ie)+e(Cr));Ze.each(function(){var ke=g.select(this),Te=o.getTranslate(ke);ke.attr("transform",t(Te.x,Te.y)+e([Cr]))}),at.each(function(){var ke=g.select(this),Te=ke.select("text"),Le=o.getTranslate(ke);ke.attr("transform",e([Cr,Te.attr("x"),Te.attr("y")])+t(Le.x,Le.y))}),re.rotation=M.modHalf(Me,360),G.updateAngularAxis(St,Ot),G._hasClipOnAxisFalse&&!M.isFullCircle(G.sectorInRad)&&Ie.call(o.hideOutsideRangePoints,G);var yt=!1;for(var Fe in G.traceHash)if(A.traceIs(Fe,"gl")){var Ke=G.traceHash[Fe],Ne=M.filterVisible(Ke),Ee=Ke[0][0].trace._module;Ee.plot($,G,Ne,Ot),Ne.length&&(yt=!0)}yt&&(E($),m($));var Ve={};tt(Ve),$.emit("plotly_relayouting",Ve)}function tt(Qe){Qe[G.id+".angularaxis.rotation"]=Me,G.vangles&&(Qe[G.id+".radialaxis.angle"]=ge)}function nt(){at.select("text").attr("transform",null);var Qe={};tt(Qe),A.call("_guiRelayout",$,Qe)}Ae.prepFn=function(Qe,Ct,St){var Ot=he[G.id];lt=Ot.angularaxis.rotation;var jt=be.getBoundingClientRect();it=Ct-jt.left,et=St-jt.top,$._fullLayout._calcInverseTransform($);var ur=M.apply3DTransform(he._invTransform)(it,et);it=ur[0],et=ur[1],ce=Be(it,et),Ae.moveFn=ze,Ae.doneFn=nt,w($)},G.vangles&&!M.isFullCircle(G.sectorInRad)&&(Ae.prepFn=M.noop,S(g.select(be),null)),v.init(Ae)},U.isPtInside=function(he){if(this.isSmith)return!0;var G=this.sectorInRad,$=this.vangles,J=this.angularAxis.c2g(he.theta),Z=this.radialAxis,re=Z.c2l(he.r),ne=Z._rl,j=$?u.isPtInsidePolygon:M.isPtInsideSector;return j(re,J,ne,G,$)},U.pathArc=function(he){var G=this.sectorInRad,$=this.vangles,J=$?u.pathPolygon:M.pathArc;return J(he,G[0],G[1],$)},U.pathSector=function(he){var G=this.sectorInRad,$=this.vangles,J=$?u.pathPolygon:M.pathSector;return J(he,G[0],G[1],$)},U.pathAnnulus=function(he,G){var $=this.sectorInRad,J=this.vangles,Z=J?u.pathPolygonAnnulus:M.pathAnnulus;return Z(he,G,$[0],$[1],J)},U.pathSubplot=function(){var he=this.innerRadius,G=this.radius;return he?this.pathAnnulus(he,G):this.pathSector(G)},U.fillViewInitialKey=function(he,G){he in this.viewInitial||(this.viewInitial[he]=G)};function W(he){var G=he.ticks+String(he.ticklen)+String(he.showticklabels);return"side"in he&&(G+=he.side),G}function Q(he){var G=he[0],$=he[1],J=$-G,Z=B(G,360),re=Z+J,ne=Math.cos(O(Z)),j=Math.sin(O(Z)),ee=Math.cos(O(re)),ie=Math.sin(O(re)),fe,be,Ae,Be;return Z<=90&&re>=90||Z>90&&re>=450?Be=1:j<=0&&ie<=0?Be=0:Be=Math.max(j,ie),Z<=180&&re>=180||Z>180&&re>=540?fe=-1:ne>=0&&ee>=0?fe=0:fe=Math.min(ne,ee),Z<=270&&re>=270||Z>270&&re>=630?be=-1:j>=0&&ie>=0?be=0:be=Math.min(j,ie),re>=360?Ae=1:ne<=0&&ee<=0?Ae=0:Ae=Math.max(ne,ee),[fe,be,Ae,Be]}function ue(he,G){var $=function(Z){return M.angleDist(he,Z)},J=M.findIndexOfMin(G,$);return G[J]}function se(he,G,$){return G?(he.attr("display",null),he.attr($)):he&&he.attr("display","none"),he}}}),rC=Ye({"src/plots/polar/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({tickmode:x.minor.tickmode,nticks:x.nticks,tick0:x.tick0,dtick:x.dtick,tickvals:x.tickvals,ticktext:x.ticktext,ticks:x.ticks,ticklen:x.ticklen,tickwidth:x.tickwidth,tickcolor:x.tickcolor,ticklabelstep:x.ticklabelstep,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,showexponent:x.showexponent,exponentformat:x.exponentformat,minexponent:x.minexponent,separatethousands:x.separatethousands,tickfont:x.tickfont,tickangle:x.tickangle,tickformat:x.tickformat,tickformatstops:x.tickformatstops,layer:x.layer},"plot","from-root"),o={visible:M({},x.visible,{dflt:!0}),type:M({},x.type,{values:["-","linear","log","date","category"]}),autotypenumbers:x.autotypenumbers,autorangeoptions:{minallowed:x.autorangeoptions.minallowed,maxallowed:x.autorangeoptions.maxallowed,clipmin:x.autorangeoptions.clipmin,clipmax:x.autorangeoptions.clipmax,include:x.autorangeoptions.include,editType:"plot"},autorange:M({},x.autorange,{editType:"plot"}),rangemode:{valType:"enumerated",values:["tozero","nonnegative","normal"],dflt:"tozero",editType:"calc"},minallowed:M({},x.minallowed,{editType:"plot"}),maxallowed:M({},x.maxallowed,{editType:"plot"}),range:M({},x.range,{items:[{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}},{valType:"any",editType:"plot",impliedEdits:{"^autorange":!1}}],editType:"plot"}),categoryorder:x.categoryorder,categoryarray:x.categoryarray,angle:{valType:"angle",editType:"plot"},autotickangles:x.autotickangles,side:{valType:"enumerated",values:["clockwise","counterclockwise"],dflt:"clockwise",editType:"plot"},title:{text:M({},x.title.text,{editType:"plot",dflt:""}),font:M({},x.title.font,{editType:"plot"}),editType:"plot"},hoverformat:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(o,t,r);var a={visible:M({},x.visible,{dflt:!0}),type:{valType:"enumerated",values:["-","linear","category"],dflt:"-",editType:"calc",_noTemplating:!0},autotypenumbers:x.autotypenumbers,categoryorder:x.categoryorder,categoryarray:x.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:x.hoverformat,uirevision:{valType:"any",editType:"none"},editType:"calc"};M(a,t,r),H.exports={domain:A({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:g.background},radialaxis:o,angularaxis:a,gridshape:{valType:"enumerated",values:["circular","linear"],dflt:"circular",editType:"plot"},uirevision:{valType:"any",editType:"none"},editType:"calc"}}}),nG=Ye({"src/plots/polar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Zg(),r=e1(),o=$m(),a=Qm(),i=P2(),n=I_(),s=cS(),c=r1(),h=rC(),v=Qk(),p=RT(),T=p.axisNames;function l(w,S,E,m){var b=E("bgcolor");m.bgColor=x.combine(b,m.paper_bgcolor);var d=E("sector");E("hole");var u=e(m.fullData,p.name,m.id),y=m.layoutOut,f;function P(be,Ae){return E(f+"."+be,Ae)}for(var L=0;L<T.length;L++){f=T[L],g.isPlainObject(w[f])||(w[f]={});var z=w[f],F=A.newContainer(S,f);F._id=F._name=f,F._attr=m.id+"."+f,F._traceIndices=u.map(function(be){return be.index});var B=p.axisName2dataArray[f],O=_(z,F,P,u,B,m);i(z,F,P,{axData:u,dataAttr:B});var I=P("visible");switch(v(F,S,y),P("uirevision",S.uirevision),F._m=1,f){case"radialaxis":P("minallowed"),P("maxallowed");var N=P("range"),U=F.getAutorangeDflt(N),W=P("autorange",U),Q;N&&(N[0]===null&&N[1]===null||(N[0]===null||N[1]===null)&&(W==="reversed"||W===!0)||N[0]!==null&&(W==="min"||W==="max reversed")||N[1]!==null&&(W==="max"||W==="min reversed"))&&(N=void 0,delete F.range,F.autorange=!0,Q=!0),Q||(U=F.getAutorangeDflt(N),W=P("autorange",U)),z.autorange=W,W&&(s(P,W,N),(O==="linear"||O==="-")&&P("rangemode"),F.isReversed()&&(F._m=-1)),F.cleanRange("range",{dfltRange:[0,1]});break;case"angularaxis":if(O==="date"){g.log("Polar plots do not support date angular axes yet.");for(var ue=0;ue<u.length;ue++)u[ue].visible=!1;O=z.type=F.type="linear"}P(O==="linear"?"thetaunit":"period");var se=P("direction");P("rotation",{counterclockwise:0,clockwise:90}[se]);break}if(a(z,F,P,F.type,{tickSuffixDflt:F.thetaunit==="degrees"?"\xB0":void 0}),I){var he,G,$,J,Z,re,ne,j,ee,ie,fe=m.font||{};he=P("color"),G=he===z.color?he:fe.color,$=fe.size,J=fe.family,Z=fe.weight,re=fe.style,ne=fe.variant,j=fe.textcase,ee=fe.lineposition,ie=fe.shadow,t(z,F,P,F.type),o(z,F,P,F.type,{font:{weight:Z,style:re,variant:ne,textcase:j,lineposition:ee,shadow:ie,color:G,size:$,family:J},noAutotickangles:f==="angularaxis",noTicklabelshift:!0,noTicklabelstandoff:!0}),r(z,F,P,{outerTicks:!0}),n(z,F,P,{dfltColor:he,bgColor:m.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:h[f]}),P("layer"),f==="radialaxis"&&(P("side"),P("angle",d[0]),P("title.text"),g.coerceFont(P,"title.font",{weight:Z,style:re,variant:ne,textcase:j,lineposition:ee,shadow:ie,color:G,size:g.bigFont($),family:J}))}O!=="category"&&P("hoverformat"),F._input=z}S.angularaxis.type==="category"&&E("gridshape")}function _(w,S,E,m,b,d){var u=E("autotypenumbers",d.autotypenumbersDflt),y=E("type");if(y==="-"){for(var f,P=0;P<m.length;P++)if(m[P].visible){f=m[P];break}f&&f[b]&&(S.type=c(f[b],"gregorian",{noMultiCategory:!0,autotypenumbers:u})),S.type==="-"?S.type="linear":w.type=S.type}return S.type}H.exports=function(S,E,m){M(S,E,m,{type:p.name,attributes:h,handleDefaults:l,font:E.font,autotypenumbersDflt:E.autotypenumbers,paper_bgcolor:E.paper_bgcolor,fullData:m,layoutOut:E})}}}),zT=Ye({"src/plots/polar/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=tC(),M=RT(),e=M.attr,t=M.name,r=x(t),o={};o[e]={valType:"subplotid",dflt:t,editType:"calc"};function a(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[t],v=0;v<h.length;v++){var p=h[v],T=g(c,t,p),l=s[p]._subplot;l||(l=A(n,p),s[p]._subplot=l),l.plot(T,s,n._promises)}}function i(n,s,c,h){for(var v=h._subplots[t]||[],p=h._has&&h._has("gl"),T=s._has&&s._has("gl"),l=p&&!T,_=0;_<v.length;_++){var w=v[_],S=h[w]._subplot;if(!s[w]&&S){S.framework.remove(),S.layers["radial-axis-title"].remove();for(var E in S.clipPaths)S.clipPaths[E].remove()}l&&S._scene&&(S._scene.destroy(),S._scene=null)}}H.exports={attr:e,name:t,idRoot:t,idRegex:r,attrRegex:r,attributes:o,layoutAttributes:rC(),supplyLayoutDefaults:nG(),plot:a,clean:i,toSVG:Pf().toSVG}}}),Ex=Ye({"src/traces/scatterpolar/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=Oo().extendFlat,M=$d(),e=Pc(),t=Pl(),r=e.line;H.exports={mode:e.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:e.text,texttemplate:x({editType:"plot"},{keys:["r","theta","text"]}),hovertext:e.hovertext,line:{color:r.color,width:r.width,dash:r.dash,backoff:r.backoff,shape:A({},r.shape,{values:["linear","spline"]}),smoothing:r.smoothing,editType:"calc"},connectgaps:e.connectgaps,marker:e.marker,cliponaxis:A({},e.cliponaxis,{dflt:!1}),textposition:e.textposition,textfont:e.textfont,fill:A({},e.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:M(),hoverinfo:A({},t.hoverinfo,{flags:["r","theta","text","name"]}),hoveron:e.hoveron,hovertemplate:g(),selected:e.selected,unselected:e.unselected}}}),FT=Ye({"src/traces/scatterpolar/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=n1(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=Ex();function i(s,c,h,v){function p(_,w){return g.coerce(s,c,a,_,w)}var T=n(s,c,v,p);if(!T){c.visible=!1;return}p("thetaunit"),p("mode",T<o?"lines+markers":"lines"),p("text"),p("hovertext"),c.hoveron!=="fills"&&p("hovertemplate"),x.hasMarkers(c)&&A(s,c,h,v,p,{gradient:!0}),x.hasLines(c)&&(M(s,c,h,v,p,{backoff:!0}),e(s,c,p),p("connectgaps")),x.hasText(c)&&(p("texttemplate"),t(s,c,v,p));var l=[];(x.hasMarkers(c)||x.hasText(c))&&(p("cliponaxis"),p("marker.maxdisplayed"),l.push("points")),p("fill"),c.fill!=="none"&&(r(s,c,h,p),x.hasLines(c)||e(s,c,p)),(c.fill==="tonext"||c.fill==="toself")&&l.push("fills"),p("hoveron",l.join("+")||"points"),g.coerceSelectionMarkerOpacity(c,p)}function n(s,c,h,v){var p=v("r"),T=v("theta");g.isTypedArray(p)&&(c.r=p=Array.from(p)),g.isTypedArray(T)&&(c.theta=T=Array.from(T));var l;if(p)T?l=Math.min(p.length,T.length):(l=p.length,v("theta0"),v("dtheta"));else{if(!T)return 0;l=c.theta.length,v("r0"),v("dr")}return c._length=l,l}H.exports={handleRThetaDefaults:n,supplyDefaults:i}}}),OT=Ye({"src/traces/scatterpolar/format_labels.js"(X,H){"use strict";var g=ta(),x=Co();H.exports=function(M,e,t){var r={},o=t[e.subplot]._subplot,a,i;o?(a=o.radialAxis,i=o.angularAxis):(o=t[e.subplot],a=o.radialaxis,i=o.angularaxis);var n=a.c2l(M.r);r.rLabel=x.tickText(a,n,!0).text;var s=i.thetaunit==="degrees"?g.rad2deg(M.theta):M.theta;return r.thetaLabel=x.tickText(i,s,!0).text,r}}}),oG=Ye({"src/traces/scatterpolar/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Co(),M=Fd(),e=Av(),t=Od(),r=Bd().calcMarkerSize;H.exports=function(a,i){for(var n=a._fullLayout,s=i.subplot,c=n[s].radialaxis,h=n[s].angularaxis,v=c.makeCalcdata(i,"r"),p=h.makeCalcdata(i,"theta"),T=i._length,l=new Array(T),_=0;_<T;_++){var w=v[_],S=p[_],E=l[_]={};g(w)&&g(S)?(E.r=w,E.theta=S):E.r=x}var m=r(i,T);return i._extremes.x=A.findExtremes(c,v,{ppad:m}),M(a,i),e(l,i),t(l,i),l}}}),sG=Ye({"src/traces/scatterpolar/plot.js"(X,H){"use strict";var g=o1(),x=ks().BADNUM;H.exports=function(M,e,t){for(var r=e.layers.frontplot.select("g.scatterlayer"),o=e.xaxis,a=e.yaxis,i={xaxis:o,yaxis:a,plot:e.framework,layerClipId:e._hasClipOnAxisFalse?e.clipIds.forTraces:null},n=e.radialAxis,s=e.angularAxis,c=0;c<t.length;c++)for(var h=t[c],v=0;v<h.length;v++){v===0&&(h[0].trace._xA=o,h[0].trace._yA=a);var p=h[v],T=p.r;if(T===x)p.x=p.y=x;else{var l=n.c2g(T),_=s.c2g(p.theta);p.x=l*Math.cos(_),p.y=l*Math.sin(_)}}g(M,i,t,r)}}}),BT=Ye({"src/traces/scatterpolar/hover.js"(X,H){"use strict";var g=l1();function x(M,e,t,r){var o=g(M,e,t,r);if(!(!o||o[0].index===!1)){var a=o[0];if(a.index===void 0)return o;var i=M.subplot,n=a.cd[a.index],s=a.trace;if(i.isPtInside(n))return a.xLabelVal=void 0,a.yLabelVal=void 0,A(n,s,i,a),a.hovertemplate=s.hovertemplate,o}}function A(M,e,t,r){var o=t.radialAxis,a=t.angularAxis;o._hovertitle="r",a._hovertitle="\u03B8";var i={};i[e.subplot]={_subplot:t};var n=e._module.formatLabels(M,e,i);r.rLabel=n.rLabel,r.thetaLabel=n.thetaLabel;var s=M.hi||e.hoverinfo,c=[];function h(p,T){c.push(p._hovertitle+": "+T)}if(!e.hovertemplate){var v=s.split("+");v.indexOf("all")!==-1&&(v=["r","theta","text"]),v.indexOf("r")!==-1&&h(o,r.rLabel),v.indexOf("theta")!==-1&&h(a,r.thetaLabel),v.indexOf("text")!==-1&&r.text&&(c.push(r.text),delete r.text),r.extraText=c.join("<br>")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),lG=Ye({"src/traces/scatterpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolar",basePlotModule:zT(),categories:["polar","symbols","showLegend","scatter-like"],attributes:Ex(),supplyDefaults:FT().supplyDefaults,colorbar:cp(),formatLabels:OT(),calc:oG(),plot:sG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:BT().hoverPoints,selectPoints:u1(),meta:{}}}}),uG=Ye({"lib/scatterpolar.js"(X,H){"use strict";H.exports=lG()}}),aC=Ye({"src/traces/scatterpolargl/attributes.js"(X,H){"use strict";var g=Ex(),x=yx(),A=xs().texttemplateAttrs;H.exports={mode:g.mode,r:g.r,theta:g.theta,r0:g.r0,dr:g.dr,theta0:g.theta0,dtheta:g.dtheta,thetaunit:g.thetaunit,text:g.text,texttemplate:A({editType:"plot"},{keys:["r","theta","text"]}),hovertext:g.hovertext,hovertemplate:g.hovertemplate,line:{color:x.line.color,width:x.line.width,dash:x.line.dash,editType:"calc"},connectgaps:x.connectgaps,marker:x.marker,fill:x.fill,fillcolor:x.fillcolor,textposition:x.textposition,textfont:x.textfont,hoverinfo:g.hoverinfo,selected:g.selected,unselected:g.unselected}}}),cG=Ye({"src/traces/scatterpolargl/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=FT().handleRThetaDefaults,M=md(),e=Dd(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=aC();H.exports=function(n,s,c,h){function v(T,l){return g.coerce(n,s,a,T,l)}var p=A(n,s,h,v);if(!p){s.visible=!1;return}v("thetaunit"),v("mode",p<o?"lines+markers":"lines"),v("text"),v("hovertext"),s.hoveron!=="fills"&&v("hovertemplate"),x.hasMarkers(s)&&M(n,s,c,h,v,{noAngleRef:!0,noStandOff:!0}),x.hasLines(s)&&(e(n,s,c,h,v),v("connectgaps")),x.hasText(s)&&(v("texttemplate"),t(n,s,h,v,{noFontShadow:!0,noFontLineposition:!0,noFontTextcase:!0})),v("fill"),s.fill!=="none"&&r(n,s,c,v),g.coerceSelectionMarkerOpacity(s,v)}}}),fG=Ye({"src/traces/scatterpolargl/format_labels.js"(X,H){"use strict";var g=OT();H.exports=function(A,M,e){var t=A.i;return"r"in A||(A.r=M._r[t]),"theta"in A||(A.theta=M._theta[t]),g(A,M,e)}}}),hG=Ye({"src/traces/scatterpolargl/calc.js"(X,H){"use strict";var g=Fd(),x=Bd().calcMarkerSize,A=m0(),M=Co(),e=mg().TOO_MANY_POINTS;H.exports=function(r,o){var a=r._fullLayout,i=o.subplot,n=a[i].radialaxis,s=a[i].angularaxis,c=o._r=n.makeCalcdata(o,"r"),h=o._theta=s.makeCalcdata(o,"theta"),v=o._length,p={};v<c.length&&(c=c.slice(0,v)),v<h.length&&(h=h.slice(0,v)),p.r=c,p.theta=h,g(r,o);var T=p.opts=A.style(r,o),l;return v<e?l=x(o,v):T.marker&&(l=2*(T.marker.sizeAvg||Math.max(T.marker.size,3))),o._extremes.x=M.findExtremes(n,c,{ppad:l}),[{x:!1,y:!1,t:p,trace:o}]}}}),pG=Ye({"src/traces/scatterpolargl/hover.js"(X,H){"use strict";var g=hT(),x=BT().makeHoverPointText;function A(M,e,t,r){var o=M.cd,a=o[0].t,i=a.r,n=a.theta,s=g.hoverPoints(M,e,t,r);if(!(!s||s[0].index===!1)){var c=s[0];if(c.index===void 0)return s;var h=M.subplot,v=c.cd[c.index],p=c.trace;if(v.r=i[c.index],v.theta=n[c.index],!!h.isPtInside(v))return c.xLabelVal=void 0,c.yLabelVal=void 0,x(v,p,h,c),s}}H.exports={hoverPoints:A}}}),dG=Ye({"src/traces/scatterpolargl/base_index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scatterpolargl",basePlotModule:zT(),categories:["gl","regl","polar","symbols","showLegend","scatter-like"],attributes:aC(),supplyDefaults:cG(),colorbar:cp(),formatLabels:fG(),calc:hG(),hoverPoints:pG().hoverPoints,selectPoints:O5(),meta:{}}}}),vG=Ye({"src/traces/scatterpolargl/plot.js"(X,H){"use strict";var g=dT(),x=jo(),A=lk(),M=z5(),e=m0(),t=ta(),r=mg().TOO_MANY_POINTS,o={};H.exports=function(i,n,s){if(s.length){var c=n.radialAxis,h=n.angularAxis,v=M(i,n);return s.forEach(function(p){if(!(!p||!p[0]||!p[0].trace)){var T=p[0],l=T.trace,_=T.t,w=l._length,S=_.r,E=_.theta,m=_.opts,b,d=S.slice(),u=E.slice();for(b=0;b<S.length;b++)n.isPtInside({r:S[b],theta:E[b]})||(d[b]=NaN,u[b]=NaN);var y=new Array(w*2),f=Array(w),P=Array(w);for(b=0;b<w;b++){var L=d[b],z,F;if(x(L)){var B=c.c2g(L),O=h.c2g(u[b],l.thetaunit);z=B*Math.cos(O),F=B*Math.sin(O)}else z=F=NaN;f[b]=y[b*2]=z,P[b]=y[b*2+1]=F}_.tree=g(y),m.marker&&w>=r&&(m.marker.cluster=_.tree),m.marker&&(m.markerSel.positions=m.markerUnsel.positions=m.marker.positions=y),m.line&&y.length>1&&t.extendFlat(m.line,e.linePositions(i,l,y)),m.text&&(t.extendFlat(m.text,{positions:y},e.textPosition(i,l,m.text,m.marker)),t.extendFlat(m.textSel,{positions:y},e.textPosition(i,l,m.text,m.markerSel)),t.extendFlat(m.textUnsel,{positions:y},e.textPosition(i,l,m.text,m.markerUnsel))),m.fill&&!v.fill2d&&(v.fill2d=!0),m.marker&&!v.scatter2d&&(v.scatter2d=!0),m.line&&!v.line2d&&(v.line2d=!0),m.text&&!v.glText&&(v.glText=!0),v.lineOptions.push(m.line),v.fillOptions.push(m.fill),v.markerOptions.push(m.marker),v.markerSelectedOptions.push(m.markerSel),v.markerUnselectedOptions.push(m.markerUnsel),v.textOptions.push(m.text),v.textSelectedOptions.push(m.textSel),v.textUnselectedOptions.push(m.textUnsel),v.selectBatch.push([]),v.unselectBatch.push([]),_.x=f,_.y=P,_.rawx=f,_.rawy=P,_.r=S,_.theta=E,_.positions=y,_._scene=v,_.index=v.count,v.count++}}),A(i,n,s)}},H.exports.reglPrecompiled=o}}),mG=Ye({"src/traces/scatterpolargl/index.js"(X,H){"use strict";var g=dG();g.plot=vG(),H.exports=g}}),gG=Ye({"lib/scatterpolargl.js"(X,H){"use strict";H.exports=mG()}}),iC=Ye({"src/traces/barpolar/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=Oo().extendFlat,A=Ex(),M=Sv();H.exports={r:A.r,theta:A.theta,r0:A.r0,dr:A.dr,theta0:A.theta0,dtheta:A.dtheta,thetaunit:A.thetaunit,base:x({},M.base,{}),offset:x({},M.offset,{}),width:x({},M.width,{}),text:x({},M.text,{}),hovertext:x({},M.hovertext,{}),marker:e(),hoverinfo:A.hoverinfo,hovertemplate:g(),selected:M.selected,unselected:M.unselected};function e(){var t=x({},M.marker);return delete t.cornerradius,t}}}),nC=Ye({"src/traces/barpolar/layout_attributes.js"(X,H){"use strict";H.exports={barmode:{valType:"enumerated",values:["stack","overlay"],dflt:"stack",editType:"calc"},bargap:{valType:"number",dflt:.1,min:0,max:1,editType:"calc"}}}}),yG=Ye({"src/traces/barpolar/defaults.js"(X,H){"use strict";var g=ta(),x=FT().handleRThetaDefaults,A=U2(),M=iC();H.exports=function(t,r,o,a){function i(s,c){return g.coerce(t,r,M,s,c)}var n=x(t,r,a,i);if(!n){r.visible=!1;return}i("thetaunit"),i("base"),i("offset"),i("width"),i("text"),i("hovertext"),i("hovertemplate"),A(t,r,i,o,a),g.coerceSelectionMarkerOpacity(r,i)}}}),_G=Ye({"src/traces/barpolar/layout_defaults.js"(X,H){"use strict";var g=ta(),x=nC();H.exports=function(A,M,e){var t={},r;function o(n,s){return g.coerce(A[r]||{},M[r],x,n,s)}for(var a=0;a<e.length;a++){var i=e[a];i.type==="barpolar"&&i.visible===!0&&(r=i.subplot,t[r]||(o("barmode"),o("bargap"),t[r]=1))}}}}),oC=Ye({"src/traces/barpolar/calc.js"(X,H){"use strict";var g=Up().hasColorscale,x=jp(),A=ta().isArrayOrTypedArray,M=z_(),e=$g().setGroupPositions,t=Od(),r=Hn().traceIs,o=ta().extendFlat;function a(n,s){for(var c=n._fullLayout,h=s.subplot,v=c[h].radialaxis,p=c[h].angularaxis,T=v.makeCalcdata(s,"r"),l=p.makeCalcdata(s,"theta"),_=s._length,w=new Array(_),S=T,E=l,m=0;m<_;m++)w[m]={p:E[m],s:S[m]};function b(d){var u=s[d];u!==void 0&&(s["_"+d]=A(u)?p.makeCalcdata(s,d):p.d2c(u,s.thetaunit))}return p.type==="linear"&&(b("width"),b("offset")),g(s,"marker")&&x(n,s,{vals:s.marker.color,containerStr:"marker",cLetter:"c"}),g(s,"marker.line")&&x(n,s,{vals:s.marker.line.color,containerStr:"marker.line",cLetter:"c"}),M(w,s),t(w,s),w}function i(n,s,c){for(var h=n.calcdata,v=[],p=0;p<h.length;p++){var T=h[p],l=T[0].trace;l.visible===!0&&r(l,"bar")&&l.subplot===c&&v.push(T)}var _=o({},s.radialaxis,{_id:"x"}),w=s.angularaxis;e(n,w,_,v,{mode:s.barmode,norm:s.barnorm,gap:s.bargap,groupgap:s.bargroupgap})}H.exports={calc:a,crossTraceCalc:i}}}),xG=Ye({"src/traces/barpolar/plot.js"(X,H){"use strict";var g=_n(),x=jo(),A=ta(),M=Bo(),e=DT();H.exports=function(o,a,i){var n=o._context.staticPlot,s=a.xaxis,c=a.yaxis,h=a.radialAxis,v=a.angularAxis,p=t(a),T=a.layers.frontplot.select("g.barlayer");A.makeTraceGroups(T,i,"trace bars").each(function(){var l=g.select(this),_=A.ensureSingle(l,"g","points"),w=_.selectAll("g.point").data(A.identity);w.enter().append("g").style("vector-effect",n?"none":"non-scaling-stroke").style("stroke-miterlimit",2).classed("point",!0),w.exit().remove(),w.each(function(S){var E=g.select(this),m=S.rp0=h.c2p(S.s0),b=S.rp1=h.c2p(S.s1),d=S.thetag0=v.c2g(S.p0),u=S.thetag1=v.c2g(S.p1),y;if(!x(m)||!x(b)||!x(d)||!x(u)||m===b||d===u)y="M0,0Z";else{var f=h.c2g(S.s1),P=(d+u)/2;S.ct=[s.c2p(f*Math.cos(P)),c.c2p(f*Math.sin(P))],y=p(m,b,d,u)}A.ensureSingle(E,"path").attr("d",y)}),M.setClipUrl(l,a._hasClipOnAxisFalse?a.clipIds.forTraces:null,o)})};function t(r){var o=r.cxx,a=r.cyy;return r.vangles?function(i,n,s,c){var h,v;A.angleDelta(s,c)>0?(h=s,v=c):(h=c,v=s);var p=e.findEnclosingVertexAngles(h,r.vangles)[0],T=e.findEnclosingVertexAngles(v,r.vangles)[1],l=[p,(h+v)/2,T];return e.pathPolygonAnnulus(i,n,h,v,l,o,a)}:function(i,n,s,c){return A.pathAnnulus(i,n,s,c,o,a)}}}}),bG=Ye({"src/traces/barpolar/hover.js"(X,H){"use strict";var g=Lc(),x=ta(),A=c1().getTraceColor,M=x.fillText,e=BT().makeHoverPointText,t=DT().isPtInsidePolygon;H.exports=function(o,a,i){var n=o.cd,s=n[0].trace,c=o.subplot,h=c.radialAxis,v=c.angularAxis,p=c.vangles,T=p?t:x.isPtInsideSector,l=o.maxHoverDistance,_=v._period||2*Math.PI,w=Math.abs(h.g2p(Math.sqrt(a*a+i*i))),S=Math.atan2(i,a);h.range[0]>h.range[1]&&(S+=Math.PI);var E=function(u){return T(w,S,[u.rp0,u.rp1],[u.thetag0,u.thetag1],p)?l+Math.min(1,Math.abs(u.thetag1-u.thetag0)/_)-1+(u.rp1-w)/(u.rp1-u.rp0)-1:1/0};if(g.getClosest(n,E,o),o.index!==!1){var m=o.index,b=n[m];o.x0=o.x1=b.ct[0],o.y0=o.y1=b.ct[1];var d=x.extendFlat({},b,{r:b.s,theta:b.p});return M(b,s,o),e(d,s,c,o),o.hovertemplate=s.hovertemplate,o.color=A(s,b),o.xLabelVal=o.yLabelVal=void 0,b.s<0&&(o.idealAlign="left"),[o]}}}}),wG=Ye({"src/traces/barpolar/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"barpolar",basePlotModule:zT(),categories:["polar","bar","showLegend"],attributes:iC(),layoutAttributes:nC(),supplyDefaults:yG(),supplyLayoutDefaults:_G(),calc:oC().calc,crossTraceCalc:oC().crossTraceCalc,plot:xG(),colorbar:cp(),formatLabels:OT(),style:Nd().style,styleOnSelect:Nd().styleOnSelect,hoverPoints:bG(),selectPoints:f1(),meta:{}}}}),TG=Ye({"lib/barpolar.js"(X,H){"use strict";H.exports=wG()}}),sC=Ye({"src/plots/smith/constants.js"(X,H){"use strict";H.exports={attr:"subplot",name:"smith",axisNames:["realaxis","imaginaryaxis"],axisName2dataArray:{imaginaryaxis:"imag",realaxis:"real"}}}}),lC=Ye({"src/plots/smith/layout_attributes.js"(X,H){"use strict";var g=Gf(),x=Vh(),A=Wu().attributes,M=ta().extendFlat,e=Ou().overrideAll,t=e({color:x.color,showline:M({},x.showline,{dflt:!0}),linecolor:x.linecolor,linewidth:x.linewidth,showgrid:M({},x.showgrid,{dflt:!0}),gridcolor:x.gridcolor,gridwidth:x.gridwidth,griddash:x.griddash},"plot","from-root"),r=e({ticklen:x.ticklen,tickwidth:M({},x.tickwidth,{dflt:2}),tickcolor:x.tickcolor,showticklabels:x.showticklabels,labelalias:x.labelalias,showtickprefix:x.showtickprefix,tickprefix:x.tickprefix,showticksuffix:x.showticksuffix,ticksuffix:x.ticksuffix,tickfont:x.tickfont,tickformat:x.tickformat,hoverformat:x.hoverformat,layer:x.layer},"plot","from-root"),o=M({visible:M({},x.visible,{dflt:!0}),tickvals:{dflt:[.2,.5,1,2,5],valType:"data_array",editType:"plot"},tickangle:M({},x.tickangle,{dflt:90}),ticks:{valType:"enumerated",values:["top","bottom",""],editType:"ticks"},side:{valType:"enumerated",values:["top","bottom"],dflt:"top",editType:"plot"},editType:"calc"},t,r),a=M({visible:M({},x.visible,{dflt:!0}),tickvals:{valType:"data_array",editType:"plot"},ticks:x.ticks,editType:"calc"},t,r);H.exports={domain:A({name:"smith",editType:"plot"}),bgcolor:{valType:"color",editType:"plot",dflt:g.background},realaxis:o,imaginaryaxis:a,editType:"calc"}}}),AG=Ye({"src/plots/smith/layout_defaults.js"(X,H){"use strict";var g=ta(),x=Fn(),A=cl(),M=ig(),e=jh().getSubplotData,t=Qm(),r=$m(),o=I_(),a=wv(),i=lC(),n=sC(),s=n.axisNames,c=v(function(p){return g.isTypedArray(p)&&(p=Array.from(p)),p.slice().reverse().map(function(T){return-T}).concat([0]).concat(p)},String);function h(p,T,l,_){var w=l("bgcolor");_.bgColor=x.combine(w,_.paper_bgcolor);var S=e(_.fullData,n.name,_.id),E=_.layoutOut,m;function b(U,W){return l(m+"."+U,W)}for(var d=0;d<s.length;d++){m=s[d],g.isPlainObject(p[m])||(p[m]={});var u=p[m],y=A.newContainer(T,m);y._id=y._name=m,y._attr=_.id+"."+m,y._traceIndices=S.map(function(U){return U.index});var f=b("visible");if(y.type="linear",a(y,E),t(u,y,b,y.type),f){var P=m==="realaxis";if(P&&b("side"),P)b("tickvals");else{var L=c(T.realaxis.tickvals||i.realaxis.tickvals.dflt);b("tickvals",L)}g.isTypedArray(y.tickvals)&&(y.tickvals=Array.from(y.tickvals));var z,F,B,O,I=_.font||{};f&&(z=b("color"),F=z===u.color?z:I.color,B=I.size,O=I.family),r(u,y,b,y.type,{noAutotickangles:!0,noTicklabelshift:!0,noTicklabelstandoff:!0,noTicklabelstep:!0,noAng:!P,noExp:!0,font:{color:F,size:B,family:O}}),g.coerce2(p,T,i,m+".ticklen"),g.coerce2(p,T,i,m+".tickwidth"),g.coerce2(p,T,i,m+".tickcolor",T.color);var N=b("ticks");N||(delete T[m].ticklen,delete T[m].tickwidth,delete T[m].tickcolor),o(u,y,b,{dfltColor:z,bgColor:_.bgColor,blend:60,showLine:!0,showGrid:!0,noZeroLine:!0,attributes:i[m]}),b("layer")}b("hoverformat"),delete y.type,y._input=u}}H.exports=function(T,l,_){M(T,l,_,{noUirevision:!0,type:n.name,attributes:i,handleDefaults:h,font:l.font,paper_bgcolor:l.paper_bgcolor,fullData:_,layoutOut:l})};function v(p,T){var l={};return function(_){var w=T?T(_):_;if(w in l)return l[w];var S=p(_);return l[w]=S,S}}}}),SG=Ye({"src/plots/smith/index.js"(X,H){"use strict";var g=jh().getSubplotCalcData,x=ta().counterRegex,A=tC(),M=sC(),e=M.attr,t=M.name,r=x(t),o={};o[e]={valType:"subplotid",dflt:t,editType:"calc"};function a(n){for(var s=n._fullLayout,c=n.calcdata,h=s._subplots[t],v=0;v<h.length;v++){var p=h[v],T=g(c,t,p),l=s[p]._subplot;l||(l=A(n,p,!0),s[p]._subplot=l),l.plot(T,s,n._promises)}}function i(n,s,c,h){for(var v=h._subplots[t]||[],p=0;p<v.length;p++){var T=v[p],l=h[T]._subplot;if(!s[T]&&l){l.framework.remove();for(var _ in l.clipPaths)l.clipPaths[_].remove()}}}H.exports={attr:e,name:t,idRoot:t,idRegex:r,attrRegex:r,attributes:o,layoutAttributes:lC(),supplyLayoutDefaults:AG(),plot:a,clean:i,toSVG:Pf().toSVG}}}),uC=Ye({"src/traces/scattersmith/attributes.js"(X,H){"use strict";var g=xs().hovertemplateAttrs,x=xs().texttemplateAttrs,A=Oo().extendFlat,M=$d(),e=Pc(),t=Pl(),r=e.line;H.exports={mode:e.mode,real:{valType:"data_array",editType:"calc+clearAxisTypes"},imag:{valType:"data_array",editType:"calc+clearAxisTypes"},text:e.text,texttemplate:x({editType:"plot"},{keys:["real","imag","text"]}),hovertext:e.hovertext,line:{color:r.color,width:r.width,dash:r.dash,backoff:r.backoff,shape:A({},r.shape,{values:["linear","spline"]}),smoothing:r.smoothing,editType:"calc"},connectgaps:e.connectgaps,marker:e.marker,cliponaxis:A({},e.cliponaxis,{dflt:!1}),textposition:e.textposition,textfont:e.textfont,fill:A({},e.fill,{values:["none","toself","tonext"],dflt:"none"}),fillcolor:M(),hoverinfo:A({},t.hoverinfo,{flags:["real","imag","text","name"]}),hoveron:e.hoveron,hovertemplate:g(),selected:e.selected,unselected:e.unselected}}}),MG=Ye({"src/traces/scattersmith/defaults.js"(X,H){"use strict";var g=ta(),x=uu(),A=md(),M=Dd(),e=n1(),t=zd(),r=ev(),o=Tv().PTS_LINESONLY,a=uC();H.exports=function(s,c,h,v){function p(_,w){return g.coerce(s,c,a,_,w)}var T=i(s,c,v,p);if(!T){c.visible=!1;return}p("mode",T<o?"lines+markers":"lines"),p("text"),p("hovertext"),c.hoveron!=="fills"&&p("hovertemplate"),x.hasMarkers(c)&&A(s,c,h,v,p,{gradient:!0}),x.hasLines(c)&&(M(s,c,h,v,p,{backoff:!0}),e(s,c,p),p("connectgaps")),x.hasText(c)&&(p("texttemplate"),t(s,c,v,p));var l=[];(x.hasMarkers(c)||x.hasText(c))&&(p("cliponaxis"),p("marker.maxdisplayed"),l.push("points")),p("fill"),c.fill!=="none"&&(r(s,c,h,p),x.hasLines(c)||e(s,c,p)),(c.fill==="tonext"||c.fill==="toself")&&l.push("fills"),p("hoveron",l.join("+")||"points"),g.coerceSelectionMarkerOpacity(c,p)};function i(n,s,c,h){var v=h("real"),p=h("imag"),T;return v&&p&&(T=Math.min(v.length,p.length)),g.isTypedArray(v)&&(s.real=v=Array.from(v)),g.isTypedArray(p)&&(s.imag=p=Array.from(p)),s._length=T,T}}}),EG=Ye({"src/traces/scattersmith/format_labels.js"(X,H){"use strict";var g=Co();H.exports=function(A,M,e){var t={},r=e[M.subplot]._subplot;return t.realLabel=g.tickText(r.radialAxis,A.real,!0).text,t.imagLabel=g.tickText(r.angularAxis,A.imag,!0).text,t}}}),kG=Ye({"src/traces/scattersmith/calc.js"(X,H){"use strict";var g=jo(),x=ks().BADNUM,A=Fd(),M=Av(),e=Od(),t=Bd().calcMarkerSize;H.exports=function(o,a){for(var i=o._fullLayout,n=a.subplot,s=i[n].realaxis,c=i[n].imaginaryaxis,h=s.makeCalcdata(a,"real"),v=c.makeCalcdata(a,"imag"),p=a._length,T=new Array(p),l=0;l<p;l++){var _=h[l],w=v[l],S=T[l]={};g(_)&&g(w)?(S.real=_,S.imag=w):S.real=x}return t(a,p),A(o,a),M(T,a),e(T,a),T}}}),CG=Ye({"src/traces/scattersmith/plot.js"(X,H){"use strict";var g=o1(),x=ks().BADNUM,A=eC(),M=A.smith;H.exports=function(t,r,o){for(var a=r.layers.frontplot.select("g.scatterlayer"),i=r.xaxis,n=r.yaxis,s={xaxis:i,yaxis:n,plot:r.framework,layerClipId:r._hasClipOnAxisFalse?r.clipIds.forTraces:null},c=0;c<o.length;c++)for(var h=o[c],v=0;v<h.length;v++){v===0&&(h[0].trace._xA=i,h[0].trace._yA=n);var p=h[v],T=p.real;if(T===x)p.x=p.y=x;else{var l=M([T,p.imag]);p.x=l[0],p.y=l[1]}}g(t,s,o,a)}}}),LG=Ye({"src/traces/scattersmith/hover.js"(X,H){"use strict";var g=l1();function x(M,e,t,r){var o=g(M,e,t,r);if(!(!o||o[0].index===!1)){var a=o[0];if(a.index===void 0)return o;var i=M.subplot,n=a.cd[a.index],s=a.trace;if(i.isPtInside(n))return a.xLabelVal=void 0,a.yLabelVal=void 0,A(n,s,i,a),a.hovertemplate=s.hovertemplate,o}}function A(M,e,t,r){var o=t.radialAxis,a=t.angularAxis;o._hovertitle="real",a._hovertitle="imag";var i={};i[e.subplot]={_subplot:t};var n=e._module.formatLabels(M,e,i);r.realLabel=n.realLabel,r.imagLabel=n.imagLabel;var s=M.hi||e.hoverinfo,c=[];function h(p,T){c.push(p._hovertitle+": "+T)}if(!e.hovertemplate){var v=s.split("+");v.indexOf("all")!==-1&&(v=["real","imag","text"]),v.indexOf("real")!==-1&&h(o,r.realLabel),v.indexOf("imag")!==-1&&h(a,r.imagLabel),v.indexOf("text")!==-1&&r.text&&(c.push(r.text),delete r.text),r.extraText=c.join("<br>")}}H.exports={hoverPoints:x,makeHoverPointText:A}}}),PG=Ye({"src/traces/scattersmith/index.js"(X,H){"use strict";H.exports={moduleType:"trace",name:"scattersmith",basePlotModule:SG(),categories:["smith","symbols","showLegend","scatter-like"],attributes:uC(),supplyDefaults:MG(),colorbar:cp(),formatLabels:EG(),calc:kG(),plot:CG(),style:ed().style,styleOnSelect:ed().styleOnSelect,hoverPoints:LG().hoverPoints,selectPoints:u1(),meta:{}}}}),IG=Ye({"lib/scattersmith.js"(X,H){"use strict";H.exports=PG()}}),Tp=Ye({"node_modules/world-calendars/dist/main.js"(X,H){var g=Wf();function x(){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={}}g(x.prototype,{instance:function(o,a){o=(o||"gregorian").toLowerCase(),a=a||"";var i=this._localCals[o+"-"+a];if(!i&&this.calendars[o]&&(i=new this.calendars[o](a),this._localCals[o+"-"+a]=i),!i)throw(this.local.invalidCalendar||this.regionalOptions[""].invalidCalendar).replace(/\{0\}/,o);return i},newDate:function(o,a,i,n,s){return n=(o!=null&&o.year?o.calendar():typeof n=="string"?this.instance(n,s):n)||this.instance(),n.newDate(o,a,i)},substituteDigits:function(o){return function(a){return(a+"").replace(/[0-9]/g,function(i){return o[i]})}},substituteChineseDigits:function(o,a){return function(i){for(var n="",s=0;i>0;){var c=i%10;n=(c===0?"":o[c]+a[s])+n,s++,i=Math.floor(i/10)}return n.indexOf(o[1]+a[1])===0&&(n=n.substr(1)),n||o[0]}}});function A(o,a,i,n){if(this._calendar=o,this._year=a,this._month=i,this._day=n,this._calendar._validateLevel===0&&!this._calendar.isValid(this._year,this._month,this._day))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name)}function M(o,a){return o=""+o,"000000".substring(0,a-o.length)+o}g(A.prototype,{newDate:function(o,a,i){return this._calendar.newDate(o??this,a,i)},year:function(o){return arguments.length===0?this._year:this.set(o,"y")},month:function(o){return arguments.length===0?this._month:this.set(o,"m")},day:function(o){return arguments.length===0?this._day:this.set(o,"d")},date:function(o,a,i){if(!this._calendar.isValid(o,a,i))throw(r.local.invalidDate||r.regionalOptions[""].invalidDate).replace(/\{0\}/,this._calendar.local.name);return this._year=o,this._month=a,this._day=i,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(o,a){return this._calendar.add(this,o,a)},set:function(o,a){return this._calendar.set(this,o,a)},compareTo:function(o){if(this._calendar.name!==o._calendar.name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this._calendar.local.name).replace(/\{1\}/,o._calendar.local.name);var a=this._year!==o._year?this._year-o._year:this._month!==o._month?this.monthOfYear()-o.monthOfYear():this._day-o._day;return a===0?0:a<0?-1:1},calendar:function(){return this._calendar},toJD:function(){return this._calendar.toJD(this)},fromJD:function(o){return this._calendar.fromJD(o)},toJSDate:function(){return this._calendar.toJSDate(this)},fromJSDate:function(o){return this._calendar.fromJSDate(o)},toString:function(){return(this.year()<0?"-":"")+M(Math.abs(this.year()),4)+"-"+M(this.month(),2)+"-"+M(this.day(),2)}});function e(){this.shortYearCutoff="+10"}g(e.prototype,{_validateLevel:0,newDate:function(o,a,i){return o==null?this.today():(o.year&&(this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),i=o.day(),a=o.month(),o=o.year()),new A(this,o,a,i))},today:function(){return this.fromJSDate(new Date)},epoch:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return a.year()<0?this.local.epochs[0]:this.local.epochs[1]},formatYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return(a.year()<0?"-":"")+M(Math.abs(a.year()),4)},monthsInYear:function(o){return this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),12},monthOfYear:function(o,a){var i=this._validate(o,a,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return(i.month()+this.monthsInYear(i)-this.firstMonth)%this.monthsInYear(i)+this.minMonth},fromMonthOfYear:function(o,a){var i=(a+this.firstMonth-2*this.minMonth)%this.monthsInYear(o)+this.minMonth;return this._validate(o,i,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth),i},daysInYear:function(o){var a=this._validate(o,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear);return this.leapYear(a)?366:365},dayOfYear:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.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(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return(Math.floor(this.toJD(n))+2)%this.daysInWeek()},extraInfo:function(o,a,i){return this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),{}},add:function(o,a,i){return this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate),this._correctAdd(o,this._add(o,a,i),a,i)},_add:function(o,a,i){if(this._validateLevel++,i==="d"||i==="w"){var n=o.toJD()+a*(i==="w"?this.daysInWeek():1),s=o.calendar().fromJD(n);return this._validateLevel--,[s.year(),s.month(),s.day()]}try{var c=o.year()+(i==="y"?a:0),h=o.monthOfYear()+(i==="m"?a:0),s=o.day(),v=function(l){for(;h<l.minMonth;)c--,h+=l.monthsInYear(c);for(var _=l.monthsInYear(c);h>_-1+l.minMonth;)c++,h-=_,_=l.monthsInYear(c)};i==="y"?(o.month()!==this.fromMonthOfYear(c,h)&&(h=this.newDate(c,o.month(),this.minDay).monthOfYear()),h=Math.min(h,this.monthsInYear(c)),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h)))):i==="m"&&(v(this),s=Math.min(s,this.daysInMonth(c,this.fromMonthOfYear(c,h))));var p=[c,this.fromMonthOfYear(c,h),s];return this._validateLevel--,p}catch(T){throw this._validateLevel--,T}},_correctAdd:function(o,a,i,n){if(!this.hasYearZero&&(n==="y"||n==="m")&&(a[0]===0||o.year()>0!=a[0]>0)){var s={y:[1,1,"y"],m:[1,this.monthsInYear(-1),"m"],w:[this.daysInWeek(),this.daysInYear(-1),"d"],d:[1,this.daysInYear(-1),"d"]}[n],c=i<0?-1:1;a=this._add(o,i*s[0]+c*s[1],s[2])}return o.date(a[0],a[1],a[2])},set:function(o,a,i){this._validate(o,this.minMonth,this.minDay,r.local.invalidDate||r.regionalOptions[""].invalidDate);var n=i==="y"?a:o.year(),s=i==="m"?a:o.month(),c=i==="d"?a:o.day();return(i==="y"||i==="m")&&(c=Math.min(c,this.daysInMonth(n,s))),o.date(n,s,c)},isValid:function(o,a,i){this._validateLevel++;var n=this.hasYearZero||o!==0;if(n){var s=this.newDate(o,a,this.minDay);n=a>=this.minMonth&&a-this.minMonth<this.monthsInYear(s)&&i>=this.minDay&&i-this.minDay<this.daysInMonth(s)}return this._validateLevel--,n},toJSDate:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);return r.instance().fromJD(this.toJD(n)).toJSDate()},fromJSDate:function(o){return this.fromJD(r.instance().fromJSDate(o).toJD())},_validate:function(o,a,i,n){if(o.year){if(this._validateLevel===0&&this.name!==o.calendar().name)throw(r.local.differentCalendars||r.regionalOptions[""].differentCalendars).replace(/\{0\}/,this.local.name).replace(/\{1\}/,o.calendar().local.name);return o}try{if(this._validateLevel++,this._validateLevel===1&&!this.isValid(o,a,i))throw n.replace(/\{0\}/,this.local.name);var s=this.newDate(o,a,i);return this._validateLevel--,s}catch(c){throw this._validateLevel--,c}}});function t(o){this.local=this.regionalOptions[o]||this.regionalOptions[""]}t.prototype=new e,g(t.prototype,{name:"Gregorian",jdEpoch:17214255e-1,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(i){var a=this._validate(i,this.minMonth,this.minDay,r.local.invalidYear||r.regionalOptions[""].invalidYear),i=a.year()+(a.year()<0?1:0);return i%4===0&&(i%100!==0||i%400===0)},weekOfYear:function(o,a,i){var n=this.newDate(o,a,i);return n.add(4-(n.dayOfWeek()||7),"d"),Math.floor((n.dayOfYear()-1)/7)+1},daysInMonth:function(o,a){var i=this._validate(o,a,this.minDay,r.local.invalidMonth||r.regionalOptions[""].invalidMonth);return this.daysPerMonth[i.month()-1]+(i.month()===2&&this.leapYear(i.year())?1:0)},weekDay:function(o,a,i){return(this.dayOfWeek(o,a,i)||7)<6},toJD:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate);o=n.year(),a=n.month(),i=n.day(),o<0&&o++,a<3&&(a+=12,o--);var s=Math.floor(o/100),c=2-s+Math.floor(s/4);return Math.floor(365.25*(o+4716))+Math.floor(30.6001*(a+1))+i+c-1524.5},fromJD:function(o){var a=Math.floor(o+.5),i=Math.floor((a-186721625e-2)/36524.25);i=a+1+i-Math.floor(i/4);var n=i+1524,s=Math.floor((n-122.1)/365.25),c=Math.floor(365.25*s),h=Math.floor((n-c)/30.6001),v=n-c-Math.floor(h*30.6001),p=h-(h>13.5?13:1),T=s-(p>2.5?4716:4715);return T<=0&&T--,this.newDate(T,p,v)},toJSDate:function(o,a,i){var n=this._validate(o,a,i,r.local.invalidDate||r.regionalOptions[""].invalidDate),s=new Date(n.year(),n.month()-1,n.day());return s.setHours(0),s.setMinutes(0),s.setSeconds(0),s.setMilliseconds(0),s.setHours(s.getHours()>12?s.getHours()+2:0),s},fromJSDate:function(o){return this.newDate(o.getFullYear(),o.getMonth()+1,o.getDate())}});var r=H.exports=new x;r.cdate=A,r.baseCalendar=e,r.calendars.gregorian=t}}),RG=Ye({"node_modules/world-calendars/dist/plus.js"(){var X=Wf(),H=Tp();X(H.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"}),H.local=H.regionalOptions[""],X(H.cdate.prototype,{formatDate:function(g,x){return typeof g!="string"&&(x=g,g=""),this._calendar.formatDate(g||"",this,x)}}),X(H.baseCalendar.prototype,{UNIX_EPOCH:H.instance().newDate(1970,1,1).toJD(),SECS_PER_DAY:24*60*60,TICKS_EPOCH:H.instance().jdEpoch,TICKS_PER_DAY:24*60*60*1e7,ATOM:"yyyy-mm-dd",COOKIE:"D, dd M yyyy",FULL:"DD, MM d, yyyy",ISO_8601:"yyyy-mm-dd",JULIAN:"J",RFC_822:"D, d M yy",RFC_850:"DD, dd-M-yy",RFC_1036:"D, d M yy",RFC_1123:"D, d M yyyy",RFC_2822:"D, d M yyyy",RSS:"D, d M yy",TICKS:"!",TIMESTAMP:"@",W3C:"yyyy-mm-dd",formatDate:function(g,x,A){if(typeof g!="string"&&(A=x,x=g,g=""),!x)return"";if(x.calendar()!==this)throw H.local.invalidFormat||H.regionalOptions[""].invalidFormat;g=g||this.local.dateFormat,A=A||{};for(var M=A.dayNamesShort||this.local.dayNamesShort,e=A.dayNames||this.local.dayNames,t=A.monthNumbers||this.local.monthNumbers,r=A.monthNamesShort||this.local.monthNamesShort,o=A.monthNames||this.local.monthNames,a=A.calculateWeek||this.local.calculateWeek,i=function(S,E){for(var m=1;w+m<g.length&&g.charAt(w+m)===S;)m++;return w+=m-1,Math.floor(m/(E||1))>1},n=function(S,E,m,b){var d=""+E;if(i(S,b))for(;d.length<m;)d="0"+d;return d},s=function(S,E,m,b){return i(S)?b[E]:m[E]},c=this,h=function(S){return typeof t=="function"?t.call(c,S,i("m")):T(n("m",S.month(),2))},v=function(S,E){return E?typeof o=="function"?o.call(c,S):o[S.month()-c.minMonth]:typeof r=="function"?r.call(c,S):r[S.month()-c.minMonth]},p=this.local.digits,T=function(S){return A.localNumbers&&p?p(S):S},l="",_=!1,w=0;w<g.length;w++)if(_)g.charAt(w)==="'"&&!i("'")?_=!1:l+=g.charAt(w);else switch(g.charAt(w)){case"d":l+=T(n("d",x.day(),2));break;case"D":l+=s("D",x.dayOfWeek(),M,e);break;case"o":l+=n("o",x.dayOfYear(),3);break;case"w":l+=n("w",x.weekOfYear(),2);break;case"m":l+=h(x);break;case"M":l+=v(x,i("M"));break;case"y":l+=i("y",2)?x.year():(x.year()%100<10?"0":"")+x.year()%100;break;case"Y":i("Y",2),l+=x.formatYear();break;case"J":l+=x.toJD();break;case"@":l+=(x.toJD()-this.UNIX_EPOCH)*this.SECS_PER_DAY;break;case"!":l+=(x.toJD()-this.TICKS_EPOCH)*this.TICKS_PER_DAY;break;case"'":i("'")?l+="'":_=!0;break;default:l+=g.charAt(w)}return l},parseDate:function(g,x,A){if(x==null)throw H.local.invalidArguments||H.regionalOptions[""].invalidArguments;if(x=typeof x=="object"?x.toString():x+"",x==="")return null;g=g||this.local.dateFormat,A=A||{};var M=A.shortYearCutoff||this.shortYearCutoff;M=typeof M!="string"?M:this.today().year()%100+parseInt(M,10);for(var e=A.dayNamesShort||this.local.dayNamesShort,t=A.dayNames||this.local.dayNames,r=A.parseMonth||this.local.parseMonth,o=A.monthNumbers||this.local.monthNumbers,a=A.monthNamesShort||this.local.monthNamesShort,i=A.monthNames||this.local.monthNames,n=-1,s=-1,c=-1,h=-1,v=-1,p=!1,T=!1,l=function(P,L){for(var z=1;u+z<g.length&&g.charAt(u+z)===P;)z++;return u+=z-1,Math.floor(z/(L||1))>1},_=function(P,L){var z=l(P,L),F=[2,3,z?4:2,z?4:2,10,11,20]["oyYJ@!".indexOf(P)+1],B=new RegExp("^-?\\d{1,"+F+"}"),O=x.substring(d).match(B);if(!O)throw(H.local.missingNumberAt||H.regionalOptions[""].missingNumberAt).replace(/\{0\}/,d);return d+=O[0].length,parseInt(O[0],10)},w=this,S=function(){if(typeof o=="function"){l("m");var P=o.call(w,x.substring(d));return d+=P.length,P}return _("m")},E=function(P,L,z,F){for(var B=l(P,F)?z:L,O=0;O<B.length;O++)if(x.substr(d,B[O].length).toLowerCase()===B[O].toLowerCase())return d+=B[O].length,O+w.minMonth;throw(H.local.unknownNameAt||H.regionalOptions[""].unknownNameAt).replace(/\{0\}/,d)},m=function(){if(typeof i=="function"){var P=l("M")?i.call(w,x.substring(d)):a.call(w,x.substring(d));return d+=P.length,P}return E("M",a,i)},b=function(){if(x.charAt(d)!==g.charAt(u))throw(H.local.unexpectedLiteralAt||H.regionalOptions[""].unexpectedLiteralAt).replace(/\{0\}/,d);d++},d=0,u=0;u<g.length;u++)if(T)g.charAt(u)==="'"&&!l("'")?T=!1:b();else switch(g.charAt(u)){case"d":h=_("d");break;case"D":E("D",e,t);break;case"o":v=_("o");break;case"w":_("w");break;case"m":c=S();break;case"M":c=m();break;case"y":var y=u;p=!l("y",2),u=y,s=_("y",2);break;case"Y":s=_("Y",2);break;case"J":n=_("J")+.5,x.charAt(d)==="."&&(d++,_("J"));break;case"@":n=_("@")/this.SECS_PER_DAY+this.UNIX_EPOCH;break;case"!":n=_("!")/this.TICKS_PER_DAY+this.TICKS_EPOCH;break;case"*":d=x.length;break;case"'":l("'")?b():T=!0;break;default:b()}if(d<x.length)throw H.local.unexpectedText||H.regionalOptions[""].unexpectedText;if(s===-1?s=this.today().year():s<100&&p&&(s+=M===-1?1900:this.today().year()-this.today().year()%100-(s<=M?0:100)),typeof c=="string"&&(c=r.call(this,s,c)),v>-1){c=1,h=v;for(var f=this.daysInMonth(s,c);h>f;f=this.daysInMonth(s,c))c++,h-=f}return n>-1?this.fromJD(n):this.newDate(s,c,h)},determineDate:function(g,x,A,M,e){A&&typeof A!="object"&&(e=M,M=A,A=null),typeof M!="string"&&(e=M,M="");var t=this,r=function(o){try{return t.parseDate(M,o,e)}catch{}o=o.toLowerCase();for(var a=(o.match(/^c/)&&A?A.newDate():null)||t.today(),i=/([+-]?[0-9]+)\s*(d|w|m|y)?/g,n=i.exec(o);n;)a.add(parseInt(n[1],10),n[2]||"d"),n=i.exec(o);return a};return x=x?x.newDate():null,g=g==null?x:typeof g=="string"?r(g):typeof g=="number"?isNaN(g)||g===1/0||g===-1/0?x:t.today().add(g,"d"):t.newDate(g),g}})}}),DG=Ye({"node_modules/world-calendars/dist/calendars/chinese.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(n){this.local=this.regionalOptions[n||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Chinese",jdEpoch:17214255e-1,hasYearZero:!1,minMonth:0,firstMonth:0,minDay:1,regionalOptions:{"":{name:"Chinese",epochs:["BEC","EC"],monthNumbers:function(n,s){if(typeof n=="string"){var c=n.match(M);return c?c[0]:""}var h=this._validateYear(n),v=n.month(),p=""+this.toChineseMonth(h,v);return s&&p.length<2&&(p="0"+p),this.isIntercalaryMonth(h,v)&&(p+="i"),p},monthNames:function(n){if(typeof n=="string"){var s=n.match(e);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\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"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},monthNamesShort:function(n){if(typeof n=="string"){var s=n.match(t);return s?s[0]:""}var c=this._validateYear(n),h=n.month(),v=this.toChineseMonth(c,h),p=["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"][v-1];return this.isIntercalaryMonth(c,h)&&(p="\u95F0"+p),p},parseMonth:function(n,s){n=this._validateYear(n);var c=parseInt(s),h;if(isNaN(c))s[0]==="\u95F0"&&(h=!0,s=s.substring(1)),s[s.length-1]==="\u6708"&&(s=s.substring(0,s.length-1)),c=1+["\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D","\u5341","\u5341\u4E00","\u5341\u4E8C"].indexOf(s);else{var v=s[s.length-1];h=v==="i"||v==="I"}var p=this.toMonthIndex(n,c,h);return p},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(n,s){if(n.year&&(n=n.year()),typeof n!="number"||n<1888||n>2111)throw s.replace(/\{0\}/,this.local.name);return n},toMonthIndex:function(n,s,c){var h=this.intercalaryMonth(n),v=c&&s!==h;if(v||s<1||s>12)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p;return h?!c&&s<=h?p=s-1:p=s:p=s-1,p},toChineseMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n),h=c?12:11;if(s<0||s>h)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var v;return c?s<c?v=s+1:v=s:v=s+1,v},intercalaryMonth:function(n){n=this._validateYear(n);var s=r[n-r[0]],c=s>>13;return c},isIntercalaryMonth:function(n,s){n.year&&(n=n.year(),s=n.month());var c=this.intercalaryMonth(n);return!!c&&c===s},leapYear:function(n){return this.intercalaryMonth(n)!==0},weekOfYear:function(n,s,c){var h=this._validateYear(n,X.local.invalidyear),v=o[h-o[0]],p=v>>9&4095,T=v>>5&15,l=v&31,_;_=g.newDate(p,T,l),_.add(4-(_.dayOfWeek()||7),"d");var w=this.toJD(n,s,c)-_.toJD();return 1+Math.floor(w/7)},monthsInYear:function(n){return this.leapYear(n)?13:12},daysInMonth:function(n,s){n.year&&(s=n.month(),n=n.year()),n=this._validateYear(n);var c=r[n-r[0]],h=c>>13,v=h?12:11;if(s>v)throw X.local.invalidMonth.replace(/\{0\}/,this.local.name);var p=c&1<<12-s?30:29;return p},weekDay:function(n,s,c){return(this.dayOfWeek(n,s,c)||7)<6},toJD:function(n,s,c){var h=this._validate(n,p,c,X.local.invalidDate);n=this._validateYear(h.year()),s=h.month(),c=h.day();var v=this.isIntercalaryMonth(n,s),p=this.toChineseMonth(n,s),T=i(n,p,c,v);return g.toJD(T.year,T.month,T.day)},fromJD:function(n){var s=g.fromJD(n),c=a(s.year(),s.month(),s.day()),h=this.toMonthIndex(c.year,c.month,c.isIntercalary);return this.newDate(c.year,h,c.day)},fromString:function(n){var s=n.match(A),c=this._validateYear(+s[1]),h=+s[2],v=!!s[3],p=this.toMonthIndex(c,h,v),T=+s[4];return this.newDate(c,p,T)},add:function(n,s,c){var h=n.year(),v=n.month(),p=this.isIntercalaryMonth(h,v),T=this.toChineseMonth(h,v),l=Object.getPrototypeOf(x.prototype).add.call(this,n,s,c);if(c==="y"){var _=l.year(),w=l.month(),S=this.isIntercalaryMonth(_,T),E=p&&S?this.toMonthIndex(_,T,!0):this.toMonthIndex(_,T,!1);E!==w&&l.month(E)}return l}});var A=/^\s*(-?\d\d\d\d|\d\d)[-/](\d?\d)([iI]?)[-/](\d?\d)/m,M=/^\d?\d[iI]?/m,e=/^闰?十?[一二三四五六七八九]?月/m,t=/^闰?十?[一二三四五六七八九]?/m;X.calendars.chinese=x;var r=[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],o=[1887,966732,967231,967733,968265,968766,969297,969798,970298,970829,971330,971830,972362,972863,973395,973896,974397,974928,975428,975929,976461,976962,977462,977994,978494,979026,979526,980026,980558,981059,981559,982091,982593,983124,983624,984124,984656,985157,985656,986189,986690,987191,987722,988222,988753,989254,989754,990286,990788,991288,991819,992319,992851,993352,993851,994383,994885,995385,995917,996418,996918,997450,997949,998481,998982,999483,1000014,1000515,1001016,1001548,1002047,1002578,1003080,1003580,1004111,1004613,1005113,1005645,1006146,1006645,1007177,1007678,1008209,1008710,1009211,1009743,1010243,1010743,1011275,1011775,1012306,1012807,1013308,1013840,1014341,1014841,1015373,1015874,1016404,1016905,1017405,1017937,1018438,1018939,1019471,1019972,1020471,1021002,1021503,1022035,1022535,1023036,1023568,1024069,1024568,1025100,1025601,1026102,1026633,1027133,1027666,1028167,1028666,1029198,1029699,1030199,1030730,1031231,1031763,1032264,1032764,1033296,1033797,1034297,1034828,1035329,1035830,1036362,1036861,1037393,1037894,1038394,1038925,1039427,1039927,1040459,1040959,1041491,1041992,1042492,1043023,1043524,1044024,1044556,1045057,1045558,1046090,1046590,1047121,1047622,1048122,1048654,1049154,1049655,1050187,1050689,1051219,1051720,1052220,1052751,1053252,1053752,1054284,1054786,1055285,1055817,1056317,1056849,1057349,1057850,1058382,1058883,1059383,1059915,1060415,1060947,1061447,1061947,1062479,1062981,1063480,1064012,1064514,1065014,1065545,1066045,1066577,1067078,1067578,1068110,1068611,1069112,1069642,1070142,1070674,1071175,1071675,1072207,1072709,1073209,1073740,1074241,1074741,1075273,1075773,1076305,1076807,1077308,1077839,1078340,1078840,1079372,1079871,1080403,1080904];function a(n,s,c,h){var v,p;if(typeof n=="object")v=n,p=s||{};else{var T=typeof n=="number"&&n>=1888&&n<=2111;if(!T)throw new Error("Solar year outside range 1888-2111");var l=typeof s=="number"&&s>=1&&s<=12;if(!l)throw new Error("Solar month outside range 1 - 12");var _=typeof c=="number"&&c>=1&&c<=31;if(!_)throw new Error("Solar day outside range 1 - 31");v={year:n,month:s,day:c},p=h||{}}var w=o[v.year-o[0]],S=v.year<<9|v.month<<5|v.day;p.year=S>=w?v.year:v.year-1,w=o[p.year-o[0]];var E=w>>9&4095,m=w>>5&15,b=w&31,d,u=new Date(E,m-1,b),y=new Date(v.year,v.month-1,v.day);d=Math.round((y-u)/(24*3600*1e3));var f=r[p.year-r[0]],P;for(P=0;P<13;P++){var L=f&1<<12-P?30:29;if(d<L)break;d-=L}var z=f>>13;return!z||P<z?(p.isIntercalary=!1,p.month=1+P):P===z?(p.isIntercalary=!0,p.month=P):(p.isIntercalary=!1,p.month=P),p.day=1+d,p}function i(n,s,c,h,v){var p,T;if(typeof n=="object")T=n,p=s||{};else{var l=typeof n=="number"&&n>=1888&&n<=2111;if(!l)throw new Error("Lunar year outside range 1888-2111");var _=typeof s=="number"&&s>=1&&s<=12;if(!_)throw new Error("Lunar month outside range 1 - 12");var w=typeof c=="number"&&c>=1&&c<=30;if(!w)throw new Error("Lunar day outside range 1 - 30");var S;typeof h=="object"?(S=!1,p=h):(S=!!h,p=v||{}),T={year:n,month:s,day:c,isIntercalary:S}}var E;E=T.day-1;var m=r[T.year-r[0]],b=m>>13,d;b&&(T.month>b||T.isIntercalary)?d=T.month:d=T.month-1;for(var u=0;u<d;u++){var y=m&1<<12-u?30:29;E+=y}var f=o[T.year-o[0]],P=f>>9&4095,L=f>>5&15,z=f&31,F=new Date(P,L-1,z+E);return p.year=F.getFullYear(),p.month=1+F.getMonth(),p.day=F.getDate(),p}}}),zG=Ye({"node_modules/world-calendars/dist/calendars/coptic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Coptic",jdEpoch:18250295e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Coptic",epochs:["BAM","AM"],monthNames:["Thout","Paopi","Hathor","Koiak","Tobi","Meshir","Paremhat","Paremoude","Pashons","Paoni","Epip","Mesori","Pi Kogi Enavot"],monthNamesShort:["Tho","Pao","Hath","Koi","Tob","Mesh","Pat","Pad","Pash","Pao","Epi","Meso","PiK"],dayNames:["Tkyriaka","Pesnau","Pshoment","Peftoou","Ptiou","Psoou","Psabbaton"],dayNamesShort:["Tky","Pes","Psh","Pef","Pti","Pso","Psa"],dayNamesMin:["Tk","Pes","Psh","Pef","Pt","Pso","Psa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.coptic=g}}),FG=Ye({"node_modules/world-calendars/dist/calendars/discworld.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Discworld",jdEpoch:17214255e-1,daysPerMonth:[16,32,32,32,32,32,32,32,32,32,32,32,32],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Discworld",epochs:["BUC","UC"],monthNames:["Ick","Offle","February","March","April","May","June","Grune","August","Spune","Sektober","Ember","December"],monthNamesShort:["Ick","Off","Feb","Mar","Apr","May","Jun","Gru","Aug","Spu","Sek","Emb","Dec"],dayNames:["Sunday","Octeday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Oct","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Oc","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:2,isRTL:!1}},leapYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),!1},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),13},daysInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),400},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/8)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]},daysInWeek:function(){return 8},dayOfWeek:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return(t.day()+1)%8},weekDay:function(A,M,e){var t=this.dayOfWeek(A,M,e);return t>=2&&t<=6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{century:x[Math.floor((t.year()-1)/100)+1]||""}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return A=t.year()+(t.year()<0?1:0),M=t.month(),e=t.day(),e+(M>1?16:0)+(M>2?(M-2)*32:0)+(A-1)*400+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A+.5)-Math.floor(this.jdEpoch)-1;var M=Math.floor(A/400)+1;A-=(M-1)*400,A+=A>15?16:0;var e=Math.floor(A/32)+1,t=A-(e-1)*32+1;return this.newDate(M<=0?M-1:M,e,t)}});var x={20:"Fruitbat",21:"Anchovy"};X.calendars.discworld=g}}),OG=Ye({"node_modules/world-calendars/dist/calendars/ethiopian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Ethiopian",jdEpoch:17242205e-1,daysPerMonth:[30,30,30,30,30,30,30,30,30,30,30,30,5],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Ethiopian",epochs:["BEE","EE"],monthNames:["Meskerem","Tikemet","Hidar","Tahesas","Tir","Yekatit","Megabit","Miazia","Genbot","Sene","Hamle","Nehase","Pagume"],monthNamesShort:["Mes","Tik","Hid","Tah","Tir","Yek","Meg","Mia","Gen","Sen","Ham","Neh","Pag"],dayNames:["Ehud","Segno","Maksegno","Irob","Hamus","Arb","Kidame"],dayNamesShort:["Ehu","Seg","Mak","Iro","Ham","Arb","Kid"],dayNamesMin:["Eh","Se","Ma","Ir","Ha","Ar","Ki"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()+(A.year()<0?1:0);return M%4===3||M%4===-1},monthsInYear:function(x){return this._validate(x,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear),13},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===13&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),x<0&&x++,e.day()+(e.month()-1)*30+(x-1)*365+Math.floor(x/4)+this.jdEpoch-1},fromJD:function(x){var A=Math.floor(x)+.5-this.jdEpoch,M=Math.floor((A-Math.floor((A+366)/1461))/365)+1;M<=0&&M--,A=Math.floor(x)+.5-this.newDate(M,1,1).toJD();var e=Math.floor(A/30)+1,t=A-(e-1)*30+1;return this.newDate(M,e,t)}}),X.calendars.ethiopian=g}}),BG=Ye({"node_modules/world-calendars/dist/calendars/hebrew.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.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(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this._leapYear(M.year())},_leapYear:function(A){return A=A<0?A+1:A,x(A*7+1,19)<7},monthsInYear:function(A){return this._validate(A,this.minMonth,this.minDay,X.local.invalidYear),this._leapYear(A.year?A.year():A)?13:12},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return A=M.year(),this.toJD(A===-1?1:A+1,7,1)-this.toJD(A,7,1)},daysInMonth:function(A,M){return A.year&&(M=A.month(),A=A.year()),this._validate(A,M,this.minDay,X.local.invalidMonth),M===12&&this.leapYear(A)||M===8&&x(this.daysInYear(A),10)===5?30:M===9&&x(this.daysInYear(A),10)===3?29:this.daysPerMonth[M-1]},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==6},extraInfo:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);return{yearType:(this.leapYear(t)?"embolismic":"common")+" "+["deficient","regular","complete"][this.daysInYear(t)%10-3]}},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A<=0?A+1:A,o=this.jdEpoch+this._delay1(r)+this._delay2(r)+e+1;if(M<7){for(var a=7;a<=this.monthsInYear(A);a++)o+=this.daysInMonth(A,a);for(var a=1;a<M;a++)o+=this.daysInMonth(A,a)}else for(var a=7;a<M;a++)o+=this.daysInMonth(A,a);return o},_delay1:function(A){var M=Math.floor((235*A-234)/19),e=12084+13753*M,t=M*29+Math.floor(e/25920);return x(3*(t+1),7)<3&&t++,t},_delay2:function(A){var M=this._delay1(A-1),e=this._delay1(A),t=this._delay1(A+1);return t-e===356?2:e-M===382?1:0},fromJD:function(A){A=Math.floor(A)+.5;for(var M=Math.floor((A-this.jdEpoch)*98496/35975351)-1;A>=this.toJD(M===-1?1:M+1,7,1);)M++;for(var e=A<this.toJD(M,1,1)?7:1;A>this.toJD(M,e,this.daysInMonth(M,e));)e++;var t=A-this.toJD(M,e,1)+1;return this.newDate(M,e,t)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.hebrew=g}}),NG=Ye({"node_modules/world-calendars/dist/calendars/islamic.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Islamic",jdEpoch:19484395e-1,daysPerMonth:[30,29,30,29,30,29,30,29,30,29,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Islamic",epochs:["BH","AH"],monthNames:["Muharram","Safar","Rabi' al-awwal","Rabi' al-thani","Jumada al-awwal","Jumada al-thani","Rajab","Sha'aban","Ramadan","Shawwal","Dhu al-Qi'dah","Dhu al-Hijjah"],monthNamesShort:["Muh","Saf","Rab1","Rab2","Jum1","Jum2","Raj","Sha'","Ram","Shaw","DhuQ","DhuH"],dayNames:["Yawm al-ahad","Yawm al-ithnayn","Yawm ath-thulaathaa'","Yawm al-arbi'aa'","Yawm al-kham\u012Bs","Yawm al-jum'a","Yawm as-sabt"],dayNamesShort:["Aha","Ith","Thu","Arb","Kha","Jum","Sab"],dayNamesMin:["Ah","It","Th","Ar","Kh","Ju","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:6,isRTL:!1}},leapYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);return(A.year()*11+14)%30<11},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){return this.leapYear(x)?355:354},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===12&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==5},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x=x<=0?x+1:x,M+Math.ceil(29.5*(A-1))+(x-1)*354+Math.floor((3+11*x)/30)+this.jdEpoch-1},fromJD:function(x){x=Math.floor(x)+.5;var A=Math.floor((30*(x-this.jdEpoch)+10646)/10631);A=A<=0?A-1:A;var M=Math.min(12,Math.ceil((x-29-this.toJD(A,1,1))/29.5)+1),e=x-this.toJD(A,M,1)+1;return this.newDate(A,M,e)}}),X.calendars.islamic=g}}),UG=Ye({"node_modules/world-calendars/dist/calendars/julian.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Julian",jdEpoch:17214235e-1,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Julian",epochs:["BC","AD"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"mm/dd/yyyy",firstDay:0,isRTL:!1}},leapYear:function(M){var A=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),M=A.year()<0?A.year()+1:A.year();return M%4===0},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(4-(e.dayOfWeek()||7),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInMonth:function(x,A){var M=this._validate(x,A,this.minDay,X.local.invalidMonth);return this.daysPerMonth[M.month()-1]+(M.month()===2&&this.leapYear(M.year())?1:0)},weekDay:function(x,A,M){return(this.dayOfWeek(x,A,M)||7)<6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);return x=e.year(),A=e.month(),M=e.day(),x<0&&x++,A<=2&&(x--,A+=12),Math.floor(365.25*(x+4716))+Math.floor(30.6001*(A+1))+M-1524.5},fromJD:function(x){var A=Math.floor(x+.5),M=A+1524,e=Math.floor((M-122.1)/365.25),t=Math.floor(365.25*e),r=Math.floor((M-t)/30.6001),o=r-Math.floor(r<14?1:13),a=e-Math.floor(o>2?4716:4715),i=M-t-Math.floor(30.6001*r);return a<=0&&a--,this.newDate(a,o,i)}}),X.calendars.julian=g}}),jG=Ye({"node_modules/world-calendars/dist/calendars/mayan.js"(){var X=Tp(),H=Wf();function g(M){this.local=this.regionalOptions[M||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.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(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),!1},formatYear:function(M){var e=this._validate(M,this.minMonth,this.minDay,X.local.invalidYear);M=e.year();var t=Math.floor(M/400);M=M%400,M+=M<0?400:0;var r=Math.floor(M/20);return t+"."+r+"."+M%20},forYear:function(M){if(M=M.split("."),M.length<3)throw"Invalid Mayan year";for(var e=0,t=0;t<M.length;t++){var r=parseInt(M[t],10);if(Math.abs(r)>19||t>0&&r<0)throw"Invalid Mayan year";e=e*20+r}return e},monthsInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),18},weekOfYear:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),0},daysInYear:function(M){return this._validate(M,this.minMonth,this.minDay,X.local.invalidYear),360},daysInMonth:function(M,e){return this._validate(M,e,this.minDay,X.local.invalidMonth),20},daysInWeek:function(){return 5},dayOfWeek:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()},weekDay:function(M,e,t){return this._validate(M,e,t,X.local.invalidDate),!0},extraInfo:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate),o=r.toJD(),a=this._toHaab(o),i=this._toTzolkin(o);return{haabMonthName:this.local.haabMonths[a[0]-1],haabMonth:a[0],haabDay:a[1],tzolkinDayName:this.local.tzolkinMonths[i[0]-1],tzolkinDay:i[0],tzolkinTrecena:i[1]}},_toHaab:function(M){M-=this.jdEpoch;var e=x(M+8+17*20,365);return[Math.floor(e/20)+1,x(e,20)]},_toTzolkin:function(M){return M-=this.jdEpoch,[A(M+20,20),A(M+4,13)]},toJD:function(M,e,t){var r=this._validate(M,e,t,X.local.invalidDate);return r.day()+r.month()*20+r.year()*360+this.jdEpoch},fromJD:function(M){M=Math.floor(M)+.5-this.jdEpoch;var e=Math.floor(M/360);M=M%360,M+=M<0?360:0;var t=Math.floor(M/20),r=M%20;return this.newDate(e,t,r)}});function x(M,e){return M-e*Math.floor(M/e)}function A(M,e){return x(M-1,e)+1}X.calendars.mayan=g}}),VG=Ye({"node_modules/world-calendars/dist/calendars/nanakshahi.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar;var x=X.instance("gregorian");H(g.prototype,{name:"Nanakshahi",jdEpoch:22576735e-1,daysPerMonth:[31,31,31,31,31,30,30,30,30,30,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Nanakshahi",epochs:["BN","AN"],monthNames:["Chet","Vaisakh","Jeth","Harh","Sawan","Bhadon","Assu","Katak","Maghar","Poh","Magh","Phagun"],monthNamesShort:["Che","Vai","Jet","Har","Saw","Bha","Ass","Kat","Mgr","Poh","Mgh","Pha"],dayNames:["Somvaar","Mangalvar","Budhvaar","Veervaar","Shukarvaar","Sanicharvaar","Etvaar"],dayNamesShort:["Som","Mangal","Budh","Veer","Shukar","Sanichar","Et"],dayNamesMin:["So","Ma","Bu","Ve","Sh","Sa","Et"],digits:null,dateFormat:"dd-mm-yyyy",firstDay:0,isRTL:!1}},leapYear:function(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear||X.regionalOptions[""].invalidYear);return x.leapYear(M.year()+(M.year()<1?1:0)+1469)},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(1-(t.dayOfWeek()||7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidMonth),r=t.year();r<0&&r++;for(var o=t.day(),a=1;a<t.month();a++)o+=this.daysPerMonth[a-1];return o+x.toJD(r+1468,3,13)},fromJD:function(A){A=Math.floor(A+.5);for(var M=Math.floor((A-(this.jdEpoch-1))/366);A>=this.toJD(M+1,1,1);)M++;for(var e=A-Math.floor(this.toJD(M,1,1)+.5)+1,t=1;e>this.daysInMonth(M,t);)e-=this.daysInMonth(M,t),t++;return this.newDate(M,t,e)}}),X.calendars.nanakshahi=g}}),qG=Ye({"node_modules/world-calendars/dist/calendars/nepali.js"(){var X=Tp(),H=Wf();function g(x){this.local=this.regionalOptions[x||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Nepali",jdEpoch:17007095e-1,daysPerMonth:[31,31,32,32,31,30,30,29,30,29,30,30],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,daysPerYear:365,regionalOptions:{"":{name:"Nepali",epochs:["BBS","ABS"],monthNames:["Baisakh","Jestha","Ashadh","Shrawan","Bhadra","Ashwin","Kartik","Mangsir","Paush","Mangh","Falgun","Chaitra"],monthNamesShort:["Bai","Je","As","Shra","Bha","Ash","Kar","Mang","Pau","Ma","Fal","Chai"],dayNames:["Aaitabaar","Sombaar","Manglbaar","Budhabaar","Bihibaar","Shukrabaar","Shanibaar"],dayNamesShort:["Aaita","Som","Mangl","Budha","Bihi","Shukra","Shani"],dayNamesMin:["Aai","So","Man","Bu","Bi","Shu","Sha"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:1,isRTL:!1}},leapYear:function(x){return this.daysInYear(x)!==this.daysPerYear},weekOfYear:function(x,A,M){var e=this.newDate(x,A,M);return e.add(-e.dayOfWeek(),"d"),Math.floor((e.dayOfYear()-1)/7)+1},daysInYear:function(x){var A=this._validate(x,this.minMonth,this.minDay,X.local.invalidYear);if(x=A.year(),typeof this.NEPALI_CALENDAR_DATA[x]>"u")return this.daysPerYear;for(var M=0,e=this.minMonth;e<=12;e++)M+=this.NEPALI_CALENDAR_DATA[x][e];return M},daysInMonth:function(x,A){return x.year&&(A=x.month(),x=x.year()),this._validate(x,A,this.minDay,X.local.invalidMonth),typeof this.NEPALI_CALENDAR_DATA[x]>"u"?this.daysPerMonth[A-1]:this.NEPALI_CALENDAR_DATA[x][A]},weekDay:function(x,A,M){return this.dayOfWeek(x,A,M)!==6},toJD:function(x,A,M){var e=this._validate(x,A,M,X.local.invalidDate);x=e.year(),A=e.month(),M=e.day();var t=X.instance(),r=0,o=A,a=x;this._createMissingCalendarData(x);var i=x-(o>9||o===9&&M>=this.NEPALI_CALENDAR_DATA[a][0]?56:57);for(A!==9&&(r=M,o--);o!==9;)o<=0&&(o=12,a--),r+=this.NEPALI_CALENDAR_DATA[a][o],o--;return A===9?(r+=M-this.NEPALI_CALENDAR_DATA[a][0],r<0&&(r+=t.daysInYear(i))):r+=this.NEPALI_CALENDAR_DATA[a][9]-this.NEPALI_CALENDAR_DATA[a][0],t.newDate(i,1,1).add(r,"d").toJD()},fromJD:function(x){var A=X.instance(),M=A.fromJD(x),e=M.year(),t=M.dayOfYear(),r=e+56;this._createMissingCalendarData(r);for(var o=9,a=this.NEPALI_CALENDAR_DATA[r][0],i=this.NEPALI_CALENDAR_DATA[r][o]-a+1;t>i;)o++,o>12&&(o=1,r++),i+=this.NEPALI_CALENDAR_DATA[r][o];var n=this.NEPALI_CALENDAR_DATA[r][o]-(i-t);return this.newDate(r,o,n)},_createMissingCalendarData:function(x){var A=this.daysPerMonth.slice(0);A.unshift(17);for(var M=x-1;M<x+2;M++)typeof this.NEPALI_CALENDAR_DATA[M]>"u"&&(this.NEPALI_CALENDAR_DATA[M]=A)},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]}}),X.calendars.nepali=g}}),HG=Ye({"node_modules/world-calendars/dist/calendars/persian.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.prototype,{name:"Persian",jdEpoch:19483205e-1,daysPerMonth:[31,31,31,31,31,31,30,30,30,30,30,29],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Persian",epochs:["BP","AP"],monthNames:["Farvardin","Ordibehesht","Khordad","Tir","Mordad","Shahrivar","Mehr","Aban","Azar","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(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return((M.year()-(M.year()>0?474:473))%2820+474+38)*682%2816<682},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-((t.dayOfWeek()+1)%7),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===12&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate);A=t.year(),M=t.month(),e=t.day();var r=A-(A>=0?474:473),o=474+x(r,2820);return e+(M<=7?(M-1)*31:(M-1)*30+6)+Math.floor((o*682-110)/2816)+(o-1)*365+Math.floor(r/2820)*1029983+this.jdEpoch-1},fromJD:function(A){A=Math.floor(A)+.5;var M=A-this.toJD(475,1,1),e=Math.floor(M/1029983),t=x(M,1029983),r=2820;if(t!==1029982){var o=Math.floor(t/366),a=x(t,366);r=Math.floor((2134*o+2816*a+2815)/1028522)+o+1}var i=r+2820*e+474;i=i<=0?i-1:i;var n=A-this.toJD(i,1,1)+1,s=n<=186?Math.ceil(n/31):Math.ceil((n-6)/30),c=A-this.toJD(i,s,1)+1;return this.newDate(i,s,c)}});function x(A,M){return A-M*Math.floor(A/M)}X.calendars.persian=g,X.calendars.jalali=g}}),GG=Ye({"node_modules/world-calendars/dist/calendars/taiwan.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Taiwan",jdEpoch:24194025e-1,yearsOffset:1911,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Taiwan",epochs:["BROC","ROC"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"yyyy/mm/dd",firstDay:1,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)},_g2tYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)}}),X.calendars.taiwan=x}}),WG=Ye({"node_modules/world-calendars/dist/calendars/thai.js"(){var X=Tp(),H=Wf(),g=X.instance();function x(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}x.prototype=new X.baseCalendar,H(x.prototype,{name:"Thai",jdEpoch:15230985e-1,yearsOffset:543,daysPerMonth:[31,28,31,30,31,30,31,31,30,31,30,31],hasYearZero:!1,minMonth:1,firstMonth:1,minDay:1,regionalOptions:{"":{name:"Thai",epochs:["BBE","BE"],monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],digits:null,dateFormat:"dd/mm/yyyy",firstDay:0,isRTL:!1}},leapYear:function(e){var M=this._validate(e,this.minMonth,this.minDay,X.local.invalidYear),e=this._t2gYear(M.year());return g.leapYear(e)},weekOfYear:function(r,M,e){var t=this._validate(r,this.minMonth,this.minDay,X.local.invalidYear),r=this._t2gYear(t.year());return g.weekOfYear(r,t.month(),t.day())},daysInMonth:function(A,M){var e=this._validate(A,M,this.minDay,X.local.invalidMonth);return this.daysPerMonth[e.month()-1]+(e.month()===2&&this.leapYear(e.year())?1:0)},weekDay:function(A,M,e){return(this.dayOfWeek(A,M,e)||7)<6},toJD:function(r,M,e){var t=this._validate(r,M,e,X.local.invalidDate),r=this._t2gYear(t.year());return g.toJD(r,t.month(),t.day())},fromJD:function(A){var M=g.fromJD(A),e=this._g2tYear(M.year());return this.newDate(e,M.month(),M.day())},_t2gYear:function(A){return A-this.yearsOffset-(A>=1&&A<=this.yearsOffset?1:0)},_g2tYear:function(A){return A+this.yearsOffset+(A>=-this.yearsOffset&&A<=-1?1:0)}}),X.calendars.thai=x}}),ZG=Ye({"node_modules/world-calendars/dist/calendars/ummalqura.js"(){var X=Tp(),H=Wf();function g(A){this.local=this.regionalOptions[A||""]||this.regionalOptions[""]}g.prototype=new X.baseCalendar,H(g.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(A){var M=this._validate(A,this.minMonth,this.minDay,X.local.invalidYear);return this.daysInYear(M.year())===355},weekOfYear:function(A,M,e){var t=this.newDate(A,M,e);return t.add(-t.dayOfWeek(),"d"),Math.floor((t.dayOfYear()-1)/7)+1},daysInYear:function(A){for(var M=0,e=1;e<=12;e++)M+=this.daysInMonth(A,e);return M},daysInMonth:function(A,M){for(var e=this._validate(A,M,this.minDay,X.local.invalidMonth),t=e.toJD()-24e5+.5,r=0,o=0;o<x.length;o++){if(x[o]>t)return x[r]-x[r-1];r++}return 30},weekDay:function(A,M,e){return this.dayOfWeek(A,M,e)!==5},toJD:function(A,M,e){var t=this._validate(A,M,e,X.local.invalidDate),r=12*(t.year()-1)+t.month()-15292,o=t.day()+x[r-1]-1;return o+24e5-.5},fromJD:function(A){for(var M=A-24e5+.5,e=0,t=0;t<x.length&&!(x[t]>M);t++)e++;var r=e+15292,o=Math.floor((r-1)/12),a=o+1,i=r-12*o,n=M-x[e-1]+1;return this.newDate(a,i,n)},isValid:function(A,M,e){var t=X.baseCalendar.prototype.isValid.apply(this,arguments);return t&&(A=A.year!=null?A.year:A,t=A>=1276&&A<=1500),t},_validate:function(A,M,e,t){var r=X.baseCalendar.prototype._validate.apply(this,arguments);if(r.year<1276||r.year>1500)throw t.replace(/\{0\}/,this.local.name);return r}}),X.calendars.ummalqura=g;var x=[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]}}),XG=Ye({"src/components/calendars/calendars.js"(X,H){"use strict";H.exports=Tp(),RG(),DG(),zG(),FG(),OG(),BG(),NG(),UG(),jG(),VG(),qG(),HG(),GG(),WG(),ZG()}}),YG=Ye({"src/components/calendars/index.js"(X,H){"use strict";var g=XG(),x=ta(),A=ks(),M=A.EPOCHJD,e=A.ONEDAY,t={valType:"enumerated",values:x.sortObjectKeys(g.calendars),editType:"calc",dflt:"gregorian"},r=function(m,b,d,u){var y={};return y[d]=t,x.coerce(m,b,y,d,u)},o=function(m,b,d,u){for(var y=0;y<d.length;y++)r(m,b,d[y]+"calendar",u.calendar)},a={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"},i={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"},n={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"]},s="##",c={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:s,w:s,c:{0:"D M d %X yyyy","-":"D M d %X yyyy"},x:{0:"mm/dd/yyyy","-":"mm/dd/yyyy"}};function h(m,b,d){for(var u=Math.floor((b+.05)/e)+M,y=p(d).fromJD(u),f=0,P,L,z,F,B;(f=m.indexOf("%",f))!==-1;)P=m.charAt(f+1),P==="0"||P==="-"||P==="_"?(z=3,L=m.charAt(f+2),P==="_"&&(P="-")):(L=P,P="0",z=2),F=c[L],F?(F===s?B=s:B=y.formatDate(F[P]),m=m.substr(0,f)+B+m.substr(f+z),f+=B.length):f+=z;return m}var v={};function p(m){var b=v[m];return b||(b=v[m]=g.instance(m),b)}function T(m){return x.extendFlat({},t,{description:m})}function l(m){return"Sets the calendar system to use with `"+m+"` date data."}var _={xcalendar:T(l("x"))},w=x.extendFlat({},_,{ycalendar:T(l("y"))}),S=x.extendFlat({},w,{zcalendar:T(l("z"))}),E=T(["Sets the calendar system to use for `range` and `tick0`","if this is a date axis. This does not set the calendar for","interpreting data on this axis, that's specified in the trace","or via the global `layout.calendar`"].join(" "));H.exports={moduleType:"component",name:"calendars",schema:{traces:{scatter:w,bar:w,box:w,heatmap:w,contour:w,histogram:w,histogram2d:w,histogram2dcontour:w,scatter3d:S,surface:S,mesh3d:S,scattergl:w,ohlc:_,candlestick:_},layout:{calendar:T(["Sets the default calendar system to use for interpreting and","displaying dates throughout the plot."].join(" "))},subplots:{xaxis:{calendar:E},yaxis:{calendar:E},scene:{xaxis:{calendar:E},yaxis:{calendar:E},zaxis:{calendar:E}},polar:{radialaxis:{calendar:E}}}},layoutAttributes:t,handleDefaults:r,handleTraceDefaults:o,CANONICAL_SUNDAY:i,CANONICAL_TICK:a,DFLTRANGE:n,getCal:p,worldCalFmt:h}}}),KG=Ye({"lib/calendars.js"(X,H){"use strict";H.exports=YG()}}),JG=Ye({"lib/index.js"(X,H){var g=qB();g.register([ZB(),KB(),e7(),n7(),u7(),p7(),m7(),E7(),F7(),Z7(),a4(),c9(),m9(),rN(),fN(),_N(),MN(),qN(),ZN(),YN(),QN(),iU(),uU(),pU(),kU(),PU(),hV(),EV(),UV(),WV(),rq(),oq(),dq(),Eq(),Pq(),Nq(),eH(),oH(),pH(),FH(),HH(),YH(),eG(),iG(),uG(),gG(),TG(),IG(),KG()]),H.exports=g}});return JG()})();return window.Plotly=le,le})});var GW=typeof global=="object"&&global&&global.Object===Object&&global,yb=GW;var WW=typeof self=="object"&&self&&self.Object===Object&&self,ZW=yb||WW||Function("return this")(),Kl=ZW;var XW=Kl.Symbol,yf=XW;var VC=Object.prototype,YW=VC.hasOwnProperty,KW=VC.toString,t_=yf?yf.toStringTag:void 0;function JW(le){var me=YW.call(le,t_),Xe=le[t_];try{le[t_]=void 0;var Mt=!0}catch{}var rr=KW.call(le);return Mt&&(me?le[t_]=Xe:delete le[t_]),rr}var qC=JW;var $W=Object.prototype,QW=$W.toString;function eZ(le){return QW.call(le)}var HC=eZ;var tZ="[object Null]",rZ="[object Undefined]",GC=yf?yf.toStringTag:void 0;function aZ(le){return le==null?le===void 0?rZ:tZ:GC&&GC in Object(le)?qC(le):HC(le)}var ac=aZ;function iZ(le){return le!=null&&typeof le=="object"}var ul=iZ;var nZ="[object Symbol]";function oZ(le){return typeof le=="symbol"||ul(le)&&ac(le)==nZ}var _f=oZ;var sZ=NaN;function lZ(le){return typeof le=="number"?le:_f(le)?sZ:+le}var bA=lZ;function uZ(le,me){for(var Xe=-1,Mt=le==null?0:le.length,rr=Array(Mt);++Xe<Mt;)rr[Xe]=me(le[Xe],Xe,le);return rr}var nl=uZ;var cZ=Array.isArray,mo=cZ;var fZ=1/0,WC=yf?yf.prototype:void 0,ZC=WC?WC.toString:void 0;function XC(le){if(typeof le=="string")return le;if(mo(le))return nl(le,XC)+"";if(_f(le))return ZC?ZC.call(le):"";var me=le+"";return me=="0"&&1/le==-fZ?"-0":me}var Vf=XC;function hZ(le,me){return function(Xe,Mt){var rr;if(Xe===void 0&&Mt===void 0)return me;if(Xe!==void 0&&(rr=Xe),Mt!==void 0){if(rr===void 0)return Mt;typeof Xe=="string"||typeof Mt=="string"?(Xe=Vf(Xe),Mt=Vf(Mt)):(Xe=bA(Xe),Mt=bA(Mt)),rr=le(Xe,Mt)}return rr}}var bm=hZ;var pZ=bm(function(le,me){return le+me},0),YC=pZ;var dZ=/\s/;function vZ(le){for(var me=le.length;me--&&dZ.test(le.charAt(me)););return me}var _b=vZ;var mZ=/^\s+/;function gZ(le){return le&&le.slice(0,_b(le)+1).replace(mZ,"")}var xb=gZ;function yZ(le){var me=typeof le;return le!=null&&(me=="object"||me=="function")}var ll=yZ;var KC=NaN,_Z=/^[-+]0x[0-9a-f]+$/i,xZ=/^0b[01]+$/i,bZ=/^0o[0-7]+$/i,wZ=parseInt;function TZ(le){if(typeof le=="number")return le;if(_f(le))return KC;if(ll(le)){var me=typeof le.valueOf=="function"?le.valueOf():le;le=ll(me)?me+"":me}if(typeof le!="string")return le===0?le:+le;le=xb(le);var Xe=xZ.test(le);return Xe||bZ.test(le)?wZ(le.slice(2),Xe?2:8):_Z.test(le)?KC:+le}var mh=TZ;var JC=1/0,AZ=17976931348623157e292;function SZ(le){if(!le)return le===0?le:0;if(le=mh(le),le===JC||le===-JC){var me=le<0?-1:1;return me*AZ}return le===le?le:0}var sd=SZ;function MZ(le){var me=sd(le),Xe=me%1;return me===me?Xe?me-Xe:me:0}var Eo=MZ;var EZ="Expected a function";function kZ(le,me){if(typeof me!="function")throw new TypeError(EZ);return le=Eo(le),function(){if(--le<1)return me.apply(this,arguments)}}var $C=kZ;function CZ(le){return le}var ic=CZ;var LZ="[object AsyncFunction]",PZ="[object Function]",IZ="[object GeneratorFunction]",RZ="[object Proxy]";function DZ(le){if(!ll(le))return!1;var me=ac(le);return me==PZ||me==IZ||me==LZ||me==RZ}var tp=DZ;var zZ=Kl["__core-js_shared__"],W0=zZ;var QC=function(){var le=/[^.]+$/.exec(W0&&W0.keys&&W0.keys.IE_PROTO||"");return le?"Symbol(src)_1."+le:""}();function FZ(le){return!!QC&&QC in le}var eL=FZ;var OZ=Function.prototype,BZ=OZ.toString;function NZ(le){if(le!=null){try{return BZ.call(le)}catch{}try{return le+""}catch{}}return""}var jv=NZ;var UZ=/[\\^$.*+?()[\]{}|]/g,jZ=/^\[object .+?Constructor\]$/,VZ=Function.prototype,qZ=Object.prototype,HZ=VZ.toString,GZ=qZ.hasOwnProperty,WZ=RegExp("^"+HZ.call(GZ).replace(UZ,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function ZZ(le){if(!ll(le)||eL(le))return!1;var me=tp(le)?WZ:jZ;return me.test(jv(le))}var bb=ZZ;function XZ(le,me){return le?.[me]}var tL=XZ;function YZ(le,me){var Xe=tL(le,me);return bb(Xe)?Xe:void 0}var ld=YZ;var KZ=ld(Kl,"WeakMap"),Ug=KZ;var JZ=Ug&&new Ug,Z0=JZ;var $Z=Z0?function(le,me){return Z0.set(le,me),le}:ic,wb=$Z;var rL=Object.create,QZ=function(){function le(){}return function(me){if(!ll(me))return{};if(rL)return rL(me);le.prototype=me;var Xe=new le;return le.prototype=void 0,Xe}}(),Td=QZ;function eX(le){return function(){var me=arguments;switch(me.length){case 0:return new le;case 1:return new le(me[0]);case 2:return new le(me[0],me[1]);case 3:return new le(me[0],me[1],me[2]);case 4:return new le(me[0],me[1],me[2],me[3]);case 5:return new le(me[0],me[1],me[2],me[3],me[4]);case 6:return new le(me[0],me[1],me[2],me[3],me[4],me[5]);case 7:return new le(me[0],me[1],me[2],me[3],me[4],me[5],me[6])}var Xe=Td(le.prototype),Mt=le.apply(Xe,me);return ll(Mt)?Mt:Xe}}var Vv=eX;var tX=1;function rX(le,me,Xe){var Mt=me&tX,rr=Vv(le);function Nr(){var xa=this&&this!==Kl&&this instanceof Nr?rr:le;return xa.apply(Mt?Xe:this,arguments)}return Nr}var aL=rX;function aX(le,me,Xe){switch(Xe.length){case 0:return le.call(me);case 1:return le.call(me,Xe[0]);case 2:return le.call(me,Xe[0],Xe[1]);case 3:return le.call(me,Xe[0],Xe[1],Xe[2])}return le.apply(me,Xe)}var sf=aX;var iX=Math.max;function nX(le,me,Xe,Mt){for(var rr=-1,Nr=le.length,xa=Xe.length,Ha=-1,Za=me.length,un=iX(Nr-xa,0),Ji=Array(Za+un),gn=!Mt;++Ha<Za;)Ji[Ha]=me[Ha];for(;++rr<xa;)(gn||rr<Nr)&&(Ji[Xe[rr]]=le[rr]);for(;un--;)Ji[Ha++]=le[rr++];return Ji}var Tb=nX;var oX=Math.max;function sX(le,me,Xe,Mt){for(var rr=-1,Nr=le.length,xa=-1,Ha=Xe.length,Za=-1,un=me.length,Ji=oX(Nr-Ha,0),gn=Array(Ji+un),wo=!Mt;++rr<Ji;)gn[rr]=le[rr];for(var ps=rr;++Za<un;)gn[ps+Za]=me[Za];for(;++xa<Ha;)(wo||rr<Nr)&&(gn[ps+Xe[xa]]=le[rr++]);return gn}var Ab=sX;function lX(le,me){for(var Xe=le.length,Mt=0;Xe--;)le[Xe]===me&&++Mt;return Mt}var iL=lX;function uX(){}var wm=uX;var cX=4294967295;function Sb(le){this.__wrapped__=le,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=cX,this.__views__=[]}Sb.prototype=Td(wm.prototype);Sb.prototype.constructor=Sb;var dl=Sb;function fX(){}var X0=fX;var hX=Z0?function(le){return Z0.get(le)}:X0,Y0=hX;var pX={},Tm=pX;var dX=Object.prototype,vX=dX.hasOwnProperty;function mX(le){for(var me=le.name+"",Xe=Tm[me],Mt=vX.call(Tm,me)?Xe.length:0;Mt--;){var rr=Xe[Mt],Nr=rr.func;if(Nr==null||Nr==le)return rr.name}return me}var K0=mX;function Mb(le,me){this.__wrapped__=le,this.__actions__=[],this.__chain__=!!me,this.__index__=0,this.__values__=void 0}Mb.prototype=Td(wm.prototype);Mb.prototype.constructor=Mb;var Ip=Mb;function gX(le,me){var Xe=-1,Mt=le.length;for(me||(me=Array(Mt));++Xe<Mt;)me[Xe]=le[Xe];return me}var Wc=gX;function yX(le){if(le instanceof dl)return le.clone();var me=new Ip(le.__wrapped__,le.__chain__);return me.__actions__=Wc(le.__actions__),me.__index__=le.__index__,me.__values__=le.__values__,me}var Eb=yX;var _X=Object.prototype,xX=_X.hasOwnProperty;function kb(le){if(ul(le)&&!mo(le)&&!(le instanceof dl)){if(le instanceof Ip)return le;if(xX.call(le,"__wrapped__"))return Eb(le)}return new Ip(le)}kb.prototype=wm.prototype;kb.prototype.constructor=kb;var ua=kb;function bX(le){var me=K0(le),Xe=ua[me];if(typeof Xe!="function"||!(me in dl.prototype))return!1;if(le===Xe)return!0;var Mt=Y0(Xe);return!!Mt&&le===Mt[0]}var r_=bX;var wX=800,TX=16,AX=Date.now;function SX(le){var me=0,Xe=0;return function(){var Mt=AX(),rr=TX-(Mt-Xe);if(Xe=Mt,rr>0){if(++me>=wX)return arguments[0]}else me=0;return le.apply(void 0,arguments)}}var Cb=SX;var MX=Cb(wb),Lb=MX;var EX=/\{\n\/\* \[wrapped with (.+)\] \*/,kX=/,? & /;function CX(le){var me=le.match(EX);return me?me[1].split(kX):[]}var nL=CX;var LX=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;function PX(le,me){var Xe=me.length;if(!Xe)return le;var Mt=Xe-1;return me[Mt]=(Xe>1?"& ":"")+me[Mt],me=me.join(Xe>2?", ":" "),le.replace(LX,`{
+/* [wrapped with `+me+`] */
+`)}var oL=PX;function IX(le){return function(){return le}}var J0=IX;var RX=function(){try{var le=ld(Object,"defineProperty");return le({},"",{}),le}catch{}}(),$0=RX;var DX=$0?function(le,me){return $0(le,"toString",{configurable:!0,enumerable:!1,value:J0(me),writable:!0})}:ic,sL=DX;var zX=Cb(sL),Q0=zX;function FX(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt&&me(le[Xe],Xe,le)!==!1;);return le}var zh=FX;function OX(le,me,Xe,Mt){for(var rr=le.length,Nr=Xe+(Mt?1:-1);Mt?Nr--:++Nr<rr;)if(me(le[Nr],Nr,le))return Nr;return-1}var Am=OX;function BX(le){return le!==le}var Pb=BX;function NX(le,me,Xe){for(var Mt=Xe-1,rr=le.length;++Mt<rr;)if(le[Mt]===me)return Mt;return-1}var lL=NX;function UX(le,me,Xe){return me===me?lL(le,me,Xe):Am(le,Pb,Xe)}var Ad=UX;function jX(le,me){var Xe=le==null?0:le.length;return!!Xe&&Ad(le,me,0)>-1}var Sm=jX;var VX=1,qX=2,HX=8,GX=16,WX=32,ZX=64,XX=128,YX=256,KX=512,JX=[["ary",XX],["bind",VX],["bindKey",qX],["curry",HX],["curryRight",GX],["flip",KX],["partial",WX],["partialRight",ZX],["rearg",YX]];function $X(le,me){return zh(JX,function(Xe){var Mt="_."+Xe[0];me&Xe[1]&&!Sm(le,Mt)&&le.push(Mt)}),le.sort()}var uL=$X;function QX(le,me,Xe){var Mt=me+"";return Q0(le,oL(Mt,uL(nL(Mt),Xe)))}var Ib=QX;var eY=1,tY=2,rY=4,aY=8,cL=32,fL=64;function iY(le,me,Xe,Mt,rr,Nr,xa,Ha,Za,un){var Ji=me&aY,gn=Ji?xa:void 0,wo=Ji?void 0:xa,ps=Ji?Nr:void 0,Qn=Ji?void 0:Nr;me|=Ji?cL:fL,me&=~(Ji?fL:cL),me&rY||(me&=~(eY|tY));var Ye=[le,me,rr,ps,gn,Qn,wo,Ha,Za,un],Ps=Xe.apply(void 0,Ye);return r_(le)&&Lb(Ps,Ye),Ps.placeholder=Mt,Ib(Ps,le,me)}var Rb=iY;function nY(le){var me=le;return me.placeholder}var Sd=nY;var oY=9007199254740991,sY=/^(?:0|[1-9]\d*)$/;function lY(le,me){var Xe=typeof le;return me=me??oY,!!me&&(Xe=="number"||Xe!="symbol"&&sY.test(le))&&le>-1&&le%1==0&&le<me}var rp=lY;var uY=Math.min;function cY(le,me){for(var Xe=le.length,Mt=uY(me.length,Xe),rr=Wc(le);Mt--;){var Nr=me[Mt];le[Mt]=rp(Nr,Xe)?rr[Nr]:void 0}return le}var hL=cY;var pL="__lodash_placeholder__";function fY(le,me){for(var Xe=-1,Mt=le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe];(xa===me||xa===pL)&&(le[Xe]=pL,Nr[rr++]=Xe)}return Nr}var Yp=fY;var hY=1,pY=2,dY=8,vY=16,mY=128,gY=512;function dL(le,me,Xe,Mt,rr,Nr,xa,Ha,Za,un){var Ji=me&mY,gn=me&hY,wo=me&pY,ps=me&(dY|vY),Qn=me&gY,Ye=wo?void 0:Vv(le);function Ps(){for(var Ml=arguments.length,Ul=Array(Ml),Hf=Ml;Hf--;)Ul[Hf]=arguments[Hf];if(ps)var xh=Sd(Ps),Bp=iL(Ul,xh);if(Mt&&(Ul=Tb(Ul,Mt,rr,ps)),Nr&&(Ul=Ab(Ul,Nr,xa,ps)),Ml-=Bp,ps&&Ml<un){var _n=Yp(Ul,xh);return Rb(le,me,dL,Ps.placeholder,Xe,Ul,_n,Ha,Za,un-Ml)}var $p=gn?Xe:this,Np=wo?$p[le]:le;return Ml=Ul.length,Ha?Ul=hL(Ul,Ha):Qn&&Ml>1&&Ul.reverse(),Ji&&Za<Ml&&(Ul.length=Za),this&&this!==Kl&&this instanceof Ps&&(Np=Ye||Vv(Np)),Np.apply($p,Ul)}return Ps}var ey=dL;function yY(le,me,Xe){var Mt=Vv(le);function rr(){for(var Nr=arguments.length,xa=Array(Nr),Ha=Nr,Za=Sd(rr);Ha--;)xa[Ha]=arguments[Ha];var un=Nr<3&&xa[0]!==Za&&xa[Nr-1]!==Za?[]:Yp(xa,Za);if(Nr-=un.length,Nr<Xe)return Rb(le,me,ey,rr.placeholder,void 0,xa,un,void 0,void 0,Xe-Nr);var Ji=this&&this!==Kl&&this instanceof rr?Mt:le;return sf(Ji,this,xa)}return rr}var vL=yY;var _Y=1;function xY(le,me,Xe,Mt){var rr=me&_Y,Nr=Vv(le);function xa(){for(var Ha=-1,Za=arguments.length,un=-1,Ji=Mt.length,gn=Array(Ji+Za),wo=this&&this!==Kl&&this instanceof xa?Nr:le;++un<Ji;)gn[un]=Mt[un];for(;Za--;)gn[un++]=arguments[++Ha];return sf(wo,rr?Xe:this,gn)}return xa}var mL=xY;var gL="__lodash_placeholder__",wA=1,bY=2,wY=4,yL=8,a_=128,_L=256,TY=Math.min;function AY(le,me){var Xe=le[1],Mt=me[1],rr=Xe|Mt,Nr=rr<(wA|bY|a_),xa=Mt==a_&&Xe==yL||Mt==a_&&Xe==_L&&le[7].length<=me[8]||Mt==(a_|_L)&&me[7].length<=me[8]&&Xe==yL;if(!(Nr||xa))return le;Mt&wA&&(le[2]=me[2],rr|=Xe&wA?0:wY);var Ha=me[3];if(Ha){var Za=le[3];le[3]=Za?Tb(Za,Ha,me[4]):Ha,le[4]=Za?Yp(le[3],gL):me[4]}return Ha=me[5],Ha&&(Za=le[5],le[5]=Za?Ab(Za,Ha,me[6]):Ha,le[6]=Za?Yp(le[5],gL):me[6]),Ha=me[7],Ha&&(le[7]=Ha),Mt&a_&&(le[8]=le[8]==null?me[8]:TY(le[8],me[8])),le[9]==null&&(le[9]=me[9]),le[0]=me[0],le[1]=rr,le}var xL=AY;var SY="Expected a function",bL=1,MY=2,TA=8,AA=16,SA=32,wL=64,TL=Math.max;function EY(le,me,Xe,Mt,rr,Nr,xa,Ha){var Za=me&MY;if(!Za&&typeof le!="function")throw new TypeError(SY);var un=Mt?Mt.length:0;if(un||(me&=~(SA|wL),Mt=rr=void 0),xa=xa===void 0?xa:TL(Eo(xa),0),Ha=Ha===void 0?Ha:Eo(Ha),un-=rr?rr.length:0,me&wL){var Ji=Mt,gn=rr;Mt=rr=void 0}var wo=Za?void 0:Y0(le),ps=[le,me,Xe,Mt,rr,Ji,gn,Nr,xa,Ha];if(wo&&xL(ps,wo),le=ps[0],me=ps[1],Xe=ps[2],Mt=ps[3],rr=ps[4],Ha=ps[9]=ps[9]===void 0?Za?0:le.length:TL(ps[9]-un,0),!Ha&&me&(TA|AA)&&(me&=~(TA|AA)),!me||me==bL)var Qn=aL(le,me,Xe);else me==TA||me==AA?Qn=vL(le,me,Ha):(me==SA||me==(bL|SA))&&!rr.length?Qn=mL(le,me,Xe,Mt):Qn=ey.apply(void 0,ps);var Ye=wo?wb:Lb;return Ib(Ye(Qn,ps),le,me)}var ap=EY;var kY=128;function CY(le,me,Xe){return me=Xe?void 0:me,me=le&&me==null?le.length:me,ap(le,kY,void 0,void 0,void 0,void 0,me)}var Db=CY;function LY(le,me,Xe){me=="__proto__"&&$0?$0(le,me,{configurable:!0,enumerable:!0,value:Xe,writable:!0}):le[me]=Xe}var ip=LY;function PY(le,me){return le===me||le!==le&&me!==me}var qf=PY;var IY=Object.prototype,RY=IY.hasOwnProperty;function DY(le,me,Xe){var Mt=le[me];(!(RY.call(le,me)&&qf(Mt,Xe))||Xe===void 0&&!(me in le))&&ip(le,me,Xe)}var vv=DY;function zY(le,me,Xe,Mt){var rr=!Xe;Xe||(Xe={});for(var Nr=-1,xa=me.length;++Nr<xa;){var Ha=me[Nr],Za=Mt?Mt(Xe[Ha],le[Ha],Ha,Xe,le):void 0;Za===void 0&&(Za=le[Ha]),rr?ip(Xe,Ha,Za):vv(Xe,Ha,Za)}return Xe}var gh=zY;var AL=Math.max;function FY(le,me,Xe){return me=AL(me===void 0?le.length-1:me,0),function(){for(var Mt=arguments,rr=-1,Nr=AL(Mt.length-me,0),xa=Array(Nr);++rr<Nr;)xa[rr]=Mt[me+rr];rr=-1;for(var Ha=Array(me+1);++rr<me;)Ha[rr]=Mt[rr];return Ha[me]=Xe(xa),sf(le,this,Ha)}}var zb=FY;function OY(le,me){return Q0(zb(le,me,ic),le+"")}var ko=OY;var BY=9007199254740991;function NY(le){return typeof le=="number"&&le>-1&&le%1==0&&le<=BY}var Mm=NY;function UY(le){return le!=null&&Mm(le.length)&&!tp(le)}var gc=UY;function jY(le,me,Xe){if(!ll(Xe))return!1;var Mt=typeof me;return(Mt=="number"?gc(Xe)&&rp(me,Xe.length):Mt=="string"&&me in Xe)?qf(Xe[me],le):!1}var nc=jY;function VY(le){return ko(function(me,Xe){var Mt=-1,rr=Xe.length,Nr=rr>1?Xe[rr-1]:void 0,xa=rr>2?Xe[2]:void 0;for(Nr=le.length>3&&typeof Nr=="function"?(rr--,Nr):void 0,xa&&nc(Xe[0],Xe[1],xa)&&(Nr=rr<3?void 0:Nr,rr=1),me=Object(me);++Mt<rr;){var Ha=Xe[Mt];Ha&&le(me,Ha,Mt,Nr)}return me})}var Md=VY;var qY=Object.prototype;function HY(le){var me=le&&le.constructor,Xe=typeof me=="function"&&me.prototype||qY;return le===Xe}var mv=HY;function GY(le,me){for(var Xe=-1,Mt=Array(le);++Xe<le;)Mt[Xe]=me(Xe);return Mt}var ty=GY;var WY="[object Arguments]";function ZY(le){return ul(le)&&ac(le)==WY}var MA=ZY;var SL=Object.prototype,XY=SL.hasOwnProperty,YY=SL.propertyIsEnumerable,KY=MA(function(){return arguments}())?MA:function(le){return ul(le)&&XY.call(le,"callee")&&!YY.call(le,"callee")},dd=KY;function JY(){return!1}var ry=JY;var kL=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ML=kL&&typeof module=="object"&&module&&!module.nodeType&&module,$Y=ML&&ML.exports===kL,EL=$Y?Kl.Buffer:void 0,QY=EL?EL.isBuffer:void 0,eK=QY||ry,Kp=eK;var tK="[object Arguments]",rK="[object Array]",aK="[object Boolean]",iK="[object Date]",nK="[object Error]",oK="[object Function]",sK="[object Map]",lK="[object Number]",uK="[object Object]",cK="[object RegExp]",fK="[object Set]",hK="[object String]",pK="[object WeakMap]",dK="[object ArrayBuffer]",vK="[object DataView]",mK="[object Float32Array]",gK="[object Float64Array]",yK="[object Int8Array]",_K="[object Int16Array]",xK="[object Int32Array]",bK="[object Uint8Array]",wK="[object Uint8ClampedArray]",TK="[object Uint16Array]",AK="[object Uint32Array]",lf={};lf[mK]=lf[gK]=lf[yK]=lf[_K]=lf[xK]=lf[bK]=lf[wK]=lf[TK]=lf[AK]=!0;lf[tK]=lf[rK]=lf[dK]=lf[aK]=lf[vK]=lf[iK]=lf[nK]=lf[oK]=lf[sK]=lf[lK]=lf[uK]=lf[cK]=lf[fK]=lf[hK]=lf[pK]=!1;function SK(le){return ul(le)&&Mm(le.length)&&!!lf[ac(le)]}var CL=SK;function MK(le){return function(me){return le(me)}}var uf=MK;var LL=typeof exports=="object"&&exports&&!exports.nodeType&&exports,i_=LL&&typeof module=="object"&&module&&!module.nodeType&&module,EK=i_&&i_.exports===LL,EA=EK&&yb.process,kK=function(){try{var le=i_&&i_.require&&i_.require("util").types;return le||EA&&EA.binding&&EA.binding("util")}catch{}}(),np=kK;var PL=np&&np.isTypedArray,CK=PL?uf(PL):CL,Ed=CK;var LK=Object.prototype,PK=LK.hasOwnProperty;function IK(le,me){var Xe=mo(le),Mt=!Xe&&dd(le),rr=!Xe&&!Mt&&Kp(le),Nr=!Xe&&!Mt&&!rr&&Ed(le),xa=Xe||Mt||rr||Nr,Ha=xa?ty(le.length,String):[],Za=Ha.length;for(var un in le)(me||PK.call(le,un))&&!(xa&&(un=="length"||rr&&(un=="offset"||un=="parent")||Nr&&(un=="buffer"||un=="byteLength"||un=="byteOffset")||rp(un,Za)))&&Ha.push(un);return Ha}var Fb=IK;function RK(le,me){return function(Xe){return le(me(Xe))}}var Ob=RK;var DK=Ob(Object.keys,Object),IL=DK;var zK=Object.prototype,FK=zK.hasOwnProperty;function OK(le){if(!mv(le))return IL(le);var me=[];for(var Xe in Object(le))FK.call(le,Xe)&&Xe!="constructor"&&me.push(Xe);return me}var ay=OK;function BK(le){return gc(le)?Fb(le):ay(le)}var Gl=BK;var NK=Object.prototype,UK=NK.hasOwnProperty,jK=Md(function(le,me){if(mv(me)||gc(me)){gh(me,Gl(me),le);return}for(var Xe in me)UK.call(me,Xe)&&vv(le,Xe,me[Xe])}),RL=jK;function VK(le){var me=[];if(le!=null)for(var Xe in Object(le))me.push(Xe);return me}var DL=VK;var qK=Object.prototype,HK=qK.hasOwnProperty;function GK(le){if(!ll(le))return DL(le);var me=mv(le),Xe=[];for(var Mt in le)Mt=="constructor"&&(me||!HK.call(le,Mt))||Xe.push(Mt);return Xe}var zL=GK;function WK(le){return gc(le)?Fb(le,!0):zL(le)}var yc=WK;var ZK=Md(function(le,me){gh(me,yc(me),le)}),n_=ZK;var XK=Md(function(le,me,Xe,Mt){gh(me,yc(me),le,Mt)}),Em=XK;var YK=Md(function(le,me,Xe,Mt){gh(me,Gl(me),le,Mt)}),FL=YK;var KK=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,JK=/^\w*$/;function $K(le,me){if(mo(le))return!1;var Xe=typeof le;return Xe=="number"||Xe=="symbol"||Xe=="boolean"||le==null||_f(le)?!0:JK.test(le)||!KK.test(le)||me!=null&&le in Object(me)}var iy=$K;var QK=ld(Object,"create"),qv=QK;function eJ(){this.__data__=qv?qv(null):{},this.size=0}var OL=eJ;function tJ(le){var me=this.has(le)&&delete this.__data__[le];return this.size-=me?1:0,me}var BL=tJ;var rJ="__lodash_hash_undefined__",aJ=Object.prototype,iJ=aJ.hasOwnProperty;function nJ(le){var me=this.__data__;if(qv){var Xe=me[le];return Xe===rJ?void 0:Xe}return iJ.call(me,le)?me[le]:void 0}var NL=nJ;var oJ=Object.prototype,sJ=oJ.hasOwnProperty;function lJ(le){var me=this.__data__;return qv?me[le]!==void 0:sJ.call(me,le)}var UL=lJ;var uJ="__lodash_hash_undefined__";function cJ(le,me){var Xe=this.__data__;return this.size+=this.has(le)?0:1,Xe[le]=qv&&me===void 0?uJ:me,this}var jL=cJ;function ny(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}ny.prototype.clear=OL;ny.prototype.delete=BL;ny.prototype.get=NL;ny.prototype.has=UL;ny.prototype.set=jL;var kA=ny;function fJ(){this.__data__=[],this.size=0}var VL=fJ;function hJ(le,me){for(var Xe=le.length;Xe--;)if(qf(le[Xe][0],me))return Xe;return-1}var km=hJ;var pJ=Array.prototype,dJ=pJ.splice;function vJ(le){var me=this.__data__,Xe=km(me,le);if(Xe<0)return!1;var Mt=me.length-1;return Xe==Mt?me.pop():dJ.call(me,Xe,1),--this.size,!0}var qL=vJ;function mJ(le){var me=this.__data__,Xe=km(me,le);return Xe<0?void 0:me[Xe][1]}var HL=mJ;function gJ(le){return km(this.__data__,le)>-1}var GL=gJ;function yJ(le,me){var Xe=this.__data__,Mt=km(Xe,le);return Mt<0?(++this.size,Xe.push([le,me])):Xe[Mt][1]=me,this}var WL=yJ;function oy(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}oy.prototype.clear=VL;oy.prototype.delete=qL;oy.prototype.get=HL;oy.prototype.has=GL;oy.prototype.set=WL;var Cm=oy;var _J=ld(Kl,"Map"),Lm=_J;function xJ(){this.size=0,this.__data__={hash:new kA,map:new(Lm||Cm),string:new kA}}var ZL=xJ;function bJ(le){var me=typeof le;return me=="string"||me=="number"||me=="symbol"||me=="boolean"?le!=="__proto__":le===null}var XL=bJ;function wJ(le,me){var Xe=le.__data__;return XL(me)?Xe[typeof me=="string"?"string":"hash"]:Xe.map}var Pm=wJ;function TJ(le){var me=Pm(this,le).delete(le);return this.size-=me?1:0,me}var YL=TJ;function AJ(le){return Pm(this,le).get(le)}var KL=AJ;function SJ(le){return Pm(this,le).has(le)}var JL=SJ;function MJ(le,me){var Xe=Pm(this,le),Mt=Xe.size;return Xe.set(le,me),this.size+=Xe.size==Mt?0:1,this}var $L=MJ;function sy(le){var me=-1,Xe=le==null?0:le.length;for(this.clear();++me<Xe;){var Mt=le[me];this.set(Mt[0],Mt[1])}}sy.prototype.clear=ZL;sy.prototype.delete=YL;sy.prototype.get=KL;sy.prototype.has=JL;sy.prototype.set=$L;var jg=sy;var EJ="Expected a function";function CA(le,me){if(typeof le!="function"||me!=null&&typeof me!="function")throw new TypeError(EJ);var Xe=function(){var Mt=arguments,rr=me?me.apply(this,Mt):Mt[0],Nr=Xe.cache;if(Nr.has(rr))return Nr.get(rr);var xa=le.apply(this,Mt);return Xe.cache=Nr.set(rr,xa)||Nr,xa};return Xe.cache=new(CA.Cache||jg),Xe}CA.Cache=jg;var Bb=CA;var kJ=500;function CJ(le){var me=Bb(le,function(Mt){return Xe.size===kJ&&Xe.clear(),Mt}),Xe=me.cache;return me}var QL=CJ;var LJ=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,PJ=/\\(\\)?/g,IJ=QL(function(le){var me=[];return le.charCodeAt(0)===46&&me.push(""),le.replace(LJ,function(Xe,Mt,rr,Nr){me.push(rr?Nr.replace(PJ,"$1"):Mt||Xe)}),me}),Nb=IJ;function RJ(le){return le==null?"":Vf(le)}var ws=RJ;function DJ(le,me){return mo(le)?le:iy(le,me)?[le]:Nb(ws(le))}var Rp=DJ;var zJ=1/0;function FJ(le){if(typeof le=="string"||_f(le))return le;var me=le+"";return me=="0"&&1/le==-zJ?"-0":me}var yh=FJ;function OJ(le,me){me=Rp(me,le);for(var Xe=0,Mt=me.length;le!=null&&Xe<Mt;)le=le[yh(me[Xe++])];return Xe&&Xe==Mt?le:void 0}var ud=OJ;function BJ(le,me,Xe){var Mt=le==null?void 0:ud(le,me);return Mt===void 0?Xe:Mt}var ly=BJ;function NJ(le,me){for(var Xe=-1,Mt=me.length,rr=Array(Mt),Nr=le==null;++Xe<Mt;)rr[Xe]=Nr?void 0:ly(le,me[Xe]);return rr}var uy=NJ;function UJ(le,me){for(var Xe=-1,Mt=me.length,rr=le.length;++Xe<Mt;)le[rr+Xe]=me[Xe];return le}var Dp=UJ;var eP=yf?yf.isConcatSpreadable:void 0;function jJ(le){return mo(le)||dd(le)||!!(eP&&le&&le[eP])}var tP=jJ;function rP(le,me,Xe,Mt,rr){var Nr=-1,xa=le.length;for(Xe||(Xe=tP),rr||(rr=[]);++Nr<xa;){var Ha=le[Nr];me>0&&Xe(Ha)?me>1?rP(Ha,me-1,Xe,Mt,rr):Dp(rr,Ha):Mt||(rr[rr.length]=Ha)}return rr}var wu=rP;function VJ(le){var me=le==null?0:le.length;return me?wu(le,1):[]}var Ub=VJ;function qJ(le){return Q0(zb(le,void 0,Ub),le+"")}var op=qJ;var HJ=op(uy),aP=HJ;var GJ=Ob(Object.getPrototypeOf,Object),Im=GJ;var WJ="[object Object]",ZJ=Function.prototype,XJ=Object.prototype,iP=ZJ.toString,YJ=XJ.hasOwnProperty,KJ=iP.call(Object);function JJ(le){if(!ul(le)||ac(le)!=WJ)return!1;var me=Im(le);if(me===null)return!0;var Xe=YJ.call(me,"constructor")&&me.constructor;return typeof Xe=="function"&&Xe instanceof Xe&&iP.call(Xe)==KJ}var gv=JJ;var $J="[object DOMException]",QJ="[object Error]";function e$(le){if(!ul(le))return!1;var me=ac(le);return me==QJ||me==$J||typeof le.message=="string"&&typeof le.name=="string"&&!gv(le)}var cy=e$;var t$=ko(function(le,me){try{return sf(le,void 0,me)}catch(Xe){return cy(Xe)?Xe:new Error(Xe)}}),jb=t$;var r$="Expected a function";function a$(le,me){var Xe;if(typeof me!="function")throw new TypeError(r$);return le=Eo(le),function(){return--le>0&&(Xe=me.apply(this,arguments)),le<=1&&(me=void 0),Xe}}var Vb=a$;var i$=1,n$=32,LA=ko(function(le,me,Xe){var Mt=i$;if(Xe.length){var rr=Yp(Xe,Sd(LA));Mt|=n$}return ap(le,Mt,me,Xe,rr)});LA.placeholder={};var qb=LA;var o$=op(function(le,me){return zh(me,function(Xe){Xe=yh(Xe),ip(le,Xe,qb(le[Xe],le))}),le}),nP=o$;var s$=1,l$=2,u$=32,PA=ko(function(le,me,Xe){var Mt=s$|l$;if(Xe.length){var rr=Yp(Xe,Sd(PA));Mt|=u$}return ap(me,Mt,le,Xe,rr)});PA.placeholder={};var oP=PA;function c$(le,me,Xe){var Mt=-1,rr=le.length;me<0&&(me=-me>rr?0:rr+me),Xe=Xe>rr?rr:Xe,Xe<0&&(Xe+=rr),rr=me>Xe?0:Xe-me>>>0,me>>>=0;for(var Nr=Array(rr);++Mt<rr;)Nr[Mt]=le[Mt+me];return Nr}var Lf=c$;function f$(le,me,Xe){var Mt=le.length;return Xe=Xe===void 0?Mt:Xe,!me&&Xe>=Mt?le:Lf(le,me,Xe)}var zp=f$;var h$="\\ud800-\\udfff",p$="\\u0300-\\u036f",d$="\\ufe20-\\ufe2f",v$="\\u20d0-\\u20ff",m$=p$+d$+v$,g$="\\ufe0e\\ufe0f",y$="\\u200d",_$=RegExp("["+y$+h$+m$+g$+"]");function x$(le){return _$.test(le)}var kd=x$;function b$(le){return le.split("")}var sP=b$;var lP="\\ud800-\\udfff",w$="\\u0300-\\u036f",T$="\\ufe20-\\ufe2f",A$="\\u20d0-\\u20ff",S$=w$+T$+A$,M$="\\ufe0e\\ufe0f",E$="["+lP+"]",IA="["+S$+"]",RA="\\ud83c[\\udffb-\\udfff]",k$="(?:"+IA+"|"+RA+")",uP="[^"+lP+"]",cP="(?:\\ud83c[\\udde6-\\uddff]){2}",fP="[\\ud800-\\udbff][\\udc00-\\udfff]",C$="\\u200d",hP=k$+"?",pP="["+M$+"]?",L$="(?:"+C$+"(?:"+[uP,cP,fP].join("|")+")"+pP+hP+")*",P$=pP+hP+L$,I$="(?:"+[uP+IA+"?",IA,cP,fP,E$].join("|")+")",R$=RegExp(RA+"(?="+RA+")|"+I$+P$,"g");function D$(le){return le.match(R$)||[]}var dP=D$;function z$(le){return kd(le)?dP(le):sP(le)}var Fh=z$;function F$(le){return function(me){me=ws(me);var Xe=kd(me)?Fh(me):void 0,Mt=Xe?Xe[0]:me.charAt(0),rr=Xe?zp(Xe,1).join(""):me.slice(1);return Mt[le]()+rr}}var Hb=F$;var O$=Hb("toUpperCase"),fy=O$;function B$(le){return fy(ws(le).toLowerCase())}var Gb=B$;function N$(le,me,Xe,Mt){var rr=-1,Nr=le==null?0:le.length;for(Mt&&Nr&&(Xe=le[++rr]);++rr<Nr;)Xe=me(Xe,le[rr],rr,le);return Xe}var hy=N$;function U$(le){return function(me){return le?.[me]}}var py=U$;var j$={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},V$=py(j$),vP=V$;var q$=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,H$="\\u0300-\\u036f",G$="\\ufe20-\\ufe2f",W$="\\u20d0-\\u20ff",Z$=H$+G$+W$,X$="["+Z$+"]",Y$=RegExp(X$,"g");function K$(le){return le=ws(le),le&&le.replace(q$,vP).replace(Y$,"")}var Wb=K$;var J$=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function $$(le){return le.match(J$)||[]}var mP=$$;var Q$=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function eQ(le){return Q$.test(le)}var gP=eQ;var wP="\\ud800-\\udfff",tQ="\\u0300-\\u036f",rQ="\\ufe20-\\ufe2f",aQ="\\u20d0-\\u20ff",iQ=tQ+rQ+aQ,TP="\\u2700-\\u27bf",AP="a-z\\xdf-\\xf6\\xf8-\\xff",nQ="\\xac\\xb1\\xd7\\xf7",oQ="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",sQ="\\u2000-\\u206f",lQ=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",SP="A-Z\\xc0-\\xd6\\xd8-\\xde",uQ="\\ufe0e\\ufe0f",MP=nQ+oQ+sQ+lQ,EP="['\u2019]",yP="["+MP+"]",cQ="["+iQ+"]",kP="\\d+",fQ="["+TP+"]",CP="["+AP+"]",LP="[^"+wP+MP+kP+TP+AP+SP+"]",hQ="\\ud83c[\\udffb-\\udfff]",pQ="(?:"+cQ+"|"+hQ+")",dQ="[^"+wP+"]",PP="(?:\\ud83c[\\udde6-\\uddff]){2}",IP="[\\ud800-\\udbff][\\udc00-\\udfff]",dy="["+SP+"]",vQ="\\u200d",_P="(?:"+CP+"|"+LP+")",mQ="(?:"+dy+"|"+LP+")",xP="(?:"+EP+"(?:d|ll|m|re|s|t|ve))?",bP="(?:"+EP+"(?:D|LL|M|RE|S|T|VE))?",RP=pQ+"?",DP="["+uQ+"]?",gQ="(?:"+vQ+"(?:"+[dQ,PP,IP].join("|")+")"+DP+RP+")*",yQ="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",_Q="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",xQ=DP+RP+gQ,bQ="(?:"+[fQ,PP,IP].join("|")+")"+xQ,wQ=RegExp([dy+"?"+CP+"+"+xP+"(?="+[yP,dy,"$"].join("|")+")",mQ+"+"+bP+"(?="+[yP,dy+_P,"$"].join("|")+")",dy+"?"+_P+"+"+xP,dy+"+"+bP,_Q,yQ,kP,bQ].join("|"),"g");function TQ(le){return le.match(wQ)||[]}var zP=TQ;function AQ(le,me,Xe){return le=ws(le),me=Xe?void 0:me,me===void 0?gP(le)?zP(le):mP(le):le.match(me)||[]}var Zb=AQ;var SQ="['\u2019]",MQ=RegExp(SQ,"g");function EQ(le){return function(me){return hy(Zb(Wb(me).replace(MQ,"")),le,"")}}var Cd=EQ;var kQ=Cd(function(le,me,Xe){return me=me.toLowerCase(),le+(Xe?Gb(me):me)}),FP=kQ;function CQ(){if(!arguments.length)return[];var le=arguments[0];return mo(le)?le:[le]}var OP=CQ;var LQ=Kl.isFinite,PQ=Math.min;function IQ(le){var me=Math[le];return function(Xe,Mt){if(Xe=mh(Xe),Mt=Mt==null?0:PQ(Eo(Mt),292),Mt&&LQ(Xe)){var rr=(ws(Xe)+"e").split("e"),Nr=me(rr[0]+"e"+(+rr[1]+Mt));return rr=(ws(Nr)+"e").split("e"),+(rr[0]+"e"+(+rr[1]-Mt))}return me(Xe)}}var vy=IQ;var RQ=vy("ceil"),BP=RQ;function DQ(le){var me=ua(le);return me.__chain__=!0,me}var Xb=DQ;var zQ=Math.ceil,FQ=Math.max;function OQ(le,me,Xe){(Xe?nc(le,me,Xe):me===void 0)?me=1:me=FQ(Eo(me),0);var Mt=le==null?0:le.length;if(!Mt||me<1)return[];for(var rr=0,Nr=0,xa=Array(zQ(Mt/me));rr<Mt;)xa[Nr++]=Lf(le,rr,rr+=me);return xa}var NP=OQ;function BQ(le,me,Xe){return le===le&&(Xe!==void 0&&(le=le<=Xe?le:Xe),me!==void 0&&(le=le>=me?le:me)),le}var cd=BQ;function NQ(le,me,Xe){return Xe===void 0&&(Xe=me,me=void 0),Xe!==void 0&&(Xe=mh(Xe),Xe=Xe===Xe?Xe:0),me!==void 0&&(me=mh(me),me=me===me?me:0),cd(mh(le),me,Xe)}var UP=NQ;function UQ(){this.__data__=new Cm,this.size=0}var jP=UQ;function jQ(le){var me=this.__data__,Xe=me.delete(le);return this.size=me.size,Xe}var VP=jQ;function VQ(le){return this.__data__.get(le)}var qP=VQ;function qQ(le){return this.__data__.has(le)}var HP=qQ;var HQ=200;function GQ(le,me){var Xe=this.__data__;if(Xe instanceof Cm){var Mt=Xe.__data__;if(!Lm||Mt.length<HQ-1)return Mt.push([le,me]),this.size=++Xe.size,this;Xe=this.__data__=new jg(Mt)}return Xe.set(le,me),this.size=Xe.size,this}var GP=GQ;function my(le){var me=this.__data__=new Cm(le);this.size=me.size}my.prototype.clear=jP;my.prototype.delete=VP;my.prototype.get=qP;my.prototype.has=HP;my.prototype.set=GP;var yv=my;function WQ(le,me){return le&&gh(me,Gl(me),le)}var Yb=WQ;function ZQ(le,me){return le&&gh(me,yc(me),le)}var WP=ZQ;var KP=typeof exports=="object"&&exports&&!exports.nodeType&&exports,ZP=KP&&typeof module=="object"&&module&&!module.nodeType&&module,XQ=ZP&&ZP.exports===KP,XP=XQ?Kl.Buffer:void 0,YP=XP?XP.allocUnsafe:void 0;function YQ(le,me){if(me)return le.slice();var Xe=le.length,Mt=YP?YP(Xe):new le.constructor(Xe);return le.copy(Mt),Mt}var Kb=YQ;function KQ(le,me){for(var Xe=-1,Mt=le==null?0:le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe];me(xa,Xe,le)&&(Nr[rr++]=xa)}return Nr}var Fp=KQ;function JQ(){return[]}var gy=JQ;var $Q=Object.prototype,QQ=$Q.propertyIsEnumerable,JP=Object.getOwnPropertySymbols,eee=JP?function(le){return le==null?[]:(le=Object(le),Fp(JP(le),function(me){return QQ.call(le,me)}))}:gy,yy=eee;function tee(le,me){return gh(le,yy(le),me)}var $P=tee;var ree=Object.getOwnPropertySymbols,aee=ree?function(le){for(var me=[];le;)Dp(me,yy(le)),le=Im(le);return me}:gy,Jb=aee;function iee(le,me){return gh(le,Jb(le),me)}var QP=iee;function nee(le,me,Xe){var Mt=me(le);return mo(le)?Mt:Dp(Mt,Xe(le))}var $b=nee;function oee(le){return $b(le,Gl,yy)}var o_=oee;function see(le){return $b(le,yc,Jb)}var _y=see;var lee=ld(Kl,"DataView"),Qb=lee;var uee=ld(Kl,"Promise"),ew=uee;var cee=ld(Kl,"Set"),Rm=cee;var e6="[object Map]",fee="[object Object]",t6="[object Promise]",r6="[object Set]",a6="[object WeakMap]",i6="[object DataView]",hee=jv(Qb),pee=jv(Lm),dee=jv(ew),vee=jv(Rm),mee=jv(Ug),Vg=ac;(Qb&&Vg(new Qb(new ArrayBuffer(1)))!=i6||Lm&&Vg(new Lm)!=e6||ew&&Vg(ew.resolve())!=t6||Rm&&Vg(new Rm)!=r6||Ug&&Vg(new Ug)!=a6)&&(Vg=function(le){var me=ac(le),Xe=me==fee?le.constructor:void 0,Mt=Xe?jv(Xe):"";if(Mt)switch(Mt){case hee:return i6;case pee:return e6;case dee:return t6;case vee:return r6;case mee:return a6}return me});var Oh=Vg;var gee=Object.prototype,yee=gee.hasOwnProperty;function _ee(le){var me=le.length,Xe=new le.constructor(me);return me&&typeof le[0]=="string"&&yee.call(le,"index")&&(Xe.index=le.index,Xe.input=le.input),Xe}var n6=_ee;var xee=Kl.Uint8Array,xy=xee;function bee(le){var me=new le.constructor(le.byteLength);return new xy(me).set(new xy(le)),me}var by=bee;function wee(le,me){var Xe=me?by(le.buffer):le.buffer;return new le.constructor(Xe,le.byteOffset,le.byteLength)}var o6=wee;var Tee=/\w*$/;function Aee(le){var me=new le.constructor(le.source,Tee.exec(le));return me.lastIndex=le.lastIndex,me}var s6=Aee;var l6=yf?yf.prototype:void 0,u6=l6?l6.valueOf:void 0;function See(le){return u6?Object(u6.call(le)):{}}var c6=See;function Mee(le,me){var Xe=me?by(le.buffer):le.buffer;return new le.constructor(Xe,le.byteOffset,le.length)}var tw=Mee;var Eee="[object Boolean]",kee="[object Date]",Cee="[object Map]",Lee="[object Number]",Pee="[object RegExp]",Iee="[object Set]",Ree="[object String]",Dee="[object Symbol]",zee="[object ArrayBuffer]",Fee="[object DataView]",Oee="[object Float32Array]",Bee="[object Float64Array]",Nee="[object Int8Array]",Uee="[object Int16Array]",jee="[object Int32Array]",Vee="[object Uint8Array]",qee="[object Uint8ClampedArray]",Hee="[object Uint16Array]",Gee="[object Uint32Array]";function Wee(le,me,Xe){var Mt=le.constructor;switch(me){case zee:return by(le);case Eee:case kee:return new Mt(+le);case Fee:return o6(le,Xe);case Oee:case Bee:case Nee:case Uee:case jee:case Vee:case qee:case Hee:case Gee:return tw(le,Xe);case Cee:return new Mt;case Lee:case Ree:return new Mt(le);case Pee:return s6(le);case Iee:return new Mt;case Dee:return c6(le)}}var f6=Wee;function Zee(le){return typeof le.constructor=="function"&&!mv(le)?Td(Im(le)):{}}var rw=Zee;var Xee="[object Map]";function Yee(le){return ul(le)&&Oh(le)==Xee}var h6=Yee;var p6=np&&np.isMap,Kee=p6?uf(p6):h6,aw=Kee;var Jee="[object Set]";function $ee(le){return ul(le)&&Oh(le)==Jee}var d6=$ee;var v6=np&&np.isSet,Qee=v6?uf(v6):d6,iw=Qee;var ete=1,tte=2,rte=4,m6="[object Arguments]",ate="[object Array]",ite="[object Boolean]",nte="[object Date]",ote="[object Error]",g6="[object Function]",ste="[object GeneratorFunction]",lte="[object Map]",ute="[object Number]",y6="[object Object]",cte="[object RegExp]",fte="[object Set]",hte="[object String]",pte="[object Symbol]",dte="[object WeakMap]",vte="[object ArrayBuffer]",mte="[object DataView]",gte="[object Float32Array]",yte="[object Float64Array]",_te="[object Int8Array]",xte="[object Int16Array]",bte="[object Int32Array]",wte="[object Uint8Array]",Tte="[object Uint8ClampedArray]",Ate="[object Uint16Array]",Ste="[object Uint32Array]",Zc={};Zc[m6]=Zc[ate]=Zc[vte]=Zc[mte]=Zc[ite]=Zc[nte]=Zc[gte]=Zc[yte]=Zc[_te]=Zc[xte]=Zc[bte]=Zc[lte]=Zc[ute]=Zc[y6]=Zc[cte]=Zc[fte]=Zc[hte]=Zc[pte]=Zc[wte]=Zc[Tte]=Zc[Ate]=Zc[Ste]=!0;Zc[ote]=Zc[g6]=Zc[dte]=!1;function nw(le,me,Xe,Mt,rr,Nr){var xa,Ha=me&ete,Za=me&tte,un=me&rte;if(Xe&&(xa=rr?Xe(le,Mt,rr,Nr):Xe(le)),xa!==void 0)return xa;if(!ll(le))return le;var Ji=mo(le);if(Ji){if(xa=n6(le),!Ha)return Wc(le,xa)}else{var gn=Oh(le),wo=gn==g6||gn==ste;if(Kp(le))return Kb(le,Ha);if(gn==y6||gn==m6||wo&&!rr){if(xa=Za||wo?{}:rw(le),!Ha)return Za?QP(le,WP(xa,le)):$P(le,Yb(xa,le))}else{if(!Zc[gn])return rr?le:{};xa=f6(le,gn,Ha)}}Nr||(Nr=new yv);var ps=Nr.get(le);if(ps)return ps;Nr.set(le,xa),iw(le)?le.forEach(function(Ps){xa.add(nw(Ps,me,Xe,Ps,le,Nr))}):aw(le)&&le.forEach(function(Ps,Ml){xa.set(Ml,nw(Ps,me,Xe,Ml,le,Nr))});var Qn=un?Za?_y:o_:Za?yc:Gl,Ye=Ji?void 0:Qn(le);return zh(Ye||le,function(Ps,Ml){Ye&&(Ml=Ps,Ps=le[Ml]),vv(xa,Ml,nw(Ps,me,Xe,Ml,le,Nr))}),xa}var sp=nw;var Mte=4;function Ete(le){return sp(le,Mte)}var _6=Ete;var kte=1,Cte=4;function Lte(le){return sp(le,kte|Cte)}var x6=Lte;var Pte=1,Ite=4;function Rte(le,me){return me=typeof me=="function"?me:void 0,sp(le,Pte|Ite,me)}var b6=Rte;var Dte=4;function zte(le,me){return me=typeof me=="function"?me:void 0,sp(le,Dte,me)}var w6=zte;function Fte(){return new Ip(this.value(),this.__chain__)}var T6=Fte;function Ote(le){for(var me=-1,Xe=le==null?0:le.length,Mt=0,rr=[];++me<Xe;){var Nr=le[me];Nr&&(rr[Mt++]=Nr)}return rr}var A6=Ote;function Bte(){var le=arguments.length;if(!le)return[];for(var me=Array(le-1),Xe=arguments[0],Mt=le;Mt--;)me[Mt-1]=arguments[Mt];return Dp(mo(Xe)?Wc(Xe):[Xe],wu(me,1))}var S6=Bte;var Nte="__lodash_hash_undefined__";function Ute(le){return this.__data__.set(le,Nte),this}var M6=Ute;function jte(le){return this.__data__.has(le)}var E6=jte;function ow(le){var me=-1,Xe=le==null?0:le.length;for(this.__data__=new jg;++me<Xe;)this.add(le[me])}ow.prototype.add=ow.prototype.push=M6;ow.prototype.has=E6;var Dm=ow;function Vte(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt;)if(me(le[Xe],Xe,le))return!0;return!1}var wy=Vte;function qte(le,me){return le.has(me)}var Hv=qte;var Hte=1,Gte=2;function Wte(le,me,Xe,Mt,rr,Nr){var xa=Xe&Hte,Ha=le.length,Za=me.length;if(Ha!=Za&&!(xa&&Za>Ha))return!1;var un=Nr.get(le),Ji=Nr.get(me);if(un&&Ji)return un==me&&Ji==le;var gn=-1,wo=!0,ps=Xe&Gte?new Dm:void 0;for(Nr.set(le,me),Nr.set(me,le);++gn<Ha;){var Qn=le[gn],Ye=me[gn];if(Mt)var Ps=xa?Mt(Ye,Qn,gn,me,le,Nr):Mt(Qn,Ye,gn,le,me,Nr);if(Ps!==void 0){if(Ps)continue;wo=!1;break}if(ps){if(!wy(me,function(Ml,Ul){if(!Hv(ps,Ul)&&(Qn===Ml||rr(Qn,Ml,Xe,Mt,Nr)))return ps.push(Ul)})){wo=!1;break}}else if(!(Qn===Ye||rr(Qn,Ye,Xe,Mt,Nr))){wo=!1;break}}return Nr.delete(le),Nr.delete(me),wo}var sw=Wte;function Zte(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt,rr){Xe[++me]=[rr,Mt]}),Xe}var Ty=Zte;function Xte(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt){Xe[++me]=Mt}),Xe}var zm=Xte;var Yte=1,Kte=2,Jte="[object Boolean]",$te="[object Date]",Qte="[object Error]",ere="[object Map]",tre="[object Number]",rre="[object RegExp]",are="[object Set]",ire="[object String]",nre="[object Symbol]",ore="[object ArrayBuffer]",sre="[object DataView]",k6=yf?yf.prototype:void 0,DA=k6?k6.valueOf:void 0;function lre(le,me,Xe,Mt,rr,Nr,xa){switch(Xe){case sre:if(le.byteLength!=me.byteLength||le.byteOffset!=me.byteOffset)return!1;le=le.buffer,me=me.buffer;case ore:return!(le.byteLength!=me.byteLength||!Nr(new xy(le),new xy(me)));case Jte:case $te:case tre:return qf(+le,+me);case Qte:return le.name==me.name&&le.message==me.message;case rre:case ire:return le==me+"";case ere:var Ha=Ty;case are:var Za=Mt&Yte;if(Ha||(Ha=zm),le.size!=me.size&&!Za)return!1;var un=xa.get(le);if(un)return un==me;Mt|=Kte,xa.set(le,me);var Ji=sw(Ha(le),Ha(me),Mt,rr,Nr,xa);return xa.delete(le),Ji;case nre:if(DA)return DA.call(le)==DA.call(me)}return!1}var C6=lre;var ure=1,cre=Object.prototype,fre=cre.hasOwnProperty;function hre(le,me,Xe,Mt,rr,Nr){var xa=Xe&ure,Ha=o_(le),Za=Ha.length,un=o_(me),Ji=un.length;if(Za!=Ji&&!xa)return!1;for(var gn=Za;gn--;){var wo=Ha[gn];if(!(xa?wo in me:fre.call(me,wo)))return!1}var ps=Nr.get(le),Qn=Nr.get(me);if(ps&&Qn)return ps==me&&Qn==le;var Ye=!0;Nr.set(le,me),Nr.set(me,le);for(var Ps=xa;++gn<Za;){wo=Ha[gn];var Ml=le[wo],Ul=me[wo];if(Mt)var Hf=xa?Mt(Ul,Ml,wo,me,le,Nr):Mt(Ml,Ul,wo,le,me,Nr);if(!(Hf===void 0?Ml===Ul||rr(Ml,Ul,Xe,Mt,Nr):Hf)){Ye=!1;break}Ps||(Ps=wo=="constructor")}if(Ye&&!Ps){var xh=le.constructor,Bp=me.constructor;xh!=Bp&&"constructor"in le&&"constructor"in me&&!(typeof xh=="function"&&xh instanceof xh&&typeof Bp=="function"&&Bp instanceof Bp)&&(Ye=!1)}return Nr.delete(le),Nr.delete(me),Ye}var L6=hre;var pre=1,P6="[object Arguments]",I6="[object Array]",lw="[object Object]",dre=Object.prototype,R6=dre.hasOwnProperty;function vre(le,me,Xe,Mt,rr,Nr){var xa=mo(le),Ha=mo(me),Za=xa?I6:Oh(le),un=Ha?I6:Oh(me);Za=Za==P6?lw:Za,un=un==P6?lw:un;var Ji=Za==lw,gn=un==lw,wo=Za==un;if(wo&&Kp(le)){if(!Kp(me))return!1;xa=!0,Ji=!1}if(wo&&!Ji)return Nr||(Nr=new yv),xa||Ed(le)?sw(le,me,Xe,Mt,rr,Nr):C6(le,me,Za,Xe,Mt,rr,Nr);if(!(Xe&pre)){var ps=Ji&&R6.call(le,"__wrapped__"),Qn=gn&&R6.call(me,"__wrapped__");if(ps||Qn){var Ye=ps?le.value():le,Ps=Qn?me.value():me;return Nr||(Nr=new yv),rr(Ye,Ps,Xe,Mt,Nr)}}return wo?(Nr||(Nr=new yv),L6(le,me,Xe,Mt,rr,Nr)):!1}var D6=vre;function z6(le,me,Xe,Mt,rr){return le===me?!0:le==null||me==null||!ul(le)&&!ul(me)?le!==le&&me!==me:D6(le,me,Xe,Mt,z6,rr)}var Fm=z6;var mre=1,gre=2;function yre(le,me,Xe,Mt){var rr=Xe.length,Nr=rr,xa=!Mt;if(le==null)return!Nr;for(le=Object(le);rr--;){var Ha=Xe[rr];if(xa&&Ha[2]?Ha[1]!==le[Ha[0]]:!(Ha[0]in le))return!1}for(;++rr<Nr;){Ha=Xe[rr];var Za=Ha[0],un=le[Za],Ji=Ha[1];if(xa&&Ha[2]){if(un===void 0&&!(Za in le))return!1}else{var gn=new yv;if(Mt)var wo=Mt(un,Ji,Za,le,me,gn);if(!(wo===void 0?Fm(Ji,un,mre|gre,Mt,gn):wo))return!1}}return!0}var Ay=yre;function _re(le){return le===le&&!ll(le)}var uw=_re;function xre(le){for(var me=Gl(le),Xe=me.length;Xe--;){var Mt=me[Xe],rr=le[Mt];me[Xe]=[Mt,rr,uw(rr)]}return me}var Sy=xre;function bre(le,me){return function(Xe){return Xe==null?!1:Xe[le]===me&&(me!==void 0||le in Object(Xe))}}var cw=bre;function wre(le){var me=Sy(le);return me.length==1&&me[0][2]?cw(me[0][0],me[0][1]):function(Xe){return Xe===le||Ay(Xe,le,me)}}var fw=wre;function Tre(le,me){return le!=null&&me in Object(le)}var F6=Tre;function Are(le,me,Xe){me=Rp(me,le);for(var Mt=-1,rr=me.length,Nr=!1;++Mt<rr;){var xa=yh(me[Mt]);if(!(Nr=le!=null&&Xe(le,xa)))break;le=le[xa]}return Nr||++Mt!=rr?Nr:(rr=le==null?0:le.length,!!rr&&Mm(rr)&&rp(xa,rr)&&(mo(le)||dd(le)))}var hw=Are;function Sre(le,me){return le!=null&&hw(le,me,F6)}var My=Sre;var Mre=1,Ere=2;function kre(le,me){return iy(le)&&uw(me)?cw(yh(le),me):function(Xe){var Mt=ly(Xe,le);return Mt===void 0&&Mt===me?My(Xe,le):Fm(me,Mt,Mre|Ere)}}var pw=kre;function Cre(le){return function(me){return me?.[le]}}var Ey=Cre;function Lre(le){return function(me){return ud(me,le)}}var O6=Lre;function Pre(le){return iy(le)?Ey(yh(le)):O6(le)}var dw=Pre;function Ire(le){return typeof le=="function"?le:le==null?ic:typeof le=="object"?mo(le)?pw(le[0],le[1]):fw(le):dw(le)}var io=Ire;var Rre="Expected a function";function Dre(le){var me=le==null?0:le.length,Xe=io;return le=me?nl(le,function(Mt){if(typeof Mt[1]!="function")throw new TypeError(Rre);return[Xe(Mt[0]),Mt[1]]}):[],ko(function(Mt){for(var rr=-1;++rr<me;){var Nr=le[rr];if(sf(Nr[0],this,Mt))return sf(Nr[1],this,Mt)}})}var B6=Dre;function zre(le,me,Xe){var Mt=Xe.length;if(le==null)return!Mt;for(le=Object(le);Mt--;){var rr=Xe[Mt],Nr=me[rr],xa=le[rr];if(xa===void 0&&!(rr in le)||!Nr(xa))return!1}return!0}var vw=zre;function Fre(le){var me=Gl(le);return function(Xe){return vw(Xe,le,me)}}var N6=Fre;var Ore=1;function Bre(le){return N6(sp(le,Ore))}var U6=Bre;function Nre(le,me){return me==null||vw(le,me,Gl(me))}var j6=Nre;function Ure(le,me,Xe,Mt){for(var rr=-1,Nr=le==null?0:le.length;++rr<Nr;){var xa=le[rr];me(Mt,xa,Xe(xa),le)}return Mt}var V6=Ure;function jre(le){return function(me,Xe,Mt){for(var rr=-1,Nr=Object(me),xa=Mt(me),Ha=xa.length;Ha--;){var Za=xa[le?Ha:++rr];if(Xe(Nr[Za],Za,Nr)===!1)break}return me}}var mw=jre;var Vre=mw(),ky=Vre;function qre(le,me){return le&&ky(le,me,Gl)}var lp=qre;function Hre(le,me){return function(Xe,Mt){if(Xe==null)return Xe;if(!gc(Xe))return le(Xe,Mt);for(var rr=Xe.length,Nr=me?rr:-1,xa=Object(Xe);(me?Nr--:++Nr<rr)&&Mt(xa[Nr],Nr,xa)!==!1;);return Xe}}var gw=Hre;var Gre=gw(lp),Op=Gre;function Wre(le,me,Xe,Mt){return Op(le,function(rr,Nr,xa){me(Mt,rr,Xe(rr),xa)}),Mt}var q6=Wre;function Zre(le,me){return function(Xe,Mt){var rr=mo(Xe)?V6:q6,Nr=me?me():{};return rr(Xe,le,io(Mt,2),Nr)}}var Om=Zre;var Xre=Object.prototype,Yre=Xre.hasOwnProperty,Kre=Om(function(le,me,Xe){Yre.call(le,Xe)?++le[Xe]:ip(le,Xe,1)}),H6=Kre;function Jre(le,me){var Xe=Td(le);return me==null?Xe:Yb(Xe,me)}var G6=Jre;var $re=8;function zA(le,me,Xe){me=Xe?void 0:me;var Mt=ap(le,$re,void 0,void 0,void 0,void 0,void 0,me);return Mt.placeholder=zA.placeholder,Mt}zA.placeholder={};var W6=zA;var Qre=16;function FA(le,me,Xe){me=Xe?void 0:me;var Mt=ap(le,Qre,void 0,void 0,void 0,void 0,void 0,me);return Mt.placeholder=FA.placeholder,Mt}FA.placeholder={};var Z6=FA;var eae=function(){return Kl.Date.now()},Cy=eae;var tae="Expected a function",rae=Math.max,aae=Math.min;function iae(le,me,Xe){var Mt,rr,Nr,xa,Ha,Za,un=0,Ji=!1,gn=!1,wo=!0;if(typeof le!="function")throw new TypeError(tae);me=mh(me)||0,ll(Xe)&&(Ji=!!Xe.leading,gn="maxWait"in Xe,Nr=gn?rae(mh(Xe.maxWait)||0,me):Nr,wo="trailing"in Xe?!!Xe.trailing:wo);function ps(_n){var $p=Mt,Np=rr;return Mt=rr=void 0,un=_n,xa=le.apply(Np,$p),xa}function Qn(_n){return un=_n,Ha=setTimeout(Ml,me),Ji?ps(_n):xa}function Ye(_n){var $p=_n-Za,Np=_n-un,Zy=me-$p;return gn?aae(Zy,Nr-Np):Zy}function Ps(_n){var $p=_n-Za,Np=_n-un;return Za===void 0||$p>=me||$p<0||gn&&Np>=Nr}function Ml(){var _n=Cy();if(Ps(_n))return Ul(_n);Ha=setTimeout(Ml,Ye(_n))}function Ul(_n){return Ha=void 0,wo&&Mt?ps(_n):(Mt=rr=void 0,xa)}function Hf(){Ha!==void 0&&clearTimeout(Ha),un=0,Mt=Za=rr=Ha=void 0}function xh(){return Ha===void 0?xa:Ul(Cy())}function Bp(){var _n=Cy(),$p=Ps(_n);if(Mt=arguments,rr=this,Za=_n,$p){if(Ha===void 0)return Qn(Za);if(gn)return clearTimeout(Ha),Ha=setTimeout(Ml,me),ps(Za)}return Ha===void 0&&(Ha=setTimeout(Ml,me)),xa}return Bp.cancel=Hf,Bp.flush=xh,Bp}var yw=iae;function nae(le,me){return le==null||le!==le?me:le}var X6=nae;var Y6=Object.prototype,oae=Y6.hasOwnProperty,sae=ko(function(le,me){le=Object(le);var Xe=-1,Mt=me.length,rr=Mt>2?me[2]:void 0;for(rr&&nc(me[0],me[1],rr)&&(Mt=1);++Xe<Mt;)for(var Nr=me[Xe],xa=yc(Nr),Ha=-1,Za=xa.length;++Ha<Za;){var un=xa[Ha],Ji=le[un];(Ji===void 0||qf(Ji,Y6[un])&&!oae.call(le,un))&&(le[un]=Nr[un])}return le}),K6=sae;function lae(le,me,Xe){(Xe!==void 0&&!qf(le[me],Xe)||Xe===void 0&&!(me in le))&&ip(le,me,Xe)}var s_=lae;function uae(le){return ul(le)&&gc(le)}var eu=uae;function cae(le,me){if(!(me==="constructor"&&typeof le[me]=="function")&&me!="__proto__")return le[me]}var l_=cae;function fae(le){return gh(le,yc(le))}var _w=fae;function hae(le,me,Xe,Mt,rr,Nr,xa){var Ha=l_(le,Xe),Za=l_(me,Xe),un=xa.get(Za);if(un){s_(le,Xe,un);return}var Ji=Nr?Nr(Ha,Za,Xe+"",le,me,xa):void 0,gn=Ji===void 0;if(gn){var wo=mo(Za),ps=!wo&&Kp(Za),Qn=!wo&&!ps&&Ed(Za);Ji=Za,wo||ps||Qn?mo(Ha)?Ji=Ha:eu(Ha)?Ji=Wc(Ha):ps?(gn=!1,Ji=Kb(Za,!0)):Qn?(gn=!1,Ji=tw(Za,!0)):Ji=[]:gv(Za)||dd(Za)?(Ji=Ha,dd(Ha)?Ji=_w(Ha):(!ll(Ha)||tp(Ha))&&(Ji=rw(Za))):gn=!1}gn&&(xa.set(Za,Ji),rr(Ji,Za,Mt,Nr,xa),xa.delete(Za)),s_(le,Xe,Ji)}var J6=hae;function $6(le,me,Xe,Mt,rr){le!==me&&ky(me,function(Nr,xa){if(rr||(rr=new yv),ll(Nr))J6(le,me,xa,Xe,$6,Mt,rr);else{var Ha=Mt?Mt(l_(le,xa),Nr,xa+"",le,me,rr):void 0;Ha===void 0&&(Ha=Nr),s_(le,xa,Ha)}},yc)}var Ly=$6;function Q6(le,me,Xe,Mt,rr,Nr){return ll(le)&&ll(me)&&(Nr.set(me,le),Ly(le,me,void 0,Q6,Nr),Nr.delete(me)),le}var eI=Q6;var pae=Md(function(le,me,Xe,Mt){Ly(le,me,Xe,Mt)}),xw=pae;var dae=ko(function(le){return le.push(void 0,eI),sf(xw,void 0,le)}),tI=dae;var vae="Expected a function";function mae(le,me,Xe){if(typeof le!="function")throw new TypeError(vae);return setTimeout(function(){le.apply(void 0,Xe)},me)}var bw=mae;var gae=ko(function(le,me){return bw(le,1,me)}),rI=gae;var yae=ko(function(le,me,Xe){return bw(le,mh(me)||0,Xe)}),aI=yae;function _ae(le,me,Xe){for(var Mt=-1,rr=le==null?0:le.length;++Mt<rr;)if(Xe(me,le[Mt]))return!0;return!1}var Py=_ae;var xae=200;function bae(le,me,Xe,Mt){var rr=-1,Nr=Sm,xa=!0,Ha=le.length,Za=[],un=me.length;if(!Ha)return Za;Xe&&(me=nl(me,uf(Xe))),Mt?(Nr=Py,xa=!1):me.length>=xae&&(Nr=Hv,xa=!1,me=new Dm(me));e:for(;++rr<Ha;){var Ji=le[rr],gn=Xe==null?Ji:Xe(Ji);if(Ji=Mt||Ji!==0?Ji:0,xa&&gn===gn){for(var wo=un;wo--;)if(me[wo]===gn)continue e;Za.push(Ji)}else Nr(me,gn,Mt)||Za.push(Ji)}return Za}var _v=bae;var wae=ko(function(le,me){return eu(le)?_v(le,wu(me,1,eu,!0)):[]}),iI=wae;function Tae(le){var me=le==null?0:le.length;return me?le[me-1]:void 0}var cf=Tae;var Aae=ko(function(le,me){var Xe=cf(me);return eu(Xe)&&(Xe=void 0),eu(le)?_v(le,wu(me,1,eu,!0),io(Xe,2)):[]}),nI=Aae;var Sae=ko(function(le,me){var Xe=cf(me);return eu(Xe)&&(Xe=void 0),eu(le)?_v(le,wu(me,1,eu,!0),void 0,Xe):[]}),oI=Sae;var Mae=bm(function(le,me){return le/me},1),sI=Mae;function Eae(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),Lf(le,me<0?0:me,Mt)):[]}var lI=Eae;function kae(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),me=Mt-me,Lf(le,0,me<0?0:me)):[]}var uI=kae;function Cae(le,me,Xe,Mt){for(var rr=le.length,Nr=Mt?rr:-1;(Mt?Nr--:++Nr<rr)&&me(le[Nr],Nr,le););return Xe?Lf(le,Mt?0:Nr,Mt?Nr+1:rr):Lf(le,Mt?Nr+1:0,Mt?rr:Nr)}var Bm=Cae;function Lae(le,me){return le&&le.length?Bm(le,io(me,3),!0,!0):[]}var cI=Lae;function Pae(le,me){return le&&le.length?Bm(le,io(me,3),!0):[]}var fI=Pae;function Iae(le){return typeof le=="function"?le:ic}var _h=Iae;function Rae(le,me){var Xe=mo(le)?zh:Op;return Xe(le,_h(me))}var u_=Rae;function Dae(le,me){for(var Xe=le==null?0:le.length;Xe--&&me(le[Xe],Xe,le)!==!1;);return le}var hI=Dae;var zae=mw(!0),ww=zae;function Fae(le,me){return le&&ww(le,me,Gl)}var Iy=Fae;var Oae=gw(Iy,!0),Tw=Oae;function Bae(le,me){var Xe=mo(le)?hI:Tw;return Xe(le,_h(me))}var c_=Bae;function Nae(le,me,Xe){le=ws(le),me=Vf(me);var Mt=le.length;Xe=Xe===void 0?Mt:cd(Eo(Xe),0,Mt);var rr=Xe;return Xe-=me.length,Xe>=0&&le.slice(Xe,rr)==me}var pI=Nae;function Uae(le,me){return nl(me,function(Xe){return[Xe,le[Xe]]})}var dI=Uae;function jae(le){var me=-1,Xe=Array(le.size);return le.forEach(function(Mt){Xe[++me]=[Mt,Mt]}),Xe}var vI=jae;var Vae="[object Map]",qae="[object Set]";function Hae(le){return function(me){var Xe=Oh(me);return Xe==Vae?Ty(me):Xe==qae?vI(me):dI(me,le(me))}}var Aw=Hae;var Gae=Aw(Gl),f_=Gae;var Wae=Aw(yc),h_=Wae;var Zae={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Xae=py(Zae),mI=Xae;var gI=/[&<>"']/g,Yae=RegExp(gI.source);function Kae(le){return le=ws(le),le&&Yae.test(le)?le.replace(gI,mI):le}var Sw=Kae;var yI=/[\\^$.*+?()[\]{}|]/g,Jae=RegExp(yI.source);function $ae(le){return le=ws(le),le&&Jae.test(le)?le.replace(yI,"\\$&"):le}var _I=$ae;function Qae(le,me){for(var Xe=-1,Mt=le==null?0:le.length;++Xe<Mt;)if(!me(le[Xe],Xe,le))return!1;return!0}var Mw=Qae;function eie(le,me){var Xe=!0;return Op(le,function(Mt,rr,Nr){return Xe=!!me(Mt,rr,Nr),Xe}),Xe}var xI=eie;function tie(le,me,Xe){var Mt=mo(le)?Mw:xI;return Xe&&nc(le,me,Xe)&&(me=void 0),Mt(le,io(me,3))}var bI=tie;var rie=4294967295;function aie(le){return le?cd(Eo(le),0,rie):0}var Ew=aie;function iie(le,me,Xe,Mt){var rr=le.length;for(Xe=Eo(Xe),Xe<0&&(Xe=-Xe>rr?0:rr+Xe),Mt=Mt===void 0||Mt>rr?rr:Eo(Mt),Mt<0&&(Mt+=rr),Mt=Xe>Mt?0:Ew(Mt);Xe<Mt;)le[Xe++]=me;return le}var wI=iie;function nie(le,me,Xe,Mt){var rr=le==null?0:le.length;return rr?(Xe&&typeof Xe!="number"&&nc(le,me,Xe)&&(Xe=0,Mt=rr),wI(le,me,Xe,Mt)):[]}var TI=nie;function oie(le,me){var Xe=[];return Op(le,function(Mt,rr,Nr){me(Mt,rr,Nr)&&Xe.push(Mt)}),Xe}var kw=oie;function sie(le,me){var Xe=mo(le)?Fp:kw;return Xe(le,io(me,3))}var AI=sie;function lie(le){return function(me,Xe,Mt){var rr=Object(me);if(!gc(me)){var Nr=io(Xe,3);me=Gl(me),Xe=function(Ha){return Nr(rr[Ha],Ha,rr)}}var xa=le(me,Xe,Mt);return xa>-1?rr[Nr?me[xa]:xa]:void 0}}var Cw=lie;var uie=Math.max;function cie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=uie(Mt+rr,0)),Am(le,io(me,3),rr)}var Lw=cie;var fie=Cw(Lw),SI=fie;function hie(le,me,Xe){var Mt;return Xe(le,function(rr,Nr,xa){if(me(rr,Nr,xa))return Mt=Nr,!1}),Mt}var Pw=hie;function pie(le,me){return Pw(le,io(me,3),lp)}var MI=pie;var die=Math.max,vie=Math.min;function mie(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt-1;return Xe!==void 0&&(rr=Eo(Xe),rr=Xe<0?die(Mt+rr,0):vie(rr,Mt-1)),Am(le,io(me,3),rr,!0)}var Iw=mie;var gie=Cw(Iw),EI=gie;function yie(le,me){return Pw(le,io(me,3),Iy)}var kI=yie;function _ie(le){return le&&le.length?le[0]:void 0}var p_=_ie;function xie(le,me){var Xe=-1,Mt=gc(le)?Array(le.length):[];return Op(le,function(rr,Nr,xa){Mt[++Xe]=me(rr,Nr,xa)}),Mt}var Rw=xie;function bie(le,me){var Xe=mo(le)?nl:Rw;return Xe(le,io(me,3))}var Nm=bie;function wie(le,me){return wu(Nm(le,me),1)}var CI=wie;var Tie=1/0;function Aie(le,me){return wu(Nm(le,me),Tie)}var LI=Aie;function Sie(le,me,Xe){return Xe=Xe===void 0?1:Eo(Xe),wu(Nm(le,me),Xe)}var PI=Sie;var Mie=1/0;function Eie(le){var me=le==null?0:le.length;return me?wu(le,Mie):[]}var II=Eie;function kie(le,me){var Xe=le==null?0:le.length;return Xe?(me=me===void 0?1:Eo(me),wu(le,me)):[]}var RI=kie;var Cie=512;function Lie(le){return ap(le,Cie)}var DI=Lie;var Pie=vy("floor"),zI=Pie;var Iie="Expected a function",Rie=8,Die=32,zie=128,Fie=256;function Oie(le){return op(function(me){var Xe=me.length,Mt=Xe,rr=Ip.prototype.thru;for(le&&me.reverse();Mt--;){var Nr=me[Mt];if(typeof Nr!="function")throw new TypeError(Iie);if(rr&&!xa&&K0(Nr)=="wrapper")var xa=new Ip([],!0)}for(Mt=xa?Mt:Xe;++Mt<Xe;){Nr=me[Mt];var Ha=K0(Nr),Za=Ha=="wrapper"?Y0(Nr):void 0;Za&&r_(Za[0])&&Za[1]==(zie|Rie|Die|Fie)&&!Za[4].length&&Za[9]==1?xa=xa[K0(Za[0])].apply(xa,Za[3]):xa=Nr.length==1&&r_(Nr)?xa[Ha]():xa.thru(Nr)}return function(){var un=arguments,Ji=un[0];if(xa&&un.length==1&&mo(Ji))return xa.plant(Ji).value();for(var gn=0,wo=Xe?me[gn].apply(this,un):Ji;++gn<Xe;)wo=me[gn].call(this,wo);return wo}})}var Dw=Oie;var Bie=Dw(),FI=Bie;var Nie=Dw(!0),OI=Nie;function Uie(le,me){return le==null?le:ky(le,_h(me),yc)}var BI=Uie;function jie(le,me){return le==null?le:ww(le,_h(me),yc)}var NI=jie;function Vie(le,me){return le&&lp(le,_h(me))}var UI=Vie;function qie(le,me){return le&&Iy(le,_h(me))}var jI=qie;function Hie(le){for(var me=-1,Xe=le==null?0:le.length,Mt={};++me<Xe;){var rr=le[me];Mt[rr[0]]=rr[1]}return Mt}var VI=Hie;function Gie(le,me){return Fp(me,function(Xe){return tp(le[Xe])})}var Um=Gie;function Wie(le){return le==null?[]:Um(le,Gl(le))}var qI=Wie;function Zie(le){return le==null?[]:Um(le,yc(le))}var HI=Zie;var Xie=Object.prototype,Yie=Xie.hasOwnProperty,Kie=Om(function(le,me,Xe){Yie.call(le,Xe)?le[Xe].push(me):ip(le,Xe,[me])}),GI=Kie;function Jie(le,me){return le>me}var Ry=Jie;function $ie(le){return function(me,Xe){return typeof me=="string"&&typeof Xe=="string"||(me=mh(me),Xe=mh(Xe)),le(me,Xe)}}var jm=$ie;var Qie=jm(Ry),WI=Qie;var ene=jm(function(le,me){return le>=me}),ZI=ene;var tne=Object.prototype,rne=tne.hasOwnProperty;function ane(le,me){return le!=null&&rne.call(le,me)}var XI=ane;function ine(le,me){return le!=null&&hw(le,me,XI)}var YI=ine;var nne=Math.max,one=Math.min;function sne(le,me,Xe){return le>=one(me,Xe)&&le<nne(me,Xe)}var KI=sne;function lne(le,me,Xe){return me=sd(me),Xe===void 0?(Xe=me,me=0):Xe=sd(Xe),le=mh(le),KI(le,me,Xe)}var JI=lne;var une="[object String]";function cne(le){return typeof le=="string"||!mo(le)&&ul(le)&&ac(le)==une}var Vm=cne;function fne(le,me){return nl(me,function(Xe){return le[Xe]})}var Dy=fne;function hne(le){return le==null?[]:Dy(le,Gl(le))}var Ld=hne;var pne=Math.max;function dne(le,me,Xe,Mt){le=gc(le)?le:Ld(le),Xe=Xe&&!Mt?Eo(Xe):0;var rr=le.length;return Xe<0&&(Xe=pne(rr+Xe,0)),Vm(le)?Xe<=rr&&le.indexOf(me,Xe)>-1:!!rr&&Ad(le,me,Xe)>-1}var $I=dne;var vne=Math.max;function mne(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Xe==null?0:Eo(Xe);return rr<0&&(rr=vne(Mt+rr,0)),Ad(le,me,rr)}var QI=mne;function gne(le){var me=le==null?0:le.length;return me?Lf(le,0,-1):[]}var eR=gne;var yne=Math.min;function _ne(le,me,Xe){for(var Mt=Xe?Py:Sm,rr=le[0].length,Nr=le.length,xa=Nr,Ha=Array(Nr),Za=1/0,un=[];xa--;){var Ji=le[xa];xa&&me&&(Ji=nl(Ji,uf(me))),Za=yne(Ji.length,Za),Ha[xa]=!Xe&&(me||rr>=120&&Ji.length>=120)?new Dm(xa&&Ji):void 0}Ji=le[0];var gn=-1,wo=Ha[0];e:for(;++gn<rr&&un.length<Za;){var ps=Ji[gn],Qn=me?me(ps):ps;if(ps=Xe||ps!==0?ps:0,!(wo?Hv(wo,Qn):Mt(un,Qn,Xe))){for(xa=Nr;--xa;){var Ye=Ha[xa];if(!(Ye?Hv(Ye,Qn):Mt(le[xa],Qn,Xe)))continue e}wo&&wo.push(Qn),un.push(ps)}}return un}var zy=_ne;function xne(le){return eu(le)?le:[]}var Fy=xne;var bne=ko(function(le){var me=nl(le,Fy);return me.length&&me[0]===le[0]?zy(me):[]}),tR=bne;var wne=ko(function(le){var me=cf(le),Xe=nl(le,Fy);return me===cf(Xe)?me=void 0:Xe.pop(),Xe.length&&Xe[0]===le[0]?zy(Xe,io(me,2)):[]}),rR=wne;var Tne=ko(function(le){var me=cf(le),Xe=nl(le,Fy);return me=typeof me=="function"?me:void 0,me&&Xe.pop(),Xe.length&&Xe[0]===le[0]?zy(Xe,void 0,me):[]}),aR=Tne;function Ane(le,me,Xe,Mt){return lp(le,function(rr,Nr,xa){me(Mt,Xe(rr),Nr,xa)}),Mt}var iR=Ane;function Sne(le,me){return function(Xe,Mt){return iR(Xe,le,me(Mt),{})}}var zw=Sne;var Mne=Object.prototype,Ene=Mne.toString,kne=zw(function(le,me,Xe){me!=null&&typeof me.toString!="function"&&(me=Ene.call(me)),le[me]=Xe},J0(ic)),nR=kne;var oR=Object.prototype,Cne=oR.hasOwnProperty,Lne=oR.toString,Pne=zw(function(le,me,Xe){me!=null&&typeof me.toString!="function"&&(me=Lne.call(me)),Cne.call(le,me)?le[me].push(Xe):le[me]=[Xe]},io),sR=Pne;function Ine(le,me){return me.length<2?le:ud(le,Lf(me,0,-1))}var Fw=Ine;function Rne(le,me,Xe){me=Rp(me,le),le=Fw(le,me);var Mt=le==null?le:le[yh(cf(me))];return Mt==null?void 0:sf(Mt,le,Xe)}var xv=Rne;var Dne=ko(xv),lR=Dne;var zne=ko(function(le,me,Xe){var Mt=-1,rr=typeof me=="function",Nr=gc(le)?Array(le.length):[];return Op(le,function(xa){Nr[++Mt]=rr?sf(me,xa,Xe):xv(xa,me,Xe)}),Nr}),uR=zne;var Fne="[object ArrayBuffer]";function One(le){return ul(le)&&ac(le)==Fne}var cR=One;var fR=np&&np.isArrayBuffer,Bne=fR?uf(fR):cR,hR=Bne;var Nne="[object Boolean]";function Une(le){return le===!0||le===!1||ul(le)&&ac(le)==Nne}var pR=Une;var jne="[object Date]";function Vne(le){return ul(le)&&ac(le)==jne}var dR=Vne;var vR=np&&np.isDate,qne=vR?uf(vR):dR,mR=qne;function Hne(le){return ul(le)&&le.nodeType===1&&!gv(le)}var gR=Hne;var Gne="[object Map]",Wne="[object Set]",Zne=Object.prototype,Xne=Zne.hasOwnProperty;function Yne(le){if(le==null)return!0;if(gc(le)&&(mo(le)||typeof le=="string"||typeof le.splice=="function"||Kp(le)||Ed(le)||dd(le)))return!le.length;var me=Oh(le);if(me==Gne||me==Wne)return!le.size;if(mv(le))return!ay(le).length;for(var Xe in le)if(Xne.call(le,Xe))return!1;return!0}var yR=Yne;function Kne(le,me){return Fm(le,me)}var _R=Kne;function Jne(le,me,Xe){Xe=typeof Xe=="function"?Xe:void 0;var Mt=Xe?Xe(le,me):void 0;return Mt===void 0?Fm(le,me,void 0,Xe):!!Mt}var xR=Jne;var $ne=Kl.isFinite;function Qne(le){return typeof le=="number"&&$ne(le)}var bR=Qne;function eoe(le){return typeof le=="number"&&le==Eo(le)}var Ow=eoe;function toe(le,me){return le===me||Ay(le,me,Sy(me))}var wR=toe;function roe(le,me,Xe){return Xe=typeof Xe=="function"?Xe:void 0,Ay(le,me,Sy(me),Xe)}var TR=roe;var aoe="[object Number]";function ioe(le){return typeof le=="number"||ul(le)&&ac(le)==aoe}var Bw=ioe;function noe(le){return Bw(le)&&le!=+le}var AR=noe;var ooe=W0?tp:ry,SR=ooe;var soe="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.";function loe(le){if(SR(le))throw new Error(soe);return bb(le)}var MR=loe;function uoe(le){return le==null}var ER=uoe;function coe(le){return le===null}var kR=coe;var foe="[object RegExp]";function hoe(le){return ul(le)&&ac(le)==foe}var CR=hoe;var LR=np&&np.isRegExp,poe=LR?uf(LR):CR,Oy=poe;var PR=9007199254740991;function doe(le){return Ow(le)&&le>=-PR&&le<=PR}var IR=doe;function voe(le){return le===void 0}var RR=voe;var moe="[object WeakMap]";function goe(le){return ul(le)&&Oh(le)==moe}var DR=goe;var yoe="[object WeakSet]";function _oe(le){return ul(le)&&ac(le)==yoe}var zR=_oe;var xoe=1;function boe(le){return io(typeof le=="function"?le:sp(le,xoe))}var FR=boe;var woe=Array.prototype,Toe=woe.join;function Aoe(le,me){return le==null?"":Toe.call(le,me)}var OR=Aoe;var Soe=Cd(function(le,me,Xe){return le+(Xe?"-":"")+me.toLowerCase()}),BR=Soe;var Moe=Om(function(le,me,Xe){ip(le,Xe,me)}),NR=Moe;function Eoe(le,me,Xe){for(var Mt=Xe+1;Mt--;)if(le[Mt]===me)return Mt;return Mt}var UR=Eoe;var koe=Math.max,Coe=Math.min;function Loe(le,me,Xe){var Mt=le==null?0:le.length;if(!Mt)return-1;var rr=Mt;return Xe!==void 0&&(rr=Eo(Xe),rr=rr<0?koe(Mt+rr,0):Coe(rr,Mt-1)),me===me?UR(le,me,rr):Am(le,Pb,rr,!0)}var jR=Loe;var Poe=Cd(function(le,me,Xe){return le+(Xe?" ":"")+me.toLowerCase()}),VR=Poe;var Ioe=Hb("toLowerCase"),qR=Ioe;function Roe(le,me){return le<me}var By=Roe;var Doe=jm(By),HR=Doe;var zoe=jm(function(le,me){return le<=me}),GR=zoe;function Foe(le,me){var Xe={};return me=io(me,3),lp(le,function(Mt,rr,Nr){ip(Xe,me(Mt,rr,Nr),Mt)}),Xe}var WR=Foe;function Ooe(le,me){var Xe={};return me=io(me,3),lp(le,function(Mt,rr,Nr){ip(Xe,rr,me(Mt,rr,Nr))}),Xe}var ZR=Ooe;var Boe=1;function Noe(le){return fw(sp(le,Boe))}var XR=Noe;var Uoe=1;function joe(le,me){return pw(le,sp(me,Uoe))}var YR=joe;function Voe(le,me,Xe){for(var Mt=-1,rr=le.length;++Mt<rr;){var Nr=le[Mt],xa=me(Nr);if(xa!=null&&(Ha===void 0?xa===xa&&!_f(xa):Xe(xa,Ha)))var Ha=xa,Za=Nr}return Za}var qm=Voe;function qoe(le){return le&&le.length?qm(le,ic,Ry):void 0}var KR=qoe;function Hoe(le,me){return le&&le.length?qm(le,io(me,2),Ry):void 0}var JR=Hoe;function Goe(le,me){for(var Xe,Mt=-1,rr=le.length;++Mt<rr;){var Nr=me(le[Mt]);Nr!==void 0&&(Xe=Xe===void 0?Nr:Xe+Nr)}return Xe}var Ny=Goe;var Woe=NaN;function Zoe(le,me){var Xe=le==null?0:le.length;return Xe?Ny(le,me)/Xe:Woe}var Nw=Zoe;function Xoe(le){return Nw(le,ic)}var $R=Xoe;function Yoe(le,me){return Nw(le,io(me,2))}var QR=Yoe;var Koe=Md(function(le,me,Xe){Ly(le,me,Xe)}),eD=Koe;var Joe=ko(function(le,me){return function(Xe){return xv(Xe,le,me)}}),tD=Joe;var $oe=ko(function(le,me){return function(Xe){return xv(le,Xe,me)}}),rD=$oe;function Qoe(le){return le&&le.length?qm(le,ic,By):void 0}var aD=Qoe;function ese(le,me){return le&&le.length?qm(le,io(me,2),By):void 0}var iD=ese;function tse(le,me,Xe){var Mt=Gl(me),rr=Um(me,Mt),Nr=!(ll(Xe)&&"chain"in Xe)||!!Xe.chain,xa=tp(le);return zh(rr,function(Ha){var Za=me[Ha];le[Ha]=Za,xa&&(le.prototype[Ha]=function(){var un=this.__chain__;if(Nr||un){var Ji=le(this.__wrapped__),gn=Ji.__actions__=Wc(this.__actions__);return gn.push({func:Za,args:arguments,thisArg:le}),Ji.__chain__=un,Ji}return Za.apply(le,Dp([this.value()],arguments))})}),le}var Uw=tse;var rse=bm(function(le,me){return le*me},1),nD=rse;var ase="Expected a function";function ise(le){if(typeof le!="function")throw new TypeError(ase);return function(){var me=arguments;switch(me.length){case 0:return!le.call(this);case 1:return!le.call(this,me[0]);case 2:return!le.call(this,me[0],me[1]);case 3:return!le.call(this,me[0],me[1],me[2])}return!le.apply(this,me)}}var Gv=ise;function nse(le){for(var me,Xe=[];!(me=le.next()).done;)Xe.push(me.value);return Xe}var oD=nse;var ose="[object Map]",sse="[object Set]",OA=yf?yf.iterator:void 0;function lse(le){if(!le)return[];if(gc(le))return Vm(le)?Fh(le):Wc(le);if(OA&&le[OA])return oD(le[OA]());var me=Oh(le),Xe=me==ose?Ty:me==sse?zm:Ld;return Xe(le)}var jw=lse;function use(){this.__values__===void 0&&(this.__values__=jw(this.value()));var le=this.__index__>=this.__values__.length,me=le?void 0:this.__values__[this.__index__++];return{done:le,value:me}}var sD=use;function cse(le,me){var Xe=le.length;if(Xe)return me+=me<0?Xe:0,rp(me,Xe)?le[me]:void 0}var Vw=cse;function fse(le,me){return le&&le.length?Vw(le,Eo(me)):void 0}var lD=fse;function hse(le){return le=Eo(le),ko(function(me){return Vw(me,le)})}var uD=hse;function pse(le,me){return me=Rp(me,le),le=Fw(le,me),le==null||delete le[yh(cf(me))]}var Uy=pse;function dse(le){return gv(le)?void 0:le}var cD=dse;var vse=1,mse=2,gse=4,yse=op(function(le,me){var Xe={};if(le==null)return Xe;var Mt=!1;me=nl(me,function(Nr){return Nr=Rp(Nr,le),Mt||(Mt=Nr.length>1),Nr}),gh(le,_y(le),Xe),Mt&&(Xe=sp(Xe,vse|mse|gse,cD));for(var rr=me.length;rr--;)Uy(Xe,me[rr]);return Xe}),fD=yse;function _se(le,me,Xe,Mt){if(!ll(le))return le;me=Rp(me,le);for(var rr=-1,Nr=me.length,xa=Nr-1,Ha=le;Ha!=null&&++rr<Nr;){var Za=yh(me[rr]),un=Xe;if(Za==="__proto__"||Za==="constructor"||Za==="prototype")return le;if(rr!=xa){var Ji=Ha[Za];un=Mt?Mt(Ji,Za,Ha):void 0,un===void 0&&(un=ll(Ji)?Ji:rp(me[rr+1])?[]:{})}vv(Ha,Za,un),Ha=Ha[Za]}return le}var bv=_se;function xse(le,me,Xe){for(var Mt=-1,rr=me.length,Nr={};++Mt<rr;){var xa=me[Mt],Ha=ud(le,xa);Xe(Ha,xa)&&bv(Nr,Rp(xa,le),Ha)}return Nr}var qw=xse;function bse(le,me){if(le==null)return{};var Xe=nl(_y(le),function(Mt){return[Mt]});return me=io(me),qw(le,Xe,function(Mt,rr){return me(Mt,rr[0])})}var Hw=bse;function wse(le,me){return Hw(le,Gv(io(me)))}var hD=wse;function Tse(le){return Vb(2,le)}var pD=Tse;function Ase(le,me){var Xe=le.length;for(le.sort(me);Xe--;)le[Xe]=le[Xe].value;return le}var dD=Ase;function Sse(le,me){if(le!==me){var Xe=le!==void 0,Mt=le===null,rr=le===le,Nr=_f(le),xa=me!==void 0,Ha=me===null,Za=me===me,un=_f(me);if(!Ha&&!un&&!Nr&&le>me||Nr&&xa&&Za&&!Ha&&!un||Mt&&xa&&Za||!Xe&&Za||!rr)return 1;if(!Mt&&!Nr&&!un&&le<me||un&&Xe&&rr&&!Mt&&!Nr||Ha&&Xe&&rr||!xa&&rr||!Za)return-1}return 0}var Gw=Sse;function Mse(le,me,Xe){for(var Mt=-1,rr=le.criteria,Nr=me.criteria,xa=rr.length,Ha=Xe.length;++Mt<xa;){var Za=Gw(rr[Mt],Nr[Mt]);if(Za){if(Mt>=Ha)return Za;var un=Xe[Mt];return Za*(un=="desc"?-1:1)}}return le.index-me.index}var vD=Mse;function Ese(le,me,Xe){me.length?me=nl(me,function(Nr){return mo(Nr)?function(xa){return ud(xa,Nr.length===1?Nr[0]:Nr)}:Nr}):me=[ic];var Mt=-1;me=nl(me,uf(io));var rr=Rw(le,function(Nr,xa,Ha){var Za=nl(me,function(un){return un(Nr)});return{criteria:Za,index:++Mt,value:Nr}});return dD(rr,function(Nr,xa){return vD(Nr,xa,Xe)})}var Ww=Ese;function kse(le,me,Xe,Mt){return le==null?[]:(mo(me)||(me=me==null?[]:[me]),Xe=Mt?void 0:Xe,mo(Xe)||(Xe=Xe==null?[]:[Xe]),Ww(le,me,Xe))}var mD=kse;function Cse(le){return op(function(me){return me=nl(me,uf(io)),ko(function(Xe){var Mt=this;return le(me,function(rr){return sf(rr,Mt,Xe)})})})}var jy=Cse;var Lse=jy(nl),gD=Lse;var Pse=ko,yD=Pse;var Ise=Math.min,Rse=yD(function(le,me){me=me.length==1&&mo(me[0])?nl(me[0],uf(io)):nl(wu(me,1),uf(io));var Xe=me.length;return ko(function(Mt){for(var rr=-1,Nr=Ise(Mt.length,Xe);++rr<Nr;)Mt[rr]=me[rr].call(this,Mt[rr]);return sf(le,this,Mt)})}),_D=Rse;var Dse=jy(Mw),xD=Dse;var zse=jy(wy),bD=zse;var Fse=9007199254740991,Ose=Math.floor;function Bse(le,me){var Xe="";if(!le||me<1||me>Fse)return Xe;do me%2&&(Xe+=le),me=Ose(me/2),me&&(le+=le);while(me);return Xe}var d_=Bse;var Nse=Ey("length"),wD=Nse;var AD="\\ud800-\\udfff",Use="\\u0300-\\u036f",jse="\\ufe20-\\ufe2f",Vse="\\u20d0-\\u20ff",qse=Use+jse+Vse,Hse="\\ufe0e\\ufe0f",Gse="["+AD+"]",BA="["+qse+"]",NA="\\ud83c[\\udffb-\\udfff]",Wse="(?:"+BA+"|"+NA+")",SD="[^"+AD+"]",MD="(?:\\ud83c[\\udde6-\\uddff]){2}",ED="[\\ud800-\\udbff][\\udc00-\\udfff]",Zse="\\u200d",kD=Wse+"?",CD="["+Hse+"]?",Xse="(?:"+Zse+"(?:"+[SD,MD,ED].join("|")+")"+CD+kD+")*",Yse=CD+kD+Xse,Kse="(?:"+[SD+BA+"?",BA,MD,ED,Gse].join("|")+")",TD=RegExp(NA+"(?="+NA+")|"+Kse+Yse,"g");function Jse(le){for(var me=TD.lastIndex=0;TD.test(le);)++me;return me}var LD=Jse;function $se(le){return kd(le)?LD(le):wD(le)}var Pd=$se;var Qse=Math.ceil;function ele(le,me){me=me===void 0?" ":Vf(me);var Xe=me.length;if(Xe<2)return Xe?d_(me,le):me;var Mt=d_(me,Qse(le/Pd(me)));return kd(me)?zp(Fh(Mt),0,le).join(""):Mt.slice(0,le)}var qg=ele;var tle=Math.ceil,rle=Math.floor;function ale(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;if(!me||Mt>=me)return le;var rr=(me-Mt)/2;return qg(rle(rr),Xe)+le+qg(tle(rr),Xe)}var PD=ale;function ile(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;return me&&Mt<me?le+qg(me-Mt,Xe):le}var ID=ile;function nle(le,me,Xe){le=ws(le),me=Eo(me);var Mt=me?Pd(le):0;return me&&Mt<me?qg(me-Mt,Xe)+le:le}var RD=nle;var ole=/^\s+/,sle=Kl.parseInt;function lle(le,me,Xe){return Xe||me==null?me=0:me&&(me=+me),sle(ws(le).replace(ole,""),me||0)}var DD=lle;var ule=32,UA=ko(function(le,me){var Xe=Yp(me,Sd(UA));return ap(le,ule,void 0,me,Xe)});UA.placeholder={};var Zw=UA;var cle=64,jA=ko(function(le,me){var Xe=Yp(me,Sd(jA));return ap(le,cle,void 0,me,Xe)});jA.placeholder={};var zD=jA;var fle=Om(function(le,me,Xe){le[Xe?0:1].push(me)},function(){return[[],[]]}),FD=fle;function hle(le,me){return qw(le,me,function(Xe,Mt){return My(le,Mt)})}var OD=hle;var ple=op(function(le,me){return le==null?{}:OD(le,me)}),BD=ple;function dle(le){for(var me,Xe=this;Xe instanceof wm;){var Mt=Eb(Xe);Mt.__index__=0,Mt.__values__=void 0,me?rr.__wrapped__=Mt:me=Mt;var rr=Mt;Xe=Xe.__wrapped__}return rr.__wrapped__=le,me}var ND=dle;function vle(le){return function(me){return le==null?void 0:ud(le,me)}}var UD=vle;function mle(le,me,Xe,Mt){for(var rr=Xe-1,Nr=le.length;++rr<Nr;)if(Mt(le[rr],me))return rr;return-1}var jD=mle;var gle=Array.prototype,VD=gle.splice;function yle(le,me,Xe,Mt){var rr=Mt?jD:Ad,Nr=-1,xa=me.length,Ha=le;for(le===me&&(me=Wc(me)),Xe&&(Ha=nl(le,uf(Xe)));++Nr<xa;)for(var Za=0,un=me[Nr],Ji=Xe?Xe(un):un;(Za=rr(Ha,Ji,Za,Mt))>-1;)Ha!==le&&VD.call(Ha,Za,1),VD.call(le,Za,1);return le}var Vy=yle;function _le(le,me){return le&&le.length&&me&&me.length?Vy(le,me):le}var Xw=_le;var xle=ko(Xw),qD=xle;function ble(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,io(Xe,2)):le}var HD=ble;function wle(le,me,Xe){return le&&le.length&&me&&me.length?Vy(le,me,void 0,Xe):le}var GD=wle;var Tle=Array.prototype,Ale=Tle.splice;function Sle(le,me){for(var Xe=le?me.length:0,Mt=Xe-1;Xe--;){var rr=me[Xe];if(Xe==Mt||rr!==Nr){var Nr=rr;rp(rr)?Ale.call(le,rr,1):Uy(le,rr)}}return le}var Yw=Sle;var Mle=op(function(le,me){var Xe=le==null?0:le.length,Mt=uy(le,me);return Yw(le,nl(me,function(rr){return rp(rr,Xe)?+rr:rr}).sort(Gw)),Mt}),WD=Mle;var Ele=Math.floor,kle=Math.random;function Cle(le,me){return le+Ele(kle()*(me-le+1))}var qy=Cle;var Lle=parseFloat,Ple=Math.min,Ile=Math.random;function Rle(le,me,Xe){if(Xe&&typeof Xe!="boolean"&&nc(le,me,Xe)&&(me=Xe=void 0),Xe===void 0&&(typeof me=="boolean"?(Xe=me,me=void 0):typeof le=="boolean"&&(Xe=le,le=void 0)),le===void 0&&me===void 0?(le=0,me=1):(le=sd(le),me===void 0?(me=le,le=0):me=sd(me)),le>me){var Mt=le;le=me,me=Mt}if(Xe||le%1||me%1){var rr=Ile();return Ple(le+rr*(me-le+Lle("1e-"+((rr+"").length-1))),me)}return qy(le,me)}var ZD=Rle;var Dle=Math.ceil,zle=Math.max;function Fle(le,me,Xe,Mt){for(var rr=-1,Nr=zle(Dle((me-le)/(Xe||1)),0),xa=Array(Nr);Nr--;)xa[Mt?Nr:++rr]=le,le+=Xe;return xa}var XD=Fle;function Ole(le){return function(me,Xe,Mt){return Mt&&typeof Mt!="number"&&nc(me,Xe,Mt)&&(Xe=Mt=void 0),me=sd(me),Xe===void 0?(Xe=me,me=0):Xe=sd(Xe),Mt=Mt===void 0?me<Xe?1:-1:sd(Mt),XD(me,Xe,Mt,le)}}var Kw=Ole;var Ble=Kw(),YD=Ble;var Nle=Kw(!0),KD=Nle;var Ule=256,jle=op(function(le,me){return ap(le,Ule,void 0,void 0,void 0,me)}),JD=jle;function Vle(le,me,Xe,Mt,rr){return rr(le,function(Nr,xa,Ha){Xe=Mt?(Mt=!1,Nr):me(Xe,Nr,xa,Ha)}),Xe}var Jw=Vle;function qle(le,me,Xe){var Mt=mo(le)?hy:Jw,rr=arguments.length<3;return Mt(le,io(me,4),Xe,rr,Op)}var $D=qle;function Hle(le,me,Xe,Mt){var rr=le==null?0:le.length;for(Mt&&rr&&(Xe=le[--rr]);rr--;)Xe=me(Xe,le[rr],rr,le);return Xe}var QD=Hle;function Gle(le,me,Xe){var Mt=mo(le)?QD:Jw,rr=arguments.length<3;return Mt(le,io(me,4),Xe,rr,Tw)}var ez=Gle;function Wle(le,me){var Xe=mo(le)?Fp:kw;return Xe(le,Gv(io(me,3)))}var tz=Wle;function Zle(le,me){var Xe=[];if(!(le&&le.length))return Xe;var Mt=-1,rr=[],Nr=le.length;for(me=io(me,3);++Mt<Nr;){var xa=le[Mt];me(xa,Mt,le)&&(Xe.push(xa),rr.push(Mt))}return Yw(le,rr),Xe}var rz=Zle;function Xle(le,me,Xe){return(Xe?nc(le,me,Xe):me===void 0)?me=1:me=Eo(me),d_(ws(le),me)}var az=Xle;function Yle(){var le=arguments,me=ws(le[0]);return le.length<3?me:me.replace(le[1],le[2])}var iz=Yle;var Kle="Expected a function";function Jle(le,me){if(typeof le!="function")throw new TypeError(Kle);return me=me===void 0?me:Eo(me),ko(le,me)}var nz=Jle;function $le(le,me,Xe){me=Rp(me,le);var Mt=-1,rr=me.length;for(rr||(rr=1,le=void 0);++Mt<rr;){var Nr=le?.[yh(me[Mt])];Nr===void 0&&(Mt=rr,Nr=Xe),le=tp(Nr)?Nr.call(le):Nr}return le}var oz=$le;var Qle=Array.prototype,eue=Qle.reverse;function tue(le){return le==null?le:eue.call(le)}var v_=tue;var rue=vy("round"),sz=rue;function aue(le){var me=le.length;return me?le[qy(0,me-1)]:void 0}var $w=aue;function iue(le){return $w(Ld(le))}var lz=iue;function nue(le){var me=mo(le)?$w:lz;return me(le)}var uz=nue;function oue(le,me){var Xe=-1,Mt=le.length,rr=Mt-1;for(me=me===void 0?Mt:me;++Xe<me;){var Nr=qy(Xe,rr),xa=le[Nr];le[Nr]=le[Xe],le[Xe]=xa}return le.length=me,le}var Hm=oue;function sue(le,me){return Hm(Wc(le),cd(me,0,le.length))}var cz=sue;function lue(le,me){var Xe=Ld(le);return Hm(Xe,cd(me,0,Xe.length))}var fz=lue;function uue(le,me,Xe){(Xe?nc(le,me,Xe):me===void 0)?me=1:me=Eo(me);var Mt=mo(le)?cz:fz;return Mt(le,me)}var hz=uue;function cue(le,me,Xe){return le==null?le:bv(le,me,Xe)}var pz=cue;function fue(le,me,Xe,Mt){return Mt=typeof Mt=="function"?Mt:void 0,le==null?le:bv(le,me,Xe,Mt)}var dz=fue;function hue(le){return Hm(Wc(le))}var vz=hue;function pue(le){return Hm(Ld(le))}var mz=pue;function due(le){var me=mo(le)?vz:mz;return me(le)}var gz=due;var vue="[object Map]",mue="[object Set]";function gue(le){if(le==null)return 0;if(gc(le))return Vm(le)?Pd(le):le.length;var me=Oh(le);return me==vue||me==mue?le.size:ay(le).length}var yz=gue;function yue(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(Xe&&typeof Xe!="number"&&nc(le,me,Xe)?(me=0,Xe=Mt):(me=me==null?0:Eo(me),Xe=Xe===void 0?Mt:Eo(Xe)),Lf(le,me,Xe)):[]}var _z=yue;var _ue=Cd(function(le,me,Xe){return le+(Xe?"_":"")+me.toLowerCase()}),xz=_ue;function xue(le,me){var Xe;return Op(le,function(Mt,rr,Nr){return Xe=me(Mt,rr,Nr),!Xe}),!!Xe}var bz=xue;function bue(le,me,Xe){var Mt=mo(le)?wy:bz;return Xe&&nc(le,me,Xe)&&(me=void 0),Mt(le,io(me,3))}var wz=bue;var wue=ko(function(le,me){if(le==null)return[];var Xe=me.length;return Xe>1&&nc(le,me[0],me[1])?me=[]:Xe>2&&nc(me[0],me[1],me[2])&&(me=[me[0]]),Ww(le,wu(me,1),[])}),Tz=wue;var Tue=4294967295,Aue=Tue-1,Sue=Math.floor,Mue=Math.min;function Eue(le,me,Xe,Mt){var rr=0,Nr=le==null?0:le.length;if(Nr===0)return 0;me=Xe(me);for(var xa=me!==me,Ha=me===null,Za=_f(me),un=me===void 0;rr<Nr;){var Ji=Sue((rr+Nr)/2),gn=Xe(le[Ji]),wo=gn!==void 0,ps=gn===null,Qn=gn===gn,Ye=_f(gn);if(xa)var Ps=Mt||Qn;else un?Ps=Qn&&(Mt||wo):Ha?Ps=Qn&&wo&&(Mt||!ps):Za?Ps=Qn&&wo&&!ps&&(Mt||!Ye):ps||Ye?Ps=!1:Ps=Mt?gn<=me:gn<me;Ps?rr=Ji+1:Nr=Ji}return Mue(Nr,Aue)}var Hy=Eue;var kue=4294967295,Cue=kue>>>1;function Lue(le,me,Xe){var Mt=0,rr=le==null?Mt:le.length;if(typeof me=="number"&&me===me&&rr<=Cue){for(;Mt<rr;){var Nr=Mt+rr>>>1,xa=le[Nr];xa!==null&&!_f(xa)&&(Xe?xa<=me:xa<me)?Mt=Nr+1:rr=Nr}return rr}return Hy(le,me,ic,Xe)}var Gm=Lue;function Pue(le,me){return Gm(le,me)}var Az=Pue;function Iue(le,me,Xe){return Hy(le,me,io(Xe,2))}var Sz=Iue;function Rue(le,me){var Xe=le==null?0:le.length;if(Xe){var Mt=Gm(le,me);if(Mt<Xe&&qf(le[Mt],me))return Mt}return-1}var Mz=Rue;function Due(le,me){return Gm(le,me,!0)}var Ez=Due;function zue(le,me,Xe){return Hy(le,me,io(Xe,2),!0)}var kz=zue;function Fue(le,me){var Xe=le==null?0:le.length;if(Xe){var Mt=Gm(le,me,!0)-1;if(qf(le[Mt],me))return Mt}return-1}var Cz=Fue;function Oue(le,me){for(var Xe=-1,Mt=le.length,rr=0,Nr=[];++Xe<Mt;){var xa=le[Xe],Ha=me?me(xa):xa;if(!Xe||!qf(Ha,Za)){var Za=Ha;Nr[rr++]=xa===0?0:xa}}return Nr}var Qw=Oue;function Bue(le){return le&&le.length?Qw(le):[]}var Lz=Bue;function Nue(le,me){return le&&le.length?Qw(le,io(me,2)):[]}var Pz=Nue;var Uue=4294967295;function jue(le,me,Xe){return Xe&&typeof Xe!="number"&&nc(le,me,Xe)&&(me=Xe=void 0),Xe=Xe===void 0?Uue:Xe>>>0,Xe?(le=ws(le),le&&(typeof me=="string"||me!=null&&!Oy(me))&&(me=Vf(me),!me&&kd(le))?zp(Fh(le),0,Xe):le.split(me,Xe)):[]}var Iz=jue;var Vue="Expected a function",que=Math.max;function Hue(le,me){if(typeof le!="function")throw new TypeError(Vue);return me=me==null?0:que(Eo(me),0),ko(function(Xe){var Mt=Xe[me],rr=zp(Xe,0,me);return Mt&&Dp(rr,Mt),sf(le,this,rr)})}var Rz=Hue;var Gue=Cd(function(le,me,Xe){return le+(Xe?" ":"")+fy(me)}),Dz=Gue;function Wue(le,me,Xe){return le=ws(le),Xe=Xe==null?0:cd(Eo(Xe),0,le.length),me=Vf(me),le.slice(Xe,Xe+me.length)==me}var zz=Wue;function Zue(){return{}}var Fz=Zue;function Xue(){return""}var Oz=Xue;function Yue(){return!0}var Bz=Yue;var Kue=bm(function(le,me){return le-me},0),Nz=Kue;function Jue(le){return le&&le.length?Ny(le,ic):0}var Uz=Jue;function $ue(le,me){return le&&le.length?Ny(le,io(me,2)):0}var jz=$ue;function Que(le){var me=le==null?0:le.length;return me?Lf(le,1,me):[]}var Vz=Que;function ece(le,me,Xe){return le&&le.length?(me=Xe||me===void 0?1:Eo(me),Lf(le,0,me<0?0:me)):[]}var qz=ece;function tce(le,me,Xe){var Mt=le==null?0:le.length;return Mt?(me=Xe||me===void 0?1:Eo(me),me=Mt-me,Lf(le,me<0?0:me,Mt)):[]}var Hz=tce;function rce(le,me){return le&&le.length?Bm(le,io(me,3),!1,!0):[]}var Gz=rce;function ace(le,me){return le&&le.length?Bm(le,io(me,3)):[]}var Wz=ace;function ice(le,me){return me(le),le}var Zz=ice;var Xz=Object.prototype,nce=Xz.hasOwnProperty;function oce(le,me,Xe,Mt){return le===void 0||qf(le,Xz[Xe])&&!nce.call(Mt,Xe)?me:le}var VA=oce;var sce={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"};function lce(le){return"\\"+sce[le]}var Yz=lce;var uce=/<%=([\s\S]+?)%>/g,e2=uce;var cce=/<%-([\s\S]+?)%>/g,Kz=cce;var fce=/<%([\s\S]+?)%>/g,Jz=fce;var hce={escape:Kz,evaluate:Jz,interpolate:e2,variable:"",imports:{_:{escape:Sw}}},m_=hce;var pce="Invalid `variable` option passed into `_.template`",dce=/\b__p \+= '';/g,vce=/\b(__p \+=) '' \+/g,mce=/(__e\(.*?\)|\b__t\)) \+\n'';/g,gce=/[()=,{}\[\]\/\s]/,yce=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,t2=/($^)/,_ce=/['\n\r\u2028\u2029\\]/g,xce=Object.prototype,$z=xce.hasOwnProperty;function bce(le,me,Xe){var Mt=m_.imports._.templateSettings||m_;Xe&&nc(le,me,Xe)&&(me=void 0),le=ws(le),me=Em({},me,Mt,VA);var rr=Em({},me.imports,Mt.imports,VA),Nr=Gl(rr),xa=Dy(rr,Nr),Ha,Za,un=0,Ji=me.interpolate||t2,gn="__p += '",wo=RegExp((me.escape||t2).source+"|"+Ji.source+"|"+(Ji===e2?yce:t2).source+"|"+(me.evaluate||t2).source+"|$","g"),ps=$z.call(me,"sourceURL")?"//# sourceURL="+(me.sourceURL+"").replace(/\s/g," ")+`
+`:"";le.replace(wo,function(Ps,Ml,Ul,Hf,xh,Bp){return Ul||(Ul=Hf),gn+=le.slice(un,Bp).replace(_ce,Yz),Ml&&(Ha=!0,gn+=`' +
+__e(`+Ml+`) +
+'`),xh&&(Za=!0,gn+=`';
+`+xh+`;
+__p += '`),Ul&&(gn+=`' +
+((__t = (`+Ul+`)) == null ? '' : __t) +
+'`),un=Bp+Ps.length,Ps}),gn+=`';
+`;var Qn=$z.call(me,"variable")&&me.variable;if(!Qn)gn=`with (obj) {
+`+gn+`
+}
+`;else if(gce.test(Qn))throw new Error(pce);gn=(Za?gn.replace(dce,""):gn).replace(vce,"$1").replace(mce,"$1;"),gn="function("+(Qn||"obj")+`) {
+`+(Qn?"":`obj || (obj = {});
+`)+"var __t, __p = ''"+(Ha?", __e = _.escape":"")+(Za?`, __j = Array.prototype.join;
+function print() { __p += __j.call(arguments, '') }
+`:`;
+`)+gn+`return __p
+}`;var Ye=jb(function(){return Function(Nr,ps+"return "+gn).apply(void 0,xa)});if(Ye.source=gn,cy(Ye))throw Ye;return Ye}var Qz=bce;var wce="Expected a function";function Tce(le,me,Xe){var Mt=!0,rr=!0;if(typeof le!="function")throw new TypeError(wce);return ll(Xe)&&(Mt="leading"in Xe?!!Xe.leading:Mt,rr="trailing"in Xe?!!Xe.trailing:rr),yw(le,me,{leading:Mt,maxWait:me,trailing:rr})}var e8=Tce;function Ace(le,me){return me(le)}var Wv=Ace;var Sce=9007199254740991,qA=4294967295,Mce=Math.min;function Ece(le,me){if(le=Eo(le),le<1||le>Sce)return[];var Xe=qA,Mt=Mce(le,qA);me=_h(me),le-=qA;for(var rr=ty(Mt,me);++Xe<le;)me(Xe);return rr}var t8=Ece;function kce(){return this}var r8=kce;function Cce(le,me){var Xe=le;return Xe instanceof dl&&(Xe=Xe.value()),hy(me,function(Mt,rr){return rr.func.apply(rr.thisArg,Dp([Mt],rr.args))},Xe)}var r2=Cce;function Lce(){return r2(this.__wrapped__,this.__actions__)}var Wm=Lce;function Pce(le){return ws(le).toLowerCase()}var a8=Pce;function Ice(le){return mo(le)?nl(le,yh):_f(le)?[le]:Wc(Nb(ws(le)))}var i8=Ice;var n8=9007199254740991;function Rce(le){return le?cd(Eo(le),-n8,n8):le===0?le:0}var o8=Rce;function Dce(le){return ws(le).toUpperCase()}var s8=Dce;function zce(le,me,Xe){var Mt=mo(le),rr=Mt||Kp(le)||Ed(le);if(me=io(me,4),Xe==null){var Nr=le&&le.constructor;rr?Xe=Mt?new Nr:[]:ll(le)?Xe=tp(Nr)?Td(Im(le)):{}:Xe={}}return(rr?zh:lp)(le,function(xa,Ha,Za){return me(Xe,xa,Ha,Za)}),Xe}var l8=zce;function Fce(le,me){for(var Xe=le.length;Xe--&&Ad(me,le[Xe],0)>-1;);return Xe}var a2=Fce;function Oce(le,me){for(var Xe=-1,Mt=le.length;++Xe<Mt&&Ad(me,le[Xe],0)>-1;);return Xe}var i2=Oce;function Bce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return xb(le);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=Fh(me),Nr=i2(Mt,rr),xa=a2(Mt,rr)+1;return zp(Mt,Nr,xa).join("")}var u8=Bce;function Nce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.slice(0,_b(le)+1);if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=a2(Mt,Fh(me))+1;return zp(Mt,0,rr).join("")}var c8=Nce;var Uce=/^\s+/;function jce(le,me,Xe){if(le=ws(le),le&&(Xe||me===void 0))return le.replace(Uce,"");if(!le||!(me=Vf(me)))return le;var Mt=Fh(le),rr=i2(Mt,Fh(me));return zp(Mt,rr).join("")}var f8=jce;var Vce=30,qce="...",Hce=/\w*$/;function Gce(le,me){var Xe=Vce,Mt=qce;if(ll(me)){var rr="separator"in me?me.separator:rr;Xe="length"in me?Eo(me.length):Xe,Mt="omission"in me?Vf(me.omission):Mt}le=ws(le);var Nr=le.length;if(kd(le)){var xa=Fh(le);Nr=xa.length}if(Xe>=Nr)return le;var Ha=Xe-Pd(Mt);if(Ha<1)return Mt;var Za=xa?zp(xa,0,Ha).join(""):le.slice(0,Ha);if(rr===void 0)return Za+Mt;if(xa&&(Ha+=Za.length-Ha),Oy(rr)){if(le.slice(Ha).search(rr)){var un,Ji=Za;for(rr.global||(rr=RegExp(rr.source,ws(Hce.exec(rr))+"g")),rr.lastIndex=0;un=rr.exec(Ji);)var gn=un.index;Za=Za.slice(0,gn===void 0?Ha:gn)}}else if(le.indexOf(Vf(rr),Ha)!=Ha){var wo=Za.lastIndexOf(rr);wo>-1&&(Za=Za.slice(0,wo))}return Za+Mt}var h8=Gce;function Wce(le){return Db(le,1)}var p8=Wce;var Zce={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},Xce=py(Zce),d8=Xce;var v8=/&(?:amp|lt|gt|quot|#39);/g,Yce=RegExp(v8.source);function Kce(le){return le=ws(le),le&&Yce.test(le)?le.replace(v8,d8):le}var m8=Kce;var Jce=1/0,$ce=Rm&&1/zm(new Rm([,-0]))[1]==Jce?function(le){return new Rm(le)}:X0,g8=$ce;var Qce=200;function efe(le,me,Xe){var Mt=-1,rr=Sm,Nr=le.length,xa=!0,Ha=[],Za=Ha;if(Xe)xa=!1,rr=Py;else if(Nr>=Qce){var un=me?null:g8(le);if(un)return zm(un);xa=!1,rr=Hv,Za=new Dm}else Za=me?[]:Ha;e:for(;++Mt<Nr;){var Ji=le[Mt],gn=me?me(Ji):Ji;if(Ji=Xe||Ji!==0?Ji:0,xa&&gn===gn){for(var wo=Za.length;wo--;)if(Za[wo]===gn)continue e;me&&Za.push(gn),Ha.push(Ji)}else rr(Za,gn,Xe)||(Za!==Ha&&Za.push(gn),Ha.push(Ji))}return Ha}var Jp=efe;var tfe=ko(function(le){return Jp(wu(le,1,eu,!0))}),y8=tfe;var rfe=ko(function(le){var me=cf(le);return eu(me)&&(me=void 0),Jp(wu(le,1,eu,!0),io(me,2))}),_8=rfe;var afe=ko(function(le){var me=cf(le);return me=typeof me=="function"?me:void 0,Jp(wu(le,1,eu,!0),void 0,me)}),x8=afe;function ife(le){return le&&le.length?Jp(le):[]}var b8=ife;function nfe(le,me){return le&&le.length?Jp(le,io(me,2)):[]}var w8=nfe;function ofe(le,me){return me=typeof me=="function"?me:void 0,le&&le.length?Jp(le,void 0,me):[]}var T8=ofe;var sfe=0;function lfe(le){var me=++sfe;return ws(le)+me}var A8=lfe;function ufe(le,me){return le==null?!0:Uy(le,me)}var S8=ufe;var cfe=Math.max;function ffe(le){if(!(le&&le.length))return[];var me=0;return le=Fp(le,function(Xe){if(eu(Xe))return me=cfe(Xe.length,me),!0}),ty(me,function(Xe){return nl(le,Ey(Xe))})}var Gy=ffe;function hfe(le,me){if(!(le&&le.length))return[];var Xe=Gy(le);return me==null?Xe:nl(Xe,function(Mt){return sf(me,void 0,Mt)})}var n2=hfe;function pfe(le,me,Xe,Mt){return bv(le,me,Xe(ud(le,me)),Mt)}var o2=pfe;function dfe(le,me,Xe){return le==null?le:o2(le,me,_h(Xe))}var M8=dfe;function vfe(le,me,Xe,Mt){return Mt=typeof Mt=="function"?Mt:void 0,le==null?le:o2(le,me,_h(Xe),Mt)}var E8=vfe;var mfe=Cd(function(le,me,Xe){return le+(Xe?" ":"")+me.toUpperCase()}),k8=mfe;function gfe(le){return le==null?[]:Dy(le,yc(le))}var C8=gfe;var yfe=ko(function(le,me){return eu(le)?_v(le,me):[]}),L8=yfe;function _fe(le,me){return Zw(_h(me),le)}var P8=_fe;var xfe=op(function(le){var me=le.length,Xe=me?le[0]:0,Mt=this.__wrapped__,rr=function(Nr){return uy(Nr,le)};return me>1||this.__actions__.length||!(Mt instanceof dl)||!rp(Xe)?this.thru(rr):(Mt=Mt.slice(Xe,+Xe+(me?1:0)),Mt.__actions__.push({func:Wv,args:[rr],thisArg:void 0}),new Ip(Mt,this.__chain__).thru(function(Nr){return me&&!Nr.length&&Nr.push(void 0),Nr}))}),I8=xfe;function bfe(){return Xb(this)}var R8=bfe;function wfe(){var le=this.__wrapped__;if(le instanceof dl){var me=le;return this.__actions__.length&&(me=new dl(this)),me=me.reverse(),me.__actions__.push({func:Wv,args:[v_],thisArg:void 0}),new Ip(me,this.__chain__)}return this.thru(v_)}var D8=wfe;function Tfe(le,me,Xe){var Mt=le.length;if(Mt<2)return Mt?Jp(le[0]):[];for(var rr=-1,Nr=Array(Mt);++rr<Mt;)for(var xa=le[rr],Ha=-1;++Ha<Mt;)Ha!=rr&&(Nr[rr]=_v(Nr[rr]||xa,le[Ha],me,Xe));return Jp(wu(Nr,1),me,Xe)}var Wy=Tfe;var Afe=ko(function(le){return Wy(Fp(le,eu))}),z8=Afe;var Sfe=ko(function(le){var me=cf(le);return eu(me)&&(me=void 0),Wy(Fp(le,eu),io(me,2))}),F8=Sfe;var Mfe=ko(function(le){var me=cf(le);return me=typeof me=="function"?me:void 0,Wy(Fp(le,eu),void 0,me)}),O8=Mfe;var Efe=ko(Gy),B8=Efe;function kfe(le,me,Xe){for(var Mt=-1,rr=le.length,Nr=me.length,xa={};++Mt<rr;){var Ha=Mt<Nr?me[Mt]:void 0;Xe(xa,le[Mt],Ha)}return xa}var s2=kfe;function Cfe(le,me){return s2(le||[],me||[],vv)}var N8=Cfe;function Lfe(le,me){return s2(le||[],me||[],bv)}var U8=Lfe;var Pfe=ko(function(le){var me=le.length,Xe=me>1?le[me-1]:void 0;return Xe=typeof Xe=="function"?(le.pop(),Xe):void 0,n2(le,Xe)}),j8=Pfe;var is={chunk:NP,compact:A6,concat:S6,difference:iI,differenceBy:nI,differenceWith:oI,drop:lI,dropRight:uI,dropRightWhile:cI,dropWhile:fI,fill:TI,findIndex:Lw,findLastIndex:Iw,first:p_,flatten:Ub,flattenDeep:II,flattenDepth:RI,fromPairs:VI,head:p_,indexOf:QI,initial:eR,intersection:tR,intersectionBy:rR,intersectionWith:aR,join:OR,last:cf,lastIndexOf:jR,nth:lD,pull:qD,pullAll:Xw,pullAllBy:HD,pullAllWith:GD,pullAt:WD,remove:rz,reverse:v_,slice:_z,sortedIndex:Az,sortedIndexBy:Sz,sortedIndexOf:Mz,sortedLastIndex:Ez,sortedLastIndexBy:kz,sortedLastIndexOf:Cz,sortedUniq:Lz,sortedUniqBy:Pz,tail:Vz,take:qz,takeRight:Hz,takeRightWhile:Gz,takeWhile:Wz,union:y8,unionBy:_8,unionWith:x8,uniq:b8,uniqBy:w8,uniqWith:T8,unzip:Gy,unzipWith:n2,without:L8,xor:z8,xorBy:F8,xorWith:O8,zip:B8,zipObject:N8,zipObjectDeep:U8,zipWith:j8};var Hu={countBy:H6,each:u_,eachRight:c_,every:bI,filter:AI,find:SI,findLast:EI,flatMap:CI,flatMapDeep:LI,flatMapDepth:PI,forEach:u_,forEachRight:c_,groupBy:GI,includes:$I,invokeMap:uR,keyBy:NR,map:Nm,orderBy:mD,partition:FD,reduce:$D,reduceRight:ez,reject:tz,sample:uz,sampleSize:hz,shuffle:gz,size:yz,some:wz,sortBy:Tz};var HA={now:Cy};var xf={after:$C,ary:Db,before:Vb,bind:qb,bindKey:oP,curry:W6,curryRight:Z6,debounce:yw,defer:rI,delay:aI,flip:DI,memoize:Bb,negate:Gv,once:pD,overArgs:_D,partial:Zw,partialRight:zD,rearg:JD,rest:nz,spread:Rz,throttle:e8,unary:p8,wrap:P8};var Es={castArray:OP,clone:_6,cloneDeep:x6,cloneDeepWith:b6,cloneWith:w6,conformsTo:j6,eq:qf,gt:WI,gte:ZI,isArguments:dd,isArray:mo,isArrayBuffer:hR,isArrayLike:gc,isArrayLikeObject:eu,isBoolean:pR,isBuffer:Kp,isDate:mR,isElement:gR,isEmpty:yR,isEqual:_R,isEqualWith:xR,isError:cy,isFinite:bR,isFunction:tp,isInteger:Ow,isLength:Mm,isMap:aw,isMatch:wR,isMatchWith:TR,isNaN:AR,isNative:MR,isNil:ER,isNull:kR,isNumber:Bw,isObject:ll,isObjectLike:ul,isPlainObject:gv,isRegExp:Oy,isSafeInteger:IR,isSet:iw,isString:Vm,isSymbol:_f,isTypedArray:Ed,isUndefined:RR,isWeakMap:DR,isWeakSet:zR,lt:HR,lte:GR,toArray:jw,toFinite:sd,toInteger:Eo,toLength:Ew,toNumber:mh,toPlainObject:_w,toSafeInteger:o8,toString:ws};var _p={add:YC,ceil:BP,divide:sI,floor:zI,max:KR,maxBy:JR,mean:$R,meanBy:QR,min:aD,minBy:iD,multiply:nD,round:sz,subtract:Nz,sum:Uz,sumBy:jz};var g_={clamp:UP,inRange:JI,random:ZD};var Js={assign:RL,assignIn:n_,assignInWith:Em,assignWith:FL,at:aP,create:G6,defaults:K6,defaultsDeep:tI,entries:f_,entriesIn:h_,extend:n_,extendWith:Em,findKey:MI,findLastKey:kI,forIn:BI,forInRight:NI,forOwn:UI,forOwnRight:jI,functions:qI,functionsIn:HI,get:ly,has:YI,hasIn:My,invert:nR,invertBy:sR,invoke:lR,keys:Gl,keysIn:yc,mapKeys:WR,mapValues:ZR,merge:eD,mergeWith:xw,omit:fD,omitBy:hD,pick:BD,pickBy:Hw,result:oz,set:pz,setWith:dz,toPairs:f_,toPairsIn:h_,transform:l8,unset:S8,update:M8,updateWith:E8,values:Ld,valuesIn:C8};var Id={at:I8,chain:Xb,commit:T6,lodash:ua,next:sD,plant:ND,reverse:D8,tap:Zz,thru:Wv,toIterator:r8,toJSON:Wm,value:Wm,valueOf:Wm,wrapperChain:R8};var du={camelCase:FP,capitalize:Gb,deburr:Wb,endsWith:pI,escape:Sw,escapeRegExp:_I,kebabCase:BR,lowerCase:VR,lowerFirst:qR,pad:PD,padEnd:ID,padStart:RD,parseInt:DD,repeat:az,replace:iz,snakeCase:xz,split:Iz,startCase:Dz,startsWith:zz,template:Qz,templateSettings:m_,toLower:a8,toUpper:s8,trim:u8,trimEnd:c8,trimStart:f8,truncate:h8,unescape:m8,upperCase:k8,upperFirst:fy,words:Zb};var Tu={attempt:jb,bindAll:nP,cond:B6,conforms:U6,constant:J0,defaultTo:X6,flow:FI,flowRight:OI,identity:ic,iteratee:FR,matches:XR,matchesProperty:YR,method:tD,methodOf:rD,mixin:Uw,noop:X0,nthArg:uD,over:gD,overEvery:xD,overSome:bD,property:dw,propertyOf:UD,range:YD,rangeRight:KD,stubArray:gy,stubFalse:ry,stubObject:Fz,stubString:Oz,stubTrue:Bz,times:t8,toPath:i8,uniqueId:A8};function Ife(){var le=new dl(this.__wrapped__);return le.__actions__=Wc(this.__actions__),le.__dir__=this.__dir__,le.__filtered__=this.__filtered__,le.__iteratees__=Wc(this.__iteratees__),le.__takeCount__=this.__takeCount__,le.__views__=Wc(this.__views__),le}var V8=Ife;function Rfe(){if(this.__filtered__){var le=new dl(this);le.__dir__=-1,le.__filtered__=!0}else le=this.clone(),le.__dir__*=-1;return le}var q8=Rfe;var Dfe=Math.max,zfe=Math.min;function Ffe(le,me,Xe){for(var Mt=-1,rr=Xe.length;++Mt<rr;){var Nr=Xe[Mt],xa=Nr.size;switch(Nr.type){case"drop":le+=xa;break;case"dropRight":me-=xa;break;case"take":me=zfe(me,le+xa);break;case"takeRight":le=Dfe(le,me-xa);break}}return{start:le,end:me}}var H8=Ffe;var Ofe=1,Bfe=2,Nfe=Math.min;function Ufe(){var le=this.__wrapped__.value(),me=this.__dir__,Xe=mo(le),Mt=me<0,rr=Xe?le.length:0,Nr=H8(0,rr,this.__views__),xa=Nr.start,Ha=Nr.end,Za=Ha-xa,un=Mt?Ha:xa-1,Ji=this.__iteratees__,gn=Ji.length,wo=0,ps=Nfe(Za,this.__takeCount__);if(!Xe||!Mt&&rr==Za&&ps==Za)return r2(le,this.__actions__);var Qn=[];e:for(;Za--&&wo<ps;){un+=me;for(var Ye=-1,Ps=le[un];++Ye<gn;){var Ml=Ji[Ye],Ul=Ml.iteratee,Hf=Ml.type,xh=Ul(Ps);if(Hf==Bfe)Ps=xh;else if(!xh){if(Hf==Ofe)continue e;break e}}Qn[wo++]=Ps}return Qn}var G8=Ufe;var jfe="4.17.21",Vfe=2,qfe=1,Hfe=3,X8=4294967295,Gfe=Array.prototype,Wfe=Object.prototype,Y8=Wfe.hasOwnProperty,W8=yf?yf.iterator:void 0,Zfe=Math.max,Z8=Math.min,GA=function(le){return function(me,Xe,Mt){if(Mt==null){var rr=ll(Xe),Nr=rr&&Gl(Xe),xa=Nr&&Nr.length&&Um(Xe,Nr);(xa?xa.length:rr)||(Mt=Xe,Xe=me,me=this)}return le(me,Xe,Mt)}}(Uw);ua.after=xf.after;ua.ary=xf.ary;ua.assign=Js.assign;ua.assignIn=Js.assignIn;ua.assignInWith=Js.assignInWith;ua.assignWith=Js.assignWith;ua.at=Js.at;ua.before=xf.before;ua.bind=xf.bind;ua.bindAll=Tu.bindAll;ua.bindKey=xf.bindKey;ua.castArray=Es.castArray;ua.chain=Id.chain;ua.chunk=is.chunk;ua.compact=is.compact;ua.concat=is.concat;ua.cond=Tu.cond;ua.conforms=Tu.conforms;ua.constant=Tu.constant;ua.countBy=Hu.countBy;ua.create=Js.create;ua.curry=xf.curry;ua.curryRight=xf.curryRight;ua.debounce=xf.debounce;ua.defaults=Js.defaults;ua.defaultsDeep=Js.defaultsDeep;ua.defer=xf.defer;ua.delay=xf.delay;ua.difference=is.difference;ua.differenceBy=is.differenceBy;ua.differenceWith=is.differenceWith;ua.drop=is.drop;ua.dropRight=is.dropRight;ua.dropRightWhile=is.dropRightWhile;ua.dropWhile=is.dropWhile;ua.fill=is.fill;ua.filter=Hu.filter;ua.flatMap=Hu.flatMap;ua.flatMapDeep=Hu.flatMapDeep;ua.flatMapDepth=Hu.flatMapDepth;ua.flatten=is.flatten;ua.flattenDeep=is.flattenDeep;ua.flattenDepth=is.flattenDepth;ua.flip=xf.flip;ua.flow=Tu.flow;ua.flowRight=Tu.flowRight;ua.fromPairs=is.fromPairs;ua.functions=Js.functions;ua.functionsIn=Js.functionsIn;ua.groupBy=Hu.groupBy;ua.initial=is.initial;ua.intersection=is.intersection;ua.intersectionBy=is.intersectionBy;ua.intersectionWith=is.intersectionWith;ua.invert=Js.invert;ua.invertBy=Js.invertBy;ua.invokeMap=Hu.invokeMap;ua.iteratee=Tu.iteratee;ua.keyBy=Hu.keyBy;ua.keys=Gl;ua.keysIn=Js.keysIn;ua.map=Hu.map;ua.mapKeys=Js.mapKeys;ua.mapValues=Js.mapValues;ua.matches=Tu.matches;ua.matchesProperty=Tu.matchesProperty;ua.memoize=xf.memoize;ua.merge=Js.merge;ua.mergeWith=Js.mergeWith;ua.method=Tu.method;ua.methodOf=Tu.methodOf;ua.mixin=GA;ua.negate=Gv;ua.nthArg=Tu.nthArg;ua.omit=Js.omit;ua.omitBy=Js.omitBy;ua.once=xf.once;ua.orderBy=Hu.orderBy;ua.over=Tu.over;ua.overArgs=xf.overArgs;ua.overEvery=Tu.overEvery;ua.overSome=Tu.overSome;ua.partial=xf.partial;ua.partialRight=xf.partialRight;ua.partition=Hu.partition;ua.pick=Js.pick;ua.pickBy=Js.pickBy;ua.property=Tu.property;ua.propertyOf=Tu.propertyOf;ua.pull=is.pull;ua.pullAll=is.pullAll;ua.pullAllBy=is.pullAllBy;ua.pullAllWith=is.pullAllWith;ua.pullAt=is.pullAt;ua.range=Tu.range;ua.rangeRight=Tu.rangeRight;ua.rearg=xf.rearg;ua.reject=Hu.reject;ua.remove=is.remove;ua.rest=xf.rest;ua.reverse=is.reverse;ua.sampleSize=Hu.sampleSize;ua.set=Js.set;ua.setWith=Js.setWith;ua.shuffle=Hu.shuffle;ua.slice=is.slice;ua.sortBy=Hu.sortBy;ua.sortedUniq=is.sortedUniq;ua.sortedUniqBy=is.sortedUniqBy;ua.split=du.split;ua.spread=xf.spread;ua.tail=is.tail;ua.take=is.take;ua.takeRight=is.takeRight;ua.takeRightWhile=is.takeRightWhile;ua.takeWhile=is.takeWhile;ua.tap=Id.tap;ua.throttle=xf.throttle;ua.thru=Wv;ua.toArray=Es.toArray;ua.toPairs=Js.toPairs;ua.toPairsIn=Js.toPairsIn;ua.toPath=Tu.toPath;ua.toPlainObject=Es.toPlainObject;ua.transform=Js.transform;ua.unary=xf.unary;ua.union=is.union;ua.unionBy=is.unionBy;ua.unionWith=is.unionWith;ua.uniq=is.uniq;ua.uniqBy=is.uniqBy;ua.uniqWith=is.uniqWith;ua.unset=Js.unset;ua.unzip=is.unzip;ua.unzipWith=is.unzipWith;ua.update=Js.update;ua.updateWith=Js.updateWith;ua.values=Js.values;ua.valuesIn=Js.valuesIn;ua.without=is.without;ua.words=du.words;ua.wrap=xf.wrap;ua.xor=is.xor;ua.xorBy=is.xorBy;ua.xorWith=is.xorWith;ua.zip=is.zip;ua.zipObject=is.zipObject;ua.zipObjectDeep=is.zipObjectDeep;ua.zipWith=is.zipWith;ua.entries=Js.toPairs;ua.entriesIn=Js.toPairsIn;ua.extend=Js.assignIn;ua.extendWith=Js.assignInWith;GA(ua,ua);ua.add=_p.add;ua.attempt=Tu.attempt;ua.camelCase=du.camelCase;ua.capitalize=du.capitalize;ua.ceil=_p.ceil;ua.clamp=g_.clamp;ua.clone=Es.clone;ua.cloneDeep=Es.cloneDeep;ua.cloneDeepWith=Es.cloneDeepWith;ua.cloneWith=Es.cloneWith;ua.conformsTo=Es.conformsTo;ua.deburr=du.deburr;ua.defaultTo=Tu.defaultTo;ua.divide=_p.divide;ua.endsWith=du.endsWith;ua.eq=Es.eq;ua.escape=du.escape;ua.escapeRegExp=du.escapeRegExp;ua.every=Hu.every;ua.find=Hu.find;ua.findIndex=is.findIndex;ua.findKey=Js.findKey;ua.findLast=Hu.findLast;ua.findLastIndex=is.findLastIndex;ua.findLastKey=Js.findLastKey;ua.floor=_p.floor;ua.forEach=Hu.forEach;ua.forEachRight=Hu.forEachRight;ua.forIn=Js.forIn;ua.forInRight=Js.forInRight;ua.forOwn=Js.forOwn;ua.forOwnRight=Js.forOwnRight;ua.get=Js.get;ua.gt=Es.gt;ua.gte=Es.gte;ua.has=Js.has;ua.hasIn=Js.hasIn;ua.head=is.head;ua.identity=ic;ua.includes=Hu.includes;ua.indexOf=is.indexOf;ua.inRange=g_.inRange;ua.invoke=Js.invoke;ua.isArguments=Es.isArguments;ua.isArray=mo;ua.isArrayBuffer=Es.isArrayBuffer;ua.isArrayLike=Es.isArrayLike;ua.isArrayLikeObject=Es.isArrayLikeObject;ua.isBoolean=Es.isBoolean;ua.isBuffer=Es.isBuffer;ua.isDate=Es.isDate;ua.isElement=Es.isElement;ua.isEmpty=Es.isEmpty;ua.isEqual=Es.isEqual;ua.isEqualWith=Es.isEqualWith;ua.isError=Es.isError;ua.isFinite=Es.isFinite;ua.isFunction=Es.isFunction;ua.isInteger=Es.isInteger;ua.isLength=Es.isLength;ua.isMap=Es.isMap;ua.isMatch=Es.isMatch;ua.isMatchWith=Es.isMatchWith;ua.isNaN=Es.isNaN;ua.isNative=Es.isNative;ua.isNil=Es.isNil;ua.isNull=Es.isNull;ua.isNumber=Es.isNumber;ua.isObject=ll;ua.isObjectLike=Es.isObjectLike;ua.isPlainObject=Es.isPlainObject;ua.isRegExp=Es.isRegExp;ua.isSafeInteger=Es.isSafeInteger;ua.isSet=Es.isSet;ua.isString=Es.isString;ua.isSymbol=Es.isSymbol;ua.isTypedArray=Es.isTypedArray;ua.isUndefined=Es.isUndefined;ua.isWeakMap=Es.isWeakMap;ua.isWeakSet=Es.isWeakSet;ua.join=is.join;ua.kebabCase=du.kebabCase;ua.last=cf;ua.lastIndexOf=is.lastIndexOf;ua.lowerCase=du.lowerCase;ua.lowerFirst=du.lowerFirst;ua.lt=Es.lt;ua.lte=Es.lte;ua.max=_p.max;ua.maxBy=_p.maxBy;ua.mean=_p.mean;ua.meanBy=_p.meanBy;ua.min=_p.min;ua.minBy=_p.minBy;ua.stubArray=Tu.stubArray;ua.stubFalse=Tu.stubFalse;ua.stubObject=Tu.stubObject;ua.stubString=Tu.stubString;ua.stubTrue=Tu.stubTrue;ua.multiply=_p.multiply;ua.nth=is.nth;ua.noop=Tu.noop;ua.now=HA.now;ua.pad=du.pad;ua.padEnd=du.padEnd;ua.padStart=du.padStart;ua.parseInt=du.parseInt;ua.random=g_.random;ua.reduce=Hu.reduce;ua.reduceRight=Hu.reduceRight;ua.repeat=du.repeat;ua.replace=du.replace;ua.result=Js.result;ua.round=_p.round;ua.sample=Hu.sample;ua.size=Hu.size;ua.snakeCase=du.snakeCase;ua.some=Hu.some;ua.sortedIndex=is.sortedIndex;ua.sortedIndexBy=is.sortedIndexBy;ua.sortedIndexOf=is.sortedIndexOf;ua.sortedLastIndex=is.sortedLastIndex;ua.sortedLastIndexBy=is.sortedLastIndexBy;ua.sortedLastIndexOf=is.sortedLastIndexOf;ua.startCase=du.startCase;ua.startsWith=du.startsWith;ua.subtract=_p.subtract;ua.sum=_p.sum;ua.sumBy=_p.sumBy;ua.template=du.template;ua.times=Tu.times;ua.toFinite=Es.toFinite;ua.toInteger=Eo;ua.toLength=Es.toLength;ua.toLower=du.toLower;ua.toNumber=Es.toNumber;ua.toSafeInteger=Es.toSafeInteger;ua.toString=Es.toString;ua.toUpper=du.toUpper;ua.trim=du.trim;ua.trimEnd=du.trimEnd;ua.trimStart=du.trimStart;ua.truncate=du.truncate;ua.unescape=du.unescape;ua.uniqueId=Tu.uniqueId;ua.upperCase=du.upperCase;ua.upperFirst=du.upperFirst;ua.each=Hu.forEach;ua.eachRight=Hu.forEachRight;ua.first=is.head;GA(ua,function(){var le={};return lp(ua,function(me,Xe){Y8.call(ua.prototype,Xe)||(le[Xe]=me)}),le}(),{chain:!1});ua.VERSION=jfe;(ua.templateSettings=du.templateSettings).imports._=ua;zh(["bind","bindKey","curry","curryRight","partial","partialRight"],function(le){ua[le].placeholder=ua});zh(["drop","take"],function(le,me){dl.prototype[le]=function(Xe){Xe=Xe===void 0?1:Zfe(Eo(Xe),0);var Mt=this.__filtered__&&!me?new dl(this):this.clone();return Mt.__filtered__?Mt.__takeCount__=Z8(Xe,Mt.__takeCount__):Mt.__views__.push({size:Z8(Xe,X8),type:le+(Mt.__dir__<0?"Right":"")}),Mt},dl.prototype[le+"Right"]=function(Xe){return this.reverse()[le](Xe).reverse()}});zh(["filter","map","takeWhile"],function(le,me){var Xe=me+1,Mt=Xe==qfe||Xe==Hfe;dl.prototype[le]=function(rr){var Nr=this.clone();return Nr.__iteratees__.push({iteratee:io(rr,3),type:Xe}),Nr.__filtered__=Nr.__filtered__||Mt,Nr}});zh(["head","last"],function(le,me){var Xe="take"+(me?"Right":"");dl.prototype[le]=function(){return this[Xe](1).value()[0]}});zh(["initial","tail"],function(le,me){var Xe="drop"+(me?"":"Right");dl.prototype[le]=function(){return this.__filtered__?new dl(this):this[Xe](1)}});dl.prototype.compact=function(){return this.filter(ic)};dl.prototype.find=function(le){return this.filter(le).head()};dl.prototype.findLast=function(le){return this.reverse().find(le)};dl.prototype.invokeMap=ko(function(le,me){return typeof le=="function"?new dl(this):this.map(function(Xe){return xv(Xe,le,me)})});dl.prototype.reject=function(le){return this.filter(Gv(io(le)))};dl.prototype.slice=function(le,me){le=Eo(le);var Xe=this;return Xe.__filtered__&&(le>0||me<0)?new dl(Xe):(le<0?Xe=Xe.takeRight(-le):le&&(Xe=Xe.drop(le)),me!==void 0&&(me=Eo(me),Xe=me<0?Xe.dropRight(-me):Xe.take(me-le)),Xe)};dl.prototype.takeRightWhile=function(le){return this.reverse().takeWhile(le).reverse()};dl.prototype.toArray=function(){return this.take(X8)};lp(dl.prototype,function(le,me){var Xe=/^(?:filter|find|map|reject)|While$/.test(me),Mt=/^(?:head|last)$/.test(me),rr=ua[Mt?"take"+(me=="last"?"Right":""):me],Nr=Mt||/^find/.test(me);rr&&(ua.prototype[me]=function(){var xa=this.__wrapped__,Ha=Mt?[1]:arguments,Za=xa instanceof dl,un=Ha[0],Ji=Za||mo(xa),gn=function(Ml){var Ul=rr.apply(ua,Dp([Ml],Ha));return Mt&&wo?Ul[0]:Ul};Ji&&Xe&&typeof un=="function"&&un.length!=1&&(Za=Ji=!1);var wo=this.__chain__,ps=!!this.__actions__.length,Qn=Nr&&!wo,Ye=Za&&!ps;if(!Nr&&Ji){xa=Ye?xa:new dl(this);var Ps=le.apply(xa,Ha);return Ps.__actions__.push({func:Wv,args:[gn],thisArg:void 0}),new Ip(Ps,wo)}return Qn&&Ye?le.apply(this,Ha):(Ps=this.thru(gn),Qn?Mt?Ps.value()[0]:Ps.value():Ps)})});zh(["pop","push","shift","sort","splice","unshift"],function(le){var me=Gfe[le],Xe=/^(?:push|sort|unshift)$/.test(le)?"tap":"thru",Mt=/^(?:pop|shift)$/.test(le);ua.prototype[le]=function(){var rr=arguments;if(Mt&&!this.__chain__){var Nr=this.value();return me.apply(mo(Nr)?Nr:[],rr)}return this[Xe](function(xa){return me.apply(mo(xa)?xa:[],rr)})}});lp(dl.prototype,function(le,me){var Xe=ua[me];if(Xe){var Mt=Xe.name+"";Y8.call(Tm,Mt)||(Tm[Mt]=[]),Tm[Mt].push({name:me,func:Xe})}});Tm[ey(void 0,Vfe).name]=[{name:"wrapper",func:void 0}];dl.prototype.clone=V8;dl.prototype.reverse=q8;dl.prototype.value=G8;ua.prototype.at=Id.at;ua.prototype.chain=Id.wrapperChain;ua.prototype.commit=Id.commit;ua.prototype.next=Id.next;ua.prototype.plant=Id.plant;ua.prototype.reverse=Id.reverse;ua.prototype.toJSON=ua.prototype.valueOf=ua.prototype.value=Id.value;ua.prototype.first=ua.prototype.head;W8&&(ua.prototype[W8]=Id.toIterator);var kc=ua;var Rd=HW($8());window.PlotlyConfig={MathJaxConfig:"local"};var WA=class{constructor(me,Xe){this.model=me,this.serializers=Xe}get(me){let Xe=this.serializers[me],Mt=this.model.get(me);return Xe?.deserialize?Xe.deserialize(Mt):Mt}set(me,Xe){let Mt=this.serializers[me];Mt?.serialize&&(Xe=Mt.serialize(Xe)),this.model.set(me,Xe)}on(me,Xe){this.model.on(me,Xe)}save_changes(){this.model.save_changes()}defaults(){return{_widget_data:[],_widget_layout:{},_config:{},_py2js_addTraces:null,_py2js_deleteTraces:null,_py2js_moveTraces:null,_py2js_restyle:null,_py2js_relayout:null,_py2js_update:null,_py2js_animate:null,_py2js_removeLayoutProps:null,_py2js_removeTraceProps:null,_js2py_restyle:null,_js2py_relayout:null,_js2py_update:null,_js2py_layoutDelta:null,_js2py_traceDeltas:null,_js2py_pointsCallback:null,_last_layout_edit_id:0,_last_trace_edit_id:0}}initialize(){this.model.on("change:_widget_data",()=>this.do_data()),this.model.on("change:_widget_layout",()=>this.do_layout()),this.model.on("change:_py2js_addTraces",()=>this.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),this.model.on("change:_py2js_removeLayoutProps",()=>this.do_removeLayoutProps()),this.model.on("change:_py2js_removeTraceProps",()=>this.do_removeTraceProps())}_normalize_trace_indexes(me){if(me==null){var Xe=this.model.get("_widget_data").length;me=kc.range(Xe)}return Array.isArray(me)||(me=[me]),me}do_data(){}do_layout(){}do_addTraces(){var me=this.model.get("_py2js_addTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.trace_data;kc.forEach(Mt,function(rr){Xe.push(rr)})}}do_deleteTraces(){var me=this.model.get("_py2js_deleteTraces");if(me!==null){var Xe=me.delete_inds,Mt=this.model.get("_widget_data");Xe.slice().reverse().forEach(function(rr){Mt.splice(rr,1)})}}do_moveTraces(){var me=this.model.get("_py2js_moveTraces");if(me!==null){var Xe=this.model.get("_widget_data"),Mt=me.current_trace_inds,rr=me.new_trace_inds;$fe(Xe,Mt,rr)}}do_restyle(){var me=this.model.get("_py2js_restyle");if(me!==null){var Xe=me.restyle_data,Mt=this._normalize_trace_indexes(me.restyle_traces);eF(this.model.get("_widget_data"),Xe,Mt)}}do_relayout(){var me=this.model.get("_py2js_relayout");me!==null&&u2(this.model.get("_widget_layout"),me.relayout_data)}do_update(){var me=this.model.get("_py2js_update");if(me!==null){var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces);eF(this.model.get("_widget_data"),Xe,rr),u2(this.model.get("_widget_layout"),Mt)}}do_animate(){var me=this.model.get("_py2js_animate");if(me!==null){for(var Xe=me.style_data,Mt=me.layout_data,rr=this._normalize_trace_indexes(me.style_traces),Nr=0;Nr<Xe.length;Nr++){var xa=Xe[Nr],Ha=rr[Nr],Za=this.model.get("_widget_data")[Ha];u2(Za,xa)}u2(this.model.get("_widget_layout"),Mt)}}do_removeLayoutProps(){var me=this.model.get("_py2js_removeLayoutProps");if(me!==null){var Xe=me.remove_props,Mt=this.model.get("_widget_layout");tF(Mt,Xe)}}do_removeTraceProps(){var me=this.model.get("_py2js_removeTraceProps");if(me!==null){var Xe=me.remove_props,Mt=me.remove_trace,rr=this.model.get("_widget_data")[Mt];tF(rr,Xe)}}},Xfe={_widget_data:{deserialize:Nh,serialize:Bh},_widget_layout:{deserialize:Nh,serialize:Bh},_py2js_addTraces:{deserialize:Nh,serialize:Bh},_py2js_deleteTraces:{deserialize:Nh,serialize:Bh},_py2js_moveTraces:{deserialize:Nh,serialize:Bh},_py2js_restyle:{deserialize:Nh,serialize:Bh},_py2js_relayout:{deserialize:Nh,serialize:Bh},_py2js_update:{deserialize:Nh,serialize:Bh},_py2js_animate:{deserialize:Nh,serialize:Bh},_py2js_removeLayoutProps:{deserialize:Nh,serialize:Bh},_py2js_removeTraceProps:{deserialize:Nh,serialize:Bh},_js2py_restyle:{deserialize:Nh,serialize:Bh},_js2py_relayout:{deserialize:Nh,serialize:Bh},_js2py_update:{deserialize:Nh,serialize:Bh},_js2py_layoutDelta:{deserialize:Nh,serialize:Bh},_js2py_traceDeltas:{deserialize:Nh,serialize:Bh},_js2py_pointsCallback:{deserialize:Nh,serialize:Bh}},ZA=class{constructor(me,Xe){this.model=me,this.el=Xe}perform_render(){var me=this;this.model.on("change:_py2js_addTraces",()=>this.do_addTraces()),this.model.on("change:_py2js_deleteTraces",()=>this.do_deleteTraces()),this.model.on("change:_py2js_moveTraces",()=>this.do_moveTraces()),this.model.on("change:_py2js_restyle",()=>this.do_restyle()),this.model.on("change:_py2js_relayout",()=>this.do_relayout()),this.model.on("change:_py2js_update",()=>this.do_update()),this.model.on("change:_py2js_animate",()=>this.do_animate()),window?.MathJax?.Hub?.Config?.({SVG:{font:"STIX-Web"}});var Xe=this.model.get("_last_layout_edit_id"),Mt=this.model.get("_last_trace_edit_id");this.viewID=rF();var rr=kc.cloneDeep(this.model.get("_widget_data")),Nr=kc.cloneDeep(this.model.get("_widget_layout"));Nr.height||(Nr.height=360);var xa=this.model.get("_config");xa.editSelection=!1,Rd.default.newPlot(me.el,rr,Nr,xa).then(function(){me._sendTraceDeltas(Mt),me._sendLayoutDelta(Xe),me.el.on("plotly_restyle",function(Za){me.handle_plotly_restyle(Za)}),me.el.on("plotly_relayout",function(Za){me.handle_plotly_relayout(Za)}),me.el.on("plotly_update",function(Za){me.handle_plotly_update(Za)}),me.el.on("plotly_click",function(Za){me.handle_plotly_click(Za)}),me.el.on("plotly_hover",function(Za){me.handle_plotly_hover(Za)}),me.el.on("plotly_unhover",function(Za){me.handle_plotly_unhover(Za)}),me.el.on("plotly_selected",function(Za){me.handle_plotly_selected(Za)}),me.el.on("plotly_deselect",function(Za){me.handle_plotly_deselect(Za)}),me.el.on("plotly_doubleclick",function(Za){me.handle_plotly_doubleclick(Za)});var Ha=new CustomEvent("plotlywidget-after-render",{detail:{element:me.el,viewID:me.viewID}});document.dispatchEvent(Ha)})}_processLuminoMessage(me,Xe){Xe.apply(this,arguments);var Mt=this;switch(me.type){case"before-attach":var rr={showgrid:!1,showline:!1,tickvals:[]};Rd.default.newPlot(Mt.el,[],{xaxis:rr,yaxis:rr}),this.resizeEventListener=()=>{this.autosizeFigure()},window.addEventListener("resize",this.resizeEventListener);break;case"after-attach":this.perform_render();break;case"after-show":case"resize":this.autosizeFigure();break}}autosizeFigure(){var me=this,Xe=me.model.get("_widget_layout");(kc.isNil(Xe)||kc.isNil(Xe.width))&&Rd.default.Plots.resize(me.el).then(function(){var Mt=me.model.get("_last_layout_edit_id");me._sendLayoutDelta(Mt)})}remove(){Rd.default.purge(this.el),window.removeEventListener("resize",this.resizeEventListener)}getFullData(){return kc.mergeWith({},this.el._fullData,this.el.data,Q8)}getFullLayout(){return kc.mergeWith({},this.el._fullLayout,this.el.layout,Q8)}buildPointsObject(me){var Xe;if(me.hasOwnProperty("points")){var Mt=me.points,rr=Mt.length,Nr=!0;for(let Ji=0;Ji<rr&&(Nr=Nr&&Mt[Ji].hasOwnProperty("pointNumbers"),!!Nr);Ji++);var xa=rr;if(Nr){xa=0;for(let Ji=0;Ji<rr;Ji++)xa+=Mt[Ji].pointNumbers.length}if(Xe={trace_indexes:new Array(xa),point_indexes:new Array(xa),xs:new Array(xa),ys:new Array(xa)},Nr){for(var Ha=0,Za=0;Za<rr;Za++)for(let gn=0;gn<Mt[Za].pointNumbers.length;gn++,Ha++)Xe.point_indexes[Ha]=Mt[Za].pointNumbers[gn],Xe.xs[Ha]=Mt[Za].x,Xe.ys[Ha]=Mt[Za].y,Xe.trace_indexes[Ha]=Mt[Za].curveNumber;let Ji=!0;for(let gn=1;gn<xa&&(Ji=Ji&&Xe.trace_indexes[gn-1]===Xe.trace_indexes[gn],!!Ji);gn++);Ji&&Xe.point_indexes.sort(function(gn,wo){return gn-wo})}else for(var Za=0;Za<rr;Za++)Xe.trace_indexes[Za]=Mt[Za].curveNumber,Xe.point_indexes[Za]=Mt[Za].pointNumber,Xe.xs[Za]=Mt[Za].x,Xe.ys[Za]=Mt[Za].y;var un=Mt[0]!==void 0&&Mt[0].hasOwnProperty("z");if(un)for(Xe.zs=new Array(rr),Za=0;Za<rr;Za++)Xe.zs[Za]=Mt[Za].z;return Xe}else return null}buildInputDeviceStateObject(me){var Xe=me.event;if(Xe===void 0)return null;var Mt={alt:Xe.altKey,ctrl:Xe.ctrlKey,meta:Xe.metaKey,shift:Xe.shiftKey,button:Xe.button,buttons:Xe.buttons};return Mt}buildSelectorObject(me){var Xe;return me.hasOwnProperty("range")?Xe={type:"box",selector_state:{xrange:me.range.x,yrange:me.range.y}}:me.hasOwnProperty("lassoPoints")?Xe={type:"lasso",selector_state:{xs:me.lassoPoints.x,ys:me.lassoPoints.y}}:Xe=null,Xe}handle_plotly_restyle(me){if(me!=null&&!(me[0]&&me[0].hasOwnProperty("_doNotReportToPy"))){var Xe=me[0],Mt=me[1],rr={style_data:Xe,style_traces:Mt,source_view_id:this.viewID};this.model.set("_js2py_restyle",rr),this.touch()}}touch(){this.model.save_changes()}handle_plotly_relayout(me){if(me!=null&&!me.hasOwnProperty("_doNotReportToPy")){var Xe={relayout_data:me,source_view_id:this.viewID};this.model.set("_js2py_relayout",Xe),this.touch()}}handle_plotly_update(me){if(me!=null&&!(me.data&&me.data[0].hasOwnProperty("_doNotReportToPy"))){var Xe={style_data:me.data[0],style_traces:me.data[1],layout_data:me.layout,source_view_id:this.viewID};this.model.set("_js2py_update",Xe),this.touch()}}handle_plotly_click(me){this._send_points_callback_message(me,"plotly_click")}handle_plotly_hover(me){this._send_points_callback_message(me,"plotly_hover")}handle_plotly_unhover(me){this._send_points_callback_message(me,"plotly_unhover")}handle_plotly_selected(me){this._send_points_callback_message(me,"plotly_selected")}handle_plotly_deselect(me){me={points:[]},this._send_points_callback_message(me,"plotly_deselect")}_send_points_callback_message(me,Xe){if(me!=null){var Mt={event_type:Xe,points:this.buildPointsObject(me),device_state:this.buildInputDeviceStateObject(me),selector:this.buildSelectorObject(me)};Mt.points!==null&&Mt.points!==void 0&&(this.model.set("_js2py_pointsCallback",Mt),this.touch())}}handle_plotly_doubleclick(me){}do_addTraces(){var me=this.model.get("_py2js_addTraces");if(me!==null){var Xe=this;Rd.default.addTraces(this.el,me.trace_data).then(function(){Xe._sendTraceDeltas(me.trace_edit_id);var Mt=me.layout_edit_id;Xe._sendLayoutDelta(Mt)})}}do_deleteTraces(){var me=this.model.get("_py2js_deleteTraces");if(me!==null){var Xe=me.delete_inds,Mt=this;Rd.default.deleteTraces(this.el,Xe).then(function(){var rr=me.trace_edit_id;Mt._sendTraceDeltas(rr);var Nr=me.layout_edit_id;Mt._sendLayoutDelta(Nr)})}}do_moveTraces(){var me=this.model.get("_py2js_moveTraces");if(me!==null){var Xe=me.current_trace_inds,Mt=me.new_trace_inds,rr=kc.isEqual(Xe,Mt);rr||Rd.default.moveTraces(this.el,Xe,Mt)}}do_restyle(){var me=this.model.get("_py2js_restyle");if(me!==null){var Xe=me.restyle_data,Mt=this.model._normalize_trace_indexes(me.restyle_traces);Xe._doNotReportToPy=!0,Rd.default.restyle(this.el,Xe,Mt),this._sendTraceDeltas(me.trace_edit_id);var rr=me.layout_edit_id;this._sendLayoutDelta(rr)}}do_relayout(){var me=this.model.get("_py2js_relayout");if(me!==null){if(me.source_view_id!==this.viewID){var Xe=me.relayout_data;Xe._doNotReportToPy=!0,Rd.default.relayout(this.el,me.relayout_data)}var Mt=me.layout_edit_id;this._sendLayoutDelta(Mt)}}do_update(){var me=this.model.get("_py2js_update");if(me!==null){var Xe=me.style_data||{},Mt=me.layout_data||{},rr=this.model._normalize_trace_indexes(me.style_traces);Xe._doNotReportToPy=!0,Rd.default.update(this.el,Xe,Mt,rr),this._sendTraceDeltas(me.trace_edit_id);var Nr=me.layout_edit_id;this._sendLayoutDelta(Nr)}}do_animate(){var me=this.model.get("_py2js_animate");if(me!==null){var Xe=me.animation_opts,Mt=me.style_data,rr=me.layout_data,Nr=this.model._normalize_trace_indexes(me.style_traces),xa={data:Mt,layout:rr,traces:Nr};xa._doNotReportToPy=!0;var Ha=this;Rd.default.animate(this.el,xa,Xe).then(function(){Ha._sendTraceDeltas(me.trace_edit_id);var Za=me.layout_edit_id;Ha._sendLayoutDelta(Za)})}}_sendLayoutDelta(me){var Xe=y_(this.getFullLayout(),this.model.get("_widget_layout")),Mt={layout_delta:Xe,layout_edit_id:me};this.model.set("_js2py_widget_layoutDelta",Mt),this.touch()}_sendTraceDeltas(me){for(var Xe=this.model.get("_widget_data"),Mt=kc.range(Xe.length),rr=new Array(Mt.length),Nr=this.getFullData(),xa=0;xa<Mt.length;xa++){var Ha=Mt[xa];rr[xa]=y_(Nr[Ha],Xe[Ha])}var Za={trace_deltas:rr,trace_edit_id:me};this.model.set("_js2py_traceDeltas",Za),this.touch()}},Yfe={int8:Int8Array,int16:Int16Array,int32:Int32Array,uint8:Uint8Array,uint16:Uint16Array,uint32:Uint32Array,float32:Float32Array,float64:Float64Array};function Kfe(le){var me;if(le instanceof Int8Array)me="int8";else if(le instanceof Int16Array)me="int16";else if(le instanceof Int32Array)me="int32";else if(le instanceof Uint8Array)me="uint8";else if(le instanceof Uint16Array)me="uint16";else if(le instanceof Uint32Array)me="uint32";else if(le instanceof Float32Array)me="float32";else if(le instanceof Float64Array)me="float64";else return le;var Xe={dtype:me,shape:[le.length],value:le.buffer};return Xe}function Bh(le,me){var Xe;if(kc.isTypedArray(le))Xe=Kfe(le);else if(Array.isArray(le)){Xe=new Array(le.length);for(var Mt=0;Mt<le.length;Mt++)Xe[Mt]=Bh(le[Mt])}else if(kc.isObject(le)){Xe={};for(var rr in le)le.hasOwnProperty(rr)&&(Xe[rr]=Bh(le[rr]))}else le===void 0?Xe="_undefined_":Xe=le;return Xe}function Nh(le,me){var Xe;if(Array.isArray(le)){Xe=new Array(le.length);for(var Mt=0;Mt<le.length;Mt++)Xe[Mt]=Nh(le[Mt])}else if(kc.isObject(le))if((kc.has(le,"value")||kc.has(le,"buffer"))&&kc.has(le,"dtype")&&kc.has(le,"shape")){var rr=Yfe[le.dtype],Nr=kc.has(le,"value")?le.value.buffer:le.buffer.buffer;Xe=new rr(Nr)}else{Xe={};for(var xa in le)le.hasOwnProperty(xa)&&(Xe[xa]=Nh(le[xa]))}else le==="_undefined_"?Xe=void 0:Xe=le;return Xe}function Jfe(le){return ArrayBuffer.isView(le)&&!(le instanceof DataView)}function Q8(le,me,Xe){if(Xe[0]==="_")return null;if(Jfe(me))return me}function u2(le,me){for(var Xe in me)if(me.hasOwnProperty(Xe)){var Mt=me[Xe];Mt===null?kc.unset(le,Xe):kc.set(le,Xe,Mt)}}function eF(le,me,Xe){for(var Mt in me)if(me.hasOwnProperty(Mt)){var rr=me[Mt];Array.isArray(rr)||(rr=[rr]);for(var Nr=0;Nr<Xe.length;Nr++){var xa=Xe[Nr],Ha=le[xa],Za=rr[Nr%rr.length];Za===null?kc.unset(Ha,Mt):Za!==void 0&&kc.set(Ha,Mt,Za)}}}function $fe(le,me,Xe){for(var Mt=[],rr=me.length-1;rr>=0;rr--)Mt.splice(0,0,le[me[rr]]),le.splice(me[rr],1);var Nr=kc(Xe).zip(Mt).sortBy(0).unzip().value();Xe=Nr[0],Mt=Nr[1];for(var xa=0;xa<Xe.length;xa++)le.splice(Xe[xa],0,Mt[xa])}function tF(le,me){for(var Xe=0;Xe<me.length;Xe++){var Mt=me[Xe];kc.unset(le,Mt)}}function y_(le,me){var Xe;Array.isArray(le)?Xe=new Array(le.length):Xe={},me==null&&(me={});for(var Mt in le)if(Mt[0]!=="_"&&le.hasOwnProperty(Mt)&&le[Mt]!==null){var rr;if(rr=kc.isEqual(le[Mt],me[Mt]),!rr||Mt==="uid"){var Nr=le[Mt];if(me.hasOwnProperty(Mt)&&typeof Nr=="object")if(Array.isArray(Nr))if(Nr.length>0&&typeof Nr[0]=="object"){Xe[Mt]=new Array(Nr.length);for(var xa=0;xa<Nr.length;xa++)!Array.isArray(me[Mt])||me[Mt].length<=xa?Xe[Mt][xa]=Nr[xa]:Xe[Mt][xa]=y_(Nr[xa],me[Mt][xa])}else Xe[Mt]=Nr;else{var Ha=y_(Nr,me[Mt]);Object.keys(Ha).length>0&&(Xe[Mt]=Ha)}else typeof Nr=="object"&&!Array.isArray(Nr)?Xe[Mt]=y_(Nr,{}):Nr!==void 0&&typeof Nr!="function"&&(Xe[Mt]=Nr)}}return Xe}function rF(le,me,Xe,Mt){if(Xe||(Xe=16),me===void 0&&(me=24),me<=0)return"0";var rr=Math.log(Math.pow(2,me))/Math.log(Xe),Nr="",xa,Ha,Za;for(xa=2;rr===1/0;xa*=2)rr=Math.log(Math.pow(2,me/xa))/Math.log(Xe)*xa;var un=rr-Math.floor(rr);for(xa=0;xa<Math.floor(rr);xa++)Za=Math.floor(Math.random()*Xe).toString(Xe),Nr=Za+Nr;un&&(Ha=Math.pow(Xe,un),Za=Math.floor(Math.random()*Ha).toString(Xe),Nr=Za+Nr);var Ji=parseInt(Nr,Xe);return le&&le[Nr]||Ji!==1/0&&Ji>=Math.pow(2,me)?Mt>10?(console.warn("randstr failed uniqueness"),Nr):rF(le,me,Xe,(Mt||0)+1):Nr}var lGe=()=>{let le;return{initialize(me){le=new WA(me.model,Xfe),le.initialize()},render({el:me}){let Xe=new ZA(le,me);return Xe.perform_render(),()=>Xe.remove()}}};export{WA as FigureModel,ZA as FigureView,lGe as default};
+/*! Bundled license information:
+
+plotly.js/dist/plotly.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ *)
+ (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+ (*!
+ * Determine if an object is a Buffer
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ *)
+ (*!
+ * pad-left <https://github.com/jonschlinkert/pad-left>
+ *
+ * Copyright (c) 2014-2015, Jon Schlinkert.
+ * Licensed under the MIT license.
+ *)
+ (*!
+ * repeat-string <https://github.com/jonschlinkert/repeat-string>
+ *
+ * Copyright (c) 2014-2015, Jon Schlinkert.
+ * Licensed under the MIT License.
+ *)
+ (*! Bundled license information:
+
+ native-promise-only/lib/npo.src.js:
+ (*! Native Promise Only
+ v0.8.1 (c) Kyle Simpson
+ MIT License: http://getify.mit-license.org
+ *)
+
+ polybooljs/index.js:
+ (*
+ * @copyright 2016 Sean Connelly (@voidqk), http://syntheti.cc
+ * @license MIT
+ * @preserve Project Home: https://github.com/voidqk/polybooljs
+ *)
+
+ ieee754/index.js:
+ (*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+
+ buffer/index.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <https://feross.org>
+ * @license MIT
+ *)
+
+ safe-buffer/index.js:
+ (*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> *)
+
+ assert/build/internal/util/comparisons.js:
+ (*!
+ * The buffer module from node.js, for the browser.
+ *
+ * @author Feross Aboukhadijeh <feross@feross.org> <http://feross.org>
+ * @license MIT
+ *)
+
+ object-assign/index.js:
+ (*
+ object-assign
+ (c) Sindre Sorhus
+ @license MIT
+ *)
+
+ maplibre-gl/dist/maplibre-gl.js:
+ (**
+ * MapLibre GL JS
+ * @license 3-Clause BSD. Full text of license: https://github.com/maplibre/maplibre-gl-js/blob/v4.7.1/LICENSE.txt
+ *)
+ *)
+
+lodash-es/lodash.default.js:
+ (**
+ * @license
+ * Lodash (Custom Build) <https://lodash.com/>
+ * Build: `lodash modularize exports="es" -o ./`
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
+ * Released under MIT license <https://lodash.com/license>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ *)
+
+lodash-es/lodash.js:
+ (**
+ * @license
+ * Lodash (Custom Build) <https://lodash.com/>
+ * Build: `lodash modularize exports="es" -o ./`
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
+ * Released under MIT license <https://lodash.com/license>
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
+ *)
+*/